{"report_id":"b3a2b1fd-0af9-4087-9911-3312805544f5","version":0,"status":"done","tags":[],"date":"2026-07-27T09:19:01Z","url":{"schema":"https","addr":"scromegatrade.com/","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":0,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"final":{"url":{"schema":"https","addr":"scromegatrade.com/","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"title":"ScroMegaTrade is an award winning Forex and Commodities Broker","dom":{"size":414,"mime_type":"text/html; charset=utf-8","magic":"HTML document, ASCII text, with very long lines (414), with no line terminators","md5":"d64e2d92c846d59ee1615ed7180b7a6f","sha1":"33ac4a1e7b33874ed86057a462550d0fa3c0bfa6","sha256":"249d0915be322a5970d3f0b67b2f831fabad474cf137c06b10af3fcec86eda07","sha512":"8eda1666a19158887974d2fe024e912547fc0a325610553f09f6f5e8629b84a10ed728b3c25050c94b8ebcbbdb5c623c62a46ef03b20188767ca7c38c38b1068","ssdeep":"","tlshash":"fbe068bb9930405b07542a84b8c0350c9822668f9a44cd72c4f63076f0e8dff2c24cb8","dom_hash":"domhash3e5b502ad3c0541d40697aebeb6f2a2c","first_seen":"2026-07-27T09:19:08.369428Z","last_seen":"2026-07-27T09:40:55.105878Z","times_seen":2,"resource_available":false,"data":null}},"submit":{"url":{"schema":"https","addr":"scromegatrade.com/","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":0,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"tags":null,"meta":null},"settings":{"access":"public","device_type":"desktop","expires_at":"2027-08-31T09:19:01Z","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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null},"summary":[{"fqdn":"api.coingecko.com","ip":{"addr":"104.20.41.132","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2014-03-26","domain_rank":442226,"first_seen":"2018-05-18T12:16:11Z","last_seen":"2026-07-21T20:24:11.162909Z","alert_count":0,"request_count":2,"received_data":5175,"sent_data":1109,"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"]},{"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"]}]},{"fqdn":"fonts.googleapis.com","ip":{"addr":"142.250.178.74","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2005-01-25","domain_rank":313,"first_seen":"2012-05-23T12:41:44Z","last_seen":"2026-07-26T22:23:14.439231Z","alert_count":0,"request_count":1,"received_data":47820,"sent_data":625,"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"]}]},{"fqdn":"cable.coingecko.com","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"domain_registered":"2014-03-26","domain_rank":0,"first_seen":"2018-04-04T08:05:29Z","last_seen":"2026-07-22T11:32:05.977849Z","alert_count":0,"request_count":1,"received_data":0,"sent_data":661,"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":13696,"sent_data":499,"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":"cdnjs.cloudflare.com","ip":{"addr":"104.17.25.14","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2009-02-17","domain_rank":1222,"first_seen":"2012-05-23T12:49:49Z","last_seen":"2026-07-26T22:43:30.214545Z","alert_count":0,"request_count":1,"received_data":72742,"sent_data":525,"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"]},{"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"]}]},{"fqdn":"coin-images.coingecko.com","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"domain_registered":"2014-03-26","domain_rank":550283,"first_seen":"2024-05-30T15:11:00Z","last_seen":"2026-07-21T00:15:02.88318Z","alert_count":0,"request_count":5,"received_data":1951,"sent_data":2944,"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"]},{"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":"upload.wikimedia.org","ip":{"addr":"185.15.59.240","port":443,"asn":14907,"as":"WIKIMEDIA","country":"United States","country_code":"US"},"domain_registered":"2003-03-16","domain_rank":4329,"first_seen":"2012-05-21T09:39:45Z","last_seen":"2026-07-20T16:11:10.81027Z","alert_count":0,"request_count":1,"received_data":4573,"sent_data":571,"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"]},{"name":"Apache Traffic Server:9.2.13","description":"Apache Traffic Server is an open-source caching and proxying server that serves as an HTTP/1.1 and HTTP/2 reverse proxy with caching capabilities, load balancing, request routing, SSL termination, and support for advanced HTTP features.","website":"https://trafficserver.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:traffic_server:*:*:*:*:*:*:*:*","icon":"Apache Traffic Server.svg","categories":["Web servers"]}]},{"fqdn":"www.smartsuppchat.com","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"domain_registered":"2014-02-02","domain_rank":491650,"first_seen":"2017-01-30T05:24:57Z","last_seen":"2026-07-24T07:15:25.153212Z","alert_count":0,"request_count":1,"received_data":0,"sent_data":464,"comment":"","tags":null,"fingerprints":null},{"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":12,"received_data":323335,"sent_data":6773,"comment":"","tags":null,"fingerprints":null},{"fqdn":"www.youtube.com","ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2005-02-15","domain_rank":286,"first_seen":"2013-04-13T07:43:20Z","last_seen":"2026-07-27T08:27:28.816935Z","alert_count":0,"request_count":5,"received_data":2713369,"sent_data":5143,"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"]}]},{"fqdn":"www.googletagmanager.com","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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":0,"sent_data":473,"comment":"","tags":null,"fingerprints":null},{"fqdn":"widgets.coingecko.com","ip":{"addr":"104.18.5.118","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2014-03-26","domain_rank":3132971,"first_seen":"2018-07-05T11:10:42Z","last_seen":"2026-07-23T05:31:16.754918Z","alert_count":0,"request_count":1,"received_data":231858,"sent_data":492,"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"]},{"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"]},{"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":"cdn.jsdelivr.net","ip":{"addr":"151.101.129.229","port":443,"asn":54113,"as":"FASTLY","country":"United States","country_code":"US"},"domain_registered":"2012-05-16","domain_rank":1678,"first_seen":"2012-09-30T00:15:09Z","last_seen":"2026-07-26T23:00:42.445991Z","alert_count":0,"request_count":1,"received_data":73940,"sent_data":482,"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"]}]},{"fqdn":"scromegatrade.com","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"domain_registered":"2025-10-10","domain_rank":0,"first_seen":"2026-07-27T06:18:46.531303Z","last_seen":"2026-07-27T06:18:46.531303Z","alert_count":76,"request_count":76,"received_data":2089822,"sent_data":41369,"comment":"","tags":null,"fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"PHP:7.4.7","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":"OWL Carousel","description":"OWL Carousel is an enabled jQuery plugin that lets you create responsive carousel sliders.","website":"https://owlcarousel2.github.io/OwlCarousel2/","common_platform_enumeration":"","icon":"OWL Carousel.png","categories":["JavaScript libraries"]},{"name":"parallax.js","description":"Simple parallax scrolling effect.","website":"https://github.com/pixelcog/parallax.js","common_platform_enumeration":"","icon":"","categories":["JavaScript libraries"]},{"name":"SweetAlert2:10","description":"SweetAlert2 is a JavaScript library that provides customisable, visually appealing, and responsive alert and modal dialog boxes for web applications.","website":"https://sweetalert2.github.io/","common_platform_enumeration":"","icon":"SweetAlert2.svg","categories":["JavaScript libraries"]},{"name":"YouTube","description":"YouTube is a video sharing service where users can create their own profile, upload videos, watch, like and comment on other videos.","website":"https://www.youtube.com","common_platform_enumeration":"","icon":"YouTube.png","categories":["Video players"]},{"name":"Magnific Popup","description":"Magnific Popup is a responsive lightbox \u0026 dialog script with focus on performance and providing best experience for user with any device.","website":"https://dimsemenov.com/plugins/magnific-popup/","common_platform_enumeration":"","icon":"Magnific Popup.png","categories":["JavaScript libraries"]},{"name":"jsDelivr","description":"JSDelivr is a free public CDN for open-source projects. It can serve web files directly from the npm registry and GitHub repositories without any configuration.","website":"https://www.jsdelivr.com/","common_platform_enumeration":"","icon":"jsdelivr-icon.svg","categories":["CDN"]},{"name":"jQuery:1.11.3","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":"Popper","description":"Popper is a positioning engine, its purpose is to calculate the position of an element to make it possible to position it near a given reference element.","website":"https://popper.js.org","common_platform_enumeration":"","icon":"Popper.svg","categories":["Miscellaneous"]},{"name":"Bootstrap","description":"Bootstrap is a free and open-source CSS framework directed at responsive, mobile-first front-end web development. It contains CSS and JavaScript-based design templates for typography, forms, buttons, navigation, and other interface components.","website":"https://getbootstrap.com","common_platform_enumeration":"cpe:2.3:a:getbootstrap:bootstrap:*:*:*:*:*:*:*:*","icon":"Bootstrap.svg","categories":["UI frameworks"]}]},{"fqdn":"coinlib.io","ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2017-12-05","domain_rank":119150,"first_seen":"2017-12-08T06:44:44Z","last_seen":"2026-07-25T05:38:23.773256Z","alert_count":0,"request_count":14,"received_data":832174,"sent_data":7208,"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"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"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"]},{"name":"Cloudflare Browser Insights","description":"Cloudflare Browser Insights is a tool that measures the performance of websites from the perspective of users.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["Analytics","RUM"]}]},{"fqdn":"widget.coinlib.io","ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2017-12-05","domain_rank":0,"first_seen":"2018-10-03T18:45:45Z","last_seen":"2026-07-21T04:22:09.03368Z","alert_count":0,"request_count":1,"received_data":638,"sent_data":589,"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":"cdn.gtranslate.net","ip":{"addr":"104.26.13.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2011-05-26","domain_rank":101861,"first_seen":"2022-11-07T21:49:20Z","last_seen":"2026-07-24T01:31:43.488627Z","alert_count":0,"request_count":2,"received_data":25367,"sent_data":1026,"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"]}]}],"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":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"43cc84282ae8ae707422fe0e47a737e4","sha1":"9494dfe845f51f5f1a62975275bc212704af3f7b","sha256":"84be6de752c70c93efb10cb0b1bee2711b78342f56d6fcf411ab0f8c5c003348","sha512":"e21b2eb023b2c19c6a1bee13ac490e62d541e2f74e423ce0073b1ec70e611810dc842db685d8eedb836d0520e71553cd308175651f588f74b49a887920f060f4","ssdeep":"","tlshash":"80b092252098852637f508bcb96467d4bd3241a060096151903d899819b6f8b0990bef","size":121,"data":"","first_seen":"2026-06-05T01:28:54.596192Z","last_seen":"2026-08-11T04:47:30.208577Z","times_seen":1984,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"10d8b01b1b865a519be7d5b88e98bcac","sha1":"80cc14de2c8bb984866e74720f37ad57a80e9acf","sha256":"ce33f60576204820a75cd31723620bd7247276841db0647fb820abea4c8ab03d","sha512":"cf9a2f01ddc7113f81551041381a6e81350c9febe4b7f24f2143df7177c5bdf87a4cc5ef95a5a14ab06aeab4a710635b1e8c60e816eeeebe0766eeaa643d7208","ssdeep":"","tlshash":"f0f00e358b3c10220aec08f9c0898be83e2d7262e0245060fc69de7d0948cafd053eef","size":525,"data":"","first_seen":"2025-07-20T14:54:50.990021Z","last_seen":"2026-08-11T04:47:30.209348Z","times_seen":4951,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"630261c66fd1cfdc1d377aeacf7cae48","sha1":"2510e79e093980a6efcdd513d4134a19f2b96ee9","sha256":"2f90d6879fdf68aabce3ae9fbf0028a10659ba1870e24687a8de1bced3e5314f","sha512":"dd63351fe827dcd768ed78b36ef29fcaafb1d0583cecbf8af4dfa8d20fb478d9e14e87640b1a089cde6ce993a61d73f992e79522c7a77368405134f12cbe01ea","ssdeep":"","tlshash":"54f0c0df1711c972c6b98167337fb355383272127a9104209658aad86920cd3c219c87","size":542,"data":"","first_seen":"2026-06-16T13:06:30.04206Z","last_seen":"2026-08-11T04:47:30.210078Z","times_seen":1865,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"1a6e1178e4bbf5730bd664a49dd3bc24","sha1":"17c3ae3273f9de6afbbdedf2e413dbb3a6722792","sha256":"3814cddd18b2095e01abb745a99e5ada90178e709c09879324c3b623f2d829ea","sha512":"cfb1aab0bf589e33fd12906f448ddbbf7163420a088de513b174304c9ba3a7abcd9b41c98bc4dd51edd0206c1fe4660db9857e3c6163d1bf50c670cefddee509","ssdeep":"","tlshash":"de9002b090c39c5890264186687100160b6c040c01080141132184d810115048e40d8e","size":43,"data":"","first_seen":"2023-03-13T01:07:12Z","last_seen":"2026-08-11T07:58:03.024209Z","times_seen":220617,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"3ecaea12642976a1d336129f8c85369e","sha1":"a6999ecd201a6667f53a0ef41335fec9e160ad20","sha256":"bf3f74192fbb6caa6f83b6dbf1fabe1975fe5899d1b824f0ae074c30a9f8d371","sha512":"d7d20694badab3c88645a504b7d386dc31ae1972c286da756e91824726e79c7d7de2152680962ffdc1d53aaf6a811e4771038420f1405d325884044943246d55","ssdeep":"","tlshash":"65d02241b006dcd29ca2bb2a71348ca9009caa7c10a161c4b2cfc25100b39780b42a0f","size":206,"data":"","first_seen":"2026-06-12T17:57:14.031557Z","last_seen":"2026-08-11T04:47:30.212119Z","times_seen":1913,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"b6821bb45424547e332af4cefb5a5a75","sha1":"4767332b287c3b15f28ce99f18aca4ddb021f181","sha256":"e0c576273d1ca8ee9a2fba609a005263c2bb272cdec1d6ab5b997dc7c586bc06","sha512":"e2a0babe63e240a4bee41e4c5c1bcc19f8666a69fcd43eb6b0c3671b929958fba310283d97fa4923654ded85f5bec8f38ed0b3ca02d30aab912ac77dee4f01e9","ssdeep":"","tlshash":"5f41ff25c50fdc0889f3cda230cdb913281a913056e22657d96e5ee9cddf43b53a2b58","size":2225,"data":"","first_seen":"2026-06-12T17:57:14.032554Z","last_seen":"2026-08-11T04:47:30.212751Z","times_seen":1913,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"0fa06e655bed2d7a59c026cb90ba9802","sha1":"547bbafeb7acece1ce2f2509f8bf346043d84fc1","sha256":"c9da0420122e0b5f04aa5bdd58c285498cc2921321de0c0a4b1fdc766c821a18","sha512":"e2aa2182136fdf4aca1b1667166168ca0fd10c964e7c6719aa561160dafae66ea577fba93d15074f86ffa35182adf99c2c96ed72627b5f52febc663e406e2921","ssdeep":"","tlshash":"cb800475c0400d1741f1001314343011515c440444010150d3517145151111d7d1fd4d","size":35,"data":"","first_seen":"2026-07-07T19:15:46.886577Z","last_seen":"2026-07-29T06:17:13.213594Z","times_seen":1471,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"e3204b49a85b636cc8880cbad5ba5018","sha1":"6dfed1a64fc53aee256c26a5c52cc6491df97ab5","sha256":"a765dc27704c7f8a199ae74b8af7ddf6be7485298a56dd54bc46fdb7b69b1221","sha512":"f99c67dba4af1db7d12716d800e54f232db84e89854334f126cbdea05cfeef08509cc055ae2084173338097125b435b5229d4b00d74fdc4b995a87aaa9258038","ssdeep":"768:XyOQ03DV6Ly5NEdTtWWLiQn6spuNokpvauELcQcrQ+0XjsbgXlmJJWXzIC6tLKf3:XyOR6LMELcUPwbgXl52cfIyZ589e","tlshash":"7bc39268f224e77e7d3778ac96bce44c320571a1e9f807dee95172119fc3bb26829118","size":123458,"data":"","first_seen":"2026-07-07T19:15:46.907257Z","last_seen":"2026-07-29T06:17:13.214911Z","times_seen":1471,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"67a5c420ee38fdc0a33429a1b395663a","sha1":"d18d9874a6ac698c63568a84f1a8b515a9adbbe5","sha256":"c2759dec8fbb791e08e0b550a68d292862d8a0a9c14170d9a1ee5942e07c5d0c","sha512":"1ece6c5b4d04d6df39312c28872d53ce4029ff463bdc2950077bc1b1861d91dcbf95cd010e6a397c48717f6ba62923783d947a93d07d403c8f5fea96c845f98a","ssdeep":"","tlshash":"2501c02a5400ee5eecaa1eb4113d8dbb268d8abfc250cdfcd459de242f4627513a79c1","size":831,"data":"","first_seen":"2026-07-23T13:38:20.570216Z","last_seen":"2026-07-29T06:17:13.216197Z","times_seen":1012,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"1589309228d0596a56ca9637600c0ffd","sha1":"0ee2c12424b1650ebfe7c9aacade8146e4270115","sha256":"1dd1d72183717c7c8dfe538108603807a462ddc3769bb5114cee9f8b8c3ab1c8","sha512":"243e5a148dc39dbc7129e66fc0e760f5690f408adec6a19e92eb41013fbd1f25bf12881022d4afbbe487b9269f51665585861a9d985ece6eecb5df695a9e3b02","ssdeep":"","tlshash":"7a11e01eda5eee49a829cd1f143b1f3688c4dc779034156db25ecfc81262fa20ba9d91","size":1030,"data":"","first_seen":"2026-06-13T02:21:16.275218Z","last_seen":"2026-08-06T12:32:43.517227Z","times_seen":1752,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"10967388aedd93a37687c8c1ce2fcb80","sha1":"6a3fbd3121492cb2dbc250e1078291fb40a5b933","sha256":"03728e970c199ba3374ce7b1b3f3163632fa6de63ef11aa3a05d5824e3674b52","sha512":"939dc8ddedb2b725ff92e0a41928b7227646168e4948a090c4271fcfdb7b6089f60d0945a1d5f213eef31f6000ee46460c63d2b11ca5cd9ace0b906d97445573","ssdeep":"","tlshash":"5451337d3504c96bedad785a127fbe3528d9016b07d0ceb887c8de0409418bfa756dc1","size":2768,"data":"","first_seen":"2026-06-29T23:16:30.42623Z","last_seen":"2026-07-29T06:17:13.218911Z","times_seen":1541,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"307cab8226db7752ba6aaaff5720e1ae","sha1":"13cddabd9f6bc9191241d2165fcb4b081f20c93f","sha256":"54426822571d255ae68721d9aabe5fc072c61606fe2ffe791667e198f94ae3b0","sha512":"f433b9e8b489e6999a6eb18a6ed6c8e3578fbb8539bf12c7149bbad162d2c1916abfcef37ee635cbebf013d407d9c370d8ba26286d9de08864aa44c8079df353","ssdeep":"","tlshash":"9331d729f045f68abd9f26b5903fdcbe218f546e0fa19ab4465789a9470103d2783ec0","size":1623,"data":"","first_seen":"2026-06-12T17:57:14.038934Z","last_seen":"2026-07-29T06:17:13.220051Z","times_seen":1701,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"04a519a0bd479c67c4ebacec3d09f64b","sha1":"85232a728bf982cc4a73732a1e798f279fd1b93e","sha256":"35f0bb0c452726724f562ca9d05532bb98aac7b8d11ed0de1cac17d2d096823f","sha512":"23d7695f631768e74b2982c8336546ae4c9e85b33dff0e986f29119c3644bf89dc262c7dc87e40d5c99c439436ddb989d78f2a3c40dde91b54522b2917651868","ssdeep":"","tlshash":"6c21926e6804de57ec3e3d69053eed3a10cd887b4650def8829ece041a0297a37dadc1","size":1206,"data":"","first_seen":"2026-06-13T02:21:16.284448Z","last_seen":"2026-08-06T12:32:43.51896Z","times_seen":1752,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"25365a482f6248f1da0c3425cc63a8ce","sha1":"c34437aaa7f17ead780baa8bf8043f664b4fb2c4","sha256":"61be21898e1e84434732d2734df95db4af9ecb4e5f2486f2da7641bfb09224c4","sha512":"8dce633aacfbd032476a23f6c09e157087e1598acd773f855f29b9ddc2f649c17eaf0d0b13807397663991feea665e1d9d0692e5fd6e5ffd18a16db2ac340898","ssdeep":"","tlshash":"6ad012909c82cc1dc6a60f37283a6c3622dcc66447455586adc9da695a8ae3105a5dca","size":198,"data":"","first_seen":"2026-01-16T17:39:52.610905Z","last_seen":"2026-08-11T04:47:30.221384Z","times_seen":1902,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"44652b490b6c9ea2158adc5e0daf547d","sha1":"77c456327b269bf17f3898b9250e3829e77ebc47","sha256":"92fb3cc60692c42b2fdf8a54159d9197f9d0db962357ea84f96c373efeaf761a","sha512":"6e8ad870e7e45d5b1f8d83242685835e8abac75962f49b68e99c5a3a43cb1bb6d45698153757a16ab0a91c6c7e5f610870e696c51497bac74d88ebc4c591db45","ssdeep":"","tlshash":"32c04c25c95999059825cc8e141a2f2a868ac87640280d74736dd9886161b415b59d95","size":153,"data":"","first_seen":"2026-07-07T13:53:11.726539Z","last_seen":"2026-08-11T04:47:30.222029Z","times_seen":1667,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"b1691151961bb944c7869d870287a11f","sha1":"b4548e10cff0bbac231a29ceb780078813a47fbb","sha256":"d1efa1aee00140209d76ff05acbc6e90d27a3c130cb231383fd87a5ce25dc4a2","sha512":"ea9a091ece87fc089d0e9823673c4132c7f4515c8068911d43c98245b38f19657bc47ad9bc8629f396edbfefc4f14dbf897ec0cfd892705ec315e07043654c5f","ssdeep":"","tlshash":"f3418bb2ec19ec44e7c65e0c693a7ca454dd83a29186a08fb29ced784587d344df1a32","size":2250,"data":"","first_seen":"2026-07-07T13:53:11.727685Z","last_seen":"2026-08-11T04:47:30.222664Z","times_seen":1667,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/4911410e5153f0d7.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"e09a94d1ed13e73c8c05e86ecc9b73b5","sha1":"5d3e0e86e66f40d854564417d18b9a8cfb50938f","sha256":"bdeee3ad5435b26f62f6a8ce700f78618b18b355f3d3cd21ec3949a59777eaf5","sha512":"7d4e4220b8c82da8621e7f0ae1bfdb323ed094215712b54bfd28ed06e06e0aa9aded8bc0f07eb71ea08e821f75d433c38522d2054e9756e34814622cf8957899","ssdeep":"3072:LZhLWlPznn2U1BR0Bef8xgVrkRMKTopmN6Cstv9it+QK:LZhLWxznn2U1sWK04xstv9it+QK","tlshash":"66240be83995f6626ab302a710af1803733c252b280d4d60a711fdddb57845eb17bf9e","size":224417,"data":"","first_seen":"2026-02-04T14:24:19.892015Z","last_seen":"2026-08-11T04:47:30.076454Z","times_seen":2060,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/owl-carousel/owl.carousel.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"b7b9c97cd68ec336d01a79d5be48c58d","sha1":"1a99890b57c9859a622337ed0b2f989d6e30cc0e","sha256":"b394d33b2a7ec654a6b037ebfda6618341b3f897a362be624c923c2711b54a43","sha512":"968e18822c24c6c54827999ec766fe54750a9489d22b6a45b641854731ec00beb8fd93b9bda8823e67463f7a99ab587d333673821ae90cfdf7e92716ba050c4e","ssdeep":"768:JBA7PMMFA0tdlXKNSR4vlGRep2lcwJeL+C2jQdc7/CORUQuFBt33:HAIMFFdYMxAcLQDV","tlshash":"cb137346b3202d2a869b61a0663f160bb23a291ce414507d7d7da6de6d7dc4c213fbfc","size":42766,"data":"","first_seen":"2023-03-07T01:03:18Z","last_seen":"2026-08-11T07:11:06.246026Z","times_seen":20606,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/magnify-popup/jquery.magnific-popup.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"ba6cf724c8bb1cf5b084e79ff230626e","sha1":"f455c5f153f872e52265f87a644ff89fe14a6fb6","sha256":"3fddc6d28aba3c13d64cfd4847c333ff48c71d4a5a58bd1a0494ca6ae8ac1bb4","sha512":"22c361e44dde632dedaff2625f6631e2fb02ba3b6487097b48baa09f02cd81fd381ebb7d053f525e52e56655b1f8e2b89ddcc0a002e1b0c35c0a6920823641d7","ssdeep":"384:lPhVPXQ2G2XAQyqVxRQ5giCCMLtA15h5/F6l8aZwHwztLCpmst:lPBIt8I5h5t1qkOLCMst","tlshash":"bd921894f2b2b21383a735b8686f70093a729952ed06c855a55d94d87efcec89037f3c","size":20216,"data":"","first_seen":"2023-03-07T01:02:00Z","last_seen":"2026-08-11T07:31:46.763966Z","times_seen":73545,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"66c863af0f07994edc739a0bd818036c","sha1":"efd9a232d8207817095930238fa83330e4b636ba","sha256":"758cbfaf1bf152396f72c9f1ced8cafc5cf28fdbfdf67c420b13f33130d1e285","sha512":"9d06b34b652aef4b2b45f215ec0e782f14e43d5f2133fed6ef89e7b10b3a43732cb2793608fe1d13a76e17eed2dd1fc2cf5aeb2b93b414cc4415854c2a975bc4","ssdeep":"","tlshash":"c35122a9e6b73061a0ea7791fac616010689e003d513ccb67f8d46d00fd6d58f48cd7a","size":2809,"data":"","first_seen":"2026-07-08T07:18:57.088139Z","last_seen":"2026-08-10T01:44:05.398097Z","times_seen":15,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"d9e3b6bbe8ee60938a70e1c516dab35a","sha1":"5d51c4516b1297220aea33308f7130df6c943eee","sha256":"18cf364fd7464b8dbbe457e0651eda45ba03289ec13f51d14517a2c1be98c75e","sha512":"7ecc1bb60cd1b80fe0dd10706e855fbb58e9bf9beda3c8e168b27a515e93570e7e95bf9f22de23bc29c59f737dc2da3392e65ebd326e0aaf782a8688e1dac8fa","ssdeep":"48:qjsuOOgChJiMd7EIS6IYXQoIH3iZqaV3bXKpsQBzLn1AzkazJ3f85TITxA:y/ThHd7EITIvXiZqaV7KBPOoaGITm","tlshash":"4fd1850a5af124a249836576497f4302e671914b5d2f3c34bf4c92699f1e10fb2febe8","size":6235,"data":"","first_seen":"2026-07-27T06:18:56.565168Z","last_seen":"2026-07-27T09:20:18.497779Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"6de1dc75798c1faa6534c517b655ecfa","sha1":"8f4a40fac200e1b3f6980b185e0065232d2a119d","sha256":"b439101f12383217d4af4f1489daa727c55bc0f619f8a42578359a1787cdb639","sha512":"547dcba5e2c3410b1a58a7afc9f5476d5d2ea14fd59a62162e06a7406a12610f9048b73756697316e72fbda0b681d1a6460a86639fe4fa85811bdc5d6c7c49f5","ssdeep":"","tlshash":"c3e02b7d3c754095479210b8c1e6e2287e1b30604044d9579c9688a95cf0fddbd15599","size":416,"data":"","first_seen":"2026-07-27T06:18:56.566525Z","last_seen":"2026-07-27T09:20:18.498414Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"0827332e365018adf37020b22368fdbf","sha1":"2469e03b85aad2ec66b66901ca49b28dabc6e177","sha256":"70c21ea85a61e3726a6be640271e9794bcd321eeee9b960e3d49feb99c0af6fa","sha512":"92ee6c04cac707bdf5548f8a957b5873b9c87bc79f0784453cf53d94e45b8ac878cfc71516799986fba8565a299106d4365dc3617de9ca987d4fae094a10d580","ssdeep":"","tlshash":"eee05b6a55e355726a5f73bc1b5ff441773654c3900d69057d0c1d64bf80d3843b1a50","size":311,"data":"","first_seen":"2026-07-27T06:18:56.567462Z","last_seen":"2026-07-27T09:20:18.498947Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"bf3bef5dc77960326094459f98fa0e11","sha1":"2316bfccbe224927624b8cb3f965aa3c5ad8dd69","sha256":"be1cec180e4602ba174d6946919b0e0481999ee3ba9ddb9635aefe8cb9bf8123","sha512":"49fcf87193c47fd787f4b952617edd3d2a88735d07767acc6fd370d843c0af24c8bdf95a2bc6f7606c2027455d00c8003f4ad2475bbad28e134ffe990161d227","ssdeep":"","tlshash":"97d04c1d95726069101f601c9aba2792622442eb5e253d34b79cb55e1f4a54f43a93cc","size":213,"data":"","first_seen":"2026-07-27T06:18:56.568462Z","last_seen":"2026-07-27T09:20:18.50267Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"6247dd5d2d787d98a0d5e4966146d550","sha1":"51dcfa67e8318f689e1a4589a9def15c6f9a23bd","sha256":"cbb9ab7439a233ff75c44799819b7a7de5fdb18f4e30f0236430bc751530c211","sha512":"bcdab3f3db437167cf01baaa88913e053ea2ac769bf14381fb70e62ae10544ef8f11c327a24e01218936ae2800ed21453d065820542d1222b87117980536c637","ssdeep":"","tlshash":"92b0922e6c926024a05c1116a01c008a6b8cc9bb83c814a862054cb5ea9a0ba03847b0","size":108,"data":"","first_seen":"2023-08-01T01:42:54Z","last_seen":"2026-08-11T07:56:15.268545Z","times_seen":298474,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"e18eb9d0972d240f1a5456179bb6523b","sha1":"65255f106adcff2907a98e295a8e7a38fe2884c4","sha256":"3d68db2b85d5a2915743399f09dc438963f0c50f68b02df05d47a372661603e8","sha512":"bcd5a6c26fa1f7a77f5614a7b28e238701d698cc0c96ac5d03d97628d8622125cd0cfdaf54b1db96ef25320a3fca7584abd343d67bdfb9f272ca3ef8572b360a","ssdeep":"","tlshash":"d4c04c38402080e98659101c7434fb80bd7d3b973163e047da3c621c65f5d017c94b11","size":134,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-08-11T07:56:15.26924Z","times_seen":262211,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"12347d552552b7eb8f1aaf47a5774b81","sha1":"4701684cb61e83493e14555659e2cd07ae9aba3b","sha256":"63b85d3cc0ccb498e52cf8dc76db5119713a85031ef4a8e99edd01e403cb08f4","sha512":"a0b95f6914bf92922a13db3f81f5612e2a360e0b3bb0f6ffabbe41623a044d662e27a216d788399cad99c8ec18c5f98f481e602d672de5b3b97d5da8ec930e4c","ssdeep":"","tlshash":"6b41427ea3a4193b45fa787e21af560620726654e0158c0c813e76846cb1a4b21dbf5f","size":2083,"data":"","first_seen":"2026-05-25T17:49:28.102585Z","last_seen":"2026-08-11T08:02:47.223703Z","times_seen":20211,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"00c04bc3297a3d2421a5133279cde9e2","sha1":"cdb2481f88b58d9c59021bf5fea4ff22a3319ec4","sha256":"23e8448c67aa5c291669f7fff8a4077dd0c7c7e03c10f481b5662b147a4c0e69","sha512":"0956ba44bd40c31245743e948575f7ea424526d430ea8fe95c16aaca60a9b07855bbe24b9cc4859a770009412dc64d3aff4d709fcfd3d86ca014f1398173e1b0","ssdeep":"768:J1YhGD4UxXHwUPDi7/+ReQJq5cKYMdmq9VSyY/v1M6LnB8MzhsDRLqgcDtfwk:3RQYLjMFJYVM6bB9zhcpk","tlshash":"647352240868a8729897e547deb9ff3e9cf806790bc9966ebcb7835c01ec6510d9f413","size":77085,"data":"","first_seen":"2026-07-27T09:19:08.472127Z","last_seen":"2026-07-27T09:19:08.472127Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"4e226125e429d79c4c368581aa455eee","sha1":"79fa2f523a0ffb2867b44afef3e154c3dc1fb5cc","sha256":"d50c6291d73f2c5ba6b2dc494e09fe070ea0a6c0c4ce3b3c6bc4156ab944dd72","sha512":"06a7818b0a33701b90d20662e1d1a85f90f78af228c2efcf6717d56f93b7502a5cd540d471f113376717d6bd8a8b0b9f198e16a65d6412f3f946dc0e6c87ed28","ssdeep":"","tlshash":"96c08c69d3040b704270a810ab0b3b4f253700228020c845b210a60038d0b078d703e2","size":145,"data":"","first_seen":"2026-02-05T15:28:48.153036Z","last_seen":"2026-08-11T08:01:33.320503Z","times_seen":113810,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"8501e99db1c76b62dea75ad32747a129","sha1":"791537ba64bbd81ed1644b015c4830d897182fb8","sha256":"25289f89e8785a11e468135cfa545b64462e90a61e62ee0bf9fe2dce0898016a","sha512":"d34b3b6f94043e080daf7804d7305efc1bade1433a80d4c6c547ab1325aceda8235ceea8bd99062a7737401ff5d767d46e4d24a972bfa88e9c6b197947041f77","ssdeep":"","tlshash":"7b1135251b715c27806a296232dfb309b8262372583c91dc8a81e365933661bbc3235e","size":1032,"data":"","first_seen":"2026-05-25T17:49:28.106733Z","last_seen":"2026-08-11T08:02:47.227482Z","times_seen":20187,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"173a08c5d6adc5c93611a599bcb2c717","sha1":"735a7301e66ae2c3584357f7bf0bf09eefb62df0","sha256":"271e6368679a21c3416e2a0325db33d6bc445d601c72a49914081b5efd0cdf3f","sha512":"cf15a9aa7e406207f3b85c7ab7d6453fd2351616b4dbb2db767ad854f866ae8256045b8cb74948f44d09fedb6c200c56fa2e2ab83d1ab997f5b0068edee7349b","ssdeep":"","tlshash":"b0800000c08a0030c3200c082008c28038802002a8f2002208200000a0032fca0020ca","size":26,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-08-11T07:56:15.274105Z","times_seen":260290,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"d283d1818e80d7267d72b236fae9738f","sha1":"d767efc3619e7deff9a4c50b7e456bc2e6a954ed","sha256":"b74af2f4e4ad25e4cf95fbb6734cc89812d5f428e233cb333cc010872ba20788","sha512":"98c9bb90b63dc69d03fef7c9f31b78474be36d6eecda99845cb896ec6a4ad3eb19e20a2c65ce622052159ee4dab61cef7640f7e1d1b0574aca1c74db562f1db0","ssdeep":"","tlshash":"9101475c0a057d9ce90688ccc7c6a6655bac9237be003124f82f454dbae3aeb9830967","size":760,"data":"","first_seen":"2026-07-23T08:14:51.856878Z","last_seen":"2026-07-27T21:22:24.458632Z","times_seen":1879,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"385567210550a0c1e2bde47662ed4da8","sha1":"0cd76fc5cdca83a477bcfafc3beaf3bffcd6f781","sha256":"c144e84ef4992554561c2e74eea7bcb13d689fae12a19268e4d8d07266ea66b2","sha512":"c99e8074b2ac53140f93168c7d93c4ef36a085a054ff2c1105638cf2beb1fc257ec36adcb0a095d021242d5f1d7bce230a4d082707abb7c4b1791907bfe6e10e","ssdeep":"192:yzEjQfb/44TmOavb+Nvyv8kYl90sxVjoObVWpO7sTM73gcAKc3Udq6bRXnLNy9nA:+OQfbwKavBv5Y4sxVMOUE7sTMDgcA3X0","tlshash":"6822c80fa38679fcd7d15598b7a36b037cf4821b63082a1d88cba0542cddf19429b9ed","size":10400,"data":"","first_seen":"2026-07-23T08:14:51.857803Z","last_seen":"2026-07-30T02:08:52.778436Z","times_seen":2239,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"31cce1914068185ba0e0323653b9c4a1","sha1":"733ffc803ad9c202832ff9acbd464a5681602a57","sha256":"6f10bf9e2a63c22b710dbe0ee66041bb1639ab3c4ad69333999876e989854b1f","sha512":"81d6c36e55d90964989f6b1773e52a07e2326c5d47a5ccf950f71c8df0a44eae23e51b0c98df9b05cb205838b77349dc47b4340f0e25798bea2c0bef934db931","ssdeep":"","tlshash":"ceb09b0745362d1b5dc55914bc4945b12d41d56503945ebc5540951d3145027645f5e5","size":119,"data":"","first_seen":"2026-07-24T13:38:08.037141Z","last_seen":"2026-07-27T16:56:48.6614Z","times_seen":592,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"d8fb965e7ead2924508e97e5326bd3b1","sha1":"fae376d0cb54d4433b7bdc9aba04690cd6cb5d27","sha256":"57bb660c2fdf4369ff8e37f99b26963dba87c120b80c443ff3d31e030ab3a0f5","sha512":"c03eb6a1004f9dfcd1f960a6ca70a77932794808f72476b276bb16f02d0a1855fb2d93d07aab7c0c040d4b3c0eb4f861a4c1a9368a27e3a6430e425ff6ed2568","ssdeep":"","tlshash":"8e60000c00000000033000fc0000ccf00300000cc003c0c0000000000f0000c3c00000","size":13,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-08-11T07:56:15.277061Z","times_seen":256956,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"b648d2e3666b79ff4c2bf83761a81f27","sha1":"7bb442c0d352167e2dd130090f32be012b4b358a","sha256":"43d6fc39e9fa55f23f382c197286000bf5329f3d2f92db222db71a0118e87483","sha512":"9e546a072ce5b0213ecb8771c9895bba4f148893447ec65e3df0b3125c8631ae92c87c61601f714fe463bf5b200ff61811ba5b4742761ffa36343fa7497e2cd5","ssdeep":"768:n6SckvlPfQZi2l1R0cq09UB+JDCeBSDYOTMAy45OVuDb3ZnhZ2:hAEw2+EecP5Bm","tlshash":"40f2e157d70eeafec0000f72e76c2b7d1a195c3b5102e5d8aad49a01e68e915e43dcbb","size":37290,"data":"","first_seen":"2026-07-27T09:19:08.478658Z","last_seen":"2026-07-27T09:19:08.478658Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"bbd4a66656e13b725d9e2de1b4535db8","sha1":"cc2806bd5c8946c26d26d37603eebb03476c6aaf","sha256":"33c418c108eb899dcbda0699980d1dfebd9624d10420b48244db9ac29449fac8","sha512":"d7e19d91cc68c93025737e3c88d5332980dddf6d77e7fbd381ab1e0ac30044599effc9775ef5b3cc4af93028bfe462b6d1481c1851e48a50806dd084dbc6ae3c","ssdeep":"","tlshash":"17a02223c02ac0030038002000833002e30803208800a00c030a020830e800bffc888a","size":62,"data":"","first_seen":"2023-12-27T12:03:30Z","last_seen":"2026-08-11T08:01:33.35016Z","times_seen":5867,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/480cde08b8bfd5ce.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"2197ad79def7e68e0db5210279b81a88","sha1":"4a9572c96dc4b65a933f8494889a2d78f6bc8b3b","sha256":"0c61a398dcdf9a5d5a6a744855e7d95635c22711ee32b5af4a658fc6035de812","sha512":"1ed4b2613596da63a7fbbb97a8839e5ae8cf7a62d48b3f2818a3d7b510dde3fef57905aa4ce17843dcee71e3b9205f42c8e3b412427bddd975643af58c1b5979","ssdeep":"768:9Nf3ebiEpt8v84l+ayd9ar543m7dGwVBmOJ8SLBlbGJz5RBC8zogjPwNp9WxBbV3:yGY8AJ8pIOCSOvB9GW7H5sZzIxB","tlshash":"8883f8f931d1f88207ab44aac43f0002f32c5d77189e7864a3e5ddea716455da1f2faa","size":84456,"data":"","first_seen":"2026-04-28T18:06:46.282063Z","last_seen":"2026-08-11T04:47:30.054673Z","times_seen":2173,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.navigation.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"adb7b96105b60b1bb1b77d1ae0659504","sha1":"ce42314dcb27947b3d5577ebc44dfc7fdca14d8e","sha256":"37cb4ed8291c673401c21aa0248f8a29e6b49a5c81de1ff5a5e9970d91808627","sha512":"2646fde0e737e918f30de9bca1d2e0e59d0132353c3a42b45b89bdb2290bd3862531a2942be8610c94dd68c3cede60938fc36633e75ccd2445d9753b85f59dc6","ssdeep":"384:AhOOxPBlfo3+X3KqcN12h+dotE7KTUzmFu7jaWIqUB7lR9O2E:AIOxo3+XJcN12h+dq7iopDE","tlshash":"f2c2b899769038ab9473667bc06a40b532728a357307ee6078efa6f0057ccd913e7e4c","size":26071,"data":"","first_seen":"2023-03-07T01:06:58Z","last_seen":"2026-08-09T08:42:12.842297Z","times_seen":700,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/9df3b67b6061ea9e.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"c678a91c2c6476c2f4253bbb2f68861b","sha1":"69b7933df2474b5a89bafec3ed00c63e7a38fd6c","sha256":"ee32b6de09c560980545699191b3ba6ebd9847bba1e07b95f5a5ddf359bfc353","sha512":"f3ae2a1ace9a1a1c354782702e328db28abd4864d69e33e7e6e72cc82ce93e5142093752a6b82a5d21f62e953ed27f5101956c00407e5d2d9527eb36435d1584","ssdeep":"384:EjUDGGRCRvBrTfIVZ/X+0o3NkOG4+Z47auBSwTNGFJl:4vB/8Z/X+0o3KZzZ47auJG","tlshash":"dce2c7b572d5faa2139340f0c83f2017f2784c7521ac7460a7e4cc9b765888da6bafd9","size":33297,"data":"","first_seen":"2026-02-04T14:24:19.872146Z","last_seen":"2026-08-11T04:47:30.044519Z","times_seen":2295,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.parallax.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"98f1ee062bb2f698eb228ecfb0c2b4a5","sha1":"bbaab382e24523d10e1f4791b8054ac52538bca3","sha256":"990a19934dde08fb93d2ef88c6e3c139ad73f382af87bc3ce5d120a5d0bba17c","sha512":"43dff37aaf91d9ef56073fdc6503dbaa03d8254812f801242868af29bcbde0fae3f24b8f3afbb5f253b738be964ecb3012c542f9de3990b0869bfccda86457aa","ssdeep":"192:meLx1q1e1XO79dciEK5FKw0Vm7Wgput9mHJNYgJ0Yb:N1q1e1XOn+KL6m7WgpAmHXbn","tlshash":"b522e95a2e1038f640b3132cf9ad89927322c571e5068c41f5f6bdb9576ce9d077aacc","size":10679,"data":"","first_seen":"2023-03-07T01:10:42Z","last_seen":"2026-08-09T08:42:12.818599Z","times_seen":724,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/800e836146d6e7eb.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"7b2a7348e5acf7f61cd01b2152c769a6","sha1":"1cc03a4809684838384744113d8a0e0093a62a3a","sha256":"c5bd83f87b5a8d38fee5230c1078de1f65ac83476cd29e8f5a41d63ea9bd22c5","sha512":"56b9d74b6b4d8a6f1e9909cb88c18e6c784c6bbab10d877a936f334ec5056d8720d20c2443e241c3064f536853f3ffa4578c1c8b3ab391ce8d671256a83a0ef3","ssdeep":"192:c0/B5NGI4y5Zzlqrvd2bcQFCx4zN2M15hNeSd4e+MQCC8h/PzM+kyhtTliuR3dQ5:cOq8bcj+Jz57b4e+MQCL2+k+Nll3dwA4","tlshash":"b492b81056143788f5b78289915fc40c302f2a4caf0e85b5bbbcac666b544e73a6ffd6","size":19477,"data":"","first_seen":"2026-06-09T20:30:37.829522Z","last_seen":"2026-08-06T12:32:43.342266Z","times_seen":1772,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/jquery.themepunch.revolution.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"cb68b552656ec0718cfe2692f65df9ff","sha1":"e8ccbadce248ba21fddeab07e07149c4481f48dc","sha256":"23d49684fb60053d365b5e3a949b245c2dd413a265050bad5bcb7d74d69eecbc","sha512":"e624352a8ba20f456e5f422d9453bbfab851df1f52db9e6289898accc2629128c4a54f95f969cfdcce5345c8f9d75123d2b6f59bb69d7c975496568469c03a10","ssdeep":"1536:LCnzw4tFco78X3hSrk8chnmbtWd2YMdYQ8Mv3xVgnugt9uK5jc7NKi2nz+NwAIIM:LCnzXQo7s3hSrk8kmEy6cNKp+qm6N","tlshash":"9b53fa64ba20347654bb2265d03f461572b15c37eb02c4a4e5e7587caff8d89236bf8c","size":62656,"data":"","first_seen":"2023-03-07T01:10:42Z","last_seen":"2026-08-09T08:42:12.852582Z","times_seen":327,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.kenburn.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"09ff4f0b20c38a2cacd10d60d521ec41","sha1":"ba2c33cc1e85ddf881071a0cb115cfabe0a6d430","sha256":"dd7fba62c6c7e28e1e92920f2c88268c4b0b7a1f3bdc3a30bd43bfc008c41290","sha512":"64ddfba5c1c3808e4977d897f0b16302af3adc1ee6126980adf86e68926f9c037b62c6dea8a733e19ae2fd46e7c88eeab81d82be4302eac88ae54c5fea32e14c","ssdeep":"","tlshash":"ad6141d1201a6c5e8c63e38295ef13cba2f1fd243603981d5776b6845ecc91d29bbb4d","size":3384,"data":"","first_seen":"2023-03-07T01:06:58Z","last_seen":"2026-08-09T08:42:12.91884Z","times_seen":314,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-market-quotes.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"},"introduction_type":"scriptElement","is_inline":false,"md5":"42f49017eddd35f92ff77d0a6cadc1ab","sha1":"746f606ddc029cc79a6be02d7b63197e1c619b76","sha256":"711dda3b69a995391f4af2e689caa0e2f09f650d75a317a96a963435053dcdf6","sha512":"84561a92b3d9d93b9032d342be881f268f6bc9a43f0213821779b1f2c99d4d18efa357c2fb716d950cfab9fbb88a60c3d69055d0a3335efbfc721340e137f159","ssdeep":"384:gf6uCWoofYkFdjhUjrb26n0q6OrmaRMViZME/:uD5Unb26nD6OrmaRkFE/","tlshash":"5a42c7aab660dcbd519945dba07a2321b61d3944b203eca4b5ece4c510fdccca531fbe","size":12750,"data":"","first_seen":"2026-07-16T20:48:56.391302Z","last_seen":"2026-08-11T04:44:52.842103Z","times_seen":100,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/js/popper.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"e01684c4d1a19ab7e2b3bf7fee4eccad","sha1":"dde0e98bfc96894730c189f4130a810e30d525f7","sha256":"5903bdc7a4ac443581031d9d23c6d9aa2c2ee4c6d1cb4be5b19751fc4895e8c4","sha512":"c581f6e906c50e8b365fb668c1ec3aa0b447ebb7e7eee1c298b576ca57a102b06c7634bbb193cfef5b439424b4bdae0af56f772a94aaa9367892cf983d1d626f","ssdeep":"384:L+Xh+odHN1iZCdG9D7fWsju398xivi+7D7NYFuA1QvDHr/RxGkjkd/9jt39Din1H:SQodH7iI67fhxivbD7JgQv5xPjknZ3M5","tlshash":"168293dc3290b06643a790a7906f960eb2335879604e9410f29df2d97c30efa917fd79","size":19239,"data":"","first_seen":"2023-03-07T12:55:13Z","last_seen":"2026-08-09T19:21:52.935272Z","times_seen":121,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.video.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"bb64e971706ed830a25ae85f6958d3f3","sha1":"dc87239611afb8c8815441f0044b105e4aa73c9e","sha256":"12a1b0ebd1d51696246a62e740f5d71e97b7db2b0dbdbc1dcaa859b62f883369","sha512":"bb97092fdddd0f4d683e65bfb7380b10ff920153bed84ec79bd236eba9956661afcfeb5a9969917eeca8049625c53d619fd178907560bebb432dc64db92f69fc","ssdeep":"384:yJfty4HLaW8Tn5/k4kcpNWpVbweOf4c0/mn1a8Ijat1iq8PkPZAjuzdywo8Q9glC:czHJABpU6eOftk/jaiqEuzdCT9ESLsmP","tlshash":"04b2c7a7f50428658819f9d69caf115132b4fa7ee0058eb068f7e2b40f7ce4215deacd","size":23869,"data":"","first_seen":"2023-03-07T22:33:38Z","last_seen":"2026-08-09T08:42:12.858873Z","times_seen":314,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/33074d3ff5d0cd2d.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"992603cebc96287b9bf186c47928c4d2","sha1":"8a86c102cf1671f6d0cf3b6b5598fff510a4b79d","sha256":"93abe3bbe2a336a05186632225cfa198e5969ab56080e1163da35e41ae9facaf","sha512":"06cc3005d9c8ffe1f27e81eac61fddab10c3e07cdca8c183315799b19b177a9f9dd2043bd1c9c92364578b78d69640c31014db6cca25a74972244784f2de74a2","ssdeep":"","tlshash":"e4d02b702250fcd8408aa4cc8836424bf529247262fe3495d7ae8cb1a174f0c51e1955","size":282,"data":"","first_seen":"2026-02-04T14:24:19.894391Z","last_seen":"2026-08-11T04:47:30.036672Z","times_seen":3051,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/js/bootstrap.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"46b549bdc90920f18a911f186b9dd75c","sha1":"3c639c4af5c036a6ee364215bd12c0b12937827d","sha256":"1886bc561dec7c44a7541d82377ad81a40ff32496f32ad259884f0790c44d6a5","sha512":"52748c7290675d5f033f334d4903e54972c1c9475378c768710e4dcc96c01533bc2ea2876cfe0ffe0bdcdefb7560dc476630eae4c9c3e26e75b8401feba3f1cd","ssdeep":"1536:3ViA8N5LRjEKCNEuDGVzdPANQaxaQ50gOavCIZq7Vt4I0wKcKaX:3A5nRIarr7T","tlshash":"a433b60a725478a246cfa435917f410bf33b2859a90b816cf96998ed2f7cd483267f7c","size":50564,"data":"","first_seen":"2023-03-07T01:16:27Z","last_seen":"2026-08-10T18:10:39.448164Z","times_seen":2755,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.layeranimation.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"2984cd848201aee5b321e9bf7fc6f514","sha1":"2b4d94877ab5a3befdb2510478d444317aaf7453","sha256":"7a7499032e51e8bcb6d0e57b5dead5349bd0abd519ee79e1538cc64f9d9030cf","sha512":"d79082e58dacd24ddfe3602b8cafa8c5f73a334eb5c368518cbbbddc96e7bd63ab630fc70cbb1bdf4c6f4c61f7526cb7c810b9300d13100fbb5d2d6aa21809a9","ssdeep":"384:SjzdxpS3/2LdfPCNcpl56aPkSFLj26YItsq4dtXPLAjnzG3Ek+ECld6EgOhAOTIA:W5pl/FrJtsq4dtMjzG3IfZIuUtg","tlshash":"8c33b8c6f9102ce581ab8145d1be44693220bf79b103c5b1fd9ad59a1a48f8221fbf7f","size":50176,"data":"","first_seen":"2023-03-07T01:06:58Z","last_seen":"2026-08-09T08:42:12.840536Z","times_seen":627,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/converter-js/stream.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"15a5727b27e7155ff3a49529b225388f","sha1":"21ca5b47e10f76176f147e189377dff2f40b9c59","sha256":"fb68484b59a89be00b33d1dd8ab6bdfee5a678acf8f28c90c5273f5678e6c191","sha512":"c0a14a89840a841a01b4ab3c187f057cb78109876f207704aa8a96f2c49f1cfba132b76644830dd58689214c63bfbd19a3cc91908bad1643e4115571f92f7ecb","ssdeep":"","tlshash":"7d619694a9f8211147f730780d9b7600736ae16b891e85887dcc87e04b763add52bff9","size":3257,"data":"","first_seen":"2025-03-10T16:31:43.155109Z","last_seen":"2026-08-06T06:09:10.713546Z","times_seen":39,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/converter-js/converter.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"0103b3a9f497ee90c41d691d2f55e64b","sha1":"90d19a849f21f71716ea3d3c2262bd2eb8d832b4","sha256":"c78383d5032d858f60fb26a4c0501292641aa2d8c4eef19fdd7439d8f07924ae","sha512":"57365c6ca3af51d8e45ea2a46d0a8d9a07624ae4169b5fa3bc41fd361db6e23d185c09fe7ae8d039a1aae674b533ed0b62e9d31126fd1041aa7cb215984e10b9","ssdeep":"384:vdkKvOEoLw68Ke92aVI+n/R9sq8elOADzfo7OFHFLR3W09:lv4e92aVI+nBLLlLR3Wq","tlshash":"88a2a7d538fa30161bc312b52c69be813ba2c8a665857b40b90fce749b4c1294f35bfd","size":22417,"data":"","first_seen":"2025-03-10T16:31:43.134031Z","last_seen":"2026-08-06T06:09:10.663855Z","times_seen":39,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/95262386d8d4b6dd.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"8c155806c003f628ca093cb0feb083d0","sha1":"7e566386cefa86e8ede2e755f712dff7a8ef02f7","sha256":"07310b422de93eb0e61986355fd1084b06b47060d629f957c5311440650a6d2a","sha512":"980bd9a8f57049d13d7a8647fb56f621b005d208dafacc5c0534b9a919204bc9e363a122a1b4a48f4ef71cc00dcd2308e4885de83e31d2491b0a5d4a807fe7fe","ssdeep":"384:tj5z75Bq9E0mLlSmRt0cJ3XHHE79Fg/Za98qWtOPSN6wfV:N5z9BX0idiMxxgwfV","tlshash":"a4d2d9b17395f9a352db86d9d03a0005f2290d3530ae28b0b395dcef365dc8991fafa5","size":30684,"data":"","first_seen":"2026-03-29T05:29:39.700118Z","last_seen":"2026-08-11T04:47:30.031635Z","times_seen":2178,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.jsdelivr.net/npm/sweetalert2@10","fqdn":"cdn.jsdelivr.net","domain":"jsdelivr.net","tld":"net"},"ip":{"addr":"151.101.129.229","port":443,"asn":54113,"as":"FASTLY","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"78f9abf2d03f7ee6a755e0178d41f2f8","sha1":"9368de7d2e8b0d335adbaab171143e307ed5fb54","sha256":"2d5fa531e30ac3debad673003128f1ca9ad3c964ef17b547377e7ed09bd4504f","sha512":"c138cdbcc824524cbd5cbfa8edf966acf66462916349a5d9539723c6f5f10f44357059cc28ddbb95d50d3e17710e9f533bebb658d82527d980804b8a3a31f9d1","ssdeep":"768:hrDTClRYf9tFz5XKuaJuZMpDaIi0oO3vYCRuB+MJ534ywu9uqkjwxRXCKVNTeccy:hbCzItFzdZIBj3AvB+MJ5ocC3WsRw9","tlshash":"ce630689b6403133aaab4174659be60db6b56515fc330c18f128d0d84ffbd8e6273bb9","size":73160,"data":"","first_seen":"2023-03-08T15:12:56Z","last_seen":"2026-08-10T18:41:09.11469Z","times_seen":2297,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/assets/coingecko-coin-list-widget.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"c28770fe1d7cf9e0f29f374273acbd8b","sha1":"bd14dc4eb50a0b4e15476852a1b7ae1f0c425217","sha256":"de441a77d0983af9af77dced03a3788c70d11fbbe9debefba04450ff0a15b0fc","sha512":"e70688d34a6d9c8db841a778fa890840286b839e5c210f961edb344a441b00ff8ddd129a7333619080f429b3ebf5c4a90fdba81bd166b0fbc410cc92c722c06c","ssdeep":"3072:crPw2cYUgDCSaJ4h+RlkMfiWlr2bBG0iHW2:OPSgDCrRlTR2Y22","tlshash":"af2409cdb6c0b06617f362b5106f640bb3ba1da8a84c8690f671e4e5ac7a05d5233f7d","size":214560,"data":"","first_seen":"2023-03-07T18:12:11Z","last_seen":"2026-07-27T09:20:18.331523Z","times_seen":9,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/d71b99267b066b9b.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"8ab91e90961bd7e4d7c2d7514a37ecf6","sha1":"d2e2405837d8cd1436dae22a0c5d7f4e15168995","sha256":"6e16504cbe3f76082798a523cf9cdce3bc9321fefc36485d02c9289e5a5f6b38","sha512":"da24ae4884840b4b996fdd087c41065e590b5cf33046f6aec00157142b53b9da067a83af2cc7744429b64c02bbfb1aef428787389939a1736cb4ad1f0458ee69","ssdeep":"384:AqniNMH/fZ8oNS1VFWHcE+Ff8IiUG6AUNmXVOmitisz8Xdjz8/K4QIwATf:YO58o0fG65mXVOOKKNInf","tlshash":"bec2c725b90705be2aee83e7e06cabd5d9385a02d5098b4ce3978f319704bf56187b0d","size":27443,"data":"","first_seen":"2026-04-30T18:36:20.827898Z","last_seen":"2026-08-11T04:47:30.134319Z","times_seen":2156,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/jquery.themepunch.tools.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"e6b48b6ba78ddfe39bef9b6bf147543e","sha1":"8950b7ef02baf1ea3a6bde99a613a5224216ab18","sha256":"9a56320bb8bfb81dc997a1120c77ec017cffab4db5ba5482afb29129e0690540","sha512":"138ad5e36256062a42c67755559589dfa9e172b2e1167b80ae7c3aee385d29f2c5ea0e8a9abdae632d77ce097f0391e020443c63da580c4db2214b38b3276431","ssdeep":"1536:iQpnayKBPfeu87CWWCuy+7u5zOLvITONqvUejs0VH4dLk2IrVpyXjKXkPxbnvxXp:iJfOCWWCuzNVqvUej2FjGXZojvtl7","tlshash":"68b308ca31517012459622a5517f0a47723bedeab4098d2cf588d9dd3e3cc8921bffba","size":107526,"data":"","first_seen":"2023-03-07T01:06:58Z","last_seen":"2026-08-11T06:53:48.960586Z","times_seen":1725,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.actions.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"e7290f8698d4a9b191be23fa8c4d38d1","sha1":"fb350ed56852cae5f988befb598e06402ad6006d","sha256":"3cd73ec04943a47c75c4e6a4b60f6597cf10144ce1877ca17229fcb4830e6f8e","sha512":"602d6e692d48585d12e212927b9a8772df5ba881fcd82c93e160121dad9335bb024d1f8d3cf22fa6bd0b4d0bbbb69831d89734e4c8af2ab9beb14fb59a9c2778","ssdeep":"192:lQHPaV+cME6uLnm8ZbYl+z1i2VJS/gwBVaNTm:lHn6ehi2Iz86","tlshash":"6502a542f1056cbf4467a5a9e83b02d2b171b59c6205aef4f067f5a86c3cb6204cb7ec","size":8901,"data":"","first_seen":"2023-03-07T12:11:48Z","last_seen":"2026-08-09T08:42:12.917812Z","times_seen":297,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/converter-js/fuse.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"cee79cc10f491d27d2b64e4b63b7eb33","sha1":"6b910b7dd7b8bae0624921331504a9f0cd6d3a64","sha256":"901fc7b8108e39c898776ba75c79c6f6bf75a10f18dfb3c3b258f3936190ce9e","sha512":"533a9d85bb1e587c32eef39679d730fd5ee8c1621c652a5b59e8d355fc141583a76c4c3920dd15a53ae1230d5ad7b49d4a7b218e0b5684d41e1692b7bd5e41f2","ssdeep":"96:kzaH4X/XHFCVDiPaJyaKxFPvuTdpc7XDiQa5zt687owGuDeoXTFI3afC:dHeXH0iPUyafEdQ9JGuK6I3aq","tlshash":"12f1b7adf6d0250503d308d45c1a1a8ed337953e5c1909adba68c7e99c3ee4ea08fd35","size":7551,"data":"","first_seen":"2023-03-12T23:41:39Z","last_seen":"2026-08-06T06:09:10.662123Z","times_seen":62,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widgets.coingecko.com/coingecko-coin-price-marquee-widget.js","fqdn":"widgets.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"104.18.5.118","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"c943d4422dad6300bbaf689c2211180f","sha1":"4cf78792b3a9dddc6f2ee8219bbfdd213194f144","sha256":"d8d3d9a390c75f612142118d3281d85b95cb50e84c2f6d9438daa83efa8e2437","sha512":"c5516ee60fdc9e900036dec072c7c2de8d01dcfce22fc901048697428c43604ea8dd8d907abda960ce8aae5201ec7f649300af511c8bcccac469a9541f0d9d4f","ssdeep":"3072:/uPfvYNJshGWDSBttCWINmVZrnPodE5rUzpI4Oz:XYBctCo2c4Oz","tlshash":"bc34198eb6c0f19947b693e9605f394ba77d28fc68884380e972f4e5587e05c6132f6c","size":230974,"data":"","first_seen":"2026-07-05T23:38:03.171209Z","last_seen":"2026-08-10T19:29:21.29417Z","times_seen":326,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/js/marquee.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"12564dfc331548cccfaac887cacf47ac","sha1":"5fb3bb0df723e0599937698480f35eb4d6bd7573","sha256":"dd286c431e73e45c02f256d5aca24d15da078f993538691b2f95bebc6eb4bf67","sha512":"acfed49bea66fb4f76fabaabb1bc41b0368ce92d372d9abdeb124c915a5093b5d2029c06981fdfba4817797109a28c492985a02f634cedf619741bdce59b9526","ssdeep":"96:3jeIyUtg6ICYd+un4xRx7nCKM3IJT3W+Un6clyUMQhyvjt+ntfo2tzQ6:zwUtmAO8+Is6ccqhyvk","tlshash":"d0c173c5b5b5308a5667229780db07c02a398439614f8c6eb9368270bd70f8c1be7f3b","size":5926,"data":"","first_seen":"2023-12-05T20:35:50Z","last_seen":"2026-07-27T09:20:18.377109Z","times_seen":40,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/js/custom.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"d05d9c35b680e11a53e531cd193e866b","sha1":"a9ccbad8cbbffc651ee94b1e28adaaf7f04162db","sha256":"8481eb0e8d6e470de4633d8c4b519a2b42711990e10f85ea4deb281a444a82e3","sha512":"9c4e2f5b9aa60e0db641bef2d51787c56ad3baff2f69345177b61e9893cfd2ff2b979c6a3e46baadb9bdefe5b28975c780b6004d6bffce0cd252bf435edf74ab","ssdeep":"96:2qp146JMg2xq3o02LOqJrwOfK4e80U5AIRQAeykIGxYkRj/Esv:X14YMzsY0sOq6OR0/0aVIG5J/l","tlshash":"b9621f19ec60146b017be33a5bb94204fd65432f82819a13bdbc82bc1fb675a658dfdc","size":15602,"data":"","first_seen":"2025-10-06T17:20:26.982181Z","last_seen":"2026-07-27T09:20:18.342191Z","times_seen":9,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/turbopack-18a9de512a1933ad.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"ee874107586f9203ea70e460428f2bb3","sha1":"9bfba653884c0499149072efe4824e6170f10271","sha256":"44b3081e3a644e21b57f4155637e1e43563eae2c0f034c6ba9edd6bc9cba26ea","sha512":"7fd5fb8b487d8981ead132093abf93b51a77860cb1d04cd5c233c3e671b7183921080069aac71afb4f5f77a424d02ccdea22e3feba459326eea86d1c6637a09b","ssdeep":"192:D74eFn8/Esp1U91EG5T1uyO9lGdiwMhMlng4W9PZcxkUk1IsiyLxA:D74e2OvO9lG0OlgJZZQLyLxA","tlshash":"6722d8ea33a6f07743af94e6907f4044f1795468145d542c936ce8fa38398ae49e3f27","size":10707,"data":"","first_seen":"2026-07-01T05:10:22.643373Z","last_seen":"2026-07-31T06:34:35.53001Z","times_seen":1526,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/particles/js/revolution.addon.particles.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"a72230ab29395197895e0c7fe291b7f4","sha1":"e15090aed23a5cc17145cafa5728e4fa4aab2d97","sha256":"f411b4c2a0c940f361d0634e6a065932d76a3815e411c4b02f4cab541ca97ae7","sha512":"535050f52eda479f0d182c53a52d72362dc0faf254c7ef7471f8b4c4ac9ef9955750780594c1ca86fbc1aa473be2843f0ad6dcda29fe3b85684a78ce720176cd","ssdeep":"384:H/XBzn8vtGfJo3R8QvvWnYOnSeRBNy9ISwsJ8NmDmCBFF8st9fDPG:H/xD8vtAoR8JZNy9ISLJ8Udt9fDPG","tlshash":"a1b2614da3f73db3379a73a44afcd153a7b048d12d8624f4fd2c02ae956998600ee674","size":24398,"data":"","first_seen":"2023-03-12T11:43:23Z","last_seen":"2026-07-27T09:20:18.355743Z","times_seen":43,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/81a298ddc7471070.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"19fc6352b3bef54383c8770d74131cfa","sha1":"c67ec295996975fd662c06e0b614bd3b9f97d7bd","sha256":"9f43d8db2c14631ecaeb7f7ea5d8823bbfe41eeee26f6893c816d0aa348e9605","sha512":"64eba4d08add14b4c9728e2e5026234cf522dd62e2da45df50d967e4d337e6b38cbeaf471dbfba3420a5d3c992bb47c628f60618fca6d84114f7250b7407c5cd","ssdeep":"96:76gC8v2YWBRNY6v28COSXTnv2IDESf3vZ8kM2Lv2kyIWwzysv2hv2zthN1Vm5w7b:cjYWG8COJIDEiikyBwuzkx/T+AP","tlshash":"e4f1536636d4f9d1168b44d5c83b5006f22e0d3a216d70a8b7e5cefa369044ef472fea","size":8114,"data":"","first_seen":"2026-02-06T09:43:19.169507Z","last_seen":"2026-08-11T04:47:30.109196Z","times_seen":1901,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/c0a6ae515f4d245d.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"42e2ea745a52c479ce79b9fadf7f2ed9","sha1":"0cf08999016475d70bf072b7878daea0244184e3","sha256":"2746264358bea944d3523f9c66585147897903d73b7b42e0bfd599f2492e3315","sha512":"cf4f42621c9615fcfc08b325ce391ff9e3af8b94fe80c1e4118eb1e52ca88e0b0409d0c36bc96f50a26ac3ea232630521e1a8077e10d05438f3b7fb8ebc266a9","ssdeep":"","tlshash":"af7165f0a702b23409ea41de5079c778b53d3658512e9420d1badc7f626cd8964b2ef3","size":3649,"data":"","first_seen":"2026-06-13T02:21:16.197988Z","last_seen":"2026-08-11T04:47:30.097724Z","times_seen":1896,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/4815a758657d4bae.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"9b4f6d29f92ea43b7c7ef4770fbed76a","sha1":"bdad2044ced7e4c0208e62e5650f99140e88aeb6","sha256":"6fb06a5d29509dddf687974e467d8274ef9ef0f6bec7c841fd8336543c9a3f74","sha512":"06ec26c380efdf73315dfc21639732033b79b7869acaed6d4a6697c4d441500bb21f57311b543ee176e2b31b775cff20bc5e611dfff3cca3a3a5c30c8338262f","ssdeep":"1536:UIYGGTQpo7UFYEpzussak11xgaAF+j/G7qWF:UIYGKO+UFZaJgaUt7/","tlshash":"f023d4c971e5b4900bb395b1803f000bf23e1d76185d98a0d3a2dde9b8b45aed233f99","size":49883,"data":"","first_seen":"2026-06-13T02:21:16.211868Z","last_seen":"2026-08-11T04:47:30.060041Z","times_seen":1896,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/js/jquery-3.2.1.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"c9f5aeeca3ad37bf2aa006139b935f0a","sha1":"1055018c28ab41087ef9ccefe411606893dabea2","sha256":"87083882cc6015984eb0411a99d3981817f5dc5c90ba24f0940420c5548d82de","sha512":"dcff2b5c2b8625d3593a7531ff4ddcd633939cc9f7acfeb79c18a9e6038fdaa99487960075502f159d44f902d965b0b5aed32b41bfa66a1dc07d85b5d5152b58","ssdeep":"1536:YNhEyjjTikEJO4edXXe9J578go6MWX2xkj8e4c4j2ll2AckaXEP6n15HZ+FhFcQ7:uxc2yjx4j2uX/kcQDU8Cu9","tlshash":"4483e6d9b2c67062977730b950bf410bb17a98dab44c8c60f158d9d47eb8a8d907bf2c","size":86659,"data":"","first_seen":"2023-03-07T01:02:00Z","last_seen":"2026-08-11T08:00:30.424198Z","times_seen":99355,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.slideanims.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"4c8034d4830f59a65ef5921055a81840","sha1":"d55e6bd293ef939f32a440ca534ecfcf9185dad4","sha256":"f0c949d41d22c4659526d0f6a2189cf5c3372a9fe521a83ec266e06fecedd862","sha512":"f915968436d636ef5577933fab703b157e75db56cb5381091e8018462e5dc16173717393baf5d873568d22939b0399c447f98837eaf44d4f5e7b024a56e50c0b","ssdeep":"384:r1E6s5Onvzy40Islk/5E7063vCB41b0zoSFahq1i42s43AxgkNvr0dxucMd3J:kIslkxE77vAzo2kVwP","tlshash":"4ad2dbebaa665c6250432142c3b98d192138cd72fd23aeda33d690f506c305d36eafd6","size":28418,"data":"","first_seen":"2023-03-07T01:06:58Z","last_seen":"2026-08-09T08:42:12.864106Z","times_seen":816,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.gtranslate.net/widgets/latest/float.js","fqdn":"cdn.gtranslate.net","domain":"gtranslate.net","tld":"net"},"ip":{"addr":"104.26.13.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"68ee10aa7ede43f8bb3293b220daf775","sha1":"1f26a636577ea9aaa524c0a23ae8cf342be925e9","sha256":"76e28fc0425d80422e45305464ada45c7c9b4a00132c65012c737c22814c259f","sha512":"531d2baf5f4d61c0def2c5f45fd8d9b69b143c24d0474a01291d858b086b45c233d1cca885cc722d6e6eaff3f8cb62e637df797beca8f5aec20d090f0e23fe08","ssdeep":"384:UzCKMPZATN09o0mtvwfEXMb5TZ/dDszCnfYI:UVMhAh060svwcX0T1dhh","tlshash":"10a2c62921b3003a49531265efff165c607a02b78004ec24bfaeddc2dfd59a9caa77d5","size":23138,"data":"","first_seen":"2026-05-06T20:53:53.345523Z","last_seen":"2026-08-11T04:45:48.823607Z","times_seen":2294,"alerts":{"ids":null,"analyzer":null,"urlquery":null}}],"eval":null,"write":null,"console":[{"level":"warn","text":"[CoingeckoCoinPriceMarqueeWidget] This widget is deprecated and is no longer maintained. Please visit https://www.coingecko.com/widgets to get the new version of this widget, which features a new design and better performance!","filename":"https://widgets.coingecko.com/coingecko-coin-price-marquee-widget.js","line_number":7,"column_number":63396}]},"http":[{"url":{"schema":"https","addr":"scromegatrade.com/image/new/about_laptopa.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.337Z","timestamp":1785143908337,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/new/about_laptopa.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"widget.coinlib.io/widget?type=converter\u0026theme=light","fqdn":"widget.coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.491Z","timestamp":1785143926491,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /widget?type=converter\u0026theme=light HTTP/1.1\r\nHost: widget.coinlib.io\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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 301 \r\ncontent-type: text/html; charset=UTF-8\r\nserver-timing: cfEdge;dur=10,cfOrigin;dur=0, cfExtPri\r\nlocation: https://coinlib.io/widget?type=converter\u0026theme=light\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Y5pzOBBjaZgMJi3UCeA5iwgE2%2Bjk126GsllERQaXbLgacgtLWP2kd9Z1%2FdI8vUDR2lQeSyPKujLX0l46BC2FpBdlKKHw8O8oyaVnSF2KhrPeJcm2UX4q7mgcbEGYCApQ0Td1MA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\npriority: u=4,i=?0\r\nserver: cloudflare\r\ncf-ray: a21a8f04a90b0b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\n\r\n","headers":null,"cookies":null,"status_code":"301","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":"text/html; charset=utf-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-11T07:57:31.65745Z","times_seen":17832625,"resource_available":true,"data":null}},"time_used":31,"timings":{"blocked":0,"dns":3,"connect":13,"send":0,"wait":15,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coin-images.coingecko.com/coins/images/1/large/bitcoin.png?1696501400","fqdn":"coin-images.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.795Z","timestamp":1785143926795,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /coins/images/1/large/bitcoin.png?1696501400 HTTP/1.1\r\nHost: coin-images.coingecko.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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\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-11T07:57:31.65745Z","times_seen":17832625,"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":"scromegatrade.com/vendors/revolution/assets/loader.gif","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.804Z","timestamp":1785143926804,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /vendors/revolution/assets/loader.gif HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/vendors/revolution/css/settings.css\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/css/bootstrap.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.080Z","timestamp":1785143908080,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /css/bootstrap.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:30 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"26de2-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 21269\r\nKeep-Alive: timeout=5, max=99\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":159202,"size_decoded":21632,"mime_type":"text/css","magic":"ASCII text","md5":"c9919db426ef5de42afc3b68a64b0106","sha1":"76343abe85ffb6e21684f638f5872f52c05e4701","sha256":"6d0368426014fa38c4007e89457dfbf086c336740f90bb79c964711e7df25181","sha512":"53064f548a062175eb5d6666ca3204c7ca0806cc467175551bab6c541781c3754267631a36963fb6246e91656b8ba30486019353dde087305d8fb7af6bfbe405","ssdeep":"1536:Dv5Us2nU2qq5UHh1XEoFUI9CgUe+gzjz+GxzNxopV2ONkSOl5G2llGXghdpia/BU:Dicq5UfW2HfzDL4iDF4n","tlshash":"c1f34359fdf11508302b915c65d6f7e57b6c8087c60edeba7aeb2224cf493c18db2988","first_seen":"2023-04-12T10:14:18Z","last_seen":"2026-08-06T06:09:10.725185Z","times_seen":207,"resource_available":false,"data":"LyohCiAqIEJvb3RzdHJhcCB2NC4wLjAtYmV0YS4yIChodHRwczovL2dldGJvb3RzdHJhcC5jb20pCiAqIENvcHlyaWdodCAyMDExLTIwMTcgVGhlIEJvb3RzdHJhcCBBdXRob3JzCiAqIENvcHlyaWdodCAyMDExLTIwMTcgVHdpdHRlciwgSW5jLgogKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKQogKi8KOnJvb3QgewogIC0tYmx1ZTogIzAwN2JmZjsKICAtLWluZGlnbzogIzY2MTBmMjsKICAtLXB1cnBsZTogIzZmNDJjMTsKICAtLXBpbms6ICNlODNlOGM7CiAgLS1yZWQ6ICNkYzM1NDU7CiAgLS1vcmFuZ2U6ICNmZDdlMTQ7CiAgLS15ZWxsb3c6ICNmZmMxMDc7CiAgLS1ncmVlbjogIzI4YTc0NTsKICAtLXRlYWw6ICMyMGM5OTc7CiAgLS1jeWFuOiAjMTdhMmI4OwogIC0td2hpdGU6ICNmZmY7CiAgLS1ncmF5OiAjODY4ZTk2OwogIC0tZ3JheS1kYXJrOiAjMzQzYTQwOwogIC0tcHJpbWFyeTogIzAwN2JmZjsKICAtLXNlY29uZGFyeTogIzg2OGU5NjsKICAtLXN1Y2Nlc3M6ICMyOGE3NDU7CiAgLS1pbmZvOiAjMTdhMmI4OwogIC0td2FybmluZzogI2ZmYzEwNzsKICAtLWRhbmdlcjogI2RjMzU0NTsKICAtLWxpZ2h0OiAjZjhmOWZhOwogIC0tZGFyazogIzM0M2E0MDsKICAtLWJyZWFrcG9pbnQteHM6IDA7CiAgLS1icmVha3BvaW50LXNtOiA1NzZweDsKICAtLWJyZWFrcG9pbnQtbWQ6IDc2OHB4OwogIC0tYnJlYWtwb2ludC1sZzogOTkycHg7CiAgLS1icmVha3BvaW50LXhsOiAxMjAwcHg7CiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICJTZWdvZSBVSSIsIFJvYm90bywgIkhlbHZldGljYSBOZXVlIiwgQXJpYWwsIHNhbnMtc2VyaWYsICJBcHBsZSBDb2xvciBFbW9qaSIsICJTZWdvZSBVSSBFbW9qaSIsICJTZWdvZSBVSSBTeW1ib2wiOwogIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiAiU0ZNb25vLVJlZ3VsYXIiLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgIkxpYmVyYXRpb24gTW9ubyIsICJDb3VyaWVyIE5ldyIsIG1vbm9zcGFjZTsKfQoKQG1lZGlhIHByaW50IHsKICAqLAogICo6OmJlZm9yZSwKICAqOjphZnRlciB7CiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OwogICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OwogIH0KICBhLAogIGE6dmlzaXRlZCB7CiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsKICB9CiAgYWJiclt0aXRsZV06OmFmdGVyIHsKICAgIGNvbnRlbnQ6ICIgKCIgYXR0cih0aXRsZSkgIikiOwogIH0KICBwcmUgewogICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7CiAgfQogIHByZSwKICBibG9ja3F1b3RlIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7CiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7CiAgfQogIHRoZWFkIHsKICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsKICB9CiAgdHIsCiAgaW1nIHsKICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsKICB9CiAgcCwKICBoMiwKICBoMyB7CiAgICBvcnBoYW5zOiAzOwogICAgd2lkb3dzOiAzOwogIH0KICBoMiwKICBoMyB7CiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsKICB9CiAgLm5hdmJhciB7CiAgICBkaXNwbGF5OiBub25lOwogIH0KICAuYmFkZ2UgewogICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDsKICB9CiAgLnRhYmxlIHsKICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDsKICB9CiAgLnRhYmxlIHRkLAogIC50YWJsZSB0aCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7CiAgfQogIC50YWJsZS1ib3JkZXJlZCB0aCwKICAudGFibGUtYm9yZGVyZWQgdGQgewogICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50OwogIH0KfQoKKiwKKjo6YmVmb3JlLAoqOjphZnRlciB7CiAgYm94LXNpemluZzogYm9yZGVyLWJveDsKfQoKaHRtbCB7CiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7CiAgbGluZS1oZWlnaHQ6IDEuMTU7CiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOwogIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOwogIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyOwogIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCkAtbXMtdmlld3BvcnQgewogIHdpZHRoOiBkZXZpY2Utd2lkdGg7Cn0KCmFydGljbGUsIGFzaWRlLCBkaWFsb2csIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHsKICBkaXNwbGF5OiBibG9jazsKfQoKYm9keSB7CiAgbWFyZ2luOiAwOwogIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICJTZWdvZSBVSSIsIFJvYm90bywgIkhlbHZldGljYSBOZXVlIiwgQXJpYWwsIHNhbnMtc2VyaWYsICJBcHBsZSBDb2xvciBFbW9qaSIsICJTZWdvZSBVSSBFbW9qaSIsICJTZWdvZSBVSSBTeW1ib2wiOwogIGZvbnQtc2l6ZTogMXJlbTsKICBmb250LXdlaWdodDogNDAwOwogIGxpbmUtaGVpZ2h0OiAxLjU7CiAgY29sb3I6ICMyMTI1Mjk7CiAgdGV4dC1hbGlnbjogbGVmdDsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwp9CgpbdGFiaW5kZXg9Ii0xIl06Zm9jdXMgewogIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDsKfQoKaHIgewogIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OwogIGhlaWdodDogMDsKICBvdmVyZmxvdzogdmlzaWJsZTsKfQoKaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7CiAgbWFyZ2luLXRvcDogMDsKICBtYXJnaW4tYm90dG9tOiAwLjVyZW07Cn0KCnAgewogIG1hcmdpbi10b3A6IDA7CiAgbWFyZ2luLWJvdHRvbTogMXJlbTsKfQoKYWJiclt0aXRsZV0sCmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0gewogIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOwogICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOwogIGN1cnNvcjogaGVscDsKICBib3JkZXItYm90dG9tOiAwOwp9CgphZGRyZXNzIHsKICBtYXJnaW4tYm90dG9tOiAxcmVtOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBsaW5lLWhlaWdodDogaW5oZXJpdDsKfQoKb2wsCnVsLApkbCB7CiAgbWFyZ2luLXRvcDogMDsKICBtYXJnaW4tYm90dG9tOiAxcmVtOwp9CgpvbCBvbCwKdWwgdWwsCm9sIHVsLAp1bCBvbCB7CiAgbWFyZ2luLWJvdHRvbTogMDsKfQoKZHQgewogIGZvbnQtd2VpZ2h0OiA3MDA7Cn0KCmRkIHsKICBtYXJnaW4tYm90dG9tOiAuNXJlbTsKICBtYXJnaW4tbGVmdDogMDsKfQoKYmxvY2txdW90ZSB7CiAgbWFyZ2luOiAwIDAgMXJlbTsKfQoKZGZuIHsKICBmb250LXN0eWxlOiBpdGFsaWM7Cn0KCmIsCnN0cm9uZyB7CiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsKfQoKc21hbGwgewogIGZvbnQtc2l6ZTogODAlOwp9CgpzdWIsCnN1cCB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGZvbnQtc2l6ZTogNzUlOwogIGxpbmUtaGVpZ2h0OiAwOwogIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsKfQoKc3ViIHsKICBib3R0b206IC0uMjVlbTsKfQoKc3VwIHsKICB0b3A6IC0uNWVtOwp9CgphIHsKICBjb2xvcjogIzAwN2JmZjsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsKfQoKYTpob3ZlciB7CiAgY29sb3I6ICMwMDU2YjM7CiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7Cn0KCmE6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pIHsKICBjb2xvcjogaW5oZXJpdDsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7Cn0KCmE6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pOmZvY3VzLCBhOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKTpob3ZlciB7CiAgY29sb3I6IGluaGVyaXQ7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwp9CgphOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKTpmb2N1cyB7CiAgb3V0bGluZTogMDsKfQoKcHJlLApjb2RlLAprYmQsCnNhbXAgewogIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsKICBmb250LXNpemU6IDFlbTsKfQoKcHJlIHsKICBtYXJnaW4tdG9wOiAwOwogIG1hcmdpbi1ib3R0b206IDFyZW07CiAgb3ZlcmZsb3c6IGF1dG87CiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7Cn0KCmZpZ3VyZSB7CiAgbWFyZ2luOiAwIDAgMXJlbTsKfQoKaW1nIHsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIGJvcmRlci1zdHlsZTogbm9uZTsKfQoKc3ZnOm5vdCg6cm9vdCkgewogIG92ZXJmbG93OiBoaWRkZW47Cn0KCmEsCmFyZWEsCmJ1dHRvbiwKW3JvbGU9ImJ1dHRvbiJdLAppbnB1dDpub3QoW3R5cGU9InJhbmdlIl0pLApsYWJlbCwKc2VsZWN0LApzdW1tYXJ5LAp0ZXh0YXJlYSB7CiAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOwogICAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjsKfQoKdGFibGUgewogIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7Cn0KCmNhcHRpb24gewogIHBhZGRpbmctdG9wOiAwLjc1cmVtOwogIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtOwogIGNvbG9yOiAjODY4ZTk2OwogIHRleHQtYWxpZ246IGxlZnQ7CiAgY2FwdGlvbi1zaWRlOiBib3R0b207Cn0KCnRoIHsKICB0ZXh0LWFsaWduOiBpbmhlcml0Owp9CgpsYWJlbCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIG1hcmdpbi1ib3R0b206IC41cmVtOwp9CgpidXR0b24gewogIGJvcmRlci1yYWRpdXM6IDA7Cn0KCmJ1dHRvbjpmb2N1cyB7CiAgb3V0bGluZTogMXB4IGRvdHRlZDsKICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7Cn0KCmlucHV0LApidXR0b24sCnNlbGVjdCwKb3B0Z3JvdXAsCnRleHRhcmVhIHsKICBtYXJnaW46IDA7CiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7CiAgZm9udC1zaXplOiBpbmhlcml0OwogIGxpbmUtaGVpZ2h0OiBpbmhlcml0Owp9CgpidXR0b24sCmlucHV0IHsKICBvdmVyZmxvdzogdmlzaWJsZTsKfQoKYnV0dG9uLApzZWxlY3QgewogIHRleHQtdHJhbnNmb3JtOiBub25lOwp9CgpidXR0b24sCmh0bWwgW3R5cGU9ImJ1dHRvbiJdLApbdHlwZT0icmVzZXQiXSwKW3R5cGU9InN1Ym1pdCJdIHsKICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsKfQoKYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLApbdHlwZT0iYnV0dG9uIl06Oi1tb3otZm9jdXMtaW5uZXIsClt0eXBlPSJyZXNldCJdOjotbW96LWZvY3VzLWlubmVyLApbdHlwZT0ic3VibWl0Il06Oi1tb3otZm9jdXMtaW5uZXIgewogIHBhZGRpbmc6IDA7CiAgYm9yZGVyLXN0eWxlOiBub25lOwp9CgppbnB1dFt0eXBlPSJyYWRpbyJdLAppbnB1dFt0eXBlPSJjaGVja2JveCJdIHsKICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIHBhZGRpbmc6IDA7Cn0KCmlucHV0W3R5cGU9ImRhdGUiXSwKaW5wdXRbdHlwZT0idGltZSJdLAppbnB1dFt0eXBlPSJkYXRldGltZS1sb2NhbCJdLAppbnB1dFt0eXBlPSJtb250aCJdIHsKICAtd2Via2l0LWFwcGVhcmFuY2U6IGxpc3Rib3g7Cn0KCnRleHRhcmVhIHsKICBvdmVyZmxvdzogYXV0bzsKICByZXNpemU6IHZlcnRpY2FsOwp9CgpmaWVsZHNldCB7CiAgbWluLXdpZHRoOiAwOwogIHBhZGRpbmc6IDA7CiAgbWFyZ2luOiAwOwogIGJvcmRlcjogMDsKfQoKbGVnZW5kIHsKICBkaXNwbGF5OiBibG9jazsKICB3aWR0aDogMTAwJTsKICBtYXgtd2lkdGg6IDEwMCU7CiAgcGFkZGluZzogMDsKICBtYXJnaW4tYm90dG9tOiAuNXJlbTsKICBmb250LXNpemU6IDEuNXJlbTsKICBsaW5lLWhlaWdodDogaW5oZXJpdDsKICBjb2xvcjogaW5oZXJpdDsKICB3aGl0ZS1zcGFjZTogbm9ybWFsOwp9Cgpwcm9ncmVzcyB7CiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOwp9CgpbdHlwZT0ibnVtYmVyIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sClt0eXBlPSJudW1iZXIiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7CiAgaGVpZ2h0OiBhdXRvOwp9CgpbdHlwZT0ic2VhcmNoIl0gewogIG91dGxpbmUtb2Zmc2V0OiAtMnB4OwogIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsKfQoKW3R5cGU9InNlYXJjaCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLApbdHlwZT0ic2VhcmNoIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24gewogIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsKfQoKOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7CiAgZm9udDogaW5oZXJpdDsKICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsKfQoKb3V0cHV0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cn0KCnN1bW1hcnkgewogIGRpc3BsYXk6IGxpc3QtaXRlbTsKfQoKdGVtcGxhdGUgewogIGRpc3BsYXk6IG5vbmU7Cn0KCltoaWRkZW5dIHsKICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7Cn0KCmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsCi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYgewogIG1hcmdpbi1ib3R0b206IDAuNXJlbTsKICBmb250LWZhbWlseTogaW5oZXJpdDsKICBmb250LXdlaWdodDogNTAwOwogIGxpbmUtaGVpZ2h0OiAxLjI7CiAgY29sb3I6IGluaGVyaXQ7Cn0KCmgxLCAuaDEgewogIGZvbnQtc2l6ZTogMi41cmVtOwp9CgpoMiwgLmgyIHsKICBmb250LXNpemU6IDJyZW07Cn0KCmgzLCAuaDMgewogIGZvbnQtc2l6ZTogMS43NXJlbTsKfQoKaDQsIC5oNCB7CiAgZm9udC1zaXplOiAxLjVyZW07Cn0KCmg1LCAuaDUgewogIGZvbnQtc2l6ZTogMS4yNXJlbTsKfQoKaDYsIC5oNiB7CiAgZm9udC1zaXplOiAxcmVtOwp9CgoubGVhZCB7CiAgZm9udC1zaXplOiAxLjI1cmVtOwogIGZvbnQtd2VpZ2h0OiAzMDA7Cn0KCi5kaXNwbGF5LTEgewogIGZvbnQtc2l6ZTogNnJlbTsKICBmb250LXdlaWdodDogMzAwOwogIGxpbmUtaGVpZ2h0OiAxLjI7Cn0KCi5kaXNwbGF5LTIgewogIGZvbnQtc2l6ZTogNS41cmVtOwogIGZvbnQtd2VpZ2h0OiAzMDA7CiAgbGluZS1oZWlnaHQ6IDEuMjsKfQoKLmRpc3BsYXktMyB7CiAgZm9udC1zaXplOiA0LjVyZW07CiAgZm9udC13ZWlnaHQ6IDMwMDsKICBsaW5lLWhlaWdodDogMS4yOwp9CgouZGlzcGxheS00IHsKICBmb250LXNpemU6IDMuNXJlbTsKICBmb250LXdlaWdodDogMzAwOwogIGxpbmUtaGVpZ2h0OiAxLjI7Cn0KCmhyIHsKICBtYXJnaW4tdG9wOiAxcmVtOwogIG1hcmdpbi1ib3R0b206IDFyZW07CiAgYm9yZGVyOiAwOwogIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7Cn0KCnNtYWxsLAouc21hbGwgewogIGZvbnQtc2l6ZTogODAlOwogIGZvbnQtd2VpZ2h0OiA0MDA7Cn0KCm1hcmssCi5tYXJrIHsKICBwYWRkaW5nOiAwLjJlbTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzOwp9CgoubGlzdC11bnN0eWxlZCB7CiAgcGFkZGluZy1sZWZ0OiAwOwogIGxpc3Qtc3R5bGU6IG5vbmU7Cn0KCi5saXN0LWlubGluZSB7CiAgcGFkZGluZy1sZWZ0OiAwOwogIGxpc3Qtc3R5bGU6IG5vbmU7Cn0KCi5saXN0LWlubGluZS1pdGVtIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cn0KCi5saXN0LWlubGluZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkgewogIG1hcmdpbi1yaWdodDogNXB4Owp9CgouaW5pdGlhbGlzbSB7CiAgZm9udC1zaXplOiA5MCU7CiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKfQoKLmJsb2NrcXVvdGUgewogIG1hcmdpbi1ib3R0b206IDFyZW07CiAgZm9udC1zaXplOiAxLjI1cmVtOwp9CgouYmxvY2txdW90ZS1mb290ZXIgewogIGRpc3BsYXk6IGJsb2NrOwogIGZvbnQtc2l6ZTogODAlOwogIGNvbG9yOiAjODY4ZTk2Owp9CgouYmxvY2txdW90ZS1mb290ZXI6OmJlZm9yZSB7CiAgY29udGVudDogIlwyMDE0IFwwMEEwIjsKfQoKLmltZy1mbHVpZCB7CiAgbWF4LXdpZHRoOiAxMDAlOwogIGhlaWdodDogYXV0bzsKfQoKLmltZy10aHVtYm5haWwgewogIHBhZGRpbmc6IDAuMjVyZW07CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICBib3JkZXI6IDFweCBzb2xpZCAjZGRkOwogIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07CiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7CiAgbWF4LXdpZHRoOiAxMDAlOwogIGhlaWdodDogYXV0bzsKfQoKLmZpZ3VyZSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwp9CgouZmlndXJlLWltZyB7CiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOwogIGxpbmUtaGVpZ2h0OiAxOwp9CgouZmlndXJlLWNhcHRpb24gewogIGZvbnQtc2l6ZTogOTAlOwogIGNvbG9yOiAjODY4ZTk2Owp9Cgpjb2RlLAprYmQsCnByZSwKc2FtcCB7CiAgZm9udC1mYW1pbHk6ICJTRk1vbm8tUmVndWxhciIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCAiTGliZXJhdGlvbiBNb25vIiwgIkNvdXJpZXIgTmV3IiwgbW9ub3NwYWNlOwp9Cgpjb2RlIHsKICBwYWRkaW5nOiAwLjJyZW0gMC40cmVtOwogIGZvbnQtc2l6ZTogOTAlOwogIGNvbG9yOiAjYmQ0MTQ3OwogIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7CiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTsKfQoKYSA+IGNvZGUgewogIHBhZGRpbmc6IDA7CiAgY29sb3I6IGluaGVyaXQ7CiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsKfQoKa2JkIHsKICBwYWRkaW5nOiAwLjJyZW0gMC40cmVtOwogIGZvbnQtc2l6ZTogOTAlOwogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMyMTI1Mjk7CiAgYm9yZGVyLXJhZGl1czogMC4ycmVtOwp9CgprYmQga2JkIHsKICBwYWRkaW5nOiAwOwogIGZvbnQtc2l6ZTogMTAwJTsKICBmb250LXdlaWdodDogNzAwOwp9CgpwcmUgewogIGRpc3BsYXk6IGJsb2NrOwogIG1hcmdpbi10b3A6IDA7CiAgbWFyZ2luLWJvdHRvbTogMXJlbTsKICBmb250LXNpemU6IDkwJTsKICBjb2xvcjogIzIxMjUyOTsKfQoKcHJlIGNvZGUgewogIHBhZGRpbmc6IDA7CiAgZm9udC1zaXplOiBpbmhlcml0OwogIGNvbG9yOiBpbmhlcml0OwogIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogIGJvcmRlci1yYWRpdXM6IDA7Cn0KCi5wcmUtc2Nyb2xsYWJsZSB7CiAgbWF4LWhlaWdodDogMzQwcHg7CiAgb3ZlcmZsb3cteTogc2Nyb2xsOwp9CgouY29udGFpbmVyIHsKICB3aWR0aDogMTAwJTsKICBwYWRkaW5nLXJpZ2h0OiAxNXB4OwogIHBhZGRpbmctbGVmdDogMTVweDsKICBtYXJnaW4tcmlnaHQ6IGF1dG87CiAgbWFyZ2luLWxlZnQ6IGF1dG87Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgewogIC5jb250YWluZXIgewogICAgbWF4LXdpZHRoOiA1NDBweDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgewogIC5jb250YWluZXIgewogICAgbWF4LXdpZHRoOiA3MjBweDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgewogIC5jb250YWluZXIgewogICAgbWF4LXdpZHRoOiA5NjBweDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHsKICAuY29udGFpbmVyIHsKICAgIG1heC13aWR0aDogMTE0MHB4OwogIH0KfQoKLmNvbnRhaW5lci1mbHVpZCB7CiAgd2lkdGg6IDEwMCU7CiAgcGFkZGluZy1yaWdodDogMTVweDsKICBwYWRkaW5nLWxlZnQ6IDE1cHg7CiAgbWFyZ2luLXJpZ2h0OiBhdXRvOwogIG1hcmdpbi1sZWZ0OiBhdXRvOwp9Cgoucm93IHsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4OwogIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICAgIGZsZXgtd3JhcDogd3JhcDsKICBtYXJnaW4tcmlnaHQ6IC0xNXB4OwogIG1hcmdpbi1sZWZ0OiAtMTVweDsKfQoKLm5vLWd1dHRlcnMgewogIG1hcmdpbi1yaWdodDogMDsKICBtYXJnaW4tbGVmdDogMDsKfQoKLm5vLWd1dHRlcnMgPiAuY29sLAoubm8tZ3V0dGVycyA+IFtjbGFzcyo9ImNvbC0iXSB7CiAgcGFkZGluZy1yaWdodDogMDsKICBwYWRkaW5nLWxlZnQ6IDA7Cn0KCi5jb2wtMSwgLmNvbC0yLCAuY29sLTMsIC5jb2wtNCwgLmNvbC01LCAuY29sLTYsIC5jb2wtNywgLmNvbC04LCAuY29sLTksIC5jb2wtMTAsIC5jb2wtMTEsIC5jb2wtMTIsIC5jb2wsCi5jb2wtYXV0bywgLmNvbC1zbS0xLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS0xMCwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMiwgLmNvbC1zbSwKLmNvbC1zbS1hdXRvLCAuY29sLW1kLTEsIC5jb2wtbWQtMiwgLmNvbC1tZC0zLCAuY29sLW1kLTQsIC5jb2wtbWQtNSwgLmNvbC1tZC02LCAuY29sLW1kLTcsIC5jb2wtbWQtOCwgLmNvbC1tZC05LCAuY29sLW1kLTEwLCAuY29sLW1kLTExLCAuY29sLW1kLTEyLCAuY29sLW1kLAouY29sLW1kLWF1dG8sIC5jb2wtbGctMSwgLmNvbC1sZy0yLCAuY29sLWxnLTMsIC5jb2wtbGctNCwgLmNvbC1sZy01LCAuY29sLWxnLTYsIC5jb2wtbGctNywgLmNvbC1sZy04LCAuY29sLWxnLTksIC5jb2wtbGctMTAsIC5jb2wtbGctMTEsIC5jb2wtbGctMTIsIC5jb2wtbGcsCi5jb2wtbGctYXV0bywgLmNvbC14bC0xLCAuY29sLXhsLTIsIC5jb2wteGwtMywgLmNvbC14bC00LCAuY29sLXhsLTUsIC5jb2wteGwtNiwgLmNvbC14bC03LCAuY29sLXhsLTgsIC5jb2wteGwtOSwgLmNvbC14bC0xMCwgLmNvbC14bC0xMSwgLmNvbC14bC0xMiwgLmNvbC14bCwKLmNvbC14bC1hdXRvIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgd2lkdGg6IDEwMCU7CiAgbWluLWhlaWdodDogMXB4OwogIHBhZGRpbmctcmlnaHQ6IDE1cHg7CiAgcGFkZGluZy1sZWZ0OiAxNXB4Owp9CgouY29sIHsKICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDsKICAgICAgZmxleC1iYXNpczogMDsKICAtbXMtZmxleC1wb3NpdGl2ZTogMTsKICAgICAgZmxleC1ncm93OiAxOwogIG1heC13aWR0aDogMTAwJTsKfQoKLmNvbC1hdXRvIHsKICAtbXMtZmxleDogMCAwIGF1dG87CiAgICAgIGZsZXg6IDAgMCBhdXRvOwogIHdpZHRoOiBhdXRvOwogIG1heC13aWR0aDogbm9uZTsKfQoKLmNvbC0xIHsKICAtbXMtZmxleDogMCAwIDguMzMzMzMzJTsKICAgICAgZmxleDogMCAwIDguMzMzMzMzJTsKICBtYXgtd2lkdGg6IDguMzMzMzMzJTsKfQoKLmNvbC0yIHsKICAtbXMtZmxleDogMCAwIDE2LjY2NjY2NyU7CiAgICAgIGZsZXg6IDAgMCAxNi42NjY2NjclOwogIG1heC13aWR0aDogMTYuNjY2NjY3JTsKfQoKLmNvbC0zIHsKICAtbXMtZmxleDogMCAwIDI1JTsKICAgICAgZmxleDogMCAwIDI1JTsKICBtYXgtd2lkdGg6IDI1JTsKfQoKLmNvbC00IHsKICAtbXMtZmxleDogMCAwIDMzLjMzMzMzMyU7CiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMlOwogIG1heC13aWR0aDogMzMuMzMzMzMzJTsKfQoKLmNvbC01IHsKICAtbXMtZmxleDogMCAwIDQxLjY2NjY2NyU7CiAgICAgIGZsZXg6IDAgMCA0MS42NjY2NjclOwogIG1heC13aWR0aDogNDEuNjY2NjY3JTsKfQoKLmNvbC02IHsKICAtbXMtZmxleDogMCAwIDUwJTsKICAgICAgZmxleDogMCAwIDUwJTsKICBtYXgtd2lkdGg6IDUwJTsKfQoKLmNvbC03IHsKICAtbXMtZmxleDogMCAwIDU4LjMzMzMzMyU7CiAgICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMlOwogIG1heC13aWR0aDogNTguMzMzMzMzJTsKfQoKLmNvbC04IHsKICAtbXMtZmxleDogMCAwIDY2LjY2NjY2NyU7CiAgICAgIGZsZXg6IDAgMCA2Ni42NjY2NjclOwogIG1heC13aWR0aDogNjYuNjY2NjY3JTsKfQoKLmNvbC05IHsKICAtbXMtZmxleDogMCAwIDc1JTsKICAgICAgZmxleDogMCAwIDc1JTsKICBtYXgtd2lkdGg6IDc1JTsKfQoKLmNvbC0xMCB7CiAgLW1zLWZsZXg6IDAgMCA4My4zMzMzMzMlOwogICAgICBmbGV4OiAwIDAgODMuMzMzMzMzJTsKICBtYXgtd2lkdGg6IDgzLjMzMzMzMyU7Cn0KCi5jb2wtMTEgewogIC1tcy1mbGV4OiAwIDAgOTEuNjY2NjY3JTsKICAgICAgZmxleDogMCAwIDkxLjY2NjY2NyU7CiAgbWF4LXdpZHRoOiA5MS42NjY2NjclOwp9CgouY29sLTEyIHsKICAtbXMtZmxleDogMCAwIDEwMCU7CiAgICAgIGZsZXg6IDAgMCAxMDAlOwogIG1heC13aWR0aDogMTAwJTsKfQoKLm9yZGVyLWZpcnN0IHsKICAtbXMtZmxleC1vcmRlcjogLTE7CiAgICAgIG9yZGVyOiAtMTsKfQoKLm9yZGVyLTEgewogIC1tcy1mbGV4LW9yZGVyOiAxOwogICAgICBvcmRlcjogMTsKfQoKLm9yZGVyLTIgewogIC1tcy1mbGV4LW9yZGVyOiAyOwogICAgICBvcmRlcjogMjsKfQoKLm9yZGVyLTMgewogIC1tcy1mbGV4LW9yZGVyOiAzOwogICAgICBvcmRlcjogMzsKfQoKLm9yZGVyLTQgewogIC1tcy1mbGV4LW9yZGVyOiA0OwogICAgICBvcmRlcjogNDsKfQoKLm9yZGVyLTUgewogIC1tcy1mbGV4LW9yZGVyOiA1OwogICAgICBvcmRlcjogNTsKfQoKLm9yZGVyLTYgewogIC1tcy1mbGV4LW9yZGVyOiA2OwogICAgICBvcmRlcjogNjsKfQoKLm9yZGVyLTcgewogIC1tcy1mbGV4LW9yZGVyOiA3OwogICAgICBvcmRlcjogNzsKfQoKLm9yZGVyLTggewogIC1tcy1mbGV4LW9yZGVyOiA4OwogICAgICBvcmRlcjogODsKfQoKLm9yZGVyLTkgewogIC1tcy1mbGV4LW9yZGVyOiA5OwogICAgICBvcmRlcjogOTsKfQoKLm9yZGVyLTEwIHsKICAtbXMtZmxleC1vcmRlcjogMTA7CiAgICAgIG9yZGVyOiAxMDsKfQoKLm9yZGVyLTExIHsKICAtbXMtZmxleC1vcmRlcjogMTE7CiAgICAgIG9yZGVyOiAxMTsKfQoKLm9yZGVyLTEyIHsKICAtbXMtZmxleC1vcmRlcjogMTI7CiAgICAgIG9yZGVyOiAxMjsKfQoKLm9mZnNldC0xIHsKICBtYXJnaW4tbGVmdDogOC4zMzMzMzMlOwp9Cgoub2Zmc2V0LTIgewogIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjclOwp9Cgoub2Zmc2V0LTMgewogIG1hcmdpbi1sZWZ0OiAyNSU7Cn0KCi5vZmZzZXQtNCB7CiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMyU7Cn0KCi5vZmZzZXQtNSB7CiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NyU7Cn0KCi5vZmZzZXQtNiB7CiAgbWFyZ2luLWxlZnQ6IDUwJTsKfQoKLm9mZnNldC03IHsKICBtYXJnaW4tbGVmdDogNTguMzMzMzMzJTsKfQoKLm9mZnNldC04IHsKICBtYXJnaW4tbGVmdDogNjYuNjY2NjY3JTsKfQoKLm9mZnNldC05IHsKICBtYXJnaW4tbGVmdDogNzUlOwp9Cgoub2Zmc2V0LTEwIHsKICBtYXJnaW4tbGVmdDogODMuMzMzMzMzJTsKfQoKLm9mZnNldC0xMSB7CiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NyU7Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgewogIC5jb2wtc20gewogICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDA7CiAgICAgICAgZmxleC1iYXNpczogMDsKICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAxOwogICAgICAgIGZsZXgtZ3JvdzogMTsKICAgIG1heC13aWR0aDogMTAwJTsKICB9CiAgLmNvbC1zbS1hdXRvIHsKICAgIC1tcy1mbGV4OiAwIDAgYXV0bzsKICAgICAgICBmbGV4OiAwIDAgYXV0bzsKICAgIHdpZHRoOiBhdXRvOwogICAgbWF4LXdpZHRoOiBub25lOwogIH0KICAuY29sLXNtLTEgewogICAgLW1zLWZsZXg6IDAgMCA4LjMzMzMzMyU7CiAgICAgICAgZmxleDogMCAwIDguMzMzMzMzJTsKICAgIG1heC13aWR0aDogOC4zMzMzMzMlOwogIH0KICAuY29sLXNtLTIgewogICAgLW1zLWZsZXg6IDAgMCAxNi42NjY2NjclOwogICAgICAgIGZsZXg6IDAgMCAxNi42NjY2NjclOwogICAgbWF4LXdpZHRoOiAxNi42NjY2NjclOwogIH0KICAuY29sLXNtLTMgewogICAgLW1zLWZsZXg6IDAgMCAyNSU7CiAgICAgICAgZmxleDogMCAwIDI1JTsKICAgIG1heC13aWR0aDogMjUlOwogIH0KICAuY29sLXNtLTQgewogICAgLW1zLWZsZXg6IDAgMCAzMy4zMzMzMzMlOwogICAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMlOwogICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMlOwogIH0KICAuY29sLXNtLTUgewogICAgLW1zLWZsZXg6IDAgMCA0MS42NjY2NjclOwogICAgICAgIGZsZXg6IDAgMCA0MS42NjY2NjclOwogICAgbWF4LXdpZHRoOiA0MS42NjY2NjclOwogIH0KICAuY29sLXNtLTYgewogICAgLW1zLWZsZXg6IDAgMCA1MCU7CiAgICAgICAgZmxleDogMCAwIDUwJTsKICAgIG1heC13aWR0aDogNTAlOwogIH0KICAuY29sLXNtLTcgewogICAgLW1zLWZsZXg6IDAgMCA1OC4zMzMzMzMlOwogICAgICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMlOwogICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMlOwogIH0KICAuY29sLXNtLTggewogICAgLW1zLWZsZXg6IDAgMCA2Ni42NjY2NjclOwogICAgICAgIGZsZXg6IDAgMCA2Ni42NjY2NjclOwogICAgbWF4LXdpZHRoOiA2Ni42NjY2NjclOwogIH0KICAuY29sLXNtLTkgewogICAgLW1zLWZsZXg6IDAgMCA3NSU7CiAgICAgICAgZmxleDogMCAwIDc1JTsKICAgIG1heC13aWR0aDogNzUlOwogIH0KICAuY29sLXNtLTEwIHsKICAgIC1tcy1mbGV4OiAwIDAgODMuMzMzMzMzJTsKICAgICAgICBmbGV4OiAwIDAgODMuMzMzMzMzJTsKICAgIG1heC13aWR0aDogODMuMzMzMzMzJTsKICB9CiAgLmNvbC1zbS0xMSB7CiAgICAtbXMtZmxleDogMCAwIDkxLjY2NjY2NyU7CiAgICAgICAgZmxleDogMCAwIDkxLjY2NjY2NyU7CiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NyU7CiAgfQogIC5jb2wtc20tMTIgewogICAgLW1zLWZsZXg6IDAgMCAxMDAlOwogICAgICAgIGZsZXg6IDAgMCAxMDAlOwogICAgbWF4LXdpZHRoOiAxMDAlOwogIH0KICAub3JkZXItc20tZmlyc3QgewogICAgLW1zLWZsZXgtb3JkZXI6IC0xOwogICAgICAgIG9yZGVyOiAtMTsKICB9CiAgLm9yZGVyLXNtLTEgewogICAgLW1zLWZsZXgtb3JkZXI6IDE7CiAgICAgICAgb3JkZXI6IDE7CiAgfQogIC5vcmRlci1zbS0yIHsKICAgIC1tcy1mbGV4LW9yZGVyOiAyOwogICAgICAgIG9yZGVyOiAyOwogIH0KICAub3JkZXItc20tMyB7CiAgICAtbXMtZmxleC1vcmRlcjogMzsKICAgICAgICBvcmRlcjogMzsKICB9CiAgLm9yZGVyLXNtLTQgewogICAgLW1zLWZsZXgtb3JkZXI6IDQ7CiAgICAgICAgb3JkZXI6IDQ7CiAgfQogIC5vcmRlci1zbS01IHsKICAgIC1tcy1mbGV4LW9yZGVyOiA1OwogICAgICAgIG9yZGVyOiA1OwogIH0KICAub3JkZXItc20tNiB7CiAgICAtbXMtZmxleC1vcmRlcjogNjsKICAgICAgICBvcmRlcjogNjsKICB9CiAgLm9yZGVyLXNtLTcgewogICAgLW1zLWZsZXgtb3JkZXI6IDc7CiAgICAgICAgb3JkZXI6IDc7CiAgfQogIC5vcmRlci1zbS04IHsKICAgIC1tcy1mbGV4LW9yZGVyOiA4OwogICAgICAgIG9yZGVyOiA4OwogIH0KICAub3JkZXItc20tOSB7CiAgICAtbXMtZmxleC1vcmRlcjogOTsKICAgICAgICBvcmRlcjogOTsKICB9CiAgLm9yZGVyLXNtLTEwIHsKICAgIC1tcy1mbGV4LW9yZGVyOiAxMDsKICAgICAgICBvcmRlcjogMTA7CiAgfQogIC5vcmRlci1zbS0xMSB7CiAgICAtbXMtZmxleC1vcmRlcjogMTE7CiAgICAgICAgb3JkZXI6IDExOwogIH0KICAub3JkZXItc20tMTIgewogICAgLW1zLWZsZXgtb3JkZXI6IDEyOwogICAgICAgIG9yZGVyOiAxMjsKICB9CiAgLm9mZnNldC1zbS0wIHsKICAgIG1hcmdpbi1sZWZ0OiAwOwogIH0KICAub2Zmc2V0LXNtLTEgewogICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzJTsKICB9CiAgLm9mZnNldC1zbS0yIHsKICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjclOwogIH0KICAub2Zmc2V0LXNtLTMgewogICAgbWFyZ2luLWxlZnQ6IDI1JTsKICB9CiAgLm9mZnNldC1zbS00IHsKICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMlOwogIH0KICAub2Zmc2V0LXNtLTUgewogICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NyU7CiAgfQogIC5vZmZzZXQtc20tNiB7CiAgICBtYXJnaW4tbGVmdDogNTAlOwogIH0KICAub2Zmc2V0LXNtLTcgewogICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMyU7CiAgfQogIC5vZmZzZXQtc20tOCB7CiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY3JTsKICB9CiAgLm9mZnNldC1zbS05IHsKICAgIG1hcmdpbi1sZWZ0OiA3NSU7CiAgfQogIC5vZmZzZXQtc20tMTAgewogICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMyU7CiAgfQogIC5vZmZzZXQtc20tMTEgewogICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NyU7CiAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHsKICAuY29sLW1kIHsKICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAwOwogICAgICAgIGZsZXgtYmFzaXM6IDA7CiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTsKICAgICAgICBmbGV4LWdyb3c6IDE7CiAgICBtYXgtd2lkdGg6IDEwMCU7CiAgfQogIC5jb2wtbWQtYXV0byB7CiAgICAtbXMtZmxleDogMCAwIGF1dG87CiAgICAgICAgZmxleDogMCAwIGF1dG87CiAgICB3aWR0aDogYXV0bzsKICAgIG1heC13aWR0aDogbm9uZTsKICB9CiAgLmNvbC1tZC0xIHsKICAgIC1tcy1mbGV4OiAwIDAgOC4zMzMzMzMlOwogICAgICAgIGZsZXg6IDAgMCA4LjMzMzMzMyU7CiAgICBtYXgtd2lkdGg6IDguMzMzMzMzJTsKICB9CiAgLmNvbC1tZC0yIHsKICAgIC1tcy1mbGV4OiAwIDAgMTYuNjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTsKICAgIG1heC13aWR0aDogMTYuNjY2NjY3JTsKICB9CiAgLmNvbC1tZC0zIHsKICAgIC1tcy1mbGV4OiAwIDAgMjUlOwogICAgICAgIGZsZXg6IDAgMCAyNSU7CiAgICBtYXgtd2lkdGg6IDI1JTsKICB9CiAgLmNvbC1tZC00IHsKICAgIC1tcy1mbGV4OiAwIDAgMzMuMzMzMzMzJTsKICAgICAgICBmbGV4OiAwIDAgMzMuMzMzMzMzJTsKICAgIG1heC13aWR0aDogMzMuMzMzMzMzJTsKICB9CiAgLmNvbC1tZC01IHsKICAgIC1tcy1mbGV4OiAwIDAgNDEuNjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgNDEuNjY2NjY3JTsKICAgIG1heC13aWR0aDogNDEuNjY2NjY3JTsKICB9CiAgLmNvbC1tZC02IHsKICAgIC1tcy1mbGV4OiAwIDAgNTAlOwogICAgICAgIGZsZXg6IDAgMCA1MCU7CiAgICBtYXgtd2lkdGg6IDUwJTsKICB9CiAgLmNvbC1tZC03IHsKICAgIC1tcy1mbGV4OiAwIDAgNTguMzMzMzMzJTsKICAgICAgICBmbGV4OiAwIDAgNTguMzMzMzMzJTsKICAgIG1heC13aWR0aDogNTguMzMzMzMzJTsKICB9CiAgLmNvbC1tZC04IHsKICAgIC1tcy1mbGV4OiAwIDAgNjYuNjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgNjYuNjY2NjY3JTsKICAgIG1heC13aWR0aDogNjYuNjY2NjY3JTsKICB9CiAgLmNvbC1tZC05IHsKICAgIC1tcy1mbGV4OiAwIDAgNzUlOwogICAgICAgIGZsZXg6IDAgMCA3NSU7CiAgICBtYXgtd2lkdGg6IDc1JTsKICB9CiAgLmNvbC1tZC0xMCB7CiAgICAtbXMtZmxleDogMCAwIDgzLjMzMzMzMyU7CiAgICAgICAgZmxleDogMCAwIDgzLjMzMzMzMyU7CiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMyU7CiAgfQogIC5jb2wtbWQtMTEgewogICAgLW1zLWZsZXg6IDAgMCA5MS42NjY2NjclOwogICAgICAgIGZsZXg6IDAgMCA5MS42NjY2NjclOwogICAgbWF4LXdpZHRoOiA5MS42NjY2NjclOwogIH0KICAuY29sLW1kLTEyIHsKICAgIC1tcy1mbGV4OiAwIDAgMTAwJTsKICAgICAgICBmbGV4OiAwIDAgMTAwJTsKICAgIG1heC13aWR0aDogMTAwJTsKICB9CiAgLm9yZGVyLW1kLWZpcnN0IHsKICAgIC1tcy1mbGV4LW9yZGVyOiAtMTsKICAgICAgICBvcmRlcjogLTE7CiAgfQogIC5vcmRlci1tZC0xIHsKICAgIC1tcy1mbGV4LW9yZGVyOiAxOwogICAgICAgIG9yZGVyOiAxOwogIH0KICAub3JkZXItbWQtMiB7CiAgICAtbXMtZmxleC1vcmRlcjogMjsKICAgICAgICBvcmRlcjogMjsKICB9CiAgLm9yZGVyLW1kLTMgewogICAgLW1zLWZsZXgtb3JkZXI6IDM7CiAgICAgICAgb3JkZXI6IDM7CiAgfQogIC5vcmRlci1tZC00IHsKICAgIC1tcy1mbGV4LW9yZGVyOiA0OwogICAgICAgIG9yZGVyOiA0OwogIH0KICAub3JkZXItbWQtNSB7CiAgICAtbXMtZmxleC1vcmRlcjogNTsKICAgICAgICBvcmRlcjogNTsKICB9CiAgLm9yZGVyLW1kLTYgewogICAgLW1zLWZsZXgtb3JkZXI6IDY7CiAgICAgICAgb3JkZXI6IDY7CiAgfQogIC5vcmRlci1tZC03IHsKICAgIC1tcy1mbGV4LW9yZGVyOiA3OwogICAgICAgIG9yZGVyOiA3OwogIH0KICAub3JkZXItbWQtOCB7CiAgICAtbXMtZmxleC1vcmRlcjogODsKICAgICAgICBvcmRlcjogODsKICB9CiAgLm9yZGVyLW1kLTkgewogICAgLW1zLWZsZXgtb3JkZXI6IDk7CiAgICAgICAgb3JkZXI6IDk7CiAgfQogIC5vcmRlci1tZC0xMCB7CiAgICAtbXMtZmxleC1vcmRlcjogMTA7CiAgICAgICAgb3JkZXI6IDEwOwogIH0KICAub3JkZXItbWQtMTEgewogICAgLW1zLWZsZXgtb3JkZXI6IDExOwogICAgICAgIG9yZGVyOiAxMTsKICB9CiAgLm9yZGVyLW1kLTEyIHsKICAgIC1tcy1mbGV4LW9yZGVyOiAxMjsKICAgICAgICBvcmRlcjogMTI7CiAgfQogIC5vZmZzZXQtbWQtMCB7CiAgICBtYXJnaW4tbGVmdDogMDsKICB9CiAgLm9mZnNldC1tZC0xIHsKICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMyU7CiAgfQogIC5vZmZzZXQtbWQtMiB7CiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY3JTsKICB9CiAgLm9mZnNldC1tZC0zIHsKICAgIG1hcmdpbi1sZWZ0OiAyNSU7CiAgfQogIC5vZmZzZXQtbWQtNCB7CiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzJTsKICB9CiAgLm9mZnNldC1tZC01IHsKICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjclOwogIH0KICAub2Zmc2V0LW1kLTYgewogICAgbWFyZ2luLWxlZnQ6IDUwJTsKICB9CiAgLm9mZnNldC1tZC03IHsKICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMlOwogIH0KICAub2Zmc2V0LW1kLTggewogICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NyU7CiAgfQogIC5vZmZzZXQtbWQtOSB7CiAgICBtYXJnaW4tbGVmdDogNzUlOwogIH0KICAub2Zmc2V0LW1kLTEwIHsKICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMlOwogIH0KICAub2Zmc2V0LW1kLTExIHsKICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjclOwogIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7CiAgLmNvbC1sZyB7CiAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDsKICAgICAgICBmbGV4LWJhc2lzOiAwOwogICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7CiAgICAgICAgZmxleC1ncm93OiAxOwogICAgbWF4LXdpZHRoOiAxMDAlOwogIH0KICAuY29sLWxnLWF1dG8gewogICAgLW1zLWZsZXg6IDAgMCBhdXRvOwogICAgICAgIGZsZXg6IDAgMCBhdXRvOwogICAgd2lkdGg6IGF1dG87CiAgICBtYXgtd2lkdGg6IG5vbmU7CiAgfQogIC5jb2wtbGctMSB7CiAgICAtbXMtZmxleDogMCAwIDguMzMzMzMzJTsKICAgICAgICBmbGV4OiAwIDAgOC4zMzMzMzMlOwogICAgbWF4LXdpZHRoOiA4LjMzMzMzMyU7CiAgfQogIC5jb2wtbGctMiB7CiAgICAtbXMtZmxleDogMCAwIDE2LjY2NjY2NyU7CiAgICAgICAgZmxleDogMCAwIDE2LjY2NjY2NyU7CiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NyU7CiAgfQogIC5jb2wtbGctMyB7CiAgICAtbXMtZmxleDogMCAwIDI1JTsKICAgICAgICBmbGV4OiAwIDAgMjUlOwogICAgbWF4LXdpZHRoOiAyNSU7CiAgfQogIC5jb2wtbGctNCB7CiAgICAtbXMtZmxleDogMCAwIDMzLjMzMzMzMyU7CiAgICAgICAgZmxleDogMCAwIDMzLjMzMzMzMyU7CiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMyU7CiAgfQogIC5jb2wtbGctNSB7CiAgICAtbXMtZmxleDogMCAwIDQxLjY2NjY2NyU7CiAgICAgICAgZmxleDogMCAwIDQxLjY2NjY2NyU7CiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NyU7CiAgfQogIC5jb2wtbGctNiB7CiAgICAtbXMtZmxleDogMCAwIDUwJTsKICAgICAgICBmbGV4OiAwIDAgNTAlOwogICAgbWF4LXdpZHRoOiA1MCU7CiAgfQogIC5jb2wtbGctNyB7CiAgICAtbXMtZmxleDogMCAwIDU4LjMzMzMzMyU7CiAgICAgICAgZmxleDogMCAwIDU4LjMzMzMzMyU7CiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMyU7CiAgfQogIC5jb2wtbGctOCB7CiAgICAtbXMtZmxleDogMCAwIDY2LjY2NjY2NyU7CiAgICAgICAgZmxleDogMCAwIDY2LjY2NjY2NyU7CiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NyU7CiAgfQogIC5jb2wtbGctOSB7CiAgICAtbXMtZmxleDogMCAwIDc1JTsKICAgICAgICBmbGV4OiAwIDAgNzUlOwogICAgbWF4LXdpZHRoOiA3NSU7CiAgfQogIC5jb2wtbGctMTAgewogICAgLW1zLWZsZXg6IDAgMCA4My4zMzMzMzMlOwogICAgICAgIGZsZXg6IDAgMCA4My4zMzMzMzMlOwogICAgbWF4LXdpZHRoOiA4My4zMzMzMzMlOwogIH0KICAuY29sLWxnLTExIHsKICAgIC1tcy1mbGV4OiAwIDAgOTEuNjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgOTEuNjY2NjY3JTsKICAgIG1heC13aWR0aDogOTEuNjY2NjY3JTsKICB9CiAgLmNvbC1sZy0xMiB7CiAgICAtbXMtZmxleDogMCAwIDEwMCU7CiAgICAgICAgZmxleDogMCAwIDEwMCU7CiAgICBtYXgtd2lkdGg6IDEwMCU7CiAgfQogIC5vcmRlci1sZy1maXJzdCB7CiAgICAtbXMtZmxleC1vcmRlcjogLTE7CiAgICAgICAgb3JkZXI6IC0xOwogIH0KICAub3JkZXItbGctMSB7CiAgICAtbXMtZmxleC1vcmRlcjogMTsKICAgICAgICBvcmRlcjogMTsKICB9CiAgLm9yZGVyLWxnLTIgewogICAgLW1zLWZsZXgtb3JkZXI6IDI7CiAgICAgICAgb3JkZXI6IDI7CiAgfQogIC5vcmRlci1sZy0zIHsKICAgIC1tcy1mbGV4LW9yZGVyOiAzOwogICAgICAgIG9yZGVyOiAzOwogIH0KICAub3JkZXItbGctNCB7CiAgICAtbXMtZmxleC1vcmRlcjogNDsKICAgICAgICBvcmRlcjogNDsKICB9CiAgLm9yZGVyLWxnLTUgewogICAgLW1zLWZsZXgtb3JkZXI6IDU7CiAgICAgICAgb3JkZXI6IDU7CiAgfQogIC5vcmRlci1sZy02IHsKICAgIC1tcy1mbGV4LW9yZGVyOiA2OwogICAgICAgIG9yZGVyOiA2OwogIH0KICAub3JkZXItbGctNyB7CiAgICAtbXMtZmxleC1vcmRlcjogNzsKICAgICAgICBvcmRlcjogNzsKICB9CiAgLm9yZGVyLWxnLTggewogICAgLW1zLWZsZXgtb3JkZXI6IDg7CiAgICAgICAgb3JkZXI6IDg7CiAgfQogIC5vcmRlci1sZy05IHsKICAgIC1tcy1mbGV4LW9yZGVyOiA5OwogICAgICAgIG9yZGVyOiA5OwogIH0KICAub3JkZXItbGctMTAgewogICAgLW1zLWZsZXgtb3JkZXI6IDEwOwogICAgICAgIG9yZGVyOiAxMDsKICB9CiAgLm9yZGVyLWxnLTExIHsKICAgIC1tcy1mbGV4LW9yZGVyOiAxMTsKICAgICAgICBvcmRlcjogMTE7CiAgfQogIC5vcmRlci1sZy0xMiB7CiAgICAtbXMtZmxleC1vcmRlcjogMTI7CiAgICAgICAgb3JkZXI6IDEyOwogIH0KICAub2Zmc2V0LWxnLTAgewogICAgbWFyZ2luLWxlZnQ6IDA7CiAgfQogIC5vZmZzZXQtbGctMSB7CiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMlOwogIH0KICAub2Zmc2V0LWxnLTIgewogICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NyU7CiAgfQogIC5vZmZzZXQtbGctMyB7CiAgICBtYXJnaW4tbGVmdDogMjUlOwogIH0KICAub2Zmc2V0LWxnLTQgewogICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMyU7CiAgfQogIC5vZmZzZXQtbGctNSB7CiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY3JTsKICB9CiAgLm9mZnNldC1sZy02IHsKICAgIG1hcmdpbi1sZWZ0OiA1MCU7CiAgfQogIC5vZmZzZXQtbGctNyB7CiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzJTsKICB9CiAgLm9mZnNldC1sZy04IHsKICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjclOwogIH0KICAub2Zmc2V0LWxnLTkgewogICAgbWFyZ2luLWxlZnQ6IDc1JTsKICB9CiAgLm9mZnNldC1sZy0xMCB7CiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzJTsKICB9CiAgLm9mZnNldC1sZy0xMSB7CiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY3JTsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHsKICAuY29sLXhsIHsKICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAwOwogICAgICAgIGZsZXgtYmFzaXM6IDA7CiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTsKICAgICAgICBmbGV4LWdyb3c6IDE7CiAgICBtYXgtd2lkdGg6IDEwMCU7CiAgfQogIC5jb2wteGwtYXV0byB7CiAgICAtbXMtZmxleDogMCAwIGF1dG87CiAgICAgICAgZmxleDogMCAwIGF1dG87CiAgICB3aWR0aDogYXV0bzsKICAgIG1heC13aWR0aDogbm9uZTsKICB9CiAgLmNvbC14bC0xIHsKICAgIC1tcy1mbGV4OiAwIDAgOC4zMzMzMzMlOwogICAgICAgIGZsZXg6IDAgMCA4LjMzMzMzMyU7CiAgICBtYXgtd2lkdGg6IDguMzMzMzMzJTsKICB9CiAgLmNvbC14bC0yIHsKICAgIC1tcy1mbGV4OiAwIDAgMTYuNjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTsKICAgIG1heC13aWR0aDogMTYuNjY2NjY3JTsKICB9CiAgLmNvbC14bC0zIHsKICAgIC1tcy1mbGV4OiAwIDAgMjUlOwogICAgICAgIGZsZXg6IDAgMCAyNSU7CiAgICBtYXgtd2lkdGg6IDI1JTsKICB9CiAgLmNvbC14bC00IHsKICAgIC1tcy1mbGV4OiAwIDAgMzMuMzMzMzMzJTsKICAgICAgICBmbGV4OiAwIDAgMzMuMzMzMzMzJTsKICAgIG1heC13aWR0aDogMzMuMzMzMzMzJTsKICB9CiAgLmNvbC14bC01IHsKICAgIC1tcy1mbGV4OiAwIDAgNDEuNjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgNDEuNjY2NjY3JTsKICAgIG1heC13aWR0aDogNDEuNjY2NjY3JTsKICB9CiAgLmNvbC14bC02IHsKICAgIC1tcy1mbGV4OiAwIDAgNTAlOwogICAgICAgIGZsZXg6IDAgMCA1MCU7CiAgICBtYXgtd2lkdGg6IDUwJTsKICB9CiAgLmNvbC14bC03IHsKICAgIC1tcy1mbGV4OiAwIDAgNTguMzMzMzMzJTsKICAgICAgICBmbGV4OiAwIDAgNTguMzMzMzMzJTsKICAgIG1heC13aWR0aDogNTguMzMzMzMzJTsKICB9CiAgLmNvbC14bC04IHsKICAgIC1tcy1mbGV4OiAwIDAgNjYuNjY2NjY3JTsKICAgICAgICBmbGV4OiAwIDAgNjYuNjY2NjY3JTsKICAgIG1heC13aWR0aDogNjYuNjY2NjY3JTsKICB9CiAgLmNvbC14bC05IHsKICAgIC1tcy1mbGV4OiAwIDAgNzUlOwogICAgICAgIGZsZXg6IDAgMCA3NSU7CiAgICBtYXgtd2lkdGg6IDc1JTsKICB9CiAgLmNvbC14bC0xMCB7CiAgICAtbXMtZmxleDogMCAwIDgzLjMzMzMzMyU7CiAgICAgICAgZmxleDogMCAwIDgzLjMzMzMzMyU7CiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMyU7CiAgfQogIC5jb2wteGwtMTEgewogICAgLW1zLWZsZXg6IDAgMCA5MS42NjY2NjclOwogICAgICAgIGZsZXg6IDAgMCA5MS42NjY2NjclOwogICAgbWF4LXdpZHRoOiA5MS42NjY2NjclOwogIH0KICAuY29sLXhsLTEyIHsKICAgIC1tcy1mbGV4OiAwIDAgMTAwJTsKICAgICAgICBmbGV4OiAwIDAgMTAwJTsKICAgIG1heC13aWR0aDogMTAwJTsKICB9CiAgLm9yZGVyLXhsLWZpcnN0IHsKICAgIC1tcy1mbGV4LW9yZGVyOiAtMTsKICAgICAgICBvcmRlcjogLTE7CiAgfQogIC5vcmRlci14bC0xIHsKICAgIC1tcy1mbGV4LW9yZGVyOiAxOwogICAgICAgIG9yZGVyOiAxOwogIH0KICAub3JkZXIteGwtMiB7CiAgICAtbXMtZmxleC1vcmRlcjogMjsKICAgICAgICBvcmRlcjogMjsKICB9CiAgLm9yZGVyLXhsLTMgewogICAgLW1zLWZsZXgtb3JkZXI6IDM7CiAgICAgICAgb3JkZXI6IDM7CiAgfQogIC5vcmRlci14bC00IHsKICAgIC1tcy1mbGV4LW9yZGVyOiA0OwogICAgICAgIG9yZGVyOiA0OwogIH0KICAub3JkZXIteGwtNSB7CiAgICAtbXMtZmxleC1vcmRlcjogNTsKICAgICAgICBvcmRlcjogNTsKICB9CiAgLm9yZGVyLXhsLTYgewogICAgLW1zLWZsZXgtb3JkZXI6IDY7CiAgICAgICAgb3JkZXI6IDY7CiAgfQogIC5vcmRlci14bC03IHsKICAgIC1tcy1mbGV4LW9yZGVyOiA3OwogICAgICAgIG9yZGVyOiA3OwogIH0KICAub3JkZXIteGwtOCB7CiAgICAtbXMtZmxleC1vcmRlcjogODsKICAgICAgICBvcmRlcjogODsKICB9CiAgLm9yZGVyLXhsLTkgewogICAgLW1zLWZsZXgtb3JkZXI6IDk7CiAgICAgICAgb3JkZXI6IDk7CiAgfQogIC5vcmRlci14bC0xMCB7CiAgICAtbXMtZmxleC1vcmRlcjogMTA7CiAgICAgICAgb3JkZXI6IDEwOwogIH0KICAub3JkZXIteGwtMTEgewogICAgLW1zLWZsZXgtb3JkZXI6IDExOwogICAgICAgIG9yZGVyOiAxMTsKICB9CiAgLm9yZGVyLXhsLTEyIHsKICAgIC1tcy1mbGV4LW9yZGVyOiAxMjsKICAgICAgICBvcmRlcjogMTI7CiAgfQogIC5vZmZzZXQteGwtMCB7CiAgICBtYXJnaW4tbGVmdDogMDsKICB9CiAgLm9mZnNldC14bC0xIHsKICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMyU7CiAgfQogIC5vZmZzZXQteGwtMiB7CiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY3JTsKICB9CiAgLm9mZnNldC14bC0zIHsKICAgIG1hcmdpbi1sZWZ0OiAyNSU7CiAgfQogIC5vZmZzZXQteGwtNCB7CiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzJTsKICB9CiAgLm9mZnNldC14bC01IHsKICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjclOwogIH0KICAub2Zmc2V0LXhsLTYgewogICAgbWFyZ2luLWxlZnQ6IDUwJTsKICB9CiAgLm9mZnNldC14bC03IHsKICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMlOwogIH0KICAub2Zmc2V0LXhsLTggewogICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NyU7CiAgfQogIC5vZmZzZXQteGwtOSB7CiAgICBtYXJnaW4tbGVmdDogNzUlOwogIH0KICAub2Zmc2V0LXhsLTEwIHsKICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMlOwogIH0KICAub2Zmc2V0LXhsLTExIHsKICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjclOwogIH0KfQoKLnRhYmxlIHsKICB3aWR0aDogMTAwJTsKICBtYXgtd2lkdGg6IDEwMCU7CiAgbWFyZ2luLWJvdHRvbTogMXJlbTsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKfQoKLnRhYmxlIHRoLAoudGFibGUgdGQgewogIHBhZGRpbmc6IDAuNzVyZW07CiAgdmVydGljYWwtYWxpZ246IHRvcDsKICBib3JkZXItdG9wOiAxcHggc29saWQgI2U5ZWNlZjsKfQoKLnRhYmxlIHRoZWFkIHRoIHsKICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOwogIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTllY2VmOwp9CgoudGFibGUgdGJvZHkgKyB0Ym9keSB7CiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNlOWVjZWY7Cn0KCi50YWJsZSAudGFibGUgewogIGJhY2tncm91bmQtY29sb3I6ICNmZmY7Cn0KCi50YWJsZS1zbSB0aCwKLnRhYmxlLXNtIHRkIHsKICBwYWRkaW5nOiAwLjNyZW07Cn0KCi50YWJsZS1ib3JkZXJlZCB7CiAgYm9yZGVyOiAxcHggc29saWQgI2U5ZWNlZjsKfQoKLnRhYmxlLWJvcmRlcmVkIHRoLAoudGFibGUtYm9yZGVyZWQgdGQgewogIGJvcmRlcjogMXB4IHNvbGlkICNlOWVjZWY7Cn0KCi50YWJsZS1ib3JkZXJlZCB0aGVhZCB0aCwKLnRhYmxlLWJvcmRlcmVkIHRoZWFkIHRkIHsKICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7Cn0KCi50YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkgewogIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7Cn0KCi50YWJsZS1ob3ZlciB0Ym9keSB0cjpob3ZlciB7CiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3NSk7Cn0KCi50YWJsZS1wcmltYXJ5LAoudGFibGUtcHJpbWFyeSA+IHRoLAoudGFibGUtcHJpbWFyeSA+IHRkIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjhkYWZmOwp9CgoudGFibGUtaG92ZXIgLnRhYmxlLXByaW1hcnk6aG92ZXIgewogIGJhY2tncm91bmQtY29sb3I6ICM5ZmNkZmY7Cn0KCi50YWJsZS1ob3ZlciAudGFibGUtcHJpbWFyeTpob3ZlciA+IHRkLAoudGFibGUtaG92ZXIgLnRhYmxlLXByaW1hcnk6aG92ZXIgPiB0aCB7CiAgYmFja2dyb3VuZC1jb2xvcjogIzlmY2RmZjsKfQoKLnRhYmxlLXNlY29uZGFyeSwKLnRhYmxlLXNlY29uZGFyeSA+IHRoLAoudGFibGUtc2Vjb25kYXJ5ID4gdGQgewogIGJhY2tncm91bmQtY29sb3I6ICNkZGRmZTI7Cn0KCi50YWJsZS1ob3ZlciAudGFibGUtc2Vjb25kYXJ5OmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZkMmQ2Owp9CgoudGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3ZlciA+IHRkLAoudGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3ZlciA+IHRoIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZkMmQ2Owp9CgoudGFibGUtc3VjY2VzcywKLnRhYmxlLXN1Y2Nlc3MgPiB0aCwKLnRhYmxlLXN1Y2Nlc3MgPiB0ZCB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2MzZTZjYjsKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1zdWNjZXNzOmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjFkZmJiOwp9CgoudGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXIgPiB0ZCwKLnRhYmxlLWhvdmVyIC50YWJsZS1zdWNjZXNzOmhvdmVyID4gdGggewogIGJhY2tncm91bmQtY29sb3I6ICNiMWRmYmI7Cn0KCi50YWJsZS1pbmZvLAoudGFibGUtaW5mbyA+IHRoLAoudGFibGUtaW5mbyA+IHRkIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmVlNWViOwp9CgoudGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIgewogIGJhY2tncm91bmQtY29sb3I6ICNhYmRkZTU7Cn0KCi50YWJsZS1ob3ZlciAudGFibGUtaW5mbzpob3ZlciA+IHRkLAoudGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIgPiB0aCB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2FiZGRlNTsKfQoKLnRhYmxlLXdhcm5pbmcsCi50YWJsZS13YXJuaW5nID4gdGgsCi50YWJsZS13YXJuaW5nID4gdGQgewogIGJhY2tncm91bmQtY29sb3I6ICNmZmVlYmE7Cn0KCi50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3ZlciB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZThhMTsKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyID4gdGQsCi50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3ZlciA+IHRoIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlOGExOwp9CgoudGFibGUtZGFuZ2VyLAoudGFibGUtZGFuZ2VyID4gdGgsCi50YWJsZS1kYW5nZXIgPiB0ZCB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1YzZjYjsKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgewogIGJhY2tncm91bmQtY29sb3I6ICNmMWIwYjc7Cn0KCi50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyID4gdGQsCi50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyID4gdGggewogIGJhY2tncm91bmQtY29sb3I6ICNmMWIwYjc7Cn0KCi50YWJsZS1saWdodCwKLnRhYmxlLWxpZ2h0ID4gdGgsCi50YWJsZS1saWdodCA+IHRkIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmZGZlOwp9CgoudGFibGUtaG92ZXIgLnRhYmxlLWxpZ2h0OmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2Y2Owp9CgoudGFibGUtaG92ZXIgLnRhYmxlLWxpZ2h0OmhvdmVyID4gdGQsCi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXIgPiB0aCB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNmNjsKfQoKLnRhYmxlLWRhcmssCi50YWJsZS1kYXJrID4gdGgsCi50YWJsZS1kYXJrID4gdGQgewogIGJhY2tncm91bmQtY29sb3I6ICNjNmM4Y2E7Cn0KCi50YWJsZS1ob3ZlciAudGFibGUtZGFyazpob3ZlciB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2I5YmJiZTsKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyID4gdGQsCi50YWJsZS1ob3ZlciAudGFibGUtZGFyazpob3ZlciA+IHRoIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjliYmJlOwp9CgoudGFibGUtYWN0aXZlLAoudGFibGUtYWN0aXZlID4gdGgsCi50YWJsZS1hY3RpdmUgPiB0ZCB7CiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3NSk7Cn0KCi50YWJsZS1ob3ZlciAudGFibGUtYWN0aXZlOmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDc1KTsKfQoKLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgPiB0ZCwKLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgPiB0aCB7CiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3NSk7Cn0KCi50YWJsZSAudGhlYWQtZGFyayB0aCB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTsKICBib3JkZXItY29sb3I6ICMzMjM4M2U7Cn0KCi50YWJsZSAudGhlYWQtbGlnaHQgdGggewogIGNvbG9yOiAjNDk1MDU3OwogIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7CiAgYm9yZGVyLWNvbG9yOiAjZTllY2VmOwp9CgoudGFibGUtZGFyayB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTsKfQoKLnRhYmxlLWRhcmsgdGgsCi50YWJsZS1kYXJrIHRkLAoudGFibGUtZGFyayB0aGVhZCB0aCB7CiAgYm9yZGVyLWNvbG9yOiAjMzIzODNlOwp9CgoudGFibGUtZGFyay50YWJsZS1ib3JkZXJlZCB7CiAgYm9yZGVyOiAwOwp9CgoudGFibGUtZGFyay50YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkgewogIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7Cn0KCi50YWJsZS1kYXJrLnRhYmxlLWhvdmVyIHRib2R5IHRyOmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDc1KTsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7CiAgLnRhYmxlLXJlc3BvbnNpdmUtc20gewogICAgZGlzcGxheTogYmxvY2s7CiAgICB3aWR0aDogMTAwJTsKICAgIG92ZXJmbG93LXg6IGF1dG87CiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7CiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsKICB9CiAgLnRhYmxlLXJlc3BvbnNpdmUtc20udGFibGUtYm9yZGVyZWQgewogICAgYm9yZGVyOiAwOwogIH0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7CiAgLnRhYmxlLXJlc3BvbnNpdmUtbWQgewogICAgZGlzcGxheTogYmxvY2s7CiAgICB3aWR0aDogMTAwJTsKICAgIG92ZXJmbG93LXg6IGF1dG87CiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7CiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsKICB9CiAgLnRhYmxlLXJlc3BvbnNpdmUtbWQudGFibGUtYm9yZGVyZWQgewogICAgYm9yZGVyOiAwOwogIH0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7CiAgLnRhYmxlLXJlc3BvbnNpdmUtbGcgewogICAgZGlzcGxheTogYmxvY2s7CiAgICB3aWR0aDogMTAwJTsKICAgIG92ZXJmbG93LXg6IGF1dG87CiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7CiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsKICB9CiAgLnRhYmxlLXJlc3BvbnNpdmUtbGcudGFibGUtYm9yZGVyZWQgewogICAgYm9yZGVyOiAwOwogIH0KfQoKQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkgewogIC50YWJsZS1yZXNwb25zaXZlLXhsIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgd2lkdGg6IDEwMCU7CiAgICBvdmVyZmxvdy14OiBhdXRvOwogICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOwogICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7CiAgfQogIC50YWJsZS1yZXNwb25zaXZlLXhsLnRhYmxlLWJvcmRlcmVkIHsKICAgIGJvcmRlcjogMDsKICB9Cn0KCi50YWJsZS1yZXNwb25zaXZlIHsKICBkaXNwbGF5OiBibG9jazsKICB3aWR0aDogMTAwJTsKICBvdmVyZmxvdy14OiBhdXRvOwogIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsKICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsKfQoKLnRhYmxlLXJlc3BvbnNpdmUudGFibGUtYm9yZGVyZWQgewogIGJvcmRlcjogMDsKfQoKLmZvcm0tY29udHJvbCB7CiAgZGlzcGxheTogYmxvY2s7CiAgd2lkdGg6IDEwMCU7CiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTsKICBmb250LXNpemU6IDFyZW07CiAgbGluZS1oZWlnaHQ6IDEuNTsKICBjb2xvcjogIzQ5NTA1NzsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7CiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsKICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhOwogIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07CiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IDAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IDAuMTVzOwp9CgouZm9ybS1jb250cm9sOjotbXMtZXhwYW5kIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICBib3JkZXI6IDA7Cn0KCi5mb3JtLWNvbnRyb2w6Zm9jdXMgewogIGNvbG9yOiAjNDk1MDU3OwogIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgYm9yZGVyLWNvbG9yOiAjODBiZGZmOwogIG91dGxpbmU6IG5vbmU7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpOwp9CgouZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzg2OGU5NjsKICBvcGFjaXR5OiAxOwp9CgouZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7CiAgY29sb3I6ICM4NjhlOTY7CiAgb3BhY2l0eTogMTsKfQoKLmZvcm0tY29udHJvbDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzg2OGU5NjsKICBvcGFjaXR5OiAxOwp9CgouZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7CiAgY29sb3I6ICM4NjhlOTY7CiAgb3BhY2l0eTogMTsKfQoKLmZvcm0tY29udHJvbDpkaXNhYmxlZCwgLmZvcm0tY29udHJvbFtyZWFkb25seV0gewogIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7CiAgb3BhY2l0eTogMTsKfQoKc2VsZWN0LmZvcm0tY29udHJvbDpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSkgewogIGhlaWdodDogY2FsYygyLjI1cmVtICsgMnB4KTsKfQoKc2VsZWN0LmZvcm0tY29udHJvbDpmb2N1czo6LW1zLXZhbHVlIHsKICBjb2xvcjogIzQ5NTA1NzsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwp9CgouZm9ybS1jb250cm9sLWZpbGUsCi5mb3JtLWNvbnRyb2wtcmFuZ2UgewogIGRpc3BsYXk6IGJsb2NrOwp9CgouY29sLWZvcm0tbGFiZWwgewogIHBhZGRpbmctdG9wOiBjYWxjKDAuMzc1cmVtICsgMXB4KTsKICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjM3NXJlbSArIDFweCk7CiAgbWFyZ2luLWJvdHRvbTogMDsKICBsaW5lLWhlaWdodDogMS41Owp9CgouY29sLWZvcm0tbGFiZWwtbGcgewogIHBhZGRpbmctdG9wOiBjYWxjKDAuNXJlbSArIDFweCk7CiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC41cmVtICsgMXB4KTsKICBmb250LXNpemU6IDEuMjVyZW07CiAgbGluZS1oZWlnaHQ6IDEuNTsKfQoKLmNvbC1mb3JtLWxhYmVsLXNtIHsKICBwYWRkaW5nLXRvcDogY2FsYygwLjI1cmVtICsgMXB4KTsKICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjI1cmVtICsgMXB4KTsKICBmb250LXNpemU6IDAuODc1cmVtOwogIGxpbmUtaGVpZ2h0OiAxLjU7Cn0KCi5jb2wtZm9ybS1sZWdlbmQgewogIHBhZGRpbmctdG9wOiAwLjM3NXJlbTsKICBwYWRkaW5nLWJvdHRvbTogMC4zNzVyZW07CiAgbWFyZ2luLWJvdHRvbTogMDsKICBmb250LXNpemU6IDFyZW07Cn0KCi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHsKICBwYWRkaW5nLXRvcDogMC4zNzVyZW07CiAgcGFkZGluZy1ib3R0b206IDAuMzc1cmVtOwogIG1hcmdpbi1ib3R0b206IDA7CiAgbGluZS1oZWlnaHQ6IDEuNTsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50OwogIGJvcmRlci13aWR0aDogMXB4IDA7Cn0KCi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmZvcm0tY29udHJvbC1zbSwgLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLAouaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLXBsYWludGV4dC5pbnB1dC1ncm91cC1hZGRvbiwKLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmJ0biwgLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLWxnLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wsCi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmlucHV0LWdyb3VwLWFkZG9uLAouaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQuYnRuIHsKICBwYWRkaW5nLXJpZ2h0OiAwOwogIHBhZGRpbmctbGVmdDogMDsKfQoKLmZvcm0tY29udHJvbC1zbSwgLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCwKLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uLAouaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7CiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07CiAgZm9udC1zaXplOiAwLjg3NXJlbTsKICBsaW5lLWhlaWdodDogMS41OwogIGJvcmRlci1yYWRpdXM6IDAuMnJlbTsKfQoKc2VsZWN0LmZvcm0tY29udHJvbC1zbTpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSksIC5pbnB1dC1ncm91cC1zbSA+IHNlbGVjdC5mb3JtLWNvbnRyb2w6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pLAouaW5wdXQtZ3JvdXAtc20gPiBzZWxlY3QuaW5wdXQtZ3JvdXAtYWRkb246bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pLAouaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gc2VsZWN0LmJ0bjpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSkgewogIGhlaWdodDogY2FsYygxLjgxMjVyZW0gKyAycHgpOwp9CgouZm9ybS1jb250cm9sLWxnLCAuaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLAouaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sCi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHsKICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsKICBmb250LXNpemU6IDEuMjVyZW07CiAgbGluZS1oZWlnaHQ6IDEuNTsKICBib3JkZXItcmFkaXVzOiAwLjNyZW07Cn0KCnNlbGVjdC5mb3JtLWNvbnRyb2wtbGc6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pLCAuaW5wdXQtZ3JvdXAtbGcgPiBzZWxlY3QuZm9ybS1jb250cm9sOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSwKLmlucHV0LWdyb3VwLWxnID4gc2VsZWN0LmlucHV0LWdyb3VwLWFkZG9uOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSwKLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IHNlbGVjdC5idG46bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pIHsKICBoZWlnaHQ6IGNhbGMoMi44NzVyZW0gKyAycHgpOwp9CgouZm9ybS1ncm91cCB7CiAgbWFyZ2luLWJvdHRvbTogMXJlbTsKfQoKLmZvcm0tdGV4dCB7CiAgZGlzcGxheTogYmxvY2s7CiAgbWFyZ2luLXRvcDogMC4yNXJlbTsKfQoKLmZvcm0tcm93IHsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4OwogIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICAgIGZsZXgtd3JhcDogd3JhcDsKICBtYXJnaW4tcmlnaHQ6IC01cHg7CiAgbWFyZ2luLWxlZnQ6IC01cHg7Cn0KCi5mb3JtLXJvdyA+IC5jb2wsCi5mb3JtLXJvdyA+IFtjbGFzcyo9ImNvbC0iXSB7CiAgcGFkZGluZy1yaWdodDogNXB4OwogIHBhZGRpbmctbGVmdDogNXB4Owp9CgouZm9ybS1jaGVjayB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGRpc3BsYXk6IGJsb2NrOwogIG1hcmdpbi1ib3R0b206IDAuNXJlbTsKfQoKLmZvcm0tY2hlY2suZGlzYWJsZWQgLmZvcm0tY2hlY2stbGFiZWwgewogIGNvbG9yOiAjODY4ZTk2Owp9CgouZm9ybS1jaGVjay1sYWJlbCB7CiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOwogIG1hcmdpbi1ib3R0b206IDA7Cn0KCi5mb3JtLWNoZWNrLWlucHV0IHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgbWFyZ2luLXRvcDogMC4yNXJlbTsKICBtYXJnaW4tbGVmdDogLTEuMjVyZW07Cn0KCi5mb3JtLWNoZWNrLWlubGluZSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIG1hcmdpbi1yaWdodDogMC43NXJlbTsKfQoKLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWxhYmVsIHsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwp9CgoudmFsaWQtZmVlZGJhY2sgewogIGRpc3BsYXk6IG5vbmU7CiAgbWFyZ2luLXRvcDogLjI1cmVtOwogIGZvbnQtc2l6ZTogLjg3NXJlbTsKICBjb2xvcjogIzI4YTc0NTsKfQoKLnZhbGlkLXRvb2x0aXAgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDEwMCU7CiAgei1pbmRleDogNTsKICBkaXNwbGF5OiBub25lOwogIHdpZHRoOiAyNTBweDsKICBwYWRkaW5nOiAuNXJlbTsKICBtYXJnaW4tdG9wOiAuMXJlbTsKICBmb250LXNpemU6IC44NzVyZW07CiAgbGluZS1oZWlnaHQ6IDE7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MCwgMTY3LCA2OSwgMC44KTsKICBib3JkZXItcmFkaXVzOiAuMnJlbTsKfQoKLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCwgLmZvcm0tY29udHJvbC5pcy12YWxpZCwgLndhcy12YWxpZGF0ZWQKLmN1c3RvbS1zZWxlY3Q6dmFsaWQsCi5jdXN0b20tc2VsZWN0LmlzLXZhbGlkIHsKICBib3JkZXItY29sb3I6ICMyOGE3NDU7Cn0KCi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMsIC53YXMtdmFsaWRhdGVkCi5jdXN0b20tc2VsZWN0OnZhbGlkOmZvY3VzLAouY3VzdG9tLXNlbGVjdC5pcy12YWxpZDpmb2N1cyB7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNDAsIDE2NywgNjksIDAuMjUpOwp9Cgoud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLAoud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkIH4gLnZhbGlkLXRvb2x0aXAsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssCi5mb3JtLWNvbnRyb2wuaXMtdmFsaWQgfiAudmFsaWQtdG9vbHRpcCwgLndhcy12YWxpZGF0ZWQKLmN1c3RvbS1zZWxlY3Q6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssCi53YXMtdmFsaWRhdGVkCi5jdXN0b20tc2VsZWN0OnZhbGlkIH4gLnZhbGlkLXRvb2x0aXAsCi5jdXN0b20tc2VsZWN0LmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLAouY3VzdG9tLXNlbGVjdC5pcy12YWxpZCB+IC52YWxpZC10b29sdGlwIHsKICBkaXNwbGF5OiBibG9jazsKfQoKLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQgKyAuZm9ybS1jaGVjay1sYWJlbCwgLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQgKyAuZm9ybS1jaGVjay1sYWJlbCB7CiAgY29sb3I6ICMyOGE3NDU7Cn0KCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZCB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3IsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZCB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3IgewogIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDAsIDE2NywgNjksIDAuMjUpOwp9Cgoud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtZGVzY3JpcHRpb24sIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZCB+IC5jdXN0b20tY29udHJvbC1kZXNjcmlwdGlvbiB7CiAgY29sb3I6ICMyOGE3NDU7Cn0KCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDp2YWxpZCB+IC5jdXN0b20tZmlsZS1jb250cm9sLCAuY3VzdG9tLWZpbGUtaW5wdXQuaXMtdmFsaWQgfiAuY3VzdG9tLWZpbGUtY29udHJvbCB7CiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1Owp9Cgoud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6dmFsaWQgfiAuY3VzdG9tLWZpbGUtY29udHJvbDo6YmVmb3JlLCAuY3VzdG9tLWZpbGUtaW5wdXQuaXMtdmFsaWQgfiAuY3VzdG9tLWZpbGUtY29udHJvbDo6YmVmb3JlIHsKICBib3JkZXItY29sb3I6IGluaGVyaXQ7Cn0KCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDp2YWxpZDpmb2N1cywgLmN1c3RvbS1maWxlLWlucHV0LmlzLXZhbGlkOmZvY3VzIHsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg0MCwgMTY3LCA2OSwgMC4yNSk7Cn0KCi5pbnZhbGlkLWZlZWRiYWNrIHsKICBkaXNwbGF5OiBub25lOwogIG1hcmdpbi10b3A6IC4yNXJlbTsKICBmb250LXNpemU6IC44NzVyZW07CiAgY29sb3I6ICNkYzM1NDU7Cn0KCi5pbnZhbGlkLXRvb2x0aXAgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDEwMCU7CiAgei1pbmRleDogNTsKICBkaXNwbGF5OiBub25lOwogIHdpZHRoOiAyNTBweDsKICBwYWRkaW5nOiAuNXJlbTsKICBtYXJnaW4tdG9wOiAuMXJlbTsKICBmb250LXNpemU6IC44NzVyZW07CiAgbGluZS1oZWlnaHQ6IDE7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjAsIDUzLCA2OSwgMC44KTsKICBib3JkZXItcmFkaXVzOiAuMnJlbTsKfQoKLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQsIC53YXMtdmFsaWRhdGVkCi5jdXN0b20tc2VsZWN0OmludmFsaWQsCi5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQgewogIGJvcmRlci1jb2xvcjogI2RjMzU0NTsKfQoKLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMsIC53YXMtdmFsaWRhdGVkCi5jdXN0b20tc2VsZWN0OmludmFsaWQ6Zm9jdXMsCi5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMgewogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTsKfQoKLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssCi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAsIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLAouZm9ybS1jb250cm9sLmlzLWludmFsaWQgfiAuaW52YWxpZC10b29sdGlwLCAud2FzLXZhbGlkYXRlZAouY3VzdG9tLXNlbGVjdDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssCi53YXMtdmFsaWRhdGVkCi5jdXN0b20tc2VsZWN0OmludmFsaWQgfiAuaW52YWxpZC10b29sdGlwLAouY3VzdG9tLXNlbGVjdC5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssCi5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQgfiAuaW52YWxpZC10b29sdGlwIHsKICBkaXNwbGF5OiBibG9jazsKfQoKLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCArIC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkICsgLmZvcm0tY2hlY2stbGFiZWwgewogIGNvbG9yOiAjZGMzNTQ1Owp9Cgoud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3IsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7CiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7Cn0KCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWRlc2NyaXB0aW9uLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1kZXNjcmlwdGlvbiB7CiAgY29sb3I6ICNkYzM1NDU7Cn0KCi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDppbnZhbGlkIH4gLmN1c3RvbS1maWxlLWNvbnRyb2wsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1maWxlLWNvbnRyb2wgewogIGJvcmRlci1jb2xvcjogI2RjMzU0NTsKfQoKLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQgfiAuY3VzdG9tLWZpbGUtY29udHJvbDo6YmVmb3JlLCAuY3VzdG9tLWZpbGUtaW5wdXQuaXMtaW52YWxpZCB+IC5jdXN0b20tZmlsZS1jb250cm9sOjpiZWZvcmUgewogIGJvcmRlci1jb2xvcjogaW5oZXJpdDsKfQoKLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQ6Zm9jdXMsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIHsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7Cn0KCi5mb3JtLWlubGluZSB7CiAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgZGlzcGxheTogZmxleDsKICAtbXMtZmxleC1mbG93OiByb3cgd3JhcDsKICAgICAgZmxleC1mbG93OiByb3cgd3JhcDsKICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgICBhbGlnbi1pdGVtczogY2VudGVyOwp9CgouZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2sgewogIHdpZHRoOiAxMDAlOwp9CgpAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHsKICAuZm9ybS1pbmxpbmUgbGFiZWwgewogICAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgbWFyZ2luLWJvdHRvbTogMDsKICB9CiAgLmZvcm0taW5saW5lIC5mb3JtLWdyb3VwIHsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC1tcy1mbGV4OiAwIDAgYXV0bzsKICAgICAgICBmbGV4OiAwIDAgYXV0bzsKICAgIC1tcy1mbGV4LWZsb3c6IHJvdyB3cmFwOwogICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICBtYXJnaW4tYm90dG9tOiAwOwogIH0KICAuZm9ybS1pbmxpbmUgLmZvcm0tY29udHJvbCB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB3aWR0aDogYXV0bzsKICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgfQogIC5mb3JtLWlubGluZSAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgfQogIC5mb3JtLWlubGluZSAuaW5wdXQtZ3JvdXAgewogICAgd2lkdGg6IGF1dG87CiAgfQogIC5mb3JtLWlubGluZSAuZm9ybS1jaGVjayB7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICB3aWR0aDogYXV0bzsKICAgIG1hcmdpbi10b3A6IDA7CiAgICBtYXJnaW4tYm90dG9tOiAwOwogIH0KICAuZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2stbGFiZWwgewogICAgcGFkZGluZy1sZWZ0OiAwOwogIH0KICAuZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgbWFyZ2luLXRvcDogMDsKICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsKICAgIG1hcmdpbi1sZWZ0OiAwOwogIH0KICAuZm9ybS1pbmxpbmUgLmN1c3RvbS1jb250cm9sIHsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIHBhZGRpbmctbGVmdDogMDsKICB9CiAgLmZvcm0taW5saW5lIC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3IgewogICAgcG9zaXRpb246IHN0YXRpYzsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsKICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTsKICB9CiAgLmZvcm0taW5saW5lIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7CiAgICB0b3A6IDA7CiAgfQp9CgouYnRuIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTsKICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lOwogICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTsKICBmb250LXNpemU6IDFyZW07CiAgbGluZS1oZWlnaHQ6IDEuNTsKICBib3JkZXItcmFkaXVzOiAwLjI1cmVtOwogIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDsKfQoKLmJ0bjpmb2N1cywgLmJ0bjpob3ZlciB7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwp9CgouYnRuOmZvY3VzLCAuYnRuLmZvY3VzIHsKICBvdXRsaW5lOiAwOwogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTsKfQoKLmJ0bi5kaXNhYmxlZCwgLmJ0bjpkaXNhYmxlZCB7CiAgb3BhY2l0eTogLjY1Owp9CgouYnRuOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG46bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7CiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKfQoKYS5idG4uZGlzYWJsZWQsCmZpZWxkc2V0W2Rpc2FibGVkXSBhLmJ0biB7CiAgcG9pbnRlci1ldmVudHM6IG5vbmU7Cn0KCi5idG4tcHJpbWFyeSB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjsKICBib3JkZXItY29sb3I6ICMwMDdiZmY7Cn0KCi5idG4tcHJpbWFyeTpob3ZlciB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjlkOTsKICBib3JkZXItY29sb3I6ICMwMDYyY2M7Cn0KCi5idG4tcHJpbWFyeTpmb2N1cywgLmJ0bi1wcmltYXJ5LmZvY3VzIHsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC41KTsKfQoKLmJ0bi1wcmltYXJ5LmRpc2FibGVkLCAuYnRuLXByaW1hcnk6ZGlzYWJsZWQgewogIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7CiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmOwp9CgouYnRuLXByaW1hcnk6bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1wcmltYXJ5Om5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5zaG93ID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjJjYzsKICBib3JkZXItY29sb3I6ICMwMDVjYmY7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuNSk7Cn0KCi5idG4tc2Vjb25kYXJ5IHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjODY4ZTk2OwogIGJvcmRlci1jb2xvcjogIzg2OGU5NjsKfQoKLmJ0bi1zZWNvbmRhcnk6aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICM3MjdiODQ7CiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkOwp9CgouYnRuLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1zZWNvbmRhcnkuZm9jdXMgewogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEzNCwgMTQyLCAxNTAsIDAuNSk7Cn0KCi5idG4tc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnRuLXNlY29uZGFyeTpkaXNhYmxlZCB7CiAgYmFja2dyb3VuZC1jb2xvcjogIzg2OGU5NjsKICBib3JkZXItY29sb3I6ICM4NjhlOTY7Cn0KCi5idG4tc2Vjb25kYXJ5Om5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tc2Vjb25kYXJ5Om5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlIHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkOwogIGJvcmRlci1jb2xvcjogIzY2NmU3NjsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMzQsIDE0MiwgMTUwLCAwLjUpOwp9CgouYnRuLXN1Y2Nlc3MgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7CiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1Owp9CgouYnRuLXN1Y2Nlc3M6aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMyMTg4Mzg7CiAgYm9yZGVyLWNvbG9yOiAjMWU3ZTM0Owp9CgouYnRuLXN1Y2Nlc3M6Zm9jdXMsIC5idG4tc3VjY2Vzcy5mb2N1cyB7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNDAsIDE2NywgNjksIDAuNSk7Cn0KCi5idG4tc3VjY2Vzcy5kaXNhYmxlZCwgLmJ0bi1zdWNjZXNzOmRpc2FibGVkIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1OwogIGJvcmRlci1jb2xvcjogIzI4YTc0NTsKfQoKLmJ0bi1zdWNjZXNzOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tc3VjY2Vzczpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouc2hvdyA+IC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMxZTdlMzQ7CiAgYm9yZGVyLWNvbG9yOiAjMWM3NDMwOwogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQwLCAxNjcsIDY5LCAwLjUpOwp9CgouYnRuLWluZm8gewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMxN2EyYjg7CiAgYm9yZGVyLWNvbG9yOiAjMTdhMmI4Owp9CgouYnRuLWluZm86aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMxMzg0OTY7CiAgYm9yZGVyLWNvbG9yOiAjMTE3YThiOwp9CgouYnRuLWluZm86Zm9jdXMsIC5idG4taW5mby5mb2N1cyB7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjMsIDE2MiwgMTg0LCAwLjUpOwp9CgouYnRuLWluZm8uZGlzYWJsZWQsIC5idG4taW5mbzpkaXNhYmxlZCB7CiAgYmFja2dyb3VuZC1jb2xvcjogIzE3YTJiODsKICBib3JkZXItY29sb3I6ICMxN2EyYjg7Cn0KCi5idG4taW5mbzpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLWluZm86bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwKLnNob3cgPiAuYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlIHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE3YThiOwogIGJvcmRlci1jb2xvcjogIzEwNzA3ZjsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMywgMTYyLCAxODQsIDAuNSk7Cn0KCi5idG4td2FybmluZyB7CiAgY29sb3I6ICMxMTE7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNzsKICBib3JkZXItY29sb3I6ICNmZmMxMDc7Cn0KCi5idG4td2FybmluZzpob3ZlciB7CiAgY29sb3I6ICMxMTE7CiAgYmFja2dyb3VuZC1jb2xvcjogI2UwYTgwMDsKICBib3JkZXItY29sb3I6ICNkMzllMDA7Cn0KCi5idG4td2FybmluZzpmb2N1cywgLmJ0bi13YXJuaW5nLmZvY3VzIHsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTUsIDE5MywgNywgMC41KTsKfQoKLmJ0bi13YXJuaW5nLmRpc2FibGVkLCAuYnRuLXdhcm5pbmc6ZGlzYWJsZWQgewogIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7CiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3Owp9CgouYnRuLXdhcm5pbmc6bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi13YXJuaW5nOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5zaG93ID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZSB7CiAgY29sb3I6ICMxMTE7CiAgYmFja2dyb3VuZC1jb2xvcjogI2QzOWUwMDsKICBib3JkZXItY29sb3I6ICNjNjk1MDA7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU1LCAxOTMsIDcsIDAuNSk7Cn0KCi5idG4tZGFuZ2VyIHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1OwogIGJvcmRlci1jb2xvcjogI2RjMzU0NTsKfQoKLmJ0bi1kYW5nZXI6aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICNjODIzMzM7CiAgYm9yZGVyLWNvbG9yOiAjYmQyMTMwOwp9CgouYnRuLWRhbmdlcjpmb2N1cywgLmJ0bi1kYW5nZXIuZm9jdXMgewogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjUpOwp9CgouYnRuLWRhbmdlci5kaXNhYmxlZCwgLmJ0bi1kYW5nZXI6ZGlzYWJsZWQgewogIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7CiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1Owp9CgouYnRuLWRhbmdlcjpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLWRhbmdlcjpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouc2hvdyA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZSB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogI2JkMjEzMDsKICBib3JkZXItY29sb3I6ICNiMjFmMmQ7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIwLCA1MywgNjksIDAuNSk7Cn0KCi5idG4tbGlnaHQgewogIGNvbG9yOiAjMTExOwogIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7CiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhOwp9CgouYnRuLWxpZ2h0OmhvdmVyIHsKICBjb2xvcjogIzExMTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlNmVhOwogIGJvcmRlci1jb2xvcjogI2RhZTBlNTsKfQoKLmJ0bi1saWdodDpmb2N1cywgLmJ0bi1saWdodC5mb2N1cyB7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjQ4LCAyNDksIDI1MCwgMC41KTsKfQoKLmJ0bi1saWdodC5kaXNhYmxlZCwgLmJ0bi1saWdodDpkaXNhYmxlZCB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTsKICBib3JkZXItY29sb3I6ICNmOGY5ZmE7Cn0KCi5idG4tbGlnaHQ6bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1saWdodDpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouc2hvdyA+IC5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xlIHsKICBjb2xvcjogIzExMTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFlMGU1OwogIGJvcmRlci1jb2xvcjogI2QzZDlkZjsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNDgsIDI0OSwgMjUwLCAwLjUpOwp9CgouYnRuLWRhcmsgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7CiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwOwp9CgouYnRuLWRhcms6aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMyMzI3MmI7CiAgYm9yZGVyLWNvbG9yOiAjMWQyMTI0Owp9CgouYnRuLWRhcms6Zm9jdXMsIC5idG4tZGFyay5mb2N1cyB7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTIsIDU4LCA2NCwgMC41KTsKfQoKLmJ0bi1kYXJrLmRpc2FibGVkLCAuYnRuLWRhcms6ZGlzYWJsZWQgewogIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7CiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwOwp9CgouYnRuLWRhcms6bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1kYXJrOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5zaG93ID4gLmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZSB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzFkMjEyNDsKICBib3JkZXItY29sb3I6ICMxNzFhMWQ7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNTIsIDU4LCA2NCwgMC41KTsKfQoKLmJ0bi1vdXRsaW5lLXByaW1hcnkgewogIGNvbG9yOiAjMDA3YmZmOwogIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7CiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmOwp9CgouYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjsKICBib3JkZXItY29sb3I6ICMwMDdiZmY7Cn0KCi5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5mb2N1cyB7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuNSk7Cn0KCi5idG4tb3V0bGluZS1wcmltYXJ5LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtcHJpbWFyeTpkaXNhYmxlZCB7CiAgY29sb3I6ICMwMDdiZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCi5idG4tb3V0bGluZS1wcmltYXJ5Om5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1wcmltYXJ5Om5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5zaG93ID4gLmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmOwogIGJvcmRlci1jb2xvcjogIzAwN2JmZjsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC41KTsKfQoKLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7CiAgY29sb3I6ICM4NjhlOTY7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKICBib3JkZXItY29sb3I6ICM4NjhlOTY7Cn0KCi5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICM4NjhlOTY7CiAgYm9yZGVyLWNvbG9yOiAjODY4ZTk2Owp9CgouYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmZvY3VzIHsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMzQsIDE0MiwgMTUwLCAwLjUpOwp9CgouYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmRpc2FibGVkIHsKICBjb2xvcjogIzg2OGU5NjsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKfQoKLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5Om5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5zaG93ID4gLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICM4NjhlOTY7CiAgYm9yZGVyLWNvbG9yOiAjODY4ZTk2OwogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEzNCwgMTQyLCAxNTAsIDAuNSk7Cn0KCi5idG4tb3V0bGluZS1zdWNjZXNzIHsKICBjb2xvcjogIzI4YTc0NTsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOwogIGJvcmRlci1jb2xvcjogIzI4YTc0NTsKfQoKLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7CiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1Owp9CgouYnRuLW91dGxpbmUtc3VjY2Vzczpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZm9jdXMgewogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDQwLCAxNjcsIDY5LCAwLjUpOwp9CgouYnRuLW91dGxpbmUtc3VjY2Vzcy5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6ZGlzYWJsZWQgewogIGNvbG9yOiAjMjhhNzQ1OwogIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Owp9CgouYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouc2hvdyA+IC5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZSB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzI4YTc0NTsKICBib3JkZXItY29sb3I6ICMyOGE3NDU7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNDAsIDE2NywgNjksIDAuNSk7Cn0KCi5idG4tb3V0bGluZS1pbmZvIHsKICBjb2xvcjogIzE3YTJiODsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOwogIGJvcmRlci1jb2xvcjogIzE3YTJiODsKfQoKLmJ0bi1vdXRsaW5lLWluZm86aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMxN2EyYjg7CiAgYm9yZGVyLWNvbG9yOiAjMTdhMmI4Owp9CgouYnRuLW91dGxpbmUtaW5mbzpmb2N1cywgLmJ0bi1vdXRsaW5lLWluZm8uZm9jdXMgewogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzLCAxNjIsIDE4NCwgMC41KTsKfQoKLmJ0bi1vdXRsaW5lLWluZm8uZGlzYWJsZWQsIC5idG4tb3V0bGluZS1pbmZvOmRpc2FibGVkIHsKICBjb2xvcjogIzE3YTJiODsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKfQoKLmJ0bi1vdXRsaW5lLWluZm86bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWluZm86bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwKLnNob3cgPiAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGUgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMxN2EyYjg7CiAgYm9yZGVyLWNvbG9yOiAjMTdhMmI4OwogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzLCAxNjIsIDE4NCwgMC41KTsKfQoKLmJ0bi1vdXRsaW5lLXdhcm5pbmcgewogIGNvbG9yOiAjZmZjMTA3OwogIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7CiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3Owp9CgouYnRuLW91dGxpbmUtd2FybmluZzpob3ZlciB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNzsKICBib3JkZXItY29sb3I6ICNmZmMxMDc7Cn0KCi5idG4tb3V0bGluZS13YXJuaW5nOmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZy5mb2N1cyB7CiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjU1LCAxOTMsIDcsIDAuNSk7Cn0KCi5idG4tb3V0bGluZS13YXJuaW5nLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtd2FybmluZzpkaXNhYmxlZCB7CiAgY29sb3I6ICNmZmMxMDc7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCi5idG4tb3V0bGluZS13YXJuaW5nOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS13YXJuaW5nOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5zaG93ID4gLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlIHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3OwogIGJvcmRlci1jb2xvcjogI2ZmYzEwNzsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTUsIDE5MywgNywgMC41KTsKfQoKLmJ0bi1vdXRsaW5lLWRhbmdlciB7CiAgY29sb3I6ICNkYzM1NDU7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKICBib3JkZXItY29sb3I6ICNkYzM1NDU7Cn0KCi5idG4tb3V0bGluZS1kYW5nZXI6aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7CiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1Owp9CgouYnRuLW91dGxpbmUtZGFuZ2VyOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmZvY3VzIHsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC41KTsKfQoKLmJ0bi1vdXRsaW5lLWRhbmdlci5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWRhbmdlcjpkaXNhYmxlZCB7CiAgY29sb3I6ICNkYzM1NDU7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCi5idG4tb3V0bGluZS1kYW5nZXI6bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouc2hvdyA+IC5idG4tb3V0bGluZS1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlIHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1OwogIGJvcmRlci1jb2xvcjogI2RjMzU0NTsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC41KTsKfQoKLmJ0bi1vdXRsaW5lLWxpZ2h0IHsKICBjb2xvcjogI2Y4ZjlmYTsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOwogIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTsKfQoKLmJ0bi1vdXRsaW5lLWxpZ2h0OmhvdmVyIHsKICBjb2xvcjogIzIxMjUyOTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhOwogIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTsKfQoKLmJ0bi1vdXRsaW5lLWxpZ2h0OmZvY3VzLCAuYnRuLW91dGxpbmUtbGlnaHQuZm9jdXMgewogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDI0OCwgMjQ5LCAyNTAsIDAuNSk7Cn0KCi5idG4tb3V0bGluZS1saWdodC5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWxpZ2h0OmRpc2FibGVkIHsKICBjb2xvcjogI2Y4ZjlmYTsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKfQoKLmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1saWdodDpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLAouc2hvdyA+IC5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGUgewogIGNvbG9yOiAjMjEyNTI5OwogIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7CiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhOwogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDI0OCwgMjQ5LCAyNTAsIDAuNSk7Cn0KCi5idG4tb3V0bGluZS1kYXJrIHsKICBjb2xvcjogIzM0M2E0MDsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOwogIGJvcmRlci1jb2xvcjogIzM0M2E0MDsKfQoKLmJ0bi1vdXRsaW5lLWRhcms6aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7CiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwOwp9CgouYnRuLW91dGxpbmUtZGFyazpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcmsuZm9jdXMgewogIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDUyLCA1OCwgNjQsIDAuNSk7Cn0KCi5idG4tb3V0bGluZS1kYXJrLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtZGFyazpkaXNhYmxlZCB7CiAgY29sb3I6ICMzNDNhNDA7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCi5idG4tb3V0bGluZS1kYXJrOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1kYXJrOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsCi5zaG93ID4gLmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlIHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwOwogIGJvcmRlci1jb2xvcjogIzM0M2E0MDsKICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1MiwgNTgsIDY0LCAwLjUpOwp9CgouYnRuLWxpbmsgewogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgY29sb3I6ICMwMDdiZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCi5idG4tbGluazpob3ZlciB7CiAgY29sb3I6ICMwMDU2YjM7CiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsKfQoKLmJ0bi1saW5rOmZvY3VzLCAuYnRuLWxpbmsuZm9jdXMgewogIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgYm94LXNoYWRvdzogbm9uZTsKfQoKLmJ0bi1saW5rOmRpc2FibGVkLCAuYnRuLWxpbmsuZGlzYWJsZWQgewogIGNvbG9yOiAjODY4ZTk2Owp9CgouYnRuLWxnLCAuYnRuLWdyb3VwLWxnID4gLmJ0biB7CiAgcGFkZGluZzogMC41cmVtIDFyZW07CiAgZm9udC1zaXplOiAxLjI1cmVtOwogIGxpbmUtaGVpZ2h0OiAxLjU7CiAgYm9yZGVyLXJhZGl1czogMC4zcmVtOwp9CgouYnRuLXNtLCAuYnRuLWdyb3VwLXNtID4gLmJ0biB7CiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07CiAgZm9udC1zaXplOiAwLjg3NXJlbTsKICBsaW5lLWhlaWdodDogMS41OwogIGJvcmRlci1yYWRpdXM6IDAuMnJlbTsKfQoKLmJ0bi1ibG9jayB7CiAgZGlzcGxheTogYmxvY2s7CiAgd2lkdGg6IDEwMCU7Cn0KCi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHsKICBtYXJnaW4tdG9wOiAwLjVyZW07Cn0KCmlucHV0W3R5cGU9InN1Ym1pdCJdLmJ0bi1ibG9jaywKaW5wdXRbdHlwZT0icmVzZXQiXS5idG4tYmxvY2ssCmlucHV0W3R5cGU9ImJ1dHRvbiJdLmJ0bi1ibG9jayB7CiAgd2lkdGg6IDEwMCU7Cn0KCi5mYWRlIHsKICBvcGFjaXR5OiAwOwogIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyOwp9CgouZmFkZS5zaG93IHsKICBvcGFjaXR5OiAxOwp9CgouY29sbGFwc2UgewogIGRpc3BsYXk6IG5vbmU7Cn0KCi5jb2xsYXBzZS5zaG93IHsKICBkaXNwbGF5OiBibG9jazsKfQoKdHIuY29sbGFwc2Uuc2hvdyB7CiAgZGlzcGxheTogdGFibGUtcm93Owp9Cgp0Ym9keS5jb2xsYXBzZS5zaG93IHsKICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7Cn0KCi5jb2xsYXBzaW5nIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgaGVpZ2h0OiAwOwogIG92ZXJmbG93OiBoaWRkZW47CiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMzVzIGVhc2U7Cn0KCi5kcm9wdXAsCi5kcm9wZG93biB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9CgouZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHdpZHRoOiAwOwogIGhlaWdodDogMDsKICBtYXJnaW4tbGVmdDogMC4yNTVlbTsKICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTsKICBjb250ZW50OiAiIjsKICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZDsKICBib3JkZXItcmlnaHQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50OwogIGJvcmRlci1ib3R0b206IDA7CiAgYm9yZGVyLWxlZnQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50Owp9CgouZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7CiAgbWFyZ2luLWxlZnQ6IDA7Cn0KCi5kcm9wZG93bi1tZW51IHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAxMDAlOwogIGxlZnQ6IDA7CiAgei1pbmRleDogMTAwMDsKICBkaXNwbGF5OiBub25lOwogIGZsb2F0OiBsZWZ0OwogIG1pbi13aWR0aDogMTByZW07CiAgcGFkZGluZzogMC41cmVtIDA7CiAgbWFyZ2luOiAwLjEyNXJlbSAwIDA7CiAgZm9udC1zaXplOiAxcmVtOwogIGNvbG9yOiAjMjEyNTI5OwogIHRleHQtYWxpZ246IGxlZnQ7CiAgbGlzdC1zdHlsZTogbm9uZTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7CiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTsKICBib3JkZXItcmFkaXVzOiAwLjI1cmVtOwp9CgouZHJvcHVwIC5kcm9wZG93bi1tZW51IHsKICBtYXJnaW4tdG9wOiAwOwogIG1hcmdpbi1ib3R0b206IDAuMTI1cmVtOwp9CgouZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgd2lkdGg6IDA7CiAgaGVpZ2h0OiAwOwogIG1hcmdpbi1sZWZ0OiAwLjI1NWVtOwogIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtOwogIGNvbnRlbnQ6ICIiOwogIGJvcmRlci10b3A6IDA7CiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDsKICBib3JkZXItYm90dG9tOiAwLjNlbSBzb2xpZDsKICBib3JkZXItbGVmdDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7Cn0KCi5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIgewogIG1hcmdpbi1sZWZ0OiAwOwp9CgouZHJvcGRvd24tZGl2aWRlciB7CiAgaGVpZ2h0OiAwOwogIG1hcmdpbjogMC41cmVtIDA7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICBib3JkZXItdG9wOiAxcHggc29saWQgI2U5ZWNlZjsKfQoKLmRyb3Bkb3duLWl0ZW0gewogIGRpc3BsYXk6IGJsb2NrOwogIHdpZHRoOiAxMDAlOwogIHBhZGRpbmc6IDAuMjVyZW0gMS41cmVtOwogIGNsZWFyOiBib3RoOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgY29sb3I6ICMyMTI1Mjk7CiAgdGV4dC1hbGlnbjogaW5oZXJpdDsKICB3aGl0ZS1zcGFjZTogbm93cmFwOwogIGJhY2tncm91bmQ6IG5vbmU7CiAgYm9yZGVyOiAwOwp9CgouZHJvcGRvd24taXRlbTpmb2N1cywgLmRyb3Bkb3duLWl0ZW06aG92ZXIgewogIGNvbG9yOiAjMTYxODFiOwogIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhOwp9CgouZHJvcGRvd24taXRlbS5hY3RpdmUsIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7CiAgY29sb3I6ICNmZmY7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7Cn0KCi5kcm9wZG93bi1pdGVtLmRpc2FibGVkLCAuZHJvcGRvd24taXRlbTpkaXNhYmxlZCB7CiAgY29sb3I6ICM4NjhlOTY7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCi5kcm9wZG93bi1tZW51LnNob3cgewogIGRpc3BsYXk6IGJsb2NrOwp9CgouZHJvcGRvd24taGVhZGVyIHsKICBkaXNwbGF5OiBibG9jazsKICBwYWRkaW5nOiAwLjVyZW0gMS41cmVtOwogIG1hcmdpbi1ib3R0b206IDA7CiAgZm9udC1zaXplOiAwLjg3NXJlbTsKICBjb2xvcjogIzg2OGU5NjsKICB3aGl0ZS1zcGFjZTogbm93cmFwOwp9CgouYnRuLWdyb3VwLAouYnRuLWdyb3VwLXZlcnRpY2FsIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94OwogIGRpc3BsYXk6IGlubGluZS1mbGV4OwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7Cn0KCi5idG4tZ3JvdXAgPiAuYnRuLAouYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIC1tcy1mbGV4OiAwIDEgYXV0bzsKICAgICAgZmxleDogMCAxIGF1dG87Cn0KCi5idG4tZ3JvdXAgPiAuYnRuOmhvdmVyLAouYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpob3ZlciB7CiAgei1pbmRleDogMjsKfQoKLmJ0bi1ncm91cCA+IC5idG46Zm9jdXMsIC5idG4tZ3JvdXAgPiAuYnRuOmFjdGl2ZSwgLmJ0bi1ncm91cCA+IC5idG4uYWN0aXZlLAouYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpmb2N1cywKLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46YWN0aXZlLAouYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi5hY3RpdmUgewogIHotaW5kZXg6IDI7Cn0KCi5idG4tZ3JvdXAgLmJ0biArIC5idG4sCi5idG4tZ3JvdXAgLmJ0biArIC5idG4tZ3JvdXAsCi5idG4tZ3JvdXAgLmJ0bi1ncm91cCArIC5idG4sCi5idG4tZ3JvdXAgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAsCi5idG4tZ3JvdXAtdmVydGljYWwgLmJ0biArIC5idG4sCi5idG4tZ3JvdXAtdmVydGljYWwgLmJ0biArIC5idG4tZ3JvdXAsCi5idG4tZ3JvdXAtdmVydGljYWwgLmJ0bi1ncm91cCArIC5idG4sCi5idG4tZ3JvdXAtdmVydGljYWwgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAgewogIG1hcmdpbi1sZWZ0OiAtMXB4Owp9CgouYnRuLXRvb2xiYXIgewogIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogIGRpc3BsYXk6IGZsZXg7CiAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgICAgZmxleC13cmFwOiB3cmFwOwogIC1tcy1mbGV4LXBhY2s6IHN0YXJ0OwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7Cn0KCi5idG4tdG9vbGJhciAuaW5wdXQtZ3JvdXAgewogIHdpZHRoOiBhdXRvOwp9CgouYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7CiAgYm9yZGVyLXJhZGl1czogMDsKfQoKLmJ0bi1ncm91cCA+IC5idG46Zmlyc3QtY2hpbGQgewogIG1hcmdpbi1sZWZ0OiAwOwp9CgouYnRuLWdyb3VwID4gLmJ0bjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7CiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7CiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7Cn0KCi5idG4tZ3JvdXAgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksCi5idG4tZ3JvdXAgPiAuZHJvcGRvd24tdG9nZ2xlOm5vdCg6Zmlyc3QtY2hpbGQpIHsKICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7Cn0KCi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwIHsKICBmbG9hdDogbGVmdDsKfQoKLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4gewogIGJvcmRlci1yYWRpdXM6IDA7Cn0KCi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuOmxhc3QtY2hpbGQsCi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkgPiAuZHJvcGRvd24tdG9nZ2xlIHsKICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsKICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsKfQoKLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQgewogIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7CiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsKfQoKLmJ0biArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQgewogIHBhZGRpbmctcmlnaHQ6IDAuNTYyNXJlbTsKICBwYWRkaW5nLWxlZnQ6IDAuNTYyNXJlbTsKfQoKLmJ0biArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyIHsKICBtYXJnaW4tbGVmdDogMDsKfQoKLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5idG4tZ3JvdXAtc20gPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7CiAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07CiAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsKfQoKLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5idG4tZ3JvdXAtbGcgPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7CiAgcGFkZGluZy1yaWdodDogMC43NXJlbTsKICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07Cn0KCi5idG4tZ3JvdXAtdmVydGljYWwgewogIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogIC1tcy1mbGV4LWFsaWduOiBzdGFydDsKICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKfQoKLmJ0bi1ncm91cC12ZXJ0aWNhbCAuYnRuLAouYnRuLWdyb3VwLXZlcnRpY2FsIC5idG4tZ3JvdXAgewogIHdpZHRoOiAxMDAlOwp9CgouYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biArIC5idG4sCi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuICsgLmJ0bi1ncm91cCwKLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXAgKyAuYnRuLAouYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAgewogIG1hcmdpbi10b3A6IC0xcHg7CiAgbWFyZ2luLWxlZnQ6IDA7Cn0KCi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgewogIGJvcmRlci1yYWRpdXM6IDA7Cn0KCi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkgewogIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOwogIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7Cn0KCi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgewogIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7CiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7Cn0KCi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHsKICBib3JkZXItcmFkaXVzOiAwOwp9CgouYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bjpsYXN0LWNoaWxkLAouYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpID4gLmRyb3Bkb3duLXRvZ2dsZSB7CiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7CiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsKfQoKLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQgewogIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7CiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7Cn0KCltkYXRhLXRvZ2dsZT0iYnV0dG9ucyJdID4gLmJ0biBpbnB1dFt0eXBlPSJyYWRpbyJdLApbZGF0YS10b2dnbGU9ImJ1dHRvbnMiXSA+IC5idG4gaW5wdXRbdHlwZT0iY2hlY2tib3giXSwKW2RhdGEtdG9nZ2xlPSJidXR0b25zIl0gPiAuYnRuLWdyb3VwID4gLmJ0biBpbnB1dFt0eXBlPSJyYWRpbyJdLApbZGF0YS10b2dnbGU9ImJ1dHRvbnMiXSA+IC5idG4tZ3JvdXAgPiAuYnRuIGlucHV0W3R5cGU9ImNoZWNrYm94Il0gewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBjbGlwOiByZWN0KDAsIDAsIDAsIDApOwogIHBvaW50ZXItZXZlbnRzOiBub25lOwp9CgouaW5wdXQtZ3JvdXAgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4OwogIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoOwogICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDsKICB3aWR0aDogMTAwJTsKfQoKLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB6LWluZGV4OiAyOwogIC1tcy1mbGV4OiAxIDEgYXV0bzsKICAgICAgZmxleDogMSAxIGF1dG87CiAgd2lkdGg6IDElOwogIG1hcmdpbi1ib3R0b206IDA7Cn0KCi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmZvY3VzLCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDphY3RpdmUsIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmhvdmVyIHsKICB6LWluZGV4OiAzOwp9CgouaW5wdXQtZ3JvdXAtYWRkb24sCi5pbnB1dC1ncm91cC1idG4sCi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4OwogIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KCi5pbnB1dC1ncm91cC1hZGRvbjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpLAouaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCksCi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgewogIGJvcmRlci1yYWRpdXM6IDA7Cn0KCi5pbnB1dC1ncm91cC1hZGRvbiwKLmlucHV0LWdyb3VwLWJ0biB7CiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKfQoKLmlucHV0LWdyb3VwLWFkZG9uIHsKICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtOwogIG1hcmdpbi1ib3R0b206IDA7CiAgZm9udC1zaXplOiAxcmVtOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgbGluZS1oZWlnaHQ6IDEuNTsKICBjb2xvcjogIzQ5NTA1NzsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjsKICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhOwogIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07Cn0KCi5pbnB1dC1ncm91cC1hZGRvbi5mb3JtLWNvbnRyb2wtc20sCi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbiwKLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5pbnB1dC1ncm91cC1hZGRvbi5idG4gewogIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtOwogIGZvbnQtc2l6ZTogMC44NzVyZW07CiAgYm9yZGVyLXJhZGl1czogMC4ycmVtOwp9CgouaW5wdXQtZ3JvdXAtYWRkb24uZm9ybS1jb250cm9sLWxnLAouaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sCi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1idG4gPiAuaW5wdXQtZ3JvdXAtYWRkb24uYnRuIHsKICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsKICBmb250LXNpemU6IDEuMjVyZW07CiAgYm9yZGVyLXJhZGl1czogMC4zcmVtOwp9CgouaW5wdXQtZ3JvdXAtYWRkb24gaW5wdXRbdHlwZT0icmFkaW8iXSwKLmlucHV0LWdyb3VwLWFkZG9uIGlucHV0W3R5cGU9ImNoZWNrYm94Il0gewogIG1hcmdpbi10b3A6IDA7Cn0KCi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOm5vdCg6bGFzdC1jaGlsZCksCi5pbnB1dC1ncm91cC1hZGRvbjpub3QoOmxhc3QtY2hpbGQpLAouaW5wdXQtZ3JvdXAtYnRuOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLAouaW5wdXQtZ3JvdXAtYnRuOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLWdyb3VwID4gLmJ0biwKLmlucHV0LWdyb3VwLWJ0bjpub3QoOmxhc3QtY2hpbGQpID4gLmRyb3Bkb3duLXRvZ2dsZSwKLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksCi5pbnB1dC1ncm91cC1idG46bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHsKICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsKICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsKfQoKLmlucHV0LWdyb3VwLWFkZG9uOm5vdCg6bGFzdC1jaGlsZCkgewogIGJvcmRlci1yaWdodDogMDsKfQoKLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bm90KDpmaXJzdC1jaGlsZCksCi5pbnB1dC1ncm91cC1hZGRvbjpub3QoOmZpcnN0LWNoaWxkKSwKLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sCi5pbnB1dC1ncm91cC1idG46bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLWdyb3VwID4gLmJ0biwKLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5kcm9wZG93bi10b2dnbGUsCi5pbnB1dC1ncm91cC1idG46bm90KDpsYXN0LWNoaWxkKSA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksCi5pbnB1dC1ncm91cC1idG46bm90KDpsYXN0LWNoaWxkKSA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHsKICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7Cn0KCi5mb3JtLWNvbnRyb2wgKyAuaW5wdXQtZ3JvdXAtYWRkb246bm90KDpmaXJzdC1jaGlsZCkgewogIGJvcmRlci1sZWZ0OiAwOwp9CgouaW5wdXQtZ3JvdXAtYnRuIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLW1zLWZsZXgtYWxpZ246IHN0cmV0Y2g7CiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOwogIGZvbnQtc2l6ZTogMDsKICB3aGl0ZS1zcGFjZTogbm93cmFwOwp9CgouaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9CgouaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biArIC5idG4gewogIG1hcmdpbi1sZWZ0OiAtMXB4Owp9CgouaW5wdXQtZ3JvdXAtYnRuID4gLmJ0bjpmb2N1cywgLmlucHV0LWdyb3VwLWJ0biA+IC5idG46YWN0aXZlLCAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0bjpob3ZlciB7CiAgei1pbmRleDogMzsKfQoKLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4gKyAuYnRuIHsKICBtYXJnaW4tbGVmdDogMDsKfQoKLmlucHV0LWdyb3VwLWJ0bjpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biwKLmlucHV0LWdyb3VwLWJ0bjpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bi1ncm91cCB7CiAgbWFyZ2luLXJpZ2h0OiAtMXB4Owp9CgouaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biwKLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4tZ3JvdXAgewogIHotaW5kZXg6IDI7CiAgbWFyZ2luLWxlZnQ6IDA7Cn0KCi5pbnB1dC1ncm91cC1idG46bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkLAouaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZCB7CiAgbWFyZ2luLWxlZnQ6IC0xcHg7Cn0KCi5pbnB1dC1ncm91cC1idG46bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZvY3VzLCAuaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjphY3RpdmUsIC5pbnB1dC1ncm91cC1idG46bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmhvdmVyLAouaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bi1ncm91cDpmb2N1cywKLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4tZ3JvdXA6YWN0aXZlLAouaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bi1ncm91cDpob3ZlciB7CiAgei1pbmRleDogMzsKfQoKLmN1c3RvbS1jb250cm9sIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94OwogIGRpc3BsYXk6IGlubGluZS1mbGV4OwogIG1pbi1oZWlnaHQ6IDEuNXJlbTsKICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTsKICBtYXJnaW4tcmlnaHQ6IDFyZW07Cn0KCi5jdXN0b20tY29udHJvbC1pbnB1dCB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwogIG9wYWNpdHk6IDA7Cn0KCi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjsKfQoKLmN1c3RvbS1jb250cm9sLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7CiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTsKfQoKLmN1c3RvbS1jb250cm9sLWlucHV0OmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3IgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICNiM2Q3ZmY7Cn0KCi5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3IgewogIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7Cn0KCi5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1kZXNjcmlwdGlvbiB7CiAgY29sb3I6ICM4NjhlOTY7Cn0KCi5jdXN0b20tY29udHJvbC1pbmRpY2F0b3IgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDAuMjVyZW07CiAgbGVmdDogMDsKICBkaXNwbGF5OiBibG9jazsKICB3aWR0aDogMXJlbTsKICBoZWlnaHQ6IDFyZW07CiAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lOwogICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOwogIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsKICBiYWNrZ3JvdW5kLXNpemU6IDUwJSA1MCU7Cn0KCi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7CiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTsKfQoKLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3IgewogIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZmlsbD0nJTIzZmZmJyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjYgMi45NzQgNy4yNSA4IDIuMTkzeicvJTNFJTNDL3N2ZyUzRSIpOwp9CgouY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7CiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjsKICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNCclM0UlM0NwYXRoIHN0cm9rZT0nJTIzZmZmJyBkPSdNMCAyaDQnLyUzRSUzQy9zdmclM0UiKTsKfQoKLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHsKICBib3JkZXItcmFkaXVzOiA1MCU7Cn0KCi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHsKICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzRSUzQ2NpcmNsZSByPSczJyBmaWxsPSclMjNmZmYnLyUzRSUzQy9zdmclM0UiKTsKfQoKLmN1c3RvbS1jb250cm9scy1zdGFja2VkIHsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4OwogIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwp9CgouY3VzdG9tLWNvbnRyb2xzLXN0YWNrZWQgLmN1c3RvbS1jb250cm9sIHsKICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtOwp9CgouY3VzdG9tLWNvbnRyb2xzLXN0YWNrZWQgLmN1c3RvbS1jb250cm9sICsgLmN1c3RvbS1jb250cm9sIHsKICBtYXJnaW4tbGVmdDogMDsKfQoKLmN1c3RvbS1zZWxlY3QgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICBtYXgtd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiBjYWxjKDIuMjVyZW0gKyAycHgpOwogIHBhZGRpbmc6IDAuMzc1cmVtIDEuNzVyZW0gMC4zNzVyZW0gMC43NXJlbTsKICBsaW5lLWhlaWdodDogMS41OwogIGNvbG9yOiAjNDk1MDU3OwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM0UlM0NwYXRoIGZpbGw9JyUyMzMzMycgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNFJTNDL3N2ZyUzRSIpIG5vLXJlcGVhdCByaWdodCAwLjc1cmVtIGNlbnRlcjsKICBiYWNrZ3JvdW5kLXNpemU6IDhweCAxMHB4OwogIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7CiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTsKICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7CiAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lOwogICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTsKfQoKLmN1c3RvbS1zZWxlY3Q6Zm9jdXMgewogIGJvcmRlci1jb2xvcjogIzgwYmRmZjsKICBvdXRsaW5lOiBub25lOwp9CgouY3VzdG9tLXNlbGVjdDpmb2N1czo6LW1zLXZhbHVlIHsKICBjb2xvcjogIzQ5NTA1NzsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwp9CgouY3VzdG9tLXNlbGVjdFttdWx0aXBsZV0gewogIGhlaWdodDogYXV0bzsKICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOwp9CgouY3VzdG9tLXNlbGVjdDpkaXNhYmxlZCB7CiAgY29sb3I6ICM4NjhlOTY7CiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjsKfQoKLmN1c3RvbS1zZWxlY3Q6Oi1tcy1leHBhbmQgewogIG9wYWNpdHk6IDA7Cn0KCi5jdXN0b20tc2VsZWN0LXNtIHsKICBoZWlnaHQ6IGNhbGMoMS44MTI1cmVtICsgMnB4KTsKICBwYWRkaW5nLXRvcDogMC4zNzVyZW07CiAgcGFkZGluZy1ib3R0b206IDAuMzc1cmVtOwogIGZvbnQtc2l6ZTogNzUlOwp9CgouY3VzdG9tLWZpbGUgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgbWF4LXdpZHRoOiAxMDAlOwogIGhlaWdodDogY2FsYygyLjI1cmVtICsgMnB4KTsKICBtYXJnaW4tYm90dG9tOiAwOwp9CgouY3VzdG9tLWZpbGUtaW5wdXQgewogIG1pbi13aWR0aDogMTRyZW07CiAgbWF4LXdpZHRoOiAxMDAlOwogIGhlaWdodDogY2FsYygyLjI1cmVtICsgMnB4KTsKICBtYXJnaW46IDA7CiAgb3BhY2l0eTogMDsKfQoKLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWNvbnRyb2wgewogIGJveC1zaGFkb3c6IDAgMCAwIDAuMDc1cmVtICNmZmYsIDAgMCAwIDAuMnJlbSAjMDA3YmZmOwp9CgouY3VzdG9tLWZpbGUtY29udHJvbCB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDogMDsKICByaWdodDogMDsKICBsZWZ0OiAwOwogIHotaW5kZXg6IDU7CiAgaGVpZ2h0OiBjYWxjKDIuMjVyZW0gKyAycHgpOwogIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07CiAgbGluZS1oZWlnaHQ6IDEuNTsKICBjb2xvcjogIzQ5NTA1NzsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwogICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTsKICBib3JkZXItcmFkaXVzOiAwLjI1cmVtOwp9CgouY3VzdG9tLWZpbGUtY29udHJvbDpsYW5nKGVuKTplbXB0eTo6YWZ0ZXIgewogIGNvbnRlbnQ6ICJDaG9vc2UgZmlsZS4uLiI7Cn0KCi5jdXN0b20tZmlsZS1jb250cm9sOjpiZWZvcmUgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IC0xcHg7CiAgcmlnaHQ6IC0xcHg7CiAgYm90dG9tOiAtMXB4OwogIHotaW5kZXg6IDY7CiAgZGlzcGxheTogYmxvY2s7CiAgaGVpZ2h0OiBjYWxjKDIuMjVyZW0gKyAycHgpOwogIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07CiAgbGluZS1oZWlnaHQ6IDEuNTsKICBjb2xvcjogIzQ5NTA1NzsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmOwogIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7CiAgYm9yZGVyLXJhZGl1czogMCAwLjI1cmVtIDAuMjVyZW0gMDsKfQoKLmN1c3RvbS1maWxlLWNvbnRyb2w6bGFuZyhlbik6OmJlZm9yZSB7CiAgY29udGVudDogIkJyb3dzZSI7Cn0KCi5uYXYgewogIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogIGRpc3BsYXk6IGZsZXg7CiAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgICAgZmxleC13cmFwOiB3cmFwOwogIHBhZGRpbmctbGVmdDogMDsKICBtYXJnaW4tYm90dG9tOiAwOwogIGxpc3Qtc3R5bGU6IG5vbmU7Cn0KCi5uYXYtbGluayB7CiAgZGlzcGxheTogYmxvY2s7CiAgcGFkZGluZzogMC41cmVtIDFyZW07Cn0KCi5uYXYtbGluazpmb2N1cywgLm5hdi1saW5rOmhvdmVyIHsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7Cn0KCi5uYXYtbGluay5kaXNhYmxlZCB7CiAgY29sb3I6ICM4NjhlOTY7Cn0KCi5uYXYtdGFicyB7CiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7Cn0KCi5uYXYtdGFicyAubmF2LWl0ZW0gewogIG1hcmdpbi1ib3R0b206IC0xcHg7Cn0KCi5uYXYtdGFicyAubmF2LWxpbmsgewogIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwogIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07CiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07Cn0KCi5uYXYtdGFicyAubmF2LWxpbms6Zm9jdXMsIC5uYXYtdGFicyAubmF2LWxpbms6aG92ZXIgewogIGJvcmRlci1jb2xvcjogI2U5ZWNlZiAjZTllY2VmICNkZGQ7Cn0KCi5uYXYtdGFicyAubmF2LWxpbmsuZGlzYWJsZWQgewogIGNvbG9yOiAjODY4ZTk2OwogIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KCi5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLAoubmF2LXRhYnMgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHsKICBjb2xvcjogIzQ5NTA1NzsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogIGJvcmRlci1jb2xvcjogI2RkZCAjZGRkICNmZmY7Cn0KCi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7CiAgbWFyZ2luLXRvcDogLTFweDsKICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOwp9CgoubmF2LXBpbGxzIC5uYXYtbGluayB7CiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTsKfQoKLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlLAoubmF2LXBpbGxzIC5zaG93ID4gLm5hdi1saW5rIHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmOwp9CgoubmF2LWZpbGwgLm5hdi1pdGVtIHsKICAtbXMtZmxleDogMSAxIGF1dG87CiAgICAgIGZsZXg6IDEgMSBhdXRvOwogIHRleHQtYWxpZ246IGNlbnRlcjsKfQoKLm5hdi1qdXN0aWZpZWQgLm5hdi1pdGVtIHsKICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDsKICAgICAgZmxleC1iYXNpczogMDsKICAtbXMtZmxleC1wb3NpdGl2ZTogMTsKICAgICAgZmxleC1ncm93OiAxOwogIHRleHQtYWxpZ246IGNlbnRlcjsKfQoKLnRhYi1jb250ZW50ID4gLnRhYi1wYW5lIHsKICBkaXNwbGF5OiBub25lOwp9CgoudGFiLWNvbnRlbnQgPiAuYWN0aXZlIHsKICBkaXNwbGF5OiBibG9jazsKfQoKLm5hdmJhciB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogIGRpc3BsYXk6IGZsZXg7CiAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgICAgZmxleC13cmFwOiB3cmFwOwogIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgLW1zLWZsZXgtcGFjazoganVzdGlmeTsKICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogIHBhZGRpbmc6IDAuNXJlbSAxcmVtOwp9CgoubmF2YmFyID4gLmNvbnRhaW5lciwKLm5hdmJhciA+IC5jb250YWluZXItZmx1aWQgewogIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogIGRpc3BsYXk6IGZsZXg7CiAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICAgICAgZmxleC13cmFwOiB3cmFwOwogIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgLW1zLWZsZXgtcGFjazoganVzdGlmeTsKICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwp9CgoubmF2YmFyLWJyYW5kIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgcGFkZGluZy10b3A6IDAuMzEyNXJlbTsKICBwYWRkaW5nLWJvdHRvbTogMC4zMTI1cmVtOwogIG1hcmdpbi1yaWdodDogMXJlbTsKICBmb250LXNpemU6IDEuMjVyZW07CiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7CiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKfQoKLm5hdmJhci1icmFuZDpmb2N1cywgLm5hdmJhci1icmFuZDpob3ZlciB7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwp9CgoubmF2YmFyLW5hdiB7CiAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgZGlzcGxheTogZmxleDsKICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICBwYWRkaW5nLWxlZnQ6IDA7CiAgbWFyZ2luLWJvdHRvbTogMDsKICBsaXN0LXN0eWxlOiBub25lOwp9CgoubmF2YmFyLW5hdiAubmF2LWxpbmsgewogIHBhZGRpbmctcmlnaHQ6IDA7CiAgcGFkZGluZy1sZWZ0OiAwOwp9CgoubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7CiAgcG9zaXRpb246IHN0YXRpYzsKICBmbG9hdDogbm9uZTsKfQoKLm5hdmJhci10ZXh0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgcGFkZGluZy10b3A6IDAuNXJlbTsKICBwYWRkaW5nLWJvdHRvbTogMC41cmVtOwp9CgoubmF2YmFyLWNvbGxhcHNlIHsKICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMTAwJTsKICAgICAgZmxleC1iYXNpczogMTAwJTsKICAtbXMtZmxleC1wb3NpdGl2ZTogMTsKICAgICAgZmxleC1ncm93OiAxOwogIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KCi5uYXZiYXItdG9nZ2xlciB7CiAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtOwogIGZvbnQtc2l6ZTogMS4yNXJlbTsKICBsaW5lLWhlaWdodDogMTsKICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsKICBib3JkZXItcmFkaXVzOiAwLjI1cmVtOwp9CgoubmF2YmFyLXRvZ2dsZXI6Zm9jdXMsIC5uYXZiYXItdG9nZ2xlcjpob3ZlciB7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwp9CgoubmF2YmFyLXRvZ2dsZXItaWNvbiB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHdpZHRoOiAxLjVlbTsKICBoZWlnaHQ6IDEuNWVtOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgY29udGVudDogIiI7CiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7CiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkgewogIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lciwKICAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXItZmx1aWQgewogICAgcGFkZGluZy1yaWdodDogMDsKICAgIHBhZGRpbmctbGVmdDogMDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgewogIC5uYXZiYXItZXhwYW5kLXNtIHsKICAgIC1tcy1mbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwOwogICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OwogIH0KICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiB7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OwogIH0KICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgfQogIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51LXJpZ2h0IHsKICAgIHJpZ2h0OiAwOwogICAgbGVmdDogYXV0bzsKICB9CiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLm5hdi1saW5rIHsKICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtOwogICAgcGFkZGluZy1sZWZ0OiAuNXJlbTsKICB9CiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLAogIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1mbHVpZCB7CiAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7CiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7CiAgfQogIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItY29sbGFwc2UgewogICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDsKICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiBhdXRvOwogICAgICAgIGZsZXgtYmFzaXM6IGF1dG87CiAgfQogIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItdG9nZ2xlciB7CiAgICBkaXNwbGF5OiBub25lOwogIH0KICAubmF2YmFyLWV4cGFuZC1zbSAuZHJvcHVwIC5kcm9wZG93bi1tZW51IHsKICAgIHRvcDogYXV0bzsKICAgIGJvdHRvbTogMTAwJTsKICB9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgewogIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lciwKICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItZmx1aWQgewogICAgcGFkZGluZy1yaWdodDogMDsKICAgIHBhZGRpbmctbGVmdDogMDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgewogIC5uYXZiYXItZXhwYW5kLW1kIHsKICAgIC1tcy1mbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwOwogICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OwogIH0KICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiB7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OwogIH0KICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgfQogIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51LXJpZ2h0IHsKICAgIHJpZ2h0OiAwOwogICAgbGVmdDogYXV0bzsKICB9CiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHsKICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtOwogICAgcGFkZGluZy1sZWZ0OiAuNXJlbTsKICB9CiAgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLAogIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1mbHVpZCB7CiAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7CiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7CiAgfQogIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItY29sbGFwc2UgewogICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDsKICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiBhdXRvOwogICAgICAgIGZsZXgtYmFzaXM6IGF1dG87CiAgfQogIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItdG9nZ2xlciB7CiAgICBkaXNwbGF5OiBub25lOwogIH0KICAubmF2YmFyLWV4cGFuZC1tZCAuZHJvcHVwIC5kcm9wZG93bi1tZW51IHsKICAgIHRvcDogYXV0bzsKICAgIGJvdHRvbTogMTAwJTsKICB9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgewogIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lciwKICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItZmx1aWQgewogICAgcGFkZGluZy1yaWdodDogMDsKICAgIHBhZGRpbmctbGVmdDogMDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgewogIC5uYXZiYXItZXhwYW5kLWxnIHsKICAgIC1tcy1mbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwOwogICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OwogIH0KICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiB7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OwogIH0KICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgfQogIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51LXJpZ2h0IHsKICAgIHJpZ2h0OiAwOwogICAgbGVmdDogYXV0bzsKICB9CiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLm5hdi1saW5rIHsKICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtOwogICAgcGFkZGluZy1sZWZ0OiAuNXJlbTsKICB9CiAgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLAogIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci1mbHVpZCB7CiAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7CiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7CiAgfQogIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItY29sbGFwc2UgewogICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDsKICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsKICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiBhdXRvOwogICAgICAgIGZsZXgtYmFzaXM6IGF1dG87CiAgfQogIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItdG9nZ2xlciB7CiAgICBkaXNwbGF5OiBub25lOwogIH0KICAubmF2YmFyLWV4cGFuZC1sZyAuZHJvcHVwIC5kcm9wZG93bi1tZW51IHsKICAgIHRvcDogYXV0bzsKICAgIGJvdHRvbTogMTAwJTsKICB9Cn0KCkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHsKICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIsCiAgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLWZsdWlkIHsKICAgIHBhZGRpbmctcmlnaHQ6IDA7CiAgICBwYWRkaW5nLWxlZnQ6IDA7CiAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7CiAgLm5hdmJhci1leHBhbmQteGwgewogICAgLW1zLWZsZXgtZmxvdzogcm93IG5vd3JhcDsKICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAtbXMtZmxleC1wYWNrOiBzdGFydDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7CiAgfQogIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IHsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7CiAgfQogIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB9CiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUtcmlnaHQgewogICAgcmlnaHQ6IDA7CiAgICBsZWZ0OiBhdXRvOwogIH0KICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAubmF2LWxpbmsgewogICAgcGFkZGluZy1yaWdodDogLjVyZW07CiAgICBwYWRkaW5nLWxlZnQ6IC41cmVtOwogIH0KICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIsCiAgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLWZsdWlkIHsKICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDsKICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDsKICB9CiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1jb2xsYXBzZSB7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50OwogICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OwogICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IGF1dG87CiAgICAgICAgZmxleC1iYXNpczogYXV0bzsKICB9CiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci10b2dnbGVyIHsKICAgIGRpc3BsYXk6IG5vbmU7CiAgfQogIC5uYXZiYXItZXhwYW5kLXhsIC5kcm9wdXAgLmRyb3Bkb3duLW1lbnUgewogICAgdG9wOiBhdXRvOwogICAgYm90dG9tOiAxMDAlOwogIH0KfQoKLm5hdmJhci1leHBhbmQgewogIC1tcy1mbGV4LWZsb3c6IHJvdyBub3dyYXA7CiAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsKICAtbXMtZmxleC1wYWNrOiBzdGFydDsKICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0Owp9CgoubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXIsCi5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1mbHVpZCB7CiAgcGFkZGluZy1yaWdodDogMDsKICBwYWRkaW5nLWxlZnQ6IDA7Cn0KCi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IHsKICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKfQoKLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKfQoKLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUtcmlnaHQgewogIHJpZ2h0OiAwOwogIGxlZnQ6IGF1dG87Cn0KCi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5uYXYtbGluayB7CiAgcGFkZGluZy1yaWdodDogLjVyZW07CiAgcGFkZGluZy1sZWZ0OiAuNXJlbTsKfQoKLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLAoubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItZmx1aWQgewogIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDsKICAgICAgZmxleC13cmFwOiBub3dyYXA7Cn0KCi5uYXZiYXItZXhwYW5kIC5uYXZiYXItY29sbGFwc2UgewogIGRpc3BsYXk6IC1tcy1mbGV4Ym94ICFpbXBvcnRhbnQ7CiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OwogIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiBhdXRvOwogICAgICBmbGV4LWJhc2lzOiBhdXRvOwp9CgoubmF2YmFyLWV4cGFuZCAubmF2YmFyLXRvZ2dsZXIgewogIGRpc3BsYXk6IG5vbmU7Cn0KCi5uYXZiYXItZXhwYW5kIC5kcm9wdXAgLmRyb3Bkb3duLW1lbnUgewogIHRvcDogYXV0bzsKICBib3R0b206IDEwMCU7Cn0KCi5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZCB7CiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsKfQoKLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmZvY3VzLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6aG92ZXIgewogIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7Cn0KCi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHsKICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOwp9CgoubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cywgLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIgewogIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7Cn0KCi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHsKICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpOwp9CgoubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5zaG93ID4gLm5hdi1saW5rLAoubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5hY3RpdmUgPiAubmF2LWxpbmssCi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csCi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSB7CiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsKfQoKLm5hdmJhci1saWdodCAubmF2YmFyLXRvZ2dsZXIgewogIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7CiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7Cn0KCi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyLWljb24gewogIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9J3JnYmEoMCwgMCwgMCwgMC41KScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzRSUzQy9zdmclM0UiKTsKfQoKLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgewogIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7Cn0KCi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGEgewogIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7Cn0KCi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGE6Zm9jdXMsIC5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGE6aG92ZXIgewogIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7Cn0KCi5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kIHsKICBjb2xvcjogI2ZmZjsKfQoKLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6Zm9jdXMsIC5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmhvdmVyIHsKICBjb2xvcjogI2ZmZjsKfQoKLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluayB7CiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsKfQoKLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cywgLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpob3ZlciB7CiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7Cn0KCi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQgewogIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpOwp9CgoubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmssCi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAuYWN0aXZlID4gLm5hdi1saW5rLAoubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csCi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlIHsKICBjb2xvcjogI2ZmZjsKfQoKLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlciB7CiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsKICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTsKfQoKLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlci1pY29uIHsKICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPSdyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSknIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFIik7Cn0KCi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgewogIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7Cn0KCi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYSB7CiAgY29sb3I6ICNmZmY7Cn0KCi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpmb2N1cywgLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhOmhvdmVyIHsKICBjb2xvcjogI2ZmZjsKfQoKLmNhcmQgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4OwogIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogIG1pbi13aWR0aDogMDsKICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7CiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7CiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTsKfQoKLmNhcmQgPiBociB7CiAgbWFyZ2luLXJpZ2h0OiAwOwogIG1hcmdpbi1sZWZ0OiAwOwp9CgouY2FyZCA+IC5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQgewogIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07CiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07Cn0KCi5jYXJkID4gLmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQgewogIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtOwogIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07Cn0KCi5jYXJkLWJvZHkgewogIC1tcy1mbGV4OiAxIDEgYXV0bzsKICAgICAgZmxleDogMSAxIGF1dG87CiAgcGFkZGluZzogMS4yNXJlbTsKfQoKLmNhcmQtdGl0bGUgewogIG1hcmdpbi1ib3R0b206IDAuNzVyZW07Cn0KCi5jYXJkLXN1YnRpdGxlIHsKICBtYXJnaW4tdG9wOiAtMC4zNzVyZW07CiAgbWFyZ2luLWJvdHRvbTogMDsKfQoKLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHsKICBtYXJnaW4tYm90dG9tOiAwOwp9CgouY2FyZC1saW5rOmhvdmVyIHsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7Cn0KCi5jYXJkLWxpbmsgKyAuY2FyZC1saW5rIHsKICBtYXJnaW4tbGVmdDogMS4yNXJlbTsKfQoKLmNhcmQtaGVhZGVyIHsKICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07CiAgbWFyZ2luLWJvdHRvbTogMDsKICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDMpOwogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsKfQoKLmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkIHsKICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpIGNhbGMoMC4yNXJlbSAtIDFweCkgMCAwOwp9CgouY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHsKICBib3JkZXItdG9wOiAwOwp9CgouY2FyZC1mb290ZXIgewogIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTsKICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDMpOwogIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsKfQoKLmNhcmQtZm9vdGVyOmxhc3QtY2hpbGQgewogIGJvcmRlci1yYWRpdXM6IDAgMCBjYWxjKDAuMjVyZW0gLSAxcHgpIGNhbGMoMC4yNXJlbSAtIDFweCk7Cn0KCi5jYXJkLWhlYWRlci10YWJzIHsKICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsKICBtYXJnaW4tYm90dG9tOiAtMC43NXJlbTsKICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOwogIGJvcmRlci1ib3R0b206IDA7Cn0KCi5jYXJkLWhlYWRlci1waWxscyB7CiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07CiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsKfQoKLmNhcmQtaW1nLW92ZXJsYXkgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDA7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAwOwogIGxlZnQ6IDA7CiAgcGFkZGluZzogMS4yNXJlbTsKfQoKLmNhcmQtaW1nIHsKICB3aWR0aDogMTAwJTsKICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpOwp9CgouY2FyZC1pbWctdG9wIHsKICB3aWR0aDogMTAwJTsKICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpOwogIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpOwp9CgouY2FyZC1pbWctYm90dG9tIHsKICB3aWR0aDogMTAwJTsKICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTsKICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpOwp9CgouY2FyZC1kZWNrIHsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4OwogIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwp9CgouY2FyZC1kZWNrIC5jYXJkIHsKICBtYXJnaW4tYm90dG9tOiAxNXB4Owp9CgpAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHsKICAuY2FyZC1kZWNrIHsKICAgIC1tcy1mbGV4LWZsb3c6IHJvdyB3cmFwOwogICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7CiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4OwogICAgbWFyZ2luLWxlZnQ6IC0xNXB4OwogIH0KICAuY2FyZC1kZWNrIC5jYXJkIHsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogICAgZGlzcGxheTogZmxleDsKICAgIC1tcy1mbGV4OiAxIDAgMCU7CiAgICAgICAgZmxleDogMSAwIDAlOwogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgIG1hcmdpbi1yaWdodDogMTVweDsKICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICBtYXJnaW4tbGVmdDogMTVweDsKICB9Cn0KCi5jYXJkLWdyb3VwIHsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4OwogIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwp9CgouY2FyZC1ncm91cCAuY2FyZCB7CiAgbWFyZ2luLWJvdHRvbTogMTVweDsKfQoKQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7CiAgLmNhcmQtZ3JvdXAgewogICAgLW1zLWZsZXgtZmxvdzogcm93IHdyYXA7CiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDsKICB9CiAgLmNhcmQtZ3JvdXAgLmNhcmQgewogICAgLW1zLWZsZXg6IDEgMCAwJTsKICAgICAgICBmbGV4OiAxIDAgMCU7CiAgICBtYXJnaW4tYm90dG9tOiAwOwogIH0KICAuY2FyZC1ncm91cCAuY2FyZCArIC5jYXJkIHsKICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgYm9yZGVyLWxlZnQ6IDA7CiAgfQogIC5jYXJkLWdyb3VwIC5jYXJkOmZpcnN0LWNoaWxkIHsKICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOwogICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7CiAgfQogIC5jYXJkLWdyb3VwIC5jYXJkOmZpcnN0LWNoaWxkIC5jYXJkLWltZy10b3AgewogICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7CiAgfQogIC5jYXJkLWdyb3VwIC5jYXJkOmZpcnN0LWNoaWxkIC5jYXJkLWltZy1ib3R0b20gewogICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7CiAgfQogIC5jYXJkLWdyb3VwIC5jYXJkOmxhc3QtY2hpbGQgewogICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7CiAgfQogIC5jYXJkLWdyb3VwIC5jYXJkOmxhc3QtY2hpbGQgLmNhcmQtaW1nLXRvcCB7CiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOwogIH0KICAuY2FyZC1ncm91cCAuY2FyZDpsYXN0LWNoaWxkIC5jYXJkLWltZy1ib3R0b20gewogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsKICB9CiAgLmNhcmQtZ3JvdXAgLmNhcmQ6b25seS1jaGlsZCB7CiAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtOwogIH0KICAuY2FyZC1ncm91cCAuY2FyZDpvbmx5LWNoaWxkIC5jYXJkLWltZy10b3AgewogICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTsKICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtOwogIH0KICAuY2FyZC1ncm91cCAuY2FyZDpvbmx5LWNoaWxkIC5jYXJkLWltZy1ib3R0b20gewogICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW07CiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtOwogIH0KICAuY2FyZC1ncm91cCAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCg6b25seS1jaGlsZCkgewogICAgYm9yZGVyLXJhZGl1czogMDsKICB9CiAgLmNhcmQtZ3JvdXAgLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpub3QoOm9ubHktY2hpbGQpIC5jYXJkLWltZy10b3AsCiAgLmNhcmQtZ3JvdXAgLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpub3QoOm9ubHktY2hpbGQpIC5jYXJkLWltZy1ib3R0b20gewogICAgYm9yZGVyLXJhZGl1czogMDsKICB9Cn0KCi5jYXJkLWNvbHVtbnMgLmNhcmQgewogIG1hcmdpbi1ib3R0b206IDAuNzVyZW07Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgewogIC5jYXJkLWNvbHVtbnMgewogICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDM7CiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMzsKICAgIC13ZWJraXQtY29sdW1uLWdhcDogMS4yNXJlbTsKICAgICAgICAgICAgY29sdW1uLWdhcDogMS4yNXJlbTsKICB9CiAgLmNhcmQtY29sdW1ucyAuY2FyZCB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB3aWR0aDogMTAwJTsKICB9Cn0KCi5icmVhZGNydW1iIHsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4OwogIC1tcy1mbGV4LXdyYXA6IHdyYXA7CiAgICAgIGZsZXgtd3JhcDogd3JhcDsKICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07CiAgbWFyZ2luLWJvdHRvbTogMXJlbTsKICBsaXN0LXN0eWxlOiBub25lOwogIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7CiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTsKfQoKLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTsKICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsKICBjb2xvcjogIzg2OGU5NjsKICBjb250ZW50OiAiLyI7Cn0KCi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUgewogIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwp9CgouYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7Cn0KCi5icmVhZGNydW1iLWl0ZW0uYWN0aXZlIHsKICBjb2xvcjogIzg2OGU5NjsKfQoKLnBhZ2luYXRpb24gewogIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogIGRpc3BsYXk6IGZsZXg7CiAgcGFkZGluZy1sZWZ0OiAwOwogIGxpc3Qtc3R5bGU6IG5vbmU7CiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTsKfQoKLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHsKICBtYXJnaW4tbGVmdDogMDsKICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtOwogIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07Cn0KCi5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHsKICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTsKICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbTsKfQoKLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayB7CiAgei1pbmRleDogMjsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmOwogIGJvcmRlci1jb2xvcjogIzAwN2JmZjsKfQoKLnBhZ2UtaXRlbS5kaXNhYmxlZCAucGFnZS1saW5rIHsKICBjb2xvcjogIzg2OGU5NjsKICBwb2ludGVyLWV2ZW50czogbm9uZTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogIGJvcmRlci1jb2xvcjogI2RkZDsKfQoKLnBhZ2UtbGluayB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGRpc3BsYXk6IGJsb2NrOwogIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtOwogIG1hcmdpbi1sZWZ0OiAtMXB4OwogIGxpbmUtaGVpZ2h0OiAxLjI1OwogIGNvbG9yOiAjMDA3YmZmOwogIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDsKfQoKLnBhZ2UtbGluazpmb2N1cywgLnBhZ2UtbGluazpob3ZlciB7CiAgY29sb3I6ICMwMDU2YjM7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7CiAgYm9yZGVyLWNvbG9yOiAjZGRkOwp9CgoucGFnaW5hdGlvbi1sZyAucGFnZS1saW5rIHsKICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTsKICBmb250LXNpemU6IDEuMjVyZW07CiAgbGluZS1oZWlnaHQ6IDEuNTsKfQoKLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHsKICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjNyZW07CiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4zcmVtOwp9CgoucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7CiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuM3JlbTsKICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4zcmVtOwp9CgoucGFnaW5hdGlvbi1zbSAucGFnZS1saW5rIHsKICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTsKICBmb250LXNpemU6IDAuODc1cmVtOwogIGxpbmUtaGVpZ2h0OiAxLjU7Cn0KCi5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7CiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4ycmVtOwogIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMnJlbTsKfQoKLnBhZ2luYXRpb24tc20gLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsgewogIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjJyZW07CiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMnJlbTsKfQoKLmJhZGdlIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgcGFkZGluZzogMC4yNWVtIDAuNGVtOwogIGZvbnQtc2l6ZTogNzUlOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgbGluZS1oZWlnaHQ6IDE7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOwogIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07Cn0KCi5iYWRnZTplbXB0eSB7CiAgZGlzcGxheTogbm9uZTsKfQoKLmJ0biAuYmFkZ2UgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB0b3A6IC0xcHg7Cn0KCi5iYWRnZS1waWxsIHsKICBwYWRkaW5nLXJpZ2h0OiAwLjZlbTsKICBwYWRkaW5nLWxlZnQ6IDAuNmVtOwogIGJvcmRlci1yYWRpdXM6IDEwcmVtOwp9CgouYmFkZ2UtcHJpbWFyeSB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjsKfQoKLmJhZGdlLXByaW1hcnlbaHJlZl06Zm9jdXMsIC5iYWRnZS1wcmltYXJ5W2hyZWZdOmhvdmVyIHsKICBjb2xvcjogI2ZmZjsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjJjYzsKfQoKLmJhZGdlLXNlY29uZGFyeSB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzg2OGU5NjsKfQoKLmJhZGdlLXNlY29uZGFyeVtocmVmXTpmb2N1cywgLmJhZGdlLXNlY29uZGFyeVtocmVmXTpob3ZlciB7CiAgY29sb3I6ICNmZmY7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7Cn0KCi5iYWRnZS1zdWNjZXNzIHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1Owp9CgouYmFkZ2Utc3VjY2Vzc1tocmVmXTpmb2N1cywgLmJhZGdlLXN1Y2Nlc3NbaHJlZl06aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWU3ZTM0Owp9CgouYmFkZ2UtaW5mbyB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzE3YTJiODsKfQoKLmJhZGdlLWluZm9baHJlZl06Zm9jdXMsIC5iYWRnZS1pbmZvW2hyZWZdOmhvdmVyIHsKICBjb2xvcjogI2ZmZjsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgYmFja2dyb3VuZC1jb2xvcjogIzExN2E4YjsKfQoKLmJhZGdlLXdhcm5pbmcgewogIGNvbG9yOiAjMTExOwogIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7Cn0KCi5iYWRnZS13YXJuaW5nW2hyZWZdOmZvY3VzLCAuYmFkZ2Utd2FybmluZ1tocmVmXTpob3ZlciB7CiAgY29sb3I6ICMxMTE7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGJhY2tncm91bmQtY29sb3I6ICNkMzllMDA7Cn0KCi5iYWRnZS1kYW5nZXIgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7Cn0KCi5iYWRnZS1kYW5nZXJbaHJlZl06Zm9jdXMsIC5iYWRnZS1kYW5nZXJbaHJlZl06aG92ZXIgewogIGNvbG9yOiAjZmZmOwogIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmQyMTMwOwp9CgouYmFkZ2UtbGlnaHQgewogIGNvbG9yOiAjMTExOwogIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7Cn0KCi5iYWRnZS1saWdodFtocmVmXTpmb2N1cywgLmJhZGdlLWxpZ2h0W2hyZWZdOmhvdmVyIHsKICBjb2xvcjogIzExMTsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgYmFja2dyb3VuZC1jb2xvcjogI2RhZTBlNTsKfQoKLmJhZGdlLWRhcmsgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7Cn0KCi5iYWRnZS1kYXJrW2hyZWZdOmZvY3VzLCAuYmFkZ2UtZGFya1tocmVmXTpob3ZlciB7CiAgY29sb3I6ICNmZmY7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGJhY2tncm91bmQtY29sb3I6ICMxZDIxMjQ7Cn0KCi5qdW1ib3Ryb24gewogIHBhZGRpbmc6IDJyZW0gMXJlbTsKICBtYXJnaW4tYm90dG9tOiAycmVtOwogIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7CiAgYm9yZGVyLXJhZGl1czogMC4zcmVtOwp9CgpAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHsKICAuanVtYm90cm9uIHsKICAgIHBhZGRpbmc6IDRyZW0gMnJlbTsKICB9Cn0KCi5qdW1ib3Ryb24tZmx1aWQgewogIHBhZGRpbmctcmlnaHQ6IDA7CiAgcGFkZGluZy1sZWZ0OiAwOwogIGJvcmRlci1yYWRpdXM6IDA7Cn0KCi5hbGVydCB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTsKICBtYXJnaW4tYm90dG9tOiAxcmVtOwogIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwogIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07Cn0KCi5hbGVydC1oZWFkaW5nIHsKICBjb2xvcjogaW5oZXJpdDsKfQoKLmFsZXJ0LWxpbmsgewogIGZvbnQtd2VpZ2h0OiA3MDA7Cn0KCi5hbGVydC1kaXNtaXNzaWJsZSAuY2xvc2UgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDA7CiAgcmlnaHQ6IDA7CiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtOwogIGNvbG9yOiBpbmhlcml0Owp9CgouYWxlcnQtcHJpbWFyeSB7CiAgY29sb3I6ICMwMDQwODU7CiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZTVmZjsKICBib3JkZXItY29sb3I6ICNiOGRhZmY7Cn0KCi5hbGVydC1wcmltYXJ5IGhyIHsKICBib3JkZXItdG9wLWNvbG9yOiAjOWZjZGZmOwp9CgouYWxlcnQtcHJpbWFyeSAuYWxlcnQtbGluayB7CiAgY29sb3I6ICMwMDI3NTI7Cn0KCi5hbGVydC1zZWNvbmRhcnkgewogIGNvbG9yOiAjNDY0YTRlOwogIGJhY2tncm91bmQtY29sb3I6ICNlN2U4ZWE7CiAgYm9yZGVyLWNvbG9yOiAjZGRkZmUyOwp9CgouYWxlcnQtc2Vjb25kYXJ5IGhyIHsKICBib3JkZXItdG9wLWNvbG9yOiAjY2ZkMmQ2Owp9CgouYWxlcnQtc2Vjb25kYXJ5IC5hbGVydC1saW5rIHsKICBjb2xvcjogIzJlMzEzMzsKfQoKLmFsZXJ0LXN1Y2Nlc3MgewogIGNvbG9yOiAjMTU1NzI0OwogIGJhY2tncm91bmQtY29sb3I6ICNkNGVkZGE7CiAgYm9yZGVyLWNvbG9yOiAjYzNlNmNiOwp9CgouYWxlcnQtc3VjY2VzcyBociB7CiAgYm9yZGVyLXRvcC1jb2xvcjogI2IxZGZiYjsKfQoKLmFsZXJ0LXN1Y2Nlc3MgLmFsZXJ0LWxpbmsgewogIGNvbG9yOiAjMGIyZTEzOwp9CgouYWxlcnQtaW5mbyB7CiAgY29sb3I6ICMwYzU0NjA7CiAgYmFja2dyb3VuZC1jb2xvcjogI2QxZWNmMTsKICBib3JkZXItY29sb3I6ICNiZWU1ZWI7Cn0KCi5hbGVydC1pbmZvIGhyIHsKICBib3JkZXItdG9wLWNvbG9yOiAjYWJkZGU1Owp9CgouYWxlcnQtaW5mbyAuYWxlcnQtbGluayB7CiAgY29sb3I6ICMwNjJjMzM7Cn0KCi5hbGVydC13YXJuaW5nIHsKICBjb2xvcjogIzg1NjQwNDsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkOwogIGJvcmRlci1jb2xvcjogI2ZmZWViYTsKfQoKLmFsZXJ0LXdhcm5pbmcgaHIgewogIGJvcmRlci10b3AtY29sb3I6ICNmZmU4YTE7Cn0KCi5hbGVydC13YXJuaW5nIC5hbGVydC1saW5rIHsKICBjb2xvcjogIzUzM2YwMzsKfQoKLmFsZXJ0LWRhbmdlciB7CiAgY29sb3I6ICM3MjFjMjQ7CiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZDdkYTsKICBib3JkZXItY29sb3I6ICNmNWM2Y2I7Cn0KCi5hbGVydC1kYW5nZXIgaHIgewogIGJvcmRlci10b3AtY29sb3I6ICNmMWIwYjc7Cn0KCi5hbGVydC1kYW5nZXIgLmFsZXJ0LWxpbmsgewogIGNvbG9yOiAjNDkxMjE3Owp9CgouYWxlcnQtbGlnaHQgewogIGNvbG9yOiAjODE4MTgyOwogIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7CiAgYm9yZGVyLWNvbG9yOiAjZmRmZGZlOwp9CgouYWxlcnQtbGlnaHQgaHIgewogIGJvcmRlci10b3AtY29sb3I6ICNlY2VjZjY7Cn0KCi5hbGVydC1saWdodCAuYWxlcnQtbGluayB7CiAgY29sb3I6ICM2ODY4Njg7Cn0KCi5hbGVydC1kYXJrIHsKICBjb2xvcjogIzFiMWUyMTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDZkOGQ5OwogIGJvcmRlci1jb2xvcjogI2M2YzhjYTsKfQoKLmFsZXJ0LWRhcmsgaHIgewogIGJvcmRlci10b3AtY29sb3I6ICNiOWJiYmU7Cn0KCi5hbGVydC1kYXJrIC5hbGVydC1saW5rIHsKICBjb2xvcjogIzA0MDUwNTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHsKICBmcm9tIHsKICAgIGJhY2tncm91bmQtcG9zaXRpb246IDFyZW0gMDsKICB9CiAgdG8gewogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOwogIH0KfQoKQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7CiAgZnJvbSB7CiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxcmVtIDA7CiAgfQogIHRvIHsKICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsKICB9Cn0KCi5wcm9ncmVzcyB7CiAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgZGlzcGxheTogZmxleDsKICBoZWlnaHQ6IDFyZW07CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICBmb250LXNpemU6IDAuNzVyZW07CiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjsKICBib3JkZXItcmFkaXVzOiAwLjI1cmVtOwp9CgoucHJvZ3Jlc3MtYmFyIHsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4OwogIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgLW1zLWZsZXgtcGFjazogY2VudGVyOwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmOwp9CgoucHJvZ3Jlc3MtYmFyLXN0cmlwZWQgewogIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpOwogIGJhY2tncm91bmQtc2l6ZTogMXJlbSAxcmVtOwp9CgoucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHsKICAtd2Via2l0LWFuaW1hdGlvbjogcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMXMgbGluZWFyIGluZmluaXRlOwogICAgICAgICAgYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAxcyBsaW5lYXIgaW5maW5pdGU7Cn0KCi5tZWRpYSB7CiAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgZGlzcGxheTogZmxleDsKICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7CiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0Owp9CgoubWVkaWEtYm9keSB7CiAgLW1zLWZsZXg6IDE7CiAgICAgIGZsZXg6IDE7Cn0KCi5saXN0LWdyb3VwIHsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4OwogIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogIHBhZGRpbmctbGVmdDogMDsKICBtYXJnaW4tYm90dG9tOiAwOwp9CgoubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7CiAgd2lkdGg6IDEwMCU7CiAgY29sb3I6ICM0OTUwNTc7CiAgdGV4dC1hbGlnbjogaW5oZXJpdDsKfQoKLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsIC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyIHsKICBjb2xvcjogIzQ5NTA1NzsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTsKfQoKLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246YWN0aXZlIHsKICBjb2xvcjogIzIxMjUyOTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmOwp9CgoubGlzdC1ncm91cC1pdGVtIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgZGlzcGxheTogYmxvY2s7CiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtOwogIG1hcmdpbi1ib3R0b206IC0xcHg7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsKfQoKLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7CiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTsKICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTsKfQoKLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHsKICBtYXJnaW4tYm90dG9tOiAwOwogIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtOwogIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07Cn0KCi5saXN0LWdyb3VwLWl0ZW06Zm9jdXMsIC5saXN0LWdyb3VwLWl0ZW06aG92ZXIgewogIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKfQoKLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCwgLmxpc3QtZ3JvdXAtaXRlbTpkaXNhYmxlZCB7CiAgY29sb3I6ICM4NjhlOTY7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKfQoKLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgewogIHotaW5kZXg6IDI7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjsKICBib3JkZXItY29sb3I6ICMwMDdiZmY7Cn0KCi5saXN0LWdyb3VwLWZsdXNoIC5saXN0LWdyb3VwLWl0ZW0gewogIGJvcmRlci1yaWdodDogMDsKICBib3JkZXItbGVmdDogMDsKICBib3JkZXItcmFkaXVzOiAwOwp9CgoubGlzdC1ncm91cC1mbHVzaDpmaXJzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHsKICBib3JkZXItdG9wOiAwOwp9CgoubGlzdC1ncm91cC1mbHVzaDpsYXN0LWNoaWxkIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7CiAgYm9yZGVyLWJvdHRvbTogMDsKfQoKLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5IHsKICBjb2xvcjogIzAwNDA4NTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjhkYWZmOwp9CgphLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5LApidXR0b24ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkgewogIGNvbG9yOiAjMDA0MDg1Owp9CgphLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5OmZvY3VzLCBhLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5OmhvdmVyLApidXR0b24ubGlzdC1ncm91cC1pdGVtLXByaW1hcnk6Zm9jdXMsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeTpob3ZlciB7CiAgY29sb3I6ICMwMDQwODU7CiAgYmFja2dyb3VuZC1jb2xvcjogIzlmY2RmZjsKfQoKYS5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5hY3RpdmUsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5hY3RpdmUgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMwMDQwODU7CiAgYm9yZGVyLWNvbG9yOiAjMDA0MDg1Owp9CgoubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeSB7CiAgY29sb3I6ICM0NjRhNGU7CiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZGZlMjsKfQoKYS5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5LApidXR0b24ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeSB7CiAgY29sb3I6ICM0NjRhNGU7Cn0KCmEubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeTpmb2N1cywgYS5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5OmhvdmVyLApidXR0b24ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeTpmb2N1cywKYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnk6aG92ZXIgewogIGNvbG9yOiAjNDY0YTRlOwogIGJhY2tncm91bmQtY29sb3I6ICNjZmQyZDY7Cn0KCmEubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5hY3RpdmUsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5LmFjdGl2ZSB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzQ2NGE0ZTsKICBib3JkZXItY29sb3I6ICM0NjRhNGU7Cn0KCi5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyB7CiAgY29sb3I6ICMxNTU3MjQ7CiAgYmFja2dyb3VuZC1jb2xvcjogI2MzZTZjYjsKfQoKYS5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcywKYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzIHsKICBjb2xvcjogIzE1NTcyNDsKfQoKYS5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzczpmb2N1cywgYS5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzczpob3ZlciwKYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzOmZvY3VzLApidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3M6aG92ZXIgewogIGNvbG9yOiAjMTU1NzI0OwogIGJhY2tncm91bmQtY29sb3I6ICNiMWRmYmI7Cn0KCmEubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlLApidXR0b24ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MuYWN0aXZlIHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTU1NzI0OwogIGJvcmRlci1jb2xvcjogIzE1NTcyNDsKfQoKLmxpc3QtZ3JvdXAtaXRlbS1pbmZvIHsKICBjb2xvcjogIzBjNTQ2MDsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmVlNWViOwp9CgphLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLApidXR0b24ubGlzdC1ncm91cC1pdGVtLWluZm8gewogIGNvbG9yOiAjMGM1NDYwOwp9CgphLmxpc3QtZ3JvdXAtaXRlbS1pbmZvOmZvY3VzLCBhLmxpc3QtZ3JvdXAtaXRlbS1pbmZvOmhvdmVyLApidXR0b24ubGlzdC1ncm91cC1pdGVtLWluZm86Zm9jdXMsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mbzpob3ZlciB7CiAgY29sb3I6ICMwYzU0NjA7CiAgYmFja2dyb3VuZC1jb2xvcjogI2FiZGRlNTsKfQoKYS5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmUsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0taW5mby5hY3RpdmUgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICMwYzU0NjA7CiAgYm9yZGVyLWNvbG9yOiAjMGM1NDYwOwp9CgoubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcgewogIGNvbG9yOiAjODU2NDA0OwogIGJhY2tncm91bmQtY29sb3I6ICNmZmVlYmE7Cn0KCmEubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZyB7CiAgY29sb3I6ICM4NTY0MDQ7Cn0KCmEubGlzdC1ncm91cC1pdGVtLXdhcm5pbmc6Zm9jdXMsIGEubGlzdC1ncm91cC1pdGVtLXdhcm5pbmc6aG92ZXIsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZzpmb2N1cywKYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nOmhvdmVyIHsKICBjb2xvcjogIzg1NjQwNDsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlOGExOwp9CgphLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZSwKYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmFjdGl2ZSB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzg1NjQwNDsKICBib3JkZXItY29sb3I6ICM4NTY0MDQ7Cn0KCi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIHsKICBjb2xvcjogIzcyMWMyNDsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVjNmNiOwp9CgphLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIHsKICBjb2xvcjogIzcyMWMyNDsKfQoKYS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyOmZvY3VzLCBhLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXI6aG92ZXIsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyOmZvY3VzLApidXR0b24ubGlzdC1ncm91cC1pdGVtLWRhbmdlcjpob3ZlciB7CiAgY29sb3I6ICM3MjFjMjQ7CiAgYmFja2dyb3VuZC1jb2xvcjogI2YxYjBiNzsKfQoKYS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmFjdGl2ZSwKYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIuYWN0aXZlIHsKICBjb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzIxYzI0OwogIGJvcmRlci1jb2xvcjogIzcyMWMyNDsKfQoKLmxpc3QtZ3JvdXAtaXRlbS1saWdodCB7CiAgY29sb3I6ICM4MTgxODI7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZmRmZTsKfQoKYS5saXN0LWdyb3VwLWl0ZW0tbGlnaHQsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQgewogIGNvbG9yOiAjODE4MTgyOwp9CgphLmxpc3QtZ3JvdXAtaXRlbS1saWdodDpmb2N1cywgYS5saXN0LWdyb3VwLWl0ZW0tbGlnaHQ6aG92ZXIsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQ6Zm9jdXMsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQ6aG92ZXIgewogIGNvbG9yOiAjODE4MTgyOwogIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZjY7Cn0KCmEubGlzdC1ncm91cC1pdGVtLWxpZ2h0LmFjdGl2ZSwKYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5hY3RpdmUgewogIGNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY29sb3I6ICM4MTgxODI7CiAgYm9yZGVyLWNvbG9yOiAjODE4MTgyOwp9CgoubGlzdC1ncm91cC1pdGVtLWRhcmsgewogIGNvbG9yOiAjMWIxZTIxOwogIGJhY2tncm91bmQtY29sb3I6ICNjNmM4Y2E7Cn0KCmEubGlzdC1ncm91cC1pdGVtLWRhcmssCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFyayB7CiAgY29sb3I6ICMxYjFlMjE7Cn0KCmEubGlzdC1ncm91cC1pdGVtLWRhcms6Zm9jdXMsIGEubGlzdC1ncm91cC1pdGVtLWRhcms6aG92ZXIsCmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tZGFyazpmb2N1cywKYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1kYXJrOmhvdmVyIHsKICBjb2xvcjogIzFiMWUyMTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjliYmJlOwp9CgphLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmFjdGl2ZSwKYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmFjdGl2ZSB7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZC1jb2xvcjogIzFiMWUyMTsKICBib3JkZXItY29sb3I6ICMxYjFlMjE7Cn0KCi5jbG9zZSB7CiAgZmxvYXQ6IHJpZ2h0OwogIGZvbnQtc2l6ZTogMS41cmVtOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgbGluZS1oZWlnaHQ6IDE7CiAgY29sb3I6ICMwMDA7CiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgI2ZmZjsKICBvcGFjaXR5OiAuNTsKfQoKLmNsb3NlOmZvY3VzLCAuY2xvc2U6aG92ZXIgewogIGNvbG9yOiAjMDAwOwogIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICBvcGFjaXR5OiAuNzU7Cn0KCmJ1dHRvbi5jbG9zZSB7CiAgcGFkZGluZzogMDsKICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICBib3JkZXI6IDA7CiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwp9CgoubW9kYWwtb3BlbiB7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKfQoKLm1vZGFsIHsKICBwb3NpdGlvbjogZml4ZWQ7CiAgdG9wOiAwOwogIHJpZ2h0OiAwOwogIGJvdHRvbTogMDsKICBsZWZ0OiAwOwogIHotaW5kZXg6IDEwNTA7CiAgZGlzcGxheTogbm9uZTsKICBvdmVyZmxvdzogaGlkZGVuOwogIG91dGxpbmU6IDA7Cn0KCi5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cgewogIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjUlKTsKICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0yNSUpOwp9CgoubW9kYWwuc2hvdyAubW9kYWwtZGlhbG9nIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOwogICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7Cn0KCi5tb2RhbC1vcGVuIC5tb2RhbCB7CiAgb3ZlcmZsb3cteDogaGlkZGVuOwogIG92ZXJmbG93LXk6IGF1dG87Cn0KCi5tb2RhbC1kaWFsb2cgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB3aWR0aDogYXV0bzsKICBtYXJnaW46IDEwcHg7CiAgcG9pbnRlci1ldmVudHM6IG5vbmU7Cn0KCi5tb2RhbC1jb250ZW50IHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgZGlzcGxheTogZmxleDsKICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICBwb2ludGVyLWV2ZW50czogYXV0bzsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7CiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpOwogIGJvcmRlci1yYWRpdXM6IDAuM3JlbTsKICBvdXRsaW5lOiAwOwp9CgoubW9kYWwtYmFja2Ryb3AgewogIHBvc2l0aW9uOiBmaXhlZDsKICB0b3A6IDA7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAwOwogIGxlZnQ6IDA7CiAgei1pbmRleDogMTA0MDsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOwp9CgoubW9kYWwtYmFja2Ryb3AuZmFkZSB7CiAgb3BhY2l0eTogMDsKfQoKLm1vZGFsLWJhY2tkcm9wLnNob3cgewogIG9wYWNpdHk6IDAuNTsKfQoKLm1vZGFsLWhlYWRlciB7CiAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgZGlzcGxheTogZmxleDsKICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7CiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OwogIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7CiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICBwYWRkaW5nOiAxNXB4OwogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTllY2VmOwogIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuM3JlbTsKICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4zcmVtOwp9CgoubW9kYWwtaGVhZGVyIC5jbG9zZSB7CiAgcGFkZGluZzogMTVweDsKICBtYXJnaW46IC0xNXB4IC0xNXB4IC0xNXB4IGF1dG87Cn0KCi5tb2RhbC10aXRsZSB7CiAgbWFyZ2luLWJvdHRvbTogMDsKICBsaW5lLWhlaWdodDogMS41Owp9CgoubW9kYWwtYm9keSB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIC1tcy1mbGV4OiAxIDEgYXV0bzsKICAgICAgZmxleDogMSAxIGF1dG87CiAgcGFkZGluZzogMTVweDsKfQoKLm1vZGFsLWZvb3RlciB7CiAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgZGlzcGxheTogZmxleDsKICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogIC1tcy1mbGV4LXBhY2s6IGVuZDsKICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsKICBwYWRkaW5nOiAxNXB4OwogIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllY2VmOwp9CgoubW9kYWwtZm9vdGVyID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHsKICBtYXJnaW4tbGVmdDogLjI1cmVtOwp9CgoubW9kYWwtZm9vdGVyID4gOm5vdCg6bGFzdC1jaGlsZCkgewogIG1hcmdpbi1yaWdodDogLjI1cmVtOwp9CgoubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IC05OTk5cHg7CiAgd2lkdGg6IDUwcHg7CiAgaGVpZ2h0OiA1MHB4OwogIG92ZXJmbG93OiBzY3JvbGw7Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgewogIC5tb2RhbC1kaWFsb2cgewogICAgbWF4LXdpZHRoOiA1MDBweDsKICAgIG1hcmdpbjogMzBweCBhdXRvOwogIH0KICAubW9kYWwtc20gewogICAgbWF4LXdpZHRoOiAzMDBweDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgewogIC5tb2RhbC1sZyB7CiAgICBtYXgtd2lkdGg6IDgwMHB4OwogIH0KfQoKLnRvb2x0aXAgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAxMDcwOwogIGRpc3BsYXk6IGJsb2NrOwogIG1hcmdpbjogMDsKICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU2Vnb2UgVUkiLCBSb2JvdG8sICJIZWx2ZXRpY2EgTmV1ZSIsIEFyaWFsLCBzYW5zLXNlcmlmLCAiQXBwbGUgQ29sb3IgRW1vamkiLCAiU2Vnb2UgVUkgRW1vamkiLCAiU2Vnb2UgVUkgU3ltYm9sIjsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBsaW5lLWhlaWdodDogMS41OwogIHRleHQtYWxpZ246IGxlZnQ7CiAgdGV4dC1hbGlnbjogc3RhcnQ7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIHRleHQtc2hhZG93OiBub25lOwogIHRleHQtdHJhbnNmb3JtOiBub25lOwogIGxldHRlci1zcGFjaW5nOiBub3JtYWw7CiAgd29yZC1icmVhazogbm9ybWFsOwogIHdvcmQtc3BhY2luZzogbm9ybWFsOwogIHdoaXRlLXNwYWNlOiBub3JtYWw7CiAgbGluZS1icmVhazogYXV0bzsKICBmb250LXNpemU6IDAuODc1cmVtOwogIHdvcmQtd3JhcDogYnJlYWstd29yZDsKICBvcGFjaXR5OiAwOwp9CgoudG9vbHRpcC5zaG93IHsKICBvcGFjaXR5OiAwLjk7Cn0KCi50b29sdGlwIC5hcnJvdyB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGRpc3BsYXk6IGJsb2NrOwogIHdpZHRoOiA1cHg7CiAgaGVpZ2h0OiA1cHg7Cn0KCi50b29sdGlwIC5hcnJvdzo6YmVmb3JlIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsKICBib3JkZXItc3R5bGU6IHNvbGlkOwp9CgoudG9vbHRpcC5icy10b29sdGlwLXRvcCwgLnRvb2x0aXAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj0idG9wIl0gewogIHBhZGRpbmc6IDVweCAwOwp9CgoudG9vbHRpcC5icy10b29sdGlwLXRvcCAuYXJyb3csIC50b29sdGlwLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49InRvcCJdIC5hcnJvdyB7CiAgYm90dG9tOiAwOwp9CgoudG9vbHRpcC5icy10b29sdGlwLXRvcCAuYXJyb3c6OmJlZm9yZSwgLnRvb2x0aXAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj0idG9wIl0gLmFycm93OjpiZWZvcmUgewogIG1hcmdpbi1sZWZ0OiAtM3B4OwogIGNvbnRlbnQ6ICIiOwogIGJvcmRlci13aWR0aDogNXB4IDVweCAwOwogIGJvcmRlci10b3AtY29sb3I6ICMwMDA7Cn0KCi50b29sdGlwLmJzLXRvb2x0aXAtcmlnaHQsIC50b29sdGlwLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49InJpZ2h0Il0gewogIHBhZGRpbmc6IDAgNXB4Owp9CgoudG9vbHRpcC5icy10b29sdGlwLXJpZ2h0IC5hcnJvdywgLnRvb2x0aXAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj0icmlnaHQiXSAuYXJyb3cgewogIGxlZnQ6IDA7Cn0KCi50b29sdGlwLmJzLXRvb2x0aXAtcmlnaHQgLmFycm93OjpiZWZvcmUsIC50b29sdGlwLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49InJpZ2h0Il0gLmFycm93OjpiZWZvcmUgewogIG1hcmdpbi10b3A6IC0zcHg7CiAgY29udGVudDogIiI7CiAgYm9yZGVyLXdpZHRoOiA1cHggNXB4IDVweCAwOwogIGJvcmRlci1yaWdodC1jb2xvcjogIzAwMDsKfQoKLnRvb2x0aXAuYnMtdG9vbHRpcC1ib3R0b20sIC50b29sdGlwLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49ImJvdHRvbSJdIHsKICBwYWRkaW5nOiA1cHggMDsKfQoKLnRvb2x0aXAuYnMtdG9vbHRpcC1ib3R0b20gLmFycm93LCAudG9vbHRpcC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePSJib3R0b20iXSAuYXJyb3cgewogIHRvcDogMDsKfQoKLnRvb2x0aXAuYnMtdG9vbHRpcC1ib3R0b20gLmFycm93OjpiZWZvcmUsIC50b29sdGlwLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49ImJvdHRvbSJdIC5hcnJvdzo6YmVmb3JlIHsKICBtYXJnaW4tbGVmdDogLTNweDsKICBjb250ZW50OiAiIjsKICBib3JkZXItd2lkdGg6IDAgNXB4IDVweDsKICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDAwOwp9CgoudG9vbHRpcC5icy10b29sdGlwLWxlZnQsIC50b29sdGlwLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49ImxlZnQiXSB7CiAgcGFkZGluZzogMCA1cHg7Cn0KCi50b29sdGlwLmJzLXRvb2x0aXAtbGVmdCAuYXJyb3csIC50b29sdGlwLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49ImxlZnQiXSAuYXJyb3cgewogIHJpZ2h0OiAwOwp9CgoudG9vbHRpcC5icy10b29sdGlwLWxlZnQgLmFycm93OjpiZWZvcmUsIC50b29sdGlwLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49ImxlZnQiXSAuYXJyb3c6OmJlZm9yZSB7CiAgcmlnaHQ6IDA7CiAgbWFyZ2luLXRvcDogLTNweDsKICBjb250ZW50OiAiIjsKICBib3JkZXItd2lkdGg6IDVweCAwIDVweCA1cHg7CiAgYm9yZGVyLWxlZnQtY29sb3I6ICMwMDA7Cn0KCi50b29sdGlwLWlubmVyIHsKICBtYXgtd2lkdGg6IDIwMHB4OwogIHBhZGRpbmc6IDNweCA4cHg7CiAgY29sb3I6ICNmZmY7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIGJhY2tncm91bmQtY29sb3I6ICMwMDA7CiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTsKfQoKLnBvcG92ZXIgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICB6LWluZGV4OiAxMDYwOwogIGRpc3BsYXk6IGJsb2NrOwogIG1heC13aWR0aDogMjc2cHg7CiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgIlNlZ29lIFVJIiwgUm9ib3RvLCAiSGVsdmV0aWNhIE5ldWUiLCBBcmlhbCwgc2Fucy1zZXJpZiwgIkFwcGxlIENvbG9yIEVtb2ppIiwgIlNlZ29lIFVJIEVtb2ppIiwgIlNlZ29lIFVJIFN5bWJvbCI7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgbGluZS1oZWlnaHQ6IDEuNTsKICB0ZXh0LWFsaWduOiBsZWZ0OwogIHRleHQtYWxpZ246IHN0YXJ0OwogIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICB0ZXh0LXNoYWRvdzogbm9uZTsKICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsKICBsZXR0ZXItc3BhY2luZzogbm9ybWFsOwogIHdvcmQtYnJlYWs6IG5vcm1hbDsKICB3b3JkLXNwYWNpbmc6IG5vcm1hbDsKICB3aGl0ZS1zcGFjZTogbm9ybWFsOwogIGxpbmUtYnJlYWs6IGF1dG87CiAgZm9udC1zaXplOiAwLjg3NXJlbTsKICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94OwogIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTsKICBib3JkZXItcmFkaXVzOiAwLjNyZW07Cn0KCi5wb3BvdmVyIC5hcnJvdyB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGRpc3BsYXk6IGJsb2NrOwogIHdpZHRoOiAwLjhyZW07CiAgaGVpZ2h0OiAwLjRyZW07Cn0KCi5wb3BvdmVyIC5hcnJvdzo6YmVmb3JlLAoucG9wb3ZlciAuYXJyb3c6OmFmdGVyIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgZGlzcGxheTogYmxvY2s7CiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsKICBib3JkZXItc3R5bGU6IHNvbGlkOwp9CgoucG9wb3ZlciAuYXJyb3c6OmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgYm9yZGVyLXdpZHRoOiAwLjhyZW07Cn0KCi5wb3BvdmVyIC5hcnJvdzo6YWZ0ZXIgewogIGNvbnRlbnQ6ICIiOwogIGJvcmRlci13aWR0aDogMC44cmVtOwp9CgoucG9wb3Zlci5icy1wb3BvdmVyLXRvcCwgLnBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj0idG9wIl0gewogIG1hcmdpbi1ib3R0b206IDAuOHJlbTsKfQoKLnBvcG92ZXIuYnMtcG9wb3Zlci10b3AgLmFycm93LCAucG9wb3Zlci5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePSJ0b3AiXSAuYXJyb3cgewogIGJvdHRvbTogMDsKfQoKLnBvcG92ZXIuYnMtcG9wb3Zlci10b3AgLmFycm93OjpiZWZvcmUsIC5wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49InRvcCJdIC5hcnJvdzo6YmVmb3JlLAoucG9wb3Zlci5icy1wb3BvdmVyLXRvcCAuYXJyb3c6OmFmdGVyLCAucG9wb3Zlci5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePSJ0b3AiXSAuYXJyb3c6OmFmdGVyIHsKICBib3JkZXItYm90dG9tLXdpZHRoOiAwOwp9CgoucG9wb3Zlci5icy1wb3BvdmVyLXRvcCAuYXJyb3c6OmJlZm9yZSwgLnBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj0idG9wIl0gLmFycm93OjpiZWZvcmUgewogIGJvdHRvbTogLTAuOHJlbTsKICBtYXJnaW4tbGVmdDogLTAuOHJlbTsKICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpOwp9CgoucG9wb3Zlci5icy1wb3BvdmVyLXRvcCAuYXJyb3c6OmFmdGVyLCAucG9wb3Zlci5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePSJ0b3AiXSAuYXJyb3c6OmFmdGVyIHsKICBib3R0b206IGNhbGMoKDAuOHJlbSAtIDFweCkgKiAtMSk7CiAgbWFyZ2luLWxlZnQ6IC0wLjhyZW07CiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjsKfQoKLnBvcG92ZXIuYnMtcG9wb3Zlci1yaWdodCwgLnBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj0icmlnaHQiXSB7CiAgbWFyZ2luLWxlZnQ6IDAuOHJlbTsKfQoKLnBvcG92ZXIuYnMtcG9wb3Zlci1yaWdodCAuYXJyb3csIC5wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49InJpZ2h0Il0gLmFycm93IHsKICBsZWZ0OiAwOwp9CgoucG9wb3Zlci5icy1wb3BvdmVyLXJpZ2h0IC5hcnJvdzo6YmVmb3JlLCAucG9wb3Zlci5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePSJyaWdodCJdIC5hcnJvdzo6YmVmb3JlLAoucG9wb3Zlci5icy1wb3BvdmVyLXJpZ2h0IC5hcnJvdzo6YWZ0ZXIsIC5wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49InJpZ2h0Il0gLmFycm93OjphZnRlciB7CiAgbWFyZ2luLXRvcDogLTAuOHJlbTsKICBib3JkZXItbGVmdC13aWR0aDogMDsKfQoKLnBvcG92ZXIuYnMtcG9wb3Zlci1yaWdodCAuYXJyb3c6OmJlZm9yZSwgLnBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj0icmlnaHQiXSAuYXJyb3c6OmJlZm9yZSB7CiAgbGVmdDogLTAuOHJlbTsKICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7Cn0KCi5wb3BvdmVyLmJzLXBvcG92ZXItcmlnaHQgLmFycm93OjphZnRlciwgLnBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj0icmlnaHQiXSAuYXJyb3c6OmFmdGVyIHsKICBsZWZ0OiBjYWxjKCgwLjhyZW0gLSAxcHgpICogLTEpOwogIGJvcmRlci1yaWdodC1jb2xvcjogI2ZmZjsKfQoKLnBvcG92ZXIuYnMtcG9wb3Zlci1ib3R0b20sIC5wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49ImJvdHRvbSJdIHsKICBtYXJnaW4tdG9wOiAwLjhyZW07Cn0KCi5wb3BvdmVyLmJzLXBvcG92ZXItYm90dG9tIC5hcnJvdywgLnBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj0iYm90dG9tIl0gLmFycm93IHsKICB0b3A6IDA7Cn0KCi5wb3BvdmVyLmJzLXBvcG92ZXItYm90dG9tIC5hcnJvdzo6YmVmb3JlLCAucG9wb3Zlci5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePSJib3R0b20iXSAuYXJyb3c6OmJlZm9yZSwKLnBvcG92ZXIuYnMtcG9wb3Zlci1ib3R0b20gLmFycm93OjphZnRlciwgLnBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj0iYm90dG9tIl0gLmFycm93OjphZnRlciB7CiAgbWFyZ2luLWxlZnQ6IC0wLjhyZW07CiAgYm9yZGVyLXRvcC13aWR0aDogMDsKfQoKLnBvcG92ZXIuYnMtcG9wb3Zlci1ib3R0b20gLmFycm93OjpiZWZvcmUsIC5wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49ImJvdHRvbSJdIC5hcnJvdzo6YmVmb3JlIHsKICB0b3A6IC0wLjhyZW07CiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI1KTsKfQoKLnBvcG92ZXIuYnMtcG9wb3Zlci1ib3R0b20gLmFycm93OjphZnRlciwgLnBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj0iYm90dG9tIl0gLmFycm93OjphZnRlciB7CiAgdG9wOiBjYWxjKCgwLjhyZW0gLSAxcHgpICogLTEpOwogIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmY7Cn0KCi5wb3BvdmVyLmJzLXBvcG92ZXItYm90dG9tIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlLCAucG9wb3Zlci5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePSJib3R0b20iXSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDogMDsKICBsZWZ0OiA1MCU7CiAgZGlzcGxheTogYmxvY2s7CiAgd2lkdGg6IDIwcHg7CiAgbWFyZ2luLWxlZnQ6IC0xMHB4OwogIGNvbnRlbnQ6ICIiOwogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjdmN2Y3Owp9CgoucG9wb3Zlci5icy1wb3BvdmVyLWxlZnQsIC5wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49ImxlZnQiXSB7CiAgbWFyZ2luLXJpZ2h0OiAwLjhyZW07Cn0KCi5wb3BvdmVyLmJzLXBvcG92ZXItbGVmdCAuYXJyb3csIC5wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49ImxlZnQiXSAuYXJyb3cgewogIHJpZ2h0OiAwOwp9CgoucG9wb3Zlci5icy1wb3BvdmVyLWxlZnQgLmFycm93OjpiZWZvcmUsIC5wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49ImxlZnQiXSAuYXJyb3c6OmJlZm9yZSwKLnBvcG92ZXIuYnMtcG9wb3Zlci1sZWZ0IC5hcnJvdzo6YWZ0ZXIsIC5wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49ImxlZnQiXSAuYXJyb3c6OmFmdGVyIHsKICBtYXJnaW4tdG9wOiAtMC44cmVtOwogIGJvcmRlci1yaWdodC13aWR0aDogMDsKfQoKLnBvcG92ZXIuYnMtcG9wb3Zlci1sZWZ0IC5hcnJvdzo6YmVmb3JlLCAucG9wb3Zlci5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePSJsZWZ0Il0gLmFycm93OjpiZWZvcmUgewogIHJpZ2h0OiAtMC44cmVtOwogIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpOwp9CgoucG9wb3Zlci5icy1wb3BvdmVyLWxlZnQgLmFycm93OjphZnRlciwgLnBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj0ibGVmdCJdIC5hcnJvdzo6YWZ0ZXIgewogIHJpZ2h0OiBjYWxjKCgwLjhyZW0gLSAxcHgpICogLTEpOwogIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmOwp9CgoucG9wb3Zlci1oZWFkZXIgewogIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtOwogIG1hcmdpbi1ib3R0b206IDA7CiAgZm9udC1zaXplOiAxcmVtOwogIGNvbG9yOiBpbmhlcml0OwogIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7CiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYmViZWI7CiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpOwogIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7Cn0KCi5wb3BvdmVyLWhlYWRlcjplbXB0eSB7CiAgZGlzcGxheTogbm9uZTsKfQoKLnBvcG92ZXItYm9keSB7CiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07CiAgY29sb3I6ICMyMTI1Mjk7Cn0KCi5jYXJvdXNlbCB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9CgouY2Fyb3VzZWwtaW5uZXIgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB3aWR0aDogMTAwJTsKICBvdmVyZmxvdzogaGlkZGVuOwp9CgouY2Fyb3VzZWwtaXRlbSB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGRpc3BsYXk6IG5vbmU7CiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICB3aWR0aDogMTAwJTsKICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjZzIGVhc2U7CiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgZWFzZTsKICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSAwLjZzIGVhc2U7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTAwMHB4OwogICAgICAgICAgcGVyc3BlY3RpdmU6IDEwMDBweDsKfQoKLmNhcm91c2VsLWl0ZW0uYWN0aXZlLAouY2Fyb3VzZWwtaXRlbS1uZXh0LAouY2Fyb3VzZWwtaXRlbS1wcmV2IHsKICBkaXNwbGF5OiBibG9jazsKfQoKLmNhcm91c2VsLWl0ZW0tbmV4dCwKLmNhcm91c2VsLWl0ZW0tcHJldiB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDogMDsKfQoKLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsCi5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7Cn0KCkBzdXBwb3J0cyAoKC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZCkgb3IgKHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QpKSB7CiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsCiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICB9Cn0KCi5jYXJvdXNlbC1pdGVtLW5leHQsCi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7CiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7Cn0KCkBzdXBwb3J0cyAoKC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZCkgb3IgKHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QpKSB7CiAgLmNhcm91c2VsLWl0ZW0tbmV4dCwKICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOwogIH0KfQoKLmNhcm91c2VsLWl0ZW0tcHJldiwKLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsKICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7Cn0KCkBzdXBwb3J0cyAoKC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZCkgb3IgKHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QpKSB7CiAgLmNhcm91c2VsLWl0ZW0tcHJldiwKICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsKICB9Cn0KCi5jYXJvdXNlbC1jb250cm9sLXByZXYsCi5jYXJvdXNlbC1jb250cm9sLW5leHQgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDA7CiAgYm90dG9tOiAwOwogIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogIGRpc3BsYXk6IGZsZXg7CiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogIHdpZHRoOiAxNSU7CiAgY29sb3I6ICNmZmY7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIG9wYWNpdHk6IDAuNTsKfQoKLmNhcm91c2VsLWNvbnRyb2wtcHJldjpmb2N1cywgLmNhcm91c2VsLWNvbnRyb2wtcHJldjpob3ZlciwKLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpmb2N1cywKLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpob3ZlciB7CiAgY29sb3I6ICNmZmY7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIG91dGxpbmU6IDA7CiAgb3BhY2l0eTogLjk7Cn0KCi5jYXJvdXNlbC1jb250cm9sLXByZXYgewogIGxlZnQ6IDA7Cn0KCi5jYXJvdXNlbC1jb250cm9sLW5leHQgewogIHJpZ2h0OiAwOwp9CgouY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sCi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHdpZHRoOiAyMHB4OwogIGhlaWdodDogMjBweDsKICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsKICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTsKfQoKLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHsKICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzZmZmJyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41LTIuNS0yLjUgMi41LTIuNS0xLjUtMS41eicvJTNFJTNDL3N2ZyUzRSIpOwp9CgouY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24gewogIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjNmZmYnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBkPSdNMi43NSAwbC0xLjUgMS41IDIuNSAyLjUtMi41IDIuNSAxLjUgMS41IDQtNC00LTR6Jy8lM0UlM0Mvc3ZnJTNFIik7Cn0KCi5jYXJvdXNlbC1pbmRpY2F0b3JzIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgcmlnaHQ6IDA7CiAgYm90dG9tOiAxMHB4OwogIGxlZnQ6IDA7CiAgei1pbmRleDogMTU7CiAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgZGlzcGxheTogZmxleDsKICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7CiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogIHBhZGRpbmctbGVmdDogMDsKICBtYXJnaW4tcmlnaHQ6IDE1JTsKICBtYXJnaW4tbGVmdDogMTUlOwogIGxpc3Qtc3R5bGU6IG5vbmU7Cn0KCi5jYXJvdXNlbC1pbmRpY2F0b3JzIGxpIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLW1zLWZsZXg6IDAgMSBhdXRvOwogICAgICBmbGV4OiAwIDEgYXV0bzsKICB3aWR0aDogMzBweDsKICBoZWlnaHQ6IDNweDsKICBtYXJnaW4tcmlnaHQ6IDNweDsKICBtYXJnaW4tbGVmdDogM3B4OwogIHRleHQtaW5kZW50OiAtOTk5cHg7CiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOwp9CgouY2Fyb3VzZWwtaW5kaWNhdG9ycyBsaTo6YmVmb3JlIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAtMTBweDsKICBsZWZ0OiAwOwogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwcHg7CiAgY29udGVudDogIiI7Cn0KCi5jYXJvdXNlbC1pbmRpY2F0b3JzIGxpOjphZnRlciB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGJvdHRvbTogLTEwcHg7CiAgbGVmdDogMDsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiAxMHB4OwogIGNvbnRlbnQ6ICIiOwp9CgouY2Fyb3VzZWwtaW5kaWNhdG9ycyAuYWN0aXZlIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwp9CgouY2Fyb3VzZWwtY2FwdGlvbiB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAxNSU7CiAgYm90dG9tOiAyMHB4OwogIGxlZnQ6IDE1JTsKICB6LWluZGV4OiAxMDsKICBwYWRkaW5nLXRvcDogMjBweDsKICBwYWRkaW5nLWJvdHRvbTogMjBweDsKICBjb2xvcjogI2ZmZjsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCi5hbGlnbi1iYXNlbGluZSB7CiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7Cn0KCi5hbGlnbi10b3AgewogIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsKfQoKLmFsaWduLW1pZGRsZSB7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50Owp9CgouYWxpZ24tYm90dG9tIHsKICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7Cn0KCi5hbGlnbi10ZXh0LWJvdHRvbSB7CiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7Cn0KCi5hbGlnbi10ZXh0LXRvcCB7CiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7Cn0KCi5iZy1wcmltYXJ5IHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmICFpbXBvcnRhbnQ7Cn0KCmEuYmctcHJpbWFyeTpmb2N1cywgYS5iZy1wcmltYXJ5OmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2MmNjICFpbXBvcnRhbnQ7Cn0KCi5iZy1zZWNvbmRhcnkgewogIGJhY2tncm91bmQtY29sb3I6ICM4NjhlOTYgIWltcG9ydGFudDsKfQoKYS5iZy1zZWNvbmRhcnk6Zm9jdXMsIGEuYmctc2Vjb25kYXJ5OmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7Cn0KCi5iZy1zdWNjZXNzIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1ICFpbXBvcnRhbnQ7Cn0KCmEuYmctc3VjY2Vzczpmb2N1cywgYS5iZy1zdWNjZXNzOmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWU3ZTM0ICFpbXBvcnRhbnQ7Cn0KCi5iZy1pbmZvIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTdhMmI4ICFpbXBvcnRhbnQ7Cn0KCmEuYmctaW5mbzpmb2N1cywgYS5iZy1pbmZvOmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE3YThiICFpbXBvcnRhbnQ7Cn0KCi5iZy13YXJuaW5nIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3ICFpbXBvcnRhbnQ7Cn0KCmEuYmctd2FybmluZzpmb2N1cywgYS5iZy13YXJuaW5nOmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDM5ZTAwICFpbXBvcnRhbnQ7Cn0KCi5iZy1kYW5nZXIgewogIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDsKfQoKYS5iZy1kYW5nZXI6Zm9jdXMsIGEuYmctZGFuZ2VyOmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmQyMTMwICFpbXBvcnRhbnQ7Cn0KCi5iZy1saWdodCB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50Owp9CgphLmJnLWxpZ2h0OmZvY3VzLCBhLmJnLWxpZ2h0OmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFlMGU1ICFpbXBvcnRhbnQ7Cn0KCi5iZy1kYXJrIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwICFpbXBvcnRhbnQ7Cn0KCmEuYmctZGFyazpmb2N1cywgYS5iZy1kYXJrOmhvdmVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQyMTI0ICFpbXBvcnRhbnQ7Cn0KCi5iZy13aGl0ZSB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50Owp9CgouYmctdHJhbnNwYXJlbnQgewogIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7Cn0KCi5ib3JkZXIgewogIGJvcmRlcjogMXB4IHNvbGlkICNlOWVjZWYgIWltcG9ydGFudDsKfQoKLmJvcmRlci0wIHsKICBib3JkZXI6IDAgIWltcG9ydGFudDsKfQoKLmJvcmRlci10b3AtMCB7CiAgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50Owp9CgouYm9yZGVyLXJpZ2h0LTAgewogIGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50Owp9CgouYm9yZGVyLWJvdHRvbS0wIHsKICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7Cn0KCi5ib3JkZXItbGVmdC0wIHsKICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50Owp9CgouYm9yZGVyLXByaW1hcnkgewogIGJvcmRlci1jb2xvcjogIzAwN2JmZiAhaW1wb3J0YW50Owp9CgouYm9yZGVyLXNlY29uZGFyeSB7CiAgYm9yZGVyLWNvbG9yOiAjODY4ZTk2ICFpbXBvcnRhbnQ7Cn0KCi5ib3JkZXItc3VjY2VzcyB7CiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1ICFpbXBvcnRhbnQ7Cn0KCi5ib3JkZXItaW5mbyB7CiAgYm9yZGVyLWNvbG9yOiAjMTdhMmI4ICFpbXBvcnRhbnQ7Cn0KCi5ib3JkZXItd2FybmluZyB7CiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3ICFpbXBvcnRhbnQ7Cn0KCi5ib3JkZXItZGFuZ2VyIHsKICBib3JkZXItY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDsKfQoKLmJvcmRlci1saWdodCB7CiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhICFpbXBvcnRhbnQ7Cn0KCi5ib3JkZXItZGFyayB7CiAgYm9yZGVyLWNvbG9yOiAjMzQzYTQwICFpbXBvcnRhbnQ7Cn0KCi5ib3JkZXItd2hpdGUgewogIGJvcmRlci1jb2xvcjogI2ZmZiAhaW1wb3J0YW50Owp9Cgoucm91bmRlZCB7CiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50Owp9Cgoucm91bmRlZC10b3AgewogIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDsKICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50Owp9Cgoucm91bmRlZC1yaWdodCB7CiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDsKICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50Owp9Cgoucm91bmRlZC1ib3R0b20gewogIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50Owp9Cgoucm91bmRlZC1sZWZ0IHsKICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50Owp9Cgoucm91bmRlZC1jaXJjbGUgewogIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50Owp9Cgoucm91bmRlZC0wIHsKICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7Cn0KCi5jbGVhcmZpeDo6YWZ0ZXIgewogIGRpc3BsYXk6IGJsb2NrOwogIGNsZWFyOiBib3RoOwogIGNvbnRlbnQ6ICIiOwp9CgouZC1ub25lIHsKICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7Cn0KCi5kLWlubGluZSB7CiAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7Cn0KCi5kLWlubGluZS1ibG9jayB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7Cn0KCi5kLWJsb2NrIHsKICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50Owp9CgouZC10YWJsZSB7CiAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsKfQoKLmQtdGFibGUtcm93IHsKICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsKfQoKLmQtdGFibGUtY2VsbCB7CiAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50Owp9CgouZC1mbGV4IHsKICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50OwogIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsKfQoKLmQtaW5saW5lLWZsZXggewogIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveCAhaW1wb3J0YW50OwogIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgewogIC5kLXNtLW5vbmUgewogICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OwogIH0KICAuZC1zbS1pbmxpbmUgewogICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7CiAgfQogIC5kLXNtLWlubGluZS1ibG9jayB7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsKICB9CiAgLmQtc20tYmxvY2sgewogICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsKICB9CiAgLmQtc20tdGFibGUgewogICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsKICB9CiAgLmQtc20tdGFibGUtcm93IHsKICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OwogIH0KICAuZC1zbS10YWJsZS1jZWxsIHsKICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsKICB9CiAgLmQtc20tZmxleCB7CiAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50OwogICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OwogIH0KICAuZC1zbS1pbmxpbmUtZmxleCB7CiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3ggIWltcG9ydGFudDsKICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7CiAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHsKICAuZC1tZC1ub25lIHsKICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsKICB9CiAgLmQtbWQtaW5saW5lIHsKICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OwogIH0KICAuZC1tZC1pbmxpbmUtYmxvY2sgewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7CiAgfQogIC5kLW1kLWJsb2NrIHsKICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7CiAgfQogIC5kLW1kLXRhYmxlIHsKICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7CiAgfQogIC5kLW1kLXRhYmxlLXJvdyB7CiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsKICB9CiAgLmQtbWQtdGFibGUtY2VsbCB7CiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7CiAgfQogIC5kLW1kLWZsZXggewogICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDsKICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsKICB9CiAgLmQtbWQtaW5saW5lLWZsZXggewogICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94ICFpbXBvcnRhbnQ7CiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OwogIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7CiAgLmQtbGctbm9uZSB7CiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7CiAgfQogIC5kLWxnLWlubGluZSB7CiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsKICB9CiAgLmQtbGctaW5saW5lLWJsb2NrIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OwogIH0KICAuZC1sZy1ibG9jayB7CiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OwogIH0KICAuZC1sZy10YWJsZSB7CiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OwogIH0KICAuZC1sZy10YWJsZS1yb3cgewogICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7CiAgfQogIC5kLWxnLXRhYmxlLWNlbGwgewogICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OwogIH0KICAuZC1sZy1mbGV4IHsKICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94ICFpbXBvcnRhbnQ7CiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7CiAgfQogIC5kLWxnLWlubGluZS1mbGV4IHsKICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveCAhaW1wb3J0YW50OwogICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHsKICAuZC14bC1ub25lIHsKICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsKICB9CiAgLmQteGwtaW5saW5lIHsKICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OwogIH0KICAuZC14bC1pbmxpbmUtYmxvY2sgewogICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7CiAgfQogIC5kLXhsLWJsb2NrIHsKICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7CiAgfQogIC5kLXhsLXRhYmxlIHsKICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7CiAgfQogIC5kLXhsLXRhYmxlLXJvdyB7CiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsKICB9CiAgLmQteGwtdGFibGUtY2VsbCB7CiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7CiAgfQogIC5kLXhsLWZsZXggewogICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDsKICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsKICB9CiAgLmQteGwtaW5saW5lLWZsZXggewogICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94ICFpbXBvcnRhbnQ7CiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OwogIH0KfQoKLmQtcHJpbnQtYmxvY2sgewogIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsKfQoKQG1lZGlhIHByaW50IHsKICAuZC1wcmludC1ibG9jayB7CiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OwogIH0KfQoKLmQtcHJpbnQtaW5saW5lIHsKICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7Cn0KCkBtZWRpYSBwcmludCB7CiAgLmQtcHJpbnQtaW5saW5lIHsKICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OwogIH0KfQoKLmQtcHJpbnQtaW5saW5lLWJsb2NrIHsKICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7Cn0KCkBtZWRpYSBwcmludCB7CiAgLmQtcHJpbnQtaW5saW5lLWJsb2NrIHsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OwogIH0KfQoKQG1lZGlhIHByaW50IHsKICAuZC1wcmludC1ub25lIHsKICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsKICB9Cn0KCi5lbWJlZC1yZXNwb25zaXZlIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgZGlzcGxheTogYmxvY2s7CiAgd2lkdGg6IDEwMCU7CiAgcGFkZGluZzogMDsKICBvdmVyZmxvdzogaGlkZGVuOwp9CgouZW1iZWQtcmVzcG9uc2l2ZTo6YmVmb3JlIHsKICBkaXNwbGF5OiBibG9jazsKICBjb250ZW50OiAiIjsKfQoKLmVtYmVkLXJlc3BvbnNpdmUgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSwKLmVtYmVkLXJlc3BvbnNpdmUgaWZyYW1lLAouZW1iZWQtcmVzcG9uc2l2ZSBlbWJlZCwKLmVtYmVkLXJlc3BvbnNpdmUgb2JqZWN0LAouZW1iZWQtcmVzcG9uc2l2ZSB2aWRlbyB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDogMDsKICBib3R0b206IDA7CiAgbGVmdDogMDsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgYm9yZGVyOiAwOwp9CgouZW1iZWQtcmVzcG9uc2l2ZS0yMWJ5OTo6YmVmb3JlIHsKICBwYWRkaW5nLXRvcDogNDIuODU3MTQzJTsKfQoKLmVtYmVkLXJlc3BvbnNpdmUtMTZieTk6OmJlZm9yZSB7CiAgcGFkZGluZy10b3A6IDU2LjI1JTsKfQoKLmVtYmVkLXJlc3BvbnNpdmUtNGJ5Mzo6YmVmb3JlIHsKICBwYWRkaW5nLXRvcDogNzUlOwp9CgouZW1iZWQtcmVzcG9uc2l2ZS0xYnkxOjpiZWZvcmUgewogIHBhZGRpbmctdG9wOiAxMDAlOwp9CgouZmxleC1yb3cgewogIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7CiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsKfQoKLmZsZXgtY29sdW1uIHsKICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7Cn0KCi5mbGV4LXJvdy1yZXZlcnNlIHsKICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50Owp9CgouZmxleC1jb2x1bW4tcmV2ZXJzZSB7CiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsKfQoKLmZsZXgtd3JhcCB7CiAgLW1zLWZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OwogICAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsKfQoKLmZsZXgtbm93cmFwIHsKICAtbXMtZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsKICAgICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsKfQoKLmZsZXgtd3JhcC1yZXZlcnNlIHsKICAtbXMtZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsKfQoKLmp1c3RpZnktY29udGVudC1zdGFydCB7CiAgLW1zLWZsZXgtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7Cn0KCi5qdXN0aWZ5LWNvbnRlbnQtZW5kIHsKICAtbXMtZmxleC1wYWNrOiBlbmQgIWltcG9ydGFudDsKICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50Owp9CgouanVzdGlmeS1jb250ZW50LWNlbnRlciB7CiAgLW1zLWZsZXgtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7Cn0KCi5qdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiB7CiAgLW1zLWZsZXgtcGFjazoganVzdGlmeSAhaW1wb3J0YW50OwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsKfQoKLmp1c3RpZnktY29udGVudC1hcm91bmQgewogIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGUgIWltcG9ydGFudDsKICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsKfQoKLmFsaWduLWl0ZW1zLXN0YXJ0IHsKICAtbXMtZmxleC1hbGlnbjogc3RhcnQgIWltcG9ydGFudDsKICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKfQoKLmFsaWduLWl0ZW1zLWVuZCB7CiAgLW1zLWZsZXgtYWxpZ246IGVuZCAhaW1wb3J0YW50OwogICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsKfQoKLmFsaWduLWl0ZW1zLWNlbnRlciB7CiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OwogICAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7Cn0KCi5hbGlnbi1pdGVtcy1iYXNlbGluZSB7CiAgLW1zLWZsZXgtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50Owp9CgouYWxpZ24taXRlbXMtc3RyZXRjaCB7CiAgLW1zLWZsZXgtYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsKfQoKLmFsaWduLWNvbnRlbnQtc3RhcnQgewogIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50Owp9CgouYWxpZ24tY29udGVudC1lbmQgewogIC1tcy1mbGV4LWxpbmUtcGFjazogZW5kICFpbXBvcnRhbnQ7CiAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7Cn0KCi5hbGlnbi1jb250ZW50LWNlbnRlciB7CiAgLW1zLWZsZXgtbGluZS1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7Cn0KCi5hbGlnbi1jb250ZW50LWJldHdlZW4gewogIC1tcy1mbGV4LWxpbmUtcGFjazoganVzdGlmeSAhaW1wb3J0YW50OwogICAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7Cn0KCi5hbGlnbi1jb250ZW50LWFyb3VuZCB7CiAgLW1zLWZsZXgtbGluZS1wYWNrOiBkaXN0cmlidXRlICFpbXBvcnRhbnQ7CiAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50Owp9CgouYWxpZ24tY29udGVudC1zdHJldGNoIHsKICAtbXMtZmxleC1saW5lLXBhY2s6IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50Owp9CgouYWxpZ24tc2VsZi1hdXRvIHsKICAtbXMtZmxleC1pdGVtLWFsaWduOiBhdXRvICFpbXBvcnRhbnQ7CiAgICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsKfQoKLmFsaWduLXNlbGYtc3RhcnQgewogIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKfQoKLmFsaWduLXNlbGYtZW5kIHsKICAtbXMtZmxleC1pdGVtLWFsaWduOiBlbmQgIWltcG9ydGFudDsKICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsKfQoKLmFsaWduLXNlbGYtY2VudGVyIHsKICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7Cn0KCi5hbGlnbi1zZWxmLWJhc2VsaW5lIHsKICAtbXMtZmxleC1pdGVtLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OwogICAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50Owp9CgouYWxpZ24tc2VsZi1zdHJldGNoIHsKICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsKfQoKQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7CiAgLmZsZXgtc20tcm93IHsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OwogIH0KICAuZmxleC1zbS1jb2x1bW4gewogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7CiAgfQogIC5mbGV4LXNtLXJvdy1yZXZlcnNlIHsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsKICB9CiAgLmZsZXgtc20tY29sdW1uLXJldmVyc2UgewogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OwogIH0KICAuZmxleC1zbS13cmFwIHsKICAgIC1tcy1mbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsKICAgICAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsKICB9CiAgLmZsZXgtc20tbm93cmFwIHsKICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7CiAgfQogIC5mbGV4LXNtLXdyYXAtcmV2ZXJzZSB7CiAgICAtbXMtZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OwogIH0KICAuanVzdGlmeS1jb250ZW50LXNtLXN0YXJ0IHsKICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgfQogIC5qdXN0aWZ5LWNvbnRlbnQtc20tZW5kIHsKICAgIC1tcy1mbGV4LXBhY2s6IGVuZCAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsKICB9CiAgLmp1c3RpZnktY29udGVudC1zbS1jZW50ZXIgewogICAgLW1zLWZsZXgtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsKICB9CiAgLmp1c3RpZnktY29udGVudC1zbS1iZXR3ZWVuIHsKICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnkgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsKICB9CiAgLmp1c3RpZnktY29udGVudC1zbS1hcm91bmQgewogICAgLW1zLWZsZXgtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1pdGVtcy1zbS1zdGFydCB7CiAgICAtbXMtZmxleC1hbGlnbjogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24taXRlbXMtc20tZW5kIHsKICAgIC1tcy1mbGV4LWFsaWduOiBlbmQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWl0ZW1zLXNtLWNlbnRlciB7CiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24taXRlbXMtc20tYmFzZWxpbmUgewogICAgLW1zLWZsZXgtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1pdGVtcy1zbS1zdHJldGNoIHsKICAgIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWNvbnRlbnQtc20tc3RhcnQgewogICAgLW1zLWZsZXgtbGluZS1wYWNrOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWNvbnRlbnQtc20tZW5kIHsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWNvbnRlbnQtc20tY2VudGVyIHsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1jb250ZW50LXNtLWJldHdlZW4gewogICAgLW1zLWZsZXgtbGluZS1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tY29udGVudC1zbS1hcm91bmQgewogICAgLW1zLWZsZXgtbGluZS1wYWNrOiBkaXN0cmlidXRlICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1jb250ZW50LXNtLXN0cmV0Y2ggewogICAgLW1zLWZsZXgtbGluZS1wYWNrOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tc2VsZi1zbS1hdXRvIHsKICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGF1dG8gIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1zZWxmLXNtLXN0YXJ0IHsKICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tc2VsZi1zbS1lbmQgewogICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLXNlbGYtc20tY2VudGVyIHsKICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tc2VsZi1zbS1iYXNlbGluZSB7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1zZWxmLXNtLXN0cmV0Y2ggewogICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgewogIC5mbGV4LW1kLXJvdyB7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsKICB9CiAgLmZsZXgtbWQtY29sdW1uIHsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OwogIH0KICAuZmxleC1tZC1yb3ctcmV2ZXJzZSB7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgfQogIC5mbGV4LW1kLWNvbHVtbi1yZXZlcnNlIHsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsKICB9CiAgLmZsZXgtbWQtd3JhcCB7CiAgICAtbXMtZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7CiAgfQogIC5mbGV4LW1kLW5vd3JhcCB7CiAgICAtbXMtZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsKICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OwogIH0KICAuZmxleC1tZC13cmFwLXJldmVyc2UgewogICAgLW1zLWZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsKICB9CiAgLmp1c3RpZnktY29udGVudC1tZC1zdGFydCB7CiAgICAtbXMtZmxleC1wYWNrOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OwogIH0KICAuanVzdGlmeS1jb250ZW50LW1kLWVuZCB7CiAgICAtbXMtZmxleC1wYWNrOiBlbmQgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgfQogIC5qdXN0aWZ5LWNvbnRlbnQtbWQtY2VudGVyIHsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7CiAgfQogIC5qdXN0aWZ5LWNvbnRlbnQtbWQtYmV0d2VlbiB7CiAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7CiAgfQogIC5qdXN0aWZ5LWNvbnRlbnQtbWQtYXJvdW5kIHsKICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGUgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24taXRlbXMtbWQtc3RhcnQgewogICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWl0ZW1zLW1kLWVuZCB7CiAgICAtbXMtZmxleC1hbGlnbjogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1pdGVtcy1tZC1jZW50ZXIgewogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWl0ZW1zLW1kLWJhc2VsaW5lIHsKICAgIC1tcy1mbGV4LWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24taXRlbXMtbWQtc3RyZXRjaCB7CiAgICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1jb250ZW50LW1kLXN0YXJ0IHsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1jb250ZW50LW1kLWVuZCB7CiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGVuZCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1jb250ZW50LW1kLWNlbnRlciB7CiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tY29udGVudC1tZC1iZXR3ZWVuIHsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazoganVzdGlmeSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWNvbnRlbnQtbWQtYXJvdW5kIHsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tY29udGVudC1tZC1zdHJldGNoIHsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsKICB9CiAgLmFsaWduLXNlbGYtbWQtYXV0byB7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBhdXRvICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tc2VsZi1tZC1zdGFydCB7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLXNlbGYtbWQtZW5kIHsKICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGVuZCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1zZWxmLW1kLWNlbnRlciB7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLXNlbGYtbWQtYmFzZWxpbmUgewogICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tc2VsZi1tZC1zdHJldGNoIHsKICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHsKICAuZmxleC1sZy1yb3cgewogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7CiAgfQogIC5mbGV4LWxnLWNvbHVtbiB7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsKICB9CiAgLmZsZXgtbGctcm93LXJldmVyc2UgewogICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OwogIH0KICAuZmxleC1sZy1jb2x1bW4tcmV2ZXJzZSB7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgfQogIC5mbGV4LWxnLXdyYXAgewogICAgLW1zLWZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OwogIH0KICAuZmxleC1sZy1ub3dyYXAgewogICAgLW1zLWZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsKICB9CiAgLmZsZXgtbGctd3JhcC1yZXZlcnNlIHsKICAgIC1tcy1mbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgfQogIC5qdXN0aWZ5LWNvbnRlbnQtbGctc3RhcnQgewogICAgLW1zLWZsZXgtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKICB9CiAgLmp1c3RpZnktY29udGVudC1sZy1lbmQgewogICAgLW1zLWZsZXgtcGFjazogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OwogIH0KICAuanVzdGlmeS1jb250ZW50LWxnLWNlbnRlciB7CiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OwogIH0KICAuanVzdGlmeS1jb250ZW50LWxnLWJldHdlZW4gewogICAgLW1zLWZsZXgtcGFjazoganVzdGlmeSAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OwogIH0KICAuanVzdGlmeS1jb250ZW50LWxnLWFyb3VuZCB7CiAgICAtbXMtZmxleC1wYWNrOiBkaXN0cmlidXRlICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWl0ZW1zLWxnLXN0YXJ0IHsKICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1pdGVtcy1sZy1lbmQgewogICAgLW1zLWZsZXgtYWxpZ246IGVuZCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24taXRlbXMtbGctY2VudGVyIHsKICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1pdGVtcy1sZy1iYXNlbGluZSB7CiAgICAtbXMtZmxleC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWl0ZW1zLWxnLXN0cmV0Y2ggewogICAgLW1zLWZsZXgtYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tY29udGVudC1sZy1zdGFydCB7CiAgICAtbXMtZmxleC1saW5lLXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tY29udGVudC1sZy1lbmQgewogICAgLW1zLWZsZXgtbGluZS1wYWNrOiBlbmQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tY29udGVudC1sZy1jZW50ZXIgewogICAgLW1zLWZsZXgtbGluZS1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWNvbnRlbnQtbGctYmV0d2VlbiB7CiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGp1c3RpZnkgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1jb250ZW50LWxnLWFyb3VuZCB7CiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGRpc3RyaWJ1dGUgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWNvbnRlbnQtbGctc3RyZXRjaCB7CiAgICAtbXMtZmxleC1saW5lLXBhY2s6IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1zZWxmLWxnLWF1dG8gewogICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYXV0byAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsKICB9CiAgLmFsaWduLXNlbGYtbGctc3RhcnQgewogICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1zZWxmLWxnLWVuZCB7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBlbmQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tc2VsZi1sZy1jZW50ZXIgewogICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1zZWxmLWxnLWJhc2VsaW5lIHsKICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLXNlbGYtbGctc3RyZXRjaCB7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OwogIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgewogIC5mbGV4LXhsLXJvdyB7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsKICB9CiAgLmZsZXgteGwtY29sdW1uIHsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OwogIH0KICAuZmxleC14bC1yb3ctcmV2ZXJzZSB7CiAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgfQogIC5mbGV4LXhsLWNvbHVtbi1yZXZlcnNlIHsKICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsKICB9CiAgLmZsZXgteGwtd3JhcCB7CiAgICAtbXMtZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7CiAgfQogIC5mbGV4LXhsLW5vd3JhcCB7CiAgICAtbXMtZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsKICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OwogIH0KICAuZmxleC14bC13cmFwLXJldmVyc2UgewogICAgLW1zLWZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7CiAgICAgICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsKICB9CiAgLmp1c3RpZnktY29udGVudC14bC1zdGFydCB7CiAgICAtbXMtZmxleC1wYWNrOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OwogIH0KICAuanVzdGlmeS1jb250ZW50LXhsLWVuZCB7CiAgICAtbXMtZmxleC1wYWNrOiBlbmQgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgfQogIC5qdXN0aWZ5LWNvbnRlbnQteGwtY2VudGVyIHsKICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7CiAgfQogIC5qdXN0aWZ5LWNvbnRlbnQteGwtYmV0d2VlbiB7CiAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7CiAgfQogIC5qdXN0aWZ5LWNvbnRlbnQteGwtYXJvdW5kIHsKICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGUgIWltcG9ydGFudDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24taXRlbXMteGwtc3RhcnQgewogICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWl0ZW1zLXhsLWVuZCB7CiAgICAtbXMtZmxleC1hbGlnbjogZW5kICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1pdGVtcy14bC1jZW50ZXIgewogICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWl0ZW1zLXhsLWJhc2VsaW5lIHsKICAgIC1tcy1mbGV4LWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24taXRlbXMteGwtc3RyZXRjaCB7CiAgICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1jb250ZW50LXhsLXN0YXJ0IHsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1jb250ZW50LXhsLWVuZCB7CiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGVuZCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1jb250ZW50LXhsLWNlbnRlciB7CiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGNlbnRlciAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tY29udGVudC14bC1iZXR3ZWVuIHsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazoganVzdGlmeSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsKICB9CiAgLmFsaWduLWNvbnRlbnQteGwtYXJvdW5kIHsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tY29udGVudC14bC1zdHJldGNoIHsKICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RyZXRjaCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsKICB9CiAgLmFsaWduLXNlbGYteGwtYXV0byB7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBhdXRvICFpbXBvcnRhbnQ7CiAgICAgICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tc2VsZi14bC1zdGFydCB7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLXNlbGYteGwtZW5kIHsKICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGVuZCAhaW1wb3J0YW50OwogICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7CiAgfQogIC5hbGlnbi1zZWxmLXhsLWNlbnRlciB7CiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsKICB9CiAgLmFsaWduLXNlbGYteGwtYmFzZWxpbmUgewogICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OwogIH0KICAuYWxpZ24tc2VsZi14bC1zdHJldGNoIHsKICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDsKICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7CiAgfQp9CgouZmxvYXQtbGVmdCB7CiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsKfQoKLmZsb2F0LXJpZ2h0IHsKICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsKfQoKLmZsb2F0LW5vbmUgewogIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgewogIC5mbG9hdC1zbS1sZWZ0IHsKICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7CiAgfQogIC5mbG9hdC1zbS1yaWdodCB7CiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsKICB9CiAgLmZsb2F0LXNtLW5vbmUgewogICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgewogIC5mbG9hdC1tZC1sZWZ0IHsKICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7CiAgfQogIC5mbG9hdC1tZC1yaWdodCB7CiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsKICB9CiAgLmZsb2F0LW1kLW5vbmUgewogICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgewogIC5mbG9hdC1sZy1sZWZ0IHsKICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7CiAgfQogIC5mbG9hdC1sZy1yaWdodCB7CiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsKICB9CiAgLmZsb2F0LWxnLW5vbmUgewogICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHsKICAuZmxvYXQteGwtbGVmdCB7CiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OwogIH0KICAuZmxvYXQteGwtcmlnaHQgewogICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7CiAgfQogIC5mbG9hdC14bC1ub25lIHsKICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7CiAgfQp9CgoucG9zaXRpb24tc3RhdGljIHsKICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7Cn0KCi5wb3NpdGlvbi1yZWxhdGl2ZSB7CiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7Cn0KCi5wb3NpdGlvbi1hYnNvbHV0ZSB7CiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7Cn0KCi5wb3NpdGlvbi1maXhlZCB7CiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7Cn0KCi5wb3NpdGlvbi1zdGlja3kgewogIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreSAhaW1wb3J0YW50OwogIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDsKfQoKLmZpeGVkLXRvcCB7CiAgcG9zaXRpb246IGZpeGVkOwogIHRvcDogMDsKICByaWdodDogMDsKICBsZWZ0OiAwOwogIHotaW5kZXg6IDEwMzA7Cn0KCi5maXhlZC1ib3R0b20gewogIHBvc2l0aW9uOiBmaXhlZDsKICByaWdodDogMDsKICBib3R0b206IDA7CiAgbGVmdDogMDsKICB6LWluZGV4OiAxMDMwOwp9CgpAc3VwcG9ydHMgKChwb3NpdGlvbjogLXdlYmtpdC1zdGlja3kpIG9yIChwb3NpdGlvbjogc3RpY2t5KSkgewogIC5zdGlja3ktdG9wIHsKICAgIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreTsKICAgIHBvc2l0aW9uOiBzdGlja3k7CiAgICB0b3A6IDA7CiAgICB6LWluZGV4OiAxMDIwOwogIH0KfQoKLnNyLW9ubHkgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB3aWR0aDogMXB4OwogIGhlaWdodDogMXB4OwogIHBhZGRpbmc6IDA7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICBjbGlwOiByZWN0KDAsIDAsIDAsIDApOwogIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSk7CiAgICAgICAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7CiAgYm9yZGVyOiAwOwp9Cgouc3Itb25seS1mb2N1c2FibGU6YWN0aXZlLCAuc3Itb25seS1mb2N1c2FibGU6Zm9jdXMgewogIHBvc2l0aW9uOiBzdGF0aWM7CiAgd2lkdGg6IGF1dG87CiAgaGVpZ2h0OiBhdXRvOwogIG92ZXJmbG93OiB2aXNpYmxlOwogIGNsaXA6IGF1dG87CiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsKICAtd2Via2l0LWNsaXAtcGF0aDogbm9uZTsKICAgICAgICAgIGNsaXAtcGF0aDogbm9uZTsKfQoKLnctMjUgewogIHdpZHRoOiAyNSUgIWltcG9ydGFudDsKfQoKLnctNTAgewogIHdpZHRoOiA1MCUgIWltcG9ydGFudDsKfQoKLnctNzUgewogIHdpZHRoOiA3NSUgIWltcG9ydGFudDsKfQoKLnctMTAwIHsKICB3aWR0aDogMTAwJSAhaW1wb3J0YW50Owp9CgouaC0yNSB7CiAgaGVpZ2h0OiAyNSUgIWltcG9ydGFudDsKfQoKLmgtNTAgewogIGhlaWdodDogNTAlICFpbXBvcnRhbnQ7Cn0KCi5oLTc1IHsKICBoZWlnaHQ6IDc1JSAhaW1wb3J0YW50Owp9CgouaC0xMDAgewogIGhlaWdodDogMTAwJSAhaW1wb3J0YW50Owp9CgoubXctMTAwIHsKICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsKfQoKLm1oLTEwMCB7CiAgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50Owp9CgoubS0wIHsKICBtYXJnaW46IDAgIWltcG9ydGFudDsKfQoKLm10LTAsCi5teS0wIHsKICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7Cn0KCi5tci0wLAoubXgtMCB7CiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7Cn0KCi5tYi0wLAoubXktMCB7CiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50Owp9CgoubWwtMCwKLm14LTAgewogIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7Cn0KCi5tLTEgewogIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50Owp9CgoubXQtMSwKLm15LTEgewogIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsKfQoKLm1yLTEsCi5teC0xIHsKICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsKfQoKLm1iLTEsCi5teS0xIHsKICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7Cn0KCi5tbC0xLAoubXgtMSB7CiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsKfQoKLm0tMiB7CiAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDsKfQoKLm10LTIsCi5teS0yIHsKICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDsKfQoKLm1yLTIsCi5teC0yIHsKICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50Owp9CgoubWItMiwKLm15LTIgewogIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50Owp9CgoubWwtMiwKLm14LTIgewogIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsKfQoKLm0tMyB7CiAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7Cn0KCi5tdC0zLAoubXktMyB7CiAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50Owp9CgoubXItMywKLm14LTMgewogIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50Owp9CgoubWItMywKLm15LTMgewogIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsKfQoKLm1sLTMsCi5teC0zIHsKICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50Owp9CgoubS00IHsKICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50Owp9CgoubXQtNCwKLm15LTQgewogIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50Owp9CgoubXItNCwKLm14LTQgewogIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7Cn0KCi5tYi00LAoubXktNCB7CiAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7Cn0KCi5tbC00LAoubXgtNCB7CiAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50Owp9CgoubS01IHsKICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDsKfQoKLm10LTUsCi5teS01IHsKICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7Cn0KCi5tci01LAoubXgtNSB7CiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7Cn0KCi5tYi01LAoubXktNSB7CiAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50Owp9CgoubWwtNSwKLm14LTUgewogIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7Cn0KCi5wLTAgewogIHBhZGRpbmc6IDAgIWltcG9ydGFudDsKfQoKLnB0LTAsCi5weS0wIHsKICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50Owp9CgoucHItMCwKLnB4LTAgewogIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsKfQoKLnBiLTAsCi5weS0wIHsKICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50Owp9CgoucGwtMCwKLnB4LTAgewogIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50Owp9CgoucC0xIHsKICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7Cn0KCi5wdC0xLAoucHktMSB7CiAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsKfQoKLnByLTEsCi5weC0xIHsKICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7Cn0KCi5wYi0xLAoucHktMSB7CiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDsKfQoKLnBsLTEsCi5weC0xIHsKICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsKfQoKLnAtMiB7CiAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7Cn0KCi5wdC0yLAoucHktMiB7CiAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50Owp9CgoucHItMiwKLnB4LTIgewogIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50Owp9CgoucGItMiwKLnB5LTIgewogIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsKfQoKLnBsLTIsCi5weC0yIHsKICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50Owp9CgoucC0zIHsKICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7Cn0KCi5wdC0zLAoucHktMyB7CiAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDsKfQoKLnByLTMsCi5weC0zIHsKICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7Cn0KCi5wYi0zLAoucHktMyB7CiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsKfQoKLnBsLTMsCi5weC0zIHsKICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsKfQoKLnAtNCB7CiAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7Cn0KCi5wdC00LAoucHktNCB7CiAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50Owp9CgoucHItNCwKLnB4LTQgewogIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50Owp9CgoucGItNCwKLnB5LTQgewogIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDsKfQoKLnBsLTQsCi5weC00IHsKICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50Owp9CgoucC01IHsKICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7Cn0KCi5wdC01LAoucHktNSB7CiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDsKfQoKLnByLTUsCi5weC01IHsKICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7Cn0KCi5wYi01LAoucHktNSB7CiAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDsKfQoKLnBsLTUsCi5weC01IHsKICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsKfQoKLm0tYXV0byB7CiAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7Cn0KCi5tdC1hdXRvLAoubXktYXV0byB7CiAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50Owp9CgoubXItYXV0bywKLm14LWF1dG8gewogIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50Owp9CgoubWItYXV0bywKLm15LWF1dG8gewogIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDsKfQoKLm1sLWF1dG8sCi5teC1hdXRvIHsKICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50Owp9CgpAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHsKICAubS1zbS0wIHsKICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OwogIH0KICAubXQtc20tMCwKICAubXktc20tMCB7CiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7CiAgfQogIC5tci1zbS0wLAogIC5teC1zbS0wIHsKICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OwogIH0KICAubWItc20tMCwKICAubXktc20tMCB7CiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7CiAgfQogIC5tbC1zbS0wLAogIC5teC1zbS0wIHsKICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7CiAgfQogIC5tLXNtLTEgewogICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tdC1zbS0xLAogIC5teS1zbS0xIHsKICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm1yLXNtLTEsCiAgLm14LXNtLTEgewogICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tYi1zbS0xLAogIC5teS1zbS0xIHsKICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm1sLXNtLTEsCiAgLm14LXNtLTEgewogICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm0tc20tMiB7CiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubXQtc20tMiwKICAubXktc20tMiB7CiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm1yLXNtLTIsCiAgLm14LXNtLTIgewogICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm1iLXNtLTIsCiAgLm15LXNtLTIgewogICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tbC1zbS0yLAogIC5teC1zbS0yIHsKICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm0tc20tMyB7CiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLm10LXNtLTMsCiAgLm15LXNtLTMgewogICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50OwogIH0KICAubXItc20tMywKICAubXgtc20tMyB7CiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLm1iLXNtLTMsCiAgLm15LXNtLTMgewogICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OwogIH0KICAubWwtc20tMywKICAubXgtc20tMyB7CiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50OwogIH0KICAubS1zbS00IHsKICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tdC1zbS00LAogIC5teS1zbS00IHsKICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubXItc20tNCwKICAubXgtc20tNCB7CiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubWItc20tNCwKICAubXktc20tNCB7CiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm1sLXNtLTQsCiAgLm14LXNtLTQgewogICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubS1zbS01IHsKICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50OwogIH0KICAubXQtc20tNSwKICAubXktc20tNSB7CiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tci1zbS01LAogIC5teC1zbS01IHsKICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50OwogIH0KICAubWItc20tNSwKICAubXktc20tNSB7CiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tbC1zbS01LAogIC5teC1zbS01IHsKICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wLXNtLTAgewogICAgcGFkZGluZzogMCAhaW1wb3J0YW50OwogIH0KICAucHQtc20tMCwKICAucHktc20tMCB7CiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OwogIH0KICAucHItc20tMCwKICAucHgtc20tMCB7CiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7CiAgfQogIC5wYi1zbS0wLAogIC5weS1zbS0wIHsKICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7CiAgfQogIC5wbC1zbS0wLAogIC5weC1zbS0wIHsKICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OwogIH0KICAucC1zbS0xIHsKICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnB0LXNtLTEsCiAgLnB5LXNtLTEgewogICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnByLXNtLTEsCiAgLnB4LXNtLTEgewogICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAucGItc20tMSwKICAucHktc20tMSB7CiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAucGwtc20tMSwKICAucHgtc20tMSB7CiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnAtc20tMiB7CiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnB0LXNtLTIsCiAgLnB5LXNtLTIgewogICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50OwogIH0KICAucHItc20tMiwKICAucHgtc20tMiB7CiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnBiLXNtLTIsCiAgLnB5LXNtLTIgewogICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OwogIH0KICAucGwtc20tMiwKICAucHgtc20tMiB7CiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50OwogIH0KICAucC1zbS0zIHsKICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLnB0LXNtLTMsCiAgLnB5LXNtLTMgewogICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLnByLXNtLTMsCiAgLnB4LXNtLTMgewogICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50OwogIH0KICAucGItc20tMywKICAucHktc20tMyB7CiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OwogIH0KICAucGwtc20tMywKICAucHgtc20tMyB7CiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLnAtc20tNCB7CiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnB0LXNtLTQsCiAgLnB5LXNtLTQgewogICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50OwogIH0KICAucHItc20tNCwKICAucHgtc20tNCB7CiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnBiLXNtLTQsCiAgLnB5LXNtLTQgewogICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50OwogIH0KICAucGwtc20tNCwKICAucHgtc20tNCB7CiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OwogIH0KICAucC1zbS01IHsKICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLnB0LXNtLTUsCiAgLnB5LXNtLTUgewogICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLnByLXNtLTUsCiAgLnB4LXNtLTUgewogICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50OwogIH0KICAucGItc20tNSwKICAucHktc20tNSB7CiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OwogIH0KICAucGwtc20tNSwKICAucHgtc20tNSB7CiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLm0tc20tYXV0byB7CiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsKICB9CiAgLm10LXNtLWF1dG8sCiAgLm15LXNtLWF1dG8gewogICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50OwogIH0KICAubXItc20tYXV0bywKICAubXgtc20tYXV0byB7CiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsKICB9CiAgLm1iLXNtLWF1dG8sCiAgLm15LXNtLWF1dG8gewogICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50OwogIH0KICAubWwtc20tYXV0bywKICAubXgtc20tYXV0byB7CiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50OwogIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7CiAgLm0tbWQtMCB7CiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsKICB9CiAgLm10LW1kLTAsCiAgLm15LW1kLTAgewogICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OwogIH0KICAubXItbWQtMCwKICAubXgtbWQtMCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsKICB9CiAgLm1iLW1kLTAsCiAgLm15LW1kLTAgewogICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OwogIH0KICAubWwtbWQtMCwKICAubXgtbWQtMCB7CiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OwogIH0KICAubS1tZC0xIHsKICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAubXQtbWQtMSwKICAubXktbWQtMSB7CiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tci1tZC0xLAogIC5teC1tZC0xIHsKICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAubWItbWQtMSwKICAubXktbWQtMSB7CiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tbC1tZC0xLAogIC5teC1tZC0xIHsKICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tLW1kLTIgewogICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm10LW1kLTIsCiAgLm15LW1kLTIgewogICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tci1tZC0yLAogIC5teC1tZC0yIHsKICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tYi1tZC0yLAogIC5teS1tZC0yIHsKICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubWwtbWQtMiwKICAubXgtbWQtMiB7CiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tLW1kLTMgewogICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tdC1tZC0zLAogIC5teS1tZC0zIHsKICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLm1yLW1kLTMsCiAgLm14LW1kLTMgewogICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tYi1tZC0zLAogIC5teS1tZC0zIHsKICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLm1sLW1kLTMsCiAgLm14LW1kLTMgewogICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLm0tbWQtNCB7CiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubXQtbWQtNCwKICAubXktbWQtNCB7CiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm1yLW1kLTQsCiAgLm14LW1kLTQgewogICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm1iLW1kLTQsCiAgLm15LW1kLTQgewogICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tbC1tZC00LAogIC5teC1tZC00IHsKICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm0tbWQtNSB7CiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLm10LW1kLTUsCiAgLm15LW1kLTUgewogICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50OwogIH0KICAubXItbWQtNSwKICAubXgtbWQtNSB7CiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLm1iLW1kLTUsCiAgLm15LW1kLTUgewogICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OwogIH0KICAubWwtbWQtNSwKICAubXgtbWQtNSB7CiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50OwogIH0KICAucC1tZC0wIHsKICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsKICB9CiAgLnB0LW1kLTAsCiAgLnB5LW1kLTAgewogICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsKICB9CiAgLnByLW1kLTAsCiAgLnB4LW1kLTAgewogICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OwogIH0KICAucGItbWQtMCwKICAucHktbWQtMCB7CiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OwogIH0KICAucGwtbWQtMCwKICAucHgtbWQtMCB7CiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsKICB9CiAgLnAtbWQtMSB7CiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wdC1tZC0xLAogIC5weS1tZC0xIHsKICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wci1tZC0xLAogIC5weC1tZC0xIHsKICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnBiLW1kLTEsCiAgLnB5LW1kLTEgewogICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnBsLW1kLTEsCiAgLnB4LW1kLTEgewogICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wLW1kLTIgewogICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wdC1tZC0yLAogIC5weS1tZC0yIHsKICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnByLW1kLTIsCiAgLnB4LW1kLTIgewogICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wYi1tZC0yLAogIC5weS1tZC0yIHsKICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnBsLW1kLTIsCiAgLnB4LW1kLTIgewogICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnAtbWQtMyB7CiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wdC1tZC0zLAogIC5weS1tZC0zIHsKICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wci1tZC0zLAogIC5weC1tZC0zIHsKICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLnBiLW1kLTMsCiAgLnB5LW1kLTMgewogICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLnBsLW1kLTMsCiAgLnB4LW1kLTMgewogICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wLW1kLTQgewogICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wdC1tZC00LAogIC5weS1tZC00IHsKICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnByLW1kLTQsCiAgLnB4LW1kLTQgewogICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wYi1tZC00LAogIC5weS1tZC00IHsKICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnBsLW1kLTQsCiAgLnB4LW1kLTQgewogICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnAtbWQtNSB7CiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wdC1tZC01LAogIC5weS1tZC01IHsKICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wci1tZC01LAogIC5weC1tZC01IHsKICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLnBiLW1kLTUsCiAgLnB5LW1kLTUgewogICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLnBsLW1kLTUsCiAgLnB4LW1kLTUgewogICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tLW1kLWF1dG8gewogICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7CiAgfQogIC5tdC1tZC1hdXRvLAogIC5teS1tZC1hdXRvIHsKICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDsKICB9CiAgLm1yLW1kLWF1dG8sCiAgLm14LW1kLWF1dG8gewogICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7CiAgfQogIC5tYi1tZC1hdXRvLAogIC5teS1tZC1hdXRvIHsKICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDsKICB9CiAgLm1sLW1kLWF1dG8sCiAgLm14LW1kLWF1dG8gewogICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgewogIC5tLWxnLTAgewogICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7CiAgfQogIC5tdC1sZy0wLAogIC5teS1sZy0wIHsKICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsKICB9CiAgLm1yLWxnLTAsCiAgLm14LWxnLTAgewogICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7CiAgfQogIC5tYi1sZy0wLAogIC5teS1sZy0wIHsKICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsKICB9CiAgLm1sLWxnLTAsCiAgLm14LWxnLTAgewogICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsKICB9CiAgLm0tbGctMSB7CiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm10LWxnLTEsCiAgLm15LWxnLTEgewogICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAubXItbGctMSwKICAubXgtbGctMSB7CiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm1iLWxnLTEsCiAgLm15LWxnLTEgewogICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAubWwtbGctMSwKICAubXgtbGctMSB7CiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAubS1sZy0yIHsKICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tdC1sZy0yLAogIC5teS1sZy0yIHsKICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubXItbGctMiwKICAubXgtbGctMiB7CiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubWItbGctMiwKICAubXktbGctMiB7CiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm1sLWxnLTIsCiAgLm14LWxnLTIgewogICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubS1sZy0zIHsKICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50OwogIH0KICAubXQtbGctMywKICAubXktbGctMyB7CiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tci1sZy0zLAogIC5teC1sZy0zIHsKICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50OwogIH0KICAubWItbGctMywKICAubXktbGctMyB7CiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tbC1sZy0zLAogIC5teC1sZy0zIHsKICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tLWxnLTQgewogICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm10LWxnLTQsCiAgLm15LWxnLTQgewogICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tci1sZy00LAogIC5teC1sZy00IHsKICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tYi1sZy00LAogIC5teS1sZy00IHsKICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubWwtbGctNCwKICAubXgtbGctNCB7CiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tLWxnLTUgewogICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tdC1sZy01LAogIC5teS1sZy01IHsKICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLm1yLWxnLTUsCiAgLm14LWxnLTUgewogICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tYi1sZy01LAogIC5teS1sZy01IHsKICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLm1sLWxnLTUsCiAgLm14LWxnLTUgewogICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLnAtbGctMCB7CiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7CiAgfQogIC5wdC1sZy0wLAogIC5weS1sZy0wIHsKICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7CiAgfQogIC5wci1sZy0wLAogIC5weC1sZy0wIHsKICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsKICB9CiAgLnBiLWxnLTAsCiAgLnB5LWxnLTAgewogICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsKICB9CiAgLnBsLWxnLTAsCiAgLnB4LWxnLTAgewogICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7CiAgfQogIC5wLWxnLTEgewogICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAucHQtbGctMSwKICAucHktbGctMSB7CiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAucHItbGctMSwKICAucHgtbGctMSB7CiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wYi1sZy0xLAogIC5weS1sZy0xIHsKICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wbC1sZy0xLAogIC5weC1sZy0xIHsKICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAucC1sZy0yIHsKICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50OwogIH0KICAucHQtbGctMiwKICAucHktbGctMiB7CiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wci1sZy0yLAogIC5weC1sZy0yIHsKICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OwogIH0KICAucGItbGctMiwKICAucHktbGctMiB7CiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wbC1sZy0yLAogIC5weC1sZy0yIHsKICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wLWxnLTMgewogICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50OwogIH0KICAucHQtbGctMywKICAucHktbGctMyB7CiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50OwogIH0KICAucHItbGctMywKICAucHgtbGctMyB7CiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wYi1sZy0zLAogIC5weS1sZy0zIHsKICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wbC1sZy0zLAogIC5weC1sZy0zIHsKICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OwogIH0KICAucC1sZy00IHsKICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50OwogIH0KICAucHQtbGctNCwKICAucHktbGctNCB7CiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wci1sZy00LAogIC5weC1sZy00IHsKICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50OwogIH0KICAucGItbGctNCwKICAucHktbGctNCB7CiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wbC1sZy00LAogIC5weC1sZy00IHsKICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wLWxnLTUgewogICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50OwogIH0KICAucHQtbGctNSwKICAucHktbGctNSB7CiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50OwogIH0KICAucHItbGctNSwKICAucHgtbGctNSB7CiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wYi1sZy01LAogIC5weS1sZy01IHsKICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wbC1sZy01LAogIC5weC1sZy01IHsKICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50OwogIH0KICAubS1sZy1hdXRvIHsKICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50OwogIH0KICAubXQtbGctYXV0bywKICAubXktbGctYXV0byB7CiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7CiAgfQogIC5tci1sZy1hdXRvLAogIC5teC1sZy1hdXRvIHsKICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50OwogIH0KICAubWItbGctYXV0bywKICAubXktbGctYXV0byB7CiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7CiAgfQogIC5tbC1sZy1hdXRvLAogIC5teC1sZy1hdXRvIHsKICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7CiAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7CiAgLm0teGwtMCB7CiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsKICB9CiAgLm10LXhsLTAsCiAgLm15LXhsLTAgewogICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OwogIH0KICAubXIteGwtMCwKICAubXgteGwtMCB7CiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsKICB9CiAgLm1iLXhsLTAsCiAgLm15LXhsLTAgewogICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OwogIH0KICAubWwteGwtMCwKICAubXgteGwtMCB7CiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OwogIH0KICAubS14bC0xIHsKICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAubXQteGwtMSwKICAubXkteGwtMSB7CiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tci14bC0xLAogIC5teC14bC0xIHsKICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50OwogIH0KICAubWIteGwtMSwKICAubXkteGwtMSB7CiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tbC14bC0xLAogIC5teC14bC0xIHsKICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tLXhsLTIgewogICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm10LXhsLTIsCiAgLm15LXhsLTIgewogICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tci14bC0yLAogIC5teC14bC0yIHsKICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tYi14bC0yLAogIC5teS14bC0yIHsKICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubWwteGwtMiwKICAubXgteGwtMiB7CiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tLXhsLTMgewogICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tdC14bC0zLAogIC5teS14bC0zIHsKICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLm1yLXhsLTMsCiAgLm14LXhsLTMgewogICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tYi14bC0zLAogIC5teS14bC0zIHsKICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLm1sLXhsLTMsCiAgLm14LXhsLTMgewogICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLm0teGwtNCB7CiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50OwogIH0KICAubXQteGwtNCwKICAubXkteGwtNCB7CiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm1yLXhsLTQsCiAgLm14LXhsLTQgewogICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm1iLXhsLTQsCiAgLm15LXhsLTQgewogICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tbC14bC00LAogIC5teC14bC00IHsKICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLm0teGwtNSB7CiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLm10LXhsLTUsCiAgLm15LXhsLTUgewogICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50OwogIH0KICAubXIteGwtNSwKICAubXgteGwtNSB7CiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLm1iLXhsLTUsCiAgLm15LXhsLTUgewogICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OwogIH0KICAubWwteGwtNSwKICAubXgteGwtNSB7CiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50OwogIH0KICAucC14bC0wIHsKICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsKICB9CiAgLnB0LXhsLTAsCiAgLnB5LXhsLTAgewogICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsKICB9CiAgLnByLXhsLTAsCiAgLnB4LXhsLTAgewogICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OwogIH0KICAucGIteGwtMCwKICAucHkteGwtMCB7CiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OwogIH0KICAucGwteGwtMCwKICAucHgteGwtMCB7CiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsKICB9CiAgLnAteGwtMSB7CiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wdC14bC0xLAogIC5weS14bC0xIHsKICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wci14bC0xLAogIC5weC14bC0xIHsKICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnBiLXhsLTEsCiAgLnB5LXhsLTEgewogICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnBsLXhsLTEsCiAgLnB4LXhsLTEgewogICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wLXhsLTIgewogICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wdC14bC0yLAogIC5weS14bC0yIHsKICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnByLXhsLTIsCiAgLnB4LXhsLTIgewogICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wYi14bC0yLAogIC5weS14bC0yIHsKICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnBsLXhsLTIsCiAgLnB4LXhsLTIgewogICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnAteGwtMyB7CiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wdC14bC0zLAogIC5weS14bC0zIHsKICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wci14bC0zLAogIC5weC14bC0zIHsKICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLnBiLXhsLTMsCiAgLnB5LXhsLTMgewogICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsKICB9CiAgLnBsLXhsLTMsCiAgLnB4LXhsLTMgewogICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wLXhsLTQgewogICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wdC14bC00LAogIC5weS14bC00IHsKICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnByLXhsLTQsCiAgLnB4LXhsLTQgewogICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wYi14bC00LAogIC5weS14bC00IHsKICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnBsLXhsLTQsCiAgLnB4LXhsLTQgewogICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDsKICB9CiAgLnAteGwtNSB7CiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wdC14bC01LAogIC5weS14bC01IHsKICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5wci14bC01LAogIC5weC14bC01IHsKICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLnBiLXhsLTUsCiAgLnB5LXhsLTUgewogICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDsKICB9CiAgLnBsLXhsLTUsCiAgLnB4LXhsLTUgewogICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7CiAgfQogIC5tLXhsLWF1dG8gewogICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7CiAgfQogIC5tdC14bC1hdXRvLAogIC5teS14bC1hdXRvIHsKICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDsKICB9CiAgLm1yLXhsLWF1dG8sCiAgLm14LXhsLWF1dG8gewogICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7CiAgfQogIC5tYi14bC1hdXRvLAogIC5teS14bC1hdXRvIHsKICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDsKICB9CiAgLm1sLXhsLWF1dG8sCiAgLm14LXhsLWF1dG8gewogICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDsKICB9Cn0KCi50ZXh0LWp1c3RpZnkgewogIHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsKfQoKLnRleHQtbm93cmFwIHsKICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7Cn0KCi50ZXh0LXRydW5jYXRlIHsKICBvdmVyZmxvdzogaGlkZGVuOwogIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogIHdoaXRlLXNwYWNlOiBub3dyYXA7Cn0KCi50ZXh0LWxlZnQgewogIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsKfQoKLnRleHQtcmlnaHQgewogIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7Cn0KCi50ZXh0LWNlbnRlciB7CiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgewogIC50ZXh0LXNtLWxlZnQgewogICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OwogIH0KICAudGV4dC1zbS1yaWdodCB7CiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OwogIH0KICAudGV4dC1zbS1jZW50ZXIgewogICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7CiAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHsKICAudGV4dC1tZC1sZWZ0IHsKICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsKICB9CiAgLnRleHQtbWQtcmlnaHQgewogICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsKICB9CiAgLnRleHQtbWQtY2VudGVyIHsKICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OwogIH0KfQoKQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7CiAgLnRleHQtbGctbGVmdCB7CiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7CiAgfQogIC50ZXh0LWxnLXJpZ2h0IHsKICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7CiAgfQogIC50ZXh0LWxnLWNlbnRlciB7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHsKICAudGV4dC14bC1sZWZ0IHsKICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsKICB9CiAgLnRleHQteGwtcmlnaHQgewogICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsKICB9CiAgLnRleHQteGwtY2VudGVyIHsKICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OwogIH0KfQoKLnRleHQtbG93ZXJjYXNlIHsKICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7Cn0KCi50ZXh0LXVwcGVyY2FzZSB7CiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50Owp9CgoudGV4dC1jYXBpdGFsaXplIHsKICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50Owp9CgouZm9udC13ZWlnaHQtbGlnaHQgewogIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDsKfQoKLmZvbnQtd2VpZ2h0LW5vcm1hbCB7CiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50Owp9CgouZm9udC13ZWlnaHQtYm9sZCB7CiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50Owp9CgouZm9udC1pdGFsaWMgewogIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50Owp9CgoudGV4dC13aGl0ZSB7CiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsKfQoKLnRleHQtcHJpbWFyeSB7CiAgY29sb3I6ICMwMDdiZmYgIWltcG9ydGFudDsKfQoKYS50ZXh0LXByaW1hcnk6Zm9jdXMsIGEudGV4dC1wcmltYXJ5OmhvdmVyIHsKICBjb2xvcjogIzAwNjJjYyAhaW1wb3J0YW50Owp9CgoudGV4dC1zZWNvbmRhcnkgewogIGNvbG9yOiAjODY4ZTk2ICFpbXBvcnRhbnQ7Cn0KCmEudGV4dC1zZWNvbmRhcnk6Zm9jdXMsIGEudGV4dC1zZWNvbmRhcnk6aG92ZXIgewogIGNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7Cn0KCi50ZXh0LXN1Y2Nlc3MgewogIGNvbG9yOiAjMjhhNzQ1ICFpbXBvcnRhbnQ7Cn0KCmEudGV4dC1zdWNjZXNzOmZvY3VzLCBhLnRleHQtc3VjY2Vzczpob3ZlciB7CiAgY29sb3I6ICMxZTdlMzQgIWltcG9ydGFudDsKfQoKLnRleHQtaW5mbyB7CiAgY29sb3I6ICMxN2EyYjggIWltcG9ydGFudDsKfQoKYS50ZXh0LWluZm86Zm9jdXMsIGEudGV4dC1pbmZvOmhvdmVyIHsKICBjb2xvcjogIzExN2E4YiAhaW1wb3J0YW50Owp9CgoudGV4dC13YXJuaW5nIHsKICBjb2xvcjogI2ZmYzEwNyAhaW1wb3J0YW50Owp9CgphLnRleHQtd2FybmluZzpmb2N1cywgYS50ZXh0LXdhcm5pbmc6aG92ZXIgewogIGNvbG9yOiAjZDM5ZTAwICFpbXBvcnRhbnQ7Cn0KCi50ZXh0LWRhbmdlciB7CiAgY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDsKfQoKYS50ZXh0LWRhbmdlcjpmb2N1cywgYS50ZXh0LWRhbmdlcjpob3ZlciB7CiAgY29sb3I6ICNiZDIxMzAgIWltcG9ydGFudDsKfQoKLnRleHQtbGlnaHQgewogIGNvbG9yOiAjZjhmOWZhICFpbXBvcnRhbnQ7Cn0KCmEudGV4dC1saWdodDpmb2N1cywgYS50ZXh0LWxpZ2h0OmhvdmVyIHsKICBjb2xvcjogI2RhZTBlNSAhaW1wb3J0YW50Owp9CgoudGV4dC1kYXJrIHsKICBjb2xvcjogIzM0M2E0MCAhaW1wb3J0YW50Owp9CgphLnRleHQtZGFyazpmb2N1cywgYS50ZXh0LWRhcms6aG92ZXIgewogIGNvbG9yOiAjMWQyMTI0ICFpbXBvcnRhbnQ7Cn0KCi50ZXh0LW11dGVkIHsKICBjb2xvcjogIzg2OGU5NiAhaW1wb3J0YW50Owp9CgoudGV4dC1oaWRlIHsKICBmb250OiAwLzAgYTsKICBjb2xvcjogdHJhbnNwYXJlbnQ7CiAgdGV4dC1zaGFkb3c6IG5vbmU7CiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgYm9yZGVyOiAwOwp9CgoudmlzaWJsZSB7CiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50Owp9CgouaW52aXNpYmxlIHsKICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDsKfQovKiMgc291cmNlTWFwcGluZ1VSTD1ib290c3RyYXAuY3NzLm1hcCAqLw=="}},"time_used":2130,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2130,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/css/style.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.097Z","timestamp":1785143908097,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /css/style.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:41 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"18a5e-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 15252\r\nKeep-Alive: timeout=5, max=100\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":100958,"size_decoded":15616,"mime_type":"text/css","magic":"assembler source, ASCII text","md5":"ea9607edc915d649162ff6ef205650bb","sha1":"cbbb57e37b0b8534a98ae5d97c8b9b4edc950f92","sha256":"aa4914d90358deb612f95a4fe990f52630ed0916a0de01638394d2ae38987a34","sha512":"5142e47d667100210b430bd12852c91b872f767465cca780732ecda72aee3a1e9e2bc19851a45ff9a4b3deb13c1b54646e5edc6c33553292541c6bef935dc61f","ssdeep":"1536:yqLTMR0BMxmUcUMEfZ2z0pt6b/t6Pt6uL7yeBBBYCkCWCbw06gJ6ktuy+aF8XZde:ylsY7xBBYCk6J83MdLz","tlshash":"a2a354529e741600212fe598be93dba4e33c41a3d44ecde97b90105cad89bd851bff8e","first_seen":"2025-10-06T17:20:27.0312Z","last_seen":"2026-07-27T09:20:18.344603Z","times_seen":13,"resource_available":false,"data":"LyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkBGaWxlOiBEZWZhdWx0IFN0eWxlcwpAQXV0aG9yOiBEZXNpZ25BcmMKQFVSTDogaHR0cDovL2RlbW9zLnBpeGVsYXRldGhlbWVzLmNvbQpBdXRob3IgRS1tYWlsOiByb255bWlhMDE1QGdtYWlsLmNvbQoKVGhpcyBmaWxlIGNvbnRhaW5zIHRoZSBzdHlsaW5nIGZvciB0aGUgYWN0dWFsIHRoZW1lLCB0aGlzCmlzIHRoZSBmaWxlIHlvdSBuZWVkIHRvIGVkaXQgdG8gY2hhbmdlIHRoZSBsb29rIG9mIHRoZQp0aGVtZS4KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpAVGVtcGxhdGUgTmFtZTogQml4Y29pbgpAQXV0aG9yOiBSb255CkBEZXZlbG9wZWQgQnk6IFJvbnkKQERldmVsb3BlciBVUkw6IGh0dHA6Ly9yb2NreS53ZXRoZW1lei5jb20KQXV0aG9yIEUtbWFpbDogcm9ueW1pYTAxNUBnbWFpbC5jb20KCkBEZWZhdWx0IFN0eWxlcwoKVGFibGUgb2YgQ29udGVudDoKMDEvIFZhcmlhYmxlcwowMi8gcHJlZGVmaW4KMDMvIGhlYWRlcgowNC8gYnV0dG9uCjA1LyBiYW5uZXIKMDYvIGJyZWFkY3J1bWIKMDcvIGFib3V0CjA4LyB0ZWFtCjA5LyB0ZXN0aW1vbmlhbCAKMTAvIGJsb2cgCjExLyB2aWRlbyAKMTIvIGZlYXR1cmVzIAoxMy8gZmFxICAKMTQvIGNhcmVlciAgCjE1LyB0aW1lbGluZQoxNi8gY29udGFjdCAKMTcvIGNvbWluZy1zb29uIAoxOC8gZm9vdGVyCgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwovKmZvbnQgVmFyaWFibGVzKi8KLypDb2xvciBWYXJpYWJsZXMqLwovKj09PT09PT09PT09PT09PT09PT0gZm9udHMgPT09PT09PT09PT09PT09PT09PT0qLwpAaW1wb3J0IHVybCgiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU9wZW4rU2FuczozMDAsNDAwLDYwMCw3MDAsOTAwfFBsYXlmYWlyK0Rpc3BsYXk6NDAwLDcwMHxQb3BwaW5zOjMwMCw0MDAsNTAwLDYwMCw3MDB8TGF0bzozMDAsNDAwLDcwMHxNb250c2VycmF0OjQwMCw1MDB8TG9yYTo0MDAsNDAwaSIpOwouY29sLW1kLW9mZnNldC1yaWdodC0xLCAuY29sLWxnLW9mZnNldC1yaWdodC0xIHsKICBtYXJnaW4tcmlnaHQ6IDguMzMzMzMzMzMlOwp9CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLmxpc3Rfc3R5bGUgewogIGxpc3Qtc3R5bGU6IG5vbmU7CiAgbWFyZ2luOiAwcHg7CiAgcGFkZGluZzogMHB4Owp9CgphIHsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2UtaW4tb3V0OwogIC1vLXRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7CiAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlLWluLW91dDsKfQoKYTpob3ZlciwgYTpmb2N1cyB7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIG91dGxpbmU6IG5vbmU7Cn0KCi5yb3cubTAgewogIG1hcmdpbjogMHB4Owp9CgoucDAgewogIHBhZGRpbmc6IDBweDsKfQoKYm9keSB7CiAgbGluZS1oZWlnaHQ6IDI2cHg7CiAgZm9udC1zaXplOiAxNnB4OwogIGZvbnQtZmFtaWx5OiAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzc5Nzk3OTsKfQoKaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7CiAgZm9udC1mYW1pbHk6ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBmb250LXdlaWdodDogNjAwOwp9CgoubXRfMjAgewogIG1hcmdpbi10b3A6IDIwcHg7Cn0KCi5tdF83MCB7CiAgbWFyZ2luLXRvcDogNzBweDsKfQoKLm1iXzAgewogIG1hcmdpbi1ib3R0b206IDBweDsKfQoKLnB0XzMwIHsKICBwYWRkaW5nLXRvcDogMzBweDsKfQoKLm1iXzUwIHsKICBtYXJnaW4tYm90dG9tOiA1MHB4Owp9CgoubWJfNzAgewogIG1hcmdpbi1ib3R0b206IDcwcHg7Cn0KCi5tYl84MCB7CiAgbWFyZ2luLWJvdHRvbTogODBweDsKfQoKLm1iXzYwIHsKICBtYXJnaW4tYm90dG9tOiA2MHB4Owp9CgoubWJfNDIgewogIG1hcmdpbi1ib3R0b206IDQycHg7Cn0KCmJ1dHRvbjpmb2N1cyB7CiAgb3V0bGluZTogbm9uZTsKfQoKaTpiZWZvcmUgewogIG1hcmdpbi1sZWZ0OiAwcHggIWltcG9ydGFudDsKfQoKQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgewogIC5jb250YWluZXIgewogICAgbWF4LXdpZHRoOiAxMjAwcHg7CiAgfQp9CgouYWJvdXRfdGl0bGUgewogIGZvbnQ6IDQwMCAyMHB4LzI4cHggIlBsYXlmYWlyIERpc3BsYXkiLCBzZXJpZjsKICBjb2xvcjogIzE3MTI5NzsKICBmb250LXN0eWxlOiBpdGFsaWM7Cn0KCi5hYm91dF90aXRsZTphZnRlciB7CiAgY29udGVudDogIiI7CiAgd2lkdGg6IDU1cHg7CiAgaGVpZ2h0OiAycHg7CiAgYmFja2dyb3VuZDogI2QxZDFkMTsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgbWFyZ2luLWxlZnQ6IDMwcHg7Cn0KCi5jX2JsdWUgewogIGNvbG9yOiAjMTcxMjk3Owp9Cgouc2VjdGlvbl90aXRsZSBoMiB7CiAgZm9udDogNjAwIDM1cHgvNDBweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7CiAgbWFyZ2luLWJvdHRvbTogMHB4Owp9Cgouc2VjdGlvbl90aXRsZSAudGl0bGVfcCB7CiAgbWFyZ2luLWJvdHRvbTogMHB4OwogIHBhZGRpbmctdG9wOiA1cHg7Cn0KCi5ib3R0b21fbGluZSB7CiAgYmFja2dyb3VuZDogIzA4YWU4ZDsKICB3aWR0aDogODBweDsKICBoZWlnaHQ6IDJweDsKICBtYXJnaW46IDI2cHggMHB4IDBweDsKICBkaXNwbGF5OiBibG9jazsKfQoKLmJvdHRvbV9saW5lLndfNTAgewogIHdpZHRoOiA1MHB4Owp9CgoudGV4dC1jZW50ZXIgLmJvdHRvbV9saW5lIHsKICBtYXJnaW4tbGVmdDogYXV0bzsKICBtYXJnaW4tcmlnaHQ6IGF1dG87Cn0KCi5zZWNfY193aGl0ZSBoMiB7CiAgY29sb3I6ICNmZmY7Cn0KCi5zZWNfY193aGl0ZSBwIHsKICBjb2xvcjogI2ZmZjsKfQoKLnNlY19jX3doaXRlIC5ib3R0b21fbGluZSB7CiAgYmFja2dyb3VuZDogI2ZmZjsKfQoKLnNlY3Rpb25fdGl0bGUgLmZfMzIgewogIGZvbnQtc2l6ZTogMzJweDsKfQoKLnRpdGxlX2NvbG9yIHsKICBjb2xvcjogIzI0MjQyNDsKfQoKLnNlY3Rpb25fdGl0bGVfdGhyZWUgewogIG1hcmdpbi1ib3R0b206IDUwcHg7Cn0KCi5zZWN0aW9uX3RpdGxlX3RocmVlIGgyIHsKICBmb250OiA3MDAgMzVweC80N3B4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzI0MjQyNDsKfQoKLnNlY3Rpb25fdGl0bGVfdGhyZWUgaDI6YWZ0ZXIgewogIGNvbnRlbnQ6ICIiOwogIHdpZHRoOiA1NXB4OwogIGhlaWdodDogMnB4OwogIGJhY2tncm91bmQ6ICMwOGFlOGQ7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIG1hcmdpbi1sZWZ0OiAxNXB4Owp9Cgouc2VjdGlvbl90aXRsZV90aHJlZSBoMi5mXzMyIHsKICBmb250LXNpemU6IDMycHg7Cn0KCi5zZWN0aW9uX3RpdGxlX3RocmVlIHAgewogIGZvbnQ6IDQwMCAyMHB4LzI2cHggIkxvcmEiLCBzZXJpZjsKICBmb250LXN0eWxlOiBpdGFsaWM7CiAgY29sb3I6ICM3OTc5Nzk7Cn0KCi5mXzMyIHsKICBmb250LXNpemU6IDMycHg7Cn0KCi50aXRsZV9wIHsKICBmb250OiA0MDAgMjBweC8yNnB4ICJMb3JhIiwgc2VyaWY7CiAgZm9udC1zdHlsZTogaXRhbGljOwogIGNvbG9yOiAjNzk3OTc5Owp9CgoudGl0bGVfdHdvX3AgewogIGZvbnQ6IDQwMCAxNnB4LzI4cHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICM3OTc5Nzk7Cn0KCi5zZWN0aW9uX3RpdGxlX3R3byAuYm90dG9tX2xpbmUgewogIG1hcmdpbi1sZWZ0OiAwOwogIHdpZHRoOiA1NXB4OwogIG1hcmdpbi10b3A6IDEwcHg7Cn0KCi50aXRsZV9oMiB7CiAgZm9udDogNzAwIDM1cHgvNTBweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7Cn0KCi50aXRsZV9oNCB7CiAgZm9udDogNTAwIDIycHgvMzJweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7Cn0KCi5iZ19jb2xvciB7CiAgYmFja2dyb3VuZDogI2Y0ZjNmNTsKfQoKLmRfZmxleCB7CiAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgZGlzcGxheTogZmxleDsKfQoKLnJvd19yZXZlcnNlIHsKICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7CiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlOwogIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7CiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOwp9CgouYWxpZ25faXRlbXMgewogIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjsKICBhbGlnbi1pdGVtczogY2VudGVyOwp9CgouY193aGl0ZSB7CiAgY29sb3I6ICNmZmY7Cn0KCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwovKiBtYWluX2hlYWRlcl9hcmVhIGNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLm1haW5faGVhZGVyX2FyZWEgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB3aWR0aDogMTAwJTsKICB6LWluZGV4OiAyNTsKICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTUpOwogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpOwogIHRvcDogMHB4Owp9CgouaGVhZGVyX3RvcCAuaGVhZGVyX3RvcF9pbm5lciB7CiAgZm9udDogNTAwIDE0cHgvNDdweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICNmZmY7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE0OSk7Cn0KCi5oZWFkZXJfdG9wIC5oZWFkZXJfdG9wX2lubmVyIHVsIGxpIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cn0KCi5oZWFkZXJfdG9wIC5oZWFkZXJfdG9wX2lubmVyIHVsIGxpIGEgewogIGNvbG9yOiAjZmZmOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLmhlYWRlcl90b3AgLmhlYWRlcl90b3BfaW5uZXIgdWwgbGkgYTpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB3aWR0aDogMnB4OwogIGhlaWdodDogMTJweDsKICBsZWZ0OiAxNXB4OwogIHRvcDogNTAlOwogIGxlZnQ6IC0xOHB4OwogIG1hcmdpbi10b3A6IC02cHg7CiAgYmFja2dyb3VuZDogI2ZmZjsKICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4ZGVnKTsKICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMThkZWcpOwogIHRyYW5zZm9ybTogcm90YXRlKDE4ZGVnKTsKfQoKLmhlYWRlcl90b3AgLmhlYWRlcl90b3BfaW5uZXIgdWwgbGkgYTpob3ZlciB7CiAgY29sb3I6ICMwOGFlOGQ7Cn0KCi5oZWFkZXJfdG9wIC5oZWFkZXJfdG9wX2lubmVyIHVsIGxpOmZpcnN0LWNoaWxkIGE6YmVmb3JlIHsKICBkaXNwbGF5OiBub25lOwp9CgouaGVhZGVyX3RvcCAuaGVhZGVyX3RvcF9pbm5lciB1bCBsaSArIGxpIHsKICBtYXJnaW4tbGVmdDogMzBweDsKfQoKLmhlYWRlcl90b3AuaF90b3BfdHdvIC5oZWFkZXJfdG9wX2lubmVyIHVsIGxpIGEgewogIGNvbG9yOiAjOTQ4ZWExOwp9CgouaGVhZGVyX3RvcC5oX3RvcF90d28gLmhlYWRlcl90b3BfaW5uZXIgdWwgbGkgYTpiZWZvcmUgewogIGJhY2tncm91bmQ6ICM5NDhlYTE7Cn0KCi5uYXZiYXIgewogIHBhZGRpbmc6IDBweDsKfQoKLm5hdmJhciAubmF2YmFyLWJyYW5kIGltZyArIGltZyB7CiAgLyogZGlzcGxheTogbm9uZTsgKi8KICBjb250ZW50OnVybCgiLi4vbG9nby5wbmciKTsKICBtYXgtd2lkdGg6IDE3NnB4Owp9CgoubmF2YmFyIC5uYXYgLm5hdi1pdGVtIGEgewogIGZvbnQ6IDUwMCAxNnB4Lzg1cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjZmZmOwogIHBhZGRpbmc6IDBweDsKfQoKLm5hdmJhciAubmF2IC5uYXYtaXRlbSBhOmFmdGVyIHsKICBkaXNwbGF5OiBub25lOwp9CgoubmF2YmFyIC5uYXYgLm5hdi1pdGVtOmhvdmVyIGEsIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW0uYWN0aXZlIGEgewogIGNvbG9yOiAjMDhhZThkOwp9CgoubmF2YmFyIC5uYXYgLm5hdi1pdGVtLnN1Ym1lbnUgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLm5hdmJhciAubmF2IC5uYXYtaXRlbS5zdWJtZW51IHVsIHsKICBib3JkZXI6IG5vbmU7CiAgcGFkZGluZzogMHB4IDE1cHg7CiAgYm9yZGVyLXJhZGl1czogMHB4OwogIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICBib3gtc2hhZG93OiBub25lOwogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogIG1hcmdpbjogMHB4Owp9CgpAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHsKICAubmF2YmFyIC5uYXYgLm5hdi1pdGVtLnN1Ym1lbnUgdWwgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAxMDAlOwogICAgbGVmdDogLTQwcHg7CiAgICBtaW4td2lkdGg6IDIwMHB4OwogICAgYmFja2dyb3VuZDogI2ZmZjsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA2cHggMThweCByZ2JhKDAsIDAsIDAsIDAuMSk7CiAgICBib3gtc2hhZG93OiAwIDZweCAxOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTsKICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICBvcGFjaXR5OiAwOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbjsKICAgIC1vLXRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluOwogICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW47CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGJvcmRlcjogbm9uZTsKICAgIHBhZGRpbmc6IDBweDsKICAgIGJvcmRlci1yYWRpdXM6IDBweDsKICB9Cn0KCi5uYXZiYXIgLm5hdiAubmF2LWl0ZW0uc3VibWVudSB1bDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHdpZHRoOiAwOwogIGhlaWdodDogMDsKICBib3JkZXItc3R5bGU6IHNvbGlkOwogIGJvcmRlci13aWR0aDogMTBweCAxMHB4IDAgMTBweDsKICBib3JkZXItY29sb3I6ICNlZWVlZWUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAyNHB4OwogIHRvcDogNDVweDsKICB6LWluZGV4OiAzOwogIG9wYWNpdHk6IDA7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgNDAwbXMgbGluZWFyOwogIC1vLXRyYW5zaXRpb246IGFsbCA0MDBtcyBsaW5lYXI7CiAgdHJhbnNpdGlvbjogYWxsIDQwMG1zIGxpbmVhcjsKfQoKLm5hdmJhciAubmF2IC5uYXYtaXRlbS5zdWJtZW51IHVsIGxpIHsKICBkaXNwbGF5OiBibG9jazsKICBmbG9hdDogbm9uZTsKICBtYXJnaW4tcmlnaHQ6IDBweDsKICBtYXJnaW4tbGVmdDogMHB4Owp9CgoubmF2YmFyIC5uYXYgLm5hdi1pdGVtLnN1Ym1lbnUgdWwgbGkgYSB7CiAgbGluZS1oZWlnaHQ6IDQ1cHg7CiAgY29sb3I6ICMyNDI0MjQ7CiAgZm9udC1mYW1pbHk6ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBmb250LXdlaWdodDogNTAwOwogIGZvbnQtc2l6ZTogMTVweDsKICBwYWRkaW5nOiAwcHggMzBweDsKICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxNTBtcyBsaW5lYXI7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDE1MG1zIGxpbmVhcjsKICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgbGluZWFyOwogIGRpc3BsYXk6IGJsb2NrOwp9CgoubmF2YmFyIC5uYXYgLm5hdi1pdGVtLnN1Ym1lbnUgdWwgbGk6bGFzdC1jaGlsZCB7CiAgYm9yZGVyLWJvdHRvbTogbm9uZTsKfQoKLm5hdmJhciAubmF2IC5uYXYtaXRlbS5zdWJtZW51IHVsIGxpOmhvdmVyIGEgewogIGJhY2tncm91bmQ6ICNmMmYyZjI7CiAgY29sb3I6ICM0NDY2ZDc7Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgewogIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW0uc3VibWVudTpob3ZlciB1bCB7CiAgICBsZWZ0OiAwcHg7CiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOwogICAgb3BhY2l0eTogMTsKICB9Cn0KCi5uYXZiYXIgLm5hdiAubmF2LWl0ZW0gKyBsaSB7CiAgbWFyZ2luLWxlZnQ6IDMwcHg7Cn0KCi5uYXZiYXIgLm5hdiAuc2VhcmNoX2Ryb3Bkb3duIHsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW47CiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbjsKICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLm5hdmJhciAubmF2IC5zZWFyY2hfZHJvcGRvd24gYTpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHdpZHRoOiAxcHg7CiAgaGVpZ2h0OiAxNXB4OwogIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNDkpOwogIGxlZnQ6IDA7CiAgdG9wOiAwcHg7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICBtYXJnaW46IDBweCAyMHB4Owp9CgoubmF2YmFyIC5uYXYgLnNlYXJjaF9kcm9wZG93biAuc2VhcmNoIHsKICBiYWNrZ3JvdW5kOiAjZmZmOwogIGhlaWdodDogMzVweDsKICBwYWRkaW5nOiAwcHg7CiAgbGluZS1oZWlnaHQ6IDM1cHg7CiAgYm9yZGVyLXJhZGl1czogMHB4OwogIHdpZHRoOiAyMDBweDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAxMDAlOwogIHJpZ2h0OiAwOwogIHotaW5kZXg6IDEwMDA7CiAgb3BhY2l0eTogMDsKICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluOwogIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW47CiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbjsKfQoKLm5hdmJhciAubmF2IC5zZWFyY2hfZHJvcGRvd24gLnNlYXJjaCBsaSAuc2VhcmNoLWZvcm0gewogIHBhZGRpbmc6IDFweCAxMHB4IDBweDsKfQoKLm5hdmJhciAubmF2IC5zZWFyY2hfZHJvcGRvd24gLnNlYXJjaCBsaSAuc2VhcmNoLWZvcm0gLmZvcm0tY29udHJvbCB7CiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgYm9yZGVyOiAwOwogIGZvbnQ6IDQwMCAxNHB4LzMxcHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgcGFkZGluZzogMHB4IDBweCAxcHggN3B4OwogIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICBib3gtc2hhZG93OiBub25lOwogIGNvbG9yOiByZ2JhKDY0LCA2NCwgNjQsIDAuNSk7CiAgZm9udC1zdHlsZTogaXRhbGljOwogIHRleHQtc2hhZG93OiBub25lOwogIGJvcmRlci1yYWRpdXM6IDBweDsKfQoKLm5hdmJhciAubmF2IC5zZWFyY2hfZHJvcGRvd24gLnNlYXJjaCBsaSAuc2VhcmNoLWZvcm0gLmZvcm0tY29udHJvbC5wbGFjZWhvbGRlciB7CiAgY29sb3I6IHJnYmEoNjQsIDY0LCA2NCwgMC41KTsKfQoKLm5hdmJhciAubmF2IC5zZWFyY2hfZHJvcGRvd24gLnNlYXJjaCBsaSAuc2VhcmNoLWZvcm0gLmZvcm0tY29udHJvbDotbW96LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogcmdiYSg2NCwgNjQsIDY0LCAwLjUpOwp9CgoubmF2YmFyIC5uYXYgLnNlYXJjaF9kcm9wZG93biAuc2VhcmNoIGxpIC5zZWFyY2gtZm9ybSAuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogcmdiYSg2NCwgNjQsIDY0LCAwLjUpOwp9CgoubmF2YmFyIC5uYXYgLnNlYXJjaF9kcm9wZG93biAuc2VhcmNoIGxpIC5zZWFyY2gtZm9ybSAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogcmdiYSg2NCwgNjQsIDY0LCAwLjUpOwp9CgoubmF2YmFyIC5uYXYgLnNlYXJjaF9kcm9wZG93biAuc2VhcmNoIGxpIC5zZWFyY2gtZm9ybSAuaW5wdXQtZ3JvdXAtYWRkb24gewogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogIGJvcmRlcjogMHB4OwogIHBhZGRpbmc6IDBweDsKICBib3JkZXItcmFkaXVzOiAwcHg7Cn0KCi5uYXZiYXIgLm5hdiAuc2VhcmNoX2Ryb3Bkb3duIC5zZWFyY2ggbGkgLnNlYXJjaC1mb3JtIC5pbnB1dC1ncm91cC1hZGRvbiBidXR0b24gewogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogIGJvcmRlcjogMHB4OwogIGNvbG9yOiByZ2JhKDY0LCA2NCwgNjQsIDAuNSk7Cn0KCi5uYXZiYXIgLm5hdiAuc2VhcmNoX2Ryb3Bkb3duLm9wZW4gLnNlYXJjaCB7CiAgb3BhY2l0eTogMTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICB2aXNpYmlsaXR5OiB2aXNpYmxlOwp9CgoubmF2YmFyLXRvZ2dsZXJbYXJpYS1leHBhbmRlZD0iZmFsc2UiXSBzcGFuOm50aC1jaGlsZCgyKSB7CiAgb3BhY2l0eTogMTsKfQoKLm5hdmJhci10b2dnbGVyW2FyaWEtZXhwYW5kZWQ9InRydWUiXSBzcGFuOm50aC1jaGlsZCgyKSB7CiAgb3BhY2l0eTogMDsKfQoKLm5hdmJhci10b2dnbGVyW2FyaWEtZXhwYW5kZWQ9InRydWUiXSBzcGFuOmZpcnN0LWNoaWxkIHsKICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7CiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7CiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgdG9wOiA3LjdweDsKfQoKLm5hdmJhci10b2dnbGVyW2FyaWEtZXhwYW5kZWQ9InRydWUiXSBzcGFuOmxhc3QtY2hpbGQgewogIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOwogIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7CiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOwogIGJvdHRvbTogNHB4OwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLm5hdmJhci10b2dnbGVyIHsKICBib3JkZXI6IDBweDsKICBwYWRkaW5nOiAwcHg7CiAgY3Vyc29yOiBwb2ludGVyOwp9CgoubmF2YmFyLXRvZ2dsZXIgc3BhbiB7CiAgZGlzcGxheTogYmxvY2s7CiAgd2lkdGg6IDI1cHg7CiAgaGVpZ2h0OiAycHg7CiAgYmFja2dyb3VuZDogI2ZmZjsKICBtYXJnaW46IGF1dG87CiAgbWFyZ2luLWJvdHRvbTogNHB4OwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDQwMG1zIGxpbmVhcjsKICAtby10cmFuc2l0aW9uOiBhbGwgNDAwbXMgbGluZWFyOwogIHRyYW5zaXRpb246IGFsbCA0MDBtcyBsaW5lYXI7CiAgY3Vyc29yOiBwb2ludGVyOwp9CgoubmF2YmFyLXRvZ2dsZXIgc3BhbjpsYXN0LWNoaWxkIHsKICBtYXJnaW4tYm90dG9tOiAwcHg7Cn0KCi8qPT09PT09PT09PT09PT09PT09PT09IG1haW5faGVhZGVyX2FyZWFfdHdvIGNzcyA9PT09PT09PT09PT09PT09PT09Ki8KLm1haW5faGVhZGVyX2FyZWFfdHdvIHsKICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKfQoKLyo9PT09PT09PT09PT09PSBtYWluX2hlYWRlcl9hcmVhX3RocmVlIGNzcyA9PT09PT09PT09PT09PT09Ki8KLm1haW5faGVhZGVyX2FyZWFfdGhyZWUgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB3aWR0aDogMTAwJTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICB6LWluZGV4OiAyNTsKfQoKLmhlYWRlcl90b3BfdHdvIHsKICBwYWRkaW5nOiAxNHB4IDBweDsKfQoKLmhlYWRlcl90b3BfdHdvIGEgewogIGNvbG9yOiAjZmZmOwp9CgouaF9pbmZvIGEgewogIGZvbnQtc2l6ZTogMTVweDsKICBsaW5lLWhlaWdodDogMjBweDsKICBmb250LWZhbWlseTogIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwp9CgouaF9pbmZvIGEgaSB7CiAgcGFkZGluZy1yaWdodDogMTBweDsKfQoKLmhfaW5mbyBhICsgYSB7CiAgbWFyZ2luLWxlZnQ6IDM2cHg7Cn0KCi5oX2luZm8gYTpob3ZlciB7CiAgY29sb3I6ICMwOGFlOGQ7Cn0KCi5oX3NvY2lhbF9pY29uIGEgewogIGZvbnQtc2l6ZTogMThweDsKICBtYXJnaW4tbGVmdDogMThweDsKfQoKLmhfc29jaWFsX2ljb24gYTpob3ZlciB7CiAgY29sb3I6ICMwOGFlOGQ7Cn0KCi5uYXZfdGhyZWUgewogIGJvcmRlci1yYWRpdXM6IDVweDsKICBiYWNrZ3JvdW5kOiAjMTgyNTU3OwogIHBhZGRpbmc6IDBweCA0MHB4Owp9CgoubmF2X3RocmVlIC5uYXYgLm5hdi1pdGVtIGEgewogIGxpbmUtaGVpZ2h0OiA5NXB4Owp9CgovKj09PT09PT09PT09PT09PSBhZmZpeCBjc3MgPT09PT09PT09PT09PT09Ki8KLm5hdmJhcl9maXhlZCB7CiAgd2lkdGg6IDEwMCU7CiAgbGVmdDogMDsKICB0b3A6IC03MHB4OwogIGJhY2tncm91bmQ6ICNmZmY7CiAgcG9zaXRpb246IGZpeGVkOwogIC13ZWJraXQtYm94LXNoYWRvdzogMCAzcHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7CiAgYm94LXNoYWRvdzogMCAzcHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7CiAgYm9yZGVyLWJvdHRvbTogMHB4OwogIHotaW5kZXg6IDk5OTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MHB4KTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwcHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MHB4KTsKICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDEwMG1zIGxpbmVhciwgLXdlYmtpdC10cmFuc2Zvcm0gNTAwbXMgZWFzZTsKICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMTAwbXMgbGluZWFyLCAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlOwogIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlLCBiYWNrZ3JvdW5kIDEwMG1zIGxpbmVhcjsKICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZSwgYmFja2dyb3VuZCAxMDBtcyBsaW5lYXI7CiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UsIGJhY2tncm91bmQgMTAwbXMgbGluZWFyLCAtd2Via2l0LXRyYW5zZm9ybSA1MDBtcyBlYXNlOwogIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UsIGJhY2tncm91bmQgMTAwbXMgbGluZWFyOwogIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOwp9CgoubmF2YmFyX2ZpeGVkIC5oZWFkZXJfdG9wLCAubmF2YmFyX2ZpeGVkIC5oZWFkZXJfdG9wX3R3byB7CiAgZGlzcGxheTogbm9uZTsKfQoKLm5hdmJhcl9maXhlZCAubmF2YmFyIC5uYXZiYXItYnJhbmQgaW1nIHsKICAvKiBkaXNwbGF5OiBub25lOyAqLwogIGNvbnRlbnQ6dXJsKCIuLi9sb2dvLnBuZyIpOwogIG1heC13aWR0aDogMTc2cHg7Cn0KCi5uYXZiYXJfZml4ZWQgLm5hdmJhciAubmF2YmFyLWJyYW5kIGltZyArIGltZyB7CiAgZGlzcGxheTogYmxvY2s7Cn0KCi5uYXZiYXJfZml4ZWQgLm5hdmJhciAubmF2IC5uYXYtaXRlbSA+IGEgewogIGNvbG9yOiAjMjQyNDI0OwogIGxpbmUtaGVpZ2h0OiA3MHB4Owp9CgoubmF2YmFyX2ZpeGVkIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW06aG92ZXIgPiBhLCAubmF2YmFyX2ZpeGVkIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW0uYWN0aXZlID4gYSB7CiAgY29sb3I6ICMwOGFlOGQ7Cn0KCi5uYXZiYXJfZml4ZWQgLm5hdmJhciAubmF2YmFyLXRvZ2dsZXIgc3BhbiB7CiAgYmFja2dyb3VuZDogIzA4YWU4ZDsKfQoKLm5hdmJhcl9maXhlZC5tYWluX2hlYWRlcl9hcmVhX3RocmVlIHsKICB0b3A6IC03MHB4OwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwcHgpOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzBweCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwcHgpOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBlYXNlLCBiYWNrZ3JvdW5kIDEwMG1zIGxpbmVhciwgLXdlYmtpdC10cmFuc2Zvcm0gMzAwbXMgZWFzZTsKICBib3JkZXItcmFkaXVzOiAwcHg7CiAgcG9zaXRpb246IGZpeGVkOwogIGJhY2tncm91bmQ6ICNmZmY7Cn0KCi5uYXZiYXJfZml4ZWQubWFpbl9oZWFkZXJfYXJlYV90aHJlZSAubmF2YmFyIHsKICBiYWNrZ3JvdW5kOiAjZmZmOwogIGJvcmRlci1yYWRpdXM6IDBweDsKfQoKLm5hdmJhcl9maXhlZC5tYWluX2hlYWRlcl9hcmVhX3RocmVlIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW0gPiBhIHsKICBsaW5lLWhlaWdodDogNzBweDsKfQoKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi50aGVtZV9idG4gewogIGZvbnQ6IDUwMCAxNnB4LzU1cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjZmZmOwogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICBiYWNrZ3JvdW5kOiAjMDhhZThkOwogIHBhZGRpbmc6IDBweCAzN3B4OwogIGJvcmRlci1yYWRpdXM6IDQ1cHg7CiAgYm9yZGVyOiAwcHg7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjNzOwogIC1vLXRyYW5zaXRpb246IGNvbG9yIDAuM3M7CiAgdHJhbnNpdGlvbjogY29sb3IgMC4zczsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgei1pbmRleDogMTsKICBvdmVyZmxvdzogaGlkZGVuOwogIGN1cnNvcjogcG9pbnRlcjsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCi50aGVtZV9idG46YmVmb3JlLCAudGhlbWVfYnRuOmFmdGVyIHsKICBjb250ZW50OiAnJzsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgaGVpZ2h0OiAxMDAlOwogIHdpZHRoOiAxMDAlOwogIGJvdHRvbTogMTAwJTsKICBsZWZ0OiAwOwogIHotaW5kZXg6IC0xOwogIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zczsKICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzOwogIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1LCAwLCAwLjEyNSwgMSk7CiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1LCAwLCAwLjEyNSwgMSk7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1LCAwLCAwLjEyNSwgMSk7Cn0KCi50aGVtZV9idG46YmVmb3JlIHsKICBiYWNrZ3JvdW5kOiAjMzA5ZDZhOwp9CgoudGhlbWVfYnRuOmFmdGVyIHsKICBiYWNrZ3JvdW5kOiAjMjA5NjVmOwp9CgoudGhlbWVfYnRuOmhvdmVyIHsKICBjb2xvcjogI2ZmZjsKfQoKLnRoZW1lX2J0bjpob3ZlcjpiZWZvcmUsIC50aGVtZV9idG46aG92ZXI6YWZ0ZXIgewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwp9CgoudGhlbWVfYnRuOmhvdmVyOmFmdGVyIHsKICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMjc1czsKICAtby10cmFuc2l0aW9uLWRlbGF5OiAwLjI3NXM7CiAgdHJhbnNpdGlvbi1kZWxheTogMC4yNzVzOwp9CgoudGhlbWVfYnRuX3R3byB7CiAgbGluZS1oZWlnaHQ6IDUwcHg7CiAgcGFkZGluZzogMHB4IDQ5cHg7Cn0KCi53X2J0biB7CiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgYm9yZGVyOiAycHggc29saWQgI2ZmZjsKICBwYWRkaW5nOiAwcHggNDdweDsKICBsaW5lLWhlaWdodDogNTNweDsKICBtYXJnaW4tbGVmdDogMjBweDsKfQoKLndfYnRuOmhvdmVyIHsKICBib3JkZXItY29sb3I6ICMwOGFlOGQ7Cn0KCi5yZWFkX2J0biB7CiAgZm9udDogNTAwIDE2cHgvNTZweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICNmZmY7CiAgYmFja2dyb3VuZDogIzFmMjg2ODsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgcGFkZGluZzogMHB4IDM3cHg7CiAgYm9yZGVyLXJhZGl1czogNDVweDsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgbWFyZ2luLXRvcDogNXB4OwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB6LWluZGV4OiAxOwogIG92ZXJmbG93OiBoaWRkZW47Cn0KCi5yZWFkX2J0bjpiZWZvcmUsIC5yZWFkX2J0bjphZnRlciB7CiAgY29udGVudDogJyc7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGhlaWdodDogMTAwJTsKICB3aWR0aDogMTAwJTsKICBib3R0b206IDEwMCU7CiAgbGVmdDogMDsKICB6LWluZGV4OiAtMTsKICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3M7CiAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zczsKICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zczsKICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zczsKICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcywgLXdlYmtpdC10cmFuc2Zvcm0gMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NSwgMCwgMC4xMjUsIDEpOwogIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NSwgMCwgMC4xMjUsIDEpOwogIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NSwgMCwgMC4xMjUsIDEpOwp9CgoucmVhZF9idG46YmVmb3JlIHsKICBiYWNrZ3JvdW5kOiAjNDI0OTc5Owp9CgoucmVhZF9idG46YWZ0ZXIgewogIGJhY2tncm91bmQ6ICMzZjRmOWY7Cn0KCi5yZWFkX2J0bjpob3ZlciB7CiAgY29sb3I6ICNmZmY7Cn0KCi5yZWFkX2J0bjpob3ZlcjpiZWZvcmUsIC5yZWFkX2J0bjpob3ZlcjphZnRlciB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7Cn0KCi5yZWFkX2J0bjpob3ZlcjphZnRlciB7CiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjI3NXM7CiAgLW8tdHJhbnNpdGlvbi1kZWxheTogMC4yNzVzOwogIHRyYW5zaXRpb24tZGVsYXk6IDAuMjc1czsKfQoKLmZpbmRfYnRuIHsKICBmb250OiA2MDAgMTVweC8zOHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzM3YWI3NTsKICBib3JkZXI6IDJweCBzb2xpZCAjMzdhYjc1OwogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgYm9yZGVyLXJhZGl1czogNDVweDsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICB6LWluZGV4OiAxOwogIHdpZHRoOiAxNTBweDsKfQoKLmZpbmRfYnRuOmJlZm9yZSwgLmZpbmRfYnRuOmFmdGVyIHsKICBjb250ZW50OiAnJzsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgaGVpZ2h0OiAxMDAlOwogIHdpZHRoOiAxMDAlOwogIGJvdHRvbTogMTAwJTsKICBsZWZ0OiAwOwogIHotaW5kZXg6IC0xOwogIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zczsKICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzOwogIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1LCAwLCAwLjEyNSwgMSk7CiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1LCAwLCAwLjEyNSwgMSk7CiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1LCAwLCAwLjEyNSwgMSk7Cn0KCi5maW5kX2J0bjpiZWZvcmUgewogIGJhY2tncm91bmQ6ICMzMDlkNmE7Cn0KCi5maW5kX2J0bjphZnRlciB7CiAgYmFja2dyb3VuZDogIzM3YWI3NTsKfQoKLmZpbmRfYnRuOmhvdmVyIHsKICBjb2xvcjogI2ZmZjsKfQoKLmZpbmRfYnRuOmhvdmVyOmJlZm9yZSwgLmZpbmRfYnRuOmhvdmVyOmFmdGVyIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsKfQoKLmZpbmRfYnRuOmhvdmVyOmFmdGVyIHsKICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMjc1czsKICAtby10cmFuc2l0aW9uLWRlbGF5OiAwLjI3NXM7CiAgdHJhbnNpdGlvbi1kZWxheTogMC4yNzVzOwp9CgoudGhlbWVfYnRuX3RocmVlIHsKICBmb250OiA2MDAgMjBweC80MHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogI2ZmZjsKICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjsKICBtYXJnaW4tbGVmdDogNTVweDsKfQoKLnRoZW1lX2J0bl90aHJlZTpob3ZlciB7CiAgY29sb3I6ICNmOWQ5Mjg7CiAgYm9yZGVyLWNvbG9yOiAjZjlkOTI4Owp9Cgouc2VydmljZV9zbGlkZXJfYnRuIHsKICBmb250OiA2MDAgMThweC81MHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzFiMWIxYjsKICBiYWNrZ3JvdW5kOiAjZjlkOTI4OwogIHBhZGRpbmc6IDBweCA0M3B4OwogIG1heC13aWR0aDogMTkwcHg7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjlzLCBhbGwgMC4zcyBsaW5lYXIgIWltcG9ydGFudDsKICAtby10cmFuc2l0aW9uOiBjb2xvciAwLjlzLCBhbGwgMC4zcyBsaW5lYXIgIWltcG9ydGFudDsKICB0cmFuc2l0aW9uOiBjb2xvciAwLjlzLCBhbGwgMC4zcyBsaW5lYXIgIWltcG9ydGFudDsKfQoKLnNlcnZpY2Vfc2xpZGVyX2J0bjpiZWZvcmUgewogIGJhY2tncm91bmQ6ICNmYmRkMzc7Cn0KCi5zZXJ2aWNlX3NsaWRlcl9idG46YWZ0ZXIgewogIGJhY2tncm91bmQ6ICNlYWM3MDU7Cn0KCi5zdWJtaXRfYnRuIHsKICBsaW5lLWhlaWdodDogNTBweDsKICBwYWRkaW5nOiAwcHggNDZweDsKICBtYXJnaW4tdG9wOiAxMHB4Owp9CgouYnRuX3EgewogIGZvbnQ6IDYwMCAxOHB4LzU0cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIHBhZGRpbmctYm90dG9tOiAycHg7CiAgY29sb3I6ICNmZmY7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lOwogIGJveC1zaGFkb3c6IG5vbmU7CiAgYm9yZGVyLXJhZGl1czogM3B4OwogIHdpZHRoOiAxMDAlOwogIGJhY2tncm91bmQ6ICMyNTQwYTU7Cn0KCi5idG5fcTpiZWZvcmUgewogIGJhY2tncm91bmQ6ICM0MTVkYzU7Cn0KCi5idG5fcTphZnRlciB7CiAgYmFja2dyb3VuZDogIzE0M2ZlMDsKfQoKLmxlYXJuX2J0biB7CiAgZm9udC1zaXplOiAxNXB4OwogIGxpbmUtaGVpZ2h0OiA0MHB4OwogIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7CiAgYmFja2dyb3VuZDogI2Y2ZjZmNjsKICBjb2xvcjogIzc5Nzk3OTsKICBwYWRkaW5nOiAwcHggMzRweDsKfQoKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qIGhlcm9fYmFubmVyX2FyZWEgY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwouaGVyb19iYW5uZXJfYXJlYSB7CiAgcGFkZGluZzogMjc3cHggMHB4IDE5MHB4OwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB6LWluZGV4OiAxOwogIG92ZXJmbG93OiBoaWRkZW47CiAgYmFja2dyb3VuZDogIzEzMTQxYjsKfQoKLmhlcm9fYmFubmVyX2FyZWEgLmhlcm9faW1nIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgbGVmdDogMDsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgdG9wOiAwOwogIHotaW5kZXg6IC0xOwogIG9wYWNpdHk6IDAuNDA7Cn0KCi5oZXJvX2Jhbm5lcl9hcmVhIC52aWRlb19pbWcgewogIG1hcmdpbi1yaWdodDogLTExNXB4Owp9CgouaGVyb19iYW5uZXJfYXJlYSAudmlkZW9faW1nIGltZyB7CiAgbWF4LXdpZHRoOiAxMDAlOwp9CgouaGVyb19iYW5uZXJfYXJlYSAjcGFydGljbGVzLWpzIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAwOwogIGhlaWdodDogMTAwJTsKICB3aWR0aDogMTAwJTsKfQoKLmltZ190d28gewogIG1hcmdpbi1sZWZ0OiAtNzBweDsKICBtYXJnaW4tdG9wOiAtMTAwcHg7Cn0KCi5oX2Jhbm5yX2NvbnRlbnQgewogIGNvbG9yOiAjZmZmOwp9CgouaF9iYW5ucl9jb250ZW50IGg1IHsKICBmb250OiA0MDAgMjJweC8yOHB4ICJMYXRvIiwgc2Fucy1zZXJpZjsKICBmb250LXN0eWxlOiBpdGFsaWM7CiAgcGFkZGluZy1ib3R0b206IDE1cHg7Cn0KCi5oX2Jhbm5yX2NvbnRlbnQgaDU6YWZ0ZXIgewogIGNvbnRlbnQ6ICIiOwogIHdpZHRoOiA4MHB4OwogIGhlaWdodDogMXB4OwogIGJhY2tncm91bmQ6ICNmZmY7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIG1hcmdpbi1sZWZ0OiAxNXB4Owp9CgouaF9iYW5ucl9jb250ZW50IGgyIHsKICBmb250OiA2MDAgNTVweC82M3B4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKfQoKLmhfYmFubnJfY29udGVudCBoMiBzcGFuIHsKICBjb2xvcjogIzA4YWU4ZDsKfQoKLmhfYmFubnJfY29udGVudCBwIHsKICBmb250OiA0MDAgMjJweC8zMHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBwYWRkaW5nLXJpZ2h0OiAyMHB4OwogIHBhZGRpbmc6IDMwcHggMjBweCAyNHB4IDBweDsKfQoKLnZpZGVvX2J0biB7CiAgZm9udDogNDAwIDIwcHgvMjZweCAiTG9yYSIsIHNlcmlmOwogIGZvbnQtc3R5bGU6IGl0YWxpYzsKICBjb2xvcjogI2ZmZjsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHZlcnRpY2FsLWFsaWduOiB0b3A7CiAgbWFyZ2luLWxlZnQ6IDMwcHg7Cn0KCi52aWRlb19idG4gaW1nIHsKICBmbG9hdDogbGVmdDsKICBtYXJnaW4tcmlnaHQ6IDIwcHg7Cn0KCi52aWRlb19idG46aG92ZXIgewogIGNvbG9yOiAjZmZmOwp9CgouaGVyb190d28gewogIHBhZGRpbmctYm90dG9tOiAxMDBweDsKfQoKLyo9PT09PT09PT09PT09PSBoZXJvX2Jhbm5lcl9hcmVhX3R3byBjc3MgPT09PT09PT09PT09Ki8KLmhlcm9fYmFubmVyX2FyZWFfdHdvIHsKICBiYWNrZ3JvdW5kOiB1cmwoIi4uL2ltYWdlL2hvbWUyL2hvbWUtMi1iYW5uZXIuanBnIikgbm8tcmVwZWF0IHNjcm9sbCBjZW50ZXIgMC9jb3ZlcjsKICBwYWRkaW5nOiAyMDBweCAwcHggMTMwcHg7Cn0KCi5oX2Jhbm5yX2NvbnRlbnRfdHdvIHsKICBjb2xvcjogI2ZmZjsKICBmb250LWZhbWlseTogIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIHBhZGRpbmctcmlnaHQ6IDgwcHg7Cn0KCi5oX2Jhbm5yX2NvbnRlbnRfdHdvIGgyIHsKICBmb250LXNpemU6IDUycHg7CiAgbGluZS1oZWlnaHQ6IDYzcHg7CiAgZm9udC13ZWlnaHQ6IDQwMDsKfQoKLmhfYmFubnJfY29udGVudF90d28gaDIgc3Ryb25nIHsKICBmb250LXdlaWdodDogNjAwOwp9CgouaF9iYW5ucl9jb250ZW50X3R3byBoMiBzdHJvbmcgc3BhbiB7CiAgY29sb3I6ICMwOGFlOGQ7Cn0KCi5oX2Jhbm5yX2NvbnRlbnRfdHdvIHAgewogIGZvbnQ6IDQwMCAyMnB4LzMwcHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjZmZmOwogIHBhZGRpbmc6IDI3cHggMHB4IDUwcHg7Cn0KCi50b2tlbl90aW1lciB7CiAgYmFja2dyb3VuZDogcmdiYSgzNywgNjQsIDE2NSwgMC44KTsKICBjb2xvcjogI2ZmZjsKICBmb250LWZhbWlseTogIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGJvcmRlci1yYWRpdXM6IDEwcHg7CiAgcGFkZGluZzogNTRweCA1MHB4IDExMHB4Owp9CgoudG9rZW5fdGltZXIgaDQgewogIGZvbnQtc2l6ZTogMjJweDsKICBsaW5lLWhlaWdodDogMzBweDsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBtYXJnaW4tYm90dG9tOiA1MHB4Owp9CgoudG9rZW5fdGltZXIgLnJhdGVfaW5uZXIgewogIG92ZXJmbG93OiBoaWRkZW47CiAgcGFkZGluZzogMHB4IDEwcHg7CiAgbWFyZ2luLXRvcDogNzBweDsKfQoKLnRva2VuX3RpbWVyIC5yYXRlX2lubmVyIC5yYXRlX2l0ZW0gewogIGZsb2F0OiBsZWZ0Owp9CgoudG9rZW5fdGltZXIgLnJhdGVfaW5uZXIgLnJhdGVfaXRlbSBoNSB7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBmb250LXNpemU6IDE4cHg7CiAgbGluZS1oZWlnaHQ6IDMwcHg7Cn0KCi50b2tlbl90aW1lciAucmF0ZV9pbm5lciAucmF0ZV9pdGVtICsgLnJhdGVfaXRlbSB7CiAgZmxvYXQ6IHJpZ2h0Owp9CgoudG9rZW5fdGltZXIgLnJhdGVfaW5uZXJfdHdvIHsKICBtYXJnaW4tdG9wOiAzNXB4Owp9CgoudG9rZW5fdGltZXIgLnJhdGVfaW5uZXJfdHdvIC5yYXRlX2l0ZW0gaDUgewogIGZvbnQtc2l6ZTogMjBweDsKICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwp9CgouZGlzcGxheV9mbGV4IHsKICBkaXNwbGF5OiAtd2Via2l0LWJveDsKICBkaXNwbGF5OiAtbXMtZmxleGJveDsKICBkaXNwbGF5OiBmbGV4Owp9CgouZGlzcGxheV9mbGV4IC5mbGV4IHsKICAtd2Via2l0LWJveC1mbGV4OiAxOwogIC1tcy1mbGV4OiAxOwogIGZsZXg6IDE7CiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyOwogIGFsaWduLXNlbGY6IGNlbnRlcjsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwp9CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLyogYnJlYWRjcnVtYl9hcmVhIGNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLmJyZWFkY3J1bWJfYXJlYSB7CiAgYmFja2dyb3VuZDogdXJsKCIuLi9pbWFnZS9hYm91dC9icmVhZC1iZzIuanBnIikgbm8tcmVwZWF0IHNjcm9sbCBjZW50ZXIgMC9jb3ZlcjsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgei1pbmRleDogMTsKICBwYWRkaW5nOiAyMDBweCAwcHggNzVweDsKfQoKLmJyZWFkY3J1bWJfYXJlYTpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHdpZHRoOiAxMDAlOwogIGhlaWdodDogMTAwJTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgYmFja2dyb3VuZDogIzE3MTcxZDsKICBvcGFjaXR5OiAwLjYwOwogIHotaW5kZXg6IC0xOwp9CgouYmFubmVyX2NvbnRlbnQgLmJyX3RpdGxlIHsKICBmb250OiA3MDAgNTNweC82NXB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogI2ZmZjsKICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy1ib3R0b206IDEwcHg7Cn0KCi5iYW5uZXJfY29udGVudCAuYnJfdGl0bGU6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICB3aWR0aDogNjBweDsKICBoZWlnaHQ6IDJweDsKICBiYWNrZ3JvdW5kOiAjMDhhZThkOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBib3R0b206IDA7CiAgbGVmdDogMDsKfQoKLmJhbm5lcl9jb250ZW50IC5icmVhZF9jdW1iIHsKICBtYXJnaW4tdG9wOiAyMnB4Owp9CgouYmFubmVyX2NvbnRlbnQgLmJyZWFkX2N1bWIgbGkgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICBmb250OiA1MDAgMTNweC8yNnB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogI2ZmZjsKICBsZXR0ZXItc3BhY2luZzogMDAuMjZweDsKICBwYWRkaW5nLXJpZ2h0OiA3cHg7Cn0KCi5iYW5uZXJfY29udGVudCAuYnJlYWRfY3VtYiBsaSBhIHsKICBjb2xvcjogIzA4YWU4ZDsKfQoKLmJhbm5lcl9jb250ZW50IC5icmVhZF9jdW1iIGxpICsgbGk6YmVmb3JlIHsKICBjb250ZW50OiAnXGYxMDUnOwogIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnOwogIG1hcmdpbi1yaWdodDogMTJweDsKfQoKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qIGFib3V0IGFyZWEgY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCi5hYm91dF9jdXJyZW5jeV9hcmVhIHsKICBwYWRkaW5nOiAxMDBweCAwcHg7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKfQoKLmFib3V0X2NvbnRlbnQgaDQgewogIGZvbnQ6IDUwMCAyMnB4LzMycHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMjQyNDI0OwogIHBhZGRpbmc6IDEycHggMHB4IDI0cHg7Cn0KCi5hYm91dF9jb250ZW50IHAgewogIGZvbnQ6IDQwMCAxNnB4LzI2cHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICM3OTc5Nzk7CiAgcGFkZGluZy1ib3R0b206IDMycHg7Cn0KCi5hYm91dF9pbmZvIHsKICBwYWRkaW5nLXRvcDogNTVweDsKfQoKLmFib3V0X2l0ZW0gaSB7CiAgY29sb3I6ICMwOGFlOGQ7CiAgcGFkZGluZy1yaWdodDogMjBweDsKfQoKLmFib3V0X2l0ZW0gaTpiZWZvcmUgewogIGZvbnQtc2l6ZTogNTBweDsKICBsaW5lLWhlaWdodDogNTVweDsKfQoKLmFib3V0X2l0ZW0gLm1lZGlhLWJvZHkgaDMgewogIGZvbnQ6IDYwMCAyMnB4LzI1cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMjQyNDI0OwogIHBhZGRpbmctYm90dG9tOiAxMnB4Owp9CgouYWJvdXRfaXRlbSAubWVkaWEtYm9keSBwIHsKICBmb250OiA0MDAgMTZweC8yNnB4ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjNzk3OTc5Owp9CgouYWJvdXRfYXJlYSB7CiAgcGFkZGluZzogMTAwcHggMHB4Owp9CgouYWJvdXRfYXJlYSAuYWJvdXRfdGl0bGUgewogIGNvbG9yOiAjOTU5NTk1Owp9CgouYWJvdXRfYXJlYSAuYWJvdXRfdGl0bGU6YWZ0ZXIgewogIGJhY2tncm91bmQ6ICMzZGFlNzk7Cn0KCi5hYm91dF9hcmVhIC5hYm91dF9jb250ZW50IGg0IHsKICBmb250LXdlaWdodDogMzAwOwp9CgouYWJvdXRfY3VycmVuY3lfYXJlYV90d28gewogIGJhY2tncm91bmQ6ICNmM2YzZjM7Cn0KCi8qIGJ1eV9zZWxsX2FyZWEgY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwouYnV5X3NlbGxfYXJlYSB7CiAgYmFja2dyb3VuZDogIzMwMzEzYjsKICBwYWRkaW5nOiAxMDBweCAwcHg7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47CiAgei1pbmRleDogMTsKfQoKLmJ1eV9zZWxsX2FyZWEgLm92ZXJsYXlfaW1nIHsKICBiYWNrZ3JvdW5kOiB1cmwoIi4uL2ltYWdlL25ldy9idXlfc2VsbF9iZy5qcGciKSBuby1yZXBlYXQgc2Nyb2xsIGNlbnRlciAwL2NvdmVyOwp9Cgoub3ZlcmxheV9pbWcgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgei1pbmRleDogLTE7CiAgb3BhY2l0eTogMC4xMDsKfQoKLmNvaW5faW1nIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgcmlnaHQ6IDE0MHB4OwogIGJvdHRvbTogMDsKICB6LWluZGV4OiAtMTsKfQoKLnNlbGxfY29udGVudCAudGl0bGVfaDQgewogIHBhZGRpbmc6IDIwcHggMHB4OwogIG1hcmdpbi1ib3R0b206IDBweDsKfQoKLnNlbGxfY29udGVudCBwIHsKICBwYWRkaW5nOiAxMnB4IDBweCAyMHB4OwogIG1hcmdpbi1ib3R0b206IDBweDsKfQoKLnNlbGxfY29udGVudCAudGhlbWVfYnRuIHsKICBwYWRkaW5nOiAwcHggNDZweDsKfQoKLmNvbnZlcnRlciB7CiAgYm9yZGVyLXJhZGl1czogM3B4OwogIGJhY2tncm91bmQ6ICMyNTQwYTU7CiAgcGFkZGluZzogMzBweCA0MHB4IDQwcHg7CiAgbWF4LXdpZHRoOiAzNzBweDsKfQoKLmNvbnZlcnRlciBoNiB7CiAgZm9udDogNDAwIDE1cHgvMjZweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzhmOWZkYzsKICBwYWRkaW5nLWJvdHRvbTogMTBweDsKfQoKLmNvbnZlcnRlciBpbnB1dFt0eXBlPSJudW1iZXIiXSwgLmNvbnZlcnRlciBpbnB1dFt0eXBlPSJ0ZXh0Il0gewogIGZvbnQ6IDQwMCAxNXB4LzI2cHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7CiAgYm9yZGVyOiAwcHg7CiAgYm9yZGVyLXJhZGl1czogM3B4OwogIHBhZGRpbmctbGVmdDogMjVweDsKICBoZWlnaHQ6IDU4cHg7CiAgd2lkdGg6IDEwMCU7CiAgYmFja2dyb3VuZDogI2ZmZjsKfQoKLmNvbnZlcnRlciBpbnB1dFt0eXBlPSJudW1iZXIiXS5wbGFjZWhvbGRlciwgLmNvbnZlcnRlciBpbnB1dFt0eXBlPSJ0ZXh0Il0ucGxhY2Vob2xkZXIgewogIGNvbG9yOiAjMjQyNDI0Owp9CgouY29udmVydGVyIGlucHV0W3R5cGU9Im51bWJlciJdOi1tb3otcGxhY2Vob2xkZXIsIC5jb252ZXJ0ZXIgaW5wdXRbdHlwZT0idGV4dCJdOi1tb3otcGxhY2Vob2xkZXIgewogIGNvbG9yOiAjMjQyNDI0Owp9CgouY29udmVydGVyIGlucHV0W3R5cGU9Im51bWJlciJdOjotbW96LXBsYWNlaG9sZGVyLCAuY29udmVydGVyIGlucHV0W3R5cGU9InRleHQiXTo6LW1vei1wbGFjZWhvbGRlciB7CiAgY29sb3I6ICMyNDI0MjQ7Cn0KCi5jb252ZXJ0ZXIgaW5wdXRbdHlwZT0ibnVtYmVyIl06Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsIC5jb252ZXJ0ZXIgaW5wdXRbdHlwZT0idGV4dCJdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzI0MjQyNDsKfQoKLmNvbnZlcnRlciBmaWVsZHNldCB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG1hcmdpbi1ib3R0b206IDMwcHg7Cn0KCi5jb252ZXJ0ZXIgZmllbGRzZXQgI2NyeXB0by1zZWxlY3QsIC5jb252ZXJ0ZXIgZmllbGRzZXQgI2ZpYXQtc2VsZWN0IHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAwOwogIHotaW5kZXg6IDI7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjEyNWVtOwogIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjEyNWVtOwogIHRvcDogMDsKICBib3R0b206IDA7CiAgZm9udDogNDAwIDE1cHgvMzhweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzI0MjQyNDsKICBwYWRkaW5nOiAxMHB4IDE3cHggMHB4IDI0cHg7CiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjYzljOWM5Owp9CgouY29udmVydGVyIGZpZWxkc2V0ICNjcnlwdG8tc2VsZWN0IC5hcnJvdywgLmNvbnZlcnRlciBmaWVsZHNldCAjZmlhdC1zZWxlY3QgLmFycm93IHsKICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICBsaW5lLWhlaWdodDogMS4wZW07CiAgd2lkdGg6IDA7CiAgaGVpZ2h0OiAwOwogIGJvcmRlci1zdHlsZTogc29saWQ7CiAgYm9yZGVyLXdpZHRoOiAwLjNlbSAwLjNlbSAwIDAuM2VtOwogIGJvcmRlci1jb2xvcjogIzk0OTQ5NCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgdG9wOiAwLjg3NWVtOwogIG1hcmdpbjogMCAwLjVlbTsKfQoKLmNvbnZlcnRlciAudGhlbWVfYnRuIHsKICBib3JkZXItcmFkaXVzOiAzcHg7CiAgd2lkdGg6IDEwMCU7Cn0KCi5jb252ZXJ0ZXIgLnBvcHVwIHsKICBkaXNwbGF5OiBub25lOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBiYWNrZ3JvdW5kOiAjZmZmOwogIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDEwcHggNDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTsKICBib3gtc2hhZG93OiAwcHggMTBweCA0NXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpOwogIHotaW5kZXg6IDI7CiAgcGFkZGluZzogMTVweDsKICBtYXgtd2lkdGg6IDI5MHB4Owp9CgouY29udmVydGVyIC5wb3B1cCBpbnB1dCB7CiAgaGVpZ2h0OiA1MHB4OwogIGJvcmRlcjogMXB4IHNvbGlkICNlZGVkZWQ7Cn0KCi5jb252ZXJ0ZXIgLnBvcHVwIC5yb3cgewogIG1hcmdpbjogMHB4OwogIGZvbnQtZmFtaWx5OiAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgcGFkZGluZzogNXB4IDBweDsKICBjdXJzb3I6IHBvaW50ZXI7Cn0KCi5jb252ZXJ0ZXIgLnBvcHVwIC5yb3cgLmFiYnIgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICBjb2xvcjogIzI0MjQyNDsKICBwYWRkaW5nOiAwIDEuMGVtIDAgMS4yNWVtOwp9CgouY29udmVydGVyIC5wb3B1cCAucm93IGxhYmVsIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cn0KCi5jb252ZXJ0ZXIgLnBvcHVwICNmaWF0LXJvd3MgewogIHBhZGRpbmctdG9wOiA1cHg7Cn0KCi5idXlfc2VsbF9hcmVhX3R3byB7CiAgYmFja2dyb3VuZDogIzI1NDBhNTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgei1pbmRleDogMTsKfQoKLmJ1eV9zZWxsX2FyZWFfdHdvOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlL2Fib3V0L3dhcnRoLnBuZykgbm8tcmVwZWF0IHNjcm9sbCByaWdodCBib3R0b207CiAgcG9zaXRpb246IGFic29sdXRlOwogIHdpZHRoOiAxMDAlOwogIGhlaWdodDogMTAwJTsKICBib3R0b206IDA7CiAgcmlnaHQ6IDA7CiAgei1pbmRleDogLTE7CiAgb3BhY2l0eTogMC40MDsKfQoKLnNlbGxfY29udGVudF90d28gaDIgewogIGZvbnQ6IDYwMCAzNXB4LzQ4cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjZmZmOwogIHBhZGRpbmctYm90dG9tOiAyMnB4Owp9Cgouc2VsbF9jb250ZW50X3R3byBoMiBzcGFuIHsKICBjb2xvcjogIzA4YWU4ZDsKfQoKLnNlbGxfY29udGVudF90d28gLnNlbGxfYnRuIHsKICBmb250OiA0MDAgMjBweC80OHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogI2ZmZjsKICBmb250LXN0eWxlOiBpdGFsaWM7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLnNlbGxfY29udGVudF90d28gLnNlbGxfYnRuOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiAycHg7CiAgYmFja2dyb3VuZDogIzA4YWU4ZDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgYm90dG9tOiAwOwogIGxlZnQ6IDA7Cn0KCi5zZWxsX2NvbnRlbnRfdHdvIHAgewogIGZvbnQ6IDQwMCAxNnB4LzI4cHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsKICBwYWRkaW5nOiA0MnB4IDBweDsKfQoKLnNlbGxfY29udGVudF90d28gLnRoZW1lX2J0biB7CiAgcGFkZGluZzogMHB4IDQ2cHg7Cn0KCi8qaG93X3dvcmtfYXJlYSBjc3MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwouaG93X3dvcmtfYXJlYSB7CiAgcGFkZGluZzogMTAwcHggMHB4Owp9Cgoud29ya19zdGVwIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCi53b3JrX3N0ZXAgLndvcmtfaWNvbiB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHotaW5kZXg6IDE7Cn0KCi53b3JrX3N0ZXAgLndvcmtfaWNvbjpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHdpZHRoOiA1MHB4OwogIGhlaWdodDogNTBweDsKICBib3JkZXItcmFkaXVzOiA1MCU7CiAgbGVmdDogNjAlOwogIGJvdHRvbTogMHB4OwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwogIGJhY2tncm91bmQ6ICNlNWU1ZTU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwp9Cgoud29ya19zdGVwIC53b3JrX2ljb24gaSB7CiAgbGluZS1oZWlnaHQ6IDgwcHg7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwp9Cgoud29ya19zdGVwIC53b3JrX2ljb24gaTpiZWZvcmUgewogIGZvbnQtc2l6ZTogOTBweDsKICBjb2xvcjogIzA4YWU4ZDsKICBsaW5lLWhlaWdodDogOTBweDsKfQoKLndvcmtfc3RlcCBoMiB7CiAgZm9udDogNjAwIDIycHgvMzBweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7CiAgcGFkZGluZzogMzBweCAwcHggMTRweDsKfQoKLndvcmtfc3RlcCBwIHsKICBmb250OiA0MDAgMTZweC8yNnB4ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjNzk3OTc5Owp9Cgoud29ya19zdGVwLndvcmtfZmlyc3Q6YWZ0ZXIgewogIGNvbnRlbnQ6ICcnOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDIwcHg7CiAgcmlnaHQ6IC0xNDBweDsKICB3aWR0aDogMjQwcHg7CiAgaGVpZ2h0OiAzMHB4OwogIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZS9sYXRlc3QtYmxvZy9hcnJvdy5wbmcpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0Owp9Cgoud29ya19zdGVwLndvcmtfbWlkZGxlOmFmdGVyIHsKICBjb250ZW50OiAnJzsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAzN3B4OwogIHJpZ2h0OiAtMTM2cHg7CiAgd2lkdGg6IDI0MHB4OwogIGhlaWdodDogMzBweDsKICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2UvbGF0ZXN0LWJsb2cvYXJyb3cyLnBuZykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7Cn0KCi5oX3dvcmtfYmcgewogIGJhY2tncm91bmQ6ICNmNWY1ZjU7Cn0KCi8qIG5ldHdvcmtfYXJlYSBjc3MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCi5uZXR3b3JrX2FyZWEgewogIGJhY2tncm91bmQ6IHVybCgiLi4vaW1hZ2UvYWJvdXQvbmV0d29yay1iZy5qcGciKSBuby1yZXBlYXQgc2Nyb2xsIGNlbnRlciAwL2NvdmVyOwogIHBhZGRpbmc6IDQwcHggMHB4OwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB6LWluZGV4OiAxOwp9CgoubmV0d29ya19hcmVhOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiAxMDAlOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBsZWZ0OiAwOwogIHRvcDogMDsKICB6LWluZGV4OiAtMTsKICBiYWNrZ3JvdW5kOiB1cmwoIi4uL2ltYWdlL2Fib3V0L25ldHdvcmstYmcucG5nIikgbm8tcmVwZWF0IHNjcm9sbCBsZWZ0IDA7CiAgb3BhY2l0eTogMC45NDsKICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwp9CgoubmV0d29ya19jb250ZW50IHsKICBwYWRkaW5nLXRvcDogNTVweDsKICBwYWRkaW5nLXJpZ2h0OiA0MHB4Owp9CgoubmV0d29ya19jb250ZW50IGgzIHsKICBmb250OiA0MDAgMjZweC8zOHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogI2ZmZjsKICBwYWRkaW5nLWJvdHRvbTogNDVweDsKfQoKLm5ldHdvcmtfY29udGVudCAuYWJvdXRfdGl0bGUgewogIGZvbnQtc2l6ZTogMjJweDsKICBjb2xvcjogI2ZmZjsKICBmb250LXdlaWdodDogNDAwOwogIHBhZGRpbmctYm90dG9tOiAyOHB4OwogIGZvbnQtZmFtaWx5OiAiTGF0byIsIHNhbnMtc2VyaWY7Cn0KCi5uZXR3b3JrX2NvbnRlbnQgLmFib3V0X3RpdGxlOmFmdGVyIHsKICBiYWNrZ3JvdW5kOiAjNDVhZTdkOwp9CgoubmV0d29ya19jb250ZW50IC5jb3VudF9pdGVtIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgZm9udC1mYW1pbHk6ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgY29sb3I6ICNmZmY7CiAgbWFyZ2luLXJpZ2h0OiA3MHB4Owp9CgoubmV0d29ya19jb250ZW50IC5jb3VudF9pdGVtIGgyIHsKICBmb250LXNpemU6IDgwcHg7CiAgbGluZS1oZWlnaHQ6IDg1cHg7CiAgZm9udC1mYW1pbHk6ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGZvbnQtd2VpZ2h0OiA0MDA7Cn0KCi5uZXR3b3JrX2NvbnRlbnQgLmNvdW50X2l0ZW0gcCB7CiAgZm9udC1zaXplOiAxNnB4OwogIGxpbmUtaGVpZ2h0OiAyOHB4Owp9CgouZ3Jvd2luZ19mYWN0cyB7CiAgYmFja2dyb3VuZDogIzI1NDBhNTsKICBjb2xvcjogI2ZmZjsKICBwYWRkaW5nOiA0OHB4Owp9CgouZ3Jvd2luZ19mYWN0cyB1bCBsaSBoNCB7CiAgZm9udDogNjAwIDMwcHgvMzJweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7Cn0KCi5ncm93aW5nX2ZhY3RzIHVsIGxpIHAgewogIGZvbnQ6IDQwMCAxOHB4LzI4cHggIkxvcmEiLCBzZXJpZjsKICBmb250LXN0eWxlOiBpdGFsaWM7Cn0KCi5ncm93aW5nX2ZhY3RzIHVsIGxpICsgbGkgewogIHBhZGRpbmctdG9wOiAzMHB4Owp9CgovKiB3ZWxjb21lX2FyZWEgY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLndlbGNvbWVfYXJlYSB7CiAgcGFkZGluZzogMTAwcHggMHB4Owp9Cgoud2VsY29tZV9jb250ZW50IHsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgcGFkZGluZzogMHB4IDYwcHg7Cn0KCi53ZWxjb21lX2NvbnRlbnQgLnNlY3Rpb25fdGl0bGUgewogIG1hcmdpbi1ib3R0b206IDI0cHg7Cn0KCi53ZWxjb21lX2NvbnRlbnQgLnBfdGV4dCB7CiAgZm9udDogNDAwIDE2cHgvMjhweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzc5Nzk3OTsKICBwYWRkaW5nLWJvdHRvbTogMzZweDsKfQoKLndlbGNvbWVfY29udGVudCAudGhlbWVfYnRuIHsKICB3aWR0aDogMTk1cHg7CiAgaGVpZ2h0OiA1MHB4OwogIGxpbmUtaGVpZ2h0OiA1MHB4Owp9Cgoud2VsY29tZV9jb250ZW50IC5yZWFkX2J0biB7CiAgbGluZS1oZWlnaHQ6IDUwcHg7CiAgbWFyZ2luLWxlZnQ6IDI1cHg7CiAgYmFja2dyb3VuZDogIzFmMjg2ODsKfQoKLndlbGNvbWVfY29udGVudCAucmVhZF9idG46YWZ0ZXIgewogIGJhY2tncm91bmQ6ICMzZjRmOWY7Cn0KCi53ZWxjb21lX2l0ZW0gewogIGJhY2tncm91bmQ6ICNmN2Y5ZmE7CiAgYm9yZGVyOiAxcHggc29saWQgI2VhZWFlYTsKICBwYWRkaW5nOiA1MHB4IDM4cHg7Cn0KCi53ZWxjb21lX2l0ZW0gLnRpdGxlX2NvbG9yIHsKICBmb250LXNpemU6IDIycHg7CiAgbGluZS1oZWlnaHQ6IDMzcHg7CiAgcGFkZGluZy10b3A6IDI0cHg7Cn0KCi53ZWxjb21lX2l0ZW0gaDYgewogIGZvbnQtd2VpZ2h0OiA1MDA7CiAgZm9udC1zaXplOiAxNHB4OwogIGNvbG9yOiAjMjIzODhiOwogIGxpbmUtaGVpZ2h0OiAzMnB4OwogIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctYm90dG9tOiAxMHB4Owp9Cgoud2VsY29tZV9pdGVtIGg2OmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgd2lkdGg6IDMycHg7CiAgaGVpZ2h0OiAxcHg7CiAgYmFja2dyb3VuZDogI2I5YjliOTsKICBsZWZ0OiA1MCU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGJvdHRvbTogMDsKfQoKLndlbGNvbWVfaXRlbSBwIHsKICBwYWRkaW5nOiAyMHB4IDBweDsKICBtYXJnaW4tYm90dG9tOiAwcHg7Cn0KCi53ZWxjb21lX2l0ZW0gLnJlYWRfYnRuIHsKICBsaW5lLWhlaWdodDogNTBweDsKICBiYWNrZ3JvdW5kOiAjMWYyODY4Owp9Cgoud19jb250ZW50X3R3byB7CiAgcGFkZGluZzogMHB4Owp9Cgoud19jb250ZW50X3R3byBwIHsKICBwYWRkaW5nLWJvdHRvbTogNjBweDsKfQoKLndfY29udGVudF90d28gLmJvdHRvbV9saW5lIHsKICBtYXJnaW4tbGVmdDogYXV0bzsKICBtYXJnaW4tcmlnaHQ6IGF1dG87Cn0KCi8qIGNvcmVfdmFsdWVfYXJlYSBjc3MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLmNvcmVfdmFsdWVfYXJlYSB7CiAgcGFkZGluZzogMTAwcHggMHB4Owp9CgouY29yZV92YWx1ZV9hcmVhIC52YWx1ZV9jb250ZW50IC50ZXh0X3R3byB7CiAgcGFkZGluZy10b3A6IDMwcHg7Cn0KCi52YWx1ZV9jb250ZW50IHsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCi52YWx1ZV9jb250ZW50IC5zZWN0aW9uX3RpdGxlIHsKICBtYXJnaW4tYm90dG9tOiAyN3B4Owp9CgoudmFsdWVfY29udGVudCAudGV4dCB7CiAgZm9udDogMzAwIDE4cHgvMjhweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzc5Nzk3OTsKICBtYXJnaW4tYm90dG9tOiAwcHg7Cn0KCi52YWx1ZV9jb250ZW50IC50ZXh0X3R3byB7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBmb250LXNpemU6IDE2cHg7CiAgbGluZS1oZWlnaHQ6IDI4cHg7CiAgY29sb3I6ICM3OTc5Nzk7CiAgbWFyZ2luLWJvdHRvbTogMHB4Owp9CgovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT0gYWJvdXRfYXJlYV90d28gY3NzID09PT09PT09PT09PT09PT09PT09PT09PT09PSovCi5hYm91dF9hcmVhX3R3byB7CiAgYmFja2dyb3VuZDogIzEwMTExYzsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgei1pbmRleDogMTsKICBwYWRkaW5nOiAxMDBweCAwcHggMTU1cHg7Cn0KCi5hYm91dF9hcmVhX3R3bzpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHdpZHRoOiAxMDAlOwogIGhlaWdodDogMTAwJTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICBiYWNrZ3JvdW5kOiB1cmwoIi4uL2ltYWdlL2hvbWUyL2ZhY3QtYmcucG5nIikgbm8tcmVwZWF0IHNjcm9sbCBjZW50ZXIgMC9jb3ZlcjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogLTE7Cn0KCi5hYm91dF9hcmVhX3R3byAuYWJvdXRfaW5mbyB7CiAgcGFkZGluZy10b3A6IDBweDsKICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7Cn0KCi5hYm91dF9hcmVhX3R3byAuYWJvdXRfaW5mbyAuYWJvdXRfaXRlbSAubWVkaWEtYm9keSBoMyB7CiAgY29sb3I6ICNmZmY7CiAgZm9udDogNTAwIDIwcHgvMjZweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7Cn0KCi5hYm91dF9hcmVhX3R3byAuYWJvdXRfaW5mbyAuYWJvdXRfaXRlbSAubWVkaWEtYm9keSBwIHsKICBjb2xvcjogI2IxYjFiMTsKfQoKLmFib3V0X2N1cnJlbmN5IHsKICBib3JkZXItdG9wOiAxcHggc29saWQgIzMwMzEzZDsKICBwYWRkaW5nLXRvcDogMTAwcHg7Cn0KCi5jdXJyZW5jeV90ZXh0IGg0IHsKICBmb250OiAzMDAgMThweC8zMHB4ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjZmZmOwp9CgouY3VycmVuY3lfdGV4dCBwIHsKICBmb250OiA0MDAgMTZweC8yNnB4ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7CiAgcGFkZGluZzogMzBweCAwcHggMjVweDsKfQoKLmN1cnJlbmN5X3RleHQgdWwgbGkgewogIGZvbnQ6IDQwMCAxNnB4LzI2cHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy1sZWZ0OiA0MHB4OwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgd2lkdGg6IDUwJTsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgbWFyZ2luLXRvcDogMTJweDsKfQoKLmN1cnJlbmN5X3RleHQgdWwgbGk6bnRoLWNoaWxkKG4rMSkgewogIGZsb2F0OiBsZWZ0Owp9CgouY3VycmVuY3lfdGV4dCB1bCBsaSBpbWcgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBsZWZ0OiAwOwogIHRvcDogNTAlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwp9CgovKj09PT09PT09PT09PSB3ZWxjb21lIGFyZWEgdHdvID09PT09PT09PT09PT09Ki8KLndlbGNvbWVfYXJlYV90d28gewogIHBhZGRpbmc6IDk3cHggMHB4IDgycHg7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHotaW5kZXg6IDI1Owp9CgouZ2V0X3F1b3RlX2Zvcm0gewogIGJhY2tncm91bmQ6ICNlNWU2ZWE7CiAgcGFkZGluZzogMjZweCAzNnB4IDUwcHg7CiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjsKICBtYXJnaW4tdG9wOiAtMTUzcHg7CiAgei1pbmRleDogMjU7Cn0KCi5nZXRfdGl0bGUgewogIG1hcmdpbi1ib3R0b206IDI1cHg7Cn0KCi5nZXRfdGl0bGUgLmJvdHRvbV9saW5lIHsKICB3aWR0aDogNTBweDsKICBtYXJnaW4tdG9wOiAxOHB4Owp9CgouZ2V0X3F1b3RlX2Zvcm1zIC5mb3JtLWdyb3VwIHsKICB3aWR0aDogMTAwJTsKfQoKLmdldF9xdW90ZV9mb3JtcyAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sIHsKICBmb250OiA0MDAgMTVweC8zN3B4ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjNzk3OTc5OwogIGJvcmRlcjogMHB4OwogIGJvcmRlci1yYWRpdXM6IDNweDsKICBwYWRkaW5nLWxlZnQ6IDI1cHg7Cn0KCi5nZXRfcXVvdGVfZm9ybXMgLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbC5wbGFjZWhvbGRlciB7CiAgY29sb3I6ICM3OTc5Nzk7Cn0KCi5nZXRfcXVvdGVfZm9ybXMgLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbDotbW96LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzc5Nzk3OTsKfQoKLmdldF9xdW90ZV9mb3JtcyAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzc5Nzk3OTsKfQoKLmdldF9xdW90ZV9mb3JtcyAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzc5Nzk3OTsKfQoKLmdldF9xdW90ZV9mb3JtcyAuZm9ybS1ncm91cCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wgewogIGhlaWdodDogMTI2cHg7CiAgcmVzaXplOiBub25lOwp9CgouYnIgewogIGhlaWdodDogMXB4OwogIHdpZHRoOiAxMDAlOwogIGJhY2tncm91bmQ6ICNkYmRiZGI7CiAgbWFyZ2luOiA3MHB4IDBweCA1MHB4Owp9CgouZXhwZXJ0aXNlX3RleHQgaDIgewogIGZvbnQtc2l6ZTogMzBweDsKICBjb2xvcjogIzI5MjkyOTsKICBmb250LXdlaWdodDogNjAwOwogIHBhZGRpbmctYm90dG9tOiA4cHg7Cn0KCi5leHBlcnRpc2VfdGV4dCBoNSB7CiAgZm9udC13ZWlnaHQ6IDUwMDsKICBmb250LXNpemU6IDIwcHg7CiAgbGluZS1oZWlnaHQ6IDMycHg7CiAgY29sb3I6ICM3OTc5Nzk7CiAgcGFkZGluZy1ib3R0b206IDE4cHg7Cn0KCi5leHBlcnRpc2VfdGV4dCBwIHsKICBsaW5lLWhlaWdodDogMjhweDsKfQoKLmV4cGVydGlzZV9pdGVtIGkgewogIGNvbG9yOiAjMjU0MGE1OwogIGxpbmUtaGVpZ2h0OiA2NXB4Owp9CgouZXhwZXJ0aXNlX2l0ZW0gaTpiZWZvcmUgewogIGZvbnQtc2l6ZTogNjVweDsKfQoKLmV4cGVydGlzZV9pdGVtIGgzIHsKICBmb250LXNpemU6IDIwcHg7CiAgbGluZS1oZWlnaHQ6IDMwcHg7CiAgcGFkZGluZzogNnB4IDBweCA1cHg7Cn0KCi8qPT09PT09PT09PT09IHJlY2VudF9tYXJrZXRfYXJlYSBjc3MgPT09PT09PT09PSovCi5yZWNlbnRfbWFya2V0X2FyZWEgewogIGJhY2tncm91bmQ6IHVybCgiLi4vaW1hZ2UvbmV3L3JlY2VudF93LmpwZyIpIG5vLXJlcGVhdCBzY3JvbGwgY2VudGVyIDAvY292ZXI7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7CiAgei1pbmRleDogMTsKICBwYWRkaW5nOiAxMDBweCAwcHg7Cn0KCi5yZWNlbnRfbWFya2V0X2FyZWE6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIGJhY2tncm91bmQ6ICMyMTIxMjE7CiAgb3BhY2l0eTogMC45NzsKICB6LWluZGV4OiAtMTsKfQoKLnJlY2VudF9tYXJrZXRfYXJlYSAuYnRjd2RndCB7CiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7CiAgbWFyZ2luOiAwcHggNzBweCAwcHggMHB4ICFpbXBvcnRhbnQ7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7CiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50Owp9CgoucmVjZW50X21hcmtldF90ZXh0IGgyIHsKICBmb250LXNpemU6IDM1cHg7CiAgZm9udC13ZWlnaHQ6IDYwMDsKICBsaW5lLWhlaWdodDogNDVweDsKfQoKLnJlY2VudF9tYXJrZXRfdGV4dCBoNSB7CiAgZm9udC1zdHlsZTogaXRhbGljOwogIGZvbnQtc2l6ZTogMjBweDsKICBsaW5lLWhlaWdodDogMjZweDsKICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgZm9udC1mYW1pbHk6ICJMb3JhIiwgc2VyaWY7CiAgcGFkZGluZzogMjBweCAwcHggMjVweDsKfQoKLnJlY2VudF9tYXJrZXRfdGV4dCBwIHsKICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOwp9CgoucmVjZW50X21hcmtldF90ZXh0IGEgewogIGZvbnQ6IDUwMCAxOHB4LzI2cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMDhhZThkOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgcGFkZGluZy10b3A6IDE1cHg7Cn0KCi5yZWNlbnRfbWFya2V0X3RleHQgYTpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHdpZHRoOiAxMDAlOwogIGhlaWdodDogMnB4OwogIGJhY2tncm91bmQ6ICMwOGFlOGQ7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGJvdHRvbTogMDsKICBsZWZ0OiAwOwp9Cgoucl9tYXJrZXRfYXJlYV90d286YmVmb3JlIHsKICBiYWNrZ3JvdW5kOiAjMWYyODY4Owp9CgoudmlkZW9faW1nX3R3byB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG1hcmdpbi1yaWdodDogNzBweDsKfQoKLnZpZGVvX2ltZ190d28gLnZfaWNvbiB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGxlZnQ6IDUwJTsKICB0b3A6IDUwJTsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKfQoKLyo9PT09PT09PT09PT0gZXhwZXJ0aXNlIGFyZWEgdHdvIGNzcyA9PT09PT09PT09PSovCi5leHBlcnRpc2VfYXJlYV90d28gewogIHBhZGRpbmc6IDEwMHB4IDBweDsKfQoKLmV4cGVydGlzZV9pdGVtX3R3byB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47CiAgei1pbmRleDogMTsKICBjdXJzb3I6IHBvaW50ZXI7Cn0KCi5leHBlcnRpc2VfaXRlbV90d28gLmV4cGVydGlzZV9jb250ZW50IHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgYm90dG9tOiAwOwogIHBhZGRpbmc6IDEycHggMzVweCAzNXB4OwogIGhlaWdodDogMTAwJTsKICB3aWR0aDogMTAwJTsKICBiYWNrZ3JvdW5kOiAjMjU0MGE1OwogIHotaW5kZXg6IDI7Cn0KCi5leHBlcnRpc2VfaXRlbV90d28gLmV4cGVydGlzZV9jb250ZW50IGgzIHsKICBmb250LXNpemU6IDE2cHg7CiAgbGluZS1oZWlnaHQ6IDIycHg7CiAgZm9udC13ZWlnaHQ6IDUwMDsKICBjb2xvcjogI2ZmZjsKICB3aWR0aDogMTAwJTsKICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuM3MsIGFsbCAwLjNzIGxpbmVhcjsKICAtby10cmFuc2l0aW9uOiBjb2xvciAwLjNzLCBhbGwgMC4zcyBsaW5lYXI7CiAgdHJhbnNpdGlvbjogY29sb3IgMC4zcywgYWxsIDAuM3MgbGluZWFyOwp9CgouZXhwZXJ0aXNlX2l0ZW1fdHdvIC5leHBlcnRpc2VfY29udGVudCBoMzpob3ZlciB7CiAgY29sb3I6ICMxOWZkZDA7Cn0KCi5leHBlcnRpc2VfaXRlbV90d28gLmV4cGVydGlzZV9jb250ZW50IHAgewogIGZvbnQtc2l6ZTogMTVweDsKICBjb2xvcjogI2ZmZjsKICBtYXJnaW4tYm90dG9tOiAwcHg7CiAgb3BhY2l0eTogMDsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjsKICAtby10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7CiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyOwp9CgouZXhwZXJ0aXNlX2l0ZW1fdHdvIC5leHBlcnRpc2VfY29udGVudC5ib3R0b21fdGV4dCB7CiAgdG9wOiA3MiU7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyOwogIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjsKfQoKLmV4cGVydGlzZV9pdGVtX3R3byAuZXhwZXJ0aXNlX2NvbnRlbnQudGV4dF90d28gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyOwogIC1vLXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjsKICB0cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7CiAgZGlzcGxheTogLXdlYmtpdC1ib3g7CiAgZGlzcGxheTogLW1zLWZsZXhib3g7CiAgZGlzcGxheTogZmxleDsKICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwogIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7CiAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICBwYWRkaW5nLXRvcDogMHB4OwogIHBhZGRpbmctYm90dG9tOiAwcHg7Cn0KCi5leHBlcnRpc2VfaXRlbV90d286aG92ZXIgLmV4cGVydGlzZV9jb250ZW50IHAgewogIG9wYWNpdHk6IDE7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC44cyBsaW5lYXI7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuOHMgbGluZWFyOwogIHRyYW5zaXRpb246IGFsbCAwLjhzIGxpbmVhcjsKfQoKLmV4cGVydGlzZV9pdGVtX3R3bzpob3ZlciAuZXhwZXJ0aXNlX2NvbnRlbnQudGV4dF90d28gewogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuOHMgbGluZWFyOwogIC1vLXRyYW5zaXRpb246IGFsbCAwLjhzIGxpbmVhcjsKICB0cmFuc2l0aW9uOiBhbGwgMC44cyBsaW5lYXI7Cn0KCi5leHBlcnRpc2VfaXRlbV90d286aG92ZXIgLmV4cGVydGlzZV9jb250ZW50LmJvdHRvbV90ZXh0IHsKICBvcGFjaXR5OiAwOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDIwMG1zIGxpbmVhcjsKICAtby10cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyOwogIHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7Cn0KCi8qPT09PT09PT09PT09PSB3ZWxjb21lX2FyZWFfdGhyZWUgY3NzID09PT09PT09PT09PSovCi53ZWxjb21lX2FyZWFfdGhyZWUgewogIHBhZGRpbmc6IDkwcHggMHB4IDkycHg7Cn0KCi53ZWxjb21lX2FyZWFfdGhyZWUgLmV4cGVydGlzZV9hcmVhIHsKICBtYXJnaW4tYm90dG9tOiAtNzJweDsKfQoKLmV4cGVydGlzZV9pdGVtX3RocmVlIHsKICBtYXJnaW4tYm90dG9tOiA3MnB4Owp9CgouZXhwZXJ0aXNlX2l0ZW1fdGhyZWUgLmxlYXJuX2J0biB7CiAgbWFyZ2luLXRvcDogMTBweDsKfQoKLyo9PT09PT09PT09PT0gc2VydmljZXMgYXJlYSBjc3MgPT09PT09PT09PT09Ki8KLnNlcnZpY2VfYXJlYSB7CiAgYmFja2dyb3VuZDogI2Y0ZjRmNDsKICBwYWRkaW5nOiAxMDBweCAwcHg7Cn0KCi5tdF8zMCB7CiAgbWFyZ2luLXRvcDogLTMwcHg7Cn0KCi5zZXJ2aWNlX2l0ZW0gewogIGJhY2tncm91bmQ6IHdoaXRlOwogIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7CiAgcGFkZGluZzogMzVweDsKICBtYXJnaW4tdG9wOiAzMHB4OwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyOwogIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjsKICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7CiAgY3Vyc29yOiBwb2ludGVyOwp9Cgouc2VydmljZV9pdGVtIGgzIHsKICBtYXJnaW4tYm90dG9tOiA0cHg7Cn0KCi5zZXJ2aWNlX2l0ZW0gaDMsIC5zZXJ2aWNlX2l0ZW0gcCwgLnNlcnZpY2VfaXRlbSBpIHsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjsKICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7CiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyOwp9Cgouc2VydmljZV9pdGVtIHAgewogIG1hcmdpbi1ib3R0b206IDBweDsKfQoKLnNlcnZpY2VfaXRlbTpob3ZlciB7CiAgYmFja2dyb3VuZC1jb2xvcjogIzA4YWU4ZDsKICBib3JkZXItY29sb3I6ICMwOGFlOGQ7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggM3B4IDI1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsKICBib3gtc2hhZG93OiAwcHggM3B4IDI1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsKfQoKLnNlcnZpY2VfaXRlbTpob3ZlciBoMywgLnNlcnZpY2VfaXRlbTpob3ZlciBwLCAuc2VydmljZV9pdGVtOmhvdmVyIGkgewogIGNvbG9yOiAjZmZmOwp9CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLyogdGVhbV9hcmVhIGNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCi50ZWFtX2FyZWEgewogIGJhY2tncm91bmQ6ICNmM2YzZjg7CiAgcGFkZGluZzogMTAwcHggMHB4Owp9CgoudGVhbV9tZW1iZXIgewogIG1hcmdpbi1ib3R0b206IDMwcHg7CiAgY3Vyc29yOiBwb2ludGVyOwp9CgoudGVhbV9tZW1iZXIgLnRlYW1faW1nX2lubmVyIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgei1pbmRleDogMTsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cn0KCi50ZWFtX21lbWJlciAudGVhbV9pbWdfaW5uZXIgLnRlYW1faW1nOmJlZm9yZSB7CiAgY29udGVudDogIiI7CiAgYmFja2dyb3VuZDogIzM3YWI3NTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgbGVmdDogMHB4OwogIHRvcDogMHB4OwogIGhlaWdodDogMTAwJTsKICB3aWR0aDogMTAwJTsKICBvcGFjaXR5OiAwOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDMwMG1zIGxpbmVhciAwczsKICAtby10cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyIDBzOwogIHRyYW5zaXRpb246IGFsbCAzMDBtcyBsaW5lYXIgMHM7CiAgei1pbmRleDogMDsKfQoKLnRlYW1fbWVtYmVyIC50ZWFtX2ltZ19pbm5lciAuc29jaWFsX2ljb24gewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBib3R0b206IDA7CiAgd2lkdGg6IDEwMCU7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIG9wYWNpdHk6IDA7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC40cyBsaW5lYXIgMHM7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNHMgbGluZWFyIDBzOwogIHRyYW5zaXRpb246IGFsbCAwLjRzIGxpbmVhciAwczsKfQoKLnRlYW1fbWVtYmVyIC50ZWFtX2ltZ19pbm5lciAuc29jaWFsX2ljb24gYSB7CiAgZm9udC1zaXplOiAyMnB4OwogIGNvbG9yOiAjZmZmOwogIHBhZGRpbmc6IDBweCAxMnB4OwogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKfQoKLnRlYW1fbWVtYmVyIC5jb250ZW50IHsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmc6IDE2cHggMHB4Owp9CgoudGVhbV9tZW1iZXIgLmNvbnRlbnQ6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICB3aWR0aDogNDBweDsKICBoZWlnaHQ6IDFweDsKICBiYWNrZ3JvdW5kOiAjMDhhZThkOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBsZWZ0OiA1MCU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgYm90dG9tOiAwOwp9CgoudGVhbV9tZW1iZXIgLmNvbnRlbnQgaDQgewogIGZvbnQ6IDUwMCAxOHB4LzI0cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMjQyNDI0Owp9CgoudGVhbV9tZW1iZXIgLmNvbnRlbnQgcCB7CiAgZm9udDogNDAwIDE2cHgvMjRweCAiTG9yYSIsIHNlcmlmOwogIGZvbnQtc3R5bGU6IGl0YWxpYzsKICBjb2xvcjogIzc5Nzk3OTsKfQoKLnRlYW1fbWVtYmVyOmhvdmVyIC50ZWFtX2ltZzpiZWZvcmUgewogIG9wYWNpdHk6IDAuODsKfQoKLnRlYW1fbWVtYmVyOmhvdmVyIC5zb2NpYWxfaWNvbiB7CiAgYm90dG9tOiA0MHB4OwogIG9wYWNpdHk6IDE7Cn0KCi50ZWFtX21lbWJlcjpob3ZlciAuY29udGVudCBoNCB7CiAgY29sb3I6ICMwOGFlOGQ7Cn0KCi5jbGllbnRzX2xvZ29fYXJlYSB7CiAgYmFja2dyb3VuZDogI2Y4ZjhmODsKICBib3JkZXItdG9wOiAxcHggc29saWQgI2U3ZTdlNzsKICBwYWRkaW5nOiAxMDBweCAwcHg7Cn0KCi5jbGllbnRzX2xvZ29fYXJlYSAuY2xpZW50c19zbGlkZXIgewogIG1hcmdpbi10b3A6IDBweDsKICBwYWRkaW5nOiAwcHg7Cn0KCi5jbGllbnRzX3NsaWRlciB7CiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkMWQxZDE7CiAgcGFkZGluZy10b3A6IDgwcHg7CiAgbWFyZ2luLXRvcDogNTBweDsKfQoKLmNsaWVudHNfc2xpZGVyIC5pdGVtIGltZyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHdpZHRoOiBhdXRvOwogIG1heC13aWR0aDogMTAwJTsKfQoKLm5vX2JyIHsKICBib3JkZXI6IDBweDsKfQoKLyogbV90ZWFtX2FyZWEgY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwoubV90ZWFtX2FyZWEgewogIHBhZGRpbmc6IDEwMHB4IDA7Cn0KCi50ZWFtX2l0ZW0gewogIHBhZGRpbmc6IDYwcHggMHB4OwogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTJlMmUyOwp9CgoudGVhbV9pdGVtOmxhc3QtY2hpbGQgewogIGJvcmRlci1ib3R0b206IDBweDsKICBwYWRkaW5nLWJvdHRvbTogMHB4Owp9CgoudGVhbV9pdGVtIC50ZWFtX2ltZyBpbWcgewogIG1heC13aWR0aDogMTAwJTsKfQoKLnRlYW1faXRlbSAudGVhbV9jb250ZW50IHsKICBwYWRkaW5nLWxlZnQ6IDMwcHg7Cn0KCi50ZWFtX2l0ZW0gLnRlYW1fY29udGVudCBoNCB7CiAgZm9udDogNjAwIDIwcHgvMjZweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7Cn0KCi50ZWFtX2l0ZW0gLnRlYW1fY29udGVudCBoNiB7CiAgZm9udDogNTAwIDE0cHgvMjZweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICM3OTc5Nzk7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHotaW5kZXg6IDE7CiAgcGFkZGluZy1ib3R0b206IDE0cHg7Cn0KCi50ZWFtX2l0ZW0gLnRlYW1fY29udGVudCBoNjpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHdpZHRoOiA2MnB4OwogIGhlaWdodDogMnB4OwogIGJhY2tncm91bmQ6ICMwOGFlOGQ7CiAgbGVmdDogMDsKICBib3R0b206IDA7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHotaW5kZXg6IC0xOwp9CgoudGVhbV9pdGVtIC50ZWFtX2NvbnRlbnQgcCB7CiAgZm9udDogNDAwIDE2cHgvMjZweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzc5Nzk3OTsKICBwYWRkaW5nOiAyNXB4IDBweCAxNXB4Owp9CgoudGVhbV9pdGVtIC50ZWFtX2NvbnRlbnQgYSwgLnRlYW1faXRlbSAudGVhbV9jb250ZW50IHNwYW4gewogIGZvbnQ6IDUwMCAxM3B4LzI2cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjNzk3OTc5Owp9CgoudGVhbV9pdGVtIC50ZWFtX2NvbnRlbnQgYTpob3ZlciB7CiAgY29sb3I6ICMwOGFlOGQ7Cn0KCi8qIG5ldHdvcmtfYXJlYQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwoubmV0d29ya19zdGF0dXNfYXJlYSB7CiAgcGFkZGluZzogMTAwcHggMHB4Owp9CgoubmV0d29ya19zdGF0dXMgewogIHBhZGRpbmctYm90dG9tOiA0MHB4Owp9CgoubmV0d29ya19zdGF0dXMgLnNlY3Rpb25fdGl0bGUgewogIG1hcmdpbi1ib3R0b206IDI3cHg7Cn0KCi5uZXR3b3JrX3N0YXR1cyBwIHsKICBmb250LXNpemU6IDI1cHg7CiAgbGluZS1oZWlnaHQ6IDI2cHg7CiAgY29sb3I6ICMyNDI0MjQ7CiAgZm9udC1mYW1pbHk6ICJMb3JhIiwgc2VyaWY7CiAgZm9udC1zdHlsZTogaXRhbGljOwp9CgoubmV0d29ya19zdGF0dXMgLm5fY29udGVudCB7CiAgZm9udC1mYW1pbHk6ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBwYWRkaW5nLXRvcDogNThweDsKfQoKLm5ldHdvcmtfc3RhdHVzIC5uX2NvbnRlbnQgaDMgewogIGZvbnQ6IDYwMCAyNHB4LzQwcHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwp9CgoubmV0d29ya19zdGF0dXMgLm5fY29udGVudCBoMSB7CiAgZm9udC1zaXplOiA1NXB4OwogIGxpbmUtaGVpZ2h0OiA3MHB4OwogIHBhZGRpbmctYm90dG9tOiAzNXB4OwogIG1hcmdpbi1ib3R0b206IDBweDsKfQoKLm5ldHdvcmtfc3RhdHVzIC50aGVtZV9idG5fdHdvIHsKICBib3JkZXItcmFkaXVzOiAzcHg7CiAgbWFyZ2luOiAwcHggMTBweDsKICBwYWRkaW5nOiAwcHggMzJweDsKICBiYWNrZ3JvdW5kOiAjMzdhYjc1Owp9CgouZXhfdGl0bGUgewogIGRpc3BsYXk6IGJsb2NrOwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBmb250OiA3MDAgMjdweC83MHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzI0MjQyNDsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgcGFkZGluZy10b3A6IDUycHg7CiAgcGFkZGluZy1ib3R0b206IDIwcHg7CiAgbWFyZ2luLWJvdHRvbTogMHB4Owp9CgouZXhfdGl0bGU6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICB3aWR0aDogMXB4OwogIGhlaWdodDogNTVweDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIGJhY2tncm91bmQ6ICMwMDA7CiAgdG9wOiAwcHg7CiAgbGVmdDogNTAlOwogIG1hcmdpbi1sZWZ0OiAtMC41cHg7Cn0KCi5leGNoYW5nZSB7CiAgbWF4LXdpZHRoOiA3MDBweDsKICBtYXJnaW46IDAgYXV0bzsKfQoKLmV4Y2hhbmdlIC50YWJsZSB7CiAgbWFyZ2luLWJvdHRvbTogMHB4Owp9CgouZXhjaGFuZ2UgLnRhYmxlIHRoZWFkIHRoIHsKICBib3JkZXI6IDBweDsKICBmb250OiA3MDAgMThweC8zMHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzI0MjQyNDsKICBwYWRkaW5nLXRvcDogMHB4OwogIHdoaXRlLXNwYWNlOiBub3dyYXA7Cn0KCi5leGNoYW5nZSAudGFibGUgdGJvZHkgdGgsIC5leGNoYW5nZSAudGFibGUgdGJvZHkgdGQgewogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDlkOWQ5OwogIGZvbnQ6IDQwMCAxNnB4LzI2cHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7Cn0KCi5leGNoYW5nZSAudGFibGUgdGJvZHkgdGggewogIGNvbG9yOiAjMzg1MWQxOwp9CgouZXhjaGFuZ2UgLnRhYmxlIHRib2R5IHRkIHsKICBjb2xvcjogIzI0MjQyNDsKfQoKLm1hc3Rlcm5vZGVzIHsKICBwYWRkaW5nOiAzMHB4IDBweCA1MHB4Owp9CgoubWFzdGVybm9kZXMgLm1hdGVybm9kZXNfaXRlbSB7CiAgZm9udC1mYW1pbHk6ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzI0MjQyNDsKfQoKLm1hc3Rlcm5vZGVzIC5tYXRlcm5vZGVzX2l0ZW0gaDQgewogIGZvbnQtc2l6ZTogMjJweDsKICBsaW5lLWhlaWdodDogNDBweDsKICBmb250LXdlaWdodDogNDAwOwp9CgoubWFzdGVybm9kZXMgLm1hdGVybm9kZXNfaXRlbSBzcGFuIHsKICBmb250LXNpemU6IDU1cHg7CiAgbGluZS1oZWlnaHQ6IDcwcHg7CiAgZm9udC13ZWlnaHQ6IDYwMDsKfQoKLm1hc3Rlcm5vZGVzIC5tYXRlcm5vZGVzX2l0ZW0gKyAubWF0ZXJub2Rlc19pdGVtIHsKICBtYXJnaW4tdG9wOiA2NXB4Owp9CgovKmJsb2NrX2NoYWluIGNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLmJsb2NrX2NoYWluIC50YWJsZSB7CiAgYm9yZGVyOiAxcHggc29saWQgI2Q2ZDZkNjsKICBtYXJnaW4tYm90dG9tOiAwcHg7Cn0KCi5ibG9ja19jaGFpbiAudGFibGUgdGhlYWQgdHIgdGggewogIGJvcmRlcjogMHB4OwogIGZvbnQ6IDYwMCAxOHB4LzQwcHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMjQyNDI0OwogIHBhZGRpbmc6IDEwcHggMzBweDsKICB3aGl0ZS1zcGFjZTogbm93cmFwOwp9CgouYmxvY2tfY2hhaW4gLnRhYmxlIHRib2R5IHRyIHRkLCAuYmxvY2tfY2hhaW4gLnRhYmxlIHRib2R5IHRyIHRoIHsKICBwYWRkaW5nOiAxMHB4IDMwcHg7CiAgZm9udDogNDAwIDE2cHgvNDBweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzI0MjQyNDsKICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q2ZDZkNjsKICB3aGl0ZS1zcGFjZTogbm93cmFwOwp9CgovKiB0cmVhc3VyX3RhYmxlIGNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLnRyZWFzdXJfdGFibGUgewogIHBhZGRpbmc6IDUwcHggMHB4Owp9CgoudHJlYXN1cl90YWJsZSAudGFibGUgdGhlYWQgdHIgdGggewogIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDMwcHg7CiAgZm9udC1zaXplOiAxNnB4Owp9CgoudHJlYXN1cl90YWJsZSAudGFibGUgdGJvZHkgdHIgdGggewogIGNvbG9yOiAjMzg1MWQxOwp9CgoubWluaW5nX3RleHQgcCB7CiAgZm9udDogNDAwIDE2cHgvMjhweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzc5Nzk3OTsKICBwYWRkaW5nOiAwcHggOTVweCA0MHB4OwogIG1hcmdpbi1ib3R0b206IDBweDsKfQoKLm1pbmluZ190ZXh0IC5leF90aXRsZSB7CiAgcGFkZGluZy1ib3R0b206IDBweDsKfQoKLm1pbmluZ190ZXh0IC50aGVtZV9idG5fdHdvIHsKICBib3JkZXItcmFkaXVzOiAzcHg7CiAgbWFyZ2luOiAwcHggMTBweDsKICBwYWRkaW5nOiAwcHggMzRweDsKICBiYWNrZ3JvdW5kOiAjMzdhYjc1Owp9CgovKj09PT09PT09PT09PT09IHBhcnRuZXJzX2FyZWEgY3NzID09PT09PT09PT09PT0qLwoucGFydG5lcnMtYXJlYSB7CiAgYmFja2dyb3VuZDogI2YyZjJmMjsKICBwYWRkaW5nLWJvdHRvbTogODBweDsKfQoKLnBhcnRuZXJzLWFyZWEgLm10XzAgewogIG1hcmdpbi10b3A6IC00NXB4OwogIHBhZGRpbmctdG9wOiAwcHg7Cn0KCi5sZWFybmluZ19wcm9tbyB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHRvcDogLTE0OHB4Owp9CgoubGVhcm5pbmdfcHJvbW8gLmxlYXJuaW5nX2ltZyB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHotaW5kZXg6IDE7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKfQoKLmxlYXJuaW5nX3Byb21vIC5sZWFybmluZ19pbWc6YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIGJhY2tncm91bmQ6ICMwMDA7CiAgb3BhY2l0eTogMC4xNTsKICB6LWluZGV4OiAwOwp9CgoubGVhcm5pbmdfY29udGVudCB7CiAgbWFyZ2luLWxlZnQ6IC0zMHB4OwogIGJhY2tncm91bmQ6ICMyMjIyMjI7CiAgaGVpZ2h0OiAxMDAlOwogIHBhZGRpbmc6IDcwcHggNDBweCAwcHggNTBweDsKICBjb2xvcjogI2ZmZjsKfQoKLmxlYXJuaW5nX2NvbnRlbnQgaDIgewogIGZvbnQtc2l6ZTogMzBweDsKICBsaW5lLWhlaWdodDogNDBweDsKfQoKLmxlYXJuaW5nX2NvbnRlbnQgaDIgc3BhbiB7CiAgZm9udC13ZWlnaHQ6IDQwMDsKfQoKLmxlYXJuaW5nX2NvbnRlbnQgcCB7CiAgZm9udC13ZWlnaHQ6IDMwMDsKICBmb250LXNpemU6IDE4cHg7CiAgbGluZS1oZWlnaHQ6IDMycHg7CiAgcGFkZGluZzogMjNweCAyMHB4IDI4cHggMHB4Owp9CgovKj09PT09PT09PT09IGV4Y2hhbmdlX2FyZWEgY3NzID09PT09PT09PT09Ki8KLmV4Y2hhbmdlX2FyZWEgewogIHBhZGRpbmc6IDEwMHB4IDBweDsKfQoKLmV4Y2hhbmdlX2l0ZW0gewogIHRleHQtYWxpZ246IGNlbnRlcjsKICBiYWNrZ3JvdW5kOiAjZmFmYWZhOwogIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7CiAgcGFkZGluZzogNjBweCA0MHB4Owp9CgouZXhjaGFuZ2VfaXRlbSBoMyB7CiAgZm9udC1zaXplOiAyMHB4OwogIGxpbmUtaGVpZ2h0OiAzMHB4OwogIHBhZGRpbmctdG9wOiAyOHB4Owp9CgovKj09PT09PT09PT09IGV4Y2hhbmdlX2xvZ28gY3NzPT09PT09PT09PT09Ki8KLmV4Y2hhbmdlX2xvZ29fYXJlYSB7CiAgcGFkZGluZzogMTAwcHggMHB4IDYwcHg7Cn0KCi5leF9sb2dvIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlMTsKICBsaW5lLWhlaWdodDogMTM1cHg7CiAgd2lkdGg6IDEwMCU7CiAgbWFyZ2luLWJvdHRvbTogNDBweDsKfQoKLmV4X2xvZ28gaW1nIHsKICBtYXgtd2lkdGg6IDEwMCU7Cn0KCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwovKj09PT09PT09PT09PSB0ZXN0aW1vbmlhbF9hcmVhIGNzcyA9PT09PT09PT09PT09Ki8KLnRlc3RpbW9uaWFsX2FyZWEgewogIGJhY2tncm91bmQ6ICMyNTQwYTU7CiAgcGFkZGluZzogMTAwcHggMHB4IDEzMHB4Owp9CgoudGVzdGltb25pYWxfYXJlYSAuc2VjdGlvbl90aXRsZTpiZWZvcmUgewogIGJhY2tncm91bmQ6ICNmZmY7Cn0KCi50ZXN0aW1vbmlhbF9hcmVhIC5zZWN0aW9uX3RpdGxlIHAgewogIGZvbnQtZmFtaWx5OiAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBmb250LXN0eWxlOiBub3JtYWw7Cn0KCi50ZXN0aW1vbmlhbF9pdGVtIHsKICBib3JkZXI6IDFweCBzb2xpZCAjMjgyODI4OwogIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45MDIpOwogIGJvcmRlci1yYWRpdXM6IDNweDsKICBwYWRkaW5nOiA0NXB4IDQwcHggNDBweCAzNXB4Owp9CgoudGVzdGltb25pYWxfaXRlbSAubWVkaWEgLm1lZGlhLWxlZnQgewogIHRleHQtYWxpZ246IGNlbnRlcjsKICBwYWRkaW5nLXJpZ2h0OiAzNXB4Owp9CgoudGVzdGltb25pYWxfaXRlbSAubWVkaWEgLm1lZGlhLWxlZnQgLmNsaWVudHNfaW1nIHsKICBib3JkZXItcmFkaXVzOiAzcHg7CiAgbWFyZ2luLWJvdHRvbTogMThweDsKfQoKLnRlc3RpbW9uaWFsX2l0ZW0gLm1lZGlhIC5tZWRpYS1sZWZ0IGltZyB7CiAgd2lkdGg6IGF1dG87CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwp9CgoudGVzdGltb25pYWxfaXRlbSAubWVkaWEgaDQgewogIGZvbnQtc2l6ZTogMjBweDsKICBsaW5lLWhlaWdodDogMjhweDsKICBjb2xvcjogIzI3NjBjYTsKfQoKLnRlc3RpbW9uaWFsX2l0ZW0gLm1lZGlhIHAgewogIGZvbnQ6IDQwMCAxN3B4LzI2cHggIkxhdG8iLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjNzk3OTc5Owp9CgovKj09PT09PT09dGVzdGltb25pYWxfYXJlYV90d28gY3NzID09PT09PT09PT09PT0qLwoudGVzdGltb25pYWxfYXJlYV90d28gewogIGJhY2tncm91bmQ6ICNmM2YzZjM7CiAgcGFkZGluZzogMTAwcHggMHB4Owp9CgoudGVzdGltb25pYWxfc2xpZGVycyB7CiAgbWFyZ2luLWJvdHRvbTogLTUwcHg7Cn0KCi50ZXN0aW1vbmlhbF9zbGlkZXJzIC50ZXN0aW1vbmlhbF9pdGVtIHsKICBib3JkZXI6IDBweDsKICBib3JkZXItcmFkaXVzOiAzcHg7CiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpOwogIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDNweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDUpOwogIGJveC1zaGFkb3c6IDBweCAzcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA1KTsKICBtYXJnaW4tYm90dG9tOiA1MHB4Owp9CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLypsYXRlc3RfYmxvZ19hcmVhIGNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLmxhdGVzdF9ibG9nX2FyZWEgewogIHBhZGRpbmc6IDEwMHB4IDBweDsKfQoKLmxhdGVzdF9ibG9nX2FyZWEgLmx0X3RpdGxlX2luZm8gewogIG92ZXJmbG93OiBoaWRkZW47Cn0KCi5sYXRlc3RfYmxvZ19hcmVhIC5sdF90aXRsZV9pbmZvIC5yZWFkX2FsbCB7CiAgZm9udDogNDAwIDIwcHgvMjZweCAiTG9yYSIsIHNlcmlmOwogIGNvbG9yOiAjM2Y0ZjlmOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBmb250LXN0eWxlOiBpdGFsaWM7CiAgbWFyZ2luLXRvcDogNDBweDsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cn0KCi5sYXRlc3RfYmxvZ19hcmVhIC5sdF90aXRsZV9pbmZvIC5yZWFkX2FsbDpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHdpZHRoOiAxMDAlOwogIGhlaWdodDogMXB4OwogIGJvdHRvbTogMDsKICBsZWZ0OiAwOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBiYWNrZ3JvdW5kOiAjM2Y0ZjlmOwp9CgoubHRfYmxvZ19pdGVtIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCi5sdF9ibG9nX2l0ZW0gaDUgewogIGZvbnQ6IDQwMCAxM3B4LzI2cHggIk1vbnRzZXJyYXQiLCBzYW5zLXNlcmlmOwogIGxldHRlci1zcGFjaW5nOiAwLjI2cHg7CiAgcGFkZGluZy1ib3R0b206IDhweDsKfQoKLmx0X2Jsb2dfaXRlbSBoMyB7CiAgZm9udDogNTAwIDE4cHgvMjRweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7Cn0KCi5sdF9ibG9nX2l0ZW0gLmltZ19ibG9nX3RleHQgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBib3R0b206IDBweDsKICB3aWR0aDogMTAwJTsKICBsZWZ0OiAwOwogIHBhZGRpbmctbGVmdDogNDBweDsKICBwYWRkaW5nLXJpZ2h0OiA0MHB4OwogIHBhZGRpbmctYm90dG9tOiAzM3B4Owp9CgoubHRfYmxvZ19pdGVtIC5pbWdfYmxvZ190ZXh0IGg1LCAubHRfYmxvZ19pdGVtIC5pbWdfYmxvZ190ZXh0IGgzIHsKICBjb2xvcjogI2ZmZjsKfQoKLmx0X2Jsb2dfaXRlbSAubHRfY29udGVudCB7CiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkY2RjZGM7CiAgcGFkZGluZzogMjNweCAwcHggMjhweDsKfQoKLmx0X2Jsb2dfaXRlbSAubHRfY29udGVudCBoNSB7CiAgY29sb3I6ICM2MTYxNjE7Cn0KCi5sdF9ibG9nX2l0ZW0gLmx0X2NvbnRlbnQgaDMgewogIGNvbG9yOiAjMjgyODI4Owp9CgoubGF0ZXN0X25ld3MgewogIGJhY2tncm91bmQ6ICMwOGFlOGQ7CiAgaGVpZ2h0OiAxMDAlOwogIHBhZGRpbmc6IDI1cHggMzVweCAyMHB4IDQwcHg7Cn0KCi5sYXRlc3RfbmV3cyBhIHsKICBmb250OiA1MDAgMTZweC8yNnB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogI2ZmZjsKICBwYWRkaW5nOiAxMHB4IDA7CiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cn0KCi5sYXRlc3RfbmV3cyBhOmZpcnN0LWNoaWxkIHsKICBib3JkZXItdG9wOiAwcHg7Cn0KCi5nZXRfbW9yZSB7CiAgYmFja2dyb3VuZDogI2Y4ZjhmODsKICBvdmVyZmxvdzogaGlkZGVuOwogIHBhZGRpbmc6IDUwcHggNjBweDsKICBtYXJnaW4tdG9wOiAxMDBweDsKfQoKLmdldF9tb3JlIC5tZWRpYSBpbWcgewogIG1hcmdpbi1yaWdodDogMzBweDsKfQoKLmdldF9tb3JlIC5tZWRpYSAubWVkaWEtYm9keSB7CiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZDJkMmQyOwogIHBhZGRpbmctbGVmdDogMzBweDsKfQoKLmdldF9tb3JlIC5tZWRpYSAubWVkaWEtYm9keSBoMiB7CiAgZm9udDogNzAwIDM1cHgvNDBweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7CiAgcGFkZGluZy1ib3R0b206IDhweDsKfQoKLmdldF9tb3JlIC5tZWRpYSAubWVkaWEtYm9keSBwIHsKICBmb250OiA0MDAgMjBweC8yNnB4ICJMb3JhIiwgc2VyaWY7CiAgZm9udC1zdHlsZTogaXRhbGljOwogIGNvbG9yOiAjNzk3OTc5Owp9CgouZ2V0X21vcmUgLm1lZGlhIC5tZWRpYS1ib2R5IHAgYSB7CiAgY29sb3I6ICMzZjRmOWY7Cn0KCi5sdF9ibG9nX3R3byB7CiAgYmFja2dyb3VuZDogI2Y1ZjVmNTsKfQoKLypibG9nX2FyZWEgY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCi5ibG9nX2FyZWEgewogIHBhZGRpbmc6IDEwMHB4IDBweDsKfQoKLmJsb2dfbGlmdF9zaWRlYmFyIHsKICBwYWRkaW5nLXJpZ2h0OiA1MHB4Owp9CgouYmxvZ19saWZ0X3NpZGViYXIgLndfdGl0bGUgewogIG1hcmdpbi1ib3R0b206IDIycHg7Cn0KCi5ibG9nX2l0ZW1zIHsKICBwYWRkaW5nLXRvcDogNzVweDsKfQoKLmJsb2dfaXRlbXM6Zmlyc3QtY2hpbGQgewogIHBhZGRpbmctdG9wOiAwcHg7Cn0KCi5ibG9nX2l0ZW1zIC5ibG9nX2ltZyB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGRpc3BsYXk6IGJsb2NrOwogIG92ZXJmbG93OiBoaWRkZW47Cn0KCi5ibG9nX2l0ZW1zIC5ibG9nX2ltZzpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHRvcDogMDsKICBsZWZ0OiAwOwogIHotaW5kZXg6IDE7CiAgb3BhY2l0eTogMDsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGJhY2tncm91bmQ6ICMwOGFlOGQ7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsKICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsKICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsKICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7Cn0KCi5ibG9nX2l0ZW1zIC5ibG9nX2ltZzphZnRlciB7CiAgd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiAxMDAlOwogIGNvbnRlbnQ6ICIiOwogIGJhY2tncm91bmQ6ICMwOGFlOGQ7CiAgb3BhY2l0eTogMDsKICAtby10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOwogIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOwogIC1tcy10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOwogIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogMTsKICB0b3A6IDA7CiAgbGVmdDogMDsKfQoKLmJsb2dfaXRlbXMgLmJsb2dfaW1nIGltZyB7CiAgbWF4LXdpZHRoOiAxMDAlOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuOXMgZWFzZTsKICAtby10cmFuc2l0aW9uOiBhbGwgMC45cyBlYXNlOwogIHRyYW5zaXRpb246IGFsbCAwLjlzIGVhc2U7Cn0KCi5ibG9nX2l0ZW1zOmhvdmVyIC5ibG9nX2ltZyBpbWcsIC5ibG9nX2l0ZW1zOmZvY3VzIC5ibG9nX2ltZyBpbWcgewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpOwogIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOwp9CgouYmxvZ19pdGVtczpob3ZlciAuYmxvZ19pbWc6YmVmb3JlLCAuYmxvZ19pdGVtczpmb2N1cyAuYmxvZ19pbWc6YmVmb3JlIHsKICBsZWZ0OiA1MCU7CiAgd2lkdGg6IDA7CiAgb3BhY2l0eTogMC41Owp9CgouYmxvZ19pdGVtczpob3ZlciAuYmxvZ19pbWc6YWZ0ZXIsIC5ibG9nX2l0ZW1zOmZvY3VzIC5ibG9nX2ltZzphZnRlciB7CiAgdG9wOiA1MCU7CiAgaGVpZ2h0OiAwOwogIG9wYWNpdHk6IDAuNTsKfQoKLmJsb2dfaXRlbXMgaDYgewogIGZvbnQ6IDYwMCAxN3B4LzIwcHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMDhhZThkOwogIHBhZGRpbmc6IDI1cHggMCA0cHg7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwp9CgouYmxvZ19pdGVtcyAuYnJlYWRjcnVtYl9kYXRlIHsKICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZTRlNDsKICBkaXNwbGF5OiBibG9jazsKICBvdmVyZmxvdzogaGlkZGVuOwogIHBhZGRpbmctYm90dG9tOiA2cHg7Cn0KCi5ibG9nX2l0ZW1zIC5icmVhZGNydW1iIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICBtYXJnaW46IDA7CiAgcGFkZGluZy1ib3R0b206IDhweDsKICBib3JkZXI6IDA7CiAgcGFkZGluZy10b3A6IDE0cHg7CiAgZmxvYXQ6IHJpZ2h0Owp9CgouYmxvZ19pdGVtcyAuYnJlYWRjcnVtYiBsaSB7CiAgZm9udDogNzAwIDE3cHgvMzdweCAiTGF0byIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICNiOGI4Yjg7Cn0KCi5ibG9nX2l0ZW1zIC5icmVhZGNydW1iIGxpOmJlZm9yZSB7CiAgY29sb3I6ICNiOGI4Yjg7Cn0KCi5ibG9nX2l0ZW1zIC5icmVhZGNydW1iIGxpIGEgewogIGNvbG9yOiAjYjhiOGI4OwogIGZvbnQtZmFtaWx5OiAiTGF0byIsIHNhbnMtc2VyaWY7Cn0KCi5ibG9nX2l0ZW1zIC5icmVhZGNydW1iIGxpIGE6aG92ZXIsIC5ibG9nX2l0ZW1zIC5icmVhZGNydW1iIGxpIGE6Zm9jdXMgewogIGNvbG9yOiAjMDhhZThkOwp9CgouYmxvZ19pdGVtcyAuYmxvZ190aXR0bGUgewogIGZvbnQ6IDYwMCAyNHB4LzMycHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMjQyNDI0OwogIGRpc3BsYXk6IGJsb2NrOwogIHBhZGRpbmctdG9wOiAzM3B4Owp9CgouYmxvZ19pdGVtcyAuYmxvZ190aXR0bGU6aG92ZXIsIC5ibG9nX2l0ZW1zIC5ibG9nX3RpdHRsZTpmb2N1cyB7CiAgY29sb3I6ICMwOGFlOGQ7Cn0KCi5ibG9nX2l0ZW1zIHAgewogIGZvbnQ6IDQwMCAxN3B4LzI4cHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICM3OTc5Nzk7CiAgcGFkZGluZzogMThweCAwIDM1cHg7CiAgbGV0dGVyLXNwYWNpbmc6IDBweDsKICBtYXJnaW4tYm90dG9tOiAwcHg7Cn0KCi5wYWdpbmF0aW9uIHsKICBtYXJnaW4tdG9wOiA1NXB4OwogIG1hcmdpbi1ib3R0b206IDBweDsKfQoKLnBhZ2luYXRpb24gbGkgYSB7CiAgd2lkdGg6IDQ0cHg7CiAgaGVpZ2h0OiA0NHB4OwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBmb250OiA3MDAgMThweC8zOHB4ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMjQyNDI0OwogIGJvcmRlcjogMnB4IHNvbGlkICNkNGQ0ZDQ7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHBhZGRpbmc6IDBweDsKICBtYXJnaW4tcmlnaHQ6IDEwcHg7Cn0KCi5wYWdpbmF0aW9uIGxpIGEuYWN0aXZlLCAucGFnaW5hdGlvbiBsaSBhOmhvdmVyIHsKICBiYWNrZ3JvdW5kOiAjMDhhZThkOwogIGJvcmRlci1jb2xvcjogIzA4YWU4ZDsKICBjb2xvcjogI2ZmZjsKfQoKLnR3b19jb2x1bW5fc2FtcGxlIHsKICBvdmVyZmxvdzogaGlkZGVuOwp9CgoudHdvX2NvbHVtbl9zYW1wbGUgaDMgewogIGZvbnQ6IDYwMCAyMnB4LzI2cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMjQyNDI0OwogIHBhZGRpbmctYm90dG9tOiAyMnB4OwogIG1hcmdpbi1ib3R0b206IDBweDsKfQoKLnR3b19jb2x1bW5fc2FtcGxlIC50d29fY29sdW1uX2l0ZW0gewogIG1heC13aWR0aDogMzcwcHg7CiAgZmxvYXQ6IGxlZnQ7Cn0KCi50d29fY29sdW1uX3NhbXBsZSAudHdvX2NvbHVtbl9pdGVtIHAgewogIGZvbnQ6IDQwMCAxNnB4LzI2cHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICM3OTc5Nzk7CiAgbWFyZ2luLWJvdHRvbTogMHB4Owp9CgoudHdvX2NvbHVtbl9zYW1wbGUgLnR3b19jb2x1bW5faXRlbSArIC50d29fY29sdW1uX2l0ZW0gewogIG1hcmdpbi1sZWZ0OiAzMHB4Owp9Cgouc19tYWluX3RleHQgewogIHBhZGRpbmctdG9wOiA1MHB4Owp9Cgouc19tYWluX3RleHQgcCB7CiAgZm9udDogNDAwIDE2cHgvMjZweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzc5Nzk3OTsKICBsZXR0ZXItc3BhY2luZzogMC4zMnB4OwogIG1hcmdpbi1ib3R0b206IDBweDsKfQoKLnNfbWFpbl90ZXh0IHAgYSB7CiAgY29sb3I6ICMwOGFlOGQ7CiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7Cn0KCi5zX2NvbW1lbnRfbGlzdCB7CiAgcGFkZGluZy10b3A6IDUwcHg7Cn0KCi5zX2NvbW1lbnRfbGlzdF9pbm5lciB7CiAgYm9yZGVyOiAxcHggc29saWQgI2VlZWVlZTsKICBvdmVyZmxvdzogaGlkZGVuOwogIGNsZWFyOiBib3RoOwp9Cgouc19jb21tZW50X2xpc3RfaW5uZXIgLm1lZGlhIHsKICBwYWRkaW5nOiAyNXB4IDYwcHggMjBweCAyNXB4OwogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlZWVlOwogIG1hcmdpbi10b3A6IDBweDsKfQoKLnNfY29tbWVudF9saXN0X2lubmVyIC5tZWRpYSAubWVkaWEtYm9keSB7CiAgcGFkZGluZy1sZWZ0OiAzMHB4Owp9Cgouc19jb21tZW50X2xpc3RfaW5uZXIgLm1lZGlhIC5tZWRpYS1ib2R5IGg0IHsKICBmb250OiA1MDAgMTVweC8yMHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBsZXR0ZXItc3BhY2luZzogMC4zcHg7CiAgY29sb3I6ICMwMDA7CiAgcGFkZGluZy1ib3R0b206IDZweDsKICBtYXJnaW4tYm90dG9tOiAwcHg7Cn0KCi5zX2NvbW1lbnRfbGlzdF9pbm5lciAubWVkaWEgLm1lZGlhLWJvZHkgcCB7CiAgZm9udDogNDAwIDE2cHgvMjZweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBsZXR0ZXItc3BhY2luZzogMC4zMnB4OwogIGNvbG9yOiAjODk4OTg5OwogIHBhZGRpbmctYm90dG9tOiA1cHg7CiAgbWFyZ2luOiAwcHg7Cn0KCi5zX2NvbW1lbnRfbGlzdF9pbm5lciAubWVkaWEgLm1lZGlhLWJvZHkgLmRhdGVfcmVwIGEgewogIGZvbnQtc2l6ZTogMTVweDsKICBsaW5lLWhlaWdodDogMzJweDsKICBsZXR0ZXItc3BhY2luZzogMC4zMnB4OwogIGNvbG9yOiAjYWVhZWFlOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBtYXJnaW4tcmlnaHQ6IDE2cHg7CiAgZm9udC1mYW1pbHk6ICJMYXRvIiwgc2Fucy1zZXJpZjsKfQoKLnNfY29tbWVudF9saXN0X2lubmVyIC5tZWRpYSAubWVkaWEtYm9keSAuZGF0ZV9yZXAgYTpiZWZvcmUgewogIGNvbnRlbnQ6ICJ8IjsKICBjb2xvcjogI2FlYWVhZTsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgcmlnaHQ6IC0xMnB4OwogIHRvcDogNDclOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwp9Cgouc19jb21tZW50X2xpc3RfaW5uZXIgLm1lZGlhIC5tZWRpYS1ib2R5IC5kYXRlX3JlcCBhICsgYSB7CiAgY29sb3I6ICMwOGFlOGQ7Cn0KCi5zX2NvbW1lbnRfbGlzdF9pbm5lciAubWVkaWEgLm1lZGlhLWJvZHkgLmRhdGVfcmVwIGEgKyBhOmJlZm9yZSB7CiAgZGlzcGxheTogbm9uZTsKfQoKLnNfY29tbWVudF9saXN0X2lubmVyIC5tZWRpYSAubWVkaWEtYm9keSAubWVkaWEgewogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogIHBhZGRpbmctdG9wOiA1MHB4OwogIHBhZGRpbmctYm90dG9tOiAwcHg7CiAgcGFkZGluZy1sZWZ0OiAwcHg7CiAgcGFkZGluZy1yaWdodDogMHB4Owp9Cgouc19jb21tZW50X2xpc3RfaW5uZXIgLm1lZGlhOm50aC1jaGlsZChldmVuKSB7CiAgYmFja2dyb3VuZDogI2ZjZmNmYzsKfQoKLnNfY29tbWVudF9saXN0X2lubmVyIC5tZWRpYTpsYXN0LWNoaWxkIHsKICBib3JkZXItYm90dG9tOiAwcHg7Cn0KCi5zX2NvbW1lbnRfYXJlYSB7CiAgYmFja2dyb3VuZDogI2Y3ZjdmNzsKICBib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlOwogIHBhZGRpbmc6IDQzcHggMzZweCA0NXB4IDM2cHg7CiAgbWFyZ2luLXRvcDogNjBweDsKfQoKLnNfY29tbWVudF9hcmVhIC5jb250YWN0X3VzX2Zvcm0gewogIG1hcmdpbi1sZWZ0OiAtMTJweDsKICBtYXJnaW4tcmlnaHQ6IC0xMnB4Owp9Cgouc19jb21tZW50X2FyZWEgLmNvbnRhY3RfdXNfZm9ybSAuZm9ybS1ncm91cCB7CiAgbWFyZ2luLWJvdHRvbTogMjBweDsKICBtYXJnaW4tdG9wOiAwcHg7CiAgcGFkZGluZzogMHB4IDhweDsKfQoKLnNfY29tbWVudF9hcmVhIC5jb250YWN0X3VzX2Zvcm0gLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbCB7CiAgYm9yZGVyOiAxcHggc29saWQgI2VlZWVlZTsKICBwYWRkaW5nOiAwcHggMjBweDsKICBmb250LXNpemU6IDE2cHg7CiAgZm9udC1mYW1pbHk6ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzczNzM3MzsKICBmb250LXdlaWdodDogNTAwOwogIGJhY2tncm91bmQ6ICNmZmY7CiAgaGVpZ2h0OiA0NXB4OwogIGxpbmUtaGVpZ2h0OiA0NXB4OwogIGJvcmRlci1yYWRpdXM6IDBweDsKfQoKLnNfY29tbWVudF9hcmVhIC5jb250YWN0X3VzX2Zvcm0gLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbC5wbGFjZWhvbGRlciB7CiAgY29sb3I6ICM3MzczNzM7Cn0KCi5zX2NvbW1lbnRfYXJlYSAuY29udGFjdF91c19mb3JtIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2w6LW1vei1wbGFjZWhvbGRlciB7CiAgY29sb3I6ICM3MzczNzM7Cn0KCi5zX2NvbW1lbnRfYXJlYSAuY29udGFjdF91c19mb3JtIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2w6Oi1tb3otcGxhY2Vob2xkZXIgewogIGNvbG9yOiAjNzM3MzczOwp9Cgouc19jb21tZW50X2FyZWEgLmNvbnRhY3RfdXNfZm9ybSAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzczNzM3MzsKfQoKLnNfY29tbWVudF9hcmVhIC5jb250YWN0X3VzX2Zvcm0gLmZvcm0tZ3JvdXAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHsKICBoZWlnaHQ6IDE3MnB4Owp9Cgouc19jb21tZW50X2FyZWEgLmNvbnRhY3RfdXNfZm9ybSAuZm9ybS1ncm91cDpsYXN0LWNoaWxkIHsKICBtYXJnaW4tYm90dG9tOiAwcHg7Cn0KCi8qYmxvZ19yaWdodF9zaWRlYmFyIGNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwoud190aXRsZSB7CiAgZm9udDogNjAwIDIycHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMjQyNDI0OwogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCi53X3RpdGxlOmFmdGVyIHsKICBjb250ZW50OiAiIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAyMHB4OwogIHJpZ2h0OiAtNDVweDsKICBiYWNrZ3JvdW5kOiAjMDhhZThkOwogIGhlaWdodDogMnB4OwogIHdpZHRoOiAzNXB4Owp9CgouYmxvZ19yaWdodF9zaWRlYmFyIC5yX3dpZGdldCB7CiAgcGFkZGluZy10b3A6IDQycHg7Cn0KCi5ibG9nX3JpZ2h0X3NpZGViYXIgLnNlYXJjaF93aWRnZXQgLmlucHV0LWdyb3VwIGlucHV0IHsKICBib3JkZXItY29sb3I6ICNkM2QzZDM7CiAgZm9udDogNDAwIDE2cHgvNTBweCAiTGF0byIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICM5MDkwOTA7CiAgYm9yZGVyLXJhZGl1czogMDsKICBib3JkZXItcmlnaHQ6IDA7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lOwogIGJveC1zaGFkb3c6IG5vbmU7CiAgcGFkZGluZzogMCAyMHB4OwogIGJhY2tncm91bmQ6ICMyNDI0MjQ7Cn0KCi5ibG9nX3JpZ2h0X3NpZGViYXIgLnNlYXJjaF93aWRnZXQgLmlucHV0LWdyb3VwIGlucHV0LnBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzkwOTA5MDsKfQoKLmJsb2dfcmlnaHRfc2lkZWJhciAuc2VhcmNoX3dpZGdldCAuaW5wdXQtZ3JvdXAgaW5wdXQ6LW1vei1wbGFjZWhvbGRlciB7CiAgY29sb3I6ICM5MDkwOTA7Cn0KCi5ibG9nX3JpZ2h0X3NpZGViYXIgLnNlYXJjaF93aWRnZXQgLmlucHV0LWdyb3VwIGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzkwOTA5MDsKfQoKLmJsb2dfcmlnaHRfc2lkZWJhciAuc2VhcmNoX3dpZGdldCAuaW5wdXQtZ3JvdXAgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgewogIGNvbG9yOiAjOTA5MDkwOwp9CgouYmxvZ19yaWdodF9zaWRlYmFyIC5zZWFyY2hfd2lkZ2V0IC5pbnB1dC1ncm91cCBidXR0b24gewogIGJvcmRlci1jb2xvcjogI2QzZDNkMzsKICBjb2xvcjogI2ZmZjsKICBmb250LXNpemU6IDE4cHg7CiAgYmFja2dyb3VuZC1jb2xvcjogIzI0MjQyNDsKICBib3JkZXItbGVmdDogMDsKICBib3JkZXItcmFkaXVzOiAwOwogIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICBib3gtc2hhZG93OiBub25lOwogIGN1cnNvcjogcG9pbnRlcjsKfQoKLmJsb2dfcmlnaHRfc2lkZWJhciAuc2VhcmNoX3dpZGdldCAuaW5wdXQtZ3JvdXAgYnV0dG9uOmZvY3VzIHsKICBvdXRsaW5lOiBub25lOwp9CgouYmxvZ19yaWdodF9zaWRlYmFyIC5jYXRlZ29yaWVzX3dpZGdldCB1bCB7CiAgcGFkZGluZy10b3A6IDdweDsKfQoKLmJsb2dfcmlnaHRfc2lkZWJhciAuY2F0ZWdvcmllc193aWRnZXQgdWwgbGk6bGFzdC1jaGlsZCBhIHsKICBib3JkZXI6IDA7Cn0KCi5ibG9nX3JpZ2h0X3NpZGViYXIgLmNhdGVnb3JpZXNfd2lkZ2V0IHVsIGxpIGEgewogIGZvbnQ6IDcwMCAxN3B4LzQycHggIkxhdG8iLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjNzk3OTc5OwogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2OwogIGRpc3BsYXk6IGJsb2NrOwogIGxldHRlci1zcGFjaW5nOiAwLjUwcHg7Cn0KCi5ibG9nX3JpZ2h0X3NpZGViYXIgLmNhdGVnb3JpZXNfd2lkZ2V0IHVsIGxpIGEgaSB7CiAgZm9udC1zaXplOiAxNHB4OwogIGZsb2F0OiByaWdodDsKICBsaW5lLWhlaWdodDogNDJweDsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAzMDBtcyBsaW5lYXIgMHM7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDMwMG1zIGxpbmVhciAwczsKICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgbGluZWFyIDBzOwp9CgouYmxvZ19yaWdodF9zaWRlYmFyIC5jYXRlZ29yaWVzX3dpZGdldCB1bCBsaSBhOmhvdmVyLCAuYmxvZ19yaWdodF9zaWRlYmFyIC5jYXRlZ29yaWVzX3dpZGdldCB1bCBsaSBhOmZvY3VzIHsKICBjb2xvcjogIzA4YWU4ZDsKfQoKLmJsb2dfcmlnaHRfc2lkZWJhciAuY2F0ZWdvcmllc193aWRnZXQgdWwgbGkgYTpob3ZlciBpLCAuYmxvZ19yaWdodF9zaWRlYmFyIC5jYXRlZ29yaWVzX3dpZGdldCB1bCBsaSBhOmZvY3VzIGkgewogIG1hcmdpbi1yaWdodDogNXB4Owp9CgouYmxvZ19yaWdodF9zaWRlYmFyIC5yZWNlbnRfd2lkZ2V0IHsKICBwYWRkaW5nLXRvcDogMzBweDsKfQoKLmJsb2dfcmlnaHRfc2lkZWJhciAucmVjZW50X3dpZGdldCAubWVkaWEgewogIHBhZGRpbmc6IDIxcHggMCAyNXB4OwogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2Owp9CgouYmxvZ19yaWdodF9zaWRlYmFyIC5yZWNlbnRfd2lkZ2V0IC5tZWRpYSAubWVkaWEtYm9keSB7CiAgcGFkZGluZy1sZWZ0OiAyMHB4Owp9CgouYmxvZ19yaWdodF9zaWRlYmFyIC5yZWNlbnRfd2lkZ2V0IC5tZWRpYSAubWVkaWEtYm9keSBhIHsKICBmb250OiA3MDAgMTZweC8yMnB4ICJMYXRvIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzI0MjQyNDsKICBkaXNwbGF5OiBibG9jazsKICBsZXR0ZXItc3BhY2luZzogMC4zcHg7CiAgbWFyZ2luLXRvcDogLTZweDsKfQoKLmJsb2dfcmlnaHRfc2lkZWJhciAucmVjZW50X3dpZGdldCAubWVkaWEgLm1lZGlhLWJvZHkgYTpob3ZlciwgLmJsb2dfcmlnaHRfc2lkZWJhciAucmVjZW50X3dpZGdldCAubWVkaWEgLm1lZGlhLWJvZHkgYTpmb2N1cyB7CiAgY29sb3I6ICMwOGFlOGQ7CiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7Cn0KCi5ibG9nX3JpZ2h0X3NpZGViYXIgLnJlY2VudF93aWRnZXQgLm1lZGlhIC5tZWRpYS1ib2R5IGg2IHsKICBmb250OiA3MDAgMTRweC8xICJMYXRvIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzlhOWE5YTsKICBwYWRkaW5nLXRvcDogMTBweDsKICBsZXR0ZXItc3BhY2luZzogMC4yOHB4Owp9CgouYmxvZ19yaWdodF9zaWRlYmFyIC50YWdfd2lkZ2V0IHVsIHsKICBwYWRkaW5nLXRvcDogMTBweDsKfQoKLmJsb2dfcmlnaHRfc2lkZWJhciAudGFnX3dpZGdldCB1bCBsaSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHBhZGRpbmctdG9wOiAxMHB4OwogIHBhZGRpbmctcmlnaHQ6IDdweDsKfQoKLmJsb2dfcmlnaHRfc2lkZWJhciAudGFnX3dpZGdldCB1bCBsaSBhIHsKICBmb250OiA0MDAgMTRweC8zOHB4ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjYTZhNmE2OwogIGJvcmRlcjogMXB4IHNvbGlkICNlNGU0ZTQ7CiAgcGFkZGluZzogMCAxOHB4OwogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKfQoKLmJsb2dfcmlnaHRfc2lkZWJhciAudGFnX3dpZGdldCB1bCBsaSBhOmhvdmVyLCAuYmxvZ19yaWdodF9zaWRlYmFyIC50YWdfd2lkZ2V0IHVsIGxpIGE6Zm9jdXMgewogIGJhY2tncm91bmQ6ICMxZjI4Njg7CiAgYm9yZGVyLWNvbG9yOiAjMWYyODY4OwogIGNvbG9yOiAjZmZmOwp9CgovKiBFbmQgQmxvZyB3aXRoIHJpZGUgc2lkZWJhcgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLmJnX3doaXRlIHsKICBiYWNrZ3JvdW5kOiAjZmZmOwogIGJvcmRlcjogMXB4IHNvbGlkICNlN2U3ZTc7Cn0KCi5nZXRfbW9yZV9hcmVhIHsKICBiYWNrZ3JvdW5kOiAjMjAxZjIwOwogIHBhZGRpbmc6IDU1cHggMHB4IDM1cHg7Cn0KCi5nZXRfbW9yZV90d28gewogIHBhZGRpbmc6IDBweDsKICBtYXJnaW4tdG9wOiAwcHg7CiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7Cn0KCi5nZXRfbW9yZV90d28gLm1lZGlhIGgyIHsKICBjb2xvcjogI2ZmZjsKICBmb250LXNpemU6IDI4cHg7CiAgcGFkZGluZy1yaWdodDogNjRweDsKfQoKLmdldF9tb3JlX3R3byAubWVkaWEgLm1lZGlhLWJvZHkgewogIGJvcmRlci1jb2xvcjogIzI1NDBhNTsKfQoKLmdldF9tb3JlX3R3byAubWVkaWEgLm1lZGlhLWJvZHkgcCB7CiAgZm9udDogNDAwIDE2cHgvMjZweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKfQoKLmdldF9tb3JlX3R3byAudGhlbWVfYnRuIHsKICBwYWRkaW5nOiAwcHggNTJweDsKICBsaW5lLWhlaWdodDogNTBweDsKfQoKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qIHZpZGVvX2FyZWEgY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCi52aWRlb19hcmVhIHsKICBwYWRkaW5nOiAxMDBweCAwcHg7CiAgYmFja2dyb3VuZDogI2YzZjNmMzsKfQoKLnZpZGVvX2l0ZW1faW5uZXIgewogIG1hcmdpbi1ib3R0b206IC00NXB4Owp9CgoudmlkZW9fY29udGVudCBoMiB7CiAgZm9udDogNjAwIDM1cHgvNDVweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctYm90dG9tOiAzMHB4Owp9CgoudmlkZW9fY29udGVudCBoMjpiZWZvcmUgewogIGNvbnRlbnQ6ICIiOwogIHdpZHRoOiA3MHB4OwogIGhlaWdodDogMnB4OwogIGJhY2tncm91bmQ6ICMzN2FiNzU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGJvdHRvbTogMDsKICBsZWZ0OiAwOwp9CgoudmlkZW9fY29udGVudCBwIHsKICBmb250OiA0MDAgMTdweC8yOHB4ICJMYXRvIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzc5Nzk3OTsKICBsZXR0ZXItc3BhY2luZzogMC4zNnB4OwogIHBhZGRpbmc6IDMwcHggMHB4IDM1cHg7Cn0KCi52aWRlb19jb250ZW50IC50aGVtZV9idG5fdHdvIHsKICBwYWRkaW5nOiAwcHggMzZweDsKfQoKLnZpZGVvX3NjcmVlbiB7CiAgbWFyZ2luLWxlZnQ6IDM2cHg7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHotaW5kZXg6IDE7Cn0KCi52aWRlb19zY3JlZW46YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgYmFja2dyb3VuZDogIzAwMDsKICBvcGFjaXR5OiAwLjUwOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAwOwp9CgoudmlkZW9fc2NyZWVuIC5wb3B1cC15b3V0dWJlIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiA1MCU7CiAgbGVmdDogNTAlOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwp9CgovKnJlc291cmNlc192aWRlb19hcmVhIGNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwoucmVzb3VyY2VzX3ZpZGVvX2FyZWEgewogIHBhZGRpbmc6IDEwMHB4IDBweCAyNnB4Owp9CgoudmlkZW9faW5mbyB7CiAgcGFkZGluZy1ib3R0b206IDgwcHg7Cn0KCi52aWRlb19pdGVtIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgei1pbmRleDogMTsKfQoKLnZpZGVvX2l0ZW06YmVmb3JlIHsKICBjb250ZW50OiAiIjsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgYmFja2dyb3VuZDogIzAwMDsKICBvcGFjaXR5OiAwLjIwOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAwOwp9CgoudmlkZW9faXRlbSBpbWcgewogIG1heC13aWR0aDogMTAwJTsKfQoKLnZpZGVvX2l0ZW0gLnJfdmlkZW8gewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDUwJTsKICBsZWZ0OiA1MCU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7CiAgd2lkdGg6IDkwcHg7CiAgaGVpZ2h0OiA5MHB4OwogIGJvcmRlci1yYWRpdXM6IDUwJTsKICBib3JkZXI6IDVweCBzb2xpZCByZ2JhKDIxNCwgMjE0LCAyMTQsIDAuMTU2KTsKICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTYpOwogIGZvbnQtc2l6ZTogMzVweDsKICBsaW5lLWhlaWdodDogODBweDsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgY29sb3I6ICNmZmY7Cn0KCi5yX2ZvcnVtcyB7CiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNGU0ZTQ7CiAgcGFkZGluZzogNzRweCAwcHg7Cn0KCi5yX2ZvcnVtcyAuZm9ydW1zX3NsaWRlciAub3dsLWRvdHMgewogIHRleHQtYWxpZ246IGNlbnRlcjsKICBtYXJnaW4tdG9wOiA0NXB4Owp9Cgoucl9mb3J1bXMgLmZvcnVtc19zbGlkZXIgLm93bC1kb3RzIC5vd2wtZG90IHsKICB3aWR0aDogMTBweDsKICBoZWlnaHQ6IDEwcHg7CiAgYm9yZGVyOiAxcHggc29saWQgIzMwMzAzMDsKICBib3JkZXItcmFkaXVzOiA1MCU7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIG1hcmdpbjogMHB4IDRweDsKfQoKLnJfZm9ydW1zIC5mb3J1bXNfc2xpZGVyIC5vd2wtZG90cyAub3dsLWRvdC5hY3RpdmUgewogIGJhY2tncm91bmQ6ICMzMDMwMzA7Cn0KCi8qPT09PT09PT09PT09IGNvbGxhdGVyYWxfYXJlYSBjc3MgPT09PT09PT09PT09Ki8KLmNvbGxhdGVyYWxfYXJlYSB7CiAgcGFkZGluZzogMTAwcHggMHB4Owp9CgouY29sbGF0ZXJhbF9hcmVhIC50aXRsZV9oNCB7CiAgbGluZS1oZWlnaHQ6IDM1cHg7Cn0KCi52aWRlb19pdGVtcyB7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIG1hcmdpbi1ib3R0b206IDQ1cHg7Cn0KCi52aWRlb19pdGVtcyAudmlkZW9faXRlbTpiZWZvcmUgewogIG9wYWNpdHk6IDAuMzsKfQoKLnZpZGVvX2l0ZW1zIC52aWRlby1wb3AgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IDUwJTsKICBsZWZ0OiA1MCU7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7Cn0KCi52aWRlb19pdGVtcyAuY29udGVudCB7CiAgcGFkZGluZzogMjZweCAwcHggMHB4Owp9CgoudmlkZW9faXRlbXMgLmNvbnRlbnQgaDQgewogIGZvbnQtc2l6ZTogMjBweDsKICBtYXJnaW46IDBweDsKfQoKLnZpZGVvX2l0ZW1zIC5jb250ZW50IHAgewogIGZvbnQtc2l6ZTogMTVweDsKICBsaW5lLWhlaWdodDogMzBweDsKICBtYXJnaW46IDBweDsKICBmb250LWZhbWlseTogIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwp9CgouY29sbGF0ZXJpYWxfY29udGVudCBoNCB7CiAgZm9udC1zaXplOiAyMHB4OwogIGNvbG9yOiAjMjQyNDI0OwogIGxpbmUtaGVpZ2h0OiAzMXB4OwogIHBhZGRpbmc6IDEycHggMHB4IDQwcHg7Cn0KCi5jb2xsYXRlcmlhbF9jb250ZW50IFAgewogIHBhZGRpbmctcmlnaHQ6IDUwcHg7Cn0KCi8qIFN0YXJ0IGN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIGNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwouY3VycmVuY3lfY29udmVydGVyX2FyZWEgewogIGRpc3BsYXk6IC13ZWJraXQtYm94OwogIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogIGRpc3BsYXk6IGZsZXg7CiAgYmFja2dyb3VuZDogdXJsKCIuLi9pbWFnZS9jb252ZXJ0ZXItYmcuanBnIikgbm8tcmVwZWF0IHNjcm9sbCBjZW50ZXIgMC9jb3ZlcjsKfQoKLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfbGVmdCB7CiAgd2lkdGg6IGNhbGMoNTAlIC0gMjA4cHgpOwp9CgouY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodCB7CiAgd2lkdGg6IGNhbGMoNTAlICsgMjA4cHgpOwogIGRpc3BsYXk6IC13ZWJraXQtYm94OwogIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogIGRpc3BsYXk6IGZsZXg7CiAgcGFkZGluZy1sZWZ0OiAxMDBweDsKICBwYWRkaW5nLXRvcDogOTBweDsKfQoKLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQgLmNvbnZlcnRlcl9pbmZvIHsKICBtYXgtd2lkdGg6IDcxMHB4OwogIG1hcmdpbi1sZWZ0OiAwOwogIG1hcmdpbi1yaWdodDogYXV0bzsKfQoKLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQgLmNvbnZlcnRlcl9pbmZvIC5zZWN0aW9uX3RpdGxlIGgyIHsKICBjb2xvcjogI2ZmZjsKfQoKLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQgLmNvbnZlcnRlcl9pbmZvIC5zZWN0aW9uX3RpdGxlIHAgewogIGNvbG9yOiAjZmZmOwogIG9wYWNpdHk6IDAuNTA7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuY29pbl9jYWxjdWxhdG9yIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9CgouY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodCAuY29udmVydGVyX2luZm8gLkhTMW1haW5Db250YWluZXIgdGJvZHkgdHIgdGQgewogIGZvbnQ6IDUwMCAzMHB4LzM2cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjZmZmOwogIGhlaWdodDogNjRweDsKfQoKLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQgLmNvbnZlcnRlcl9pbmZvIC5IUzFtYWluQ29udGFpbmVyIHRib2R5IHRyIHRkLkhTMWxhYmVsIHsKICBkaXNwbGF5OiBub25lOwp9CgouY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodCAuY29udmVydGVyX2luZm8gLkhTMW1haW5Db250YWluZXIgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKDIpIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgcmlnaHQ6IDBweDsKICB0b3A6IDBweDsKICB3aWR0aDogMjMuNSU7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoMikgLkhTMXNlbGVjdEJveCB7CiAgaGVpZ2h0OiAxMDAlOwogIHdpZHRoOiAxMDAlOwogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogIGJvcmRlcjogMXB4IHNvbGlkICM1MTUwNWE7CiAgYm9yZGVyLXJhZGl1czogM3B4OwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBjb2xvcjogI2ZmZjsKICBmb250OiA1MDAgMzBweC8zNnB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKfQoKLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQgLmNvbnZlcnRlcl9pbmZvIC5IUzFtYWluQ29udGFpbmVyIHRib2R5IHRyIHRkOm50aC1jaGlsZCgyKSAuSFMxc2VsZWN0Qm94Lm5pY2Utc2VsZWN0OmFmdGVyIHsKICBib3JkZXItY29sb3I6ICNmZmY7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoMikgLkhTMXNlbGVjdEJveC5uaWNlLXNlbGVjdCAuY3VycmVudCB7CiAgbGluZS1oZWlnaHQ6IDY0cHg7CiAgd2lkdGg6IDEwMCU7CiAgZGlzcGxheTogYmxvY2s7CiAgdGV4dC1hbGlnbjogY2VudGVyOwp9CgouY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodCAuY29udmVydGVyX2luZm8gLkhTMW1haW5Db250YWluZXIgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKDIpIC5IUzFzZWxlY3RCb3gubmljZS1zZWxlY3QgLmxpc3QgewogIGJhY2tncm91bmQ6ICMyNDI0MjQ7CiAgd2lkdGg6IDIzMHB4OwogIG1heC1oZWlnaHQ6IDUwMHB4OwogIG92ZXJmbG93LXk6IHNjcm9sbDsKfQoKLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQgLmNvbnZlcnRlcl9pbmZvIC5IUzFtYWluQ29udGFpbmVyIHRib2R5IHRyIHRkOm50aC1jaGlsZCgyKSAuSFMxc2VsZWN0Qm94Lm5pY2Utc2VsZWN0IC5saXN0IGxpIHsKICBmb250LXNpemU6IDE1cHg7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBmb250LWZhbWlseTogIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwp9CgouY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodCAuY29udmVydGVyX2luZm8gLkhTMW1haW5Db250YWluZXIgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKDIpIC5IUzFzZWxlY3RCb3gubmljZS1zZWxlY3QgLmxpc3QgbGk6aG92ZXIsIC5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoMikgLkhTMXNlbGVjdEJveC5uaWNlLXNlbGVjdCAubGlzdCBsaTpmb2N1cyB7CiAgYmFja2dyb3VuZDogIzA4YWU4ZCAhaW1wb3J0YW50Owp9CgouY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodCAuY29udmVydGVyX2luZm8gLkhTMW1haW5Db250YWluZXIgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKDIpIC5IUzFzZWxlY3RCb3gubmljZS1zZWxlY3QgLmxpc3QgbGkub3B0aW9uLnNlbGVjdGVkLmZvY3VzIHsKICBiYWNrZ3JvdW5kOiAjMDhhZThkICFpbXBvcnRhbnQ7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoMykgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBsZWZ0OiAwcHg7CiAgdG9wOiAwcHg7CiAgd2lkdGg6IDEwJTsKfQoKLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQgLmNvbnZlcnRlcl9pbmZvIC5IUzFtYWluQ29udGFpbmVyIHRib2R5IHRyIHRkOm50aC1jaGlsZCgzKSAuSFMxdGV4dGFyZWEgewogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogIGJvcmRlcjogMXB4IHNvbGlkICM1MTUwNWE7CiAgYm9yZGVyLXJhZGl1czogM3B4OwogIHRleHQtYWxpZ246IGNlbnRlcjsKICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OwogIGNvbG9yOiAjZmZmOwogIGRpc3BsYXk6IGJsb2NrOwogIGhlaWdodDogNjRweDsKfQoKLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQgLmNvbnZlcnRlcl9pbmZvIC5IUzFtYWluQ29udGFpbmVyIHRib2R5IHRyIHRkOm50aC1jaGlsZCgzKSAuSFMxdGV4dGFyZWE6Zm9jdXMgewogIG91dGxpbmU6IG5vbmU7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoNCkgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBsZWZ0OiAzNC42JTsKICB0b3A6IDBweDsKICB3aWR0aDogNCU7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoNCk6YmVmb3JlIHsKICBjb250ZW50OiAiPSI7CiAgY29sb3I6ICNmZmY7CiAgZm9udC1mYW1pbHk6ICJNb250c2VycmF0Iiwgc2Fucy1zZXJpZjsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgdG9wOiA4cHg7CiAgZm9udC1zaXplOiAyMHB4OwogIGZvbnQtd2VpZ2h0OiAzMDA7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoNCkgLkhTMWxhYmVsIHsKICBkaXNwbGF5OiBub25lOwp9CgouY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodCAuY29udmVydGVyX2luZm8gLkhTMW1haW5Db250YWluZXIgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKDUpIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAwOwogIGxlZnQ6IDQzJTsKICB3aWR0aDogMzAlOwp9CgouY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodCAuY29udmVydGVyX2luZm8gLkhTMW1haW5Db250YWluZXIgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKDUpIHRleHRhcmVhIHsKICB3aWR0aDogMTAwJTsKICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICBib3JkZXI6IDFweCBzb2xpZCAjNTE1MDVhOwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBmb250OiA1MDAgMzBweC82NHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBoZWlnaHQ6IDEwMCU7CiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsKICByZXNpemU6IG5vbmU7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoNSkgdGV4dGFyZWE6Zm9jdXMgewogIG91dGxpbmU6IG5vbmU7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoNikgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBsZWZ0OiA4MHB4OwogIHRvcDogMDsKICB3aWR0aDogMTguNSU7CiAgYm9yZGVyOiAxcHggc29saWQgIzUxNTA1YTsKICBib3JkZXItcmFkaXVzOiAzcHg7CiAgY29sb3I6ICNmZmY7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoNik6YmVmb3JlIHsKICBjb250ZW50OiAiQlRDIjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgZm9udDogNTAwIDMwcHgvNjRweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgZGlzcGxheTogYmxvY2s7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIHdpZHRoOiAxMDAlOwogIGhlaWdodDogMTAwJTsKfQoKLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQgLmNvbnZlcnRlcl9pbmZvIC5IUzFtYWluQ29udGFpbmVyIHRib2R5IHRyIHRkOm50aC1jaGlsZCg2KSBzcGFuIHsKICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7Cn0KCi5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0cjpsYXN0LWNoaWxkIHsKICBkaXNwbGF5OiBub25lOwp9CgovKj09PT09PT09PT09PT0gZ2FsbGVyeV9hcmVhIGNzcyA9PT09PT09PT09PT09Ki8KLmdhbGxlcnlfYXJlYSB7CiAgcGFkZGluZzogMTAwcHggMHB4Owp9CgouZ2FsbGVyeV9pbmZvIHsKICBtYXJnaW4tYm90dG9tOiAtNTBweDsKfQoKLmdhbGxlcnlfaXRlbSB7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICBtYXJnaW4tYm90dG9tOiAzMHB4OwogIGN1cnNvcjogcG9pbnRlcjsKfQoKLmdhbGxlcnlfaXRlbSAuZ2FsbGVyeV9pbWcgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBvdmVyZmxvdzogaGlkZGVuOwogIHotaW5kZXg6IDE7Cn0KCi5nYWxsZXJ5X2l0ZW0gLmdhbGxlcnlfaW1nOmJlZm9yZSwgLmdhbGxlcnlfaXRlbSAuZ2FsbGVyeV9pbWc6YWZ0ZXIgewogIHdpZHRoOiAyNSU7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGNvbnRlbnQ6ICIiOwogIGhlaWdodDogMTAwJTsKICBiYWNrZ3JvdW5kOiAjMDhhZThkOwogIG9wYWNpdHk6IDAuOTA7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7CiAgei1pbmRleDogMDsKfQoKLmdhbGxlcnlfaXRlbSAuZ2FsbGVyeV9pbWc6YmVmb3JlIHsKICB0b3A6IDA7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dCAwLjFzOwogIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0IDAuMXM7CiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQgMC4xczsKfQoKLmdhbGxlcnlfaXRlbSAuZ2FsbGVyeV9pbWc6YWZ0ZXIgewogIGxlZnQ6IDI1JTsKICB0b3A6IDA7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dCAwLjNzOwogIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0IDAuM3M7CiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQgMC4zczsKfQoKLmdhbGxlcnlfaXRlbSAuZ2FsbGVyeV9pbWcgaW1nIHsKICBtYXgtd2lkdGg6IDEwMCU7CiAgd2lkdGg6IDEwMCU7Cn0KCi5nYWxsZXJ5X2l0ZW0gLmdhbGxlcnlfaW1nIHNwYW46YmVmb3JlLCAuZ2FsbGVyeV9pdGVtIC5nYWxsZXJ5X2ltZyBzcGFuOmFmdGVyIHsKICB3aWR0aDogMjUlOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBjb250ZW50OiAiIjsKICBoZWlnaHQ6IDEwMCU7CiAgYmFja2dyb3VuZDogIzA4YWU4ZDsKICBvcGFjaXR5OiAwLjkwOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOwogIHotaW5kZXg6IDA7Cn0KCi5nYWxsZXJ5X2l0ZW0gLmdhbGxlcnlfaW1nIHNwYW46YmVmb3JlIHsKICB0b3A6IDA7CiAgbGVmdDogNTAlOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQgMC40czsKICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dCAwLjRzOwogIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0IDAuNHM7Cn0KCi5nYWxsZXJ5X2l0ZW0gLmdhbGxlcnlfaW1nIHNwYW46YWZ0ZXIgewogIGxlZnQ6IDc1JTsKICB0b3A6IDA7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dCAwLjVzOwogIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0IDAuNXM7CiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQgMC41czsKfQoKLmdhbGxlcnlfaXRlbSAubGluayB7CiAgd2lkdGg6IDUwcHg7CiAgaGVpZ2h0OiA1MHB4OwogIGJvcmRlci1yYWRpdXM6IDUwJTsKICBiYWNrZ3JvdW5kOiAjMWEyNDNmOwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBsaW5lLWhlaWdodDogNTBweDsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDogNTAlOwogIGxlZnQ6IDUwJTsKICBtYXJnaW4tbGVmdDogLTI1cHg7CiAgbWFyZ2luLXRvcDogLTI1cHg7CiAgei1pbmRleDogMTsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC42KTsKICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjYpOwogIHRyYW5zZm9ybTogc2NhbGUoMC42KTsKICBvcGFjaXR5OiAwOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQgMC4xczsKICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dCAwLjFzOwogIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0IDAuMXM7Cn0KCi5nYWxsZXJ5X2l0ZW0gLmxpbmsgaW1nIHsKICB3aWR0aDogYXV0bzsKfQoKLmdhbGxlcnlfaXRlbTpob3ZlciAuZ2FsbGVyeV9pbWc6YmVmb3JlLCAuZ2FsbGVyeV9pdGVtOmhvdmVyIC5nYWxsZXJ5X2ltZzphZnRlciB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7Cn0KCi5nYWxsZXJ5X2l0ZW06aG92ZXIgLmdhbGxlcnlfaW1nIHNwYW46YmVmb3JlLCAuZ2FsbGVyeV9pdGVtOmhvdmVyIC5nYWxsZXJ5X2ltZyBzcGFuOmFmdGVyIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKfQoKLmdhbGxlcnlfaXRlbTpob3ZlciAubGluayB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwogIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpOwogIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgb3BhY2l0eTogMTsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0IDAuNnM7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQgMC42czsKICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dCAwLjZzOwp9CgouZ19jb250ZW50IHsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgcGFkZGluZzogMjVweCAwcHggMjBweDsKfQoKLmdfY29udGVudCBoMyB7CiAgZm9udDogNTAwIDE2cHgvMjRweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7CiAgbWFyZ2luLWJvdHRvbTogMHB4Owp9CgouZ19jb250ZW50IHAgewogIGZvbnQ6IDQwMCAxNnB4LzI0cHggIkxvcmEiLCBzZXJpZjsKICBjb2xvcjogIzliOWJhMjsKICBtYXJnaW4tYm90dG9tOiAwcHg7CiAgZm9udC1zdHlsZTogaXRhbGljOwp9CgovKj09PT09PT09PT09PT09ZXJyb3JfcGFnZV9hcmVhIGNzcyA9PT09PT09PT09PT0qLwouZXJyb3JfcGFnZV9hcmVhIHsKICBiYWNrZ3JvdW5kOiB1cmwoIi4uL2ltYWdlL2Vycm9yLWJnLmpwZyIpIG5vLXJlcGVhdCBzY3JvbGwgY2VudGVyIDAvY292ZXI7CiAgbWluLWhlaWdodDogODQwcHg7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHotaW5kZXg6IDE7Cn0KCi5lcnJvcl9wYWdlX2FyZWEgI3BhcnRpY2xlcy1qcyB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHdpZHRoOiAxMDAlOwogIHRvcDogMDsKICBoZWlnaHQ6IDEwMCU7CiAgei1pbmRleDogLTE7Cn0KCi5lcnJvcl9jb250ZW50IHsKICBjb2xvcjogI2ZmZjsKfQoKLmVycm9yX2NvbnRlbnQgaDEgewogIGZvbnQ6IDkwMCAyMDBweC8yMDBweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBwYWRkaW5nLWJvdHRvbTogMjBweDsKfQoKLmVycm9yX2NvbnRlbnQgaDIgewogIGZvbnQ6IDYwMCA1NXB4LzYwcHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGxldHRlci1zcGFjaW5nOiAwLjU1cHg7Cn0KCi5lcnJvcl9jb250ZW50IGgyIHNwYW4gewogIGNvbG9yOiAjMzdhYjc1Owp9CgouZXJyb3JfY29udGVudCBwIHsKICBmb250OiA2MDAgMjVweC8zMHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBsZXR0ZXItc3BhY2luZzogMC4zMHB4OwogIHBhZGRpbmc6IDEycHggMHB4IDQwcHg7Cn0KCi5lcnJvcl9jb250ZW50IC50aGVtZV9idG4gewogIGZvbnQtc2l6ZTogMjVweDsKICBsaW5lLWhlaWdodDogNjJweDsKICBsZXR0ZXItc3BhY2luZzogMHB4OwogIHBhZGRpbmc6IDBweCA1MHB4OwogIGJhY2tncm91bmQ6ICMzN2FiNzU7Cn0KCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwovKiBmZWF0dXJlc19hcmVhIGNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCi5mZWF0dXJlc19hcmVhIHsKICBiYWNrZ3JvdW5kOiAjZjVmNWY1OwogIHBhZGRpbmc6IDEwMHB4IDBweDsKfQoKLmZlYXR1cmVzX2FyZWEgaDIgewogIGZvbnQ6IDUwMCAyNHB4LzM2cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMjQyNDI0OwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBwYWRkaW5nLWJvdHRvbTogMzBweDsKfQoKLmZlYXR1cmVzX2luZm8gLmZlYXR1cmVzX2l0ZW0gewogIG1hcmdpbi10b3A6IDMwcHg7Cn0KCi5mZWF0dXJlc19pbmZvIC5mZWF0dXJlc19pdGVtIC5tZWRpYSB7CiAgYmFja2dyb3VuZDogI2ZmZjsKICBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhOwogIHBhZGRpbmc6IDQxcHggMjVweDsKICBoZWlnaHQ6IDEwMCU7Cn0KCi5mZWF0dXJlc19pbmZvIC5mZWF0dXJlc19pdGVtIGkgewogIG1hcmdpbi1yaWdodDogMzBweDsKfQoKLmZlYXR1cmVzX2luZm8gLmZlYXR1cmVzX2l0ZW0gaTpiZWZvcmUgewogIGZvbnQtc2l6ZTogNjBweDsKICBjb2xvcjogIzA4YWU4ZDsKICBsaW5lLWhlaWdodDogNjVweDsKfQoKLmZlYXR1cmVzX2luZm8gLmZlYXR1cmVzX2l0ZW0gLm1lZGlhLWJvZHkgaDMgewogIGZvbnQ6IDYwMCAyNHB4LzM4cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMjQyNDI0OwogIHBhZGRpbmctYm90dG9tOiA3cHg7CiAgbWFyZ2luLWJvdHRvbTogMHB4Owp9CgouZmVhdHVyZXNfaW5mbyAuZmVhdHVyZXNfaXRlbSAubWVkaWEtYm9keSBwIHsKICBmb250OiA0MDAgMTZweC8yOHB4ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIG1hcmdpbi1ib3R0b206IDBweDsKfQoKLyo9PT09PT09PT09PT0gc3BlYWtlcnNfYXJlYSBjc3MgPT09PT09PT09PT09Ki8KLnNwZWFrZXJzX2FyZWEgewogIGJhY2tncm91bmQ6ICMyNTQwYTU7CiAgcGFkZGluZzogOTJweCAwcHggMjUwcHg7Cn0KCi5zcGVha2Vyc19ldmVudF9pdGVtIHsKICBib3JkZXItcmFkaXVzOiAzcHg7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCi5zcGVha2Vyc19ldmVudF9pdGVtIGltZyB7CiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4OwogIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7Cn0KCi5zcGVha2Vyc19ldmVudF9pdGVtIC5zX2V2ZW50X2NvbnRlbnQgewogIGJhY2tncm91bmQ6ICNmZmY7CiAgcGFkZGluZzogMjVweCA0NXB4IDI3cHg7Cn0KCi5zcGVha2Vyc19ldmVudF9pdGVtIC5zX2V2ZW50X2NvbnRlbnQgLmRhdGVfbWV0YSB7CiAgY29sb3I6ICM5YjliOWI7Cn0KCi5zcGVha2Vyc19ldmVudF9pdGVtIC5zX2V2ZW50X2NvbnRlbnQgaDMgewogIGZvbnQtc2l6ZTogMThweDsKICBmb250LXdlaWdodDogNjAwOwogIHBhZGRpbmc6IDVweCAwcHg7CiAgbGluZS1oZWlnaHQ6IDI2cHg7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyOwogIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjsKfQoKLnNwZWFrZXJzX2V2ZW50X2l0ZW0gLnNfZXZlbnRfY29udGVudCBoMzpob3ZlciB7CiAgY29sb3I6ICMwOGFlOGQ7Cn0KCi5zcGVha2Vyc19ldmVudF9pdGVtIC5zX2V2ZW50X2NvbnRlbnQgcCB7CiAgY29sb3I6ICM5YjliOWI7CiAgbWFyZ2luLWJvdHRvbTogMDsKfQoKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qPT09PT09PT09PT09PSBmYXFfYXJlYSBjc3MgPT09PT09PT09PT09PT09Ki8KLmZhcV9hcmVhIHsKICBwYWRkaW5nOiA5MHB4IDBweCA5MHB4Owp9CgouZmFxX2FyZWEgLnNlY3Rpb25fdGl0bGVfdGhyZWUgcCB7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtc2l6ZTogMTdweDsKICBsZXR0ZXItc3BhY2luZzogMC4xMHB4OwogIHBhZGRpbmctdG9wOiAxMHB4OwogIGNvbG9yOiAjNGM0YzRjOwp9Cgouc2VhcmNoX2Zvcm0gLmZvcm0tY29udHJvbCB7CiAgZm9udC1zaXplOiAxNnB4OwogIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7CiAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDsKICBib3JkZXItcmFkaXVzOiAzcHg7CiAgZm9udC1mYW1pbHk6ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGxpbmUtaGVpZ2h0OiA1OHB4OwogIHBhZGRpbmc6IDBweCAzMHB4OwogIHdpZHRoOiAxMDAlOwogIHotaW5kZXg6IDA7Cn0KCi5zZWFyY2hfZm9ybSAuZm9ybS1jb250cm9sLnBsYWNlaG9sZGVyIHsKICBjb2xvcjogI2EzYTNhMzsKfQoKLnNlYXJjaF9mb3JtIC5mb3JtLWNvbnRyb2w6LW1vei1wbGFjZWhvbGRlciB7CiAgY29sb3I6ICNhM2EzYTM7Cn0KCi5zZWFyY2hfZm9ybSAuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogI2EzYTNhMzsKfQoKLnNlYXJjaF9mb3JtIC5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgewogIGNvbG9yOiAjYTNhM2EzOwp9Cgouc2VhcmNoX2Zvcm0gLmZvcm0tY29udHJvbDpmb2N1cyB7CiAgb3V0bGluZTogbm9uZTsKICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7CiAgYm94LXNoYWRvdzogbm9uZTsKfQoKLnNlYXJjaF9mb3JtIC5pbnB1dC1ncm91cC1idG4gewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMDsKICB6LWluZGV4OiAzOwp9Cgouc2VhcmNoX2Zvcm0gYnV0dG9uIHsKICBib3JkZXI6IDBweDsKICBib3JkZXItcmFkaXVzOiAwcHg7CiAgbWFyZ2luOiAwcHg7CiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgcGFkZGluZzogMHB4IDMwcHg7CiAgY29sb3I6ICNhM2EzYTM7CiAgbGluZS1oZWlnaHQ6IDYwcHg7CiAgY3Vyc29yOiBwb2ludGVyOwp9CgouZmFxLWFjY29yZGlvbiAuY2FyZCB7CiAgYm9yZGVyOiAwcHg7CiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgbWFyZ2luLWJvdHRvbTogNDBweDsKfQoKLmZhcS1hY2NvcmRpb24gLmNhcmQgLmNhcmQtaGVhZGVyIHsKICBwYWRkaW5nOiAwcHg7CiAgYm9yZGVyLXJhZGl1czogMHB4OwogIGJvcmRlcjogMHB4OwogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50Owp9CgouZmFxLWFjY29yZGlvbiAuY2FyZCAuY2FyZC1oZWFkZXIgLmJ0bi1hY2NvcmRpb24gewogIGRpc3BsYXk6IGJsb2NrOwogIGZvbnQ6IDYwMCAyMHB4LzMwcHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMDAwMDAwOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHBhZGRpbmctbGVmdDogMjhweDsKICBwYWRkaW5nLXJpZ2h0OiA5NXB4Owp9CgouZmFxLWFjY29yZGlvbiAuY2FyZCAuY2FyZC1oZWFkZXIgLmJ0bi1hY2NvcmRpb24gc3BhbiB7CiAgZm9udC13ZWlnaHQ6IDUwMDsKICBmb250LXNpemU6IDMwcHg7CiAgZm9udC1mYW1pbHk6ICJNb250c2VycmF0Iiwgc2Fucy1zZXJpZjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgbGVmdDogMDsKfQoKLmZhcS1hY2NvcmRpb24gLmNhcmQgLmNhcmQtaGVhZGVyIC5idG4tYWNjb3JkaW9uIC5wbHVzZSB7CiAgZGlzcGxheTogbm9uZTsKfQoKLmZhcS1hY2NvcmRpb24gLmNhcmQgLmNhcmQtaGVhZGVyIC5idG4tYWNjb3JkaW9uIC5taW51cyB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwp9CgouZmFxLWFjY29yZGlvbiAuY2FyZCAuY2FyZC1oZWFkZXIgLmJ0bi1hY2NvcmRpb24uY29sbGFwc2VkIC5wbHVzZSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwp9CgouZmFxLWFjY29yZGlvbiAuY2FyZCAuY2FyZC1oZWFkZXIgLmJ0bi1hY2NvcmRpb24uY29sbGFwc2VkIC5taW51cyB7CiAgZGlzcGxheTogbm9uZTsKfQoKLmZhcS1hY2NvcmRpb24gLmNhcmQgLnBhbmVsLWJvZHkgewogIGZvbnQ6IDQwMCAxNnB4LzI4cHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgcGFkZGluZzogN3B4IDY1cHggMTBweCAyOHB4Owp9CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLyogY2FyZWVyX3ZhbHVlX2FyZWEgY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCi5jYXJlZXJfdmFsdWVfYXJlYSB7CiAgcGFkZGluZzogOTBweCAwcHggMTAwcHg7Cn0KCi5jYXJlZXJfaXRlbSB7CiAgbWFyZ2luLXRvcDogOTBweDsKfQoKLmNhcmVlcl9pdGVtIC5ib3R0b21fbGluZSB7CiAgbWFyZ2luLXRvcDogMTJweDsKfQoKLmNhcmVlcl9pdGVtIC5zZWN0aW9uX3RpdGxlIHsKICBtYXJnaW4tYm90dG9tOiA0MHB4Owp9CgouY2FyZWVyX3RleHQgcCB7CiAgZm9udDogNDAwIDIwcHgvMzBweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzI0MjQyNDsKfQoKLmNhcmVlcl90ZXh0IC5jX2l0YWxpYyB7CiAgZm9udC1zaXplOiAyMnB4OwogIGxpbmUtaGVpZ2h0OiAzMnB4OwogIGNvbG9yOiAjMDhhZThkOwogIGZvbnQtZmFtaWx5OiAiTG9yYSIsIHNlcmlmOwogIGZvbnQtc3R5bGU6IGl0YWxpYzsKICBwYWRkaW5nLXRvcDogMzBweDsKfQoKLmJlbmVmaXRfdGV4dCB1TCBsaSB7CiAgZm9udDogNDAwIDE4cHgvMzdweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzI0MjQyNDsKICBwYWRkaW5nLWxlZnQ6IDI1cHg7CiAgcG9zaXRpb246IHJlbGF0aXZlOwp9CgouYmVuZWZpdF90ZXh0IHVMIGxpIGkgewogIGZvbnQtc2l6ZTogMTZweDsKICBsaW5lLWhlaWdodDogMzZweDsKICBjb2xvcjogIzA4YWU4ZDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgbGVmdDogMDsKfQoKLmhhY2tlcl90ZXh0IHAgewogIGZvbnQ6IDQwMCAyMHB4LzMwcHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7Cn0KCi5oYWNrZXJfdGV4dCBwIGEgewogIGNvbG9yOiAjMDhhZThkOwogIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwp9CgouaGlyZV9hcmVhIHsKICBiYWNrZ3JvdW5kOiAjZjZmNmY2OwogIHBhZGRpbmc6IDkycHggMHB4Owp9CgouaGlyZV9jb250ZW50IGgyIHsKICBmb250OiA2MDAgMjJweC8zMHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzI0MjQyNDsKfQoKLmhpcmVfY29udGVudCBwIHsKICBmb250OiA0MDAgMTZweC8yNnB4ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjMjQyNDI0OwogIHBhZGRpbmctdG9wOiAyOHB4Owp9CgovKj09PT09PT09PSBicm9rZXJfYXJlYSBjc3MgPT09PT09PT09Ki8KLmJyb2tlcl9hcmVhIHsKICBiYWNrZ3JvdW5kOiAjZjZmNmY2OwogIHBhZGRpbmc6IDEwMHB4IDBweDsKfQoKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qPT09PT09PT09PT09PSBjdXJyZW5jeV9wcmljZV9hcmVhIGNzcyA9PT09PT09PT09PT09PT0qLwouY3VycmVuY3lfcHJpY2VfYXJlYSB7CiAgYmFja2dyb3VuZDogI2YzZjNmMzsKICBwYWRkaW5nOiAxMDBweCAwcHg7Cn0KCi53X2JnIHsKICBiYWNrZ3JvdW5kOiAjZmZmOwp9CgouY3J5cHRvLXByaWNlcy1pdGVtIC5jb2lubWFya2V0Y2FwLWN1cnJlbmN5LXdpZGdldCB7CiAgbWF4LXdpZHRoOiAxMDAlOwp9CgouY3J5cHRvLXByaWNlcy1pdGVtIC5jb2lubWFya2V0Y2FwLWN1cnJlbmN5LXdpZGdldCA+IGRpdiB7CiAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7CiAgYm9yZGVyLXJhZGl1czogMHB4OwogIGJvcmRlcjogMS4zcHggc29saWQgI2U4ZThlOCAhaW1wb3J0YW50OwogIGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50OwogIHBhZGRpbmc6IDE1cHggMHB4IDBweDsKICBib3JkZXItYm90dG9tOiAwcHggIWltcG9ydGFudDsKfQoKLmNyeXB0by1wcmljZXMtaXRlbSAuY29pbm1hcmtldGNhcC1jdXJyZW5jeS13aWRnZXQgPiBkaXYgPiBkaXY6bGFzdC1jaGlsZCB7CiAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7Cn0KCi5jcnlwdG8tcHJpY2VzLWl0ZW0gLmNvaW5tYXJrZXRjYXAtY3VycmVuY3ktd2lkZ2V0IGRpdiBzcGFuIGEgewogIGNvbG9yOiAjMjQyNDI0ICFpbXBvcnRhbnQ7Cn0KCi5jcnlwdG8tcHJpY2VzLWl0ZW0gLmNvaW5tYXJrZXRjYXAtY3VycmVuY3ktd2lkZ2V0IGRpdiBzcGFuID4gc3BhbiB7CiAgZGlzcGxheTogbm9uZTsKfQoKLmNyeXB0by1wcmljZXMtaXRlbSAuY29pbm1hcmtldGNhcC1jdXJyZW5jeS13aWRnZXQgZGl2IGltZyB7CiAgbWF4LXdpZHRoOiAxMDAlOwogIHdpZHRoOiAzNXB4Owp9CgouY3J5cHRvLXByaWNlcy1pdGVtIC5jb2lubWFya2V0Y2FwLWN1cnJlbmN5LXdpZGdldCBkaXYgZGl2Omxhc3Qtb2YtdHlwZSBhIHsKICBkaXNwbGF5OiBub25lOwp9CgoucHJpY2VfdGFibGUgewogIG1hcmdpbi1ib3R0b206IDBweDsKICBtYXJnaW4tdG9wOiA1MHB4OwogIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlOGU4ZTg7Cn0KCi5wcmljZV90YWJsZSB0aGVhZCB0ciB0aCB7CiAgYm9yZGVyOiAwcHg7CiAgYmFja2dyb3VuZDogIzNhM2JmMzsKICBwYWRkaW5nOiA3cHggMzBweDsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICBjb2xvcjogI2ZmZjsKfQoKLnByaWNlX3RhYmxlIHRib2R5IHRyIHRkIHsKICBwYWRkaW5nOiA3cHggMzBweDsKICBib3JkZXItdG9wOiAxcHggc29saWQgI2U4ZThlODsKICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U4ZThlODsKICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlOGU4ZTg7CiAgZm9udDogNTAwIDE2cHgvMjVweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMzYTNhM2E7CiAgdGV4dC1hbGlnbjogY2VudGVyOwp9CgoucHJpY2VfdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKG9kZCkgewogIGJhY2tncm91bmQ6ICNmN2Y3Zjc7Cn0KCi8qPT09PT09PT09PT09IGludmVzdF9hcmVhIGNzcyA9PT09PT09PT09PT09PT0qLwouaW52ZXN0X2FyZWEgewogIGJhY2tncm91bmQ6ICMyMjIyMjI7CiAgcGFkZGluZzogMTAwcHggMHB4Owp9CgouaW52ZXN0X2FyZWEgLmludmVzdG9yIHsKICBtYXJnaW4tcmlnaHQ6IDEwMHB4Owp9CgouaW52ZXN0X2FyZWEgLm1lZGlhLWJvZHkgewogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNGU0ZTRlOwp9CgouaW52ZXN0X2FyZWEgLm1lZGlhLWJvZHkgcCB7CiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsKICBwYWRkaW5nOiAxNXB4IDBweCAyMHB4Owp9CgouaW52ZXN0X2FyZWEgLm1lZGlhLWJvZHkgLnRoZW1lX2J0bl90d28gewogIG1hcmdpbi1ib3R0b206IDYwcHg7CiAgYmFja2dyb3VuZDogIzM3YWI3NTsKICBwYWRkaW5nOiAwcHggMzhweDsKfQoKLmludmVzdF9hcmVhIC5pbmZvX3RleHQgewogIHBhZGRpbmctcmlnaHQ6IDgwcHg7Cn0KCi5pbnZlc3RfYXJlYSAuY29udGFjdF9pbmZvIGEgewogIGZvbnQ6IDYwMCAyNnB4LzU0cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjZmZmOwp9CgouaW52ZXN0X2FyZWEgLmNvbnRhY3RfaW5mbyBhIGkgewogIGNvbG9yOiAjZWFjYzI4OwogIHBhZGRpbmctcmlnaHQ6IDI1cHg7Cn0KCi5pbnZlc3RfYXJlYSAuY29udGFjdF9pbmZvIGEgaTpiZWZvcmUgewogIGZvbnQtc2l6ZTogMzBweDsKfQoKLmludmVzdF9hcmVhIC5jb250YWN0X2luZm8gYSArIGEgewogIGZvbnQtd2VpZ2h0OiA1MDA7CiAgZm9udC1zaXplOiAyMnB4OwogIG1hcmdpbi1sZWZ0OiAyNnB4Owp9CgovKj09PT09PT09PT09PSBiaXhjb2luX2RldGFpbHNfYXJlYSBjc3MgPT09PT09PT09PSovCi5iaXhjb2luX2RldGFpbHNfYXJlYSB7CiAgYmFja2dyb3VuZDogI2Y2ZjZmNjsKICBwYWRkaW5nOiAxMDBweCAwcHg7Cn0KCi5jaG9vc2VfZm9ybSB7CiAgbWF4LXdpZHRoOiA2NDBweDsKICBtYXJnaW46IDUwcHggYXV0byAwcHg7Cn0KCi5jaG9vc2VfZm9ybSAuaW5wdXQtZm9ybSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIGZvbnQ6IDQwMCAxOHB4LzI2cHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7Cn0KCi5jaG9vc2VfZm9ybSAuaW5wdXQtZm9ybSArIC5pbnB1dC1mb3JtIHsKICBtYXJnaW4tbGVmdDogNTBweDsKfQoKLmNob29zZV9mIHsKICBib3JkZXItcmFkaXVzOiAwcHg7CiAgYm9yZGVyLWNvbG9yOiAjZTZlNmU2OwogIG1hcmdpbi1sZWZ0OiAxOHB4Owp9CgouZmlyc3RfaW5wdXQgewogIHdpZHRoOiAxMTZweDsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cn0KCi5zZWNvbmRfaW5wdXQgewogIHdpZHRoOiAyMjVweDsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cn0KCi5iaXhjb2luX3RhYmxlIHsKICBtYXJnaW4tYm90dG9tOiAwcHg7CiAgbWFyZ2luLXRvcDogNjBweDsKfQoKLmJpeGNvaW5fdGFibGUgdGhlYWQgdHIgdGggewogIGZvbnQ6IDQwMCAxOHB4LzI2cHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICBib3JkZXItc3R5bGU6IHNvbGlkOwogIGJvcmRlci13aWR0aDogMXB4OwogIGJvcmRlci1jb2xvcjogI2Q5ZDlkOTsKICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsKICBwYWRkaW5nOiAyMHB4IDBweCAyMHB4IDM1cHg7Cn0KCi5iaXhjb2luX3RhYmxlIHRib2R5IHRyIHRkLCAuYml4Y29pbl90YWJsZSB0Ym9keSB0ciB0aCB7CiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICBib3JkZXItd2lkdGg6IDFweDsKICBib3JkZXItY29sb3I6ICNkOWQ5ZDk7CiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICBwYWRkaW5nLWxlZnQ6IDM1cHg7CiAgZm9udC1mYW1pbHk6ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIHBhZGRpbmc6IDE1cHggMzVweDsKfQoKLmJpeGNvaW5fdGFibGUgdGJvZHkgdHIgdGQgaDUsIC5iaXhjb2luX3RhYmxlIHRib2R5IHRyIHRoIGg1IHsKICBmb250LXNpemU6IDM1cHg7CiAgbGluZS1oZWlnaHQ6IDM1cHg7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBjb2xvcjogIzI0MjQyNDsKICBtYXJnaW4tYm90dG9tOiAwcHg7Cn0KCi5iaXhjb2luX3RhYmxlIHRib2R5IHRyIHRkIHAsIC5iaXhjb2luX3RhYmxlIHRib2R5IHRyIHRoIHAgewogIGZvbnQtc2l6ZTogMTNweDsKICBsaW5lLWhlaWdodDogMjZweDsKICBjb2xvcjogIzk4OTg5ODsKICBtYXJnaW4tYm90dG9tOiAwcHg7Cn0KCi5iaXhjb2luX3RhYmxlIHRib2R5IHRyIHRkIGg2LCAuYml4Y29pbl90YWJsZSB0Ym9keSB0ciB0aCBoNiB7CiAgZm9udC1zaXplOiAxOHB4OwogIGxpbmUtaGVpZ2h0OiAyNnB4OwogIGNvbG9yOiAjMjQyNDI0OwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgbWFyZ2luLWJvdHRvbTogMHB4Owp9CgouYml4Y29pbl90YWJsZSB0Ym9keSB0ciB0ZCAucmVhZF9idG4sIC5iaXhjb2luX3RhYmxlIHRib2R5IHRyIHRoIC5yZWFkX2J0biB7CiAgYmFja2dyb3VuZDogIzFmMjg2ODsKICBsaW5lLWhlaWdodDogNTBweDsKfQoKLyogTWFya2V0X2FuYWx5dGljZXNfYXJlYSBjc3MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLm1hcmtldF9hbmFseXRpY2VzX2FyZWEgewogIHBhZGRpbmc6IDEwMHB4IDBweDsKfQoKLnRhYmxlLXByaWNlIHsKICBtYXJnaW4tYm90dG9tOiAwcHg7Cn0KCi50YWJsZS1wcmljZSB0aGVhZCB0ciB0aCB7CiAgYm9yZGVyOiAwcHg7CiAgZm9udDogNjAwIDE4cHgvNDBweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7CiAgcGFkZGluZzogMTBweCAzMHB4Owp9CgoudGFibGUtcHJpY2UgdGJvZHkgdHIgdGQsIC50YWJsZS1wcmljZSB0Ym9keSB0ciB0aCB7CiAgcGFkZGluZzogMTBweCAzMHB4OwogIGZvbnQ6IDQwMCAxNnB4LzQwcHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICMyNDI0MjQ7CiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkNmQ2ZDY7Cn0KCi50YWJsZS1wcmljZSB0Ym9keSB0cjpob3ZlciB7CiAgYmFja2dyb3VuZDogIzA4YWU4ZDsKfQoKLnRhYmxlLXByaWNlIHRib2R5IHRyOmhvdmVyIHRkLCAudGFibGUtcHJpY2UgdGJvZHkgdHI6aG92ZXIgdGggewogIGNvbG9yOiAjZmZmOwp9CgoudGFibGUtcHJpY2UgLnByaWNlLWljb24gewogIG1heC13aWR0aDogMTAwJTsKICBtYXJnaW4tcmlnaHQ6IDIwcHg7Cn0KCi8qPT09PT09PT09PT1iaXRjb2luX2N1cnJlbmN5X3dpZGdldCBjc3MgPT09PT09PT09PSovCi5iaXRjb2luX2N1cnJlbmN5X3dpZGdldCB7CiAgcG9zaXRpb246IGZpeGVkOwogIHotaW5kZXg6IDEwMDsKICB3aWR0aDogMTAwJTsKICBib3R0b206IDA7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICBiYWNrZ3JvdW5kOiAjZjVmNWY3OwogIGhlaWdodDogNDJweDsKfQoKLmJpdGNvaW5fY3VycmVuY3lfd2lkZ2V0IHVsIHsKICBsaXN0LXN0eWxlOiBub25lOwp9CgouYml0Y29pbl9jdXJyZW5jeV93aWRnZXQgdWwgbGkgewogIHBhZGRpbmc6IDVweCAhaW1wb3J0YW50OwogIGZsb2F0OiBsZWZ0Owp9CgouYml0Y29pbl9jdXJyZW5jeV93aWRnZXQgdWwgbGkgLmNjcHdfaWNvbiB7CiAgcGFkZGluZy1yaWdodDogMTBweDsKfQoKLmJpdGNvaW5fY3VycmVuY3lfd2lkZ2V0IHVsIGxpIC5uYW1lIHsKICBmb250LXNpemU6IDE1cHg7CiAgZm9udC13ZWlnaHQ6IDYwMDsKICBjb2xvcjogIzAwMDsKICBmb250LWZhbWlseTogIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwp9CgouYml0Y29pbl9jdXJyZW5jeV93aWRnZXQgdWwgbGkgLnByaWNlIHsKICBmb250LXNpemU6IDE0cHg7CiAgY29sb3I6ICMwMDA7CiAgZm9udC1mYW1pbHk6ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBmb250LXdlaWdodDogNjAwOwp9CgouYml0Y29pbl9jdXJyZW5jeV93aWRnZXQgdWwgbGkgLmNoYW5nZXMgewogIGZvbnQtc2l6ZTogMTNweDsKICBjb2xvcjogI2Y0MDA0ZDsKfQoKLmJpdGNvaW5fY3VycmVuY3lfd2lkZ2V0IHVsIGxpIC5jaGFuZ2VzIGkgewogIGZvbnQtc2l6ZTogMTJweDsKICBjb2xvcjogIzAwMDsKICBwYWRkaW5nLXJpZ2h0OiA1cHg7CiAgcGFkZGluZy1sZWZ0OiAxMHB4Owp9CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLypjb250YWN0X2FyZWEgY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLmNvbnRhY3RfYXJlYSB7CiAgcGFkZGluZzogOTBweCAwcHg7Cn0KCi5jb250YWN0X2FyZWEgLnNlY3Rpb25fdGl0bGU6YmVmb3JlIHsKICBsZWZ0OiAwOwogIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwp9CgouY29udGFjdF91c19pbm5lciAuY29udGFjdF91c19mb3JtIC5mb3JtLWdyb3VwIHsKICBtYXJnaW4tYm90dG9tOiAyMHB4Owp9CgouY29udGFjdF91c19pbm5lciAuY29udGFjdF91c19mb3JtIC5mb3JtLWdyb3VwOmxhc3QtY2hpbGQgewogIG1hcmdpbi1ib3R0b206IDBweDsKfQoKLmNvbnRhY3RfdXNfaW5uZXIgLmNvbnRhY3RfdXNfZm9ybSAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sIHsKICBoZWlnaHQ6IDUwcHg7CiAgYm9yZGVyOiAxcHggc29saWQgI2Q0ZDRkNDsKICBmb250OiA0MDAgMTZweC8yOHB4ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjNzk3OTc5OwogIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICBib3gtc2hhZG93OiBub25lOwogIHBhZGRpbmctbGVmdDogMjVweDsKICBib3JkZXItcmFkaXVzOiAzcHg7Cn0KCi5jb250YWN0X3VzX2lubmVyIC5jb250YWN0X3VzX2Zvcm0gLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbC5wbGFjZWhvbGRlciB7CiAgY29sb3I6ICM3OTc5Nzk7Cn0KCi5jb250YWN0X3VzX2lubmVyIC5jb250YWN0X3VzX2Zvcm0gLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbDotbW96LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzc5Nzk3OTsKfQoKLmNvbnRhY3RfdXNfaW5uZXIgLmNvbnRhY3RfdXNfZm9ybSAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzc5Nzk3OTsKfQoKLmNvbnRhY3RfdXNfaW5uZXIgLmNvbnRhY3RfdXNfZm9ybSAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzc5Nzk3OTsKfQoKLmNvbnRhY3RfdXNfaW5uZXIgLmNvbnRhY3RfdXNfZm9ybSAuZm9ybS1ncm91cCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wgewogIGhlaWdodDogMTk4cHg7CiAgcmVzaXplOiBub25lOwp9CgouY29udGFjdF91c19pbm5lciAuY29udGFjdF91c19mb3JtIC5mb3JtLWdyb3VwIC5uaWNlLXNlbGVjdCB7CiAgd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiA1MHB4OwogIGZvbnQ6IDQwMCAxNnB4LzUwcHggIk9wZW4gU2FucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICM3OTc5Nzk7Cn0KCi5jb250YWN0X3VzX2lubmVyIC5jb250YWN0X3VzX2Zvcm0gLmZvcm0tZ3JvdXAgLm5pY2Utc2VsZWN0OmFmdGVyIHsKICB3aWR0aDogMDsKICBoZWlnaHQ6IDA7CiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICBib3JkZXItd2lkdGg6IDdweCA2cHggMCA2cHg7CiAgYm9yZGVyLWNvbG9yOiAjYTFhMWExIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OwogIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7CiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOwogIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOwp9CgouY29udGFjdF91c19pbm5lciAuY29udGFjdF91c19mb3JtIC5mb3JtLWdyb3VwIC5uaWNlLXNlbGVjdC5vcGVuLCAuY29udGFjdF91c19pbm5lciAuY29udGFjdF91c19mb3JtIC5mb3JtLWdyb3VwIC5uaWNlLXNlbGVjdDpmb2N1cyB7CiAgYm9yZGVyLWNvbG9yOiAjZDRkNGQ0Owp9CgouY29udGFjdF91c19pbm5lciAuY29udGFjdF91c19mb3JtIC5mb3JtLWdyb3VwIC5uaWNlLXNlbGVjdCAubGlzdCB7CiAgd2lkdGg6IDEwMCU7Cn0KCi5jb250YWN0X3VzX2lubmVyIC5jb250YWN0X3VzX2Zvcm0gLmZvcm0tZ3JvdXAgLm5pY2Utc2VsZWN0IC5vcHRpb246aG92ZXIsIC5jb250YWN0X3VzX2lubmVyIC5jb250YWN0X3VzX2Zvcm0gLmZvcm0tZ3JvdXAgLm5pY2Utc2VsZWN0IC5vcHRpb246Zm9jdXMgewogIGJhY2tncm91bmQ6ICMwOGFlOGQgIWltcG9ydGFudDsKICBjb2xvcjogI2ZmZjsKfQoKLmNvbnRhY3RfdXNfaW5uZXIgLmNvbnRhY3RfdXNfZm9ybSAuZm9ybS1ncm91cCAubmljZS1zZWxlY3QgLm9wdGlvbi5zZWxlY3RlZC5mb2N1cyB7CiAgYmFja2dyb3VuZC1jb2xvcjogIzA4YWU4ZCAhaW1wb3J0YW50OwogIGNvbG9yOiAjZmZmOwp9CgouY29udGFjdF91c19pbm5lciAuY29udGFjdF91c19mb3JtIC5mb3JtLWdyb3VwIC5zdWJtaXRfYnRuIHsKICBtYXJnaW4tdG9wOiAyMHB4OwogIGJhY2tncm91bmQ6ICMzN2FiNzU7Cn0KCi5jb250YWN0X2FkZHJlc3MgLmNfYWRkcmVzc19pdGVtIHsKICBmb250LWZhbWlseTogIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwp9CgouY29udGFjdF9hZGRyZXNzIC5jX2FkZHJlc3NfaXRlbSBoNSB7CiAgZm9udDogNTAwIDE1cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjNzk3OTc5OwogIHBhZGRpbmctYm90dG9tOiAyMHB4OwogIG1hcmdpbjogMHB4Owp9CgouY29udGFjdF9hZGRyZXNzIC5jX2FkZHJlc3NfaXRlbSBwIHsKICBmb250LXNpemU6IDIwcHg7CiAgbGluZS1oZWlnaHQ6IDI3cHg7CiAgY29sb3I6ICMyNDI0MjQ7Cn0KCi5jb250YWN0X2FkZHJlc3MgLmNfYWRkcmVzc19pdGVtIGEgewogIGRpc3BsYXk6IGJsb2NrOwogIGZvbnQtc2l6ZTogMjJweDsKICBsaW5lLWhlaWdodDogMzJweDsKICBjb2xvcjogIzI0MjQyNDsKfQoKLmNvbnRhY3RfYWRkcmVzcyAuY19hZGRyZXNzX2l0ZW0gYTpob3ZlciB7CiAgY29sb3I6ICMwOGFlOGQ7Cn0KCi5jb250YWN0X2FkZHJlc3MgLmNfYWRkcmVzc19pdGVtICsgLmNfYWRkcmVzc19pdGVtIHsKICBtYXJnaW4tdG9wOiA1N3B4Owp9CgovKiBtYXAgY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLm1hcF9hcmVhIC5tYXBCb3ggewogIGhlaWdodDogNTE1cHg7Cn0KCi8qPT09PT09PT09PWNvbnRhY3QgYXJlYSB0d28gY3NzPT09PT09PT09PT09Ki8KLmNvbnRhY3RfYXJlYV90d28gewogIGJhY2tncm91bmQ6ICMyMjM4OGI7CiAgcGFkZGluZzogMTAwcHggMHB4Owp9CgouY29udGFjdF9hcmVhX3R3byAuZ2V0X2luZm8gLnNlY3Rpb25fdGl0bGUgaDIgewogIGNvbG9yOiAjZmZmOwp9CgouY29udGFjdF9hcmVhX3R3byAuZ2V0X2luZm8gLmdldF9pdGVtIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgbWFyZ2luLWJvdHRvbTogMzVweDsKfQoKLmNvbnRhY3RfYXJlYV90d28gLmdldF9pbmZvIC5nZXRfaXRlbSBpIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7Cn0KCi5jb250YWN0X2FyZWFfdHdvIC5nZXRfaW5mbyAuZ2V0X2l0ZW0gaTpiZWZvcmUgewogIGZvbnQtc2l6ZTogNTBweDsKICBsaW5lLWhlaWdodDogNTVweDsKICBjb2xvcjogIzA4YWU4ZDsKfQoKLmNvbnRhY3RfYXJlYV90d28gLmdldF9pbmZvIC5nZXRfaXRlbSBoMyB7CiAgZm9udDogNDAwIDE2cHgvMjZweCAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogI2ZmZjsKICBwYWRkaW5nLWxlZnQ6IDgycHg7Cn0KCi5jb250YWN0X2FyZWFfdHdvIC5nZXRfaW5mbyAuZ2V0X2l0ZW0gaDMgYSB7CiAgY29sb3I6ICNmZmY7Cn0KCi5jb250YWN0X2FyZWFfdHdvICNtYXBCb3ggewogIGhlaWdodDogNDI1cHg7Cn0KCi8qPT09PT09PT09PSBnZXRfc3Vic2NyaWJlX2FyZWEgY3NzID09PT09PT09PT09PSovCi5nZXRfc3Vic2NyaWJlX2FyZWEgewogIGJhY2tncm91bmQ6ICMxZTk3ZTQ7CiAgcGFkZGluZy10b3A6IDU1cHg7Cn0KCi5ib29rX2ltZyB7CiAgbWFyZ2luLWxlZnQ6IC0yMDBweDsKfQoKLnRpdGxlX3MgewogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgZm9udC1zaXplOiAzNXB4OwogIGxpbmUtaGVpZ2h0OiA1MHB4OwogIGNvbG9yOiAjZmZmOwp9CgoudGl0bGVfcyBzcGFuIHsKICBjb2xvcjogIzJiMmIyZDsKfQoKLnN1YnNjcmliZV9jb250ZW50IHsKICBwYWRkaW5nLXRvcDogNDhweDsKfQoKLnN1YnNjcmliZV9jb250ZW50IGgzIHsKICBmb250OiA0MDAgMjBweCAiTG9yYSIsIHNlcmlmOwogIGZvbnQtc3R5bGU6IGl0YWxpYzsKICBjb2xvcjogIzAwMDAwMDsKICBwYWRkaW5nLWJvdHRvbTogNXB4Owp9Cgouc3Vic2NyaWJlX2NvbnRlbnQgcCB7CiAgcGFkZGluZzogMTRweCAwcHggMzBweDsKfQoKLmdldF9zdWJzY3JpYl9mb3JtIC5mb3JtLWNvbnRyb2wgewogIGZvbnQ6IDUwMCAxNnB4LzYwcHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjYWJhYmFiOwogIGJvcmRlcjogMHB4OwogIGJvcmRlci1yYWRpdXM6IDNweDsKICBiYWNrZ3JvdW5kOiAjZmZmOwogIHBhZGRpbmc6IDBweCAzMHB4Owp9CgouZ2V0X3N1YnNjcmliX2Zvcm0gLmZvcm0tY29udHJvbC5wbGFjZWhvbGRlciB7CiAgY29sb3I6ICNhYmFiYWI7Cn0KCi5nZXRfc3Vic2NyaWJfZm9ybSAuZm9ybS1jb250cm9sOi1tb3otcGxhY2Vob2xkZXIgewogIGNvbG9yOiAjYWJhYmFiOwp9CgouZ2V0X3N1YnNjcmliX2Zvcm0gLmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7CiAgY29sb3I6ICNhYmFiYWI7Cn0KCi5nZXRfc3Vic2NyaWJfZm9ybSAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogI2FiYWJhYjsKfQoKLmdldF9zdWJzY3JpYl9mb3JtIC5zdWJtaXRfYnRuX2IgewogIGJhY2tncm91bmQ6ICMyMjI7CiAgcGFkZGluZzogMHB4IDM0cHg7CiAgZm9udDogNTAwIDE2cHgvNjBweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICNmZmY7CiAgYm9yZGVyLXJhZGl1czogM3B4OwogIGJvcmRlcjogMHB4OwogIG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7CiAgY3Vyc29yOiBwb2ludGVyOwp9CgouZ2V0X3N1YnNjcmliX2Zvcm0gLnN1Ym1pdF9idG5fYjpmb2N1cywgLmdldF9zdWJzY3JpYl9mb3JtIC5zdWJtaXRfYnRuX2I6aG92ZXIgewogIGJhY2tncm91bmQ6ICMwOGFlOGQ7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lOwogIGJveC1zaGFkb3c6IG5vbmU7Cn0KCi8qPT09PT09PT09PT09PT09PT0gcXVlc3Rpb25fYXJlYSBjc3MgPT09PT09PT09PT09PT09PT0qLwoucXVlc3Rpb25fYXJlYSB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHotaW5kZXg6IDE7CiAgYmFja2dyb3VuZDogI2Y4ZjhmODsKICBwYWRkaW5nOiAxMDBweCAwcHg7Cn0KCi5mYXFfYmdfcmlnaHQgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICByaWdodDogMDsKICBvcGFjaXR5OiAwLjUwOwogIHRvcDogMDsKICBoZWlnaHQ6IDEwMCU7Cn0KCi5xdWVzdGlvbl9mb3JtIC5mb3JtLWdyb3VwIHsKICBtYXJnaW4tYm90dG9tOiAyNXB4Owp9CgoucXVlc3Rpb25fZm9ybSAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sIHsKICBmb250LXNpemU6IDE2cHg7CiAgYm9yZGVyLXJhZGl1czogMHB4OwogIHBhZGRpbmc6IDIwcHggMHB4OwogIGJvcmRlcjogMHB4OwogIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTNlM2UzOwogIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICBib3gtc2hhZG93OiBub25lOwogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogIGNvbG9yOiAjNzA3MDczOwp9CgoucXVlc3Rpb25fZm9ybSAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sLnBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzcwNzA3MzsKfQoKLnF1ZXN0aW9uX2Zvcm0gLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbDotbW96LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzcwNzA3MzsKfQoKLnF1ZXN0aW9uX2Zvcm0gLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7CiAgY29sb3I6ICM3MDcwNzM7Cn0KCi5xdWVzdGlvbl9mb3JtIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgewogIGNvbG9yOiAjNzA3MDczOwp9CgoucXVlc3Rpb25fZm9ybSAuZm9ybS1ncm91cCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wgewogIG1pbi1oZWlnaHQ6IDE3NXB4OwogIHJlc2l6ZTogbm9uZTsKfQoKLnF1ZXN0aW9uX2Zvcm0gLmZvcm0tZ3JvdXA6bGFzdC1jaGlsZCB7CiAgbWFyZ2luLWJvdHRvbTogMHB4Owp9CgoucXVlc3Rpb25fZm9ybSAuc3VibWl0X2J0biB7CiAgbGluZS1oZWlnaHQ6IDQ4cHg7CiAgbWFyZ2luLXRvcDogMTVweDsKfQoKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qPT09PT09PT09PT09PT09PT09IGNvbW1pbmdzb29uX3NlY3Rpb24gY3NzID09PT09PT09PT09PT09PT09PT09Ki8KLmNvbW1pbmdzb29uX3NlY3Rpb24gewogIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgwLCAwLCAwLCAwLjc4KSksIHRvKHJnYmEoMCwgMCwgMCwgMC43OCkpKSwgdXJsKCIuLi9pbWFnZS9jb21taW5nX3Nvb25fYmcuanBnIikgbm8tcmVwZWF0IHNjcm9sbDsKICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyZ2JhKDAsIDAsIDAsIDAuNzgpIDEwMCUsIHJnYmEoMCwgMCwgMCwgMC43OCkgMTAwJSksIHVybCgiLi4vaW1hZ2UvY29tbWluZ19zb29uX2JnLmpwZyIpIG5vLXJlcGVhdCBzY3JvbGw7CiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHJnYmEoMCwgMCwgMCwgMC43OCkgMTAwJSwgcmdiYSgwLCAwLCAwLCAwLjc4KSAxMDAlKSwgdXJsKCIuLi9pbWFnZS9jb21taW5nX3Nvb25fYmcuanBnIikgbm8tcmVwZWF0IHNjcm9sbDsKICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAwLjc4KSAxMDAlLCByZ2JhKDAsIDAsIDAsIDAuNzgpIDEwMCUpLCB1cmwoIi4uL2ltYWdlL2NvbW1pbmdfc29vbl9iZy5qcGciKSBuby1yZXBlYXQgc2Nyb2xsOwogIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAxMDAlOwogIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgbWluLWhlaWdodDogMTAwdmg7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIGNvbG9yOiAjZmZmOwp9CgouY29tbWluZ3Nvb25fc2VjdGlvbiBoMiB7CiAgZm9udDogNzAwIDcwcHgvNzVweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7Cn0KCi5jb21taW5nc29vbl9zZWN0aW9uIGgyIHNwYW4gewogIGZvbnQtd2VpZ2h0OiA0MDA7Cn0KCi5jb21taW5nc29vbl9zZWN0aW9uIHAgewogIGZvbnQ6IDUwMCAyNnB4LzQwcHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIHBhZGRpbmctYm90dG9tOiAzNXB4Owp9CgouY29tbWluZ3Nvb25fc2VjdGlvbiAudGltZXIgewogIG1hcmdpbi10b3A6IDEwMHB4OwogIG1hcmdpbi1ib3R0b206IDYwcHg7CiAgbWF4LXdpZHRoOiA4MDBweDsKfQoKLmNvbW1pbmdzb29uX3NlY3Rpb24gLnRpbWVyX19zZWN0aW9uIHsKICB3aWR0aDogMTcwcHg7CiAgaGVpZ2h0OiAxNzBweDsKICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NCwgMjU0LCAyNTQsIDAuMTgpOwogIGJvcmRlci1yYWRpdXM6IDUwJTsKICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDkpOwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBmb250LWZhbWlseTogIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgbGluZS1oZWlnaHQ6IDE3MHB4OwogIGRpc3BsYXk6IC13ZWJraXQtYm94OwogIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogIGRpc3BsYXk6IGZsZXg7CiAgLW1zLWZsZXgtd3JhcDogd3JhcDsKICBmbGV4LXdyYXA6IHdyYXA7CiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKICAtbXMtZmxleC1hbGlnbjogY2VudGVyOwogIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KCi5jb21taW5nc29vbl9zZWN0aW9uIC50aW1lcl9fc2VjdGlvbiAudGltZXJfdGV4dCB7CiAgd2lkdGg6IDEwMCU7Cn0KCi5jb21taW5nc29vbl9zZWN0aW9uIC50aW1lcl9fc2VjdGlvbiAudGltZXJfX251bWJlciB7CiAgZm9udC1zaXplOiA2MnB4OwogIGxpbmUtaGVpZ2h0OiA2MHB4Owp9CgouY29tbWluZ3Nvb25fc2VjdGlvbiAudGltZXJfX3NlY3Rpb24gLnRpbWVyX19sYWJlbCB7CiAgZm9udC1zaXplOiAyMHB4OwogIGxpbmUtaGVpZ2h0OiAyNXB4OwogIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgcGFkZGluZy10b3A6IDE1cHg7Cn0KCi5jb21taW5nc29vbl9zZWN0aW9uIC5zdWJzY3JpYl9mb3JtIHsKICBtYXgtd2lkdGg6IDc3MHB4OwogIG1hcmdpbjogMCBhdXRvOwp9CgouY29tbWluZ3Nvb25fc2VjdGlvbiAuc3Vic2NyaWJfZm9ybSAuZm9ybS1jb250cm9sIHsKICBmb250OiA0MDAgMTdweC8zMHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzc5Nzk3OTsKICBoZWlnaHQ6IDc2cHg7CiAgcGFkZGluZzogMHB4IDM1cHg7CiAgYm9yZGVyLXJhZGl1czogMHB4OwogIGJvcmRlcjogMHB4OwogIHdpZHRoOiAxMDAlOwp9CgouY29tbWluZ3Nvb25fc2VjdGlvbiAuc3Vic2NyaWJfZm9ybSAuZm9ybS1jb250cm9sLnBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzc5Nzk3OTsKfQoKLmNvbW1pbmdzb29uX3NlY3Rpb24gLnN1YnNjcmliX2Zvcm0gLmZvcm0tY29udHJvbDotbW96LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzc5Nzk3OTsKfQoKLmNvbW1pbmdzb29uX3NlY3Rpb24gLnN1YnNjcmliX2Zvcm0gLmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7CiAgY29sb3I6ICM3OTc5Nzk7Cn0KCi5jb21taW5nc29vbl9zZWN0aW9uIC5zdWJzY3JpYl9mb3JtIC5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgewogIGNvbG9yOiAjNzk3OTc5Owp9CgouY29tbWluZ3Nvb25fc2VjdGlvbiAuc3Vic2NyaWJfZm9ybSAuZm9ybS1jb250cm9sOmZvY3VzIHsKICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7CiAgYm94LXNoYWRvdzogbm9uZTsKICBvdXRsaW5lOiBub25lOwp9CgouY29tbWluZ3Nvb25fc2VjdGlvbiAuc3Vic2NyaWJfZm9ybSAuc3VibWl0X2J0bl9iIHsKICBmb250OiA2MDAgMjJweC83NnB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogI2ZmZjsKICBwYWRkaW5nOiAwcHggMzBweDsKICBib3JkZXItcmFkaXVzOiAwcHg7CiAgbWFyZ2luOiAwcHggIWltcG9ydGFudDsKICBiYWNrZ3JvdW5kOiAjMzdhYjc1OwogIGN1cnNvcjogcG9pbnRlcjsKICBib3JkZXI6IDBweDsKfQoKLmNvbW1pbmdzb29uX3NlY3Rpb24gLnN1YnNjcmliX2Zvcm0gLnN1Ym1pdF9idG5fYjpob3ZlciB7CiAgYmFja2dyb3VuZDogIzA4YWU4ZDsKfQoKLmNvbW1pbmdzb29uX3NlY3Rpb24gLnN1YnNjcmliX2Zvcm0gLnN1Ym1pdF9idG5fYjpmb2N1cyB7CiAgb3V0bGluZTogbm9uZTsKfQoKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qIFN0YXJ0IGZvb3Rlcl9hcmVhIGNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLmZvb3Rlcl9hcmVhIHsKICBiYWNrZ3JvdW5kOiAjMTkxOTE5Owp9CgouZm9vdGVyX3dpZGdldCB7CiAgcGFkZGluZzogODBweCAwcHggNjBweDsKfQoKLmZfd2lkZ2V0IC5mX2xvZ28gewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICBtYXJnaW4tYm90dG9tOiA1MHB4Owp9CgouZl93aWRnZXQgLmZfdGl0bGUgewogIGZvbnQ6IDUwMCAyMHB4LzI1cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjZmZmOwogIG1hcmdpbi1ib3R0b206IDI3cHg7Cn0KCi5hYm91dF93aWRnZXQgLndpZGdldF9pbm5lciB7CiAgZm9udDogNDAwIDE0cHgvMjZweCAiUG9wcGlucyIsIHNhbnMtc2VyaWY7CiAgY29sb3I6ICM4YjhiOGI7Cn0KCi5hYm91dF93aWRnZXQgLndpZGdldF9pbm5lciBoNSBhIHsKICBmb250OiA0MDAgMThweC8yMHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzhiOGI4YjsKICBwYWRkaW5nLWJvdHRvbTogMTVweDsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cn0KCi5hYm91dF93aWRnZXQgLndpZGdldF9pbm5lciBhIHsKICBjb2xvcjogIzhiOGI4YjsKfQoKLmxpbmtfd2lkZ2V0IHsKICBwYWRkaW5nLWxlZnQ6IDQwcHg7Cn0KCi5saW5rX3dpZGdldCB1bCBsaSB7CiAgcGFkZGluZy1ib3R0b206IDEwcHg7Cn0KCi5saW5rX3dpZGdldCB1bCBsaSBhIHsKICBmb250OiA0MDAgMTRweC8xOHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBsZXR0ZXItc3BhY2luZzogMC4yOHB4OwogIGNvbG9yOiAjOGI4YjhiOwp9CgoubGlua193aWRnZXQgdWwgbGkgYTpob3ZlciB7CiAgY29sb3I6ICMzN2FiNzU7Cn0KCi5saW5rX3dpZGdldCB1bCBsaTpsYXN0LWNoaWxkIHsKICBwYWRkaW5nLWJvdHRvbTogMHB4Owp9CgoubmV3c193aWRnZXQgaDUgewogIGZvbnQ6IDQwMCAxNHB4LzI0cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjOGI4YjhiOwogIGxldHRlci1zcGFjaW5nOiAwLjI4cHg7CiAgcGFkZGluZy1ib3R0b206IDE4cHg7Cn0KCi5uZXdzX3dpZGdldCAuc3Vic2NyaWJfZm9ybSAuZm9ybS1jb250cm9sIHsKICBmb250OiA0MDAgMTRweC8yNHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsKICBjb2xvcjogIzgzODQ4NjsKICBsZXR0ZXItc3BhY2luZzogMC40MnB4OwogIHBhZGRpbmc6IDBweCAyMnB4OwogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogIGJvcmRlcjogMXB4IHNvbGlkICMzNjM3MzY7CiAgaGVpZ2h0OiA0N3B4OwogIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICBib3gtc2hhZG93OiBub25lOwp9CgoubmV3c193aWRnZXQgLnN1YnNjcmliX2Zvcm0gLmZvcm0tY29udHJvbC5wbGFjZWhvbGRlciB7CiAgY29sb3I6ICM4Mzg0ODY7Cn0KCi5uZXdzX3dpZGdldCAuc3Vic2NyaWJfZm9ybSAuZm9ybS1jb250cm9sOi1tb3otcGxhY2Vob2xkZXIgewogIGNvbG9yOiAjODM4NDg2Owp9CgoubmV3c193aWRnZXQgLnN1YnNjcmliX2Zvcm0gLmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7CiAgY29sb3I6ICM4Mzg0ODY7Cn0KCi5uZXdzX3dpZGdldCAuc3Vic2NyaWJfZm9ybSAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsKICBjb2xvcjogIzgzODQ4NjsKfQoKLm5ld3Nfd2lkZ2V0IC5zdWJzY3JpYl9mb3JtIC5mb3JtLWNvbnRyb2w6aG92ZXIsIC5uZXdzX3dpZGdldCAuc3Vic2NyaWJfZm9ybSAuZm9ybS1jb250cm9sOmZvY3VzIHsKICB6LWluZGV4OiAwOwp9CgoubmV3c193aWRnZXQgLnN1YnNjcmliX2Zvcm0gLnN1Ym1pdF9idG5fYiB7CiAgYmFja2dyb3VuZDogIzM3YWI3NTsKICBjb2xvcjogI2ZmZjsKICBwYWRkaW5nOiAwcHggMTdweDsKICBjdXJzb3I6IHBvaW50ZXI7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lOwogIGJveC1zaGFkb3c6IG5vbmU7Cn0KCi5uZXdzX3dpZGdldCAuc29jaWFsX2ljb24gewogIG1hcmdpbi10b3A6IDMwcHg7Cn0KCi5uZXdzX3dpZGdldCAuc29jaWFsX2ljb24gbGkgYSB7CiAgZm9udC1zaXplOiAxN3B4OwogIGxpbmUtaGVpZ2h0OiAzNXB4OwogIGNvbG9yOiAjODU4NTg1OwogIGJvcmRlcjogMXB4IHNvbGlkICM4NTg1ODU7CiAgYm9yZGVyLXJhZGl1czogNTAlOwogIGhlaWdodDogMzZweDsKICB3aWR0aDogMzZweDsKICBib3JkZXItcmFkaXVzOiA1MCU7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBtYXJnaW4tcmlnaHQ6IDE0cHg7Cn0KCi5uZXdzX3dpZGdldCAuc29jaWFsX2ljb24gbGkgYTpob3ZlciB7CiAgYm9yZGVyLWNvbG9yOiAjMzdhYjc1OwogIGNvbG9yOiAjMzdhYjc1Owp9CgouZm9vdGVyX2NvcHlyaWdodCB7CiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMzNTM1MzU7CiAgcGFkZGluZzogMjRweCAwcHg7Cn0KCi5mb290ZXJfY29weXJpZ2h0IHAgewogIGZvbnQ6IDQwMCAxNHB4LzI2cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOwogIGNvbG9yOiAjOGI4YjhiOwp9CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KCi8qIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlLmNzcy5tYXAgKi8="}},"time_used":14644,"timings":{"blocked":9552,"dns":1,"connect":1330,"send":0,"wait":1238,"receive":1300,"ssl":1223},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/particles/css/revolution.addon.particles.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.096Z","timestamp":1785143908096,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/particles/css/revolution.addon.particles.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:41 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"29c-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 313\r\nKeep-Alive: timeout=5, max=100\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":668,"size_decoded":673,"mime_type":"text/css","magic":"ASCII text, with CRLF line terminators","md5":"9c1da969e35d96e3eb9880665dc28985","sha1":"8f7f88abd99fd3b0a9b14c174077b41b2bd0471b","sha256":"e10d272f6c39582d19b43abcf453fcf60b7d2825935f629d4e49f71e6cc5bf54","sha512":"2d3b9534e5a606f4fc5fdd45284ea6cf21ae4f07d1b529dfedd00d7d4274d3fc1b2dfd7927741a3073a40c046dd1fb0f24590ea60cafad7bfb0df16df1a5bf33","ssdeep":"","tlshash":"6d01490104d7d9711215d6a76ff1f222c7a26ca03c8360c4f8d6894e83527dd54b73ab","first_seen":"2023-04-20T22:23:59Z","last_seen":"2026-07-27T09:20:18.354478Z","times_seen":172,"resource_available":false,"data":"LyogDQogKiBAYXV0aG9yICAgIFRoZW1lUHVuY2ggPGluZm9AdGhlbWVwdW5jaC5jb20+DQogKiBAbGluayAgICAgIGh0dHA6Ly93d3cudGhlbWVwdW5jaC5jb20vDQogKiBAY29weXJpZ2h0IDIwMTcgVGhlbWVQdW5jaA0KKi8NCg0KLnJzLXBhcnRpY2xlcy1jYW52YXMgew0KDQoJcG9zaXRpb246IGFic29sdXRlOw0KCXRvcDogMDsNCglsZWZ0OiAwOw0KCXdpZHRoOiAxMDAlOw0KCWhlaWdodDogMTAwJTsNCglvcGFjaXR5OiAwOw0KCXBvaW50ZXItZXZlbnRzOiBub25lOw0KCXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBsaW5lYXI7CQ0KCS13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7DQogICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTsNCiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7IA0KCXVzZXItc2VsZWN0OiBub25lOw0KDQp9DQoNCi8qIGludGVyYWN0aXZlLCBubyBzbGlkZWxpbmsgKi8NCi5ycy1wYXJ0aWNsZXMtaW50ZXJhY3RpdmUgLnJzLXBhcnRpY2xlcy1jYW52YXMgew0KCQ0KCXBvaW50ZXItZXZlbnRzOiBhdXRvOw0KCQ0KfQ0KDQovKiBpbnRlcmFjdGl2ZSArIHNsaWRlbGluayAqLw0KLnJzLXBhcnRpY2xlcy1zbGlkZWxpbmsgLnJzLXBhcnRpY2xlcy1jYW52YXMgew0KCQ0KCWN1cnNvcjogcG9pbnRlcjsNCglwb2ludGVyLWV2ZW50czogYXV0bzsNCgkNCn0="}},"time_used":13322,"timings":{"blocked":9535,"dns":1,"connect":1336,"send":0,"wait":1225,"receive":0,"ssl":1224},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.parallax.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.303Z","timestamp":1785143908303,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/js/extensions/revolution.extension.parallax.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:44 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"29b7-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 3152\r\nKeep-Alive: timeout=5, max=97\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":10679,"size_decoded":3520,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (10440), with CRLF line terminators","md5":"98f1ee062bb2f698eb228ecfb0c2b4a5","sha1":"bbaab382e24523d10e1f4791b8054ac52538bca3","sha256":"990a19934dde08fb93d2ef88c6e3c139ad73f382af87bc3ce5d120a5d0bba17c","sha512":"43dff37aaf91d9ef56073fdc6503dbaa03d8254812f801242868af29bcbde0fae3f24b8f3afbb5f253b738be964ecb3012c542f9de3990b0869bfccda86457aa","ssdeep":"192:meLx1q1e1XO79dciEK5FKw0Vm7Wgput9mHJNYgJ0Yb:N1q1e1XOn+KL6m7WgpAmHXbn","tlshash":"b522e95a2e1038f640b3132cf9ad89927322c571e5068c41f5f6bdb9576ce9d077aacc","first_seen":"2023-03-07T01:10:42Z","last_seen":"2026-08-09T08:42:12.818599Z","times_seen":724,"resource_available":true,"data":"LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogKiBSRVZPTFVUSU9OIDUuMi42IEVYVEVOU0lPTiAtIFBBUkFMTEFYDQogKiBAdmVyc2lvbjogMi4yLjAgKDE2LjExLjIwMTYpDQogKiBAcmVxdWlyZXMganF1ZXJ5LnRoZW1lcHVuY2gucmV2b2x1dGlvbi5qcw0KICogQGF1dGhvciBUaGVtZVB1bmNoDQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQohZnVuY3Rpb24oYSl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGUoYSxiKXthLmxhc3RzY3JvbGx0b3A9Yn12YXIgYj1qUXVlcnkuZm4ucmV2b2x1dGlvbixjPWIuaXNfbW9iaWxlKCksZD17YWxpYXM6IlBhcmFsbGF4IE1pbiBKUyIsbmFtZToicmV2b2x1dGlvbi5leHRlbnNpb25zLnBhcmFsbGF4Lm1pbi5qcyIsbWluX2NvcmU6IjUuMyIsdmVyc2lvbjoiMi4yLjAifTtqUXVlcnkuZXh0ZW5kKCEwLGIse2NoZWNrRm9yUGFyYWxsYXg6ZnVuY3Rpb24oYSxlKXtmdW5jdGlvbiBnKGEpe2lmKCIzRCI9PWYudHlwZXx8IjNkIj09Zi50eXBlKXthLmZpbmQoIi5zbG90aG9sZGVyIikud3JhcEFsbCgnPGRpdiBjbGFzcz0iZGRkd3JhcHBlciIgc3R5bGU9IndpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjBweDtsZWZ0OjBweDtvdmVyZmxvdzpoaWRkZW4iPjwvZGl2PicpLGEuZmluZCgiLnRwLXBhcmFsbGF4LXdyYXAiKS53cmFwQWxsKCc8ZGl2IGNsYXNzPSJkZGR3cmFwcGVyLWxheWVyIiBzdHlsZT0id2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MHB4O2xlZnQ6MHB4O3otaW5kZXg6NTtvdmVyZmxvdzonK2YuZGRkX2xheWVyX292ZXJmbG93Kyc7Ij48L2Rpdj4nKSxhLmZpbmQoIi5ycy1wYXJhbGxheGxldmVsLXRvYmdncm91cCIpLmNsb3Nlc3QoIi50cC1wYXJhbGxheC13cmFwIikud3JhcEFsbCgnPGRpdiBjbGFzcz0iZGRkd3JhcHBlci1sYXllcnRvYmdncm91cCIgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO3RvcDowcHg7bGVmdDowcHg7ei1pbmRleDo1MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlIj48L2Rpdj4nKTt2YXIgYj1hLmZpbmQoIi5kZGR3cmFwcGVyIiksYz1hLmZpbmQoIi5kZGR3cmFwcGVyLWxheWVyIiksZD1hLmZpbmQoIi5kZGR3cmFwcGVyLWxheWVydG9iZ2dyb3VwIik7ZC5hcHBlbmRUbyhiKSwiY2Fyb3VzZWwiPT1lLnNsaWRlclR5cGUmJigib24iPT1mLmRkZF9zaGFkb3cmJmIuYWRkQ2xhc3MoImRkZHdyYXBwZXJzaGFkb3ciKSxwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYix7Ym9yZGVyUmFkaXVzOmUuY2Fyb3VzZWwuYm9yZGVyX3JhZGl1c30pKSxwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYSx7b3ZlcmZsb3c6InZpc2libGUiLHRyYW5zZm9ybVN0eWxlOiJwcmVzZXJ2ZS0zZCIscGVyc3BlY3RpdmU6MTYwMH0pLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChiLHtmb3JjZTNEOiJhdXRvIix0cmFuc2Zvcm1PcmlnaW46IjUwJSA1MCUifSkscHVuY2hncy5Ud2VlbkxpdGUuc2V0KGMse2ZvcmNlM0Q6ImF1dG8iLHRyYW5zZm9ybU9yaWdpbjoiNTAlIDUwJSIsekluZGV4OjV9KSxwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZS51bCx7dHJhbnNmb3JtU3R5bGU6InByZXNlcnZlLTNkIix0cmFuc2Zvcm1QZXJzcGVjdGl2ZToxNjAwfSl9fWlmKCJzdG9wIj09PWIuY29tcGFyZV92ZXJzaW9uKGQpLmNoZWNrKXJldHVybiExO3ZhciBmPWUucGFyYWxsYXg7aWYoIWYuZG9uZSl7aWYoZi5kb25lPSEwLGMmJiJvbiI9PWYuZGlzYWJsZV9vbm1vYmlsZSlyZXR1cm4hMTsiM0QiIT1mLnR5cGUmJiIzZCIhPWYudHlwZXx8KHB1bmNoZ3MuVHdlZW5MaXRlLnNldChlLmMse292ZXJmbG93OmYuZGRkX292ZXJmbG93fSkscHVuY2hncy5Ud2VlbkxpdGUuc2V0KGUudWwse292ZXJmbG93OmYuZGRkX292ZXJmbG93fSksImNhcm91c2VsIiE9ZS5zbGlkZXJUeXBlJiYib24iPT1mLmRkZF9zaGFkb3cmJihlLmMucHJlcGVuZCgnPGRpdiBjbGFzcz0iZGRkd3JhcHBlcnNoYWRvdyI+PC9kaXY+JykscHVuY2hncy5Ud2VlbkxpdGUuc2V0KGUuYy5maW5kKCIuZGRkd3JhcHBlcnNoYWRvdyIpLHtmb3JjZTNEOiJhdXRvIix0cmFuc2Zvcm1QZXJzcGVjdGl2ZToxNjAwLHRyYW5zZm9ybU9yaWdpbjoiNTAlIDUwJSIsd2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIscG9zaXRpb246ImFic29sdXRlIix0b3A6MCxsZWZ0OjAsekluZGV4OjB9KSkpLGUubGkuZWFjaChmdW5jdGlvbigpe2coalF1ZXJ5KHRoaXMpKX0pLCgiM0QiPT1mLnR5cGV8fCIzZCI9PWYudHlwZSkmJmUuYy5maW5kKCIudHAtc3RhdGljLWxheWVycyIpLmxlbmd0aD4wJiYocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGUuYy5maW5kKCIudHAtc3RhdGljLWxheWVycyIpLHt0b3A6MCxsZWZ0OjAsd2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSJ9KSxnKGUuYy5maW5kKCIudHAtc3RhdGljLWxheWVycyIpKSksZi5wY29udGFpbmVycz1uZXcgQXJyYXksZi5wY29udGFpbmVyX2RlcHRocz1uZXcgQXJyYXksZi5iZ2NvbnRhaW5lcnM9bmV3IEFycmF5LGYuYmdjb250YWluZXJfZGVwdGhzPW5ldyBBcnJheSxlLmMuZmluZCgiLnRwLXJldnNsaWRlci1zbGlkZXNsaSAuc2xvdGhvbGRlciwgLnRwLXJldnNsaWRlci1zbGlkZXNsaSAucnMtYmFja2dyb3VuZC12aWRlby1sYXllciIpLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyksYj1hLmRhdGEoImJncGFyYWxsYXgiKXx8ZS5wYXJhbGxheC5iZ3BhcmFsbGF4O2I9Im9uIj09Yj8xOmIsdm9pZCAwIT09YiYmIm9mZiIhPT1iJiYoZi5iZ2NvbnRhaW5lcnMucHVzaChhKSxmLmJnY29udGFpbmVyX2RlcHRocy5wdXNoKGUucGFyYWxsYXgubGV2ZWxzW3BhcnNlSW50KGIsMCktMV0vMTAwKSl9KTtmb3IodmFyIGg9MTtoPD1mLmxldmVscy5sZW5ndGg7aCsrKWUuYy5maW5kKCIucnMtcGFyYWxsYXhsZXZlbC0iK2gpLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyksYj1hLmNsb3Nlc3QoIi50cC1wYXJhbGxheC13cmFwIik7Yi5kYXRhKCJwYXJhbGxheGxldmVsIixmLmxldmVsc1toLTFdKSxiLmFkZENsYXNzKCJ0cC1wYXJhbGxheC1jb250YWluZXIiKSxmLnBjb250YWluZXJzLnB1c2goYiksZi5wY29udGFpbmVyX2RlcHRocy5wdXNoKGYubGV2ZWxzW2gtMV0pfSk7Im1vdXNlIiE9Zi50eXBlJiYic2Nyb2xsK21vdXNlIiE9Zi50eXBlJiYibW91c2Urc2Nyb2xsIiE9Zi50eXBlJiYiM0QiIT1mLnR5cGUmJiIzZCIhPWYudHlwZXx8KGEubW91c2VlbnRlcihmdW5jdGlvbihiKXt2YXIgYz1hLmZpbmQoIi5hY3RpdmUtcmV2c2xpZGUiKSxkPWEub2Zmc2V0KCkudG9wLGU9YS5vZmZzZXQoKS5sZWZ0LGY9Yi5wYWdlWC1lLGc9Yi5wYWdlWS1kO2MuZGF0YSgiZW50ZXJ4IixmKSxjLmRhdGEoImVudGVyeSIsZyl9KSxhLm9uKCJtb3VzZW1vdmUuaG92ZXJkaXIsIG1vdXNlbGVhdmUuaG92ZXJkaXIsIHRyaWdnZXIzZHBhdGgiLGZ1bmN0aW9uKGIsYyl7dmFyIGQ9YyYmYy5saT9jLmxpOmEuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpO2lmKCJlbnRlcnBvaW50Ij09Zi5vcmlnbyl7dmFyIGc9YS5vZmZzZXQoKS50b3AsaD1hLm9mZnNldCgpLmxlZnQ7dm9pZCAwPT1kLmRhdGEoImVudGVyeCIpJiZkLmRhdGEoImVudGVyeCIsYi5wYWdlWC1oKSx2b2lkIDA9PWQuZGF0YSgiZW50ZXJ5IikmJmQuZGF0YSgiZW50ZXJ5IixiLnBhZ2VZLWcpO3ZhciBpPWQuZGF0YSgiZW50ZXJ4Iil8fGIucGFnZVgtaCxqPWQuZGF0YSgiZW50ZXJ5Iil8fGIucGFnZVktZyxrPWktKGIucGFnZVgtaCksbD1qLShiLnBhZ2VZLWcpLG09Zi5zcGVlZC8xZTN8fC40fWVsc2UgdmFyIGc9YS5vZmZzZXQoKS50b3AsaD1hLm9mZnNldCgpLmxlZnQsaz1lLmNvbncvMi0oYi5wYWdlWC1oKSxsPWUuY29uaC8yLShiLnBhZ2VZLWcpLG09Zi5zcGVlZC8xZTN8fDM7Im1vdXNlbGVhdmUiPT1iLnR5cGUmJihrPWYuZGRkX2xhc3RofHwwLGw9Zi5kZGRfbGFzdHZ8fDAsbT0xLjUpO2Zvcih2YXIgbj0wO248Zi5wY29udGFpbmVycy5sZW5ndGg7bisrKXt2YXIgbz1mLnBjb250YWluZXJzW25dLHA9Zi5wY29udGFpbmVyX2RlcHRoc1tuXSxxPSIzRCI9PWYudHlwZXx8IjNkIj09Zi50eXBlP3AvMjAwOnAvMTAwLHI9aypxLHM9bCpxOyJzY3JvbGwrbW91c2UiPT1mLnR5cGV8fCJtb3VzZStzY3JvbGwiPT1mLnR5cGU/cHVuY2hncy5Ud2VlbkxpdGUudG8obyxtLHtmb3JjZTNEOiJhdXRvIix4OnIsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlT3V0LG92ZXJ3cml0ZToiYWxsIn0pOnB1bmNoZ3MuVHdlZW5MaXRlLnRvKG8sbSx7Zm9yY2UzRDoiYXV0byIseDpyLHk6cyxlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VPdXQsb3ZlcndyaXRlOiJhbGwifSl9aWYoIjNEIj09Zi50eXBlfHwiM2QiPT1mLnR5cGUpe3ZhciB0PSIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIC5kZGR3cmFwcGVyLCAuZGRkd3JhcHBlcnNoYWRvdywgLnRwLXJldnNsaWRlci1zbGlkZXNsaSAuZGRkd3JhcHBlci1sYXllciwgLnRwLXN0YXRpYy1sYXllcnMgLmRkZHdyYXBwZXItbGF5ZXIiOyJjYXJvdXNlbCI9PT1lLnNsaWRlclR5cGUmJih0PSIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIC5kZGR3cmFwcGVyLCAudHAtcmV2c2xpZGVyLXNsaWRlc2xpIC5kZGR3cmFwcGVyLWxheWVyLCAudHAtc3RhdGljLWxheWVycyAuZGRkd3JhcHBlci1sYXllciIpLGUuYy5maW5kKHQpLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyksYz1mLmxldmVsc1tmLmxldmVscy5sZW5ndGgtMV0vMjAwLGQ9aypjLGc9bCpjLGg9MD09ZS5jb253PzA6TWF0aC5yb3VuZChrL2UuY29udypjKjEwMCl8fDAsaT0wPT1lLmNvbmg/MDpNYXRoLnJvdW5kKGwvZS5jb25oKmMqMTAwKXx8MCxqPWEuY2xvc2VzdCgibGkiKSxuPTAsbz0hMTthLmhhc0NsYXNzKCJkZGR3cmFwcGVyLWxheWVyIikmJihuPWYuZGRkX3pfY29ycmVjdGlvbnx8NjUsbz0hMCksYS5oYXNDbGFzcygiZGRkd3JhcHBlci1sYXllciIpJiYoZD0wLGc9MCksai5oYXNDbGFzcygiYWN0aXZlLXJldnNsaWRlIil8fCJjYXJvdXNlbCIhPWUuc2xpZGVyVHlwZT8ib24iIT1mLmRkZF9iZ2ZyZWV6ZXx8bz9wdW5jaGdzLlR3ZWVuTGl0ZS50byhhLG0se3JvdGF0aW9uWDppLHJvdGF0aW9uWTotaCx4OmQsejpuLHk6ZyxlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VPdXQsb3ZlcndyaXRlOiJhbGwifSk6cHVuY2hncy5Ud2VlbkxpdGUudG8oYSwuNSx7Zm9yY2UzRDoiYXV0byIscm90YXRpb25ZOjAscm90YXRpb25YOjAsejowLGVhc2U6cHVuY2hncy5Qb3dlcjMuZWFzZU91dCxvdmVyd3JpdGU6ImFsbCJ9KTpwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLC41LHtmb3JjZTNEOiJhdXRvIixyb3RhdGlvblk6MCx4OjAseTowLHJvdGF0aW9uWDowLHo6MCxlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VPdXQsb3ZlcndyaXRlOiJhbGwifSksIm1vdXNlbGVhdmUiPT1iLnR5cGUmJnB1bmNoZ3MuVHdlZW5MaXRlLnRvKGpRdWVyeSh0aGlzKSwzLjgse3o6MCxlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VPdXR9KX0pfX0pLGMmJih3aW5kb3cub25kZXZpY2VvcmllbnRhdGlvbj1mdW5jdGlvbihiKXt2YXIgYz1NYXRoLnJvdW5kKGIuYmV0YXx8MCktNzAsZD1NYXRoLnJvdW5kKGIuZ2FtbWF8fDApLGc9YS5maW5kKCIuYWN0aXZlLXJldnNsaWRlIik7aWYoalF1ZXJ5KHdpbmRvdykud2lkdGgoKT5qUXVlcnkod2luZG93KS5oZWlnaHQoKSl7dmFyIGg9ZDtkPWMsYz1ofXZhciBpPWEud2lkdGgoKSxqPWEuaGVpZ2h0KCksaz0zNjAvaSpkLGw9MTgwL2oqYyxtPWYuc3BlZWQvMWUzfHwzLG49W107aWYoZy5maW5kKCIudHAtcGFyYWxsYXgtY29udGFpbmVyIikuZWFjaChmdW5jdGlvbihhKXtuLnB1c2goalF1ZXJ5KHRoaXMpKX0pLGEuZmluZCgiLnRwLXN0YXRpYy1sYXllcnMgLnRwLXBhcmFsbGF4LWNvbnRhaW5lciIpLmVhY2goZnVuY3Rpb24oKXtuLnB1c2goalF1ZXJ5KHRoaXMpKX0pLGpRdWVyeS5lYWNoKG4sZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyksYj1wYXJzZUludChhLmRhdGEoInBhcmFsbGF4bGV2ZWwiKSwwKSxjPWIvMTAwLGQ9aypjKjIsZT1sKmMqNDtwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLG0se2ZvcmNlM0Q6ImF1dG8iLHg6ZCx5OmUsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlT3V0LG92ZXJ3cml0ZToiYWxsIn0pfSksIjNEIj09Zi50eXBlfHwiM2QiPT1mLnR5cGUpe3ZhciBvPSIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIC5kZGR3cmFwcGVyLCAuZGRkd3JhcHBlcnNoYWRvdywgLnRwLXJldnNsaWRlci1zbGlkZXNsaSAuZGRkd3JhcHBlci1sYXllciwgLnRwLXN0YXRpYy1sYXllcnMgLmRkZHdyYXBwZXItbGF5ZXIiOyJjYXJvdXNlbCI9PT1lLnNsaWRlclR5cGUmJihvPSIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIC5kZGR3cmFwcGVyLCAudHAtcmV2c2xpZGVyLXNsaWRlc2xpIC5kZGR3cmFwcGVyLWxheWVyLCAudHAtc3RhdGljLWxheWVycyAuZGRkd3JhcHBlci1sYXllciIpLGUuYy5maW5kKG8pLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyksYz1mLmxldmVsc1tmLmxldmVscy5sZW5ndGgtMV0vMjAwLGQ9aypjLGc9bCpjKjMsaD0wPT1lLmNvbnc/MDpNYXRoLnJvdW5kKGsvZS5jb253KmMqNTAwKXx8MCxpPTA9PWUuY29uaD8wOk1hdGgucm91bmQobC9lLmNvbmgqYyo3MDApfHwwLGo9YS5jbG9zZXN0KCJsaSIpLG49MCxvPSExO2EuaGFzQ2xhc3MoImRkZHdyYXBwZXItbGF5ZXIiKSYmKG49Zi5kZGRfel9jb3JyZWN0aW9ufHw2NSxvPSEwKSxhLmhhc0NsYXNzKCJkZGR3cmFwcGVyLWxheWVyIikmJihkPTAsZz0wKSxqLmhhc0NsYXNzKCJhY3RpdmUtcmV2c2xpZGUiKXx8ImNhcm91c2VsIiE9ZS5zbGlkZXJUeXBlPyJvbiIhPWYuZGRkX2JnZnJlZXplfHxvP3B1bmNoZ3MuVHdlZW5MaXRlLnRvKGEsbSx7cm90YXRpb25YOmkscm90YXRpb25ZOi1oLHg6ZCx6Om4seTpnLGVhc2U6cHVuY2hncy5Qb3dlcjMuZWFzZU91dCxvdmVyd3JpdGU6ImFsbCJ9KTpwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLC41LHtmb3JjZTNEOiJhdXRvIixyb3RhdGlvblk6MCxyb3RhdGlvblg6MCx6OjAsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlT3V0LG92ZXJ3cml0ZToiYWxsIn0pOnB1bmNoZ3MuVHdlZW5MaXRlLnRvKGEsLjUse2ZvcmNlM0Q6ImF1dG8iLHJvdGF0aW9uWTowLHo6MCx4OjAseTowLHJvdGF0aW9uWDowLGVhc2U6cHVuY2hncy5Qb3dlcjMuZWFzZU91dCxvdmVyd3JpdGU6ImFsbCJ9KSwibW91c2VsZWF2ZSI9PWIudHlwZSYmcHVuY2hncy5Ud2VlbkxpdGUudG8oalF1ZXJ5KHRoaXMpLDMuOCx7ejowLGVhc2U6cHVuY2hncy5Qb3dlcjMuZWFzZU91dH0pfSl9fSkpO3ZhciBpPWUuc2Nyb2xsZWZmZWN0O2lmKGkuYmdzPW5ldyBBcnJheSxpLm9uKXtpZigib24iPT09aS5vbl9zbGlkZWJnKWZvcih2YXIgaD0wO2g8ZS5hbGxzbG90aG9sZGVyLmxlbmd0aDtoKyspaS5iZ3MucHVzaChlLmFsbHNsb3Rob2xkZXJbaF0pO2kubXVsdGlwbGljYXRvcl9sYXllcnM9cGFyc2VGbG9hdChpLm11bHRpcGxpY2F0b3JfbGF5ZXJzKSxpLm11bHRpcGxpY2F0b3I9cGFyc2VGbG9hdChpLm11bHRpcGxpY2F0b3IpfXZvaWQgMCE9PWkubGF5ZXJzJiYwPT09aS5sYXllcnMubGVuZ3RoJiYoaS5sYXllcnM9ITEpLHZvaWQgMCE9PWkuYmdzJiYwPT09aS5iZ3MubGVuZ3RoJiYoaS5iZ3M9ITEpLGIuc2Nyb2xsVGlja2VyKGUsYSl9fSxzY3JvbGxUaWNrZXI6ZnVuY3Rpb24oYSxkKXsxIT1hLnNjcm9sbFRpY2tlciYmKGEuc2Nyb2xsVGlja2VyPSEwLGM/KHB1bmNoZ3MuVHdlZW5MaXRlLnRpY2tlci5mcHMoMTUwKSxwdW5jaGdzLlR3ZWVuTGl0ZS50aWNrZXIuYWRkRXZlbnRMaXN0ZW5lcigidGljayIsZnVuY3Rpb24oKXtiLnNjcm9sbEhhbmRsaW5nKGEpfSxkLCExLDEpKTpkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLGZ1bmN0aW9uKGMpe2Iuc2Nyb2xsSGFuZGxpbmcoYSwhMCl9LHtwYXNzaXZlOiEwfSkpLGIuc2Nyb2xsSGFuZGxpbmcoYSwhMCl9LHNjcm9sbEhhbmRsaW5nOmZ1bmN0aW9uKGEsZCl7aWYoYS5sYXN0d2luZG93aGVpZ2h0PWEubGFzdHdpbmRvd2hlaWdodHx8d2luZG93LmlubmVySGVpZ2h0LGEuY29uaD0wPT09YS5jb25ofHx2b2lkIDA9PT1hLmNvbmg/YS5pbmZ1bGxzY3JlZW5tb2RlP2EubWluSGVpZ2h0OmEuYy5oZWlnaHQoKTphLmNvbmgsYS5sYXN0c2Nyb2xsdG9wPT13aW5kb3cuc2Nyb2xsWSYmIWEuZHVyaW5nc2xpZGVjaGFuZ2UmJiFkKXJldHVybiExO3B1bmNoZ3MuVHdlZW5MaXRlLmRlbGF5ZWRDYWxsKC4yLGUsW2Esd2luZG93LnNjcm9sbFldKTt2YXIgZj1hLmNbMF0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksZz1hLnZpZXdQb3J0LGg9YS5wYXJhbGxheCxpPWYudG9wPDB8fGYuaGVpZ2h0PmEubGFzdHdpbmRvd2hlaWdodD9mLnRvcC9mLmhlaWdodDpmLmJvdHRvbT5hLmxhc3R3aW5kb3doZWlnaHQ/KGYuYm90dG9tLWEubGFzdHdpbmRvd2hlaWdodCkvZi5oZWlnaHQ6MDtpZihhLnNjcm9sbHByb2M9aSxiLmNhbGxCYWNrSGFuZGxpbmcmJmIuY2FsbEJhY2tIYW5kbGluZyhhLCJwYXJhbGxheCIsInN0YXJ0IiksZy5lbmFibGUpe3ZhciBqPTEtTWF0aC5hYnMoaSk7aj1qPDA/MDpqLGpRdWVyeS5pc051bWVyaWMoZy52aXNpYmxlX2FyZWEpfHxnLnZpc2libGVfYXJlYS5pbmRleE9mKCIlIikhPT0tMSYmKGcudmlzaWJsZV9hcmVhPXBhcnNlSW50KGcudmlzaWJsZV9hcmVhKS8xMDApLDEtZy52aXNpYmxlX2FyZWE8PWo/YS5pbnZpZXdwb3J0fHwoYS5pbnZpZXdwb3J0PSEwLGIuZW50ZXJJblZpZXdQb3J0KGEpKTphLmludmlld3BvcnQmJihhLmludmlld3BvcnQ9ITEsYi5sZWF2ZVZpZXdQb3J0KGEpKX1pZihjJiYib24iPT1oLmRpc2FibGVfb25tb2JpbGUpcmV0dXJuITE7aWYoIjNkIiE9aC50eXBlJiYiM0QiIT1oLnR5cGUpe2lmKCgic2Nyb2xsIj09aC50eXBlfHwic2Nyb2xsK21vdXNlIj09aC50eXBlfHwibW91c2Urc2Nyb2xsIj09aC50eXBlKSYmaC5wY29udGFpbmVycylmb3IodmFyIGs9MDtrPGgucGNvbnRhaW5lcnMubGVuZ3RoO2srKylpZihoLnBjb250YWluZXJzW2tdLmxlbmd0aD4wKXt2YXIgbD1oLnBjb250YWluZXJzW2tdLG09aC5wY29udGFpbmVyX2RlcHRoc1trXS8xMDAsbj1NYXRoLnJvdW5kKGkqLShtKmEuY29uaCkqMTApLzEwfHwwO2wuZGF0YSgicGFyYWxsYXhvZmZzZXQiLG4pLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChsLHtvdmVyd3JpdGU6ImF1dG8iLGZvcmNlM0Q6ImF1dG8iLHk6bn0pfWlmKGguYmdjb250YWluZXJzKWZvcih2YXIgaz0wO2s8aC5iZ2NvbnRhaW5lcnMubGVuZ3RoO2srKyl7dmFyIG89aC5iZ2NvbnRhaW5lcnNba10scD1oLmJnY29udGFpbmVyX2RlcHRoc1trXSxuPWkqLShwKmEuY29uaCl8fDA7cHVuY2hncy5Ud2VlbkxpdGUuc2V0KG8se3Bvc2l0aW9uOiJhYnNvbHV0ZSIsdG9wOiIwcHgiLGxlZnQ6IjBweCIsYmFja2ZhY2VWaXNpYmlsaXR5OiJoaWRkZW4iLGZvcmNlM0Q6InRydWUiLHk6bisicHgifSl9fXZhciBxPWEuc2Nyb2xsZWZmZWN0O2lmKHEub24mJigib24iIT09cS5kaXNhYmxlX29uX21vYmlsZXx8IWMpKXt2YXIgcj1NYXRoLmFicyhpKS1xLnRpbHQvMTAwO2lmKHI9cjwwPzA6cixxLmxheWVycyE9PSExKXt2YXIgcz0xLXIqcS5tdWx0aXBsaWNhdG9yX2xheWVycyx0PXtiYWNrZmFjZVZpc2liaWxpdHk6ImhpZGRlbiIsZm9yY2UzRDoidHJ1ZSJ9O2lmKCJ0b3AiPT1xLmRpcmVjdGlvbiYmaT49MCYmKHM9MSksImJvdHRvbSI9PXEuZGlyZWN0aW9uJiZpPD0wJiYocz0xKSxzPXM+MT8xOnM8MD8wOnMsIm9uIj09PXEuZmFkZSYmKHQub3BhY2l0eT1zKSwib24iPT09cS5ibHVyKXt2YXIgdT0oMS1zKSpxLm1heGJsdXI7dFsiLXdlYmtpdC1maWx0ZXIiXT0iYmx1cigiK3UrInB4KSIsdC5maWx0ZXI9ImJsdXIoIit1KyJweCkifWlmKCJvbiI9PT1xLmdyYXlzY2FsZSl7dmFyIHY9MTAwKigxLXMpLHc9ImdyYXlzY2FsZSgiK3YrIiUpIjt0WyItd2Via2l0LWZpbHRlciJdPXZvaWQgMD09PXRbIi13ZWJraXQtZmlsdGVyIl0/dzp0WyItd2Via2l0LWZpbHRlciJdKyIgIit3LHQuZmlsdGVyPXZvaWQgMD09PXQuZmlsdGVyP3c6dC5maWx0ZXIrIiAiK3d9cHVuY2hncy5Ud2VlbkxpdGUuc2V0KHEubGF5ZXJzLHQpfWlmKHEuYmdzIT09ITEpe3ZhciBzPTEtcipxLm11bHRpcGxpY2F0b3IsdD17YmFja2ZhY2VWaXNpYmlsaXR5OiJoaWRkZW4iLGZvcmNlM0Q6InRydWUifTtpZigidG9wIj09cS5kaXJlY3Rpb24mJmk+PTAmJihzPTEpLCJib3R0b20iPT1xLmRpcmVjdGlvbiYmaTw9MCYmKHM9MSkscz1zPjE/MTpzPDA/MDpzLCJvbiI9PT1xLmZhZGUmJih0Lm9wYWNpdHk9cyksIm9uIj09PXEuYmx1cil7dmFyIHU9KDEtcykqcS5tYXhibHVyO3RbIi13ZWJraXQtZmlsdGVyIl09ImJsdXIoIit1KyJweCkiLHQuZmlsdGVyPSJibHVyKCIrdSsicHgpIn1pZigib24iPT09cS5ncmF5c2NhbGUpe3ZhciB2PTEwMCooMS1zKSx3PSJncmF5c2NhbGUoIit2KyIlKSI7dFsiLXdlYmtpdC1maWx0ZXIiXT12b2lkIDA9PT10WyItd2Via2l0LWZpbHRlciJdP3c6dFsiLXdlYmtpdC1maWx0ZXIiXSsiICIrdyx0LmZpbHRlcj12b2lkIDA9PT10LmZpbHRlcj93OnQuZmlsdGVyKyIgIit3fXB1bmNoZ3MuVHdlZW5MaXRlLnNldChxLmJncyx0KX19Yi5jYWxsQmFja0hhbmRsaW5nJiZiLmNhbGxCYWNrSGFuZGxpbmcoYSwicGFyYWxsYXgiLCJlbmQiKX19KX0oalF1ZXJ5KTs="}},"time_used":16544,"timings":{"blocked":15712,"dns":0,"connect":0,"send":0,"wait":832,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/Dashboard/img/profile/default.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.322Z","timestamp":1785143908322,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /Dashboard/img/profile/default.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/css/responsive.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.268Z","timestamp":1785143908268,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /css/responsive.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:39 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"5130-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 3675\r\nKeep-Alive: timeout=5, max=99\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":20784,"size_decoded":4036,"mime_type":"text/css","magic":"ASCII text, with very long lines (408), with CRLF line terminators","md5":"c4cf55a1696cdc78b82a1ff724bc9c69","sha1":"74d1c69a927aa572a068e99ee517ad6405e1e348","sha256":"9cd65ab969f37e6f49fe17680320499ee893e33e1e09ca677c71e7cd784bc2cf","sha512":"41ef99c97b567b137e8f61da047cb9f41601b985ea7d5639719a77c95030c5f5b37aa71ba9d3d1afc0793afaacb651f365b39794fe3a6d7b647d5afdf3e9ba1c","ssdeep":"384:yqBeTSmjRWIWn+IVZDJJ2QWNCdavPepKmAhpIVCyZv+pCL9d2:yaeen+IVZ2CdYphpIVCyZv+pCL9d2","tlshash":"2592bb0eed0124094977b3b4efb75665ee720163c386c1e2bcac5109cfb95ad4291fda","first_seen":"2024-08-19T21:52:47.412807Z","last_seen":"2026-07-27T09:20:18.371564Z","times_seen":17,"resource_available":false,"data":"QG1lZGlhIChtYXgtd2lkdGg6MTY4MHB4KXsNCiAgICAuY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9sZWZ0IHsNCiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTAzcHgpOw0KICAgICAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgIH0NCiAgICAuY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodHsNCiAgICAgICAgd2lkdGg6IGNhbGMoNTAlICsgMTAzcHgpOw0KICAgICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7DQogICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7DQogICAgfQ0KICAgIC5uaWNlLXNlbGVjdCAubGlzdHsNCiAgICAgICAgbGVmdDogYXV0bzsNCiAgICAgICAgcmlnaHQ6IDA7DQogICAgfQ0KICAgIC5oZXJvX2Jhbm5lcl90aHJlZSAuaW1nX3R3byBpbWcgew0KICAgICAgICBtYXgtd2lkdGg6IDEwMCU7DQogICAgfQ0KfQ0KQG1lZGlhIChtYXgtd2lkdGg6MTQ0MHB4KXsNCiAgICAuY29pbl9pbWd7DQogICAgICAgIHJpZ2h0OiAwOw0KICAgIH0NCiAgICAucGFkX3NjcmVlbiBpbWd7DQogICAgICAgIG1heC13aWR0aDogMTMwJTsNCiAgICB9DQogICAgLmhlcm9fYmFubmVyX2FyZWEgLnZpZGVvX2ltZyB7DQogICAgICAgIG1hcmdpbi1yaWdodDogMDsNCiAgICB9DQogICAgLmNvbW1pbmdzb29uX3NlY3Rpb24gLnRpbWVyew0KICAgICAgICBtYXJnaW46IDUwcHggMHB4IDQwcHg7DQogICAgfQ0KICAgIC5jb21taW5nc29vbl9zZWN0aW9uIHB7DQogICAgICAgIG1hcmdpbi1ib3R0b206IDBweDsNCiAgICB9DQp9DQpAbWVkaWEgKG1heC13aWR0aDoxMTk5cHgpew0KICAgIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW0gKyBsaSB7DQogICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4Ow0KICAgIH0NCiAgICAuYWJvdXRfaW1nIGltZ3sNCiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgIH0NCiAgICAudGVzdGltb25pYWxfaXRlbXsNCiAgICAgICAgcGFkZGluZzogMzVweCAyMHB4IDI1cHggMjVweDsNCiAgICB9DQogICAgLmx0X2Jsb2dfaXRlbSBpbWd7DQogICAgICAgIG1heC13aWR0aDogMTAwJTsNCiAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgfQ0KICAgIC5sYXRlc3RfbmV3cyB7DQogICAgICAgIHBhZGRpbmc6IDI1cHggMjBweCAyMHB4IDIwcHg7DQogICAgfQ0KICAgIC5sdF9ibG9nX2l0ZW0gLmltZ19ibG9nX3RleHR7DQogICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsNCiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDsNCiAgICB9DQogICAgLmV4cGVydGlzZV9pdGVtX3R3byAuZXhwZXJ0aXNlX2NvbnRlbnQuYm90dG9tX3RleHQgew0KICAgICAgICB0b3A6IDY2JTsNCiAgICB9DQogICAgLmV4cGVydGlzZV9pdGVtX3R3byAuZXhwZXJ0aXNlX2NvbnRlbnR7DQogICAgICAgIHBhZGRpbmctbGVmdDogMTBweDsNCiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDsNCiAgICB9DQogICAgLmV4cGVydGlzZV9pdGVtX3R3byAuZXhwZXJ0aXNlX2NvbnRlbnQgcHsNCiAgICAgICAgZm9udC1zaXplOiAxNHB4Ow0KICAgIH0NCiAgICAudGVhbV9tZW1iZXIgLnRlYW1faW1nX2lubmVyIGltZ3sNCiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgICAgICB3aWR0aDogMTAwJTsNCiAgICB9DQogICAgLm5ldHdvcmtfY29udGVudHsNCiAgICAgICAgcGFkZGluZy10b3A6IDBweDsNCiAgICB9DQogICAgLmdyb3dpbmdfZmFjdHMgew0KICAgICAgICBwYWRkaW5nOiA0OHB4IDIwcHg7DQogICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgfQ0KCS52aWRlb19zY3JlZW4gaW1new0KCQl3aWR0aDogMTAwJTsNCgl9DQoJLndvcmtfc3RlcC53b3JrX2ZpcnN0OjphZnRlciB7DQoJCXJpZ2h0OiAtMTE1cHg7DQoJCXdpZHRoOiAyMDZweDsNCgkJYmFja2dyb3VuZC1zaXplOiBjb250YWluOw0KCX0NCgkud29ya19zdGVwLndvcmtfbWlkZGxlOjphZnRlciB7DQoJCXJpZ2h0OiAtMTE1cHg7DQoJCXdpZHRoOiAyMDZweDsNCgkJYmFja2dyb3VuZC1zaXplOiBjb250YWluOw0KCX0NCgkubGlua193aWRnZXQgew0KCQlwYWRkaW5nLWxlZnQ6IDMwcHg7DQoJfQ0KCS50d29fY29sdW1uX3NhbXBsZSAudHdvX2NvbHVtbl9pdGVtIHsNCgkJbWF4LXdpZHRoOiAxMDAlOw0KCQlmbG9hdDogbGVmdDsNCgkJd2lkdGg6IGNhbGMoMTAwJSAvIDIpOw0KCQltYXJnaW4tbGVmdDogMHB4Ow0KCQlwYWRkaW5nLXJpZ2h0OiAxMHB4Ow0KCX0NCgkudHdvX2NvbHVtbl9zYW1wbGUgLnR3b19jb2x1bW5faXRlbSArIC50d29fY29sdW1uX2l0ZW0gew0KCQltYXJnaW4tbGVmdDogMHB4Ow0KCQlwYWRkaW5nLWxlZnQ6IDEwcHg7DQoJCXBhZGRpbmctcmlnaHQ6IDBweDsNCgl9DQoJLmJpeGNvaW5fdGFibGUgdGJvZHkgdHIgdGQgaDUsIC5iaXhjb2luX3RhYmxlIHRib2R5IHRyIHRoIGg1IHsNCgkJd2hpdGUtc3BhY2U6IG5vd3JhcDsNCgl9DQoJLmJpeGNvaW5fdGFibGUgdGJvZHkgdHIgdGQgaDYsIC5iaXhjb2luX3RhYmxlIHRib2R5IHRyIHRoIGg2IHsNCgkJd2hpdGUtc3BhY2U6IG5vd3JhcDsNCgl9DQoJLmJpeGNvaW5fdGFibGUgdGJvZHkgdHIgdGQgaDYgYnIgew0KCQlkaXNwbGF5OiBub25lOw0KCX0NCgkuYml4Y29pbl90YWJsZSB0Ym9keSB0ciB0ZCAucmVhZF9idG4gew0KCQl3aWR0aDogMTY1cHg7DQoJfQ0KCS5icm9rZXJfYXJlYSBpbWd7DQoJCXdpZHRoOiAxMDAlOw0KCX0NCiAgICAuaF9iYW5ucl9jb250ZW50IGgyew0KICAgICAgICBmb250LXNpemU6IDQ4cHg7DQogICAgfQ0KICAgIC5yZWNlbnRfbWFya2V0X2FyZWEgLmJ0Y3dkZ3R7DQogICAgICAgIG1hcmdpbi1yaWdodDogMHB4ICFpbXBvcnRhbnQ7DQogICAgfQ0KICAgIC5zcGVha2Vyc19ldmVudF9pdGVtIC5zX2V2ZW50X2NvbnRlbnR7DQogICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsNCiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDsNCiAgICB9DQogICAgLmxlYXJuaW5nX2NvbnRlbnR7DQogICAgICAgIHBhZGRpbmc6IDcwcHggMjVweCAwcHggMjVweDsNCiAgICB9DQogICAgLmxlYXJuaW5nX2NvbnRlbnQgaDIgew0KICAgICAgICBmb250LXNpemU6IDI0cHg7DQogICAgfQ0KICAgIC5ib29rX2ltZyBpbWd7DQogICAgICAgIG1heC13aWR0aDogMTAwJTsNCiAgICB9DQogICAgLmdldF9zdWJzY3JpYmVfYXJlYXsNCiAgICAgICAgcGFkZGluZzogNzBweCAwcHggMTAwcHg7DQogICAgfQ0KICAgIC5pbnZlc3RfYXJlYSAuY29udGFjdF9pbmZvIGF7DQogICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7DQogICAgfQ0KICAgIC5pbnZlc3RfYXJlYSAuY29udGFjdF9pbmZvIGEgaSB7DQogICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7DQogICAgfQ0KICAgIC5pbnZlc3RfYXJlYSAuY29udGFjdF9pbmZvIGEgKyBhew0KICAgICAgICBmb250LXNpemU6IDE4cHg7DQogICAgICAgIG1hcmdpbi1sZWZ0OiAxOHB4Ow0KICAgIH0NCiAgICAuaW52ZXN0X2FyZWEgLmludmVzdG9yIHsNCiAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDsNCiAgICB9DQogICAgLmludmVzdF9hcmVhIC50aXRsZV9zew0KICAgICAgICBmb250LXNpemU6IDI4cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4Ow0KICAgIH0NCiAgICAuaW52ZXN0X2FyZWEgLmluZm9fdGV4dCB7DQogICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7DQogICAgfQ0KCS5yb3dfcmV2ZXJzZSBpbWd7DQoJCXdpZHRoOiAxMDAlOw0KCX0NCiAgICAudGVhbV9pdGVtIC50ZWFtX2NvbnRlbnQgew0KICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDsNCiAgICB9DQogICAgLmZhcS1hY2NvcmRpb24gLmNhcmQgLmNhcmQtaGVhZGVyIC5idG4tYWNjb3JkaW9uew0KICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOw0KICAgIH0NCn0NCg0KQG1lZGlhIChtYXgtd2lkdGg6OTkxcHgpew0KICAgIC5hYm91dF9jdXJyZW5jeV9hcmVhIC5hYm91dF9pbWd7DQogICAgICAgIG1hcmdpbi10b3A6IDUwcHg7DQogICAgfQ0KICAgIC5jcnlwdG8tcHJpY2VzLWl0ZW17DQogICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7ICAgDQogICAgfQ0KICAgIC5leHBlcnRpc2VfaXRlbV90d28gLmV4cGVydGlzZV9jb250ZW50ew0KICAgICAgICBwYWRkaW5nOiAxMnB4IDE1cHggMzNweDsNCiAgICB9DQogICAgLmV4cGVydGlzZV9pdGVtX3R3b3sNCiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsNCiAgICB9DQogICAgLnNlcnZpY2VfaXRlbXsNCiAgICAgICAgcGFkZGluZzogMzVweCAyMHB4Ow0KICAgIH0NCiAgICAuZ2V0X21vcmVfdHdvIC50ZXh0LXJpZ2h0ew0KICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7DQogICAgICAgIG1hcmdpbi10b3A6IDIwcHg7DQogICAgfQ0KICAgIC5sYXRlc3RfYmxvZ19hcmVhIC5sdF90aXRsZV9pbmZvIC5yZWFkX2FsbHsNCiAgICAgICAgbWFyZ2luLXRvcDogMHB4Ow0KICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4Ow0KICAgIH0NCiAgICAubGF0ZXN0X25ld3Mgew0KICAgICAgICBwYWRkaW5nOiAyNXB4IDM1cHggMjBweCA0MHB4Ow0KICAgIH0NCiAgICAuZ2V0X21vcmV7DQogICAgICAgIHBhZGRpbmc6IDUwcHggMzBweDsNCiAgICB9DQogICAgLmdldF9tb3JlIC5yZWFkX2J0bnsNCiAgICAgICAgbWFyZ2luLXRvcDogMzBweDsNCiAgICB9DQogICAgLmdldF9tb3JlX3R3b3sNCiAgICAgICAgcGFkZGluZzogMHB4Ow0KICAgIH0NCiAgICAuZXhwZXJ0aXNlX2l0ZW1fdHdvIGltZ3sNCiAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgfQ0KICAgIC5saW5rX3dpZGdldCB7DQogICAgICAgIHBhZGRpbmctbGVmdDogMDsNCiAgICB9DQogICAgLmZfd2lkZ2V0ew0KICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4Ow0KICAgIH0NCiAgICAubmF2YmFyIC5uYXZiYXItYnJhbmR7DQogICAgICAgIHBhZGRpbmc6IDIwcHggMHB4Ow0KICAgIH0NCiAgICAubmF2YmFyIC5uYXZ7DQogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44NSk7DQogICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAwcHg7DQogICAgfQ0KICAgIC5uYXZiYXIgLmNvbnRhaW5lcnsNCiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4Ow0KICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4Ow0KICAgIH0NCiAgICAubmF2YmFyIC5uYXYgLm5hdi1pdGVtIGEsLm5hdmJhcl9maXhlZC5tYWluX2hlYWRlcl9hcmVhX3RocmVlIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW0gPiBhew0KICAgICAgICBsaW5lLWhlaWdodDogMzVweDsNCiAgICB9DQogICAgLm5hdmJhciAubmF2IC5uYXYtaXRlbSArIGxpew0KICAgICAgICBtYXJnaW4tbGVmdDogMHB4Ow0KICAgIH0NCiAgICAubmF2YmFyIC5uYXYubmF2YmFyLXJpZ2h0ew0KICAgICAgICBwYWRkaW5nLXRvcDogMTBweDsNCiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7DQogICAgfQ0KICAgIC5zZWFyY2hfZHJvcGRvd24gLm5hdi1saW5rIGl7DQogICAgICAgIHBhZGRpbmctbGVmdDogNXB4Ow0KICAgIH0NCiAgICAubmF2YmFyIC5uYXYgLnNlYXJjaF9kcm9wZG93biBhOmJlZm9yZXsNCiAgICAgICAgZGlzcGxheTogbm9uZTsNCiAgICB9DQogICAgLm5hdmJhciAubmF2IC5uYXYtaXRlbS5zdWJtZW51IHVsIGxpIGF7DQogICAgICAgIGNvbG9yOiAjZmZmOw0KICAgIH0NCiAgICAubmF2YmFyIC5uYXYgLm5hdi1pdGVtLnN1Ym1lbnUgdWwgbGl7DQogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDIzNywgMjM3LCAyMzcsIDAuMTUpOw0KICAgIH0NCiAgICAudGVhbV9tZW1iZXIgLnRlYW1faW1nX2lubmVyew0KICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICB9DQogICAgLmdyb3dpbmdfZmFjdHMgdWwgbGl7DQogICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTsNCiAgICAgICAgZmxvYXQ6IGxlZnQ7DQogICAgfQ0KICAgIC5ncm93aW5nX2ZhY3RzIHsNCiAgICAgICAgcGFkZGluZzogNDhweCA0OHB4IDI4cHg7DQogICAgICAgIG1hcmdpbi10b3A6IDUwcHg7DQogICAgfQ0KICAgIC5ncm93aW5nX2ZhY3RzIHVsIGxpew0KICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsNCiAgICB9DQogICAgLmdyb3dpbmdfZmFjdHMgdWwgbGkgKyBsaXsNCiAgICAgICAgcGFkZGluZy10b3A6IDBweDsNCiAgICB9DQogICAgLm5ldHdvcmtfYXJlYXsNCiAgICAgICAgcGFkZGluZzogNjBweCAwcHg7DQogICAgfQ0KICAgIC53b3JrX3N0ZXAud29ya19maXJzdDphZnRlciwud29ya19zdGVwLndvcmtfbWlkZGxlOmFmdGVyew0KICAgICAgICBkaXNwbGF5OiBub25lOw0KICAgIH0NCiAgICAud29ya19zdGVwIC53b3JrX2ljb246YmVmb3Jlew0KICAgICAgICBsZWZ0OiA1MyU7DQogICAgfQ0KICAgIC5wYWRfc2NyZWVuew0KICAgICAgICBtYXJnaW4tdG9wOiA0MHB4Ow0KICAgIH0NCiAgICAuYWJvdXRfaW5mb3sNCiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTMwcHg7DQogICAgfQ0KICAgIC5hYm91dF9pbmZvIC5hYm91dF9pdGVtew0KICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4Ow0KICAgIH0NCiAgICAubmV0d29ya19jb250ZW50ew0KICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7DQogICAgfQ0KICAgIC5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYXsNCiAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgfQ0KICAgIC5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX2xlZnQsLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQsLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfbGVmdCBpbWd7DQogICAgICAgIHdpZHRoOiAxMDAlOw0KICAgIH0NCiAgICAuY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodHsNCiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1MHB4Ow0KICAgIH0NCiAgICAubHRfYmxvZ19pdGVtew0KICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4Ow0KICAgIH0NCiAgICAucGFkX3NjcmVlbiBpbWcgew0KICAgICAgICBtYXgtd2lkdGg6IDEwMCU7DQogICAgfQ0KCS53ZWxjb21lX2NvbnRlbnQgew0KCQlwYWRkaW5nOiAwcHggMHB4Ow0KCX0NCgkudmlkZW9fc2NyZWVuIHsNCgkJbWFyZ2luLWxlZnQ6IDBweDsNCgkJbWFyZ2luLXRvcDogNDBweDsNCgl9DQoJLmhvd193b3JrX2FyZWEgLnJvd3sNCgkJbWFyZ2luLWJvdHRvbTogLTUwcHg7DQoJfQ0KCS5ibG9nX2xpZnRfc2lkZWJhciB7DQoJCXBhZGRpbmctcmlnaHQ6IDE1cHg7DQoJfQ0KCS5ibG9nX3JpZ2h0X3NpZGViYXJ7DQoJCW1hcmdpbi10b3A6IDUwcHg7DQoJfQ0KCS53X2NvbnRlbnRfdHdvIHAgYnIgew0KCQlkaXNwbGF5OiBub25lOw0KCX0NCgkud2VsY29tZV9hcmVhIC5jb2wtbWQtNnsNCgkJbWFyZ2luLWJvdHRvbTogMzBweDsNCgl9DQoJLndlbGNvbWVfYXJlYSAucm93ew0KCQltYXJnaW4tYm90dG9tOiAtMzBweDsNCgl9DQoJLndlbGNvbWVfaXRlbSAudGl0bGVfY29sb3IgYnIgew0KCQlkaXNwbGF5OiBub25lOw0KCX0NCgkudmlkZW9faW1nX3R3byB7DQoJCW1hcmdpbi1yaWdodDogMHB4Ow0KCX0NCgkudmlkZW9faW1nX3R3byBpbWcgew0KCQl3aWR0aDogMTAwJTsNCgl9DQoJLnJlY2VudF9tYXJrZXRfdGV4dHsNCgkJbWFyZ2luLXRvcDogNDBweDsNCgl9DQoJLmJyb2tlcl9hcmVhIC5jb2wtbWQtNHsNCgkJbWFyZ2luLWJvdHRvbTogMzBweDsNCgl9DQoJLmJyb2tlcl9hcmVhIC5yb3d7DQoJCW1hcmdpbi1ib3R0b206IC0zMHB4Ow0KCX0NCiAgICAud29ya19zdGVwew0KICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4Ow0KICAgIH0NCiAgICAuaGVyb19iYW5uZXJfYXJlYSAudmlkZW9faW1new0KICAgICAgICBtYXJnaW4tdG9wOiA1MHB4Ow0KICAgIH0NCiAgICAuZXhwZXJ0aXNlX3RleHR7DQogICAgICAgIG1hcmdpbi10b3A6IDYwcHg7ICAgDQogICAgfQ0KICAgIC53ZWxjb21lX2FyZWFfdHdvIC5leHBlcnRpc2VfaXRlbXsNCiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsNCiAgICB9DQogICAgLndlbGNvbWVfYXJlYV90d28gLmV4cGVydGlzZV9hcmVhew0KICAgICAgICBtYXJnaW4tYm90dG9tOiAtNTBweDsNCiAgICB9DQogICAgLnNwZWFrZXJzX2V2ZW50X2l0ZW17DQogICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7DQogICAgfQ0KICAgIC5sZWFybmluZ19pbWcgaW1new0KICAgICAgICB3aWR0aDogMTAwJTsNCiAgICB9DQogICAgLmxlYXJuaW5nX2NvbnRlbnR7DQogICAgICAgIHBhZGRpbmc6IDcwcHggMjVweDsNCiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDsNCiAgICB9DQogICAgLmludmVzdF9hcmVhIC5tZWRpYXsNCiAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgfQ0KICAgIC5pbnZlc3RfYXJlYSAuaW52ZXN0b3J7DQogICAgICAgIHBhZGRpbmctcmlnaHQ6IDBweDsNCiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOw0KICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7DQogICAgfQ0KICAgIC5pbnZlc3RfYXJlYSAubWVkaWEtYm9keXsNCiAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7DQogICAgfQ0KICAgIC5pbnZlc3RfYXJlYSAudGl0bGVfc3sNCiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7DQogICAgfQ0KICAgIC5zcGVha2Vyc19ldmVudF9pdGVtIGltZ3sNCiAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgfQ0KICAgIC5leGNoYW5nZV9hcmVhIC5yb3d7DQogICAgICAgIG1hcmdpbi1ib3R0b206IC0zMHB4Ow0KICAgIH0NCiAgICAuZXhjaGFuZ2VfYXJlYSAuZXhjaGFuZ2VfaXRlbXsNCiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsNCiAgICB9DQogICAgLmVycm9yX2NvbnRlbnQgaDJ7DQogICAgICAgIGZvbnQtc2l6ZTogNDJweDsNCiAgICB9DQogICAgLmNvaW5fc2xpZGVyX2ltZ3sNCiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50Ow0KICAgIH0NCiAgICAubmF2YmFyLWNvbGxhcHNlew0KICAgICAgICBtYXgtaGVpZ2h0OiAyODBweDsNCiAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsOw0KICAgIH0NCiAgICAubmF2YmFyIC5uYXYgLnNlYXJjaF9kcm9wZG93biAuc2VhcmNoew0KICAgICAgICBvcGFjaXR5OiAxOw0KICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7DQogICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7DQogICAgICAgIHRvcDogMDsNCiAgICAgICAgcmlnaHQ6IGF1dG87DQogICAgICAgIGxlZnQ6IDA7DQogICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICBtYXJnaW46IDBweDsNCiAgICB9DQogICAgLm5hdmJhcl9maXhlZCAubmF2YmFyIC5uYXYgLm5hdi1pdGVtID4gYXsNCiAgICAgICAgY29sb3I6ICNmZmY7DQogICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4Ow0KICAgIH0NCiAgICAuY29tbWluZ3Nvb25fc2VjdGlvbiAudGltZXJ7DQogICAgICAgIG1heC13aWR0aDogMTAwJTsNCiAgICB9DQogICAgLmNvbW1pbmdzb29uX3NlY3Rpb24gLnRpbWVyX19zZWN0aW9uIC50aW1lcl9fbGFiZWx7DQogICAgICAgIGZvbnQtc2l6ZTogMjBweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7DQogICAgICAgIHBhZGRpbmctdG9wOiA1cHg7DQogICAgfQ0KICAgIC5jb21taW5nc29vbl9zZWN0aW9uIC50aW1lcl9fc2VjdGlvbiAudGltZXJfX251bWJlciB7DQogICAgICAgIGZvbnQtc2l6ZTogNDVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7DQogICAgfQ0KICAgIC5jb21taW5nc29vbl9zZWN0aW9uIC50aW1lcl9fc2VjdGlvbiB7DQogICAgICAgIHdpZHRoOiAxNDBweDsNCiAgICAgICAgaGVpZ2h0OiAxNDBweDsNCiAgICB9DQogICAgLmNvbW1pbmdzb29uX3NlY3Rpb24gcHsNCiAgICAgICAgZm9udC1zaXplOiAyMHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMzBweDsNCiAgICB9DQp9DQoNCkBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsNCiAgICAuaGVhZGVyX3RvcCAuaGVhZGVyX3RvcF9pbm5lciB1bCBsaSBhOmJlZm9yZXsNCiAgICAgICAgbGVmdDogLTEwcHg7DQogICAgfQ0KICAgIC5oZWFkZXJfdG9wIC5oZWFkZXJfdG9wX2lubmVyIHVsIGxpICsgbGkgew0KICAgICAgICBtYXJnaW4tbGVmdDogMTVweDsNCiAgICB9DQogICAgLmhlYWRlcl90b3AgLmhlYWRlcl90b3BfaW5uZXJ7DQogICAgICAgIGZvbnQtc2l6ZTogMTJweDsNCiAgICB9DQogICAgLnNlbGxfY29udGVudHsNCiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsNCiAgICB9DQogICAgLmV4cGVydGlzZV9pdGVtX3R3byAuZXhwZXJ0aXNlX2NvbnRlbnQuYm90dG9tX3RleHQgew0KICAgICAgICB0b3A6IDc3JTsNCiAgICB9DQogICAgLmdldF9tb3JlX3R3byAubWVkaWF7DQogICAgICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIH0NCiAgICAuZ2V0X21vcmVfdHdvIC5tZWRpYSBoMnsNCiAgICAgICAgcGFkZGluZy1yaWdodDogMHB4Ow0KICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsNCiAgICB9DQogICAgLmdldF9tb3JlX3R3byAubWVkaWEgLm1lZGlhLWJvZHl7DQogICAgICAgIHBhZGRpbmctbGVmdDogMHB4Ow0KICAgICAgICBib3JkZXI6IDBweDsNCiAgICB9DQogICAgLmdldF9tb3JlX2FyZWF7DQogICAgICAgIHBhZGRpbmc6IDYwcHggMHB4Ow0KICAgIH0NCiAgICAuc2VjdGlvbl90aXRsZV90d28gLnRpdGxlX3B7DQogICAgICAgIHBhZGRpbmctdG9wOiAzMHB4Ow0KICAgIH0NCgkuYmxvZ19pdGVtcyAuYnJlYWRjcnVtYiBsaSB7DQoJCWZvbnQ6IDcwMCAxNXB4LzI5cHggIkxhdG8iLCBzYW5zLXNlcmlmOw0KCX0NCiAgICAuYmxvZ19pdGVtcyBoNiB7DQoJCWZvbnQ6IDYwMCAxNXB4LzIwcHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOw0KCX0NCgkudGl0bGVfaDIgew0KCQlmb250OiA3MDAgMjhweC80MHB4ICJQb3BwaW5zIiwgc2Fucy1zZXJpZjsNCgl9DQoJLmNob29zZV9mb3JtIC5pbnB1dC1mb3JtICsgLmlucHV0LWZvcm0gew0KCQltYXJnaW4tbGVmdDogMHB4Ow0KCQltYXJnaW4tYm90dG9tOiAwcHg7DQoJfQ0KCS5jaG9vc2VfZm9ybSAuaW5wdXQtZm9ybSBsYWJlbCB7DQoJCWRpc3BsYXk6IGJsb2NrOw0KCX0NCgkuY2hvb3NlX2Zvcm0gLmlucHV0LWZvcm0gew0KCQlkaXNwbGF5OiBibG9jazsNCgkJbWFyZ2luLWJvdHRvbTogMzBweDsNCgl9DQoJLmNob29zZV9mIHsNCgkJbWFyZ2luLWxlZnQ6IDBweDsNCgl9DQoJLmZpcnN0X2lucHV0IHsNCgkJd2lkdGg6IDEwMCU7DQoJfQ0KCS5zZWNvbmRfaW5wdXQgew0KCQl3aWR0aDogMTAwJTsNCgl9DQoJLnJlY2VudF9tYXJrZXRfdGV4dCBoMiB7DQoJCW1hcmdpbi10b3A6IDIwcHg7DQoJfQ0KICAgIC5oX2Jhbm5yX2NvbnRlbnQgaDIgYnJ7DQogICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgfQ0KICAgIC5pbnZlc3RfYXJlYSAuY29udGFjdF9pbmZvIGF7DQogICAgICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgIH0NCiAgICAuaW52ZXN0X2FyZWEgLmNvbnRhY3RfaW5mbyBhICsgYXsNCiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDsNCiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7DQogICAgfQ0KICAgIC5oX2luZm8gYSArIGEsLmhfc29jaWFsX2ljb24gYXsNCiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDsNCiAgICB9DQogICAgLmNhcmVlcl9pdGVtIHsNCgkJbWFyZ2luLXRvcDogMzVweDsNCgl9DQoJLmdldF9tb3JlIHsNCgkJbWFyZ2luLXRvcDogNTBweDsNCgl9DQoJLmNvbGxhdGVyaWFsX2NvbnRlbnQgaDQgew0KCQlwYWRkaW5nOiAzMHB4IDBweCA0MHB4Ow0KCX0NCiAgICAudGVhbV9pdGVtIC50ZWFtX2NvbnRlbnQgew0KICAgICAgICBwYWRkaW5nLXRvcDogNDBweDsNCiAgICB9DQogICAgLmJpeGNvaW5fdGFibGUgdGhlYWQgdHIgdGh7DQogICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDM1cHg7DQogICAgfQ0KICAgIC5leHBlcnRpc2VfaXRlbV90aHJlZSB7DQogICAgICAgIG1hcmdpbi1ib3R0b206IDQ2cHg7DQogICAgfQ0KICAgIC53ZWxjb21lX2FyZWFfdGhyZWUgLmV4cGVydGlzZV9hcmVhIHsNCiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTQ2cHg7DQogICAgfQ0KICAgIC52aWRlb19pdGVtIGltZ3sNCiAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgfQ0KICAgIC52aWRlb19pdGVtew0KICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4Ow0KICAgIH0NCiAgICAuY29sbGF0ZXJhbF9hcmVhIC52aWRlb19pdGVtew0KICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7DQogICAgfQ0KICAgIC5yX2ZvcnVtcyAuaXRlbXsNCiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsNCiAgICB9DQogICAgLm1hc3Rlcm5vZGVzIC5tYXRlcm5vZGVzX2l0ZW0gKyAubWF0ZXJub2Rlc19pdGVtIHsNCiAgICAgICAgbWFyZ2luLXRvcDogMHB4Ow0KICAgIH0NCiAgICAubWFzdGVybm9kZXMgLm1hdGVybm9kZXNfaXRlbXsNCiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsNCiAgICB9DQogICAgLm5ldHdvcmtfc3RhdHVzIC50aGVtZV9idG5fdHdvew0KICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4Ow0KICAgIH0NCiAgICAubWluaW5nX3RleHQgcHsNCiAgICAgICAgcGFkZGluZzogMHB4IDBweCA0MHB4Ow0KICAgIH0NCiAgICAubWluaW5nX3RleHQgLnRoZW1lX2J0bl90d297DQogICAgICAgIG1hcmdpbi10b3A6IDE1cHg7DQogICAgfQ0KICAgIC5mYXEtYWNjb3JkaW9uIC5jYXJkIC5wYW5lbC1ib2R5ew0KICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7DQogICAgfQ0KICAgIC5nZXRfbW9yZV90d297DQogICAgICAgIG1hcmdpbi10b3A6IDBweDsNCiAgICB9DQogICAgLmNvbnRhY3RfYWRkcmVzc3sNCiAgICAgICAgbWFyZ2luLXRvcDogNTBweDsNCiAgICB9DQogICAgLmNvbnRhY3RfYWRkcmVzcyAuY19hZGRyZXNzX2l0ZW0gKyAuY19hZGRyZXNzX2l0ZW0gew0KICAgICAgICBtYXJnaW4tdG9wOiAzMHB4Ow0KICAgIH0NCiAgICAuY29tbWluZ3Nvb25fc2VjdGlvbnsNCiAgICAgICAgbWluLWhlaWdodDogMTAwJTsNCiAgICB9DQogICAgLmNvbW1pbmdzb29uX3NlY3Rpb24gaDJ7DQogICAgICAgIGZvbnQtc2l6ZTogNTBweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDU1cHg7DQogICAgfQ0KICAgIC5jb21taW5nc29vbl9zZWN0aW9uIC50aW1lcl9fc2VjdGlvbnsNCiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweDsNCiAgICB9DQogICAgLmNvbW1pbmdzb29uX3NlY3Rpb24gLnRpbWVyew0KICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7DQogICAgfQ0KICAgIC5jb21taW5nc29vbl9zZWN0aW9uIHAgew0KICAgICAgICBmb250LXNpemU6IDE3cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAyOXB4Ow0KICAgIH0NCiAgICAuY29tbWluZ3Nvb25fc2VjdGlvbiBwIGJyew0KICAgICAgICBkaXNwbGF5OiBub25lOw0KICAgIH0NCiAgICAuY29tbWluZ3Nvb25fc2VjdGlvbnsNCiAgICAgICAgcGFkZGluZzogMTAwcHggMHB4Ow0KICAgIH0NCn0NCkBtZWRpYSAobWF4LXdpZHRoOjU3NnB4KXsNCiAgICAubmF2YmFyLWNvbGxhcHNlew0KICAgICAgICBtYXJnaW4tbGVmdDogLTE1cHg7DQogICAgICAgIG1hcmdpbi1yaWdodDogLTE1cHg7DQogICAgfQ0KICAgIC5nZXRfbW9yZSAubWVkaWF7DQogICAgICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgfQ0KICAgIC5nZXRfbW9yZSAubWVkaWEgLm1lZGlhLWJvZHl7DQogICAgICAgIHBhZGRpbmctbGVmdDogMHB4Ow0KICAgICAgICBib3JkZXI6IDBweDsNCiAgICAgICAgcGFkZGluZy10b3A6IDI1cHg7DQogICAgfQ0KICAgIC5nZXRfbW9yZV90d297DQogICAgICAgIHBhZGRpbmc6IDBweDsNCiAgICB9DQogICAgLmdldF9tb3JlX3R3byAubWVkaWEgLm1lZGlhLWJvZHl7DQogICAgICAgIHBhZGRpbmctdG9wOiAwcHg7DQogICAgfQ0KICAgIC5nZXRfbW9yZV90d28gLnRleHQtcmlnaHQsLmNsaWVudHNfc2xpZGVyew0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsNCiAgICB9DQogICAgLnNlbGxfY29udGVudF90d28gaDJ7DQogICAgICAgIGZvbnQtc2l6ZTogMzBweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7DQogICAgfQ0KICAgIC5nZXRfbW9yZSAubWVkaWEgLm1lZGlhLWJvZHkgaDJ7DQogICAgICAgIGZvbnQtc2l6ZTogMjhweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7DQogICAgfQ0KCS5iYW5uZXJfY29udGVudCAuYnJfdGl0bGUgew0KCQlmb250LXNpemU6IDQwcHg7DQoJCWxpbmUtaGVpZ2h0OiA1MHB4Ow0KCX0NCgkuc2VjdGlvbl90aXRsZSBoMiB7DQoJCWZvbnQ6IDYwMCAyNnB4LzM2cHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOw0KCX0NCgkud2VsY29tZV9jb250ZW50IC5wX3RleHQgew0KCQlmb250OiA0MDAgMTRweC8yNnB4ICJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOw0KCX0NCgkud2VsY29tZV9hcmVhIHsNCgkJcGFkZGluZzogNzBweCAwcHg7DQoJfQ0KCS50aXRsZV9wIHsNCgkJZm9udDogNDAwIDE4cHgvMjZweCAiTG9yYSIsIHNlcmlmOw0KCQlmb250LXN0eWxlOiBpdGFsaWM7DQoJfQ0KCS52aWRlb19hcmVhIHsNCgkJcGFkZGluZzogNzBweCAwcHg7DQoJfQ0KCS50ZWFtX21lbWJlciB7DQoJCW1heC13aWR0aDogMjcwcHg7DQoJCW1hcmdpbjogMHB4IGF1dG8gMzBweDsNCgl9DQoJLmJsb2dfaXRlbXMgaDYgew0KCQlkaXNwbGF5OiBibG9jazsNCgl9DQoJLmJsb2dfaXRlbXMgLmJyZWFkY3J1bWIgew0KCQlmbG9hdDogbm9uZTsNCgkJcGFkZGluZy1sZWZ0OiAwcHg7DQoJCXBhZGRpbmctdG9wOiAwcHg7DQoJCXBhZGRpbmctcmlnaHQ6IDBweDsNCgl9DQoJLmJsb2dfYXJlYSB7DQoJCXBhZGRpbmc6IDcwcHggMHB4Ow0KCX0NCgkuc19jb21tZW50X2xpc3RfaW5uZXIgLm1lZGlhIC5tZWRpYS1ib2R5IC5tZWRpYSB7DQoJCW1hcmdpbi1sZWZ0OiAtOTlweDsNCgl9DQoJLnNfY29tbWVudF9saXN0X2lubmVyIC5tZWRpYSB7DQoJCXBhZGRpbmc6IDI1cHggMTVweCAyMHB4IDI1cHg7DQoJfQ0KCS5ibG9nX2l0ZW1zIC5ibG9nX3RpdHRsZSB7DQoJCWZvbnQ6IDYwMCAyMHB4LzMwcHggIlBvcHBpbnMiLCBzYW5zLXNlcmlmOw0KCX0NCgkucmVjZW50X21hcmtldF9hcmVhIHsNCgkJcGFkZGluZzogNzBweCAwcHg7DQoJfQ0KCS5icm9rZXJfYXJlYSAuY29sLW1kLTR7DQoJCW1heC13aWR0aDogMjAwcHg7DQoJCWRpc3BsYXk6IGJsb2NrOw0KCQltYXJnaW46IDBweCBhdXRvIDMwcHg7DQoJfQ0KCS5icm9rZXJfYXJlYSB7DQoJCXBhZGRpbmc6IDcwcHggMHB4Ow0KCX0NCiAgICAuaF9iYW5ucl9jb250ZW50IGgyIHsNCiAgICAgICAgZm9udC1zaXplOiA0MHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogNTBweDsNCiAgICB9DQogICAgLmhfYmFubnJfY29udGVudCBoNXsNCiAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgIH0NCiAgICAuaGVyb19iYW5uZXJfYXJlYSB7DQogICAgICAgIHBhZGRpbmc6IDE4MHB4IDBweCAxMDBweDsNCiAgICB9DQoJLmJhbm5lcl9jb250ZW50IC5icl90aXRsZSB7DQoJCWZvbnQtc2l6ZTogMzJweDsNCgkJbGluZS1oZWlnaHQ6IDQycHg7DQoJfQ0KCS5jYXJlZXJfdmFsdWVfYXJlYSB7DQoJCXBhZGRpbmc6IDcwcHggMHB4IDcwcHg7DQoJfQ0KCS52aWRlb19pdGVtcyB7DQoJCW1heC13aWR0aDogMzcwcHg7DQoJCW1hcmdpbjogMHB4IGF1dG8gNDVweDsNCgl9DQogICAgLnJfZm9ydW1zIC5pdGVtLC5leF9sb2dvew0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgfQ0KICAgIC5leGNoYW5nZV9pdGVtew0KICAgICAgICBwYWRkaW5nOiA2MHB4IDE1cHg7DQogICAgfQ0KICAgIC5uZXR3b3JrX3N0YXR1cyBwIHsNCiAgICAgICAgZm9udC1zaXplOiAyMnB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMzNweDsNCiAgICB9DQogICAgLmhpcmVfY29udGVudHsNCiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgICANCiAgICB9DQogICAgLmVycm9yX2NvbnRlbnQgaDF7DQogICAgICAgIGZvbnQtc2l6ZTogMTgwcHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxMjBweDsNCiAgICB9DQogICAgLmVycm9yX3BhZ2VfYXJlYSB7DQogICAgICAgIG1pbi1oZWlnaHQ6IDY1MHB4Ow0KICAgIH0NCiAgICAuc2xpZGVyX2J1dHRvbl90d28gLnNsaWRlcl9idG4udGhlbWVfYnRuew0KICAgICAgICBkaXNwbGF5OiBub25lOw0KICAgIH0NCiAgICAudGhlbWVfYnRuX3RocmVlew0KICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsNCiAgICB9DQogICAgLnNsaWRlcl9idXR0b25fdHdvIC52aWRlb19idG57DQogICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7DQogICAgfQ0KICAgIC5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoMyksLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQgLmNvbnZlcnRlcl9pbmZvIC5IUzFtYWluQ29udGFpbmVyIHRib2R5IHRyIHRkOm50aC1jaGlsZCgyKSwuY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodCAuY29udmVydGVyX2luZm8gLkhTMW1haW5Db250YWluZXIgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKDUpLC5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoNil7DQogICAgICAgIHdpZHRoOiA0OCU7DQogICAgfQ0KICAgIC5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoNCl7DQogICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgfQ0KICAgIC5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0IC5jb252ZXJ0ZXJfaW5mbyAuSFMxbWFpbkNvbnRhaW5lciB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoNil7DQogICAgICAgIHRvcDogNzVweDsNCiAgICAgICAgbGVmdDogMDsNCiAgICB9DQogICAgLmN1cnJlbmN5X2NvbnZlcnRlcl9hcmVhIC5jb252ZXJ0ZXJfcmlnaHQgLmNvbnZlcnRlcl9pbmZvIC5IUzFtYWluQ29udGFpbmVyIHRib2R5IHRyIHRkOm50aC1jaGlsZCgyKXsNCiAgICAgICAgdG9wOiA3NXB4Ow0KICAgIH0NCiAgICAuY3VycmVuY3lfY29udmVydGVyX2FyZWEgLmNvbnZlcnRlcl9yaWdodCAuY29udmVydGVyX2luZm8gLkhTMW1haW5Db250YWluZXIgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKDUpew0KICAgICAgICBsZWZ0OmF1dG87DQogICAgICAgIHJpZ2h0OiAwOw0KICAgICAgICBmb250LXNpemU6IDE4cHg7DQogICAgfQ0KICAgIC5jdXJyZW5jeV9jb252ZXJ0ZXJfYXJlYSAuY29udmVydGVyX3JpZ2h0ew0KICAgICAgICBwYWRkaW5nOiA5MHB4IDE1cHggMjIwcHg7DQogICAgfQ0KICAgIC5hYm91dF93aWRnZXQgLndpZGdldF9pbm5lcnsNCiAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgfQ0KICAgIC5mX3dpZGdldCB7DQogICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7DQogICAgfQ0KICAgIC5mX3dpZGdldCAuZl90aXRsZXsNCiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsNCiAgICB9DQogICAgLmZvb3Rlcl93aWRnZXQgew0KICAgICAgICBwYWRkaW5nOiA4MHB4IDBweCAzM3B4Ow0KICAgIH0NCn0NCg0KQG1lZGlhIChtYXgtd2lkdGg6NDgwcHgpew0KICAgIC5jbGllbnRzX2xvZ29fYXJlYSAuY2xpZW50c19zbGlkZXJ7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICB9DQogICAgLmV4cGVydGlzZV9pdGVtX3R3byAuZXhwZXJ0aXNlX2NvbnRlbnQuYm90dG9tX3RleHQgew0KICAgICAgICB0b3A6IDY4JTsNCiAgICB9DQogICAgLmdldF9tb3JlIC5yZWFkX2J0bnsNCiAgICAgICAgcGFkZGluZzogMHB4IDE0cHg7DQogICAgfQ0KICAgIC50ZXN0aW1vbmlhbF9pdGVtIC5tZWRpYXsNCiAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgfQ0KICAgIC50ZXN0aW1vbmlhbF9pdGVtIC5tZWRpYSAubWVkaWEtbGVmdHsNCiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7DQogICAgfQ0KICAgIC5jb252ZXJ0ZXJ7DQogICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsNCiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDsNCiAgICB9DQogICAgLmdyb3dpbmdfZmFjdHMgdWwgbGl7DQogICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICBmbG9hdDogbm9uZTsNCiAgICB9DQogICAgLmhlYWRlcl90b3AgLmhlYWRlcl90b3BfaW5uZXJ7DQogICAgICAgIGRpc3BsYXk6IG5vbmU7DQogICAgfQ0KCS53ZWxjb21lX2NvbnRlbnQgLnJlYWRfYnRuIHsNCgkJbWFyZ2luLWxlZnQ6IDBweDsNCgkJZGlzcGxheTogYmxvY2s7DQoJfQ0KCS53ZWxjb21lX2NvbnRlbnQgLnRoZW1lX2J0biB7DQoJCWRpc3BsYXk6IGJsb2NrOw0KCQl3aWR0aDogMTAwJTsNCgkJbWFyZ2luLWJvdHRvbTogMTVweDsNCgl9DQoJLnR3b19jb2x1bW5fc2FtcGxlIC50d29fY29sdW1uX2l0ZW0gew0KCQltYXgtd2lkdGg6IDEwMCU7DQoJCWZsb2F0OiBub25lOw0KCQl3aWR0aDogY2FsYygxMDAlIC8gMSk7DQoJCW1hcmdpbi1sZWZ0OiAwcHg7DQoJCXBhZGRpbmctcmlnaHQ6IDBweDsNCgl9DQoJLnR3b19jb2x1bW5fc2FtcGxlIC50d29fY29sdW1uX2l0ZW0gKyAudHdvX2NvbHVtbl9pdGVtIHsNCgkJbWFyZ2luLWxlZnQ6IDBweDsNCgkJcGFkZGluZy1sZWZ0OiAwcHg7DQoJCXBhZGRpbmctcmlnaHQ6IDBweDsNCgl9DQoJLmJsb2dfaXRlbXMgLmJyZWFkY3J1bWIgbGkgew0KCQlkaXNwbGF5OiBibG9jazsNCgl9DQoJLmJyZWFkY3J1bWJfZGF0ZSAuYnJlYWRjcnVtYnsNCgkJZGlzcGxheTogYmxvY2s7DQoJfQ0KCS5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUsLmhlYWRlcl90b3BfdHdvew0KCQlkaXNwbGF5OiBub25lOw0KCX0NCgkuc19jb21tZW50X2xpc3RfaW5uZXIgLm1lZGlhIHsNCgkJZGlzcGxheTogYmxvY2s7DQoJfQ0KCS5zX2NvbW1lbnRfbGlzdF9pbm5lciAubWVkaWEgLm1lZGlhLWJvZHkgew0KCQlwYWRkaW5nLWxlZnQ6IDBweDsNCgkJbWFyZ2luLXRvcDogMjBweDsNCgl9DQoJLnNfY29tbWVudF9saXN0X2lubmVyIC5tZWRpYSAubWVkaWEtYm9keSAubWVkaWEgew0KCQltYXJnaW4tbGVmdDogMHB4Ow0KCX0NCiAgICAuaF9iYW5ucl9jb250ZW50IC52aWRlb3sNCiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDsNCiAgICB9DQogICAgLmdldF9zdWJzY3JpYl9mb3Jtew0KICAgICAgICBkaXNwbGF5OiBibG9jazsNCiAgICB9DQogICAgLmdldF9zdWJzY3JpYl9mb3JtIC5mb3JtLWNvbnRyb2x7DQogICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICBib3JkZXItcmFkaXVzOiAzcHggIWltcG9ydGFudDsNCiAgICB9DQogICAgLmdldF9zdWJzY3JpYl9mb3JtIC5zdWJtaXRfYnRuX2J7DQogICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICBtYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDNweCAhaW1wb3J0YW50Ow0KICAgIH0NCiAgICAuYnJlYWRjcnVtYl9hcmVhIHsNCgkJcGFkZGluZzogMTM1cHggMHB4IDYycHg7DQoJfQ0KICAgIC5iYW5uZXJfY29udGVudCAuYnJlYWRfY3VtYiB7DQogICAgICAgIG1hcmdpbi10b3A6IDEycHg7DQogICAgfQ0KICAgIC5mZWF0dXJlc19pbmZvIC5mZWF0dXJlc19pdGVtIC5tZWRpYXsNCiAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgfQ0KICAgIC5mZWF0dXJlc19pbmZvIC5mZWF0dXJlc19pdGVtIC5tZWRpYSAubWVkaWEtYm9keXsNCiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7DQogICAgfQ0KICAgIC5hYm91dF90aXRsZTphZnRlcnsNCiAgICAgICAgbWFyZ2luLWxlZnQ6IDEzcHg7DQogICAgfQ0KICAgIC5hYm91dF90aXRsZXsNCiAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgIH0NCiAgICAubmV0d29ya19zdGF0dXMgLm5fY29udGVudCBoMSB7DQogICAgICAgIGZvbnQtc2l6ZTogMzZweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7DQogICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4Ow0KICAgIH0NCiAgICAuZXJyb3JfY29udGVudCAudGhlbWVfYnRuew0KICAgICAgICBwYWRkaW5nOiAwcHggNDBweDsNCiAgICAgICAgZm9udC1zaXplOiAyMHB4Ow0KICAgIH0NCiAgICAuZXJyb3JfY29udGVudCBoMSB7DQogICAgICAgIGZvbnQtc2l6ZTogMTU4cHg7DQogICAgfQ0KICAgIC5lcnJvcl9jb250ZW50IGgyIHsNCiAgICAgICAgZm9udC1zaXplOiAzNHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogNTBweDsNCiAgICB9DQogICAgLmVycm9yX2NvbnRlbnQgcHsNCiAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgIH0NCiAgICAuY29tbWluZ3Nvb25fc2VjdGlvbiAuc3Vic2NyaWJfZm9ybXsNCiAgICAgICAgZGlzcGxheTogYmxvY2s7DQogICAgfQ0KICAgIC5jb21taW5nc29vbl9zZWN0aW9uIC5zdWJzY3JpYl9mb3JtIC5zdWJtaXRfYnRuX2J7DQogICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7DQogICAgfSANCiAgICAuY29tbWluZ3Nvb25fc2VjdGlvbiAudGltZXJfX3NlY3Rpb24gew0KICAgICAgICB3aWR0aDogMTIwcHg7DQogICAgICAgIGhlaWdodDogMTIwcHg7DQogICAgfQ0KICAgIC5jb21taW5nc29vbl9zZWN0aW9uIC50aW1lcl9fc2VjdGlvbiAudGltZXJfX2xhYmVsew0KICAgICAgICBmb250LXNpemU6IDE2cHg7DQogICAgICAgIHBhZGRpbmctdG9wOiAwcHg7DQogICAgfQ0KICAgIC5oX2Jhbm5yX2NvbnRlbnQgLnZpZGVvX2J0bnsNCiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDsNCiAgICAgICAgbWFyZ2luLXRvcDogMTVweDsNCiAgICB9DQp9"}},"time_used":10945,"timings":{"blocked":9931,"dns":0,"connect":0,"send":0,"wait":1014,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/video_icon.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.332Z","timestamp":1785143908332,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/video_icon.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/clients-log/logo2.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.354Z","timestamp":1785143908354,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/clients-log/logo2.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/fonts/revicons/revicons90c690c690c6.woff?5510888","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.807Z","timestamp":1785143926807,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /vendors/revolution/fonts/revicons/revicons90c690c690c6.woff?5510888 HTTP/1.1\r\nHost: scromegatrade.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\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/vendors/revolution/css/settings.css\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/clients-log/logo10.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.349Z","timestamp":1785143908349,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/clients-log/logo10.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/turbopack-18a9de512a1933ad.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.694Z","timestamp":1785143926694,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/turbopack-18a9de512a1933ad.js HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\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: same-origin\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\naccess-control-allow-origin: *\r\nage: 2259313\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"turbopack-18a9de512a1933ad.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\netag: W/\"ee874107586f9203ea70e460428f2bb3\"\r\nlast-modified: Tue, 30 Jun 2026 21:36:51 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/turbopack-18a9de512a1933ad.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::224xg-1782884613047-36a6958ca2eb\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=azV%2BzpBOKRuiNFDaBmY3ce1u%2FTQ88ZkZzC4ms8YxYkJXUSq5y%2FIvE%2BWeDDeqgCDl1tD8GRowy9u%2F89BNG4Vch9%2Flie%2ByP8uDLlSUiRX%2BkRp5lWQAO59HY08xQrFW\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21a8f05d91a0b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\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"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"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":10707,"size_decoded":6500,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (6438)","md5":"ee874107586f9203ea70e460428f2bb3","sha1":"9bfba653884c0499149072efe4824e6170f10271","sha256":"44b3081e3a644e21b57f4155637e1e43563eae2c0f034c6ba9edd6bc9cba26ea","sha512":"7fd5fb8b487d8981ead132093abf93b51a77860cb1d04cd5c233c3e671b7183921080069aac71afb4f5f77a424d02ccdea22e3feba459326eea86d1c6637a09b","ssdeep":"192:D74eFn8/Esp1U91EG5T1uyO9lGdiwMhMlng4W9PZcxkUk1IsiyLxA:D74e2OvO9lG0OlgJZZQLyLxA","tlshash":"6722d8ea33a6f07743af94e6907f4044f1795468145d542c936ce8fa38398ae49e3f27","first_seen":"2026-07-01T05:10:22.643373Z","last_seen":"2026-07-31T06:34:35.53001Z","times_seen":1526,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLHtvdGhlckNodW5rczpbInN0YXRpYy9jaHVua3MvODFhMjk4ZGRjNzQ3MTA3MC5qcyIsInN0YXRpYy9jaHVua3MvOWRmM2I2N2I2MDYxZWE5ZS5qcyIsInN0YXRpYy9jaHVua3MvNDgwY2RlMDhiOGJmZDVjZS5qcyIsInN0YXRpYy9jaHVua3MvNDkxMTQxMGU1MTUzZjBkNy5qcyIsInN0YXRpYy9jaHVua3MvNDgxNWE3NTg2NTdkNGJhZS5qcyJdLHJ1bnRpbWVNb2R1bGVJZHM6Wzk2MzM1XX1dKSwoKCk9PntsZXQgZTtpZighQXJyYXkuaXNBcnJheShnbG9iYWxUaGlzLlRVUkJPUEFDSykpcmV0dXJuO2xldCB0PSIvX25leHQvIixyPShzZWxmLlRVUkJPUEFDS19DSFVOS19TVUZGSVg/P2RvY3VtZW50Py5jdXJyZW50U2NyaXB0Py5nZXRBdHRyaWJ1dGU/Ligic3JjIik/LnJlcGxhY2UoL14oLiooPz1cPyl8Xi4qJCkvLCIiKSl8fCIiLG49bmV3IFdlYWtNYXA7ZnVuY3Rpb24gbyhlLHQpe3RoaXMubT1lLHRoaXMuZT10fWxldCBsPW8ucHJvdG90eXBlLGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxzPSJ1Ij50eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWc7ZnVuY3Rpb24gdShlLHQscil7aS5jYWxsKGUsdCl8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQscil9ZnVuY3Rpb24gYShlLHQpe2xldCByPWVbdF07cmV0dXJuIHJ8fChyPWModCksZVt0XT1yKSxyfWZ1bmN0aW9uIGMoZSl7cmV0dXJue2V4cG9ydHM6e30sZXJyb3I6dm9pZCAwLGlkOmUsbmFtZXNwYWNlT2JqZWN0OnZvaWQgMH19ZnVuY3Rpb24gZihlLHQpe3UoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSkscyYmdShlLHMse3ZhbHVlOiJNb2R1bGUifSk7bGV0IHI9MDtmb3IoO3I8dC5sZW5ndGg7KXtsZXQgbj10W3IrK10sbz10W3IrK107aWYoIm51bWJlciI9PXR5cGVvZiBvKWlmKDA9PT1vKXUoZSxuLHt2YWx1ZTp0W3IrK10sZW51bWVyYWJsZTohMCx3cml0YWJsZTohMX0pO2Vsc2UgdGhyb3cgRXJyb3IoYHVuZXhwZWN0ZWQgdGFnOiAke299YCk7ZWxzZSJmdW5jdGlvbiI9PXR5cGVvZiB0W3JdP3UoZSxuLHtnZXQ6byxzZXQ6dFtyKytdLGVudW1lcmFibGU6ITB9KTp1KGUsbix7Z2V0Om8sZW51bWVyYWJsZTohMH0pfU9iamVjdC5zZWFsKGUpfWwucz1mdW5jdGlvbihlLHQpe2xldCByLG47bnVsbCE9dD9uPShyPWEodGhpcy5jLHQpKS5leHBvcnRzOihyPXRoaXMubSxuPXRoaXMuZSksci5uYW1lc3BhY2VPYmplY3Q9bixmKG4sZSl9LGwuaj1mdW5jdGlvbihlLHQpe3ZhciByLG87bGV0IGwscyx1O251bGwhPXQ/cz0obD1hKHRoaXMuYyx0KSkuZXhwb3J0czoobD10aGlzLm0scz10aGlzLmUpO2xldCBjPShyPWwsbz1zLCh1PW4uZ2V0KHIpKXx8KG4uc2V0KHIsdT1bXSksci5leHBvcnRzPXIubmFtZXNwYWNlT2JqZWN0PW5ldyBQcm94eShvLHtnZXQoZSx0KXtpZihpLmNhbGwoZSx0KXx8ImRlZmF1bHQiPT09dHx8Il9fZXNNb2R1bGUiPT09dClyZXR1cm4gUmVmbGVjdC5nZXQoZSx0KTtmb3IobGV0IGUgb2YgdSl7bGV0IHI9UmVmbGVjdC5nZXQoZSx0KTtpZih2b2lkIDAhPT1yKXJldHVybiByfX0sb3duS2V5cyhlKXtsZXQgdD1SZWZsZWN0Lm93bktleXMoZSk7Zm9yKGxldCBlIG9mIHUpZm9yKGxldCByIG9mIFJlZmxlY3Qub3duS2V5cyhlKSkiZGVmYXVsdCI9PT1yfHx0LmluY2x1ZGVzKHIpfHx0LnB1c2gocik7cmV0dXJuIHR9fSkpLHUpOyJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJmMucHVzaChlKX0sbC52PWZ1bmN0aW9uKGUsdCl7KG51bGwhPXQ/YSh0aGlzLmMsdCk6dGhpcy5tKS5leHBvcnRzPWV9LGwubj1mdW5jdGlvbihlLHQpe2xldCByOyhyPW51bGwhPXQ/YSh0aGlzLmMsdCk6dGhpcy5tKS5leHBvcnRzPXIubmFtZXNwYWNlT2JqZWN0PWV9O2xldCBwPU9iamVjdC5nZXRQcm90b3R5cGVPZj9lPT5PYmplY3QuZ2V0UHJvdG90eXBlT2YoZSk6ZT0+ZS5fX3Byb3RvX18saD1bbnVsbCxwKHt9KSxwKFtdKSxwKHApXTtmdW5jdGlvbiBkKGUsdCxyKXtsZXQgbj1bXSxvPS0xO2ZvcihsZXQgdD1lOygib2JqZWN0Ij09dHlwZW9mIHR8fCJmdW5jdGlvbiI9PXR5cGVvZiB0KSYmIWguaW5jbHVkZXModCk7dD1wKHQpKWZvcihsZXQgciBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0KSluLnB1c2gocixmdW5jdGlvbihlLHQpe3JldHVybigpPT5lW3RdfShlLHIpKSwtMT09PW8mJiJkZWZhdWx0Ij09PXImJihvPW4ubGVuZ3RoLTEpO3JldHVybiByJiZvPj0wfHwobz49MD9uLnNwbGljZShvLDEsMCxlKTpuLnB1c2goImRlZmF1bHQiLDAsZSkpLGYodCxuKSx0fWZ1bmN0aW9uIG0oZSl7bGV0IHQ9QihlLHRoaXMubSk7aWYodC5uYW1lc3BhY2VPYmplY3QpcmV0dXJuIHQubmFtZXNwYWNlT2JqZWN0O2xldCByPXQuZXhwb3J0cztyZXR1cm4gdC5uYW1lc3BhY2VPYmplY3Q9ZChyLCJmdW5jdGlvbiI9PXR5cGVvZiByP2Z1bmN0aW9uKC4uLmUpe3JldHVybiByLmFwcGx5KHRoaXMsZSl9Ok9iamVjdC5jcmVhdGUobnVsbCksciYmci5fX2VzTW9kdWxlKX1mdW5jdGlvbiBiKGUpe2xldCB0PWUuaW5kZXhPZigiIyIpOy0xIT09dCYmKGU9ZS5zdWJzdHJpbmcoMCx0KSk7bGV0IHI9ZS5pbmRleE9mKCI/Iik7cmV0dXJuIC0xIT09ciYmKGU9ZS5zdWJzdHJpbmcoMCxyKSksZX1mdW5jdGlvbiB5KCl7bGV0IGUsdDtyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZSgocixuKT0+e3Q9bixlPXJ9KSxyZXNvbHZlOmUscmVqZWN0OnR9fWwuaT1tLGwuQT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5yKGUpKG0uYmluZCh0aGlzKSl9LGwudD0iZnVuY3Rpb24iPT10eXBlb2YgcmVxdWlyZT9yZXF1aXJlOmZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoIlVuZXhwZWN0ZWQgdXNlIG9mIHJ1bnRpbWUgcmVxdWlyZSIpfSxsLnI9ZnVuY3Rpb24oZSl7cmV0dXJuIEIoZSx0aGlzLm0pLmV4cG9ydHN9LGwuZj1mdW5jdGlvbihlKXtmdW5jdGlvbiB0KHQpe2lmKHQ9Yih0KSxpLmNhbGwoZSx0KSlyZXR1cm4gZVt0XS5tb2R1bGUoKTtsZXQgcj1FcnJvcihgQ2Fubm90IGZpbmQgbW9kdWxlICcke3R9J2ApO3Rocm93IHIuY29kZT0iTU9EVUxFX05PVF9GT1VORCIscn1yZXR1cm4gdC5rZXlzPSgpPT5PYmplY3Qua2V5cyhlKSx0LnJlc29sdmU9dD0+e2lmKHQ9Yih0KSxpLmNhbGwoZSx0KSlyZXR1cm4gZVt0XS5pZCgpO2xldCByPUVycm9yKGBDYW5ub3QgZmluZCBtb2R1bGUgJyR7dH0nYCk7dGhyb3cgci5jb2RlPSJNT0RVTEVfTk9UX0ZPVU5EIixyfSx0LmltcG9ydD1hc3luYyBlPT5hd2FpdCB0KGUpLHR9O2xldCBPPVN5bWJvbCgidHVyYm9wYWNrIHF1ZXVlcyIpLGc9U3ltYm9sKCJ0dXJib3BhY2sgZXhwb3J0cyIpLHc9U3ltYm9sKCJ0dXJib3BhY2sgZXJyb3IiKTtmdW5jdGlvbiBDKGUpe2UmJjEhPT1lLnN0YXR1cyYmKGUuc3RhdHVzPTEsZS5mb3JFYWNoKGU9PmUucXVldWVDb3VudC0tKSxlLmZvckVhY2goZT0+ZS5xdWV1ZUNvdW50LS0/ZS5xdWV1ZUNvdW50Kys6ZSgpKSl9bC5hPWZ1bmN0aW9uKGUsdCl7bGV0IHI9dGhpcy5tLG49dD9PYmplY3QuYXNzaWduKFtdLHtzdGF0dXM6LTF9KTp2b2lkIDAsbz1uZXcgU2V0LHtyZXNvbHZlOmwscmVqZWN0OmkscHJvbWlzZTpzfT15KCksdT1PYmplY3QuYXNzaWduKHMse1tnXTpyLmV4cG9ydHMsW09dOmU9PntuJiZlKG4pLG8uZm9yRWFjaChlKSx1LmNhdGNoKCgpPT57fSl9fSksYT17Z2V0OigpPT51LHNldChlKXtlIT09dSYmKHVbZ109ZSl9fTtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiZXhwb3J0cyIsYSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIm5hbWVzcGFjZU9iamVjdCIsYSksZShmdW5jdGlvbihlKXtsZXQgdD1lLm1hcChlPT57aWYobnVsbCE9PWUmJiJvYmplY3QiPT10eXBlb2YgZSl7aWYoTyBpbiBlKXJldHVybiBlO2lmKG51bGwhPWUmJiJvYmplY3QiPT10eXBlb2YgZSYmInRoZW4iaW4gZSYmImZ1bmN0aW9uIj09dHlwZW9mIGUudGhlbil7bGV0IHQ9T2JqZWN0LmFzc2lnbihbXSx7c3RhdHVzOjB9KSxyPXtbZ106e30sW09dOmU9PmUodCl9O3JldHVybiBlLnRoZW4oZT0+e3JbZ109ZSxDKHQpfSxlPT57clt3XT1lLEModCl9KSxyfX1yZXR1cm57W2ddOmUsW09dOigpPT57fX19KSxyPSgpPT50Lm1hcChlPT57aWYoZVt3XSl0aHJvdyBlW3ddO3JldHVybiBlW2ddfSkse3Byb21pc2U6bCxyZXNvbHZlOml9PXkoKSxzPU9iamVjdC5hc3NpZ24oKCk9Pmkocikse3F1ZXVlQ291bnQ6MH0pO2Z1bmN0aW9uIHUoZSl7ZSE9PW4mJiFvLmhhcyhlKSYmKG8uYWRkKGUpLGUmJjA9PT1lLnN0YXR1cyYmKHMucXVldWVDb3VudCsrLGUucHVzaChzKSkpfXJldHVybiB0Lm1hcChlPT5lW09dKHUpKSxzLnF1ZXVlQ291bnQ/bDpyKCl9LGZ1bmN0aW9uKGUpe2U/aSh1W3ddPWUpOmwodVtnXSksQyhuKX0pLG4mJi0xPT09bi5zdGF0dXMmJihuLnN0YXR1cz0wKX07bGV0IFU9ZnVuY3Rpb24oZSl7bGV0IHQ9bmV3IFVSTChlLCJ4Oi8iKSxyPXt9O2ZvcihsZXQgZSBpbiB0KXJbZV09dFtlXTtmb3IobGV0IHQgaW4gci5ocmVmPWUsci5wYXRobmFtZT1lLnJlcGxhY2UoL1s/I10uKi8sIiIpLHIub3JpZ2luPXIucHJvdG9jb2w9IiIsci50b1N0cmluZz1yLnRvSlNPTj0oLi4udCk9PmUscilPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcyx0LHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx2YWx1ZTpyW3RdfSl9O2Z1bmN0aW9uIGooZSx0KXt0aHJvdyBFcnJvcihgSW52YXJpYW50OiAke3QoZSl9YCl9VS5wcm90b3R5cGU9VVJMLnByb3RvdHlwZSxsLlU9VSxsLno9ZnVuY3Rpb24oZSl7dGhyb3cgRXJyb3IoImR5bmFtaWMgdXNhZ2Ugb2YgcmVxdWlyZSBpcyBub3Qgc3VwcG9ydGVkIil9LGwuZz1nbG9iYWxUaGlzO2xldCBSPW8ucHJvdG90eXBlO3ZhciBrLF89KChrPV98fHt9KVtrLlJ1bnRpbWU9MF09IlJ1bnRpbWUiLGtbay5QYXJlbnQ9MV09IlBhcmVudCIsa1trLlVwZGF0ZT0yXT0iVXBkYXRlIixrKTtsZXQgdj1uZXcgTWFwO2wuTT12O2xldCAkPW5ldyBNYXAsUD1uZXcgTWFwO2FzeW5jIGZ1bmN0aW9uIFMoZSx0LHIpe2xldCBuO2lmKCJzdHJpbmciPT10eXBlb2YgcilyZXR1cm4gRShlLHQsSyhyKSk7bGV0IG89ci5pbmNsdWRlZHx8W10sbD1vLm1hcChlPT4hIXYuaGFzKGUpfHwkLmdldChlKSk7aWYobC5sZW5ndGg+MCYmbC5ldmVyeShlPT5lKSlyZXR1cm4gdm9pZCBhd2FpdCBQcm9taXNlLmFsbChsKTtsZXQgaT1yLm1vZHVsZUNodW5rc3x8W10scz1pLm1hcChlPT5QLmdldChlKSkuZmlsdGVyKGU9PmUpO2lmKHMubGVuZ3RoPjApe2lmKHMubGVuZ3RoPT09aS5sZW5ndGgpcmV0dXJuIHZvaWQgYXdhaXQgUHJvbWlzZS5hbGwocyk7bGV0IHI9bmV3IFNldDtmb3IobGV0IGUgb2YgaSlQLmhhcyhlKXx8ci5hZGQoZSk7Zm9yKGxldCBuIG9mIHIpe2xldCByPUUoZSx0LEsobikpO1Auc2V0KG4scikscy5wdXNoKHIpfW49UHJvbWlzZS5hbGwocyl9ZWxzZXtmb3IobGV0IG8gb2Yobj1FKGUsdCxLKHIucGF0aCkpLGkpKVAuaGFzKG8pfHxQLnNldChvLG4pfWZvcihsZXQgZSBvZiBvKSQuaGFzKGUpfHwkLnNldChlLG4pO2F3YWl0IG59Ui5sPWZ1bmN0aW9uKGUpe3JldHVybiBTKDEsdGhpcy5tLmlkLGUpfTtsZXQgVD1Qcm9taXNlLnJlc29sdmUodm9pZCAwKSxBPW5ldyBXZWFrTWFwO2Z1bmN0aW9uIEUodCxyLG4pe2xldCBvPWUubG9hZENodW5rQ2FjaGVkKHQsbiksbD1BLmdldChvKTtpZih2b2lkIDA9PT1sKXtsZXQgZT1BLnNldC5iaW5kKEEsbyxUKTtsPW8udGhlbihlKS5jYXRjaChlPT57bGV0IG87c3dpdGNoKHQpe2Nhc2UgMDpvPWBhcyBhIHJ1bnRpbWUgZGVwZW5kZW5jeSBvZiBjaHVuayAke3J9YDticmVhaztjYXNlIDE6bz1gZnJvbSBtb2R1bGUgJHtyfWA7YnJlYWs7Y2FzZSAyOm89ImZyb20gYW4gSE1SIHVwZGF0ZSI7YnJlYWs7ZGVmYXVsdDpqKHQsZT0+YFVua25vd24gc291cmNlIHR5cGU6ICR7ZX1gKX1sZXQgbD1FcnJvcihgRmFpbGVkIHRvIGxvYWQgY2h1bmsgJHtufSAke299JHtlP2A6ICR7ZX1gOiIifWAsZT97Y2F1c2U6ZX06dm9pZCAwKTt0aHJvdyBsLm5hbWU9IkNodW5rTG9hZEVycm9yIixsfSksQS5zZXQobyxsKX1yZXR1cm4gbH1mdW5jdGlvbiBLKGUpe3JldHVybmAke3R9JHtlLnNwbGl0KCIvIikubWFwKGU9PmVuY29kZVVSSUNvbXBvbmVudChlKSkuam9pbigiLyIpfSR7cn1gfVIuTD1mdW5jdGlvbihlKXtyZXR1cm4gRSgxLHRoaXMubS5pZCxlKX0sUi5SPWZ1bmN0aW9uKGUpe2xldCB0PXRoaXMucihlKTtyZXR1cm4gdD8uZGVmYXVsdD8/dH0sUi5QPWZ1bmN0aW9uKGUpe3JldHVybmAvUk9PVC8ke2U/PyIifWB9LFIuYj1mdW5jdGlvbihlKXtsZXQgdD1uZXcgQmxvYihbYHNlbGYuVFVSQk9QQUNLX1dPUktFUl9MT0NBVElPTiA9ICR7SlNPTi5zdHJpbmdpZnkobG9jYXRpb24ub3JpZ2luKX07CnNlbGYuVFVSQk9QQUNLX0NIVU5LX1NVRkZJWCA9ICR7SlNPTi5zdHJpbmdpZnkocil9OwpzZWxmLlRVUkJPUEFDS19ORVhUX0NIVU5LX1VSTFMgPSAke0pTT04uc3RyaW5naWZ5KGUucmV2ZXJzZSgpLm1hcChLKSxudWxsLDIpfTsKaW1wb3J0U2NyaXB0cyguLi5zZWxmLlRVUkJPUEFDS19ORVhUX0NIVU5LX1VSTFMubWFwKGMgPT4gc2VsZi5UVVJCT1BBQ0tfV09SS0VSX0xPQ0FUSU9OICsgYykucmV2ZXJzZSgpKTtgXSx7dHlwZToidGV4dC9qYXZhc2NyaXB0In0pO3JldHVybiBVUkwuY3JlYXRlT2JqZWN0VVJMKHQpfTtsZXQgeD0vXC5qcyg/Olw/W14jXSopPyg/OiMuKik/JC8sTj0vXC5jc3MoPzpcP1teI10qKT8oPzojLiopPyQvO2Z1bmN0aW9uIE0oZSl7cmV0dXJuIE4udGVzdChlKX1sLnc9ZnVuY3Rpb24odCxyLG4pe3JldHVybiBlLmxvYWRXZWJBc3NlbWJseSgxLHRoaXMubS5pZCx0LHIsbil9LGwudT1mdW5jdGlvbih0LHIpe3JldHVybiBlLmxvYWRXZWJBc3NlbWJseU1vZHVsZSgxLHRoaXMubS5pZCx0LHIpfTtsZXQgTD17fTtsLmM9TDtsZXQgQj0oZSx0KT0+e2xldCByPUxbZV07aWYocil7aWYoci5lcnJvcil0aHJvdyByLmVycm9yO3JldHVybiByfXJldHVybiBxKGUsXy5QYXJlbnQsdC5pZCl9O2Z1bmN0aW9uIHEoZSx0LHIpe2xldCBuPXYuZ2V0KGUpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBuKXRocm93IEVycm9yKGZ1bmN0aW9uKGUsdCxyKXtsZXQgbjtzd2l0Y2godCl7Y2FzZSAwOm49YGFzIGEgcnVudGltZSBlbnRyeSBvZiBjaHVuayAke3J9YDticmVhaztjYXNlIDE6bj1gYmVjYXVzZSBpdCB3YXMgcmVxdWlyZWQgZnJvbSBtb2R1bGUgJHtyfWA7YnJlYWs7Y2FzZSAyOm49ImJlY2F1c2Ugb2YgYW4gSE1SIHVwZGF0ZSI7YnJlYWs7ZGVmYXVsdDpqKHQsZT0+YFVua25vd24gc291cmNlIHR5cGU6ICR7ZX1gKX1yZXR1cm5gTW9kdWxlICR7ZX0gd2FzIGluc3RhbnRpYXRlZCAke259LCBidXQgdGhlIG1vZHVsZSBmYWN0b3J5IGlzIG5vdCBhdmFpbGFibGUuYH0oZSx0LHIpKTtsZXQgbD1jKGUpLGk9bC5leHBvcnRzO0xbZV09bDtsZXQgcz1uZXcgbyhsLGkpO3RyeXtuKHMsbCxpKX1jYXRjaChlKXt0aHJvdyBsLmVycm9yPWUsZX1yZXR1cm4gbC5uYW1lc3BhY2VPYmplY3QmJmwuZXhwb3J0cyE9PWwubmFtZXNwYWNlT2JqZWN0JiZkKGwuZXhwb3J0cyxsLm5hbWVzcGFjZU9iamVjdCksbH1mdW5jdGlvbiBJKHIpe2xldCBuLG89ZnVuY3Rpb24oZSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO2xldCByPWRlY29kZVVSSUNvbXBvbmVudCgoInUiPnR5cGVvZiBUVVJCT1BBQ0tfTkVYVF9DSFVOS19VUkxTP1RVUkJPUEFDS19ORVhUX0NIVU5LX1VSTFMucG9wKCk6ZS5nZXRBdHRyaWJ1dGUoInNyYyIpKS5yZXBsYWNlKC9bPyNdLiokLywiIikpO3JldHVybiByLnN0YXJ0c1dpdGgodCk/ci5zbGljZSh0Lmxlbmd0aCk6cn0oclswXSk7cmV0dXJuIDI9PT1yLmxlbmd0aD9uPXJbMV06KG49dm9pZCAwLCFmdW5jdGlvbihlLHQscixuKXtsZXQgbz0xO2Zvcig7bzxlLmxlbmd0aDspe2xldCB0PWVbb10sbj1vKzE7Zm9yKDtuPGUubGVuZ3RoJiYiZnVuY3Rpb24iIT10eXBlb2YgZVtuXTspbisrO2lmKG49PT1lLmxlbmd0aCl0aHJvdyBFcnJvcigibWFsZm9ybWVkIGNodW5rIGZvcm1hdCwgZXhwZWN0ZWQgYSBmYWN0b3J5IGZ1bmN0aW9uIik7aWYoIXIuaGFzKHQpKXtsZXQgbD1lW25dO2ZvcihPYmplY3QuZGVmaW5lUHJvcGVydHkobCwibmFtZSIse3ZhbHVlOiJtb2R1bGUgZXZhbHVhdGlvbiJ9KTtvPG47bysrKXQ9ZVtvXSxyLnNldCh0LGwpfW89bisxfX0ociwwLHYpKSxlLnJlZ2lzdGVyQ2h1bmsobyxuKX1sZXQgVz1uZXcgTWFwO2Z1bmN0aW9uIEgoZSl7bGV0IHQ9Vy5nZXQoZSk7aWYoIXQpe2xldCByLG47dD17cmVzb2x2ZWQ6ITEsbG9hZGluZ1N0YXJ0ZWQ6ITEscHJvbWlzZTpuZXcgUHJvbWlzZSgoZSx0KT0+e3I9ZSxuPXR9KSxyZXNvbHZlOigpPT57dC5yZXNvbHZlZD0hMCxyKCl9LHJlamVjdDpufSxXLnNldChlLHQpfXJldHVybiB0fWU9e2FzeW5jIHJlZ2lzdGVyQ2h1bmsoZSx0KXtpZihIKEsoZSkpLnJlc29sdmUoKSxudWxsIT10KXtmb3IobGV0IGUgb2YgdC5vdGhlckNodW5rcylIKEsoInN0cmluZyI9PXR5cGVvZiBlP2U6ZS5wYXRoKSk7aWYoYXdhaXQgUHJvbWlzZS5hbGwodC5vdGhlckNodW5rcy5tYXAodD0+UygwLGUsdCkpKSx0LnJ1bnRpbWVNb2R1bGVJZHMubGVuZ3RoPjApZm9yKGxldCByIG9mIHQucnVudGltZU1vZHVsZUlkcykhZnVuY3Rpb24oZSx0KXtsZXQgcj1MW3RdO2lmKHIpe2lmKHIuZXJyb3IpdGhyb3cgci5lcnJvcjtyZXR1cm59cSh0LF8uUnVudGltZSxlKX0oZSxyKX19LGxvYWRDaHVua0NhY2hlZDooZSx0KT0+KGZ1bmN0aW9uKGUsdCl7bGV0IHI9SCh0KTtpZihyLmxvYWRpbmdTdGFydGVkKXJldHVybiByLnByb21pc2U7aWYoZT09PV8uUnVudGltZSlyZXR1cm4gci5sb2FkaW5nU3RhcnRlZD0hMCxNKHQpJiZyLnJlc29sdmUoKSxyLnByb21pc2U7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGltcG9ydFNjcmlwdHMpaWYoTSh0KSk7ZWxzZSBpZih4LnRlc3QodCkpc2VsZi5UVVJCT1BBQ0tfTkVYVF9DSFVOS19VUkxTLnB1c2godCksaW1wb3J0U2NyaXB0cyhUVVJCT1BBQ0tfV09SS0VSX0xPQ0FUSU9OK3QpO2Vsc2UgdGhyb3cgRXJyb3IoYGNhbid0IGluZmVyIHR5cGUgb2YgY2h1bmsgZnJvbSBVUkwgJHt0fSBpbiB3b3JrZXJgKTtlbHNle2xldCBlPWRlY29kZVVSSSh0KTtpZihNKHQpKWlmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoYGxpbmtbcmVsPXN0eWxlc2hlZXRdW2hyZWY9IiR7dH0iXSxsaW5rW3JlbD1zdHlsZXNoZWV0XVtocmVmXj0iJHt0fT8iXSxsaW5rW3JlbD1zdHlsZXNoZWV0XVtocmVmPSIke2V9Il0sbGlua1tyZWw9c3R5bGVzaGVldF1baHJlZl49IiR7ZX0/Il1gKS5sZW5ndGg+MClyLnJlc29sdmUoKTtlbHNle2xldCBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKTtlLnJlbD0ic3R5bGVzaGVldCIsZS5ocmVmPXQsZS5vbmVycm9yPSgpPT57ci5yZWplY3QoKX0sZS5vbmxvYWQ9KCk9PntyLnJlc29sdmUoKX0sZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChlKX1lbHNlIGlmKHgudGVzdCh0KSl7bGV0IG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChgc2NyaXB0W3NyYz0iJHt0fSJdLHNjcmlwdFtzcmNePSIke3R9PyJdLHNjcmlwdFtzcmM9IiR7ZX0iXSxzY3JpcHRbc3JjXj0iJHtlfT8iXWApO2lmKG4ubGVuZ3RoPjApZm9yKGxldCBlIG9mIEFycmF5LmZyb20obikpZS5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsKCk9PntyLnJlamVjdCgpfSk7ZWxzZXtsZXQgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtlLnNyYz10LGUub25lcnJvcj0oKT0+e3IucmVqZWN0KCl9LGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoZSl9fWVsc2UgdGhyb3cgRXJyb3IoYGNhbid0IGluZmVyIHR5cGUgb2YgY2h1bmsgZnJvbSBVUkwgJHt0fWApfXJldHVybiByLmxvYWRpbmdTdGFydGVkPSEwLHIucHJvbWlzZX0pKGUsdCksYXN5bmMgbG9hZFdlYkFzc2VtYmx5KGUsdCxyLG4sbyl7bGV0IGw9ZmV0Y2goSyhyKSkse2luc3RhbmNlOml9PWF3YWl0IFdlYkFzc2VtYmx5Lmluc3RhbnRpYXRlU3RyZWFtaW5nKGwsbyk7cmV0dXJuIGkuZXhwb3J0c30sYXN5bmMgbG9hZFdlYkFzc2VtYmx5TW9kdWxlKGUsdCxyLG4pe2xldCBvPWZldGNoKEsocikpO3JldHVybiBhd2FpdCBXZWJBc3NlbWJseS5jb21waWxlU3RyZWFtaW5nKG8pfX07bGV0IEY9Z2xvYmFsVGhpcy5UVVJCT1BBQ0s7Z2xvYmFsVGhpcy5UVVJCT1BBQ0s9e3B1c2g6SX0sRi5mb3JFYWNoKEkpfSkoKTsKOyhmdW5jdGlvbigpe2lmKHR5cGVvZiBkb2N1bWVudD09PSJ1bmRlZmluZWQifHwhLyg/Ol58O1xzKV9fdmVyY2VsX3Rvb2xiYXI9MSg/Ojt8JCkvLnRlc3QoZG9jdW1lbnQuY29va2llKSlyZXR1cm47dmFyIHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7cy5zcmM9J2h0dHBzOi8vdmVyY2VsLmxpdmUvX25leHQtbGl2ZS9mZWVkYmFjay9mZWVkYmFjay5qcyc7cy5zZXRBdHRyaWJ1dGUoImRhdGEtZXhwbGljaXQtb3B0LWluIiwidHJ1ZSIpO3Muc2V0QXR0cmlidXRlKCJkYXRhLWNvb2tpZS1vcHQtaW4iLCJ0cnVlIik7cy5zZXRBdHRyaWJ1dGUoImRhdGEtZGVwbG95bWVudC1pZCIsImRwbF9DUUNuSlhHMXJLWk0xazNReERpQjlpMVRtZjY2Iik7KChkb2N1bWVudC5oZWFkfHxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmFwcGVuZENoaWxkKHMpKX0pKCk7"}},"time_used":9,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/assets/coingecko-coin-list-widget.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.278Z","timestamp":1785143908278,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /assets/coingecko-coin-list-widget.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:41 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"34620-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nKeep-Alive: timeout=5, max=98\r\nConnection: Keep-Alive\r\nTransfer-Encoding: chunked\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":214560,"size_decoded":66337,"mime_type":"text/javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (35392)","md5":"c28770fe1d7cf9e0f29f374273acbd8b","sha1":"bd14dc4eb50a0b4e15476852a1b7ae1f0c425217","sha256":"de441a77d0983af9af77dced03a3788c70d11fbbe9debefba04450ff0a15b0fc","sha512":"e70688d34a6d9c8db841a778fa890840286b839e5c210f961edb344a441b00ff8ddd129a7333619080f429b3ebf5c4a90fdba81bd166b0fbc410cc92c722c06c","ssdeep":"3072:crPw2cYUgDCSaJ4h+RlkMfiWlr2bBG0iHW2:OPSgDCrRlTR2Y22","tlshash":"af2409cdb6c0b06617f362b5106f640bb3ba1da8a84c8690f671e4e5ac7a05d5233f7d","first_seen":"2023-03-07T18:12:11Z","last_seen":"2026-07-27T09:20:18.331523Z","times_seen":9,"resource_available":true,"data":"KGZ1bmN0aW9uKGUpe3ZhciB0PXt9O2Z1bmN0aW9uIG4ocil7aWYodFtyXSlyZXR1cm4gdFtyXS5leHBvcnRzO3ZhciBvPXRbcl09e2k6cixsOiExLGV4cG9ydHM6e319O3JldHVybiBlW3JdLmNhbGwoby5leHBvcnRzLG8sby5leHBvcnRzLG4pLG8ubD0hMCxvLmV4cG9ydHN9bi5tPWUsbi5jPXQsbi5kPWZ1bmN0aW9uKGUsdCxyKXtuLm8oZSx0KXx8T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7ZW51bWVyYWJsZTohMCxnZXQ6cn0pfSxuLnI9ZnVuY3Rpb24oZSl7InVuZGVmaW5lZCIhPT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9LG4udD1mdW5jdGlvbihlLHQpe2lmKDEmdCYmKGU9bihlKSksOCZ0KXJldHVybiBlO2lmKDQmdCYmIm9iamVjdCI9PT10eXBlb2YgZSYmZSYmZS5fX2VzTW9kdWxlKXJldHVybiBlO3ZhciByPU9iamVjdC5jcmVhdGUobnVsbCk7aWYobi5yKHIpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCx2YWx1ZTplfSksMiZ0JiYic3RyaW5nIiE9dHlwZW9mIGUpZm9yKHZhciBvIGluIGUpbi5kKHIsbyxmdW5jdGlvbih0KXtyZXR1cm4gZVt0XX0uYmluZChudWxsLG8pKTtyZXR1cm4gcn0sbi5uPWZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuX19lc01vZHVsZT9mdW5jdGlvbigpe3JldHVybiBlWyJkZWZhdWx0Il19OmZ1bmN0aW9uKCl7cmV0dXJuIGV9O3JldHVybiBuLmQodCwiYSIsdCksdH0sbi5vPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpfSxuLnA9Ii8iLG4obi5zPTgpfSkoeyIwMDI5IjpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz0iY29uc3RydWN0b3IsaGFzT3duUHJvcGVydHksaXNQcm90b3R5cGVPZixwcm9wZXJ0eUlzRW51bWVyYWJsZSx0b0xvY2FsZVN0cmluZyx0b1N0cmluZyx2YWx1ZU9mIi5zcGxpdCgiLCIpfSwiMDE4NSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImU1ZmEiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdChyKGUpKX19LCIwMWY5IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjJkMDAiKSxvPW4oIjVjYTEiKSxpPW4oIjJhYmEiKSxhPW4oIjMyZTkiKSxjPW4oIjg0ZjIiKSxzPW4oIjQxYTAiKSx1PW4oIjdmMjAiKSxsPW4oIjM4ZmQiKSxwPW4oIjJiNGMiKSgiaXRlcmF0b3IiKSxmPSEoW10ua2V5cyYmIm5leHQiaW5bXS5rZXlzKCkpLGQ9IkBAaXRlcmF0b3IiLGg9ImtleXMiLF89InZhbHVlcyIsbT1mdW5jdGlvbigpe3JldHVybiB0aGlzfTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4sdix5LGcsYil7cyhuLHQsdik7dmFyIHcseCxDLGs9ZnVuY3Rpb24oZSl7aWYoIWYmJmUgaW4gTylyZXR1cm4gT1tlXTtzd2l0Y2goZSl7Y2FzZSBoOnJldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgbih0aGlzLGUpfTtjYXNlIF86cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBuKHRoaXMsZSl9fXJldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgbih0aGlzLGUpfX0sUz10KyIgSXRlcmF0b3IiLFA9eT09XyxBPSExLE89ZS5wcm90b3R5cGUsJD1PW3BdfHxPW2RdfHx5JiZPW3ldLFQ9JHx8ayh5KSxqPXk/UD9rKCJlbnRyaWVzIik6VDp2b2lkIDAsRT0iQXJyYXkiPT10JiZPLmVudHJpZXN8fCQ7aWYoRSYmKEM9bChFLmNhbGwobmV3IGUpKSxDIT09T2JqZWN0LnByb3RvdHlwZSYmQy5uZXh0JiYodShDLFMsITApLHJ8fCJmdW5jdGlvbiI9PXR5cGVvZiBDW3BdfHxhKEMscCxtKSkpLFAmJiQmJiQubmFtZSE9PV8mJihBPSEwLFQ9ZnVuY3Rpb24oKXtyZXR1cm4gJC5jYWxsKHRoaXMpfSksciYmIWJ8fCFmJiYhQSYmT1twXXx8YShPLHAsVCksY1t0XT1ULGNbU109bSx5KWlmKHc9e3ZhbHVlczpQP1Q6ayhfKSxrZXlzOmc/VDprKGgpLGVudHJpZXM6an0sYilmb3IoeCBpbiB3KXggaW4gT3x8aShPLHgsd1t4XSk7ZWxzZSBvKG8uUCtvLkYqKGZ8fEEpLHQsdyk7cmV0dXJuIHd9fSwiMDJmNCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjQ1ODgiKSxvPW4oImJlMTMiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKHQsbil7dmFyIGksYSxjPVN0cmluZyhvKHQpKSxzPXIobiksdT1jLmxlbmd0aDtyZXR1cm4gczwwfHxzPj11P2U/IiI6dm9pZCAwOihpPWMuY2hhckNvZGVBdChzKSxpPDU1Mjk2fHxpPjU2MzE5fHxzKzE9PT11fHwoYT1jLmNoYXJDb2RlQXQocysxKSk8NTYzMjB8fGE+NTczNDM/ZT9jLmNoYXJBdChzKTppOmU/Yy5zbGljZShzLHMrMik6YS01NjMyMCsoaS01NTI5Njw8MTApKzY1NTM2KX19fSwiMDM5MCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCIwMmY0IikoITApO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHQrKG4/cihlLHQpLmxlbmd0aDoxKX19LCIwM2NhIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImYyZmUiKTtmdW5jdGlvbiBvKGUpe3ZhciB0LG47dGhpcy5wcm9taXNlPW5ldyBlKGZ1bmN0aW9uKGUscil7aWYodm9pZCAwIT09dHx8dm9pZCAwIT09bil0aHJvdyBUeXBlRXJyb3IoIkJhZCBQcm9taXNlIGNvbnN0cnVjdG9yIik7dD1lLG49cn0pLHRoaXMucmVzb2x2ZT1yKHQpLHRoaXMucmVqZWN0PXIobil9ZS5leHBvcnRzLmY9ZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBvKGUpfX0sIjA0MjMiOmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz17Y29pbl9kZXRhaWxzOnttY2FwX3Jhbms6IuaZguS+oee3j+mhjeODqeODs+OCryIsbWNhcDoi5pmC5L6h57eP6aGNIiwiMjRoX3ZvbHVtZSI6IjI05pmC6ZaT5Y+W5byV6auYIiwiMjRoX2hpZ2hfbG93IjoiMjRIIEhpZ2gvTG93In0sY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldDp7cG93ZXJlZF9ieToiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IixjcnlwdG9fcHJpY2VfY29tcGFyaXNvbjoi5Luu5oOz6YCa6LKo5L6h5qC85q+U6LyDIixjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uOiLku67mg7PpgJrosqjmmYLkvqHnt4/poY3mr5TovIMifSxjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQ6e3Bvd2VyZWRfYnk6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0OnsiMjRoX2hpZ2giOiIyNEjmnIDpq5jlgKQiLCIyNGhfbG93IjoiMjRI5pyA5a6J5YCkIix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQ6e3Bvd2VyZWRfYnk6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fbGlzdF93aWRnZXQ6e3Bvd2VyZWRfYnk6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGJlYW1fd2lkZ2V0Ontwb3dlcmVkX2J5OiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3RpY2tlcl93aWRnZXQ6eyIyNGhfaGlnaCI6IjI0SOacgOmrmOWApCIsIjI0aF9sb3ciOiIyNEjmnIDlronlgKQiLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ont2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5faGVhdG1hcF93aWRnZXQ6e3RpdGxlOiLku67mg7PpgJrosqjjg4fjg7zjgr/kuIDopqciLHN1YnRpdGxlOiIoVG9wICV7dG9wfSBieSBNYXJrZXQgQ2FwKSIscG93ZXJlZF9ieToiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0scmFuZG9tX2NvaW5fd2lkZ2V0OntkaXNjbGFpbWVyOiJEaXNjbGFpbWVyOiBUaGlzIHRvb2xzIHNlcnZlIGFzIGFuIGVudGVydGFpbm1lbnQgYW5kIGRvZXMgbm90IGNvbnN0aXR1dGUgZmluYW5jaWFsIGFkdmljZS4iLHNwaW46IlNwaW4ifSxjb2luX2RhaWx5X3ByaWNlX3dpZGdldDp7dGl0bGU6IkNvaW5HZWNrbyBQcmljZSBVcGRhdGUiLHRvdGFsX21jYXA6IlRvdGFsIE0gY2FwIiwiMjRoX3ZvbCI6IjI0SOWPluW8lemrmCIsZG9tOiJEb20ifSxjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQ6e2V4Y2hhbmdlOiLlj5blvJXmiYAiLHBhaXI6IumAmuiyqOODmuOCoiIscHJpY2U6IuS+oeagvCIsdm9sdW1lOiLlj5blvJXpq5giLHRydXN0X3Njb3JlOiLjg4jjg6njgrnjg4jjgrnjgrPjgqIiLHZpZXdfcHJpY2VfY2hhcnQ6IuS+oeagvOODgeODo+ODvOODiOOCkuihqOekuiIscG93ZXJlZF9ieToiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iix2aWV3X2FsbDoiVmlldyBhbGwgJXtjb2lufSBtYXJrZXRzIn19fSwiMDU2YyI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPXtjb2luX2RldGFpbHM6e21jYXBfcmFuazoi57i95biC5YC85o6S5ZCNIixtY2FwOiLnuL3luILlgLwiLCIyNGhfdm9sdW1lIjoiMjQg5bCP5pmC5Lqk5piT6YePIiwiMjRoX2hpZ2hfbG93IjoiMjRIIEhpZ2gvTG93In0sY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldDp7cG93ZXJlZF9ieToi5q2k5pyN5YuZ5piv55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5o+Q5L6bIixjcnlwdG9fcHJpY2VfY29tcGFyaXNvbjoi5Yqg5a+G6LKo5bmj5Yyv546H5q+U6LyDIixjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uOiLliqDlr4bosqjluaPnuL3luILlgLzmr5TovIMifSxjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQ6e3Bvd2VyZWRfYnk6IuatpOacjeWLmeaYr+eUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOaPkOS+myJ9LGNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0OnsiMjRoX2hpZ2giOiIyNCDlsI/mmYLpq5jlg7kiLCIyNGhfbG93IjoiMjQg5bCP5pmC5L2O5YO5Iix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IuatpOacjeWLmeaYr+eUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOeCuuaCqOaPkOS+myJ9LGNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQ6e3Bvd2VyZWRfYnk6IuatpOacjeWLmeaYr+eUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOaPkOS+myJ9LGNvaW5fbGlzdF93aWRnZXQ6e3Bvd2VyZWRfYnk6IuatpOacjeWLmeaYr+eUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOeCuuaCqOaPkOS+myJ9LGJlYW1fd2lkZ2V0Ontwb3dlcmVkX2J5OiLmraTmnI3li5nmmK/nlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmj5DkvpsifSxjb2luX3RpY2tlcl93aWRnZXQ6eyIyNGhfaGlnaCI6IjI0IOWwj+aZgumrmOWDuSIsIjI0aF9sb3ciOiIyNCDlsI/mmYLkvY7lg7kiLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToi5q2k5pyN5YuZ5piv55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5o+Q5L6bIn0sY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ont2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IuatpOacjeWLmeaYr+eUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOaPkOS+myJ9LGNvaW5faGVhdG1hcF93aWRnZXQ6e3RpdGxlOiLliqDlr4bosqjluaPmqLnni4DlnJYiLHN1YnRpdGxlOiIoVG9wICV7dG9wfSBieSBNYXJrZXQgQ2FwKSIscG93ZXJlZF9ieToi5q2k5pyN5YuZ5piv55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5o+Q5L6bIn0scmFuZG9tX2NvaW5fd2lkZ2V0OntkaXNjbGFpbWVyOiJEaXNjbGFpbWVyOiBUaGlzIHRvb2xzIHNlcnZlIGFzIGFuIGVudGVydGFpbm1lbnQgYW5kIGRvZXMgbm90IGNvbnN0aXR1dGUgZmluYW5jaWFsIGFkdmljZS4iLHNwaW46IlNwaW4ifSxjb2luX2RhaWx5X3ByaWNlX3dpZGdldDp7dGl0bGU6IkNvaW5HZWNrbyBQcmljZSBVcGRhdGUiLHRvdGFsX21jYXA6IlRvdGFsIE0gY2FwIiwiMjRoX3ZvbCI6IjI0IOWwj+aZguS6pOaYk+mHjyIsZG9tOiJEb20ifSxjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQ6e2V4Y2hhbmdlOiLkuqTmmJPmqJnnmoQiLHBhaXI6IuWwjSIscHJpY2U6IuWDueagvCIsdm9sdW1lOiLkuqTmmJPph48iLHRydXN0X3Njb3JlOiLkv6Hku7vliIbmlbgiLHZpZXdfcHJpY2VfY2hhcnQ6Iuafpeeci+WMr+eOh+i1sOWLouWcliIscG93ZXJlZF9ieToi5q2k5pyN5YuZ5piv55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5o+Q5L6bIix2aWV3X2FsbDoiVmlldyBhbGwgJXtjb2lufSBtYXJrZXRzIn19fSwiMDgyNSI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPXtjb2luX2RldGFpbHM6e21jYXBfcmFuazoiQ2xhc3NpZmljYSBjYXAuIGRpIG1lcmNhdG8iLG1jYXA6IkNhcC4gZGkgbWVyY2F0byIsIjI0aF92b2x1bWUiOiJWb2x1bWUgbmVsbGUgdWx0aW1lIDI0IG9yZSIsIjI0aF9oaWdoX2xvdyI6IjI0SCBIaWdoL0xvdyJ9LGNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQ6e3Bvd2VyZWRfYnk6Ik9mZmVydG8gZGEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsY3J5cHRvX3ByaWNlX2NvbXBhcmlzb246IlByZXp6aSBkZWxsZSBjcmlwdG92YWx1dGUgYcKgY29uZnJvbnRvIixjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uOiJDYXBpdGFsaXp6YXppb25lIGRpIG1lcmNhdG8gZGVsbGUgY3JpcHRvdmFsdXRlIGHCoGNvbmZyb250byJ9LGNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldDp7cG93ZXJlZF9ieToiT2ZmZXJ0byBkYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9wcmljZV9jaGFydF93aWRnZXQ6eyIyNGhfaGlnaCI6Ik1hc3NpbW8gaW4gMjQgb3JlIiwiMjRoX2xvdyI6Ik1pbmltbyBpbiAyNCBvcmUiLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiT2ZmZXJ0byBkYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldDp7cG93ZXJlZF9ieToiT2ZmZXJ0byBkYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9saXN0X3dpZGdldDp7cG93ZXJlZF9ieToiT2ZmZXJ0byBkYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sYmVhbV93aWRnZXQ6e3Bvd2VyZWRfYnk6Ik9mZmVydG8gZGEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fdGlja2VyX3dpZGdldDp7IjI0aF9oaWdoIjoiTWFzc2ltbyBpbiAyNCBvcmUiLCIyNGhfbG93IjoiTWluaW1vIGluIDI0IG9yZSIsdmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiJPZmZlcnRvIGRhICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2NvbnZlcnRlcl93aWRnZXQ6e3ZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiT2ZmZXJ0byBkYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9oZWF0bWFwX3dpZGdldDp7dGl0bGU6Ik1hcHBhIGFkIGFsYmVybyBkZWxsZSBjcmlwdG92YWx1dGUiLHN1YnRpdGxlOiIoVG9wICV7dG9wfSBieSBNYXJrZXQgQ2FwKSIscG93ZXJlZF9ieToiT2ZmZXJ0byBkYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0scmFuZG9tX2NvaW5fd2lkZ2V0OntkaXNjbGFpbWVyOiJEaXNjbGFpbWVyOiBUaGlzIHRvb2xzIHNlcnZlIGFzIGFuIGVudGVydGFpbm1lbnQgYW5kIGRvZXMgbm90IGNvbnN0aXR1dGUgZmluYW5jaWFsIGFkdmljZS4iLHNwaW46IlNwaW4ifSxjb2luX2RhaWx5X3ByaWNlX3dpZGdldDp7dGl0bGU6IkNvaW5HZWNrbyBQcmljZSBVcGRhdGUiLHRvdGFsX21jYXA6IlRvdGFsIE0gY2FwIiwiMjRoX3ZvbCI6IlZvbHVtZSBuZWxsZSAyNCBvcmUiLGRvbToiRG9tIn0sY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0OntleGNoYW5nZToiRXhjaGFuZ2UiLHBhaXI6IkNvcHBpYSIscHJpY2U6IlByZXp6byIsdm9sdW1lOiJWb2x1bWUiLHRydXN0X3Njb3JlOiJQdW50ZWdnaW8gZGkgZmlkdWNpYSIsdmlld19wcmljZV9jaGFydDoiVmVkaSBpbCBncmFmaWNvIGRlaSBwcmV6emkiLHBvd2VyZWRfYnk6Ik9mZmVydG8gZGEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsdmlld19hbGw6IlZpZXcgYWxsICV7Y29pbn0gbWFya2V0cyJ9fX0sIjA5NjUiOmZ1bmN0aW9uKGUsdCxuKXtuKCIzODRmIiksZS5leHBvcnRzPW4oImE3ZDMiKS5wYXJzZUZsb2F0fSwiMDk3ZCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCI1Y2ExIiksbz1uKCI4Mzc4IiksaT1uKCI3NzI2IiksYT1uKCJlYmQ2IiksYz1uKCJiY2FhIik7cihyLlArci5SLCJQcm9taXNlIix7ZmluYWxseTpmdW5jdGlvbihlKXt2YXIgdD1hKHRoaXMsby5Qcm9taXNlfHxpLlByb21pc2UpLG49ImZ1bmN0aW9uIj09dHlwZW9mIGU7cmV0dXJuIHRoaXMudGhlbihuP2Z1bmN0aW9uKG4pe3JldHVybiBjKHQsZSgpKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIG59KX06ZSxuP2Z1bmN0aW9uKG4pe3JldHVybiBjKHQsZSgpKS50aGVuKGZ1bmN0aW9uKCl7dGhyb3cgbn0pfTplKX19KX0sIjBhMGEiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkYTNjIiksbz1uKCJhN2QzIiksaT1uKCJiNDU3IiksYT1uKCJmZGExIiksYz1uKCIzYWRjIikuZjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9by5TeW1ib2x8fChvLlN5bWJvbD1pP3t9OnIuU3ltYm9sfHx7fSk7Il8iPT1lLmNoYXJBdCgwKXx8ZSBpbiB0fHxjKHQsZSx7dmFsdWU6YS5mKGUpfSl9fSwiMGE0OSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjliNDMiKSxvPW4oIjYyNmEiKSxpPW4oIjRiZjgiKSxhPW4oIjlkZWYiKSxjPW4oImNkMWMiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbj0xPT1lLHM9Mj09ZSx1PTM9PWUsbD00PT1lLHA9Nj09ZSxmPTU9PWV8fHAsZD10fHxjO3JldHVybiBmdW5jdGlvbih0LGMsaCl7Zm9yKHZhciBfLG0sdj1pKHQpLHk9byh2KSxnPXIoYyxoLDMpLGI9YSh5Lmxlbmd0aCksdz0wLHg9bj9kKHQsYik6cz9kKHQsMCk6dm9pZCAwO2I+dzt3KyspaWYoKGZ8fHcgaW4geSkmJihfPXlbd10sbT1nKF8sdyx2KSxlKSlpZihuKXhbd109bTtlbHNlIGlmKG0pc3dpdGNoKGUpe2Nhc2UgMzpyZXR1cm4hMDtjYXNlIDU6cmV0dXJuIF87Y2FzZSA2OnJldHVybiB3O2Nhc2UgMjp4LnB1c2goXyl9ZWxzZSBpZihsKXJldHVybiExO3JldHVybiBwPy0xOnV8fGw/bDp4fX19LCIwYmZiIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImNiN2MiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oKXt2YXIgZT1yKHRoaXMpLHQ9IiI7cmV0dXJuIGUuZ2xvYmFsJiYodCs9ImciKSxlLmlnbm9yZUNhc2UmJih0Kz0iaSIpLGUubXVsdGlsaW5lJiYodCs9Im0iKSxlLnVuaWNvZGUmJih0Kz0idSIpLGUuc3RpY2t5JiYodCs9InkiKSx0fX0sIjBkNTgiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJjZTEwIiksbz1uKCJlMTFlIik7ZS5leHBvcnRzPU9iamVjdC5rZXlzfHxmdW5jdGlvbihlKXtyZXR1cm4gcihlLG8pfX0sIjBmMDEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiZTlhYyIpLG89cigiJU9iamVjdCUiKSxpPXIoIiVUeXBlRXJyb3IlIiksYT1yKCIlU3RyaW5nJSIpLGM9bigiYzQ2ZCIpLHM9bigiMjA1NyIpLHU9bigiYzYxMiIpLGw9bigiNTk3NSIpLHA9bigiYmI1MyIpLGY9bigiMjFkMCIpLGQ9bigiMmYxNyIpLGg9bigiYTBkMyIpLF89e1RvUHJpbWl0aXZlOmQsVG9Cb29sZWFuOmZ1bmN0aW9uKGUpe3JldHVybiEhZX0sVG9OdW1iZXI6ZnVuY3Rpb24oZSl7cmV0dXJuK2V9LFRvSW50ZWdlcjpmdW5jdGlvbihlKXt2YXIgdD10aGlzLlRvTnVtYmVyKGUpO3JldHVybiBzKHQpPzA6MCE9PXQmJnUodCk/bCh0KSpNYXRoLmZsb29yKE1hdGguYWJzKHQpKTp0fSxUb0ludDMyOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLlRvTnVtYmVyKGUpPj4wfSxUb1VpbnQzMjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5Ub051bWJlcihlKT4+PjB9LFRvVWludDE2OmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuVG9OdW1iZXIoZSk7aWYocyh0KXx8MD09PXR8fCF1KHQpKXJldHVybiAwO3ZhciBuPWwodCkqTWF0aC5mbG9vcihNYXRoLmFicyh0KSk7cmV0dXJuIHAobiw2NTUzNil9LFRvU3RyaW5nOmZ1bmN0aW9uKGUpe3JldHVybiBhKGUpfSxUb09iamVjdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5DaGVja09iamVjdENvZXJjaWJsZShlKSxvKGUpfSxDaGVja09iamVjdENvZXJjaWJsZTpmdW5jdGlvbihlLHQpe2lmKG51bGw9PWUpdGhyb3cgbmV3IGkodHx8IkNhbm5vdCBjYWxsIG1ldGhvZCBvbiAiK2UpO3JldHVybiBlfSxJc0NhbGxhYmxlOmYsU2FtZVZhbHVlOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9PT10PzAhPT1lfHwxL2U9PT0xL3Q6cyhlKSYmcyh0KX0sVHlwZTpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09PWU/Ik51bGwiOiJ1bmRlZmluZWQiPT09dHlwZW9mIGU/IlVuZGVmaW5lZCI6ImZ1bmN0aW9uIj09PXR5cGVvZiBlfHwib2JqZWN0Ij09PXR5cGVvZiBlPyJPYmplY3QiOiJudW1iZXIiPT09dHlwZW9mIGU/Ik51bWJlciI6ImJvb2xlYW4iPT09dHlwZW9mIGU/IkJvb2xlYW4iOiJzdHJpbmciPT09dHlwZW9mIGU/IlN0cmluZyI6dm9pZCAwfSxJc1Byb3BlcnR5RGVzY3JpcHRvcjpmdW5jdGlvbihlKXtpZigiT2JqZWN0IiE9PXRoaXMuVHlwZShlKSlyZXR1cm4hMTt2YXIgdD17IltbQ29uZmlndXJhYmxlXV0iOiEwLCJbW0VudW1lcmFibGVdXSI6ITAsIltbR2V0XV0iOiEwLCJbW1NldF1dIjohMCwiW1tWYWx1ZV1dIjohMCwiW1tXcml0YWJsZV1dIjohMH07Zm9yKHZhciBuIGluIGUpaWYoaChlLG4pJiYhdFtuXSlyZXR1cm4hMTt2YXIgcj1oKGUsIltbVmFsdWVdXSIpLG89aChlLCJbW0dldF1dIil8fGgoZSwiW1tTZXRdXSIpO2lmKHImJm8pdGhyb3cgbmV3IGkoIlByb3BlcnR5IERlc2NyaXB0b3JzIG1heSBub3QgYmUgYm90aCBhY2Nlc3NvciBhbmQgZGF0YSBkZXNjcmlwdG9ycyIpO3JldHVybiEwfSxJc0FjY2Vzc29yRGVzY3JpcHRvcjpmdW5jdGlvbihlKXtyZXR1cm4idW5kZWZpbmVkIiE9PXR5cGVvZiBlJiYoYyh0aGlzLCJQcm9wZXJ0eSBEZXNjcmlwdG9yIiwiRGVzYyIsZSksISghaChlLCJbW0dldF1dIikmJiFoKGUsIltbU2V0XV0iKSkpfSxJc0RhdGFEZXNjcmlwdG9yOmZ1bmN0aW9uKGUpe3JldHVybiJ1bmRlZmluZWQiIT09dHlwZW9mIGUmJihjKHRoaXMsIlByb3BlcnR5IERlc2NyaXB0b3IiLCJEZXNjIixlKSwhKCFoKGUsIltbVmFsdWVdXSIpJiYhaChlLCJbW1dyaXRhYmxlXV0iKSkpfSxJc0dlbmVyaWNEZXNjcmlwdG9yOmZ1bmN0aW9uKGUpe3JldHVybiJ1bmRlZmluZWQiIT09dHlwZW9mIGUmJihjKHRoaXMsIlByb3BlcnR5IERlc2NyaXB0b3IiLCJEZXNjIixlKSwhdGhpcy5Jc0FjY2Vzc29yRGVzY3JpcHRvcihlKSYmIXRoaXMuSXNEYXRhRGVzY3JpcHRvcihlKSl9LEZyb21Qcm9wZXJ0eURlc2NyaXB0b3I6ZnVuY3Rpb24oZSl7aWYoInVuZGVmaW5lZCI9PT10eXBlb2YgZSlyZXR1cm4gZTtpZihjKHRoaXMsIlByb3BlcnR5IERlc2NyaXB0b3IiLCJEZXNjIixlKSx0aGlzLklzRGF0YURlc2NyaXB0b3IoZSkpcmV0dXJue3ZhbHVlOmVbIltbVmFsdWVdXSJdLHdyaXRhYmxlOiEhZVsiW1tXcml0YWJsZV1dIl0sZW51bWVyYWJsZTohIWVbIltbRW51bWVyYWJsZV1dIl0sY29uZmlndXJhYmxlOiEhZVsiW1tDb25maWd1cmFibGVdXSJdfTtpZih0aGlzLklzQWNjZXNzb3JEZXNjcmlwdG9yKGUpKXJldHVybntnZXQ6ZVsiW1tHZXRdXSJdLHNldDplWyJbW1NldF1dIl0sZW51bWVyYWJsZTohIWVbIltbRW51bWVyYWJsZV1dIl0sY29uZmlndXJhYmxlOiEhZVsiW1tDb25maWd1cmFibGVdXSJdfTt0aHJvdyBuZXcgaSgiRnJvbVByb3BlcnR5RGVzY3JpcHRvciBtdXN0IGJlIGNhbGxlZCB3aXRoIGEgZnVsbHkgcG9wdWxhdGVkIFByb3BlcnR5IERlc2NyaXB0b3IiKX0sVG9Qcm9wZXJ0eURlc2NyaXB0b3I6ZnVuY3Rpb24oZSl7aWYoIk9iamVjdCIhPT10aGlzLlR5cGUoZSkpdGhyb3cgbmV3IGkoIlRvUHJvcGVydHlEZXNjcmlwdG9yIHJlcXVpcmVzIGFuIG9iamVjdCIpO3ZhciB0PXt9O2lmKGgoZSwiZW51bWVyYWJsZSIpJiYodFsiW1tFbnVtZXJhYmxlXV0iXT10aGlzLlRvQm9vbGVhbihlLmVudW1lcmFibGUpKSxoKGUsImNvbmZpZ3VyYWJsZSIpJiYodFsiW1tDb25maWd1cmFibGVdXSJdPXRoaXMuVG9Cb29sZWFuKGUuY29uZmlndXJhYmxlKSksaChlLCJ2YWx1ZSIpJiYodFsiW1tWYWx1ZV1dIl09ZS52YWx1ZSksaChlLCJ3cml0YWJsZSIpJiYodFsiW1tXcml0YWJsZV1dIl09dGhpcy5Ub0Jvb2xlYW4oZS53cml0YWJsZSkpLGgoZSwiZ2V0Iikpe3ZhciBuPWUuZ2V0O2lmKCJ1bmRlZmluZWQiIT09dHlwZW9mIG4mJiF0aGlzLklzQ2FsbGFibGUobikpdGhyb3cgbmV3IFR5cGVFcnJvcigiZ2V0dGVyIG11c3QgYmUgYSBmdW5jdGlvbiIpO3RbIltbR2V0XV0iXT1ufWlmKGgoZSwic2V0Iikpe3ZhciByPWUuc2V0O2lmKCJ1bmRlZmluZWQiIT09dHlwZW9mIHImJiF0aGlzLklzQ2FsbGFibGUocikpdGhyb3cgbmV3IGkoInNldHRlciBtdXN0IGJlIGEgZnVuY3Rpb24iKTt0WyJbW1NldF1dIl09cn1pZigoaCh0LCJbW0dldF1dIil8fGgodCwiW1tTZXRdXSIpKSYmKGgodCwiW1tWYWx1ZV1dIil8fGgodCwiW1tXcml0YWJsZV1dIikpKXRocm93IG5ldyBpKCJJbnZhbGlkIHByb3BlcnR5IGRlc2NyaXB0b3IuIENhbm5vdCBib3RoIHNwZWNpZnkgYWNjZXNzb3JzIGFuZCBhIHZhbHVlIG9yIHdyaXRhYmxlIGF0dHJpYnV0ZSIpO3JldHVybiB0fX07ZS5leHBvcnRzPV99LCIwZjdjIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjY4OGUiKTtlLmV4cG9ydHM9RnVuY3Rpb24ucHJvdG90eXBlLmJpbmR8fHJ9LCIwZjg5IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNmY4YSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZighcihlKSl0aHJvdyBUeXBlRXJyb3IoZSsiIGlzIG5vdCBhbiBvYmplY3QhIik7cmV0dXJuIGV9fSwiMTAzYSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImRhM2MiKS5kb2N1bWVudDtlLmV4cG9ydHM9ciYmci5kb2N1bWVudEVsZW1lbnR9LDExNjk6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjJkOTUiKTtlLmV4cG9ydHM9QXJyYXkuaXNBcnJheXx8ZnVuY3Rpb24oZSl7cmV0dXJuIkFycmF5Ij09cihlKX19LCIxMWU5IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNTJhNyIpLG89bigiNDYzMCIpLGk9bigiNjgyMSIpLGE9bigiNmE5OSIpLGM9bigiNjlhOCIpLHM9bigiYzY5YSIpLHU9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcjt0LmY9bigiOWUxZSIpP3U6ZnVuY3Rpb24oZSx0KXtpZihlPWkoZSksdD1hKHQsITApLHMpdHJ5e3JldHVybiB1KGUsdCl9Y2F0Y2gobil7fWlmKGMoZSx0KSlyZXR1cm4gbyghci5mLmNhbGwoZSx0KSxlW3RdKX19LCIxMWZmIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZGEzYyIpLnBhcnNlRmxvYXQsbz1uKCI2MzNhIikudHJpbTtlLmV4cG9ydHM9MS9yKG4oIjcwMmEiKSsiLTAiKSE9PS0xLzA/ZnVuY3Rpb24oZSl7dmFyIHQ9byhTdHJpbmcoZSksMyksbj1yKHQpO3JldHVybiAwPT09biYmIi0iPT10LmNoYXJBdCgwKT8tMDpufTpyfSwiMTJmZCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjZmOGEiKSxvPW4oImRhM2MiKS5kb2N1bWVudCxpPXIobykmJnIoby5jcmVhdGVFbGVtZW50KTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGk/by5jcmVhdGVFbGVtZW50KGUpOnt9fX0sIjEyZmQ5IjpmdW5jdGlvbihlLHQpe30sMTQ5NTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiODZjYyIpLG89bigiY2I3YyIpLGk9bigiMGQ1OCIpO2UuZXhwb3J0cz1uKCI5ZTFlIik/T2JqZWN0LmRlZmluZVByb3BlcnRpZXM6ZnVuY3Rpb24oZSx0KXtvKGUpO3ZhciBuLGE9aSh0KSxjPWEubGVuZ3RoLHM9MDt3aGlsZShjPnMpci5mKGUsbj1hW3MrK10sdFtuXSk7cmV0dXJuIGV9fSwiMTk2YyI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXZvaWQgMD09PW47c3dpdGNoKHQubGVuZ3RoKXtjYXNlIDA6cmV0dXJuIHI/ZSgpOmUuY2FsbChuKTtjYXNlIDE6cmV0dXJuIHI/ZSh0WzBdKTplLmNhbGwobix0WzBdKTtjYXNlIDI6cmV0dXJuIHI/ZSh0WzBdLHRbMV0pOmUuY2FsbChuLHRbMF0sdFsxXSk7Y2FzZSAzOnJldHVybiByP2UodFswXSx0WzFdLHRbMl0pOmUuY2FsbChuLHRbMF0sdFsxXSx0WzJdKTtjYXNlIDQ6cmV0dXJuIHI/ZSh0WzBdLHRbMV0sdFsyXSx0WzNdKTplLmNhbGwobix0WzBdLHRbMV0sdFsyXSx0WzNdKX1yZXR1cm4gZS5hcHBseShuLHQpfX0sMTk5MTpmdW5jdGlvbihlLHQsbil7dmFyIHIsbyxpLGE9bigiOWI0MyIpLGM9bigiMzFmNCIpLHM9bigiZmFiMiIpLHU9bigiMjMwZSIpLGw9bigiNzcyNiIpLHA9bC5wcm9jZXNzLGY9bC5zZXRJbW1lZGlhdGUsZD1sLmNsZWFySW1tZWRpYXRlLGg9bC5NZXNzYWdlQ2hhbm5lbCxfPWwuRGlzcGF0Y2gsbT0wLHY9e30seT0ib25yZWFkeXN0YXRlY2hhbmdlIixnPWZ1bmN0aW9uKCl7dmFyIGU9K3RoaXM7aWYodi5oYXNPd25Qcm9wZXJ0eShlKSl7dmFyIHQ9dltlXTtkZWxldGUgdltlXSx0KCl9fSxiPWZ1bmN0aW9uKGUpe2cuY2FsbChlLmRhdGEpfTtmJiZkfHwoZj1mdW5jdGlvbihlKXt2YXIgdD1bXSxuPTE7d2hpbGUoYXJndW1lbnRzLmxlbmd0aD5uKXQucHVzaChhcmd1bWVudHNbbisrXSk7cmV0dXJuIHZbKyttXT1mdW5jdGlvbigpe2MoImZ1bmN0aW9uIj09dHlwZW9mIGU/ZTpGdW5jdGlvbihlKSx0KX0scihtKSxtfSxkPWZ1bmN0aW9uKGUpe2RlbGV0ZSB2W2VdfSwicHJvY2VzcyI9PW4oIjJkOTUiKShwKT9yPWZ1bmN0aW9uKGUpe3AubmV4dFRpY2soYShnLGUsMSkpfTpfJiZfLm5vdz9yPWZ1bmN0aW9uKGUpe18ubm93KGEoZyxlLDEpKX06aD8obz1uZXcgaCxpPW8ucG9ydDIsby5wb3J0MS5vbm1lc3NhZ2U9YixyPWEoaS5wb3N0TWVzc2FnZSxpLDEpKTpsLmFkZEV2ZW50TGlzdGVuZXImJiJmdW5jdGlvbiI9PXR5cGVvZiBwb3N0TWVzc2FnZSYmIWwuaW1wb3J0U2NyaXB0cz8ocj1mdW5jdGlvbihlKXtsLnBvc3RNZXNzYWdlKGUrIiIsIioiKX0sbC5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixiLCExKSk6cj15IGluIHUoInNjcmlwdCIpP2Z1bmN0aW9uKGUpe3MuYXBwZW5kQ2hpbGQodSgic2NyaXB0IikpW3ldPWZ1bmN0aW9uKCl7cy5yZW1vdmVDaGlsZCh0aGlzKSxnLmNhbGwoZSl9fTpmdW5jdGlvbihlKXtzZXRUaW1lb3V0KGEoZyxlLDEpLDApfSksZS5leHBvcnRzPXtzZXQ6ZixjbGVhcjpkfX0sIjFiNTUiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI3NzcyIikoIndrcyIpLG89bigiN2IwMCIpLGk9bigiZGEzYyIpLlN5bWJvbCxhPSJmdW5jdGlvbiI9PXR5cGVvZiBpLGM9ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiByW2VdfHwocltlXT1hJiZpW2VdfHwoYT9pOm8pKCJTeW1ib2wuIitlKSl9O2Muc3RvcmU9cn0sIjFiN2YiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiNTYyZSIpLG89IuKAiyI7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZy5wcm90b3R5cGUudHJpbSYmby50cmltKCk9PT1vP1N0cmluZy5wcm90b3R5cGUudHJpbTpyfX0sIjFiOGYiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJhODEyIiksbz1NYXRoLm1heCxpPU1hdGgubWluO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybiBlPXIoZSksZTwwP28oZSt0LDApOmkoZSx0KX19LCIxYmU0IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImRhM2MiKSxvPW4oImE3ZDMiKSxpPW4oIjNhZGMiKSxhPW4oIjdkOTUiKSxjPW4oIjFiNTUiKSgic3BlY2llcyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXt2YXIgdD0iZnVuY3Rpb24iPT10eXBlb2Ygb1tlXT9vW2VdOnJbZV07YSYmdCYmIXRbY10mJmkuZih0LGMse2NvbmZpZ3VyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc319KX19LCIxZjY5IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjJiMGUiKSxvPW4oImM2NDkiKSxpPWZ1bmN0aW9uKGUpe3JldHVybiByWyJhIl0ubWl4aW4oe2RhdGE6ZnVuY3Rpb24oKXtyZXR1cm57Y29udGFpbmVyQ2xhc3M6ImxhcmdlIn19LG1ldGhvZHM6e3VwZGF0ZUNvbnRhaW5lckNsYXNzOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXt2YXIgbj10LiRlbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDt0LmNvbnRhaW5lckNsYXNzPW48PWU/InNtYWxsIjoibGFyZ2UifSl9fSx3YXRjaDp7d2lkdGg6ZnVuY3Rpb24oKXt0aGlzLnVwZGF0ZUNvbnRhaW5lckNsYXNzKCl9fSxtb3VudGVkOmZ1bmN0aW9uKCl7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsT2JqZWN0KG9bImIiXSkodGhpcy51cGRhdGVDb250YWluZXJDbGFzcy5iaW5kKHRoaXMpLDIwMCkpLHRoaXMudXBkYXRlQ29udGFpbmVyQ2xhc3MoKX0sZGVzdHJveWVkOmZ1bmN0aW9uKCl7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsZnVuY3Rpb24oKXt9KX19KX07dFsiYSJdPWl9LCIxZmE4IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiY2I3YyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixvKXt0cnl7cmV0dXJuIG8/dChyKG4pWzBdLG5bMV0pOnQobil9Y2F0Y2goYSl7dmFyIGk9ZVsicmV0dXJuIl07dGhyb3cgdm9pZCAwIT09aSYmcihpLmNhbGwoZSkpLGF9fX0sMjA1NzpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1OdW1iZXIuaXNOYU58fGZ1bmN0aW9uKGUpe3JldHVybiBlIT09ZX19LCIyMTBjIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9e2NvaW5fZGV0YWlsczp7bWNhcF9yYW5rOiJOaWxhaSBLYXBpdGFsaXNhc2kgUGFzYXIiLG1jYXA6IkthcGl0YWxpc2FzaSBQYXNhciIsIjI0aF92b2x1bWUiOiJWb2x1bWUgMjQgSmFtIiwiMjRoX2hpZ2hfbG93IjoiMjRIIEhpZ2gvTG93In0sY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldDp7cG93ZXJlZF9ieToiRGlkdWt1bmcgb2xlaCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IixjcnlwdG9fcHJpY2VfY29tcGFyaXNvbjoiUGVyYmFuZGluZ2FuIEhhcmdhIENyeXB0byIsY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbjoiUGVyYmFuZGluZ2FuIEthcGl0YWxpc2FzaSBQYXNhciBDcnlwdG8ifSxjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQ6e3Bvd2VyZWRfYnk6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0OnsiMjRoX2hpZ2giOiIyNEogVGluZ2dpIiwiMjRoX2xvdyI6IjI0SiBSZW5kYWgiLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiRGlkdWt1bmcgb2xlaCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldDp7cG93ZXJlZF9ieToiRGlkdWt1bmcgb2xlaCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9saXN0X3dpZGdldDp7cG93ZXJlZF9ieToiRGlkdWt1bmcgb2xlaCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sYmVhbV93aWRnZXQ6e3Bvd2VyZWRfYnk6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fdGlja2VyX3dpZGdldDp7IjI0aF9oaWdoIjoiMjRKIFRpbmdnaSIsIjI0aF9sb3ciOiIyNEogUmVuZGFoIix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fY29udmVydGVyX3dpZGdldDp7dmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiJEaWR1a3VuZyBvbGVoICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2hlYXRtYXBfd2lkZ2V0Ont0aXRsZToiUGV0YSBQb2hvbiBDcnlwdG9jdXJyZW5jeSIsc3VidGl0bGU6IihUb3AgJXt0b3B9IGJ5IE1hcmtldCBDYXApIixwb3dlcmVkX2J5OiJEaWR1a3VuZyBvbGVoICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxyYW5kb21fY29pbl93aWRnZXQ6e2Rpc2NsYWltZXI6IkRpc2NsYWltZXI6IFRoaXMgdG9vbHMgc2VydmUgYXMgYW4gZW50ZXJ0YWlubWVudCBhbmQgZG9lcyBub3QgY29uc3RpdHV0ZSBmaW5hbmNpYWwgYWR2aWNlLiIsc3BpbjoiU3BpbiJ9LGNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ont0aXRsZToiQ29pbkdlY2tvIFByaWNlIFVwZGF0ZSIsdG90YWxfbWNhcDoiVG90YWwgTSBjYXAiLCIyNGhfdm9sIjoiVm9sdW1lIDI0IEphbSIsZG9tOiJEb20ifSxjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQ6e2V4Y2hhbmdlOiJQdXNhdCBQZXJkYWdhbmdhbiIscGFpcjoiUGFzYW5nYW4iLHByaWNlOiJIYXJnYSIsdm9sdW1lOiJWb2x1bWUiLHRydXN0X3Njb3JlOiJTa29yIEtlcGVyY2F5YWFuIix2aWV3X3ByaWNlX2NoYXJ0OiJMaWhhdCBHcmFmaWsgSGFyZ2EiLHBvd2VyZWRfYnk6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsdmlld19hbGw6IlZpZXcgYWxsICV7Y29pbn0gbWFya2V0cyJ9fX0sIjIxNGYiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiYjBjNSIpO3ZhciByPW4oIjJhYmEiKSxvPW4oIjMyZTkiKSxpPW4oIjc5ZTUiKSxhPW4oImJlMTMiKSxjPW4oIjJiNGMiKSxzPW4oIjUyMGEiKSx1PWMoInNwZWNpZXMiKSxsPSFpKGZ1bmN0aW9uKCl7dmFyIGU9Ly4vO3JldHVybiBlLmV4ZWM9ZnVuY3Rpb24oKXt2YXIgZT1bXTtyZXR1cm4gZS5ncm91cHM9e2E6IjcifSxlfSwiNyIhPT0iIi5yZXBsYWNlKGUsIiQ8YT4iKX0pLHA9ZnVuY3Rpb24oKXt2YXIgZT0vKD86KS8sdD1lLmV4ZWM7ZS5leGVjPWZ1bmN0aW9uKCl7cmV0dXJuIHQuYXBwbHkodGhpcyxhcmd1bWVudHMpfTt2YXIgbj0iYWIiLnNwbGl0KGUpO3JldHVybiAyPT09bi5sZW5ndGgmJiJhIj09PW5bMF0mJiJiIj09PW5bMV19KCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXt2YXIgZj1jKGUpLGQ9IWkoZnVuY3Rpb24oKXt2YXIgdD17fTtyZXR1cm4gdFtmXT1mdW5jdGlvbigpe3JldHVybiA3fSw3IT0iIltlXSh0KX0pLGg9ZD8haShmdW5jdGlvbigpe3ZhciB0PSExLG49L2EvO3JldHVybiBuLmV4ZWM9ZnVuY3Rpb24oKXtyZXR1cm4gdD0hMCxudWxsfSwic3BsaXQiPT09ZSYmKG4uY29uc3RydWN0b3I9e30sbi5jb25zdHJ1Y3Rvclt1XT1mdW5jdGlvbigpe3JldHVybiBufSksbltmXSgiIiksIXR9KTp2b2lkIDA7aWYoIWR8fCFofHwicmVwbGFjZSI9PT1lJiYhbHx8InNwbGl0Ij09PWUmJiFwKXt2YXIgXz0vLi9bZl0sbT1uKGEsZiwiIltlXSxmdW5jdGlvbihlLHQsbixyLG8pe3JldHVybiB0LmV4ZWM9PT1zP2QmJiFvP3tkb25lOiEwLHZhbHVlOl8uY2FsbCh0LG4scil9Ontkb25lOiEwLHZhbHVlOmUuY2FsbChuLHQscil9Ontkb25lOiExfX0pLHY9bVswXSx5PW1bMV07cihTdHJpbmcucHJvdG90eXBlLGUsdiksbyhSZWdFeHAucHJvdG90eXBlLGYsMj09dD9mdW5jdGlvbihlLHQpe3JldHVybiB5LmNhbGwoZSx0aGlzLHQpfTpmdW5jdGlvbihlKXtyZXR1cm4geS5jYWxsKGUsdGhpcyl9KX19fSwiMjFkMCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1GdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmcsbz0vXlxzKmNsYXNzXGIvLGk9ZnVuY3Rpb24oZSl7dHJ5e3ZhciB0PXIuY2FsbChlKTtyZXR1cm4gby50ZXN0KHQpfWNhdGNoKG4pe3JldHVybiExfX0sYT1mdW5jdGlvbihlKXt0cnl7cmV0dXJuIWkoZSkmJihyLmNhbGwoZSksITApfWNhdGNoKHQpe3JldHVybiExfX0sYz1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLHM9IltvYmplY3QgRnVuY3Rpb25dIix1PSJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSIsbD0iZnVuY3Rpb24iPT09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PT10eXBlb2YgU3ltYm9sLnRvU3RyaW5nVGFnO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZighZSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iIT09dHlwZW9mIGUmJiJvYmplY3QiIT09dHlwZW9mIGUpcmV0dXJuITE7aWYoImZ1bmN0aW9uIj09PXR5cGVvZiBlJiYhZS5wcm90b3R5cGUpcmV0dXJuITA7aWYobClyZXR1cm4gYShlKTtpZihpKGUpKXJldHVybiExO3ZhciB0PWMuY2FsbChlKTtyZXR1cm4gdD09PXN8fHQ9PT11fX0sIjIzMGUiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkM2Y0Iiksbz1uKCI3NzI2IikuZG9jdW1lbnQsaT1yKG8pJiZyKG8uY3JlYXRlRWxlbWVudCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBpP28uY3JlYXRlRWxlbWVudChlKTp7fX19LDIzMTI6ZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKCI4Y2UwIil9LDIzNTA6ZnVuY3Rpb24oZSx0KXtmdW5jdGlvbiBuKGUsdCl7dmFyIG49ZVsxXXx8IiIsbz1lWzNdO2lmKCFvKXJldHVybiBuO2lmKHQmJiJmdW5jdGlvbiI9PT10eXBlb2YgYnRvYSl7dmFyIGk9cihvKSxhPW8uc291cmNlcy5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIi8qIyBzb3VyY2VVUkw9IitvLnNvdXJjZVJvb3QrZSsiICovIn0pO3JldHVybltuXS5jb25jYXQoYSkuY29uY2F0KFtpXSkuam9pbigiXG4iKX1yZXR1cm5bbl0uam9pbigiXG4iKX1mdW5jdGlvbiByKGUpe3ZhciB0PWJ0b2EodW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KGUpKSkpLG49InNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCIrdDtyZXR1cm4iLyojICIrbisiICovIn1lLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9W107cmV0dXJuIHQudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24odCl7dmFyIHI9bih0LGUpO3JldHVybiB0WzJdPyJAbWVkaWEgIit0WzJdKyJ7IityKyJ9IjpyfSkuam9pbigiIil9LHQuaT1mdW5jdGlvbihlLG4peyJzdHJpbmciPT09dHlwZW9mIGUmJihlPVtbbnVsbCxlLCIiXV0pO2Zvcih2YXIgcj17fSxvPTA7bzx0aGlzLmxlbmd0aDtvKyspe3ZhciBpPXRoaXNbb11bMF07Im51bWJlciI9PT10eXBlb2YgaSYmKHJbaV09ITApfWZvcihvPTA7bzxlLmxlbmd0aDtvKyspe3ZhciBhPWVbb107Im51bWJlciI9PT10eXBlb2YgYVswXSYmclthWzBdXXx8KG4mJiFhWzJdP2FbMl09bjpuJiYoYVsyXT0iKCIrYVsyXSsiKSBhbmQgKCIrbisiKSIpLHQucHVzaChhKSl9fSx0fX0sIjIzYzYiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIyZDk1Iiksbz1uKCIyYjRjIikoInRvU3RyaW5nVGFnIiksaT0iQXJndW1lbnRzIj09cihmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHN9KCkpLGE9ZnVuY3Rpb24oZSx0KXt0cnl7cmV0dXJuIGVbdF19Y2F0Y2gobil7fX07ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0LG4sYztyZXR1cm4gdm9pZCAwPT09ZT8iVW5kZWZpbmVkIjpudWxsPT09ZT8iTnVsbCI6InN0cmluZyI9PXR5cGVvZihuPWEodD1PYmplY3QoZSksbykpP246aT9yKHQpOiJPYmplY3QiPT0oYz1yKHQpKSYmImZ1bmN0aW9uIj09dHlwZW9mIHQuY2FsbGVlPyJBcmd1bWVudHMiOmN9fSwyNDE4OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI2YTliIiksbz1uKCJhNWFiIiksaT1uKCIxYjhmIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0LG4sYSl7dmFyIGMscz1yKHQpLHU9byhzLmxlbmd0aCksbD1pKGEsdSk7aWYoZSYmbiE9bil7d2hpbGUodT5sKWlmKGM9c1tsKytdLGMhPWMpcmV0dXJuITB9ZWxzZSBmb3IoO3U+bDtsKyspaWYoKGV8fGwgaW4gcykmJnNbbF09PT1uKXJldHVybiBlfHxsfHwwO3JldHVybiFlJiYtMX19fSwiMjQ1YiI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm57dmFsdWU6dCxkb25lOiEhZX19fSwyNjk1OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI0M2M4Iiksbz1uKCI2YTliIiksaT1uKCIyNDE4IikoITEpLGE9bigiNWQ4ZiIpKCJJRV9QUk9UTyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuLGM9byhlKSxzPTAsdT1bXTtmb3IobiBpbiBjKW4hPWEmJnIoYyxuKSYmdS5wdXNoKG4pO3doaWxlKHQubGVuZ3RoPnMpcihjLG49dFtzKytdKSYmKH5pKHUsbil8fHUucHVzaChuKSk7cmV0dXJuIHV9fSwiMjdlZSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjIzYzYiKSxvPW4oIjJiNGMiKSgiaXRlcmF0b3IiKSxpPW4oIjg0ZjIiKTtlLmV4cG9ydHM9bigiODM3OCIpLmdldEl0ZXJhdG9yTWV0aG9kPWZ1bmN0aW9uKGUpe2lmKHZvaWQgMCE9ZSlyZXR1cm4gZVtvXXx8ZVsiQEBpdGVyYXRvciJdfHxpW3IoZSldfX0sMjg3NzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSx0LG4scixvLGksYSxjKXt2YXIgcyx1PSJmdW5jdGlvbiI9PT10eXBlb2YgZT9lLm9wdGlvbnM6ZTtpZih0JiYodS5yZW5kZXI9dCx1LnN0YXRpY1JlbmRlckZucz1uLHUuX2NvbXBpbGVkPSEwKSxyJiYodS5mdW5jdGlvbmFsPSEwKSxpJiYodS5fc2NvcGVJZD0iZGF0YS12LSIraSksYT8ocz1mdW5jdGlvbihlKXtlPWV8fHRoaXMuJHZub2RlJiZ0aGlzLiR2bm9kZS5zc3JDb250ZXh0fHx0aGlzLnBhcmVudCYmdGhpcy5wYXJlbnQuJHZub2RlJiZ0aGlzLnBhcmVudC4kdm5vZGUuc3NyQ29udGV4dCxlfHwidW5kZWZpbmVkIj09PXR5cGVvZiBfX1ZVRV9TU1JfQ09OVEVYVF9ffHwoZT1fX1ZVRV9TU1JfQ09OVEVYVF9fKSxvJiZvLmNhbGwodGhpcyxlKSxlJiZlLl9yZWdpc3RlcmVkQ29tcG9uZW50cyYmZS5fcmVnaXN0ZXJlZENvbXBvbmVudHMuYWRkKGEpfSx1Ll9zc3JSZWdpc3Rlcj1zKTpvJiYocz1jP2Z1bmN0aW9uKCl7by5jYWxsKHRoaXMsdGhpcy4kcm9vdC4kb3B0aW9ucy5zaGFkb3dSb290KX06bykscylpZih1LmZ1bmN0aW9uYWwpe3UuX2luamVjdFN0eWxlcz1zO3ZhciBsPXUucmVuZGVyO3UucmVuZGVyPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHMuY2FsbCh0KSxsKGUsdCl9fWVsc2V7dmFyIHA9dS5iZWZvcmVDcmVhdGU7dS5iZWZvcmVDcmVhdGU9cD9bXS5jb25jYXQocCxzKTpbc119cmV0dXJue2V4cG9ydHM6ZSxvcHRpb25zOnV9fW4uZCh0LCJhIixmdW5jdGlvbigpe3JldHVybiByfSl9LCIyODhhIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImQwMjQiKSxvPW4oImZhNGUiKSxpPW4oImEwZDMiKSxhPW4oImNhOWYiKSxjPWZ1bmN0aW9uKGUpe28oITEsZSl9LHM9U3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLHU9U3RyaW5nLnByb3RvdHlwZS5zcGxpdCxsPSJ8fHx8IixwPWZ1bmN0aW9uKGUpe3ZhciB0PWUlMTA7cmV0dXJuIDExIT09ZSYmMT09PXQ/MDoyPD10JiZ0PD00JiYhKGU+PTEyJiZlPD0xNCk/MToyfSxmPXthcmFiaWM6ZnVuY3Rpb24oZSl7aWYoZTwzKXJldHVybiBlO3ZhciB0PWUlMTAwO3JldHVybiB0Pj0zJiZ0PD0xMD8zOnQ+PTExPzQ6NX0sYm9zbmlhbl9zZXJiaWFuOnAsY2hpbmVzZTpmdW5jdGlvbigpe3JldHVybiAwfSxjcm9hdGlhbjpwLGZyZW5jaDpmdW5jdGlvbihlKXtyZXR1cm4gZT4xPzE6MH0sZ2VybWFuOmZ1bmN0aW9uKGUpe3JldHVybiAxIT09ZT8xOjB9LHJ1c3NpYW46cCxsaXRodWFuaWFuOmZ1bmN0aW9uKGUpe3JldHVybiBlJTEwPT09MSYmZSUxMDAhPT0xMT8wOmUlMTA+PTImJmUlMTA8PTkmJihlJTEwMDwxMXx8ZSUxMDA+MTkpPzE6Mn0sY3plY2g6ZnVuY3Rpb24oZSl7cmV0dXJuIDE9PT1lPzA6ZT49MiYmZTw9ND8xOjJ9LHBvbGlzaDpmdW5jdGlvbihlKXtpZigxPT09ZSlyZXR1cm4gMDt2YXIgdD1lJTEwO3JldHVybiAyPD10JiZ0PD00JiYoZSUxMDA8MTB8fGUlMTAwPj0yMCk/MToyfSxpY2VsYW5kaWM6ZnVuY3Rpb24oZSl7cmV0dXJuIGUlMTAhPT0xfHxlJTEwMD09PTExPzE6MH0sc2xvdmVuaWFuOmZ1bmN0aW9uKGUpe3ZhciB0PWUlMTAwO3JldHVybiAxPT09dD8wOjI9PT10PzE6Mz09PXR8fDQ9PT10PzI6M319LGQ9e2FyYWJpYzpbImFyIl0sYm9zbmlhbl9zZXJiaWFuOlsiYnMtTGF0bi1CQSIsImJzLUN5cmwtQkEiLCJzcmwtUlMiLCJzci1SUyJdLGNoaW5lc2U6WyJpZCIsImlkLUlEIiwiamEiLCJrbyIsImtvLUtSIiwibG8iLCJtcyIsInRoIiwidGgtVEgiLCJ6aCJdLGNyb2F0aWFuOlsiaHIiLCJoci1IUiJdLGdlcm1hbjpbImZhIiwiZGEiLCJkZSIsImVuIiwiZXMiLCJmaSIsImVsIiwiaGUiLCJoaS1JTiIsImh1IiwiaHUtSFUiLCJpdCIsIm5sIiwibm8iLCJwdCIsInN2IiwidHIiXSxmcmVuY2g6WyJmciIsInRsIiwicHQtYnIiXSxydXNzaWFuOlsicnUiLCJydS1SVSJdLGxpdGh1YW5pYW46WyJsdCJdLGN6ZWNoOlsiY3MiLCJjcy1DWiIsInNrIl0scG9saXNoOlsicGwiXSxpY2VsYW5kaWM6WyJpcyJdLHNsb3ZlbmlhbjpbInNsLVNMIl19O2Z1bmN0aW9uIGgoZSl7dmFyIHQ9e307cmV0dXJuIHIoZSxmdW5jdGlvbihlLG4pe3IoZSxmdW5jdGlvbihlKXt0W2VdPW59KX0pLHR9ZnVuY3Rpb24gXyhlKXt2YXIgdD1oKGQpO3JldHVybiB0W2VdfHx0W3UuY2FsbChlLC8tLywxKVswXV18fHQuZW59ZnVuY3Rpb24gbShlLHQpe3JldHVybiBmW18oZSldKHQpfWZ1bmN0aW9uIHYoZSl7cmV0dXJuIGUucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xdXFxdL2csIlxcJCYiKX1mdW5jdGlvbiB5KGUpe3ZhciB0PWUmJmUucHJlZml4fHwiJXsiLG49ZSYmZS5zdWZmaXh8fCJ9IjtpZih0PT09bHx8bj09PWwpdGhyb3cgbmV3IFJhbmdlRXJyb3IoJyInK2wrJyIgdG9rZW4gaXMgcmVzZXJ2ZWQgZm9yIHBsdXJhbGl6YXRpb24nKTtyZXR1cm4gbmV3IFJlZ0V4cCh2KHQpKyIoLio/KSIrdihuKSwiZyIpfXZhciBnPS9cJC9nLGI9IiQkIix3PS8lXHsoLio/KVx9L2c7ZnVuY3Rpb24geChlLHQsbixyKXtpZigic3RyaW5nIiE9PXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoIlBvbHlnbG90LnRyYW5zZm9ybVBocmFzZSBleHBlY3RzIGFyZ3VtZW50ICMxIHRvIGJlIHN0cmluZyIpO2lmKG51bGw9PXQpcmV0dXJuIGU7dmFyIG89ZSxjPXJ8fHcscD0ibnVtYmVyIj09PXR5cGVvZiB0P3tzbWFydF9jb3VudDp0fTp0O2lmKG51bGwhPXAuc21hcnRfY291bnQmJm8pe3ZhciBmPXUuY2FsbChvLGwpO289YShmW20obnx8ImVuIixwLnNtYXJ0X2NvdW50KV18fGZbMF0pfXJldHVybiBvPXMuY2FsbChvLGMsZnVuY3Rpb24oZSx0KXtyZXR1cm4gaShwLHQpJiZudWxsIT1wW3RdP3MuY2FsbChwW3RdLGcsYik6ZX0pLG99ZnVuY3Rpb24gQyhlKXt2YXIgdD1lfHx7fTt0aGlzLnBocmFzZXM9e30sdGhpcy5leHRlbmQodC5waHJhc2VzfHx7fSksdGhpcy5jdXJyZW50TG9jYWxlPXQubG9jYWxlfHwiZW4iO3ZhciBuPXQuYWxsb3dNaXNzaW5nP3g6bnVsbDt0aGlzLm9uTWlzc2luZ0tleT0iZnVuY3Rpb24iPT09dHlwZW9mIHQub25NaXNzaW5nS2V5P3Qub25NaXNzaW5nS2V5Om4sdGhpcy53YXJuPXQud2Fybnx8Yyx0aGlzLnRva2VuUmVnZXg9eSh0LmludGVycG9sYXRpb24pfUMucHJvdG90eXBlLmxvY2FsZT1mdW5jdGlvbihlKXtyZXR1cm4gZSYmKHRoaXMuY3VycmVudExvY2FsZT1lKSx0aGlzLmN1cnJlbnRMb2NhbGV9LEMucHJvdG90eXBlLmV4dGVuZD1mdW5jdGlvbihlLHQpe3IoZSxmdW5jdGlvbihlLG4pe3ZhciByPXQ/dCsiLiIrbjpuOyJvYmplY3QiPT09dHlwZW9mIGU/dGhpcy5leHRlbmQoZSxyKTp0aGlzLnBocmFzZXNbcl09ZX0sdGhpcyl9LEMucHJvdG90eXBlLnVuc2V0PWZ1bmN0aW9uKGUsdCl7InN0cmluZyI9PT10eXBlb2YgZT9kZWxldGUgdGhpcy5waHJhc2VzW2VdOnIoZSxmdW5jdGlvbihlLG4pe3ZhciByPXQ/dCsiLiIrbjpuOyJvYmplY3QiPT09dHlwZW9mIGU/dGhpcy51bnNldChlLHIpOmRlbGV0ZSB0aGlzLnBocmFzZXNbcl19LHRoaXMpfSxDLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXMucGhyYXNlcz17fX0sQy5wcm90b3R5cGUucmVwbGFjZT1mdW5jdGlvbihlKXt0aGlzLmNsZWFyKCksdGhpcy5leHRlbmQoZSl9LEMucHJvdG90eXBlLnQ9ZnVuY3Rpb24oZSx0KXt2YXIgbixyLG89bnVsbD09dD97fTp0O2lmKCJzdHJpbmciPT09dHlwZW9mIHRoaXMucGhyYXNlc1tlXSluPXRoaXMucGhyYXNlc1tlXTtlbHNlIGlmKCJzdHJpbmciPT09dHlwZW9mIG8uXyluPW8uXztlbHNlIGlmKHRoaXMub25NaXNzaW5nS2V5KXt2YXIgaT10aGlzLm9uTWlzc2luZ0tleTtyPWkoZSxvLHRoaXMuY3VycmVudExvY2FsZSx0aGlzLnRva2VuUmVnZXgpfWVsc2UgdGhpcy53YXJuKCdNaXNzaW5nIHRyYW5zbGF0aW9uIGZvciBrZXk6ICInK2UrJyInKSxyPWU7cmV0dXJuInN0cmluZyI9PT10eXBlb2YgbiYmKHI9eChuLG8sdGhpcy5jdXJyZW50TG9jYWxlLHRoaXMudG9rZW5SZWdleCkpLHJ9LEMucHJvdG90eXBlLmhhcz1mdW5jdGlvbihlKXtyZXR1cm4gaSh0aGlzLnBocmFzZXMsZSl9LEMudHJhbnNmb3JtUGhyYXNlPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4geChlLHQsbil9LGUuZXhwb3J0cz1DfSwiMjhhNSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCJhYWUzIiksbz1uKCJjYjdjIiksaT1uKCJlYmQ2IiksYT1uKCIwMzkwIiksYz1uKCI5ZGVmIikscz1uKCI1ZjFiIiksdT1uKCI1MjBhIiksbD1uKCI3OWU1IikscD1NYXRoLm1pbixmPVtdLnB1c2gsZD0ic3BsaXQiLGg9Imxlbmd0aCIsXz0ibGFzdEluZGV4IixtPTQyOTQ5NjcyOTUsdj0hbChmdW5jdGlvbigpe1JlZ0V4cChtLCJ5Iil9KTtuKCIyMTRmIikoInNwbGl0IiwyLGZ1bmN0aW9uKGUsdCxuLGwpe3ZhciB5O3JldHVybiB5PSJjIj09ImFiYmMiW2RdKC8oYikqLylbMV18fDQhPSJ0ZXN0IltkXSgvKD86KS8sLTEpW2hdfHwyIT0iYWIiW2RdKC8oPzphYikqLylbaF18fDQhPSIuIltkXSgvKC4/KSguPykvKVtoXXx8Ii4iW2RdKC8oKSgpLylbaF0+MXx8IiJbZF0oLy4/LylbaF0/ZnVuY3Rpb24oZSx0KXt2YXIgbz1TdHJpbmcodGhpcyk7aWYodm9pZCAwPT09ZSYmMD09PXQpcmV0dXJuW107aWYoIXIoZSkpcmV0dXJuIG4uY2FsbChvLGUsdCk7dmFyIGksYSxjLHM9W10sbD0oZS5pZ25vcmVDYXNlPyJpIjoiIikrKGUubXVsdGlsaW5lPyJtIjoiIikrKGUudW5pY29kZT8idSI6IiIpKyhlLnN0aWNreT8ieSI6IiIpLHA9MCxkPXZvaWQgMD09PXQ/bTp0Pj4+MCx2PW5ldyBSZWdFeHAoZS5zb3VyY2UsbCsiZyIpO3doaWxlKGk9dS5jYWxsKHYsbykpe2lmKGE9dltfXSxhPnAmJihzLnB1c2goby5zbGljZShwLGkuaW5kZXgpKSxpW2hdPjEmJmkuaW5kZXg8b1toXSYmZi5hcHBseShzLGkuc2xpY2UoMSkpLGM9aVswXVtoXSxwPWEsc1toXT49ZCkpYnJlYWs7dltfXT09PWkuaW5kZXgmJnZbX10rK31yZXR1cm4gcD09PW9baF0/IWMmJnYudGVzdCgiIil8fHMucHVzaCgiIik6cy5wdXNoKG8uc2xpY2UocCkpLHNbaF0+ZD9zLnNsaWNlKDAsZCk6c306IjAiW2RdKHZvaWQgMCwwKVtoXT9mdW5jdGlvbihlLHQpe3JldHVybiB2b2lkIDA9PT1lJiYwPT09dD9bXTpuLmNhbGwodGhpcyxlLHQpfTpuLFtmdW5jdGlvbihuLHIpe3ZhciBvPWUodGhpcyksaT12b2lkIDA9PW4/dm9pZCAwOm5bdF07cmV0dXJuIHZvaWQgMCE9PWk/aS5jYWxsKG4sbyxyKTp5LmNhbGwoU3RyaW5nKG8pLG4scil9LGZ1bmN0aW9uKGUsdCl7dmFyIHI9bCh5LGUsdGhpcyx0LHkhPT1uKTtpZihyLmRvbmUpcmV0dXJuIHIudmFsdWU7dmFyIHU9byhlKSxmPVN0cmluZyh0aGlzKSxkPWkodSxSZWdFeHApLGg9dS51bmljb2RlLF89KHUuaWdub3JlQ2FzZT8iaSI6IiIpKyh1Lm11bHRpbGluZT8ibSI6IiIpKyh1LnVuaWNvZGU/InUiOiIiKSsodj8ieSI6ImciKSxnPW5ldyBkKHY/dToiXig/OiIrdS5zb3VyY2UrIikiLF8pLGI9dm9pZCAwPT09dD9tOnQ+Pj4wO2lmKDA9PT1iKXJldHVybltdO2lmKDA9PT1mLmxlbmd0aClyZXR1cm4gbnVsbD09PXMoZyxmKT9bZl06W107dmFyIHc9MCx4PTAsQz1bXTt3aGlsZSh4PGYubGVuZ3RoKXtnLmxhc3RJbmRleD12P3g6MDt2YXIgayxTPXMoZyx2P2Y6Zi5zbGljZSh4KSk7aWYobnVsbD09PVN8fChrPXAoYyhnLmxhc3RJbmRleCsodj8wOngpKSxmLmxlbmd0aCkpPT09dyl4PWEoZix4LGgpO2Vsc2V7aWYoQy5wdXNoKGYuc2xpY2Uodyx4KSksQy5sZW5ndGg9PT1iKXJldHVybiBDO2Zvcih2YXIgUD0xO1A8PVMubGVuZ3RoLTE7UCsrKWlmKEMucHVzaChTW1BdKSxDLmxlbmd0aD09PWIpcmV0dXJuIEM7eD13PWt9fXJldHVybiBDLnB1c2goZi5zbGljZSh3KSksQ31dfSl9LCIyOWEzIjpmdW5jdGlvbihlLHQsbil7bigiZjQ2YSIpLGUuZXhwb3J0cz1uKCJhN2QzIikuTnVtYmVyLnBhcnNlRmxvYXR9LCIyYTRlIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiYTgxMiIpLG89bigiZTVmYSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24odCxuKXt2YXIgaSxhLGM9U3RyaW5nKG8odCkpLHM9cihuKSx1PWMubGVuZ3RoO3JldHVybiBzPDB8fHM+PXU/ZT8iIjp2b2lkIDA6KGk9Yy5jaGFyQ29kZUF0KHMpLGk8NTUyOTZ8fGk+NTYzMTl8fHMrMT09PXV8fChhPWMuY2hhckNvZGVBdChzKzEpKTw1NjMyMHx8YT41NzM0Mz9lP2MuY2hhckF0KHMpOmk6ZT9jLnNsaWNlKHMscysyKTphLTU2MzIwKyhpLTU1Mjk2PDwxMCkrNjU1MzYpfX19LCIyYWJhIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNzcyNiIpLG89bigiMzJlOSIpLGk9bigiNjlhOCIpLGE9bigiY2E1YSIpKCJzcmMiKSxjPW4oImZhNWIiKSxzPSJ0b1N0cmluZyIsdT0oIiIrYykuc3BsaXQocyk7bigiODM3OCIpLmluc3BlY3RTb3VyY2U9ZnVuY3Rpb24oZSl7cmV0dXJuIGMuY2FsbChlKX0sKGUuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixjKXt2YXIgcz0iZnVuY3Rpb24iPT10eXBlb2YgbjtzJiYoaShuLCJuYW1lIil8fG8obiwibmFtZSIsdCkpLGVbdF0hPT1uJiYocyYmKGkobixhKXx8byhuLGEsZVt0XT8iIitlW3RdOnUuam9pbihTdHJpbmcodCkpKSksZT09PXI/ZVt0XT1uOmM/ZVt0XT9lW3RdPW46byhlLHQsbik6KGRlbGV0ZSBlW3RdLG8oZSx0LG4pKSl9KShGdW5jdGlvbi5wcm90b3R5cGUscyxmdW5jdGlvbigpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzJiZ0aGlzW2FdfHxjLmNhbGwodGhpcyl9KX0sIjJhZWIiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJjYjdjIiksbz1uKCIxNDk1IiksaT1uKCJlMTFlIiksYT1uKCI2MTNiIikoIklFX1BST1RPIiksYz1mdW5jdGlvbigpe30scz0icHJvdG90eXBlIix1PWZ1bmN0aW9uKCl7dmFyIGUsdD1uKCIyMzBlIikoImlmcmFtZSIpLHI9aS5sZW5ndGgsbz0iPCIsYT0iPiI7dC5zdHlsZS5kaXNwbGF5PSJub25lIixuKCJmYWIyIikuYXBwZW5kQ2hpbGQodCksdC5zcmM9ImphdmFzY3JpcHQ6IixlPXQuY29udGVudFdpbmRvdy5kb2N1bWVudCxlLm9wZW4oKSxlLndyaXRlKG8rInNjcmlwdCIrYSsiZG9jdW1lbnQuRj1PYmplY3QiK28rIi9zY3JpcHQiK2EpLGUuY2xvc2UoKSx1PWUuRjt3aGlsZShyLS0pZGVsZXRlIHVbc11baVtyXV07cmV0dXJuIHUoKX07ZS5leHBvcnRzPU9iamVjdC5jcmVhdGV8fGZ1bmN0aW9uKGUsdCl7dmFyIG47cmV0dXJuIG51bGwhPT1lPyhjW3NdPXIoZSksbj1uZXcgYyxjW3NdPW51bGwsblthXT1lKTpuPXUoKSx2b2lkIDA9PT10P246byhuLHQpfX0sIjJiMGUiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7KGZ1bmN0aW9uKGUpey8qIQoqIFZ1ZS5qcyB2Mi41LjIxCiogKGMpIDIwMTQtMjAxOCBFdmFuIFlvdQoqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4KKi92YXIgbj1PYmplY3QuZnJlZXplKHt9KTtmdW5jdGlvbiByKGUpe3JldHVybiB2b2lkIDA9PT1lfHxudWxsPT09ZX1mdW5jdGlvbiBvKGUpe3JldHVybiB2b2lkIDAhPT1lJiZudWxsIT09ZX1mdW5jdGlvbiBpKGUpe3JldHVybiEwPT09ZX1mdW5jdGlvbiBhKGUpe3JldHVybiExPT09ZX1mdW5jdGlvbiBjKGUpe3JldHVybiJzdHJpbmciPT09dHlwZW9mIGV8fCJudW1iZXIiPT09dHlwZW9mIGV8fCJzeW1ib2wiPT09dHlwZW9mIGV8fCJib29sZWFuIj09PXR5cGVvZiBlfWZ1bmN0aW9uIHMoZSl7cmV0dXJuIG51bGwhPT1lJiYib2JqZWN0Ij09PXR5cGVvZiBlfXZhciB1PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7ZnVuY3Rpb24gbChlKXtyZXR1cm4iW29iamVjdCBPYmplY3RdIj09PXUuY2FsbChlKX1mdW5jdGlvbiBwKGUpe3JldHVybiJbb2JqZWN0IFJlZ0V4cF0iPT09dS5jYWxsKGUpfWZ1bmN0aW9uIGYoZSl7dmFyIHQ9cGFyc2VGbG9hdChTdHJpbmcoZSkpO3JldHVybiB0Pj0wJiZNYXRoLmZsb29yKHQpPT09dCYmaXNGaW5pdGUoZSl9ZnVuY3Rpb24gZChlKXtyZXR1cm4gbnVsbD09ZT8iIjoib2JqZWN0Ij09PXR5cGVvZiBlP0pTT04uc3RyaW5naWZ5KGUsbnVsbCwyKTpTdHJpbmcoZSl9ZnVuY3Rpb24gaChlKXt2YXIgdD1wYXJzZUZsb2F0KGUpO3JldHVybiBpc05hTih0KT9lOnR9ZnVuY3Rpb24gXyhlLHQpe2Zvcih2YXIgbj1PYmplY3QuY3JlYXRlKG51bGwpLHI9ZS5zcGxpdCgiLCIpLG89MDtvPHIubGVuZ3RoO28rKyluW3Jbb11dPSEwO3JldHVybiB0P2Z1bmN0aW9uKGUpe3JldHVybiBuW2UudG9Mb3dlckNhc2UoKV19OmZ1bmN0aW9uKGUpe3JldHVybiBuW2VdfX1fKCJzbG90LGNvbXBvbmVudCIsITApO3ZhciBtPV8oImtleSxyZWYsc2xvdCxzbG90LXNjb3BlLGlzIik7ZnVuY3Rpb24gdihlLHQpe2lmKGUubGVuZ3RoKXt2YXIgbj1lLmluZGV4T2YodCk7aWYobj4tMSlyZXR1cm4gZS5zcGxpY2UobiwxKX19dmFyIHk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtmdW5jdGlvbiBnKGUsdCl7cmV0dXJuIHkuY2FsbChlLHQpfWZ1bmN0aW9uIGIoZSl7dmFyIHQ9T2JqZWN0LmNyZWF0ZShudWxsKTtyZXR1cm4gZnVuY3Rpb24obil7dmFyIHI9dFtuXTtyZXR1cm4gcnx8KHRbbl09ZShuKSl9fXZhciB3PS8tKFx3KS9nLHg9YihmdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKHcsZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD90LnRvVXBwZXJDYXNlKCk6IiJ9KX0pLEM9YihmdW5jdGlvbihlKXtyZXR1cm4gZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKStlLnNsaWNlKDEpfSksaz0vXEIoW0EtWl0pL2csUz1iKGZ1bmN0aW9uKGUpe3JldHVybiBlLnJlcGxhY2UoaywiLSQxIikudG9Mb3dlckNhc2UoKX0pO2Z1bmN0aW9uIFAoZSx0KXtmdW5jdGlvbiBuKG4pe3ZhciByPWFyZ3VtZW50cy5sZW5ndGg7cmV0dXJuIHI/cj4xP2UuYXBwbHkodCxhcmd1bWVudHMpOmUuY2FsbCh0LG4pOmUuY2FsbCh0KX1yZXR1cm4gbi5fbGVuZ3RoPWUubGVuZ3RoLG59ZnVuY3Rpb24gQShlLHQpe3JldHVybiBlLmJpbmQodCl9dmFyIE89RnVuY3Rpb24ucHJvdG90eXBlLmJpbmQ/QTpQO2Z1bmN0aW9uICQoZSx0KXt0PXR8fDA7dmFyIG49ZS5sZW5ndGgtdCxyPW5ldyBBcnJheShuKTt3aGlsZShuLS0pcltuXT1lW24rdF07cmV0dXJuIHJ9ZnVuY3Rpb24gVChlLHQpe2Zvcih2YXIgbiBpbiB0KWVbbl09dFtuXTtyZXR1cm4gZX1mdW5jdGlvbiBqKGUpe2Zvcih2YXIgdD17fSxuPTA7bjxlLmxlbmd0aDtuKyspZVtuXSYmVCh0LGVbbl0pO3JldHVybiB0fWZ1bmN0aW9uIEUoZSx0LG4pe312YXIgTT1mdW5jdGlvbihlLHQsbil7cmV0dXJuITF9LEQ9ZnVuY3Rpb24oZSl7cmV0dXJuIGV9O2Z1bmN0aW9uIEkoZSx0KXtpZihlPT09dClyZXR1cm4hMDt2YXIgbj1zKGUpLHI9cyh0KTtpZighbnx8IXIpcmV0dXJuIW4mJiFyJiZTdHJpbmcoZSk9PT1TdHJpbmcodCk7dHJ5e3ZhciBvPUFycmF5LmlzQXJyYXkoZSksaT1BcnJheS5pc0FycmF5KHQpO2lmKG8mJmkpcmV0dXJuIGUubGVuZ3RoPT09dC5sZW5ndGgmJmUuZXZlcnkoZnVuY3Rpb24oZSxuKXtyZXR1cm4gSShlLHRbbl0pfSk7aWYoZSBpbnN0YW5jZW9mIERhdGUmJnQgaW5zdGFuY2VvZiBEYXRlKXJldHVybiBlLmdldFRpbWUoKT09PXQuZ2V0VGltZSgpO2lmKG98fGkpcmV0dXJuITE7dmFyIGE9T2JqZWN0LmtleXMoZSksYz1PYmplY3Qua2V5cyh0KTtyZXR1cm4gYS5sZW5ndGg9PT1jLmxlbmd0aCYmYS5ldmVyeShmdW5jdGlvbihuKXtyZXR1cm4gSShlW25dLHRbbl0pfSl9Y2F0Y2godSl7cmV0dXJuITF9fWZ1bmN0aW9uIEwoZSx0KXtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKylpZihJKGVbbl0sdCkpcmV0dXJuIG47cmV0dXJuLTF9ZnVuY3Rpb24gRihlKXt2YXIgdD0hMTtyZXR1cm4gZnVuY3Rpb24oKXt0fHwodD0hMCxlLmFwcGx5KHRoaXMsYXJndW1lbnRzKSl9fXZhciBOPSJkYXRhLXNlcnZlci1yZW5kZXJlZCIsUj1bImNvbXBvbmVudCIsImRpcmVjdGl2ZSIsImZpbHRlciJdLFY9WyJiZWZvcmVDcmVhdGUiLCJjcmVhdGVkIiwiYmVmb3JlTW91bnQiLCJtb3VudGVkIiwiYmVmb3JlVXBkYXRlIiwidXBkYXRlZCIsImJlZm9yZURlc3Ryb3kiLCJkZXN0cm95ZWQiLCJhY3RpdmF0ZWQiLCJkZWFjdGl2YXRlZCIsImVycm9yQ2FwdHVyZWQiXSxIPXtvcHRpb25NZXJnZVN0cmF0ZWdpZXM6T2JqZWN0LmNyZWF0ZShudWxsKSxzaWxlbnQ6ITEscHJvZHVjdGlvblRpcDohMSxkZXZ0b29sczohMSxwZXJmb3JtYW5jZTohMSxlcnJvckhhbmRsZXI6bnVsbCx3YXJuSGFuZGxlcjpudWxsLGlnbm9yZWRFbGVtZW50czpbXSxrZXlDb2RlczpPYmplY3QuY3JlYXRlKG51bGwpLGlzUmVzZXJ2ZWRUYWc6TSxpc1Jlc2VydmVkQXR0cjpNLGlzVW5rbm93bkVsZW1lbnQ6TSxnZXRUYWdOYW1lc3BhY2U6RSxwYXJzZVBsYXRmb3JtVGFnTmFtZTpELG11c3RVc2VQcm9wOk0sYXN5bmM6ITAsX2xpZmVjeWNsZUhvb2tzOlZ9O2Z1bmN0aW9uIFUoZSl7dmFyIHQ9KGUrIiIpLmNoYXJDb2RlQXQoMCk7cmV0dXJuIDM2PT09dHx8OTU9PT10fWZ1bmN0aW9uIHooZSx0LG4scil7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7dmFsdWU6bixlbnVtZXJhYmxlOiEhcix3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9KX12YXIgQj0vW15cdy4kXS87ZnVuY3Rpb24gRyhlKXtpZighQi50ZXN0KGUpKXt2YXIgdD1lLnNwbGl0KCIuIik7cmV0dXJuIGZ1bmN0aW9uKGUpe2Zvcih2YXIgbj0wO248dC5sZW5ndGg7bisrKXtpZighZSlyZXR1cm47ZT1lW3Rbbl1dfXJldHVybiBlfX19dmFyIFcsSz0iX19wcm90b19fImlue30scT0idW5kZWZpbmVkIiE9PXR5cGVvZiB3aW5kb3csWD0idW5kZWZpbmVkIiE9PXR5cGVvZiBXWEVudmlyb25tZW50JiYhIVdYRW52aXJvbm1lbnQucGxhdGZvcm0sSj1YJiZXWEVudmlyb25tZW50LnBsYXRmb3JtLnRvTG93ZXJDYXNlKCksWT1xJiZ3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLFo9WSYmL21zaWV8dHJpZGVudC8udGVzdChZKSxRPVkmJlkuaW5kZXhPZigibXNpZSA5LjAiKT4wLGVlPVkmJlkuaW5kZXhPZigiZWRnZS8iKT4wLHRlPShZJiZZLmluZGV4T2YoImFuZHJvaWQiKSxZJiYvaXBob25lfGlwYWR8aXBvZHxpb3MvLnRlc3QoWSl8fCJpb3MiPT09SiksbmU9KFkmJi9jaHJvbWVcL1xkKy8udGVzdChZKSx7fS53YXRjaCkscmU9ITE7aWYocSl0cnl7dmFyIG9lPXt9O09iamVjdC5kZWZpbmVQcm9wZXJ0eShvZSwicGFzc2l2ZSIse2dldDpmdW5jdGlvbigpe3JlPSEwfX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0LXBhc3NpdmUiLG51bGwsb2UpfWNhdGNoKGNhKXt9dmFyIGllPWZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgMD09PVcmJihXPSFxJiYhWCYmInVuZGVmaW5lZCIhPT10eXBlb2YgZSYmKGVbInByb2Nlc3MiXSYmInNlcnZlciI9PT1lWyJwcm9jZXNzIl0uZW52LlZVRV9FTlYpKSxXfSxhZT1xJiZ3aW5kb3cuX19WVUVfREVWVE9PTFNfR0xPQkFMX0hPT0tfXztmdW5jdGlvbiBjZShlKXtyZXR1cm4iZnVuY3Rpb24iPT09dHlwZW9mIGUmJi9uYXRpdmUgY29kZS8udGVzdChlLnRvU3RyaW5nKCkpfXZhciBzZSx1ZT0idW5kZWZpbmVkIiE9PXR5cGVvZiBTeW1ib2wmJmNlKFN5bWJvbCkmJiJ1bmRlZmluZWQiIT09dHlwZW9mIFJlZmxlY3QmJmNlKFJlZmxlY3Qub3duS2V5cyk7c2U9InVuZGVmaW5lZCIhPT10eXBlb2YgU2V0JiZjZShTZXQpP1NldDpmdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXt0aGlzLnNldD1PYmplY3QuY3JlYXRlKG51bGwpfXJldHVybiBlLnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oZSl7cmV0dXJuITA9PT10aGlzLnNldFtlXX0sZS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGUpe3RoaXMuc2V0W2VdPSEwfSxlLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXMuc2V0PU9iamVjdC5jcmVhdGUobnVsbCl9LGV9KCk7dmFyIGxlPUUscGU9MCxmZT1mdW5jdGlvbigpe3RoaXMuaWQ9cGUrKyx0aGlzLnN1YnM9W119O2ZlLnByb3RvdHlwZS5hZGRTdWI9ZnVuY3Rpb24oZSl7dGhpcy5zdWJzLnB1c2goZSl9LGZlLnByb3RvdHlwZS5yZW1vdmVTdWI9ZnVuY3Rpb24oZSl7dih0aGlzLnN1YnMsZSl9LGZlLnByb3RvdHlwZS5kZXBlbmQ9ZnVuY3Rpb24oKXtmZS50YXJnZXQmJmZlLnRhcmdldC5hZGREZXAodGhpcyl9LGZlLnByb3RvdHlwZS5ub3RpZnk9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLnN1YnMuc2xpY2UoKTtmb3IodmFyIHQ9MCxuPWUubGVuZ3RoO3Q8bjt0KyspZVt0XS51cGRhdGUoKX0sZmUudGFyZ2V0PW51bGw7dmFyIGRlPVtdO2Z1bmN0aW9uIGhlKGUpe2RlLnB1c2goZSksZmUudGFyZ2V0PWV9ZnVuY3Rpb24gX2UoKXtkZS5wb3AoKSxmZS50YXJnZXQ9ZGVbZGUubGVuZ3RoLTFdfXZhciBtZT1mdW5jdGlvbihlLHQsbixyLG8saSxhLGMpe3RoaXMudGFnPWUsdGhpcy5kYXRhPXQsdGhpcy5jaGlsZHJlbj1uLHRoaXMudGV4dD1yLHRoaXMuZWxtPW8sdGhpcy5ucz12b2lkIDAsdGhpcy5jb250ZXh0PWksdGhpcy5mbkNvbnRleHQ9dm9pZCAwLHRoaXMuZm5PcHRpb25zPXZvaWQgMCx0aGlzLmZuU2NvcGVJZD12b2lkIDAsdGhpcy5rZXk9dCYmdC5rZXksdGhpcy5jb21wb25lbnRPcHRpb25zPWEsdGhpcy5jb21wb25lbnRJbnN0YW5jZT12b2lkIDAsdGhpcy5wYXJlbnQ9dm9pZCAwLHRoaXMucmF3PSExLHRoaXMuaXNTdGF0aWM9ITEsdGhpcy5pc1Jvb3RJbnNlcnQ9ITAsdGhpcy5pc0NvbW1lbnQ9ITEsdGhpcy5pc0Nsb25lZD0hMSx0aGlzLmlzT25jZT0hMSx0aGlzLmFzeW5jRmFjdG9yeT1jLHRoaXMuYXN5bmNNZXRhPXZvaWQgMCx0aGlzLmlzQXN5bmNQbGFjZWhvbGRlcj0hMX0sdmU9e2NoaWxkOntjb25maWd1cmFibGU6ITB9fTt2ZS5jaGlsZC5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb21wb25lbnRJbnN0YW5jZX0sT2JqZWN0LmRlZmluZVByb3BlcnRpZXMobWUucHJvdG90eXBlLHZlKTt2YXIgeWU9ZnVuY3Rpb24oZSl7dm9pZCAwPT09ZSYmKGU9IiIpO3ZhciB0PW5ldyBtZTtyZXR1cm4gdC50ZXh0PWUsdC5pc0NvbW1lbnQ9ITAsdH07ZnVuY3Rpb24gZ2UoZSl7cmV0dXJuIG5ldyBtZSh2b2lkIDAsdm9pZCAwLHZvaWQgMCxTdHJpbmcoZSkpfWZ1bmN0aW9uIGJlKGUpe3ZhciB0PW5ldyBtZShlLnRhZyxlLmRhdGEsZS5jaGlsZHJlbiYmZS5jaGlsZHJlbi5zbGljZSgpLGUudGV4dCxlLmVsbSxlLmNvbnRleHQsZS5jb21wb25lbnRPcHRpb25zLGUuYXN5bmNGYWN0b3J5KTtyZXR1cm4gdC5ucz1lLm5zLHQuaXNTdGF0aWM9ZS5pc1N0YXRpYyx0LmtleT1lLmtleSx0LmlzQ29tbWVudD1lLmlzQ29tbWVudCx0LmZuQ29udGV4dD1lLmZuQ29udGV4dCx0LmZuT3B0aW9ucz1lLmZuT3B0aW9ucyx0LmZuU2NvcGVJZD1lLmZuU2NvcGVJZCx0LmFzeW5jTWV0YT1lLmFzeW5jTWV0YSx0LmlzQ2xvbmVkPSEwLHR9dmFyIHdlPUFycmF5LnByb3RvdHlwZSx4ZT1PYmplY3QuY3JlYXRlKHdlKSxDZT1bInB1c2giLCJwb3AiLCJzaGlmdCIsInVuc2hpZnQiLCJzcGxpY2UiLCJzb3J0IiwicmV2ZXJzZSJdO0NlLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9d2VbZV07eih4ZSxlLGZ1bmN0aW9uKCl7dmFyIG49W10scj1hcmd1bWVudHMubGVuZ3RoO3doaWxlKHItLSluW3JdPWFyZ3VtZW50c1tyXTt2YXIgbyxpPXQuYXBwbHkodGhpcyxuKSxhPXRoaXMuX19vYl9fO3N3aXRjaChlKXtjYXNlInB1c2giOmNhc2UidW5zaGlmdCI6bz1uO2JyZWFrO2Nhc2Uic3BsaWNlIjpvPW4uc2xpY2UoMik7YnJlYWt9cmV0dXJuIG8mJmEub2JzZXJ2ZUFycmF5KG8pLGEuZGVwLm5vdGlmeSgpLGl9KX0pO3ZhciBrZT1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh4ZSksU2U9ITA7ZnVuY3Rpb24gUGUoZSl7U2U9ZX12YXIgQWU9ZnVuY3Rpb24oZSl7dGhpcy52YWx1ZT1lLHRoaXMuZGVwPW5ldyBmZSx0aGlzLnZtQ291bnQ9MCx6KGUsIl9fb2JfXyIsdGhpcyksQXJyYXkuaXNBcnJheShlKT8oSz9PZShlLHhlKTokZShlLHhlLGtlKSx0aGlzLm9ic2VydmVBcnJheShlKSk6dGhpcy53YWxrKGUpfTtmdW5jdGlvbiBPZShlLHQpe2UuX19wcm90b19fPXR9ZnVuY3Rpb24gJGUoZSx0LG4pe2Zvcih2YXIgcj0wLG89bi5sZW5ndGg7cjxvO3IrKyl7dmFyIGk9bltyXTt6KGUsaSx0W2ldKX19ZnVuY3Rpb24gVGUoZSx0KXt2YXIgbjtpZihzKGUpJiYhKGUgaW5zdGFuY2VvZiBtZSkpcmV0dXJuIGcoZSwiX19vYl9fIikmJmUuX19vYl9fIGluc3RhbmNlb2YgQWU/bj1lLl9fb2JfXzpTZSYmIWllKCkmJihBcnJheS5pc0FycmF5KGUpfHxsKGUpKSYmT2JqZWN0LmlzRXh0ZW5zaWJsZShlKSYmIWUuX2lzVnVlJiYobj1uZXcgQWUoZSkpLHQmJm4mJm4udm1Db3VudCsrLG59ZnVuY3Rpb24gamUoZSx0LG4scixvKXt2YXIgaT1uZXcgZmUsYT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsdCk7aWYoIWF8fCExIT09YS5jb25maWd1cmFibGUpe3ZhciBjPWEmJmEuZ2V0LHM9YSYmYS5zZXQ7YyYmIXN8fDIhPT1hcmd1bWVudHMubGVuZ3RofHwobj1lW3RdKTt2YXIgdT0hbyYmVGUobik7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7dmFyIHQ9Yz9jLmNhbGwoZSk6bjtyZXR1cm4gZmUudGFyZ2V0JiYoaS5kZXBlbmQoKSx1JiYodS5kZXAuZGVwZW5kKCksQXJyYXkuaXNBcnJheSh0KSYmRGUodCkpKSx0fSxzZXQ6ZnVuY3Rpb24odCl7dmFyIHI9Yz9jLmNhbGwoZSk6bjt0PT09cnx8dCE9PXQmJnIhPT1yfHxjJiYhc3x8KHM/cy5jYWxsKGUsdCk6bj10LHU9IW8mJlRlKHQpLGkubm90aWZ5KCkpfX0pfX1mdW5jdGlvbiBFZShlLHQsbil7aWYoQXJyYXkuaXNBcnJheShlKSYmZih0KSlyZXR1cm4gZS5sZW5ndGg9TWF0aC5tYXgoZS5sZW5ndGgsdCksZS5zcGxpY2UodCwxLG4pLG47aWYodCBpbiBlJiYhKHQgaW4gT2JqZWN0LnByb3RvdHlwZSkpcmV0dXJuIGVbdF09bixuO3ZhciByPWUuX19vYl9fO3JldHVybiBlLl9pc1Z1ZXx8ciYmci52bUNvdW50P246cj8oamUoci52YWx1ZSx0LG4pLHIuZGVwLm5vdGlmeSgpLG4pOihlW3RdPW4sbil9ZnVuY3Rpb24gTWUoZSx0KXtpZihBcnJheS5pc0FycmF5KGUpJiZmKHQpKWUuc3BsaWNlKHQsMSk7ZWxzZXt2YXIgbj1lLl9fb2JfXztlLl9pc1Z1ZXx8biYmbi52bUNvdW50fHxnKGUsdCkmJihkZWxldGUgZVt0XSxuJiZuLmRlcC5ub3RpZnkoKSl9fWZ1bmN0aW9uIERlKGUpe2Zvcih2YXIgdD12b2lkIDAsbj0wLHI9ZS5sZW5ndGg7bjxyO24rKyl0PWVbbl0sdCYmdC5fX29iX18mJnQuX19vYl9fLmRlcC5kZXBlbmQoKSxBcnJheS5pc0FycmF5KHQpJiZEZSh0KX1BZS5wcm90b3R5cGUud2Fsaz1mdW5jdGlvbihlKXtmb3IodmFyIHQ9T2JqZWN0LmtleXMoZSksbj0wO248dC5sZW5ndGg7bisrKWplKGUsdFtuXSl9LEFlLnByb3RvdHlwZS5vYnNlcnZlQXJyYXk9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTAsbj1lLmxlbmd0aDt0PG47dCsrKVRlKGVbdF0pfTt2YXIgSWU9SC5vcHRpb25NZXJnZVN0cmF0ZWdpZXM7ZnVuY3Rpb24gTGUoZSx0KXtpZighdClyZXR1cm4gZTtmb3IodmFyIG4scixvLGk9T2JqZWN0LmtleXModCksYT0wO2E8aS5sZW5ndGg7YSsrKW49aVthXSxyPWVbbl0sbz10W25dLGcoZSxuKT9yIT09byYmbChyKSYmbChvKSYmTGUocixvKTpFZShlLG4sbyk7cmV0dXJuIGV9ZnVuY3Rpb24gRmUoZSx0LG4pe3JldHVybiBuP2Z1bmN0aW9uKCl7dmFyIHI9ImZ1bmN0aW9uIj09PXR5cGVvZiB0P3QuY2FsbChuLG4pOnQsbz0iZnVuY3Rpb24iPT09dHlwZW9mIGU/ZS5jYWxsKG4sbik6ZTtyZXR1cm4gcj9MZShyLG8pOm99OnQ/ZT9mdW5jdGlvbigpe3JldHVybiBMZSgiZnVuY3Rpb24iPT09dHlwZW9mIHQ/dC5jYWxsKHRoaXMsdGhpcyk6dCwiZnVuY3Rpb24iPT09dHlwZW9mIGU/ZS5jYWxsKHRoaXMsdGhpcyk6ZSl9OnQ6ZX1mdW5jdGlvbiBOZShlLHQpe3JldHVybiB0P2U/ZS5jb25jYXQodCk6QXJyYXkuaXNBcnJheSh0KT90Olt0XTplfWZ1bmN0aW9uIFJlKGUsdCxuLHIpe3ZhciBvPU9iamVjdC5jcmVhdGUoZXx8bnVsbCk7cmV0dXJuIHQ/VChvLHQpOm99SWUuZGF0YT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIG4/RmUoZSx0LG4pOnQmJiJmdW5jdGlvbiIhPT10eXBlb2YgdD9lOkZlKGUsdCl9LFYuZm9yRWFjaChmdW5jdGlvbihlKXtJZVtlXT1OZX0pLFIuZm9yRWFjaChmdW5jdGlvbihlKXtJZVtlKyJzIl09UmV9KSxJZS53YXRjaD1mdW5jdGlvbihlLHQsbixyKXtpZihlPT09bmUmJihlPXZvaWQgMCksdD09PW5lJiYodD12b2lkIDApLCF0KXJldHVybiBPYmplY3QuY3JlYXRlKGV8fG51bGwpO2lmKCFlKXJldHVybiB0O3ZhciBvPXt9O2Zvcih2YXIgaSBpbiBUKG8sZSksdCl7dmFyIGE9b1tpXSxjPXRbaV07YSYmIUFycmF5LmlzQXJyYXkoYSkmJihhPVthXSksb1tpXT1hP2EuY29uY2F0KGMpOkFycmF5LmlzQXJyYXkoYyk/YzpbY119cmV0dXJuIG99LEllLnByb3BzPUllLm1ldGhvZHM9SWUuaW5qZWN0PUllLmNvbXB1dGVkPWZ1bmN0aW9uKGUsdCxuLHIpe2lmKCFlKXJldHVybiB0O3ZhciBvPU9iamVjdC5jcmVhdGUobnVsbCk7cmV0dXJuIFQobyxlKSx0JiZUKG8sdCksb30sSWUucHJvdmlkZT1GZTt2YXIgVmU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdm9pZCAwPT09dD9lOnR9O2Z1bmN0aW9uIEhlKGUsdCl7dmFyIG49ZS5wcm9wcztpZihuKXt2YXIgcixvLGksYT17fTtpZihBcnJheS5pc0FycmF5KG4pKXtyPW4ubGVuZ3RoO3doaWxlKHItLSlvPW5bcl0sInN0cmluZyI9PT10eXBlb2YgbyYmKGk9eChvKSxhW2ldPXt0eXBlOm51bGx9KX1lbHNlIGlmKGwobikpZm9yKHZhciBjIGluIG4pbz1uW2NdLGk9eChjKSxhW2ldPWwobyk/bzp7dHlwZTpvfTtlbHNlIDA7ZS5wcm9wcz1hfX1mdW5jdGlvbiBVZShlLHQpe3ZhciBuPWUuaW5qZWN0O2lmKG4pe3ZhciByPWUuaW5qZWN0PXt9O2lmKEFycmF5LmlzQXJyYXkobikpZm9yKHZhciBvPTA7bzxuLmxlbmd0aDtvKyspcltuW29dXT17ZnJvbTpuW29dfTtlbHNlIGlmKGwobikpZm9yKHZhciBpIGluIG4pe3ZhciBhPW5baV07cltpXT1sKGEpP1Qoe2Zyb206aX0sYSk6e2Zyb206YX19ZWxzZSAwfX1mdW5jdGlvbiB6ZShlKXt2YXIgdD1lLmRpcmVjdGl2ZXM7aWYodClmb3IodmFyIG4gaW4gdCl7dmFyIHI9dFtuXTsiZnVuY3Rpb24iPT09dHlwZW9mIHImJih0W25dPXtiaW5kOnIsdXBkYXRlOnJ9KX19ZnVuY3Rpb24gQmUoZSx0LG4pe2lmKCJmdW5jdGlvbiI9PT10eXBlb2YgdCYmKHQ9dC5vcHRpb25zKSxIZSh0LG4pLFVlKHQsbiksemUodCksIXQuX2Jhc2UmJih0LmV4dGVuZHMmJihlPUJlKGUsdC5leHRlbmRzLG4pKSx0Lm1peGlucykpZm9yKHZhciByPTAsbz10Lm1peGlucy5sZW5ndGg7cjxvO3IrKyllPUJlKGUsdC5taXhpbnNbcl0sbik7dmFyIGksYT17fTtmb3IoaSBpbiBlKWMoaSk7Zm9yKGkgaW4gdClnKGUsaSl8fGMoaSk7ZnVuY3Rpb24gYyhyKXt2YXIgbz1JZVtyXXx8VmU7YVtyXT1vKGVbcl0sdFtyXSxuLHIpfXJldHVybiBhfWZ1bmN0aW9uIEdlKGUsdCxuLHIpe2lmKCJzdHJpbmciPT09dHlwZW9mIG4pe3ZhciBvPWVbdF07aWYoZyhvLG4pKXJldHVybiBvW25dO3ZhciBpPXgobik7aWYoZyhvLGkpKXJldHVybiBvW2ldO3ZhciBhPUMoaSk7aWYoZyhvLGEpKXJldHVybiBvW2FdO3ZhciBjPW9bbl18fG9baV18fG9bYV07cmV0dXJuIGN9fWZ1bmN0aW9uIFdlKGUsdCxuLHIpe3ZhciBvPXRbZV0saT0hZyhuLGUpLGE9bltlXSxjPUplKEJvb2xlYW4sby50eXBlKTtpZihjPi0xKWlmKGkmJiFnKG8sImRlZmF1bHQiKSlhPSExO2Vsc2UgaWYoIiI9PT1hfHxhPT09UyhlKSl7dmFyIHM9SmUoU3RyaW5nLG8udHlwZSk7KHM8MHx8YzxzKSYmKGE9ITApfWlmKHZvaWQgMD09PWEpe2E9S2UocixvLGUpO3ZhciB1PVNlO1BlKCEwKSxUZShhKSxQZSh1KX1yZXR1cm4gYX1mdW5jdGlvbiBLZShlLHQsbil7aWYoZyh0LCJkZWZhdWx0Iikpe3ZhciByPXQuZGVmYXVsdDtyZXR1cm4gZSYmZS4kb3B0aW9ucy5wcm9wc0RhdGEmJnZvaWQgMD09PWUuJG9wdGlvbnMucHJvcHNEYXRhW25dJiZ2b2lkIDAhPT1lLl9wcm9wc1tuXT9lLl9wcm9wc1tuXToiZnVuY3Rpb24iPT09dHlwZW9mIHImJiJGdW5jdGlvbiIhPT1xZSh0LnR5cGUpP3IuY2FsbChlKTpyfX1mdW5jdGlvbiBxZShlKXt2YXIgdD1lJiZlLnRvU3RyaW5nKCkubWF0Y2goL15ccypmdW5jdGlvbiAoXHcrKS8pO3JldHVybiB0P3RbMV06IiJ9ZnVuY3Rpb24gWGUoZSx0KXtyZXR1cm4gcWUoZSk9PT1xZSh0KX1mdW5jdGlvbiBKZShlLHQpe2lmKCFBcnJheS5pc0FycmF5KHQpKXJldHVybiBYZSh0LGUpPzA6LTE7Zm9yKHZhciBuPTAscj10Lmxlbmd0aDtuPHI7bisrKWlmKFhlKHRbbl0sZSkpcmV0dXJuIG47cmV0dXJuLTF9ZnVuY3Rpb24gWWUoZSx0LG4pe2lmKHQpe3ZhciByPXQ7d2hpbGUocj1yLiRwYXJlbnQpe3ZhciBvPXIuJG9wdGlvbnMuZXJyb3JDYXB0dXJlZDtpZihvKWZvcih2YXIgaT0wO2k8by5sZW5ndGg7aSsrKXRyeXt2YXIgYT0hMT09PW9baV0uY2FsbChyLGUsdCxuKTtpZihhKXJldHVybn1jYXRjaChjYSl7WmUoY2EsciwiZXJyb3JDYXB0dXJlZCBob29rIil9fX1aZShlLHQsbil9ZnVuY3Rpb24gWmUoZSx0LG4pe2lmKEguZXJyb3JIYW5kbGVyKXRyeXtyZXR1cm4gSC5lcnJvckhhbmRsZXIuY2FsbChudWxsLGUsdCxuKX1jYXRjaChjYSl7UWUoY2EsbnVsbCwiY29uZmlnLmVycm9ySGFuZGxlciIpfVFlKGUsdCxuKX1mdW5jdGlvbiBRZShlLHQsbil7aWYoIXEmJiFYfHwidW5kZWZpbmVkIj09PXR5cGVvZiBjb25zb2xlKXRocm93IGU7Y29uc29sZS5lcnJvcihlKX12YXIgZXQsdHQsbnQ9W10scnQ9ITE7ZnVuY3Rpb24gb3QoKXtydD0hMTt2YXIgZT1udC5zbGljZSgwKTtudC5sZW5ndGg9MDtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyllW3RdKCl9dmFyIGl0PSExO2lmKCJ1bmRlZmluZWQiIT09dHlwZW9mIHNldEltbWVkaWF0ZSYmY2Uoc2V0SW1tZWRpYXRlKSl0dD1mdW5jdGlvbigpe3NldEltbWVkaWF0ZShvdCl9O2Vsc2UgaWYoInVuZGVmaW5lZCI9PT10eXBlb2YgTWVzc2FnZUNoYW5uZWx8fCFjZShNZXNzYWdlQ2hhbm5lbCkmJiJbb2JqZWN0IE1lc3NhZ2VDaGFubmVsQ29uc3RydWN0b3JdIiE9PU1lc3NhZ2VDaGFubmVsLnRvU3RyaW5nKCkpdHQ9ZnVuY3Rpb24oKXtzZXRUaW1lb3V0KG90LDApfTtlbHNle3ZhciBhdD1uZXcgTWVzc2FnZUNoYW5uZWwsY3Q9YXQucG9ydDI7YXQucG9ydDEub25tZXNzYWdlPW90LHR0PWZ1bmN0aW9uKCl7Y3QucG9zdE1lc3NhZ2UoMSl9fWlmKCJ1bmRlZmluZWQiIT09dHlwZW9mIFByb21pc2UmJmNlKFByb21pc2UpKXt2YXIgc3Q9UHJvbWlzZS5yZXNvbHZlKCk7ZXQ9ZnVuY3Rpb24oKXtzdC50aGVuKG90KSx0ZSYmc2V0VGltZW91dChFKX19ZWxzZSBldD10dDtmdW5jdGlvbiB1dChlKXtyZXR1cm4gZS5fd2l0aFRhc2t8fChlLl93aXRoVGFzaz1mdW5jdGlvbigpe2l0PSEwO3RyeXtyZXR1cm4gZS5hcHBseShudWxsLGFyZ3VtZW50cyl9ZmluYWxseXtpdD0hMX19KX1mdW5jdGlvbiBsdChlLHQpe3ZhciBuO2lmKG50LnB1c2goZnVuY3Rpb24oKXtpZihlKXRyeXtlLmNhbGwodCl9Y2F0Y2goY2Epe1llKGNhLHQsIm5leHRUaWNrIil9ZWxzZSBuJiZuKHQpfSkscnR8fChydD0hMCxpdD90dCgpOmV0KCkpLCFlJiYidW5kZWZpbmVkIiE9PXR5cGVvZiBQcm9taXNlKXJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihlKXtuPWV9KX12YXIgcHQ9bmV3IHNlO2Z1bmN0aW9uIGZ0KGUpe2R0KGUscHQpLHB0LmNsZWFyKCl9ZnVuY3Rpb24gZHQoZSx0KXt2YXIgbixyLG89QXJyYXkuaXNBcnJheShlKTtpZighKCFvJiYhcyhlKXx8T2JqZWN0LmlzRnJvemVuKGUpfHxlIGluc3RhbmNlb2YgbWUpKXtpZihlLl9fb2JfXyl7dmFyIGk9ZS5fX29iX18uZGVwLmlkO2lmKHQuaGFzKGkpKXJldHVybjt0LmFkZChpKX1pZihvKXtuPWUubGVuZ3RoO3doaWxlKG4tLSlkdChlW25dLHQpfWVsc2V7cj1PYmplY3Qua2V5cyhlKSxuPXIubGVuZ3RoO3doaWxlKG4tLSlkdChlW3Jbbl1dLHQpfX19dmFyIGh0LF90PWIoZnVuY3Rpb24oZSl7dmFyIHQ9IiYiPT09ZS5jaGFyQXQoMCk7ZT10P2Uuc2xpY2UoMSk6ZTt2YXIgbj0ifiI9PT1lLmNoYXJBdCgwKTtlPW4/ZS5zbGljZSgxKTplO3ZhciByPSIhIj09PWUuY2hhckF0KDApO3JldHVybiBlPXI/ZS5zbGljZSgxKTplLHtuYW1lOmUsb25jZTpuLGNhcHR1cmU6cixwYXNzaXZlOnR9fSk7ZnVuY3Rpb24gbXQoZSl7ZnVuY3Rpb24gdCgpe3ZhciBlPWFyZ3VtZW50cyxuPXQuZm5zO2lmKCFBcnJheS5pc0FycmF5KG4pKXJldHVybiBuLmFwcGx5KG51bGwsYXJndW1lbnRzKTtmb3IodmFyIHI9bi5zbGljZSgpLG89MDtvPHIubGVuZ3RoO28rKylyW29dLmFwcGx5KG51bGwsZSl9cmV0dXJuIHQuZm5zPWUsdH1mdW5jdGlvbiB2dChlLHQsbixvLGEsYyl7dmFyIHMsdSxsLHA7Zm9yKHMgaW4gZSl1PWVbc10sbD10W3NdLHA9X3Qocykscih1KXx8KHIobCk/KHIodS5mbnMpJiYodT1lW3NdPW10KHUpKSxpKHAub25jZSkmJih1PWVbc109YShwLm5hbWUsdSxwLmNhcHR1cmUpKSxuKHAubmFtZSx1LHAuY2FwdHVyZSxwLnBhc3NpdmUscC5wYXJhbXMpKTp1IT09bCYmKGwuZm5zPXUsZVtzXT1sKSk7Zm9yKHMgaW4gdClyKGVbc10pJiYocD1fdChzKSxvKHAubmFtZSx0W3NdLHAuY2FwdHVyZSkpfWZ1bmN0aW9uIHl0KGUsdCxuKXt2YXIgYTtlIGluc3RhbmNlb2YgbWUmJihlPWUuZGF0YS5ob29rfHwoZS5kYXRhLmhvb2s9e30pKTt2YXIgYz1lW3RdO2Z1bmN0aW9uIHMoKXtuLmFwcGx5KHRoaXMsYXJndW1lbnRzKSx2KGEuZm5zLHMpfXIoYyk/YT1tdChbc10pOm8oYy5mbnMpJiZpKGMubWVyZ2VkKT8oYT1jLGEuZm5zLnB1c2gocykpOmE9bXQoW2Msc10pLGEubWVyZ2VkPSEwLGVbdF09YX1mdW5jdGlvbiBndChlLHQsbil7dmFyIGk9dC5vcHRpb25zLnByb3BzO2lmKCFyKGkpKXt2YXIgYT17fSxjPWUuYXR0cnMscz1lLnByb3BzO2lmKG8oYyl8fG8ocykpZm9yKHZhciB1IGluIGkpe3ZhciBsPVModSk7YnQoYSxzLHUsbCwhMCl8fGJ0KGEsYyx1LGwsITEpfXJldHVybiBhfX1mdW5jdGlvbiBidChlLHQsbixyLGkpe2lmKG8odCkpe2lmKGcodCxuKSlyZXR1cm4gZVtuXT10W25dLGl8fGRlbGV0ZSB0W25dLCEwO2lmKGcodCxyKSlyZXR1cm4gZVtuXT10W3JdLGl8fGRlbGV0ZSB0W3JdLCEwfXJldHVybiExfWZ1bmN0aW9uIHd0KGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKWlmKEFycmF5LmlzQXJyYXkoZVt0XSkpcmV0dXJuIEFycmF5LnByb3RvdHlwZS5jb25jYXQuYXBwbHkoW10sZSk7cmV0dXJuIGV9ZnVuY3Rpb24geHQoZSl7cmV0dXJuIGMoZSk/W2dlKGUpXTpBcnJheS5pc0FycmF5KGUpP2t0KGUpOnZvaWQgMH1mdW5jdGlvbiBDdChlKXtyZXR1cm4gbyhlKSYmbyhlLnRleHQpJiZhKGUuaXNDb21tZW50KX1mdW5jdGlvbiBrdChlLHQpe3ZhciBuLGEscyx1LGw9W107Zm9yKG49MDtuPGUubGVuZ3RoO24rKylhPWVbbl0scihhKXx8ImJvb2xlYW4iPT09dHlwZW9mIGF8fChzPWwubGVuZ3RoLTEsdT1sW3NdLEFycmF5LmlzQXJyYXkoYSk/YS5sZW5ndGg+MCYmKGE9a3QoYSwodHx8IiIpKyJfIituKSxDdChhWzBdKSYmQ3QodSkmJihsW3NdPWdlKHUudGV4dCthWzBdLnRleHQpLGEuc2hpZnQoKSksbC5wdXNoLmFwcGx5KGwsYSkpOmMoYSk/Q3QodSk/bFtzXT1nZSh1LnRleHQrYSk6IiIhPT1hJiZsLnB1c2goZ2UoYSkpOkN0KGEpJiZDdCh1KT9sW3NdPWdlKHUudGV4dCthLnRleHQpOihpKGUuX2lzVkxpc3QpJiZvKGEudGFnKSYmcihhLmtleSkmJm8odCkmJihhLmtleT0iX192bGlzdCIrdCsiXyIrbisiX18iKSxsLnB1c2goYSkpKTtyZXR1cm4gbH1mdW5jdGlvbiBTdChlLHQpe3JldHVybihlLl9fZXNNb2R1bGV8fHVlJiYiTW9kdWxlIj09PWVbU3ltYm9sLnRvU3RyaW5nVGFnXSkmJihlPWUuZGVmYXVsdCkscyhlKT90LmV4dGVuZChlKTplfWZ1bmN0aW9uIFB0KGUsdCxuLHIsbyl7dmFyIGk9eWUoKTtyZXR1cm4gaS5hc3luY0ZhY3Rvcnk9ZSxpLmFzeW5jTWV0YT17ZGF0YTp0LGNvbnRleHQ6bixjaGlsZHJlbjpyLHRhZzpvfSxpfWZ1bmN0aW9uIEF0KGUsdCxuKXtpZihpKGUuZXJyb3IpJiZvKGUuZXJyb3JDb21wKSlyZXR1cm4gZS5lcnJvckNvbXA7aWYobyhlLnJlc29sdmVkKSlyZXR1cm4gZS5yZXNvbHZlZDtpZihpKGUubG9hZGluZykmJm8oZS5sb2FkaW5nQ29tcCkpcmV0dXJuIGUubG9hZGluZ0NvbXA7aWYoIW8oZS5jb250ZXh0cykpe3ZhciBhPWUuY29udGV4dHM9W25dLGM9ITAsdT1mdW5jdGlvbihlKXtmb3IodmFyIHQ9MCxuPWEubGVuZ3RoO3Q8bjt0KyspYVt0XS4kZm9yY2VVcGRhdGUoKTtlJiYoYS5sZW5ndGg9MCl9LGw9RihmdW5jdGlvbihuKXtlLnJlc29sdmVkPVN0KG4sdCksY3x8dSghMCl9KSxwPUYoZnVuY3Rpb24odCl7byhlLmVycm9yQ29tcCkmJihlLmVycm9yPSEwLHUoITApKX0pLGY9ZShsLHApO3JldHVybiBzKGYpJiYoImZ1bmN0aW9uIj09PXR5cGVvZiBmLnRoZW4/cihlLnJlc29sdmVkKSYmZi50aGVuKGwscCk6byhmLmNvbXBvbmVudCkmJiJmdW5jdGlvbiI9PT10eXBlb2YgZi5jb21wb25lbnQudGhlbiYmKGYuY29tcG9uZW50LnRoZW4obCxwKSxvKGYuZXJyb3IpJiYoZS5lcnJvckNvbXA9U3QoZi5lcnJvcix0KSksbyhmLmxvYWRpbmcpJiYoZS5sb2FkaW5nQ29tcD1TdChmLmxvYWRpbmcsdCksMD09PWYuZGVsYXk/ZS5sb2FkaW5nPSEwOnNldFRpbWVvdXQoZnVuY3Rpb24oKXtyKGUucmVzb2x2ZWQpJiZyKGUuZXJyb3IpJiYoZS5sb2FkaW5nPSEwLHUoITEpKX0sZi5kZWxheXx8MjAwKSksbyhmLnRpbWVvdXQpJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cihlLnJlc29sdmVkKSYmcChudWxsKX0sZi50aW1lb3V0KSkpLGM9ITEsZS5sb2FkaW5nP2UubG9hZGluZ0NvbXA6ZS5yZXNvbHZlZH1lLmNvbnRleHRzLnB1c2gobil9ZnVuY3Rpb24gT3QoZSl7cmV0dXJuIGUuaXNDb21tZW50JiZlLmFzeW5jRmFjdG9yeX1mdW5jdGlvbiAkdChlKXtpZihBcnJheS5pc0FycmF5KGUpKWZvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgbj1lW3RdO2lmKG8obikmJihvKG4uY29tcG9uZW50T3B0aW9ucyl8fE90KG4pKSlyZXR1cm4gbn19ZnVuY3Rpb24gVHQoZSl7ZS5fZXZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCksZS5faGFzSG9va0V2ZW50PSExO3ZhciB0PWUuJG9wdGlvbnMuX3BhcmVudExpc3RlbmVyczt0JiZEdChlLHQpfWZ1bmN0aW9uIGp0KGUsdCl7aHQuJG9uKGUsdCl9ZnVuY3Rpb24gRXQoZSx0KXtodC4kb2ZmKGUsdCl9ZnVuY3Rpb24gTXQoZSx0KXt2YXIgbj1odDtyZXR1cm4gZnVuY3Rpb24gcigpe3ZhciBvPXQuYXBwbHkobnVsbCxhcmd1bWVudHMpO251bGwhPT1vJiZuLiRvZmYoZSxyKX19ZnVuY3Rpb24gRHQoZSx0LG4pe2h0PWUsdnQodCxufHx7fSxqdCxFdCxNdCxlKSxodD12b2lkIDB9ZnVuY3Rpb24gSXQoZSl7dmFyIHQ9L15ob29rOi87ZS5wcm90b3R5cGUuJG9uPWZ1bmN0aW9uKGUsbil7dmFyIHI9dGhpcztpZihBcnJheS5pc0FycmF5KGUpKWZvcih2YXIgbz0wLGk9ZS5sZW5ndGg7bzxpO28rKylyLiRvbihlW29dLG4pO2Vsc2Uoci5fZXZlbnRzW2VdfHwoci5fZXZlbnRzW2VdPVtdKSkucHVzaChuKSx0LnRlc3QoZSkmJihyLl9oYXNIb29rRXZlbnQ9ITApO3JldHVybiByfSxlLnByb3RvdHlwZS4kb25jZT1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXM7ZnVuY3Rpb24gcigpe24uJG9mZihlLHIpLHQuYXBwbHkobixhcmd1bWVudHMpfXJldHVybiByLmZuPXQsbi4kb24oZSxyKSxufSxlLnByb3RvdHlwZS4kb2ZmPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztpZighYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gbi5fZXZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCksbjtpZihBcnJheS5pc0FycmF5KGUpKXtmb3IodmFyIHI9MCxvPWUubGVuZ3RoO3I8bztyKyspbi4kb2ZmKGVbcl0sdCk7cmV0dXJuIG59dmFyIGk9bi5fZXZlbnRzW2VdO2lmKCFpKXJldHVybiBuO2lmKCF0KXJldHVybiBuLl9ldmVudHNbZV09bnVsbCxuO2lmKHQpe3ZhciBhLGM9aS5sZW5ndGg7d2hpbGUoYy0tKWlmKGE9aVtjXSxhPT09dHx8YS5mbj09PXQpe2kuc3BsaWNlKGMsMSk7YnJlYWt9fXJldHVybiBufSxlLnByb3RvdHlwZS4kZW1pdD1mdW5jdGlvbihlKXt2YXIgdD10aGlzLG49dC5fZXZlbnRzW2VdO2lmKG4pe249bi5sZW5ndGg+MT8kKG4pOm47Zm9yKHZhciByPSQoYXJndW1lbnRzLDEpLG89MCxpPW4ubGVuZ3RoO288aTtvKyspdHJ5e25bb10uYXBwbHkodCxyKX1jYXRjaChjYSl7WWUoY2EsdCwnZXZlbnQgaGFuZGxlciBmb3IgIicrZSsnIicpfX1yZXR1cm4gdH19ZnVuY3Rpb24gTHQoZSx0KXt2YXIgbj17fTtpZighZSlyZXR1cm4gbjtmb3IodmFyIHI9MCxvPWUubGVuZ3RoO3I8bztyKyspe3ZhciBpPWVbcl0sYT1pLmRhdGE7aWYoYSYmYS5hdHRycyYmYS5hdHRycy5zbG90JiZkZWxldGUgYS5hdHRycy5zbG90LGkuY29udGV4dCE9PXQmJmkuZm5Db250ZXh0IT09dHx8IWF8fG51bGw9PWEuc2xvdCkobi5kZWZhdWx0fHwobi5kZWZhdWx0PVtdKSkucHVzaChpKTtlbHNle3ZhciBjPWEuc2xvdCxzPW5bY118fChuW2NdPVtdKTsidGVtcGxhdGUiPT09aS50YWc/cy5wdXNoLmFwcGx5KHMsaS5jaGlsZHJlbnx8W10pOnMucHVzaChpKX19Zm9yKHZhciB1IGluIG4pblt1XS5ldmVyeShGdCkmJmRlbGV0ZSBuW3VdO3JldHVybiBufWZ1bmN0aW9uIEZ0KGUpe3JldHVybiBlLmlzQ29tbWVudCYmIWUuYXN5bmNGYWN0b3J5fHwiICI9PT1lLnRleHR9ZnVuY3Rpb24gTnQoZSx0KXt0PXR8fHt9O2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKUFycmF5LmlzQXJyYXkoZVtuXSk/TnQoZVtuXSx0KTp0W2Vbbl0ua2V5XT1lW25dLmZuO3JldHVybiB0fXZhciBSdD1udWxsO2Z1bmN0aW9uIFZ0KGUpe3ZhciB0PVJ0O3JldHVybiBSdD1lLGZ1bmN0aW9uKCl7UnQ9dH19ZnVuY3Rpb24gSHQoZSl7dmFyIHQ9ZS4kb3B0aW9ucyxuPXQucGFyZW50O2lmKG4mJiF0LmFic3RyYWN0KXt3aGlsZShuLiRvcHRpb25zLmFic3RyYWN0JiZuLiRwYXJlbnQpbj1uLiRwYXJlbnQ7bi4kY2hpbGRyZW4ucHVzaChlKX1lLiRwYXJlbnQ9bixlLiRyb290PW4/bi4kcm9vdDplLGUuJGNoaWxkcmVuPVtdLGUuJHJlZnM9e30sZS5fd2F0Y2hlcj1udWxsLGUuX2luYWN0aXZlPW51bGwsZS5fZGlyZWN0SW5hY3RpdmU9ITEsZS5faXNNb3VudGVkPSExLGUuX2lzRGVzdHJveWVkPSExLGUuX2lzQmVpbmdEZXN0cm95ZWQ9ITF9ZnVuY3Rpb24gVXQoZSl7ZS5wcm90b3R5cGUuX3VwZGF0ZT1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMscj1uLiRlbCxvPW4uX3Zub2RlLGk9VnQobik7bi5fdm5vZGU9ZSxuLiRlbD1vP24uX19wYXRjaF9fKG8sZSk6bi5fX3BhdGNoX18obi4kZWwsZSx0LCExKSxpKCksciYmKHIuX192dWVfXz1udWxsKSxuLiRlbCYmKG4uJGVsLl9fdnVlX189biksbi4kdm5vZGUmJm4uJHBhcmVudCYmbi4kdm5vZGU9PT1uLiRwYXJlbnQuX3Zub2RlJiYobi4kcGFyZW50LiRlbD1uLiRlbCl9LGUucHJvdG90eXBlLiRmb3JjZVVwZGF0ZT1mdW5jdGlvbigpe3ZhciBlPXRoaXM7ZS5fd2F0Y2hlciYmZS5fd2F0Y2hlci51cGRhdGUoKX0sZS5wcm90b3R5cGUuJGRlc3Ryb3k9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2lmKCFlLl9pc0JlaW5nRGVzdHJveWVkKXtxdChlLCJiZWZvcmVEZXN0cm95IiksZS5faXNCZWluZ0Rlc3Ryb3llZD0hMDt2YXIgdD1lLiRwYXJlbnQ7IXR8fHQuX2lzQmVpbmdEZXN0cm95ZWR8fGUuJG9wdGlvbnMuYWJzdHJhY3R8fHYodC4kY2hpbGRyZW4sZSksZS5fd2F0Y2hlciYmZS5fd2F0Y2hlci50ZWFyZG93bigpO3ZhciBuPWUuX3dhdGNoZXJzLmxlbmd0aDt3aGlsZShuLS0pZS5fd2F0Y2hlcnNbbl0udGVhcmRvd24oKTtlLl9kYXRhLl9fb2JfXyYmZS5fZGF0YS5fX29iX18udm1Db3VudC0tLGUuX2lzRGVzdHJveWVkPSEwLGUuX19wYXRjaF9fKGUuX3Zub2RlLG51bGwpLHF0KGUsImRlc3Ryb3llZCIpLGUuJG9mZigpLGUuJGVsJiYoZS4kZWwuX192dWVfXz1udWxsKSxlLiR2bm9kZSYmKGUuJHZub2RlLnBhcmVudD1udWxsKX19fWZ1bmN0aW9uIHp0KGUsdCxuKXt2YXIgcjtyZXR1cm4gZS4kZWw9dCxlLiRvcHRpb25zLnJlbmRlcnx8KGUuJG9wdGlvbnMucmVuZGVyPXllKSxxdChlLCJiZWZvcmVNb3VudCIpLHI9ZnVuY3Rpb24oKXtlLl91cGRhdGUoZS5fcmVuZGVyKCksbil9LG5ldyB1bihlLHIsRSx7YmVmb3JlOmZ1bmN0aW9uKCl7ZS5faXNNb3VudGVkJiYhZS5faXNEZXN0cm95ZWQmJnF0KGUsImJlZm9yZVVwZGF0ZSIpfX0sITApLG49ITEsbnVsbD09ZS4kdm5vZGUmJihlLl9pc01vdW50ZWQ9ITAscXQoZSwibW91bnRlZCIpKSxlfWZ1bmN0aW9uIEJ0KGUsdCxyLG8saSl7dmFyIGE9ISEoaXx8ZS4kb3B0aW9ucy5fcmVuZGVyQ2hpbGRyZW58fG8uZGF0YS5zY29wZWRTbG90c3x8ZS4kc2NvcGVkU2xvdHMhPT1uKTtpZihlLiRvcHRpb25zLl9wYXJlbnRWbm9kZT1vLGUuJHZub2RlPW8sZS5fdm5vZGUmJihlLl92bm9kZS5wYXJlbnQ9byksZS4kb3B0aW9ucy5fcmVuZGVyQ2hpbGRyZW49aSxlLiRhdHRycz1vLmRhdGEuYXR0cnN8fG4sZS4kbGlzdGVuZXJzPXJ8fG4sdCYmZS4kb3B0aW9ucy5wcm9wcyl7UGUoITEpO2Zvcih2YXIgYz1lLl9wcm9wcyxzPWUuJG9wdGlvbnMuX3Byb3BLZXlzfHxbXSx1PTA7dTxzLmxlbmd0aDt1Kyspe3ZhciBsPXNbdV0scD1lLiRvcHRpb25zLnByb3BzO2NbbF09V2UobCxwLHQsZSl9UGUoITApLGUuJG9wdGlvbnMucHJvcHNEYXRhPXR9cj1yfHxuO3ZhciBmPWUuJG9wdGlvbnMuX3BhcmVudExpc3RlbmVycztlLiRvcHRpb25zLl9wYXJlbnRMaXN0ZW5lcnM9cixEdChlLHIsZiksYSYmKGUuJHNsb3RzPUx0KGksby5jb250ZXh0KSxlLiRmb3JjZVVwZGF0ZSgpKX1mdW5jdGlvbiBHdChlKXt3aGlsZShlJiYoZT1lLiRwYXJlbnQpKWlmKGUuX2luYWN0aXZlKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIFd0KGUsdCl7aWYodCl7aWYoZS5fZGlyZWN0SW5hY3RpdmU9ITEsR3QoZSkpcmV0dXJufWVsc2UgaWYoZS5fZGlyZWN0SW5hY3RpdmUpcmV0dXJuO2lmKGUuX2luYWN0aXZlfHxudWxsPT09ZS5faW5hY3RpdmUpe2UuX2luYWN0aXZlPSExO2Zvcih2YXIgbj0wO248ZS4kY2hpbGRyZW4ubGVuZ3RoO24rKylXdChlLiRjaGlsZHJlbltuXSk7cXQoZSwiYWN0aXZhdGVkIil9fWZ1bmN0aW9uIEt0KGUsdCl7aWYoKCF0fHwoZS5fZGlyZWN0SW5hY3RpdmU9ITAsIUd0KGUpKSkmJiFlLl9pbmFjdGl2ZSl7ZS5faW5hY3RpdmU9ITA7Zm9yKHZhciBuPTA7bjxlLiRjaGlsZHJlbi5sZW5ndGg7bisrKUt0KGUuJGNoaWxkcmVuW25dKTtxdChlLCJkZWFjdGl2YXRlZCIpfX1mdW5jdGlvbiBxdChlLHQpe2hlKCk7dmFyIG49ZS4kb3B0aW9uc1t0XTtpZihuKWZvcih2YXIgcj0wLG89bi5sZW5ndGg7cjxvO3IrKyl0cnl7bltyXS5jYWxsKGUpfWNhdGNoKGNhKXtZZShjYSxlLHQrIiBob29rIil9ZS5faGFzSG9va0V2ZW50JiZlLiRlbWl0KCJob29rOiIrdCksX2UoKX12YXIgWHQ9W10sSnQ9W10sWXQ9e30sWnQ9ITEsUXQ9ITEsZW49MDtmdW5jdGlvbiB0bigpe2VuPVh0Lmxlbmd0aD1KdC5sZW5ndGg9MCxZdD17fSxadD1RdD0hMX1mdW5jdGlvbiBubigpe3ZhciBlLHQ7Zm9yKFF0PSEwLFh0LnNvcnQoZnVuY3Rpb24oZSx0KXtyZXR1cm4gZS5pZC10LmlkfSksZW49MDtlbjxYdC5sZW5ndGg7ZW4rKyllPVh0W2VuXSxlLmJlZm9yZSYmZS5iZWZvcmUoKSx0PWUuaWQsWXRbdF09bnVsbCxlLnJ1bigpO3ZhciBuPUp0LnNsaWNlKCkscj1YdC5zbGljZSgpO3RuKCksYW4obikscm4ociksYWUmJkguZGV2dG9vbHMmJmFlLmVtaXQoImZsdXNoIil9ZnVuY3Rpb24gcm4oZSl7dmFyIHQ9ZS5sZW5ndGg7d2hpbGUodC0tKXt2YXIgbj1lW3RdLHI9bi52bTtyLl93YXRjaGVyPT09biYmci5faXNNb3VudGVkJiYhci5faXNEZXN0cm95ZWQmJnF0KHIsInVwZGF0ZWQiKX19ZnVuY3Rpb24gb24oZSl7ZS5faW5hY3RpdmU9ITEsSnQucHVzaChlKX1mdW5jdGlvbiBhbihlKXtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyllW3RdLl9pbmFjdGl2ZT0hMCxXdChlW3RdLCEwKX1mdW5jdGlvbiBjbihlKXt2YXIgdD1lLmlkO2lmKG51bGw9PVl0W3RdKXtpZihZdFt0XT0hMCxRdCl7dmFyIG49WHQubGVuZ3RoLTE7d2hpbGUobj5lbiYmWHRbbl0uaWQ+ZS5pZCluLS07WHQuc3BsaWNlKG4rMSwwLGUpfWVsc2UgWHQucHVzaChlKTtadHx8KFp0PSEwLGx0KG5uKSl9fXZhciBzbj0wLHVuPWZ1bmN0aW9uKGUsdCxuLHIsbyl7dGhpcy52bT1lLG8mJihlLl93YXRjaGVyPXRoaXMpLGUuX3dhdGNoZXJzLnB1c2godGhpcykscj8odGhpcy5kZWVwPSEhci5kZWVwLHRoaXMudXNlcj0hIXIudXNlcix0aGlzLmxhenk9ISFyLmxhenksdGhpcy5zeW5jPSEhci5zeW5jLHRoaXMuYmVmb3JlPXIuYmVmb3JlKTp0aGlzLmRlZXA9dGhpcy51c2VyPXRoaXMubGF6eT10aGlzLnN5bmM9ITEsdGhpcy5jYj1uLHRoaXMuaWQ9Kytzbix0aGlzLmFjdGl2ZT0hMCx0aGlzLmRpcnR5PXRoaXMubGF6eSx0aGlzLmRlcHM9W10sdGhpcy5uZXdEZXBzPVtdLHRoaXMuZGVwSWRzPW5ldyBzZSx0aGlzLm5ld0RlcElkcz1uZXcgc2UsdGhpcy5leHByZXNzaW9uPSIiLCJmdW5jdGlvbiI9PT10eXBlb2YgdD90aGlzLmdldHRlcj10Oih0aGlzLmdldHRlcj1HKHQpLHRoaXMuZ2V0dGVyfHwodGhpcy5nZXR0ZXI9RSkpLHRoaXMudmFsdWU9dGhpcy5sYXp5P3ZvaWQgMDp0aGlzLmdldCgpfTt1bi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKCl7dmFyIGU7aGUodGhpcyk7dmFyIHQ9dGhpcy52bTt0cnl7ZT10aGlzLmdldHRlci5jYWxsKHQsdCl9Y2F0Y2goY2Epe2lmKCF0aGlzLnVzZXIpdGhyb3cgY2E7WWUoY2EsdCwnZ2V0dGVyIGZvciB3YXRjaGVyICInK3RoaXMuZXhwcmVzc2lvbisnIicpfWZpbmFsbHl7dGhpcy5kZWVwJiZmdChlKSxfZSgpLHRoaXMuY2xlYW51cERlcHMoKX1yZXR1cm4gZX0sdW4ucHJvdG90eXBlLmFkZERlcD1mdW5jdGlvbihlKXt2YXIgdD1lLmlkO3RoaXMubmV3RGVwSWRzLmhhcyh0KXx8KHRoaXMubmV3RGVwSWRzLmFkZCh0KSx0aGlzLm5ld0RlcHMucHVzaChlKSx0aGlzLmRlcElkcy5oYXModCl8fGUuYWRkU3ViKHRoaXMpKX0sdW4ucHJvdG90eXBlLmNsZWFudXBEZXBzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5kZXBzLmxlbmd0aDt3aGlsZShlLS0pe3ZhciB0PXRoaXMuZGVwc1tlXTt0aGlzLm5ld0RlcElkcy5oYXModC5pZCl8fHQucmVtb3ZlU3ViKHRoaXMpfXZhciBuPXRoaXMuZGVwSWRzO3RoaXMuZGVwSWRzPXRoaXMubmV3RGVwSWRzLHRoaXMubmV3RGVwSWRzPW4sdGhpcy5uZXdEZXBJZHMuY2xlYXIoKSxuPXRoaXMuZGVwcyx0aGlzLmRlcHM9dGhpcy5uZXdEZXBzLHRoaXMubmV3RGVwcz1uLHRoaXMubmV3RGVwcy5sZW5ndGg9MH0sdW4ucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbigpe3RoaXMubGF6eT90aGlzLmRpcnR5PSEwOnRoaXMuc3luYz90aGlzLnJ1bigpOmNuKHRoaXMpfSx1bi5wcm90b3R5cGUucnVuPWZ1bmN0aW9uKCl7aWYodGhpcy5hY3RpdmUpe3ZhciBlPXRoaXMuZ2V0KCk7aWYoZSE9PXRoaXMudmFsdWV8fHMoZSl8fHRoaXMuZGVlcCl7dmFyIHQ9dGhpcy52YWx1ZTtpZih0aGlzLnZhbHVlPWUsdGhpcy51c2VyKXRyeXt0aGlzLmNiLmNhbGwodGhpcy52bSxlLHQpfWNhdGNoKGNhKXtZZShjYSx0aGlzLnZtLCdjYWxsYmFjayBmb3Igd2F0Y2hlciAiJyt0aGlzLmV4cHJlc3Npb24rJyInKX1lbHNlIHRoaXMuY2IuY2FsbCh0aGlzLnZtLGUsdCl9fX0sdW4ucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKCl7dGhpcy52YWx1ZT10aGlzLmdldCgpLHRoaXMuZGlydHk9ITF9LHVuLnByb3RvdHlwZS5kZXBlbmQ9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLmRlcHMubGVuZ3RoO3doaWxlKGUtLSl0aGlzLmRlcHNbZV0uZGVwZW5kKCl9LHVuLnByb3RvdHlwZS50ZWFyZG93bj1mdW5jdGlvbigpe2lmKHRoaXMuYWN0aXZlKXt0aGlzLnZtLl9pc0JlaW5nRGVzdHJveWVkfHx2KHRoaXMudm0uX3dhdGNoZXJzLHRoaXMpO3ZhciBlPXRoaXMuZGVwcy5sZW5ndGg7d2hpbGUoZS0tKXRoaXMuZGVwc1tlXS5yZW1vdmVTdWIodGhpcyk7dGhpcy5hY3RpdmU9ITF9fTt2YXIgbG49e2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLGdldDpFLHNldDpFfTtmdW5jdGlvbiBwbihlLHQsbil7bG4uZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXNbdF1bbl19LGxuLnNldD1mdW5jdGlvbihlKXt0aGlzW3RdW25dPWV9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLG4sbG4pfWZ1bmN0aW9uIGZuKGUpe2UuX3dhdGNoZXJzPVtdO3ZhciB0PWUuJG9wdGlvbnM7dC5wcm9wcyYmZG4oZSx0LnByb3BzKSx0Lm1ldGhvZHMmJnduKGUsdC5tZXRob2RzKSx0LmRhdGE/aG4oZSk6VGUoZS5fZGF0YT17fSwhMCksdC5jb21wdXRlZCYmdm4oZSx0LmNvbXB1dGVkKSx0LndhdGNoJiZ0LndhdGNoIT09bmUmJnhuKGUsdC53YXRjaCl9ZnVuY3Rpb24gZG4oZSx0KXt2YXIgbj1lLiRvcHRpb25zLnByb3BzRGF0YXx8e30scj1lLl9wcm9wcz17fSxvPWUuJG9wdGlvbnMuX3Byb3BLZXlzPVtdLGk9IWUuJHBhcmVudDtpfHxQZSghMSk7dmFyIGE9ZnVuY3Rpb24oaSl7by5wdXNoKGkpO3ZhciBhPVdlKGksdCxuLGUpO2plKHIsaSxhKSxpIGluIGV8fHBuKGUsIl9wcm9wcyIsaSl9O2Zvcih2YXIgYyBpbiB0KWEoYyk7UGUoITApfWZ1bmN0aW9uIGhuKGUpe3ZhciB0PWUuJG9wdGlvbnMuZGF0YTt0PWUuX2RhdGE9ImZ1bmN0aW9uIj09PXR5cGVvZiB0P19uKHQsZSk6dHx8e30sbCh0KXx8KHQ9e30pO3ZhciBuPU9iamVjdC5rZXlzKHQpLHI9ZS4kb3B0aW9ucy5wcm9wcyxvPShlLiRvcHRpb25zLm1ldGhvZHMsbi5sZW5ndGgpO3doaWxlKG8tLSl7dmFyIGk9bltvXTswLHImJmcocixpKXx8VShpKXx8cG4oZSwiX2RhdGEiLGkpfVRlKHQsITApfWZ1bmN0aW9uIF9uKGUsdCl7aGUoKTt0cnl7cmV0dXJuIGUuY2FsbCh0LHQpfWNhdGNoKGNhKXtyZXR1cm4gWWUoY2EsdCwiZGF0YSgpIikse319ZmluYWxseXtfZSgpfX12YXIgbW49e2xhenk6ITB9O2Z1bmN0aW9uIHZuKGUsdCl7dmFyIG49ZS5fY29tcHV0ZWRXYXRjaGVycz1PYmplY3QuY3JlYXRlKG51bGwpLHI9aWUoKTtmb3IodmFyIG8gaW4gdCl7dmFyIGk9dFtvXSxhPSJmdW5jdGlvbiI9PT10eXBlb2YgaT9pOmkuZ2V0OzAscnx8KG5bb109bmV3IHVuKGUsYXx8RSxFLG1uKSksbyBpbiBlfHx5bihlLG8saSl9fWZ1bmN0aW9uIHluKGUsdCxuKXt2YXIgcj0haWUoKTsiZnVuY3Rpb24iPT09dHlwZW9mIG4/KGxuLmdldD1yP2duKHQpOmJuKG4pLGxuLnNldD1FKToobG4uZ2V0PW4uZ2V0P3ImJiExIT09bi5jYWNoZT9nbih0KTpibihuLmdldCk6RSxsbi5zZXQ9bi5zZXR8fEUpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQsbG4pfWZ1bmN0aW9uIGduKGUpe3JldHVybiBmdW5jdGlvbigpe3ZhciB0PXRoaXMuX2NvbXB1dGVkV2F0Y2hlcnMmJnRoaXMuX2NvbXB1dGVkV2F0Y2hlcnNbZV07aWYodClyZXR1cm4gdC5kaXJ0eSYmdC5ldmFsdWF0ZSgpLGZlLnRhcmdldCYmdC5kZXBlbmQoKSx0LnZhbHVlfX1mdW5jdGlvbiBibihlKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gZS5jYWxsKHRoaXMsdGhpcyl9fWZ1bmN0aW9uIHduKGUsdCl7ZS4kb3B0aW9ucy5wcm9wcztmb3IodmFyIG4gaW4gdCllW25dPSJmdW5jdGlvbiIhPT10eXBlb2YgdFtuXT9FOk8odFtuXSxlKX1mdW5jdGlvbiB4bihlLHQpe2Zvcih2YXIgbiBpbiB0KXt2YXIgcj10W25dO2lmKEFycmF5LmlzQXJyYXkocikpZm9yKHZhciBvPTA7bzxyLmxlbmd0aDtvKyspQ24oZSxuLHJbb10pO2Vsc2UgQ24oZSxuLHIpfX1mdW5jdGlvbiBDbihlLHQsbixyKXtyZXR1cm4gbChuKSYmKHI9bixuPW4uaGFuZGxlciksInN0cmluZyI9PT10eXBlb2YgbiYmKG49ZVtuXSksZS4kd2F0Y2godCxuLHIpfWZ1bmN0aW9uIGtuKGUpe3ZhciB0PXtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGF0YX19LG49e2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9wcm9wc319O09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLnByb3RvdHlwZSwiJGRhdGEiLHQpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLnByb3RvdHlwZSwiJHByb3BzIixuKSxlLnByb3RvdHlwZS4kc2V0PUVlLGUucHJvdG90eXBlLiRkZWxldGU9TWUsZS5wcm90b3R5cGUuJHdhdGNoPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj10aGlzO2lmKGwodCkpcmV0dXJuIENuKHIsZSx0LG4pO249bnx8e30sbi51c2VyPSEwO3ZhciBvPW5ldyB1bihyLGUsdCxuKTtpZihuLmltbWVkaWF0ZSl0cnl7dC5jYWxsKHIsby52YWx1ZSl9Y2F0Y2goaSl7WWUoaSxyLCdjYWxsYmFjayBmb3IgaW1tZWRpYXRlIHdhdGNoZXIgIicrby5leHByZXNzaW9uKyciJyl9cmV0dXJuIGZ1bmN0aW9uKCl7by50ZWFyZG93bigpfX19ZnVuY3Rpb24gU24oZSl7dmFyIHQ9ZS4kb3B0aW9ucy5wcm92aWRlO3QmJihlLl9wcm92aWRlZD0iZnVuY3Rpb24iPT09dHlwZW9mIHQ/dC5jYWxsKGUpOnQpfWZ1bmN0aW9uIFBuKGUpe3ZhciB0PUFuKGUuJG9wdGlvbnMuaW5qZWN0LGUpO3QmJihQZSghMSksT2JqZWN0LmtleXModCkuZm9yRWFjaChmdW5jdGlvbihuKXtqZShlLG4sdFtuXSl9KSxQZSghMCkpfWZ1bmN0aW9uIEFuKGUsdCl7aWYoZSl7Zm9yKHZhciBuPU9iamVjdC5jcmVhdGUobnVsbCkscj11ZT9SZWZsZWN0Lm93bktleXMoZSkuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsdCkuZW51bWVyYWJsZX0pOk9iamVjdC5rZXlzKGUpLG89MDtvPHIubGVuZ3RoO28rKyl7dmFyIGk9cltvXSxhPWVbaV0uZnJvbSxjPXQ7d2hpbGUoYyl7aWYoYy5fcHJvdmlkZWQmJmcoYy5fcHJvdmlkZWQsYSkpe25baV09Yy5fcHJvdmlkZWRbYV07YnJlYWt9Yz1jLiRwYXJlbnR9aWYoIWMpaWYoImRlZmF1bHQiaW4gZVtpXSl7dmFyIHM9ZVtpXS5kZWZhdWx0O25baV09ImZ1bmN0aW9uIj09PXR5cGVvZiBzP3MuY2FsbCh0KTpzfWVsc2UgMH1yZXR1cm4gbn19ZnVuY3Rpb24gT24oZSx0KXt2YXIgbixyLGksYSxjO2lmKEFycmF5LmlzQXJyYXkoZSl8fCJzdHJpbmciPT09dHlwZW9mIGUpZm9yKG49bmV3IEFycmF5KGUubGVuZ3RoKSxyPTAsaT1lLmxlbmd0aDtyPGk7cisrKW5bcl09dChlW3JdLHIpO2Vsc2UgaWYoIm51bWJlciI9PT10eXBlb2YgZSlmb3Iobj1uZXcgQXJyYXkoZSkscj0wO3I8ZTtyKyspbltyXT10KHIrMSxyKTtlbHNlIGlmKHMoZSkpZm9yKGE9T2JqZWN0LmtleXMoZSksbj1uZXcgQXJyYXkoYS5sZW5ndGgpLHI9MCxpPWEubGVuZ3RoO3I8aTtyKyspYz1hW3JdLG5bcl09dChlW2NdLGMscik7cmV0dXJuIG8obil8fChuPVtdKSxuLl9pc1ZMaXN0PSEwLG59ZnVuY3Rpb24gJG4oZSx0LG4scil7dmFyIG8saT10aGlzLiRzY29wZWRTbG90c1tlXTtpPyhuPW58fHt9LHImJihuPVQoVCh7fSxyKSxuKSksbz1pKG4pfHx0KTpvPXRoaXMuJHNsb3RzW2VdfHx0O3ZhciBhPW4mJm4uc2xvdDtyZXR1cm4gYT90aGlzLiRjcmVhdGVFbGVtZW50KCJ0ZW1wbGF0ZSIse3Nsb3Q6YX0sbyk6b31mdW5jdGlvbiBUbihlKXtyZXR1cm4gR2UodGhpcy4kb3B0aW9ucywiZmlsdGVycyIsZSwhMCl8fER9ZnVuY3Rpb24gam4oZSx0KXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT8tMT09PWUuaW5kZXhPZih0KTplIT09dH1mdW5jdGlvbiBFbihlLHQsbixyLG8pe3ZhciBpPUgua2V5Q29kZXNbdF18fG47cmV0dXJuIG8mJnImJiFILmtleUNvZGVzW3RdP2puKG8scik6aT9qbihpLGUpOnI/UyhyKSE9PXQ6dm9pZCAwfWZ1bmN0aW9uIE1uKGUsdCxuLHIsbyl7aWYobilpZihzKG4pKXt2YXIgaTtBcnJheS5pc0FycmF5KG4pJiYobj1qKG4pKTt2YXIgYT1mdW5jdGlvbihhKXtpZigiY2xhc3MiPT09YXx8InN0eWxlIj09PWF8fG0oYSkpaT1lO2Vsc2V7dmFyIGM9ZS5hdHRycyYmZS5hdHRycy50eXBlO2k9cnx8SC5tdXN0VXNlUHJvcCh0LGMsYSk/ZS5kb21Qcm9wc3x8KGUuZG9tUHJvcHM9e30pOmUuYXR0cnN8fChlLmF0dHJzPXt9KX12YXIgcz14KGEpO2lmKCEoYSBpbiBpKSYmIShzIGluIGkpJiYoaVthXT1uW2FdLG8pKXt2YXIgdT1lLm9ufHwoZS5vbj17fSk7dVsidXBkYXRlOiIrc109ZnVuY3Rpb24oZSl7blthXT1lfX19O2Zvcih2YXIgYyBpbiBuKWEoYyl9ZWxzZTtyZXR1cm4gZX1mdW5jdGlvbiBEbihlLHQpe3ZhciBuPXRoaXMuX3N0YXRpY1RyZWVzfHwodGhpcy5fc3RhdGljVHJlZXM9W10pLHI9bltlXTtyZXR1cm4gciYmIXQ/cjoocj1uW2VdPXRoaXMuJG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zW2VdLmNhbGwodGhpcy5fcmVuZGVyUHJveHksbnVsbCx0aGlzKSxMbihyLCJfX3N0YXRpY19fIitlLCExKSxyKX1mdW5jdGlvbiBJbihlLHQsbil7cmV0dXJuIExuKGUsIl9fb25jZV9fIit0KyhuPyJfIituOiIiKSwhMCksZX1mdW5jdGlvbiBMbihlLHQsbil7aWYoQXJyYXkuaXNBcnJheShlKSlmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrKyllW3JdJiYic3RyaW5nIiE9PXR5cGVvZiBlW3JdJiZGbihlW3JdLHQrIl8iK3Isbik7ZWxzZSBGbihlLHQsbil9ZnVuY3Rpb24gRm4oZSx0LG4pe2UuaXNTdGF0aWM9ITAsZS5rZXk9dCxlLmlzT25jZT1ufWZ1bmN0aW9uIE5uKGUsdCl7aWYodClpZihsKHQpKXt2YXIgbj1lLm9uPWUub24/VCh7fSxlLm9uKTp7fTtmb3IodmFyIHIgaW4gdCl7dmFyIG89bltyXSxpPXRbcl07bltyXT1vP1tdLmNvbmNhdChvLGkpOml9fWVsc2U7cmV0dXJuIGV9ZnVuY3Rpb24gUm4oZSl7ZS5fbz1JbixlLl9uPWgsZS5fcz1kLGUuX2w9T24sZS5fdD0kbixlLl9xPUksZS5faT1MLGUuX209RG4sZS5fZj1UbixlLl9rPUVuLGUuX2I9TW4sZS5fdj1nZSxlLl9lPXllLGUuX3U9TnQsZS5fZz1Obn1mdW5jdGlvbiBWbihlLHQscixvLGEpe3ZhciBjLHM9YS5vcHRpb25zO2cobywiX3VpZCIpPyhjPU9iamVjdC5jcmVhdGUobyksYy5fb3JpZ2luYWw9byk6KGM9byxvPW8uX29yaWdpbmFsKTt2YXIgdT1pKHMuX2NvbXBpbGVkKSxsPSF1O3RoaXMuZGF0YT1lLHRoaXMucHJvcHM9dCx0aGlzLmNoaWxkcmVuPXIsdGhpcy5wYXJlbnQ9byx0aGlzLmxpc3RlbmVycz1lLm9ufHxuLHRoaXMuaW5qZWN0aW9ucz1BbihzLmluamVjdCxvKSx0aGlzLnNsb3RzPWZ1bmN0aW9uKCl7cmV0dXJuIEx0KHIsbyl9LHUmJih0aGlzLiRvcHRpb25zPXMsdGhpcy4kc2xvdHM9dGhpcy5zbG90cygpLHRoaXMuJHNjb3BlZFNsb3RzPWUuc2NvcGVkU2xvdHN8fG4pLHMuX3Njb3BlSWQ/dGhpcy5fYz1mdW5jdGlvbihlLHQsbixyKXt2YXIgaT1RbihjLGUsdCxuLHIsbCk7cmV0dXJuIGkmJiFBcnJheS5pc0FycmF5KGkpJiYoaS5mblNjb3BlSWQ9cy5fc2NvcGVJZCxpLmZuQ29udGV4dD1vKSxpfTp0aGlzLl9jPWZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBRbihjLGUsdCxuLHIsbCl9fWZ1bmN0aW9uIEhuKGUsdCxyLGksYSl7dmFyIGM9ZS5vcHRpb25zLHM9e30sdT1jLnByb3BzO2lmKG8odSkpZm9yKHZhciBsIGluIHUpc1tsXT1XZShsLHUsdHx8bik7ZWxzZSBvKHIuYXR0cnMpJiZ6bihzLHIuYXR0cnMpLG8oci5wcm9wcykmJnpuKHMsci5wcm9wcyk7dmFyIHA9bmV3IFZuKHIscyxhLGksZSksZj1jLnJlbmRlci5jYWxsKG51bGwscC5fYyxwKTtpZihmIGluc3RhbmNlb2YgbWUpcmV0dXJuIFVuKGYscixwLnBhcmVudCxjLHApO2lmKEFycmF5LmlzQXJyYXkoZikpe2Zvcih2YXIgZD14dChmKXx8W10saD1uZXcgQXJyYXkoZC5sZW5ndGgpLF89MDtfPGQubGVuZ3RoO18rKyloW19dPVVuKGRbX10scixwLnBhcmVudCxjLHApO3JldHVybiBofX1mdW5jdGlvbiBVbihlLHQsbixyLG8pe3ZhciBpPWJlKGUpO3JldHVybiBpLmZuQ29udGV4dD1uLGkuZm5PcHRpb25zPXIsdC5zbG90JiYoKGkuZGF0YXx8KGkuZGF0YT17fSkpLnNsb3Q9dC5zbG90KSxpfWZ1bmN0aW9uIHpuKGUsdCl7Zm9yKHZhciBuIGluIHQpZVt4KG4pXT10W25dfVJuKFZuLnByb3RvdHlwZSk7dmFyIEJuPXtpbml0OmZ1bmN0aW9uKGUsdCl7aWYoZS5jb21wb25lbnRJbnN0YW5jZSYmIWUuY29tcG9uZW50SW5zdGFuY2UuX2lzRGVzdHJveWVkJiZlLmRhdGEua2VlcEFsaXZlKXt2YXIgbj1lO0JuLnByZXBhdGNoKG4sbil9ZWxzZXt2YXIgcj1lLmNvbXBvbmVudEluc3RhbmNlPUtuKGUsUnQpO3IuJG1vdW50KHQ/ZS5lbG06dm9pZCAwLHQpfX0scHJlcGF0Y2g6ZnVuY3Rpb24oZSx0KXt2YXIgbj10LmNvbXBvbmVudE9wdGlvbnMscj10LmNvbXBvbmVudEluc3RhbmNlPWUuY29tcG9uZW50SW5zdGFuY2U7QnQocixuLnByb3BzRGF0YSxuLmxpc3RlbmVycyx0LG4uY2hpbGRyZW4pfSxpbnNlcnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5jb250ZXh0LG49ZS5jb21wb25lbnRJbnN0YW5jZTtuLl9pc01vdW50ZWR8fChuLl9pc01vdW50ZWQ9ITAscXQobiwibW91bnRlZCIpKSxlLmRhdGEua2VlcEFsaXZlJiYodC5faXNNb3VudGVkP29uKG4pOld0KG4sITApKX0sZGVzdHJveTpmdW5jdGlvbihlKXt2YXIgdD1lLmNvbXBvbmVudEluc3RhbmNlO3QuX2lzRGVzdHJveWVkfHwoZS5kYXRhLmtlZXBBbGl2ZT9LdCh0LCEwKTp0LiRkZXN0cm95KCkpfX0sR249T2JqZWN0LmtleXMoQm4pO2Z1bmN0aW9uIFduKGUsdCxuLGEsYyl7aWYoIXIoZSkpe3ZhciB1PW4uJG9wdGlvbnMuX2Jhc2U7aWYocyhlKSYmKGU9dS5leHRlbmQoZSkpLCJmdW5jdGlvbiI9PT10eXBlb2YgZSl7dmFyIGw7aWYocihlLmNpZCkmJihsPWUsZT1BdChsLHUsbiksdm9pZCAwPT09ZSkpcmV0dXJuIFB0KGwsdCxuLGEsYyk7dD10fHx7fSxzcihlKSxvKHQubW9kZWwpJiZKbihlLm9wdGlvbnMsdCk7dmFyIHA9Z3QodCxlLGMpO2lmKGkoZS5vcHRpb25zLmZ1bmN0aW9uYWwpKXJldHVybiBIbihlLHAsdCxuLGEpO3ZhciBmPXQub247aWYodC5vbj10Lm5hdGl2ZU9uLGkoZS5vcHRpb25zLmFic3RyYWN0KSl7dmFyIGQ9dC5zbG90O3Q9e30sZCYmKHQuc2xvdD1kKX1xbih0KTt2YXIgaD1lLm9wdGlvbnMubmFtZXx8YyxfPW5ldyBtZSgidnVlLWNvbXBvbmVudC0iK2UuY2lkKyhoPyItIitoOiIiKSx0LHZvaWQgMCx2b2lkIDAsdm9pZCAwLG4se0N0b3I6ZSxwcm9wc0RhdGE6cCxsaXN0ZW5lcnM6Zix0YWc6YyxjaGlsZHJlbjphfSxsKTtyZXR1cm4gX319fWZ1bmN0aW9uIEtuKGUsdCl7dmFyIG49e19pc0NvbXBvbmVudDohMCxfcGFyZW50Vm5vZGU6ZSxwYXJlbnQ6dH0scj1lLmRhdGEuaW5saW5lVGVtcGxhdGU7cmV0dXJuIG8ocikmJihuLnJlbmRlcj1yLnJlbmRlcixuLnN0YXRpY1JlbmRlckZucz1yLnN0YXRpY1JlbmRlckZucyksbmV3IGUuY29tcG9uZW50T3B0aW9ucy5DdG9yKG4pfWZ1bmN0aW9uIHFuKGUpe2Zvcih2YXIgdD1lLmhvb2t8fChlLmhvb2s9e30pLG49MDtuPEduLmxlbmd0aDtuKyspe3ZhciByPUduW25dLG89dFtyXSxpPUJuW3JdO289PT1pfHxvJiZvLl9tZXJnZWR8fCh0W3JdPW8/WG4oaSxvKTppKX19ZnVuY3Rpb24gWG4oZSx0KXt2YXIgbj1mdW5jdGlvbihuLHIpe2UobixyKSx0KG4scil9O3JldHVybiBuLl9tZXJnZWQ9ITAsbn1mdW5jdGlvbiBKbihlLHQpe3ZhciBuPWUubW9kZWwmJmUubW9kZWwucHJvcHx8InZhbHVlIixyPWUubW9kZWwmJmUubW9kZWwuZXZlbnR8fCJpbnB1dCI7KHQucHJvcHN8fCh0LnByb3BzPXt9KSlbbl09dC5tb2RlbC52YWx1ZTt2YXIgaT10Lm9ufHwodC5vbj17fSksYT1pW3JdLGM9dC5tb2RlbC5jYWxsYmFjaztvKGEpPyhBcnJheS5pc0FycmF5KGEpPy0xPT09YS5pbmRleE9mKGMpOmEhPT1jKSYmKGlbcl09W2NdLmNvbmNhdChhKSk6aVtyXT1jfXZhciBZbj0xLFpuPTI7ZnVuY3Rpb24gUW4oZSx0LG4scixvLGEpe3JldHVybihBcnJheS5pc0FycmF5KG4pfHxjKG4pKSYmKG89cixyPW4sbj12b2lkIDApLGkoYSkmJihvPVpuKSxlcihlLHQsbixyLG8pfWZ1bmN0aW9uIGVyKGUsdCxuLHIsaSl7aWYobyhuKSYmbyhuLl9fb2JfXykpcmV0dXJuIHllKCk7aWYobyhuKSYmbyhuLmlzKSYmKHQ9bi5pcyksIXQpcmV0dXJuIHllKCk7dmFyIGEsYyxzOyhBcnJheS5pc0FycmF5KHIpJiYiZnVuY3Rpb24iPT09dHlwZW9mIHJbMF0mJihuPW58fHt9LG4uc2NvcGVkU2xvdHM9e2RlZmF1bHQ6clswXX0sci5sZW5ndGg9MCksaT09PVpuP3I9eHQocik6aT09PVluJiYocj13dChyKSksInN0cmluZyI9PT10eXBlb2YgdCk/KGM9ZS4kdm5vZGUmJmUuJHZub2RlLm5zfHxILmdldFRhZ05hbWVzcGFjZSh0KSxhPUguaXNSZXNlcnZlZFRhZyh0KT9uZXcgbWUoSC5wYXJzZVBsYXRmb3JtVGFnTmFtZSh0KSxuLHIsdm9pZCAwLHZvaWQgMCxlKTpuJiZuLnByZXx8IW8ocz1HZShlLiRvcHRpb25zLCJjb21wb25lbnRzIix0KSk/bmV3IG1lKHQsbixyLHZvaWQgMCx2b2lkIDAsZSk6V24ocyxuLGUscix0KSk6YT1Xbih0LG4sZSxyKTtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9hOm8oYSk/KG8oYykmJnRyKGEsYyksbyhuKSYmbnIobiksYSk6eWUoKX1mdW5jdGlvbiB0cihlLHQsbil7aWYoZS5ucz10LCJmb3JlaWduT2JqZWN0Ij09PWUudGFnJiYodD12b2lkIDAsbj0hMCksbyhlLmNoaWxkcmVuKSlmb3IodmFyIGE9MCxjPWUuY2hpbGRyZW4ubGVuZ3RoO2E8YzthKyspe3ZhciBzPWUuY2hpbGRyZW5bYV07byhzLnRhZykmJihyKHMubnMpfHxpKG4pJiYic3ZnIiE9PXMudGFnKSYmdHIocyx0LG4pfX1mdW5jdGlvbiBucihlKXtzKGUuc3R5bGUpJiZmdChlLnN0eWxlKSxzKGUuY2xhc3MpJiZmdChlLmNsYXNzKX1mdW5jdGlvbiBycihlKXtlLl92bm9kZT1udWxsLGUuX3N0YXRpY1RyZWVzPW51bGw7dmFyIHQ9ZS4kb3B0aW9ucyxyPWUuJHZub2RlPXQuX3BhcmVudFZub2RlLG89ciYmci5jb250ZXh0O2UuJHNsb3RzPUx0KHQuX3JlbmRlckNoaWxkcmVuLG8pLGUuJHNjb3BlZFNsb3RzPW4sZS5fYz1mdW5jdGlvbih0LG4scixvKXtyZXR1cm4gUW4oZSx0LG4scixvLCExKX0sZS4kY3JlYXRlRWxlbWVudD1mdW5jdGlvbih0LG4scixvKXtyZXR1cm4gUW4oZSx0LG4scixvLCEwKX07dmFyIGk9ciYmci5kYXRhO2plKGUsIiRhdHRycyIsaSYmaS5hdHRyc3x8bixudWxsLCEwKSxqZShlLCIkbGlzdGVuZXJzIix0Ll9wYXJlbnRMaXN0ZW5lcnN8fG4sbnVsbCwhMCl9ZnVuY3Rpb24gb3IoZSl7Um4oZS5wcm90b3R5cGUpLGUucHJvdG90eXBlLiRuZXh0VGljaz1mdW5jdGlvbihlKXtyZXR1cm4gbHQoZSx0aGlzKX0sZS5wcm90b3R5cGUuX3JlbmRlcj1mdW5jdGlvbigpe3ZhciBlLHQ9dGhpcyxyPXQuJG9wdGlvbnMsbz1yLnJlbmRlcixpPXIuX3BhcmVudFZub2RlO2kmJih0LiRzY29wZWRTbG90cz1pLmRhdGEuc2NvcGVkU2xvdHN8fG4pLHQuJHZub2RlPWk7dHJ5e2U9by5jYWxsKHQuX3JlbmRlclByb3h5LHQuJGNyZWF0ZUVsZW1lbnQpfWNhdGNoKGNhKXtZZShjYSx0LCJyZW5kZXIiKSxlPXQuX3Zub2RlfXJldHVybiBlIGluc3RhbmNlb2YgbWV8fChlPXllKCkpLGUucGFyZW50PWksZX19dmFyIGlyPTA7ZnVuY3Rpb24gYXIoZSl7ZS5wcm90b3R5cGUuX2luaXQ9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczt0Ll91aWQ9aXIrKyx0Ll9pc1Z1ZT0hMCxlJiZlLl9pc0NvbXBvbmVudD9jcih0LGUpOnQuJG9wdGlvbnM9QmUoc3IodC5jb25zdHJ1Y3RvciksZXx8e30sdCksdC5fcmVuZGVyUHJveHk9dCx0Ll9zZWxmPXQsSHQodCksVHQodCkscnIodCkscXQodCwiYmVmb3JlQ3JlYXRlIiksUG4odCksZm4odCksU24odCkscXQodCwiY3JlYXRlZCIpLHQuJG9wdGlvbnMuZWwmJnQuJG1vdW50KHQuJG9wdGlvbnMuZWwpfX1mdW5jdGlvbiBjcihlLHQpe3ZhciBuPWUuJG9wdGlvbnM9T2JqZWN0LmNyZWF0ZShlLmNvbnN0cnVjdG9yLm9wdGlvbnMpLHI9dC5fcGFyZW50Vm5vZGU7bi5wYXJlbnQ9dC5wYXJlbnQsbi5fcGFyZW50Vm5vZGU9cjt2YXIgbz1yLmNvbXBvbmVudE9wdGlvbnM7bi5wcm9wc0RhdGE9by5wcm9wc0RhdGEsbi5fcGFyZW50TGlzdGVuZXJzPW8ubGlzdGVuZXJzLG4uX3JlbmRlckNoaWxkcmVuPW8uY2hpbGRyZW4sbi5fY29tcG9uZW50VGFnPW8udGFnLHQucmVuZGVyJiYobi5yZW5kZXI9dC5yZW5kZXIsbi5zdGF0aWNSZW5kZXJGbnM9dC5zdGF0aWNSZW5kZXJGbnMpfWZ1bmN0aW9uIHNyKGUpe3ZhciB0PWUub3B0aW9ucztpZihlLnN1cGVyKXt2YXIgbj1zcihlLnN1cGVyKSxyPWUuc3VwZXJPcHRpb25zO2lmKG4hPT1yKXtlLnN1cGVyT3B0aW9ucz1uO3ZhciBvPXVyKGUpO28mJlQoZS5leHRlbmRPcHRpb25zLG8pLHQ9ZS5vcHRpb25zPUJlKG4sZS5leHRlbmRPcHRpb25zKSx0Lm5hbWUmJih0LmNvbXBvbmVudHNbdC5uYW1lXT1lKX19cmV0dXJuIHR9ZnVuY3Rpb24gdXIoZSl7dmFyIHQsbj1lLm9wdGlvbnMscj1lLmV4dGVuZE9wdGlvbnMsbz1lLnNlYWxlZE9wdGlvbnM7Zm9yKHZhciBpIGluIG4pbltpXSE9PW9baV0mJih0fHwodD17fSksdFtpXT1scihuW2ldLHJbaV0sb1tpXSkpO3JldHVybiB0fWZ1bmN0aW9uIGxyKGUsdCxuKXtpZihBcnJheS5pc0FycmF5KGUpKXt2YXIgcj1bXTtuPUFycmF5LmlzQXJyYXkobik/bjpbbl0sdD1BcnJheS5pc0FycmF5KHQpP3Q6W3RdO2Zvcih2YXIgbz0wO288ZS5sZW5ndGg7bysrKSh0LmluZGV4T2YoZVtvXSk+PTB8fG4uaW5kZXhPZihlW29dKTwwKSYmci5wdXNoKGVbb10pO3JldHVybiByfXJldHVybiBlfWZ1bmN0aW9uIHByKGUpe3RoaXMuX2luaXQoZSl9ZnVuY3Rpb24gZnIoZSl7ZS51c2U9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5faW5zdGFsbGVkUGx1Z2luc3x8KHRoaXMuX2luc3RhbGxlZFBsdWdpbnM9W10pO2lmKHQuaW5kZXhPZihlKT4tMSlyZXR1cm4gdGhpczt2YXIgbj0kKGFyZ3VtZW50cywxKTtyZXR1cm4gbi51bnNoaWZ0KHRoaXMpLCJmdW5jdGlvbiI9PT10eXBlb2YgZS5pbnN0YWxsP2UuaW5zdGFsbC5hcHBseShlLG4pOiJmdW5jdGlvbiI9PT10eXBlb2YgZSYmZS5hcHBseShudWxsLG4pLHQucHVzaChlKSx0aGlzfX1mdW5jdGlvbiBkcihlKXtlLm1peGluPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLm9wdGlvbnM9QmUodGhpcy5vcHRpb25zLGUpLHRoaXN9fWZ1bmN0aW9uIGhyKGUpe2UuY2lkPTA7dmFyIHQ9MTtlLmV4dGVuZD1mdW5jdGlvbihlKXtlPWV8fHt9O3ZhciBuPXRoaXMscj1uLmNpZCxvPWUuX0N0b3J8fChlLl9DdG9yPXt9KTtpZihvW3JdKXJldHVybiBvW3JdO3ZhciBpPWUubmFtZXx8bi5vcHRpb25zLm5hbWU7dmFyIGE9ZnVuY3Rpb24oZSl7dGhpcy5faW5pdChlKX07cmV0dXJuIGEucHJvdG90eXBlPU9iamVjdC5jcmVhdGUobi5wcm90b3R5cGUpLGEucHJvdG90eXBlLmNvbnN0cnVjdG9yPWEsYS5jaWQ9dCsrLGEub3B0aW9ucz1CZShuLm9wdGlvbnMsZSksYVsic3VwZXIiXT1uLGEub3B0aW9ucy5wcm9wcyYmX3IoYSksYS5vcHRpb25zLmNvbXB1dGVkJiZtcihhKSxhLmV4dGVuZD1uLmV4dGVuZCxhLm1peGluPW4ubWl4aW4sYS51c2U9bi51c2UsUi5mb3JFYWNoKGZ1bmN0aW9uKGUpe2FbZV09bltlXX0pLGkmJihhLm9wdGlvbnMuY29tcG9uZW50c1tpXT1hKSxhLnN1cGVyT3B0aW9ucz1uLm9wdGlvbnMsYS5leHRlbmRPcHRpb25zPWUsYS5zZWFsZWRPcHRpb25zPVQoe30sYS5vcHRpb25zKSxvW3JdPWEsYX19ZnVuY3Rpb24gX3IoZSl7dmFyIHQ9ZS5vcHRpb25zLnByb3BzO2Zvcih2YXIgbiBpbiB0KXBuKGUucHJvdG90eXBlLCJfcHJvcHMiLG4pfWZ1bmN0aW9uIG1yKGUpe3ZhciB0PWUub3B0aW9ucy5jb21wdXRlZDtmb3IodmFyIG4gaW4gdCl5bihlLnByb3RvdHlwZSxuLHRbbl0pfWZ1bmN0aW9uIHZyKGUpe1IuZm9yRWFjaChmdW5jdGlvbih0KXtlW3RdPWZ1bmN0aW9uKGUsbil7cmV0dXJuIG4/KCJjb21wb25lbnQiPT09dCYmbChuKSYmKG4ubmFtZT1uLm5hbWV8fGUsbj10aGlzLm9wdGlvbnMuX2Jhc2UuZXh0ZW5kKG4pKSwiZGlyZWN0aXZlIj09PXQmJiJmdW5jdGlvbiI9PT10eXBlb2YgbiYmKG49e2JpbmQ6bix1cGRhdGU6bn0pLHRoaXMub3B0aW9uc1t0KyJzIl1bZV09bixuKTp0aGlzLm9wdGlvbnNbdCsicyJdW2VdfX0pfWZ1bmN0aW9uIHlyKGUpe3JldHVybiBlJiYoZS5DdG9yLm9wdGlvbnMubmFtZXx8ZS50YWcpfWZ1bmN0aW9uIGdyKGUsdCl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/ZS5pbmRleE9mKHQpPi0xOiJzdHJpbmciPT09dHlwZW9mIGU/ZS5zcGxpdCgiLCIpLmluZGV4T2YodCk+LTE6ISFwKGUpJiZlLnRlc3QodCl9ZnVuY3Rpb24gYnIoZSx0KXt2YXIgbj1lLmNhY2hlLHI9ZS5rZXlzLG89ZS5fdm5vZGU7Zm9yKHZhciBpIGluIG4pe3ZhciBhPW5baV07aWYoYSl7dmFyIGM9eXIoYS5jb21wb25lbnRPcHRpb25zKTtjJiYhdChjKSYmd3IobixpLHIsbyl9fX1mdW5jdGlvbiB3cihlLHQsbixyKXt2YXIgbz1lW3RdOyFvfHxyJiZvLnRhZz09PXIudGFnfHxvLmNvbXBvbmVudEluc3RhbmNlLiRkZXN0cm95KCksZVt0XT1udWxsLHYobix0KX1hcihwciksa24ocHIpLEl0KHByKSxVdChwciksb3IocHIpO3ZhciB4cj1bU3RyaW5nLFJlZ0V4cCxBcnJheV0sQ3I9e25hbWU6ImtlZXAtYWxpdmUiLGFic3RyYWN0OiEwLHByb3BzOntpbmNsdWRlOnhyLGV4Y2x1ZGU6eHIsbWF4OltTdHJpbmcsTnVtYmVyXX0sY3JlYXRlZDpmdW5jdGlvbigpe3RoaXMuY2FjaGU9T2JqZWN0LmNyZWF0ZShudWxsKSx0aGlzLmtleXM9W119LGRlc3Ryb3llZDpmdW5jdGlvbigpe2Zvcih2YXIgZSBpbiB0aGlzLmNhY2hlKXdyKHRoaXMuY2FjaGUsZSx0aGlzLmtleXMpfSxtb3VudGVkOmZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLiR3YXRjaCgiaW5jbHVkZSIsZnVuY3Rpb24odCl7YnIoZSxmdW5jdGlvbihlKXtyZXR1cm4gZ3IodCxlKX0pfSksdGhpcy4kd2F0Y2goImV4Y2x1ZGUiLGZ1bmN0aW9uKHQpe2JyKGUsZnVuY3Rpb24oZSl7cmV0dXJuIWdyKHQsZSl9KX0pfSxyZW5kZXI6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLiRzbG90cy5kZWZhdWx0LHQ9JHQoZSksbj10JiZ0LmNvbXBvbmVudE9wdGlvbnM7aWYobil7dmFyIHI9eXIobiksbz10aGlzLGk9by5pbmNsdWRlLGE9by5leGNsdWRlO2lmKGkmJighcnx8IWdyKGkscikpfHxhJiZyJiZncihhLHIpKXJldHVybiB0O3ZhciBjPXRoaXMscz1jLmNhY2hlLHU9Yy5rZXlzLGw9bnVsbD09dC5rZXk/bi5DdG9yLmNpZCsobi50YWc/Ijo6IituLnRhZzoiIik6dC5rZXk7c1tsXT8odC5jb21wb25lbnRJbnN0YW5jZT1zW2xdLmNvbXBvbmVudEluc3RhbmNlLHYodSxsKSx1LnB1c2gobCkpOihzW2xdPXQsdS5wdXNoKGwpLHRoaXMubWF4JiZ1Lmxlbmd0aD5wYXJzZUludCh0aGlzLm1heCkmJndyKHMsdVswXSx1LHRoaXMuX3Zub2RlKSksdC5kYXRhLmtlZXBBbGl2ZT0hMH1yZXR1cm4gdHx8ZSYmZVswXX19LGtyPXtLZWVwQWxpdmU6Q3J9O2Z1bmN0aW9uIFNyKGUpe3ZhciB0PXtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gSH19O09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJjb25maWciLHQpLGUudXRpbD17d2FybjpsZSxleHRlbmQ6VCxtZXJnZU9wdGlvbnM6QmUsZGVmaW5lUmVhY3RpdmU6amV9LGUuc2V0PUVlLGUuZGVsZXRlPU1lLGUubmV4dFRpY2s9bHQsZS5vcHRpb25zPU9iamVjdC5jcmVhdGUobnVsbCksUi5mb3JFYWNoKGZ1bmN0aW9uKHQpe2Uub3B0aW9uc1t0KyJzIl09T2JqZWN0LmNyZWF0ZShudWxsKX0pLGUub3B0aW9ucy5fYmFzZT1lLFQoZS5vcHRpb25zLmNvbXBvbmVudHMsa3IpLGZyKGUpLGRyKGUpLGhyKGUpLHZyKGUpfVNyKHByKSxPYmplY3QuZGVmaW5lUHJvcGVydHkocHIucHJvdG90eXBlLCIkaXNTZXJ2ZXIiLHtnZXQ6aWV9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkocHIucHJvdG90eXBlLCIkc3NyQ29udGV4dCIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLiR2bm9kZSYmdGhpcy4kdm5vZGUuc3NyQ29udGV4dH19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkocHIsIkZ1bmN0aW9uYWxSZW5kZXJDb250ZXh0Iix7dmFsdWU6Vm59KSxwci52ZXJzaW9uPSIyLjUuMjEiO3ZhciBQcj1fKCJzdHlsZSxjbGFzcyIpLEFyPV8oImlucHV0LHRleHRhcmVhLG9wdGlvbixzZWxlY3QscHJvZ3Jlc3MiKSxPcj1mdW5jdGlvbihlLHQsbil7cmV0dXJuInZhbHVlIj09PW4mJkFyKGUpJiYiYnV0dG9uIiE9PXR8fCJzZWxlY3RlZCI9PT1uJiYib3B0aW9uIj09PWV8fCJjaGVja2VkIj09PW4mJiJpbnB1dCI9PT1lfHwibXV0ZWQiPT09biYmInZpZGVvIj09PWV9LCRyPV8oImNvbnRlbnRlZGl0YWJsZSxkcmFnZ2FibGUsc3BlbGxjaGVjayIpLFRyPV8oImFsbG93ZnVsbHNjcmVlbixhc3luYyxhdXRvZm9jdXMsYXV0b3BsYXksY2hlY2tlZCxjb21wYWN0LGNvbnRyb2xzLGRlY2xhcmUsZGVmYXVsdCxkZWZhdWx0Y2hlY2tlZCxkZWZhdWx0bXV0ZWQsZGVmYXVsdHNlbGVjdGVkLGRlZmVyLGRpc2FibGVkLGVuYWJsZWQsZm9ybW5vdmFsaWRhdGUsaGlkZGVuLGluZGV0ZXJtaW5hdGUsaW5lcnQsaXNtYXAsaXRlbXNjb3BlLGxvb3AsbXVsdGlwbGUsbXV0ZWQsbm9ocmVmLG5vcmVzaXplLG5vc2hhZGUsbm92YWxpZGF0ZSxub3dyYXAsb3BlbixwYXVzZW9uZXhpdCxyZWFkb25seSxyZXF1aXJlZCxyZXZlcnNlZCxzY29wZWQsc2VhbWxlc3Msc2VsZWN0ZWQsc29ydGFibGUsdHJhbnNsYXRlLHRydWVzcGVlZCx0eXBlbXVzdG1hdGNoLHZpc2libGUiKSxqcj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsRXI9ZnVuY3Rpb24oZSl7cmV0dXJuIjoiPT09ZS5jaGFyQXQoNSkmJiJ4bGluayI9PT1lLnNsaWNlKDAsNSl9LE1yPWZ1bmN0aW9uKGUpe3JldHVybiBFcihlKT9lLnNsaWNlKDYsZS5sZW5ndGgpOiIifSxEcj1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZXx8ITE9PT1lfTtmdW5jdGlvbiBJcihlKXt2YXIgdD1lLmRhdGEsbj1lLHI9ZTt3aGlsZShvKHIuY29tcG9uZW50SW5zdGFuY2UpKXI9ci5jb21wb25lbnRJbnN0YW5jZS5fdm5vZGUsciYmci5kYXRhJiYodD1McihyLmRhdGEsdCkpO3doaWxlKG8obj1uLnBhcmVudCkpbiYmbi5kYXRhJiYodD1Mcih0LG4uZGF0YSkpO3JldHVybiBGcih0LnN0YXRpY0NsYXNzLHQuY2xhc3MpfWZ1bmN0aW9uIExyKGUsdCl7cmV0dXJue3N0YXRpY0NsYXNzOk5yKGUuc3RhdGljQ2xhc3MsdC5zdGF0aWNDbGFzcyksY2xhc3M6byhlLmNsYXNzKT9bZS5jbGFzcyx0LmNsYXNzXTp0LmNsYXNzfX1mdW5jdGlvbiBGcihlLHQpe3JldHVybiBvKGUpfHxvKHQpP05yKGUsUnIodCkpOiIifWZ1bmN0aW9uIE5yKGUsdCl7cmV0dXJuIGU/dD9lKyIgIit0OmU6dHx8IiJ9ZnVuY3Rpb24gUnIoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/VnIoZSk6cyhlKT9IcihlKToic3RyaW5nIj09PXR5cGVvZiBlP2U6IiJ9ZnVuY3Rpb24gVnIoZSl7Zm9yKHZhciB0LG49IiIscj0wLGk9ZS5sZW5ndGg7cjxpO3IrKylvKHQ9UnIoZVtyXSkpJiYiIiE9PXQmJihuJiYobis9IiAiKSxuKz10KTtyZXR1cm4gbn1mdW5jdGlvbiBIcihlKXt2YXIgdD0iIjtmb3IodmFyIG4gaW4gZSllW25dJiYodCYmKHQrPSIgIiksdCs9bik7cmV0dXJuIHR9dmFyIFVyPXtzdmc6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixtYXRoOiJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIn0senI9XygiaHRtbCxib2R5LGJhc2UsaGVhZCxsaW5rLG1ldGEsc3R5bGUsdGl0bGUsYWRkcmVzcyxhcnRpY2xlLGFzaWRlLGZvb3RlcixoZWFkZXIsaDEsaDIsaDMsaDQsaDUsaDYsaGdyb3VwLG5hdixzZWN0aW9uLGRpdixkZCxkbCxkdCxmaWdjYXB0aW9uLGZpZ3VyZSxwaWN0dXJlLGhyLGltZyxsaSxtYWluLG9sLHAscHJlLHVsLGEsYixhYmJyLGJkaSxiZG8sYnIsY2l0ZSxjb2RlLGRhdGEsZGZuLGVtLGksa2JkLG1hcmsscSxycCxydCxydGMscnVieSxzLHNhbXAsc21hbGwsc3BhbixzdHJvbmcsc3ViLHN1cCx0aW1lLHUsdmFyLHdicixhcmVhLGF1ZGlvLG1hcCx0cmFjayx2aWRlbyxlbWJlZCxvYmplY3QscGFyYW0sc291cmNlLGNhbnZhcyxzY3JpcHQsbm9zY3JpcHQsZGVsLGlucyxjYXB0aW9uLGNvbCxjb2xncm91cCx0YWJsZSx0aGVhZCx0Ym9keSx0ZCx0aCx0cixidXR0b24sZGF0YWxpc3QsZmllbGRzZXQsZm9ybSxpbnB1dCxsYWJlbCxsZWdlbmQsbWV0ZXIsb3B0Z3JvdXAsb3B0aW9uLG91dHB1dCxwcm9ncmVzcyxzZWxlY3QsdGV4dGFyZWEsZGV0YWlscyxkaWFsb2csbWVudSxtZW51aXRlbSxzdW1tYXJ5LGNvbnRlbnQsZWxlbWVudCxzaGFkb3csdGVtcGxhdGUsYmxvY2txdW90ZSxpZnJhbWUsdGZvb3QiKSxCcj1fKCJzdmcsYW5pbWF0ZSxjaXJjbGUsY2xpcHBhdGgsY3Vyc29yLGRlZnMsZGVzYyxlbGxpcHNlLGZpbHRlcixmb250LWZhY2UsZm9yZWlnbk9iamVjdCxnLGdseXBoLGltYWdlLGxpbmUsbWFya2VyLG1hc2ssbWlzc2luZy1nbHlwaCxwYXRoLHBhdHRlcm4scG9seWdvbixwb2x5bGluZSxyZWN0LHN3aXRjaCxzeW1ib2wsdGV4dCx0ZXh0cGF0aCx0c3Bhbix1c2UsdmlldyIsITApLEdyPWZ1bmN0aW9uKGUpe3JldHVybiB6cihlKXx8QnIoZSl9O2Z1bmN0aW9uIFdyKGUpe3JldHVybiBCcihlKT8ic3ZnIjoibWF0aCI9PT1lPyJtYXRoIjp2b2lkIDB9dmFyIEtyPU9iamVjdC5jcmVhdGUobnVsbCk7ZnVuY3Rpb24gcXIoZSl7aWYoIXEpcmV0dXJuITA7aWYoR3IoZSkpcmV0dXJuITE7aWYoZT1lLnRvTG93ZXJDYXNlKCksbnVsbCE9S3JbZV0pcmV0dXJuIEtyW2VdO3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoZSk7cmV0dXJuIGUuaW5kZXhPZigiLSIpPi0xP0tyW2VdPXQuY29uc3RydWN0b3I9PT13aW5kb3cuSFRNTFVua25vd25FbGVtZW50fHx0LmNvbnN0cnVjdG9yPT09d2luZG93LkhUTUxFbGVtZW50OktyW2VdPS9IVE1MVW5rbm93bkVsZW1lbnQvLnRlc3QodC50b1N0cmluZygpKX12YXIgWHI9XygidGV4dCxudW1iZXIscGFzc3dvcmQsc2VhcmNoLGVtYWlsLHRlbCx1cmwiKTtmdW5jdGlvbiBKcihlKXtpZigic3RyaW5nIj09PXR5cGVvZiBlKXt2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGUpO3JldHVybiB0fHxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKX1yZXR1cm4gZX1mdW5jdGlvbiBZcihlLHQpe3ZhciBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoZSk7cmV0dXJuInNlbGVjdCIhPT1lP246KHQuZGF0YSYmdC5kYXRhLmF0dHJzJiZ2b2lkIDAhPT10LmRhdGEuYXR0cnMubXVsdGlwbGUmJm4uc2V0QXR0cmlidXRlKCJtdWx0aXBsZSIsIm11bHRpcGxlIiksbil9ZnVuY3Rpb24gWnIoZSx0KXtyZXR1cm4gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKFVyW2VdLHQpfWZ1bmN0aW9uIFFyKGUpe3JldHVybiBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShlKX1mdW5jdGlvbiBlbyhlKXtyZXR1cm4gZG9jdW1lbnQuY3JlYXRlQ29tbWVudChlKX1mdW5jdGlvbiB0byhlLHQsbil7ZS5pbnNlcnRCZWZvcmUodCxuKX1mdW5jdGlvbiBubyhlLHQpe2UucmVtb3ZlQ2hpbGQodCl9ZnVuY3Rpb24gcm8oZSx0KXtlLmFwcGVuZENoaWxkKHQpfWZ1bmN0aW9uIG9vKGUpe3JldHVybiBlLnBhcmVudE5vZGV9ZnVuY3Rpb24gaW8oZSl7cmV0dXJuIGUubmV4dFNpYmxpbmd9ZnVuY3Rpb24gYW8oZSl7cmV0dXJuIGUudGFnTmFtZX1mdW5jdGlvbiBjbyhlLHQpe2UudGV4dENvbnRlbnQ9dH1mdW5jdGlvbiBzbyhlLHQpe2Uuc2V0QXR0cmlidXRlKHQsIiIpfXZhciB1bz1PYmplY3QuZnJlZXplKHtjcmVhdGVFbGVtZW50OllyLGNyZWF0ZUVsZW1lbnROUzpacixjcmVhdGVUZXh0Tm9kZTpRcixjcmVhdGVDb21tZW50OmVvLGluc2VydEJlZm9yZTp0byxyZW1vdmVDaGlsZDpubyxhcHBlbmRDaGlsZDpybyxwYXJlbnROb2RlOm9vLG5leHRTaWJsaW5nOmlvLHRhZ05hbWU6YW8sc2V0VGV4dENvbnRlbnQ6Y28sc2V0U3R5bGVTY29wZTpzb30pLGxvPXtjcmVhdGU6ZnVuY3Rpb24oZSx0KXtwbyh0KX0sdXBkYXRlOmZ1bmN0aW9uKGUsdCl7ZS5kYXRhLnJlZiE9PXQuZGF0YS5yZWYmJihwbyhlLCEwKSxwbyh0KSl9LGRlc3Ryb3k6ZnVuY3Rpb24oZSl7cG8oZSwhMCl9fTtmdW5jdGlvbiBwbyhlLHQpe3ZhciBuPWUuZGF0YS5yZWY7aWYobyhuKSl7dmFyIHI9ZS5jb250ZXh0LGk9ZS5jb21wb25lbnRJbnN0YW5jZXx8ZS5lbG0sYT1yLiRyZWZzO3Q/QXJyYXkuaXNBcnJheShhW25dKT92KGFbbl0saSk6YVtuXT09PWkmJihhW25dPXZvaWQgMCk6ZS5kYXRhLnJlZkluRm9yP0FycmF5LmlzQXJyYXkoYVtuXSk/YVtuXS5pbmRleE9mKGkpPDAmJmFbbl0ucHVzaChpKTphW25dPVtpXTphW25dPWl9fXZhciBmbz1uZXcgbWUoIiIse30sW10pLGhvPVsiY3JlYXRlIiwiYWN0aXZhdGUiLCJ1cGRhdGUiLCJyZW1vdmUiLCJkZXN0cm95Il07ZnVuY3Rpb24gX28oZSx0KXtyZXR1cm4gZS5rZXk9PT10LmtleSYmKGUudGFnPT09dC50YWcmJmUuaXNDb21tZW50PT09dC5pc0NvbW1lbnQmJm8oZS5kYXRhKT09PW8odC5kYXRhKSYmbW8oZSx0KXx8aShlLmlzQXN5bmNQbGFjZWhvbGRlcikmJmUuYXN5bmNGYWN0b3J5PT09dC5hc3luY0ZhY3RvcnkmJnIodC5hc3luY0ZhY3RvcnkuZXJyb3IpKX1mdW5jdGlvbiBtbyhlLHQpe2lmKCJpbnB1dCIhPT1lLnRhZylyZXR1cm4hMDt2YXIgbixyPW8obj1lLmRhdGEpJiZvKG49bi5hdHRycykmJm4udHlwZSxpPW8obj10LmRhdGEpJiZvKG49bi5hdHRycykmJm4udHlwZTtyZXR1cm4gcj09PWl8fFhyKHIpJiZYcihpKX1mdW5jdGlvbiB2byhlLHQsbil7dmFyIHIsaSxhPXt9O2ZvcihyPXQ7cjw9bjsrK3IpaT1lW3JdLmtleSxvKGkpJiYoYVtpXT1yKTtyZXR1cm4gYX1mdW5jdGlvbiB5byhlKXt2YXIgdCxuLGE9e30scz1lLm1vZHVsZXMsdT1lLm5vZGVPcHM7Zm9yKHQ9MDt0PGhvLmxlbmd0aDsrK3QpZm9yKGFbaG9bdF1dPVtdLG49MDtuPHMubGVuZ3RoOysrbilvKHNbbl1baG9bdF1dKSYmYVtob1t0XV0ucHVzaChzW25dW2hvW3RdXSk7ZnVuY3Rpb24gbChlKXtyZXR1cm4gbmV3IG1lKHUudGFnTmFtZShlKS50b0xvd2VyQ2FzZSgpLHt9LFtdLHZvaWQgMCxlKX1mdW5jdGlvbiBwKGUsdCl7ZnVuY3Rpb24gbigpezA9PT0tLW4ubGlzdGVuZXJzJiZmKGUpfXJldHVybiBuLmxpc3RlbmVycz10LG59ZnVuY3Rpb24gZihlKXt2YXIgdD11LnBhcmVudE5vZGUoZSk7byh0KSYmdS5yZW1vdmVDaGlsZCh0LGUpfWZ1bmN0aW9uIGQoZSx0LG4scixhLGMscyl7aWYobyhlLmVsbSkmJm8oYykmJihlPWNbc109YmUoZSkpLGUuaXNSb290SW5zZXJ0PSFhLCFoKGUsdCxuLHIpKXt2YXIgbD1lLmRhdGEscD1lLmNoaWxkcmVuLGY9ZS50YWc7byhmKT8oZS5lbG09ZS5ucz91LmNyZWF0ZUVsZW1lbnROUyhlLm5zLGYpOnUuY3JlYXRlRWxlbWVudChmLGUpLHgoZSksZyhlLHAsdCksbyhsKSYmdyhlLHQpLHkobixlLmVsbSxyKSk6aShlLmlzQ29tbWVudCk/KGUuZWxtPXUuY3JlYXRlQ29tbWVudChlLnRleHQpLHkobixlLmVsbSxyKSk6KGUuZWxtPXUuY3JlYXRlVGV4dE5vZGUoZS50ZXh0KSx5KG4sZS5lbG0scikpfX1mdW5jdGlvbiBoKGUsdCxuLHIpe3ZhciBhPWUuZGF0YTtpZihvKGEpKXt2YXIgYz1vKGUuY29tcG9uZW50SW5zdGFuY2UpJiZhLmtlZXBBbGl2ZTtpZihvKGE9YS5ob29rKSYmbyhhPWEuaW5pdCkmJmEoZSwhMSksbyhlLmNvbXBvbmVudEluc3RhbmNlKSlyZXR1cm4gbShlLHQpLHkobixlLmVsbSxyKSxpKGMpJiZ2KGUsdCxuLHIpLCEwfX1mdW5jdGlvbiBtKGUsdCl7byhlLmRhdGEucGVuZGluZ0luc2VydCkmJih0LnB1c2guYXBwbHkodCxlLmRhdGEucGVuZGluZ0luc2VydCksZS5kYXRhLnBlbmRpbmdJbnNlcnQ9bnVsbCksZS5lbG09ZS5jb21wb25lbnRJbnN0YW5jZS4kZWwsYihlKT8odyhlLHQpLHgoZSkpOihwbyhlKSx0LnB1c2goZSkpfWZ1bmN0aW9uIHYoZSx0LG4scil7dmFyIGksYz1lO3doaWxlKGMuY29tcG9uZW50SW5zdGFuY2UpaWYoYz1jLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZSxvKGk9Yy5kYXRhKSYmbyhpPWkudHJhbnNpdGlvbikpe2ZvcihpPTA7aTxhLmFjdGl2YXRlLmxlbmd0aDsrK2kpYS5hY3RpdmF0ZVtpXShmbyxjKTt0LnB1c2goYyk7YnJlYWt9eShuLGUuZWxtLHIpfWZ1bmN0aW9uIHkoZSx0LG4pe28oZSkmJihvKG4pP3UucGFyZW50Tm9kZShuKT09PWUmJnUuaW5zZXJ0QmVmb3JlKGUsdCxuKTp1LmFwcGVuZENoaWxkKGUsdCkpfWZ1bmN0aW9uIGcoZSx0LG4pe2lmKEFycmF5LmlzQXJyYXkodCkpezA7Zm9yKHZhciByPTA7cjx0Lmxlbmd0aDsrK3IpZCh0W3JdLG4sZS5lbG0sbnVsbCwhMCx0LHIpfWVsc2UgYyhlLnRleHQpJiZ1LmFwcGVuZENoaWxkKGUuZWxtLHUuY3JlYXRlVGV4dE5vZGUoU3RyaW5nKGUudGV4dCkpKX1mdW5jdGlvbiBiKGUpe3doaWxlKGUuY29tcG9uZW50SW5zdGFuY2UpZT1lLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZTtyZXR1cm4gbyhlLnRhZyl9ZnVuY3Rpb24gdyhlLG4pe2Zvcih2YXIgcj0wO3I8YS5jcmVhdGUubGVuZ3RoOysrcilhLmNyZWF0ZVtyXShmbyxlKTt0PWUuZGF0YS5ob29rLG8odCkmJihvKHQuY3JlYXRlKSYmdC5jcmVhdGUoZm8sZSksbyh0Lmluc2VydCkmJm4ucHVzaChlKSl9ZnVuY3Rpb24geChlKXt2YXIgdDtpZihvKHQ9ZS5mblNjb3BlSWQpKXUuc2V0U3R5bGVTY29wZShlLmVsbSx0KTtlbHNle3ZhciBuPWU7d2hpbGUobilvKHQ9bi5jb250ZXh0KSYmbyh0PXQuJG9wdGlvbnMuX3Njb3BlSWQpJiZ1LnNldFN0eWxlU2NvcGUoZS5lbG0sdCksbj1uLnBhcmVudH1vKHQ9UnQpJiZ0IT09ZS5jb250ZXh0JiZ0IT09ZS5mbkNvbnRleHQmJm8odD10LiRvcHRpb25zLl9zY29wZUlkKSYmdS5zZXRTdHlsZVNjb3BlKGUuZWxtLHQpfWZ1bmN0aW9uIEMoZSx0LG4scixvLGkpe2Zvcig7cjw9bzsrK3IpZChuW3JdLGksZSx0LCExLG4scil9ZnVuY3Rpb24gayhlKXt2YXIgdCxuLHI9ZS5kYXRhO2lmKG8ocikpZm9yKG8odD1yLmhvb2spJiZvKHQ9dC5kZXN0cm95KSYmdChlKSx0PTA7dDxhLmRlc3Ryb3kubGVuZ3RoOysrdClhLmRlc3Ryb3lbdF0oZSk7aWYobyh0PWUuY2hpbGRyZW4pKWZvcihuPTA7bjxlLmNoaWxkcmVuLmxlbmd0aDsrK24payhlLmNoaWxkcmVuW25dKX1mdW5jdGlvbiBTKGUsdCxuLHIpe2Zvcig7bjw9cjsrK24pe3ZhciBpPXRbbl07byhpKSYmKG8oaS50YWcpPyhQKGkpLGsoaSkpOmYoaS5lbG0pKX19ZnVuY3Rpb24gUChlLHQpe2lmKG8odCl8fG8oZS5kYXRhKSl7dmFyIG4scj1hLnJlbW92ZS5sZW5ndGgrMTtmb3Iobyh0KT90Lmxpc3RlbmVycys9cjp0PXAoZS5lbG0sciksbyhuPWUuY29tcG9uZW50SW5zdGFuY2UpJiZvKG49bi5fdm5vZGUpJiZvKG4uZGF0YSkmJlAobix0KSxuPTA7bjxhLnJlbW92ZS5sZW5ndGg7KytuKWEucmVtb3ZlW25dKGUsdCk7byhuPWUuZGF0YS5ob29rKSYmbyhuPW4ucmVtb3ZlKT9uKGUsdCk6dCgpfWVsc2UgZihlLmVsbSl9ZnVuY3Rpb24gQShlLHQsbixpLGEpe3ZhciBjLHMsbCxwLGY9MCxoPTAsXz10Lmxlbmd0aC0xLG09dFswXSx2PXRbX10seT1uLmxlbmd0aC0xLGc9blswXSxiPW5beV0sdz0hYTt3aGlsZShmPD1fJiZoPD15KXIobSk/bT10WysrZl06cih2KT92PXRbLS1fXTpfbyhtLGcpPygkKG0sZyxpLG4saCksbT10WysrZl0sZz1uWysraF0pOl9vKHYsYik/KCQodixiLGksbix5KSx2PXRbLS1fXSxiPW5bLS15XSk6X28obSxiKT8oJChtLGIsaSxuLHkpLHcmJnUuaW5zZXJ0QmVmb3JlKGUsbS5lbG0sdS5uZXh0U2libGluZyh2LmVsbSkpLG09dFsrK2ZdLGI9blstLXldKTpfbyh2LGcpPygkKHYsZyxpLG4saCksdyYmdS5pbnNlcnRCZWZvcmUoZSx2LmVsbSxtLmVsbSksdj10Wy0tX10sZz1uWysraF0pOihyKGMpJiYoYz12byh0LGYsXykpLHM9byhnLmtleSk/Y1tnLmtleV06TyhnLHQsZixfKSxyKHMpP2QoZyxpLGUsbS5lbG0sITEsbixoKToobD10W3NdLF9vKGwsZyk/KCQobCxnLGksbixoKSx0W3NdPXZvaWQgMCx3JiZ1Lmluc2VydEJlZm9yZShlLGwuZWxtLG0uZWxtKSk6ZChnLGksZSxtLmVsbSwhMSxuLGgpKSxnPW5bKytoXSk7Zj5fPyhwPXIoblt5KzFdKT9udWxsOm5beSsxXS5lbG0sQyhlLHAsbixoLHksaSkpOmg+eSYmUyhlLHQsZixfKX1mdW5jdGlvbiBPKGUsdCxuLHIpe2Zvcih2YXIgaT1uO2k8cjtpKyspe3ZhciBhPXRbaV07aWYobyhhKSYmX28oZSxhKSlyZXR1cm4gaX19ZnVuY3Rpb24gJChlLHQsbixjLHMsbCl7aWYoZSE9PXQpe28odC5lbG0pJiZvKGMpJiYodD1jW3NdPWJlKHQpKTt2YXIgcD10LmVsbT1lLmVsbTtpZihpKGUuaXNBc3luY1BsYWNlaG9sZGVyKSlvKHQuYXN5bmNGYWN0b3J5LnJlc29sdmVkKT9FKGUuZWxtLHQsbik6dC5pc0FzeW5jUGxhY2Vob2xkZXI9ITA7ZWxzZSBpZihpKHQuaXNTdGF0aWMpJiZpKGUuaXNTdGF0aWMpJiZ0LmtleT09PWUua2V5JiYoaSh0LmlzQ2xvbmVkKXx8aSh0LmlzT25jZSkpKXQuY29tcG9uZW50SW5zdGFuY2U9ZS5jb21wb25lbnRJbnN0YW5jZTtlbHNle3ZhciBmLGQ9dC5kYXRhO28oZCkmJm8oZj1kLmhvb2spJiZvKGY9Zi5wcmVwYXRjaCkmJmYoZSx0KTt2YXIgaD1lLmNoaWxkcmVuLF89dC5jaGlsZHJlbjtpZihvKGQpJiZiKHQpKXtmb3IoZj0wO2Y8YS51cGRhdGUubGVuZ3RoOysrZilhLnVwZGF0ZVtmXShlLHQpO28oZj1kLmhvb2spJiZvKGY9Zi51cGRhdGUpJiZmKGUsdCl9cih0LnRleHQpP28oaCkmJm8oXyk/aCE9PV8mJkEocCxoLF8sbixsKTpvKF8pPyhvKGUudGV4dCkmJnUuc2V0VGV4dENvbnRlbnQocCwiIiksQyhwLG51bGwsXywwLF8ubGVuZ3RoLTEsbikpOm8oaCk/UyhwLGgsMCxoLmxlbmd0aC0xKTpvKGUudGV4dCkmJnUuc2V0VGV4dENvbnRlbnQocCwiIik6ZS50ZXh0IT09dC50ZXh0JiZ1LnNldFRleHRDb250ZW50KHAsdC50ZXh0KSxvKGQpJiZvKGY9ZC5ob29rKSYmbyhmPWYucG9zdHBhdGNoKSYmZihlLHQpfX19ZnVuY3Rpb24gVChlLHQsbil7aWYoaShuKSYmbyhlLnBhcmVudCkpZS5wYXJlbnQuZGF0YS5wZW5kaW5nSW5zZXJ0PXQ7ZWxzZSBmb3IodmFyIHI9MDtyPHQubGVuZ3RoOysrcil0W3JdLmRhdGEuaG9vay5pbnNlcnQodFtyXSl9dmFyIGo9XygiYXR0cnMsY2xhc3Msc3RhdGljQ2xhc3Msc3RhdGljU3R5bGUsa2V5Iik7ZnVuY3Rpb24gRShlLHQsbixyKXt2YXIgYSxjPXQudGFnLHM9dC5kYXRhLHU9dC5jaGlsZHJlbjtpZihyPXJ8fHMmJnMucHJlLHQuZWxtPWUsaSh0LmlzQ29tbWVudCkmJm8odC5hc3luY0ZhY3RvcnkpKXJldHVybiB0LmlzQXN5bmNQbGFjZWhvbGRlcj0hMCwhMDtpZihvKHMpJiYobyhhPXMuaG9vaykmJm8oYT1hLmluaXQpJiZhKHQsITApLG8oYT10LmNvbXBvbmVudEluc3RhbmNlKSkpcmV0dXJuIG0odCxuKSwhMDtpZihvKGMpKXtpZihvKHUpKWlmKGUuaGFzQ2hpbGROb2RlcygpKWlmKG8oYT1zKSYmbyhhPWEuZG9tUHJvcHMpJiZvKGE9YS5pbm5lckhUTUwpKXtpZihhIT09ZS5pbm5lckhUTUwpcmV0dXJuITF9ZWxzZXtmb3IodmFyIGw9ITAscD1lLmZpcnN0Q2hpbGQsZj0wO2Y8dS5sZW5ndGg7ZisrKXtpZighcHx8IUUocCx1W2ZdLG4scikpe2w9ITE7YnJlYWt9cD1wLm5leHRTaWJsaW5nfWlmKCFsfHxwKXJldHVybiExfWVsc2UgZyh0LHUsbik7aWYobyhzKSl7dmFyIGQ9ITE7Zm9yKHZhciBoIGluIHMpaWYoIWooaCkpe2Q9ITAsdyh0LG4pO2JyZWFrfSFkJiZzWyJjbGFzcyJdJiZmdChzWyJjbGFzcyJdKX19ZWxzZSBlLmRhdGEhPT10LnRleHQmJihlLmRhdGE9dC50ZXh0KTtyZXR1cm4hMH1yZXR1cm4gZnVuY3Rpb24oZSx0LG4sYyl7aWYoIXIodCkpe3ZhciBzPSExLHA9W107aWYocihlKSlzPSEwLGQodCxwKTtlbHNle3ZhciBmPW8oZS5ub2RlVHlwZSk7aWYoIWYmJl9vKGUsdCkpJChlLHQscCxudWxsLG51bGwsYyk7ZWxzZXtpZihmKXtpZigxPT09ZS5ub2RlVHlwZSYmZS5oYXNBdHRyaWJ1dGUoTikmJihlLnJlbW92ZUF0dHJpYnV0ZShOKSxuPSEwKSxpKG4pJiZFKGUsdCxwKSlyZXR1cm4gVCh0LHAsITApLGU7ZT1sKGUpfXZhciBoPWUuZWxtLF89dS5wYXJlbnROb2RlKGgpO2lmKGQodCxwLGguX2xlYXZlQ2I/bnVsbDpfLHUubmV4dFNpYmxpbmcoaCkpLG8odC5wYXJlbnQpKXt2YXIgbT10LnBhcmVudCx2PWIodCk7d2hpbGUobSl7Zm9yKHZhciB5PTA7eTxhLmRlc3Ryb3kubGVuZ3RoOysreSlhLmRlc3Ryb3lbeV0obSk7aWYobS5lbG09dC5lbG0sdil7Zm9yKHZhciBnPTA7ZzxhLmNyZWF0ZS5sZW5ndGg7KytnKWEuY3JlYXRlW2ddKGZvLG0pO3ZhciB3PW0uZGF0YS5ob29rLmluc2VydDtpZih3Lm1lcmdlZClmb3IodmFyIHg9MTt4PHcuZm5zLmxlbmd0aDt4Kyspdy5mbnNbeF0oKX1lbHNlIHBvKG0pO209bS5wYXJlbnR9fW8oXyk/UyhfLFtlXSwwLDApOm8oZS50YWcpJiZrKGUpfX1yZXR1cm4gVCh0LHAscyksdC5lbG19byhlKSYmayhlKX19dmFyIGdvPXtjcmVhdGU6Ym8sdXBkYXRlOmJvLGRlc3Ryb3k6ZnVuY3Rpb24oZSl7Ym8oZSxmbyl9fTtmdW5jdGlvbiBibyhlLHQpeyhlLmRhdGEuZGlyZWN0aXZlc3x8dC5kYXRhLmRpcmVjdGl2ZXMpJiZ3byhlLHQpfWZ1bmN0aW9uIHdvKGUsdCl7dmFyIG4scixvLGk9ZT09PWZvLGE9dD09PWZvLGM9Q28oZS5kYXRhLmRpcmVjdGl2ZXMsZS5jb250ZXh0KSxzPUNvKHQuZGF0YS5kaXJlY3RpdmVzLHQuY29udGV4dCksdT1bXSxsPVtdO2ZvcihuIGluIHMpcj1jW25dLG89c1tuXSxyPyhvLm9sZFZhbHVlPXIudmFsdWUsU28obywidXBkYXRlIix0LGUpLG8uZGVmJiZvLmRlZi5jb21wb25lbnRVcGRhdGVkJiZsLnB1c2gobykpOihTbyhvLCJiaW5kIix0LGUpLG8uZGVmJiZvLmRlZi5pbnNlcnRlZCYmdS5wdXNoKG8pKTtpZih1Lmxlbmd0aCl7dmFyIHA9ZnVuY3Rpb24oKXtmb3IodmFyIG49MDtuPHUubGVuZ3RoO24rKylTbyh1W25dLCJpbnNlcnRlZCIsdCxlKX07aT95dCh0LCJpbnNlcnQiLHApOnAoKX1pZihsLmxlbmd0aCYmeXQodCwicG9zdHBhdGNoIixmdW5jdGlvbigpe2Zvcih2YXIgbj0wO248bC5sZW5ndGg7bisrKVNvKGxbbl0sImNvbXBvbmVudFVwZGF0ZWQiLHQsZSl9KSwhaSlmb3IobiBpbiBjKXNbbl18fFNvKGNbbl0sInVuYmluZCIsZSxlLGEpfXZhciB4bz1PYmplY3QuY3JlYXRlKG51bGwpO2Z1bmN0aW9uIENvKGUsdCl7dmFyIG4scixvPU9iamVjdC5jcmVhdGUobnVsbCk7aWYoIWUpcmV0dXJuIG87Zm9yKG49MDtuPGUubGVuZ3RoO24rKylyPWVbbl0sci5tb2RpZmllcnN8fChyLm1vZGlmaWVycz14byksb1trbyhyKV09cixyLmRlZj1HZSh0LiRvcHRpb25zLCJkaXJlY3RpdmVzIixyLm5hbWUsITApO3JldHVybiBvfWZ1bmN0aW9uIGtvKGUpe3JldHVybiBlLnJhd05hbWV8fGUubmFtZSsiLiIrT2JqZWN0LmtleXMoZS5tb2RpZmllcnN8fHt9KS5qb2luKCIuIil9ZnVuY3Rpb24gU28oZSx0LG4scixvKXt2YXIgaT1lLmRlZiYmZS5kZWZbdF07aWYoaSl0cnl7aShuLmVsbSxlLG4scixvKX1jYXRjaChjYSl7WWUoY2Esbi5jb250ZXh0LCJkaXJlY3RpdmUgIitlLm5hbWUrIiAiK3QrIiBob29rIil9fXZhciBQbz1bbG8sZ29dO2Z1bmN0aW9uIEFvKGUsdCl7dmFyIG49dC5jb21wb25lbnRPcHRpb25zO2lmKCghbyhuKXx8ITEhPT1uLkN0b3Iub3B0aW9ucy5pbmhlcml0QXR0cnMpJiYoIXIoZS5kYXRhLmF0dHJzKXx8IXIodC5kYXRhLmF0dHJzKSkpe3ZhciBpLGEsYyxzPXQuZWxtLHU9ZS5kYXRhLmF0dHJzfHx7fSxsPXQuZGF0YS5hdHRyc3x8e307Zm9yKGkgaW4gbyhsLl9fb2JfXykmJihsPXQuZGF0YS5hdHRycz1UKHt9LGwpKSxsKWE9bFtpXSxjPXVbaV0sYyE9PWEmJk9vKHMsaSxhKTtmb3IoaSBpbihafHxlZSkmJmwudmFsdWUhPT11LnZhbHVlJiZPbyhzLCJ2YWx1ZSIsbC52YWx1ZSksdSlyKGxbaV0pJiYoRXIoaSk/cy5yZW1vdmVBdHRyaWJ1dGVOUyhqcixNcihpKSk6JHIoaSl8fHMucmVtb3ZlQXR0cmlidXRlKGkpKX19ZnVuY3Rpb24gT28oZSx0LG4pe2UudGFnTmFtZS5pbmRleE9mKCItIik+LTE/JG8oZSx0LG4pOlRyKHQpP0RyKG4pP2UucmVtb3ZlQXR0cmlidXRlKHQpOihuPSJhbGxvd2Z1bGxzY3JlZW4iPT09dCYmIkVNQkVEIj09PWUudGFnTmFtZT8idHJ1ZSI6dCxlLnNldEF0dHJpYnV0ZSh0LG4pKTokcih0KT9lLnNldEF0dHJpYnV0ZSh0LERyKG4pfHwiZmFsc2UiPT09bj8iZmFsc2UiOiJ0cnVlIik6RXIodCk/RHIobik/ZS5yZW1vdmVBdHRyaWJ1dGVOUyhqcixNcih0KSk6ZS5zZXRBdHRyaWJ1dGVOUyhqcix0LG4pOiRvKGUsdCxuKX1mdW5jdGlvbiAkbyhlLHQsbil7aWYoRHIobikpZS5yZW1vdmVBdHRyaWJ1dGUodCk7ZWxzZXtpZihaJiYhUSYmKCJURVhUQVJFQSI9PT1lLnRhZ05hbWV8fCJJTlBVVCI9PT1lLnRhZ05hbWUpJiYicGxhY2Vob2xkZXIiPT09dCYmIWUuX19pZXBoKXt2YXIgcj1mdW5jdGlvbih0KXt0LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiaW5wdXQiLHIpfTtlLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixyKSxlLl9faWVwaD0hMH1lLnNldEF0dHJpYnV0ZSh0LG4pfX12YXIgVG89e2NyZWF0ZTpBbyx1cGRhdGU6QW99O2Z1bmN0aW9uIGpvKGUsdCl7dmFyIG49dC5lbG0saT10LmRhdGEsYT1lLmRhdGE7aWYoIShyKGkuc3RhdGljQ2xhc3MpJiZyKGkuY2xhc3MpJiYocihhKXx8cihhLnN0YXRpY0NsYXNzKSYmcihhLmNsYXNzKSkpKXt2YXIgYz1Jcih0KSxzPW4uX3RyYW5zaXRpb25DbGFzc2VzO28ocykmJihjPU5yKGMsUnIocykpKSxjIT09bi5fcHJldkNsYXNzJiYobi5zZXRBdHRyaWJ1dGUoImNsYXNzIixjKSxuLl9wcmV2Q2xhc3M9Yyl9fXZhciBFbyxNbz17Y3JlYXRlOmpvLHVwZGF0ZTpqb30sRG89Il9fciIsSW89Il9fYyI7ZnVuY3Rpb24gTG8oZSl7aWYobyhlW0RvXSkpe3ZhciB0PVo/ImNoYW5nZSI6ImlucHV0IjtlW3RdPVtdLmNvbmNhdChlW0RvXSxlW3RdfHxbXSksZGVsZXRlIGVbRG9dfW8oZVtJb10pJiYoZS5jaGFuZ2U9W10uY29uY2F0KGVbSW9dLGUuY2hhbmdlfHxbXSksZGVsZXRlIGVbSW9dKX1mdW5jdGlvbiBGbyhlLHQsbil7dmFyIHI9RW87cmV0dXJuIGZ1bmN0aW9uIG8oKXt2YXIgaT10LmFwcGx5KG51bGwsYXJndW1lbnRzKTtudWxsIT09aSYmUm8oZSxvLG4scil9fWZ1bmN0aW9uIE5vKGUsdCxuLHIpe3Q9dXQodCksRW8uYWRkRXZlbnRMaXN0ZW5lcihlLHQscmU/e2NhcHR1cmU6bixwYXNzaXZlOnJ9Om4pfWZ1bmN0aW9uIFJvKGUsdCxuLHIpeyhyfHxFbykucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLHQuX3dpdGhUYXNrfHx0LG4pfWZ1bmN0aW9uIFZvKGUsdCl7aWYoIXIoZS5kYXRhLm9uKXx8IXIodC5kYXRhLm9uKSl7dmFyIG49dC5kYXRhLm9ufHx7fSxvPWUuZGF0YS5vbnx8e307RW89dC5lbG0sTG8obiksdnQobixvLE5vLFJvLEZvLHQuY29udGV4dCksRW89dm9pZCAwfX12YXIgSG89e2NyZWF0ZTpWbyx1cGRhdGU6Vm99O2Z1bmN0aW9uIFVvKGUsdCl7aWYoIXIoZS5kYXRhLmRvbVByb3BzKXx8IXIodC5kYXRhLmRvbVByb3BzKSl7dmFyIG4saSxhPXQuZWxtLGM9ZS5kYXRhLmRvbVByb3BzfHx7fSxzPXQuZGF0YS5kb21Qcm9wc3x8e307Zm9yKG4gaW4gbyhzLl9fb2JfXykmJihzPXQuZGF0YS5kb21Qcm9wcz1UKHt9LHMpKSxjKXIoc1tuXSkmJihhW25dPSIiKTtmb3IobiBpbiBzKXtpZihpPXNbbl0sInRleHRDb250ZW50Ij09PW58fCJpbm5lckhUTUwiPT09bil7aWYodC5jaGlsZHJlbiYmKHQuY2hpbGRyZW4ubGVuZ3RoPTApLGk9PT1jW25dKWNvbnRpbnVlOzE9PT1hLmNoaWxkTm9kZXMubGVuZ3RoJiZhLnJlbW92ZUNoaWxkKGEuY2hpbGROb2Rlc1swXSl9aWYoInZhbHVlIj09PW4pe2EuX3ZhbHVlPWk7dmFyIHU9cihpKT8iIjpTdHJpbmcoaSk7em8oYSx1KSYmKGEudmFsdWU9dSl9ZWxzZSBhW25dPWl9fX1mdW5jdGlvbiB6byhlLHQpe3JldHVybiFlLmNvbXBvc2luZyYmKCJPUFRJT04iPT09ZS50YWdOYW1lfHxCbyhlLHQpfHxHbyhlLHQpKX1mdW5jdGlvbiBCbyhlLHQpe3ZhciBuPSEwO3RyeXtuPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT1lfWNhdGNoKGNhKXt9cmV0dXJuIG4mJmUudmFsdWUhPT10fWZ1bmN0aW9uIEdvKGUsdCl7dmFyIG49ZS52YWx1ZSxyPWUuX3ZNb2RpZmllcnM7aWYobyhyKSl7aWYoci5sYXp5KXJldHVybiExO2lmKHIubnVtYmVyKXJldHVybiBoKG4pIT09aCh0KTtpZihyLnRyaW0pcmV0dXJuIG4udHJpbSgpIT09dC50cmltKCl9cmV0dXJuIG4hPT10fXZhciBXbz17Y3JlYXRlOlVvLHVwZGF0ZTpVb30sS289YihmdW5jdGlvbihlKXt2YXIgdD17fSxuPS87KD8hW14oXSpcKSkvZyxyPS86KC4rKS87cmV0dXJuIGUuc3BsaXQobikuZm9yRWFjaChmdW5jdGlvbihlKXtpZihlKXt2YXIgbj1lLnNwbGl0KHIpO24ubGVuZ3RoPjEmJih0W25bMF0udHJpbSgpXT1uWzFdLnRyaW0oKSl9fSksdH0pO2Z1bmN0aW9uIHFvKGUpe3ZhciB0PVhvKGUuc3R5bGUpO3JldHVybiBlLnN0YXRpY1N0eWxlP1QoZS5zdGF0aWNTdHlsZSx0KTp0fWZ1bmN0aW9uIFhvKGUpe3JldHVybiBBcnJheS5pc0FycmF5KGUpP2ooZSk6InN0cmluZyI9PT10eXBlb2YgZT9LbyhlKTplfWZ1bmN0aW9uIEpvKGUsdCl7dmFyIG4scj17fTtpZih0KXt2YXIgbz1lO3doaWxlKG8uY29tcG9uZW50SW5zdGFuY2Upbz1vLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZSxvJiZvLmRhdGEmJihuPXFvKG8uZGF0YSkpJiZUKHIsbil9KG49cW8oZS5kYXRhKSkmJlQocixuKTt2YXIgaT1lO3doaWxlKGk9aS5wYXJlbnQpaS5kYXRhJiYobj1xbyhpLmRhdGEpKSYmVChyLG4pO3JldHVybiByfXZhciBZbyxabz0vXi0tLyxRbz0vXHMqIWltcG9ydGFudCQvLGVpPWZ1bmN0aW9uKGUsdCxuKXtpZihaby50ZXN0KHQpKWUuc3R5bGUuc2V0UHJvcGVydHkodCxuKTtlbHNlIGlmKFFvLnRlc3QobikpZS5zdHlsZS5zZXRQcm9wZXJ0eSh0LG4ucmVwbGFjZShRbywiIiksImltcG9ydGFudCIpO2Vsc2V7dmFyIHI9bmkodCk7aWYoQXJyYXkuaXNBcnJheShuKSlmb3IodmFyIG89MCxpPW4ubGVuZ3RoO288aTtvKyspZS5zdHlsZVtyXT1uW29dO2Vsc2UgZS5zdHlsZVtyXT1ufX0sdGk9WyJXZWJraXQiLCJNb3oiLCJtcyJdLG5pPWIoZnVuY3Rpb24oZSl7aWYoWW89WW98fGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlLGU9eChlKSwiZmlsdGVyIiE9PWUmJmUgaW4gWW8pcmV0dXJuIGU7Zm9yKHZhciB0PWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrZS5zbGljZSgxKSxuPTA7bjx0aS5sZW5ndGg7bisrKXt2YXIgcj10aVtuXSt0O2lmKHIgaW4gWW8pcmV0dXJuIHJ9fSk7ZnVuY3Rpb24gcmkoZSx0KXt2YXIgbj10LmRhdGEsaT1lLmRhdGE7aWYoIShyKG4uc3RhdGljU3R5bGUpJiZyKG4uc3R5bGUpJiZyKGkuc3RhdGljU3R5bGUpJiZyKGkuc3R5bGUpKSl7dmFyIGEsYyxzPXQuZWxtLHU9aS5zdGF0aWNTdHlsZSxsPWkubm9ybWFsaXplZFN0eWxlfHxpLnN0eWxlfHx7fSxwPXV8fGwsZj1Ybyh0LmRhdGEuc3R5bGUpfHx7fTt0LmRhdGEubm9ybWFsaXplZFN0eWxlPW8oZi5fX29iX18pP1Qoe30sZik6Zjt2YXIgZD1Kbyh0LCEwKTtmb3IoYyBpbiBwKXIoZFtjXSkmJmVpKHMsYywiIik7Zm9yKGMgaW4gZClhPWRbY10sYSE9PXBbY10mJmVpKHMsYyxudWxsPT1hPyIiOmEpfX12YXIgb2k9e2NyZWF0ZTpyaSx1cGRhdGU6cml9LGlpPS9ccysvO2Z1bmN0aW9uIGFpKGUsdCl7aWYodCYmKHQ9dC50cmltKCkpKWlmKGUuY2xhc3NMaXN0KXQuaW5kZXhPZigiICIpPi0xP3Quc3BsaXQoaWkpLmZvckVhY2goZnVuY3Rpb24odCl7cmV0dXJuIGUuY2xhc3NMaXN0LmFkZCh0KX0pOmUuY2xhc3NMaXN0LmFkZCh0KTtlbHNle3ZhciBuPSIgIisoZS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIiKSsiICI7bi5pbmRleE9mKCIgIit0KyIgIik8MCYmZS5zZXRBdHRyaWJ1dGUoImNsYXNzIiwobit0KS50cmltKCkpfX1mdW5jdGlvbiBjaShlLHQpe2lmKHQmJih0PXQudHJpbSgpKSlpZihlLmNsYXNzTGlzdCl0LmluZGV4T2YoIiAiKT4tMT90LnNwbGl0KGlpKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3JldHVybiBlLmNsYXNzTGlzdC5yZW1vdmUodCl9KTplLmNsYXNzTGlzdC5yZW1vdmUodCksZS5jbGFzc0xpc3QubGVuZ3RofHxlLnJlbW92ZUF0dHJpYnV0ZSgiY2xhc3MiKTtlbHNle3ZhciBuPSIgIisoZS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIiKSsiICIscj0iICIrdCsiICI7d2hpbGUobi5pbmRleE9mKHIpPj0wKW49bi5yZXBsYWNlKHIsIiAiKTtuPW4udHJpbSgpLG4/ZS5zZXRBdHRyaWJ1dGUoImNsYXNzIixuKTplLnJlbW92ZUF0dHJpYnV0ZSgiY2xhc3MiKX19ZnVuY3Rpb24gc2koZSl7aWYoZSl7aWYoIm9iamVjdCI9PT10eXBlb2YgZSl7dmFyIHQ9e307cmV0dXJuITEhPT1lLmNzcyYmVCh0LHVpKGUubmFtZXx8InYiKSksVCh0LGUpLHR9cmV0dXJuInN0cmluZyI9PT10eXBlb2YgZT91aShlKTp2b2lkIDB9fXZhciB1aT1iKGZ1bmN0aW9uKGUpe3JldHVybntlbnRlckNsYXNzOmUrIi1lbnRlciIsZW50ZXJUb0NsYXNzOmUrIi1lbnRlci10byIsZW50ZXJBY3RpdmVDbGFzczplKyItZW50ZXItYWN0aXZlIixsZWF2ZUNsYXNzOmUrIi1sZWF2ZSIsbGVhdmVUb0NsYXNzOmUrIi1sZWF2ZS10byIsbGVhdmVBY3RpdmVDbGFzczplKyItbGVhdmUtYWN0aXZlIn19KSxsaT1xJiYhUSxwaT0idHJhbnNpdGlvbiIsZmk9ImFuaW1hdGlvbiIsZGk9InRyYW5zaXRpb24iLGhpPSJ0cmFuc2l0aW9uZW5kIixfaT0iYW5pbWF0aW9uIixtaT0iYW5pbWF0aW9uZW5kIjtsaSYmKHZvaWQgMD09PXdpbmRvdy5vbnRyYW5zaXRpb25lbmQmJnZvaWQgMCE9PXdpbmRvdy5vbndlYmtpdHRyYW5zaXRpb25lbmQmJihkaT0iV2Via2l0VHJhbnNpdGlvbiIsaGk9IndlYmtpdFRyYW5zaXRpb25FbmQiKSx2b2lkIDA9PT13aW5kb3cub25hbmltYXRpb25lbmQmJnZvaWQgMCE9PXdpbmRvdy5vbndlYmtpdGFuaW1hdGlvbmVuZCYmKF9pPSJXZWJraXRBbmltYXRpb24iLG1pPSJ3ZWJraXRBbmltYXRpb25FbmQiKSk7dmFyIHZpPXE/d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZT93aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lLmJpbmQod2luZG93KTpzZXRUaW1lb3V0OmZ1bmN0aW9uKGUpe3JldHVybiBlKCl9O2Z1bmN0aW9uIHlpKGUpe3ZpKGZ1bmN0aW9uKCl7dmkoZSl9KX1mdW5jdGlvbiBnaShlLHQpe3ZhciBuPWUuX3RyYW5zaXRpb25DbGFzc2VzfHwoZS5fdHJhbnNpdGlvbkNsYXNzZXM9W10pO24uaW5kZXhPZih0KTwwJiYobi5wdXNoKHQpLGFpKGUsdCkpfWZ1bmN0aW9uIGJpKGUsdCl7ZS5fdHJhbnNpdGlvbkNsYXNzZXMmJnYoZS5fdHJhbnNpdGlvbkNsYXNzZXMsdCksY2koZSx0KX1mdW5jdGlvbiB3aShlLHQsbil7dmFyIHI9Q2koZSx0KSxvPXIudHlwZSxpPXIudGltZW91dCxhPXIucHJvcENvdW50O2lmKCFvKXJldHVybiBuKCk7dmFyIGM9bz09PXBpP2hpOm1pLHM9MCx1PWZ1bmN0aW9uKCl7ZS5yZW1vdmVFdmVudExpc3RlbmVyKGMsbCksbigpfSxsPWZ1bmN0aW9uKHQpe3QudGFyZ2V0PT09ZSYmKytzPj1hJiZ1KCl9O3NldFRpbWVvdXQoZnVuY3Rpb24oKXtzPGEmJnUoKX0saSsxKSxlLmFkZEV2ZW50TGlzdGVuZXIoYyxsKX12YXIgeGk9L1xiKHRyYW5zZm9ybXxhbGwpKCx8JCkvO2Z1bmN0aW9uIENpKGUsdCl7dmFyIG4scj13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlKSxvPShyW2RpKyJEZWxheSJdfHwiIikuc3BsaXQoIiwgIiksaT0ocltkaSsiRHVyYXRpb24iXXx8IiIpLnNwbGl0KCIsICIpLGE9a2kobyxpKSxjPShyW19pKyJEZWxheSJdfHwiIikuc3BsaXQoIiwgIikscz0ocltfaSsiRHVyYXRpb24iXXx8IiIpLnNwbGl0KCIsICIpLHU9a2koYyxzKSxsPTAscD0wO3Q9PT1waT9hPjAmJihuPXBpLGw9YSxwPWkubGVuZ3RoKTp0PT09Zmk/dT4wJiYobj1maSxsPXUscD1zLmxlbmd0aCk6KGw9TWF0aC5tYXgoYSx1KSxuPWw+MD9hPnU/cGk6Zmk6bnVsbCxwPW4/bj09PXBpP2kubGVuZ3RoOnMubGVuZ3RoOjApO3ZhciBmPW49PT1waSYmeGkudGVzdChyW2RpKyJQcm9wZXJ0eSJdKTtyZXR1cm57dHlwZTpuLHRpbWVvdXQ6bCxwcm9wQ291bnQ6cCxoYXNUcmFuc2Zvcm06Zn19ZnVuY3Rpb24ga2koZSx0KXt3aGlsZShlLmxlbmd0aDx0Lmxlbmd0aCllPWUuY29uY2F0KGUpO3JldHVybiBNYXRoLm1heC5hcHBseShudWxsLHQubWFwKGZ1bmN0aW9uKHQsbil7cmV0dXJuIFNpKHQpK1NpKGVbbl0pfSkpfWZ1bmN0aW9uIFNpKGUpe3JldHVybiAxZTMqTnVtYmVyKGUuc2xpY2UoMCwtMSkucmVwbGFjZSgiLCIsIi4iKSl9ZnVuY3Rpb24gUGkoZSx0KXt2YXIgbj1lLmVsbTtvKG4uX2xlYXZlQ2IpJiYobi5fbGVhdmVDYi5jYW5jZWxsZWQ9ITAsbi5fbGVhdmVDYigpKTt2YXIgaT1zaShlLmRhdGEudHJhbnNpdGlvbik7aWYoIXIoaSkmJiFvKG4uX2VudGVyQ2IpJiYxPT09bi5ub2RlVHlwZSl7dmFyIGE9aS5jc3MsYz1pLnR5cGUsdT1pLmVudGVyQ2xhc3MsbD1pLmVudGVyVG9DbGFzcyxwPWkuZW50ZXJBY3RpdmVDbGFzcyxmPWkuYXBwZWFyQ2xhc3MsZD1pLmFwcGVhclRvQ2xhc3MsXz1pLmFwcGVhckFjdGl2ZUNsYXNzLG09aS5iZWZvcmVFbnRlcix2PWkuZW50ZXIseT1pLmFmdGVyRW50ZXIsZz1pLmVudGVyQ2FuY2VsbGVkLGI9aS5iZWZvcmVBcHBlYXIsdz1pLmFwcGVhcix4PWkuYWZ0ZXJBcHBlYXIsQz1pLmFwcGVhckNhbmNlbGxlZCxrPWkuZHVyYXRpb24sUz1SdCxQPVJ0LiR2bm9kZTt3aGlsZShQJiZQLnBhcmVudClQPVAucGFyZW50LFM9UC5jb250ZXh0O3ZhciBBPSFTLl9pc01vdW50ZWR8fCFlLmlzUm9vdEluc2VydDtpZighQXx8d3x8IiI9PT13KXt2YXIgTz1BJiZmP2Y6dSwkPUEmJl8/XzpwLFQ9QSYmZD9kOmwsaj1BJiZifHxtLEU9QSYmImZ1bmN0aW9uIj09PXR5cGVvZiB3P3c6dixNPUEmJnh8fHksRD1BJiZDfHxnLEk9aChzKGspP2suZW50ZXI6ayk7MDt2YXIgTD0hMSE9PWEmJiFRLE49JGkoRSksUj1uLl9lbnRlckNiPUYoZnVuY3Rpb24oKXtMJiYoYmkobixUKSxiaShuLCQpKSxSLmNhbmNlbGxlZD8oTCYmYmkobixPKSxEJiZEKG4pKTpNJiZNKG4pLG4uX2VudGVyQ2I9bnVsbH0pO2UuZGF0YS5zaG93fHx5dChlLCJpbnNlcnQiLGZ1bmN0aW9uKCl7dmFyIHQ9bi5wYXJlbnROb2RlLHI9dCYmdC5fcGVuZGluZyYmdC5fcGVuZGluZ1tlLmtleV07ciYmci50YWc9PT1lLnRhZyYmci5lbG0uX2xlYXZlQ2ImJnIuZWxtLl9sZWF2ZUNiKCksRSYmRShuLFIpfSksaiYmaihuKSxMJiYoZ2kobixPKSxnaShuLCQpLHlpKGZ1bmN0aW9uKCl7YmkobixPKSxSLmNhbmNlbGxlZHx8KGdpKG4sVCksTnx8KE9pKEkpP3NldFRpbWVvdXQoUixJKTp3aShuLGMsUikpKX0pKSxlLmRhdGEuc2hvdyYmKHQmJnQoKSxFJiZFKG4sUikpLEx8fE58fFIoKX19fWZ1bmN0aW9uIEFpKGUsdCl7dmFyIG49ZS5lbG07byhuLl9lbnRlckNiKSYmKG4uX2VudGVyQ2IuY2FuY2VsbGVkPSEwLG4uX2VudGVyQ2IoKSk7dmFyIGk9c2koZS5kYXRhLnRyYW5zaXRpb24pO2lmKHIoaSl8fDEhPT1uLm5vZGVUeXBlKXJldHVybiB0KCk7aWYoIW8obi5fbGVhdmVDYikpe3ZhciBhPWkuY3NzLGM9aS50eXBlLHU9aS5sZWF2ZUNsYXNzLGw9aS5sZWF2ZVRvQ2xhc3MscD1pLmxlYXZlQWN0aXZlQ2xhc3MsZj1pLmJlZm9yZUxlYXZlLGQ9aS5sZWF2ZSxfPWkuYWZ0ZXJMZWF2ZSxtPWkubGVhdmVDYW5jZWxsZWQsdj1pLmRlbGF5TGVhdmUseT1pLmR1cmF0aW9uLGc9ITEhPT1hJiYhUSxiPSRpKGQpLHc9aChzKHkpP3kubGVhdmU6eSk7MDt2YXIgeD1uLl9sZWF2ZUNiPUYoZnVuY3Rpb24oKXtuLnBhcmVudE5vZGUmJm4ucGFyZW50Tm9kZS5fcGVuZGluZyYmKG4ucGFyZW50Tm9kZS5fcGVuZGluZ1tlLmtleV09bnVsbCksZyYmKGJpKG4sbCksYmkobixwKSkseC5jYW5jZWxsZWQ/KGcmJmJpKG4sdSksbSYmbShuKSk6KHQoKSxfJiZfKG4pKSxuLl9sZWF2ZUNiPW51bGx9KTt2P3YoQyk6QygpfWZ1bmN0aW9uIEMoKXt4LmNhbmNlbGxlZHx8KCFlLmRhdGEuc2hvdyYmbi5wYXJlbnROb2RlJiYoKG4ucGFyZW50Tm9kZS5fcGVuZGluZ3x8KG4ucGFyZW50Tm9kZS5fcGVuZGluZz17fSkpW2Uua2V5XT1lKSxmJiZmKG4pLGcmJihnaShuLHUpLGdpKG4scCkseWkoZnVuY3Rpb24oKXtiaShuLHUpLHguY2FuY2VsbGVkfHwoZ2kobixsKSxifHwoT2kodyk/c2V0VGltZW91dCh4LHcpOndpKG4sYyx4KSkpfSkpLGQmJmQobix4KSxnfHxifHx4KCkpfX1mdW5jdGlvbiBPaShlKXtyZXR1cm4ibnVtYmVyIj09PXR5cGVvZiBlJiYhaXNOYU4oZSl9ZnVuY3Rpb24gJGkoZSl7aWYocihlKSlyZXR1cm4hMTt2YXIgdD1lLmZucztyZXR1cm4gbyh0KT8kaShBcnJheS5pc0FycmF5KHQpP3RbMF06dCk6KGUuX2xlbmd0aHx8ZS5sZW5ndGgpPjF9ZnVuY3Rpb24gVGkoZSx0KXshMCE9PXQuZGF0YS5zaG93JiZQaSh0KX12YXIgamk9cT97Y3JlYXRlOlRpLGFjdGl2YXRlOlRpLHJlbW92ZTpmdW5jdGlvbihlLHQpeyEwIT09ZS5kYXRhLnNob3c/QWkoZSx0KTp0KCl9fTp7fSxFaT1bVG8sTW8sSG8sV28sb2ksamldLE1pPUVpLmNvbmNhdChQbyksRGk9eW8oe25vZGVPcHM6dW8sbW9kdWxlczpNaX0pO1EmJmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNlbGVjdGlvbmNoYW5nZSIsZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5hY3RpdmVFbGVtZW50O2UmJmUudm1vZGVsJiZVaShlLCJpbnB1dCIpfSk7dmFyIElpPXtpbnNlcnRlZDpmdW5jdGlvbihlLHQsbixyKXsic2VsZWN0Ij09PW4udGFnPyhyLmVsbSYmIXIuZWxtLl92T3B0aW9ucz95dChuLCJwb3N0cGF0Y2giLGZ1bmN0aW9uKCl7SWkuY29tcG9uZW50VXBkYXRlZChlLHQsbil9KTpMaShlLHQsbi5jb250ZXh0KSxlLl92T3B0aW9ucz1bXS5tYXAuY2FsbChlLm9wdGlvbnMsUmkpKTooInRleHRhcmVhIj09PW4udGFnfHxYcihlLnR5cGUpKSYmKGUuX3ZNb2RpZmllcnM9dC5tb2RpZmllcnMsdC5tb2RpZmllcnMubGF6eXx8KGUuYWRkRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25zdGFydCIsVmkpLGUuYWRkRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25lbmQiLEhpKSxlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsSGkpLFEmJihlLnZtb2RlbD0hMCkpKX0sY29tcG9uZW50VXBkYXRlZDpmdW5jdGlvbihlLHQsbil7aWYoInNlbGVjdCI9PT1uLnRhZyl7TGkoZSx0LG4uY29udGV4dCk7dmFyIHI9ZS5fdk9wdGlvbnMsbz1lLl92T3B0aW9ucz1bXS5tYXAuY2FsbChlLm9wdGlvbnMsUmkpO2lmKG8uc29tZShmdW5jdGlvbihlLHQpe3JldHVybiFJKGUsclt0XSl9KSl7dmFyIGk9ZS5tdWx0aXBsZT90LnZhbHVlLnNvbWUoZnVuY3Rpb24oZSl7cmV0dXJuIE5pKGUsbyl9KTp0LnZhbHVlIT09dC5vbGRWYWx1ZSYmTmkodC52YWx1ZSxvKTtpJiZVaShlLCJjaGFuZ2UiKX19fX07ZnVuY3Rpb24gTGkoZSx0LG4pe0ZpKGUsdCxuKSwoWnx8ZWUpJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7RmkoZSx0LG4pfSwwKX1mdW5jdGlvbiBGaShlLHQsbil7dmFyIHI9dC52YWx1ZSxvPWUubXVsdGlwbGU7aWYoIW98fEFycmF5LmlzQXJyYXkocikpe2Zvcih2YXIgaSxhLGM9MCxzPWUub3B0aW9ucy5sZW5ndGg7YzxzO2MrKylpZihhPWUub3B0aW9uc1tjXSxvKWk9TChyLFJpKGEpKT4tMSxhLnNlbGVjdGVkIT09aSYmKGEuc2VsZWN0ZWQ9aSk7ZWxzZSBpZihJKFJpKGEpLHIpKXJldHVybiB2b2lkKGUuc2VsZWN0ZWRJbmRleCE9PWMmJihlLnNlbGVjdGVkSW5kZXg9YykpO298fChlLnNlbGVjdGVkSW5kZXg9LTEpfX1mdW5jdGlvbiBOaShlLHQpe3JldHVybiB0LmV2ZXJ5KGZ1bmN0aW9uKHQpe3JldHVybiFJKHQsZSl9KX1mdW5jdGlvbiBSaShlKXtyZXR1cm4iX3ZhbHVlImluIGU/ZS5fdmFsdWU6ZS52YWx1ZX1mdW5jdGlvbiBWaShlKXtlLnRhcmdldC5jb21wb3Npbmc9ITB9ZnVuY3Rpb24gSGkoZSl7ZS50YXJnZXQuY29tcG9zaW5nJiYoZS50YXJnZXQuY29tcG9zaW5nPSExLFVpKGUudGFyZ2V0LCJpbnB1dCIpKX1mdW5jdGlvbiBVaShlLHQpe3ZhciBuPWRvY3VtZW50LmNyZWF0ZUV2ZW50KCJIVE1MRXZlbnRzIik7bi5pbml0RXZlbnQodCwhMCwhMCksZS5kaXNwYXRjaEV2ZW50KG4pfWZ1bmN0aW9uIHppKGUpe3JldHVybiFlLmNvbXBvbmVudEluc3RhbmNlfHxlLmRhdGEmJmUuZGF0YS50cmFuc2l0aW9uP2U6emkoZS5jb21wb25lbnRJbnN0YW5jZS5fdm5vZGUpfXZhciBCaT17YmluZDpmdW5jdGlvbihlLHQsbil7dmFyIHI9dC52YWx1ZTtuPXppKG4pO3ZhciBvPW4uZGF0YSYmbi5kYXRhLnRyYW5zaXRpb24saT1lLl9fdk9yaWdpbmFsRGlzcGxheT0ibm9uZSI9PT1lLnN0eWxlLmRpc3BsYXk/IiI6ZS5zdHlsZS5kaXNwbGF5O3ImJm8/KG4uZGF0YS5zaG93PSEwLFBpKG4sZnVuY3Rpb24oKXtlLnN0eWxlLmRpc3BsYXk9aX0pKTplLnN0eWxlLmRpc3BsYXk9cj9pOiJub25lIn0sdXBkYXRlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj10LnZhbHVlLG89dC5vbGRWYWx1ZTtpZighciE9PSFvKXtuPXppKG4pO3ZhciBpPW4uZGF0YSYmbi5kYXRhLnRyYW5zaXRpb247aT8obi5kYXRhLnNob3c9ITAscj9QaShuLGZ1bmN0aW9uKCl7ZS5zdHlsZS5kaXNwbGF5PWUuX192T3JpZ2luYWxEaXNwbGF5fSk6QWkobixmdW5jdGlvbigpe2Uuc3R5bGUuZGlzcGxheT0ibm9uZSJ9KSk6ZS5zdHlsZS5kaXNwbGF5PXI/ZS5fX3ZPcmlnaW5hbERpc3BsYXk6Im5vbmUifX0sdW5iaW5kOmZ1bmN0aW9uKGUsdCxuLHIsbyl7b3x8KGUuc3R5bGUuZGlzcGxheT1lLl9fdk9yaWdpbmFsRGlzcGxheSl9fSxHaT17bW9kZWw6SWksc2hvdzpCaX0sV2k9e25hbWU6U3RyaW5nLGFwcGVhcjpCb29sZWFuLGNzczpCb29sZWFuLG1vZGU6U3RyaW5nLHR5cGU6U3RyaW5nLGVudGVyQ2xhc3M6U3RyaW5nLGxlYXZlQ2xhc3M6U3RyaW5nLGVudGVyVG9DbGFzczpTdHJpbmcsbGVhdmVUb0NsYXNzOlN0cmluZyxlbnRlckFjdGl2ZUNsYXNzOlN0cmluZyxsZWF2ZUFjdGl2ZUNsYXNzOlN0cmluZyxhcHBlYXJDbGFzczpTdHJpbmcsYXBwZWFyQWN0aXZlQ2xhc3M6U3RyaW5nLGFwcGVhclRvQ2xhc3M6U3RyaW5nLGR1cmF0aW9uOltOdW1iZXIsU3RyaW5nLE9iamVjdF19O2Z1bmN0aW9uIEtpKGUpe3ZhciB0PWUmJmUuY29tcG9uZW50T3B0aW9ucztyZXR1cm4gdCYmdC5DdG9yLm9wdGlvbnMuYWJzdHJhY3Q/S2koJHQodC5jaGlsZHJlbikpOmV9ZnVuY3Rpb24gcWkoZSl7dmFyIHQ9e30sbj1lLiRvcHRpb25zO2Zvcih2YXIgciBpbiBuLnByb3BzRGF0YSl0W3JdPWVbcl07dmFyIG89bi5fcGFyZW50TGlzdGVuZXJzO2Zvcih2YXIgaSBpbiBvKXRbeChpKV09b1tpXTtyZXR1cm4gdH1mdW5jdGlvbiBYaShlLHQpe2lmKC9cZC1rZWVwLWFsaXZlJC8udGVzdCh0LnRhZykpcmV0dXJuIGUoImtlZXAtYWxpdmUiLHtwcm9wczp0LmNvbXBvbmVudE9wdGlvbnMucHJvcHNEYXRhfSl9ZnVuY3Rpb24gSmkoZSl7d2hpbGUoZT1lLnBhcmVudClpZihlLmRhdGEudHJhbnNpdGlvbilyZXR1cm4hMH1mdW5jdGlvbiBZaShlLHQpe3JldHVybiB0LmtleT09PWUua2V5JiZ0LnRhZz09PWUudGFnfXZhciBaaT1mdW5jdGlvbihlKXtyZXR1cm4gZS50YWd8fE90KGUpfSxRaT1mdW5jdGlvbihlKXtyZXR1cm4ic2hvdyI9PT1lLm5hbWV9LGVhPXtuYW1lOiJ0cmFuc2l0aW9uIixwcm9wczpXaSxhYnN0cmFjdDohMCxyZW5kZXI6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcyxuPXRoaXMuJHNsb3RzLmRlZmF1bHQ7aWYobiYmKG49bi5maWx0ZXIoWmkpLG4ubGVuZ3RoKSl7MDt2YXIgcj10aGlzLm1vZGU7MDt2YXIgbz1uWzBdO2lmKEppKHRoaXMuJHZub2RlKSlyZXR1cm4gbzt2YXIgaT1LaShvKTtpZighaSlyZXR1cm4gbztpZih0aGlzLl9sZWF2aW5nKXJldHVybiBYaShlLG8pO3ZhciBhPSJfX3RyYW5zaXRpb24tIit0aGlzLl91aWQrIi0iO2kua2V5PW51bGw9PWkua2V5P2kuaXNDb21tZW50P2ErImNvbW1lbnQiOmEraS50YWc6YyhpLmtleSk/MD09PVN0cmluZyhpLmtleSkuaW5kZXhPZihhKT9pLmtleTphK2kua2V5Omkua2V5O3ZhciBzPShpLmRhdGF8fChpLmRhdGE9e30pKS50cmFuc2l0aW9uPXFpKHRoaXMpLHU9dGhpcy5fdm5vZGUsbD1LaSh1KTtpZihpLmRhdGEuZGlyZWN0aXZlcyYmaS5kYXRhLmRpcmVjdGl2ZXMuc29tZShRaSkmJihpLmRhdGEuc2hvdz0hMCksbCYmbC5kYXRhJiYhWWkoaSxsKSYmIU90KGwpJiYoIWwuY29tcG9uZW50SW5zdGFuY2V8fCFsLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZS5pc0NvbW1lbnQpKXt2YXIgcD1sLmRhdGEudHJhbnNpdGlvbj1UKHt9LHMpO2lmKCJvdXQtaW4iPT09cilyZXR1cm4gdGhpcy5fbGVhdmluZz0hMCx5dChwLCJhZnRlckxlYXZlIixmdW5jdGlvbigpe3QuX2xlYXZpbmc9ITEsdC4kZm9yY2VVcGRhdGUoKX0pLFhpKGUsbyk7aWYoImluLW91dCI9PT1yKXtpZihPdChpKSlyZXR1cm4gdTt2YXIgZixkPWZ1bmN0aW9uKCl7ZigpfTt5dChzLCJhZnRlckVudGVyIixkKSx5dChzLCJlbnRlckNhbmNlbGxlZCIsZCkseXQocCwiZGVsYXlMZWF2ZSIsZnVuY3Rpb24oZSl7Zj1lfSl9fXJldHVybiBvfX19LHRhPVQoe3RhZzpTdHJpbmcsbW92ZUNsYXNzOlN0cmluZ30sV2kpO2RlbGV0ZSB0YS5tb2RlO3ZhciBuYT17cHJvcHM6dGEsYmVmb3JlTW91bnQ6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9dGhpcy5fdXBkYXRlO3RoaXMuX3VwZGF0ZT1mdW5jdGlvbihuLHIpe3ZhciBvPVZ0KGUpO2UuX19wYXRjaF9fKGUuX3Zub2RlLGUua2VwdCwhMSwhMCksZS5fdm5vZGU9ZS5rZXB0LG8oKSx0LmNhbGwoZSxuLHIpfX0scmVuZGVyOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD10aGlzLnRhZ3x8dGhpcy4kdm5vZGUuZGF0YS50YWd8fCJzcGFuIixuPU9iamVjdC5jcmVhdGUobnVsbCkscj10aGlzLnByZXZDaGlsZHJlbj10aGlzLmNoaWxkcmVuLG89dGhpcy4kc2xvdHMuZGVmYXVsdHx8W10saT10aGlzLmNoaWxkcmVuPVtdLGE9cWkodGhpcyksYz0wO2M8by5sZW5ndGg7YysrKXt2YXIgcz1vW2NdO2lmKHMudGFnKWlmKG51bGwhPXMua2V5JiYwIT09U3RyaW5nKHMua2V5KS5pbmRleE9mKCJfX3ZsaXN0IikpaS5wdXNoKHMpLG5bcy5rZXldPXMsKHMuZGF0YXx8KHMuZGF0YT17fSkpLnRyYW5zaXRpb249YTtlbHNlO31pZihyKXtmb3IodmFyIHU9W10sbD1bXSxwPTA7cDxyLmxlbmd0aDtwKyspe3ZhciBmPXJbcF07Zi5kYXRhLnRyYW5zaXRpb249YSxmLmRhdGEucG9zPWYuZWxtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLG5bZi5rZXldP3UucHVzaChmKTpsLnB1c2goZil9dGhpcy5rZXB0PWUodCxudWxsLHUpLHRoaXMucmVtb3ZlZD1sfXJldHVybiBlKHQsbnVsbCxpKX0sdXBkYXRlZDpmdW5jdGlvbigpe3ZhciBlPXRoaXMucHJldkNoaWxkcmVuLHQ9dGhpcy5tb3ZlQ2xhc3N8fCh0aGlzLm5hbWV8fCJ2IikrIi1tb3ZlIjtlLmxlbmd0aCYmdGhpcy5oYXNNb3ZlKGVbMF0uZWxtLHQpJiYoZS5mb3JFYWNoKHJhKSxlLmZvckVhY2gob2EpLGUuZm9yRWFjaChpYSksdGhpcy5fcmVmbG93PWRvY3VtZW50LmJvZHkub2Zmc2V0SGVpZ2h0LGUuZm9yRWFjaChmdW5jdGlvbihlKXtpZihlLmRhdGEubW92ZWQpe3ZhciBuPWUuZWxtLHI9bi5zdHlsZTtnaShuLHQpLHIudHJhbnNmb3JtPXIuV2Via2l0VHJhbnNmb3JtPXIudHJhbnNpdGlvbkR1cmF0aW9uPSIiLG4uYWRkRXZlbnRMaXN0ZW5lcihoaSxuLl9tb3ZlQ2I9ZnVuY3Rpb24gZShyKXtyJiZyLnRhcmdldCE9PW58fHImJiEvdHJhbnNmb3JtJC8udGVzdChyLnByb3BlcnR5TmFtZSl8fChuLnJlbW92ZUV2ZW50TGlzdGVuZXIoaGksZSksbi5fbW92ZUNiPW51bGwsYmkobix0KSl9KX19KSl9LG1ldGhvZHM6e2hhc01vdmU6ZnVuY3Rpb24oZSx0KXtpZighbGkpcmV0dXJuITE7aWYodGhpcy5faGFzTW92ZSlyZXR1cm4gdGhpcy5faGFzTW92ZTt2YXIgbj1lLmNsb25lTm9kZSgpO2UuX3RyYW5zaXRpb25DbGFzc2VzJiZlLl90cmFuc2l0aW9uQ2xhc3Nlcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe2NpKG4sZSl9KSxhaShuLHQpLG4uc3R5bGUuZGlzcGxheT0ibm9uZSIsdGhpcy4kZWwuYXBwZW5kQ2hpbGQobik7dmFyIHI9Q2kobik7cmV0dXJuIHRoaXMuJGVsLnJlbW92ZUNoaWxkKG4pLHRoaXMuX2hhc01vdmU9ci5oYXNUcmFuc2Zvcm19fX07ZnVuY3Rpb24gcmEoZSl7ZS5lbG0uX21vdmVDYiYmZS5lbG0uX21vdmVDYigpLGUuZWxtLl9lbnRlckNiJiZlLmVsbS5fZW50ZXJDYigpfWZ1bmN0aW9uIG9hKGUpe2UuZGF0YS5uZXdQb3M9ZS5lbG0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9ZnVuY3Rpb24gaWEoZSl7dmFyIHQ9ZS5kYXRhLnBvcyxuPWUuZGF0YS5uZXdQb3Mscj10LmxlZnQtbi5sZWZ0LG89dC50b3Atbi50b3A7aWYocnx8byl7ZS5kYXRhLm1vdmVkPSEwO3ZhciBpPWUuZWxtLnN0eWxlO2kudHJhbnNmb3JtPWkuV2Via2l0VHJhbnNmb3JtPSJ0cmFuc2xhdGUoIityKyJweCwiK28rInB4KSIsaS50cmFuc2l0aW9uRHVyYXRpb249IjBzIn19dmFyIGFhPXtUcmFuc2l0aW9uOmVhLFRyYW5zaXRpb25Hcm91cDpuYX07cHIuY29uZmlnLm11c3RVc2VQcm9wPU9yLHByLmNvbmZpZy5pc1Jlc2VydmVkVGFnPUdyLHByLmNvbmZpZy5pc1Jlc2VydmVkQXR0cj1Qcixwci5jb25maWcuZ2V0VGFnTmFtZXNwYWNlPVdyLHByLmNvbmZpZy5pc1Vua25vd25FbGVtZW50PXFyLFQocHIub3B0aW9ucy5kaXJlY3RpdmVzLEdpKSxUKHByLm9wdGlvbnMuY29tcG9uZW50cyxhYSkscHIucHJvdG90eXBlLl9fcGF0Y2hfXz1xP0RpOkUscHIucHJvdG90eXBlLiRtb3VudD1mdW5jdGlvbihlLHQpe3JldHVybiBlPWUmJnE/SnIoZSk6dm9pZCAwLHp0KHRoaXMsZSx0KX0scSYmc2V0VGltZW91dChmdW5jdGlvbigpe0guZGV2dG9vbHMmJmFlJiZhZS5lbWl0KCJpbml0Iixwcil9LDApLHRbImEiXT1wcn0pLmNhbGwodGhpcyxuKCJjOGJhIikpfSwiMmI0YyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjU1MzciKSgid2tzIiksbz1uKCJjYTVhIiksaT1uKCI3NzI2IikuU3ltYm9sLGE9ImZ1bmN0aW9uIj09dHlwZW9mIGksYz1lLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHJbZV18fChyW2VdPWEmJmlbZV18fChhP2k6bykoIlN5bWJvbC4iK2UpKX07Yy5zdG9yZT1yfSwiMmQwMCI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ITF9LCIyZDk1IjpmdW5jdGlvbihlLHQpe3ZhciBuPXt9LnRvU3RyaW5nO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbi5jYWxsKGUpLnNsaWNlKDgsLTEpfX0sIjJlYTEiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI2ZjhhIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7aWYoIXIoZSkpcmV0dXJuIGU7dmFyIG4sbztpZih0JiYiZnVuY3Rpb24iPT10eXBlb2Yobj1lLnRvU3RyaW5nKSYmIXIobz1uLmNhbGwoZSkpKXJldHVybiBvO2lmKCJmdW5jdGlvbiI9PXR5cGVvZihuPWUudmFsdWVPZikmJiFyKG89bi5jYWxsKGUpKSlyZXR1cm4gbztpZighdCYmImZ1bmN0aW9uIj09dHlwZW9mKG49ZS50b1N0cmluZykmJiFyKG89bi5jYWxsKGUpKSlyZXR1cm4gbzt0aHJvdyBUeXBlRXJyb3IoIkNhbid0IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2ZSB2YWx1ZSIpfX0sIjJmMTciOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxvPW4oIjRkZTgiKSxpPW4oIjIxZDAiKSxhPXsiW1tEZWZhdWx0VmFsdWVdXSI6ZnVuY3Rpb24oZSl7dmFyIHQ7aWYodD1hcmd1bWVudHMubGVuZ3RoPjE/YXJndW1lbnRzWzFdOiJbb2JqZWN0IERhdGVdIj09PXIuY2FsbChlKT9TdHJpbmc6TnVtYmVyLHQ9PT1TdHJpbmd8fHQ9PT1OdW1iZXIpe3ZhciBuLGEsYz10PT09U3RyaW5nP1sidG9TdHJpbmciLCJ2YWx1ZU9mIl06WyJ2YWx1ZU9mIiwidG9TdHJpbmciXTtmb3IoYT0wO2E8Yy5sZW5ndGg7KythKWlmKGkoZVtjW2FdXSkmJihuPWVbY1thXV0oKSxvKG4pKSlyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJObyBkZWZhdWx0IHZhbHVlIil9dGhyb3cgbmV3IFR5cGVFcnJvcigiaW52YWxpZCBbW0RlZmF1bHRWYWx1ZV1dIGhpbnQgc3VwcGxpZWQiKX19O2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbyhlKT9lOmFyZ3VtZW50cy5sZW5ndGg+MT9hWyJbW0RlZmF1bHRWYWx1ZV1dIl0oZSxhcmd1bWVudHNbMV0pOmFbIltbRGVmYXVsdFZhbHVlXV0iXShlKX19LCIzMDJmIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMGY4OSIpLG89bigiZjJmZSIpLGk9bigiMWI1NSIpKCJzcGVjaWVzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dmFyIG4sYT1yKGUpLmNvbnN0cnVjdG9yO3JldHVybiB2b2lkIDA9PT1hfHx2b2lkIDA9PShuPXIoYSlbaV0pP3Q6byhuKX19LCIzMWMyIjpmdW5jdGlvbihlLHQpe3QuZj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzfSwiMzFmNCI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXZvaWQgMD09PW47c3dpdGNoKHQubGVuZ3RoKXtjYXNlIDA6cmV0dXJuIHI/ZSgpOmUuY2FsbChuKTtjYXNlIDE6cmV0dXJuIHI/ZSh0WzBdKTplLmNhbGwobix0WzBdKTtjYXNlIDI6cmV0dXJuIHI/ZSh0WzBdLHRbMV0pOmUuY2FsbChuLHRbMF0sdFsxXSk7Y2FzZSAzOnJldHVybiByP2UodFswXSx0WzFdLHRbMl0pOmUuY2FsbChuLHRbMF0sdFsxXSx0WzJdKTtjYXNlIDQ6cmV0dXJuIHI/ZSh0WzBdLHRbMV0sdFsyXSx0WzNdKTplLmNhbGwobix0WzBdLHRbMV0sdFsyXSx0WzNdKX1yZXR1cm4gZS5hcHBseShuLHQpfX0sIjMyZTkiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI4NmNjIiksbz1uKCI0NjMwIik7ZS5leHBvcnRzPW4oIjllMWUiKT9mdW5jdGlvbihlLHQsbil7cmV0dXJuIHIuZihlLHQsbygxLG4pKX06ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBlW3RdPW4sZX19LCIzM2E0IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiODRmMiIpLG89bigiMmI0YyIpKCJpdGVyYXRvciIpLGk9QXJyYXkucHJvdG90eXBlO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwIT09ZSYmKHIuQXJyYXk9PT1lfHxpW29dPT09ZSl9fSwzNTA0OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz17Y29pbl9kZXRhaWxzOnttY2FwX3Jhbms6IuaAu+W4guWAvOaOkuWQjSIsbWNhcDoi5biC5YC8IiwiMjRoX3ZvbHVtZSI6IjI0IOWwj+aXtuS6pOaYk+mHjyIsIjI0aF9oaWdoX2xvdyI6IjI0SCBIaWdoL0xvdyJ9LGNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQ6e3Bvd2VyZWRfYnk6IueUsSV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH3mjqjliqgiLGNyeXB0b19wcmljZV9jb21wYXJpc29uOiLliqDlr4bku7fmoLzmr5TovoMiLGNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb246IuWKoOWvhuW4guWAvOavlOi+gyJ9LGNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldDp7cG93ZXJlZF9ieToi55SxJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfeaOqOWKqCJ9LGNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0OnsiMjRoX2hpZ2giOiIyNOWwj+aXtumrmCIsIjI0aF9sb3ciOiIyNOWwj+aXtuS9jiIsdmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiLnlLEle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR95o6o5YqoIn0sY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldDp7cG93ZXJlZF9ieToi55SxJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfeaOqOWKqCJ9LGNvaW5fbGlzdF93aWRnZXQ6e3Bvd2VyZWRfYnk6IueUsSV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH3mjqjliqgifSxiZWFtX3dpZGdldDp7cG93ZXJlZF9ieToi55SxJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfeaOqOWKqCJ9LGNvaW5fdGlja2VyX3dpZGdldDp7IjI0aF9oaWdoIjoiMjTlsI/ml7bpq5giLCIyNGhfbG93IjoiMjTlsI/ml7bkvY4iLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToi55SxJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfeaOqOWKqCJ9LGNvaW5fY29udmVydGVyX3dpZGdldDp7dmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiLnlLEle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR95o6o5YqoIn0sY29pbl9oZWF0bWFwX3dpZGdldDp7dGl0bGU6IuWKoOWvhui0p+W4geagkeWei+WbviIsc3VidGl0bGU6IihUb3AgJXt0b3B9IGJ5IE1hcmtldCBDYXApIixwb3dlcmVkX2J5OiLnlLEle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR95o6o5YqoIn0scmFuZG9tX2NvaW5fd2lkZ2V0OntkaXNjbGFpbWVyOiJEaXNjbGFpbWVyOiBUaGlzIHRvb2xzIHNlcnZlIGFzIGFuIGVudGVydGFpbm1lbnQgYW5kIGRvZXMgbm90IGNvbnN0aXR1dGUgZmluYW5jaWFsIGFkdmljZS4iLHNwaW46IlNwaW4ifSxjb2luX2RhaWx5X3ByaWNlX3dpZGdldDp7dGl0bGU6IkNvaW5HZWNrbyBQcmljZSBVcGRhdGUiLHRvdGFsX21jYXA6IlRvdGFsIE0gY2FwIiwiMjRoX3ZvbCI6IjI0IOWwj+aXtuS6pOaYk+mHjyIsZG9tOiJEb20ifSxjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQ6e2V4Y2hhbmdlOiLkuqTmmJPmiYAiLHBhaXI6IuWvuSIscHJpY2U6IuS7t+agvCIsdm9sdW1lOiLkuqTmmJPph48iLHRydXN0X3Njb3JlOiLkv6HnlKjor4TliIYiLHZpZXdfcHJpY2VfY2hhcnQ6Iua1j+iniOS7t+agvOi1sOWKv+WbviIscG93ZXJlZF9ieToi55SxJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfeaOqOWKqCIsdmlld19hbGw6IlZpZXcgYWxsICV7Y29pbn0gbWFya2V0cyJ9fX0sIjM2ZGMiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkYTNjIiksbz1uKCJkZjBhIikuc2V0LGk9ci5NdXRhdGlvbk9ic2VydmVyfHxyLldlYktpdE11dGF0aW9uT2JzZXJ2ZXIsYT1yLnByb2Nlc3MsYz1yLlByb21pc2Uscz0icHJvY2VzcyI9PW4oIjZlMWYiKShhKTtlLmV4cG9ydHM9ZnVuY3Rpb24oKXt2YXIgZSx0LG4sdT1mdW5jdGlvbigpe3ZhciByLG87cyYmKHI9YS5kb21haW4pJiZyLmV4aXQoKTt3aGlsZShlKXtvPWUuZm4sZT1lLm5leHQ7dHJ5e28oKX1jYXRjaChpKXt0aHJvdyBlP24oKTp0PXZvaWQgMCxpfX10PXZvaWQgMCxyJiZyLmVudGVyKCl9O2lmKHMpbj1mdW5jdGlvbigpe2EubmV4dFRpY2sodSl9O2Vsc2UgaWYoIWl8fHIubmF2aWdhdG9yJiZyLm5hdmlnYXRvci5zdGFuZGFsb25lKWlmKGMmJmMucmVzb2x2ZSl7dmFyIGw9Yy5yZXNvbHZlKHZvaWQgMCk7bj1mdW5jdGlvbigpe2wudGhlbih1KX19ZWxzZSBuPWZ1bmN0aW9uKCl7by5jYWxsKHIsdSl9O2Vsc2V7dmFyIHA9ITAsZj1kb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiIik7bmV3IGkodSkub2JzZXJ2ZShmLHtjaGFyYWN0ZXJEYXRhOiEwfSksbj1mdW5jdGlvbigpe2YuZGF0YT1wPSFwfX1yZXR1cm4gZnVuY3Rpb24ocil7dmFyIG89e2ZuOnIsbmV4dDp2b2lkIDB9O3QmJih0Lm5leHQ9byksZXx8KGU9byxuKCkpLHQ9b319fSwzODQ2OmZ1bmN0aW9uKGUsdCxuKXtuKCI5ZTFlIikmJiJnIiE9Ly4vZy5mbGFncyYmbigiODZjYyIpLmYoUmVnRXhwLnByb3RvdHlwZSwiZmxhZ3MiLHtjb25maWd1cmFibGU6ITAsZ2V0Om4oIjBiZmIiKX0pfSwiMzg0ZiI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQxM2YiKSxvPW4oIjExZmYiKTtyKHIuRytyLkYqKHBhcnNlRmxvYXQhPW8pLHtwYXJzZUZsb2F0Om99KX0sIjM4ZmQiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI2OWE4Iiksbz1uKCI0YmY4IiksaT1uKCI2MTNiIikoIklFX1BST1RPIiksYT1PYmplY3QucHJvdG90eXBlO2UuZXhwb3J0cz1PYmplY3QuZ2V0UHJvdG90eXBlT2Z8fGZ1bmN0aW9uKGUpe3JldHVybiBlPW8oZSkscihlLGkpP2VbaV06ImZ1bmN0aW9uIj09dHlwZW9mIGUuY29uc3RydWN0b3ImJmUgaW5zdGFuY2VvZiBlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IucHJvdG90eXBlOmUgaW5zdGFuY2VvZiBPYmplY3Q/YTpudWxsfX0sMzkwNDpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiOGNlMCIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7Zm9yKHZhciBvIGluIHQpbiYmZVtvXT9lW29dPXRbb106cihlLG8sdFtvXSk7cmV0dXJuIGV9fSwiMzlmOCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLnIodCk7bigiNmI1NCIpLG4oImNhZGYiKSxuKCI1NTFjIiksbigiMDk3ZCIpO3ZhciByPW4oIjJiMGUiKSxvPW4oImM4OTQiKSxpPW4oIjUzMDkiKSxhPW4oImFmMTQiKSxjPW4oImM2NDkiKSxzPW4oImU3YWYiKSx1PW4oImQxNWYiKSxsPW4ubih1KTtyWyJhIl0udXNlKG9bImEiXSk7dmFyIHA9ZnVuY3Rpb24oKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e3NoYWRvdzohMX07clsiYSJdLmN1c3RvbUVsZW1lbnQoImNvaW5nZWNrby1jb2luLWxpc3Qtd2lkZ2V0IixzWyJhIl0se3NoYWRvdzplLnNoYWRvdyxzaGFkb3dDc3M6bC5hLnRvU3RyaW5nKCksY29ubmVjdGVkQ2FsbGJhY2s6ZnVuY3Rpb24oKXtpZighZS5zaGFkb3cpe3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7dC5pbm5lckhUTUw9bC5hLnRvU3RyaW5nKCksZG9jdW1lbnQuaGVhZC5hcHBlbmQodCl9fX0pfTtPYmplY3QoYVsiYSJdKSgpP3Aoe3NoYWRvdzohMH0pOk9iamVjdChjWyJjIl0pKFtpWyJhIl0uY3VzdG9tRWxlbWVudCxpWyJhIl0uZmV0Y2gsaVsiYSJdLmNzc3Zhcl0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gcCh7c2hhZG93OiExfSl9KX0sIjNhZGMiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIwZjg5Iiksbz1uKCJhNDdmIiksaT1uKCIyZWExIiksYT1PYmplY3QuZGVmaW5lUHJvcGVydHk7dC5mPW4oIjdkOTUiKT9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24oZSx0LG4pe2lmKHIoZSksdD1pKHQsITApLHIobiksbyl0cnl7cmV0dXJuIGEoZSx0LG4pfWNhdGNoKGMpe31pZigiZ2V0ImluIG58fCJzZXQiaW4gbil0aHJvdyBUeXBlRXJyb3IoIkFjY2Vzc29ycyBub3Qgc3VwcG9ydGVkISIpO3JldHVybiJ2YWx1ZSJpbiBuJiYoZVt0XT1uLnZhbHVlKSxlfX0sIjQxYTAiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiMmFlYiIpLG89bigiNDYzMCIpLGk9bigiN2YyMCIpLGE9e307bigiMzJlOSIpKGEsbigiMmI0YyIpKCJpdGVyYXRvciIpLGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSxlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe2UucHJvdG90eXBlPXIoYSx7bmV4dDpvKDEsbil9KSxpKGUsdCsiIEl0ZXJhdG9yIil9fSwiNDM2YyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjFiNTUiKSgiaXRlcmF0b3IiKSxvPSExO3RyeXt2YXIgaT1bN11bcl0oKTtpWyJyZXR1cm4iXT1mdW5jdGlvbigpe289ITB9LEFycmF5LmZyb20oaSxmdW5jdGlvbigpe3Rocm93IDJ9KX1jYXRjaChhKXt9ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7aWYoIXQmJiFvKXJldHVybiExO3ZhciBuPSExO3RyeXt2YXIgaT1bN10sYz1pW3JdKCk7Yy5uZXh0PWZ1bmN0aW9uKCl7cmV0dXJue2RvbmU6bj0hMH19LGlbcl09ZnVuY3Rpb24oKXtyZXR1cm4gY30sZShpKX1jYXRjaChhKXt9cmV0dXJuIG59fSwiNDNjOCI6ZnVuY3Rpb24oZSx0KXt2YXIgbj17fS5oYXNPd25Qcm9wZXJ0eTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbi5jYWxsKGUsdCl9fSw0NTg4OmZ1bmN0aW9uKGUsdCl7dmFyIG49TWF0aC5jZWlsLHI9TWF0aC5mbG9vcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGlzTmFOKGU9K2UpPzA6KGU+MD9yOm4pKGUpfX0sNDYzMDpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybntlbnVtZXJhYmxlOiEoMSZlKSxjb25maWd1cmFibGU6ISgyJmUpLHdyaXRhYmxlOiEoNCZlKSx2YWx1ZTp0fX19LCI0YTU5IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiOWI0MyIpLG89bigiMWZhOCIpLGk9bigiMzNhNCIpLGE9bigiY2I3YyIpLGM9bigiOWRlZiIpLHM9bigiMjdlZSIpLHU9e30sbD17fTt0PWUuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixwLGYpe3ZhciBkLGgsXyxtLHY9Zj9mdW5jdGlvbigpe3JldHVybiBlfTpzKGUpLHk9cihuLHAsdD8yOjEpLGc9MDtpZigiZnVuY3Rpb24iIT10eXBlb2Ygdil0aHJvdyBUeXBlRXJyb3IoZSsiIGlzIG5vdCBpdGVyYWJsZSEiKTtpZihpKHYpKXtmb3IoZD1jKGUubGVuZ3RoKTtkPmc7ZysrKWlmKG09dD95KGEoaD1lW2ddKVswXSxoWzFdKTp5KGVbZ10pLG09PT11fHxtPT09bClyZXR1cm4gbX1lbHNlIGZvcihfPXYuY2FsbChlKTshKGg9Xy5uZXh0KCkpLmRvbmU7KWlmKG09byhfLHksaC52YWx1ZSx0KSxtPT09dXx8bT09PWwpcmV0dXJuIG19O3QuQlJFQUs9dSx0LlJFVFVSTj1sfSwiNGJmOCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImJlMTMiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdChyKGUpKX19LCI0ZGU4IjpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09PWV8fCJmdW5jdGlvbiIhPT10eXBlb2YgZSYmIm9iamVjdCIhPT10eXBlb2YgZX19LDUxNzY6ZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKCI4MWVlIil9LCI1MWUzIjpmdW5jdGlvbihlLHQsbil7dD1lLmV4cG9ydHM9bigiMjM1MCIpKCExKSx0LnB1c2goW2UuaSwiLmNnLWRlZmF1bHQge1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBzZWdvZSB1aSwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZixcbiAgICBhcHBsZSBjb2xvciBlbW9qaSwgc2Vnb2UgdWkgZW1vamksIHNlZ29lIHVpIHN5bWJvbDtcbn1cbi5jZy1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi5jZy1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY2ctcHJpbWFyeS1jb2xvciB7XG4gIGNvbG9yOiAjOGRjNjQ3ICFpbXBvcnRhbnQ7XG59XG4uY2ctcHJpbWFyeS1jb2xvci1kYXJrIHtcbiAgY29sb3I6ICM0Yjg4MDAgIWltcG9ydGFudDtcbn1cbi5jZy1yZWQtY29sb3ItZGFyayB7XG4gIGNvbG9yOiAjYzIyMjBkICFpbXBvcnRhbnQ7XG59XG4uY2ctcmVkLWNvbG9yIHtcbiAgY29sb3I6ICNmZjYxNGQgIWltcG9ydGFudDtcbn1cbi5jZy0yeHMge1xuICBmb250LXNpemU6IDguOHB4OyAvKiAwLjU1cmVtOyAqL1xufVxuLmNnLXhzIHtcbiAgZm9udC1zaXplOiAxMC40cHg7IC8qIDAuNjVyZW0gKi9cbn1cbi5jZy1zbSB7XG4gIGZvbnQtc2l6ZTogMTIuOHB4OyAvKiAwLjhyZW0gKi9cbn1cbi5jZy1ub3JtYWwge1xuICBmb250LXNpemU6IDEzLjZweDsgLyogMC44NXJlbSAqL1xufVxuLmNnLWJhc2Uge1xuICBmb250LXNpemU6IDE2cHg7IC8qIDE2cHggKi9cbn1cbi5jZy1tZWRpdW0ge1xuICBmb250LXNpemU6IDE5LjJweDsgLyogMS4ycmVtICovXG59XG4uY2ctbGcge1xuICBmb250LXNpemU6IDI0cHg7IC8qIDEuNXJlbSAqL1xufVxuLmNnLXhsIHtcbiAgZm9udC1zaXplOiAzMC40cHg7IC8qIDEuOXJlbSAqL1xufVxuLmNnLWNhcCB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuLmNnLW5vLXVuZGVybGluZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jZy1ub3dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uY2ctbS0wIHtcbiAgbWFyZ2luOiAwO1xufVxuLmNnLW0tMSB7XG4gIG1hcmdpbjogNHB4O1xufVxuLmNnLW0tMiB7XG4gIG1hcmdpbjogOHB4O1xufVxuLmNnLW10LTEge1xuICBtYXJnaW4tdG9wOiA0cHg7XG59XG4uY2ctbWItMSB7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cbi5jZy1tbC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbn1cbi5jZy1tci0xIHtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG59XG4uY2ctbXQtMiB7XG4gIG1hcmdpbi10b3A6IDhweDtcbn1cbi5jZy1tbC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbn1cbi5jZy1tci0yIHtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG4uY2ctbWItMiB7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbn1cbi5jZy1teC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG59XG4uY2ctbXktMSB7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xufVxuLmNnLW14LTIge1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cbi5jZy1teS0yIHtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG4uY2ctbXktNSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5jZy1wLTEge1xuICBwYWRkaW5nOiA0cHg7XG59XG4uY2ctcC0yIHtcbiAgcGFkZGluZzogOHB4O1xufVxuLmNnLXAtMyB7XG4gIHBhZGRpbmc6IDEycHg7XG59XG4uY2ctcC00IHtcbiAgcGFkZGluZzogMTZweDtcbn1cbi5jZy1wdC0xIHtcbiAgcGFkZGluZy10b3A6IDRweDtcbn1cbi5jZy1wYi0xIHtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbn1cbi5jZy1wdC0yIHtcbiAgcGFkZGluZy10b3A6IDhweDtcbn1cbi5jZy1wYi0yIHtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbn1cbi5jZy1wdC0zIHtcbiAgcGFkZGluZy10b3A6IDEycHg7XG59XG4uY2ctcGItMyB7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xufVxuLmNnLXB5LTEge1xuICBwYWRkaW5nLXRvcDogNHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNHB4O1xufVxuLmNnLXB4LTEge1xuICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgcGFkZGluZy1yaWdodDogNHB4O1xufVxuLmNnLXB5LTIge1xuICBwYWRkaW5nLXRvcDogOHB4O1xuICBwYWRkaW5nLWJvdHRvbTogOHB4O1xufVxuLmNnLXB4LTIge1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xufVxuLmNnLXB5LTMge1xuICBwYWRkaW5nLXRvcDogMTJweDtcbiAgcGFkZGluZy1ib3R0b206IDEycHg7XG59XG4uY2ctcHgtMyB7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgcGFkZGluZy1yaWdodDogMTJweDtcbn1cbi5jZy1weC00IHtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xufVxuLmNnLXB5LTQge1xuICBwYWRkaW5nLXRvcDogMTZweDtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7XG59XG4uY2ctcHktNSB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbn1cbi5jZy1wci0xIHtcbiAgcGFkZGluZy1yaWdodDogNHB4O1xufVxuLmNnLXByLTIge1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG59XG5cbi5jZy1mbGV4IHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xufVxuLmNnLWZsZXgtcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cbi5jZy1mbGV4LWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5jZy1pdGVtcy1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RyZXRjaDtcbn1cbi5jZy1pdGVtcy1zdGFydCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLmNnLWl0ZW1zLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uY2ctaXRlbXMtZW5kIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuLmNnLWl0ZW1zLWJhc2VsaW5lIHtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xufVxuXG4uY2ctanVzdGlmeS1zdGFydCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5jZy1qdXN0aWZ5LWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmNnLWp1c3RpZnktZW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5jZy1qdXN0aWZ5LWJldHdlZW4ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4uY2ctanVzdGlmeS1hcm91bmQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuLmNnLXNlbGYtYXV0byB7XG4gIGFsaWduLXNlbGY6IGF1dG87XG59XG4uY2ctc2VsZi1zdGFydCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG59XG4uY2ctc2VsZi1jZW50ZXIge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG4uY2ctc2VsZi1lbmQge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbn1cbi5jZy1zZWxmLXN0cmV0Y2gge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuXG4uY2ctcmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uY2ctYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uY2ctYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIiJdKX0sIjUyMGEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiMGJmYiIpLG89UmVnRXhwLnByb3RvdHlwZS5leGVjLGk9U3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLGE9byxjPSJsYXN0SW5kZXgiLHM9ZnVuY3Rpb24oKXt2YXIgZT0vYS8sdD0vYiovZztyZXR1cm4gby5jYWxsKGUsImEiKSxvLmNhbGwodCwiYSIpLDAhPT1lW2NdfHwwIT09dFtjXX0oKSx1PXZvaWQgMCE9PS8oKT8/Ly5leGVjKCIiKVsxXSxsPXN8fHU7bCYmKGE9ZnVuY3Rpb24oZSl7dmFyIHQsbixhLGwscD10aGlzO3JldHVybiB1JiYobj1uZXcgUmVnRXhwKCJeIitwLnNvdXJjZSsiJCg/IVxccykiLHIuY2FsbChwKSkpLHMmJih0PXBbY10pLGE9by5jYWxsKHAsZSkscyYmYSYmKHBbY109cC5nbG9iYWw/YS5pbmRleCthWzBdLmxlbmd0aDp0KSx1JiZhJiZhLmxlbmd0aD4xJiZpLmNhbGwoYVswXSxuLGZ1bmN0aW9uKCl7Zm9yKGw9MTtsPGFyZ3VtZW50cy5sZW5ndGgtMjtsKyspdm9pZCAwPT09YXJndW1lbnRzW2xdJiYoYVtsXT12b2lkIDApfSksYX0pLGUuZXhwb3J0cz1hfSwiNTJhNyI6ZnVuY3Rpb24oZSx0KXt0LmY9e30ucHJvcGVydHlJc0VudW1lcmFibGV9LDUzMDk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsZnVuY3Rpb24oKXtyZXR1cm4gcn0pO3ZhciByPXtjdXN0b21FbGVtZW50OntzcmM6Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2RvY3VtZW50LXJlZ2lzdGVyLWVsZW1lbnQvMS4xMS4xL2RvY3VtZW50LXJlZ2lzdGVyLWVsZW1lbnQuanMiLGludGVncml0eToic2hhMzg0LXpBNlY0Y2hZRkdnc2V6aDF5QVF6dXMyVk5VY3lUeUdJM05PN0w1cEVpRThBT1h2M0VDK09TMkMvLzcyVlU2TWcifSxmZXRjaDp7c3JjOiJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9mZXRjaC8yLjAuNC9mZXRjaC5taW4uanMiLGludGVncml0eToic2hhMzg0LTJra3Vxd1NDRnplMXk3VWNBZWpVSDZ3dDJNcFE0bmFhKyt6V1AwU3h5VUMvam53cTkxU0FmZTE0UkFydVh0blYifSxjc3N2YXI6e3NyYzoiaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9jc3MtdmFycy1wb255ZmlsbEAxLjE2LjIiLGludGVncml0eToic2hhMzg0LTRzVlZzdEdBWDVFRUhRenhzZmYwNUNlZFk0NlVWalhPTWNVNWVsdTk0dnp0RzViTzJWU0FxNjlEMVpQR1BMNUUifX19LCI1NTFjIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByLG8saSxhLGM9bigiMmQwMCIpLHM9bigiNzcyNiIpLHU9bigiOWI0MyIpLGw9bigiMjNjNiIpLHA9bigiNWNhMSIpLGY9bigiZDNmNCIpLGQ9bigiZDhlOCIpLGg9bigiZjYwNSIpLF89bigiNGE1OSIpLG09bigiZWJkNiIpLHY9bigiMTk5MSIpLnNldCx5PW4oIjgwNzkiKSgpLGc9bigiYTViOCIpLGI9bigiOWM4MCIpLHc9bigiYTI1ZiIpLHg9bigiYmNhYSIpLEM9IlByb21pc2UiLGs9cy5UeXBlRXJyb3IsUz1zLnByb2Nlc3MsUD1TJiZTLnZlcnNpb25zLEE9UCYmUC52OHx8IiIsTz1zW0NdLCQ9InByb2Nlc3MiPT1sKFMpLFQ9ZnVuY3Rpb24oKXt9LGo9bz1nLmYsRT0hIWZ1bmN0aW9uKCl7dHJ5e3ZhciBlPU8ucmVzb2x2ZSgxKSx0PShlLmNvbnN0cnVjdG9yPXt9KVtuKCIyYjRjIikoInNwZWNpZXMiKV09ZnVuY3Rpb24oZSl7ZShULFQpfTtyZXR1cm4oJHx8ImZ1bmN0aW9uIj09dHlwZW9mIFByb21pc2VSZWplY3Rpb25FdmVudCkmJmUudGhlbihUKWluc3RhbmNlb2YgdCYmMCE9PUEuaW5kZXhPZigiNi42IikmJi0xPT09dy5pbmRleE9mKCJDaHJvbWUvNjYiKX1jYXRjaChyKXt9fSgpLE09ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuISghZihlKXx8ImZ1bmN0aW9uIiE9dHlwZW9mKHQ9ZS50aGVuKSkmJnR9LEQ9ZnVuY3Rpb24oZSx0KXtpZighZS5fbil7ZS5fbj0hMDt2YXIgbj1lLl9jO3koZnVuY3Rpb24oKXt2YXIgcj1lLl92LG89MT09ZS5fcyxpPTAsYT1mdW5jdGlvbih0KXt2YXIgbixpLGEsYz1vP3Qub2s6dC5mYWlsLHM9dC5yZXNvbHZlLHU9dC5yZWplY3QsbD10LmRvbWFpbjt0cnl7Yz8ob3x8KDI9PWUuX2gmJkYoZSksZS5faD0xKSwhMD09PWM/bj1yOihsJiZsLmVudGVyKCksbj1jKHIpLGwmJihsLmV4aXQoKSxhPSEwKSksbj09PXQucHJvbWlzZT91KGsoIlByb21pc2UtY2hhaW4gY3ljbGUiKSk6KGk9TShuKSk/aS5jYWxsKG4scyx1KTpzKG4pKTp1KHIpfWNhdGNoKHApe2wmJiFhJiZsLmV4aXQoKSx1KHApfX07d2hpbGUobi5sZW5ndGg+aSlhKG5baSsrXSk7ZS5fYz1bXSxlLl9uPSExLHQmJiFlLl9oJiZJKGUpfSl9fSxJPWZ1bmN0aW9uKGUpe3YuY2FsbChzLGZ1bmN0aW9uKCl7dmFyIHQsbixyLG89ZS5fdixpPUwoZSk7aWYoaSYmKHQ9YihmdW5jdGlvbigpeyQ/Uy5lbWl0KCJ1bmhhbmRsZWRSZWplY3Rpb24iLG8sZSk6KG49cy5vbnVuaGFuZGxlZHJlamVjdGlvbik/bih7cHJvbWlzZTplLHJlYXNvbjpvfSk6KHI9cy5jb25zb2xlKSYmci5lcnJvciYmci5lcnJvcigiVW5oYW5kbGVkIHByb21pc2UgcmVqZWN0aW9uIixvKX0pLGUuX2g9JHx8TChlKT8yOjEpLGUuX2E9dm9pZCAwLGkmJnQuZSl0aHJvdyB0LnZ9KX0sTD1mdW5jdGlvbihlKXtyZXR1cm4gMSE9PWUuX2gmJjA9PT0oZS5fYXx8ZS5fYykubGVuZ3RofSxGPWZ1bmN0aW9uKGUpe3YuY2FsbChzLGZ1bmN0aW9uKCl7dmFyIHQ7JD9TLmVtaXQoInJlamVjdGlvbkhhbmRsZWQiLGUpOih0PXMub25yZWplY3Rpb25oYW5kbGVkKSYmdCh7cHJvbWlzZTplLHJlYXNvbjplLl92fSl9KX0sTj1mdW5jdGlvbihlKXt2YXIgdD10aGlzO3QuX2R8fCh0Ll9kPSEwLHQ9dC5fd3x8dCx0Ll92PWUsdC5fcz0yLHQuX2F8fCh0Ll9hPXQuX2Muc2xpY2UoKSksRCh0LCEwKSl9LFI9ZnVuY3Rpb24oZSl7dmFyIHQsbj10aGlzO2lmKCFuLl9kKXtuLl9kPSEwLG49bi5fd3x8bjt0cnl7aWYobj09PWUpdGhyb3cgaygiUHJvbWlzZSBjYW4ndCBiZSByZXNvbHZlZCBpdHNlbGYiKTsodD1NKGUpKT95KGZ1bmN0aW9uKCl7dmFyIHI9e193Om4sX2Q6ITF9O3RyeXt0LmNhbGwoZSx1KFIsciwxKSx1KE4sciwxKSl9Y2F0Y2gobyl7Ti5jYWxsKHIsbyl9fSk6KG4uX3Y9ZSxuLl9zPTEsRChuLCExKSl9Y2F0Y2gocil7Ti5jYWxsKHtfdzpuLF9kOiExfSxyKX19fTtFfHwoTz1mdW5jdGlvbihlKXtoKHRoaXMsTyxDLCJfaCIpLGQoZSksci5jYWxsKHRoaXMpO3RyeXtlKHUoUix0aGlzLDEpLHUoTix0aGlzLDEpKX1jYXRjaCh0KXtOLmNhbGwodGhpcyx0KX19LHI9ZnVuY3Rpb24oZSl7dGhpcy5fYz1bXSx0aGlzLl9hPXZvaWQgMCx0aGlzLl9zPTAsdGhpcy5fZD0hMSx0aGlzLl92PXZvaWQgMCx0aGlzLl9oPTAsdGhpcy5fbj0hMX0sci5wcm90b3R5cGU9bigiZGNiYyIpKE8ucHJvdG90eXBlLHt0aGVuOmZ1bmN0aW9uKGUsdCl7dmFyIG49aihtKHRoaXMsTykpO3JldHVybiBuLm9rPSJmdW5jdGlvbiIhPXR5cGVvZiBlfHxlLG4uZmFpbD0iZnVuY3Rpb24iPT10eXBlb2YgdCYmdCxuLmRvbWFpbj0kP1MuZG9tYWluOnZvaWQgMCx0aGlzLl9jLnB1c2gobiksdGhpcy5fYSYmdGhpcy5fYS5wdXNoKG4pLHRoaXMuX3MmJkQodGhpcywhMSksbi5wcm9taXNlfSxjYXRjaDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy50aGVuKHZvaWQgMCxlKX19KSxpPWZ1bmN0aW9uKCl7dmFyIGU9bmV3IHI7dGhpcy5wcm9taXNlPWUsdGhpcy5yZXNvbHZlPXUoUixlLDEpLHRoaXMucmVqZWN0PXUoTixlLDEpfSxnLmY9aj1mdW5jdGlvbihlKXtyZXR1cm4gZT09PU98fGU9PT1hP25ldyBpKGUpOm8oZSl9KSxwKHAuRytwLlcrcC5GKiFFLHtQcm9taXNlOk99KSxuKCI3ZjIwIikoTyxDKSxuKCI3YTU2IikoQyksYT1uKCI4Mzc4IilbQ10scChwLlMrcC5GKiFFLEMse3JlamVjdDpmdW5jdGlvbihlKXt2YXIgdD1qKHRoaXMpLG49dC5yZWplY3Q7cmV0dXJuIG4oZSksdC5wcm9taXNlfX0pLHAocC5TK3AuRiooY3x8IUUpLEMse3Jlc29sdmU6ZnVuY3Rpb24oZSl7cmV0dXJuIHgoYyYmdGhpcz09PWE/Tzp0aGlzLGUpfX0pLHAocC5TK3AuRiohKEUmJm4oIjVjYzUiKShmdW5jdGlvbihlKXtPLmFsbChlKVsiY2F0Y2giXShUKX0pKSxDLHthbGw6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcyxuPWoodCkscj1uLnJlc29sdmUsbz1uLnJlamVjdCxpPWIoZnVuY3Rpb24oKXt2YXIgbj1bXSxpPTAsYT0xO18oZSwhMSxmdW5jdGlvbihlKXt2YXIgYz1pKysscz0hMTtuLnB1c2godm9pZCAwKSxhKyssdC5yZXNvbHZlKGUpLnRoZW4oZnVuY3Rpb24oZSl7c3x8KHM9ITAsbltjXT1lLC0tYXx8cihuKSl9LG8pfSksLS1hfHxyKG4pfSk7cmV0dXJuIGkuZSYmbyhpLnYpLG4ucHJvbWlzZX0scmFjZTpmdW5jdGlvbihlKXt2YXIgdD10aGlzLG49aih0KSxyPW4ucmVqZWN0LG89YihmdW5jdGlvbigpe18oZSwhMSxmdW5jdGlvbihlKXt0LnJlc29sdmUoZSkudGhlbihuLnJlc29sdmUscil9KX0pO3JldHVybiBvLmUmJnIoby52KSxuLnByb21pc2V9fSl9LDU1Mzc6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjgzNzgiKSxvPW4oIjc3MjYiKSxpPSJfX2NvcmUtanNfc2hhcmVkX18iLGE9b1tpXXx8KG9baV09e30pOyhlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYVtlXXx8KGFbZV09dm9pZCAwIT09dD90Ont9KX0pKCJ2ZXJzaW9ucyIsW10pLnB1c2goe3ZlcnNpb246ci52ZXJzaW9uLG1vZGU6bigiMmQwMCIpPyJwdXJlIjoiZ2xvYmFsIixjb3B5cmlnaHQ6IsKpIDIwMTkgRGVuaXMgUHVzaGthcmV2ICh6bG9pcm9jay5ydSkifSl9LCI1NjBiIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiYmMyNSIpLG89bigiOWM5MyIpLGk9bigiYzIyNyIpLGE9bigiMGY4OSIpLGM9bigiYTVhYiIpLHM9bigiZjE1OSIpLHU9e30sbD17fTt0PWUuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixwLGYpe3ZhciBkLGgsXyxtLHY9Zj9mdW5jdGlvbigpe3JldHVybiBlfTpzKGUpLHk9cihuLHAsdD8yOjEpLGc9MDtpZigiZnVuY3Rpb24iIT10eXBlb2Ygdil0aHJvdyBUeXBlRXJyb3IoZSsiIGlzIG5vdCBpdGVyYWJsZSEiKTtpZihpKHYpKXtmb3IoZD1jKGUubGVuZ3RoKTtkPmc7ZysrKWlmKG09dD95KGEoaD1lW2ddKVswXSxoWzFdKTp5KGVbZ10pLG09PT11fHxtPT09bClyZXR1cm4gbX1lbHNlIGZvcihfPXYuY2FsbChlKTshKGg9Xy5uZXh0KCkpLmRvbmU7KWlmKG09byhfLHksaC52YWx1ZSx0KSxtPT09dXx8bT09PWwpcmV0dXJuIG19O3QuQlJFQUs9dSx0LlJFVFVSTj1sfSwiNTYyZSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCIwZjdjIiksbz1uKCIwZjAxIiksaT1yLmNhbGwoRnVuY3Rpb24uY2FsbCxTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UpLGE9L15bXHgwOVx4MEFceDBCXHgwQ1x4MERceDIwXHhBMFx1MTY4MFx1MTgwRVx1MjAwMFx1MjAwMVx1MjAwMlx1MjAwM1x1MjAwNFx1MjAwNVx1MjAwNlx1MjAwN1x1MjAwOFx1MjAwOVx1MjAwQVx1MjAyRlx1MjA1Rlx1MzAwMFx1MjAyOFx1MjAyOVx1RkVGRl0rLyxjPS9bXHgwOVx4MEFceDBCXHgwQ1x4MERceDIwXHhBMFx1MTY4MFx1MTgwRVx1MjAwMFx1MjAwMVx1MjAwMlx1MjAwM1x1MjAwNFx1MjAwNVx1MjAwNlx1MjAwN1x1MjAwOFx1MjAwOVx1MjAwQVx1MjAyRlx1MjA1Rlx1MzAwMFx1MjAyOFx1MjAyOVx1RkVGRl0rJC87ZS5leHBvcnRzPWZ1bmN0aW9uKCl7dmFyIGU9by5Ub1N0cmluZyhvLkNoZWNrT2JqZWN0Q29lcmNpYmxlKHRoaXMpKTtyZXR1cm4gaShpKGUsYSwiIiksYywiIil9fSwiNTY1ZCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjZhOWIiKSxvPW4oImQ4NzYiKS5mLGk9e30udG9TdHJpbmcsYT0ib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmd2luZG93JiZPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcz9PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh3aW5kb3cpOltdLGM9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybiBvKGUpfWNhdGNoKHQpe3JldHVybiBhLnNsaWNlKCl9fTtlLmV4cG9ydHMuZj1mdW5jdGlvbihlKXtyZXR1cm4gYSYmIltvYmplY3QgV2luZG93XSI9PWkuY2FsbChlKT9jKGUpOm8ocihlKSl9fSw1OTI3OmZ1bmN0aW9uKGUsdCxuKXtuKCI5M2M0IiksbigiYjQyYyIpLGUuZXhwb3J0cz1uKCJmZGExIikuZigiaXRlcmF0b3IiKX0sNTk3NTpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gZT49MD8xOi0xfX0sIjU5YWQiOmZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9bigiMDk2NSIpfSwiNWI1ZiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcixvLGksYSxjPW4oImI0NTciKSxzPW4oImRhM2MiKSx1PW4oImJjMjUiKSxsPW4oIjdkOGEiKSxwPW4oImQxM2YiKSxmPW4oIjZmOGEiKSxkPW4oImYyZmUiKSxoPW4oImIwYmMiKSxfPW4oIjU2MGIiKSxtPW4oIjMwMmYiKSx2PW4oImRmMGEiKS5zZXQseT1uKCIzNmRjIikoKSxnPW4oIjAzY2EiKSxiPW4oIjc1YzkiKSx3PW4oIjhhMTIiKSx4PW4oImRlY2YiKSxDPSJQcm9taXNlIixrPXMuVHlwZUVycm9yLFM9cy5wcm9jZXNzLFA9UyYmUy52ZXJzaW9ucyxBPVAmJlAudjh8fCIiLE89c1tDXSwkPSJwcm9jZXNzIj09bChTKSxUPWZ1bmN0aW9uKCl7fSxqPW89Zy5mLEU9ISFmdW5jdGlvbigpe3RyeXt2YXIgZT1PLnJlc29sdmUoMSksdD0oZS5jb25zdHJ1Y3Rvcj17fSlbbigiMWI1NSIpKCJzcGVjaWVzIildPWZ1bmN0aW9uKGUpe2UoVCxUKX07cmV0dXJuKCR8fCJmdW5jdGlvbiI9PXR5cGVvZiBQcm9taXNlUmVqZWN0aW9uRXZlbnQpJiZlLnRoZW4oVClpbnN0YW5jZW9mIHQmJjAhPT1BLmluZGV4T2YoIjYuNiIpJiYtMT09PXcuaW5kZXhPZigiQ2hyb21lLzY2Iil9Y2F0Y2gocil7fX0oKSxNPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiEoIWYoZSl8fCJmdW5jdGlvbiIhPXR5cGVvZih0PWUudGhlbikpJiZ0fSxEPWZ1bmN0aW9uKGUsdCl7aWYoIWUuX24pe2UuX249ITA7dmFyIG49ZS5fYzt5KGZ1bmN0aW9uKCl7dmFyIHI9ZS5fdixvPTE9PWUuX3MsaT0wLGE9ZnVuY3Rpb24odCl7dmFyIG4saSxhLGM9bz90Lm9rOnQuZmFpbCxzPXQucmVzb2x2ZSx1PXQucmVqZWN0LGw9dC5kb21haW47dHJ5e2M/KG98fCgyPT1lLl9oJiZGKGUpLGUuX2g9MSksITA9PT1jP249cjoobCYmbC5lbnRlcigpLG49YyhyKSxsJiYobC5leGl0KCksYT0hMCkpLG49PT10LnByb21pc2U/dShrKCJQcm9taXNlLWNoYWluIGN5Y2xlIikpOihpPU0obikpP2kuY2FsbChuLHMsdSk6cyhuKSk6dShyKX1jYXRjaChwKXtsJiYhYSYmbC5leGl0KCksdShwKX19O3doaWxlKG4ubGVuZ3RoPmkpYShuW2krK10pO2UuX2M9W10sZS5fbj0hMSx0JiYhZS5faCYmSShlKX0pfX0sST1mdW5jdGlvbihlKXt2LmNhbGwocyxmdW5jdGlvbigpe3ZhciB0LG4scixvPWUuX3YsaT1MKGUpO2lmKGkmJih0PWIoZnVuY3Rpb24oKXskP1MuZW1pdCgidW5oYW5kbGVkUmVqZWN0aW9uIixvLGUpOihuPXMub251bmhhbmRsZWRyZWplY3Rpb24pP24oe3Byb21pc2U6ZSxyZWFzb246b30pOihyPXMuY29uc29sZSkmJnIuZXJyb3ImJnIuZXJyb3IoIlVuaGFuZGxlZCBwcm9taXNlIHJlamVjdGlvbiIsbyl9KSxlLl9oPSR8fEwoZSk/MjoxKSxlLl9hPXZvaWQgMCxpJiZ0LmUpdGhyb3cgdC52fSl9LEw9ZnVuY3Rpb24oZSl7cmV0dXJuIDEhPT1lLl9oJiYwPT09KGUuX2F8fGUuX2MpLmxlbmd0aH0sRj1mdW5jdGlvbihlKXt2LmNhbGwocyxmdW5jdGlvbigpe3ZhciB0OyQ/Uy5lbWl0KCJyZWplY3Rpb25IYW5kbGVkIixlKToodD1zLm9ucmVqZWN0aW9uaGFuZGxlZCkmJnQoe3Byb21pc2U6ZSxyZWFzb246ZS5fdn0pfSl9LE49ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczt0Ll9kfHwodC5fZD0hMCx0PXQuX3d8fHQsdC5fdj1lLHQuX3M9Mix0Ll9hfHwodC5fYT10Ll9jLnNsaWNlKCkpLEQodCwhMCkpfSxSPWZ1bmN0aW9uKGUpe3ZhciB0LG49dGhpcztpZighbi5fZCl7bi5fZD0hMCxuPW4uX3d8fG47dHJ5e2lmKG49PT1lKXRocm93IGsoIlByb21pc2UgY2FuJ3QgYmUgcmVzb2x2ZWQgaXRzZWxmIik7KHQ9TShlKSk/eShmdW5jdGlvbigpe3ZhciByPXtfdzpuLF9kOiExfTt0cnl7dC5jYWxsKGUsdShSLHIsMSksdShOLHIsMSkpfWNhdGNoKG8pe04uY2FsbChyLG8pfX0pOihuLl92PWUsbi5fcz0xLEQobiwhMSkpfWNhdGNoKHIpe04uY2FsbCh7X3c6bixfZDohMX0scil9fX07RXx8KE89ZnVuY3Rpb24oZSl7aCh0aGlzLE8sQywiX2giKSxkKGUpLHIuY2FsbCh0aGlzKTt0cnl7ZSh1KFIsdGhpcywxKSx1KE4sdGhpcywxKSl9Y2F0Y2godCl7Ti5jYWxsKHRoaXMsdCl9fSxyPWZ1bmN0aW9uKGUpe3RoaXMuX2M9W10sdGhpcy5fYT12b2lkIDAsdGhpcy5fcz0wLHRoaXMuX2Q9ITEsdGhpcy5fdj12b2lkIDAsdGhpcy5faD0wLHRoaXMuX249ITF9LHIucHJvdG90eXBlPW4oIjM5MDQiKShPLnByb3RvdHlwZSx7dGhlbjpmdW5jdGlvbihlLHQpe3ZhciBuPWoobSh0aGlzLE8pKTtyZXR1cm4gbi5vaz0iZnVuY3Rpb24iIT10eXBlb2YgZXx8ZSxuLmZhaWw9ImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQsbi5kb21haW49JD9TLmRvbWFpbjp2b2lkIDAsdGhpcy5fYy5wdXNoKG4pLHRoaXMuX2EmJnRoaXMuX2EucHVzaChuKSx0aGlzLl9zJiZEKHRoaXMsITEpLG4ucHJvbWlzZX0sY2F0Y2g6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMudGhlbih2b2lkIDAsZSl9fSksaT1mdW5jdGlvbigpe3ZhciBlPW5ldyByO3RoaXMucHJvbWlzZT1lLHRoaXMucmVzb2x2ZT11KFIsZSwxKSx0aGlzLnJlamVjdD11KE4sZSwxKX0sZy5mPWo9ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1PfHxlPT09YT9uZXcgaShlKTpvKGUpfSkscChwLkcrcC5XK3AuRiohRSx7UHJvbWlzZTpPfSksbigiYzBkOCIpKE8sQyksbigiMWJlNCIpKEMpLGE9bigiYTdkMyIpW0NdLHAocC5TK3AuRiohRSxDLHtyZWplY3Q6ZnVuY3Rpb24oZSl7dmFyIHQ9aih0aGlzKSxuPXQucmVqZWN0O3JldHVybiBuKGUpLHQucHJvbWlzZX19KSxwKHAuUytwLkYqKGN8fCFFKSxDLHtyZXNvbHZlOmZ1bmN0aW9uKGUpe3JldHVybiB4KGMmJnRoaXM9PT1hP086dGhpcyxlKX19KSxwKHAuUytwLkYqIShFJiZuKCI0MzZjIikoZnVuY3Rpb24oZSl7Ty5hbGwoZSlbImNhdGNoIl0oVCl9KSksQyx7YWxsOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMsbj1qKHQpLHI9bi5yZXNvbHZlLG89bi5yZWplY3QsaT1iKGZ1bmN0aW9uKCl7dmFyIG49W10saT0wLGE9MTtfKGUsITEsZnVuY3Rpb24oZSl7dmFyIGM9aSsrLHM9ITE7bi5wdXNoKHZvaWQgMCksYSsrLHQucmVzb2x2ZShlKS50aGVuKGZ1bmN0aW9uKGUpe3N8fChzPSEwLG5bY109ZSwtLWF8fHIobikpfSxvKX0pLC0tYXx8cihuKX0pO3JldHVybiBpLmUmJm8oaS52KSxuLnByb21pc2V9LHJhY2U6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcyxuPWoodCkscj1uLnJlamVjdCxvPWIoZnVuY3Rpb24oKXtfKGUsITEsZnVuY3Rpb24oZSl7dC5yZXNvbHZlKGUpLnRoZW4obi5yZXNvbHZlLHIpfSl9KTtyZXR1cm4gby5lJiZyKG8udiksbi5wcm9taXNlfX0pfSwiNWNhMSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjc3MjYiKSxvPW4oIjgzNzgiKSxpPW4oIjMyZTkiKSxhPW4oIjJhYmEiKSxjPW4oIjliNDMiKSxzPSJwcm90b3R5cGUiLHU9ZnVuY3Rpb24oZSx0LG4pe3ZhciBsLHAsZixkLGg9ZSZ1LkYsXz1lJnUuRyxtPWUmdS5TLHY9ZSZ1LlAseT1lJnUuQixnPV8/cjptP3JbdF18fChyW3RdPXt9KTooclt0XXx8e30pW3NdLGI9Xz9vOm9bdF18fChvW3RdPXt9KSx3PWJbc118fChiW3NdPXt9KTtmb3IobCBpbiBfJiYobj10KSxuKXA9IWgmJmcmJnZvaWQgMCE9PWdbbF0sZj0ocD9nOm4pW2xdLGQ9eSYmcD9jKGYscik6diYmImZ1bmN0aW9uIj09dHlwZW9mIGY/YyhGdW5jdGlvbi5jYWxsLGYpOmYsZyYmYShnLGwsZixlJnUuVSksYltsXSE9ZiYmaShiLGwsZCksdiYmd1tsXSE9ZiYmKHdbbF09Zil9O3IuY29yZT1vLHUuRj0xLHUuRz0yLHUuUz00LHUuUD04LHUuQj0xNix1Llc9MzIsdS5VPTY0LHUuUj0xMjgsZS5leHBvcnRzPXV9LCI1Y2M1IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMmI0YyIpKCJpdGVyYXRvciIpLG89ITE7dHJ5e3ZhciBpPVs3XVtyXSgpO2lbInJldHVybiJdPWZ1bmN0aW9uKCl7bz0hMH0sQXJyYXkuZnJvbShpLGZ1bmN0aW9uKCl7dGhyb3cgMn0pfWNhdGNoKGEpe31lLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZighdCYmIW8pcmV0dXJuITE7dmFyIG49ITE7dHJ5e3ZhciBpPVs3XSxjPWlbcl0oKTtjLm5leHQ9ZnVuY3Rpb24oKXtyZXR1cm57ZG9uZTpuPSEwfX0saVtyXT1mdW5jdGlvbigpe3JldHVybiBjfSxlKGkpfWNhdGNoKGEpe31yZXR1cm4gbn19LCI1Y2U3IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjcxMDgiKSxvPW4oImY4NDUiKSxpPW4oImMwZDgiKSxhPXt9O24oIjhjZTAiKShhLG4oIjFiNTUiKSgiaXRlcmF0b3IiKSxmdW5jdGlvbigpe3JldHVybiB0aGlzfSksZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXtlLnByb3RvdHlwZT1yKGEse25leHQ6bygxLG4pfSksaShlLHQrIiBJdGVyYXRvciIpfX0sIjVkNTgiOmZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9bigiNTkyNyIpfSwiNWQ2NyI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPXtjb2luX2RldGFpbHM6e21jYXBfcmFuazoiUG9zacOnw6NvIGRhIGNhcGl0YWxpemHDp8OjbyBubyBtZXJjYWRvIixtY2FwOiJDYXBpdGFsaXphw6fDo28gZGUgbWVyY2FkbyIsIjI0aF92b2x1bWUiOiJWb2x1bWUgZW0gMjRoIiwiMjRoX2hpZ2hfbG93IjoiMjRIIEhpZ2gvTG93In0sY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldDp7cG93ZXJlZF9ieToiRm9ybmVjaWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IixjcnlwdG9fcHJpY2VfY29tcGFyaXNvbjoiQ29tcGFyYcOnw6NvIGRlIHByZcOnbyBkZSBjcmlwdG9tb2VkYXMiLGNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb246IkNvbXBhcmHDp8OjbyBkZSBjYXBpdGFsaXphw6fDo28gZGUgbWVyY2FkbyBkZSBjcmlwdG9tb2VkYXMifSxjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQ6e3Bvd2VyZWRfYnk6IkZvcm5lY2lkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0OnsiMjRoX2hpZ2giOiJBbHRhIGRlIDI0aCIsIjI0aF9sb3ciOiJCYWl4YSBkZSAyNGgiLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiRm9ybmVjaWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldDp7cG93ZXJlZF9ieToiRm9ybmVjaWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9saXN0X3dpZGdldDp7cG93ZXJlZF9ieToiRm9ybmVjaWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sYmVhbV93aWRnZXQ6e3Bvd2VyZWRfYnk6IkZvcm5lY2lkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fdGlja2VyX3dpZGdldDp7IjI0aF9oaWdoIjoiQWx0YSBkZSAyNGgiLCIyNGhfbG93IjoiQmFpeGEgZGUgMjRoIix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IkZvcm5lY2lkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fY29udmVydGVyX3dpZGdldDp7dmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiJGb3JuZWNpZG8gcG9yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2hlYXRtYXBfd2lkZ2V0Ont0aXRsZToiTWFwYSBkZSDDoXJ2b3JlIGRlIGNyaXB0b21vZWRhcyIsc3VidGl0bGU6IihUb3AgJXt0b3B9IGJ5IE1hcmtldCBDYXApIixwb3dlcmVkX2J5OiJGb3JuZWNpZG8gcG9yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxyYW5kb21fY29pbl93aWRnZXQ6e2Rpc2NsYWltZXI6IkRpc2NsYWltZXI6IFRoaXMgdG9vbHMgc2VydmUgYXMgYW4gZW50ZXJ0YWlubWVudCBhbmQgZG9lcyBub3QgY29uc3RpdHV0ZSBmaW5hbmNpYWwgYWR2aWNlLiIsc3BpbjoiU3BpbiJ9LGNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ont0aXRsZToiQ29pbkdlY2tvIFByaWNlIFVwZGF0ZSIsdG90YWxfbWNhcDoiVG90YWwgTSBjYXAiLCIyNGhfdm9sIjoiVm9sdW1lIGVtIDI0aCIsZG9tOiJEb20ifSxjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQ6e2V4Y2hhbmdlOiJUcm9jYSIscGFpcjoiUGFyIixwcmljZToiUHJlw6dvIix2b2x1bWU6IlZvbHVtZSIsdHJ1c3Rfc2NvcmU6IlBvbnR1YcOnw6NvIGRlIExpcXVpZGV6Iix2aWV3X3ByaWNlX2NoYXJ0OiJWZXIgdGFiZWxhIGRlIHByZcOnb3MiLHBvd2VyZWRfYnk6IkZvcm5lY2lkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsdmlld19hbGw6IlZpZXcgYWxsICV7Y29pbn0gbWFya2V0cyJ9fX0sIjVkOGYiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI3NzcyIikoImtleXMiKSxvPW4oIjdiMDAiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHJbZV18fChyW2VdPW8oZSkpfX0sIjVkYmMiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkM2Y0Iiksbz1uKCI4Yjk3Iikuc2V0O2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7dmFyIGksYT10LmNvbnN0cnVjdG9yO3JldHVybiBhIT09biYmImZ1bmN0aW9uIj09dHlwZW9mIGEmJihpPWEucHJvdG90eXBlKSE9PW4ucHJvdG90eXBlJiZyKGkpJiZvJiZvKGUsaSksZX19LCI1ZGYzIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjAyZjQiKSghMCk7bigiMDFmOSIpKFN0cmluZywiU3RyaW5nIixmdW5jdGlvbihlKXt0aGlzLl90PVN0cmluZyhlKSx0aGlzLl9pPTB9LGZ1bmN0aW9uKCl7dmFyIGUsdD10aGlzLl90LG49dGhpcy5faTtyZXR1cm4gbj49dC5sZW5ndGg/e3ZhbHVlOnZvaWQgMCxkb25lOiEwfTooZT1yKHQsbiksdGhpcy5faSs9ZS5sZW5ndGgse3ZhbHVlOmUsZG9uZTohMX0pfSl9LCI1ZjFiIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjIzYzYiKSxvPVJlZ0V4cC5wcm90b3R5cGUuZXhlYztlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmV4ZWM7aWYoImZ1bmN0aW9uIj09PXR5cGVvZiBuKXt2YXIgaT1uLmNhbGwoZSx0KTtpZigib2JqZWN0IiE9PXR5cGVvZiBpKXRocm93IG5ldyBUeXBlRXJyb3IoIlJlZ0V4cCBleGVjIG1ldGhvZCByZXR1cm5lZCBzb21ldGhpbmcgb3RoZXIgdGhhbiBhbiBPYmplY3Qgb3IgbnVsbCIpO3JldHVybiBpfWlmKCJSZWdFeHAiIT09cihlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJSZWdFeHAjZXhlYyBjYWxsZWQgb24gaW5jb21wYXRpYmxlIHJlY2VpdmVyIik7cmV0dXJuIG8uY2FsbChlLHQpfX0sIjYxM2IiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI1NTM3IikoImtleXMiKSxvPW4oImNhNWEiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHJbZV18fChyW2VdPW8oZSkpfX0sIjYyNmEiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIyZDk1Iik7ZS5leHBvcnRzPU9iamVjdCgieiIpLnByb3BlcnR5SXNFbnVtZXJhYmxlKDApP09iamVjdDpmdW5jdGlvbihlKXtyZXR1cm4iU3RyaW5nIj09cihlKT9lLnNwbGl0KCIiKTpPYmplY3QoZSl9fSwiNjI2ZSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQ3NGUiKSxvPW4oImY4NDUiKSxpPW4oIjZhOWIiKSxhPW4oIjJlYTEiKSxjPW4oIjQzYzgiKSxzPW4oImE0N2YiKSx1PU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7dC5mPW4oIjdkOTUiKT91OmZ1bmN0aW9uKGUsdCl7aWYoZT1pKGUpLHQ9YSh0LCEwKSxzKXRyeXtyZXR1cm4gdShlLHQpfWNhdGNoKG4pe31pZihjKGUsdCkpcmV0dXJuIG8oIXIuZi5jYWxsKGUsdCksZVt0XSl9fSw2Mjc3OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI3YjAwIikoIm1ldGEiKSxvPW4oIjZmOGEiKSxpPW4oIjQzYzgiKSxhPW4oIjNhZGMiKS5mLGM9MCxzPU9iamVjdC5pc0V4dGVuc2libGV8fGZ1bmN0aW9uKCl7cmV0dXJuITB9LHU9IW4oImQ3ODIiKShmdW5jdGlvbigpe3JldHVybiBzKE9iamVjdC5wcmV2ZW50RXh0ZW5zaW9ucyh7fSkpfSksbD1mdW5jdGlvbihlKXthKGUscix7dmFsdWU6e2k6Ik8iKyArK2Msdzp7fX19KX0scD1mdW5jdGlvbihlLHQpe2lmKCFvKGUpKXJldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOigic3RyaW5nIj09dHlwZW9mIGU/IlMiOiJQIikrZTtpZighaShlLHIpKXtpZighcyhlKSlyZXR1cm4iRiI7aWYoIXQpcmV0dXJuIkUiO2woZSl9cmV0dXJuIGVbcl0uaX0sZj1mdW5jdGlvbihlLHQpe2lmKCFpKGUscikpe2lmKCFzKGUpKXJldHVybiEwO2lmKCF0KXJldHVybiExO2woZSl9cmV0dXJuIGVbcl0ud30sZD1mdW5jdGlvbihlKXtyZXR1cm4gdSYmaC5ORUVEJiZzKGUpJiYhaShlLHIpJiZsKGUpLGV9LGg9ZS5leHBvcnRzPXtLRVk6cixORUVEOiExLGZhc3RLZXk6cCxnZXRXZWFrOmYsb25GcmVlemU6ZH19LCI2MzNhIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDEzZiIpLG89bigiZTVmYSIpLGk9bigiZDc4MiIpLGE9bigiNzAyYSIpLGM9IlsiK2ErIl0iLHM9IuKAi8KFIix1PVJlZ0V4cCgiXiIrYytjKyIqIiksbD1SZWdFeHAoYytjKyIqJCIpLHA9ZnVuY3Rpb24oZSx0LG4pe3ZhciBvPXt9LGM9aShmdW5jdGlvbigpe3JldHVybiEhYVtlXSgpfHxzW2VdKCkhPXN9KSx1PW9bZV09Yz90KGYpOmFbZV07biYmKG9bbl09dSkscihyLlArci5GKmMsIlN0cmluZyIsbyl9LGY9cC50cmltPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9U3RyaW5nKG8oZSkpLDEmdCYmKGU9ZS5yZXBsYWNlKHUsIiIpKSwyJnQmJihlPWUucmVwbGFjZShsLCIiKSksZX07ZS5leHBvcnRzPXB9LCI2N2JiIjpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPW4oImIyNTgiKX0sNjgyMTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNjI2YSIpLG89bigiYmUxMyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gcihvKGUpKX19LCI2ODhlIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPSJGdW5jdGlvbi5wcm90b3R5cGUuYmluZCBjYWxsZWQgb24gaW5jb21wYXRpYmxlICIsbz1BcnJheS5wcm90b3R5cGUuc2xpY2UsaT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLGE9IltvYmplY3QgRnVuY3Rpb25dIjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcztpZigiZnVuY3Rpb24iIT09dHlwZW9mIHR8fGkuY2FsbCh0KSE9PWEpdGhyb3cgbmV3IFR5cGVFcnJvcihyK3QpO2Zvcih2YXIgbixjPW8uY2FsbChhcmd1bWVudHMsMSkscz1mdW5jdGlvbigpe2lmKHRoaXMgaW5zdGFuY2VvZiBuKXt2YXIgcj10LmFwcGx5KHRoaXMsYy5jb25jYXQoby5jYWxsKGFyZ3VtZW50cykpKTtyZXR1cm4gT2JqZWN0KHIpPT09cj9yOnRoaXN9cmV0dXJuIHQuYXBwbHkoZSxjLmNvbmNhdChvLmNhbGwoYXJndW1lbnRzKSkpfSx1PU1hdGgubWF4KDAsdC5sZW5ndGgtYy5sZW5ndGgpLGw9W10scD0wO3A8dTtwKyspbC5wdXNoKCIkIitwKTtpZihuPUZ1bmN0aW9uKCJiaW5kZXIiLCJyZXR1cm4gZnVuY3Rpb24gKCIrbC5qb2luKCIsIikrIil7IHJldHVybiBiaW5kZXIuYXBwbHkodGhpcyxhcmd1bWVudHMpOyB9IikocyksdC5wcm90b3R5cGUpe3ZhciBmPWZ1bmN0aW9uKCl7fTtmLnByb3RvdHlwZT10LnByb3RvdHlwZSxuLnByb3RvdHlwZT1uZXcgZixmLnByb3RvdHlwZT1udWxsfXJldHVybiBufX0sIjY5YTgiOmZ1bmN0aW9uKGUsdCl7dmFyIG49e30uaGFzT3duUHJvcGVydHk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG4uY2FsbChlLHQpfX0sIjZhOTkiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkM2Y0Iik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7aWYoIXIoZSkpcmV0dXJuIGU7dmFyIG4sbztpZih0JiYiZnVuY3Rpb24iPT10eXBlb2Yobj1lLnRvU3RyaW5nKSYmIXIobz1uLmNhbGwoZSkpKXJldHVybiBvO2lmKCJmdW5jdGlvbiI9PXR5cGVvZihuPWUudmFsdWVPZikmJiFyKG89bi5jYWxsKGUpKSlyZXR1cm4gbztpZighdCYmImZ1bmN0aW9uIj09dHlwZW9mKG49ZS50b1N0cmluZykmJiFyKG89bi5jYWxsKGUpKSlyZXR1cm4gbzt0aHJvdyBUeXBlRXJyb3IoIkNhbid0IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2ZSB2YWx1ZSIpfX0sIjZhOWIiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI4YmFiIiksbz1uKCJlNWZhIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiByKG8oZSkpfX0sIjZiNTQiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bigiMzg0NiIpO3ZhciByPW4oImNiN2MiKSxvPW4oIjBiZmIiKSxpPW4oIjllMWUiKSxhPSJ0b1N0cmluZyIsYz0vLi9bYV0scz1mdW5jdGlvbihlKXtuKCIyYWJhIikoUmVnRXhwLnByb3RvdHlwZSxhLGUsITApfTtuKCI3OWU1IikoZnVuY3Rpb24oKXtyZXR1cm4iL2EvYiIhPWMuY2FsbCh7c291cmNlOiJhIixmbGFnczoiYiJ9KX0pP3MoZnVuY3Rpb24oKXt2YXIgZT1yKHRoaXMpO3JldHVybiIvIi5jb25jYXQoZS5zb3VyY2UsIi8iLCJmbGFncyJpbiBlP2UuZmxhZ3M6IWkmJmUgaW5zdGFuY2VvZiBSZWdFeHA/by5jYWxsKGUpOnZvaWQgMCl9KTpjLm5hbWUhPWEmJnMoZnVuY3Rpb24oKXtyZXR1cm4gYy5jYWxsKHRoaXMpfSl9LCI2Y2UyIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9e2NvaW5fZGV0YWlsczp7bWNhcF9yYW5rOiJNYXJrdGthcGl0YWxpc2llcnVuZ3NyYW5nIixtY2FwOiJNYXJrdGthcGl0YWxpc2llcnVuZyIsIjI0aF92b2x1bWUiOiIyNC1TdHVuZGVuLVZvbHVtZW4iLCIyNGhfaGlnaF9sb3ciOiIyNEggSGlnaC9Mb3cifSxjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ontwb3dlcmVkX2J5OiJQcsOkc2VudGllcnQgdm9uICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLGNyeXB0b19wcmljZV9jb21wYXJpc29uOiJLcnlwdG93w6RocnVuZ3MtUHJlaXN2ZXJnbGVpY2giLGNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb246IlZlcmdsZWljaCBkZXIgS3J5cHRvd8OkaHJ1bmdzLU1hcmt0a2FwaXRhbGlzaWVydW5nIn0sY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ontwb3dlcmVkX2J5OiJQcsOkc2VudGllcnQgdm9uICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3ByaWNlX2NoYXJ0X3dpZGdldDp7IjI0aF9oaWdoIjoiMjRoIEhvY2giLCIyNGhfbG93IjoiMjRoIFRpZWYiLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiUHLDpHNlbnRpZXJ0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldDp7cG93ZXJlZF9ieToiUHLDpHNlbnRpZXJ0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9saXN0X3dpZGdldDp7cG93ZXJlZF9ieToiUHLDpHNlbnRpZXJ0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sYmVhbV93aWRnZXQ6e3Bvd2VyZWRfYnk6IlByw6RzZW50aWVydCB2b24gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fdGlja2VyX3dpZGdldDp7IjI0aF9oaWdoIjoiMjRoIEhvY2giLCIyNGhfbG93IjoiMjRoIFRpZWYiLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiUHLDpHNlbnRpZXJ0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ont2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IlByw6RzZW50aWVydCB2b24gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5faGVhdG1hcF93aWRnZXQ6e3RpdGxlOiJLcnlwdG93w6RocnVuZ3MtVHJlZS1NYXAiLHN1YnRpdGxlOiIoVG9wICV7dG9wfSBieSBNYXJrZXQgQ2FwKSIscG93ZXJlZF9ieToiUHLDpHNlbnRpZXJ0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0scmFuZG9tX2NvaW5fd2lkZ2V0OntkaXNjbGFpbWVyOiJEaXNjbGFpbWVyOiBUaGlzIHRvb2xzIHNlcnZlIGFzIGFuIGVudGVydGFpbm1lbnQgYW5kIGRvZXMgbm90IGNvbnN0aXR1dGUgZmluYW5jaWFsIGFkdmljZS4iLHNwaW46IlNwaW4ifSxjb2luX2RhaWx5X3ByaWNlX3dpZGdldDp7dGl0bGU6IkNvaW5HZWNrbyBQcmljZSBVcGRhdGUiLHRvdGFsX21jYXA6IlRvdGFsIE0gY2FwIiwiMjRoX3ZvbCI6IjI0LVN0dW5kZW4tVm9sdW1lbiIsZG9tOiJEb20ifSxjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQ6e2V4Y2hhbmdlOiJCw7Zyc2UiLHBhaXI6IlBhYXIiLHByaWNlOiJLdXJzIix2b2x1bWU6IlZvbHVtZW4iLHRydXN0X3Njb3JlOiJWZXJ0cmF1ZW5zd2VydCIsdmlld19wcmljZV9jaGFydDoiUHJlaXPDvGJlcnNpY2h0IGFuemVpZ2VuIixwb3dlcmVkX2J5OiJQcsOkc2VudGllcnQgdm9uICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLHZpZXdfYWxsOiJWaWV3IGFsbCAle2NvaW59IG1hcmtldHMifX19LCI2ZTFmIjpmdW5jdGlvbihlLHQpe3ZhciBuPXt9LnRvU3RyaW5nO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbi5jYWxsKGUpLnNsaWNlKDgsLTEpfX0sIjZmOGEiOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiJvYmplY3QiPT09dHlwZW9mIGU/bnVsbCE9PWU6ImZ1bmN0aW9uIj09PXR5cGVvZiBlfX0sIjcwMmEiOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPSJcdFxuXHZcZlxyIMKg4ZqA4aCO4oCA4oCB4oCC4oCD4oCE4oCF4oCG4oCH4oCI4oCJ4oCK4oCv4oGf44CAXHUyMDI4XHUyMDI5XHVmZWZmIn0sNzEwODpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMGY4OSIpLG89bigiZjU2OCIpLGk9bigiMDAyOSIpLGE9bigiNWQ4ZiIpKCJJRV9QUk9UTyIpLGM9ZnVuY3Rpb24oKXt9LHM9InByb3RvdHlwZSIsdT1mdW5jdGlvbigpe3ZhciBlLHQ9bigiMTJmZCIpKCJpZnJhbWUiKSxyPWkubGVuZ3RoLG89IjwiLGE9Ij4iO3Quc3R5bGUuZGlzcGxheT0ibm9uZSIsbigiMTAzYSIpLmFwcGVuZENoaWxkKHQpLHQuc3JjPSJqYXZhc2NyaXB0OiIsZT10LmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQsZS5vcGVuKCksZS53cml0ZShvKyJzY3JpcHQiK2ErImRvY3VtZW50LkY9T2JqZWN0IitvKyIvc2NyaXB0IithKSxlLmNsb3NlKCksdT1lLkY7d2hpbGUoci0tKWRlbGV0ZSB1W3NdW2lbcl1dO3JldHVybiB1KCl9O2UuZXhwb3J0cz1PYmplY3QuY3JlYXRlfHxmdW5jdGlvbihlLHQpe3ZhciBuO3JldHVybiBudWxsIT09ZT8oY1tzXT1yKGUpLG49bmV3IGMsY1tzXT1udWxsLG5bYV09ZSk6bj11KCksdm9pZCAwPT09dD9uOm8obix0KX19LDc1MTQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCI1Y2ExIiksbz1uKCIwYTQ5IikoNSksaT0iZmluZCIsYT0hMDtpIGluW10mJkFycmF5KDEpW2ldKGZ1bmN0aW9uKCl7YT0hMX0pLHIoci5QK3IuRiphLCJBcnJheSIse2ZpbmQ6ZnVuY3Rpb24oZSl7cmV0dXJuIG8odGhpcyxlLGFyZ3VtZW50cy5sZW5ndGg+MT9hcmd1bWVudHNbMV06dm9pZCAwKX19KSxuKCI5YzZjIikoaSl9LCI3NWM5IjpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlKXt0cnl7cmV0dXJue2U6ITEsdjplKCl9fWNhdGNoKHQpe3JldHVybntlOiEwLHY6dH19fX0sNzYxODpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIixmdW5jdGlvbigpe3JldHVybiBzfSk7dmFyIHI9bigiNWQ1OCIpLG89bi5uKHIpLGk9bigiNjdiYiIpLGE9bi5uKGkpO2Z1bmN0aW9uIGMoZSl7cmV0dXJuIGM9ImZ1bmN0aW9uIj09PXR5cGVvZiBhLmEmJiJzeW1ib2wiPT09dHlwZW9mIG8uYT9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT09dHlwZW9mIGEuYSYmZS5jb25zdHJ1Y3Rvcj09PWEuYSYmZSE9PWEuYS5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIGV9LGMoZSl9ZnVuY3Rpb24gcyhlKXtyZXR1cm4gcz0iZnVuY3Rpb24iPT09dHlwZW9mIGEuYSYmInN5bWJvbCI9PT1jKG8uYSk/ZnVuY3Rpb24oZSl7cmV0dXJuIGMoZSl9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT09dHlwZW9mIGEuYSYmZS5jb25zdHJ1Y3Rvcj09PWEuYSYmZSE9PWEuYS5wcm90b3R5cGU/InN5bWJvbCI6YyhlKX0scyhlKX19LDc2MzM6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjI2OTUiKSxvPW4oIjAwMjkiKTtlLmV4cG9ydHM9T2JqZWN0LmtleXN8fGZ1bmN0aW9uKGUpe3JldHVybiByKGUsbyl9fSw3NzA0OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz17Y29pbl9kZXRhaWxzOnttY2FwX3Jhbms6ItCf0L7Qt9C40YbQuNGPINCyINGA0LXQudGC0LjQvdCz0LUgTWFya2V0IENhcCIsbWNhcDoi0KDRi9C90L7Rh9C90LDRjyDQutCw0L/QuNGC0LDQu9C40LfQsNGG0LjRjyIsIjI0aF92b2x1bWUiOiLQntCx0YrQtdC8INC30LAgMjTCoNGH0LDRgdCwIiwiMjRoX2hpZ2hfbG93IjoiMjRIIEhpZ2gvTG93In0sY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldDp7cG93ZXJlZF9ieToi0J7RgiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IixjcnlwdG9fcHJpY2VfY29tcGFyaXNvbjoi0KHRgNCw0LLQvdC10L3QuNC1INC60YPRgNGB0L7QsiDQutGA0LjQv9GC0L7QstCw0LvRjtGCIixjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uOiLQodGA0LDQstC90LXQvdC40LUg0LrRgNC40L/RgtC+0LLQsNC70Y7RgiDQv9C+INGA0YvQvdC+0YfQvdC+0Lkg0LrQsNC/0LjRgtCw0LvQuNC30LDRhtC40LgifSxjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQ6e3Bvd2VyZWRfYnk6ItCe0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0OnsiMjRoX2hpZ2giOiLQnNCw0LrRgS4g0LfQsCAyNMKg0YfQsNGB0LAiLCIyNGhfbG93Ijoi0JzQuNC9LiDQt9CwIDI0wqDRh9Cw0YHQsCIsdmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiLQntGCICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ontwb3dlcmVkX2J5OiLQntGCICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2xpc3Rfd2lkZ2V0Ontwb3dlcmVkX2J5OiLQntGCICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxiZWFtX3dpZGdldDp7cG93ZXJlZF9ieToi0J7RgiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl90aWNrZXJfd2lkZ2V0OnsiMjRoX2hpZ2giOiLQnNCw0LrRgS4g0LfQsCAyNMKg0YfQsNGB0LAiLCIyNGhfbG93Ijoi0JzQuNC9LiDQt9CwIDI0wqDRh9Cw0YHQsCIsdmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiLQntGCICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2NvbnZlcnRlcl93aWRnZXQ6e3ZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToi0J7RgiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9oZWF0bWFwX3dpZGdldDp7dGl0bGU6ItCa0LDRgNGC0LAg0LTQtdGA0LXQstCwINC60YDQuNC/0YLQvtCy0LDQu9GO0YIiLHN1YnRpdGxlOiIoVG9wICV7dG9wfSBieSBNYXJrZXQgQ2FwKSIscG93ZXJlZF9ieToi0J7RgiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0scmFuZG9tX2NvaW5fd2lkZ2V0OntkaXNjbGFpbWVyOiJEaXNjbGFpbWVyOiBUaGlzIHRvb2xzIHNlcnZlIGFzIGFuIGVudGVydGFpbm1lbnQgYW5kIGRvZXMgbm90IGNvbnN0aXR1dGUgZmluYW5jaWFsIGFkdmljZS4iLHNwaW46IlNwaW4ifSxjb2luX2RhaWx5X3ByaWNlX3dpZGdldDp7dGl0bGU6IkNvaW5HZWNrbyBQcmljZSBVcGRhdGUiLHRvdGFsX21jYXA6IlRvdGFsIE0gY2FwIiwiMjRoX3ZvbCI6ItCe0LHRitC10Lwg0YLQvtGA0LPQvtCyINC30LAgMjTCoNGH0LDRgdCwIixkb206IkRvbSJ9LGNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldDp7ZXhjaGFuZ2U6ItCe0LHQvNC10L0iLHBhaXI6ItCf0LDRgNCwIixwcmljZToi0KbQtdC90LAiLHZvbHVtZToi0J7QsdGK0LXQvCIsdHJ1c3Rfc2NvcmU6ItCf0L7QutCw0LfQsNGC0LXQu9GMINC90LDQtNC10LbQvdC+0YHRgtC4Iix2aWV3X3ByaWNlX2NoYXJ0OiLQn9C+0LrQsNC30LDRgtGMINCz0YDQsNGE0LjQuiDQuNC30LzQtdC90LXQvdC40Y8g0LrRg9GA0YHQsCIscG93ZXJlZF9ieToi0J7RgiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iix2aWV3X2FsbDoiVmlldyBhbGwgJXtjb2lufSBtYXJrZXRzIn19fSw3NzI2OmZ1bmN0aW9uKGUsdCl7dmFyIG49ZS5leHBvcnRzPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cuTWF0aD09TWF0aD93aW5kb3c6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmJiZzZWxmLk1hdGg9PU1hdGg/c2VsZjpGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpOyJudW1iZXIiPT10eXBlb2YgX19nJiYoX19nPW4pfSw3NzcyOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJhN2QzIiksbz1uKCJkYTNjIiksaT0iX19jb3JlLWpzX3NoYXJlZF9fIixhPW9baV18fChvW2ldPXt9KTsoZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGFbZV18fChhW2VdPXZvaWQgMCE9PXQ/dDp7fSl9KSgidmVyc2lvbnMiLFtdKS5wdXNoKHt2ZXJzaW9uOnIudmVyc2lvbixtb2RlOm4oImI0NTciKT8icHVyZSI6Imdsb2JhbCIsY29weXJpZ2h0OiLCqSAyMDE4IERlbmlzIFB1c2hrYXJldiAoemxvaXJvY2sucnUpIn0pfSwiNzdmMSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjQ1ODgiKSxvPU1hdGgubWF4LGk9TWF0aC5taW47ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9cihlKSxlPDA/byhlK3QsMCk6aShlLHQpfX0sIjc5NWIiOmZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9bigiZGQwNCIpfSwiNzllNSI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybiEhZSgpfWNhdGNoKHQpe3JldHVybiEwfX19LCI3YTU2IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjc3MjYiKSxvPW4oIjg2Y2MiKSxpPW4oIjllMWUiKSxhPW4oIjJiNGMiKSgic3BlY2llcyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXt2YXIgdD1yW2VdO2kmJnQmJiF0W2FdJiZvLmYodCxhLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9fSl9fSwiN2IwMCI6ZnVuY3Rpb24oZSx0KXt2YXIgbj0wLHI9TWF0aC5yYW5kb20oKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIlN5bWJvbCgiLmNvbmNhdCh2b2lkIDA9PT1lPyIiOmUsIilfIiwoKytuK3IpLnRvU3RyaW5nKDM2KSl9fSwiN2Q4YSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjZlMWYiKSxvPW4oIjFiNTUiKSgidG9TdHJpbmdUYWciKSxpPSJBcmd1bWVudHMiPT1yKGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50c30oKSksYT1mdW5jdGlvbihlLHQpe3RyeXtyZXR1cm4gZVt0XX1jYXRjaChuKXt9fTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQsbixjO3JldHVybiB2b2lkIDA9PT1lPyJVbmRlZmluZWQiOm51bGw9PT1lPyJOdWxsIjoic3RyaW5nIj09dHlwZW9mKG49YSh0PU9iamVjdChlKSxvKSk/bjppP3IodCk6Ik9iamVjdCI9PShjPXIodCkpJiYiZnVuY3Rpb24iPT10eXBlb2YgdC5jYWxsZWU/IkFyZ3VtZW50cyI6Y319LCI3ZDk1IjpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPSFuKCJkNzgyIikoZnVuY3Rpb24oKXtyZXR1cm4gNyE9T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSkuYX0pfSwiN2RhYiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsZnVuY3Rpb24oKXtyZXR1cm4gYX0pO3ZhciByPW4oImE0YmIiKSxvPW4ubihyKSxpPXtCVEM6ITAsRVRIOiEwLFVTRDohMCxBRUQ6ITAsQVJTOiEwLEFVRDohMCxCUkw6ITAsQ0FEOiEwLENIRjohMCxDTFA6ITAsQ05ZOiEwLENaSzohMCxES0s6ITAsRVVSOiEwLEdCUDohMCxIS0Q6ITAsSFVGOiEwLElEUjohMCxJTFM6ITAsSU5SOiEwLEpQWTohMCxLUlc6ITAsS1dEOiEwLExLUjohMCxNWE46ITAsTVlSOiEwLE5PSzohMCxOWkQ6ITAsUEhQOiEwLFBLUjohMCxQTE46ITAsUlVCOiEwLFNBUjohMCxTRUs6ITAsU0dEOiEwLFRIQjohMCxUUlk6ITAsVFdEOiEwLFpBUjohMH07ZnVuY3Rpb24gYSgpe3JldHVybiBvKCkoaSl9fSwiN2YyMCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjg2Y2MiKS5mLG89bigiNjlhOCIpLGk9bigiMmI0YyIpKCJ0b1N0cmluZ1RhZyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7ZSYmIW8oZT1uP2U6ZS5wcm90b3R5cGUsaSkmJnIoZSxpLHtjb25maWd1cmFibGU6ITAsdmFsdWU6dH0pfX0sODpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPW4oIjM5ZjgiKX0sODA3OTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNzcyNiIpLG89bigiMTk5MSIpLnNldCxpPXIuTXV0YXRpb25PYnNlcnZlcnx8ci5XZWJLaXRNdXRhdGlvbk9ic2VydmVyLGE9ci5wcm9jZXNzLGM9ci5Qcm9taXNlLHM9InByb2Nlc3MiPT1uKCIyZDk1IikoYSk7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7dmFyIGUsdCxuLHU9ZnVuY3Rpb24oKXt2YXIgcixvO3MmJihyPWEuZG9tYWluKSYmci5leGl0KCk7d2hpbGUoZSl7bz1lLmZuLGU9ZS5uZXh0O3RyeXtvKCl9Y2F0Y2goaSl7dGhyb3cgZT9uKCk6dD12b2lkIDAsaX19dD12b2lkIDAsciYmci5lbnRlcigpfTtpZihzKW49ZnVuY3Rpb24oKXthLm5leHRUaWNrKHUpfTtlbHNlIGlmKCFpfHxyLm5hdmlnYXRvciYmci5uYXZpZ2F0b3Iuc3RhbmRhbG9uZSlpZihjJiZjLnJlc29sdmUpe3ZhciBsPWMucmVzb2x2ZSh2b2lkIDApO249ZnVuY3Rpb24oKXtsLnRoZW4odSl9fWVsc2Ugbj1mdW5jdGlvbigpe28uY2FsbChyLHUpfTtlbHNle3ZhciBwPSEwLGY9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiIpO25ldyBpKHUpLm9ic2VydmUoZix7Y2hhcmFjdGVyRGF0YTohMH0pLG49ZnVuY3Rpb24oKXtmLmRhdGE9cD0hcH19cmV0dXJuIGZ1bmN0aW9uKHIpe3ZhciBvPXtmbjpyLG5leHQ6dm9pZCAwfTt0JiYodC5uZXh0PW8pLGV8fChlPW8sbigpKSx0PW99fX0sIjgxZWUiOmZ1bmN0aW9uKGUsdCxuKXtuKCI5YTUxIiksZS5leHBvcnRzPW4oImE3ZDMiKS5PYmplY3QuYXNzaWdufSwiODJhMyI6ZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKCIyOWEzIil9LDgzNzg6ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmV4cG9ydHM9e3ZlcnNpb246IjIuNi41In07Im51bWJlciI9PXR5cGVvZiBfX2UmJihfX2U9bil9LCI4NGYyIjpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz17fX0sODY4MDpmdW5jdGlvbihlKXtlLmV4cG9ydHM9e2NvaW5fZGV0YWlsczp7bWNhcF9yYW5rOiLguK3guLHguJnguJTguLHguJrguKHguLnguKXguITguYjguLLguJXguLLguKHguKPguLLguITguLLguJXguKXguLLguJQiLG1jYXA6IuC4oeC4ueC4peC4hOC5iOC4suC4leC4suC4oeC4o+C4suC4hOC4suC4leC4peC4suC4lCIsIjI0aF92b2x1bWUiOiLguJvguKPguLTguKHguLLguJMgMjQg4LiK4LihLiIsIjI0aF9oaWdoX2xvdyI6IjI0SCBIaWdoL0xvdyJ9LGNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQ6e3Bvd2VyZWRfYnk6IuC4guC4seC4muC5gOC4hOC4peC4t+C5iOC4reC4meC4lOC5ieC4p+C4oiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IixjcnlwdG9fcHJpY2VfY29tcGFyaXNvbjoi4LiB4Liy4Lij4LmA4Lib4Lij4Li14Lii4Lia4LmA4LiX4Li14Lii4Lia4Lij4Liy4LiE4LiyIENyeXB0byIsY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbjoi4LiB4Liy4Lij4LmA4Lib4Lij4Li14Lii4Lia4LmA4LiX4Li14Lii4Lia4Lih4Li54Lil4LiE4LmI4Liy4LiV4Liy4Lih4Lij4Liy4LiE4Liy4LiV4Lil4Liy4LiU4LiC4Lit4LiHIENyeXB0byJ9LGNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldDp7cG93ZXJlZF9ieToi4LiC4Lix4Lia4LmA4LiE4Lil4Li34LmI4Lit4LiZ4LiU4LmJ4Lin4LiiICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3ByaWNlX2NoYXJ0X3dpZGdldDp7IjI0aF9oaWdoIjoi4Liq4Li54LiHIDI0IOC4iuC4seC5iOC4p+C5guC4oeC4hyIsIjI0aF9sb3ciOiLguJXguYjguLMgMjQg4LiK4Lix4LmI4Lin4LmC4Lih4LiHIix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IuC4guC4seC4muC5gOC4hOC4peC4t+C5iOC4reC4meC4lOC5ieC4p+C4oiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldDp7cG93ZXJlZF9ieToi4LiC4Lix4Lia4LmA4LiE4Lil4Li34LmI4Lit4LiZ4LiU4LmJ4Lin4LiiICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2xpc3Rfd2lkZ2V0Ontwb3dlcmVkX2J5OiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguJTguYnguKfguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGJlYW1fd2lkZ2V0Ontwb3dlcmVkX2J5OiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguJTguYnguKfguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fdGlja2VyX3dpZGdldDp7IjI0aF9oaWdoIjoi4Liq4Li54LiHIDI0IOC4iuC4seC5iOC4p+C5guC4oeC4hyIsIjI0aF9sb3ciOiLguJXguYjguLMgMjQg4LiK4Lix4LmI4Lin4LmC4Lih4LiHIix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IuC4guC4seC4muC5gOC4hOC4peC4t+C5iOC4reC4meC4lOC5ieC4p+C4oiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ont2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IuC4guC4seC4muC5gOC4hOC4peC4t+C5iOC4reC4meC4lOC5ieC4p+C4oiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9oZWF0bWFwX3dpZGdldDp7dGl0bGU6IuC5geC4nOC4meC4l+C4teC5iOC4o+C4ueC4m+C4leC5ieC4meC5hOC4q+C4oSBDcnlwdG9jdXJyZW5jeSIsc3VidGl0bGU6IihUb3AgJXt0b3B9IGJ5IE1hcmtldCBDYXApIixwb3dlcmVkX2J5OiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguJTguYnguKfguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LHJhbmRvbV9jb2luX3dpZGdldDp7ZGlzY2xhaW1lcjoiRGlzY2xhaW1lcjogVGhpcyB0b29scyBzZXJ2ZSBhcyBhbiBlbnRlcnRhaW5tZW50IGFuZCBkb2VzIG5vdCBjb25zdGl0dXRlIGZpbmFuY2lhbCBhZHZpY2UuIixzcGluOiJTcGluIn0sY29pbl9kYWlseV9wcmljZV93aWRnZXQ6e3RpdGxlOiJDb2luR2Vja28gUHJpY2UgVXBkYXRlIix0b3RhbF9tY2FwOiJUb3RhbCBNIGNhcCIsIjI0aF92b2wiOiLguJvguKPguLTguKHguLLguJMgMjQg4LiK4LihLiIsZG9tOiJEb20ifSxjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQ6e2V4Y2hhbmdlOiLguYHguKXguIHguYDguJvguKXguLXguYjguKLguJkiLHBhaXI6IuC4iOC4seC4muC4hOC4ueC5iCIscHJpY2U6IuC4o+C4suC4hOC4siIsdm9sdW1lOiLguJvguKPguLTguKHguLLguJMiLHRydXN0X3Njb3JlOiLguITguLDguYHguJnguJnguITguKfguLLguKHguYDguIrguLfguYjguK3guKHguLHguYjguJkiLHZpZXdfcHJpY2VfY2hhcnQ6IuC4lOC4ueC4geC4o+C4suC4n+C4o+C4suC4hOC4siIscG93ZXJlZF9ieToi4LiC4Lix4Lia4LmA4LiE4Lil4Li34LmI4Lit4LiZ4LiU4LmJ4Lin4LiiICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLHZpZXdfYWxsOiJWaWV3IGFsbCAle2NvaW59IG1hcmtldHMifX19LCI4NmNjIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiY2I3YyIpLG89bigiYzY5YSIpLGk9bigiNmE5OSIpLGE9T2JqZWN0LmRlZmluZVByb3BlcnR5O3QuZj1uKCI5ZTFlIik/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKGUsdCxuKXtpZihyKGUpLHQ9aSh0LCEwKSxyKG4pLG8pdHJ5e3JldHVybiBhKGUsdCxuKX1jYXRjaChjKXt9aWYoImdldCJpbiBufHwic2V0ImluIG4pdGhyb3cgVHlwZUVycm9yKCJBY2Nlc3NvcnMgbm90IHN1cHBvcnRlZCEiKTtyZXR1cm4idmFsdWUiaW4gbiYmKGVbdF09bi52YWx1ZSksZX19LCI4OWIyIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9e2NvaW5fZGV0YWlsczp7bWNhcF9yYW5rOiJPY2VuYSB3Zy4ga2FwaXRhbGl6YWNqaSByeW5rdSIsbWNhcDoiS2FwaXRhbGl6YWNqYSByeW5rb3dhIiwiMjRoX3ZvbHVtZSI6IldvbHVtZW4g4oCTIDI0IGdvZHouIiwiMjRoX2hpZ2hfbG93IjoiMjRIIEhpZ2gvTG93In0sY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldDp7cG93ZXJlZF9ieToiVHJlxZvEhyBkb3N0YXJjem9uYSBwcnpleiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IixjcnlwdG9fcHJpY2VfY29tcGFyaXNvbjoiUG9yw7N3bmFuaWUgY2VuIGtyeXB0b3dhbHV0IixjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uOiJQb3LDs3duYW5pZSBkb21pbmFjamkgdyBrYXBpdGFsaXphY2ppIHJ5bmt1IGtyeXB0b3dhbHV0In0sY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ontwb3dlcmVkX2J5OiJUcmXFm8SHIGRvc3RhcmN6b25hIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3ByaWNlX2NoYXJ0X3dpZGdldDp7IjI0aF9oaWdoIjoiMjQgZ29kei4g4oCTIG1ha3MuIiwiMjRoX2xvdyI6IjI0IGdvZHouIOKAkyBtaW4uIix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IlRyZcWbxIcgZG9zdGFyY3pvbmEgcHJ6ZXogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQ6e3Bvd2VyZWRfYnk6IlRyZcWbxIcgZG9zdGFyY3pvbmEgcHJ6ZXogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fbGlzdF93aWRnZXQ6e3Bvd2VyZWRfYnk6IlRyZcWbxIcgZG9zdGFyY3pvbmEgcHJ6ZXogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGJlYW1fd2lkZ2V0Ontwb3dlcmVkX2J5OiJUcmXFm8SHIGRvc3RhcmN6b25hIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3RpY2tlcl93aWRnZXQ6eyIyNGhfaGlnaCI6IjI0IGdvZHouIOKAkyBtYWtzLiIsIjI0aF9sb3ciOiIyNCBnb2R6LiDigJMgbWluLiIsdmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiJUcmXFm8SHIGRvc3RhcmN6b25hIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2NvbnZlcnRlcl93aWRnZXQ6e3ZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiVHJlxZvEhyBkb3N0YXJjem9uYSBwcnpleiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9oZWF0bWFwX3dpZGdldDp7dGl0bGU6IkRyemV3byBrcnlwdG93YWx1dCIsc3VidGl0bGU6IihUb3AgJXt0b3B9IGJ5IE1hcmtldCBDYXApIixwb3dlcmVkX2J5OiJUcmXFm8SHIGRvc3RhcmN6b25hIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxyYW5kb21fY29pbl93aWRnZXQ6e2Rpc2NsYWltZXI6IkRpc2NsYWltZXI6IFRoaXMgdG9vbHMgc2VydmUgYXMgYW4gZW50ZXJ0YWlubWVudCBhbmQgZG9lcyBub3QgY29uc3RpdHV0ZSBmaW5hbmNpYWwgYWR2aWNlLiIsc3BpbjoiU3BpbiJ9LGNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ont0aXRsZToiQ29pbkdlY2tvIFByaWNlIFVwZGF0ZSIsdG90YWxfbWNhcDoiVG90YWwgTSBjYXAiLCIyNGhfdm9sIjoiV29sdW1lbiDigJMgMjQgZ29kei4iLGRvbToiRG9tIn0sY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0OntleGNoYW5nZToiR2llxYJkYSIscGFpcjoiUGFyYSIscHJpY2U6Ikt1cnMiLHZvbHVtZToiV29sdW1lbiIsdHJ1c3Rfc2NvcmU6Ild5bmlrIHphdWZhbmlhIix2aWV3X3ByaWNlX2NoYXJ0OiJXecWbd2lldGwgd3lrcmVzIGNlbnkiLHBvd2VyZWRfYnk6IlRyZcWbxIcgZG9zdGFyY3pvbmEgcHJ6ZXogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsdmlld19hbGw6IlZpZXcgYWxsICV7Y29pbn0gbWFya2V0cyJ9fX0sIjhhMTIiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkYTNjIiksbz1yLm5hdmlnYXRvcjtlLmV4cG9ydHM9byYmby51c2VyQWdlbnR8fCIifSwiOGI5NyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQzZjQiKSxvPW4oImNiN2MiKSxpPWZ1bmN0aW9uKGUsdCl7aWYobyhlKSwhcih0KSYmbnVsbCE9PXQpdGhyb3cgVHlwZUVycm9yKHQrIjogY2FuJ3Qgc2V0IGFzIHByb3RvdHlwZSEiKX07ZS5leHBvcnRzPXtzZXQ6T2JqZWN0LnNldFByb3RvdHlwZU9mfHwoIl9fcHJvdG9fXyJpbnt9P2Z1bmN0aW9uKGUsdCxyKXt0cnl7cj1uKCI5YjQzIikoRnVuY3Rpb24uY2FsbCxuKCIxMWU5IikuZihPYmplY3QucHJvdG90eXBlLCJfX3Byb3RvX18iKS5zZXQsMikscihlLFtdKSx0PSEoZSBpbnN0YW5jZW9mIEFycmF5KX1jYXRjaChvKXt0PSEwfXJldHVybiBmdW5jdGlvbihlLG4pe3JldHVybiBpKGUsbiksdD9lLl9fcHJvdG9fXz1uOnIoZSxuKSxlfX0oe30sITEpOnZvaWQgMCksY2hlY2s6aX19LCI4YmFiIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNmUxZiIpO2UuZXhwb3J0cz1PYmplY3QoInoiKS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgwKT9PYmplY3Q6ZnVuY3Rpb24oZSl7cmV0dXJuIlN0cmluZyI9PXIoZSk/ZS5zcGxpdCgiIik6T2JqZWN0KGUpfX0sIjhjZTAiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIzYWRjIiksbz1uKCJmODQ1Iik7ZS5leHBvcnRzPW4oIjdkOTUiKT9mdW5jdGlvbihlLHQsbil7cmV0dXJuIHIuZihlLHQsbygxLG4pKX06ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBlW3RdPW4sZX19LDkwOTM6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImNlMTAiKSxvPW4oImUxMWUiKS5jb25jYXQoImxlbmd0aCIsInByb3RvdHlwZSIpO3QuZj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lc3x8ZnVuY3Rpb24oZSl7cmV0dXJuIHIoZSxvKX19LCI5M2M0IjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjJhNGUiKSghMCk7bigiZTRhOSIpKFN0cmluZywiU3RyaW5nIixmdW5jdGlvbihlKXt0aGlzLl90PVN0cmluZyhlKSx0aGlzLl9pPTB9LGZ1bmN0aW9uKCl7dmFyIGUsdD10aGlzLl90LG49dGhpcy5faTtyZXR1cm4gbj49dC5sZW5ndGg/e3ZhbHVlOnZvaWQgMCxkb25lOiEwfTooZT1yKHQsbiksdGhpcy5faSs9ZS5sZW5ndGgse3ZhbHVlOmUsZG9uZTohMX0pfSl9LCI5YTUxIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDEzZiIpO3Ioci5TK3IuRiwiT2JqZWN0Iix7YXNzaWduOm4oIjllNDQiKX0pfSwiOWI0MyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQ4ZTgiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe2lmKHIoZSksdm9pZCAwPT09dClyZXR1cm4gZTtzd2l0Y2gobil7Y2FzZSAxOnJldHVybiBmdW5jdGlvbihuKXtyZXR1cm4gZS5jYWxsKHQsbil9O2Nhc2UgMjpyZXR1cm4gZnVuY3Rpb24obixyKXtyZXR1cm4gZS5jYWxsKHQsbixyKX07Y2FzZSAzOnJldHVybiBmdW5jdGlvbihuLHIsbyl7cmV0dXJuIGUuY2FsbCh0LG4scixvKX19cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGUuYXBwbHkodCxhcmd1bWVudHMpfX19LCI5YzZjIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMmI0YyIpKCJ1bnNjb3BhYmxlcyIpLG89QXJyYXkucHJvdG90eXBlO3ZvaWQgMD09b1tyXSYmbigiMzJlOSIpKG8scix7fSksZS5leHBvcnRzPWZ1bmN0aW9uKGUpe29bcl1bZV09ITB9fSwiOWM4MCI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybntlOiExLHY6ZSgpfX1jYXRjaCh0KXtyZXR1cm57ZTohMCx2OnR9fX19LCI5YzkzIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMGY4OSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixvKXt0cnl7cmV0dXJuIG8/dChyKG4pWzBdLG5bMV0pOnQobil9Y2F0Y2goYSl7dmFyIGk9ZVsicmV0dXJuIl07dGhyb3cgdm9pZCAwIT09aSYmcihpLmNhbGwoZSkpLGF9fX0sIjlkZWYiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI0NTg4Iiksbz1NYXRoLm1pbjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGU+MD9vKHIoZSksOTAwNzE5OTI1NDc0MDk5MSk6MH19LCI5ZTFlIjpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPSFuKCI3OWU1IikoZnVuY3Rpb24oKXtyZXR1cm4gNyE9T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSkuYX0pfSwiOWU0NCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCI3NjMzIiksbz1uKCIzMWMyIiksaT1uKCJkNzRlIiksYT1uKCIwMTg1IiksYz1uKCI4YmFiIikscz1PYmplY3QuYXNzaWduO2UuZXhwb3J0cz0hc3x8bigiZDc4MiIpKGZ1bmN0aW9uKCl7dmFyIGU9e30sdD17fSxuPVN5bWJvbCgpLHI9ImFiY2RlZmdoaWprbG1ub3BxcnN0IjtyZXR1cm4gZVtuXT03LHIuc3BsaXQoIiIpLmZvckVhY2goZnVuY3Rpb24oZSl7dFtlXT1lfSksNyE9cyh7fSxlKVtuXXx8T2JqZWN0LmtleXMocyh7fSx0KSkuam9pbigiIikhPXJ9KT9mdW5jdGlvbihlLHQpe3ZhciBuPWEoZSkscz1hcmd1bWVudHMubGVuZ3RoLHU9MSxsPW8uZixwPWkuZjt3aGlsZShzPnUpe3ZhciBmLGQ9Yyhhcmd1bWVudHNbdSsrXSksaD1sP3IoZCkuY29uY2F0KGwoZCkpOnIoZCksXz1oLmxlbmd0aCxtPTA7d2hpbGUoXz5tKXAuY2FsbChkLGY9aFttKytdKSYmKG5bZl09ZFtmXSl9cmV0dXJuIG59OnN9LGEwZDM6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCIwZjdjIik7ZS5leHBvcnRzPXIuY2FsbChGdW5jdGlvbi5jYWxsLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkpfSxhMjVmOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI3NzI2Iiksbz1yLm5hdmlnYXRvcjtlLmV4cG9ydHM9byYmby51c2VyQWdlbnR8fCIifSxhMzA2OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz17Y29pbl9kZXRhaWxzOnttY2FwX3Jhbms6IkNsYXNpZmljYWNpw7NuIGRlIGNhcGl0YWxpemFjacOzbiBkZSBtZXJjYWRvIixtY2FwOiJDYXAuIGRlIG1lcmNhZG8iLCIyNGhfdm9sdW1lIjoiVm9sdW1lbiBlbiAyNMKgaCIsIjI0aF9oaWdoX2xvdyI6IjI0SCBIaWdoL0xvdyJ9LGNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQ6e3Bvd2VyZWRfYnk6IkNvbiB0ZWNub2xvZ8OtYSBkZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IixjcnlwdG9fcHJpY2VfY29tcGFyaXNvbjoiQ29tcGFyYWNpw7NuIGRlIHByZWNpb3MgZGUgY3JpcHRvbW9uZWRhcyIsY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbjoiQ29tcGFyYWNpw7NuIGRlIGxhIGNhcGl0YWxpemFjacOzbiBkZSBtZXJjYWRvIGRlIGxhcyBjcmlwdG9tb25lZGFzIn0sY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ontwb3dlcmVkX2J5OiJDb24gdGVjbm9sb2fDrWEgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0OnsiMjRoX2hpZ2giOiJNw6F4aW1vIGVuIDI0IGgiLCIyNGhfbG93IjoiTcOtbmltbyBlbiAyNCBoIix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IkNvbiB0ZWNub2xvZ8OtYSBkZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldDp7cG93ZXJlZF9ieToiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2xpc3Rfd2lkZ2V0Ontwb3dlcmVkX2J5OiJDb24gdGVjbm9sb2fDrWEgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGJlYW1fd2lkZ2V0Ontwb3dlcmVkX2J5OiJDb24gdGVjbm9sb2fDrWEgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fdGlja2VyX3dpZGdldDp7IjI0aF9oaWdoIjoiTcOheGltbyBlbiAyNCBoIiwiMjRoX2xvdyI6Ik3DrW5pbW8gZW4gMjQgaCIsdmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiJDb24gdGVjbm9sb2fDrWEgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fY29udmVydGVyX3dpZGdldDp7dmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiJDb24gdGVjbm9sb2fDrWEgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5faGVhdG1hcF93aWRnZXQ6e3RpdGxlOiJNYXBhIGRlIMOhcmJvbCBkZSBjcmlwdG9tb25lZGFzIixzdWJ0aXRsZToiKFRvcCAle3RvcH0gYnkgTWFya2V0IENhcCkiLHBvd2VyZWRfYnk6IkNvbiB0ZWNub2xvZ8OtYSBkZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0scmFuZG9tX2NvaW5fd2lkZ2V0OntkaXNjbGFpbWVyOiJEaXNjbGFpbWVyOiBUaGlzIHRvb2xzIHNlcnZlIGFzIGFuIGVudGVydGFpbm1lbnQgYW5kIGRvZXMgbm90IGNvbnN0aXR1dGUgZmluYW5jaWFsIGFkdmljZS4iLHNwaW46IlNwaW4ifSxjb2luX2RhaWx5X3ByaWNlX3dpZGdldDp7dGl0bGU6IkNvaW5HZWNrbyBQcmljZSBVcGRhdGUiLHRvdGFsX21jYXA6IlRvdGFsIE0gY2FwIiwiMjRoX3ZvbCI6IlZvbHVtZW4gZW4gMjTCoGgiLGRvbToiRG9tIn0sY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0OntleGNoYW5nZToiSW50ZXJjYW1iaW9zIixwYWlyOiJQYXIiLHByaWNlOiJQcmVjaW8iLHZvbHVtZToiVm9sdW1lbiIsdHJ1c3Rfc2NvcmU6IlRydXN0IFNjb3JlIix2aWV3X3ByaWNlX2NoYXJ0OiJWZXIgdGFibGEgZGUgcHJlY2lvcyIscG93ZXJlZF9ieToiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLHZpZXdfYWxsOiJWaWV3IGFsbCAle2NvaW59IG1hcmtldHMifX19LGE0N2Y6ZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz0hbigiN2Q5NSIpJiYhbigiZDc4MiIpKGZ1bmN0aW9uKCl7cmV0dXJuIDchPU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuKCIxMmZkIikoImRpdiIpLCJhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSkuYX0pfSxhNDgxOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiY2I3YyIpLG89bigiNGJmOCIpLGk9bigiOWRlZiIpLGE9bigiNDU4OCIpLGM9bigiMDM5MCIpLHM9bigiNWYxYiIpLHU9TWF0aC5tYXgsbD1NYXRoLm1pbixwPU1hdGguZmxvb3IsZj0vXCQoWyQmYCddfFxkXGQ/fDxbXj5dKj4pL2csZD0vXCQoWyQmYCddfFxkXGQ/KS9nLGg9ZnVuY3Rpb24oZSl7cmV0dXJuIHZvaWQgMD09PWU/ZTpTdHJpbmcoZSl9O24oIjIxNGYiKSgicmVwbGFjZSIsMixmdW5jdGlvbihlLHQsbixfKXtyZXR1cm5bZnVuY3Rpb24ocixvKXt2YXIgaT1lKHRoaXMpLGE9dm9pZCAwPT1yP3ZvaWQgMDpyW3RdO3JldHVybiB2b2lkIDAhPT1hP2EuY2FsbChyLGksbyk6bi5jYWxsKFN0cmluZyhpKSxyLG8pfSxmdW5jdGlvbihlLHQpe3ZhciBvPV8obixlLHRoaXMsdCk7aWYoby5kb25lKXJldHVybiBvLnZhbHVlO3ZhciBwPXIoZSksZj1TdHJpbmcodGhpcyksZD0iZnVuY3Rpb24iPT09dHlwZW9mIHQ7ZHx8KHQ9U3RyaW5nKHQpKTt2YXIgdj1wLmdsb2JhbDtpZih2KXt2YXIgeT1wLnVuaWNvZGU7cC5sYXN0SW5kZXg9MH12YXIgZz1bXTt3aGlsZSgxKXt2YXIgYj1zKHAsZik7aWYobnVsbD09PWIpYnJlYWs7aWYoZy5wdXNoKGIpLCF2KWJyZWFrO3ZhciB3PVN0cmluZyhiWzBdKTsiIj09PXcmJihwLmxhc3RJbmRleD1jKGYsaShwLmxhc3RJbmRleCkseSkpfWZvcih2YXIgeD0iIixDPTAsaz0wO2s8Zy5sZW5ndGg7aysrKXtiPWdba107Zm9yKHZhciBTPVN0cmluZyhiWzBdKSxQPXUobChhKGIuaW5kZXgpLGYubGVuZ3RoKSwwKSxBPVtdLE89MTtPPGIubGVuZ3RoO08rKylBLnB1c2goaChiW09dKSk7dmFyICQ9Yi5ncm91cHM7aWYoZCl7dmFyIFQ9W1NdLmNvbmNhdChBLFAsZik7dm9pZCAwIT09JCYmVC5wdXNoKCQpO3ZhciBqPVN0cmluZyh0LmFwcGx5KHZvaWQgMCxUKSl9ZWxzZSBqPW0oUyxmLFAsQSwkLHQpO1A+PUMmJih4Kz1mLnNsaWNlKEMsUCkraixDPVArUy5sZW5ndGgpfXJldHVybiB4K2Yuc2xpY2UoQyl9XTtmdW5jdGlvbiBtKGUsdCxyLGksYSxjKXt2YXIgcz1yK2UubGVuZ3RoLHU9aS5sZW5ndGgsbD1kO3JldHVybiB2b2lkIDAhPT1hJiYoYT1vKGEpLGw9Ziksbi5jYWxsKGMsbCxmdW5jdGlvbihuLG8pe3ZhciBjO3N3aXRjaChvLmNoYXJBdCgwKSl7Y2FzZSIkIjpyZXR1cm4iJCI7Y2FzZSImIjpyZXR1cm4gZTtjYXNlImAiOnJldHVybiB0LnNsaWNlKDAscik7Y2FzZSInIjpyZXR1cm4gdC5zbGljZShzKTtjYXNlIjwiOmM9YVtvLnNsaWNlKDEsLTEpXTticmVhaztkZWZhdWx0OnZhciBsPStvO2lmKDA9PT1sKXJldHVybiBuO2lmKGw+dSl7dmFyIGY9cChsLzEwKTtyZXR1cm4gMD09PWY/bjpmPD11P3ZvaWQgMD09PWlbZi0xXT9vLmNoYXJBdCgxKTppW2YtMV0rby5jaGFyQXQoMSk6bn1jPWlbbC0xXX1yZXR1cm4gdm9pZCAwPT09Yz8iIjpjfSl9fSl9LGE0YmI6ZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKCJmZGE2Iil9LGE1YWI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImE4MTIiKSxvPU1hdGgubWluO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gZT4wP28ocihlKSw5MDA3MTk5MjU0NzQwOTkxKTowfX0sYTViODpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImQ4ZTgiKTtmdW5jdGlvbiBvKGUpe3ZhciB0LG47dGhpcy5wcm9taXNlPW5ldyBlKGZ1bmN0aW9uKGUscil7aWYodm9pZCAwIT09dHx8dm9pZCAwIT09bil0aHJvdyBUeXBlRXJyb3IoIkJhZCBQcm9taXNlIGNvbnN0cnVjdG9yIik7dD1lLG49cn0pLHRoaXMucmVzb2x2ZT1yKHQpLHRoaXMucmVqZWN0PXIobil9ZS5leHBvcnRzLmY9ZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBvKGUpfX0sYTdkMzpmdW5jdGlvbihlLHQpe3ZhciBuPWUuZXhwb3J0cz17dmVyc2lvbjoiMi42LjEifTsibnVtYmVyIj09dHlwZW9mIF9fZSYmKF9fZT1uKX0sYTgxMjpmdW5jdGlvbihlLHQpe3ZhciBuPU1hdGguY2VpbCxyPU1hdGguZmxvb3I7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBpc05hTihlPStlKT8wOihlPjA/cjpuKShlKX19LGFhNzc6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjVjYTEiKSxvPW4oImJlMTMiKSxpPW4oIjc5ZTUiKSxhPW4oImZkZWYiKSxjPSJbIithKyJdIixzPSLigIvChSIsdT1SZWdFeHAoIl4iK2MrYysiKiIpLGw9UmVnRXhwKGMrYysiKiQiKSxwPWZ1bmN0aW9uKGUsdCxuKXt2YXIgbz17fSxjPWkoZnVuY3Rpb24oKXtyZXR1cm4hIWFbZV0oKXx8c1tlXSgpIT1zfSksdT1vW2VdPWM/dChmKTphW2VdO24mJihvW25dPXUpLHIoci5QK3IuRipjLCJTdHJpbmciLG8pfSxmPXAudHJpbT1mdW5jdGlvbihlLHQpe3JldHVybiBlPVN0cmluZyhvKGUpKSwxJnQmJihlPWUucmVwbGFjZSh1LCIiKSksMiZ0JiYoZT1lLnJlcGxhY2UobCwiIikpLGV9O2UuZXhwb3J0cz1wfSxhYWUzOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkM2Y0Iiksbz1uKCIyZDk1IiksaT1uKCIyYjRjIikoIm1hdGNoIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiByKGUpJiYodm9pZCAwIT09KHQ9ZVtpXSk/ISF0OiJSZWdFeHAiPT1vKGUpKX19LGFjNmE6ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj1uKCJjYWRmIiksbz1uKCIwZDU4IiksaT1uKCIyYWJhIiksYT1uKCI3NzI2IiksYz1uKCIzMmU5Iikscz1uKCI4NGYyIiksdT1uKCIyYjRjIiksbD11KCJpdGVyYXRvciIpLHA9dSgidG9TdHJpbmdUYWciKSxmPXMuQXJyYXksZD17Q1NTUnVsZUxpc3Q6ITAsQ1NTU3R5bGVEZWNsYXJhdGlvbjohMSxDU1NWYWx1ZUxpc3Q6ITEsQ2xpZW50UmVjdExpc3Q6ITEsRE9NUmVjdExpc3Q6ITEsRE9NU3RyaW5nTGlzdDohMSxET01Ub2tlbkxpc3Q6ITAsRGF0YVRyYW5zZmVySXRlbUxpc3Q6ITEsRmlsZUxpc3Q6ITEsSFRNTEFsbENvbGxlY3Rpb246ITEsSFRNTENvbGxlY3Rpb246ITEsSFRNTEZvcm1FbGVtZW50OiExLEhUTUxTZWxlY3RFbGVtZW50OiExLE1lZGlhTGlzdDohMCxNaW1lVHlwZUFycmF5OiExLE5hbWVkTm9kZU1hcDohMSxOb2RlTGlzdDohMCxQYWludFJlcXVlc3RMaXN0OiExLFBsdWdpbjohMSxQbHVnaW5BcnJheTohMSxTVkdMZW5ndGhMaXN0OiExLFNWR051bWJlckxpc3Q6ITEsU1ZHUGF0aFNlZ0xpc3Q6ITEsU1ZHUG9pbnRMaXN0OiExLFNWR1N0cmluZ0xpc3Q6ITEsU1ZHVHJhbnNmb3JtTGlzdDohMSxTb3VyY2VCdWZmZXJMaXN0OiExLFN0eWxlU2hlZXRMaXN0OiEwLFRleHRUcmFja0N1ZUxpc3Q6ITEsVGV4dFRyYWNrTGlzdDohMSxUb3VjaExpc3Q6ITF9LGg9byhkKSxfPTA7XzxoLmxlbmd0aDtfKyspe3ZhciBtLHY9aFtfXSx5PWRbdl0sZz1hW3ZdLGI9ZyYmZy5wcm90b3R5cGU7aWYoYiYmKGJbbF18fGMoYixsLGYpLGJbcF18fGMoYixwLHYpLHNbdl09Zix5KSlmb3IobSBpbiByKWJbbV18fGkoYixtLHJbbV0sITApfX0sYWNlZDpmdW5jdGlvbihlKXtlLmV4cG9ydHM9e2NvaW5fZGV0YWlsczp7bWNhcF9yYW5rOiJY4bq/cCBo4bqhbmcgVuG7kW4gaMOzYSB0aOG7iyB0csaw4budbmciLG1jYXA6Ikdpw6EgdHLhu4sgduG7kW4gaMOzYSB0aOG7iyB0csaw4budbmciLCIyNGhfdm9sdW1lIjoiS2jhu5FpIGzGsOG7o25nIHRyb25nIDI0aCIsIjI0aF9oaWdoX2xvdyI6IjI0SCBIaWdoL0xvdyJ9LGNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQ6e3Bvd2VyZWRfYnk6IsSQxrDhu6NjIGjhu5cgdHLhu6MgYuG7n2kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsY3J5cHRvX3ByaWNlX2NvbXBhcmlzb246IlNvIHPDoW5oIGdpw6EgdGnhu4FuIG3DoyBow7NhIixjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uOiJTbyBzw6FuaCB24buRbiBow7NhIHRo4buLIHRyxrDhu51uZyB0aeG7gW4gbcOjIGjDs2EifSxjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQ6e3Bvd2VyZWRfYnk6IsSQxrDhu6NjIGjhu5cgdHLhu6MgYuG7n2kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0OnsiMjRoX2hpZ2giOiJDYW8gdHJvbmcgMjRIIiwiMjRoX2xvdyI6IlRo4bqlcCB0cm9uZyAyNEgiLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToixJDGsOG7o2MgaOG7lyB0cuG7oyBi4bufaSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldDp7cG93ZXJlZF9ieToixJDGsOG7o2MgaOG7lyB0cuG7oyBi4bufaSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9saXN0X3dpZGdldDp7cG93ZXJlZF9ieToixJDGsOG7o2MgaOG7lyB0cuG7oyBi4bufaSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sYmVhbV93aWRnZXQ6e3Bvd2VyZWRfYnk6IsSQxrDhu6NjIGjhu5cgdHLhu6MgYuG7n2kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fdGlja2VyX3dpZGdldDp7IjI0aF9oaWdoIjoiQ2FvIHRyb25nIDI0SCIsIjI0aF9sb3ciOiJUaOG6pXAgdHJvbmcgMjRIIix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IsSQxrDhu6NjIGjhu5cgdHLhu6MgYuG7n2kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fY29udmVydGVyX3dpZGdldDp7dmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2hlYXRtYXBfd2lkZ2V0Ont0aXRsZToiU8ahIMSR4buTIGPDonkgVGnhu4FuIG3DoyBow7NhIixzdWJ0aXRsZToiKFRvcCAle3RvcH0gYnkgTWFya2V0IENhcCkiLHBvd2VyZWRfYnk6IsSQxrDhu6NjIGjhu5cgdHLhu6MgYuG7n2kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LHJhbmRvbV9jb2luX3dpZGdldDp7ZGlzY2xhaW1lcjoiRGlzY2xhaW1lcjogVGhpcyB0b29scyBzZXJ2ZSBhcyBhbiBlbnRlcnRhaW5tZW50IGFuZCBkb2VzIG5vdCBjb25zdGl0dXRlIGZpbmFuY2lhbCBhZHZpY2UuIixzcGluOiJTcGluIn0sY29pbl9kYWlseV9wcmljZV93aWRnZXQ6e3RpdGxlOiJDb2luR2Vja28gUHJpY2UgVXBkYXRlIix0b3RhbF9tY2FwOiJUb3RhbCBNIGNhcCIsIjI0aF92b2wiOiJLaOG7kWkgbMaw4bujbmcgdHJvbmcgMjRoIixkb206IkRvbSJ9LGNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldDp7ZXhjaGFuZ2U6IlPDoG4gZ2lhbyBk4buLY2giLHBhaXI6IkPhurdwIixwcmljZToiR2nDoSIsdm9sdW1lOiJLaOG7kWkgbMaw4bujbmciLHRydXN0X3Njb3JlOiLEkGnhu4NtIHRpbiBj4bqteSIsdmlld19wcmljZV9jaGFydDoiWGVtIGJp4buDdSDEkeG7kyBnacOhIixwb3dlcmVkX2J5OiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLHZpZXdfYWxsOiJWaWV3IGFsbCAle2NvaW59IG1hcmtldHMifX19LGFmMDg6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPXtjb2luX2RldGFpbHM6e21jYXBfcmFuazoi2KrYtdmG2YrZgSDYp9mE2YLZitmF2Kkg2KfZhNiz2YjZgtmK2KkiLG1jYXA6Itin2YTZgtmK2YXYqSDYp9mE2LPZiNmC2YrYqSIsIjI0aF92b2x1bWUiOiLYrdis2YUgMjQg2LPYp9i52KkiLCIyNGhfaGlnaF9sb3ciOiIyNEggSGlnaC9Mb3cifSxjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ontwb3dlcmVkX2J5OiLYqNix2LnYp9mK2KkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsY3J5cHRvX3ByaWNlX2NvbXBhcmlzb246ItmF2YLYp9ix2YbYqSDYo9iz2LnYp9ixINin2YTYudmF2YTYqSDYp9mE2YXYtNmB2LHYqSIsY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbjoi2YXZgtin2LHZhtipINiz2YLZgSDYo9iz2LnYp9ixINiz2YjZgiDYp9mE2LnZhdmE2KfYqiDYp9mE2YXYtNmB2LHYqSJ9LGNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldDp7cG93ZXJlZF9ieToi2KjYsdi52KfZitipICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3ByaWNlX2NoYXJ0X3dpZGdldDp7IjI0aF9oaWdoIjoi2KfYsdiq2YHYp9i5INi52YTZiSDZhdiv2KfYsSAyNCDYs9in2LnYqSIsIjI0aF9sb3ciOiLYp9mG2K7Zgdin2LYg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6Itio2LHYudin2YrYqSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldDp7cG93ZXJlZF9ieToi2KjYsdi52KfZitipICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2xpc3Rfd2lkZ2V0Ontwb3dlcmVkX2J5OiLYqNix2LnYp9mK2KkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGJlYW1fd2lkZ2V0Ontwb3dlcmVkX2J5OiLYqNix2LnYp9mK2KkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fdGlja2VyX3dpZGdldDp7IjI0aF9oaWdoIjoi2KfYsdiq2YHYp9i5INi52YTZiSDZhdiv2KfYsSAyNCDYs9in2LnYqSIsIjI0aF9sb3ciOiLYp9mG2K7Zgdin2LYg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6Itio2LHYudin2YrYqSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ont2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6Itio2LHYudin2YrYqSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9oZWF0bWFwX3dpZGdldDp7dGl0bGU6Itiu2LHZiti32Kkg2LTYrNix2Kkg2KfZhNi52YXZhNin2Kog2KfZhNmF2LTZgdix2KkiLHN1YnRpdGxlOiIoVG9wICV7dG9wfSBieSBNYXJrZXQgQ2FwKSIscG93ZXJlZF9ieToi2KjYsdi52KfZitipICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxyYW5kb21fY29pbl93aWRnZXQ6e2Rpc2NsYWltZXI6IkRpc2NsYWltZXI6IFRoaXMgdG9vbHMgc2VydmUgYXMgYW4gZW50ZXJ0YWlubWVudCBhbmQgZG9lcyBub3QgY29uc3RpdHV0ZSBmaW5hbmNpYWwgYWR2aWNlLiIsc3BpbjoiU3BpbiJ9LGNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ont0aXRsZToiQ29pbkdlY2tvIFByaWNlIFVwZGF0ZSIsdG90YWxfbWNhcDoiVG90YWwgTSBjYXAiLCIyNGhfdm9sIjoi2K3YrNmFIDI0INiz2KfYudipIixkb206IkRvbSJ9LGNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldDp7ZXhjaGFuZ2U6Itio2YjYsdi12KkiLHBhaXI6Itiy2YjYrCIscHJpY2U6Itin2YTYs9i52LEiLHZvbHVtZToi2K3YrNmFINin2YTYqtiv2KfZiNmEIix0cnVzdF9zY29yZToi2YbYqtmK2KzYqSDYp9mE2YXZiNir2YjZgtmK2KkiLHZpZXdfcHJpY2VfY2hhcnQ6Iti52LHYtiDZhdiu2LfYtyDYp9mE2LPYudixIixwb3dlcmVkX2J5OiLYqNix2LnYp9mK2KkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsdmlld19hbGw6IlZpZXcgYWxsICV7Y29pbn0gbWFya2V0cyJ9fX0sYWYxNDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIixmdW5jdGlvbigpe3JldHVybiByfSk7bigiNzYxOCIpO2Z1bmN0aW9uIHIoKXtyZXR1cm4gbnVsbCE9ZG9jdW1lbnQuaGVhZC5hdHRhY2hTaGFkb3cmJm51bGwhPXdpbmRvdy5jdXN0b21FbGVtZW50cyYmbnVsbCE9d2luZG93LmZldGNofX0sYjBiYzpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixyKXtpZighKGUgaW5zdGFuY2VvZiB0KXx8dm9pZCAwIT09ciYmciBpbiBlKXRocm93IFR5cGVFcnJvcihuKyI6IGluY29ycmVjdCBpbnZvY2F0aW9uISIpO3JldHVybiBlfX0sYjBjNTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjUyMGEiKTtuKCI1Y2ExIikoe3RhcmdldDoiUmVnRXhwIixwcm90bzohMCxmb3JjZWQ6ciE9PS8uLy5leGVjfSx7ZXhlYzpyfSl9LGIyMmE6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9e319LGIyNTg6ZnVuY3Rpb24oZSx0LG4pe24oImQyNTYiKSxuKCIxMmZkOSIpLG4oImQxMjciKSxuKCJkMjRmIiksZS5leHBvcnRzPW4oImE3ZDMiKS5TeW1ib2x9LGIzZTc6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oKXt9fSxiM2ZkOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiZjM2NyIpLG89bigiMWI3ZiIpO2UuZXhwb3J0cz1mdW5jdGlvbigpe3ZhciBlPW8oKTtyZXR1cm4gcihTdHJpbmcucHJvdG90eXBlLHt0cmltOmV9LHt0cmltOmZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZy5wcm90b3R5cGUudHJpbSE9PWV9fSksZX19LGI0MmM6ZnVuY3Rpb24oZSx0LG4pe24oImZhNTQiKTtmb3IodmFyIHI9bigiZGEzYyIpLG89bigiOGNlMCIpLGk9bigiYjIyYSIpLGE9bigiMWI1NSIpKCJ0b1N0cmluZ1RhZyIpLGM9IkNTU1J1bGVMaXN0LENTU1N0eWxlRGVjbGFyYXRpb24sQ1NTVmFsdWVMaXN0LENsaWVudFJlY3RMaXN0LERPTVJlY3RMaXN0LERPTVN0cmluZ0xpc3QsRE9NVG9rZW5MaXN0LERhdGFUcmFuc2Zlckl0ZW1MaXN0LEZpbGVMaXN0LEhUTUxBbGxDb2xsZWN0aW9uLEhUTUxDb2xsZWN0aW9uLEhUTUxGb3JtRWxlbWVudCxIVE1MU2VsZWN0RWxlbWVudCxNZWRpYUxpc3QsTWltZVR5cGVBcnJheSxOYW1lZE5vZGVNYXAsTm9kZUxpc3QsUGFpbnRSZXF1ZXN0TGlzdCxQbHVnaW4sUGx1Z2luQXJyYXksU1ZHTGVuZ3RoTGlzdCxTVkdOdW1iZXJMaXN0LFNWR1BhdGhTZWdMaXN0LFNWR1BvaW50TGlzdCxTVkdTdHJpbmdMaXN0LFNWR1RyYW5zZm9ybUxpc3QsU291cmNlQnVmZmVyTGlzdCxTdHlsZVNoZWV0TGlzdCxUZXh0VHJhY2tDdWVMaXN0LFRleHRUcmFja0xpc3QsVG91Y2hMaXN0Ii5zcGxpdCgiLCIpLHM9MDtzPGMubGVuZ3RoO3MrKyl7dmFyIHU9Y1tzXSxsPXJbdV0scD1sJiZsLnByb3RvdHlwZTtwJiYhcFthXSYmbyhwLGEsdSksaVt1XT1pLkFycmF5fX0sYjQ1NzpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz0hMH0sYjVhYTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNmUxZiIpO2UuZXhwb3J0cz1BcnJheS5pc0FycmF5fHxmdW5jdGlvbihlKXtyZXR1cm4iQXJyYXkiPT1yKGUpfX0sYjYwNDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImQxM2YiKSxvPW4oImE3ZDMiKSxpPW4oImRhM2MiKSxhPW4oIjMwMmYiKSxjPW4oImRlY2YiKTtyKHIuUCtyLlIsIlByb21pc2UiLHtmaW5hbGx5OmZ1bmN0aW9uKGUpe3ZhciB0PWEodGhpcyxvLlByb21pc2V8fGkuUHJvbWlzZSksbj0iZnVuY3Rpb24iPT10eXBlb2YgZTtyZXR1cm4gdGhpcy50aGVuKG4/ZnVuY3Rpb24obil7cmV0dXJuIGModCxlKCkpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gbn0pfTplLG4/ZnVuY3Rpb24obil7cmV0dXJuIGModCxlKCkpLnRoZW4oZnVuY3Rpb24oKXt0aHJvdyBufSl9OmUpfX0pfSxiYjUzOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dmFyIG49ZSV0O3JldHVybiBNYXRoLmZsb29yKG4+PTA/bjpuK3QpfX0sYmMyNTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZjJmZSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7aWYocihlKSx2b2lkIDA9PT10KXJldHVybiBlO3N3aXRjaChuKXtjYXNlIDE6cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiBlLmNhbGwodCxuKX07Y2FzZSAyOnJldHVybiBmdW5jdGlvbihuLHIpe3JldHVybiBlLmNhbGwodCxuLHIpfTtjYXNlIDM6cmV0dXJuIGZ1bmN0aW9uKG4scixvKXtyZXR1cm4gZS5jYWxsKHQsbixyLG8pfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseSh0LGFyZ3VtZW50cyl9fX0sYmNhYTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiY2I3YyIpLG89bigiZDNmNCIpLGk9bigiYTViOCIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKHIoZSksbyh0KSYmdC5jb25zdHJ1Y3Rvcj09PWUpcmV0dXJuIHQ7dmFyIG49aS5mKGUpLGE9bi5yZXNvbHZlO3JldHVybiBhKHQpLG4ucHJvbWlzZX19LGJlMTM6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYodm9pZCAwPT1lKXRocm93IFR5cGVFcnJvcigiQ2FuJ3QgY2FsbCBtZXRob2Qgb24gICIrZSk7cmV0dXJuIGV9fSxjMGQ4OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIzYWRjIikuZixvPW4oIjQzYzgiKSxpPW4oIjFiNTUiKSgidG9TdHJpbmdUYWciKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe2UmJiFvKGU9bj9lOmUucHJvdG90eXBlLGkpJiZyKGUsaSx7Y29uZmlndXJhYmxlOiEwLHZhbHVlOnR9KX19LGMxNjU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQxM2YiKSxvPW4oImE3ZDMiKSxpPW4oImQ3ODIiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbj0oby5PYmplY3R8fHt9KVtlXXx8T2JqZWN0W2VdLGE9e307YVtlXT10KG4pLHIoci5TK3IuRippKGZ1bmN0aW9uKCl7bigxKX0pLCJPYmplY3QiLGEpfX0sYzFlMjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjJiMGUiKSxvPW4oIjI4OGEiKSxpPW4ubihvKSxhPW4oIjc2MTgiKSxjPW4oIjUxNzYiKSxzPW4ubihjKSx1PW4oImFmMDgiKSxsPW4oIjZjZTIiKSxwPW4oImVkZDQiKSxmPW4oImEzMDYiKSxkPW4oImY2OTMiKSxoPW4oIjIxMGMiKSxfPW4oIjA4MjUiKSxtPW4oIjA0MjMiKSx2PW4oImRkMTEiKSx5PW4oIjg5YjIiKSxnPW4oIjVkNjciKSxiPW4oIjc3MDQiKSx3PW4oIjg2ODAiKSx4PW4oImZmZWIiKSxDPW4oImFjZWQiKSxrPW4oIjA1NmMiKSxTPW4oIjM1MDQiKSxQPXthcjp1LGRlOmwsZW46cCxlczpmLGZyOmQsaWQ6aCxpdDpfLGphOm0sa286dixwbDp5LHB0OmcscnU6Yix0aDp3LHRyOngsdmk6QywiemgtdHciOmssemg6U30sQT1QO2Z1bmN0aW9uIE8oZSl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOiJlbiI7cmV0dXJuICQoUFtlXSxQW3RdKX1mdW5jdGlvbiAkKGUsdCl7dmFyIG49cygpKHt9LHQpO2Zvcih2YXIgciBpbiBuKXt2YXIgbz1lW3JdLGk9bltyXTtpZihvJiZpKWlmKCJvYmplY3QiPT09T2JqZWN0KGFbImEiXSkobykmJiJvYmplY3QiPT09T2JqZWN0KGFbImEiXSkoaSkpZm9yKHZhciBjIGluIGVbcl0pbltyXVtjXT1lW3JdW2NdO2Vsc2UgbltyXT1lW3JdfXJldHVybiBufXZhciBUPWZ1bmN0aW9uKCl7cmV0dXJuIHJbImEiXS5taXhpbih7ZGF0YTpmdW5jdGlvbigpe3JldHVybntwb2x5Z2xvdDpuZXcgaS5hKHtwaHJhc2VzOk8oImVuIil9KX19LG1ldGhvZHM6e3JlbG9hZExvY2FsZTpmdW5jdGlvbigpe2lmKHZvaWQgMCE9PXRoaXMubG9jYWxlKXtpZighQVt0aGlzLmxvY2FsZV0pdGhyb3cgbmV3IEVycm9yKCJMb2NhbGUgbm90IHN1cHBvcnRlZCBieSB3aWRnZXQuIENvbnRhY3Qgc3VwcG9ydEBjb2luZ2Vja28uY29tIGZvciBoZWxwLiIpO3RoaXMucG9seWdsb3Q9bmV3IGkuYSh7cGhyYXNlczpPKHRoaXMubG9jYWxlLCJlbiIpfSl9fX0sd2F0Y2g6e2xvY2FsZTpmdW5jdGlvbigpe3RoaXMucmVsb2FkTG9jYWxlKCl9fSxjcmVhdGVkOmZ1bmN0aW9uKCl7dGhpcy5yZWxvYWRMb2NhbGUoKX19KX07dFsiYSJdPVR9LGMyMjc6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImIyMmEiKSxvPW4oIjFiNTUiKSgiaXRlcmF0b3IiKSxpPUFycmF5LnByb3RvdHlwZTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHZvaWQgMCE9PWUmJihyLkFycmF5PT09ZXx8aVtvXT09PWUpfX0sYzM2NjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNjgyMSIpLG89bigiOWRlZiIpLGk9bigiNzdmMSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24odCxuLGEpe3ZhciBjLHM9cih0KSx1PW8ocy5sZW5ndGgpLGw9aShhLHUpO2lmKGUmJm4hPW4pe3doaWxlKHU+bClpZihjPXNbbCsrXSxjIT1jKXJldHVybiEwfWVsc2UgZm9yKDt1Pmw7bCsrKWlmKChlfHxsIGluIHMpJiZzW2xdPT09bilyZXR1cm4gZXx8bHx8MDtyZXR1cm4hZSYmLTF9fX0sYzQ2ZDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImU5YWMiKSxvPXIoIiVUeXBlRXJyb3IlIiksaT1yKCIlU3ludGF4RXJyb3IlIiksYT1uKCJhMGQzIiksYz17IlByb3BlcnR5IERlc2NyaXB0b3IiOmZ1bmN0aW9uKGUsdCl7aWYoIk9iamVjdCIhPT1lLlR5cGUodCkpcmV0dXJuITE7dmFyIG49eyJbW0NvbmZpZ3VyYWJsZV1dIjohMCwiW1tFbnVtZXJhYmxlXV0iOiEwLCJbW0dldF1dIjohMCwiW1tTZXRdXSI6ITAsIltbVmFsdWVdXSI6ITAsIltbV3JpdGFibGVdXSI6ITB9O2Zvcih2YXIgciBpbiB0KWlmKGEodCxyKSYmIW5bcl0pcmV0dXJuITE7dmFyIGk9YSh0LCJbW1ZhbHVlXV0iKSxjPWEodCwiW1tHZXRdXSIpfHxhKHQsIltbU2V0XV0iKTtpZihpJiZjKXRocm93IG5ldyBvKCJQcm9wZXJ0eSBEZXNjcmlwdG9ycyBtYXkgbm90IGJlIGJvdGggYWNjZXNzb3IgYW5kIGRhdGEgZGVzY3JpcHRvcnMiKTtyZXR1cm4hMH19O2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixyKXt2YXIgYT1jW3RdO2lmKCJmdW5jdGlvbiIhPT10eXBlb2YgYSl0aHJvdyBuZXcgaSgidW5rbm93biByZWNvcmQgdHlwZTogIit0KTtpZighYShlLHIpKXRocm93IG5ldyBvKG4rIiBtdXN0IGJlIGEgIit0KTtjb25zb2xlLmxvZyhhKGUscikscil9fSxjNWY2OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiNzcyNiIpLG89bigiNjlhOCIpLGk9bigiMmQ5NSIpLGE9bigiNWRiYyIpLGM9bigiNmE5OSIpLHM9bigiNzllNSIpLHU9bigiOTA5MyIpLmYsbD1uKCIxMWU5IikuZixwPW4oIjg2Y2MiKS5mLGY9bigiYWE3NyIpLnRyaW0sZD0iTnVtYmVyIixoPXJbZF0sXz1oLG09aC5wcm90b3R5cGUsdj1pKG4oIjJhZWIiKShtKSk9PWQseT0idHJpbSJpbiBTdHJpbmcucHJvdG90eXBlLGc9ZnVuY3Rpb24oZSl7dmFyIHQ9YyhlLCExKTtpZigic3RyaW5nIj09dHlwZW9mIHQmJnQubGVuZ3RoPjIpe3Q9eT90LnRyaW0oKTpmKHQsMyk7dmFyIG4scixvLGk9dC5jaGFyQ29kZUF0KDApO2lmKDQzPT09aXx8NDU9PT1pKXtpZihuPXQuY2hhckNvZGVBdCgyKSw4OD09PW58fDEyMD09PW4pcmV0dXJuIE5hTn1lbHNlIGlmKDQ4PT09aSl7c3dpdGNoKHQuY2hhckNvZGVBdCgxKSl7Y2FzZSA2NjpjYXNlIDk4OnI9MixvPTQ5O2JyZWFrO2Nhc2UgNzk6Y2FzZSAxMTE6cj04LG89NTU7YnJlYWs7ZGVmYXVsdDpyZXR1cm4rdH1mb3IodmFyIGEscz10LnNsaWNlKDIpLHU9MCxsPXMubGVuZ3RoO3U8bDt1KyspaWYoYT1zLmNoYXJDb2RlQXQodSksYTw0OHx8YT5vKXJldHVybiBOYU47cmV0dXJuIHBhcnNlSW50KHMscil9fXJldHVybit0fTtpZighaCgiIDBvMSIpfHwhaCgiMGIxIil8fGgoIisweDEiKSl7aD1mdW5jdGlvbihlKXt2YXIgdD1hcmd1bWVudHMubGVuZ3RoPDE/MDplLG49dGhpcztyZXR1cm4gbiBpbnN0YW5jZW9mIGgmJih2P3MoZnVuY3Rpb24oKXttLnZhbHVlT2YuY2FsbChuKX0pOmkobikhPWQpP2EobmV3IF8oZyh0KSksbixoKTpnKHQpfTtmb3IodmFyIGIsdz1uKCI5ZTFlIik/dShfKToiTUFYX1ZBTFVFLE1JTl9WQUxVRSxOYU4sTkVHQVRJVkVfSU5GSU5JVFksUE9TSVRJVkVfSU5GSU5JVFksRVBTSUxPTixpc0Zpbml0ZSxpc0ludGVnZXIsaXNOYU4saXNTYWZlSW50ZWdlcixNQVhfU0FGRV9JTlRFR0VSLE1JTl9TQUZFX0lOVEVHRVIscGFyc2VGbG9hdCxwYXJzZUludCxpc0ludGVnZXIiLnNwbGl0KCIsIikseD0wO3cubGVuZ3RoPng7eCsrKW8oXyxiPXdbeF0pJiYhbyhoLGIpJiZwKGgsYixsKF8sYikpO2gucHJvdG90eXBlPW0sbS5jb25zdHJ1Y3Rvcj1oLG4oIjJhYmEiKShyLGQsaCl9fSxjNjA5OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiZDEzZiIpLG89bigiMDNjYSIpLGk9bigiNzVjOSIpO3Ioci5TLCJQcm9taXNlIix7dHJ5OmZ1bmN0aW9uKGUpe3ZhciB0PW8uZih0aGlzKSxuPWkoZSk7cmV0dXJuKG4uZT90LnJlamVjdDp0LnJlc29sdmUpKG4udiksdC5wcm9taXNlfX0pfSxjNjEyOmZ1bmN0aW9uKGUsdCl7dmFyIG49TnVtYmVyLmlzTmFOfHxmdW5jdGlvbihlKXtyZXR1cm4gZSE9PWV9O2UuZXhwb3J0cz1OdW1iZXIuaXNGaW5pdGV8fGZ1bmN0aW9uKGUpe3JldHVybiJudW1iZXIiPT09dHlwZW9mIGUmJiFuKGUpJiZlIT09MS8wJiZlIT09LTEvMH19LGM2NDk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYyIsZnVuY3Rpb24oKXtyZXR1cm4gaX0pLG4uZCh0LCJiIixmdW5jdGlvbigpe3JldHVybiBjfSksbi5kKHQsImEiLGZ1bmN0aW9uKCl7cmV0dXJuIHN9KTtuKCJhNDgxIiksbigiNWRmMyIpO3ZhciByPW4oIjc5NWIiKSxvPW4ubihyKTtuKCJhYzZhIik7ZnVuY3Rpb24gaShlKXt2YXIgdD1bXTtyZXR1cm4gZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3QucHVzaChuZXcgby5hKGZ1bmN0aW9uKHQsbil7YShlLHQsbil9KSl9KSxvLmEuYWxsKHQpfWZ1bmN0aW9uIGEoZSl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOmZ1bmN0aW9uKCl7fSxuPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpmdW5jdGlvbigpe30scj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtyLnNyYz1lLnNyYyxyLmNyb3NzT3JpZ2luPSJhbm9ueW1vdXMiLHIuaW50ZWdyaXR5PWUuaW50ZWdyaXR5LHIub25sb2FkPXQsci5vbmVycm9yPWZ1bmN0aW9uKCl7bihuZXcgRXJyb3IoIkZhaWxlZCB0byBsb2FkIHNjcmlwdCAiK2Uuc3JjKSl9LGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQocil9ZnVuY3Rpb24gYyhlLHQsbil7dmFyIHI7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG89dGhpcyxpPWFyZ3VtZW50cyxhPWZ1bmN0aW9uKCl7cj1udWxsLG58fGUuYXBwbHkobyxpKX0sYz1uJiYhcjtjbGVhclRpbWVvdXQocikscj1zZXRUaW1lb3V0KGEsdCksYyYmZS5hcHBseShvLGkpfX1mdW5jdGlvbiBzKGUpe3ZhciB0PVtdLnNsaWNlLG49MTw9YXJndW1lbnRzLmxlbmd0aD90LmNhbGwoYXJndW1lbnRzLDApOltdLHI9LyhefFtcc1xuXXw8W0EtWmEtel0qXC8/PikoKD86aHR0cHM/fGZ0cCk6XC9cL1tcLUEtWjAtOStcdTAwMjZcdTIwMTlAI1wvJT89KCl+X3whOiwuO10qW1wtQS1aMC05K1x1MDAyNkAjXC8lPX4oKV98XSkvZ2k7cmV0dXJuIG4ubGVuZ3RoPjA/ZS5yZXBsYWNlKHIsZnVuY3Rpb24oZSx0LG4pe3ZhciByPSc8YSBocmVmPSInK24rJyIgY2xhc3M9ImNnLXByaW1hcnktY29sb3ItZGFyayBjZy1uby11bmRlcmxpbmUiIHRhcmdldD0iX2JsYW5rIj4nK24rIjwvYT4iO3JldHVybiIiK3Qrcn0pOmUucmVwbGFjZShyLCckMTxhIGNsYXNzPSJjZy1wcmltYXJ5LWNvbG9yLWRhcmsgY2ctbm8tdW5kZXJsaW5lIiB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iJDIiPiQyPC9hPicpfX0sYzY5YTpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPSFuKCI5ZTFlIikmJiFuKCI3OWU1IikoZnVuY3Rpb24oKXtyZXR1cm4gNyE9T2JqZWN0LmRlZmluZVByb3BlcnR5KG4oIjIzMGUiKSgiZGl2IiksImEiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gN319KS5hfSl9LGM4OTQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUsdCl7cmV0dXJuIGUuX19wcm90b19fPXQsZX1PYmplY3Quc2V0UHJvdG90eXBlT2Y9T2JqZWN0LnNldFByb3RvdHlwZU9mfHxyO3IuYmluZChPYmplY3QpO2Z1bmN0aW9uIG8oKXtyZXR1cm4idW5kZWZpbmVkIiE9PXR5cGVvZiBTeW1ib2wmJiJ1bmRlZmluZWQiIT09dHlwZW9mIFJlZmxlY3QmJiJ1bmRlZmluZWQiIT09dHlwZW9mIFByb3h5JiYhT2JqZWN0LmlzU2VhbGVkKFByb3h5KX12YXIgaT1vKCksYT1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSx0KXtmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rKyl7dmFyIHI9dFtuXTtyLmVudW1lcmFibGU9ci5lbnVtZXJhYmxlfHwhMSxyLmNvbmZpZ3VyYWJsZT0hMCwidmFsdWUiaW4gciYmKHIud3JpdGFibGU9ITApLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHIua2V5LHIpfX1yZXR1cm4gZnVuY3Rpb24odCxuLHIpe3JldHVybiBuJiZlKHQucHJvdG90eXBlLG4pLHImJmUodCxyKSx0fX0oKTtmdW5jdGlvbiBjKGUsdCl7aWYoIShlIGluc3RhbmNlb2YgdCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9ZnVuY3Rpb24gcyhlLHQpe2lmKCFlKXRocm93IG5ldyBSZWZlcmVuY2VFcnJvcigidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkIik7cmV0dXJuIXR8fCJvYmplY3QiIT09dHlwZW9mIHQmJiJmdW5jdGlvbiIhPT10eXBlb2YgdD9lOnR9ZnVuY3Rpb24gdShlLHQpe2lmKCJmdW5jdGlvbiIhPT10eXBlb2YgdCYmbnVsbCE9PXQpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3VwZXIgZXhwcmVzc2lvbiBtdXN0IGVpdGhlciBiZSBudWxsIG9yIGEgZnVuY3Rpb24sIG5vdCAiK3R5cGVvZiB0KTtlLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKHQmJnQucHJvdG90eXBlLHtjb25zdHJ1Y3Rvcjp7dmFsdWU6ZSxlbnVtZXJhYmxlOiExLHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH19KSx0JiYoT2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5zZXRQcm90b3R5cGVPZihlLHQpOmUuX19wcm90b19fPXQpfWZ1bmN0aW9uIGwoKXtyZXR1cm4gUmVmbGVjdC5jb25zdHJ1Y3QoSFRNTEVsZW1lbnQsW10sdGhpcy5fX3Byb3RvX18uY29uc3RydWN0b3IpfWZ1bmN0aW9uIHAoZSl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOnt9O2lmKCJ1bmRlZmluZWQiIT09dHlwZW9mIGN1c3RvbUVsZW1lbnRzKXtpZihpKXt2YXIgbj1mdW5jdGlvbihlKXtmdW5jdGlvbiBuKGUpe3ZhciB0O2ModGhpcyxuKTt2YXIgcj1zKHRoaXMsKG4uX19wcm90b19ffHxPYmplY3QuZ2V0UHJvdG90eXBlT2YobikpLmNhbGwodGhpcykpLGk9ZT9IVE1MRWxlbWVudC5jYWxsKGUpOnI7cmV0dXJuIG8uY2FsbChpKSx0PWkscyhyLHQpfXJldHVybiB1KG4sZSksYShuLG51bGwsW3trZXk6Im9ic2VydmVkQXR0cmlidXRlcyIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHQub2JzZXJ2ZWRBdHRyaWJ1dGVzfHxbXX19XSksbn0obCk7cmV0dXJuIG4ucHJvdG90eXBlLmNvbm5lY3RlZENhbGxiYWNrPXAsbi5wcm90b3R5cGUuZGlzY29ubmVjdGVkQ2FsbGJhY2s9ZixuLnByb3RvdHlwZS5hdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2s9ZCxoKGUsbiksbn12YXIgcj1mdW5jdGlvbihlKXt2YXIgdD1lP0hUTUxFbGVtZW50LmNhbGwoZSk6dGhpcztyZXR1cm4gby5jYWxsKHQpLHR9O3JldHVybiByLm9ic2VydmVkQXR0cmlidXRlcz10Lm9ic2VydmVkQXR0cmlidXRlc3x8W10sci5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUse2NvbnN0cnVjdG9yOntjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6cn19KSxyLnByb3RvdHlwZS5jb25uZWN0ZWRDYWxsYmFjaz1wLHIucHJvdG90eXBlLmRpc2Nvbm5lY3RlZENhbGxiYWNrPWYsci5wcm90b3R5cGUuYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrPWQsaChlLHIpLHJ9ZnVuY3Rpb24gbygpeyEwPT09dC5zaGFkb3cmJkhUTUxFbGVtZW50LnByb3RvdHlwZS5hdHRhY2hTaGFkb3cmJnRoaXMuYXR0YWNoU2hhZG93KHttb2RlOiJvcGVuIn0pLCJmdW5jdGlvbiI9PT10eXBlb2YgdC5jb25zdHJ1Y3RvckNhbGxiYWNrJiZ0LmNvbnN0cnVjdG9yQ2FsbGJhY2suY2FsbCh0aGlzKX1mdW5jdGlvbiBwKCl7ImZ1bmN0aW9uIj09PXR5cGVvZiB0LmNvbm5lY3RlZENhbGxiYWNrJiZ0LmNvbm5lY3RlZENhbGxiYWNrLmNhbGwodGhpcyl9ZnVuY3Rpb24gZigpeyJmdW5jdGlvbiI9PT10eXBlb2YgdC5kaXNjb25uZWN0ZWRDYWxsYmFjayYmdC5kaXNjb25uZWN0ZWRDYWxsYmFjay5jYWxsKHRoaXMpfWZ1bmN0aW9uIGQoZSxuLHIpeyJmdW5jdGlvbiI9PT10eXBlb2YgdC5hdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2smJnQuYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrLmNhbGwodGhpcyxlLG4scil9ZnVuY3Rpb24gaChlLHQpe3ZhciBuPWN1c3RvbUVsZW1lbnRzLmdldChlKTtyZXR1cm4idW5kZWZpbmVkIiE9PXR5cGVvZiBuP246Y3VzdG9tRWxlbWVudHMuZGVmaW5lKGUsdCl9fU9iamVjdC5zZXRQcm90b3R5cGVPZihsLnByb3RvdHlwZSxIVE1MRWxlbWVudC5wcm90b3R5cGUpLE9iamVjdC5zZXRQcm90b3R5cGVPZihsLEhUTUxFbGVtZW50KTt2YXIgZj0vLShcdykvZyxkPWZ1bmN0aW9uKGUpe3JldHVybiBlLnJlcGxhY2UoZixmdW5jdGlvbihlLHQpe3JldHVybiB0P3QudG9VcHBlckNhc2UoKToiIn0pfSxoPS8oW14tXSkoW0EtWl0pL2csXz1mdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKGgsIiQxLSQyIikucmVwbGFjZShoLCIkMS0kMiIpLnRvTG93ZXJDYXNlKCl9O2Z1bmN0aW9uIG0oZSl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjAsbj1lLmxlbmd0aC10LHI9bmV3IEFycmF5KG4pO3doaWxlKG4tLSlyW25dPWVbbit0XTtyZXR1cm4gcn12YXIgdj0iZnVuY3Rpb24iPT09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJiJmdW5jdGlvbiI9PT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX07ZnVuY3Rpb24geShlLHQpe3ZhciBuPWUscj1bInRydWUiLCJmYWxzZSJdLmluZGV4T2YoZSk+LTEsbz1wYXJzZUZsb2F0KG4sMTApLGk9IWlzTmFOKG8pJiZpc0Zpbml0ZShuKSYmInN0cmluZyI9PT10eXBlb2YgbiYmIW4ubWF0Y2goL14wK1teLl1cZCokL2cpO3JldHVybiB0JiZ0IT09Qm9vbGVhbiYmKCJ1bmRlZmluZWQiPT09dHlwZW9mIG4/InVuZGVmaW5lZCI6dihuKSkhPT10P249dChlKTpyfHx0PT09Qm9vbGVhbj9uPSIiPT09bnx8InRydWUiPT09bjppJiYobj1vKSxufWZ1bmN0aW9uIGcoZSx0KXtpZihlJiZlLmxlbmd0aCllLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIG49ZChlKTstMT09PXQuY2FtZWxDYXNlLmluZGV4T2YobikmJnQuY2FtZWxDYXNlLnB1c2gobil9KTtlbHNlIGlmKGUmJiJvYmplY3QiPT09KCJ1bmRlZmluZWQiPT09dHlwZW9mIGU/InVuZGVmaW5lZCI6dihlKSkpZm9yKHZhciBuIGluIGUpe3ZhciByPWQobik7LTE9PT10LmNhbWVsQ2FzZS5pbmRleE9mKHIpJiZ0LmNhbWVsQ2FzZS5wdXNoKHIpLGVbcl0mJmVbcl0udHlwZSYmKHQudHlwZXNbbl09W10uY29uY2F0KGVbcl0udHlwZSlbMF0pfX1mdW5jdGlvbiBiKCl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOnt9LHQ9e2NhbWVsQ2FzZTpbXSxoeXBoZW5hdGU6W10sdHlwZXM6e319O2lmKGUubWl4aW5zJiZlLm1peGlucy5mb3JFYWNoKGZ1bmN0aW9uKGUpe2coZS5wcm9wcyx0KX0pLGUuZXh0ZW5kcyYmZS5leHRlbmRzLnByb3BzKXt2YXIgbj1lLmV4dGVuZHMucHJvcHM7ZyhuLHQpfXJldHVybiBnKGUucHJvcHMsdCksdC5jYW1lbENhc2UuZm9yRWFjaChmdW5jdGlvbihlKXt0Lmh5cGhlbmF0ZS5wdXNoKF8oZSkpfSksdH1mdW5jdGlvbiB3KGUsdCl7dC5jYW1lbENhc2UuZm9yRWFjaChmdW5jdGlvbihuLHIpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLG4se2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9fdnVlX2N1c3RvbV9lbGVtZW50X19bbl19LHNldDpmdW5jdGlvbihlKXtpZigib2JqZWN0IiE9PSgidW5kZWZpbmVkIj09PXR5cGVvZiBlPyJ1bmRlZmluZWQiOnYoZSkpJiYiZnVuY3Rpb24iIT09dHlwZW9mIGV8fCF0aGlzLl9fdnVlX2N1c3RvbV9lbGVtZW50X18pe3ZhciBuPXQudHlwZXNbdC5jYW1lbENhc2Vbcl1dO3RoaXMuc2V0QXR0cmlidXRlKHQuaHlwaGVuYXRlW3JdLHkoZSxuKSl9ZWxzZXt2YXIgbz10LmNhbWVsQ2FzZVtyXTt0aGlzLl9fdnVlX2N1c3RvbV9lbGVtZW50X19bb109ZX19fSl9KX1mdW5jdGlvbiB4KGUsdCxuKXt2YXIgcj10LnByb3BzRGF0YXx8e307cmV0dXJuIG4uaHlwaGVuYXRlLmZvckVhY2goZnVuY3Rpb24odCxvKXt2YXIgaT1uLmNhbWVsQ2FzZVtvXSxhPWUuYXR0cmlidXRlc1t0XXx8ZVtpXSxjPW51bGw7bi50eXBlc1tpXSYmKGM9bi50eXBlc1tpXSksYSBpbnN0YW5jZW9mIEF0dHI/cltpXT15KGEudmFsdWUsYyk6InVuZGVmaW5lZCIhPT10eXBlb2YgYSYmKHJbaV09YSl9KSxyfWZ1bmN0aW9uIEMoZSl7dmFyIHQ9e307cmV0dXJuIG0oZS5hdHRyaWJ1dGVzKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3RbInZ1ZS1zbG90Ij09PWUubm9kZU5hbWU/InNsb3QiOmUubm9kZU5hbWVdPWUubm9kZVZhbHVlfSksdH1mdW5jdGlvbiBrKGUpe2lmKGUuY2hpbGROb2Rlcy5sZW5ndGgpcmV0dXJuIGUuY2hpbGROb2RlcztpZihlLmNvbnRlbnQmJmUuY29udGVudC5jaGlsZE5vZGVzJiZlLmNvbnRlbnQuY2hpbGROb2Rlcy5sZW5ndGgpcmV0dXJuIGUuY29udGVudC5jaGlsZE5vZGVzO3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiB0LmlubmVySFRNTD1lLmlubmVySFRNTCx0LmNoaWxkTm9kZXN9ZnVuY3Rpb24gUyhlLHQsbil7dmFyIHI9ayh0KSxvPW0ocikubWFwKGZ1bmN0aW9uKHQpe3JldHVybiIjdGV4dCI9PT10Lm5vZGVOYW1lP3Qubm9kZVZhbHVlOmUodC50YWdOYW1lLHthdHRyczpDKHQpLGRvbVByb3BzOntpbm5lckhUTUw6dC5pbm5lckhUTUx9fSl9KTtyZXR1cm4gbi5zbG90PXQuaWQsZSgidGVtcGxhdGUiLG4sbyl9ZnVuY3Rpb24gUCgpe3ZhciBlPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpbXSx0PWFyZ3VtZW50c1sxXSxuPVtdO3JldHVybiBtKGUpLmZvckVhY2goZnVuY3Rpb24oZSl7aWYoIiN0ZXh0Ij09PWUubm9kZU5hbWUpZS5ub2RlVmFsdWUudHJpbSgpJiZuLnB1c2godCgic3BhbiIsZS5ub2RlVmFsdWUpKTtlbHNlIGlmKCIjY29tbWVudCIhPT1lLm5vZGVOYW1lKXt2YXIgcj1DKGUpLG89e2F0dHJzOnIsZG9tUHJvcHM6e2lubmVySFRNTDoiIj09PWUuaW5uZXJIVE1MP2UuaW5uZXJUZXh0OmUuaW5uZXJIVE1MfX07ci5zbG90JiYoby5zbG90PXIuc2xvdCxyLnNsb3Q9dm9pZCAwKTt2YXIgaT0iVEVNUExBVEUiPT09ZS50YWdOYW1lP1ModCxlLG8pOnQoZS50YWdOYW1lLG8pO24ucHVzaChpKX19KSxufWZ1bmN0aW9uIEEoZSx0KXt2YXIgbj17YnViYmxlczohMSxjYW5jZWxhYmxlOiExLGRldGFpbDp0fSxyPXZvaWQgMDtyZXR1cm4iZnVuY3Rpb24iPT09dHlwZW9mIHdpbmRvdy5DdXN0b21FdmVudD9yPW5ldyBDdXN0b21FdmVudChlLG4pOihyPWRvY3VtZW50LmNyZWF0ZUV2ZW50KCJDdXN0b21FdmVudCIpLHIuaW5pdEN1c3RvbUV2ZW50KGUsbi5idWJibGVzLG4uY2FuY2VsYWJsZSxuLmRldGFpbCkpLHJ9ZnVuY3Rpb24gTyhlLHQpe2Zvcih2YXIgbj1hcmd1bWVudHMubGVuZ3RoLHI9QXJyYXkobj4yP24tMjowKSxvPTI7bzxuO28rKylyW28tMl09YXJndW1lbnRzW29dO3ZhciBpPUEodCxbXS5jb25jYXQocikpO2UuZGlzcGF0Y2hFdmVudChpKX1mdW5jdGlvbiAkKGUsdCxuLHIsbyl7aWYoIWUuX192dWVfY3VzdG9tX2VsZW1lbnRfXyl7dmFyIGk9ZnVuY3Rpb24oKXt0aGlzLiRlbWl0PWZ1bmN0aW9uKCl7Zm9yKHZhciB0LG49YXJndW1lbnRzLmxlbmd0aCxyPUFycmF5KG4pLG89MDtvPG47bysrKXJbb109YXJndW1lbnRzW29dO08uYXBwbHkodm9pZCAwLFtlXS5jb25jYXQocikpLHRoaXMuX19wcm90b19fJiYodD10aGlzLl9fcHJvdG9fXy4kZW1pdCkuY2FsbC5hcHBseSh0LFt0aGlzXS5jb25jYXQocikpfX0sYT10LnV0aWwuZXh0ZW5kKHt9LG4pLGM9eChlLGEscikscz10LnZlcnNpb24mJnBhcnNlSW50KHQudmVyc2lvbi5zcGxpdCgiLiIpWzBdLDEwKXx8MDtpZihhLmJlZm9yZUNyZWF0ZT1bXS5jb25jYXQoYS5iZWZvcmVDcmVhdGV8fFtdLGkpLGEuX2NvbXBpbGVkKXt2YXIgdT17fTthLl9DdG9yJiYodT1PYmplY3QudmFsdWVzKGEuX0N0b3IpWzBdLm9wdGlvbnMpLHUuYmVmb3JlQ3JlYXRlPWEuYmVmb3JlQ3JlYXRlfXZhciBsPXZvaWQgMDtpZihzPj0yKXt2YXIgcD1lLmNsb25lTm9kZSghMCkuY2hpbGROb2RlcztsPXtwcm9wc0RhdGE6Yyxwcm9wczpyLmNhbWVsQ2FzZSxjb21wdXRlZDp7cmVhY3RpdmVQcm9wczpmdW5jdGlvbigpe3ZhciBlPXRoaXMsdD17fTtyZXR1cm4gci5jYW1lbENhc2UuZm9yRWFjaChmdW5jdGlvbihuKXsidW5kZWZpbmVkIiE9PXR5cGVvZiBlW25dJiYodFtuXT1lW25dKX0pLHR9fSxyZW5kZXI6ZnVuY3Rpb24oZSl7dmFyIHQ9e3Byb3BzOnRoaXMucmVhY3RpdmVQcm9wc307cmV0dXJuIGUoYSx0LFAocCxlKSl9fX1lbHNlIGlmKDE9PT1zKWw9YSxsLnByb3BzRGF0YT1jO2Vsc2V7bD1hO3ZhciBmPXt9O09iamVjdC5rZXlzKGMpLmZvckVhY2goZnVuY3Rpb24oZSl7ZltlXT17ZGVmYXVsdDpjW2VdfX0pLGwucHJvcHM9Zn12YXIgZD1zPj0yPyI8ZGl2PjwvZGl2PiI6KCI8ZGl2PiIrZS5pbm5lckhUTUwrIjwvZGl2PiIpLnJlcGxhY2UoL3Z1ZS1zbG90PS9nLCJzbG90PSIpO2lmKG8uc2hhZG93JiZlLnNoYWRvd1Jvb3Q/KGUuc2hhZG93Um9vdC5pbm5lckhUTUw9ZCxsLmVsPWUuc2hhZG93Um9vdC5jaGlsZHJlblswXSk6KGUuaW5uZXJIVE1MPWQsbC5lbD1lLmNoaWxkcmVuWzBdKSx3KGUsciksImZ1bmN0aW9uIj09PXR5cGVvZiBvLmJlZm9yZUNyZWF0ZVZ1ZUluc3RhbmNlJiYobD1vLmJlZm9yZUNyZWF0ZVZ1ZUluc3RhbmNlKGwpfHxsKSxlLl9fdnVlX2N1c3RvbV9lbGVtZW50X189bmV3IHQobCksZS5fX3Z1ZV9jdXN0b21fZWxlbWVudF9wcm9wc19fPXIsZS5nZXRWdWVJbnN0YW5jZT1mdW5jdGlvbigpe3JldHVybiBlLl9fdnVlX2N1c3RvbV9lbGVtZW50X18uJGNoaWxkcmVuWzBdfSxvLnNoYWRvdyYmby5zaGFkb3dDc3MmJmUuc2hhZG93Um9vdCl7dmFyIGg9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKTtoLnR5cGU9InRleHQvY3NzIixoLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKG8uc2hhZG93Q3NzKSksZS5zaGFkb3dSb290LmFwcGVuZENoaWxkKGgpfWUucmVtb3ZlQXR0cmlidXRlKCJ2Y2UtY2xvYWsiKSxlLnNldEF0dHJpYnV0ZSgidmNlLXJlYWR5IiwiIiksTyhlLCJ2Y2UtcmVhZHkiKX19ZnVuY3Rpb24gVChlKXtlLmN1c3RvbUVsZW1lbnQ9ZnVuY3Rpb24odCxuKXt2YXIgcj1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06e30sbz0iZnVuY3Rpb24iPT09dHlwZW9mIG4saT1vJiZ7cHJvcHM6ci5wcm9wc3x8W119LGE9YihvP2k6biksYz1wKHQse2NvbnN0cnVjdG9yQ2FsbGJhY2s6ZnVuY3Rpb24oKXsiZnVuY3Rpb24iPT09dHlwZW9mIHIuY29uc3RydWN0b3JDYWxsYmFjayYmci5jb25zdHJ1Y3RvckNhbGxiYWNrLmNhbGwodGhpcyl9LGNvbm5lY3RlZENhbGxiYWNrOmZ1bmN0aW9uKCl7dmFyIGk9dGhpcyxjPW8mJm4oKSxzPWMmJmMudGhlbiYmImZ1bmN0aW9uIj09PXR5cGVvZiBjLnRoZW47aWYoImZ1bmN0aW9uIj09PXR5cGVvZiByLmNvbm5lY3RlZENhbGxiYWNrJiZyLmNvbm5lY3RlZENhbGxiYWNrLmNhbGwodGhpcyksbyYmIXMpdGhyb3cgbmV3IEVycm9yKCJBc3luYyBjb21wb25lbnQgIit0KyIgZG8gbm90IHJldHVybnMgUHJvbWlzZSIpO3RoaXMuX19kZXRhY2hlZF9ffHwocz9jLnRoZW4oZnVuY3Rpb24odCl7dmFyIG49Yih0KTskKGksZSx0LG4sciksImZ1bmN0aW9uIj09PXR5cGVvZiByLnZ1ZUluc3RhbmNlQ3JlYXRlZENhbGxiYWNrJiZyLnZ1ZUluc3RhbmNlQ3JlYXRlZENhbGxiYWNrLmNhbGwoaSl9KTooJCh0aGlzLGUsbixhLHIpLCJmdW5jdGlvbiI9PT10eXBlb2Ygci52dWVJbnN0YW5jZUNyZWF0ZWRDYWxsYmFjayYmci52dWVJbnN0YW5jZUNyZWF0ZWRDYWxsYmFjay5jYWxsKHRoaXMpKSksdGhpcy5fX2RldGFjaGVkX189ITF9LGRpc2Nvbm5lY3RlZENhbGxiYWNrOmZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLl9fZGV0YWNoZWRfXz0hMCwiZnVuY3Rpb24iPT09dHlwZW9mIHIuZGlzY29ubmVjdGVkQ2FsbGJhY2smJnIuZGlzY29ubmVjdGVkQ2FsbGJhY2suY2FsbCh0aGlzKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZS5fX2RldGFjaGVkX18mJmUuX192dWVfY3VzdG9tX2VsZW1lbnRfXyYmKGUuX192dWVfY3VzdG9tX2VsZW1lbnRfXy4kZGVzdHJveSghMCksZGVsZXRlIGUuX192dWVfY3VzdG9tX2VsZW1lbnRfXyxkZWxldGUgZS5fX3Z1ZV9jdXN0b21fZWxlbWVudF9wcm9wc19fKX0sci5kZXN0cm95VGltZW91dHx8M2UzKX0sYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrOmZ1bmN0aW9uKGUsdCxuKXtpZih0aGlzLl9fdnVlX2N1c3RvbV9lbGVtZW50X18mJiJ1bmRlZmluZWQiIT09dHlwZW9mIG4pe3ZhciBvPWQoZSk7ImZ1bmN0aW9uIj09PXR5cGVvZiByLmF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayYmci5hdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2suY2FsbCh0aGlzLGUsdCxuKTt2YXIgaT10aGlzLl9fdnVlX2N1c3RvbV9lbGVtZW50X3Byb3BzX18udHlwZXNbb107dGhpcy5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fW29dPXkobixpKX19LG9ic2VydmVkQXR0cmlidXRlczphLmh5cGhlbmF0ZSxzaGFkb3c6ISFyLnNoYWRvdyYmISFIVE1MRWxlbWVudC5wcm90b3R5cGUuYXR0YWNoU2hhZG93fSk7cmV0dXJuIGN9fSJ1bmRlZmluZWQiIT09dHlwZW9mIHdpbmRvdyYmd2luZG93LlZ1ZSYmKHdpbmRvdy5WdWUudXNlKFQpLFQuaW5zdGFsbGVkJiYoVC5pbnN0YWxsZWQ9ITEpKSx0WyJhIl09VH0sYzhiYTpmdW5jdGlvbihlLHQpe3ZhciBuO249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30oKTt0cnl7bj1ufHxuZXcgRnVuY3Rpb24oInJldHVybiB0aGlzIikoKX1jYXRjaChyKXsib2JqZWN0Ij09PXR5cGVvZiB3aW5kb3cmJihuPXdpbmRvdyl9ZS5leHBvcnRzPW59LGNhNWE6ZnVuY3Rpb24oZSx0KXt2YXIgbj0wLHI9TWF0aC5yYW5kb20oKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIlN5bWJvbCgiLmNvbmNhdCh2b2lkIDA9PT1lPyIiOmUsIilfIiwoKytuK3IpLnRvU3RyaW5nKDM2KSl9fSxjYTlmOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiMGY3YyIpLG89bigiZjM2NyIpLGk9bigiNTYyZSIpLGE9bigiMWI3ZiIpLGM9bigiYjNmZCIpLHM9ci5jYWxsKEZ1bmN0aW9uLmNhbGwsYSgpKTtvKHMse2dldFBvbHlmaWxsOmEsaW1wbGVtZW50YXRpb246aSxzaGltOmN9KSxlLmV4cG9ydHM9c30sY2FkZjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjljNmMiKSxvPW4oImQ1M2IiKSxpPW4oIjg0ZjIiKSxhPW4oIjY4MjEiKTtlLmV4cG9ydHM9bigiMDFmOSIpKEFycmF5LCJBcnJheSIsZnVuY3Rpb24oZSx0KXt0aGlzLl90PWEoZSksdGhpcy5faT0wLHRoaXMuX2s9dH0sZnVuY3Rpb24oKXt2YXIgZT10aGlzLl90LHQ9dGhpcy5fayxuPXRoaXMuX2krKztyZXR1cm4hZXx8bj49ZS5sZW5ndGg/KHRoaXMuX3Q9dm9pZCAwLG8oMSkpOm8oMCwia2V5cyI9PXQ/bjoidmFsdWVzIj09dD9lW25dOltuLGVbbl1dKX0sInZhbHVlcyIpLGkuQXJndW1lbnRzPWkuQXJyYXkscigia2V5cyIpLHIoInZhbHVlcyIpLHIoImVudHJpZXMiKX0sY2I3YzpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDNmNCIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZighcihlKSl0aHJvdyBUeXBlRXJyb3IoZSsiIGlzIG5vdCBhbiBvYmplY3QhIik7cmV0dXJuIGV9fSxjZDFjOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJlODUzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG5ldyhyKGUpKSh0KX19LGNlMTA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjY5YTgiKSxvPW4oIjY4MjEiKSxpPW4oImMzNjYiKSghMSksYT1uKCI2MTNiIikoIklFX1BST1RPIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dmFyIG4sYz1vKGUpLHM9MCx1PVtdO2ZvcihuIGluIGMpbiE9YSYmcihjLG4pJiZ1LnB1c2gobik7d2hpbGUodC5sZW5ndGg+cylyKGMsbj10W3MrK10pJiYofmkodSxuKXx8dS5wdXNoKG4pKTtyZXR1cm4gdX19LGQwMjQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCIyMWQwIiksbz1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxhPWZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9MCxvPWUubGVuZ3RoO3I8bztyKyspaS5jYWxsKGUscikmJihudWxsPT1uP3QoZVtyXSxyLGUpOnQuY2FsbChuLGVbcl0scixlKSl9LGM9ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj0wLG89ZS5sZW5ndGg7cjxvO3IrKyludWxsPT1uP3QoZS5jaGFyQXQocikscixlKTp0LmNhbGwobixlLmNoYXJBdChyKSxyLGUpfSxzPWZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHIgaW4gZSlpLmNhbGwoZSxyKSYmKG51bGw9PW4/dChlW3JdLHIsZSk6dC5jYWxsKG4sZVtyXSxyLGUpKX0sdT1mdW5jdGlvbihlLHQsbil7aWYoIXIodCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiaXRlcmF0b3IgbXVzdCBiZSBhIGZ1bmN0aW9uIik7dmFyIGk7YXJndW1lbnRzLmxlbmd0aD49MyYmKGk9biksIltvYmplY3QgQXJyYXldIj09PW8uY2FsbChlKT9hKGUsdCxpKToic3RyaW5nIj09PXR5cGVvZiBlP2MoZSx0LGkpOnMoZSx0LGkpfTtlLmV4cG9ydHM9dX0sZDEyNzpmdW5jdGlvbihlLHQsbil7bigiMGEwYSIpKCJhc3luY0l0ZXJhdG9yIil9LGQxM2Y6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImRhM2MiKSxvPW4oImE3ZDMiKSxpPW4oImJjMjUiKSxhPW4oIjhjZTAiKSxjPW4oIjQzYzgiKSxzPSJwcm90b3R5cGUiLHU9ZnVuY3Rpb24oZSx0LG4pe3ZhciBsLHAsZixkPWUmdS5GLGg9ZSZ1LkcsXz1lJnUuUyxtPWUmdS5QLHY9ZSZ1LkIseT1lJnUuVyxnPWg/bzpvW3RdfHwob1t0XT17fSksYj1nW3NdLHc9aD9yOl8/clt0XTooclt0XXx8e30pW3NdO2ZvcihsIGluIGgmJihuPXQpLG4pcD0hZCYmdyYmdm9pZCAwIT09d1tsXSxwJiZjKGcsbCl8fChmPXA/d1tsXTpuW2xdLGdbbF09aCYmImZ1bmN0aW9uIiE9dHlwZW9mIHdbbF0/bltsXTp2JiZwP2koZixyKTp5JiZ3W2xdPT1mP2Z1bmN0aW9uKGUpe3ZhciB0PWZ1bmN0aW9uKHQsbixyKXtpZih0aGlzIGluc3RhbmNlb2YgZSl7c3dpdGNoKGFyZ3VtZW50cy5sZW5ndGgpe2Nhc2UgMDpyZXR1cm4gbmV3IGU7Y2FzZSAxOnJldHVybiBuZXcgZSh0KTtjYXNlIDI6cmV0dXJuIG5ldyBlKHQsbil9cmV0dXJuIG5ldyBlKHQsbixyKX1yZXR1cm4gZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9O3JldHVybiB0W3NdPWVbc10sdH0oZik6bSYmImZ1bmN0aW9uIj09dHlwZW9mIGY/aShGdW5jdGlvbi5jYWxsLGYpOmYsbSYmKChnLnZpcnR1YWx8fChnLnZpcnR1YWw9e30pKVtsXT1mLGUmdS5SJiZiJiYhYltsXSYmYShiLGwsZikpKX07dS5GPTEsdS5HPTIsdS5TPTQsdS5QPTgsdS5CPTE2LHUuVz0zMix1LlU9NjQsdS5SPTEyOCxlLmV4cG9ydHM9dX0sZDE1ZjpmdW5jdGlvbihlLHQsbil7dD1lLmV4cG9ydHM9bigiMjM1MCIpKCExKSx0LmkobigiNTFlMyIpLCIiKSx0LnB1c2goW2UuaSwiLmNnLWNvbnRhaW5lciB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG5cbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGZvbnQtc2l6ZTogMTJweDtcblxuICBtaW4td2lkdGg6IDI1MHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLmNnLWNvbnRhaW5lcltkYXRhLWxvYWRpbmddIC5jZy13aWRnZXQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNnLWNvaW4tcm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYigyNDAsIDI0MCwgMjQwKTtcbn1cbi5sYXJnZSAuY2ctY29pbi1yb3cge1xuICBmb250LXNpemU6IDE0Ljc1cHg7XG59XG4uc21hbGwgLmNnLWNvaW4tcm93IHtcbiAgZm9udC1zaXplOiAxMy43NXB4O1xufVxuLmNnLWNvaW4tcm93OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTAsIDI1MCwgMjUwLCAwLjMpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4uY2ctZXZlbi1yb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1MiwgMjU1LCAyNDgsIDAuNik7XG59XG4uY2ctYXJyb3ctdXAge1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICBib3JkZXItYm90dG9tOiA2cHggc29saWQgIzRiODgwMDtcbn1cblxuLmNnLWFycm93LWRvd24ge1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICBib3JkZXItdG9wOiA2cHggc29saWQgI2ExMWIwYTtcbn1cblxuLmNnLWZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNDEsIDE5OCwgNzEsIDAuMSk7XG59XG5cbi5jZy13aWRnZXQgc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogcmdiKDE0MSwgMTk4LCA3MSk7XG59XG4uY2ctd2lkZ2V0IGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5sYXJnZSAuY2ctY29pbi1yb3cgaW1nIHtcbiAgd2lkdGg6IDI4cHg7XG59XG4uc21hbGwgLmNnLWNvaW4tcm93IGltZyB7XG4gIHdpZHRoOiAyMHB4O1xufVxuXG4ubGFyZ2UgLmNnLWxnLWhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNtYWxsIC5jZy1zbS1oaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIiJdKX0sZDI0ZjpmdW5jdGlvbihlLHQsbil7bigiMGEwYSIpKCJvYnNlcnZhYmxlIil9LGQyNTY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCJkYTNjIiksbz1uKCI0M2M4IiksaT1uKCI3ZDk1IiksYT1uKCJkMTNmIiksYz1uKCIyMzEyIikscz1uKCI2Mjc3IikuS0VZLHU9bigiZDc4MiIpLGw9bigiNzc3MiIpLHA9bigiYzBkOCIpLGY9bigiN2IwMCIpLGQ9bigiMWI1NSIpLGg9bigiZmRhMSIpLF89bigiMGEwYSIpLG09bigiZDJkNiIpLHY9bigiYjVhYSIpLHk9bigiMGY4OSIpLGc9bigiNmY4YSIpLGI9bigiNmE5YiIpLHc9bigiMmVhMSIpLHg9bigiZjg0NSIpLEM9bigiNzEwOCIpLGs9bigiNTY1ZCIpLFM9bigiNjI2ZSIpLFA9bigiM2FkYyIpLEE9bigiNzYzMyIpLE89Uy5mLCQ9UC5mLFQ9ay5mLGo9ci5TeW1ib2wsRT1yLkpTT04sTT1FJiZFLnN0cmluZ2lmeSxEPSJwcm90b3R5cGUiLEk9ZCgiX2hpZGRlbiIpLEw9ZCgidG9QcmltaXRpdmUiKSxGPXt9LnByb3BlcnR5SXNFbnVtZXJhYmxlLE49bCgic3ltYm9sLXJlZ2lzdHJ5IiksUj1sKCJzeW1ib2xzIiksVj1sKCJvcC1zeW1ib2xzIiksSD1PYmplY3RbRF0sVT0iZnVuY3Rpb24iPT10eXBlb2Ygaix6PXIuUU9iamVjdCxCPSF6fHwheltEXXx8IXpbRF0uZmluZENoaWxkLEc9aSYmdShmdW5jdGlvbigpe3JldHVybiA3IT1DKCQoe30sImEiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gJCh0aGlzLCJhIix7dmFsdWU6N30pLmF9fSkpLmF9KT9mdW5jdGlvbihlLHQsbil7dmFyIHI9TyhILHQpO3ImJmRlbGV0ZSBIW3RdLCQoZSx0LG4pLHImJmUhPT1IJiYkKEgsdCxyKX06JCxXPWZ1bmN0aW9uKGUpe3ZhciB0PVJbZV09QyhqW0RdKTtyZXR1cm4gdC5faz1lLHR9LEs9VSYmInN5bWJvbCI9PXR5cGVvZiBqLml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiJzeW1ib2wiPT10eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBqfSxxPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZT09PUgmJnEoVix0LG4pLHkoZSksdD13KHQsITApLHkobiksbyhSLHQpPyhuLmVudW1lcmFibGU/KG8oZSxJKSYmZVtJXVt0XSYmKGVbSV1bdF09ITEpLG49QyhuLHtlbnVtZXJhYmxlOngoMCwhMSl9KSk6KG8oZSxJKXx8JChlLEkseCgxLHt9KSksZVtJXVt0XT0hMCksRyhlLHQsbikpOiQoZSx0LG4pfSxYPWZ1bmN0aW9uKGUsdCl7eShlKTt2YXIgbixyPW0odD1iKHQpKSxvPTAsaT1yLmxlbmd0aDt3aGlsZShpPm8pcShlLG49cltvKytdLHRbbl0pO3JldHVybiBlfSxKPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/QyhlKTpYKEMoZSksdCl9LFk9ZnVuY3Rpb24oZSl7dmFyIHQ9Ri5jYWxsKHRoaXMsZT13KGUsITApKTtyZXR1cm4hKHRoaXM9PT1IJiZvKFIsZSkmJiFvKFYsZSkpJiYoISh0fHwhbyh0aGlzLGUpfHwhbyhSLGUpfHxvKHRoaXMsSSkmJnRoaXNbSV1bZV0pfHx0KX0sWj1mdW5jdGlvbihlLHQpe2lmKGU9YihlKSx0PXcodCwhMCksZSE9PUh8fCFvKFIsdCl8fG8oVix0KSl7dmFyIG49TyhlLHQpO3JldHVybiFufHwhbyhSLHQpfHxvKGUsSSkmJmVbSV1bdF18fChuLmVudW1lcmFibGU9ITApLG59fSxRPWZ1bmN0aW9uKGUpe3ZhciB0LG49VChiKGUpKSxyPVtdLGk9MDt3aGlsZShuLmxlbmd0aD5pKW8oUix0PW5baSsrXSl8fHQ9PUl8fHQ9PXN8fHIucHVzaCh0KTtyZXR1cm4gcn0sZWU9ZnVuY3Rpb24oZSl7dmFyIHQsbj1lPT09SCxyPVQobj9WOmIoZSkpLGk9W10sYT0wO3doaWxlKHIubGVuZ3RoPmEpIW8oUix0PXJbYSsrXSl8fG4mJiFvKEgsdCl8fGkucHVzaChSW3RdKTtyZXR1cm4gaX07VXx8KGo9ZnVuY3Rpb24oKXtpZih0aGlzIGluc3RhbmNlb2Ygail0aHJvdyBUeXBlRXJyb3IoIlN5bWJvbCBpcyBub3QgYSBjb25zdHJ1Y3RvciEiKTt2YXIgZT1mKGFyZ3VtZW50cy5sZW5ndGg+MD9hcmd1bWVudHNbMF06dm9pZCAwKSx0PWZ1bmN0aW9uKG4pe3RoaXM9PT1IJiZ0LmNhbGwoVixuKSxvKHRoaXMsSSkmJm8odGhpc1tJXSxlKSYmKHRoaXNbSV1bZV09ITEpLEcodGhpcyxlLHgoMSxuKSl9O3JldHVybiBpJiZCJiZHKEgsZSx7Y29uZmlndXJhYmxlOiEwLHNldDp0fSksVyhlKX0sYyhqW0RdLCJ0b1N0cmluZyIsZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fa30pLFMuZj1aLFAuZj1xLG4oImQ4NzYiKS5mPWsuZj1RLG4oImQ3NGUiKS5mPVksbigiMzFjMiIpLmY9ZWUsaSYmIW4oImI0NTciKSYmYyhILCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsWSwhMCksaC5mPWZ1bmN0aW9uKGUpe3JldHVybiBXKGQoZSkpfSksYShhLkcrYS5XK2EuRiohVSx7U3ltYm9sOmp9KTtmb3IodmFyIHRlPSJoYXNJbnN0YW5jZSxpc0NvbmNhdFNwcmVhZGFibGUsaXRlcmF0b3IsbWF0Y2gscmVwbGFjZSxzZWFyY2gsc3BlY2llcyxzcGxpdCx0b1ByaW1pdGl2ZSx0b1N0cmluZ1RhZyx1bnNjb3BhYmxlcyIuc3BsaXQoIiwiKSxuZT0wO3RlLmxlbmd0aD5uZTspZCh0ZVtuZSsrXSk7Zm9yKHZhciByZT1BKGQuc3RvcmUpLG9lPTA7cmUubGVuZ3RoPm9lOylfKHJlW29lKytdKTthKGEuUythLkYqIVUsIlN5bWJvbCIse2ZvcjpmdW5jdGlvbihlKXtyZXR1cm4gbyhOLGUrPSIiKT9OW2VdOk5bZV09aihlKX0sa2V5Rm9yOmZ1bmN0aW9uKGUpe2lmKCFLKGUpKXRocm93IFR5cGVFcnJvcihlKyIgaXMgbm90IGEgc3ltYm9sISIpO2Zvcih2YXIgdCBpbiBOKWlmKE5bdF09PT1lKXJldHVybiB0fSx1c2VTZXR0ZXI6ZnVuY3Rpb24oKXtCPSEwfSx1c2VTaW1wbGU6ZnVuY3Rpb24oKXtCPSExfX0pLGEoYS5TK2EuRiohVSwiT2JqZWN0Iix7Y3JlYXRlOkosZGVmaW5lUHJvcGVydHk6cSxkZWZpbmVQcm9wZXJ0aWVzOlgsZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOlosZ2V0T3duUHJvcGVydHlOYW1lczpRLGdldE93blByb3BlcnR5U3ltYm9sczplZX0pLEUmJmEoYS5TK2EuRiooIVV8fHUoZnVuY3Rpb24oKXt2YXIgZT1qKCk7cmV0dXJuIltudWxsXSIhPU0oW2VdKXx8Int9IiE9TSh7YTplfSl8fCJ7fSIhPU0oT2JqZWN0KGUpKX0pKSwiSlNPTiIse3N0cmluZ2lmeTpmdW5jdGlvbihlKXt2YXIgdCxuLHI9W2VdLG89MTt3aGlsZShhcmd1bWVudHMubGVuZ3RoPm8pci5wdXNoKGFyZ3VtZW50c1tvKytdKTtpZihuPXQ9clsxXSwoZyh0KXx8dm9pZCAwIT09ZSkmJiFLKGUpKXJldHVybiB2KHQpfHwodD1mdW5jdGlvbihlLHQpe2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBuJiYodD1uLmNhbGwodGhpcyxlLHQpKSwhSyh0KSlyZXR1cm4gdH0pLHJbMV09dCxNLmFwcGx5KEUscil9fSksaltEXVtMXXx8bigiOGNlMCIpKGpbRF0sTCxqW0RdLnZhbHVlT2YpLHAoaiwiU3ltYm9sIikscChNYXRoLCJNYXRoIiwhMCkscChyLkpTT04sIkpTT04iLCEwKX0sZDJkNjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNzYzMyIpLG89bigiMzFjMiIpLGk9bigiZDc0ZSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXt2YXIgdD1yKGUpLG49by5mO2lmKG4pe3ZhciBhLGM9bihlKSxzPWkuZix1PTA7d2hpbGUoYy5sZW5ndGg+dSlzLmNhbGwoZSxhPWNbdSsrXSkmJnQucHVzaChhKX1yZXR1cm4gdH19LGQzZjQ6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIm9iamVjdCI9PT10eXBlb2YgZT9udWxsIT09ZToiZnVuY3Rpb24iPT09dHlwZW9mIGV9fSxkNGFiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9ci5jYWxsKGUpLG49IltvYmplY3QgQXJndW1lbnRzXSI9PT10O3JldHVybiBufHwobj0iW29iamVjdCBBcnJheV0iIT09dCYmbnVsbCE9PWUmJiJvYmplY3QiPT09dHlwZW9mIGUmJiJudW1iZXIiPT09dHlwZW9mIGUubGVuZ3RoJiZlLmxlbmd0aD49MCYmIltvYmplY3QgRnVuY3Rpb25dIj09PXIuY2FsbChlLmNhbGxlZSkpLG59fSxkNTI1OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLGZ1bmN0aW9uKCl7cmV0dXJuIGl9KTtuKCJhYzZhIik7dmFyIHI9bigiZjVlZSIpLG89bi5uKHIpO2Z1bmN0aW9uIGkoZSx0KXt2YXIgbj1vLmEuY3JlYXRlQ29uc3VtZXIoIndzczovL2NhYmxlLmNvaW5nZWNrby5jb20vY2FibGUiKSxyPVtdO3JldHVybiBlLmZvckVhY2goZnVuY3Rpb24oZSl7ci5wdXNoKG4uc3Vic2NyaXB0aW9ucy5jcmVhdGUoe2NoYW5uZWw6IkFDaGFubmVsIixtOmV9LHtyZWNlaXZlZDpmdW5jdGlvbihlKXt0KGUpfX0pKX0pLHt1bnN1YnNjcmliZTpmdW5jdGlvbigpe3IuZm9yRWFjaChmdW5jdGlvbihlKXtlLnVuc3Vic2NyaWJlKCl9KX19fX0sZDUzYjpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybnt2YWx1ZTp0LGRvbmU6ISFlfX19LGQ2Yzc6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LG89T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxpPUFycmF5LnByb3RvdHlwZS5zbGljZSxhPW4oImQ0YWIiKSxjPU9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUscz0hYy5jYWxsKHt0b1N0cmluZzpudWxsfSwidG9TdHJpbmciKSx1PWMuY2FsbChmdW5jdGlvbigpe30sInByb3RvdHlwZSIpLGw9WyJ0b1N0cmluZyIsInRvTG9jYWxlU3RyaW5nIiwidmFsdWVPZiIsImhhc093blByb3BlcnR5IiwiaXNQcm90b3R5cGVPZiIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwiY29uc3RydWN0b3IiXSxwPWZ1bmN0aW9uKGUpe3ZhciB0PWUuY29uc3RydWN0b3I7cmV0dXJuIHQmJnQucHJvdG90eXBlPT09ZX0sZj17JGFwcGxpY2F0aW9uQ2FjaGU6ITAsJGNvbnNvbGU6ITAsJGV4dGVybmFsOiEwLCRmcmFtZTohMCwkZnJhbWVFbGVtZW50OiEwLCRmcmFtZXM6ITAsJGlubmVySGVpZ2h0OiEwLCRpbm5lcldpZHRoOiEwLCRvdXRlckhlaWdodDohMCwkb3V0ZXJXaWR0aDohMCwkcGFnZVhPZmZzZXQ6ITAsJHBhZ2VZT2Zmc2V0OiEwLCRwYXJlbnQ6ITAsJHNjcm9sbExlZnQ6ITAsJHNjcm9sbFRvcDohMCwkc2Nyb2xsWDohMCwkc2Nyb2xsWTohMCwkc2VsZjohMCwkd2Via2l0SW5kZXhlZERCOiEwLCR3ZWJraXRTdG9yYWdlSW5mbzohMCwkd2luZG93OiEwfSxkPWZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCI9PT10eXBlb2Ygd2luZG93KXJldHVybiExO2Zvcih2YXIgZSBpbiB3aW5kb3cpdHJ5e2lmKCFmWyIkIitlXSYmci5jYWxsKHdpbmRvdyxlKSYmbnVsbCE9PXdpbmRvd1tlXSYmIm9iamVjdCI9PT10eXBlb2Ygd2luZG93W2VdKXRyeXtwKHdpbmRvd1tlXSl9Y2F0Y2godCl7cmV0dXJuITB9fWNhdGNoKHQpe3JldHVybiEwfXJldHVybiExfSgpLGg9ZnVuY3Rpb24oZSl7aWYoInVuZGVmaW5lZCI9PT10eXBlb2Ygd2luZG93fHwhZClyZXR1cm4gcChlKTt0cnl7cmV0dXJuIHAoZSl9Y2F0Y2godCl7cmV0dXJuITF9fSxfPWZ1bmN0aW9uKGUpe3ZhciB0PW51bGwhPT1lJiYib2JqZWN0Ij09PXR5cGVvZiBlLG49IltvYmplY3QgRnVuY3Rpb25dIj09PW8uY2FsbChlKSxpPWEoZSksYz10JiYiW29iamVjdCBTdHJpbmddIj09PW8uY2FsbChlKSxwPVtdO2lmKCF0JiYhbiYmIWkpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0LmtleXMgY2FsbGVkIG9uIGEgbm9uLW9iamVjdCIpO3ZhciBmPXUmJm47aWYoYyYmZS5sZW5ndGg+MCYmIXIuY2FsbChlLDApKWZvcih2YXIgZD0wO2Q8ZS5sZW5ndGg7KytkKXAucHVzaChTdHJpbmcoZCkpO2lmKGkmJmUubGVuZ3RoPjApZm9yKHZhciBfPTA7XzxlLmxlbmd0aDsrK18pcC5wdXNoKFN0cmluZyhfKSk7ZWxzZSBmb3IodmFyIG0gaW4gZSlmJiYicHJvdG90eXBlIj09PW18fCFyLmNhbGwoZSxtKXx8cC5wdXNoKFN0cmluZyhtKSk7aWYocylmb3IodmFyIHY9aChlKSx5PTA7eTxsLmxlbmd0aDsrK3kpdiYmImNvbnN0cnVjdG9yIj09PWxbeV18fCFyLmNhbGwoZSxsW3ldKXx8cC5wdXNoKGxbeV0pO3JldHVybiBwfTtfLnNoaW09ZnVuY3Rpb24oKXtpZihPYmplY3Qua2V5cyl7dmFyIGU9ZnVuY3Rpb24oKXtyZXR1cm4gMj09PShPYmplY3Qua2V5cyhhcmd1bWVudHMpfHwiIikubGVuZ3RofSgxLDIpO2lmKCFlKXt2YXIgdD1PYmplY3Qua2V5cztPYmplY3Qua2V5cz1mdW5jdGlvbihlKXtyZXR1cm4gYShlKT90KGkuY2FsbChlKSk6dChlKX19fWVsc2UgT2JqZWN0LmtleXM9XztyZXR1cm4gT2JqZWN0LmtleXN8fF99LGUuZXhwb3J0cz1ffSxkNzRlOmZ1bmN0aW9uKGUsdCl7dC5mPXt9LnByb3BlcnR5SXNFbnVtZXJhYmxlfSxkNzgyOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4hIWUoKX1jYXRjaCh0KXtyZXR1cm4hMH19fSxkODc2OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIyNjk1Iiksbz1uKCIwMDI5IikuY29uY2F0KCJsZW5ndGgiLCJwcm90b3R5cGUiKTt0LmY9T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXN8fGZ1bmN0aW9uKGUpe3JldHVybiByKGUsbyl9fSxkOGU4OmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IFR5cGVFcnJvcihlKyIgaXMgbm90IGEgZnVuY3Rpb24hIik7cmV0dXJuIGV9fSxkYTMwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlKXtyZXR1cm4gZS5wYXJlbnRFbGVtZW50fHxlLmdldFJvb3ROb2RlKCkuaG9zdH1uLmQodCwiYSIsZnVuY3Rpb24oKXtyZXR1cm4gcn0pfSxkYTNjOmZ1bmN0aW9uKGUsdCl7dmFyIG49ZS5leHBvcnRzPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cuTWF0aD09TWF0aD93aW5kb3c6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmJiZzZWxmLk1hdGg9PU1hdGg/c2VsZjpGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpOyJudW1iZXIiPT10eXBlb2YgX19nJiYoX19nPW4pfSxkY2JjOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIyYWJhIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIG8gaW4gdClyKGUsbyx0W29dLG4pO3JldHVybiBlfX0sZGQwNDpmdW5jdGlvbihlLHQsbil7bigiMTJmZDkiKSxuKCI5M2M0IiksbigiYjQyYyIpLG4oIjViNWYiKSxuKCJiNjA0IiksbigiYzYwOSIpLGUuZXhwb3J0cz1uKCJhN2QzIikuUHJvbWlzZX0sZGQxMTpmdW5jdGlvbihlKXtlLmV4cG9ydHM9e2NvaW5fZGV0YWlsczp7bWNhcF9yYW5rOiLsi5zqsIDstJ3slaEg7Iic7JyEIixtY2FwOiLsi5zqsIDstJ3slaEiLCIyNGhfdm9sdW1lIjoiMjTsi5zqsIQg6rGw656Y65+JIiwiMjRoX2hpZ2hfbG93IjoiMjRIIEhpZ2gvTG93In0sY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldDp7cG93ZXJlZF9ieToiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IixjcnlwdG9fcHJpY2VfY29tcGFyaXNvbjoi7JWU7Zi47ZmU7Y+QIOqwgOqyqSDruYTqtZAiLGNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb246IuyVlO2YuO2ZlO2PkCDsi5zqsIDstJ3slaEg67mE6rWQIn0sY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ontwb3dlcmVkX2J5OiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3ByaWNlX2NoYXJ0X3dpZGdldDp7IjI0aF9oaWdoIjoi6rOg6rCAICgyNOyLnOqwhCkiLCIyNGhfbG93Ijoi7KCA6rCAICgyNOyLnOqwhCkiLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldDp7cG93ZXJlZF9ieToiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9saXN0X3dpZGdldDp7cG93ZXJlZF9ieToiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sYmVhbV93aWRnZXQ6e3Bvd2VyZWRfYnk6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fdGlja2VyX3dpZGdldDp7IjI0aF9oaWdoIjoi6rOg6rCAICgyNOyLnOqwhCkiLCIyNGhfbG93Ijoi7KCA6rCAICgyNOyLnOqwhCkiLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ont2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5faGVhdG1hcF93aWRnZXQ6e3RpdGxlOiLslZTtmLjtmZTtj5Ag64KY66y07KeA64+EIixzdWJ0aXRsZToiKFRvcCAle3RvcH0gYnkgTWFya2V0IENhcCkiLHBvd2VyZWRfYnk6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LHJhbmRvbV9jb2luX3dpZGdldDp7ZGlzY2xhaW1lcjoiRGlzY2xhaW1lcjogVGhpcyB0b29scyBzZXJ2ZSBhcyBhbiBlbnRlcnRhaW5tZW50IGFuZCBkb2VzIG5vdCBjb25zdGl0dXRlIGZpbmFuY2lhbCBhZHZpY2UuIixzcGluOiJTcGluIn0sY29pbl9kYWlseV9wcmljZV93aWRnZXQ6e3RpdGxlOiJDb2luR2Vja28gUHJpY2UgVXBkYXRlIix0b3RhbF9tY2FwOiJUb3RhbCBNIGNhcCIsIjI0aF92b2wiOiIyNOyLnOqwhCDqsbDrnpjrn4kiLGRvbToiRG9tIn0sY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0OntleGNoYW5nZToi6rGw656Y7IaMIixwYWlyOiLqsbDrnpjsjI0iLHByaWNlOiLsi5zshLgiLHZvbHVtZToi6rGw656Y64yA6riIIix0cnVzdF9zY29yZToi7Iug66Kw7KeA7IiYIix2aWV3X3ByaWNlX2NoYXJ0OiLssKjtirgg67O06riwIixwb3dlcmVkX2J5OiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLHZpZXdfYWxsOiJWaWV3IGFsbCAle2NvaW59IG1hcmtldHMifX19LGRlY2Y6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjBmODkiKSxvPW4oIjZmOGEiKSxpPW4oIjAzY2EiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZihyKGUpLG8odCkmJnQuY29uc3RydWN0b3I9PT1lKXJldHVybiB0O3ZhciBuPWkuZihlKSxhPW4ucmVzb2x2ZTtyZXR1cm4gYSh0KSxuLnByb21pc2V9fSxkZjBhOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixvLGksYT1uKCJiYzI1IiksYz1uKCIxOTZjIikscz1uKCIxMDNhIiksdT1uKCIxMmZkIiksbD1uKCJkYTNjIikscD1sLnByb2Nlc3MsZj1sLnNldEltbWVkaWF0ZSxkPWwuY2xlYXJJbW1lZGlhdGUsaD1sLk1lc3NhZ2VDaGFubmVsLF89bC5EaXNwYXRjaCxtPTAsdj17fSx5PSJvbnJlYWR5c3RhdGVjaGFuZ2UiLGc9ZnVuY3Rpb24oKXt2YXIgZT0rdGhpcztpZih2Lmhhc093blByb3BlcnR5KGUpKXt2YXIgdD12W2VdO2RlbGV0ZSB2W2VdLHQoKX19LGI9ZnVuY3Rpb24oZSl7Zy5jYWxsKGUuZGF0YSl9O2YmJmR8fChmPWZ1bmN0aW9uKGUpe3ZhciB0PVtdLG49MTt3aGlsZShhcmd1bWVudHMubGVuZ3RoPm4pdC5wdXNoKGFyZ3VtZW50c1tuKytdKTtyZXR1cm4gdlsrK21dPWZ1bmN0aW9uKCl7YygiZnVuY3Rpb24iPT10eXBlb2YgZT9lOkZ1bmN0aW9uKGUpLHQpfSxyKG0pLG19LGQ9ZnVuY3Rpb24oZSl7ZGVsZXRlIHZbZV19LCJwcm9jZXNzIj09bigiNmUxZiIpKHApP3I9ZnVuY3Rpb24oZSl7cC5uZXh0VGljayhhKGcsZSwxKSl9Ol8mJl8ubm93P3I9ZnVuY3Rpb24oZSl7Xy5ub3coYShnLGUsMSkpfTpoPyhvPW5ldyBoLGk9by5wb3J0MixvLnBvcnQxLm9ubWVzc2FnZT1iLHI9YShpLnBvc3RNZXNzYWdlLGksMSkpOmwuYWRkRXZlbnRMaXN0ZW5lciYmImZ1bmN0aW9uIj09dHlwZW9mIHBvc3RNZXNzYWdlJiYhbC5pbXBvcnRTY3JpcHRzPyhyPWZ1bmN0aW9uKGUpe2wucG9zdE1lc3NhZ2UoZSsiIiwiKiIpfSxsLmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLGIsITEpKTpyPXkgaW4gdSgic2NyaXB0Iik/ZnVuY3Rpb24oZSl7cy5hcHBlbmRDaGlsZCh1KCJzY3JpcHQiKSlbeV09ZnVuY3Rpb24oKXtzLnJlbW92ZUNoaWxkKHRoaXMpLGcuY2FsbChlKX19OmZ1bmN0aW9uKGUpe3NldFRpbWVvdXQoYShnLGUsMSksMCl9KSxlLmV4cG9ydHM9e3NldDpmLGNsZWFyOmR9fSxlMTFlOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPSJjb25zdHJ1Y3RvcixoYXNPd25Qcm9wZXJ0eSxpc1Byb3RvdHlwZU9mLHByb3BlcnR5SXNFbnVtZXJhYmxlLHRvTG9jYWxlU3RyaW5nLHRvU3RyaW5nLHZhbHVlT2YiLnNwbGl0KCIsIil9LGU0YTk6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCJiNDU3Iiksbz1uKCJkMTNmIiksaT1uKCIyMzEyIiksYT1uKCI4Y2UwIiksYz1uKCJiMjJhIikscz1uKCI1Y2U3IiksdT1uKCJjMGQ4IiksbD1uKCJmZjBjIikscD1uKCIxYjU1IikoIml0ZXJhdG9yIiksZj0hKFtdLmtleXMmJiJuZXh0ImluW10ua2V5cygpKSxkPSJAQGl0ZXJhdG9yIixoPSJrZXlzIixfPSJ2YWx1ZXMiLG09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuLHYseSxnLGIpe3Mobix0LHYpO3ZhciB3LHgsQyxrPWZ1bmN0aW9uKGUpe2lmKCFmJiZlIGluIE8pcmV0dXJuIE9bZV07c3dpdGNoKGUpe2Nhc2UgaDpyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4odGhpcyxlKX07Y2FzZSBfOnJldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgbih0aGlzLGUpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4odGhpcyxlKX19LFM9dCsiIEl0ZXJhdG9yIixQPXk9PV8sQT0hMSxPPWUucHJvdG90eXBlLCQ9T1twXXx8T1tkXXx8eSYmT1t5XSxUPSR8fGsoeSksaj15P1A/aygiZW50cmllcyIpOlQ6dm9pZCAwLEU9IkFycmF5Ij09dCYmTy5lbnRyaWVzfHwkO2lmKEUmJihDPWwoRS5jYWxsKG5ldyBlKSksQyE9PU9iamVjdC5wcm90b3R5cGUmJkMubmV4dCYmKHUoQyxTLCEwKSxyfHwiZnVuY3Rpb24iPT10eXBlb2YgQ1twXXx8YShDLHAsbSkpKSxQJiYkJiYkLm5hbWUhPT1fJiYoQT0hMCxUPWZ1bmN0aW9uKCl7cmV0dXJuICQuY2FsbCh0aGlzKX0pLHImJiFifHwhZiYmIUEmJk9bcF18fGEoTyxwLFQpLGNbdF09VCxjW1NdPW0seSlpZih3PXt2YWx1ZXM6UD9UOmsoXyksa2V5czpnP1Q6ayhoKSxlbnRyaWVzOmp9LGIpZm9yKHggaW4gdyl4IGluIE98fGkoTyx4LHdbeF0pO2Vsc2UgbyhvLlArby5GKihmfHxBKSx0LHcpO3JldHVybiB3fX0sZTVmYTpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZih2b2lkIDA9PWUpdGhyb3cgVHlwZUVycm9yKCJDYW4ndCBjYWxsIG1ldGhvZCBvbiAgIitlKTtyZXR1cm4gZX19LGU3YWY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1mdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lLiRjcmVhdGVFbGVtZW50LG49ZS5fc2VsZi5fY3x8dDtyZXR1cm4gbigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLWNvbnRhaW5lciIsY2xhc3M6ZS5jb250YWluZXJDbGFzcyxzdHlsZTplLmNvbnRhaW5lclN0eWxlLGF0dHJzOnsiZGF0YS1sb2FkaW5nIjplLmxvYWRpbmd9fSxbZS5sb2FkaW5nP24oImRpdiIse3N0YXRpY0NsYXNzOiJjZy1wLTMgY2ctYmFzZSJ9LFtlLl92KCJMb2FkaW5nIHdpZGdldC4uLiIpXSk6bigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLXdpZGdldCBjZy1mbGV4LWNvbHVtbiJ9LFtlLl9sKGUuY29pbnMsZnVuY3Rpb24odCxyKXtyZXR1cm4gbigiYSIse2tleTp0LmlkLHN0YXRpY0NsYXNzOiJjZy1wLTMgY2ctZmxleCBjZy1qdXN0aWZ5LWJldHdlZW4gY2ctY29pbi1yb3ciLGNsYXNzOnIlMj09PTA/ImNnLWV2ZW4tcm93IjoiIixzdHlsZTplLmxpbmtTdHlsZSxhdHRyczp7aHJlZjplLmxpbmtUb0NvaW5PdmVydmlldyh0LmlkKSx0YXJnZXQ6Il9ibGFuayJ9fSxbbigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLWZsZXggY2ctaXRlbXMtY2VudGVyIn0sW24oImltZyIse3N0YXRpY0NsYXNzOiJjZy1tci0yIixhdHRyczp7c3JjOnQuaW1hZ2V9fSksbigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLXNtLWhpZGUifSxbbigic3BhbiIse3N0YXRpY0NsYXNzOiJjZy1ib2xkIn0sW2UuX3YoZS5fcyh0Lm5hbWUpKV0pLGUuX3YoIiAoIitlLl9zKHQuc3ltYm9sLnRvVXBwZXJDYXNlKCkpKyIpXG4gICAgICAgICIpXSksbigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLWxnLWhpZGUifSxbbigic3BhbiIse3N0YXRpY0NsYXNzOiJjZy1ib2xkIn0sW2UuX3YoZS5fcyh0LnN5bWJvbC50b1VwcGVyQ2FzZSgpKSldKV0pXSksZS5sb2FkaW5nUHJpY2U/bigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLWZsZXggY2ctanVzdGlmeS1lbmQgY2ctaXRlbXMtY2VudGVyIn0sW2UuX3YoIkxvYWRpbmcuLi4iKV0pOm4oImRpdiIse3N0YXRpY0NsYXNzOiJjZy1mbGV4IGNnLWp1c3RpZnktZW5kIGNnLWl0ZW1zLWNlbnRlciIsY2xhc3M6ZS5pc05lZ2F0aXZlKHQucHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoKT8iY2ctcmVkLWNvbG9yLWRhcmsiOiJjZy1wcmltYXJ5LWNvbG9yLWRhcmsifSxbbigiZGl2Iixbbigic3BhbiIse3N0YXRpY0NsYXNzOiJjZy1ib2xkIGNnLXB4LTEiLGNsYXNzOmUucHJpY2luZ0hpZ2hsaWdodENsYXNzZXNbdC5pZF19LFtlLl92KCJcbiAgICAgICAgICAgICIrZS5fcyhlLmZvcm1hdEN1cnJlbmN5KHQuY3VycmVudF9wcmljZSkpKyJcbiAgICAgICAgICAiKV0pLG4oInNwYW4iLFtlLl92KCIoIitlLl9zKGUuZm9ybWF0UGVyY2VudGFnZSh0LnByaWNlX2NoYW5nZV9wZXJjZW50YWdlXzI0aCkpKyIpIildKV0pLG4oImRpdiIse3N0YXRpY0NsYXNzOiJjZy1tbC0yIGNnLXNtLWhpZGUiLGNsYXNzOmUuaXNOZWdhdGl2ZSh0LnByaWNlX2NoYW5nZV9wZXJjZW50YWdlXzI0aCk/ImNnLWFycm93LWRvd24iOiJjZy1hcnJvdy11cCJ9KV0pXSl9KSxuKCJkaXYiLHtzdGF0aWNDbGFzczoiY2ctZmxleCBjZy1qdXN0aWZ5LWJldHdlZW4gY2ctaXRlbXMtY2VudGVyIGNnLWZvb3RlciBjZy1weC0yIGNnLXB5LTEifSxbbigic2VsZWN0Iix7YXR0cnM6e25hbWU6ImN1cnJlbmN5In0sb246e2NoYW5nZTplLmN1cnJlbmN5Q2hhbmdlZH19LGUuX2woZS5zdXBwb3J0ZWRDdXJyZW5jaWVzKCksZnVuY3Rpb24odCl7cmV0dXJuIG4oIm9wdGlvbiIse2tleTp0LGRvbVByb3BzOnt2YWx1ZTp0LnRvTG93ZXJDYXNlKCksc2VsZWN0ZWQ6dC50b0xvd2VyQ2FzZSgpPT09ZS5jdXJyZW5jeUNvZGV9fSxbZS5fdihlLl9zKHQpKV0pfSksMCksbigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLWJvbGQiLGRvbVByb3BzOntpbm5lckhUTUw6ZS5fcyhlLnBvd2VyZWRCeUNvaW5HZWNrbyl9fSldKV0sMildKX0sbz1bXSxpPW4oIjU5YWQiKSxhPW4ubihpKSxjPShuKCI3NTE0IiksbigiODJhMyIpKSxzPW4ubihjKSx1PShuKCJhYzZhIiksbigiMjhhNSIpLG4oImM1ZjYiKSxuKCJjYWRmIiksbigiNTUxYyIpLG4oIjA5N2QiKSxuKCIyYjBlIikpLGw9bigiN2RhYiIpLHA9bigiZGEzMCIpLGY9bigiZThiYSIpLGQ9bigiZDUyNSIpLGg9bigiMWY2OSIpLF89bigiYzFlMiIpLG09NDAwLHY9e25hbWU6IkNvaW5nZWNrb0NvaW5MaXN0V2lkZ2V0IixtaXhpbnM6W09iamVjdChoWyJhIl0pKG0pLE9iamVjdChfWyJhIl0pKCldLHByb3BzOntiYWNrZ3JvdW5kQ29sb3I6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IiNmZmZmZmYifSxmb250Q29sb3I6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6IiM0YzRjNGMifSxjb2luSWRzOnt0eXBlOlN0cmluZyxkZWZhdWx0OiJiaXRjb2luLGV0aGVyZXVtLGVvcyxyaXBwbGUsbGl0ZWNvaW4sdHJvbixuZW8sbW9uZXJvIn0sY3VycmVuY3k6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6InVzZCJ9LGxvY2FsZTp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiZW4ifSx3aWR0aDp7dHlwZTpOdW1iZXIsZGVmYXVsdDowfX0sZGF0YTpmdW5jdGlvbigpe3JldHVybntsb2FkaW5nOiEwLHBvbHlnbG90Ont9LGFwaURhdGE6W10sY29udGFpbmVyQ2xhc3M6ImxhcmdlIixsb2FkaW5nUHJpY2U6ITEscHJpY2luZ0hpZ2hsaWdodENsYXNzZXM6e319fSxjb21wdXRlZDp7Y3VycmVuY3lDb2RlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY3VycmVuY3kudG9Mb3dlckNhc2UoKX0sc2FuaXRpemVkQ29pbklkczpmdW5jdGlvbigpe3ZhciBlPXRoaXMuY29pbklkcy5zcGxpdCgiLCIpLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gZS50cmltKCl9KSx0PVtdLG49e307cmV0dXJuIGUuZm9yRWFjaChmdW5jdGlvbihlKXtuW2VdfHx0LnB1c2goZSksbltlXT1lfSksdH0sY29pbnM6ZnVuY3Rpb24oKXtpZighKHRoaXMuYXBpRGF0YS5sZW5ndGg+MCkpcmV0dXJuW107dmFyIGU9e307cmV0dXJuIHRoaXMuYXBpRGF0YS5mb3JFYWNoKGZ1bmN0aW9uKHQpe2VbdC5pZF09dH0pLHRoaXMuc2FuaXRpemVkQ29pbklkcy5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIGVbdF19KX0scG93ZXJlZEJ5Q29pbkdlY2tvOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucG9seWdsb3QudCgiY29pbl9saXN0X3dpZGdldC5wb3dlcmVkX2J5Iix7bmFtZToiQ29pbkdlY2tvIixuYW1lX3N0YXJ0Oic8YSBjbGFzcz0iY2ctcHJpbWFyeS1jb2xvci1kYXJrIGNnLW5vLXVuZGVybGluZSIgaHJlZj0iaHR0cHM6Ly93d3cuY29pbmdlY2tvLmNvbS8nLmNvbmNhdCh0aGlzLmxvY2FsZSwiPyIpLmNvbmNhdCh0aGlzLnV0bVBhcmFtcyh0aGlzLnNhbml0aXplZENvaW5JZHMuam9pbigpKSwnIiB0YXJnZXQ9Il9ibGFuayI+JyksbmFtZV9lbmQ6IjwvYT4ifSl9LGNvbnRhaW5lclN0eWxlOmZ1bmN0aW9uKCl7dmFyIGU9MD09PXRoaXMud2lkdGg/IjEwMCUiOiIiLmNvbmNhdCh0aGlzLndpZHRoLCJweCIpO3JldHVybnt3aWR0aDplLGJhY2tncm91bmRDb2xvcjp0aGlzLmJhY2tncm91bmRDb2xvcixjb2xvcjp0aGlzLmZvbnRDb2xvcn19LGxpbmtTdHlsZTpmdW5jdGlvbigpe3JldHVybntjb2xvcjp0aGlzLmZvbnRDb2xvcn19fSxtZXRob2RzOntjdXJyZW5jeUNoYW5nZWQ6ZnVuY3Rpb24oZSl7T2JqZWN0KHBbImEiXSkodGhpcy4kZWwpLnNldEF0dHJpYnV0ZSgiY3VycmVuY3kiLGUudGFyZ2V0LnZhbHVlLnRvTG93ZXJDYXNlKCkpfSxmb3JtYXRDdXJyZW5jeTpmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0KGZbImZvcm1hdEN1cnJlbmN5Il0pKGUsdGhpcy5jdXJyZW5jeUNvZGUsdGhpcy5sb2NhbGUpfSxmb3JtYXRQZXJjZW50YWdlOmZ1bmN0aW9uKGUpe3ZhciB0PXMoKShlKTtyZXR1cm4iIi5jb25jYXQodC50b0ZpeGVkKDIpLCIlIil9LGZldGNoRGF0YTpmdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sbj10LmNvaW5SZWxvYWQscj12b2lkIDAhPT1uJiZuLG89dC5jdXJyZW5jeVJlbG9hZCxpPXZvaWQgMCE9PW8mJm87cj90aGlzLmxvYWRpbmc9ITA6aSYmKHRoaXMubG9hZGluZ1ByaWNlPSEwKSxmZXRjaCgiaHR0cHM6Ly9hcGkuY29pbmdlY2tvLmNvbS9hcGkvdjMvY29pbnMvbWFya2V0cz92c19jdXJyZW5jeT0iLmNvbmNhdCh0aGlzLmN1cnJlbmN5Q29kZSwiJmlkcz0iKS5jb25jYXQodGhpcy5zYW5pdGl6ZWRDb2luSWRzLmpvaW4oIiwiKSwiJmxvY2FsZT0iKS5jb25jYXQodGhpcy5sb2NhbGUpKS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7dCYmKGUuYXBpRGF0YT10LGUubG9hZGluZz0hMSxlLmxvYWRpbmdQcmljZT0hMSl9KX0saXNOZWdhdGl2ZTpmdW5jdGlvbihlKXtyZXR1cm4gcygpKGUpPDB9LGxpbmtUb0NvaW5PdmVydmlldzpmdW5jdGlvbihlKXtyZXR1cm4iaHR0cHM6Ly93d3cuY29pbmdlY2tvLmNvbS9yZXNvdXJjZV9yZWRpcmVjdD9sb2NhbGU9Ii5jb25jYXQodGhpcy5sb2NhbGUsIiZyb3V0ZT1jb2lucy8iKS5jb25jYXQoZSwiJiIpLmNvbmNhdCh0aGlzLnV0bVBhcmFtcyhlKSl9LHV0bVBhcmFtczpmdW5jdGlvbihlKXtyZXR1cm4idXRtX3NvdXJjZT0iLmNvbmNhdCh3aW5kb3cubG9jYXRpb24uaG9zdCwiJnV0bV9tZWRpdW09Y29pbl9saXN0X3dpZGdldCZ1dG1fY29udGVudD0iKS5jb25jYXQoZSl9LHN1cHBvcnRlZEN1cnJlbmNpZXM6bFsiYSJdLGxpc3RlbkZvclByaWNlQ2hhbmdlczpmdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5jb2luRGF0YUxpc3RlbmVyJiZ0aGlzLmNvaW5EYXRhTGlzdGVuZXIudW5zdWJzY3JpYmUoKSx0aGlzLmNvaW5EYXRhTGlzdGVuZXI9T2JqZWN0KGRbImEiXSkodGhpcy5zYW5pdGl6ZWRDb2luSWRzLGZ1bmN0aW9uKHQpe3ZhciBuPWUuYXBpRGF0YS5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiBlLmlkPT09dC5jfSk7aWYobil7dmFyIHI9bi5jdXJyZW50X3ByaWNlLG89dC5wW2UuY3VycmVuY3lDb2RlXTtlLmZvcm1hdEN1cnJlbmN5KHIpIT09ZS5mb3JtYXRDdXJyZW5jeShvKSYmKGEoKShyKTw9YSgpKG8pP2UuaGlnaGxpZ2h0UHJpY2luZyhuLmlkLCJjZy1wcmltYXJ5LWNvbG9yIik6ZS5oaWdobGlnaHRQcmljaW5nKG4uaWQsImNnLXJlZC1jb2xvciIpKSxuLmN1cnJlbnRfcHJpY2U9byxuLnByaWNlX2NoYW5nZV9wZXJjZW50YWdlXzI0aD10LmVbZS5jdXJyZW5jeUNvZGVdfX0pfSxoaWdobGlnaHRQcmljaW5nOmZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpczt1WyJhIl0uc2V0KHRoaXMucHJpY2luZ0hpZ2hsaWdodENsYXNzZXMsZSx0KSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dVsiYSJdLnNldChuLnByaWNpbmdIaWdobGlnaHRDbGFzc2VzLGUsbnVsbCl9LDFlMyl9fSx3YXRjaDp7Y29pbklkczpmdW5jdGlvbigpe3RoaXMuZmV0Y2hEYXRhKHtjb2luUmVsb2FkOiEwfSksdGhpcy5saXN0ZW5Gb3JQcmljZUNoYW5nZXMoKSx0aGlzLnByaWNpbmdIaWdobGlnaHQ9e319LGN1cnJlbmN5OmZ1bmN0aW9uKCl7dGhpcy5mZXRjaERhdGEoe2N1cnJlbmN5UmVsb2FkOiEwfSl9fSxjcmVhdGVkOmZ1bmN0aW9uKCl7dGhpcy5mZXRjaERhdGEoKSx0aGlzLmxpc3RlbkZvclByaWNlQ2hhbmdlcygpfSxkZXN0cm95ZWQ6ZnVuY3Rpb24oKXt0aGlzLmNvaW5EYXRhTGlzdGVuZXImJnRoaXMuY29pbkRhdGFMaXN0ZW5lci51bnN1YnNjcmliZSgpfX0seT12LGc9bigiMjg3NyIpLGI9T2JqZWN0KGdbImEiXSkoeSxyLG8sITEsbnVsbCxudWxsLG51bGwpO2Iub3B0aW9ucy5fX2ZpbGU9IkNvaW5nZWNrb0NvaW5MaXN0V2lkZ2V0LnZ1ZSI7dFsiYSJdPWIuZXhwb3J0c30sZTg1MzpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDNmNCIpLG89bigiMTE2OSIpLGk9bigiMmI0YyIpKCJzcGVjaWVzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiBvKGUpJiYodD1lLmNvbnN0cnVjdG9yLCJmdW5jdGlvbiIhPXR5cGVvZiB0fHx0IT09QXJyYXkmJiFvKHQucHJvdG90eXBlKXx8KHQ9dm9pZCAwKSxyKHQpJiYodD10W2ldLG51bGw9PT10JiYodD12b2lkIDApKSksdm9pZCAwPT09dD9BcnJheTp0fX0sZThiYTpmdW5jdGlvbihlLHQsbil7KGZ1bmN0aW9uKGUsbil7bih0KX0pKDAsZnVuY3Rpb24oZSl7InVzZSBzdHJpY3QiO2NvbnN0IHQ9e0JUQzoiyYMiLEVUSDoizp4iLFVTRDoiJCIsQ0FEOiJDJCIsR0JQOiLCoyIsRVVSOiLigqwiLENIRjoiRnIuIixTRUs6ImtyIixKUFk6IsKlIixDTlk6IsKlIixJTlI6IuKCuSIsUlVCOiLigr0iLEFVRDoiQSQiLEhLRDoiSEskIixTR0Q6IlMkIixUV0Q6Ik5UJCIsQlJMOiJSJCIsS1JXOiLigqkiLFpBUjoiUiIsTVlSOiJSTSIsSURSOiJScCIsTlpEOiJOWiQiLE1YTjoiTVgkIixQSFA6IuKCsSIsREtLOiJrci4iLFBMTjoiesWCIixBRUQ6IkRIIixBUlM6IiQiLENMUDoiQ0xQIixDWks6IkvEjSIsSFVGOiJGdCIsSUxTOiLigqoiLEtXRDoiS0QiLExLUjoiUnMiLE5PSzoia3IiLFBLUjoi4oKoIixTQVI6IlNSIixUSEI6IuC4vyIsVFJZOiLigroiLFhBVToiWEFVIixYQUc6IlhBRyIsWERSOiJYRFIifSxuPXtNWVI6e2xvY2F0aW9uOntzdGFydDohMH0sZm9yTG9jYWxlczp7ZW46ITB9fSxTR0Q6e2xvY2F0aW9uOntzdGFydDohMH0sZm9yTG9jYWxlczp7ZW46ITB9fSxQSFA6e2xvY2F0aW9uOntzdGFydDohMH0sZm9yTG9jYWxlczp7ZW46ITB9fSxCVEM6e2xvY2F0aW9uOntzdGFydDohMH0sZm9yTG9jYWxlczp7ZW46ITB9fSxFVEg6e2xvY2F0aW9uOntzdGFydDohMH0sZm9yTG9jYWxlczp7ZW46ITB9fX07ZnVuY3Rpb24gcigpe3JldHVybiEoIm9iamVjdCIhPXR5cGVvZiBJbnRsfHwhSW50bHx8ImZ1bmN0aW9uIiE9dHlwZW9mIEludGwuTnVtYmVyRm9ybWF0KX1mdW5jdGlvbiBvKGUpe3JldHVybiJCVEMiPT09ZXx8IkVUSCI9PT1lfWZ1bmN0aW9uIGkoZSl7cmV0dXJuIG8oZSl8fG51bGw9PXRbZV19ZnVuY3Rpb24gYShlLHI9ImVuIil7Y29uc3Qgbz1lLm1hdGNoKC9eW0EtWl17M31ccz8vKTtpZihudWxsIT1vKXtjb25zdCBpPW9bMF0udHJpbSgpLGE9bltpXTtyZXR1cm4gYSYmYS5sb2NhdGlvbi5zdGFydCYmYS5mb3JMb2NhbGVzW3JdP2UucmVwbGFjZShvWzBdLHRbaV0pOmV9Y29uc3QgaT1lLm1hdGNoKC9bQS1aXXszfSQvKTtpZihudWxsIT1pKXtjb25zdCBvPWlbMF0sYT1uW29dO3JldHVybiBhJiZhLmxvY2F0aW9uLmVuZCYmYS5mb3JMb2NhbGVzW3JdP2UucmVwbGFjZShvLHRbb10pOmV9cmV0dXJuIGV9ZnVuY3Rpb24gYyhlLHQsbil7bGV0IHI7dHJ5e3I9bmV3IEludGwuTnVtYmVyRm9ybWF0KHQse3N0eWxlOiJjdXJyZW5jeSIsY3VycmVuY3k6ZSxjdXJyZW5jeURpc3BsYXk6InN5bWJvbCIsbWluaW11bUZyYWN0aW9uRGlnaXRzOm4sbWF4aW11bUZyYWN0aW9uRGlnaXRzOm59KX1jYXRjaChvKXtyZXR1cm4gcyhlLHQsbil9cmV0dXJuIHJ9ZnVuY3Rpb24gcyhlLHQsbj0yKXtyZXR1cm4gZT1lLnRvVXBwZXJDYXNlKCksbj4yP3tmb3JtYXQ6dD0+e3JldHVybiBpKGUpP2Ake3QudG9GaXhlZChuKX0gJHtlfWA6YCR7ZX0gJHt0LnRvRml4ZWQobil9YH19Ontmb3JtYXQ6bj0+e3JldHVybiBpKGUpP2Ake24udG9Mb2NhbGVTdHJpbmcodCl9ICR7ZX1gOmAke2V9ICR7bi50b0xvY2FsZVN0cmluZyh0KX1gfX19ZnVuY3Rpb24gdShlLHQsbil7Y29uc3QgYT1yKCksdT1hJiYoIWkoZSl8fG8oZSkpO3JldHVybiB1P2MoZSx0LG4pOnMoZSx0LG4pfWxldCBsLHAsZixkLGgsXyxtLHY9e307ZnVuY3Rpb24geSgpe3Y9e319ZnVuY3Rpb24gZyhlLHQpe2NvbnN0IG49YCR7ZX0tJHt0fWAscj12W25dO2Y9cj9yLmN1cnJlbmN5Rm9ybWF0dGVyTm9ybWFsOnUoZSx0KSxkPXI/ci5jdXJyZW5jeUZvcm1hdHRlck5vRGVjaW1hbDp1KGUsdCwwKSxoPXI/ci5jdXJyZW5jeUZvcm1hdHRlck1lZGl1bTp1KGUsdCwzKSxfPXI/ci5jdXJyZW5jeUZvcm1hdHRlclNtYWxsOnUoZSx0LDYpLG09cj9yLmN1cnJlbmN5Rm9ybWF0dGVyVmVyeVNtYWxsOnUoZSx0LDgpLG51bGw9PXImJih2W25dPXt9LHZbbl0uY3VycmVuY3lGb3JtYXR0ZXJOb3JtYWw9Zix2W25dLmN1cnJlbmN5Rm9ybWF0dGVyTm9EZWNpbWFsPWQsdltuXS5jdXJyZW5jeUZvcm1hdHRlck1lZGl1bT1oLHZbbl0uY3VycmVuY3lGb3JtYXR0ZXJTbWFsbD1fLHZbbl0uY3VycmVuY3lGb3JtYXR0ZXJWZXJ5U21hbGw9bSl9Y29uc3QgYj01MCx3PTFlMztmdW5jdGlvbiB4KGUsdCxuPSJlbiIscj0hMSl7aWYodD10LnRvVXBwZXJDYXNlKCksbD09PXQmJnA9PW58fChsPXQscD1uLGcodCxuKSksaSh0KSl7bGV0IHQ9cGFyc2VGbG9hdChlKTtyZXR1cm4gcj8wPT09ZT90LnRvRml4ZWQoMik6dC50b1ByZWNpc2lvbig4KTphKDA9PT1lP2YuZm9ybWF0KGUpOnQ+PXc/ZC5mb3JtYXQoZSk6dD49YiYmdDx3P2guZm9ybWF0KGUpOnQ+PTEmJnQ8Yj9fLmZvcm1hdChlKTptLmZvcm1hdChlKSxuKX1yZXR1cm4gcj9lPC4wMDE/ZS50b0ZpeGVkKDgpOmU8MT9lLnRvRml4ZWQoNik6ZS50b0ZpeGVkKDIpOmEoMD09PWU/Zi5mb3JtYXQoZSk6ZTwuMDU/bS5mb3JtYXQoZSk6ZTwxP18uZm9ybWF0KGUpOmU+MmU0P2QuZm9ybWF0KGUpOmYuZm9ybWF0KGUpLG4pfWUuaXNDcnlwdG89aSxlLmNsZWFyQ2FjaGU9eSxlLmZvcm1hdEN1cnJlbmN5PXgsT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pfSl9LGU5YWM6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcixvLGksYSxjPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I/ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhcmd1bWVudHMsImNhbGxlZSIpLmdldH0oKTpmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3J9LHM9ImZ1bmN0aW9uIj09PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcix1PU9iamVjdC5nZXRQcm90b3R5cGVPZnx8ZnVuY3Rpb24oZSl7cmV0dXJuIGUuX19wcm90b19ffSxsPW8/dShvKTpyLHA9aT9pLmNvbnN0cnVjdG9yOnIsZj1hP3UoYSk6cixkPWE/YSgpOnIsaD0idW5kZWZpbmVkIj09PXR5cGVvZiBVaW50OEFycmF5P3I6dShVaW50OEFycmF5KSxfPXsiJCAlQXJyYXklIjpBcnJheSwiJCAlQXJyYXlCdWZmZXIlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBBcnJheUJ1ZmZlcj9yOkFycmF5QnVmZmVyLCIkICVBcnJheUJ1ZmZlclByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEFycmF5QnVmZmVyP3I6QXJyYXlCdWZmZXIucHJvdG90eXBlLCIkICVBcnJheUl0ZXJhdG9yUHJvdG90eXBlJSI6cz91KFtdW1N5bWJvbC5pdGVyYXRvcl0oKSk6ciwiJCAlQXJyYXlQcm90b3R5cGUlIjpBcnJheS5wcm90b3R5cGUsIiQgJUFycmF5UHJvdG9fZW50cmllcyUiOkFycmF5LnByb3RvdHlwZS5lbnRyaWVzLCIkICVBcnJheVByb3RvX2ZvckVhY2glIjpBcnJheS5wcm90b3R5cGUuZm9yRWFjaCwiJCAlQXJyYXlQcm90b19rZXlzJSI6QXJyYXkucHJvdG90eXBlLmtleXMsIiQgJUFycmF5UHJvdG9fdmFsdWVzJSI6QXJyYXkucHJvdG90eXBlLnZhbHVlcywiJCAlQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlJSI6ciwiJCAlQXN5bmNGdW5jdGlvbiUiOnAsIiQgJUFzeW5jRnVuY3Rpb25Qcm90b3R5cGUlIjpwP3AucHJvdG90eXBlOnIsIiQgJUFzeW5jR2VuZXJhdG9yJSI6YT91KGQpOnIsIiQgJUFzeW5jR2VuZXJhdG9yRnVuY3Rpb24lIjpmLCIkICVBc3luY0dlbmVyYXRvclByb3RvdHlwZSUiOmY/Zi5wcm90b3R5cGU6ciwiJCAlQXN5bmNJdGVyYXRvclByb3RvdHlwZSUiOmQmJnMmJlN5bWJvbC5hc3luY0l0ZXJhdG9yP2RbU3ltYm9sLmFzeW5jSXRlcmF0b3JdKCk6ciwiJCAlQXRvbWljcyUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEF0b21pY3M/cjpBdG9taWNzLCIkICVCb29sZWFuJSI6Qm9vbGVhbiwiJCAlQm9vbGVhblByb3RvdHlwZSUiOkJvb2xlYW4ucHJvdG90eXBlLCIkICVEYXRhVmlldyUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIERhdGFWaWV3P3I6RGF0YVZpZXcsIiQgJURhdGFWaWV3UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgRGF0YVZpZXc/cjpEYXRhVmlldy5wcm90b3R5cGUsIiQgJURhdGUlIjpEYXRlLCIkICVEYXRlUHJvdG90eXBlJSI6RGF0ZS5wcm90b3R5cGUsIiQgJWRlY29kZVVSSSUiOmRlY29kZVVSSSwiJCAlZGVjb2RlVVJJQ29tcG9uZW50JSI6ZGVjb2RlVVJJQ29tcG9uZW50LCIkICVlbmNvZGVVUkklIjplbmNvZGVVUkksIiQgJWVuY29kZVVSSUNvbXBvbmVudCUiOmVuY29kZVVSSUNvbXBvbmVudCwiJCAlRXJyb3IlIjpFcnJvciwiJCAlRXJyb3JQcm90b3R5cGUlIjpFcnJvci5wcm90b3R5cGUsIiQgJWV2YWwlIjpldmFsLCIkICVFdmFsRXJyb3IlIjpFdmFsRXJyb3IsIiQgJUV2YWxFcnJvclByb3RvdHlwZSUiOkV2YWxFcnJvci5wcm90b3R5cGUsIiQgJUZsb2F0MzJBcnJheSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEZsb2F0MzJBcnJheT9yOkZsb2F0MzJBcnJheSwiJCAlRmxvYXQzMkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgRmxvYXQzMkFycmF5P3I6RmxvYXQzMkFycmF5LnByb3RvdHlwZSwiJCAlRmxvYXQ2NEFycmF5JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgRmxvYXQ2NEFycmF5P3I6RmxvYXQ2NEFycmF5LCIkICVGbG9hdDY0QXJyYXlQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBGbG9hdDY0QXJyYXk/cjpGbG9hdDY0QXJyYXkucHJvdG90eXBlLCIkICVGdW5jdGlvbiUiOkZ1bmN0aW9uLCIkICVGdW5jdGlvblByb3RvdHlwZSUiOkZ1bmN0aW9uLnByb3RvdHlwZSwiJCAlR2VuZXJhdG9yJSI6bz91KG8oKSk6ciwiJCAlR2VuZXJhdG9yRnVuY3Rpb24lIjpsLCIkICVHZW5lcmF0b3JQcm90b3R5cGUlIjpsP2wucHJvdG90eXBlOnIsIiQgJUludDhBcnJheSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEludDhBcnJheT9yOkludDhBcnJheSwiJCAlSW50OEFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgSW50OEFycmF5P3I6SW50OEFycmF5LnByb3RvdHlwZSwiJCAlSW50MTZBcnJheSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEludDE2QXJyYXk/cjpJbnQxNkFycmF5LCIkICVJbnQxNkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgSW50MTZBcnJheT9yOkludDhBcnJheS5wcm90b3R5cGUsIiQgJUludDMyQXJyYXklIjoidW5kZWZpbmVkIj09PXR5cGVvZiBJbnQzMkFycmF5P3I6SW50MzJBcnJheSwiJCAlSW50MzJBcnJheVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEludDMyQXJyYXk/cjpJbnQzMkFycmF5LnByb3RvdHlwZSwiJCAlaXNGaW5pdGUlIjppc0Zpbml0ZSwiJCAlaXNOYU4lIjppc05hTiwiJCAlSXRlcmF0b3JQcm90b3R5cGUlIjpzP3UodShbXVtTeW1ib2wuaXRlcmF0b3JdKCkpKTpyLCIkICVKU09OJSI6SlNPTiwiJCAlSlNPTlBhcnNlJSI6SlNPTi5wYXJzZSwiJCAlTWFwJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgTWFwP3I6TWFwLCIkICVNYXBJdGVyYXRvclByb3RvdHlwZSUiOiJ1bmRlZmluZWQiIT09dHlwZW9mIE1hcCYmcz91KChuZXcgTWFwKVtTeW1ib2wuaXRlcmF0b3JdKCkpOnIsIiQgJU1hcFByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIE1hcD9yOk1hcC5wcm90b3R5cGUsIiQgJU1hdGglIjpNYXRoLCIkICVOdW1iZXIlIjpOdW1iZXIsIiQgJU51bWJlclByb3RvdHlwZSUiOk51bWJlci5wcm90b3R5cGUsIiQgJU9iamVjdCUiOk9iamVjdCwiJCAlT2JqZWN0UHJvdG90eXBlJSI6T2JqZWN0LnByb3RvdHlwZSwiJCAlT2JqUHJvdG9fdG9TdHJpbmclIjpPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLCIkICVPYmpQcm90b192YWx1ZU9mJSI6T2JqZWN0LnByb3RvdHlwZS52YWx1ZU9mLCIkICVwYXJzZUZsb2F0JSI6cGFyc2VGbG9hdCwiJCAlcGFyc2VJbnQlIjpwYXJzZUludCwiJCAlUHJvbWlzZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb21pc2U/cjpQcm9taXNlLCIkICVQcm9taXNlUHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgUHJvbWlzZT9yOlByb21pc2UucHJvdG90eXBlLCIkICVQcm9taXNlUHJvdG9fdGhlbiUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb21pc2U/cjpQcm9taXNlLnByb3RvdHlwZS50aGVuLCIkICVQcm9taXNlX2FsbCUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb21pc2U/cjpQcm9taXNlLmFsbCwiJCAlUHJvbWlzZV9yZWplY3QlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBQcm9taXNlP3I6UHJvbWlzZS5yZWplY3QsIiQgJVByb21pc2VfcmVzb2x2ZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb21pc2U/cjpQcm9taXNlLnJlc29sdmUsIiQgJVByb3h5JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgUHJveHk/cjpQcm94eSwiJCAlUmFuZ2VFcnJvciUiOlJhbmdlRXJyb3IsIiQgJVJhbmdlRXJyb3JQcm90b3R5cGUlIjpSYW5nZUVycm9yLnByb3RvdHlwZSwiJCAlUmVmZXJlbmNlRXJyb3IlIjpSZWZlcmVuY2VFcnJvciwiJCAlUmVmZXJlbmNlRXJyb3JQcm90b3R5cGUlIjpSZWZlcmVuY2VFcnJvci5wcm90b3R5cGUsIiQgJVJlZmxlY3QlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBSZWZsZWN0P3I6UmVmbGVjdCwiJCAlUmVnRXhwJSI6UmVnRXhwLCIkICVSZWdFeHBQcm90b3R5cGUlIjpSZWdFeHAucHJvdG90eXBlLCIkICVTZXQlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBTZXQ/cjpTZXQsIiQgJVNldEl0ZXJhdG9yUHJvdG90eXBlJSI6InVuZGVmaW5lZCIhPT10eXBlb2YgU2V0JiZzP3UoKG5ldyBTZXQpW1N5bWJvbC5pdGVyYXRvcl0oKSk6ciwiJCAlU2V0UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgU2V0P3I6U2V0LnByb3RvdHlwZSwiJCAlU2hhcmVkQXJyYXlCdWZmZXIlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBTaGFyZWRBcnJheUJ1ZmZlcj9yOlNoYXJlZEFycmF5QnVmZmVyLCIkICVTaGFyZWRBcnJheUJ1ZmZlclByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFNoYXJlZEFycmF5QnVmZmVyP3I6U2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLCIkICVTdHJpbmclIjpTdHJpbmcsIiQgJVN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlJSI6cz91KCIiW1N5bWJvbC5pdGVyYXRvcl0oKSk6ciwiJCAlU3RyaW5nUHJvdG90eXBlJSI6U3RyaW5nLnByb3RvdHlwZSwiJCAlU3ltYm9sJSI6cz9TeW1ib2w6ciwiJCAlU3ltYm9sUHJvdG90eXBlJSI6cz9TeW1ib2wucHJvdG90eXBlOnIsIiQgJVN5bnRheEVycm9yJSI6U3ludGF4RXJyb3IsIiQgJVN5bnRheEVycm9yUHJvdG90eXBlJSI6U3ludGF4RXJyb3IucHJvdG90eXBlLCIkICVUaHJvd1R5cGVFcnJvciUiOmMsIiQgJVR5cGVkQXJyYXklIjpoLCIkICVUeXBlZEFycmF5UHJvdG90eXBlJSI6aD9oLnByb3RvdHlwZTpyLCIkICVUeXBlRXJyb3IlIjpUeXBlRXJyb3IsIiQgJVR5cGVFcnJvclByb3RvdHlwZSUiOlR5cGVFcnJvci5wcm90b3R5cGUsIiQgJVVpbnQ4QXJyYXklIjoidW5kZWZpbmVkIj09PXR5cGVvZiBVaW50OEFycmF5P3I6VWludDhBcnJheSwiJCAlVWludDhBcnJheVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFVpbnQ4QXJyYXk/cjpVaW50OEFycmF5LnByb3RvdHlwZSwiJCAlVWludDhDbGFtcGVkQXJyYXklIjoidW5kZWZpbmVkIj09PXR5cGVvZiBVaW50OENsYW1wZWRBcnJheT9yOlVpbnQ4Q2xhbXBlZEFycmF5LCIkICVVaW50OENsYW1wZWRBcnJheVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFVpbnQ4Q2xhbXBlZEFycmF5P3I6VWludDhDbGFtcGVkQXJyYXkucHJvdG90eXBlLCIkICVVaW50MTZBcnJheSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFVpbnQxNkFycmF5P3I6VWludDE2QXJyYXksIiQgJVVpbnQxNkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgVWludDE2QXJyYXk/cjpVaW50MTZBcnJheS5wcm90b3R5cGUsIiQgJVVpbnQzMkFycmF5JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgVWludDMyQXJyYXk/cjpVaW50MzJBcnJheSwiJCAlVWludDMyQXJyYXlQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBVaW50MzJBcnJheT9yOlVpbnQzMkFycmF5LnByb3RvdHlwZSwiJCAlVVJJRXJyb3IlIjpVUklFcnJvciwiJCAlVVJJRXJyb3JQcm90b3R5cGUlIjpVUklFcnJvci5wcm90b3R5cGUsIiQgJVdlYWtNYXAlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBXZWFrTWFwP3I6V2Vha01hcCwiJCAlV2Vha01hcFByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFdlYWtNYXA/cjpXZWFrTWFwLnByb3RvdHlwZSwiJCAlV2Vha1NldCUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFdlYWtTZXQ/cjpXZWFrU2V0LCIkICVXZWFrU2V0UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgV2Vha1NldD9yOldlYWtTZXQucHJvdG90eXBlfTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZihhcmd1bWVudHMubGVuZ3RoPjEmJiJib29sZWFuIiE9PXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoJyJhbGxvd01pc3NpbmciIGFyZ3VtZW50IG11c3QgYmUgYSBib29sZWFuJyk7dmFyIG49IiQgIitlO2lmKCEobiBpbiBfKSl0aHJvdyBuZXcgU3ludGF4RXJyb3IoImludHJpbnNpYyAiK2UrIiBkb2VzIG5vdCBleGlzdCEiKTtpZigidW5kZWZpbmVkIj09PXR5cGVvZiBfW25dJiYhdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnRyaW5zaWMgIitlKyIgZXhpc3RzLCBidXQgaXMgbm90IGF2YWlsYWJsZS4gUGxlYXNlIGZpbGUgYW4gaXNzdWUhIik7cmV0dXJuIF9bbl19fSxlYmQ2OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJjYjdjIiksbz1uKCJkOGU4IiksaT1uKCIyYjRjIikoInNwZWNpZXMiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbixhPXIoZSkuY29uc3RydWN0b3I7cmV0dXJuIHZvaWQgMD09PWF8fHZvaWQgMD09KG49cihhKVtpXSk/dDpvKG4pfX0sZWRkNDpmdW5jdGlvbihlKXtlLmV4cG9ydHM9e2NvaW5fZGV0YWlsczp7bWNhcF9yYW5rOiJNYXJrZXQgQ2FwIFJhbmsiLG1jYXA6Ik1hcmtldCBDYXAiLCIyNGhfdm9sdW1lIjoiMjRIIFZvbHVtZSIsIjI0aF9oaWdoX2xvdyI6IjI0SCBIaWdoL0xvdyJ9LGNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQ6e3Bvd2VyZWRfYnk6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsY3J5cHRvX3ByaWNlX2NvbXBhcmlzb246IkNyeXB0byBQcmljZSBDb21wYXJpc29uIixjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uOiJDcnlwdG8gTWFya2V0IENhcCBDb21wYXJpc29uIn0sY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ontwb3dlcmVkX2J5OiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3ByaWNlX2NoYXJ0X3dpZGdldDp7IjI0aF9oaWdoIjoiMjRIIEhpZ2giLCIyNGhfbG93IjoiMjRIIExvdyIsdmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ontwb3dlcmVkX2J5OiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2xpc3Rfd2lkZ2V0Ontwb3dlcmVkX2J5OiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxiZWFtX3dpZGdldDp7cG93ZXJlZF9ieToiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl90aWNrZXJfd2lkZ2V0OnsiMjRoX2hpZ2giOiIyNEggSGlnaCIsIjI0aF9sb3ciOiIyNEggTG93Iix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fY29udmVydGVyX3dpZGdldDp7dmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2hlYXRtYXBfd2lkZ2V0Ont0aXRsZToiQ3J5cHRvY3VycmVuY2llcyBUcmVlIE1hcCIsc3VidGl0bGU6IihUb3AgJXt0b3B9IGJ5IE1hcmtldCBDYXApIixwb3dlcmVkX2J5OiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxyYW5kb21fY29pbl93aWRnZXQ6e2Rpc2NsYWltZXI6IkRpc2NsYWltZXI6IFRoaXMgdG9vbHMgc2VydmUgYXMgYW4gZW50ZXJ0YWlubWVudCBhbmQgZG9lcyBub3QgY29uc3RpdHV0ZSBmaW5hbmNpYWwgYWR2aWNlLiIsc3BpbjoiU3BpbiIsYXZhaWxhYmxlX2NvaW5zOiJBdmFpbGFibGUgQ29pbnMifSxjb2luX2RhaWx5X3ByaWNlX3dpZGdldDp7dGl0bGU6IkNvaW5HZWNrbyBQcmljZSBVcGRhdGUiLHRvdGFsX21jYXA6IlRvdGFsIE0gY2FwIiwiMjRoX3ZvbCI6IjI0aCBWb2x1bWUiLGRvbToiRG9tIn0sY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0OntleGNoYW5nZToiRXhjaGFuZ2UiLHBhaXI6IlBhaXIiLHByaWNlOiJQcmljZSIsdm9sdW1lOiJWb2x1bWUiLHRydXN0X3Njb3JlOiJUcnVzdCBTY29yZSIsdmlld19wcmljZV9jaGFydDoiVmlldyBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iix2aWV3X2FsbDoiVmlldyBhbGwgJXtjb2lufSBtYXJrZXRzIn19fSxmMTU5OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI3ZDhhIiksbz1uKCIxYjU1IikoIml0ZXJhdG9yIiksaT1uKCJiMjJhIik7ZS5leHBvcnRzPW4oImE3ZDMiKS5nZXRJdGVyYXRvck1ldGhvZD1mdW5jdGlvbihlKXtpZih2b2lkIDAhPWUpcmV0dXJuIGVbb118fGVbIkBAaXRlcmF0b3IiXXx8aVtyKGUpXX19LGYyZmU6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUpdGhyb3cgVHlwZUVycm9yKGUrIiBpcyBub3QgYSBmdW5jdGlvbiEiKTtyZXR1cm4gZX19LGYzNjc6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCJkNmM3Iiksbz0iZnVuY3Rpb24iPT09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PT10eXBlb2YgU3ltYm9sKCJmb28iKSxpPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcsYT1BcnJheS5wcm90b3R5cGUuY29uY2F0LGM9T2JqZWN0LmRlZmluZVByb3BlcnR5LHM9ZnVuY3Rpb24oZSl7cmV0dXJuImZ1bmN0aW9uIj09PXR5cGVvZiBlJiYiW29iamVjdCBGdW5jdGlvbl0iPT09aS5jYWxsKGUpfSx1PWZ1bmN0aW9uKCl7dmFyIGU9e307dHJ5e2Zvcih2YXIgdCBpbiBjKGUsIngiLHtlbnVtZXJhYmxlOiExLHZhbHVlOmV9KSxlKXJldHVybiExO3JldHVybiBlLng9PT1lfWNhdGNoKG4pe3JldHVybiExfX0sbD1jJiZ1KCkscD1mdW5jdGlvbihlLHQsbixyKXsoISh0IGluIGUpfHxzKHIpJiZyKCkpJiYobD9jKGUsdCx7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITEsdmFsdWU6bix3cml0YWJsZTohMH0pOmVbdF09bil9LGY9ZnVuY3Rpb24oZSx0KXt2YXIgbj1hcmd1bWVudHMubGVuZ3RoPjI/YXJndW1lbnRzWzJdOnt9LGk9cih0KTtvJiYoaT1hLmNhbGwoaSxPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpKSk7Zm9yKHZhciBjPTA7YzxpLmxlbmd0aDtjKz0xKXAoZSxpW2NdLHRbaVtjXV0sbltpW2NdXSl9O2Yuc3VwcG9ydHNEZXNjcmlwdG9ycz0hIWwsZS5leHBvcnRzPWZ9LGYzZTA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjAxODUiKSxvPW4oIjc2MzMiKTtuKCJjMTY1IikoImtleXMiLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBvKHIoZSkpfX0pfSxmNDZhOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkMTNmIiksbz1uKCIxMWZmIik7cihyLlMrci5GKihOdW1iZXIucGFyc2VGbG9hdCE9byksIk51bWJlciIse3BhcnNlRmxvYXQ6b30pfSxmNTY4OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIzYWRjIiksbz1uKCIwZjg5IiksaT1uKCI3NjMzIik7ZS5leHBvcnRzPW4oIjdkOTUiKT9PYmplY3QuZGVmaW5lUHJvcGVydGllczpmdW5jdGlvbihlLHQpe28oZSk7dmFyIG4sYT1pKHQpLGM9YS5sZW5ndGgscz0wO3doaWxlKGM+cylyLmYoZSxuPWFbcysrXSx0W25dKTtyZXR1cm4gZX19LGY1ZWU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLG87KGZ1bmN0aW9uKCl7dmFyIGk9dGhpczsoZnVuY3Rpb24oKXsoZnVuY3Rpb24oKXt2YXIgZT1bXS5zbGljZTt0aGlzLkFjdGlvbkNhYmxlPXtJTlRFUk5BTDp7bWVzc2FnZV90eXBlczp7d2VsY29tZToid2VsY29tZSIscGluZzoicGluZyIsY29uZmlybWF0aW9uOiJjb25maXJtX3N1YnNjcmlwdGlvbiIscmVqZWN0aW9uOiJyZWplY3Rfc3Vic2NyaXB0aW9uIn0sZGVmYXVsdF9tb3VudF9wYXRoOiIvY2FibGUiLHByb3RvY29sczpbImFjdGlvbmNhYmxlLXYxLWpzb24iLCJhY3Rpb25jYWJsZS11bnN1cHBvcnRlZCJdfSxXZWJTb2NrZXQ6d2luZG93LldlYlNvY2tldCxsb2dnZXI6d2luZG93LmNvbnNvbGUsY3JlYXRlQ29uc3VtZXI6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIG51bGw9PWUmJihlPW51bGwhPSh0PXRoaXMuZ2V0Q29uZmlnKCJ1cmwiKSk/dDp0aGlzLklOVEVSTkFMLmRlZmF1bHRfbW91bnRfcGF0aCksbmV3IGEuQ29uc3VtZXIodGhpcy5jcmVhdGVXZWJTb2NrZXRVUkwoZSkpfSxnZXRDb25maWc6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIHQ9ZG9jdW1lbnQuaGVhZC5xdWVyeVNlbGVjdG9yKCJtZXRhW25hbWU9J2FjdGlvbi1jYWJsZS0iK2UrIiddIiksbnVsbCE9dD90LmdldEF0dHJpYnV0ZSgiY29udGVudCIpOnZvaWQgMH0sY3JlYXRlV2ViU29ja2V0VVJMOmZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiBlJiYhL153c3M/Oi9pLnRlc3QoZSk/KHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpLHQuaHJlZj1lLHQuaHJlZj10LmhyZWYsdC5wcm90b2NvbD10LnByb3RvY29sLnJlcGxhY2UoImh0dHAiLCJ3cyIpLHQuaHJlZik6ZX0sc3RhcnREZWJ1Z2dpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kZWJ1Z2dpbmc9ITB9LHN0b3BEZWJ1Z2dpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kZWJ1Z2dpbmc9bnVsbH0sbG9nOmZ1bmN0aW9uKCl7dmFyIHQsbjtpZih0PTE8PWFyZ3VtZW50cy5sZW5ndGg/ZS5jYWxsKGFyZ3VtZW50cywwKTpbXSx0aGlzLmRlYnVnZ2luZylyZXR1cm4gdC5wdXNoKERhdGUubm93KCkpLChuPXRoaXMubG9nZ2VyKS5sb2cuYXBwbHkobixbIltBY3Rpb25DYWJsZV0iXS5jb25jYXQoZS5jYWxsKHQpKSl9fX0pLmNhbGwodGhpcyl9KS5jYWxsKGkpO3ZhciBhPWkuQWN0aW9uQ2FibGU7KGZ1bmN0aW9uKCl7KGZ1bmN0aW9uKCl7dmFyIGU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseSh0LGFyZ3VtZW50cyl9fTthLkNvbm5lY3Rpb25Nb25pdG9yPWZ1bmN0aW9uKCl7dmFyIHQsbixyO2Z1bmN0aW9uIG8odCl7dGhpcy5jb25uZWN0aW9uPXQsdGhpcy52aXNpYmlsaXR5RGlkQ2hhbmdlPWUodGhpcy52aXNpYmlsaXR5RGlkQ2hhbmdlLHRoaXMpLHRoaXMucmVjb25uZWN0QXR0ZW1wdHM9MH1yZXR1cm4gby5wb2xsSW50ZXJ2YWw9e21pbjozLG1heDozMH0sby5zdGFsZVRocmVzaG9sZD02LG8ucHJvdG90eXBlLnN0YXJ0PWZ1bmN0aW9uKCl7aWYoIXRoaXMuaXNSdW5uaW5nKCkpcmV0dXJuIHRoaXMuc3RhcnRlZEF0PW4oKSxkZWxldGUgdGhpcy5zdG9wcGVkQXQsdGhpcy5zdGFydFBvbGxpbmcoKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLnZpc2liaWxpdHlEaWRDaGFuZ2UpLGEubG9nKCJDb25uZWN0aW9uTW9uaXRvciBzdGFydGVkLiBwb2xsSW50ZXJ2YWwgPSAiK3RoaXMuZ2V0UG9sbEludGVydmFsKCkrIiBtcyIpfSxvLnByb3RvdHlwZS5zdG9wPWZ1bmN0aW9uKCl7aWYodGhpcy5pc1J1bm5pbmcoKSlyZXR1cm4gdGhpcy5zdG9wcGVkQXQ9bigpLHRoaXMuc3RvcFBvbGxpbmcoKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLnZpc2liaWxpdHlEaWRDaGFuZ2UpLGEubG9nKCJDb25uZWN0aW9uTW9uaXRvciBzdG9wcGVkIil9LG8ucHJvdG90eXBlLmlzUnVubmluZz1mdW5jdGlvbigpe3JldHVybiBudWxsIT10aGlzLnN0YXJ0ZWRBdCYmbnVsbD09dGhpcy5zdG9wcGVkQXR9LG8ucHJvdG90eXBlLnJlY29yZFBpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5waW5nZWRBdD1uKCl9LG8ucHJvdG90eXBlLnJlY29yZENvbm5lY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5yZWNvbm5lY3RBdHRlbXB0cz0wLHRoaXMucmVjb3JkUGluZygpLGRlbGV0ZSB0aGlzLmRpc2Nvbm5lY3RlZEF0LGEubG9nKCJDb25uZWN0aW9uTW9uaXRvciByZWNvcmRlZCBjb25uZWN0Iil9LG8ucHJvdG90eXBlLnJlY29yZERpc2Nvbm5lY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kaXNjb25uZWN0ZWRBdD1uKCksYS5sb2coIkNvbm5lY3Rpb25Nb25pdG9yIHJlY29yZGVkIGRpc2Nvbm5lY3QiKX0sby5wcm90b3R5cGUuc3RhcnRQb2xsaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc3RvcFBvbGxpbmcoKSx0aGlzLnBvbGwoKX0sby5wcm90b3R5cGUuc3RvcFBvbGxpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gY2xlYXJUaW1lb3V0KHRoaXMucG9sbFRpbWVvdXQpfSxvLnByb3RvdHlwZS5wb2xsPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucG9sbFRpbWVvdXQ9c2V0VGltZW91dChmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gZS5yZWNvbm5lY3RJZlN0YWxlKCksZS5wb2xsKCl9fSh0aGlzKSx0aGlzLmdldFBvbGxJbnRlcnZhbCgpKX0sby5wcm90b3R5cGUuZ2V0UG9sbEludGVydmFsPWZ1bmN0aW9uKCl7dmFyIGUsbixyLG87cmV0dXJuIG89dGhpcy5jb25zdHJ1Y3Rvci5wb2xsSW50ZXJ2YWwscj1vLm1pbixuPW8ubWF4LGU9NSpNYXRoLmxvZyh0aGlzLnJlY29ubmVjdEF0dGVtcHRzKzEpLE1hdGgucm91bmQoMWUzKnQoZSxyLG4pKX0sby5wcm90b3R5cGUucmVjb25uZWN0SWZTdGFsZT1mdW5jdGlvbigpe2lmKHRoaXMuY29ubmVjdGlvbklzU3RhbGUoKSlyZXR1cm4gYS5sb2coIkNvbm5lY3Rpb25Nb25pdG9yIGRldGVjdGVkIHN0YWxlIGNvbm5lY3Rpb24uIHJlY29ubmVjdEF0dGVtcHRzID0gIit0aGlzLnJlY29ubmVjdEF0dGVtcHRzKyIsIHBvbGxJbnRlcnZhbCA9ICIrdGhpcy5nZXRQb2xsSW50ZXJ2YWwoKSsiIG1zLCB0aW1lIGRpc2Nvbm5lY3RlZCA9ICIrcih0aGlzLmRpc2Nvbm5lY3RlZEF0KSsiIHMsIHN0YWxlIHRocmVzaG9sZCA9ICIrdGhpcy5jb25zdHJ1Y3Rvci5zdGFsZVRocmVzaG9sZCsiIHMiKSx0aGlzLnJlY29ubmVjdEF0dGVtcHRzKyssdGhpcy5kaXNjb25uZWN0ZWRSZWNlbnRseSgpP2EubG9nKCJDb25uZWN0aW9uTW9uaXRvciBza2lwcGluZyByZW9wZW5pbmcgcmVjZW50IGRpc2Nvbm5lY3QiKTooYS5sb2coIkNvbm5lY3Rpb25Nb25pdG9yIHJlb3BlbmluZyIpLHRoaXMuY29ubmVjdGlvbi5yZW9wZW4oKSl9LG8ucHJvdG90eXBlLmNvbm5lY3Rpb25Jc1N0YWxlPWZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIHIobnVsbCE9KGU9dGhpcy5waW5nZWRBdCk/ZTp0aGlzLnN0YXJ0ZWRBdCk+dGhpcy5jb25zdHJ1Y3Rvci5zdGFsZVRocmVzaG9sZH0sby5wcm90b3R5cGUuZGlzY29ubmVjdGVkUmVjZW50bHk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kaXNjb25uZWN0ZWRBdCYmcih0aGlzLmRpc2Nvbm5lY3RlZEF0KTx0aGlzLmNvbnN0cnVjdG9yLnN0YWxlVGhyZXNob2xkfSxvLnByb3RvdHlwZS52aXNpYmlsaXR5RGlkQ2hhbmdlPWZ1bmN0aW9uKCl7aWYoInZpc2libGUiPT09ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlKXJldHVybiBzZXRUaW1lb3V0KGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbigpe2lmKGUuY29ubmVjdGlvbklzU3RhbGUoKXx8IWUuY29ubmVjdGlvbi5pc09wZW4oKSlyZXR1cm4gYS5sb2coIkNvbm5lY3Rpb25Nb25pdG9yIHJlb3BlbmluZyBzdGFsZSBjb25uZWN0aW9uIG9uIHZpc2liaWxpdHljaGFuZ2UuIHZpc2JpbGl0eVN0YXRlID0gIitkb2N1bWVudC52aXNpYmlsaXR5U3RhdGUpLGUuY29ubmVjdGlvbi5yZW9wZW4oKX19KHRoaXMpLDIwMCl9LG49ZnVuY3Rpb24oKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX0scj1mdW5jdGlvbihlKXtyZXR1cm4obigpLWUpLzFlM30sdD1mdW5jdGlvbihlLHQsbil7cmV0dXJuIE1hdGgubWF4KHQsTWF0aC5taW4obixlKSl9LG99KCl9KS5jYWxsKHRoaXMpLGZ1bmN0aW9uKCl7dmFyIGUsdCxuLHIsbyxpPVtdLnNsaWNlLGM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseSh0LGFyZ3VtZW50cyl9fSxzPVtdLmluZGV4T2Z8fGZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0wLG49dGhpcy5sZW5ndGg7dDxuO3QrKylpZih0IGluIHRoaXMmJnRoaXNbdF09PT1lKXJldHVybiB0O3JldHVybi0xfTtyPWEuSU5URVJOQUwsdD1yLm1lc3NhZ2VfdHlwZXMsbj1yLnByb3RvY29scyxvPTI8PW4ubGVuZ3RoP2kuY2FsbChuLDAsZT1uLmxlbmd0aC0xKTooZT0wLFtdKSxuW2UrK10sYS5Db25uZWN0aW9uPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZShlKXt0aGlzLmNvbnN1bWVyPWUsdGhpcy5vcGVuPWModGhpcy5vcGVuLHRoaXMpLHRoaXMuc3Vic2NyaXB0aW9ucz10aGlzLmNvbnN1bWVyLnN1YnNjcmlwdGlvbnMsdGhpcy5tb25pdG9yPW5ldyBhLkNvbm5lY3Rpb25Nb25pdG9yKHRoaXMpLHRoaXMuZGlzY29ubmVjdGVkPSEwfXJldHVybiBlLnJlb3BlbkRlbGF5PTUwMCxlLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGUpe3JldHVybiEhdGhpcy5pc09wZW4oKSYmKHRoaXMud2ViU29ja2V0LnNlbmQoSlNPTi5zdHJpbmdpZnkoZSkpLCEwKX0sZS5wcm90b3R5cGUub3Blbj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmlzQWN0aXZlKCk/KGEubG9nKCJBdHRlbXB0ZWQgdG8gb3BlbiBXZWJTb2NrZXQsIGJ1dCBleGlzdGluZyBzb2NrZXQgaXMgIit0aGlzLmdldFN0YXRlKCkpLCExKTooYS5sb2coIk9wZW5pbmcgV2ViU29ja2V0LCBjdXJyZW50IHN0YXRlIGlzICIrdGhpcy5nZXRTdGF0ZSgpKyIsIHN1YnByb3RvY29sczogIituKSxudWxsIT10aGlzLndlYlNvY2tldCYmdGhpcy51bmluc3RhbGxFdmVudEhhbmRsZXJzKCksdGhpcy53ZWJTb2NrZXQ9bmV3IGEuV2ViU29ja2V0KHRoaXMuY29uc3VtZXIudXJsLG4pLHRoaXMuaW5zdGFsbEV2ZW50SGFuZGxlcnMoKSx0aGlzLm1vbml0b3Iuc3RhcnQoKSwhMCl9LGUucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKGUpe3ZhciB0LG47aWYodD0obnVsbCE9ZT9lOnthbGxvd1JlY29ubmVjdDohMH0pLmFsbG93UmVjb25uZWN0LHR8fHRoaXMubW9uaXRvci5zdG9wKCksdGhpcy5pc0FjdGl2ZSgpKXJldHVybiBudWxsIT0obj10aGlzLndlYlNvY2tldCk/bi5jbG9zZSgpOnZvaWQgMH0sZS5wcm90b3R5cGUucmVvcGVuPWZ1bmN0aW9uKCl7dmFyIGU7aWYoYS5sb2coIlJlb3BlbmluZyBXZWJTb2NrZXQsIGN1cnJlbnQgc3RhdGUgaXMgIit0aGlzLmdldFN0YXRlKCkpLCF0aGlzLmlzQWN0aXZlKCkpcmV0dXJuIHRoaXMub3BlbigpO3RyeXtyZXR1cm4gdGhpcy5jbG9zZSgpfWNhdGNoKHQpe3JldHVybiBlPXQsYS5sb2coIkZhaWxlZCB0byByZW9wZW4gV2ViU29ja2V0IixlKX1maW5hbGx5e2EubG9nKCJSZW9wZW5pbmcgV2ViU29ja2V0IGluICIrdGhpcy5jb25zdHJ1Y3Rvci5yZW9wZW5EZWxheSsibXMiKSxzZXRUaW1lb3V0KHRoaXMub3Blbix0aGlzLmNvbnN0cnVjdG9yLnJlb3BlbkRlbGF5KX19LGUucHJvdG90eXBlLmdldFByb3RvY29sPWZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIG51bGwhPShlPXRoaXMud2ViU29ja2V0KT9lLnByb3RvY29sOnZvaWQgMH0sZS5wcm90b3R5cGUuaXNPcGVuPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaXNTdGF0ZSgib3BlbiIpfSxlLnByb3RvdHlwZS5pc0FjdGl2ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmlzU3RhdGUoIm9wZW4iLCJjb25uZWN0aW5nIil9LGUucHJvdG90eXBlLmlzUHJvdG9jb2xTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXt2YXIgZTtyZXR1cm4gZT10aGlzLmdldFByb3RvY29sKCkscy5jYWxsKG8sZSk+PTB9LGUucHJvdG90eXBlLmlzU3RhdGU9ZnVuY3Rpb24oKXt2YXIgZSx0O3JldHVybiB0PTE8PWFyZ3VtZW50cy5sZW5ndGg/aS5jYWxsKGFyZ3VtZW50cywwKTpbXSxlPXRoaXMuZ2V0U3RhdGUoKSxzLmNhbGwodCxlKT49MH0sZS5wcm90b3R5cGUuZ2V0U3RhdGU9ZnVuY3Rpb24oKXt2YXIgZSx0LG47Zm9yKHQgaW4gV2ViU29ja2V0KWlmKG49V2ViU29ja2V0W3RdLG49PT0obnVsbCE9KGU9dGhpcy53ZWJTb2NrZXQpP2UucmVhZHlTdGF0ZTp2b2lkIDApKXJldHVybiB0LnRvTG93ZXJDYXNlKCk7cmV0dXJuIG51bGx9LGUucHJvdG90eXBlLmluc3RhbGxFdmVudEhhbmRsZXJzPWZ1bmN0aW9uKCl7dmFyIGUsdDtmb3IoZSBpbiB0aGlzLmV2ZW50cyl0PXRoaXMuZXZlbnRzW2VdLmJpbmQodGhpcyksdGhpcy53ZWJTb2NrZXRbIm9uIitlXT10fSxlLnByb3RvdHlwZS51bmluc3RhbGxFdmVudEhhbmRsZXJzPWZ1bmN0aW9uKCl7dmFyIGU7Zm9yKGUgaW4gdGhpcy5ldmVudHMpdGhpcy53ZWJTb2NrZXRbIm9uIitlXT1mdW5jdGlvbigpe319LGUucHJvdG90eXBlLmV2ZW50cz17bWVzc2FnZTpmdW5jdGlvbihlKXt2YXIgbixyLG8saTtpZih0aGlzLmlzUHJvdG9jb2xTdXBwb3J0ZWQoKSlzd2l0Y2gobz1KU09OLnBhcnNlKGUuZGF0YSksbj1vLmlkZW50aWZpZXIscj1vLm1lc3NhZ2UsaT1vLnR5cGUsaSl7Y2FzZSB0LndlbGNvbWU6cmV0dXJuIHRoaXMubW9uaXRvci5yZWNvcmRDb25uZWN0KCksdGhpcy5zdWJzY3JpcHRpb25zLnJlbG9hZCgpO2Nhc2UgdC5waW5nOnJldHVybiB0aGlzLm1vbml0b3IucmVjb3JkUGluZygpO2Nhc2UgdC5jb25maXJtYXRpb246cmV0dXJuIHRoaXMuc3Vic2NyaXB0aW9ucy5ub3RpZnkobiwiY29ubmVjdGVkIik7Y2FzZSB0LnJlamVjdGlvbjpyZXR1cm4gdGhpcy5zdWJzY3JpcHRpb25zLnJlamVjdChuKTtkZWZhdWx0OnJldHVybiB0aGlzLnN1YnNjcmlwdGlvbnMubm90aWZ5KG4sInJlY2VpdmVkIixyKX19LG9wZW46ZnVuY3Rpb24oKXtpZihhLmxvZygiV2ViU29ja2V0IG9ub3BlbiBldmVudCwgdXNpbmcgJyIrdGhpcy5nZXRQcm90b2NvbCgpKyInIHN1YnByb3RvY29sIiksdGhpcy5kaXNjb25uZWN0ZWQ9ITEsIXRoaXMuaXNQcm90b2NvbFN1cHBvcnRlZCgpKXJldHVybiBhLmxvZygiUHJvdG9jb2wgaXMgdW5zdXBwb3J0ZWQuIFN0b3BwaW5nIG1vbml0b3IgYW5kIGRpc2Nvbm5lY3RpbmcuIiksdGhpcy5jbG9zZSh7YWxsb3dSZWNvbm5lY3Q6ITF9KX0sY2xvc2U6ZnVuY3Rpb24oZSl7aWYoYS5sb2coIldlYlNvY2tldCBvbmNsb3NlIGV2ZW50IiksIXRoaXMuZGlzY29ubmVjdGVkKXJldHVybiB0aGlzLmRpc2Nvbm5lY3RlZD0hMCx0aGlzLm1vbml0b3IucmVjb3JkRGlzY29ubmVjdCgpLHRoaXMuc3Vic2NyaXB0aW9ucy5ub3RpZnlBbGwoImRpc2Nvbm5lY3RlZCIse3dpbGxBdHRlbXB0UmVjb25uZWN0OnRoaXMubW9uaXRvci5pc1J1bm5pbmcoKX0pfSxlcnJvcjpmdW5jdGlvbigpe3JldHVybiBhLmxvZygiV2ViU29ja2V0IG9uZXJyb3IgZXZlbnQiKX19LGV9KCl9LmNhbGwodGhpcyksZnVuY3Rpb24oKXt2YXIgZT1bXS5zbGljZTthLlN1YnNjcmlwdGlvbnM9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KGUpe3RoaXMuY29uc3VtZXI9ZSx0aGlzLnN1YnNjcmlwdGlvbnM9W119cmV0dXJuIHQucHJvdG90eXBlLmNyZWF0ZT1mdW5jdGlvbihlLHQpe3ZhciBuLHIsbztyZXR1cm4gbj1lLHI9Im9iamVjdCI9PT10eXBlb2Ygbj9uOntjaGFubmVsOm59LG89bmV3IGEuU3Vic2NyaXB0aW9uKHRoaXMuY29uc3VtZXIscix0KSx0aGlzLmFkZChvKX0sdC5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChlKSx0aGlzLmNvbnN1bWVyLmVuc3VyZUFjdGl2ZUNvbm5lY3Rpb24oKSx0aGlzLm5vdGlmeShlLCJpbml0aWFsaXplZCIpLHRoaXMuc2VuZENvbW1hbmQoZSwic3Vic2NyaWJlIiksZX0sdC5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmZvcmdldChlKSx0aGlzLmZpbmRBbGwoZS5pZGVudGlmaWVyKS5sZW5ndGh8fHRoaXMuc2VuZENvbW1hbmQoZSwidW5zdWJzY3JpYmUiKSxlfSx0LnByb3RvdHlwZS5yZWplY3Q9ZnVuY3Rpb24oZSl7dmFyIHQsbixyLG8saTtmb3Iocj10aGlzLmZpbmRBbGwoZSksbz1bXSx0PTAsbj1yLmxlbmd0aDt0PG47dCsrKWk9clt0XSx0aGlzLmZvcmdldChpKSx0aGlzLm5vdGlmeShpLCJyZWplY3RlZCIpLG8ucHVzaChpKTtyZXR1cm4gb30sdC5wcm90b3R5cGUuZm9yZ2V0PWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiB0aGlzLnN1YnNjcmlwdGlvbnM9ZnVuY3Rpb24oKXt2YXIgbixyLG8saTtmb3Iobz10aGlzLnN1YnNjcmlwdGlvbnMsaT1bXSxuPTAscj1vLmxlbmd0aDtuPHI7bisrKXQ9b1tuXSx0IT09ZSYmaS5wdXNoKHQpO3JldHVybiBpfS5jYWxsKHRoaXMpLGV9LHQucHJvdG90eXBlLmZpbmRBbGw9ZnVuY3Rpb24oZSl7dmFyIHQsbixyLG8saTtmb3Iocj10aGlzLnN1YnNjcmlwdGlvbnMsbz1bXSx0PTAsbj1yLmxlbmd0aDt0PG47dCsrKWk9clt0XSxpLmlkZW50aWZpZXI9PT1lJiZvLnB1c2goaSk7cmV0dXJuIG99LHQucHJvdG90eXBlLnJlbG9hZD1mdW5jdGlvbigpe3ZhciBlLHQsbixyLG87Zm9yKG49dGhpcy5zdWJzY3JpcHRpb25zLHI9W10sZT0wLHQ9bi5sZW5ndGg7ZTx0O2UrKylvPW5bZV0sci5wdXNoKHRoaXMuc2VuZENvbW1hbmQobywic3Vic2NyaWJlIikpO3JldHVybiByfSx0LnByb3RvdHlwZS5ub3RpZnlBbGw9ZnVuY3Rpb24oKXt2YXIgdCxuLHIsbyxpLGEsYztmb3Iobj1hcmd1bWVudHNbMF0sdD0yPD1hcmd1bWVudHMubGVuZ3RoP2UuY2FsbChhcmd1bWVudHMsMSk6W10saT10aGlzLnN1YnNjcmlwdGlvbnMsYT1bXSxyPTAsbz1pLmxlbmd0aDtyPG87cisrKWM9aVtyXSxhLnB1c2godGhpcy5ub3RpZnkuYXBwbHkodGhpcyxbYyxuXS5jb25jYXQoZS5jYWxsKHQpKSkpO3JldHVybiBhfSx0LnByb3RvdHlwZS5ub3RpZnk9ZnVuY3Rpb24oKXt2YXIgdCxuLHIsbyxpLGEsYztmb3IoYT1hcmd1bWVudHNbMF0sbj1hcmd1bWVudHNbMV0sdD0zPD1hcmd1bWVudHMubGVuZ3RoP2UuY2FsbChhcmd1bWVudHMsMik6W10sYz0ic3RyaW5nIj09PXR5cGVvZiBhP3RoaXMuZmluZEFsbChhKTpbYV0saT1bXSxyPTAsbz1jLmxlbmd0aDtyPG87cisrKWE9Y1tyXSxpLnB1c2goImZ1bmN0aW9uIj09PXR5cGVvZiBhW25dP2Fbbl0uYXBwbHkoYSx0KTp2b2lkIDApO3JldHVybiBpfSx0LnByb3RvdHlwZS5zZW5kQ29tbWFuZD1mdW5jdGlvbihlLHQpe3ZhciBuO3JldHVybiBuPWUuaWRlbnRpZmllcix0aGlzLmNvbnN1bWVyLnNlbmQoe2NvbW1hbmQ6dCxpZGVudGlmaWVyOm59KX0sdH0oKX0uY2FsbCh0aGlzKSxmdW5jdGlvbigpe2EuU3Vic2NyaXB0aW9uPWZ1bmN0aW9uKCl7dmFyIGU7ZnVuY3Rpb24gdCh0LG4scil7dGhpcy5jb25zdW1lcj10LG51bGw9PW4mJihuPXt9KSx0aGlzLmlkZW50aWZpZXI9SlNPTi5zdHJpbmdpZnkobiksZSh0aGlzLHIpfXJldHVybiB0LnByb3RvdHlwZS5wZXJmb3JtPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG51bGw9PXQmJih0PXt9KSx0LmFjdGlvbj1lLHRoaXMuc2VuZCh0KX0sdC5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5jb25zdW1lci5zZW5kKHtjb21tYW5kOiJtZXNzYWdlIixpZGVudGlmaWVyOnRoaXMuaWRlbnRpZmllcixkYXRhOkpTT04uc3RyaW5naWZ5KGUpfSl9LHQucHJvdG90eXBlLnVuc3Vic2NyaWJlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY29uc3VtZXIuc3Vic2NyaXB0aW9ucy5yZW1vdmUodGhpcyl9LGU9ZnVuY3Rpb24oZSx0KXt2YXIgbixyO2lmKG51bGwhPXQpZm9yKG4gaW4gdClyPXRbbl0sZVtuXT1yO3JldHVybiBlfSx0fSgpfS5jYWxsKHRoaXMpLGZ1bmN0aW9uKCl7YS5Db25zdW1lcj1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSl7dGhpcy51cmw9ZSx0aGlzLnN1YnNjcmlwdGlvbnM9bmV3IGEuU3Vic2NyaXB0aW9ucyh0aGlzKSx0aGlzLmNvbm5lY3Rpb249bmV3IGEuQ29ubmVjdGlvbih0aGlzKX1yZXR1cm4gZS5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5jb25uZWN0aW9uLnNlbmQoZSl9LGUucHJvdG90eXBlLmNvbm5lY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb25uZWN0aW9uLm9wZW4oKX0sZS5wcm90b3R5cGUuZGlzY29ubmVjdD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbm5lY3Rpb24uY2xvc2Uoe2FsbG93UmVjb25uZWN0OiExfSl9LGUucHJvdG90eXBlLmVuc3VyZUFjdGl2ZUNvbm5lY3Rpb249ZnVuY3Rpb24oKXtpZighdGhpcy5jb25uZWN0aW9uLmlzQWN0aXZlKCkpcmV0dXJuIHRoaXMuY29ubmVjdGlvbi5vcGVuKCl9LGV9KCl9LmNhbGwodGhpcyl9KS5jYWxsKHRoaXMpLGUuZXhwb3J0cz9lLmV4cG9ydHM9YToocj1hLG89ImZ1bmN0aW9uIj09PXR5cGVvZiByP3IuY2FsbCh0LG4sdCxlKTpyLHZvaWQgMD09PW98fChlLmV4cG9ydHM9bykpfSkuY2FsbCh0aGlzKX0sZjYwNTpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixyKXtpZighKGUgaW5zdGFuY2VvZiB0KXx8dm9pZCAwIT09ciYmciBpbiBlKXRocm93IFR5cGVFcnJvcihuKyI6IGluY29ycmVjdCBpbnZvY2F0aW9uISIpO3JldHVybiBlfX0sZjY5MzpmdW5jdGlvbihlKXtlLmV4cG9ydHM9e2NvaW5fZGV0YWlsczp7bWNhcF9yYW5rOiJDbGFzc2VtZW50IixtY2FwOiJDYXBpdGFsaXNhdGlvbiBkdSBtYXJjaMOpIiwiMjRoX3ZvbHVtZSI6IlZvbHVtZSAoMjRoKSIsIjI0aF9oaWdoX2xvdyI6IkhhdXQvQmFzIHN1ciAyNGgifSxjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ontwb3dlcmVkX2J5OiJGb3VybmkgcGFyICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLGNyeXB0b19wcmljZV9jb21wYXJpc29uOiJDb21wYXJhaXNvbiBkZXMgY291cnMgZGUgY3J5cHRvIixjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uOiJDb21wYXJhaXNvbiBkZXMgY2FwaXRhbGlzYXRpb25zIGRlIG1hcmNow6kgZGUgY3J5cHRvIn0sY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ontwb3dlcmVkX2J5OiJGb3VybmkgcGFyICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3ByaWNlX2NoYXJ0X3dpZGdldDp7IjI0aF9oaWdoIjoiSGF1dCBzdXIgMjRoIiwiMjRoX2xvdyI6IkJhcyBzdXIgMjRoIix2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IkZvdXJuaSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQ6e3Bvd2VyZWRfYnk6IkZvdXJuaSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGNvaW5fbGlzdF93aWRnZXQ6e3Bvd2VyZWRfYnk6IkZvdXJuaSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LGJlYW1fd2lkZ2V0Ontwb3dlcmVkX2J5OiJGb3VybmkgcGFyICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX3RpY2tlcl93aWRnZXQ6eyIyNGhfaGlnaCI6IkhhdXQgc3VyIDI0aCIsIjI0aF9sb3ciOiJCYXMgc3VyIDI0aCIsdmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiJGb3VybmkgcGFyICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxjb2luX2NvbnZlcnRlcl93aWRnZXQ6e3ZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiRm91cm5pIHBhciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sY29pbl9oZWF0bWFwX3dpZGdldDp7dGl0bGU6IkRpYWdyYW1tZSBkZXMgY3J5cHRvLW1vbm5haWVzIixzdWJ0aXRsZToiKCV7dG9wfSBwbHVzIGdyb3NzZSBjYXBpdGFsaXNhdGlvbnMpIixwb3dlcmVkX2J5OiJGb3VybmkgcGFyICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSxyYW5kb21fY29pbl93aWRnZXQ6e2Rpc2NsYWltZXI6IkNsYXVzZSBkZSBub24gcmVzcG9uc2FiaWxpdMOpIDogQ2V0IG91dGlsIG5lIHNlcnQgcXUnw6AgZGVzIGZpbnMgZGUgZGl2ZXJ0aXNzZW1lbnQgZXQgbmUgY29uc3RpdHVlIHBhcyBkZSBjb25zZWlscyBmaW5hbmNpZXJzIixzcGluOiJUb3VybmVyIixhdmFpbGFibGVfY29pbnM6IkNyeXB0b3MgZGlzcG9uaWJsZXMifSxjb2luX2RhaWx5X3ByaWNlX3dpZGdldDp7dGl0bGU6IkNvaW5HZWNrbyBQcmljZSBVcGRhdGUiLHRvdGFsX21jYXA6IlRvdGFsIE0gY2FwIiwiMjRoX3ZvbCI6IlZvbHVtZSBzdXIgMjTCoGgiLGRvbToiRG9tIn0sY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0OntleGNoYW5nZToiUGxhdGUtZm9ybWUgZCfDqWNoYW5nZSIscGFpcjoiUGFpcmUiLHByaWNlOiJDb3VycyIsdm9sdW1lOiJWb2x1bWUiLHRydXN0X3Njb3JlOiJTY29yZSBkZSBjb25maWFuY2UiLHZpZXdfcHJpY2VfY2hhcnQ6IlZvaXIgbGUgZ3JhcGhpcXVlIGRlcyBjb3VycyIscG93ZXJlZF9ieToiRm91cm5pIHBhciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iix2aWV3X2FsbDoiVmlldyBhbGwgJXtjb2lufSBtYXJrZXRzIn19fSxmODQ1OmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJue2VudW1lcmFibGU6ISgxJmUpLGNvbmZpZ3VyYWJsZTohKDImZSksd3JpdGFibGU6ISg0JmUpLHZhbHVlOnR9fX0sZmE0ZTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPSExLG89ZnVuY3Rpb24oKXt9O2lmKHIpe3ZhciBpPWZ1bmN0aW9uKGUsdCl7dmFyIG49YXJndW1lbnRzLmxlbmd0aDt0PW5ldyBBcnJheShuPjI/bi0yOjApO2Zvcih2YXIgcj0yO3I8bjtyKyspdFtyLTJdPWFyZ3VtZW50c1tyXTt2YXIgbz0wLGk9Ildhcm5pbmc6ICIrZS5yZXBsYWNlKC8lcy9nLGZ1bmN0aW9uKCl7cmV0dXJuIHRbbysrXX0pOyJ1bmRlZmluZWQiIT09dHlwZW9mIGNvbnNvbGUmJmNvbnNvbGUuZXJyb3IoaSk7dHJ5e3Rocm93IG5ldyBFcnJvcihpKX1jYXRjaChhKXt9fTtvPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1hcmd1bWVudHMubGVuZ3RoO249bmV3IEFycmF5KHI+Mj9yLTI6MCk7Zm9yKHZhciBvPTI7bzxyO28rKyluW28tMl09YXJndW1lbnRzW29dO2lmKHZvaWQgMD09PXQpdGhyb3cgbmV3IEVycm9yKCJgd2FybmluZyhjb25kaXRpb24sIGZvcm1hdCwgLi4uYXJncylgIHJlcXVpcmVzIGEgd2FybmluZyBtZXNzYWdlIGFyZ3VtZW50Iik7ZXx8aS5hcHBseShudWxsLFt0XS5jb25jYXQobikpfX1lLmV4cG9ydHM9b30sZmE1NDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImIzZTciKSxvPW4oIjI0NWIiKSxpPW4oImIyMmEiKSxhPW4oIjZhOWIiKTtlLmV4cG9ydHM9bigiZTRhOSIpKEFycmF5LCJBcnJheSIsZnVuY3Rpb24oZSx0KXt0aGlzLl90PWEoZSksdGhpcy5faT0wLHRoaXMuX2s9dH0sZnVuY3Rpb24oKXt2YXIgZT10aGlzLl90LHQ9dGhpcy5fayxuPXRoaXMuX2krKztyZXR1cm4hZXx8bj49ZS5sZW5ndGg/KHRoaXMuX3Q9dm9pZCAwLG8oMSkpOm8oMCwia2V5cyI9PXQ/bjoidmFsdWVzIj09dD9lW25dOltuLGVbbl1dKX0sInZhbHVlcyIpLGkuQXJndW1lbnRzPWkuQXJyYXkscigia2V5cyIpLHIoInZhbHVlcyIpLHIoImVudHJpZXMiKX0sZmE1YjpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPW4oIjU1MzciKSgibmF0aXZlLWZ1bmN0aW9uLXRvLXN0cmluZyIsRnVuY3Rpb24udG9TdHJpbmcpfSxmYWIyOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI3NzI2IikuZG9jdW1lbnQ7ZS5leHBvcnRzPXImJnIuZG9jdW1lbnRFbGVtZW50fSxmZGExOmZ1bmN0aW9uKGUsdCxuKXt0LmY9bigiMWI1NSIpfSxmZGE2OmZ1bmN0aW9uKGUsdCxuKXtuKCJmM2UwIiksZS5leHBvcnRzPW4oImE3ZDMiKS5PYmplY3Qua2V5c30sZmRlZjpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz0iXHRcblx2XGZcciDCoOGagOGgjuKAgOKAgeKAguKAg+KAhOKAheKAhuKAh+KAiOKAieKAiuKAr+KBn+OAgFx1MjAyOFx1MjAyOVx1ZmVmZiJ9LGZmMGM6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjQzYzgiKSxvPW4oIjAxODUiKSxpPW4oIjVkOGYiKSgiSUVfUFJPVE8iKSxhPU9iamVjdC5wcm90b3R5cGU7ZS5leHBvcnRzPU9iamVjdC5nZXRQcm90b3R5cGVPZnx8ZnVuY3Rpb24oZSl7cmV0dXJuIGU9byhlKSxyKGUsaSk/ZVtpXToiZnVuY3Rpb24iPT10eXBlb2YgZS5jb25zdHJ1Y3RvciYmZSBpbnN0YW5jZW9mIGUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5wcm90b3R5cGU6ZSBpbnN0YW5jZW9mIE9iamVjdD9hOm51bGx9fSxmZmViOmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz17Y29pbl9kZXRhaWxzOnttY2FwX3Jhbms6IlBpeWFzYSBEZcSfZXJpIFPEsXJhbGFtYXPEsSIsbWNhcDoiUGl5YXNhIERlxJ9lcmkiLCIyNGhfdm9sdW1lIjoiMjQgU2FhdGxpayBIYWNpbSIsIjI0aF9oaWdoX2xvdyI6IjI0SCBIaWdoL0xvdyJ9LGNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQ6e3Bvd2VyZWRfYnk6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gdGFyYWbEsW5kYW4gZGVzdGVrbGVubWVrdGVkaXIiLGNyeXB0b19wcmljZV9jb21wYXJpc29uOiJLcmlwdG8gRml5YXQgS2FyxZ/EsWxhxZ90xLFybWFzxLEiLGNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb246IktyaXB0byBQaXlhc2EgRGXEn2VyaSBLYXLFn8SxbGHFn3TEsXJtYXPEsSJ9LGNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldDp7cG93ZXJlZF9ieToiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5tZWt0ZWRpciJ9LGNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0OnsiMjRoX2hpZ2giOiIyNFMgWcO8a3NlayIsIjI0aF9sb3ciOiIyNFMgRMO8xZ/DvGsiLHZpZXdfcHJpY2VfY2hhcnQ6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIscG93ZXJlZF9ieToiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5tZWt0ZWRpciJ9LGNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQ6e3Bvd2VyZWRfYnk6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gdGFyYWbEsW5kYW4gZGVzdGVrbGVubWVrdGVkaXIifSxjb2luX2xpc3Rfd2lkZ2V0Ontwb3dlcmVkX2J5OiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IHRhcmFmxLFuZGFuIGRlc3Rla2xlbm1la3RlZGlyIn0sYmVhbV93aWRnZXQ6e3Bvd2VyZWRfYnk6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gdGFyYWbEsW5kYW4gZGVzdGVrbGVubWVrdGVkaXIifSxjb2luX3RpY2tlcl93aWRnZXQ6eyIyNGhfaGlnaCI6IjI0UyBZw7xrc2VrIiwiMjRoX2xvdyI6IjI0UyBEw7zFn8O8ayIsdmlld19wcmljZV9jaGFydDoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0Iixwb3dlcmVkX2J5OiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IHRhcmFmxLFuZGFuIGRlc3Rla2xlbm1la3RlZGlyIn0sY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ont2aWV3X3ByaWNlX2NoYXJ0OiJWaWV3ICV7Y29pbn0gUHJpY2UgQ2hhcnQiLHBvd2VyZWRfYnk6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gdGFyYWbEsW5kYW4gZGVzdGVrbGVubWVrdGVkaXIifSxjb2luX2hlYXRtYXBfd2lkZ2V0Ont0aXRsZToiS3JpcHRvIFBhcmEgQcSfYWPEsSBIYXJpdGFzxLEiLHN1YnRpdGxlOiIoVG9wICV7dG9wfSBieSBNYXJrZXQgQ2FwKSIscG93ZXJlZF9ieToiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5tZWt0ZWRpciJ9LHJhbmRvbV9jb2luX3dpZGdldDp7ZGlzY2xhaW1lcjoiRGlzY2xhaW1lcjogVGhpcyB0b29scyBzZXJ2ZSBhcyBhbiBlbnRlcnRhaW5tZW50IGFuZCBkb2VzIG5vdCBjb25zdGl0dXRlIGZpbmFuY2lhbCBhZHZpY2UuIixzcGluOiJTcGluIn0sY29pbl9kYWlseV9wcmljZV93aWRnZXQ6e3RpdGxlOiJDb2luR2Vja28gUHJpY2UgVXBkYXRlIix0b3RhbF9tY2FwOiJUb3RhbCBNIGNhcCIsIjI0aF92b2wiOiIyNCBTYWF0bGlrIEhhY2ltIixkb206IkRvbSJ9LGNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldDp7ZXhjaGFuZ2U6IkJvcnNhIixwYWlyOiLDh2lmdCIscHJpY2U6IkZpeWF0Iix2b2x1bWU6IkhhY2ltIix0cnVzdF9zY29yZToiR8O8dmVuIFB1YW7EsSIsdmlld19wcmljZV9jaGFydDoiRml5YXQgVGFibG9zdW51IEfDtnIiLHBvd2VyZWRfYnk6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gdGFyYWbEsW5kYW4gZGVzdGVrbGVubWVrdGVkaXIiLHZpZXdfYWxsOiJWaWV3IGFsbCAle2NvaW59IG1hcmtldHMifX19fSk7"}},"time_used":15715,"timings":{"blocked":12123,"dns":0,"connect":0,"send":0,"wait":1215,"receive":2377,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.video.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.296Z","timestamp":1785143908296,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/js/extensions/revolution.extension.video.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:44 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"5d3d-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 6321\r\nKeep-Alive: timeout=5, max=98\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":23869,"size_decoded":6689,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (23621), with CRLF line terminators","md5":"bb64e971706ed830a25ae85f6958d3f3","sha1":"dc87239611afb8c8815441f0044b105e4aa73c9e","sha256":"12a1b0ebd1d51696246a62e740f5d71e97b7db2b0dbdbc1dcaa859b62f883369","sha512":"bb97092fdddd0f4d683e65bfb7380b10ff920153bed84ec79bd236eba9956661afcfeb5a9969917eeca8049625c53d619fd178907560bebb432dc64db92f69fc","ssdeep":"384:yJfty4HLaW8Tn5/k4kcpNWpVbweOf4c0/mn1a8Ijat1iq8PkPZAjuzdywo8Q9glC:czHJABpU6eOftk/jaiqEuzdCT9ESLsmP","tlshash":"04b2c7a7f50428658819f9d69caf115132b4fa7ee0058eb068f7e2b40f7ce4215deacd","first_seen":"2023-03-07T22:33:38Z","last_seen":"2026-08-09T08:42:12.858873Z","times_seen":314,"resource_available":true,"data":"LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogKiBSRVZPTFVUSU9OIDUuMi41LjEgRVhURU5TSU9OIC0gVklERU8gRlVOQ1RJT05TDQogKiBAdmVyc2lvbjogMi4wLjIgKDI1LjExLjIwMTYpDQogKiBAcmVxdWlyZXMganF1ZXJ5LnRoZW1lcHVuY2gucmV2b2x1dGlvbi5qcw0KICogQGF1dGhvciBUaGVtZVB1bmNoDQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQohZnVuY3Rpb24oYSl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGUoYSl7cmV0dXJuIHZvaWQgMD09YT8tMTpqUXVlcnkuaXNOdW1lcmljKGEpP2E6YS5zcGxpdCgiOiIpLmxlbmd0aD4xPzYwKnBhcnNlSW50KGEuc3BsaXQoIjoiKVswXSwwKStwYXJzZUludChhLnNwbGl0KCI6IilbMV0sMCk6YX12YXIgYj1qUXVlcnkuZm4ucmV2b2x1dGlvbixjPWIuaXNfbW9iaWxlKCksZD17YWxpYXM6IlZpZGVvIE1pbiBKUyIsbmFtZToicmV2b2x1dGlvbi5leHRlbnNpb25zLnZpZGVvLm1pbi5qcyIsbWluX2NvcmU6IjUuMyIsdmVyc2lvbjoiMi4wLjIifTtqUXVlcnkuZXh0ZW5kKCEwLGIse3ByZUxvYWRBdWRpbzpmdW5jdGlvbihhLGMpe3JldHVybiJzdG9wIiE9PWIuY29tcGFyZV92ZXJzaW9uKGQpLmNoZWNrJiZ2b2lkIGEuZmluZCgiLnRwLWF1ZGlvbGF5ZXIiKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGE9alF1ZXJ5KHRoaXMpLGQ9e307MD09PWEuZmluZCgiYXVkaW8iKS5sZW5ndGgmJihkLnNyYz12b2lkIDAhPWEuZGF0YSgidmlkZW9tcDQiKT9hLmRhdGEoInZpZGVvbXA0Iik6IiIsZC5wcmU9YS5kYXRhKCJ2aWRlb3ByZWxvYWQiKXx8IiIsdm9pZCAwPT09YS5hdHRyKCJpZCIpJiZhLmF0dHIoImF1ZGlvLWxheWVyLSIrTWF0aC5yb3VuZCgxOTk5OTkqTWF0aC5yYW5kb20oKSkpLGQuaWQ9YS5hdHRyKCJpZCIpLGQuc3RhdHVzPSJwcmVwYXJlZCIsZC5zdGFydD1qUXVlcnkubm93KCksZC53YWl0dGltZT0xZTMqYS5kYXRhKCJ2aWRlb3ByZWxvYWR3YWl0Iil8fDVlMywiYXV0byIhPWQucHJlJiYiY2FucGxheXRocm91Z2giIT1kLnByZSYmImNhbnBsYXkiIT1kLnByZSYmInByb2dyZXNzIiE9ZC5wcmV8fCh2b2lkIDA9PT1jLmF1ZGlvcXVldWUmJihjLmF1ZGlvcXVldWU9W10pLGMuYXVkaW9xdWV1ZS5wdXNoKGQpLGIubWFuYWdlVmlkZW9MYXllcihhLGMpKSl9KX0scHJlTG9hZEF1ZGlvRG9uZTpmdW5jdGlvbihhLGIsYyl7Yi5hdWRpb3F1ZXVlJiZiLmF1ZGlvcXVldWUubGVuZ3RoPjAmJmpRdWVyeS5lYWNoKGIuYXVkaW9xdWV1ZSxmdW5jdGlvbihiLGQpe2EuZGF0YSgidmlkZW9tcDQiKSE9PWQuc3JjfHxkLnByZSE9PWMmJiJhdXRvIiE9PWQucHJlfHwoZC5zdGF0dXM9ImxvYWRlZCIpfSl9LHJlc2V0VmlkZW86ZnVuY3Rpb24oYSxkLGYpe3ZhciBnPWEuZGF0YSgpO3N3aXRjaChnLnZpZGVvdHlwZSl7Y2FzZSJ5b3V0dWJlIjpnLnBsYXllcjt0cnl7aWYoIm9uIj09Zy5mb3JjZXJld2luZCl7dmFyIGk9ZShhLmRhdGEoInZpZGVvc3RhcnRhdCIpKSxqPWk9PS0xLGs9MT09PWcuYmd2aWRlb3x8YS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKS5sZW5ndGg+MDtpPWk9PS0xPzA6aSx2b2lkIDAhPWcucGxheWVyJiYoMCE9PWkmJiFqfHxrKSYmKGcucGxheWVyLnNlZWtUbyhpKSxnLnBsYXllci5wYXVzZVZpZGVvKCkpfX1jYXRjaChhKXt9MD09YS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKS5sZW5ndGgmJjEhPT1nLmJndmlkZW8mJmYhPT0hMCYmcHVuY2hncy5Ud2VlbkxpdGUudG8oYS5maW5kKCJpZnJhbWUiKSwuMyx7YXV0b0FscGhhOjEsZGlzcGxheToiYmxvY2siLGVhc2U6cHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0fSk7YnJlYWs7Y2FzZSJ2aW1lbyI6dmFyIGw9JGYoYS5maW5kKCJpZnJhbWUiKS5hdHRyKCJpZCIpKTt0cnl7aWYoIm9uIj09Zy5mb3JjZXJld2luZCl7dmFyIGk9ZShnLnZpZGVvc3RhcnRhdCksaj1pPT0tMSxrPTE9PT1nLmJndmlkZW98fGEuZmluZCgiLnRwLXZpZGVvcG9zdGVyIikubGVuZ3RoPjA7aT1pPT0tMT8wOmksKDAhPT1pJiYhanx8aykmJihsLmFwaSgic2Vla1RvIixpKSxsLmFwaSgicGF1c2UiKSl9fWNhdGNoKGEpe30wPT1hLmZpbmQoIi50cC12aWRlb3Bvc3RlciIpLmxlbmd0aCYmMSE9PWcuYmd2aWRlbyYmZiE9PSEwJiZwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLmZpbmQoImlmcmFtZSIpLC4zLHthdXRvQWxwaGE6MSxkaXNwbGF5OiJibG9jayIsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXR9KTticmVhaztjYXNlImh0bWw1IjppZihjJiYxPT1nLmRpc2FibGV2aWRlb29ubW9iaWxlKXJldHVybiExO3ZhciBuPSJodG1sNSI9PWcuYXVkaW8/ImF1ZGlvIjoidmlkZW8iLG89YS5maW5kKG4pLHA9b1swXTtpZihwdW5jaGdzLlR3ZWVuTGl0ZS50byhvLC4zLHthdXRvQWxwaGE6MSxkaXNwbGF5OiJibG9jayIsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXR9KSwib24iPT1nLmZvcmNlcmV3aW5kJiYhYS5oYXNDbGFzcygidmlkZW9pc3BsYXlpbmciKSl0cnl7dmFyIGk9ZShnLnZpZGVvc3RhcnRhdCk7cC5jdXJyZW50VGltZT1pPT0tMT8wOml9Y2F0Y2goYSl7fSgibXV0ZSI9PWcudm9sdW1lfHxiLmxhc3RUb2dnbGVTdGF0ZShhLnZpZGVvbXV0ZXRvZ2dsZWRieSl8fGQuZ2xvYmFsbXV0ZT09PSEwKSYmKHAubXV0ZWQ9ITApfX0saXNWaWRlb011dGVkOmZ1bmN0aW9uKGEsYil7dmFyIGM9ITEsZD1hLmRhdGEoKTtzd2l0Y2goZC52aWRlb3R5cGUpe2Nhc2UieW91dHViZSI6dHJ5e3ZhciBlPWQucGxheWVyO2M9ZS5pc011dGVkKCl9Y2F0Y2goYSl7fWJyZWFrO2Nhc2UidmltZW8iOnRyeXskZihhLmZpbmQoImlmcmFtZSIpLmF0dHIoImlkIikpOyJtdXRlIj09ZC52b2x1bWUmJihjPSEwKX1jYXRjaChhKXt9YnJlYWs7Y2FzZSJodG1sNSI6dmFyIGc9Imh0bWw1Ij09ZC5hdWRpbz8iYXVkaW8iOiJ2aWRlbyIsaD1hLmZpbmQoZyksaT1oWzBdO2kubXV0ZWQmJihjPSEwKX1yZXR1cm4gY30sbXV0ZVZpZGVvOmZ1bmN0aW9uKGEsYil7dmFyIGM9YS5kYXRhKCk7c3dpdGNoKGMudmlkZW90eXBlKXtjYXNlInlvdXR1YmUiOnRyeXt2YXIgZD1jLnBsYXllcjtkLm11dGUoKX1jYXRjaChhKXt9YnJlYWs7Y2FzZSJ2aW1lbyI6dHJ5e3ZhciBlPSRmKGEuZmluZCgiaWZyYW1lIikuYXR0cigiaWQiKSk7YS5kYXRhKCJ2b2x1bWUiLCJtdXRlIiksZS5hcGkoInNldFZvbHVtZSIsMCl9Y2F0Y2goYSl7fWJyZWFrO2Nhc2UiaHRtbDUiOnZhciBmPSJodG1sNSI9PWMuYXVkaW8/ImF1ZGlvIjoidmlkZW8iLGc9YS5maW5kKGYpLGg9Z1swXTtoLm11dGVkPSEwfX0sdW5NdXRlVmlkZW86ZnVuY3Rpb24oYSxiKXtpZihiLmdsb2JhbG11dGUhPT0hMCl7dmFyIGM9YS5kYXRhKCk7c3dpdGNoKGMudmlkZW90eXBlKXtjYXNlInlvdXR1YmUiOnRyeXt2YXIgZD1jLnBsYXllcjtkLnVuTXV0ZSgpfWNhdGNoKGEpe31icmVhaztjYXNlInZpbWVvIjp0cnl7dmFyIGU9JGYoYS5maW5kKCJpZnJhbWUiKS5hdHRyKCJpZCIpKTthLmRhdGEoInZvbHVtZSIsIjEiKSxlLmFwaSgic2V0Vm9sdW1lIiwxKX1jYXRjaChhKXt9YnJlYWs7Y2FzZSJodG1sNSI6dmFyIGY9Imh0bWw1Ij09Yy5hdWRpbz8iYXVkaW8iOiJ2aWRlbyIsZz1hLmZpbmQoZiksaD1nWzBdO2gubXV0ZWQ9ITF9fX0sc3RvcFZpZGVvOmZ1bmN0aW9uKGEsYil7dmFyIGM9YS5kYXRhKCk7c3dpdGNoKGIubGVhdmVWaWV3UG9ydEJhc2VkU3RvcHx8KGIubGFzdHBsYXllZHZpZGVvcz1bXSksYi5sZWF2ZVZpZXdQb3J0QmFzZWRTdG9wPSExLGMudmlkZW90eXBlKXtjYXNlInlvdXR1YmUiOnRyeXt2YXIgZD1jLnBsYXllcjtpZigyPT09ZC5nZXRQbGF5ZXJTdGF0ZSgpfHw1PT09ZC5nZXRQbGF5ZXJTdGF0ZSgpKXJldHVybjtkLnBhdXNlVmlkZW8oKSxjLnlvdXR1YmVwYXVzZWNhbGxlZD0hMCxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yy55b3V0dWJlcGF1c2VjYWxsZWQ9ITF9LDgwKX1jYXRjaChhKXtjb25zb2xlLmxvZygiSXNzdWUgYXQgWW91VHViZSBWaWRlbyBQYXVzZToiKSxjb25zb2xlLmxvZyhhKX1icmVhaztjYXNlInZpbWVvIjp0cnl7dmFyIGU9JGYoYS5maW5kKCJpZnJhbWUiKS5hdHRyKCJpZCIpKTtlLmFwaSgicGF1c2UiKSxjLnZpbWVvcGF1c2VjYWxsZWQ9ITAsc2V0VGltZW91dChmdW5jdGlvbigpe2MudmltZW9wYXVzZWNhbGxlZD0hMX0sODApfWNhdGNoKGEpe2NvbnNvbGUubG9nKCJJc3N1ZSBhdCBWaW1lbyBWaWRlbyBQYXVzZToiKSxjb25zb2xlLmxvZyhhKX1icmVhaztjYXNlImh0bWw1Ijp2YXIgZj0iaHRtbDUiPT1jLmF1ZGlvPyJhdWRpbyI6InZpZGVvIixnPWEuZmluZChmKSxoPWdbMF07dm9pZCAwIT1nJiZ2b2lkIDAhPWgmJmgucGF1c2UoKX19LHBsYXlWaWRlbzpmdW5jdGlvbihhLGQpe2NsZWFyVGltZW91dChhLmRhdGEoInZpZGVvcGxheXdhaXQiKSk7dmFyIGc9YS5kYXRhKCk7c3dpdGNoKGcudmlkZW90eXBlKXtjYXNlInlvdXR1YmUiOmlmKDA9PWEuZmluZCgiaWZyYW1lIikubGVuZ3RoKWEuYXBwZW5kKGEuZGF0YSgidmlkZW9tYXJrdXAiKSksaChhLGQsITApO2Vsc2UgaWYodm9pZCAwIT1nLnBsYXllci5wbGF5VmlkZW8pe3ZhciBpPWUoYS5kYXRhKCJ2aWRlb3N0YXJ0YXQiKSksaj1nLnBsYXllci5nZXRDdXJyZW50VGltZSgpOzE9PWEuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIikmJihqPS0xLGEuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIiwwKSksaSE9LTEmJmk+aiYmZy5wbGF5ZXIuc2Vla1RvKGkpLGcueW91dHViZXBhdXNlY2FsbGVkIT09ITAmJmcucGxheWVyLnBsYXlWaWRlbygpfWVsc2UgYS5kYXRhKCJ2aWRlb3BsYXl3YWl0IixzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Zy55b3V0dWJlcGF1c2VjYWxsZWQhPT0hMCYmYi5wbGF5VmlkZW8oYSxkKX0sNTApKTticmVhaztjYXNlInZpbWVvIjppZigwPT1hLmZpbmQoImlmcmFtZSIpLmxlbmd0aClhLmFwcGVuZChhLmRhdGEoInZpZGVvbWFya3VwIikpLGgoYSxkLCEwKTtlbHNlIGlmKGEuaGFzQ2xhc3MoInJzLWFwaXJlYWR5Iikpe3ZhciBrPWEuZmluZCgiaWZyYW1lIikuYXR0cigiaWQiKSxsPSRmKGspO3ZvaWQgMD09bC5hcGkoInBsYXkiKT9hLmRhdGEoInZpZGVvcGxheXdhaXQiLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtnLnZpbWVvcGF1c2VjYWxsZWQhPT0hMCYmYi5wbGF5VmlkZW8oYSxkKX0sNTApKTpzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bC5hcGkoInBsYXkiKTt2YXIgYj1lKGEuZGF0YSgidmlkZW9zdGFydGF0IikpLGM9YS5kYXRhKCJjdXJyZW50dGltZSIpOzE9PWEuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIikmJihjPS0xLGEuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIiwwKSksYiE9LTEmJmI+YyYmbC5hcGkoInNlZWtUbyIsYil9LDUxMCl9ZWxzZSBhLmRhdGEoInZpZGVvcGxheXdhaXQiLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtnLnZpbWVvcGF1c2VjYWxsZWQhPT0hMCYmYi5wbGF5VmlkZW8oYSxkKX0sNTApKTticmVhaztjYXNlImh0bWw1IjppZihjJiYxPT1hLmRhdGEoImRpc2FibGV2aWRlb29ubW9iaWxlIikpcmV0dXJuITE7dmFyIG09Imh0bWw1Ij09Zy5hdWRpbz8iYXVkaW8iOiJ2aWRlbyIsbj1hLmZpbmQobSksbz1uWzBdLHA9bi5wYXJlbnQoKTtpZigxIT1wLmRhdGEoIm1ldGFsb2FkZWQiKSlmKG8sImxvYWRlZG1ldGFkYXRhIixmdW5jdGlvbihhKXtiLnJlc2V0VmlkZW8oYSxkKSxvLnBsYXkoKTt2YXIgYz1lKGEuZGF0YSgidmlkZW9zdGFydGF0IikpLGY9by5jdXJyZW50VGltZTsxPT1hLmRhdGEoIm5leHRzbGlkZWF0ZW5kLXRyaWdnZXJlZCIpJiYoZj0tMSxhLmRhdGEoIm5leHRzbGlkZWF0ZW5kLXRyaWdnZXJlZCIsMCkpLGMhPS0xJiZjPmYmJihvLmN1cnJlbnRUaW1lPWMpfShhKSk7ZWxzZXtvLnBsYXkoKTt2YXIgaT1lKGEuZGF0YSgidmlkZW9zdGFydGF0IikpLGo9by5jdXJyZW50VGltZTsxPT1hLmRhdGEoIm5leHRzbGlkZWF0ZW5kLXRyaWdnZXJlZCIpJiYoaj0tMSxhLmRhdGEoIm5leHRzbGlkZWF0ZW5kLXRyaWdnZXJlZCIsMCkpLGkhPS0xJiZpPmomJihvLmN1cnJlbnRUaW1lPWkpfX19LGlzVmlkZW9QbGF5aW5nOmZ1bmN0aW9uKGEsYil7dmFyIGM9ITE7cmV0dXJuIHZvaWQgMCE9Yi5wbGF5aW5ndmlkZW9zJiZqUXVlcnkuZWFjaChiLnBsYXlpbmd2aWRlb3MsZnVuY3Rpb24oYixkKXthLmF0dHIoImlkIik9PWQuYXR0cigiaWQiKSYmKGM9ITApfSksY30scmVtb3ZlTWVkaWFGcm9tTGlzdDpmdW5jdGlvbihhLGIpe20oYSxiKX0scHJlcGFyZUNvdmVyZWRWaWRlbzpmdW5jdGlvbihhLGMsZCl7dmFyIGU9ZC5maW5kKCJpZnJhbWUsIHZpZGVvIiksZj1hLnNwbGl0KCI6IilbMF0sZz1hLnNwbGl0KCI6IilbMV0saD1kLmNsb3Nlc3QoIi50cC1yZXZzbGlkZXItc2xpZGVzbGkiKSxpPWgud2lkdGgoKS9oLmhlaWdodCgpLGo9Zi9nLGs9aS9qKjEwMCxsPWovaSoxMDA7aT5qP3B1bmNoZ3MuVHdlZW5MaXRlLnRvKGUsLjAwMSx7aGVpZ2h0OmsrIiUiLHdpZHRoOiIxMDAlIix0b3A6LShrLTEwMCkvMisiJSIsbGVmdDoiMHB4Iixwb3NpdGlvbjoiYWJzb2x1dGUifSk6cHVuY2hncy5Ud2VlbkxpdGUudG8oZSwuMDAxLHt3aWR0aDpsKyIlIixoZWlnaHQ6IjEwMCUiLGxlZnQ6LShsLTEwMCkvMisiJSIsdG9wOiIwcHgiLHBvc2l0aW9uOiJhYnNvbHV0ZSJ9KSxlLmhhc0NsYXNzKCJyZXNpemVsaXN0ZW5lciIpfHwoZS5hZGRDbGFzcygicmVzaXplbGlzdGVuZXIiKSxqUXVlcnkod2luZG93KS5yZXNpemUoZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQoZS5kYXRhKCJyZXNpemVsaXN0ZW5lciIpKSxlLmRhdGEoInJlc2l6ZWxpc3RlbmVyIixzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yi5wcmVwYXJlQ292ZXJlZFZpZGVvKGEsYyxkKX0sMzApKX0pKX0sY2hlY2tWaWRlb0FwaXM6ZnVuY3Rpb24oYSxiLGMpeyJodHRwczoiPT09bG9jYXRpb24ucHJvdG9jb2w/Imh0dHBzIjoiaHR0cCI7aWYoKHZvaWQgMCE9YS5kYXRhKCJ5dGlkIil8fGEuZmluZCgiaWZyYW1lIikubGVuZ3RoPjAmJmEuZmluZCgiaWZyYW1lIikuYXR0cigic3JjIikudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ5b3V0dWJlIik+MCkmJihiLnlvdXR1YmVhcGluZWVkZWQ9ITApLCh2b2lkIDAhPWEuZGF0YSgieXRpZCIpfHxhLmZpbmQoImlmcmFtZSIpLmxlbmd0aD4wJiZhLmZpbmQoImlmcmFtZSIpLmF0dHIoInNyYyIpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigieW91dHViZSIpPjApJiYwPT1jLmFkZGVkeXQpe2IueW91dHViZXN0YXJ0dGltZT1qUXVlcnkubm93KCksYy5hZGRlZHl0PTE7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7ZS5zcmM9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2lmcmFtZV9hcGkiO3ZhciBmPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXSxnPSEwO2pRdWVyeSgiaGVhZCIpLmZpbmQoIioiKS5lYWNoKGZ1bmN0aW9uKCl7Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2lmcmFtZV9hcGkiPT1qUXVlcnkodGhpcykuYXR0cigic3JjIikmJihnPSExKX0pLGcmJmYucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSxmKX1pZigodm9pZCAwIT1hLmRhdGEoInZpbWVvaWQiKXx8YS5maW5kKCJpZnJhbWUiKS5sZW5ndGg+MCYmYS5maW5kKCJpZnJhbWUiKS5hdHRyKCJzcmMiKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoInZpbWVvIik+MCkmJihiLnZpbWVvYXBpbmVlZGVkPSEwKSwodm9pZCAwIT1hLmRhdGEoInZpbWVvaWQiKXx8YS5maW5kKCJpZnJhbWUiKS5sZW5ndGg+MCYmYS5maW5kKCJpZnJhbWUiKS5hdHRyKCJzcmMiKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoInZpbWVvIik+MCkmJjA9PWMuYWRkZWR2aW0pe2IudmltZW9zdGFydHRpbWU9alF1ZXJ5Lm5vdygpLGMuYWRkZWR2aW09MTt2YXIgaD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSxmPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXSxnPSEwO2guc3JjPSJodHRwczovL3NlY3VyZS1hLnZpbWVvY2RuLmNvbS9qcy9mcm9vZ2Fsb29wMi5taW4uanMiLGpRdWVyeSgiaGVhZCIpLmZpbmQoIioiKS5lYWNoKGZ1bmN0aW9uKCl7Imh0dHBzOi8vc2VjdXJlLWEudmltZW9jZG4uY29tL2pzL2Zyb29nYWxvb3AyLm1pbi5qcyI9PWpRdWVyeSh0aGlzKS5hdHRyKCJzcmMiKSYmKGc9ITEpfSksZyYmZi5wYXJlbnROb2RlLmluc2VydEJlZm9yZShoLGYpfXJldHVybiBjfSxtYW5hZ2VWaWRlb0xheWVyOmZ1bmN0aW9uKGEsZyxpLGope2lmKCJzdG9wIj09PWIuY29tcGFyZV92ZXJzaW9uKGQpLmNoZWNrKXJldHVybiExO3ZhciBsPWEuZGF0YSgpLG09bC52aWRlb2F0dHJpYnV0ZXMsbj1sLnl0aWQsbz1sLnZpbWVvaWQscD0iYXV0byI9PT1sLnZpZGVvcHJlbG9hZHx8ImNhbnBsYXkiPT09bC52aWRlb3ByZWxvYWR8fCJjYW5wbGF5dGhyb3VnaCI9PT1sLnZpZGVvcHJlbG9hZHx8InByb2dyZXNzIj09PWwudmlkZW9wcmVsb2FkPyJhdXRvIjpsLnZpZGVvcHJlbG9hZCxxPWwudmlkZW9tcDQscj1sLnZpZGVvd2VibSxzPWwudmlkZW9vZ3YsdD1sLmFsbG93ZnVsbHNjcmVlbnZpZGVvLHU9bC52aWRlb2NvbnRyb2xzLHY9Imh0dHAiLHc9Imxvb3AiPT1sLnZpZGVvbG9vcD8ibG9vcCI6Imxvb3BhbmRub3NsaWRlc3RvcCI9PWwudmlkZW9sb29wPyJsb29wIjoiIix4PXZvaWQgMCE9cXx8dm9pZCAwIT1yPyJodG1sNSI6dm9pZCAwIT1uJiZTdHJpbmcobikubGVuZ3RoPjE/InlvdXR1YmUiOnZvaWQgMCE9byYmU3RyaW5nKG8pLmxlbmd0aD4xPyJ2aW1lbyI6Im5vbmUiLHk9Imh0bWw1Ij09bC5hdWRpbz8iYXVkaW8iOiJ2aWRlbyIsej0iaHRtbDUiPT14JiYwPT1hLmZpbmQoeSkubGVuZ3RoPyJodG1sNSI6InlvdXR1YmUiPT14JiYwPT1hLmZpbmQoImlmcmFtZSIpLmxlbmd0aD8ieW91dHViZSI6InZpbWVvIj09eCYmMD09YS5maW5kKCJpZnJhbWUiKS5sZW5ndGg/InZpbWVvIjoibm9uZSI7c3dpdGNoKHc9bC5uZXh0c2xpZGVhdGVuZD09PSEwPyIiOncsbC52aWRlb3R5cGU9eCx6KXtjYXNlImh0bWw1IjoiY29udHJvbHMiIT11JiYodT0iIik7dmFyIHk9InZpZGVvIjsiaHRtbDUiPT1sLmF1ZGlvJiYoeT0iYXVkaW8iLGEuYWRkQ2xhc3MoInRwLWF1ZGlvLWh0bWw1IikpO3ZhciBBPSI8Iit5Kycgc3R5bGU9Im9iamVjdC1maXQ6Y292ZXI7YmFja2dyb3VuZC1zaXplOmNvdmVyO3Zpc2libGU6aGlkZGVuO3dpZHRoOjEwMCU7IGhlaWdodDoxMDAlIiBjbGFzcz0iIiAnK3crJyBwcmVsb2FkPSInK3ArJyI+JzsiYXV0byI9PXAmJihnLm1lZGlhcHJlbG9hZD0hMCksdm9pZCAwIT1yJiYiZmlyZWZveCI9PWIuZ2V0X2Jyb3dzZXIoKS50b0xvd2VyQ2FzZSgpJiYoQT1BKyc8c291cmNlIHNyYz0iJytyKyciIHR5cGU9InZpZGVvL3dlYm0iIC8+Jyksdm9pZCAwIT1xJiYoQT1BKyc8c291cmNlIHNyYz0iJytxKyciIHR5cGU9InZpZGVvL21wNCIgLz4nKSx2b2lkIDAhPXMmJihBPUErJzxzb3VyY2Ugc3JjPSInK3MrJyIgdHlwZT0idmlkZW8vb2dnIiAvPicpLEE9QSsiPC8iK3krIj4iO3ZhciBCPSIiOyJ0cnVlIiE9PXQmJnQhPT0hMHx8KEI9JzxkaXYgY2xhc3M9InRwLXZpZGVvLWJ1dHRvbi13cmFwIj48YnV0dG9uICB0eXBlPSJidXR0b24iIGNsYXNzPSJ0cC12aWRlby1idXR0b24gdHAtdmlkLWZ1bGwtc2NyZWVuIj5GdWxsLVNjcmVlbjwvYnV0dG9uPjwvZGl2PicpLCJjb250cm9scyI9PXUmJihBKz0nPGRpdiBjbGFzcz0idHAtdmlkZW8tY29udHJvbHMiPjxkaXYgY2xhc3M9InRwLXZpZGVvLWJ1dHRvbi13cmFwIj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InRwLXZpZGVvLWJ1dHRvbiB0cC12aWQtcGxheS1wYXVzZSI+UGxheTwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9InRwLXZpZGVvLXNlZWstYmFyLXdyYXAiPjxpbnB1dCAgdHlwZT0icmFuZ2UiIGNsYXNzPSJ0cC1zZWVrLWJhciIgdmFsdWU9IjAiPjwvZGl2PjxkaXYgY2xhc3M9InRwLXZpZGVvLWJ1dHRvbi13cmFwIj48YnV0dG9uICB0eXBlPSJidXR0b24iIGNsYXNzPSJ0cC12aWRlby1idXR0b24gdHAtdmlkLW11dGUiPk11dGU8L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJ0cC12aWRlby12b2wtYmFyLXdyYXAiPjxpbnB1dCAgdHlwZT0icmFuZ2UiIGNsYXNzPSJ0cC12b2x1bWUtYmFyIiBtaW49IjAiIG1heD0iMSIgc3RlcD0iMC4xIiB2YWx1ZT0iMSI+PC9kaXY+JytCKyI8L2Rpdj4iKSxhLmRhdGEoInZpZGVvbWFya3VwIixBKSxhLmFwcGVuZChBKSwoYyYmMT09YS5kYXRhKCJkaXNhYmxldmlkZW9vbm1vYmlsZSIpfHxiLmlzSUUoOCkpJiZhLmZpbmQoeSkucmVtb3ZlKCksYS5maW5kKHkpLmVhY2goZnVuY3Rpb24oYyl7dmFyIGQ9dGhpcyxlPWpRdWVyeSh0aGlzKTtlLnBhcmVudCgpLmhhc0NsYXNzKCJodG1sNXZpZCIpfHxlLndyYXAoJzxkaXYgY2xhc3M9Imh0bWw1dmlkIiBzdHlsZT0icG9zaXRpb246cmVsYXRpdmU7dG9wOjBweDtsZWZ0OjBweDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlOyBvdmVyZmxvdzpoaWRkZW47Ij48L2Rpdj4nKTt2YXIgaD1lLnBhcmVudCgpOzEhPWguZGF0YSgibWV0YWxvYWRlZCIpJiZmKGQsImxvYWRlZG1ldGFkYXRhIixmdW5jdGlvbihhKXtrKGEsZyksYi5yZXNldFZpZGVvKGEsZyl9KGEpKX0pO2JyZWFrO2Nhc2UieW91dHViZSI6dj0iaHR0cHMiLCJub25lIj09dSYmKG09bS5yZXBsYWNlKCJjb250cm9scz0xIiwiY29udHJvbHM9MCIpLG0udG9Mb3dlckNhc2UoKS5pbmRleE9mKCJjb250cm9scyIpPT0tMSYmKG0rPSImY29udHJvbHM9MCIpKSxsLnZpZGVvaW5saW5lIT09ITAmJiJ0cnVlIiE9PWwudmlkZW9pbmxpbmUmJjEhPT1sLnZpZGVvaW5saW5lfHwobSs9IiZwbGF5c2lubGluZT0xIik7dmFyIEM9ZShhLmRhdGEoInZpZGVvc3RhcnRhdCIpKSxEPWUoYS5kYXRhKCJ2aWRlb2VuZGF0IikpO0MhPS0xJiYobT1tKyImc3RhcnQ9IitDKSxEIT0tMSYmKG09bSsiJmVuZD0iK0QpO3ZhciBFPW0uc3BsaXQoIm9yaWdpbj0iK3YrIjovLyIpLEY9IiI7RS5sZW5ndGg+MT8oRj1FWzBdKyJvcmlnaW49Iit2KyI6Ly8iLHNlbGYubG9jYXRpb24uaHJlZi5tYXRjaCgvd3d3L2dpKSYmIUVbMV0ubWF0Y2goL3d3dy9naSkmJihGKz0id3d3LiIpLEYrPUVbMV0pOkY9bTt2YXIgRz0idHJ1ZSI9PT10fHx0PT09ITA/ImFsbG93ZnVsbHNjcmVlbiI6IiI7YS5kYXRhKCJ2aWRlb21hcmt1cCIsJzxpZnJhbWUgdHlwZT0idGV4dC9odG1sIiBzcmM9IicrdisiOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkLyIrbisiPyIrRisnIiAnK0crJyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0ib3BhY2l0eTowO3Zpc2liaWxpdHk6aGlkZGVuO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCUiPjwvaWZyYW1lPicpO2JyZWFrO2Nhc2UidmltZW8iOnY9Imh0dHBzIixhLmRhdGEoInZpZGVvbWFya3VwIiwnPGlmcmFtZSBzcmM9IicrdisiOi8vcGxheWVyLnZpbWVvLmNvbS92aWRlby8iK28rIj9hdXRvcGxheT0wJiIrbSsnIiB3ZWJraXRhbGxvd2Z1bGxzY3JlZW4gbW96YWxsb3dmdWxsc2NyZWVuIGFsbG93ZnVsbHNjcmVlbiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0ib3BhY2l0eTowO3Zpc2liaWxpdHk6aGlkZGVuOzEwMCU7aGVpZ2h0OjEwMCUiPjwvaWZyYW1lPicpfXZhciBIPWMmJiJvbiI9PWEuZGF0YSgibm9wb3N0ZXJvbm1vYmlsZSIpO2lmKHZvaWQgMCE9bC52aWRlb3Bvc3RlciYmbC52aWRlb3Bvc3Rlci5sZW5ndGg+MiYmIUgpMD09YS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKS5sZW5ndGgmJmEuYXBwZW5kKCc8ZGl2IGNsYXNzPSJ0cC12aWRlb3Bvc3RlciBub1N3aXBlIiBzdHlsZT0iY3Vyc29yOnBvaW50ZXI7IHBvc2l0aW9uOmFic29sdXRlO3RvcDowcHg7bGVmdDowcHg7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4OjM7YmFja2dyb3VuZC1pbWFnZTp1cmwoJytsLnZpZGVvcG9zdGVyKycpOyBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIgY2VudGVyOyI+PC9kaXY+JyksMD09YS5maW5kKCJpZnJhbWUiKS5sZW5ndGgmJmEuZmluZCgiLnRwLXZpZGVvcG9zdGVyIikuY2xpY2soZnVuY3Rpb24oKXtpZihiLnBsYXlWaWRlbyhhLGcpLGMpe2lmKDE9PWEuZGF0YSgiZGlzYWJsZXZpZGVvb25tb2JpbGUiKSlyZXR1cm4hMTtwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLmZpbmQoIi50cC12aWRlb3Bvc3RlciIpLC4zLHthdXRvQWxwaGE6MCxmb3JjZTNEOiJhdXRvIixlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dH0pLHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGEuZmluZCgiaWZyYW1lIiksLjMse2F1dG9BbHBoYToxLGRpc3BsYXk6ImJsb2NrIixlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dH0pfX0pO2Vsc2V7aWYoYyYmMT09YS5kYXRhKCJkaXNhYmxldmlkZW9vbm1vYmlsZSIpKXJldHVybiExOzAhPWEuZmluZCgiaWZyYW1lIikubGVuZ3RofHwieW91dHViZSIhPXgmJiJ2aW1lbyIhPXh8fChhLmFwcGVuZChhLmRhdGEoInZpZGVvbWFya3VwIikpLGgoYSxnLCExKSl9Im5vbmUiIT1hLmRhdGEoImRvdHRlZG92ZXJsYXkiKSYmdm9pZCAwIT1hLmRhdGEoImRvdHRlZG92ZXJsYXkiKSYmMSE9YS5maW5kKCIudHAtZG90dGVkb3ZlcmxheSIpLmxlbmd0aCYmYS5hcHBlbmQoJzxkaXYgY2xhc3M9InRwLWRvdHRlZG92ZXJsYXkgJythLmRhdGEoImRvdHRlZG92ZXJsYXkiKSsnIj48L2Rpdj4nKSxhLmFkZENsYXNzKCJIYXNMaXN0ZW5lciIpLDE9PWEuZGF0YSgiYmd2aWRlbyIpJiZwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYS5maW5kKCJ2aWRlbywgaWZyYW1lIikse2F1dG9BbHBoYTowfSl9fSk7dmFyIGY9ZnVuY3Rpb24oYSxiLGMpe2EuYWRkRXZlbnRMaXN0ZW5lcj9hLmFkZEV2ZW50TGlzdGVuZXIoYixjLHtjYXB0dXJlOiExLHBhc3NpdmU6ITB9KTphLmF0dGFjaEV2ZW50KGIsYyx7Y2FwdHVyZTohMSxwYXNzaXZlOiEwfSl9LGc9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXt9O3JldHVybiBkLnZpZGVvPWEsZC52aWRlb3R5cGU9YixkLnNldHRpbmdzPWMsZH0saD1mdW5jdGlvbihhLGQsZil7dmFyIGg9YS5kYXRhKCksaz1hLmZpbmQoImlmcmFtZSIpLG49ImlmcmFtZSIrTWF0aC5yb3VuZCgxZTUqTWF0aC5yYW5kb20oKSsxKSxvPWgudmlkZW9sb29wLHA9Imxvb3BhbmRub3NsaWRlc3RvcCIhPW87aWYobz0ibG9vcCI9PW98fCJsb29wYW5kbm9zbGlkZXN0b3AiPT1vLDE9PWEuZGF0YSgiZm9yY2Vjb3ZlciIpKXthLnJlbW92ZUNsYXNzKCJmdWxsc2NyZWVudmlkZW8iKS5hZGRDbGFzcygiY292ZXJzY3JlZW52aWRlbyIpO3ZhciBxPWEuZGF0YSgiYXNwZWN0cmF0aW8iKTt2b2lkIDAhPXEmJnEuc3BsaXQoIjoiKS5sZW5ndGg+MSYmYi5wcmVwYXJlQ292ZXJlZFZpZGVvKHEsZCxhKX1pZigxPT1hLmRhdGEoImJndmlkZW8iKSl7dmFyIHE9YS5kYXRhKCJhc3BlY3RyYXRpbyIpO3ZvaWQgMCE9cSYmcS5zcGxpdCgiOiIpLmxlbmd0aD4xJiZiLnByZXBhcmVDb3ZlcmVkVmlkZW8ocSxkLGEpfWlmKGsuYXR0cigiaWQiLG4pLGYmJmEuZGF0YSgic3RhcnR2aWRlb25vdyIsITApLDEhPT1hLmRhdGEoInZpZGVvbGlzdGVuZXJleGlzdCIpKXN3aXRjaChoLnZpZGVvdHlwZSl7Y2FzZSJ5b3V0dWJlIjp2YXIgcj1uZXcgWVQuUGxheWVyKG4se2V2ZW50czp7b25TdGF0ZUNoYW5nZTpmdW5jdGlvbihjKXt2YXIgZj1hLmNsb3Nlc3QoIi50cC1zaW1wbGVyZXNwb25zaXZlIikscT0oaC52aWRlb3JhdGUsYS5kYXRhKCJ2aWRlb3N0YXJ0IiksaigpKTtpZihjLmRhdGE9PVlULlBsYXllclN0YXRlLlBMQVlJTkcpcHVuY2hncy5Ud2VlbkxpdGUudG8oYS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKSwuMyx7YXV0b0FscGhhOjAsZm9yY2UzRDoiYXV0byIsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXR9KSxwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLmZpbmQoImlmcmFtZSIpLC4zLHthdXRvQWxwaGE6MSxkaXNwbGF5OiJibG9jayIsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXR9KSwibXV0ZSI9PWEuZGF0YSgidm9sdW1lIil8fGIubGFzdFRvZ2dsZVN0YXRlKGEuZGF0YSgidmlkZW9tdXRldG9nZ2xlZGJ5IikpfHxkLmdsb2JhbG11dGU9PT0hMD9yLm11dGUoKTooci51bk11dGUoKSxyLnNldFZvbHVtZShwYXJzZUludChhLmRhdGEoInZvbHVtZSIpLDApfHw3NSkpLGQudmlkZW9wbGF5aW5nPSEwLGwoYSxkKSxwP2QuYy50cmlnZ2VyKCJzdG9wdGltZXIiKTpkLnZpZGVvcGxheWluZz0hMSxkLmMudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbnZpZGVvcGxheSIsZyhyLCJ5b3V0dWJlIixhLmRhdGEoKSkpLGIudG9nZ2xlU3RhdGUoaC52aWRlb3RvZ2dsZWRieSk7ZWxzZXtpZigwPT1jLmRhdGEmJm8pe3ZhciBzPWUoYS5kYXRhKCJ2aWRlb3N0YXJ0YXQiKSk7cyE9LTEmJnIuc2Vla1RvKHMpLHIucGxheVZpZGVvKCksYi50b2dnbGVTdGF0ZShoLnZpZGVvdG9nZ2xlZGJ5KX0hcSYmKDA9PWMuZGF0YXx8Mj09Yy5kYXRhKSYmIm9uIj09YS5kYXRhKCJzaG93Y292ZXJvbnBhdXNlIikmJmEuZmluZCgiLnRwLXZpZGVvcG9zdGVyIikubGVuZ3RoPjAmJihwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLmZpbmQoIi50cC12aWRlb3Bvc3RlciIpLC4zLHthdXRvQWxwaGE6MSxmb3JjZTNEOiJhdXRvIixlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dH0pLHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGEuZmluZCgiaWZyYW1lIiksLjMse2F1dG9BbHBoYTowLGVhc2U6cHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0fSkpLGMuZGF0YSE9LTEmJjMhPWMuZGF0YSYmKGQudmlkZW9wbGF5aW5nPSExLGQudG9ucGF1c2U9ITEsbShhLGQpLGYudHJpZ2dlcigic3RhcnR0aW1lciIpLGQuYy50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLm9udmlkZW9zdG9wIixnKHIsInlvdXR1YmUiLGEuZGF0YSgpKSksdm9pZCAwIT1kLmN1cnJlbnRMYXllclZpZGVvSXNQbGF5aW5nJiZkLmN1cnJlbnRMYXllclZpZGVvSXNQbGF5aW5nLmF0dHIoImlkIikhPWEuYXR0cigiaWQiKXx8Yi51blRvZ2dsZVN0YXRlKGgudmlkZW90b2dnbGVkYnkpKSwwPT1jLmRhdGEmJjE9PWEuZGF0YSgibmV4dHNsaWRlYXRlbmQiKT8oaSgpLGEuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIiwxKSxkLmMucmV2bmV4dCgpLG0oYSxkKSk6KG0oYSxkKSxkLnZpZGVvcGxheWluZz0hMSxmLnRyaWdnZXIoInN0YXJ0dGltZXIiKSxkLmMudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbnZpZGVvc3RvcCIsZyhyLCJ5b3V0dWJlIixhLmRhdGEoKSkpLHZvaWQgMCE9ZC5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZyYmZC5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZy5hdHRyKCJpZCIpIT1hLmF0dHIoImlkIil8fGIudW5Ub2dnbGVTdGF0ZShoLnZpZGVvdG9nZ2xlZGJ5KSl9fSxvblJlYWR5OmZ1bmN0aW9uKGIpe3ZhciBkPWgudmlkZW9yYXRlO2EuZGF0YSgidmlkZW9zdGFydCIpO2lmKGEuYWRkQ2xhc3MoInJzLWFwaXJlYWR5Iiksdm9pZCAwIT1kJiZiLnRhcmdldC5zZXRQbGF5YmFja1JhdGUocGFyc2VGbG9hdChkKSksYS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKS51bmJpbmQoImNsaWNrIiksYS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKS5jbGljayhmdW5jdGlvbigpe2N8fHIucGxheVZpZGVvKCl9KSxhLmRhdGEoInN0YXJ0dmlkZW9ub3ciKSl7aC5wbGF5ZXIucGxheVZpZGVvKCk7dmFyIGc9ZShhLmRhdGEoInZpZGVvc3RhcnRhdCIpKTtnIT0tMSYmaC5wbGF5ZXIuc2Vla1RvKGcpfWEuZGF0YSgidmlkZW9saXN0ZW5lcmV4aXN0IiwxKX19fSk7YS5kYXRhKCJwbGF5ZXIiLHIpO2JyZWFrO2Nhc2UidmltZW8iOmZvcih2YXIgdyxzPWsuYXR0cigic3JjIiksdD17fSx1PXMsdj0vKFteJj1dKyk9KFteJl0qKS9nO3c9di5leGVjKHUpOyl0W2RlY29kZVVSSUNvbXBvbmVudCh3WzFdKV09ZGVjb2RlVVJJQ29tcG9uZW50KHdbMl0pO3M9dm9pZCAwIT10LnBsYXllcl9pZD9zLnJlcGxhY2UodC5wbGF5ZXJfaWQsbik6cysiJnBsYXllcl9pZD0iK247dHJ5e3M9cy5yZXBsYWNlKCJhcGk9MCIsImFwaT0xIil9Y2F0Y2goYSl7fXMrPSImYXBpPTEiLGsuYXR0cigic3JjIixzKTt2YXIgcj1hLmZpbmQoImlmcmFtZSIpWzBdLHk9KGpRdWVyeSgiIyIrbiksJGYobikpO3kuYWRkRXZlbnQoInJlYWR5IixmdW5jdGlvbigpe2lmKGEuYWRkQ2xhc3MoInJzLWFwaXJlYWR5IikseS5hZGRFdmVudCgicGxheSIsZnVuY3Rpb24oYyl7YS5kYXRhKCJuZXh0c2xpZGVjYWxsZWQiLDApLHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGEuZmluZCgiLnRwLXZpZGVvcG9zdGVyIiksLjMse2F1dG9BbHBoYTowLGZvcmNlM0Q6ImF1dG8iLGVhc2U6cHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0fSkscHVuY2hncy5Ud2VlbkxpdGUudG8oYS5maW5kKCJpZnJhbWUiKSwuMyx7YXV0b0FscGhhOjEsZGlzcGxheToiYmxvY2siLGVhc2U6cHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0fSksZC5jLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub252aWRlb3BsYXkiLGcoeSwidmltZW8iLGEuZGF0YSgpKSksZC52aWRlb3BsYXlpbmc9ITAsbChhLGQpLHA/ZC5jLnRyaWdnZXIoInN0b3B0aW1lciIpOmQudmlkZW9wbGF5aW5nPSExLCJtdXRlIj09YS5kYXRhKCJ2b2x1bWUiKXx8Yi5sYXN0VG9nZ2xlU3RhdGUoYS5kYXRhKCJ2aWRlb211dGV0b2dnbGVkYnkiKSl8fGQuZ2xvYmFsbXV0ZT09PSEwP3kuYXBpKCJzZXRWb2x1bWUiLCIwIik6eS5hcGkoInNldFZvbHVtZSIscGFyc2VJbnQoYS5kYXRhKCJ2b2x1bWUiKSwwKS8xMDB8fC43NSksYi50b2dnbGVTdGF0ZShoLnZpZGVvdG9nZ2xlZGJ5KX0pLHkuYWRkRXZlbnQoInBsYXlQcm9ncmVzcyIsZnVuY3Rpb24oYil7dmFyIGM9ZShhLmRhdGEoInZpZGVvZW5kYXQiKSk7aWYoYS5kYXRhKCJjdXJyZW50dGltZSIsYi5zZWNvbmRzKSwwIT1jJiZNYXRoLmFicyhjLWIuc2Vjb25kcyk8LjMmJmM+Yi5zZWNvbmRzJiYxIT1hLmRhdGEoIm5leHRzbGlkZWNhbGxlZCIpKWlmKG8pe3kuYXBpKCJwbGF5Iik7dmFyIGY9ZShhLmRhdGEoInZpZGVvc3RhcnRhdCIpKTtmIT0tMSYmeS5hcGkoInNlZWtUbyIsZil9ZWxzZSAxPT1hLmRhdGEoIm5leHRzbGlkZWF0ZW5kIikmJihhLmRhdGEoIm5leHRzbGlkZWF0ZW5kLXRyaWdnZXJlZCIsMSksYS5kYXRhKCJuZXh0c2xpZGVjYWxsZWQiLDEpLGQuYy5yZXZuZXh0KCkpLHkuYXBpKCJwYXVzZSIpfSkseS5hZGRFdmVudCgiZmluaXNoIixmdW5jdGlvbihjKXttKGEsZCksZC52aWRlb3BsYXlpbmc9ITEsZC5jLnRyaWdnZXIoInN0YXJ0dGltZXIiKSxkLmMudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbnZpZGVvc3RvcCIsZyh5LCJ2aW1lbyIsYS5kYXRhKCkpKSwxPT1hLmRhdGEoIm5leHRzbGlkZWF0ZW5kIikmJihhLmRhdGEoIm5leHRzbGlkZWF0ZW5kLXRyaWdnZXJlZCIsMSksZC5jLnJldm5leHQoKSksdm9pZCAwIT1kLmN1cnJlbnRMYXllclZpZGVvSXNQbGF5aW5nJiZkLmN1cnJlbnRMYXllclZpZGVvSXNQbGF5aW5nLmF0dHIoImlkIikhPWEuYXR0cigiaWQiKXx8Yi51blRvZ2dsZVN0YXRlKGgudmlkZW90b2dnbGVkYnkpfSkseS5hZGRFdmVudCgicGF1c2UiLGZ1bmN0aW9uKGMpe2EuZmluZCgiLnRwLXZpZGVvcG9zdGVyIikubGVuZ3RoPjAmJiJvbiI9PWEuZGF0YSgic2hvd2NvdmVyb25wYXVzZSIpJiYocHVuY2hncy5Ud2VlbkxpdGUudG8oYS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKSwuMyx7YXV0b0FscGhhOjEsZm9yY2UzRDoiYXV0byIsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXR9KSxwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLmZpbmQoImlmcmFtZSIpLC4zLHthdXRvQWxwaGE6MCxlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dH0pKSxkLnZpZGVvcGxheWluZz0hMSxkLnRvbnBhdXNlPSExLG0oYSxkKSxkLmMudHJpZ2dlcigic3RhcnR0aW1lciIpLGQuYy50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLm9udmlkZW9zdG9wIixnKHksInZpbWVvIixhLmRhdGEoKSkpLHZvaWQgMCE9ZC5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZyYmZC5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZy5hdHRyKCJpZCIpIT1hLmF0dHIoImlkIil8fGIudW5Ub2dnbGVTdGF0ZShoLnZpZGVvdG9nZ2xlZGJ5KX0pLGEuZmluZCgiLnRwLXZpZGVvcG9zdGVyIikudW5iaW5kKCJjbGljayIpLGEuZmluZCgiLnRwLXZpZGVvcG9zdGVyIikuY2xpY2soZnVuY3Rpb24oKXtpZighYylyZXR1cm4geS5hcGkoInBsYXkiKSwhMX0pLGEuZGF0YSgic3RhcnR2aWRlb25vdyIpKXt5LmFwaSgicGxheSIpO3ZhciBmPWUoYS5kYXRhKCJ2aWRlb3N0YXJ0YXQiKSk7ZiE9LTEmJnkuYXBpKCJzZWVrVG8iLGYpfWEuZGF0YSgidmlkZW9saXN0ZW5lcmV4aXN0IiwxKX0pfWVsc2V7dmFyIHo9ZShhLmRhdGEoInZpZGVvc3RhcnRhdCIpKTtzd2l0Y2goaC52aWRlb3R5cGUpe2Nhc2UieW91dHViZSI6ZiYmKGgucGxheWVyLnBsYXlWaWRlbygpLHohPS0xJiZoLnBsYXllci5zZWVrVG8oKSk7YnJlYWs7Y2FzZSJ2aW1lbyI6aWYoZil7dmFyIHk9JGYoYS5maW5kKCJpZnJhbWUiKS5hdHRyKCJpZCIpKTt5LmFwaSgicGxheSIpLHohPS0xJiZ5LmFwaSgic2Vla1RvIix6KX19fX0saT1mdW5jdGlvbigpe2RvY3VtZW50LmV4aXRGdWxsc2NyZWVuP2RvY3VtZW50LmV4aXRGdWxsc2NyZWVuKCk6ZG9jdW1lbnQubW96Q2FuY2VsRnVsbFNjcmVlbj9kb2N1bWVudC5tb3pDYW5jZWxGdWxsU2NyZWVuKCk6ZG9jdW1lbnQud2Via2l0RXhpdEZ1bGxzY3JlZW4mJmRvY3VtZW50LndlYmtpdEV4aXRGdWxsc2NyZWVuKCl9LGo9ZnVuY3Rpb24oKXt0cnl7aWYodm9pZCAwIT09d2luZG93LmZ1bGxTY3JlZW4pcmV0dXJuIHdpbmRvdy5mdWxsU2NyZWVuO3ZhciBhPTU7cmV0dXJuIGpRdWVyeS5icm93c2VyLndlYmtpdCYmL0FwcGxlIENvbXB1dGVyLy50ZXN0KG5hdmlnYXRvci52ZW5kb3IpJiYoYT00Miksc2NyZWVuLndpZHRoPT13aW5kb3cuaW5uZXJXaWR0aCYmTWF0aC5hYnMoc2NyZWVuLmhlaWdodC13aW5kb3cuaW5uZXJIZWlnaHQpPGF9Y2F0Y2goYSl7fX0saz1mdW5jdGlvbihhLGQsaCl7aWYoYyYmMT09YS5kYXRhKCJkaXNhYmxldmlkZW9vbm1vYmlsZSIpKXJldHVybiExO3ZhciBrPWEuZGF0YSgpLG49Imh0bWw1Ij09ay5hdWRpbz8iYXVkaW8iOiJ2aWRlbyIsbz1hLmZpbmQobikscD1vWzBdLHE9by5wYXJlbnQoKSxyPWsudmlkZW9sb29wLHM9Imxvb3BhbmRub3NsaWRlc3RvcCIhPXI7aWYocj0ibG9vcCI9PXJ8fCJsb29wYW5kbm9zbGlkZXN0b3AiPT1yLHEuZGF0YSgibWV0YWxvYWRlZCIsMSksMSE9YS5kYXRhKCJiZ3ZpZGVvIil8fCJub25lIiE9PWsudmlkZW9sb29wJiZrLnZpZGVvbG9vcCE9PSExfHwocz0hMSksdm9pZCAwPT1vLmF0dHIoImNvbnRyb2wiKSYmKDAhPWEuZmluZCgiLnRwLXZpZGVvLXBsYXktYnV0dG9uIikubGVuZ3RofHxjfHxhLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtdmlkZW8tcGxheS1idXR0b24iPjxpIGNsYXNzPSJyZXZpY29uLXJpZ2h0LWRpciI+PC9pPjxzcGFuIGNsYXNzPSJ0cC1yZXZzdG9wIj4mbmJzcDs8L3NwYW4+PC9kaXY+JyksYS5maW5kKCJ2aWRlbywgLnRwLXBvc3RlciwgLnRwLXZpZGVvLXBsYXktYnV0dG9uIikuY2xpY2soZnVuY3Rpb24oKXthLmhhc0NsYXNzKCJ2aWRlb2lzcGxheWluZyIpP3AucGF1c2UoKTpwLnBsYXkoKX0pKSwxPT1hLmRhdGEoImZvcmNlY292ZXIiKXx8YS5oYXNDbGFzcygiZnVsbHNjcmVlbnZpZGVvIil8fDE9PWEuZGF0YSgiYmd2aWRlbyIpKWlmKDE9PWEuZGF0YSgiZm9yY2Vjb3ZlciIpfHwxPT1hLmRhdGEoImJndmlkZW8iKSl7cS5hZGRDbGFzcygiZnVsbGNvdmVyZWR2aWRlbyIpO3ZhciB0PWEuZGF0YSgiYXNwZWN0cmF0aW8iKXx8IjQ6MyI7Yi5wcmVwYXJlQ292ZXJlZFZpZGVvKHQsZCxhKX1lbHNlIHEuYWRkQ2xhc3MoImZ1bGxzY3JlZW52aWRlbyIpO3ZhciB1PWEuZmluZCgiLnRwLXZpZC1wbGF5LXBhdXNlIilbMF0sdj1hLmZpbmQoIi50cC12aWQtbXV0ZSIpWzBdLHc9YS5maW5kKCIudHAtdmlkLWZ1bGwtc2NyZWVuIilbMF0seD1hLmZpbmQoIi50cC1zZWVrLWJhciIpWzBdLHk9YS5maW5kKCIudHAtdm9sdW1lLWJhciIpWzBdO3ZvaWQgMCE9dSYmZih1LCJjbGljayIsZnVuY3Rpb24oKXsxPT1wLnBhdXNlZD9wLnBsYXkoKTpwLnBhdXNlKCl9KSx2b2lkIDAhPXYmJmYodiwiY2xpY2siLGZ1bmN0aW9uKCl7MD09cC5tdXRlZD8ocC5tdXRlZD0hMCx2LmlubmVySFRNTD0iVW5tdXRlIik6KHAubXV0ZWQ9ITEsdi5pbm5lckhUTUw9Ik11dGUiKX0pLHZvaWQgMCE9dyYmdyYmZih3LCJjbGljayIsZnVuY3Rpb24oKXtwLnJlcXVlc3RGdWxsc2NyZWVuP3AucmVxdWVzdEZ1bGxzY3JlZW4oKTpwLm1velJlcXVlc3RGdWxsU2NyZWVuP3AubW96UmVxdWVzdEZ1bGxTY3JlZW4oKTpwLndlYmtpdFJlcXVlc3RGdWxsc2NyZWVuJiZwLndlYmtpdFJlcXVlc3RGdWxsc2NyZWVuKCl9KSx2b2lkIDAhPXgmJihmKHgsImNoYW5nZSIsZnVuY3Rpb24oKXt2YXIgYT1wLmR1cmF0aW9uKih4LnZhbHVlLzEwMCk7cC5jdXJyZW50VGltZT1hfSksZih4LCJtb3VzZWRvd24iLGZ1bmN0aW9uKCl7YS5hZGRDbGFzcygic2Vla2JhcmRyYWdnZWQiKSxwLnBhdXNlKCl9KSxmKHgsIm1vdXNldXAiLGZ1bmN0aW9uKCl7YS5yZW1vdmVDbGFzcygic2Vla2JhcmRyYWdnZWQiKSxwLnBsYXkoKX0pKSxmKHAsImNhbnBsYXl0aHJvdWdoIixmdW5jdGlvbigpe2IucHJlTG9hZEF1ZGlvRG9uZShhLGQsImNhbnBsYXl0aHJvdWdoIil9KSxmKHAsImNhbnBsYXkiLGZ1bmN0aW9uKCl7Yi5wcmVMb2FkQXVkaW9Eb25lKGEsZCwiY2FucGxheSIpfSksZihwLCJwcm9ncmVzcyIsZnVuY3Rpb24oKXtiLnByZUxvYWRBdWRpb0RvbmUoYSxkLCJwcm9ncmVzcyIpfSksZihwLCJ0aW1ldXBkYXRlIixmdW5jdGlvbigpe3ZhciBiPTEwMC9wLmR1cmF0aW9uKnAuY3VycmVudFRpbWUsYz1lKGEuZGF0YSgidmlkZW9lbmRhdCIpKSxmPXAuY3VycmVudFRpbWU7aWYodm9pZCAwIT14JiYoeC52YWx1ZT1iKSwwIT1jJiZjIT0tMSYmTWF0aC5hYnMoYy1mKTw9LjMmJmM+ZiYmMSE9YS5kYXRhKCJuZXh0c2xpZGVjYWxsZWQiKSlpZihyKXtwLnBsYXkoKTt2YXIgZz1lKGEuZGF0YSgidmlkZW9zdGFydGF0IikpO2chPS0xJiYocC5jdXJyZW50VGltZT1nKX1lbHNlIDE9PWEuZGF0YSgibmV4dHNsaWRlYXRlbmQiKSYmKGEuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIiwxKSxhLmRhdGEoIm5leHRzbGlkZWNhbGxlZCIsMSksZC5qdXN0X2NhbGxlZF9uZXh0c2xpZGVfYXRfaHRtbHRpbWVyPSEwLGQuYy5yZXZuZXh0KCksc2V0VGltZW91dChmdW5jdGlvbigpe2QuanVzdF9jYWxsZWRfbmV4dHNsaWRlX2F0X2h0bWx0aW1lcj0hMX0sMWUzKSkscC5wYXVzZSgpfSksdm9pZCAwIT15JiZmKHksImNoYW5nZSIsZnVuY3Rpb24oKXtwLnZvbHVtZT15LnZhbHVlfSksZihwLCJwbGF5IixmdW5jdGlvbigpe2EuZGF0YSgibmV4dHNsaWRlY2FsbGVkIiwwKTt2YXIgYz1hLmRhdGEoInZvbHVtZSIpO2M9dm9pZCAwIT1jJiYibXV0ZSIhPWM/cGFyc2VGbG9hdChjKS8xMDA6YyxkLmdsb2JhbG11dGU9PT0hMD9wLm11dGVkPSEwOnAubXV0ZWQ9ITEsYz4xJiYoYy89MTAwKSwibXV0ZSI9PWM/cC5tdXRlZD0hMDp2b2lkIDAhPWMmJihwLnZvbHVtZT1jKSxhLmFkZENsYXNzKCJ2aWRlb2lzcGxheWluZyIpO3ZhciBlPSJodG1sNSI9PWsuYXVkaW8/ImF1ZGlvIjoidmlkZW8iO2woYSxkKSxzJiYiYXVkaW8iIT1lPyhkLnZpZGVvcGxheWluZz0hMCxkLmMudHJpZ2dlcigic3RvcHRpbWVyIiksZC5jLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub252aWRlb3BsYXkiLGcocCwiaHRtbDUiLGspKSk6KGQudmlkZW9wbGF5aW5nPSExLCJhdWRpbyIhPWUmJmQuYy50cmlnZ2VyKCJzdGFydHRpbWVyIiksZC5jLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub252aWRlb3N0b3AiLGcocCwiaHRtbDUiLGspKSkscHVuY2hncy5Ud2VlbkxpdGUudG8oYS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKSwuMyx7YXV0b0FscGhhOjAsZm9yY2UzRDoiYXV0byIsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXR9KSxwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLmZpbmQoZSksLjMse2F1dG9BbHBoYToxLGRpc3BsYXk6ImJsb2NrIixlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dH0pO3ZhciBmPWEuZmluZCgiLnRwLXZpZC1wbGF5LXBhdXNlIilbMF0saD1hLmZpbmQoIi50cC12aWQtbXV0ZSIpWzBdO3ZvaWQgMCE9ZiYmKGYuaW5uZXJIVE1MPSJQYXVzZSIpLHZvaWQgMCE9aCYmcC5tdXRlZCYmKGguaW5uZXJIVE1MPSJVbm11dGUiKSxiLnRvZ2dsZVN0YXRlKGsudmlkZW90b2dnbGVkYnkpfSksZihwLCJwYXVzZSIsZnVuY3Rpb24oKXt2YXIgYz0iaHRtbDUiPT1rLmF1ZGlvPyJhdWRpbyI6InZpZGVvIixlPWooKTshZSYmYS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKS5sZW5ndGg+MCYmIm9uIj09YS5kYXRhKCJzaG93Y292ZXJvbnBhdXNlIikmJiFhLmhhc0NsYXNzKCJzZWVrYmFyZHJhZ2dlZCIpJiYocHVuY2hncy5Ud2VlbkxpdGUudG8oYS5maW5kKCIudHAtdmlkZW9wb3N0ZXIiKSwuMyx7YXV0b0FscGhhOjEsZm9yY2UzRDoiYXV0byIsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXR9KSxwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLmZpbmQoYyksLjMse2F1dG9BbHBoYTowLGVhc2U6cHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0fSkpLGEucmVtb3ZlQ2xhc3MoInZpZGVvaXNwbGF5aW5nIiksZC52aWRlb3BsYXlpbmc9ITEsbShhLGQpLCJhdWRpbyIhPWMmJmQuYy50cmlnZ2VyKCJzdGFydHRpbWVyIiksZC5jLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub252aWRlb3N0b3AiLGcocCwiaHRtbDUiLGEuZGF0YSgpKSk7dmFyIGY9YS5maW5kKCIudHAtdmlkLXBsYXktcGF1c2UiKVswXTt2b2lkIDAhPWYmJihmLmlubmVySFRNTD0iUGxheSIpLHZvaWQgMCE9ZC5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZyYmZC5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZy5hdHRyKCJpZCIpIT1hLmF0dHIoImlkIil8fGIudW5Ub2dnbGVTdGF0ZShrLnZpZGVvdG9nZ2xlZGJ5KX0pLGYocCwiZW5kZWQiLGZ1bmN0aW9uKCl7aSgpLG0oYSxkKSxkLnZpZGVvcGxheWluZz0hMSxtKGEsZCksImF1ZGlvIiE9biYmZC5jLnRyaWdnZXIoInN0YXJ0dGltZXIiKSxkLmMudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbnZpZGVvc3RvcCIsZyhwLCJodG1sNSIsYS5kYXRhKCkpKSxhLmRhdGEoIm5leHRzbGlkZWF0ZW5kIik9PT0hMCYmcC5jdXJyZW50VGltZT4wJiYoMT09IWQuanVzdF9jYWxsZWRfbmV4dHNsaWRlX2F0X2h0bWx0aW1lciYmKGEuZGF0YSgibmV4dHNsaWRlYXRlbmQtdHJpZ2dlcmVkIiwxKSxkLmMucmV2bmV4dCgpLGQuanVzdF9jYWxsZWRfbmV4dHNsaWRlX2F0X2h0bWx0aW1lcj0hMCksc2V0VGltZW91dChmdW5jdGlvbigpe2QuanVzdF9jYWxsZWRfbmV4dHNsaWRlX2F0X2h0bWx0aW1lcj0hMX0sMTUwMCkpLGEucmVtb3ZlQ2xhc3MoInZpZGVvaXNwbGF5aW5nIil9KX0sbD1mdW5jdGlvbihhLGMpe3ZvaWQgMD09Yy5wbGF5aW5ndmlkZW9zJiYoYy5wbGF5aW5ndmlkZW9zPW5ldyBBcnJheSksYS5kYXRhKCJzdG9wYWxsdmlkZW9zIikmJnZvaWQgMCE9Yy5wbGF5aW5ndmlkZW9zJiZjLnBsYXlpbmd2aWRlb3MubGVuZ3RoPjAmJihjLmxhc3RwbGF5ZWR2aWRlb3M9alF1ZXJ5LmV4dGVuZCghMCxbXSxjLnBsYXlpbmd2aWRlb3MpLGpRdWVyeS5lYWNoKGMucGxheWluZ3ZpZGVvcyxmdW5jdGlvbihhLGQpe2Iuc3RvcFZpZGVvKGQsYyl9KSksYy5wbGF5aW5ndmlkZW9zLnB1c2goYSksYy5jdXJyZW50TGF5ZXJWaWRlb0lzUGxheWluZz1hfSxtPWZ1bmN0aW9uKGEsYil7dm9pZCAwIT1iLnBsYXlpbmd2aWRlb3MmJmpRdWVyeS5pbkFycmF5KGEsYi5wbGF5aW5ndmlkZW9zKT49MCYmYi5wbGF5aW5ndmlkZW9zLnNwbGljZShqUXVlcnkuaW5BcnJheShhLGIucGxheWluZ3ZpZGVvcyksMSl9fShqUXVlcnkpOw=="}},"time_used":15713,"timings":{"blocked":14637,"dns":0,"connect":0,"send":0,"wait":1076,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/slider2.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.333Z","timestamp":1785143908333,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/slider2.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/t4c.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.338Z","timestamp":1785143908338,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/t4c.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/lato/v25/S6uyw4BMUTPHjx4wXg.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://scromegatrade.com/","date":"2026-07-27T09:18:46.638Z","timestamp":1785143926638,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/lato/v25/S6uyw4BMUTPHjx4wXg.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://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.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: 23580\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 02:02:02 GMT\r\nexpires: Fri, 23 Jul 2027 02:02:02 GMT\r\ncache-control: public, max-age=31536000\r\nage: 371804\r\nlast-modified: Mon, 15 Sep 2025 17:09:41 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":23580,"size_decoded":24393,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 23580, version 1.0","md5":"e1b3b5908c9cf23dfb2b9c52b9a023ab","sha1":"fcd4136085f2a03481d9958cc6793a5ed98e714c","sha256":"918b7dc3e2e2d015c16ce08b57bcb64d2253bafc1707658f361e72865498e537","sha512":"b2da7ef768385707afed62ca1f178efc6aa14519762e3f270129b3afee4d3782cb991e6fa66b3b08a2f81ff7caba0b4c34c726d952198b2ac4a784b36eb2a828","ssdeep":"384:dRkIAJ8pVwWTW5VVjdVn8+2yvAMdriCEOY0kfW9GkAPqpPHi2vUuUSzB8:dKIAJ8pVHTZ+riY9oCpPHiodUeK","tlshash":"91b2e1ce5d546e3a8028213785c17b488273572e9edf42c6dd83a6263a7092cfd3d96e","first_seen":"2023-04-05T13:28:45Z","last_seen":"2026-08-11T07:59:18.984479Z","times_seen":255664,"resource_available":false,"data":"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"}},"time_used":17,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/s/_/ytembeds/_/js/k=ytembeds.base.en_US._88TwyyHKHs.2021.O/am=AAAAgA/d=1/excm=base,root/br=1/rs=AGKMywEu2TQUzdSF0AcsFBMUrFqyurKluw/m=root,base","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.youtube.com/embed/tZOSQBP946Q","date":"2026-07-27T09:18:46.684Z","timestamp":1785143926684,"http_version":"HTTP/3","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.com","organization":""},"issuer":{"commonName":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:25 GMT","end":"Mon, 21 Sep 2026 08:37:24 GMT"},"fingerprint":{"sha1":"D9:DA:81:30:78:3E:9C:6B:5F:9D:18:52:0E:BE:6D:52:2F:FB:33:E0","sha256":"EA:E2:2D:87:EC:9C:D6:51:9D:59:E4:13:35:3B:97:14:E3:DA:58:2D:1C:69:19:41:54:94:25:C3:94:17:F3:0C"}}},"request":{"raw":"GET /s/_/ytembeds/_/js/k=ytembeds.base.en_US._88TwyyHKHs.2021.O/am=AAAAgA/d=1/excm=base,root/br=1/rs=AGKMywEu2TQUzdSF0AcsFBMUrFqyurKluw/m=root,base HTTP/1.1\r\nHost: www.youtube.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://www.youtube.com/embed/tZOSQBP946Q\r\nCookie: __Secure-YNID=20.YT=HJHEAMDOg21BtS27Beq3zWzqjV-7dYCK59j527uPmgsSWq48pSqj22Ql_kBAc9XJGuGK18LTy4_uYmPEHuwRNVtOl3H_-_fLs1iXS-9r6U33RKrPmu7iH8eEIUAtVV4emXhJ8HqqcyLKfu_YE5QJLQ-DGnQpHV7wSZDaw_AeQXomTEiAS11OZ8rNPU_Exo9GUw1HLaQh9Uu4vU-S5FAaTtoQAm-UcgX0vyggliPYW2bUtx09PpJqxohHHZ6nv77zzKufFcSZR1HKrCPoITOfiCwwol7j6OB-6oFj2yL4VkxFQRI-wnySC3rZpBH_hG9L037fQ1iCbaMOjhRV9XO-SQ; YSC=tV5tUXVf6rM; VISITOR_INFO1_LIVE=aOb2A5cME_o; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgTw%3D%3D; __Secure-ROLLOUT_TOKEN=CKiX56v_3fm7NxCc_fOsw_KVAxic_fOsw_KVAw%3D%3D\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/3 200 \r\naccept-ranges: bytes\r\ncontent-encoding: br\r\ncontent-security-policy: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/youtube-main-app-web-scs-key\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"youtube-main-app-web-scs-key\"\r\nreport-to: {\"group\":\"youtube-main-app-web-scs-key\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/youtube-main-app-web-scs-key\"}]}\r\ntiming-allow-origin: *youtube.com\r\ncontent-length: 150031\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Fri, 24 Jul 2026 12:56:07 GMT\r\nexpires: Sat, 24 Jul 2027 12:56:07 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Fri, 24 Jul 2026 07:10:55 GMT\r\ncontent-type: text/javascript; charset=UTF-8\r\nvary: Accept-Encoding\r\nage: 246159\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":442344,"size_decoded":150945,"mime_type":"text/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (534)","md5":"779ffe8039ad87e2a1aa1c111061fae4","sha1":"7765f6360937f90e51dc4974d13c20887adca712","sha256":"9e5e6d330bae7d5d640cf35fbbd6dbac19e4eec6c5bdea7b99a664523269f90f","sha512":"17cd5c8a938106fbe74d4ea623e67c3669683343c08f866700fd6284152c7397141c9ca02451bf6a32808003c4b4bf3fcce72cbbe6c53a851a1da6d254ea3619","ssdeep":"6144:OZaBJxrsw56sgMoiImct8de1F6Suapko3iM80AvhapoXgvWbq/+:FFpgMoircDkMiM80CapoXgvWbq/+","tlshash":"30944cd97762707392a2f5a5902f0103b17a68a6f40c8c7cf798ddd16eb494942bbf38","first_seen":"2026-07-24T13:29:06.322297Z","last_seen":"2026-07-27T16:56:48.620174Z","times_seen":1326,"resource_available":true,"data":"InVzZSBzdHJpY3QiO3RoaXMuZGVmYXVsdF9iYXNlPXRoaXMuZGVmYXVsdF9iYXNlfHx7fTsoZnVuY3Rpb24oXyl7dmFyIHdpbmRvdz10aGlzOwp0cnl7Cl8uX0ZfdG9nZ2xlc19pbml0aWFsaXplPWZ1bmN0aW9uKGEpeyh0eXBlb2YgZ2xvYmFsVGhpcyE9PSJ1bmRlZmluZWQiP2dsb2JhbFRoaXM6dHlwZW9mIHNlbGYhPT0idW5kZWZpbmVkIj9zZWxmOnRoaXMpLl9GX3RvZ2dsZXNfZGVmYXVsdF9iYXNlPWF8fFtdfTsoMCxfLl9GX3RvZ2dsZXNfaW5pdGlhbGl6ZSkoWzB4MCwgMHgyLCBdKTsKLyoKCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KLyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KLyoKCiBDb3B5cmlnaHQgMjAwNSwgMjAwNyBCb2IgSXBwb2xpdG8uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVAoqLwovKgoKIChUaGUgTUlUIExpY2Vuc2UpCgogQ29weXJpZ2h0IChDKSAyMDE0IGJ5IFZpdGFseSBQdXpyaW4KCiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5CiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbAogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbAogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KCiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOCiBUSEUgU09GVFdBUkUuCgogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIFBvcnRlZCBmcm9tIHpsaWIsIHdoaWNoIGlzIHVuZGVyIHRoZSBmb2xsb3dpbmcgbGljZW5zZQogaHR0cHM6Ly9naXRodWIuY29tL21hZGxlci96bGliL2Jsb2IvbWFzdGVyL3psaWIuaAoKIHpsaWIuaCAtLSBpbnRlcmZhY2Ugb2YgdGhlICd6bGliJyBnZW5lcmFsIHB1cnBvc2UgY29tcHJlc3Npb24gbGlicmFyeQogICB2ZXJzaW9uIDEuMi44LCBBcHJpbCAyOHRoLCAyMDEzCiAgIENvcHlyaWdodCAoQykgMTk5NS0yMDEzIEplYW4tbG91cCBHYWlsbHkgYW5kIE1hcmsgQWRsZXIKICAgVGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCAnYXMtaXMnLCB3aXRob3V0IGFueSBleHByZXNzIG9yIGltcGxpZWQKICAgd2FycmFudHkuICBJbiBubyBldmVudCB3aWxsIHRoZSBhdXRob3JzIGJlIGhlbGQgbGlhYmxlIGZvciBhbnkgZGFtYWdlcwogICBhcmlzaW5nIGZyb20gdGhlIHVzZSBvZiB0aGlzIHNvZnR3YXJlLgogICBQZXJtaXNzaW9uIGlzIGdyYW50ZWQgdG8gYW55b25lIHRvIHVzZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkgcHVycG9zZSwKICAgaW5jbHVkaW5nIGNvbW1lcmNpYWwgYXBwbGljYXRpb25zLCBhbmQgdG8gYWx0ZXIgaXQgYW5kIHJlZGlzdHJpYnV0ZSBpdAogICBmcmVlbHksIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyByZXN0cmljdGlvbnM6CiAgIDEuIFRoZSBvcmlnaW4gb2YgdGhpcyBzb2Z0d2FyZSBtdXN0IG5vdCBiZSBtaXNyZXByZXNlbnRlZDsgeW91IG11c3Qgbm90CiAgICAgIGNsYWltIHRoYXQgeW91IHdyb3RlIHRoZSBvcmlnaW5hbCBzb2Z0d2FyZS4gSWYgeW91IHVzZSB0aGlzIHNvZnR3YXJlCiAgICAgIGluIGEgcHJvZHVjdCwgYW4gYWNrbm93bGVkZ21lbnQgaW4gdGhlIHByb2R1Y3QgZG9jdW1lbnRhdGlvbiB3b3VsZCBiZQogICAgICBhcHByZWNpYXRlZCBidXQgaXMgbm90IHJlcXVpcmVkLgogICAyLiBBbHRlcmVkIHNvdXJjZSB2ZXJzaW9ucyBtdXN0IGJlIHBsYWlubHkgbWFya2VkIGFzIHN1Y2gsIGFuZCBtdXN0IG5vdCBiZQogICAgICBtaXNyZXByZXNlbnRlZCBhcyBiZWluZyB0aGUgb3JpZ2luYWwgc29mdHdhcmUuCiAgIDMuIFRoaXMgbm90aWNlIG1heSBub3QgYmUgcmVtb3ZlZCBvciBhbHRlcmVkIGZyb20gYW55IHNvdXJjZSBkaXN0cmlidXRpb24uCiAgIEplYW4tbG91cCBHYWlsbHkgICAgICAgIE1hcmsgQWRsZXIKICAgamxvdXBAZ3ppcC5vcmcgICAgICAgICAgbWFkbGVyQGFsdW1uaS5jYWx0ZWNoLmVkdQogICBUaGUgZGF0YSBmb3JtYXQgdXNlZCBieSB0aGUgemxpYiBsaWJyYXJ5IGlzIGRlc2NyaWJlZCBieSBSRkNzIChSZXF1ZXN0IGZvcgogICBDb21tZW50cykgMTk1MCB0byAxOTUyIGluIHRoZSBmaWxlcyBodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMxOTUwCiAgICh6bGliIGZvcm1hdCksIHJmYzE5NTEgKGRlZmxhdGUgZm9ybWF0KSBhbmQgcmZjMTk1MiAoZ3ppcCBmb3JtYXQpLgoqLwp2YXIgZWEsZmEsZGEsbmEscWEsdWEsdmEsQmEsSWEsSmEsS2EsUGEsUmEsVmEsJGEsaGIsbWIsd2IsemIsQWIsRWIsQ2IsRmIsR2IsTmIsVGIsZmMsaGMsaWMsamMsa2MsbWMsbmMsb2MsdGMscWMsR2MsSWMsTGMsTmMsVWMsUWMsV2MsY2QsZmQsaGQsamQsa2QsbWQsb2Qsc2QsQWQsQmQsRWQsdWQsR2QsSGQsSmQsSWQsS2QsTGQsTWQsT2QsU2QsWWQsYmUsY2UsZWUsZmUsZ2UsaGUsaWUsamUsa2UscWUsbGUscmUsb2UscGUsdmUsdGUsc2UsdWUsd2UseGUseWUsemUsQ2UsRGUsRWUsRmUsSGUsS2UsTWUsTmUsT2UsUGUsUWUsVmUsWWUsUmUsWmUsYWYsV2UsVGUsaGYsbGYsbWYsbmYsb2YscmYsdGYseGYsemYsQ2YsS2YsTGYsUWYsRmYsU2YsT2YsTWYsTmYsVGYsUmYsV2YsVmYsWGYsWWYsWmYsYmcsZGcsZWcsZmcsY2csa2csbGcsaGcsZ2csaWcsamcscmcsc2csdGcsdmcseGcsemcsQWcsdWcsRWcsd2csRmcsRGcsSGcsSWcsSmcsT2csUmcsTmcsVGcsU2csVWcsWWcsWGcsYmgsJGcsClpnLGFoLFBnLGNoLGZoLGloLGpoLGtoLGxoLGdoLGhoLG5oLHVoLHZoLHdoLHhoLHloLEFoLEJoLENoLERoLEVoLEZoLEloLEpoLEtoLExoLE1oLE5oLE9oLFBoLFFoLFJoLFNoLFRoLFVoLFZoLGNpLGRpLGVpLGZpLGdpLGhpLGppLGtpLGxpLHBpLHFpLHJpLHNpLHZpLHdpLHhpLHlpLHppLEFpLEJpLERpLEVpLE1pLFRpLFlpLGFqLGRqLGNqLFhpLG9qLHhqLHdqLEFqLEJqLENqLEVqLEpqLEZqLEhqLElqLHZqLFFqLFpqLGJrLGNrLGFrLGVrLGhrLGlrLGZrLGtrLG1rLGxrLG9rLHBrLHFrLHNrLHJrLHZrLHlrLHhrLHprLEFrLEVrLEprLEtrLExrLFJrLFNrLFRrLFVrLFhrLFlrLFdrLFprLCRrLGJsLGNsLGRsLGhsLG5sLHFsLHNsLHRsLGdsLHVsLHZsLHBsLHJsLHlsLHpsLEJsLEVsLEhsLExsLE5sLE9sLFFsLFJsLFNsLFRsLFVsLFZsLFdsLFhsLFpsLGJtLGNtLGRtLGVtLGZtLGdtLGhtLGttLGxtLG1tLG9tLHRtLEFtLEJtLERtLENtLEdtLEhtLEVtLEZtLEltLEptLExtLE1tLApPbSxQbSxRbSxSbSxTbSxUbSxVbSxObSxXbSxYbSxZbSxabSxmbixnbixqbixsbixtbixvbixxbixybix2bix4bixBbix3bix6bixFbixLbixKbixNbixRbixSbixTbixUbixWbixabixXbixYbixZbiwkbixjbyxhbyxxbyx2byx3byxEbyxIbyxGbyxHbyxLbyxKbyxJbyxMbyxPbyxRbywkbyxZbyxXbyxTbyxpcCxlcCxmcCx0cCxycCxxcCxSbyx1cCxkcCxocCxzcCxhcCxUbyxWbyxabyxwcCxGcCxKcCxScCxTcCxVcCxZcCxUcCxhcSxjcSxkcSxlcSxmcSxocSxqcSxxcSxrYSxqYSxpYSxjYTtlYT1mdW5jdGlvbihhLGIpe2lmKGIpZm9yKHZhciBjPTA7YzxjYS5sZW5ndGg7YysrKWRhKGNhW2NdKyJBcnJheS5wcm90b3R5cGUuIithLGIpfTtmYT1mdW5jdGlvbihhLGIpe2ImJmRhKGEsYil9OwpkYT1mdW5jdGlvbihhLGIpe3ZhciBjPWlhO2E9YS5zcGxpdCgiLiIpO2Zvcih2YXIgZD0wO2Q8YS5sZW5ndGgtMTtkKyspe3ZhciBlPWFbZF07aWYoIShlIGluIGMpKXJldHVybjtjPWNbZV19YT1hW2EubGVuZ3RoLTFdO2Q9Y1thXTtiPWIoZCk7YiE9ZCYmYiE9bnVsbCYmamEoYyxhLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6Yn0pfTtuYT1mdW5jdGlvbihhLGIpe2EucHJvdG90eXBlPWthKGIucHJvdG90eXBlKTthLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1hO2xhKGEsYik7YS56Yj1iLnByb3RvdHlwZX07cWE9ZnVuY3Rpb24oYSl7YT1NYXRoLnRydW5jKGEpfHwwO2E8MCYmKGErPXRoaXMubGVuZ3RoKTtpZighKGE8MHx8YT49dGhpcy5sZW5ndGgpKXJldHVybiB0aGlzW2FdfTsKXy5yYT1mdW5jdGlvbihhLGIsYyl7YT1hLnNwbGl0KCIuIik7Yz1jfHxfLnU7Zm9yKHZhciBkO2EubGVuZ3RoJiYoZD1hLnNoaWZ0KCkpOylhLmxlbmd0aHx8Yj09PXZvaWQgMD9jW2RdJiZjW2RdIT09T2JqZWN0LnByb3RvdHlwZVtkXT9jPWNbZF06Yz1jW2RdPXt9OmNbZF09Yn07dWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLnNhKCJXSVpfZ2xvYmFsX2RhdGEub3hOM25iIik7YT1jJiZjW2FdO3JldHVybiBhIT1udWxsP2E6Yn07dmE9ZnVuY3Rpb24oKXt9O18uc2E9ZnVuY3Rpb24oYSxiKXthPWEuc3BsaXQoIi4iKTtiPWJ8fF8udTtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKylpZihiPWJbYVtjXV0sYj09bnVsbClyZXR1cm4gbnVsbDtyZXR1cm4gYn07Xy53YT1mdW5jdGlvbihhKXthLlNsPXZvaWQgMDthLmpjPWZ1bmN0aW9uKCl7cmV0dXJuIGEuU2w/YS5TbDphLlNsPW5ldyBhfX07Cl8ueGE9ZnVuY3Rpb24oYSl7dmFyIGI9dHlwZW9mIGE7cmV0dXJuIGIhPSJvYmplY3QiP2I6YT9BcnJheS5pc0FycmF5KGEpPyJhcnJheSI6YjoibnVsbCJ9O18ueWE9ZnVuY3Rpb24oYSl7dmFyIGI9Xy54YShhKTtyZXR1cm4gYj09ImFycmF5Inx8Yj09Im9iamVjdCImJnR5cGVvZiBhLmxlbmd0aD09Im51bWJlciJ9O18uQWE9ZnVuY3Rpb24oYSl7dmFyIGI9dHlwZW9mIGE7cmV0dXJuIGI9PSJvYmplY3QiJiZhIT1udWxsfHxiPT0iZnVuY3Rpb24ifTtCYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGEuY2FsbC5hcHBseShhLmJpbmQsYXJndW1lbnRzKX07Xy5DYT1mdW5jdGlvbihhLGIsYyl7Xy5DYT1CYTtyZXR1cm4gXy5DYS5hcHBseShudWxsLGFyZ3VtZW50cyl9OwpfLkRhPWZ1bmN0aW9uKGEsYil7dmFyIGM9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpO3JldHVybiBmdW5jdGlvbigpe3ZhciBkPWMuc2xpY2UoKTtkLnB1c2guYXBwbHkoZCxhcmd1bWVudHMpO3JldHVybiBhLmFwcGx5KHRoaXMsZCl9fTtfLkVhPWZ1bmN0aW9uKCl7cmV0dXJuIERhdGUubm93KCl9O18uRmE9ZnVuY3Rpb24oYSxiKXtfLnJhKGEsYil9O18uR2E9ZnVuY3Rpb24oYSl7cmV0dXJuIGF9O18uSGE9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7fWMucHJvdG90eXBlPWIucHJvdG90eXBlO2EuemI9Yi5wcm90b3R5cGU7YS5wcm90b3R5cGU9bmV3IGM7YS5wcm90b3R5cGUuY29uc3RydWN0b3I9YTthLmJhc2U9ZnVuY3Rpb24oZCxlLGYpe2Zvcih2YXIgaD1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLGs9MjtrPGFyZ3VtZW50cy5sZW5ndGg7aysrKWhbay0yXT1hcmd1bWVudHNba107cmV0dXJuIGIucHJvdG90eXBlW2VdLmFwcGx5KGQsaCl9fTsKSWE9ZnVuY3Rpb24oYSwuLi5iKXtiPWIuZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiYiKTtpZighYilyZXR1cm4gYTt2YXIgYz1hLm1hdGNoKC9bPyZdYWR1cmw9Lyk7cmV0dXJuIGM/YS5zbGljZSgwLGMuaW5kZXgrMSkrYisiJiIrYS5zbGljZShjLmluZGV4KzEpOmErKGEuaW5kZXhPZigiPyIpPDA/Ij8iOiImIikrYn07SmE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYj8iJiIrYSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGIpOiIifTsKS2E9ZnVuY3Rpb24oYSl7YT1hLkI7aWYoIWEpcmV0dXJuIiI7dmFyIGI9SmEoInVhcCIsYS5wbGF0Zm9ybSkrSmEoInVhcHYiLGEucGxhdGZvcm1WZXJzaW9uKStKYSgidWFmdiIsYS51YUZ1bGxWZXJzaW9uKStKYSgidWFhIixhLmFyY2hpdGVjdHVyZSkrSmEoInVhbSIsYS5tb2RlbCkrSmEoInVhYiIsYS5iaXRuZXNzKTthLmZ1bGxWZXJzaW9uTGlzdCYmKGIrPSImdWFmdmw9IitlbmNvZGVVUklDb21wb25lbnQoYS5mdWxsVmVyc2lvbkxpc3QubWFwKGM9PmVuY29kZVVSSUNvbXBvbmVudChjLmJyYW5kKSsiOyIrZW5jb2RlVVJJQ29tcG9uZW50KGMudmVyc2lvbikpLmpvaW4oInwiKSkpO2Eud293NjQhPW51bGwmJihiKz0iJnVhdz0iK051bWJlcihhLndvdzY0KSk7cmV0dXJuIGIuc2xpY2UoMSl9OwpfLkxhPWZ1bmN0aW9uKGEsYil7aWYoRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UpRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcyxfLkxhKTtlbHNle2xldCBjPUVycm9yKCkuc3RhY2s7YyYmKHRoaXMuc3RhY2s9Yyl9YSYmKHRoaXMubWVzc2FnZT1TdHJpbmcoYSkpO2IhPT12b2lkIDAmJih0aGlzLmNhdXNlPWIpfTtfLk1hPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5sZW5ndGgtYi5sZW5ndGg7cmV0dXJuIGM+PTAmJmEuaW5kZXhPZihiLGMpPT1jfTtQYT1mdW5jdGlvbigpe3ZhciBhPW51bGw7aWYoIU5hKXJldHVybiBhO3RyeXtsZXQgYj1jPT5jO2E9TmEuY3JlYXRlUG9saWN5KCJnb29nI2h0bWwiLHtjcmVhdGVIVE1MOmIsY3JlYXRlU2NyaXB0OmIsY3JlYXRlU2NyaXB0VVJMOmJ9KX1jYXRjaChiKXt9cmV0dXJuIGF9O1JhPWZ1bmN0aW9uKCl7UWE9PT12b2lkIDAmJihRYT1QYSgpKTtyZXR1cm4gUWF9OwpfLlRhPWZ1bmN0aW9uKGEpe3ZhciBiPVJhKCk7YT1iP2IuY3JlYXRlU2NyaXB0VVJMKGEpOmE7cmV0dXJuIG5ldyBfLlNhKGEpfTtfLlVhPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBfLlNhKXJldHVybiBhLmo7dGhyb3cgRXJyb3IoImgiKTt9O1ZhPWZ1bmN0aW9uKGEpe3JldHVybiBhLnRvU3RyaW5nKCkuaW5kZXhPZigiYCIpPT09LTF9O18uWGE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBfLldhfTtfLllhPWZ1bmN0aW9uKGEpe2lmKF8uWGEoYSkpcmV0dXJuIGEuajt0aHJvdyBFcnJvcigiaCIpO307JGE9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBaYShiPT5iLnN1YnN0cigwLGEubGVuZ3RoKzEpLnRvTG93ZXJDYXNlKCk9PT1hKyI6Iil9O18uYmI9ZnVuY3Rpb24oYSxiPV8uYWIpe2lmKF8uWGEoYSkpcmV0dXJuIGE7Zm9yKGxldCBjPTA7YzxiLmxlbmd0aDsrK2Mpe2xldCBkPWJbY107aWYoZCBpbnN0YW5jZW9mIFphJiZkLmZiKGEpKXJldHVybiBuZXcgXy5XYShhKX19OwpfLmRiPWZ1bmN0aW9uKGEpe2EgaW5zdGFuY2VvZiBfLldhP2E9Xy5ZYShhKTphPWNiLnRlc3QoYSk/YTp2b2lkIDA7cmV0dXJuIGF9O18uZWI9ZnVuY3Rpb24oYSxiPWB1bmV4cGVjdGVkIHZhbHVlICR7YX0hYCl7dGhyb3cgRXJyb3IoYik7fTtfLmdiPWZ1bmN0aW9uKGEpe3ZhciBiPVJhKCk7YT1iP2IuY3JlYXRlSFRNTChhKTphO3JldHVybiBuZXcgXy5mYihhKX07Xy5pYj1mdW5jdGlvbihhKXtyZXR1cm4gaGIoInNjcmlwdCIsYSl9O2hiPWZ1bmN0aW9uKGEsYj1kb2N1bWVudCl7YT1iLnF1ZXJ5U2VsZWN0b3I/LihgJHthfVtub25jZV1gKTtyZXR1cm4gYT09bnVsbD8iIjphLm5vbmNlfHxhLmdldEF0dHJpYnV0ZSgibm9uY2UiKXx8IiJ9O18ua2I9ZnVuY3Rpb24oYSl7dmFyIGI9UmEoKTthPWI/Yi5jcmVhdGVTY3JpcHQoYSk6YTtyZXR1cm4gbmV3IF8uamIoYSl9OwpfLmxiPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBfLmpiKXJldHVybiBhLmo7dGhyb3cgRXJyb3IoImgiKTt9O21iPWZ1bmN0aW9uKGEpe3ZhciBiPV8uaWIoYS5vd25lckRvY3VtZW50KTtiJiZhLnNldEF0dHJpYnV0ZSgibm9uY2UiLGIpfTtfLm5iPWZ1bmN0aW9uKGEsYil7YS50ZXh0Q29udGVudD1fLmxiKGIpO21iKGEpfTtfLm9iPWZ1bmN0aW9uKGEsYil7YS5zcmM9Xy5VYShiKTttYihhKX07Xy5xYj1mdW5jdGlvbihhLGIsYyl7aWYoYiBpbnN0YW5jZW9mIF8uU2EpYS5ocmVmPV8uVWEoYikudG9TdHJpbmcoKSxhLnJlbD1jO2Vsc2V7aWYocGIuaW5kZXhPZihjKT09PS0xKXRocm93IEVycm9yKCJqYCIrYyk7Yj1fLmRiKGIpO2IhPT12b2lkIDAmJihhLmhyZWY9YixhLnJlbD1jKX19O18uc2I9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbChhLGIsdm9pZCAwKX07Cl8udGI9ZnVuY3Rpb24oYSxiKXtBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKGEsYix2b2lkIDApfTtfLnViPWZ1bmN0aW9uKGEsYil7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5zb21lLmNhbGwoYSxiLHZvaWQgMCl9O18udmI9ZnVuY3Rpb24oYSxiKXthOntsZXQgYz1hLmxlbmd0aCxkPXR5cGVvZiBhPT09InN0cmluZyI/YS5zcGxpdCgiIik6YTtmb3IobGV0IGU9MDtlPGM7ZSsrKWlmKGUgaW4gZCYmYi5jYWxsKHZvaWQgMCxkW2VdLGUsYSkpe2I9ZTticmVhayBhfWI9LTF9cmV0dXJuIGI8MD9udWxsOnR5cGVvZiBhPT09InN0cmluZyI/YS5jaGFyQXQoYik6YVtiXX07d2I9ZnVuY3Rpb24oYSxiKXtfLnNiKGEsYik+PTB8fGEucHVzaChiKX07Xy54Yj1mdW5jdGlvbihhLGIpe2I9Xy5zYihhLGIpO3ZhciBjOyhjPWI+PTApJiZBcnJheS5wcm90b3R5cGUuc3BsaWNlLmNhbGwoYSxiLDEpO3JldHVybiBjfTsKXy55Yj1mdW5jdGlvbihhKXt2YXIgYj1hLmxlbmd0aDtpZihiPjApe2xldCBjPUFycmF5KGIpO2ZvcihsZXQgZD0wO2Q8YjtkKyspY1tkXT1hW2RdO3JldHVybiBjfXJldHVybltdfTt6Yj1mdW5jdGlvbihhLGIpe2ZvcihsZXQgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe2xldCBkPWFyZ3VtZW50c1tjXTtpZihfLnlhKGQpKXtsZXQgZT1hLmxlbmd0aHx8MCxmPWQubGVuZ3RofHwwO2EubGVuZ3RoPWUrZjtmb3IobGV0IGg9MDtoPGY7aCsrKWFbZStoXT1kW2hdfWVsc2UgYS5wdXNoKGQpfX07QWI9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTAsYz0wLGQ9bmV3IFNldDtjPGEubGVuZ3RoOyl7bGV0IGU9YVtjKytdO2QuaGFzKGUpfHwoZC5hZGQoZSksYVtiKytdPWUpfWEubGVuZ3RoPWJ9OwpfLkJiPWZ1bmN0aW9uKGEsYil7YS5fX2Nsb3N1cmVfX2Vycm9yX19jb250ZXh0X185ODQzODJ8fChhLl9fY2xvc3VyZV9fZXJyb3JfX2NvbnRleHRfXzk4NDM4Mj17fSk7YS5fX2Nsb3N1cmVfX2Vycm9yX19jb250ZXh0X185ODQzODIuc2V2ZXJpdHk9Yn07CkViPWZ1bmN0aW9uKGEpe3ZhciBiPV8uc2EoIndpbmRvdy5sb2NhdGlvbi5ocmVmIik7YT09bnVsbCYmKGE9J1Vua25vd24gRXJyb3Igb2YgdHlwZSAibnVsbC91bmRlZmluZWQiJyk7aWYodHlwZW9mIGE9PT0ic3RyaW5nIilyZXR1cm57bWVzc2FnZTphLG5hbWU6IlVua25vd24gZXJyb3IiLGxpbmVOdW1iZXI6Ik5vdCBhdmFpbGFibGUiLGZpbGVOYW1lOmIsc3RhY2s6Ik5vdCBhdmFpbGFibGUifTt2YXIgYz0hMTt0cnl7dmFyIGQ9YS5saW5lTnVtYmVyfHxhLmxpbmV8fCJOb3QgYXZhaWxhYmxlIn1jYXRjaChmKXtkPSJOb3QgYXZhaWxhYmxlIixjPSEwfXRyeXt2YXIgZT1hLmZpbGVOYW1lfHxhLmZpbGVuYW1lfHxhLnNvdXJjZVVSTHx8Xy51LiRnb29nRGVidWdGbmFtZXx8Yn1jYXRjaChmKXtlPSJOb3QgYXZhaWxhYmxlIixjPSEwfWI9Q2IoYSk7aWYoISghYyYmYS5saW5lTnVtYmVyJiZhLmZpbGVOYW1lJiZhLnN0YWNrJiZhLm1lc3NhZ2UmJmEubmFtZSkpe2M9YS5tZXNzYWdlOwppZihjPT1udWxsKXtpZihhLmNvbnN0cnVjdG9yJiZhLmNvbnN0cnVjdG9yIGluc3RhbmNlb2YgRnVuY3Rpb24pe2lmKGEuY29uc3RydWN0b3IubmFtZSljPWEuY29uc3RydWN0b3IubmFtZTtlbHNlIGlmKGM9YS5jb25zdHJ1Y3RvcixEYltjXSljPURiW2NdO2Vsc2V7Yz1TdHJpbmcoYyk7aWYoIURiW2NdKXtsZXQgZj0vZnVuY3Rpb25ccysoW15cKF0rKS9tLmV4ZWMoYyk7RGJbY109Zj9mWzFdOiJbQW5vbnltb3VzXSJ9Yz1EYltjXX1jPSdVbmtub3duIEVycm9yIG9mIHR5cGUgIicrYysnIid9ZWxzZSBjPSJVbmtub3duIEVycm9yIG9mIHVua25vd24gdHlwZSI7dHlwZW9mIGEudG9TdHJpbmc9PT0iZnVuY3Rpb24iJiZPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nIT09YS50b1N0cmluZyYmKGMrPSI6ICIrYS50b1N0cmluZygpKX1yZXR1cm57bWVzc2FnZTpjLG5hbWU6YS5uYW1lfHwiVW5rbm93bkVycm9yIixsaW5lTnVtYmVyOmQsZmlsZU5hbWU6ZSxzdGFjazpifHwiTm90IGF2YWlsYWJsZSJ9fXJldHVybnttZXNzYWdlOmEubWVzc2FnZSwKbmFtZTphLm5hbWUsbGluZU51bWJlcjphLmxpbmVOdW1iZXIsZmlsZU5hbWU6YS5maWxlTmFtZSxzdGFjazpifX07CkNiPWZ1bmN0aW9uKGEsYil7Ynx8KGI9e30pO2JbRmIoYSldPSEwO3ZhciBjPWEuc3RhY2t8fCIiLGQ9YS5jYXVzZTtkJiYhYltGYihkKV0mJihjKz0iXG5DYXVzZWQgYnk6ICIsZC5zdGFjayYmZC5zdGFjay5pbmRleE9mKGQudG9TdHJpbmcoKSk9PTB8fChjKz10eXBlb2YgZD09PSJzdHJpbmciP2Q6ZC5tZXNzYWdlKyJcbiIpLGMrPUNiKGQsYikpO2E9YS5lcnJvcnM7aWYoQXJyYXkuaXNBcnJheShhKSl7ZD0xO2xldCBlO2ZvcihlPTA7ZTxhLmxlbmd0aCYmIShkPjQpO2UrKyliW0ZiKGFbZV0pXXx8KGMrPSJcbklubmVyIGVycm9yICIrZCsrICsiOiAiLGFbZV0uc3RhY2smJmFbZV0uc3RhY2suaW5kZXhPZihhW2VdLnRvU3RyaW5nKCkpPT0wfHwoYys9dHlwZW9mIGFbZV09PT0ic3RyaW5nIj9hW2VdOmFbZV0ubWVzc2FnZSsiXG4iKSxjKz1DYihhW2VdLGIpKTtlPGEubGVuZ3RoJiYoYys9IlxuLi4uICIrKGEubGVuZ3RoLWUpKyIgbW9yZSBpbm5lciBlcnJvcnMiKX1yZXR1cm4gY307CkZiPWZ1bmN0aW9uKGEpe3ZhciBiPSIiO3R5cGVvZiBhLnRvU3RyaW5nPT09ImZ1bmN0aW9uIiYmKGI9IiIrYSk7cmV0dXJuIGIrYS5zdGFja307R2I9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uVGEoYSl9O18uSGI9ZnVuY3Rpb24oYSl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChhLnJlcGxhY2UoL1wrL2csIiAiKSl9O18uSWI9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsaCl7dmFyIGs9IiI7YSYmKGsrPWErIjoiKTtjJiYoays9Ii8vIixiJiYoays9YisiQCIpLGsrPWMsZCYmKGsrPSI6IitkKSk7ZSYmKGsrPWUpO2YmJihrKz0iPyIrZik7aCYmKGsrPSIjIitoKTtyZXR1cm4ga307Xy5NYj1mdW5jdGlvbihhKXtyZXR1cm4gYS5tYXRjaChLYil9O05iPWZ1bmN0aW9uKGEpe3JldHVybiBhP2RlY29kZVVSSShhKTphfTsKXy5PYj1mdW5jdGlvbihhKXthPV8uTWIoYSlbMV18fG51bGw7IWEmJl8udS5zZWxmJiZfLnUuc2VsZi5sb2NhdGlvbiYmKGE9Xy51LnNlbGYubG9jYXRpb24ucHJvdG9jb2wuc2xpY2UoMCwtMSkpO3JldHVybiBhP2EudG9Mb3dlckNhc2UoKToiIn07Xy5QYj1mdW5jdGlvbihhKXtyZXR1cm4gTmIoXy5NYihhKVszXXx8bnVsbCl9O18uUWI9ZnVuY3Rpb24oYSl7cmV0dXJuIE5iKF8uTWIoYSlbNV18fG51bGwpfTtfLlJiPWZ1bmN0aW9uKGEsYil7aWYoYSl7YT1hLnNwbGl0KCImIik7Zm9yKGxldCBjPTA7YzxhLmxlbmd0aDtjKyspe2xldCBkPWFbY10uaW5kZXhPZigiPSIpLGUsZj1udWxsO2Q+PTA/KGU9YVtjXS5zdWJzdHJpbmcoMCxkKSxmPWFbY10uc3Vic3RyaW5nKGQrMSkpOmU9YVtjXTtiKGUsZj9fLkhiKGYpOiIiKX19fTsKXy5TYj1mdW5jdGlvbihhLGIpe2lmKCFiKXJldHVybiBhO3ZhciBjPWEuaW5kZXhPZigiIyIpO2M8MCYmKGM9YS5sZW5ndGgpO3ZhciBkPWEuaW5kZXhPZigiPyIpO2lmKGQ8MHx8ZD5jKXtkPWM7dmFyIGU9IiJ9ZWxzZSBlPWEuc3Vic3RyaW5nKGQrMSxjKTthPVthLnNsaWNlKDAsZCksZSxhLnNsaWNlKGMpXTtjPWFbMV07YVsxXT1iP2M/YysiJiIrYjpiOmM7cmV0dXJuIGFbMF0rKGFbMV0/Ij8iK2FbMV06IiIpK2FbMl19O1RiPWZ1bmN0aW9uKGEsYixjKXtpZihBcnJheS5pc0FycmF5KGIpKWZvcihsZXQgZD0wO2Q8Yi5sZW5ndGg7ZCsrKVRiKGEsU3RyaW5nKGJbZF0pLGMpO2Vsc2UgYiE9bnVsbCYmYy5wdXNoKGErKGI9PT0iIj8iIjoiPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhiKSkpKX07Xy5VYj1mdW5jdGlvbihhKXt2YXIgYj1bXTtmb3IobGV0IGMgaW4gYSlUYihjLGFbY10sYik7cmV0dXJuIGIuam9pbigiJiIpfTsKXy5XYj1mdW5jdGlvbihhLGIpe2I9Xy5VYihiKTtyZXR1cm4gXy5TYihhLGIpfTtfLlhiPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT1jLmxlbmd0aDsoYj1hLmluZGV4T2YoYyxiKSk+PTAmJmI8ZDspe3ZhciBmPWEuY2hhckNvZGVBdChiLTEpO2lmKGY9PTM4fHxmPT02MylpZihmPWEuY2hhckNvZGVBdChiK2UpLCFmfHxmPT02MXx8Zj09Mzh8fGY9PTM1KXJldHVybiBiO2IrPWUrMX1yZXR1cm4tMX07Xy5aYj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuc2VhcmNoKF8uWWIpLGQ9Xy5YYihhLDAsYixjKTtpZihkPDApcmV0dXJuIG51bGw7dmFyIGU9YS5pbmRleE9mKCImIixkKTtpZihlPDB8fGU+YyllPWM7ZCs9Yi5sZW5ndGgrMTtyZXR1cm4gXy5IYihhLnNsaWNlKGQsZSE9PS0xP2U6MCkpfTtfLiRiPWZ1bmN0aW9uKGEpe18udS5zZXRUaW1lb3V0KCgpPT57dGhyb3cgYTt9LDApfTsKXy5hYz1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPTA7Zm9yKGxldCBkPTA7ZDxhLmxlbmd0aDtkKyspe2xldCBlPWEuY2hhckNvZGVBdChkKTtlPDEyOD9iW2MrK109ZTooZTwyMDQ4P2JbYysrXT1lPj42fDE5MjooKGUmNjQ1MTIpPT01NTI5NiYmZCsxPGEubGVuZ3RoJiYoYS5jaGFyQ29kZUF0KGQrMSkmNjQ1MTIpPT01NjMyMD8oZT02NTUzNisoKGUmMTAyMyk8PDEwKSsoYS5jaGFyQ29kZUF0KCsrZCkmMTAyMyksYltjKytdPWU+PjE4fDI0MCxiW2MrK109ZT4+MTImNjN8MTI4KTpiW2MrK109ZT4+MTJ8MjI0LGJbYysrXT1lPj42JjYzfDEyOCksYltjKytdPWUmNjN8MTI4KX1yZXR1cm4gYn07Xy5iYz1mdW5jdGlvbigpe3ZhciBhPV8udS5uYXZpZ2F0b3I7cmV0dXJuIGEmJihhPWEudXNlckFnZW50KT9hOiIifTsKZmM9ZnVuY3Rpb24oYSl7aWYoIWRjfHwhZWMpcmV0dXJuITE7Zm9yKGxldCBiPTA7YjxlYy5icmFuZHMubGVuZ3RoO2IrKyl7bGV0IHticmFuZDpjfT1lYy5icmFuZHNbYl07aWYoYyYmYy5pbmRleE9mKGEpIT0tMSlyZXR1cm4hMH1yZXR1cm4hMX07aGM9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uYmMoKS5pbmRleE9mKGEpIT0tMX07aWM9ZnVuY3Rpb24oKXtyZXR1cm4gZGM/ISFlYyYmZWMuYnJhbmRzLmxlbmd0aD4wOiExfTtqYz1mdW5jdGlvbigpe3JldHVybiBpYygpPyExOmhjKCJPcGVyYSIpfTtrYz1mdW5jdGlvbigpe3JldHVybiBoYygiRmlyZWZveCIpfHxoYygiRnhpT1MiKX07bWM9ZnVuY3Rpb24oKXtyZXR1cm4gaWMoKT9mYygiQ2hyb21pdW0iKTooaGMoIkNocm9tZSIpfHxoYygiQ3JpT1MiKSkmJiEoaWMoKT8wOmhjKCJFZGdlIikpfHxoYygiU2lsayIpfTtuYz1mdW5jdGlvbigpe3JldHVybiBkYz8hIWVjJiYhIWVjLnBsYXRmb3JtOiExfTsKb2M9ZnVuY3Rpb24oKXtyZXR1cm4gaGMoImlQaG9uZSIpJiYhaGMoImlQb2QiKSYmIWhjKCJpUGFkIil9O18ucGM9ZnVuY3Rpb24oYSl7Xy5wY1siICJdKGEpO3JldHVybiBhfTtfLnNjPWZ1bmN0aW9uKGEsYil7Yj09PXZvaWQgMCYmKGI9MCk7cWMoKTtiPXJjW2JdO2Zvcih2YXIgYz1BcnJheShNYXRoLmZsb29yKGEubGVuZ3RoLzMpKSxkPWJbNjRdfHwiIixlPTAsZj0wO2U8YS5sZW5ndGgtMjtlKz0zKXt2YXIgaD1hW2VdLGs9YVtlKzFdLGw9YVtlKzJdLG09YltoPj4yXTtoPWJbKGgmMyk8PDR8az4+NF07az1iWyhrJjE1KTw8MnxsPj42XTtsPWJbbCY2M107Y1tmKytdPW0raCtrK2x9bT0wO2w9ZDtzd2l0Y2goYS5sZW5ndGgtZSl7Y2FzZSAyOm09YVtlKzFdLGw9YlsobSYxNSk8PDJdfHxkO2Nhc2UgMTphPWFbZV0sY1tmXT1iW2E+PjJdK2JbKGEmMyk8PDR8bT4+NF0rbCtkfXJldHVybiBjLmpvaW4oIiIpfTsKXy51Yz1mdW5jdGlvbihhKXt2YXIgYj1hLmxlbmd0aCxjPWIqMy80O2MlMz9jPU1hdGguZmxvb3IoYyk6Ij0uIi5pbmRleE9mKGFbYi0xXSkhPS0xJiYoYz0iPS4iLmluZGV4T2YoYVtiLTJdKSE9LTE/Yy0yOmMtMSk7dmFyIGQ9bmV3IFVpbnQ4QXJyYXkoYyksZT0wO3RjKGEsZnVuY3Rpb24oZil7ZFtlKytdPWZ9KTtyZXR1cm4gZSE9PWM/ZC5zdWJhcnJheSgwLGUpOmR9O3RjPWZ1bmN0aW9uKGEsYil7ZnVuY3Rpb24gYyhlKXtmb3IoO2Q8YS5sZW5ndGg7KXtsZXQgZj1hLmNoYXJBdChkKyspLGg9dmNbZl07aWYoaCE9bnVsbClyZXR1cm4gaDtpZighL15bXHNceGEwXSokLy50ZXN0KGYpKXRocm93IEVycm9yKCJtYCIrZik7fXJldHVybiBlfXFjKCk7Zm9yKHZhciBkPTA7Oyl7bGV0IGU9YygtMSksZj1jKDApLGg9Yyg2NCksaz1jKDY0KTtpZihrPT09NjQmJmU9PT0tMSlicmVhaztiKGU8PDJ8Zj4+NCk7aCE9NjQmJihiKGY8PDQmMjQwfGg+PjIpLGshPTY0JiZiKGg8PDYmMTkyfGspKX19OwpxYz1mdW5jdGlvbigpe2lmKCF2Yyl7dmM9e307dmFyIGE9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ii5zcGxpdCgiIiksYj1bIisvPSIsIisvIiwiLV89IiwiLV8uIiwiLV8iXTtmb3IobGV0IGM9MDtjPDU7YysrKXtsZXQgZD1hLmNvbmNhdChiW2NdLnNwbGl0KCIiKSk7cmNbY109ZDtmb3IobGV0IGU9MDtlPGQubGVuZ3RoO2UrKyl7bGV0IGY9ZFtlXTt2Y1tmXT09PXZvaWQgMCYmKHZjW2ZdPWUpfX19fTtfLnhjPWZ1bmN0aW9uKGEsYil7aWYoYSE9bnVsbCl7dmFyIGM9d2M/Pyh3Yz17fSk7dmFyIGQ9Y1thXXx8MDtkPj1ifHwoY1thXT1kKzEsYT1FcnJvcigpLF8uQmIoYSwiaW5jaWRlbnQiKSxfLiRiKGEpKX19O18ueWM9ZnVuY3Rpb24oYSxiPSExKXtyZXR1cm4gYiYmU3ltYm9sLmZvciYmYT9TeW1ib2wuZm9yKGEpOmEhPW51bGw/U3ltYm9sKGEpOlN5bWJvbCgpfTsKXy5CYz1mdW5jdGlvbihhLGIpe3JldHVybiBiPT09dm9pZCAwP2EuaiE9PV8uemMmJiEhKDImKGEuRGFbXy5BY118MCkpOiEhKDImYikmJmEuaiE9PV8uemN9O18uQ2M9ZnVuY3Rpb24oYSl7YS51Sj0hMDtyZXR1cm4gYX07Xy5GYz1mdW5jdGlvbihhKXtpZihEYyhhKSl7aWYoIS9eXHMqKD86LT9bMS05XVxkKnwwKT9ccyokLy50ZXN0KGEpKXRocm93IEVycm9yKFN0cmluZyhhKSk7fWVsc2UgaWYoRWMoYSkmJiFOdW1iZXIuaXNTYWZlSW50ZWdlcihhKSl0aHJvdyBFcnJvcihTdHJpbmcoYSkpO3JldHVybiBCaWdJbnQoYSl9O0djPWZ1bmN0aW9uKGEpe3JldHVybiBhfTtJYz1mdW5jdGlvbihhLGIpe2I8MTAwfHxfLnhjKEhjLDEpfTsKTGM9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ZCE9PXZvaWQgMDtkPSEhZDt2YXIgZj1fLkdhKF8uSmMpLGg7IWUmJmYmJihoPWFbZl0pJiZoLmN3KEljKTtmPVtdO3ZhciBrPWEubGVuZ3RoO2g9NDI5NDk2NzI5NTt2YXIgbD0hMSxtPSEhKGImNjQpLG49bT9iJjEyOD8wOi0xOnZvaWQgMDtpZighKGImMSkpe3ZhciBwPWsmJmFbay0xXTtwIT1udWxsJiZ0eXBlb2YgcD09PSJvYmplY3QiJiZwLmNvbnN0cnVjdG9yPT09T2JqZWN0PyhrLS0saD1rKTpwPXZvaWQgMDshbXx8YiYxMjh8fGV8fChsPSEwLGg9KEtjPz9HYykoaC1uLG4sYSxwLHZvaWQgMCkrbil9Yj12b2lkIDA7Zm9yKGU9MDtlPGs7ZSsrKXtsZXQgcj1hW2VdO2lmKHIhPW51bGwmJihyPWMocixkKSkhPW51bGwpaWYobSYmZT49aCl7bGV0IHQ9ZS1uOyhiPz8oYj17fSkpW3RdPXJ9ZWxzZSBmW2VdPXJ9aWYocClmb3IobGV0IHIgaW4gcCl7YT1wW3JdO2lmKGE9PW51bGx8fChhPWMoYSxkKSk9PW51bGwpY29udGludWU7az0rcjsKbGV0IHQ7bSYmIU51bWJlci5pc05hTihrKSYmKHQ9aytuKTxoP2ZbdF09YTooYj8/KGI9e30pKVtyXT1hfWImJihsP2YucHVzaChiKTpmW2hdPWIpO3JldHVybiBmfTtOYz1mdW5jdGlvbihhKXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgIm51bWJlciI6cmV0dXJuIE51bWJlci5pc0Zpbml0ZShhKT9hOiIiK2E7Y2FzZSAiYmlnaW50IjpyZXR1cm4oMCxfLk1jKShhKT9OdW1iZXIoYSk6IiIrYTtjYXNlICJib29sZWFuIjpyZXR1cm4gYT8xOjA7Y2FzZSAib2JqZWN0IjppZihBcnJheS5pc0FycmF5KGEpKXtsZXQgYj1hW18uQWNdfDA7cmV0dXJuIGEubGVuZ3RoPT09MCYmYiYxP3ZvaWQgMDpMYyhhLGIsTmMpfWlmKGEhPW51bGwmJmFbXy5PY109PT1fLlBjKXJldHVybiBRYyhhKTtpZigiZnVuY3Rpb24iPT10eXBlb2YgXy5SYyYmYSBpbnN0YW5jZW9mIF8uUmMpcmV0dXJuIGEubygpO3JldHVybn1yZXR1cm4gYX07ClVjPWZ1bmN0aW9uKGEsYil7aWYoYil7S2M9Yj09bnVsbHx8Yj09PUdjfHxiW1NjXSE9PVRjP0djOmI7dHJ5e3JldHVybiBRYyhhKX1maW5hbGx5e0tjPXZvaWQgMH19cmV0dXJuIFFjKGEpfTtRYz1mdW5jdGlvbihhKXthPWEuRGE7cmV0dXJuIExjKGEsYVtfLkFjXXwwLE5jKX07Cl8uWGM9ZnVuY3Rpb24oYSxiLGMsZD0wKXtpZihhPT1udWxsKXt2YXIgZT0zMjtjPyhhPVtjXSxlfD0xMjgpOmE9W107YiYmKGU9ZSYtMTY3NjA4MzN8KGImMTAyMyk8PDE0KX1lbHNle2lmKCFBcnJheS5pc0FycmF5KGEpKXRocm93IEVycm9yKCJzIik7ZT1hW18uQWNdfDA7aWYoVmMmJjEmZSl0aHJvdyBFcnJvcigidCIpOzIwNDgmZSYmISgyJmUpJiZXYygpO2lmKGUmMjU2KXRocm93IEVycm9yKCJ1Iik7aWYoZSY2NClyZXR1cm4oZXxkKSE9PWUmJihhW18uQWNdPWV8ZCksYTtpZihjJiYoZXw9MTI4LGMhPT1hWzBdKSl0aHJvdyBFcnJvcigidiIpO2E6e2M9YTtlfD02NDt2YXIgZj1jLmxlbmd0aDtpZihmKXt2YXIgaD1mLTE7bGV0IGw9Y1toXTtpZihsIT1udWxsJiZ0eXBlb2YgbD09PSJvYmplY3QiJiZsLmNvbnN0cnVjdG9yPT09T2JqZWN0KXtiPWUmMTI4PzA6LTE7aC09YjtpZihoPj0xMDI0KXRocm93IEVycm9yKCJ4Iik7Zm9yKHZhciBrIGluIGwpaWYoZj0rayxmPGgpY1tmKwpiXT1sW2tdLGRlbGV0ZSBsW2tdO2Vsc2UgYnJlYWs7ZT1lJi0xNjc2MDgzM3woaCYxMDIzKTw8MTQ7YnJlYWsgYX19aWYoYil7az1NYXRoLm1heChiLGYtKGUmMTI4PzA6LTEpKTtpZihrPjEwMjQpdGhyb3cgRXJyb3IoInkiKTtlPWUmLTE2NzYwODMzfChrJjEwMjMpPDwxNH19fWFbXy5BY109ZXw2NHxkO3JldHVybiBhfTtXYz1mdW5jdGlvbigpe2lmKFZjKXRocm93IEVycm9yKCJ3Iik7Xy54YyhZYyw1KX07CmNkPWZ1bmN0aW9uKGEsYil7aWYodHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4gYTtpZihBcnJheS5pc0FycmF5KGEpKXt2YXIgYz1hW18uQWNdfDA7YS5sZW5ndGg9PT0wJiZjJjE/YT12b2lkIDA6YyYyfHwoIWJ8fDQwOTYmY3x8MTYmYz9hPV8uWmMoYSxjLCExLGImJiEoYyYxNikpOihhW18uQWNdfD0zNCxjJjQmJk9iamVjdC5mcmVlemUoYSkpKTtyZXR1cm4gYX1pZihhIT1udWxsJiZhW18uT2NdPT09Xy5QYylyZXR1cm4gYj1hLkRhLGM9YltfLkFjXXwwLF8uQmMoYSxjKT9hOl8uJGMoYSxiLGMpP18uYmQoYSxiKTpfLlpjKGIsYyk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIF8uUmMmJmEgaW5zdGFuY2VvZiBfLlJjKXJldHVybiBhfTtfLmJkPWZ1bmN0aW9uKGEsYixjKXthPW5ldyBhLmNvbnN0cnVjdG9yKGIpO2MmJihhLmo9Xy56Yyk7YS5vPV8uemM7cmV0dXJuIGF9OwpfLlpjPWZ1bmN0aW9uKGEsYixjLGQpe2Q/PyhkPSEhKDM0JmIpKTthPUxjKGEsYixjZCxkKTtkPTMyO2MmJihkfD0yKTtiPWImMTY3NjkyMTd8ZDthW18uQWNdPWI7cmV0dXJuIGF9O18uJGM9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBjJjI/ITA6YyYzMiYmIShjJjQwOTYpPyhiW18uQWNdPWN8MixhLmo9Xy56YywhMCk6ITF9O18uZWQ9ZnVuY3Rpb24oYSxiLGMsZCxlKXtiPV8uZGQoYS5EYSxiLGMsZSk7aWYoYiE9PW51bGx8fGQmJmEubyE9PV8uemMpcmV0dXJuIGJ9OwpfLmRkPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGI9PT0tMSlyZXR1cm4gbnVsbDt2YXIgZT1iKyhjPzA6LTEpLGY9YS5sZW5ndGgtMTtpZighKGY8MSsoYz8wOi0xKSkpe2lmKGU+PWYpe3ZhciBoPWFbZl07aWYoaCE9bnVsbCYmdHlwZW9mIGg9PT0ib2JqZWN0IiYmaC5jb25zdHJ1Y3Rvcj09PU9iamVjdCl7Yz1oW2JdO3ZhciBrPSEwfWVsc2UgaWYoZT09PWYpYz1oO2Vsc2UgcmV0dXJufWVsc2UgYz1hW2VdO2lmKGQmJmMhPW51bGwpe2Q9ZChjKTtpZihkPT1udWxsKXJldHVybiBkO2lmKCFPYmplY3QuaXMoZCxjKSlyZXR1cm4gaz9oW2JdPWQ6YVtlXT1kLGR9cmV0dXJuIGN9fTtmZD1mdW5jdGlvbigpe3ZhciBhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhyb3cgRXJyb3IoKTt9fTtPYmplY3Quc2V0UHJvdG90eXBlT2YoYSxhLnByb3RvdHlwZSk7cmV0dXJuIGF9O18uZ2Q9ZnVuY3Rpb24oKXt9OwpoZD1mdW5jdGlvbihhKXt2YXIgYj0hMSxjO3JldHVybiBmdW5jdGlvbigpe2J8fChjPWEoKSxiPSEwKTtyZXR1cm4gY319O2pkPWZ1bmN0aW9uKGEpe3ZhciBiPWlkO2lmKGIpZm9yKGxldCBjIGluIGIpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsYykmJmEoYltjXSxjLGIpfTtrZD1mdW5jdGlvbigpe3ZhciBhPVtdO2pkKGI9PnthLnB1c2goYil9KTtyZXR1cm4gYX07bWQ9ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKSxiPXt9O18udGIobGQoKSxjPT57YS5zYW5kYm94JiZhLnNhbmRib3guc3VwcG9ydHMmJmEuc2FuZGJveC5zdXBwb3J0cyhjKSYmKGJbY109ITApfSk7cmV0dXJuIGJ9O18ubmQ9ZnVuY3Rpb24oYSxiKXt0aGlzLndpZHRoPWE7dGhpcy5oZWlnaHQ9Yn07b2Q9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGMgaW4gYSliLmNhbGwodm9pZCAwLGFbY10sYyxhKX07Cl8ucGQ9ZnVuY3Rpb24oYSl7Zm9yKGxldCBiIGluIGEpcmV0dXJuITE7cmV0dXJuITB9OwpfLnFkPWZ1bmN0aW9uKGEpe2lmKCFhfHx0eXBlb2YgYSE9PSJvYmplY3QiKXJldHVybiBhO2lmKHR5cGVvZiBhLmNsb25lPT09ImZ1bmN0aW9uIilyZXR1cm4gYS5jbG9uZSgpO2lmKHR5cGVvZiBNYXAhPT0idW5kZWZpbmVkIiYmYSBpbnN0YW5jZW9mIE1hcClyZXR1cm4gbmV3IE1hcChhKTtpZih0eXBlb2YgU2V0IT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBTZXQpcmV0dXJuIG5ldyBTZXQoYSk7aWYoYSBpbnN0YW5jZW9mIERhdGUpcmV0dXJuIG5ldyBEYXRlKGEuZ2V0VGltZSgpKTt2YXIgYj1BcnJheS5pc0FycmF5KGEpP1tdOnR5cGVvZiBBcnJheUJ1ZmZlciE9PSJmdW5jdGlvbiJ8fHR5cGVvZiBBcnJheUJ1ZmZlci5pc1ZpZXchPT0iZnVuY3Rpb24ifHwhQXJyYXlCdWZmZXIuaXNWaWV3KGEpfHxhIGluc3RhbmNlb2YgRGF0YVZpZXc/e306bmV3IGEuY29uc3RydWN0b3IoYS5sZW5ndGgpO2ZvcihsZXQgYyBpbiBhKWJbY109Xy5xZChhW2NdKTtyZXR1cm4gYn07CnNkPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIGM9YXJndW1lbnRzW2VdO2ZvcihkIGluIGMpYVtkXT1jW2RdO2ZvcihsZXQgZj0wO2Y8cmQubGVuZ3RoO2YrKyl7dmFyIGQ9cmRbZl07T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGMsZCkmJihhW2RdPWNbZF0pfX19O18ueGQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGE/bmV3IHVkKF8udmQoYSkpOndkfHwod2Q9bmV3IHVkKX07Xy55ZD1mdW5jdGlvbihhKXthPWEuZG9jdW1lbnQ7YT1hLmNvbXBhdE1vZGU9PSJDU1MxQ29tcGF0Ij9hLmRvY3VtZW50RWxlbWVudDphLmJvZHk7cmV0dXJuIG5ldyBfLm5kKGEuY2xpZW50V2lkdGgsYS5jbGllbnRIZWlnaHQpfTtfLnpkPWZ1bmN0aW9uKGEpe3JldHVybiBhP2EuZGVmYXVsdFZpZXc6d2luZG93fTsKQWQ9ZnVuY3Rpb24oYSxiLGMpe2Z1bmN0aW9uIGQoZSl7ZSYmYi5hcHBlbmRDaGlsZCh0eXBlb2YgZT09PSJzdHJpbmciP2EuY3JlYXRlVGV4dE5vZGUoZSk6ZSl9Zm9yKGxldCBlPTE7ZTxjLmxlbmd0aDtlKyspe2xldCBmPWNbZV07IV8ueWEoZil8fF8uQWEoZikmJmYubm9kZVR5cGU+MD9kKGYpOl8udGIoZiYmdHlwZW9mIGYubGVuZ3RoPT0ibnVtYmVyIiYmdHlwZW9mIGYuaXRlbT09ImZ1bmN0aW9uIj9fLnliKGYpOmYsZCl9fTtfLkNkPWZ1bmN0aW9uKGEpe3JldHVybiBCZChkb2N1bWVudCxhKX07QmQ9ZnVuY3Rpb24oYSxiKXtiPVN0cmluZyhiKTthLmNvbnRlbnRUeXBlPT09ImFwcGxpY2F0aW9uL3hodG1sK3htbCImJihiPWIudG9Mb3dlckNhc2UoKSk7cmV0dXJuIGEuY3JlYXRlRWxlbWVudChiKX07Xy5EZD1mdW5jdGlvbihhKXtyZXR1cm4gYSYmYS5wYXJlbnROb2RlP2EucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChhKTpudWxsfTsKXy52ZD1mdW5jdGlvbihhKXtyZXR1cm4gYS5ub2RlVHlwZT09OT9hOmEub3duZXJEb2N1bWVudHx8YS5kb2N1bWVudH07Xy5GZD1mdW5jdGlvbihhKXtyZXR1cm4gYS50YWdOYW1lPT0iQSImJmEuaGFzQXR0cmlidXRlKCJocmVmIil8fGEudGFnTmFtZT09IklOUFVUInx8YS50YWdOYW1lPT0iVEVYVEFSRUEifHxhLnRhZ05hbWU9PSJTRUxFQ1QifHxhLnRhZ05hbWU9PSJCVVRUT04iPyFhLmRpc2FibGVkJiYoIWEuaGFzQXR0cmlidXRlKCJ0YWJpbmRleCIpfHxFZChhKSk6YS5oYXNBdHRyaWJ1dGUoInRhYmluZGV4IikmJkVkKGEpfTtFZD1mdW5jdGlvbihhKXthPWEudGFiSW5kZXg7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciImJmE+PTAmJmE8MzI3Njh9O3VkPWZ1bmN0aW9uKGEpe3RoaXMuaj1hfHxfLnUuZG9jdW1lbnR8fGRvY3VtZW50fTsKR2Q9ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuIiI7aWYoL15hYm91dDooPzpibGFua3xzcmNkb2MpJC8udGVzdChhKSlyZXR1cm4gd2luZG93Lm9yaWdpbnx8IiI7YS5pbmRleE9mKCJibG9iOiIpPT09MCYmKGE9YS5zdWJzdHJpbmcoNSkpO2E9YS5zcGxpdCgiIyIpWzBdLnNwbGl0KCI/IilbMF07YT1hLnRvTG93ZXJDYXNlKCk7YS5pbmRleE9mKCIvLyIpPT0wJiYoYT13aW5kb3cubG9jYXRpb24ucHJvdG9jb2wrYSk7L15bXHdcLV0qOlwvXC8vLnRlc3QoYSl8fChhPXdpbmRvdy5sb2NhdGlvbi5ocmVmKTt2YXIgYj1hLnN1YnN0cmluZyhhLmluZGV4T2YoIjovLyIpKzMpLGM9Yi5pbmRleE9mKCIvIik7YyE9LTEmJihiPWIuc3Vic3RyaW5nKDAsYykpO2M9YS5zdWJzdHJpbmcoMCxhLmluZGV4T2YoIjovLyIpKTtpZighYyl0aHJvdyBFcnJvcigiQmAiK2EpO2lmKGMhPT0iaHR0cCImJmMhPT0iaHR0cHMiJiZjIT09ImNocm9tZS1leHRlbnNpb24iJiZjIT09Im1vei1leHRlbnNpb24iJiYKYyE9PSJmaWxlIiYmYyE9PSJhbmRyb2lkLWFwcCImJmMhPT0iY2hyb21lLXNlYXJjaCImJmMhPT0iY2hyb21lLXVudHJ1c3RlZCImJmMhPT0iY2hyb21lIiYmYyE9PSJhcHAiJiZjIT09ImRldnRvb2xzIil0aHJvdyBFcnJvcigiQ2AiK2MpO2E9IiI7dmFyIGQ9Yi5pbmRleE9mKCI6Iik7aWYoZCE9LTEpe3ZhciBlPWIuc3Vic3RyaW5nKGQrMSk7Yj1iLnN1YnN0cmluZygwLGQpO2lmKGM9PT0iaHR0cCImJmUhPT0iODAifHxjPT09Imh0dHBzIiYmZSE9PSI0NDMiKWE9IjoiK2V9cmV0dXJuIGMrIjovLyIrYithfTsKSGQ9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7ZVswXT0xNzMyNTg0MTkzO2VbMV09NDAyMzIzMzQxNztlWzJdPTI1NjIzODMxMDI7ZVszXT0yNzE3MzM4Nzg7ZVs0XT0zMjg1Mzc3NTIwO249bT0wfWZ1bmN0aW9uIGIocCl7Zm9yKHZhciByPWgsdD0wO3Q8NjQ7dCs9NClyW3QvNF09cFt0XTw8MjR8cFt0KzFdPDwxNnxwW3QrMl08PDh8cFt0KzNdO2Zvcih0PTE2O3Q8ODA7dCsrKXA9clt0LTNdXnJbdC04XV5yW3QtMTRdXnJbdC0xNl0sclt0XT0ocDw8MXxwPj4+MzEpJjQyOTQ5NjcyOTU7cD1lWzBdO3ZhciB2PWVbMV0sej1lWzJdLEU9ZVszXSxBPWVbNF07Zm9yKHQ9MDt0PDgwO3QrKyl7aWYodDw0MClpZih0PDIwKXt2YXIgRj1FXnYmKHpeRSk7dmFyIEM9MTUxODUwMDI0OX1lbHNlIEY9dl56XkUsQz0xODU5Nzc1MzkzO2Vsc2UgdDw2MD8oRj12Jnp8RSYodnx6KSxDPTI0MDA5NTk3MDgpOihGPXZeel5FLEM9MzM5NTQ2OTc4Mik7Rj0oKHA8PDV8cD4+PjI3KSY0Mjk0OTY3Mjk1KStGKwpBK0Mrclt0XSY0Mjk0OTY3Mjk1O0E9RTtFPXo7ej0odjw8MzB8dj4+PjIpJjQyOTQ5NjcyOTU7dj1wO3A9Rn1lWzBdPWVbMF0rcCY0Mjk0OTY3Mjk1O2VbMV09ZVsxXSt2JjQyOTQ5NjcyOTU7ZVsyXT1lWzJdK3omNDI5NDk2NzI5NTtlWzNdPWVbM10rRSY0Mjk0OTY3Mjk1O2VbNF09ZVs0XStBJjQyOTQ5NjcyOTV9ZnVuY3Rpb24gYyhwLHIpe2lmKHR5cGVvZiBwPT09InN0cmluZyIpe3A9dW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHApKTtmb3IodmFyIHQ9W10sdj0wLHo9cC5sZW5ndGg7djx6Oysrdil0LnB1c2gocC5jaGFyQ29kZUF0KHYpKTtwPXR9cnx8KHI9cC5sZW5ndGgpO3Q9MDtpZihtPT0wKWZvcig7dCs2NDxyOyliKHAuc2xpY2UodCx0KzY0KSksdCs9NjQsbis9NjQ7Zm9yKDt0PHI7KWlmKGZbbSsrXT1wW3QrK10sbisrLG09PTY0KWZvcihtPTAsYihmKTt0KzY0PHI7KWIocC5zbGljZSh0LHQrNjQpKSx0Kz02NCxuKz02NH1mdW5jdGlvbiBkKCl7dmFyIHA9W10scj0Kbio4O208NTY/YyhrLDU2LW0pOmMoayw2NC0obS01NikpO2Zvcih2YXIgdD02Mzt0Pj01Njt0LS0pZlt0XT1yJjI1NSxyPj4+PTg7YihmKTtmb3IodD1yPTA7dDw1O3QrKylmb3IodmFyIHY9MjQ7dj49MDt2LT04KXBbcisrXT1lW3RdPj52JjI1NTtyZXR1cm4gcH1mb3IodmFyIGU9W10sZj1bXSxoPVtdLGs9WzEyOF0sbD0xO2w8NjQ7KytsKWtbbF09MDt2YXIgbSxuO2EoKTtyZXR1cm57cmVzZXQ6YSx1cGRhdGU6YyxkaWdlc3Q6ZCxrdjpmdW5jdGlvbigpe2Zvcih2YXIgcD1kKCkscj0iIix0PTA7dDxwLmxlbmd0aDt0Kyspcis9IjAxMjM0NTY3ODlBQkNERUYiLmNoYXJBdChNYXRoLmZsb29yKHBbdF0vMTYpKSsiMDEyMzQ1Njc4OUFCQ0RFRiIuY2hhckF0KHBbdF0lMTYpO3JldHVybiByfX19O0pkPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1TdHJpbmcoXy51LmxvY2F0aW9uLmhyZWYpO3JldHVybiBkJiZhJiZiP1tiLElkKEdkKGQpLGEsY3x8bnVsbCldLmpvaW4oIiAiKTpudWxsfTsKSWQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVtdLGU9W107aWYoKEFycmF5LmlzQXJyYXkoYyk/MjoxKT09MSlyZXR1cm4gZT1bYixhXSxfLnRiKGQsZnVuY3Rpb24oayl7ZS5wdXNoKGspfSksS2QoZS5qb2luKCIgIikpO3ZhciBmPVtdLGg9W107Xy50YihjLGZ1bmN0aW9uKGspe2gucHVzaChrLmtleSk7Zi5wdXNoKGsudmFsdWUpfSk7Yz1NYXRoLmZsb29yKChuZXcgRGF0ZSkuZ2V0VGltZSgpLzFFMyk7ZT1mLmxlbmd0aD09MD9bYyxiLGFdOltmLmpvaW4oIjoiKSxjLGIsYV07Xy50YihkLGZ1bmN0aW9uKGspe2UucHVzaChrKX0pO2E9S2QoZS5qb2luKCIgIikpO2E9W2MsYV07aC5sZW5ndGg9PTB8fGEucHVzaChoLmpvaW4oIiIpKTtyZXR1cm4gYS5qb2luKCJfIil9O0tkPWZ1bmN0aW9uKGEpe3ZhciBiPUhkKCk7Yi51cGRhdGUoYSk7cmV0dXJuIGIua3YoKS50b0xvd2VyQ2FzZSgpfTtMZD1mdW5jdGlvbihhKXt0aGlzLmo9YXx8e2Nvb2tpZToiIn19OwpNZD1mdW5jdGlvbihhKXthPShhLmouY29va2llfHwiIikuc3BsaXQoIjsiKTt2YXIgYj1bXSxjPVtdO2ZvcihsZXQgZj0wO2Y8YS5sZW5ndGg7ZisrKXt2YXIgZD1hW2ZdLnRyaW0oKTt2YXIgZT1kLmluZGV4T2YoIj0iKTtlPT0tMT8oYi5wdXNoKCIiKSxjLnB1c2goZCkpOihiLnB1c2goZC5zdWJzdHJpbmcoMCxlKSksYy5wdXNoKGQuc3Vic3RyaW5nKGUrMSkpKX1yZXR1cm57a2V5czpiLHZhbHVlczpjfX07Xy5OZD1mdW5jdGlvbigpe3ZhciBhPV8udS5fX1NBUElTSUR8fF8udS5fX0FQSVNJRHx8Xy51Ll9fM1BTQVBJU0lEfHxfLnUuX18xUFNBUElTSUR8fF8udS5fX09WRVJSSURFX1NJRDtpZihhKXJldHVybiEwO3R5cGVvZiBkb2N1bWVudCE9PSJ1bmRlZmluZWQiJiYoYT1uZXcgTGQoZG9jdW1lbnQpLGE9YS5nZXQoIlNBUElTSUQiKXx8YS5nZXQoIkFQSVNJRCIpfHxhLmdldCgiX19TZWN1cmUtM1BBUElTSUQiKXx8YS5nZXQoIl9fU2VjdXJlLTFQQVBJU0lEIikpO3JldHVybiEhYX07Ck9kPWZ1bmN0aW9uKGEsYixjLGQpeyhhPV8udVthXSl8fHR5cGVvZiBkb2N1bWVudD09PSJ1bmRlZmluZWQifHwoYT0obmV3IExkKGRvY3VtZW50KSkuZ2V0KGIpKTtyZXR1cm4gYT9KZChhLGMsZCk6bnVsbH07Cl8uUGQ9ZnVuY3Rpb24oYSl7dmFyIGI9R2QoXy51Py5sb2NhdGlvbi5ocmVmKSxjPVtdO2lmKF8uTmQoKSl7Yj1iLmluZGV4T2YoImh0dHBzOiIpPT0wfHxiLmluZGV4T2YoImNocm9tZS1leHRlbnNpb246Iik9PTB8fGIuaW5kZXhPZigiY2hyb21lLXVudHJ1c3RlZDovL25ldy10YWItcGFnZSIpPT0wfHxiLmluZGV4T2YoIm1vei1leHRlbnNpb246Iik9PTA7dmFyIGQsZT0oZD1iKT9fLnUuX19TQVBJU0lEOl8udS5fX0FQSVNJRDtlfHx0eXBlb2YgZG9jdW1lbnQ9PT0idW5kZWZpbmVkInx8KGU9bmV3IExkKGRvY3VtZW50KSxlPWUuZ2V0KGQ/IlNBUElTSUQiOiJBUElTSUQiKXx8ZS5nZXQoIl9fU2VjdXJlLTNQQVBJU0lEIikpOyhkPWU/SmQoZSxkPyJTQVBJU0lESEFTSCI6IkFQSVNJREhBU0giLGEpOm51bGwpJiZjLnB1c2goZCk7YiYmKChiPU9kKCJfXzFQU0FQSVNJRCIsIl9fU2VjdXJlLTFQQVBJU0lEIiwiU0FQSVNJRDFQSEFTSCIsYSkpJiZjLnB1c2goYiksKGE9T2QoIl9fM1BTQVBJU0lEIiwKIl9fU2VjdXJlLTNQQVBJU0lEIiwiU0FQSVNJRDNQSEFTSCIsYSkpJiZjLnB1c2goYSkpfXJldHVybiBjLmxlbmd0aD09MD9udWxsOmMuam9pbigiICIpfTtTZD1mdW5jdGlvbihhKXtfLlFkP2EoXy5RZCk6KFJkPz8oUmQ9W10pKS5wdXNoKGEpfTtfLlZkPWZ1bmN0aW9uKCl7IV8uUWQmJl8uVGQmJl8uVWQoXy5UZCgpKTtyZXR1cm4gXy5RZH07Xy5VZD1mdW5jdGlvbihhKXtfLlFkPWE7UmQ/LmZvckVhY2goU2QpO1JkPXZvaWQgMH07Xy5XZD1mdW5jdGlvbihhKXtfLlFkJiZfLlFkLlJvKGEpfTtfLlhkPWZ1bmN0aW9uKCl7Xy5RZCYmXy5RZC55ZSgpfTsKWWQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1ifHxfLnhkKCk7Yj1jLmo7dmFyIGQ9Yy5jcmVhdGVFbGVtZW50KCJTVFlMRSIpLGU9aGIoInN0eWxlIixiKTtlJiZkLnNldEF0dHJpYnV0ZSgibm9uY2UiLGUpO2QudHlwZT0idGV4dC9jc3MiO2M9Yy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiSEVBRCIpWzBdO2Quc3R5bGVTaGVldD9kLnN0eWxlU2hlZXQuY3NzVGV4dD1hOmQuYXBwZW5kQ2hpbGQoYi5jcmVhdGVUZXh0Tm9kZShhKSk7Yy5hcHBlbmRDaGlsZChkKTtyZXR1cm4gZH07Xy5aZD1mdW5jdGlvbihhKXthJiZ0eXBlb2YgYS5kaXNwb3NlPT0iZnVuY3Rpb24iJiZhLmRpc3Bvc2UoKX07Xy4kZD1mdW5jdGlvbihhKXtmb3IobGV0IGI9MCxjPWFyZ3VtZW50cy5sZW5ndGg7YjxjOysrYil7bGV0IGQ9YXJndW1lbnRzW2JdO18ueWEoZCk/Xy4kZC5hcHBseShudWxsLGQpOl8uWmQoZCl9fTtfLmFlPWZ1bmN0aW9uKCl7dGhpcy5ZPXRoaXMuWTt0aGlzLks9dGhpcy5LfTtiZT1mdW5jdGlvbigpe18uYWUuY2FsbCh0aGlzKX07CmNlPWZ1bmN0aW9uKGEsYil7dGhpcy5qPWE7dGhpcy5vPWJ9O2VlPWZ1bmN0aW9uKGEsYil7Xy5hZS5jYWxsKHRoaXMpO3RoaXMuaj1hO3RoaXMuRD1iO3RoaXMuQj1kZT9udWxsOltdO3RoaXMudj1kZT9udWxsOltdO3RoaXMubz1kZT9udWxsOltdO3RoaXMuST0hMX07ZmU9ZnVuY3Rpb24oYSxiKXthLm98fChhLm89W10pO2Euby5wdXNoKG5ldyB2YS53ayhiLHZvaWQgMCkpfTtnZT1mdW5jdGlvbihhLGIsYyl7YS5CfHwoYS5CPVtdKTthLkIucHVzaChuZXcgdmEud2soYixjKSl9O2hlPWZ1bmN0aW9uKGEsYil7YS52fHwoYS52PVtdKTthLnYucHVzaChuZXcgdmEud2soYix2b2lkIDApKX07aWU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtmb3IobGV0IGQ9MDtkPGEubGVuZ3RoO2QrKyl0cnl7YVtkXS5leGVjdXRlKGIpfWNhdGNoKGUpe18uJGIoZSksYy5wdXNoKGUpfWEubGVuZ3RoPTA7cmV0dXJuIGMubGVuZ3RoP2M6bnVsbH07amU9ZnVuY3Rpb24oKXt0aGlzLlk9bnVsbH07CmtlPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LGM9Yi5zdHlsZVNoZWV0cy5sZW5ndGgsZD1ZZChhLG5ldyB1ZChiKSk7ZC5zZXRBdHRyaWJ1dGUoImRhdGEtbGF0ZS1jc3MiLCIiKTtiLnN0eWxlU2hlZXRzLmxlbmd0aD09YysxJiZfLnZiKGIuc3R5bGVTaGVldHMsZT0+KGUub3duZXJOb2RlfHxlLm93bmluZ0VsZW1lbnQpPT1kKX07cWU9ZnVuY3Rpb24oYSxiPSEwKXt2YXIgYz1sZShhKSxkPW5ldyBtZSxlPV8uTWIoYylbNV07b2QobmUsZnVuY3Rpb24oaCl7dmFyIGs9ZS5tYXRjaCgiLyIraCsiPShbXi9dKykiKTtrJiZvZShkLGgsa1sxXSl9KTt2YXIgZj0iIjtmPWEuaW5kZXhPZigiXy9zcy8iKSE9LTE/Il8vc3MvIjoiXy9qcy8iO3BlKGQsYS5zdWJzdHIoMCxhLmluZGV4T2YoZikrZi5sZW5ndGgpKTtpZighYilyZXR1cm4gZDsoYT1fLk1iKGMpWzZdfHxudWxsKSYmXy5SYihhLChoLGspPT57ZC52W2hdPWt9KTtyZXR1cm4gZH07CmxlPWZ1bmN0aW9uKGEpe3JldHVybiBhLnN0YXJ0c1dpdGgoImh0dHBzOi8vdWJlcnByb3h5LXBlbi1yZWRpcmVjdC5jb3JwLmdvb2dsZS5jb20vdWJlcnByb3h5L3Blbj91cmw9Iik/YS5zdWJzdHIoNjUpOmF9O3JlPWZ1bmN0aW9uKGEpe2E9Xy5RYihsZShhKSk7cmV0dXJuIGE9PT1udWxsPyExOlJlZ0V4cCgiKC9fL2pzLyl8KC9fL3NzLykiLCJnIikudGVzdChhKT8vXC9rPS8udGVzdChhKTohMX07b2U9ZnVuY3Rpb24oYSxiLGMpe2M/YS5qW2JdPWM6ZGVsZXRlIGEualtiXX07cGU9ZnVuY3Rpb24oYSxiKXthLm89Yn07CnZlPWZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM9ZD0+e2EualtkXSE9PXZvaWQgMCYmYi5wdXNoKGQrIj0iK2EualtkXSl9O3NlKGEpPyhjKCJtZCIpLGMoImsiKSxjKCJjayIpLGMoImFtIiksYygicnMiKSxjKCJnc3Ntb2R1bGVzZXRwcm90byIpLGMoInNsayIpLGMoImR0aSIpLGMoImRid2giKSk6KGMoInNkY2giKSxjKCJrIiksYygiY2siKSxjKCJhbSIpLGMoImFtYyIpLGMoInJ0IiksImQiaW4gYS5qfHxvZShhLCJkIiwiMCIpLGMoImQiKSxjKCJleG0iKSxjKCJleGNtIiksKGEuai5leGNtfHxhLmouZXhtKSYmYi5wdXNoKCJlZD0xIiksYygiaW0iKSxjKCJkZyIpLGMoInNtIiksdGUoYSwiYnIiKSE9IjEiJiZ0ZShhLCJiciIpIT0iMCJ8fGMoImJyIiksYygiYnItZCIpLHRlKGEsInJiIik9PSIxIiYmYygicmIiKSx0ZShhLCJ6cyIpIT09IjAiJiZjKCJ6cyIpLHVlKGEpIT09IiImJmMoInd0IiksYygiZ3NzbW9kdWxlc2V0cHJvdG8iKSxjKCJ1amciKSxjKCJzcCIpLGMoImljaGMiKSwKYygicnMiKSxjKCJjYiIpLGMoImNjYiIpLGMoImVlIiksYygic2xrIiksYygiZHRpIiksYygiZGJ3aCIpLGMoImljIiksYygibSIpKTtyZXR1cm4gYi5qb2luKCIvIil9O3RlPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEualtiXT9hLmpbYl06bnVsbH07c2U9ZnVuY3Rpb24oYSl7YT10ZShhLCJtZCIpO3JldHVybiEhYSYmYSE9PSIwIn07dWU9ZnVuY3Rpb24oYSl7c3dpdGNoKHRlKGEsInd0Iikpe2Nhc2UgIjAiOnJldHVybiIwIjtjYXNlICIxIjpyZXR1cm4iMSI7Y2FzZSAiMiI6cmV0dXJuIjIiO2RlZmF1bHQ6cmV0dXJuIiJ9fTt3ZT1mdW5jdGlvbihhLGIpe2ImJmIubGVuZ3RoPjA/KGIuc29ydCgpLG9lKGEsImV4bSIsYi5qb2luKCIsIikpKTpvZShhLCJleG0iLG51bGwpfTt4ZT1mdW5jdGlvbihhLGIpe2ImJmIubGVuZ3RoPjA/KGIuc29ydCgpLG9lKGEsImV4Y20iLGIuam9pbigiLCIpKSk6b2UoYSwiZXhjbSIsbnVsbCl9Owp5ZT1mdW5jdGlvbihhKXtyZXR1cm4oYT10ZShhLCJtIikpP2Euc3BsaXQoIiwiKTpbXX07emU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iIGluc3RhbmNlb2YgTWFwP0FycmF5LmZyb20oYi5lbnRyaWVzKCkpLmZpbHRlcigoWyxkXSk9PmQmJmQuc2l6ZT4wKS5tYXAoKFtkLGVdKT0+e2U9QXJyYXkuZnJvbShlKTtlLmxlbmd0aD4xJiZlLnNvcnQoKTtyZXR1cm4gZCsiOiIrZS5qb2luKCIsIil9KTpPYmplY3Qua2V5cyhiKS5maWx0ZXIoZD0+ISFPYmplY3Qua2V5cyhiW2RdKS5sZW5ndGgpLm1hcChkPT57dmFyIGU9T2JqZWN0LmtleXMoYltkXSk7ZS5sZW5ndGg+MSYmZS5zb3J0KCk7cmV0dXJuIGQrIjoiK2Uuam9pbigiLCIpfSk7Yy5zb3J0KCk7b2UoYSwiZWUiLGMuam9pbigiOyIpKX07CkNlPWZ1bmN0aW9uKGEpe2E9dGUoYSwiZWUiKTtpZihBZSl7aWYoIWEpcmV0dXJuIG5ldyBNYXA7dmFyIGI9bmV3IE1hcCxjPWEuc3BsaXQoIjsiKTtmb3IodmFyIGQgb2YgYyl7bGV0IFtmLGhdPWQuc3BsaXQoIjoiKTtjPW5ldyBTZXQ7Yi5zZXQoZixjKTtmb3IodmFyIGUgb2YgaC5zcGxpdCgiLCIpKWMuYWRkKGUpfXJldHVybiBifWlmKCFhKXJldHVybnt9O2Q9e307ZT1hLnNwbGl0KCI7Iik7Zm9yKGIgb2YgZSl7bGV0IFtmLGhdPWIuc3BsaXQoIjoiKTtkW2ZdPXt9O2ZvcihjIG9mIGguc3BsaXQoIiwiKSlkW2ZdW2NdPSEwfXJldHVybiBkfTtEZT1mdW5jdGlvbihhKXtkZWxldGUgYS5qLm07ZGVsZXRlIGEuai5leG07ZGVsZXRlIGEuai5lZH07CkVlPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBkb2N1bWVudCE9PSJ1bmRlZmluZWQiJiZkb2N1bWVudCYmZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQmJihhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGEpKSl7bGV0IGI9YS50YWdOYW1lLnRvVXBwZXJDYXNlKCk7aWYoYj09IlNDUklQVCJ8fGI9PSJMSU5LIilyZXR1cm4gYX1yZXR1cm4gbnVsbH07RmU9ZnVuY3Rpb24oYT0iIixiKXtpZihhJiZiKXRocm93IEVycm9yKCJMIik7dmFyIGM9IiI7dmFyIGQ9Xy51Ll9GX2pzVXJsOyhhPWJ8fEVlKGEpKSYmKGM9YS5zcmM/YS5zcmM6YS5nZXRBdHRyaWJ1dGUoImhyZWYiKSk7aWYoZCYmYyl7aWYoZCE9Yyl0aHJvdyBFcnJvcigiTWAiK2QrImAiK2MpO2M9ZH1lbHNlIGM9ZHx8YztpZighcmUoYykpdGhyb3cgRXJyb3IoIk4iKTtyZXR1cm4gY307CkhlPWZ1bmN0aW9uKCl7aWYoIUdlKXtHZT0hMDt0cnl7dmFyIGE9RmUoXy51Ll9GX2pzVXJsPyIiOiJiYXNlLWpzIil9Y2F0Y2goYyl7cmV0dXJufXZhciBiPUNlKHFlKGEpKTtpZihiIGluc3RhbmNlb2YgTWFwKWIuc2l6ZSE9PTAmJlNkKGM9Pntmb3IobGV0IFtkLGVdb2YgYi5lbnRyaWVzKCkpe2xldCBmPWQsaD1lO2ZvcihsZXQgayBvZiBoKWMubmkoZixrKX19KTtlbHNle2xldCBjPU9iamVjdC5rZXlzKGIpO2MubGVuZ3RoIT09MCYmU2QoZD0+e2ZvcihsZXQgZSBvZiBjKXtsZXQgZj1iW2VdO2ZvcihsZXQgaCBvZiBPYmplY3Qua2V5cyhmKSlkLm5pKGUsaCl9fSl9fX07Xy5KZT1mdW5jdGlvbihhLGIpe3RoaXMudHlwZT0iZnVuY3Rpb24iPT10eXBlb2YgXy5JZSYmYSBpbnN0YW5jZW9mIF8uSWU/U3RyaW5nKGEpOmE7dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PWI7dGhpcy5kZWZhdWx0UHJldmVudGVkPXRoaXMubz0hMX07CktlPWZ1bmN0aW9uKGEsYil7Xy5KZS5jYWxsKHRoaXMsYT9hLnR5cGU6IiIpO3RoaXMucmVsYXRlZFRhcmdldD10aGlzLmN1cnJlbnRUYXJnZXQ9dGhpcy50YXJnZXQ9bnVsbDt0aGlzLmJ1dHRvbj10aGlzLnNjcmVlblk9dGhpcy5zY3JlZW5YPXRoaXMuY2xpZW50WT10aGlzLmNsaWVudFg9dGhpcy5vZmZzZXRZPXRoaXMub2Zmc2V0WD0wO3RoaXMua2V5PSIiO3RoaXMuY2hhckNvZGU9dGhpcy5rZXlDb2RlPTA7dGhpcy5tZXRhS2V5PXRoaXMuc2hpZnRLZXk9dGhpcy5hbHRLZXk9dGhpcy5jdHJsS2V5PSExO3RoaXMuc3RhdGU9bnVsbDt0aGlzLnBvaW50ZXJJZD0wO3RoaXMucG9pbnRlclR5cGU9IiI7dGhpcy50aW1lU3RhbXA9MDt0aGlzLmo9bnVsbDthJiZ0aGlzLmluaXQoYSxiKX07Ck1lPWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5saXN0ZW5lcj1hO3RoaXMucHJveHk9bnVsbDt0aGlzLnNyYz1iO3RoaXMudHlwZT1jO3RoaXMuY2FwdHVyZT0hIWQ7dGhpcy5oYW5kbGVyPWU7dGhpcy5rZXk9KytMZTt0aGlzLk5oPXRoaXMuemk9ITF9O05lPWZ1bmN0aW9uKGEpe2EuTmg9ITA7YS5saXN0ZW5lcj1udWxsO2EucHJveHk9bnVsbDthLnNyYz1udWxsO2EuaGFuZGxlcj1udWxsfTtPZT1mdW5jdGlvbihhKXt0aGlzLnNyYz1hO3RoaXMubGlzdGVuZXJzPXt9O3RoaXMuaj0wfTtQZT1mdW5jdGlvbihhLGIpe3ZhciBjPWIudHlwZTtjIGluIGEubGlzdGVuZXJzJiZfLnhiKGEubGlzdGVuZXJzW2NdLGIpJiYoTmUoYiksYS5saXN0ZW5lcnNbY10ubGVuZ3RoPT0wJiYoZGVsZXRlIGEubGlzdGVuZXJzW2NdLGEuai0tKSl9OwpRZT1mdW5jdGlvbihhLGIsYyxkKXtmb3IobGV0IGU9MDtlPGEubGVuZ3RoOysrZSl7bGV0IGY9YVtlXTtpZighZi5OaCYmZi5saXN0ZW5lcj09YiYmZi5jYXB0dXJlPT0hIWMmJmYuaGFuZGxlcj09ZClyZXR1cm4gZX1yZXR1cm4tMX07Xy5TZT1mdW5jdGlvbihhLGIsYyxkLGUpe2lmKGQmJmQub25jZSlyZXR1cm4gUmUoYSxiLGMsZCxlKTtpZihBcnJheS5pc0FycmF5KGIpKXtmb3IobGV0IGY9MDtmPGIubGVuZ3RoO2YrKylfLlNlKGEsYltmXSxjLGQsZSk7cmV0dXJuIG51bGx9Yz1UZShjKTtyZXR1cm4gYSYmYVtVZV0/YS5saXN0ZW4oYixjLF8uQWEoZCk/ISFkLmNhcHR1cmU6ISFkLGUpOlZlKGEsYixjLCExLGQsZSl9OwpWZT1mdW5jdGlvbihhLGIsYyxkLGUsZil7aWYoIWIpdGhyb3cgRXJyb3IoIk8iKTt2YXIgaD1fLkFhKGUpPyEhZS5jYXB0dXJlOiEhZSxrPVdlKGEpO2t8fChhW1hlXT1rPW5ldyBPZShhKSk7Yz1rLmFkZChiLGMsZCxoLGYpO2lmKGMucHJveHkpcmV0dXJuIGM7ZD1ZZSgpO2MucHJveHk9ZDtkLnNyYz1hO2QubGlzdGVuZXI9YztpZihhLmFkZEV2ZW50TGlzdGVuZXIpZT09PXZvaWQgMCYmKGU9ITEpLGEuYWRkRXZlbnRMaXN0ZW5lcihiLnRvU3RyaW5nKCksZCxlKTtlbHNlIGlmKGEuYXR0YWNoRXZlbnQpYS5hdHRhY2hFdmVudChaZShiLnRvU3RyaW5nKCkpLGQpO2Vsc2UgaWYoYS5hZGRMaXN0ZW5lciYmYS5yZW1vdmVMaXN0ZW5lcilhLmFkZExpc3RlbmVyKGQpO2Vsc2UgdGhyb3cgRXJyb3IoIlAiKTskZSsrO3JldHVybiBjfTtZZT1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoYyl7cmV0dXJuIGIuY2FsbChhLnNyYyxhLmxpc3RlbmVyLGMpfXZhciBiPWFmO3JldHVybiBhfTsKUmU9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihBcnJheS5pc0FycmF5KGIpKXtmb3IobGV0IGY9MDtmPGIubGVuZ3RoO2YrKylSZShhLGJbZl0sYyxkLGUpO3JldHVybiBudWxsfWM9VGUoYyk7cmV0dXJuIGEmJmFbVWVdP18uYmYoYSxiLGMsXy5BYShkKT8hIWQuY2FwdHVyZTohIWQsZSk6VmUoYSxiLGMsITAsZCxlKX07Xy5jZj1mdW5jdGlvbihhLGIsYyxkLGUpe2lmKEFycmF5LmlzQXJyYXkoYikpZm9yKGxldCBmPTA7ZjxiLmxlbmd0aDtmKyspXy5jZihhLGJbZl0sYyxkLGUpO2Vsc2UoZD1fLkFhKGQpPyEhZC5jYXB0dXJlOiEhZCxjPVRlKGMpLGEmJmFbVWVdKT9hLm8ucmVtb3ZlKFN0cmluZyhiKSxjLGQsZSk6YSYmKGE9V2UoYSkpJiYoYj1hLmxpc3RlbmVyc1tiLnRvU3RyaW5nKCldLGE9LTEsYiYmKGE9UWUoYixjLGQsZSkpLChjPWE+LTE/YlthXTpudWxsKSYmXy5kZihjKSl9OwpfLmRmPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09Im51bWJlciImJmEmJiFhLk5oKXt2YXIgYj1hLnNyYztpZihiJiZiW1VlXSlQZShiLm8sYSk7ZWxzZXt2YXIgYz1hLnR5cGUsZD1hLnByb3h5O2IucmVtb3ZlRXZlbnRMaXN0ZW5lcj9iLnJlbW92ZUV2ZW50TGlzdGVuZXIoYyxkLGEuY2FwdHVyZSk6Yi5kZXRhY2hFdmVudD9iLmRldGFjaEV2ZW50KFplKGMpLGQpOmIuYWRkTGlzdGVuZXImJmIucmVtb3ZlTGlzdGVuZXImJmIucmVtb3ZlTGlzdGVuZXIoZCk7JGUtLTsoYz1XZShiKSk/KFBlKGMsYSksYy5qPT0wJiYoYy5zcmM9bnVsbCxiW1hlXT1udWxsKSk6TmUoYSl9fX07WmU9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW4gZWY/ZWZbYV06ZWZbYV09Im9uIithfTthZj1mdW5jdGlvbihhLGIpe2lmKGEuTmgpYT0hMDtlbHNle2I9bmV3IEtlKGIsdGhpcyk7bGV0IGM9YS5saXN0ZW5lcixkPWEuaGFuZGxlcnx8YS5zcmM7YS56aSYmXy5kZihhKTthPWMuY2FsbChkLGIpfXJldHVybiBhfTsKV2U9ZnVuY3Rpb24oYSl7YT1hW1hlXTtyZXR1cm4gYSBpbnN0YW5jZW9mIE9lP2E6bnVsbH07VGU9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGE9PT0iZnVuY3Rpb24iKXJldHVybiBhO2FbZmZdfHwoYVtmZl09ZnVuY3Rpb24oYil7cmV0dXJuIGEuaGFuZGxlRXZlbnQoYil9KTtyZXR1cm4gYVtmZl19O18uZ2Y9ZnVuY3Rpb24oKXtfLmFlLmNhbGwodGhpcyk7dGhpcy5vPW5ldyBPZSh0aGlzKTt0aGlzLkZhPXRoaXM7dGhpcy5NPW51bGx9O18uYmY9ZnVuY3Rpb24oYSxiLGMsZCxlKXtyZXR1cm4gYS5vLmFkZChTdHJpbmcoYiksYywhMCxkLGUpfTsKaGY9ZnVuY3Rpb24oYSxiLGMsZCl7Yj1hLm8ubGlzdGVuZXJzW1N0cmluZyhiKV07aWYoIWIpcmV0dXJuITA7Yj1iLmNvbmNhdCgpO3ZhciBlPSEwO2ZvcihsZXQgZj0wO2Y8Yi5sZW5ndGg7KytmKXtsZXQgaD1iW2ZdO2lmKGgmJiFoLk5oJiZoLmNhcHR1cmU9PWMpe2xldCBrPWgubGlzdGVuZXIsbD1oLmhhbmRsZXJ8fGguc3JjO2guemkmJlBlKGEubyxoKTtlPWsuY2FsbChsLGQpIT09ITEmJmV9fXJldHVybiBlJiYhZC5kZWZhdWx0UHJldmVudGVkfTtsZj1mdW5jdGlvbigpe3ZhciBhPV8uamY7a2YuaW5zdGFuY2V8fChrZi5pbnN0YW5jZT1uZXcga2YoYSkpO3JldHVybiBrZi5pbnN0YW5jZX07Cm1mPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuQj9hLkI6YS5CPW5ldyBQcm9taXNlKGFzeW5jIGM9Pnt2YXIgZD13aW5kb3cuQWJvcnRDb250cm9sbGVyP25ldyB3aW5kb3cuQWJvcnRDb250cm9sbGVyOnZvaWQgMCxlPWQ/LnNpZ25hbCxmPSExO3RyeXtkJiYoYS5qPWEuRGMucGIoKCk9PntkLmFib3J0KCl9LGJ8fDJFNCkpLGF3YWl0IGZldGNoKCIvZ2VuZXJhdGVfMjA0Iix7bWV0aG9kOiJIRUFEIixzaWduYWw6ZX0pLGY9ITB9Y2F0Y2h7Zj0hMX1maW5hbGx5e2EuQj12b2lkIDAsYS5qJiYoYS5EYy5BYShhLmopLGEuaj0wKSxmIT09YS5pc09ubGluZSYmKGEuaXNPbmxpbmU9ZixhLmlzT25saW5lP2EuZGlzcGF0Y2hFdmVudCgibmV0d29ya3N0YXR1cy1vbmxpbmUiKTphLmRpc3BhdGNoRXZlbnQoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIpKSxjKGYpfX0pfTsKbmY9ZnVuY3Rpb24oYSl7YS5EPWEuRGMucGIoYXN5bmMoKT0+e2EuaXNPbmxpbmU/d2luZG93Lm5hdmlnYXRvcj8ub25MaW5lfHxhd2FpdCBtZihhKTphd2FpdCBtZihhKTtuZihhKX0sM0U0KX07b2Y9ZnVuY3Rpb24oKXt2YXIgYSxiO3JldHVybntwcm9taXNlOm5ldyBQcm9taXNlKChjLGQpPT57YT1jO2I9ZH0pLHJlc29sdmU6YSxyZWplY3Q6Yn19O3JmPWZ1bmN0aW9uKGEpe3ZhciB7cHJvbWlzZTpiLHJlc29sdmU6YyxyZWplY3Q6ZH09b2YoKTtwZi5zZXQoYSx7cHJvbWlzZTpiLHJlc29sdmU6YyxyZWplY3Q6ZH0pO3FmfHwocWY9W10scXVldWVNaWNyb3Rhc2soKCk9Pnt2YXIgZT1bLi4ucWZdO3FmPW51bGw7dmFyIGY9Xy5WZCgpLmFmKGUpO2ZvcihsZXQgaCBvZiBlKWZbaF0udGhlbihwZi5nZXQoaCkucmVzb2x2ZSxwZi5nZXQoaCkucmVqZWN0KX0pKTtxZi5wdXNoKGEpO3JldHVybiBifTsKXy5zZj1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAyMDA6Y2FzZSAyMDE6Y2FzZSAyMDI6Y2FzZSAyMDQ6Y2FzZSAyMDY6Y2FzZSAzMDQ6Y2FzZSAxMjIzOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fTt0Zj1mdW5jdGlvbihhLGIpe2EuQihiKTthLm88MTAwJiYoYS5vKyssYi5uZXh0PWEuaixhLmo9Yil9O3hmPWZ1bmN0aW9uKCl7Zm9yKHZhciBhO2E9dWYucmVtb3ZlKCk7KXt0cnl7YS5mbi5jYWxsKGEuc2NvcGUpfWNhdGNoKGIpe18uJGIoYil9dGYodmYsYSl9d2Y9ITF9O18ueWY9ZnVuY3Rpb24oYSl7YS5wcm90b3R5cGUuJGdvb2dfVGhlbmFibGU9ITB9O3pmPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiExO3RyeXtyZXR1cm4hIWEuJGdvb2dfVGhlbmFibGV9Y2F0Y2goYil7cmV0dXJuITF9fTsKXy5CZj1mdW5jdGlvbihhLGIpe3RoaXMuaj0wO3RoaXMuST12b2lkIDA7dGhpcy5CPXRoaXMubz10aGlzLnY9bnVsbDt0aGlzLkQ9dGhpcy5LPSExO2lmKGEhPV8uZ2QpdHJ5e2xldCBjPXRoaXM7YS5jYWxsKGIsZnVuY3Rpb24oZCl7Xy5BZihjLDIsZCl9LGZ1bmN0aW9uKGQpe18uQWYoYywzLGQpfSl9Y2F0Y2goYyl7Xy5BZih0aGlzLDMsYyl9fTtDZj1mdW5jdGlvbigpe3RoaXMubmV4dD10aGlzLmNvbnRleHQ9dGhpcy5qPXRoaXMubz10aGlzLmNoaWxkPW51bGw7dGhpcy52PSExfTtfLkVmPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1EZi5nZXQoKTtkLm89YTtkLmo9YjtkLmNvbnRleHQ9YztyZXR1cm4gZH07Xy5IZj1mdW5jdGlvbihhLGIsYyl7RmYoYSxiLGMsbnVsbCl8fEdmKF8uRGEoYixhKSl9OwpfLklmPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5CZihmdW5jdGlvbihiLGMpe3ZhciBkPWEubGVuZ3RoLGU9W107aWYoZCl7dmFyIGY9ZnVuY3Rpb24obCxtKXtkLS07ZVtsXT1tO2Q9PTAmJmIoZSl9LGg9ZnVuY3Rpb24obCl7YyhsKX07Zm9yKGxldCBsPTA7bDxhLmxlbmd0aDtsKyspe3ZhciBrPWFbbF07Xy5IZihrLF8uRGEoZixsKSxoKX19ZWxzZSBiKGUpfSl9O0tmPWZ1bmN0aW9uKGEsYixjLGQpe18uSmYoYSxfLkVmKGJ8fF8uZ2QsY3x8bnVsbCxkKSl9OwpMZj1mdW5jdGlvbihhLGIpe2lmKGEuaj09MClpZihhLnYpe3ZhciBjPWEudjtpZihjLm8pe3ZhciBkPTAsZT1udWxsLGY9bnVsbDtmb3IobGV0IGg9Yy5vO2gmJihoLnZ8fChkKyssaC5jaGlsZD09YSYmKGU9aCksIShlJiZkPjEpKSk7aD1oLm5leHQpZXx8KGY9aCk7ZSYmKGMuaj09MCYmZD09MT9MZihjLGIpOihmPyhkPWYsZC5uZXh0PT1jLkImJihjLkI9ZCksZC5uZXh0PWQubmV4dC5uZXh0KTpNZihjKSxOZihjLGUsMyxiKSkpfWEudj1udWxsfWVsc2UgXy5BZihhLDMsYil9O18uSmY9ZnVuY3Rpb24oYSxiKXthLm98fGEuaiE9MiYmYS5qIT0zfHxPZihhKTthLkI/YS5CLm5leHQ9YjphLm89YjthLkI9Yn07ClFmPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPV8uRWYobnVsbCxudWxsLG51bGwpO2UuY2hpbGQ9bmV3IF8uQmYoZnVuY3Rpb24oZixoKXtlLm89Yj9mdW5jdGlvbihrKXt0cnl7bGV0IGw9Yi5jYWxsKGQsayk7ZihsKX1jYXRjaChsKXtoKGwpfX06ZjtlLmo9Yz9mdW5jdGlvbihrKXt0cnl7bGV0IGw9Yy5jYWxsKGQsayk7bD09PXZvaWQgMCYmayBpbnN0YW5jZW9mIF8uUGY/aChrKTpmKGwpfWNhdGNoKGwpe2gobCl9fTpofSk7ZS5jaGlsZC52PWE7Xy5KZihhLGUpO3JldHVybiBlLmNoaWxkfTtfLkFmPWZ1bmN0aW9uKGEsYixjKXthLmo9PTAmJihhPT09YyYmKGI9MyxjPW5ldyBUeXBlRXJyb3IoIlEiKSksYS5qPTEsRmYoYyxhLm5CLGEub0IsYSl8fChhLkk9YyxhLmo9YixhLnY9bnVsbCxPZihhKSxiIT0zfHxjIGluc3RhbmNlb2YgXy5QZnx8UmYoYSxjKSkpfTsKRmY9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYSBpbnN0YW5jZW9mIF8uQmYpcmV0dXJuIEtmKGEsYixjLGQpLCEwO2lmKHpmKGEpKXJldHVybiBhLnRoZW4oYixjLGQpLCEwO2lmKF8uQWEoYSkpdHJ5e2xldCBlPWEudGhlbjtpZih0eXBlb2YgZT09PSJmdW5jdGlvbiIpcmV0dXJuIFNmKGEsZSxiLGMsZCksITB9Y2F0Y2goZSl7cmV0dXJuIGMuY2FsbChkLGUpLCEwfXJldHVybiExfTtTZj1mdW5jdGlvbihhLGIsYyxkLGUpe2Z1bmN0aW9uIGYobCl7a3x8KGs9ITAsZC5jYWxsKGUsbCkpfWZ1bmN0aW9uIGgobCl7a3x8KGs9ITAsYy5jYWxsKGUsbCkpfXZhciBrPSExO3RyeXtiLmNhbGwoYSxoLGYpfWNhdGNoKGwpe2YobCl9fTtPZj1mdW5jdGlvbihhKXthLkt8fChhLks9ITAsR2YoYS50dCxhKSl9O01mPWZ1bmN0aW9uKGEpe3ZhciBiPW51bGw7YS5vJiYoYj1hLm8sYS5vPWIubmV4dCxiLm5leHQ9bnVsbCk7YS5vfHwoYS5CPW51bGwpO3JldHVybiBifTsKTmY9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYz09MyYmYi5qJiYhYi52KWZvcig7YSYmYS5EO2E9YS52KWEuRD0hMTtpZihiLmNoaWxkKWIuY2hpbGQudj1udWxsLFRmKGIsYyxkKTtlbHNlIHRyeXtiLnY/Yi5vLmNhbGwoYi5jb250ZXh0KTpUZihiLGMsZCl9Y2F0Y2goZSl7Xy5VZi5jYWxsKG51bGwsZSl9dGYoRGYsYil9O1RmPWZ1bmN0aW9uKGEsYixjKXtiPT0yP2Euby5jYWxsKGEuY29udGV4dCxjKTphLmomJmEuai5jYWxsKGEuY29udGV4dCxjKX07UmY9ZnVuY3Rpb24oYSxiKXthLkQ9ITA7R2YoZnVuY3Rpb24oKXthLkQmJl8uVWYuY2FsbChudWxsLGIpfSl9O18uUGY9ZnVuY3Rpb24oYSl7Xy5MYS5jYWxsKHRoaXMsYSl9O1dmPWZ1bmN0aW9uKGEpe3JldHVybiBWZihhKS50aGVuKGZ1bmN0aW9uKGIpe3JldHVybiBKU09OLnBhcnNlKGIucmVzcG9uc2VUZXh0KX0pfTsKVmY9ZnVuY3Rpb24oYSl7dmFyIGI9e30sYz1uZXcgWE1MSHR0cFJlcXVlc3Q7cmV0dXJuKG5ldyBfLkJmKGZ1bmN0aW9uKGQsZSl7dmFyIGY7dHJ5e2Mub3BlbigiR0VUIixhLCEwKX1jYXRjaChoKXtlKG5ldyBYZigiRXJyb3Igb3BlbmluZyBYSFI6ICIraC5tZXNzYWdlLGEsYykpfWMub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7aWYoYy5yZWFkeVN0YXRlPT00KXtfLnUuY2xlYXJUaW1lb3V0KGYpO3ZhciBoOyEoaD1fLnNmKGMuc3RhdHVzKSkmJihoPWMuc3RhdHVzPT09MCkmJihoPV8uT2IoYSksaD0hKGg9PSJodHRwInx8aD09Imh0dHBzInx8aD09IiIpKTtoP2QoYyk6ZShuZXcgWWYoYy5zdGF0dXMsYSxjKSl9fTtjLm9uZXJyb3I9ZnVuY3Rpb24oKXtlKG5ldyBYZigiTmV0d29yayBlcnJvciIsYSxjKSl9O2lmKGIuaGVhZGVycylmb3IobGV0IGggaW4gYi5oZWFkZXJzKXtsZXQgaz1iLmhlYWRlcnNbaF07ayE9bnVsbCYmYy5zZXRSZXF1ZXN0SGVhZGVyKGgsayl9Yi53aXRoQ3JlZGVudGlhbHMmJgooYy53aXRoQ3JlZGVudGlhbHM9Yi53aXRoQ3JlZGVudGlhbHMpO2IucmVzcG9uc2VUeXBlJiYoYy5yZXNwb25zZVR5cGU9Yi5yZXNwb25zZVR5cGUpO2IubWltZVR5cGUmJmMub3ZlcnJpZGVNaW1lVHlwZShiLm1pbWVUeXBlKTtiLnRpbWVvdXRNcz4wJiYoZj1fLnUuc2V0VGltZW91dChmdW5jdGlvbigpe2Mub25yZWFkeXN0YXRlY2hhbmdlPSgpPT57fTtjLmFib3J0KCk7ZShuZXcgWmYoYSxjKSl9LGIudGltZW91dE1zKSk7dHJ5e2Muc2VuZChudWxsKX1jYXRjaChoKXtjLm9ucmVhZHlzdGF0ZWNoYW5nZT0oKT0+e30sXy51LmNsZWFyVGltZW91dChmKSxlKG5ldyBYZigiRXJyb3Igc2VuZGluZyBYSFI6ICIraC5tZXNzYWdlLGEsYykpfX0pKS5LZyhmdW5jdGlvbihkKXtkIGluc3RhbmNlb2YgXy5QZiYmYy5hYm9ydCgpO3Rocm93IGQ7fSl9O1hmPWZ1bmN0aW9uKGEsYil7Xy5MYS5jYWxsKHRoaXMsYSsiLCB1cmw9IitiKTt0aGlzLnVybD1ifTsKWWY9ZnVuY3Rpb24oYSxiLGMpe1hmLmNhbGwodGhpcywiUmVxdWVzdCBGYWlsZWQsIHN0YXR1cz0iK2EsYixjKTt0aGlzLnN0YXR1cz1hfTtaZj1mdW5jdGlvbihhLGIpe1hmLmNhbGwodGhpcywiUmVxdWVzdCB0aW1lZCBvdXQiLGEsYil9O18uJGY9ZnVuY3Rpb24oYSxiLGMsZCxlPWIpe3ZhciBmPWIubGVuZ3RoLGg9KCk9PntmPTA7YS5vbmxvYWQ9bnVsbDthLm9uZXJyb3I9bnVsbDtrPSgpPT57fX0saz0oKT0+e2goKTt2YXIgbT1lLmZpbHRlcihuPT4hXy5WZCgpLkxhKG4pLmlzTG9hZGVkKCkpO20ubGVuZ3RoIT09MD9kKG0sYFJlc3BvbnNlIHdhcyBzdWNjZXNzZnVsIGJ1dCB3YXMgbWlzc2luZyBtb2R1bGUocykgJHttfS5gKTpjKCl9LGw9KCk9PntmLS07Zj09MCYmaygpfTtiLmZvckVhY2gobT0+e209Xy5WZCgpLkxhKG0pO20uaXNMb2FkZWQoKT9sKCk6KGZlKG0sbCksaGUobSxsKSl9KTthLm9ubG9hZD0oKT0+aygpO2Eub25lcnJvcj0oKT0+e2goKTtkKGIpfX07Cl8uYWc9ZnVuY3Rpb24oYSxiKXt2YXIgYz0hMSxkPVtdO2ZvcihsZXQgZT0wO2U8Yi5sZW5ndGg7KytlKXtsZXQgZj1iW2VdO2EuQltmXXx8KGEuQltmXT0hMCxhLloucHVzaChmKSxjPSEwLGQucHVzaChmKSl9YyYmKGEub2E9ITEpfTtiZz1mdW5jdGlvbihhLGIpe2lmKGIuaHJlZnx8Yi5nZXRBdHRyaWJ1dGUoImRhdGEtaHJlZiIpKWlmKGI9Yi5ocmVmfHxiLmdldEF0dHJpYnV0ZSgiZGF0YS1ocmVmIikscmUoYikmJiFxZShiKS5vLmVuZHNXaXRoKCJfL2pzLyIpKXtiPXllKHFlKGIpKTtmb3IobGV0IGMgb2YgYilhLmhhLmluY2x1ZGVzKGMpfHxhLmhhLnB1c2goYyl9fTtkZz1mdW5jdGlvbihhLGIsYyxkPSgpPT57fSxlPSgpPT57fSxmPSExKXtjZyhhLGIsKGgsayxsPWspPT57YS5NYSYmZj9hLlFhKGgsayxkLGUsbCk6YS5sb2FkKGgsayxkLGUsbCxjKX0sYyl8fGQoLTEpfTtlZz1mdW5jdGlvbihhLGIpe3JldHVybiBiLmZpbHRlcihjPT4hYS5CW2NdKX07CmZnPWZ1bmN0aW9uKGEsYixjLHtZZDpkLG9uRXJyb3I6ZSxvblN1Y2Nlc3M6Zixmb3JjZVJlbG9hZDpofT17fSl7YS5NPWM7aWYoIWIpdGhyb3cgRXJyb3IoIlMiKTtpZihhLlZkKXtmb3IobGV0IGsgb2YgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInN0eWxlIikpYmcoYSxrKTtmb3IobGV0IGsgb2YgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImxpbmsiKSliZyhhLGspfWRnKGEsZWcoYSxiKSxkLGUsZixoKX07CmNnPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGEudilyZXR1cm4gYS52LnRoZW4oKCk9PntjZyhhLGIsYyxkKX0pLCEwO2lmKCFhLkQpe2xldCBmPVtdO3ZhciBlPU9iamVjdC5hc3NpZ24oe30sYS5CKTtnZyhhLGIsaD0+e2YucHVzaChoLmdldElkKCkpfSxkLGg9PiFoLmlzTG9hZGVkKCksZSk7Yj1mfWZvcihlPTA7ZTxiLmxlbmd0aDspe2xldCBmPWIubGVuZ3RoLWUsaD1lPT0wP2I6Yi5zbGljZShlLGIubGVuZ3RoKSxrPWhnKGEsaCxkKSxsPV8uVWEoaykudG9TdHJpbmcoKTtmb3IoO2wubGVuZ3RoPmEuZGk7KWlmKGY+MSlmLT1NYXRoLmNlaWwoKGwubGVuZ3RoLWEuZGkpLzYpLGY9TWF0aC5tYXgoZiwxKSxoPWIuc2xpY2UoZSxlK2YpLGs9aGcoYSxoLGQpLGw9Xy5VYShrKS50b1N0cmluZygpO2Vsc2UgcmV0dXJuIGEuRD8oYS5EPSExLGEudj1pZyhhKS50aGVuKG09PntqZyhhLG0sZCl9KSxjZyhhLGIuc2xpY2UoZSksYyxkKSk6ITE7ZSs9ZjthLkQ/YyhrLGgpOmMoayxoLGU9PT1iLmxlbmd0aD8KYjpbXSl9cmV0dXJuITB9O2tnPWZ1bmN0aW9uKGEpe2Eub2F8fChhLm9hPSEwLGEuWi5zb3J0KCkpO3JldHVybiBhLlp9O2xnPWZ1bmN0aW9uKGEpe2E9YS5oYTthLnNvcnQoKTtyZXR1cm4gYX07aGc9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBhLkQ/bWcoYS5ZLGIse2Nzc1Jvd0tleTphLkZhLEtlOmEueWEsWWQ6YyxtbjprZyhhKSxsbjpsZyhhKX0pOm5nKGEuWSxiLHtjc3NSb3dLZXk6YS5GYSxLZTphLnlhLG1uOmtnKGEpLGxuOmxnKGEpfSl9O18ub2c9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtmb3IobGV0IGQ9MDtkPGIubGVuZ3RoOysrZCl7bGV0IGU9YltkXTthLkJbZV0mJihkZWxldGUgYS5CW2VdLF8ueGIoYS5aLGUpLGMucHVzaChlKSl9fTsKXy5wZz1mdW5jdGlvbihhLGIsYyxkLGUsZixoPWQpe2EuST1jO2EuZ2EuaW5zZXJ0QmVmb3JlKGMsYS5nYS5maXJzdENoaWxkKTtfLiRmKGMsZCwoKT0+e2MucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZChjKTthLkk9PWMmJihhLkk9bnVsbCk7ZigpfSxrPT57Yy5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGMpO2EuST09YyYmKGEuST1udWxsKTtfLm9nKGEsayk7YS52P2Eudi50aGVuKCgpPT57ZSgtMSxiKX0pOmUoLTEsYil9LGgpfTtnZz1mdW5jdGlvbihhLGIsYyxkLGUsZj17fSl7dmFyIGg9Xy5WZCgpO2ZvcihsZXQgayBvZiBiKXtiPWguTGEoayk7aWYoZltrXXx8ZSYmIWUoYikpY29udGludWU7ZltrXT0hMDtsZXQgbD1iLmp8fFtdO2lmKGQpe2xldCBtPVtdO2lmKGQgaW5zdGFuY2VvZiBNYXApe2xldCBuPWQuZ2V0KGspO24mJihtPUFycmF5LmZyb20obikpfWVsc2UgZFtrXSYmKG09T2JqZWN0LmtleXMoZFtrXSkpO2w9bC5jb25jYXQobSl9Z2coYSxsLGMsZCxlLGYpO2MoYil9fTsKaWc9ZnVuY3Rpb24oYSl7YT1hLlkuY2xvbmUoKTtEZShhKTtvZShhLCJkZyIsbnVsbCk7b2UoYSwibWQiLCIxIik7cmV0dXJuIFdmKGEudG9TdHJpbmcoKSl9O2pnPWZ1bmN0aW9uKGEsYixjKXtfLlZkKCkuVGgoKGJ8fHt9KS5tb2R1bGVHcmFwaCk7Z2coYSxrZyhhKSxkPT57Xy5hZyhhLFtkLmdldElkKCldKX0sYyk7YS52PW51bGx9O3JnPWZ1bmN0aW9uKGEpe2E9YS5idWYuY2hhckNvZGVBdChhLnBvcysrKTtyZXR1cm4gcWdbYV19O3NnPWZ1bmN0aW9uKGEpe3ZhciBiPTAsYz0wO2Rve3ZhciBkPXJnKGEpO2J8PShkJjMxKTw8YztjKz01fXdoaWxlKGQmMzIpO3JldHVybiBiPDA/Yis0Mjk0OTY3Mjk2OmJ9O3RnPWZ1bmN0aW9uKGEsYil7dGhpcy5EPVtdO3RoaXMuWj1hO3RoaXMuVT1ifHxudWxsO3RoaXMuQj10aGlzLmo9ITE7dGhpcy52PXZvaWQgMDt0aGlzLk09dGhpcy5nYT10aGlzLkk9ITE7dGhpcy5LPTA7dGhpcy5vPW51bGw7dGhpcy5ZPTB9Owp2Zz1mdW5jdGlvbihhLGIsYyl7YS5qPSEwO2Eudj1jO2EuQj0hYjt1ZyhhKX07eGc9ZnVuY3Rpb24oYSl7aWYoYS5qKXtpZighYS5NKXRocm93IG5ldyB3ZyhhKTthLk09ITF9fTt6Zz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hLmo7ZXx8KGI9PT1jP2I9Yz0oMCxfLnlnKShiKTooYj0oMCxfLnlnKShiKSxjPSgwLF8ueWcpKGMpKSk7YS5ELnB1c2goW2IsYyxkXSk7ZSYmdWcoYSl9O0FnPWZ1bmN0aW9uKGEpe3JldHVybiBfLnViKGEuRCxmdW5jdGlvbihiKXtyZXR1cm4gdHlwZW9mIGJbMV09PT0iZnVuY3Rpb24ifSl9Owp1Zz1mdW5jdGlvbihhKXtpZihhLksmJmEuaiYmQWcoYSkpe3ZhciBiPWEuSyxjPUJnW2JdO2MmJihfLnUuY2xlYXJUaW1lb3V0KGMuaiksZGVsZXRlIEJnW2JdKTthLks9MH1hLm8mJihhLm8uWS0tLGRlbGV0ZSBhLm8pO2I9YS52O2Zvcih2YXIgZD1jPSExO2EuRC5sZW5ndGgmJiFhLkk7KXt2YXIgZT1hLkQuc2hpZnQoKSxmPWVbMF07bGV0IGs9ZVsxXTtlPWVbMl07aWYoZj1hLkI/azpmKXRyeXt2YXIgaD1mLmNhbGwoZXx8YS5VLGIpO2g9PT1DZyYmKGg9dm9pZCAwKTtoIT09dm9pZCAwJiYoYS5CPWEuQiYmKGg9PWJ8fGEuaXNFcnJvcihoKSksYS52PWI9aCk7aWYoemYoYil8fHR5cGVvZiBfLnUuUHJvbWlzZT09PSJmdW5jdGlvbiImJmIgaW5zdGFuY2VvZiBfLnUuUHJvbWlzZSlkPSEwLGEuST0hMH1jYXRjaChsKXtiPWwsYS5CPSEwLEFnKGEpfHwoYz0hMCl9fWEudj1iO2QmJihoPSgwLF8uQ2EpKGEuc3AsYSwhMCksZD0oMCxfLkNhKShhLnNwLGEsITEpLGIgaW5zdGFuY2VvZiB0Zz8KKHpnKGIsaCxkKSxiLmdhPSEwKTpiLnRoZW4oaCxkKSk7YyYmKGI9bmV3IERnKGIpLEJnW2Iual09YixhLks9Yi5qKX07RWc9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IHRnO2EudGhlbihmdW5jdGlvbihjKXtiLmNhbGxiYWNrKGMpfSxmdW5jdGlvbihjKXt4ZyhiKTt2ZyhiLCExLGMpfSk7cmV0dXJuIGJ9O3dnPWZ1bmN0aW9uKCl7Xy5MYS5jYWxsKHRoaXMpfTtGZz1mdW5jdGlvbigpe18uTGEuY2FsbCh0aGlzKX07RGc9ZnVuY3Rpb24oYSl7dGhpcy5qPV8udS5zZXRUaW1lb3V0KCgwLF8uQ2EpKHRoaXMudGhyb3dFcnJvcix0aGlzKSwwKTt0aGlzLm89YX07CkhnPWZ1bmN0aW9uKGEpe3N3aXRjaChhLnR5cGUpe2Nhc2UgR2cuVHlwZS5wbzpyZXR1cm4iVW5hdXRob3JpemVkIjtjYXNlIEdnLlR5cGUucGs6cmV0dXJuIkNvbnNlY3V0aXZlIGxvYWQgZmFpbHVyZXMiO2Nhc2UgR2cuVHlwZS5USU1FT1VUOnJldHVybiJUaW1lZCBvdXQiO2Nhc2UgR2cuVHlwZS5obzpyZXR1cm4iT3V0IG9mIGRhdGUgbW9kdWxlIGlkIjtjYXNlIEdnLlR5cGUudWs6cmV0dXJuIkluaXQgZXJyb3IiO2RlZmF1bHQ6cmV0dXJuYFVua25vd24gZmFpbHVyZSB0eXBlICR7YS50eXBlfWB9fTsKSWc9ZnVuY3Rpb24oKXt0aGlzLmhhPXRoaXMuWT1udWxsO3RoaXMuRD1uZXcgTWFwO3RoaXMuQj1uZXcgU2V0O3RoaXMuSz1bXTt0aGlzLlU9bmV3IFNldDt0aGlzLnY9W107dGhpcy5JPW5ldyBTZXQ7dGhpcy5qPUFlP25ldyBNYXA6e307dGhpcy5NPW5ldyBNYXA7dGhpcy5vPXRoaXMuWj1uZXcgdmEuT2coW10sIiIpO3RoaXMueWE9bnVsbDt0aGlzLmdhPW5ldyB0Zzt0aGlzLkZhPXRoaXMuUWE9dGhpcy5NYT10aGlzLm9hPSExfTtKZz1mdW5jdGlvbihhLGIpe18uTGEuY2FsbCh0aGlzLGBFcnJvciBsb2FkaW5nICR7YX06ICR7Yn1gKX07Ck9nPWZ1bmN0aW9uKGEsYil7aWYoIUtnKXtmb3IodmFyIGM9MDtjPDY0O2MrKylxZ1siQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODktXyIuY2hhckNvZGVBdChjKV09YztLZz0hMH1iPXtidWY6Yixwb3M6Mn07c2coYik7Yz1zZyhiKTt2YXIgZD1zZyhiKSsxLGU9QXJyYXkoYyksZj1BcnJheShjKSxoPUFycmF5KGMpO2Q9QXJyYXkoZCk7dmFyIGs9MCxsPTAsbT1iLmJ1ZixuPWIucG9zLHA9Yi5idWYuaW5kZXhPZigifCIsYi5wb3MpO2IucG9zPXArMTtmb3IocD0wO3A8YztwKyspe3ZhciByPXNnKGIpLHQ9ciYyLHY9ciYxO3I+Pj49Mjt2PyhrKz1yPj4+MV4tKHImMSkscj0ic3kiK2sudG9TdHJpbmcoMzYpKToodj1uLG4rPXIscj1tLnN1YnN0cmluZyh2LG4pKTtlW3BdPXI7dCYmKGRbbCsrXT1yKX1kW2xdPSIiO2IucG9zKys7bD1jJi0yO2s9YyYxO2ZvcihtPTA7bTxsO20rPTIpbj1yZyhiKSxoW21dPW4mNyxoW20rMV09Cm4+Pj4zJjc7ayYmKGs9cmcoYiksaFtsXT1rJjcpO2IucG9zKys7Zm9yKGw9MDtsPGM7bCsrKWhbbF09PT03JiYoaFtsXT1zZyhiKSk7Yi5wb3MrKztsPTA7Zm9yKGs9MDtrPGM7aysrKXttPWhba107bj1tPT09MD9MZzpBcnJheShtKTtmW2tdPW47cD1sO2Zvcih0PTA7dDxtO3QrKylwLT1zZyhiKSxuW3RdPWRbcF07ZFtsXT09PWVba10mJmwrK312YXIge2lkczp6LGRlcGVuZGVuY2llczpFfT17aWRzOmUsZGVwZW5kZW5jaWVzOmZ9O2ZvcihiPTA7Yjx6Lmxlbmd0aDtiKyspTmcoYSx6W2JdLEVbYl0pO2EuaGE9en07Umc9ZnVuY3Rpb24oYSl7dmFyIGI9YS5NYSxjPWEuaXNBY3RpdmUoKTtjIT1iJiYoUGcoYSxjP1FnLk1zOlFnLklETEUpLGEuTWE9Yyk7Yj1hLkZxKCk7YiE9YS5RYSYmKFBnKGEsYj9RZy5odTpRZy5pdSksYS5RYT1iKX07Tmc9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuRC5nZXQoYik7ZD9kLmo9YzphLkQuc2V0KGIsbmV3IHZhLk9nKGMsYikpfTsKVGc9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPW5ldyBTZXQoYik7Yj1bXTt2YXIgZT17fTtmb3IobGV0IGYgb2YgZCl7ZD1hLkxhKGYpO2lmKCFkKXRocm93IEVycm9yKCJVYCIrZik7bGV0IGg9bmV3IHRnO2VbZl09aDtkLmlzTG9hZGVkKCk/aC5jYWxsYmFjayhudWxsKTooU2coYSxmLGQsISFjLGgpLGEudWgoZil8fGIucHVzaChmKSl9Yi5sZW5ndGg+MCYmKGEuQi5zaXplPT09MD9hLnNqKGIpOihhLnYucHVzaChiKSxSZyhhKSkpO3JldHVybiBlfTtTZz1mdW5jdGlvbihhLGIsYyxkLGUpe2dlKGMsZS5jYWxsYmFjayxlKTtoZShjLGZ1bmN0aW9uKGYpe2Y9bmV3IEpnKGIsZik7eGcoZSk7dmcoZSwhMSxmKX0pO2EudWgoYik/ZCYmKGEuSS5hZGQoYiksUmcoYSkpOmQmJmEuSS5hZGQoYil9OwpVZz1mdW5jdGlvbihhLGIpe2lmKCFhLm8uaGFzKGIpJiYoYS5vLmFkZChiKSwhYS5qLlUuaGFzKGIpKSl7dmFyIGM9YS5qLkxhKGIpO2lmKGMmJiFjLmlzTG9hZGVkKCkpe2M9Yy5qO2ZvcihsZXQgZD0wO2Q8Yy5sZW5ndGg7ZCsrKVVnKGEsY1tkXSk7YS5yZXN1bHQucHVzaChiKX19fTtZZz1mdW5jdGlvbihhLGIpe2I9Yi5maWx0ZXIoZT0+YS5ELmdldChlKS5pc0xvYWRlZCgpPyhfLnUuc2V0VGltZW91dCgoKT0+RXJyb3IoIlhgIitlKSwwKSwhMSk6ITApO2lmKFZnKXt2YXIgYz1uZXcgV2coYSk7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspVWcoYyxiW2RdKTtjPWMucmVzdWx0fWVsc2V7Yz1bXTtmb3IoZD0wO2Q8Yi5sZW5ndGg7ZCsrKWM9Yy5jb25jYXQoWGcoYSxiW2RdKSk7QWIoYyl9cmV0dXJuIWEub2EmJmMubGVuZ3RoPjE/KGI9Yy5zaGlmdCgpLGEudj1jLm1hcChmdW5jdGlvbihlKXtyZXR1cm5bZV19KS5jb25jYXQoYS52KSxbYl0pOmN9OwpYZz1mdW5jdGlvbihhLGIpe2lmKFZnKXJldHVybiBhPW5ldyBXZyhhKSxVZyhhLGIpLGEucmVzdWx0O3ZhciBjPVtdO2EuVS5oYXMoYil8fGMucHVzaChiKTtiPVtiXTtmb3IobGV0IGQ9MDtkPGIubGVuZ3RoO2QrKyl7bGV0IGU9YS5MYShiW2RdKS5qO2ZvcihsZXQgZj1lLmxlbmd0aC0xO2Y+PTA7Zi0tKXtsZXQgaD1lW2ZdO2EuTGEoaCkuaXNMb2FkZWQoKXx8YS5VLmhhcyhoKXx8KGMucHVzaChoKSxiLnB1c2goaCkpfX1jLnJldmVyc2UoKTtBYihjKTtyZXR1cm4gY307CmJoPWZ1bmN0aW9uKGEsYixjLGQsZSxmPTAsaD0hMSl7dmFyIGs9aD8wOmYrMTtmPV8ueWIoYyk7YS5LPWI7Zm9yKGxldCBsIG9mIGMpYS5VLmRlbGV0ZShsKTtpZihkPT00MDEpWmcoYSxuZXcgdmEub2IodmEub2IuVHlwZS5wbyxkKSksYS52Lmxlbmd0aD0wO2Vsc2UgaWYoZD09NDEwKSRnKGEsbmV3IHZhLm9iKHZhLm9iLlR5cGUuaG8sZCkpLGFoKGEpO2Vsc2UgaWYoaz49MylbLi4uYS5CXSwkZyhhLG5ldyB2YS5vYih2YS5vYi5UeXBlLnBrLGQsZixlKSksYWgoYSk7ZWxzZXtbLi4uYS5CXTtsZXQgbD1kPT04MDAxfHwhMTsoYz1NYXRoLnBvdyhrLDIpKjVFMyk/Xy51LnNldFRpbWVvdXQoKCk9PnthLnNqKGIsayxsKX0sYyk6YS5zaihiLGssbCl9fTskZz1mdW5jdGlvbihhLGIpe2EuSy5sZW5ndGg+MT9hLnY9YS5LLm1hcChmdW5jdGlvbihjKXtyZXR1cm5bY119KS5jb25jYXQoYS52KTpaZyhhLGIpfTsKWmc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLks7YS5CLmNsZWFyKCk7dmFyIGQ9W107Zm9yKHZhciBlPTA7ZTxhLnYubGVuZ3RoO2UrKyl7dmFyIGY9YS52W2VdLmZpbHRlcihmdW5jdGlvbihoKXt2YXIgaz1YZyh0aGlzLGgpO3JldHVybiBfLnViKGMsZnVuY3Rpb24obCl7cmV0dXJuIF8uc2IoayxsKT49MH0pfSxhKTt6YihkLGYpfWZvcihlPTA7ZTxjLmxlbmd0aDtlKyspd2IoZCxjW2VdKTtmb3IoZT0wO2U8ZC5sZW5ndGg7ZSsrKXtmb3IoZj0wO2Y8YS52Lmxlbmd0aDtmKyspXy54YihhLnZbZl0sZFtlXSk7YS5JLmRlbGV0ZShkW2VdKX1pZihlPWEuTS5nZXQoUWcuRVJST1IpKWZvcihmPTA7ZjxlLmxlbmd0aDtmKyspe2xldCBoPWVbZl07Zm9yKGxldCBrPTA7azxkLmxlbmd0aDtrKyspaChRZy5FUlJPUixkW2tdLGIpfWZvcihkPTA7ZDxjLmxlbmd0aDtkKyspaWYoZT1hLkQuZ2V0KGNbZF0pKWUub25FcnJvcihiKTthLksubGVuZ3RoPTA7UmcoYSl9OwphaD1mdW5jdGlvbihhKXtmb3IoO2Eudi5sZW5ndGg7KXtsZXQgYj1hLnYuc2hpZnQoKS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIXRoaXMuTGEoYykuaXNMb2FkZWQoKX0sYSk7aWYoYi5sZW5ndGg+MCl7YS5zaihiKTtyZXR1cm59fVJnKGEpfTtQZz1mdW5jdGlvbihhLGIpe2E9YS5NLmdldChiKTtmb3IobGV0IGM9MDthJiZjPGEubGVuZ3RoO2MrKylhW2NdKGIpfTtjaD1mdW5jdGlvbihhLGIsYyxkLGUpe2ZvcihsZXQgZiBvZiBiKWI9YS5MYShmKSwhZS5oYXMoZikmJmQoYikmJihlLmFkZChmKSxjaChhLGIuanx8W10sYyxkLGUpLGMoYikpfTsKZmg9ZnVuY3Rpb24oKXt2YXIgYT17RXU6IkJBVENIIn0sYj1hLmNzc1Jvd0tleXx8IiIsYz1hLktlfHwiIjshYS54SSYmIWImJndpbmRvdyYmd2luZG93Ll9GX2Nzc1Jvd0tleSYmKGI9d2luZG93Ll9GX2Nzc1Jvd0tleSwhYyYmd2luZG93Ll9GX2NvbWJpbmVkU2lnbmF0dXJlJiYoYz13aW5kb3cuX0ZfY29tYmluZWRTaWduYXR1cmUpKTtpZighYS5jc3NSb3dLZXkmJmImJnR5cGVvZiB3aW5kb3cuX0ZfaW5zdGFsbENzcyE9PSJmdW5jdGlvbiIpdGhyb3cgRXJyb3IoIloiKTt2YXIgZD1hLk5KfHxfLmRoLGU9RWUoImJhc2UtanMiKTtiPW5ldyBkKEdiKEZlKCIiLGUpKSxiLGMsITAsITEpO2M9YS5wTHx8ZSYmZS5oYXNBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIik7ZT1hLmxJfHxlJiZlLmdldEF0dHJpYnV0ZSgiY3Jvc3NvcmlnaW4iKTtjJiYoYi5maT1jKTtlJiYoYi5XZz1lKTthLmRpJiYoYi5kaT1hLmRpKTthLmZldGNoUHJpb3JpdHkmJihiLmZldGNoUHJpb3JpdHk9YS5mZXRjaFByaW9yaXR5KTsKdmFyIGY9Xy5WZCgpO2YuWT1iO2YuUnIoITApO18uZWg9YS5FdT09PSJCQVRDSCI/cmY6aD0+UHJvbWlzZS5yZXNvbHZlKGYubG9hZChoKSl9O2loPWZ1bmN0aW9uKGEsYil7Yj1iLmZpbHRlcihjPT4hYS51aChjKSYmIWEuTGEoYykuaXNMb2FkZWQoKSk7Yi5sZW5ndGg+MCYmKGdoKGEsLi4uYiksYS5LLnB1c2goYiksaGgoYSkpfTtqaD1mdW5jdGlvbihhLGIpe3JldHVybiBuZXcgXy5CZigoYyxkKT0+e3ZhciBlPWEuTGEoYik7ZS5pc0xvYWRlZCgpP2MobnVsbCk6KGdlKGUsKCk9PntjKG51bGwpfSksaGUoZSxmPT57dmFyIGg9YEVycm9yIGxvYWRpbmcgJHtifTogJHtmfWA7ZiBpbnN0YW5jZW9mIHZhLm9iJiZmLnVybCYmKGg9YCR7aH0sIHJlcXVlc3RlZCB1cmw6ICR7Zi51cmwudG9TdHJpbmcoKX1gKTtkKEVycm9yKGgpKX0pKX0pfTsKa2g9ZnVuY3Rpb24oYSxiLGMsZD0oKT0+ITAsZT17fSl7Zm9yKGxldCBmIG9mIGIpYj1hLkxhKGYpLCFlW2ZdJiZkKGIpJiYoZVtmXT0hMCxraChhLGIuanx8W10sYyxkLGUpLGMoYikpfTtsaD1mdW5jdGlvbihhLC4uLmIpe2IuZm9yRWFjaChjPT57ZGVsZXRlIGEuRFtjXX0pfTtnaD1mdW5jdGlvbihhLC4uLmIpe2IuZm9yRWFjaChjPT57YS5EW2NdPSEwfSl9OwpoaD1mdW5jdGlvbihhKXtmb3IoO2EuQjxJbmZpbml0eSYmYS5LLmxlbmd0aD4wOyl7bGV0IGI9YS5LLnNoaWZ0KCkuZmlsdGVyKGM9PiFhLkxhKGMpLmlzTG9hZGVkKCkpO2lmKGIubGVuZ3RoPjApe2EuQisrO2xldCBjPSgpPT57YS5CLS07aGgoYSk7Yz0oKT0+e319O18uSWYoYi5tYXAoZj0+amgoYSxmKSkpLnRoZW4oKCk9PntjKCl9KTtsZXQgZD0wLGU9KCk9PntpZigoYS5qIGluc3RhbmNlb2YgTWFwP2Euai5zaXplPjA6T2JqZWN0LmtleXMoYS5qKS5sZW5ndGg+MCkmJiFhLlkuRWIpdGhyb3cgRXJyb3IoIlciKTtmZyhhLlksYixhLnYse1lkOmEuaixvbkVycm9yOihmLGgpPT57dmFyIGs9bWhbZCsrXTtrIT09dm9pZCAwP3NldFRpbWVvdXQoKCk9PntlKCl9LGspOihsaChhLC4uLmIpLGMoKSxiLmZvckVhY2gobD0+e2w9YS5MYShsKTtpZighbC5pc0xvYWRlZCgpKWwub25FcnJvcihuZXcgdmEub2IodmEub2IuVHlwZS5wayxmLGIsaCkpfSkpfX0pfTtlKCl9fX07Cm5oPWZ1bmN0aW9uKGEpe2Euaj09PS0xJiYoYS5qPWEuZGF0YS5yZWR1Y2UoKGIsYyxkKT0+YisoYz8yKipkOjApLDApKTtyZXR1cm4gYS5qfTtfLm9oPWZ1bmN0aW9uKCl7fTtfLnNoPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBwaHx8YSBpbnN0YW5jZW9mIHFofHxhIGluc3RhbmNlb2YgcmgpcmV0dXJuIGE7aWYodHlwZW9mIGEubmV4dD09ImZ1bmN0aW9uIilyZXR1cm4gbmV3IHBoKCgpPT5hKTtpZih0eXBlb2YgYVtTeW1ib2wuaXRlcmF0b3JdPT0iZnVuY3Rpb24iKXJldHVybiBuZXcgcGgoKCk9PmFbU3ltYm9sLml0ZXJhdG9yXSgpKTtpZih0eXBlb2YgYS5iZD09ImZ1bmN0aW9uIilyZXR1cm4gbmV3IHBoKCgpPT5hLmJkKCkpO3Rocm93IEVycm9yKCIkIik7fTtfLnRoPWZ1bmN0aW9uKGEpe18uYWUuY2FsbCh0aGlzKTt0aGlzLkQ9MTt0aGlzLnY9W107dGhpcy5CPTA7dGhpcy5qPVtdO3RoaXMubz17fTt0aGlzLkk9ISFhfTsKdWg9ZnVuY3Rpb24oYSxiLGMpe0dmKGZ1bmN0aW9uKCl7YS5hcHBseShiLGMpfSl9O3ZoPWZ1bmN0aW9uKGEpe3RoaXMuaj1hfTt3aD1mdW5jdGlvbihhKXt0aGlzLmo9YX07eGg9ZnVuY3Rpb24oYSl7dGhpcy5kYXRhPWF9O3loPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09dm9pZCAwfHxhIGluc3RhbmNlb2YgeGg/YTpuZXcgeGgoYSl9O18uemg9ZnVuY3Rpb24oYSl7dGhpcy5qPWF9O0FoPWZ1bmN0aW9uKCl7fTtCaD1mdW5jdGlvbigpe307Q2g9ZnVuY3Rpb24oYSl7dGhpcy5qPWE7dGhpcy5vPW51bGx9O0RoPWZ1bmN0aW9uKGEpe2lmKGEuaj09bnVsbCl0aHJvdyBFcnJvcigiYWEiKTthLmlzQXZhaWxhYmxlKCl8fF8uJGIoRXJyb3IoImFhIikpfTtFaD1mdW5jdGlvbigpe3ZhciBhPW51bGw7dHJ5e2E9Xy51LmxvY2FsU3RvcmFnZXx8bnVsbH1jYXRjaChiKXt9Q2guY2FsbCh0aGlzLGEpfTtGaD1mdW5jdGlvbihhLGIpe3RoaXMubz1hO3RoaXMuaj1iKyI6OiJ9OwpfLkdoPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBFaDtyZXR1cm4gYi5pc0F2YWlsYWJsZSgpP2E/bmV3IEZoKGIsYSk6YjpudWxsfTsKSWg9ZnVuY3Rpb24oYSl7dmFyIGIsYyxkPWEubGVuZ3RoLGU9MDtmb3IoYj0wO2I8ZDtiKyspe3ZhciBmPWEuY2hhckNvZGVBdChiKTtpZigoZiY2NDUxMik9PT01NTI5NiYmYisxPGQpe3ZhciBoPWEuY2hhckNvZGVBdChiKzEpOyhoJjY0NTEyKT09PTU2MzIwJiYoZj02NTUzNisoZi01NTI5Njw8MTApKyhoLTU2MzIwKSxiKyspfWUrPWY8MTI4PzE6ZjwyMDQ4PzI6Zjw2NTUzNj8zOjR9dmFyIGs9bmV3IEhoLnRmKGUpO2ZvcihiPWM9MDtjPGU7YisrKWY9YS5jaGFyQ29kZUF0KGIpLChmJjY0NTEyKT09PTU1Mjk2JiZiKzE8ZCYmKGg9YS5jaGFyQ29kZUF0KGIrMSksKGgmNjQ1MTIpPT09NTYzMjAmJihmPTY1NTM2KyhmLTU1Mjk2PDwxMCkrKGgtNTYzMjApLGIrKykpLGY8MTI4P2tbYysrXT1mOihmPDIwNDg/a1tjKytdPTE5MnxmPj4+NjooZjw2NTUzNj9rW2MrK109MjI0fGY+Pj4xMjooa1tjKytdPTI0MHxmPj4+MTgsa1tjKytdPTEyOHxmPj4+MTImNjMpLGtbYysrXT0xMjh8Zj4+Pgo2JjYzKSxrW2MrK109MTI4fGYmNjMpO3JldHVybiBrfTtKaD1mdW5jdGlvbihhKXtmb3IodmFyIGI9YS5sZW5ndGg7LS1iPj0wOylhW2JdPTB9O0toPWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5Zcj1hO3RoaXMuVXY9Yjt0aGlzLlR2PWM7dGhpcy54dj1kO3RoaXMuRnk9ZTt0aGlzLmVxPWEmJmEubGVuZ3RofTtMaD1mdW5jdGlvbihhLGIpe3RoaXMuRXA9YTt0aGlzLmxnPTA7dGhpcy56ZT1ifTtNaD1mdW5jdGlvbihhLGIpe2EuT2FbYS5wZW5kaW5nKytdPWImMjU1O2EuT2FbYS5wZW5kaW5nKytdPWI+Pj44JjI1NX07Tmg9ZnVuY3Rpb24oYSxiLGMpe2EuaGI+MTYtYz8oYS5GYnw9Yjw8YS5oYiY2NTUzNSxNaChhLGEuRmIpLGEuRmI9Yj4+MTYtYS5oYixhLmhiKz1jLTE2KTooYS5GYnw9Yjw8YS5oYiY2NTUzNSxhLmhiKz1jKX07T2g9ZnVuY3Rpb24oYSxiLGMpe05oKGEsY1tiKjJdLGNbYioyKzFdKX07ClBoPWZ1bmN0aW9uKGEsYil7dmFyIGM9MDtkbyBjfD1hJjEsYT4+Pj0xLGM8PD0xO3doaWxlKC0tYj4wKTtyZXR1cm4gYz4+PjF9O1FoPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1BcnJheSgxNiksZT0wLGY7Zm9yKGY9MTtmPD0xNTtmKyspZFtmXT1lPWUrY1tmLTFdPDwxO2ZvcihjPTA7Yzw9YjtjKyspZT1hW2MqMisxXSxlIT09MCYmKGFbYyoyXT1QaChkW2VdKyssZSkpfTtSaD1mdW5jdGlvbihhKXt2YXIgYjtmb3IoYj0wO2I8Mjg2O2IrKylhLlFiW2IqMl09MDtmb3IoYj0wO2I8MzA7YisrKWEuUGVbYioyXT0wO2ZvcihiPTA7YjwxOTtiKyspYS5xYltiKjJdPTA7YS5RYls1MTJdPTE7YS5DZD1hLkhnPTA7YS5rYz1hLm1hdGNoZXM9MH07U2g9ZnVuY3Rpb24oYSl7YS5oYj44P01oKGEsYS5GYik6YS5oYj4wJiYoYS5PYVthLnBlbmRpbmcrK109YS5GYik7YS5GYj0wO2EuaGI9MH07ClRoPWZ1bmN0aW9uKGEsYixjKXtTaChhKTtNaChhLGMpO01oKGEsfmMpO0hoLndmKGEuT2EsYS53aW5kb3csYixjLGEucGVuZGluZyk7YS5wZW5kaW5nKz1jfTtVaD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1iKjIsZj1jKjI7cmV0dXJuIGFbZV08YVtmXXx8YVtlXT09PWFbZl0mJmRbYl08PWRbY119O1ZoPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9YS5oZWFwW2NdLGU9Yzw8MTtlPD1hLnhkOyl7ZTxhLnhkJiZVaChiLGEuaGVhcFtlKzFdLGEuaGVhcFtlXSxhLmRlcHRoKSYmZSsrO2lmKFVoKGIsZCxhLmhlYXBbZV0sYS5kZXB0aCkpYnJlYWs7YS5oZWFwW2NdPWEuaGVhcFtlXTtjPWU7ZTw8PTF9YS5oZWFwW2NdPWR9OwpjaT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9MDtpZihhLmtjIT09MCl7ZG97dmFyIGU9YS5PYVthLllnK2QqMl08PDh8YS5PYVthLllnK2QqMisxXTt2YXIgZj1hLk9hW2Eua20rZF07ZCsrO2lmKGU9PT0wKU9oKGEsZixiKTtlbHNle3ZhciBoPVdoW2ZdO09oKGEsaCsyNTYrMSxiKTt2YXIgaz1YaFtoXTtrIT09MCYmKGYtPVloW2hdLE5oKGEsZixrKSk7ZS0tO2g9ZTwyNTY/WmhbZV06WmhbMjU2KyhlPj4+NyldO09oKGEsaCxjKTtrPSRoW2hdO2shPT0wJiYoZS09YmlbaF0sTmgoYSxlLGspKX19d2hpbGUoZDxhLmtjKX1PaChhLDI1NixiKX07CmRpPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5FcCxkPWIuemUuWXIsZT1iLnplLmVxLGY9Yi56ZS54dixoLGs9LTE7YS54ZD0wO2EuWGY9NTczO2ZvcihoPTA7aDxmO2grKyljW2gqMl0hPT0wPyhhLmhlYXBbKythLnhkXT1rPWgsYS5kZXB0aFtoXT0wKTpjW2gqMisxXT0wO2Zvcig7YS54ZDwyOyl7dmFyIGw9YS5oZWFwWysrYS54ZF09azwyPysrazowO2NbbCoyXT0xO2EuZGVwdGhbbF09MDthLkNkLS07ZSYmKGEuSGctPWRbbCoyKzFdKX1iLmxnPWs7Zm9yKGg9YS54ZD4+MTtoPj0xO2gtLSlWaChhLGMsaCk7bD1mO2RvIGg9YS5oZWFwWzFdLGEuaGVhcFsxXT1hLmhlYXBbYS54ZC0tXSxWaChhLGMsMSksZD1hLmhlYXBbMV0sYS5oZWFwWy0tYS5YZl09aCxhLmhlYXBbLS1hLlhmXT1kLGNbbCoyXT1jW2gqMl0rY1tkKjJdLGEuZGVwdGhbbF09KGEuZGVwdGhbaF0+PWEuZGVwdGhbZF0/YS5kZXB0aFtoXTphLmRlcHRoW2RdKSsxLGNbaCoyKzFdPWNbZCoyKzFdPWwsYS5oZWFwWzFdPWwrKywKVmgoYSxjLDEpO3doaWxlKGEueGQ+PTIpO2EuaGVhcFstLWEuWGZdPWEuaGVhcFsxXTtoPWIuRXA7bD1iLmxnO2Q9Yi56ZS5ZcjtlPWIuemUuZXE7Zj1iLnplLlV2O3ZhciBtPWIuemUuVHYsbj1iLnplLkZ5LHAscj0wO2ZvcihwPTA7cDw9MTU7cCsrKWEua2RbcF09MDtoW2EuaGVhcFthLlhmXSoyKzFdPTA7Zm9yKGI9YS5YZisxO2I8NTczO2IrKyl7dmFyIHQ9YS5oZWFwW2JdO3A9aFtoW3QqMisxXSoyKzFdKzE7cD5uJiYocD1uLHIrKyk7aFt0KjIrMV09cDtpZighKHQ+bCkpe2Eua2RbcF0rKzt2YXIgdj0wO3Q+PW0mJih2PWZbdC1tXSk7dmFyIHo9aFt0KjJdO2EuQ2QrPXoqKHArdik7ZSYmKGEuSGcrPXoqKGRbdCoyKzFdK3YpKX19aWYociE9PTApe2Rve2ZvcihwPW4tMTthLmtkW3BdPT09MDspcC0tO2Eua2RbcF0tLTthLmtkW3ArMV0rPTI7YS5rZFtuXS0tO3ItPTJ9d2hpbGUocj4wKTtmb3IocD1uO3AhPT0wO3AtLSlmb3IodD1hLmtkW3BdO3QhPT0wOylkPWEuaGVhcFstLWJdLApkPmx8fChoW2QqMisxXSE9PXAmJihhLkNkKz0ocC1oW2QqMisxXSkqaFtkKjJdLGhbZCoyKzFdPXApLHQtLSl9UWgoYyxrLGEua2QpfTtlaT1mdW5jdGlvbihhLGIsYyl7dmFyIGQsZT0tMSxmPWJbMV0saD0wLGs9NyxsPTQ7Zj09PTAmJihrPTEzOCxsPTMpO2JbKGMrMSkqMisxXT02NTUzNTtmb3IoZD0wO2Q8PWM7ZCsrKXt2YXIgbT1mO2Y9YlsoZCsxKSoyKzFdOysraDxrJiZtPT09Znx8KGg8bD9hLnFiW20qMl0rPWg6bSE9PTA/KG0hPT1lJiZhLnFiW20qMl0rKyxhLnFiWzMyXSsrKTpoPD0xMD9hLnFiWzM0XSsrOmEucWJbMzZdKyssaD0wLGU9bSxmPT09MD8oaz0xMzgsbD0zKTptPT09Zj8oaz02LGw9Myk6KGs9NyxsPTQpKX19OwpmaT1mdW5jdGlvbihhLGIsYyl7dmFyIGQsZT0tMSxmPWJbMV0saD0wLGs9NyxsPTQ7Zj09PTAmJihrPTEzOCxsPTMpO2ZvcihkPTA7ZDw9YztkKyspe3ZhciBtPWY7Zj1iWyhkKzEpKjIrMV07aWYoISgrK2g8ayYmbT09PWYpKXtpZihoPGwpe2RvIE9oKGEsbSxhLnFiKTt3aGlsZSgtLWghPT0wKX1lbHNlIG0hPT0wPyhtIT09ZSYmKE9oKGEsbSxhLnFiKSxoLS0pLE9oKGEsMTYsYS5xYiksTmgoYSxoLTMsMikpOmg8PTEwPyhPaChhLDE3LGEucWIpLE5oKGEsaC0zLDMpKTooT2goYSwxOCxhLnFiKSxOaChhLGgtMTEsNykpO2g9MDtlPW07Zj09PTA/KGs9MTM4LGw9Myk6bT09PWY/KGs9NixsPTMpOihrPTcsbD00KX19fTsKZ2k9ZnVuY3Rpb24oYSl7dmFyIGI9NDA5MzYyNDQ0NyxjO2ZvcihjPTA7Yzw9MzE7YysrLGI+Pj49MSlpZihiJjEmJmEuUWJbYyoyXSE9PTApcmV0dXJuIDA7aWYoYS5RYlsxOF0hPT0wfHxhLlFiWzIwXSE9PTB8fGEuUWJbMjZdIT09MClyZXR1cm4gMTtmb3IoYz0zMjtjPDI1NjtjKyspaWYoYS5RYltjKjJdIT09MClyZXR1cm4gMTtyZXR1cm4gMH07aGk9ZnVuY3Rpb24oYSxiLGMpe2EuT2FbYS5ZZythLmtjKjJdPWI+Pj44JjI1NTthLk9hW2EuWWcrYS5rYyoyKzFdPWImMjU1O2EuT2FbYS5rbSthLmtjXT1jJjI1NTthLmtjKys7Yj09PTA/YS5RYltjKjJdKys6KGEubWF0Y2hlcysrLGItLSxhLlFiWyhXaFtjXSsyNTYrMSkqMl0rKyxhLlBlWyhiPDI1Nj9aaFtiXTpaaFsyNTYrKGI+Pj43KV0pKjJdKyspO3JldHVybiBhLmtjPT09YS5BaC0xfTtqaT1mdW5jdGlvbihhLGIpe2EubXNnPWlpW2JdO3JldHVybiBifTsKa2k9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPWEubGVuZ3RoOy0tYj49MDspYVtiXT0wfTtsaT1mdW5jdGlvbihhKXt2YXIgYj1hLnN0YXRlLGM9Yi5wZW5kaW5nO2M+YS56YSYmKGM9YS56YSk7YyE9PTAmJihIaC53ZihhLm91dHB1dCxiLk9hLGIuSmgsYyxhLnFnKSxhLnFnKz1jLGIuSmgrPWMsYS5Fbis9YyxhLnphLT1jLGIucGVuZGluZy09YyxiLnBlbmRpbmc9PT0wJiYoYi5KaD0wKSl9OwpwaT1mdW5jdGlvbihhLGIpe3ZhciBjPWEuVWI+PTA/YS5VYjotMSxkPWEuVi1hLlViLGU9MDtpZihhLmxldmVsPjApe2Eud2EuaWw9PT0yJiYoYS53YS5pbD1naShhKSk7ZGkoYSxhLnBqKTtkaShhLGEuSWkpO2VpKGEsYS5RYixhLnBqLmxnKTtlaShhLGEuUGUsYS5JaS5sZyk7ZGkoYSxhLlRvKTtmb3IoZT0xODtlPj0zJiZhLnFiW21pW2VdKjIrMV09PT0wO2UtLSk7YS5DZCs9MyooZSsxKSs1KzUrNDt2YXIgZj1hLkNkKzMrNz4+PjM7dmFyIGg9YS5IZyszKzc+Pj4zO2g8PWYmJihmPWgpfWVsc2UgZj1oPWQrNTtpZihkKzQ8PWYmJmMhPT0tMSlOaChhLGI/MTowLDMpLFRoKGEsYyxkKTtlbHNlIGlmKGEuc3RyYXRlZ3k9PT00fHxoPT09ZilOaChhLDIrKGI/MTowKSwzKSxjaShhLG5pLG9pKTtlbHNle05oKGEsNCsoYj8xOjApLDMpO2M9YS5wai5sZysxO2Q9YS5JaS5sZysxO2UrPTE7TmgoYSxjLTI1Nyw1KTtOaChhLGQtMSw1KTtOaChhLGUtNCw0KTtmb3IoZj0wO2Y8ZTtmKyspTmgoYSwKYS5xYlttaVtmXSoyKzFdLDMpO2ZpKGEsYS5RYixjLTEpO2ZpKGEsYS5QZSxkLTEpO2NpKGEsYS5RYixhLlBlKX1SaChhKTtiJiZTaChhKTthLlViPWEuVjtsaShhLndhKX07cWk9ZnVuY3Rpb24oYSxiKXthLk9hW2EucGVuZGluZysrXT1ifTtyaT1mdW5jdGlvbihhLGIpe2EuT2FbYS5wZW5kaW5nKytdPWI+Pj44JjI1NTthLk9hW2EucGVuZGluZysrXT1iJjI1NX07CnNpPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5OcSxkPWEuVixlPWEuWWIsZj1hLlNxLGg9YS5WPmEuQmItMjYyP2EuVi0oYS5CYi0yNjIpOjAsaz1hLndpbmRvdyxsPWEuQmUsbT1hLlVhLG49YS5WKzI1OCxwPWtbZCtlLTFdLHI9a1tkK2VdO2EuWWI+PWEuWXAmJihjPj49Mik7Zj5hLmRhJiYoZj1hLmRhKTtkb3t2YXIgdD1iO2lmKGtbdCtlXT09PXImJmtbdCtlLTFdPT09cCYma1t0XT09PWtbZF0mJmtbKyt0XT09PWtbZCsxXSl7ZCs9Mjtmb3IodCsrO2tbKytkXT09PWtbKyt0XSYma1srK2RdPT09a1srK3RdJiZrWysrZF09PT1rWysrdF0mJmtbKytkXT09PWtbKyt0XSYma1srK2RdPT09a1srK3RdJiZrWysrZF09PT1rWysrdF0mJmtbKytkXT09PWtbKyt0XSYma1srK2RdPT09a1srK3RdJiZkPG47KTt0PTI1OC0obi1kKTtkPW4tMjU4O2lmKHQ+ZSl7YS5rZz1iO2U9dDtpZih0Pj1mKWJyZWFrO3A9a1tkK2UtMV07cj1rW2QrZV19fX13aGlsZSgoYj1tW2ImbF0pPmgmJi0tYyE9PTApOwpyZXR1cm4gZTw9YS5kYT9lOmEuZGF9Owp2aT1mdW5jdGlvbihhKXt2YXIgYj1hLkJiLGM7ZG97dmFyIGQ9YS5Lcy1hLmRhLWEuVjtpZihhLlY+PWIrKGItMjYyKSl7SGgud2YoYS53aW5kb3csYS53aW5kb3csYixiLDApO2Eua2ctPWI7YS5WLT1iO2EuVWItPWI7dmFyIGU9Yz1hLmFqO2Rve3ZhciBmPWEuaGVhZFstLWVdO2EuaGVhZFtlXT1mPj1iP2YtYjowfXdoaWxlKC0tYyk7ZT1jPWI7ZG8gZj1hLlVhWy0tZV0sYS5VYVtlXT1mPj1iP2YtYjowO3doaWxlKC0tYyk7ZCs9Yn1pZihhLndhLkRiPT09MClicmVhaztlPWEud2E7Yz1hLndpbmRvdztmPWEuVithLmRhO3ZhciBoPWUuRGI7aD5kJiYoaD1kKTtoPT09MD9jPTA6KGUuRGItPWgsSGgud2YoYyxlLmlucHV0LGUuZmYsaCxmKSxlLnN0YXRlLndyYXA9PT0xP2Uuc2E9dGkoZS5zYSxjLGgsZik6ZS5zdGF0ZS53cmFwPT09MiYmKGUuc2E9dWkoZS5zYSxjLGgsZikpLGUuZmYrPWgsZS5xZis9aCxjPWgpO2EuZGErPWM7aWYoYS5kYSthLnJiPj0zKWZvcihkPWEuVi1hLnJiLGEueGE9CmEud2luZG93W2RdLGEueGE9KGEueGE8PGEud2ReYS53aW5kb3dbZCsxXSkmYS52ZDthLnJiJiYhKGEueGE9KGEueGE8PGEud2ReYS53aW5kb3dbZCszLTFdKSZhLnZkLGEuVWFbZCZhLkJlXT1hLmhlYWRbYS54YV0sYS5oZWFkW2EueGFdPWQsZCsrLGEucmItLSxhLmRhK2EucmI8Myk7KTt9d2hpbGUoYS5kYTwyNjImJmEud2EuRGIhPT0wKX07CndpPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjOzspe2lmKGEuZGE8MjYyKXt2aShhKTtpZihhLmRhPDI2MiYmYj09PTApcmV0dXJuIDE7aWYoYS5kYT09PTApYnJlYWt9Yz0wO2EuZGE+PTMmJihhLnhhPShhLnhhPDxhLndkXmEud2luZG93W2EuViszLTFdKSZhLnZkLGM9YS5VYVthLlYmYS5CZV09YS5oZWFkW2EueGFdLGEuaGVhZFthLnhhXT1hLlYpO2MhPT0wJiZhLlYtYzw9YS5CYi0yNjImJihhLkJhPXNpKGEsYykpO2lmKGEuQmE+PTMpaWYoYz1oaShhLGEuVi1hLmtnLGEuQmEtMyksYS5kYS09YS5CYSxhLkJhPD1hLm9tJiZhLmRhPj0zKXthLkJhLS07ZG8gYS5WKyssYS54YT0oYS54YTw8YS53ZF5hLndpbmRvd1thLlYrMy0xXSkmYS52ZCxhLlVhW2EuViZhLkJlXT1hLmhlYWRbYS54YV0sYS5oZWFkW2EueGFdPWEuVjt3aGlsZSgtLWEuQmEhPT0wKTthLlYrK31lbHNlIGEuVis9YS5CYSxhLkJhPTAsYS54YT1hLndpbmRvd1thLlZdLGEueGE9KGEueGE8PGEud2ReYS53aW5kb3dbYS5WKwoxXSkmYS52ZDtlbHNlIGM9aGkoYSwwLGEud2luZG93W2EuVl0pLGEuZGEtLSxhLlYrKztpZihjJiYocGkoYSwhMSksYS53YS56YT09PTApKXJldHVybiAxfWEucmI9YS5WPDI/YS5WOjI7cmV0dXJuIGI9PT00PyhwaShhLCEwKSxhLndhLnphPT09MD8zOjQpOmEua2MmJihwaShhLCExKSxhLndhLnphPT09MCk/MToyfTsKeGk9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGMsZDs7KXtpZihhLmRhPDI2Mil7dmkoYSk7aWYoYS5kYTwyNjImJmI9PT0wKXJldHVybiAxO2lmKGEuZGE9PT0wKWJyZWFrfWM9MDthLmRhPj0zJiYoYS54YT0oYS54YTw8YS53ZF5hLndpbmRvd1thLlYrMy0xXSkmYS52ZCxjPWEuVWFbYS5WJmEuQmVdPWEuaGVhZFthLnhhXSxhLmhlYWRbYS54YV09YS5WKTthLlliPWEuQmE7YS5Bcj1hLmtnO2EuQmE9MjtjIT09MCYmYS5ZYjxhLm9tJiZhLlYtYzw9YS5CYi0yNjImJihhLkJhPXNpKGEsYyksYS5CYTw9NSYmKGEuc3RyYXRlZ3k9PT0xfHxhLkJhPT09MyYmYS5WLWEua2c+NDA5NikmJihhLkJhPTIpKTtpZihhLlliPj0zJiZhLkJhPD1hLlliKXtkPWEuVithLmRhLTM7Yz1oaShhLGEuVi0xLWEuQXIsYS5ZYi0zKTthLmRhLT1hLlliLTE7YS5ZYi09MjtkbysrYS5WPD1kJiYoYS54YT0oYS54YTw8YS53ZF5hLndpbmRvd1thLlYrMy0xXSkmYS52ZCxhLlVhW2EuViZhLkJlXT1hLmhlYWRbYS54YV0sCmEuaGVhZFthLnhhXT1hLlYpO3doaWxlKC0tYS5ZYiE9PTApO2EuY2Y9MDthLkJhPTI7YS5WKys7aWYoYyYmKHBpKGEsITEpLGEud2EuemE9PT0wKSlyZXR1cm4gMX1lbHNlIGlmKGEuY2Ype2lmKChjPWhpKGEsMCxhLndpbmRvd1thLlYtMV0pKSYmcGkoYSwhMSksYS5WKyssYS5kYS0tLGEud2EuemE9PT0wKXJldHVybiAxfWVsc2UgYS5jZj0xLGEuVisrLGEuZGEtLX1hLmNmJiYoaGkoYSwwLGEud2luZG93W2EuVi0xXSksYS5jZj0wKTthLnJiPWEuVjwyP2EuVjoyO3JldHVybiBiPT09ND8ocGkoYSwhMCksYS53YS56YT09PTA/Mzo0KTphLmtjJiYocGkoYSwhMSksYS53YS56YT09PTApPzE6Mn07CnlpPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjLGQsZSxmPWEud2luZG93Ozspe2lmKGEuZGE8PTI1OCl7dmkoYSk7aWYoYS5kYTw9MjU4JiZiPT09MClyZXR1cm4gMTtpZihhLmRhPT09MClicmVha31hLkJhPTA7aWYoYS5kYT49MyYmYS5WPjAmJihkPWEuVi0xLGM9ZltkXSxjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdKSl7Zm9yKGU9YS5WKzI1ODtjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZjPT09ZlsrK2RdJiZkPGU7KTthLkJhPTI1OC0oZS1kKTthLkJhPmEuZGEmJihhLkJhPWEuZGEpfWEuQmE+PTM/KGM9aGkoYSwxLGEuQmEtMyksYS5kYS09YS5CYSxhLlYrPWEuQmEsYS5CYT0wKTooYz1oaShhLDAsYS53aW5kb3dbYS5WXSksYS5kYS0tLGEuVisrKTtpZihjJiYocGkoYSwhMSksYS53YS56YT09PTApKXJldHVybiAxfWEucmI9MDtyZXR1cm4gYj09PTQ/KHBpKGEsCiEwKSxhLndhLnphPT09MD8zOjQpOmEua2MmJihwaShhLCExKSxhLndhLnphPT09MCk/MToyfTt6aT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYzs7KXtpZihhLmRhPT09MCYmKHZpKGEpLGEuZGE9PT0wKSl7aWYoYj09PTApcmV0dXJuIDE7YnJlYWt9YS5CYT0wO2M9aGkoYSwwLGEud2luZG93W2EuVl0pO2EuZGEtLTthLlYrKztpZihjJiYocGkoYSwhMSksYS53YS56YT09PTApKXJldHVybiAxfWEucmI9MDtyZXR1cm4gYj09PTQ/KHBpKGEsITApLGEud2EuemE9PT0wPzM6NCk6YS5rYyYmKHBpKGEsITEpLGEud2EuemE9PT0wKT8xOjJ9O0FpPWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy50dz1hO3RoaXMuRXk9Yjt0aGlzLld5PWM7dGhpcy5EeT1kO3RoaXMua3c9ZX07CkJpPWZ1bmN0aW9uKCl7dGhpcy53YT1udWxsO3RoaXMuc3RhdHVzPTA7dGhpcy5PYT1udWxsO3RoaXMud3JhcD10aGlzLnBlbmRpbmc9dGhpcy5KaD10aGlzLm5jPTA7dGhpcy5xYT1udWxsO3RoaXMuemM9MDt0aGlzLm1ldGhvZD04O3RoaXMuaWc9LTE7dGhpcy5CZT10aGlzLk5uPXRoaXMuQmI9MDt0aGlzLndpbmRvdz1udWxsO3RoaXMuS3M9MDt0aGlzLmhlYWQ9dGhpcy5VYT1udWxsO3RoaXMuU3E9dGhpcy5ZcD10aGlzLnN0cmF0ZWd5PXRoaXMubGV2ZWw9dGhpcy5vbT10aGlzLk5xPXRoaXMuWWI9dGhpcy5kYT10aGlzLmtnPXRoaXMuVj10aGlzLmNmPXRoaXMuQXI9dGhpcy5CYT10aGlzLlViPXRoaXMud2Q9dGhpcy52ZD10aGlzLkxsPXRoaXMuYWo9dGhpcy54YT0wO3RoaXMuUWI9bmV3IEhoLlljKDExNDYpO3RoaXMuUGU9bmV3IEhoLlljKDEyMik7dGhpcy5xYj1uZXcgSGguWWMoNzgpO2tpKHRoaXMuUWIpO2tpKHRoaXMuUGUpO2tpKHRoaXMucWIpO3RoaXMuVG89dGhpcy5JaT0KdGhpcy5waj1udWxsO3RoaXMua2Q9bmV3IEhoLlljKDE2KTt0aGlzLmhlYXA9bmV3IEhoLlljKDU3Myk7a2kodGhpcy5oZWFwKTt0aGlzLlhmPXRoaXMueGQ9MDt0aGlzLmRlcHRoPW5ldyBIaC5ZYyg1NzMpO2tpKHRoaXMuZGVwdGgpO3RoaXMuaGI9dGhpcy5GYj10aGlzLnJiPXRoaXMubWF0Y2hlcz10aGlzLkhnPXRoaXMuQ2Q9dGhpcy5ZZz10aGlzLmtjPXRoaXMuQWg9dGhpcy5rbT0wfTsKRGk9ZnVuY3Rpb24oYSxiKXtpZighYXx8IWEuc3RhdGV8fGI+NXx8YjwwKXJldHVybiBhP2ppKGEsLTIpOi0yO3ZhciBjPWEuc3RhdGU7aWYoIWEub3V0cHV0fHwhYS5pbnB1dCYmYS5EYiE9PTB8fGMuc3RhdHVzPT09NjY2JiZiIT09NClyZXR1cm4gamkoYSxhLnphPT09MD8tNTotMik7Yy53YT1hO3ZhciBkPWMuaWc7Yy5pZz1iO2lmKGMuc3RhdHVzPT09NDIpaWYoYy53cmFwPT09MilhLnNhPTAscWkoYywzMSkscWkoYywxMzkpLHFpKGMsOCksYy5xYT8ocWkoYywoYy5xYS50ZXh0PzE6MCkrKGMucWEuYmU/MjowKSsoYy5xYS5leHRyYT80OjApKyhjLnFhLm5hbWU/ODowKSsoYy5xYS5jb21tZW50PzE2OjApKSxxaShjLGMucWEudGltZSYyNTUpLHFpKGMsYy5xYS50aW1lPj44JjI1NSkscWkoYyxjLnFhLnRpbWU+PjE2JjI1NSkscWkoYyxjLnFhLnRpbWU+PjI0JjI1NSkscWkoYyxjLmxldmVsPT09OT8yOmMuc3RyYXRlZ3k+PTJ8fGMubGV2ZWw8Mj80OjApLHFpKGMsYy5xYS5vcyYyNTUpLApjLnFhLmV4dHJhJiZjLnFhLmV4dHJhLmxlbmd0aCYmKHFpKGMsYy5xYS5leHRyYS5sZW5ndGgmMjU1KSxxaShjLGMucWEuZXh0cmEubGVuZ3RoPj44JjI1NSkpLGMucWEuYmUmJihhLnNhPXVpKGEuc2EsYy5PYSxjLnBlbmRpbmcsMCkpLGMuemM9MCxjLnN0YXR1cz02OSk6KHFpKGMsMCkscWkoYywwKSxxaShjLDApLHFpKGMsMCkscWkoYywwKSxxaShjLGMubGV2ZWw9PT05PzI6Yy5zdHJhdGVneT49Mnx8Yy5sZXZlbDwyPzQ6MCkscWkoYywzKSxjLnN0YXR1cz0xMTMpO2Vsc2V7dmFyIGU9OCsoYy5Obi04PDw0KTw8ODtlfD0oYy5zdHJhdGVneT49Mnx8Yy5sZXZlbDwyPzA6Yy5sZXZlbDw2PzE6Yy5sZXZlbD09PTY/MjozKTw8NjtjLlYhPT0wJiYoZXw9MzIpO2Muc3RhdHVzPTExMztyaShjLGUrKDMxLWUlMzEpKTtjLlYhPT0wJiYocmkoYyxhLnNhPj4+MTYpLHJpKGMsYS5zYSY2NTUzNSkpO2Euc2E9MX1pZihjLnN0YXR1cz09PTY5KWlmKGMucWEuZXh0cmEpe2ZvcihlPWMucGVuZGluZztjLnpjPAooYy5xYS5leHRyYS5sZW5ndGgmNjU1MzUpJiYoYy5wZW5kaW5nIT09Yy5uY3x8KGMucWEuYmUmJmMucGVuZGluZz5lJiYoYS5zYT11aShhLnNhLGMuT2EsYy5wZW5kaW5nLWUsZSkpLGxpKGEpLGU9Yy5wZW5kaW5nLGMucGVuZGluZyE9PWMubmMpKTspcWkoYyxjLnFhLmV4dHJhW2MuemNdJjI1NSksYy56YysrO2MucWEuYmUmJmMucGVuZGluZz5lJiYoYS5zYT11aShhLnNhLGMuT2EsYy5wZW5kaW5nLWUsZSkpO2MuemM9PT1jLnFhLmV4dHJhLmxlbmd0aCYmKGMuemM9MCxjLnN0YXR1cz03Myl9ZWxzZSBjLnN0YXR1cz03MztpZihjLnN0YXR1cz09PTczKWlmKGMucWEubmFtZSl7ZT1jLnBlbmRpbmc7ZG97aWYoYy5wZW5kaW5nPT09Yy5uYyYmKGMucWEuYmUmJmMucGVuZGluZz5lJiYoYS5zYT11aShhLnNhLGMuT2EsYy5wZW5kaW5nLWUsZSkpLGxpKGEpLGU9Yy5wZW5kaW5nLGMucGVuZGluZz09PWMubmMpKXt2YXIgZj0xO2JyZWFrfWY9Yy56YzxjLnFhLm5hbWUubGVuZ3RoP2MucWEubmFtZS5jaGFyQ29kZUF0KGMuemMrKykmCjI1NTowO3FpKGMsZil9d2hpbGUoZiE9PTApO2MucWEuYmUmJmMucGVuZGluZz5lJiYoYS5zYT11aShhLnNhLGMuT2EsYy5wZW5kaW5nLWUsZSkpO2Y9PT0wJiYoYy56Yz0wLGMuc3RhdHVzPTkxKX1lbHNlIGMuc3RhdHVzPTkxO2lmKGMuc3RhdHVzPT09OTEpaWYoYy5xYS5jb21tZW50KXtlPWMucGVuZGluZztkb3tpZihjLnBlbmRpbmc9PT1jLm5jJiYoYy5xYS5iZSYmYy5wZW5kaW5nPmUmJihhLnNhPXVpKGEuc2EsYy5PYSxjLnBlbmRpbmctZSxlKSksbGkoYSksZT1jLnBlbmRpbmcsYy5wZW5kaW5nPT09Yy5uYykpe2Y9MTticmVha31mPWMuemM8Yy5xYS5jb21tZW50Lmxlbmd0aD9jLnFhLmNvbW1lbnQuY2hhckNvZGVBdChjLnpjKyspJjI1NTowO3FpKGMsZil9d2hpbGUoZiE9PTApO2MucWEuYmUmJmMucGVuZGluZz5lJiYoYS5zYT11aShhLnNhLGMuT2EsYy5wZW5kaW5nLWUsZSkpO2Y9PT0wJiYoYy5zdGF0dXM9MTAzKX1lbHNlIGMuc3RhdHVzPTEwMztjLnN0YXR1cz09PTEwMyYmCihjLnFhLmJlPyhjLnBlbmRpbmcrMj5jLm5jJiZsaShhKSxjLnBlbmRpbmcrMjw9Yy5uYyYmKHFpKGMsYS5zYSYyNTUpLHFpKGMsYS5zYT4+OCYyNTUpLGEuc2E9MCxjLnN0YXR1cz0xMTMpKTpjLnN0YXR1cz0xMTMpO2lmKGMucGVuZGluZyE9PTApe2lmKGxpKGEpLGEuemE9PT0wKXJldHVybiBjLmlnPS0xLDB9ZWxzZSBpZihhLkRiPT09MCYmKGI8PDEpLShiPjQ/OTowKTw9KGQ8PDEpLShkPjQ/OTowKSYmYiE9PTQpcmV0dXJuIGppKGEsLTUpO2lmKGMuc3RhdHVzPT09NjY2JiZhLkRiIT09MClyZXR1cm4gamkoYSwtNSk7aWYoYS5EYiE9PTB8fGMuZGEhPT0wfHxiIT09MCYmYy5zdGF0dXMhPT02NjYpe2Q9Yy5zdHJhdGVneT09PTI/emkoYyxiKTpjLnN0cmF0ZWd5PT09Mz95aShjLGIpOkNpW2MubGV2ZWxdLmt3KGMsYik7aWYoZD09PTN8fGQ9PT00KWMuc3RhdHVzPTY2NjtpZihkPT09MXx8ZD09PTMpcmV0dXJuIGEuemE9PT0wJiYoYy5pZz0tMSksMDtpZihkPT09MiYmKGI9PT0xPwooTmgoYywyLDMpLE9oKGMsMjU2LG5pKSxjLmhiPT09MTY/KE1oKGMsYy5GYiksYy5GYj0wLGMuaGI9MCk6Yy5oYj49OCYmKGMuT2FbYy5wZW5kaW5nKytdPWMuRmImMjU1LGMuRmI+Pj04LGMuaGItPTgpKTpiIT09NSYmKE5oKGMsMCwzKSxUaChjLDAsMCksYj09PTMmJihraShjLmhlYWQpLGMuZGE9PT0wJiYoYy5WPTAsYy5VYj0wLGMucmI9MCkpKSxsaShhKSxhLnphPT09MCkpcmV0dXJuIGMuaWc9LTEsMH1pZihiIT09NClyZXR1cm4gMDtpZihjLndyYXA8PTApcmV0dXJuIDE7Yy53cmFwPT09Mj8ocWkoYyxhLnNhJjI1NSkscWkoYyxhLnNhPj44JjI1NSkscWkoYyxhLnNhPj4xNiYyNTUpLHFpKGMsYS5zYT4+MjQmMjU1KSxxaShjLGEucWYmMjU1KSxxaShjLGEucWY+PjgmMjU1KSxxaShjLGEucWY+PjE2JjI1NSkscWkoYyxhLnFmPj4yNCYyNTUpKToocmkoYyxhLnNhPj4+MTYpLHJpKGMsYS5zYSY2NTUzNSkpO2xpKGEpO2Mud3JhcD4wJiYoYy53cmFwPS1jLndyYXApO3JldHVybiBjLnBlbmRpbmchPT0KMD8wOjF9OwpFaT1mdW5jdGlvbihhKXtpZighKHRoaXMgaW5zdGFuY2VvZiBFaSkpcmV0dXJuIG5ldyBFaShhKTthPXRoaXMub3B0aW9ucz1IaC5hc3NpZ24oe2xldmVsOi0xLG1ldGhvZDo4LGNodW5rU2l6ZToxNjM4NCx3aW5kb3dCaXRzOjE1LG1lbUxldmVsOjgsc3RyYXRlZ3k6MCx0bzoiIn0sYXx8e30pO2EucmF3JiZhLndpbmRvd0JpdHM+MD9hLndpbmRvd0JpdHM9LWEud2luZG93Qml0czphLmd6aXAmJmEud2luZG93Qml0cz4wJiZhLndpbmRvd0JpdHM8MTYmJihhLndpbmRvd0JpdHMrPTE2KTt0aGlzLmVycj0wO3RoaXMubXNnPSIiO3RoaXMuZW5kZWQ9ITE7dGhpcy5jaHVua3M9W107dGhpcy53YT1uZXcgRmk7dGhpcy53YS56YT0wO3ZhciBiPXRoaXMud2E7dmFyIGM9YS5sZXZlbCxkPWEubWV0aG9kLGU9YS53aW5kb3dCaXRzLGY9YS5tZW1MZXZlbCxoPWEuc3RyYXRlZ3k7aWYoYil7dmFyIGs9MTtjPT09LTEmJihjPTYpO2U8MD8oaz0wLGU9LWUpOmU+MTUmJihrPTIsZS09MTYpO2lmKGY8CjF8fGY+OXx8ZCE9PTh8fGU8OHx8ZT4xNXx8YzwwfHxjPjl8fGg8MHx8aD40KWI9amkoYiwtMik7ZWxzZXtlPT09OCYmKGU9OSk7dmFyIGw9bmV3IEJpO2Iuc3RhdGU9bDtsLndhPWI7bC53cmFwPWs7bC5xYT1udWxsO2wuTm49ZTtsLkJiPTE8PGwuTm47bC5CZT1sLkJiLTE7bC5MbD1mKzc7bC5haj0xPDxsLkxsO2wudmQ9bC5hai0xO2wud2Q9fn4oKGwuTGwrMy0xKS8zKTtsLndpbmRvdz1uZXcgSGgudGYobC5CYioyKTtsLmhlYWQ9bmV3IEhoLlljKGwuYWopO2wuVWE9bmV3IEhoLlljKGwuQmIpO2wuQWg9MTw8Zis2O2wubmM9bC5BaCo0O2wuT2E9bmV3IEhoLnRmKGwubmMpO2wuWWc9bC5BaDtsLmttPTMqbC5BaDtsLmxldmVsPWM7bC5zdHJhdGVneT1oO2wubWV0aG9kPWQ7aWYoYiYmYi5zdGF0ZSl7Yi5xZj1iLkVuPTA7Yi5pbD0yO2M9Yi5zdGF0ZTtjLnBlbmRpbmc9MDtjLkpoPTA7Yy53cmFwPDAmJihjLndyYXA9LWMud3JhcCk7Yy5zdGF0dXM9Yy53cmFwPzQyOjExMztiLnNhPQpjLndyYXA9PT0yPzA6MTtjLmlnPTA7aWYoIUdpKXtkPUFycmF5KDE2KTtmb3IoZj1oPTA7ZjwyODtmKyspZm9yKFloW2ZdPWgsZT0wO2U8MTw8WGhbZl07ZSsrKVdoW2grK109ZjtXaFtoLTFdPWY7Zm9yKGY9aD0wO2Y8MTY7ZisrKWZvcihiaVtmXT1oLGU9MDtlPDE8PCRoW2ZdO2UrKylaaFtoKytdPWY7Zm9yKGg+Pj03O2Y8MzA7ZisrKWZvcihiaVtmXT1oPDw3LGU9MDtlPDE8PCRoW2ZdLTc7ZSsrKVpoWzI1NitoKytdPWY7Zm9yKGU9MDtlPD0xNTtlKyspZFtlXT0wO2ZvcihlPTA7ZTw9MTQzOyluaVtlKjIrMV09OCxlKyssZFs4XSsrO2Zvcig7ZTw9MjU1OyluaVtlKjIrMV09OSxlKyssZFs5XSsrO2Zvcig7ZTw9Mjc5OyluaVtlKjIrMV09NyxlKyssZFs3XSsrO2Zvcig7ZTw9Mjg3OyluaVtlKjIrMV09OCxlKyssZFs4XSsrO1FoKG5pLDI4NyxkKTtmb3IoZT0wO2U8MzA7ZSsrKW9pW2UqMisxXT01LG9pW2UqMl09UGgoZSw1KTtIaT1uZXcgS2gobmksWGgsMjU3LDI4NiwxNSk7SWk9Cm5ldyBLaChvaSwkaCwwLDMwLDE1KTtKaT1uZXcgS2goW10sS2ksMCwxOSw3KTtHaT0hMH1jLnBqPW5ldyBMaChjLlFiLEhpKTtjLklpPW5ldyBMaChjLlBlLElpKTtjLlRvPW5ldyBMaChjLnFiLEppKTtjLkZiPTA7Yy5oYj0wO1JoKGMpO2M9MH1lbHNlIGM9amkoYiwtMik7Yz09PTAmJihiPWIuc3RhdGUsYi5Lcz0yKmIuQmIsa2koYi5oZWFkKSxiLm9tPUNpW2IubGV2ZWxdLkV5LGIuWXA9Q2lbYi5sZXZlbF0udHcsYi5TcT1DaVtiLmxldmVsXS5XeSxiLk5xPUNpW2IubGV2ZWxdLkR5LGIuVj0wLGIuVWI9MCxiLmRhPTAsYi5yYj0wLGIuQmE9Yi5ZYj0yLGIuY2Y9MCxiLnhhPTApO2I9Y319ZWxzZSBiPS0yO2lmKGIhPT0wKXRocm93IEVycm9yKGlpW2JdKTthLmhlYWRlciYmKGI9dGhpcy53YSkmJmIuc3RhdGUmJmIuc3RhdGUud3JhcD09PTImJihiLnN0YXRlLnFhPWEuaGVhZGVyKTtpZihhLmRpY3Rpb25hcnkpe3ZhciBtO3R5cGVvZiBhLmRpY3Rpb25hcnk9PT0ic3RyaW5nIj9tPQpJaChhLmRpY3Rpb25hcnkpOkxpLmNhbGwoYS5kaWN0aW9uYXJ5KT09PSJbb2JqZWN0IEFycmF5QnVmZmVyXSI/bT1uZXcgVWludDhBcnJheShhLmRpY3Rpb25hcnkpOm09YS5kaWN0aW9uYXJ5O2E9dGhpcy53YTtmPW07aD1mLmxlbmd0aDtpZihhJiZhLnN0YXRlKWlmKG09YS5zdGF0ZSxiPW0ud3JhcCxiPT09Mnx8Yj09PTEmJm0uc3RhdHVzIT09NDJ8fG0uZGEpYj0tMjtlbHNle2I9PT0xJiYoYS5zYT10aShhLnNhLGYsaCwwKSk7bS53cmFwPTA7aD49bS5CYiYmKGI9PT0wJiYoa2kobS5oZWFkKSxtLlY9MCxtLlViPTAsbS5yYj0wKSxjPW5ldyBIaC50ZihtLkJiKSxIaC53ZihjLGYsaC1tLkJiLG0uQmIsMCksZj1jLGg9bS5CYik7Yz1hLkRiO2Q9YS5mZjtlPWEuaW5wdXQ7YS5EYj1oO2EuZmY9MDthLmlucHV0PWY7Zm9yKHZpKG0pO20uZGE+PTM7KXtmPW0uVjtoPW0uZGEtMjtkbyBtLnhhPShtLnhhPDxtLndkXm0ud2luZG93W2YrMy0xXSkmbS52ZCxtLlVhW2YmbS5CZV09bS5oZWFkW20ueGFdLAptLmhlYWRbbS54YV09ZixmKys7d2hpbGUoLS1oKTttLlY9ZjttLmRhPTI7dmkobSl9bS5WKz1tLmRhO20uVWI9bS5WO20ucmI9bS5kYTttLmRhPTA7bS5CYT1tLlliPTI7bS5jZj0wO2EuZmY9ZDthLmlucHV0PWU7YS5EYj1jO20ud3JhcD1iO2I9MH1lbHNlIGI9LTI7aWYoYiE9PTApdGhyb3cgRXJyb3IoaWlbYl0pO3RoaXMuTUg9ITB9fTtNaT1mdW5jdGlvbihhLGIpe2I9PT0wJiYoYS5yZXN1bHQ9YS5vcHRpb25zLnRvPT09InN0cmluZyI/YS5jaHVua3Muam9pbigiIik6SGguTXAoYS5jaHVua3MpKTthLmNodW5rcz1bXTthLmVycj1iO2EubXNnPWEud2EubXNnfTtfLk5pPWZ1bmN0aW9uKGEpe3ZhciBiPWJ8fHt9O2IuZ3ppcD0hMDtiPW5ldyBFaShiKTtiLnB1c2goYSwhMCk7aWYoYi5lcnIpdGhyb3cgYi5tc2d8fGlpW2IuZXJyXTtyZXR1cm4gYi5yZXN1bHR9OwpfLk9pPWZ1bmN0aW9uKGEsYil7Yi5sZW5ndGg+MT9hW2JbMF1dPWJbMV06Yi5sZW5ndGg9PT0xJiZPYmplY3QuYXNzaWduKGEsYlswXSl9O18uUWk9ZnVuY3Rpb24oLi4uYSl7Xy5PaShfLlBpLGFyZ3VtZW50cyl9O18udz1mdW5jdGlvbihhLGIpe3JldHVybiBhIGluIF8uUGk/Xy5QaVthXTpifTtfLlJpPWZ1bmN0aW9uKGEpe3ZhciBiPV8uUGkuRVhQRVJJTUVOVF9GTEFHUztyZXR1cm4gYj9iW2FdOnZvaWQgMH07VGk9ZnVuY3Rpb24oYSl7U2kuZm9yRWFjaChiPT5iKGEpKX07Xy5WaT1mdW5jdGlvbihhKXtyZXR1cm4gYSYmd2luZG93Lnl0ZXJyP2Z1bmN0aW9uKCl7dHJ5e3JldHVybiBhLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1jYXRjaChiKXtfLlVpKGIpfX06YX07Cl8uVWk9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5zYSgieXQubG9nZ2luZy5lcnJvcnMubG9nIik7Yj9iKGEsIkVSUk9SIix2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwKTooYj1fLncoIkVSUk9SUyIsW10pLGIucHVzaChbYSwiRVJST1IiLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDBdKSxfLlFpKCJFUlJPUlMiLGIpKTtUaShhKX07Xy5XaT1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPV8uc2EoInl0LmxvZ2dpbmcuZXJyb3JzLmxvZyIpO2Y/ZihhLCJXQVJOSU5HIixiLGMsZCx2b2lkIDAsZSk6KGY9Xy53KCJFUlJPUlMiLFtdKSxmLnB1c2goW2EsIldBUk5JTkciLGIsYyxkLHZvaWQgMCxlXSksXy5RaSgiRVJST1JTIixmKSl9OwpZaT1mdW5jdGlvbihhLGIpe2I9YS5zcGxpdChiKTt2YXIgYz17fTtmb3IobGV0IGY9MCxoPWIubGVuZ3RoO2Y8aDtmKyspe2xldCBrPWJbZl0uc3BsaXQoIj0iKTtpZihrLmxlbmd0aD09PTEmJmtbMF18fGsubGVuZ3RoPT09Mil0cnl7bGV0IGw9WGkoa1swXXx8IiIpLG09WGkoa1sxXXx8IiIpO2lmKGwgaW4gYyl7bGV0IG49Y1tsXTtBcnJheS5pc0FycmF5KG4pP3piKG4sbSk6Y1tsXT1bbixtXX1lbHNlIGNbbF09bX1jYXRjaChsKXt2YXIgZD1sLGU9a1swXTtsZXQgbT1TdHJpbmcoWWkpO2QuYXJncz1be2tleTplLHZhbHVlOmtbMV0scXVlcnk6YSxtZXRob2Q6Wmk9PT1tPyJ1bmNoYW5nZWQiOm19XTskaS5oYXNPd25Qcm9wZXJ0eShlKXx8Xy5XaShkKX19cmV0dXJuIGN9Owphaj1mdW5jdGlvbihhKXt2YXIgYj1bXTtvZChhLChjLGQpPT57dmFyIGU9ZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhkKSk7Yz1BcnJheS5pc0FycmF5KGMpP2M6W2NdO18udGIoYyxmPT57Zj09IiI/Yi5wdXNoKGUpOmIucHVzaChgJHtlfT0ke2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoZikpfWApfSl9KTtyZXR1cm4gYi5qb2luKCImIil9O18uYmo9ZnVuY3Rpb24oYSl7YS5jaGFyQXQoMCk9PT0iPyImJihhPWEuc3Vic3RyaW5nKDEpKTtyZXR1cm4gWWkoYSwiJiIpfTtkaj1mdW5jdGlvbihhLGIpe3JldHVybiBjaihhLGJ8fHt9LCEwKX07Xy5laj1mdW5jdGlvbihhLGIpe3JldHVybiBjaihhLGJ8fHt9LCExKX07CmNqPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLnNwbGl0KCIjIiwyKTthPWRbMF07ZD1kLmxlbmd0aD4xPyIjIitkWzFdOiIiO3ZhciBlPWEuc3BsaXQoIj8iLDIpO2E9ZVswXTtlPV8uYmooZVsxXXx8IiIpO2ZvcihsZXQgZiBpbiBiKSFjJiZlIT09bnVsbCYmZiBpbiBlfHwoZVtmXT1iW2ZdKTtyZXR1cm4gXy5XYihhLGUpK2R9O18uZmo9ZnVuY3Rpb24oYSl7aWYoIWIpdmFyIGI9d2luZG93LmxvY2F0aW9uLmhyZWY7dmFyIGM9Xy5NYihhKVsxXXx8bnVsbCxkPV8uUGIoYSk7YyYmZD8oYT1fLk1iKGEpLGI9Xy5NYihiKSxhPWFbM109PWJbM10mJmFbMV09PWJbMV0mJmFbNF09PWJbNF0pOmE9ZD9fLlBiKGIpPT09ZCYmKE51bWJlcihfLk1iKGIpWzRdfHxudWxsKXx8bnVsbCk9PT0oTnVtYmVyKF8uTWIoYSlbNF18fG51bGwpfHxudWxsKTohMDtyZXR1cm4gYX07WGk9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEubWF0Y2goZ2opP2E6Xy5IYihhKX07Cl8ubGo9ZnVuY3Rpb24oYT1fLnNhKCJ5dC5hZHMuYmlzY290dGkubGFzdElkXyIpfHwiIil7dmFyIGI9aGosYz1PYmplY3QsZD1jLmFzc2lnbjthOnt0cnl7dmFyIGU9Yi5qLnRvcC5sb2NhdGlvbi5ocmVmfWNhdGNoKEEpe2U9MjticmVhayBhfWU9ZT9lPT09Yi5vLmxvY2F0aW9uLmhyZWY/MDoxOjJ9ZT17ZHQ6aWosZmxhc2g6IjAiLGZybTplfTt0cnl7ZS51X3R6PS0obmV3IERhdGUpLmdldFRpbWV6b25lT2Zmc2V0KCk7dHJ5e3ZhciBmPWpqLmhpc3RvcnkubGVuZ3RofWNhdGNoKEEpe2Y9MH1lLnVfaGlzPWY7ZS51X2g9amouc2NyZWVuPy5oZWlnaHQ7ZS51X3c9amouc2NyZWVuPy53aWR0aDtlLnVfYWg9amouc2NyZWVuPy5hdmFpbEhlaWdodDtlLnVfYXc9amouc2NyZWVuPy5hdmFpbFdpZHRoO2UudV9jZD1qai5zY3JlZW4/LmNvbG9yRGVwdGh9Y2F0Y2goQSl7fWY9Yi5qO3RyeXt2YXIgaD1mLnNjcmVlblg7dmFyIGs9Zi5zY3JlZW5ZfWNhdGNoKEEpe310cnl7dmFyIGw9Zi5vdXRlcldpZHRoOwp2YXIgbT1mLm91dGVySGVpZ2h0fWNhdGNoKEEpe310cnl7dmFyIG49Zi5pbm5lcldpZHRoO3ZhciBwPWYuaW5uZXJIZWlnaHR9Y2F0Y2goQSl7fXRyeXt2YXIgcj1mLnNjcmVlbkxlZnQ7dmFyIHQ9Zi5zY3JlZW5Ub3B9Y2F0Y2goQSl7fXRyeXtuPWYuaW5uZXJXaWR0aCxwPWYuaW5uZXJIZWlnaHR9Y2F0Y2goQSl7fXRyeXt2YXIgdj1mLnNjcmVlbi5hdmFpbFdpZHRoO3ZhciB6PWYuc2NyZWVuLmF2YWlsVG9wfWNhdGNoKEEpe31oPVtyLHQsaCxrLHYseixsLG0sbixwXTt0cnl7dmFyIEU9Xy55ZChiLmoudG9wfHx3aW5kb3cpLnJvdW5kKCl9Y2F0Y2goQSl7RT1uZXcgXy5uZCgtMTIyNDU5MzMsLTEyMjQ1OTMzKX1sPUU7RT1uZXcga2o7IlNWR0VsZW1lbnQiaW4gXy51JiYiY3JlYXRlRWxlbWVudE5TImluIF8udS5kb2N1bWVudCYmRS5zZXQoMCk7az1tZCgpO2tbImFsbG93LXRvcC1uYXZpZ2F0aW9uLWJ5LXVzZXItYWN0aXZhdGlvbiJdJiZFLnNldCgxKTtrWyJhbGxvdy1wb3B1cHMtdG8tZXNjYXBlLXNhbmRib3giXSYmCkUuc2V0KDIpO18udS5jcnlwdG8mJl8udS5jcnlwdG8uc3VidGxlJiZFLnNldCgzKTsiVGV4dERlY29kZXIiaW4gXy51JiYiVGV4dEVuY29kZXIiaW4gXy51JiZFLnNldCg0KTtFPW5oKEUpO2s9bC5oZWlnaHQ7bD1sLndpZHRoO2g9aC5qb2luKCk7Yj1iLm87Yz1kLmNhbGwoYyxlLHtiYzpFLGJpaDprLGJpdzpsLGJyZGltOmgsdmlzOmIucHJlcmVuZGVyaW5nPzM6e3Zpc2libGU6MSxoaWRkZW46MixwcmVyZW5kZXI6MyxwcmV2aWV3OjQsdW5sb2FkZWQ6NSwiIjowfVtiLnZpc2liaWxpdHlTdGF0ZXx8Yi53ZWJraXRWaXNpYmlsaXR5U3RhdGV8fGIubW96VmlzaWJpbGl0eVN0YXRlfHwiIl0/PzAsd2dsOiEhamouV2ViR0xSZW5kZXJpbmdDb250ZXh0fSk7Yy5jYV90eXBlPSJpbWFnZSI7YSYmKGMuYmlkPWEpO3JldHVybiBjfTtfLm1qPWZ1bmN0aW9uKGEsYil7dHlwZW9mIGE9PT0iZnVuY3Rpb24iJiYoYT1fLlZpKGEpKTtyZXR1cm4gd2luZG93LnNldFRpbWVvdXQoYSxiKX07Cm9qPWZ1bmN0aW9uKCl7aWYoIW5qKXJldHVybiBudWxsO3ZhciBhPW5qKCk7cmV0dXJuIm9wZW4iaW4gYT9hOm51bGx9O18ucWo9ZnVuY3Rpb24oYSl7c3dpdGNoKF8ucGooYSkpe2Nhc2UgMjAwOmNhc2UgMjAxOmNhc2UgMjAyOmNhc2UgMjAzOmNhc2UgMjA0OmNhc2UgMjA1OmNhc2UgMjA2OmNhc2UgMzA0OnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fTtfLnBqPWZ1bmN0aW9uKGEpe3JldHVybiBhJiYic3RhdHVzImluIGE/YS5zdGF0dXM6LTF9O18ueD1mdW5jdGlvbihhLGIpe2E9Xy5yaihhLGIpO3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmciJiZhPT09ImZhbHNlIj8hMTohIWF9O18uc2o9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gTnVtYmVyKF8ucmooYSxiKXx8MCl9O18udGo9ZnVuY3Rpb24oYSl7YT1fLnJqKGEpO3JldHVybiBhIT09dm9pZCAwP1N0cmluZyhhKToiIn07Cl8ucmo9ZnVuY3Rpb24oYSxiKXthPV8udygiRVhQRVJJTUVOVF9GTEFHUyIse30pW2FdO3JldHVybiBhIT09dm9pZCAwP2E6Yn07Xy51aj1mdW5jdGlvbigpe3ZhciBhPVtdLGI9Xy53KCJFWFBFUklNRU5UU19GT1JDRURfRkxBR1MiLHt9KTtmb3IodmFyIGMgb2YgT2JqZWN0LmtleXMoYikpYS5wdXNoKHtrZXk6Yyx2YWx1ZTpTdHJpbmcoYltjXSl9KTtjPV8udygiRVhQRVJJTUVOVF9GTEFHUyIse30pO2ZvcihsZXQgZCBvZiBPYmplY3Qua2V5cyhjKSlkLnN0YXJ0c1dpdGgoImZvcmNlXyIpJiZiW2RdPT09dm9pZCAwJiZhLnB1c2goe2tleTpkLHZhbHVlOlN0cmluZyhjW2RdKX0pO3JldHVybiBhfTsKeGo9ZnVuY3Rpb24oYSxiLGM9IkdFVCIsZD0iIixlLGYsaCxrPSExLGwpe3ZhciBtPW9qKCk7aWYoIW0pcmV0dXJuIG51bGw7dmFyIG49KCk9PnsobSYmInJlYWR5U3RhdGUiaW4gbT9tLnJlYWR5U3RhdGU6MCk9PT00JiZiJiZfLlZpKGIpKG0pfTsib25sb2FkZW5kImluIG0/bS5hZGRFdmVudExpc3RlbmVyKCJsb2FkZW5kIixuLCExKTptLm9ucmVhZHlzdGF0ZWNoYW5nZT1uO18ueCgiZGVidWdfZm9yd2FyZF93ZWJfcXVlcnlfcGFyYW1ldGVycyIpJiYoYT12aihhKSk7bS5vcGVuKGMsYSwhMCk7ZiYmKG0ucmVzcG9uc2VUeXBlPWYpO2gmJihtLndpdGhDcmVkZW50aWFscz0hMCk7Yz1jPT09IlBPU1QiJiYod2luZG93LkZvcm1EYXRhPT09dm9pZCAwfHwhKGQgaW5zdGFuY2VvZiBGb3JtRGF0YSkpO2lmKGU9d2ooYSxlKSlmb3IobGV0IHAgaW4gZSltLnNldFJlcXVlc3RIZWFkZXIocCxlW3BdKSwiY29udGVudC10eXBlIj09PXAudG9Mb3dlckNhc2UoKSYmKGM9ITEpO2MmJm0uc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwKImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpO2wmJiJvbnByb2dyZXNzImluIG0mJihtLm9ucHJvZ3Jlc3M9KCk9PntsKG0ucmVzcG9uc2VUZXh0KX0pO2lmKGsmJiJzZXRBdHRyaWJ1dGlvblJlcG9ydGluZyJpbiBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGUpe2E9e2V2ZW50U291cmNlRWxpZ2libGU6ITAsdHJpZ2dlckVsaWdpYmxlOiExfTt0cnl7bS5zZXRBdHRyaWJ1dGlvblJlcG9ydGluZyhhKX1jYXRjaChwKXtfLldpKHApfX1tLnNlbmQoZCk7cmV0dXJuIG19Owp3aj1mdW5jdGlvbihhLGI9e30pe3ZhciBjPV8uZmooYSksZD1fLncoIklOTkVSVFVCRV9DTElFTlRfTkFNRSIpLGU9Xy54KCJ3ZWJfYWpheF9pZ25vcmVfZ2xvYmFsX2hlYWRlcnNfaWZfc2V0Iik7Zm9yKGxldCBrIGluIHlqKXtsZXQgbD1fLncoeWpba10pLG09az09PSJYLUdvb2ctQXV0aFVzZXIifHxrPT09IlgtR29vZy1QYWdlSWQiO2shPT0iWC1Hb29nLVZpc2l0b3ItSWQifHxsfHwobD1fLncoIlZJU0lUT1JfREFUQSIpKTt2YXIgZjtpZighKGY9IWwpKXtpZighKGY9Y3x8KF8uUGIoYSk/ITE6ITApKSl7Zj1hO3ZhciBoO2lmKGg9Xy54KCJhZGRfYXV0aF9oZWFkZXJzX3RvX3JlbWFya2V0aW5nX2dvb2dsZV9kb3RfY29tX3BpbmciKSYmaz09PSJBdXRob3JpemF0aW9uIiYmKGQ9PT0iVFZIVE1MNSJ8fGQ9PT0iVFZIVE1MNV9VTlBMVUdHRUQifHxkPT09IlRWSFRNTDVfU0lNUExZIikpaD1fLlBiKGYpLGg9aCE9PW51bGw/aC5zcGxpdCgiLiIpLnJldmVyc2UoKTpudWxsLGg9aD09PQpudWxsPyExOmhbMV09PT0iZ29vZ2xlIj8hMDpoWzJdPT09Imdvb2dsZSI/aFswXT09PSJhdSImJmhbMV09PT0iY29tIj8hMDpoWzBdPT09InVrIiYmaFsxXT09PSJjbyI/ITA6ITE6ITE7aCYmKGY9Xy5RYihmKXx8IiIsZj1mLnNwbGl0KCIvIiksZj0iLyIrKGYubGVuZ3RoPjE/ZlsxXToiIiksaD1mPT09Ii9wYWdlYWQiKTtmPWg/ITA6ITF9Zj0hZn1mfHxlJiZiW2tdIT09dm9pZCAwfHxkPT09IlRWSFRNTDVfVU5QTFVHR0VEIiYmbXx8KGJba109bCl9IlgtR29vZy1FT00tVmlzaXRvci1JZCJpbiBiJiYiWC1Hb29nLVZpc2l0b3ItSWQiaW4gYiYmZGVsZXRlIGJbIlgtR29vZy1WaXNpdG9yLUlkIl07aWYoY3x8IV8uUGIoYSkpYlsiWC1Zb3VUdWJlLVV0Yy1PZmZzZXQiXT1TdHJpbmcoLShuZXcgRGF0ZSkuZ2V0VGltZXpvbmVPZmZzZXQoKSk7aWYoY3x8IV8uUGIoYSkpe2xldCBrO3RyeXtrPShuZXcgSW50bC5EYXRlVGltZUZvcm1hdCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmV9Y2F0Y2h7fWsmJgooYlsiWC1Zb3VUdWJlLVRpbWUtWm9uZSJdPWspfWRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJ5b3V0dWJlZWR1Y2F0aW9uLmNvbSIpfHwhYyYmXy5QYihhKXx8KGJbIlgtWW91VHViZS1BZC1TaWduYWxzIl09YWooXy5saigpKSk7cmV0dXJuIGJ9O0FqPWZ1bmN0aW9uKGEsYil7Yi5tZXRob2Q9IlBPU1QiO2IucG9zdFBhcmFtc3x8KGIucG9zdFBhcmFtcz17fSk7cmV0dXJuIF8uemooYSxiKX07Cl8uemo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmZvcm1hdHx8IkpTT04iO2E9QmooYSxiKTt2YXIgZD1DaihhLGIpLGU9ITEsZj1EaihhLGs9PntpZighZSl7ZT0hMDtoJiZ3aW5kb3cuY2xlYXJUaW1lb3V0KGgpO3ZhciBsPV8ucWooayksbT1udWxsLG49NDAwPD1rLnN0YXR1cyYmay5zdGF0dXM8NTAwLHA9NTAwPD1rLnN0YXR1cyYmay5zdGF0dXM8NjAwO2lmKGx8fG58fHApbT1FaihhLGMsayxiLmNvbnZlcnRUb1NhZmVIdG1sKTtsJiYobD1GaihjLGssbSkpO209bXx8e307bj1iLmNvbnRleHR8fF8udTtsP2Iub25TdWNjZXNzJiZiLm9uU3VjY2Vzcy5jYWxsKG4sayxtKTpiLm9uRXJyb3ImJmIub25FcnJvci5jYWxsKG4sayxtKTtiLm9uRmluaXNoJiZiLm9uRmluaXNoLmNhbGwobixrLG0pfX0sYi5tZXRob2QsZCxiLmhlYWRlcnMsYi5yZXNwb25zZVR5cGUsYi53aXRoQ3JlZGVudGlhbHMsITEsYi5vblByb2dyZXNzKTtkPWIudGltZW91dHx8MDtpZihiLm9uVGltZW91dCYmZD4wKXtsZXQgaz0KYi5vblRpbWVvdXQ7dmFyIGg9Xy5taigoKT0+e2V8fChlPSEwLGYuYWJvcnQoKSx3aW5kb3cuY2xlYXJUaW1lb3V0KGgpLGsuY2FsbChiLmNvbnRleHR8fF8udSxmKSl9LGQpfXJldHVybiBmfTtCaj1mdW5jdGlvbihhLGIpe2IuaW5jbHVkZURvbWFpbiYmKGE9ZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2wrIi8vIitkb2N1bWVudC5sb2NhdGlvbi5ob3N0bmFtZSsoZG9jdW1lbnQubG9jYXRpb24ucG9ydD8iOiIrZG9jdW1lbnQubG9jYXRpb24ucG9ydDoiIikrYSk7dmFyIGM9Xy53KCJYU1JGX0ZJRUxEX05BTUUiKTtpZihiPWIudXJsUGFyYW1zKWJbY10mJmRlbGV0ZSBiW2NdLGE9ZGooYSxiKTtyZXR1cm4gYX07CkNqPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy53KCJYU1JGX0ZJRUxEX05BTUUiKSxkPV8udygiWFNSRl9UT0tFTiIpLGU9Yi5wb3N0Qm9keXx8IiIsZj1iLnBvc3RQYXJhbXMsaD1fLncoIlhTUkZfRklFTERfTkFNRSIpLGs7Yi5oZWFkZXJzJiYoaz1iLmhlYWRlcnNbIkNvbnRlbnQtVHlwZSJdKTtiLmV4Y2x1ZGVYc3JmfHxfLlBiKGEpJiYhYi53aXRoQ3JlZGVudGlhbHMmJl8uUGIoYSkhPT1kb2N1bWVudC5sb2NhdGlvbi5ob3N0bmFtZXx8Yi5tZXRob2QhPT0iUE9TVCJ8fGsmJmshPT0iYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkInx8Yi5wb3N0UGFyYW1zJiZiLnBvc3RQYXJhbXNbaF18fChmfHwoZj17fSksZltjXT1kKTtmJiZ0eXBlb2YgZT09PSJzdHJpbmciJiYoZT1fLmJqKGUpLHNkKGUsZiksZT1iLnBvc3RCb2R5Rm9ybWF0JiZiLnBvc3RCb2R5Rm9ybWF0PT09IkpTT04iP0pTT04uc3RyaW5naWZ5KGUpOl8uVWIoZSkpO2Y9ZXx8ZiYmIV8ucGQoZik7IUdqJiZmJiYKYi5tZXRob2QhPT0iUE9TVCImJihHaj0hMCxfLlVpKEVycm9yKCJjYSIpKSk7cmV0dXJuIGV9O0VqPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPW51bGw7c3dpdGNoKGIpe2Nhc2UgIkpTT04iOmxldCBmO3RyeXtmPWMucmVzcG9uc2VUZXh0fWNhdGNoKGgpe3Rocm93IGQ9RXJyb3IoImRhIiksZC5wYXJhbXM9YSxfLldpKGQpLGg7fWE9Yy5nZXRSZXNwb25zZUhlYWRlcigiQ29udGVudC1UeXBlIil8fCIiO2lmKGYmJmEuaW5kZXhPZigianNvbiIpPj0wKXtmLnN1YnN0cmluZygwLDUpPT09IildfSdcbiImJihmPWYuc3Vic3RyaW5nKDUpKTt0cnl7ZT1KU09OLnBhcnNlKGYpfWNhdGNoKGgpe319YnJlYWs7Y2FzZSAiWE1MIjppZihhPShhPWMucmVzcG9uc2VYTUwpP0hqKGEpOm51bGwpZT17fSxfLnRiKGEuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKSxoPT57ZVtoLnRhZ05hbWVdPUlqKGgpfSl9ZCYmSmooZSk7cmV0dXJuIGV9OwpKaj1mdW5jdGlvbihhKXtpZihfLkFhKGEpKWZvcihsZXQgYiBpbiBhKWI9PT0iaHRtbF9jb250ZW50Inx8Xy5NYShiLCJfaHRtbCIpP2FbYl09Xy5nYihhW2JdKTpKaihhW2JdKX07Rmo9ZnVuY3Rpb24oYSxiLGMpe2lmKGImJmIuc3RhdHVzPT09MjA0KXJldHVybiEwO3N3aXRjaChhKXtjYXNlICJKU09OIjpyZXR1cm4hIWM7Y2FzZSAiWE1MIjpyZXR1cm4gTnVtYmVyKGMmJmMucmV0dXJuX2NvZGUpPT09MDtjYXNlICJSQVciOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuISFjfX07SGo9ZnVuY3Rpb24oYSl7cmV0dXJuIGE/KGE9KCJyZXNwb25zZVhNTCJpbiBhP2EucmVzcG9uc2VYTUw6YSkuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInJvb3QiKSkmJmEubGVuZ3RoPjA/YVswXTpudWxsOm51bGx9O0lqPWZ1bmN0aW9uKGEpe3ZhciBiPSIiO18udGIoYS5jaGlsZE5vZGVzLGM9PntiKz1jLm5vZGVWYWx1ZX0pO3JldHVybiBifTsKdmo9ZnVuY3Rpb24oYSl7dmFyIGI9d2luZG93LmxvY2F0aW9uLnNlYXJjaCxjPV8uUGIoYSk7Xy54KCJkZWJ1Z19oYW5kbGVfcmVsYXRpdmVfdXJsX2Zvcl9xdWVyeV9mb3J3YXJkX2tpbGxzd2l0Y2giKXx8IWMmJl8uZmooYSkmJihjPWRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKTt2YXIgZD1fLlFiKGEpO2Q9KGM9YyYmKGMuZW5kc1dpdGgoInlvdXR1YmUuY29tIil8fGMuZW5kc1dpdGgoInlvdXR1YmUtbm9jb29raWUuY29tIikpKSYmZCYmZC5zdGFydHNXaXRoKCIvYXBpLyIpO2lmKCFjfHxkKXJldHVybiBhO3ZhciBlPV8uYmooYiksZj17fTtfLnRiKEtqLGg9PntlW2hdJiYoZltoXT1lW2hdKX0pO3JldHVybiBfLmVqKGEsZil9O18uTWo9ZnVuY3Rpb24oYSxiLGMsZD0ieW91dHViZS5jb20iLGU9ITEpe18uTGouc2V0KGEsYix7dmo6YyxwYXRoOiIvIixkb21haW46ZCxzZWN1cmU6ZX0pfTsKXy5Oaj1mdW5jdGlvbihhLGI9Ii8iLGM9InlvdXR1YmUuY29tIil7Xy5Mai5yZW1vdmUoYSxiLGMpfTtfLk9qPWZ1bmN0aW9uKCl7aWYoIV8udS5tYXRjaE1lZGlhKXJldHVybiJXRUJfRElTUExBWV9NT0RFX1VOS05PV04iO3RyeXtyZXR1cm4gXy51Lm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IHN0YW5kYWxvbmUpIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9TVEFOREFMT05FIjpfLnUubWF0Y2hNZWRpYSgiKGRpc3BsYXktbW9kZTogbWluaW1hbC11aSkiKS5tYXRjaGVzPyJXRUJfRElTUExBWV9NT0RFX01JTklNQUxfVUkiOl8udS5tYXRjaE1lZGlhKCIoZGlzcGxheS1tb2RlOiBmdWxsc2NyZWVuKSIpLm1hdGNoZXM/IldFQl9ESVNQTEFZX01PREVfRlVMTFNDUkVFTiI6Xy51Lm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IGJyb3dzZXIpIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9CUk9XU0VSIjoiV0VCX0RJU1BMQVlfTU9ERV9VTktOT1dOIn1jYXRjaChhKXtyZXR1cm4iV0VCX0RJU1BMQVlfTU9ERV9VTktOT1dOIn19OwpfLlBqPWZ1bmN0aW9uKGEpe3ZhciBiPXt9LGM9W107IlVTRVJfU0VTU0lPTl9JRCJpbiBfLlBpJiZjLnB1c2goe2tleToidSIsdmFsdWU6Xy53KCJVU0VSX1NFU1NJT05fSUQiKX0pO2lmKGM9Xy5QZChjKSliLkF1dGhvcml6YXRpb249YyxjPWE9YT8uc2Vzc2lvbkluZGV4LGM9PT12b2lkIDAmJihjPU51bWJlcihfLncoIlNFU1NJT05fSU5ERVgiLDApKSxjPWlzTmFOKGMpPzA6YyksXy54KCJ2b2ljZV9zZWFyY2hfYXV0aF9oZWFkZXJfcmVtb3ZhbCIpfHwoYlsiWC1Hb29nLUF1dGhVc2VyIl09Yy50b1N0cmluZygpKSwiSU5ORVJUVUJFX0hPU1RfT1ZFUlJJREUiaW4gXy5QaXx8KGJbIlgtT3JpZ2luIl09d2luZG93LmxvY2F0aW9uLm9yaWdpbiksYT09PXZvaWQgMCYmIkRFTEVHQVRFRF9TRVNTSU9OX0lEImluIF8uUGkmJihiWyJYLUdvb2ctUGFnZUlkIl09Xy53KCJERUxFR0FURURfU0VTU0lPTl9JRCIpKTtyZXR1cm4gYn07ClFqPWZ1bmN0aW9uKCl7dmFyIGE9Xy51Lm5hdmlnYXRvcjtyZXR1cm4gYT9hLmNvbm5lY3Rpb246dm9pZCAwfTtfLlNqPWZ1bmN0aW9uKCl7dmFyIGE9UWooKTtpZihhKXt2YXIgYj1SalthLnR5cGV8fCJ1bmtub3duIl18fCJDT05OX1VOS05PV04iO2E9UmpbYS5lZmZlY3RpdmVUeXBlfHwidW5rbm93biJdfHwiQ09OTl9VTktOT1dOIjtiPT09IkNPTk5fQ0VMTFVMQVJfVU5LTk9XTiImJmEhPT0iQ09OTl9VTktOT1dOIiYmKGI9YSk7aWYoYiE9PSJDT05OX1VOS05PV04iKXJldHVybiBiO2lmKGEhPT0iQ09OTl9VTktOT1dOIilyZXR1cm4gYX19O18uVWo9ZnVuY3Rpb24oKXt2YXIgYT1RaigpO2lmKGE/LmVmZmVjdGl2ZVR5cGUpcmV0dXJuIFRqLmhhc093blByb3BlcnR5KGEuZWZmZWN0aXZlVHlwZSk/VGpbYS5lZmZlY3RpdmVUeXBlXToiRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV9VTktOT1dOIn07Xy5Xaj1mdW5jdGlvbigpe3RyeXtyZXR1cm4gXy5WaigpLCEwfWNhdGNoKGEpe3JldHVybiExfX07Cl8uVmo9ZnVuY3Rpb24oYT0idW5rbm93biIpe2lmKF8udygiREFUQVNZTkNfSUQiKSE9PXZvaWQgMClyZXR1cm4gXy53KCJEQVRBU1lOQ19JRCIpO3Rocm93IG5ldyBfLlhqKCJEYXRhc3luYyBJRCBub3Qgc2V0IixhKTt9O18uWWo9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5qZi5HYShhLDAsYil9O1pqPWZ1bmN0aW9uKGEsYil7dHJ5e2IoKX1jYXRjaChjKXthLkpiKGMpfX07Yms9ZnVuY3Rpb24oYSl7dmFyIGI9Xy54KCJlbmFibGVfc2NoZWR1bGVyX3NpbXVsYXRlX3JhZiIpO2lmKGEub1s4XS5sZW5ndGgpe2lmKGEuaGEpcmV0dXJuIDQ7aWYoYil7aWYoIWEuaXNIaWRkZW4oKSlyZXR1cm4gYS5aPzM6NX1lbHNlIGlmKGFrKGEpKXJldHVybiAzfWZvcihsZXQgYz01O2M+PWEuQjtjLS0paWYoYS5vW2NdLmxlbmd0aD4wKXJldHVybiBjPjA/Yj9hLmlzSGlkZGVuKCk/MjphLlo/Mzo1OmFrKGEpPzM6MjoxO3JldHVybiAwfTsKY2s9ZnVuY3Rpb24oYSl7YS5nYS5sZW5ndGg9MDtmb3IobGV0IGI9NTtiPj0wO2ItLSlhLm9bYl0ubGVuZ3RoPTA7YS5vWzhdLmxlbmd0aD0wO2Eudj17fTthLnN0b3AoKX07YWs9ZnVuY3Rpb24oYSl7cmV0dXJuIWEuaXNIaWRkZW4oKSYmYS5afTtlaz1mdW5jdGlvbihhKXtmb3IobGV0IGIgb2YgZGspaWYoYS5vW2JdLmxlbmd0aClyZXR1cm4hMDtyZXR1cm4hMX07CmhrPWZ1bmN0aW9uKGEsYixjKXthLmhhJiZhLkk9PT00JiZhLmp8fGEuc3RvcCgpO2EuRD0hMDtiPV8uRWEoKSsoYnx8YS5NKTtmb3IodmFyIGQ9YS5vWzVdO2QubGVuZ3RoOyl7dmFyIGU9ZC5zaGlmdCgpLGY9YS52W2VdO2RlbGV0ZSBhLnZbZV07aWYoZil7ZT1hO3RyeXtmKGMpfWNhdGNoKGgpe2UuSmIoaCl9fX1mb3IoZD1hLm9bNF07ZC5sZW5ndGg7KWM9ZC5zaGlmdCgpLGY9YS52W2NdLGRlbGV0ZSBhLnZbY10sZiYmWmooYSxmKTtkPWEueWE/MDoxO2Q9YS5CPmQ/YS5COmQ7aWYoIShfLkVhKCk+PWIpKXtkb3thOntjPWE7Zj1kO2ZvcihlPTM7ZT49ZjtlLS0pe2xldCBoPWMub1tlXTtmb3IoO2gubGVuZ3RoOyl7bGV0IGs9aC5zaGlmdCgpLGw9Yy52W2tdO2RlbGV0ZSBjLnZba107aWYobCl7Yz1sO2JyZWFrIGF9fX1jPW51bGx9YyYmWmooYSxjKX13aGlsZShjJiZfLkVhKCk8Yil9YS5EPSExO2ZrKGEpO2EuTT1naztlayhhKSYmYS5zdGFydCgpfTsKaWs9ZnVuY3Rpb24oYSl7YS5zdG9wKCk7YS5EPSEwO2Zvcih2YXIgYj1fLkVhKCksYz1hLm9bOF07Yy5sZW5ndGg7KXtsZXQgZD1jLnNoaWZ0KCksZT1hLnZbZF07ZGVsZXRlIGEudltkXTtlJiZaaihhLGUpfWZrKGEpO2EuRD0hMTtlayhhKSYmYS5zdGFydCgpO2I9Xy5FYSgpLWI7YS5NLT1ifTtmaz1mdW5jdGlvbihhKXtmb3IobGV0IGI9MCxjPWEuZ2EubGVuZ3RoO2I8YztiKyspe2xldCBkPWEuZ2FbYl07YS5vW2QucHJpb3JpdHldLnB1c2goZC5pZCl9YS5nYS5sZW5ndGg9MH07a2s9ZnVuY3Rpb24oKXt2YXIgYT1fLnNhKCJ5dGdsb2JhbC5zY2hlZHVsZXJJbnN0YW5jZUluc3RhbmNlXyIpO2lmKCFhfHxhLmlhKCkpYT1uZXcgamsoXy53KCJzY2hlZHVsZXIiKXx8e30pLF8ucmEoInl0Z2xvYmFsLnNjaGVkdWxlckluc3RhbmNlSW5zdGFuY2VfIixhKTtyZXR1cm4gYX07Cm1rPWZ1bmN0aW9uKCl7bGsoKTt2YXIgYT1fLnNhKCJ5dGdsb2JhbC5zY2hlZHVsZXJJbnN0YW5jZUluc3RhbmNlXyIpO2EmJihfLlpkKGEpLF8ucmEoInl0Z2xvYmFsLnNjaGVkdWxlckluc3RhbmNlSW5zdGFuY2VfIixudWxsKSl9O2xrPWZ1bmN0aW9uKCl7Y2soa2soKSk7Zm9yKGxldCBhIGluIG5rKW5rLmhhc093blByb3BlcnR5KGEpJiZkZWxldGUgbmtbTnVtYmVyKGEpXX07b2s9ZnVuY3Rpb24oYSxiLGMpe2lmKCFjKXJldHVybiBjPWM9PT12b2lkIDAsLWtrKCkuR2EoYSxiLGMpO3ZhciBkPXdpbmRvdy5zZXRUaW1lb3V0KCgpPT57dmFyIGU9a2soKS5HYShhLGIpO25rW2RdPWV9LGMpO3JldHVybiBkfTtwaz1mdW5jdGlvbihhKXtraygpLlUoYSl9O3FrPWZ1bmN0aW9uKGEpe3ZhciBiPWtrKCk7aWYoYTwwKWIuQWEoLWEpO2Vsc2V7dmFyIGM9bmtbYV07Yz8oYi5BYShjKSxkZWxldGUgbmtbYV0pOndpbmRvdy5jbGVhclRpbWVvdXQoYSl9fTtzaz1mdW5jdGlvbigpe3JrKCl9Owpyaz1mdW5jdGlvbigpe3dpbmRvdy5jbGVhclRpbWVvdXQodGspO2trKCkuc3RhcnQoKX07dms9ZnVuY3Rpb24oKXtraygpLnBhdXNlKCk7d2luZG93LmNsZWFyVGltZW91dCh0ayk7dGs9d2luZG93LnNldFRpbWVvdXQoc2ssdWspfTt5az1mdW5jdGlvbigpe3dpbmRvdy5jbGVhclRpbWVvdXQod2spO3drPXdpbmRvdy5zZXRUaW1lb3V0KCgpPT57eGsoMCl9LHVrKX07eGs9ZnVuY3Rpb24oYSl7eWsoKTt2YXIgYj1raygpO2IuQj1hO2Iuc3RhcnQoKX07ems9ZnVuY3Rpb24oYSl7eWsoKTt2YXIgYj1raygpO2IuQj5hJiYoYi5CPWEsYi5zdGFydCgpKX07QWs9ZnVuY3Rpb24oKXt3aW5kb3cuY2xlYXJUaW1lb3V0KHdrKTt2YXIgYT1raygpO2EuQj0wO2Euc3RhcnQoKX07Xy5Daz1mdW5jdGlvbigpe0JrLmluc3RhbmNlfHwoQmsuaW5zdGFuY2U9bmV3IEJrKTtyZXR1cm4gQmsuaW5zdGFuY2V9OwpFaz1mdW5jdGlvbigpe3JldHVybiBEaygpPy5nZXQoIkxBU1RfUkVTVUxUX0VOVFJZX0tFWSIsITApfTtfLklrPWZ1bmN0aW9uKGEpe0ZrfHwoXy5Haz9fLkdrLkpiKGEpOihfLkhrLnB1c2goe3R5cGU6IkVSUk9SIixwYXlsb2FkOmF9KSxfLkhrLmxlbmd0aD4xMCYmXy5Iay5zaGlmdCgpKSl9O0prPWZ1bmN0aW9uKGEsYil7Rmt8fChfLkdrP18uR2subG0oYSxiKTooXy5Iay5wdXNoKHt0eXBlOiJFVkVOVCIsZXZlbnRUeXBlOmEscGF5bG9hZDpifSksXy5Iay5sZW5ndGg+MTAmJl8uSGsuc2hpZnQoKSkpfTtLaz1mdW5jdGlvbihhKXtpZihhLmluZGV4T2YoIjoiKT49MCl0aHJvdyBFcnJvcigiaGEiKTt9O0xrPWZ1bmN0aW9uKGEpe3JldHVybiBhLnN1YnN0cigwLGEuaW5kZXhPZigiOiIpKXx8YX07Xy5Naz1mdW5jdGlvbihhKXt2YXIgYj1fLmJjKCk7cmV0dXJuIGI/Yi50b0xvd2VyQ2FzZSgpLmluZGV4T2YoYSk+PTA6ITF9OwpSaz1mdW5jdGlvbihhLGIsYyxkKXtiPUxrKGIpO3ZhciBlPWEgaW5zdGFuY2VvZiBFcnJvcj9hOkVycm9yKCJpYWAiK2EpO2lmKGUgaW5zdGFuY2VvZiBOaylyZXR1cm4gZTthPXtvYmplY3RTdG9yZU5hbWVzOmMsZGJOYW1lOmIsZGJWZXJzaW9uOmR9O2lmKGUubmFtZT09PSJRdW90YUV4Y2VlZGVkRXJyb3IiKXJldHVybiBuZXcgTmsoIlFVT1RBX0VYQ0VFREVEIixhKTtpZihfLk9rJiZlLm5hbWU9PT0iVW5rbm93bkVycm9yIilyZXR1cm4gbmV3IE5rKCJRVU9UQV9NQVlCRV9FWENFRURFRCIsYSk7aWYoZSBpbnN0YW5jZW9mIFBrKXJldHVybiBuZXcgTmsoIk1JU1NJTkdfSU5ERVgiLHsuLi5hLG9iamVjdFN0b3JlOmUub2JqZWN0U3RvcmUsaW5kZXg6ZS5pbmRleH0pO2lmKGUubmFtZT09PSJJbnZhbGlkU3RhdGVFcnJvciImJlFrLnNvbWUoZj0+ZS5tZXNzYWdlLmluY2x1ZGVzKGYpKSlyZXR1cm4gbmV3IE5rKCJFWEVDVVRFX1RSQU5TQUNUSU9OX09OX0NMT1NFRF9EQiIsYSk7aWYoZS5uYW1lPT09CiJBYm9ydEVycm9yIilyZXR1cm4gbmV3IE5rKCJVTktOT1dOX0FCT1JUIixhLGUubWVzc2FnZSk7ZS5hcmdzPVt7Li4uYSxuYW1lOiJJZGJFcnJvciIsTW06ZS5uYW1lfV07ZS5sZXZlbD0iV0FSTklORyI7cmV0dXJuIGV9O1NrPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1FaygpO3JldHVybiBuZXcgTmsoIklEQl9OT1RfU1VQUE9SVEVEIix7Y29udGV4dDp7Y2FsbGVyOmEscHVibGljTmFtZTpiLHZlcnNpb246YyxoYXNTdWNjZWVkZWRPbmNlOmQ/Lmhhc1N1Y2NlZWRlZE9uY2V9fSl9O1RrPWZ1bmN0aW9uKGEpe2lmKCFhKXRocm93IEVycm9yKCk7dGhyb3cgYTt9O1VrPWZ1bmN0aW9uKGEpe3JldHVybiBhfTtYaz1mdW5jdGlvbihhLGIsYyxkLGUpe3RyeXtpZihhLnN0YXRlLnN0YXR1cyE9PSJGVUxGSUxMRUQiKXRocm93IEVycm9yKCJqYSIpO2xldCBmPWMoYS5zdGF0ZS52YWx1ZSk7ZiBpbnN0YW5jZW9mIF8uVms/V2soYSxiLGYsZCxlKTpkKGYpfWNhdGNoKGYpe2UoZil9fTsKWWs9ZnVuY3Rpb24oYSxiLGMsZCxlKXt0cnl7aWYoYS5zdGF0ZS5zdGF0dXMhPT0iUkVKRUNURUQiKXRocm93IEVycm9yKCJrYSIpO2xldCBmPWMoYS5zdGF0ZS5yZWFzb24pO2YgaW5zdGFuY2VvZiBfLlZrP1drKGEsYixmLGQsZSk6ZChmKX1jYXRjaChmKXtlKGYpfX07V2s9ZnVuY3Rpb24oYSxiLGMsZCxlKXtiPT09Yz9lKG5ldyBUeXBlRXJyb3IoImxhIikpOmMudGhlbihmPT57ZiBpbnN0YW5jZW9mIF8uVms/V2soYSxiLGYsZCxlKTpkKGYpfSxmPT57ZShmKX0pfTtaaz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9KCk9Pnt0cnl7YS5yZW1vdmVFdmVudExpc3RlbmVyKCJzdWNjZXNzIixlKSxhLnJlbW92ZUV2ZW50TGlzdGVuZXIoImVycm9yIixmKX1jYXRjaHt9fSxlPSgpPT57YihhLnJlc3VsdCk7ZCgpfSxmPSgpPT57YyhhLmVycm9yKTtkKCl9O2EuYWRkRXZlbnRMaXN0ZW5lcigic3VjY2VzcyIsZSk7YS5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsZil9Owokaz1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IFByb21pc2UoKGIsYyk9PntaayhhLGIsYyl9KX07Ymw9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBfLlZrKG5ldyBhbCgoYixjKT0+e1prKGEsYixjKX0pKX07Y2w9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbmV3IF8uVmsobmV3IGFsKChjLGQpPT57dmFyIGU9KCk9Pnt2YXIgZj1hP2IoYSk6bnVsbDtmP2YudGhlbihoPT57YT1oO2UoKX0sZCk6YygpfTtlKCl9KSl9O2RsPWZ1bmN0aW9uKCl7cmV0dXJuIF8ueCgiaWRiX2ltbWVkaWF0ZV9jb21taXQiKX07Cl8uaWw9YXN5bmMgZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9e21vZGU6InJlYWRvbmx5IixrYjohMSx0YWc6IklEQl9UUkFOU0FDVElPTl9UQUdfVU5LTk9XTiJ9O3R5cGVvZiBjPT09InN0cmluZyI/ZS5tb2RlPWM6T2JqZWN0LmFzc2lnbihlLGMpO2EudHJhbnNhY3Rpb25Db3VudCsrO2M9ZS5rYj8zOjE7Zm9yKHZhciBmPTAsaDshaDspe2YrKztsZXQgbj1NYXRoLnJvdW5kKCgwLF8uZWwpKCkpO3RyeXt2YXIgaz1hLmoudHJhbnNhY3Rpb24oYixlLm1vZGUpLGw9ZCxtPSEhZS5jb21taXQ7bGV0IHA9bmV3IGZsKGspLHI9YXdhaXQgZ2wocCxsLG0pLHQ9TWF0aC5yb3VuZCgoMCxfLmVsKSgpKTtobChhLG4sdCxmLHZvaWQgMCxiLmpvaW4oKSxlKTtyZXR1cm4gcn1jYXRjaChwKXtsPU1hdGgucm91bmQoKDAsXy5lbCkoKSk7bGV0IHI9UmsocCxhLmoubmFtZSxiLmpvaW4oKSxhLmoudmVyc2lvbik7aWYociBpbnN0YW5jZW9mIE5rJiYhci5qfHxmPj1jKWhsKGEsbixsLGYscixiLmpvaW4oKSwKZSksaD1yfX1yZXR1cm4gUHJvbWlzZS5yZWplY3QoaCl9O18ua2w9ZnVuY3Rpb24oYSxiLGMpe2E9YS5qLmNyZWF0ZU9iamVjdFN0b3JlKGIsYyk7cmV0dXJuIG5ldyBqbChhKX07Xy5tbD1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uaWwoYSxbYl0se21vZGU6InJlYWR3cml0ZSIsa2I6ITAsY29tbWl0OmRsKCl9LGQ9Pl8ubGwoZC5vYmplY3RTdG9yZShiKSxjKSl9OwpobD1mdW5jdGlvbihhLGIsYyxkLGUsZixoKXtiPWMtYjtlPyhlIGluc3RhbmNlb2YgTmsmJihlLnR5cGU9PT0iUVVPVEFfRVhDRUVERUQifHxlLnR5cGU9PT0iUVVPVEFfTUFZQkVfRVhDRUVERUQiKSYmSmsoIlFVT1RBX0VYQ0VFREVEIix7ZGJOYW1lOkxrKGEuai5uYW1lKSxvYmplY3RTdG9yZU5hbWVzOmYsdHJhbnNhY3Rpb25Db3VudDphLnRyYW5zYWN0aW9uQ291bnQsdHJhbnNhY3Rpb25Nb2RlOmgubW9kZX0pLGUgaW5zdGFuY2VvZiBOayYmZS50eXBlPT09IlVOS05PV05fQUJPUlQiJiYoYy09YS52LGM8MCYmYz49MjE0NzQ4MzY0OCYmKGM9MCksSmsoIlRSQU5TQUNUSU9OX1VORVhQRUNURURMWV9BQk9SVEVEIix7b2JqZWN0U3RvcmVOYW1lczpmLHRyYW5zYWN0aW9uRHVyYXRpb246Yix0cmFuc2FjdGlvbkNvdW50OmEudHJhbnNhY3Rpb25Db3VudCxkYkR1cmF0aW9uOmN9KSxhLm89ITApLG5sKGEsITEsZCxmLGIsaC50YWcpLF8uSWsoZSkpOm5sKGEsITAsZCxmLGIsaC50YWcpfTsKbmw9ZnVuY3Rpb24oYSxiLGMsZCxlLGY9IklEQl9UUkFOU0FDVElPTl9UQUdfVU5LTk9XTiIpe0prKCJUUkFOU0FDVElPTl9FTkRFRCIse29iamVjdFN0b3JlTmFtZXM6ZCxjb25uZWN0aW9uSGFzVW5rbm93bkFib3J0ZWRUcmFuc2FjdGlvbjphLm8sZHVyYXRpb246ZSxpc1N1Y2Nlc3NmdWw6Yix0cnlDb3VudDpjLHRhZzpmfSl9O18ubGw9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYmwoYS5qLnB1dChiLHZvaWQgMCkpfTtfLm9sPWZ1bmN0aW9uKGEsYixjKXthLmouY3JlYXRlSW5kZXgoYixjLHt1bmlxdWU6ITF9KX07cWw9ZnVuY3Rpb24oYSxiLGMpe2E9YS5qLm9wZW5DdXJzb3IoYi5xdWVyeSxiLmRpcmVjdGlvbik7cmV0dXJuIHBsKGEpLnRoZW4oZD0+Y2woZCxjKSl9O3NsPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHFsKGEse3F1ZXJ5OmJ9LGM9PmMuZGVsZXRlKCkudGhlbigoKT0+cmwoYykpKS50aGVuKCgpPT57fSl9Owp0bD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W107cmV0dXJuIHFsKGEse3F1ZXJ5OmJ9LGU9PntpZighKGMhPT12b2lkIDAmJmQubGVuZ3RoPj1jKSlyZXR1cm4gZC5wdXNoKGUuY3Vyc29yLnZhbHVlKSxybChlKX0pLnRoZW4oKCk9PmQpfTtnbD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmV3IFByb21pc2UoKGUsZik9Pnt0cnl7bGV0IGg9YihhKTtjJiZhLmNvbW1pdCgpO2gudGhlbihrPT57ZShrKX0pLmNhdGNoKGYpfWNhdGNoKGgpe2YoaCksYS5hYm9ydCgpfX0pO3JldHVybiBQcm9taXNlLmFsbChbZCxhLmRvbmVdKS50aGVuKChbZV0pPT5lKX07dWw9ZnVuY3Rpb24oYSxiLGMpe3ZhciB7cXVlcnk6ZD1udWxsLGRpcmVjdGlvbjplPSJuZXh0In09YjthPWEuai5vcGVuQ3Vyc29yKGQsZSk7cmV0dXJuIHBsKGEpLnRoZW4oZj0+Y2woZixjKSl9Owp2bD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W107cmV0dXJuIHVsKGEse3F1ZXJ5OmJ9LGU9PntpZighKGMhPT12b2lkIDAmJmQubGVuZ3RoPj1jKSlyZXR1cm4gZC5wdXNoKGUuY3Vyc29yLnZhbHVlKSxybChlKX0pLnRoZW4oKCk9PmQpfTtwbD1mdW5jdGlvbihhKXtyZXR1cm4gYmwoYSkudGhlbihiPT5iP25ldyB3bChhLGIpOm51bGwpfTtybD1mdW5jdGlvbihhKXthLmN1cnNvci5jb250aW51ZSh2b2lkIDApO3JldHVybiBwbChhLnJlcXVlc3QpfTsKeWw9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBuZXcgUHJvbWlzZSgoZCxlKT0+e3ZhciBmPWIhPT12b2lkIDA/c2VsZi5pbmRleGVkREIub3BlbihhLGIpOnNlbGYuaW5kZXhlZERCLm9wZW4oYSk7dmFyIGg9Yy5ibG9ja2VkLGs9Yy5ibG9ja2luZyxsPWMuVEEsbT1jLnVwZ3JhZGUsbj1jLmNsb3NlZCxwLHI9KCk9PntwfHwocD1uZXcgeGwoZi5yZXN1bHQse2Nsb3NlZDpufSkpO3JldHVybiBwfTtmLmFkZEV2ZW50TGlzdGVuZXIoInVwZ3JhZGVuZWVkZWQiLHQ9Pnt0cnl7aWYodC5uZXdWZXJzaW9uPT09bnVsbCl0aHJvdyBFcnJvcigibmEiKTtpZihmLnRyYW5zYWN0aW9uPT09bnVsbCl0aHJvdyBFcnJvcigib2EiKTt0LmRhdGFMb3NzJiZ0LmRhdGFMb3NzIT09Im5vbmUiJiZKaygiSURCX0RBVEFfQ09SUlVQVEVEIix7cmVhc29uOnQuZGF0YUxvc3NNZXNzYWdlfHwidW5rbm93biByZWFzb24iLGRiTmFtZTpMayhhKX0pO2xldCB2PXIoKSx6PW5ldyBmbChmLnRyYW5zYWN0aW9uKTttJiYKbSh2LEU9PnQub2xkVmVyc2lvbjxFJiZ0Lm5ld1ZlcnNpb24+PUUseik7ei5kb25lLmNhdGNoKEU9PntlKEUpfSl9Y2F0Y2godil7ZSh2KX19KTtmLmFkZEV2ZW50TGlzdGVuZXIoInN1Y2Nlc3MiLCgpPT57dmFyIHQ9Zi5yZXN1bHQ7ayYmdC5hZGRFdmVudExpc3RlbmVyKCJ2ZXJzaW9uY2hhbmdlIiwoKT0+e2socigpKX0pO3QuYWRkRXZlbnRMaXN0ZW5lcigiY2xvc2UiLCgpPT57SmsoIklEQl9VTkVYUEVDVEVETFlfQ0xPU0VEIix7ZGJOYW1lOkxrKGEpLGRiVmVyc2lvbjp0LnZlcnNpb259KTtsJiZsKCl9KTtkKHIoKSl9KTtmLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIiwoKT0+e2UoZi5lcnJvcil9KTtoJiZmLmFkZEV2ZW50TGlzdGVuZXIoImJsb2NrZWQiLCgpPT57aCgpfSl9KX07emw9ZnVuY3Rpb24oYSxiLGM9e30pe3JldHVybiB5bChhLGIsYyl9OwpfLkFsPWFzeW5jIGZ1bmN0aW9uKGEsYj17fSl7dHJ5e2xldCBjPXNlbGYuaW5kZXhlZERCLmRlbGV0ZURhdGFiYXNlKGEpLGQ9Yi5ibG9ja2VkO2QmJmMuYWRkRXZlbnRMaXN0ZW5lcigiYmxvY2tlZCIsKCk9PntkKCl9KTthd2FpdCAkayhjKX1jYXRjaChjKXt0aHJvdyBSayhjLGEsIiIsLTEpO319O0JsPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBOaygiSU5DT01QQVRJQkxFX0RCX1ZFUlNJT04iLHtkYk5hbWU6YS5uYW1lLG9sZFZlcnNpb246YS5vcHRpb25zLnZlcnNpb24sbmV3VmVyc2lvbjpifSl9O18uQ2w9ZnVuY3Rpb24oYSxiKXtpZighYil0aHJvdyBTaygib3BlbldpdGhUb2tlbiIsTGsoYS5uYW1lKSk7cmV0dXJuIGEub3BlbigpfTsKRWw9YXN5bmMgZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5pbChhd2FpdCBfLkNsKERsLGIpLFsiZGF0YWJhc2VzIl0se2tiOiEwLG1vZGU6InJlYWR3cml0ZSJ9LGM9Pnt2YXIgZD1jLm9iamVjdFN0b3JlKCJkYXRhYmFzZXMiKTtyZXR1cm4gZC5nZXQoYS5hY3R1YWxOYW1lKS50aGVuKGU9PntpZihlP2EuYWN0dWFsTmFtZSE9PWUuYWN0dWFsTmFtZXx8YS5wdWJsaWNOYW1lIT09ZS5wdWJsaWNOYW1lfHxhLnVzZXJJZGVudGlmaWVyIT09ZS51c2VySWRlbnRpZmllcjoxKXJldHVybiBfLmxsKGQsYSkudGhlbigoKT0+e30pfSl9KX07Xy5GbD1hc3luYyBmdW5jdGlvbihhLGIpe3JldHVybiBhPyhhd2FpdCBfLkNsKERsLGIpKS5kZWxldGUoImRhdGFiYXNlcyIsYSk6dm9pZCAwfTsKXy5HbD1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPVtdO2I9YXdhaXQgXy5DbChEbCxiKTthd2FpdCBfLmlsKGIsWyJkYXRhYmFzZXMiXSx7a2I6ITAsbW9kZToicmVhZG9ubHkifSxkPT57Yy5sZW5ndGg9MDtyZXR1cm4gcWwoZC5vYmplY3RTdG9yZSgiZGF0YWJhc2VzIikse30sZT0+e2EoZS5jdXJzb3IudmFsdWUpJiZjLnB1c2goZS5jdXJzb3IudmFsdWUpO3JldHVybiBybChlKX0pfSk7cmV0dXJuIGN9O0hsPWZ1bmN0aW9uKGEpe3JldHVybiBfLkdsKGI9PmIucHVibGljTmFtZT09PSJMb2dzRGF0YWJhc2VWMiImJmIudXNlcklkZW50aWZpZXIhPT12b2lkIDAsYSl9OwpMbD1hc3luYyBmdW5jdGlvbigpe2lmKEVrKCk/Lmhhc1N1Y2NlZWRlZE9uY2UpcmV0dXJuITA7dmFyIGE7aWYoYT1fLklsKWE9L1dlYktpdFwvKFswLTldKykvLmV4ZWMoXy5iYygpKSxhPSEhKGEmJnBhcnNlSW50KGFbMV0sMTApPj02MDApO2EmJihhPS9XZWJLaXRcLyhbMC05XSspLy5leGVjKF8uYmMoKSksYT0hKGEmJnBhcnNlSW50KGFbMV0sMTApPj02MDIpKTtpZighKGE9YXx8Xy5KbCkpe3RyeXthPXNlbGY7dmFyIGI9ISEoYS5pbmRleGVkREImJmEuSURCSW5kZXgmJmEuSURCS2V5UmFuZ2UmJmEuSURCT2JqZWN0U3RvcmUpfWNhdGNoKGMpe2I9ITF9YT0hYn1pZihhfHwhKCJJREJUcmFuc2FjdGlvbiJpbiBzZWxmJiYib2JqZWN0U3RvcmVOYW1lcyJpbiBJREJUcmFuc2FjdGlvbi5wcm90b3R5cGUpKXJldHVybiExO3RyeXtyZXR1cm4gYXdhaXQgRWwoe2FjdHVhbE5hbWU6Inl0LWlkYi10ZXN0LWRvLW5vdC11c2UiLHB1YmxpY05hbWU6Inl0LWlkYi10ZXN0LWRvLW5vdC11c2UiLAp1c2VySWRlbnRpZmllcjp2b2lkIDB9LEtsKSxhd2FpdCBfLkZsKCJ5dC1pZGItdGVzdC1kby1ub3QtdXNlIixLbCksITB9Y2F0Y2goYyl7cmV0dXJuITF9fTtObD1mdW5jdGlvbigpe2lmKE1sIT09dm9pZCAwKXJldHVybiBNbDtGaz0hMDtyZXR1cm4gTWw9TGwoKS50aGVuKGE9PntGaz0hMTtpZihEaygpPy5vKCkpe3ZhciBiPXtoYXNTdWNjZWVkZWRPbmNlOkVrKCk/Lmhhc1N1Y2NlZWRlZE9uY2V8fGF9O0RrKCk/LnNldCgiTEFTVF9SRVNVTFRfRU5UUllfS0VZIixiLDI1OTJFMywhMCl9cmV0dXJuIGF9KX07T2w9ZnVuY3Rpb24oKXtyZXR1cm4gXy5zYSgieXRnbG9iYWwuaWRiVG9rZW5fIil8fHZvaWQgMH07Xy5QbD1mdW5jdGlvbigpe3ZhciBhPU9sKCk7cmV0dXJuIGE/UHJvbWlzZS5yZXNvbHZlKGEpOk5sKCkudGhlbihiPT57Yj8oXy5yYSgieXRnbG9iYWwuaWRiVG9rZW5fIixLbCksYj1LbCk6Yj12b2lkIDA7cmV0dXJuIGJ9KX07ClFsPWZ1bmN0aW9uKGEpe2lmKCFfLldqKCkpdGhyb3cgYT1uZXcgTmsoIkFVVEhfSU5WQUxJRCIse2RiTmFtZTphfSksXy5JayhhKSxhO3ZhciBiPV8uVmooKTtyZXR1cm57YWN0dWFsTmFtZTpgJHthfToke2J9YCxwdWJsaWNOYW1lOmEsdXNlcklkZW50aWZpZXI6Yn19OwpSbD1hc3luYyBmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1FcnJvcigpLnN0YWNrPz8iIixmPWF3YWl0IF8uUGwoKTtpZighZil0aHJvdyBiPVNrKCJvcGVuRGJJbXBsIixhLGIpLF8ueCgieXRpZGJfYXN5bmNfc3RhY2tfa2lsbHN3aXRjaCIpfHwoYi5zdGFjaz1gJHtiLnN0YWNrfVxuJHtlLnN1YnN0cmluZyhlLmluZGV4T2YoIlxuIikrMSl9YCksXy5JayhiKSxiO0trKGEpO2U9Yz97YWN0dWFsTmFtZTphLHB1YmxpY05hbWU6YSx1c2VySWRlbnRpZmllcjp2b2lkIDB9OlFsKGEpO3RyeXtyZXR1cm4gYXdhaXQgRWwoZSxmKSxhd2FpdCB6bChlLmFjdHVhbE5hbWUsYixkKX1jYXRjaChoKXt0cnl7YXdhaXQgXy5GbChlLmFjdHVhbE5hbWUsZil9Y2F0Y2h7fXRocm93IGg7fX07U2w9ZnVuY3Rpb24oYSxiLGM9e30pe3JldHVybiBSbChhLGIsITEsYyl9O1RsPWZ1bmN0aW9uKGEsYixjPXt9KXtyZXR1cm4gUmwoYSxiLCEwLGMpfTsKVWw9YXN5bmMgZnVuY3Rpb24oYSxiPXt9KXt2YXIgYz1hd2FpdCBfLlBsKCk7YyYmKEtrKGEpLGE9UWwoYSksYXdhaXQgXy5BbChhLmFjdHVhbE5hbWUsYiksYXdhaXQgXy5GbChhLmFjdHVhbE5hbWUsYykpfTtWbD1mdW5jdGlvbihhLGIsYyl7YT1hLm1hcChhc3luYyBkPT57YXdhaXQgXy5BbChkLmFjdHVhbE5hbWUsYik7YXdhaXQgXy5GbChkLmFjdHVhbE5hbWUsYyl9KTtyZXR1cm4gUHJvbWlzZS5hbGwoYSkudGhlbigoKT0+e30pfTtXbD1hc3luYyBmdW5jdGlvbigpe3ZhciBhPXt9LGI9YXdhaXQgXy5QbCgpO2lmKGIpe0trKCJMb2dzRGF0YWJhc2VWMiIpO3ZhciBjPWF3YWl0IEhsKGIpO2F3YWl0IFZsKGMsYSxiKX19O1hsPWFzeW5jIGZ1bmN0aW9uKGEsYj17fSl7dmFyIGM9YXdhaXQgXy5QbCgpO2MmJihLayhhKSxhd2FpdCBfLkFsKGEsYiksYXdhaXQgXy5GbChhLGMpKX07Wmw9ZnVuY3Rpb24oYSxiKXt2YXIgYztyZXR1cm4oKT0+e2N8fChjPW5ldyBZbChhLGIpKTtyZXR1cm4gY319OwpfLiRsPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFpsKGEsYil9O2JtPWZ1bmN0aW9uKGEpe3JldHVybiBfLkNsKGFtKCksYSl9O2NtPWFzeW5jIGZ1bmN0aW9uKGEsYixjKXthPXtjb25maWc6YSxoYXNoRGF0YTpiLHRpbWVzdGFtcDooMCxfLmVsKSgpfTtjPWF3YWl0IGJtKGMpO2F3YWl0IGMuY2xlYXIoImhvdENvbmZpZ1N0b3JlIik7cmV0dXJuIGF3YWl0IF8ubWwoYywiaG90Q29uZmlnU3RvcmUiLGEpfTtkbT1hc3luYyBmdW5jdGlvbihhLGIsYyxkKXthPXtjb25maWc6YSxoYXNoRGF0YTpiLGNvbmZpZ0RhdGE6Yyx0aW1lc3RhbXA6KDAsXy5lbCkoKX07ZD1hd2FpdCBibShkKTthd2FpdCBkLmNsZWFyKCJjb2xkQ29uZmlnU3RvcmUiKTtyZXR1cm4gYXdhaXQgXy5tbChkLCJjb2xkQ29uZmlnU3RvcmUiLGEpfTsKZW09YXN5bmMgZnVuY3Rpb24oYSl7YT1hd2FpdCBibShhKTt2YXIgYj12b2lkIDA7YXdhaXQgXy5pbChhLFsiY29sZENvbmZpZ1N0b3JlIl0se21vZGU6InJlYWR3cml0ZSIsa2I6ITB9LGM9PnVsKGMub2JqZWN0U3RvcmUoImNvbGRDb25maWdTdG9yZSIpLmluZGV4KCJjb2xkVGltZXN0YW1wSW5kZXgiKSx7ZGlyZWN0aW9uOiJwcmV2In0sZD0+e2I9ZC5jdXJzb3IudmFsdWV9KSk7cmV0dXJuIGJ9O2ZtPWFzeW5jIGZ1bmN0aW9uKGEpe2E9YXdhaXQgYm0oYSk7dmFyIGI9dm9pZCAwO2F3YWl0IF8uaWwoYSxbImhvdENvbmZpZ1N0b3JlIl0se21vZGU6InJlYWR3cml0ZSIsa2I6ITB9LGM9PnVsKGMub2JqZWN0U3RvcmUoImhvdENvbmZpZ1N0b3JlIikuaW5kZXgoImhvdFRpbWVzdGFtcEluZGV4Iikse2RpcmVjdGlvbjoicHJldiJ9LGQ9PntiPWQuY3Vyc29yLnZhbHVlfSkpO3JldHVybiBifTsKZ209YXN5bmMgZnVuY3Rpb24oYSxiLGMpe2lmKF8ueCgic3RhcnRfY2xpZW50X2djZiIpKXtjJiYoYS52PWMsXy5yYSgieXQuZ2NmLmNvbmZpZy5ob3RDb25maWdHcm91cCIsYS52fHxudWxsKSk7YS5CKGIpO2xldCBkPU9sKCk7ZCYmKGN8fChjPShhd2FpdCBmbShkKSk/LmNvbmZpZyksYXdhaXQgY20oYyxiLGQpKTtpZihjKXthPWEubztmb3IobGV0IGUgb2YgYS5qKWUoYyl9fX07aG09YXN5bmMgZnVuY3Rpb24oYSxiLGMpe18ueCgic3RhcnRfY2xpZW50X2djZiIpJiYoYS5jb2xkSGFzaERhdGE9YixfLnJhKCJ5dC5nY2YuY29uZmlnLmNvbGRIYXNoRGF0YSIsYS5jb2xkSGFzaERhdGF8fG51bGwpLGE9T2woKSkmJihjfHwoYz0oYXdhaXQgZW0oYSkpPy5jb25maWcpLGMmJmF3YWl0IGRtKGMsYixjLmNvbmZpZ0RhdGEsYSkpfTsKXy5qbT1mdW5jdGlvbigpe2lmKCFpbS5pbnN0YW5jZSl7dmFyIGE9bmV3IGltO2ltLmluc3RhbmNlPWF9YT1pbS5pbnN0YW5jZTt2YXIgYj0oMCxfLmVsKSgpLWEuajtpZighKGEuaiE9PTAmJmI8Xy5zaigic2VuZF9jb25maWdfaGFzaF90aW1lciIpKSl7Yj1fLnNhKCJ5dC5nY2YuY29uZmlnLmNvbGRDb25maWdEYXRhIik7dmFyIGM9Xy5zYSgieXQuZ2NmLmNvbmZpZy5ob3RIYXNoRGF0YSIpLGQ9Xy5zYSgieXQuZ2NmLmNvbmZpZy5jb2xkSGFzaERhdGEiKTtiJiZjJiZkJiYoYS5qPSgwLF8uZWwpKCkpO3JldHVybntjb2xkQ29uZmlnRGF0YTpiLGhvdEhhc2hEYXRhOmMsY29sZEhhc2hEYXRhOmR9fX07a209ZnVuY3Rpb24oKXtyZXR1cm4iSU5ORVJUVUJFX0FQSV9LRVkiaW4gXy5QaSYmIklOTkVSVFVCRV9BUElfVkVSU0lPTiJpbiBfLlBpfTsKbG09ZnVuY3Rpb24oKXtyZXR1cm57aW5uZXJ0dWJlQXBpS2V5Ol8udygiSU5ORVJUVUJFX0FQSV9LRVkiKSxpbm5lcnR1YmVBcGlWZXJzaW9uOl8udygiSU5ORVJUVUJFX0FQSV9WRVJTSU9OIiksd3g6Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfQ09ORklHX0lORk8iKSxtcTpfLncoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9OQU1FIiwiV0VCIikscUo6Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsMSksaW5uZXJ0dWJlQ29udGV4dENsaWVudFZlcnNpb246Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfVkVSU0lPTiIpLHl4Ol8udygiSU5ORVJUVUJFX0NPTlRFWFRfSEwiKSx4eDpfLncoIklOTkVSVFVCRV9DT05URVhUX0dMIikseng6Xy53KCJJTk5FUlRVQkVfSE9TVF9PVkVSUklERSIpfHwiIixBeDohIV8udygiSU5ORVJUVUJFX1VTRV9USElSRF9QQVJUWV9BVVRIIiwhMSkscko6ISFfLncoIklOTkVSVFVCRV9PTUlUX0FQSV9LRVlfV0hFTl9BVVRIX0hFQURFUl9JU19QUkVTRU5UIiwKITEpLGFwcEluc3RhbGxEYXRhOl8udygiU0VSSUFMSVpFRF9DTElFTlRfQ09ORklHX0RBVEEiKX19OwptbT1mdW5jdGlvbihhKXt2YXIgYj17Y2xpZW50OntobDphLnl4LGdsOmEueHgsY2xpZW50TmFtZTphLm1xLGNsaWVudFZlcnNpb246YS5pbm5lcnR1YmVDb250ZXh0Q2xpZW50VmVyc2lvbixjb25maWdJbmZvOmEud3h9fTtuYXZpZ2F0b3IudXNlckFnZW50JiYoYi5jbGllbnQudXNlckFnZW50PVN0cmluZyhuYXZpZ2F0b3IudXNlckFnZW50KSk7dmFyIGM9Xy51LmRldmljZVBpeGVsUmF0aW87YyYmYyE9MSYmKGIuY2xpZW50LnNjcmVlbkRlbnNpdHlGbG9hdD1TdHJpbmcoYykpO2M9Xy53KCJFWFBFUklNRU5UU19UT0tFTiIsIiIpO2MhPT0iIiYmKGIuY2xpZW50LmV4cGVyaW1lbnRzVG9rZW49Yyk7Yz1fLnVqKCk7Yy5sZW5ndGg+MCYmKGIucmVxdWVzdD17aW50ZXJuYWxFeHBlcmltZW50RmxhZ3M6Y30pO2M9YS5tcTtjIT09IldFQiImJmMhPT0iTVdFQiImJmMhPT0xJiZjIT09Mnx8IWJ8fChiLmNsaWVudC5tYWluQXBwV2ViSW5mbz1iLmNsaWVudC5tYWluQXBwV2ViSW5mbz8/e30sCmIuY2xpZW50Lm1haW5BcHBXZWJJbmZvLndlYkRpc3BsYXlNb2RlPV8uT2ooKSk7KGM9Xy5zYSgieXQuZW1iZWRkZWRfcGxheWVyLmVtYmVkX3VybCIpKSYmYiYmKGIudGhpcmRQYXJ0eT17ZW1iZWRVcmw6Y30pO18ueCgid2ViX2xvZ19tZW1vcnlfdG90YWxfa2J5dGVzIikmJl8udS5uYXZpZ2F0b3I/LmRldmljZU1lbW9yeSYmKGM9Xy51Lm5hdmlnYXRvcj8uZGV2aWNlTWVtb3J5LGImJihiLmNsaWVudC5tZW1vcnlUb3RhbEtieXRlcz1gJHtjKjFFNn1gKSk7YS5hcHBJbnN0YWxsRGF0YSYmYiYmKGIuY2xpZW50LmNvbmZpZ0luZm89Yi5jbGllbnQuY29uZmlnSW5mb3x8e30sYi5jbGllbnQuY29uZmlnSW5mby5hcHBJbnN0YWxsRGF0YT1hLmFwcEluc3RhbGxEYXRhKTsoYT1fLlNqKCkpJiZiJiYoYi5jbGllbnQuY29ubmVjdGlvblR5cGU9YSk7Xy54KCJ3ZWJfbG9nX2VmZmVjdGl2ZV9jb25uZWN0aW9uX3R5cGUiKSYmKGE9Xy5VaigpKSYmYiYmKGIuY2xpZW50LmVmZmVjdGl2ZUNvbm5lY3Rpb25UeXBlPQphKTtpZihfLngoInN0YXJ0X2NsaWVudF9nY2YiKSl7dmFyIGQ9Xy5qbSgpO2QmJihhPWQuY29sZENvbmZpZ0RhdGEsYz1kLmNvbGRIYXNoRGF0YSxkPWQuaG90SGFzaERhdGEsYiYmKGIuY2xpZW50LmNvbmZpZ0luZm89Yi5jbGllbnQuY29uZmlnSW5mb3x8e30sYSYmKGIuY2xpZW50LmNvbmZpZ0luZm8uY29sZENvbmZpZ0RhdGE9YSksYyYmKGIuY2xpZW50LmNvbmZpZ0luZm8uY29sZEhhc2hEYXRhPWMpLGQmJihiLmNsaWVudC5jb25maWdJbmZvLmhvdEhhc2hEYXRhPWQpKSl9Xy53KCJERUxFR0FURURfU0VTU0lPTl9JRCIpJiYhXy54KCJwYWdlaWRfYXNfaGVhZGVyX3dlYiIpJiYoYi51c2VyPXtvbkJlaGFsZk9mVXNlcjpfLncoIkRFTEVHQVRFRF9TRVNTSU9OX0lEIil9KTshXy54KCJmaWxsX2RlbGVnYXRlX2NvbnRleHRfaW5fZ2VsX2tpbGxzd2l0Y2giKSYmKGE9Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9TRVJJQUxJWkVEX0RFTEVHQVRJT05fQ09OVEVYVCIpKSYmKGIudXNlcj0Key4uLmIudXNlcixzZXJpYWxpemVkRGVsZWdhdGlvbkNvbnRleHQ6YX0pO2E9Xy53KCJJTk5FUlRVQkVfQ09OVEVYVCIpO18ueCgiZW5hYmxlX3BlcnNpc3RlbnRfZGV2aWNlX3Rva2VuIikmJmE/LmNsaWVudD8ucm9sbG91dFRva2VuJiYoYi5jbGllbnQucm9sbG91dFRva2VuPWE/LmNsaWVudD8ucm9sbG91dFRva2VuKTthPU9iamVjdDtjPWEuYXNzaWduO2Q9Yi5jbGllbnQ7dmFyIGU9Xy53KCJERVZJQ0UiLCIiKSxmPXt9O2ZvcihsZXQgW2gsa11vZiBPYmplY3QuZW50cmllcyhfLmJqKGUpKSllPWgsZT09PSJjYnJhbmQiP2YuZGV2aWNlTWFrZT1rOmU9PT0iY21vZGVsIj9mLmRldmljZU1vZGVsPWs6ZT09PSJjYnIiP2YuYnJvd3Nlck5hbWU9azplPT09ImNicnZlciI/Zi5icm93c2VyVmVyc2lvbj1rOmU9PT0iY29zIj9mLm9zTmFtZT1rOmU9PT0iY29zdmVyIj9mLm9zVmVyc2lvbj1rOmU9PT0iY3BsYXRmb3JtIiYmKGYucGxhdGZvcm09ayk7Yi5jbGllbnQ9Yy5jYWxsKGEsZCxmKTsKXy54KCJ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfZW5hYmxlZCIpJiYoYi5jbGllbnQud2luZG93V2lkdGhQb2ludHM9d2luZG93LmlubmVyV2lkdGgsYi5jbGllbnQud2luZG93SGVpZ2h0UG9pbnRzPXdpbmRvdy5pbm5lckhlaWdodCk7cmV0dXJuIGJ9OwpvbT1mdW5jdGlvbihhLGIsYz17fSl7dmFyIGQ9e307Xy53KCJFT01fVklTSVRPUl9EQVRBIik/ZD17IlgtR29vZy1FT00tVmlzaXRvci1JZCI6Xy53KCJFT01fVklTSVRPUl9EQVRBIil9OmQ9eyJYLUdvb2ctVmlzaXRvci1JZCI6Yy52aXNpdG9yRGF0YXx8Xy53KCJWSVNJVE9SX0RBVEEiLCIiKX07aWYoYiYmYi5pbmNsdWRlcygid3d3LnlvdXR1YmUtbm9jb29raWUuY29tIikpcmV0dXJuIGQ7Yj1jLmF1dGhvcml6YXRpb258fF8udygiQVVUSE9SSVpBVElPTiIpO2J8fChhP2I9YEJlYXJlciAke18uc2EoImdhcGkuYXV0aC5nZXRUb2tlbiIpKCkuT0h9YDooXy5ubS5pbnN0YW5jZXx8KF8ubm0uaW5zdGFuY2U9bmV3IF8ubm0pLGE9Xy5QaigpLF8ueCgicGFnZWlkX2FzX2hlYWRlcl93ZWIiKXx8ZGVsZXRlIGFbIlgtR29vZy1QYWdlSWQiXSxkPXsuLi5kLC4uLmF9KSk7YiYmKGQuQXV0aG9yaXphdGlvbj1iKTtyZXR1cm4gZH07Cl8ucG09ZnVuY3Rpb24oYSl7dGhpcy52ZXJzaW9uPTE7dGhpcy5hcmdzPWF9O18ucW09ZnVuY3Rpb24oYSxiKXt0aGlzLnRvcGljPWE7dGhpcy5qPWJ9O18uc209ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLnJtKCk7YyYmYy5wdWJsaXNoLmNhbGwoYyxhLnRvU3RyaW5nKCksYSxiKX07Xy5ybT1mdW5jdGlvbigpe3JldHVybiBfLnNhKCJ5dFB1YnN1YjJQdWJzdWIySW5zdGFuY2UiKX07dG09ZnVuY3Rpb24oYSxiLGM9e3NhbXBsZVJhdGU6LjF9KXtNYXRoLnJhbmRvbSgpPE1hdGgubWluKC4wMixjLnNhbXBsZVJhdGUvMTAwKSYmXy5zbSgibWV0YV9sb2dnaW5nX2NzaV9ldmVudCIse3RpbWVyTmFtZTphLHRpbWVsaW5lRGF0YTpifSl9OwpBbT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT17c3RhcnRUaW1lOigwLF8uZWwpKCksdGlja3M6e30saW5mb3M6e319O3RyeXtsZXQgaD1fLnVtKGIpO2lmKGg9PW51bGx8fCEoaD5fLndtfHxoPF8ueG0pKXt2YXIgZj1fLk5pKCgwLF8ueW0pKGIpKTtsZXQgaz0oMCxfLmVsKSgpO2UudGlja3MuZ2VsYz1rO3ptKys7Xy54KCJnZWxfY29tcHJlc3Npb25fY3NpX2tpbGxzd2l0Y2giKXx8IV8ueCgibG9nX2dlbF9jb21wcmVzc2lvbl9sYXRlbmN5IikmJiFfLngoImxvZ19nZWxfY29tcHJlc3Npb25fbGF0ZW5jeV9sciIpfHx0bSgiZ2VsX2NvbXByZXNzaW9uIixlLHtzYW1wbGVSYXRlOi4xfSk7Yy5oZWFkZXJzfHwoYy5oZWFkZXJzPXt9KTtjLmhlYWRlcnNbIkNvbnRlbnQtRW5jb2RpbmciXT0iZ3ppcCI7Yy5wb3N0Qm9keT1mO2MucG9zdFBhcmFtcz12b2lkIDB9ZChhLGMpfWNhdGNoKGgpe18uV2koaCksZChhLGMpfX07Cl8udW09ZnVuY3Rpb24oYSl7dHJ5e3JldHVybihuZXcgQmxvYihhLnNwbGl0KCIiKSkpLnNpemV9Y2F0Y2goYil7cmV0dXJuIF8uV2koYiksbnVsbH19O0JtPWZ1bmN0aW9uKGEpe3JldHVybiEhYS5KYXx8YS54aX07RG09ZnVuY3Rpb24oYSl7Qm0oYSkmJiFhLmFoJiYoYS5PYz0hMCxhLk9pJiZNYXRoLnJhbmRvbSgpPD1hLkRpJiZhLmNiLk91KGEuSmEpLENtKGEpLGEuU2EuU2IoKSYmYS5vKCksYS5TYS5saXN0ZW4oYS5LbSxhLm8uYmluZChhKSksYS5TYS5saXN0ZW4oYS5GbSxhLnYuYmluZChhKSkpfTtDbT1mdW5jdGlvbihhKXtpZighQm0oYSkpdGhyb3cgRXJyb3IoInhhIik7YS5jYi5XcCgiUVVFVUVEIixhLkphKS50aGVuKGI9PntiJiYhRW0oYSxiLGEuQ3IpP2EuRGMucGIoYXN5bmMoKT0+e2IuaWQhPT12b2lkIDAmJmF3YWl0IGEuY2Iubm4oYi5pZCxhLkphKTtDbShhKX0pOmEuU2EuU2IoKSYmYS5vKCl9KX07CkdtPWFzeW5jIGZ1bmN0aW9uKGEsYil7aWYoIUJtKGEpKXRocm93IEVycm9yKCJzYSIpO2IuaWQhPT12b2lkIDAmJihhd2FpdCBhLmNiLkF5KGIuaWQsYS5KYSl8fGEuVGYoRXJyb3IoInRhIikpKTtFbShhLGIsYS5Lcik/KGIuc2tpcFJldHJ5fHwoYj1GbShhLGIpKSxiJiYoYi5za2lwUmV0cnkmJmIuaWQhPT12b2lkIDAmJmF3YWl0IGEuY2IuRmYoYi5pZCxhLkphKSxhLkdkKGIudXJsLGIub3B0aW9ucywhIWIuc2tpcFJldHJ5KSkpOihhLlRmKEVycm9yKCJ1YSIpKSxiLmlkIT09dm9pZCAwJiZhd2FpdCBhLmNiLkZmKGIuaWQsYS5KYSkpfTtIbT1mdW5jdGlvbihhLGIpe2EuTHMmJiFhLlNhLlNiKCk/YS5McyhiKTphLmhhbmRsZUVycm9yKGIpfTtFbT1mdW5jdGlvbihhLGIsYyl7Yj1iLnRpbWVzdGFtcDtyZXR1cm4gYS5ub3coKS1iPj1jPyExOiEwfTsKRm09ZnVuY3Rpb24oYSxiKXtpZighQm0oYSkpdGhyb3cgRXJyb3IoInZhIik7dmFyIGM9Yi5vcHRpb25zLm9uRXJyb3I/Yi5vcHRpb25zLm9uRXJyb3I6KCk9Pnt9O2Iub3B0aW9ucy5vbkVycm9yPWFzeW5jKGUsZik9Pnt2YXIgaD1JbShmKSxrPUptKGYpO2smJmEuS2EmJmEuS2EoIndlYl9lbmFibGVfZXJyb3JfMjA0IikmJmEuaGFuZGxlRXJyb3IoRXJyb3IoIndhIiksYi51cmwsZik7aWYoYS5LYSYmYS5LYSgibndsX2NvbnNpZGVyX2Vycm9yX2NvZGUiKSYmaHx8YS5LYSYmIWEuS2EoIm53bF9jb25zaWRlcl9lcnJvcl9jb2RlIikmJmEucG90ZW50aWFsRXNmRXJyb3JDb3VudGVyPD1hLktqKWlmKGEuU2EuUWomJmF3YWl0IGEuU2EuUWooKSwhYS5TYS5TYigpKXtjKGUsZik7YS5LYSYmYS5LYSgibndsX2NvbnNpZGVyX2Vycm9yX2NvZGUiKSYmYj8uaWQhPT12b2lkIDAmJmF3YWl0IGEuY2Iubm4oYi5pZCxhLkphLCExKTtyZXR1cm59YS5LYSYmYS5LYSgibndsX2NvbnNpZGVyX2Vycm9yX2NvZGUiKSYmCiFoJiZhLnBvdGVudGlhbEVzZkVycm9yQ291bnRlcj5hLktqfHwoYS5wb3RlbnRpYWxFc2ZFcnJvckNvdW50ZXIrKyxiPy5pZCE9PXZvaWQgMCYmKGIuc2VuZENvdW50PGEuTXI/KGF3YWl0IGEuY2Iubm4oYi5pZCxhLkphLCEwLGs/ITE6dm9pZCAwKSxhLkRjLnBiKCgpPT57YS5TYS5TYigpJiZhLm8oKX0sYS5McikpOmF3YWl0IGEuY2IuRmYoYi5pZCxhLkphKSksYyhlLGYpKX07dmFyIGQ9Yi5vcHRpb25zLm9uU3VjY2Vzcz9iLm9wdGlvbnMub25TdWNjZXNzOigpPT57fTtiLm9wdGlvbnMub25TdWNjZXNzPWFzeW5jKGUsZik9PntiPy5pZCE9PXZvaWQgMCYmYXdhaXQgYS5jYi5GZihiLmlkLGEuSmEpO2EuU2EuZWYmJmEuS2EmJmEuS2EoInZzc19uZXR3b3JrX2hpbnQiKSYmYS5TYS5lZighMCk7ZChlLGYpfTtyZXR1cm4gYn07SW09ZnVuY3Rpb24oYSl7cmV0dXJuKGE9YT8uZXJyb3I/LmNvZGUpJiZhPj00MDAmJmE8PTU5OT8hMTohMH07CkptPWZ1bmN0aW9uKGEpe2E9YT8uZXJyb3I/LmNvZGU7cmV0dXJuIShhIT09NDAwJiZhIT09NDE1KX07CkxtPWZ1bmN0aW9uKCl7aWYoS20pcmV0dXJuIEttKCk7S209Xy4kbCgiTG9nc0RhdGFiYXNlVjIiLHtzZTp7TG9nc1JlcXVlc3RzU3RvcmU6e1BkOjJ9fSxzaGFyZWQ6ITEsdXBncmFkZShhLGIsYyl7YigyKSYmXy5rbChhLCJMb2dzUmVxdWVzdHNTdG9yZSIse2tleVBhdGg6ImlkIixhdXRvSW5jcmVtZW50OiEwfSk7YigzKTtiKDUpJiYoYz1jLm9iamVjdFN0b3JlKCJMb2dzUmVxdWVzdHNTdG9yZSIpLGMuai5pbmRleE5hbWVzLmNvbnRhaW5zKCJuZXdSZXF1ZXN0IikmJmMuai5kZWxldGVJbmRleCgibmV3UmVxdWVzdCIpLF8ub2woYywibmV3UmVxdWVzdFYyIixbInN0YXR1cyIsImludGVyZmFjZSIsInRpbWVzdGFtcCJdKSk7Yig3KSYmYS5qLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMoInNhcGlzaWQiKSYmYS5qLmRlbGV0ZU9iamVjdFN0b3JlKCJzYXBpc2lkIik7Yig5KSYmYS5qLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMoIlNXSGVhbHRoTG9nIikmJmEuai5kZWxldGVPYmplY3RTdG9yZSgiU1dIZWFsdGhMb2ciKX0sCnZlcnNpb246OX0pO3JldHVybiBLbSgpfTtNbT1mdW5jdGlvbihhKXtyZXR1cm4gXy5DbChMbSgpLGEpfTtPbT1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPXtzdGFydFRpbWU6KDAsXy5lbCkoKSxpbmZvczp7dHJhbnNhY3Rpb25UeXBlOiJZVF9JREJfVFJBTlNBQ1RJT05fVFlQRV9XUklURSJ9LHRpY2tzOnt9fTtiPWF3YWl0IE1tKGIpO2E9ey4uLmEsb3B0aW9uczpKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGEub3B0aW9ucykpLGludGVyZmFjZTpfLncoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9OQU1FIiwwKX07YT1hd2FpdCBfLm1sKGIsIkxvZ3NSZXF1ZXN0c1N0b3JlIixhKTtjLnRpY2tzLnRjPSgwLF8uZWwpKCk7Tm0oYyk7cmV0dXJuIGF9OwpQbT1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPXtzdGFydFRpbWU6KDAsXy5lbCkoKSxpbmZvczp7dHJhbnNhY3Rpb25UeXBlOiJZVF9JREJfVFJBTlNBQ1RJT05fVFlQRV9SRUFEIn0sdGlja3M6e319O2I9YXdhaXQgTW0oYik7dmFyIGQ9Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsMCksZT1bYSxkLDBdO2Q9W2EsZCwoMCxfLmVsKSgpXTt2YXIgZj1JREJLZXlSYW5nZS5ib3VuZChlLGQpLGg9InByZXYiO18ueCgidXNlX2ZpZm9fZm9yX25ldHdvcmtsZXNzIikmJihoPSJuZXh0Iik7dmFyIGs9dm9pZCAwO2U9YT09PSJORVciPyJyZWFkd3JpdGUiOiJyZWFkb25seSI7Xy54KCJ1c2VfcmVhZG9ubHlfZm9yX2dldF9tb3N0X3JlY2VudF9ieV9zdGF0dXNfa2lsbHN3aXRjaCIpJiYoZT0icmVhZHdyaXRlIik7YXdhaXQgXy5pbChiLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZTplLGtiOiEwfSxsPT51bChsLm9iamVjdFN0b3JlKCJMb2dzUmVxdWVzdHNTdG9yZSIpLmluZGV4KCJuZXdSZXF1ZXN0VjIiKSwKe3F1ZXJ5OmYsZGlyZWN0aW9uOmh9LG09PnttLmN1cnNvci52YWx1ZSYmKGs9bS5jdXJzb3IudmFsdWUsYT09PSJORVciJiYoay5zdGF0dXM9IlFVRVVFRCIsbS51cGRhdGUoaykpKX0pKTtjLnRpY2tzLnRjPSgwLF8uZWwpKCk7Tm0oYyk7cmV0dXJuIGt9O1FtPWFzeW5jIGZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uaWwoYXdhaXQgTW0oYiksWyJMb2dzUmVxdWVzdHNTdG9yZSJdLHttb2RlOiJyZWFkd3JpdGUiLGtiOiEwfSxjPT57dmFyIGQ9Yy5vYmplY3RTdG9yZSgiTG9nc1JlcXVlc3RzU3RvcmUiKTtyZXR1cm4gZC5nZXQoYSkudGhlbihlPT57aWYoZSlyZXR1cm4gZS5zdGF0dXM9IlFVRVVFRCIsXy5sbChkLGUpLnRoZW4oKCk9PmUpfSl9KX07ClJtPWFzeW5jIGZ1bmN0aW9uKGEsYixjPSEwLGQpe3JldHVybiBfLmlsKGF3YWl0IE1tKGIpLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZToicmVhZHdyaXRlIixrYjohMH0sZT0+e3ZhciBmPWUub2JqZWN0U3RvcmUoIkxvZ3NSZXF1ZXN0c1N0b3JlIik7cmV0dXJuIGYuZ2V0KGEpLnRoZW4oaD0+aD8oaC5zdGF0dXM9Ik5FVyIsYyYmKGguc2VuZENvdW50Kz0xKSxkIT09dm9pZCAwJiYoaC5vcHRpb25zLmNvbXByZXNzPWQpLF8ubGwoZixoKS50aGVuKCgpPT5oKSk6Xy5Way5yZXNvbHZlKHZvaWQgMCkpfSl9O1NtPWFzeW5jIGZ1bmN0aW9uKGEsYil7cmV0dXJuKGF3YWl0IE1tKGIpKS5kZWxldGUoIkxvZ3NSZXF1ZXN0c1N0b3JlIixhKX07ClRtPWFzeW5jIGZ1bmN0aW9uKGEpe2E9YXdhaXQgTW0oYSk7dmFyIGI9KDAsXy5lbCkoKS0yNTkyRTY7YXdhaXQgXy5pbChhLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZToicmVhZHdyaXRlIixrYjohMH0sYz0+cWwoYy5vYmplY3RTdG9yZSgiTG9nc1JlcXVlc3RzU3RvcmUiKSx7fSxkPT57aWYoZC5jdXJzb3IudmFsdWUudGltZXN0YW1wPD1iKXJldHVybiBkLmRlbGV0ZSgpLnRoZW4oKCk9PnJsKGQpKX0pKX07VW09YXN5bmMgZnVuY3Rpb24oKXthd2FpdCBXbCgpfTtObT1mdW5jdGlvbihhKXtfLngoIm53bF9jc2lfa2lsbHN3aXRjaCIpfHx0bSgibmV0d29ya2xlc3NfcGVyZm9ybWFuY2UiLGEse3NhbXBsZVJhdGU6MX0pfTtXbT1mdW5jdGlvbihhKXtyZXR1cm4gXy5DbChWbSgpLGEpfTsKWG09YXN5bmMgZnVuY3Rpb24oYSl7YT1hd2FpdCBXbShhKTt2YXIgYj0oMCxfLmVsKSgpLTI1OTJFNjthd2FpdCBfLmlsKGEsWyJTV0hlYWx0aExvZyJdLHttb2RlOiJyZWFkd3JpdGUiLGtiOiEwfSxjPT5xbChjLm9iamVjdFN0b3JlKCJTV0hlYWx0aExvZyIpLHt9LGQ9PntpZihkLmN1cnNvci52YWx1ZS50aW1lc3RhbXA8PWIpcmV0dXJuIGQuZGVsZXRlKCkudGhlbigoKT0+cmwoZCkpfSkpfTtZbT1hc3luYyBmdW5jdGlvbihhKXthd2FpdCAoYXdhaXQgV20oYSkpLmNsZWFyKCJTV0hlYWx0aExvZyIpfTsKXy5hbj1mdW5jdGlvbihhLGIsYyxkLGU9IiIsZj0hMSxoPSExKXtpZihhKWlmKGMmJiFfLk1rKCJjb2JhbHQiKSlfLldpKG5ldyBfLlhqKCJMZWdhY3kgcmVmZXJyZXItc2NydWJiZWQgcGluZyBkZXRlY3RlZCIpKSxhJiZabShhLHZvaWQgMCx7c2NydWJSZWZlcnJlcjohMH0pO2Vsc2UgaWYoZSl4aihhLGIsIlBPU1QiLGUsZCk7ZWxzZSBpZihfLncoIlVTRV9ORVRfQUpBWF9GT1JfUElOR19UUkFOU1BPUlQiLCExKXx8ZHx8aCl4aihhLGIsIkdFVCIsIiIsZCx2b2lkIDAsZixoKTtlbHNle2I6e3RyeXtjOnt2YXIgaz1uZXcgJG0oe3VybDphfSk7aWYoay5qLmRzaD09PSIxIil2YXIgbD1udWxsO2Vsc2V7dmFyIG09ay5qLmFlO2lmKG09PT0iMSIpe2xldCByPWsuai5hZHVybDtpZihyKXRyeXtsPXt2ZXJzaW9uOjMsbXY6ZGVjb2RlVVJJQ29tcG9uZW50KHIpLHp1OklhKGsubywiYWN0PTEiLCJyaT0xIixLYShrKSl9O2JyZWFrIGN9Y2F0Y2godCl7fX1sPW09PT0iMiI/e3ZlcnNpb246NCwKbXY6SWEoay5vLCJkY3Q9MSIsInN1aWQ9IitrLnYsInJpPTEiKSx6dTpJYShrLm8sImFjdD0xIiwicmk9MSIsInN1aWQ9IitrLnYpfTpudWxsfX1pZihsKXtsZXQgcj1fLlFiKGEpO3ZhciBuPSEoIXJ8fCFyLmVuZHNXaXRoKCIvYWNsayIpfHxfLlpiKGEsInJpIikhPT0iMSIpO2JyZWFrIGJ9fWNhdGNoKHIpe31uPSExfWlmKG4pe2I6e3RyeXtpZih3aW5kb3cubmF2aWdhdG9yJiZ3aW5kb3cubmF2aWdhdG9yLnNlbmRCZWFjb24mJndpbmRvdy5uYXZpZ2F0b3Iuc2VuZEJlYWNvbihhLCIiKSl7dmFyIHA9ITA7YnJlYWsgYn19Y2F0Y2gocil7fXA9ITF9cD8oYiYmYigpLGM9ITApOmM9ITF9ZWxzZSBjPSExO2N8fFptKGEsYil9fTsKWm09ZnVuY3Rpb24oYSxiLGM9e30pe3ZhciBkPW5ldyBJbWFnZSxlPSIiK2JuKys7Y25bZV09ZDtkLm9ubG9hZD1kLm9uZXJyb3I9KCk9PntiJiZjbltlXSYmYigpO2RlbGV0ZSBjbltlXX07Yy5zY3J1YlJlZmVycmVyJiYoZC5yZWZlcnJlclBvbGljeT0ibm8tcmVmZXJyZXIiKTtkLnNyYz1hfTtmbj1mdW5jdGlvbigpe2RufHwoZG49bmV3IF8uZW4oInl0Lm9mZmxpbmUiKSk7cmV0dXJuIGRufTtnbj1mdW5jdGlvbihhKXtpZihfLngoIm9mZmxpbmVfZXJyb3JfaGFuZGxpbmciKSl7dmFyIGI9Zm4oKS5nZXQoImVycm9ycyIsITApfHx7fTtiW2EubWVzc2FnZV09e25hbWU6YS5uYW1lLHN0YWNrOmEuc3RhY2t9O2EubGV2ZWwmJihiW2EubWVzc2FnZV0ubGV2ZWw9YS5sZXZlbCk7Zm4oKS5zZXQoImVycm9ycyIsYiwyNTkyRTMsITApfX07CmpuPWZ1bmN0aW9uKCl7aWYoIWhuLmluc3RhbmNlKXtsZXQgYT1fLnNhKCJ5dC5uZXR3b3JrUmVxdWVzdE1vbml0b3IuaW5zdGFuY2UiKXx8bmV3IGhuO18ucmEoInl0Lm5ldHdvcmtSZXF1ZXN0TW9uaXRvci5pbnN0YW5jZSIsYSk7aG4uaW5zdGFuY2U9YX1yZXR1cm4gaG4uaW5zdGFuY2V9O2xuPWZ1bmN0aW9uKCl7aWYoIWtuLmluc3RhbmNlKXtsZXQgYT1fLnNhKCJ5dC5uZXR3b3JrU3RhdHVzTWFuYWdlci5pbnN0YW5jZSIpfHxuZXcga247Xy5yYSgieXQubmV0d29ya1N0YXR1c01hbmFnZXIuaW5zdGFuY2UiLGEpO2tuLmluc3RhbmNlPWF9cmV0dXJuIGtuLmluc3RhbmNlfTsKbW49ZnVuY3Rpb24oYSxiKXthLnJhdGVMaW1pdD9hLmo/KF8uamYuQWEoYS5EKSxhLkQ9Xy5qZi5wYigoKT0+e2EuQiE9PWImJihhLmRpc3BhdGNoRXZlbnQoYiksYS5CPWIsYS5qPSgwLF8uZWwpKCkpfSxhLnJhdGVMaW1pdC0oKDAsXy5lbCkoKS1hLmopKSk6KGEuZGlzcGF0Y2hFdmVudChiKSxhLkI9YixhLmo9KDAsXy5lbCkoKSk6YS5kaXNwYXRjaEV2ZW50KGIpfTsKXy5wbj1mdW5jdGlvbigpe3ZhciBhPV8uc2EoInl0Lm5ldHdvcmtsZXNzUmVxdWVzdENvbnRyb2xsZXIuaW5zdGFuY2UiKTthfHwoYT1uZXcgbm4sXy5yYSgieXQubmV0d29ya2xlc3NSZXF1ZXN0Q29udHJvbGxlci5pbnN0YW5jZSIsYSksXy54KCJuZXR3b3JrbGVzc19sb2dnaW5nIikmJl8uUGwoKS50aGVuKGI9PnthLkphPWI7RG0oYSk7YS5CLnJlc29sdmUoKTthLk9pJiZNYXRoLnJhbmRvbSgpPD1hLkRpJiZhLkphJiZYbShhLkphKTtfLngoIm5ldHdvcmtsZXNzX2ltbWVkaWF0ZWx5X2Ryb3Bfc3dfaGVhbHRoX3N0b3JlIikmJm9uKGEpfSkpO3JldHVybiBhfTtvbj1hc3luYyBmdW5jdGlvbihhKXtpZighYS5KYSl0aHJvdyBTaygiY2xlYXJTV0hlYWx0aExvZ3NEYiIpO1ltKGEuSmEpLmNhdGNoKGI9PnthLmhhbmRsZUVycm9yKGIpfSl9Owpxbj1mdW5jdGlvbihhLGIsYyl7Yj1fLngoIndlYl9mcF92aWFfanNwYiIpP09iamVjdC5hc3NpZ24oe30sYik6YjtfLngoInVzZV9yZXF1ZXN0X3RpbWVfbXNfaGVhZGVyIik/Yi5oZWFkZXJzJiZfLmZqKGEpJiYoYi5oZWFkZXJzWyJYLUdvb2ctUmVxdWVzdC1UaW1lIl09SlNPTi5zdHJpbmdpZnkoTWF0aC5yb3VuZCgoMCxfLmVsKSgpKSkpOmIucG9zdFBhcmFtcz8ucmVxdWVzdFRpbWVNcyYmKGIucG9zdFBhcmFtcy5yZXF1ZXN0VGltZU1zPU1hdGgucm91bmQoKDAsXy5lbCkoKSkpO2MmJk9iamVjdC5rZXlzKGIpLmxlbmd0aD09PTA/Xy5hbihhKTpiLmNvbXByZXNzP2IucG9zdEJvZHk/KHR5cGVvZiBiLnBvc3RCb2R5IT09InN0cmluZyImJihiLnBvc3RCb2R5PUpTT04uc3RyaW5naWZ5KGIucG9zdEJvZHkpKSxBbShhLGIucG9zdEJvZHksYixfLnpqKSk6QW0oYSxKU09OLnN0cmluZ2lmeShiLnBvc3RQYXJhbXMpLGIsQWopOl8uemooYSxiKX07CnJuPWZ1bmN0aW9uKGEsYil7Xy54KCJ1c2VfZXZlbnRfdGltZV9tc19oZWFkZXIiKSYmXy5maihhKSYmKGIuaGVhZGVyc3x8KGIuaGVhZGVycz17fSksYi5oZWFkZXJzWyJYLUdvb2ctRXZlbnQtVGltZSJdPUpTT04uc3RyaW5naWZ5KE1hdGgucm91bmQoKDAsXy5lbCkoKSkpKTtyZXR1cm4gYn07Xy5zbj1mdW5jdGlvbigpe3JldHVybiBfLlBiKGRvY3VtZW50LmxvY2F0aW9uLnRvU3RyaW5nKCkpIT09Ind3dy55b3V0dWJlLW5vY29va2llLmNvbSJ9Owp2bj1mdW5jdGlvbihhLGIsYyxkKXshXy53KCJWSVNJVE9SX0RBVEEiKSYmYiE9PSJ2aXNpdG9yX2lkIiYmTWF0aC5yYW5kb20oKTwuMDEmJl8uV2kobmV3IF8uWGooIk1pc3NpbmcgVklTSVRPUl9EQVRBIHdoZW4gc2VuZGluZyBpbm5lcnR1YmUgcmVxdWVzdC4iLGIsYyxkKSk7aWYoIWEuaXNSZWFkeSgpKXRocm93IGE9bmV3IF8uWGooImlubmVydHViZSB4aHJjbGllbnQgbm90IHJlYWR5IixiLGMsZCksXy5VaShhKSxhO3ZhciBlPXtoZWFkZXJzOmQuaGVhZGVyc3x8e30sbWV0aG9kOiJQT1NUIixwb3N0UGFyYW1zOmMscG9zdEJvZHk6ZC5wb3N0Qm9keSxwb3N0Qm9keUZvcm1hdDpkLnBvc3RCb2R5Rm9ybWF0fHwiSlNPTiIsb25UaW1lb3V0OigpPT57ZC5vblRpbWVvdXQoKX0sb25GZXRjaFRpbWVvdXQ6ZC5vblRpbWVvdXQsb25TdWNjZXNzOihtLG4pPT57aWYoZC5vblN1Y2Nlc3MpZC5vblN1Y2Nlc3Mobil9LG9uRmV0Y2hTdWNjZXNzOm09PntpZihkLm9uU3VjY2VzcylkLm9uU3VjY2VzcyhtKX0sCm9uUHJvZ3Jlc3M6bT0+e2lmKGQub25Qcm9ncmVzcylkLm9uUHJvZ3Jlc3MobSl9LG9uRXJyb3I6KG0sbik9PntpZihkLm9uRXJyb3IpZC5vbkVycm9yKG4pfSxvbkZldGNoRXJyb3I6bT0+e2lmKGQub25FcnJvcilkLm9uRXJyb3IobSl9LHRpbWVvdXQ6ZC50aW1lb3V0LHdpdGhDcmVkZW50aWFsczohMCxjb21wcmVzczpkLmNvbXByZXNzfTtlLmhlYWRlcnNbIkNvbnRlbnQtVHlwZSJdfHwoZS5oZWFkZXJzWyJDb250ZW50LVR5cGUiXT0iYXBwbGljYXRpb24vanNvbiIpO2M9IiI7dmFyIGY9YS5jb25maWdfLnp4O2YmJihjPWYpO2Y9YS5jb25maWdfLkF4fHwhMTt2YXIgaD1vbShmLGMsZCk7T2JqZWN0LmFzc2lnbihlLmhlYWRlcnMsaCk7ZS5oZWFkZXJzLkF1dGhvcml6YXRpb24mJiFjJiZmJiYoZS5oZWFkZXJzWyJ4LW9yaWdpbiJdPXdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pO3ZhciBrPWRqKGAke2N9JHtgL3lvdXR1YmVpLyR7YS5jb25maWdfLmlubmVydHViZUFwaVZlcnNpb259LyR7Yn1gfWAsCnthbHQ6Impzb24ifSksbD0obT0hMSk9Pnt0cnl7aWYobSYmZC5yZXRyeSYmIWQubmV0d29ya2xlc3NPcHRpb25zLmJ5cGFzc05ldHdvcmtsZXNzKWUubWV0aG9kPSJQT1NUIixkLm5ldHdvcmtsZXNzT3B0aW9ucy53cml0ZVRoZW5TZW5kP18ucG4oKS53cml0ZVRoZW5TZW5kKGssZSk6Xy5wbigpLnNlbmRBbmRXcml0ZShrLGUpO2Vsc2UgaWYoZC5jb21wcmVzcylpZihlLnBvc3RCb2R5KXtsZXQgbj1lLnBvc3RCb2R5O3R5cGVvZiBuIT09InN0cmluZyImJihuPUpTT04uc3RyaW5naWZ5KGUucG9zdEJvZHkpKTtBbShrLG4sZSxfLnpqKX1lbHNlIEFtKGssSlNPTi5zdHJpbmdpZnkoZS5wb3N0UGFyYW1zKSxlLEFqKTtlbHNlIEFqKGssZSl9Y2F0Y2gobil7aWYobi5uYW1lPT09IkludmFsaWRBY2Nlc3NFcnJvciIpXy5XaShFcnJvcigieWEiKSk7ZWxzZSB0aHJvdyBuO319OyhfLnNhKCJ5dE5ldHdvcmtsZXNzTG9nZ2luZ0luaXRpYWxpemF0aW9uT3B0aW9ucyIpP18udG4uaXNOd2xJbml0aWFsaXplZDoKXy51bik/TmwoKS50aGVuKG09PntsKG0pfSk6bCghMSl9O18ueW49ZnVuY3Rpb24oYSwuLi5iKXtpZighd24oYSl8fGIuc29tZShjPT4hd24oYykpKXRocm93IEVycm9yKCJ6YSIpO2ZvcihsZXQgYyBvZiBiKXhuKGEsYyl9O3huPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBjIGluIGIpaWYod24oYltjXSkpe2lmKGMgaW4gYSYmIXduKGFbY10pKXRocm93IEVycm9yKCJBYSIpO2MgaW4gYXx8KGFbY109e30pO3huKGFbY10sYltjXSl9ZWxzZSBpZih6bihiW2NdKSl7aWYoYyBpbiBhJiYhem4oYVtjXSkpdGhyb3cgRXJyb3IoIkJhIik7YyBpbiBhfHwoYVtjXT1bXSk7QW4oYVtjXSxiW2NdKX1lbHNlIGFbY109YltjXTtyZXR1cm4gYX07QW49ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGMgb2YgYil3bihjKT9hLnB1c2goeG4oe30sYykpOnpuKGMpP2EucHVzaChBbihbXSxjKSk6YS5wdXNoKGMpO3JldHVybiBhfTt3bj1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ib2JqZWN0IiYmIUFycmF5LmlzQXJyYXkoYSl9Owp6bj1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ib2JqZWN0IiYmQXJyYXkuaXNBcnJheShhKX07Xy5Cbj1mdW5jdGlvbigpe3ZhciBhPV8uc2EoIl9sYWN0Iix3aW5kb3cpO3JldHVybiBhPT1udWxsPy0xOk1hdGgubWF4KERhdGUubm93KCktYSwwKX07Cl8uRG49ZnVuY3Rpb24oKXtpZih3aW5kb3cuY3J5cHRvJiZ3aW5kb3cuY3J5cHRvLmdldFJhbmRvbVZhbHVlcyl0cnl7dmFyIGE9QXJyYXkoMTYpLGI9bmV3IFVpbnQ4QXJyYXkoMTYpO3dpbmRvdy5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKGIpO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWFbY109YltjXTtyZXR1cm4gYX1jYXRjaChkKXt9YT1BcnJheSgxNik7Zm9yKGI9MDtiPDE2O2IrKyl7Yz1EYXRlLm5vdygpO2ZvcihsZXQgZD0wO2Q8YyUyMztkKyspYVtiXT1NYXRoLnJhbmRvbSgpO2FbYl09TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjI1Nil9aWYoQ24pZm9yKGI9MSxjPTA7YzxDbi5sZW5ndGg7YysrKWFbYiUxNl1ePWFbKGItMSklMTZdLzReQ24uY2hhckNvZGVBdChjKSxiKys7cmV0dXJuIGF9OwpFbj1mdW5jdGlvbigpe3ZhciBhPV8uRG4oKSxiPVtdO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7YysrKWIucHVzaCgiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODktXyIuY2hhckF0KGFbY10mNjMpKTtyZXR1cm4gYi5qb2luKCIiKX07Xy5Gbj1mdW5jdGlvbigpe3ZhciBhPV8udS55dExvZ2dpbmdEb2NEb2N1bWVudE5vbmNlXzthfHwoYT1FbigpLF8ucmEoInl0TG9nZ2luZ0RvY0RvY3VtZW50Tm9uY2VfIixhKSk7cmV0dXJuIGF9O18uR249ZnVuY3Rpb24oYSl7dmFyIGI9MDtmb3IobGV0IGM9MDtjPGEubGVuZ3RoO2MrKyliPWIqMzErYS5jaGFyQ29kZUF0KGMpLGM8YS5sZW5ndGgtMSYmKGIlPTB4ODAwMDAwMDAwMDAwKTtyZXR1cm4gYiUxRTV9O18uSW49ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBIbihhKX07CktuPWZ1bmN0aW9uKGEsYil7Yj1iLmp2O2lmKGEuai5oYXMoYikpcmV0dXJuIGEuai5nZXQoYikucHJvbWlzZTt2YXIgYz1KbihhLGIsW10sITApO2lmKGMhPT12b2lkIDApcmV0dXJuIFByb21pc2UucmVzb2x2ZShjKTt2YXIgZD17fTtkLnByb21pc2U9bmV3IFByb21pc2UoKGUsZik9PntkLlFoPWU7ZC5Rej1mfSk7YS5qLnNldChiLGQpO3JldHVybiBkLnByb21pc2V9OwpKbj1mdW5jdGlvbihhLGIsYyxkPSExKXtpZihjLmluZGV4T2YoYik+LTEpdGhyb3cgRXJyb3IoIkRhYCIrYik7aWYoYS5vLmhhcyhiKSlyZXR1cm4gYS5vLmdldChiKTtpZighYS52LmhhcyhiKSl7aWYoZClyZXR1cm47dGhyb3cgRXJyb3IoIkVhYCIrYik7fWQ9YS52LmdldChiKTtjLnB1c2goYik7aWYoZC5NYiE9PXZvaWQgMCl2YXIgZT1kLk1iO2Vsc2UgaWYoZC5XYyllPWRbXy5Mbl0/TW4oYSxkW18uTG5dLGMpOltdLGU9ZC5XYyguLi5lKTtlbHNlIGlmKGQuUGEpe2U9ZC5QYTtsZXQgZj1lW18uTG5dP01uKGEsZVtfLkxuXSxjKTpbXTtlPW5ldyBlKC4uLmYpfWVsc2UgdGhyb3cgRXJyb3IoIkZhYCIrYik7Yy5wb3AoKTtkLmdifHxhLm8uc2V0KGIsZSk7cmV0dXJuIGV9O01uPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYj9iLm1hcChkPT5kIGluc3RhbmNlb2YgSG4/Sm4oYSxkLmtleSxjLCEwKTpKbihhLGQsYykpOltdfTtfLnk9ZnVuY3Rpb24oKXtObnx8KE5uPW5ldyBPbik7cmV0dXJuIE5ufTsKUW49ZnVuY3Rpb24oKXtyZXR1cm4iaDV2Y2MiaW4gUG4mJlBuLmg1dmNjLnRyYWNlRXZlbnQ/LnRyYWNlQmVnaW4mJlBuLmg1dmNjLnRyYWNlRXZlbnQ/LnRyYWNlRW5kPzE6InBlcmZvcm1hbmNlImluIFBuJiZQbi5wZXJmb3JtYW5jZS5tYXJrJiZQbi5wZXJmb3JtYW5jZS5tZWFzdXJlPzI6MH07Um49ZnVuY3Rpb24oYSl7dmFyIGI9UW4oKTtzd2l0Y2goYil7Y2FzZSAxOlBuLmg1dmNjLnRyYWNlRXZlbnQudHJhY2VCZWdpbigiWVRMUiIsYSk7YnJlYWs7Y2FzZSAyOlBuLnBlcmZvcm1hbmNlLm1hcmsoYCR7YX0tc3RhcnRgKTticmVhaztjYXNlIDA6YnJlYWs7ZGVmYXVsdDpfLmViKGIsInVua25vd24gdHJhY2UgdHlwZSIpfX07ClNuPWZ1bmN0aW9uKGEpe3ZhciBiPVFuKCk7c3dpdGNoKGIpe2Nhc2UgMTpQbi5oNXZjYy50cmFjZUV2ZW50LnRyYWNlRW5kKCJZVExSIixhKTticmVhaztjYXNlIDI6Yj1gJHthfS1zdGFydGA7bGV0IGM9YCR7YX0tZW5kYDtQbi5wZXJmb3JtYW5jZS5tYXJrKGMpO1BuLnBlcmZvcm1hbmNlLm1lYXN1cmUoYSxiLGMpO2JyZWFrO2Nhc2UgMDpicmVhaztkZWZhdWx0Ol8uZWIoYiwidW5rbm93biB0cmFjZSB0eXBlIil9fTtUbj1mdW5jdGlvbihhKXt2YXIgYj1BcnJheS5mcm9tKGEuai5rZXlzKCkpLnNvcnQoKGMsZCk9PmEuZ2V0UHJpb3JpdHkoYS5qW2RdKS1hLmdldFByaW9yaXR5KGEualtjXSkpO2ZvcihsZXQgYyBvZiBiKWI9YS5qW2NdLGIuam9iSWQ9PT12b2lkIDB8fGIuTmp8fChhLnNjaGVkdWxlci5BYShiLmpvYklkKSxhLnNjaGVkdWxlci5HYShiLnhoLDEwKSl9OwpWbj1mdW5jdGlvbihhLGIsYyl7VW4mJmNvbnNvbGUuZ3JvdXBDb2xsYXBzZWQmJmNvbnNvbGUuZ3JvdXBFbmQmJihjb25zb2xlLmdyb3VwQ29sbGFwc2VkKGBbJHthLmNvbnN0cnVjdG9yLm5hbWV9XSAnJHthLnN0YXRlfScgdG8gJyR7Yn0nYCksY29uc29sZS5sb2coIndpdGggbWVzc2FnZTogIixjKSxjb25zb2xlLmdyb3VwRW5kKCkpfTtabj1mdW5jdGlvbihhLGIpe3ZhciBjPWIuZmlsdGVyKGU9PihhLnY/P2UucHJpb3JpdHk/PzApPT09MTApLGQ9Yi5maWx0ZXIoZT0+KGEudj8/ZS5wcmlvcml0eT8/MCkhPT0xMCk7cmV0dXJuIGEuQi5GZz9hc3luYyguLi5lKT0+e2F3YWl0IFduKGMsLi4uZSk7WG4oYSxkLC4uLmUpfTooLi4uZSk9PntZbihjLC4uLmUpO1huKGEsZCwuLi5lKX19OwpXbj1hc3luYyBmdW5jdGlvbihhLC4uLmIpe3ZhciBjPV8uQ2soKTtmb3IobGV0IGQgb2YgYSl7bGV0IGU7Yy5VKCgpPT57JG4oZC5uYW1lKTt2YXIgZj1hbygoKT0+ZC5jYWxsYmFjayguLi5iKSk7KDAsXy5ibykoZik/ZT1fLngoIndlYl9saWZlY3ljbGVfZXJyb3JfaGFuZGxpbmdfa2lsbHN3aXRjaCIpP2YudGhlbigoKT0+e2NvKGQubmFtZSl9KTpmLnRoZW4oKCk9PntjbyhkLm5hbWUpfSxoPT57d2luZG93Lm9uZXJyb3I/LihoLm1lc3NhZ2UsIiIsMCwwLGgpO2NvKGQubmFtZSl9KTpjbyhkLm5hbWUpfSk7ZSYmYXdhaXQgZX19O1huPWZ1bmN0aW9uKGEsYiwuLi5jKXtiPWIubWFwKGQ9Pih7eGg6KCk9PnskbihkLm5hbWUpO2FvKCgpPT5kLmNhbGxiYWNrKC4uLmMpKTtjbyhkLm5hbWUpfSxwcmlvcml0eTphLnY/P2QucHJpb3JpdHk/PzB9KSk7Yi5sZW5ndGgmJihhLmo9bmV3IGVvKGIpKX07ClluPWZ1bmN0aW9uKGEsLi4uYil7dmFyIGM9Xy5DaygpO2ZvcihsZXQgZCBvZiBhKWMuVSgoKT0+eyRuKGQubmFtZSk7YW8oKCk9PmQuY2FsbGJhY2soLi4uYikpO2NvKGQubmFtZSl9KX07JG49ZnVuY3Rpb24oYSl7Zm8mJmEmJlJuKGEpfTtjbz1mdW5jdGlvbihhKXtmbyYmYSYmU24oYSl9O2FvPWZ1bmN0aW9uKGEpe2lmKF8ueCgid2ViX2xpZmVjeWNsZV9lcnJvcl9oYW5kbGluZ19raWxsc3dpdGNoIikpcmV0dXJuIGEoKTt0cnl7cmV0dXJuIGEoKX1jYXRjaChiKXt3aW5kb3cub25lcnJvcj8uKGIubWVzc2FnZSwiIiwwLDAsYil9fTtfLmlvPWZ1bmN0aW9uKCl7Z298fChnbz1uZXcgaG8pO3JldHVybiBnb307Xy5rbz1mdW5jdGlvbihhKXtyZXR1cm4gXy5zYSgieXRjc2kuIisoYXx8IiIpKyJkYXRhXyIpfHxfLmpvKGEpfTtfLmxvPWZ1bmN0aW9uKGEpe2E9Xy5rbyhhKTthLm1ldGFkYXRhfHwoYS5tZXRhZGF0YT17fSk7cmV0dXJuIGEubWV0YWRhdGF9OwpfLm1vPWZ1bmN0aW9uKGEpe2E9Xy5rbyhhKTthLnRpY2t8fChhLnRpY2s9e30pO3JldHVybiBhLnRpY2t9O18ubm89ZnVuY3Rpb24oYSl7YT1fLmtvKGEpO2lmKGEuZ2VsKXtsZXQgYj1hLmdlbDtiLmdlbEluZm9zfHwoYi5nZWxJbmZvcz17fSk7Yi5nZWxUaWNrc3x8KGIuZ2VsVGlja3M9e30pfWVsc2UgYS5nZWw9e2dlbFRpY2tzOnt9LGdlbEluZm9zOnt9fTtyZXR1cm4gYS5nZWx9O18ub289ZnVuY3Rpb24oYSl7YT1fLm5vKGEpO2EuZ2VsSW5mb3N8fChhLmdlbEluZm9zPXt9KTtyZXR1cm4gYS5nZWxJbmZvc307Xy5wbz1mdW5jdGlvbihhKXt2YXIgYj1fLmtvKGEpLm5vbmNlO2J8fChiPUVuKCksXy5rbyhhKS5ub25jZT1iKTtyZXR1cm4gYn07Xy5qbz1mdW5jdGlvbihhKXt2YXIgYj17dGljazp7fSxpbmZvOnt9fTtfLnJhKCJ5dGNzaS4iKyhhfHwiIikrImRhdGFfIixiKTtyZXR1cm4gYn07CnFvPWZ1bmN0aW9uKCl7dmFyIGE9Xy5zYSgieXRjc2kuZGVidWciKTthfHwoYT1bXSxfLnJhKCJ5dGNzaS5kZWJ1ZyIsYSksXy5yYSgieXRjc2kucmVmZXJlbmNlIix7fSkpO3JldHVybiBhfTtfLnNvPWZ1bmN0aW9uKGEpe3ZhciBiPXFvKCk7Yi5wdXNoKGEpO18ueCgibGltaXRfeXRjc2lfZGVidWdfYXJyYXlfc2l6ZSIpJiZiLmxlbmd0aD5ybyYmYi5zcGxpY2UoMCxiLmxlbmd0aC1ybyl9O18udW89ZnVuY3Rpb24oYSl7YT1hfHwiIjt2YXIgYj1fLnRvKCk7aWYoYlthXSlyZXR1cm4gYlthXTt2YXIgYz17dGltZXJOYW1lOmEsaW5mbzp7fSx0aWNrOnt9LHNwYW46e30sanNwYkluZm86W119O18uc28oYyk7cmV0dXJuIGJbYV09Y307Xy50bz1mdW5jdGlvbigpe3ZhciBhPV8uc2EoInl0Y3NpLnJlZmVyZW5jZSIpO2lmKGEpcmV0dXJuIGE7cW8oKTtyZXR1cm4gXy5zYSgieXRjc2kucmVmZXJlbmNlIil9Owp2bz1mdW5jdGlvbihhKXtpZihhLm5hbWU9PT0iSmF2YUV4Y2VwdGlvbiIpcmV0dXJuITA7YT1hLnN0YWNrO3JldHVybiBhLmluY2x1ZGVzKCJjaHJvbWU6Ly8iKXx8YS5pbmNsdWRlcygiLWV4dGVuc2lvbjovLyIpfHxhLmluY2x1ZGVzKCJ3ZWJraXQtbWFza2VkLXVybDovLyIpfTt3bz1mdW5jdGlvbihhKXtpZighYS5zdGFjaylyZXR1cm4hMDt2YXIgYj0hYS5zdGFjay5pbmNsdWRlcygiXG4iKTtyZXR1cm4gYiYmYS5zdGFjay5pbmNsdWRlcygiRXJyb3JUeXBlOiAiKXx8YiYmYS5zdGFjay5pbmNsdWRlcygiQW5vbnltb3VzIGZ1bmN0aW9uIChVbmtub3duIHNjcmlwdCIpfHxhLnN0YWNrLnRvTG93ZXJDYXNlKCk9PT0ibm90IGF2YWlsYWJsZSJ8fGEuZmlsZU5hbWU9PT0idXNlci1zY3JpcHQifHxhLmZpbGVOYW1lLnN0YXJ0c1dpdGgoInVzZXItc2NyaXB0OiIpPyEwOiExfTsKXy5Cbz1mdW5jdGlvbigpe2lmKCF4byl7dmFyIGE9eG89bmV3IHlvO2EubGUubGVuZ3RoPTA7YS5TZC5sZW5ndGg9MDtfLnpvKGEsQW8pfXJldHVybiB4b307Xy56bz1mdW5jdGlvbihhLGIpe2IubGUmJmEubGUudW5zaGlmdC5hcHBseShhLmxlLGIubGUpO2IuU2QmJmEuU2QudW5zaGlmdC5hcHBseShhLlNkLGIuU2QpfTtfLkNvPWZ1bmN0aW9uKGEpe3JldHVybiBhdG9iKGEucmVwbGFjZSgvLS9nLCIrIikucmVwbGFjZSgvXy9nLCIvIikpfTsKXy5Fbz1mdW5jdGlvbihhLGIpe3ZhciBjPWEubGVuZ3RoLGQ9MCxlPSgpPT5hLmNoYXJDb2RlQXQoZCsrKTtkb3t2YXIgZj1EbyhlKTtpZihmPT09SW5maW5pdHkpYnJlYWs7bGV0IGg9Zj4+Mztzd2l0Y2goZiY3KXtjYXNlIDA6Zj1EbyhlKTtpZihoPT09YilyZXR1cm4gZjticmVhaztjYXNlIDE6aWYoaD09PWIpcmV0dXJuO2QrPTg7YnJlYWs7Y2FzZSAyOmY9RG8oZSk7aWYoaD09PWIpcmV0dXJuIGEuc3Vic3RyKGQsZik7ZCs9ZjticmVhaztjYXNlIDU6aWYoaD09PWIpcmV0dXJuO2QrPTQ7YnJlYWs7ZGVmYXVsdDpyZXR1cm59fXdoaWxlKGQ8Yyl9O0RvPWZ1bmN0aW9uKGEpe3ZhciBiPWEoKSxjPWImMTI3O2lmKGI8MTI4KXJldHVybiBjO2I9YSgpO2N8PShiJjEyNyk8PDc7aWYoYjwxMjgpcmV0dXJuIGM7Yj1hKCk7Y3w9KGImMTI3KTw8MTQ7aWYoYjwxMjgpcmV0dXJuIGM7Yj1hKCk7cmV0dXJuIGI8MTI4P2N8KGImMTI3KTw8MjE6SW5maW5pdHl9OwpIbz1mdW5jdGlvbihhLGIsYyxkKXtpZihhKWlmKEFycmF5LmlzQXJyYXkoYSkpe3ZhciBlPWQ7Zm9yKGQ9MDtkPGEubGVuZ3RoJiYhKGFbZF0mJihlKz1GbyhkLGFbZF0sYixjKSxlPjUwMCkpO2QrKyk7ZD1lfWVsc2UgaWYodHlwZW9mIGE9PT0ib2JqZWN0Iilmb3IoZSBpbiBhKXtpZihhW2VdKXthOnt2YXIgZj1lO3ZhciBoPWFbZV0saz1iLGw9YztpZih0eXBlb2YgaCE9PSJzdHJpbmcifHxmIT09ImNsaWNrVHJhY2tpbmdQYXJhbXMiJiZmIT09InRyYWNraW5nUGFyYW1zIil7Zj0wO2JyZWFrIGF9Zj0oaD1fLkVvKF8uQ28oaCksMikpP0ZvKGAke2Z9LnZlYCxoLGssbCk6MH1kKz1mO2QrPUZvKGUsYVtlXSxiLGMpO2lmKGQ+NTAwKWJyZWFrfX1lbHNlIGNbYl09R28oYSksZCs9Y1tiXS5sZW5ndGg7ZWxzZSBjW2JdPUdvKGEpLGQrPWNbYl0ubGVuZ3RoO3JldHVybiBkfTsKRm89ZnVuY3Rpb24oYSxiLGMsZCl7Yys9YC4ke2F9YDthPUdvKGIpO2RbY109YTtyZXR1cm4gYy5sZW5ndGgrYS5sZW5ndGh9O0dvPWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4odHlwZW9mIGE9PT0ic3RyaW5nIj9hOlN0cmluZyhKU09OLnN0cmluZ2lmeShhKSkpLnN1YnN0cigwLDUwMCl9Y2F0Y2goYil7cmV0dXJuYHVuYWJsZSB0byBzZXJpYWxpemUgJHt0eXBlb2YgYX0gKCR7Yi5tZXNzYWdlfSlgfX07CktvPWZ1bmN0aW9uKGEsYil7dmFyIGM9SW8oYik7aWYoYS5qW2NdKXJldHVybiBhLmpbY107dmFyIGQ9T2JqZWN0LmtleXMoYS5zdG9yZSl8fFtdO2lmKGQubGVuZ3RoPD0xJiZJbyhiKT09PWRbMF0pcmV0dXJuIGQ7dmFyIGU9W107Zm9yKGxldCBoPTA7aDxkLmxlbmd0aDtoKyspe2xldCBrPWRbaF0uc3BsaXQoIi8iKTtpZihKbyhiLmF1dGgsa1swXSkpe3ZhciBmPWIuaXNKc3BiO0pvKGY9PT12b2lkIDA/InVuZGVmaW5lZCI6Zj8idHJ1ZSI6ImZhbHNlIixrWzFdKSYmSm8oYi5jdHRBdXRoSW5mbyxrWzJdKSYmKGY9Yi50aWVyLGY9Zj09PXZvaWQgMD8idW5kZWZpbmVkIjpKU09OLnN0cmluZ2lmeShmKSxKbyhmLGtbM10pJiZlLnB1c2goZFtoXSkpfX1yZXR1cm4gYS5qW2NdPWV9O0pvPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PT12b2lkIDB8fGE9PT0idW5kZWZpbmVkIj8hMDphPT09Yn07CklvPWZ1bmN0aW9uKGEpe3JldHVyblthLmF1dGg9PT12b2lkIDA/InVuZGVmaW5lZCI6YS5hdXRoLGEuaXNKc3BiPT09dm9pZCAwPyJ1bmRlZmluZWQiOmEuaXNKc3BiLGEuY3R0QXV0aEluZm89PT12b2lkIDA/InVuZGVmaW5lZCI6YS5jdHRBdXRoSW5mbyxhLnRpZXI9PT12b2lkIDA/InVuZGVmaW5lZCI6YS50aWVyXS5qb2luKCIvIil9O18uQj1mdW5jdGlvbihhLGIpe2lmKGEpcmV0dXJuIGFbYi5uYW1lXX07TG89ZnVuY3Rpb24oKXtyZXR1cm4gXy54KCJodG1sNV9zZW5kX3FvZV9vbl9nZWwiKXx8Xy54KCJ3ZWJfc2VuZF92c3MzX2lzb2xhdGVkX3BheWxvYWQiKX07T289ZnVuY3Rpb24oYSl7TW89YTtMbygpJiYoXy51Lnl0TG9nZ2luZ1RyYW5zcG9ydFJlZ2lzdGVyZWRDbGllbnRDdG9yXz1hKTtObz1uZXcgYX07UW89ZnVuY3Rpb24oKXt2YXIgYT1fLnNhKCJ5dC5sb2dnaW5nLmltcyIpO2F8fChhPW5ldyBQbyxfLnJhKCJ5dC5sb2dnaW5nLmltcyIsYSkpO3JldHVybiBhfTsKJG89ZnVuY3Rpb24oYSxiKXtpZihhLmVuZHBvaW50PT09ImxvZ19ldmVudCIpe1JvKGEpO3ZhciBjPVNvKGEpLGQ9VG8oYS5wYXlsb2FkKXx8IiI7YTp7aWYoXy54KCJlbmFibGVfd2ViX3RpZXJlZF9nZWwiKSl7dmFyIGU9VW9bZHx8IiJdO3ZhciBmPV8ueSgpLnJlc29sdmUoXy5JbihpbSkpPy53aigpPy5sb2dnaW5nSG90Q29uZmlnPy5ldmVudExvZ2dpbmdDb25maWc/LnBheWxvYWRQb2xpY2llcztpZihmKWZvcihsZXQgaD0wO2g8Zi5sZW5ndGg7aCsrKWlmKGZbaF0ucGF5bG9hZE51bWJlcj09PWUpe2U9ZltoXTticmVhayBhfX1lPXZvaWQgMH1mPTIwMDtpZihlKXtpZihlLmVuYWJsZWQ9PT0hMSYmIV8ueCgid2ViX3BheWxvYWRfcG9saWN5X2Rpc2FibGVkX2tpbGxzd2l0Y2giKSlyZXR1cm47Zj1WbyhlLnRpZXIpO2lmKGY9PT00MDApe1dvKGEsYik7cmV0dXJufX1Yb1tjXT0hMDtjPXtjdHRBdXRoSW5mbzpjLGlzSnNwYjohMSx0aWVyOmZ9O1FvKCkuc3RvcmVQYXlsb2FkKGMsCmEucGF5bG9hZCk7WW8oYixjLFpvKGQpKX19O1lvPWZ1bmN0aW9uKGEsYixjPSExKXthJiZPbyhhKTthPV8uc2ooInR2aHRtbDVfbG9nZ2luZ19tYXhfYmF0Y2hfYWRzX2ZvcmsiKXx8Xy5zaigidHZodG1sNV9sb2dnaW5nX21heF9iYXRjaCIpfHxfLnNqKCJ3ZWJfbG9nZ2luZ19tYXhfYmF0Y2giKXx8MTAwO3ZhciBkPSgwLF8uZWwpKCksZT1hcCghMSxiLnRpZXIpLGY9ZS5CO2MmJihlLmo9ITApO2M9MDtiJiYoYz1RbygpLmdldFNlcXVlbmNlQ291bnQoYikpO3ZhciBoPSgpPT57Xy5icCh7d3JpdGVUaGVuU2VuZDohMH0sdm9pZCAwLCExLGIudGllcil9O2M+PTFFMz9oKCk6Yz49YT9jcHx8KGNwPWRwKCgpPT57aCgpO2NwPXZvaWQgMH0sMCkpOmQtZj49MTAmJihlcCghMSxiLnRpZXIpLGUuQj1kKX07CldvPWZ1bmN0aW9uKGEsYil7aWYoYS5lbmRwb2ludD09PSJsb2dfZXZlbnQiKXtfLngoIm1vcmVfYWNjdXJhdGVfZ2VsX3BhcnNlciIpJiZRbygpLnN0b3JlUGF5bG9hZCh7aXNKc3BiOiExfSxhLnBheWxvYWQpO1JvKGEpO3ZhciBjPVNvKGEpLGQ9bmV3IE1hcDtkLnNldChjLFthLnBheWxvYWRdKTt2YXIgZT1UbyhhLnBheWxvYWQpfHwiIjsoYT1iP2I6TG8oKT9Nb3x8Xy51Lnl0TG9nZ2luZ1RyYW5zcG9ydFJlZ2lzdGVyZWRDbGllbnRDdG9yX3x8bnVsbDpudWxsKSYmT28oYSk7cmV0dXJuIG5ldyBfLkJmKChmLGgpPT57Tm8mJk5vLmlzUmVhZHkoKT9mcChkLE5vLGYsaCx7YnlwYXNzTmV0d29ya2xlc3M6ITB9LCEwLFpvKGUpKTpmKCl9KX19OwpTbz1mdW5jdGlvbihhKXt2YXIgYj0iIjtpZihhLmRhbmdlcm91c0xvZ1RvVmlzaXRvclNlc3Npb24pYj0idmlzaXRvck9ubHlBcHByb3ZlZEtleSI7ZWxzZSBpZihhLmN0dEF1dGhJbmZvKXtiPWEuY3R0QXV0aEluZm87bGV0IGM9e307Yi52aWRlb0lkP2MudmlkZW9JZD1iLnZpZGVvSWQ6Yi5wbGF5bGlzdElkJiYoYy5wbGF5bGlzdElkPWIucGxheWxpc3RJZCk7Z3BbYS5jdHRBdXRoSW5mby50b2tlbl09YztiPWEuY3R0QXV0aEluZm8udG9rZW59cmV0dXJuIGJ9OwpfLmJwPWZ1bmN0aW9uKGE9e30sYixjPSExLGQpe25ldyBfLkJmKChlLGYpPT57dmFyIGg9YXAoYyxkKSxrPWguajtoLmo9ITE7aWYoXy54KCJlbmFibGVfd2ViX3RpZXJlZF9nZWwiKSYmXy54KCJ3ZWJfdnNzX3JvdXRpbmdfY2hlY2tfYWxsX3RpZXJfcG9saWNpZXMiKSl7bGV0IGw9YXAoYywzMDApLG09YXAoYywyMDApO2s9a3x8bC5qfHxtLmo7bC5qPSExO20uaj0hMX1ocChoLnYpO2hwKGgubyk7aC5vPTA7Tm8mJk5vLmlzUmVhZHkoKT9kPT09dm9pZCAwJiZfLngoImVuYWJsZV93ZWJfdGllcmVkX2dlbCIpP2lwKGUsZixhLGIsYywzMDAsayk6aXAoZSxmLGEsYixjLGQsayk6KGVwKGMsZCksZSgpKX0pfTsKaXA9ZnVuY3Rpb24oYSxiLGM9e30sZCxlPSExLGY9MjAwLGg9ITEpe3ZhciBrPU5vLGw9bmV3IE1hcCxtPXtpc0pzcGI6ZSxjdHRBdXRoSW5mbzpkLHRpZXI6Zn07ZT17aXNKc3BiOmUsY3R0QXV0aEluZm86ZH07aWYoZCE9PXZvaWQgMClmPV8ueCgiZW5hYmxlX3dlYl90aWVyZWRfZ2VsIik/UW8oKS5zbWFydEV4dHJhY3RNYXRjaGluZ0VudHJpZXMoe2tleXM6W20sZV0sc2l6ZUxpbWl0OjFFM30pOlFvKCkuZXh0cmFjdE1hdGNoaW5nRW50cmllcyhlKSxsLnNldChkLGYpO2Vsc2UgZm9yKGxldCBuIG9mIE9iamVjdC5rZXlzKFhvKSlkPV8ueCgiZW5hYmxlX3dlYl90aWVyZWRfZ2VsIik/UW8oKS5zbWFydEV4dHJhY3RNYXRjaGluZ0VudHJpZXMoe2tleXM6W3tpc0pzcGI6ITEsY3R0QXV0aEluZm86bix0aWVyOmZ9LHtpc0pzcGI6ITEsY3R0QXV0aEluZm86bn1dLHNpemVMaW1pdDoxRTN9KTpRbygpLmV4dHJhY3RNYXRjaGluZ0VudHJpZXMoe2lzSnNwYjohMSxjdHRBdXRoSW5mbzpufSksCmQubGVuZ3RoPjAmJmwuc2V0KG4sZCksKF8ueCgid2ViX2ZwX3ZpYV9qc3BiX2FuZF9qc29uIikmJmMud3JpdGVUaGVuU2VuZHx8IV8ueCgid2ViX2ZwX3ZpYV9qc3BiX2FuZF9qc29uIikpJiZkZWxldGUgWG9bbl07ZnAobCxrLGEsYixjLCExLGgpfTsKZXA9ZnVuY3Rpb24oYT0hMSxiPTIwMCl7dmFyIGM9KCk9PntfLmJwKHt3cml0ZVRoZW5TZW5kOiEwfSx2b2lkIDAsYSxiKX0sZD1hcChhLGIpLGU9ZD09PWpwfHxkPT09a3A/NUUzOmxwO18ueCgid2ViX2dlbF90aW1lb3V0X2NhcCIpJiYhZC5vJiYoZT1kcCgoKT0+e2MoKX0sZSksZC5vPWUpO2hwKGQudik7ZT1fLncoIkxPR0dJTkdfQkFUQ0hfVElNRU9VVCIsXy5zaigid2ViX2dlbF9kZWJvdW5jZV9tcyIsMUU0KSk7Xy54KCJzaG9ydGVuX2luaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXQiKSYmbXAmJihlPW5wKTtlPWRwKCgpPT57Xy5zaigiZ2VsX21pbl9iYXRjaF9zaXplIik+MD9RbygpLmdldFNlcXVlbmNlQ291bnQoe2N0dEF1dGhJbmZvOnZvaWQgMCxpc0pzcGI6YSx0aWVyOmJ9KT49b3AmJmMoKTpjKCl9LGUpO2Qudj1lfTsKZnA9ZnVuY3Rpb24oYSxiLGMsZCxlPXt9LGYsaCl7dmFyIGs9TWF0aC5yb3VuZCgoMCxfLmVsKSgpKSxsPWEuc2l6ZSxtPXBwKGgpO2ZvcihsZXQgW24scF1vZiBhKXthPW47aD1wO2xldCByPV8ucWQoe2NvbnRleHQ6bW0oYi5jb25maWdffHxsbSgpKX0pO2lmKCFfLnlhKGgpJiYhXy54KCJ0aHJvd19lcnJfd2hlbl9sb2dldmVudF9tYWxmb3JtZWRfa2lsbHN3aXRjaCIpKXtkKCk7YnJlYWt9ci5ldmVudHM9aDsoaD1ncFthXSkmJnFwKHIsYSxoKTtkZWxldGUgZ3BbYV07bGV0IHQ9YT09PSJ2aXNpdG9yT25seUFwcHJvdmVkS2V5IjtycChyLGssdCk7Xy54KCJhbHdheXNfc2VuZF9hbmRfd3JpdGUiKSYmKGUud3JpdGVUaGVuU2VuZD0hMSk7bGV0IHY9QT0+e18ueCgic3RhcnRfY2xpZW50X2djZiIpJiZfLmpmLnBiKGFzeW5jKCk9Pnthd2FpdCBzcChBKX0pO2wtLTtsfHxjKCl9LHo9MCxFPSgpPT57eisrO2lmKGUuYnlwYXNzTmV0d29ya2xlc3MmJno9PT0xKXRyeXt2bihiLG0scix0cCh7d3JpdGVUaGVuU2VuZDohMH0sCnQsdixFLGYpKSxtcD0hMX1jYXRjaChBKXtfLlVpKEEpLGQoKX1sLS07bHx8YygpfTt0cnl7dm4oYixtLHIsdHAoZSx0LHYsRSxmKSksbXA9ITF9Y2F0Y2goQSl7Xy5VaShBKSxkKCl9fX07dHA9ZnVuY3Rpb24oYSxiLGMsZCxlKXthPXtyZXRyeTohMCxvblN1Y2Nlc3M6YyxvbkVycm9yOmQsbmV0d29ya2xlc3NPcHRpb25zOmEsZGFuZ2Vyb3VzTG9nVG9WaXNpdG9yU2Vzc2lvbjpiLGJJOiEhZSxoZWFkZXJzOnt9LHBvc3RCb2R5Rm9ybWF0OiIiLHBvc3RCb2R5OiIiLGNvbXByZXNzOl8ueCgiY29tcHJlc3NfZ2VsIil8fF8ueCgiY29tcHJlc3NfZ2VsX2xyIil9O3VwKCkmJihhLmhlYWRlcnNbIlgtR29vZy1SZXF1ZXN0LVRpbWUiXT1KU09OLnN0cmluZ2lmeShNYXRoLnJvdW5kKCgwLF8uZWwpKCkpKSk7cmV0dXJuIGF9OwpycD1mdW5jdGlvbihhLGIsYyl7dXAoKXx8KGEucmVxdWVzdFRpbWVNcz1TdHJpbmcoYikpO18ueCgidW5zcGxpdF9nZWxfcGF5bG9hZHNfaW5fbG9ncyIpJiYoYS51bnNwbGl0R2VsUGF5bG9hZHNJbkxvZ3M9ITApOyFjJiYoYj1fLncoIkVWRU5UX0lEIikpJiYoKGM9Xy53KCJCQVRDSF9DTElFTlRfQ09VTlRFUiIpfHwwKXx8KGM9TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjY1NTM1LzIpKSxjKyssYz42NTUzNSYmKGM9MSksXy5RaSgiQkFUQ0hfQ0xJRU5UX0NPVU5URVIiLGMpLGEuc2VyaWFsaXplZENsaWVudEV2ZW50SWQ9e3NlcmlhbGl6ZWRFdmVudElkOmIsY2xpZW50Q291bnRlcjpTdHJpbmcoYyl9KX07CnFwPWZ1bmN0aW9uKGEsYixjKXtpZihjLnZpZGVvSWQpdmFyIGQ9IlZJREVPIjtlbHNlIGlmKGMucGxheWxpc3RJZClkPSJQTEFZTElTVCI7ZWxzZSByZXR1cm47YS5jcmVkZW50aWFsVHJhbnNmZXJUb2tlblRhcmdldElkPWM7YS5jb250ZXh0PWEuY29udGV4dHx8e307YS5jb250ZXh0LnVzZXI9YS5jb250ZXh0LnVzZXJ8fHt9O2EuY29udGV4dC51c2VyLmNyZWRlbnRpYWxUcmFuc2ZlclRva2Vucz1be3Rva2VuOmIsc2NvcGU6ZH1dfTsKUm89ZnVuY3Rpb24oYSl7dmFyIGI9Xy50aigiaWxfcGF5bG9hZF9zY3JhcGluZyIpPT09ImVuYWJsZV9pbF9wYXlsb2FkX3NjcmFwaW5nIjtpZighXy5zYSgieXQubG9nZ2luZy50cmFuc3BvcnQuZW5hYmxlU2NyYXBpbmdGb3JUZXN0IikpaWYoYil2cD1bXSxfLnJhKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5lbmFibGVTY3JhcGluZ0ZvclRlc3QiLCEwKSxfLnJhKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5zY3JhcGVkUGF5bG9hZHNGb3JUZXN0aW5nIix2cCksXy5yYSgieXQubG9nZ2luZy50cmFuc3BvcnQucGF5bG9hZFRvU2NyYXBlIiwidmlzdWFsRWxlbWVudFNob3duIHZpc3VhbEVsZW1lbnRIaWRkZW4gdmlzdWFsRWxlbWVudEF0dGFjaGVkIHNjcmVlbkNyZWF0ZWQgdmlzdWFsRWxlbWVudEdlc3R1cmVkIHZpc3VhbEVsZW1lbnRTdGF0ZUNoYW5nZWQiLnNwbGl0KCIgIikpLF8ucmEoInl0LmxvZ2dpbmcudHJhbnNwb3J0LmdldFNjcmFwZWRQYXlsb2FkRnJvbUNsaWVudEV2ZW50c0Z1bmN0aW9uIiksCl8ucmEoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnNjcmFwZUNsaWVudEV2ZW50IiwhMCk7ZWxzZSByZXR1cm47Yj1fLnNhKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5zY3JhcGVkUGF5bG9hZHNGb3JUZXN0aW5nIik7dmFyIGM9Xy5zYSgieXQubG9nZ2luZy50cmFuc3BvcnQucGF5bG9hZFRvU2NyYXBlIiksZD1fLnNhKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5zY3JhcGVDbGllbnRFdmVudCIpO2lmKGMmJmMubGVuZ3RoPj0xKWZvcihsZXQgZT0wO2U8Yy5sZW5ndGg7ZSsrKWEmJmEucGF5bG9hZFtjW2VdXSYmKGQ/Yi5wdXNoKGEucGF5bG9hZCk6Yi5wdXNoKChhPy5wYXlsb2FkKVtjW2VdXSkpO18ucmEoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnNjcmFwZWRQYXlsb2Fkc0ZvclRlc3RpbmciLGIpfTt1cD1mdW5jdGlvbigpe3JldHVybiBfLngoInVzZV9yZXF1ZXN0X3RpbWVfbXNfaGVhZGVyIil8fF8ueCgibHJfdXNlX3JlcXVlc3RfdGltZV9tc19oZWFkZXIiKX07CmRwPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ueCgidHJhbnNwb3J0X3VzZV9zY2hlZHVsZXIiKT09PSExP18ubWooYSxiKTpfLngoImxvZ2dpbmdfYXZvaWRfYmxvY2tpbmdfZHVyaW5nX25hdmlnYXRpb24iKXx8Xy54KCJscl9sb2dnaW5nX2F2b2lkX2Jsb2NraW5nX2R1cmluZ19uYXZpZ2F0aW9uIik/Xy5ZaigoKT0+e18uaW8oKS5jdXJyZW50U3RhdGU9PT0ibm9uZSI/YSgpOl8uaW8oKS5pbnN0YWxsKHtub25lOntjYWxsYmFjazphfX0pfSxiKTpfLllqKGEsYil9O2hwPWZ1bmN0aW9uKGEpe18ueCgidHJhbnNwb3J0X3VzZV9zY2hlZHVsZXIiKT9fLmpmLkFhKGEpOndpbmRvdy5jbGVhclRpbWVvdXQoYSl9OwpzcD1hc3luYyBmdW5jdGlvbihhKXthPWE/LnJlc3BvbnNlQ29udGV4dD8uZ2xvYmFsQ29uZmlnR3JvdXA7dmFyIGI9Xy5CKGEsd3ApLGM9YT8uaG90SGFzaERhdGEsZD1fLkIoYSx4cCksZT1hPy5jb2xkSGFzaERhdGEsZj1fLnkoKS5yZXNvbHZlKF8uSW4oaW0pKTtmJiYoYyYmKGI/YXdhaXQgZ20oZixjLGIpOmF3YWl0IGdtKGYsYykpLGUmJihkP2F3YWl0IGhtKGYsZSxkKTphd2FpdCBobShmLGUpKSk7Yj1hPy5yYXdGaW5jaFN0YXRpY0NvbmZpZ0dyb3VwOyhhPWE/LmZpbmNoU3RhdGljSGFzaERhdGEpPyhjPV8ueSgpLnJlc29sdmUoXy5Jbih5cCkpKT9hd2FpdCBjLndLKHtjb25maWc6Ynx8e30saUk6YXx8IiJ9KTooYnx8YSkmJl8uV2kobmV3IF8uWGooIkZpbmNoQ29uZmlnTWFuYWdlclNlcnZpY2UgaXMgbm90IHByZXNlbnQsIGJ1dCBGaW5jaCBjb25maWcgZGF0YSBpcyBwcmVzZW50LiIpKTpiJiZfLldpKG5ldyBfLlhqKCJGaW5jaCBjb25maWcgZGF0YSBpcyBwcmVzZW50LCBidXQgaGFzaCBpcyBtaXNzaW5nLiIpKX07CmFwPWZ1bmN0aW9uKGEsYj0yMDApe3JldHVybiBhP2I9PT0zMDA/anA6enA6Yj09PTMwMD9rcDpBcH07VG89ZnVuY3Rpb24oYSl7YT1PYmplY3Qua2V5cyhhKTtmb3IobGV0IGIgb2YgYSlpZihVb1tiXSlyZXR1cm4gYn07Vm89ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9VTlNQRUNJRklFRCI6cmV0dXJuIDA7Y2FzZSAiREVMQVlFRF9FVkVOVF9USUVSX0RFRkFVTFQiOnJldHVybiAxMDA7Y2FzZSAiREVMQVlFRF9FVkVOVF9USUVSX0RJU1BBVENIX1RPX0VNUFRZIjpyZXR1cm4gMjAwO2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9GQVNUIjpyZXR1cm4gMzAwO2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9JTU1FRElBVEUiOnJldHVybiA0MDA7ZGVmYXVsdDpyZXR1cm4gMjAwfX07Wm89ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT0iZ2VsRGVidWdnaW5nRXZlbnQifHxhPT09IndhdGNoVGltZVNlZ21lbnQifTsKcHA9ZnVuY3Rpb24oYT0hMSl7cmV0dXJuIGEmJl8ueCgidnNzX3Rocm91Z2hfZ2VsX3ZpZGVvX3N0YXRzIik/InZpZGVvX3N0YXRzIjoibG9nX2V2ZW50In07Cl8uQ3A9ZnVuY3Rpb24oYSxiLGMsZD17fSl7dmFyIGU9e30sZj1NYXRoLnJvdW5kKGQudGltZXN0YW1wfHwoMCxfLmVsKSgpKTtlLmV2ZW50VGltZU1zPWY8TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVI/ZjowO2VbYV09YjthPV8uQm4oKTtlLmNvbnRleHQ9e2xhc3RBY3Rpdml0eU1zOlN0cmluZyhkLnRpbWVzdGFtcHx8IWlzRmluaXRlKGEpPy0xOmEpfTtkLnNlcXVlbmNlR3JvdXAmJiFfLngoIndlYl9nZWxfc2VxdWVuY2VfaW5mb19raWxsc3dpdGNoIikmJihhPWUuY29udGV4dCxiPWQuc2VxdWVuY2VHcm91cCxCcFtiXT1iIGluIEJwP0JwW2JdKzE6MCxhLnNlcXVlbmNlPXtpbmRleDpCcFtiXSxncm91cEtleTpifSxkLmVuZE9mU2VxdWVuY2UmJmRlbGV0ZSBCcFtkLnNlcXVlbmNlR3JvdXBdKTtfLngoIndlYl90YWdfYXV0b21hdGVkX2xvZ19ldmVudHMiKSYmKGUuY29udGV4dC5hdXRvbWF0ZWRMb2dFdmVudFNvdXJjZT1kLmF1dG9tYXRlZExvZ0V2ZW50U291cmNlKTsoZC5zZW5kSXNvbGF0ZWRQYXlsb2FkPwpXbzokbykoe2VuZHBvaW50OiJsb2dfZXZlbnQiLHBheWxvYWQ6ZSxjdHRBdXRoSW5mbzpkLmN0dEF1dGhJbmZvLGRhbmdlcm91c0xvZ1RvVmlzaXRvclNlc3Npb246ZC5kYW5nZXJvdXNMb2dUb1Zpc2l0b3JTZXNzaW9ufSxjKX07Xy5FcD1mdW5jdGlvbihhLGIsYz17fSl7dmFyIGQ9RHA7Xy53KCJ5dExvZ2dpbmdFdmVudHNEZWZhdWx0RGlzYWJsZWQiLCExKSYmRHA9PT1EcCYmKGQ9bnVsbCk7Xy5DcChhLGIsZCxjKX07CkZwPWZ1bmN0aW9uKGEsYj17fSl7aWYoYT1hLk5kKXtsZXQgYz1hLmZoLGQ9YS5BbDthPVtbImNvbXBvbmVudFN0YWNrIixhLmNvbXBvbmVudFN0YWNrXSxbIndpelRhZ05hbWUiLGEudGFnTmFtZV0sWyJ3aXpPd25lclRyYWNlIixhLnByPy5qb2luKCIgPiAiKV0sWyJlcnJvclNldmVyaXR5IixjPy50b1N0cmluZygpXSxbIndpekZlYXR1cmVGbGFncyIsZD9PYmplY3QuZW50cmllcyhkKS5qb2luKCJcbiIpOnZvaWQgMF1dO2ZvcihsZXQgW2UsZl1vZiBhKWE9ZixhIT09dm9pZCAwJiYoYltlXT1hKX1yZXR1cm4gYn07Xy5IcD1mdW5jdGlvbihhKXtfLkdwKGEpfTtfLklwPWZ1bmN0aW9uKGEpe18uR3AoYSwiV0FSTklORyIpfTsKXy5HcD1mdW5jdGlvbihhLGI9IkVSUk9SIixjLGQsZSxmPXt9LGg9ITEsayl7Zi5uYW1lPWN8fF8udygiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX05BTUUiLDEpO2YudmVyc2lvbj1kfHxfLncoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9WRVJTSU9OIik7SnAoYSxmLGIsaCxrKX07CkpwPWZ1bmN0aW9uKGEsYixjPSJFUlJPUiIsZD0hMSxlKXtpZihhKXthLmhhc093blByb3BlcnR5KCJsZXZlbCIpJiZhLmxldmVsJiYoYz1hLmxldmVsKTtpZihfLngoIndpel9lbmFibGVfbWV0YWRhdGFfZXh0cmFjdGlvbl9raWxsc3dpdGNoIikpe3ZhciBmPWI7aWYoIWY/LmNvbXBvbmVudFN0YWNrKXt2YXIgaD1hLk5kPy5jb21wb25lbnRTdGFjaztoJiYoZnx8KGY9e30pLGYuY29tcG9uZW50U3RhY2s9aCl9Yj1mfHxifWVsc2UgYj1GcChhLGIpLGY9YS5OZD8uZmgsZiE9PXZvaWQgMCYmYyE9PSJJR05PUkVEIiYmKGM9Zj49Mz8iRVJST1IiOiJXQVJOSU5HIik7aWYoXy54KCJjb25zb2xlX2xvZ19qc19leGNlcHRpb25zIil8fFsidGVzdCIsImRldiIsImF1dG9wdXNoIiwic3RhZ2luZyJdLmluY2x1ZGVzKF8udygiU0VSVkVSX1ZFUlNJT04iKSkpZj1bXSxmLnB1c2goYE5hbWU6ICR7YS5uYW1lfWApLGYucHVzaChgTWVzc2FnZTogJHthLm1lc3NhZ2V9YCksYS5oYXNPd25Qcm9wZXJ0eSgicGFyYW1zIikmJgpmLnB1c2goYEVycm9yIFBhcmFtczogJHtKU09OLnN0cmluZ2lmeShhLnBhcmFtcyl9YCksYS5oYXNPd25Qcm9wZXJ0eSgiYXJncyIpJiZmLnB1c2goYEVycm9yIGFyZ3M6ICR7SlNPTi5zdHJpbmdpZnkoYS5hcmdzKX1gKSxmLnB1c2goYEZpbGUgbmFtZTogJHthLmZpbGVOYW1lfWApLGYucHVzaChgU3RhY2t0cmFjZTogJHthLnN0YWNrfWApLGY9Zi5qb2luKCJcbiIpLHdpbmRvdy5jb25zb2xlLmxvZyhmLGEpO2lmKCEoS3A+PTUpKXtmPVtdO2ZvcihrIG9mIExwKXRyeXtrKCkmJmYucHVzaChrKCkpfWNhdGNoKEUpe312YXIgaz1mO2s9Wy4uLk1wLC4uLmtdO3ZhciBsPUViKGEpO2Y9bC5tZXNzYWdlfHwiVW5rbm93biBFcnJvciI7aD1sLm5hbWV8fCJVbmtub3duRXJyb3IiO3ZhciBtPWwuc3RhY2t8fGEuWEt8fCJOb3QgYXZhaWxhYmxlIjtpZihtLnN0YXJ0c1dpdGgoYCR7aH06ICR7Zn1gKSl7dmFyIG49bS5zcGxpdCgiXG4iKTtuLnNoaWZ0KCk7bT1uLmpvaW4oIlxuIil9bj1sLmxpbmVOdW1iZXJ8fAoiTm90IGF2YWlsYWJsZSI7bD1sLmZpbGVOYW1lfHwiTm90IGF2YWlsYWJsZSI7bGV0IHo9MDtpZihhLmhhc093blByb3BlcnR5KCJhcmdzIikmJmEuYXJncyYmYS5hcmdzLmxlbmd0aClmb3IodmFyIHA9MDtwPGEuYXJncy5sZW5ndGgmJiEoej1IbyhhLmFyZ3NbcF0sYHBhcmFtcy4ke3B9YCxiLHopLHo+PTUwMCk7cCsrKTtlbHNlIGlmKGEuaGFzT3duUHJvcGVydHkoInBhcmFtcyIpJiZhLnBhcmFtcyl7bGV0IEU9YS5wYXJhbXM7aWYodHlwZW9mIGEucGFyYW1zPT09Im9iamVjdCIpZm9yKHAgaW4gRSl7aWYoIUVbcF0pY29udGludWU7bGV0IEE9YHBhcmFtcy4ke3B9YCxGPUdvKEVbcF0pO2JbQV09Rjt6Kz1BLmxlbmd0aCtGLmxlbmd0aDtpZih6PjUwMClicmVha31lbHNlIGIucGFyYW1zPUdvKEUpfWlmKGsubGVuZ3RoKWZvcihwPTA7cDxrLmxlbmd0aCYmISh6PUhvKGtbcF0sYHBhcmFtcy5jb250ZXh0LiR7cH1gLGIseiksej49NTAwKTtwKyspO25hdmlnYXRvci52ZW5kb3ImJiFiLmhhc093blByb3BlcnR5KCJ2ZW5kb3IiKSYmCihiWyJkZXZpY2UudmVuZG9yIl09bmF2aWdhdG9yLnZlbmRvcik7cD17bWVzc2FnZTpmLG5hbWU6aCxsaW5lTnVtYmVyOm4sZmlsZU5hbWU6bCxzdGFjazptLHBhcmFtczpiLHNhbXBsZVdlaWdodDoxfTtiPU51bWJlcihhLmNvbHVtbk51bWJlcik7aXNOYU4oYil8fChwLmxpbmVOdW1iZXI9YCR7cC5saW5lTnVtYmVyfToke2J9YCk7aWYoYS5sZXZlbD09PSJJR05PUkVEIil2YXIgcj0wO2Vsc2UgYTp7YT1fLkJvKCk7Zm9yKHIgb2YgYS5sZSlpZihwLm1lc3NhZ2UmJnAubWVzc2FnZS5tYXRjaChyLldKKSl7cj1yLndlaWdodDticmVhayBhfWZvcih2YXIgdCBvZiBhLlNkKWlmKHQuY2FsbGJhY2socCkpe3I9dC53ZWlnaHQ7YnJlYWsgYX1yPTF9cC5zYW1wbGVXZWlnaHQ9cjtyPXA7Zm9yKHZhciB2IG9mIE5wKXtpZighdi5KaltyLm5hbWVdKWNvbnRpbnVlO3Q9di5KaltyLm5hbWVdO2ZvcihsZXQgRSBvZiB0KXt0PXIubWVzc2FnZS5tYXRjaChFLnJlZ2V4cCk7aWYoIXQpY29udGludWU7CnIucGFyYW1zWyJwYXJhbXMuZXJyb3Iub3JpZ2luYWwiXT10WzBdO2E9RS5ncm91cHM7cD17fTtmb3IoYj0wO2I8YS5sZW5ndGg7YisrKXBbYVtiXV09dFtiKzFdLHIucGFyYW1zW2BwYXJhbXMuZXJyb3IuJHthW2JdfWBdPXRbYisxXTtyLm1lc3NhZ2U9di5wbShwKTticmVha319ci5wYXJhbXN8fChyLnBhcmFtcz17fSk7dj1fLkJvKCk7ci5wYXJhbXNbInBhcmFtcy5lcnJvclNlcnZpY2VTaWduYXR1cmUiXT1gbXNnPSR7di5sZS5sZW5ndGh9JmNiPSR7di5TZC5sZW5ndGh9YDtyLnBhcmFtc1sicGFyYW1zLnNlcnZpY2VXb3JrZXIiXT0iZmFsc2UiO18udS5kb2N1bWVudCYmXy51LmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwmJihyLnBhcmFtc1sicGFyYW1zLmZzY3JpcHRzIl09U3RyaW5nKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoInNjcmlwdDpub3QoW25vbmNlXSkiKS5sZW5ndGgpKTsobmV3IE9wKFBwLCJzYW1wbGUiKSkuY29uc3RydWN0b3IhPT1PcCYmKHIucGFyYW1zWyJwYXJhbXMuZmNvbnN0Il09CiJ0cnVlIik7d2luZG93Lnl0ZXJyJiZ0eXBlb2Ygd2luZG93Lnl0ZXJyPT09ImZ1bmN0aW9uIiYmd2luZG93Lnl0ZXJyKHIpO3Iuc2FtcGxlV2VpZ2h0PT09MHx8UXAuaGFzKHIubWVzc2FnZSl8fChkP1JwKHIsYyk6U3AocixjLGUpKX19fTtScD1mdW5jdGlvbihhLGI9IkVSUk9SIil7VHAoYixhKTtVcChhKX07ClNwPWZ1bmN0aW9uKGEsYj0iRVJST1IiLGMpe2lmKGI9PT0iRVJST1IiKXtfLlZwLnB1Ymxpc2goImhhbmRsZUVycm9yIixhKTtpZihfLngoInJlY29yZF9hcHBfY3Jhc2hlZF93ZWIiKSYmV3A9PT0wJiZhLnNhbXBsZVdlaWdodD09PTEpe1dwKys7bGV0IGQ9e2FwcENyYXNoVHlwZToiQVBQX0NSQVNIX1RZUEVfQlJFQUtQQUQifTtfLngoInJlcG9ydF9jbGllbnRfZXJyb3Jfd2l0aF9hcHBfY3Jhc2hfa3MiKXx8KGQuc3lzdGVtSGVhbHRoPXtjcmFzaERhdGE6e2NsaWVudEVycm9yOntsb2dNZXNzYWdlOnttZXNzYWdlOmEubWVzc2FnZX19fX0pO18uRXAoImFwcENyYXNoZWQiLGQpfVhwKyt9ZWxzZSBiPT09IldBUk5JTkciJiZfLlZwLnB1Ymxpc2goImhhbmRsZVdhcm5pbmciLGEpO18ueCgia2V2bGFyX2dlbF9lcnJvcl9yb3V0aW5nIikmJihjPVlwKGIsYSxjKSkmJihfLkVwKCJjbGllbnRFcnJvciIsYyksKGI9PT0iRVJST1IifHxfLngoImVycm9yc19mbHVzaF9nZWxfYWx3YXlzX2tpbGxzd2l0Y2giKSkmJgpfLmJwKHZvaWQgMCx2b2lkIDAsITEpKTtfLngoInN1cHByZXNzX2Vycm9yXzIwNF9sb2dnaW5nIil8fFRwKGIsYSk7VXAoYSl9O1VwPWZ1bmN0aW9uKGEpe3RyeXtRcC5hZGQoYS5tZXNzYWdlKX1jYXRjaChiKXt9S3ArK307CllwPWZ1bmN0aW9uKGEsYixjPXt9KXthOntmb3IoZCBvZiBacClpZihfLk1rKGQudG9Mb3dlckNhc2UoKSkpe3ZhciBkPSEwO2JyZWFrIGF9ZD0hMX1pZighZCl7dmFyIGU9e3N0YWNrVHJhY2U6Yi5zdGFja307Yi5maWxlTmFtZSYmKGUuZmlsZW5hbWU9Yi5maWxlTmFtZSk7ZD1iLmxpbmVOdW1iZXImJmIubGluZU51bWJlci5zcGxpdD9iLmxpbmVOdW1iZXIuc3BsaXQoIjoiKTpbXTtkLmxlbmd0aCE9PTAmJihkLmxlbmd0aCE9PTF8fGlzTmFOKE51bWJlcihkWzBdKSk/ZC5sZW5ndGghPT0yfHxpc05hTihOdW1iZXIoZFswXSkpfHxpc05hTihOdW1iZXIoZFsxXSkpfHwoZS5saW5lTnVtYmVyPU51bWJlcihkWzBdKSxlLmNvbHVtbk51bWJlcj1OdW1iZXIoZFsxXSkpOmUubGluZU51bWJlcj1OdW1iZXIoZFswXSkpO2Q9e2xldmVsOiJFUlJPUl9MRVZFTF9VTktOT1dOIixtZXNzYWdlOmIubWVzc2FnZSxlcnJvckNsYXNzTmFtZTpiLm5hbWUsc2FtcGxlV2VpZ2h0OmIuc2FtcGxlV2VpZ2h0fTsKYT09PSJFUlJPUiI/ZC5sZXZlbD0iRVJST1JfTEVWRUxfRVJST1IiOmE9PT0iV0FSTklORyImJihkLmxldmVsPSJFUlJPUl9MRVZFTF9XQVJOTklORyIpO2E9e2lzT2JmdXNjYXRlZDohMCxicm93c2VyU3RhY2tJbmZvOmV9O2MucGFnZVVybD13aW5kb3cubG9jYXRpb24uaHJlZjtjLmt2UGFpcnM9W107Xy53KCJGRVhQX0VYUEVSSU1FTlRTIikmJihjLmV4cGVyaW1lbnRJZHM9Xy53KCJGRVhQX0VYUEVSSU1FTlRTIikpO2U9Xy53KCJMQVRFU1RfRUNBVENIRVJfU0VSVklDRV9UUkFDS0lOR19QQVJBTVMiKTtpZighXy5SaSgid2ViX2Rpc2FibGVfZ2VsX3N0cF9lY2F0Y2hlcl9raWxsc3dpdGNoIikmJmUpZm9yKHZhciBmIG9mIE9iamVjdC5rZXlzKGUpKWMua3ZQYWlycy5wdXNoKHtrZXk6Zix2YWx1ZTpTdHJpbmcoZVtmXSl9KTtpZihmPWIucGFyYW1zKWZvcih2YXIgaCBvZiBPYmplY3Qua2V5cyhmKSljLmt2UGFpcnMucHVzaCh7a2V5OmBjbGllbnQuJHtofWAsdmFsdWU6U3RyaW5nKGZbaF0pfSk7CmlmKGI9Yi5wYXJhbXM/LnNlc3Npb25SZXBsYXlJZCljLnNlc3Npb25SZXBsYXlJZD1TdHJpbmcoYik7Yj1fLncoIlNFUlZFUl9OQU1FIik7aD1fLncoIlNFUlZFUl9WRVJTSU9OIik7YiYmaCYmKGMua3ZQYWlycy5wdXNoKHtrZXk6InNlcnZlci5uYW1lIix2YWx1ZTpifSksYy5rdlBhaXJzLnB1c2goe2tleToic2VydmVyLnZlcnNpb24iLHZhbHVlOmh9KSk7KGI9Xy53KCJQTEFZRVJfQ0xJRU5UX1ZFUlNJT04iKSkmJmMua3ZQYWlycy5wdXNoKHtrZXk6ImNsaWVudC5wbGF5ZXIudmVyc2lvbiIsdmFsdWU6Yn0pO3JldHVybntlcnJvck1ldGFkYXRhOmMsc3RhY2tUcmFjZTphLGxvZ01lc3NhZ2U6ZH19fTsKVHA9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnBhcmFtc3x8e307YT17dXJsUGFyYW1zOnthOiJsb2dlcnJvciIsdDoianNlcnJvciIsdHlwZTpiLm5hbWUsbXNnOmIubWVzc2FnZS5zdWJzdHIoMCwyNTApLGxpbmU6Yi5saW5lTnVtYmVyLGxldmVsOmEsImNsaWVudC5uYW1lIjpjLm5hbWV9LHBvc3RQYXJhbXM6e3VybDpfLncoIlBBR0VfTkFNRSIsd2luZG93LmxvY2F0aW9uLmhyZWYpLGZpbGU6Yi5maWxlTmFtZX0sbWV0aG9kOiJQT1NUIn07Yy52ZXJzaW9uJiYoYVsiY2xpZW50LnZlcnNpb24iXT1jLnZlcnNpb24pO2lmKGEucG9zdFBhcmFtcyl7Yi5zdGFjayYmKGEucG9zdFBhcmFtcy5zdGFjaz1iLnN0YWNrKTtmb3IobGV0IGUgb2YgT2JqZWN0LmtleXMoYykpYS5wb3N0UGFyYW1zW2BjbGllbnQuJHtlfWBdPWNbZV07aWYoYj1fLncoIkxBVEVTVF9FQ0FUQ0hFUl9TRVJWSUNFX1RSQUNLSU5HX1BBUkFNUyIpKWZvcih2YXIgZCBvZiBPYmplY3Qua2V5cyhiKSlhLnBvc3RQYXJhbXNbZF09CmJbZF07KGQ9Xy53KCJMQVZBX1ZFUlNJT04iKSkmJihhLnBvc3RQYXJhbXNbImxhdmEudmVyc2lvbiJdPWQpO2Q9Xy53KCJTRVJWRVJfTkFNRSIpO2I9Xy53KCJTRVJWRVJfVkVSU0lPTiIpO2QmJmImJihhLnBvc3RQYXJhbXNbInNlcnZlci5uYW1lIl09ZCxhLnBvc3RQYXJhbXNbInNlcnZlci52ZXJzaW9uIl09Yik7KGQ9Xy53KCJQTEFZRVJfQ0xJRU5UX1ZFUlNJT04iKSkmJihhLnBvc3RQYXJhbXNbImNsaWVudC5wbGF5ZXIudmVyc2lvbiJdPWQpfV8uemooYCR7Xy53KCJFQ0FUQ0hFUl9SRVBPUlRfSE9TVCIsIiIpfS9lcnJvcl8yMDRgLGEpfTthcT1mdW5jdGlvbigpeyRwLmluc3RhbmNlfHwoJHAuaW5zdGFuY2U9bmV3ICRwKTtyZXR1cm4gJHAuaW5zdGFuY2V9OwpjcT1mdW5jdGlvbihhLGIpe2JxW2JdPWJxW2JdfHx7Y291bnQ6MH07dmFyIGM9YnFbYl07Yy5jb3VudCsrO2MudGltZT0oMCxfLmVsKSgpO2Euanx8KGEuaj1fLllqKCgpPT57dmFyIGQ9KDAsXy5lbCkoKTtmb3IobGV0IGUgaW4gYnEpYnFbZV0mJmQtYnFbZV0udGltZT42RTQmJmRlbGV0ZSBicVtlXTthJiYoYS5qPTApfSw1RTMpKTtyZXR1cm4gYy5jb3VudD41PyhjLmNvdW50PT09NiYmTWF0aC5yYW5kb20oKSoxRTU8MSYmKGM9bmV3IF8uWGooIkNTSSBkYXRhIGV4Y2VlZGVkIGxvZ2dpbmcgbGltaXQgd2l0aCBrZXkiLGIuc3BsaXQoIl8iKSksYi5pbmRleE9mKCJwbGV2Iik+PTB8fF8uSXAoYykpLCEwKTohMX07ZHE9ZnVuY3Rpb24oYT0wKXtyZXR1cm4gXy53KCJjbGllbnQtc2NyZWVuLW5vbmNlLXN0b3JlIix7fSlbYV19OwplcT1mdW5jdGlvbihhLGI9MCl7dmFyIGM9Xy53KCJjbGllbnQtc2NyZWVuLW5vbmNlLXN0b3JlIik7Y3x8KGM9e30sXy5RaSgiY2xpZW50LXNjcmVlbi1ub25jZS1zdG9yZSIsYykpO2NbYl09YX07ZnE9ZnVuY3Rpb24oYT0wKXtyZXR1cm4gYT09PTA/IlJPT1RfVkVfVFlQRSI6YFJPT1RfVkVfVFlQRS4ke2F9YH07Xy5ncT1mdW5jdGlvbihhPTApe3JldHVybiBfLncoZnEoYSkpfTtocT1mdW5jdGlvbigpe3ZhciBhPV8udygiY3NuLXRvLWN0dC1hdXRoLWluZm8iKTthfHwoYT17fSxfLlFpKCJjc24tdG8tY3R0LWF1dGgtaW5mbyIsYSkpO3JldHVybiBhfTtfLmlxPWZ1bmN0aW9uKGE9MCl7YT1kcShhKTtpZighYSYmIV8udygiVVNFX0NTTl9GQUxMQkFDSyIsITApKXJldHVybiBudWxsO2F8fChhPSJVTkRFRklORURfQ1NOIik7cmV0dXJuIGE/YTpudWxsfTtqcT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9aHEoKTsoYz1fLmlxKGMpKSYmZGVsZXRlIGRbY107YiYmKGRbYV09Yil9OwpfLmtxPWZ1bmN0aW9uKGEpe3JldHVybiBocSgpW2FdfTtfLm1xPWZ1bmN0aW9uKGEsYixjPTAsZCl7aWYoYSE9PWRxKGMpfHxiIT09Xy53KGZxKGMpKSlpZihqcShhLGQsYyksZXEoYSxjKSxfLlFpKGZxKGMpLGIpLGI9KCk9PntzZXRUaW1lb3V0KCgpPT57YSYmXy5FcCgiZm9yZWdyb3VuZEhlYXJ0YmVhdFNjcmVlbkFzc29jaWF0ZWQiLHtjbGllbnREb2N1bWVudE5vbmNlOmxxLGNsaWVudFNjcmVlbk5vbmNlOmF9KX0sMCl9LCJyZXF1ZXN0QW5pbWF0aW9uRnJhbWUiaW4gd2luZG93KXRyeXt3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGIpfWNhdGNoKGUpe2IoKX1lbHNlIGIoKX07Xy5vcT1mdW5jdGlvbihhLGIpe18ubnEoIl9zdGFydCIsYSxiKX07Cl8ucHE9ZnVuY3Rpb24oYSxiKXtpZighXy54KCJ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkIil8fCFfLmtvKGIpLmFjdGlvbkRpc2FibGVkKXt2YXIgYz1fLnVvKGJ8fCIiKTtfLnluKGMuaW5mbyxhKTthLmxvYWRUeXBlJiYoYz1hLmxvYWRUeXBlLF8ubG8oYikubG9hZFR5cGU9Yyk7Xy55bihfLm9vKGIpLGEpO2M9Xy5wbyhiKTtiPV8ua28oYikuY3R0QXV0aEluZm87YXEoKS5pbmZvKGEsYyxiKX19O3FxPWZ1bmN0aW9uKCl7cmV0dXJuKF8ueSgpLnJlc29sdmUoXy5JbihpbSkpPy53aigpPy5sb2dnaW5nSG90Q29uZmlnPy5jc2lDb25maWc/LmRlYnVnVGlja3M/P1tdKS5tYXAoYT0+T2JqZWN0LnZhbHVlcyhhKVswXSl9OwpfLm5xPWZ1bmN0aW9uKGEsYixjKXtpZighXy54KCJ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkIil8fCFfLmtvKGMpLmFjdGlvbkRpc2FibGVkKXt2YXIgZD1fLnBvKGMpLGU7aWYoZT1fLngoIndlYl9jc2lfZGVidWdfc2FtcGxlX2VuYWJsZWQiKSYmZCl7Xy55KCkucmVzb2x2ZShfLkluKGltKSk/LndqKCkmJiFycSYmKHJxPSEwLF8ubnEoImdjZmwiLCgwLF8uZWwpKCksYykpO2U9Xy55KCkucmVzb2x2ZShfLkluKGltKSk/LndqKCk/LmxvZ2dpbmdIb3RDb25maWc/LmNzaUNvbmZpZz8uZGVidWdTYW1wbGVXZWlnaHR8fDA7dmFyIGY7aWYoZj1lIT09MCliOntmPXFxKCk7aWYoZi5sZW5ndGg+MClmb3IodmFyIGg9MDtoPGYubGVuZ3RoO2grKylpZihhPT09ZltoXSl7Zj0hMDticmVhayBifWY9ITF9Zj8oZT1fLkduKGQpJWUhPT0wLF8ua28oYykuZGVidWdUaWNrc0V4Y2x1ZGVkTG9nZ2VkfHwoZj17fSxmLmRlYnVnVGlja3NFeGNsdWRlZD1lLF8ucHEoZixjKSksXy5rbyhjKS5kZWJ1Z1RpY2tzRXhjbHVkZWRMb2dnZWQ9CiEwKTplPSExfWlmKCFlKXtpZihhWzBdIT09Il8iJiYoZT1hLF8uc3EubWFyaykpe2Uuc3RhcnRzV2l0aCgibWFya18iKXx8KGU9Im1hcmtfIitlKTtjJiYoZSs9YCAoJHtjfSlgKTtmPWU7aD17fTtpZihiIT09dm9pZCAwJiYhXy54KCJ3ZWJfY3NpX2Rpc2FibGVfYWx0X3RpbWVfcGVyZm9ybWFuY2VfbWFyayIpKXtsZXQgbD1iO2w9Xy54KCJjc2lfdXNlX3BlcmZvcm1hbmNlX25hdmlnYXRpb25fdGltaW5nIik/bC1fLnNxLnRpbWVPcmlnaW46bC0oXy5zcS50aW1lT3JpZ2lufHxfLnNxLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnQpO2guc3RhcnRUaW1lPWx9Xy54KCJjc2lfZW5hYmxlX2Nocm9tZV9kZXZ0b29sc19wZXJmb3JtYW5jZV90aW1lbGluZV9pbnRlZ3JhdGlvbiIpJiYoaC5kZXRhaWw9e3ZJOntkYXRhVHlwZToibWFya2VyIixjb2xvcjoicHJpbWFyeSIsdG9vbHRpcFRleHQ6Zn19KTtmPU9iamVjdC5rZXlzKGgpLmxlbmd0aD4wP2g6dm9pZCAwO3RyeXtfLnNxLm1hcmsoZSxmKX1jYXRjaChsKXtfLnNxLm1hcmsoZSl9fWU9Cl8udW8oY3x8IiIpO2UudGlja1thXT1ifHwoMCxfLmVsKSgpO2lmKGUuY2FsbGJhY2smJmUuY2FsbGJhY2tbYV0pZm9yKHZhciBrIG9mIGUuY2FsbGJhY2tbYV0paygpO2s9Xy5ubyhjKTtrLmdlbFRpY2tzJiYoay5nZWxUaWNrc1thXT0hMCk7ZT1fLm1vKGMpO2s9Ynx8KDAsXy5lbCkoKTtlW2FdPWs7ZT1fLmtvKGMpLmN0dEF1dGhJbmZvO2E9PT0iX3N0YXJ0Ij8oYT1hcSgpLGNxKGEsYGJhc2VsaW5lXyR7ZH1gKXx8Xy5FcCgibGF0ZW5jeUFjdGlvbkJhc2VsaW5lZCIse2NsaWVudEFjdGlvbk5vbmNlOmR9LHt0aW1lc3RhbXA6YixjdHRBdXRoSW5mbzplfSkpOmFxKCkudGljayhhLGQsYixlKTtfLnRxKGMpO3JldHVybiBrfX19OwpfLnZxPWZ1bmN0aW9uKGEpe3ZhciBiPV8udXEoImFmdCIsYSk7aWYoYilyZXR1cm4gYjtiPV8udygoYXx8IiIpKyJUSU1JTkdfQUZUX0tFWVMiLFsib2wiXSk7dmFyIGM9Yi5sZW5ndGg7Zm9yKGxldCBkPTA7ZDxjO2QrKyl7bGV0IGU9Xy51cShiW2RdLGEpO2lmKGUpcmV0dXJuIGV9cmV0dXJuIE5hTn07Xy51cT1mdW5jdGlvbihhLGIpe2lmKGE9Xy5tbyhiKVthXSlyZXR1cm4gdHlwZW9mIGE9PT0ibnVtYmVyIj9hOmFbYS5sZW5ndGgtMV19O18udHE9ZnVuY3Rpb24oYSl7dmFyIGI9Xy51cSgiX3N0YXJ0IixhKSxjPV8udnEoYSksZD0hd3E7YiYmYyYmZCYmKF8uc20oeHEsbmV3IHlxKE1hdGgucm91bmQoYy1iKSxhKSksd3E9ITApfTtfLnpxPWZ1bmN0aW9uKGEsYixjPSExKXtfLlZpKF8ucHEpKGEsYixjKX07Xy5BcT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uVmkoXy5ucSkoYSxiLGMpfTsKXy5CcT1mdW5jdGlvbihhLGIpe3JldHVybiBfLlZpKCgpPT57dmFyIGM9Xy5tbyhiKTtyZXR1cm4gYSBpbiBjfSkoKX07a2E9T2JqZWN0LmNyZWF0ZTtqYT1PYmplY3QuZGVmaW5lUHJvcGVydHk7aWE9Z2xvYmFsVGhpcztjYT0iSW50OCBVaW50OCBVaW50OENsYW1wZWQgSW50MTYgVWludDE2IEludDMyIFVpbnQzMiBGbG9hdDMyIEZsb2F0NjQiLnNwbGl0KCIgIik7aWEuQmlnSW50NjRBcnJheSYmKGNhLnB1c2goIkJpZ0ludDY0IiksY2EucHVzaCgiQmlnVWludDY0IikpO3ZhciBsYT1PYmplY3Quc2V0UHJvdG90eXBlT2Y7ZmEoIlN5bWJvbC5kaXNwb3NlIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOlN5bWJvbCgiYSIpfSk7CmZhKCJTdXBwcmVzc2VkRXJyb3IiLGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoYyxkLGUpe2lmKCEodGhpcyBpbnN0YW5jZW9mIGIpKXJldHVybiBuZXcgYihjLGQsZSk7ZT1FcnJvcihlKTsic3RhY2siaW4gZSYmKHRoaXMuc3RhY2s9ZS5zdGFjayk7dGhpcy5tZXNzYWdlPWUubWVzc2FnZTt0aGlzLmVycm9yPWM7dGhpcy5zdXBwcmVzc2VkPWR9aWYoYSlyZXR1cm4gYTtuYShiLEVycm9yKTtiLnByb3RvdHlwZS5uYW1lPSJTdXBwcmVzc2VkRXJyb3IiO3JldHVybiBifSk7CmZhKCJTdHJpbmcucHJvdG90eXBlLnJlcGxhY2VBbGwiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXtpZihiIGluc3RhbmNlb2YgUmVnRXhwJiYhYi5nbG9iYWwpdGhyb3cgbmV3IFR5cGVFcnJvcigiYiIpO3JldHVybiBiIGluc3RhbmNlb2YgUmVnRXhwP3RoaXMucmVwbGFjZShiLGMpOnRoaXMucmVwbGFjZShuZXcgUmVnRXhwKFN0cmluZyhiKS5yZXBsYWNlKC8oWy0oKVxbXF17fSs/Ki4kXF58LDojPCFcXF0pL2csIlxcJDEiKS5yZXBsYWNlKC9ceDA4L2csIlxceDA4IiksImciKSxjKX19KTtmYSgiUHJvbWlzZS53aXRoUmVzb2x2ZXJzIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKCl7dmFyIGIsYztyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZShmdW5jdGlvbihkLGUpe2I9ZDtjPWV9KSxyZXNvbHZlOmIscmVqZWN0OmN9fX0pOwpmYSgiT2JqZWN0Lmhhc093biIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYixjKX19KTtmYSgiQXJyYXkucHJvdG90eXBlLmF0IixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOnFhfSk7ZWEoImF0IixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOnFhfSk7ZmEoIlN0cmluZy5wcm90b3R5cGUuYXQiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6cWF9KTtfLl9EdW1wRXhjZXB0aW9uPXdpbmRvdy5fRHVtcEV4Y2VwdGlvbnx8ZnVuY3Rpb24oYSl7dGhyb3cgYTt9O3dpbmRvdy5fRHVtcEV4Y2VwdGlvbj1fLl9EdW1wRXhjZXB0aW9uO3dpbmRvdy55dGNzaSYmd2luZG93Lnl0Y3NpLnRpY2smJndpbmRvdy55dGNzaS50aWNrKCJyc2VzX2RwaiIpO18uQ3E9Xy5DcXx8e307Xy51PXRoaXN8fHNlbGY7Xy5EcT1fLnUuX0ZfdG9nZ2xlc19kZWZhdWx0X2Jhc2V8fFtdO3ZhLmdldD1mdW5jdGlvbigpe3JldHVybiBudWxsfTtfLmVoPW51bGw7Xy5FcT0iY2xvc3VyZV91aWRfIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKTt2YXIgJG09Y2xhc3N7Y29uc3RydWN0b3Ioe3VybDphLGtMOmJ9KXt0aGlzLm89YTt0aGlzLkI9Yjt0aGlzLnY9KG5ldyBEYXRlKS5nZXRUaW1lKCktMTcwNDA2NzJFNTt0aGlzLmo9e307Zm9yKHZhciBjPS9bPyZdKFteJj1dKyk9KFteJl0qKS9nO2I9Yy5leGVjKGEpOyl0aGlzLmpbYlsxXV09YlsyXX19O18uSGEoXy5MYSxFcnJvcik7Xy5MYS5wcm90b3R5cGUubmFtZT0iQ3VzdG9tRXJyb3IiO3ZhciB3ZDt2YXIgTmE9Z2xvYmFsVGhpcy50cnVzdGVkVHlwZXMsUWE7Xy5TYT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX10b1N0cmluZygpe3JldHVybiB0aGlzLmorIiJ9fTtWYShhPT5hYGApfHxWYShhPT5hYFwwYCl8fFZhKGE9PmFgXG5gKXx8VmEoYT0+YWBcdTAwMDBgKTtfLldhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj1hfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuan19O18uRnE9bmV3IF8uV2EoImFib3V0OmludmFsaWQjekNsb3N1cmV6Iik7dmFyIFphLGNiO1phPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuZmI9YX19O18uR3E9bmV3IFphKGE9Pi9eW146XSooWy8/I118JCkvLnRlc3QoYSkpO18uSHE9JGEoInRlbCIpO18uSXE9JGEoImRhdGEiKTtfLkpxPSRhKCJodHRwIik7Xy5LcT0kYSgiaHR0cHMiKTtfLkxxPSRhKCJmdHAiKTtfLk1xPSRhKCJtYWlsdG8iKTtfLk5xPSRhKCJpbnRlbnQiKTtfLk9xPSRhKCJzbXMiKTtfLlBxPSRhKCJ2bmQueW91dHViZSIpO18uYWI9W18uSXEsXy5KcSxfLktxLF8uTXEsXy5McSxfLkdxXTtjYj0vXlxzKig/IWphdmFzY3JpcHQ6KSg/OltcdysuLV0rOnxbXjovPyNdKig/OlsvPyNdfCQpKS9pO18uZmI9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5qKyIifX07Xy5qYj1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX10b1N0cmluZygpe3JldHVybiB0aGlzLmorIiJ9fTt2YXIgcGI9ImFsdGVybmF0ZSBhdXRob3IgYm9va21hcmsgY2Fub25pY2FsIGNpdGUgaGVscCBpY29uIGxpY2Vuc2UgbW9kdWxlcHJlbG9hZCBuZXh0IHByZWZldGNoIGRucy1wcmVmZXRjaCBwcmVyZW5kZXIgcHJlY29ubmVjdCBwcmVsb2FkIHByZXYgc2VhcmNoIHN1YnJlc291cmNlIi5zcGxpdCgiICIpO3ZhciBEYj17fTt2YXIgS2I7S2I9UmVnRXhwKCJeKD86KFteOi8/Iy5dKyk6KT8oPzovLyg/OihbXlxcXFwvPyNdKilAKT8oW15cXFxcLz8jXSo/KSg/OjooWzAtOV0rKSk/KD89W1xcXFwvPyNdfCQpKT8oW14/I10rKT8oPzpcXD8oW14jXSopKT8oPzojKFtcXHNcXFNdKikpPyQiKTtfLlliPS8jfCQvO3ZhciBRcT0hIShfLkRxWzBdPj4yNSYxKSxScT0hIShfLkRxWzBdPj4yMCYxKSxTcT0hIShfLkRxWzBdPj4yNyYxKSxUcT0hIShfLkRxWzBdJjgpLFVxPSEhKF8uRHFbMF0mODE5MiksVnE9ISEoXy5EcVswXT4+MTkmMSksV3E9ISEoXy5EcVswXT4+MTcmMSksWHE9ISEoXy5EcVswXT4+MTgmMSk7dmFyIGRjLFZjLGRlLEFlLFZnO2RjPVFxP1NxOnVhKDYxMDQwMTMwMSwhMSk7Xy5ZcT1RcT9UcTp1YSg1MTM2NTk1MjMsITEpO1ZjPVFxP1JxfHwhVXE6dWEoNzQ4NDAyMTQ3LCEwKTtkZT1RcT9WcTp1YSg5MTk0NDQ4MjQsITEpO0FlPVFxP1dxOnVhKDkyODg3NTM5OCwhMSk7Vmc9UXE/WHE6dWEoNjgzNzQ5MjAxLCExKTt2YXIgZWMsWnE9Xy51Lm5hdmlnYXRvcjtlYz1acT9acS51c2VyQWdlbnREYXRhfHxudWxsOm51bGw7Xy5wY1siICJdPWZ1bmN0aW9uKCl7fTt2YXIgJHEsYXIsYnI7JHE9amMoKTthcj1pYygpPyExOmhjKCJUcmlkZW50Iil8fGhjKCJNU0lFIik7Xy5KbD1oYygiRWRnZSIpO2JyPWhjKCJHZWNrbyIpJiYhKF8uYmMoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoIndlYmtpdCIpIT0tMSYmIWhjKCJFZGdlIikpJiYhKGhjKCJUcmlkZW50Iil8fGhjKCJNU0lFIikpJiYhaGMoIkVkZ2UiKTtfLmNyPV8uYmMoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoIndlYmtpdCIpIT0tMSYmIWhjKCJFZGdlIik7Xy5kcj1fLmNyJiZoYygiTW9iaWxlIik7bmMoKXx8aGMoIk1hY2ludG9zaCIpO25jKCl8fGhjKCJXaW5kb3dzIik7KG5jKCk/ZWMucGxhdGZvcm09PT0iTGludXgiOmhjKCJMaW51eCIpKXx8bmMoKXx8aGMoIkNyT1MiKTtfLmVyPW5jKCk/ZWMucGxhdGZvcm09PT0iQW5kcm9pZCI6aGMoIkFuZHJvaWQiKTtvYygpO2hjKCJpUGFkIik7aGMoImlQb2QiKTtfLmZyPW9jKCl8fGhjKCJpUGFkIil8fGhjKCJpUG9kIik7Cl8uZ3I9Xy5iYygpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigia2Fpb3MiKSE9LTE7a2MoKTtfLmhyPW9jKCl8fGhjKCJpUG9kIik7Xy5pcj1oYygiaVBhZCIpOyFoYygiQW5kcm9pZCIpfHxtYygpfHxrYygpfHxqYygpfHxoYygiU2lsayIpO21jKCk7Xy5Paz1oYygiU2FmYXJpIikmJiEobWMoKXx8KGljKCk/MDpoYygiQ29hc3QiKSl8fGpjKCl8fChpYygpPzA6aGMoIkVkZ2UiKSl8fChpYygpP2ZjKCJNaWNyb3NvZnQgRWRnZSIpOmhjKCJFZGcvIikpfHwoaWMoKT9mYygiT3BlcmEiKTpoYygiT1BSIikpfHxrYygpfHxoYygiU2lsayIpfHxoYygiQW5kcm9pZCIpKSYmIShvYygpfHxoYygiaVBhZCIpfHxoYygiaVBvZCIpKTt2YXIgcmM9e30sdmM9bnVsbDt2YXIgd2M9dm9pZCAwO3ZhciBIYyxZYyxTYztfLkpjPV8ueWMoKTtfLmpyPV8ueWMoKTtIYz1fLnljKCk7Xy5rcj1fLnljKCk7WWM9Xy55YygpO18uT2M9Xy55YygibV9tIiwhMCk7U2M9Xy55YygpO18ubHI9Xy55YygpO3ZhciBucjtfLkFjPV8ueWMoImphcyIsITApO25yPVtdO25yW18uQWNdPTc7Xy5tcj1PYmplY3QuZnJlZXplKG5yKTtfLlBjPXt9O18uemM9e307Xy5vcj1PYmplY3QuZnJlZXplKHt9KTtfLnByPV8uQ2MoYT0+YSE9PW51bGwmJmEhPT12b2lkIDApO3ZhciBFYyxEYztFYz1fLkNjKGE9PnR5cGVvZiBhPT09Im51bWJlciIpO0RjPV8uQ2MoYT0+dHlwZW9mIGE9PT0ic3RyaW5nIik7Xy5ibz1fLkNjKGE9PmEhPW51bGwmJnR5cGVvZiBhPT09Im9iamVjdCImJnR5cGVvZiBhLnRoZW49PT0iZnVuY3Rpb24iKTtfLnFyPV8uQ2MoYT0+ISFhJiYodHlwZW9mIGE9PT0ib2JqZWN0Inx8dHlwZW9mIGE9PT0iZnVuY3Rpb24iKSk7dmFyIHJyLHNyO18uTWM9Xy5DYyhhPT5hPj1yciYmYTw9c3IpO3JyPUJpZ0ludChOdW1iZXIuTUlOX1NBRkVfSU5URUdFUik7c3I9QmlnSW50KE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKTtfLnRyPXR5cGVvZiBCaWdJbnQ9PT0iZnVuY3Rpb24iP0JpZ0ludC5hc0ludE46dm9pZCAwO18udXI9dHlwZW9mIEJpZ0ludD09PSJmdW5jdGlvbiI/QmlnSW50LmFzVWludE46dm9pZCAwO18udnI9TnVtYmVyLmlzU2FmZUludGVnZXI7Xy53cj1OdW1iZXIuaXNGaW5pdGU7Xy54cj1NYXRoLnRydW5jO3ZhciBUYz17fTt2YXIgS2M7Xy55cj1fLkZjKDApO18uenI9ZmQoKTtfLkFyPWZkKCk7Xy5Ccj1mZCgpO18uQ3I9ZmQoKTtfLkRyPWZkKCk7Xy5Fcj1mZCgpO18uRnI9ZmQoKTtfLkdyPWZkKCk7Xy5Icj1mZCgpO18uSXI9ZmQoKTtfLkpyPWZkKCk7Xy5Lcj1mZCgpO18uTHI9ZmQoKTtfLk1yPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjKXt0aGlzLkRhPV8uWGMoYSxiLGMsMjA0OCl9dG9KU09OKCl7cmV0dXJuIFVjKHRoaXMpfXNlcmlhbGl6ZShhKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoVWModGhpcyxhKSl9Y2xvbmUoKXt2YXIgYT10aGlzLkRhLGI9YVtfLkFjXXwwO3JldHVybiBfLiRjKHRoaXMsYSxiKT9fLmJkKHRoaXMsYSwhMCk6bmV3IHRoaXMuY29uc3RydWN0b3IoXy5aYyhhLGIsITEpKX19O18uTXIucHJvdG90eXBlW18uT2NdPV8uUGM7dmFyIGpqPXdpbmRvdzsiQVJUSUNMRSBTRUNUSU9OIE5BViBBU0lERSBIMSBIMiBIMyBINCBINSBINiBIRUFERVIgRk9PVEVSIEFERFJFU1MgUCBIUiBQUkUgQkxPQ0tRVU9URSBPTCBVTCBMSCBMSSBETCBEVCBERCBGSUdVUkUgRklHQ0FQVElPTiBNQUlOIERJViBFTSBTVFJPTkcgU01BTEwgUyBDSVRFIFEgREZOIEFCQlIgUlVCWSBSQiBSVCBSVEMgUlAgREFUQSBUSU1FIENPREUgVkFSIFNBTVAgS0JEIFNVQiBTVVAgSSBCIFUgTUFSSyBCREkgQkRPIFNQQU4gQlIgV0JSIE5PQlIgSU5TIERFTCBQSUNUVVJFIFBBUkFNIFRSQUNLIE1BUCBUQUJMRSBDQVBUSU9OIENPTEdST1VQIENPTCBUQk9EWSBUSEVBRCBURk9PVCBUUiBURCBUSCBTRUxFQ1QgREFUQUxJU1QgT1BUR1JPVVAgT1BUSU9OIE9VVFBVVCBQUk9HUkVTUyBNRVRFUiBGSUVMRFNFVCBMRUdFTkQgREVUQUlMUyBTVU1NQVJZIE1FTlUgRElBTE9HIFNMT1QgQ0FOVkFTIEZPTlQgQ0VOVEVSIEFDUk9OWU0gQkFTRUZPTlQgQklHIERJUiBIR1JPVVAgU1RSSUtFIFRUIi5zcGxpdCgiICIpLmNvbmNhdChbIkJVVFRPTiIsCiJJTlBVVCJdKTt2YXIgaWQ9e1FCOiJhbGxvdy1mb3JtcyIsU0I6ImFsbG93LW1vZGFscyIsVEI6ImFsbG93LW9yaWVudGF0aW9uLWxvY2siLFVCOiJhbGxvdy1wb2ludGVyLWxvY2siLFZCOiJhbGxvdy1wb3B1cHMiLFdCOiJhbGxvdy1wb3B1cHMtdG8tZXNjYXBlLXNhbmRib3giLFhCOiJhbGxvdy1wcmVzZW50YXRpb24iLFlCOiJhbGxvdy1zYW1lLW9yaWdpbiIsWkI6ImFsbG93LXNjcmlwdHMiLGFDOiJhbGxvdy10b3AtbmF2aWdhdGlvbiIsYkM6ImFsbG93LXRvcC1uYXZpZ2F0aW9uLWJ5LXVzZXItYWN0aXZhdGlvbiJ9LGxkPWhkKCgpPT5rZCgpKTtfLmc9Xy5uZC5wcm90b3R5cGU7Xy5nLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBfLm5kKHRoaXMud2lkdGgsdGhpcy5oZWlnaHQpfTtfLmcuYXJlYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLndpZHRoKnRoaXMuaGVpZ2h0fTtfLmcuYXNwZWN0UmF0aW89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy53aWR0aC90aGlzLmhlaWdodH07Xy5nLmlzRW1wdHk9ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5hcmVhKCl9O18uZy5jZWlsPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLmNlaWwodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5jZWlsKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307Xy5nLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLmZsb29yKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGguZmxvb3IodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKXy5nLnJvdW5kPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLnJvdW5kKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGgucm91bmQodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtfLmcuc2NhbGU9ZnVuY3Rpb24oYSxiKXt0aGlzLndpZHRoKj1hO3RoaXMuaGVpZ2h0Kj10eXBlb2YgYj09PSJudW1iZXIiP2I6YTtyZXR1cm4gdGhpc307dmFyIHJkPSJjb25zdHJ1Y3RvciBoYXNPd25Qcm9wZXJ0eSBpc1Byb3RvdHlwZU9mIHByb3BlcnR5SXNFbnVtZXJhYmxlIHRvTG9jYWxlU3RyaW5nIHRvU3RyaW5nIHZhbHVlT2YiLnNwbGl0KCIgIik7dmFyIE9wPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5qPWE9PT1QcCYmYnx8IiJ9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5qfX0sUHA9e307bmV3IE9wKFBwLCIiKTtfLmc9dWQucHJvdG90eXBlO18uZy5nZXRFbGVtZW50c0J5VGFnTmFtZT1mdW5jdGlvbihhLGIpe3JldHVybihifHx0aGlzLmopLmdldEVsZW1lbnRzQnlUYWdOYW1lKFN0cmluZyhhKSl9O18uZy5jcmVhdGVFbGVtZW50PWZ1bmN0aW9uKGEpe3JldHVybiBCZCh0aGlzLmosYSl9O18uZy5jcmVhdGVUZXh0Tm9kZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5qLmNyZWF0ZVRleHROb2RlKFN0cmluZyhhKSl9O18uZy5hcHBlbmRDaGlsZD1mdW5jdGlvbihhLGIpe2EuYXBwZW5kQ2hpbGQoYil9O18uZy5hcHBlbmQ9ZnVuY3Rpb24oYSxiKXtBZChfLnZkKGEpLGEsYXJndW1lbnRzKX07Xy5nLmNhbkhhdmVDaGlsZHJlbj1mdW5jdGlvbihhKXtpZihhLm5vZGVUeXBlIT0xKXJldHVybiExO3N3aXRjaChhLnRhZ05hbWUpe2Nhc2UgIkFQUExFVCI6Y2FzZSAiQVJFQSI6Y2FzZSAiQkFTRSI6Y2FzZSAiQlIiOmNhc2UgIkNPTCI6Y2FzZSAiQ09NTUFORCI6Y2FzZSAiRU1CRUQiOmNhc2UgIkZSQU1FIjpjYXNlICJIUiI6Y2FzZSAiSU1HIjpjYXNlICJJTlBVVCI6Y2FzZSAiSUZSQU1FIjpjYXNlICJJU0lOREVYIjpjYXNlICJLRVlHRU4iOmNhc2UgIkxJTksiOmNhc2UgIk5PRlJBTUVTIjpjYXNlICJOT1NDUklQVCI6Y2FzZSAiTUVUQSI6Y2FzZSAiT0JKRUNUIjpjYXNlICJQQVJBTSI6Y2FzZSAiU0NSSVBUIjpjYXNlICJTT1VSQ0UiOmNhc2UgIlNUWUxFIjpjYXNlICJUUkFDSyI6Y2FzZSAiV0JSIjpyZXR1cm4hMX1yZXR1cm4hMH07Cl8uZy5yZW1vdmVOb2RlPV8uRGQ7Xy5nLmNvbnRhaW5zPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEmJmI/YT09Ynx8YS5jb250YWlucyhiKTohMX07Xy5nLmlzRm9jdXNhYmxlPV8uRmQ7dmFyIGlqPShuZXcgRGF0ZSkuZ2V0VGltZSgpO18uZz1MZC5wcm90b3R5cGU7Xy5nLmlzRW5hYmxlZD1mdW5jdGlvbigpe2lmKCFfLnUubmF2aWdhdG9yLmNvb2tpZUVuYWJsZWQpcmV0dXJuITE7aWYoIXRoaXMuaXNFbXB0eSgpKXJldHVybiEwO3RoaXMuc2V0KCJURVNUQ09PS0lFU0VOQUJMRUQiLCIxIix7dmo6NjB9KTtpZih0aGlzLmdldCgiVEVTVENPT0tJRVNFTkFCTEVEIikhPT0iMSIpcmV0dXJuITE7dGhpcy5yZW1vdmUoIlRFU1RDT09LSUVTRU5BQkxFRCIpO3JldHVybiEwfTsKXy5nLnNldD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9ITE7aWYodHlwZW9mIGM9PT0ib2JqZWN0Iil7dmFyIGU9Yy5zYW1lU2l0ZTtkPWMuc2VjdXJlfHwhMTt2YXIgZj1jLmRvbWFpbnx8dm9pZCAwO3ZhciBoPWMucGF0aHx8dm9pZCAwO3ZhciBrPWMudmp9aWYoL1s7PVxzXS8udGVzdChhKSl0aHJvdyBFcnJvcigiRGAiK2EpO2lmKC9bO1xyXG5dLy50ZXN0KGIpKXRocm93IEVycm9yKCJFYCIrYik7az09PXZvaWQgMCYmKGs9LTEpO2M9Zj8iO2RvbWFpbj0iK2Y6IiI7aD1oPyI7cGF0aD0iK2g6IiI7ZD1kPyI7c2VjdXJlIjoiIjtrPWs8MD8iIjprPT0wPyI7ZXhwaXJlcz0iKyhuZXcgRGF0ZSgxOTcwLDEsMSkpLnRvVVRDU3RyaW5nKCk6IjtleHBpcmVzPSIrKG5ldyBEYXRlKERhdGUubm93KCkrayoxRTMpKS50b1VUQ1N0cmluZygpO3RoaXMuai5jb29raWU9YSsiPSIrYitjK2graytkKyhlIT1udWxsPyI7c2FtZXNpdGU9IitlOiIiKX07Cl8uZy5nZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hKyI9IixkPSh0aGlzLmouY29va2llfHwiIikuc3BsaXQoIjsiKTtmb3IobGV0IGU9MCxmO2U8ZC5sZW5ndGg7ZSsrKXtmPWRbZV0udHJpbSgpO2lmKGYubGFzdEluZGV4T2YoYywwKT09MClyZXR1cm4gZi5zbGljZShjLmxlbmd0aCk7aWYoZj09YSlyZXR1cm4iIn1yZXR1cm4gYn07Xy5nLnJlbW92ZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5nZXQoYSkhPT12b2lkIDA7dGhpcy5zZXQoYSwiIix7dmo6MCxwYXRoOmIsZG9tYWluOmN9KTtyZXR1cm4gZH07Xy5nLnJkPWZ1bmN0aW9uKCl7cmV0dXJuIE1kKHRoaXMpLmtleXN9O18uZy5NYz1mdW5jdGlvbigpe3JldHVybiBNZCh0aGlzKS52YWx1ZXN9O18uZy5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIXRoaXMuai5jb29raWV9O18uZy5jbGVhcj1mdW5jdGlvbigpe3ZhciBhPU1kKHRoaXMpLmtleXM7Zm9yKGxldCBiPWEubGVuZ3RoLTE7Yj49MDtiLS0pdGhpcy5yZW1vdmUoYVtiXSl9OwpfLkxqPW5ldyBMZCh0eXBlb2YgZG9jdW1lbnQ9PSJ1bmRlZmluZWQiP251bGw6ZG9jdW1lbnQpO3ZhciBSZDtfLk5yPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dmFyIGM9Y3x8W107dGhpcy52PWE7dGhpcy5vPWJ8fG51bGw7dGhpcy5qPVtdO3RoaXMuaj10aGlzLmouY29uY2F0KGMpfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMudn19O18uT3I9bmV3IF8uTnIoIm43M3F3ZiIsIm43M3F3ZiIpO18uYWUucHJvdG90eXBlLlk9ITE7Xy5hZS5wcm90b3R5cGUuaWE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ZfTtfLmFlLnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5ZfHwodGhpcy5ZPSEwLHRoaXMubGEoKSl9O18uYWUucHJvdG90eXBlW1N5bWJvbC5kaXNwb3NlXT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfTtfLmFlLnByb3RvdHlwZS5hZGRPbkRpc3Bvc2VDYWxsYmFjaz1mdW5jdGlvbihhLGIpe3RoaXMuWT9iIT09dm9pZCAwP2EuY2FsbChiKTphKCk6KHRoaXMuS3x8KHRoaXMuSz1bXSksYiYmKGE9YS5iaW5kKGIpKSx0aGlzLksucHVzaChhKSl9O18uYWUucHJvdG90eXBlLmxhPWZ1bmN0aW9uKCl7aWYodGhpcy5LKWZvcig7dGhpcy5LLmxlbmd0aDspdGhpcy5LLnNoaWZ0KCkoKX07dmE9dmF8fHt9O18uSGEoYmUsXy5hZSk7YmUucHJvdG90eXBlLmluaXRpYWxpemU9ZnVuY3Rpb24oKXt9O2NlLnByb3RvdHlwZS5leGVjdXRlPWZ1bmN0aW9uKGEpe3RoaXMuaiYmKHRoaXMuai5jYWxsKHRoaXMub3x8bnVsbCxhKSx0aGlzLmo9dGhpcy5vPW51bGwpfTtjZS5wcm90b3R5cGUuYWJvcnQ9ZnVuY3Rpb24oKXt0aGlzLm89dGhpcy5qPW51bGx9O3ZhLndrPWNlO18uSGEoZWUsXy5hZSk7Xy5nPWVlLnByb3RvdHlwZTtfLmcuUGo9bnVsbDtfLmcuT3k9YmU7Xy5nLkFqPW51bGw7Xy5nLnN0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuan07Xy5nLmdldElkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuRH07Xy5nLmlzTG9hZGVkPWZ1bmN0aW9uKCl7cmV0dXJuISF0aGlzLkFqfTtfLmcueWU9ZnVuY3Rpb24oKXt0aGlzLkFqPW5ldyBiZX07Xy5nLm9uTG9hZD1mdW5jdGlvbihhKXt2YXIgYj1uZXcgdGhpcy5PeTtiLmluaXRpYWxpemUoYSgpKTt0aGlzLkFqPWI7aWYodGhpcy5vJiYoYj1pZSh0aGlzLm8sYSgpKSkpcmV0dXJuIGI7aWYodGhpcy5CJiYoYT1pZSh0aGlzLkIsYSgpKSkpcmV0dXJuIGE7dGhpcy52JiYodGhpcy52Lmxlbmd0aD0wKTtyZXR1cm4gbnVsbH07Cl8uZy5vbkVycm9yPWZ1bmN0aW9uKGEpe3RoaXMudiYmKGE9aWUodGhpcy52LGEpKSYmXy4kYihFcnJvcigiR2AiK2EpKTt0aGlzLm8mJih0aGlzLm8ubGVuZ3RoPTApO3RoaXMuQiYmKHRoaXMuQi5sZW5ndGg9MCl9O18uZy5sYT1mdW5jdGlvbigpe2VlLnpiLmxhLmNhbGwodGhpcyk7Xy5aZCh0aGlzLkFqKTt0aGlzLlBqPW51bGx9O3ZhLk9nPWVlO3ZhciBRZz17RVJST1I6ImVycm9yIixJRExFOiJpZGxlIixNczoiYWN0aXZlIixpdToidXNlcklkbGUiLGh1OiJ1c2VyQWN0aXZlIn07Xy5nPWplLnByb3RvdHlwZTtfLmcuUnI9ZnVuY3Rpb24oKXt9O18uZy5UaD1mdW5jdGlvbigpe307Xy5nLm5pPWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoIkgiKTt9O18uZy5BZz1mdW5jdGlvbigpe3Rocm93IEVycm9yKCJJIik7fTtfLmcuVnA9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH07Xy5nLmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuITF9O18uZy5GcT1mdW5jdGlvbigpe3JldHVybiExfTtfLmcuZW49ZnVuY3Rpb24oKXt9O18uZy5abj1mdW5jdGlvbigpe307dmFyIFByPWNsYXNze2luaXQoKXtfLkZhKCJfRl9pbnN0YWxsQ3NzIixhPT57YSYma2UoYSl9KX19O3ZhciBtZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuaj17fTt0aGlzLm89IiI7dGhpcy52PXt9fXRvU3RyaW5nKCl7dmFyIGE9dGhpcy5vK3ZlKHRoaXMpLGI9Xy5VYih0aGlzLnYpLGM9IiI7YiE9IiImJihjPSI/IitiKTtyZXR1cm4gYStjfWNsb25lKCl7dmFyIGE9bmV3IG1lO2Euaj17Li4udGhpcy5qfTthLm89dGhpcy5vO2Eudj17Li4udGhpcy52fTtyZXR1cm4gYX19LG5lPXt2RzoiayIsRUM6ImNrIix6RjoibSIsWUM6ImV4bSIsV0M6ImV4Y20iLExCOiJhbSIsUkI6ImFtYyIsbUY6Im1tIix0RzoicnQiLGJGOiJkIixYQzoiZWQiLGlIOiJzdiIsSkM6ImRlb2IiLHNDOiJjYiIsd0M6ImNjYiIsdEM6ImNiaSIsWUc6InJzIixCRzoic2RjaCIsY0Y6ImltIixLQzoiZGciLFVDOiJiciIsVEM6ImJyLWQiLFZDOiJyYiIsSUg6InpzIixFSDoid3QiLFpDOiJlZSIsaEg6InNtIix4RjoibWQiLFhFOiJnc3Ntb2R1bGVzZXRwcm90byIsQ0g6InVqZyIsQkg6InNwIixhRjoiaWNoYyIsWEc6InNsayIsCk1DOiJkdGkiLExDOiJkYndoIixlRjoiaWMifSxRcj1SZWdFeHAoIl4oZ2FwaVxcLik/bG9hZGVkKF9nfF9oKT8oX1swLTlhLXpdKykrJCIpLFJyPVJlZ0V4cCgiXlthLXpBLVowLTktXypdKyQiKTt2YXIgR2U9ITE7Xy55Zz10eXBlb2YgQXN5bmNDb250ZXh0IT09InVuZGVmaW5lZCImJnR5cGVvZiBBc3luY0NvbnRleHQuU25hcHNob3Q9PT0iZnVuY3Rpb24iP2E9PmEmJkFzeW5jQ29udGV4dC5TbmFwc2hvdC53cmFwKGEpOmE9PmE7Xy5KZS5wcm90b3R5cGUuc3RvcFByb3BhZ2F0aW9uPWZ1bmN0aW9uKCl7dGhpcy5vPSEwfTtfLkplLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbigpe3RoaXMuZGVmYXVsdFByZXZlbnRlZD0hMH07Xy5IYShLZSxfLkplKTsKS2UucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLnR5cGU9YS50eXBlLGQ9YS5jaGFuZ2VkVG91Y2hlcyYmYS5jaGFuZ2VkVG91Y2hlcy5sZW5ndGg/YS5jaGFuZ2VkVG91Y2hlc1swXTpudWxsO3RoaXMudGFyZ2V0PWEudGFyZ2V0fHxhLnNyY0VsZW1lbnQ7dGhpcy5jdXJyZW50VGFyZ2V0PWI7Yj1hLnJlbGF0ZWRUYXJnZXQ7Ynx8KGM9PSJtb3VzZW92ZXIiP2I9YS5mcm9tRWxlbWVudDpjPT0ibW91c2VvdXQiJiYoYj1hLnRvRWxlbWVudCkpO3RoaXMucmVsYXRlZFRhcmdldD1iO2Q/KHRoaXMuY2xpZW50WD1kLmNsaWVudFghPT12b2lkIDA/ZC5jbGllbnRYOmQucGFnZVgsdGhpcy5jbGllbnRZPWQuY2xpZW50WSE9PXZvaWQgMD9kLmNsaWVudFk6ZC5wYWdlWSx0aGlzLnNjcmVlblg9ZC5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT1kLnNjcmVlbll8fDApOih0aGlzLm9mZnNldFg9Xy5jcnx8YS5vZmZzZXRYIT09dm9pZCAwP2Eub2Zmc2V0WDphLmxheWVyWCx0aGlzLm9mZnNldFk9Cl8uY3J8fGEub2Zmc2V0WSE9PXZvaWQgMD9hLm9mZnNldFk6YS5sYXllclksdGhpcy5jbGllbnRYPWEuY2xpZW50WCE9PXZvaWQgMD9hLmNsaWVudFg6YS5wYWdlWCx0aGlzLmNsaWVudFk9YS5jbGllbnRZIT09dm9pZCAwP2EuY2xpZW50WTphLnBhZ2VZLHRoaXMuc2NyZWVuWD1hLnNjcmVlblh8fDAsdGhpcy5zY3JlZW5ZPWEuc2NyZWVuWXx8MCk7dGhpcy5idXR0b249YS5idXR0b247dGhpcy5rZXlDb2RlPWEua2V5Q29kZXx8MDt0aGlzLmtleT1hLmtleXx8IiI7dGhpcy5jaGFyQ29kZT1hLmNoYXJDb2RlfHwoYz09ImtleXByZXNzIj9hLmtleUNvZGU6MCk7dGhpcy5jdHJsS2V5PWEuY3RybEtleTt0aGlzLmFsdEtleT1hLmFsdEtleTt0aGlzLnNoaWZ0S2V5PWEuc2hpZnRLZXk7dGhpcy5tZXRhS2V5PWEubWV0YUtleTt0aGlzLnBvaW50ZXJJZD1hLnBvaW50ZXJJZHx8MDt0aGlzLnBvaW50ZXJUeXBlPWEucG9pbnRlclR5cGU7dGhpcy5zdGF0ZT1hLnN0YXRlO3RoaXMudGltZVN0YW1wPQphLnRpbWVTdGFtcDt0aGlzLmo9YTthLmRlZmF1bHRQcmV2ZW50ZWQmJktlLnpiLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyl9O0tlLnByb3RvdHlwZS5zdG9wUHJvcGFnYXRpb249ZnVuY3Rpb24oKXtLZS56Yi5zdG9wUHJvcGFnYXRpb24uY2FsbCh0aGlzKTt0aGlzLmouc3RvcFByb3BhZ2F0aW9uP3RoaXMuai5zdG9wUHJvcGFnYXRpb24oKTp0aGlzLmouY2FuY2VsQnViYmxlPSEwfTtLZS5wcm90b3R5cGUucHJldmVudERlZmF1bHQ9ZnVuY3Rpb24oKXtLZS56Yi5wcmV2ZW50RGVmYXVsdC5jYWxsKHRoaXMpO3ZhciBhPXRoaXMuajthLnByZXZlbnREZWZhdWx0P2EucHJldmVudERlZmF1bHQoKTphLnJldHVyblZhbHVlPSExfTt2YXIgVWU9ImNsb3N1cmVfbGlzdGVuYWJsZV8iKyhNYXRoLnJhbmRvbSgpKjFFNnwwKTt2YXIgTGU9MDtPZS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9YS50b1N0cmluZygpO2E9dGhpcy5saXN0ZW5lcnNbZl07YXx8KGE9dGhpcy5saXN0ZW5lcnNbZl09W10sdGhpcy5qKyspO3ZhciBoPVFlKGEsYixkLGUpO2g+LTE/KGI9YVtoXSxjfHwoYi56aT0hMSkpOihiPW5ldyBNZShiLHRoaXMuc3JjLGYsISFkLGUpLGIuemk9YyxhLnB1c2goYikpO3JldHVybiBifTtPZS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEsYixjLGQpe2E9YS50b1N0cmluZygpO2lmKCEoYSBpbiB0aGlzLmxpc3RlbmVycykpcmV0dXJuITE7dmFyIGU9dGhpcy5saXN0ZW5lcnNbYV07Yj1RZShlLGIsYyxkKTtyZXR1cm4gYj4tMT8oTmUoZVtiXSksQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGUsYiwxKSxlLmxlbmd0aD09MCYmKGRlbGV0ZSB0aGlzLmxpc3RlbmVyc1thXSx0aGlzLmotLSksITApOiExfTt2YXIgWGU9ImNsb3N1cmVfbG1fIisoTWF0aC5yYW5kb20oKSoxRTZ8MCksZWY9e30sJGU9MCxmZj0iX19jbG9zdXJlX2V2ZW50c19mbl8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApO18uSGEoXy5nZixfLmFlKTtfLmdmLnByb3RvdHlwZVtVZV09ITA7Xy5nPV8uZ2YucHJvdG90eXBlO18uZy5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEsYixjLGQpe18uU2UodGhpcyxhLGIsYyxkKX07Xy5nLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5jZih0aGlzLGEsYixjLGQpfTsKXy5nLmRpc3BhdGNoRXZlbnQ9ZnVuY3Rpb24oYSl7dmFyIGIsYz10aGlzLk07aWYoYylmb3IoYj1bXTtjO2M9Yy5NKWIucHVzaChjKTtjPXRoaXMuRmE7dmFyIGQ9YS50eXBlfHxhO2lmKHR5cGVvZiBhPT09InN0cmluZyIpYT1uZXcgXy5KZShhLGMpO2Vsc2UgaWYoYSBpbnN0YW5jZW9mIF8uSmUpYS50YXJnZXQ9YS50YXJnZXR8fGM7ZWxzZXt2YXIgZT1hO2E9bmV3IF8uSmUoZCxjKTtzZChhLGUpfWU9ITA7dmFyIGY7aWYoYilmb3IoZj1iLmxlbmd0aC0xOyFhLm8mJmY+PTA7Zi0tKXt2YXIgaD1hLmN1cnJlbnRUYXJnZXQ9YltmXTtlPWhmKGgsZCwhMCxhKSYmZX1hLm98fChoPWEuY3VycmVudFRhcmdldD1jLGU9aGYoaCxkLCEwLGEpJiZlLGEub3x8KGU9aGYoaCxkLCExLGEpJiZlKSk7aWYoYilmb3IoZj0wOyFhLm8mJmY8Yi5sZW5ndGg7ZisrKWg9YS5jdXJyZW50VGFyZ2V0PWJbZl0sZT1oZihoLGQsITEsYSkmJmU7cmV0dXJuIGV9OwpfLmcubGE9ZnVuY3Rpb24oKXtfLmdmLnpiLmxhLmNhbGwodGhpcyk7dGhpcy5yZW1vdmVBbGxMaXN0ZW5lcnMoKTt0aGlzLk09bnVsbH07Xy5nLmxpc3Rlbj1mdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4gdGhpcy5vLmFkZChTdHJpbmcoYSksYiwhMSxjLGQpfTtfLmcucmVtb3ZlQWxsTGlzdGVuZXJzPWZ1bmN0aW9uKGEpe2lmKHRoaXMubyl7dmFyIGI9dGhpcy5vO2E9YSYmYS50b1N0cmluZygpO2xldCBjPTA7Zm9yKGxldCBkIGluIGIubGlzdGVuZXJzKWlmKCFhfHxkPT1hKXtsZXQgZT1iLmxpc3RlbmVyc1tkXTtmb3IobGV0IGY9MDtmPGUubGVuZ3RoO2YrKykrK2MsTmUoZVtmXSk7ZGVsZXRlIGIubGlzdGVuZXJzW2RdO2Iuai0tfWI9Y31lbHNlIGI9MDtyZXR1cm4gYn07dmFyIGtmPWNsYXNzIGV4dGVuZHMgXy5nZntjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMuRD10aGlzLmo9MDt0aGlzLkRjPWE/P3twYjooYixjKT0+c2V0VGltZW91dChiLGMpLEFhOmI9PntjbGVhclRpbWVvdXQoYil9fTt0aGlzLmlzT25saW5lPXdpbmRvdy5uYXZpZ2F0b3I/Lm9uTGluZT8/ITA7dGhpcy52PWFzeW5jKCk9Pnthd2FpdCBtZih0aGlzKX07d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9mZmxpbmUiLHRoaXMudik7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsdGhpcy52KTt0aGlzLkR8fG5mKHRoaXMpfWRpc3Bvc2UoKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigib2ZmbGluZSIsdGhpcy52KTt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25saW5lIix0aGlzLnYpO3RoaXMuRGMuQWEodGhpcy5EKTtkZWxldGUga2YuaW5zdGFuY2V9U2IoKXtyZXR1cm4gdGhpcy5pc09ubGluZX19O3ZhciBxZj1udWxsLHBmPW5ldyBNYXA7dmFyIFNyPWE9PnthPWEuY2xvbmUoKTtEZShhKTtvZShhLCJkZyIsbnVsbCk7b2UoYSwiZCIsIjAiKTt3ZShhLG51bGwpO3hlKGEsbnVsbCk7cmV0dXJuIGF9LFRyPSEwLFVyPShhLGIse2Nzc1Jvd0tleTpjLEtlOmQsWWQ6ZSxjYWxsYmFjazpmfT17fSk9PntpZihiKWZvcihsZXQgaCBvZiBiKWlmKCFSci50ZXN0KGgpKXRocm93IEVycm9yKCJKYCIraCk7b2UoYSwibSIsYi5qb2luKCIsIikpO2UmJnplKGEsZSk7YyYmKG9lKGEsImNrIixjKSxkP29lKGEsInJzIixkKTpUciYmKFRyPSExKSk7aWYoZil7aWYoZiE9bnVsbCYmIVFyLnRlc3QoZikpdGhyb3cgRXJyb3IoIktgIitmKTtvZShhLCJjYiIsZil9YT1hLnRvU3RyaW5nKCk7YS5sYXN0SW5kZXhPZigiLyIsMCk9PTAmJihiPV8uTWIoZG9jdW1lbnQubG9jYXRpb24uaHJlZiksYT1fLkliKGJbMV0sYlsyXSxiWzNdLGJbNF0pK2EpO3JldHVybiBfLlRhKGEpfSxuZz0oYSxiLHtsbjpjPVtdLGNzc1Jvd0tleTpkLEtlOmUsWWQ6ZixjYWxsYmFjazpofT0Ke30pPT57YT1TcihhKTt4ZShhLGMpO3JldHVybiBVcihhLGIse2Nzc1Jvd0tleTpkLEtlOmUsWWQ6ZixjYWxsYmFjazpofSl9LG1nPShhLGIse21uOmM9W10sbG46ZD1bXSxjc3NSb3dLZXk6ZSxLZTpmLFlkOmgsY2FsbGJhY2s6a309e30pPT57YT1TcihhKTtvZShhLCJkIiwiMSIpO3dlKGEsYyk7eGUoYSxkKTtyZXR1cm4gVXIoYSxiLHtjc3NSb3dLZXk6ZSxLZTpmLFlkOmgsY2FsbGJhY2s6a30pfTt2YXIgVnI9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLnY9YTt0aGlzLkI9Yjt0aGlzLm89MDt0aGlzLmo9bnVsbH1nZXQoKXtpZih0aGlzLm8+MCl7dGhpcy5vLS07dmFyIGE9dGhpcy5qO3RoaXMuaj1hLm5leHQ7YS5uZXh0PW51bGx9ZWxzZSBhPXRoaXMudigpO3JldHVybiBhfX07dmFyIFdyPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5vPXRoaXMuaj1udWxsfWFkZChhLGIpe3ZhciBjPXZmLmdldCgpO2Muc2V0KGEsYik7dGhpcy5vP3RoaXMuby5uZXh0PWM6dGhpcy5qPWM7dGhpcy5vPWN9cmVtb3ZlKCl7dmFyIGE9bnVsbDt0aGlzLmomJihhPXRoaXMuaix0aGlzLmo9dGhpcy5qLm5leHQsdGhpcy5qfHwodGhpcy5vPW51bGwpLGEubmV4dD1udWxsKTtyZXR1cm4gYX19LHZmPW5ldyBWcigoKT0+bmV3IFhyLGE9PmEucmVzZXQoKSksWHI9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm5leHQ9dGhpcy5zY29wZT10aGlzLmZuPW51bGx9c2V0KGEsYil7dGhpcy5mbj1hO3RoaXMuc2NvcGU9Yjt0aGlzLm5leHQ9bnVsbH1yZXNldCgpe3RoaXMubmV4dD10aGlzLnNjb3BlPXRoaXMuZm49bnVsbH19O3ZhciBZcix3Zj0hMSx1Zj1uZXcgV3IsR2Y9KGEsYik9PntZcnx8WnIoKTt3Znx8KFlyKCksd2Y9ITApO3VmLmFkZChhLGIpfSxacj0oKT0+e3ZhciBhPVByb21pc2UucmVzb2x2ZSh2b2lkIDApO1lyPSgpPT57YS50aGVuKHhmKX19O0NmLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuY29udGV4dD10aGlzLmo9dGhpcy5vPXRoaXMuY2hpbGQ9bnVsbDt0aGlzLnY9ITF9O3ZhciBEZj1uZXcgVnIoZnVuY3Rpb24oKXtyZXR1cm4gbmV3IENmfSxmdW5jdGlvbihhKXthLnJlc2V0KCl9KTtfLkJmLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gUWYodGhpcywoMCxfLnlnKSh0eXBlb2YgYT09PSJmdW5jdGlvbiI/YTpudWxsKSwoMCxfLnlnKSh0eXBlb2YgYj09PSJmdW5jdGlvbiI/YjpudWxsKSxjKX07Xy55ZihfLkJmKTtfLmc9Xy5CZi5wcm90b3R5cGU7Xy5nLmZpbmFsbHk9ZnVuY3Rpb24oYSl7YT0oMCxfLnlnKShhKTtyZXR1cm4gbmV3IF8uQmYoKGIsYyk9PntLZih0aGlzLGQ9PnthKCk7YihkKX0sZD0+e2EoKTtjKGQpfSl9KX07Xy5nLktnPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFFmKHRoaXMsbnVsbCwoMCxfLnlnKShhKSxiKX07Xy5nLmNhdGNoPV8uQmYucHJvdG90eXBlLktnOwpfLmcuY2FuY2VsPWZ1bmN0aW9uKGEpe2lmKHRoaXMuaj09MCl7bGV0IGI9bmV3IF8uUGYoYSk7R2YoZnVuY3Rpb24oKXtMZih0aGlzLGIpfSx0aGlzKX19O18uZy5uQj1mdW5jdGlvbihhKXt0aGlzLmo9MDtfLkFmKHRoaXMsMixhKX07Xy5nLm9CPWZ1bmN0aW9uKGEpe3RoaXMuaj0wO18uQWYodGhpcywzLGEpfTtfLmcudHQ9ZnVuY3Rpb24oKXtmb3IodmFyIGE7YT1NZih0aGlzKTspTmYodGhpcyxhLHRoaXMuaix0aGlzLkkpO3RoaXMuSz0hMX07Xy5VZj1fLiRiO18uSGEoXy5QZixfLkxhKTtfLlBmLnByb3RvdHlwZS5uYW1lPSJjYW5jZWwiO18uSGEoWGYsXy5MYSk7WGYucHJvdG90eXBlLm5hbWU9IlhockVycm9yIjtfLkhhKFlmLFhmKTtZZi5wcm90b3R5cGUubmFtZT0iWGhySHR0cEVycm9yIjtfLkhhKFpmLFhmKTtaZi5wcm90b3R5cGUubmFtZT0iWGhyVGltZW91dEVycm9yIjtfLmRoPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjLGQ9ITEsZT0hMSl7dGhpcy5ZPXFlKF8uVWEoYSkudG9TdHJpbmcoKSwhMCk7dGhpcy5GYT1iO3RoaXMueWE9Yzt0aGlzLkQ9ZDt0aGlzLkI9e307dGhpcy5NPW5ldyBNYXA7dGhpcy5aPVtdO3RoaXMub2E9ITA7dGhpcy5oYT0oYT10ZSh0aGlzLlksImV4Y20iKSk/YS5zcGxpdCgiLCIpOltdO3RoaXMuVmQ9ZTt0aGlzLmZpPSExO3RoaXMuV2c9ImFub255bW91cyI7dGhpcy5kaT00MDQzO3RoaXMuZ2E9ZG9jdW1lbnQuaGVhZHx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O3RoaXMudj10aGlzLkk9bnVsbDt0aGlzLkViPSEwO0hlKCk7dGhpcy5YPW51bGw7Xy5hZyh0aGlzLHllKHRoaXMuWSkpO3RoaXMuZmV0Y2hQcmlvcml0eT12b2lkIDA7dGhpcy5NYT0hMTt0aGlzLlUoKX1hc3luYyBRYSgpe3Rocm93IEVycm9yKCJUIik7fVUoKXt9bG9hZChhLGIsYyxkLGU9Yil7Xy5VYShhKTt2YXIgZj10aGlzLmZpLGg9dGhpcy5XZyxrPXRoaXMuZmV0Y2hQcmlvcml0eSwKbD1fLkNkKCJTQ1JJUFQiKTtfLm9iKGwsYSk7ZiYmKGwuY3Jvc3NPcmlnaW49aCk7bC5hc3luYz0hMTtrJiZsLnNldEF0dHJpYnV0ZSgiZmV0Y2hwcmlvcml0eSIsayk7Xy5hZyh0aGlzLGIpO18ucGcodGhpcyxhLGwsYixjLGQsZSl9fTt2YXIgcWc9bmV3IFVpbnQ4QXJyYXkoMTIzKSxLZz0hMTt2YXIgTGc9W107Xy5nPXRnLnByb3RvdHlwZTtfLmcuY2FuY2VsPWZ1bmN0aW9uKGEpe2lmKHRoaXMuail0aGlzLnYgaW5zdGFuY2VvZiB0ZyYmdGhpcy52LmNhbmNlbCgpO2Vsc2V7aWYodGhpcy5vKXtsZXQgYj10aGlzLm87ZGVsZXRlIHRoaXMubzthP2IuY2FuY2VsKGEpOihiLlktLSxiLlk8PTAmJmIuY2FuY2VsKCkpfXRoaXMuWj90aGlzLlouY2FsbCh0aGlzLlUsdGhpcyk6dGhpcy5NPSEwO3RoaXMuanx8KGE9bmV3IEZnKHRoaXMpLHhnKHRoaXMpLHZnKHRoaXMsITEsYSkpfX07Xy5nLnNwPWZ1bmN0aW9uKGEsYil7dGhpcy5JPSExO3ZnKHRoaXMsYSxiKX07Xy5nLmNhbGxiYWNrPWZ1bmN0aW9uKGEpe3hnKHRoaXMpO3ZnKHRoaXMsITAsYSl9O18uZy5maW5hbGx5PWZ1bmN0aW9uKGEpe3JldHVybiBFZyhuZXcgUHJvbWlzZSgoYixjKT0+e3pnKHRoaXMsZD0+e2EoKTtiKGQpfSxkPT57YSgpO2MoZCl9KX0pKX07Cl8uZy50aGVuPWZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlLGY9bmV3IF8uQmYoZnVuY3Rpb24oaCxrKXtlPWg7ZD1rfSk7emcodGhpcyxlLGZ1bmN0aW9uKGgpe2ggaW5zdGFuY2VvZiBGZz9mLmNhbmNlbCgpOmQoaCk7cmV0dXJuIENnfSx0aGlzKTtyZXR1cm4gZi50aGVuKGEsYixjKX07Xy55Zih0Zyk7dGcucHJvdG90eXBlLmlzRXJyb3I9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBFcnJvcn07dmFyIENnPXt9O18uSGEod2csXy5MYSk7d2cucHJvdG90eXBlLm1lc3NhZ2U9IkRlZmVycmVkIGhhcyBhbHJlYWR5IGZpcmVkIjt3Zy5wcm90b3R5cGUubmFtZT0iQWxyZWFkeUNhbGxlZEVycm9yIjtfLkhhKEZnLF8uTGEpO0ZnLnByb3RvdHlwZS5tZXNzYWdlPSJEZWZlcnJlZCB3YXMgY2FuY2VsZWQiO0ZnLnByb3RvdHlwZS5uYW1lPSJDYW5jZWxlZEVycm9yIjsKRGcucHJvdG90eXBlLnRocm93RXJyb3I9ZnVuY3Rpb24oKXtkZWxldGUgQmdbdGhpcy5qXTt0aHJvdyB0aGlzLm87fTt2YXIgQmc9e307dmFyIEdnPWNsYXNzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoYSxiLGMsZCxlKXtzdXBlcigpO3RoaXMubmFtZT0iTW9kdWxlTG9hZEZhaWx1cmUiO3RoaXMudHlwZT1hO3RoaXMuc3RhdHVzPWI7dGhpcy5tbj1jO3RoaXMudXJsPWQ7dGhpcy5jYXVzZT1lO3RoaXMubWVzc2FnZT10aGlzLnRvU3RyaW5nKCl9dG9TdHJpbmcoKXtyZXR1cm5gJHtIZyh0aGlzKX0gKCR7dGhpcy5zdGF0dXMhPXZvaWQgMD90aGlzLnN0YXR1czoiPyJ9KWB9fTt2YS5vYj1HZzt2YS5vYi5UeXBlPXtwbzowLHBrOjEsVElNRU9VVDoyLGhvOjMsdWs6NH07Xy5IYShJZyxqZSk7Xy5IYShKZyxfLkxhKTtfLmc9SWcucHJvdG90eXBlO18uZy5Scj1mdW5jdGlvbihhKXt0aGlzLm9hPWF9OwpfLmcuVGg9ZnVuY3Rpb24oYSxiKXtpZighKHRoaXMgaW5zdGFuY2VvZiBJZykpdGhpcy5UaChhLGIpO2Vsc2UgaWYodHlwZW9mIGE9PT0ic3RyaW5nIil7aWYoYS5zdGFydHNXaXRoKCJkJCIpKXthPWEuc3Vic3RyaW5nKDIpO2Zvcih2YXIgYz1bXSxkPTAsZT1hLmluZGV4T2YoIi8iKSxmPTAsaD0hMSxrPTA7Oyl7dmFyIGw9aD9hLnN1YnN0cmluZyhmKTphLnN1YnN0cmluZyhmLGUpO2lmKGwubGVuZ3RoPT09MClkKyssZj0ic3kiK2QudG9TdHJpbmcoMzYpLGw9W107ZWxzZXt2YXIgbT1sLmluZGV4T2YoIjoiKTtpZihtPDApZj1sLGw9W107ZWxzZSBpZihtPT09bC5sZW5ndGgtMSlmPWwuc3Vic3RyaW5nKDAsbSksbD1BcnJheShjW2stMV0pO2Vsc2V7Zj1sLnN1YnN0cmluZygwLG0pO2w9bC5zdWJzdHJpbmcobSsxKS5zcGxpdCgiLCIpO209aztmb3IobGV0IG49MDtuPGwubGVuZ3RoO24rKyltLT1sW25dLmxlbmd0aD09PTA/MTpOdW1iZXIobFtuXSksbFtuXT1jW21dfW09MDtpZihmLmxlbmd0aD09PQowKW09MTtlbHNlIGlmKGYuY2hhckF0KDApPT09IisifHxmLmNoYXJBdCgwKT09PSItIiltPU51bWJlcihmKTttIT09MCYmKGQrPW0sZj0ic3kiK2QudG9TdHJpbmcoMzYpKX1jLnB1c2goZik7TmcodGhpcyxmLGwpO2lmKGgpYnJlYWs7Zj1lKzE7ZT1hLmluZGV4T2YoIi8iLGYpO2U9PT0tMSYmKGg9ITApO2srK310aGlzLmhhPWN9ZWxzZSBpZihhLnN0YXJ0c1dpdGgoInAkIikpT2codGhpcyxhKTtlbHNle2E9YS5zcGxpdCgiLyIpO2M9W107Zm9yKGQ9MDtkPGEubGVuZ3RoO2QrKyl7az1hW2RdLnNwbGl0KCI6Iik7ZT1rWzBdO2g9W107aWYoa1sxXSlmb3IoaD1rWzFdLnNwbGl0KCIsIiksaz0wO2s8aC5sZW5ndGg7aysrKWhba109Y1twYXJzZUludChoW2tdLDM2KV07Yy5wdXNoKGUpO05nKHRoaXMsZSxoKX10aGlzLmhhPWN9aWYoYiYmYi5sZW5ndGgpe2ZvcihsZXQgbiBvZiBiKXRoaXMuQi5hZGQobik7dGhpcy55YT1iW2IubGVuZ3RoLTFdfWVsc2UgdGhpcy5nYS5qfHx0aGlzLmdhLmNhbGxiYWNrKCk7Ck9iamVjdC5mcmVlemUodGhpcy5oYSk7dGhpcy5vPT10aGlzLlomJih0aGlzLm89bnVsbCwoYj10aGlzLloub25Mb2FkKCgwLF8uQ2EpKHRoaXMuVnAsdGhpcykpKSYmYi5sZW5ndGgmJlpnKHRoaXMsbmV3IHZhLm9iKHZhLm9iLlR5cGUudWssdm9pZCAwLHZvaWQgMCx2b2lkIDAsYlswXSkpLFJnKHRoaXMpKX19O18uZy5MYT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5ELmdldChhKX07Xy5nLm5pPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5MYShhKTtjJiZjLmlzTG9hZGVkKCk/dGhpcy5sb2FkKGIpOnRoaXMuaiBpbnN0YW5jZW9mIE1hcD8oYz10aGlzLmouZ2V0KGEpLGN8fChjPW5ldyBTZXQsdGhpcy5qLnNldChhLGMpKSxjLmFkZChiKSk6KHRoaXMualthXXx8KHRoaXMualthXT17fSksdGhpcy5qW2FdW2JdPSEwKX07Cl8uZy5BZz1mdW5jdGlvbihhLGIpe2lmKHRoaXMuaiBpbnN0YW5jZW9mIE1hcCl7dmFyIGM9dGhpcy5qLmdldChhKTtjJiYoYy5kZWxldGUoYiksYy5zaXplPT09MCYmdGhpcy5qLmRlbGV0ZShhKSl9ZWxzZSBpZih0aGlzLmpbYV0pe2RlbGV0ZSB0aGlzLmpbYV1bYl07Zm9yKGMgaW4gdGhpcy5qW2FdKXJldHVybjtkZWxldGUgdGhpcy5qW2FdfX07Xy5nLmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuQi5zaXplPjB9O18uZy5GcT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkkuc2l6ZT4wfTsKXy5nLnNqPWZ1bmN0aW9uKGEsYj0wLGMpe3ZhciBkPVlnKHRoaXMsYSk7dGhpcy5CPW5ldyBTZXQoZCk7dGhpcy5LPXRoaXMub2E/YTpfLnliKGQpO1JnKHRoaXMpO2lmKGQubGVuZ3RoIT09MCl7Zm9yKGxldCBlIG9mIGQpdGhpcy5VLmFkZChlKTthPXRoaXMuWTtpZighYSl0aHJvdyBFcnJvcigiViIpO2lmKCh0aGlzLmogaW5zdGFuY2VvZiBNYXA/dGhpcy5qLnNpemU+MDpPYmplY3Qua2V5cyh0aGlzLmopLmxlbmd0aD4wKSYmIWEuRWIpdGhyb3cgRXJyb3IoIlciKTtmZyhhLF8ueWIoZCksdGhpcy5ELHtZZDp0aGlzLmosb25FcnJvcjooZSxmLGgpPT5iaCh0aGlzLHRoaXMuSyxkLGUhPW51bGw/ZTp2b2lkIDAsZixiLCEhaCksb25UaW1lb3V0OigwLF8uQ2EpKHRoaXMud3csdGhpcyksZm9yY2VSZWxvYWQ6ISFjfSl9fTt2YXIgV2c9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWE7dGhpcy5vPW5ldyBTZXQ7dGhpcy5yZXN1bHQ9W119fTtfLmc9SWcucHJvdG90eXBlOwpfLmcueWU9ZnVuY3Rpb24oKXtpZih0aGlzLm8pe3ZhciBhPXRoaXMuby5nZXRJZCgpLGI9W107aWYodGhpcy5qIGluc3RhbmNlb2YgTWFwKXt2YXIgYz10aGlzLmouZ2V0KGEpO2lmKGMpe2Zvcih2YXIgZCBvZiBBcnJheS5mcm9tKGMpKShjPXRoaXMuTGEoZCkpJiYhYy5pc0xvYWRlZCgpJiYodGhpcy5BZyhhLGQpLGIucHVzaChkKSk7dGhpcy5hZihiKX19ZWxzZSBpZih0aGlzLmpbYV0pe2ZvcihjIG9mIE9iamVjdC5rZXlzKHRoaXMualthXSkpKGQ9dGhpcy5MYShjKSkmJiFkLmlzTG9hZGVkKCkmJih0aGlzLkFnKGEsYyksYi5wdXNoKGMpKTt0aGlzLmFmKGIpfXRoaXMuaWEoKXx8KChiPXRoaXMuRC5nZXQoYSkub25Mb2FkKCgwLF8uQ2EpKHRoaXMuVnAsdGhpcykpKSYmYi5sZW5ndGgmJlpnKHRoaXMsbmV3IHZhLm9iKHZhLm9iLlR5cGUudWssdm9pZCAwLHZvaWQgMCx2b2lkIDAsYlswXSkpLHRoaXMuSS5kZWxldGUoYSksdGhpcy5CLmRlbGV0ZShhKSx0aGlzLkIuc2l6ZSE9PTB8fAphaCh0aGlzKSx0aGlzLnlhJiZhPT10aGlzLnlhJiYodGhpcy5nYS5qfHx0aGlzLmdhLmNhbGxiYWNrKCkpLFJnKHRoaXMpLHRoaXMubz1udWxsKX19O18uZy51aD1mdW5jdGlvbihhKXtpZih0aGlzLkIuaGFzKGEpKXJldHVybiEwO2ZvcihsZXQgYj0wO2I8dGhpcy52Lmxlbmd0aDtiKyspaWYoXy5zYih0aGlzLnZbYl0sYSk+PTApcmV0dXJuITA7cmV0dXJuITF9O18uZy5sb2FkPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFRnKHRoaXMsW2FdLGIpW2FdfTtfLmcuYWY9ZnVuY3Rpb24oYSl7cmV0dXJuIFRnKHRoaXMsYSl9OwpfLmcuUm89ZnVuY3Rpb24oYSl7dGhpcy5vJiZ0aGlzLm8uZ2V0SWQoKT09PSJzeW50aGV0aWNfbW9kdWxlX292ZXJoZWFkIj8odGhpcy55ZSgpLHRoaXMuRC5kZWxldGUoInN5bnRoZXRpY19tb2R1bGVfb3ZlcmhlYWQiKSk6dGhpcy5vJiZ0aGlzLm8uZ2V0SWQoKTt2YXIgYj10aGlzLkQuZ2V0KGEpO2ImJmNoKHRoaXMsYi5qfHxbXSxjPT57Yy55ZSgpO3RoaXMuQi5kZWxldGUoYy5nZXRJZCgpKX0sYz0+IWMuaXNMb2FkZWQoKSxuZXcgU2V0KTtpZih0aGlzLm89dGhpcy5MYShhKSl0aGlzLm8uST0hMH07Xy5nLmVuPWZ1bmN0aW9uKGEpe2lmKCF0aGlzLm8pe2xldCBiPW5ldyB2YS5PZyhbXSwic3ludGhldGljX21vZHVsZV9vdmVyaGVhZCIpO3RoaXMuRC5zZXQoInN5bnRoZXRpY19tb2R1bGVfb3ZlcmhlYWQiLGIpO3RoaXMubz1ifWZlKHRoaXMubyxhKX07Xy5nLnd3PWZ1bmN0aW9uKCl7Wy4uLnRoaXMuQl07JGcodGhpcyxuZXcgdmEub2IodmEub2IuVHlwZS5USU1FT1VUKSk7YWgodGhpcyl9OwpfLmcuWm49ZnVuY3Rpb24oYSxiKXtBcnJheS5pc0FycmF5KGEpfHwoYT1bYV0pO2ZvcihsZXQgZT0wO2U8YS5sZW5ndGg7ZSsrKXt2YXIgYz1hW2VdLGQ9YjtsZXQgZj10aGlzLk0uZ2V0KGMpO2Y/Zi5wdXNoKGQpOnRoaXMuTS5zZXQoYyxbZF0pfX07Xy5nLmRpc3Bvc2U9ZnVuY3Rpb24oKXtfLiRkKEFycmF5LmZyb20odGhpcy5ELnZhbHVlcygpKSx0aGlzLlopO3RoaXMuRC5jbGVhcigpO3RoaXMuQi5jbGVhcigpO3RoaXMuSz1bXTt0aGlzLkkuY2xlYXIoKTt0aGlzLnY9W107dGhpcy5NLmNsZWFyKCk7dGhpcy5GYT0hMH07Xy5nLmlhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuRmF9O18uVGQ9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IElnfTt2YXIgbWg9WzVFMywyRTRdLCRyPWNsYXNzIGV4dGVuZHMgamV7Y29uc3RydWN0b3IoKXtzdXBlcigpO3RoaXMudj1uZXcgTWFwO3RoaXMuRD1PYmplY3QuY3JlYXRlKG51bGwpO3RoaXMuQj0wO3RoaXMuSz1bXTt0aGlzLmo9QWU/bmV3IE1hcDpPYmplY3QuY3JlYXRlKG51bGwpO3RoaXMubz10aGlzLkxhKCJ7YmFzZX0iKX1UaCgpe3RoaXMubyYmdGhpcy5vLmdldElkKCk9PSJ7YmFzZX0iJiZ0aGlzLnllKCl9TGEoYSl7dmFyIGI9dGhpcy52LmdldChhKTtifHwoYj1uZXcgdmEuT2coW10sYSksdGhpcy52LnNldChhLGIpKTtyZXR1cm4gYn1uaShhLGIpe2lmKHRoaXMuTGEoYSkuaXNMb2FkZWQoKSl0aGlzLmxvYWQoYik7ZWxzZSBpZih0aGlzLmogaW5zdGFuY2VvZiBNYXApe2xldCBjPXRoaXMuai5nZXQoYSk7Y3x8KGM9bmV3IFNldCx0aGlzLmouc2V0KGEsYykpO2MuYWRkKGIpfWVsc2UgdGhpcy5qW2FdfHwodGhpcy5qW2FdPXt9KSx0aGlzLmpbYV1bYl09ITB9QWcoYSxiKXtpZih0aGlzLmogaW5zdGFuY2VvZgpNYXApe3ZhciBjPXRoaXMuai5nZXQoYSk7YyYmKGMuZGVsZXRlKGIpLGMuc2l6ZT09PTAmJnRoaXMuai5kZWxldGUoYSkpfWVsc2UgaWYodGhpcy5qW2FdKXtkZWxldGUgdGhpcy5qW2FdW2JdO2ZvcihjIGluIHRoaXMualthXSlyZXR1cm47ZGVsZXRlIHRoaXMualthXX19dWgoYSl7cmV0dXJuISF0aGlzLkRbYV19bG9hZChhKXtpaCh0aGlzLFthXSk7cmV0dXJuIGpoKHRoaXMsYSl9YWYoYSl7dmFyIGI9T2JqZWN0LmNyZWF0ZShudWxsKSxjPVtdO2EuZm9yRWFjaChkPT57YltkXXx8KGJbZF09amgodGhpcyxkKSxjLnB1c2goZCkpfSk7aWgodGhpcyxjKTtyZXR1cm4gYn1SbyhhKXt0aGlzLm8/LmdldElkKCk9PT0ic3ludGhldGljX21vZHVsZV9vdmVyaGVhZCImJnRoaXMueWUoKTt2YXIgYj10aGlzLnYuZ2V0KGEpO2toKHRoaXMsYj8uc3QoKT8/W10sYz0+Yy55ZSgpLGM9PiFjLmlzTG9hZGVkKCkpO3RoaXMubz10aGlzLkxhKGEpfXllKCl7aWYodGhpcy5vKXt2YXIgYT10aGlzLm8uZ2V0SWQoKSwKYj1bXTtpZih0aGlzLmogaW5zdGFuY2VvZiBNYXApe3ZhciBjPXRoaXMuai5nZXQoYSk7aWYoYyl7Zm9yKGxldCBkIG9mIEFycmF5LmZyb20oYykpdGhpcy5MYShkKS5pc0xvYWRlZCgpfHwodGhpcy5BZyhhLGQpLGIucHVzaChkKSk7dGhpcy5hZihiKX19ZWxzZSBpZih0aGlzLmpbYV0pe2ZvcihjIG9mIE9iamVjdC5rZXlzKHRoaXMualthXSkpdGhpcy5MYShjKS5pc0xvYWRlZCgpfHwodGhpcy5BZyhhLGMpLGIucHVzaChjKSk7dGhpcy5hZihiKX10aGlzLm8ub25Mb2FkKCgpPT5udWxsKTt0aGlzLm89bnVsbDsoIXRoaXMudWgoYSkmJi9ec3lbMC05YS16XXswLDR9JC8udGVzdChhKXx8YT09PSJzeW50aGV0aWNfbW9kdWxlX292ZXJoZWFkIikmJnRoaXMudi5kZWxldGUoYSk7bGgodGhpcyxhKX19ZW4oYSl7aWYoIXRoaXMubyl7bGV0IGI9bmV3IHZhLk9nKFtdLCJzeW50aGV0aWNfbW9kdWxlX292ZXJoZWFkIik7dGhpcy52LnNldCgic3ludGhldGljX21vZHVsZV9vdmVyaGVhZCIsCmIpO3RoaXMubz1ifWZlKHRoaXMubyxhKX19O3ZhciBraj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuZGF0YT1bXTt0aGlzLmo9LTF9c2V0KGEsYj0hMCl7MDw9YSYmYTw1MiYmTnVtYmVyLmlzSW50ZWdlcihhKSYmdGhpcy5kYXRhW2FdIT09YiYmKHRoaXMuZGF0YVthXT1iLHRoaXMuaj0tMSl9Z2V0KGEpe3JldHVybiEhdGhpcy5kYXRhW2FdfX07Xy5vaC5wcm90b3R5cGUubmV4dD1mdW5jdGlvbigpe3JldHVybiBfLmFzfTtfLmFzPXtkb25lOiEwLHZhbHVlOnZvaWQgMH07Xy5vaC5wcm90b3R5cGUuYmQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307dmFyIHBoPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMubz1hfWJkKCl7cmV0dXJuIG5ldyBxaCh0aGlzLm8oKSl9W1N5bWJvbC5pdGVyYXRvcl0oKXtyZXR1cm4gbmV3IHJoKHRoaXMubygpKX1qKCl7cmV0dXJuIG5ldyByaCh0aGlzLm8oKSl9fSxxaD1jbGFzcyBleHRlbmRzIF8ub2h7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLm89YX1uZXh0KCl7cmV0dXJuIHRoaXMuby5uZXh0KCl9W1N5bWJvbC5pdGVyYXRvcl0oKXtyZXR1cm4gbmV3IHJoKHRoaXMubyl9aigpe3JldHVybiBuZXcgcmgodGhpcy5vKX19LHJoPWNsYXNzIGV4dGVuZHMgcGh7Y29uc3RydWN0b3IoYSl7c3VwZXIoKCk9PmEpO3RoaXMudj1hfW5leHQoKXtyZXR1cm4gdGhpcy52Lm5leHQoKX19O3ZhciBicz1fLnUuSlNPTi5zdHJpbmdpZnk7Xy5jcz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMucHJvbWlzZT1uZXcgUHJvbWlzZSgoYSxiKT0+e3RoaXMucmVzb2x2ZT1hO3RoaXMucmVqZWN0PWJ9KX19O18uSGEoXy50aCxfLmFlKTtfLmc9Xy50aC5wcm90b3R5cGU7Xy5nLnN1YnNjcmliZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5vW2FdO2R8fChkPXRoaXMub1thXT1bXSk7dmFyIGU9dGhpcy5EO3RoaXMualtlXT1hO3RoaXMualtlKzFdPWI7dGhpcy5qW2UrMl09Yzt0aGlzLkQ9ZSszO2QucHVzaChlKTtyZXR1cm4gZX07Xy5nLnVuc3Vic2NyaWJlPWZ1bmN0aW9uKGEsYixjKXtpZihhPXRoaXMub1thXSl7bGV0IGQ9dGhpcy5qO2lmKGE9YS5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiBkW2UrMV09PWImJmRbZSsyXT09Y30pKXJldHVybiB0aGlzLmNpKGEpfXJldHVybiExfTtfLmcuY2k9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5qW2FdO2lmKGIpe2xldCBjPXRoaXMub1tiXTt0aGlzLkIhPTA/KHRoaXMudi5wdXNoKGEpLHRoaXMualthKzFdPSgpPT57fSk6KGMmJl8ueGIoYyxhKSxkZWxldGUgdGhpcy5qW2FdLGRlbGV0ZSB0aGlzLmpbYSsxXSxkZWxldGUgdGhpcy5qW2ErMl0pfXJldHVybiEhYn07Cl8uZy5wdWJsaXNoPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5vW2FdO2lmKGMpe2xldCBlPUFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMSk7dmFyIGQ9YXJndW1lbnRzLmxlbmd0aDtsZXQgZjtmb3IoZj0xO2Y8ZDtmKyspZVtmLTFdPWFyZ3VtZW50c1tmXTtpZih0aGlzLkkpZm9yKGY9MDtmPGMubGVuZ3RoO2YrKylkPWNbZl0sdWgodGhpcy5qW2QrMV0sdGhpcy5qW2QrMl0sZSk7ZWxzZXt0aGlzLkIrKzt0cnl7Zm9yKGY9MCxkPWMubGVuZ3RoO2Y8ZCYmIXRoaXMuaWEoKTtmKyspe2xldCBoPWNbZl07dGhpcy5qW2grMV0uYXBwbHkodGhpcy5qW2grMl0sZSl9fWZpbmFsbHl7aWYodGhpcy5CLS0sdGhpcy52Lmxlbmd0aD4wJiZ0aGlzLkI9PTApZm9yKDtjPXRoaXMudi5wb3AoKTspdGhpcy5jaShjKX19cmV0dXJuIGYhPTB9cmV0dXJuITF9OwpfLmcuY2xlYXI9ZnVuY3Rpb24oYSl7aWYoYSl7bGV0IGI9dGhpcy5vW2FdO2ImJihiLmZvckVhY2godGhpcy5jaSx0aGlzKSxkZWxldGUgdGhpcy5vW2FdKX1lbHNlIHRoaXMuai5sZW5ndGg9MCx0aGlzLm89e319O18uZy5sYT1mdW5jdGlvbigpe18udGguemIubGEuY2FsbCh0aGlzKTt0aGlzLmNsZWFyKCk7dGhpcy52Lmxlbmd0aD0wfTt2aC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7Yj09PXZvaWQgMD90aGlzLmoucmVtb3ZlKGEpOnRoaXMuai5zZXQoYSxicyhiKSl9O3ZoLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oYSl7dHJ5e3ZhciBiPXRoaXMuai5nZXQoYSl9Y2F0Y2goYyl7cmV0dXJufWlmKGIhPT1udWxsKXRyeXtyZXR1cm4gSlNPTi5wYXJzZShiKX1jYXRjaChjKXt0aHJvdyJTdG9yYWdlOiBJbnZhbGlkIHZhbHVlIHdhcyBlbmNvdW50ZXJlZCI7fX07dmgucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihhKXt0aGlzLmoucmVtb3ZlKGEpfTtfLkhhKHdoLHZoKTt3aC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7d2guemIuc2V0LmNhbGwodGhpcyxhLHloKGIpKX07d2gucHJvdG90eXBlLm89ZnVuY3Rpb24oYSl7YT13aC56Yi5nZXQuY2FsbCh0aGlzLGEpO2lmKGE9PT12b2lkIDB8fGEgaW5zdGFuY2VvZiBPYmplY3QpcmV0dXJuIGE7dGhyb3ciU3RvcmFnZTogSW52YWxpZCB2YWx1ZSB3YXMgZW5jb3VudGVyZWQiO307d2gucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtpZihhPXRoaXMubyhhKSl7aWYoYT1hLmRhdGEsYT09PXZvaWQgMCl0aHJvdyJTdG9yYWdlOiBJbnZhbGlkIHZhbHVlIHdhcyBlbmNvdW50ZXJlZCI7fWVsc2UgYT12b2lkIDA7cmV0dXJuIGF9O18uSGEoXy56aCx3aCk7Xy56aC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYixjKXtpZihiPXloKGIpKXtpZihjKXtpZihjPF8uRWEoKSl7Xy56aC5wcm90b3R5cGUucmVtb3ZlLmNhbGwodGhpcyxhKTtyZXR1cm59Yi5leHBpcmF0aW9uPWN9Yi5jcmVhdGlvbj1fLkVhKCl9Xy56aC56Yi5zZXQuY2FsbCh0aGlzLGEsYil9O18uemgucHJvdG90eXBlLm89ZnVuY3Rpb24oYSl7dmFyIGI9Xy56aC56Yi5vLmNhbGwodGhpcyxhKTtpZihiKXtsZXQgYz1iLmNyZWF0aW9uLGQ9Yi5leHBpcmF0aW9uO2lmKGQmJmQ8Xy5FYSgpfHxjJiZjPl8uRWEoKSlfLnpoLnByb3RvdHlwZS5yZW1vdmUuY2FsbCh0aGlzLGEpO2Vsc2UgcmV0dXJuIGJ9fTtfLkhhKEJoLEFoKTtCaC5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiBfLnNoKHRoaXMuYmQoITApKS5qKCl9O0JoLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3ZhciBhPUFycmF5LmZyb20odGhpcyk7Zm9yKGxldCBiIG9mIGEpdGhpcy5yZW1vdmUoYil9O18uSGEoQ2gsQmgpO18uZz1DaC5wcm90b3R5cGU7Xy5nLmlzQXZhaWxhYmxlPWZ1bmN0aW9uKCl7aWYodGhpcy5vPT09bnVsbCl7dmFyIGE9dGhpcy5qO2lmKGEpdHJ5e2Euc2V0SXRlbSgiX19zYWsiLCIxIik7YS5yZW1vdmVJdGVtKCJfX3NhayIpO3ZhciBiPSEwfWNhdGNoKGMpe2I9YyBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiYmKGMubmFtZT09PSJRdW90YUV4Y2VlZGVkRXJyb3IifHxjLmNvZGU9PT0yMnx8Yy5jb2RlPT09MTAxNHx8Yy5uYW1lPT09Ik5TX0VSUk9SX0RPTV9RVU9UQV9SRUFDSEVEIikmJmEmJmEubGVuZ3RoIT09MH1lbHNlIGI9ITE7dGhpcy5vPWJ9cmV0dXJuIHRoaXMub307Cl8uZy5zZXQ9ZnVuY3Rpb24oYSxiKXtEaCh0aGlzKTt0cnl7dGhpcy5qLnNldEl0ZW0oYSxiKX1jYXRjaChjKXtpZih0aGlzLmoubGVuZ3RoPT0wKXRocm93IlN0b3JhZ2UgbWVjaGFuaXNtOiBTdG9yYWdlIGRpc2FibGVkIjt0aHJvdyJTdG9yYWdlIG1lY2hhbmlzbTogUXVvdGEgZXhjZWVkZWQiO319O18uZy5nZXQ9ZnVuY3Rpb24oYSl7RGgodGhpcyk7YT10aGlzLmouZ2V0SXRlbShhKTtpZih0eXBlb2YgYSE9PSJzdHJpbmciJiZhIT09bnVsbCl0aHJvdyJTdG9yYWdlIG1lY2hhbmlzbTogSW52YWxpZCB2YWx1ZSB3YXMgZW5jb3VudGVyZWQiO3JldHVybiBhfTtfLmcucmVtb3ZlPWZ1bmN0aW9uKGEpe0RoKHRoaXMpO3RoaXMuai5yZW1vdmVJdGVtKGEpfTsKXy5nLmJkPWZ1bmN0aW9uKGEpe0RoKHRoaXMpO3ZhciBiPTAsYz10aGlzLmosZD1uZXcgXy5vaDtkLm5leHQ9ZnVuY3Rpb24oKXtpZihiPj1jLmxlbmd0aClyZXR1cm4gXy5hczt2YXIgZT1jLmtleShiKyspO2lmKGEpcmV0dXJue3ZhbHVlOmUsZG9uZTohMX07ZT1jLmdldEl0ZW0oZSk7aWYodHlwZW9mIGUhPT0ic3RyaW5nIil0aHJvdyJTdG9yYWdlIG1lY2hhbmlzbTogSW52YWxpZCB2YWx1ZSB3YXMgZW5jb3VudGVyZWQiO3JldHVybnt2YWx1ZTplLGRvbmU6ITF9fTtyZXR1cm4gZH07Xy5nLmNsZWFyPWZ1bmN0aW9uKCl7RGgodGhpcyk7dGhpcy5qLmNsZWFyKCl9O18uZy5rZXk9ZnVuY3Rpb24oYSl7RGgodGhpcyk7cmV0dXJuIHRoaXMuai5rZXkoYSl9O18uSGEoRWgsQ2gpO18uSGEoRmgsQmgpO0ZoLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLm8uc2V0KHRoaXMuaithLGIpfTtGaC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm8uZ2V0KHRoaXMuaithKX07RmgucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihhKXt0aGlzLm8ucmVtb3ZlKHRoaXMuaithKX07RmgucHJvdG90eXBlLmJkPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMub1tTeW1ib2wuaXRlcmF0b3JdKCksYz10aGlzLGQ9bmV3IF8ub2g7ZC5uZXh0PWZ1bmN0aW9uKCl7dmFyIGU9Yi5uZXh0KCk7aWYoZS5kb25lKXJldHVybiBlO2ZvcihlPWUudmFsdWU7ZS5zbGljZSgwLGMuai5sZW5ndGgpIT1jLmo7KXtlPWIubmV4dCgpO2lmKGUuZG9uZSlyZXR1cm4gZTtlPWUudmFsdWV9cmV0dXJue3ZhbHVlOmE/ZS5zbGljZShjLmoubGVuZ3RoKTpjLm8uZ2V0KGUpLGRvbmU6ITF9fTtyZXR1cm4gZH07dmFyIEhoPXt9LGRzPXR5cGVvZiBVaW50OEFycmF5IT09InVuZGVmaW5lZCImJnR5cGVvZiBVaW50MTZBcnJheSE9PSJ1bmRlZmluZWQiJiZ0eXBlb2YgSW50MzJBcnJheSE9PSJ1bmRlZmluZWQiO0hoLmFzc2lnbj1mdW5jdGlvbihhKXtmb3IodmFyIGI9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpO2IubGVuZ3RoOyl7dmFyIGM9Yi5zaGlmdCgpO2lmKGMpe2lmKHR5cGVvZiBjIT09Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiYmFgIitjKTtmb3IodmFyIGQgaW4gYylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYyxkKSYmKGFbZF09Y1tkXSl9fXJldHVybiBhfTtIaC53bj1mdW5jdGlvbihhLGIpe2lmKGEubGVuZ3RoPT09YilyZXR1cm4gYTtpZihhLnN1YmFycmF5KXJldHVybiBhLnN1YmFycmF5KDAsYik7YS5sZW5ndGg9YjtyZXR1cm4gYX07CnZhciBlcz17d2Y6ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihiLnN1YmFycmF5JiZhLnN1YmFycmF5KWEuc2V0KGIuc3ViYXJyYXkoYyxjK2QpLGUpO2Vsc2UgZm9yKHZhciBmPTA7ZjxkO2YrKylhW2UrZl09YltjK2ZdfSxNcDpmdW5jdGlvbihhKXt2YXIgYixjO3ZhciBkPWM9MDtmb3IoYj1hLmxlbmd0aDtkPGI7ZCsrKWMrPWFbZF0ubGVuZ3RoO3ZhciBlPW5ldyBVaW50OEFycmF5KGMpO2Q9Yz0wO2ZvcihiPWEubGVuZ3RoO2Q8YjtkKyspe3ZhciBmPWFbZF07ZS5zZXQoZixjKTtjKz1mLmxlbmd0aH1yZXR1cm4gZX19LGdzPXt3ZjpmdW5jdGlvbihhLGIsYyxkLGUpe2Zvcih2YXIgZj0wO2Y8ZDtmKyspYVtlK2ZdPWJbYytmXX0sTXA6ZnVuY3Rpb24oYSl7cmV0dXJuW10uY29uY2F0LmFwcGx5KFtdLGEpfX07CkhoLmpBPWZ1bmN0aW9uKCl7ZHM/KEhoLnRmPVVpbnQ4QXJyYXksSGguWWM9VWludDE2QXJyYXksSGguUXM9SW50MzJBcnJheSxIaC5hc3NpZ24oSGgsZXMpKTooSGgudGY9QXJyYXksSGguWWM9QXJyYXksSGguUXM9QXJyYXksSGguYXNzaWduKEhoLGdzKSl9O0hoLmpBKCk7dmFyIGhzPSEwO3RyeXtuZXcgVWludDhBcnJheSgxKX1jYXRjaChhKXtocz0hMX07dmFyIHRpPXt9O3RpPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEmNjU1MzV8MDthPWE+Pj4xNiY2NTUzNXwwO2Zvcih2YXIgZjtjIT09MDspe2Y9Yz4yRTM/MkUzOmM7Yy09ZjtkbyBlPWUrYltkKytdfDAsYT1hK2V8MDt3aGlsZSgtLWYpO2UlPTY1NTIxO2ElPTY1NTIxfXJldHVybiBlfGE8PDE2fDB9O2Zvcih2YXIgdWk9e30saXMsanM9W10sa3M9MDtrczwyNTY7a3MrKyl7aXM9a3M7Zm9yKHZhciBscz0wO2xzPDg7bHMrKylpcz1pcyYxPzM5ODgyOTIzODReaXM+Pj4xOmlzPj4+MTtqc1trc109aXN9dWk9ZnVuY3Rpb24oYSxiLGMsZCl7Yz1kK2M7Zm9yKGFePS0xO2Q8YztkKyspYT1hPj4+OF5qc1soYV5iW2RdKSYyNTVdO3JldHVybiBhXi0xfTt2YXIgaWk9e307aWk9ezI6Im5lZWQgZGljdGlvbmFyeSIsMToic3RyZWFtIGVuZCIsMDoiIiwiLTEiOiJmaWxlIGVycm9yIiwiLTIiOiJzdHJlYW0gZXJyb3IiLCItMyI6ImRhdGEgZXJyb3IiLCItNCI6Imluc3VmZmljaWVudCBtZW1vcnkiLCItNSI6ImJ1ZmZlciBlcnJvciIsIi02IjoiaW5jb21wYXRpYmxlIHZlcnNpb24ifTt2YXIgWGg9WzAsMCwwLDAsMCwwLDAsMCwxLDEsMSwxLDIsMiwyLDIsMywzLDMsMyw0LDQsNCw0LDUsNSw1LDUsMF0sJGg9WzAsMCwwLDAsMSwxLDIsMiwzLDMsNCw0LDUsNSw2LDYsNyw3LDgsOCw5LDksMTAsMTAsMTEsMTEsMTIsMTIsMTMsMTNdLEtpPVswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDIsMyw3XSxtaT1bMTYsMTcsMTgsMCw4LDcsOSw2LDEwLDUsMTEsNCwxMiwzLDEzLDIsMTQsMSwxNV0sbmk9QXJyYXkoNTc2KTtKaChuaSk7dmFyIG9pPUFycmF5KDYwKTtKaChvaSk7dmFyIFpoPUFycmF5KDUxMik7SmgoWmgpO3ZhciBXaD1BcnJheSgyNTYpO0poKFdoKTt2YXIgWWg9QXJyYXkoMjkpO0poKFloKTt2YXIgYmk9QXJyYXkoMzApO0poKGJpKTt2YXIgSGksSWksSmksR2k9ITE7dmFyIENpOwpDaT1bbmV3IEFpKDAsMCwwLDAsZnVuY3Rpb24oYSxiKXt2YXIgYz02NTUzNTtmb3IoYz5hLm5jLTUmJihjPWEubmMtNSk7Oyl7aWYoYS5kYTw9MSl7dmkoYSk7aWYoYS5kYT09PTAmJmI9PT0wKXJldHVybiAxO2lmKGEuZGE9PT0wKWJyZWFrfWEuVis9YS5kYTthLmRhPTA7dmFyIGQ9YS5VYitjO2lmKGEuVj09PTB8fGEuVj49ZClpZihhLmRhPWEuVi1kLGEuVj1kLHBpKGEsITEpLGEud2EuemE9PT0wKXJldHVybiAxO2lmKGEuVi1hLlViPj1hLkJiLTI2MiYmKHBpKGEsITEpLGEud2EuemE9PT0wKSlyZXR1cm4gMX1hLnJiPTA7aWYoYj09PTQpcmV0dXJuIHBpKGEsITApLGEud2EuemE9PT0wPzM6NDthLlY+YS5VYiYmcGkoYSwhMSk7cmV0dXJuIDF9KSxuZXcgQWkoNCw0LDgsNCx3aSksbmV3IEFpKDQsNSwxNiw4LHdpKSxuZXcgQWkoNCw2LDMyLDMyLHdpKSxuZXcgQWkoNCw0LDE2LDE2LHhpKSxuZXcgQWkoOCwxNiwzMiwzMix4aSksbmV3IEFpKDgsMTYsMTI4LDEyOCx4aSksbmV3IEFpKDgsCjMyLDEyOCwyNTYseGkpLG5ldyBBaSgzMiwxMjgsMjU4LDEwMjQseGkpLG5ldyBBaSgzMiwyNTgsMjU4LDQwOTYseGkpXTt2YXIgRmk9e307Rmk9ZnVuY3Rpb24oKXt0aGlzLmlucHV0PW51bGw7dGhpcy5xZj10aGlzLkRiPXRoaXMuZmY9MDt0aGlzLm91dHB1dD1udWxsO3RoaXMuRW49dGhpcy56YT10aGlzLnFnPTA7dGhpcy5tc2c9IiI7dGhpcy5zdGF0ZT1udWxsO3RoaXMuaWw9Mjt0aGlzLnNhPTB9O3ZhciBMaT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nOwpFaS5wcm90b3R5cGUucHVzaD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMud2EsZD10aGlzLm9wdGlvbnMuY2h1bmtTaXplO2lmKHRoaXMuZW5kZWQpcmV0dXJuITE7dmFyIGU9Yj09PX5+Yj9iOmI9PT0hMD80OjA7dHlwZW9mIGE9PT0ic3RyaW5nIj9jLmlucHV0PUloKGEpOkxpLmNhbGwoYSk9PT0iW29iamVjdCBBcnJheUJ1ZmZlcl0iP2MuaW5wdXQ9bmV3IFVpbnQ4QXJyYXkoYSk6Yy5pbnB1dD1hO2MuZmY9MDtjLkRiPWMuaW5wdXQubGVuZ3RoO2Rve2MuemE9PT0wJiYoYy5vdXRwdXQ9bmV3IEhoLnRmKGQpLGMucWc9MCxjLnphPWQpO2E9RGkoYyxlKTtpZihhIT09MSYmYSE9PTApcmV0dXJuIE1pKHRoaXMsYSksdGhpcy5lbmRlZD0hMCwhMTtpZihjLnphPT09MHx8Yy5EYj09PTAmJihlPT09NHx8ZT09PTIpKWlmKHRoaXMub3B0aW9ucy50bz09PSJzdHJpbmciKXt2YXIgZj1IaC53bihjLm91dHB1dCxjLnFnKTtiPWY7Zj1mLmxlbmd0aDtpZihmPDY1NTM3JiYoYi5zdWJhcnJheSYmCmhzfHwhYi5zdWJhcnJheSkpYj1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsSGgud24oYixmKSk7ZWxzZXtmb3IodmFyIGg9IiIsaz0wO2s8ZjtrKyspaCs9U3RyaW5nLmZyb21DaGFyQ29kZShiW2tdKTtiPWh9dGhpcy5jaHVua3MucHVzaChiKX1lbHNlIGI9SGgud24oYy5vdXRwdXQsYy5xZyksdGhpcy5jaHVua3MucHVzaChiKX13aGlsZSgoYy5EYj4wfHxjLnphPT09MCkmJmEhPT0xKTtpZihlPT09NClyZXR1cm4oYz10aGlzLndhKSYmYy5zdGF0ZT8oZD1jLnN0YXRlLnN0YXR1cyxkIT09NDImJmQhPT02OSYmZCE9PTczJiZkIT09OTEmJmQhPT0xMDMmJmQhPT0xMTMmJmQhPT02NjY/YT1qaShjLC0yKTooYy5zdGF0ZT1udWxsLGE9ZD09PTExMz9qaShjLC0zKTowKSk6YT0tMixNaSh0aGlzLGEpLHRoaXMuZW5kZWQ9ITAsYT09PTA7ZT09PTImJihNaSh0aGlzLDApLGMuemE9MCk7cmV0dXJuITB9O18uST1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm5hbWU9YX19O3ZhciB4cD1uZXcgXy5JKCJyYXdDb2xkQ29uZmlnR3JvdXAiKTt2YXIgd3A9bmV3IF8uSSgicmF3SG90Q29uZmlnR3JvdXAiKTt2YXIgbXM7bXM9Xy51LndpbmRvdztfLlBpPW1zPy55dD8uY29uZmlnX3x8bXM/Lnl0Y2ZnPy5kYXRhX3x8e307Xy5yYSgieXQuY29uZmlnXyIsXy5QaSk7dmFyIFNpPVtdO3ZhciBnaj0vXltcdy5dKiQvLCRpPXtxOiEwLHNlYXJjaF9xdWVyeTohMH0sWmk9U3RyaW5nKFlpKTt2YXIgaGo9bmV3IGNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5qPWE7dGhpcy5vPWJ9fSh3aW5kb3csd2luZG93LmRvY3VtZW50KTtfLnJhKCJ5dC5hZHNfLnNpZ25hbHNfLmdldEFkU2lnbmFsc1N0cmluZyIsZnVuY3Rpb24oYSl7cmV0dXJuIGFqKF8ubGooYSkpfSk7Xy5FYSgpO25hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiIChDcktleSAiKTt2YXIgcXM7cXM9MDtfLnJzPV8uY3I/IndlYmtpdCI6YnI/Im1veiI6YXI/Im1zIjokcT8ibyI6IiI7Xy5yYSgieXREb21Eb21HZXROZXh0SWQiLF8uc2EoInl0RG9tRG9tR2V0TmV4dElkIil8fCgoKT0+KytxcykpO18uc3M9Xy51Lnl0RXZlbnRzRXZlbnRzTGlzdGVuZXJzfHx7fTtfLnJhKCJ5dEV2ZW50c0V2ZW50c0xpc3RlbmVycyIsXy5zcyk7Xy50cz1fLnUueXRFdmVudHNFdmVudHNDb3VudGVyfHx7Y291bnQ6MH07Xy5yYSgieXRFdmVudHNFdmVudHNDb3VudGVyIixfLnRzKTtfLnVzPWhkKGZ1bmN0aW9uKCl7dmFyIGE9ITE7dHJ5e2xldCBiPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwiY2FwdHVyZSIse2dldDpmdW5jdGlvbigpe2E9ITB9fSk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLG51bGwsYil9Y2F0Y2goYil7fXJldHVybiBhfSk7dmFyIHZzO3ZzPXdpbmRvdztfLmVsPXZzLnl0Y3NpJiZ2cy55dGNzaS5ub3c/dnMueXRjc2kubm93OnZzLnBlcmZvcm1hbmNlJiZ2cy5wZXJmb3JtYW5jZS50aW1pbmcmJnZzLnBlcmZvcm1hbmNlLm5vdyYmdnMucGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydD8oKT0+dnMucGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydCt2cy5wZXJmb3JtYW5jZS5ub3coKTooKT0+KG5ldyBEYXRlKS5nZXRUaW1lKCk7dmFyIG5qPSJYTUxIdHRwUmVxdWVzdCJpbiBfLnU/KCk9Pm5ldyBYTUxIdHRwUmVxdWVzdDpudWxsO3ZhciB3cz0iYWJzb2x1dGVfZXhwZXJpbWVudHMgY2xpZW50X2Rldl9kb21haW4gY2xpZW50X2Rldl9leHBmbGFnIGNsaWVudF9kZXZfcmVnZXhfbWFwIGNsaWVudF9kZXZfcm9vdF91cmwgY2xpZW50X3JvbGxvdXRfb3ZlcnJpZGUgZXhwZmxhZyBmb3JjZWRDYXBhYmlsaXR5IGpzZmVhdCBqc21vZGUgbW9kcyB0aGVtZSIuc3BsaXQoIiAiKTtbLi4ud3NdO3ZhciB5aj17QXV0aG9yaXphdGlvbjoiQVVUSE9SSVpBVElPTiIsIlgtR29vZy1FT00tVmlzaXRvci1JZCI6IkVPTV9WSVNJVE9SX0RBVEEiLCJYLUdvb2ctVmlzaXRvci1JZCI6IlNBTkRCT1hFRF9WSVNJVE9SX0lEIiwiWC1Zb3V0dWJlLURvbWFpbi1BZG1pbi1TdGF0ZSI6IkRPTUFJTl9BRE1JTl9TVEFURSIsIlgtWW91dHViZS1DaHJvbWUtQ29ubmVjdGVkIjoiQ0hST01FX0NPTk5FQ1RFRF9IRUFERVIiLCJYLVlvdVR1YmUtQ2xpZW50LU5hbWUiOiJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsIlgtWW91VHViZS1DbGllbnQtVmVyc2lvbiI6IklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9WRVJTSU9OIiwiWC1Zb3VUdWJlLURlbGVnYXRpb24tQ29udGV4dCI6IklOTkVSVFVCRV9DT05URVhUX1NFUklBTElaRURfREVMRUdBVElPTl9DT05URVhUIiwiWC1Zb3VUdWJlLURldmljZSI6IkRFVklDRSIsIlgtWW91dHViZS1JZGVudGl0eS1Ub2tlbiI6IklEX1RPS0VOIiwiWC1Zb3VUdWJlLVBhZ2UtQ0wiOiJQQUdFX0NMIiwKIlgtWW91VHViZS1QYWdlLUxhYmVsIjoiUEFHRV9CVUlMRF9MQUJFTCIsIlgtR29vZy1BdXRoVXNlciI6IlNFU1NJT05fSU5ERVgiLCJYLUdvb2ctUGFnZUlkIjoiREVMRUdBVEVEX1NFU1NJT05fSUQifSxLaj1bImFwcCIsImRlYnVnY3NzIiwiZGVidWdqcyIsImV4cGZsYWciLCJmb3JjZV9hZF9wYXJhbXMiLCJmb3JjZV9hZF9lbmNyeXB0ZWQiLCJmb3JjZV92aXJhbF9hZF9yZXNwb25zZV9wYXJhbXMiLCJmb3JjZWRfZXhwZXJpbWVudHMiLCJpbm5lcnR1YmVfc25hcHNob3RzIiwiaW5uZXJ0dWJlX2dvbGRlbnMiLCJpbnRlcm5hbGNvdW50cnljb2RlIiwiaW50ZXJuYWxpcG92ZXJyaWRlIiwiYWJzb2x1dGVfZXhwZXJpbWVudHMiLCJjb25kaXRpb25hbF9leHBlcmltZW50cyIsInNiYiIsInNyX2Juc19hZGRyZXNzIiwuLi53c10sR2o9ITEsRGo9eGo7Xy5ubT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuem49ITB9fTtfLnhzPV8uc2EoInl0Z2xvYmFsLnByZWZzVXNlclByZWZzUHJlZnNfIil8fHt9O18ucmEoInl0Z2xvYmFsLnByZWZzVXNlclByZWZzUHJlZnNfIixfLnhzKTt2YXIgUmo9e2JsdWV0b290aDoiQ09OTl9ESVNDTyIsY2VsbHVsYXI6IkNPTk5fQ0VMTFVMQVJfVU5LTk9XTiIsZXRoZXJuZXQ6IkNPTk5fV0lGSSIsbm9uZToiQ09OTl9OT05FIix3aWZpOiJDT05OX1dJRkkiLHdpbWF4OiJDT05OX0NFTExVTEFSXzRHIixvdGhlcjoiQ09OTl9VTktOT1dOIix1bmtub3duOiJDT05OX1VOS05PV04iLCJzbG93LTJnIjoiQ09OTl9DRUxMVUxBUl8yRyIsIjJnIjoiQ09OTl9DRUxMVUxBUl8yRyIsIjNnIjoiQ09OTl9DRUxMVUxBUl8zRyIsIjRnIjoiQ09OTl9DRUxMVUxBUl80RyJ9LFRqPXsic2xvdy0yZyI6IkVGRkVDVElWRV9DT05ORUNUSU9OX1RZUEVfU0xPV18yRyIsIjJnIjoiRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV8yRyIsIjNnIjoiRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV8zRyIsIjRnIjoiRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV80RyJ9O18uWGo9Y2xhc3MgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihhLC4uLmIpe3N1cGVyKGEpO3RoaXMuYXJncz1bLi4uYl07T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsbmV3LnRhcmdldC5wcm90b3R5cGUpfX07dmFyIHlzPWNsYXNze3BiKGEsYil7cmV0dXJuIHRoaXMuR2EoYSwxLGIpfVUoYSl7dmFyIGI9Xy5zYSgieXQuc2NoZWR1bGVyLmluc3RhbmNlLmFkZEltbWVkaWF0ZUpvYiIpO2I/YihhKTphKCl9fTt2YXIgenM9MUUzLzYwLEFzPV8uc2ooIndlYl9lbXVsYXRlZF9pZGxlX2NhbGxiYWNrX2RlbGF5IiwzMDApLGdrPXpzLTMsZGs9WzgsNSw0LDMsMiwxLDBdLGprPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhPXt9KXtzdXBlcigpO3RoaXMubz1bXTt0aGlzLnY9e307dGhpcy5vYT10aGlzLmo9MDt0aGlzLnBhdXNlZD10aGlzLkQ9ITE7dGhpcy5nYT1bXTt0aGlzLmhhPXRoaXMueWE9ITE7Zm9yKGxldCBiIG9mIGRrKXRoaXMub1tiXT1bXTt0aGlzLkI9MDt0aGlzLmV5PWEudGltZW91dHx8MTt0aGlzLk09Z2s7dGhpcy5JPTA7dGhpcy5NYT10aGlzLml5LmJpbmQodGhpcyk7dGhpcy5neD10aGlzLnp5LmJpbmQodGhpcyk7dGhpcy5mYz10aGlzLkViLmJpbmQodGhpcyk7dGhpcy5WZD10aGlzLmh5LmJpbmQodGhpcyk7dGhpcy5GbD10aGlzLlFhLmJpbmQodGhpcyk7dGhpcy51dz0oKT0+e3RoaXMuUWEocGVyZm9ybWFuY2Uubm93KCkpfTt0aGlzLkZhPSEhd2luZG93LnJlcXVlc3RJZGxlQ2FsbGJhY2smJgohIXdpbmRvdy5jYW5jZWxJZGxlQ2FsbGJhY2smJiFfLngoImRpc2FibGVfc2NoZWR1bGVyX3JlcXVlc3RJZGxlQ2FsbGJhY2siKTsoKHRoaXMuWj1hLnVzZVJhZiE9PSExJiYhIXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUpfHxfLngoImVuYWJsZV9zY2hlZHVsZXJfc2ltdWxhdGVfcmFmIikpJiZkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLk1hKX1VKGEpe3ZhciBiPV8uRWEoKTtaaih0aGlzLGEpO2E9Xy5FYSgpLWI7dGhpcy5EfHwodGhpcy5NLT1hKX1HYShhLGIsYyl7Kyt0aGlzLm9hO2lmKGI9PT0xMClyZXR1cm4gdGhpcy5VKGEpLHRoaXMub2E7dmFyIGQ9dGhpcy5vYTt0aGlzLnZbZF09YTt0aGlzLkQmJiFjP3RoaXMuZ2EucHVzaCh7aWQ6ZCxwcmlvcml0eTpifSk6KHRoaXMub1tiXS5wdXNoKGQpLHRoaXMucGF1c2VkfHx0aGlzLkR8fCh0aGlzLmohPT0wJiZiayh0aGlzKSE9PXRoaXMuSSYmdGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKSk7CnJldHVybiBkfUFhKGEpe2RlbGV0ZSB0aGlzLnZbYV19aXNIaWRkZW4oKXtyZXR1cm4hIWRvY3VtZW50LmhpZGRlbnx8ITF9SmIoYSl7dmFyIGI9Xy5zYSgieXQubG9nZ2luZy5lcnJvcnMubG9nIik7YiYmYihhKX1oeShhKXt2YXIgYj12b2lkIDA7YSYmKGI9YS50aW1lUmVtYWluaW5nKCkpO3RoaXMueWE9ITA7aGsodGhpcyxiKTt0aGlzLnlhPSExfXp5KCl7aGsodGhpcyl9RWIoKXtpayh0aGlzKX1RYShhKXt0aGlzLmhhPSEwO3ZhciBiPWJrKHRoaXMpO2I9PT00JiZiIT09dGhpcy5JJiYodGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKTtoayh0aGlzLHZvaWQgMCxhKTt0aGlzLmhhPSExfWl5KCl7dGhpcy5pc0hpZGRlbigpfHxpayh0aGlzKTt0aGlzLmomJih0aGlzLnN0b3AoKSx0aGlzLnN0YXJ0KCkpfXJlcXVlc3RJZGxlQ2FsbGJhY2soYSl7cmV0dXJuIHRoaXMuRmE/d2luZG93LnJlcXVlc3RJZGxlQ2FsbGJhY2soYSx7dGltZW91dDozRTN9KTp3aW5kb3cuc2V0VGltZW91dChhLApBcyl9Y2FuY2VsSWRsZUNhbGxiYWNrKGEpe3RoaXMuRmE/d2luZG93LmNhbmNlbElkbGVDYWxsYmFjayhhKTp3aW5kb3cuY2xlYXJUaW1lb3V0KGEpfXN0YXJ0KCl7dGhpcy5wYXVzZWQ9ITE7aWYodGhpcy5qPT09MClzd2l0Y2godGhpcy5JPWJrKHRoaXMpLHRoaXMuSSl7Y2FzZSAxOnRoaXMuaj10aGlzLnJlcXVlc3RJZGxlQ2FsbGJhY2sodGhpcy5WZCk7YnJlYWs7Y2FzZSAyOnRoaXMuaj13aW5kb3cuc2V0VGltZW91dCh0aGlzLmd4LHRoaXMuZXkpO2JyZWFrO2Nhc2UgMzp0aGlzLmo9d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSh0aGlzLkZsKTticmVhaztjYXNlIDQ6dGhpcy5qPXdpbmRvdy5zZXRUaW1lb3V0KHRoaXMuZmMsMCk7YnJlYWs7Y2FzZSA1OnRoaXMuaj13aW5kb3cuc2V0VGltZW91dCh0aGlzLnV3LHpzKX19cGF1c2UoKXt0aGlzLnN0b3AoKTt0aGlzLnBhdXNlZD0hMH1zdG9wKCl7aWYodGhpcy5qKXtzd2l0Y2godGhpcy5JKXtjYXNlIDE6dGhpcy5jYW5jZWxJZGxlQ2FsbGJhY2sodGhpcy5qKTsKYnJlYWs7Y2FzZSA1OmNhc2UgMjpjYXNlIDQ6d2luZG93LmNsZWFyVGltZW91dCh0aGlzLmopO2JyZWFrO2Nhc2UgMzp3aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5qKX10aGlzLmo9MH19bGEoKXtjayh0aGlzKTt0aGlzLnN0b3AoKTsodGhpcy5afHxfLngoImVuYWJsZV9zY2hlZHVsZXJfc2ltdWxhdGVfcmFmIikpJiZkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLk1hKTtzdXBlci5sYSgpfX07dmFyIG5rPV8uc2EoInl0LnNjaGVkdWxlci5pbnN0YW5jZS50aW1lcklkTWFwXyIpfHx7fSx1az1fLnNqKCJrZXZsYXJfdHVuZXJfc2NoZWR1bGVyX3NvZnRfc3RhdGVfdGltZXJfbXMiLDgwMCksdGs9MCx3az0wO3ZhciBCaztCaz1jbGFzcyBleHRlbmRzIHlze0dhKGEsYixjKXtjIT09dm9pZCAwJiZOdW1iZXIuaXNOYU4oTnVtYmVyKGMpKSYmKGM9dm9pZCAwKTt2YXIgZD1fLnNhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuYWRkSm9iIik7cmV0dXJuIGQ/ZChhLGIsYyk6Yz09PXZvaWQgMD8oYSgpLE5hTik6Xy5taihhLGN8fDApfUFhKGEpe2lmKGE9PT12b2lkIDB8fCFOdW1iZXIuaXNOYU4oTnVtYmVyKGEpKSl7dmFyIGI9Xy5zYSgieXQuc2NoZWR1bGVyLmluc3RhbmNlLmNhbmNlbEpvYiIpO2I/YihhKTp3aW5kb3cuY2xlYXJUaW1lb3V0KGEpfX1zdGFydCgpe3ZhciBhPV8uc2EoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5zdGFydCIpO2EmJmEoKX1wYXVzZSgpe3ZhciBhPV8uc2EoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5wYXVzZSIpO2EmJmEoKX19O18uamY9Xy5DaygpOwpfLnNhKCJ5dC5zY2hlZHVsZXIuaW5pdGlhbGl6ZWQiKXx8KF8ucmEoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5kaXNwb3NlIixtayksXy5yYSgieXQuc2NoZWR1bGVyLmluc3RhbmNlLmFkZEpvYiIsb2spLF8ucmEoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5hZGRJbW1lZGlhdGVKb2IiLHBrKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuY2FuY2VsSm9iIixxayksXy5yYSgieXQuc2NoZWR1bGVyLmluc3RhbmNlLmNhbmNlbEFsbEpvYnMiLGxrKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2Uuc3RhcnQiLHJrKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UucGF1c2UiLHZrKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2Uuc2V0UHJpb3JpdHlUaHJlc2hvbGQiLHhrKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuZW5hYmxlUHJpb3JpdHlUaHJlc2hvbGQiLHprKSxfLnJhKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuY2xlYXJQcmlvcml0eVRocmVzaG9sZCIsQWspLF8ucmEoInl0LnNjaGVkdWxlci5pbml0aWFsaXplZCIsCiEwKSk7Xy5lbj1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9KGE9Xy5HaChhKSk/bmV3IF8uemgoYSk6bnVsbDt0aGlzLnY9ZG9jdW1lbnQuZG9tYWlufHx3aW5kb3cubG9jYXRpb24uaG9zdG5hbWV9bygpe3JldHVybiEhdGhpcy5qfXNldChhLGIsYyxkKXtjPWN8fDMxMTA0RTM7dGhpcy5yZW1vdmUoYSk7aWYodGhpcy5vKCkpdHJ5e3RoaXMuai5zZXQoYSxiLERhdGUubm93KCkrYyoxRTMpO3JldHVybn1jYXRjaChmKXt9dmFyIGU9IiI7aWYoZCl0cnl7ZT1lc2NhcGUoYnMoYikpfWNhdGNoKGYpe3JldHVybn1lbHNlIGU9ZXNjYXBlKGIpO18uTWooYSxlLGMsdGhpcy52KX1nZXQoYSxiKXt2YXIgYz12b2lkIDAsZD0hdGhpcy5vKCk7aWYoIWQpdHJ5e2M9dGhpcy5qLmdldChhKX1jYXRjaChlKXtkPSEwfWlmKGQmJihjPV8uTGouZ2V0KGEsdm9pZCAwKSkmJihjPXVuZXNjYXBlKGMpLGIpKXRyeXtjPUpTT04ucGFyc2UoYyl9Y2F0Y2goZSl7dGhpcy5yZW1vdmUoYSksYz12b2lkIDB9cmV0dXJuIGN9cmVtb3ZlKGEpe3RoaXMubygpJiYKdGhpcy5qLnJlbW92ZShhKTtfLk5qKGEsIi8iLHRoaXMudil9fTt2YXIgRGs9KCgpPT57dmFyIGE7cmV0dXJuKCk9PnthfHwoYT1uZXcgXy5lbigieXRpZGIiKSk7cmV0dXJuIGF9fSkoKTt2YXIgRms7Xy5Iaz1bXTtGaz0hMTtfLklsPV8uaHJ8fF8uaXI7dmFyIEJzPXtBVVRIX0lOVkFMSUQ6Ik5vIHVzZXIgaWRlbnRpZmllciBzcGVjaWZpZWQuIixFWFBMSUNJVF9BQk9SVDoiVHJhbnNhY3Rpb24gd2FzIGV4cGxpY2l0bHkgYWJvcnRlZC4iLElEQl9OT1RfU1VQUE9SVEVEOiJJbmRleGVkREIgaXMgbm90IHN1cHBvcnRlZC4iLE1JU1NJTkdfSU5ERVg6IkluZGV4IG5vdCBjcmVhdGVkLiIsTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiJPYmplY3Qgc3RvcmVzIG5vdCBjcmVhdGVkLiIsREJfREVMRVRFRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6IkRhdGFiYXNlIGlzIGRlbGV0ZWQgYmVjYXVzZSBleHBlY3RlZCBvYmplY3Qgc3RvcmVzIHdlcmUgbm90IGNyZWF0ZWQuIixEQl9SRU9QRU5FRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6IkRhdGFiYXNlIGlzIHJlb3BlbmVkIGJlY2F1c2UgZXhwZWN0ZWQgb2JqZWN0IHN0b3JlcyB3ZXJlIG5vdCBjcmVhdGVkLiIsVU5LTk9XTl9BQk9SVDoiVHJhbnNhY3Rpb24gd2FzIGFib3J0ZWQgZm9yIHVua25vd24gcmVhc29ucy4iLApRVU9UQV9FWENFRURFRDoiVGhlIGN1cnJlbnQgdHJhbnNhY3Rpb24gZXhjZWVkZWQgaXRzIHF1b3RhIGxpbWl0YXRpb25zLiIsUVVPVEFfTUFZQkVfRVhDRUVERUQ6IlRoZSBjdXJyZW50IHRyYW5zYWN0aW9uIG1heSBoYXZlIGZhaWxlZCBiZWNhdXNlIG9mIGV4Y2VlZGluZyBxdW90YSBsaW1pdGF0aW9ucy4iLEVYRUNVVEVfVFJBTlNBQ1RJT05fT05fQ0xPU0VEX0RCOiJDYW4ndCBzdGFydCBhIHRyYW5zYWN0aW9uIG9uIGEgY2xvc2VkIGRhdGFiYXNlIixJTkNPTVBBVElCTEVfREJfVkVSU0lPTjoiVGhlIGJpbmFyeSBpcyBpbmNvbXBhdGlibGUgd2l0aCB0aGUgZGF0YWJhc2UgdmVyc2lvbiJ9LENzPXtBVVRIX0lOVkFMSUQ6IkVSUk9SIixFWEVDVVRFX1RSQU5TQUNUSU9OX09OX0NMT1NFRF9EQjoiV0FSTklORyIsRVhQTElDSVRfQUJPUlQ6IklHTk9SRUQiLElEQl9OT1RfU1VQUE9SVEVEOiJFUlJPUiIsTUlTU0lOR19JTkRFWDoiV0FSTklORyIsTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiJFUlJPUiIsCkRCX0RFTEVURURfQllfTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiJXQVJOSU5HIixEQl9SRU9QRU5FRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6IldBUk5JTkciLFFVT1RBX0VYQ0VFREVEOiJXQVJOSU5HIixRVU9UQV9NQVlCRV9FWENFRURFRDoiV0FSTklORyIsVU5LTk9XTl9BQk9SVDoiV0FSTklORyIsSU5DT01QQVRJQkxFX0RCX1ZFUlNJT046IldBUk5JTkcifSxEcz17QVVUSF9JTlZBTElEOiExLEVYRUNVVEVfVFJBTlNBQ1RJT05fT05fQ0xPU0VEX0RCOiExLEVYUExJQ0lUX0FCT1JUOiExLElEQl9OT1RfU1VQUE9SVEVEOiExLE1JU1NJTkdfSU5ERVg6ITEsTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiExLERCX0RFTEVURURfQllfTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiExLERCX1JFT1BFTkVEX0JZX01JU1NJTkdfT0JKRUNUX1NUT1JFUzohMSxRVU9UQV9FWENFRURFRDohMSxRVU9UQV9NQVlCRV9FWENFRURFRDohMCxVTktOT1dOX0FCT1JUOiEwLElOQ09NUEFUSUJMRV9EQl9WRVJTSU9OOiExfSwKTms9Y2xhc3MgZXh0ZW5kcyBfLlhqe2NvbnN0cnVjdG9yKGEsYj17fSxjPUJzW2FdLGQ9Q3NbYV0sZT1Ec1thXSl7c3VwZXIoYyx7bmFtZToiWXRJZGJLbm93bkVycm9yIixpc1N3OnNlbGYuZG9jdW1lbnQ9PT12b2lkIDAsaXNJZnJhbWU6c2VsZiE9PXNlbGYudG9wLHR5cGU6YSwuLi5ifSk7dGhpcy50eXBlPWE7dGhpcy5tZXNzYWdlPWM7dGhpcy5sZXZlbD1kO3RoaXMuaj1lO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLE5rLnByb3RvdHlwZSl9fSxFcz1jbGFzcyBleHRlbmRzIE5re2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoIk1JU1NJTkdfT0JKRUNUX1NUT1JFUyIse2V4cGVjdGVkT2JqZWN0U3RvcmVzOmIsZm91bmRPYmplY3RTdG9yZXM6YX0sQnMuTUlTU0lOR19PQkpFQ1RfU1RPUkVTKTtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxFcy5wcm90b3R5cGUpfX0sUGs9Y2xhc3MgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKCk7dGhpcy5pbmRleD1hO3RoaXMub2JqZWN0U3RvcmU9CmI7T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsUGsucHJvdG90eXBlKX19LFFrPVsiVGhlIGRhdGFiYXNlIGNvbm5lY3Rpb24gaXMgY2xvc2luZyIsIkNhbid0IHN0YXJ0IGEgdHJhbnNhY3Rpb24gb24gYSBjbG9zZWQgZGF0YWJhc2UiLCJBIG11dGF0aW9uIG9wZXJhdGlvbiB3YXMgYXR0ZW1wdGVkIG9uIGEgZGF0YWJhc2UgdGhhdCBkaWQgbm90IGFsbG93IG11dGF0aW9ucyJdO3ZhciBhbDthbD1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX19OwpfLlZrPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuc3RhdGU9e3N0YXR1czoiUEVORElORyJ9O3RoaXMuaj1bXTt0aGlzLm89W107YT1hLmo7dmFyIGI9ZD0+e2lmKHRoaXMuc3RhdGUuc3RhdHVzPT09IlBFTkRJTkciKXt0aGlzLnN0YXRlPXtzdGF0dXM6IkZVTEZJTExFRCIsdmFsdWU6ZH07Zm9yKGxldCBlIG9mIHRoaXMuaillKCl9fSxjPWQ9PntpZih0aGlzLnN0YXRlLnN0YXR1cz09PSJQRU5ESU5HIil7dGhpcy5zdGF0ZT17c3RhdHVzOiJSRUpFQ1RFRCIscmVhc29uOmR9O2ZvcihsZXQgZSBvZiB0aGlzLm8pZSgpfX07dHJ5e2EoYixjKX1jYXRjaChkKXtjKGQpfX1zdGF0aWMgYWxsKGEpe3JldHVybiBuZXcgXy5WayhuZXcgYWwoKGIsYyk9Pnt2YXIgZD1bXSxlPWEubGVuZ3RoO2U9PT0wJiZiKGQpO2ZvcihsZXQgZj0wO2Y8YS5sZW5ndGg7KytmKV8uVmsucmVzb2x2ZShhW2ZdKS50aGVuKGg9PntkW2ZdPWg7ZS0tO2U9PT0wJiZiKGQpfSkuY2F0Y2goaD0+e2MoaCl9KX0pKX1zdGF0aWMgcmVzb2x2ZShhKXtyZXR1cm4gbmV3IF8uVmsobmV3IGFsKChiLApjKT0+e2EgaW5zdGFuY2VvZiBfLlZrP2EudGhlbihiLGMpOmIoYSl9KSl9c3RhdGljIHJlamVjdChhKXtyZXR1cm4gbmV3IF8uVmsobmV3IGFsKChiLGMpPT57YyhhKX0pKX10aGVuKGEsYil7dmFyIGM9YT8/VWssZD1iPz9UaztyZXR1cm4gbmV3IF8uVmsobmV3IGFsKChlLGYpPT57dGhpcy5zdGF0ZS5zdGF0dXM9PT0iUEVORElORyI/KHRoaXMuai5wdXNoKCgpPT57WGsodGhpcyx0aGlzLGMsZSxmKX0pLHRoaXMuby5wdXNoKCgpPT57WWsodGhpcyx0aGlzLGQsZSxmKX0pKTp0aGlzLnN0YXRlLnN0YXR1cz09PSJGVUxGSUxMRUQiP1hrKHRoaXMsdGhpcyxjLGUsZik6dGhpcy5zdGF0ZS5zdGF0dXM9PT0iUkVKRUNURUQiJiZZayh0aGlzLHRoaXMsZCxlLGYpfSkpfWNhdGNoKGEpe3JldHVybiB0aGlzLnRoZW4odm9pZCAwLGEpfX07dmFyIHhsPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5qPWE7dGhpcy5vcHRpb25zPWI7dGhpcy50cmFuc2FjdGlvbkNvdW50PTA7dGhpcy52PU1hdGgucm91bmQoKDAsXy5lbCkoKSk7dGhpcy5vPSExfWFkZChhLGIsYyl7cmV0dXJuIF8uaWwodGhpcyxbYV0se21vZGU6InJlYWR3cml0ZSIsa2I6ITAsY29tbWl0OmRsKCl9LGQ9PmQub2JqZWN0U3RvcmUoYSkuYWRkKGIsYykpfWNsZWFyKGEpe3JldHVybiBfLmlsKHRoaXMsW2FdLHttb2RlOiJyZWFkd3JpdGUiLGtiOiEwfSxiPT5iLm9iamVjdFN0b3JlKGEpLmNsZWFyKCkpfWNsb3NlKCl7dGhpcy5qLmNsb3NlKCk7dGhpcy5vcHRpb25zPy5jbG9zZWQmJnRoaXMub3B0aW9ucy5jbG9zZWQoKX1jb3VudChhLGIpe3JldHVybiBfLmlsKHRoaXMsW2FdLHttb2RlOiJyZWFkb25seSIsa2I6ITAsY29tbWl0OmRsKCl9LGM9PmMub2JqZWN0U3RvcmUoYSkuY291bnQoYikpfWRlbGV0ZShhLGIpe3JldHVybiBfLmlsKHRoaXMsW2FdLHttb2RlOiJyZWFkd3JpdGUiLAprYjohMCxjb21taXQ6ZGwoKSYmIShiIGluc3RhbmNlb2YgSURCS2V5UmFuZ2UpfSxjPT5jLm9iamVjdFN0b3JlKGEpLmRlbGV0ZShiKSl9Z2V0KGEsYil7cmV0dXJuIF8uaWwodGhpcyxbYV0se21vZGU6InJlYWRvbmx5IixrYjohMCxjb21taXQ6ZGwoKX0sYz0+Yy5vYmplY3RTdG9yZShhKS5nZXQoYikpfWdldEFsbChhLGIsYyl7cmV0dXJuIF8uaWwodGhpcyxbYV0se21vZGU6InJlYWRvbmx5IixrYjohMH0sZD0+ZC5vYmplY3RTdG9yZShhKS5nZXRBbGwoYixjKSl9b2JqZWN0U3RvcmVOYW1lcygpe3JldHVybiBBcnJheS5mcm9tKHRoaXMuai5vYmplY3RTdG9yZU5hbWVzKX1nZXROYW1lKCl7cmV0dXJuIHRoaXMuai5uYW1lfX0samw9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9YWRkKGEsYil7cmV0dXJuIGJsKHRoaXMuai5hZGQoYSxiKSl9YXV0b0luY3JlbWVudCgpe3JldHVybiB0aGlzLmouYXV0b0luY3JlbWVudH1jbGVhcigpe3JldHVybiBibCh0aGlzLmouY2xlYXIoKSkudGhlbigoKT0+Cnt9KX1jb3VudChhKXtyZXR1cm4gYmwodGhpcy5qLmNvdW50KGEpKX1kZWxldGUoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBJREJLZXlSYW5nZT9zbCh0aGlzLGEpOmJsKHRoaXMuai5kZWxldGUoYSkpfWdldChhKXtyZXR1cm4gYmwodGhpcy5qLmdldChhKSl9Z2V0QWxsKGEsYil7cmV0dXJuImdldEFsbCJpbiBJREJPYmplY3RTdG9yZS5wcm90b3R5cGU/YmwodGhpcy5qLmdldEFsbChhLGIpKTp0bCh0aGlzLGEsYil9aW5kZXgoYSl7dHJ5e3JldHVybiBuZXcgRnModGhpcy5qLmluZGV4KGEpKX1jYXRjaChiKXtpZihiIGluc3RhbmNlb2YgRXJyb3ImJmIubmFtZT09PSJOb3RGb3VuZEVycm9yIil0aHJvdyBuZXcgUGsoYSx0aGlzLmoubmFtZSk7dGhyb3cgYjt9fWdldE5hbWUoKXtyZXR1cm4gdGhpcy5qLm5hbWV9a2V5UGF0aCgpe3JldHVybiB0aGlzLmoua2V5UGF0aH19LGZsPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj1hO3RoaXMubz1uZXcgTWFwO3RoaXMuYWJvcnRlZD0hMTsKdGhpcy5kb25lPW5ldyBQcm9taXNlKChiLGMpPT57dGhpcy5qLmFkZEV2ZW50TGlzdGVuZXIoImNvbXBsZXRlIiwoKT0+e2IoKX0pO3RoaXMuai5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsZD0+e2QuY3VycmVudFRhcmdldD09PWQudGFyZ2V0JiZjKHRoaXMuai5lcnJvcil9KTt0aGlzLmouYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLCgpPT57dmFyIGQ9dGhpcy5qLmVycm9yO2lmKGQpYyhkKTtlbHNlIGlmKCF0aGlzLmFib3J0ZWQpe2Q9Tms7dmFyIGU9dGhpcy5qLm9iamVjdFN0b3JlTmFtZXM7bGV0IGY9W107Zm9yKGxldCBoPTA7aDxlLmxlbmd0aDtoKyspe2xldCBrPWUuaXRlbShoKTtpZihrPT09bnVsbCl0aHJvdyBFcnJvcigibWEiKTtmLnB1c2goayl9ZD1uZXcgZCgiVU5LTk9XTl9BQk9SVCIse29iamVjdFN0b3JlTmFtZXM6Zi5qb2luKCksZGJOYW1lOnRoaXMuai5kYi5uYW1lLG1vZGU6dGhpcy5qLm1vZGV9KTtjKGQpfX0pfSl9YWJvcnQoKXt0aGlzLmouYWJvcnQoKTt0aGlzLmFib3J0ZWQ9CiEwO3Rocm93IG5ldyBOaygiRVhQTElDSVRfQUJPUlQiKTt9Y29tbWl0KCl7dGhpcy5hYm9ydGVkfHx0aGlzLmouY29tbWl0Py4oKX1vYmplY3RTdG9yZShhKXthPXRoaXMuai5vYmplY3RTdG9yZShhKTt2YXIgYj10aGlzLm8uZ2V0KGEpO2J8fChiPW5ldyBqbChhKSx0aGlzLm8uc2V0KGEsYikpO3JldHVybiBifX0sRnM9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9Y291bnQoYSl7cmV0dXJuIGJsKHRoaXMuai5jb3VudChhKSl9ZGVsZXRlKGEpe3JldHVybiB1bCh0aGlzLHtxdWVyeTphfSxiPT5iLmRlbGV0ZSgpLnRoZW4oKCk9PnJsKGIpKSl9Z2V0KGEpe3JldHVybiBibCh0aGlzLmouZ2V0KGEpKX1nZXRBbGwoYSxiKXtyZXR1cm4iZ2V0QWxsImluIElEQkluZGV4LnByb3RvdHlwZT9ibCh0aGlzLmouZ2V0QWxsKGEsYikpOnZsKHRoaXMsYSxiKX1rZXlQYXRoKCl7cmV0dXJuIHRoaXMuai5rZXlQYXRofXVuaXF1ZSgpe3JldHVybiB0aGlzLmoudW5pcXVlfX0sd2w9Y2xhc3N7Y29uc3RydWN0b3IoYSwKYil7dGhpcy5yZXF1ZXN0PWE7dGhpcy5jdXJzb3I9Yn1kZWxldGUoKXtyZXR1cm4gYmwodGhpcy5jdXJzb3IuZGVsZXRlKCkpLnRoZW4oKCk9Pnt9KX11cGRhdGUoYSl7cmV0dXJuIGJsKHRoaXMuY3Vyc29yLnVwZGF0ZShhKSl9fTt2YXIgR3M9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLm5hbWU9YTt0aGlzLm9wdGlvbnM9Yjt0aGlzLnY9ITA7dGhpcy5EPXRoaXMuQj0wfW8oYSxiLGM9e30pe3JldHVybiB6bChhLGIsYyl9ZGVsZXRlKGE9e30pe3JldHVybiBfLkFsKHRoaXMubmFtZSxhKX1vcGVuKCl7aWYoIXRoaXMudil0aHJvdyBCbCh0aGlzKTtpZih0aGlzLmopcmV0dXJuIHRoaXMuajt2YXIgYSxiPSgpPT57dGhpcy5qPT09YSYmKHRoaXMuaj12b2lkIDApfSxjPXtibG9ja2luZzplPT57ZS5jbG9zZSgpfSxjbG9zZWQ6YixUQTpiLHVwZ3JhZGU6dGhpcy5vcHRpb25zLnVwZ3JhZGV9LGQ9YXN5bmMoKT0+e3ZhciBlPUVycm9yKCkuc3RhY2s/PyIiO3RyeXtsZXQgaz1hd2FpdCB0aGlzLm8odGhpcy5uYW1lLHRoaXMub3B0aW9ucy52ZXJzaW9uLGMpO3ZhciBmPWssaD10aGlzLm9wdGlvbnM7bGV0IGw9W107Zm9yKGxldCBtIG9mIE9iamVjdC5rZXlzKGguc2UpKXtsZXQge1BkOm4seks6cD1OdW1iZXIuTUFYX1ZBTFVFfT0KaC5zZVttXTshKGYuai52ZXJzaW9uPj1uKXx8Zi5qLnZlcnNpb24+PXB8fGYuai5vYmplY3RTdG9yZU5hbWVzLmNvbnRhaW5zKG0pfHxsLnB1c2gobSl9aWYobC5sZW5ndGghPT0wKXtsZXQgbT1PYmplY3Qua2V5cyh0aGlzLm9wdGlvbnMuc2UpLG49ay5vYmplY3RTdG9yZU5hbWVzKCk7aWYodGhpcy5EPF8uc2ooInl0aWRiX3Jlb3Blbl9kYl9yZXRyaWVzIiwwKSlyZXR1cm4gdGhpcy5EKyssay5jbG9zZSgpLF8uSWsobmV3IE5rKCJEQl9SRU9QRU5FRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVMiLHtkYk5hbWU6dGhpcy5uYW1lLGV4cGVjdGVkT2JqZWN0U3RvcmVzOm0sZm91bmRPYmplY3RTdG9yZXM6bn0pKSxkKCk7aWYodGhpcy5CPF8uc2ooInl0aWRiX3JlbWFrZV9kYl9yZXRyaWVzIiwxKSlyZXR1cm4gdGhpcy5CKyssYXdhaXQgdGhpcy5kZWxldGUoKSxfLklrKG5ldyBOaygiREJfREVMRVRFRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVMiLHtkYk5hbWU6dGhpcy5uYW1lLGV4cGVjdGVkT2JqZWN0U3RvcmVzOm0sCmZvdW5kT2JqZWN0U3RvcmVzOm59KSksZCgpO3Rocm93IG5ldyBFcyhuLG0pO31yZXR1cm4ga31jYXRjaChrKXtpZihrIGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uP2submFtZT09PSJWZXJzaW9uRXJyb3IiOiJET01FcnJvciJpbiBzZWxmJiZrIGluc3RhbmNlb2YgRE9NRXJyb3I/ay5uYW1lPT09IlZlcnNpb25FcnJvciI6ayBpbnN0YW5jZW9mIE9iamVjdCYmIm1lc3NhZ2UiaW4gayYmay5tZXNzYWdlPT09IkFuIGF0dGVtcHQgd2FzIG1hZGUgdG8gb3BlbiBhIGRhdGFiYXNlIHVzaW5nIGEgbG93ZXIgdmVyc2lvbiB0aGFuIHRoZSBleGlzdGluZyB2ZXJzaW9uLiIpe2U9YXdhaXQgdGhpcy5vKHRoaXMubmFtZSx2b2lkIDAsey4uLmMsdXBncmFkZTp2b2lkIDB9KTtmPWUuai52ZXJzaW9uO2lmKHRoaXMub3B0aW9ucy52ZXJzaW9uIT09dm9pZCAwJiZmPnRoaXMub3B0aW9ucy52ZXJzaW9uKzEpdGhyb3cgZS5jbG9zZSgpLHRoaXMudj0hMSxCbCh0aGlzLGYpO3JldHVybiBlfWIoKTtrIGluc3RhbmNlb2YKRXJyb3ImJiFfLngoInl0aWRiX2FzeW5jX3N0YWNrX2tpbGxzd2l0Y2giKSYmKGsuc3RhY2s9YCR7ay5zdGFja31cbiR7ZS5zdWJzdHJpbmcoZS5pbmRleE9mKCJcbiIpKzEpfWApO3Rocm93IFJrKGssdGhpcy5uYW1lLCIiLHRoaXMub3B0aW9ucy52ZXJzaW9uPz8tMSk7fX07cmV0dXJuIHRoaXMuaj1hPWQoKX19O3ZhciBEbD1uZXcgR3MoIll0SWRiTWV0YSIse3NlOntkYXRhYmFzZXM6e1BkOjF9fSx1cGdyYWRlKGEsYil7YigxKSYmXy5rbChhLCJkYXRhYmFzZXMiLHtrZXlQYXRoOiJhY3R1YWxOYW1lIn0pfX0pO3ZhciBNbCxLbD1uZXcgY2xhc3N7Y29uc3RydWN0b3IoKXt9fShuZXcgY2xhc3N7Y29uc3RydWN0b3IoKXt9fSk7bmV3IF8uY3M7dmFyIFlsPWNsYXNzIGV4dGVuZHMgR3N7Y29uc3RydWN0b3IoYSxiKXtzdXBlcihhLGIpO3RoaXMub3B0aW9ucz1iO0trKGEpfW8oYSxiLGM9e30pe3JldHVybih0aGlzLm9wdGlvbnMuc2hhcmVkP1RsOlNsKShhLGIsey4uLmN9KX1kZWxldGUoYT17fSl7cmV0dXJuKHRoaXMub3B0aW9ucy5zaGFyZWQ/WGw6VWwpKHRoaXMubmFtZSxhKX19O3ZhciBhbT1fLiRsKCJ5dEdjZkNvbmZpZyIse3NlOntjb2xkQ29uZmlnU3RvcmU6e1BkOjF9LGhvdENvbmZpZ1N0b3JlOntQZDoxfX0sc2hhcmVkOiExLHVwZ3JhZGUoYSxiKXtiKDEpJiYoXy5vbChfLmtsKGEsImhvdENvbmZpZ1N0b3JlIix7a2V5UGF0aDoia2V5IixhdXRvSW5jcmVtZW50OiEwfSksImhvdFRpbWVzdGFtcEluZGV4IiwidGltZXN0YW1wIiksXy5vbChfLmtsKGEsImNvbGRDb25maWdTdG9yZSIse2tleVBhdGg6ImtleSIsYXV0b0luY3JlbWVudDohMH0pLCJjb2xkVGltZXN0YW1wSW5kZXgiLCJ0aW1lc3RhbXAiKSl9LHZlcnNpb246MX0pO3ZhciBIcz1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoKXtzdXBlcigpO3RoaXMubz1bXTt0aGlzLmo9W107dmFyIGE9Xy5zYSgieXQuZ2NmLmNvbmZpZy5ob3RVcGRhdGVDYWxsYmFja3MiKTthPyh0aGlzLm89Wy4uLmFdLHRoaXMuaj1hKToodGhpcy5qPVtdLF8ucmEoInl0LmdjZi5jb25maWcuaG90VXBkYXRlQ2FsbGJhY2tzIix0aGlzLmopKX1sYSgpe2ZvcihsZXQgYiBvZiB0aGlzLm8pe3ZhciBhPXRoaXMuajtsZXQgYz1hLmluZGV4T2YoYik7Yz49MCYmYS5zcGxpY2UoYywxKX10aGlzLm8ubGVuZ3RoPTA7c3VwZXIubGEoKX19O3ZhciBpbT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuaj0wO3RoaXMubz1uZXcgSHN9d2ooKXtyZXR1cm4gXy5zYSgieXQuZ2NmLmNvbmZpZy5ob3RDb25maWdHcm91cCIpPz9fLncoIlJBV19IT1RfQ09ORklHX0dST1VQIil9QihhKXt0aGlzLmhvdEhhc2hEYXRhPWE7Xy5yYSgieXQuZ2NmLmNvbmZpZy5ob3RIYXNoRGF0YSIsdGhpcy5ob3RIYXNoRGF0YXx8bnVsbCl9fTt2YXIgSXM7SXM9dHlwZW9mIFRleHRFbmNvZGVyIT09InVuZGVmaW5lZCI/bmV3IFRleHRFbmNvZGVyOm51bGw7Xy55bT1Jcz9hPT5Jcy5lbmNvZGUoYSk6YT0+e2E9Xy5hYyhhKTt2YXIgYj1uZXcgVWludDhBcnJheShhLmxlbmd0aCk7Zm9yKGxldCBjPTA7YzxiLmxlbmd0aDtjKyspYltjXT1hW2NdO3JldHVybiBifTtfLnBtLnByb3RvdHlwZS5zZXJpYWxpemU9ZnVuY3Rpb24oKXtyZXR1cm57dmVyc2lvbjp0aGlzLnZlcnNpb24sYXJnczp0aGlzLmFyZ3N9fTtfLnFtLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRvcGljfTt2YXIgSnM9Xy5zYSgieXRQdWJzdWIyUHVic3ViMkluc3RhbmNlIil8fG5ldyBfLnRoO18udGgucHJvdG90eXBlLnN1YnNjcmliZT1fLnRoLnByb3RvdHlwZS5zdWJzY3JpYmU7Xy50aC5wcm90b3R5cGUudW5zdWJzY3JpYmVCeUtleT1fLnRoLnByb3RvdHlwZS5jaTtfLnRoLnByb3RvdHlwZS5wdWJsaXNoPV8udGgucHJvdG90eXBlLnB1Ymxpc2g7Xy50aC5wcm90b3R5cGUuY2xlYXI9Xy50aC5wcm90b3R5cGUuY2xlYXI7Xy5yYSgieXRQdWJzdWIyUHVic3ViMkluc3RhbmNlIixKcyk7Xy5Lcz1fLnNhKCJ5dFB1YnN1YjJQdWJzdWIyU3Vic2NyaWJlZEtleXMiKXx8e307Xy5yYSgieXRQdWJzdWIyUHVic3ViMlN1YnNjcmliZWRLZXlzIixfLktzKTtfLkxzPV8uc2EoInl0UHVic3ViMlB1YnN1YjJUb3BpY1RvS2V5cyIpfHx7fTtfLnJhKCJ5dFB1YnN1YjJQdWJzdWIyVG9waWNUb0tleXMiLF8uTHMpO18uTXM9Xy5zYSgieXRQdWJzdWIyUHVic3ViMklzQXN5bmMiKXx8e307Cl8ucmEoInl0UHVic3ViMlB1YnN1YjJJc0FzeW5jIixfLk1zKTtfLnJhKCJ5dFB1YnN1YjJQdWJzdWIyU2tpcFN1YktleSIsbnVsbCk7dmFyIHptO18ud209Xy5zaigibWF4X2JvZHlfc2l6ZV90b19jb21wcmVzcyIsNUU1KTtfLnhtPV8uc2ooIm1pbl9ib2R5X3NpemVfdG9fY29tcHJlc3MiLDUwMCk7em09MDt2YXIgTnM9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy54aT10aGlzLk9jPSExO3RoaXMucG90ZW50aWFsRXNmRXJyb3JDb3VudGVyPXRoaXMuaj0wO3RoaXMuaGFuZGxlRXJyb3I9KCk9Pnt9O3RoaXMuVGY9KCk9Pnt9O3RoaXMubm93PURhdGUubm93O3RoaXMuYWg9ITE7dGhpcy5ncz1hLmdzPz8xMDA7dGhpcy5Ncj1hLk1yPz8xO3RoaXMuS3I9YS5Lcj8/MjU5MkU2O3RoaXMuQ3I9YS5Dcj8/MTJFNDt0aGlzLkxyPWEuTHI/PzVFMzt0aGlzLkphPWEuSmE/P3ZvaWQgMDt0aGlzLk9pPSEhYS5PaTt0aGlzLkRpPWEuRGk/Py4xO3RoaXMuS2o9YS5Laj8/MTA7YS5oYW5kbGVFcnJvciYmKHRoaXMuaGFuZGxlRXJyb3I9YS5oYW5kbGVFcnJvcik7YS5UZiYmKHRoaXMuVGY9YS5UZik7YS5haCYmKHRoaXMuYWg9YS5haCk7YS54aSYmKHRoaXMueGk9YS54aSk7dGhpcy5LYT1hLkthO3RoaXMuRGM9YS5EYzt0aGlzLmNiPWEuY2I7dGhpcy5TYT1hLlNhO3RoaXMuR2Q9YS5HZDt0aGlzLkttPWEuS207CnRoaXMuRm09YS5GbTtCbSh0aGlzKSYmKCF0aGlzLkthfHx0aGlzLkthKCJuZXR3b3JrbGVzc19sb2dnaW5nIikpJiZEbSh0aGlzKX13cml0ZVRoZW5TZW5kKGEsYj17fSl7aWYoQm0odGhpcykmJnRoaXMuT2Mpe2xldCBjPXt1cmw6YSxvcHRpb25zOmIsdGltZXN0YW1wOnRoaXMubm93KCksc3RhdHVzOiJORVciLHNlbmRDb3VudDowfTt0aGlzLmNiLnNldChjLHRoaXMuSmEpLnRoZW4oZD0+e2MuaWQ9ZDt0aGlzLlNhLlNiKCkmJkdtKHRoaXMsYyl9KS5jYXRjaChkPT57R20odGhpcyxjKTtIbSh0aGlzLGQpfSl9ZWxzZSB0aGlzLkdkKGEsYil9c2VuZFRoZW5Xcml0ZShhLGI9e30sYyl7aWYoQm0odGhpcykmJnRoaXMuT2Mpe2xldCBkPXt1cmw6YSxvcHRpb25zOmIsdGltZXN0YW1wOnRoaXMubm93KCksc3RhdHVzOiJORVciLHNlbmRDb3VudDowfTt0aGlzLkthJiZ0aGlzLkthKCJud2xfc2tpcF9yZXRyeSIpJiYoZC5za2lwUmV0cnk9Yyk7aWYodGhpcy5TYS5TYigpfHx0aGlzLkthJiYKdGhpcy5LYSgibndsX2FnZ3Jlc3NpdmVfc2VuZF90aGVuX3dyaXRlIikmJiFkLnNraXBSZXRyeSl7aWYoIWQuc2tpcFJldHJ5KXtsZXQgZT1iLm9uRXJyb3I/Yi5vbkVycm9yOigpPT57fTtiLm9uRXJyb3I9YXN5bmMoZixoKT0+e2F3YWl0IHRoaXMuY2Iuc2V0KGQsdGhpcy5KYSkuY2F0Y2goaz0+e0htKHRoaXMsayl9KTtlKGYsaCl9fXRoaXMuR2QoYSxiLGQuc2tpcFJldHJ5KX1lbHNlIHRoaXMuY2Iuc2V0KGQsdGhpcy5KYSkuY2F0Y2goZT0+e3RoaXMuR2QoYSxiLGQuc2tpcFJldHJ5KTtIbSh0aGlzLGUpfSl9ZWxzZSB0aGlzLkdkKGEsYix0aGlzLkthJiZ0aGlzLkthKCJud2xfc2tpcF9yZXRyeSIpJiZjKX1zZW5kQW5kV3JpdGUoYSxiPXt9KXtpZihCbSh0aGlzKSYmdGhpcy5PYyl7bGV0IGM9e3VybDphLG9wdGlvbnM6Yix0aW1lc3RhbXA6dGhpcy5ub3coKSxzdGF0dXM6Ik5FVyIsc2VuZENvdW50OjB9LGQ9ITEsZT1iLm9uU3VjY2Vzcz9iLm9uU3VjY2VzczooKT0+e307Yy5vcHRpb25zLm9uU3VjY2Vzcz0KKGYsaCk9PntjLmlkIT09dm9pZCAwP3RoaXMuY2IuRmYoYy5pZCx0aGlzLkphKTpkPSEwO3RoaXMuU2EuZWYmJnRoaXMuS2EmJnRoaXMuS2EoInZzc19uZXR3b3JrX2hpbnQiKSYmdGhpcy5TYS5lZighMCk7ZShmLGgpfTt0aGlzLkdkKGMudXJsLGMub3B0aW9ucyx2b2lkIDAsITApO3RoaXMuY2Iuc2V0KGMsdGhpcy5KYSkudGhlbihmPT57Yy5pZD1mO2QmJnRoaXMuY2IuRmYoYy5pZCx0aGlzLkphKX0pLmNhdGNoKGY9PntIbSh0aGlzLGYpfSl9ZWxzZSB0aGlzLkdkKGEsYix2b2lkIDAsITApfW8oKXtpZighQm0odGhpcykpdGhyb3cgRXJyb3IoInJhIik7dGhpcy5qfHwodGhpcy5qPXRoaXMuRGMucGIoYXN5bmMoKT0+e3ZhciBhPWF3YWl0IHRoaXMuY2IuV3AoIk5FVyIsdGhpcy5KYSk7YT8oYXdhaXQgR20odGhpcyxhKSx0aGlzLmomJih0aGlzLmo9MCx0aGlzLm8oKSkpOnRoaXMudigpfSx0aGlzLmdzKSl9digpe3RoaXMuRGMuQWEodGhpcy5qKTt0aGlzLmo9MH19O3ZhciBLbTt2YXIgVW89e2FjY291bnRTdGF0ZUNoYW5nZVNpZ25lZEluOjIzLGFjY291bnRTdGF0ZUNoYW5nZVNpZ25lZE91dDoyNCxkZWxheWVkRXZlbnRNZXRyaWNDYXB0dXJlZDoxMSxsYXRlbmN5QWN0aW9uQmFzZWxpbmVkOjYsbGF0ZW5jeUFjdGlvbkluZm86NyxsYXRlbmN5QWN0aW9uVGlja2VkOjUsb2ZmbGluZVRyYW5zZmVyU3RhdHVzQ2hhbmdlZDoyLG9mZmxpbmVJbWFnZURvd25sb2FkOjMzNSxwbGF5YmFja1N0YXJ0U3RhdGVDaGFuZ2VkOjksc3lzdGVtSGVhbHRoQ2FwdHVyZWQ6MyxtYW5nb09uYm9hcmRpbmdDb21wbGV0ZWQ6MTAsbWFuZ29QdXNoTm90aWZpY2F0aW9uUmVjZWl2ZWQ6MjMwLG1hbmdvVW5mb3JrRGJNaWdyYXRpb25FcnJvcjoxMjEsbWFuZ29VbmZvcmtEYk1pZ3JhdGlvblN1bW1hcnk6MTIyLG1hbmdvVW5mb3JrRGJNaWdyYXRpb25QcmV1bmZvcmtEYlZlcnNpb25OdW1iZXI6MTMzLG1hbmdvVW5mb3JrRGJNaWdyYXRpb25QaG9uZU1ldGFkYXRhOjEzNCxtYW5nb1VuZm9ya0RiTWlncmF0aW9uUGhvbmVTdG9yYWdlOjEzNSwKbWFuZ29VbmZvcmtEYk1pZ3JhdGlvblN0ZXA6MTQyLG1hbmdvQXN5bmNBcGlNaWdyYXRpb25FdmVudDoyMjMsbWFuZ29Eb3dubG9hZFZpZGVvUmVzdWx0OjIyNCxtYW5nb0hvbWVwYWdlVmlkZW9Db3VudDoyNzksbWFuZ29Ib21lVjNTdGF0ZToyOTUsbWFuZ29JbWFnZUNsaWVudENhY2hlSGl0RXZlbnQ6MjczLHNkQ2FyZFN0YXR1c0NoYW5nZWQ6OTgsZnJhbWVzRHJvcHBlZDoxMix0aHVtYm5haWxIb3ZlcmVkOjEzLGRldmljZVJldGVudGlvbkluZm9DYXB0dXJlZDoxNCx0aHVtYm5haWxMb2FkZWQ6MTUsYmFja1RvQXBwRXZlbnQ6MzE4LHN0cmVhbWluZ1N0YXRzQ2FwdHVyZWQ6MTcsb2ZmbGluZVZpZGVvU2hhcmVkOjE5LGFwcENyYXNoZWQ6MjAseW91VGhlcmU6MjEsb2ZmbGluZVN0YXRlU25hcHNob3Q6MjIsbWR4U2Vzc2lvblN0YXJ0ZWQ6MjUsbWR4U2Vzc2lvbkNvbm5lY3RlZDoyNixtZHhTZXNzaW9uRGlzY29ubmVjdGVkOjI3LGJlZHJvY2tSZXNvdXJjZUNvbnN1bXB0aW9uU25hcHNob3Q6MjgsCm5leHRHZW5XYXRjaFdhdGNoU3dpcGVkOjI5LGtpZHNBY2NvdW50c1NuYXBzaG90OjMwLHplcm9TdGVwQ2hhbm5lbENyZWF0ZWQ6MzEsdHZodG1sNVNlYXJjaENvbXBsZXRlZDozMixvZmZsaW5lU2hhcmVQYWlyaW5nOjM0LG9mZmxpbmVTaGFyZVVubG9jazozNSxtZHhSb3V0ZURpc3RyaWJ1dGlvblNuYXBzaG90OjM2LGJlZHJvY2tSZXBldGl0aXZlQWN0aW9uVGltZWQ6MzcsdW5wbHVnZ2VkRGVncmFkYXRpb25JbmZvOjIyOSx1cGxvYWRNcDRIZWFkZXJNb3ZlZDozOCx1cGxvYWRWaWRlb1RyYW5zY29kZWQ6MzksdXBsb2FkUHJvY2Vzc29yU3RhcnRlZDo0Nix1cGxvYWRQcm9jZXNzb3JFbmRlZDo0Nyx1cGxvYWRQcm9jZXNzb3JSZWFkeTo5NCx1cGxvYWRQcm9jZXNzb3JSZXF1aXJlbWVudFBlbmRpbmc6OTUsdXBsb2FkUHJvY2Vzc29ySW50ZXJydXB0ZWQ6OTYsdXBsb2FkRnJvbnRlbmRFdmVudDoyNDEsYXNzZXRQYWNrRG93bmxvYWRTdGFydGVkOjQxLGFzc2V0UGFja0Rvd25sb2FkZWQ6NDIsCmFzc2V0UGFja0FwcGxpZWQ6NDMsYXNzZXRQYWNrRGVsZXRlZDo0NCxhcHBJbnN0YWxsQXR0cmlidXRpb25FdmVudDo0NTkscGxheWJhY2tTZXNzaW9uU3RvcHBlZDo0NSxhZEJsb2NrZXJNZXNzYWdpbmdTaG93bjo0OCxkaXN0cmlidXRpb25DaGFubmVsQ2FwdHVyZWQ6NDksZGF0YVBsYW5DcGlkUmVxdWVzdGVkOjUxLGRldGFpbGVkTmV0d29ya1R5cGVDYXB0dXJlZDo1MixzZW5kU3RhdGVVcGRhdGVkOjUzLHJlY2VpdmVTdGF0ZVVwZGF0ZWQ6NTQsc2VuZERlYnVnU3RhdGVVcGRhdGVkOjU1LHJlY2VpdmVEZWJ1Z1N0YXRlVXBkYXRlZDo1NixraWRzRXJyb3JlZDo1NyxtZHhNc25TZXNzaW9uU3RhdHNGaW5pc2hlZDo1OCxhcHBTZXR0aW5nc0NhcHR1cmVkOjU5LG1keFdlYlNvY2tldFNlcnZlckh0dHBFcnJvcjo2MCxtZHhXZWJTb2NrZXRTZXJ2ZXI6NjEsc3RhcnR1cENyYXNoZXNEZXRlY3RlZDo2Mixjb2xkU3RhcnRJbmZvOjQzNSxvZmZsaW5lUGxheWJhY2tTdGFydGVkOjYzLGxpdmVDaGF0TWVzc2FnZVNlbnQ6MjI1LApsaXZlQ2hhdFVzZXJQcmVzZW50OjQzNCxsaXZlQ2hhdEJlaW5nTW9kZXJhdGVkOjQ1NyxsaXZlQ2hhdEdpZnRCdXR0b25JbXByZXNzZWQ6NTU4LGxpdmVDcmVhdGlvbkNhbWVyYVVwZGF0ZWQ6NjQsbGl2ZUNyZWF0aW9uRW5jb2RpbmdDYXB0dXJlZDo2NSxsaXZlQ3JlYXRpb25FcnJvcjo2NixsaXZlQ3JlYXRpb25IZWFsdGhVcGRhdGVkOjY3LGxpdmVDcmVhdGlvblZpZGVvRWZmZWN0c0NhcHR1cmVkOjY4LGxpdmVDcmVhdGlvblN0YWdlT2NjdXJlZDo3NSxvZmZsaW5lU3lzdGVtRmFpbHVyZTo1NDYsbGl2ZUNyZWF0aW9uQnJvYWRjYXN0U2NoZWR1bGVkOjEyMyxsaXZlQ3JlYXRpb25BcmNoaXZlUmVwbGFjZW1lbnQ6MTQ5LGxpdmVDcmVhdGlvbkNvc3RyZWFtaW5nQ29ubmVjdGlvbjo0MjEsbGl2ZUNyZWF0aW9uUGxheWFibGVzTWV0cmljczo1MzMsbGl2ZUNyZWF0aW9uU3RyZWFtV2VicnRjU3RhdHM6Mjg4LGxpdmVDcmVhdGlvbldlYnJ0Y0Vycm9yOjUyNixtZHhTZXNzaW9uUmVjb3ZlcnlTdGFydGVkOjY5LAptZHhTZXNzaW9uUmVjb3ZlcnlDb21wbGV0ZWQ6NzAsbWR4U2Vzc2lvblJlY292ZXJ5U3RvcHBlZDo3MSx2aXN1YWxFbGVtZW50U2hvd246NzIsdmlzdWFsRWxlbWVudEhpZGRlbjo3Myx2aXN1YWxFbGVtZW50R2VzdHVyZWQ6NzgsdmlzdWFsRWxlbWVudFN0YXRlQ2hhbmdlZDoyMDgsc2NyZWVuQ3JlYXRlZDoxNTYscGxheWJhY2tBc3NvY2lhdGVkOjIwMix2aXN1YWxFbGVtZW50QXR0YWNoZWQ6MjE1LHBsYXliYWNrQ29udGV4dEV2ZW50OjIxNCxjbG91ZENhc3RpbmdQbGF5YmFja1N0YXJ0ZWQ6NzQsd2ViUGxheWVyQXBpQ2FsbGVkOjc2LHR2aHRtbDVBY2NvdW50RGlhbG9nT3BlbmVkOjc5LGZvcmVncm91bmRIZWFydGJlYXQ6ODAsZm9yZWdyb3VuZEhlYXJ0YmVhdFNjcmVlbkFzc29jaWF0ZWQ6MTExLGtpZHNPZmZsaW5lU25hcHNob3Q6ODEsbWR4RW5jcnlwdGlvblNlc3Npb25TdGF0c0ZpbmlzaGVkOjgyLHBsYXllclJlcXVlc3RDb21wbGV0ZWQ6ODMsbGl0ZVNjaGVkdWxlclN0YXRpc3RpY3M6ODQsCm1keFNpZ25Jbjo4NSxzcGFjZWNhc3RNZXRhZGF0YUxvb2t1cFJlcXVlc3RlZDo4NixzcGFjZWNhc3RCYXRjaExvb2t1cFJlcXVlc3RlZDo4NyxzcGFjZWNhc3RTdW1tYXJ5UmVxdWVzdGVkOjg4LHNwYWNlY2FzdFBsYXliYWNrOjg5LHNwYWNlY2FzdERpc2NvdmVyeTo5MCx0dmh0bWw1TGF1bmNoVXJsQ29tcG9uZW50Q2hhbmdlZDo5MSxtZHhCYWNrZ3JvdW5kUGxheWJhY2tSZXF1ZXN0Q29tcGxldGVkOjkyLG1keEJyb2tlbkFkZGl0aW9uYWxEYXRhRGV2aWNlRGV0ZWN0ZWQ6OTMsdHZodG1sNUxvY2FsU3RvcmFnZTo5Nyx0dmh0bWw1RGV2aWNlU3RvcmFnZVN0YXR1czoxNDcsYXV0b0NhcHRpb25zQXZhaWxhYmxlOjk5LHBsYXliYWNrU2NydWJiaW5nRXZlbnQ6MzM5LGZsZXh5U3RhdGU6MTAwLGludGVyZmFjZU9yaWVudGF0aW9uQ2FwdHVyZWQ6MTAxLG1haW5BcHBCcm93c2VGcmFnbWVudENhY2hlOjEwMixvZmZsaW5lQ2FjaGVWZXJpZmljYXRpb25GYWlsdXJlOjEwMyxvZmZsaW5lUGxheWJhY2tFeGNlcHRpb25EaWdlc3Q6MjE3LAp2ckNvcHJlc2VuY2VTdGF0czoxMDQsdnJDb3ByZXNlbmNlU3luY1N0YXRzOjEzMCx2ckNvcHJlc2VuY2VDb21tc1N0YXRzOjEzNyx2ckNvcHJlc2VuY2VQYXJ0eVN0YXRzOjE1Myx2ckNvcHJlc2VuY2VFbW9qaVN0YXRzOjIxMyx2ckNvcHJlc2VuY2VFdmVudDoxNDEsdnJDb3ByZXNlbmNlRmxvd1RyYW5zaXRFdmVudDoxNjAsdnJDb3dhdGNoUGFydHlFdmVudDo0OTIsdnJDb3dhdGNoVXNlclN0YXJ0T3JKb2luRXZlbnQ6NTA0LHZyUGxheWJhY2tFdmVudDozNDUsa2lkc0FnZUdhdGVUcmFja2luZzoxMDUsb2ZmbGluZURlbGF5QWxsb3dlZFRyYWNraW5nOjEwNixtYWluQXBwQXV0b09mZmxpbmVTdGF0ZToxMDcsdmlkZW9Bc1RodW1ibmFpbERvd25sb2FkOjEwOCx2aWRlb0FzVGh1bWJuYWlsUGxheWJhY2s6MTA5LGxpdGVTaG93TW9yZToxMTAscmVuZGVyaW5nRXJyb3I6MTE4LGtpZHNQcm9maWxlUGluR2F0ZVRyYWNraW5nOjExOSxhYnJUcmFqZWN0b3J5OjEyNCxzY3JvbGxFdmVudDoxMjUsCnN0cmVhbXpJbmNyZW1lbnRlZDoxMjYsa2lkc1Byb2ZpbGVTd2l0Y2hlclRyYWNraW5nOjEyNyxraWRzUHJvZmlsZUNyZWF0aW9uVHJhY2tpbmc6MTI5LGJ1eUZsb3dTdGFydGVkOjEzNixpbnRlZ3JhdGlvbkF0dHJpYnV0aW9uRXZlbnQ6NTU2LG1ic0Nvbm5lY3Rpb25Jbml0aWF0ZWQ6MTM4LG1ic1BsYXliYWNrSW5pdGlhdGVkOjEzOSxtYnNMb2FkQ2hpbGRyZW46MTQwLGxpdGVQcm9maWxlRmV0Y2hlcjoxNDQsbWR4UmVtb3RlVHJhbnNhY3Rpb246MTQ2LHJlZWxQbGF5YmFja0Vycm9yOjE0OCxyZWFjaGFiaWxpdHlEZXRlY3Rpb25FdmVudDoxNTAsbW9iaWxlUGxheWJhY2tFdmVudDoxNTEsY291cnRzaWRlUGxheWVyU3RhdGVDaGFuZ2VkOjE1MixtdXNpY1BlcnNpc3RlbnRDYWNoZUNoZWNrZWQ6MTU0LG11c2ljUGVyc2lzdGVudENhY2hlQ2xlYXJlZDoxNTUscGxheWJhY2tJbnRlcnJ1cHRlZDoxNTcscGxheWJhY2tJbnRlcnJ1cHRpb25SZXNvbHZlZDoxNTgsZml4Rm9wRmxvdzoxNTksCmFuckRldGVjdGlvbjoxNjEsYmFja3N0YWdlUG9zdENyZWF0aW9uRmxvd0VuZGVkOjE2MixjbGllbnRFcnJvcjoxNjMsZ2FtaW5nQWNjb3VudExpbmtTdGF0dXNDaGFuZ2VkOjE2NCxsaXRlSG91c2V3YXJtaW5nOjE2NSxidXlGbG93RXZlbnQ6MTY3LGtpZHNQYXJlbnRhbEdhdGVUcmFja2luZzoxNjgsa2lkc1NpZ25lZE91dFNldHRpbmdzU3RhdHVzOjQzNyxraWRzU2lnbmVkT3V0UGF1c2VIaXN0b3J5Rml4U3RhdHVzOjQzOCx0dmh0bWw1V2F0Y2hkb2dWaW9sYXRpb246NDQ0LHlwY1VwZ3JhZGVGbG93OjE2OSx5b25nbGVTdHVkeToxNzAseXBjVXBkYXRlRmxvd1N0YXJ0ZWQ6MTcxLHlwY1VwZGF0ZUZsb3dDYW5jZWxsZWQ6MTcyLHlwY1VwZGF0ZUZsb3dTdWNjZWVkZWQ6MTczLHlwY1VwZGF0ZUZsb3dGYWlsZWQ6MTc0LGxpdGVHcm93dGhraXRQcm9tbzoxNzUscGF5bWVudEZsb3dTdGFydGVkOjM0MSx0cmFuc2FjdGlvbkZsb3dTaG93UGF5bWVudERpYWxvZzo0MDUsdHJhbnNhY3Rpb25GbG93U3RhcnRlZDoxNzYsCnRyYW5zYWN0aW9uRmxvd1NlY29uZGFyeURldmljZVN0YXJ0ZWQ6MjIyLHRyYW5zYWN0aW9uRmxvd1NlY29uZGFyeURldmljZVNpZ25lZE91dFN0YXJ0ZWQ6MzgzLHRyYW5zYWN0aW9uRmxvd0NhbmNlbGxlZDoxNzcsdHJhbnNhY3Rpb25GbG93UGF5bWVudENhbGxCYWNrUmVjZWl2ZWQ6Mzg3LHRyYW5zYWN0aW9uRmxvd1BheW1lbnRTdWJtaXR0ZWQ6NDYwLHRyYW5zYWN0aW9uRmxvd1BheW1lbnRTdWNjZWVkZWQ6MzI5LHRyYW5zYWN0aW9uRmxvd1N1Y2NlZWRlZDoxNzgsdHJhbnNhY3Rpb25GbG93RmFpbGVkOjE3OSx0cmFuc2FjdGlvbkZsb3dQbGF5QmlsbGluZ0Nvbm5lY3Rpb25TdGFydEV2ZW50OjQyOCx0cmFuc2FjdGlvbkZsb3dTZWNvbmRhcnlEZXZpY2VTdWNjZXNzOjQ1OCx0cmFuc2FjdGlvbkZsb3dFcnJvckV2ZW50OjQxMSxsaXRlVmlkZW9RdWFsaXR5Q2hhbmdlZDoxODAsd2F0Y2hCcmVha0VuYWJsZW1lbnRTZXR0aW5nRXZlbnQ6MTgxLHdhdGNoQnJlYWtGcmVxdWVuY3lTZXR0aW5nRXZlbnQ6MTgyLAp2aWRlb0VmZmVjdHNDYW1lcmFQZXJmb3JtYW5jZU1ldHJpY3M6MTgzLGFkTm90aWZ5OjE4NCxzdGFydHVwVGVsZW1ldHJ5OjE4NSxwbGF5YmFja09mZmxpbmVGYWxsYmFja1VzZWQ6MTg2LG91dE9mTWVtb3J5OjE4Nyx5cGNQYXVzZUZsb3dTdGFydGVkOjE4OCx5cGNQYXVzZUZsb3dDYW5jZWxsZWQ6MTg5LHlwY1BhdXNlRmxvd1N1Y2NlZWRlZDoxOTAseXBjUGF1c2VGbG93RmFpbGVkOjE5MSx1cGxvYWRGaWxlU2VsZWN0ZWQ6MTkyLHlwY1Jlc3VtZUZsb3dTdGFydGVkOjE5Myx5cGNSZXN1bWVGbG93Q2FuY2VsbGVkOjE5NCx5cGNSZXN1bWVGbG93U3VjY2VlZGVkOjE5NSx5cGNSZXN1bWVGbG93RmFpbGVkOjE5NixhZHNDbGllbnRTdGF0ZUNoYW5nZToxOTcseXBjQ2FuY2VsRmxvd1N0YXJ0ZWQ6MTk4LHlwY0NhbmNlbEZsb3dDYW5jZWxsZWQ6MTk5LHlwY0NhbmNlbEZsb3dTdWNjZWVkZWQ6MjAwLHlwY0NhbmNlbEZsb3dGYWlsZWQ6MjAxLHlwY0NhbmNlbEZsb3dHb1RvUGF5bWVudFByb2Nlc3Nvcjo0MDIsCnlwY0RlYWN0aXZhdGVGbG93U3RhcnRlZDozMjAseXBjUmVkZWVtRmxvd1N0YXJ0ZWQ6MjAzLHlwY1JlZGVlbUZsb3dDYW5jZWxsZWQ6MjA0LHlwY1JlZGVlbUZsb3dTdWNjZWVkZWQ6MjA1LHlwY1JlZGVlbUZsb3dGYWlsZWQ6MjA2LHlwY0ZhbWlseUNyZWF0ZUZsb3dTdGFydGVkOjI1OCx5cGNGYW1pbHlDcmVhdGVGbG93Q2FuY2VsbGVkOjI1OSx5cGNGYW1pbHlDcmVhdGVGbG93U3VjY2VlZGVkOjI2MCx5cGNGYW1pbHlDcmVhdGVGbG93RmFpbGVkOjI2MSx5cGNGYW1pbHlNYW5hZ2VGbG93U3RhcnRlZDoyNjIseXBjRmFtaWx5TWFuYWdlRmxvd0NhbmNlbGxlZDoyNjMseXBjRmFtaWx5TWFuYWdlRmxvd1N1Y2NlZWRlZDoyNjQseXBjRmFtaWx5TWFuYWdlRmxvd0ZhaWxlZDoyNjUscmVzdG9yZUNvbnRleHRFdmVudDoyMDcsZW1iZWRzQWRFdmVudDozMjcsYXV0b3BsYXlUcmlnZ2VyZWQ6MjA5LGNsaWVudERhdGFFcnJvckV2ZW50OjIxMCxleHBlcmltZW50YWxWc3NWYWxpZGF0aW9uOjIxMSwKdHZodG1sNVRyaWdnZXJlZEV2ZW50OjIxMix0dmh0bWw1RnJhbWV3b3Jrc0ZpZWxkVHJpYWxSZXN1bHQ6MjE2LHR2aHRtbDVGcmFtZXdvcmtzRmllbGRUcmlhbFN0YXJ0OjIyMCxtdXNpY09mZmxpbmVQcmVmZXJlbmNlczoyMTgsd2F0Y2hUaW1lU2VnbWVudDoyMTksYXBwV2lkdGhMYXlvdXRFcnJvcjoyMjEsYWNjb3VudFJlZ2lzdHJ5Q2hhbmdlOjIyNix1c2VyTWVudGlvbkF1dG9Db21wbGV0ZUJveEV2ZW50OjIyNyxkb3dubG9hZFJlY29tbWVuZGF0aW9uRW5hYmxlbWVudFNldHRpbmdFdmVudDoyMjgsbXVzaWNQbGF5YmFja0NvbnRlbnRNb2RlQ2hhbmdlRXZlbnQ6MjMxLG9mZmxpbmVEYk9wZW5Db21wbGV0ZWQ6MjMyLGtpZHNGbG93RXZlbnQ6MjMzLGtpZHNGbG93Q29ycHVzU2VsZWN0ZWRFdmVudDoyMzQsdmlkZW9FZmZlY3RzRXZlbnQ6MjM1LHVucGx1Z2dlZE9wc0VvZ0FuYWx5dGljc0V2ZW50OjIzNixwbGF5YmFja0F1ZGlvUm91dGVFdmVudDoyMzcsaW50ZXJhY3Rpb25Mb2dnaW5nRGVidWdNb2RlRXJyb3I6MjM4LApvZmZsaW5lWXRiUmVmcmVzaGVkOjIzOSxraWRzRmxvd0Vycm9yOjI0MCxtdXNpY0F1dG9wbGF5T25MYXVuY2hBdHRlbXB0ZWQ6MjQyLGRldmljZUNvbnRleHRBY3Rpdml0eUV2ZW50OjI0MyxkZXZpY2VDb250ZXh0RXZlbnQ6MjQ0LHRlbXBsYXRlUmVzb2x1dGlvbkV4Y2VwdGlvbjoyNDUsbXVzaWNTaWRlbG9hZGVkUGxheWxpc3RTZXJ2aWNlQ2FsbGVkOjI0NixlbWJlZHNTdG9yYWdlQWNjZXNzTm90Q2hlY2tlZDoyNDcsZW1iZWRzSGFzU3RvcmFnZUFjY2Vzc1Jlc3VsdDoyNDgsZW1iZWRzSXRwUGxheWVkT25SZWxvYWQ6MjQ5LGVtYmVkc1JlcXVlc3RTdG9yYWdlQWNjZXNzUmVzdWx0OjI1MCxlbWJlZHNTaG91bGRSZXF1ZXN0U3RvcmFnZUFjY2Vzc1Jlc3VsdDoyNTEsZW1iZWRzUmVxdWVzdFN0b3JhZ2VBY2Nlc3NTdGF0ZToyNTYsZW1iZWRzUmVxdWVzdFN0b3JhZ2VBY2Nlc3NGYWlsZWRTdGF0ZToyNTcsZW1iZWRzSXRwV2F0Y2hMYXRlclJlc3VsdDoyNjYsc2VhcmNoU3VnZ2VzdERlY29kaW5nUGF5bG9hZEZhaWx1cmU6MjUyLApzaXJpU2hvcnRjdXRBY3RpdmF0ZWQ6MjUzLHR2aHRtbDVLZXlib2FyZFBlcmZvcm1hbmNlOjI1NCxsYXRlbmN5QWN0aW9uU3BhbjoyNTUsZWxlbWVudHNMb2c6MjY3LHl0YkZpbGVPcGVuZWQ6MjY4LHRmbGl0ZU1vZGVsRXJyb3I6MjY5LGFwaVRlc3Q6MjcwLHlvbmdsZVVzYlNldHVwOjI3MSx0b3VTdHJpa2VJbnRlcnN0aXRpYWxFdmVudDoyNzIsbGl0ZVN0cmVhbVRvU2F2ZToyNzQsYXBwQnVuZGxlQ2xpZW50RXZlbnQ6Mjc1LHl0YkZpbGVDcmVhdGlvbkZhaWxlZDoyNzYsYWROb3RpZnlGYWlsdXJlOjI3OCx5dGJUcmFuc2ZlckZhaWxlZDoyODAsYmxvY2tpbmdSZXF1ZXN0RmFpbGVkOjI4MSxsaXRlQWNjb3VudFNlbGVjdG9yOjI4MixsaXRlQWNjb3VudFVpQ2FsbGJhY2tzOjI4MyxkdW1teVBheWxvYWQ6Mjg0LGJyb3dzZVJlc3BvbnNlVmFsaWRhdGlvbkV2ZW50OjI4NSxlbnRpdGllc0Vycm9yOjI4NixtdXNpY0lvc0JhY2tncm91bmRGZXRjaDoyODcsbWR4Tm90aWZpY2F0aW9uRXZlbnQ6Mjg5LApsYXllcnNWYWxpZGF0aW9uRXJyb3I6MjkwLG11c2ljUHdhSW5zdGFsbGVkOjI5MSxsaXRlQWNjb3VudENsZWFudXA6MjkyLGh0bWw1UGxheWVySGVhbHRoRXZlbnQ6MjkzLHdhdGNoUmVzdG9yZUF0dGVtcHQ6Mjk0LGxpdGVBY2NvdW50U2lnbkluOjI5Nixub3RhaXJlRXZlbnQ6Mjk4LGtpZHNWb2ljZVNlYXJjaEV2ZW50OjI5OSxhZE5vdGlmeUZpbGxlZDozMDAsZGVsYXllZEV2ZW50RHJvcHBlZDozMDEsYW5hbHl0aWNzU2VhcmNoRXZlbnQ6MzAyLHN5c3RlbURhcmtUaGVtZU9wdE91dEV2ZW50OjMwMyxmbG93RXZlbnQ6MzA0LG5ldHdvcmtDb25uZWN0aXZpdHlCYXNlbGluZUV2ZW50OjMwNSx5dGJGaWxlSW1wb3J0ZWQ6MzA2LGRvd25sb2FkU3RyZWFtVXJsRXhwaXJlZDozMDcsZGlyZWN0U2lnbkluRXZlbnQ6MzA4LGx5cmljSW1wcmVzc2lvbkV2ZW50OjMwOSxhY2Nlc3NpYmlsaXR5U3RhdGVFdmVudDozMTAsdG9rZW5SZWZyZXNoRXZlbnQ6MzExLGdlbmVyaWNBdHRlc3RhdGlvbkV4ZWN1dGlvbjozMTIsCnR2aHRtbDVWaWRlb1NlZWs6MzEzLHVucGx1Z2dlZEF1dG9QYXVzZTozMTQsc2NydWJiaW5nRXZlbnQ6MzE1LGJlZHRpbWVSZW1pbmRlckV2ZW50OjMxNyx0dmh0bWw1VW5leHBlY3RlZFJlc3RhcnQ6MzE5LHR2aHRtbDVEZXZpY2VTdG9yYWdlU3RhdHM6NTM1LHR2aHRtbDVTdGFiaWxpdHlUcmFjZUV2ZW50OjQ3OCx0dmh0bWw1T3BlcmF0aW9uSGVhbHRoOjQ2Nyx0dmh0bWw1V2F0Y2hLZXlFdmVudDozMjEsdm9pY2VMYW5ndWFnZUNoYW5nZWQ6MzIyLHR2aHRtbDVMaXZlQ2hhdFN0YXR1czozMjMscGFyZW50VG9vbHNDb3JwdXNTZWxlY3RlZEV2ZW50OjMyNCxvZmZlckFkc0Vucm9sbG1lbnRJbml0aWF0ZWQ6MzI1LG5ldHdvcmtRdWFsaXR5SW50ZXJ2YWxFdmVudDozMjYsZGV2aWNlU3RhcnR1cE1ldHJpY3M6MzI4LGhlYXJ0YmVhdEFjdGlvblBsYXllclRyYW5zaXRpb25lZDozMzAsdHZodG1sNUxpZmVjeWNsZTozMzEsaGVhcnRiZWF0QWN0aW9uUGxheWVySGFsdGVkOjMzMixhZGFwdGl2ZUlubGluZU11dGVkU2V0dGluZ0V2ZW50OjMzMywKbWFpbkFwcExpYnJhcnlMb2FkaW5nU3RhdGU6MzM0LHRoaXJkUGFydHlMb2dNb25pdG9yaW5nRXZlbnQ6MzM2LGFwcFNoZWxsQXNzZXRMb2FkUmVwb3J0OjMzNyx0dmh0bWw1QW5kcm9pZEF0dGVzdGF0aW9uOjMzOCx0dmh0bWw1U3RhcnR1cFNvdW5kRXZlbnQ6MzQwLGlvc0JhY2tncm91bmRSZWZyZXNoVGFzazozNDIsaW9zQmFja2dyb3VuZFByb2Nlc3NpbmdUYXNrOjM0MyxzbGlFdmVudEJhdGNoOjM0NCxwb3N0SW1wcmVzc2lvbkV2ZW50OjM0NixtdXNpY1NpZGVsb2FkZWRQbGF5bGlzdEV4cG9ydDozNDcsaWRiVW5leHBlY3RlZGx5Q2xvc2VkOjM0OCx2b2ljZVNlYXJjaEV2ZW50OjM0OSxtZHhTZXNzaW9uQ2FzdEV2ZW50OjM1MCxpZGJRdW90YUV4Y2VlZGVkOjM1MSxpZGJUcmFuc2FjdGlvbkVuZGVkOjM1MixpZGJUcmFuc2FjdGlvbkFib3J0ZWQ6MzUzLHR2aHRtbDVLZXlib2FyZExvZ2dpbmc6MzU0LGlkYklzU3VwcG9ydGVkQ29tcGxldGVkOjM1NSxjcmVhdG9yU3R1ZGlvTW9iaWxlRXZlbnQ6MzU2LAppZGJEYXRhQ29ycnVwdGVkOjM1NyxwYXJlbnRUb29sc0FwcENob3NlbkV2ZW50OjM1OCx3ZWJWaWV3Qm90dG9tU2hlZXRSZXNpemVkOjM1OSxhY3RpdmVTdGF0ZUNvbnRyb2xsZXJTY3JvbGxQZXJmb3JtYW5jZVN1bW1hcnk6MzYwLG5hdmlnYXRvclZhbGlkYXRpb246MzYxLG1keFNlc3Npb25IZWFydGJlYXQ6MzYyLGNsaWVudEhpbnRzUG9seWZpbGxEaWFnbm9zdGljczozNjMsY2xpZW50SGludHNQb2x5ZmlsbEV2ZW50OjM2NCxwcm9vZk9mT3JpZ2luVG9rZW5FcnJvcjozNjUsa2lkc0FkZGVkQWNjb3VudFN1bW1hcnk6MzY2LG11c2ljV2VhcmFibGVEZXZpY2U6MzY3LHlwY1JlZnVuZEZsb3dFdmVudDozNjgsdHZodG1sNVBsYXliYWNrTWVhc3VyZW1lbnRFdmVudDozNjksdHZodG1sNVdhdGVybWFya01lYXN1cmVtZW50RXZlbnQ6MzcwLGNsaWVudEV4cEdjZlByb3BhZ2F0aW9uRXZlbnQ6MzcxLG1haW5BcHBSZWZlcnJlckludGVudDozNzIsbGVhZGVyTG9ja0VuZGVkOjM3MyxsZWFkZXJMb2NrQWNxdWlyZWQ6Mzc0LApnb29nbGVIYXRzRXZlbnQ6Mzc1LHBlcnNpc3RlbnRMZW5zTGF1bmNoRXZlbnQ6Mzc2LHBhcmVudFRvb2xzQ2hpbGRXZWxjb21lQ2hvc2VuRXZlbnQ6Mzc4LGJyb3dzZVRodW1ibmFpbFByZWxvYWRFdmVudDozNzksZmluYWxQYXlsb2FkOjM4MCxtZHhEaWFsQWRkaXRpb25hbERhdGFVcGRhdGVFdmVudDozODEsd2ViT3JjaGVzdHJhdGlvblRhc2tMaWZlY3ljbGVSZWNvcmQ6MzgyLHN0YXJ0dXBTaWduYWxFdmVudDozODQsYWNjb3VudEVycm9yOjM4NSxnbXNEZXZpY2VDaGVja0V2ZW50OjM4NixhY2NvdW50U2VsZWN0b3JFdmVudDozODgsYWNjb3VudFVpQ2FsbGJhY2tzOjM4OSxtZHhEaWFsQWRkaXRpb25hbERhdGFQcm9iZUV2ZW50OjM5MCxkb3dubG9hZHNTZWFyY2hJY2luZ0FwaVN0YXRzOjM5MSxkb3dubG9hZHNTZWFyY2hJbmRleFVwZGF0ZWRFdmVudDozOTcsZG93bmxvYWRzU2VhcmNoSW5kZXhTbmFwc2hvdDozOTgsZGF0YVB1c2hDbGllbnRFdmVudDozOTIsa2lkc0NhdGVnb3J5U2VsZWN0ZWRFdmVudDozOTMsCm1keERldmljZU1hbmFnZW1lbnRTbmFwc2hvdEV2ZW50OjM5NCxwcmVmZXRjaFJlcXVlc3RlZDozOTUscHJlZmV0Y2hhYmxlQ29tbWFuZEV4ZWN1dGVkOjM5NixnZWxEZWJ1Z2dpbmdFdmVudDozOTksd2ViTGlua1R0c1BsYXlFbmQ6NDAwLGNsaXBWaWV3SW52YWxpZDo0MDEscGVyc2lzdGVudFN0b3JhZ2VTdGF0ZUNoZWNrZWQ6NDAzLGNhY2hlV2lwZW91dEV2ZW50OjQwNCxwbGF5ZXJFdmVudDo0MTAsc2Z2RWZmZWN0UGlwZWxpbmVTdGFydGVkRXZlbnQ6NDEyLHNmdkVmZmVjdFBpcGVsaW5lUGF1c2VkRXZlbnQ6NDI5LHNmdkVmZmVjdFBpcGVsaW5lRW5kZWRFdmVudDo0MTMsc2Z2RWZmZWN0Q2hvc2VuRXZlbnQ6NDE0LHNmdkVmZmVjdExvYWRlZEV2ZW50OjQxNSxzZnZFZmZlY3RVc2VySW50ZXJhY3Rpb25FdmVudDo0NjUsc2Z2RWZmZWN0Rmlyc3RGcmFtZVByb2Nlc3NlZExhdGVuY3lFdmVudDo0MTYsc2Z2RWZmZWN0QWdncmVnYXRlZEZyYW1lc1Byb2Nlc3NlZExhdGVuY3lFdmVudDo0MTcsCnNmdkVmZmVjdEFnZ3JlZ2F0ZWRGcmFtZXNEcm9wcGVkRXZlbnQ6NDE4LHNmdkVmZmVjdFBpcGVsaW5lRXJyb3JFdmVudDo0MzAsc2Z2RWZmZWN0R3JhcGhGcm96ZW5FdmVudDo0MTksc2Z2RWZmZWN0R2xUaHJlYWRCbG9ja2VkRXZlbnQ6NDIwLG1kZVFvc0V2ZW50OjUxMCxtZGVWaWRlb0NoYW5nZWRFdmVudDo0NDIsbWRlUGxheWVyUGVyZm9ybWFuY2VNZXRyaWNzOjQ3MixtZGVFeHBvcnRlckV2ZW50OjQ5NyxnZW5lcmljQ2xpZW50RXhwZXJpbWVudEV2ZW50OjQyMyxob21lUHJlbG9hZFRhc2tTY2hlZHVsZWQ6NDI0LGhvbWVQcmVsb2FkVGFza0V4ZWN1dGVkOjQyNSxob21lUHJlbG9hZENhY2hlSGl0OjQyNixwb2x5bWVyUHJvcGVydHlDaGFuZ2VkSW5PYnNlcnZlcjo0MjcsYXBwbGljYXRpb25TdGFydGVkOjQzMSxuZXR3b3JrQ3JvbmV0UnR0QmF0Y2g6NDMyLG5ldHdvcmtDcm9uZXRSdHRTdW1tYXJ5OjQzMyxyZXBlYXRDaGFwdGVyTG9vcEV2ZW50OjQzNixzZWVrQ2FuY2VsbGF0aW9uRXZlbnQ6NDYyLApsb2NrTW9kZVRpbWVvdXRFdmVudDo0ODMsZXh0ZXJuYWxWaWRlb1NoYXJlVG9Zb3V0dWJlQXR0ZW1wdDo1MDEscGFyZW50Q29kZUV2ZW50OjUwMixvZmZsaW5lVHJhbnNmZXJTdGFydGVkOjQsbXVzaWNPZmZsaW5lTWl4dGFwZVByZWZlcmVuY2VzQ2hhbmdlZDoxNixtYW5nb0RhaWx5TmV3VmlkZW9zTm90aWZpY2F0aW9uQXR0ZW1wdDo0MCxtYW5nb0RhaWx5TmV3VmlkZW9zTm90aWZpY2F0aW9uRXJyb3I6NzcsZHR3c1BsYXliYWNrU3RhcnRlZDoxMTIsZHR3c1RpbGVGZXRjaFN0YXJ0ZWQ6MTEzLGR0d3NUaWxlRmV0Y2hDb21wbGV0ZWQ6MTE0LGR0d3NUaWxlRmV0Y2hTdGF0dXNDaGFuZ2VkOjE0NSxkdHdzS2V5ZnJhbWVEZWNvZGVyQnVmZmVyU2VudDoxMTUsZHR3c1RpbGVVbmRlcmZsb3dlZE9uTm9ua2V5ZnJhbWU6MTE2LGR0d3NCYWNrZmlsbEZldGNoU3RhdHVzQ2hhbmdlZDoxNDMsZHR3c0JhY2tmaWxsVW5kZXJmbG93ZWQ6MTE3LGR0d3NBZGFwdGl2ZUxldmVsQ2hhbmdlZDoxMjgsCmJsb2NraW5nVmlzaXRvcklkVGltZW91dDoyNzcsbGl0ZVNvY2lhbDoxOCxtb2JpbGVKc0ludm9jYXRpb246Mjk3LGJpc2NvdHRpQmFzZWREZXRlY3Rpb246NDM5LGNvV2F0Y2hTdGF0ZUNoYW5nZTo0NDAsZW1iZWRzVmlkZW9EYXRhRGlkQ2hhbmdlOjQ0MSxzaG9ydHNGaXJzdDo0NDMsY3J1aXNlQ29udHJvbEV2ZW50OjQ0NSxxb2VDbGllbnRMb2dnaW5nQ29udGV4dDo0NDYsYXR2UmVjb21tZW5kYXRpb25Kb2JFeGVjdXRlZDo0NDcsdHZodG1sNVVzZXJGZWVkYmFjazo0NDgscHJvZHVjZXJQcm9qZWN0Q3JlYXRlZDo0NDkscHJvZHVjZXJQcm9qZWN0T3BlbmVkOjQ1MCxwcm9kdWNlclByb2plY3REZWxldGVkOjQ1MSxwcm9kdWNlclByb2plY3RFbGVtZW50QWRkZWQ6NDUzLHByb2R1Y2VyUHJvamVjdEVsZW1lbnRSZW1vdmVkOjQ1NCxwcm9kdWNlckFwcFN0YXRlQ2hhbmdlOjUwOSxwcm9kdWNlclByb2plY3REaXNrSW5zdWZmaWNpZW50RXhwb3J0RmFpbHVyZTo1MTYscHJvZHVjZXJNZWRpYVNlcnZpY2VzUmVzZXREZXRhaWxzOjUyMiwKdHZodG1sNVNob3dDbG9ja0V2ZW50OjQ1NSxkZXZpY2VDYXBhYmlsaXR5Q2hlY2tNZXRyaWNzOjQ1Nix5b3V0dWJlQ2xlYXJjdXRFdmVudDo0NjEsb2ZmbGluZUJyb3dzZUZhbGxiYWNrRXZlbnQ6NDYzLGdldEN0dlRva2VuRXZlbnQ6NDY0LHN0YXJ0dXBEcm9wcGVkRnJhbWVzU3VtbWFyeTo0NjYsc2NyZWVuc2hvdEV2ZW50OjQ2OCxtaW5pQXBwUGxheUV2ZW50OjQ2OSxlbGVtZW50c0RlYnVnQ291bnRlcnM6NDcwLGZvbnRMb2FkRXZlbnQ6NDcxLHdlYktpbGxzd2l0Y2hSZWNlaXZlZDo0NzMsd2ViS2lsbHN3aXRjaEV4ZWN1dGVkOjQ3NCxjYW1lcmFPcGVuRXZlbnQ6NDc1LG1hbnVhbFNtb290aG5lc3NNZWFzdXJlbWVudDo0NzYsdHZodG1sNUFwcFF1YWxpdHlFdmVudDo0NzcscG9seW1lclByb3BlcnR5QWNjZXNzRXZlbnQ6NDc5LG1pbmlBcHBTZGtVc2FnZTo0ODAsY29iYWx0VGVsZW1ldHJ5RXZlbnQ6NDgxLGNyb3NzRGV2aWNlUGxheWJhY2s6NDgyLGNoYW5uZWxDcmVhdGVkV2l0aE9iYWtlSW1hZ2U6NDg0LApjaGFubmVsRWRpdGVkV2l0aE9iYWtlSW1hZ2U6NDg1LG9mZmxpbmVEZWxldGVFdmVudDo0ODYsY3Jvc3NEZXZpY2VOb3RpZmljYXRpb25UcmFuc2Zlcjo0ODcsYW5kcm9pZEludGVudEV2ZW50OjQ4OCx1bnBsdWdnZWRBbWJpZW50SW50ZXJsdWRlc0NvdW50ZXJmYWN0dWFsRXZlbnQ6NDg5LGtleVBsYXlzUGxheWJhY2s6NDkwLHNob3J0c0NyZWF0aW9uRmFsbGJhY2tFdmVudDo0OTMsdnNzRGF0YTo0OTEsY2FzdE1hdGNoOjQ5NCxtaW5pQXBwUGVyZm9ybWFuY2VNZXRyaWNzOjQ5NSx1c2VyRmVlZGJhY2tFdmVudDo0OTYsa2lkc0d1ZXN0U2Vzc2lvbk1pc21hdGNoOjQ5OCxtdXNpY1NpZGVsb2FkZWRQbGF5bGlzdE1pZ3JhdGlvbkV2ZW50OjQ5OSxzbGVlcFRpbWVyU2Vzc2lvbkZpbmlzaEV2ZW50OjUwMCx3YXRjaEVwUHJvbW9Db25mbGljdDo1MDMsaW5uZXJ0dWJlUmVzcG9uc2VDYWNoZU1ldHJpY3M6NTA1LG1pbmlBcHBBZEV2ZW50OjUwNixkYXRhUGxhblVwc2VsbEV2ZW50OjUwNywKcHJvZHVjZXJQcm9qZWN0UmVuYW1lZDo1MDgscHJvZHVjZXJNZWRpYVNlbGVjdGlvbkV2ZW50OjUxMSxlbWJlZHNBdXRvcGxheVN0YXR1c0NoYW5nZWQ6NTEyLHJlbW90ZUNvbm5lY3RFdmVudDo1MTMsY29ubmVjdGVkU2Vzc2lvbk1pc2F0dHJpYnV0aW9uRXZlbnQ6NTE0LHByb2R1Y2VyUHJvamVjdEVsZW1lbnRNb2RpZmllZDo1MTUsYWRzU2VlbkNsaWVudExvZ2dpbmc6NTE3LHByb2R1Y2VyRXZlbnQ6NTE4LHR2aHRtbDVDbGVhblN0YXJ0OjUxOSxkZXZpY2VBY2NvdW50TWV0cmljc0V2ZW50OjUyMCxkZXJwTG9nRXZlbnQ6NTIxLHBsYXlhYmxlc1BvcnRhbEV2ZW50OjUyMyxpcFZhbGlkYXRpb25TdGFydGVkOjUyNCxpcFZhbGlkYXRpb25SZWNlaXZlZDo1MjUscmVlbHNTZXF1ZW5jZU11dGF0aW9uRXZlbnQ6NTI3LHdhdGNoWm9vbVN0YXRlQ2hhbmdlOjUyOCxtZXRhZGF0YUVkaXRvckV2ZW50OjUyOSxraWRzUHJpc21hRGVlcGxpbmtzRXZlbnQ6NTMwLGNyZWF0aW9uT3JjaGVzdHJhdGlvbkV2ZW50OjUzMSwKY29vcmRpbmF0ZWRTYW1wbGluZ1RyaWdnZXJlZDo1MzIscmVjYXBTY3JlZW5zaG90RXZlbnQ6NTM0LG1keExvY2FsTmV0d29ya1Blcm1pc3Npb25SZXF1ZXN0RXZlbnQ6NTM2LG1keExvY2FsTmV0d29ya1Blcm1pc3Npb25SZXNwb25zZUV2ZW50OjUzNyxzZXNzaW9uUmVwbGF5RXZlbnQ6NTM4LHNlc3Npb25SZXBsYXlTdGF0dXNFdmVudDo1MzksbG9nZ2luZ1JlbGlhYmlsaXR5UHJvYmU6NTQwLGtleVZhbHVlU3RvcmVTdGF0c0V2ZW50OjU0MSxkZXZpY2VMb2NhdGlvblBlcm1pc3Npb25FdmVudDo1NDIscmVtb3RlQ29udHJvbFN0YXJ0ZWQ6NTQzLHJlbW90ZUNvbnRyb2xDb21wbGV0ZWQ6NTQ0LHJlZWxzQWRzRXZlbnRzOjU0NSx5dGxyTG9hZGVyVGVzdEhhcm5lc3NFdmVudDo1NDcsYmlvbWV0cmljQXV0aGVudGljYXRpb25FdmVudDo1NDgsbWFpbkFwcExpZmVjeWNsZUV2ZW50OjU0OSxtdXNpY0Rvd25sb2FkQmFja2dyb3VuZENvbnRpbnVlZFByb2Nlc3NpbmdUYXNrOjU1MCxtdXNpY01ldGFkYXRhTWlzbWF0Y2hFdmVudDo1NTEsCnNjcm9sbFRvQ29tcG9uZW50Q29tcGxldGVkOjU1MixlbnRpdHlTdG9yZVRlbGVtZXRyeTo1NTMsc3RyZWFtaW5nRGFya0xhdW5jaEV2ZW50OjU1NCxjaGlsZEFjY291bnRzRGlzcGxheUV2ZW50OjU1NSx0dmZhc1BsYXliYWNrQ29udGV4dDo1NTcsbWRlQzJQYUV2ZW50OjU1OX07dmFyIFZtPV8uJGwoIlNlcnZpY2VXb3JrZXJMb2dzRGF0YWJhc2UiLHtzZTp7U1dIZWFsdGhMb2c6e1BkOjF9fSxzaGFyZWQ6ITAsdXBncmFkZTooYSxiKT0+e2IoMSkmJl8ub2woXy5rbChhLCJTV0hlYWx0aExvZyIse2tleVBhdGg6ImlkIixhdXRvSW5jcmVtZW50OiEwfSksInN3SGVhbHRoTmV3UmVxdWVzdCIsWyJpbnRlcmZhY2UiLCJ0aW1lc3RhbXAiXSl9LHZlcnNpb246MX0pO3ZhciBjbj17fSxibj0wO3ZhciBkbjt2YXIgaG49Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmo9bmV3IE1hcDt0aGlzLm89ITF9cmVxdWVzdENvbXBsZXRlKGEsYil7YiYmKHRoaXMubz0hMCk7YT10aGlzLnJlbW92ZVBhcmFtcyhhKTt0aGlzLmouZ2V0KGEpfHx0aGlzLmouc2V0KGEsYil9aXNFbmRwb2ludENGUihhKXthPXRoaXMucmVtb3ZlUGFyYW1zKGEpO3JldHVybihhPXRoaXMuai5nZXQoYSkpPyExOmE9PT0hMSYmdGhpcy5vPyEwOm51bGx9cmVtb3ZlUGFyYW1zKGEpe3JldHVybiBhLnNwbGl0KCI/IilbMF19fTtobi5wcm90b3R5cGUucmVtb3ZlUGFyYW1zPWhuLnByb3RvdHlwZS5yZW1vdmVQYXJhbXM7aG4ucHJvdG90eXBlLmlzRW5kcG9pbnRDRlI9aG4ucHJvdG90eXBlLmlzRW5kcG9pbnRDRlI7aG4ucHJvdG90eXBlLnJlcXVlc3RDb21wbGV0ZT1obi5wcm90b3R5cGUucmVxdWVzdENvbXBsZXRlO2huLmdldEluc3RhbmNlPWpuO3ZhciBrbj1jbGFzcyBleHRlbmRzIF8uZ2Z7Y29uc3RydWN0b3IoKXtzdXBlcigpO3RoaXMudj0hMTt0aGlzLmo9bGYoKTt0aGlzLmoubGlzdGVuKCJuZXR3b3Jrc3RhdHVzLW9ubGluZSIsKCk9PntpZih0aGlzLnYmJl8ueCgib2ZmbGluZV9lcnJvcl9oYW5kbGluZyIpKXt2YXIgYT1mbigpLmdldCgiZXJyb3JzIiwhMCk7aWYoYSl7Zm9yKGxldCBiIGluIGEpaWYoYVtiXSl7bGV0IGM9bmV3IF8uWGooYiwic2VudCB2aWEgb2ZmbGluZV9lcnJvcnMiKTtjLm5hbWU9YVtiXS5uYW1lO2Muc3RhY2s9YVtiXS5zdGFjaztjLmxldmVsPWFbYl0ubGV2ZWw7Xy5VaShjKX1mbigpLnNldCgiZXJyb3JzIix7fSwyNTkyRTMsITApfX19KX1TYigpe3JldHVybiB0aGlzLmouU2IoKX1lZihhKXt0aGlzLmouaXNPbmxpbmU9YX1xdygpe3ZhciBhPXdpbmRvdy5uYXZpZ2F0b3Iub25MaW5lO3JldHVybiBhPT09dm9pZCAwPyEwOmF9Q3YoKXt0aGlzLnY9ITB9bGlzdGVuKGEsYil7cmV0dXJuIHRoaXMuai5saXN0ZW4oYSwKYil9UWooYSl7cmV0dXJuIG1mKHRoaXMuaixhKX19O2tuLnByb3RvdHlwZS5zZW5kTmV0d29ya0NoZWNrUmVxdWVzdD1rbi5wcm90b3R5cGUuUWo7a24ucHJvdG90eXBlLmxpc3Rlbj1rbi5wcm90b3R5cGUubGlzdGVuO2tuLnByb3RvdHlwZS5lbmFibGVFcnJvckZsdXNoaW5nPWtuLnByb3RvdHlwZS5Ddjtrbi5wcm90b3R5cGUuZ2V0V2luZG93U3RhdHVzPWtuLnByb3RvdHlwZS5xdztrbi5wcm90b3R5cGUubmV0d29ya1N0YXR1c0hpbnQ9a24ucHJvdG90eXBlLmVmO2tuLnByb3RvdHlwZS5pc05ldHdvcmtBdmFpbGFibGU9a24ucHJvdG90eXBlLlNiO2tuLmdldEluc3RhbmNlPWxuO18uT3M9Y2xhc3MgZXh0ZW5kcyBfLmdme2NvbnN0cnVjdG9yKGE9e30pe3N1cGVyKCk7dGhpcy5qPXRoaXMuRD0wO3RoaXMudj1sbigpO3ZhciBiPV8uc2EoInl0Lm5ldHdvcmtTdGF0dXNNYW5hZ2VyLmluc3RhbmNlLmxpc3RlbiIpLmJpbmQodGhpcy52KTtiJiYoYS5yYXRlTGltaXQ/KHRoaXMucmF0ZUxpbWl0PWEucmF0ZUxpbWl0LGIoIm5ldHdvcmtzdGF0dXMtb25saW5lIiwoKT0+e21uKHRoaXMsInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vbmxpbmUiKX0pLGIoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIsKCk9Pnttbih0aGlzLCJwdWJsaWN5dG5ldHdvcmtzdGF0dXMtb2ZmbGluZSIpfSkpOihiKCJuZXR3b3Jrc3RhdHVzLW9ubGluZSIsKCk9Pnt0aGlzLmRpc3BhdGNoRXZlbnQoInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vbmxpbmUiKX0pLGIoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIsKCk9Pnt0aGlzLmRpc3BhdGNoRXZlbnQoInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vZmZsaW5lIil9KSkpfVNiKCl7dmFyIGE9Cl8uc2EoInl0Lm5ldHdvcmtTdGF0dXNNYW5hZ2VyLmluc3RhbmNlLmlzTmV0d29ya0F2YWlsYWJsZSIpO3JldHVybiBhP2EuYmluZCh0aGlzLnYpKCk6ITB9ZWYoYSl7dmFyIGI9Xy5zYSgieXQubmV0d29ya1N0YXR1c01hbmFnZXIuaW5zdGFuY2UubmV0d29ya1N0YXR1c0hpbnQiKS5iaW5kKHRoaXMudik7YiYmYihhKX1hc3luYyBRaihhKXt2YXIgYj1fLnNhKCJ5dC5uZXR3b3JrU3RhdHVzTWFuYWdlci5pbnN0YW5jZS5zZW5kTmV0d29ya0NoZWNrUmVxdWVzdCIpLmJpbmQodGhpcy52KTtyZXR1cm4gXy54KCJza2lwX25ldHdvcmtfY2hlY2tfaWZfY2ZyIikmJmpuKCkuaXNFbmRwb2ludENGUigiZ2VuZXJhdGVfMjA0Iik/bmV3IFByb21pc2UoYz0+e3RoaXMuZWYod2luZG93Lm5hdmlnYXRvcj8ub25MaW5lfHwhMCk7Yyh0aGlzLlNiKCkpfSk6Yj9iKGEpOiEwfX07dmFyIFBzLG5uPWNsYXNzIGV4dGVuZHMgTnN7Y29uc3RydWN0b3IoKXtQc3x8KFBzPW5ldyBfLk9zKHtTSjohMCxKSTohMH0pKTtzdXBlcih7Y2I6e091OlRtLEZmOlNtLFdwOlBtLEF5OlFtLG5uOlJtLHNldDpPbX0sU2E6UHMsaGFuZGxlRXJyb3I6KGEsYixjKT0+e3ZhciBkPWM/LmVycm9yPy5jb2RlO2Q9PT00MDB8fGQ9PT00MTU/KGE9bmV3IF8uWGooYS5tZXNzYWdlLGIsYz8uZXJyb3I/LmNvZGUpLF8uV2koYSx2b2lkIDAsdm9pZCAwLHZvaWQgMCwhMCkpOl8uVWkoYSl9LFRmOl8uV2ksR2Q6cW4sbm93Ol8uZWwsTHM6Z24sRGM6Xy5DaygpLEttOiJwdWJsaWN5dG5ldHdvcmtzdGF0dXMtb25saW5lIixGbToicHVibGljeXRuZXR3b3Jrc3RhdHVzLW9mZmxpbmUiLE9pOiEwLERpOi4xLEtqOl8uc2ooInBvdGVudGlhbF9lc2ZfZXJyb3JfbGltaXQiLDEwKSxLYTpfLngsYWg6IShfLldqKCkmJl8uc24oKSl9KTt0aGlzLkI9bmV3IF8uY3M7Xy54KCJuZXR3b3JrbGVzc19pbW1lZGlhdGVseV9kcm9wX2FsbF9yZXF1ZXN0cyIpJiYKVW0oKTtYbCgiTG9nc0RhdGFiYXNlVjIiKX13cml0ZVRoZW5TZW5kKGEsYil7Ynx8KGI9e30pO2I9cm4oYSxiKTtfLldqKCl8fCh0aGlzLk9jPSExKTtzdXBlci53cml0ZVRoZW5TZW5kKGEsYil9c2VuZFRoZW5Xcml0ZShhLGIsYyl7Ynx8KGI9e30pO2I9cm4oYSxiKTtfLldqKCl8fCh0aGlzLk9jPSExKTtzdXBlci5zZW5kVGhlbldyaXRlKGEsYixjKX1zZW5kQW5kV3JpdGUoYSxiKXtifHwoYj17fSk7Yj1ybihhLGIpO18uV2ooKXx8KHRoaXMuT2M9ITEpO3N1cGVyLnNlbmRBbmRXcml0ZShhLGIpfWF3YWl0SW5pdGlhbGl6YXRpb24oKXtyZXR1cm4gdGhpcy5CLnByb21pc2V9fTtfLnVuPSExO18udG49Xy51Lnl0TmV0d29ya2xlc3NMb2dnaW5nSW5pdGlhbGl6YXRpb25PcHRpb25zfHx7aXNOd2xJbml0aWFsaXplZDpfLnVufTtfLnJhKCJ5dE5ldHdvcmtsZXNzTG9nZ2luZ0luaXRpYWxpemF0aW9uT3B0aW9ucyIsXy50bik7dmFyIERwPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuY29uZmlnXz1udWxsO2E/dGhpcy5jb25maWdfPWE6a20oKSYmKHRoaXMuY29uZmlnXz1sbSgpKX1pc1JlYWR5KCl7IXRoaXMuY29uZmlnXyYma20oKSYmKHRoaXMuY29uZmlnXz1sbSgpKTtyZXR1cm4hIXRoaXMuY29uZmlnX319O3ZhciBRcztRcz1fLnUueXRQdWJzdWJQdWJzdWJJbnN0YW5jZXx8bmV3IF8udGg7Xy5Scz1fLnUueXRQdWJzdWJQdWJzdWJTdWJzY3JpYmVkS2V5c3x8e307Xy5Tcz1fLnUueXRQdWJzdWJQdWJzdWJUb3BpY1RvS2V5c3x8e307Xy5Ucz1fLnUueXRQdWJzdWJQdWJzdWJJc1N5bmNocm9ub3VzfHx7fTtfLnRoLnByb3RvdHlwZS5zdWJzY3JpYmU9Xy50aC5wcm90b3R5cGUuc3Vic2NyaWJlO18udGgucHJvdG90eXBlLnVuc3Vic2NyaWJlQnlLZXk9Xy50aC5wcm90b3R5cGUuY2k7Xy50aC5wcm90b3R5cGUucHVibGlzaD1fLnRoLnByb3RvdHlwZS5wdWJsaXNoO18udGgucHJvdG90eXBlLmNsZWFyPV8udGgucHJvdG90eXBlLmNsZWFyO18ucmEoInl0UHVic3ViUHVic3ViSW5zdGFuY2UiLFFzKTtfLnJhKCJ5dFB1YnN1YlB1YnN1YlRvcGljVG9LZXlzIixfLlNzKTtfLnJhKCJ5dFB1YnN1YlB1YnN1YklzU3luY2hyb25vdXMiLF8uVHMpOwpfLnJhKCJ5dFB1YnN1YlB1YnN1YlN1YnNjcmliZWRLZXlzIixfLlJzKTt2YXIgQ249RGF0ZS5ub3coKS50b1N0cmluZygpO0RhdGUubm93KCk7Xy5Mbj1TeW1ib2woIkNhIik7dmFyIEhuPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMua2V5PWF9fTt2YXIgT249Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnY9bmV3IE1hcDt0aGlzLmo9bmV3IE1hcDt0aGlzLm89bmV3IE1hcH1yZXNvbHZlKGEpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBfLlVzJiZhIGluc3RhbmNlb2YgXy5Vcz9Lbih0aGlzLGEpOmEgaW5zdGFuY2VvZiBIbj9Kbih0aGlzLGEua2V5LFtdLCEwKTpKbih0aGlzLGEsW10pfX07Xy5Wcz1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm5hbWU9YX10b1N0cmluZygpe3JldHVybmBJbmplY3Rpb25Ub2tlbigke3RoaXMubmFtZX0pYH19O3ZhciBObjt2YXIgUG49d2luZG93O3ZhciBmbz1fLngoIndlYl9lbmFibGVfbGlmZWN5Y2xlX21vbml0b3JpbmciKSYmUW4oKSE9PTAsVW49Xy54KCJ3ZWJfZW5hYmxlX2xpZmVjeWNsZV9tb25pdG9yaW5nIik7dmFyIGVvPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuc2NoZWR1bGVyPV8uQ2soKTt0aGlzLm89bmV3IF8uY3M7dGhpcy5qPWE7Zm9yKGxldCBjPTA7Yzx0aGlzLmoubGVuZ3RoO2MrKyl7bGV0IGQ9dGhpcy5qW2NdO2E9KCk9PntkLnhoKCk7dGhpcy5qW2NdLk5qPSEwO3RoaXMuai5ldmVyeShlPT5lLk5qPT09ITApJiZ0aGlzLm8ucmVzb2x2ZSgpfTt2YXIgYj10aGlzLmdldFByaW9yaXR5KGQpO2I9dGhpcy5zY2hlZHVsZXIuR2EoYSxiKTt0aGlzLmpbY109ey4uLmQseGg6YSxqb2JJZDpifX19Y2FuY2VsKCl7Zm9yKGxldCBhIG9mIHRoaXMuailhLmpvYklkPT09dm9pZCAwfHxhLk5qfHx0aGlzLnNjaGVkdWxlci5BYShhLmpvYklkKSxhLk5qPSEwO3RoaXMuby5yZXNvbHZlKCl9Z2V0UHJpb3JpdHkoYSl7cmV0dXJuIGEucHJpb3JpdHk/PzB9fTtfLldzPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuc3RhdGU9YTt0aGlzLnBsdWdpbnM9W107dGhpcy52PXZvaWQgMDt0aGlzLkI9e307Zm8mJlJuKHRoaXMuc3RhdGUpfWdldCBjdXJyZW50U3RhdGUoKXtyZXR1cm4gdGhpcy5zdGF0ZX1pbnN0YWxsKGEpe3RoaXMucGx1Z2lucy5wdXNoKGEpO3JldHVybiB0aGlzfXVuaW5zdGFsbCguLi5hKXthLmZvckVhY2goYj0+e2I9dGhpcy5wbHVnaW5zLmluZGV4T2YoYik7Yj4tMSYmdGhpcy5wbHVnaW5zLnNwbGljZShiLDEpfSl9dHJhbnNpdGlvbihhLGIpe2ZvJiZTbih0aGlzLnN0YXRlKTt2YXIgYz10aGlzLnRyYW5zaXRpb25zLmZpbmQoZD0+QXJyYXkuaXNBcnJheShkLmZyb20pP2QuZnJvbS5maW5kKGU9PmU9PT10aGlzLnN0YXRlJiZkLnRvPT09YSk6ZC5mcm9tPT09dGhpcy5zdGF0ZSYmZC50bz09PWEpO2lmKGMpe3RoaXMuaiYmKFRuKHRoaXMuaiksdGhpcy5qPXZvaWQgMCk7Vm4odGhpcyxhLGIpO3RoaXMuc3RhdGU9YTtmbyYmUm4odGhpcy5zdGF0ZSk7CmM9Yy5hY3Rpb24uYmluZCh0aGlzKTtsZXQgZD10aGlzLnBsdWdpbnMuZmlsdGVyKGU9PmVbYV0pLm1hcChlPT5lW2FdKTtjKFpuKHRoaXMsZCksYil9ZWxzZSB0aHJvdyBFcnJvcigiR2FgIit0aGlzLnN0YXRlKyJgIithKTt9fTt2YXIgaG89Y2xhc3MgZXh0ZW5kcyBfLldze2NvbnN0cnVjdG9yKCl7c3VwZXIoIm5vbmUiKTt0aGlzLm89bnVsbDt0aGlzLnY9MTA7dGhpcy50cmFuc2l0aW9ucz1be2Zyb206Im5vbmUiLHRvOiJhcHBsaWNhdGlvbl9uYXZpZ2F0aW5nIixhY3Rpb246dGhpcy5EfSx7ZnJvbToiYXBwbGljYXRpb25fbmF2aWdhdGluZyIsdG86Im5vbmUiLGFjdGlvbjp0aGlzLkt9LHtmcm9tOiJhcHBsaWNhdGlvbl9uYXZpZ2F0aW5nIix0bzoiYXBwbGljYXRpb25fbmF2aWdhdGluZyIsYWN0aW9uOigpPT57fX0se2Zyb206Im5vbmUiLHRvOiJub25lIixhY3Rpb246KCk9Pnt9fV19RChhLGIpe3RoaXMubz1fLllqKCgpPT57dGhpcy5jdXJyZW50U3RhdGU9PT0iYXBwbGljYXRpb25fbmF2aWdhdGluZyImJnRoaXMudHJhbnNpdGlvbigibm9uZSIpfSw1RTMpO2EoYj8uZXZlbnQpfUsoYSxiKXt0aGlzLm8mJihfLmpmLkFhKHRoaXMubyksdGhpcy5vPW51bGwpO2EoYj8uZXZlbnQpfX0sZ287dmFyIHJvPV8uc2ooInl0Y3NpX2RlYnVnX21heF9zaXplIiwxMDApO3ZhciBYcz0wO3ZhciB5cT1jbGFzcyBleHRlbmRzIF8ucG17Y29uc3RydWN0b3IoYSxiKXtzdXBlcihhcmd1bWVudHMpO3RoaXMuaj1hO3RoaXMudGltZXI9Yn19LHhxPW5ldyBfLnFtKCJhZnQtcmVjb3JkZWQiLHlxKTt2YXIgTnA9W3twbTphPT5gQ2Fubm90IHJlYWQgcHJvcGVydHkgJyR7YS5rZXl9J2AsSmo6e0Vycm9yOlt7cmVnZXhwOi8oUGVybWlzc2lvbiBkZW5pZWQpIHRvIGFjY2VzcyBwcm9wZXJ0eSAiKFteJ10rKSIvLGdyb3VwczpbInJlYXNvbiIsImtleSJdfV0sVHlwZUVycm9yOlt7cmVnZXhwOi9DYW5ub3QgcmVhZCBwcm9wZXJ0eSAnKFteJ10rKScgb2YgKG51bGx8dW5kZWZpbmVkKS8sZ3JvdXBzOlsia2V5IiwidmFsdWUiXX0se3JlZ2V4cDovXHU2NWUwXHU2Y2Q1XHU4M2I3XHU1M2Q2XHU2NzJhXHU1YjlhXHU0ZTQ5XHU2MjE2IChudWxsfHVuZGVmaW5lZCkgXHU1ZjE1XHU3NTI4XHU3Njg0XHU1YzVlXHU2MDI3XHUyMDFjKFteXHUyMDFkXSspXHUyMDFkLyxncm91cHM6WyJ2YWx1ZSIsImtleSJdfSx7cmVnZXhwOi9cdWM4MTVcdWM3NThcdWI0MThcdWM5YzAgXHVjNTRhXHVjNzRjIFx1YjYxMFx1YjI5NCAobnVsbHx1bmRlZmluZWQpIFx1Y2MzOFx1Yzg3MFx1Yzc3OCAnKFteJ10rKScgXHVjMThkXHVjMTMxXHVjNzQ0IFx1YWMwMFx1YzgzOFx1YzYyYyBcdWMyMTggXHVjNWM2XHVjMmI1XHViMmM4XHViMmU0Li8sCmdyb3VwczpbInZhbHVlIiwia2V5Il19LHtyZWdleHA6L05vIHNlIHB1ZWRlIG9idGVuZXIgbGEgcHJvcGllZGFkICcoW14nXSspJyBkZSByZWZlcmVuY2lhIG51bGEgbyBzaW4gZGVmaW5pci8sZ3JvdXBzOlsia2V5Il19LHtyZWdleHA6L1VuYWJsZSB0byBnZXQgcHJvcGVydHkgJyhbXiddKyknIG9mICh1bmRlZmluZWQgb3IgbnVsbCkgcmVmZXJlbmNlLyxncm91cHM6WyJrZXkiLCJ2YWx1ZSJdfSx7cmVnZXhwOi8obnVsbCkgaXMgbm90IGFuIG9iamVjdCBcKGV2YWx1YXRpbmcgJyg/OihbXi5dKylcLik/KFteJ10rKSdcKS8sZ3JvdXBzOlsidmFsdWUiLCJiYXNlIiwia2V5Il19XX19LHtwbTphPT5gQ2Fubm90IGNhbGwgJyR7YS5rZXl9J2AsSmo6e1R5cGVFcnJvcjpbe3JlZ2V4cDovKD86KFteIF0rKT9cLik/KFteIF0rKSBpcyBub3QgYSBmdW5jdGlvbi8sZ3JvdXBzOlsiYmFzZSIsImtleSJdfSx7cmVnZXhwOi8oW14gXSspIGNhbGxlZCBvbiAobnVsbCBvciB1bmRlZmluZWQpLywKZ3JvdXBzOlsia2V5IiwidmFsdWUiXX0se3JlZ2V4cDovT2JqZWN0ICguKikgaGFzIG5vIG1ldGhvZCAnKFteIF0rKScvLGdyb3VwczpbImJhc2UiLCJrZXkiXX0se3JlZ2V4cDovT2JqZWN0IGRvZXNuJ3Qgc3VwcG9ydCBwcm9wZXJ0eSBvciBtZXRob2QgJyhbXiBdKyknLyxncm91cHM6WyJrZXkiXX0se3JlZ2V4cDovXHUzMGFhXHUzMGQ2XHUzMGI4XHUzMGE3XHUzMGFmXHUzMGM4XHUzMDZmICcoW14nXSspJyBcdTMwZDdcdTMwZWRcdTMwZDFcdTMwYzZcdTMwYTNcdTMwN2VcdTMwNWZcdTMwNmZcdTMwZTFcdTMwYmRcdTMwYzNcdTMwYzlcdTMwOTJcdTMwYjVcdTMwZGRcdTMwZmNcdTMwYzhcdTMwNTdcdTMwNjZcdTMwNDRcdTMwN2VcdTMwNWJcdTMwOTMvLGdyb3VwczpbImtleSJdfSx7cmVnZXhwOi9cdWFjMWNcdWNjYjRcdWFjMDAgJyhbXiddKyknIFx1YzE4ZFx1YzEzMVx1Yzc3NFx1YjA5OCBcdWJhNTRcdWMxMWNcdWI0ZGNcdWI5N2MgXHVjOWMwXHVjNmQwXHVkNTU4XHVjOWMwIFx1YzU0YVx1YzJiNVx1YjJjOFx1YjJlNC4vLApncm91cHM6WyJrZXkiXX1dfX0se3BtOmE9PmAke2Eua2V5fSBpcyBub3QgZGVmaW5lZGAsSmo6e1JlZmVyZW5jZUVycm9yOlt7cmVnZXhwOi8oLiopIGlzIG5vdCBkZWZpbmVkLyxncm91cHM6WyJrZXkiXX0se3JlZ2V4cDovQ2FuJ3QgZmluZCB2YXJpYWJsZTogKC4qKS8sZ3JvdXBzOlsia2V5Il19XX19XTt2YXIgQW89e2xlOltdLFNkOlt7Y2FsbGJhY2s6dm8sd2VpZ2h0OjUwMH0se2NhbGxiYWNrOndvLHdlaWdodDo1MDB9XX07dmFyIHlvPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5TZD1bXTt0aGlzLmxlPVtdfX0seG87Xy5WcD1uZXcgXy50aDt2YXIgdnA9W107Xy5yYSgieXQubG9nZ2luZy50cmFuc3BvcnQuZ2V0U2NyYXBlZEdlbFBheWxvYWRzIixmdW5jdGlvbigpe3JldHVybiB2cH0pO3ZhciBQbz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuc3RvcmU9e307dGhpcy5qPXt9fXN0b3JlUGF5bG9hZChhLGIpe2E9SW8oYSk7dGhpcy5zdG9yZVthXT90aGlzLnN0b3JlW2FdLnB1c2goYik6KHRoaXMuaj17fSx0aGlzLnN0b3JlW2FdPVtiXSk7Xy54KCJtb3JlX2FjY3VyYXRlX2dlbF9wYXJzZXIiKSYmKGI9bmV3IEN1c3RvbUV2ZW50KCJUUkFOU1BPUlRJTkdfTkVXX0VWRU5UIiksd2luZG93LmRpc3BhdGNoRXZlbnQoYikpO3JldHVybiBhfXNtYXJ0RXh0cmFjdE1hdGNoaW5nRW50cmllcyhhKXtpZighYS5rZXlzLmxlbmd0aClyZXR1cm5bXTt2YXIgYj1Lbyh0aGlzLGEua2V5cy5zcGxpY2UoMCwxKVswXSksYz1bXTtmb3IobGV0IGQ9MDtkPGIubGVuZ3RoO2QrKyl0aGlzLnN0b3JlW2JbZF1dJiZhLnNpemVMaW1pdCYmKHRoaXMuc3RvcmVbYltkXV0ubGVuZ3RoPD1hLnNpemVMaW1pdD8oYy5wdXNoKC4uLnRoaXMuc3RvcmVbYltkXV0pLGRlbGV0ZSB0aGlzLnN0b3JlW2JbZF1dKToKYy5wdXNoKC4uLnRoaXMuc3RvcmVbYltkXV0uc3BsaWNlKDAsYS5zaXplTGltaXQpKSk7YT8uc2l6ZUxpbWl0JiZjLmxlbmd0aDxhPy5zaXplTGltaXQmJihhLnNpemVMaW1pdC09Yy5sZW5ndGgsYy5wdXNoKC4uLnRoaXMuc21hcnRFeHRyYWN0TWF0Y2hpbmdFbnRyaWVzKGEpKSk7cmV0dXJuIGN9ZXh0cmFjdE1hdGNoaW5nRW50cmllcyhhKXthPUtvKHRoaXMsYSk7dmFyIGI9W107Zm9yKGxldCBjPTA7YzxhLmxlbmd0aDtjKyspdGhpcy5zdG9yZVthW2NdXSYmKGIucHVzaCguLi50aGlzLnN0b3JlW2FbY11dKSxkZWxldGUgdGhpcy5zdG9yZVthW2NdXSk7cmV0dXJuIGJ9Z2V0U2VxdWVuY2VDb3VudChhKXthPUtvKHRoaXMsYSk7dmFyIGI9MDtmb3IobGV0IGM9MDtjPGEubGVuZ3RoO2MrKyliKz10aGlzLnN0b3JlW2FbY11dPy5sZW5ndGh8fDA7cmV0dXJuIGJ9fTtQby5wcm90b3R5cGUuZ2V0U2VxdWVuY2VDb3VudD1Qby5wcm90b3R5cGUuZ2V0U2VxdWVuY2VDb3VudDsKUG8ucHJvdG90eXBlLmV4dHJhY3RNYXRjaGluZ0VudHJpZXM9UG8ucHJvdG90eXBlLmV4dHJhY3RNYXRjaGluZ0VudHJpZXM7UG8ucHJvdG90eXBlLnNtYXJ0RXh0cmFjdE1hdGNoaW5nRW50cmllcz1Qby5wcm90b3R5cGUuc21hcnRFeHRyYWN0TWF0Y2hpbmdFbnRyaWVzO1BvLnByb3RvdHlwZS5zdG9yZVBheWxvYWQ9UG8ucHJvdG90eXBlLnN0b3JlUGF5bG9hZDt2YXIgeXA9bmV3IF8uVnMoIkZpbmNoQ29uZmlnTWFuYWdlclNlcnZpY2UiKTt2YXIgbnA9Xy5zaigiaW5pdGlhbF9nZWxfYmF0Y2hfdGltZW91dCIsMkUzKSxscD1fLnNqKCJnZWxfcXVldWVfdGltZW91dF9tYXhfbXMiLDZFNCksb3A9Xy5zaigiZ2VsX21pbl9iYXRjaF9zaXplIiw1KSxObz12b2lkIDAsTW89bnVsbCxZcz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuQj10aGlzLm89dGhpcy52PTA7dGhpcy5qPSExfX0sQXA9bmV3IFlzLHpwPW5ldyBZcyxrcD1uZXcgWXMsanA9bmV3IFlzLGNwLG1wPSEwLGdwPV8udS55dExvZ2dpbmdUcmFuc3BvcnRUb2tlbnNUb0N0dFRhcmdldElkc198fHt9O18ucmEoInl0TG9nZ2luZ1RyYW5zcG9ydFRva2Vuc1RvQ3R0VGFyZ2V0SWRzXyIsZ3ApO3ZhciBYbz17fTt2YXIgQnA9Xy51Lnl0TG9nZ2luZ0dlbFNlcXVlbmNlSWRPYmpffHx7fTtfLnJhKCJ5dExvZ2dpbmdHZWxTZXF1ZW5jZUlkT2JqXyIsQnApO3ZhciBRcD1uZXcgU2V0LEtwPTAsWHA9MCxXcD0wLE1wPVtdLExwPVtdLFpwPVsiUGhhbnRvbUpTIiwiR29vZ2xlYm90IiwiVE8gU1RPUCBUSElTIFNFQ1VSSVRZIFNDQU4gZ28vc2NhbiJdO3ZhciBacz17YV9iaWRfZjo0ODIsYV9iaWRfczo0ODEsYWE6MixhYWNpOjQzMyxhYWNyOjQzNCxhYl9yOjExLGFiX3M6MTAsYWJjOjU3OSxhYzoxOTMsYWNjOjUxMSxhY2k6NTEyLGFkXzBfZToxMyxhZF8wX3M6MTIsYWRfYmw6MTQsYWRfaToxNSxhZF9tYnM6MTYsYWRfcHI6NTYyLGFkX3ZpOjE3LGFkX3ZpcjoxOCxhZGE6MTk0LGFkYmNfZjo1NzYsYWRjOjE5NSxhZGZsX2Y6MTksYWRmbF9zOjIwLGFkbDoxOTYsYWRuczoxOTcsYWRzX2U6MjIsYWRzX3M6MjEsYWZiOjUxMyxhZmM6MTk4LGFmbDoxOTksYWZ0OjEsYWhiOjUxNCxhaToyMDAsYWlzX2E6NTAzLGFpc19yOjUwMixhaXNmOjIzLGFpc2k6MjQsYWlzcjoyNSxhaXNzOjI2LGFtbDoyMDEsYXBhX2E6MjAzLGFwYV9iOjIwMixhcGJzOjIwNCxhcHBfbDozLGFwcF9zaTo2MTIsYXBwX3NpZTo2NjEsYXBwZGVsX2k6MjcsYXBwaV9lOjYxNixhcHBpX3M6NjE1LGFwcjoyMDUsYXByZXM6NDM2LGFwc3VzOjQzNSxhcjoyMDYsYXI0MGs6MjgsCmFyYl9mOjUwNCxhcmM6MjA3LGFyZXE6MjA4LGFyZmI6MjksYXJpOjQsYXJyOjIwOSxhcnJoOjMwLGFzY2U6Nzg4LGFzY2Y6Nzg5LGFzY3M6Nzg3LGFzaXNmYjozMSxhc2lzcjozMixhc2lzcmg6MzMsYXNpc3M6MzQsYXNyOjIxMCxhc3luY19vcmNoX3RfYWN0OjcxMixhc3luY19vcmNoX3Rfbm90aWZ5OjcxMSxhdHJyOjUxNSxhdHJzOjUxNixhdHRfZToyMTEsYXR0X2Y6MjEyLGF0dF9mYzo3OTcsYXR0X2Zycjo3OTYsYXR0X2ZzOjc5MyxhdHRfZnNyOjc5NSxhdHRfcG5hOjc5NCxhdHRfczoyMTMsYXR0X3diOjIxNCxhd2ZsX2Y6NTU3LGF3Zmxfczo1NTgsYmFzZV9qc19yOjQ0MSxiY3A6MjE1LGJmOjIxNixiZ19lOjIxNyxiZ19pOjIxOCxiZ19sOjIyMCxiZ19zOjIyMSxiZ192OjIxOSxicGRfYzo0ODQsYnBkX3M6NDgzLGJwdDoyMjMsYnJfZTozNyxicl9sZDozOCxicl9scnByOjM5LGJyX2xycjo0MCxicl9sd206NTc3LGJyX3I6NDEsYnJfczo0MixicmVyOjM1LGJyZXM6MzYsYnJucjo0MywKYnJuczo0NCxicnBlOjQ1LGJycHM6NDYsYnJyX2U6NDcsYnJyX2k6NDgsYnJyX2l1czo0OSxiczoyMjIsY19jOjUwLGNfY3M6NTEsY19jc2ZzOjUyLGNfZDo1MyxjX2xhZjo1OSxjX2xhczo1OCxjX3JuZjo0MzgsY19ybnM6NDM3LGNjOjQ2NyxjY19jOjU0LGNjX2NmOjU2LGNjX2NzYWxhOjU1LGNjX2xhOjU3LGNmZzoyMjQsY2hsczoyMjUsY2hwczoyMjYsY2w6NDgwLGNtYzoyMjcsY21kX2g6NjI5LGNtaGw6MjI5LGNtaToyMjgsY21sOjIzMCxjbXA6Nzc5LGNtdjoyMzEsY3B0OjIzMixjcjozNjQsY3JfZXJyOjY2OSxjcl9yOjY3MCxjcl9zOjY2OCxjc2w6MjMzLGNzcl90OjYzMSxjdDo1LGN0X2xpOjYwLGRfbDo2MSxkX2xhZjo2MixkX2xhcjo2MyxkX2xhczo2NCxkX2xmOjY1LGRfbHM6NjYsZF9sdzo2NyxkX2x3Zjo2OCxkX2x3czo2OSxkYXNfYzozNjYsZGFzX3M6MzY1LGRjcDoyMzQsZGdfcGJfYzoyMzYsZGdfcGJfcjoyMzcsZGdfcGJfczoyMzUsZGhpYzoyMzgsZGw6MjM5LGRuc186MjQwLApkcm1fZ2tfZjozODgsZHJtX2drX3M6Mzg3LGRybV9rcl9yOjM5Mixkcm1fa3JfczozOTEsZHJtX25ldF9yOjM5MCxkcm1fbmV0X3M6Mzg5LGRybV9wYl9mOjM4Nixkcm1fcGJfczozODUsZHNfYWM6NzM2LGRzX2FzOjczNSxkc19jbGM6NzQwLGRzX2NzOjczNyxkc19kYzo3MzksZHNfZHM6NzM4LGVtcGE6NDMyLGVtcHU6NDMxLGVucF9lcnI6Njg1LGVucF9maTo2ODQsZW5wX3N0OjY4Myxlb3ByX3I6NjczLGVwX2FfcHJfcjo1MzIsZXBfYV9wcl9zOjUzMSxlcF9oYXZfZW5kOjUyNixlcF9oYXZfc3RhcnQ6NTI1LGVwX2luaXRfYXI6Njk5LGVwX2luaXRfY3VlOjYzNSxlcF9pbml0X2N1czo2MzQsZXBfaW5pdF9lcGU6NjM3LGVwX2luaXRfZXBzOjYzNixlcF9pbml0X2lqZTo2MzksZXBfaW5pdF9panM6NjM4LGVwX2luaXRfcHI6NTI3LGVwX2luaXRfcmU6NjQxLGVwX2luaXRfcnM6NjQwLGVwX2luaXRfd2VlOjY0MyxlcF9pbml0X3dlczo2NDIsZXBfbWFfcmVwcjo1NDMsZXBfbWFfcnI6NTMzLAplcF9tYV9zZXByOjU0MixlcF9tYV9zcHI6NTM0LGVwX3BfbDo1MzAsZXBfcHJfcjo1MjksZXBfcHJfczo1MjgsZXBfcl9wcmVfcjo1NDEsZXBfcl9ycjo1MzUsZXBfcl9zbWFyOjUzNixlcF9yZWNfZW5kOjUzOCxlcF9yZWNfc3RhcnQ6NTM3LGVwX3JlcHNfZW5kOjU0MCxlcF9yZXBzX3N0YXJ0OjUzOSxlcGU6NjE4LGVwczo2MTcsZXJfY2w6NjUzLGVyX25zOjY1Mixlcl9wZTo2NTAsZXJfcHM6NjQ5LGVyX3M6NjQ4LGVyX3NfbnI6NzkwLGVyX3NfbnM6Nzg0LGVyX3Q6NjUxLGZhYl9yOjI0NixmY2Jfcjo1MDYsZmlyZTo3MCxmaXJzOjcxLGZtdGg6MjQxLGZvb3RfanM6MjQyLGZwdDoyNDMsZnJfczo1NjEsZnM6MjQ0LGZzYzoyNDUsZnNzYjBfYTo3NSxmc3NiMF9mcjo3NCxmc3NiMF9ucjo3Myxmc3NiMF9uczo3MixmdF86NDM5LGZ0bDo3LGZ0cjo0NzUsZnZiX3I6MjQ3LGZ2ZjoyNDgsZnlkX2dmOjc2NyxmeWRfZ3M6NzY2LGdjYzoyNDksZ2NmbDoyNTAsZ2Nzcjo3NixnZXBfZXJyOjgwMCwKZ2VwX3JlcTo3OTgsZ2VwX3Jlczo3OTksZ2dzcjo3NyxnaXdhX2E6NjI3LGdpd2FfZDo2MjgsZ2xjOjU5MyxnbGU6MjUxLGdsczoyNTIsZ3BlOjI1MyxncmM6MjU0LGdyaXdfbnI6Nzg2LGdyaXdfbnM6Nzg1LGdzX3I6NzM0LGdzX3M6NzMzLGdzbWQ6NTg2LGd1X3I6NjIwLGd2OjQ4NSxnd19haWVyOjc3MSxnd19hcmY6NzcyLGd3X2FybmFmOjc3NSxnd19hcm5uYWY6Nzc2LGd3X2FybnM6Nzc3LGd3X2FybnN1Ojc3OCxnd19hcnM6Nzc0LGd3X2Fyc3U6NzczLGd3X21hYWY6NjMzLGd3X21hYXM6NjMyLGhiZmc6Njc3LGhnY3I6MjU1LGhyOjI1NixocmU6MzYzLGhyczozNjIsaHM6MzczLGh0bWxfZmJfcjo3NTUsaHRtbF9mZTo3NDgsaHRtbF9mczo3NDcsaHRtbF9md2U6NzUyLGh0bWxfZndzOjc1MSxodG1sX2pjZTo3NTQsaHRtbF9qY3M6NzUzLGh0bWxfbGJfcjo3NTYsaHRtbF9zZTo3NTAsaHRtbF9zczo3NDksaV9ycDo0NzcsaV9ycTo0NzYsaXBfczo2NDYsaXBjOjI1NyxpcHM6MjU4LAppc21wX2E6ODM2LGlzbXBfYzo4MzgsaXNtcF9kOjgzOSxpc21wX2k6ODM1LGlzbXBfcDo4NDAsaXNtcF9yYzo4MzcsaXRfZ3A6NzgsaXZfczo1MDUsanNwOjI1OSxqc3I6MjYwLGtZVExhdGVuY3lNREVQcm9kdWN0U3RpY2tlckVkaXRvckNhbmNlbGxlZDo4MDEsa1lUTGF0ZW5jeU1ERVByb2R1Y3RTdGlja2VyRWRpdG9yRmluaXNoZWQ6ODAyLGwyczoyNjEsbGNfZnJyOjY2MCxsY19zX3M6NjU5LGxjX3NfdTo2NTgsbGNwOjI2MixsZF9zOjQ0MCxsaW06MjYzLGxwY2Y6MjY0LGxwY3M6MjY1LGxwczoyNjYsbHNfYzozNjgsbHNfczozNjcsbHNzOjI2NyxsdjoyNjgsbWFfY2w6NTUxLG1hX2Zmcjo1NTIsbWFfZnVhOjU1NCxtYV9ncjo1NTMsbWFfaWw6NTczLG1haW46NzksbWFpbl9qc19yOjQ0MixtYWluX2pzX3JxOjQ0MyxtYl9zOjUwNyxtYmFwX2M6Mzg0LG1iY19hbGM6NzMyLG1iY19hc2w6NzMxLG1iY19jOjM3NSxtYmNfczozNzQsbWJnY2hpZF9ycjo3NDQsbWJnY2hpZF9yczo3NDYsCm1iZ3JfcmY6NjU3LG1iZ3JfcnI6Mzc5LG1iZ3JfcnM6Mzc4LG1ibGNfYzozNzcsbWJsY19zOjM3NixtYmxjaGlkX2M6NzQ1LG1ibGNoaWRfczo3NDMsbWJsY3JpZF9jOjc0MixtYmxjcmlkX3M6NzQxLG1ic19jOjM4MSxtYnNfcnI6MzgzLG1ic19yczozODIsbWJzX3M6MzgwLG1keF9jY3A6ODAsbWR4X2Njczo4MSxtZHhfY2NzdDo4MixtZHhfY3I6ODMsbWR4X2NzOjg0LG1keF9sczo4NSxtZHhfb2ZmOjg2LG1keF9zYzo4NyxtZV9iOjU1NSxtZV9jOjY4NyxtZV9mOjU1NixtZV9mYTo2ODgsbWVzdl9zOjUwOSxtbV9pZTo3MjAsbW1faXM6NzE5LG1yYzoyNjksbXJzOjI3MCxtc2E6MjcxLG1zdGk6ODgsbXN0cjo4OSxuX2N0OjcwMixuX3NyOjY5NyxuX3N3OjY5OCwibmNbMC05XSI6MjcyLG5jbDoyNzMsbmN0OjI3NCxuZDoyNzUsbmRuc2U6Mjc2LG5kbnNzOjI3NywibnBbMC05XSI6Mjc4LG5yOjI3OSxucmU6MjgwLG5yZXFzOjI4MSxucmVzZToyODIsbnJlc3M6MjgzLG5ycnBzOjkwLApucnM6Mjg0LG5zdGNwczoyODUsbnRjcGU6Mjg2LG50Y3BzOjI4Nyxud3A6Mjg4LG9hZDJzOjQyNSxvYWZzX3I6NDA3LG9hZnNfcnA6NDA5LG9haXNyOjQwNSxvYXIyczo0MTIsb2FycDJzOjQyNyxvY3NpX3o6OTEsb2N0azo2MjEsb2N0cDo2MjIsb2ZhcnA6NDIzLG9mZG86NDAwLG9mZG9zOjM5OCxvZnI6NDE3LG9mdnJwOjQyNCxvZ3NmX2M6Mzk1LG9nc2ZfczozOTQsb2hyX3I6NzY1LG9ocl9zOjc2NCxvbDo2LG9sX2k6OCxvbG9jX2U6ODMwLG9sb2Nfc2E6ODI5LG9sb2Nfc3M6ODI4LG9tZF9jOjQyMixvbWRfczo0MjEsb21wX2M6NDE5LG9tcF9yOjQxOCxvcGZjOjY4MCxvcHJfcjo0MTQsb3ByZF9zOjQxNSxvcHJnejJfZTo4NDIsb3ByZ3oyX2Y6ODQzLG9wcmd6Ml9zOjg0MSxvcHJnel9zOjY4OSxvcHJyOjQxNixvcjEwMGs6NDExLG9yX2ZlOjQyOSxvcl9mczo0MzAsb3JfaTozOTMsb3JfcDozOTcsb3JjaF9yX2Q6Njk0LG9yY2hfcl9zOjY5NSxvcmNoX3RfcG1kOjc3MCxvcmNoX3RfcG1zOjc2OSwKb3JjaF90X3RjZWQ6NzA4LG9yY2hfdF90Y2VzOjcwNSxvcmNoX3RfdGQ6NjkyLG9yY2hfdF90bWQ6ODA0LG9yY2hfdF90bXM6ODAzLG9yY2hfdF91ZDo2OTMsb3JjaF90X3VzOjY5NixvcmZiOjQwNCxvcmhfcjo0MDMsb3Jtazo0MjAsb3JxcGJfYTo4MzEsb3JxcGJfZTo4MzQsb3JxcGJfczo4MzIsb3JxcGJfdzo4MzMsb3Nkbzo0MDEsb3Nkb2Y6NDAyLG9zZG9zOjM5OSxvc29yOjM5NixvdmQyczo0MjYsb3Zmc19yOjQwOCxvdmZzX3JwOjQxMCxvdmlzcjo0MDYsb3ZyMnM6NDEzLG92cnAyczo0MjgscGFjOjI4OSxwYXJpOjUxNyxwYXQ6MjkwLHBiMF9zOjYxMSxwYl9ycV9hdXRoejo0NDYscGJfcnFfY3R0X2NmbTo0NDcscGJjX2U6NjYzLHBiY19zOjY2MixwYmZfYzo5MixwYnA6NDg2LHBicmVzdW1lOjI5MixwYnM6NDg3LHBidToyOTMscGM6NDg4LHBjYzo1NDYscGNlOjU0NyxwY3E6NTQ0LHBjcjo1NDUscGN1X2FwOjgwOSxwY3VfY2U6NTgxLHBjdV9jczo1ODAscGN1X3JlOjgwOCxwY3VfcnM6ODA3LApwY3Vfczo4MDUscGN1X3NlOjgwNixwZGE6Mjk0LHBkYzoyOTUscGRyOjI5NixwZToyOTcscGVtX3I6NDQ0LHBlbV9ycTo0NDUscGZqZTozMDkscGZycjozMDUscGZyczozMDYscGZzOjMwNyxwZnQ6MzA4LHBmdF9pOjkzLHBsX2M6MjkxLHBsX2k6NDg5LHBsX2ludDo0OTAscGxfcjo0OTEscGxfcmM6NzAzLHBsX3M6NDkyLHBsX3NzOjQ5MyxwbGV2OjMxMCxwbGpzX3I6NDQ4LHBsanNfcnE6NDQ5LHBsdnM6NzIzLHBvdF9hZjo5Nyxwb3RfYXM6OTYscG90X2NtZTo1NjkscG90X2NtZjoyOTkscG90X2NtczoyOTgscG90X2NzbWU6NTcwLHBvdF9jc21mOjMwMSxwb3RfY3NtczozMDAscG90X2lmOjMwNCxwb3RfaW5pdGY6OTUscG90X2lzYzozMDIscG90X2lzdDozMDMscG90X3NlOjU2NSxwb3Rfc2Y6NTY0LHBvdF9zczo1NjMscG90X3hlOjU2OCxwb3RfeGY6NTY3LHBvdF94czo1NjYscG90cGU6OTQscHB1Ojk4LHByb2Nfazo2MTMscHJvY19rX2w6NjE0LHBzOjMxMSxwc19iczo2NDcscHNfYzo0OTQsCnBzX2VzOjk5LHBzX3BhOjY4MSxwc19waWhmOjU5Nyxwc19waWhzOjU5Nixwc19yOjM2MCxwc19zOjM2MSxwc19zZ2Y6NTk1LHBzX3Nnczo1OTQscHNucjo0OTUscHNuczo0OTYscHNwZToxMDAscHNwczoxMDEscHRfbWU6ODE1LHB0X21mOjgxNCxwdF9tczo4MTMscHRfcGllOjgxMixwdF9waWY6ODExLHB0X3Bpczo4MTAscHRfcGlzaDo2MDYscHZyaTo1MTgscHdjOjMxMixxb2VzOjMxMyxyX2Nfc2xkOjQ1MCxyX2Nfc3JxOjQ1MSxyX2Nvbm5lY3RfYmFja2VuZDo0NTIscl9jb25uZWN0X2JhY2tlbmRfc3VjY2Vzczo0NTMscl9jb25uZWN0ZWQ6NDU0LHJfY29uc3RydWN0aW9uOjQ1NSxyX2Rpc2Nvbm5lY3RlZDo0NTYscl9lYmk6NjY0LHJfZW9kOjU4NSxyX2Y6NDU3LHJfb3I6NzEzLHJfcGw6MTA1LHJfcHM6MTA2LHJfcnFfcGx5OjQ1OCxyX3NfcGx5bHN0OjQ1OSxyX3NfdmlkOjQ2MCxyX3N0YXR1c191cGRhdGU6NDYxLHJfdHI6MTA3LHJfdnRjOjEwNCxyX3dpcGJjOjU4NCxyX3ducjo3OTIsCnJfd25zOjc5MSxyX3dycjoxMDMscl93cnM6MTAyLHJfd3NycDo2MDkscl93c3JyOjYwOCxyX3dzcnM6NjA3LHJjdl86MzE0LHJlbW92ZV9zcGxhc2g6NDYyLHJlcV86MzE1LHJmZzozMTYscmdyX25yZjo2MDAscmdyX3M6NTk5LHJwZTo4MTYscnBseV9ycWQ6NDYzLHJwczo4MTcscnNfczo1MDgscnNhZV9wYzozMzIscnNhZV9wZWo6MzM0LHJzYWVfcGo6MzMzLHJzYmVfcGM6MzIzLHJzYmVfcGVqOjMyNSxyc2JlX3BqOjMyNCxyc2VfcGM6MzIwLHJzZV9wZWo6MzIyLHJzZV9wajozMjEscnNlZl9wYzozMjkscnNlZl9wZWo6MzMxLHJzZWZfcGo6MzMwLHJzZXNfcGM6MzI2LHJzZXNfcGVqOjMyOCxyc2VzX3BqOjMyNyxyc2ZfcGM6MzE3LHJzZl9wZWo6MzE5LHJzZl9wajozMTgscnRpbWVfOjMzNSxydXJsX2U6MTA4LHJ1cmxfcjoxMDkscnVybF9zOjExMCxydXJscGU6MTExLHJ1cmxwczoxMTIsczN0X3I6NDcyLHNhX2Y6NjI0LHNhX2ZvOjYyNSxzYV9zOjYyMyxzYWZfZnA6NjY1LHNhZl9yOjY2NiwKc2FmX3JlOjY2NyxzYXNfaTo2MjYsc2NnYXRfZmZzOjU2MCxzY2dhdF9mczo1NTksc2RhX2Y6NjA1LHNkYV9pOjYwNCxzZGFfcmVjcDo2MDEsc2RhX3JzcHA6NjAzLHNkYV9yc3ByOjYwMixzZGxfZTo2NTUsc2RsX3M6NjU0LHNkbF90OjY1NixzZl9pOjExMyxzZ3NjX3I6NzgxLHNnc2Nfczo3ODAsc2hvd19jYWxsX3RvX2Nhc3Q6NDY0LHNocmJfYzoxNjUsc2hyb19jOjE3MCxzaHJvX3I6MTY3LHNocnBfYzoxNjksc2hycF9sZDoxNjYsc2hycF9wOjE2OCxzb19yOjExOSxzb19yZToxMTgsc29fcnE6MTIwLHNwYToxMTQsc3BkOjExNSxzcGY6MTE2LHNwbnJfaDo2NzIsc3Bucl9zOjY3MSxzcHI6Njc4LHNyX2U6MTE3LHNyX3A6MTIxLHNyX3BhOjEyMixzcl9yOjEyMyxzcl9yZToxMjQsc3JfczoxMjUsc3JfdWk6MTI2LHNydDozMzYsc3Nfcjo0Njksc3Nfczo0Njgsc3Nfc2Zfczo3MjQsc3Nfc2Zfdzo3MjUsc3NucjoxMjcsc3NuczoxMjgsc3RjcF86MzM3LHN0ZV9hbGY6NTg5LHN0ZV9jOjU5MiwKc3RlX2VsZjo1OTAsc3RlX2Y6NTkxLHN0ZV9mdGw6NTg4LHN0ZV9sOjU4NyxzdHRzX2I6NTgyLHN0dHNfZjo1ODMsc3R2c19mOjY5MSxzdHZzX3M6NjkwLHN2ZTo0NjYsc3ZzOjQ2NSxzd19mYjo1MTAsc3dfaTo3ODMsc3dfcjo0OTcsc3dfczo0OTgsc3dzbnI6ODE5LHN3c25zOjgxOCxzd3NwZTo4MjEsc3dzcHM6ODIwLHRjcF86MzM4LHRlbnhfbDo0NzEsdGVueF9yOjQ3MCx0aDBfaDo2MTAsdGgwX25jOjY3NSx0aDBfbmU6Njc2LHRoMF9ucjoxMjksdGgwX25zOjY3NCx0aF9jXzE6NzA5LHRoX2RfMTo3MTAsdGhfbF8xOjEzMCx0aF9zXzE6NTc4LHRoc2IwX2ZyOjEzNCx0aHNiMF9uZToxMzEsdGhzYjBfbnI6MTMyLHRoc2IwX25zOjEzMyx0dGM6MzM5LHR0Y3I6MzQwLHVpX2w6MTM1LHVpYmZfYzoxNDEsdWliZl9yOjE0Myx1aWJmX3M6MTQyLHVpc2ZfcjoxNDQsdWl3d2FfYmM6NjE5LHVpd3dhX2M6MTM2LHVpd3dhX2U6MTQwLHVpd3dhX3ByOjEzOSx1aXd3YV9yOjEzOCx1aXd3YV9zOjEzNywKdWxyc19jOjM3MCx1bHJzX3M6MzY5LHVua25vd246MCx1cjozNDEsdmM6NjgyLHZjYzo1MTksdmNpOjUyMCx2ZGE6MzQyLHZkZXVjOjM0Myx2ZGV1cjozNDQsdmRldXM6MzQ1LHZkbnM6MzQ2LHZmYjo1MjEsdmZwOjM0Nyx2aGI6NTIyLHZpcjozNDgsdmlyYzozNDksdmlzX2E6NTAwLHZpc19yOjQ5OSx2aXNmOjE0NSx2aXNpOjE0Nix2aXNyOjE0Nyx2aXNzOjE0OCx2b3pfY3g6MTc5LHZvel9lb3U6MTg3LHZvel9lcnI6MTg0LHZvel9lcnJfbXM6MTgwLHZvel9lcnJfbm1wOjE4MSx2b3pfZXJyX29mZjoxODMsdm96X2Vycl91YXI6MTgyLHZvel9mdHI6MTg4LHZvel9mdmM6MTg5LHZvel9scl9sc286MTg1LHZvel9scl9tZDoxODYsdm96X21mOjE3Mix2b3pfbXM6MTcxLHZvel9ycWY6MTc0LHZvel9ycXM6MTczLHZvel9zZjoxNzgsdm96X3NzOjE3Nyx2b3pfdnA6MTc1LHZvel92dDoxNzYsdnBsOjM1MCx2cjozNTEsdnIxMDBrOjE0OSx2cmJfZjo1MDEsdnJjOjM1Mix2cmVxOjM1Myx2cmZiOjE1MCwKdnJpOjksdnJyOjM1NCx2cnJfcjo0NzQsdnJyX3M6NDczLHZycmg6MTUxLHZzaXNmYjoxNTIsdnNpc3I6MTUzLHZzaXNyaDoxNTQsdnNpc3M6MTU1LHZ0YTozNTUsdnRycjo1MjMsdnRyczo1MjQsd19zdDoxNTYsd2FzbV9mYTo4MjYsd2FzbV9mZXJyOjgyNyx3YXNtX2Z3OjgyNSx3YXNtX3M6ODI0LHdjOjM3Mix3Y3I6MzU2LHdlYmZlX2U6NzI4LHdlYmZlX2dibV9yOjc1OCx3ZWJmZV9nYm1fczo3NTcsd2ViZmVfZ2xfcjo3NjIsd2ViZmVfZ2xfczo3NjEsd2ViZmVfZ3Nfcjo3NjAsd2ViZmVfZ3Nfczo3NTksd2ViZmVfZ3VzX3I6NzMwLHdlYmZlX2d1c19zOjcyOSx3ZWJmZV9ndm1fczo3NjMsd2ViZmVfczo3Mjcsd2ZmZTozNTcsd2ZmczozNTgsd2ZnOjM1OSx3bl9lOjE2Mix3bl9sOjM3MSx3bl9yOjE1OSx3bl9ycDo0Nzgsd25fczoxNjAsd25fc2w6MTYxLHdubDoxNTgsd25sX2Q6ODIzLHdubF9tcDo1NzEsd25sX3BkOjgyMix3bmxyOjU3Mix3bmxzOjE1Nyx3bnBlOjE2Myx3bnBzOjE2NCwKd3A6NDc5LHdzX2NlOjE5MCx3c19zczoxOTEsd3Nfc3NyOjE5Mix5Y2VjOjU0OSx5Y2VmOjU0OCx5Y2Z0cjo2NDUseWNpZjo1NTAseWNtc2Y6NjQ0LHljcmM6NzE4LHljcmY6NzE3LHljcnM6NzE0LHljcnNjOjcxNSx5Y3J1ZWE6NzE2fTtfLnJhKCJ5dExvZ2dpbmdHZWxTZXF1ZW5jZUlkT2JqXyIsXy51Lnl0TG9nZ2luZ0dlbFNlcXVlbmNlSWRPYmpffHx7fSk7dmFyIGJxPV8udS55dExvZ2dpbmdMYXRlbmN5VXNhZ2VTdGF0c198fHt9O18ucmEoInl0TG9nZ2luZ0xhdGVuY3lVc2FnZVN0YXRzXyIsYnEpOwp2YXIgJHA9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmo9MH10aWNrKGEsYixjLGQpe2NxKHRoaXMsYHRpY2tfJHthfV8ke2J9YCl8fChjPXt0aW1lc3RhbXA6YyxjdHRBdXRoSW5mbzpkfSxiPXt0aWNrTmFtZTphLGNsaWVudEFjdGlvbk5vbmNlOmJ9LF8ueCgieW91dHViZV93ZWJfY3NpX3RpY2tzX21pZ3JhdGlvbiIpJiYoYT1ac1thXSxhIT09dm9pZCAwJiYoYi50aWNrPWEsZGVsZXRlIGIudGlja05hbWUpKSxfLkVwKCJsYXRlbmN5QWN0aW9uVGlja2VkIixiLGMpKX1pbmZvKGEsYixjKXt2YXIgZD1PYmplY3Qua2V5cyhhKS5qb2luKCIiKTtjcSh0aGlzLGBpbmZvXyR7ZH1fJHtifWApfHwoYT1PYmplY3QuYXNzaWduKHt9LGEpLGEuY2xpZW50QWN0aW9uTm9uY2U9YixfLkVwKCJsYXRlbmN5QWN0aW9uSW5mbyIsYSx7Y3R0QXV0aEluZm86Y30pKX1qc3BiSW5mbygpe31zcGFuKGEsYixjLGQpe3ZhciBlPU9iamVjdC5rZXlzKGEpLmpvaW4oIiIpO2lmKGR8fCFjcSh0aGlzLGBzcGFuXyR7ZX1fJHtifWApKWEuY2xpZW50QWN0aW9uTm9uY2U9CmIsXy5FcCgibGF0ZW5jeUFjdGlvblNwYW4iLGEse2N0dEF1dGhJbmZvOmN9KX19O3ZhciAkcyxhdDskcz13aW5kb3c7YXQ9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnRpbWluZz17fTt0aGlzLmNsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fTt0aGlzLndlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fTt0aGlzLm1vekNsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fTt0aGlzLm1zQ2xlYXJSZXNvdXJjZVRpbWluZ3M9KCk9Pnt9O3RoaXMub0NsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fX19O18uc3E9JHMucGVyZm9ybWFuY2V8fCRzLm1velBlcmZvcm1hbmNlfHwkcy5tc1BlcmZvcm1hbmNlfHwkcy53ZWJraXRQZXJmb3JtYW5jZXx8bmV3IGF0O3ZhciBscT1fLkZuKCk7Xy5yYSgieXRfbG9nZ2luZ19zY3JlZW4uZ2V0Um9vdFZlVHlwZSIsXy5ncSk7Xy5yYSgieXRfbG9nZ2luZ19zY3JlZW4uZ2V0Q3VycmVudENzbiIsXy5pcSk7Xy5yYSgieXRfbG9nZ2luZ19zY3JlZW4uZ2V0Q3R0QXV0aEluZm8iLF8ua3EpO18ucmEoInl0X2xvZ2dpbmdfc2NyZWVuLnNldEN1cnJlbnRTY3JlZW4iLF8ubXEpO3ZhciB3cSxycTt3cT0hMTtycT0hMTtfLmJ0PSgwLF8uQ2EpKF8uc3EuY2xlYXJSZXNvdXJjZVRpbWluZ3N8fF8uc3Eud2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3N8fF8uc3EubW96Q2xlYXJSZXNvdXJjZVRpbWluZ3N8fF8uc3EubXNDbGVhclJlc291cmNlVGltaW5nc3x8Xy5zcS5vQ2xlYXJSZXNvdXJjZVRpbWluZ3N8fF8uZ2QsXy5zcSk7dmFyIGR0OwpfLmN0PV8uVmkoZnVuY3Rpb24oYSxiLGMsZCxlLGYsaCl7aWYoIV8ueCgid2ViX2NzaV9hY3Rpb25fc2FtcGxpbmdfZW5hYmxlZCIpfHwhXy5rbyhmKS5hY3Rpb25EaXNhYmxlZCl7dmFyIGs9aD8uc3BhblN0YXR1cyxsPWg/LnJvb3RTcGFuTm9uY2U7bGV0IG09Xy5ubyhmKTttLmdlbFNwYW5zP20uZ2VsU3BhbnNbYV09ITA6bS5nZWxTcGFucz17W2FdOiEwfTtYcysrO2E9e3NwYW5OYW1lOmEsc3Bhbkxlbmd0aFVzZWM6U3RyaW5nKE1hdGgucm91bmQoYioxRTMpKSxzcGFuTm9uY2U6WHMscm9vdFNwYW5Ob25jZTpsfHxYc307ayYmKGEuc3BhblN0YXR1cz1rKTtkJiYoYS5zcGFuSW5mbz1kKTtlJiYoYS5wYXJlbnRTcGFuTm9uY2U9ZSk7YyYmKGEuc3BhblN0YXJ0VGltZVVzZWM9U3RyaW5nKE1hdGgucm91bmQoYyoxRTMpKSk7Yz1hO18udW8oZnx8IiIpLnNwYW5bU3RyaW5nKGMuc3Bhbk5hbWUpXT1jO2Q9Xy5ubyhmKTtkLmdlbFNwYW5zfHwoZC5nZWxTcGFucz17fSk7Xy55bihkLmdlbFNwYW5zLGMpOwpkPV8ucG8oZik7Zj1fLmtvKGYpLmN0dEF1dGhJbmZvO2FxKCkuc3BhbihjLGQsZixoPy5xdSk7cmV0dXJuIGMuc3Bhbk5vbmNlfX0pO2R0PXdpbmRvdztkdC55dGNzaSYmKGR0Lnl0Y3NpLmluZm9HZWw9Xy56cSxkdC55dGNzaS50aWNrPV8uQXEpO3ZhciBldDtldD1uZXcgXy5jcztfLmZ0PWV0LnByb21pc2U7KGZ1bmN0aW9uKGEpe18uQXEoIm1tX2lzIik7dmFyIGI9bmV3ICRyO18uVWQoYik7Xy54KCJ3ZWJfZW5hYmxlX2xhenlfY3NzIikmJihuZXcgUHIpLmluaXQoKTtiLmVuKCgpPT57ZmgoKTtfLkFxKCJtbV9pZSIpO2E/LigpfSk7Yi5abihRZy5FUlJPUiwoYyxkLGUpPT57Xy5VaShFcnJvcigiSGFgIitkKyJgIitlKSl9KX0pKCgpPT57ZXQucmVzb2x2ZSgpfSk7Cl8uX01vZHVsZU1hbmFnZXJfaW5pdGlhbGl6ZT1mdW5jdGlvbihhLGIpe2lmKCFfLlFkKXtpZighXy5UZClyZXR1cm47Xy5VZChfLlRkKCkpfV8uUWQuVGgoYSxiKX07Cl8uX01vZHVsZU1hbmFnZXJfaW5pdGlhbGl6ZSgncm9vdC9zeTAvbjczcXdmOjEvc3kxL3N5MjozL2l1VDVPYzo0L3N5My9VVUpxVmU6MSw2L3N5NS9zeTQ6OC9NcEp3WmM6MSw2LDkvc3k2L3N5Nzo4L3N5ODpjL3N5Yy9zeWc6YixlL3N5aDpmL3N5YS9zeTFmL3N5M2M6aS9zeTNxOmkvc3k1YS9zeTU2L3N5NTgvc3k1YjpqLGssbCxtLG4vc3k1OTpqLG0sbi9zeTNkL3N5OTozLGMsZyxoL3N5ay9zeTU3L3N5YjpzL3N5ZDo4LGUvc3k1YzpqLGwsbSxuL3N5NWU6ayxxLHcvc3llL3N5Zi9zeWkvc3lqL3N5bC9zeW0vc3kxaC9zeTFlL3N5MWw6MTUvc3kzODoxNCwxNi9zeXA6MSw5LGMvc3l1OmMvc3lzOmQsMTgsMTkvc3kxaS9zeTJkL3N5Mms6MWEvc3kyajoxZC9zeTJ3OjFhL3N5MTkvc3kxcC9zeTIxL3N5Mm0vc3kybjoxai9zeTFiL3N5MXovc3kydS9zeTFrOmMsdiwxaCwxaSwxaywxbCwxbSwxbi9zeTJsL3N5MXU6MWcsMW4vc3kzMS9zeXY6Yy9zeTEwOjE4L3N5ejoxdC9zeXk6MWEvc3kzNjpjL3N5M2Y6Yy9zeTFtOmIsMWYsMXEsMXIsMXMsMXUsMXYsMXcsMXgvc3kyci9zeTNlL3N5M2E6aC9zeTEyOjFhL3N5M2c6MXUvc3kzaDoxOS9zeTFxOmcsaixxLDFvLDFwLDF5LDF6LDIwLDIxLDIyLDIzLDI0L3N5M2k6MXovc3kzbToxZS9zeTQzOjFlL3N5NDQ6MWUvc3k0ZjoxZS9zeTQ3OjFlL3N5NGc6MWUvc3k0aC9zeTRpOjE5L3N5eDoxYS9zeXQ6MWEvc3lyOjJnL3N5MTg6MWQsMXMsMmYsMmgvc3kyby9zeTMyL3N5M2I6MTksMW8sMXUvc3l3OjE4L3N5MTc6MjEsMm0vc3kzay9zeTFuOjFvLDFzLDJoLDJuLDJvL3N5M2o6MXcsMmssMmwsMnAvc3kxdi9zeTF5L3N5MnM6MTYvc3kyei9zeTFkL3N5M3Q6MTkvc3k0ajpqLGsscSwxZiwxdSwxdywxeCwyaywydi9zeTRkOmMsMWIvc3k0azoxOCwxcy9zeTQxOmMvc3k0MjoxOSwzMC9zeTJjOjExLDI1LDI2LDI3LDI4LDI5LDJhLDJiLDJjLDJkLDJlLDJpLDJqLDJxLDJyLDJzLDJ0LDJ1LDJ3LDJ4LDJ5LDJ6LDMxL3N5MWo6MTYvc3kyNDozMy9zeTRsOjE5LDMwL3N5MjM6MW8vc3kyNS9zeTJpOjE5LDM3L3N5NDYvc3k0cTozMiwzNiwzOCwzOS9zeW46MTcsMWMsMzQsMzUsM2Evc3kzMy9zeTJ2OjE4L3N5MWE6ayxtLHQsdSwyNSwyZiwybCwzYywzZC9zeTRuL3N5NG86M2Yvc3kzeC9zeTN6L3N5NHA6aixrLDFhLDFzLDF1LDF3LDF4LDNnLDNoLDNpL3N5Mjkvc3kzbDoxZS9zeTFvOjFtL3N5Mmg6M20vc3kxNDoxdCwyMi9zeTJmOmosayxxLDFzLDF3LDF4LDIzLDNvL3N5Mmcvc3kzcy9zeTQwOjFvL3N5M3Ivc3kzdS9zeTN2L3N5MWcvc3kzcC9zeTN3OmIsaiwxYSwxcywxdywxeCwyMywzaCwzdi9zeTN5OjFlL3N5M286MjUsMmksMmwsMncsM2ksM3AsM3IsM3QsM3UsM3csM3gsM3ksM3ovc3kxcjoyaywycywydCwzMSwzbiwzcSwzcyw0MC9zeTRzL3N5MnEvc3kyeS9zeTJ0OjFuLDNkL3N5NHUvc3k0dDoxZS9zeTI3OjFiLDF2LDF3LDNxLDQ2LDQ3L3N5MnA6MWUvc3kzbjoxZS9zeTQ1OjFlL3N5MjYvc3k0ODoxZS9zeTQ5OjFlL3N5NGEvc3k0Yjo0Zi9zeTRjOjNvLDRnL3N5Mjg6MjUsMjYsMjcsMmIsMmksMnAsMncsMnksNGMsNGQsNGUsNGgvc3k0ZToxZS9zeTJhOmssMjgsMnYsMzgsMzksNGEsNGIsNGksNGovc3kxdC9zeTRtOjE2L3N5MmI6MzIsMzUsMzgsMzksM28sNGwsNG0vc3kyZTozayw0MS9zeTIyL3N5MzAvc3k1MjoxOSwxcywyMy9zeTU0OjFhL3N5Mzcvc3kyMDoxaS9zeTM1OjFzLDF1LDF3LDJnL3N5MzQ6aywxbiwxeiwydCwzYyw0dCw0dSw0di9zeTE1OjF1L3N5cTp3LDEwLDNiLDNlLDNqLDNsLDQyLDQzLDQ0LDQ1LDQ4LDQ5LDRrLDRuLDRvLDRwLDRxLDRyLDRzLDR3LDR4L3N5NHcvc3lvOm8scCxyLDR5LDR6L3N5MTE6ZCwxOC9zeTEzOjF1LDIyLDUxL3N5MTY6Mm0vc3kxdy9zeTUxOjFmLDNwLDQ2LDRyLDR2L3N5Mngvc3kxeDo0eSw1NCw1NSw1Ni9zeTR2OmosayxxLDFhLDF3LDIzLDNyLDQ1LDR6L3N5Mzkvc3kxczo0cS9zeTR6OjFlL3N5NWQ6MWUvc3k1MDpqLHEsMXksMjgsMmEsMmIsMmksMmwsM28sNWEsNWIsNWMvc3k0cjoxZS9zeTR4OmssMW4sMXosNHYvc3k0eTpzLDJ1LDNjL3N5NTMvc3k1NToxOCwxcy9zeTFjOjQseCx5LDUwLDUyLDUzLDU3LDU4LDU5LDVkLDVlLDVmLDVnLDVoLDVpL3N5NWYvc3k1Zy9zeTVpL3N5NWsvc3k1bC9zeTVtL3N5NW4vc3k1bzoxOC9zeTVqL3N5NWg6NCx6LDUwLDU4LDVhLDVoLDVtLDVuLDVvLDVwLDVxLDVyLDVzL3N5NXA6NWosNXQvYmFzZTpkLHIsdSx2LHkseiwxMCwxMSwxMiwxMy9zeTVxL3N5NXIvc3k1czpjLGgvc3k1dDoybSwzbiwzbyw0eC9zeTdkL3N5NXU6MWwsMm8sNXIsNjAvc3k3cS9zeTZ0L3N5ODU6MTYvc3k4NDpqLDFyLDF3LDIzLDI4LDJpLDM1LDN0LDUzLDVpLDYzLDY0L3N5NXY6MTMsNTEsNjIsNjUvc3k2Yy9zeTZzOjQxL3N5ODY6MzUsNjQsNjgvc3k3bDpqLGsscSwxZSwxZiwxdSwxdywzbywzdSwzdi9zeTY3L3N5NXc6MzIsMzgsNDUsNXosNjYsNjcsNjksNmEsNmIvc3k1eC9zeTdlOjNkLDNtLDYwL3N5OHM6NmUvc3k5czoxZS9zeTV5OmYsaiwxaywxdywyMiwyMyw1YSw1biw2Ziw2Zy9zeTdyOjE0LDR0L3N5NmI6MnQsMzMvc3k1ejozNSwzZiwzayw0MSw0cCw2aSw2ai9zeTd6OjFlL3N5NjI6aC9zeThuOjFvLDFzL3N5NjA6MWIsMmQsMm4sNDEsNDYsNDcsNmwsNm0sNm4vc3k4bTpqLHEsMWcsMXcsMXgsMjMsNm4vc3k4bzoxNi9zeTc3L3N5Nnc6aiwxciwxdywyOCwyYSwyYywyaSwzayw1Yiw2ci9zeTdpL3N5OGwvc3k2MTp6LDEyLDJwLDJyLDM1LDNkLDQxLDR1LDU5LDVpLDV5LDV6LDYxLDZtLDZwLDZxLDZzLDZ0LDZ1L3N5NjM6MjUsMmksNGUvc3k2NDprLDI1LDI3LDJkLDJpLDJxLDRnL3N5NmQvc3k2OToxbiw0Ziw2Mi9zeTY4OjFlLDZ6L3N5N3Avc3k4YS9zeThjOjFlL3N5NjU6MWIsMjksMnAsM2csNmssNnUsNnksNzAsNzEsNzIsNzMvc3k2ei9zeTY2OjFjLDJrLDJyLDM1LDNzLDQwLDR3LDVmLDVnLDVuLDVvLDV6LDZmLDZqLDc1L3N5N286aixrLDFhLDFxLDF3LDF4LDF6LDNnL3N5Nmsvc3k2YTo1Nyw2eiw3MSw3Nyw3OC9zeThrOjFlL3N5OGY6MWUvc3k2ZToxNSwxdywyaSwzMCwzbyw0OSw0YSw0aiw0eiw3YSw3Yi9zeTZmOjFvLDFzLDF3LDI4LDJhLDJ1LDM1LDNrLDNyLDV6LDZlLDZxLDZyL3N5N2o6YywxaCwxaiwzNy9zeTdrOjFvLDM4LDM5LDZhL3N5Nmc6MWMsM2EsNDQsNGwsNW8sNXAsNjEsNjcsNzgsN2UsN2Yvc3k2aDozZSw0Miw0cSw2Myw2OC9zeTZpOmoscSwxNiwxOCwxdywzNS9zeTZyL3N5Nmo6MjUsMjcsMmksM28sN2UsN2ovc3k2bDoxNywyMywyOCwyaywydCwzMSwzayw1cS9zeThiOjJkL3N5ODA6MmQsN2ovc3k2eToxYiwyNSwyNywyaSwycCw0Yyw2MSw3Myw3bSw3bi9zeTZ4OjJiLDJlLDJ3LDRoLDVoLDcyLDdvL3N5Nm06MmEsNDEsN3Avc3k3eDoxZS9zeTd5OjJpLDdyL3N5OHI6MWIsMWcsMXUsMXcsMnAsM3MsNGMsNmwsN24sN3Mvc3k2bjoyYyw0MSw0dSw1OSw3NSw3byw3dC9zeThoOjFlL3N5Nm86MmksN2UsN3Yvc3k2cDoxaywxeiwzNSwzbyw0bSw0diw1bS9zeTZxOmssMjUsMjgsMmkvc3k2dS9zeTZ2OmosMTgsMXcvc3k3My9zeTcwOjFxLDFzLDF3LDJzLDJ0LDMxLDQ2LDQ3LDVnLDgxL3N5NzEvc3k4OToxZS9zeTcyOmosaywxeSwyaSwzMSwzZywzbyw1Niw1aSw2aSw3ciw4NC9zeTc0OjF3LDI4LDJpLDNyL3N5NzU6aixrLHEsMWEsMXcsM2csM3Qvc3k3NjoyNSwyaSw3My9zeTc4OmoscSwxNiwxbywxdSwxdywyYSwyaSwzNSwzbyw2ci9zeTc5OjJpLDdlLDdmL3N5ODI6MWUvc3k4MzoxZS9zeTdhOjFwLDF4LDIwLDJiLDJqLDJ3LDN4LDRhLDRiLDRkLDVoLDV3LDV5LDY2LDZ0LDcwLDcyLDdhLDd2LDhiLDhjL3N5N2I6NmYsN28sN3osOGMvc3k3YzpxLDFrLDF3LDF4LDJmLDMxLDZkLDZnLDZqL3N5N2Y6NDEsN2wvc3k3Zzo0MS9zeTdoOmosMXksMXovc3k3bToyNSwyNiwyaS9zeTduOmoscSwxOCwxdywxei9zeTdzL3N5N3U6MjAvc3k3dDoyNSwzbyw1aCw4bCw4bS9zeTd2OjFiLDFlLDI1LDJwLDhsL3N5N3c6MW8sNmwsN24sN3Mvc3k4MToyNSwyaSw0aCw4Yiw4Yy9zeTg3OmosMXksMXosMjAsNWgvc3k4ODo3Nyw4NS9zeThkOjExLDJyLDM0LDM1LDQxL3N5OGU6MmksMzgsN2IsN2Uvc3k4ZzoxZSwyNSwydy9zeThpOjFjLDMyLDNvLDdlL3N5OGo6MzgsNDEsN2Uvc3k4cToyNSwyYiwyaSwycCw4Yy9zeThwOjQxLDZ1LDZ6LDdwLDd0LDh5L3N5OHQ6NG8sN2Uvc3k4dToxYiwyNSwyNiw0Mi9zeTh2OjF5L3N5OHg6MWUvc3k4dzpqLHEsMXcsMmksM2csOTMvc3k4eTprLDFiLDI1LDJwLDYxLDgzL3N5OHo6aiwxdywyYSwyaSwzdCw4My9zeTkwOjF3LDJpLDNnLDgxLDkzL3N5OTE6aixxLDFiLDF5LDJlL3N5OTI6aywxYiwxeSwyMywyNiwycCw3ciw3eiw4NCw4Ni9zeTkzOjExLDJvLDJ0LDQwLDhkL3N5OTQ6aixrLHEsMWYsMXYsMXcsMXgsMjMsMnosNjEvc3k5NToyNSw0Miw4bS9zeTk2OmosayxxLDFlLDFvLDF5LDMxLDR1LDU5LDYxL3N5OTc6aixrLDF6LDNvLDR2LDVnL3N5OTg6MXcsMmEsMzUsNG0sNTQsNnIvc3k5OToxdywyNCwyYSwydywzNSwzdywzeCw0bSw1NCw2ci9zeTlhOmosaywxdSwxdywzNi9zeTliOmosayxxLDF5LDIzLDJ6LDN0LDQzLDZ5LDdtL3N5OWM6MjUsMjYsMjcsMmIsN3Qvc3k5ZDo3by9zeTllOjFvLDFzLDF3LDIzLDRzLDZiL3N5OWY6aywyNSw3dC9zeTlnOmssMjUsMzEsM2wsM3IsNHUsNTksNWQvc3k5aDoyNSwyNywyaS9zeTlpOmssMTEsMjUsMjgsMmksM3IsNGYsNXkvc3k5ajpqLGsscSwxeSwybCwyciwzMSw0dSw1OS9zeTlrOjI3LDQxL3N5OWw6MXcsMjgsMmksMzEsM3IsNHUsNTkvc3k5bTprLDI1LDJsLDMxLDR1LDU5L3N5OW46MjUvc3k5bzprLDI1LDJ0LDMxLDM1LDNpLDNvLDN6LDR1LDU5L3N5OXA6MjUsMm8sMzEsNHUsNTkvc3k5cToyNSwyNyw3dCw4Yy9zeTlyOmssMjUsMmYsMmwsM2wsNXMsNmcvc3k5dDoyaSw1Yy9zeTl1OnMsMXMsMXcsMjMsMnUsM2MsNTIsNmQvc3k5djozNSwzayw0MSw2ai9zeTl3OjQwL3N5OXg6aixxLDE4LDF3LDM1LDRtLDU0L2Jhc2Vfc3luY19tb2RfY2h1bms6NXYvcjlLTWpiOjhqL1ZjR1M4OjhrL3pDa0tCYzoyeC9pNlhvbWU6OHYvbk81ZFRkOjd4L090S1NKZTozai9udlg0VmI6M3kvRGx2RjFkOjQxLGFiL2Y5MHRDYjo3bC9WYlhyVWU6OGcsYWMsYWQvcEVTbERiOjhpL0ttQmZjYzo5NS9TVTN1aTo5aS9SYXE0Y2I6OHAvakJpc2FmOjU1L1B6VWRaYjo0OC9xVExkUTo4bi9XcWxjVmI6OG8vUUhBdGVmOjh0LGFjL1VBOEdTZTo4eCxhYy9MVmlNTTo3NixhYi9wZXZ0dmM6OWYvaXpqbVA6OWcvamd4OG1lOmExLGFjL3VobExHYjo2cy9GcUhjR2U6OWIvY3lDVmxkOjRpL29QcDVMZTo4Mi9BNG9BVmU6OTcvT3NtNDljOjg2L1BEdjZNZTo5OSxheS9vc1R0eGU6OHEvcVZEZ0JkOjhyL0hEbVUxZTo3dC9MSFA3SmQ6N28vVHUzTUI6N3AsYjMvRnNvWHpjOjdxLGFjLGI0L2lhaTJpYzo5Mi90UGdZemQ6ODcvYTY2TGZlOjk0L0lXcFVyZjo4OC9kSGNvSWY6OTYvb1hCV0hmOjk4L0lUdUNVYjo2cC9OcjBrZmU6ODUvYWNGdVZjOjhzLGJkL21tMk4wYzo5aC9oYjBXbWY6N2QvaE5lbHZkOmEzL3I1Q09IZjo3aS9aUUt4MToycS9wZTJvamI6MzIsYTcsYmovaGFvdU9lOjg5L2pKZkNvZDphMixhYi93U240YWM6NnYsYWMsYXQsYmMvaGExSWk6OHkvT003eG9iOjh6LGFjLGIyLGI0LGJvL0ZpTkdPYzo2ayxhYy9Xc2lNaWM6Nm8sYWMvVUFNNW06NzQsYnEvRDlXTWQ6NncveTlub09iOjZ4LGJqL1cwZ1NLYjo2OSxhYy9Id2xPaGQ6NjUvaGpyTm46ODAvdkRjazFkOjRuLGJrL0h4amxiYjozYixiay9uMERIZzo3eS9uQnZCeWQ6OWosYjIvZURVRG9jOjlrLGIzL1ZPVVA5ZDo4ZCxidy9iemowamQ6OWEsYWIsYzMvdVJJYUM6OW0sYjIvY2dTRW9iOjljL1hlUlhCZDo5ZC9zNjQ5ajo5cS91U3hkbmI6OXMvV2ZmNkJkOjd1LGFjLGIyLGIzL1UzbXpzZDo5dC95UDBKQmQ6OXUvUnFhSnNkOjl2L0UzSGViYzo5dy9wMXZFU2Q6YTAvQVQ4TFRlOjl5L3NET1RHZTo5bi9lY3VQQWM6NmgvTlFjMUlkOjhmL0ZRZElKZTo5ei9ibFpaWGU6OGgsYWMvZ0FPWXg6NmEvSU5jMUVmOjdnLGJrLGNtL2xQV2prYjo0byxhYy9vakdUNmQ6OHUvZDJMVHhiOjRrLGF2L0haNDFPZDo4dyxiay9lM1V0Vzo4ZSxiMy9hVTFHVGI6OTAsY28vSWJ4eE9lOjkxL3ZpVVdWOjU4L0R2WkM5OjlsL2ZBemRUOjZjLGJrLGJ2LGJ3LGNtL2ZnbEpOYjo4YSxjbS9pbFFTQWY6OW8vVWtadVdiOjlyLGFjL2w4YUtEYjo3ay9jbnE1UWI6OXgsYjIvbjlESkJmOjd3L2ZLRThxZDo3Yy9uN2VvMjo5cC9SWmVrSjo5ZS9RbWtNRTo3aCxhYy9OdWlsdWU6NzksYWEsYWosYWssYnksYnosY28sY3EvbWVIOUViOjUsNXQsYWEsYWssYnksYnosY28sY3EsY3YveUVmTkZiOjVqLGFqLGQ5L3I3OERyYjo1dSxhaixkOScsWydzeTEnLCdzeTUnLCdzeTYnLCdzeTcnLCdzeTgnLCdzeWMnLCdzeWcnLCdzeWgnLCdzeWEnLCdzeTknLCdzeWsnLCdzeWInLCdzeWQnLCdzeWUnLCdzeWYnLCdzeWknLCdzeWonLCdzeWwnLCdzeW0nLCdiYXNlJ10pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgUHQsUXQsVnQ7Xy5NdD1mdW5jdGlvbihhKXt2YXIgYj1fLmpmO2ZvcihsZXQgYz0wLGQ9YS5sZW5ndGg7YzxkO2MrKyliLkFhKGFbY10pfTtfLk50PWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uamYuR2EoYSw0LGIpfTtfLk90PWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5CZihmdW5jdGlvbihiLGMpe2MoYSl9KX07UHQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhLmNsYXNzTmFtZT09InN0cmluZyI/YS5jbGFzc05hbWU6YS5nZXRBdHRyaWJ1dGUmJmEuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIn07UXQ9ZnVuY3Rpb24oYSxiKXt0eXBlb2YgYS5jbGFzc05hbWU9PSJzdHJpbmciP2EuY2xhc3NOYW1lPWI6YS5zZXRBdHRyaWJ1dGUmJmEuc2V0QXR0cmlidXRlKCJjbGFzcyIsYil9OwpfLlJ0PWZ1bmN0aW9uKGEsYil7YS5jbGFzc0xpc3Q/Yj1hLmNsYXNzTGlzdC5jb250YWlucyhiKTooYT1hLmNsYXNzTGlzdD9hLmNsYXNzTGlzdDpQdChhKS5tYXRjaCgvXFMrL2cpfHxbXSxiPV8uc2IoYSxiKT49MCk7cmV0dXJuIGJ9O18uU3Q9ZnVuY3Rpb24oYSxiKXtpZihhLmNsYXNzTGlzdClhLmNsYXNzTGlzdC5hZGQoYik7ZWxzZSBpZighXy5SdChhLGIpKXtsZXQgYz1QdChhKTtRdChhLGMrKGMubGVuZ3RoPjA/IiAiK2I6YikpfX07Xy5UdD1mdW5jdGlvbihhLGIpe2EuY2xhc3NMaXN0P2EuY2xhc3NMaXN0LnJlbW92ZShiKTpfLlJ0KGEsYikmJlF0KGEsQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKGEuY2xhc3NMaXN0P2EuY2xhc3NMaXN0OlB0KGEpLm1hdGNoKC9cUysvZyl8fFtdLGZ1bmN0aW9uKGMpe3JldHVybiBjIT1ifSkuam9pbigiICIpKX07Cl8uVXQ9ZnVuY3Rpb24oYSxiKXtpZih0eXBlb2YgYSE9PSJmdW5jdGlvbiIpaWYoYSYmdHlwZW9mIGEuaGFuZGxlRXZlbnQ9PSJmdW5jdGlvbiIpYT0oMCxfLkNhKShhLmhhbmRsZUV2ZW50LGEpO2Vsc2UgdGhyb3cgRXJyb3IoIk9hIik7cmV0dXJuIE51bWJlcihiKT4yMTQ3NDgzNjQ3Py0xOl8udS5zZXRUaW1lb3V0KGEsYnx8MCl9O1Z0PWZ1bmN0aW9uKGEpe2Euaj1fLlV0KCgpPT57YS5qPW51bGw7YS5vJiYhYS5CJiYoYS5vPSExLFZ0KGEpKX0sYS5JKTt2YXIgYj1hLkQ7YS5EPW51bGw7YS5NLmFwcGx5KG51bGwsYil9O18uV3Q9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKGEsYixjKXtzdXBlcigpO3RoaXMuTT1jIT1udWxsP2EuYmluZChjKTphO3RoaXMuST1iO3RoaXMuRD1udWxsO3RoaXMubz0hMTt0aGlzLkI9MDt0aGlzLmo9bnVsbH12KGEpe3RoaXMuRD1hcmd1bWVudHM7dGhpcy5qfHx0aGlzLkI/dGhpcy5vPSEwOlZ0KHRoaXMpfXN0b3AoKXt0aGlzLmomJihfLnUuY2xlYXJUaW1lb3V0KHRoaXMuaiksdGhpcy5qPW51bGwsdGhpcy5vPSExLHRoaXMuRD1udWxsKX1wYXVzZSgpe3RoaXMuQisrfXJlc3VtZSgpe3RoaXMuQi0tO3RoaXMuQnx8IXRoaXMub3x8dGhpcy5qfHwodGhpcy5vPSExLFZ0KHRoaXMpKX1sYSgpe3N1cGVyLmxhKCk7dGhpcy5zdG9wKCl9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKLyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLgoKIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZQoqLwp2YXIgc3UscXUsb3UsdXUsbnUsenUsQXUsRHUsR3UsSHUsSXUsTnUsVHUsVnUsJHUsaXYsbXYscXYscnY7Xy5YdD1mdW5jdGlvbihhKXtyZXR1cm4gYT09bnVsbHx8dHlwZW9mIGE9PT0ic3RyaW5nIj9hOnZvaWQgMH07Xy5ZdD1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPV8ueSgpLGQ9Yy5yZXNvbHZlKF8uSW4oYSkpO2Q/KGIoZCksUHJvbWlzZS5yZXNvbHZlKGQpKTpjLnJlc29sdmUobmV3IF8uVXMoYSkpLnRoZW4oZT0+e2IoZSk7cmV0dXJuIGV9KX07Xy4kdD1mdW5jdGlvbihhKXt2YXIgYj1fLlp0O18uWnQ9YTtyZXR1cm4gYn07Xy5idT1mdW5jdGlvbihhKXtyZXR1cm4gYT09PV8uYXV8fGE/Lm5hbWU9PT0iXHUwMjc1Tm90Rm91bmQifTtfLmN1PWZ1bmN0aW9uKGEsYil7aWYoYT8uaWEpdGhyb3cgRXJyb3IoIlNhYCIrU3RyaW5nKGEuZGVidWdOYW1lKSk7Zm9yKDthIT09dm9pZCAwOyl7bGV0IGM9YTtpZihjLlJoKXJldHVybiBjLlJoKGIse29wdGlvbmFsOiEwfSk7YT1hLnBhcmVudH1yZXR1cm4gXy5hdX07Cl8uZHU9ZnVuY3Rpb24oYSl7cmV0dXJue2Rlc2NyaXB0aW9uOmEsQ2I6e016OiJyb290Iix0b2tlbjpTeW1ib2woYSksS3A6dm9pZCAwLHZhbHVlOnZvaWQgMH19fTtfLmV1PWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYSYmYj9gJHthfV9fJHtifWA6YT8/Yj8/Y307Xy5ndT1mdW5jdGlvbihhLGIpe3JldHVybnsuLi5fLmR1KGI/PyIiKSxbXy5mdV06ITAsZGVidWdOYW1lOmI/PyJbY29udGV4dF0iLGRlZmF1bHRWYWx1ZTphPy5kZWZhdWx0VmFsdWUscmVxdWlyZWQ6IWF8fCFPYmplY3QuaGFzT3duKGEsImRlZmF1bHRWYWx1ZSIpLGlkOmIsT0s6dm9pZCAwfX07Xy5odT1mdW5jdGlvbihhLGIpe2I9Xy5jdShiLGEpO2lmKF8uYnUoYikpe2lmKGEucmVxdWlyZWQpdGhyb3cgRXJyb3IoImpiYCIrYS5kZWJ1Z05hbWUpO3JldHVybiBhLmRlZmF1bHRWYWx1ZX1yZXR1cm4gYn07Xy5pdT1mdW5jdGlvbihhLGIpe3JldHVybiBPYmplY3QuaXMoYSxiKX07Cl8ua3U9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5qdTtfLmp1PWE7cmV0dXJuIGJ9O18ucHU9ZnVuY3Rpb24oYSl7aWYobHUpdGhyb3cgRXJyb3IoImgiKTtpZihfLmp1IT09bnVsbCl7Xy5qdS5pcChhKTt2YXIgYj1fLmp1LmtmO2lmKGI9PT12b2lkIDB8fGIuTWghPT1hKXt2YXIgYz12b2lkIDAsZD1fLmp1LmNuO2lmKGQmJihjPWIhPT12b2lkIDA/Yi5yZTpfLmp1LnByb2R1Y2VycyxjIT09dm9pZCAwJiZjLk1oPT09YSkpe18uanUua2Y9YztjLkhxPWEudmVyc2lvbjtjLm9qPV8ubXU7cmV0dXJufXZhciBlPWEuVWc7aWYoZT09PXZvaWQgMHx8ZS5EZiE9PV8uanV8fGQmJmUub2ohPT1fLm11KWQ9bnUoXy5qdSksYz17TWg6YSxEZjpfLmp1LHJlOmMsTWo6dm9pZCAwLG9qOl8ubXUsSHE6YS52ZXJzaW9uLHFlOnZvaWQgMH0sXy5qdS5rZj1jLGIhPT12b2lkIDA/Yi5yZT1jOl8uanUucHJvZHVjZXJzPWMsZCYmb3UoYSxjKX19fTsKXy5ydT1mdW5jdGlvbihhKXtpZighbnUoYSl8fGEuUGIpaWYoYS5QYnx8YS5yaiE9PV8ubXUpKGEuWG0oYSl8fHF1KGEpKSYmYS5ZbShhKSxhLlBiPSExLGEucmo9Xy5tdX07c3U9ZnVuY3Rpb24oYSl7aWYoYS5jb25zdW1lcnMhPT12b2lkIDApe3ZhciBiPWx1O2x1PSEwO3RyeXtmb3IobGV0IGM9YS5jb25zdW1lcnM7YyE9PXZvaWQgMDtjPWMucWUpe2xldCBkPWMuRGY7ZC5QYnx8KGQuUGI9ITAsc3UoZCksZC5ocD8uKGQpKX19ZmluYWxseXtsdT1ifX19O18udHU9ZnVuY3Rpb24oYSl7aWYoYSl7aWYoYS5rZj8ub2o9PT1fLm11KXtsZXQgYj1hLnByb2R1Y2Vycztmb3IoO2IhPT12b2lkIDA7KWIub2o9bnVsbCxiPWIucmV9YS5rZj12b2lkIDA7YS5jbj0hMH1yZXR1cm4gXy5rdShhKX07Cl8udnU9ZnVuY3Rpb24oYSl7YS5jbj0hMTt2YXIgYj1hLmtmLGM9YiE9PXZvaWQgMD9iLnJlOmEucHJvZHVjZXJzO2lmKGMhPT12b2lkIDApe2lmKG51KGEpKXtkbyBjPXV1KGMpO3doaWxlKGMhPT12b2lkIDApfWIhPT12b2lkIDA/Yi5yZT12b2lkIDA6YS5wcm9kdWNlcnM9dm9pZCAwfX07cXU9ZnVuY3Rpb24oYSl7Zm9yKGE9YS5wcm9kdWNlcnM7YSE9PXZvaWQgMDthPWEucmUpe2xldCBiPWEuTWgsYz1hLkhxO2lmKGMhPT1iLnZlcnNpb24pcmV0dXJuITA7Xy5ydShiKTtpZihjIT09Yi52ZXJzaW9uKXJldHVybiEwfXJldHVybiExfTtvdT1mdW5jdGlvbihhLGIpe3ZhciBjPWEuVWcsZD1udShhKTtjIT09dm9pZCAwPyhiLnFlPWMucWUsYy5xZT1iKTooYi5xZT12b2lkIDAsYS5jb25zdW1lcnM9Yik7Yi5Naj1jO2EuVWc9YjtpZighZClmb3IoYT1hLnByb2R1Y2VyczthIT09dm9pZCAwO2E9YS5yZSlvdShhLk1oLGEpfTsKdXU9ZnVuY3Rpb24oYSl7dmFyIGI9YS5NaCxjPWEucmUsZD1hLnFlLGU9YS5NajthLnFlPXZvaWQgMDthLk1qPXZvaWQgMDtkIT09dm9pZCAwP2QuTWo9ZTpiLlVnPWU7aWYoZSE9PXZvaWQgMCllLnFlPWQ7ZWxzZSBpZihiLmNvbnN1bWVycz1kLCFudShiKSlmb3IoYT1iLnByb2R1Y2VyczthIT09dm9pZCAwOylhPXV1KGEpO3JldHVybiBjfTtudT1mdW5jdGlvbihhKXtyZXR1cm4gYS5ncHx8YS5jb25zdW1lcnMhPT12b2lkIDB9O18ud3U9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigpO307Xy55dT1mdW5jdGlvbihhLGIpe18uanU/LkxlIT09ITF8fF8ud3UoYSk7YS5lcXVhbChhLnZhbHVlLGIpfHwoYS52YWx1ZT1iLGEudmVyc2lvbisrLF8ubXUrKyxzdShhKSx4dT8uKGEpKX07enU9ZnVuY3Rpb24oYSxiKXtiLnptPXZvaWQgMDthLlpqP2EuWmouem09YjphLlVrPWI7YS5aaj1ifTtBdT1mdW5jdGlvbihhLGIpe3p1KGEse1tTeW1ib2wuZGlzcG9zZV06Yn0pfTsKXy5CdT1mdW5jdGlvbihhKXt2YXIgYj1fLlp0O2ImJiFiLmlhJiYoenUoYixhKSxhLnBhcmVudD1iKX07RHU9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPWEuVWs7Yjspe2xldCBjPWIuem07Xy5DdShiKTtiPWN9YS5Vaz12b2lkIDA7YS5aaj12b2lkIDB9O18uQ3U9ZnVuY3Rpb24oYSl7YS5pYXx8KGEuaWE9ITAsYVtTeW1ib2wuZGlzcG9zZV0/LigpLGEucGFyZW50PXZvaWQgMCxEdShhKSl9O18uRnU9ZnVuY3Rpb24oYSl7cmV0dXJuKDAsXy5xcikoYSkmJl8uRXUgaW4gYX07R3U9ZnVuY3Rpb24oYT1fLlp0KXtmb3IoO2E7KXtpZihfLkZ1KGEpKXJldHVybiBhO2E9YS5wYXJlbnQ/P251bGx9cmV0dXJuIG51bGx9O0h1PWZ1bmN0aW9uKGE9Xy5adCl7Zm9yKHZhciBiPVtdO2E7KV8uRnUoYSkmJmIucHVzaChhLmRlYnVnTmFtZSksYT1hLnBhcmVudD8/bnVsbDtyZXR1cm4gYn07Ckl1PWZ1bmN0aW9uKGEpe3JldHVybigwLF8ucXIpKGEpJiZhLm5hbWUhPT12b2lkIDAmJmEubGohPT12b2lkIDAmJmEucGFyZW50IT09dm9pZCAwfTtfLkx1PWZ1bmN0aW9uKCl7dmFyIGE9ey4uLkp1fTtPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhKdSkuZm9yRWFjaChiPT57Xy5LdVtiXSE9PXZvaWQgMCYmKGFbYl09Xy5LdVtiXSl9KTtyZXR1cm4gYX07Xy5SdT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Xy5NdTtiJiYoXy5NdT1iKTt0cnl7cmV0dXJuIGM9PW51bGw/YSgpOmEuY2FsbChjKX1jYXRjaChlKXtOdShlLF8uTXUpO2lmKGUhPT1PdSl7Xy5QdT1fLk11O2E9W107Zm9yKGI9Xy5adDtiOylhLnB1c2goYi5kZWJ1Z05hbWU/PyJbY29udGV4dF0iKSxiPWIucGFyZW50Pz9udWxsO18uUXU9YS5yZXZlcnNlKCl9T3U9ZTt0aHJvdyBlO31maW5hbGx5e18uTXU9ZH19OwpOdT1mdW5jdGlvbihhLGIpe3RyeXtsZXQgYz1fLlN1KGIpO2lmKGMmJiFhLk5kPy5jb21wb25lbnRTdGFjayYmKGEuTmQ/YS5OZC5jb21wb25lbnRTdGFja3x8KGEuTmQuY29tcG9uZW50U3RhY2s9Yyk6YS5OZD17Y29tcG9uZW50U3RhY2s6Y30sXy5LdS5Cdikpe2xldCBkPWAke2EubWVzc2FnZX1cblxuQ29tcG9uZW50IHN0YWNrOiAke2N9YDthLnN0YWNrJiYoYS5zdGFjaz1hLnN0YWNrLnJlcGxhY2UoYS5tZXNzYWdlLGQpKTthLm1lc3NhZ2U9ZH19Y2F0Y2h7fX07VHU9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgNDpjYXNlIDM6cmV0dXJuInNldmVyZSI7Y2FzZSAyOnJldHVybiJ3YXJuaW5nIjtjYXNlIDE6Y2FzZSAwOnJldHVybiJpbmZvIjtkZWZhdWx0OnJldHVybiJ1bmtub3duIn19OwpfLlV1PWZ1bmN0aW9uKGEsYixjKXtpZihhLk5kKXJldHVybiBhO3RyeXtsZXQgZD0oYT09PU91P18uUHU6bnVsbCk/P18uTXU7TnUoYSxkKTthLk5kPXtjb21wb25lbnRTdGFjazpfLlN1KGQpLGZoOmIsQWw6Xy5MdSgpLHRhZ05hbWU6YyxwcjpfLlF1Py5zbGljZSgpPz9bXX07YS5yZXBvcnRTZXZlcml0eT1UdShiKX1jYXRjaHt9cmV0dXJuIGF9O1Z1PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wLGM9IiI7YjwyMCYmYTspYys9YCR7YCQkWElEOiR7YS5uYW1lfSQkYH0gPiBgLGE9YS5wYXJlbnQsYisrO3JldHVybiBjLnNsaWNlKDAsLTMpfTtfLlN1PWZ1bmN0aW9uKGEpe3JldHVybiBJdShhKXx8YT09PW51bGw/VnUoYSk6Xy5LdS5GcD8oYT1HdShhKSxIdShhKS5zbGljZSgwLDIwKS5tYXAoYj0+YCQkWElEOiR7Yn0kJGApLmpvaW4oIiA+ICIpKToiIn07Cl8uWXU9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5adDtpZihiKXt2YXIgYz1fLk11O0F1KGIsKCk9Pnt2YXIgZD1fLmt1KF8uV3U/PyhfLld1PU9iamVjdC5jcmVhdGUoey4uLl8uWHUsTGU6ITB9KSkpO3RyeXtfLlJ1KCgpPT52b2lkIGEoKSxjKX1jYXRjaChlKXt0aHJvdyBfLlV1KGUsNCksZTt9ZmluYWxseXtfLmt1KGQpfX0pfWVsc2UgXy5qdT09PV8uV3U/UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoIlhhIiksMik7fSk6UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoIiRhIiksMik7fSl9OyR1PWZ1bmN0aW9uKGEpe3ZhciBiPSgpPT57Xy5wdShhKTtyZXR1cm4gYS52YWx1ZX07YltfLlp1XT1hO3JldHVybltiLGM9PntfLnl1KGEsYyl9LGM9PntfLmp1Py5MZSE9PSExfHxfLnd1KGEpO18ueXUoYSxjKGEudmFsdWUpKX1dfTsKXy5KPWZ1bmN0aW9uKGEsYixjPSIiKXt2YXIgZD1PYmplY3QuY3JlYXRlKGF2KTtkLnZhbHVlPWE7Yj8uZXF1YWxzIT09dm9pZCAwJiYoZC5lcXVhbD1iLmVxdWFscyk7ZC5kZWJ1Z05hbWU9Xy5ldShiPy5kZWJ1Z05hbWUsYywiW3NpZ25hbF0iKTtyZXR1cm4gJHUoZCl9O18uZnY9ZnVuY3Rpb24oYSl7aWYoIWEuaWEpc3dpdGNoKGEuZWZmZWN0VHlwZSl7Y2FzZSBidjpfLmN2LnNjaGVkdWxlKGEpO2JyZWFrO2Nhc2UgXy5kdjpldi5zY2hlZHVsZShhKTticmVhaztkZWZhdWx0Ol8uZWIoYS5lZmZlY3RUeXBlLHZvaWQgMCl9fTtfLmp2PWZ1bmN0aW9uKCl7aWYoXy5ndj4wKV8uS3UuUmkmJl8uY3YuZmx1c2goKTtlbHNle2ZvcihsZXQgYSBvZiBodilhLmZsdXNoKCk7aXYoKX19O2l2PWFzeW5jIGZ1bmN0aW9uKCl7YXdhaXQgUHJvbWlzZS5yZXNvbHZlKCk7Zm9yKGxldCBhIG9mIGt2KWEuZmx1c2goKX07Cm12PWZ1bmN0aW9uKGEpe3ZhciBiPWEuaXNGbHVzaGluZzthLmlzRmx1c2hpbmc9ITA7dHJ5e2xldCBjPTA7Zm9yKDtjPGEuWmI7KXtsZXQgZD1hLkRkW2NdO2EuRGRbY109dm9pZCAwO2MrKztpZighZHx8IWQuUGIpY29udGludWU7bGV0IGU9W2RdLGY9ZDtmb3IoO2YucGFyZW50IT09dm9pZCAwOylmPWYucGFyZW50LCgwLF8ubHYpKGYpJiZmLlBiJiZlLnB1c2goZik7Zm9yKDtlLmxlbmd0aD4wOyllLnBvcCgpLnJ1bigpfWEuWmI9MH1maW5hbGx5e2EuaXNGbHVzaGluZz1ifX07Xy5vdj1mdW5jdGlvbihhLGI9Xy5adCl7aWYoYiYmIWIuaWEmJihiPV8uaHUobnYsYiksYj8ucmVwb3J0RXJyb3IpKXtiLnJlcG9ydEVycm9yKGEpO3JldHVybn10aHJvdyBhO307Cl8ucHY9ZnVuY3Rpb24oYSxiLGMpe2E9T2JqZWN0LmNyZWF0ZShhKTtiJiYoYS5mbj1iKTtjJiYoYS5kZWJ1Z05hbWU9Yyk7Xy5qdT09PV8uV3U/UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoIlRhIiksMik7fSk6Xy5adD09PW51bGw/UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoImNiIiksMik7fSk6Xy5CdShhKTthLmNvbXBvbmVudFN0YWNrPV8uTXU7cmV0dXJuIGF9O3F2PWZ1bmN0aW9uKGEpe2lmKCFhLmlhKXtpZihsdSl0aHJvdyBfLlV1KEVycm9yKCJ4YiIpLDQpO3ZhciBiPV8uJHQoYSk7dHJ5e18uUnUoKCk9PnthLlBiPSExO2lmKCEoYS52ZXJzaW9uPjApfHxxdShhKSl7YS52ZXJzaW9uKys7dmFyIGM9Xy50dShhKTt0cnl7YS5WaygpLGEuZm4oKX1maW5hbGx5e18ua3UoYyksYSYmXy52dShhKX19fSxhLmNvbXBvbmVudFN0YWNrLGEpfWNhdGNoKGMpe18uVXUoYyw0KSxfLm92KGMpfWZpbmFsbHl7Xy4kdChiKX19fTsKcnY9ZnVuY3Rpb24oYSl7dmFyIGI9RXJyb3IoIlphYCIrYS5kZWJ1Z05hbWUpO18uVXUoYiw0KTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57dGhyb3cgYjt9KX07Xy50dj1mdW5jdGlvbihhLGIpe2E9Xy5wdihzdixhLGIpO18uZnYoYSl9O18udXY9ZnVuY3Rpb24oYSxiPSEwKXt2YXIgYz17cGFyZW50OnZvaWQgMCxpYTohMSxVazp2b2lkIDAsWmo6dm9pZCAwLHptOnZvaWQgMH07YiYmXy5CdShjKTtiPV8uJHQoYyk7dHJ5e2EoYyl9ZmluYWxseXtfLiR0KGIpfXJldHVybigpPT52b2lkIF8uQ3UoYyl9O18udnY9ZnVuY3Rpb24oKXt9O18ud3Y9ZnVuY3Rpb24oKXt9O18ueHY9ZnVuY3Rpb24oKXt9O18uQnY9ZnVuY3Rpb24oYSl7aWYoXy5qdT09PV8ueXZ8fF8uanU9PT1fLnp2KXRocm93IF8uVXUoRXJyb3IoIllhIiksNCk7cmV0dXJuIHR5cGVvZiBhPT09ImZ1bmN0aW9uIj9hKCk6YT8uW0F2XT9hLmdldCgpOmF9O18uQ3Y9ZnVuY3Rpb24oKXt9O18uRHY9e307Cl8uVXM9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qdj1hfX07Xy5Fdj1fLnUuSlNPTi5wYXJzZTtuZXcgY2xhc3MgZXh0ZW5kcyBfLmFle2luaXQoKXt9fTtfLkVhKCk7Xy5adD12b2lkIDA7Xy5hdT1TeW1ib2woImRiIik7dmFyIEZ2LGJ2O0Z2PVN5bWJvbCgiZWIiKTtidj1TeW1ib2woImZiIik7Xy5kdj1TeW1ib2woImdiIik7Xy5sdj1fLkNjKGE9PigwLF8ucXIpKGEpJiZGdiBpbiBhKTtfLmZ1PVN5bWJvbCgiaGIiKTt2YXIgbHU7Xy5qdT1udWxsO2x1PSExO18ubXU9MTtfLlp1PVN5bWJvbCgia2IiKTtfLlh1PXt2ZXJzaW9uOjAscmo6MCxQYjohMSxwcm9kdWNlcnM6dm9pZCAwLGtmOnZvaWQgMCxjb25zdW1lcnM6dm9pZCAwLFVnOnZvaWQgMCxjbjohMSxMZTohMSxncDohMSxraW5kOiJ1bmtub3duIixYbTooKT0+ITEsWW06KCk9Pnt9LGhwOigpPT57fSxpcDooKT0+e319O18uR3Y9U3ltYm9sKCJsYiIpO18uSHY9U3ltYm9sKCJtYiIpO18uSXY9U3ltYm9sKCJuYiIpO3ZhciBKdj17Li4uXy5YdSxncDohMCxMZTohMCxQYjohMCxraW5kOiJlZmZlY3QifTt2YXIgeHU9bnVsbCxhdj17Li4uXy5YdSxlcXVhbDpfLml1LHZhbHVlOnZvaWQgMCxraW5kOiJzaWduYWwifTtfLkt2PVN5bWJvbCgib2IiKTtfLkx2PVN5bWJvbCgicGIiKTtfLk12PVN5bWJvbCgicWIiKTtfLkV1PVN5bWJvbCgicmIiKTt2YXIgSnU9e3l2OiEwLEJ2OiExLEZwOl8uWXEsR3A6Xy5ZcSxHdjohMSxyaTohMSxISTohMCxSaTohMSxKcTohMX07Xy5LdT17YXR0cmlidXRlczp7fSxoYW5kbGVFcnJvcihhKXt0aHJvdyBhO30sLi4uSnV9O3ZhciBPdTtfLk11PW51bGw7Xy5QdT1udWxsO18uTnY9bmV3IFNldDtfLk92PW5ldyBjbGFzc3tjb25zdHJ1Y3Rvcigpe319O3ZhciBQdixTdixUdixWdixXdixYdixldixodixrdixadjtfLmd2PTA7UHY9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmlzRmx1c2hpbmc9ITE7dGhpcy5EZD1bXTt0aGlzLlpiPTB9c2NoZWR1bGUoYSl7dGhpcy5EZFt0aGlzLlpiKytdPWF9Y2xlYXIoKXtmb3IobGV0IGE9MDthPHRoaXMuWmI7YSsrKXRoaXMuRGRbYV09dm9pZCAwO3RoaXMuWmI9MH19O18uUXY9U3ltYm9sKCJ3YiIpO1N2PWNsYXNzIGV4dGVuZHMgUHZ7Zmx1c2goKXtpZih0aGlzLlpiIT09MCl7Zm9yKHZhciBhPTA7YTx0aGlzLlpiOyl7bGV0IGI9dGhpcy5EZFthXTt0aGlzLkRkW2FdPXZvaWQgMDthKys7aWYoYil0cnl7Yi5ydW4oKX1jYXRjaChjKXtSdihjKX19dGhpcy5aYj0wfX19O1R2PWNsYXNzIGV4dGVuZHMgU3Z7fTtfLlV2PW5ldyBUdjtWdj1jbGFzcyBleHRlbmRzIFB2e2ZsdXNoKCl7dGhpcy5aYj09PTB8fHRoaXMuaXNGbHVzaGluZ3x8bXYodGhpcyl9fTsKV3Y9Y2xhc3MgZXh0ZW5kcyBWdntzY2hlZHVsZShhKXthLnZlcnNpb249PT0wP2EucnVuKCk6c3VwZXIuc2NoZWR1bGUoYSl9Zmx1c2goKXtpZih0aGlzLlpiIT09MClpZihfLkt1LlJpKXtsZXQgYT17RGQ6dGhpcy5EZCxaYjp0aGlzLlpiLGlzRmx1c2hpbmc6ITF9O3RoaXMuRGQ9W107dGhpcy5aYj0wO212KGEpfWVsc2UgdGhpcy5pc0ZsdXNoaW5nfHxtdih0aGlzKX19O18uY3Y9bmV3IFd2O1h2PWNsYXNzIGV4dGVuZHMgVnZ7fTtldj1uZXcgWHY7aHY9W18uY3ZdO2t2PVtfLlV2LGV2XTtfLll2PVsuLi5odiwuLi5rdl07WnY9W107eHU9KCk9PntfLmp2KCk7Zm9yKGxldCBhIG9mIFp2KWEoKX07dmFyIFJ2PV8uJGI7dmFyIG52PV8uZ3Uoe2RlZmF1bHRWYWx1ZTpudWxsfSwiaW0xTWtmIik7Xy4kdj17Li4uSnYsW0Z2XTohMCxlZmZlY3RUeXBlOmJ2LEVKOiEwLGhwOl8uZnYscnVuKCl7cXYodGhpcyl9LFZrKCl7RHUodGhpcyl9LGNvbXBvbmVudFN0YWNrOnZvaWQgMCxkZWJ1Z05hbWU6IltlZmZlY3RdIixkZXN0cm95KCl7aWYobnUodGhpcykpe2xldCBhPXRoaXMucHJvZHVjZXJzO2Zvcig7YSE9PXZvaWQgMDspYT11dShhKX10aGlzLlVnPXRoaXMuY29uc3VtZXJzPXRoaXMua2Y9dGhpcy5wcm9kdWNlcnM9dm9pZCAwO18uQ3UodGhpcyk7dGhpcy5QYj0hMX0sW1N5bWJvbC5kaXNwb3NlXSgpe3RoaXMuZGVzdHJveSgpfX07dmFyIGF3O2F3PXtpcDpydn07Xy55dj1PYmplY3QuY3JlYXRlKHsuLi5fLlh1LExlOiEwLC4uLmF3fSk7Xy56dj1PYmplY3QuY3JlYXRlKHsuLi5fLlh1LExlOiEwLC4uLmF3fSk7dmFyIHN2PXsuLi5fLiR2LGVmZmVjdFR5cGU6YnZ9O18uYnc9e1BIKCl7fSxlSygpe30sWUgoKXt9LFNvKCl7fSxRSCgpe30sSmkoKXt9LEdmKCl7fSxIZigpe30sS2koKXt9fTt2YXIgQXY9U3ltYm9sKCJLYiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgZXc7Xy5jdz1mdW5jdGlvbihhLC4uLmIpe2EuYXJnc3x8KGEuYXJncz1bXSk7QXJyYXkuaXNBcnJheShhLmFyZ3MpJiZhLmFyZ3MucHVzaCguLi5iKX07Xy5kdz1mdW5jdGlvbihhKXtmb3IobGV0IGIgaW4gYSl7bGV0IGM9Xy5id1tiXSxkPWFbYl07Xy5id1tiXT0oLi4uZSk9PntjKC4uLmUpO2QoLi4uZSl9fX07Xy5mdz1mdW5jdGlvbihhKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsXy5FcSkmJmFbXy5FcV18fChhW18uRXFdPSsrZXcpfTtfLmd3PWZ1bmN0aW9uKGEsYixjKXthJiYhYyYmKGE9YS5wYXJlbnROb2RlKTtmb3IoYz0wO2E7KXtpZihiKGEpKXJldHVybiBhO2E9YS5wYXJlbnROb2RlO2MrK31yZXR1cm4gbnVsbH07Xy5odz1mdW5jdGlvbihhKXtyZXR1cm4gYT8oYT1hLnByaXZhdGVEb05vdEFjY2Vzc09yRWxzZVRydXN0ZWRSZXNvdXJjZVVybFdyYXBwZWRWYWx1ZSk/Xy5UYShhKTpudWxsOm51bGx9OwpfLml3PWZ1bmN0aW9uKGEpe2lmKF8uWnQpdGhyb3cgXy5VdShFcnJvcigiYWIiKSw0KTtyZXR1cm4gXy51dihiPT57Xy5ZdSgoKT0+e30pO2EoYil9LCExKX07ZXc9MDt2YXIganc7anc9e25hbWU6IjxSb290PiIscHJvcHM6e30sS3o6e30sZWZmZWN0czpbXSxkSTpbXSxnSTooKT0+e30sW1N5bWJvbCgiSmIiKV06ITB9OyhuZXcgV2Vha01hcCkuc2V0KGp3Lkt6LHtuYW1lOmp3Lm5hbWUscHJvcHM6ancucHJvcHN9KTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIHN3LHl3LHR3LHJ3O18ua3c9ZnVuY3Rpb24oYSxiLGMpe2lmKGEhPW51bGwmJmFbXy5PY109PT1fLlBjKXJldHVybiBhO2lmKEFycmF5LmlzQXJyYXkoYSkpe3ZhciBkPWFbXy5BY118MDtjPWR8YyYzMnxjJjI7YyE9PWQmJihhW18uQWNdPWMpO3JldHVybiBuZXcgYihhKX19O18ubHc9ZnVuY3Rpb24oYSl7dmFyIGI9YS5EYSxjPWJbXy5BY118MDtyZXR1cm4gXy5CYyhhLGMpP18uJGMoYSxiLGMpP18uYmQoYSxiLCEwKTpuZXcgYS5jb25zdHJ1Y3RvcihfLlpjKGIsYywhMSkpOmF9O18ubXc9ZnVuY3Rpb24oYSl7aWYoYS5qIT09Xy56YylyZXR1cm4hMTt2YXIgYj1hLkRhO2I9Xy5aYyhiLGJbXy5BY118MCk7YltfLkFjXXw9MjA0ODthLkRhPWI7YS5qPXZvaWQgMDthLm89dm9pZCAwO3JldHVybiEwfTtfLm53PWZ1bmN0aW9uKGEpe2lmKCFfLm13KGEpJiZfLkJjKGEsYS5EYVtfLkFjXXwwKSl0aHJvdyBFcnJvcigpO307Cl8ub3c9ZnVuY3Rpb24oYSxiKXtiPT09dm9pZCAwJiYoYj1hW18uQWNdfDApO2ImMzImJiEoYiY0MDk2KSYmKGFbXy5BY109Ynw0MDk2KX07Xy5wdz1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPWMrKGU/MDotMSksaD1hLmxlbmd0aC0xO2lmKGg+PTErKGU/MDotMSkmJmY+PWgpe2xldCBrPWFbaF07aWYoayE9bnVsbCYmdHlwZW9mIGs9PT0ib2JqZWN0IiYmay5jb25zdHJ1Y3Rvcj09PU9iamVjdClyZXR1cm4ga1tjXT1kLGJ9aWYoZjw9aClyZXR1cm4gYVtmXT1kLGI7ZCE9PXZvaWQgMCYmKGg9KGI/PyhiPWFbXy5BY118MCkpPj4xNCYxMDIzfHw1MzY4NzA5MTIsYz49aD9kIT1udWxsJiYoYVtoKyhlPzA6LTEpXT17W2NdOmR9KTphW2ZdPWQpO3JldHVybiBifTtfLnF3PWZ1bmN0aW9uKGEsYixjLGQpe18ubncoYSk7dmFyIGU9YS5EYTtfLnB3KGUsZVtfLkFjXXwwLGIsYyxkKTtyZXR1cm4gYX07c3c9ZnVuY3Rpb24oYSl7cmV0dXJuIHJ3W2FdfHwiIn07Cl8udXc9ZnVuY3Rpb24oYSl7YT10dy50ZXN0KGEpP2EucmVwbGFjZSh0dyxzdyk6YTthPWF0b2IoYSk7dmFyIGI9bmV3IFVpbnQ4QXJyYXkoYS5sZW5ndGgpO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7YysrKWJbY109YS5jaGFyQ29kZUF0KGMpO3JldHVybiBifTtfLnd3PWZ1bmN0aW9uKGEpe2lmKF8udnchPT1fLnZ3KXRocm93IEVycm9yKCJvIik7dmFyIGI9YS5qO2I9PW51bGx8fGIhPW51bGwmJmIgaW5zdGFuY2VvZiBVaW50OEFycmF5fHwodHlwZW9mIGI9PT0ic3RyaW5nIj9iPV8udXcoYik6KF8ueGEoYiksYj1udWxsKSk7cmV0dXJuIGI9PW51bGw/YjphLmo9Yn07Xy54dz1mdW5jdGlvbihhKXtpZihhIT1udWxsJiZ0eXBlb2YgYSE9PSJib29sZWFuIil0aHJvdyBFcnJvcigicmAiK18ueGEoYSkrImAiK2EpO3JldHVybiBhfTsKeXc9ZnVuY3Rpb24oKXt2YXIgYT1fLkRuKCk7dmFyIGI9W107Zm9yKGxldCBjPTA7YzxhLmxlbmd0aDtjKyspYi5wdXNoKCJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OS1fIi5jaGFyQXQoYVtjXSY2MykpO3JldHVybiBiLmpvaW4oIiIpfTt0dz0vWy1fLl0vZztydz17Ii0iOiIrIixfOiIvIiwiLiI6Ij0ifTtfLnZ3PXt9O18uenc9bmV3IF8uSSgid2ViQ29tbWFuZE1ldGFkYXRhIik7Xy5Bdz1uZXcgXy5JKCJ3YXRjaEVuZHBvaW50Iik7Xy5Cdz1jbGFzcyBleHRlbmRzIF8ucG17Y29uc3RydWN0b3IoYSl7c3VwZXIoYXJndW1lbnRzKTt0aGlzLmNzbj1hfX07Xy5Ddz1uZXcgXy5xbSgic2NyZWVuLWNyZWF0ZWQiLF8uQncpO18uRHc9eXc7Xy5Fdz1uZXcgTWFwO18uRnc9bmV3IE1hcDtfLkd3PW5ldyBNYXA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBRdyxSdyxhYWEsYmFhLFh3LFN3LGF4LEx3LGNhYSxZdyxadztfLkh3PWZ1bmN0aW9uKGEsYil7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5tYXAuY2FsbChhLGIsdm9pZCAwKX07Xy5Jdz1mdW5jdGlvbihhKXthPUVycm9yKGEpO18uQmIoYSwid2FybmluZyIpO3JldHVybiBhfTtfLkp3PWZ1bmN0aW9uKGEpe2E9PW51bGwmJihhPXZvaWQgMCk7cmV0dXJuIGF9O18uS3c9ZnVuY3Rpb24oYSxiLGMsZCl7Yz1fLkp3KGMpO18ucXcoYSxiLGMsZCk7YyYmIV8uQmMoYykmJl8ub3coYS5EYSk7cmV0dXJuIGF9O18uTXc9ZnVuY3Rpb24oKXtyZXR1cm4gTHd8fChMdz1uZXcgXy5SYyhudWxsLF8udncpKX07Cl8uTnc9ZnVuY3Rpb24oYSxiKXtpZihhIT1udWxsKWlmKHR5cGVvZiBhPT09InN0cmluZyIpYT1hP25ldyBfLlJjKGEsXy52dyk6Xy5NdygpO2Vsc2UgaWYoYS5jb25zdHJ1Y3RvciE9PV8uUmMpaWYoYSE9bnVsbCYmYSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpYT1hLmxlbmd0aD9uZXcgXy5SYyhuZXcgVWludDhBcnJheShhKSxfLnZ3KTpfLk13KCk7ZWxzZXtpZighYil0aHJvdyBFcnJvcigpO2E9dm9pZCAwfXJldHVybiBhfTtfLk93PWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09Im51bWJlciIpdGhyb3cgXy5JdygiaW50MzIiKTtpZighKDAsXy53cikoYSkpdGhyb3cgXy5JdygiaW50MzIiKTtyZXR1cm4gYXwwfTtfLlB3PWZ1bmN0aW9uKGEpe3JldHVybiBhPT1udWxsP2E6Xy5PdyhhKX07ClF3PWZ1bmN0aW9uKGEpe3ZhciBiPV8ucm0oKTtpZighYilyZXR1cm4gMDt2YXIgYz1iLnN1YnNjcmliZShfLkN3LnRvU3RyaW5nKCksKGQsZSk9Pnt2YXIgZj1fLnNhKCJ5dFB1YnN1YjJQdWJzdWIyU2tpcFN1YktleSIpO2YmJmY9PWN8fChmPSgpPT57aWYoXy5Lc1tjXSl0cnl7aWYoZSYmXy5DdyBpbnN0YW5jZW9mIF8ucW0mJl8uQ3chPWQpdHJ5e3t2YXIgaD1fLkN3Lmosaz1lO2lmKCFrLmFyZ3N8fCFrLnZlcnNpb24pdGhyb3cgRXJyb3IoInBhIik7bGV0IGw7dHJ5e2lmKCFoLkFlKXtsZXQgbT1uZXcgaDtoLkFlPW0udmVyc2lvbn1sPWguQWV9Y2F0Y2gobSl7fWlmKCFsfHxrLnZlcnNpb24hPWwpdGhyb3cgRXJyb3IoInFhIik7dHJ5e2U9UmVmbGVjdC5jb25zdHJ1Y3QoaCxfLnliKGsuYXJncykpfWNhdGNoKG0pe3Rocm93IG0ubWVzc2FnZT0ieXQucHVic3ViMi5EYXRhLmRlc2VyaWFsaXplKCk6ICIrbS5tZXNzYWdlLG07fX19Y2F0Y2gobCl7dGhyb3cgbC5tZXNzYWdlPSJ5dC5wdWJzdWIyLnB1YnN1YjIgY3Jvc3MtYmluYXJ5IGNvbnZlcnNpb24gZXJyb3IgZm9yICIrCl8uQ3cudG9TdHJpbmcoKSsiOiAiK2wubWVzc2FnZSxsO31hLmNhbGwod2luZG93LGUpfWNhdGNoKGwpe18uVWkobCl9fSxfLk1zW18uQ3cudG9TdHJpbmcoKV0/Xy5zYSgieXQuc2NoZWR1bGVyLmluc3RhbmNlIik/Xy5qZi5wYihmKTpfLm1qKGYsMCk6ZigpKX0pO18uS3NbY109ITA7Xy5Mc1tfLkN3LnRvU3RyaW5nKCldfHwoXy5Mc1tfLkN3LnRvU3RyaW5nKCldPVtdKTtfLkxzW18uQ3cudG9TdHJpbmcoKV0ucHVzaChjKTtyZXR1cm4gY307Unc9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5ybSgpO2ImJih0eXBlb2YgYT09PSJudW1iZXIiJiYoYT1bYV0pLF8udGIoYSxjPT57Yi51bnN1YnNjcmliZUJ5S2V5KGMpO2RlbGV0ZSBfLktzW2NdfSkpfTthYWE9ZnVuY3Rpb24oKXt2YXIgYT1TdyxiPVF3KGZ1bmN0aW9uKGMpe2EuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyk7UncoYil9KTtyZXR1cm4gYn07Xy5Vdz1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IF8uVHcoe3RyYWNraW5nUGFyYW1zOmF9KX07Cl8uVnc9ZnVuY3Rpb24oYT0wKXtyZXR1cm4oYT1fLmdxKGEpKT9uZXcgXy5Udyh7dmVUeXBlOmEseW91dHViZURhdGE6dm9pZCAwLGpzcGJZb3V0dWJlRGF0YTp2b2lkIDB9KTpudWxsfTtiYWE9ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LnZhbHVlcyhfLncoImNsaWVudC1zY3JlZW4tbm9uY2Utc3RvcmUiLHt9KSkuZmlsdGVyKGE9PmEhPT12b2lkIDApfTtfLld3PWZ1bmN0aW9uKGEsYil7Xy54KCJsb2dfc2VxdWVuY2VfaW5mb19vbl9nZWxfd2ViIikmJihhLnNlcXVlbmNlR3JvdXA9Yik7cmV0dXJuIGF9O1h3PWZ1bmN0aW9uKGEsYil7cmV0dXJuYCR7YS5nZXRBc0pzb24oKS52ZVR5cGV9JHthLmdldEFzSnNvbigpLnZlQ291bnRlcn0ke2J9YH07U3c9ZnVuY3Rpb24oYSl7aWYoWXcpe2ZvcihsZXQgYiBvZiBZdyliLnBheWxvYWQmJihiLnBheWxvYWQuY3NuPWEuY3NuLF8uRXAoYi5wYXlsb2FkTmFtZSxiLnBheWxvYWQsYi5vcHRpb25zKSk7WXcubGVuZ3RoPTB9Wnc9MH07Cl8uJHc9ZnVuY3Rpb24oYSxiLGMpe1l3LnB1c2goe3BheWxvYWROYW1lOmEscGF5bG9hZDpjLEpKOnZvaWQgMCxvcHRpb25zOmJ9KTtad3x8KFp3PWFhYSgpKX07Xy5ieD1mdW5jdGlvbihhLGIsYyxkLGU9ITEsZj17fSl7YXgoYSxiLGMsW2RdLGUsZil9OwpheD1mdW5jdGlvbihhLGIsYyxkLGU9ITEsZj17fSl7T2JqZWN0LmFzc2lnbihmLF8uV3coe2N0dEF1dGhJbmZvOl8ua3EoYil8fHZvaWQgMH0sYikpO2ZvcihsZXQgayBvZiBkKXt2YXIgaD1rLmdldEFzSnNvbigpOyhfLnBkKGgpfHwhaC50cmFja2luZ1BhcmFtcyYmIWgudmVUeXBlKSYmXy5JcChFcnJvcigiTGIiKSk7aWYoXy54KCJub19jbGllbnRfdmVfYXR0YWNoX3VubGVzc19zaG93biIpKXtsZXQgbD1YdyhrLGIpO2lmKGgudmVUeXBlJiYhXy5Gdy5oYXMobCkmJiFfLkd3LmhhcyhsKSYmIWUpe2lmKCFfLngoImlsX2F0dGFjaF9jYWNoZV9saW1pdCIpfHxfLkV3LnNpemU8MUUzKXtfLkV3LnNldChsLFthLGIsYyxrXSk7cmV0dXJufV8ueCgiaWxfYXR0YWNoX2NhY2hlX2xpbWl0IikmJl8uRXcuc2l6ZT4xRTMmJl8uSXAobmV3IF8uWGooIklMIEF0dGFjaCBjYWNoZSBleGNlZWRlZCBsaW1pdCIpKX1oPVh3KGMsYik7Xy5Fdy5oYXMoaCk/Xy5jeChjLGIpOl8uR3cuc2V0KGgsITApfX1kPQpkLmZpbHRlcihrPT57ay5jc24hPT1iPyhrLmNzbj1iLGs9ITApOms9ITE7cmV0dXJuIGt9KTtjPXtjc246YixwYXJlbnRWZTpjLmdldEFzSnNvbigpLGNoaWxkVmVzOl8uSHcoZCxrPT5rLmdldEFzSnNvbigpKX07Yj09PSJVTkRFRklORURfQ1NOIj9fLiR3KCJ2aXN1YWxFbGVtZW50QXR0YWNoZWQiLGYsYyk6YT9fLkNwKCJ2aXN1YWxFbGVtZW50QXR0YWNoZWQiLGMsYSxmKTpfLkVwKCJ2aXN1YWxFbGVtZW50QXR0YWNoZWQiLGMsZil9O18uY3g9ZnVuY3Rpb24oYSxiKXthPVh3KGEsYik7Xy5Fdy5oYXMoYSkmJihiPV8uRXcuZ2V0KGEpfHxbXSxfLmJ4KGJbMF0sYlsxXSxiWzJdLGJbM10sITApLF8uRXcuZGVsZXRlKGEpKX07Xy5keD1mdW5jdGlvbihhLGIpe2lmKF8ueCgibm9fY2xpZW50X3ZlX2F0dGFjaF91bmxlc3Nfc2hvd24iKSl7dmFyIGM9WHcoYSxiKTtfLkZ3LnNldChjLCEwKTtfLmN4KGEsYil9fTsKXy5leD1mdW5jdGlvbihhLGIsYyxkLGUsZixoKXtfLmR4KGMsYik7ZD1kfHwiSU5URVJBQ1RJT05fTE9HR0lOR19HRVNUVVJFX1RZUEVfR0VORVJJQ19DTElDSyI7Zj1fLld3KHtjdHRBdXRoSW5mbzpfLmtxKGIpfHx2b2lkIDAsYXV0b21hdGVkTG9nRXZlbnRTb3VyY2U6aH0sYik7Yz17Y3NuOmIsdmU6Yy5nZXRBc0pzb24oKSxnZXN0dXJlVHlwZTpkfTtlJiYoYy5jbGllbnREYXRhPWUpO2I9PT0iVU5ERUZJTkVEX0NTTiI/Xy4kdygidmlzdWFsRWxlbWVudEdlc3R1cmVkIixmLGMpOmE/Xy5DcCgidmlzdWFsRWxlbWVudEdlc3R1cmVkIixjLGEsZik6Xy5FcCgidmlzdWFsRWxlbWVudEdlc3R1cmVkIixjLGYpfTtfLmZ4PWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtfLmV4KGEsYixjLHZvaWQgMCxkLGUsZil9O18uaHg9ZnVuY3Rpb24oKXtneC5pbnN0YW5jZXx8KGd4Lmluc3RhbmNlPW5ldyBneCk7cmV0dXJuIGd4Lmluc3RhbmNlfTsKXy5qeD1mdW5jdGlvbihhLGIsYyxkPTAsZSl7YS5vLmhhcyhlKXx8YS5vLnNldChlLG5ldyBTZXQpO3ZhciBmPWN8fF8uVncoZCk7Zj1gJHtiLnRvU3RyaW5nKCl9fCR7Zj9mLnRvU3RyaW5nKCk6IiJ9YDthLm8uZ2V0KGUpLmhhcyhmKXx8KF8uaXgoYSxiLGMsZCksYS5vLmdldChlKS5hZGQoZikpfTtfLml4PWZ1bmN0aW9uKGEsYixjLGQ9MCl7cmV0dXJuIF8uVmkoKCk9PntpZihhLmouaGFzKGQpKXJldHVybiBhLlkucHVzaChbYixjXSksITA7dmFyIGU9Xy5pcShkKSxmPWN8fF8uVncoZCk7aWYoZSYmZil7aWYoXy54KCJjb21iaW5lX3ZlX2dyYWZ0cyIpKXtsZXQgaD1hLnYuZ2V0KGYudG9TdHJpbmcoKSk7aD9oLnB1c2goYik6KGEuSS5zZXQoZi50b1N0cmluZygpLGYpLGEudi5zZXQoZi50b1N0cmluZygpLFtiXSkpO2EuWnx8KGEuWj1fLllqKCgpPT57Xy5reChhLGUpfSwxMjAwKSl9ZWxzZSBfLmJ4KGEuY2xpZW50LGUsZixiKTtyZXR1cm4hMH1yZXR1cm4hMX0pKCl9OwpfLmx4PWZ1bmN0aW9uKGEsYixjLGQ9MCl7cmV0dXJuIF8uVmkoKCk9Pnt2YXIgZT1fLlV3KGIpLGY9Xy5pcShkKTtmJiYhYS5qLmhhcyhkKT9fLmp4KGEsZSxjLGQsZik6Xy5peChhLGUsYyxkKTtyZXR1cm4gZX0pKCl9O18ua3g9ZnVuY3Rpb24oYSxiKXtpZihiPT09dm9pZCAwKXtsZXQgYz1iYWEoKTtmb3IobGV0IGQ9MDtkPGMubGVuZ3RoO2QrKyljW2RdIT09dm9pZCAwJiZfLmt4KGEsY1tkXSl9ZWxzZSBhLnYuZm9yRWFjaCgoYyxkKT0+eyhkPWEuSS5nZXQoZCkpJiZheChhLmNsaWVudCxiLGQsYyl9KSxhLnYuY2xlYXIoKSxhLkkuY2xlYXIoKSxhLlo9dm9pZCAwfTsKXy5teD1mdW5jdGlvbihhLGIsYyxkPTApe3ZhciBlPV8uaXEoZCk7Yj1ifHxfLlZ3KGQpO2UmJmImJihhPWEuY2xpZW50LGQ9Xy5Xdyh7Y3R0QXV0aEluZm86Xy5rcShlKXx8dm9pZCAwfSxlKSxjPXtjc246ZSx2ZTpiLmdldEFzSnNvbigpLGNsaWVudERhdGE6Y30sZT09PSJVTkRFRklORURfQ1NOIj9fLiR3KCJ2aXN1YWxFbGVtZW50U3RhdGVDaGFuZ2VkIixkLGMpOmE/Xy5DcCgidmlzdWFsRWxlbWVudFN0YXRlQ2hhbmdlZCIsYyxhLGQpOl8uRXAoInZpc3VhbEVsZW1lbnRTdGF0ZUNoYW5nZWQiLGMsZCkpfTsKXy5SYz1jbGFzc3tvKCl7dmFyIGE9dGhpcy5qO2lmKGE9PW51bGwpYT0iIjtlbHNlIGlmKHR5cGVvZiBhIT09InN0cmluZyIpe2xldCBiPSIiLGM9MCxkPWEubGVuZ3RoLTEwMjQwO2Zvcig7YzxkOyliKz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsYS5zdWJhcnJheShjLGMrPTEwMjQwKSk7Yis9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLGM/YS5zdWJhcnJheShjKTphKTthPXRoaXMuaj1idG9hKGIpfXJldHVybiBhfWlzRW1wdHkoKXtyZXR1cm4gdGhpcy5qPT1udWxsfXNpemVCeXRlcygpe3ZhciBhPV8ud3codGhpcyk7cmV0dXJuIGE/YS5sZW5ndGg6MH1jb25zdHJ1Y3RvcihhLGIpe2lmKGIhPT1fLnZ3KXRocm93IEVycm9yKCJvIik7dGhpcy5qPWE7aWYoYSE9bnVsbCYmYS5sZW5ndGg9PT0wKXRocm93IEVycm9yKCJuIik7fX07CmNhYT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9c2V0VHJhY2tpbmdQYXJhbXMoYSl7cmV0dXJuIF8ucXcodGhpcywxLF8uTncoYSwhMSkpfX07Cl8uVHc9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9Z2V0QXNKc29uKCl7dmFyIGE9e307dGhpcy5qLnRyYWNraW5nUGFyYW1zIT09dm9pZCAwP2EudHJhY2tpbmdQYXJhbXM9dGhpcy5qLnRyYWNraW5nUGFyYW1zOihhLnZlVHlwZT10aGlzLmoudmVUeXBlLHRoaXMuai52ZUNvdW50ZXIhPT12b2lkIDAmJihhLnZlQ291bnRlcj10aGlzLmoudmVDb3VudGVyKSx0aGlzLmouZWxlbWVudEluZGV4IT09dm9pZCAwJiYoYS5lbGVtZW50SW5kZXg9dGhpcy5qLmVsZW1lbnRJbmRleCkpO3RoaXMuai5kYXRhRWxlbWVudCE9PXZvaWQgMCYmKGEuZGF0YUVsZW1lbnQ9dGhpcy5qLmRhdGFFbGVtZW50LmdldEFzSnNvbigpKTt0aGlzLmoueW91dHViZURhdGEhPT12b2lkIDAmJihhLnlvdXR1YmVEYXRhPXRoaXMuai55b3V0dWJlRGF0YSk7dGhpcy5qLmlzQ291bnRlcmZhY3R1YWwmJihhLmlzQ291bnRlcmZhY3R1YWw9ITApO3JldHVybiBhfWdldEFzSnNwYigpe3ZhciBhPW5ldyBjYWE7dGhpcy5qLnRyYWNraW5nUGFyYW1zIT09CnZvaWQgMD9hLnNldFRyYWNraW5nUGFyYW1zKHRoaXMuai50cmFja2luZ1BhcmFtcyk6KHRoaXMuai52ZVR5cGUhPT12b2lkIDAmJl8ucXcoYSwyLF8uUHcodGhpcy5qLnZlVHlwZSkpLHRoaXMuai52ZUNvdW50ZXIhPT12b2lkIDAmJl8ucXcoYSw2LF8uUHcodGhpcy5qLnZlQ291bnRlcikpLHRoaXMuai5lbGVtZW50SW5kZXghPT12b2lkIDAmJl8ucXcoYSwzLF8uUHcodGhpcy5qLmVsZW1lbnRJbmRleCkpLHRoaXMuai5pc0NvdW50ZXJmYWN0dWFsJiZfLnF3KGEsNSxfLnh3KCEwKSkpO2lmKHRoaXMuai5kYXRhRWxlbWVudCE9PXZvaWQgMCl7dmFyIGI9dGhpcy5qLmRhdGFFbGVtZW50LmdldEFzSnNwYigpO18uS3coYSw3LGIpfXRoaXMuai55b3V0dWJlRGF0YSE9PXZvaWQgMCYmXy5LdyhhLDgsdGhpcy5qLmpzcGJZb3V0dWJlRGF0YSk7cmV0dXJuIGF9dG9TdHJpbmcoKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy5nZXRBc0pzb24oKSl9aXNDbGllbnRWZSgpe3JldHVybiF0aGlzLmoudHJhY2tpbmdQYXJhbXMmJgohIXRoaXMuai52ZVR5cGV9Z2V0TG9nZ2luZ0RpcmVjdGl2ZXMoKXtyZXR1cm4gdGhpcy5qLmxvZ2dpbmdEaXJlY3RpdmVzfX07WXc9W107Wnc9MDtfLm54PW5ldyBfLkkoImludGVyYWN0aW9uTG9nZ2luZ0NvbW1hbmRNZXRhZGF0YSIpO18uZGFhPW5ldyBfLkkoIndhdGNoUGxheWxpc3RFbmRwb2ludCIpO18uZWFhPW5ldyBfLkkoInJlc29sdmVVcmxDb21tYW5kTWV0YWRhdGEiKTtfLm94PVN5bWJvbCgiTWIiKTtfLnB4PW5ldyBXZWFrTWFwO3ZhciBneD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuWT1bXTt0aGlzLk09W107dGhpcy5LPW5ldyBNYXA7dGhpcy5nYT1uZXcgTWFwO3RoaXMuRD1bXTt0aGlzLlU9W107dGhpcy52PW5ldyBNYXA7dGhpcy5JPW5ldyBNYXA7dGhpcy5vPW5ldyBNYXA7dGhpcy5qPW5ldyBTZXQ7dGhpcy5oYT1uZXcgTWFwfUNmKGEsYixjPTApe2lmKCFhKXJldHVybiExO2M9Xy5pcShjKTtpZighYylyZXR1cm4hMTtfLmZ4KHRoaXMuY2xpZW50LGMsXy5VdyhhKSxiKTtyZXR1cm4hMH1jbGlja0NvbW1hbmQoYSxiLGM9MCl7cmV0dXJuIHRoaXMuQ2YoYS5jbGlja1RyYWNraW5nUGFyYW1zLGIsYyl9c3RhdGVDaGFuZ2VkKGEsYixjPTApe3RoaXMudmlzdWFsRWxlbWVudFN0YXRlQ2hhbmdlZChfLlV3KGEpLGIsYyl9dmlzdWFsRWxlbWVudFN0YXRlQ2hhbmdlZChhLGIsYz0wKXtjPT09MCYmdGhpcy5qLmhhcyhjKT90aGlzLk0ucHVzaChbYSxiXSk6Xy5teCh0aGlzLGEsYixjKX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgeXgsengsZ2FhLEh4LEl4LGZhYSxBeCxDeDtfLnF4PWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYS5HYShiLDMsYyl9O18ucng9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5qZi5HYShhLDIsYil9O18uc3g9ZnVuY3Rpb24oYSl7aWYoYT09bnVsbClyZXR1cm4gYTtpZih0eXBlb2YgYT09PSJzdHJpbmciJiZhKWE9K2E7ZWxzZSBpZih0eXBlb2YgYSE9PSJudW1iZXIiKXJldHVybjtyZXR1cm4oMCxfLndyKShhKT9hfDA6dm9pZCAwfTtfLnR4PWZ1bmN0aW9uKGEsYixjPTApe3JldHVybiBfLnN4KF8uZWQoYSxiKSk/P2N9O18udXg9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe3ZhciBoPWZhYSsrO3JldHVybiBuZXcgXy5Udyh7dmVUeXBlOmEsdmVDb3VudGVyOmgsZWxlbWVudEluZGV4OmMsZGF0YUVsZW1lbnQ6Yix5b3V0dWJlRGF0YTpkLGpzcGJZb3V0dWJlRGF0YTplLGxvZ2dpbmdEaXJlY3RpdmVzOmZ9KX07Cl8udng9ZnVuY3Rpb24oYSxiLGMsZD0hMSxlLGYpe3ZhciBoPWQ/MTY6ODtkPV8uV3coe2N0dEF1dGhJbmZvOl8ua3EoYil8fHZvaWQgMCxlbmRPZlNlcXVlbmNlOmQsYXV0b21hdGVkTG9nRXZlbnRTb3VyY2U6Zn0sYik7Yz17Y3NuOmIsdmU6Yy5nZXRBc0pzb24oKSxldmVudFR5cGU6aH07ZSYmKGMuY2xpZW50RGF0YT1lKTtiPT09IlVOREVGSU5FRF9DU04iP18uJHcoInZpc3VhbEVsZW1lbnRIaWRkZW4iLGQsYyk6YT9fLkNwKCJ2aXN1YWxFbGVtZW50SGlkZGVuIixjLGEsZCk6Xy5FcCgidmlzdWFsRWxlbWVudEhpZGRlbiIsYyxkKX07Cl8ud3g9ZnVuY3Rpb24oYSxiLGMsZCxlKXtfLmR4KGMsYik7ZT1fLld3KHtjdHRBdXRoSW5mbzpfLmtxKGIpfHx2b2lkIDAsYXV0b21hdGVkTG9nRXZlbnRTb3VyY2U6ZX0sYik7Yz17Y3NuOmIsdmU6Yy5nZXRBc0pzb24oKSxldmVudFR5cGU6MX07ZCYmKGMuY2xpZW50RGF0YT1kKTtiPT09IlVOREVGSU5FRF9DU04iP18uJHcoInZpc3VhbEVsZW1lbnRTaG93biIsZSxjKTphP18uQ3AoInZpc3VhbEVsZW1lbnRTaG93biIsYyxhLGUpOl8uRXAoInZpc3VhbEVsZW1lbnRTaG93biIsYyxlKX07Xy54eD1mdW5jdGlvbihhKXtpZihhPT09d2luZG93KXJldHVybiBudWxsO3ZhciBiPWEucGFyZW50RWxlbWVudDtyZXR1cm4gYj9iOnR5cGVvZiBTaGFkb3dSb290IT09InVuZGVmaW5lZCImJmEuZ2V0Um9vdE5vZGUhPW51bGwmJihhPWEuZ2V0Um9vdE5vZGUoKSxhIGluc3RhbmNlb2YgU2hhZG93Um9vdCk/YS5ob3N0OndpbmRvd307Cnl4PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1fLmlxKGMpO3JldHVybiBhLmNzbj09PW51bGx8fGQ9PT1hLmNzbnx8Yz9kOihhPW5ldyBfLlhqKCJWaXNpYmlsaXR5TG9nZ2VyIGNhbGxlZCBiZWZvcmUgbmV3U2NyZWVuIix7Y2FsbGVyOmIudGFnTmFtZSxwcmV2aW91c19jc246YS5jc24sY3VycmVudF9jc246ZH0pLF8uSXAoYSksbnVsbCl9O3p4PWZ1bmN0aW9uKGEsYil7YT1hLmdldERhdGEoYik7cmV0dXJuIE1hdGguZmxvb3IoTnVtYmVyKGEmJmEubG9nZ2luZ0RpcmVjdGl2ZXMmJmEubG9nZ2luZ0RpcmVjdGl2ZXMudmlzaWJpbGl0eSYmYS5sb2dnaW5nRGlyZWN0aXZlcy52aXNpYmlsaXR5LnR5cGVzfHwiIikpfHwxfTtfLkJ4PWZ1bmN0aW9uKCl7QXguaW5zdGFuY2V8fChBeC5pbnN0YW5jZT1uZXcgQXgpO3JldHVybiBBeC5pbnN0YW5jZX07Xy5EeD1mdW5jdGlvbigpe0N4Lmluc3RhbmNlfHwoQ3guaW5zdGFuY2U9bmV3IEN4KX07Cl8uRXg9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIF8uVmkoKCk9PntpZighYi52ZVR5cGUpcmV0dXJuIF8uSHAobmV3IF8uWGooIkVycm9yOiBUcnlpbmcgdG8gZ3JhZnQgYSBjbGllbnQgVkUgd2l0aG91dCBhIHZlVHlwZS4iKSksbnVsbDtpZihiLnZpc2liaWxpdHlUeXBlcyl7dmFyIGU9Yi52aXNpYmlsaXR5VHlwZXMucmVkdWNlKChmLGgpPT5mfGgpO2U9e3Zpc2liaWxpdHk6e3R5cGVzOlN0cmluZyhlKX19fWU9Xy51eChiLnZlVHlwZSxiLnZpc3VhbEVsZW1lbnQsYi5lbGVtZW50SW5kZXgsYi5jbGllbnRZb3VUdWJlRGF0YSx2b2lkIDAsZSk7cmV0dXJuIF8uaXgoYSxlLGMsZCk/ZTpudWxsfSkoKX07Xy5GeD1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPTA7Zm9yKGxldCBkIGluIGEpYltjKytdPWQ7cmV0dXJuIGJ9OwpfLkd4PWZ1bmN0aW9uKGEsYil7YT1hLmpmPz9hO2ZvcihsZXQgYyBvZiBhLnZpc2liaWxpdHlNb25pdG9yS2V5c3x8W10pYi5yZihjKTthLnZpc2liaWxpdHlNb25pdG9yS2V5cz12b2lkIDB9O18uSng9ZnVuY3Rpb24oYSxiKXtpZihfLmlxKCkpe2lmKF8ueCgia2V2bGFyX3ZpbWlvX3VzZV9zaGFyZWRfbW9uaXRvciIpKUh4KGEsYi5kYXRhKTtlbHNlIGlmKCFIeChhLGIuZGF0YSkpcmV0dXJuO3ZhciBjPWIuZGF0YSxkPUl4KGMpO2lmKF8ueCgiZW5hYmxlX2NsaWVudF92ZV9zcGVjX2xvZ2dpbmciKSlfLkd4KGEsYi5vYnNlcnZlcik7ZWxzZXt2YXIgZT1hLmpmPz9hO2UudHJhY2tlZFBhcmFtcyYmZS50cmFja2VkUGFyYW1zIT09ZCYmXy5HeChhLGIub2JzZXJ2ZXIpfWU9YS5qZj8/YTshY3x8ZS5kYXRhJiZlLmRhdGE9PT1jfHwoZS5kYXRhPWMpO2dhYShhLGIpO2UudHJhY2tlZFBhcmFtcz1kfX07CmdhYT1mdW5jdGlvbihhLGIpe3ZhciBjPWIub2JzZXJ2ZXI7aWYoIWMmJl8ueCgid2ViX3NraXBfbWlzc2luZ192aW1pb19vYnNlcnZlciIpKV8uSXAobmV3IF8uWGooIlZpc2liaWxpdHlPYnNlcnZlciBpcyBub3QgZGVmaW5lZC4iLGEudGFnTmFtZSxhLnRyYWNrZWRQYXJhbXMsYi5kYXRhPy50cmFja2luZ1BhcmFtcyxiLmRhdGE/LmxvZ2dpbmdEaXJlY3RpdmVzKSk7ZWxzZXt2YXIgZD1iLmxheWVyLGU9Yi5OYnx8KCgpPT57fSksZj1iLkxqLGg9YS5qZj8/YSxrPVtdO2IuZWImJmsucHVzaChjLm9ic2VydmUoYSwoKT0+e2IueEEmJmIueEEoKXx8KF8uRHgoKSxfLlZpKF8uQngoKS5ZKS5iaW5kKF8uQngoKSkoaCx2b2lkIDAsZCw3KSk7ZSghMCl9LGIuZWIpKTtiLk5jJiZrLnB1c2goYy5vYnNlcnZlKGEsKCk9PntfLkR4KCk7Xy5WaShfLkJ4KCkuSSkuYmluZChfLkJ4KCkpKGgsdm9pZCAwLGQsNyk7ZSghMSl9LGIuTmMpKTtiLkxoJiZmJiZrLnB1c2goYy5vYnNlcnZlKGEsKCk9Pgp7ZigpfSxiLkxoKSk7aC52aXNpYmlsaXR5TW9uaXRvcktleXM9a319OwpIeD1mdW5jdGlvbihhLGIpe2E9YS5qZj8/YTtpZihhLnZpc3VhbEVsZW1lbnQmJiFiKXJldHVybiEwO2lmKCFiKXJldHVybiExO3ZhciBjPSExO18ueCgiZW5hYmxlX2NsaWVudF92ZV9zcGVjX2xvZ2dpbmciKSYmKGM9ISFiLmxvZ2dpbmdEaXJlY3RpdmVzPy5jbGllbnRWZVNwZWM/LnVpVHlwZSk7dmFyIGQ9SXgoYik7aWYoIWQmJiFjKXJldHVybiExO18ueCgibXdlYl9jb21wb25lbnRfdmlzaWJpbGl0eV9sb2dnaW5nIikmJihhLnZlQ29udGFpbmVyfHwoYS52ZUNvbnRhaW5lcj17fSksYS52ZUNvbnRhaW5lci50cmFja2luZ1BhcmFtcz1kKTtpZihhLnRyYWNrZWRQYXJhbXMmJmEudHJhY2tlZFBhcmFtcz09PWR8fF8ueCgiZW5hYmxlX2NsaWVudF92ZV9zcGVjX2xvZ2dpbmciKSYmYS52aXN1YWxFbGVtZW50Py5pc0NsaWVudFZlKCkmJihjPWEudmlzdWFsRWxlbWVudD8uZ2V0QXNKc3BiKCksXy50eChjLDIpPT09Yi5sb2dnaW5nRGlyZWN0aXZlcz8uY2xpZW50VmVTcGVjPy51aVR5cGUmJgpfLnR4KGMsMywtMSk9PT1iLmxvZ2dpbmdEaXJlY3RpdmVzPy5jbGllbnRWZVNwZWM/LmVsZW1lbnRJbmRleCkpcmV0dXJuITE7Xy54KCJlbmFibGVfY2xpZW50X3ZlX3NwZWNfbG9nZ2luZyIpJiYhYS52aXN1YWxFbGVtZW50JiZiLmxvZ2dpbmdEaXJlY3RpdmVzPy5jbGllbnRWZVNwZWM/LnVpVHlwZSYmKGM9Yi5sb2dnaW5nRGlyZWN0aXZlcy5jbGllbnRWZVNwZWMudWlUeXBlLGQ9Yi5sb2dnaW5nRGlyZWN0aXZlcy5jbGllbnRWZVNwZWMuZWxlbWVudEluZGV4LGI9Yi5sb2dnaW5nRGlyZWN0aXZlcy5jbGllbnRWZVNwZWMuY2xpZW50WW91dHViZURhdGEsYS52aXN1YWxFbGVtZW50PV8uRXgoXy5oeCgpLHt2ZVR5cGU6YyxlbGVtZW50SW5kZXg6ZCxjbGllbnRZb3VUdWJlRGF0YTpifSkpO3JldHVybiEwfTsKSXg9ZnVuY3Rpb24oYSl7aWYoYT8ucmVuZGVyZXJDb250ZXh0KXtsZXQgYj1fLkIoYS5yZW5kZXJlckNvbnRleHQsXy5LeCk7aWYoYj8ubG9nZ2luZ0RpcmVjdGl2ZXMpcmV0dXJuIGIubG9nZ2luZ0RpcmVjdGl2ZXMudHJhY2tpbmdQYXJhbXN9cmV0dXJuIGE/LmxvZ2dpbmdEaXJlY3RpdmVzP2EubG9nZ2luZ0RpcmVjdGl2ZXMudHJhY2tpbmdQYXJhbXM6YT8udHJhY2tpbmdQYXJhbXN9O2ZhYT0xOwpBeD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuRD1uZXcgU2V0O3RoaXMuQj1uZXcgU2V0O3RoaXMubz1uZXcgTWFwO3RoaXMuY2xpZW50PXZvaWQgMDt0aGlzLmNzbj1udWxsfUsoKXt0aGlzLmNsZWFyKCk7dGhpcy5jc249Xy5pcSgpfWNsZWFyKCl7dGhpcy5ELmNsZWFyKCk7dGhpcy5CLmNsZWFyKCk7dGhpcy5vLmNsZWFyKCk7dGhpcy5jc249bnVsbH1ZKGEsYixjLGQpe3ZhciBlPXRoaXMuaihhKSxmPWEudmlzdWFsRWxlbWVudD9hLnZpc3VhbEVsZW1lbnQ6ZTtiPXRoaXMuRC5oYXMoZik7dmFyIGg9dGhpcy5vLmdldChmKTt0aGlzLkQuYWRkKGYpO3RoaXMuby5zZXQoZiwhMCk7YS5pbXByZXNzaW9uTG9nJiYhYiYmYS5pbXByZXNzaW9uTG9nKCk7aWYoZXx8YS52aXN1YWxFbGVtZW50KWlmKGM9eXgodGhpcyxhLGMpKXt2YXIgaz0hIXRoaXMuZ2V0RGF0YShhKT8ubG9nZ2luZ0RpcmVjdGl2ZXM7aWYoengodGhpcyxhKXx8aylmPWEudmlzdWFsRWxlbWVudD9hLnZpc3VhbEVsZW1lbnQ6Cl8uVXcoZSksYS5pbnRlcmFjdGlvbkxvZ2dpbmdDbGllbnREYXRhfHwoYS5pbnRlcmFjdGlvbkxvZ2dpbmdDbGllbnREYXRhPXt9KSxlPWEuaW50ZXJhY3Rpb25Mb2dnaW5nQ2xpZW50RGF0YSxrfHxiP3p4KHRoaXMsYSkmND9ofHwoYT10aGlzLmNsaWVudCxfLmR4KGYsYyksZD1fLld3KHtjdHRBdXRoSW5mbzpfLmtxKGMpfHx2b2lkIDAsYXV0b21hdGVkTG9nRXZlbnRTb3VyY2U6dm9pZCAwfSxjKSxiPXtjc246Yyx2ZTpmLmdldEFzSnNvbigpLGV2ZW50VHlwZTo0fSxlJiYoYi5jbGllbnREYXRhPWUpLGM9PT0iVU5ERUZJTkVEX0NTTiI/Xy4kdygidmlzdWFsRWxlbWVudFNob3duIixkLGIpOmE/Xy5DcCgidmlzdWFsRWxlbWVudFNob3duIixiLGEsZCk6Xy5FcCgidmlzdWFsRWxlbWVudFNob3duIixiLGQpKTp6eCh0aGlzLGEpJjEmJiFiJiZfLnd4KHRoaXMuY2xpZW50LGMsZixlLGQpOl8ud3godGhpcy5jbGllbnQsYyxmLGUsZCl9fUkoYSxiLGMsZCl7dmFyIGU9dGhpcy5qKGEpLApmPWEudmlzdWFsRWxlbWVudD9hLnZpc3VhbEVsZW1lbnQ6ZTtiPXRoaXMuQi5oYXMoZik7dmFyIGg9dGhpcy5vLmdldChmKTt0aGlzLkIuYWRkKGYpO3RoaXMuby5zZXQoZiwhMSk7aWYoaD09PSExKXJldHVybiEwO2lmKCFlJiYhYS52aXN1YWxFbGVtZW50KXJldHVybiExO2M9eXgodGhpcyxhLGMpO2lmKCFjfHwhengodGhpcyxhKSYmdGhpcy5nZXREYXRhKGEpPy5sb2dnaW5nRGlyZWN0aXZlcylyZXR1cm4hMTtlPWEudmlzdWFsRWxlbWVudD9hLnZpc3VhbEVsZW1lbnQ6Xy5VdyhlKTt6eCh0aGlzLGEpJjg/Xy52eCh0aGlzLmNsaWVudCxjLGUsdm9pZCAwLHZvaWQgMCxkKTp6eCh0aGlzLGEpJjImJiFiJiYoYT10aGlzLmNsaWVudCxkPV8uV3coe2N0dEF1dGhJbmZvOl8ua3EoYyl8fHZvaWQgMCxhdXRvbWF0ZWRMb2dFdmVudFNvdXJjZTpkfSxjKSxiPXtjc246Yyx2ZTplLmdldEFzSnNvbigpLGV2ZW50VHlwZToyfSxjPT09IlVOREVGSU5FRF9DU04iP18uJHcoInZpc3VhbEVsZW1lbnRIaWRkZW4iLApkLGIpOmE/Xy5DcCgidmlzdWFsRWxlbWVudEhpZGRlbiIsYixhLGQpOl8uRXAoInZpc3VhbEVsZW1lbnRIaWRkZW4iLGIsZCkpO3JldHVybiEwfWooYSl7dmFyIGI9dGhpcy5nZXREYXRhKGEpO3JldHVybiBfLngoImlsX3VzZV92aWV3X21vZGVsX2xvZ2dpbmdfY29udGV4dCIpJiZiPy5jb250ZXh0Py5sb2dnaW5nQ29udGV4dD8ubG9nZ2luZ0RpcmVjdGl2ZXM/Yi5jb250ZXh0LmxvZ2dpbmdDb250ZXh0LmxvZ2dpbmdEaXJlY3RpdmVzLnRyYWNraW5nUGFyYW1zfHwiIjpiPy5yZW5kZXJlckNvbnRleHQ/LmxvZ2dpbmdDb250ZXh0Py5sb2dnaW5nRGlyZWN0aXZlcz9iLnJlbmRlcmVyQ29udGV4dC5sb2dnaW5nQ29udGV4dC5sb2dnaW5nRGlyZWN0aXZlcy50cmFja2luZ1BhcmFtc3x8IiI6Yj8ubG9nZ2luZ0RpcmVjdGl2ZXM/Yi5sb2dnaW5nRGlyZWN0aXZlcy50cmFja2luZ1BhcmFtc3x8IiI6YS52ZUNvbnRhaW5lcj8udHJhY2tpbmdQYXJhbXM/YS52ZUNvbnRhaW5lci50cmFja2luZ1BhcmFtczoKYj8udHJhY2tpbmdQYXJhbXN8fCIifXYoYSl7aWYoXy54KCJ3aXpfbmV4dF9jbGllbnRfdmVfcGFyZW50X2ZpeCIpKXt2YXIgYj10aGlzLmooYSk7cmV0dXJuIGEudmlzdWFsRWxlbWVudD9hLnZpc3VhbEVsZW1lbnQ6Yj9fLlV3KGIpOihhPV8ueHgoYSkpP3RoaXMudihhKTpudWxsfWI9dGhpcy5qKGEpO3JldHVybiBhLnZpc3VhbEVsZW1lbnQ/YS52aXN1YWxFbGVtZW50OmI/Xy5VdyhiKTphLnBhcmVudEVsZW1lbnQ/dGhpcy52KGEucGFyZW50RWxlbWVudCk6bnVsbH1nZXREYXRhKGEpe3ZhciBiPWEuZGF0YXx8YS5wcm9wcz8uZGF0YTtpZighYnx8YS5pc1dlYkNvbXBvbmVudFdyYXBwZXIpYj1fLnB4LmdldChhKT8uW18ub3hdO3JldHVybiBifX07Q3g9Y2xhc3N7Y2xlYXIoKXtfLlZpKF8uQngoKS5jbGVhcikuYmluZChfLkJ4KCkpKCl9fTtfLkt4PW5ldyBfLkkoImxvZ2dpbmdDb250ZXh0Iik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uTHg9bmV3IF8uVnMoIlZJU0lCSUxJVFlfT0JTRVJWRVIiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIE94LFB4LFF4LFN4LFR4LFZ4LGhhYSxpYWEsamFhLCR4LGF5LGN5LGJ5LGthYSxkeSxsYWEsZXksZ3ksaHksaXksb3kscHkscXkscnksdHksdnksb2FhLHBhYSxreTtfLk14PWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9ITE7ZD1fLmRkKGEsZCxlLGg9Pnt2YXIgaz1fLmt3KGgsYyxiKTtmPWshPT1oJiZrIT1udWxsO3JldHVybiBrfSk7aWYoZCE9bnVsbClyZXR1cm4gZiYmIV8uQmMoZCkmJl8ub3coYSxiKSxkfTtfLk54PWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEuRGEsZj1lW18uQWNdfDA7Yj1fLk14KGUsZixiLGMsZCk7aWYoYj09bnVsbClyZXR1cm4gYjtmPWVbXy5BY118MDtpZighXy5CYyhhLGYpKXtsZXQgaD1fLmx3KGIpO2ghPT1iJiYoXy5tdyhhKSYmKGU9YS5EYSxmPWVbXy5BY118MCksYj1oLGY9Xy5wdyhlLGYsYyxiLGQpLF8ub3coZSxmKSl9cmV0dXJuIGJ9OwpPeD1mdW5jdGlvbihhKXthLlp8fChhLlo9ITAsYS5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLGEuZGlzcGF0Y2hFdmVudCgiZXJyb3IiKSl9O1B4PWZ1bmN0aW9uKGEsYil7aWYoYS5yYSl7YS5EJiYoY2xlYXJUaW1lb3V0KGEuRCksYS5EPW51bGwpO2xldCBjPWEucmE7YS5yYT1udWxsO2J8fGEuZGlzcGF0Y2hFdmVudCgicmVhZHkiKTt0cnl7Yy5vbnJlYWR5c3RhdGVjaGFuZ2U9bnVsbH1jYXRjaChkKXt9fX07UXg9ZnVuY3Rpb24oYSxiKXthLmo9ITE7YS5yYSYmKGEudj0hMCxhLnJhLmFib3J0KCksYS52PSExKTthLkI9YjtPeChhKTtQeChhKX07Xy5SeD1mdW5jdGlvbihhKXt0cnl7cmV0dXJuKGEucmE/YS5yYS5yZWFkeVN0YXRlOjApPjI/YS5yYS5zdGF0dXM6LTF9Y2F0Y2goYil7cmV0dXJuLTF9fTsKU3g9ZnVuY3Rpb24oYSl7aWYoYS5qJiZ0eXBlb2YgXy5DcSE9InVuZGVmaW5lZCIpaWYoYS5JJiYoYS5yYT9hLnJhLnJlYWR5U3RhdGU6MCk9PTQpc2V0VGltZW91dChhLmdyLmJpbmQoYSksMCk7ZWxzZSBpZihhLmRpc3BhdGNoRXZlbnQoInJlYWR5c3RhdGVjaGFuZ2UiKSxhLmlzQ29tcGxldGUoKSl7YS5qPSExO3RyeXtpZihhLmlzU3VjY2VzcygpKWEuZGlzcGF0Y2hFdmVudCgiY29tcGxldGUiKSxhLmRpc3BhdGNoRXZlbnQoInN1Y2Nlc3MiKTtlbHNle3RyeXt2YXIgYj0oYS5yYT9hLnJhLnJlYWR5U3RhdGU6MCk+Mj9hLnJhLnN0YXR1c1RleHQ6IiJ9Y2F0Y2goYyl7Yj0iIn1hLkI9YisiIFsiK18uUngoYSkrIl0iO094KGEpfX1maW5hbGx5e1B4KGEpfX19OwpUeD1mdW5jdGlvbigpe18uZ2YuY2FsbCh0aGlzKTt0aGlzLmhlYWRlcnM9bmV3IE1hcDt0aGlzLmo9ITE7dGhpcy5yYT1udWxsO3RoaXMuQj10aGlzLmhhPSIiO3RoaXMudj10aGlzLmdhPXRoaXMuST10aGlzLlo9ITE7dGhpcy5VPTA7dGhpcy5EPW51bGw7dGhpcy55YT0iIjt0aGlzLm9hPSExfTtfLlV4PWZ1bmN0aW9uKGEpe18uRHgoKTtyZXR1cm4gXy5WaShfLkJ4KCkudikuYmluZChfLkJ4KCkpKGEpfTtWeD1mdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4gXy54KCJlbmFibGVfY2xpZW50X3ZlX3NwZWMiKSYmYi5jbGllbnRWZVNwZWM/KGI9Xy51eChiLmNsaWVudFZlU3BlYy51aVR5cGUsdm9pZCAwLGIuY2xpZW50VmVTcGVjLmVsZW1lbnRJbmRleCxiLmNsaWVudFZlU3BlYy5jbGllbnRZb3V0dWJlRGF0YSx2b2lkIDAsYiksXy5peChhLGIsYyxkKT9iOm51bGwpOmIudHJhY2tpbmdQYXJhbXM/Xy5seChhLGIudHJhY2tpbmdQYXJhbXMsYyxkKTpudWxsfTsKXy5XeD1mdW5jdGlvbihhLGIsYyxkLGUpe18ubncoYSk7dmFyIGY9YS5EYTtfLnB3KGYsZltfLkFjXXwwLGIsKGQ9PT0iMCI/TnVtYmVyKGMpPT09MDpjPT09ZCk/dm9pZCAwOmMsZSk7cmV0dXJuIGF9O18uWHg9ZnVuY3Rpb24oYSxiKXtpZihiPT1udWxsfHxiPT0iIilyZXR1cm4gbmV3IGE7Yj1KU09OLnBhcnNlKGIpO2lmKCFBcnJheS5pc0FycmF5KGIpKXRocm93IEVycm9yKCJ6Iik7YltfLkFjXXw9MzI7cmV0dXJuIG5ldyBhKGIpfTtfLll4PWZ1bmN0aW9uKGEsLi4uYil7aWYoYi5sZW5ndGg9PT0wKXJldHVybiBfLlRhKGFbMF0pO3ZhciBjPWFbMF07Zm9yKGxldCBkPTA7ZDxiLmxlbmd0aDtkKyspYys9ZW5jb2RlVVJJQ29tcG9uZW50KGJbZF0pK2FbZCsxXTtyZXR1cm4gXy5UYShjKX07Xy5aeD1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPTA7Zm9yKGxldCBkIGluIGEpYltjKytdPWFbZF07cmV0dXJuIGJ9OwpoYWE9ZnVuY3Rpb24oYSl7aWYoYS5NYyYmdHlwZW9mIGEuTWM9PSJmdW5jdGlvbiIpcmV0dXJuIGEuTWMoKTtpZih0eXBlb2YgTWFwIT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBNYXB8fHR5cGVvZiBTZXQhPT0idW5kZWZpbmVkIiYmYSBpbnN0YW5jZW9mIFNldClyZXR1cm4gQXJyYXkuZnJvbShhLnZhbHVlcygpKTtpZih0eXBlb2YgYT09PSJzdHJpbmciKXJldHVybiBhLnNwbGl0KCIiKTtpZihfLnlhKGEpKXtsZXQgYj1bXSxjPWEubGVuZ3RoO2ZvcihsZXQgZD0wO2Q8YztkKyspYi5wdXNoKGFbZF0pO3JldHVybiBifXJldHVybiBfLlp4KGEpfTsKaWFhPWZ1bmN0aW9uKGEpe2lmKGEucmQmJnR5cGVvZiBhLnJkPT0iZnVuY3Rpb24iKXJldHVybiBhLnJkKCk7aWYoIWEuTWN8fHR5cGVvZiBhLk1jIT0iZnVuY3Rpb24iKXtpZih0eXBlb2YgTWFwIT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBNYXApcmV0dXJuIEFycmF5LmZyb20oYS5rZXlzKCkpO2lmKCEodHlwZW9mIFNldCE9PSJ1bmRlZmluZWQiJiZhIGluc3RhbmNlb2YgU2V0KSl7aWYoXy55YShhKXx8dHlwZW9mIGE9PT0ic3RyaW5nIil7bGV0IGI9W107YT1hLmxlbmd0aDtmb3IobGV0IGM9MDtjPGE7YysrKWIucHVzaChjKTtyZXR1cm4gYn1yZXR1cm4gXy5GeChhKX19fTsKamFhPWZ1bmN0aW9uKGEsYixjKXtpZihhLmZvckVhY2gmJnR5cGVvZiBhLmZvckVhY2g9PSJmdW5jdGlvbiIpYS5mb3JFYWNoKGIsYyk7ZWxzZSBpZihfLnlhKGEpfHx0eXBlb2YgYT09PSJzdHJpbmciKUFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoYSxiLGMpO2Vsc2V7bGV0IGQ9aWFhKGEpLGU9aGFhKGEpLGY9ZS5sZW5ndGg7Zm9yKGxldCBoPTA7aDxmO2grKyliLmNhbGwoYyxlW2hdLGQmJmRbaF0sYSl9fTskeD1mdW5jdGlvbihhLGIpe3RoaXMubz10aGlzLmo9bnVsbDt0aGlzLnY9YXx8bnVsbDt0aGlzLkI9ISFifTtheT1mdW5jdGlvbihhKXthLmp8fChhLmo9bmV3IE1hcCxhLm89MCxhLnYmJl8uUmIoYS52LGZ1bmN0aW9uKGIsYyl7YS5hZGQoXy5IYihiKSxjKX0pKX07Y3k9ZnVuY3Rpb24oYSxiKXtheShhKTtiPWJ5KGEsYik7cmV0dXJuIGEuai5oYXMoYil9O2J5PWZ1bmN0aW9uKGEsYil7Yj1TdHJpbmcoYik7YS5CJiYoYj1iLnRvTG93ZXJDYXNlKCkpO3JldHVybiBifTsKa2FhPWZ1bmN0aW9uKGEsYil7YiYmIWEuQiYmKGF5KGEpLGEudj1udWxsLGEuai5mb3JFYWNoKGZ1bmN0aW9uKGMsZCl7dmFyIGU9ZC50b0xvd2VyQ2FzZSgpO2QhPWUmJih0aGlzLnJlbW92ZShkKSx0aGlzLnJlbW92ZShlKSxjLmxlbmd0aD4wJiYodGhpcy52PW51bGwsdGhpcy5qLnNldChieSh0aGlzLGUpLF8ueWIoYykpLHRoaXMubys9Yy5sZW5ndGgpKX0sYSkpO2EuQj1ifTtkeT1mdW5jdGlvbihhLGIpe3JldHVybiBhP2I/ZGVjb2RlVVJJKGEucmVwbGFjZSgvJTI1L2csIiUyNTI1IikpOmRlY29kZVVSSUNvbXBvbmVudChhKToiIn07bGFhPWZ1bmN0aW9uKGEpe2E9YS5jaGFyQ29kZUF0KDApO3JldHVybiIlIisoYT4+NCYxNSkudG9TdHJpbmcoMTYpKyhhJjE1KS50b1N0cmluZygxNil9OwpleT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyI/KGE9ZW5jb2RlVVJJKGEpLnJlcGxhY2UoYixsYWEpLGMmJihhPWEucmVwbGFjZSgvJTI1KFswLTlhLWZBLUZdezJ9KS9nLCIlJDEiKSksYSk6bnVsbH07Cl8uZnk9ZnVuY3Rpb24oYSl7dGhpcy5vPXRoaXMuST10aGlzLkI9IiI7dGhpcy5ZPW51bGw7dGhpcy52PXRoaXMuaj0iIjt0aGlzLkQ9ITE7dmFyIGI7YSBpbnN0YW5jZW9mIF8uZnk/KHRoaXMuRD1hLkQsZ3kodGhpcyxhLkIpLHRoaXMuST1hLkksdGhpcy5vPWEubyxoeSh0aGlzLGEuWSksdGhpcy5qPWEuaixpeSh0aGlzLGEuSy5jbG9uZSgpKSx0aGlzLnY9YS52KTphJiYoYj1fLk1iKFN0cmluZyhhKSkpPyh0aGlzLkQ9ITEsZ3kodGhpcyxiWzFdfHwiIiwhMCksdGhpcy5JPWR5KGJbMl18fCIiKSx0aGlzLm89ZHkoYlszXXx8IiIsITApLGh5KHRoaXMsYls0XSksdGhpcy5qPWR5KGJbNV18fCIiLCEwKSxpeSh0aGlzLGJbNl18fCIiLCEwKSx0aGlzLnY9ZHkoYls3XXx8IiIpKToodGhpcy5EPSExLHRoaXMuSz1uZXcgJHgobnVsbCx0aGlzLkQpKX07Z3k9ZnVuY3Rpb24oYSxiLGMpe2EuQj1jP2R5KGIsITApOmI7YS5CJiYoYS5CPWEuQi5yZXBsYWNlKC86JC8sIiIpKX07Cmh5PWZ1bmN0aW9uKGEsYil7aWYoYil7Yj1OdW1iZXIoYik7aWYoaXNOYU4oYil8fGI8MCl0aHJvdyBFcnJvcigiS2FgIitiKTthLlk9Yn1lbHNlIGEuWT1udWxsfTtpeT1mdW5jdGlvbihhLGIsYyl7YiBpbnN0YW5jZW9mICR4PyhhLks9YixrYWEoYS5LLGEuRCkpOihjfHwoYj1leShiLG1hYSkpLGEuSz1uZXcgJHgoYixhLkQpKX07Xy5qeT1mdW5jdGlvbihhLGIpe18uZ2YuY2FsbCh0aGlzKTt0aGlzLnY9YXx8MTt0aGlzLmo9Ynx8Xy51O3RoaXMuQj0oMCxfLkNhKSh0aGlzLmFCLHRoaXMpO3RoaXMuRD1fLkVhKCl9O18ubHk9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsaCl7dmFyIGs9bmV3IFR4O2t5LnB1c2goayk7YiYmay5saXN0ZW4oImNvbXBsZXRlIixiKTtfLmJmKGssInJlYWR5IixrLlB1KTtmJiYoay5VPU1hdGgubWF4KDAsZikpO2gmJihrLm9hPWgpO2suc2VuZChhLGMsZCxlKX07Xy5teT1mdW5jdGlvbihhKXtmb3IobGV0IGIgb2YgYS5yZWdpc3Rlci52YWx1ZXMoKSliLnpnKCJBQk9SVEVEIil9OwpfLm55PWZ1bmN0aW9uKGEsYixjKXtzd2l0Y2goYi50eXBlKXtjYXNlICJtYXBwaW5nIjpyZXR1cm4gYi52YWx1ZTtjYXNlICJmYWN0b3J5IjpyZXR1cm4gYj1iLnZhbHVlKCksYS5tYXBwaW5ncy5zZXQoYy50b1N0cmluZygpLHt0eXBlOiJtYXBwaW5nIix2YWx1ZTpifSksYjtkZWZhdWx0OnJldHVybiBfLmViKGIsdm9pZCAwKX19OwpveT1mdW5jdGlvbihhLGIsYyl7aWYoXy54KCJkZWJ1Z193ZWJfdmVfZGF0YSIpKXt2YXIgZD1fLkIoYz8ucmVuZGVyZXJDb250ZXh0LF8uS3gpPy5sb2dnaW5nRGlyZWN0aXZlczshZCYmYyYmKGQ9Yy5sb2dnaW5nRGlyZWN0aXZlcyk7YTp7aWYoZD1jPy50cmFja2luZ1BhcmFtcz8/ZD8udHJhY2tpbmdQYXJhbXMpdHJ5e3ZhciBlPV8uQ28oZCk7aWYoZSl7bGV0IGg9Xy5FbyhlLDEpLGs9Xy5FbyhlLDIpO2U9e307aCE9PXZvaWQgMCYmKGUuR3M9TnVtYmVyKGgpKTtrIT09dm9pZCAwJiYoZS52ZVR5cGU9TnVtYmVyKGspKTt2YXIgZj1lO2JyZWFrIGF9fWNhdGNoKGgpe31mPXZvaWQgMH1mPy52ZVR5cGUhPT12b2lkIDAmJihhLmRhdGFzZXQudmU9U3RyaW5nKGYudmVUeXBlKSk7Zj8uR3MhPT12b2lkIDAmJihhLmRhdGFzZXQudmVJbmRleD1TdHJpbmcoZi5HcykpOyhjPWM/LmxvZ2dpbmdEaXJlY3RpdmVzPy5jbGllbnRWZVNwZWM/LnVpVHlwZSl8fChjPWIudmVUeXBlfHxiLmxvZ2dpbmdDb25maWc/LnZlVHlwZSk7CmMmJihhLmRhdGFzZXQudmU9U3RyaW5nKGMpKX19O3B5PWZ1bmN0aW9uKGEpe3JldHVybiBhLmxheWVyIT09dm9pZCAwP2EubGF5ZXI6YS5wYXJlbnQ/cHkoYS5wYXJlbnQpOmEubGF5ZXI9MH07cXk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLnB4LmdldChhKXx8e1plOmJ9O2MuWmU9YjtfLnB4LnNldChhLGMpO2EuZ2V0U2NyZWVuTGF5ZXI9KCk9PnB5KGMuWmUpfTtyeT1mdW5jdGlvbihhKXtmb3IoYT1hLnBhcmVudE5vZGU7YSYmIV8ucHguZ2V0KGEpPy5XeCYmIShhLmpmPz9hKS5ESjspYT1hLnBhcmVudE5vZGV8fGEuaG9zdDtpZihhKXJldHVybiBfLnB4LmdldChhKX07Xy5zeT1mdW5jdGlvbihhKXtpZihhKXtfLnB4LmRlbGV0ZShhKTtsZXQgYj1fLnkoKS5yZXNvbHZlKF8uTHgpO18uR3goYSxiKX19OwpfLnV5PWZ1bmN0aW9uKGEsYixjPSExKXtpZihjKXtpZihjPWEuZ2V0QXR0cmlidXRlKCJjbGllbnQtdmUtdHlwZSIpLGIuZGF0YSYmIWIuQkl8fGMpXy50digoKT0+e3ZhciBkPV8uQnYoYi5kYXRhKTt0eShhLGQpO295KGEsYixkKX0sImEiKSxfLll1KCgpPT52b2lkIF8uc3koYSkpfWVsc2UgdHlwZW9mIGIuZGF0YSE9PSJmdW5jdGlvbiImJihjPWIuZGF0YSx0eShhLGMpLG95KGEsYixjKSl9Owp0eT1mdW5jdGlvbihhLGIpe25hYSsrO3Z5KGEsYikmJl8uQ2soKS5HYSgoKT0+e18ucXgoXy5DaygpLCgpPT57aWYodnkoYSxiKSYmYS5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudD09PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmYSl7dmFyIGM7aWYoYS5nZXRBdHRyaWJ1dGUoImxheWVyIikpe3ZhciBkPWM9TnVtYmVyKGEuZ2V0QXR0cmlidXRlKCJsYXllciIpKSxlPV8ucHguZ2V0KGEpO2U/ZS5aZS5sYXllcj1kOnF5KGEsbmV3IHd5KGQpKTsoZD1yeShhKSkmJl8ucHguZ2V0KGEpPy5aZS5zZXRQYXJlbnQoZC5aZSl9ZWxzZShjPV8ucHguZ2V0KGEpKT9jPXB5KGMuWmUpOihjPXB5LGQ9bmV3IHd5LChlPXJ5KGEpKSYmZC5zZXRQYXJlbnQoZS5aZSkscXkoYSxkKSxjPWMoZCkpO2M/PyhjPTApO2Q9YS5nZXRBdHRyaWJ1dGUoImNsaWVudC12ZS10eXBlIik7ZT1OdW1iZXIoZCk7dmFyIGY9ITE7ZD0hMTt2YXIgaD1fLnB4LmdldChhKTtoJiYoaFtfLm94XSE9PWJ8fGUmJl8ucHguZ2V0KGEpPy5VZD09PQp2b2lkIDApJiYoaFtfLm94XT1iLGY9ZD1oLld4PSEwKTtfLnB4LmhhcyhhKSYmKF8ucHguZ2V0KGEpLlVkPWUpO2EudmlzdWFsRWxlbWVudCYmKGQ9ITApO3ZhciBrO18ueCgid2l6X25leHRfbGRfZml4X2NsaWVudF92ZV9zcGVjIik/az1fLkIoYj8ucmVuZGVyZXJDb250ZXh0LF8uS3gpPy5sb2dnaW5nRGlyZWN0aXZlc3x8Yj8ubG9nZ2luZ0RpcmVjdGl2ZXM6az1iPy5sb2dnaW5nRGlyZWN0aXZlcztfLngoIndpel9uZXh0X2NsaWVudF92ZV9wYXJlbnRfZml4Iik/ayYmKGsuY2xpZW50VmVTcGVjfHxrLnRyYWNraW5nUGFyYW1zKSYmKGg9KGg9Xy54eChhKSk/Xy5VeChoKTpudWxsLGs9VngoXy5oeCgpLGssaHx8dm9pZCAwLGMpKSYmKGEudmlzdWFsRWxlbWVudD1rKTprJiZrLmNsaWVudFZlU3BlYyYmKGg9Xy5VeChhKSxrPVZ4KF8uaHgoKSxrLGh8fHZvaWQgMCxjKSkmJihhLnZpc3VhbEVsZW1lbnQ9ayk7IWEudmlzdWFsRWxlbWVudCYmZSYmZiYmKGEudmVUeXBlPWUsaz12b2lkIDAsCl8ueCgid2l6X25leHRfY2xpZW50X3ZlX3BhcmVudF9maXgiKSYmKGU9Xy54eChhKSkmJihrPV8uVXgoZSkpLGs9Xy5FeChfLmh4KCksYSxrLGMpLGEudmlzdWFsRWxlbWVudD1rKTtkJiYoaz1fLnkoKS5yZXNvbHZlKF8uTHgpLF8uSngoYSx7ZGF0YTpiLG9ic2VydmVyOmssbGF5ZXI6YyxlYjp7VmI6ITEsc3RhdGU6InZpc2libGUifSxOYzp7VmI6ITEsc3RhdGU6ImhpZGRlbiJ9fSkpfX0sMCl9LDgpfTt2eT1mdW5jdGlvbihhLGIpe3JldHVybiBiPy50cmFja2luZ1BhcmFtc3x8Yj8ubG9nZ2luZ0RpcmVjdGl2ZXN8fF8uQihiPy5yZW5kZXJlckNvbnRleHQsXy5LeCl8fGEuZ2V0QXR0cmlidXRlKCJjbGllbnQtdmUtdHlwZSIpPyEwOiExfTtvYWE9L15odHRwcz8kL2k7cGFhPVsiUE9TVCIsIlBVVCJdO2t5PVtdO18uSGEoVHgsXy5nZik7Xy5nPVR4LnByb3RvdHlwZTtfLmcuUHU9ZnVuY3Rpb24oKXt0aGlzLmRpc3Bvc2UoKTtfLnhiKGt5LHRoaXMpfTsKXy5nLnNlbmQ9ZnVuY3Rpb24oYSxiLGMsZCl7aWYodGhpcy5yYSl0aHJvdyBFcnJvcigiUGFgIit0aGlzLmhhKyJgIithKTtiPWI/Yi50b1VwcGVyQ2FzZSgpOiJHRVQiO3RoaXMuaGE9YTt0aGlzLkI9IiI7dGhpcy5aPSExO3RoaXMuaj0hMDt0aGlzLnJhPW5ldyBYTUxIdHRwUmVxdWVzdDt0aGlzLnJhLm9ucmVhZHlzdGF0ZWNoYW5nZT0oMCxfLnlnKSgoMCxfLkNhKSh0aGlzLmdyLHRoaXMpKTt0cnl7dGhpcy5nYT0hMCx0aGlzLnJhLm9wZW4oYixTdHJpbmcoYSksITApLHRoaXMuZ2E9ITF9Y2F0Y2goZil7UXgodGhpcyxmKTtyZXR1cm59YT1jfHwiIjtjPW5ldyBNYXAodGhpcy5oZWFkZXJzKTtpZihkKWlmKE9iamVjdC5nZXRQcm90b3R5cGVPZihkKT09PU9iamVjdC5wcm90b3R5cGUpZm9yKHZhciBlIGluIGQpYy5zZXQoZSxkW2VdKTtlbHNlIGlmKHR5cGVvZiBkLmtleXM9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgZC5nZXQ9PT0iZnVuY3Rpb24iKWZvcihsZXQgZiBvZiBkLmtleXMoKSljLnNldChmLApkLmdldChmKSk7ZWxzZSB0aHJvdyBFcnJvcigiUWFgIitTdHJpbmcoZCkpO2Q9QXJyYXkuZnJvbShjLmtleXMoKSkuZmluZChmPT4iY29udGVudC10eXBlIj09Zi50b0xvd2VyQ2FzZSgpKTtlPV8udS5Gb3JtRGF0YSYmYSBpbnN0YW5jZW9mIF8udS5Gb3JtRGF0YTshKF8uc2IocGFhLGIpPj0wKXx8ZHx8ZXx8Yy5zZXQoIkNvbnRlbnQtVHlwZSIsImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04Iik7Zm9yKGxldCBbZixoXW9mIGMpdGhpcy5yYS5zZXRSZXF1ZXN0SGVhZGVyKGYsaCk7dGhpcy55YSYmKHRoaXMucmEucmVzcG9uc2VUeXBlPXRoaXMueWEpOyJ3aXRoQ3JlZGVudGlhbHMiaW4gdGhpcy5yYSYmdGhpcy5yYS53aXRoQ3JlZGVudGlhbHMhPT10aGlzLm9hJiYodGhpcy5yYS53aXRoQ3JlZGVudGlhbHM9dGhpcy5vYSk7dHJ5e3RoaXMuRCYmKGNsZWFyVGltZW91dCh0aGlzLkQpLHRoaXMuRD1udWxsKSx0aGlzLlU+MCYmKHRoaXMuRD1zZXRUaW1lb3V0KHRoaXMuZEIuYmluZCh0aGlzKSwKdGhpcy5VKSksdGhpcy5JPSEwLHRoaXMucmEuc2VuZChhKSx0aGlzLkk9ITF9Y2F0Y2goZil7UXgodGhpcyxmKX19O18uZy5kQj1mdW5jdGlvbigpe3R5cGVvZiBfLkNxIT0idW5kZWZpbmVkIiYmdGhpcy5yYSYmKHRoaXMuQj0iVGltZWQgb3V0IGFmdGVyICIrdGhpcy5VKyJtcywgYWJvcnRpbmciLHRoaXMuZGlzcGF0Y2hFdmVudCgidGltZW91dCIpLHRoaXMuYWJvcnQoOCkpfTtfLmcuYWJvcnQ9ZnVuY3Rpb24oKXt0aGlzLnJhJiZ0aGlzLmomJih0aGlzLmo9ITEsdGhpcy52PSEwLHRoaXMucmEuYWJvcnQoKSx0aGlzLnY9ITEsdGhpcy5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLHRoaXMuZGlzcGF0Y2hFdmVudCgiYWJvcnQiKSxQeCh0aGlzKSl9O18uZy5sYT1mdW5jdGlvbigpe3RoaXMucmEmJih0aGlzLmomJih0aGlzLmo9ITEsdGhpcy52PSEwLHRoaXMucmEuYWJvcnQoKSx0aGlzLnY9ITEpLFB4KHRoaXMsITApKTtUeC56Yi5sYS5jYWxsKHRoaXMpfTsKXy5nLmdyPWZ1bmN0aW9uKCl7dGhpcy5pYSgpfHwodGhpcy5nYXx8dGhpcy5JfHx0aGlzLnY/U3godGhpcyk6dGhpcy5seigpKX07Xy5nLmx6PWZ1bmN0aW9uKCl7U3godGhpcyl9O18uZy5pc0FjdGl2ZT1mdW5jdGlvbigpe3JldHVybiEhdGhpcy5yYX07Xy5nLmlzQ29tcGxldGU9ZnVuY3Rpb24oKXtyZXR1cm4odGhpcy5yYT90aGlzLnJhLnJlYWR5U3RhdGU6MCk9PTR9O18uZy5pc1N1Y2Nlc3M9ZnVuY3Rpb24oKXt2YXIgYT1fLlJ4KHRoaXMpLGI7aWYoIShiPV8uc2YoYSkpKXtpZihhPWE9PT0wKWE9Xy5PYihTdHJpbmcodGhpcy5oYSkpLGE9IW9hYS50ZXN0KGEpO2I9YX1yZXR1cm4gYn07Xy5nLmdldExhc3RFcnJvcj1mdW5jdGlvbigpe3JldHVybiB0eXBlb2YgdGhpcy5CPT09InN0cmluZyI/dGhpcy5COlN0cmluZyh0aGlzLkIpfTtfLmc9JHgucHJvdG90eXBlOwpfLmcuYWRkPWZ1bmN0aW9uKGEsYil7YXkodGhpcyk7dGhpcy52PW51bGw7YT1ieSh0aGlzLGEpO3ZhciBjPXRoaXMuai5nZXQoYSk7Y3x8dGhpcy5qLnNldChhLGM9W10pO2MucHVzaChiKTt0aGlzLm8rPTE7cmV0dXJuIHRoaXN9O18uZy5yZW1vdmU9ZnVuY3Rpb24oYSl7YXkodGhpcyk7YT1ieSh0aGlzLGEpO3JldHVybiB0aGlzLmouaGFzKGEpPyh0aGlzLnY9bnVsbCx0aGlzLm8tPXRoaXMuai5nZXQoYSkubGVuZ3RoLHRoaXMuai5kZWxldGUoYSkpOiExfTtfLmcuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLmo9dGhpcy52PW51bGw7dGhpcy5vPTB9O18uZy5pc0VtcHR5PWZ1bmN0aW9uKCl7YXkodGhpcyk7cmV0dXJuIHRoaXMubz09MH07Xy5nLmZvckVhY2g9ZnVuY3Rpb24oYSxiKXtheSh0aGlzKTt0aGlzLmouZm9yRWFjaChmdW5jdGlvbihjLGQpe2MuZm9yRWFjaChmdW5jdGlvbihlKXthLmNhbGwoYixlLGQsdGhpcyl9LHRoaXMpfSx0aGlzKX07Cl8uZy5yZD1mdW5jdGlvbigpe2F5KHRoaXMpO3ZhciBhPUFycmF5LmZyb20odGhpcy5qLnZhbHVlcygpKSxiPUFycmF5LmZyb20odGhpcy5qLmtleXMoKSksYz1bXTtmb3IobGV0IGQ9MDtkPGIubGVuZ3RoO2QrKyl7bGV0IGU9YVtkXTtmb3IobGV0IGY9MDtmPGUubGVuZ3RoO2YrKyljLnB1c2goYltkXSl9cmV0dXJuIGN9O18uZy5NYz1mdW5jdGlvbihhKXtheSh0aGlzKTt2YXIgYj1bXTtpZih0eXBlb2YgYT09PSJzdHJpbmciKWN5KHRoaXMsYSkmJihiPWIuY29uY2F0KHRoaXMuai5nZXQoYnkodGhpcyxhKSkpKTtlbHNle2E9QXJyYXkuZnJvbSh0aGlzLmoudmFsdWVzKCkpO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7YysrKWI9Yi5jb25jYXQoYVtjXSl9cmV0dXJuIGJ9OwpfLmcuc2V0PWZ1bmN0aW9uKGEsYil7YXkodGhpcyk7dGhpcy52PW51bGw7YT1ieSh0aGlzLGEpO2N5KHRoaXMsYSkmJih0aGlzLm8tPXRoaXMuai5nZXQoYSkubGVuZ3RoKTt0aGlzLmouc2V0KGEsW2JdKTt0aGlzLm8rPTE7cmV0dXJuIHRoaXN9O18uZy5nZXQ9ZnVuY3Rpb24oYSxiKXtpZighYSlyZXR1cm4gYjthPXRoaXMuTWMoYSk7cmV0dXJuIGEubGVuZ3RoPjA/U3RyaW5nKGFbMF0pOmJ9OwpfLmcudG9TdHJpbmc9ZnVuY3Rpb24oKXtpZih0aGlzLnYpcmV0dXJuIHRoaXMudjtpZighdGhpcy5qKXJldHVybiIiO3ZhciBhPVtdLGI9QXJyYXkuZnJvbSh0aGlzLmoua2V5cygpKTtmb3IobGV0IGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGM9YltkXTtsZXQgZT1lbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGMpKTtjPXRoaXMuTWMoYyk7Zm9yKGxldCBmPTA7ZjxjLmxlbmd0aDtmKyspe2xldCBoPWU7Y1tmXSE9PSIiJiYoaCs9Ij0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoY1tmXSkpKTthLnB1c2goaCl9fXJldHVybiB0aGlzLnY9YS5qb2luKCImIil9O18uZy5jbG9uZT1mdW5jdGlvbigpe3ZhciBhPW5ldyAkeDthLnY9dGhpcy52O3RoaXMuaiYmKGEuaj1uZXcgTWFwKHRoaXMuaiksYS5vPXRoaXMubyk7cmV0dXJuIGF9OwpfLmcuZXh0ZW5kPWZ1bmN0aW9uKGEpe2ZvcihsZXQgYj0wO2I8YXJndW1lbnRzLmxlbmd0aDtiKyspamFhKGFyZ3VtZW50c1tiXSxmdW5jdGlvbihjLGQpe3RoaXMuYWRkKGQsYyl9LHRoaXMpfTt2YXIgeHk9L1sjXC9cP0BdL2cscWFhPS9bI1w/XS9nLHJhYT0vWyNcPzpdL2csc2FhPS8jL2csbWFhPS9bI1w/QF0vZzsKXy5meS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgYT1bXSxiPXRoaXMuQjtiJiZhLnB1c2goZXkoYix4eSwhMCksIjoiKTt2YXIgYz10aGlzLm87aWYoY3x8Yj09ImZpbGUiKWEucHVzaCgiLy8iKSwoYj10aGlzLkkpJiZhLnB1c2goZXkoYix4eSwhMCksIkAiKSxhLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhjKSkucmVwbGFjZSgvJTI1KFswLTlhLWZBLUZdezJ9KS9nLCIlJDEiKSksYz10aGlzLlksYyE9bnVsbCYmYS5wdXNoKCI6IixTdHJpbmcoYykpO2lmKGM9dGhpcy5qKXRoaXMubyYmYy5jaGFyQXQoMCkhPSIvIiYmYS5wdXNoKCIvIiksYS5wdXNoKGV5KGMsYy5jaGFyQXQoMCk9PSIvIj9xYWE6cmFhLCEwKSk7KGM9dGhpcy5LLnRvU3RyaW5nKCkpJiZhLnB1c2goIj8iLGMpOyhjPXRoaXMudikmJmEucHVzaCgiIyIsZXkoYyxzYWEpKTtyZXR1cm4gYS5qb2luKCIiKX07Cl8uZnkucHJvdG90eXBlLnJlc29sdmU9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5jbG9uZSgpLGM9ISFhLkI7Yz9neShiLGEuQik6Yz0hIWEuSTtjP2IuST1hLkk6Yz0hIWEubztjP2Iubz1hLm86Yz1hLlkhPW51bGw7dmFyIGQ9YS5qO2lmKGMpaHkoYixhLlkpO2Vsc2UgaWYoYz0hIWEuail7aWYoZC5jaGFyQXQoMCkhPSIvIilpZih0aGlzLm8mJiF0aGlzLmopZD0iLyIrZDtlbHNle3ZhciBlPWIuai5sYXN0SW5kZXhPZigiLyIpO2UhPS0xJiYoZD1iLmouc2xpY2UoMCxlKzEpK2QpfWU9ZDtpZihlPT0iLi4ifHxlPT0iLiIpZD0iIjtlbHNlIGlmKGUuaW5kZXhPZigiLi8iKSE9LTF8fGUuaW5kZXhPZigiLy4iKSE9LTEpe2Q9ZS5sYXN0SW5kZXhPZigiLyIsMCk9PTA7ZT1lLnNwbGl0KCIvIik7bGV0IGY9W107Zm9yKGxldCBoPTA7aDxlLmxlbmd0aDspe2xldCBrPWVbaCsrXTtrPT0iLiI/ZCYmaD09ZS5sZW5ndGgmJmYucHVzaCgiIik6az09Ii4uIj8oKGYubGVuZ3RoPjF8fGYubGVuZ3RoPT0KMSYmZlswXSE9IiIpJiZmLnBvcCgpLGQmJmg9PWUubGVuZ3RoJiZmLnB1c2goIiIpKTooZi5wdXNoKGspLGQ9ITApfWQ9Zi5qb2luKCIvIil9ZWxzZSBkPWV9Yz9iLmo9ZDpjPWEuSy50b1N0cmluZygpIT09IiI7Yz9peShiLGEuSy5jbG9uZSgpKTpjPSEhYS52O2MmJihiLnY9YS52KTtyZXR1cm4gYn07Xy5meS5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IF8uZnkodGhpcyl9O18uZnkucHJvdG90eXBlLmFtPWZ1bmN0aW9uKCl7cmV0dXJuITF9O18uSGEoXy5qeSxfLmdmKTtfLmc9Xy5qeS5wcm90b3R5cGU7Xy5nLmVuYWJsZWQ9ITE7Xy5nLnNjPW51bGw7Xy5nLnNldEludGVydmFsPWZ1bmN0aW9uKGEpe3RoaXMudj1hO3RoaXMuc2MmJnRoaXMuZW5hYmxlZD8odGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKTp0aGlzLnNjJiZ0aGlzLnN0b3AoKX07Cl8uZy5hQj1mdW5jdGlvbigpe2lmKHRoaXMuZW5hYmxlZCl7bGV0IGE9Xy5FYSgpLXRoaXMuRDthPjAmJmE8dGhpcy52Ki44P3RoaXMuc2M9dGhpcy5qLnNldFRpbWVvdXQodGhpcy5CLHRoaXMudi1hKToodGhpcy5zYyYmKHRoaXMuai5jbGVhclRpbWVvdXQodGhpcy5zYyksdGhpcy5zYz1udWxsKSx0aGlzLmRpc3BhdGNoRXZlbnQoInRpY2siKSx0aGlzLmVuYWJsZWQmJih0aGlzLnN0b3AoKSx0aGlzLnN0YXJ0KCkpKX19O18uZy5zdGFydD1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMDt0aGlzLnNjfHwodGhpcy5zYz10aGlzLmouc2V0VGltZW91dCh0aGlzLkIsdGhpcy52KSx0aGlzLkQ9Xy5FYSgpKX07Xy5nLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLmVuYWJsZWQ9ITE7dGhpcy5zYyYmKHRoaXMuai5jbGVhclRpbWVvdXQodGhpcy5zYyksdGhpcy5zYz1udWxsKX07Xy5nLmxhPWZ1bmN0aW9uKCl7Xy5qeS56Yi5sYS5jYWxsKHRoaXMpO3RoaXMuc3RvcCgpO2RlbGV0ZSB0aGlzLmp9O18uQXk9bmV3IF8uSSgiY29udGludWF0aW9uQ29tbWFuZCIpO18uQnk9bmV3IF8uSSgibW9kaWZ5Q2hhbm5lbE5vdGlmaWNhdGlvblByZWZlcmVuY2VFbmRwb2ludCIpO18uQ3k9bmV3IF8uSSgidW5kb0ZlZWRiYWNrRW5kcG9pbnQiKTtfLkR5PW5ldyBfLkkoInVuc3Vic2NyaWJlRW5kcG9pbnQiKTt2YXIgdGFhO3RhYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMucmVnaXN0ZXI9bmV3IE1hcH1jbGVhcigpe18ubXkodGhpcyk7dGhpcy5yZWdpc3Rlci5jbGVhcigpfX07Xy5FeT1uZXcgdGFhO3ZhciB1YWE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmo9e319Y29udGFpbnMoYSl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLmosYSl9Z2V0KGEpe2lmKHRoaXMuY29udGFpbnMoYSkpcmV0dXJuIHRoaXMualthXX1zZXQoYSxiKXt0aGlzLmpbYV09Yn1yZCgpe3JldHVybiBPYmplY3Qua2V5cyh0aGlzLmopfXJlbW92ZShhKXtkZWxldGUgdGhpcy5qW2FdfX07Xy5HeT1uZXcgY2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm1hcHBpbmdzPW5ldyB1YWE7dGhpcy5qPW5ldyBTZXR9Z2V0KGEpe3ZhciBiPXRoaXMubWFwcGluZ3MuZ2V0KGEudG9TdHJpbmcoKSk7cmV0dXJuIF8ubnkodGhpcyxiLGEpfW9uTG9hZEVycm9yKGEpe3RoaXMuai5hZGQoYSk7cmV0dXJuKCk9Pnt0aGlzLmouZGVsZXRlKGEpfX19O18uSHk9bmV3IF8uVnMoIkFTWU5DX0lOTkVSVFVCRV9UUkFOU1BPUlRfVE9LRU4iKTtfLkl5PW5ldyBfLlZzKCJJTk5FUlRVQkVfVFJBTlNQT1JUX1RPS0VOIik7Xy5KeT1uZXcgXy5WcygiUkVTUE9OU0VfUFJPQ0VTU09SX01BUF9UT0tFTiIpO3ZhciB3eT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmxheWVyPWF9c2V0UGFyZW50KGEpe3RoaXMucGFyZW50PWF9fTt2YXIgbmFhPTA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8udmFhPSJwbGF5ZXJfdWlkXyIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciB4YWEseWFhLHphYSxWeSwkeSxheixieixjeixBYWEsaHosQmFhLENhYSxpeixreixFYWEsdHosd2FhLFJ5LFN5LEhhYSxJYWEsRGFhLEZhYSxkeixqeixleixmejtfLkt5PWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBfLkJmKXJldHVybiBhO3ZhciBiPW5ldyBfLkJmKF8uZ2QpO18uQWYoYiwyLGEpO3JldHVybiBifTtfLkx5PWZ1bmN0aW9uKGEsYil7Yj1fLmRiKGIpO2IhPT12b2lkIDAmJihhLmhyZWY9Yil9O18uTXk9ZnVuY3Rpb24oYSl7dmFyIGI9MDtmb3IobGV0IGM9MDtjPGEubGVuZ3RoOysrYyliPTMxKmIrYS5jaGFyQ29kZUF0KGMpPj4+MDtyZXR1cm4gYn07Xy5OeT1mdW5jdGlvbihhKXthPV8uTWIoYSk7cmV0dXJuIF8uSWIobnVsbCxudWxsLG51bGwsbnVsbCxhWzVdLGFbNl0sYVs3XSl9O18uT3k9ZnVuY3Rpb24oYSl7dmFyIGI9YS5pbmRleE9mKCIjIik7cmV0dXJuIGI8MD9hOmEuc2xpY2UoMCxiKX07Cl8uUHk9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9YS5zZWFyY2goXy5ZYiksZD0wLGUsZj1bXTsoZT1fLlhiKGEsZCxiLGMpKT49MDspZi5wdXNoKGEuc3Vic3RyaW5nKGQsZSkpLGQ9TWF0aC5taW4oYS5pbmRleE9mKCImIixlKSsxfHxjLGMpO2YucHVzaChhLnNsaWNlKGQpKTtyZXR1cm4gZi5qb2luKCIiKS5yZXBsYWNlKHdhYSwiJDEiKX07eGFhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1iJjEyOD8wOi0xLGU9YS5sZW5ndGgsZjtpZihmPSEhZSlmPWFbZS0xXSxmPWYhPW51bGwmJnR5cGVvZiBmPT09Im9iamVjdCImJmYuY29uc3RydWN0b3I9PT1PYmplY3Q7dmFyIGg9ZSsoZj8tMTowKTtmb3IoYj1iJjEyOD8xOjA7YjxoO2IrKyljKGItZCxhW2JdKTtpZihmKXthPWFbZS0xXTtmb3IobGV0IGsgaW4gYSkhaXNOYU4oaykmJmMoK2ssYVtrXSl9fTtfLlF5PWZ1bmN0aW9uKGEpe2lmKGE9PW51bGx8fHR5cGVvZiBhPT09ImJvb2xlYW4iKXJldHVybiBhO2lmKHR5cGVvZiBhPT09Im51bWJlciIpcmV0dXJuISFhfTsKeWFhPWZ1bmN0aW9uKGEpe3ZhciBiPV8uR2EoXy5KYyk7cmV0dXJuIGI/YVtiXTp2b2lkIDB9O3phYT1mdW5jdGlvbihhKXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgImJvb2xlYW4iOnJldHVybiBSeXx8KFJ5PVswLHZvaWQgMCwhMF0pO2Nhc2UgIm51bWJlciI6cmV0dXJuIGE+MD92b2lkIDA6YT09PTA/U3l8fChTeT1bMCx2b2lkIDBdKTpbLWEsdm9pZCAwXTtjYXNlICJzdHJpbmciOnJldHVyblswLGFdO2Nhc2UgIm9iamVjdCI6cmV0dXJuIGF9fTtfLlR5PWZ1bmN0aW9uKGEpe3JldHVybiEhKDImYSkmJiEhKDQmYSl8fCEhKDI1NiZhKX07Xy5VeT1mdW5jdGlvbihhLGIpe3JldHVybiBhPSgyJmI/YXwyOmEmLTMpJi0yNzN9O1Z5PWZ1bmN0aW9uKGEsYil7MiZiJiYoYXw9Mik7cmV0dXJuIGF8MX07Cl8uV3k9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsaCxrKXt2YXIgbD1fLkJjKGEsYyk7Zj1sPzE6ZjtoPSEhaHx8Zj09PTM7bD1rJiYhbDsoZj09PTJ8fGwpJiZfLm13KGEpJiYoYj1hLkRhLGM9YltfLkFjXXwwKTthPV8uZGQoYixlKTtrPUFycmF5LmlzQXJyYXkoYSk/YTpfLm1yO3ZhciBtPWs9PT1fLm1yPzc6a1tfLkFjXXwwLG49VnkobSxjKTtpZihhPSEoNCZuKSl7dmFyIHA9ayxyPWM7bGV0IHQ9ISEoMiZuKTt0JiYocnw9Mik7bGV0IHY9IXQsej0hMCxFPTAsQT0wO2Zvcig7RTxwLmxlbmd0aDtFKyspe2xldCBGPV8ua3cocFtFXSxkLHIpO2lmKEYgaW5zdGFuY2VvZiBkKXtpZighdCl7bGV0IEM9Xy5CYyhGKTt2JiYodj0hQyk7eiYmKHo9Qyl9cFtBKytdPUZ9fUE8RSYmKHAubGVuZ3RoPUEpO258PTQ7bj16P24mLTQwOTc6bnw0MDk2O249dj9ufDg6biYtOX1uIT09bSYmKGtbXy5BY109biwyJm4mJk9iamVjdC5mcmVlemUoaykpO2lmKGwmJiEoOCZufHwhay5sZW5ndGgmJihmPT09MXx8CihmIT09ND8wOjImbnx8ISgxNiZuKSYmMzImYykpKSl7Xy5UeShuKSYmKGs9Wy4uLmtdLG49Xy5VeShuLGMpLGM9Xy5wdyhiLGMsZSxrKSk7ZD1rO2w9bjtmb3IobT0wO208ZC5sZW5ndGg7bSsrKXA9ZFttXSxuPV8ubHcocCkscCE9PW4mJihkW21dPW4pO2x8PTg7bj1sPWQubGVuZ3RoP2x8NDA5NjpsJi00MDk3O2tbXy5BY109bn1kPWs7bD1rPW47Zj09PTF8fChmIT09ND8wOjIma3x8ISgxNiZrKSYmMzImYyk/Xy5UeShrKXx8KGt8PSFkLmxlbmd0aHx8YSYmISg0MDk2JmspfHwzMiZjJiYhKDQwOTYma3x8MTYmayk/MjoyNTYsayE9PWwmJihkW18uQWNdPWspLE9iamVjdC5mcmVlemUoZCkpOihmPT09MiYmXy5UeShrKSYmKGQ9Wy4uLmRdLGw9MCxrPV8uVXkoayxjKSxjPV8ucHcoYixjLGUsZCkpLF8uVHkoayl8fChofHwoa3w9MTYpLGshPT1sJiYoZFtfLkFjXT1rKSkpOzIma3x8ISg0MDk2Jmt8fDE2JmspfHxfLm93KGIsYyk7cmV0dXJuIGR9OwpfLlh5PWZ1bmN0aW9uKGEsYil7Zm9yKDtiPjEyNzspYS5qLnB1c2goYiYxMjd8MTI4KSxiPj4+PTc7YS5qLnB1c2goYil9O18uWXk9ZnVuY3Rpb24oYSxiKXtiLmxlbmd0aCE9PTAmJihhLnYucHVzaChiKSxhLm8rPWIubGVuZ3RoKX07Xy5aeT1mdW5jdGlvbihhLGIsYyl7Xy5YeShhLmosYio4K2MpfTskeT1mdW5jdGlvbihhLGIpe18uWnkoYSxiLDIpO2I9YS5qLmVuZCgpO18uWXkoYSxiKTtiLnB1c2goYS5vKTtyZXR1cm4gYn07YXo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnBvcCgpO2ZvcihjPWEubythLmoubGVuZ3RoKCktYztjPjEyNzspYi5wdXNoKGMmMTI3fDEyOCksYz4+Pj03LGEubysrO2IucHVzaChjKTthLm8rK307Yno9ZnVuY3Rpb24oYSxiKXtpZihhIGluc3RhbmNlb2YgXy5NcilyZXR1cm4gYS5EYTtpZihBcnJheS5pc0FycmF5KGEpKXJldHVybiBfLlhjKGEsYlswXSxiWzFdKX07CmN6PWZ1bmN0aW9uKGEsYixjLGQsZSl7Yj1ieihiLGQpO2IhPW51bGwmJihjPSR5KGEsYyksZShiLGEpLGF6KGEsYykpfTtBYWE9ZnVuY3Rpb24oYSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSkmJiEhYS5sZW5ndGgmJnR5cGVvZiBhWzBdPT09Im51bWJlciImJmFbMF0+MH07Cmh6PWZ1bmN0aW9uKGEpe3ZhciBiPUJhYSxjPUNhYSxkPWFbZHpdO2lmKGQpcmV0dXJuIGQ7ZD17fTtkLlpIPWE7ZC5PcT16YWEoYVswXSk7dmFyIGU9YVsxXSxmPTE7ZSYmZS5jb25zdHJ1Y3Rvcj09PU9iamVjdCYmKGQuZXh0ZW5zaW9ucz1lLGU9YVsrK2ZdLHR5cGVvZiBlPT09ImZ1bmN0aW9uIiYmKGQuU3g9ITAsZXo/Pyhlej1lKSxmej8/KGZ6PWFbZisxXSksZT1hW2YrPTJdKSk7Zm9yKHZhciBoPXt9O2UmJkFhYShlKTspe2Zvcih2YXIgaz0wO2s8ZS5sZW5ndGg7aysrKWhbZVtrXV09ZTtlPWFbKytmXX1mb3Ioaz0xO2UhPT12b2lkIDA7KXt0eXBlb2YgZT09PSJudW1iZXIiJiYoays9ZSxlPWFbKytmXSk7bGV0IG47dmFyIGw9dm9pZCAwO2UgaW5zdGFuY2VvZiBfLmd6P249ZToobj1EYWEsZi0tKTtpZihuPy5vKXtlPWFbKytmXTtsPWE7dmFyIG09Zjt0eXBlb2YgZT09PSJmdW5jdGlvbiImJihlPWUoKSxsW21dPWUpO2w9ZX1lPWFbKytmXTttPWsrMTt0eXBlb2YgZT09PSJudW1iZXIiJiYKZTwwJiYobS09ZSxlPWFbKytmXSk7Zm9yKDtrPG07aysrKXtsZXQgcD1oW2tdO2w/YyhkLGssbixsLHApOmIoZCxrLG4scCl9fXJldHVybiBhW2R6XT1kfTtCYWE9ZnVuY3Rpb24oYSxiLGMpe2FbYl09Yy5qfTtDYWE9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGUsZixoPWMuajthW2JdPShrLGwsbSk9PmgoayxsLG0sZnx8KGY9aHooZCkuT3EpLGV8fChlPWl6KGQpKSl9O2l6PWZ1bmN0aW9uKGEpe3ZhciBiPWFbanpdO2lmKCFiKXtsZXQgYz1oeihhKTtiPShkLGUpPT5reihkLGUsYyk7YVtqel09Yn1yZXR1cm4gYn07a3o9ZnVuY3Rpb24oYSxiLGMpe3hhYShhLGFbXy5BY118MCwoZCxlKT0+e2lmKGUhPW51bGwpe3ZhciBmPUVhYShjLGQpO2Y/ZihiLGUsZCk6ZDw1MDB8fF8ueGMoXy5rciwzKX19KTsoYT15YWEoYSkpJiZhLmN3KChkLGUsZik9PntfLll5KGIsYi5qLmVuZCgpKTtmb3IoZD0wO2Q8Zi5sZW5ndGg7ZCsrKV8uWXkoYixfLnd3KGZbZF0pfHxuZXcgVWludDhBcnJheSgwKSl9KX07CkVhYT1mdW5jdGlvbihhLGIpe3ZhciBjPWFbYl07aWYoYylyZXR1cm4gYztpZihjPWEuZXh0ZW5zaW9ucylpZihjPWNbYl0pe2M9QXJyYXkuaXNBcnJheShjKT9jWzBdaW5zdGFuY2VvZiBfLmd6P2M6W0ZhYSxjXTpbYyx2b2lkIDBdO3ZhciBkPWNbMF0uajtpZihjPWNbMV0pe2xldCBlPWl6KGMpLGY9aHooYykuT3E7Yz1hLlN4P2Z6KGYsZSk6KGgsayxsKT0+ZChoLGssbCxmLGUpfWVsc2UgYz1kO3JldHVybiBhW2JdPWN9fTtfLmx6PWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBfLmd6KGEsYil9O18ubXo9ZnVuY3Rpb24oYSxiLGMpe2I9Xy5ReShiKTtiIT1udWxsJiYoXy5aeShhLGMsMCksYS5qLmoucHVzaChiPzE6MCkpfTtfLm56PWZ1bmN0aW9uKGEsYixjLGQsZSl7Yj1ieihiLGQpO2IhPW51bGwmJihjPSR5KGEsYyksZShiLGEpLGF6KGEsYykpfTtfLnB6PWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBfLm96KHRoaXMsYSl9fTsKXy5xej1mdW5jdGlvbigpe2lmKCFfLkxqLmlzRW5hYmxlZCgpKXJldHVybiExO2lmKCFfLkxqLmlzRW1wdHkoKSlyZXR1cm4hMDtfLkxqLnNldCgiVEVTVENPT0tJRVNFTkFCTEVEIiwiMSIse3ZqOjYwfSk7aWYoXy5Mai5nZXQoIlRFU1RDT09LSUVTRU5BQkxFRCIpIT09IjEiKXJldHVybiExO18uTGoucmVtb3ZlKCJURVNUQ09PS0lFU0VOQUJMRUQiKTtyZXR1cm4hMH07Xy5yej1mdW5jdGlvbigpe3JldHVybihfLmhyfHxfLmlyKSYmXy5NaygiYXBwbGV3ZWJraXQiKSYmIV8uTWsoInZlcnNpb24iKSYmKCFfLk1rKCJzYWZhcmkiKXx8Xy5NaygiZ3NhLyIpKX07Xy5zej1mdW5jdGlvbigpe3JldHVybiBfLk5kKCl8fF8ucnooKXx8Xy5lciYmXy5NaygidmVyc2lvbi8iKT8hMDpfLncoIkVPTV9WSVNJVE9SX0RBVEEiKT8hMTohMH07Cl8udXo9ZnVuY3Rpb24oYSxiLGMsZD0hMCl7dmFyIGU9Xy53KCJWQUxJRF9TRVNTSU9OX1RFTVBEQVRBX0RPTUFJTlMiLFtdKSxmPV8uUGIod2luZG93LmxvY2F0aW9uLmhyZWYpO2YmJmUucHVzaChmKTtmPV8uUGIoYSk7aWYoXy5zYihlLGYpPj0wfHwhZiYmYS5sYXN0SW5kZXhPZigiLyIsMCk9PTApaWYoZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIiksXy5MeShlLGEpLGE9ZS5ocmVmKWlmKGE9Xy5OeShhKSxhPV8uT3koYSkpZCYmIWIuY3NuJiYoYi5pdGN0fHxiLnZlZCkmJihiPU9iamVjdC5hc3NpZ24oe2NzbjpfLmlxKCl9LGIpKSxjPyhjPXBhcnNlSW50KGMsMTApLGlzRmluaXRlKGMpJiZjPjAmJnR6KGEsYixjKSk6dHooYSxiKX07dHo9ZnVuY3Rpb24oYSxiLGMpe2E9Xy52eihhKTtiPWI/Xy5VYihiKToiIjtjPWN8fDU7Xy5zeigpJiZfLk1qKGEsYixjKX07Xy52ej1mdW5jdGlvbihhKXtmb3IobGV0IGIgb2YgR2FhKWE9Xy5QeShhLGIpO3JldHVybiJTVC0iK18uTXkoYSkudG9TdHJpbmcoMzYpfTsKXy53ej17fTt3YWE9L1s/Jl0oJHwjKS87SGFhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5qPVtdfWxlbmd0aCgpe3JldHVybiB0aGlzLmoubGVuZ3RofWVuZCgpe3ZhciBhPXRoaXMuajt0aGlzLmo9W107cmV0dXJuIGF9d3JpdGVVaW50OChhKXt0aGlzLmoucHVzaChhPj4+MCYyNTUpfXdyaXRlSW50OChhKXt0aGlzLmoucHVzaChhPj4+MCYyNTUpfX07SWFhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy52PVtdO3RoaXMubz0wO3RoaXMuaj1uZXcgSGFhfX07Xy5nej1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMuaj1hO2E9Xy5HYShfLnpyKTt0aGlzLm89ISFhJiZiPT09YXx8ITF9fTtEYWE9bmV3IF8uZ3ooY3osXy56cik7RmFhPW5ldyBfLmd6KGN6LF8uenIpO2R6PVN5bWJvbCgpO2p6PVN5bWJvbCgpOwpfLm96PShhLGIpPT57dmFyIGM9bmV3IElhYTtreihhLkRhLGMsaHooYikpO18uWXkoYyxjLmouZW5kKCkpO2E9bmV3IFVpbnQ4QXJyYXkoYy5vKTtiPWMudjt2YXIgZD1iLmxlbmd0aCxlPTA7Zm9yKGxldCBmPTA7ZjxkO2YrKyl7bGV0IGg9YltmXTthLnNldChoLGUpO2UrPWgubGVuZ3RofWMudj1bYV07cmV0dXJuIGF9O18ueHo9Xy5seihfLm16LF8uQXIpOwpfLnl6PWZ1bmN0aW9uKGEsYixjPV8uenIpe3JldHVybiBuZXcgXy5neihiLGMpfShmdW5jdGlvbihhLGIsYyxkLGUpe2lmKGEuaigpIT09MilyZXR1cm4hMTt2YXIgZj1hLm87ZD1fLlhjKHZvaWQgMCxkWzBdLGRbMV0pO3ZhciBoPWJbXy5BY118MDtpZihoJjIpdGhyb3cgRXJyb3IoKTt2YXIgaz1oJjEyOD9fLnd6OnZvaWQgMCxsPV8uZGQoYixjLGspO2w9QXJyYXkuaXNBcnJheShsKT9sOl8ubXI7dmFyIG09bD09PV8ubXI/NzpsW18uQWNdfDAsbj1WeShtLGgpO2lmKDImbnx8Xy5UeShuKXx8MTYmbiluPT09bXx8Xy5UeShuKXx8KGxbXy5BY109biksbD1bLi4ubF0sbT0wLG49Xy5VeShuLGgpLF8ucHcoYixoLGMsbCxrKTtuJj0tMTM7biE9PW0mJihsW18uQWNdPW4pO2wucHVzaChkKTtmLmNhbGwoYSxkLGUpO3JldHVybiEwfSxmdW5jdGlvbihhLGIsYyxkLGUpe2lmKEFycmF5LmlzQXJyYXkoYikpe2ZvcihsZXQgZj0wO2Y8Yi5sZW5ndGg7ZisrKV8ubnooYSxiW2ZdLGMsZCxlKTsKYT1iW18uQWNdfDA7YSYxfHwoYltfLkFjXT1hfDEpfX0pO18ueno9bmV3IF8uSSgic2lnbmFsU2VydmljZUVuZHBvaW50Iik7Xy5Bej1uZXcgXy5JKCJwbGF5bGlzdEVkaXRFbmRwb2ludCIpO3ZhciBHYWE9ImFic29sdXRlX2V4cGVyaW1lbnRzIGFwcCBjb25kaXRpb25hbF9leHBlcmltZW50cyBkZWJ1Z2NzcyBkZWJ1Z2pzIGV4cGZsYWcgZm9yY2VkX2V4cGVyaW1lbnRzIHBiaiBwYmpyZWxvYWQgc2JiIHNwZiBzcGZyZWxvYWQgc3JfYm5zX2FkZHJlc3Mgc3R0aWNrIi5zcGxpdCgiICIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgRXosRnosQnosR3osSmFhO18uQ3o9ZnVuY3Rpb24oYSl7cmV0dXJuISEoKEJ6KGBmJHtNYXRoLmZsb29yKGEvMzEpKzF9YCl8fDApJjE8PGElMzEpfTtfLkR6PWZ1bmN0aW9uKGEsYil7dmFyIGM9YGYke01hdGguZmxvb3IoYS8zMSkrMX1gO2E9MTw8YSUzMTt2YXIgZD1CeihjKXx8MDtkPWI/ZHxhOmQmfmE7ZD09PTA/ZGVsZXRlIF8ueHNbY106Xy54c1tjXT1kLnRvU3RyaW5nKDE2KS50b1N0cmluZygpfTtFej1mdW5jdGlvbihhKXtpZigvXmYoWzEtOV1bMC05XSopJC8udGVzdChhKSl0aHJvdyBFcnJvcigiZmFgIithKTt9O0Z6PWZ1bmN0aW9uKGEpe2lmKCEvXlx3KyQvLnRlc3QoYSkpdGhyb3cgRXJyb3IoImdhYCIrYSk7fTtCej1mdW5jdGlvbihhKXthPV8ueHNbYV0hPT12b2lkIDA/Xy54c1thXS50b1N0cmluZygpOm51bGw7cmV0dXJuIGEhPW51bGwmJi9eW0EtRmEtZjAtOV0rJC8udGVzdChhKT9wYXJzZUludChhLDE2KTpudWxsfTsKXy5Iej1mdW5jdGlvbigpe0d6fHwoR3o9bmV3IEphYSk7cmV0dXJuIEd6fTtfLkl6PWZ1bmN0aW9uKGEpe3JldHVybiBfLlZpKCgpPT57aWYoXy5CcShhKSlyZXR1cm4hMTtfLkFxKGEsdm9pZCAwLHZvaWQgMCk7cmV0dXJuITB9KSgpfTsKSmFhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5qPV8udygiQUxUX1BSRUZfQ09PS0lFX05BTUUiLCJQUkVGIik7dGhpcy5vPV8udygiQUxUX1BSRUZfQ09PS0lFX0RPTUFJTiIsInlvdXR1YmUuY29tIik7dmFyIGE9Xy5Mai5nZXQodGhpcy5qLHZvaWQgMCk7YSYmdGhpcy5wYXJzZShhKX1nZXQoYSxiKXtGeihhKTtFeihhKTthPV8ueHNbYV0hPT12b2lkIDA/Xy54c1thXS50b1N0cmluZygpOm51bGw7cmV0dXJuIGEhPW51bGw/YTpiP2I6IiJ9c2V0KGEsYil7RnooYSk7RXooYSk7aWYoYj09bnVsbCl0aHJvdyBFcnJvcigiZWEiKTtfLnhzW2FdPWIudG9TdHJpbmcoKX1yZW1vdmUoYSl7RnooYSk7RXooYSk7ZGVsZXRlIF8ueHNbYV19c2F2ZSgpe18uTWoodGhpcy5qLHRoaXMuZHVtcCgpLDYzMDcyRTMsdGhpcy5vLCEwKX1jbGVhcigpe2ZvcihsZXQgYSBpbiBfLnhzKWRlbGV0ZSBfLnhzW2FdfWR1bXAoKXt2YXIgYT1bXTtmb3IobGV0IGIgaW4gXy54cylfLnhzLmhhc093blByb3BlcnR5KGIpJiYKYS5wdXNoKGAke2J9PWArZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhfLnhzW2JdKSkpO3JldHVybiBhLmpvaW4oIiYiKX1wYXJzZShhKXthPWRlY29kZVVSSUNvbXBvbmVudChhKS5zcGxpdCgiJiIpO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgYj1hW2NdLnNwbGl0KCI9Iik7bGV0IGQ9YlswXTsoYj1iWzFdKSYmKF8ueHNbZF09Yi50b1N0cmluZygpKX19fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIExhYSxLYWE7Xy5Kej1mdW5jdGlvbihhLGIpe2Eudi5zZXQoYi5qYSxiKTt2YXIgYz1hLmouZ2V0KGIuamEpO2lmKGMpdHJ5e2MuUWgoYS5yZXNvbHZlKGIuamEpKX1jYXRjaChkKXtjLlF6KGQpfX07Xy5Lej1mdW5jdGlvbihhLGI9Xy5hYil7cmV0dXJuIF8uYmIoYSxiKXx8Xy5GcX07Xy5Mej1mdW5jdGlvbigpe3JldHVybiBfLnUueXRQdWJzdWJQdWJzdWJJbnN0YW5jZX07Xy5Nej1mdW5jdGlvbihhLGIpe3ZhciBjPV8uTHooKTtpZihjJiZiKXtsZXQgZD1jLnN1YnNjcmliZShhLGZ1bmN0aW9uKCl7dmFyIGU9YXJndW1lbnRzLGY9KCk9PntfLlJzW2RdJiZiLmFwcGx5JiZ0eXBlb2YgYi5hcHBseT09ImZ1bmN0aW9uIiYmYi5hcHBseSh3aW5kb3csZSl9O3RyeXtfLlRzW2FdP2YoKTpfLm1qKGYsMCl9Y2F0Y2goaCl7Xy5VaShoKX19LHZvaWQgMCk7Xy5Sc1tkXT0hMDtfLlNzW2FdfHwoXy5Tc1thXT1bXSk7Xy5Tc1thXS5wdXNoKGQpO3JldHVybiBkfXJldHVybiAwfTsKXy5Oej1mdW5jdGlvbihhKXt2YXIgYj1fLkx6KCk7YiYmKHR5cGVvZiBhPT09Im51bWJlciI/YT1bYV06dHlwZW9mIGE9PT0ic3RyaW5nIiYmKGE9W3BhcnNlSW50KGEsMTApXSksXy50YihhLGM9PntiLnVuc3Vic2NyaWJlQnlLZXkoYyk7ZGVsZXRlIF8uUnNbY119KSl9O18uT3o9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLkx6KCk7cmV0dXJuIGM/Yy5wdWJsaXNoLmFwcGx5KGMsYXJndW1lbnRzKTohMX07Xy5Qej1mdW5jdGlvbihhKXtyZXR1cm4gS2FhW2FdfHwiTEFURU5DWV9BQ1RJT05fVU5LTk9XTiJ9O0xhYT1mdW5jdGlvbigpe3ZhciBhPV8uc3EuZ2V0RW50cmllc0J5VHlwZT8uKCJtYXJrIik7YSYmYS5mb3JFYWNoKGI9PntiLm5hbWUuc3RhcnRzV2l0aCgibWFya18iKSYmXy5zcS5jbGVhck1hcmtzPy4oYi5uYW1lKX0pfTtfLlF6PWZ1bmN0aW9uKGEpe18ucmEoInl0Z2xvYmFsLnRpbWluZyIrKGF8fCIiKSsicmVhZHlfIiwhMCl9OwpfLlJ6PWZ1bmN0aW9uKGEpe3JldHVybiBfLlZpKCgpPT5fLkJxKCJfc3RhcnQiLGEpKSgpfTtfLlN6PWZ1bmN0aW9uKGEpe18uVmkoKCk9PntfLlJ6KGEpJiZfLkFxKCJhYSIsdm9pZCAwLGEpO3ZhciBiPWF8fCIiLGM9Xy50bygpO2NbYl0mJmRlbGV0ZSBjW2JdO3ZhciBkPXt0aW1lck5hbWU6YixpbmZvOnt9LHRpY2s6e30sc3Bhbjp7fSxqc3BiSW5mbzpbXX07Xy5zbyhkKTtjW2JdPWQ7Xy5qbyhhKTsoMCxfLmJ0KSgpO0xhYSgpO2F8fChfLncoIlRJTUlOR19BQ1RJT04iKSYmXy5RaSgiUFJFVklPVVNfQUNUSU9OIixfLncoIlRJTUlOR19BQ1RJT04iKSksXy5RaSgiVElNSU5HX0FDVElPTiIsIiIpKX0pKCl9OwpfLlR6PWZ1bmN0aW9uKGEsYj17fSxjLGQpe18uVmkoKCk9Pnt2YXIgZT1jP2M6YTtfLlN6KGUpO3ZhciBmPWIuc2FtcGxlUmF0ZTtpZighXy54KCJ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkIil8fGY9PT12b2lkIDB8fGY8PTEpZj0hMTtlbHNle3ZhciBoPV8ucG8oZSk7Zj1fLkduKGgpJWYhPT0wfWYmJihfLmtvKGUpLmFjdGlvbkRpc2FibGVkPSEwKTtfLnVvKGV8fCIiKS5pbmZvLmFjdGlvblR5cGU9YTtiLmN0dEF1dGhJbmZvJiYoXy5rbyhlKS5jdHRBdXRoSW5mbz1iLmN0dEF1dGhJbmZvKTtfLlFpKGUrIlRJTUlOR19BQ1RJT04iLGEpO18uVmkoXy5vcSkoYi5zdGFydFRpbWUsZSk7Zj17YWN0aW9uVHlwZTpkfHxfLlB6KGEpfTtiLlRKJiYoZi5wcmV2aW91c0FjdGlvbj1fLlB6KF8udygiVElNSU5HX0FDVElPTiIpKSk7KGg9Xy5pcSgpKSYmaCE9PSJVTkRFRklORURfQ1NOIiYmKGYuY2xpZW50U2NyZWVuTm9uY2U9aCk7Xy56cShmLGUpO18uUXooZSl9KSgpfTsKS2FhPXthdXRvX3NlYXJjaDoiTEFURU5DWV9BQ1RJT05fQVVUT19TRUFSQ0giLGFkX3RvX2FkOiJMQVRFTkNZX0FDVElPTl9BRF9UT19BRCIsYWRfdG9fdmlkZW86IkxBVEVOQ1lfQUNUSU9OX0FEX1RPX1ZJREVPIixhcHBfc3RhcnR1cDoiTEFURU5DWV9BQ1RJT05fQVBQX1NUQVJUVVAiLGJyb3dzZToiTEFURU5DWV9BQ1RJT05fQlJPV1NFIixjYXN0X3NwbGFzaDoiTEFURU5DWV9BQ1RJT05fQ0FTVF9TUExBU0giLGNhbGxfdG9fY2FzdDoiTEFURU5DWV9BQ1RJT05fQ0FMTF9UT19DQVNUIixjaGFubmVsX2FjdGl2aXR5OiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX0NIQU5ORUxfQUNUSVZJVFkiLGNoYW5uZWxzOiJMQVRFTkNZX0FDVElPTl9DSEFOTkVMUyIsY2hpcHM6IkxBVEVOQ1lfQUNUSU9OX0NISVBTIixjb21tZXJjZV90cmFuc2FjdGlvbjoiTEFURU5DWV9BQ1RJT05fQ09NTUVSQ0VfVFJBTlNBQ1RJT04iLGRpcmVjdF9wbGF5YmFjazoiTEFURU5DWV9BQ1RJT05fRElSRUNUX1BMQVlCQUNLIiwKZWRpdG9yOiJMQVRFTkNZX0FDVElPTl9FRElUT1IiLGVtYmVkOiJMQVRFTkNZX0FDVElPTl9FTUJFRCIsZW1iZWRfbm9fdmlkZW86IkxBVEVOQ1lfQUNUSU9OX0VNQkVEX05PX1ZJREVPIixlbnRpdHlfa2V5X3NlcmlhbGl6YXRpb25fcGVyZjoiTEFURU5DWV9BQ1RJT05fRU5USVRZX0tFWV9TRVJJQUxJWkFUSU9OX1BFUkYiLGVudGl0eV9rZXlfZGVzZXJpYWxpemF0aW9uX3BlcmY6IkxBVEVOQ1lfQUNUSU9OX0VOVElUWV9LRVlfREVTRVJJQUxJWkFUSU9OX1BFUkYiLGV4cGxvcmU6IkxBVEVOQ1lfQUNUSU9OX0VYUExPUkUiLGZhdm9yaXRlczoiTEFURU5DWV9BQ1RJT05fRkFWT1JJVEVTIixob21lOiJMQVRFTkNZX0FDVElPTl9IT01FIixpbmJvYXJkaW5nOiJMQVRFTkNZX0FDVElPTl9JTkJPQVJESU5HIixsYW5kaW5nOiJMQVRFTkNZX0FDVElPTl9MQU5ESU5HIixsZWFybmluZzoiTEFURU5DWV9BQ1RJT05fTEVBUk5JTkciLGxlYXJuaW5nX2pvdXJuZXlfYnJvd3NlOiJMQVRFTkNZX0FDVElPTl9MRUFSTklOR19KT1VSTkVZX0JST1dTRSIsCmxlYXJuaW5nX2pvdXJuZXlfd2F0Y2g6IkxBVEVOQ1lfQUNUSU9OX0xFQVJOSU5HX0pPVVJORVlfV0FUQ0giLGxpYnJhcnk6IkxBVEVOQ1lfQUNUSU9OX0xJQlJBUlkiLGxpdmU6IkxBVEVOQ1lfQUNUSU9OX0xJVkUiLGxpdmVfcGFnaW5hdGlvbjoiTEFURU5DWV9BQ1RJT05fTElWRV9QQUdJTkFUSU9OIixtYW5hZ2VtZW50OiJMQVRFTkNZX0FDVElPTl9NQU5BR0VNRU5UIixtaW5pX2FwcDoiTEFURU5DWV9BQ1RJT05fTUlOSV9BUFBfUExBWSIsbm90aWZpY2F0aW9uX3NldHRpbmdzOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX05PVElGSUNBVElPTl9TRVRUSU5HUyIsb25ib2FyZGluZzoiTEFURU5DWV9BQ1RJT05fT05CT0FSRElORyIscGFyZW50X3Byb2ZpbGVfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0tJRFNfUEFSRU5UX1BST0ZJTEVfU0VUVElOR1MiLHBhcmVudF90b29sc19jb2xsZWN0aW9uOiJMQVRFTkNZX0FDVElPTl9QQVJFTlRfVE9PTFNfQ09MTEVDVElPTiIscGFyZW50X3Rvb2xzX2Rhc2hib2FyZDoiTEFURU5DWV9BQ1RJT05fUEFSRU5UX1RPT0xTX0RBU0hCT0FSRCIsCnBsYXllcl9hdHQ6IkxBVEVOQ1lfQUNUSU9OX1BMQVlFUl9BVFRFU1RBVElPTiIscHJlYnVmZmVyOiJMQVRFTkNZX0FDVElPTl9QUkVCVUZGRVIiLHByZWZldGNoOiJMQVRFTkNZX0FDVElPTl9QUkVGRVRDSCIscHJvZmlsZV9zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fS0lEU19QUk9GSUxFX1NFVFRJTkdTIixwcm9maWxlX3N3aXRjaGVyOiJMQVRFTkNZX0FDVElPTl9MT0dJTiIscHJvamVjdHM6IkxBVEVOQ1lfQUNUSU9OX1BST0pFQ1RTIixyZWVsX3dhdGNoOiJMQVRFTkNZX0FDVElPTl9SRUVMX1dBVENIIixyZXN1bHRzOiJMQVRFTkNZX0FDVElPTl9SRVNVTFRTIixyZWQ6IkxBVEVOQ1lfQUNUSU9OX1BSRU1JVU1fUEFHRV9HRVRfQlJPV1NFIixwcmVtaXVtOiJMQVRFTkNZX0FDVElPTl9QUkVNSVVNX1BBR0VfR0VUX0JST1dTRSIscHJlbWl1bV9saXRlX3Vwc2VsbDoiTEFURU5DWV9BQ1RJT05fUFJFTUlVTV9MSVRFX1VQU0VMTCIscHJpdmFjeV9wb2xpY3k6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfUFJJVkFDWV9QT0xJQ1kiLApyZXZpZXc6IkxBVEVOQ1lfQUNUSU9OX1JFVklFVyIsc2VhcmNoX292ZXJ2aWV3X2Fuc3dlcjoiTEFURU5DWV9BQ1RJT05fU0VBUkNIX09WRVJWSUVXX0FOU1dFUiIsc2VhcmNoX3VpOiJMQVRFTkNZX0FDVElPTl9TRUFSQ0hfVUkiLHNlYXJjaF9zdWdnZXN0OiJMQVRFTkNZX0FDVElPTl9TVUdHRVNUIixzZWFyY2hfemVyb19zdGF0ZToiTEFURU5DWV9BQ1RJT05fU0VBUkNIX1pFUk9fU1RBVEUiLHNlY3JldF9jb2RlOiJMQVRFTkNZX0FDVElPTl9LSURTX1NFQ1JFVF9DT0RFIixzd2l0Y2hwbGFuOiJMQVRFTkNZX0FDVElPTl9VTlBMVUdHRURfU1dJVENIX1BMQU4iLHNlZWs6IkxBVEVOQ1lfQUNUSU9OX1BMQVlFUl9TRUVLIixzZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fU0VUVElOR1MiLHN0b3JlOiJMQVRFTkNZX0FDVElPTl9TVE9SRSIsc3VwZXJ2aXNpb25fZGFzaGJvYXJkOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1NVUEVSVklTSU9OX0RBU0hCT0FSRCIsYmVkdGltZV9yZW1pbmRlcl9zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9CRURUSU1FX1JFTUlOREVSX1NFVFRJTkdTIiwKYnJlYWtfcmVtaW5kZXJfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfQlJFQUtfUkVNSU5ERVJfU0VUVElOR1MiLHN1cGVydmlzaW9uX3NldHRpbmdzX2Rhc2hib2FyZDoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9TVVBFUlZJU0lPTl9TRVRUSU5HU19EQVNIQk9BUkQiLHRpbWVfbWFuYWdlbWVudDoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9USU1FX01BTkFHRU1FTlQiLHVwZGF0ZV9wcm9maWxlOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1VQREFURV9QUk9GSUxFIix2aWV3aW5nX3Blcm1pc3Npb25zOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1ZJRVdJTkdfUEVSTUlTU0lPTlMiLHNob3J0c19zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9TSE9SVFNfU0VUVElOR1MiLHByaXZhY3lfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfUFJJVkFDWV9TRVRUSU5HUyIsdGVueDoiTEFURU5DWV9BQ1RJT05fVEVOWCIsCnZpZGVvX3ByZXZpZXc6IkxBVEVOQ1lfQUNUSU9OX1ZJREVPX1BSRVZJRVciLHZpZGVvX3RvX2FkOiJMQVRFTkNZX0FDVElPTl9WSURFT19UT19BRCIsd2F0Y2g6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIix3YXRjaF9pdF9hZ2FpbjoiTEFURU5DWV9BQ1RJT05fS0lEU19XQVRDSF9JVF9BR0FJTiIsIndhdGNoLHdhdGNoNyI6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIiwid2F0Y2gsd2F0Y2g3X2h0bWw1IjoiTEFURU5DWV9BQ1RJT05fV0FUQ0giLCJ3YXRjaCx3YXRjaDdhZCI6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIiwid2F0Y2gsd2F0Y2g3YWRfaHRtbDUiOiJMQVRFTkNZX0FDVElPTl9XQVRDSCIsd25fY29tbWVudHM6IkxBVEVOQ1lfQUNUSU9OX0xPQURfQ09NTUVOVFMiLHd3X3JxczoiTEFURU5DWV9BQ1RJT05fV0hPX0lTX1dBVENISU5HIix2b2ljZV9hc3Npc3RhbnQ6IkxBVEVOQ1lfQUNUSU9OX1ZPSUNFX0FTU0lTVEFOVCIsY2FzdF9sb2FkX2J5X2VudGl0eV90b193YXRjaDoiTEFURU5DWV9BQ1RJT05fQ0FTVF9MT0FEX0JZX0VOVElUWV9UT19XQVRDSCIsCm5ldHdvcmtsZXNzX3BlcmZvcm1hbmNlOiJMQVRFTkNZX0FDVElPTl9ORVRXT1JLTEVTU19QRVJGT1JNQU5DRSIsZ2VsX2NvbXByZXNzaW9uOiJMQVRFTkNZX0FDVElPTl9HRUxfQ09NUFJFU1NJT04iLGdlbF9qc3BiX3NlcmlhbGl6ZToiTEFURU5DWV9BQ1RJT05fR0VMX0pTUEJfU0VSSUFMSVpFIixhdHRlc3RhdGlvbl9jaGFsbGVuZ2VfZmV0Y2g6IkxBVEVOQ1lfQUNUSU9OX0FUVEVTVEFUSU9OX0NIQUxMRU5HRV9GRVRDSCJ9O18uVXo9bmV3IF8uSSgiZmVlZGJhY2tFbmRwb2ludCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlZ6PWZ1bmN0aW9uKGEsYil7aWYoYiE9PW51bGwmJmIhPT12b2lkIDApe2lmKHR5cGVvZiBiIT09Im9iamVjdCImJnR5cGVvZiBiIT09ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJkIik7aWYoYz09PXZvaWQgMCl7aWYoIVN5bWJvbC5kaXNwb3NlKXRocm93IG5ldyBUeXBlRXJyb3IoImYiKTt2YXIgYz1iW1N5bWJvbC5kaXNwb3NlXX1pZih0eXBlb2YgYyE9PSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiZyIpO2Euc3RhY2sucHVzaCh7dmFsdWU6YixkaXNwb3NlOmMsYXN5bmM6ITF9KX1yZXR1cm4gYn07Cl8uV3o9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihmKXthLmVycm9yPWEuaGFzRXJyb3I/bmV3IFN1cHByZXNzZWRFcnJvcihmLGEuZXJyb3IsIkFuIGVycm9yIHdhcyBzdXBwcmVzc2VkIGR1cmluZyBkaXNwb3NhbC4iKTpmO2EuaGFzRXJyb3I9ITB9ZnVuY3Rpb24gYygpe2Zvcig7ZD1hLnN0YWNrLnBvcCgpOyl0cnl7aWYoIWQuYXN5bmMmJmU9PT0xKXJldHVybiBlPTAsYS5zdGFjay5wdXNoKGQpLFByb21pc2UucmVzb2x2ZSgpLnRoZW4oYyk7aWYoZC5kaXNwb3NlKXt2YXIgZj1kLmRpc3Bvc2UuY2FsbChkLnZhbHVlKTtpZihkLmFzeW5jKXJldHVybiBlfD0yLFByb21pc2UucmVzb2x2ZShmKS50aGVuKGMsZnVuY3Rpb24oaCl7YihoKTtyZXR1cm4gYygpfSl9ZWxzZSBlfD0xfWNhdGNoKGgpe2IoaCl9aWYoZT09PTEpcmV0dXJuIGEuaGFzRXJyb3I/UHJvbWlzZS5yZWplY3QoYS5lcnJvcik6UHJvbWlzZS5yZXNvbHZlKCk7aWYoYS5oYXNFcnJvcil0aHJvdyBhLmVycm9yO312YXIgZCwKZT0wO2MoKX07Xy5Yej1mdW5jdGlvbigpe3RyeXtyZXR1cm4hIXNlbGYubG9jYWxTdG9yYWdlfWNhdGNoe3JldHVybiExfX07Xy5Zej1uZXcgXy5JKCJzaGFyZUVuZHBvaW50Iik7Xy5aej1uZXcgXy5JKCJzaGFyZUVudGl0eUVuZHBvaW50Iik7Xy5NYWE9bmV3IF8uSSgic2hhcmVFbnRpdHlTZXJ2aWNlRW5kcG9pbnQiKTtfLk5hYT1uZXcgXy5JKCJ3ZWJQbGF5ZXJTaGFyZUVudGl0eVNlcnZpY2VFbmRwb2ludCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmFBPWZ1bmN0aW9uKGEsYj17fSxjKXthPShhPWEgaW4gXy4kej9fLiR6W2FdOmMpfHwiIjtmb3IobGV0IGQgaW4gYiljPSgpPT5TdHJpbmcoYltkXSksYT1hLnJlcGxhY2UobmV3IFJlZ0V4cCgiXFwkXFx7IitkKyJcXH0iLCJnaSIpLGMpLGE9YS5yZXBsYWNlKG5ldyBSZWdFeHAoIlxcJCIrZCwiZ2kiKSxjKTtyZXR1cm4gYX07Xy4kej13aW5kb3cueXQmJndpbmRvdy55dC5tc2dzX3x8d2luZG93Lnl0Y2ZnJiZ3aW5kb3cueXRjZmcubXNnc3x8e307Xy5yYSgieXQubXNnc18iLF8uJHopOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgY0E7Xy5iQT1mdW5jdGlvbihhKXt2YXIgYj1hLmluZGV4T2YoIjoiKTtyZXR1cm4gYj09PS0xP3tNbTphfTp7TW06YS5zdWJzdHJpbmcoMCxiKSxkYXRhc3luY0lkOmEuc3Vic3RyaW5nKGIrMSl9fTtfLmVBPWFzeW5jIGZ1bmN0aW9uKCl7cmV0dXJuIGNBIT09dm9pZCAwP2NBOmNBPW5ldyBQcm9taXNlKGFzeW5jIGE9Pnt0cnl7YXdhaXQgXy5kQS5vcGVuKCJ0ZXN0LW9ubHkiKSxhd2FpdCBfLmRBLmRlbGV0ZSgidGVzdC1vbmx5Iil9Y2F0Y2goYil7aWYoYiBpbnN0YW5jZW9mIEVycm9yJiZiLm5hbWU9PT0iU2VjdXJpdHlFcnJvciIpe2EoITEpO3JldHVybn19YSgiY2FjaGVzImluIHdpbmRvdyl9KX07Xy5kQT1fLnUuY2FjaGVzOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmdBPW5ldyBXZWFrTWFwO18uaEE9bmV3IFNldDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgiYmFzZSIpOwp2YXIgQVosQlosQ1osY3JhLERaLGVyYSxFWixGWixIWixLWixMWixNWixmcmEsUFosUVosU1osZ3JhLFZaLGNfLGRfLGVfLGZfLGdfLGhfLGlfLGpfLGtfLGlyYSxqcmEsa3JhLGxyYSxucmEsbV8sbl8sb18scF8scV8scl8sc18sdF8sdV8sdl8sd18seF8scHJhLHlfLHpfLHFyYSxBXyxycmEsc3JhLHRyYSxCXyxDXyxEXyxGXyxHXyxIXyxJXyxKXyxLXyxMXyxNXyxPXyxQXyxRXyxSXyxTXyxocmEsdXJhLHZyYSxUXyxVXyxWXyxXXyxYXyxZXyx3cmEsJF8sYTAsYjAseHJhLGQwLHlyYSxlMCx6cmEsQnJhLENyYSxEcmEsZzAsRXJhLEZyYSxHcmEsaDAsaTAsbDAsSHJhLGswLGowLG4wLElyYSxKcmEsbzAsS3JhLHAwLHEwLHIwLExyYSxNcmEsTnJhLE9yYSxQcmEsUXJhLHQwLHYwLHcwLHgwLFNyYSxUcmEseTAsQTAsQjAsQzAsRDAsRTAsRzAsVXJhLFZyYSxIMCxXcmEsWHJhLFlyYSxJMCxKMCxTMCxUMCxQMCxVMCxMMCxRMCxLMCxPMCxNMCxOMCxacmEsUjAsJHJhLFYwLGFzYSxjc2EsClgwLFkwLFowLCQwLGExLGRzYSxiMSxjMSxlc2EsZnNhLGdzYSxkMSxmMSxoc2EsZzEsanNhLGtzYSxqMSxsc2EsazEsbDEsbTEsbXNhLHIxLHNzYSx1c2EsdjEseTEsdzEsdnNhLHhzYSxCMSxDMSxEMSx5c2EsRTEsRjEsQXNhLEJzYSx6c2EsQ3NhLEVzYSxGc2EsR3NhLHFzYSxvMSxuc2EsSTEsSHNhLEcxLElzYSxKc2EsSzEsTTEsTjEsS3NhLE8xLFAxLExzYSxSMSxPc2EsUHNhLFJzYSxRMSxVMSxXMSxUc2EsJDEsWDEsVXNhLFZzYSxXc2EsWHNhLGF0YSxidGEsZjIsJHNhLFpzYSxhMixlMixiMixjdGEsZzIsaDIsaTIsazIsbDIsZXRhLGZ0YSxndGEsbjIscDIsbzIsdDIsanRhLHIyLGl0YSx3Mix2MixtdGEsbnRhLG90YSxwdGEseDIseTIsejIsQTIsQzIsdXRhLHZ0YSxFMixGMix3dGEsRzIseXRhLFpfLEkyLEoyLEwyLHp0YSxOMixPMixQMixCdGEsUTIsRHRhLFMyLFQyLFUyLEV0YSxWMixXMixGdGEsR3RhLGEzLGIzLEl0YSxlMyxKdGEsZDMsZjMsS3RhLEx0YSxNdGEsYzMsSHRhLApoMyxOdGEsazMsT3RhLFB0YSxRdGEsbTMsbjMsbDMsUnRhLG8zLHAzLFN0YSxxMyxUdGEscjMsczMsdzMsVXRhLHgzLHkzLFZ0YSxZdGEsWnRhLEMzLEQzLEUzLCR0YSxidWEsY3VhLEczLGR1YSxldWEsWHRhLEgzLEkzLGZ1YSxndWEsYzQsZDQsZTQsaHVhLGY0LGl1YSxqdWEsWXNhLGh0YSxrdWEsbnVhLGc0LGk0LHB1YSxoNCxrNCxzdWEsdHVhLGw0LG00LHZ1YSx3dWEsbzQseHVhLHl1YSxxNCx6dWEsQXVhLEJ1YSxEdWEsR3VhLHY0LEp1YSx3NCxJdWEsSHVhLEt1YSx4NCx5NCx6NCxBNCxENCxDNCxCNCxFNCxNdWEsRjQsT3VhLFB1YSxRdWEsUnVhLFN1YSxUdWEsVXVhLEk0LEs0LFp1YSwkdWEsUTQsTTQsVnVhLFI0LFM0LGF2YSxidmEsY3ZhLGR2YSxkcmEsQTMsR1osSVosSlosTl8sTlosT1osUlosVFosVVosJFosYV8sYl8sWlosWVosV1osWFosbF8sRV8sb3JhLFY0LGV2YSxXNCxYNCxmdmEsWTQsWjQsZ3ZhLGh2YSxpdmEsanZhLGt2YSwkNCxsdmEsbXZhLGE1LG52YSxiNSwKYzUsb3ZhLHB2YTtBWj1mdW5jdGlvbihhKXtpZihhIT1udWxsJiZ0eXBlb2YgYSE9PSJzdHJpbmciKXRocm93IEVycm9yKCk7cmV0dXJuIGF9O0JaPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5xdyhhLGIsQVooYykpfTtDWj1mdW5jdGlvbihhLGIsYyl7aWYoYyE9bnVsbCl7aWYoISgwLF8ud3IpKGMpKXRocm93IF8uSXcoImVudW0iKTtjfD0wfXJldHVybiBfLnF3KGEsYixjKX07Y3JhPWZ1bmN0aW9uKGEpe3ZhciBiPVtdO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7YysrKWIucHVzaChhLmNoYXJDb2RlQXQoYykpO3JldHVybiBifTtEWj1mdW5jdGlvbihhLGIpe3JldHVybiBhW2JdKyhhW2IrMV08PDgpKyhhW2IrMl08PDE2KSsoYVtiKzNdPDwyNCl9OwplcmE9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe2MtPWQ7Yy09ZTtjXj1lPj4+MTM7ZC09ZTtkLT1jO2RePWM8PDg7ZS09YztlLT1kO2VePWQ+Pj4xMztjLT1kO2MtPWU7Y149ZT4+PjEyO2QtPWU7ZC09YztkXj1jPDwxNjtlLT1jO2UtPWQ7ZV49ZD4+PjU7Yy09ZDtjLT1lO2NePWU+Pj4zO2QtPWU7ZC09YztkXj1jPDwxMDtlLT1jO2UtPWQ7ZV49ZD4+PjE1fWE9Y3JhKGEpO2Zvcih2YXIgYz0yNjU0NDM1NzY5LGQ9MjY1NDQzNTc2OSxlPTMxNDE1OTI2NSxmPWEubGVuZ3RoLGg9ZixrPTA7aD49MTI7aC09MTIsays9MTIpYys9RFooYSxrKSxkKz1EWihhLGsrNCksZSs9RFooYSxrKzgpLGIoKTtlKz1mO3N3aXRjaChoKXtjYXNlIDExOmUrPWFbaysxMF08PDI0O2Nhc2UgMTA6ZSs9YVtrKzldPDwxNjtjYXNlIDk6ZSs9YVtrKzhdPDw4O2Nhc2UgODpkKz1hW2srN108PDI0O2Nhc2UgNzpkKz1hW2srNl08PDE2O2Nhc2UgNjpkKz1hW2srNV08PDg7Y2FzZSA1OmQrPWFbays0XTtjYXNlIDQ6Yys9CmFbayszXTw8MjQ7Y2FzZSAzOmMrPWFbaysyXTw8MTY7Y2FzZSAyOmMrPWFbaysxXTw8ODtjYXNlIDE6Yys9YVtrXX1iKCk7cmV0dXJuIGRyYS50b1N0cmluZyhlKX07RVo9ZnVuY3Rpb24oYSxiKXthLmFkZE9uRGlzcG9zZUNhbGxiYWNrKF8uRGEoXy5aZCxiKSl9O0ZaPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgVWludDhBcnJheShfLnd3KGEpfHwwKX07SFo9ZnVuY3Rpb24oYSl7cmV0dXJuKEdafHwoR1o9bmV3IFRleHRFbmNvZGVyKSkuZW5jb2RlKGEpfTtLWj1mdW5jdGlvbihhKXt2YXIgYj1hPj4+MDtJWj1iO0paPShhLWIpLzQyOTQ5NjcyOTY+Pj4wfTtMWj1mdW5jdGlvbihhKXtpZihhPDApe0taKC1hKTthPUlaO3ZhciBiPUpaO2I9fmI7YT9hPX5hKzE6Yis9MTtsZXQgW2MsZF09W2EsYl07SVo9Yz4+PjA7Slo9ZD4+PjB9ZWxzZSBLWihhKX07Ck1aPWZ1bmN0aW9uKGEpe2EubGVuZ3RoPDE2P0xaKE51bWJlcihhKSk6KGE9QmlnSW50KGEpLElaPU51bWJlcihhJkJpZ0ludCg0Mjk0OTY3Mjk1KSk+Pj4wLEpaPU51bWJlcihhPj5CaWdJbnQoMzIpJkJpZ0ludCg0Mjk0OTY3Mjk1KSkpfTsKZnJhPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhPT09InN0cmluZyIpcmV0dXJuIG5ldyBOWihfLnV3KGEpLCEwKTtpZihBcnJheS5pc0FycmF5KGEpKXJldHVybiBuZXcgTloobmV3IFVpbnQ4QXJyYXkoYSksITApO2lmKGEuY29uc3RydWN0b3I9PT1VaW50OEFycmF5KXJldHVybiBuZXcgTlooYSwhMSk7aWYoYS5jb25zdHJ1Y3Rvcj09PUFycmF5QnVmZmVyKXJldHVybiBhPW5ldyBVaW50OEFycmF5KGEpLG5ldyBOWihhLCExKTtpZihhLmNvbnN0cnVjdG9yPT09Xy5SYyl7bGV0IGI9Xy53dyhhKXx8bmV3IFVpbnQ4QXJyYXkoMCk7cmV0dXJuIG5ldyBOWihiLCEwLGEpfWlmKGEgaW5zdGFuY2VvZiBVaW50OEFycmF5KXJldHVybiBhPWEuY29uc3RydWN0b3I9PT1VaW50OEFycmF5P2E6bmV3IFVpbnQ4QXJyYXkoYS5idWZmZXIsYS5ieXRlT2Zmc2V0LGEuYnl0ZUxlbmd0aCksbmV3IE5aKGEsITEpO3Rocm93IEVycm9yKCk7fTsKUFo9ZnVuY3Rpb24oYSl7cmV0dXJuIGEubz09PTA/bmV3IE9aKDAsMSt+YS5qKTpuZXcgT1oofmEubysxLH5hLmopfTtRWj1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IE9aKGEmNDI5NDk2NzI5NSxNYXRoLmZsb29yKGEvNDI5NDk2NzI5NikpfTtTWj1mdW5jdGlvbihhKXtpZighYSlyZXR1cm4gUlp8fChSWj1uZXcgT1ooMCwwKSk7aWYoIS9eXGQrJC8udGVzdChhKSlyZXR1cm4gbnVsbDtNWihhKTtyZXR1cm4gbmV3IE9aKElaLEpaKX07Z3JhPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgVFooYSY0Mjk0OTY3Mjk1LE1hdGguZmxvb3IoYS80Mjk0OTY3Mjk2KSl9O1ZaPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiBVWnx8KFVaPW5ldyBUWigwLDApKTtpZighL14tP1xkKyQvLnRlc3QoYSkpcmV0dXJuIG51bGw7TVooYSk7cmV0dXJuIG5ldyBUWihJWixKWil9OwpjXz1mdW5jdGlvbihhLGIsYyl7aWYodHlwZW9mIEJpZ0ludDY0QXJyYXkhPT0idW5kZWZpbmVkIilyZXR1cm4gV1p8fChXWj1uZXcgQmlnSW50NjRBcnJheSgxKSxYWj1uZXcgVWludDMyQXJyYXkoV1ouYnVmZmVyKSxXWlswXT1CaWdJbnQoMSksWVo9WFpbMF09PT0xKSxXWlswXT1hLGE9WVo/MDoxLG5ldyBiKFhaW2FdLFhaWzEtYV0pO1pafHwoJFo9QmlnSW50KE51bWJlci5NSU5fU0FGRV9JTlRFR0VSKSxhXz1CaWdJbnQoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpLGJfPUJpZ0ludCg0Mjk0OTY3Mjk1KSxaWj1CaWdJbnQoMzIpKTtpZihhPj0kWiYmYTw9YV8pcmV0dXJuIGMoTnVtYmVyKGEpKTthPUJpZ0ludC5hc1VpbnROKDY0LGEpO3JldHVybiBuZXcgYihOdW1iZXIoYSZiXyksTnVtYmVyKGE+PlpaKSl9O2RfPWZ1bmN0aW9uKGEsYixjKXtmb3IoO2M+MHx8Yj4xMjc7KWEuai5wdXNoKGImMTI3fDEyOCksYj0oYj4+Pjd8Yzw8MjUpPj4+MCxjPj4+PTc7YS5qLnB1c2goYil9OwplXz1mdW5jdGlvbihhLGIpe2Euai5wdXNoKGI+Pj4wJjI1NSk7YS5qLnB1c2goYj4+PjgmMjU1KTthLmoucHVzaChiPj4+MTYmMjU1KTthLmoucHVzaChiPj4+MjQmMjU1KX07Zl89ZnVuY3Rpb24oYSxiKXtpZihiPj0wKV8uWHkoYSxiKTtlbHNle2ZvcihsZXQgYz0wO2M8OTtjKyspYS5qLnB1c2goYiYxMjd8MTI4KSxiPj49NzthLmoucHVzaCgxKX19O2dfPWZ1bmN0aW9uKGEpe3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAic3RyaW5nIjpTWihhKX19O2hfPWZ1bmN0aW9uKGEpe3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAic3RyaW5nIjphLmxlbmd0aCYmYVswXT09PSItIj9TWihhLnN1YnN0cmluZygxKSk6U1ooYSl9fTsKaV89ZnVuY3Rpb24oYSxiLGMpe2lmKGMhPW51bGwpc3dpdGNoKGdfKGMpLF8uWnkoYSxiLDEpLHR5cGVvZiBjKXtjYXNlICJudW1iZXIiOmE9YS5qO0taKGMpO2VfKGEsSVopO2VfKGEsSlopO2JyZWFrO2Nhc2UgImJpZ2ludCI6Yz1jXyhjLE9aLFFaKTthPWEuajtiPWMuajtlXyhhLGMubyk7ZV8oYSxiKTticmVhaztkZWZhdWx0OmM9U1ooYyksYT1hLmosYj1jLmosZV8oYSxjLm8pLGVfKGEsYil9fTtqXz1mdW5jdGlvbihhLGIsYyl7YyE9bnVsbCYmKGM9cGFyc2VJbnQoYywxMCksXy5aeShhLGIsMCksZl8oYS5qLGMpKX07a189ZnVuY3Rpb24oYSxiLGMpe18uWnkoYSxiLDIpO18uWHkoYS5qLGMubGVuZ3RoKTtfLll5KGEsYS5qLmVuZCgpKTtfLll5KGEsYyl9OwppcmE9ZnVuY3Rpb24oYSl7dmFyIGI9InRydWUiLnRvU3RyaW5nKCksYz1baHJhYGRhdGEtYF07aWYoYy5sZW5ndGg9PT0wKXRocm93IEVycm9yKCJoIik7aWYoYy5tYXAoZD0+e2lmKGQgaW5zdGFuY2VvZiBsXylkPWQuajtlbHNlIHRocm93IEVycm9yKCJoIik7cmV0dXJuIGR9KS5ldmVyeShkPT4iZGF0YS1sb2FkZWQiLmluZGV4T2YoZCkhPT0wKSl0aHJvdyBFcnJvcigiaWBkYXRhLWxvYWRlZCIpO2Euc2V0QXR0cmlidXRlKCJkYXRhLWxvYWRlZCIsYil9O2pyYT1mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoYSxiLHZvaWQgMCl9O2tyYT1mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUucmVkdWNlLmNhbGwoYSxiLHtkdXJhdGlvbjowfSl9O2xyYT1mdW5jdGlvbihhLGIpe3JldHVybiBhPmI/MTphPGI/LTE6MH07Cm5yYT1mdW5jdGlvbigpe3ZhciBhPW1yYTtyZXR1cm4gXy5DYyhiPT57Zm9yKGxldCBjIGluIGEpaWYoYj09PWFbY10mJiEvXlswLTldKyQvLnRlc3QoYykpcmV0dXJuITA7cmV0dXJuITF9KX07bV89ZnVuY3Rpb24oYSxiKXtiPj4+PTA7YT4+Pj0wO3ZhciBjO2I8PTIwOTcxNTE/Yz0iIisoNDI5NDk2NzI5NipiK2EpOmM9IiIrKEJpZ0ludChiKTw8QmlnSW50KDMyKXxCaWdJbnQoYSkpO3JldHVybiBjfTtuXz1mdW5jdGlvbihhLGIpe3ZhciBjPWIqNDI5NDk2NzI5NisoYT4+PjApO3JldHVybiBOdW1iZXIuaXNTYWZlSW50ZWdlcihjKT9jOm1fKGEsYil9O29fPWZ1bmN0aW9uKCl7dmFyIGE9SVosYj1KWixjO2ImMjE0NzQ4MzY0OD9jPSIiKyhCaWdJbnQoYnwwKTw8QmlnSW50KDMyKXxCaWdJbnQoYT4+PjApKTpjPW1fKGEsYik7cmV0dXJuIGN9OwpwXz1mdW5jdGlvbihhKXtpZihhIT1udWxsJiZ0eXBlb2YgYSE9PSJudW1iZXIiKXRocm93IEVycm9yKCJxYCIrdHlwZW9mIGErImAiK2EpO3JldHVybiBhfTtxXz1mdW5jdGlvbihhKXtpZihhPT1udWxsfHx0eXBlb2YgYT09PSJudW1iZXIiKXJldHVybiBhO2lmKGE9PT0iTmFOInx8YT09PSJJbmZpbml0eSJ8fGE9PT0iLUluZmluaXR5IilyZXR1cm4gTnVtYmVyKGEpfTtyXz1mdW5jdGlvbihhKXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgImJpZ2ludCI6cmV0dXJuITA7Y2FzZSAibnVtYmVyIjpyZXR1cm4oMCxfLndyKShhKTtjYXNlICJzdHJpbmciOnJldHVybiBvcmEudGVzdChhKTtkZWZhdWx0OnJldHVybiExfX07c189ZnVuY3Rpb24oYSl7aWYoYT09bnVsbClyZXR1cm4gYTtpZih0eXBlb2YgYT09PSJzdHJpbmciJiZhKWE9K2E7ZWxzZSBpZih0eXBlb2YgYSE9PSJudW1iZXIiKXJldHVybjtyZXR1cm4oMCxfLndyKShhKT9hPj4+MDp2b2lkIDB9Owp0Xz1mdW5jdGlvbihhKXt2YXIgYj0oMCxfLnhyKShOdW1iZXIoYSkpO2lmKCgwLF8udnIpKGIpKXJldHVybiBfLkZjKGIpO2I9YS5pbmRleE9mKCIuIik7YiE9PS0xJiYoYT1hLnN1YnN0cmluZygwLGIpKTtyZXR1cm4gXy5GYygoMCxfLnRyKSg2NCxCaWdJbnQoYSkpKX07dV89ZnVuY3Rpb24oYSl7dmFyIGI9KDAsXy54cikoTnVtYmVyKGEpKTtpZigoMCxfLnZyKShiKSlyZXR1cm4gU3RyaW5nKGIpO2I9YS5pbmRleE9mKCIuIik7YiE9PS0xJiYoYT1hLnN1YnN0cmluZygwLGIpKTtiPWEubGVuZ3RoOyhhWzBdPT09Ii0iP2I8MjB8fGI9PT0yMCYmYTw9Ii05MjIzMzcyMDM2ODU0Nzc1ODA4IjpiPDE5fHxiPT09MTkmJmE8PSI5MjIzMzcyMDM2ODU0Nzc1ODA3Iil8fChNWihhKSxhPW9fKCkpO3JldHVybiBhfTsKdl89ZnVuY3Rpb24oYSl7YT0oMCxfLnhyKShhKTtpZighKDAsXy52cikoYSkpe0xaKGEpO3ZhciBiPUlaLGM9Slo7aWYoYT1jJjIxNDc0ODM2NDgpYj1+YisxPj4+MCxjPX5jPj4+MCxiPT0wJiYoYz1jKzE+Pj4wKTtiPW5fKGIsYyk7YT10eXBlb2YgYj09PSJudW1iZXIiP2E/LWI6YjphPyItIitiOmJ9cmV0dXJuIGF9O3dfPWZ1bmN0aW9uKGEpe2E9KDAsXy54cikoYSk7KDAsXy52cikoYSk/YT1TdHJpbmcoYSk6KExaKGEpLGE9b18oKSk7cmV0dXJuIGF9O3hfPWZ1bmN0aW9uKGEpe3JldHVybigwLF8udnIpKGEpP18uRmModl8oYSkpOl8uRmMod18oYSkpfTsKcHJhPWZ1bmN0aW9uKGEpe3ZhciBiPXZvaWQgMDtiPTEwMjQ7aWYoIXJfKGEpKXRocm93IF8uSXcoImludDY0Iik7dmFyIGM9dHlwZW9mIGE7c3dpdGNoKGIpe2Nhc2UgNTEyOnN3aXRjaChjKXtjYXNlICJzdHJpbmciOnJldHVybiB1XyhhKTtjYXNlICJiaWdpbnQiOnJldHVybiBTdHJpbmcoKDAsXy50cikoNjQsYSkpO2RlZmF1bHQ6cmV0dXJuIHdfKGEpfWNhc2UgMTAyNDpzd2l0Y2goYyl7Y2FzZSAic3RyaW5nIjpyZXR1cm4gdF8oYSk7Y2FzZSAiYmlnaW50IjpyZXR1cm4gXy5GYygoMCxfLnRyKSg2NCxhKSk7ZGVmYXVsdDpyZXR1cm4geF8oYSl9Y2FzZSAwOnN3aXRjaChjKXtjYXNlICJzdHJpbmciOnJldHVybiB1XyhhKTtjYXNlICJiaWdpbnQiOnJldHVybiBfLkZjKCgwLF8udHIpKDY0LGEpKTtkZWZhdWx0OnJldHVybiB2XyhhKX1kZWZhdWx0OnJldHVybiBfLmViKGIsIlVua25vd24gZm9ybWF0IHJlcXVlc3RlZCB0eXBlIGZvciBpbnQ2NCIpfX07CnlfPWZ1bmN0aW9uKGEpe3JldHVybiBhPT1udWxsP2E6cHJhKGEpfTt6Xz1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgYTtpZihhPT1udWxsKXJldHVybiBhO2lmKGI9PT0iYmlnaW50IilyZXR1cm4gXy5GYygoMCxfLnRyKSg2NCxhKSk7aWYocl8oYSkpcmV0dXJuIGI9PT0ic3RyaW5nIj90XyhhKTp4XyhhKX07cXJhPWZ1bmN0aW9uKGEpe2lmKGE9PW51bGwpcmV0dXJuIGE7dmFyIGI9dHlwZW9mIGE7aWYoYj09PSJiaWdpbnQiKXJldHVybiBTdHJpbmcoKDAsXy50cikoNjQsYSkpO2lmKHJfKGEpKXtpZihiPT09InN0cmluZyIpcmV0dXJuIHVfKGEpO2lmKGI9PT0ibnVtYmVyIilyZXR1cm4gdl8oYSl9fTsKQV89ZnVuY3Rpb24oYSl7aWYoYT09bnVsbClyZXR1cm4gYTt2YXIgYj10eXBlb2YgYTtpZihiPT09ImJpZ2ludCIpcmV0dXJuIFN0cmluZygoMCxfLnVyKSg2NCxhKSk7aWYocl8oYSkpe2lmKGI9PT0ic3RyaW5nIilyZXR1cm4gYj0oMCxfLnhyKShOdW1iZXIoYSkpLCgwLF8udnIpKGIpJiZiPj0wP2E9U3RyaW5nKGIpOihiPWEuaW5kZXhPZigiLiIpLGIhPT0tMSYmKGE9YS5zdWJzdHJpbmcoMCxiKSksYVswXT09PSItIj9iPSExOihiPWEubGVuZ3RoLGI9YjwyMD8hMDpiPT09MjAmJmE8PSIxODQ0Njc0NDA3MzcwOTU1MTYxNSIpLGJ8fChNWihhKSxhPW1fKElaLEpaKSkpLGE7aWYoYj09PSJudW1iZXIiKXJldHVybiBhPSgwLF8ueHIpKGEpLGE+PTAmJigwLF8udnIpKGEpfHwoTFooYSksYT1uXyhJWixKWikpLGF9fTtycmE9ZnVuY3Rpb24oYSl7aWYoYT09bnVsbHx8dHlwZW9mIGE9PSJzdHJpbmcifHxhIGluc3RhbmNlb2YgXy5SYylyZXR1cm4gYX07CnNyYT1mdW5jdGlvbihhKXtpZih0eXBlb2YgYSE9PSJzdHJpbmciKXRocm93IEVycm9yKCk7cmV0dXJuIGF9O3RyYT1mdW5jdGlvbihhKXtyZXR1cm4gXy5OdyhhLCEwKX07Ql89ZnVuY3Rpb24oYSl7YT1fLmVkKGEsMSx2b2lkIDAsdm9pZCAwLHRyYSk7cmV0dXJuIGE9PW51bGw/Xy5NdygpOmF9OwpDXz1mdW5jdGlvbihhLGIsYyl7Xy5udyhhKTt2YXIgZD1hLkRhLGU9ZFtfLkFjXXwwO2lmKGI9PW51bGwpcmV0dXJuIF8ucHcoZCxlLDMpLGE7dmFyIGY9Yj09PV8ubXI/NzpiW18uQWNdfDAsaD1mLGs9Xy5UeShmKSxsPWt8fE9iamVjdC5pc0Zyb3plbihiKTtrfHwoZj0wKTtsfHwoYj1bLi4uYl0saD0wLGY9Xy5VeShmLGUpLGw9ITEpO2Z8PTU7az0oNCZmPzUxMiZmPzUxMjoxMDI0JmY/MTAyNDowOnZvaWQgMCk/PzEwMjQ7Znw9aztmb3IobGV0IG09MDttPGIubGVuZ3RoO20rKyl7bGV0IG49YlttXSxwPWMobixrKTtPYmplY3QuaXMobixwKXx8KGwmJihiPVsuLi5iXSxoPTAsZj1fLlV5KGYsZSksbD0hMSksYlttXT1wKX1mIT09aCYmKGwmJihiPVsuLi5iXSxmPV8uVXkoZixlKSksYltfLkFjXT1mKTtfLnB3KGQsZSwzLGIpO3JldHVybiBhfTsKRF89ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9YS5nZXQoZCk7aWYoZSE9bnVsbClyZXR1cm4gZTtlPTA7Zm9yKGxldCBmPTA7ZjxkLmxlbmd0aDtmKyspe2xldCBoPWRbZl07Xy5kZChiLGgpIT1udWxsJiYoZSE9PTAmJihjPV8ucHcoYixjLGUpKSxlPWgpfWEuc2V0KGQsZSk7cmV0dXJuIGV9O0ZfPWZ1bmN0aW9uKGEsYixjLGQpe18ubncoYSk7YT1hLkRhO3ZhciBlPWFbXy5BY118MDtpZihkPT1udWxsKXt2YXIgZj1hW0VfXT8/KGFbRV9dPW5ldyBNYXApO2lmKERfKGYsYSxlLGMpPT09YilmLnNldChjLDApO2Vsc2UgcmV0dXJufWVsc2V7Zj1hW0VfXT8/KGFbRV9dPW5ldyBNYXApO2xldCBoPURfKGYsYSxlLGMpO2ghPT1iJiYoaCYmKGU9Xy5wdyhhLGUsaCkpLGYuc2V0KGMsYikpfV8ucHcoYSxlLGIsZCl9O0dfPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLkRhO3JldHVybiBfLld5KGEsZCxkW18uQWNdfDAsYixjLHZvaWQgMD09PV8ub3I/Mjo0LCExLCEwKX07CkhfPWZ1bmN0aW9uKGEsYixjKXtfLm53KGEpO3ZhciBkPWEuRGEsZT1kW18uQWNdfDA7aWYoYz09bnVsbClyZXR1cm4gXy5wdyhkLGUsYiksYTt2YXIgZj1jPT09Xy5tcj83OmNbXy5BY118MCxoPWYsaz1fLlR5KGYpLGw9a3x8T2JqZWN0LmlzRnJvemVuKGMpLG09ITAsbj0hMDtmb3IobGV0IHI9MDtyPGMubGVuZ3RoO3IrKyl7dmFyIHA9Y1tyXTtrfHwocD1fLkJjKHApLG0mJihtPSFwKSxuJiYobj1wKSl9a3x8KGY9bT8xMzo1LGY9bj9mJi00MDk3OmZ8NDA5Nik7bCYmZj09PWh8fChjPVsuLi5jXSxoPTAsZj1fLlV5KGYsZSkpO2YhPT1oJiYoY1tfLkFjXT1mKTtlPV8ucHcoZCxlLGIsYyk7MiZmfHwhKDQwOTYmZnx8MTYmZil8fF8ub3coZCxlKTtyZXR1cm4gYX07SV89ZnVuY3Rpb24oYSxiLGM9Xy55cil7cmV0dXJuIF8uZWQoYSxiLHZvaWQgMCx2b2lkIDAsel8pPz9jfTtKXz1mdW5jdGlvbihhLGIsYz0iIixkKXtyZXR1cm4gXy5YdChfLmVkKGEsYixkKSk/P2N9OwpLXz1mdW5jdGlvbihhKXthPV8uZWQoYSwxKTtyZXR1cm4oYT09bnVsbD9hOigwLF8ud3IpKGEpP2F8MDp2b2lkIDApPz8wfTtMXz1mdW5jdGlvbihhLGIsYyl7aWYoQXJyYXkuaXNBcnJheShiKSl7dmFyIGQ9YltfLkFjXXwwO2lmKGQmNClyZXR1cm4gYjtmb3IodmFyIGU9MCxmPTA7ZTxiLmxlbmd0aDtlKyspe2xldCBoPWEoYltlXSk7aCE9bnVsbCYmKGJbZisrXT1oKX1mPGUmJihiLmxlbmd0aD1mKTthPWR8MTtjJiYoYT0oYXw0KSYtMTUzNyk7YSE9PWQmJihiW18uQWNdPWEpO2MmJmEmMiYmT2JqZWN0LmZyZWV6ZShiKTtyZXR1cm4gYn19O01fPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBfLmd6KGEsYil9OwpPXz1mdW5jdGlvbihhLGIsYyl7Yj1xXyhiKTtiIT1udWxsJiYoXy5aeShhLGMsMSksYT1hLmosYz1OX3x8KE5fPW5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoOCkpKSxjLnNldEZsb2F0NjQoMCwrYiwhMCksSVo9Yy5nZXRVaW50MzIoMCwhMCksSlo9Yy5nZXRVaW50MzIoNCwhMCksZV8oYSxJWiksZV8oYSxKWikpfTtQXz1mdW5jdGlvbihhLGIsYyl7Yj1xcmEoYik7aWYoYiE9bnVsbCl7c3dpdGNoKHR5cGVvZiBiKXtjYXNlICJzdHJpbmciOlZaKGIpfWlmKGIhPW51bGwpc3dpdGNoKF8uWnkoYSxjLDApLHR5cGVvZiBiKXtjYXNlICJudW1iZXIiOmE9YS5qO0xaKGIpO2RfKGEsSVosSlopO2JyZWFrO2Nhc2UgImJpZ2ludCI6Yz1jXyhiLFRaLGdyYSk7ZF8oYS5qLGMubyxjLmopO2JyZWFrO2RlZmF1bHQ6Yz1WWihiKSxkXyhhLmosYy5vLGMuail9fX07UV89ZnVuY3Rpb24oYSxiLGMpe2I9Xy5zeChiKTtiIT1udWxsJiZiIT1udWxsJiYoXy5aeShhLGMsMCksZl8oYS5qLGIpKX07ClJfPWZ1bmN0aW9uKGEsYixjKXtiPV8uWHQoYik7YiE9bnVsbCYma18oYSxjLEhaKGIpKX07U189ZnVuY3Rpb24oYSl7cmV0dXJuIGI9Pl8uWHgoYSxiKX07aHJhPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgbF8oYVswXS50b0xvd2VyQ2FzZSgpKX07Xy5lVj1mdW5jdGlvbihhLGIpe3RoaXMueD1hIT09dm9pZCAwP2E6MDt0aGlzLnk9YiE9PXZvaWQgMD9iOjB9O3VyYT1mdW5jdGlvbihhKXtmb3IobGV0IGIgaW4gXy5zcylpZihhLmNhbGwodm9pZCAwLF8uc3NbYl0sYixfLnNzKSlyZXR1cm4gYn07dnJhPWZ1bmN0aW9uKGEsYil7aWYoYSE9PW51bGwmJmIgaW4gYSl0aHJvdyBFcnJvcigiQWAiK2IpO2FbYl09ITB9O1RfPWZ1bmN0aW9uKGEpe3JldHVybiBhIT09bnVsbCYmInByaXZlbWJlZCJpbiBhP2EucHJpdmVtYmVkOiExfTtVXz1mdW5jdGlvbihhKXt2YXIgYj17fTtmb3IobGV0IGMgaW4gYSliW2NdPWFbY107cmV0dXJuIGJ9OwpWXz1mdW5jdGlvbihhKXt2YXIgYj1kb2N1bWVudDtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIj9iLmdldEVsZW1lbnRCeUlkKGEpOmF9O1dfPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYjtiPWEuZmlyc3RDaGlsZDspYS5yZW1vdmVDaGlsZChiKX07WF89ZnVuY3Rpb24oYSl7dHlwZW9mIGE9PSJudW1iZXIiJiYoYT1NYXRoLnJvdW5kKGEpKyJweCIpO3JldHVybiBhfTtZXz1mdW5jdGlvbihhKXtyZXR1cm4gYT8oYT1hLnByaXZhdGVEb05vdEFjY2Vzc09yRWxzZVNhZmVTY3JpcHRXcmFwcGVkVmFsdWUpP18ua2IoYSk6bnVsbDpudWxsfTt3cmE9ZnVuY3Rpb24oKXt2YXIgYT1aXztfLnNhKCJ5dC5hZHMuYmlzY290dGkuZ2V0SWRfIil8fF8ucmEoInl0LmFkcy5iaXNjb3R0aS5nZXRJZF8iLGEpfTskXz1mdW5jdGlvbihhKXtfLnJhKCJ5dC5hZHMuYmlzY290dGkubGFzdElkXyIsYSl9OwphMD1mdW5jdGlvbihhKXtyZXR1cm4gYS5pbmRleE9mKCI/IikhPT0tMT8oYT0oYXx8IiIpLnNwbGl0KCIjIilbMF0sYT1hLnNwbGl0KCI/IiwyKSxfLmJqKGEubGVuZ3RoPjE/YVsxXTphWzBdKSk6e319O2IwPWZ1bmN0aW9uKGEpe2lmKGRvY3VtZW50LmJvZHkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl7bGV0IGI9ZG9jdW1lbnQuYm9keS5zY3JvbGxUb3ArZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcDthLmo9YS5jbGllbnRYKyhkb2N1bWVudC5ib2R5LnNjcm9sbExlZnQrZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQpO2Eubz1hLmNsaWVudFkrYn19Owp4cmE9ZnVuY3Rpb24oYSxiLGMsZD17fSl7YS5hZGRFdmVudExpc3RlbmVyJiYoYiE9Im1vdXNlZW50ZXIifHwib25tb3VzZWVudGVyImluIGRvY3VtZW50P2IhPSJtb3VzZWxlYXZlInx8Im9ubW91c2VlbnRlciJpbiBkb2N1bWVudD9iPT0ibW91c2V3aGVlbCImJiJNb3pCb3hTaXppbmciaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlJiYoYj0iTW96TW91c2VQaXhlbFNjcm9sbCIpOmI9Im1vdXNlb3V0IjpiPSJtb3VzZW92ZXIiKTtyZXR1cm4gdXJhKGU9Pnt2YXIgZj10eXBlb2YgZVs0XT09PSJib29sZWFuIiYmZVs0XT09ISFkLGg7aWYoaD1fLkFhKGVbNF0pJiZfLkFhKGQpKWE6e2g9ZVs0XTtmb3IobGV0IGsgaW4gaClpZighKGsgaW4gZCl8fGhba10hPT1kW2tdKXtoPSExO2JyZWFrIGF9Zm9yKGxldCBrIGluIGQpaWYoIShrIGluIGgpKXtoPSExO2JyZWFrIGF9aD0hMH1yZXR1cm4hIWUubGVuZ3RoJiZlWzBdPT1hJiZlWzFdPT1iJiZlWzJdPT1jJiYoZnx8aCl9KX07CmQwPWZ1bmN0aW9uKGEsYixjLGQ9e30pe2lmKCFhfHwhYS5hZGRFdmVudExpc3RlbmVyJiYhYS5hdHRhY2hFdmVudClyZXR1cm4iIjt2YXIgZT14cmEoYSxiLGMsZCk7aWYoZSlyZXR1cm4gZTtlPSsrXy50cy5jb3VudCsiIjt2YXIgZj0hKGIhPSJtb3VzZWVudGVyIiYmYiE9Im1vdXNlbGVhdmUifHwhYS5hZGRFdmVudExpc3RlbmVyfHwib25tb3VzZWVudGVyImluIGRvY3VtZW50KTt2YXIgaD1mP2s9PntrPW5ldyBjMChrKTtpZighXy5ndyhrLnJlbGF0ZWRUYXJnZXQsbD0+bD09YSwhMCkpcmV0dXJuIGsuY3VycmVudFRhcmdldD1hLGsudHlwZT1iLGMuY2FsbChhLGspfTprPT57az1uZXcgYzAoayk7ay5jdXJyZW50VGFyZ2V0PWE7cmV0dXJuIGMuY2FsbChhLGspfTtoPV8uVmkoaCk7YS5hZGRFdmVudExpc3RlbmVyPyhiPT0ibW91c2VlbnRlciImJmY/Yj0ibW91c2VvdmVyIjpiPT0ibW91c2VsZWF2ZSImJmY/Yj0ibW91c2VvdXQiOmI9PSJtb3VzZXdoZWVsIiYmIk1vekJveFNpemluZyJpbgpkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUmJihiPSJNb3pNb3VzZVBpeGVsU2Nyb2xsIiksKDAsXy51cykoKXx8dHlwZW9mIGQ9PT0iYm9vbGVhbiI/YS5hZGRFdmVudExpc3RlbmVyKGIsaCxkKTphLmFkZEV2ZW50TGlzdGVuZXIoYixoLCEhZC5jYXB0dXJlKSk6YS5hdHRhY2hFdmVudChgb24ke2J9YCxoKTtfLnNzW2VdPVthLGIsYyxoLGRdO3JldHVybiBlfTt5cmE9ZnVuY3Rpb24oYSl7YSYmKHR5cGVvZiBhPT0ic3RyaW5nIiYmKGE9W2FdKSxfLnRiKGEsYj0+e2lmKGIgaW4gXy5zcyl7dmFyIGM9Xy5zc1tiXTtsZXQgZD1jWzBdLGU9Y1sxXSxmPWNbM107Yz1jWzRdO2QucmVtb3ZlRXZlbnRMaXN0ZW5lcj8oMCxfLnVzKSgpfHx0eXBlb2YgYz09PSJib29sZWFuIj9kLnJlbW92ZUV2ZW50TGlzdGVuZXIoZSxmLGMpOmQucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLGYsISFjLmNhcHR1cmUpOmQuZGV0YWNoRXZlbnQmJmQuZGV0YWNoRXZlbnQoYG9uJHtlfWAsZik7ZGVsZXRlIF8uc3NbYl19fSkpfTsKZTA9ZnVuY3Rpb24oYSl7dGhpcy5NPWE7dGhpcy5qPW51bGw7dGhpcy5CPTA7dGhpcy5JPW51bGw7dGhpcy5EPTA7dGhpcy5vPVtdO2ZvcihhPTA7YTw0O2ErKyl0aGlzLm8ucHVzaCgwKTt0aGlzLnY9MDt0aGlzLlo9ZDAod2luZG93LCJtb3VzZW1vdmUiLCgwLF8uQ2EpKHRoaXMuZ2EsdGhpcykpO2E9KDAsXy5DYSkodGhpcy5VLHRoaXMpO3R5cGVvZiBhPT09ImZ1bmN0aW9uIiYmKGE9Xy5WaShhKSk7dGhpcy5oYT13aW5kb3cuc2V0SW50ZXJ2YWwoYSwyNSl9O3pyYT1mdW5jdGlvbigpe3ZhciBhPV8ucmooImh0bWw1X3dlYl9wb19leHBlcmltZW50X2lkcyIpO3JldHVybiBBcnJheS5pc0FycmF5KGEpP18uSHcoYSxiPT5OdW1iZXIoYnx8MCkpOltOdW1iZXIoYXx8MCldfTsKQnJhPWZ1bmN0aW9uKCl7KHtoYW5kbGVFcnJvcjphPV8uSHAsbG06Yj1fLkVwfT17fSk7dmFyIGE7Zm9yKF8uR2s9bmV3IEFyYShhLGIpO18uSGsubGVuZ3RoPjA7KXt2YXIgYj1fLkhrLnNoaWZ0KCk7c3dpdGNoKGIudHlwZSl7Y2FzZSAiRVJST1IiOl8uR2suSmIoYi5wYXlsb2FkKTticmVhaztjYXNlICJFVkVOVCI6Xy5Hay5sbShiLmV2ZW50VHlwZSxiLnBheWxvYWQpfX19O0NyYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uR2woZD0+Yz9kLnVzZXJJZGVudGlmaWVyIT09dm9pZCAwJiYhYS5pbmNsdWRlcyhkLnVzZXJJZGVudGlmaWVyKSYmYy5pbmNsdWRlcyhkLnB1YmxpY05hbWUpOmQudXNlcklkZW50aWZpZXIhPT12b2lkIDAmJiFhLmluY2x1ZGVzKGQudXNlcklkZW50aWZpZXIpLGIpfTsKRHJhPWFzeW5jIGZ1bmN0aW9uKGEpe3ZhciBiPV8uVmooIll0SWRiTWV0YSBoYXNBbnlNZXRhIG90aGVyIik7cmV0dXJuKGF3YWl0IF8uR2woYz0+Yy51c2VySWRlbnRpZmllciE9PXZvaWQgMCYmYy51c2VySWRlbnRpZmllciE9PWIsYSkpLmxlbmd0aD4wfTtnMD1mdW5jdGlvbihhLGIpe2YwfHwoZjA9Xy5qZi5wYihhc3luYygpPT57dmFyIGM9YXdhaXQgXy5QbCgpO2lmKGMpe3ZhciBkPSEwO3RyeXtsZXQgZT1hd2FpdCBDcmEoYSxjLGIpO2lmKGUubGVuZ3RoKXtsZXQgZj1lWzBdO2F3YWl0IF8uQWwoZi5hY3R1YWxOYW1lKTthd2FpdCBfLkZsKGYuYWN0dWFsTmFtZSxjKX1lbHNlIGQ9ITF9Y2F0Y2goZSl7Xy5JayhlKSxkPSExfV8uamYuQWEoZjApO2YwPTA7ZCYmZzAoYSxiKX19KSl9O0VyYT1hc3luYyBmdW5jdGlvbigpe3ZhciBhPWF3YWl0IF8uUGwoKTtyZXR1cm4gYT9EcmEoYSk6ITF9OwpGcmE9ZnVuY3Rpb24oYSl7KDAsXy5lbCkoKTtpZighYS5ib2R5KXJldHVybiBhO3RyeXtsZXQgYj10eXBlb2YgYS5ib2R5PT09InN0cmluZyI/YS5ib2R5OkpTT04uc3RyaW5naWZ5KGEuYm9keSksYz1iO2lmKHR5cGVvZiBiPT09InN0cmluZyIpe2xldCBkPV8udW0oYik7aWYoZCE9bnVsbCYmKGQ+Xy53bXx8ZDxfLnhtKSlyZXR1cm4gYTtjPV8uTmkoKDAsXy55bSkoYikpOygwLF8uZWwpKCl9YS5oZWFkZXJzPXsiQ29udGVudC1FbmNvZGluZyI6Imd6aXAiLC4uLihhLmhlYWRlcnN8fHt9KX07YS5ib2R5PWM7cmV0dXJuIGF9Y2F0Y2goYil7cmV0dXJuIF8uV2koYiksYX19O0dyYT1hc3luYyBmdW5jdGlvbigpe2F3YWl0IF8uUGwoKSYmKF8uV2ooKXx8Xy54KCJud2xfaW5pdF9yZXF1aXJlX2RhdGFzeW5jX2lkX2tpbGxzd2l0Y2giKSkmJl8uc24oKSYmKF8udW49ITAsXy50bi5pc053bEluaXRpYWxpemVkPV8udW4sYXdhaXQgXy5wbigpLmF3YWl0SW5pdGlhbGl6YXRpb24oKSl9OwpoMD1mdW5jdGlvbihhKXtfLlNzW2FdJiYoYT1fLlNzW2FdLF8udGIoYSxiPT57Xy5Sc1tiXSYmZGVsZXRlIF8uUnNbYl19KSxhLmxlbmd0aD0wKX07aTA9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5MeigpO2lmKGIpaWYoYi5jbGVhcihhKSxhKWgwKGEpO2Vsc2UgZm9yKGxldCBjIGluIF8uU3MpaDAoYyl9O2wwPWZ1bmN0aW9uKHt1SzphPSExLE1JOmI9ITB9PXt9KXtpZihfLnNhKCJfbGFjdCIsd2luZG93KT09bnVsbCl7dmFyIGM9cGFyc2VJbnQoXy53KCJMQUNUIiksMTApO2M9aXNGaW5pdGUoYyk/RGF0ZS5ub3coKS1NYXRoLm1heChjLDApOi0xO18ucmEoIl9sYWN0IixjLHdpbmRvdyk7Xy5yYSgiX2ZhY3QiLGMsd2luZG93KTtjPT0tMSYmajAoKTtIcmEoYSxiKTtuZXcgZTAoKCk9PntrMCgibW91c2UiLDEwMCl9KX19OwpIcmE9ZnVuY3Rpb24oYT0hMSxiPSEwKXt2YXIgYz13aW5kb3c7ZDAoYy5kb2N1bWVudCwia2V5ZG93biIsajApO2QwKGMuZG9jdW1lbnQsImtleXVwIixqMCk7ZDAoYy5kb2N1bWVudCwibW91c2Vkb3duIixqMCk7ZDAoYy5kb2N1bWVudCwibW91c2V1cCIsajApO2E/ZDAoYywidG91Y2htb3ZlIiwoKT0+e2swKCJ0b3VjaG1vdmUiLDIwMCl9LHtwYXNzaXZlOiEwfSk6KGQwKGMsInJlc2l6ZSIsKCk9PntrMCgicmVzaXplIiwyMDApfSksYiYmZDAoYywic2Nyb2xsIiwoKT0+e2swKCJzY3JvbGwiLDIwMCl9KSk7ZDAoYy5kb2N1bWVudCwidG91Y2hzdGFydCIsajAse3Bhc3NpdmU6ITB9KTtkMChjLmRvY3VtZW50LCJ0b3VjaGVuZCIsajAse3Bhc3NpdmU6ITB9KX07azA9ZnVuY3Rpb24oYSxiKXttMFthXXx8KG0wW2FdPSEwLF8uamYucGIoKCk9PntqMCgpO20wW2FdPSExfSxiKSl9OwpqMD1mdW5jdGlvbigpe18uc2EoIl9sYWN0Iix3aW5kb3cpPT1udWxsJiZsMCgpO3ZhciBhPURhdGUubm93KCk7Xy5yYSgiX2xhY3QiLGEsd2luZG93KTtfLnNhKCJfZmFjdCIsd2luZG93KT09LTEmJl8ucmEoIl9mYWN0IixhLHdpbmRvdyk7KGE9Xy5zYSgieXRnbG9iYWwueXRVdGlsQWN0aXZpdHlDYWxsYmFja18iKSkmJmEoKX07bjA9ZnVuY3Rpb24oKXt2YXIgYT1fLmtvKCk7YS5pbmZvfHwoYS5pbmZvPXt9KTtyZXR1cm4gYS5pbmZvfTtJcmE9ZnVuY3Rpb24oKXt2YXIgYT1fLm5vKCk7YS5wcmVMb2dnZWRHZWxJbmZvc3x8KGEucHJlTG9nZ2VkR2VsSW5mb3M9W10pO3JldHVybiBhLnByZUxvZ2dlZEdlbEluZm9zfTsKSnJhPWZ1bmN0aW9uKGEsYj0iVW5rbm93biBmaWxlIixjPTAsZCxlLGYpe3ZhciBoPSExLGs9Xy5SaSgibG9nX3dpbmRvd19vbmVycm9yX2ZyYWN0aW9uIik7aWYoayYmTWF0aC5yYW5kb20oKTxrKWg9ITA7ZWxzZXtrPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKTtmb3IobGV0IGw9MCxtPWsubGVuZ3RoO2w8bTtsKyspaWYoa1tsXS5zcmMuaW5kZXhPZigiL2RlYnVnLSIpPjApe2g9ITA7YnJlYWt9fWgmJihoPSExLGU/aD0hMDoodHlwZW9mIGE9PT0ic3RyaW5nIj9rPWE6RXJyb3JFdmVudCYmYSBpbnN0YW5jZW9mIEVycm9yRXZlbnQ/KGg9ITAsaz1hLm1lc3NhZ2UsYj1hLmZpbGVuYW1lLGM9YS5saW5lbm8sZD1hLmNvbG5vKTooaz0iVW5rbm93biBlcnJvciIsYj0iVW5rbm93biBmaWxlIixjPTApLGU9bmV3IF8uWGooayksZS5uYW1lPSJVbmhhbmRsZWRXaW5kb3dFcnJvciIsZS5tZXNzYWdlPWssZS5maWxlTmFtZT1iLGUubGluZU51bWJlcj1jLGlzTmFOKGQpPwpkZWxldGUgZS5jb2x1bW5OdW1iZXI6ZS5jb2x1bW5OdW1iZXI9ZCksZiYmXy5jdyhlLGYpLGg/Xy5HcChlKTpfLklwKGUpKX07bzA9ZnVuY3Rpb24oYSl7YSBpbnN0YW5jZW9mIEVycm9yP18uR3AoYSk6KGE9Xy5BYShhKT9KU09OLnN0cmluZ2lmeShhKTpTdHJpbmcoYSksYT1uZXcgXy5YaihhKSxhLm5hbWU9IlJlamVjdGVkUHJvbWlzZUVycm9yIixfLklwKGEpKX07S3JhPWZ1bmN0aW9uKCl7Xy50YihfLncoIkVSUk9SUyIpfHxbXSxhPT57Xy5HcC5hcHBseShudWxsLGEpfSk7Xy5RaSgiRVJST1JTIixbXSl9O3AwPWZ1bmN0aW9uKCl7cmV0dXJuKF8ueCgiY3NpX3VzZV90aW1lX29yaWdpbiIpfHxfLngoImNzaV91c2VfdGltZV9vcmlnaW5fdHZodG1sNSIpKSYmXy5zcS50aW1lT3JpZ2luP01hdGguZmxvb3IoXy5zcS50aW1lT3JpZ2luKTpfLnNxLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnR9O3EwPWZ1bmN0aW9uKGEpe3JldHVybiBNYXRoLnJvdW5kKHAwKCkrYSl9OwpyMD1mdW5jdGlvbigpe3ZhciBhO18ueCgiY3NpX3VzZV9wZXJmb3JtYW5jZV9uYXZpZ2F0aW9uX3RpbWluZyIpPyhhPV8uc3E/LmdldEVudHJpZXNCeVR5cGU/LigibmF2aWdhdGlvbiIpPy5bMF0/LnRvSlNPTj8uKCkpPyhhLnJlcXVlc3RTdGFydD1xMChhLnJlcXVlc3RTdGFydCksYS5yZXNwb25zZUVuZD1xMChhLnJlc3BvbnNlRW5kKSxhLnJlZGlyZWN0U3RhcnQ9cTAoYS5yZWRpcmVjdFN0YXJ0KSxhLnJlZGlyZWN0RW5kPXEwKGEucmVkaXJlY3RFbmQpLGEuZG9tYWluTG9va3VwRW5kPXEwKGEuZG9tYWluTG9va3VwRW5kKSxhLmNvbm5lY3RTdGFydD1xMChhLmNvbm5lY3RTdGFydCksYS5jb25uZWN0RW5kPXEwKGEuY29ubmVjdEVuZCksYS5yZXNwb25zZVN0YXJ0PXEwKGEucmVzcG9uc2VTdGFydCksYS5zZWN1cmVDb25uZWN0aW9uU3RhcnQ9cTAoYS5zZWN1cmVDb25uZWN0aW9uU3RhcnQpLGEuZG9tYWluTG9va3VwU3RhcnQ9cTAoYS5kb21haW5Mb29rdXBTdGFydCksYS5pc1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZz0KITApOmE9Xy5zcS50aW1pbmc6YT1fLngoImNzaV9wZXJmb3JtYW5jZV90aW1pbmdfdG9fb2JqZWN0Iik/SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShfLnNxLnRpbWluZykpOl8uc3EudGltaW5nO3JldHVybiBhfTtMcmE9ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudDtpZigidmlzaWJpbGl0eVN0YXRlImluIGEpYT1hLnZpc2liaWxpdHlTdGF0ZTtlbHNle3ZhciBiPV8ucnMrIlZpc2liaWxpdHlTdGF0ZSI7YT1iIGluIGE/YVtiXTp2b2lkIDB9c3dpdGNoKGEpe2Nhc2UgImhpZGRlbiI6cmV0dXJuIDA7Y2FzZSAidmlzaWJsZSI6cmV0dXJuIDE7Y2FzZSAicHJlcmVuZGVyIjpyZXR1cm4gMjtjYXNlICJ1bmxvYWRlZCI6cmV0dXJuIDM7ZGVmYXVsdDpyZXR1cm4tMX19OwpNcmE9ZnVuY3Rpb24oKXtpZihfLnNxLmdldEVudHJpZXNCeVR5cGUpe3ZhciBhPV8uc3EuZ2V0RW50cmllc0J5VHlwZSgicGFpbnQiKTtpZihhPV8udmIoYSxjPT5jLm5hbWU9PT0iZmlyc3QtcGFpbnQiKSlyZXR1cm4gcTAoYS5zdGFydFRpbWUpfXZhciBiO18ueCgiY3NpX3VzZV9wZXJmb3JtYW5jZV9uYXZpZ2F0aW9uX3RpbWluZyIpP2I9Xy5zcS5nZXRFbnRyaWVzQnlUeXBlKCJmaXJzdC1wYWludCIpWzBdLnN0YXJ0VGltZTpiPV8uc3EudGltaW5nLmFLO3JldHVybiBiP01hdGgubWF4KDAsYik6MH07Ck5yYT1mdW5jdGlvbigpe3ZhciBhPV8udygiVElNSU5HX0lORk8iLHt9KSxiPXt9LGM9KGQsZSxmKT0+e2U9ZS5tYXRjaCgiX3JpZCIpP2Uuc3BsaXQoIl9yaWQiKVswXTplO3R5cGVvZiBmPT09Im51bWJlciImJihmPUpTT04uc3RyaW5naWZ5KGYpKTtkLnJlcXVlc3RJZHM/ZC5yZXF1ZXN0SWRzLnB1c2goe2VuZHBvaW50OmUsaWQ6Zn0pOmQucmVxdWVzdElkcz1be2VuZHBvaW50OmUsaWQ6Zn1dfTtmb3IobGV0IFtkLGVdb2YgT2JqZWN0LmVudHJpZXMoYSkpe2E9ZDtsZXQgZj1lO3N3aXRjaChhKXtjYXNlICJHZXRCcm93c2VfcmlkIjpjKGIsYSxmKTticmVhaztjYXNlICJHZXRHdWlkZV9yaWQiOmMoYixhLGYpO2JyZWFrO2Nhc2UgIkdldEhvbWVfcmlkIjpjKGIsYSxmKTticmVhaztjYXNlICJHZXRQbGF5ZXJfcmlkIjpjKGIsYSxmKTticmVhaztjYXNlICJHZXRTZWFyY2hfcmlkIjpjKGIsYSxmKTticmVhaztjYXNlICJHZXRTZXR0aW5nc19yaWQiOmMoYixhLGYpO2JyZWFrO2Nhc2UgIkdldFRyZW5kaW5nX3JpZCI6YyhiLAphLGYpO2JyZWFrO2Nhc2UgIkdldFdhdGNoTmV4dF9yaWQiOmMoYixhLGYpO2JyZWFrO2Nhc2UgInl0X3JlZCI6Yi5pc1JlZFN1YnNjcmliZXI9ISFmO2JyZWFrO2Nhc2UgInl0X2FkIjpiLmlzTW9uZXRpemVkPSEhZn19cmV0dXJuIGJ9O09yYT1mdW5jdGlvbigpe3ZhciBhPXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCxiPV8uc3EuZ2V0RW50cmllc0J5VHlwZSgicmVzb3VyY2UiKTtiPWpyYShiLGM9PmMubmFtZS5pbmRleE9mKGAke2F9Ly9mb250cy5nc3RhdGljLmNvbS9zL2ApPT09MCk7KGI9a3JhKGIsKGMsZCk9PmQuZHVyYXRpb24+Yy5kdXJhdGlvbj9kOmMpKSYmYi5zdGFydFRpbWU+MCYmYi5yZXNwb25zZUVuZD4wJiYoXy5ucSgid2ZmcyIscTAoYi5zdGFydFRpbWUpKSxfLm5xKCJ3ZmZlIixxMChiLnJlc3BvbnNlRW5kKSkpfTsKUHJhPWZ1bmN0aW9uKGEsYil7YT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGEpO2lmKCFhKXJldHVybiExO3ZhciBjPSIiLGQ9YS5ub2RlTmFtZTtkPT09IlNDUklQVCI/KGM9YS5zcmMsY3x8KGM9YS5nZXRBdHRyaWJ1dGUoImRhdGEtdGltaW5nLWhyZWYiKSkmJihjPXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCtjKSk6ZD09PSJMSU5LIiYmKGM9YS5ocmVmKTtfLmliKGRvY3VtZW50KSYmYS5zZXRBdHRyaWJ1dGUoIm5vbmNlIixfLmliKGRvY3VtZW50KSk7cmV0dXJuIGM/KGE9Xy5zcS5nZXRFbnRyaWVzQnlOYW1lKGMpKSYmYVswXSYmKGE9YVswXSxjPXAwKCksXy5ucSgicnNmXyIrYixjK01hdGgucm91bmQoYS5mZXRjaFN0YXJ0KSksXy5ucSgicnNlXyIrYixjK01hdGgucm91bmQoYS5yZXNwb25zZUVuZCkpLGEudHJhbnNmZXJTaXplIT09dm9pZCAwJiZhLnRyYW5zZmVyU2l6ZT09PTApPyEwOiExOiExfTsKUXJhPWZ1bmN0aW9uKCl7dmFyIGE9SXJhKCksYj1fLm9vKCksYz12b2lkIDA7Zm9yKHZhciBkPTA7ZDxhLmxlbmd0aDtkKyspe2xldCBrPWFbZF07aWYoay5sb2FkVHlwZSl7Yz1rLmxvYWRUeXBlO2JyZWFrfX1pZihfLmxvKCkubG9hZFR5cGU9PT0iY29sZCImJihiLmxvYWRUeXBlPT09ImNvbGQifHxjPT09ImNvbGQiKSl7Yz1fLm1vKCk7ZD1fLm5vKCk7ZD1kLmdlbFRpY2tzP2QuZ2VsVGlja3M6ZC5nZWxUaWNrcz17fTtmb3IodmFyIGUgaW4gYyllIGluIGR8fHR5cGVvZiBjW2VdPT09Im51bWJlciImJl8ubnEoZSxfLnVxKGUpKTt2YXIgZj17fSxoPSExO2U9az0+e18ueW4oYixrKTtfLnluKGYsayk7aD0hMH07Zm9yKGxldCBrIG9mIGEpZShrKTtoJiZfLnBxKGYpfX07CnQwPWZ1bmN0aW9uKGEsYil7Xy5WaSgoKT0+e18udW8oIiIpLmluZm8uYWN0aW9uVHlwZT1hO2ImJl8uUWkoIlRJTUlOR19BRlRfS0VZUyIsYik7Xy5RaSgiVElNSU5HX0FDVElPTiIsYSk7dmFyIGM9TnJhKCk7T2JqZWN0LmtleXMoYykubGVuZ3RoPjAmJl8ucHEoYyk7Yz17aXNOYXZpZ2F0aW9uOiEwLGFjdGlvblR5cGU6Xy5QeihfLncoIlRJTUlOR19BQ1RJT04iKSl9O3ZhciBkPV8udygiUFJFVklPVVNfQUNUSU9OIik7ZCYmKGMucHJldmlvdXNBY3Rpb249Xy5QeihkKSk7aWYoZD1fLncoIkNMSUVOVF9QUk9UT0NPTCIpKWMuaHR0cFByb3RvY29sPWQ7aWYoZD1fLncoIkNMSUVOVF9UUkFOU1BPUlQiKSljLnRyYW5zcG9ydFByb3RvY29sPWQ7KGQ9Xy5pcSgpKSYmZCE9PSJVTkRFRklORURfQ1NOIiYmKGMuY2xpZW50U2NyZWVuTm9uY2U9ZCk7ZD1McmEoKTtpZihkPT09MXx8ZD09PS0xKWMuaXNWaXNpYmxlPSEwO18ubG8oKTtuMCgpO2MubG9hZFR5cGU9ImNvbGQiO2Q9bjAoKTt2YXIgZT0KcjAoKSxmPXAwKCksaD1fLncoIkNTSV9TVEFSVF9USU1FU1RBTVBfTUlMTElTIiwwKTtoPjAmJiFfLngoImVtYmVkc193ZWJfZW5hYmxlX2NzaV9zdGFydF9vdmVycmlkZV9raWxsc3dpdGNoIikmJihmPWgpO2YmJihfLm5xKCJzcnQiLGUucmVzcG9uc2VTdGFydCksZC5wcmVyZW5kZXIhPT0xJiZfLm9xKGYpKTtkPU1yYSgpO2Q+MCYmXy5ucSgiZnB0IixkKTtkPXIwKCk7ZC5pc1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyYmXy5wcSh7cGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nOiEwfSx2b2lkIDApO18ubnEoIm5yZXFzIixkLnJlcXVlc3RTdGFydCx2b2lkIDApO18ubnEoIm5yZXNzIixkLnJlc3BvbnNlU3RhcnQsdm9pZCAwKTtfLm5xKCJucmVzZSIsZC5yZXNwb25zZUVuZCx2b2lkIDApO2QucmVkaXJlY3RFbmQtZC5yZWRpcmVjdFN0YXJ0PjAmJihfLm5xKCJucnMiLGQucmVkaXJlY3RTdGFydCx2b2lkIDApLF8ubnEoIm5yZSIsZC5yZWRpcmVjdEVuZCx2b2lkIDApKTtkLmRvbWFpbkxvb2t1cEVuZC0KZC5kb21haW5Mb29rdXBTdGFydD4wJiYoXy5ucSgibmRuc3MiLGQuZG9tYWluTG9va3VwU3RhcnQsdm9pZCAwKSxfLm5xKCJuZG5zZSIsZC5kb21haW5Mb29rdXBFbmQsdm9pZCAwKSk7ZC5jb25uZWN0RW5kLWQuY29ubmVjdFN0YXJ0PjAmJihfLm5xKCJudGNwcyIsZC5jb25uZWN0U3RhcnQsdm9pZCAwKSxfLm5xKCJudGNwZSIsZC5jb25uZWN0RW5kLHZvaWQgMCkpO2Quc2VjdXJlQ29ubmVjdGlvblN0YXJ0Pj1wMCgpJiZkLmNvbm5lY3RFbmQtZC5zZWN1cmVDb25uZWN0aW9uU3RhcnQ+MCYmKF8ubnEoIm5zdGNwcyIsZC5zZWN1cmVDb25uZWN0aW9uU3RhcnQsdm9pZCAwKSxfLm5xKCJudGNwZSIsZC5jb25uZWN0RW5kLHZvaWQgMCkpO18uc3EmJiJnZXRFbnRyaWVzQnlUeXBlImluIF8uc3EmJk9yYSgpO2Q9W107aWYoZG9jdW1lbnQucXVlcnlTZWxlY3RvciYmXy5zcSYmXy5zcS5nZXRFbnRyaWVzQnlOYW1lKWZvcih2YXIgayBpbiBzMClzMC5oYXNPd25Qcm9wZXJ0eShrKSYmKGU9CnMwW2tdLFByYShrLGUpJiZkLnB1c2goZSkpO2lmKGQubGVuZ3RoPjApe2MucmVzb3VyY2VJbmZvPVtdO2ZvcihsZXQgbCBvZiBkKWMucmVzb3VyY2VJbmZvLnB1c2goe3Jlc291cmNlQ2FjaGU6bH0pfV8ucHEoYyk7UXJhKCk7Xy5ReigpO2s9Xy53KCJUSU1JTkdfQUNUSU9OIik7Xy5zYSgieXRnbG9iYWwudGltaW5ncmVhZHlfIikmJmsmJl8uUnooKSYmXy52cSgpJiZfLnRxKCl9KSgpfTt2MD1mdW5jdGlvbihhKXtpZighXy54KCJ1bml2ZXJzYWxfY3NpX25ldHdvcmtfdGlja3MiKSlyZXR1cm4iIjthPV8uUWIoYSl8fCIiO3ZhciBiPU9iamVjdC5rZXlzKHUwKTtmb3IobGV0IGM9MDtjPGIubGVuZ3RoO2MrKyl7bGV0IGQ9YltjXTtpZihhLmluY2x1ZGVzKGQpKXJldHVybiBkfXJldHVybiIifTsKdzA9ZnVuY3Rpb24oYSl7aWYoIV8ueCgidW5pdmVyc2FsX2NzaV9uZXR3b3JrX3RpY2tzIikpcmV0dXJuKCk9Pnt9O3ZhciBiPXUwW2FdO3JldHVybiBiPyhfLkl6KGIpLCgpPT57dmFyIGM9Xy54KCJ1bml2ZXJzYWxfY3NpX25ldHdvcmtfdGlja3MiKT8oYz1ScmFbYV0pP18uSXooYyk6ITE6ITE7cmV0dXJuIGN9KTooKT0+e319O3gwPWZ1bmN0aW9uKGEpe18uVmkoKCk9PntpZighXy5SeigiYXR0ZXN0YXRpb25fY2hhbGxlbmdlX2ZldGNoIil8fF8uQnEoYSwiYXR0ZXN0YXRpb25fY2hhbGxlbmdlX2ZldGNoIikpcmV0dXJuITE7Xy5BcShhLHZvaWQgMCwiYXR0ZXN0YXRpb25fY2hhbGxlbmdlX2ZldGNoIik7cmV0dXJuITB9KSgpfTtTcmE9ZnVuY3Rpb24oKXtfLlZpKCgpPT57dmFyIGE9Xy5wbygpO3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e3NldFRpbWVvdXQoKCk9PnthPT09Xy5wbygpJiZfLkFxKCJvbCIsdm9pZCAwLHZvaWQgMCl9LDApfSl9KSgpfTsKVHJhPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiBudWxsO2E9Xy5YdChfLmVkKGEsNCx2b2lkIDAsXy5EdikpO3JldHVybiBhPT09bnVsbHx8YT09PXZvaWQgMD9udWxsOl8uVGEoYSl9O3kwPWZ1bmN0aW9uKGEpe3JldHVybiBfLlRhKGE9PT1udWxsPyJudWxsIjphPT09dm9pZCAwPyJ1bmRlZmluZWQiOmEpfTtBMD1mdW5jdGlvbigpe3JldHVybiB6MC5sb2FkZWR8fCh6MC5sb2FkZWQ9ImxvYWRlZCIucmVwbGFjZSgvXC0oW2Etel0pL2csKGEsYik9PmIudG9VcHBlckNhc2UoKSkpfTtCMD1mdW5jdGlvbihhKXtyZXR1cm4gYT9hLmRhdGFzZXQ/YS5kYXRhc2V0W0EwKCldOmEuZ2V0QXR0cmlidXRlKCJkYXRhLWxvYWRlZCIpOm51bGx9O0MwPWZ1bmN0aW9uKGEpe2EmJihhLmRhdGFzZXQ/YS5kYXRhc2V0W0EwKCldPSJ0cnVlIjppcmEoYSkpfTsKRDA9ZnVuY3Rpb24oYSl7dmFyIGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO18uTHkoYixhKTtyZXR1cm5ganMtJHtfLk15KGIuaHJlZi5yZXBsYWNlKC9eW2EtekEtWl0rOlwvXC8vLCIvLyIpKX1gfTtFMD1mdW5jdGlvbihhKXthPUQwKGEpO3ZhciBiPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGEpO2ImJihpMChhKSxiLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYikpfTtHMD1mdW5jdGlvbihhLGIpe2EmJmImJihhPWAke18uZncoYil9YCwoYT1GMFthXSkmJl8uTnooYSkpfTsKVXJhPWZ1bmN0aW9uKGEsYixjLGQ9bnVsbCl7dmFyIGU9Xy5DZCgiU0NSSVBUIik7ZS5pZD1iO2Uub25sb2FkPSgpPT57YyYmc2V0VGltZW91dChjLDApfTtlLm9ucmVhZHlzdGF0ZWNoYW5nZT0oKT0+e3N3aXRjaChlLnJlYWR5U3RhdGUpe2Nhc2UgImxvYWRlZCI6Y2FzZSAiY29tcGxldGUiOmUub25sb2FkKCl9fTtkJiZlLnNldEF0dHJpYnV0ZSgibm9uY2UiLGQpO18ub2IoZSx0eXBlb2YgYT09PSJzdHJpbmciP3kwKGEpOmEpO2E9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZG9jdW1lbnQuYm9keTthLmluc2VydEJlZm9yZShlLGEuZmlyc3RDaGlsZCk7cmV0dXJuIGV9OwpWcmE9ZnVuY3Rpb24oYSxiLGM9bnVsbCl7dmFyIGQ9RDAodHlwZW9mIGE9PT0ic3RyaW5nIj9hOmEudG9TdHJpbmcoKSksZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChkKSxmPWUmJkIwKGUpLGg9ZSYmIWY7Zj9iJiZiKCk6KGImJihmPV8uTXooZCxiKSxiPWAke18uZncoYil9YCxGMFtiXT1mKSxofHwoZT1VcmEoYSxkLCgpPT57QjAoZSl8fChDMChlKSxfLk96KGQpLF8ubWooKCk9PntpMChkKX0sMCkpfSxjKSkpfTtIMD1mdW5jdGlvbihhLGIsYz1udWxsKXtWcmEoYSxiLGMpfTtXcmE9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5DZCgiQSIpO18uTHkoYixuZXcgXy5XYShhKSk7cmV0dXJuYGNzcy0ke18uTXkoYi5ocmVmLnJlcGxhY2UoL15bYS16QS1aXSs6XC9cLy8sIi8vIikpfWB9OwpYcmE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKTtkLmlkPWI7ZC5vbmxvYWQ9KCk9PntjJiZzZXRUaW1lb3V0KGMsMCl9O2E9eTAoYSk7Xy5xYihkLGEsInN0eWxlc2hlZXQiKTsoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZG9jdW1lbnQuYm9keSkuYXBwZW5kQ2hpbGQoZCk7cmV0dXJuIGR9O1lyYT1mdW5jdGlvbihhKXt2YXIgYj1XcmEoYSksYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChiKSxkPWMmJkIwKGMpO2R8fGMmJiFkfHwoYz1YcmEoYSxiLCgpPT57aWYoIUIwKGMpKXtDMChjKTtfLk96KGIpO2xldCBlPV8uRGEoaTAsYik7Xy5taihlLDApfX0pKX07CkkwPWZ1bmN0aW9uKGEpe2EuRmE9ITE7aWYoYS5oYSlmb3IodmFyIGIgaW4gYS5qKWEuai5oYXNPd25Qcm9wZXJ0eShiKSYmYS5oYShiLGEualtiXSk7Zm9yKGxldCBjIGluIGEuSSlhLkkuaGFzT3duUHJvcGVydHkoYykmJmNsZWFyVGltZW91dChOdW1iZXIoYykpO2EuST17fTthLkI9bnVsbDthLmhhPW51bGw7Yj1hLmFwaTtmb3IobGV0IGMgaW4gYiliLmhhc093blByb3BlcnR5KGMpJiYoYltjXT1udWxsKTtiLmFkZEV2ZW50TGlzdGVuZXI9KGMsZCk9PnthLmFkZEV2ZW50TGlzdGVuZXIoYyxkKX07Yi5yZW1vdmVFdmVudExpc3RlbmVyPShjLGQpPT57YS5yZW1vdmVFdmVudExpc3RlbmVyKGMsZCl9O2IuZGVzdHJveT0oKT0+e2EuZGlzcG9zZSgpfTtiLmdldExhc3RFcnJvcj0oKT0+YS5nZXRMYXN0RXJyb3IoKTtiLmdldFBsYXllclR5cGU9KCk9PmEuZ2V0UGxheWVyVHlwZSgpO2IuZ2V0Q3VycmVudFZpZGVvQ29uZmlnPSgpPT5hLk1hO2IubG9hZE5ld1ZpZGVvQ29uZmlnPWM9Pgp7YS5sb2FkTmV3VmlkZW9Db25maWcoYyl9O2IuaXNSZWFkeT0oKT0+YS5pc1JlYWR5KCl9O0owPWZ1bmN0aW9uKGEpe3ZhciBiO2Eud2ViUGxheWVyQ29udGV4dENvbmZpZz9iPWEud2ViUGxheWVyQ29udGV4dENvbmZpZy5yb290RWxlbWVudElkOmI9YS5jb25maWcuYXR0cnMuaWQ7YS5lbGVtZW50SWQ9Ynx8YS5lbGVtZW50SWQ7YS5lbGVtZW50SWQ9PT0idmlkZW8tcGxheWVyIiYmKGEuZWxlbWVudElkPWEucGxheWVySWQsYS53ZWJQbGF5ZXJDb250ZXh0Q29uZmlnP2Eud2ViUGxheWVyQ29udGV4dENvbmZpZy5yb290RWxlbWVudElkPWEucGxheWVySWQ6YS5jb25maWcuYXR0cnMuaWQ9YS5wbGF5ZXJJZCk7YS5vPy5pZD09PWEuZWxlbWVudElkJiYoYS5lbGVtZW50SWQ9YCR7YS5lbGVtZW50SWR9LXBsYXllcmAsYS53ZWJQbGF5ZXJDb250ZXh0Q29uZmlnP2Eud2ViUGxheWVyQ29udGV4dENvbmZpZy5yb290RWxlbWVudElkPWEuZWxlbWVudElkOmEuY29uZmlnLmF0dHJzLmlkPWEuZWxlbWVudElkKX07ClMwPWZ1bmN0aW9uKGEpe2lmKCFhLmlhKCkmJiFhLlUpe3ZhciBiPUswKGEpO2lmKGImJihMMChhKT8iaHRtbDUiOm51bGwpPT09Imh0bWw1IilhLlo9Imh0bWw1IixhLmlzUmVhZHkoKXx8TTAoYSk7ZWxzZSBpZihOMChhKSxhLlo9Imh0bWw1IixiJiZhLnYmJmEudGFyZ2V0RWxlbWVudClhLnRhcmdldEVsZW1lbnQuYXBwZW5kQ2hpbGQoYS52KSxNMChhKTtlbHNle2EuY29uZmlnJiYoYS5jb25maWcubG9hZGVkPSEwKTtsZXQgYz0hMTthLkQ9KCk9PntjPSEwO3ZhciBkPU8wKGEsInBsYXllcl9ib290c3RyYXBfbWV0aG9kIik/Xy5zYSgieXQucGxheWVyLkFwcGxpY2F0aW9uLmNyZWF0ZUFsdGVybmF0ZSIpfHxfLnNhKCJ5dC5wbGF5ZXIuQXBwbGljYXRpb24uY3JlYXRlIik6Xy5zYSgieXQucGxheWVyLkFwcGxpY2F0aW9uLmNyZWF0ZSIpO3ZhciBlPWEuY29uZmlnP1AwKGEuY29uZmlnKTp2b2lkIDA7ZCYmZChhLnRhcmdldEVsZW1lbnQsZSxhLndlYlBsYXllckNvbnRleHRDb25maWcsCmEuRWIpO00wKGEpfTthLlU9ITA7Yj9hLkQoKTooSDAoUTAoYSksYS5EKSwoYj1acmEoYSkpJiZZcmEoYnx8IiIpLFIwKGEpJiYhYyYmXy5yYSgieXQucGxheWVyLkFwcGxpY2F0aW9uLmNyZWF0ZSIsbnVsbCkpfX19O1QwPWZ1bmN0aW9uKGEpe2EuY29uZmlnJiZhLmNvbmZpZy5sb2FkZWQhPT0hMCYmKGEuY29uZmlnLmxvYWRlZD0hMCwhYS5jb25maWcuYXJnc3x8YS5jb25maWcuYXJncy5hdXRvcGxheSE9PSIwIiYmYS5jb25maWcuYXJncy5hdXRvcGxheSE9PTAmJmEuY29uZmlnLmFyZ3MuYXV0b3BsYXkhPT0hMT9hLmFwaS5sb2FkVmlkZW9CeVBsYXllclZhcnMoYS5jb25maWcuYXJncz8/bnVsbCk6YS5hcGkuY3VlVmlkZW9CeVBsYXllclZhcnMoYS5jb25maWcuYXJncykpfTtQMD1mdW5jdGlvbihhKXt2YXIgYj17fTtmb3IobGV0IGMgb2YgT2JqZWN0LmtleXMoYSkpe2xldCBkPWFbY107YltjXT10eXBlb2YgZD09PSJvYmplY3QiP1VfKGQpOmR9cmV0dXJuIGJ9OwpVMD1mdW5jdGlvbihhLGIpe3ZhciBjPWI7aWYodHlwZW9mIGI9PT0ic3RyaW5nIil7aWYoYS55YVtiXSlyZXR1cm4gYS55YVtiXTtjPSguLi5kKT0+e3ZhciBlPV8uc2EoYik7aWYoZSl0cnl7ZS5hcHBseShfLnUsZCl9Y2F0Y2goZil7dGhyb3cgZD1uZXcgXy5YaigiUGxheWVyUHJveHkgZXJyb3Igd2hlbiBleGVjdXRpbmcgY2FsbGJhY2siLHtlcnJvcjpmfSksZC5sZXZlbD0iRVJST1IiLGQ7fX07YS55YVtiXT1jfXJldHVybiBjP2M6bnVsbH07TDA9ZnVuY3Rpb24oYSl7dmFyIGI9Vl8oYS5lbGVtZW50SWQpOyFiJiZhLm8mJmEuby5xdWVyeVNlbGVjdG9yJiYoYj1hLm8ucXVlcnlTZWxlY3RvcihgIyR7YS5lbGVtZW50SWR9YCkpO3JldHVybiBifTtRMD1mdW5jdGlvbihhKXtyZXR1cm4gYS53ZWJQbGF5ZXJDb250ZXh0Q29uZmlnP2Eud2ViUGxheWVyQ29udGV4dENvbmZpZy5qc1VybDooYT1hLmNvbmZpZy5hc3NldHMpP2EuanM6IiJ9OwpLMD1mdW5jdGlvbihhKXt2YXIgYj0hMCxjPUwwKGEpO2MmJmEuY29uZmlnJiYoYj1jLmRhdGFzZXQudmVyc2lvbj09PVEwKGEpKTtyZXR1cm4gYiYmISFfLnNhKCJ5dC5wbGF5ZXIuQXBwbGljYXRpb24uY3JlYXRlIil9O08wPWZ1bmN0aW9uKGEsYil7aWYoYS53ZWJQbGF5ZXJDb250ZXh0Q29uZmlnKXZhciBjPWEud2ViUGxheWVyQ29udGV4dENvbmZpZy5zZXJpYWxpemVkRXhwZXJpbWVudEZsYWdzO2Vsc2UgYS5jb25maWc/LmFyZ3MmJihjPWEuY29uZmlnLmFyZ3MuZmZsYWdzKTtyZXR1cm4oY3x8IiIpLnNwbGl0KCImIikuaW5jbHVkZXMoYCR7Yn09dHJ1ZWApfTsKTTA9ZnVuY3Rpb24oYSl7aWYoIWEuaWEoKSl7bGV0IGI9TDAoYSksYz0hMTtiJiZiLmdldEFwaUludGVyZmFjZSYmYi5nZXRBcGlJbnRlcmZhY2UoKSYmKGM9ITApO2M/KGEuVT0hMSwhTzAoYSwiaHRtbDVfcmVtb3ZlX25vdF9zZXJ2YWJsZV9jaGVja19raWxsc3dpdGNoIikmJmI/LmlzTm90U2VydmFibGUmJmEuY29uZmlnJiZiPy5pc05vdFNlcnZhYmxlKGEuY29uZmlnLmFyZ3M/LnZpZGVvX2lkKXx8JHJhKGEpKTphLlFhPXNldFRpbWVvdXQoKCk9PntNMChhKX0sNTApfX07TjA9ZnVuY3Rpb24oYSl7YS5jYW5jZWwoKTtJMChhKTthLlo9bnVsbDthLmNvbmZpZyYmKGEuY29uZmlnLmxvYWRlZD0hMSk7dmFyIGI9TDAoYSk7YiYmKEswKGEpfHwhUjAoYSk/YS52PWI6KGImJmIuZGVzdHJveSYmYi5kZXN0cm95KCksYS52PW51bGwpKTthLnRhcmdldEVsZW1lbnQmJldfKGEudGFyZ2V0RWxlbWVudCl9OwpacmE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEud2ViUGxheWVyQ29udGV4dENvbmZpZz9hLndlYlBsYXllckNvbnRleHRDb25maWcuY3NzVXJsOihhPWEuY29uZmlnLmFzc2V0cyk/YS5jc3M6IiJ9O1IwPWZ1bmN0aW9uKGEpe2E9YS5jb25maWc/LmFyZ3M/LmZmbGFncztyZXR1cm4hIWEmJmEuaW5kZXhPZigicGxheWVyX2Rlc3Ryb3lfb2xkX3ZlcnNpb249dHJ1ZSIpIT09LTF9OwokcmE9ZnVuY3Rpb24oYSl7STAoYSk7YS5GYT0hMDt2YXIgYj1MMChhKTtpZihiKXthLkI9VjAoYSxiLCJhZGRFdmVudExpc3RlbmVyIik7YS5oYT1WMChhLGIsInJlbW92ZUV2ZW50TGlzdGVuZXIiKTtsZXQgYz1iLmdldEFwaUludGVyZmFjZSgpO2M9Yy5jb25jYXQoYi5nZXRJbnRlcm5hbEFwaUludGVyZmFjZSgpKTtsZXQgZD1hLmFwaTtmb3IobGV0IGU9MDtlPGMubGVuZ3RoO2UrKyl7bGV0IGY9Y1tlXTtkW2ZdfHwoZFtmXT1WMChhLGIsZikpfX1mb3IobGV0IGMgaW4gYS5qKWEuai5oYXNPd25Qcm9wZXJ0eShjKSYmYS5CJiZhLkIoYyxhLmpbY10pO1QwKGEpO2Eub2EmJmEub2EoYS5hcGkpO2EuTS5wdWJsaXNoKCJvblJlYWR5IixhLmFwaSl9OwpWMD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YltjXTtyZXR1cm4oLi4uZSk9Pnt0cnl7cmV0dXJuIGEubGFzdEVycm9yPW51bGwsZC5hcHBseShiLGUpfWNhdGNoKGYpe2lmKGMhPT0ic2VuZEFiYW5kb25tZW50UGluZyIpdGhyb3cgZi5wYXJhbXM9YyxhLmxhc3RFcnJvcj1mLGU9bmV3IF8uWGooIlBsYXllclByb3h5IGVycm9yIGluIG1ldGhvZCBjYWxsIix7ZXJyb3I6ZixtZXRob2Q6YyxwbGF5ZXJJZDphLnBsYXllcklkfSksZS5sZXZlbD0iV0FSTklORyIsZTt9fX07CmFzYT1mdW5jdGlvbihhLGIpe3ZhciBjPWQ9Pnt2YXIgZT0oKT0+e2EuaWEoKTtpZighYS5pYSgpKXRyeXthLk0ucHVibGlzaChiLGQ/P3ZvaWQgMCl9Y2F0Y2goaCl7dmFyIGY9bmV3IF8uWGooIlBsYXllclByb3h5IGVycm9yIHdoZW4gY3JlYXRpbmcgZ2xvYmFsIGNhbGxiYWNrIix7ZXJyb3I6aC5tZXNzYWdlLGV2ZW50OmIscGxheWVySWQ6YS5wbGF5ZXJJZCxkYXRhOmQsb3JpZ2luYWxTdGFjazpoLnN0YWNrLGNvbXBvbmVudFN0YWNrOmguY29tcG9uZW50U3RhY2t9KTtmLmxldmVsPSJXQVJOSU5HIjt0aHJvdyBmO319O2lmKE8wKGEsIndlYl9wbGF5ZXJfcHVibGlzaF9ldmVudHNfaW1tZWRpYXRlbHkiKSllKCk7ZWxzZXtsZXQgZj1zZXRUaW1lb3V0KCgpPT57ZSgpO3ZhciBoPWEuSSxrPVN0cmluZyhmKTtrIGluIGgmJmRlbGV0ZSBoW2tdfSwwKTt2cmEoYS5JLFN0cmluZyhmKSl9fTtyZXR1cm4gYS5qW2JdPWN9Owpjc2E9ZnVuY3Rpb24oYSxiKXt2YXIgYz0icGxheWVyIjtjPXR5cGVvZiBjPT09InN0cmluZyI/Vl8oYyk6Yzt2YXIgZD1gJHtfLnZhYX1fJHtfLmZ3KGMpfWAsZT1XMFtkXTtlPW5ldyBic2EoYyxkLGEsYik7VzBbZF09ZTtlLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57ZGVsZXRlIFcwW2UuZ2V0SWQoKV19KTtyZXR1cm4gZS5hcGl9O1gwPWZ1bmN0aW9uKGEpe3ZhciBiPXt9O18ueCgianNvbl9jb25kZW5zZWRfcmVzcG9uc2UiKSYmKGIucHJldHR5UHJpbnQ9ImZhbHNlIik7cmV0dXJuIGE9Xy5laihhLGIpfTtZMD1mdW5jdGlvbihhKXt2YXIgYj1fLncoIklOTkVSVFVCRV9IT1NUX09WRVJSSURFIik7YiYmKGE9U3RyaW5nKGIpK1N0cmluZyhfLk55KGEpKSk7cmV0dXJuIGF9OwpaMD1mdW5jdGlvbihhLGI9IlBPU1QiKXthPXttZXRob2Q6Yixtb2RlOl8uZmooYSk/InNhbWUtb3JpZ2luIjoiY29ycyIsY3JlZGVudGlhbHM6Xy5maihhKT8ic2FtZS1vcmlnaW4iOiJpbmNsdWRlIn07Yj17fTt2YXIgYz17fTtmb3IobGV0IGQgb2YgT2JqZWN0LmtleXMoYikpYltkXSYmKGNbZF09YltkXSk7T2JqZWN0LmtleXMoYykubGVuZ3RoPjAmJihhLmhlYWRlcnM9Yyk7cmV0dXJuIGF9OyQwPWZ1bmN0aW9uKGEpe2E9YS5tYXRjaCgvKC4qKTo6Lio6Oi4qLyk7aWYoYSE9PW51bGwpcmV0dXJuIGFbMV19O2ExPWZ1bmN0aW9uKGEpe2lmKF8uWHooKSl7dmFyIGI9T2JqZWN0LmtleXMod2luZG93LmxvY2FsU3RvcmFnZSk7Zm9yKGxldCBjIG9mIGIpYj0kMChjKSxiPT09dm9pZCAwfHxhLmluY2x1ZGVzKGIpfHxzZWxmLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGMpfX07CmRzYT1mdW5jdGlvbigpe2lmKCFfLlh6KCkpcmV0dXJuITE7dmFyIGE9Xy5WaigpLGI9T2JqZWN0LmtleXMod2luZG93LmxvY2FsU3RvcmFnZSk7Zm9yKGxldCBjIG9mIGIpaWYoYj0kMChjKSxiIT09dm9pZCAwJiZiIT09YSlyZXR1cm4hMDtyZXR1cm4hMX07YjE9ZnVuY3Rpb24oYSl7Xy5PaShfLiR6LGFyZ3VtZW50cyl9O2MxPWFzeW5jIGZ1bmN0aW9uKGEpe2lmKGF3YWl0IF8uZUEoKSl7dmFyIGI9W10sYz1hd2FpdCBfLmRBLmtleXMoKTtmb3IobGV0IGQgb2YgYykoe2RhdGFzeW5jSWQ6Y309Xy5iQShkKSksIWN8fGEuaW5jbHVkZXMoYyl8fGIucHVzaChfLmRBLmRlbGV0ZShkKSk7UHJvbWlzZS5hbGwoYikudGhlbihkPT5kLnNvbWUoZT0+ZSkpfX07CmVzYT1hc3luYyBmdW5jdGlvbigpe2lmKCFhd2FpdCBfLmVBKCkpcmV0dXJuITE7dmFyIGE9Xy5WaigiY2FjaGUgY29udGFpbnMgb3RoZXIiKSxiPWF3YWl0IF8uZEEua2V5cygpO2ZvcihsZXQgYyBvZiBiKWlmKHtkYXRhc3luY0lkOmJ9PV8uYkEoYyksYiYmYiE9PWEpcmV0dXJuITA7cmV0dXJuITF9O2ZzYT1mdW5jdGlvbihhKXtpZihfLmhBLmhhcyhhKSYmXy5mQSYmKF8uZkE/LnRhZ05hbWUudG9Mb3dlckNhc2UoKT8/IiIpPT09YSl7bGV0IGI7KGI9Xy5mQSkubWk/PyhiLm1pPTApO18uZkEubWkrKztpZihfLmZBLm1pPjEpdGhyb3cgRXJyb3IoIlBiIik7cmV0dXJuIF8uZkF9fTtnc2E9ZnVuY3Rpb24oYSl7dmFyIGI9YT8udGFnTmFtZS50b0xvd2VyQ2FzZSgpPz8iIjtfLmZBIT09YSYmYi5pbmNsdWRlcygiLSIpJiZfLmdBLnNldChhLCEwKX07ZDE9ZnVuY3Rpb24oKXt0cnl7cmV0dXJuISF3aW5kb3c/LnRvcD8ubG9jYXRpb24uaHJlZiYmITF9Y2F0Y2goYSl7cmV0dXJuITB9fTsKZjE9ZnVuY3Rpb24oYT0iYmV2YXNyc2ciKXtyZXR1cm4gbmV3IFByb21pc2UoYj0+e3ZhciBjPXdpbmRvdz09PXdpbmRvdy50b3A/d2luZG93OmQxKCk/d2luZG93OndpbmRvdy50b3AsZD1jW2FdO2Q/LmJldmFzcnM/YihuZXcgZTEoZC5iZXZhc3JzKSk6KGR8fChkPXtucWZiZWw6W119LGNbYV09ZCksZC5ucWZiZWwucHVzaChlPT57YihuZXcgZTEoZSkpfSkpfSl9O2hzYT1mdW5jdGlvbihhKXthLmohPT12b2lkIDAmJihhLm8uZm9yRWFjaChiPT57YS5qPy5yZW1vdmVFdmVudExpc3RlbmVyKGIsYS52KX0pLGEuaj12b2lkIDApfTtnMT1mdW5jdGlvbihhKXt2YXIgYj17S2M6YS5jLHNsOmEuZSxMeTphLm1jPz8hMSxNeTphLm1lPz8hMX07YS5jbyYmKGIueWk9e1hvOmEuY28uYyxBdTphLmNvLmEsSkE6YS5jby5zfSk7cmV0dXJuIGJ9Owpqc2E9ZnVuY3Rpb24oYSl7cmV0dXJuIGFzeW5jKCk9Pnt2YXIgYj1hd2FpdCBhKCk7cmV0dXJue2Y6KCk9PmIueWcucHJvbWlzZSxjOmM9PntpZihjPjE1MCl2YXIgZD0hMTtlbHNlIHRyeXtiLmNhY2hlPW5ldyBpc2EoYyxiLlgpLGQ9ITB9Y2F0Y2goZSl7Yi5yZXBvcnRFcnJvcihuZXcgaDEoMjIsIkdCSjppbml0IixlKSksZD0hMX1yZXR1cm4gZH0sbTpjPT5iLm9lKGcxKGMpKSxtd3M6Yz0+Yi56aihnMShjKSl9fX07CmtzYT1mdW5jdGlvbihhLGIsYz0iYmV2YXNyc2ciKXtiPXtzOmY9PmEuc25hcHNob3Qoey4uLihmLmMmJntLYzpmLmN9KSwuLi4oZi5zJiZ7WWo6Zi5zfSksVUs6Zi5wPz8hMH0pLGU6Zj0+dm9pZCBhLkloPy4oZiksYzooZixoKT0+YS5CaShmLGgpLHA6YS5DZyxsOigpPT5hLlZoKCksd3BjOmI/anNhKGIpOnZvaWQgMH07dmFyIGQ9d2luZG93PT09d2luZG93LnRvcD93aW5kb3c6ZDEoKT93aW5kb3c6d2luZG93LnRvcCxlPWRbY107aWYoZSl7ZS5iZXZhc3JzPWI7aWYoZS5ucWZiZWwhPT12b2lkIDApZm9yKGxldCBmIG9mIGUubnFmYmVsKWYoYik7ZS5ucWZiZWw9dm9pZCAwfWVsc2UgZT17YmV2YXNyczpiLG5xZmJlbDp2b2lkIDB9LGRbY109ZX07ajE9ZnVuY3Rpb24oYSl7dmFyIGI9W107R18oYSxpMSw2KS5mb3JFYWNoKGM9PntfLnR4KGMsMik8PTUzJiZiLnB1c2goXy50eChjLDEpKX0pO3JldHVybiBifTsKbHNhPWZ1bmN0aW9uKGEpe3ZhciBiPVtdO0dfKGEsaTEsNikuZm9yRWFjaChjPT57Xy50eChjLDIpPjUzJiZiLnB1c2goXy50eChjLDEpKX0pO3JldHVybiBifTtrMT1mdW5jdGlvbihhKXthLnRoZW4oKCk9Pnt9LCgpPT57fSl9O2wxPWZ1bmN0aW9uKGEpe3JldHVybntmaWVsZFR5cGU6MixmaWVsZE5hbWU6YX19O20xPWZ1bmN0aW9uKGEpe3JldHVybntmaWVsZFR5cGU6MyxmaWVsZE5hbWU6YX19O21zYT1mdW5jdGlvbihhLGIpe3JldHVybiBDXyhhLGIsXy5Pdyl9OwpyMT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgbjE7Yj1CWihiLDEsYS5vKTt2YXIgYz1uc2EoYSk7Yj1DXyhiLGMsc3JhKTtjPVtdO3ZhciBkPVtdO2Zvcih2YXIgZSBvZiBhLmoua2V5cygpKWQucHVzaChlLnNwbGl0KCIsIikpO2ZvcihlPTA7ZTxkLmxlbmd0aDtlKyspe2xldCBwPWRbZV07dmFyIGY9YS52LGg9bzEoYSwuLi5wKXx8W107bGV0IHI9W107Zm9yKHZhciBrPTA7azxoLmxlbmd0aDtrKyspe3ZhciBsPWhba10sbT1sJiZsLmo7bD1uZXcgb3NhO3N3aXRjaChmKXtjYXNlIDM6bT1OdW1iZXIobSk7TnVtYmVyLmlzRmluaXRlKG0pJiZGXyhsLDEscDEseV8obSkpO2JyZWFrO2Nhc2UgMjpGXyhsLDIscDEscF8oTnVtYmVyKG0pKSl9ci5wdXNoKGwpfWZvcihmPTA7ZjxyLmxlbmd0aDtmKyspe2s9cltmXTtoPW5ldyBwc2E7aD1fLkt3KGgsMixrKTtrPVtdO2w9cXNhKGEpO2ZvcihtPTA7bTxsLmxlbmd0aDttKyspe3ZhciBuPWxbbV07bGV0IHQ9cFttXSx2PW5ldyByc2E7c3dpdGNoKG4pe2Nhc2UgMzpGXyh2LAoxLHExLEFaKFN0cmluZyh0KSkpO2JyZWFrO2Nhc2UgMjpuPU51bWJlcih0KTtOdW1iZXIuaXNGaW5pdGUobikmJkZfKHYsMixxMSxfLlB3KG4pKTticmVhaztjYXNlIDE6Rl8odiwzLHExLF8ueHcodD09PSJ0cnVlIikpfWsucHVzaCh2KX1IXyhoLDEsayk7Yy5wdXNoKGgpfX1IXyhiLDQsYyk7cmV0dXJuIGJ9O3NzYT1mdW5jdGlvbihhKXtIXyhzMSwxLGEpfTsKdXNhPWZ1bmN0aW9uKGEsYj10MSl7aWYoIXUxKXthPWEubmF2aWdhdG9yPy51c2VyQWdlbnREYXRhO2lmKCFhfHx0eXBlb2YgYS5nZXRIaWdoRW50cm9weVZhbHVlcyE9PSJmdW5jdGlvbiJ8fGEuYnJhbmRzJiZ0eXBlb2YgYS5icmFuZHMubWFwIT09ImZ1bmN0aW9uIilyZXR1cm4gUHJvbWlzZS5yZWplY3QoRXJyb3IoImtlIikpO3NzYSgoYS5icmFuZHN8fFtdKS5tYXAoZD0+e3ZhciBlPW5ldyB0c2E7ZT1CWihlLDEsZC5icmFuZCk7cmV0dXJuIEJaKGUsMixkLnZlcnNpb24pfSkpO3R5cGVvZiBhLm1vYmlsZT09PSJib29sZWFuIiYmXy5xdyhzMSwyLF8ueHcoYS5tb2JpbGUpKTt1MT1hLmdldEhpZ2hFbnRyb3B5VmFsdWVzKGIpfXZhciBjPW5ldyBTZXQoYik7cmV0dXJuIHUxLnRoZW4oZD0+e3ZhciBlPXMxLmNsb25lKCk7Yy5oYXMoInBsYXRmb3JtIikmJkJaKGUsMyxkLnBsYXRmb3JtKTtjLmhhcygicGxhdGZvcm1WZXJzaW9uIikmJkJaKGUsNCxkLnBsYXRmb3JtVmVyc2lvbik7CmMuaGFzKCJhcmNoaXRlY3R1cmUiKSYmQlooZSw1LGQuYXJjaGl0ZWN0dXJlKTtjLmhhcygibW9kZWwiKSYmQlooZSw2LGQubW9kZWwpO2MuaGFzKCJ1YUZ1bGxWZXJzaW9uIikmJkJaKGUsNyxkLnVhRnVsbFZlcnNpb24pO3JldHVybiBlLnNlcmlhbGl6ZSgpfSkuY2F0Y2goKCk9PnMxLnNlcmlhbGl6ZSgpKX07djE9ZnVuY3Rpb24oYSl7cmV0dXJuIENaKGEsMSwxKX07eTE9ZnVuY3Rpb24oYSxiKXtfLkt3KGEuaiwxLGIpO0tfKGIpfHx2MShiKTthLnlkfHwoYj13MShhKSxKXyhiLDUpfHxCWihiLDUsYS5sb2NhbGUpKTthLnYmJihiPXcxKGEpLF8uTngoYix4MSw5KXx8Xy5LdyhiLDksYS52KSl9O3cxPWZ1bmN0aW9uKGEpe3ZhciBiPV8uTngoYS5qLHoxLDEpO2J8fChiPW5ldyB6MSx5MShhLGIpKTthPWI7Yj1fLk54KGEsQTEsMTEpO2J8fChiPW5ldyBBMSxfLkt3KGEsMTEsYikpO3JldHVybiBifTt2c2E9ZnVuY3Rpb24oYSxiKXthLm89Yn07CnhzYT1mdW5jdGlvbihhKXt2YXIgYj1hLnlkP3ZvaWQgMDpfLnpkKCk7Yj91c2EoYix0MSkudGhlbihjPT57YS52PXdzYShjPz8iW10iKTtjPXcxKGEpO18uS3coYyw5LGEudik7cmV0dXJuITB9KS5jYXRjaCgoKT0+ITEpOlByb21pc2UucmVzb2x2ZSghMSl9O0IxPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuQj1hO3RoaXMuRD1iO3RoaXMubz10aGlzLmo9YTt0aGlzLks9Y3x8MDt0aGlzLkk9ZHx8Mn07QzE9ZnVuY3Rpb24oYSl7YS5vPU1hdGgubWluKGEuRCxhLm8qYS5JKTthLmo9TWF0aC5taW4oYS5ELGEubysoYS5LP01hdGgucm91bmQoYS5LKihNYXRoLnJhbmRvbSgpLS41KSoyKmEubyk6MCkpO2EudisrfTtEMT1mdW5jdGlvbigpe3JldHVybiJodHRwczovL3BsYXkuZ29vZ2xlLmNvbS9sb2c/Zm9ybWF0PWpzb24maGFzZmFzdD10cnVlIn07CnlzYT1mdW5jdGlvbihhLGIpe2lmKCFhLk1hKXJldHVybigpPT57fTt2YXIgYz0oKT0+e2EuZmx1c2goKX07cmV0dXJuIGI/KCk9PntiKCkudGhlbihjKX06Y307RTE9ZnVuY3Rpb24oYSl7YS52LmlzRmluYWw9ITA7YS5mbHVzaCgpO2Eudi5pc0ZpbmFsPSExfTtGMT1mdW5jdGlvbihhKXthLlV8fChhLlU9RDEoKSk7dHJ5e3JldHVybihuZXcgVVJMKGEuVSkpLnRvU3RyaW5nKCl9Y2F0Y2goYil7cmV0dXJuKG5ldyBVUkwoYS5VLF8uemQoKS5sb2NhdGlvbi5vcmlnaW4pKS50b1N0cmluZygpfX07QXNhPWZ1bmN0aW9uKGEpe3pzYShhLChiLGMpPT57Yj1uZXcgVVJMKGIpO2Iuc2VhcmNoUGFyYW1zLnNldCgiZm9ybWF0IiwianNvbiIpO3ZhciBkPSExO3RyeXtkPV8uemQoKS5uYXZpZ2F0b3Iuc2VuZEJlYWNvbihiLnRvU3RyaW5nKCksYy5zZXJpYWxpemUoKSl9Y2F0Y2h7fWR8fChhLlo9ITEpO3JldHVybiBkfSl9OwpCc2E9ZnVuY3Rpb24oYSxiLGM9bnVsbCxkPWEud2l0aENyZWRlbnRpYWxzKXt2YXIgZT17fSxmPW5ldyBVUkwoRjEoYSkpO2MmJihlLkF1dGhvcml6YXRpb249Yyk7YS5zZXNzaW9uSW5kZXgmJihlWyJYLUdvb2ctQXV0aFVzZXIiXT1hLnNlc3Npb25JbmRleCxmLnNlYXJjaFBhcmFtcy5zZXQoImF1dGh1c2VyIixhLnNlc3Npb25JbmRleCkpO2EucGFnZUlkJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIlgtR29vZy1QYWdlSWQiLHt2YWx1ZTphLnBhZ2VJZH0pLGYuc2VhcmNoUGFyYW1zLnNldCgicGFnZUlkIixhLnBhZ2VJZCkpO3JldHVybnt1cmw6Zi50b1N0cmluZygpLGJvZHk6YixHdToxLE9qOmUscmVxdWVzdFR5cGU6IlBPU1QiLHdpdGhDcmVkZW50aWFsczpkLHRpbWVvdXRNaWxsaXM6YS50aW1lb3V0TWlsbGlzfX07CnpzYT1mdW5jdGlvbihhLGIpe2lmKGEuai5sZW5ndGghPT0wKXt2YXIgYz1uZXcgVVJMKEYxKGEpKTtjLnNlYXJjaFBhcmFtcy5kZWxldGUoImZvcm1hdCIpO3ZhciBkPWEuU2YoKTtkJiZjLnNlYXJjaFBhcmFtcy5zZXQoImF1dGgiLGQpO2Muc2VhcmNoUGFyYW1zLnNldCgiYXV0aHVzZXIiLGEuc2Vzc2lvbkluZGV4fHwiMCIpO2ZvcihkPTA7ZDwxMCYmYS5qLmxlbmd0aDsrK2Qpe2xldCBlPWEuai5zbGljZSgwLDMyKSxmPWEudi5idWlsZChlLGEuQixhLkksYS5sZixhLmhhLGEuZ2EpO2lmKCFiKGMudG9TdHJpbmcoKSxmKSl7KythLkk7YnJlYWt9YS5CPTA7YS5JPTA7YS5oYT0wO2EuZ2E9MDthLmo9YS5qLnNsaWNlKGUubGVuZ3RoKX1hLm8uZW5hYmxlZCYmYS5vLnN0b3AoKX19O0NzYT1mdW5jdGlvbihhLGIpe2EuYnVpbGRMYWJlbD1iO3JldHVybiBhfTtFc2E9ZnVuY3Rpb24oYSl7YS5uZXR3b3JrPW5ldyBEc2E7cmV0dXJuIGF9O0ZzYT1mdW5jdGlvbihhLGIpe2Euaj1ifTsKR3NhPWZ1bmN0aW9uKGEpe2Eubz0hMDtyZXR1cm4gYX07cXNhPWZ1bmN0aW9uKGEpe3JldHVybiBhLmZpZWxkcy5tYXAoYj0+Yi5maWVsZFR5cGUpfTtvMT1mdW5jdGlvbihhLC4uLmIpe2I9RzEoLi4uYik7cmV0dXJuIGEuai5oYXMoYik/YS5qLmdldChiKTp2b2lkIDB9O25zYT1mdW5jdGlvbihhKXtyZXR1cm4gYS5maWVsZHMubWFwKGI9PmIuZmllbGROYW1lKX07STE9ZnVuY3Rpb24oYSxiLC4uLmMpe2M9RzEoLi4uYyk7YS5qLnNldChjLFtuZXcgSDEoYildKX07SHNhPWZ1bmN0aW9uKGEsYiwuLi5jKXt2YXIgZD1vMShhLC4uLmMpO2Q/ZC5wdXNoKG5ldyBIMShiKSk6STEoYSxiLC4uLmMpfTtHMT1mdW5jdGlvbiguLi5hKXtyZXR1cm4gYT9hLmpvaW4oIiwiKToia2V5In07SXNhPWZ1bmN0aW9uKGEsLi4uYil7cmV0dXJuKGE9bzEoYSwuLi5iKSkmJmEubGVuZ3RoP2FbMF06dm9pZCAwfTsKSnNhPWZ1bmN0aW9uKGEsLi4uYil7dmFyIGM9MCxkPUlzYShhLC4uLmIpO2QmJihjPWQuaik7STEoYSxjKzEsLi4uYil9O0sxPWZ1bmN0aW9uKGEsYiwuLi5jKXthLnYuaGFzKGIpfHxhLnYuc2V0KGIsbmV3IEoxKGIsYykpfTtNMT1mdW5jdGlvbihhLGIsLi4uYyl7YS52LmhhcyhiKXx8YS52LnNldChiLG5ldyBMMShiLGMpKX07TjE9ZnVuY3Rpb24oYSl7YS5vLmVuYWJsZWR8fGEuby5zdGFydCgpO2EuSSsrO2EuST49YS5CJiZhLkQoKX07S3NhPWZ1bmN0aW9uKGEpe2ZvcihsZXQgYj0wO2I8YS5sZW5ndGg7YisrKWFbYl0uY2xlYXIoKX07TzE9ZnVuY3Rpb24oYSxiLC4uLmMpeyhiPWEuaihiKSkmJmIgaW5zdGFuY2VvZiBMMSYmKEpzYShiLC4uLmMpLE4xKGEpKX07ClAxPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlIDIwMDpyZXR1cm4gMDtjYXNlIDQwMDpyZXR1cm4gMztjYXNlIDQwMTpyZXR1cm4gMTY7Y2FzZSA0MDM6cmV0dXJuIDc7Y2FzZSA0MDQ6cmV0dXJuIDU7Y2FzZSA0MDk6cmV0dXJuIDEwO2Nhc2UgNDEyOnJldHVybiA5O2Nhc2UgNDI5OnJldHVybiA4O2Nhc2UgNDk5OnJldHVybiAxO2Nhc2UgNTAwOnJldHVybiAyO2Nhc2UgNTAxOnJldHVybiAxMjtjYXNlIDUwMzpyZXR1cm4gMTQ7Y2FzZSA1MDQ6cmV0dXJuIDQ7ZGVmYXVsdDpyZXR1cm4gMn19OwpMc2E9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgMDpyZXR1cm4iT0siO2Nhc2UgMTpyZXR1cm4iQ0FOQ0VMTEVEIjtjYXNlIDI6cmV0dXJuIlVOS05PV04iO2Nhc2UgMzpyZXR1cm4iSU5WQUxJRF9BUkdVTUVOVCI7Y2FzZSA0OnJldHVybiJERUFETElORV9FWENFRURFRCI7Y2FzZSA1OnJldHVybiJOT1RfRk9VTkQiO2Nhc2UgNjpyZXR1cm4iQUxSRUFEWV9FWElTVFMiO2Nhc2UgNzpyZXR1cm4iUEVSTUlTU0lPTl9ERU5JRUQiO2Nhc2UgMTY6cmV0dXJuIlVOQVVUSEVOVElDQVRFRCI7Y2FzZSA4OnJldHVybiJSRVNPVVJDRV9FWEhBVVNURUQiO2Nhc2UgOTpyZXR1cm4iRkFJTEVEX1BSRUNPTkRJVElPTiI7Y2FzZSAxMDpyZXR1cm4iQUJPUlRFRCI7Y2FzZSAxMTpyZXR1cm4iT1VUX09GX1JBTkdFIjtjYXNlIDEyOnJldHVybiJVTklNUExFTUVOVEVEIjtjYXNlIDEzOnJldHVybiJJTlRFUk5BTCI7Y2FzZSAxNDpyZXR1cm4iVU5BVkFJTEFCTEUiO2Nhc2UgMTU6cmV0dXJuIkRBVEFfTE9TUyI7CmRlZmF1bHQ6cmV0dXJuIiJ9fTtSMT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9UTEoKTtiPWIoKTthLnYoYyxRMSgpLWQpO3JldHVybiBifTtPc2E9ZnVuY3Rpb24oYSxiLGMsZCl7YT1Hc2EoRXNhKENzYShuZXcgUzEsYSkpKS5ubCgpO2IubGVuZ3RoJiZGc2EoYSxtc2EobmV3IE1zYSxiKSk7ZCE9PXZvaWQgMCYmKGEuTmU9ZCk7dmFyIGU9bmV3IE5zYShhLmJ1aWxkKCkpO0VaKGUsYSk7dmFyIGY9bmV3IFQxKHtmbHVzaChoKXt0cnl7ZS5mbHVzaChoKX1jYXRjaChrKXtjKGspfX19KTtmLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57c2V0VGltZW91dCgoKT0+e3RyeXtmLkQoKX1maW5hbGx5e2UuZGlzcG9zZSgpfX0pfSk7Zi5CPTFFNTtmLmZsdXNoSW50ZXJ2YWw9M0U0O2Yuby5zZXRJbnRlcnZhbCgzRTQpO3JldHVybiBmfTsKUHNhPWZ1bmN0aW9uKGEpe2lmKGEudGltZXI9PT12b2lkIDApe2xldCBiPU1hdGgubWF4KDAsYS5qK2Euby1RMSgpKTthLnRpbWVyPXNldFRpbWVvdXQoKCk9Pnt0cnl7YS5jYWxsYmFjaygpfWZpbmFsbHl7YS5qPVExKCksYS50aW1lcj12b2lkIDB9fSxiKX19O1JzYT1mdW5jdGlvbihhLGI9W10pe3JldHVybiBuZXcgUXNhKGEsYil9O1ExPWZ1bmN0aW9uKCl7cmV0dXJuIGdsb2JhbFRoaXMucGVyZm9ybWFuY2U/Lm5vdz8uKCk/P0RhdGUubm93KCl9O1UxPWZ1bmN0aW9uKGEsYil7aWYoYS5kaXNhYmxlKXJldHVybiBuZXcgU3NhO2I9Yj9qMShiKTpbXTtyZXR1cm4gUnNhKHttYjphLm1iLHpsOmEuU3Ysbm06YS5LeSxOZTphLk5lLEZqOmEuRmosSWc6YS5JZ30sYil9O1cxPWZ1bmN0aW9uKCl7VjEuaW5zdGFuY2V8fChWMS5pbnN0YW5jZT1uZXcgVjEpO3JldHVybiBWMS5pbnN0YW5jZX07ClRzYT1mdW5jdGlvbihhLGIsYyxkKXtpZighYiYmIWMpcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO2lmKCFkKXJldHVybiBYMShiLGMpO3ZhciBlOyhlPWEucHJvbWlzZXMpW2RdfHwoZVtkXT1uZXcgUHJvbWlzZSgoZixoKT0+e1gxKGIsYykudGhlbigoKT0+e2Euaj1kO2YoKX0saz0+e2RlbGV0ZSBhLnByb21pc2VzW2RdO2goayl9KX0pKTtyZXR1cm4gYS5wcm9taXNlc1tkXX07JDE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gVHNhKGEsXy5OeChiLFkxLDEsXy53eiksXy5OeChiLFoxLDIsXy53eiksSl8oYiwzLHZvaWQgMCxfLnd6KSl9O1gxPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGI/VXNhKGIpOmE/VnNhKGEpOlByb21pc2UucmVzb2x2ZSgpfTsKVXNhPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgUHJvbWlzZSgoYixjKT0+e3ZhciBkPV8uQ2QoIlNDUklQVCIpLGU9VHJhKGEpO18ub2IoZCxlKTtkLm9ubG9hZD0oKT0+e18uRGQoZCk7YigpfTtkLm9uZXJyb3I9KCk9PntfLkRkKGQpO2MoRXJyb3IoInFlIikpfTsoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIkhFQUQiKVswXXx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5hcHBlbmRDaGlsZChkKX0pfTtWc2E9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBQcm9taXNlKGI9Pnt2YXIgYz1fLkNkKCJTQ1JJUFQiKTtpZihhKXt2YXIgZD1fLlh0KF8uZWQoYSw2LHZvaWQgMCxfLkR2KSk7ZD1kPT09bnVsbHx8ZD09PXZvaWQgMD9udWxsOl8ua2IoZCl9ZWxzZSBkPW51bGw7Xy5uYihjLGQpOyhkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiSEVBRCIpWzBdfHxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmFwcGVuZENoaWxkKGMpO18uRGQoYyk7YigpfSl9OwpXc2E9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5XeChhLDEsQVooYiksIiIpfTtYc2E9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5XeChhLDIsQVooYiksIiIpfTsKYXRhPWFzeW5jIGZ1bmN0aW9uKGEsYixjLGQ9VzEoKSxlPVByb21pc2UucmVzb2x2ZSh2b2lkIDApLGYpe2F3YWl0IDA7Zm9yKHZhciBoOzspe2xldCBrPW51bGw7aWYoaCl7YTIoYSw3KTt0cnl7az1hd2FpdCBiMihoLnNuYXBzaG90KHt9KSxmLmF2LCgpPT5Qcm9taXNlLnJlc29sdmUoIkU6Q1RPIikpfWNhdGNoKG4pe2s9IkU6VUNFIn19bGV0IGwsbT1uZXcgQjEoaD9mLkp2OmYuS3YsZi5MdixmLk12LGYuSXYpO2ZvcihsZXQgbj0xO248PWYubWF4QXR0ZW1wdHM7bisrKXtpZihuIT09MSl7YTIoYSwwKTthLmo9bmV3IGMyKG0uaixmLmVrLGYubHMpO2xldCBwPWF3YWl0IGEuai5wcm9taXNlO2Euaj12b2lkIDA7cD09PTE/KG49MSxtLnJlc2V0KCkpOkMxKG0pfXRyeXtsZXQgcDtjP3A9YzooYTIoYSw1KSxwPWF3YWl0IGIyKFlzYShiLGQuaixrKSxmLlZ2LCgpPT5Qcm9taXNlLnJlamVjdChFcnJvcigic2UiKSkpKTthMihhLDMpO2F3YWl0IGIyKCQxKGQscCksZi5xeSwoKT0+UHJvbWlzZS5yZWplY3QoRXJyb3IoInRlIikpKTsKYTIoYSw4KTthd2FpdCBlO2xldCByPW5ldyBkMih7Y2hhbGxlbmdlOnAsbmc6YS5vcHRpb25zLm5nLEZzOmEub3B0aW9ucy5Gc30pO2F3YWl0IGIyKHIuQ2csZi5tQSwoKT0+UHJvbWlzZS5yZWplY3QoRXJyb3IoInVlIikpKTtsPXI7YnJlYWt9Y2F0Y2gocCl7YS5oYW5kbGVFcnJvcihwKSxlMihhKX19aWYoYS5pYSgpKWJyZWFrO2wmJihjPXZvaWQgMCxac2EoYSxoKSxoPWwsJHNhKGEsbCksZTIoYSkpO2EyKGEsMik7YS5qPW5ldyBjMihmLkZyLGYuZWssZi5scyk7YS5pc1BhdXNlZCYmYS5qLnBhdXNlKCk7YXdhaXQgYS5qLnByb21pc2U7YS5qPXZvaWQgMDtpZihhLmlhKCkpYnJlYWt9aD8uZGlzcG9zZSgpfTsKYnRhPWZ1bmN0aW9uKGEpe2EuTT1FcnJvcigicmUiKTthLkQucmVzb2x2ZSgpO2sxKGEuSS5wcm9taXNlKTthLkkucmVqZWN0KEVycm9yKCJyZSIpKTthLlguZGlzcG9zZSgpO1Byb21pc2UuYWxsKGEuQikudGhlbihhc3luYygpPT57YS5vPy5kaXNwb3NlKCk7YS5vPXZvaWQgMH0pO2EuQj1bXTthLmo/Lm8oKTtrMShhLnYucHJvbWlzZSk7YS52LnJlamVjdChFcnJvcigicmUiKSl9O2YyPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5HajthLkdqPSgpPT57YygpO2IoKX19OyRzYT1mdW5jdGlvbihhLGIpe2EuaWEoKXx8KGEubz1iLGEuWC51cGRhdGUoYi5WaCgpKSxhLkQucmVzb2x2ZSgpLGEuSS5yZXNvbHZlKHZvaWQgMCksYS5HaigpKX07WnNhPWZ1bmN0aW9uKGEsYil7YiYmKFByb21pc2UuYWxsKGEuQikudGhlbigoKT0+dm9pZCBiLmRpc3Bvc2UoKSksYS5CPVtdKX07YTI9ZnVuY3Rpb24oYSxiKXthLlo9YjthLm9wdGlvbnMuaks/LihiKX07CmUyPWZ1bmN0aW9uKGEpe2EuaWEoKXx8KGEudi5yZXNvbHZlKCksYS52PW5ldyBfLmNzKX07YjI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2M9KG5ldyBQcm9taXNlKGU9PntkPXNldFRpbWVvdXQoZSxiKX0pKS50aGVuKGMpO2sxKGMpO3JldHVybiBQcm9taXNlLnJhY2UoW2EuZmluYWxseSgoKT0+dm9pZCBjbGVhclRpbWVvdXQoZCkpLGNdKX07Y3RhPWZ1bmN0aW9uKGEsYil7YS5lbmRUaW1lTXM9RGF0ZS5ub3coKStiO2EudGljaygpfTtnMj1mdW5jdGlvbihhKXthLmomJihjbGVhclRpbWVvdXQoYS5qKSxhLmo9bnVsbCl9O2gyPWZ1bmN0aW9uKGEsYil7dHJ5e3JldHVybiBnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnNldEl0ZW0oYSxiKSwhMH1jYXRjaChjKXtyZXR1cm4hMX19OwppMj1mdW5jdGlvbihhLGI9MCxjPWEubGVuZ3RoLGQpe3ZhciBlPTA7Zm9yKGQmJihlPWkyKGQpKTtiPGM7YisrKWU9ZHRhKDMxLGUpKyh0eXBlb2YgYT09PSJzdHJpbmciP2EuY2hhckNvZGVBdChiKTphW2JdKXwwO3JldHVybiBlfTtrMj1mdW5jdGlvbihhKXt2YXIgW2IsY109W2kyKGEsMCxhLmxlbmd0aD4+MSxqMiksaTIoYSxhLmxlbmd0aD4+MSldO3JldHVybiBiLnRvU3RyaW5nKDE2KStjLnRvU3RyaW5nKDE2KX07CmwyPWZ1bmN0aW9uKGEsYil7dmFyIGM9W2kyKGIsMCxiLmxlbmd0aD4+MSx2b2lkIDApLGkyKGIsYi5sZW5ndGg+PjEpXTthPW5ldyBVaW50MzJBcnJheShhLmJ1ZmZlcik7Yj1hWzBdO3ZhciBbZCxlXT1jO2ZvcihjPTE7YzxhLmxlbmd0aDtjKz0yKXt2YXIgZj1iLGg9YyxrPWQsbD1lO2ZvcihsZXQgbT0wO208MjI7bSsrKWg9aD4+Pjh8aDw8MjQsaCs9ZnwwLGhePWsrMzgyOTMsZj1mPDwzfGY+Pj4yOSxmXj1oLGw9bD4+Pjh8bDw8MjQsbCs9a3wwLGxePW0rMzgyOTMsaz1rPDwzfGs+Pj4yOSxrXj1sO2Y9W2YsaF07YVtjXV49ZlswXTtjKzE8YS5sZW5ndGgmJihhW2MrMV1ePWZbMV0pfX07CmV0YT1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSg0LShqMi5sZW5ndGgrYy5sZW5ndGgpJTQpJTQsaD1uZXcgVWludDhBcnJheSg0K2YrajIubGVuZ3RoKzQrYy5sZW5ndGgpLGs9bmV3IERhdGFWaWV3KGguYnVmZmVyKSxsPTA7ay5zZXRVaW50MzIobCxNYXRoLnJhbmRvbSgpKjQyOTQ5NjcyOTUpO2w9bCs0K2Y7aC5zZXQoajIsbCk7bCs9ajIubGVuZ3RoO2suc2V0VWludDMyKGwsZSk7aC5zZXQoYyxsKzQpO2wyKGgsZCk7cmV0dXJuIGEucmIoYixtPT52b2lkIGdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShtKSk/aDIoYixfLnNjKGgpKT8icyI6InQiOiJpIn07CmZ0YT1mdW5jdGlvbihhLGIpe3ZhciBjPWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShhKTtpZighYylyZXR1cm5bIm0iXTt0cnl7dmFyIGQ9Xy51YyhjKTtsMihkLGIpfWNhdGNoKGUpe3JldHVybiBnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oYSksWyJjIl19Zm9yKGI9NDtiPDcmJmRbYl09PT0wOyliKys7Zm9yKGM9MDtjPGoyLmxlbmd0aDtjKyspaWYoZFtiKytdIT09ajJbY10pcmV0dXJuIGdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShhKSxbImQiXTtjPShuZXcgRGF0YVZpZXcoZC5idWZmZXIpKS5nZXRVaW50MzIoYik7cmV0dXJuIE1hdGguZmxvb3IoRGF0ZS5ub3coKS8xRTMpPj1jPyhnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oYSksWyJlIl0pOlsiYSIsbmV3IFVpbnQ4QXJyYXkoZC5idWZmZXIsYis0KV19OwpndGE9ZnVuY3Rpb24oYSl7dmFyIGI9Z2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCJpVTVxLSFPOUAkIik7aWYoIWIpcmV0dXJuIG5ldyBtMihhKTt2YXIgYz1iLnNwbGl0KCIsIik7aWYoYy5sZW5ndGg8MilyZXR1cm4gZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKCJpVTVxLSFPOUAkIiksbmV3IG0yKGEpO2I9Yy5zbGljZSgxKTtiLmxlbmd0aD09PTEmJmJbMF09PT0iIiYmKGI9W10pO2M9TnVtYmVyKGNbMF0pO3JldHVybiBpc05hTihjKXx8YzwwfHxjPmIubGVuZ3RoPyhnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oImlVNXEtIU85QCQiKSxuZXcgbTIoYSkpOm5ldyBtMihhLGMsYil9O24yPWZ1bmN0aW9uKGEsYil7dmFyIGM9c2V0VGltZW91dCgoKT0+e2Eudi5yZXNvbHZlKCl9LGIpO2EuYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgY2xlYXJUaW1lb3V0KGMpKX07CnAyPWZ1bmN0aW9uKGEsYil7dmFyIGM9YCR7YihhLmVycm9yLm1lc3NhZ2UpfToke2IoYS5lcnJvci5zdGFjayl9YC5zdWJzdHJpbmcoMCwyMDQ4KTtiPWMubGVuZ3RoKzE7Yz1vMihjKTt2YXIgZD1uZXcgVWludDhBcnJheSg0K2MubGVuZ3RoKTtkLnNldChbNDIsYiYxMjd8MTI4LGI+PjcsYS5lcnJvci5jb2RlXSk7ZC5zZXQoYyw0KTtyZXR1cm4gZH07bzI9ZnVuY3Rpb24oYSl7cmV0dXJuIGdsb2JhbFRoaXMuVGV4dEVuY29kZXI/KG5ldyBUZXh0RW5jb2RlcikuZW5jb2RlKGEpOl8uYWMoYSl9Owp0Mj1hc3luYyBmdW5jdGlvbihhKXt2YXIgYj12b2lkIDA7YS52Kys7dmFyIGM9bmV3IF8uY3M7YS52bSBpbnN0YW5jZW9mIHEyJiZhLnZtLkIucHVzaChjLnByb21pc2UpO2lmKGEuUW4pe2xldCBmPW5ldyBfLmNzO3NldFRpbWVvdXQoKCk9PnZvaWQgZi5yZXNvbHZlKCkpO2F3YWl0IGYucHJvbWlzZX12YXIgZD1hLlguc2hhcmUoKTt0cnl7YS5zdGF0ZT01O2xldCBmPVtdLGg9YXdhaXQgYjIoYS52bS5zbmFwc2hvdCh7S2M6e30sSXM6Zn0pLGEuTGcuQkEsKCk9PlByb21pc2UucmVqZWN0KG5ldyBoMSgxNSwiTURBOlRpbWVvdXQiKSkpO3IyKGEsIk1EQTpEaXNwb3NlZCIpO2xldCBrPWZbMF07YS5zdGF0ZT02O2xldCBsPWF3YWl0IGIyKGh0YShhLm9kLGgpLGEuTGcuV3YsKCk9PlByb21pc2UucmVqZWN0KG5ldyBoMSgxMCwiQldCOlRpbWVvdXQiKSkpO3IyKGEsIkJXQjpEaXNwb3NlZCIpO2Euc3RhdGU9NztiPVIxKGQsKCk9Pnt2YXIgbT1pdGEoYSxsLGMsayk7bS52LnByb21pc2UudGhlbigoKT0+CnZvaWQgYS5CKCkpO3JldHVybiBtfSwiaSIpfWNhdGNoKGYpe2I/LmRpc3Bvc2UoKTtpZighYS5vKXtsZXQgaD1qdGEoYSxmKTtjLnJlc29sdmUoKTt2YXIgZTtpZihlPWEudm0gaW5zdGFuY2VvZiBxMiYmYS52PDIpYTppZihmIGluc3RhbmNlb2YgaDEpZT1mLmNvZGUhPT0zMiYmZi5jb2RlIT09MjAmJmYuY29kZSE9PTEwO2Vsc2V7aWYoZiBpbnN0YW5jZW9mIHMyKXN3aXRjaChmLmNvZGUpe2Nhc2UgMjpjYXNlIDEzOmNhc2UgMTQ6Y2FzZSA0OmJyZWFrO2RlZmF1bHQ6ZT0hMTticmVhayBhfWU9ITB9aWYoZSl7bGV0IGs9c2V0VGltZW91dCgoKT0+dm9pZCBhLkIoKSwoMStNYXRoLnJhbmRvbSgpKi4yNSkqKGEuaj82RTQ6MUUzKSk7YS5hZGRPbkRpc3Bvc2VDYWxsYmFjaygoKT0+dm9pZCBjbGVhclRpbWVvdXQoaykpO3JldHVybn1hLm89aH1kLkpiKGEuaj8xMzoxNCk7YS55Zy5yZWplY3QoYS5vKTtyZXR1cm59ZmluYWxseXtkLmRpc3Bvc2UoKX1hLnN0YXRlPTg7YS52PTA7YS5qPy5kaXNwb3NlKCk7CmEuaj1iO2EueWcucmVzb2x2ZSgpfTtqdGE9ZnVuY3Rpb24oYSxiKXtpZighKGIgaW5zdGFuY2VvZiBoMSkpaWYoYiBpbnN0YW5jZW9mIHMyKXtsZXQgYz1FcnJvcihiLnRvU3RyaW5nKCkpO2Muc3RhY2s9Yi5zdGFjaztiPW5ldyBoMSgxMSwiRUJIOkVycm9yIixjKX1lbHNlIGI9bmV3IGgxKDEyLCJCU086VW5rbm93biIsYik7cmV0dXJuIGEucmVwb3J0RXJyb3IoYil9O3IyPWZ1bmN0aW9uKGEsYil7aWYoYS5pYSgpKXRocm93IG5ldyBoMShhLmo/MjA6MzIsYik7fTsKaXRhPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPShzXyhfLmVkKGIsMikpPz8wKSoxRTM7aWYoZTw9MCl0aHJvdyBuZXcgaDEoMzEsIlRUTTpJbnZhbGlkIik7aWYoSl8oYiw0KSlyZXR1cm4gbmV3IGt0YShhLlgsSl8oYiw0KSxlKTtpZighKHNfKF8uZWQoYiwzKSk/PzApKXJldHVybiBuZXcgbHRhKGEuWCxGWihCXyhiKSksZSk7aWYoIWQpdGhyb3cgbmV3IGgxKDQsIlBNRDpVbmRlZmluZWQiKTtkPWQoRlooQl8oYikpKTtpZih0eXBlb2YgZCE9PSJmdW5jdGlvbiIpdGhyb3cgbmV3IGgxKDE2LCJBUEY6RmFpbGVkIik7YS5EPU1hdGguZmxvb3IoKERhdGUubm93KCkrZSkvMUUzKTthPW5ldyB1MihhLlgsZCxzXyhfLmVkKGIsMykpPz8wLGUpO2EuYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgYy5yZXNvbHZlKCkpO3JldHVybiBhfTsKdzI9ZnVuY3Rpb24oYSxiLGMpe3RyeXtpZihhLmlhKCkpdGhyb3cgbmV3IGgxKDIxLCJCTlQ6ZGlzcG9zZWQiKTtpZighYS5qJiZhLm8pdGhyb3cgYS5vO3JldHVybiBtdGEoYSxiLGMpPz9udGEoYSxiLGMpPz9vdGEoYSxiLGMpfWNhdGNoKGQpe2lmKCFiLk15KXRocm93IHYyKGEsZCk7cmV0dXJuIHB0YShhLGMsZCl9fTt2Mj1mdW5jdGlvbihhLGIpe2I9YiBpbnN0YW5jZW9mIGgxP2I6bmV3IGgxKDUsIlRWRDplcnJvciIsYik7cmV0dXJuIGEucmVwb3J0RXJyb3IoYil9O210YT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGEuaj8uc20oKCk9PngyKGEsYiksYyxkPT57aWYoYS5qIGluc3RhbmNlb2YgdTImJmIueWk/LkpBKXRyeXthLmNhY2hlPy5qKHgyKGEsYiksZCxiLnlpLlhvLGEuRC0xMjApfWNhdGNoKGUpe2EucmVwb3J0RXJyb3IobmV3IGgxKDI0LCJFTFg6d3JpdGUiLGUpKX19KX07Cm50YT1mdW5jdGlvbihhLGIsYyl7aWYoYi55aT8uQXUpdHJ5e2xldCBkPWEuY2FjaGU/Lm8oeDIoYSxiKSxiLnlpLlhvKTtyZXR1cm4gZD9jP1IxKGEuWCwoKT0+Xy5zYyhkLDIpLCJhIik6ZDp2b2lkIDB9Y2F0Y2goZCl7YS5yZXBvcnRFcnJvcihuZXcgaDEoMjMsIlJYTzpyZWFkIixkKSl9fTtvdGE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXtzdGFjazpbXSxlcnJvcjp2b2lkIDAsaGFzRXJyb3I6ITF9O3RyeXtpZighYi5MeSl0aHJvdyBuZXcgaDEoMjksIlNERjpub3RyZWFkeSIpO3JldHVybiBfLlZ6KGQsbmV3IHF0YShhLlgsYS5zdGF0ZSkpLnNtKCgpPT54MihhLGIpLGMpfWNhdGNoKGUpe2QuZXJyb3I9ZSxkLmhhc0Vycm9yPSEwfWZpbmFsbHl7Xy5XeihkKX19OwpwdGE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXtzdGFjazpbXSxlcnJvcjp2b2lkIDAsaGFzRXJyb3I6ITF9O3RyeXtsZXQgZT12MihhLGMpO3JldHVybiBfLlZ6KGQsbmV3IHJ0YShhLlgsZSkpLnNtKCgpPT5bXSxiKX1jYXRjaChlKXtkLmVycm9yPWUsZC5oYXNFcnJvcj0hMH1maW5hbGx5e18uV3ooZCl9fTt4Mj1mdW5jdGlvbihhLGIpe3JldHVybiBiLnNsP2Iuc2w6Yi5LYz9SMShhLlgsKCk9PmIuc2w9bzIoYi5LYyksImMiKTpbXX07eTI9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PSJcciJ8fGE9PSJcbiJ8fGE9PSIgInx8YT09Ilx0In07ejI9ZnVuY3Rpb24oKXt0aGlzLk09bnVsbDt0aGlzLlk9W107dGhpcy5JPSIiO3RoaXMuVT1bXTt0aGlzLnY9dGhpcy5vPTA7dGhpcy5EPSExO3RoaXMuSz0wO3RoaXMuWj0vW1xcIl0vZzt0aGlzLmo9dGhpcy5CPTB9OwpBMj1mdW5jdGlvbihhLGIsYyl7YS5CPTM7YS5NPSJUaGUgc3RyZWFtIGlzIGJyb2tlbiBAIithLnYrIi8iK2MrIi4gV2l0aCBpbnB1dDpcbiIrYjt0aHJvdyBFcnJvcihhLk0pO307QzI9ZnVuY3Rpb24oKXt2YXIgYT1VXyhzdGEpLGI7cmV0dXJuKG5ldyBfLkJmKChjLGQpPT57YS5vblN1Y2Nlc3M9ZT0+e18ucWooZSk/YyhuZXcgdHRhKGUpKTpkKG5ldyBCMihgUmVxdWVzdCBmYWlsZWQsIHN0YXR1cz0ke18ucGooZSl9YCwibmV0LmJhZHN0YXR1cyIpKX07YS5vbkVycm9yPSgpPT57ZChuZXcgQjIoIlVua25vd24gcmVxdWVzdCBlcnJvciIsIm5ldC51bmtub3duIikpfTthLm9uVGltZW91dD0oKT0+e2QobmV3IEIyKCJSZXF1ZXN0IHRpbWVkIG91dCIsIm5ldC50aW1lb3V0IikpfTtiPV8uemooIi8vZ29vZ2xlYWRzLmcuZG91YmxlY2xpY2submV0L3BhZ2VhZC9pZCIsYSl9KSkuS2coYz0+e2MgaW5zdGFuY2VvZiBfLlBmJiZiPy5hYm9ydCgpO3JldHVybiBfLk90KGMpfSl9Owp1dGE9ZnVuY3Rpb24oYSxiPW51bGwpe2Euaj0yO2Eubz1ifTt2dGE9ZnVuY3Rpb24oYSxiPW51bGwpe2Euaj0xO2Eubz1ifTtFMj1mdW5jdGlvbihhPW51bGwpe3ZhciBiPW5ldyBEMjt1dGEoYixhKTtyZXR1cm4gYn07RjI9ZnVuY3Rpb24oYT1udWxsKXt2YXIgYj1uZXcgRDI7dnRhKGIsYSk7cmV0dXJuIGJ9O3d0YT1mdW5jdGlvbihhKXt2YXIgYj1hLmRvY2lkfHxhLnZpZGVvX2lkfHxhLnZpZGVvSWR8fGEuaWQ7aWYoYilyZXR1cm4gYjtiPWEucmF3X3BsYXllcl9yZXNwb25zZTtifHwoYT1hLnBsYXllcl9yZXNwb25zZSkmJihiPUpTT04ucGFyc2UoYSkpO3JldHVybiBiJiZiLnZpZGVvRGV0YWlscyYmYi52aWRlb0RldGFpbHMudmlkZW9JZHx8bnVsbH07CkcyPWZ1bmN0aW9uKGEpe3ZhciBiPSJFTUJFRERFRF9QTEFZRVJfTU9ERV9VTktOT1dOIjt3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUuaW5jbHVkZXMoInlvdXR1YmVlZHVjYXRpb24uY29tIikmJihiPSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRkwiKTt2YXIgYz1hLnJhd19lbWJlZGRlZF9wbGF5ZXJfcmVzcG9uc2U7aWYoIWMmJihhPWEuZW1iZWRkZWRfcGxheWVyX3Jlc3BvbnNlKSl0cnl7Yz1KU09OLnBhcnNlKGEpfWNhdGNoKGQpe3JldHVybiBifWlmKGMpYTp7YT14dGE7Zm9yKGxldCBkIGluIGEpaWYoYVtkXT09Yy5lbWJlZGRlZFBsYXllck1vZGUpe2I9YVtkXTticmVhayBhfX1yZXR1cm4gYn07Cnl0YT1mdW5jdGlvbigpe2lmKF8ueCgiZGlzYWJsZV9iaXNjb3R0aV9mZXRjaF9lbnRpcmVseV9mb3JfYWxsX3dlYl9jbGllbnRzIikpcmV0dXJuIEVycm9yKCJ2ZSIpO2lmKCFfLnN6KCkpcmV0dXJuIEVycm9yKCJ3ZSIpO3ZhciBhPV8udygiUExBWUVSX1ZBUlMiLHt9KTtpZihUXyhhKT09IjEiKXJldHVybiBFcnJvcigieGUiKTtpZihHMihhKT09PSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRkwiKXJldHVybiBFcnJvcigieWUiKX07Wl89ZnVuY3Rpb24oKXt2YXIgYT15dGEoKTtpZihhIT09dm9pZCAwKXJldHVybiBfLk90KGEpO0gyfHwoSDI9QzIoKS50aGVuKEkyKS5LZyhiPT5KMigyLGIpKSk7cmV0dXJuIEgyfTsKSTI9ZnVuY3Rpb24oYSl7YT1hLmoucmVzcG9uc2VUZXh0O2lmKGEubGFzdEluZGV4T2YoIildfSciLDApIT0wKXRocm93IG5ldyBLMjthPUpTT04ucGFyc2UoYS5zdWJzdHIoNCkpO2lmKChhLnR5cGV8fDEpPjEpdGhyb3cgbmV3IEsyO2E9YS5pZDskXyhhKTtIMj1GMihhKTtMMigxOEU1LDIpO3JldHVybiBhfTtKMj1mdW5jdGlvbihhLGIpe2I9bmV3IE0yKGIpOyRfKCIiKTtIMj1FMihiKTthPjAmJkwyKDEyRTQsYS0xKTt0aHJvdyBiO307TDI9ZnVuY3Rpb24oYSxiKXtfLm1qKGZ1bmN0aW9uKCl7QzIoKS50aGVuKEkyLGM9PkoyKGIsYykpLktnKF8uZ2QpfSxhKX07enRhPWZ1bmN0aW9uKCl7dHJ5e2xldCBhPV8uc2EoInl0LmFkcy5iaXNjb3R0aS5nZXRJZF8iKTtyZXR1cm4gYT9hKCk6Wl8oKX1jYXRjaChhKXtyZXR1cm4gXy5PdChhKX19OwpOMj1mdW5jdGlvbigpe3ZhciBhPSExO3RyeXthPSEhd2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0oInNlc3Npb25fbG9naW5pbmZvIil9Y2F0Y2h7YT0hMH1yZXR1cm4oXy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJXRUIifHxfLncoIklOTkVSVFVCRV9DTElFTlRfTkFNRSIpPT09IldFQl9DUkVBVE9SIikmJmF9OwpPMj1mdW5jdGlvbigpe3RyeXt3aW5kb3cuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbSgic3RpY2tpbmVzc19yZWxvYWQiKTt3aW5kb3cuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbSgic2Vzc2lvbl9sb2dpbmluZm8iKTtfLlFpKCJMT0dJTl9JTkZPIiwiIik7d2luZG93LnNlc3Npb25TdG9yYWdlLnNldEl0ZW0oImZyb21fc3dpdGNoX2FjY291bnQiLCIxIik7dmFyIGE7bGV0IGM9QXRhO2N8fChjPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNwZXJzaXN0X2lkZW50aXR5IikpO2lmKGE9Yyl7dmFyIGI9YS5zcmM/KG5ldyBVUkwoYS5zcmMpKS5vcmlnaW46IioiO2EuY29udGVudFdpbmRvdz8ucG9zdE1lc3NhZ2Uoe2FjdGlvbjoiY2xlYXIifSxiKX19Y2F0Y2h7fX07ClAyPWZ1bmN0aW9uKGEpe2lmKGEpaWYoYS5zdGFydHNXaXRoKCJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20vQWRkU2Vzc2lvbiIpKU8yKCk7ZWxzZSBpZihhLnN0YXJ0c1dpdGgoImh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TZXJ2aWNlTG9naW4iKSlPMigpO2Vsc2V7dmFyIGI7aWYoYj1hLnN0YXJ0c1dpdGgoImh0dHBzOi8vbXlhY2NvdW50Lmdvb2dsZS5jb20iKSliPShhIGluc3RhbmNlb2YgXy5meT9hLmNsb25lKCk6bmV3IF8uZnkoYSkpLmouZW5kc1dpdGgoIi95b3V0dWJlb3B0aW9ucyIpO2ImJk8yKCl9aWYoXy53KCJMT0dHRURfSU4iLCEwKSYmTjIoKSl7Yj1fLncoIlZBTElEX1NFU1NJT05fVEVNUERBVEFfRE9NQUlOUyIsW10pO3ZhciBjPV8uUGIod2luZG93LmxvY2F0aW9uLmhyZWYpO2MmJmIucHVzaChjKTtjPV8uUGIoYSk7Xy5zYihiLGMpPj0wfHwhYyYmYS5sYXN0SW5kZXhPZigiLyIsMCk9PTA/KGI9Xy5OeShhKSwoYj1fLk95KGIpKT8oYj1fLnZ6KGIpLApiPShiPV8uTGouZ2V0KGIsdm9pZCAwKXx8bnVsbCk/Xy5iaihiKTp7fSk6Yj1udWxsKTpiPW51bGw7Yj09bnVsbCYmKGI9e30pO2M9Yjt2YXIgZD12b2lkIDA7TjIoKT8oZHx8KGQ9Xy53KCJMT0dJTl9JTkZPIikpLGQ/KGMuc2Vzc2lvbl9sb2dpbmluZm89ZCxjPSEwKTpjPSExKTpjPSExO2MmJl8udXooYSxiKX19O0J0YT1mdW5jdGlvbihhLGI9e30sYz0hMSl7dmFyIGQ9Xy53KCJFVkVOVF9JRCIpO2QmJihiLmVpfHwoYi5laT1kKSk7YiYmXy51eihhLGIpO2lmKGMpcmV0dXJuITE7UDIoYSk7Yj13aW5kb3c7YT1fLldiKGEse30pO1AyKGEpO2E9Xy5LeihhKTtiPWIubG9jYXRpb247YT1fLmRiKGEpO2EhPT12b2lkIDAmJihiLmhyZWY9YSk7cmV0dXJuITB9O1EyPWZ1bmN0aW9uKGEpe2lmKFRfKF8udygiUExBWUVSX1ZBUlMiLHt9KSkhPSIxIil7YSYmd3JhKCk7dHJ5e3p0YSgpLnRoZW4oKCk9Pnt9LCgpPT57fSksXy5taihRMiwxOEU1KX1jYXRjaChiKXtfLlVpKGIpfX19OwpEdGE9ZnVuY3Rpb24oKXt2YXIgYT13aW5kb3cubG9jYXRpb24uaHJlZjtpZihfLngoImtldmxhcl9kaXNhYmxlX3RoZW1lX3BhcmFtIikpcmV0dXJuIG51bGw7Xy5RYihhKTt0cnl7bGV0IGI9YTAoYSkudGhlbWU7cmV0dXJuIEN0YS5nZXQoYil8fG51bGx9Y2F0Y2goYil7fXJldHVybiBudWxsfTsKUzI9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFIyO2lmKGEuaW50ZXJwcmV0ZXJKYXZhc2NyaXB0KXt2YXIgYz1ZXyhhLmludGVycHJldGVySmF2YXNjcmlwdCk7Yz1fLmxiKGMpLnRvU3RyaW5nKCk7dmFyIGQ9bmV3IFkxO0JaKGQsNixjKTtfLkt3KGIsMSxkLF8ud3opfWVsc2UgYS5pbnRlcnByZXRlclVybCYmKGM9Xy5odyhhLmludGVycHJldGVyVXJsKSxjPV8uVWEoYykudG9TdHJpbmcoKSxkPW5ldyBaMSxCWihkLDQsYyksXy5LdyhiLDIsZCxfLnd6KSk7YS5pbnRlcnByZXRlckhhc2gmJl8uV3goYiwzLEFaKGEuaW50ZXJwcmV0ZXJIYXNoKSwiIixfLnd6KTthLnByb2dyYW0mJl8uV3goYiw0LEFaKGEucHJvZ3JhbSksIiIsXy53eik7YS5nbG9iYWxOYW1lJiZfLld4KGIsNSxBWihhLmdsb2JhbE5hbWUpLCIiLF8ud3opO2EuY2xpZW50RXhwZXJpbWVudHNTdGF0ZUJsb2ImJl8uV3goYiw3LEFaKGEuY2xpZW50RXhwZXJpbWVudHNTdGF0ZUJsb2IpLCIiLF8ud3opO3JldHVybiBifTsKVDI9ZnVuY3Rpb24oYSl7dmFyIGI9e307YT1hLnNwbGl0KCImIik7Zm9yKGxldCBjIG9mIGEpYT1jLnNwbGl0KCI9IiksYS5sZW5ndGg9PT0yJiYoYlthWzBdXT1hWzFdKTtyZXR1cm4gYn07VTI9ZnVuY3Rpb24oYSl7cmV0dXJuIE51bWJlcihhLnQpfHw3MjAwfTtFdGE9YXN5bmMgZnVuY3Rpb24oKXt2YXIgYT13aW5kb3c7YXdhaXQgZjEoVjIoKSk7dmFyIGI9YS5iZ2V2bWM7aWYoIWIpdGhyb3cgRXJyb3IoInplIik7cmV0dXJue3BhdXNlOigpPT57Yi5wKCl9LHJlc3VtZTooKT0+e2IucigpfSxjaGVja0ZvclJlZnJlc2g6KCk9PmIuY3IoKX19O1YyPWZ1bmN0aW9uKCl7cmV0dXJuIF8ueCgiYmdfc3RfaHIiKT8iaGF2dW9rbWhocy0wIjpgaGF2dW9rbWhocy0ke01hdGguZmxvb3IoZ2xvYmFsVGhpcy5wZXJmb3JtYW5jZT8udGltZU9yaWdpbnx8MCl9YH07VzI9ZnVuY3Rpb24oYSl7d2luZG93LmJnZW5zPWF9OwpGdGE9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFByb21pc2UoYT0+e3ZhciBiPXdpbmRvdztiLm50cGV2YXNycyE9PXZvaWQgMD9hKG5ldyBYMihiLm50cGV2YXNycykpOihiLm50cHFmYmVsPT09dm9pZCAwJiYoYi5udHBxZmJlbD1bXSksYi5udHBxZmJlbC5wdXNoKGM9PnthKG5ldyBYMihjKSl9KSl9KX07Ckd0YT1mdW5jdGlvbigpe2lmKF8uc3ooKSl7dmFyIGE9Xy53KCJQTEFZRVJfVkFSUyIse30pO2lmKFRfKGEpIT0iMSImJkcyKGEpIT09IkVNQkVEREVEX1BMQVlFUl9NT0RFX1BGTCIpe3ZhciBiPSgpPT57WTI9ITA7Imdvb2dsZV9hZF9zdGF0dXMiaW4gd2luZG93P18uUWkoIkRDTEtTVEFUIiwxKTpfLlFpKCJEQ0xLU1RBVCIsMil9O3RyeXtsZXQgYz1fLmliKGRvY3VtZW50KTtIMChaMixiLGMpfWNhdGNoKGMpe30kMi5wdXNoKF8uamYucGIoKCk9PntpZighKFkyfHwiZ29vZ2xlX2FkX3N0YXR1cyJpbiB3aW5kb3cpKXt0cnl7RzAoWjIudG9TdHJpbmcoKSxiKX1jYXRjaChjKXt9WTI9ITA7Xy5RaSgiRENMS1NUQVQiLDMpfX0sNUUzKSl9fX07YTM9ZnVuY3Rpb24oKXt2YXIgYT1OdW1iZXIoXy53KCJEQ0xLU1RBVCIsMCkpO3JldHVybiBpc05hTihhKT8wOmF9O2IzPWZ1bmN0aW9uKGEsYil7YS5qPWJ9OwpJdGE9YXN5bmMgZnVuY3Rpb24oYSl7aWYoXy51Lnl0QXRQJiYhXy54KCJ5dGF0cF9rcyIpKXt2YXIgYj1hd2FpdCBfLnUueXRBdFA7ZGVsZXRlIF8udS55dEF0UDt2YXIgYz1iPy5SO3ZhciBkPWI/LlQ7Yj1IdGEoYyk7bGV0IGY9ISFkO2Euby5vKGM/Yj9mPzc6MTA6Zj8xOjg6Zj8yOjksYS52KyspO2lmKCFjfHxiKWM9YXdhaXQgYS5SZihjMyhkLG51bGwpKSxjPUpTT04uc3RyaW5naWZ5KGMpO18udS55dEF0UkM/Xy51Lnl0QXRSQyhjKTpfLklwKEVycm9yKCJBZSIpKX1lbHNlIF8udS55dEF0UkM/Xy5yeChhc3luYygpPT57ZD1fLnUueXRBdFQ7ZGVsZXRlIF8udS55dEF0VDtpZihfLnUueXRBdFJDKXthLm8ubygyLGEudisrKTt2YXIgZj1hd2FpdCBhLlJmKGMzKGQsbnVsbCkpO18udS55dEF0UkMmJl8udS55dEF0UkMoSlNPTi5zdHJpbmdpZnkoZikpfWVsc2UgYS5vLm8oNixhLnYrKyl9LF8uc2ooImF0dF9pbml0X2RlbGF5IiwwKSk6KGQ9Xy51Lnl0QXRULGRlbGV0ZSBfLnUueXRBdFQsCmEuby5vKDEsYS52KyspKTtjPWF3YWl0IEZ0YSgpO2MuYmluZElubmVydHViZUNoYWxsZW5nZUZldGNoZXIoZj0+e2Euby5vKDMsYS52KyspO3JldHVybiBhLlJmKGMzKGQsZikpfSk7Yy5yZWdpc3RlckNoYWxsZW5nZUZldGNoZWRDYWxsYmFjayhmPT57Zj1mLmNoYWxsZW5nZTtpZighZil0aHJvdyBFcnJvcigiQmUiKTtmPXtjaGFsbGVuZ2U6ZixCZjpUMihmKSx2bTplLGJnQ2hhbGxlbmdlOm5ldyBSMn07Zj1Qcm9taXNlLnJlc29sdmUoZik7YS5qPWZ9KTt2YXIgZT1hd2FpdCBmMShWMigpKTtjPWMuZ2V0TGF0ZXN0Q2hhbGxlbmdlUmVzcG9uc2UoKS5jaGFsbGVuZ2U7aWYoIWMpdGhyb3cgRXJyb3IoIkNlIik7cmV0dXJue2NoYWxsZW5nZTpjLEJmOlQyKGMpLHZtOmUsYmdDaGFsbGVuZ2U6bmV3IFIyfX07CmUzPWFzeW5jIGZ1bmN0aW9uKGEpe3ZhciBiPWMzKHZvaWQgMCxXMSgpLmopO3RyeXt2YXIgYz1hd2FpdCBKdGEoYSxiKX1jYXRjaChmKXtyZXR1cm4gXy5JcChFcnJvcigiRGUiKSksZDMoYSw4NjRFNSkse2NoYWxsZW5nZToiIixCZjp7fSx2bTp2b2lkIDAsYmdDaGFsbGVuZ2U6dm9pZCAwfX1iPWMueXo7dmFyIGQ9Yy56ejtkMyhhLFUyKGQpKjFFMyk7YT12b2lkIDA7aWYoImMxYSJpbiBkJiZjLmJnQ2hhbGxlbmdlKXt2YXIgZT1TMihjLmJnQ2hhbGxlbmdlKTt0cnl7YXdhaXQgJDEoVzEoKSxlKX1jYXRjaChmKXtyZXR1cm4gXy5JcChmKSx7Y2hhbGxlbmdlOmIsQmY6ZCx2bTphLGJnQ2hhbGxlbmdlOmV9fXRyeXthPW5ldyBkMih7Y2hhbGxlbmdlOmUsbmc6e21iOiJhR0lmIn19KSxhd2FpdCBhLkNnfWNhdGNoKGYpe18uSXAoZiksYT12b2lkIDB9fXJldHVybntjaGFsbGVuZ2U6YixCZjpkLHZtOmEsYmdDaGFsbGVuZ2U6ZX19OwpKdGE9YXN5bmMgZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9dm9pZCAwLGQ9MDtkPDU7KXtpZihkPjApe2xldCBlPTFFMypNYXRoLnBvdygyLGQtMSkrTWF0aC5yYW5kb20oKSoxRTM7YXdhaXQgbmV3IFByb21pc2UoZj0+e18uWWooKCk9PntmKHZvaWQgMCl9LGUpfSl9dHJ5e2Euby5vKDQsYS52KyspO2xldCBlPWF3YWl0IGEuUmYoYik7cmV0dXJuIEt0YShlKX1jYXRjaChlKXtjPWUsZSBpbnN0YW5jZW9mIEVycm9yJiZfLklwKGUpfWQrK310aHJvdyBjO307ZDM9ZnVuY3Rpb24oYSxiKXt2YXIgYz1EYXRlLm5vdygpK2IsZD1hc3luYygpPT57dmFyIGU9Yy1EYXRlLm5vdygpO2U8MUUzP2F3YWl0IEx0YShhKTpfLllqKGQsTWF0aC5taW4oZSw2RTQpKX07ZCgpfTtmMz1hc3luYyBmdW5jdGlvbihhLGIpe1cyKDIpO3RyeXtsZXQgYz1hd2FpdCBhLm5ldHdvcmsuUmYoYik7Yz9jLmNoYWxsZW5nZSYmIWMuYmdDaGFsbGVuZ2U/VzIoMSk6VzIoNCk6VzIoMyk7cmV0dXJuIGN9Y2F0Y2goYyl7VzIoMyl9fTsKS3RhPWZ1bmN0aW9uKGEpe2lmKCFhKXRocm93IEVycm9yKCJFZSIpO2lmKCFhLmNoYWxsZW5nZSl0aHJvdyBFcnJvcigiRmUiKTt2YXIgYj1hLmNoYWxsZW5nZSxjPVQyKGIpO2lmKCJjMWEiaW4gYyYmKCFhLmJnQ2hhbGxlbmdlfHwhYS5iZ0NoYWxsZW5nZS5wcm9ncmFtKSl0aHJvdyBFcnJvcigiR2UiKTtyZXR1cm57Li4uYSx5ejpiLHp6OmN9fTtMdGE9YXN5bmMgZnVuY3Rpb24oYSl7dmFyIGI9YXdhaXQgUHJvbWlzZS5yYWNlKFthLmosbnVsbF0pLGM9ZTMoYSk7YS5qPWM7Yj8udm0/LmRpc3Bvc2UoKX07TXRhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBQcm9taXNlKGM9PntfLllqKCgpPT57YyhiKCkpfSxhKX0pfTtjMz1mdW5jdGlvbihhLGIpe3ZhciBjPXtlbmdhZ2VtZW50VHlwZToiRU5HQUdFTUVOVF9UWVBFX1VOQk9VTkQifTthJiYoYy5lYWNyVG9rZW49YSk7YiYmKGMuaW50ZXJwcmV0ZXJIYXNoPWIpO3JldHVybiBjfTsKSHRhPWZ1bmN0aW9uKGEpe2lmKCFhfHwhXy54KCJyb3NjYXMiKSlyZXR1cm4hMTt0cnl7dmFyIGI9SlNPTi5wYXJzZShhKX1jYXRjaChjKXtyZXR1cm4hMX1hPWIuY2hhbGxlbmdlO2lmKCFhKXJldHVybiExO2I9VDIoYSk7YT1OdW1iZXIoYi5jKXx8dm9pZCAwO2I9VTIoYik7cmV0dXJuISFhJiZEYXRlLm5vdygpPihhK2IpKjFFM307aDM9ZnVuY3Rpb24oYSl7aWYoYS5sZW5ndGg9PT0xKXJldHVybiBhWzBdO3ZhciBiPWczLlVOS05PV05fSU5URVJGQUNFO2lmKGIpe2I9bmV3IFJlZ0V4cChiKTtmb3IodmFyIGMgb2YgYSlpZihiLmV4ZWMoYykpcmV0dXJuIGN9dmFyIGQ9W107T2JqZWN0LmVudHJpZXMoZzMpLmZvckVhY2goKFtlLGZdKT0+eyJVTktOT1dOX0lOVEVSRkFDRSIhPT1lJiZkLnB1c2goZil9KTtjPW5ldyBSZWdFeHAoZC5qb2luKCJ8IikpO2Euc29ydCgoZSxmKT0+ZS5sZW5ndGgtZi5sZW5ndGgpO2ZvcihsZXQgZSBvZiBhKWlmKCFjLmV4ZWMoZSkpcmV0dXJuIGU7cmV0dXJuIGFbMF19OwpOdGE9ZnVuY3Rpb24oKXt2YXIgYSxiO3JldHVybntFbDpuZXcgaTMoKGMsZCk9PnthPWM7Yj1kfSkscmVzb2x2ZTphLHJlamVjdDpifX07azM9ZnVuY3Rpb24oYSl7cmV0dXJuIGozKGEpP2E6KDAsXy5ibykoYSk/bmV3IGkzKChiLGMpPT57YS50aGVuKGIsYyl9KTpuZXcgaTMoYj0+e2IoYSl9KX07T3RhPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgaTMoKGIsYyk9PntjKGEpfSl9O1B0YT1mdW5jdGlvbihhKXt0cnl7cmV0dXJuIGszKGEoKSl9Y2F0Y2goYil7cmV0dXJuIE90YShiKX19O1F0YT1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IF8uQmYoKGIsYyk9PntsMyhhLGIsYyl9KX07bTM9ZnVuY3Rpb24oYSl7cmV0dXJuIFF0YShhKX07bjM9ZnVuY3Rpb24oYSl7aWYoYS5qPT09ImZ1bGZpbGxlZCIpe3ZhciBiPWEubzthLm89W107YS52PVtdO2Zvcih2YXIgYyBvZiBiKWMoYS5yZXN1bHQpfWVsc2UgaWYoYS5qPT09InJlamVjdGVkIil7Yz1hLnY7YS5vPVtdO2Eudj1bXTtmb3IoYiBvZiBjKWIoYS5lcnJvcil9fTsKbDM9ZnVuY3Rpb24oYSxiLGMpe3ZhciB7RWw6ZCxyZXNvbHZlOmUscmVqZWN0OmZ9PU50YSgpO2Euby5wdXNoKGg9PntpZihiKXRyeXtsZXQgaz1iKGgpO2Uoayl9Y2F0Y2goayl7ZihrKX1lbHNlIGUoaCl9KTthLnYucHVzaChoPT57aWYoYyl0cnl7bGV0IGs9YyhoKTtlKGspfWNhdGNoKGspe2Yoayl9ZWxzZSBmKGgpfSk7bjMoYSk7cmV0dXJuIGR9O1J0YT1mdW5jdGlvbihhLGIpe3JldHVybiBsMyhhLHZvaWQgMCxiKX07bzM9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gU3RhKGIuY2FsbChhKSl9O3AzPWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbiooKXtyZXR1cm4geWllbGR7RWw6azMoYSl9fSgpfTtTdGE9ZnVuY3Rpb24oYSl7cmV0dXJuIFB0YSgoKT0+cTMoYSxhLm5leHQoKSkpfTtxMz1mdW5jdGlvbihhLGIpe3JldHVybiBiLmRvbmU/azMoYi52YWx1ZSk6UnRhKGwzKGIudmFsdWUuRWwsYz0+cTMoYSxhLm5leHQoYykpKSxjPT5xMyhhLGEudGhyb3coYykpKX07ClR0YT1hc3luYyBmdW5jdGlvbigpe3ZhciBhPV8ueSgpLnJlc29sdmUoXy5JeSk7aWYoYSl7aWYoYT1hd2FpdCBhLlFpKHtzaWduYWxTZXJ2aWNlRW5kcG9pbnQ6e3NpZ25hbDoiR0VUX0RBVEFTWU5DX0lEUyJ9fSkpe2lmKGEuZXJyb3JNZXRhZGF0YSl7Xy5JcChFcnJvcigiSGVgIithLmVycm9yTWV0YWRhdGEuc3RhdHVzKyJgIithLmVycm9yKSk7cmV0dXJufXJldHVybiBhLnRJfV8uSXAoRXJyb3IoIkllIikpfWVsc2UgXy5JcChFcnJvcigiSmUiKSl9OwpyMz1mdW5jdGlvbihhLGIpe2lmKGIuZW5jcnlwdGVkVG9rZW5KYXJDb250ZW50cyYmKGEualtiLmVuY3J5cHRlZFRva2VuSmFyQ29udGVudHNdPWIsdHlwZW9mIGIuZXhwaXJhdGlvblNlY29uZHM9PT0ic3RyaW5nIikpe2xldCBjPU51bWJlcihiLmV4cGlyYXRpb25TZWNvbmRzKTtzZXRUaW1lb3V0KCgpPT57ZGVsZXRlIGEualtiLmVuY3J5cHRlZFRva2VuSmFyQ29udGVudHNdfSxjKjFFMyk7YS5vJiZfLk1qKCJDT05TSVNURU5DWSIsYi5lbmNyeXB0ZWRUb2tlbkphckNvbnRlbnRzLGMsdm9pZCAwLCEwKX19O3MzPWZ1bmN0aW9uKGEpe3JldHVybiBhLmxvY2FsU3RvcmFnZT09PXZvaWQgMD9uZXcgXy5lbigieXQtY2xpZW50LWxvY2F0aW9uIik6YS5sb2NhbFN0b3JhZ2V9Owp3Mz1mdW5jdGlvbihhLGI9ITEsYz0hMSl7dmFyIGQ9Xy53KCJJTk5FUlRVQkVfQ09OVEVYVCIpO2lmKCFkKXJldHVybiBfLkdwKEVycm9yKCJNZSIpKSx7fTtkPV8ucWQoZCk7Xy54KCJ3ZWJfbm9fdHJhY2tpbmdfcGFyYW1zX2luX3NoZWxsX2tpbGxzd2l0Y2giKXx8ZGVsZXRlIGQuY2xpY2tUcmFja2luZztkLmNsaWVudHx8KGQuY2xpZW50PXt9KTt2YXIgZT1kLmNsaWVudDtlLmNsaWVudE5hbWU9PT0iTVdFQiImJmUuY2xpZW50Rm9ybUZhY3RvciE9PSJBVVRPTU9USVZFX0ZPUk1fRkFDVE9SIiYmKGUuY2xpZW50Rm9ybUZhY3Rvcj1fLncoIklTX1RBQkxFVCIpPyJMQVJHRV9GT1JNX0ZBQ1RPUiI6IlNNQUxMX0ZPUk1fRkFDVE9SIik7ZS5zY3JlZW5XaWR0aFBvaW50cz13aW5kb3cuaW5uZXJXaWR0aDtlLnNjcmVlbkhlaWdodFBvaW50cz13aW5kb3cuaW5uZXJIZWlnaHQ7ZS5zY3JlZW5QaXhlbERlbnNpdHk9TWF0aC5yb3VuZCh3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MSk7ZS5zY3JlZW5EZW5zaXR5RmxvYXQ9CndpbmRvdy5kZXZpY2VQaXhlbFJhdGlvfHwxO2UudXRjT2Zmc2V0TWludXRlcz0tTWF0aC5mbG9vcigobmV3IERhdGUpLmdldFRpbWV6b25lT2Zmc2V0KCkpO18uSHooKTt2YXIgZj0iVVNFUl9JTlRFUkZBQ0VfVEhFTUVfTElHSFQiO18uQ3ooMTY1KT9mPSJVU0VSX0lOVEVSRkFDRV9USEVNRV9EQVJLIjpfLkN6KDE3NCk/Zj0iVVNFUl9JTlRFUkZBQ0VfVEhFTUVfTElHSFQiOiFfLngoImtldmxhcl9sZWdhY3lfYnJvd3NlcnMiKSYmd2luZG93Lm1hdGNoTWVkaWEmJndpbmRvdy5tYXRjaE1lZGlhKCIocHJlZmVycy1jb2xvci1zY2hlbWUpIikubWF0Y2hlcyYmd2luZG93Lm1hdGNoTWVkaWEoIihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiKS5tYXRjaGVzJiYoZj0iVVNFUl9JTlRFUkZBQ0VfVEhFTUVfREFSSyIpO2Y9RHRhKCl8fGY7ZS51c2VySW50ZXJmYWNlVGhlbWU9ZjtfLngoIndlYl9wcm9wYWdhdGVfdmlzaWJpbGl0eV90b19hcHBsaWNhdGlvbl9zdGF0ZSIpJiZfLnUuZG9jdW1lbnQmJgooZS5hcHBsaWNhdGlvblN0YXRlPV8udS5kb2N1bWVudC52aXNpYmlsaXR5U3RhdGU9PT0iaGlkZGVuIj8iQkFDS0dST1VORCI6IkFDVElWRSIpO2lmKCFiKXtpZihmPV8uU2ooKSllLmNvbm5lY3Rpb25UeXBlPWY7Xy54KCJ3ZWJfbG9nX2VmZmVjdGl2ZV9jb25uZWN0aW9uX3R5cGUiKSYmKGY9Xy5VaigpKSYmKGQuY2xpZW50LmVmZmVjdGl2ZUNvbm5lY3Rpb25UeXBlPWYpfV8ueCgid2ViX2xvZ19tZW1vcnlfdG90YWxfa2J5dGVzIikmJl8udS5uYXZpZ2F0b3I/LmRldmljZU1lbW9yeSYmKGQuY2xpZW50Lm1lbW9yeVRvdGFsS2J5dGVzPWAke18udS5uYXZpZ2F0b3I/LmRldmljZU1lbW9yeSoxRTZ9YCk7aWYoXy54KCJ3ZWJfZ2NmX2hhc2hlc19pbm5lcnR1YmUiKSl7dmFyIGg9Xy5qbSgpO2lmKGgpe2Y9aC5jb2xkQ29uZmlnRGF0YTtsZXQgbj1oLmNvbGRIYXNoRGF0YTtoPWguaG90SGFzaERhdGE7ZC5jbGllbnQuY29uZmlnSW5mbz1kLmNsaWVudC5jb25maWdJbmZvfHx7fTtmJiYKKGQuY2xpZW50LmNvbmZpZ0luZm8uY29sZENvbmZpZ0RhdGE9Zik7biYmKGQuY2xpZW50LmNvbmZpZ0luZm8uY29sZEhhc2hEYXRhPW4pO2gmJihkLmNsaWVudC5jb25maWdJbmZvLmhvdEhhc2hEYXRhPWgpfX1mPWEwKF8udS5sb2NhdGlvbi5ocmVmKTshXy54KCJ3ZWJfcG9wdWxhdGVfaW50ZXJuYWxfZ2VvX2tpbGxzd2l0Y2giKSYmZi5pbnRlcm5hbGNvdW50cnljb2RlJiYoZS5pbnRlcm5hbEdlbz1mLmludGVybmFsY291bnRyeWNvZGUpO2UuY2xpZW50TmFtZT09PSJNV0VCInx8ZS5jbGllbnROYW1lPT09IldFQiI/KGUubWFpbkFwcFdlYkluZm98fChlLm1haW5BcHBXZWJJbmZvPXt9KSxlLm1haW5BcHBXZWJJbmZvLmdyYWZ0VXJsPV8udS5sb2NhdGlvbi5ocmVmLF8ueCgia2V2bGFyX3dvZmZsZSIpJiZ0My5pbnN0YW5jZSYmKGY9dDMuaW5zdGFuY2UsZS5tYWluQXBwV2ViSW5mby5wd2FJbnN0YWxsYWJpbGl0eVN0YXR1cz0hZi5qJiZmLm8/IlBXQV9JTlNUQUxMQUJJTElUWV9TVEFUVVNfQ0FOX0JFX0lOU1RBTExFRCI6CiJQV0FfSU5TVEFMTEFCSUxJVFlfU1RBVFVTX1VOS05PV04iKSxlLm1haW5BcHBXZWJJbmZvLndlYkRpc3BsYXlNb2RlPV8uT2ooKSxlLm1haW5BcHBXZWJJbmZvLmlzV2ViTmF0aXZlU2hhcmVBdmFpbGFibGU9bmF2aWdhdG9yJiZuYXZpZ2F0b3Iuc2hhcmUhPT12b2lkIDApOmUuY2xpZW50TmFtZT09PSJUVkhUTUw1IiYmKCFfLngoIndlYl9scl9hcHBfcXVhbGl0eV9raWxsc3dpdGNoIikmJihmPV8udygiTElWSU5HX1JPT01fQVBQX1FVQUxJVFkiKSkmJihlLnR2QXBwSW5mbz1PYmplY3QuYXNzaWduKGUudHZBcHBJbmZvfHx7fSx7YXBwUXVhbGl0eTpmfSkpLGY9Xy53KCJMSVZJTkdfUk9PTV9DRVJUSUZJQ0FUSU9OX1NDT1BFIikpJiYoZS50dkFwcEluZm89T2JqZWN0LmFzc2lnbihlLnR2QXBwSW5mb3x8e30se2NlcnRpZmljYXRpb25TY29wZTpmfSkpO2lmKCFfLngoIndlYl9wb3B1bGF0ZV90aW1lX3pvbmVfaXRjX2tpbGxzd2l0Y2giKSl7YTp7aWYodHlwZW9mIEludGwhPT0idW5kZWZpbmVkIil0cnl7dmFyIGs9CihuZXcgSW50bC5EYXRlVGltZUZvcm1hdCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmU7YnJlYWsgYX1jYXRjaHt9az12b2lkIDB9ayYmKGUudGltZVpvbmU9ayl9KGs9Xy53KCJFWFBFUklNRU5UU19UT0tFTiIsIiIpKT9lLmV4cGVyaW1lbnRzVG9rZW49azpkZWxldGUgZS5leHBlcmltZW50c1Rva2VuO2U9Xy51aigpO3UzLmluc3RhbmNlfHwodTMuaW5zdGFuY2U9bmV3IHUzKTtrPV8uWngodTMuaW5zdGFuY2Uuaik7ZC5yZXF1ZXN0PXsuLi5kLnJlcXVlc3QsaW50ZXJuYWxFeHBlcmltZW50RmxhZ3M6ZSxjb25zaXN0ZW5jeVRva2VuSmFyczprfTshXy54KCJ3ZWJfcHJlcXVlc3RfY29udGV4dF9raWxsc3dpdGNoIikmJihlPV8udygiSU5ORVJUVUJFX0NPTlRFWFRfUFJFUVVFU1RfQ09OVEVYVCIpKSYmKGQucmVxdWVzdC5leHRlcm5hbFByZXF1ZXN0Q29udGV4dD1lKTtrPV8uSHooKTtlPV8uQ3ooNTgpO2s9ay5nZXQoImdzbWwiLCIiKTtkLnVzZXI9ey4uLmQudXNlcn07ZSYmKGQudXNlci5lbmFibGVTYWZldHlNb2RlPQplKTtrJiYoZC51c2VyLmxvY2tlZFNhZmV0eU1vZGU9ITApO18ueCgid2FybV9vcF9jc25fY2xlYW51cCIpP2MmJihiPV8uaXEoKSkmJihkLmNsaWVudFNjcmVlbk5vbmNlPWIpOiFiJiYoYj1fLmlxKCkpJiYoZC5jbGllbnRTY3JlZW5Ob25jZT1iKTthJiYoZC5jbGlja1RyYWNraW5nPXtjbGlja1RyYWNraW5nUGFyYW1zOmF9KTtpZihhPV8uc2EoInl0Lm1keC5yZW1vdGUucmVtb3RlQ2xpZW50XyIpKWQucmVtb3RlQ2xpZW50PWE7djMuamMoKS5zZXRMb2NhdGlvbk9uSW5uZXJUdWJlQ29udGV4dChkKTt0cnl7dmFyIGw9Xy5saigpLG09bC5iaWQ7ZGVsZXRlIGwuYmlkO2QuYWRTaWduYWxzSW5mbz17cGFyYW1zOltdLGJpZDptfTtmb3IobGV0IFtuLHBdb2YgT2JqZWN0LmVudHJpZXMobCkpbD1uLG09cCxkLmFkU2lnbmFsc0luZm8ucGFyYW1zPy5wdXNoKHtrZXk6bCx2YWx1ZTpgJHttfWB9KTtpZihkLmNsaWVudD8uY2xpZW50TmFtZT09PSJUVkhUTUw1Inx8ZC5jbGllbnQ/LmNsaWVudE5hbWU9PT0KIlRWSFRNTDVfVU5QTFVHR0VEIil7bGV0IG49Xy53KCJJTk5FUlRVQkVfQ09OVEVYVCIpO24uYWRTaWduYWxzSW5mbyYmKGQuYWRTaWduYWxzSW5mby5hZHZlcnRpc2luZ0lkPW4uYWRTaWduYWxzSW5mby5hZHZlcnRpc2luZ0lkLGQuYWRTaWduYWxzSW5mby5hZHZlcnRpc2luZ0lkU2lnbmFsVHlwZT0iREVWSUNFX0lEX1RZUEVfQ09OTkVDVEVEX1RWX0lGQSIsZC5hZFNpZ25hbHNJbmZvLmxpbWl0QWRUcmFja2luZz1uLmFkU2lnbmFsc0luZm8ubGltaXRBZFRyYWNraW5nLG4uYWRTaWduYWxzSW5mby5hdFRyYWNraW5nTWFuYWdlckF1dGhvcml6YXRpb25TdGF0dXMhPT12b2lkIDAmJihkLmFkU2lnbmFsc0luZm8uYXRUcmFja2luZ01hbmFnZXJBdXRob3JpemF0aW9uU3RhdHVzPW4uYWRTaWduYWxzSW5mby5hdFRyYWNraW5nTWFuYWdlckF1dGhvcml6YXRpb25TdGF0dXMpKX19Y2F0Y2gobil7Xy5HcChuKX1yZXR1cm4gZH07ClV0YT1mdW5jdGlvbihhLGIpe2lmKCFhKXJldHVybiExO3ZhciBjPV8uQihhLF8uenopPy5zaWduYWw7aWYoYyYmYi5IZClyZXR1cm4hIWIuSGRbY107aWYoKGM9Xy5CKGEsXy5BeSk/LnJlcXVlc3QpJiZiLlZnKXJldHVybiEhYi5WZ1tjXTtmb3IobGV0IGQgaW4gYSlpZihiLkZpW2RdKXJldHVybiEwO3JldHVybiExfTsKeDM9ZnVuY3Rpb24oYSl7dmFyIGI9eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn07Xy53KCJFT01fVklTSVRPUl9EQVRBIik/YlsiWC1Hb29nLUVPTS1WaXNpdG9yLUlkIl09Xy53KCJFT01fVklTSVRPUl9EQVRBIik6Xy53KCJWSVNJVE9SX0RBVEEiKSYmKGJbIlgtR29vZy1WaXNpdG9yLUlkIl09Xy53KCJWSVNJVE9SX0RBVEEiKSk7YlsiWC1Zb3V0dWJlLUJvb3RzdHJhcC1Mb2dnZWQtSW4iXT1fLncoIkxPR0dFRF9JTiIsITEpO18udygiREVCVUdfU0VUVElOR1NfTUVUQURBVEEiKSYmKGJbIlgtRGVidWctU2V0dGluZ3MtTWV0YWRhdGEiXT1fLncoIkRFQlVHX1NFVFRJTkdTX01FVEFEQVRBIikpO2EhPT0iY29ycyImJigoYT1fLncoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9OQU1FIikpJiYoYlsiWC1Zb3V0dWJlLUNsaWVudC1OYW1lIl09YSksKGE9Xy53KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfVkVSU0lPTiIpKSYmKGJbIlgtWW91dHViZS1DbGllbnQtVmVyc2lvbiJdPQphKSwoYT1fLncoIkNIUk9NRV9DT05ORUNURURfSEVBREVSIikpJiYoYlsiWC1Zb3V0dWJlLUNocm9tZS1Db25uZWN0ZWQiXT1hKSwoYT1fLncoIkRPTUFJTl9BRE1JTl9TVEFURSIpKSYmKGJbIlgtWW91dHViZS1Eb21haW4tQWRtaW4tU3RhdGUiXT1hKSwoYT12My5qYygpLmdldFhHZW9IZWFkZXI/LigpKSYmKGJbIlgtR2VvIl09YSkpOyhhPV8udygiU0VSSUFMSVpFRF9MQVZBX0RFVklDRV9DT05URVhUIikpJiYoYlsiWC1Zb3VUdWJlLUxhdmEtRGV2aWNlLUNvbnRleHQiXT1hKTtyZXR1cm4gYn07eTM9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pm5ldyBhfTsKVnRhPWZ1bmN0aW9uKGEsYixjLGQpe2lmKHozLmluc3RhbmNlIT09dm9pZCAwKXtpZihkPXozLmluc3RhbmNlLGE9W2EhPT1kLnYsYiE9PWQuU2EsYyE9PWQubywhMSwhMSwhMSwhMV0sYS5zb21lKGU9PmUpKXRocm93IG5ldyBfLlhqKCJJbm5lclR1YmVUcmFuc3BvcnRTZXJ2aWNlIGlzIGFscmVhZHkgaW5pdGlhbGl6ZWQiLGEpO31lbHNlIHozLmluc3RhbmNlPW5ldyB6MyhhLGIsYyxkKX07Cll0YT1mdW5jdGlvbihhLGIpe3ZhciBjPWAveW91dHViZWkvdjEvJHtoMyhXdGEpfWAsZD17UmQ6e2lkZW50aXR5OkEzfX07aWYoXy54KCJtYXdfbmV0d29ya19tYWNoaW5lX3Jhd19yZXF1ZXN0Iil8fF8ueCgiYWxsX3dlYl9uZXR3b3JrX21hY2hpbmVfcmF3X3JlcXVlc3QiKSl7bGV0IGY9Xy55KCkucmVzb2x2ZShfLkluKEIzKSk/LigpO2lmKGYpcmV0dXJuIG0zKFh0YShmLHtpbm5lclR1YmVSZXF1ZXN0OmIsYXBpUGF0aDpjLGNsaWNrVHJhY2tpbmdQYXJhbXM6dm9pZCAwLGNvbmZpZzpkLGluY2x1ZGVDdXJyZW50U2NyZWVuTm9uY2U6ITB9KSkudGhlbihoPT5oLCgpPT57fSl9dmFyIGU9KCk9Pnt9O2U9dzAodjAoYykpO2IuY29udGV4dHx8KGIuY29udGV4dD13Myh2b2lkIDAsITApKTtyZXR1cm4gbmV3IF8uQmYoYXN5bmMgZj0+e3ZhciBoPVkwKGMpO2g9Xy5maihoKT8ic2FtZS1vcmlnaW4iOiJjb3JzIjtoPWEuby56bj9DMyhkLGgpOmF3YWl0IEQzKGQsaCk7dmFyIGs9WDAoWTAoYykpOwprPXtpbnB1dDprLHdiOlowKGspLGlubmVyVHViZVJlcXVlc3Q6Yixjb25maWc6ZH07ZihFMyhhLGssaCxlKSl9KX07WnRhPWZ1bmN0aW9uKGEsYil7YTp7YT1hLnY7dmFyIGM9Xy5CKGIsXy56eik/LnNpZ25hbDtpZihjJiZhLkhkJiYoYz1hLkhkW2NdKSl7dmFyIGQ9YygpO2JyZWFrIGF9aWYoKGM9Xy5CKGIsXy5BeSk/LnJlcXVlc3QpJiZhLlZnJiYoYz1hLlZnW2NdKSl7ZD1jKCk7YnJlYWsgYX1mb3IoZCBpbiBiKWlmKGEuRmlbZF0mJihiPWEuRmlbZF0pKXtkPWIoKTticmVhayBhfWQ9dm9pZCAwfWlmKGQhPT12b2lkIDApcmV0dXJuIFByb21pc2UucmVzb2x2ZShkKX07QzM9ZnVuY3Rpb24oYSxiKXthPV8uUGooe3Nlc3Npb25JbmRleDphPy5SZD8uc2Vzc2lvbkluZGV4fSk7cmV0dXJuey4uLngzKGIpLC4uLmF9fTsKRDM9YXN5bmMgZnVuY3Rpb24oYSxiKXthPWF3YWl0IF8uS3koXy5Qaih7c2Vzc2lvbkluZGV4OmE/LlJkPy5zZXNzaW9uSW5kZXh9KSk7cmV0dXJuIFByb21pc2UucmVzb2x2ZSh7Li4ueDMoYiksLi4uYX0pfTsKRTM9YXN5bmMgZnVuY3Rpb24oYSxiLGMsZD0oKT0+e30pe2F3YWl0ICR0YShiKTt2YXIgZT1iLmNvbmZpZz8ucmVxdWVzdEtleTtpZihlJiZhLmouaGFzKGUpKXZhciBmPWEuai5nZXQoZSk7ZWxzZSBmPUpTT04uc3RyaW5naWZ5KGIuaW5uZXJUdWJlUmVxdWVzdCksYi53Yj17Li4uYi53YixoZWFkZXJzOnsuLi4oYi53Yj8uaGVhZGVycz8/e30pLC4uLmN9fSxjPXsuLi5iLndifSxiLndiLm1ldGhvZD09PSJQT1NUIiYmKGM9ey4uLmMsYm9keTpmfSksYi5jb25maWc/LmtuJiZfLkFxKGIuY29uZmlnLmtuKSxmPWEuU2EuZmV0Y2goYi5pbnB1dCxjLGIuY29uZmlnKSxlJiZhLmouc2V0KGUsZik7aWYoKGY9YXdhaXQgZikmJiJlcnJvciJpbiBmJiZmPy5lcnJvcj8uZGV0YWlscyl7Yz1mLmVycm9yLmRldGFpbHM7Zm9yKGxldCBoIG9mIGMpKGM9aFsiQHR5cGUiXSkmJmF1YS5pbmRleE9mKGMpPi0xJiYoZGVsZXRlIGhbIkB0eXBlIl0sZj1oKX1lJiZhLmouaGFzKGUpJiZhLmouZGVsZXRlKGUpOwpiLmNvbmZpZz8ucG4mJl8uQXEoYi5jb25maWcucG4pO2J1YShhLGYsYik7Yi5jb25maWc/Lkl6JiZfLkFxKGIuY29uZmlnLkl6KTtkKCk7cmV0dXJuIGZ8fHZvaWQgMH07JHRhPWFzeW5jIGZ1bmN0aW9uKGEpe2lmKGE/LmlubmVyVHViZVJlcXVlc3Q/LmNvbnRleHQpe2E9YS5pbm5lclR1YmVSZXF1ZXN0LmNvbnRleHQ7Zm9yKGxldCBiIG9mW10pYXdhaXQgYi5CcihhKX19O2J1YT1mdW5jdGlvbihhLGIsYyl7aWYoYiYmIWI/LnNlcXVlbmNlTWV0YURhdGE/LnNraXBQcm9jZXNzaW5nJiZhLkIpZm9yKGxldCBkIG9mIEYzKWEuQltkXSYmYS5CW2RdLmhhbmRsZVJlc3BvbnNlKGIsYyl9O2N1YT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIG8zKGEsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIGQ9Xy5LeShfLlBqKHtzZXNzaW9uSW5kZXg6Yj8uUmQ/LnNlc3Npb25JbmRleH0pKTtkPXlpZWxkKnAzKGszKGQpKTtyZXR1cm57Li4ueDMoYyksLi4uZH19KCl9KX07CkczPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09MXx8YT09PTJ9O2R1YT1mdW5jdGlvbihhLGIsYz0hMSl7dmFyIGQsZT1fLkIoYixfLkF5KT8ucmVxdWVzdDtlJiZhLmouVmcmJihkPWEuai5WZ1tlXSk7ZHx8Y3x8KGU9Xy5CKGIsXy56eik/LnNpZ25hbCkmJmEuai5IZCYmKGQ9YS5qLkhkW2VdKTtpZighZCYmKGE9Yz9hLmouYUw6YS5qLkZpKSlmb3IobGV0IGYgaW4gYilpZihhW2ZdKXtkPWFbZl07YnJlYWt9aWYoIWQpe2lmKGMpdGhyb3cgRXJyb3IoIlFlIik7dGhyb3cgRXJyb3IoIlJlIik7fWI9ZCgpO3JldHVybiBrMyhiKX07ZXVhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEucnVuKCJDT01NQU5EX0lOSVQiLGIpfTtYdGE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5ydW4oIlJFUVVFU1RfSU5JVCIsYil9O0gzPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEucnVuKCJQUk9DRVNTX1JFU1BPTlNFIixiLCJSZXNwb25zZU1hY2hpbmUgKENhY2hlKSIpfTsKSTM9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBhLnJ1bigiSU5JVCIsYixjIT09dm9pZCAwP2BSZXNwb25zZU1hY2hpbmUgKENodW5rICR7Y30pYDoiUmVzcG9uc2VNYWNoaW5lIil9OwpmdWE9ZnVuY3Rpb24oKXt2YXIgYT1fLnkoKTtfLkp6KGEse2phOkozLFdjOigpPT5uZXcgTWFwfSk7Xy5KeihhLHtqYTpLMyxQYTpLMyxnYjohMH0pO18uSnooYSx7amE6TDMsUGE6TDMsZ2I6ITB9KTtfLkp6KGEse2phOk0zLFBhOk0zLGdiOiEwfSk7Xy5KeihhLHtqYTpOMyxQYTpOMyxnYjohMH0pO18uSnooYSx7amE6TzMsUGE6TzMsZ2I6ITB9KTtfLkp6KGEse2phOlAzLFBhOlAzLGdiOiEwfSk7Xy5KeihhLHtqYTpRMyxQYTpRMyxnYjohMH0pO18uSnooYSx7amE6UjMsUGE6UjMsZ2I6ITB9KTtfLkp6KGEse2phOlMzLFBhOlMzLGdiOiEwfSk7Xy5KeihhLHtqYTpUMyxQYTpUMyxnYjohMH0pO18uSnooYSx7amE6VTMsV2M6KGIsYyxkLGUsZixoLGssbCxtLG4pPT4oe0NPTU1BTkRfSU5JVDpsLFJFUVVFU1RfSU5JVDptLENBQ0hFOmMsTE9DQUxfUk9VVEVSOmssQ09OVEVYVDpkLEFVVEg6YixERURVUEU6ZSxGRVRDSDpoLFJFVFJZOm4sRkFMTEJBQ0s6Zn0pLFtfLkxuXTpbSzMsTDMsCk0zLE4zLE8zLFAzLFEzLFIzLFMzLFQzXSxnYjohMH0pO18uSnooYSx7amE6QjMsV2M6Yj0+KCk9Pm5ldyBWMyhiKSxbXy5Mbl06W1UzXSxnYjohMH0pO18uSnooYSx7amE6VzMsUGE6VzMsZ2I6ITB9KTtfLkp6KGEse2phOlgzLFBhOlgzLGdiOiEwfSk7Xy5KeihhLHtqYTpZMyxQYTpZMyxnYjohMH0pO18uSnooYSx7amE6WjMsUGE6WjMsZ2I6ITB9KTtfLkp6KGEse2phOiQzLFdjOihiLGMsZCxlKT0+KHtJTklUOmUsRVJST1JfVU5QQUNLRVI6YyxQUk9DRVNTX1JFU1BPTlNFOmQsQ0FMTEJBQ0tfRElTUEFUQ0hFUjpifSksW18uTG5dOltXMyxYMyxZMyxaM10sZ2I6ITB9KTtfLkp6KGEse2phOmE0LFdjOmI9PigpPT5uZXcgYjQoYiksW18uTG5dOlskM10sZ2I6ITB9KX07Cmd1YT1mdW5jdGlvbigpe18ucmEoInl0LmxvZ2dpbmcuZXJyb3JzLmxvZyIsXy5HcCk7S3JhKCk7Xy56byhfLkJvKCkse30pO3dpbmRvdy5vbmVycm9yPUpyYTtfLlVmPW8wO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ1bmhhbmRsZWRyZWplY3Rpb24iLGE9PntpZihhLnJlYXNvbiBpbnN0YW5jZW9mIEVycm9yKXtsZXQgYj1hLnJlYXNvbjtfLmN3KGIse3NvdXJjZToidW5oYW5kbGVkcmVqZWN0aW9uIn0pO2IubmFtZT09PSJBYm9ydEVycm9yIiYmKGIubGV2ZWw9IldBUk5JTkciKX1vMChhLnJlYXNvbik7YS5wcmV2ZW50RGVmYXVsdCgpfSl9O2M0PWZ1bmN0aW9uKCl7dHJ5e3JldHVybiEhc2VsZi5zZXNzaW9uU3RvcmFnZX1jYXRjaHtyZXR1cm4hMX19O2Q0PWZ1bmN0aW9uKGEpe2E9YS5tYXRjaCgvKC4qKTo6Lio6Oi4qLyk7aWYoYSE9PW51bGwpcmV0dXJuIGFbMV19OwplND1mdW5jdGlvbihhKXtpZihjNCgpKXt2YXIgYj1PYmplY3Qua2V5cyh3aW5kb3cuc2Vzc2lvblN0b3JhZ2UpO2ZvcihsZXQgYyBvZiBiKWI9ZDQoYyksYj09PXZvaWQgMHx8YS5pbmNsdWRlcyhiKXx8c2VsZi5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKGMpfX07aHVhPWZ1bmN0aW9uKCl7aWYoIWM0KCkpcmV0dXJuITE7dmFyIGE9Xy5WaigpLGI9T2JqZWN0LmtleXMod2luZG93LnNlc3Npb25TdG9yYWdlKTtmb3IobGV0IGMgb2YgYilpZihiPWQ0KGMpLGIhPT12b2lkIDAmJmIhPT1hKXJldHVybiEwO3JldHVybiExfTtmND1mdW5jdGlvbigpe1R0YSgpLnRoZW4oYT0+e2EmJihnMChhKSxjMShhKSxhMShhKSxlNChhKSl9KX07Cml1YT1mdW5jdGlvbigpe3ZhciBhPW5ldyBfLk9zO18uamYucGIoYXN5bmMoKT0+e2lmKCFfLngoInl0aWRiX2NsZWFyX29wdGltaXphdGlvbnNfa2lsbHN3aXRjaCIpKXt2YXIgYj1fLlZqKCJjbGVhciIpO2lmKGIuc3RhcnRzV2l0aCgiViIpJiZiLmVuZHNXaXRoKCJ8fCIpKXtiPVtiXTtnMChiKTtjMShiKTthMShiKTtlNChiKTtyZXR1cm59Yj1kc2EoKTtsZXQgYz1odWEoKSxkPWF3YWl0IGVzYSgpLGU9YXdhaXQgRXJhKCk7aWYoIShifHxjfHxkfHxlKSlyZXR1cm59YS5TYigpP2Y0KCk6Xy5iZihhLCJwdWJsaWN5dG5ldHdvcmtzdGF0dXMtb25saW5lIixmNCl9KX07anVhPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgUHJvbWlzZShiPT57d2luZG93LnNldFRpbWVvdXQoYixhKX0pfTsKWXNhPWFzeW5jIGZ1bmN0aW9uKGEsYixjKXtfLlR6KCJhdHRlc3RhdGlvbl9jaGFsbGVuZ2VfZmV0Y2giKTtfLkFxKCJhdHRfZnMiLHZvaWQgMCwiYXR0ZXN0YXRpb25fY2hhbGxlbmdlX2ZldGNoIik7aWYoIWEuail0aHJvdyBuZXcgczIoOSwiTWlzc2luZyBmZXRjaGVyIik7dmFyIGQ9YXdhaXQgYS5qKGIsYyk7Yj1kPy5iZ0NoYWxsZW5nZTtpZighYil0aHJvdyBuZXcgczIoMTUsIk1pc3NpbmcgZmllbGQiKTthLm89ZDthLnYuZm9yRWFjaChlPT57ZShkKX0pO2E9UzIoYik7Xy5BcSgiYXR0X2ZjIix2b2lkIDAsImF0dGVzdGF0aW9uX2NoYWxsZW5nZV9mZXRjaCIpO18uU3ooImF0dGVzdGF0aW9uX2NoYWxsZW5nZV9mZXRjaCIpO3JldHVybiBhfTsKaHRhPWFzeW5jIGZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPW5ldyBCMSgxMDAsM0U1LC4yNSwyKSxkPXZvaWQgMDtjLnY8MTA7KXRyeXtyZXR1cm4gYy52PjAmJmF3YWl0IGp1YShjLmopLGF3YWl0IGt1YShhLGIpfWNhdGNoKGUpe2Q9ZSBpbnN0YW5jZW9mIHMyP2U6bmV3IHMyKDksZSBpbnN0YW5jZW9mIEVycm9yP2UubWVzc2FnZToiVW5rbm93biIpLEMxKGMpfWlmKGQpdGhyb3cgZDt0aHJvdyBuZXcgczIoOSwiVW5rbm93biBlcnJvciIpO307Cmt1YT1mdW5jdGlvbihhLGIpe2I9V3NhKFhzYShuZXcgbHVhLGIpLGEucmVxdWVzdEtleSk7dmFyIGM9bmV3IF8uY3MsZD1hLkQoKTtkLm9wZW4oIlBPU1QiLGEuQik7ZC5zZXRSZXF1ZXN0SGVhZGVyKCJYLUdvb2ctQXBpLUtleSIsIkFJemFTeUR5VDVXMEpoNDlGMzBQcXF0eWZkZjdwRExGS0xKb0FudyIpO2Quc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbitwcm90b2J1ZiIpO2Qub25sb2FkPSgpPT57aWYoXy5xaihkKSl7bGV0IGU9bXVhKGQucmVzcG9uc2VUZXh0KTtjLnJlc29sdmUoZSl9ZWxzZSBjLnJlamVjdChuZXcgczIoUDEoXy5waihkKSksZC5zdGF0dXNUZXh0KSl9O2Qub25lcnJvcj0oKT0+e2MucmVqZWN0KG5ldyBzMihQMShfLnBqKGQpKSxkLnN0YXR1c1RleHQpKX07ZC5zZW5kKGIuc2VyaWFsaXplKCkpO3JldHVybiBjLnByb21pc2V9OwpudWE9ZnVuY3Rpb24oYSl7dmFyIGI9e2JpY2Y6ZD0+e2Euaj1kfSxibGM6KCk9PmEuZ2V0TGF0ZXN0Q2hhbGxlbmdlUmVzcG9uc2UoKSxiY3I6ZD0+e2Eudi5wdXNoKGQpfX0sYz13aW5kb3c7Yy5udHBldmFzcnM9YjtpZihjLm50cHFmYmVsIT09dm9pZCAwKWZvcihsZXQgZCBvZiBjLm50cHFmYmVsKWQoYik7Yy5udHBxZmJlbD12b2lkIDB9O2c0PWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBFcnJvcil7dmFyIGI9Xy5zYSgieXQubG9nZ2luZy5lcnJvcnMubG9nIik7YiYmYihhLCJXQVJOSU5HIil9fTtpND1mdW5jdGlvbihhLGIpe2E9bmV3IG91YShhLGIpO3B1YShhKTtiPy5DSXx8aDQoYSl9OwpwdWE9ZnVuY3Rpb24oYSl7aWYoIWEudm0pe3ZhciBiPXttYXhBdHRlbXB0czo1LEZyOmEudHRsU2Vjb25kcyoxRTN9O2EuWGcueXRjc2k/LnRpY2s/LigicG90X2lzdCIpO2Eudm09YS5Icyh7b2Q6YS5vZCxuZzp7ZGlzYWJsZTpfLngoImh0bWw1X3dlYl9wb19kaXNhYmxlX3JlbW90ZV9sb2dnaW5nIiksbWI6ImFHSWYiLFN2OnpyYSgpLEt5Ol8ueCgid3BvX2Rpc19sZmRtcyIpPzA6MUUzLElnOmQ9Pnt2YXIgZT1qNC5nZXQoZCk7ZXx8KGU9bmV3IHF1YShkKSxlPW5ldyBUMShlKSxqNC5zZXQoZCxlKSk7cmV0dXJuIGV9fSxMZzpiLHN4OmEuYmdDaGFsbGVuZ2UsRWo6ZzR9KTthLmo9RGF0ZS5ub3coKTtmMihhLnZtLCgpPT57YS5qPURhdGUubm93KCl9KTthLlhnLmJnZXZtYz17cDooKT0+e2Eudm0/LnBhdXNlKCl9LHI6KCk9PnthLnZtPy5yZXN1bWUoKX0sY3I6KCk9PmEudm0/LmNoZWNrRm9yUmVmcmVzaCgpPz9Qcm9taXNlLnJlc29sdmUoKX07a3NhKGEudm0sYXN5bmMoKT0+aDQoYSksClYyKCkpO3ZhciBjPWEudi5iaW5kKGEpO2EueW0mJmEudHRsU2Vjb25kcz4wJiZhLnltLnRoZW4oZD0+e2QubGlzdGVuKCJwdWJsaWN5dG5ldHdvcmtzdGF0dXMtb25saW5lIixjKX0pO2EuR3IoYyl9fTtoND1mdW5jdGlvbihhKXtpZihhLm8pcmV0dXJuIGEubztpZighYS52bSl0aHJvdyBFcnJvcigiVGUiKTthLm89bmV3IHJ1YSh7dm06YS52bSxvZDphLm9kLFFuOiEwLG9uRXJyb3I6ZzQsTGc6YS5Kc30pO3JldHVybiBhLm99O2s0PWZ1bmN0aW9uKGEpe3RyeXtsZXQgYj1KU09OLnBhcnNlKGEpO2lmKGIuYmdDaGFsbGVuZ2UpcmV0dXJuIGJ9Y2F0Y2goYil7fX07CnN1YT1mdW5jdGlvbihhPXdpbmRvdyl7dmFyIGI9e30sYz1hLnl0QXRSO2I/LmtxPy5EcigpO2lmKGMpe2lmKGM9azQoYykpYj8ua3E/LnpnKCJTVUNDRVNTIiksaTQoYyxiKTthLnl0QXRSPXZvaWQgMH1lbHNlIGEueXRBdFJDPWQ9PntpZihkPWs0KGQpKWI/LmtxPy56ZygiU1VDQ0VTUyIpLGk0KGQsYiksYS55dEF0UkM9dm9pZCAwfX07CnR1YT1mdW5jdGlvbihhLGIsYyxkLGUsZil7Yz8oYS5TKDIpLEgwKHkwKGMpLCgpPT57d2luZG93LnRyYXlyaWRlP2w0KGEsZCxlKTooYS5TKDMpLEUwKGMpLF8uSXAobmV3IF8uWGooIkJMOlVMQiIsYCR7Y31gKSkpfSxmKSk6Yj8oZj1fLkNkKCJTQ1JJUFQiKSxiIGluc3RhbmNlb2YgXy5qYj9fLm5iKGYsYik6Zi50ZXh0Q29udGVudD1iLGYubm9uY2U9Xy5pYihkb2N1bWVudCksZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChmKSxkb2N1bWVudC5oZWFkLnJlbW92ZUNoaWxkKGYpLHdpbmRvdy50cmF5cmlkZT9sNChhLGQsZSk6KGEuUyg0KSxfLklwKG5ldyBfLlhqKCJCTDpVTEJKIikpKSk6Xy5JcChuZXcgXy5YaigiQkw6VUxWIikpfTsKbDQ9ZnVuY3Rpb24oYSxiLGMpe2EuUyg1KTt2YXIgZD0hIWEuaiYmdXVhLmluY2x1ZGVzKF8uUGIoYS5qKXx8IiIpO3RyeXtsZXQgZT1uZXcgZDIoe3Byb2dyYW06YixnbG9iYWxOYW1lOiJ0cmF5cmlkZSIsbmc6e2Rpc2FibGU6IV8ueCgiYXR0X3dlYl9yZWNvcmRfbWV0cmljcyIpfHwhXy54KCJhdHRfc2tpcF9tZXRyaWNzX2Zvcl9jb29raWVsZXNzX2RvbWFpbnNfa3MiKSYmZCxtYjoiYUdJZiJ9fSk7ZS5DZy50aGVuKCgpPT57YS5TKDYpO2MmJmMoYil9KTthLm8oZSl9Y2F0Y2goZSl7YS5TKDcpLGUgaW5zdGFuY2VvZiBFcnJvciYmXy5JcChlKX19O200PWZ1bmN0aW9uKCl7dmFyIGE9Xy5zYSgieXQuYWJ1c2UucGxheWVyQXR0TG9hZGVyIik7cmV0dXJuIGEmJlsiYmd2bWEiLCJiZ3ZtYiIsImJndm1jIl0uZXZlcnkoYj0+YiBpbiBhKT9hOm51bGx9Owp2dWE9ZnVuY3Rpb24oKXt2YXIgYT1fLncoIkNMSUVOVF9FWFBFUklNRU5UX0VWRU5UUyIpO2lmKGEpe3ZhciBiPW5yYSgpO2ZvcihsZXQgYyBvZiBhKWIoYykmJl8uRXAoImdlbmVyaWNDbGllbnRFeHBlcmltZW50RXZlbnQiLHtldmVudFR5cGU6Y30pO2RlbGV0ZSBfLlBpLkNMSUVOVF9FWFBFUklNRU5UX0VWRU5UU319O3d1YT1mdW5jdGlvbihhLGIsYyl7aWYoYS5qKXtsZXQgZD1fLlFiKF8uUHkoYiwia2V5IikpfHwiL1VOS05PV05fUEFUSCI7YS5qLnN0YXJ0KGQpfWE9YztfLngoInd1Z19uZXR3b3JraW5nX2d6aXBfcmVxdWVzdCIpJiYoYT1GcmEoYykpO3JldHVybiBuZXcgd2luZG93LlJlcXVlc3QoYixhKX07Cm80PWFzeW5jIGZ1bmN0aW9uKGEsYixjLGQsZSxmKXtpZihmPy5hYm9ydGVkKXJldHVybiBiLmNhbmNlbCgpLGQ7dmFyIHt2YWx1ZTpoLGRvbmU6a309YXdhaXQgYi5yZWFkKCk7aWYoaylyZXR1cm4gYS5qPy5zdWNjZXNzKCksZDt0cnl7dmFyIGw9Yy5wYXJzZShoKX1jYXRjaChtKXt0aHJvdyBuZXcgbjQoIkZhaWxlZCB0byBwYXJzZSBzdHJlYW1pbmcgcmVzcG9uc2UiLGgpO31pZihsIT1udWxsKWZvcihsZXQgbSBvZiBsKWQucHVzaChtKSxlPy4obSk7cmV0dXJuIG80KGEsYixjLGQsZSxmKX07eHVhPWZ1bmN0aW9uKCl7dmFyIGE9bmF2aWdhdG9yO3JldHVybiBuZXcgUHJvbWlzZSgoYixjKT0+e2Eud2Via2l0VGVtcG9yYXJ5U3RvcmFnZT8ucXVlcnlVc2FnZUFuZFF1b3RhP2Eud2Via2l0VGVtcG9yYXJ5U3RvcmFnZS5xdWVyeVVzYWdlQW5kUXVvdGEoKGQsZSk9PntiKHt1c2FnZTpkLHF1b3RhOmV9KX0sZD0+e2MoZCl9KTpjKEVycm9yKCJWZSIpKX0pfTsKeXVhPWZ1bmN0aW9uKGEsYil7cDQuamMoKS5lc3RpbWF0ZSgpLnRoZW4oYz0+e2EuaigiaWRiUXVvdGFFeGNlZWRlZCIsey4uLmIsaXNTdzpzZWxmLmRvY3VtZW50PT09dm9pZCAwLGlzSWZyYW1lOnNlbGYhPT1zZWxmLnRvcCxkZXZpY2VTdG9yYWdlVXNhZ2VNYnl0ZXM6cTQoYz8udXNhZ2UpLGRldmljZVN0b3JhZ2VRdW90YU1ieXRlczpxNChjPy5xdW90YSl9KX0pfTtxND1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0idW5kZWZpbmVkIj8iLTEiOlN0cmluZyhNYXRoLmNlaWwoYS8xMDQ4NTc2KSl9Owp6dWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz17ZXJyb3JTZXZlcml0eTpiLmZoLnRvU3RyaW5nKCksd2l6RmVhdHVyZUZsYWdzOk9iamVjdC5lbnRyaWVzKGIuQWwpLmpvaW4oIlxuIil9O2I9Yi5maDtiPT09Mz9fLkdwKGEsIkVSUk9SIix2b2lkIDAsdm9pZCAwLHZvaWQgMCxjKTpiPT09MiYmXy5HcChhLCJXQVJOSU5HIix2b2lkIDAsdm9pZCAwLHZvaWQgMCxjKTtfLngoImNvd19pZl9lcnJvcnNfaW5fcG9wdXAiKSYmYj09PTMmJmEubWVzc2FnZS5pbmRleE9mKCI8SWY+IikhPT0tMSYmd2luZG93LmFsZXJ0KGEubWVzc2FnZSl9OwpBdWE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPW51bGw7YyBpbnN0YW5jZW9mIEhUTUxFbGVtZW50P2Q9YzohXy54KCJsb2dnaW5nX25lc3RlZF9jb21wb25lbnRfa3MiKSYmQXJyYXkuaXNBcnJheShjKSYmYy5sZW5ndGg9PT0xJiZBcnJheS5pc0FycmF5KGNbMF0pJiZjWzBdLmxlbmd0aD09PTEmJmNbMF1bMF1pbnN0YW5jZW9mIEhUTUxFbGVtZW50JiYoZD1jWzBdWzBdKTthLmNvbXBvbmVudFR5cGUhPT1fLkt2JiZkJiZiJiYhXy54KCJjb3dfbG9nZ2luZ19pbl9jb21wb25lbnRfd3JhcHBlciIpJiZfLnV5KGQsYiwhMCl9O0J1YT1mdW5jdGlvbigpe18ueCgiY293X2xvZ2dpbmdfaW5fY29tcG9uZW50X3dyYXBwZXIiKT8oXy5Ddj0oYSxiKT0+e2IgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmXy51eShiLGEsITApfSxfLnZ2PSgpPT57fSk6KF8uQ3Y9KCk9Pnt9LF8udnY9QXVhKX07CkR1YT1mdW5jdGlvbigpe3ZhciBhPV8ueSgpO18uSnooYSx7amE6cjQsUGE6czR9KTtfLkp6KGEse2phOnQ0LFBhOl8ubm19KTt2YXIgYj12My5qYygpLGM9YS5yZXNvbHZlKHQ0KSxkPWEucmVzb2x2ZShyNCksZT17fTtiJiYoZS5jbGllbnRfbG9jYXRpb249Yik7Xy5KeihhLHtqYTp1NCxNYjpDdWF9KTtfLkp6KGEse2phOl8uSnksTWI6ZX0pO18ueCgibWF3X2VuYWJsZV9uZXR3b3JrX21hY2hpbmUiKSYmZnVhKCk7VnRhKGEucmVzb2x2ZSh1NCksZCxjLGEucmVzb2x2ZShfLkp5KSk7Xy5KeihhLHtqYTpfLkl5LE1iOnozLmluc3RhbmNlfSl9O0d1YT1mdW5jdGlvbihhLGIsYyxkPSgpPT57fSxlPW51bGwpe2I9bmV3IEV1YShhLGIsYyxkLGUpO0Z1YS5zZXQoYSxiKX07CnY0PWZ1bmN0aW9uKGEpe2lmKCFhLm9uUmVhZHlQYXRjaEFwcGxpZWQpe3ZhciBiPWEuYWRkRXZlbnRMaXN0ZW5lcjthLmFkZEV2ZW50TGlzdGVuZXI9KGMsZCk9PntjPT09Im9uUmVhZHkiP1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PntkKGEpfSk6Yi5jYWxsKGEsYyxkKX07YS5vblJlYWR5UGF0Y2hBcHBsaWVkPSEwfX07SnVhPWZ1bmN0aW9uKGEpe2lmKF8uc2EoInl0LnBsYXllci5BcHBsaWNhdGlvbi5jcmVhdGUiKSlQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57dzQoYSl9KTtlbHNle0h1YShfLmh3KGEud2ViUGxheWVyQ29udGV4dENvbmZpZy50cnVzdGVkSnNVcmwpLCgpPT57dzQoYSl9LCgpPT57YS5pYSgpfHxhLkVqKCl9KTtsZXQgYj1hLndlYlBsYXllckNvbnRleHRDb25maWcudHJ1c3RlZENzc1VybDtiJiZJdWEoXy5odyhiKSl9fTsKdzQ9ZnVuY3Rpb24oYSl7aWYoIWEuaWEoKSl7dmFyIGI9Xy5zYSgieXQucGxheWVyLkFwcGxpY2F0aW9uLmNyZWF0ZSIpO3RyeXthLmFwaT1iKGEuY29udGFpbmVyLHthcmdzOmEucGxheWVyVmFyc30sYS53ZWJQbGF5ZXJDb250ZXh0Q29uZmlnLHZvaWQgMCkuZ2V0SW50ZXJuYWxBcGkoKSx2NChhLmFwaSksYS5hcGkuaXNSZWFkeT0oKT0+ITAsYS5qKGEuYXBpKX1jYXRjaChjKXt0aHJvdyBhLkVqKCksYzt9fX07SXVhPWZ1bmN0aW9uKGEpe3ZhciBiPWB5dHAtJHthLnRvU3RyaW5nKCl9YDtpZighZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYikpe3ZhciBjPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKTtjLmlkPWI7Xy5xYihjLGEsInN0eWxlc2hlZXQiKTsoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZG9jdW1lbnQuYm9keSkuYXBwZW5kQ2hpbGQoYyl9fTsKSHVhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1geXRwLSR7YS50b1N0cmluZygpfWAsZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChkKTtpZihlKWUuZGF0YXNldC5mYWlsZWQ/YygpOmUuZGF0YXNldC5sb2FkZWQ/YigpOihlLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIiwoKT0+e2MoKX0pLGUuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsKCk9PntiKCl9KSk7ZWxzZXt2YXIgZj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtmLmlkPWQ7Zi5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsKCk9PntmLmRhdGFzZXQuZmFpbGVkPSJ0cnVlIjtjKCl9KTtmLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCgpPT57Zi5kYXRhc2V0LmxvYWRlZD0idHJ1ZSI7YigpfSk7Xy5vYihmLGEpO2E9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZG9jdW1lbnQuYm9keTthLmluc2VydEJlZm9yZShmLGEuZmlyc3RDaGlsZCl9fTsKS3VhPWZ1bmN0aW9uKGEpe18udygiRU5BQkxFX1dFQlZJRVdfQVBJIikmJndpbmRvdy55dHdlYnZpZXdwbGF5ZXImJih3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsYj0+e3RyeXtsZXQgZD1KU09OLnBhcnNlKGIuZGF0YSksZT1kLm1ldGhvZE5hbWUsZj1kLmFyZ3N8fFtdO2E6e2ZvcihsZXQgaCBvZiBmKWlmKFN0cmluZyhoKS5pbmNsdWRlcygiamF2YXNjcmlwdDoiKSl7dmFyIGM9ITA7YnJlYWsgYX1jPSExfWlmKGMpdGhyb3cgRXJyb3IoIldlYCIrZSsiYCIrZik7aWYoZSYmdHlwZW9mIGFbZV09PT0iZnVuY3Rpb24iKWFbZV0oLi4uZik7ZWxzZSB0aHJvdyBFcnJvcigiWGVgIitlKTt9Y2F0Y2goZCl7Xy5HcChkKX19KSxhLmFkZEV2ZW50TGlzdGVuZXIoIm9uUmVhZHkiLCgpPT57d2luZG93Lnl0d2Vidmlld3BsYXllci5wb3N0TWVzc2FnZShKU09OLnN0cmluZ2lmeSh7dHlwZToib25QbGF5ZXJSZWFkeSJ9KSl9KSxhLmFkZEV2ZW50TGlzdGVuZXIoIm9uU3RhdGVDaGFuZ2UiLApiPT57d2luZG93Lnl0d2Vidmlld3BsYXllci5wb3N0TWVzc2FnZShKU09OLnN0cmluZ2lmeSh7dHlwZToib25TdGF0ZUNoYW5nZSIsc3RhdGU6Yn0pKX0pLGEuYWRkRXZlbnRMaXN0ZW5lcigib25FcnJvciIsYj0+e3dpbmRvdy55dHdlYnZpZXdwbGF5ZXIucG9zdE1lc3NhZ2UoSlNPTi5zdHJpbmdpZnkoe3R5cGU6Im9uRXJyb3IiLGVycm9yQ29kZTpifSkpfSkpfTt4ND1mdW5jdGlvbihhKXtyZXR1cm4oYS5zZWFyY2goImN1ZSIpPT09MHx8YS5zZWFyY2goImxvYWQiKT09PTApJiZhIT09ImxvYWRNb2R1bGUifTsKeTQ9ZnVuY3Rpb24oYSxiLGMpe2lmKHR5cGVvZiBhPT09InN0cmluZyIpcmV0dXJue3ZpZGVvSWQ6YSxzdGFydFNlY29uZHM6YixzdWdnZXN0ZWRRdWFsaXR5OmN9O2I9e307Zm9yKGxldCBlIG9mIEx1YSlhW2VdJiYoYltlXT1hW2VdKTtpZihhPWEuZW1iZWRDb25maWd8fGEuZW1iZWRfY29uZmlnKXthOmlmKHR5cGVvZiBhPT09InN0cmluZyIpdmFyIGQ9YTtlbHNle2lmKF8uQWEoYSkpdHJ5e2Q9SlNPTi5zdHJpbmdpZnkoYSk7YnJlYWsgYX1jYXRjaChlKXtjb25zb2xlLmVycm9yKCJJbnZhbGlkIGVtYmVkQ29uZmlnIEpTT04iLGUpfWQ9dm9pZCAwfWIuZW1iZWRfY29uZmlnPWR9cmV0dXJuIGJ9Owp6ND1mdW5jdGlvbihhLGIsYyxkKXtpZihfLkFhKGEpJiYhQXJyYXkuaXNBcnJheShhKSl7Yj0icGxheWxpc3QgbGlzdCBsaXN0VHlwZSBpbmRleCBzdGFydFNlY29uZHMgc3VnZ2VzdGVkUXVhbGl0eSIuc3BsaXQoIiAiKTtjPXt9O2ZvcihkPTA7ZDxiLmxlbmd0aDtkKyspe2xldCBlPWJbZF07YVtlXSYmKGNbZV09YVtlXSl9cmV0dXJuIGN9Yj17aW5kZXg6YixzdGFydFNlY29uZHM6YyxzdWdnZXN0ZWRRdWFsaXR5OmR9O3R5cGVvZiBhPT09InN0cmluZyImJmEubGVuZ3RoPT09MTY/Yi5saXN0PSJQTCIrYTpiLnBsYXlsaXN0PWE7cmV0dXJuIGJ9O0E0PWZ1bmN0aW9uKGEsYixjKXthLkIucHVzaCh7ZXZlbnRUeXBlOmIsbGlzdGVuZXI6Y30pO2EuYXBpLmFkZEV2ZW50TGlzdGVuZXIoYixjKX07CkQ0PWZ1bmN0aW9uKGEpe2lmKGEuailpZihhLnYpYS5zZW5kTWVzc2FnZSgiYWxyZWFkeUluaXRpYWxpemVkIik7ZWxzZSBpZihhLk0pe2Eudj0hMDthLk09ITE7YS5zZW5kTWVzc2FnZSgiaW5pdGlhbERlbGl2ZXJ5IixCNChhKSk7YS5zZW5kTWVzc2FnZSgib25SZWFkeSIpO18uQXEoImVwX2luaXRfYXIiKTtmb3IobGV0IGIgb2YgYS5VKUM0KGEsYik7YS5VPVtdfX07QzQ9ZnVuY3Rpb24oYSxiLGM9YS5qKXtpZihjKXtiLmNoYW5uZWw9IndpZGdldCI7YS5zZXNzaW9uSWQmJihiLmlkPWEuc2Vzc2lvbklkKTt0cnl7bGV0IGQ9SlNPTi5zdHJpbmdpZnkoYik7Yy5wb3N0TWVzc2FnZShkLGEudGFyZ2V0T3JpZ2luKX1jYXRjaChkKXtfLklwKGQpfX19OwpCND1mdW5jdGlvbihhKXtpZighYS5hcGkpcmV0dXJuIG51bGw7dmFyIGI9YS5hcGkuZ2V0QXBpSW50ZXJmYWNlKCk7Xy54YihiLCJnZXRWaWRlb0RhdGEiKTt2YXIgYz17YXBpSW50ZXJmYWNlOmJ9O2ZvcihsZXQgZT0wLGY9Yi5sZW5ndGg7ZTxmO2UrKyl7bGV0IGg9YltlXTtpZihoLnNlYXJjaCgiZ2V0Iik9PT0wfHxoLnNlYXJjaCgiaXMiKT09PTApe3ZhciBkPTA7aC5zZWFyY2goImdldCIpPT09MD9kPTM6aC5zZWFyY2goImlzIik9PT0wJiYoZD0yKTtkPWguY2hhckF0KGQpLnRvTG93ZXJDYXNlKCkraC5zdWJzdHJpbmcoZCsxKTt0cnl7bGV0IGs9YS5hcGlbaF0oKTtjW2RdPWt9Y2F0Y2goayl7fX19Yy52aWRlb0RhdGE9YS5hcGkuZ2V0VmlkZW9EYXRhKCk7Yy5jdXJyZW50VGltZUxhc3RVcGRhdGVkXz1EYXRlLm5vdygpLzFFMztyZXR1cm4gY307RTQ9ZnVuY3Rpb24oYSxiKXthLnNlbmRNZXNzYWdlKCJpbmZvRGVsaXZlcnkiLGIpfTsKTXVhPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gZD0+e2I9PT0ib25FcnJvciI/YS5hcGkubG9nQXBpQ2FsbChgJHtifSBpbnZvY2F0aW9uYCxjLGQpOmEuYXBpLmxvZ0FwaUNhbGwoYCR7Yn0gaW52b2NhdGlvbmAsYyk7YS5zZW5kTWVzc2FnZShiLGQpfX07RjQ9ZnVuY3Rpb24oYSxiLGMpe2EuaWEoKXx8KGI9e2lkOmEuaWQsY29tbWFuZDpifSxjJiYoYi5kYXRhPWMpLE51YS5wb3N0TWVzc2FnZShKU09OLnN0cmluZ2lmeShiKSxhLm9yaWdpbikpfTtPdWE9ZnVuY3Rpb24oYSxiKXtzd2l0Y2goYSl7Y2FzZSAib25SZWFkeSI6cmV0dXJuO2Nhc2UgIm9uU3RhdGVDaGFuZ2UiOnJldHVybntwbGF5ZXJTdGF0ZTpifTtjYXNlICJvblBsYXliYWNrUXVhbGl0eUNoYW5nZSI6cmV0dXJue3BsYXliYWNrUXVhbGl0eTpifTtjYXNlICJvblBsYXliYWNrUmF0ZUNoYW5nZSI6cmV0dXJue3BsYXliYWNrUmF0ZTpifTtjYXNlICJvbkVycm9yIjpyZXR1cm57ZXJyb3JDb2RlOmJ9fWlmKGIhPW51bGwpcmV0dXJue3ZhbHVlOmJ9fTsKUHVhPWZ1bmN0aW9uKGEsYil7c3dpdGNoKGEpe2Nhc2UgImxvYWRWaWRlb0J5SWQiOnJldHVyblt5NChiKV07Y2FzZSAiY3VlVmlkZW9CeUlkIjpyZXR1cm5beTQoYildO2Nhc2UgImxvYWRWaWRlb0J5UGxheWVyVmFycyI6cmV0dXJuW2JdO2Nhc2UgImN1ZVZpZGVvQnlQbGF5ZXJWYXJzIjpyZXR1cm5bYl07Y2FzZSAibG9hZFBsYXlsaXN0IjpyZXR1cm5bejQoYildO2Nhc2UgImN1ZVBsYXlsaXN0IjpyZXR1cm5bejQoYildO2Nhc2UgInNlZWtUbyI6cmV0dXJuW2Iuc2Vjb25kcyxiLmFsbG93U2Vla0FoZWFkXTtjYXNlICJwbGF5VmlkZW9BdCI6cmV0dXJuW2IuaW5kZXhdO2Nhc2UgInNldFZvbHVtZSI6cmV0dXJuW2Iudm9sdW1lXTtjYXNlICJzZXRQbGF5YmFja1F1YWxpdHkiOnJldHVybltiLnN1Z2dlc3RlZFF1YWxpdHldO2Nhc2UgInNldFBsYXliYWNrUmF0ZSI6cmV0dXJuW2Iuc3VnZ2VzdGVkUmF0ZV07Y2FzZSAic2V0TG9vcCI6cmV0dXJuW2IubG9vcFBsYXlsaXN0c107Y2FzZSAic2V0U2h1ZmZsZSI6cmV0dXJuW2Iuc2h1ZmZsZVBsYXlsaXN0XTsKY2FzZSAiZ2V0T3B0aW9ucyI6cmV0dXJuW2IubW9kdWxlXTtjYXNlICJnZXRPcHRpb24iOnJldHVybltiLm1vZHVsZSxiLm9wdGlvbl07Y2FzZSAic2V0T3B0aW9uIjpyZXR1cm5bYi5tb2R1bGUsYi5vcHRpb24sYi52YWx1ZV07Y2FzZSAiaGFuZGxlR2xvYmFsS2V5RG93biI6cmV0dXJuW2Iua2V5Q29kZSxiLnNoaWZ0S2V5LGIuY3RybEtleSxiLmFsdEtleSxiLm1ldGFLZXksYi5rZXksYi5jb2RlXX1yZXR1cm5bXX07ClF1YT1mdW5jdGlvbihhLGIpe3N3aXRjaChhKXtjYXNlICJpc011dGVkIjpyZXR1cm57bXV0ZWQ6Yn07Y2FzZSAiZ2V0Vm9sdW1lIjpyZXR1cm57dm9sdW1lOmJ9O2Nhc2UgImdldFBsYXliYWNrUmF0ZSI6cmV0dXJue3BsYXliYWNrUmF0ZTpifTtjYXNlICJnZXRBdmFpbGFibGVQbGF5YmFja1JhdGVzIjpyZXR1cm57YXZhaWxhYmxlUGxheWJhY2tSYXRlczpifTtjYXNlICJnZXRWaWRlb0xvYWRlZEZyYWN0aW9uIjpyZXR1cm57dmlkZW9Mb2FkZWRGcmFjdGlvbjpifTtjYXNlICJnZXRQbGF5ZXJTdGF0ZSI6cmV0dXJue3BsYXllclN0YXRlOmJ9O2Nhc2UgImdldEN1cnJlbnRUaW1lIjpyZXR1cm57Y3VycmVudFRpbWU6Yn07Y2FzZSAiZ2V0UGxheWJhY2tRdWFsaXR5IjpyZXR1cm57cGxheWJhY2tRdWFsaXR5OmJ9O2Nhc2UgImdldEF2YWlsYWJsZVF1YWxpdHlMZXZlbHMiOnJldHVybnthdmFpbGFibGVRdWFsaXR5TGV2ZWxzOmJ9O2Nhc2UgImdldER1cmF0aW9uIjpyZXR1cm57ZHVyYXRpb246Yn07CmNhc2UgImdldFZpZGVvVXJsIjpyZXR1cm57dmlkZW9Vcmw6Yn07Y2FzZSAiZ2V0VmlkZW9FbWJlZENvZGUiOnJldHVybnt2aWRlb0VtYmVkQ29kZTpifTtjYXNlICJnZXRQbGF5bGlzdCI6cmV0dXJue3BsYXlsaXN0OmJ9O2Nhc2UgImdldFBsYXlsaXN0SW5kZXgiOnJldHVybntwbGF5bGlzdEluZGV4OmJ9O2Nhc2UgImdldE9wdGlvbnMiOnJldHVybntvcHRpb25zOmJ9O2Nhc2UgImdldE9wdGlvbiI6cmV0dXJue29wdGlvbjpifX19O1J1YT1mdW5jdGlvbigpe3JldHVybiBHNC5pc0luaXRpYWxpemVkKCl9O1N1YT1mdW5jdGlvbihhPXt9KXtyZXR1cm4gRzQuaW52b2tlKGEpfTtUdWE9ZnVuY3Rpb24oKXtpZihfLncoIkVOQUJMRV9KU19BUEkiKSl7dmFyIGE9Yj0+e0g0PWI7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLGEpfTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsYSl9fTsKVXVhPWZ1bmN0aW9uKCl7Xy5BcSgiZXBfaW5pdF93ZXMiKTt2YXIgYT1fLncoIlBMQVlFUl9DT05GSUciKTtpZighYSl7dmFyIGI9Xy53KCJQTEFZRVJfVkFSUyIpO2ImJihhPXthcmdzOmJ9KX1RMighMCk7YS5hcmdzLnBzPT09Imd2biImJihkb2N1bWVudC5ib2R5LnN0eWxlLmJhY2tncm91bmRDb2xvcj0idHJhbnNwYXJlbnQiKTthLmF0dHJzfHwoYS5hdHRycz17d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsaWQ6InZpZGVvLXBsYXllciJ9KTtiPWRvY3VtZW50LnJlZmVycmVyO3dpbmRvdyE9PXdpbmRvdy50b3AmJmImJmIhPT1kb2N1bWVudC5VUkwmJihhLmFyZ3MubG9hZGVyVXJsPWIpO2I9Xy53KCJXRUJfUExBWUVSX0NPTlRFWFRfQ09ORklHUyIpPy5XRUJfUExBWUVSX0NPTlRFWFRfQ09ORklHX0lEX0VNQkVEREVEX1BMQVlFUjtpZighYi5zZXJpYWxpemVkRm9yY2VkRXhwZXJpbWVudElkcyl7bGV0IGM9YTAod2luZG93LmxvY2F0aW9uLmhyZWYpO2MuZm9yY2VkX2V4cGVyaW1lbnRzJiYKKGIuc2VyaWFsaXplZEZvcmNlZEV4cGVyaW1lbnRJZHM9Yy5mb3JjZWRfZXhwZXJpbWVudHMpfWEuYXJncz8uYXV0b3BsYXk/dDAoIndhdGNoIixbInBicyIsInBidSIsInBicCJdKTphLmFyZ3MmJnd0YShhLmFyZ3MpP3QwKCJ2aWRlb19wcmV2aWV3IixbIm9sIl0pOnQwKCJlbWJlZF9ub192aWRlbyIsWyJlcF9pbml0X2FyIl0pO18ueCgiZW1iZWRzX3VzZV9wbGF5ZXJfaW5zdGFuY2VzX2xpYnJhcnkiKXx8Xy53KCJFTkFCTEVfV0VCVklFV19BUEkiKT8oR3VhKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbGF5ZXIiKSxiLGM9PntfLncoIkVOQUJMRV9XRUJWSUVXX0FQSSIpPyhjPWMuZ2V0VHJ1c3RlZEFwaSgpLHY0KGMpLEt1YShjKSk6KEk0KGMpLEo0KGMpKX0sKCk9Pnt0aHJvdyBFcnJvcigiWWUiKTt9LGEuYXJncyksXy53KCJFTkFCTEVfV0VCVklFV19BUEkiKXx8SzQoKSxfLkFxKCJlcF9pbml0X3dlZSIpKTooYT1jc2EoYSxiKSxJNChhKSxLNCgpLF8uQXEoImVwX2luaXRfd2VlIiksCko0KGEpKX07STQ9ZnVuY3Rpb24oYSl7TDQ9YTtMNC5hZGRFdmVudExpc3RlbmVyKCJvblZpZGVvRGF0YUNoYW5nZSIsTTQpO0w0LmFkZEV2ZW50TGlzdGVuZXIoIm9uUmVhZHkiLFZ1YSk7YT1fLncoIlBPU1RfTUVTU0FHRV9JRCIsInBsYXllciIpO3ZhciBiPV8udygiUE9TVF9NRVNTQUdFX09SSUdJTiIpO18udygiRU5BQkxFX0pTX0FQSSIpP040PW5ldyBXdWE6Xy53KCJFTkFCTEVfUE9TVF9BUEkiKSYmdHlwZW9mIGE9PT0ic3RyaW5nIiYmdHlwZW9mIGI9PT0ic3RyaW5nIiYmKE40PW5ldyBYdWEoYSxiKSk7SDQ9dm9pZCAwfTsKSzQ9ZnVuY3Rpb24oKXtHdGEoKTtfLngoInl0aWRiX2NyZWF0ZV9sb2dnZXJfZW1iZWRfa2lsbHN3aXRjaCIpfHxCcmEoKTtPNC5qfHwoTzQuaj1uZXcgTzQpO080LmouaW5zdGFsbCh7Zmx1c2hfbG9nczp7Y2FsbGJhY2s6KCk9PntfLmJwKCl9fX0pO18uSWx8fEdyYSgpO0R1YSgpO18uamYucGIoKCk9PntfLnkoKS5yZXNvbHZlKF8uSXkpO2l1YSgpfSk7c2V0VGltZW91dCgoKT0+e18ueCgiYXR0bXVzaSIpJiZzdWEod2luZG93KTt2YXIgYT1fLnkoKS5yZXNvbHZlKF8uSW4oXy5JeSkpO2lmKGEpe2E9bmV3IFl1YShhKTt2YXIgYj17cHJlbG9hZDohXy54KCJlbmFibGVfcnRhX25waSIpLHpzOl8ueCgiYXR0bXVzaSIpfTtiPU9iamVjdC5hc3NpZ24oe3ByZWxvYWQ6ITB9LGIpO2xldCBkPWIuQUk/dm9pZCAwOm5ldyBfLk9zO1A0Lmluc3RhbmNlPW5ldyBQNChhLGIsZCk7YT1QNC5pbnN0YW5jZTtpZigoXy54KCJhdHRtdXNpIil8fF8ueCgiYXR0bXVzaXciKSkmJl8ueCgiYXR0bXVzaV91ZSIpKXthPQp7czphLkIuYmluZChhKSxpcjphLkQuYmluZChhKX07Yj13aW5kb3c7Yi5hdHRtcD1hO2lmKGIuYXR0bXEhPT12b2lkIDApZm9yKHZhciBjIG9mIGIuYXR0bXEpYyhhKTtiLmF0dG1xPXZvaWQgMH1lbHNlIGM9YS5CLmJpbmQoYSksXy5yYSgieXQuYWJhLmF0dCIsYyksYz1hLkQuYmluZChhKSxfLnJhKCJ5dC5hYmEuYXR0MiIsYyl9fSxfLnNqKCJhdHRfaW5pdF9kZWxheSIsMjAwKSk7Xy5ZaigoKT0+e2lmKF8ueCgiZW5hYmxlX3p3X3BpbmciKSl7dmFyIGE9Xy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiLCJVTktOT1dOX0lOVEVSRkFDRSIpLGI9Ii9lc3RhYmxpc2hfenciO2lmKGE9PT0iV0VCX0VNQkVEREVEX1BMQVlFUiIpYj0iL2VtYmVkL2VzdGFibGlzaF96dyI7ZWxzZSBpZihhPT09IlRWSFRNTDUifHxhPT09IlRWSFRNTDVfU0lNUExZIiliPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS90di9lc3RhYmxpc2hfenciO18udygiQ09PS0lFTEVTUyIsITEpJiZhPT09IldFQl9FTUJFRERFRF9QTEFZRVIiPwooYT1uZXcgSGVhZGVycyxhLnNldCgiWC1Hb29nLVZpc2l0b3ItSWQiLF8udygiVklTSVRPUl9EQVRBIikpLGZldGNoKGIse21ldGhvZDoiR0VUIixtb2RlOiJuby1jb3JzIixoZWFkZXJzOmF9KSk6ZmV0Y2goYix7bWV0aG9kOiJHRVQiLG1vZGU6Im5vLWNvcnMiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIn0pfX0pfTtadWE9ZnVuY3Rpb24oKXtRNCgpfTskdWE9ZnVuY3Rpb24oYSl7YS5wZXJzaXN0ZWR8fFE0KCl9OwpRND1mdW5jdGlvbigpe1NyYSgpO3ZhciBhPV8uSHooKSxiPV8uQ3ooMTE5KSxjPXdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvPjE7ZG9jdW1lbnQuYm9keSYmXy5SdChkb2N1bWVudC5ib2R5LCJleHAtaW52ZXJ0LWxvZ28iKSYmKGMmJiFfLlJ0KGRvY3VtZW50LmJvZHksImludmVydGVkLWhkcGkiKT9fLlN0KGRvY3VtZW50LmJvZHksImludmVydGVkLWhkcGkiKTohYyYmXy5SdChkb2N1bWVudC5ib2R5LCJpbnZlcnRlZC1oZHBpIikmJl8uVHQoZG9jdW1lbnQuYm9keSwiaW52ZXJ0ZWQtaGRwaSIpKTtiIT1jJiYoXy5EeigxMTksYyksYS5zYXZlKCkpfTtNND1mdW5jdGlvbigpe1I0KCl9O1Z1YT1mdW5jdGlvbigpe18uQXEoImVwX2luaXRfcHIiKTtSNCgpfTtSND1mdW5jdGlvbigpe3ZhciBhPUw0LmdldFZpZGVvRGF0YSgxKTthPWEudGl0bGU/YS50aXRsZSsiIC0gWW91VHViZSI6IllvdVR1YmUiO2RvY3VtZW50LnRpdGxlIT09YSYmKGRvY3VtZW50LnRpdGxlPWEpfTsKUzQ9ZnVuY3Rpb24oKXtMNCYmTDQuc2VuZEFiYW5kb25tZW50UGluZyYmTDQuc2VuZEFiYW5kb25tZW50UGluZygpO18udygiUExfQVRUIikmJkc0LmRpc3Bvc2UoKTtfLk10KCQyKTskMi5sZW5ndGg9MDtFMChaMi50b1N0cmluZygpKTtZMj0hMTtfLlFpKCJEQ0xLU1RBVCIsMCk7Xy4kZChONCk7TDQmJihMNC5yZW1vdmVFdmVudExpc3RlbmVyKCJvblZpZGVvRGF0YUNoYW5nZSIsTTQpLEw0LmRlc3Ryb3koKSxMND1udWxsKX07YXZhPWZ1bmN0aW9uKGEpe18ueCgiZW1iZWRzX3dlYl9lbmFibGVfZGlzcG9zZV9wbGF5ZXJfaWZfcGFnZV9ub3RfY2FjaGVkX2tpbGxzd2l0Y2giKT9TNCgpOmEucGVyc2lzdGVkfHxTNCgpfTsKYnZhPWZ1bmN0aW9uKCl7VDR8fChfLmR3KHtKaShhKXthLnByb3BzLmRhdGEmJihhLmVsLmRhdGE9YS5wcm9wcy5kYXRhKX0sS2koYSxiLGMpe2EuZWw/Yi5kYXRhIT09Yy5kYXRhJiYoYS5lbC5kYXRhPWMuZGF0YSk6Xy5JcChuZXcgXy5YaigiSURPTSBjb21wb25lbnQgZWwgaXMgbnVsbCIsYS5qPy5aYykpfX0pLFQ0PSEwKX07Y3ZhPXtFSzohMH07ZHZhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3ZhciBiPVU0O3RoaXMuaj0xNzUyMzczNzU7dGhpcy5jdG9yPWE7dGhpcy5pc1JlcGVhdGVkPTA7dGhpcy5vPV8uTng7dGhpcy5kZWZhdWx0VmFsdWU9dm9pZCAwO3RoaXMudj1iLm1lc3NhZ2VJZCE9bnVsbD9fLnd6OnZvaWQgMH1yZWdpc3Rlcigpe18ucGModGhpcyl9fTsKZHJhPXt0b1N0cmluZzpmdW5jdGlvbihhKXt2YXIgYj1bXSxjPTA7YS09LTIxNDc0ODM2NDg7YltjKytdPSJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIi5jaGFyQXQoYSU1Mik7Zm9yKGE9TWF0aC5mbG9vcihhLzUyKTthPjA7KWJbYysrXT0iYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkiLmNoYXJBdChhJTYyKSxhPU1hdGguZmxvb3IoYS82Mik7cmV0dXJuIGIuam9pbigiIil9fTtBMz17aWRlbnRpdHlUeXBlOiJVTkFVVEhFTlRJQ0FURURfSURFTlRJVFlfVFlQRV9VTktOT1dOIn07SVo9MDtKWj0wO05aPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjKXt0aGlzLmJ1ZmZlcj1hO2lmKGMmJiFiKXRocm93IEVycm9yKCk7fX07T1o9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLm89YT4+PjA7dGhpcy5qPWI+Pj4wfX07ClRaPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5vPWE+Pj4wO3RoaXMuaj1iPj4+MH19O2xfPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj1hfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuan19O0VfPV8ueWMoKTtvcmE9L14tPyhbMS05XVswLTldKnwwKShcLlswLTldKyk/JC87VjQ9Xy5seihPXyxfLkpyKTtldmE9Xy5seihPXyxfLkpyKTtXND1fLmx6KGZ1bmN0aW9uKGEsYixjKXtiPXFfKGIpO2IhPW51bGwmJihfLlp5KGEsYyw1KSxhPWEuaixjPU5ffHwoTl89bmV3IERhdGFWaWV3KG5ldyBBcnJheUJ1ZmZlcig4KSkpLGMuc2V0RmxvYXQzMigwLCtiLCEwKSxKWj0wLElaPWMuZ2V0VWludDMyKDAsITApLGVfKGEsSVopKX0sXy5Jcik7WDQ9Xy5seihQXyxfLkZyKTtmdmE9Xy5seihQXyxfLkZyKTsKWTQ9Xy5seihmdW5jdGlvbihhLGIsYyl7Yj1BXyhiKTtpZihiIT1udWxsJiYoZ18oYiksYiE9bnVsbCkpc3dpdGNoKF8uWnkoYSxjLDApLHR5cGVvZiBiKXtjYXNlICJudW1iZXIiOmE9YS5qO0xaKGIpO2RfKGEsSVosSlopO2JyZWFrO2Nhc2UgImJpZ2ludCI6Yz1jXyhiLE9aLFFaKTtkXyhhLmosYy5vLGMuaik7YnJlYWs7ZGVmYXVsdDpjPVNaKGIpLGRfKGEuaixjLm8sYy5qKX19LF8uR3IpO1o0PV8ubHooUV8sXy5Dcik7Z3ZhPV8ubHooUV8sXy5Dcik7Cmh2YT1fLmx6KGZ1bmN0aW9uKGEsYixjKXtiPUFfKGIpO2lmKGIhPW51bGwpc3dpdGNoKGhfKGIpLF8uWnkoYSxjLDEpLGE9YS5qLGhfKGIpLHR5cGVvZiBiKXtjYXNlICJudW1iZXIiOmI8MD8oYj1QWihRWigtYikpLGM9Yi5qLGVfKGEsYi5vKSxlXyhhLGMpKTooS1ooYiksZV8oYSxJWiksZV8oYSxKWikpO2JyZWFrO2Nhc2UgImJpZ2ludCI6Yj1iPEJpZ0ludCgwKT9QWihjXygtYixPWixRWikpOmNfKGIsT1osUVopO2M9Yi5qO2VfKGEsYi5vKTtlXyhhLGMpO2JyZWFrO2RlZmF1bHQ6Yj1iLmxlbmd0aCYmYlswXT09PSItIj9QWihTWihiLnN1YnN0cmluZygxKSkpOlNaKGIpLGM9Yi5qLGVfKGEsYi5vKSxlXyhhLGMpfX0sXy5Icik7aXZhPV8ubHooZnVuY3Rpb24oYSxiLGMpe2lfKGEsYyxBXyhiKSl9LF8uSHIpO2p2YT1NXyhmdW5jdGlvbihhLGIsYyl7Yj1MXyhBXyxiLCExKTtpZihiIT1udWxsKWZvcihsZXQgZD0wO2Q8Yi5sZW5ndGg7ZCsrKWlfKGEsYyxiW2RdKX0sXy5Icik7Cmt2YT1fLmx6KF8ubXosXy5Bcik7JDQ9Xy5seihSXyxfLkJyKTtsdmE9TV8oZnVuY3Rpb24oYSxiLGMpe2I9TF8oXy5YdCxiLCEwKTtpZihiIT1udWxsKWZvcihsZXQgaD0wO2g8Yi5sZW5ndGg7aCsrKXt2YXIgZD1hLGU9YyxmPWJbaF07ZiE9bnVsbCYma18oZCxlLEhaKGYpKX19LF8uQnIpO212YT1fLmx6KFJfLF8uQnIpO2E1PW5ldyBfLmd6KF8ubnosXy56cik7bnZhPU1fKGZ1bmN0aW9uKGEsYixjKXtiPUxfKHJyYSxiLCExKTtpZihiIT1udWxsKWZvcihsZXQgaD0wO2g8Yi5sZW5ndGg7aCsrKXt2YXIgZD1hLGU9YyxmPWJbaF07ZiE9bnVsbCYma18oZCxlLGZyYShmKS5idWZmZXIpfX0sXy5Lcik7YjU9Xy5seihmdW5jdGlvbihhLGIsYyl7Yj1zXyhiKTtiIT1udWxsJiZiIT1udWxsJiYoXy5aeShhLGMsMCksXy5YeShhLmosYikpfSxfLkRyKTtjNT1fLmx6KGZ1bmN0aW9uKGEsYixjKXtqXyhhLGMsXy5zeChiKSl9LF8uTHIpOwpvdmE9TV8oZnVuY3Rpb24oYSxiLGMpe2I9TF8oXy5zeCxiLCEwKTtpZihiIT1udWxsKWZvcihsZXQgZD0wO2Q8Yi5sZW5ndGg7ZCsrKWpfKGEsYyxiW2RdKX0sXy5Mcik7cHZhPV8ubHooZnVuY3Rpb24oYSxiLGMpe2I9Xy5zeChiKTtiIT1udWxsJiYoXy5aeShhLGMsNSksYT1hLmosYS5qLnB1c2goYj4+PjAmMjU1KSxhLmoucHVzaChiPj4+OCYyNTUpLGEuai5wdXNoKGI+Pj4xNiYyNTUpLGEuai5wdXNoKGI+Pj4yNCYyNTUpKX0sXy5Fcik7Xy5nPV8uZVYucHJvdG90eXBlO18uZy5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgXy5lVih0aGlzLngsdGhpcy55KX07Xy5nLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIF8uZVYmJih0aGlzPT1hPyEwOnRoaXMmJmE/dGhpcy54PT1hLngmJnRoaXMueT09YS55OiExKX07Xy5nLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLng9TWF0aC5jZWlsKHRoaXMueCk7dGhpcy55PU1hdGguY2VpbCh0aGlzLnkpO3JldHVybiB0aGlzfTsKXy5nLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGguZmxvb3IodGhpcy54KTt0aGlzLnk9TWF0aC5mbG9vcih0aGlzLnkpO3JldHVybiB0aGlzfTtfLmcucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLng9TWF0aC5yb3VuZCh0aGlzLngpO3RoaXMueT1NYXRoLnJvdW5kKHRoaXMueSk7cmV0dXJuIHRoaXN9O18uZy50cmFuc2xhdGU9ZnVuY3Rpb24oYSxiKXthIGluc3RhbmNlb2YgXy5lVj8odGhpcy54Kz1hLngsdGhpcy55Kz1hLnkpOih0aGlzLngrPU51bWJlcihhKSx0eXBlb2YgYj09PSJudW1iZXIiJiYodGhpcy55Kz1iKSk7cmV0dXJuIHRoaXN9O18uZy5zY2FsZT1mdW5jdGlvbihhLGIpe3RoaXMueCo9YTt0aGlzLnkqPXR5cGVvZiBiPT09Im51bWJlciI/YjphO3JldHVybiB0aGlzfTsKdmFyIHF2YT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fSxydmE9e3N0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbjoxLHN0b3BQcm9wYWdhdGlvbjoxLHByZXZlbnRNb3VzZUV2ZW50OjEscHJldmVudE1hbmlwdWxhdGlvbjoxLHByZXZlbnREZWZhdWx0OjEsbGF5ZXJYOjEsbGF5ZXJZOjEsc2NyZWVuWDoxLHNjcmVlblk6MSxzY2FsZToxLHJvdGF0aW9uOjEsd2Via2l0TW92ZW1lbnRYOjEsd2Via2l0TW92ZW1lbnRZOjF9LGMwPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMudHlwZT0iIjt0aGlzLnN0YXRlPXRoaXMuc291cmNlPXRoaXMuZGF0YT10aGlzLmN1cnJlbnRUYXJnZXQ9dGhpcy5yZWxhdGVkVGFyZ2V0PXRoaXMudGFyZ2V0PW51bGw7dGhpcy5jaGFyQ29kZT10aGlzLmtleUNvZGU9MDt0aGlzLm1ldGFLZXk9dGhpcy5zaGlmdEtleT10aGlzLmN0cmxLZXk9dGhpcy5hbHRLZXk9ITE7dGhpcy5yb3RhdGlvbj10aGlzLmNsaWVudFk9dGhpcy5jbGllbnRYPQowO3RoaXMuc2NhbGU9MTt0aGlzLmNoYW5nZWRUb3VjaGVzPXRoaXMudG91Y2hlcz1udWxsO3RyeXtpZihhPWF8fHdpbmRvdy5ldmVudCl7dGhpcy5ldmVudD1hO2ZvcihsZXQgZCBpbiBhKWQgaW4gcnZhfHwodGhpc1tkXT1hW2RdKTt0aGlzLnNjYWxlPWEuc2NhbGU7dGhpcy5yb3RhdGlvbj1hLnJvdGF0aW9uO3ZhciBiPWEudGFyZ2V0fHxhLnNyY0VsZW1lbnQ7YiYmYi5ub2RlVHlwZT09MyYmKGI9Yi5wYXJlbnROb2RlKTt0aGlzLnRhcmdldD1iO3ZhciBjPWEucmVsYXRlZFRhcmdldDtpZihjKXRyeXtjPWMubm9kZU5hbWU/YzpudWxsfWNhdGNoKGQpe2M9bnVsbH1lbHNlIHRoaXMudHlwZT09Im1vdXNlb3ZlciI/Yz1hLmZyb21FbGVtZW50OnRoaXMudHlwZT09Im1vdXNlb3V0IiYmKGM9YS50b0VsZW1lbnQpO3RoaXMucmVsYXRlZFRhcmdldD1jO3RoaXMuY2xpZW50WD1hLmNsaWVudFghPXZvaWQgMD9hLmNsaWVudFg6YS5wYWdlWDt0aGlzLmNsaWVudFk9YS5jbGllbnRZIT12b2lkIDA/CmEuY2xpZW50WTphLnBhZ2VZO3RoaXMua2V5Q29kZT1hLmtleUNvZGU/YS5rZXlDb2RlOmEud2hpY2g7dGhpcy5jaGFyQ29kZT1hLmNoYXJDb2RlfHwodGhpcy50eXBlPT0ia2V5cHJlc3MiP3RoaXMua2V5Q29kZTowKTt0aGlzLmFsdEtleT1hLmFsdEtleTt0aGlzLmN0cmxLZXk9YS5jdHJsS2V5O3RoaXMuc2hpZnRLZXk9YS5zaGlmdEtleTt0aGlzLm1ldGFLZXk9YS5tZXRhS2V5O3RoaXMuaj1hLnBhZ2VYO3RoaXMubz1hLnBhZ2VZfX1jYXRjaChkKXt9fXByZXZlbnREZWZhdWx0KCl7dGhpcy5ldmVudCYmKHRoaXMuZXZlbnQucmV0dXJuVmFsdWU9ITEsdGhpcy5ldmVudC5wcmV2ZW50RGVmYXVsdCYmdGhpcy5ldmVudC5wcmV2ZW50RGVmYXVsdCgpKX1zdG9wUHJvcGFnYXRpb24oKXt0aGlzLmV2ZW50JiYodGhpcy5ldmVudC5jYW5jZWxCdWJibGU9ITAsdGhpcy5ldmVudC5zdG9wUHJvcGFnYXRpb24mJnRoaXMuZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCkpfXN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpe3RoaXMuZXZlbnQmJgoodGhpcy5ldmVudC5jYW5jZWxCdWJibGU9ITAsdGhpcy5ldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24mJnRoaXMuZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCkpfX07Xy5IYShlMCxfLmFlKTtlMC5wcm90b3R5cGUuZ2E9ZnVuY3Rpb24oYSl7YS5qPT09dm9pZCAwJiZiMChhKTt2YXIgYj1hLmo7YS5vPT09dm9pZCAwJiZiMChhKTt0aGlzLmo9bmV3IF8uZVYoYixhLm8pfTsKZTAucHJvdG90eXBlLlU9ZnVuY3Rpb24oKXtpZih0aGlzLmope3ZhciBhPSgwLF8uZWwpKCk7aWYodGhpcy5CIT0wKXt2YXIgYj10aGlzLkksYz10aGlzLmosZD1iLngtYy54O2I9Yi55LWMueTtkPU1hdGguc3FydChkKmQrYipiKS8oYS10aGlzLkIpO3RoaXMub1t0aGlzLnZdPU1hdGguYWJzKChkLXRoaXMuRCkvdGhpcy5EKT4uNT8xOjA7Yj0wO2ZvcihjPTA7Yzw0O2MrKyliKz10aGlzLm9bY118fDA7Yj49MyYmdGhpcy5NKCk7dGhpcy5EPWR9dGhpcy5CPWE7dGhpcy5JPXRoaXMuajt0aGlzLnY9KHRoaXMudisxKSU0fX07ZTAucHJvdG90eXBlLmxhPWZ1bmN0aW9uKCl7d2luZG93LmNsZWFySW50ZXJ2YWwodGhpcy5oYSk7eXJhKHRoaXMuWil9Owp2YXIgdDM9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5vPXZvaWQgMDt0aGlzLmo9ITE7YS5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmVpbnN0YWxscHJvbXB0IixiPT57Yi5wcmV2ZW50RGVmYXVsdCgpO3RoaXMubz1ifSk7YS5hZGRFdmVudExpc3RlbmVyKCJhcHBpbnN0YWxsZWQiLCgpPT57dGhpcy5qPSEwfSx7b25jZTohMH0pfX0sZjA9MCx1MD17bmV4dDoid25fcyIsYnJvd3NlOiJicl9zIixzZWFyY2g6InNyX3MiLHJlZWw6InJfd3JzIixwbGF5ZXI6InBzX3MifSxScmE9e25leHQ6InduX3IiLGJyb3dzZToiYnJfciIsc2VhcmNoOiJzcl9yIixyZWVsOiJyX3dyciIscGxheWVyOiJwc19yIn0sbTA9e30sczA9eydzY3JpcHRbbmFtZT0ic2NoZWR1bGVyL3NjaGVkdWxlciJdJzoic2oiLCdzY3JpcHRbbmFtZT0icGxheWVyL2Jhc2UiXSc6InBqIiwnbGlua1tyZWw9InByZWxvYWQiXVtuYW1lPSJwbGF5ZXIvZW1iZWQiXSc6InBlaiIsJ2xpbmtbcmVsPSJzdHlsZXNoZWV0Il1bbmFtZT0id3d3LXBsYXllciJdJzoicGMiLAonbGlua1tyZWw9InN0eWxlc2hlZXQiXVtuYW1lPSJwbGF5ZXIvd3d3LXBsYXllciJdJzoicGMiLCdzY3JpcHRbbmFtZT0iZGVza3RvcF9wb2x5bWVyL2Rlc2t0b3BfcG9seW1lciJdJzoiZHBqIiwnbGlua1tyZWw9ImltcG9ydCJdW25hbWU9ImRlc2t0b3BfcG9seW1lciJdJzoiZHBoIiwnc2NyaXB0W25hbWU9Im1vYmlsZS1jMyJdJzoibWNqIiwnbGlua1tyZWw9InN0eWxlc2hlZXQiXVtuYW1lPSJtb2JpbGUtYzMiXSc6Im1jYyIsJ3NjcmlwdFtuYW1lPSJwbGF5ZXItcGxhc21hLWlhcy1waG9uZS9iYXNlIl0nOiJtY3BwaiIsJ3NjcmlwdFtuYW1lPSJwbGF5ZXItcGxhc21hLWlhcy10YWJsZXQvYmFzZSJdJzoibWNwdGoiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZS1wb2x5bWVyLXBsYXllci1pYXMiXSc6Im1jcGMiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZS1wb2x5bWVyLXBsYXllci1zdmctaWFzIl0nOiJtY3BzYyIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX2NvcmVfbW9kIl0nOiJtYmNqIiwKJ2xpbmtbcmVsPSJzdHlsZXNoZWV0Il1bbmFtZT0ibW9iaWxlX2JsYXplcl9jc3MiXSc6Im1iYyIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX2xvZ2dlZF9pbl91c2Vyc19tb2QiXSc6Im1ibGl1aiIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX2xvZ2dlZF9vdXRfdXNlcnNfbW9kIl0nOiJtYmxvdWoiLCdzY3JpcHRbbmFtZT0ibW9iaWxlX2JsYXplcl9ub25jb3JlX21vZCJdJzoibWJuaiIsIiNwbGF5ZXJfY3NzIjoibWJwYyIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX2Rlc2t0b3BwbGF5ZXJfbW9kIl0nOiJtYnBqIiwnbGlua1tyZWw9InN0eWxlc2hlZXQiXVtuYW1lPSJtb2JpbGVfYmxhemVyX3RhYmxldF9jc3MiXSc6Im1idGMiLCdzY3JpcHRbbmFtZT0ibW9iaWxlX2JsYXplcl93YXRjaF9tb2QiXSc6Im1id2oiLCdzY3JpcHRbbmFtZT0iZW1iZWRfY2xpZW50Il0nOiJlY2oiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9ImVtYmVkLXVpIl0nOiJlY2MifSwKWTE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX0sWjE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX0sejA9e30sZDU9Y2xhc3N7Y29uc3RydWN0b3IoYSl7YT1hfHx7fTt2YXIgYj17fSxjPXt9O3RoaXMudXJsPWEudXJsfHwiIjt0aGlzLmFyZ3M9YS5hcmdzfHxVXyhiKTt0aGlzLmFzc2V0cz1hLmFzc2V0c3x8e307dGhpcy5hdHRycz1hLmF0dHJzfHxVXyhjKTt0aGlzLmZhbGxiYWNrPWEuZmFsbGJhY2t8fG51bGw7dGhpcy5mYWxsYmFja01lc3NhZ2U9YS5mYWxsYmFja01lc3NhZ2V8fG51bGw7dGhpcy5odG1sNT0hIWEuaHRtbDU7dGhpcy5kaXNhYmxlPWEuZGlzYWJsZXx8e307dGhpcy5sb2FkZWQ9ISFhLmxvYWRlZDt0aGlzLm1lc3NhZ2VzPWEubWVzc2FnZXN8fHt9fWNsb25lKCl7dmFyIGE9bmV3IGQ1O2ZvcihsZXQgYiBpbiB0aGlzKWlmKHRoaXMuaGFzT3duUHJvcGVydHkoYikpe2xldCBjPXRoaXNbYl07Xy54YShjKT09CiJvYmplY3QiP2FbYl09VV8oYyk6YVtiXT1jfXJldHVybiBhfX0sRjA9e30sYnNhPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhLGIsYyxkKXtzdXBlcigpO3RoaXMucGxheWVySWQ9Yjt0aGlzLndlYlBsYXllckNvbnRleHRDb25maWc9ZDt0aGlzLkViPXZvaWQgMDt0aGlzLkZhPSExO3RoaXMuYXBpPXt9O3RoaXMuaGE9dGhpcy5CPW51bGw7dGhpcy5NPW5ldyBfLnRoO3RoaXMuaj17fTt0aGlzLlo9dGhpcy5vYT10aGlzLmVsZW1lbnRJZD10aGlzLk1hPXRoaXMuY29uZmlnPW51bGw7dGhpcy5VPSExO3RoaXMudj10aGlzLkQ9bnVsbDt0aGlzLnlhPXt9O3RoaXMuZmM9WyJvblJlYWR5Il07dGhpcy5sYXN0RXJyb3I9bnVsbDt0aGlzLlFhPU5hTjt0aGlzLkk9e307dGhpcy5nYT0wO3RoaXMubz10aGlzLnRhcmdldEVsZW1lbnQ9YTtFWih0aGlzLHRoaXMuTSk7STAodGhpcyk7Yz90aGlzLmdhPXNldFRpbWVvdXQoKCk9Pnt0aGlzLmxvYWROZXdWaWRlb0NvbmZpZyhjKX0sMCk6CmQmJihKMCh0aGlzKSxTMCh0aGlzKSl9Z2V0SWQoKXtyZXR1cm4gdGhpcy5wbGF5ZXJJZH1sb2FkTmV3VmlkZW9Db25maWcoYSl7aWYoIXRoaXMuaWEoKSl7dGhpcy5nYSYmKGNsZWFyVGltZW91dCh0aGlzLmdhKSx0aGlzLmdhPTApO3ZhciBiPWF8fHt9O2IgaW5zdGFuY2VvZiBkNXx8KGI9bmV3IGQ1KGIpKTt0aGlzLmNvbmZpZz1iO3RoaXMuc2V0Q29uZmlnKGEpO1MwKHRoaXMpO3RoaXMuaXNSZWFkeSgpJiZUMCh0aGlzKX19c2V0Q29uZmlnKGEpe3RoaXMuTWE9YTt0aGlzLmNvbmZpZz1QMChhKTtKMCh0aGlzKTt0aGlzLm9hfHwodGhpcy5vYT1VMCh0aGlzLHRoaXMuY29uZmlnLmFyZ3M/LmpzYXBpY2FsbGJhY2t8fCJvbllvdVR1YmVQbGF5ZXJSZWFkeSIpKTt0aGlzLmNvbmZpZy5hcmdzP3RoaXMuY29uZmlnLmFyZ3MuanNhcGljYWxsYmFjaz1udWxsOnRoaXMuY29uZmlnLmFyZ3M9e2pzYXBpY2FsbGJhY2s6bnVsbH07aWYodGhpcy5jb25maWc/LmF0dHJzKXthPXRoaXMuY29uZmlnLmF0dHJzOwpsZXQgYj1hLndpZHRoO2ImJnRoaXMubyYmKHRoaXMuby5zdHlsZS53aWR0aD1YXyhOdW1iZXIoYil8fGIpKTsoYT1hLmhlaWdodCkmJnRoaXMubyYmKHRoaXMuby5zdHlsZS5oZWlnaHQ9WF8oTnVtYmVyKGEpfHxhKSl9fWlzUmVhZHkoKXtyZXR1cm4gdGhpcy5GYX1hZGRFdmVudExpc3RlbmVyKGEsYil7dGhpcy5pYSgpO3ZhciBjPVUwKHRoaXMsYik7YyYmKF8uc2IodGhpcy5mYyxhKT49MHx8dGhpcy5qW2FdfHwoYj1hc2EodGhpcyxhKSx0aGlzLkImJnRoaXMuQihhLGIpKSx0aGlzLk0uc3Vic2NyaWJlKGEsYyksYT09PSJvblJlYWR5IiYmdGhpcy5pc1JlYWR5KCkmJnNldFRpbWVvdXQoKCk9PntjKHRoaXMuYXBpKX0sMCkpfXJlbW92ZUV2ZW50TGlzdGVuZXIoYSxiKXt0aGlzLmlhKCl8fChiPVUwKHRoaXMsYikpJiZ0aGlzLk0udW5zdWJzY3JpYmUoYSxiKX1nZXRQbGF5ZXJUeXBlKCl7cmV0dXJuIHRoaXMuWnx8KEwwKHRoaXMpPyJodG1sNSI6bnVsbCl9Z2V0TGFzdEVycm9yKCl7cmV0dXJuIHRoaXMubGFzdEVycm9yfWNhbmNlbCgpe3RoaXMuRCYmCkcwKFEwKHRoaXMpLHRoaXMuRCk7Y2xlYXJUaW1lb3V0KHRoaXMuUWEpO3RoaXMuVT0hMX1sYSgpe04wKHRoaXMpO2lmKHRoaXMudiYmdGhpcy5jb25maWcmJnRoaXMudi5kZXN0cm95KXRyeXt0aGlzLnYuZGVzdHJveSgpfWNhdGNoKGIpe3ZhciBhPW5ldyBfLlhqKCJQbGF5ZXJQcm94eSBlcnJvciBkdXJpbmcgZGlzcG9zYWwiLHtlcnJvcjpifSk7YS5sZXZlbD0iRVJST1IiO3Rocm93IGE7fXRoaXMueWE9bnVsbDtmb3IoYSBpbiB0aGlzLmopdGhpcy5qLmhhc093blByb3BlcnR5KGEpJiZkZWxldGUgdGhpcy5qW2FdO3RoaXMuTWE9dGhpcy5jb25maWc9dGhpcy5hcGk9bnVsbDtkZWxldGUgdGhpcy50YXJnZXRFbGVtZW50O2RlbGV0ZSB0aGlzLm87c3VwZXIubGEoKX19LFcwPXt9LHh0YT17U0M6IkVNQkVEREVEX1BMQVlFUl9NT0RFX1VOS05PV04iLFBDOiJFTUJFRERFRF9QTEFZRVJfTU9ERV9ERUZBVUxUIixSQzoiRU1CRURERURfUExBWUVSX01PREVfUEZQIixRQzoiRU1CRURERURfUExBWUVSX01PREVfUEZMIn07dmFyIGgxPWNsYXNzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoYSxiLGM9RXJyb3IoKSl7c3VwZXIoKTt0aGlzLmNvZGU9YTtiKz0iOiI7YyBpbnN0YW5jZW9mIEVycm9yPyh0aGlzLm1lc3NhZ2U9YitjLm1lc3NhZ2UsdGhpcy5zdGFjaz1jLnN0YWNrfHwiIik6KHRoaXMubWVzc2FnZT1iK1N0cmluZyhjKSx0aGlzLnN0YWNrPSIiKTtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxuZXcudGFyZ2V0LnByb3RvdHlwZSl9fTt2YXIgZTE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy52bT1hO3RoaXMubz0ia2V5ZG93biBrZXlwcmVzcyBrZXl1cCBpbnB1dCBmb2N1c2luIGZvY3Vzb3V0IHNlbGVjdCBjb3B5IGN1dCBwYXN0ZSBjaGFuZ2UgY2xpY2sgZGJsY2xpY2sgYXV4Y2xpY2sgcG9pbnRlcm92ZXIgcG9pbnRlcmRvd24gcG9pbnRlcnVwIHBvaW50ZXJtb3ZlIHBvaW50ZXJvdXQgZHJhZ2VudGVyIGRyYWdsZWF2ZSBkcmFnIGRyYWdlbmQgbW91c2VvdmVyIG1vdXNlZG93biBtb3VzZXVwIG1vdXNlbW92ZSBtb3VzZW91dCB0b3VjaHN0YXJ0IHRvdWNoZW5kIHRvdWNobW92ZSB3aGVlbCIuc3BsaXQoIiAiKTt0aGlzLmo9dm9pZCAwO3RoaXMuQ2c9dGhpcy52bS5wO3RoaXMudj10aGlzLkloLmJpbmQodGhpcyk7dGhpcy5hZGRPbkRpc3Bvc2VDYWxsYmFjaygoKT0+dm9pZCBoc2EodGhpcykpfXNuYXBzaG90KGEpe3JldHVybiB0aGlzLnZtLnMoey4uLihhLktjJiZ7YzphLktjfSksCi4uLihhLllqJiZ7czphLllqfSksLi4uKGEueG4hPT12b2lkIDAmJntwOmEueG59KX0pfUloKGEpe3RoaXMudm0uZShhKX1CaShhLGIpe3JldHVybiB0aGlzLnZtLmMoYSxiLCExKX1WaCgpe3JldHVybiB0aGlzLnZtLmwoKX19O3ZhciBzdmE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKTt0aGlzLmhhPTF9c2hhcmUoKXtpZih0aGlzLmlhKCkpdGhyb3cgRXJyb3IoImplIik7dGhpcy5oYSsrO3JldHVybiB0aGlzfWRpc3Bvc2UoKXstLXRoaXMuaGF8fHN1cGVyLmRpc3Bvc2UoKX19O3ZhciB0dmE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5vPWE7SzEoYSwiL2NsaWVudF9zdHJlYW16L2JnL2ZycyIsbTEoIm1rIikpfXJlY29yZChhLGIpe3RoaXMuby5yZWNvcmQoIi9jbGllbnRfc3RyZWFtei9iZy9mcnMiLGEsYil9aigpe3JldHVybiB0aGlzLm8uaigiL2NsaWVudF9zdHJlYW16L2JnL2ZycyIpfX0sdXZhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMubz1hO0sxKGEsIi9jbGllbnRfc3RyZWFtei9iZy93cmwiLG0xKCJtbiIpLGwxKCJhYyIpLGwxKCJzYyIpLG0xKCJyayIpLG0xKCJtayIpKX1yZWNvcmQoYSxiLGMsZCxlLGYpe3RoaXMuby5yZWNvcmQoIi9jbGllbnRfc3RyZWFtei9iZy93cmwiLGEsYixjLGQsZSxmKX1qKCl7cmV0dXJuIHRoaXMuby5qKCIvY2xpZW50X3N0cmVhbXovYmcvd3JsIil9fSx2dmE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy52PWE7TTEoYSwiL2NsaWVudF9zdHJlYW16L2JnL2VjIixtMSgiZW4iKSxtMSgibWsiKSl9byhhLGIpe08xKHRoaXMudiwKIi9jbGllbnRfc3RyZWFtei9iZy9lYyIsYSxiKX1qKCl7cmV0dXJuIHRoaXMudi5qKCIvY2xpZW50X3N0cmVhbXovYmcvZWMiKX19LHd2YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm89YTtLMShhLCIvY2xpZW50X3N0cmVhbXovYmcvZWwiLG0xKCJlbiIpLG0xKCJtayIpKX1yZWNvcmQoYSxiLGMpe3RoaXMuby5yZWNvcmQoIi9jbGllbnRfc3RyZWFtei9iZy9lbCIsYSxiLGMpfWooKXtyZXR1cm4gdGhpcy5vLmooIi9jbGllbnRfc3RyZWFtei9iZy9lbCIpfX0seHZhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMudj1hO00xKGEsIi9jbGllbnRfc3RyZWFtei9iZy9jZWMiLGwxKCJlYyIpLG0xKCJtayIpKX1vKGEsYil7TzEodGhpcy52LCIvY2xpZW50X3N0cmVhbXovYmcvY2VjIixhLGIpfWooKXtyZXR1cm4gdGhpcy52LmooIi9jbGllbnRfc3RyZWFtei9iZy9jZWMiKX19LHl2YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLnY9YTtNMShhLCIvY2xpZW50X3N0cmVhbXovYmcvcG8vY3NjIiwKbDEoImNzIiksbTEoIm1rIikpfW8oYSxiKXtPMSh0aGlzLnYsIi9jbGllbnRfc3RyZWFtei9iZy9wby9jc2MiLGEsYil9aigpe3JldHVybiB0aGlzLnYuaigiL2NsaWVudF9zdHJlYW16L2JnL3BvL2NzYyIpfX0senZhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMudj1hO00xKGEsIi9jbGllbnRfc3RyZWFtei9iZy9wby9jdGF2IixtMSgiYXYiKSxtMSgibWsiKSl9byhhLGIpe08xKHRoaXMudiwiL2NsaWVudF9zdHJlYW16L2JnL3BvL2N0YXYiLGEsYil9aigpe3JldHVybiB0aGlzLnYuaigiL2NsaWVudF9zdHJlYW16L2JnL3BvL2N0YXYiKX19LEF2YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLnY9YTtNMShhLCIvY2xpZW50X3N0cmVhbXovYmcvcG8vY3dzYyIsbTEoInN1IiksbTEoIm1rIikpfW8oYSxiKXtPMSh0aGlzLnYsIi9jbGllbnRfc3RyZWFtei9iZy9wby9jd3NjIixhLGIpfWooKXtyZXR1cm4gdGhpcy52LmooIi9jbGllbnRfc3RyZWFtei9iZy9wby9jd3NjIil9fSxCdmE9CmNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMubz1hO0sxKGEsIi9jbGllbnRfc3RyZWFtei9iZy9vZC9wIixtMSgibWsiKSl9cmVjb3JkKGEsYil7dGhpcy5vLnJlY29yZCgiL2NsaWVudF9zdHJlYW16L2JnL29kL3AiLGEsYil9aigpe3JldHVybiB0aGlzLm8uaigiL2NsaWVudF9zdHJlYW16L2JnL29kL3AiKX19LEN2YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm89YTtLMShhLCIvY2xpZW50X3N0cmVhbXovYmcvb2QvbiIsbTEoImV0IiksbTEoIm1rIikpfXJlY29yZChhLGIsYyl7dGhpcy5vLnJlY29yZCgiL2NsaWVudF9zdHJlYW16L2JnL29kL24iLGEsYixjKX1qKCl7cmV0dXJuIHRoaXMuby5qKCIvY2xpZW50X3N0cmVhbXovYmcvb2QvbiIpfX07dmFyIE1zYT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTt2YXIgcnNhPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19LHExPVsxLDIsM107dmFyIG9zYT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fSxwMT1bMSwyLDNdO3ZhciBwc2E9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIER2YT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTt2YXIgRXZhPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19LGU1PVsxLDIsM107dmFyIG4xPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19O24xLnByb3RvdHlwZS52PV8ucHooWzAsJDQsWzAsZTUsYTUsWzAsJDQsLTEsXy54el0sYTUsWzAsJDQsLTEsWjQsXy54el0sYTUsWzAsJDRdXSxsdmEsXy55eixbMCxfLnl6LFswLHExLG12YSxndmEsa3ZhXSxbMCxwMSxmdmEsZXZhLGE1LFswLF8ueXosWzAsVjQsWDRdXV1dLGl2YSxqdmFdKTt2YXIgRnZhPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19O3ZhciBHdmE9Y2xhc3N7YXN5bmMgY29tcHJlc3MoYSl7dmFyIGI9bmV3IENvbXByZXNzaW9uU3RyZWFtKCJnemlwIiksYz0obmV3IFJlc3BvbnNlKGIucmVhZGFibGUpKS5hcnJheUJ1ZmZlcigpO2I9Yi53cml0YWJsZS5nZXRXcml0ZXIoKTthd2FpdCBiLndyaXRlKChuZXcgVGV4dEVuY29kZXIpLmVuY29kZShhKSk7YXdhaXQgYi5jbG9zZSgpO3JldHVybiBuZXcgVWludDhBcnJheShhd2FpdCBjKX1pc1N1cHBvcnRlZChhKXtyZXR1cm4gYTwxMDI0PyExOnR5cGVvZiBDb21wcmVzc2lvblN0cmVhbSE9PSJ1bmRlZmluZWQifX07dmFyIGY1PWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5pbnRlcnZhbE1zPWE7dGhpcy5jYWxsYmFjaz1iO3RoaXMuZW5hYmxlZD0hMTt0aGlzLmo9KCk9Pl8uRWEoKTt0aGlzLm89dGhpcy5qKCl9c2V0SW50ZXJ2YWwoYSl7dGhpcy5pbnRlcnZhbE1zPWE7dGhpcy50aW1lciYmdGhpcy5lbmFibGVkPyh0aGlzLnN0b3AoKSx0aGlzLnN0YXJ0KCkpOnRoaXMudGltZXImJnRoaXMuc3RvcCgpfXN0YXJ0KCl7dGhpcy5lbmFibGVkPSEwO3RoaXMudGltZXJ8fCh0aGlzLnRpbWVyPXNldFRpbWVvdXQoKCk9Pnt0aGlzLnRpY2soKX0sdGhpcy5pbnRlcnZhbE1zKSx0aGlzLm89dGhpcy5qKCkpfXN0b3AoKXt0aGlzLmVuYWJsZWQ9ITE7dGhpcy50aW1lciYmKGNsZWFyVGltZW91dCh0aGlzLnRpbWVyKSx0aGlzLnRpbWVyPXZvaWQgMCl9dGljaygpe2lmKHRoaXMuZW5hYmxlZCl7bGV0IGE9TWF0aC5tYXgodGhpcy5qKCktdGhpcy5vLDApO2E8dGhpcy5pbnRlcnZhbE1zKi44P3RoaXMudGltZXI9CnNldFRpbWVvdXQoKCk9Pnt0aGlzLnRpY2soKX0sdGhpcy5pbnRlcnZhbE1zLWEpOih0aGlzLnRpbWVyJiYoY2xlYXJUaW1lb3V0KHRoaXMudGltZXIpLHRoaXMudGltZXI9dm9pZCAwKSx0aGlzLmNhbGxiYWNrKCksdGhpcy5lbmFibGVkJiYodGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKSl9ZWxzZSB0aGlzLnRpbWVyPXZvaWQgMH19O3ZhciBIdmE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIEl2YT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTt2YXIgSnZhPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX1XaSgpe3JldHVybiBLXyh0aGlzKX19O3ZhciB0c2E9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIHgxPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19LHdzYT1TXyh4MSk7dmFyIEExPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19O3ZhciB0MT1bInBsYXRmb3JtIiwicGxhdGZvcm1WZXJzaW9uIiwiYXJjaGl0ZWN0dXJlIiwibW9kZWwiLCJ1YUZ1bGxWZXJzaW9uIl0sczE9bmV3IHgxLHUxPW51bGw7dmFyIHoxPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19O3ZhciBLdmE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEsNCl9fTt2YXIgZzU9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEsMzcpfX07dmFyIEx2YT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSwxOSl9VWgoYSl7cmV0dXJuIENaKHRoaXMsMixhKX19O3ZhciBNdmE9Y2xhc3N7Y29uc3RydWN0b3IoYSxiPSExKXt0aGlzLnlkPWI7dGhpcy52PXRoaXMubG9jYWxlPW51bGw7dGhpcy5vPTA7dGhpcy5pc0ZpbmFsPSExO3RoaXMuaj1uZXcgTHZhO051bWJlci5pc0ludGVnZXIoYSkmJnRoaXMuai5VaChhKTtifHwodGhpcy5sb2NhbGU9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmdldEF0dHJpYnV0ZSgibGFuZyIpKTt5MSh0aGlzLG5ldyB6MSl9VWgoYSl7dGhpcy5qLlVoKGEpO3JldHVybiB0aGlzfWJ1aWxkKGEsYj0wLGM9MCxkPW51bGwsZT0wLGY9MCl7aWYoIXRoaXMueWQpe3ZhciBoPXcxKHRoaXMpO3ZhciBrPW5ldyBKdmE7az1DWihrLDEsdGhpcy5vKTtrPV8ucXcoaywyLF8ueHcodGhpcy5pc0ZpbmFsKSk7Yz1fLnF3KGssMyxfLlB3KGM+MD9jOnZvaWQgMCkpO2U9Xy5xdyhjLDQsXy5QdyhlPjA/ZTp2b2lkIDApKTtmPV8ucXcoZSw1LF8uUHcoZj4wP2Y6dm9pZCAwKSk7ZT1mLkRhO2M9ZVtfLkFjXXwwO2Y9Xy5CYyhmLGMpP2Y6Xy4kYyhmLAplLGMpP18uYmQoZixlKTpuZXcgZi5jb25zdHJ1Y3RvcihfLlpjKGUsYywhMCkpO18uS3coaCwxMCxmKX1oPXRoaXMuai5jbG9uZSgpO2Y9RGF0ZS5ub3coKS50b1N0cmluZygpO2g9Xy5xdyhoLDQseV8oZikpO2E9YS5zbGljZSgpO2E9SF8oaCwzLGEpO2QmJihoPW5ldyBIdmEsZD1fLnF3KGgsMTMsXy5QdyhkKSksaD1uZXcgSXZhLGQ9Xy5LdyhoLDIsZCksaD1uZXcgS3ZhLGQ9Xy5LdyhoLDEsZCksZD1DWihkLDIsOSksXy5LdyhhLDE4LGQpKTtiJiZfLnF3KGEsMTQseV8oYikpO3JldHVybiBhfX07QjEucHJvdG90eXBlLnY9MDtCMS5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLm89dGhpcy5qPXRoaXMuQjt0aGlzLnY9MH07dmFyIFU0PWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhLDgpfX0sTnZhPVNfKFU0KTt2YXIgaDU7aDU9bmV3IGR2YShjbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fSk7dmFyIE92YT1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmNvbXBvbmVudElkPSIiO3RoaXMuaj1bXTt0aGlzLlFhPSIiO3RoaXMucGFnZUlkPW51bGw7dGhpcy5FYj10aGlzLm9hPS0xO3RoaXMuTT10aGlzLmV4cGVyaW1lbnRJZHM9bnVsbDt0aGlzLmdhPXRoaXMuaGE9dGhpcy5JPXRoaXMuQj0wO3RoaXMuZmM9MTt0aGlzLnRpbWVvdXRNaWxsaXM9MDt0aGlzLnlhPSExO3RoaXMubG9nU291cmNlPWEubG9nU291cmNlO3RoaXMuU2Y9YS5TZnx8KCgpPT57fSk7dGhpcy52PW5ldyBNdmEoYS5sb2dTb3VyY2UsYS55ZCk7dGhpcy5uZXR3b3JrPWEubmV0d29ya3x8bnVsbDt0aGlzLmxmPWEubGZ8fG51bGw7dGhpcy5idWZmZXJTaXplPTFFMzt0aGlzLlU9YS50Qnx8bnVsbDt0aGlzLnNlc3Npb25JbmRleD1hLnNlc3Npb25JbmRleHx8bnVsbDt0aGlzLlpnPWEuWmd8fCExO3RoaXMuWD1udWxsO3RoaXMud2l0aENyZWRlbnRpYWxzPSFhLm5sO3RoaXMueWQ9CmEueWR8fCExO3RoaXMuWj0hdGhpcy55ZCYmISFfLnpkKCkmJiEhXy56ZCgpLm5hdmlnYXRvciYmXy56ZCgpLm5hdmlnYXRvci5zZW5kQmVhY29uIT09dm9pZCAwO3RoaXMuTWE9dHlwZW9mIFVSTFNlYXJjaFBhcmFtcyE9PSJ1bmRlZmluZWQiJiYhIShuZXcgVVJMKEQxKCkpKS5zZWFyY2hQYXJhbXMmJiEhKG5ldyBVUkwoRDEoKSkpLnNlYXJjaFBhcmFtcy5zZXQ7dmFyIGI9djEobmV3IHoxKTt5MSh0aGlzLnYsYik7dGhpcy5EPW5ldyBCMSgxRTQsM0U1LC4xKTthPXlzYSh0aGlzLGEuTm8pO3RoaXMubz1uZXcgZjUodGhpcy5ELmosYSk7dGhpcy5GYT1uZXcgZjUoNkU1LGEpO3RoaXMuWmd8fHRoaXMuRmEuc3RhcnQoKTt0aGlzLnlkfHwoZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsKCk9Pntkb2N1bWVudC52aXNpYmlsaXR5U3RhdGU9PT0iaGlkZGVuIiYmRTEodGhpcyl9KSxfLnpkKCk/LmFkZEV2ZW50TGlzdGVuZXI/LigicGFnZWhpZGUiLCgpPT4Ke0UxKHRoaXMpfSkpfWxhKCl7RTEodGhpcyk7dGhpcy5vLnN0b3AoKTt0aGlzLkZhLnN0b3AoKTtzdXBlci5sYSgpfWRpc3BhdGNoKGEpe2lmKGEgaW5zdGFuY2VvZiBnNSl0aGlzLmxvZyhhKTtlbHNlIHRyeXt2YXIgYj1uZXcgZzUsYz1hLnNlcmlhbGl6ZSgpO3ZhciBkPUJaKGIsOCxjKTt0aGlzLmxvZyhkKX1jYXRjaHt9fWxvZyhhKXtpZih0aGlzLk1hKXthPWEuY2xvbmUoKTt2YXIgYj10aGlzLmZjKys7YT1fLnF3KGEsMjEseV8oYikpO3RoaXMuY29tcG9uZW50SWQmJkJaKGEsMjYsdGhpcy5jb21wb25lbnRJZCk7Yj1hO3t2YXIgYz1fLmVkKGIsMSk7bGV0IGQ9dHlwZW9mIGM7Yz1jPT1udWxsP2M6ZD09PSJiaWdpbnQiP1N0cmluZygoMCxfLnRyKSg2NCxjKSk6cl8oYyk/ZD09PSJzdHJpbmciP3VfKGMpOnZfKGMpOnZvaWQgMH1jPT1udWxsJiYoYz1EYXRlLm5vdygpLGM9TnVtYmVyLmlzRmluaXRlKGMpP2MudG9TdHJpbmcoKToiMCIsXy5xdyhiLDEseV8oYykpKTtjPV8uZWQoYiwKMTUsdm9pZCAwLHZvaWQgMCx6Xyk7YyE9bnVsbCYmKHR5cGVvZiBjPT09ImJpZ2ludCI/KDAsXy5NYykoYyk/Yz1OdW1iZXIoYyk6KGM9KDAsXy50cikoNjQsYyksYz0oMCxfLk1jKShjKT9OdW1iZXIoYyk6U3RyaW5nKGMpKTpjPXJfKGMpP3R5cGVvZiBjPT09Im51bWJlciI/dl8oYyk6dV8oYyk6dm9pZCAwKTtjPT1udWxsJiZfLnF3KGIsMTUseV8oKG5ldyBEYXRlKS5nZXRUaW1lem9uZU9mZnNldCgpKjYwKSk7dGhpcy5leHBlcmltZW50SWRzJiYoYz10aGlzLmV4cGVyaW1lbnRJZHMuY2xvbmUoKSxfLkt3KGIsMTYsYykpO2I9dGhpcy5qLmxlbmd0aC10aGlzLmJ1ZmZlclNpemUrMTtiPjAmJih0aGlzLmouc3BsaWNlKDAsYiksdGhpcy5CKz1iKTt0aGlzLmoucHVzaChhKTt0aGlzLlpnfHx0aGlzLm8uZW5hYmxlZHx8dGhpcy5vLnN0YXJ0KCl9fWZsdXNoKGEsYil7aWYodGhpcy5qLmxlbmd0aD09PTApYSYmYSgpO2Vsc2UgaWYodGhpcy55YSYmdGhpcy5aKXRoaXMudi5vPTMsQXNhKHRoaXMpOwplbHNle3ZhciBjPURhdGUubm93KCk7aWYodGhpcy5FYj5jJiZ0aGlzLm9hPGMpYiYmYigidGhyb3R0bGVkIik7ZWxzZXt0aGlzLm5ldHdvcmsmJih0eXBlb2YgdGhpcy5uZXR3b3JrLldpPT09ImZ1bmN0aW9uIj92c2EodGhpcy52LHRoaXMubmV0d29yay5XaSgpKTp0aGlzLnYubz0wKTt2YXIgZD10aGlzLnYuYnVpbGQodGhpcy5qLHRoaXMuQix0aGlzLkksdGhpcy5sZix0aGlzLmhhLHRoaXMuZ2EpLGU9dGhpcy5TZigpO2lmKGUmJnRoaXMuUWE9PT1lKWImJmIoInN0YWxlLWF1dGgtdG9rZW4iKTtlbHNle3RoaXMuaj1bXTt0aGlzLm8uZW5hYmxlZCYmdGhpcy5vLnN0b3AoKTt0aGlzLkI9MDtjPWQuc2VyaWFsaXplKCk7bGV0IGY7dGhpcy5NJiZ0aGlzLk0uaXNTdXBwb3J0ZWQoYy5sZW5ndGgpJiYoZj10aGlzLk0uY29tcHJlc3MoYykpO2xldCBoPUJzYSh0aGlzLGMsZSksaz1uPT57dGhpcy5ELnJlc2V0KCk7dGhpcy5vLnNldEludGVydmFsKHRoaXMuRC5qKTtpZihuKXt2YXIgcD0KbnVsbDt0cnl7dmFyIHI9SlNPTi5zdHJpbmdpZnkoSlNPTi5wYXJzZShuLnJlcGxhY2UoIildfSdcbiIsIiIpKSk7cD1OdmEocil9Y2F0Y2godil7fWlmKHApe249TnVtYmVyKElfKHAsMSxfLkZjKCItMSIpKSk7bj4wJiYodGhpcy5vYT1EYXRlLm5vdygpLHRoaXMuRWI9dGhpcy5vYStuKTtuPWg1Lmo7KHI9Xy5HYShfLkpjKSkmJnAuRGFbcl0/LltuXSE9bnVsbCYmXy54YyhfLmpyLDMpO249aDUuajtpZihfLkdhKF8ubHIpJiZfLkdhKF8uSmMpJiZ2b2lkIDA9PT1fLmxyKXtyPXAuRGE7dmFyIHQ9cltfLkpjXTtpZih0JiYodD10LkZLKSl0cnl7dChyLG4sY3ZhKX1jYXRjaCh2KXtfLiRiKHYpfX1wPWg1LmN0b3I/aDUubyhwLGg1LmN0b3IsaDUuaixoNS52KTpoNS5vKHAsaDUuaixudWxsLGg1LnYpO2lmKHA9cD09PW51bGw/dm9pZCAwOnApcD1fLnR4KHAsMSwtMSkscCE9PS0xJiYodGhpcy5EPW5ldyBCMShwPDE/MTpwLDNFNSwuMSksdGhpcy5vLnNldEludGVydmFsKHRoaXMuRC5qKSl9fWEmJgphKCk7dGhpcy5JPTB9LGw9KG4scCk9Pnt2YXIgcj1HXyhkLGc1LDMpO3ZhciB0PU51bWJlcihJXyhkLDE0KSk7QzEodGhpcy5EKTt0aGlzLm8uc2V0SW50ZXJ2YWwodGhpcy5ELmopO249PT00MDEmJmUmJih0aGlzLlFhPWUpO3QmJih0aGlzLkIrPXQpO3A9PT12b2lkIDAmJihwPXRoaXMuaXNSZXRyeWFibGUobikpO3AmJih0aGlzLmo9ci5jb25jYXQodGhpcy5qKSx0aGlzLlpnfHx0aGlzLm8uZW5hYmxlZHx8dGhpcy5vLnN0YXJ0KCkpO2ImJmIoIm5ldC1zZW5kLWZhaWxlZCIsbik7Kyt0aGlzLkl9LG09KCk9Pnt0aGlzLm5ldHdvcmsmJnRoaXMubmV0d29yay5zZW5kKGgsayxsKX07Zj9mLnRoZW4obj0+e2guT2pbIkNvbnRlbnQtRW5jb2RpbmciXT0iZ3ppcCI7aC5PalsiQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL2JpbmFyeSI7aC5ib2R5PW47aC5HdT0yO20oKX0sKCk9PnttKCl9KTptKCl9fX19aXNSZXRyeWFibGUoYSl7cmV0dXJuIDUwMDw9YSYmYTw2MDB8fGE9PT00MDF8fAphPT09MH19O3ZhciBQdmE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnB1PXR5cGVvZiBBYm9ydENvbnRyb2xsZXIhPT0idW5kZWZpbmVkIn1hc3luYyBzZW5kKGEsYixjKXt2YXIgZD10aGlzLnB1P25ldyBBYm9ydENvbnRyb2xsZXI6dm9pZCAwLGU9ZCYmYS50aW1lb3V0TWlsbGlzPjA/c2V0VGltZW91dCgoKT0+e2QuYWJvcnQoKX0sYS50aW1lb3V0TWlsbGlzKTp2b2lkIDA7dHJ5e2xldCBmPWF3YWl0IGZldGNoKGEudXJsLHttZXRob2Q6YS5yZXF1ZXN0VHlwZSxoZWFkZXJzOnsuLi5hLk9qfSwuLi4oYS5ib2R5JiZ7Ym9keTphLmJvZHl9KSwuLi4oYS53aXRoQ3JlZGVudGlhbHMmJntjcmVkZW50aWFsczoiaW5jbHVkZSJ9KSxzaWduYWw6YS50aW1lb3V0TWlsbGlzJiZkP2Quc2lnbmFsOm51bGx9KTtmLnN0YXR1cz09PTIwMD9iPy4oYXdhaXQgZi50ZXh0KCkpOmM/LihmLnN0YXR1cyl9Y2F0Y2goZil7c3dpdGNoKGY/Lm5hbWUpe2Nhc2UgIkFib3J0RXJyb3IiOmM/Lig0MDgpO2JyZWFrO2RlZmF1bHQ6Yz8uKDQwMCl9fWZpbmFsbHl7Y2xlYXJUaW1lb3V0KGUpfX1XaSgpe3JldHVybiA0fX07dmFyIFMxPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCk7dGhpcy5sb2dTb3VyY2U9MTgyODt0aGlzLnNlc3Npb25JbmRleD0iMCI7dGhpcy5OZT0iaHR0cHM6Ly9wbGF5Lmdvb2dsZS5jb20vbG9nP2Zvcm1hdD1qc29uJmhhc2Zhc3Q9dHJ1ZSI7dGhpcy5uZXR3b3JrPXRoaXMuYnVpbGRMYWJlbD1udWxsO3RoaXMuY29tcG9uZW50SWQ9IiI7dGhpcy5qPXRoaXMubGY9bnVsbDt0aGlzLm89ITE7dGhpcy5wYWdlSWQ9bnVsbDt0aGlzLmJ1ZmZlclNpemU9dm9pZCAwO3RoaXMuWD1udWxsfW5sKCl7dGhpcy52PSEwO3JldHVybiB0aGlzfWJ1aWxkKCl7dGhpcy5uZXR3b3JrfHwodGhpcy5uZXR3b3JrPW5ldyBQdmEpO3ZhciBhPW5ldyBPdmEoe2xvZ1NvdXJjZTp0aGlzLmxvZ1NvdXJjZSxTZjp0aGlzLlNmP3RoaXMuU2Y6Xy5QZCxzZXNzaW9uSW5kZXg6dGhpcy5zZXNzaW9uSW5kZXgsdEI6dGhpcy5OZSx5ZDohMSxaZzohMSxubDp0aGlzLnYsTm86dGhpcy5ObyxuZXR3b3JrOnRoaXMubmV0d29ya30pOwpFWih0aGlzLGEpO2lmKHRoaXMuYnVpbGRMYWJlbCl7dmFyIGI9dGhpcy5idWlsZExhYmVsLGM9dzEoYS52KTtCWihjLDcsYil9YS5NPW5ldyBHdmE7dGhpcy5jb21wb25lbnRJZCYmKGEuY29tcG9uZW50SWQ9dGhpcy5jb21wb25lbnRJZCk7dGhpcy5sZiYmKGEubGY9dGhpcy5sZik7dGhpcy5wYWdlSWQmJihhLnBhZ2VJZD10aGlzLnBhZ2VJZCk7dGhpcy5qJiYoKGM9dGhpcy5qKT8oYS5leHBlcmltZW50SWRzfHwoYS5leHBlcmltZW50SWRzPW5ldyBxdmEpLGI9YS5leHBlcmltZW50SWRzLGM9Yy5zZXJpYWxpemUoKSxCWihiLDQsYykpOmEuZXhwZXJpbWVudElkcyYmXy5xdyhhLmV4cGVyaW1lbnRJZHMsNCkpO3RoaXMubyYmKGEueWE9YS5aKTt4c2EoYS52KTt0aGlzLmJ1ZmZlclNpemUmJihhLmJ1ZmZlclNpemU9dGhpcy5idWZmZXJTaXplKTt0aGlzLm5ldHdvcmsuVWgmJnRoaXMubmV0d29yay5VaCh0aGlzLmxvZ1NvdXJjZSk7dGhpcy5uZXR3b3JrLmlBJiZ0aGlzLm5ldHdvcmsuaUEoYSk7CnJldHVybiBhfX07dmFyIE5zYT1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmxvZ1NvdXJjZT0xODI4O3RoaXMuY29tcG9uZW50SWQ9IiI7YXx8KGE9bmV3IFMxLGEuY29tcG9uZW50SWQ9IiIsRVoodGhpcyxhKSxhPWEuYnVpbGQoKSk7dGhpcy5qPWF9Zmx1c2goYSl7YT1hfHxbXTtpZihhLmxlbmd0aCl7bGV0IGI9bmV3IEZ2YSxjPVtdO2ZvcihsZXQgZD0wO2Q8YS5sZW5ndGg7ZCsrKXtsZXQgZT1hW2RdLGY9cjEoZSk7Yy5wdXNoKGYpO2UuY2xlYXIoKX1IXyhiLDEsYyk7dGhpcy5qLmRpc3BhdGNoKGIpO3RoaXMuai5mbHVzaCgpfX19O3ZhciBIMT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX19O3ZhciBpNT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyl7dGhpcy5vPWE7dGhpcy52PWI7dGhpcy5maWVsZHM9Y3x8W107dGhpcy5qPW5ldyBNYXB9Y2xlYXIoKXt0aGlzLmouY2xlYXIoKX19O3ZhciBMMT1jbGFzcyBleHRlbmRzIGk1e2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoYSwzLGIpfX07dmFyIEoxPWNsYXNzIGV4dGVuZHMgaTV7Y29uc3RydWN0b3IoYSxiKXtzdXBlcihhLDIsYil9cmVjb3JkKGEsLi4uYil7SHNhKHRoaXMsYSwuLi5iKX19O3ZhciBUMT1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLlo9YTt0aGlzLkk9MDt0aGlzLkI9MTAwO3RoaXMuTT0hMTt0aGlzLnY9bmV3IE1hcDt0aGlzLlU9bmV3IFNldDt0aGlzLmZsdXNoSW50ZXJ2YWw9M0U0O3RoaXMubz1uZXcgXy5qeSh0aGlzLmZsdXNoSW50ZXJ2YWwpO3RoaXMuby5saXN0ZW4oInRpY2siLHRoaXMuRCwhMSx0aGlzKTtFWih0aGlzLHRoaXMubyl9c2VuZElzb2xhdGVkUGF5bG9hZChhKXt0aGlzLk09YTt0aGlzLkI9MX1EKCl7dmFyIGE9Wy4uLnRoaXMudi52YWx1ZXMoKV0uZmlsdGVyKGI9PmIuai5zaXplKTthLmxlbmd0aCYmdGhpcy5aLmZsdXNoKGEsdGhpcy5NKTtLc2EoYSk7dGhpcy5JPTA7dGhpcy5vLmVuYWJsZWQmJnRoaXMuby5zdG9wKCl9aihhKXtyZXR1cm4gdGhpcy5VLmhhcyhhKT92b2lkIDA6dGhpcy52LmdldChhKX1yZWNvcmQoYSxiLC4uLmMpeyhhPXRoaXMuaihhKSkmJmEgaW5zdGFuY2VvZiBKMSYmKGEucmVjb3JkKGIsCi4uLmMpLE4xKHRoaXMpKX19O3ZhciBzMj1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoYik7dGhpcy5jb2RlPWE7dGhpcy5tZXRhZGF0YT17fTt0aGlzLm5hbWU9IlJwY0Vycm9yIjtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxuZXcudGFyZ2V0LnByb3RvdHlwZSl9dG9TdHJpbmcoKXt2YXIgYT1gUnBjRXJyb3IoJHtMc2EodGhpcy5jb2RlKXx8U3RyaW5nKHRoaXMuY29kZSl9KWA7dGhpcy5tZXNzYWdlJiYoYSs9IjogIit0aGlzLm1lc3NhZ2UpO3JldHVybiBhfX07dmFyIERzYT1jbGFzc3tzZW5kKGEsYj0oKT0+e30sYz0oKT0+e30pe18ubHkoYS51cmwsZD0+e2Q9ZC50YXJnZXQ7aWYoZC5pc1N1Y2Nlc3MoKSl7dHJ5e3ZhciBlPWQucmE/ZC5yYS5yZXNwb25zZVRleHQ6IiJ9Y2F0Y2goZil7ZT0iIn1iKGUpfWVsc2UgYyhfLlJ4KGQpKX0sYS5yZXF1ZXN0VHlwZSxhLmJvZHksYS5PaixhLnRpbWVvdXRNaWxsaXMsYS53aXRoQ3JlZGVudGlhbHMpfVdpKCl7cmV0dXJuIDF9fTt2YXIgajU9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLlg9YTt0aGlzLmV2ZW50PWI7dGhpcy5zdGFydFRpbWU9UTEoKX1kb25lKCl7dGhpcy5YLnYodGhpcy5ldmVudCxRMSgpLXRoaXMuc3RhcnRUaW1lKX19LGs1PWNsYXNzIGV4dGVuZHMgc3Zhe2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKX19LFNzYT1jbGFzcyBleHRlbmRzIGs1e0IoKXt9aigpe312KCl7fUpiKCl7fU0oKXt9SSgpe31vKCl7fVooKXt9RCgpe31VKCl7fX0sUXZhPWNsYXNzIGV4dGVuZHMgazV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLlg9YTt0aGlzLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT52b2lkIHRoaXMuWC5kaXNwb3NlKCkpfXVwZGF0ZShhKXt0aGlzLlguZGlzcG9zZSgpO3RoaXMuWD1hfWooYSl7dGhpcy5YLmooYSl9dihhLGIpe3RoaXMuWC52KGEsYil9SmIoYSl7dGhpcy5YLkpiKGEpfU0oYSl7dGhpcy5YLk0oYSl9SShhLGIpe3RoaXMuWC5JKGEsYil9bygpe3RoaXMuWC5vKCl9WihhKXt0aGlzLlguWihhKX1EKGEpe3RoaXMuWC5EKGEpfVUoYSl7dGhpcy5YLlUoYSl9QihhKXt0aGlzLlguQihhKX19LApSdmE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoKTt0aGlzLmNhbGxiYWNrPWE7dGhpcy5vPWI7dGhpcy5qPS1iO3RoaXMuYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgY2xlYXJUaW1lb3V0KHRoaXMudGltZXIpKX19LFN2YT1jbGFzcyBleHRlbmRzIGs1e2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoKTt0aGlzLm1ldHJpY3M9YTt0aGlzLm1iPWJ9QihhKXt0aGlzLm1ldHJpY3MuQUEucmVjb3JkKGEsdGhpcy5tYil9aihhKXt0aGlzLm1ldHJpY3MuZXZlbnRDb3VudC5vKGEsdGhpcy5tYil9dihhLGIpe3RoaXMubWV0cmljcy5Odi5yZWNvcmQoYixhLHRoaXMubWIpfUpiKGEpe3RoaXMubWV0cmljcy5lcnJvckNvdW50Lm8oYSx0aGlzLm1iKX1aKGEpe3RoaXMubWV0cmljcy5KQi5vKGEsdGhpcy5tYil9RChhKXt0aGlzLm1ldHJpY3MuSnUubyhhLHRoaXMubWIpfVUoYSl7dGhpcy5tZXRyaWNzLklCLm8oYSx0aGlzLm1iKX1NKGEpe3RoaXMubWV0cmljcy5wYXlsb2FkU2l6ZS5yZWNvcmQoYSwKdGhpcy5tYil9SShhLGIpe3RoaXMubWV0cmljcy5YeS5yZWNvcmQoYixhLHRoaXMubWIpfX0sUXNhPWNsYXNzIGV4dGVuZHMgU3Zhe2NvbnN0cnVjdG9yKGEsYj1bXSl7dmFyIGM9e21iOmEubWJ8fCJfIix6bDphLnpsfHxbXSxubTphLm5tfDAsTmU6YS5OZSxGajphLkZqfHwoKCk9Pnt9KSxJZzphLklnfHwoKGUsZik9Pk9zYShlLGYsYy5GaixjLk5lKSl9LGQ9Yy5JZygiNTMiLGMuemwuY29uY2F0KGIpKTtzdXBlcih7QUE6bmV3IHR2YShkKSxlcnJvckNvdW50Om5ldyB4dmEoZCksZXZlbnRDb3VudDpuZXcgdnZhKGQpLE52Om5ldyB3dmEoZCkseUw6bmV3IHV2YShkKSxKQjpuZXcgeXZhKGQpLEp1Om5ldyB6dmEoZCksSUI6bmV3IEF2YShkKSxwYXlsb2FkU2l6ZTpuZXcgQnZhKGQpLFh5Om5ldyBDdmEoZCl9LGMubWIpO3RoaXMub3B0aW9ucz1jO3RoaXMuc2VydmljZT1kO3RoaXMub2E9IWEuSWc7dGhpcy5nYT1uZXcgUnZhKCgpPT52b2lkIHRoaXMuc2VydmljZS5EKCksYy5ubSk7CnRoaXMuYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9Pnt0aGlzLmdhLmRpc3Bvc2UoKTt0aGlzLm9hJiZ0aGlzLnNlcnZpY2UuZGlzcG9zZSgpfSk7Yi5zbGljZSgpLnNvcnQobHJhKX1vKCl7UHNhKHRoaXMuZ2EpfX07dmFyIFIyPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhLDAsUjIubWVzc2FnZUlkKX19LFR2YT1mdW5jdGlvbihhKXtyZXR1cm4gXy5DYyhiPT5iIGluc3RhbmNlb2YgYSYmIV8uQmMoYikpfShSMik7UjIubWVzc2FnZUlkPSJiZmtqIjt2YXIgaTE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIGw1PWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX19LFV2YT1TXyhsNSk7dmFyIGQyPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMudj1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjAwKTt0aGlzLmo9bmV3IGw1O2lmKCJjaGFsbGVuZ2UiaW4gYSYmVHZhKGEuY2hhbGxlbmdlKSl7dmFyIGI9Sl8oYS5jaGFsbGVuZ2UsNCx2b2lkIDAsXy53eik7dmFyIGM9Sl8oYS5jaGFsbGVuZ2UsNSx2b2lkIDAsXy53eik7Sl8oYS5jaGFsbGVuZ2UsNyx2b2lkIDAsXy53eikmJih0aGlzLmo9VXZhKEpfKGEuY2hhbGxlbmdlLDcsdm9pZCAwLF8ud3opKSl9ZWxzZSh7cHJvZ3JhbTpiLGdsb2JhbE5hbWU6Y309YSk7dGhpcy5hZGRPbkRpc3Bvc2VDYWxsYmFjayhhc3luYygpPT57dmFyIHt1QTpufT1hd2FpdCB0aGlzLm87bj8uKCl9KTt0aGlzLlg9VTEoYS5uZ3x8e30sdGhpcy5qKTtFWih0aGlzLHRoaXMuWCk7dmFyIGQ9bmV3IF8uY3M7dGhpcy5vPWQucHJvbWlzZTt0aGlzLlguaigidCIpO3ZhciBlPXRoaXMuWC5zaGFyZSgpLGY9bmV3IGo1KGUsCiJ0IiksaD0obixwLHIsdCk9PntpZighdGhpcy5YLmlhKCkpe3ZhciB2PSJrIjtwP3Y9ImgiOnImJih2PSJ1Iik7diE9PSJrIj90IT09MCYmKHRoaXMuWC5qKHYpLHRoaXMuWC52KHYsbikpOnRoaXMudjw9MD8odGhpcy5YLmoodiksdGhpcy5YLnYodixuKSx0aGlzLnY9TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjIwMCkpOnRoaXMudi0tfX0saz0obixwLHIsdCk9PntQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57Zi5kb25lKCk7ZS5vKCk7ZS5kaXNwb3NlKCk7ZC5yZXNvbHZlKHt5dTpuLHVBOnAsQXo6cixOdTp0fSl9KX0sbD1bKG4scCk9Pnt0aGlzLlgudihuLHApfSxuPT57dGhpcy5YLkpiKG4pfSxuPT57dGhpcy5YLk0obil9LChuLHApPT57dGhpcy5YLkkobixwKX1dO2lmKCFfLnVbY10pdGhyb3cgdGhpcy5YLkpiKDI1KSxFcnJvcigibmUiKTtpZighXy51W2NdLmEpdGhyb3cgdGhpcy5YLkpiKDI2KSxFcnJvcigib2UiKTt0cnl7bGV0IG49Xy51W2NdLmE7Yz1bXTtsZXQgcD0KW107dmFyIG09ajEodGhpcy5qKTtmb3IobGV0IHY9MDt2PG0ubGVuZ3RoO3YrKyljLnB1c2gobVt2XSkscC5wdXNoKDEpO2xldCByPWxzYSh0aGlzLmopO2ZvcihtPTA7bTxyLmxlbmd0aDttKyspYy5wdXNoKHJbbV0pLHAucHVzaCgyKTtsZXQgW3RdPW4oYixrLCEwLGEuRnMsaCxbYyxwXSxKXyh0aGlzLmosNSksITEsbCk7dGhpcy5CPXQ7dGhpcy5DZz1kLnByb21pc2UudGhlbigoKT0+e30pfWNhdGNoKG4pe3Rocm93IHRoaXMuWC5KYigyOCksbjt9fXNuYXBzaG90KGEpe2lmKHRoaXMuaWEoKSl0aHJvdyBFcnJvcigicGUiKTt0aGlzLlguaigibiIpO3ZhciBiPXRoaXMuWC5zaGFyZSgpO3JldHVybiB0aGlzLm8udGhlbigoe3l1OmN9KT0+bmV3IFByb21pc2UoZD0+e3ZhciBlPW5ldyBqNShiLCJuIik7YyhmPT57ZS5kb25lKCk7Yi5CKGYubGVuZ3RoKTtiLm8oKTtiLmRpc3Bvc2UoKTtkKGYpfSxbYS5LYyxhLllqLGEuSXMsYS54bl0pfSkpfVhyKGEpe2lmKHRoaXMuaWEoKSl0aHJvdyBFcnJvcigicGUiKTsKdGhpcy5YLmooIm4iKTt2YXIgYj1SMSh0aGlzLlgsKCk9PnRoaXMuQihbYS5LYyxhLllqLGEuSXMsYS54bl0pLCJuIik7dGhpcy5YLkIoYi5sZW5ndGgpO3RoaXMuWC5vKCk7cmV0dXJuIGJ9SWgoYSl7dGhpcy5vLnRoZW4oKHtBejpifSk9PntiPy4oYSl9KX1CaShhLGIpe3JldHVybiB0aGlzLm8udGhlbigoe051OmN9KT0+Yz8uKGEsYiwhMSkpfVZoKCl7cmV0dXJuIHRoaXMuWC5zaGFyZSgpfX07dmFyIFYxPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5wcm9taXNlcz17fTt0aGlzLmo9bnVsbH19O3ZhciBsdWE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIHEyPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMub3B0aW9ucz1hO3RoaXMuST1uZXcgXy5jczt0aGlzLkNnPXRoaXMuSS5wcm9taXNlO3RoaXMuRD1uZXcgXy5jczt0aGlzLlo9MTt0aGlzLnY9bmV3IF8uY3M7dGhpcy5CPVtdO3RoaXMuaXNQYXVzZWQ9ITE7dGhpcy5Haj1hLkdqfHwoKCk9Pnt9KTt0aGlzLlg9bmV3IFF2YShVMShhLm5nfHx7fSkpO2F0YSh0aGlzLGEub2QsYS5zeCxhLkhLLGEuTkssey4uLlZ2YSwuLi4oYS5MZ3x8e30pfSk7dGhpcy5hZGRPbkRpc3Bvc2VDYWxsYmFjaygoKT0+dm9pZCBidGEodGhpcykpfWFzeW5jIHNuYXBzaG90KGEpe2lmKHRoaXMuaWEoKSl0aHJvdyBFcnJvcigicGUiKTt0aGlzLm98fHRoaXMuTXx8YXdhaXQgdGhpcy5ELnByb21pc2U7aWYodGhpcy5vKXJldHVybiBhd2FpdCB0aGlzLm8uc25hcHNob3QoYSk7dGhyb3cgdGhpcy5NO31wYXVzZSgpe3RoaXMuaWEoKXx8dGhpcy5pc1BhdXNlZHx8KHRoaXMuaXNQYXVzZWQ9CiEwLHRoaXMuaiYmdGhpcy5qLnBhdXNlKCkpfXJlc3VtZSgpeyF0aGlzLmlhKCkmJnRoaXMuaXNQYXVzZWQmJih0aGlzLmlzUGF1c2VkPSExLHRoaXMuaiYmdGhpcy5qLnJlc3VtZSgpKX1hc3luYyBjaGVja0ZvclJlZnJlc2goKXtpZih0aGlzLmlhKCkpdGhyb3cgRXJyb3IoInBlIik7aWYodGhpcy5qKXt2YXIgYT10aGlzLmo7YS5pc0V4cGlyZWQoKT8oZzIoYSksYS5RaCgwKSxhPSEwKTphPSExO2EmJmF3YWl0IHRoaXMudi5wcm9taXNlfWVsc2UgYXdhaXQgdGhpcy52LnByb21pc2V9YXN5bmMgVSgpe2lmKHRoaXMuaWEoKSl0aHJvdyBFcnJvcigicGUiKTt0aGlzLmo/Lm8oKTthd2FpdCB0aGlzLnYucHJvbWlzZX1JaChhKXt0aGlzLm8/LkloPy4oYSl9QmkoYSxiKXtyZXR1cm4gdGhpcy5vPy5CaT8uKGEsYik/P1Byb21pc2UucmVzb2x2ZSgpfWhhbmRsZUVycm9yKGEpe3RoaXMuaWEoKXx8KHRoaXMuTT1hLHRoaXMuRC5yZXNvbHZlKCksdGhpcy5vcHRpb25zLkVqPy4oYSkpfVZoKCl7cmV0dXJuIHRoaXMuWC5zaGFyZSgpfX0sClZ2YT17RnI6NDMyRTUsZWs6M0U1LGxzOjEwLGF2OjFFNCxWdjozRTQscXk6M0U0LG1BOjZFNCxLdjoxRTMsSnY6NkU0LEx2OjZFNSxNdjouMjUsSXY6MixtYXhBdHRlbXB0czoxMH0sYzI9Y2xhc3N7Y29uc3RydWN0b3IoYSxiLGMpe3RoaXMuZW5kVGltZU1zPTA7dGhpcy5qPW51bGw7dGhpcy5pc1BhdXNlZD0hMTt0aGlzLnRpY2s9KCk9PntpZighdGhpcy5pc1BhdXNlZCl7dmFyIGQ9dGhpcy5lbmRUaW1lTXMtRGF0ZS5ub3coKTtkPD10aGlzLnY/KHRoaXMuaj1udWxsLHRoaXMuUWgoMCkpOnRoaXMuaj1zZXRUaW1lb3V0KHRoaXMudGljayxNYXRoLm1pbihkLHRoaXMuZWspKX19O3RoaXMuZWs9Yjt0aGlzLnY9Yzt0aGlzLnByb21pc2U9bmV3IFByb21pc2UoZD0+e3RoaXMuUWg9ZH0pO2N0YSh0aGlzLGEpfXBhdXNlKCl7dGhpcy5pc1BhdXNlZHx8KHRoaXMuaXNQYXVzZWQ9ITAsZzIodGhpcykpfXJlc3VtZSgpe3RoaXMuaXNQYXVzZWQmJih0aGlzLmlzUGF1c2VkPSExLHRoaXMudGljaygpKX1vKCl7ZzIodGhpcyk7CnRoaXMuZW5kVGltZU1zPTA7dGhpcy5pc1BhdXNlZD0hMTt0aGlzLlFoKDEpfWlzRXhwaXJlZCgpe3JldHVybiBEYXRlLm5vdygpPnRoaXMuZW5kVGltZU1zfX07dmFyIGR0YT1NYXRoLmltdWw/PygoYSxiKT0+YSpifDApLGoyPVsxOTYsMjAwLDIyNCwxOF0sbTI9Y2xhc3N7Y29uc3RydWN0b3IoYSxiPTAsYz1bXSl7dGhpcy5tYXhJdGVtcz1hO3RoaXMuaj1iO3RoaXMubz1jfXNlcmlhbGl6ZSgpe3JldHVybiBTdHJpbmcodGhpcy5qKSsiLCIrdGhpcy5vLmpvaW4oKX1yYihhLGIpe3ZhciBjPXZvaWQgMDtpZih0aGlzLm9bdGhpcy5qXSE9PWEpe2xldCBkPXRoaXMuby5pbmRleE9mKGEpO2QhPT0tMT8odGhpcy5vLnNwbGljZShkLDEpLGQ8dGhpcy5qJiZ0aGlzLmotLSx0aGlzLm8uc3BsaWNlKHRoaXMuaiwwLGEpKTooYz10aGlzLm9bdGhpcy5qXSx0aGlzLm9bdGhpcy5qXT1hKX10aGlzLmo9KHRoaXMuaisxKSV0aGlzLm1heEl0ZW1zO2E9aDIoImlVNXEtIU85QCQiLHRoaXMuc2VyaWFsaXplKCkpO2MmJmEmJmIoYyk7cmV0dXJuIGF9fSxpc2E9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLlg9Yjt0cnl7dmFyIGM9Z2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZSYmCiEhZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtJiYhIWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSYmISFnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW19Y2F0Y2goZCl7Yz0hMX1jJiYodGhpcy5pbmRleD1ndGEoYSkpfWooYSxiLGMsZCl7dmFyIGU9dGhpcy5pbmRleD9SMSh0aGlzLlgsKCk9PmV0YSh0aGlzLmluZGV4LGsyKGEpLGIsYyxkKSwiVyIpOiJ1Ijt0aGlzLlguVShlKX1vKGEsYil7dmFyIFtjLGRdPXRoaXMuaW5kZXg/UjEodGhpcy5YLCgpPT5mdGEoazIoYSksYiksIlIiKTpbInUiXTt0aGlzLlguRChjKTtyZXR1cm4gZH19O3ZhciBtNT1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLlg9YTt0aGlzLnY9bmV3IF8uY3N9emooYSxiKXt2YXIgYz10aGlzLm9lKGEpO2I/LihjKTtyZXR1cm4gUjEodGhpcy5YLCgpPT5fLnNjKGMsMiksdGhpcy5vKX1zbShhLGIsYyl7cmV0dXJuIFIxKHRoaXMuWCwoKT0+Yj90aGlzLnpqKGEsYyk6dGhpcy5vZShhLGMpLHRoaXMuail9fSx1Mj1jbGFzcyBleHRlbmRzIG01e2NvbnN0cnVjdG9yKGEsYixjLGQpe3N1cGVyKGEpO3RoaXMuQj1iO3RoaXMuST1jO3RoaXMuaj0ibSI7dGhpcy5vPSJ4Ijt0aGlzLkQ9MDtuMih0aGlzLGQpfW9lKGEsYil7dGhpcy5YLmoodGhpcy5qKTsrK3RoaXMuRD49dGhpcy5JJiZ0aGlzLnYucmVzb2x2ZSgpO3ZhciBjPWEoKTthPVIxKHRoaXMuWCwoKT0+dGhpcy5CKGMpLCJDIik7aWYoYT09PXZvaWQgMCl0aHJvdyBuZXcgaDEoMTcsIllOSjpVbmRlZmluZWQiKTtpZighKGEgaW5zdGFuY2VvZiBVaW50OEFycmF5KSl0aHJvdyBuZXcgaDEoMTgsCiJPRE06SW52YWxpZCIpO2I/LihhKTtyZXR1cm4gYX19LGx0YT1jbGFzcyBleHRlbmRzIG01e2NvbnN0cnVjdG9yKGEsYixjKXtzdXBlcihhKTt0aGlzLkI9Yjt0aGlzLmo9ImYiO3RoaXMubz0ieiI7bjIodGhpcyxjKX1vZSgpe3JldHVybiB0aGlzLkJ9fSxrdGE9Y2xhc3MgZXh0ZW5kcyBtNXtjb25zdHJ1Y3RvcihhLGIsYyl7c3VwZXIoYSk7dGhpcy5CPWI7dGhpcy5qPSJ3Ijt0aGlzLm89InoiO24yKHRoaXMsYyl9b2UoKXtyZXR1cm4gUjEodGhpcy5YLCgpPT5fLnVjKHRoaXMuQiksImQiKX16aigpe3JldHVybiB0aGlzLkJ9fSxydGE9Y2xhc3MgZXh0ZW5kcyBtNXtjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKGEpO3RoaXMuZXJyb3I9Yjt0aGlzLmo9ImUiO3RoaXMubz0ieSJ9b2UoKXtpZih0aGlzLkIpcmV0dXJuIHRoaXMuQjt0aGlzLkI9cDIodGhpcyxhPT4iXyIrZXJhKGEpKTtyZXR1cm4gcDIodGhpcyxhPT5hKX19LHF0YT1jbGFzcyBleHRlbmRzIG01e2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoYSk7CnRoaXMuY2xpZW50U3RhdGU9Yjt0aGlzLmo9IlMiO3RoaXMubz0icSJ9b2UoKXt2YXIgYT1NYXRoLmZsb29yKERhdGUubm93KCkvMUUzKSxiPVtNYXRoLnJhbmRvbSgpKjI1NSxNYXRoLnJhbmRvbSgpKjI1NV0sYz1iLmNvbmNhdChbMCx0aGlzLmNsaWVudFN0YXRlXSxbYT4+MjQmMjU1LGE+PjE2JjI1NSxhPj44JjI1NSxhJjI1NV0pO2E9bmV3IFVpbnQ4QXJyYXkoMitjLmxlbmd0aCk7YVswXT0zNDthWzFdPWMubGVuZ3RoO2Euc2V0KGMsMik7Yz1hLnN1YmFycmF5KDIpO2I9Yi5sZW5ndGg7Zm9yKGxldCBkPWI7ZDxjLmxlbmd0aDsrK2QpY1tkXV49Y1tkJWJdO3RoaXMuWC5aKHRoaXMuY2xpZW50U3RhdGUpO3JldHVybiBhfX07dmFyIFd2YT17V3Y6M0U0LEJBOjJFNH0scnVhPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMueWc9bmV3IF8uY3M7dGhpcy52PTA7dGhpcy5vPXZvaWQgMDt0aGlzLnN0YXRlPTI7dGhpcy52bT1hLnZtO3RoaXMub2Q9YS5vZDt0aGlzLkxnPXsuLi5XdmEsLi4uKGEuTGd8fHt9KX07dGhpcy5YPWEudm0uVmgoKTt0aGlzLm9uRXJyb3I9YS5vbkVycm9yPz8oKCk9Pnt9KTt0aGlzLlFuPWEuUW58fCExO2lmKFh2YShhKSl7bGV0IGQ9dGhpcy52bTt0aGlzLkI9KCk9PmQuVSgpLmNhdGNoKGU9Pnt0aGlzLm89ZT10aGlzLnJlcG9ydEVycm9yKG5ldyBoMSh0aGlzLmo/MjA6MzIsIlRSRzpEaXNwb3NlZCIsZSkpO3RoaXMuaj8uZGlzcG9zZSgpO3RoaXMuaj12b2lkIDA7dGhpcy55Zy5yZWplY3QoZSl9KTtmMihkLCgpPT52b2lkIHQyKHRoaXMpKTtkLlo9PT0yJiZ0Mih0aGlzKX1lbHNlIHRoaXMuQj1hLmlLLHQyKHRoaXMpO3ZhciBiPXRoaXMuWC5zaGFyZSgpOwpiLmooIm8iKTt2YXIgYz1uZXcgajUoYiwibyIpO3RoaXMueWcucHJvbWlzZS50aGVuKCgpPT57Yy5kb25lKCk7Yi5vKCk7Yi5kaXNwb3NlKCl9LCgpPT52b2lkIGIuZGlzcG9zZSgpKTt0aGlzLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57dGhpcy5qPyh0aGlzLmouZGlzcG9zZSgpLHRoaXMuaj12b2lkIDApOnRoaXMubz90aGlzLlgubygpOih0aGlzLm89dGhpcy5yZXBvcnRFcnJvcihuZXcgaDEoMzIsIlROUDpEaXNwb3NlZCIpKSx0aGlzLlgubygpLHRoaXMueWcucmVqZWN0KHRoaXMubykpfSk7RVoodGhpcyx0aGlzLlgpfW9lKGEpe3JldHVybiB3Mih0aGlzLHsuLi5hfSwhMSl9emooYSl7cmV0dXJuIHcyKHRoaXMsey4uLmF9LCEwKX1yZXBvcnRFcnJvcihhKXt0aGlzLlguSmIoYS5jb2RlKTt0aGlzLm9uRXJyb3IoYSk7cmV0dXJuIGF9fSxYdmE9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQ2MoYj0+e2lmKCEoMCxfLnFyKShiKSlyZXR1cm4hMTtmb3IobGV0IFtjLGRdb2YgT2JqZWN0LmVudHJpZXMoYSkpe2xldCBlPQpjLGY9ZDtpZighKGUgaW4gYikpe2lmKGYuQko9PT0hMCljb250aW51ZTtyZXR1cm4hMX1pZighZihiW2VdKSlyZXR1cm4hMX1yZXR1cm4hMH0pfSh7dm06ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQ2MoYj0+YiBpbnN0YW5jZW9mIGEpfShxMil9LCIiKTt2YXIgWnZhPWNsYXNze2NvbnN0cnVjdG9yKCl7aWYoIW41KXtuNT1uZXcgVDEobmV3IFl2YSk7dmFyIGE9Xy5zaigiY2xpZW50X3N0cmVhbXpfd2ViX2ZsdXNoX2NvdW50IiwtMSk7YSE9PS0xJiYobjUuQj1hKX10aGlzLnY9YT1uNTtNMShhLCIvY2xpZW50X3N0cmVhbXoveW91dHViZS9hYmEvZ2FjIixsMSgidHlwZSIpLGwxKCJzZXF1ZW5jZSIpKX1vKGEsYil7TzEodGhpcy52LCIvY2xpZW50X3N0cmVhbXoveW91dHViZS9hYmEvZ2FjIixhLGIpfWooKXtyZXR1cm4gdGhpcy52LmooIi9jbGllbnRfc3RyZWFtei95b3V0dWJlL2FiYS9nYWMiKX19O3ZhciBtdWE9U18oY2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX0pO3ZhciAkdmE9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07dmFyIG81PVswLHB2YSwtMV07dmFyIHA1PVswLGh2YSwtMV07dmFyIGF3YT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTt2YXIgYndhPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX1oYXNBdHRyaWJ1dGVzKCl7dmFyIGE9dGhpcy5EYTtyZXR1cm4gXy5NeChhLGFbXy5BY118MCxhd2EsMTkpIT09dm9pZCAwfX07dmFyIGN3YT1mdW5jdGlvbihhKXtyZXR1cm4gYj0+Xy5veihiLGEpfShbMCxjNSwtMSxYNCwkNCxvNSwtMSxXNCxaNCxjNSxwNSwkNCxjNSwtMSxbMCxvNSwtMV0sWjQsWTQscDUsVzQsWzAsMSxaNCwtNCxWNCxbMCxXNCwtMSxaNF0sJDQsVzQsXy55eixbMCxjNSxaNF0sWjQsLTEsYzUsLTIsVzQsLTEsYzUsVzQsYzUsWjQsWzAsMyxaNCwtMSw0LG52YV0sVjQsYjUsWzAsYzUsLTEsJDRdLF8ueHpdLCQ0LG92YSxfLnl6LFswLHA1LF8ueXosWzAsJDQsYzVdLFc0LGM1LC0xXSwxLF8ueXosWzAsWTQsLTEsYjVdLGM1LHA1XSk7ejIucHJvdG90eXBlLmlzSW5wdXRWYWxpZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLkIhPTN9O3oyLnByb3RvdHlwZS5kb25lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuQj09PTJ9Owp6Mi5wcm90b3R5cGUucGFyc2U9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe2Zvcig7cDxhLmxlbmd0aDspaWYoeTIoYVtwXSkpcCsrLGYudisrO2Vsc2UgYnJlYWs7cmV0dXJuIHA8bH1mdW5jdGlvbiBjKCl7Zm9yKHZhciB0Ozspe3Q9YVtwKytdO2lmKCF0KWJyZWFrO2YudisrO3N3aXRjaChmLmope2Nhc2UgMDp0PT09InsiP2Yuaj0yOnQ9PT0iWyI/Zi5qPTQ6eTIodCl8fEEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDc6Y2FzZSAyOmlmKHkyKHQpKWNvbnRpbnVlO2lmKGYuaj09PTcpaC5wdXNoKDgpO2Vsc2UgaWYodD09PSJ9Iil7ZSgie30iKTtmLmo9ZCgpO2NvbnRpbnVlfWVsc2UgaC5wdXNoKDMpO3Q9PT0nIic/Zi5qPTY6QTIoZixhLHApO2NvbnRpbnVlO2Nhc2UgODpjYXNlIDM6aWYoeTIodCkpY29udGludWU7dD09PSI6Ij8oZi5qPT09MyYmKGgucHVzaCgzKSxmLm8rKyksZi5qPTEpOnQ9PT0ifSI/KGYuby0tLGUoKSxmLmo9ZCgpKTp0PT09IiwiPyhmLmo9PT0zJiZoLnB1c2goMyksCmYuaj03KTpBMihmLGEscCk7Y29udGludWU7Y2FzZSA0OmNhc2UgMTppZih5Mih0KSljb250aW51ZTtpZihmLmo9PT00KWlmKGYubysrLGYuaj0xLHQ9PT0iXSIpe2Yuby0tO2lmKGYubz09PTApe2Yuaj01O3JldHVybn1lKCJbXSIpO2Yuaj1kKCk7Y29udGludWV9ZWxzZSBoLnB1c2goNSk7dD09PSciJz9mLmo9Njp0PT09InsiP2Yuaj0yOnQ9PT0iWyI/Zi5qPTQ6dD09PSJ0Ij9mLmo9OTp0PT09ImYiP2Yuaj0xMjp0PT09Im4iP2Yuaj0xNjp0IT09Ii0iJiYoIjAxMjM0NTY3ODkiLmluZGV4T2YodCkhPT0tMT9mLmo9MjA6QTIoZixhLHApKTtjb250aW51ZTtjYXNlIDU6aWYodD09PSIsIiloLnB1c2goNSksZi5qPTEsZi5vPT09MSYmKG49cCk7ZWxzZSBpZih0PT09Il0iKXtmLm8tLTtpZihmLm89PT0wKXJldHVybjtlKCk7Zi5qPWQoKX1lbHNlIGlmKHkyKHQpKWNvbnRpbnVlO2Vsc2UgQTIoZixhLHApO2NvbnRpbnVlO2Nhc2UgNjpsZXQgdj1wO2E6Zm9yKDs7KXtmb3IoO2YuSz4wOylpZih0PQphW3ArK10sZi5LPT09ND9mLks9MDpmLksrKywhdClicmVhayBhO2lmKHQ9PT0nIicmJiFmLkQpe2Yuaj1kKCk7YnJlYWt9aWYodD09PSJcXCImJiFmLkQmJihmLkQ9ITAsdD1hW3ArK10sIXQpKWJyZWFrO2lmKGYuRClpZihmLkQ9ITEsdD09PSJ1IiYmKGYuSz0xKSx0PWFbcCsrXSljb250aW51ZTtlbHNlIGJyZWFrO2subGFzdEluZGV4PXA7dD1rLmV4ZWMoYSk7aWYoIXQpe3A9YS5sZW5ndGgrMTticmVha31wPXQuaW5kZXgrMTt0PWFbdC5pbmRleF07aWYoIXQpYnJlYWt9Zi52Kz1wLXY7Y29udGludWU7Y2FzZSA5OmlmKCF0KWNvbnRpbnVlO3Q9PT0iciI/Zi5qPTEwOkEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDEwOmlmKCF0KWNvbnRpbnVlO3Q9PT0idSI/Zi5qPTExOkEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDExOmlmKCF0KWNvbnRpbnVlO3Q9PT0iZSI/Zi5qPWQoKTpBMihmLGEscCk7Y29udGludWU7Y2FzZSAxMjppZighdCljb250aW51ZTt0PT09ImEiP2Yuaj0xMzpBMihmLGEsCnApO2NvbnRpbnVlO2Nhc2UgMTM6aWYoIXQpY29udGludWU7dD09PSJsIj9mLmo9MTQ6QTIoZixhLHApO2NvbnRpbnVlO2Nhc2UgMTQ6aWYoIXQpY29udGludWU7dD09PSJzIj9mLmo9MTU6QTIoZixhLHApO2NvbnRpbnVlO2Nhc2UgMTU6aWYoIXQpY29udGludWU7dD09PSJlIj9mLmo9ZCgpOkEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDE2OmlmKCF0KWNvbnRpbnVlO3Q9PT0idSI/Zi5qPTE3OkEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDE3OmlmKCF0KWNvbnRpbnVlO3Q9PT0ibCI/Zi5qPTE4OkEyKGYsYSxwKTtjb250aW51ZTtjYXNlIDE4OmlmKCF0KWNvbnRpbnVlO3Q9PT0ibCI/Zi5qPWQoKTpBMihmLGEscCk7Y29udGludWU7Y2FzZSAxOTp0PT09Ii4iP2Yuaj0yMDpBMihmLGEscCk7Y29udGludWU7Y2FzZSAyMDppZigiMDEyMzQ1Njc4OS5lRSstIi5pbmRleE9mKHQpIT09LTEpY29udGludWU7ZWxzZSBwLS0sZi52LS0sZi5qPWQoKTtjb250aW51ZTtkZWZhdWx0OkEyKGYsYSxwKX19fQpmdW5jdGlvbiBkKCl7dmFyIHQ9aC5wb3AoKTtyZXR1cm4gdCE9bnVsbD90OjF9ZnVuY3Rpb24gZSh0KXtmLm8+MXx8KHR8fCh0PW49PT0tMT9mLkkrYS5zdWJzdHJpbmcobSxwKTphLnN1YnN0cmluZyhuLHApKSxmLlkucHVzaChKU09OLnBhcnNlKHQpKSxuPXApfWZvcih2YXIgZj10aGlzLGg9Zi5VLGs9Zi5aLGw9YS5sZW5ndGgsbT0wLG49LTEscD0wO3A8bDspc3dpdGNoKGYuQil7Y2FzZSAzOnJldHVybiBBMihmLGEscCksbnVsbDtjYXNlIDI6cmV0dXJuIGIoKSYmQTIoZixhLHApLG51bGw7Y2FzZSAwOmlmKGIoKSl7dmFyIHI9YVtwKytdO2YudisrO2lmKHI9PT0iWyIpe2YuQj0xO209cDtmLmo9NDtjb250aW51ZX1lbHNlIEEyKGYsYSxwKX1yZXR1cm4gbnVsbDtjYXNlIDE6cmV0dXJuIGMoKSxmLm89PT0wJiZmLmo9PTU/KGYuQj0yLGYuST1hLnN1YnN0cmluZyhwKSk6Zi5JPW49PT0tMT9mLkkrYS5zdWJzdHJpbmcobSk6YS5zdWJzdHJpbmcobiksZi5ZLmxlbmd0aD4wPyhyPWYuWSwKZi5ZPVtdLHIpOm51bGx9cmV0dXJuIG51bGx9O3ZhciBtcmE9e0dFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfVU5LTk9XTiIsQUQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9GT1JfVEVTVElORyIsa0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9SRVNVTUVfVE9fSE9NRV9UVEwiLHdFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfU1RBUlRfVE9fU0hPUlRTX0FOQUxZU0lTX1NMSUNFIixvRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0RFVklDRV9MQVlFUl9TTElDRSIsRkU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9VTklGSUVEX0xBWUVSX1NMSUNFIixKRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1ZJU0lUT1JfTEFZRVJfU0xJQ0UiLHVFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfU0hPV19TSEVFVF9DT01NQU5EX0hBTkRMRVJfQkxPQ0siLApNRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1dJWl9ORVhUX01JR1JBVEVEX0NPTVBPTkVOVCIsTEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9XSVpfTkVYVF9DSEFOTkVMX05BTUVfVE9PTFRJUCIscEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9ST1RBVElPTl9MT0NLX1NVUFBPUlRFRCIsekU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9USEVBVEVSX01PREVfRU5BQkxFRCIsU0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9XT1VMRF9TSE9XX1BJTl9TVUdHRVNUSU9OIixSRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1dPVUxEX1NIT1dfTE9OR19QUkVTU19FRFVfVE9BU1QiLFFFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfV09VTERfU0hPV19BTUJJRU5UIixBRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1RJTUVfV0FUQ0hFRF9QQU5FTCIsCnJFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfU0VBUkNIX0ZST01fU0VBUkNIX0JBUl9PVkVSTEFZIixURToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1dPVUxEX1NIT1dfVk9JQ0VfU0VBUkNIX0VEVV9UT0FTVCIseUU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9TVUdHRVNURURfTEFOR1VBR0VfU0VMRUNURUQiLFVFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfV09VTERfVFJJR0dFUl9TSE9SVFNfUElQIixKRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0lOX1pQX1ZPSUNFX0NSQVNIWV9TRVQiLGdFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUkVFTF9GQVNUX1NXSVBFX1NVUFBSRVNTRUQiLGZFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUkVFTF9GQVNUX1NXSVBFX0FMTE9XRUQiLGlFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUkVFTF9QVUxMX1RPX1JFRlJFU0hfQVRURU1QVCIsCk5FOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfV09VTERfQkxPQ0tfS0FCVUtJIixqRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1JFRUxfVEFMTF9TQ1JFRU4iLGhFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUkVFTF9OT1JNQUxfU0NSRUVOIixoRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0FDQ0VTU0lCSUxJVFlfTU9ERV9FTkFCTEVEIixnRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0FDQ0VTU0lCSUxJVFlfTU9ERV9ESVNBQkxFRCIsaUQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9BVVRPUExBWV9FTkFCTEVEIixqRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0NBU1RfTUFUQ0hfT0NDVVJSRUQiLHREOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfRU1DM0RTX0VMSUdJQkxFIix3RDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VORFNDUkVFTl9UUklHR0VSRUQiLApkRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1BPU1RQTEFZX1RSSUdHRVJFRCIsY0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9QT1NUUExBWV9MQUNUX1RIUkVTSE9MRF9FWENFRURFRCIsQ0Q6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9JREVOVElUSUVTX1NUQVRFX01BVENIRURfT05fUkVNT1RFX0NPTk5FQ1RJT04iLEVEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfSURFTlRJVElFU19TVEFURV9TV0lUQ0hBQkxFX09OX1JFTU9URV9DT05ORUNUSU9OIixERDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0lERU5USVRJRVNfU1RBVEVfTUlTQVRUUklCVVRFRF9PTl9SRU1PVEVfQ09OTkVDVElPTiIsSEQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9JREVOVElUSUVTX1RWX0lTX1NJR05FRF9JTl9PTl9SRU1PVEVfQ09OTkVDVElPTiIsREU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9UVl9TVEFSVF9UWVBFX0NPTERfT05fUkVNT1RFX0NPTk5FQ1RJT04iLApFRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1RWX1NUQVJUX1RZUEVfTk9OX0NPTERfT05fUkVNT1RFX0NPTk5FQ1RJT04iLFlEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfT05fUkVNT1RFX0NPTk5FQ1RJT04iLG5EOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfQ09CQUxUX1BFUlNJU1RFTlRfU0VUVElOR1NfVEVTVF9WQUxJRCIsbEQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9DT0JBTFRfUEVSU0lTVEVOVF9TRVRUSU5HU19URVNUX0lOVkFMSUQiLG1EOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfQ09CQUxUX1BFUlNJU1RFTlRfU0VUVElOR1NfVEVTVF9VTkRFRklORUQiLGtEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfQ09CQUxUX1BFUlNJU1RFTlRfU0VUVElOR1NfVEVTVF9ERUZJTkVEIixNRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0xBQ1RfVEhSRVNIT0xEX0VYQ0VFREVEIiwKcUU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9ST1VORF9UUklQX0hBTkRMSU5HX09OX1JFTU9URV9DT05ORUNUSU9OIixHRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0lERU5USVRJRVNfU1RBVEVfU1dJVENIRURfT05fUkVNT1RFX0NPTk5FQ1RJT05fQkVGT1JFX0FQUF9SRUxPQUQiLEZEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfSURFTlRJVElFU19TVEFURV9TV0lUQ0hFRF9PTl9SRU1PVEVfQ09OTkVDVElPTl9BRlRFUl9BUFBfUkVMT0FEIix1RDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VNQzNEU19JTkVMSUdJQkxFIixCRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1RWSFRNTDVfTUlEX1JPTExfVEhSRVNIT0xEX1JFQUNIRUQiLHlEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfRVhQX0NPQkFMVF9IVFRQM19DT05GSUdfUEVORElORyIsCnhEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfRVhQX0NPQkFMVF9IVFRQM19DT05GSUdfQUNUSVZBVEVEIix2RDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VNQzNEU19NMl9FTElHSUJMRSIsbkU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9ST1RBVEVfREVWSUNFX1RPX0xBTkRTQ0FQRSIsb0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9ST1RBVEVfREVWSUNFX1RPX1BPUlRSQUlUIixzRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VNQkVEU19GQUNFT0ZGX1VJX0VWRU5UIix6RDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VYUF9DT0JBTFRfSFRUUDNfQ09ORklHX1JFQ0VJVkVEIixyRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0VMSUdJQkxFX1RPX1NVUFBSRVNTX1RSQU5TUE9SVF9DT05UUk9MU19CVVRUT05TIiwKSEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9VU0VSX0hBU19USEVBVEVSX01PREVfQ09PS0lFX0VOQUJMRUQiLHFEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfRE9DVU1FTlRfUElDVFVSRV9JTl9QSUNUVVJFX1NVUFBPUlRFRCIsdEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9TSE9SVFNfTk9OX0RFRkFVTFRfQVNQRUNUX1JBVElPIixiRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1BMQVlFUl9JTl9TUVVFRVpFQkFDSyIsTkQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9MSVZFX0NSRUFUT1JfQVJfR0lGVF9SRUNFSVZFRCIsbUU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9SRVRVUk5FRF9UT19WSURFT19BRlRFUl9GQUlMRURfQVRURU1QVF9UT19CQUNLR1JPVU5EIixPRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1dPVUxEX0VOVEVSX0FVVE9fWk9PTSIsClpEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUEFTU0lWRV9JTl9DT05UUk9MIixhRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1BBU1NJVkVfSU5fVFJFQVRNRU5UIixwRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0RJU0FCTEVfUExBWUVSX09QRU5fT05fRlVMTFNDUkVFTiIsVEQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9NRFhfUkVDT05ORUNUX1dJVEhfUkVUUlkiLHZFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfU0lOR0xFX0NPTFVNTl9HUklEX1RSSUdHRVJFRCIsUEQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9NRFhfQ09OTkVDVElPTl9USU1FT1VUIixPRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX0xJVkVfR0hPU1RfTE9BRElOR19FTElHSUJMRSIseEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9TVFJFQU1FRF9HRVRfV0FUQ0hfU1VQUE9SVEVEIiwKS0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9XRUJWSUVXX0NPTlRBSU5FUiIsUEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9XT1VMRF9FTlRFUl9QSVAiLGVFOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfUFJFTUlVTV9MSVRFX1VQU0VMTF9FTElHSUJMRSIsVkQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9PRkZMSU5FX1JFQ09WRVJZX0JST0FEIixYRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX09GRkxJTkVfUkVDT1ZFUllfVU5QTEFZQUJMRSIsV0Q6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9PRkZMSU5FX1JFQ09WRVJZX1NUUklDVCIsS0Q6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9JT1NfU0hPUlRfT1JJRU5UQVRJT05fQ0hBTkdFIixDRToiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX1RWSFRNTDVfUExBWUVSX0VSUk9SX09WRVJMQVlfVFJJR0dFUkVEIiwKc0U6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9TSEFERVJfTElHSFRfRU5BQkxFRCIsSUQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9JREVOVElUWV9NSVNNQVRDSF9ERVRFQ1RFRCIsbEU6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9SRVNVTUVfVE9fU0hPUlRTX1RSSUdHRVJFRCIsQkQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9HUldTX0NVU1RPTV9SRVRSWV9DQUxMRUQiLFNEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfTURYX01PQklMRV9VTkxPQ0tfVE9LRU5fTUlTTUFUQ0giLFJEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfTURYX01PQklMRV9VTkxPQ0tfUEFZTE9BRF9UT0tFTl9NSVNTSU5HIixRRDoiR0VORVJJQ19DTElFTlRfRVhQRVJJTUVOVF9FVkVOVF9UWVBFX01EWF9NT0JJTEVfVU5MT0NLX0dBVEVfVE9LRU5fTUlTU0lORyIsClVEOiJHRU5FUklDX0NMSUVOVF9FWFBFUklNRU5UX0VWRU5UX1RZUEVfTVVTSUNfT0ZGTElORV9IT01FX1NNQVJUX0RPV05MT0FEU19QUk9NT19DSEVDSyIsTEQ6IkdFTkVSSUNfQ0xJRU5UX0VYUEVSSU1FTlRfRVZFTlRfVFlQRV9JUEFEX0RFU0tUT1BfTUFUQ0gifTt2YXIgZHdhPW5ldyBfLkkoInN1YnNjcmliZUVuZHBvaW50Iik7dmFyIEIyPWNsYXNzIGV4dGVuZHMgXy5MYXtjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKGAke2F9LCBlcnJvckNvZGU9JHtifWApO3RoaXMuZXJyb3JDb2RlPWI7dGhpcy5uYW1lPSJQcm9taXNlQWpheEVycm9yIn19LHR0YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX19O3ZhciBEMj1jbGFzc3tjb25zdHJ1Y3RvcihhPW51bGwpe3RoaXMudj1hO3RoaXMuaj0wO3RoaXMubz1udWxsfXRoZW4oYSxiLGMpe3JldHVybiB0aGlzLnY/dGhpcy52LnRoZW4oYSxiLGMpOnRoaXMuaj09PTEmJmE/KGE9YS5jYWxsKGMsdGhpcy5vKSkmJnR5cGVvZiBhLnRoZW49PT0iZnVuY3Rpb24iP2E6RjIoYSk6dGhpcy5qPT09MiYmYj8oYT1iLmNhbGwoYyx0aGlzLm8pKSYmdHlwZW9mIGEudGhlbj09PSJmdW5jdGlvbiI/YTpFMihhKTp0aGlzfWlzUmVqZWN0ZWQoKXtyZXR1cm4gdGhpcy5qPT0yfX07Xy55ZihEMik7dmFyIE0yPWNsYXNzIGV4dGVuZHMgXy5MYXtjb25zdHJ1Y3RvcihhKXtzdXBlcihhLm1lc3NhZ2V8fGEuZGVzY3JpcHRpb258fGEubmFtZSk7dGhpcy5pc01pc3Npbmc9YSBpbnN0YW5jZW9mIEsyO3RoaXMuaXNUaW1lb3V0PWEgaW5zdGFuY2VvZiBCMiYmYS5lcnJvckNvZGU9PSJuZXQudGltZW91dCI7dGhpcy5pc0NhbmNlbGVkPWEgaW5zdGFuY2VvZiBfLlBmfX07TTIucHJvdG90eXBlLm5hbWU9IkJpc2NvdHRpRXJyb3IiO3ZhciBLMj1jbGFzcyBleHRlbmRzIF8uTGF7Y29uc3RydWN0b3IoKXtzdXBlcigiQmlzY290dGkgSUQgaXMgbWlzc2luZyBmcm9tIHNlcnZlciIpfX07SzIucHJvdG90eXBlLm5hbWU9IkJpc2NvdHRpTWlzc2luZ0Vycm9yIjt2YXIgc3RhPXtmb3JtYXQ6IlJBVyIsbWV0aG9kOiJHRVQiLHRpbWVvdXQ6NUUzLHdpdGhDcmVkZW50aWFsczohMH0sSDI9bnVsbDt2YXIgV3RhPVsiYXR0L2dldCJdLGV3YT1bInNoYXJlL2dldF9zaGFyZV9wYW5lbCJdLGZ3YT1bInNoYXJlL2dldF93ZWJfcGxheWVyX3NoYXJlX3BhbmVsIl0scTU9WyJmZWVkYmFjayJdLGd3YT1bIm5vdGlmaWNhdGlvbi9tb2RpZnlfY2hhbm5lbF9wcmVmZXJlbmNlIl0saHdhPVsiYnJvd3NlL2VkaXRfcGxheWxpc3QiXSxpd2E9WyJzdWJzY3JpcHRpb24vc3Vic2NyaWJlIl0sandhPVsic3Vic2NyaXB0aW9uL3Vuc3Vic2NyaWJlIl07dmFyIHI1PWNsYXNze2ZsdXNoKGE9W10sYj0hMSl7aWYoXy54KCJlbmFibGVfY2xpZW50X3N0cmVhbXpfd2ViIikpZm9yKGxldCBjIG9mIGEpYT1yMShjKSx0aGlzLmomJl8uS3coYSwyLHRoaXMuaiksYT17c2VyaWFsaXplZEluY3JlbWVudEJhdGNoOl8uc2MoYS52KCkpfSxfLkVwKCJzdHJlYW16SW5jcmVtZW50ZWQiLGEse3NlbmRJc29sYXRlZFBheWxvYWQ6Yn0pfX0sWXZhPWNsYXNzIGV4dGVuZHMgcjV7Y29uc3RydWN0b3IoKXtzdXBlcigpfX0scXVhPWNsYXNzIGV4dGVuZHMgcjV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt2YXIgYj1uZXcgRXZhO3ZhciBjPW5ldyBEdmE7Yz1CWihjLDEsImJvdGd1YXJkIik7YT1CWihjLDIsYSk7YT1fLkp3KGEpO0ZfKGIsMSxlNSxhKTthJiYhXy5CYyhhKSYmXy5vdyhiLkRhKTt0aGlzLmo9Yn19O3ZhciBuNSxqND1uZXcgTWFwO3ZhciBBdGE9bnVsbDt2YXIgQ3RhPW5ldyBNYXAoW1siZGFyayIsIlVTRVJfSU5URVJGQUNFX1RIRU1FX0RBUksiXSxbImxpZ2h0IiwiVVNFUl9JTlRFUkZBQ0VfVEhFTUVfTElHSFQiXV0pO3ZhciBYMj1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX1iaW5kSW5uZXJ0dWJlQ2hhbGxlbmdlRmV0Y2hlcihhKXt0aGlzLmouYmljZihhKX1yZWdpc3RlckNoYWxsZW5nZUZldGNoZWRDYWxsYmFjayhhKXt0aGlzLmouYmNyKGEpfWdldExhdGVzdENoYWxsZW5nZVJlc3BvbnNlKCl7cmV0dXJuIHRoaXMuai5ibGMoKX19O3ZhciAkMj1bXSxaMj0oMCxfLll4KWBodHRwczovL3N0YXRpYy5kb3VibGVjbGljay5uZXQvaW5zdHJlYW0vYWRfc3RhdHVzLmpzYCxZMj0hMTt2YXIgczU9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9fTtbbmV3IHM1KCJiLmZfIiksbmV3IHM1KCJqLnNfIiksbmV3IHM1KCJyLnNfIiksbmV3IHM1KCJlLmhfIiksbmV3IHM1KCJpLnNfIiksbmV3IHM1KCJzLnRfIiksbmV3IHM1KCJwLmhfIiksbmV3IHM1KCJzLmlfIiksbmV3IHM1KCJmLmlfIiksbmV3IHM1KCJhLmJfIiksbmV3IHM1KCJhLm9fIiksbmV3IHM1KCJnLm9fIiksbmV3IHM1KCJwLmlfIiksbmV3IHM1KCJwLm1fIiksbmV3IHM1KCJuLmtfIiksbmV3IHM1KCJpLmZfIiksbmV3IHM1KCJhLnNfIiksbmV3IHM1KCJtLmNfIiksbmV3IHM1KCJuLmhfIiksbmV3IHM1KCJvLnBfIiksbmV3IHM1KCJtLnBfIiksbmV3IHM1KCJvLmFfIiksbmV3IHM1KCJkLnBfIiksbmV3IHM1KCJlLmlfIildLnJlZHVjZSgoYSxiKT0+e2FbYi5qXT1iO3JldHVybiBhfSx7fSk7dmFyIFA0PWNsYXNze2NvbnN0cnVjdG9yKGEsYixjKXt0aGlzLm5ldHdvcms9YTt0aGlzLm9wdGlvbnM9Yjt0aGlzLks9Yzt0aGlzLnY9MDt0aGlzLmo9bnVsbDt0aGlzLm89bmV3IFp2YTtiLnpzP2IzKHRoaXMsSXRhKHRoaXMpKTpiLnByZWxvYWQmJmIzKHRoaXMsbmV3IFByb21pc2UoZD0+e18uWWooKCk9PntkKGUzKHRoaXMpKX0sMCl9KSl9YXN5bmMgRCgpe3JldHVybiEhYXdhaXQgUHJvbWlzZS5yYWNlKFt0aGlzLmosbnVsbF0pfWFzeW5jIEIoYSxiLGMpe3RoaXMuaj09PW51bGwmJmIzKHRoaXMsZTModGhpcykpO3ZhciBkPSExLGU9e307cmV0dXJuIFByb21pc2UucmFjZShbKGFzeW5jKCk9Pnt0aGlzLm9wdGlvbnMuUUkmJnRoaXMub3B0aW9ucy56cyYmYXdhaXQgKGF3YWl0IEV0YSgpKT8uY2hlY2tGb3JSZWZyZXNoKCk7dmFyIGY9YXdhaXQgdGhpcy5qO2UuY2hhbGxlbmdlPWYuY2hhbGxlbmdlO2lmKGYudm0pe3ZhciBoPXtjOmYuY2hhbGxlbmdlLGU6YSwuLi5ifTt0cnl7ZD0KITA7bGV0IGs7KGs9YXdhaXQgZi52bS5zbmFwc2hvdCh7S2M6aH0pKT9lLndlYlJlc3BvbnNlPWs6ZS5lcnJvcj0iQVRURVNUQVRJT05fRVJST1JfVk1fTk9fUkVTUE9OU0UifWNhdGNoe2UuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX0lOVEVSTkFMX0VSUk9SIn19ZWxzZSJjMWEiaW4gZi5CZiYmKGUuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX05PVF9JTklUSUFMSVpFRCIpO2E9PT0iRU5HQUdFTUVOVF9UWVBFX1BMQVlCQUNLIiYmKGY9Zi5CZixoPXt9LGYuYzZhJiYoaC5yZXBvcnRpbmdTdGF0dXM9U3RyaW5nKE51bWJlcihmLmMpXmEzKCkpKSxmLmM2YiYmKGguYnJvYWRTcGVjdHJ1bURldGVjdGlvblJlc3VsdD1TdHJpbmcoTnVtYmVyKGYuYyleTnVtYmVyKF8udygiQ0FUU1RBVCIsMCkpKSksZS5hZGJsb2NrUmVwb3J0aW5nPWgpO3JldHVybiBlfSkoKSxNdGEoYywoKT0+e3ZhciBmPU9iamVjdC5hc3NpZ24oe30sZSk7ZCYmKGYuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX1RJTUVPVVQiKTsKcmV0dXJuIGZ9KV0pfWFzeW5jIFJmKGEpe3ZhciBiPXRoaXMuSztpZighYnx8Yi5TYigpKXJldHVybiBmMyh0aGlzLGEpO3gwKCJhdHRfcG5hIik7cmV0dXJuIG5ldyBQcm9taXNlKGM9PntfLmJmKGIsInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vbmxpbmUiLCgpPT57ZjModGhpcyxhKS50aGVuKGMpfSl9KX19O3ZhciBnMz17V0VCX1VOUExVR0dFRDoiXnVucGx1Z2dlZC8iLFdFQl9VTlBMVUdHRURfT05CT0FSRElORzoiXnVucGx1Z2dlZC8iLFdFQl9VTlBMVUdHRURfT1BTOiJedW5wbHVnZ2VkLyIsV0VCX1VOUExVR0dFRF9QVUJMSUM6Il51bnBsdWdnZWQvIixXRUJfQ1JFQVRPUjoiXmNyZWF0b3IvIixXRUJfS0lEUzoiXmtpZHMvIixXRUJfRVhQRVJJTUVOVFM6Il5leHBlcmltZW50cy8iLFdFQl9NVVNJQzoiXm11c2ljLyIsV0VCX1JFTUlYOiJebXVzaWMvIixXRUJfTVVTSUNfRU1CRURERURfUExBWUVSOiJebXVzaWMvIixXRUJfTVVTSUNfRU1CRURERURfUExBWUVSOiJebWFpbl9hcHAvfF5zZnYvIn07dmFyIFl1YT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX1hc3luYyBSZihhKXt4MCgiYXR0X2ZzciIpO2E9YXdhaXQgWXRhKHRoaXMuaixhKTt4MCgiYXR0X2ZyciIpO3JldHVybiBhfX07dmFyIGkzPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj0icGVuZGluZyI7dGhpcy5vPVtdO3RoaXMudj1bXTt0cnl7YSh0aGlzLkIuYmluZCh0aGlzKSx0aGlzLnJlamVjdC5iaW5kKHRoaXMpKX1jYXRjaChiKXt0aGlzLnJlamVjdChiKX19c3RhdGUoKXtyZXR1cm4gdGhpcy5pc0Z1bGZpbGxlZCgpP3tzdGF0ZToiZnVsZmlsbGVkIix2YWx1ZTp0aGlzLnJlc3VsdH06dGhpcy5pc1JlamVjdGVkKCk/e3N0YXRlOiJyZWplY3RlZCIscmVhc29uOnRoaXMuZXJyb3J9OntzdGF0ZToicGVuZGluZyJ9fWlzRnVsZmlsbGVkKCl7cmV0dXJuIHRoaXMuaj09PSJmdWxmaWxsZWQifWlzUmVqZWN0ZWQoKXtyZXR1cm4gdGhpcy5qPT09InJlamVjdGVkIn1pc1BlbmRpbmcoKXtyZXR1cm4gdGhpcy5qPT09InBlbmRpbmcifUIoYSl7KDAsXy5ibykoYSl8fGozKGEpP2wzKGszKGEpLHRoaXMuQi5iaW5kKHRoaXMpLHRoaXMucmVqZWN0LmJpbmQodGhpcykpOih0aGlzLmo9ImZ1bGZpbGxlZCIsdGhpcy5yZXN1bHQ9CmEsbjModGhpcykpfXJlamVjdChhKXt0aGlzLmo9InJlamVjdGVkIjt0aGlzLmVycm9yPWE7bjModGhpcyl9fSxqMz1fLkNjKGE9PigwLF8ucXIpKGEpP2EgaW5zdGFuY2VvZiBpMzohMSk7dmFyIHQ1PWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj1hfXJ1bihhLGIpe3JldHVybiBvMyh0aGlzLGZ1bmN0aW9uKCl7dmFyIGM9dGhpcztyZXR1cm4gZnVuY3Rpb24qKCl7Zm9yKHZhciBkPWEsZT1iLGY9W107Oyl7Zi5wdXNoKFN0cmluZyhkKSk7ZT15aWVsZCpwMyhjLmpbZF0uZXhlY3V0ZShlKSk7aWYoZS5uZXh0U3RhdGU9PT0iRE9ORSIpcmV0dXJuIGYucHVzaCgiRE9ORSIpLGUudmFsdWU7aWYoZS5uZXh0U3RhdGU9PT0iRkFJTEVEIil0aHJvdyBmLnB1c2goYEZBSUxFRCgke2UuZXJyb3IubWVzc2FnZXx8ImVycm9yIn0pYCksZS5lcnJvcjtkPWUubmV4dFN0YXRlO2U9ZS5wYXJhbXN9fSgpfSl9fTt2YXIgdTU9Y2xhc3N7fTt2YXIgdTM9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmo9e307aWYodGhpcy5vPV8ucXooKSl7bGV0IGE9Xy5Mai5nZXQoIkNPTlNJU1RFTkNZIix2b2lkIDApO2EmJnIzKHRoaXMse2VuY3J5cHRlZFRva2VuSmFyQ29udGVudHM6YX0pfX1oYW5kbGVSZXNwb25zZShhLGIpe2lmKCFiKXRocm93IEVycm9yKCJLZSIpO2I9Yi5pbm5lclR1YmVSZXF1ZXN0LmNvbnRleHQ/LnJlcXVlc3Q/LmNvbnNpc3RlbmN5VG9rZW5KYXJzfHxbXTsoYT1hLnJlc3BvbnNlQ29udGV4dD8uY29uc2lzdGVuY3lUb2tlbkphcikmJnRoaXMucmVwbGFjZShiLGEpfXJlcGxhY2UoYSxiKXtmb3IobGV0IGMgb2YgYSlkZWxldGUgdGhpcy5qW2MuZW5jcnlwdGVkVG9rZW5KYXJDb250ZW50c107cjModGhpcyxiKX19O3ZhciBrd2E9d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCIuIikuc2xpY2UoLTIpLmpvaW4oIi4iKSx2Mz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMudj0tMTt2YXIgYT1fLncoIkxPQ0FUSU9OX1BMQVlBQklMSVRZX1RPS0VOIik7Xy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJUVkhUTUw1IiYmKHRoaXMubG9jYWxTdG9yYWdlPXMzKHRoaXMpKSYmKGE9dGhpcy5sb2NhbFN0b3JhZ2UuZ2V0KCJ5dC1sb2NhdGlvbi1wbGF5YWJpbGl0eS10b2tlbiIpKTthJiYodGhpcy5sb2NhdGlvblBsYXlhYmlsaXR5VG9rZW49YSx0aGlzLm89dGhpcy5qPXZvaWQgMCl9c3RhdGljIGpjKCl7djU9Xy5zYSgieXQuY2xpZW50TG9jYXRpb25TZXJ2aWNlLmluc3RhbmNlIik7djV8fCh2NT1uZXcgdjMsXy5yYSgieXQuY2xpZW50TG9jYXRpb25TZXJ2aWNlLmluc3RhbmNlIix2NSkpO3JldHVybiB2NX1zZXRMb2NhdGlvbk9uSW5uZXJUdWJlQ29udGV4dChhKXthLmNsaWVudHx8KGEuY2xpZW50PQp7fSk7aWYodGhpcy5qKWEuY2xpZW50LmxvY2F0aW9uSW5mb3x8KGEuY2xpZW50LmxvY2F0aW9uSW5mbz17fSksYS5jbGllbnQubG9jYXRpb25JbmZvLmxhdGl0dWRlRTc9TWF0aC5mbG9vcih0aGlzLmouY29vcmRzLmxhdGl0dWRlKjFFNyksYS5jbGllbnQubG9jYXRpb25JbmZvLmxvbmdpdHVkZUU3PU1hdGguZmxvb3IodGhpcy5qLmNvb3Jkcy5sb25naXR1ZGUqMUU3KSxhLmNsaWVudC5sb2NhdGlvbkluZm8uaG9yaXpvbnRhbEFjY3VyYWN5TWV0ZXJzPU1hdGgucm91bmQodGhpcy5qLmNvb3Jkcy5hY2N1cmFjeSksYS5jbGllbnQubG9jYXRpb25JbmZvLmZvcmNlTG9jYXRpb25QbGF5YWJpbGl0eVRva2VuUmVmcmVzaD0hMDtlbHNlIGlmKHRoaXMuQnx8dGhpcy5sb2NhdGlvblBsYXlhYmlsaXR5VG9rZW4pYS5jbGllbnQubG9jYXRpb25QbGF5YWJpbGl0eVRva2VuPXRoaXMuQnx8dGhpcy5sb2NhdGlvblBsYXlhYmlsaXR5VG9rZW59Z2V0WEdlb0hlYWRlcigpe2lmKHRoaXMubyl7dmFyIGE9CnRoaXMubzt2YXIgYj1NYXRoLmZsb29yKGEuY29vcmRzLmxvbmdpdHVkZSoxRTcpO3ZhciBjPU1hdGguZmxvb3IoYS5jb29yZHMubGF0aXR1ZGUqMUU3KTt2YXIgZD1uZXcgJHZhO2M9Xy5xdyhkLDEsXy5QdyhjKSk7Yj1fLnF3KGMsMixfLlB3KGIpKTtjPW5ldyBid2E7Yz1DWihjLDEsMSk7Yz1DWihjLDIsMTIpO2M9Q1ooYyw5LDgpO2M9Xy5xdyhjLDMseV8oYS50aW1lc3RhbXAqMUUzKSk7YT1fLnF3KGMsNyxwXyhhLmNvb3Jkcy5hY2N1cmFjeSoxRTMpKTthPUNaKGEsMjUsMik7YT1fLkt3KGEsNSxiKTthPWB3ICR7Xy5zYyhjd2EoYSksNCl9YH1lbHNlIGE9bnVsbDtyZXR1cm4gYX1oYW5kbGVSZXNwb25zZShhKXthPWEucmVzcG9uc2VDb250ZXh0Py5sb2NhdGlvblBsYXlhYmlsaXR5VG9rZW47YSE9PXZvaWQgMCYmKHRoaXMubG9jYXRpb25QbGF5YWJpbGl0eVRva2VuPWEsdGhpcy5vPXRoaXMuaj12b2lkIDAsXy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJUVkhUTUw1Ij8KKHRoaXMubG9jYWxTdG9yYWdlPXMzKHRoaXMpKSYmdGhpcy5sb2NhbFN0b3JhZ2Uuc2V0KCJ5dC1sb2NhdGlvbi1wbGF5YWJpbGl0eS10b2tlbiIsYSwxNTU1MkUzKTpfLk1qKCJZVF9DTCIsSlNPTi5zdHJpbmdpZnkoe2xvY3RvazphfSksMTU1NTJFMyxrd2EsITApKX1jbGVhckxvY2F0aW9uUGxheWFiaWxpdHlUb2tlbihhKXthPT09IlRWSFRNTDUiPyh0aGlzLmxvY2FsU3RvcmFnZT1zMyh0aGlzKSkmJnRoaXMubG9jYWxTdG9yYWdlLnJlbW92ZSgieXQtbG9jYXRpb24tcGxheWFiaWxpdHktdG9rZW4iKTpfLk5qKCJZVF9DTCIpO3RoaXMuQj12b2lkIDA7dGhpcy52IT09LTEmJihjbGVhclRpbWVvdXQodGhpcy52KSx0aGlzLnY9LTEpfWNsZWFyQ3VycmVudFBvc2l0aW9uKCl7dGhpcy5vPXRoaXMuaj12b2lkIDB9Z2V0Q3VycmVudFBvc2l0aW9uRnJvbUdlb2xvY2F0aW9uKGEpe2lmKCEobmF2aWdhdG9yJiZuYXZpZ2F0b3IuZ2VvbG9jYXRpb24mJm5hdmlnYXRvci5nZW9sb2NhdGlvbi5nZXRDdXJyZW50UG9zaXRpb24pKXJldHVybiBQcm9taXNlLnJlamVjdChFcnJvcigiTGUiKSk7CnZhciBiPSExLGM9MUU0O18udygiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIik9PT0iTVdFQiImJihiPSEwLGM9MTVFMyk7cmV0dXJuIG5ldyBQcm9taXNlKChkLGUpPT57bmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihmPT57dGhpcy5vPWE/LmFkZFRvSGVhZGVycz9mOnZvaWQgMDt0aGlzLmo9ZjtkKGYpfSxmPT57ZShmKX0se2VuYWJsZUhpZ2hBY2N1cmFjeTpiLG1heGltdW1BZ2U6MCx0aW1lb3V0OmN9KX0pfWNyZWF0ZVVucGx1Z2dlZExvY2F0aW9uSW5mbyhhKXt2YXIgYj17fTthPWEuY29vcmRzO2E/LmxhdGl0dWRlJiYoYi5sYXRpdHVkZUU3PU1hdGguZmxvb3IoYS5sYXRpdHVkZSoxRTcpKTthPy5sb25naXR1ZGUmJihiLmxvbmdpdHVkZUU3PU1hdGguZmxvb3IoYS5sb25naXR1ZGUqMUU3KSk7YT8uYWNjdXJhY3kmJihiLmxvY2F0aW9uUmFkaXVzTWV0ZXJzPU1hdGgucm91bmQoYS5hY2N1cmFjeSkpO3JldHVybiBifWNyZWF0ZUxvY2F0aW9uSW5mbyhhKXt2YXIgYj0Ke307YT1hLmNvb3JkczthPy5sYXRpdHVkZSYmKGIubGF0aXR1ZGVFNz1NYXRoLmZsb29yKGEubGF0aXR1ZGUqMUU3KSk7YT8ubG9uZ2l0dWRlJiYoYi5sb25naXR1ZGVFNz1NYXRoLmZsb29yKGEubG9uZ2l0dWRlKjFFNykpO3JldHVybiBifX0sdjU7dmFyIEYzPSJ0b2tlbnMgY29uc2lzdGVuY3kgc2VydmljZV9wYXJhbXMgbXNzIGNsaWVudF9sb2NhdGlvbiBlbnRpdGllcyBhZGJsb2NrX2RldGVjdGlvbiByZXNwb25zZV9yZWNlaXZlZF9jb21tYW5kcyBzdG9yZSBtYW5pZmVzdCBwbGF5ZXJfcHJlbG9hZCBzaG9ydHNfcHJlZmV0Y2ggcmVzb2x2ZV91cmxfcHJlZmV0Y2giLnNwbGl0KCIgIik7dmFyIGx3YT1jbGFzc3tEKGEsYj17fSxjPUEzKXt2YXIgZD17Y29udGV4dDp3MyhhLmNsaWNrVHJhY2tpbmdQYXJhbXMsITEsdGhpcy5CKX07dmFyIGU9dGhpcy5vKGEpO2lmKGUpe3RoaXMuaihkLGUsYik7ZT1gL3lvdXR1YmVpL3YxLyR7aDModGhpcy52KCkpfWA7dmFyIGY9Xy5CKGEuY29tbWFuZE1ldGFkYXRhLF8uencpPy5hcGlVcmw7ZiYmKGU9Zik7ZT1YMChZMChlKSk7Zj17Y29tbWFuZDphLC4uLih2b2lkIDApfTtkPXtpbnB1dDplLHdiOlowKGUpLGlubmVyVHViZVJlcXVlc3Q6ZCxjb25maWc6Zn07ZC5jb25maWcuUmQ/ZC5jb25maWcuUmQuaWRlbnRpdHk9YzpkLmNvbmZpZy5SZD17aWRlbnRpdHk6Y307KGE9dGhpcy5LKGEpKSYmIWQuY29uZmlnLnJlcXVlc3RLZXkmJihkLmNvbmZpZy5yZXF1ZXN0S2V5PWEpO2IuYWJvcnRTaWduYWwmJihkLndiLnNpZ25hbD1iLmFib3J0U2lnbmFsKTtyZXR1cm4gZH1iPW5ldyBfLlhqKCJFcnJvcjogRmFpbGVkIHRvIGNyZWF0ZSBSZXF1ZXN0IGZyb20gQ29tbWFuZC4iLAphKTtfLkdwKGIpfWdldCBCKCl7cmV0dXJuITF9Sygpe319LHc1PWNsYXNzIGV4dGVuZHMgbHdhe0soYSl7cmV0dXJuIF8uQihhLmNvbW1hbmRNZXRhZGF0YSxfLnp3KT8ucmVxdWVzdEtleT8/dm9pZCAwfX07dmFyIG13YT17R0VUX0RBVEFTWU5DX0lEUzp5MyhjbGFzcyBleHRlbmRzIHc1e0QoKXtyZXR1cm57aW5wdXQ6Ii9nZXREYXRhc3luY0lkc0VuZHBvaW50Iix3YjpaMCgiL2dldERhdGFzeW5jSWRzRW5kcG9pbnQiLCJHRVQiKSxpbm5lclR1YmVSZXF1ZXN0Ont9fX12KCl7cmV0dXJuW119bygpe31qKCl7fX0pfTt2YXIgVTM9bmV3IF8uVnMoIlJFUVVFU1RfTUFDSElORV9SRUdJU1RSWV9UT0tFTiIpLEIzPW5ldyBfLlZzKCJSRVFVRVNUX01BQ0hJTkVfRkFDVE9SWV9UT0tFTiIpLEozPW5ldyBfLlZzKCJJTkZMSUdIVF9SRVFVRVNUX01BUF9UT0tFTiIpO3ZhciBhdWE9WyJ0eXBlLmdvb2dsZWFwaXMuY29tL3lvdXR1YmUuYXBpLnBmaWlubmVydHViZS5Zb3V0dWJlQXBpSW5uZXJ0dWJlLkJyb3dzZVJlc3BvbnNlIiwidHlwZS5nb29nbGVhcGlzLmNvbS95b3V0dWJlLmFwaS5wZmlpbm5lcnR1YmUuWW91dHViZUFwaUlubmVydHViZS5QbGF5ZXJSZXNwb25zZSIsInR5cGUuZ29vZ2xlYXBpcy5jb20veW91dHViZS5hcGkucGZpaW5uZXJ0dWJlLllvdXR1YmVBcGlJbm5lcnR1YmUuUGFuZWxSZXNwb25zZSJdLHozPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjLGQpe3RoaXMudj1hO3RoaXMuU2E9Yjt0aGlzLm89Yzt0aGlzLkI9ZDt0aGlzLmo9bmV3IE1hcDthLkhkfHwoYS5IZD17fSk7YS5IZD17Li4ubXdhLC4uLmEuSGR9fVFpKGEsYil7dmFyIGM9Xy55KCkucmVzb2x2ZShfLkluKEIzKSk/LigpO2lmKGMpcmV0dXJuIG0zKGV1YShjLHtjb21tYW5kOmEsZm9ybTpiLGlkZW50aXR5OkEzfSkpLnRoZW4oZT0+ZSwoKT0+e30pO3ZhciBkPVp0YSh0aGlzLAphKTtyZXR1cm4gZD9uZXcgXy5CZihhc3luYyhlLGYpPT57dmFyIGg9KGF3YWl0IGQpLkQoYSxiLEEzKTtoPyhQMihoLmlucHV0KSxmPWgud2I/Lm1vZGU9PT0iY29ycyI/ImNvcnMiOnZvaWQgMCxmPXRoaXMuby56bj9DMyhoLmNvbmZpZyxmKTphd2FpdCBEMyhoLmNvbmZpZyxmKSxlKEUzKHRoaXMsaCxmKSkpOmYobmV3IF8uWGooIkVycm9yOiBGYWlsZWQgdG8gYnVpbGQgcmVxdWVzdCBmb3IgY29tbWFuZCIsYSkpfSk6Xy5PdChuZXcgXy5YaigiRXJyb3I6IE5vIHJlcXVlc3QgYnVpbGRlciBmb3VuZCBmb3IgY29tbWFuZCIsYSkpfUp3KGEpe3JldHVybiBVdGEoYSx0aGlzLnYpfX07dmFyIHg1PW5ldyBfLlZzKCJMT0NBTF9JTk5FUlRVQkVfUk9VVEVSX1RPS0VOIik7dmFyIHU0PW5ldyBfLlZzKCJFTkRQT0lOVF9NQVAiKTt2YXIgdDQ9bmV3IF8uVnMoIkFVVEhfU0VSVklDRV9UT0tFTiIpO3ZhciBLMz1jbGFzcyBleHRlbmRzIHU1e2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5qPWF9ZXhlY3V0ZShhKXtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3ZhciBiPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBjPWEueXRSZXF1ZXN0O1AyKGMuaW5wdXQpO3ZhciBkPWMud2I/Lm1vZGU9PT0iY29ycyI/ImNvcnMiOnZvaWQgMDtpZihiLmouem4pe2xldCBlPV8uUGooe3Nlc3Npb25JbmRleDpjLmNvbmZpZz8uUmQ/LnNlc3Npb25JbmRleH0pO2Q9ey4uLngzKGQpLC4uLmV9fWVsc2UgZD15aWVsZCpwMyhjdWEoYixjLmNvbmZpZyxkKSk7Yy53Yj17Li4uYy53YixoZWFkZXJzOnsuLi4oYy53Yj8uaGVhZGVycz8/e30pLC4uLmR9fTtyZXR1cm57bmV4dFN0YXRlOiJERURVUEUiLHBhcmFtczphfX0oKX0pfX07SzNbXy5Mbl09W3Q0XTt2YXIgJDM9bmV3IF8uVnMoIlJFU1BPTlNFX01BQ0hJTkVfUkVHSVNUUllfVE9LRU4iKSxhND1uZXcgXy5WcygiUkVTUE9OU0VfTUFDSElORV9GQUNUT1JZX1RPS0VOIik7dmFyIEwzPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSxiKXtzdXBlcigpO3RoaXMuaj1hO3RoaXMubz1ifWV4ZWN1dGUoYSl7dmFyIGI9dGhpcy5vLGM9dGhpcy5qO3JldHVybiBvMyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBkPWEueXRSZXF1ZXN0LGU9ZC5jb25maWc/LktBPy5aSztpZihlJiZiJiZiLmhhcyhlKSYmIWQuY29uZmlnPy5LQT8uZGlzYWJsZUNhY2hlKXt2YXIgZj15aWVsZCpwMyhrMyhiLmdldChlKSkpO2lmKGYmJiFmLmlzRXhwaXJlZCgpKXJldHVybiBkPWYuaigpLF8ueCgid2ViX3Byb2Nlc3NfcmVzcG9uc2Vfc3RvcmVfcmVzcG9uc2VzIikmJiFmLmlzUHJvY2Vzc2VkKCk/KGY9YygpLGQ9eWllbGQqcDMoSDMoZix7d2lyZVJlc3BvbnNlOmQseXRSZXF1ZXN0OmEueXRSZXF1ZXN0LGNodW5rQ2FsbGJhY2s6YS5jaHVua0NhbGxiYWNrLHJlc3BvbnNlUGF5bG9hZDp7dHlwZToiUEFHRV9DT05UUkFDVCJ9LGV4dHJhY3RlZFJlc3BvbnNlOmR9KSksCnlpZWxkKnAzKGszKGIuaihlKSkpLHtuZXh0U3RhdGU6IkRPTkUiLHZhbHVlOmR9KTp7bmV4dFN0YXRlOiJET05FIix2YWx1ZTpkfX1yZXR1cm57bmV4dFN0YXRlOiJMT0NBTF9ST1VURVIiLHBhcmFtczphfX0oKX0pfX07TDNbXy5Mbl09W2E0LF8uSW4obmV3IF8uVnMoIkVQSEVNRVJBTF9TVE9SRV9UT0tFTiIpKV07dmFyIE0zPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSxiKXtzdXBlcigpO3RoaXMubz1hO3RoaXMuaj1ifWV4ZWN1dGUoYSl7dmFyIGI9dGhpcy5vLGM9dGhpcy5qLGQ9YS55dFJlcXVlc3QsZT1kPy5pbm5lclR1YmVSZXF1ZXN0Py5jb250ZXh0O2lmKCFlKXJldHVybiBrMyh7bmV4dFN0YXRlOiJBVVRIIixwYXJhbXM6YX0pO3ZhciBmPVtdO2lmKGMmJmMubGVuZ3RoPjApZm9yKGxldCBoIG9mIGMpYz1oLkJyKGQpLGMudiYmZi5wdXNoKGMudik7Zm9yKGxldCBoIG9mIGJ8fFtdKWguQnIoZSk7cmV0dXJuIGYubGVuZ3RoPjA/bzModGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt5aWVsZCpwMyhrMyhQcm9taXNlLmFsbChmKSkpO3JldHVybntuZXh0U3RhdGU6IkFVVEgiLHBhcmFtczphfX0oKX0pOmszKHtuZXh0U3RhdGU6IkFVVEgiLHBhcmFtczphfSl9fTtNM1tfLkxuXT1bXy5JbihuZXcgXy5WcygiQ09OVEVYVF9QUk9DRVNTT1JfTUFQIikpLF8uSW4obmV3IF8uVnMoIkFTWU5DX0NPTlRFWFRfUFJPQ0VTU09SX01BUCIpKV07dmFyIE4zPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmo9YX1leGVjdXRlKGEpe3ZhciBiPXRoaXMuajtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgYz1hLnl0UmVxdWVzdC5jb25maWc/LnJlcXVlc3RLZXk7cmV0dXJuIGMmJmIuaGFzKGMpJiYoYz1iLmdldChjKSxjPXlpZWxkKnAzKGszKGMpKSk/e25leHRTdGF0ZToiRE9ORSIsdmFsdWU6Y306e25leHRTdGF0ZToiRkVUQ0giLHBhcmFtczphfX0oKX0pfX07TjNbXy5Mbl09W0ozXTt2YXIgTzM9Y2xhc3MgZXh0ZW5kcyB1NXtjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKCk7dGhpcy5vPWE7dGhpcy5qPWJ9ZXhlY3V0ZShhKXt2YXIgYj10aGlzLmosYz10aGlzLm87cmV0dXJuIG8zKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIGQ9YS55dFJlcXVlc3QsZT1hLmNodW5rQ2FsbGJhY2ssZj17dHlwZToiUEFHRV9DT05UUkFDVCJ9O2lmKGI/LmNJKGQuaW5wdXQsZC5pbm5lclR1YmVSZXF1ZXN0KSl7bGV0IGs9eWllbGQqcDMoazMoYi5PSihkLmlucHV0LGQuaW5uZXJUdWJlUmVxdWVzdCkpKTtpZihrKXtsZXQgbD0hMTt2YXIgaD1mdW5jdGlvbihtLG4pe3JldHVybiBmdW5jdGlvbiooKXt2YXIgcD1jKCk7eWllbGQqcDMoSDMocCx7d2lyZVJlc3BvbnNlOm4seXRSZXF1ZXN0OmQsY2h1bmtDYWxsYmFjazplLHJlc3BvbnNlUGF5bG9hZDpmfSkpO2w9ITB9KCl9O2sucGxheWVyUmVzcG9uc2UmJih5aWVsZCpoKGsucGxheWVyUmVzcG9uc2Use3BsYXllclJlc3BvbnNlOmsucGxheWVyUmVzcG9uc2V9KSk7Cmsud2F0Y2hOZXh0UmVzcG9uc2UmJih5aWVsZCpoKGsud2F0Y2hOZXh0UmVzcG9uc2Use3dhdGNoTmV4dFJlc3BvbnNlOmsud2F0Y2hOZXh0UmVzcG9uc2V9KSk7bHx8KGg9YygpLHlpZWxkKnAzKEgzKGgse3dpcmVSZXNwb25zZTprLHl0UmVxdWVzdDpkLGNodW5rQ2FsbGJhY2s6ZSxyZXNwb25zZVBheWxvYWQ6Zn0pKSk7aWYoZSlyZXR1cm57bmV4dFN0YXRlOiJET05FIix2YWx1ZTpmfTtoPWYuY29udGVudHx8Zi5wbGF5ZXJ8fGYuZG47cmV0dXJuIGYudHlwZT09PSJQQUdFX0NPTlRSQUNUIiYmaD97bmV4dFN0YXRlOiJET05FIix2YWx1ZTpofTp7bmV4dFN0YXRlOiJET05FIix2YWx1ZTprfX19cmV0dXJue25leHRTdGF0ZToiRkFJTEVEIixlcnJvcjpFcnJvcigiTmUiKX19KCl9KX19O08zW18uTG5dPVthNCxfLkluKHg1KV07dmFyIHk1PWNsYXNzIGV4dGVuZHMgXy5Yantjb25zdHJ1Y3RvcihhLGIsYyl7c3VwZXIoYix7c3RhdHVzOmMsLi4uW119KTt0aGlzLnR5cGU9YTt0aGlzLnN0YXR1cz1jO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLG5ldy50YXJnZXQucHJvdG90eXBlKX19O3ZhciByND1uZXcgXy5WcygiTkVUV09SS19NQU5BR0VSX1RPS0VOIik7dmFyIFAzPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSxiLGMsZCl7c3VwZXIoKTt0aGlzLlNhPWE7dGhpcy5qPWI7dGhpcy52PWM7dGhpcy5vPWR9ZXhlY3V0ZShhKXt2YXIgYj10aGlzLlNhLGM9dGhpcy5qLGQ9dGhpcy52LGU9dGhpcy5vO3JldHVybiBvMyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBmPWEueXRSZXF1ZXN0LGg9YS5jaHVua0NhbGxiYWNrLGs9Zi5jb25maWc/LnJlcXVlc3RLZXksbD1KU09OLnN0cmluZ2lmeShmLmlubmVyVHViZVJlcXVlc3QpLG09ey4uLmYud2IsYm9keTpmLndiLm1ldGhvZD09PSJQT1NUIj9sOnZvaWQgMH07Zi5jb25maWc/LmtuJiZfLkFxKGYuY29uZmlnLmtuKTt2YXIgbj17dHlwZToiUEFHRV9DT05UUkFDVCJ9LHA9MCxyPXo9PntJMyhkKCkse3dpcmVSZXNwb25zZTp6LHl0UmVxdWVzdDpmLGNodW5rQ2FsbGJhY2s6aCxyZXNwb25zZVBheWxvYWQ6bn0scCsrKX07bD0oKT0+aD9iLmZldGNoKGYuaW5wdXQsCm0sZi5jb25maWcscik6Yi5mZXRjaChmLmlucHV0LG0sZi5jb25maWcpO3RyeXt2YXIgdD1lP2UuSksoZixsKTpsKCl9Y2F0Y2goeil7dD1Qcm9taXNlLnJlamVjdCh6KX1rJiZjJiZjLnNldChrLHQpO3RyeXt2YXIgdj15aWVsZCpwMyhrMyh0KSl9Y2F0Y2goeil7cmV0dXJuIF8ueCgid2ViX2VuYWJsZV9yZXRyaWVzIikmJih2PXogaW5zdGFuY2VvZiBUeXBlRXJyb3ImJnoubWVzc2FnZT09PSJGYWlsZWQgdG8gZmV0Y2giPzE6MCxHMyh2KSk/e25leHRTdGF0ZToiUkVUUlkiLHBhcmFtczp7Li4uYSxlcnJvcjpuZXcgeTUodix6Lm1lc3NhZ2UpLGF0dGVtcHQ6KGEuYXR0ZW1wdHx8MCkrMX19OntuZXh0U3RhdGU6IkZBTExCQUNLIixwYXJhbXM6ey4uLmF9fX1rJiZjJiZjLmRlbGV0ZShrKTt3MCh2MChmLmlucHV0KSkoKTtmLmNvbmZpZz8ucG4mJl8uQXEoZi5jb25maWcucG4pO2lmKCF2KXJldHVybntuZXh0U3RhdGU6IkZBTExCQUNLIixwYXJhbXM6ey4uLmF9fTtpZih2JiZ0eXBlb2Ygdj09PQoib2JqZWN0IiYmIUFycmF5LmlzQXJyYXkodikmJihrPXYsay5lcnJvck1ldGFkYXRhPy5zdGF0dXMmJihrPWsuZXJyb3JNZXRhZGF0YS5zdGF0dXMsdD1rPT09NTAzfHxrPT09NTA0fHxrPT09NDI5PzI6az49NDAwJiZrPDUwMHx8az49NTAwPzM6MCxHMyh0KSYmXy54KCJ3ZWJfZW5hYmxlX3JldHJpZXMiKSkpKXJldHVybntuZXh0U3RhdGU6IlJFVFJZIixwYXJhbXM6ey4uLmEsZXJyb3I6bmV3IHk1KHQsYEhUVFAgU3RhdHVzICR7a31gLGspLGF0dGVtcHQ6KGEuYXR0ZW1wdHx8MCkrMX19OyFoJiZ2JiYoaz1kKCksaz15aWVsZCpwMyhJMyhrLHt3aXJlUmVzcG9uc2U6dix5dFJlcXVlc3Q6ZixyZXNwb25zZVBheWxvYWQ6e3R5cGU6IlBBR0VfQ09OVFJBQ1QifX0pKSx0PWsuY29udGVudHx8ay5wbGF5ZXJ8fGsuZG4say50eXBlPT09IlBBR0VfQ09OVFJBQ1QiJiZ0JiYodj10KSk7az12O2lmKEFycmF5LmlzQXJyYXkodikpaWYodj12LmZpbHRlcih6PT4hKHoucGxheWVyUmVzcG9uc2V8fAp6LndhdGNoTmV4dFJlc3BvbnNlfHx6KS5yZXNwb25zZUNvbnRleHQ/LmZyYW1ld29ya09ubHkpLHYubGVuZ3RoPT09MSlrPXZbMF07ZWxzZSBpZih2Lmxlbmd0aD4xKWs9di5maW5kKHo9Pnoud2F0Y2hOZXh0UmVzcG9uc2UpfHx2WzBdO2Vsc2UgcmV0dXJue25leHRTdGF0ZToiRkFJTEVEIixlcnJvcjpFcnJvcigiT2UiKX07cmV0dXJue25leHRTdGF0ZToiRE9ORSIsdmFsdWU6aCYmIV8ueCgid2ViX25tX2ZldGNoX2NodW5rX2NhbGxiYWNrX2tzIik/bjprfX0oKX0pfX07UDNbXy5Mbl09W3I0LEozLGE0LF8uSW4obmV3IF8uVnMoIlJFUVVFU1RfU0VRVUVOQ0lORyIpKV07dmFyIFEzPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSxiKXtzdXBlcigpO3RoaXMubz1hO3RoaXMuaj1ifWV4ZWN1dGUoYSl7dmFyIGI9dGhpcy5qLGM9dGhpcy5vLGQ9YS55dFJlcXVlc3Q7cmV0dXJuIGI/LlBLKGQuaW5wdXQsZC5pbm5lclR1YmVSZXF1ZXN0KT9vMyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBlPXlpZWxkKnAzKGszKGIuUEooZC5pbnB1dCxkLmlubmVyVHViZVJlcXVlc3QpKSksZj1jKCk7aWYoZS5wbGF5ZXJSZXNwb25zZSYmZS53YXRjaE5leHRSZXNwb25zZSl7dmFyIGg9eWllbGQqcDMoSDMoZix7d2lyZVJlc3BvbnNlOntwbGF5ZXJSZXNwb25zZTplLnBsYXllclJlc3BvbnNlfSx5dFJlcXVlc3Q6YS55dFJlcXVlc3QsY2h1bmtDYWxsYmFjazphLmNodW5rQ2FsbGJhY2sscmVzcG9uc2VQYXlsb2FkOnt0eXBlOiJQQUdFX0NPTlRSQUNUIn0sZXh0cmFjdGVkUmVzcG9uc2U6ZS5wbGF5ZXJSZXNwb25zZX0pKTtoPXlpZWxkKnAzKEgzKGYsCnt3aXJlUmVzcG9uc2U6e3dhdGNoTmV4dFJlc3BvbnNlOmUud2F0Y2hOZXh0UmVzcG9uc2V9LHl0UmVxdWVzdDphLnl0UmVxdWVzdCxjaHVua0NhbGxiYWNrOmEuY2h1bmtDYWxsYmFjayxyZXNwb25zZVBheWxvYWQ6e3R5cGU6IlBBR0VfQ09OVFJBQ1QifSxleHRyYWN0ZWRSZXNwb25zZTplLndhdGNoTmV4dFJlc3BvbnNlfSkpfWVsc2UgaD15aWVsZCpwMyhIMyhmLHt3aXJlUmVzcG9uc2U6ZSx5dFJlcXVlc3Q6YS55dFJlcXVlc3QsY2h1bmtDYWxsYmFjazphLmNodW5rQ2FsbGJhY2sscmVzcG9uc2VQYXlsb2FkOnt0eXBlOiJQQUdFX0NPTlRSQUNUIn0sZXh0cmFjdGVkUmVzcG9uc2U6ZX0pKTtmPWguY29udGVudHx8aC5wbGF5ZXJ8fGguZG47aC50eXBlPT09IlBBR0VfQ09OVFJBQ1QiJiZmJiYoZT1mKTtyZXR1cm57bmV4dFN0YXRlOiJET05FIix2YWx1ZTplfX0oKX0pOmszKHtuZXh0U3RhdGU6IkNPTlRFWFQiLHBhcmFtczphfSl9fTtRM1tfLkxuXT1bYTQsXy5Jbih4NSldO3ZhciBSMz1jbGFzcyBleHRlbmRzIHU1e2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5qPWF9ZXhlY3V0ZShhKXtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3ZhciBiPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKigpe3RyeXt2YXIgYz15aWVsZCpwMyhkdWEoYixhLmNvbW1hbmQsISFhLmNodW5rQ2FsbGJhY2spKX1jYXRjaChkKXtyZXR1cm57bmV4dFN0YXRlOiJGQUlMRUQiLGVycm9yOmR9fXJldHVybihjPWMuRChhLmNvbW1hbmQsYS5mb3JtLGEuaWRlbnRpdHkpKT97bmV4dFN0YXRlOiJDQUNIRSIscGFyYW1zOnt5dFJlcXVlc3Q6YyxjaHVua0NhbGxiYWNrOmEuY2h1bmtDYWxsYmFja319OntuZXh0U3RhdGU6IkZBSUxFRCIsZXJyb3I6RXJyb3IoIlBlIil9fSgpfSl9fTtSM1tfLkxuXT1bdTRdO3ZhciBTMz1jbGFzcyBleHRlbmRzIHU1e2V4ZWN1dGUoYSl7cmV0dXJuIG8zKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIHtpbm5lclR1YmVSZXF1ZXN0OmIsYXBpUGF0aDpjLGNsaWNrVHJhY2tpbmdQYXJhbXM6ZCxjb25maWc6ZT17UmQ6e2lkZW50aXR5OkEzfX0saW5jbHVkZUN1cnJlbnRTY3JlZW5Ob25jZTpmPSEwLGNodW5rQ2FsbGJhY2s6aH09YTtiLmNvbnRleHR8fChiLmNvbnRleHQ9dzMoZCxmKSk7dmFyIGs9WDAoWTAoYykpO3JldHVybntuZXh0U3RhdGU6IkNBQ0hFIixwYXJhbXM6e3l0UmVxdWVzdDp7aW5wdXQ6ayx3YjpaMChrKSxpbm5lclR1YmVSZXF1ZXN0OmIsY29uZmlnOmV9LGNodW5rQ2FsbGJhY2s6aH19fSgpfSl9fTt2YXIgVjM9Y2xhc3MgZXh0ZW5kcyB0NXt9O1YzW18uTG5dPVtVM107dmFyIFQzPWNsYXNzIGV4dGVuZHMgdTV7ZXhlY3V0ZShhKXtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgYj1hLnl0UmVxdWVzdCxjPWEuZXJyb3IsZD1hLmF0dGVtcHQsZT1hLmNodW5rQ2FsbGJhY2ssZj1iLmNvbmZpZz8uREs7aWYoIShmJiZjIGluc3RhbmNlb2YgeTUmJkczKGMudHlwZSkpfHxkPihmLm1heFJldHJpZXM/PzApKXJldHVybntuZXh0U3RhdGU6IkZBTExCQUNLIixwYXJhbXM6e3l0UmVxdWVzdDpiLGNodW5rQ2FsbGJhY2s6ZX19O3ZhciBoPShjPWYuWEgpP2MuY0ooZCk6LTE7aD09PS0xJiYoaD0xRTMpO2YuQ3khPT12b2lkIDAmJihoPU1hdGgubWluKGgsZi5DeSkpO3lpZWxkKnAzKGszKG5ldyBQcm9taXNlKGs9PntfLk50KGssaCl9KSkpO3JldHVybntuZXh0U3RhdGU6IkZFVENIIixwYXJhbXM6e3l0UmVxdWVzdDpiLGNodW5rQ2FsbGJhY2s6ZSxhdHRlbXB0OmR9fX0oKX0pfX07dmFyIFczPWNsYXNzIGV4dGVuZHMgdTV7ZXhlY3V0ZShhKXtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgYj1hLmNodW5rQ2FsbGJhY2ssYz1hLnJlc3BvbnNlUGF5bG9hZCxkPWEud2lyZVJlc3BvbnNlO2ImJihiKGMpLCJwbGF5ZXJSZXNwb25zZSJpbiBkJiZkLnBsYXllclJlc3BvbnNlJiYoXy5DaygpLChiPV8uc2EoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5zZXRQcmlvcml0eVRocmVzaG9sZCIpKSYmYig0KSkpO3JldHVybntuZXh0U3RhdGU6IkRPTkUiLHZhbHVlOmN9fSgpfSl9fTt2YXIgbndhPVsidHlwZS5nb29nbGVhcGlzLmNvbS95b3V0dWJlLmFwaS5wZmlpbm5lcnR1YmUuWW91dHViZUFwaUlubmVydHViZS5Ccm93c2VSZXNwb25zZSIsInR5cGUuZ29vZ2xlYXBpcy5jb20veW91dHViZS5hcGkucGZpaW5uZXJ0dWJlLllvdXR1YmVBcGlJbm5lcnR1YmUuUGxheWVyUmVzcG9uc2UiLCJ0eXBlLmdvb2dsZWFwaXMuY29tL3lvdXR1YmUuYXBpLnBmaWlubmVydHViZS5Zb3V0dWJlQXBpSW5uZXJ0dWJlLlBhbmVsUmVzcG9uc2UiXSxYMz1jbGFzcyBleHRlbmRzIHU1e2V4ZWN1dGUoYSl7cmV0dXJuIG8zKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIGI9YS5vbmVQbGF0Zm9ybUVycm9yO2lmKGImJiJkZXRhaWxzImluIGImJmIuZGV0YWlscyl7Yj1iLmRldGFpbHM7Zm9yKGxldCBjIG9mIGIpaWYoKGI9Y1siQHR5cGUiXSkmJm53YS5pbmRleE9mKGIpPi0xKXJldHVybiBkZWxldGUgY1siQHR5cGUiXSx7bmV4dFN0YXRlOiJQUk9DRVNTX1JFU1BPTlNFIiwKcGFyYW1zOnsuLi5hLGV4dHJhY3RlZFJlc3BvbnNlOmN9fX1yZXR1cm57bmV4dFN0YXRlOiJGQUlMRUQiLGVycm9yOkVycm9yKCJTZSIpfX0oKX0pfX07dmFyIFkzPWNsYXNzIGV4dGVuZHMgdTV7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmo9YX1leGVjdXRlKGEpe3ZhciBiPXRoaXMuajtyZXR1cm4gbzModGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgYz1hLmV4dHJhY3RlZFJlc3BvbnNlLGQ9YS55dFJlcXVlc3QsZT1hLnJlc3BvbnNlUGF5bG9hZCxmPWEud2lyZVJlc3BvbnNlO2lmKGMmJiEoImNvZGUiaW4gY3x8ImVycm9yImluIGMpJiYhYy5zZXF1ZW5jZU1ldGFEYXRhPy5za2lwUHJvY2Vzc2luZylmb3IobGV0IGggb2YgRjMpYltoXSYmYltoXS5oYW5kbGVSZXNwb25zZShjLGQpO2Yud2F0Y2hOZXh0UmVzcG9uc2V8fGYucmVlbEl0ZW1XYXRjaFJlc3BvbnNlP2Yud2F0Y2hOZXh0UmVzcG9uc2U/ZS5jb250ZW50PWYud2F0Y2hOZXh0UmVzcG9uc2U6ZS5jb250ZW50PWYucmVlbEl0ZW1XYXRjaFJlc3BvbnNlOmYucGxheWVyUmVzcG9uc2U/ZS5wbGF5ZXI9Zi5wbGF5ZXJSZXNwb25zZTpmLnJlZWxXYXRjaFNlcXVlbmNlUmVzcG9uc2U/CmUuZG49Zi5yZWVsV2F0Y2hTZXF1ZW5jZVJlc3BvbnNlOmUuY29udGVudD1mO3JldHVybntuZXh0U3RhdGU6IkNBTExCQUNLX0RJU1BBVENIRVIiLHBhcmFtczphfX0oKX0pfX07WTNbXy5Mbl09W18uSnldO3ZhciBiND1jbGFzcyBleHRlbmRzIHQ1e307YjRbXy5Mbl09WyQzXTt2YXIgWjM9Y2xhc3MgZXh0ZW5kcyB1NXtleGVjdXRlKGEpe3JldHVybiBvMyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBiPWEud2lyZVJlc3BvbnNlLGM7QXJyYXkuaXNBcnJheShiKT9jPWJbMF06dHlwZW9mIGI9PT0ib2JqZWN0IiYmYiE9PW51bGwmJigicGxheWVyUmVzcG9uc2UiaW4gYnx8IndhdGNoTmV4dFJlc3BvbnNlImluIGJ8fCJyZWVsSXRlbVdhdGNoUmVzcG9uc2UiaW4gYnx8InJlZWxXYXRjaFNlcXVlbmNlUmVzcG9uc2UiaW4gYik/Yz1iLnBsYXllclJlc3BvbnNlfHxiLndhdGNoTmV4dFJlc3BvbnNlfHxiLnJlZWxJdGVtV2F0Y2hSZXNwb25zZXx8Yi5yZWVsV2F0Y2hTZXF1ZW5jZVJlc3BvbnNlOmM9YjtyZXR1cm4gYyYmImVycm9yImluIGM/e25leHRTdGF0ZToiRVJST1JfVU5QQUNLRVIiLHBhcmFtczp7Li4uYSxvbmVQbGF0Zm9ybUVycm9yOmMuZXJyb3J9fTp7bmV4dFN0YXRlOiJQUk9DRVNTX1JFU1BPTlNFIixwYXJhbXM6ey4uLmEsZXh0cmFjdGVkUmVzcG9uc2U6Y319fSgpfSl9fTt2YXIgb3dhPWNsYXNzIGV4dGVuZHMgdzV7digpe3JldHVybiBpd2F9Z2V0IEIoKXtyZXR1cm4hMH1vKGEpe3JldHVybiBfLkIoYSxkd2EpfHx2b2lkIDB9aihhLGIsYz17fSl7Yi5jaGFubmVsSWRzJiYoYS5jaGFubmVsSWRzPWIuY2hhbm5lbElkcyk7Yi5zaWxvTmFtZSYmKGEuc2lsb05hbWU9Yi5zaWxvTmFtZSk7Yi5wYXJhbXMmJihhLnBhcmFtcz1iLnBhcmFtcyk7Yy5ib3RndWFyZFJlc3BvbnNlJiYoYS5ib3RndWFyZFJlc3BvbnNlPWMuYm90Z3VhcmRSZXNwb25zZSk7Yy5mZWF0dXJlJiYoYS5jbGllbnRGZWF0dXJlPWMuZmVhdHVyZSl9fTt2YXIgcHdhPWNsYXNzIGV4dGVuZHMgdzV7digpe3JldHVybiBqd2F9Z2V0IEIoKXtyZXR1cm4hMH1vKGEpe3JldHVybiBfLkIoYSxfLkR5KXx8dm9pZCAwfWooYSxiKXtiLmNoYW5uZWxJZHMmJihhLmNoYW5uZWxJZHM9Yi5jaGFubmVsSWRzKTtiLnNpbG9OYW1lJiYoYS5zaWxvTmFtZT1iLnNpbG9OYW1lKTtiLnBhcmFtcyYmKGEucGFyYW1zPWIucGFyYW1zKX19O3ZhciB6NT1jbGFzcyBleHRlbmRzIHc1e2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5JPWF9digpe3JldHVybiBld2F9byhhKXtyZXR1cm4gXy5CKGEsXy5aeil8fF8uQihhLF8uTWFhKXx8Xy5CKGEsXy5Zeil9aihhLGIpe2Iuc2VyaWFsaXplZFNoYXJlRW50aXR5JiYoYS5zZXJpYWxpemVkU2hhcmVkRW50aXR5PWIuc2VyaWFsaXplZFNoYXJlRW50aXR5KTtiLmNsaWVudFBhcmFtSWRlbnRpZmllciYmdGhpcy5JPy5qKGIuY2xpZW50UGFyYW1JZGVudGlmaWVyKSYmKGEuY2xpZW50UGFyYW1zPXRoaXMuSS5vKGIuY2xpZW50UGFyYW1JZGVudGlmaWVyKSl9fTt6NVtfLkxuXT1bbmV3IF8uVnMoIlNIQVJFX0NMSUVOVF9QQVJBTVNfUFJPVklERVJfVE9LRU4iKV07dmFyIHF3YT1jbGFzcyBleHRlbmRzIHc1e3YoKXtyZXR1cm4gcTV9Z2V0IEIoKXtyZXR1cm4hMH1vKGEpe3JldHVybiBfLkIoYSxfLlV6KXx8dm9pZCAwfWooYSxiLGMpe2EuZmVlZGJhY2tUb2tlbnM9W107Yi5mZWVkYmFja1Rva2VuJiZhLmZlZWRiYWNrVG9rZW5zLnB1c2goYi5mZWVkYmFja1Rva2VuKTtpZihiPWIuY3BufHxjLmNwbilhLmZlZWRiYWNrQ29udGV4dD17Y3BuOmJ9O2EuaXNGZWVkYmFja1Rva2VuVW5lbmNyeXB0ZWQ9ISFjLmlzX2ZlZWRiYWNrX3Rva2VuX3VuZW5jcnlwdGVkO2Euc2hvdWxkTWVyZ2U9ITE7Yy5leHRyYV9mZWVkYmFja190b2tlbnMmJihhLnNob3VsZE1lcmdlPSEwLGEuZmVlZGJhY2tUb2tlbnM9YS5mZWVkYmFja1Rva2Vucy5jb25jYXQoYy5leHRyYV9mZWVkYmFja190b2tlbnMpKX19O3ZhciByd2E9Y2xhc3MgZXh0ZW5kcyB3NXt2KCl7cmV0dXJuIHE1fW8oYSl7cmV0dXJuIF8uQihhLF8uQ3kpfWdldCBCKCl7cmV0dXJuITB9aihhLGIpe2IudW5kb1Rva2VuJiYoYS5mZWVkYmFja1Rva2Vucz1bYi51bmRvVG9rZW5dKTtiLmlzVW5kb1Rva2VuVW5lbmNyeXB0ZWQmJihhLmlzRmVlZGJhY2tUb2tlblVuZW5jcnlwdGVkPWIuaXNVbmRvVG9rZW5VbmVuY3J5cHRlZCl9fTt2YXIgc3dhPWNsYXNzIGV4dGVuZHMgdzV7digpe3JldHVybiBnd2F9byhhKXtyZXR1cm4gXy5CKGEsXy5CeSl8fHZvaWQgMH1qKGEsYil7Yi5wYXJhbXMmJihhLnBhcmFtcz1iLnBhcmFtcyk7Yi5zZWNvbmRhcnlQYXJhbXMmJihhLnNlY29uZGFyeVBhcmFtcz1iLnNlY29uZGFyeVBhcmFtcyl9fTt2YXIgdHdhPWNsYXNzIGV4dGVuZHMgdzV7digpe3JldHVybiBod2F9byhhKXtyZXR1cm4gXy5CKGEsXy5Beil8fHZvaWQgMH1qKGEsYil7Yi5hY3Rpb25zJiYoYS5hY3Rpb25zPWIuYWN0aW9ucyk7Yi5wYXJhbXMmJihhLnBhcmFtcz1iLnBhcmFtcyk7Yi5wbGF5bGlzdElkJiYoYS5wbGF5bGlzdElkPWIucGxheWxpc3RJZCl9fTt2YXIgdXdhPWNsYXNzIGV4dGVuZHMgdzV7digpe3JldHVybiBmd2F9byhhKXtyZXR1cm4gXy5CKGEsXy5OYWEpfWooYSxiLGM9e30pe2Iuc2VyaWFsaXplZFNoYXJlRW50aXR5JiYoYS5zZXJpYWxpemVkU2hhcmVkRW50aXR5PWIuc2VyaWFsaXplZFNoYXJlRW50aXR5KTtjLmluY2x1ZGVMaXN0SWQmJihhLmluY2x1ZGVMaXN0SWQ9ITApfX07dmFyIHZ3YT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyl7dGhpcy5yZXF1ZXN0S2V5PWE7dGhpcy5CPWI7dGhpcy5vPWM7dGhpcy5EPSgpPT5uZXcgWE1MSHR0cFJlcXVlc3Q7dGhpcy5qPXZvaWQgMDt0aGlzLnY9W119Z2V0TGF0ZXN0Q2hhbGxlbmdlUmVzcG9uc2UoKXtyZXR1cm4gdGhpcy5vfX07dmFyIG91YT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMuaj0wO3RoaXMuWGc9Yj8uWGc/P3dpbmRvdzt0aGlzLnltPWI/LnltO3RoaXMucmVxdWVzdEtleT1iPy5yZXF1ZXN0S2V5Pz8oXy50aigicGFyX2Jpcl9rZXkiKXx8Ik80M3owZHBqaGdYMjBTQ3g0S0FvIik7dGhpcy5Icz1iPy5Icz8/KGQ9Pm5ldyBxMihkKSk7dmFyIGM9Yj8uVkk/PygoZCxlLGYpPT5uZXcgdndhKGQsZSxmKSk7dGhpcy5iZ0NoYWxsZW5nZT1TMihhLmJnQ2hhbGxlbmdlKTt0aGlzLnR0bFNlY29uZHM9VTIoVDIoYS5jaGFsbGVuZ2V8fCIiKSk7dGhpcy5vZD1jKHRoaXMucmVxdWVzdEtleSxfLngoInBhcl9hdF9lcCIpP1sid3d3LnlvdXR1YmUuY29tIiwibS55b3V0dWJlLmNvbSJdLmluY2x1ZGVzKF8udS5sb2NhdGlvbi5ob3N0bmFtZSk/Ii9hcGkvam5uL3YxL0dlbmVyYXRlSVQiOiJodHRwczovL2pubi1wYS5nb29nbGVhcGlzLmNvbS8kcnBjL2dvb2dsZS5pbnRlcm5hbC53YWEudjEuV2FhL0dlbmVyYXRlSVQiOgoiaHR0cHM6Ly9qbm4tcGEuZ29vZ2xlYXBpcy5jb20vJHJwYy9nb29nbGUuaW50ZXJuYWwud2FhLnYxLldhYS9HZW5lcmF0ZUlUIixhKTt0aGlzLkpzPWI/LkpzO251YSh0aGlzLm9kKTt0aGlzLkdyPWI/LkdyPz8oZD0+e18uU2UodGhpcy5YZy5kb2N1bWVudCwidmlzaWJpbGl0eWNoYW5nZSIsKCk9Pnt0aGlzLlhnLmRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PSJ2aXNpYmxlIiYmZCgpfSl9KX12KCl7RGF0ZS5ub3coKT50aGlzLmordGhpcy50dGxTZWNvbmRzKjFFMyYmdGhpcy52bT8uVSgpfX07dmFyIHV1YT1bInd3dy55b3V0dWJlLW5vY29va2llLmNvbSIsInd3dy55b3V0dWJlZWR1Y2F0aW9uLmNvbSIsInlvdXR1YmUuZ29vZ2xlYXBpcy5jb20iXSx3d2E9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnN0YXRlPTE7dGhpcy52bT1udWxsO3RoaXMuaj12b2lkIDB9aW5pdGlhbGl6ZShhLGIsYyxkKXt0aGlzLmo9ZDtpZihhLnByb2dyYW0pe3ZhciBlO2Q9YS5pbnRlcnByZXRlclVybD8/bnVsbDthLmludGVycHJldGVyU2FmZVNjcmlwdD9lPVlfKGEuaW50ZXJwcmV0ZXJTYWZlU2NyaXB0KTplPWEuaW50ZXJwcmV0ZXJTY3JpcHQ/P251bGw7YS5pbnRlcnByZXRlclNhZmVVcmwmJihkPV8uaHcoYS5pbnRlcnByZXRlclNhZmVVcmwpLnRvU3RyaW5nKCkpO3R1YSh0aGlzLGUsZCxhLnByb2dyYW0sYixjKX1lbHNlIF8uSXAoRXJyb3IoIlVlIikpfWlzSW5pdGlhbGl6ZWQoKXtyZXR1cm4gdGhpcy52KCl9Z2V0U3RhdGUoKXtyZXR1cm4gdGhpcy5zdGF0ZX1pc0xvYWRpbmcoKXtyZXR1cm4gdGhpcy5zdGF0ZT09PQoyfWludm9rZShhPXt9KXtyZXR1cm4gdGhpcy52KCk/dGhpcy5CKHtLYzphfSk6bnVsbH1kaXNwb3NlKCl7dGhpcy5vKG51bGwpO3RoaXMuUyg4KX12KCl7cmV0dXJuISF0aGlzLnZtfUIoYSl7cmV0dXJuIHRoaXMudm0uWHIoYSl9byhhKXtfLlpkKHRoaXMudm0pO3RoaXMudm09YX1TKGEpe3RoaXMuc3RhdGU9YX19O3ZhciB4d2E9Y2xhc3MgZXh0ZW5kcyB3d2F7byhhKXttNCgpPy5iZ3ZtYSgpO2lmKGEpe2xldCBiPXtiZ3ZtYTphLmRpc3Bvc2UuYmluZChhKSxiZ3ZtYjphLnNuYXBzaG90LmJpbmQoYSksYmd2bWM6YS5Yci5iaW5kKGEpfTtfLnJhKCJ5dC5hYnVzZS5wbGF5ZXJBdHRMb2FkZXIiLGIpO18uRmEoInl0LmFidXNlLnBsYXllckF0dExvYWRlclJ1biIsYz0+YS5zbmFwc2hvdChjKSl9ZWxzZSBfLnJhKCJ5dC5hYnVzZS5wbGF5ZXJBdHRMb2FkZXIiLG51bGwpLF8ucmEoInl0LmFidXNlLnBsYXllckF0dExvYWRlclJ1biIsbnVsbCl9digpe3JldHVybiEhbTQoKX1CKGEpe3JldHVybiBtNCgpLmJndm1jKGEpfX07dmFyIHl3YT1jbGFzcyBleHRlbmRzIF8uV3N7Y29uc3RydWN0b3IoKXtzdXBlcigiZG9jdW1lbnRfYWN0aXZlIik7dGhpcy52PTEwO3RoaXMubz1uZXcgTWFwO3RoaXMudHJhbnNpdGlvbnM9W3tmcm9tOiJkb2N1bWVudF9hY3RpdmUiLHRvOiJkb2N1bWVudF9kaXNwb3NlZF9wcmV2ZW50YWJsZSIsYWN0aW9uOnRoaXMuWX0se2Zyb206ImRvY3VtZW50X2FjdGl2ZSIsdG86ImRvY3VtZW50X2Rpc3Bvc2VkIixhY3Rpb246dGhpcy5LfSx7ZnJvbToiZG9jdW1lbnRfZGlzcG9zZWRfcHJldmVudGFibGUiLHRvOiJkb2N1bWVudF9kaXNwb3NlZCIsYWN0aW9uOnRoaXMuS30se2Zyb206ImRvY3VtZW50X2Rpc3Bvc2VkX3ByZXZlbnRhYmxlIix0bzoiZmx1c2hfbG9ncyIsYWN0aW9uOnRoaXMuSX0se2Zyb206ImRvY3VtZW50X2Rpc3Bvc2VkX3ByZXZlbnRhYmxlIix0bzoiZG9jdW1lbnRfYWN0aXZlIixhY3Rpb246dGhpcy5EfSx7ZnJvbToiZG9jdW1lbnRfZGlzcG9zZWQiLHRvOiJmbHVzaF9sb2dzIiwKYWN0aW9uOnRoaXMuSX0se2Zyb206ImRvY3VtZW50X2Rpc3Bvc2VkIix0bzoiZG9jdW1lbnRfYWN0aXZlIixhY3Rpb246dGhpcy5EfSx7ZnJvbToiZG9jdW1lbnRfZGlzcG9zZWQiLHRvOiJkb2N1bWVudF9kaXNwb3NlZCIsYWN0aW9uOigpPT57fX0se2Zyb206ImZsdXNoX2xvZ3MiLHRvOiJkb2N1bWVudF9hY3RpdmUiLGFjdGlvbjp0aGlzLkR9XTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicGFnZWhpZGUiLGE9Pnt0aGlzLnRyYW5zaXRpb24oImRvY3VtZW50X2Rpc3Bvc2VkIix7ZXZlbnQ6YX0pO2EucGVyc2lzdGVkPT09ITEmJih0aGlzLm89bmV3IE1hcCl9KTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiYmVmb3JldW5sb2FkIixhPT57dGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9kaXNwb3NlZF9wcmV2ZW50YWJsZSIse2V2ZW50OmF9KX0pfVkoYSxiKXtpZighdGhpcy5vLmdldCgiZG9jdW1lbnRfZGlzcG9zZWRfcHJldmVudGFibGUiKSYmKGEoYj8uZXZlbnQpLGI/LmV2ZW50Py5kZWZhdWx0UHJldmVudGVkfHwKYj8uZXZlbnQ/LnJldHVyblZhbHVlKSl7Yi5ldmVudC5yZXR1cm5WYWx1ZXx8KGIuZXZlbnQucmV0dXJuVmFsdWU9ITApO2IuZXZlbnQuZGVmYXVsdFByZXZlbnRlZHx8Yi5ldmVudC5wcmV2ZW50RGVmYXVsdCgpO3RoaXMubz1uZXcgTWFwO3RoaXMudHJhbnNpdGlvbigiZG9jdW1lbnRfYWN0aXZlIik7cmV0dXJufXRoaXMuby5zZXQoImRvY3VtZW50X2Rpc3Bvc2VkX3ByZXZlbnRhYmxlIiwhMCk7dGhpcy5vLmdldCgiZG9jdW1lbnRfZGlzcG9zZWQiKT90aGlzLnRyYW5zaXRpb24oImZsdXNoX2xvZ3MiKTp0aGlzLnRyYW5zaXRpb24oImRvY3VtZW50X2Rpc3Bvc2VkIil9SyhhLGIpe3RoaXMuby5nZXQoImRvY3VtZW50X2Rpc3Bvc2VkIik/dGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9hY3RpdmUiKTooYShiPy5ldmVudCksdGhpcy5vLnNldCgiZG9jdW1lbnRfZGlzcG9zZWQiLCEwKSx0aGlzLnRyYW5zaXRpb24oImZsdXNoX2xvZ3MiKSl9SShhLGIpe2EoYj8uZXZlbnQpO3RoaXMudHJhbnNpdGlvbigiZG9jdW1lbnRfYWN0aXZlIil9RCgpe3RoaXMubz0KbmV3IE1hcH19O3ZhciB6d2E9Y2xhc3MgZXh0ZW5kcyBfLldze2NvbnN0cnVjdG9yKCl7c3VwZXIoImRvY3VtZW50X3Zpc2liaWxpdHlfdW5rbm93biIpO3RoaXMudHJhbnNpdGlvbnM9W3tmcm9tOiJkb2N1bWVudF92aXNpYmlsaXR5X3Vua25vd24iLHRvOiJkb2N1bWVudF92aXNpYmxlIixhY3Rpb246dGhpcy5EfSx7ZnJvbToiZG9jdW1lbnRfdmlzaWJpbGl0eV91bmtub3duIix0bzoiZG9jdW1lbnRfaGlkZGVuIixhY3Rpb246dGhpcy5vfSx7ZnJvbToiZG9jdW1lbnRfdmlzaWJpbGl0eV91bmtub3duIix0bzoiZG9jdW1lbnRfZm9yZWdyb3VuZGVkIixhY3Rpb246dGhpcy5JfSx7ZnJvbToiZG9jdW1lbnRfdmlzaWJpbGl0eV91bmtub3duIix0bzoiZG9jdW1lbnRfYmFja2dyb3VuZGVkIixhY3Rpb246dGhpcy5LfSx7ZnJvbToiZG9jdW1lbnRfdmlzaWJsZSIsdG86ImRvY3VtZW50X2hpZGRlbiIsYWN0aW9uOnRoaXMub30se2Zyb206ImRvY3VtZW50X3Zpc2libGUiLHRvOiJkb2N1bWVudF9mb3JlZ3JvdW5kZWQiLAphY3Rpb246dGhpcy5JfSx7ZnJvbToiZG9jdW1lbnRfdmlzaWJsZSIsdG86ImRvY3VtZW50X3Zpc2libGUiLGFjdGlvbjp0aGlzLkR9LHtmcm9tOiJkb2N1bWVudF9mb3JlZ3JvdW5kZWQiLHRvOiJkb2N1bWVudF92aXNpYmxlIixhY3Rpb246dGhpcy5EfSx7ZnJvbToiZG9jdW1lbnRfZm9yZWdyb3VuZGVkIix0bzoiZG9jdW1lbnRfaGlkZGVuIixhY3Rpb246dGhpcy5vfSx7ZnJvbToiZG9jdW1lbnRfZm9yZWdyb3VuZGVkIix0bzoiZG9jdW1lbnRfZm9yZWdyb3VuZGVkIixhY3Rpb246dGhpcy5JfSx7ZnJvbToiZG9jdW1lbnRfaGlkZGVuIix0bzoiZG9jdW1lbnRfdmlzaWJsZSIsYWN0aW9uOnRoaXMuRH0se2Zyb206ImRvY3VtZW50X2hpZGRlbiIsdG86ImRvY3VtZW50X2JhY2tncm91bmRlZCIsYWN0aW9uOnRoaXMuS30se2Zyb206ImRvY3VtZW50X2hpZGRlbiIsdG86ImRvY3VtZW50X2hpZGRlbiIsYWN0aW9uOnRoaXMub30se2Zyb206ImRvY3VtZW50X2JhY2tncm91bmRlZCIsdG86ImRvY3VtZW50X2hpZGRlbiIsCmFjdGlvbjp0aGlzLm99LHtmcm9tOiJkb2N1bWVudF9iYWNrZ3JvdW5kZWQiLHRvOiJkb2N1bWVudF9iYWNrZ3JvdW5kZWQiLGFjdGlvbjp0aGlzLkt9LHtmcm9tOiJkb2N1bWVudF9iYWNrZ3JvdW5kZWQiLHRvOiJkb2N1bWVudF92aXNpYmxlIixhY3Rpb246dGhpcy5EfV07ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsYT0+e2RvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PSJ2aXNpYmxlIj90aGlzLnRyYW5zaXRpb24oImRvY3VtZW50X3Zpc2libGUiLHtldmVudDphfSk6dGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9oaWRkZW4iLHtldmVudDphfSl9KTtfLngoInZpc2liaWxpdHlfbGlmZWN5Y2xlc19keW5hbWljX2JhY2tncm91bmRpbmciKSYmKHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJibHVyIixhPT57dGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9iYWNrZ3JvdW5kZWQiLHtldmVudDphfSl9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLAphPT57dGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9mb3JlZ3JvdW5kZWQiLHtldmVudDphfSl9KSl9RChhLGIpe2EoYj8uZXZlbnQpO18ueCgidmlzaWJpbGl0eV9saWZlY3ljbGVzX2R5bmFtaWNfYmFja2dyb3VuZGluZyIpJiZ0aGlzLnRyYW5zaXRpb24oImRvY3VtZW50X2ZvcmVncm91bmRlZCIpfW8oYSxiKXthKGI/LmV2ZW50KTtfLngoInZpc2liaWxpdHlfbGlmZWN5Y2xlc19keW5hbWljX2JhY2tncm91bmRpbmciKSYmdGhpcy50cmFuc2l0aW9uKCJkb2N1bWVudF9iYWNrZ3JvdW5kZWQiKX1LKGEsYil7YShiPy5ldmVudCl9SShhLGIpe2EoYj8uZXZlbnQpfX07dmFyIEF3YT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuQj1uZXcgeXdhO3RoaXMuRD1uZXcgendhfWluc3RhbGwoLi4uYSl7YS5mb3JFYWNoKGI9Pnt0aGlzLkIuaW5zdGFsbChiKX0pO2EuZm9yRWFjaChiPT57dGhpcy5ELmluc3RhbGwoYil9KX19O3ZhciBPND1jbGFzcyBleHRlbmRzIEF3YXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCk7dGhpcy5pbnN0YWxsKHtkb2N1bWVudF9kaXNwb3NlZDp7Y2FsbGJhY2s6dGhpcy5qfX0pO18ueCgiY29tYmluZV92ZV9ncmFmdHMiKSYmdGhpcy5pbnN0YWxsKHtkb2N1bWVudF9kaXNwb3NlZDp7Y2FsbGJhY2s6dGhpcy5vfX0pO3RoaXMuaW5zdGFsbCh7Zmx1c2hfbG9nczp7Y2FsbGJhY2s6dGhpcy52fX0pO18ueCgid2ViX2xvZ19jZmdfY2VlX2tzIil8fF8uWWoodnVhKX12KCl7Xy5FcCgiZmluYWxQYXlsb2FkIix7Y3NuOl8uaXEoKX0pfWooKXtfLm15KF8uRXkpO18uRnkhPW51bGwmJl8uRnkuZmx1c2goKX1vKCl7Xy5reChfLmh4KCkpfX07dmFyIG40PWNsYXNzIGV4dGVuZHMgXy5Yantjb25zdHJ1Y3RvcihhLC4uLmIpe3N1cGVyKGEsYik7dGhpcy5lcnJvclR5cGU9MTtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxuZXcudGFyZ2V0LnByb3RvdHlwZSl9fTt2YXIgczQ9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9YXN5bmMgZmV0Y2goYSxiLGMsZCl7YT13dWEodGhpcyxhLGIpO3RyeXtsZXQgZT1hd2FpdCBmZXRjaChhKTtpZihkJiZlLm9rJiZlLmJvZHkmJnR5cGVvZiBlLmJvZHkuZ2V0UmVhZGVyPT09ImZ1bmN0aW9uIil7bGV0IGY9ZS5jbG9uZSgpLmJvZHkuZ2V0UmVhZGVyKCkse3ZhbHVlOmh9PWF3YWl0IGYucmVhZCgpO2YuY2FuY2VsKCkuY2F0Y2goKCk9Pnt9KTtpZihoJiZoWzBdPT09OTEpe2xldCBrPWUuYm9keS5waXBlVGhyb3VnaChuZXcgVGV4dERlY29kZXJTdHJlYW0pLmdldFJlYWRlcigpO3JldHVybiBvNCh0aGlzLGssbmV3IHoyLFtdLGQpfX1yZXR1cm4gYXdhaXQgdGhpcy5oYW5kbGVSZXNwb25zZShlLGMpfWNhdGNoKGUpe2lmKF8uSXAoZSksYz8uUHYmJmUgaW5zdGFuY2VvZiBuNCYmZS5lcnJvclR5cGU9PT0xKXRocm93IGU7fX1oYW5kbGVSZXNwb25zZShhLGIpe3ZhciBjPWEudGV4dCgpLnRoZW4oZD0+e2lmKGI/Lmd5JiYKYS5vaylyZXR1cm4gXy5YeChiLmd5LGQpO2Q9ZC5yZXBsYWNlKCIpXX0nIiwiIik7aWYoYj8uUHYmJmQpdHJ5e3ZhciBlPUpTT04ucGFyc2UoZCl9Y2F0Y2goZil7dGhyb3cgbmV3IG40KCJKU09OIHBhcnNpbmcgZmFpbGVkIGFmdGVyIGZldGNoIik7fXJldHVybiBlPz9KU09OLnBhcnNlKGQpfSk7YS5yZWRpcmVjdGVkfHxhLm9rP3RoaXMuaiYmdGhpcy5qLnN1Y2Nlc3MoKToodGhpcy5qJiZ0aGlzLmouU0koKSxjPWMudGhlbihkPT57Xy5JcChuZXcgXy5YaigiRXJyb3I6IEFQSSBmZXRjaCBmYWlsZWQiLGEuc3RhdHVzLGEudXJsLGQpKTtyZXR1cm57Li4uZCxlcnJvck1ldGFkYXRhOntzdGF0dXM6YS5zdGF0dXN9fX0pKTtyZXR1cm4gY319O3M0W18uTG5dPVtfLkluKG5ldyBfLlZzKCJORVRXT1JLX1NMSV9UT0tFTiIpKV07dmFyIHA0PWNsYXNze3N0YXRpYyBqYygpe3ZhciBhPV8uc2EoInl0Z2xvYmFsLnN0b3JhZ2VfIik7YXx8KGE9bmV3IHA0LF8ucmEoInl0Z2xvYmFsLnN0b3JhZ2VfIixhKSk7cmV0dXJuIGF9YXN5bmMgZXN0aW1hdGUoKXt2YXIgYT1uYXZpZ2F0b3I7aWYoYS5zdG9yYWdlPy5lc3RpbWF0ZSlyZXR1cm4gYS5zdG9yYWdlLmVzdGltYXRlKCk7aWYoYS53ZWJraXRUZW1wb3JhcnlTdG9yYWdlPy5xdWVyeVVzYWdlQW5kUXVvdGEpcmV0dXJuIHh1YSgpfWFzeW5jIHBlcnNpc3QoKXt2YXIgYT1uYXZpZ2F0b3I7cmV0dXJuIGEuc3RvcmFnZT8ucGVyc2lzdD9hd2FpdCBhLnN0b3JhZ2U/LnBlcnNpc3QoKT8iUEVSU0lTVEVEX1NUQVRFX0dSQU5URUQiOiJQRVJTSVNURURfU1RBVEVfTk9UX0dSQU5URUQiOiJQRVJTSVNURURfU1RBVEVfTk9UX1NVUFBPUlRFRCJ9fTtfLnJhKCJ5dGdsb2JhbC5zdG9yYWdlQ2xhc3NfIixwNCk7dmFyIEFyYT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMuaGFuZGxlRXJyb3I9YTt0aGlzLmo9Yjt0aGlzLm89ITE7c2VsZi5kb2N1bWVudD09PXZvaWQgMHx8c2VsZi5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmV1bmxvYWQiLCgpPT57dGhpcy5vPSEwfSk7dGhpcy52PU1hdGgucmFuZG9tKCk8PS4yfUpiKGEpe3RoaXMuaGFuZGxlRXJyb3IoYSl9bG0oYSxiKXtzd2l0Y2goYSl7Y2FzZSAiSURCX0RBVEFfQ09SUlVQVEVEIjpfLngoImlkYl9kYXRhX2NvcnJ1cHRlZF9raWxsc3dpdGNoIil8fHRoaXMuaigiaWRiRGF0YUNvcnJ1cHRlZCIsYik7YnJlYWs7Y2FzZSAiSURCX1VORVhQRUNURURMWV9DTE9TRUQiOnRoaXMuaigiaWRiVW5leHBlY3RlZGx5Q2xvc2VkIixiKTticmVhaztjYXNlICJJU19TVVBQT1JURURfQ09NUExFVEVEIjpfLngoImlkYl9pc19zdXBwb3J0ZWRfY29tcGxldGVkX2tpbGxzd2l0Y2giKXx8dGhpcy5qKCJpZGJJc1N1cHBvcnRlZENvbXBsZXRlZCIsYik7YnJlYWs7CmNhc2UgIlFVT1RBX0VYQ0VFREVEIjp5dWEodGhpcyxiKTticmVhaztjYXNlICJUUkFOU0FDVElPTl9FTkRFRCI6dGhpcy52JiZNYXRoLnJhbmRvbSgpPD0uMSYmdGhpcy5qKCJpZGJUcmFuc2FjdGlvbkVuZGVkIixiKTticmVhaztjYXNlICJUUkFOU0FDVElPTl9VTkVYUEVDVEVETFlfQUJPUlRFRCI6dGhpcy5qKCJpZGJUcmFuc2FjdGlvbkFib3J0ZWQiLHsuLi5iLGhhc1dpbmRvd1VubG9hZGVkOnRoaXMub30pfX19O3ZhciBBNT0hMTt2YXIgQ3VhPXtGaTp7ZmVlZGJhY2tFbmRwb2ludDp5Myhxd2EpLG1vZGlmeUNoYW5uZWxOb3RpZmljYXRpb25QcmVmZXJlbmNlRW5kcG9pbnQ6eTMoc3dhKSxwbGF5bGlzdEVkaXRFbmRwb2ludDp5Myh0d2EpLHNoYXJlRW50aXR5RW5kcG9pbnQ6eTMoejUpLHN1YnNjcmliZUVuZHBvaW50OnkzKG93YSksdW5kb0ZlZWRiYWNrRW5kcG9pbnQ6eTMocndhKSx1bnN1YnNjcmliZUVuZHBvaW50OnkzKHB3YSksd2ViUGxheWVyU2hhcmVFbnRpdHlTZXJ2aWNlRW5kcG9pbnQ6eTModXdhKX19O3ZhciBGdWE9bmV3IE1hcCxFdWE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKGEsYixjLGQsZSl7c3VwZXIoKTt0aGlzLmNvbnRhaW5lcj1hO3RoaXMud2ViUGxheWVyQ29udGV4dENvbmZpZz1iO3RoaXMuaj1jO3RoaXMuRWo9ZDt0aGlzLnBsYXllclZhcnM9ZTtKdWEodGhpcyl9bGEoKXt0aGlzLmFwaSYmdGhpcy5hcGkuZGVzdHJveSgpO1dfKHRoaXMuY29udGFpbmVyKTtzdXBlci5sYSgpfX07dmFyIEJ3YT17WyJhcGkuaW52YWxpZHBhcmFtIl06MixhdXRoOjE1MCxbImRybS5hdXRoIl06MTUwLFsiaGVhcnRiZWF0Lm5ldCJdOjE1MCxbImhlYXJ0YmVhdC5zZXJ2ZXJlcnJvciJdOjE1MCxbImhlYXJ0YmVhdC5zdG9wIl06MTUwLFsiaHRtbDUudW5zdXBwb3J0ZWRhZHMiXTo1LFsiZm10Lm5vbmVhdmFpbGFibGUiXTo1LFsiZm10LmRlY29kZSJdOjUsWyJmbXQudW5wbGF5YWJsZSJdOjUsWyJodG1sNS5taXNzaW5nYXBpIl06NSxbImh0bWw1LnVuc3VwcG9ydGVkbGl2ZSJdOjUsWyJkcm0udW5hdmFpbGFibGUiXTo1LFsibXJtLmJsb2NrZWQiXToxNTEsWyJlbWJlZGRlci5pZGVudGl0eS5kZW5pZWQiXToxNTIsWyJlbWJlZGRlci5pZGVudGl0eS5taXNzaW5nLnJlZmVycmVyIl06MTUzfTt2YXIgTHVhPW5ldyBTZXQoImVuZFNlY29uZHMgc3RhcnRTZWNvbmRzIG1lZGlhQ29udGVudFVybCBzdWdnZXN0ZWRRdWFsaXR5IHZpZGVvSWQgcmN0IHJjdG4gcGxheW11dGVkIG11dGVkX2F1dG9wbGF5X2R1cmF0aW9uX21vZGUiLnNwbGl0KCIgIikpO3ZhciBXdWE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKCl7dmFyIGE9TDQsYj1INDtzdXBlcigpO3RoaXMuYXBpPWE7dGhpcy52PXRoaXMuTT0hMTt0aGlzLlU9W107dGhpcy5aPXt9O3RoaXMuQj1bXTt0aGlzLm89W107dGhpcy5oYT0hMTt0aGlzLnNlc3Npb25JZD10aGlzLmo9bnVsbDt0aGlzLnRhcmdldE9yaWdpbj0iKiI7dGhpcy5nYT1fLngoIndlYl9wbGF5ZXJfc3BsaXRfZXZlbnRfYnVzX2lmcmFtZSIpO3RoaXMuST1fLncoIlBPU1RfTUVTU0FHRV9PUklHSU4iKXx8YCR7ZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2x9Ly8ke2RvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lfWA7dGhpcy5EPWM9Pnt0aGlzLm9uTWVzc2FnZShjKX07QjUuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsdGhpcy5EKTtpZihhPV8udygiV0lER0VUX0lEIikpdGhpcy5zZXNzaW9uSWQ9YTtiJiZ0aGlzLkQoYik7QTQodGhpcywib25SZWFkeSIsKCk9Pnt0aGlzLk09ITA7dmFyIGM9dGhpcy5hcGkuZ2V0VmlkZW9EYXRhKCk7CmMuaXNQbGF5YWJsZXx8KHRoaXMuaGE9ITAsdGhpcy5lcnJvckNvZGU9KGM9Yy5lcnJvckNvZGUpP0J3YVtjXXx8NTo1LHRoaXMuc2VuZE1lc3NhZ2UoIm9uRXJyb3IiLE51bWJlcih0aGlzLmVycm9yQ29kZSkpKTtENCh0aGlzKTt0aGlzLmp8fHRoaXMudnx8d2luZG93LnBhcmVudD09PXdpbmRvd3x8IXRoaXMuc2Vzc2lvbklkfHxDNCh0aGlzLHtldmVudDoicmVhZHlUb0xpc3RlbiJ9LHdpbmRvdy5wYXJlbnQpfSk7QTQodGhpcywib25WaWRlb1Byb2dyZXNzIix0aGlzLmZjLmJpbmQodGhpcykpO0E0KHRoaXMsIm9uVm9sdW1lQ2hhbmdlIix0aGlzLlZkLmJpbmQodGhpcykpO0E0KHRoaXMsIm9uQXBpQ2hhbmdlIix0aGlzLm9hLmJpbmQodGhpcykpO0E0KHRoaXMsIm9uUGxheWJhY2tRdWFsaXR5Q2hhbmdlIix0aGlzLk1hLmJpbmQodGhpcykpO0E0KHRoaXMsIm9uUGxheWJhY2tSYXRlQ2hhbmdlIix0aGlzLlFhLmJpbmQodGhpcykpO0E0KHRoaXMsIm9uU3RhdGVDaGFuZ2UiLHRoaXMuRWIuYmluZCh0aGlzKSk7CkE0KHRoaXMsIm9uV2ViZ2xTZXR0aW5nc0NoYW5nZWQiLHRoaXMuRmwuYmluZCh0aGlzKSk7QTQodGhpcywib25DYXB0aW9uc1RyYWNrTGlzdENoYW5nZWQiLHRoaXMueWEuYmluZCh0aGlzKSk7QTQodGhpcywiY2FwdGlvbnNzZXR0aW5nc2NoYW5nZWQiLHRoaXMuRmEuYmluZCh0aGlzKSl9c2VuZE1lc3NhZ2UoYSxiKXthPXtldmVudDphLGluZm86Yj09PXZvaWQgMD9udWxsOmJ9O3RoaXMudj9DNCh0aGlzLGEpOnRoaXMuVS5wdXNoKGEpfUViKGEpe2E9e3BsYXllclN0YXRlOmEsY3VycmVudFRpbWU6dGhpcy5hcGkuZ2V0Q3VycmVudFRpbWUoKSxkdXJhdGlvbjp0aGlzLmFwaS5nZXREdXJhdGlvbigpLHZpZGVvRGF0YTp0aGlzLmFwaS5nZXRWaWRlb0RhdGEoKSx2aWRlb1N0YXJ0Qnl0ZXM6MCx2aWRlb0J5dGVzVG90YWw6dGhpcy5hcGkuZ2V0VmlkZW9CeXRlc1RvdGFsKCksdmlkZW9Mb2FkZWRGcmFjdGlvbjp0aGlzLmFwaS5nZXRWaWRlb0xvYWRlZEZyYWN0aW9uKCkscGxheWJhY2tRdWFsaXR5OnRoaXMuYXBpLmdldFBsYXliYWNrUXVhbGl0eSgpLAphdmFpbGFibGVRdWFsaXR5TGV2ZWxzOnRoaXMuYXBpLmdldEF2YWlsYWJsZVF1YWxpdHlMZXZlbHMoKSxjdXJyZW50VGltZUxhc3RVcGRhdGVkXzpEYXRlLm5vdygpLzFFMyxwbGF5YmFja1JhdGU6dGhpcy5hcGkuZ2V0UGxheWJhY2tSYXRlKCksbWVkaWFSZWZlcmVuY2VUaW1lOnRoaXMuYXBpLmdldE1lZGlhUmVmZXJlbmNlVGltZSgpfTt0aGlzLmFwaS5nZXRWaWRlb1VybCYmKGEudmlkZW9Vcmw9dGhpcy5hcGkuZ2V0VmlkZW9VcmwoKSk7dGhpcy5hcGkuZ2V0VmlkZW9Db250ZW50UmVjdCYmKGEudmlkZW9Db250ZW50UmVjdD10aGlzLmFwaS5nZXRWaWRlb0NvbnRlbnRSZWN0KCkpO3RoaXMuYXBpLmdldFByb2dyZXNzU3RhdGUmJihhLnByb2dyZXNzU3RhdGU9dGhpcy5hcGkuZ2V0UHJvZ3Jlc3NTdGF0ZSgpKTt0aGlzLmFwaS5nZXRQbGF5bGlzdCYmKGEucGxheWxpc3Q9dGhpcy5hcGkuZ2V0UGxheWxpc3QoKSk7dGhpcy5hcGkuZ2V0UGxheWxpc3RJbmRleCYmKGEucGxheWxpc3RJbmRleD0KdGhpcy5hcGkuZ2V0UGxheWxpc3RJbmRleCgpKTtFNCh0aGlzLGEpfU1hKGEpe2E9e3BsYXliYWNrUXVhbGl0eTphfTt0aGlzLmFwaS5nZXRBdmFpbGFibGVRdWFsaXR5TGV2ZWxzJiYoYS5hdmFpbGFibGVRdWFsaXR5TGV2ZWxzPXRoaXMuYXBpLmdldEF2YWlsYWJsZVF1YWxpdHlMZXZlbHMoKSk7dGhpcy5hcGkuZ2V0UHJlZmVycmVkUXVhbGl0eSYmKGEucHJlZmVycmVkUXVhbGl0eT10aGlzLmFwaS5nZXRQcmVmZXJyZWRRdWFsaXR5KCkpO0U0KHRoaXMsYSl9UWEoYSl7RTQodGhpcyx7cGxheWJhY2tSYXRlOmF9KX1vYSgpe3ZhciBhPXRoaXMuYXBpLmdldE9wdGlvbnMoKSxiPXtuYW1lc3BhY2VzOmF9O2ZvcihsZXQgYz0wLGQ9YS5sZW5ndGg7YzxkO2MrKyl7bGV0IGU9YVtjXSxmPXRoaXMuYXBpLmdldE9wdGlvbnMoZSk7YltlXT17b3B0aW9uczpmfTtmb3IobGV0IGg9MCxrPWYubGVuZ3RoO2g8aztoKyspe2xldCBsPWZbaF0sbT10aGlzLmFwaS5nZXRPcHRpb24oZSxsKTtiW2VdW2xdPQptfX10aGlzLnNlbmRNZXNzYWdlKCJhcGlJbmZvRGVsaXZlcnkiLGIpfVZkKCl7RTQodGhpcyx7bXV0ZWQ6dGhpcy5hcGkuaXNNdXRlZCgpLHZvbHVtZTp0aGlzLmFwaS5nZXRWb2x1bWUoKX0pfWZjKGEpe2E9e2N1cnJlbnRUaW1lOmEsdmlkZW9CeXRlc0xvYWRlZDp0aGlzLmFwaS5nZXRWaWRlb0J5dGVzTG9hZGVkKCksdmlkZW9Mb2FkZWRGcmFjdGlvbjp0aGlzLmFwaS5nZXRWaWRlb0xvYWRlZEZyYWN0aW9uKCksY3VycmVudFRpbWVMYXN0VXBkYXRlZF86RGF0ZS5ub3coKS8xRTMscGxheWJhY2tSYXRlOnRoaXMuYXBpLmdldFBsYXliYWNrUmF0ZSgpLG1lZGlhUmVmZXJlbmNlVGltZTp0aGlzLmFwaS5nZXRNZWRpYVJlZmVyZW5jZVRpbWUoKX07dGhpcy5hcGkuZ2V0UHJvZ3Jlc3NTdGF0ZSYmKGEucHJvZ3Jlc3NTdGF0ZT10aGlzLmFwaS5nZXRQcm9ncmVzc1N0YXRlKCkpO0U0KHRoaXMsYSl9RmwoKXtFNCh0aGlzLHtzcGhlcmljYWxQcm9wZXJ0aWVzOnRoaXMuYXBpLmdldFNwaGVyaWNhbFByb3BlcnRpZXMoKX0pfXlhKCl7aWYodGhpcy5hcGkuZ2V0Q2FwdGlvblRyYWNrcyl7bGV0IGE9CntjYXB0aW9uVHJhY2tzOnRoaXMuYXBpLmdldENhcHRpb25UcmFja3MoKX07RTQodGhpcyxhKX19RmEoKXtpZih0aGlzLmFwaS5nZXRTdWJ0aXRsZXNVc2VyU2V0dGluZ3Mpe2xldCBhPXtzdWJ0aXRsZXNVc2VyU2V0dGluZ3M6dGhpcy5hcGkuZ2V0U3VidGl0bGVzVXNlclNldHRpbmdzKCl9O0U0KHRoaXMsYSl9fW9uTWVzc2FnZShhKXtpZighKHRoaXMuSSE9PSIqIiYmYS5vcmlnaW4hPT10aGlzLkl8fHRoaXMuaiYmYS5zb3VyY2UhPT10aGlzLmp8fHR5cGVvZiBhLmRhdGEhPT0ic3RyaW5nIikpe3RyeXt2YXIgYj1KU09OLnBhcnNlKGEuZGF0YSl9Y2F0Y2goZil7cmV0dXJufWlmKGIpc3dpdGNoKGIuZXZlbnQpe2Nhc2UgImxpc3RlbmluZyI6dmFyIGM9YS5zb3VyY2U7YT1hLm9yaWdpbjtiPWIuaWQ7YSE9PSJudWxsIiYmKHRoaXMuST10aGlzLnRhcmdldE9yaWdpbj1hKTt0aGlzLmo9Yzt0aGlzLnNlc3Npb25JZD1iO0Q0KHRoaXMpO2JyZWFrO2Nhc2UgImNvbW1hbmQiOmM9Yi5mdW5jOwp2YXIgZD1iLmFyZ3M7aWYoYz09PSJhZGRFdmVudExpc3RlbmVyIiYmZCliPWRbMF0sYz1hLm9yaWdpbixiPT09Im9uUmVhZHkiP3RoaXMuYXBpLmxvZ0FwaUNhbGwoYCR7Yn0gaW52b2NhdGlvbmAsYyk6Yj09PSJvbkVycm9yIiYmdGhpcy5oYSYmKHRoaXMuYXBpLmxvZ0FwaUNhbGwoYCR7Yn0gaW52b2NhdGlvbmAsYyx0aGlzLmVycm9yQ29kZSksdGhpcy5lcnJvckNvZGU9dm9pZCAwKSx0aGlzLmFwaS5sb2dBcGlDYWxsKGAke2J9IHJlZ2lzdHJhdGlvbmAsYyksdGhpcy5aW2JdfHxiPT09Im9uUmVhZHkifHwoYT1NdWEodGhpcyxiLGMpLHRoaXMuby5wdXNoKHtldmVudFR5cGU6YixsaXN0ZW5lcjphLG9yaWdpbjpjfSksdGhpcy5nYT90aGlzLmFwaS5oYW5kbGVFeHRlcm5hbENhbGwoImFkZEV2ZW50TGlzdGVuZXIiLFtiLGFdLGMpOnRoaXMuYXBpLmFkZEV2ZW50TGlzdGVuZXIoYixhKSx0aGlzLlpbYl09ITApO2Vsc2UgaWYoYj1jLGM9ZCxhPWEub3JpZ2luLHRoaXMuYXBpLmlzRXh0ZXJuYWxNZXRob2RBdmFpbGFibGUoYiwKYSkpe2M9Y3x8W107aWYoYy5sZW5ndGg+MCYmeDQoYikpe3ZhciBlPWM7aWYoXy5BYShlWzBdKSYmIUFycmF5LmlzQXJyYXkoZVswXSkpZD1lWzBdO2Vsc2Ugc3dpdGNoKGQ9e30sYil7Y2FzZSAibG9hZFZpZGVvQnlJZCI6Y2FzZSAiY3VlVmlkZW9CeUlkIjpkPXk0KGVbMF0sZVsxXSE9PXZvaWQgMD9OdW1iZXIoZVsxXSk6dm9pZCAwLGVbMl0pO2JyZWFrO2Nhc2UgImxvYWRWaWRlb0J5VXJsIjpjYXNlICJjdWVWaWRlb0J5VXJsIjpkPWVbMF07dHlwZW9mIGQ9PT0ic3RyaW5nIiYmKGQ9e21lZGlhQ29udGVudFVybDpkLHN0YXJ0U2Vjb25kczplWzFdIT09dm9pZCAwP051bWJlcihlWzFdKTp2b2lkIDAsc3VnZ2VzdGVkUXVhbGl0eTplWzJdfSk7Yjp7aWYoKGU9ZC5tZWRpYUNvbnRlbnRVcmwpJiYoZT0vXC8oW3ZlXXxlbWJlZClcLyhbXiM/XSspLy5leGVjKGUpKSYmZVsyXSl7ZT1lWzJdO2JyZWFrIGJ9ZT1udWxsfWQudmlkZW9JZD1lO2Q9eTQoZCk7YnJlYWs7Y2FzZSAibG9hZFBsYXlsaXN0IjpjYXNlICJjdWVQbGF5bGlzdCI6ZD0KejQoZVswXSxlWzFdLGVbMl0sZVszXSl9Yy5sZW5ndGg9MTtjWzBdPWR9dGhpcy5hcGkuaGFuZGxlRXh0ZXJuYWxDYWxsKGIsYyxhKTt4NChiKSYmRTQodGhpcyxCNCh0aGlzKSl9fX19bGEoKXtzdXBlci5sYSgpO0I1LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLHRoaXMuRCk7Zm9yKHZhciBhPTA7YTx0aGlzLkIubGVuZ3RoO2ErKyl7dmFyIGI9dGhpcy5CW2FdO3RoaXMuYXBpLnJlbW92ZUV2ZW50TGlzdGVuZXIoYi5ldmVudFR5cGUsYi5saXN0ZW5lcil9dGhpcy5CPVtdO2ZvcihhPTA7YTx0aGlzLm8ubGVuZ3RoO2ErKyliPXRoaXMub1thXSx0aGlzLmdhP3RoaXMuYXBpLmhhbmRsZUV4dGVybmFsQ2FsbCgicmVtb3ZlRXZlbnRMaXN0ZW5lciIsW2IuZXZlbnRUeXBlLGIubGlzdGVuZXJdLGIub3JpZ2luKTp0aGlzLmFwaS5yZW1vdmVFdmVudExpc3RlbmVyKGIuZXZlbnRUeXBlLGIubGlzdGVuZXIpO3RoaXMubz1bXX19LEI1PXdpbmRvdzt2YXIgWHVhPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhLGIpe3ZhciBjPUw0O3N1cGVyKCk7dGhpcy5hcGk9Yzt0aGlzLmlkPWE7dGhpcy5vcmlnaW49Yjt0aGlzLmo9e307dGhpcy52PV8ueCgid2ViX3BsYXllcl9zcGxpdF9ldmVudF9idXNfaWZyYW1lIik7dGhpcy5vPWQ9Pnt0aGlzLm9uTWVzc2FnZShkKX07QzUuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsdGhpcy5vKTtGNCh0aGlzLCJSRUNFSVZJTkciKX1hZGRMaXN0ZW5lcihhLGIpe2lmKCEoYSBpbiB0aGlzLmopKXt2YXIgYz10aGlzLkIuYmluZCh0aGlzLGEpO3RoaXMualthXT1jO3RoaXMuYWRkRXZlbnRMaXN0ZW5lcihhLGMsYil9fUIoYSxiKXt0aGlzLmlhKCl8fEY0KHRoaXMsYSxPdWEoYSxiKSl9cmVtb3ZlTGlzdGVuZXIoYSxiKXthIGluIHRoaXMuaiYmKHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihhLHRoaXMualthXSxiKSxkZWxldGUgdGhpcy5qW2FdKX1hZGRFdmVudExpc3RlbmVyKGEsYixjKXt0aGlzLnY/CmE9PT0ib25SZWFkeSI/dGhpcy5hcGkuYWRkRXZlbnRMaXN0ZW5lcihhLGIpOnRoaXMuYXBpLmhhbmRsZUV4dGVybmFsQ2FsbCgiYWRkRXZlbnRMaXN0ZW5lciIsW2EsYl0sY3x8bnVsbCk6dGhpcy5hcGkuYWRkRXZlbnRMaXN0ZW5lcihhLGIpfXJlbW92ZUV2ZW50TGlzdGVuZXIoYSxiLGMpe3RoaXMudj9hPT09Im9uUmVhZHkiP3RoaXMuYXBpLnJlbW92ZUV2ZW50TGlzdGVuZXIoYSxiKTp0aGlzLmFwaS5oYW5kbGVFeHRlcm5hbENhbGwoInJlbW92ZUV2ZW50TGlzdGVuZXIiLFthLGJdLGN8fG51bGwpOnRoaXMuYXBpLnJlbW92ZUV2ZW50TGlzdGVuZXIoYSxiKX1vbk1lc3NhZ2UoYSl7aWYoYS5vcmlnaW49PT10aGlzLm9yaWdpbil7dmFyIGI9YS5kYXRhO2lmKHR5cGVvZiBiPT09InN0cmluZyIpe3RyeXtiPUpTT04ucGFyc2UoYil9Y2F0Y2goZSl7cmV0dXJufWlmKGIuY29tbWFuZCl7dmFyIGM9Yi5jb21tYW5kO2I9Yi5kYXRhO2E9YS5vcmlnaW47aWYoIXRoaXMuaWEoKSl7dmFyIGQ9CmJ8fHt9O3N3aXRjaChjKXtjYXNlICJhZGRFdmVudExpc3RlbmVyIjp0eXBlb2YgZC5ldmVudD09PSJzdHJpbmciJiZ0aGlzLmFkZExpc3RlbmVyKGQuZXZlbnQsYSk7YnJlYWs7Y2FzZSAicmVtb3ZlRXZlbnRMaXN0ZW5lciI6dHlwZW9mIGQuZXZlbnQ9PT0ic3RyaW5nIiYmdGhpcy5yZW1vdmVMaXN0ZW5lcihkLmV2ZW50LGEpO2JyZWFrO2RlZmF1bHQ6dGhpcy5hcGkuaXNSZWFkeSgpJiZ0aGlzLmFwaS5pc0V4dGVybmFsTWV0aG9kQXZhaWxhYmxlKGMsYXx8bnVsbCkmJihiPVB1YShjLGJ8fHt9KSxiPXRoaXMuYXBpLmhhbmRsZUV4dGVybmFsQ2FsbChjLGIsYXx8bnVsbCksKGI9UXVhKGMsYikpJiZGNCh0aGlzLGMsYikpfX19fX19bGEoKXtDNS5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIix0aGlzLm8pO2ZvcihsZXQgYSBpbiB0aGlzLmopdGhpcy5qLmhhc093blByb3BlcnR5KGEpJiZ0aGlzLnJlbW92ZUxpc3RlbmVyKGEpO3N1cGVyLmxhKCl9fSxDNT13aW5kb3csTnVhPQp3aW5kb3cucGFyZW50O3ZhciBHND1uZXcgeHdhO3ZhciBMND1udWxsLE40PW51bGwsSjQ9KCk9Pnt9LEg0O3ZhciBUND0hMTtfLmZ0LnRoZW4oKCk9PntfLkFxKCJlcF9pbml0X2N1cyIpO2lmKCFBNSl7QTU9ITA7dmFyIGE9Xy54KCJlbmFibGVfd2l6X2NvbnRleHRfcGVyX2NvbXBvbmVudCIpfHwhMTtPYmplY3QuYXNzaWduKF8uS3Use1JpOiEwLEdwOmEsRnA6YSxHdjpfLngoIndlYl9pbmNsdWRlX2Nvd190cmFjaW5nIiksaGFuZGxlRXJyb3I6enVhfSk7QnVhKCk7Xy53dj1mc2E7Xy54dj1nc2F9YnZhKCk7Xy5BcSgiZXBfaW5pdF9lcHMiKTtfLnJhKCJ5dC5zZXRDb25maWciLF8uUWkpO18ucmEoInl0LmNvbmZpZy5zZXQiLF8uUWkpO18ucmEoInl0LnNldE1zZyIsYjEpO18ucmEoInl0Lm1zZ3Muc2V0IixiMSk7Xy5yYSgieXQubG9nZ2luZy5lcnJvcnMubG9nIixfLkdwKTtfLnJhKCJ3cml0ZUVtYmVkIixVdWEpO18ucmEoInl0LmFidXNlLnBsYXllci5ib3RndWFyZEluaXRpYWxpemVkIixfLnNhKCJ5dC5hYnVzZS5wbGF5ZXIuYm90Z3VhcmRJbml0aWFsaXplZCIpfHxSdWEpO18ucmEoInl0LmFidXNlLnBsYXllci5pbnZva2VCb3RndWFyZCIsCl8uc2EoInl0LmFidXNlLnBsYXllci5pbnZva2VCb3RndWFyZCIpfHxTdWEpO18ucmEoInl0LmFidXNlLmRjbGtzdGF0dXMuY2hlY2tEY2xrU3RhdHVzIixfLnNhKCJ5dC5hYnVzZS5kY2xrc3RhdHVzLmNoZWNrRGNsa1N0YXR1cyIpfHxhMyk7Xy5yYSgieXQucGxheWVyLmV4cG9ydHMubmF2aWdhdGUiLF8uc2EoInl0LnBsYXllci5leHBvcnRzLm5hdmlnYXRlIil8fEJ0YSk7Xy5yYSgieXQudXRpbC5hY3Rpdml0eS5pbml0IixfLnNhKCJ5dC51dGlsLmFjdGl2aXR5LmluaXQiKXx8bDApO18ucmEoInl0LnV0aWwuYWN0aXZpdHkuZ2V0VGltZVNpbmNlQWN0aXZlIixfLnNhKCJ5dC51dGlsLmFjdGl2aXR5LmdldFRpbWVTaW5jZUFjdGl2ZSIpfHxfLkJuKTtfLnJhKCJ5dC51dGlsLmFjdGl2aXR5LnNldFRpbWVzdGFtcCIsXy5zYSgieXQudXRpbC5hY3Rpdml0eS5zZXRUaW1lc3RhbXAiKXx8ajApO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixfLlZpKFp1YSkpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwYWdlc2hvdyIsCl8uVmkoJHVhKSk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBhZ2VoaWRlIixfLlZpKGF2YSkpO2d1YSgpO1R1YSgpO18uQXEoImVwX2luaXRfZXBlIik7SjQ9Xy5ENTtfLkFxKCJlcF9pbml0X2N1ZSIpfSk7Xy5ENT0oKT0+e307Cl8uRDU9ZnVuY3Rpb24oYSl7KDAsXy5laCkoInI3OERyYiIpLnRoZW4oKCk9PnsoMCxfLnp5KShhKX0pfTsKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KfSkuY2FsbCh0aGlzLHRoaXMuZGVmYXVsdF9iYXNlKTsKLy8gR29vZ2xlIEluYy4K"}},"time_used":38,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":11,"receive":27,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/81a298ddc7471070.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.688Z","timestamp":1785143926688,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/81a298ddc7471070.js HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\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: same-origin\r\nPriority: u=4\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\naccess-control-allow-origin: *\r\nage: 3831443\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"81a298ddc7471070.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\netag: W/\"19fc6352b3bef54383c8770d74131cfa\"\r\nlast-modified: Sat, 13 Jun 2026 00:50:11 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/81a298ddc7471070.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::wcw4z-1781312483461-776bf6c194f6\r\nx-xss-protection: 1; mode=block\r\npriority: u=4,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=eRaVDPcZlpL%2FHG6st6rf4qKM6GHaI6pxFQcnVZQsJt7RKbhCVUFMy7Mw4AL8Fhy2kRkLS4sf%2Fm7Cfry5SFKRXob3RQUkX7r9xGFXjWxCn0N%2F%2BayW2DXJKhcErRNd\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21a8f05c9150b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"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"]},{"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":8114,"size_decoded":4392,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (8114), with no line terminators","md5":"19fc6352b3bef54383c8770d74131cfa","sha1":"c67ec295996975fd662c06e0b614bd3b9f97d7bd","sha256":"9f43d8db2c14631ecaeb7f7ea5d8823bbfe41eeee26f6893c816d0aa348e9605","sha512":"64eba4d08add14b4c9728e2e5026234cf522dd62e2da45df50d967e4d337e6b38cbeaf471dbfba3420a5d3c992bb47c628f60618fca6d84114f7250b7407c5cd","ssdeep":"96:76gC8v2YWBRNY6v28COSXTnv2IDESf3vZ8kM2Lv2kyIWwzysv2hv2zthN1Vm5w7b:cjYWG8COJIDEiikyBwuzkx/T+AP","tlshash":"e4f1536636d4f9d1168b44d5c83b5006f22e0d3a216d70a8b7e5cefa369044ef472fea","first_seen":"2026-02-06T09:43:19.169507Z","last_seen":"2026-08-11T04:47:30.109196Z","times_seen":1901,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDk0OTQsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIndvcmtBc3luY1N0b3JhZ2VJbnN0YW5jZSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7bGV0IG49KDAsZS5yKDQ5MjExKS5jcmVhdGVBc3luY0xvY2FsU3RvcmFnZSkoKX0sODk3OTEsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIndvcmtBc3luY1N0b3JhZ2UiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBuLndvcmtBc3luY1N0b3JhZ2VJbnN0YW5jZX19KTtsZXQgbj1lLnIoOTQ5NCl9LDcxMjM0LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJIYW5kbGVJU1JFcnJvciIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG99fSk7bGV0IG49InUiPHR5cGVvZiB3aW5kb3c/ZS5yKDg5NzkxKS53b3JrQXN5bmNTdG9yYWdlOnZvaWQgMDtmdW5jdGlvbiBvKHtlcnJvcjplfSl7aWYobil7bGV0IHQ9bi5nZXRTdG9yZSgpO2lmKHQ/LmlzU3RhdGljR2VuZXJhdGlvbil0aHJvdyBlJiZjb25zb2xlLmVycm9yKGUpLGV9cmV0dXJuIG51bGx9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNzQwODQsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInVzZVVudHJhY2tlZFBhdGhuYW1lIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdX19KTtsZXQgbj1lLnIoNzUyMDEpLG89ZS5yKDMxODk5KTtmdW5jdGlvbiB1KCl7cmV0dXJuIWZ1bmN0aW9uKCl7aWYoInUiPHR5cGVvZiB3aW5kb3cpe2xldHt3b3JrVW5pdEFzeW5jU3RvcmFnZTp0fT1lLnIoMTI5NjUpLHI9dC5nZXRTdG9yZSgpO2lmKCFyKXJldHVybiExO3N3aXRjaChyLnR5cGUpe2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6bGV0IG49ci5mYWxsYmFja1JvdXRlUGFyYW1zO3JldHVybiEhbiYmbi5zaXplPjB9fXJldHVybiExfSgpPygwLG4udXNlQ29udGV4dCkoby5QYXRobmFtZUNvbnRleHQpOm51bGx9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sODMzOTgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2hhbmRsZUhhcmROYXZFcnJvcjpmdW5jdGlvbigpe3JldHVybiBsfSx1c2VOYXZGYWlsdXJlSGFuZGxlcjpmdW5jdGlvbigpe3JldHVybiBpfX07Zm9yKHZhciBvIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsbyx7ZW51bWVyYWJsZTohMCxnZXQ6bltvXX0pO2Uucig3NTIwMSk7bGV0IHU9ZS5yKDg1NTk0KTtmdW5jdGlvbiBsKGUpe3JldHVybiEhKGUmJiJ1Ij50eXBlb2Ygd2luZG93KSYmISF3aW5kb3cubmV4dC5fX3BlbmRpbmdVcmwmJigwLHUuY3JlYXRlSHJlZkZyb21VcmwpKG5ldyBVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpKSE9PSgwLHUuY3JlYXRlSHJlZkZyb21VcmwpKHdpbmRvdy5uZXh0Ll9fcGVuZGluZ1VybCkmJihjb25zb2xlLmVycm9yKCJFcnJvciBvY2N1cnJlZCBkdXJpbmcgbmF2aWdhdGlvbiwgZmFsbGluZyBiYWNrIHRvIGhhcmQgbmF2aWdhdGlvbiIsZSksd2luZG93LmxvY2F0aW9uLmhyZWY9d2luZG93Lm5leHQuX19wZW5kaW5nVXJsLnRvU3RyaW5nKCksITApfWZ1bmN0aW9uIGkoKXt9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNzQ4NDcsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0Vycm9yQm91bmRhcnk6ZnVuY3Rpb24oKXtyZXR1cm4gX30sRXJyb3JCb3VuZGFyeUhhbmRsZXI6ZnVuY3Rpb24oKXtyZXR1cm4gcH19O2Zvcih2YXIgbyBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLG8se2VudW1lcmFibGU6ITAsZ2V0Om5bb119KTtsZXQgdT1lLnIoODEyNTgpLGw9ZS5yKDk4MTM0KSxpPXUuXyhlLnIoNzUyMDEpKSxhPWUucig3NDA4NCkscz1lLnIoNDk4NDMpO2Uucig4MzM5OCk7bGV0IGQ9ZS5yKDcxMjM0KSxjPWUucigzNDY1KSxmPSJ1Ij50eXBlb2Ygd2luZG93JiYoMCxjLmlzQm90KSh3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudCk7Y2xhc3MgcCBleHRlbmRzIGkuZGVmYXVsdC5Db21wb25lbnR7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5yZXNldD0oKT0+e3RoaXMuc2V0U3RhdGUoe2Vycm9yOm51bGx9KX0sdGhpcy5zdGF0ZT17ZXJyb3I6bnVsbCxwcmV2aW91c1BhdGhuYW1lOnRoaXMucHJvcHMucGF0aG5hbWV9fXN0YXRpYyBnZXREZXJpdmVkU3RhdGVGcm9tRXJyb3IoZSl7aWYoKDAscy5pc05leHRSb3V0ZXJFcnJvcikoZSkpdGhyb3cgZTtyZXR1cm57ZXJyb3I6ZX19c3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhlLHQpe2xldHtlcnJvcjpyfT10O3JldHVybiBlLnBhdGhuYW1lIT09dC5wcmV2aW91c1BhdGhuYW1lJiZ0LmVycm9yP3tlcnJvcjpudWxsLHByZXZpb3VzUGF0aG5hbWU6ZS5wYXRobmFtZX06e2Vycm9yOnQuZXJyb3IscHJldmlvdXNQYXRobmFtZTplLnBhdGhuYW1lfX1yZW5kZXIoKXtyZXR1cm4gdGhpcy5zdGF0ZS5lcnJvciYmIWY/KDAsbC5qc3hzKShsLkZyYWdtZW50LHtjaGlsZHJlbjpbKDAsbC5qc3gpKGQuSGFuZGxlSVNSRXJyb3Ise2Vycm9yOnRoaXMuc3RhdGUuZXJyb3J9KSx0aGlzLnByb3BzLmVycm9yU3R5bGVzLHRoaXMucHJvcHMuZXJyb3JTY3JpcHRzLCgwLGwuanN4KSh0aGlzLnByb3BzLmVycm9yQ29tcG9uZW50LHtlcnJvcjp0aGlzLnN0YXRlLmVycm9yLHJlc2V0OnRoaXMucmVzZXR9KV19KTp0aGlzLnByb3BzLmNoaWxkcmVufX1mdW5jdGlvbiBfKHtlcnJvckNvbXBvbmVudDplLGVycm9yU3R5bGVzOnQsZXJyb3JTY3JpcHRzOnIsY2hpbGRyZW46bn0pe2xldCBvPSgwLGEudXNlVW50cmFja2VkUGF0aG5hbWUpKCk7cmV0dXJuIGU/KDAsbC5qc3gpKHAse3BhdGhuYW1lOm8sZXJyb3JDb21wb25lbnQ6ZSxlcnJvclN0eWxlczp0LGVycm9yU2NyaXB0czpyLGNoaWxkcmVuOm59KTooMCxsLmpzeCkobC5GcmFnbWVudCx7Y2hpbGRyZW46bn0pfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDU3MjQ3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtSZWRpcmVjdEJvdW5kYXJ5OmZ1bmN0aW9uKCl7cmV0dXJuIHB9LFJlZGlyZWN0RXJyb3JCb3VuZGFyeTpmdW5jdGlvbigpe3JldHVybiBmfX07Zm9yKHZhciBvIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsbyx7ZW51bWVyYWJsZTohMCxnZXQ6bltvXX0pO2xldCB1PWUucig0NDA2NiksbD1lLnIoOTgxMzQpLGk9dS5fKGUucig3NTIwMSkpLGE9ZS5yKDI4OTk1KSxzPWUucig0MTcyMSksZD1lLnIoOTA4NjIpO2Z1bmN0aW9uIGMoe3JlZGlyZWN0OmUscmVzZXQ6dCxyZWRpcmVjdFR5cGU6cn0pe2xldCBuPSgwLGEudXNlUm91dGVyKSgpO3JldHVybigwLGkudXNlRWZmZWN0KSgoKT0+e2kuZGVmYXVsdC5zdGFydFRyYW5zaXRpb24oKCk9PntyPT09ZC5SZWRpcmVjdFR5cGUucHVzaD9uLnB1c2goZSx7fSk6bi5yZXBsYWNlKGUse30pLHQoKX0pfSxbZSxyLHQsbl0pLG51bGx9Y2xhc3MgZiBleHRlbmRzIGkuZGVmYXVsdC5Db21wb25lbnR7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5zdGF0ZT17cmVkaXJlY3Q6bnVsbCxyZWRpcmVjdFR5cGU6bnVsbH19c3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21FcnJvcihlKXtpZigoMCxkLmlzUmVkaXJlY3RFcnJvcikoZSkpe2xldCB0PSgwLHMuZ2V0VVJMRnJvbVJlZGlyZWN0RXJyb3IpKGUpLHI9KDAscy5nZXRSZWRpcmVjdFR5cGVGcm9tRXJyb3IpKGUpO3JldHVybiJoYW5kbGVkImluIGU/e3JlZGlyZWN0Om51bGwscmVkaXJlY3RUeXBlOm51bGx9OntyZWRpcmVjdDp0LHJlZGlyZWN0VHlwZTpyfX10aHJvdyBlfXJlbmRlcigpe2xldHtyZWRpcmVjdDplLHJlZGlyZWN0VHlwZTp0fT10aGlzLnN0YXRlO3JldHVybiBudWxsIT09ZSYmbnVsbCE9PXQ/KDAsbC5qc3gpKGMse3JlZGlyZWN0OmUscmVkaXJlY3RUeXBlOnQscmVzZXQ6KCk9PnRoaXMuc2V0U3RhdGUoe3JlZGlyZWN0Om51bGx9KX0pOnRoaXMucHJvcHMuY2hpbGRyZW59fWZ1bmN0aW9uIHAoe2NoaWxkcmVuOmV9KXtsZXQgdD0oMCxhLnVzZVJvdXRlcikoKTtyZXR1cm4oMCxsLmpzeCkoZix7cm91dGVyOnQsY2hpbGRyZW46ZX0pfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDUwMDk2LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJ1bnJlc29sdmVkVGhlbmFibGUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBufX0pO2xldCBuPXt0aGVuOigpPT57fX07KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMzYzNDUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e01ldGFkYXRhQm91bmRhcnk6ZnVuY3Rpb24oKXtyZXR1cm4gaX0sT3V0bGV0Qm91bmRhcnk6ZnVuY3Rpb24oKXtyZXR1cm4gc30sUm9vdExheW91dEJvdW5kYXJ5OmZ1bmN0aW9uKCl7cmV0dXJuIGR9LFZpZXdwb3J0Qm91bmRhcnk6ZnVuY3Rpb24oKXtyZXR1cm4gYX19O2Zvcih2YXIgbyBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLG8se2VudW1lcmFibGU6ITAsZ2V0Om5bb119KTtsZXQgdT1lLnIoNTM0NTkpLGw9e1t1Lk1FVEFEQVRBX0JPVU5EQVJZX05BTUVdOmZ1bmN0aW9uKHtjaGlsZHJlbjplfSl7cmV0dXJuIGV9LFt1LlZJRVdQT1JUX0JPVU5EQVJZX05BTUVdOmZ1bmN0aW9uKHtjaGlsZHJlbjplfSl7cmV0dXJuIGV9LFt1Lk9VVExFVF9CT1VOREFSWV9OQU1FXTpmdW5jdGlvbih7Y2hpbGRyZW46ZX0pe3JldHVybiBlfSxbdS5ST09UX0xBWU9VVF9CT1VOREFSWV9OQU1FXTpmdW5jdGlvbih7Y2hpbGRyZW46ZX0pe3JldHVybiBlfX0saT1sW3UuTUVUQURBVEFfQk9VTkRBUllfTkFNRS5zbGljZSgwKV0sYT1sW3UuVklFV1BPUlRfQk9VTkRBUllfTkFNRS5zbGljZSgwKV0scz1sW3UuT1VUTEVUX0JPVU5EQVJZX05BTUUuc2xpY2UoMCldLGQ9bFt1LlJPT1RfTEFZT1VUX0JPVU5EQVJZX05BTUUuc2xpY2UoMCldfSw0NDkzNCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiSGVhZE1hbmFnZXJDb250ZXh0Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj1lLnIoODEyNTgpLl8oZS5yKDc1MjAxKSkuZGVmYXVsdC5jcmVhdGVDb250ZXh0KHt9KX0sMTYxNTMsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImRlZmF1bHQiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBpfX0pO2xldCBuPWUucig5ODEzNCksbz1lLnIoNzEyMzQpLHU9e2ZvbnRGYW1pbHk6J3N5c3RlbS11aSwiU2Vnb2UgVUkiLFJvYm90byxIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZiwiQXBwbGUgQ29sb3IgRW1vamkiLCJTZWdvZSBVSSBFbW9qaSInLGhlaWdodDoiMTAwdmgiLHRleHRBbGlnbjoiY2VudGVyIixkaXNwbGF5OiJmbGV4IixmbGV4RGlyZWN0aW9uOiJjb2x1bW4iLGFsaWduSXRlbXM6ImNlbnRlciIsanVzdGlmeUNvbnRlbnQ6ImNlbnRlciJ9LGw9e2ZvbnRTaXplOiIxNHB4Iixmb250V2VpZ2h0OjQwMCxsaW5lSGVpZ2h0OiIyOHB4IixtYXJnaW46IjAgOHB4In0saT1mdW5jdGlvbih7ZXJyb3I6ZX0pe2xldCB0PWU/LmRpZ2VzdDtyZXR1cm4oMCxuLmpzeHMpKCJodG1sIix7aWQ6Il9fbmV4dF9lcnJvcl9fIixjaGlsZHJlbjpbKDAsbi5qc3gpKCJoZWFkIix7fSksKDAsbi5qc3hzKSgiYm9keSIse2NoaWxkcmVuOlsoMCxuLmpzeCkoby5IYW5kbGVJU1JFcnJvcix7ZXJyb3I6ZX0pLCgwLG4uanN4KSgiZGl2Iix7c3R5bGU6dSxjaGlsZHJlbjooMCxuLmpzeHMpKCJkaXYiLHtjaGlsZHJlbjpbKDAsbi5qc3hzKSgiaDIiLHtzdHlsZTpsLGNoaWxkcmVuOlsiQXBwbGljYXRpb24gZXJyb3I6IGEgIix0PyJzZXJ2ZXIiOiJjbGllbnQiLCItc2lkZSBleGNlcHRpb24gaGFzIG9jY3VycmVkIHdoaWxlIGxvYWRpbmcgIix3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUsIiAoc2VlIHRoZSIsIiAiLHQ/InNlcnZlciBsb2dzIjoiYnJvd3NlciBjb25zb2xlIiwiIGZvciBtb3JlIGluZm9ybWF0aW9uKS4iXX0pLHQ/KDAsbi5qc3gpKCJwIix7c3R5bGU6bCxjaGlsZHJlbjpgRGlnZXN0OiAke3R9YH0pOm51bGxdfSl9KV19KV19KX07KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX1dKTs="}},"time_used":10,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":10,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/95262386d8d4b6dd.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.701Z","timestamp":1785143926701,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/95262386d8d4b6dd.js HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\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: same-origin\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\naccess-control-allow-origin: *\r\nage: 4424333\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"95262386d8d4b6dd.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com https://vitals.vercel-insights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\netag: W/\"8c155806c003f628ca093cb0feb083d0\"\r\nlast-modified: Thu, 30 Apr 2026 21:19:00 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/95262386d8d4b6dd.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::n9fnj-1777689750477-eb548eb708c2\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=HZcF9eWEAJgupPGSIN%2BmPXwkz1Y%2Bll03hcL0S%2B4rsepn%2Fd9hCB2enz7ROLQ6LtfRxWVub2jpDAzZDHfNYcPsTdjJasOlO6N3OjWFgzKjvEkhan4h%2BQWYfEin5mTB\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21a8f05e91d0b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\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"]},{"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"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":30684,"size_decoded":9885,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (30682), with no line terminators","md5":"8c155806c003f628ca093cb0feb083d0","sha1":"7e566386cefa86e8ede2e755f712dff7a8ef02f7","sha256":"07310b422de93eb0e61986355fd1084b06b47060d629f957c5311440650a6d2a","sha512":"980bd9a8f57049d13d7a8647fb56f621b005d208dafacc5c0534b9a919204bc9e363a122a1b4a48f4ef71cc00dcd2308e4885de83e31d2491b0a5d4a807fe7fe","ssdeep":"384:tj5z75Bq9E0mLlSmRt0cJ3XHHE79Fg/Za98qWtOPSN6wfV:N5z9BX0idiMxxgwfV","tlshash":"a4d2d9b17395f9a352db86d9d03a0005f2290d3530ae28b0b395dcef365dc8991fafa5","first_seen":"2026-03-29T05:29:39.700118Z","last_seen":"2026-08-11T04:47:30.031635Z","times_seen":2178,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDc3NDcyLChlLHQscik9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlLHQ9e30pe2lmKHQub25seUhhc2hDaGFuZ2UpcmV0dXJuIHZvaWQgZSgpO2xldCByPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtpZigic21vb3RoIiE9PXIuZGF0YXNldC5zY3JvbGxCZWhhdmlvcilyZXR1cm4gdm9pZCBlKCk7bGV0IGE9ci5zdHlsZS5zY3JvbGxCZWhhdmlvcjtyLnN0eWxlLnNjcm9sbEJlaGF2aW9yPSJhdXRvIix0LmRvbnRGb3JjZUxheW91dHx8ci5nZXRDbGllbnRSZWN0cygpLGUoKSxyLnN0eWxlLnNjcm9sbEJlaGF2aW9yPWF9T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJkaXNhYmxlU21vb3RoU2Nyb2xsRHVyaW5nUm91dGVUcmFuc2l0aW9uIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KSxlLnIoOTE5NDcpfSwxODkxLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJIVFRQQWNjZXNzRmFsbGJhY2tCb3VuZGFyeSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGx9fSk7bGV0IG49ZS5yKDQ0MDY2KSxhPWUucig5ODEzNCksbz1uLl8oZS5yKDc1MjAxKSksaT1lLnIoNzQwODQpLHM9ZS5yKDUzMTMzKTtlLnIoOTE5NDcpO2xldCBjPWUucigxNjg3Mik7Y2xhc3MgdSBleHRlbmRzIG8uZGVmYXVsdC5Db21wb25lbnR7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5zdGF0ZT17dHJpZ2dlcmVkU3RhdHVzOnZvaWQgMCxwcmV2aW91c1BhdGhuYW1lOmUucGF0aG5hbWV9fWNvbXBvbmVudERpZENhdGNoKCl7fXN0YXRpYyBnZXREZXJpdmVkU3RhdGVGcm9tRXJyb3IoZSl7aWYoKDAscy5pc0hUVFBBY2Nlc3NGYWxsYmFja0Vycm9yKShlKSlyZXR1cm57dHJpZ2dlcmVkU3RhdHVzOigwLHMuZ2V0QWNjZXNzRmFsbGJhY2tIVFRQU3RhdHVzKShlKX07dGhyb3cgZX1zdGF0aWMgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKGUsdCl7cmV0dXJuIGUucGF0aG5hbWUhPT10LnByZXZpb3VzUGF0aG5hbWUmJnQudHJpZ2dlcmVkU3RhdHVzP3t0cmlnZ2VyZWRTdGF0dXM6dm9pZCAwLHByZXZpb3VzUGF0aG5hbWU6ZS5wYXRobmFtZX06e3RyaWdnZXJlZFN0YXR1czp0LnRyaWdnZXJlZFN0YXR1cyxwcmV2aW91c1BhdGhuYW1lOmUucGF0aG5hbWV9fXJlbmRlcigpe2xldHtub3RGb3VuZDplLGZvcmJpZGRlbjp0LHVuYXV0aG9yaXplZDpyLGNoaWxkcmVuOm59PXRoaXMucHJvcHMse3RyaWdnZXJlZFN0YXR1czpvfT10aGlzLnN0YXRlLGk9e1tzLkhUVFBBY2Nlc3NFcnJvclN0YXR1cy5OT1RfRk9VTkRdOmUsW3MuSFRUUEFjY2Vzc0Vycm9yU3RhdHVzLkZPUkJJRERFTl06dCxbcy5IVFRQQWNjZXNzRXJyb3JTdGF0dXMuVU5BVVRIT1JJWkVEXTpyfTtpZihvKXtsZXQgYz1vPT09cy5IVFRQQWNjZXNzRXJyb3JTdGF0dXMuTk9UX0ZPVU5EJiZlLHU9bz09PXMuSFRUUEFjY2Vzc0Vycm9yU3RhdHVzLkZPUkJJRERFTiYmdCxsPW89PT1zLkhUVFBBY2Nlc3NFcnJvclN0YXR1cy5VTkFVVEhPUklaRUQmJnI7cmV0dXJuIGN8fHV8fGw/KDAsYS5qc3hzKShhLkZyYWdtZW50LHtjaGlsZHJlbjpbKDAsYS5qc3gpKCJtZXRhIix7bmFtZToicm9ib3RzIixjb250ZW50OiJub2luZGV4In0pLCExLGlbb11dfSk6bn1yZXR1cm4gbn19ZnVuY3Rpb24gbCh7bm90Rm91bmQ6ZSxmb3JiaWRkZW46dCx1bmF1dGhvcml6ZWQ6cixjaGlsZHJlbjpufSl7bGV0IHM9KDAsaS51c2VVbnRyYWNrZWRQYXRobmFtZSkoKSxsPSgwLG8udXNlQ29udGV4dCkoYy5NaXNzaW5nU2xvdENvbnRleHQpO3JldHVybiBlfHx0fHxyPygwLGEuanN4KSh1LHtwYXRobmFtZTpzLG5vdEZvdW5kOmUsZm9yYmlkZGVuOnQsdW5hdXRob3JpemVkOnIsbWlzc2luZ1Nsb3RzOmwsY2hpbGRyZW46bn0pOigwLGEuanN4KShhLkZyYWdtZW50LHtjaGlsZHJlbjpufSl9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sODU2NDYsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInVzZVJvdXRlckJGQ2FjaGUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPWUucig3NTIwMSk7ZnVuY3Rpb24gYShlLHQpe2xldFtyLGFdPSgwLG4udXNlU3RhdGUpKCgpPT4oe3RyZWU6ZSxzdGF0ZUtleTp0LG5leHQ6bnVsbH0pKTtpZihyLnRyZWU9PT1lKXJldHVybiByO2xldCBvPXt0cmVlOmUsc3RhdGVLZXk6dCxuZXh0Om51bGx9LGk9MSxzPXIsYz1vO2Zvcig7bnVsbCE9PXMmJmk8MTspe2lmKHMuc3RhdGVLZXk9PT10KXtjLm5leHQ9cy5uZXh0O2JyZWFrfXtpKys7bGV0IGU9e3RyZWU6cy50cmVlLHN0YXRlS2V5OnMuc3RhdGVLZXksbmV4dDpudWxsfTtjLm5leHQ9ZSxjPWV9cz1zLm5leHR9cmV0dXJuIGEobyksb30oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwzMDk3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gd319KTtsZXQgbj1lLnIoODEyNTgpLGE9ZS5yKDQ0MDY2KSxvPWUucig5ODEzNCksaT1hLl8oZS5yKDc1MjAxKSkscz1uLl8oZS5yKDI5MDgwKSksYz1lLnIoMTY4NzIpLHU9ZS5yKDUwMDk2KSxsPWUucig3NDg0NyksZD1lLnIoODk2MTYpLGY9ZS5yKDc3NDcyKSxwPWUucig1NzI0NyksaD1lLnIoMTg5MSksbT1lLnIoNTc3NzgpLGc9ZS5yKDg1NjQ2KTtlLnIoOTIyMjcpO2xldCB5PWUucigzMTg5OSksYj1lLnIoODgwNjIpLFA9ZS5yKDE4OTM5KSxfPXMuZGVmYXVsdC5fX0RPTV9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9XQVJOX1VTRVJTX1RIRVlfQ0FOTk9UX1VQR1JBREUsUz1bImJvdHRvbSIsImhlaWdodCIsImxlZnQiLCJyaWdodCIsInRvcCIsIndpZHRoIiwieCIsInkiXTtmdW5jdGlvbiB2KGUsdCl7bGV0IHI9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtyZXR1cm4gci50b3A+PTAmJnIudG9wPD10fWNsYXNzIE8gZXh0ZW5kcyBpLmRlZmF1bHQuQ29tcG9uZW50e2NvbXBvbmVudERpZE1vdW50KCl7dGhpcy5oYW5kbGVQb3RlbnRpYWxTY3JvbGwoKX1jb21wb25lbnREaWRVcGRhdGUoKXt0aGlzLnByb3BzLmZvY3VzQW5kU2Nyb2xsUmVmLmFwcGx5JiZ0aGlzLmhhbmRsZVBvdGVudGlhbFNjcm9sbCgpfXJlbmRlcigpe3JldHVybiB0aGlzLnByb3BzLmNoaWxkcmVufWNvbnN0cnVjdG9yKC4uLmUpe3N1cGVyKC4uLmUpLHRoaXMuaGFuZGxlUG90ZW50aWFsU2Nyb2xsPSgpPT57bGV0e2ZvY3VzQW5kU2Nyb2xsUmVmOmUsc2VnbWVudFBhdGg6dH09dGhpcy5wcm9wcztpZihlLmFwcGx5KXtpZigwIT09ZS5zZWdtZW50UGF0aHMubGVuZ3RoJiYhZS5zZWdtZW50UGF0aHMuc29tZShlPT50LmV2ZXJ5KCh0LHIpPT4oMCxkLm1hdGNoU2VnbWVudCkodCxlW3JdKSkpKXJldHVybjtsZXQgcj1udWxsLG49ZS5oYXNoRnJhZ21lbnQ7aWYobiYmKHI9InRvcCI9PT1uP2RvY3VtZW50LmJvZHk6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobik/P2RvY3VtZW50LmdldEVsZW1lbnRzQnlOYW1lKG4pWzBdKSxyfHwocj0idSI8dHlwZW9mIHdpbmRvdz9udWxsOigwLF8uZmluZERPTU5vZGUpKHRoaXMpKSwhKHIgaW5zdGFuY2VvZiBFbGVtZW50KSlyZXR1cm47Zm9yKDshKHIgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCl8fGZ1bmN0aW9uKGUpe2lmKFsic3RpY2t5IiwiZml4ZWQiXS5pbmNsdWRlcyhnZXRDb21wdXRlZFN0eWxlKGUpLnBvc2l0aW9uKSlyZXR1cm4hMDtsZXQgdD1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3JldHVybiBTLmV2ZXJ5KGU9PjA9PT10W2VdKX0ocik7KXtpZihudWxsPT09ci5uZXh0RWxlbWVudFNpYmxpbmcpcmV0dXJuO3I9ci5uZXh0RWxlbWVudFNpYmxpbmd9ZS5hcHBseT0hMSxlLmhhc2hGcmFnbWVudD1udWxsLGUuc2VnbWVudFBhdGhzPVtdLCgwLGYuZGlzYWJsZVNtb290aFNjcm9sbER1cmluZ1JvdXRlVHJhbnNpdGlvbikoKCk9PntpZihuKXJldHVybiB2b2lkIHIuc2Nyb2xsSW50b1ZpZXcoKTtsZXQgZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsdD1lLmNsaWVudEhlaWdodDshdihyLHQpJiYoZS5zY3JvbGxUb3A9MCx2KHIsdCl8fHIuc2Nyb2xsSW50b1ZpZXcoKSl9LHtkb250Rm9yY2VMYXlvdXQ6ITAsb25seUhhc2hDaGFuZ2U6ZS5vbmx5SGFzaENoYW5nZX0pLGUub25seUhhc2hDaGFuZ2U9ITEsci5mb2N1cygpfX19fWZ1bmN0aW9uIFIoe3NlZ21lbnRQYXRoOmUsY2hpbGRyZW46dH0pe2xldCByPSgwLGkudXNlQ29udGV4dCkoYy5HbG9iYWxMYXlvdXRSb3V0ZXJDb250ZXh0KTtpZighcil0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoImludmFyaWFudCBnbG9iYWwgbGF5b3V0IHJvdXRlciBub3QgbW91bnRlZCIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNDczIixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3JldHVybigwLG8uanN4KShPLHtzZWdtZW50UGF0aDplLGZvY3VzQW5kU2Nyb2xsUmVmOnIuZm9jdXNBbmRTY3JvbGxSZWYsY2hpbGRyZW46dH0pfWZ1bmN0aW9uIEUoe3RyZWU6ZSxzZWdtZW50UGF0aDp0LGRlYnVnTmFtZUNvbnRleHQ6cixjYWNoZU5vZGU6bixwYXJhbXM6YSx1cmw6cyxpc0FjdGl2ZTpsfSl7bGV0IGQsZj0oMCxpLnVzZUNvbnRleHQpKGMuR2xvYmFsTGF5b3V0Um91dGVyQ29udGV4dCk7aWYoKDAsaS51c2VDb250ZXh0KSh5Lk5hdmlnYXRpb25Qcm9taXNlc0NvbnRleHQpLCFmKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiaW52YXJpYW50IGdsb2JhbCBsYXlvdXQgcm91dGVyIG5vdCBtb3VudGVkIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU0NzMiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7bGV0IHA9bnVsbCE9PW4/bjooMCxpLnVzZSkodS51bnJlc29sdmVkVGhlbmFibGUpLGg9bnVsbCE9PXAucHJlZmV0Y2hSc2M/cC5wcmVmZXRjaFJzYzpwLnJzYyxtPSgwLGkudXNlRGVmZXJyZWRWYWx1ZSkocC5yc2MsaCk7aWYoKDAsUC5pc0RlZmVycmVkUnNjKShtKSl7bGV0IGU9KDAsaS51c2UpKG0pO251bGw9PT1lJiYoMCxpLnVzZSkodS51bnJlc29sdmVkVGhlbmFibGUpLGQ9ZX1lbHNlIG51bGw9PT1tJiYoMCxpLnVzZSkodS51bnJlc29sdmVkVGhlbmFibGUpLGQ9bTtsZXQgZz1kO3JldHVybigwLG8uanN4KShjLkxheW91dFJvdXRlckNvbnRleHQuUHJvdmlkZXIse3ZhbHVlOntwYXJlbnRUcmVlOmUscGFyZW50Q2FjaGVOb2RlOnAscGFyZW50U2VnbWVudFBhdGg6dCxwYXJlbnRQYXJhbXM6YSxkZWJ1Z05hbWVDb250ZXh0OnIsdXJsOnMsaXNBY3RpdmU6bH0sY2hpbGRyZW46Z30pfWZ1bmN0aW9uIGooe25hbWU6ZSxsb2FkaW5nOnQsY2hpbGRyZW46cn0pe2xldCBuO2lmKG49Im9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT09dCYmImZ1bmN0aW9uIj09dHlwZW9mIHQudGhlbj8oMCxpLnVzZSkodCk6dCl7bGV0IHQ9blswXSxhPW5bMV0scz1uWzJdO3JldHVybigwLG8uanN4KShpLlN1c3BlbnNlLHtuYW1lOmUsZmFsbGJhY2s6KDAsby5qc3hzKShvLkZyYWdtZW50LHtjaGlsZHJlbjpbYSxzLHRdfSksY2hpbGRyZW46cn0pfXJldHVybigwLG8uanN4KShvLkZyYWdtZW50LHtjaGlsZHJlbjpyfSl9ZnVuY3Rpb24gdyh7cGFyYWxsZWxSb3V0ZXJLZXk6ZSxlcnJvcjp0LGVycm9yU3R5bGVzOnIsZXJyb3JTY3JpcHRzOm4sdGVtcGxhdGVTdHlsZXM6YSx0ZW1wbGF0ZVNjcmlwdHM6cyx0ZW1wbGF0ZTpkLG5vdEZvdW5kOmYsZm9yYmlkZGVuOnksdW5hdXRob3JpemVkOlAsc2VnbWVudFZpZXdCb3VuZGFyaWVzOl99KXtsZXQgUz0oMCxpLnVzZUNvbnRleHQpKGMuTGF5b3V0Um91dGVyQ29udGV4dCk7aWYoIVMpdGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKCJpbnZhcmlhbnQgZXhwZWN0ZWQgbGF5b3V0IHJvdXRlciB0byBiZSBtb3VudGVkIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU1NiIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtsZXR7cGFyZW50VHJlZTp2LHBhcmVudENhY2hlTm9kZTpPLHBhcmVudFNlZ21lbnRQYXRoOncscGFyZW50UGFyYW1zOkMsdXJsOlQsaXNBY3RpdmU6eCxkZWJ1Z05hbWVDb250ZXh0OkF9PVMsTT1PLnBhcmFsbGVsUm91dGVzLEQ9TS5nZXQoZSk7RHx8KEQ9bmV3IE1hcCxNLnNldChlLEQpKTtsZXQgRj12WzBdLEk9bnVsbD09PXc/W2VdOncuY29uY2F0KFtGLGVdKSxrPXZbMV1bZV07dm9pZCAwPT09ayYmKDAsaS51c2UpKHUudW5yZXNvbHZlZFRoZW5hYmxlKTtsZXQgTj1rWzBdLFU9KDAsbS5jcmVhdGVSb3V0ZXJDYWNoZUtleSkoTiwhMCksQj0oMCxnLnVzZVJvdXRlckJGQ2FjaGUpKGssVSksTD1bXTtkb3tsZXQgZT1CLnRyZWUsaT1CLnN0YXRlS2V5LHU9ZVswXSxnPSgwLG0uY3JlYXRlUm91dGVyQ2FjaGVLZXkpKHUpLF89RC5nZXQoZyk/P251bGwsUz1DO2lmKEFycmF5LmlzQXJyYXkodSkpe2xldCBlPXVbMF0sdD11WzFdLHI9dVsyXSxuPSgwLGIuZ2V0UGFyYW1WYWx1ZUZyb21DYWNoZUtleSkodCxyKTtudWxsIT09biYmKFM9ey4uLkMsW2VdOm59KX1sZXQgdj1mdW5jdGlvbihlKXtpZigiLyI9PT1lKXJldHVybiIvIjtpZigic3RyaW5nIj09dHlwZW9mIGUpaWYoIihzbG90KSI9PT1lKXJldHVybjtlbHNlIHJldHVybiBlKyIvIjtyZXR1cm4gZVsxXSsiLyJ9KHUpLHc9dj8/QSxNPXZvaWQgMD09PXY/dm9pZCAwOkEsRj1PLmxvYWRpbmcsaz0oMCxvLmpzeHMpKGMuVGVtcGxhdGVDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTooMCxvLmpzeHMpKFIse3NlZ21lbnRQYXRoOkksY2hpbGRyZW46WygwLG8uanN4KShsLkVycm9yQm91bmRhcnkse2Vycm9yQ29tcG9uZW50OnQsZXJyb3JTdHlsZXM6cixlcnJvclNjcmlwdHM6bixjaGlsZHJlbjooMCxvLmpzeCkoaix7bmFtZTpNLGxvYWRpbmc6RixjaGlsZHJlbjooMCxvLmpzeCkoaC5IVFRQQWNjZXNzRmFsbGJhY2tCb3VuZGFyeSx7bm90Rm91bmQ6Zixmb3JiaWRkZW46eSx1bmF1dGhvcml6ZWQ6UCxjaGlsZHJlbjooMCxvLmpzeHMpKHAuUmVkaXJlY3RCb3VuZGFyeSx7Y2hpbGRyZW46WygwLG8uanN4KShFLHt1cmw6VCx0cmVlOmUscGFyYW1zOlMsY2FjaGVOb2RlOl8sc2VnbWVudFBhdGg6SSxkZWJ1Z05hbWVDb250ZXh0OncsaXNBY3RpdmU6eCYmaT09PVV9KSxudWxsXX0pfSl9KX0pLG51bGxdfSksY2hpbGRyZW46W2EscyxkXX0saSk7TC5wdXNoKGspLEI9Qi5uZXh0fXdoaWxlKG51bGwhPT1CKXJldHVybiBMfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDk5Mjk5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gc319KTtsZXQgbj1lLnIoNDQwNjYpLGE9ZS5yKDk4MTM0KSxvPW4uXyhlLnIoNzUyMDEpKSxpPWUucigxNjg3Mik7ZnVuY3Rpb24gcygpe2xldCBlPSgwLG8udXNlQ29udGV4dCkoaS5UZW1wbGF0ZUNvbnRleHQpO3JldHVybigwLGEuanN4KShhLkZyYWdtZW50LHtjaGlsZHJlbjplfSl9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sODk1MywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiY3JlYXRlUmVuZGVyU2VhcmNoUGFyYW1zRnJvbUNsaWVudCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9fSk7bGV0IG49bmV3IFdlYWtNYXA7ZnVuY3Rpb24gYShlKXtsZXQgdD1uLmdldChlKTtpZih0KXJldHVybiB0O2xldCByPVByb21pc2UucmVzb2x2ZShlKTtyZXR1cm4gbi5zZXQoZSxyKSxyfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDY4NjE0LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJjcmVhdGVSZW5kZXJTZWFyY2hQYXJhbXNGcm9tQ2xpZW50Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj1lLnIoODk1MykuY3JlYXRlUmVuZGVyU2VhcmNoUGFyYW1zRnJvbUNsaWVudDsoImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw3MDcyOSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiY3JlYXRlUmVuZGVyUGFyYW1zRnJvbUNsaWVudCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9fSk7bGV0IG49bmV3IFdlYWtNYXA7ZnVuY3Rpb24gYShlKXtsZXQgdD1uLmdldChlKTtpZih0KXJldHVybiB0O2xldCByPVByb21pc2UucmVzb2x2ZShlKTtyZXR1cm4gbi5zZXQoZSxyKSxyfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDg3MTg5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJjcmVhdGVSZW5kZXJQYXJhbXNGcm9tQ2xpZW50Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj1lLnIoNzA3MjkpLmNyZWF0ZVJlbmRlclBhcmFtc0Zyb21DbGllbnQ7KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMTc1MTgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIlJlZmxlY3RBZGFwdGVyIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtjbGFzcyBue3N0YXRpYyBnZXQoZSx0LHIpe2xldCBuPVJlZmxlY3QuZ2V0KGUsdCxyKTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygbj9uLmJpbmQoZSk6bn1zdGF0aWMgc2V0KGUsdCxyLG4pe3JldHVybiBSZWZsZWN0LnNldChlLHQscixuKX1zdGF0aWMgaGFzKGUsdCl7cmV0dXJuIFJlZmxlY3QuaGFzKGUsdCl9c3RhdGljIGRlbGV0ZVByb3BlcnR5KGUsdCl7cmV0dXJuIFJlZmxlY3QuZGVsZXRlUHJvcGVydHkoZSx0KX19fSw0NTAxNCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiY3JlYXRlRGVkdXBlZEJ5Q2FsbHNpdGVTZXJ2ZXJFcnJvckxvZ2dlckRldiIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGN9fSk7bGV0IG49ZnVuY3Rpb24oZSx0KXtpZihlJiZlLl9fZXNNb2R1bGUpcmV0dXJuIGU7aWYobnVsbD09PWV8fCJvYmplY3QiIT10eXBlb2YgZSYmImZ1bmN0aW9uIiE9dHlwZW9mIGUpcmV0dXJue2RlZmF1bHQ6ZX07dmFyIHI9YSh2b2lkIDApO2lmKHImJnIuaGFzKGUpKXJldHVybiByLmdldChlKTt2YXIgbj17X19wcm90b19fOm51bGx9LG89T2JqZWN0LmRlZmluZVByb3BlcnR5JiZPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yO2Zvcih2YXIgaSBpbiBlKWlmKCJkZWZhdWx0IiE9PWkmJk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLGkpKXt2YXIgcz1vP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSxpKTpudWxsO3MmJihzLmdldHx8cy5zZXQpP09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLGkscyk6bltpXT1lW2ldfXJldHVybiBuLmRlZmF1bHQ9ZSxyJiZyLnNldChlLG4pLG59KGUucig3NTIwMSkpO2Z1bmN0aW9uIGEoZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIFdlYWtNYXApcmV0dXJuIG51bGw7dmFyIHQ9bmV3IFdlYWtNYXAscj1uZXcgV2Vha01hcDtyZXR1cm4oYT1mdW5jdGlvbihlKXtyZXR1cm4gZT9yOnR9KShlKX1sZXQgbz17Y3VycmVudDpudWxsfSxpPSJmdW5jdGlvbiI9PXR5cGVvZiBuLmNhY2hlP24uY2FjaGU6ZT0+ZSxzPWNvbnNvbGUud2FybjtmdW5jdGlvbiBjKGUpe3JldHVybiBmdW5jdGlvbiguLi50KXtzKGUoLi4udCkpfX1pKGU9Pnt0cnl7cyhvLmN1cnJlbnQpfWZpbmFsbHl7by5jdXJyZW50PW51bGx9fSl9LDc1ODI3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtkZXNjcmliZUhhc0NoZWNraW5nU3RyaW5nUHJvcGVydHk6ZnVuY3Rpb24oKXtyZXR1cm4gc30sZGVzY3JpYmVTdHJpbmdQcm9wZXJ0eUFjY2VzczpmdW5jdGlvbigpe3JldHVybiBpfSx3ZWxsS25vd25Qcm9wZXJ0aWVzOmZ1bmN0aW9uKCl7cmV0dXJuIGN9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89L15bQS1aYS16XyRdW0EtWmEtejAtOV8kXSokLztmdW5jdGlvbiBpKGUsdCl7cmV0dXJuIG8udGVzdCh0KT9gXGAke2V9LiR7dH1cYGA6YFxgJHtlfVske0pTT04uc3RyaW5naWZ5KHQpfV1cYGB9ZnVuY3Rpb24gcyhlLHQpe2xldCByPUpTT04uc3RyaW5naWZ5KHQpO3JldHVybmBcYFJlZmxlY3QuaGFzKCR7ZX0sICR7cn0pXGAsIFxgJHtyfSBpbiAke2V9XGAsIG9yIHNpbWlsYXJgfWxldCBjPW5ldyBTZXQoWyJoYXNPd25Qcm9wZXJ0eSIsImlzUHJvdG90eXBlT2YiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsInRvU3RyaW5nIiwidmFsdWVPZiIsInRvTG9jYWxlU3RyaW5nIiwidGhlbiIsImNhdGNoIiwiZmluYWxseSIsInN0YXR1cyIsImRpc3BsYXlOYW1lIiwiX2RlYnVnSW5mbyIsInRvSlNPTiIsIiQkdHlwZW9mIiwiX19lc01vZHVsZSJdKX0sNTU5NDksKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImFmdGVyVGFza0FzeW5jU3RvcmFnZUluc3RhbmNlIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj0oMCxlLnIoNDkyMTEpLmNyZWF0ZUFzeW5jTG9jYWxTdG9yYWdlKSgpfSwxMzE3NywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiYWZ0ZXJUYXNrQXN5bmNTdG9yYWdlIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbi5hZnRlclRhc2tBc3luY1N0b3JhZ2VJbnN0YW5jZX19KTtsZXQgbj1lLnIoNTU5NDkpfSwzNzE2NSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17aXNSZXF1ZXN0QVBJQ2FsbGFibGVJbnNpZGVBZnRlcjpmdW5jdGlvbigpe3JldHVybiB1fSx0aHJvd0ZvclNlYXJjaFBhcmFtc0FjY2Vzc0luVXNlQ2FjaGU6ZnVuY3Rpb24oKXtyZXR1cm4gY30sdGhyb3dXaXRoU3RhdGljR2VuZXJhdGlvbkJhaWxvdXRFcnJvcldpdGhEeW5hbWljRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gc319O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbz1lLnIoMTY0MzIpLGk9ZS5yKDEzMTc3KTtmdW5jdGlvbiBzKGUsdCl7dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyBvLlN0YXRpY0dlbkJhaWxvdXRFcnJvcihgUm91dGUgJHtlfSB3aXRoIFxgZHluYW1pYyA9ICJlcnJvciJcYCBjb3VsZG4ndCBiZSByZW5kZXJlZCBzdGF0aWNhbGx5IGJlY2F1c2UgaXQgdXNlZCAke3R9LiBTZWUgbW9yZSBpbmZvIGhlcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL2FwcC9idWlsZGluZy15b3VyLWFwcGxpY2F0aW9uL3JlbmRlcmluZy9zdGF0aWMtYW5kLWR5bmFtaWMjZHluYW1pYy1yZW5kZXJpbmdgKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTU0MyIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KX1mdW5jdGlvbiBjKGUsdCl7bGV0IHI9T2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGBSb3V0ZSAke2Uucm91dGV9IHVzZWQgXGBzZWFyY2hQYXJhbXNcYCBpbnNpZGUgInVzZSBjYWNoZSIuIEFjY2Vzc2luZyBkeW5hbWljIHJlcXVlc3QgZGF0YSBpbnNpZGUgYSBjYWNoZSBzY29wZSBpcyBub3Qgc3VwcG9ydGVkLiBJZiB5b3UgbmVlZCBzb21lIHNlYXJjaCBwYXJhbXMgaW5zaWRlIGEgY2FjaGVkIGZ1bmN0aW9uIGF3YWl0IFxgc2VhcmNoUGFyYW1zXGAgb3V0c2lkZSBvZiB0aGUgY2FjaGVkIGZ1bmN0aW9uIGFuZCBwYXNzIG9ubHkgdGhlIHJlcXVpcmVkIHNlYXJjaCBwYXJhbXMgYXMgYXJndW1lbnRzIHRvIHRoZSBjYWNoZWQgZnVuY3Rpb24uIFNlZSBtb3JlIGluZm8gaGVyZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvbmV4dC1yZXF1ZXN0LWluLXVzZS1jYWNoZWApLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFODQyIixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3Rocm93IEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHIsdCksZS5pbnZhbGlkRHluYW1pY1VzYWdlRXJyb3I/Pz1yLHJ9ZnVuY3Rpb24gdSgpe2xldCBlPWkuYWZ0ZXJUYXNrQXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7cmV0dXJuKG51bGw9PWU/dm9pZCAwOmUucm9vdFRhc2tTcGF3blBoYXNlKT09PSJhY3Rpb24ifX0sNTU1MjUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG4sYT17UmVuZGVyU3RhZ2U6ZnVuY3Rpb24oKXtyZXR1cm4gY30sU3RhZ2VkUmVuZGVyaW5nQ29udHJvbGxlcjpmdW5jdGlvbigpe3JldHVybiB1fX07Zm9yKHZhciBvIGluIGEpT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsbyx7ZW51bWVyYWJsZTohMCxnZXQ6YVtvXX0pO2xldCBpPWUucig0MTA2Mikscz1lLnIoNDA0NjEpO3ZhciBjPSgobj17fSlbbi5CZWZvcmU9MV09IkJlZm9yZSIsbltuLlN0YXRpYz0yXT0iU3RhdGljIixuW24uUnVudGltZT0zXT0iUnVudGltZSIsbltuLkR5bmFtaWM9NF09IkR5bmFtaWMiLG5bbi5BYmFuZG9uZWQ9NV09IkFiYW5kb25lZCIsbik7Y2xhc3MgdXtjb25zdHJ1Y3RvcihlPW51bGwsdCl7dGhpcy5hYm9ydFNpZ25hbD1lLHRoaXMuaGFzUnVudGltZVByZWZldGNoPXQsdGhpcy5jdXJyZW50U3RhZ2U9MSx0aGlzLnN0YXRpY0ludGVycnVwdFJlYXNvbj1udWxsLHRoaXMucnVudGltZUludGVycnVwdFJlYXNvbj1udWxsLHRoaXMuc3RhdGljU3RhZ2VFbmRUaW1lPTEvMCx0aGlzLnJ1bnRpbWVTdGFnZUVuZFRpbWU9MS8wLHRoaXMucnVudGltZVN0YWdlTGlzdGVuZXJzPVtdLHRoaXMuZHluYW1pY1N0YWdlTGlzdGVuZXJzPVtdLHRoaXMucnVudGltZVN0YWdlUHJvbWlzZT0oMCxzLmNyZWF0ZVByb21pc2VXaXRoUmVzb2x2ZXJzKSgpLHRoaXMuZHluYW1pY1N0YWdlUHJvbWlzZT0oMCxzLmNyZWF0ZVByb21pc2VXaXRoUmVzb2x2ZXJzKSgpLHRoaXMubWF5QWJhbmRvbj0hMSxlJiYoZS5hZGRFdmVudExpc3RlbmVyKCJhYm9ydCIsKCk9PntsZXR7cmVhc29uOnR9PWU7dGhpcy5jdXJyZW50U3RhZ2U8MyYmKHRoaXMucnVudGltZVN0YWdlUHJvbWlzZS5wcm9taXNlLmNhdGNoKGwpLHRoaXMucnVudGltZVN0YWdlUHJvbWlzZS5yZWplY3QodCkpLCh0aGlzLmN1cnJlbnRTdGFnZTw0fHw1PT09dGhpcy5jdXJyZW50U3RhZ2UpJiYodGhpcy5keW5hbWljU3RhZ2VQcm9taXNlLnByb21pc2UuY2F0Y2gobCksdGhpcy5keW5hbWljU3RhZ2VQcm9taXNlLnJlamVjdCh0KSl9LHtvbmNlOiEwfSksdGhpcy5tYXlBYmFuZG9uPSEwKX1vblN0YWdlKGUsdCl7aWYodGhpcy5jdXJyZW50U3RhZ2U+PWUpdCgpO2Vsc2UgaWYoMz09PWUpdGhpcy5ydW50aW1lU3RhZ2VMaXN0ZW5lcnMucHVzaCh0KTtlbHNlIGlmKDQ9PT1lKXRoaXMuZHluYW1pY1N0YWdlTGlzdGVuZXJzLnB1c2godCk7ZWxzZSB0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IGkuSW52YXJpYW50RXJyb3IoYEludmFsaWQgcmVuZGVyIHN0YWdlOiAke2V9YCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU4ODEiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9Y2FuU3luY0ludGVycnVwdCgpe2lmKDE9PT10aGlzLmN1cnJlbnRTdGFnZSlyZXR1cm4hMTtsZXQgZT10aGlzLmhhc1J1bnRpbWVQcmVmZXRjaD80OjM7cmV0dXJuIHRoaXMuY3VycmVudFN0YWdlPGV9c3luY0ludGVycnVwdEN1cnJlbnRTdGFnZVdpdGhSZWFzb24oZSl7aWYoMSE9PXRoaXMuY3VycmVudFN0YWdlKXtpZih0aGlzLm1heUFiYW5kb24pcmV0dXJuIHRoaXMuYWJhbmRvblJlbmRlckltcGwoKTtzd2l0Y2godGhpcy5jdXJyZW50U3RhZ2Upe2Nhc2UgMjp0aGlzLnN0YXRpY0ludGVycnVwdFJlYXNvbj1lLHRoaXMuYWR2YW5jZVN0YWdlKDQpO3JldHVybjtjYXNlIDM6dGhpcy5oYXNSdW50aW1lUHJlZmV0Y2gmJih0aGlzLnJ1bnRpbWVJbnRlcnJ1cHRSZWFzb249ZSx0aGlzLmFkdmFuY2VTdGFnZSg0KSk7cmV0dXJufX19Z2V0U3RhdGljSW50ZXJydXB0UmVhc29uKCl7cmV0dXJuIHRoaXMuc3RhdGljSW50ZXJydXB0UmVhc29ufWdldFJ1bnRpbWVJbnRlcnJ1cHRSZWFzb24oKXtyZXR1cm4gdGhpcy5ydW50aW1lSW50ZXJydXB0UmVhc29ufWdldFN0YXRpY1N0YWdlRW5kVGltZSgpe3JldHVybiB0aGlzLnN0YXRpY1N0YWdlRW5kVGltZX1nZXRSdW50aW1lU3RhZ2VFbmRUaW1lKCl7cmV0dXJuIHRoaXMucnVudGltZVN0YWdlRW5kVGltZX1hYmFuZG9uUmVuZGVyKCl7aWYoIXRoaXMubWF5QWJhbmRvbil0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IGkuSW52YXJpYW50RXJyb3IoImBhYmFuZG9uUmVuZGVyYCBjYWxsZWQgb24gYSBzdGFnZSBjb250cm9sbGVyIHRoYXQgY2Fubm90IGJlIGFiYW5kb25lZC4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTkzOCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTt0aGlzLmFiYW5kb25SZW5kZXJJbXBsKCl9YWJhbmRvblJlbmRlckltcGwoKXtsZXR7Y3VycmVudFN0YWdlOmV9PXRoaXM7c3dpdGNoKGUpe2Nhc2UgMjp0aGlzLmN1cnJlbnRTdGFnZT01LHRoaXMucmVzb2x2ZVJ1bnRpbWVTdGFnZSgpO3JldHVybjtjYXNlIDM6dGhpcy5jdXJyZW50U3RhZ2U9NTtyZXR1cm59fWFkdmFuY2VTdGFnZShlKXtpZihlPD10aGlzLmN1cnJlbnRTdGFnZSlyZXR1cm47bGV0IHQ9dGhpcy5jdXJyZW50U3RhZ2U7aWYodGhpcy5jdXJyZW50U3RhZ2U9ZSx0PDMmJmU+PTMmJih0aGlzLnN0YXRpY1N0YWdlRW5kVGltZT1wZXJmb3JtYW5jZS5ub3coKStwZXJmb3JtYW5jZS50aW1lT3JpZ2luLHRoaXMucmVzb2x2ZVJ1bnRpbWVTdGFnZSgpKSx0PDQmJmU+PTQpe3RoaXMucnVudGltZVN0YWdlRW5kVGltZT1wZXJmb3JtYW5jZS5ub3coKStwZXJmb3JtYW5jZS50aW1lT3JpZ2luLHRoaXMucmVzb2x2ZUR5bmFtaWNTdGFnZSgpO3JldHVybn19cmVzb2x2ZVJ1bnRpbWVTdGFnZSgpe2xldCBlPXRoaXMucnVudGltZVN0YWdlTGlzdGVuZXJzO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0oKTtlLmxlbmd0aD0wLHRoaXMucnVudGltZVN0YWdlUHJvbWlzZS5yZXNvbHZlKCl9cmVzb2x2ZUR5bmFtaWNTdGFnZSgpe2xldCBlPXRoaXMuZHluYW1pY1N0YWdlTGlzdGVuZXJzO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0oKTtlLmxlbmd0aD0wLHRoaXMuZHluYW1pY1N0YWdlUHJvbWlzZS5yZXNvbHZlKCl9Z2V0U3RhZ2VQcm9taXNlKGUpe3N3aXRjaChlKXtjYXNlIDM6cmV0dXJuIHRoaXMucnVudGltZVN0YWdlUHJvbWlzZS5wcm9taXNlO2Nhc2UgNDpyZXR1cm4gdGhpcy5keW5hbWljU3RhZ2VQcm9taXNlLnByb21pc2U7ZGVmYXVsdDp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IGkuSW52YXJpYW50RXJyb3IoYEludmFsaWQgcmVuZGVyIHN0YWdlOiAke2V9YCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU4ODEiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9fXdhaXRGb3JTdGFnZShlKXtyZXR1cm4gdGhpcy5nZXRTdGFnZVByb21pc2UoZSl9ZGVsYXlVbnRpbFN0YWdlKGUsdCxyKXt2YXIgbixhLG87bGV0IGkscz0obj10aGlzLmdldFN0YWdlUHJvbWlzZShlKSxhPXQsbz1yLGk9bmV3IFByb21pc2UoKGUsdCk9PntuLnRoZW4oZS5iaW5kKG51bGwsbyksdCl9KSx2b2lkIDAhPT1hJiYoaS5kaXNwbGF5TmFtZT1hKSxpKTtyZXR1cm4gdGhpcy5hYm9ydFNpZ25hbCYmcy5jYXRjaChsKSxzfX1mdW5jdGlvbiBsKCl7fX0sODY3NzAsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2NyZWF0ZVByZXJlbmRlclNlYXJjaFBhcmFtc0ZvckNsaWVudFBhZ2U6ZnVuY3Rpb24oKXtyZXR1cm4gZ30sY3JlYXRlU2VhcmNoUGFyYW1zRnJvbUNsaWVudDpmdW5jdGlvbigpe3JldHVybiBwfSxjcmVhdGVTZXJ2ZXJTZWFyY2hQYXJhbXNGb3JNZXRhZGF0YTpmdW5jdGlvbigpe3JldHVybiBofSxjcmVhdGVTZXJ2ZXJTZWFyY2hQYXJhbXNGb3JTZXJ2ZXJQYWdlOmZ1bmN0aW9uKCl7cmV0dXJuIG19LG1ha2VFcnJvcmluZ1NlYXJjaFBhcmFtc0ZvclVzZUNhY2hlOmZ1bmN0aW9uKCl7cmV0dXJuIFN9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89ZS5yKDE3NTE4KSxpPWUucig2Nzc4MSkscz1lLnIoMTI5NjUpLGM9ZS5yKDQxMDYyKSx1PWUucigxNTUwOCksbD1lLnIoNDUwMTQpLGQ9ZS5yKDc1ODI3KSxmPWUucigzNzE2NSk7ZnVuY3Rpb24gcChlLHQpe2xldCByPXMud29ya1VuaXRBc3luY1N0b3JhZ2UuZ2V0U3RvcmUoKTtpZihyKXN3aXRjaChyLnR5cGUpe2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpyZXR1cm4geSh0LHIpO2Nhc2UicHJlcmVuZGVyLXJ1bnRpbWUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgYy5JbnZhcmlhbnRFcnJvcigiY3JlYXRlU2VhcmNoUGFyYW1zRnJvbUNsaWVudCBzaG91bGQgbm90IGJlIGNhbGxlZCBpbiBhIHJ1bnRpbWUgcHJlcmVuZGVyLiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNzY5IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO2Nhc2UiY2FjaGUiOmNhc2UicHJpdmF0ZS1jYWNoZSI6Y2FzZSJ1bnN0YWJsZS1jYWNoZSI6dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyBjLkludmFyaWFudEVycm9yKCJjcmVhdGVTZWFyY2hQYXJhbXNGcm9tQ2xpZW50IHNob3VsZCBub3QgYmUgY2FsbGVkIGluIGNhY2hlIGNvbnRleHRzLiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNzM5IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO2Nhc2UicmVxdWVzdCI6cmV0dXJuIGIoZSx0LHIpfSgwLHMudGhyb3dJbnZhcmlhbnRGb3JNaXNzaW5nU3RvcmUpKCl9ZS5yKDU1NTI1KTtsZXQgaD1tO2Z1bmN0aW9uIG0oZSx0KXtsZXQgcj1zLndvcmtVbml0QXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7aWYocilzd2l0Y2goci50eXBlKXtjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItY2xpZW50IjpjYXNlInByZXJlbmRlci1wcHIiOmNhc2UicHJlcmVuZGVyLWxlZ2FjeSI6cmV0dXJuIHkodCxyKTtjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgYy5JbnZhcmlhbnRFcnJvcigiY3JlYXRlU2VydmVyU2VhcmNoUGFyYW1zRm9yU2VydmVyUGFnZSBzaG91bGQgbm90IGJlIGNhbGxlZCBpbiBjYWNoZSBjb250ZXh0cy4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTc0NyIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtjYXNlInByZXJlbmRlci1ydW50aW1lIjp2YXIgbixhO3JldHVybiBuPWUsYT1yLCgwLGkuZGVsYXlVbnRpbFJ1bnRpbWVTdGFnZSkoYSx2KG4pKTtjYXNlInJlcXVlc3QiOnJldHVybiBiKGUsdCxyKX0oMCxzLnRocm93SW52YXJpYW50Rm9yTWlzc2luZ1N0b3JlKSgpfWZ1bmN0aW9uIGcoZSl7aWYoZS5mb3JjZVN0YXRpYylyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHt9KTtsZXQgdD1zLndvcmtVbml0QXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7aWYodClzd2l0Y2godC50eXBlKXtjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItY2xpZW50IjpyZXR1cm4oMCx1Lm1ha2VIYW5naW5nUHJvbWlzZSkodC5yZW5kZXJTaWduYWwsZS5yb3V0ZSwiYHNlYXJjaFBhcmFtc2AiKTtjYXNlInByZXJlbmRlci1ydW50aW1lIjp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IGMuSW52YXJpYW50RXJyb3IoImNyZWF0ZVByZXJlbmRlclNlYXJjaFBhcmFtc0ZvckNsaWVudFBhZ2Ugc2hvdWxkIG5vdCBiZSBjYWxsZWQgaW4gYSBydW50aW1lIHByZXJlbmRlci4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTc2OCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgYy5JbnZhcmlhbnRFcnJvcigiY3JlYXRlUHJlcmVuZGVyU2VhcmNoUGFyYW1zRm9yQ2xpZW50UGFnZSBzaG91bGQgbm90IGJlIGNhbGxlZCBpbiBjYWNoZSBjb250ZXh0cy4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTc0NiIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtjYXNlInByZXJlbmRlci1wcHIiOmNhc2UicHJlcmVuZGVyLWxlZ2FjeSI6Y2FzZSJyZXF1ZXN0IjpyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHt9KX0oMCxzLnRocm93SW52YXJpYW50Rm9yTWlzc2luZ1N0b3JlKSgpfWZ1bmN0aW9uIHkoZSx0KXtpZihlLmZvcmNlU3RhdGljKXJldHVybiBQcm9taXNlLnJlc29sdmUoe30pO3N3aXRjaCh0LnR5cGUpe2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOnZhciByPWUsbj10O2xldCBhPVAuZ2V0KG4pO2lmKGEpcmV0dXJuIGE7bGV0IHM9KDAsdS5tYWtlSGFuZ2luZ1Byb21pc2UpKG4ucmVuZGVyU2lnbmFsLHIucm91dGUsImBzZWFyY2hQYXJhbXNgIiksYz1uZXcgUHJveHkocyx7Z2V0KGUsdCxyKXtpZihPYmplY3QuaGFzT3duKHMsdCkpcmV0dXJuIG8uUmVmbGVjdEFkYXB0ZXIuZ2V0KGUsdCxyKTtzd2l0Y2godCl7Y2FzZSJ0aGVuIjpyZXR1cm4oMCxpLmFubm90YXRlRHluYW1pY0FjY2VzcykoImBhd2FpdCBzZWFyY2hQYXJhbXNgLCBgc2VhcmNoUGFyYW1zLnRoZW5gLCBvciBzaW1pbGFyIixuKSxvLlJlZmxlY3RBZGFwdGVyLmdldChlLHQscik7Y2FzZSJzdGF0dXMiOnJldHVybigwLGkuYW5ub3RhdGVEeW5hbWljQWNjZXNzKSgiYHVzZShzZWFyY2hQYXJhbXMpYCwgYHNlYXJjaFBhcmFtcy5zdGF0dXNgLCBvciBzaW1pbGFyIixuKSxvLlJlZmxlY3RBZGFwdGVyLmdldChlLHQscik7ZGVmYXVsdDpyZXR1cm4gby5SZWZsZWN0QWRhcHRlci5nZXQoZSx0LHIpfX19KTtyZXR1cm4gUC5zZXQobixjKSxjO2Nhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5Ijp2YXIgbD1lLGQ9dDtsZXQgcD1QLmdldChsKTtpZihwKXJldHVybiBwO2xldCBoPVByb21pc2UucmVzb2x2ZSh7fSksbT1uZXcgUHJveHkoaCx7Z2V0KGUsdCxyKXtpZihPYmplY3QuaGFzT3duKGgsdCkpcmV0dXJuIG8uUmVmbGVjdEFkYXB0ZXIuZ2V0KGUsdCxyKTtpZigic3RyaW5nIj09dHlwZW9mIHQmJiJ0aGVuIj09PXQpe2xldCBlPSJgYXdhaXQgc2VhcmNoUGFyYW1zYCwgYHNlYXJjaFBhcmFtcy50aGVuYCwgb3Igc2ltaWxhciI7bC5keW5hbWljU2hvdWxkRXJyb3I/KDAsZi50aHJvd1dpdGhTdGF0aWNHZW5lcmF0aW9uQmFpbG91dEVycm9yV2l0aER5bmFtaWNFcnJvcikobC5yb3V0ZSxlKToicHJlcmVuZGVyLXBwciI9PT1kLnR5cGU/KDAsaS5wb3N0cG9uZVdpdGhUcmFja2luZykobC5yb3V0ZSxlLGQuZHluYW1pY1RyYWNraW5nKTooMCxpLnRocm93VG9JbnRlcnJ1cHRTdGF0aWNHZW5lcmF0aW9uKShlLGwsZCl9cmV0dXJuIG8uUmVmbGVjdEFkYXB0ZXIuZ2V0KGUsdCxyKX19KTtyZXR1cm4gUC5zZXQobCxtKSxtO2RlZmF1bHQ6cmV0dXJuIHR9fWZ1bmN0aW9uIGIoZSx0LHIpe3JldHVybiB0LmZvcmNlU3RhdGljP1Byb21pc2UucmVzb2x2ZSh7fSk6dihlKX1sZXQgUD1uZXcgV2Vha01hcCxfPW5ldyBXZWFrTWFwO2Z1bmN0aW9uIFMoZSl7bGV0IHQ9Xy5nZXQoZSk7aWYodClyZXR1cm4gdDtsZXQgcj1Qcm9taXNlLnJlc29sdmUoe30pLG49bmV3IFByb3h5KHIse2dldDpmdW5jdGlvbiB0KG4sYSxpKXtyZXR1cm4gT2JqZWN0Lmhhc093bihyLGEpfHwic3RyaW5nIiE9dHlwZW9mIGF8fCJ0aGVuIiE9PWEmJmQud2VsbEtub3duUHJvcGVydGllcy5oYXMoYSl8fCgwLGYudGhyb3dGb3JTZWFyY2hQYXJhbXNBY2Nlc3NJblVzZUNhY2hlKShlLHQpLG8uUmVmbGVjdEFkYXB0ZXIuZ2V0KG4sYSxpKX19KTtyZXR1cm4gXy5zZXQoZSxuKSxufWZ1bmN0aW9uIHYoZSl7bGV0IHQ9UC5nZXQoZSk7aWYodClyZXR1cm4gdDtsZXQgcj1Qcm9taXNlLnJlc29sdmUoZSk7cmV0dXJuIFAuc2V0KGUscikscn0oMCxsLmNyZWF0ZURlZHVwZWRCeUNhbGxzaXRlU2VydmVyRXJyb3JMb2dnZXJEZXYpKGZ1bmN0aW9uKGUsdCl7bGV0IHI9ZT9gUm91dGUgIiR7ZX0iIGA6IlRoaXMgcm91dGUgIjtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGAke3J9dXNlZCAke3R9LiBcYHNlYXJjaFBhcmFtc1xgIGlzIGEgUHJvbWlzZSBhbmQgbXVzdCBiZSB1bndyYXBwZWQgd2l0aCBcYGF3YWl0XGAgb3IgXGBSZWFjdC51c2UoKVxgIGJlZm9yZSBhY2Nlc3NpbmcgaXRzIHByb3BlcnRpZXMuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL3N5bmMtZHluYW1pYy1hcGlzYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU4NDgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9KX0sNDQ2MzEsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImR5bmFtaWNBY2Nlc3NBc3luY1N0b3JhZ2VJbnN0YW5jZSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7bGV0IG49KDAsZS5yKDQ5MjExKS5jcmVhdGVBc3luY0xvY2FsU3RvcmFnZSkoKX0sNDc1OTUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImR5bmFtaWNBY2Nlc3NBc3luY1N0b3JhZ2UiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBuLmR5bmFtaWNBY2Nlc3NBc3luY1N0b3JhZ2VJbnN0YW5jZX19KTtsZXQgbj1lLnIoNDQ2MzEpfSwzNjA3MCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17Y3JlYXRlUGFyYW1zRnJvbUNsaWVudDpmdW5jdGlvbigpe3JldHVybiBofSxjcmVhdGVQcmVyZW5kZXJQYXJhbXNGb3JDbGllbnRTZWdtZW50OmZ1bmN0aW9uKCl7cmV0dXJuIGJ9LGNyZWF0ZVNlcnZlclBhcmFtc0Zvck1ldGFkYXRhOmZ1bmN0aW9uKCl7cmV0dXJuIG19LGNyZWF0ZVNlcnZlclBhcmFtc0ZvclJvdXRlOmZ1bmN0aW9uKCl7cmV0dXJuIGd9LGNyZWF0ZVNlcnZlclBhcmFtc0ZvclNlcnZlclNlZ21lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4geX19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbz1lLnIoODk3OTEpLGk9ZS5yKDE3NTE4KSxzPWUucig2Nzc4MSksYz1lLnIoMTI5NjUpLHU9ZS5yKDQxMDYyKSxsPWUucig3NTgyNyksZD1lLnIoMTU1MDgpLGY9ZS5yKDQ1MDE0KSxwPWUucig0NzU5NSk7ZnVuY3Rpb24gaChlLHQpe2xldCByPWMud29ya1VuaXRBc3luY1N0b3JhZ2UuZ2V0U3RvcmUoKTtpZihyKXN3aXRjaChyLnR5cGUpe2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpyZXR1cm4gUChlLHQscik7Y2FzZSJjYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpjYXNlInVuc3RhYmxlLWNhY2hlIjp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHUuSW52YXJpYW50RXJyb3IoImNyZWF0ZVBhcmFtc0Zyb21DbGllbnQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgaW4gY2FjaGUgY29udGV4dHMuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3MzYiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyB1LkludmFyaWFudEVycm9yKCJjcmVhdGVQYXJhbXNGcm9tQ2xpZW50IHNob3VsZCBub3QgYmUgY2FsbGVkIGluIGEgcnVudGltZSBwcmVyZW5kZXIuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3NzAiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJyZXF1ZXN0IjpyZXR1cm4gTyhlKX0oMCxjLnRocm93SW52YXJpYW50Rm9yTWlzc2luZ1N0b3JlKSgpfWUucig1NTUyNSk7bGV0IG09eTtmdW5jdGlvbiBnKGUsdCl7bGV0IHI9Yy53b3JrVW5pdEFzeW5jU3RvcmFnZS5nZXRTdG9yZSgpO2lmKHIpc3dpdGNoKHIudHlwZSl7Y2FzZSJwcmVyZW5kZXIiOmNhc2UicHJlcmVuZGVyLWNsaWVudCI6Y2FzZSJwcmVyZW5kZXItcHByIjpjYXNlInByZXJlbmRlci1sZWdhY3kiOnJldHVybiBQKGUsdCxyKTtjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgdS5JbnZhcmlhbnRFcnJvcigiY3JlYXRlU2VydmVyUGFyYW1zRm9yUm91dGUgc2hvdWxkIG5vdCBiZSBjYWxsZWQgaW4gY2FjaGUgY29udGV4dHMuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3MzgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6cmV0dXJuIF8oZSxyKTtjYXNlInJlcXVlc3QiOnJldHVybiBPKGUpfSgwLGMudGhyb3dJbnZhcmlhbnRGb3JNaXNzaW5nU3RvcmUpKCl9ZnVuY3Rpb24geShlLHQpe2xldCByPWMud29ya1VuaXRBc3luY1N0b3JhZ2UuZ2V0U3RvcmUoKTtpZihyKXN3aXRjaChyLnR5cGUpe2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpyZXR1cm4gUChlLHQscik7Y2FzZSJjYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpjYXNlInVuc3RhYmxlLWNhY2hlIjp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHUuSW52YXJpYW50RXJyb3IoImNyZWF0ZVNlcnZlclBhcmFtc0ZvclNlcnZlclNlZ21lbnQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgaW4gY2FjaGUgY29udGV4dHMuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3NDMiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6cmV0dXJuIF8oZSxyKTtjYXNlInJlcXVlc3QiOnJldHVybiBPKGUpfSgwLGMudGhyb3dJbnZhcmlhbnRGb3JNaXNzaW5nU3RvcmUpKCl9ZnVuY3Rpb24gYihlKXtsZXQgdD1vLndvcmtBc3luY1N0b3JhZ2UuZ2V0U3RvcmUoKTtpZighdCl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHUuSW52YXJpYW50RXJyb3IoIk1pc3Npbmcgd29ya1N0b3JlIGluIGNyZWF0ZVByZXJlbmRlclBhcmFtc0ZvckNsaWVudFNlZ21lbnQiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTc3MyIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtsZXQgcj1jLndvcmtVbml0QXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7aWYocilzd2l0Y2goci50eXBlKXtjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItY2xpZW50IjpsZXQgbj1yLmZhbGxiYWNrUm91dGVQYXJhbXM7aWYobil7Zm9yKGxldCBhIGluIGUpaWYobi5oYXMoYSkpcmV0dXJuKDAsZC5tYWtlSGFuZ2luZ1Byb21pc2UpKHIucmVuZGVyU2lnbmFsLHQucm91dGUsImBwYXJhbXNgIil9YnJlYWs7Y2FzZSJjYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpjYXNlInVuc3RhYmxlLWNhY2hlIjp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHUuSW52YXJpYW50RXJyb3IoImNyZWF0ZVByZXJlbmRlclBhcmFtc0ZvckNsaWVudFNlZ21lbnQgc2hvdWxkIG5vdCBiZSBjYWxsZWQgaW4gY2FjaGUgY29udGV4dHMuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3MzQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9cmV0dXJuIFByb21pc2UucmVzb2x2ZShlKX1mdW5jdGlvbiBQKGUsdCxyKXtzd2l0Y2goci50eXBlKXtjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItY2xpZW50Ijp7bGV0IG49ci5mYWxsYmFja1JvdXRlUGFyYW1zO2lmKG4pe2ZvcihsZXQgYSBpbiBlKWlmKG4uaGFzKGEpKXJldHVybiBmdW5jdGlvbihlLHQscil7bGV0IG49Uy5nZXQoZSk7aWYobilyZXR1cm4gbjtsZXQgYT1uZXcgUHJveHkoKDAsZC5tYWtlSGFuZ2luZ1Byb21pc2UpKHIucmVuZGVyU2lnbmFsLHQucm91dGUsImBwYXJhbXNgIiksdik7cmV0dXJuIFMuc2V0KGUsYSksYX0oZSx0LHIpfWJyZWFrfWNhc2UicHJlcmVuZGVyLXBwciI6e2xldCBuPXIuZmFsbGJhY2tSb3V0ZVBhcmFtcztpZihuKXtmb3IobGV0IGEgaW4gZSlpZihuLmhhcyhhKSlyZXR1cm4gZnVuY3Rpb24oZSx0LHIsbil7bGV0IGE9Uy5nZXQoZSk7aWYoYSlyZXR1cm4gYTtsZXQgbz17Li4uZX0saT1Qcm9taXNlLnJlc29sdmUobyk7cmV0dXJuIFMuc2V0KGUsaSksT2JqZWN0LmtleXMoZSkuZm9yRWFjaChlPT57bC53ZWxsS25vd25Qcm9wZXJ0aWVzLmhhcyhlKXx8dC5oYXMoZSkmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLGUse2dldCgpe2xldCB0PSgwLGwuZGVzY3JpYmVTdHJpbmdQcm9wZXJ0eUFjY2VzcykoInBhcmFtcyIsZSk7InByZXJlbmRlci1wcHIiPT09bi50eXBlPygwLHMucG9zdHBvbmVXaXRoVHJhY2tpbmcpKHIucm91dGUsdCxuLmR5bmFtaWNUcmFja2luZyk6KDAscy50aHJvd1RvSW50ZXJydXB0U3RhdGljR2VuZXJhdGlvbikodCxyLG4pfSxlbnVtZXJhYmxlOiEwfSl9KSxpfShlLG4sdCxyKX19fXJldHVybiBPKGUpfWZ1bmN0aW9uIF8oZSx0KXtyZXR1cm4oMCxzLmRlbGF5VW50aWxSdW50aW1lU3RhZ2UpKHQsTyhlKSl9bGV0IFM9bmV3IFdlYWtNYXAsdj17Z2V0OmZ1bmN0aW9uKGUsdCxyKXtpZigidGhlbiI9PT10fHwiY2F0Y2giPT09dHx8ImZpbmFsbHkiPT09dCl7bGV0IG49aS5SZWZsZWN0QWRhcHRlci5nZXQoZSx0LHIpO3JldHVybih7W3RdOiguLi50KT0+e2xldCByPXAuZHluYW1pY0FjY2Vzc0FzeW5jU3RvcmFnZS5nZXRTdG9yZSgpO3JldHVybiByJiZyLmFib3J0Q29udHJvbGxlci5hYm9ydChPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIkFjY2Vzc2VkIGZhbGxiYWNrIGBwYXJhbXNgIGR1cmluZyBwcmVyZW5kZXJpbmcuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU2OTEiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSkpLG5ldyBQcm94eShuLmFwcGx5KGUsdCksdil9fSlbdF19cmV0dXJuIGkuUmVmbGVjdEFkYXB0ZXIuZ2V0KGUsdCxyKX19O2Z1bmN0aW9uIE8oZSl7bGV0IHQ9Uy5nZXQoZSk7aWYodClyZXR1cm4gdDtsZXQgcj1Qcm9taXNlLnJlc29sdmUoZSk7cmV0dXJuIFMuc2V0KGUscikscn0oMCxmLmNyZWF0ZURlZHVwZWRCeUNhbGxzaXRlU2VydmVyRXJyb3JMb2dnZXJEZXYpKGZ1bmN0aW9uKGUsdCl7bGV0IHI9ZT9gUm91dGUgIiR7ZX0iIGA6IlRoaXMgcm91dGUgIjtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGAke3J9dXNlZCAke3R9LiBcYHBhcmFtc1xgIGlzIGEgUHJvbWlzZSBhbmQgbXVzdCBiZSB1bndyYXBwZWQgd2l0aCBcYGF3YWl0XGAgb3IgXGBSZWFjdC51c2UoKVxgIGJlZm9yZSBhY2Nlc3NpbmcgaXRzIHByb3BlcnRpZXMuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL3N5bmMtZHluYW1pYy1hcGlzYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU4MzQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9KX0sMTk5NTksKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIkNsaWVudFBhZ2VSb290Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdX19KTtsZXQgbj1lLnIoOTgxMzQpLGE9ZS5yKDQxMDYyKSxvPWUucigxNjg3MiksaT1lLnIoNzUyMDEpLHM9ZS5yKDg4MDYyKSxjPWUucigzMTg5OSk7ZnVuY3Rpb24gdSh7Q29tcG9uZW50OnQsc2VydmVyUHJvdmlkZWRQYXJhbXM6cn0pe2xldCB1LGw7aWYobnVsbCE9PXIpdT1yLnNlYXJjaFBhcmFtcyxsPXIucGFyYW1zO2Vsc2V7bGV0IGU9KDAsaS51c2UpKG8uTGF5b3V0Um91dGVyQ29udGV4dCk7bD1udWxsIT09ZT9lLnBhcmVudFBhcmFtczp7fSx1PSgwLHMudXJsU2VhcmNoUGFyYW1zVG9QYXJzZWRVcmxRdWVyeSkoKDAsaS51c2UpKGMuU2VhcmNoUGFyYW1zQ29udGV4dCkpfWlmKCJ1Ijx0eXBlb2Ygd2luZG93KXtsZXQgcixvLHt3b3JrQXN5bmNTdG9yYWdlOml9PWUucig4OTc5MSkscz1pLmdldFN0b3JlKCk7aWYoIXMpdGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyBhLkludmFyaWFudEVycm9yKCJFeHBlY3RlZCB3b3JrU3RvcmUgdG8gZXhpc3Qgd2hlbiBoYW5kbGluZyBzZWFyY2hQYXJhbXMgaW4gYSBjbGllbnQgUGFnZS4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTU2NCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtsZXR7Y3JlYXRlU2VhcmNoUGFyYW1zRnJvbUNsaWVudDpjfT1lLnIoODY3NzApO3I9Yyh1LHMpO2xldHtjcmVhdGVQYXJhbXNGcm9tQ2xpZW50OmR9PWUucigzNjA3MCk7cmV0dXJuIG89ZChsLHMpLCgwLG4uanN4KSh0LHtwYXJhbXM6byxzZWFyY2hQYXJhbXM6cn0pfXtsZXR7Y3JlYXRlUmVuZGVyU2VhcmNoUGFyYW1zRnJvbUNsaWVudDpyfT1lLnIoNjg2MTQpLGE9cih1KSx7Y3JlYXRlUmVuZGVyUGFyYW1zRnJvbUNsaWVudDpvfT1lLnIoODcxODkpLGk9byhsKTtyZXR1cm4oMCxuLmpzeCkodCx7cGFyYW1zOmksc2VhcmNoUGFyYW1zOmF9KX19KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMzM3ODAsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIkNsaWVudFNlZ21lbnRSb290Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gc319KTtsZXQgbj1lLnIoOTgxMzQpLGE9ZS5yKDQxMDYyKSxvPWUucigxNjg3MiksaT1lLnIoNzUyMDEpO2Z1bmN0aW9uIHMoe0NvbXBvbmVudDp0LHNsb3RzOnIsc2VydmVyUHJvdmlkZWRQYXJhbXM6c30pe2xldCBjO2lmKG51bGwhPT1zKWM9cy5wYXJhbXM7ZWxzZXtsZXQgZT0oMCxpLnVzZSkoby5MYXlvdXRSb3V0ZXJDb250ZXh0KTtjPW51bGwhPT1lP2UucGFyZW50UGFyYW1zOnt9fWlmKCJ1Ijx0eXBlb2Ygd2luZG93KXtsZXQgbyx7d29ya0FzeW5jU3RvcmFnZTppfT1lLnIoODk3OTEpLHM9aS5nZXRTdG9yZSgpO2lmKCFzKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgYS5JbnZhcmlhbnRFcnJvcigiRXhwZWN0ZWQgd29ya1N0b3JlIHRvIGV4aXN0IHdoZW4gaGFuZGxpbmcgcGFyYW1zIGluIGEgY2xpZW50IHNlZ21lbnQgc3VjaCBhcyBhIExheW91dCBvciBUZW1wbGF0ZS4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTYwMCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtsZXR7Y3JlYXRlUGFyYW1zRnJvbUNsaWVudDp1fT1lLnIoMzYwNzApO3JldHVybiBvPXUoYyxzKSwoMCxuLmpzeCkodCx7Li4ucixwYXJhbXM6b30pfXtsZXR7Y3JlYXRlUmVuZGVyUGFyYW1zRnJvbUNsaWVudDphfT1lLnIoODcxODkpLG89YShjKTtyZXR1cm4oMCxuLmpzeCkodCx7Li4ucixwYXJhbXM6b30pfX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwyMDQxNCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiSWNvbk1hcmsiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPWUucig5ODEzNCksYT0oKT0+InUiPnR5cGVvZiB3aW5kb3c/bnVsbDooMCxuLmpzeCkoIm1ldGEiLHtuYW1lOiLCq254dC1pY29uwrsifSl9XSk7"}},"time_used":7,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/flaticon/flaticon.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.085Z","timestamp":1785143908085,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/flaticon/flaticon.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:38 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"762-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 541\r\nKeep-Alive: timeout=5, max=100\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":1890,"size_decoded":901,"mime_type":"text/css","magic":"ASCII text","md5":"1fbdbece43d87069500e7ae2af027ad7","sha1":"34fedc660a44f7ce9b1820ac01daed2d150a7ce6","sha256":"912828124a1331989bff6cd93fe1efa4b61c9d3e4126d7a475b432dd6ea50c87","sha512":"36e900e4c20f2f9d62e719841d9f376fe35817a10ea6d65f17072840328835d1bee99d8eb1f359d16404c5a10e3a531f735831ec731b2f2e7697d5fbd0c79f36","ssdeep":"","tlshash":"7e4193b6943e14404311ae84279f2351eb84b02d9de8ac68e1166d9cfff6e39c3857ec","first_seen":"2025-10-06T17:20:26.928036Z","last_seen":"2026-07-27T09:20:18.382485Z","times_seen":8,"resource_available":false,"data":"CS8qCiAgCUZsYXRpY29uIGljb24gZm9udDogRmxhdGljb24KICAJQ3JlYXRpb24gZGF0ZTogMDEvMDUvMjAxOCAxNTozMgogIAkqLwoKQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICJGbGF0aWNvbiI7CiAgc3JjOiB1cmwoIkZsYXRpY29uLmh0bWwiKTsKICBzcmM6IHVybCgiRmxhdGljb25kNDFkZDQxZGQ0MWQuaHRtbD8jaWVmaXgiKSBmb3JtYXQoImVtYmVkZGVkLW9wZW50eXBlIiksCiAgICAgICB1cmwoIkZsYXRpY29uLndvZmYiKSBmb3JtYXQoIndvZmYiKSwKICAgICAgIHVybCgiRmxhdGljb24udHRmIikgZm9ybWF0KCJ0cnVldHlwZSIpLAogICAgICAgdXJsKCJGbGF0aWNvbi0yLmh0bWwjRmxhdGljb24iKSBmb3JtYXQoInN2ZyIpOwogIGZvbnQtd2VpZ2h0OiBub3JtYWw7CiAgZm9udC1zdHlsZTogbm9ybWFsOwp9CgpAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOjApIHsKICBAZm9udC1mYWNlIHsKICAgIGZvbnQtZmFtaWx5OiAiRmxhdGljb24iOwogICAgc3JjOiB1cmwoIkZsYXRpY29uLTIuaHRtbCNGbGF0aWNvbiIpIGZvcm1hdCgic3ZnIik7CiAgfQp9CgpbY2xhc3NePSJmbGF0aWNvbi0iXTpiZWZvcmUsIFtjbGFzcyo9IiBmbGF0aWNvbi0iXTpiZWZvcmUsCltjbGFzc149ImZsYXRpY29uLSJdOmFmdGVyLCBbY2xhc3MqPSIgZmxhdGljb24tIl06YWZ0ZXIgeyAgIAogIGZvbnQtZmFtaWx5OiBGbGF0aWNvbjsKICAgICAgICBmb250LXNpemU6IDIwcHg7CmZvbnQtc3R5bGU6IG5vcm1hbDsKbWFyZ2luLWxlZnQ6IDIwcHg7Cn0KCi5mbGF0aWNvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogIlxmMTAwIjsgfQouZmxhdGljb24tcHJvZmlsZTpiZWZvcmUgeyBjb250ZW50OiAiXGYxMDEiOyB9Ci5mbGF0aWNvbi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogIlxmMTAyIjsgfQouZmxhdGljb24tc2hpZWxkOmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEwMyI7IH0KLmZsYXRpY29uLWNvbm5lY3Rpb246YmVmb3JlIHsgY29udGVudDogIlxmMTA0IjsgfQouZmxhdGljb24tdGVjaG5vbG9neS0zOmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEwNSI7IH0KLmZsYXRpY29uLXRlY2hub2xvZ3ktMjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMDYiOyB9Ci5mbGF0aWNvbi1zaWduczpiZWZvcmUgeyBjb250ZW50OiAiXGYxMDciOyB9Ci5mbGF0aWNvbi1idXNpbmVzcy0xOmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEwOCI7IH0KLmZsYXRpY29uLWJ1c2luZXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEwOSI7IH0KLmZsYXRpY29uLW1vbmV5OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEwYSI7IH0KLmZsYXRpY29uLW1vbmV5LTg6YmVmb3JlIHsgY29udGVudDogIlxmMTBiIjsgfQouZmxhdGljb24tbXVsdGltZWRpYTpiZWZvcmUgeyBjb250ZW50OiAiXGYxMGMiOyB9Ci5mbGF0aWNvbi10ZWNobm9sb2d5LTE6YmVmb3JlIHsgY29udGVudDogIlxmMTBkIjsgfQouZmxhdGljb24tYXJyb3dzOmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEwZSI7IH0KLmZsYXRpY29uLXRlY2hub2xvZ3k6YmVmb3JlIHsgY29udGVudDogIlxmMTBmIjsgfQouZmxhdGljb24tbW9uZXktNzpiZWZvcmUgeyBjb250ZW50OiAiXGYxMTAiOyB9Ci5mbGF0aWNvbi1tb25leS02OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjExMSI7IH0KLmZsYXRpY29uLW1vbmV5LTU6YmVmb3JlIHsgY29udGVudDogIlxmMTEyIjsgfQouZmxhdGljb24tbW9uZXktNDpiZWZvcmUgeyBjb250ZW50OiAiXGYxMTMiOyB9Ci5mbGF0aWNvbi1tb25leS0zOmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjExNCI7IH0KLmZsYXRpY29uLW1vbmV5LTI6YmVmb3JlIHsgY29udGVudDogIlxmMTE1IjsgfQouZmxhdGljb24tbW9uZXktMTpiZWZvcmUgeyBjb250ZW50OiAiXGYxMTYiOyB9"}},"time_used":10164,"timings":{"blocked":-1,"dns":0,"connect":2129,"send":0,"wait":1219,"receive":0,"ssl":6815},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/fonts/fontawesome-webfont329532953295.woff2?v=4.5.0","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.375Z","timestamp":1785143926375,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /fonts/fontawesome-webfont329532953295.woff2?v=4.5.0 HTTP/1.1\r\nHost: scromegatrade.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\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/css/font-awesome.min.css\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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":"HTTP/1.1 200 OK\r\nDate: Mon, 27 Jul 2026 09:18:46 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"118d8-63ccd443bdcc0\"\r\nAccept-Ranges: bytes\r\nContent-Length: 71896\r\nVary: User-Agent\r\nKeep-Alive: timeout=5, max=95\r\nConnection: Keep-Alive\r\nContent-Type: font/woff2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":71896,"size_decoded":72216,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 71896, version 4.393","md5":"e6cf7c6ec7c2d6f670ae9d762604cb0b","sha1":"97e438cc545714309882fbceadbf344fcaddcec5","sha256":"7dacf83f51179de8d7980a513e67ab3a08f2c6272bb5946df8fd77c0d1763b73","sha512":"dd945face918edf20b7283b7416ae7b3735269945e3f3e379e770425024c1de1fcdc7cfb952381d295d0d1f58c8ab191fd29030f2051d10501557bd7bfbe3658","ssdeep":"1536:tA4xrPyfyECsyz2wCjYfhO/ORzc7erabg5Z06GEQMo:t3jayEC/2/OI/gcq+bg5C6G7","tlshash":"756302f87e71b01d5a306f74e56730e2491c9283e79593f8a8297cb681b2f493742c7a","first_seen":"2023-04-05T09:22:06Z","last_seen":"2026-08-11T07:58:36.877324Z","times_seen":42171,"resource_available":false,"data":"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"}},"time_used":399,"timings":{"blocked":41,"dns":0,"connect":0,"send":0,"wait":156,"receive":202,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/33074d3ff5d0cd2d.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.698Z","timestamp":1785143926698,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/33074d3ff5d0cd2d.js HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\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: same-origin\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\npriority: u=3,i=?0\r\naccess-control-allow-origin: *\r\nage: 5029115\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"33074d3ff5d0cd2d.js\"\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com https://vitals.vercel-insights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nlast-modified: Fri, 29 May 2026 10:19:15 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/33074d3ff5d0cd2d.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::4kx7s-1780114811396-bbddbacd8b5d\r\nx-xss-protection: 1; mode=block\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=R1KdlQGukUNksDluS8yj91Ouob7atq0O72rD7jy0W39eKkriUFoX7Wn8Zr3iN8OqDV6mgAlclSjJx7M267yTZEpewTdTknZyqyGB5wqTcEyEWSPHfGy3yk23vdVw\"}]}\r\ncf-cache-status: HIT\r\ncontent-encoding: zstd\r\netag: W/\"992603cebc96287b9bf186c47928c4d2\"\r\ncf-ray: a21a8f05e91c0b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"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"]},{"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":282,"size_decoded":2351,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with no line terminators","md5":"992603cebc96287b9bf186c47928c4d2","sha1":"8a86c102cf1671f6d0cf3b6b5598fff510a4b79d","sha256":"93abe3bbe2a336a05186632225cfa198e5969ab56080e1163da35e41ae9facaf","sha512":"06cc3005d9c8ffe1f27e81eac61fddab10c3e07cdca8c183315799b19b177a9f9dd2043bd1c9c92364578b78d69640c31014db6cca25a74972244784f2de74a2","ssdeep":"","tlshash":"e4d02b702250fcd8408aa4cc8836424bf529247262fe3495d7ae8cb1a174f0c51e1955","first_seen":"2026-02-04T14:24:19.894391Z","last_seen":"2026-08-11T04:47:30.036672Z","times_seen":3051,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDkxOTQ3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJ3YXJuT25jZSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7bGV0IG49ZT0+e319XSk7"}},"time_used":7,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WlhyyTn89ddpQ.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://scromegatrade.com/","date":"2026-07-27T09:18:46.550Z","timestamp":1785143926550,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WlhyyTn89ddpQ.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://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.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: 37756\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Fri, 24 Jul 2026 18:07:05 GMT\r\nexpires: Sat, 24 Jul 2027 18:07:05 GMT\r\ncache-control: public, max-age=31536000\r\nage: 227501\r\nlast-modified: Thu, 04 Sep 2025 17:09:21 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":37756,"size_decoded":38569,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 37756, version 1.0","md5":"8a6a885dd57e60ddd85f3190737fa209","sha1":"dbca56b7fe8ee5e4bfb648d639fc6a3bfc5c6e85","sha256":"b9b102f608e8252e3c1e7287309832b16af7dcc6e788651fa503a3faacd7fb2f","sha512":"2bd785869777dc57dbb5934d4c6915b66f89746dd79897820eb4bbd0d262b2612bafdfb07c1e092658ad819f582a97e6a196531f74187d8a0b0bbd07fcbba56a","ssdeep":"768:sqRKhgpCf9U72WeD4A/5IqtBr0ikGvEaQh38/LBu3Emdc043RpgZKMqjkEfO1m:jKgp+9U7Ve8A/7Ai9Et3EBKEUE3RqMMu","tlshash":"3e030130df5884edcc0ba371fdeea81fc7a332a594c0b3368297af1b80111499d99e49","first_seen":"2025-09-05T00:25:10.258656Z","last_seen":"2026-08-11T07:55:35.761143Z","times_seen":548391,"resource_available":false,"data":"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"}},"time_used":22,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":19,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"cdn.gtranslate.net/flags/32/en-us.png","fqdn":"cdn.gtranslate.net","domain":"gtranslate.net","tld":"net"},"ip":{"addr":"104.26.13.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.681Z","timestamp":1785143926681,"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":"gtranslate.net","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 25 Jun 2026 02:04:42 GMT","end":"Wed, 23 Sep 2026 03:04:28 GMT"},"fingerprint":{"sha1":"7E:41:C7:FB:AD:E5:FE:5D:B3:02:94:54:88:D4:EE:DD:EA:46:BC:9C","sha256":"0F:62:03:25:71:9E:01:C5:E5:A6:FD:62:89:4B:D6:28:CC:04:66:24:A5:08:2F:E1:17:68:AA:E7:51:AA:E9:A3"}}},"request":{"raw":"GET /flags/32/en-us.png HTTP/1.1\r\nHost: cdn.gtranslate.net\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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\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/2 200 \r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\ncontent-type: image/png\r\ncontent-length: 695\r\nserver: cloudflare\r\nlast-modified: Mon, 07 Nov 2022 15:42:08 GMT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=cL02sAO%2F7raLhdtPpOs5sdc9XZOeiHKwPXJZiP6McIqLC8TrFebGg%2Ft6z25aA5BpQYOfTarob73uDdFLA6PXuVsywrhSPHdLzJqM%2FJIbuj7FhT%2FXMbfagdkwxLnV8IJsKkLpsg%3D%3D\"}]}\r\netag: \"63692750-33e\"\r\nexpires: Thu, 01 Jul 2027 05:13:47 GMT\r\ncache-control: max-age=31536000\r\naccept-ranges: bytes\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npriority: u=4;i=?0,cf-chb=(89;u=4;i=?0)\r\ncf-polished: ok, orig_size=830\r\ncf-bgj: imgq:100,h2pri\r\nage: 2261098\r\ncf-cache-status: HIT\r\nvary: accept-encoding\r\ncf-ray: a21a8f05c9fab4f3-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":695,"size_decoded":1513,"mime_type":"image/png","magic":"PNG image data, 32 x 32, 8-bit/color RGBA, non-interlaced","md5":"0c7d024de9ea604d5112aafc2738f21f","sha1":"19eae4ef8a7275c8cd5a6528e9c302c36feb8ac4","sha256":"529bcccc5a1659f26fe9f396a809996d064504598f145bee5abc62b94f7d1ec6","sha512":"1f2d1c7015d2b000f5b271ead4e16c3f36f049a34991d7032ee3b353ad7b1297bedcb4c75af662aa15d4b86a2f8187557d701abbdc7b32133ae1f23b9042af7f","ssdeep":"","tlshash":"670144c70d10215ccc2bcc5251eb044584a36a6a453b41ff0f2e980c56f595f5cd0305","first_seen":"2024-05-01T05:40:26Z","last_seen":"2026-08-11T04:45:48.817655Z","times_seen":1866,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAJSSURBVHja7ZffS1NhHMaDLlr7cWFtOVDCM7TlrFYISk1ExlDBVnSRJmS1q0hHqUQWpcH6xSzEuqurbrqo6276H0pL5iaOsY1tbizXZtJ2NZ7e74HxghuyV+V4sy98eM77nsN5Ppxzbs6B2tSGzUGGmqFTGLXczabO4ZhDX9/8jkg5b+yMy7dA3STQ1Ns7j2TyH7zeb8K5m6FuEjDb7XPweL4iFtvExOQXOSe35gRfl66j48zUM84DmS175eezL98iPTIG6pYFenreIB7fxOjoJ0Sjf4Uyc++JMNkZL9LXbnMBm20W4+OfEQ5vwOX6WHUSuxgu0Nn5CpHIBgYHPyAUygll+rpbmPU7D5G6dJMLtLe/wNDQewSDWQwMvKs6idQVlzDpETeS/cNcwGr1YHU1h+7u11hZyYrk3rwCi+Upurpm4Q/8AT2NgF9O+LdPxnMkzl9E4oKT4Md8XXF/zX4VazYnF2hpmcbycgZm8zR8vnWWM5Rl60r7casd8bPVUbo20dGP+DkHF5CkR5Ckx1ha+o3Gxqlqk9ibV0A3WlxMQ6NxY2FBLCNHW8UxnkHshI0LGI33odXehUo1JkykziyOoQ1RUwcXKBaLUHpYJxcI1Z9ClB6NrlkRqCtkPM0FgvqTiBwxI6yRxNCWrwl+rjLUFTS0coFCoQClJ5/Pc4GA1iR/neHDTYpAXX6diQv41GxTb1FMgLp8GokL5HI5KD2skwv8Uh1H9FibovxknSWB5u+GBvxQGOqkbhKoZzgYwwrjkLvZHGLoGQ0Ko6fu2m/Zvs9/EFQu2SXcrUMAAAAASUVORK5CYII="}},"time_used":7,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/stroke-icon/style.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.086Z","timestamp":1785143908086,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/stroke-icon/style.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:32 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"1c23d-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nKeep-Alive: timeout=5, max=99\r\nConnection: Keep-Alive\r\nTransfer-Encoding: chunked\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":115261,"size_decoded":51509,"mime_type":"text/css","magic":"ASCII text, with very long lines (60876)","md5":"5a9356644ec638b5fb6bcbbe6a23b0c9","sha1":"d62e9c680aba531059707215a705cb1a8c4c9f53","sha256":"5951d0de0a3e5b9c64a020e2cfc9e073fdde3de8b2528d14484140815eea3716","sha512":"7ab32b90d9f8992869ea9a5eebefc07ba01e16658eb036d574c77979272740e85cf42525a5709d927b32e1f938a5dcab5100cbaf1e5ac14483f279feda89bad6","ssdeep":"3072:ahJYlnGlWrkP9VLeRO8f67wwkJaB2i7ScB2gOudyjrAAfAh2DC:7l0WffwB2cSKOudwrArhQC","tlshash":"82b36bb2ce0eece31b45a4d414480ac0cf4c931bcf94a575f20e29ae62f27569b6d7d9","first_seen":"2023-04-15T21:03:42Z","last_seen":"2026-08-10T23:31:42.333837Z","times_seen":337,"resource_available":false,"data":"QGZvbnQtZmFjZSB7Cglmb250LWZhbWlseTogJ1N0cm9rZS1HYXAtSWNvbnMnOwoJc3JjOiB1cmwoJ2ZvbnRzL1N0cm9rZS1HYXAtSWNvbnMuZW90Jyk7Cn0KQGZvbnQtZmFjZSB7Cglmb250LWZhbWlseTogJ1N0cm9rZS1HYXAtSWNvbnMnOwoJc3JjOiB1cmwoZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LEFBRUFBQUFMQUlBQUF3QXdUMU12TWdnaS9YMEFBQUM4QUFBQVlHTnRZWEFhVmMwZUFBQUJIQUFBQUV4bllYTndBQUFBRUFBQUFXZ0FBQUFJWjJ4NVpnVE9JOW9BQUFGd0FBQ3B1R2hsWVdRQVVsaytBQUNyS0FBQUFEWm9hR1ZoQStRQ3FRQUFxMkFBQUFBa2FHMTBlSkVIRkNjQUFLdUVBQUFETUd4dlkyR0FsRlRnQUFDdXRBQUFBWnB0WVhod0FPRUJBQUFBc0ZBQUFBQWdibUZ0Wlp4bWJBb0FBTEJ3QUFBQmluQnZjM1FBQXdBQUFBQ3gvQUFBQUNBQUF3SUFBWkFBQlFBQUFVd0JaZ0FBQUVjQlRBRm1BQUFBOVFBWkFJUUFBQUFBQUFBQUFBQUFBQUFBQUFBQkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBRG14d0hnLytELzRBSGdBQ0FBQUFBQkFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBQ0FBQUFBd0FBQUJRQUF3QUJBQUFBRkFBRUFEZ0FBQUFLQUFnQUFnQUNBQUVBSU9iSC8vMy8vd0FBQUFBQUlPWUEvLzMvL3dBQi8rTWFCQUFEQUFFQUFBQUFBQUFBQUFBQUFBRUFBZi8vQUE4QUFRQUFBQUFBQUFBQUFBSUFBRGM1QVFBQUFBQUJBQUFBQUFBQUFBQUFBZ0FBTnprQkFBQUFBQUVBQUFBQUFBQUFBQUFDQUFBM09RRUFBQUFBQkFBQS8rQUNBQUhnQUJRQUtRQTdBRUVBQUFVaUxnSTFORDRDTXpJZUFoVVVEZ0lqRVNJT0FoVVVIZ0l6TWo0Q05UUXVBaU1UTnljM0p3Y25OeGMzRndjWEJ6OEJGd2NISnpjbk54Y0JBRFZkUmlnb1JsMDFOVjFHS0NoR1hUVXVVajBqSXoxU0xpNVNQU01qUFZJdUdSWm9QaFpVTkJNb1QwbEJXUXc1SVI4ajlDQUxRUU5rSUNoR1hUVTFYVVlvS0VaZE5UVmRSaWdCNENNOVVpNHVVajBqSXoxU0xpNVNQU1ArVjVBMFRRZ1VLQmtlRWhwUkxWQXllUWlEUEFZM0JpQUtBQVlBSVAvZ0FhQUI0QUFiQURBQVJRQktBRndBWWdBQU55SXVBaWMzSGdFeU5qYytBaVluTng0Q0JnY09BeU0zSWk0Q0p6NERNekllQWdjV0RnSWpBeUlPQWhjR0hnSXpNajRDTnk0REl3TXpGeU0zUHdFbk55Y0hKemNYTnhjSEZ3Yy9BUmNIQnljM0p6Y1g0Qmt3THlvVUdCOVVWVlFnSVNBQkloOFZKeVFCSmlVVUtUQXZHZ0VwUlRVZEFRRWROVVVwSjBjekh3RUJIek5ISndFZ095c2FBUUVhS3pzZ0lqa3RHQUVCR0MwNUlrK2ZBYUVCVmhGR0tRYzNKUllXTXpZcU53VVhGUjhXbmg4Rkl3TkhJQWtUSEJNWElTRWhJU0JUVmxNZ0Z5WmVZbDhsRXh3VENVQWVORVlvS0VZMEhoNDBSaWdvUmpRZUFXQVpMRG9oSVRvc0dSa3NPaUVoT2l3Wi9rQWdJSlZ4SmpVRERoNFlFd3dWT2g4c0YxUUhYU2tGSWdRZ0NBQUFBd0FBQUNBQ0FBR2dBQVFBQ1FBdEFBQUJJVFVoRlNVaE5TRVZBU00xTkM0Q0t3RTFNeFV6TWg0Q0ZURXpORDRDT3dFMU14VWpJZzRDSFFFQ0FQNEFBZ0QrSUFIQS9rQUJFR0FYSnpRZVFDQWdKRUF3SENBY01FQWtJQ0JBSGpRbkZ3RkFZR0FnSUNEK3dDQWVOQ2NYVURBY01FQWtKRUF3SERCUUZ5YzBIaUFBQUFBQUF2Ly8vK0FDQVFIZ0FBY0FMQUFBQlNFUk14RWhFVE1GSnpjekZSUWVBak15UGdJOUFUTVhCeWMzSnlNT0F5TWlMZ0luSXdjWEJ3R2cvc0FnQVFBZy9uQVJiR1VIRFJJS0NoRU5DR1ZzRVI4T1ZEMEREaFVhRGc4YUZRNERQRlFQSUNBQlFQN2dBU0F5cWtnUUNoRU5DQWdORVFvUVNLb0VsamdPRnhFS0NoRVhEamlXQkFBQUFBVUFEdi93QWZJQjBBQUVBQWtBRHdBZEFDTUFBQUVoTlNFVkpTRTFJUlVYSnpjWE54Y0JJeWNISXhNWEF6TTNGek1ETndjbk54YzNGd0hRL21BQm9QNkFBV0Qrb0N0RkFTMGRIZ0ZUdmpRMHZpSWdIb0pNVElJZUlFc2tIaDB0QVFGd1lHQWdJQ0RBQVNBQlZRcit0WjJkQVZJRS90TGk0Z0V1QkhKckNsVUJJQUFBQUFZQWZ2L2VBWVFCNEFBRUFBa0FFd0FZQUIwQUlnQUFBU01uTXdjbk16Y2pGeE1uTnhjSEZ6Y25OeGNuRndjbk53Y1hCeWMzTnhjSEp6Y0JYS2tuOXllUmVSZW5GeldETXg4dFhXQWdJU0JUQlY4SFlRRUhZUVZmQVFWZkIyRUJRS0NnSUdCZy9uNUsrd2JsTmpmbEJQdDVJQkFnRUVBZ0VDQVFnQ0FRSUJBQUJBQUEvK0FDQUFIZ0FCUUFLUUEyQUVNQUFBVWlMZ0kxTkQ0Q016SWVBaFVVRGdJakVTSU9BaFVVSGdJek1qNENOVFF1QWlNVEl6UXVBaU0xTWg0Q0ZUY2lMZ0kxTXhRZUFqTVZBUUExWFVZb0tFWmROVFZkUmlnb1JsMDFMbEk5SXlNOVVpNHVVajBqSXoxU0xoQWdIREJBSkN0TU9DR3dLMHc0SVNBY01FQWtJQ2hHWFRVMVhVWW9LRVpkTlRWZFJpZ0I0Q005VWk0dVVqMGpJejFTTGk1U1BTUCtZQ1JBTUJ3Z0lUaE1LN0FoT0V3ckpFQXdIQ0FBQUFBR0FBUC8vUUg4QWJ3QUJBQUpBQTRBRXdBK0FGOEFBRGNYQnljM054Y0hKemNISnlVWEJTY1hKU2NGSlNjK0F6YytBVFFtSnk0REp5SW1CaUlISno0QkhnRVhIZ01YSGdFVUJnY09Bd2NGTGdNbkpqNENOeGNPQXhVaUJod0JNeDRDTWpNWEJpSUdJZ2ZnSUNBZ0lGQXdJREFnMVN3QlhTeitvd01XQVNFVy90OEJmZ3NEQlFVRUFRRUNBUUVCQXdVRkFnTUdCd1lEQ3dZTkRBd0dCZ29JQndJQ0FnTURBd2NKQ3diK1dnY09EQWtEQXdFSERnb0xBZ01DQWdFQkFRRUVCZ1lFQ2dJRUJBUUMwZ1hQQTlFZzd3ZnhCVFozZm5sOFpEeG5QV2drSFFJQ0JRVURBZ2NHQndJRUJBWURBZ01CQWg4QkF3RUNCQUlJQ0F3RkJ3d05Dd2NGQ3djSUFZa0JCQWtMQ0FnVUVBNENIUUVCQXdFREJBTUVCQVFESFFJQkFRQUFCQUFBLytBQ0FBSGdBQlFBS1FBdkFEVUFBQVVpTGdJMU5ENENNekllQWhVVURnSWpFU0lPQWhVVUhnSXpNajRDTlRRdUFpTVRJelV6RlRNMUl6VWpOVE1CQURWZFJpZ29SbDAxTlYxR0tDaEdYVFV1VWowakl6MVNMaTVTUFNNalBWSXVZTUFnb0NDZ3dDQW9SbDAxTlYxR0tDaEdYVFUxWFVZb0FlQWpQVkl1TGxJOUl5TTlVaTR1VWowai9zQ0FZQ0JnSUFBQUFBQUVBQUQvNEFJQUFlQUFDUUFSQUJjQUhBQUFKU2MzSnlNSEp6Y3pCd01uTnhjSEZ6Y1hCVGNYQnpjWE54Y0hKemNCZUJkL0FWcC9Gb2VKQWQzd3BRcDBweXNkL3FSUkhqQnJERTRXVnhoWjBCZCtXMzRXaUlqK3UrODdIaXFvZFF2WHR3MXFMeDNKRmx3WFd3QUZBREQvNEFIUUFkb0FCd0FQQUJjQUhBQWlBQUFGSXhFekVUTVJNeE1qTlRNMUp6Y1hCU00xTnhjSEZUTTNNeFVqTlRjbkJ5YzNGd0ZRb0NCZ0lJQmdRRTBiVXY3QVlGSWJUVUJnSUNCRU5EUVlURXdnQVdEK3dBRkEvdUFnTzMwUWhHUmtoQkI5TzhEZzRHWkFRQlJnWUFBQUFBY0FLUC9nQWRnQjRBQUVBQWtBSGdBekFFZ0FYUUJxQUFBRklSRWhFU1VoRVNFUk55SXVBalUwUGdJek1oNENGUlFPQWlNMUlnNENGUlFlQWpNeVBnSTFOQzRDSXpVaUxnSTFORDRDTXpJZUFoVVVEZ0lqTlNJT0FoVVVIZ0l6TWo0Q05UUXVBaU1ISXpRK0FqTVZJZzRDRlFIWS9sQUJzUDV3QVhEK2tMQWFMeU1VRkNNdkdob3ZJeFFVSXk4YUZDTWFEdzhhSXhRVUl4b1BEeG9qRkFvUkRRZ0lEUkVLQ2hFTkNBZ05FUW9EQmdRREF3UUdBd01HQkFNREJBWURJQ0FLRVJnTkJ3c0pCU0FDQVA0QUlBSEEva0FnRkNNdkdob3ZJeFFVSXk4YUdpOGpGT0FQR2lNVUZDTWFEdzhhSXhRVUl4b1BRQWdORVFvS0VRMElDQTBSQ2dvUkRRaEFBd1FHQXdNR0JBTURCQVlEQXdZRUErQU5HQkVLSUFVSkN3Y0FBQUFKQUFELzRBSUFBZUFBQkFBSkFCNEFNd0JBQUVVQVNnQlBBRlFBQUFVaEVTRVJKU0VSSVJFM0lpNENOVFErQWpNeUhnSVZGQTRDSXhFaURnSVZGQjRDTXpJK0FqVTBMZ0lqQnlNMFBnSXpGU0lPQWhVM014VWpOU0V6RlNNMUFUTVZJelVoTXhVak5RSUEvZ0FDQVA0Z0FjRCtRT0FrUURBY0hEQkFKQ1JBTUJ3Y01FQWtIalFuRnhjbk5CNGVOQ2NYRnljMEhqQWdEUlVkRVFvUkRRalFJQ0Qrb0NBZ0FXQWdJUDZnSUNBZ0FnRCtBQ0FCd1A1QU1Cd3dRQ1FrUURBY0hEQkFKQ1JBTUJ3QlFCY25OQjRlTkNjWEZ5YzBIaDQwSnhlUUVSMFZEU0FJRFJFS3dDQWdJQ0Qrb0NBZ0lDQUFBQUFBQ1FBQS8rQUNBQUhnQUFVQUN3QVJBQmNBSFFBakFDa0FQZ0JUQUFBbEl5YzNGd2NuTXpjbkJ4YzNKemNYTnhjWEp6Y1hCeGNISno4QkZ3Y2xKemNuTnhjWEx3SWZBUmNpTGdJblBnTXpNaDRDQnhZT0FpTURJZzRDRndZZUFqTXlQZ0kzTGdNakFUTm5IMUpVSVU0M0VpNHNFQjFLRXpZNEVYRlFEaDRJT244Zkhsa0JSUDdrRUR3S0lBd2pGMElCV3h3eE5seEhKd0VCSjBkY05qUmVSU2tCQVNsRlhqUUJMVk04SkFFQkpEeFRMUzlSUGlJQkFTSStVUytRWkQ0L1l5QTNJeUk0blRRYUp5WWFwU2xaQkVNZjNBdFVBU0FCZ1J3ZlF3Ulo2VDhCSUFGVVJpaEdYVFUxWFVZb0tFWmROVFZkUmlnQjRDTTlVaTR1VWowakl6MVNMaTVTUFNNQUJBQUFBRUFDQUFHQUFBMEFFZ0FYQUJ3QUFDVWhOVGNYQnhVaE5TTUhKemN6QlJjSEp6YzNGd2NuTndjaEZTRTFBZ0QrQUdnT1ZnSEFsQTBlRTh6K2lVQVdRQlpRUUJaQUZ0a0NBUDRBZ0VvMkhDNFd3Q1VLTzBkQUZrQVdFRUFXUUJicElDQUFBQUFJQURELzRBSFFBZGtBRkFBcEFENEFVd0JZQUYwQWNnQ0hBQUFYSWk0Q05UUStBak15SGdJVkZBNENJelVpRGdJVkZCNENNekkrQWpVMExnSWpGeUl1QWpVMFBnSXpNaDRDRlJRT0FpTTFJZzRDRlJRZUFqTXlQZ0kxTkM0Q0l3TVhCeWMzSHdFSEp6Y0RJaTRDTlRRK0FqTXlIZ0lWRkE0Q0l6VWlEZ0lWRkI0Q016SStBalUwTGdJamtCUWpHZzhQR2lNVUZDTWFEdzhhSXhRTkdCRUtDaEVZRFEwWUVRb0tFUmdONEJRakdnOFBHaU1VRkNNYUR3OGFJeFFOR0JFS0NoRVlEUTBZRVFvS0VSZ040M0FhY0JybEhHNGNibklLRVEwSUNBMFJDZ29SRFFnSURSRUtBd1lFQXdNRUJnTURCZ1FEQXdRR0F5QVBHaU1VRkNNYUR3OGFJeFFVSXhvUG9Bb1JHQTBOR0JFS0NoRVlEUTBZRVFxZ0R4b2pGQlFqR2c4UEdpTVVGQ01hRDZBS0VSZ05EUmdSQ2dvUkdBME5HQkVLQVZtd0VhOFNBUkN3RWEvK3lBZ05FUW9LRVEwSUNBMFJDZ29SRFFoQUF3UUdBd01HQkFNREJBWURBd1lFQXdBQUJQLzkvOTBCNUFIZ0FBVUFEd0JKQUhrQUFDVW5OeWMzRndjbk54Y0hKd2NYTnhjM0tnSW1JemNXUGdJM1BnTTNMZ01uTGdFaUJnY09BaFFWQnlZK0FqYytBek15SGdJWEhnSUdCdzRESXdjaUxnSW5MZ0UrQVRjK0FUSVdGeDREQnljMkxnSW5MZ0VpQmdjT0FSNEJGeDRETnhjaUJpb0JJd0dKRnpsRkdGcmkrdVJaRlVXMHlqb1dXd01DQlFJREJnWVFEUTRFQmdZR0FRRUJBUVlHQmdnWkZ4a0lCd1lHSHdNRUJnd0hDQThTRVFzSkV4QVJCZzhOQVE4TkNBOFNFZ3FTQ2hJU0R3Z05Ed0VORHcwa0pDVU5DUW9JQWdFaEFnSUVDUVFLRnhrWENna0tBUWdMQkE0TkVBWUZBZ01FQWdOd0Z6bEVGbHJqK2VOYkYwUzF5emdXOHdFZ0FRRUZCd1lFQ3dzTkJnWU5Dd3NFQ1FrSkNRVU5EZzhIQlF3V0ZSTUlCd29IQkFRSENnY09KQ1FrRGdjS0J3VFhCQWNLQnc0a0pDUU9EZzRPRGdnVEZSWU1CUWNQRGcwRkNna0pDZ2tZR0JnSkJnY0ZBUUVnQVFBQUFBY0FBUC9nQWdBQjRBQUxBQk1BR0FBZEFDVUFLZ0F2QUFBbEl6VXpFU0VSTXhVakVTRURJVFV6RlRNMU15VXpGU00xT3dFVkl6VWxJelVqRlNNMUlRTXpGU00xTlRNVkl6VUNBR0JBL2tCQVlBSUFnUDhBSU1BZy9zQWdJRUFnSUFFQUlNQWdBUURBa0pDUWtFQWdBUUQvQUNBQlFQNWd3S0Nnb0NBZ0lDQmdJQ0JBL21BZ0lFQWdJQUFBQ0FBQS8rQUNBQUhnQUJRQUtRQStBRk1BYUFCOUFKSUFwd0FBQlNJdUFqVTBQZ0l6TWg0Q0ZSUU9BaU1SSWc0Q0ZSUWVBak15UGdJMU5DNENJeEVpTGdJMU5ENENNekllQWhVVURnSWpFU0lPQWhVVUhnSXpNajRDTlRRdUFpTVZJaTRDTlRRK0FqTXlIZ0lWRkE0Q0l6VWlEZ0lWRkI0Q016SStBalUwTGdJakZTSXVBalUwUGdJek1oNENGUlFPQWlNMUlnNENGUlFlQWpNeVBnSTFOQzRDSXdFQU5WMUdLQ2hHWFRVMVhVWW9LRVpkTlM1U1BTTWpQVkl1TGxJOUl5TTlVaTRoT2l3WkdTdzZJU0U2TEJrWkxEb2hHaThqRkJRakx4b2FMeU1VRkNNdkdnd1VEd2tKRHhRTURCUVBDUWtQRkF3RkNRWUVCQVlKQlFVSkJnUUVCZ2tGREJRUENRa1BGQXdNRkE4SkNROFVEQVVKQmdRRUJna0ZCUWtHQkFRR0NRVWdLRVpkTlRWZFJpZ29SbDAxTlYxR0tBSGdJejFTTGk1U1BTTWpQVkl1TGxJOUkvNkFHU3c2SVNFNkxCa1pMRG9oSVRvc0dRRWdGQ012R2hvdkl4UVVJeThhR2k4akZKQUpEeFFNREJRUENRa1BGQXdNRkE4SlVBUUdDUVVGQ1FZRUJBWUpCUVVKQmdTZ0NROFVEQXdVRHdrSkR4UU1EQlFQQ1ZBRUJna0ZCUWtHQkFRR0NRVUZDUVlFQUFBQUFBZ0FBUC93QWdBQjBBQUhBQk1BR0FBZEFDSUFKd0FzQURFQUFDVWpOU01WSXhFekV5RVJNeFVqRlNFMUl6VXpBVE1WSXpVSE14VWpOVHNCRlNNMUJUTVZJelU3QVJVak5Uc0JGU00xQVdBZ2dDREFvUDRBZ0dBQndHQ0EvdkFnSU5BZ0lFQWdJQUVnSUNBd0lDQXdJQ0JnOFBBQkVQNkFBU0FnNEtBZ0FRQkFRR0JBUUVCQVFFQkFRRUJBUUFBQUFBTUFBUC9nQWdBQjRBQVVBQ2tBTVFBQUJTSXVBalUwUGdJek1oNENGUlFPQWlNUklnNENGUlFlQWpNeVBnSTFOQzRDSXdNMU14VTNKemNYQVFBMVhVWW9LRVpkTlRWZFJpZ29SbDAxTGxJOUl5TTlVaTR1VWowakl6MVNMa0FnVVhrUXB5QW9SbDAxTlYxR0tDaEdYVFUxWFVZb0FlQWpQVkl1TGxJOUl5TTlVaTR1VWowai9yT05VekpESEYwQUFBTUFDUC95QWZnQjZRQVVBQ2tBV1FBQUpTSXVBalUwUGdJek1oNENGUlFPQWlNUklnNENGUlFlQWpNeVBnSTFOQzRDSXdNcUFTNEJKeTRCUGdFM0Z3NERGVDRETno0RE55SU9BZ2NuUGdJV0Z4WU9BZ2NPQXlNQkFDUkFNQndjTUVBa0pFQXdIQnd3UUNRZU5DY1hGeWMwSGg0MEp4Y1hKelFlNVFNRkJRUUNCUVVKR3h3WkVCVU1CUW91UWxJdUwwY3lHd0lFRFJjZ0ZSUWtNUjRSQlJJdVRFOFBEa2RWVXhwQkhDOUFKU1JBTUJ3Y01FQWtKVUF2SEFGQUZ5YzBIaDQwSnhjWEp6UWVIalFuRi81eEFnTUNCUkFmTHlRVUZSOFdEUVFDR3pKSEx5NVNRaTRLQmd3VkVSb2JIQW9GQlJKV1gxTVFEa05ITlFBQUFBUUFBUC9nQWdBQjRBQVVBQ2tBTGdBekFBQUZJaTRDTlRRK0FqTXlIZ0lWRkE0Q0l4RWlEZ0lWRkI0Q016SStBalUwTGdJakJ6TVZJelU3QVJVak5RRUFOVjFHS0NoR1hUVTFYVVlvS0VaZE5TNVNQU01qUFZJdUxsSTlJeU05VWk0d0lDQkFJQ0FnS0VaZE5UVmRSaWdvUmwwMU5WMUdLQUhnSXoxU0xpNVNQU01qUFZJdUxsSTlJNUNnb0tDZ0FBUUFBUC9nQWdBQjRBQVVBQ2tBTVFBMkFBQUZJaTRDTlRRK0FqTXlIZ0lWRkE0Q0l4RWlEZ0lWRkI0Q016SStBalUwTGdJakF6VXpGVGNuTnhjbk14VWpOUUVBTlYxR0tDaEdYVFUxWFVZb0tFWmROUzVTUFNNalBWSXVMbEk5SXlNOVVpNGdJRkY1RUtmdklDQWdLRVpkTlRWZFJpZ29SbDAxTlYxR0tBSGdJejFTTGk1U1BTTWpQVkl1TGxJOUkvNnpqVk15UXh4ZFQ4REFBQU1BUVAvd0FjQUIyQUFVQUNrQU13QUFGeUl1QWpVMFBnSXpNaDRDRlJRT0FpTTFJZzRDRlJRZUFqTXlQZ0kxTkM0Q0l4Y2pFVGNWQnljM05RZWdGQ01hRHc4YUl4UVVJeG9QRHhvakZBMFlFUW9LRVJnTkRSZ1JDZ29SR0ExZ0lPQ1NDMzJnRUE4YUl4UVVJeG9QRHhvakZCUWpHZytnQ2hFWURRMFlFUW9LRVJnTkRSZ1JDa0FCSzEzRE5CNHNmVU1BQUFBR0FDRC80QUhnQWQ4QUZBQXBBRDRBVXdCWkFGNEFBQ1VpTGdJMU5ENENNekllQWhVVURnSWpOU0lPQWhVVUhnSXpNajRDTlRRdUFpTUZJaTRDTlRRK0FqTXlIZ0lWRkE0Q0l6VWlEZ0lWRkI0Q016SStBalUwTGdJakZ5TVJKUmNITnpNUkl4RUJnQlFqR2c4UEdpTVVGQ01hRHc4YUl4UU5HQkVLQ2hFWURRMFlFUW9LRVJnTi93QVVJeG9QRHhvakZCUWpHZzhQR2lNVURSZ1JDZ29SR0EwTkdCRUtDaEVZRFdBZ0FRb005dUFnSUFBUEdpTVVGQ01hRHc4YUl4UVVJeG9Qb0FvUkdBME5HQkVLQ2hFWURRMFlFUXJBRHhvakZCUWpHZzhQR2lNVUZDTWFENkFLRVJnTkRSZ1JDZ29SR0EwTkdCRUtRQUVyZEI1ck92N1FBVEFBQUF3QUlQL2dBZUFCNEFBRUFBa0FIZ0F6QURnQVBRQlNBR2NBYkFCeEFJWUFtd0FBRXpNVkl6VVJNeFVqTlRjaUxnSTFORDRDTXpJZUFoVVVEZ0lqTlNJT0FoVVVIZ0l6TWo0Q05UUXVBaU0zTXhFakVSRXpGU00xTnlJdUFqVTBQZ0l6TWg0Q0ZSUU9BaU0xSWc0Q0ZSUWVBak15UGdJMU5DNENJeE16RlNNMUVUTVJJeEUzSWk0Q05UUStBak15SGdJVkZBNENJelVpRGdJVkZCNENNekkrQWpVMExnSWpVQ0FnSUNBUURSZ1JDZ29SR0EwTkdCRUtDaEVZRFFjTENRVUZDUXNIQndzSkJRVUpDd2VRSUNBZ0lCQU5HQkVLQ2hFWURRMFlFUW9LRVJnTkJ3c0pCUVVKQ3djSEN3a0ZCUWtMQjVBZ0lDQWdFQTBZRVFvS0VSZ05EUmdSQ2dvUkdBMEhDd2tGQlFrTEJ3Y0xDUVVGQ1FzSEFlQ0FnUDdBd01BZ0NoRVlEUTBZRVFvS0VSZ05EUmdSQ21BRkNRc0hCd3NKQlFVSkN3Y0hDd2tGd1A4QUFRRCtRRUJBSUFvUkdBME5HQkVLQ2hFWURRMFlFUXBnQlFrTEJ3Y0xDUVVGQ1FzSEJ3c0pCUUZBUUVEL0FQOEFBUUFnQ2hFWURRMFlFUW9LRVJnTkRSZ1JDbUFGQ1FzSEJ3c0pCUVVKQ3djSEN3a0ZBQUFHQUJELzRBSUFBZUFBSmdBN0FGQUFZZ0JxQUhJQUFCY2lMZ0luTGdJMk54Y09BaFlYSGdNekl6SStBamNYRGdNaklqSWlNaU1sSWk0Q0p6NERNekllQWdjV0RnSWpBeUlPQWhjR0hnSXpNajRDTnk0REl4Y3VBU0lHQnljK0F6TXlIZ0lYQndjbk54Y0hGemNYQnljM0Z3Y1hOeGMyQlFzSkNnSUpCd0VKQnhjRUFnRUVBZ01DQlFNRUFRTURCUUlERlFJS0NRc0VBUUVCQVFFQk94OHpLQllCQVJZb014OGROU1lZQVFFWUpqVWRBUllxSFJNQkFSTWRLaFlZS0I4UkFRRVJIeWdZSXdnUkV4RUlGZ1VPRGhBSENRNFFEQWNZZEg0T0hnbGxNUVhaWjRnWWREeVRFeUFDQkFZRUJ4UVZFd2dXQXdnSkNBTUJBd0VCQVFFREFSWUVCZ1FDNEJjbk5CNGVOQ2NYRnljMEhoNDBKeGNCQUJJZUtSY1hLUjRTRWg0cEZ4Y3BIaEpPQndjSEJ4Y0ZDUVlEQXdZSkJSZjJmVUVHTUdVSkg0NWxxQlNTUFhVWkFBQUFBQVlBVHYvZ0FiSUI0QUFVQUNrQU5nQkdBRXNBVUFBQUJTSXVBalUwUGdJek1oNENGUlFPQWlNMUlnNENGUlFlQWpNeVBnSTFOQzRDSXdjak5ENENNeFVpRGdJVk55YzNKelVoRlFjWEJ5YzNOU0VWRnljekZTTTFPd0VWSXpVQkFCb3ZJeFFVSXk4YUdpOGpGQlFqTHhvVUl4b1BEeG9qRkJRakdnOFBHaU1VSUNBS0VSZ05Cd3NKQlRVS2d3Ny9BQTZEQ3AwU0FVQVM4aUFnWUNBZ0lCUWpMeG9hTHlNVUZDTXZHaG92SXhUZ0R4b2pGQlFqR2c4UEdpTVVGQ01hRDJBTkdCRUtJQVVKQ3dlaEhpeEZNRE5DTEI0MFhVNU9YV3RBUUVCQUFBQUFCUUNBLytBQmdBSGdBQlFBS1FBdkFEVUFRUUFBQVNJdUFqVTBQZ0l6TWg0Q0ZSUU9BaU0xSWc0Q0ZSUWVBak15UGdJMU5DNENJd01uUHdFWEJ4Y3ZBVGNmQVFjakp6VXpGUmN6TnpVekZRRUFEUmdSQ2dvUkdBME5HQkVLQ2hFWURRY0xDUVVGQ1FzSEJ3c0pCUVVKQ3dkZ0lBZytGREs0Q0RJVVBnaFNYQklnRGlRT0lBRmdDaEVZRFEwWUVRb0tFUmdORFJnUkNtQUZDUXNIQndzSkJRVUpDd2NIQ3drRi9zOENselFZTEltSkxCZzBsN0d1WW1DUWtsNWdBQUFBQmdCUS8rQUJzQUhnQUJvQU5RQTZBRDhBUkFCSkFBQUZJaTRDUFFFekZSUWVBak15UGdJOUFUTVZGQTRDSXpVaUxnSTlBVE1WRkI0Q016SStBajBCTXhVVURnSWpBeU0xTXhVbk16VWpGUVVqTlRNVkp6TTFJeFVCQUNSQU1Cd2dGeWMwSGg0MEp4Y2dIREJBSkJFZEZRMGdDQTBSQ2dvUkRRZ2dEUlVkRVRDQWdHQkFRQUZBZ0lCZ1FFQWdIREJBSkxDd0hqUW5GeGNuTkI2d3NDUkFNQnhnRFJVZEViQ3dDaEVOQ0FnTkVRcXdzQkFlRlEwQklJQ0FJRUJBSUlDQUlFQkFBQVFBQVAvZ0FnUUI0QUFjQUNvQUx3QTBBQUFUSXpVek56VTBQZ0l6TWg0Q0ZTTTBMZ0lqSWc0Q0hRRUhBUzhCSXpVZkFUTTNKelV6RlJjRkl4RXpFU2N6TlNNVnFDZ1lPQW9SR0EwTkdCRUtJQVVKQ3djSEN3a0ZTQUVWc1c0ZUpHNlNPS3dndFA1Y1lHQkFJQ0FCQUNCR09nMFlFUW9LRVJnTkJ3c0pCUVVKQ3dkR1d2N2dBUjhnQVIvakg1NkRJZndCSVA3Z0lPRGdBQUFBQUFILy9RQkFBZ01Cb0FBc0FBQWxJU2MzRndjWElUY25OVE15UGdJMU5DNENJeUlPQWhVak5ENENNekllQWhVVURnSUhGd2NCN1A0cEdPME0wd29CcGdydEVBY0xDUVVGQ1FzSEJ3c0pCU0FLRVJnTkRSZ1JDZ1lMRHduc0YwQlZhQjVjSXlXU0tRVUpDd2NIQ3drRkJRa0xCdzBZRVFvS0VSZ05DaE1QREFTUlV3QUFBQVVBU1AvZ0Fid0I0QUFVQUNrQVNnQnJBSGNBQUFFaUxnSTFORDRDTXpJZUFoVVVEZ0lqTlNJT0FoVVVIZ0l6TWo0Q05UUXVBaU1ESWk0Q05UUStBak1WSWc0Q0ZSUWVBak15UGdJMU14UU9BaU0xSWk0Q05UUStBak1WSWc0Q0ZSUWVBak15UGdJMU14UU9BaU1YSnpjak53OEJKejhCQnpNQldBMFlFUW9LRVJnTkRSZ1JDZ29SR0EwSEN3a0ZCUWtMQndjTENRVUZDUXNIZ0I0MEp4Y1hKelFlRnlrZUVoSWVLUmNYS1I0U0lCY25OQjRSSFJVTkRSVWRFUW9SRFFnSURSRUtDaEVOQ0NBTkZSMFJ3Q0FjdEVCVFhSRmtqVUNzQVdBS0VSZ05EUmdSQ2dvUkdBME5HQkVLWUFVSkN3Y0hDd2tGQlFrTEJ3Y0xDUVgrSUJjbk5CNGVOQ2NYSUJJZUtSY1hLUjRTRWg0cEZ4NDBKeGRBRFJVZEVSRWRGUTBnQ0EwUkNnb1JEUWdJRFJFS0VSMFZEU01HamFBQ094cEJBcUFBQUFBQUJBQUEvK0FDQUFIZ0FCUUFLUUF4QURnQUFBVWlMZ0kxTkQ0Q016SWVBaFVVRGdJakVTSU9BaFVVSGdJek1qNENOVFF1QWlNRE5UTVZOeWMzRndjMU16Y25OeGNCQURWZFJpZ29SbDAxTlYxR0tDaEdYVFV1VWowakl6MVNMaTVTUFNNalBWSXVnQ0JSZVJDblB3dG1lUkNuSUNoR1hUVTFYVVlvS0VaZE5UVmRSaWdCNENNOVVpNHVVajBqSXoxU0xpNVNQU1ArczQxVE1rTWNYVzR0UDBNY1hRQUhBQzMvNEFIVEFlQUFIZ0E5QUVJQVJ3Qk1BRkVBVmdBQUZ5SXVBaWN1QVQ0Qk56NERNekllQWhjZUFRNEJCdzRESXhNaURnSUhEZ0lXRng0RE16SStBamMrQWlZbkxnTWpId0VISnpjSE14VWpOVGN6RlNNMU56TVZJelUzTXhVak5hTVNJUjRhQ3g0VEVqWXNHam85UGg0U0lSNGFDeDRURWpZc0dqbzlQaDY2R3pjNE5SZ25NUklPR2dnVkdSc09HemM0TlJnbk1SSU9HZ2dWR1JzT0NSYmlGdUxXZ0lBd0lDQXdnSUF3SUNBZ0Jnc1JDeDVXWUdRckd5a2REd1lMRVFzZVZtQmtLeHNwSFE4QjRBNGFKaGduV0ZSS0dRa05DUVVPR2lZWUoxaFVTaGtKRFFrRlpCYmlGdUtjSUNBd2dJQXdJQ0F3Z0lBQUFBQUNBRUQvNEFIQUFlQUFCQUE0QUFBVE14RWpFUk1pTGdJbk54NEJQZ0UzUGdJV0Z6VXVBUTRCQnc0Q0ppYzNIZ0UrQVRjK0FoWWZBUkVuTGdFT0FRY09BeU5BSUNDVENCSVNFd29NRkNNaEhnOE9IaUVrRkJJZ0hoME9FQ01tS2hnTUZDTWhIZzhRSXlZcUdBb1dGQ01oSGc4S0V4UVdDd0hnL2dBQ0FQNmhBZ1FHQkI0SkJnTUlCQVVJQXdJRzNnY0RBZ2dFQlFrREJ3b2VDUVlEQ0FRRkNRTUhDZ1grM2drSkJRSUlCQU1HQkFNQUFBQUdBSUQvNEFHQUFlQUFGQUFwQUM4QU5RQTlBRVVBQUFFaUxnSTFORDRDTXpJZUFoVVVEZ0lqTlNJT0FoVVVIZ0l6TWo0Q05UUXVBaU1ESno4QkZ3Y1hMd0UzSHdFSEl6Y1hCek1uTndNakp6Y1hNemNYQVFBTkdCRUtDaEVZRFEwWUVRb0tFUmdOQndzSkJRVUpDd2NIQ3drRkJRa0xCMkFnQ0Q0VU1yZ0lNaFErQ0J6SUpDQWNlQndnRVY0SElBVWlCU0FCWUFvUkdBME5HQkVLQ2hFWURRMFlFUXBnQlFrTEJ3Y0xDUVVGQ1FzSEJ3c0pCZjdQQXBjMEdDeUppU3dZTkpkQm93WjlmUWIrN1U0RE1UTURBQUFBQUFRQUFQL2dBZ1FCNEFBY0FDc0FNQUExQUFBRklpNENQUUVuSXpVekZ4VVVIZ0l6TWo0Q05UTVVEZ0lqTnlNMVB3RW5Jd2NqTlRNM014TUhCeU1STXhFbk16VWpGUUVRRFJnUkNqZ1lLRWdGQ1FzSEJ3c0pCU0FLRVJnTlFDQU5uemlTY2lBZWNxMUh0UEJnWUVBZ0lDQUtFUmdOT2tZZ1drWUhDd2tGQlFrTEJ3MFlFUXBBblFNZDR5QWdJUDdrSVFNQklQN2dJT0RnQUFBQUFBUUFiZi9nQVpRQjRBQWxBQzhBTkFBNUFBQUZJaTRDSnk0Qk5EWTNGdzRCRkJZWEhnRXlOamMrQVRRbUp6Y2VBUlFHQnc0REl4RW5OeGNIRnpjbk54Y2xNeFVqTlJjekZTTTFBUUFVS0NVakR4NGZIeDRYR2hvYUdobEJSRUVaR2hvYUdoY2VIeDhlRHlNbEtCU1RGUndLYkd3S0hCYisvT0RnUUdCZ0lBZ1BGdzhlVFZCTkhoY1pRVVJCR1JvYUdob1pRVVJCR1JjZVRWQk5IZzhYRHdnQkc0RXJEaFZmWHhVT0syUWdJRUFnSUFBQUFBZ0FBUC9nQWdBQjRBQU5BQnNBS2dBdkFEUUFSUUJXQUcwQUFDVWlMZ0k5QVNFVkZBNENJd01WRkI0Q016SStBajBCSXhjaUxnSTlBVE1WRkI0Q014VUhNeFVqTlFjaEZTRTFBVFV5UGdJOUFTTTFNeFVVRGdJaklTSXVBajBCTXhVakZSUWVBak1WRnlJdUFqVXpGQjRDTXpJK0FqVXpGQTRDSXdFQUhqUW5Gd0VnRnljMEhuQVNIaWtYRnlrZUV1QndFUjBWRFNBSURSRUtFQ0FnZ0FFZy91QUJRQW9SRFFnd1VBMFZIUkgrb0JFZEZRMVFNQWdORVFxd0RSZ1JDaUFGQ1FzSEJ3c0pCU0FLRVJnTnNCY25OQjZnb0I0MEp4Y0JFSUFYS1I0U0VoNHBGNERRRFJVZEVWQlFDaEVOQ0NDSWVIaG9JQ0FCUUNBSURSRUtFQ0F3RVIwVkRRMFZIUkV3SUJBS0VRMElJUEFLRVJnTkJ3c0pCUVVKQ3djTkdCRUtBQUFEQUFBQUVBSUFBYjhBQkFBS0FCWUFBRGNoRlNFMUpTY0hKeHNCRnlFUkZ3Y25GU0UxQnljM0FBSUEvZ0FCZ29LQUc1dWVZdjRBaUJOVkFjQlZFNGd3SUNCNDJkZ1FBUWIrK21rQlAySWFQdUhoUGhwaUFBQUFDQUFBLy9BQ0FBSFFBRUFBUlFCS0FFOEFWQUJaQUdZQWN3QUFKU0l1QWpVekZCNENNekkrQWpVMExnSWpJU0lPQWhVVUhnSXpNajRDTlRNVURnSWpJaTRDTlRRK0FqTWhNaDRDRlJRT0FpTW5NeFVqTlFjekZTTTFPd0VWSXpVN0FSVWpOVHNCRlNNMUpTTTBQZ0l6RlNJT0FoVWhJelErQWpNVklnNENGUUdRRnlrZUVpQU5GUjBSRVIwVkRRMFZIUkgrNEJFZEZRME5GUjBSRVIwVkRTQVNIaWtYRnlrZUVoSWVLUmNCSUJjcEhoSVNIaWtYc0VCQWdDQWdZQ0FnWUNBZ1lDQWcvdUVnQ0EwUkNnTUdCQU1CSUNBSURSRUtBd1lFQS9BU0hpa1hFUjBWRFEwVkhSRVJIUlVORFJVZEVSRWRGUTBORlIwUkZ5a2VFaEllS1JjWEtSNFNFaDRwRnhjcEhoSWdJQ0JBNE9EZzRPRGc0T0NRQ2hFTkNDQURCQVlEQ2hFTkNDQURCQVlEQUFBQUFBUUFBQUJRQWdBQmNBQVdBQjRBSXdBb0FBQWxOVEkrQWpVMExnSWpOVEllQWhVVURnSWpCeUUxSVRVaE5TRUJJeEV6RVNjek5TTVZBY0FIQ3drRkJRa0xCdzBZRVFvS0VSZ05JUDdnQVFEL0FBRWcvc0JnWUVBZ0lLQWdCUWtMQndjTENRVWdDaEVZRFEwWUVRcFFJT0FnL3VBQklQN2dJT0RnQUFBSEFBQUFNQUlBQVpBQUJ3QVRBQmdBT2dCUkFGWUFXd0FBSlNNUklSRWpFU0VSSXljakJ5TTFNemN6RnpNaE14VWpOVGNqSnpnQklqQXhJaTRDTlRRK0FqTTNPQU14TWg0Q0ZSUU9BaU0xQnlJT0FoVVVIZ0l6RnpJK0FqVTBMZ0lqQnpNVkl6VTdBUlVqTlFJQUlQNUFJQUlBYUREUU1HaFlNUEF3V1A2Z3dNQ3dBYkFCREJjUkNnb1JHQTJ2RVIwV0RRMFZIUkd2Qnd3SkJRVUpDd2V4Q1JJTkJ3Z05FUXF3SUNDZ0lDQndBUUQvQUFFZy9xQkFRQ0JBUUNBZ1lCQUtFUmdORFJnUkNoQU5GUjBSRVIwVkRZQVFCUWtMQndjTENRVVFDQTBSQ2dvUkRRZ2dJQ0FnSUFBQUFBWUFZUC9nQWFBQjRBQVVBQ2tBTmdBK0FFTUFVQUFBQlNJdUFqVTBQZ0l6TWg0Q0ZSUU9BaU1SSWc0Q0ZSUWVBak15UGdJMU5DNENJd2NqTkQ0Q014VWlEZ0lWTnlNMUl4VWpOVE1uTXhVak5UTWpORDRDTXhVaURnSVZBUUFoT2l3WkdTdzZJU0U2TEJrWkxEb2hHaThqRkJRakx4b2FMeU1VRkNNdkdrQWdEeG9qRkEwWUVRcHdJQ0FnWUVBZ0lDQWdDQTBSQ2dNR0JBTWdHU3c2SVNFNkxCa1pMRG9oSVRvc0dRRWdGQ012R2hvdkl4UVVJeThhR2k4akZJQVVJeG9QSUFvUkdBM0FJQ0JBTUVCQUNoRU5DQ0FEQkFZREFBUUFRUC9nQWNJQjRBQUVBQWtBSUFBdUFBQVRNeEVqRVRNVkl6VXpNU00wTGdJaklnNENGU00wUGdJek1oNENGUk1oSnpVM0Z3Y1ZGek0zSnpjWGtDQWdnQ0FnSUFVSkN3Y0hDd2tGSUFvUkdBME5HQkVLanY3cVNDVVdHempyRzZRTXZBR2cvdEFCTU5EUUJ3c0pCUVVKQ3djTkdCRUtDaEVZRGY1QVlIY2tGaHhlUzhaREhrMEFBQUFBQndBQUFGQUNBQUZ3QUJZQUhnQWpBQ2dBTFFBeUFEY0FBQ1UxTWo0Q05UUXVBaU0xTWg0Q0ZSUU9BaU1ISVRVaE5TRTFJUWNYQnljM0l4Y0hKemN6Rndjbk53Y2pFVE1SSnpNMUl4VUJ3QWNMQ1FVRkNRc0hEUmdSQ2dvUkdBMGcvdUFCQVA4QUFTQ3dIeDhnSUZBZkh5QWdvQjhmSUNEZ1lHQkFJQ0NnSUFVSkN3Y0hDd2tGSUFvUkdBME5HQkVLVUNEZ0lEMEdvUWFoQnFFR29RYWhCcUhqQVNEKzRDRGc0QUFBQUFZQUFQL2dBZ0FCNEFBVUFDa0FOZ0JEQUVnQVRRQUFCU0l1QWpVMFBnSXpNaDRDRlJRT0FpTVJJZzRDRlJRZUFqTXlQZ0kxTkM0Q0l4TWpOQzRDSXpVeUhnSVZOeUl1QWpVekZCNENNeFVsRndjbk56TVhCeWMzQVFBMVhVWW9LRVpkTlRWZFJpZ29SbDAxTGxJOUl5TTlVaTR1VWowakl6MVNMaEFnSERCQUpDdE1PQ0d3SzB3NElTQWNNRUFrL3RQd0Z2QVcyaGJ3RnZBZ0tFWmROVFZkUmlnb1JsMDFOVjFHS0FIZ0l6MVNMaTVTUFNNalBWSXVMbEk5SS81Z0pFQXdIQ0FoT0V3cnNDRTRUQ3NrUURBY0lKUHdGdkFXRnZBVzhBQUpBQUQvNEFJQUFlQUFCd0FYQUNVQU5RQTZBRDhBVmdCYkFISUFBQUVqSnpjWE16Y1hFeUVuTno0RE16SWVBaDhCQnlVek55NERJeUlPQWdjWE55YzNQZ0V5RmhjSExnSUdCeGNIRnpNVkl6VW5NeFVqTlFFaUxnSW5OeDRETXpJK0FqY1hEZ01qRXpNVkl6VW5MZ01qSWc0Q0J5YytBek15SGdJWEJ3RTlhU1FRSEZjZEVEMysxemNORWlvdk1Sb2FNUzhxRWd3bC91LzNHeEVrS0NzV0Zpb29KQkFvRkJVUkdEVTFOQmdJRXl3dExSVUxIeENnb0xBZ0lBRUFKRU03TUJBY0Rpc3pPeDhmT3pNckRod1FNRHRESk9BZ0lCb09Lek03SHg4N015c09IQkF3TzBNa0pFTTdNQkFjQVdBVUhCQVNIUDd5dVFZSURBa0VCQWtNQ0FhNUlJWUdDZ2NEQXdjSkJvY3JSd1FGQlFZRklBVUZBUU1ESlFwcklDRG9vS0Qrc0JNak15QU9HeXdmRVJFZkxCc09JRE1qRXdGUW9LQVpHeXdmRVJFZkxCc09JRE1qRXhNak15QU9BQUFGQUVELzRBSEFBZUFBRFFBYkFDQUFKUUEwQUFBbElpNENQUUVoRlJRT0FpTURGUlFlQWpNeVBnSTlBU0VUTXhVak5RY2hGU0UxRXlJdUFqMEJNeFVVSGdJekZRRUFLRVkwSGdHQUhqUkdLS0FaTERvaElUb3NHZjdBa0NBZ2dBRWcvdUNRR2k4akZDQVBHaU1Vd0I0MFJpaGdZQ2hHTkI0QkFFQWhPaXdaR1N3NklVRCs0TURBb0NBZ0FRQVVJeThhRUJBVUl4b1BJQUFBQUFBRkFJRC80QUdBQWVBQURBQVJBR2NBZEFDREFBQWxOVEkrQWpVekZBNENJd016RlNNMUV5TWlMZ0k5QVRRK0FqY3VBejBCTkQ0Q093RXlIZ0lkQVNNMU5DNENLd0VpRGdJZEFSUWVBak1WSWc0Q0hRRVVIZ0k3QVRJK0FqMEJOQzRDSXpVeUhnSWRBUlFPQWlNREl6UStBak1WSWc0Q0ZSTWlMZ0k5QVRNVkZCNENNeFVCTUFvUkRRZ2dEUlVkRVdCZ1lHQmdFUjBWRFFVSURBY0hEQWdGRFJVZEVXQVJIUlVOSUFnTkVRcGdDaEVOQ0FnTkVRb0tFUTBJQ0EwUkNtQUtFUTBJQ0EwUkNoRWRGUTBORlIwUlVDQUlEUkVLQXdZRUF4QUtFUTBJSUFNRUJnUGdJQWdORVFvUkhSVU5BUUFnSVA0QURSVWRFWUFLRWhFT0JRVU9FUklLSUJFZEZRME5GUjBSSUNBS0VRMElDQTBSQ2lBS0VRMElJQWdORVFxQUNoRU5DQWdORVFxQUNoRU5DQ0FORlIwUmdCRWRGUTBCVUFvUkRRZ2dBd1FHQS83d0J3NFJDbUJnQXdZRkFpQUFBQUFBQXdBQS8vQUNBQUhRQUFjQUR3QXFBQUFGSVJFekVTRVJNeVUxSVJVaEZTRVZCeU1pTGdJMU5ENENPd0VWSXlJT0FoVVVIZ0k3QVJVQ0FQNEFJQUhBSVA0QUFnRCtJQUhnUUVBTkdCRUtDaEVZRFVCQUJ3c0pCUVVKQ3dkQUVBRkEvdUFCSUNDQUlFQWc4QW9SR0EwTkdCRUtJQVVKQ3djSEN3a0ZJQUFBQUFBR0FDRC80QUhnQWVBQURBQVJBQllBTFFBN0FFY0FBRGNuUGdNWEZRNERCemNYRlFjMUVUY1ZKelVIQmk0Q05UY1VIZ0lYUGdNMUZ4UU9BaWN0QVRVMFBnSTNIZ01kQVMwQkxnTUhKZzRDQjRjZUNSNG5NQmtVSmlBWUIya2dJQ0FnRUFvUkRRZ2dBd1FHQXdNR0JBTWdDQTBSQ2dFQS9rQWpQVkl1TGxJOUkvNWhBWDRESUROREppWkRNeUFENndzWEtSc1FBUjhCQ3hnZUZQWUJId0VoL3E4QmdRRi9yd0VKREJJSkFRUUZCUUlCQVFJRkJRUUJDUklNQ1FIUEFROHZVVDRpQVFFaVBsRXZEeDhCSkVFdkhBRUJIQzlCSkFBSEFBRC80QUlBQWQ0QUJBQUpBQTRBRXdBWUFCMEFJd0FBQlNFUklSRWxJUkVoRVNVaEVTRVJKU0UxSVJVbE14VWpOUlV6RlNNMUF5YzNGemNYQWdEK0FBSUEvaUFCd1A1QUFXRCt3QUZBL3VBQkFQOEFBVUFnSUNBZ29Ja1NkM2NTSUFHQS9vQWdBVUQrd0NBQkFQOEFJTURBUUNBZ1FDQWdBUzFWSEV4TUhBQUFBQUFGQUFBQUlBSUFBYUFBRFFBYkFDb0FSd0JNQUFBM0lpNENQUUVoRlJRT0FpTURGUlFlQWpNeVBnSTlBU0VYSWk0Q1BRRXpGUlFlQWpNVkpTTTFNekkrQWowQk5DNENLd0UxTXpJZUFoMEJGQTRDSXdVaEZTRTEwQ3RNT0NFQm9DRTRUQ3V3SEM5QkpDUkFNQnorb0xBZU5DY1hJQkllS1JjQkFCRVJBd1lGQWdJRkJnTVJFUW9TRFFjSURSRUsvb0FCQVA4QVlDRTZUaTFxYWkxT09pRUJJRW9tUWpJY0hESkNKa3JnRnlrM0h4b2FHU3NnRWlCZ0lBSUVCZ1FnQXdZRUF5QUlEUkVLSVFvUkRRZkFJQ0FBQlFBQUFDQUNBQUdnQUFjQURBQVJBQllBR3dBQUpTRTFJUkVoTlNFaE14RWpFUVV6RlNNMUJ5RVJJUkVsSVRVaEZRSUEva0FCb1A1Z0FjRCtBQ0FnQWFBZ0lDRCt3QUZBL3VBQkFQOEFJQ0FCUUNEK2dBR0FzQ0Fna0FFQS93QWd3TUFBQUFRQWdQL2dBWUFCNEFBWUFEQUFQd0JFQUFBWE1TSXVBajBCTkQ0Q016SWVBaDBCRkE0Q0t3RVRJZzRDSFFFVUhnSTdBVEkrQWowQk5DNENJd01qTlRRK0FqTVZJZzRDSFFFRE14VWpOZEFSSFJVTkZDTXZHaG92SXhRTkZSMFJZREFVSXhvUENBMFJDbUFLRVEwSUR4b2pGQ0FnQ2hFWURRY0xDUVVRWUdBZ0RSVWRFZkFhTHlNVUZDTXZHdkFSSFJVTkFhQVBHaU1VOEFvUkRRZ0lEUkVLOEJRakdnLytzUEFOR0JFS0lBVUpDd2Z3QWJBZ0lBQUhBRzMvNEFHVEFkZ0FCQUFKQUE0QUd3QXlBRDhBUkFBQUJTTURJUU1uTXpjakZ6Y1hCeWMzTnlNMExnSW5OeDRERlNFak5ENENNekllQWhjSExnTWpJZzRDRlRNak5ENENNeFVpRGdJVk54Y0hKemNCWGJzMUFTWTJvSVVyMmlvaUZoOFhJTEVnQVFNREFoMERCQU1DL3dBZ0ZpYzFIZ2NPRGcwSERBVUxDd3NGRnlrZkVVQWdEQllkRVFvU0RRZWpHMkViWVNBQk1QN1FJUER3d3BBRWtBUnVCZ3NMQ2dZTUJ3ME9Ed2NlTkNjWEFRTUVBeDREQXdJQkVoNHBGeEVkRlEwZ0NBMFJDcWdRb0JDZ0FBQUFCd0JBLytBQndBSGdBQVFBQ1FBT0FCTUFHQUFkQUNrQUFDVWhFU0VSSnpNMUl4VTFNeFVqTlJVekZTTTFOek1WSXpVVk14VWpOUk1oRVNFUkl4RWhFVE0zRndHQS93QUJBT0RBd0VCQVFFQ0FRRUJBUURmKzZRR0FJUDdBNlR3V29BRUEvd0Fnd01DZ0lDQlFJQ0JRSUNCUUlDRCswQUlBL25BQmNQNUFPeFlBQUFBQUJRQUYvK0FCK3dGNEFCUUFLUUEyQUVNQVVBQUFCU0l1QWpVMFBnSXpNaDRDRlJRT0FpTTFJZzRDRlJRZUFqTXlQZ0kxTkM0Q0l5OEJQZ0V5RmhjSExnRWlCZ2NsTGdFaUJnY25QZ0V5RmhjSE55NEJJZ1lISno0Qk1oWVhCd0VBRFJnUkNnb1JHQTBOR0JFS0NoRVlEUWNMQ1FVRkNRc0hCd3NKQlFVSkN3ZHRGaGxCUTBBWkZoVTBOelVWQVJJaVZscFdJaFltWW1aaUpoWkFNSGQ4ZHpBV05JT0lnelFXSUFvUkdBME5HQkVLQ2hFWURRMFlFUXBnQlFrTEJ3Y0xDUVVGQ1FzSEJ3c0pCVllYR1JvYUdSY1ZGUlVWWnlJaUlpSVhKeVltSnhka01DOHZNQmMwTkRRMEZ3QUZBSEQvNEFHUkFlQUFCZ0FOQUJJQUdnQWZBQUFGSXdNM014Y0RKek1USnlNSEV6Y1hCeWMzTnlNMUl4VWpOVE1ITXhVak5RRnIxaVU2ckRzbXVad2lMWVlzSVNFVklCVWdneUJzSUt5bW9LQWdBVE50YmY3TklBRU1WRlArOCtlMkE3WUR1U0FnUU1BZ0lBQUpBQUQvNEFJQUFkOEFCQUFKQUI0QU13QkFBRVVBU2dCUEFGUUFBQVVoRVNFUkpTRVJJUkUzSWk0Q05UUStBak15SGdJVkZBNENJelVpRGdJVkZCNENNekkrQWpVMExnSWpCeU0wUGdJekZTSU9BaFUzTXhVak5SVXpGU00xRlRNVkl6VVRGd2NuTndJQS9nQUNBUDRnQWNEK1FKQVhLUjRTRWg0cEZ4Y3BIaElTSGlrWEVSMFZEUTBWSFJFUkhSVU5EUlVkRVJBZ0NBMFJDZ01HQkFPZ2dJQ0FnSUNBT2d6UUROQWdBWUQrZ0NBQlFQN0FNQkllS1JjWEtSNFNFaDRwRnhjcEhoTEFEUlVkRVJFZEZRME5GUjBSRVIwVkRWQUtFUTBJSUFNRUJnTlFJQ0JBSUNCQUlDQUJieDVRSFZFQUFBQUFDQUFBLytBQi9nSGVBQVVBRWdBbkFEd0FVUUJtQUhzQWtBQUFKU2NUQlNjbEF5SXVBamN6SGdNekJ5Y2lMZ0luUGdNek1oNENCeFlPQWlNbklnNENGd1llQWpNeVBnSTNMZ01qRnlJdUFpYytBek15SGdJSEZnNENJeWNpRGdJWEJoNENNekkrQWpjdUF5TUhJaTRDSno0RE16SWVBZ2NXRGdJakp5SU9BaGNHSGdJek1qNENOeTRESXdFL0hhRCtoUTBCeGM4K2NGRXhBUjhCS2t0aU9RR1BEaGNTQ1FFQkNSSVhEZ3daRUFzQkFRc1FHUXdCQmd3SUJnRUJCZ2dNQmdnS0NnUUJBUVFLQ2dpUkN4QU9Cd0VCQnc0UUN3a1NEQWtCQVFrTUVna0JBZ2NEQkFFQkJBTUhBZ1FGQlFJQkFRSUZCUVEvQ3hBT0J3RUJCdzRRQ3drU0RBa0JBUWtNRWdrQkFnY0RCQUVCQkFNSEFnUUZCUUlCQVFJRkJRUWFEQUY4b1I2Ly9nSXdVbTgvT0dOS0t5Q3dDaEVZRFEwWUVRb0tFUmdORFJnUkNtQUZDUXNIQndzSkJRVUpDd2NIQ3drRklBZ05FUW9LRVEwSUNBMFJDZ29SRFFoQUF3UUdBd01HQkFNREJBWURBd1lFQStBSURSRUtDaEVOQ0FnTkVRb0tFUTBJUUFNRUJnTURCZ1FEQXdRR0F3TUdCQU1BQmdCZy8rQUJvQUhnQUFRQUNRQVJBQllBR3dBZ0FBQUJJVFVoRlNVaE5TRVZBU0VSTXhFaEVUTURNeFVqTlFNekZTTTFBeUVWSVRVQm9QN0FBVUQrNEFFQS93QUJJUDdBSUFFQUlMQWdJQkJBUUhBQklQN2dBV0NBZ0NCQVFQNWdBV0grdndGQi92OGdJQUZ3SUNEKzBDQWdBQUFFQUFBQUlBSUFBYUFBQkFBSkFCRUFHUUFBSlNFMUlSVWxJVFVoRlNVak5TRVZJeEVoQXlNMUlSVWpOU0VDQVA0QUFnRCtJQUhBL2tBQndDRCtnQ0FCd0VBZy93QWdBVUFnWUdBZ0lDQmc0T0FCQVA4QW9LREFBQUFBQUFRQUFQL2dBZ0FCNEFBT0FCNEFPd0JLQUFBRkl5SXVBalVSSVJFVURnSWpKek15UGdJMUVTRVJGQjRDT3dFbEl6VXpNajRDUFFFMExnSXJBVFV6TWg0Q0hRRVVEZ0lqQlNJdUFqVVJNeEVVSGdJekZRRXc0QkFlRlEwQmdBd1dIUkZ3Y0FvU0RRZit3QWdORVFwd0FSQXdNQU1HQkFNREJBWURNREFLRVEwSUNBMFJDdjZnQ2hFTkNDQURCQVlESUEwVkhSRUJzUDVRRVIwVkRTQUlEUkVLQVpEK2NBb1JEUWpBSUFNRUJnT2dBd1lFQXlBSURSRUtvQW9TRFFlZ0NBMFJDZ0ZRL3JBREJnUURJQUFBQUFBR0FBQUFJQUlBQWFBQUh3QkFBSTRBa3dDWUFKMEFBQ1V4SWk0Q0p5NEROVFErQWpNeUhnSVhIZ01WRkE0Q0l6VWlEZ0lWRkI0Q0Z4NERNeFUxTWo0Q05UUXVBaWN1QXlNWE9BTXhJaTRDSnpjZUF6TTRBekV5UGdJM1BnTTFOQzRDSnk0REl5SU9BZ2NuUGdNek9BTXhNaDRDRng0REZSUU9BZ2NPQXlNWElSRWhFU1VoRVNFUkV5RVZJVFVCRUFjTURBb0ZCQWNGQWdvU0Z3MEhEQXdLQlFRSEJRSUtFaGNOQmd3SkJRRURBd0lDQmdVSEF3Y0xDUVVCQXdNQ0FnWUZCd053Qnd3TUNnVVhBd1VGQndNREJnWUZBZ01EQXdFQkF3TUNBZ1lGQndNREJnWUZBaGNGQ2dzTkJnY01EQW9GQkFjRkFnTUVCd1VGQ2dzTkJvRCtBQUlBL2lBQndQNUFJQUdBL29CZ0F3UUhCUVVLREF3R0RoY1JDZ01FQndVRkNnd01CZzRYRVFwZ0JRa0xCd01HQmdVQ0F3TURBUkFRQlFrTEJ3TUdCZ1VDQXdNREFXQURCQWNGRndNREF3RUJBd01DQWdZRkJ3TURCZ1lGQWdNREF3RUJBZ1FDRndRSEJRSURCQWNGQlFvTURBWUhEQXdLQlFRSEJRSkFBWUQrZ0NBQlFQN0FBUUFnSUFBRkFIRC80QUdRQWVBQUJ3QU1BQkVBSmdBN0FBQUJJelVqRlNNMUlSRWhFU0VSSlRNMUl4VTNJaTRDTlRRK0FqTXlIZ0lWRkE0Q0l6VWlEZ0lWRkI0Q016SStBalUwTGdJakFaQWc0Q0FCSVA3Z0FTRC9BT0RnY0JFZEZRME5GUjBSRVIwVkRRMFZIUkVLRVEwSUNBMFJDZ29SRFFnSURSRUtBU0Nnb01EK0FBRWcvdUFnNE9BZ0RSVWRFUkVkRlEwTkZSMFJFUjBWRFlBSURSRUtDaEVOQ0FnTkVRb0tFUTBJQUFBQUJBQUEvK0VDQUFIZkFDb0FQd0JVQUZrQUFBVWlMZ0kxTkQ0Q054Y09BeFVVSGdJek1qNENOVFF1QWljM0hnTVZGQTRDSXhFaUxnSTFORDRDTXpJZUFoVVVEZ0lqTlNJT0FoVVVIZ0l6TWo0Q05UUXVBaU1ITXhVak5RRUFOVjFHS0NJN1VUQUVLVWMwSGlNOVVpNHVVajBqSGpSSEtRUXdVVHNpS0VaZE5Rb1JEUWdJRFJFS0NoRU5DQWdORVFvREJnUURBd1FHQXdNR0JBTURCQVlERUNBZ0h5aEdYVFV3VjBRc0J5QUZLRHRNS2k1U1BTTWpQVkl1S2t3N0tBVWdCeXhFVnpBMVhVWW9BVEFJRFJFS0NoSU5Cd2NORWdvS0VRMElRQUlGQmdNREJnUURBd1FHQXdNR0JRSmdvS0FBQkFBQS8rQUNBQUhnQUJjQUx3QkRBRzBBQUNVbk56NERGelllQWhjZUF4VVVEZ0lQQVNjWE56NEROVFF1QWljdUF3Y21EZ0lQQVJjbk56NERGelllQWhjSExnSUdEd0VEQmk0Q0p5NEROVFErQWo4QkZ3Y09BeFVVSGdJekhnSTJQd0VYQnc0REJ3RU40c1FMR2gwZkVCQWZIQnNMQ3hJTUJnWU1FUXpFdExXdENRNEpCUVVLRGdrSkZSY1pEQTBaRmhVSnJVOFhpd2NRRVJJS0NSTVJFQWNYQ1JnWUdBbUxlQVVKQ0FnRUF3WURBZ0lEQmdOWUZsY0JBZ0VCQVFFQ0FRSUdCZ1lDV0JkWUJBZ0lDUVVMNHNRTEVnc0hBUUVIQ3hNS0RCb2RIaEVQSUJ3YkNzWGt0NjhJRmhVYURBNFhHQlFLQ0E4SkJnRUJCZ2dQQ0s0TEZvd0dDd1lGQVFFRkJnc0dHQW9JQVFvSWpQNy9BUU1DQndJRUJ3b0lCZ1FLQ0FrQ1dSaFhBZ0VFQWdNQkJBSURCQUVCQXdKWUYxY0VCUVFCQVFBQUFBQUhBRkQvNEFHd0FlQUFCd0FjQURFQU9RQkJBR3dBZ3dBQUJTTW5OeGN6TnhjbklpNENOVFErQWpNeUhnSVZGQTRDSXpVaURnSVZGQjRDTXpJK0FqVTBMZ0lqRlNNMFBnSXpGUWNqTkQ0Q014VVZJaTRDTlRRK0FqTXlIZ0lYQnk0REl5SU9BaFVVSGdJek1qNENOeGNPQXlNM0p6NERNekllQWhjSExnTWpJZzRDQndFY04wUWVQQWs5SGc4VUl4b1BEeG9qRkJRakdnOFBHaU1VRFJnUkNnb1JHQTBOR0JFS0NoRVlEU0FGQ1FzSG9DQUZDUXNIRkNNYUR3OGFJeFFGQ1FrSkJRMERCUWNHQXcwWUVRb0tFUmdOQnc0TkN3VVpCeEVURlFzQkh3TVJHU0FSQ3hVVEVRY1pCUXNORGdjTUZSQU1BaUM3Q3FYRkNpVVBHaU1VRkNNYUR3OGFJeFFVSXhvUG9Bb1JHQTBOR0JFS0NoRVlEUTBZRVFwQUJ3c0pCU0F3QndzSkJTQmdEeG9qRkJRakdnOEJBZ0lDSGdFQ0FRRUtFUmdORFJnUkNnTUdDUVlVQ1EwSkJkd0dFUndWREFVSkRRZ1ZCZ2tHQXdnT0V3c0FDQUJRLytBQnNBSGdBQllBR3dBZ0FEY0FSQUJSQUZZQVd3QUFKU0l1QWpVekZCNENNekkrQWpVekZBNENJemNoTlNFVkpTRTFJUlVCSXpRdUFpTWlEZ0lWSXpRK0FqTXlIZ0lWS3dFMFBnSXpGU0lPQWhVM0lpNENOVE1VSGdJekZSTWhOU0VWSlNFMUlSVUJBQjQwSnhjZ0VoNHBGeGNwSGhJZ0Z5YzBIckQrb0FGZy9zQUJJUDdnQVNBZ0VoNHBGeGNwSGhJZ0Z5YzBIaDQwSnhmQUlBMFZIUkVLRVEwSU1CRWRGUTBnQ0EwUkNyRCtvQUZnL3NBQklQN2cwQmNuTkI0WEtSNFNFaDRwRng0MEp4ZXdZR0FnSUNEK3dCY3BIaElTSGlrWEhqUW5GeGNuTkI0UkhSVU5JQWdORVFxd0RSVWRFUW9SRFFnZy90QmdZQ0FnSUFBQUFBQUVBQUQvNFFJQUFkOEFLZ0JPQUdNQWVBQUFCU2MrQXpVMExnSWpJZzRDRlJRZUFoY0hMZ00xTkQ0Q016SWVBaFVVRGdJSEp5TTFNekkrQWpVMExnSWpJZzRDRlNNMFBnSXpNaDRDRlJRT0FnY1ZCeUl1QWpVMFBnSXpNaDRDRlJRT0FpTTFJZzRDRlJRZUFqTXlQZ0kxTkM0Q0l3RWlCQ2xITkI0alBWSXVMbEk5SXg0MFJ5a0VNRkU3SWloR1hUVTFYVVlvSWp0Uk1CSWdFQTBZRVFvS0VSZ05EUmdSQ2lBUEdpTVVGQ01hRHd3V0hSRVFDaEVOQ0FnTkVRb0tFUTBJQ0EwUkNnTUdCQU1EQkFZREF3WUVBd01FQmdNZklBVW9PMHdxTGxJOUl5TTlVaTRxVERzb0JTQUhMRVJYTURWZFJpZ29SbDAxTUZkRUxBZlJQd29TRncwTkdCRUtDaEVZRFJRakdnOFBHaU1VRWlBWkVRTWdnUWdORVFvS0VnMEhCdzBTQ2dvUkRRaEFBZ1VHQXdNR0JBTURCQVlEQXdZRkFnQUFBd0FBQUZBQi9RR09BQVFBRlFBakFBQTNNeFVqTlFjak5UUStBanNCRlNNaURnSWRBVGMxSXpVekZUY25GU00xTXpVWGNKQ1FVQ0FJSlU1RlFFQTZRQjhIOEJBd2s1TXdFTzNRSUNDQVFBRXlQREVnSnk4cEFqOENYaUJDWW1KQ0lGNmVBQWtBQUFBQUFnQUJ3QUFVQUNrQU5nQkRBRmdBYlFCeUFJSUFrUUFBTnlJdUFqVTBQZ0l6TWg0Q0ZSUU9BaU0xSWc0Q0ZSUWVBak15UGdJMU5DNENJd2NqTkQ0Q014VWlEZ0lWSVNNMFBnSXpGU0lPQWhVWElpNENOVFErQWpNeUhnSVZGQTRDSXpVaURnSVZGQjRDTXpJK0FqVTBMZ0lqQnpNVkl6VXZBVGMwUGdJekZTSU9BaDBCQnlFbk5DNENJelV5SGdJVkZ3ZHdGeWtlRWhJZUtSY1hLUjRTRWg0cEZ4RWRGUTBORlIwUkVSMFZEUTBWSFJFUUlBZ05FUW9EQmdRREFTQWdDQTBSQ2dNR0JBTVFGeWtlRWhJZUtSY1hLUjRTRWg0cEZ4RWRGUTBORlIwUkVSMFZEUTBWSFJIQVlHQ3dJQ0FMRVJjTkJ3c0pCU0FCd0NBRkNRc0hEUmNSQ3lBZ0FCSWVLUmNYS1I0U0VoNHBGeGNwSGhMQURSVWRFUkVkRlEwTkZSMFJFUjBWRFZBS0VRMElJQU1FQmdNS0VRMElJQU1FQmdOd0VoNHBGeGNwSGhJU0hpa1hGeWtlRXNBTkZSMFJFUjBWRFEwVkhSRVJIUlVOUUNBZ1hRYWZEUllSQ2lBRkNRc0hBNkNqQndzSkJTQUtFUllObndZQUFBZ0FVUC9nQWJBQjRBQUVBQWtBRGdBVEFCc0FJd0FvQUMwQUFEY3pGU00xTnpNVkl6VWZBUWNuTndjWEJ5YzNOeU0xSVJVak5TRUhJelVqRlNNMU14TWhFU0VSSlNFMUlSV1FZR0FnSUNDNURpQU9JREFPSUE0Z2R5RCs0Q0FCWUVBZ29DRGdRUDZnQVdEK3dBRWcvdUNBSUNBZ1lHQUNIQkFjRURBY0VCd1FzcUNnd01CZ1lJRCtRQUVnL3VBZzRPQUFBQUFEQUVELzRBSEFBZUFBTUFCVEFGZ0FBQmNpTGdJOUFUTVZGQjRDTXpJK0FqVVJOQzRDSXlJT0FoMEJJelUwUGdJek1oNENGUkVVRGdJak15SXVBajBCSnpVekZSY1JGQjRDTXpJK0FqVVJOelV6RlFjVkZBNENJeE1WSXpVenNBb1JEUWdnQXdRR0F3TUdCQU1JRFJFS0NoRU5DQ0FORlIwUkVSMFZEUWdORVFxd0NoRU5DREFnTUFNRUJnTURCZ1FETUNBd0NBMFJDaEFnSUNBSURSRUtzTEFEQmdRREF3UUdBd0dBQ2hFTkNBZ05FUXJRMEJFZEZRME5GUjBSL29BS0VRMElDQTBSQ3Zrd3A1a3cvdmtEQmdRREF3UUdBd0VITUptbk1Qa0tFUTBJQWdDZ29BQUFCQUFBLy9BQ0FnSE9BQVFBRlFBZkFDa0FBQk16RlNNMUJ5TTFNRDRDT3dFVkl5SU9BZ2NWRnpVekZUY25GU00xRndNaEVUTVZJeEVoTlRQUWNIQkFJQW9pUURjdExTc3pHd2tCc0NCb2FDRENNdjR3Y0ZBQmtDQUJNQ0FnWURRbkx5WWdHeUllQkRFRlpTbEZSakp1Z3Y2a0FaQWcvckRSQUFBQUFBSUFJUC9nQWVBQjRBQUxBQmtBQUFVaE5UTVZJUkVoRlNNMUlRRTFJelV6RlRjbkZTTTFNelVYQWVEK2tDQUJNUDdRSUFGdy90Q1FzSk9Uc0pEdElGQXdBY0F3VVA1aVhpQkNZbUpDSUY2ZUFBQUFBQVlBUXYvZ0FiQUI0QUFIQUF3QUVnQVlBQzhBVEFBQUJTRTNGd2N6SnpjSEZ3Y25OemNqTlNjaEZTY3pOU01YRlRjak5DNENJeUlPQWhVak5ENENNekllQWhVWEl6VXpNajRDUFFFMExnSXJBVFV6TWg0Q0hRRVVEZ0lqQVhQKzJpTWdIZG9kSUtRZ0R5QVBwT0F1QVE3QW9MSVNrQ0FGQ1FzSEJ3c0pCU0FLRVJnTkRSZ1JDbUFSRVFNR0JBTURCQVlERVJFS0VRMElDQTBSQ2lEREJwMmRCZ3dGWkFSbEtYdEZ3Q0NBRzJYQUJ3c0pCUVVKQ3djTkdCRUtDaEVZRGVBZ0F3UUdBMEFEQmdRRElBZ05FUXBBQ2hJTkJ3QUFBQU1BaFAvdEFiQUI0UUEwQUVzQVVRQUFCU0l1QWljdUFUUTJOeGNPQVJRV0Z4NERNekkrQWpjK0F6VTBMZ0luTng0REZSUU9BZ2NPQXlNbkxnTTFORDRDTnhjT0F4VVVIZ0lYQnpjbkJ5YzNGd0VBRWlJZkhRd2FHaG9hRmhVVkZSVUtHQm9jRGc0Y0doZ0tDaEFLQmdZS0VBb1dEUk1OQndjTkV3ME1IUjhpRWs4SURBa0VCQWtNQ0JZRkNRWURBd1lKQlJhUlFrSWNYbDRUQncwVERCcEJSRUVaRmhVMU9EVVZDaEFMQlFVTEVBb0tHQm9iRHc0Y0doZ0tGZ3dkSUNFU0VpSWZIUTBNRXcwSFlRZ1NGQllMQ3hZVUVnZ1hCUTBQRHdnSUVBNE5CaGJ0YW1vUmxaVUFBQUFBQWdBZy8rQUI0QUhnQUFjQUZRQUFCU0UxTXhVaE5UTUhKek0xTXhVakZ6Y2pOVE1WTXdIZy9rQWdBWUFnNEo1ZUlFSmlZa0lnWGlDQVlHQU43YURBazVQQW9BQUpBQUFBSUFJQUFZQUFCQUFKQUJNQUtBQTlBRUlBUndCTUFGRUFBQ1VoRVNFUkpTRTFJUlVGSVRVekZTRTFJelV6QlNJdUFqVTBQZ0l6TWg0Q0ZSUU9BaU0xSWc0Q0ZSUWVBak15UGdJMU5DNENJeWN6RlNNMUZUTVZJelVsTXhVak5SVXpGU00xQWFEK1lBR2cvb0FCWVA2Z0FlRCtZQ0FCWUNCQS90QU5HQkVLQ2hFWURRMFlFUW9LRVJnTkJ3c0pCUVVKQ3djSEN3a0ZCUWtMQjVBZ0lDQWdBUUFnSUNBZ2dBRUEvd0Fnd01DQVFDREFJR0FLRVJnTkRSZ1JDZ29SR0EwTkdCRUtZQVVKQ3djSEN3a0ZCUWtMQndjTENRVWdJQ0JnSUNCZ0lDQmdJQ0FBQUFBQUNBQUFBRUFDQUFHQUFBUUFDUUFlQURNQU9BQTlBRUlBUndBQUpTRVJJUkVsSVJFaEVUY2lMZ0kxTkQ0Q016SWVBaFVVRGdJak5TSU9BaFVVSGdJek1qNENOVFF1QWlNbk14VWpOU0V6RlNNMUZUTVZJelVoTXhVak5RSUEvZ0FDQVA0Z0FjRCtRT0FVSXhvUER4b2pGQlFqR2c4UEdpTVVEUmdSQ2dvUkdBME5HQkVLQ2hFWURjQkFRQUZBUUVCQVFQN0FRRUJBQVVEK3dDQUJBUDhBSUE4YUl4UVVJeG9QRHhvakZCUWpHZytnQ2hFWURRMFlFUW9LRVJnTkRSZ1JDaUFnSUNBZ29DQWdJQ0FBQlFBQUFCQUNBQUd3QUFzQUVBQVZBQm9BSHdBQUpTTTFNeEVoRVRNVkl4RWhBeUUxSVJVbElUVWhGUmN6RlNNMUJ6TVZJelVDQU5Ddy9rQ3gwUUlBUVA2QUFZRCtvQUZBL3NDUUlDQlJ3c0pRSUFFZy91QWdBV0QrNE9EZ0lLQ2dQeUVoUVNBZ0FBQURBQ0QvNEFIZ0FlQUFGZ0F0QURzQUFBRWhJaTRDTlRRK0FqTWhNaDRDRlJRT0FpTWxJZzRDRlJRZUFqTWhNajRDTlRRdUFpTWhFeU0xSnpjbk56VXpGUWNYQnhjQm9QN0FEUmdSQ2dvUkdBMEJRQTBZRVFvS0VSZ04vc0FIQ3drRkJRa0xCd0ZBQndzSkJRVUpDd2Yrd0xBZ0owRkFKaUFaUVVFWkFXQUtFUmdORFJnUkNnb1JHQTBOR0JFS1lBVUpDd2NIQ3drRkJRa0xCd2NMQ1FYK0lFa25RRDhvU1ZjWlFFQVpBQUFBQUFnQVFQL2dBY0FCNEFBSEFBd0FFUUFXQUNzQVFBQkZBRW9BQUFVaEF6Y1RNeE1YSlNFWElUY0ZJVGN6Rnljekp5TUhFeUl1QWpjbVBnSXpNaDRDRnc0REl6Y2lEZ0lISGdNek1qNENKell1QWlNbk13Y2pKeGN6RnlNM0FZLys0UkFmRU9FUUgvNmhBWDhCL244QkFVUCsrUmJiRnQrM0NLY0lXd3daRUFzQkFRc1FHUXdPRnhJSkFRRUpFaGNPQVFnS0NnUUJBUVFLQ2dnR0RBZ0dBUUVHQ0F3R1ljRUJ2d0VCdndIQkFTQUJid0wrcndGUkFrRWdJQ0J3Y0NBd01QN1FDaEVZRFEwWUVRb0tFUmdORFJnUkNtQUZDUXNIQndzSkJRVUpDd2NIQ3drRllDQWc0Q0FnQUFBQUZBQUEvK0FDQUFIZ0FBUUFDUUFPQUJNQUdBQWRBQ0lBSndBc0FERUFOZ0E3QUVBQVJRQktBRThBVkFCWkFGNEFZd0FBTnlFVklUVVJNeEVqRVJNekZTTTFPd0VWSXpVN0FSVWpOVHNCRlNNMU93RVZJelU3QVJVak5TVXpGU00xTlRNVkl6VTFNeFVqTlRVekZTTTFOVE1WSXpVMU14VWpOUk1qTlRNVkp6TTFJeFVYSXhFekVTY3pFU01SRnlNUk14RW5NelVqRlFBQ0FQNEFJQ0J3SUNCQUlDQkFJQ0JBSUNCQUlDQkFJQ0QrY0NBZ0lDQWdJQ0FnSUNBZ0lMQmdZRUFnSU1CZ1lFQWdJTUJnWUVBZ0lBQWdJQUhnL2dBQ0FQNUFJQ0FnSUNBZ0lDQWdJQ0FnUUNBZ1FDQWdRQ0FnUUNBZ1FDQWdRQ0FnL3FEZzRDQ2dvQ0FCWVA2Z0lBRWcvdUFnQVNEKzRDRGc0QUFBRUFBQS8rQUNBQUhnQUFRQUNRQU9BQk1BR0FBZEFDSUFKd0FzQURFQU5nQTdBRUFBUlFCTkFGTUFBRGNoRlNFMUVUTVJJeEVUTXhVak5Uc0JGU00xT3dFVkl6VTdBUlVqTlRzQkZTTTFPd0VWSXpVbE14VWpOVFV6RlNNMU5UTVZJelUxTXhVak5UVXpGU00xTlRNVkl6VVRKemNYTnhjSEp4Y2pOU00xTXdBQ0FQNEFJQ0J3SUNCQUlDQkFJQ0JBSUNCQUlDQkFJQ0QrY0NBZ0lDQWdJQ0FnSUNBZ0lHMGFhbEtHRnBwTzdTQndrQUFnSUFIZy9nQUNBUDVBSUNBZ0lDQWdJQ0FnSUNBZ1FDQWdRQ0FnUUNBZ1FDQWdRQ0FnUUNBZy90WVVqVUtHRnBvK0dYQWdBQkFBQVAvZ0FnQUI0QUFFQUFrQURnQVRBQmdBSFFBaUFDY0FMQUF4QURZQU93QkFBRVVBVFFCVEFBQTNJUlVoTlJFekVTTVJFek1WSXpVN0FSVWpOVHNCRlNNMU93RVZJelU3QVJVak5Uc0JGU00xSlRNVkl6VTFNeFVqTlRVekZTTTFOVE1WSXpVMU14VWpOVFV6RlNNMUFTY0hKemNYTnhjWEl6VXpOVE1BQWdEK0FDQWdjQ0FnUUNBZ1FDQWdRQ0FnUUNBZ1FDQWcvbkFnSUNBZ0lDQWdJQ0FnSUNBQmxJWlFhaGhXVUpvRWtIQWdBQ0FnQWVEK0FBSUEva0FnSUNBZ0lDQWdJQ0FnSUNCQUlDQkFJQ0JBSUNCQUlDQkFJQ0JBSUNEKzVaVkFmQlJrUUtzYklIQUFBQUFBQ2dBQS8rQUNBQUhnQUFRQUNRQU9BQk1BR0FBZEFDSUFKd0FzQURFQUFBVWhFU0VSSlNFUklSRVRNeFVqTlFjekZTTTFPd0VWSXpVVk14VWpOUmN6RlNNMUp4Y0hKemN6Rndjbk55RVhCeWMzQWdEK0FBSUEvaUFCd1A1QWNDQWdNSUNBd0lDQUlDQlFJQ0NyRm1BV1lNQVdZQlpnL3ZaZ0ZtQVdJQUlBL2dBZ0FjRCtRQUdBZ0lBd0lDQWdJS0FnSUVBZ0lFc1dZQlpnRm1BV1lHQVdZQllBQUFBRUFBRC80QUlBQWVBQUhnQW1BRGNBUFFBQUpTTTFNelUwTGdJaklnNENIUUV6RlNNMU5ENENNekllQWgwQkF5RTFNeFVoTlRNM0l6VXpOVFF1QWlNMU1oNENIUUVESXpVek5UTUJnRUFnR1N3NklTRTZMQmtnUUI0MFJpZ29SalFlSVA3QUlBRUFJS0JBSUJrc09pRW9SalFlSUdCQUlQQWdFQ0U2TEJrWkxEb2hFQ0F3S0VZMEhoNDBSaWd3L3ZEdzBOQWdJQkFoT2l3WklCNDBSaWd3L3ZBZzBBQUFBQUFGQUhELzRBR1FBZUFBQndBTUFCUUFLd0E2QUFBQkl6VXpGVE0xTXljekZTTTFFeUUxTXhVek5UTXhJelF1QWlNaURnSVZJelErQWpNeUhnSVZCeU0xTkQ0Q014VWlEZ0lkQVFFd1lDQWdJSUNnb09EKzRDRGdJQ0FTSGlrWEZ5a2VFaUFYSnpRZUhqUW5GOEFnRFJVZEVRb1JEUWdCUUdCQVFFQWdJUDRBOE5EUUZ5a2VFaEllS1JjZU5DY1hGeWMwSHJDd0VCMFdEQ0FIRFJFS3NBQUFCUUNnLytBQllBSGdBQWNBREFBYUFDZ0FNUUFBQVNNMU14VXpOVE1uTXhVak5STWpFVFErQWpNeUhnSVZFU2N6RVRRdUFpTWlEZ0lWRVRjak5UUStBak1WQVRCZ0lDQWdZR0Jna01BUEdpTVVGQ01hRDZDQUNoRVlEUTBZRVFwQUlBVUlEQWNCUUdCQVFFQWdJUDRBQVNBVUl4b1BEeG9qRlA3Z0lBRUFEUmdSQ2dvUkdBMy9BRERRQmd3SUJPNEFDQUJRLytBQnNBSGdBQVFBRmdBdkFEUUFSQUNEQUlnQWpRQUFOek1WSXpVekl6UStBamNuTXhVakZ3Y09BeFVYSXlJdUFqVXpGQjRDT3dFeVBnSTFNeFFPQWlNM014VWpOVE1qTkM0Q0x3RTNGd2NlQXhVSElpNENOVE1VSGdJek1qNENOVFF1QWlNaUxnSTFORDRDTXpJZUFoVWpOQzRDSXlJT0FoVVVIZ0l6TWg0Q0ZSUU9BaU1uTXhVak5SVXpGU00xVUNBZ0lDQVJJQ3NiUkkxVFBSY1pLaDhSNEtBVUl4b1BJQW9SR0EyZ0RSZ1JDaUFQR2lNVVFDQWdJQ0FSSHlvWkYwMGFOQm9zSUJHd0NoRU5DQ0FEQkFZREF3WUVBd01FQmdNS0VRMElDQTBSQ2dvUkRRZ2dBd1FHQXdNR0JBTURCQVlEQ2hFTkNBZ05FUW9RSUNBZ0lOQ1FrQncxS3lFSmFpQmVCUVVhSmk4WjhBOGFJeFFOR0JFS0NoRVlEUlFqR2cvd2tKQVpMeVlhQlFWM0VsRUpJU3MxSEhBSURSRUtBd1lFQXdNRUJnTUVCUVVDQ0EwUkNnb1NEUWNIRFJJS0JBVUZBZ0lGQlFRREJnUURCdzBTQ2dvUkRRalFJQ0RnSUNBQUFBQURBQUQvN2dINUFkSUFCQUFNQUJZQUFBRVhCeWMzQnlNMU14VWpGVE1ITlRNVk55Y1ZJelVGQVNwUUZGQVVPdkR3ME5BZ0lOZlhJQUVwQVN4QUdFQVluS0FnWU1LQ1BxNnVQb0x5QUFBQUFBa0FTLy9tQWJVQjFRQVVBQ2tBTmdCREFGQUFYUUI0QUgwQWdnQUFKU0l1QWpVMFBnSXpNaDRDRlJRT0FpTTFJZzRDRlJRZUFqTXlQZ0kxTkM0Q0l3Y3VBVFEyTnhjT0FSUVdGd2NITGdFME5qY1hEZ0VVRmhjSEpTYytBVFFtSnpjZUFSUUdCeGNuUGdFMEppYzNIZ0VVQmdjbkl6VTBMZ0lqSWc0Q0hRRWpOVFErQWpNeUhnSWRBUlVqTlRNVkp6TTFJeFVCQUEwWUVRb0tFUmdORFJnUkNnb1JHQTBIQ3drRkJRa0xCd2NMQ1FVRkNRc0hiQm9hR2hvV0ZSVVZGUlpKSmlVbEpoWWdJU0VnRmdFaEZoVVZGUlVXR2hvYUdra1dJQ0VoSUJZbUpTVW1kU0FGQ1FzSEJ3c0pCU0FLRVJnTkRSZ1JDb0NBWUVCQTRnb1JHQTBOR0JFS0NoRVlEUTBZRVFwZ0JRa0xCd2NMQ1FVRkNRc0hCd3NKQmFVWlFVUkJHUllWTlRnMUZSWXhKbDVpWGlVV0lWSldVaUVYT0JjVk5UZzFGUllaUVVSQkdqOFdJVkpXVWlFV0pWNWlYaVVCSUFjTENRVUZDUXNISUNBTkdCRUtDaEVZRFNDQVlHQWdJQ0FBQUFBQUJnQTAvK0FDQUFIZ0FCSUFKUUF5QUZNQVlBQnRBQUFYSWk0Q0p5NEJORFkvQVJjSERnTWpBd2NPQVJRV0Z4NERNekkrQWo4Qkp3Y3VBVFEyTnhjT0FSUVdGd2MzSno0RE5UUXVBaWN1QVNJR0J5YytBVElXRng0REZSUU9BZ2MzTkM0Q0l6VXlIZ0lWSXpjMExnSWpOVEllQWhVanNCSWlIeDBNR2hvYUdqajVPUXdkSHlJU1JDSVZGUlVWQ2hnYUhBNE9IQm9ZQ2lMTUN4RVFFQkVXQ3d3TUN4YThGZ0lEQXdFQkF3TUNCUXdNREFVV0NSZ1lHQWtGQndVQ0FnVUhCV0lXSnpVZUpVQXdHeUJoSXoxUkxqVmNSaWdnSUFjTkV3MFpRVVJCR1RuNU9BMFREUWNCT0NJVk5UZzFGUW9RQ2dZR0NoQUtJc3pYRUNrcktoQVdEQjRlSGd3V2NoWURCUVlHQXdNR0JnVURCQVVGQkJZSkNRa0pCQXNMRFFZR0RRc0xCQ2NlTlNjV0lCc3dRQ1VITGxFOUl5QW9SbHcxQUFBQUFBVUFJUC9nQWVBQjRBQWNBREVBUmdCTEFHSUFBQ1VpTGdJOUFUTVZJeDRETXpJK0FqY2pOVE1WRkE0Q0l4RWlMZ0kxTkQ0Q016SWVBaFVVRGdJak5TSU9BaFVVSGdJek1qNENOVFF1QWlNSE14VWpOUk1pTGdJMU14UWVBak15UGdJMU14UU9BaU1CQUM1U1BTTkFId1FnTTBNbEpVTXpJQVFmUUNNOVVpNFJIUlVORFJVZEVSRWRGUTBORlIwUkNoRU5DQWdORVFvS0VRMElDQTBSQ2hBZ0lCQUtFUTBJSUFNRUJnTURCZ1FESUFnTkVRb3dIalJHS0JBZ0hqVW5GaFluTlI0Z0VDaEdOQjRCRUEwVkhSRVJIUlVORFJVZEVSRWRGUTJBQ0EwUkNnb1JEUWdJRFJFS0NoRU5DSERnNFA2UUNBMFJDZ01HQkFNREJBWURDaEVOQ0FBQUJBQUxBRUFCOVFHQUFDOEFOQUE4QUVFQUFEY2lMZ0luTGdJMk56NENGaGNITGdFT0FRY09BUjRCRng0Q05qYytBemNYRGdNSERnSWlJeVVYQlNjbEJTY2hGU00xSXhjZkFRY25OMkFHREFzTEJSSVlDZ01KQ2g0akpoRVBDeG9YRkFZSEFnY1FEQVVNRFF3R0J3c0pDQU1kQlF3T0VRa0VCd2NIQXdHTEN2NXdDZ0dRL3RtSEFWTWc3VmxRUUJoQUdFQUJBd1VDQ2g0akpoRVNHQW9EQ1IwSEFnY1FEQXNhRnhRR0F3UUJBUUlDQlFnS0JnOEpEZ3dKQXdFQ0FlOGZmeDZBU3B0Z1FHVlJVQlJRRkFBQUFBWUFRUC9nQWNBQjRBQVVBQ2tBUGdCVEFGc0FZd0FBSlNJdUFqVTBQZ0l6TWg0Q0ZSUU9BaU1SSWc0Q0ZSUWVBak15UGdJMU5DNENJeEVpTGdJMU5ENENNekllQWhVVURnSWpOU0lPQWhVVUhnSXpNajRDTlRRdUFpTVZJelErQWpNVkV5RTNGd2NoSnpjQkFDaEdOQjRlTkVZb0tFWTBIaDQwUmlnaE9pd1pHU3c2SVNFNkxCa1pMRG9oRkNNYUR3OGFJeFFVSXhvUER4b2pGQTBZRVFvS0VSZ05EUmdSQ2dvUkdBMGdCUWtMQjdqK2tDa2VGd0VRRng1Z0hqUkdLQ2hHTkI0ZU5FWW9LRVkwSGdGZ0dTdzZJU0U2TEJrWkxEb2hJVG9zR2Y4QUR4b2pGQlFqR2c4UEdpTVVGQ01hRDZBS0VSZ05EUmdSQ2dvUkdBME5HQkVLUUFjTENRVWcvc0JtRERvNkRBQUFCQUFxLytBQjFnRzJBQm9BT2dBL0FFUUFBQ1VuTno0Qk5DWW5MZ0VpQmc4Qkp6YytBVElXRng0QkZBWVBBUVVpTGdJbkxnRTBOajhCRndjT0FSUVdGeDRCTWpZL0FSY0hEZ01qQXhjSEp6Y2ZBUWNuTndHWkZ6MFJFQkFSRUNvcktSQTlGejBWTlRnMUZSVVZGUlU5L3ZjT0d4b1lDeFVWRlJVOUZ6MFJFQkFSRUNrc0tSQTlGejBMR0JvYkRqV0FGb0FXNElBV2dCYXRGejBRS2lzcEVCRVFFQkU5RnowVkZSVVZGVFU0TlJVOXpRVUxFQW9WTlRnMUZUMFhQUkFwTENrUUVSQVFFVDBYUFFvUUN3VUJ1NEFXZ0JiZ2dCYUFGZ0FBQUFZQUFBQVFBZ0FCc0FBRUFBa0FGd0FjQURNQVNnQUFKU0VSSVJFbElSRWhFUVVqTlRNMUp5TVZNeFVqTlRNWEJUTVZJelVGSWk0Q05UTVVIZ0l6TWo0Q05UTVVEZ0lqSVNJdUFqVXpGQjRDTXpJK0FqVXpGQTRDSXdGQS9zQUJRUDdnQVFEL0FBSGdvSUFxTmtCZ2FqYitRTURBQVhBTkdCRUtJQVVKQ3djSEN3a0ZJQW9SR0EzKzBBMFlFUW9nQlFrTEJ3Y0xDUVVnQ2hFWURYQUJRUDdBSUFFQS93QWdJR3hVWUNDZ2JCUWdJT0FLRVJnTkJ3c0pCUVVKQ3djTkdCRUtDaEVZRFFjTENRVUZDUXNIRFJnUkNnQUFCZ0F3LytBQjhnSGdBQ0FBTFFBOUFFSUFSd0JOQUFBRklpNENOVFErQWpjWERnTVZGQjRDTXpJK0FqY1hEZ01qTnk0REp6Y2VBeGNISnlNMU16VWpGVE1WSXpVak5UTVZJemNYQnljM05SY0hKemNESXpVekZUTUJBQ3RNT0NFU0lpOGREQmdvSFE4Y01FQWtJajB3SGdJZ0F5TTRTU2l2QWhFY0pSY01HeTBoRkFJZ2Z5QXdnREFnTU1Bd2xSWXdGakF0RnkwWFJaQWdjQ0FoT0V3cklEb3lLQXdkQ3lFck1Sc2tRREFjR1N3NklnSW9Sak1lM3hndUpoNEtIUXNrTFRZZEFwRlFJQ0JRTUdCZ0d4WXdGakFYTFJjdEYvN3VrSEFBQUFYLy8vL2lBZ0VCM1FBRkFCY0FKQUF4QUVnQUFDVW5OVE1WRndjaUxnSW5OeDRDTmpjWERnTWpOeWMrQVM0Qkp6Y2VBZ1lITnlNMExnSW5OeDRERlFFaUxnSTFORDRDTnhjT0F4VVVIZ0l6RlFGbWRpQnNleGt4TGlzU0ZoMUdTMHNoRWhBaUpDUVQxUm9XRVFjaEhCY2dKUWtVR2lzZ0d6QkRKd1l0VERjZi92NDFYVVlvSHpaTExRWW5RVEFiSXoxU0xtbHpwcGxwblFrVEhCSVhIQ0VIRWhVYUN4QUtCWElTSVV0TFJ4d1dJRkJXVmlhTktFazZLUWdmQ1M1RFV5Ny9BQ2xGWFRVdVUwTXVDUjhJS1RwSktDNVNQQ1FnQUFRQUFBQUFBZ0FCd0FBRUFBa0FFUUFaQUFBQklUVWhGU1VoTlNFVkFTRTFNeFVoTlRNSElUVXpGVE0xTXdJQS9nQUNBUDRnQWNEK1FBR3cvbUFnQVdBZ1VQOEFJTUFnQVFEQXdDQ0FnUDdnOE5EUWNHQkFRQUFEQUFELzZ3SUFBZFVBQlFBVEFCa0FBQk1qTlRNM0Z4TW5CemNuTnhjSE54Y25OeGNITnlNbk54Y3p4c2F3UVI2d3Y3OUZYUTU0TUlHQk1IZ09YWWJjSXg0ZHhBRUFJTFVLL2lCeGNia3VIRHAvVEV4L09od3VYSDRKWndBQUFBQUhBQkFBQUFIekFjQUFDd0FnQURVQVNnQmZBR1FBYVFBQUpTRURJemN6RXlFM0l6Y2hBU0l1QWljK0F6TXlIZ0lIRmc0Q0l5Y2lEZ0lYQmg0Q016SStBamN1QXlNWElpNENKejRETXpJZUFnY1dEZ0lqSnlJT0FoY0dIZ0l6TWo0Q055NERJeWN6RnlNM093RUhJeWNCemY3R1R6VUJTMUVCQmh2K0FRRWkvczRMRUE0SEFRRUhEaEFMQ1JJTUNRRUJDUXdTQ1FFQ0J3TUVBUUVFQXdjQ0JBVUZBZ0VCQWdVRkJORUxFQTRIQVFFSERoQUxDUklNQ1FFQkNRd1NDUUVDQndNRUFRRUVBd2NDQkFVRkFnRUJBZ1VGQko4ZkFTRUJYeUVCSHdHQUFTQWcvdUNRSVA2d0NBMFJDZ29SRFFnSURSRUtDaEVOQ0VBREJBWURBd1lFQXdNRUJnTURCZ1FEUUFnTkVRb0tFUTBJQ0EwUkNnb1JEUWhBQXdRR0F3TUdCQU1EQkFZREF3WUVBOUJRVUZCUUFBQUFBQWNBTVAvZ0FkQUI0QUFFQUFrQUtBQXRBRElBTndCVEFBQVRNeFVqTlNFekZTTTFBeU1uTGdNMU14UWVBaGN4RnpNM1BnTTFNeFFPQWc4Q0F6TVZJelVWTXhVak5UVXpGU00xSlNNaUxnSW5EZ01yQVRVek1qNENOVE1VSGdJN0FSVXdJQ0FCZ0NBZ25DaVdEUThJQWlBQkJRb0lqQmlNQ0FvRkFTQUNDQThOQXBTRTRPRGc0SEJ3QVVCd0R4MFlGUWNIRlJnZEQzQndFUjBWRFNBTkZSMFJjQUZRME5EUTBQNlFVQWdSRXhjTkRCQU1DUVJMU3dRSkRCQU1EUmNURVFnQlR3RUFJQ0JBSUNDQUlDQlFDQTRVREF3VURnZ2dEUlVkRVJFZEZRMGdBQUFBQUFnQUJmL2xBZnNCMndBRUFBa0FEZ0FXQUJzQUlBQWxBRUVBQURjWEJ5YzNBUmNISnpjbkZ3Y25Od01uTnljSEp6Y1hCUmNISnpjM0Z3Y25OemNYQnljM0F5SXVBaWN1QVRRMk54Y09BUlFXRng0Qk1qWTNGdzRESXl3WEtCWW5BWVlYVGhaTkIxQVdVQmJYRjdGYXNSZklpUDdwR3hjYkZ6QWJGeHNYTUJzWEd4ZFZDUklTRUFjT0RnNE9Gd29KQ1FvSkdCZ1lDUmNIRUJJU0NTTVhKeFlvQVlZWFRSWk9NbEFXVUJiK1VSZXhXckVYeUlnMEd4Y2JGekFiRnhzWE1Cc1hHeGYrOEFRSENnY09KQ1FrRGhjSkdCZ1lDUW9KQ1FvWEJ3b0hCQUFBQXdBQS8rQUNBQUhnQUVBQVRnQldBQUFsSno0RE55NERJeUlPQWc4Qkp5NERJeUlPQWhjR0hnSVhCeTRESno0RE16SWVBaGMrQXpNeUhnSUhGZzRDQndjbkJ5TW5NemNYTnhjekZ5TW5BeU1uTnhjek54Y0IzQmtIQ2dnREFRRVNJU3NhREJzV0ZnZ05Dd29VR0JrT0dDMGZGQUVCQlFZTUJSY0tEQW9FQVFFWEtqY2dEaDBaR2drTEdCc2JFQjQ1S0JrQkFRWUlEZ2pxTlJTcEFaY21Nejg5bEFHdEl4b3RoaGw2RTNvWjVSVUlFeFFVQ3hrc0lCTUdDaEFLRHc4S0VBb0dFeUFzR1FzVUZCTUlGUXNYR1JzTkh6Z3BHQVVMRHdvS0R3c0ZHQ2s0SHcwYkdSY0xmbk1xSUZacnRhQWdZdjdPblJXU2toVUFBQUFBQ1FBYy8rQUNBQUhnQUFRQUNRQXpBRjBBWWdCbkFHd0FjUUIyQUFBM0p6Y1hCeWNYTnljSEJ5SXVBaWN1QVQ0QlB3RVhCdzRERndZZUFoY2VBek15UGdJL0FSY0hEZ01qQVNjM1BnTW5OaTRDSnk0QklnWVBBU2MzUGdNek1oNENGeDREQnhZT0FnOEJCeGNISnpjM0Z3Y25OemNYQnljM0J4Y0hKemMzRndjbk4rdUlzNGV5VzF1RldvWXdDeEVTRHdnTkR3RU5EeXNZTFFRSUJBTUJBUU1FQ0FRRkNnd01Cd1VPQ2d3RExSWXJDQThTRVFzQldSZ3RCQWdFQXdFQkF3UUlCQW9YR1JjS0t4Z3RCaEVRRXdrTEVSSVBDQVlMQmdVQkFRVUdDd1l0OXhZV0dCZy9HQmdXRmhFV0ZoZ1lJUmdZRmhaUkZoWVlHRUtJc29lemlGdUdXb1hxQkFjS0J3NGtKQ1FPTEJjc0JBc0xEUVlHRFFzTEJBVUhCUUlDQlFjRkxCY3NCd29IQkFFd0Z5d0VDd3NOQmdZTkN3c0VDUWtKQ1N3WExBY0tCd1FFQndvSEJ4QVJFZ29LRWhFUUJ5d3BGeGNYRnhBWEZ4Y1hRQmNYRnhlQUZ4Y1hGMUFYRnhjWEFBRUFBdi9rQWZrQjJnQVBBQUFGSnhVM0Z3YzFGeE1GRnpjWEJ5Y2xBVmlJQlJZN21ILytkMVNqRTdtTkFmY2NlaWdGRnpxOGlnR0tqRk44R295SnRBQURBQ3IvNEFIV0FiWUFHZ0F0QUVBQUFDVW5OejRCTkNZbkxnRWlCZzhCSnpjK0FUSVdGeDRCRkFZUEFRVWlMZ0luTGdFME5qOEJGd2NPQXlNVEJ3NEJGQllYSGdNek1qNENQd0VuQVprWFBSRVFFQkVRS1N3cEVEMFhQUlUxT0RVVkZSVVZGVDMrOXc0Y0doZ0tGUlVWRlh6TmZRb1lHaHdPRjJZUkVCQVJDQklVRmdzTEZoUVNDR2FlclJjOUVDa3NLUkFSRUJBUlBSYzlGUlVWRlJVMU9EVVZQYzBHQ2hBS0ZUVTROUlY4eTMwS0VBb0dBVVZtRUNrc0tSQUlEQWtFQkFrTUNHYWVBQVVBQUFBQUFnQUJ5UUFIQUF3QUVRQVdBQnNBQUNVaEp6Y1hJVGNYSlNFVklUVWZBUWNuTnpNWEJ5YzNFeGNISnpjQjN2NUVJaUFlQVlRZUlQNEFBZ0QrQU5BUUlCQWdZQ0FRSUJBekduQWFjQUR1Qk5MU0JFSWdJRzFnQm1BR0JtQUdZQUVHRXFBU29BQUFBQUlBSmYvY0Fmc0Izd0FiQUVRQUFBVWlMZ0luTGdJMk54Y09BUjRCRng0Q05qY1hEZ01qTnljSERnTWpJaTRDSnk0QlBnRS9BU2MzRndjT0FSNEJGeDRETXpJK0FqOEJGd2NCVHh3OE9qa1pLaklVRVJrYkZ3c1FNQ01sVTFOTEhoTU1IUjRoRUpWNEZ3Z1VGUmtMRFJZWEV3a1JFd0VSRXhSNEZwRXVEQTRCREE0R0R3OFNDQW9RRVE0SExKQVhKQTBiSnhrcFgxNVpJaE1kVGxSVUpDUXRFUTBYR1FvUENnVk9lUllJRGdrRUJBa09DQkl0THl3U0Zua1hrQ3dPSVNJaERRWUtCd01EQndvR0xKQVdBQUFGQUFuLzZnSGtBZUFBRWdBZUFDTUFLUUF6QUFBQkp6YytBek15SGdJWEhnRVVCZzhCSnhjK0FTNEJKeTRDQmdjSEZ3Y25Od0UzRndjM0Z6Y3ZBVGNYQng4Qk54Y0IyWWdMQnhBUkVnb0tFaEVRQnc0T0RnNExXbGdHQkFNSkNBY1VGUlFLTVdBYllCdit1ekFmSVgwSkdpWmh4eGVsUVJtRkZ3RXhpQXNIQ2djRUJBY0tCdzRrSkNRT0M0WllDaFFWRXdnSUNRSURCZytnRUtBUS9rS3lDSDRpSHhkaEpja1hwaGxBaFJjQUFBWUFEdi9zQWZjQjN3QUVBQmtBTGdCR0FGNEFhQUFBTnhjSEp6Y1hCaTRDTlRRK0FqY2VBeFVVRGdJbk5TWU9BaFVVSGdJWFBnTTFOQzRDQnpjR0xnSW5MZ00xTkQ0Q1B3RVhCdzREQnljSERnTVZGQjRDRng0RE54WStBajhCSndFVE54Y1BBU1UzRndlbEZwQVdrQ3NOR0JFS0NoRVlEUTBZRVFvS0VSZ05Cd3NKQlFVSkN3Y0hDd2tGQlFrTEI2QU5HQmNWQ1FvT0NRVUZDUTRLSzdZc0NoUVhHUTB2RlFjS0J3UUVCd29IQnhBUkVnb0tFaEVRQnhXSS9zMGpseENKSFFFU0xSNHpsQmVKR1ljckFRc1FHUXdPRnhJSkFRRUpFaGNPREJrUUN3RmZBUVlJREFZSUNnb0VBUUVFQ2dvSUJnd0lCZ0VSQVFZSUR3Z0xFeGdZRGd3WkZoWUpMYllzQ2cwS0JBSGFGZ1lSRUJNSkN4RVNEd2dHQ3dZRkFRRUZCZ3NHRjRiK1BBRTFWUjFMK3pOM0M0a0FBUUFBLy9BQ0FBSFFBSUlBQUJjaUxnSW5MZ00xTkQ0Q1B3RVhCdzRERlJRZUFoY2VBek15UGdJL0FUNEROVFF1QWljdUF5TWlEZ0lQQVE0QkZCWVhIZ016T0FNeE1qNENQd0VYQnc0REl6Z0RNU0l1QWljdUFUUTJQd0UrQXpNeUhnSVhIZ01WRkE0Q0R3RU9BeU9nRUI4ZEdnc0xFZ3dHQmd3U0M3a1h1UWtPQ2dVRkNRNEpDaFFYR1EwTkdSY1VDY29HQ3djRUJBY0tCd2NRRVJJS0NoSVJFQWZKQ1FvSkNnUUtEQXdIQmcwTEN3VEJGOEVIRUJFU0Nnb1NFZzhIRGc0T0Rza0pGUmNaRFEwWkZ4UUpDZzRKQlFVSkRnckpDeG9kSHhBUUJnd1NDd3NhSFI4UUVCOGRHZ3ZHRmNjSkZSY1pEUTBaRnhRSkNnNEpCUVVKRGdyV0J4QVJFZ29LRWhFUUJ3Y0tCd1FFQndvSDFnb1lHQmdKQlFjRkFnSUZCd1hKRnNvSENnY0VCQWNLQnc0akpTUU8xZ2tPQ2dVRkNRNEtDUlFYR1EwTkdSY1VDdFlMRWd3R0FBQUVBQUFBUUFJQUFZQUFGd0F1QUVNQVdBQUFOekVpTGdJMU5ENENPd0V5SGdJVkZBNENLd0VUSXlJT0FoVVVIZ0k3QVRJK0FqVTBMZ0lqQnlJdUFqVTBQZ0l6TWg0Q0ZSUU9BaU0xSWc0Q0ZSUWVBak15UGdJMU5DNENJNkFoT3lzWkdTczZJY0VoT3lzWkdTczZJY0hBd1JvdUl4UVVJeTRid1JvdUl4UVVJeTRid0JRakdnOFBHaU1VRkNNYUR3OGFJeFFOR0JFS0NoRVlEUTBZRVFvS0VSZ05RQmtzT2lFaE9pd1pHU3c2SVNFNkxCa0JJQlFqTHhvYUx5TVVGQ012R2hvdkl4VGdEeG9qRkJRakdnOFBHaU1VRkNNYUQ2QUtFUmdORFJnUkNnb1JHQTBOR0JFS0FBQUFBQU1BVVAvZ0FiQUI0QUFXQURFQU5nQUFBU00wTGdJaklnNENGU00wUGdJek1oNENGUU1pTGdJOUFUTVZGQjRDTXpJK0FqMEJNeFVVRGdJakF6TVZJelVCc0NBWEp6UWVIalFuRnlBY01FQWtKRUF3SExBa1FEQWNJQmNuTkI0ZU5DY1hJQnd3UUNRUUlDQUJNQjQwSnhjWEp6UWVKRUF3SEJ3d1FDVCtzQnd3UUNTQWdCNDBKeGNYSnpRZWdJQWtRREFjQWFDQWdBQUFCZ0FBQUFBQ0FBSEhBQWNBRHdBVUFCa0FIZ0E3QUFBM0l6VXpOU00xTXdFbE54Y1JCeWNsQnhjSEp6Y0ZJelV6RlNjek5TTVZGeUl1QWowQk14VVVIZ0l6TWo0Q1BRRXpGU01WRkE0Q0kvQlFNRkJ3QVJEKzJ3cjcrd29CSlZZTWtBdVAvclpnWUVBZ0lHQU5HQkVLSUFVSkN3Y0hDd2tGUUNBS0VSZ05vQ0NBSVA3WmFCNVlBVEpZSG1oaUhqWWVOc1hBd0NDQWdNQUtFUmdOUUVBSEN3a0ZCUWtMQjBBZ0lBMFlFUW9BQUFBRUFDci80QUhXQWJZQURBQW5BRFFBVkFBQU55NEJORFkzRnc0QkZCWVhCek1uTno0Qk5DWW5MZ0VpQmc4Qkp6YytBVElXRng0QkZBWVBBUWNuUGdFMEppYzNIZ0VVQmdjSElpNENKeTRCTkRZL0FSY0hEZ0VVRmhjZUFUSTJQd0VYQnc0REk4MFZGUlVWRnhFUUVCRVh6QmM5RVJBUUVSQXBMQ2tRUFJjOUZUVTROUlVWRlJVVlBXWVhFUkFRRVJjVkZSVVZvdzRiR2hnTEZSVVZGVDBYUFJFUUVCRVFLU3dwRUQwWFBRc1lHaHNPclJVMU56WVZGeEFxS3lrUUZ4YzlFQ29yS1JBUkVCQVJQUmM5RlJVVkZSVTFPRFVWUFdZWEVDb3JLUkFYRlRVM05oVm5CUXNRQ2hVMU9EVVZQUmM5RUNrc0tSQVJFQkFSUFJjOUNoQUxCUUFBQUFvQUFBQXdBZ0FCa0FBRUFBa0FEZ0FUQUJnQUhRQWlBQ2NBTEFBMkFBQVRNeFVqTlRzQkZTTTFPd0VWSXpVN0FSVWpOU1V6RlNNMU93RVZJelU3QVJVak5Uc0JGU00xQlNFVklUVUZJUkV6RVNFUklUVWhZQ0FnWUNBZ1lDQWdZQ0FnL3VBZ0lHQWdJR0FnSUdBZ0lQOEFBUUQvQUFHQS9nQWdBY0QrSUFJQUFRQWdJQ0FnSUNBZ0lFQWdJQ0FnSUNBZ0lLQWdJSEFCTVA3d0FTQWdBQUFGQUFULzRBSDhBZGNBQndBTkFCVUFLZ0EvQUFBRklUVXpGU0UxTXpjbkJ5Y2JBUWNqTlNNVkl6VXpKeUl1QWpVMFBnSXpNaDRDRlJRT0FpTTFJZzRDRlJRZUFqTXlQZ0kxTkM0Q0l3SEEvb0FnQVVBZ0pPVGtHUHo4dkNCQUlJQkFEUmdSQ2dvUkdBME5HQkVLQ2hFWURRY0xDUVVGQ1FzSEJ3c0pCUVVKQ3djZzBMQ3dCZlQwRmdFTS92U3JjSENRSUFvUkdBME5HQkVLQ2hFWURRMFlFUXBnQlFrTEJ3Y0xDUVVGQ1FzSEJ3c0pCUUFEQUFELzlBSUFBY0FBUlFCZUFIVUFBQVVuTGdNMU5ENENNekllQWhjK0F6TXlIZ0lWRkE0Q0R3SW5OejRETlRRdUFpTWlEZ0lQQVNjdUF5TWlEZ0lWRkI0Q0h3RUhMd0V1QXpVMFBnSXpGU0lPQWhVVUhnSWZBUWMzSno0RE56NEJIZ0VYQnk0Q0JnY09Bd2NCQmVFSkRRa0ZHQ2s0SHc4Y0doa0tDaGthSEE4Zk9Da1lCUWtOQ1FHd0ZxOEhDZ2NFRXlBc0dRMGFGeFVKREF3SkZSY2FEUmtzSUJNRUJ3b0gzeFlTb1FRSEJRSU9HQ0FTREJRUENRRURCQU9lRmtRY0JBc09Ed2tJRVJFUkNCQUZDZ3NMQlFZS0NBY0RETkVMRnhrYkRSODRLUmdGQ3c4S0NnOExCUmdwT0I4Tkd4a1hDd0dnR0o4SUVoUVZDaGtzSUJNR0NoQUtEdzhLRUFvR0V5QXNHUW9WRkJJSXp4aG9sZ1lORFE4SEVpQVlEaUFKRHhRTUJBa0pDQVNTR09RUENBMExDQUlEQVFJRkJCd0RBd0VCQVFJRkJ3Z0ZBQUFKQUFELzRBSUFBZUFBRFFBWkFDY0FNd0JBQUVVQVdnQnZBSVlBQURjaklpNENOVFErQWpzQkZTY09BeFVVSGdJWE5RVWpOVE15SGdJVkZBNENJemNWUGdNMU5DNENKeFUxTWo0Q05UTVVEZ0lqSnpNVkl6VUhJaTRDTlRRK0FqTXlIZ0lWRkE0Q0l6VWlEZ0lWRkI0Q016SStBalUwTGdJakV5TTBMZ0lqSWc0Q0ZTTTBQZ0l6TWg0Q0ZYQVFGU01aRHc4Wkl4VVFJQXNSRFFjSERSRUxBVkFRRUJVakdROFBHU01WRUFzUkRRY0hEUkVMQXdZRUF5QUhEUklLUUVCQUtBb1JEUWdJRFJFS0NoSU5Cd2NORWdvREJnUURBd1FHQXdRR0JBSUNCQVlFYUNBWEp6UWVIalFuRnlBY01FQWtKRUF3SEZBUEdTUVVGU01aRDhDZUFnc1JGQXdNRkJFTEFueWV3QThaSXhVVUpCa1BubndDREJBVURBd1VFUXNDN2lBQ0JBWUVDaElOQnlBZ0lFQUhEaEVLQ2hFTkNBZ05FUW9LRVE0SFFBTUVCZ01EQmdVQ0FnVUdBd01HQkFNQkVCNDBKeGNYSnpRZUpFRXZIQnd2UVNRQUFBa0FFQUFBQWZNQjFBQUxBQ0FBTlFCS0FGOEFaQUJwQUc4QWR3QUFKU0VESXpjekV5RTNJemNoQVNJdUFpYytBek15SGdJSEZnNENJeWNpRGdJWEJoNENNekkrQWpjdUF5TVhJaTRDSno0RE16SWVBZ2NXRGdJakp5SU9BaGNHSGdJek1qNENOeTRESXljekZ5TTNPd0VISXljbkl6OEJGd2NYSXpjbkZ5TTNGd0hOL3NaUE5RRkxVUUVHRy8wQkFTSCt6Z3NRRGdjQkFRY09FQXNKRWd3SkFRRUpEQklKQVFJSEF3UUJBUVFEQndJRUJRVUNBUUVDQlFVRTBRc1FEZ2NCQVFjT0VBc0pFZ3dKQVFFSkRCSUpBUUlIQXdRQkFRUURCd0lFQlFVQ0FRRUNCUVVFbng4QklRRmZJUUVmQVY4aEFXb0xWdUVoQVdFQklRR2ZnQUVnSVA3Z2tDRCtzQWdORVFvS0VRMElDQTBSQ2dvUkRRaEFBd1FHQXdNR0JBTURCQVlEQXdZRUEwQUlEUkVLQ2hFTkNBZ05FUW9LRVEwSVFBTUVCZ01EQmdRREF3UUdBd01HQkFQUVVGQlFVR0FzSXg0ZEZDUVlQR1FvQUFvQUFQL2dBZ0FCNEFBRkFBb0FFQUFWQUJzQUlBQWxBQ3NBTUFBMUFBQUJJelVqTlRNSEZ3Y25Od0VqTlRNVk16Y1hCeWMzSnlNMU14VWpCek1WSXpVM014VWpOUk1qTlRNMU15Y3pGU00xQnpNVkl6VUNBQ0J3a0JzVzBSYlIvcXVRSUhCR0Z0RVcwWFlnY0ZBZ0lDQ1FZR0R3Y0ZBZ0lDQWcwR0JnQVZCd0lBVVcwUmJSL2dXUWNNd1cwUmJSWkhBZ2NHQmdrQ0FnL29BZ1VJQmdZTkFnSUFBQUF3QUFBQkFDQUFHd0FBUUFDUUFUQUFBbElSRWhFU1VoRVNFUkFTRTFJeFVqTlRNVklRSUEvZ0FDQVA0Z0FjRCtRQUhnL3NDZ0lPQUJJQkFCUVA3QUlBRUEvd0FCUUNBZ1FDQUFBQVlBQVAvZ0FnQUI0QUFIQUE4QUdRQWVBQ01BS0FBQUFTRTFNeFVoTlRNSEl6VXpGVE0xTXhNaEVTRVZJUkVoRVRNRklSVWhOUlVoRlNFMUZTRVZJVFVCb1A3QUlBRUFJRUJnSUNBZ29QNEFBYUQrZ0FIQUlQNWdBVUQrd0FGQS9zQUJRUDdBQVFDQVlHQkFRQ0FnL21BQ0FDRCtRQUdBd0NBZ1FDQWdRQ0FnQUFBQUFBY0FJUC9nQWVBQjRBQUVBQWtBRGdBVEFCZ0FIUUFsQUFBbElSRWhFU1VoRVNFUk56TVZJelVWTXhVak5SVXpGU00xTlRNVkl6VUJJVFVoRVNNMU13R0EvcUFCWVA3QUFTRCs0RERBd01EQXdNQmdZQUZ3L3JBQk1COC9JQUhBL2tBZ0FZRCtnT0FnSUVBZ0lFQWdJTUFnSVA2QUlBR0FJQUFBQUFBRkFDRC80QUhRQWVBQUJBQUpBQTRBRXdBZEFBQVRNeFVqTlJVekZTTTFGVE1WSXpVMU14VWpOUUVoRVRNUklSRWhOU0dRME5EUTBORFFZR0FCUVA1UUlBRncvbkFCc0FFQUlDQkFJQ0JBSUNEZ0lDRCtnQUhBL21BQndDQUFBQUFHLy83LzhBSUNBZEFBSUFBb0FEQUFOUUE2QUQ4QUFDVWlMZ0luSXhNWEJ6TVZGQjRDTXpJK0FqMEJNeWMzRXlNT0F5TUZJVFV6RlNFMU15Y2pOU0VWSXpVaEJUTVZJelVWTXhVak5SVXpGU00xQVFBU0lCa1JBNk1pSUI2ZUNoRVlEUTBZRVFxZUhpQWlvd01SR1NBU0FRRCtBQ0FCd0NCZ0lQOEFJQUZBL3dCUVVNREF3TUJRREJZZEVRRUNCTjRRRFJnUkNnb1JHQTBRM2dUKy9oRWRGZ3hna0hCd1lORFE4RUFnSUVBZ0lFQWdJQUFLQUFELzRBSUFBZDhBQlFBS0FCQUFGUUFiQUNBQUpRQXJBREFBTlFBQUpTTTFNeFV6TnhjSEp6Y0RJelVqTlRNSEZ3Y25OeWNqTlRNVkl3Y3pGU00xTnpNVkl6VUJJelV6TlRNbk14VWpOUWN6RlNNMUFhQ1FJSEJGRnNFV3dmVWdjSkFxRnNFV3dhWWdjRkFnSUNDUVlHQUJjSEJRSUNBZ0lOQmdZUENRY01zV3dSYkIvbVZ3SUJRV3dSYkJzM0FnY0dCZ2tDQWcvZ0VnVUlCZ1lOQWdJQUFBQUFQLy9nQUFBZ0lCd0FBUEFDRUFLUUFBSlNJdUFpY2pFeUVUSXc0REl5Y3pGUlFlQWpNeVBnSTlBVE1uSVFjRklUVXpGU0UxTXdFQUVpQVpFUU9qSkFHOEpLTURFUmtnRXQ2ZUNoRVlEUTBZRVFxZUhQNThIQUhlL2dBZ0FjQWdZQXdXSFJFQkVQN3dFUjBXREhBUURSZ1JDZ29SR0EwUTBORFFrSEJ3QUFBQUJnQkEvK0FCd0FIZ0FBY0FEQUFSQUJZQUd3QWdBQUFGSVJFekVTRVJNeVVoRlNFMUJTTTFNeFVuTXpVakZRY3pGU00xT3dFVkl6VUJvUDdBSUFFQUlQNmdBWUQrZ0FFUW9LQ0FZR0FRSUNCZ0lDQWdBWEQrc0FGUVFDQWdJSEJ3SURBd2NPRGc0T0FBQUFBQUNRQUFBQ0FDQUFHd0FCWUFMUUF5QURjQVJnQlRBR29BZHdDT0FBQWxJeUl1QWpjbVBnSTdBVEllQWdjV0RnSWpBeUlPQWhjR0hnSTdBVEkrQWljMkxnSXJBUWN6RnlNM0J6TUhJeWMzSXpjbVBnSXpGeUlPQWdjWEZ5NEJJZ1lISno0Qk1oWVhCd2N1QXljK0F6Y1hGQVlVQmhjR0ZoUVdGUWMzTGdFaUJnY25QZ0V5RmhjSEJ5NERKejRETnhjVUJoUUdGd1lXRkJZVkJ3Rnc0UjAxSmhnQkFSZ21OUjN4R0RBaUZnRUJHQ1kxSGVFWEtSMFRBUUVUSFNvVzRSY3BIUk1CQVJJYkl4RHhEeDhCSVFFeGdRRi9BY0VoQVFFSkRCSUpBUVFGQlFJQkFUWUNCd1VIQVJnSUVSUVFDQmN0QkFRRkFRRUJBUVVFQkJZREFnRUJBZ01XalFJSEJRY0JHQWdSRkJBSUZ5MEVCQVVCQVFFQkJRUUVGZ01DQVFFQ0F4WWdGeWMwSGg0MEp4Y1lLRFFjSGpRbkZ3RUFFaDRwRnhjcEhoSVNIaWtYR0NrZUVUQ0FnREFnSUtBZ0NoRU5DQ0FEQkFZRElLMERBZ0lERndjSEJ3Y1hMUU1JQ1FrRkJRa0pDQU1YQVFJREF3SUNBd01DQVJjdEF3SUNBeGNIQndjSEZ5MERDQWtKQlFVSkNRZ0RGd0VDQXdNQ0FnTURBZ0VYQUFVQUlQL2dBZUFCNEFBcUFDOEFOQUE2QUVBQUFBVWlMZ0kxTkQ0Q054Y09BeFVVSGdJek1qNENOVFF1QWljM0hnTVZGQTRDSXdNekZTTTFJek1WSXpVRE54Y0hOeGMzSnpjSEp6Y0JBQzVTUFNNWkxqOG1DQ0UySnhZZU5FWW9LRVkwSGhZbk5pRUlKajh1R1NNOVVpNFFJQ0FnWUdBNkt4NFdRZ29xSGhaQ0NuOGdJejFTTGlkSE9pa0pId2dqTVQwaUtFWTBIaDQwUmlnaVBURWpDQjhKS1RwSEp5NVNQU01DQUdCZ0lDRCtkMzRLUWhZZUtncENGaDRxQUFBQUFBWUFmLy9zQVpzQjRBQVVBQ2tBT3dCQUFFVUFTZ0FBSlNJdUFqVTBQZ0l6TWg0Q0ZSUU9BaU0xSWc0Q0ZSUWVBak15UGdJMU5DNENJeE1pTGdJbk54NEJQZ0UzRnc0REl3TXpGU00xQXhjSEp6Y3pGd2NuTndFQUVSMFdEQXdXSFJFUUhSWU5EUllkRUFvU0RRY0hEUklLQ2hFTkNBZ05FUW9FREJjWEZnb1FHamcyTGhBYkRDSW5MQllVSUNBd0gwRWZRWDVCSDBFZjRBMFZIUkVSSFJVTkRSVWRFUkVkRlEyQUNBMFJDZ29SRFFnSURSRUtDaEVOQ1A3dUF3WUtCaHNQQ0E0aEdSQVZIeFlMQVpKQVFQNzBDT0FJNE9BSTRBZ0FBQUFIQUVELzRBSEFBZUFBQ3dBYkFDMEFNZ0EzQUR3QVFRQUFCU0VSTXhVakVTRVJJelV6QnlNMU16NERNekllQWhjekZTY3pOU00xTkM0Q0l5SU9BaDBCSXhVSE14VWpOUlV6RlNNMUZUTVZJelUxTXhVak5RSEEvb0JBSUFGQUlVRmh2aklDQ1F3T0NBZ09EQWtDTXA1K0x3TUVCZ01EQmdVQ0x5SEF3TURBd01CUVVDQUJ3Q0QrZ0FHQUlFQmdCd3dJQlFVSURBZGdJQ0FRQXdZRUF3TUVCZ01RSUtBZ0lFQWdJRUFnSU1BZ0lBQUFBQUFIQUVELzRBSEFBZUFBQ3dBYkFDMEFNZ0EzQUR3QVFRQUFCU0VSTXhVakVTRVJJelV6QnlNMU16NERNekllQWhjekZTY3pOU00xTkM0Q0l5SU9BaDBCSXhVWE14VWpOVGN6RVNNUkZ6TVZJelVITXhVak5RSEEvb0JBSUFGQUlVRmh2aklDQ1F3T0NBZ09EQWtDTXA1K0x3TUVCZ01EQmdVQ0x3OGdJRUFnSUVBZ0lNQWdJQ0FCd0NEK2dBR0FJRUJnQnd3SUJRVUlEQWRnSUNBUUF3WUVBd01FQmdNUUlIRGc0Q0QvQUFFQU1ORFFZSEJ3QUFBQUF3QXcvK0FCcXdIZ0FBUUFNUUJLQUFBVE14VWpOUUVoSnk0RE5UUStBajhCTlRNVkJ3NERGUlFlQWhjaFBnRXVBUzhCTlRNVkZ4NEJGQVlQQVNVMExnRTBOVFErQWo4QkZ3Y09BeFVjQVJZVUZ3ZWh3TUFCQmY2MEJBa09DZ1VGQ1E0SmJDQjFCd29IQkFNR0NRWUJNQXdNQVE0TmRTQnNFeElURXdUK3pRSUJBZ1VIQlhBV2NBSURBd0VCQVI4QjRDQWcvZ0FGQ1JVWEdRME5HUmNWQ1d5WnAzUUhFQkVUQ2drUkVRNEhEaU1rSWc1MHA1bHNFeTh5THhNRlN3SUdCUVVEQnd3TUN3UndGM0FDQlFZR0JBRURBd01CQ2dBQUNBQUEvK0FDQUFIZ0FCUUFLUUErQUZNQVdBQmRBR0lBWndBQUJTSXVBalUwUGdJek1oNENGUlFPQWlNUklnNENGUlFlQWpNeVBnSTFOQzRDSXhFaUxnSTFORDRDTXpJZUFoVVVEZ0lqTlNJT0FoVVVIZ0l6TWo0Q05UUXVBaU1uTXhVak5SVXpGU00xTnhjSEp6Y0hGd2NuTndFQU5WMUdLQ2hHWFRVMVhVWW9LRVpkTlM1U1BTTWpQVkl1TGxJOUl5TTlVaTROR0JFS0NoRVlEUTBZRVFvS0VSZ05Cd3NKQlFVSkN3Y0hDd2tGQlFrTEJ4QWdJQ0FnakJkeEYzR2VGM0VYY1NBb1JsMDFOVjFHS0NoR1hUVTFYVVlvQWVBalBWSXVMbEk5SXlNOVVpNHVVajBqL3VBS0VSZ05EUmdSQ2dvUkdBME5HQkVLWUFVSkN3Y0hDd2tGQlFrTEJ3Y0xDUVdnb0tEZ29LQ3pGM0VYY1o0WGNSZHhBQUFGQUEzLzdRSDlBZDBBQkFBSkFBNEFMd0EwQUFBM0p3RVhBU2NYRXljRkpSY0hKemNCSnpjK0FUUW1Md0UzRndjZUFSUUdCeGMrQVRJV0Z6Y1hCeWN1QVNJR0R3RW5Gd2NuTitxcUFWaGwvdTE2ZU9vOC90b0JGaFRaRTlqK3dDMExCd2NIQndzaUZ3MEhCZ1lIQWdvWEZ4WUtEUmNpREFjUkV4SUhDeGNYSWhjaUlLOEJEbVgrcUt4OEFTWTg1ckVhcVJxcC9ud3RDd2NTRXhFSERDSVhEUW9XRnhjS0FnY0dCZ2NORnlJTEJ3Y0hCd3N0RnlJWElnQUFBQVFBQUFBZ0FnQUJvQUFIQUJFQUtBQS9BQUFsSVRVaE5TYzNGd1VuTnlFWElUVXpKeU1CSWk0Q05UTVVIZ0l6TWo0Q05UTVVEZ0lqSVNJdUFqVXpGQjRDTXpJK0FqVXpGQTRDSXdJQS9nQUI0RWdRV1A0Z0lETUJHaWYrM1B3WjVnRXpEUmdSQ2lBRkNRc0hCd3NKQlNBS0VSZ04vdkFOR0JFS0lBVUpDd2NIQ3drRklBb1JHQTJBSUNjckhEVWRDTnl3SUhEK29Bb1JHQTBIQ3drRkJRa0xCdzBZRVFvS0VSZ05Cd3NKQlFVSkN3Y05HQkVLQUFBRkFCRC80QUh3QWVBQUJBQVRBQ0lBTlFCSUFBQVRNeEVqRVJNak5DNENLd0UxTXpJZUFoVXhJelErQWpzQkZTTWlEZ0lWSnlNUk16SWVBaFVqTkM0Q0t3RVJNeFVoSXpVekVTTWlEZ0lWSXpRK0Fqc0JFZkFnSUNBZ0NBMFJDckN3RVIwVkRTQU5GUjBSc0xBS0VRMElRTUN3RVIwVkRTQUlEUkVLa0tBQklNQ2drQW9SRFFnZ0RSVWRFYkFCa1A3QUFVRCtVQW9SRFFnZ0RSVWRFUkVkRlEwZ0NBMFJDbkFCa0EwVkhSRUtFUTBJL3JBZ0lBRlFDQTBSQ2hFZEZRMytjQUFBQ0FBQUFBQUNBQUhBQUFRQUNRQWVBRE1BU0FCZEFHY0Fjd0FBRXhjSEp6Y3pGd2NuTndNaUxnSTFORDRDTXpJZUFoVVVEZ0lqTlNJT0FoVVVIZ0l6TWo0Q05UUXVBaU1GSWk0Q05UUStBak15SGdJVkZBNENJelVpRGdJVkZCNENNekkrQWpVMExnSWpKeVUxSVJVaEZRVTFNeGNqTlNjakZUTVZJelV6RjI4Z0h4OGVZUjhlSUI5UUZDTWFEdzhhSXhRVUl4b1BEeG9qRkEwWUVRb0tFUmdORFJnUkNnb1JHQTBCSUJRakdnOFBHaU1VRkNNYUR3OGFJeFFOR0JFS0NoRVlEUTBZRVFvS0VSZ05ZUDdBQWdEK0lBRUFJTUFnSEVSQVlId2tBWVZnQ21BS1lBcGdDdjU3RHhvakZCUWpHZzhQR2lNVUZDTWFENkFLRVJnTkRSZ1JDZ29SR0EwTkdCRUtvQThhSXhRVUl4b1BEeG9qRkJRakdnK2dDaEVZRFEwWUVRb0tFUmdORFJnUkNoMDF6aUNTSzUzQVRWTmdJS0J0QUFnQUFBQWdBZnNCa0FBdkFITUFlQUI5QUlJQWlnQ1BBSlFBQURjaUxnSW5MZ01uSmo0Q056NEROeGNPQXdjT0F4Y2VBeGNlQVQ0Qk54Y09BeU1oSWk0Q0p5NERKeTRCUGdFM0Z3NENGaGNlQXhjZUFUSTJOejRETno0Q0ppY3VBeWMzSGdNWEhnRU9BUWNPQXdjT0F5TURGd2NuTnpjWEJ5YzNCeGNISnpjWEl6VS9BUjhCQnljek53OEJOek1WSXpWZkJ3OE9EZ1lJRFFvR0FnRUJCQWdHQmcwUUVnb0ZCd3dLQ2dNRUJRTUJBUUVFQndnRkN4a1lGZ2dhQnhJVUZnc0JRZ1lMQ2dvRkNROE1DZ01EQXdFRkJCMERBd0VDQWdJSENBb0dCUTBNRFFZR0N3a0hBd01EQVFJQ0FnWUpDZ1VPQ0E4TkNRTUVBZ0VGQkFRTURoQUpCQWdJQndRaE1COHdIeTBJUUFoQXZ3VmdCV0FMdUlxZ0JnMkZqbjVhYW03MklDQWdBZ1VIQlFVT0VCSUpDaE1TRVFnSERRb0dBaUFCQkFjSUJRVU1EQXdIQmd3TENRUUhCZ1FNQ3hNSkR3b0ZBUU1EQXdRTERoRUpDUklURWdrT0Jnd01EUVlHQ3drSUF3SUVBUU1DQmdnS0JnWU1EQTBHQmdzSkNBTWNCQXNPRVFrSkVoTVNDUWtQREFvREFRSUJBUUVVc0Fpd0NGd2ZFU0FRUUNBUUlCRGdLR2RBRHdxMklIMHJVc0F3TUFBQUFBQUZBQUQvNEFIL0FkOEFLUUJZQUYwQVlnQ05BQUFsSWk0Q0p5NEROeVkrQWo4QkZ3Y09Bd2NlQXhjZUFUSTJQd0VYQnc0REl6Y25CdzRCSWlZbkxnTTNKajRDUHdFbk54Y0hEZ01ISGdNWEhnTTdBVEkrQWo4QkZ3Y0ZNd2NqSnpjWEJ5YzNBeUl1QWljdUF5YytBejhDRndjT0F3Y2VBeGNlQWpZL0FSY0hEZ01qQVd3TEZSVVNDUWNOQndZQkFRWUhEUWN1Rml3SENBY0NBUUVDQndnSENoOGVIZ3N1Rml3S0VSWVVESDRqQ2dzV0doY0tBd2dFQkFFQkJBUUlBd3dqR0RnaEJBSURBUUVCQVFNQ0JBRUdCUWNDQVFNSEJBY0JJemNWL2xZaEFSOEJxajhXUUJlYUJ4QU9EZ1VHQ0FjQ0FRRUNCd2dHQWFNU29BUUVCQUVCQVFFRUJRUUdFaElTQm5RWmRBY01FQTRKM0FVSURBZ0lFaFVWQ3d3VkZCTUlMUmN0QmcwT0VBZ0lEdzRPQlF3TURBd3RGeTBJREFnRlRpSUxDUW9LQ1FVS0RBd0dCd3dNQ2dVTEloWTRJZ0lHQlFjREF3WUdCUUlEQXdJQ0FnSURBeUk1RitvZ0lNWS9GajRYL3RvREJna0ZCZzBQRHdnSUR3OE5CZ0YwR25NRENBZ0pCUVVKQ1FnREJ3WUJCd2FnRXFRRkNRWURBQUFLQUFBQUVBSUFBYkFBQndBTUFCRUFGZ0FiQUNBQUpRQXFBQzhBTkFBQUpTRVJNeFVoTlRNMUlUVWhGU1VoTlNFVk56TVZJelU3QVJVak5Uc0JGU00xRXlNMU14VW5NelVqRlFVak5UTVZKek0xSXhVQ0FQNEFJQUhBSVA0QUFnRCtJQUhBL2tBZ0lDQXdJQ0F3SUNBZ2dJQmdRRUFCWU9EZ3dLQ2dFQUVBNE9BZ2dJQWdRRUF3SUNBZ0lDQWcvdERBd0NDQWdDREF3Q0NBZ0FBSEFIRC80QUdRQWVBQUZBQXBBREVBT1FCQkFFa0FUd0FBSlNJdUFqVTBQZ0l6TWg0Q0ZSUU9BaU1SSWc0Q0ZSUWVBak15UGdJMU5DNENJemNuSXdjbk56TVhKeU0xSXhVak5UTURJeWMzRnpNM0Z3Y2pOVE1WTXpVekp5TTFNeFV6QVFBZU5DY1hGeWMwSGg0MEp4Y1hKelFlRnlrZUVoSWVLUmNYS1I0U0VoNHBGMk1jamh3YUpMSWtIU0NBSU1BSHNpUWFISTRjR2gzQUlJQWdFR0FnUUZBWEp6UWVIalFuRnhjbk5CNGVOQ2NYQVFBU0hpa1hGeWtlRWhJZUtSY1hLUjRTQnlrcEVqYzNKekF3VVA1QU54SXBLUkozVURBd29HQkFBQUFBQUFjQUFBQURBZ0FCdlFBSEFBd0FFUUFXQUMwQVJBQlFBQUFsSnpjWEVRY25Od2NYQnljM0R3RTFGeFVuTnpVbkZRVTFQZ00xTkM0Q0J6VWVBeFVVRGdJbkZUVVdQZ0kxTkM0Q0p6VTJIZ0lWRkE0Q0J6MEJOaDRDRlJRT0FnY0JRTWtTbDVjU3lWZ1FVQkJRaUdCZ1FDQWdBVUFOR0JFS0NoRVlEUlFqR2c4UEdpTVVHaThqRkJRakx4b2hPaXdaR1N3NklRY0xDUVVGQ1FzSEE0QWJZQUZGWUJ1QWtCc3hIUyt0QWNFQnZ4OEJmd0dCSHg4QkNSSVhEZ3daRUFzQklRRU9HeUlWRXlRWkVBRkJJUUVWSWpBWkd5NGtFd0VmQVJvck95QWlPUzBZQVlFL0FRWUlEQVlJQ2dvRUFRQUFBQU1BQUFBc0FnQUJrQUFMQUJBQUdBQUFKU0VSTXhVakZTRVJKemNYQlRNVkl6VUZKemNYTlFjbk53RkEvc0RmdndFQXNnWE4vd0NmbndIQWxBaHNiQWlVTUFFQUlNQUJBaDRnSW40Z0lNUWtJQnk0SENBa0FBQUYvLzcvNEFJQUFlQUFGQUFwQUVBQVNBQlVBQUEzSWk0Q05UUStBak15SGdJVkZBNENJeEVpRGdJVkZCNENNekkrQWpVMExnSWpFelV5UGdJMU5DNENJelV5SGdJVkZBNENJeGNqTlRNdkFUY1hCeUUvQVJjUEFTRXZBVGNYd0I0MEp4Y1hKelFlSGpRbkZ4Y25OQjRYS1I0U0VoNHBGeGNwSGhJU0hpa1hzQkVkRlEwTkZSMFJGeWtlRWhJZUtSZVFZRHNNTXdoSWF2NThGRXNLT0EwQlBBMDRDa3ZBRnljMEhoNDBKeGNYSnpRZUhqUW5Gd0VBRWg0cEZ4Y3BIaElTSGlrWEZ5a2VFdjhBSUEwVkhSRVJIUlVOSUJJZUtSY1hLUjRTd0NCVERoOFRyYWNZSGhKdmJ4SWVHQUFBQUFBREFDNy80QUhTQWVBQUZBQXBBRFVBQURjaUxnSW5QZ016TWg0Q0J4WU9BaU1ESWc0Q0Z3WWVBak15UGdJM0xnTWpFeUUvQVJjUEFTRXZBVGNYL0I0MEtCWUJBUllvTkI0ZE5pWVhBUUVYSmpZZEFSWXFIUk1CQVJNZEtoWVpKeUFRQVFFUUlDY1oxLzViRkZnTlNBd0JXd3hJRFZqQUZ5YzBIaDQwSnhjWEp6UWVIalFuRndFQUVoNHBGeGNwSGhJU0hpa1hGeWtlRXY0Z3F5UWVISFYxSEI0a0FBVUFBQUFnQWdBQnNBQTJBRThBYUFCdEFITUFBQ1UxTWo0Q05UUXVBaU1pRGdJSEhBTVZIQU1WSXp3RE5Ud0ROVDRETXpFekhnTVZGQTRDSXljalBBTTlBajRETXhVaURnSUhIQU1WQnlNaUxnSTFORDRDTXhVaURnSVZGQjRDT3dFVk56TVZJelVYSndjbk54Y0JVQjQwSnhjWEpqUWVIRElvR1FJZ0F4NHdQU0lDSkVBdkd4d3dRQ1JRSUFJVEh5Y1dEeHdXRHdGUU1Cb3ZJeFFVSXk4YUZDTWFEdzhhSXhRd1FDQWdOU1VsRmpzN1VDQVhKelFlSGpRbkZ4VWpMeHNCQWdJQ0FRRUJBZ0VCQVFFQkFRRUJBd01EQVNJNkt4a0JIQzlBSkNSQU1CeXdBUUlCQWdFQ0FoUWxHeEVnREJNWkR3RURBZ0lCc0JRakx4b2FMeU1VSUE4YUl4UVVJeG9QSUZDQWdEd2pJeGczTndBQUFBQUhBQUQvNlFJQUFjQUFGQUFwQUQ0QVV3Qm9BSDBBaVFBQU55SXVBalUwUGdJek1oNENGUlFPQWlNMUlnNENGUlFlQWpNeVBnSTFOQzRDSXhjaUxnSTFORDRDTXpJZUFoVVVEZ0lqTlNJT0FoVVVIZ0l6TWo0Q05UUXVBaU1YSWk0Q05UUStBak15SGdJVkZBNENJelVpRGdJVkZCNENNekkrQWpVMExnSWpBUkVoRVNFMUlSRWhFVGNYa0FvUkRRZ0lEUkVLQ2hFTkNBZ05FUW9EQmdRREF3UUdBd01HQkFNREJBWURjQW9SRFFnSURSRUtDaEVOQ0FnTkVRb0RCZ1FEQXdRR0F3TUdCQU1EQkFZRGNBb1JEUWdJRFJFS0NoRU5DQWdORVFvREJnUURBd1FHQXdNR0JBTURCQVlEL3BBQ0FQNlFBVkQrUURNYThBZ05FUW9LRVEwSUNBMFJDZ29SRFFoQUF3UUdBd01HQkFNREJBWURBd1lFQTBBSURSRUtDaEVOQ0FnTkVRb0tFUTBJUUFNRUJnTURCZ1FEQXdRR0F3TUdCQU5BQ0EwUkNnb1JEUWdJRFJFS0NoRU5DRUFEQkFZREF3WUVBd01FQmdNREJnUUQvcmtCMS82d0lBRVEvcWRERkFBQUFBb0FBUC9nQWZzQjJ3QWNBRFFBT1FBK0FGNEFqd0RJQU0wQTBnRDlBQUFUT0FNeElpNENMd0UzRng0REZSUU9BZ2NPQXlNbkhnTXpNVEkrQWpjK0F6VTBMZ0luTVFjekZ3Y25OeDhCQnljM0Z5SXVBaThCTnhjZUFUSTJOejRCTkNZdkFUY1hIZ0VVQmdjT0F5TURNU0l1QWljdUF6VTBQZ0kvQVJjSERnTVZGQjRDRng0RE16RXlQZ0kvQVJjSERnTWpOeWNIRGdNak1TSXVBaWN1QXpVMFBnSS9BU2MzRndjT0F4VVVIZ0lYSGdNek9BTXhNajRDUHdFWEJ3VXpGU00xTnhjSEp6Y0RJaTRDSnk0RE5UUStBajhDRndjT0F4VVVIZ0lYSGdJMlB3RVhCdzRESTBBRkNRa0lBeGRFRndNR0F3SUNBd1lEQXdnSkNRVUxBUUlEQXdJQ0F3TUNBUUVDQVFFQkFRSUJGaTFsRm1VVy9sY1dXQmRNQ0E4T0RnWmhGMkVIRWhJU0J3Y0hCd2RoRm1FTURBd01CUTRPRHdnMEN4WVVFZ2dJREFnRkJRZ01DQjBYSFFZSkJnTURCZ2tHQlEwUER3Z0lFQTROQmgwWEhnZ1NGQllMYlNJTUJBc0xEQWNHRFFzTEJBVUhCQU1EQkFjRkN5SVhPU0lEQXdNQkFRTURBd0lGQmdZREF3Y0ZCZ0lpT0JiK1d5QWdxVUFYUHhhWkNBOFBEUVlGQ1FZREF3WUpCUUttRTZVREJRTUNBZ01HQXdjUkV4RUhlQmw1QmcwUER3Z0JjQUlEQmdNWFJCY0RDQWtKQlFVSkNRZ0RBd1lEQWlVQkFnRUJBUUVDQVFFQ0F3TUNBZ01EQWdFV1loZGlGL3RYRjFnV3NnTUdDQVpoRjJFSEJ3Y0hCeElTRWdkaEYySUxIaDhkREFZSUJnTUJBQVVJREFnSUVoUVdDd3NXRkJNSEhoY2RCZzBPRUFnSUR3OE5CUVlKQmdNREJna0dIUmNkQ0F3SUJUNGlDd1VIQkFNREJBY0ZCQXNMRFFZSERBc0xCQXdpRmpnaUFnWUZCd01EQmdZRkFnTURBd0VCQXdNRElUZ1g1aUFnMGo4WFB4Zit6Z01HQ1FVR0RROFBDQWdQRHcwR0FYZ1plQU1JQ0FrRkJRa0pDQU1IQmdFSEJxVVRxQVVKQmdNQUFBQUVBQW4vNlFJQUFlQUFCd0FOQUNNQU9nQUFCU2MzRndjWE54YzNJelVqTlRNSE1TSXVBalUwUGdJek1oNENGUlFPQWlNMUlnNENGUlFlQWpNVk5USStBalUwTGdJakFRRDMzQmJFeWNVV0pTRFE4S0FSSFJZTURSVWVFQkVkRmd3TkZSNFFDaEVOQ0FjTkVnb0tFUTBJQncwU0NoZjMyeGJGeWNRV0s5QWc4QTBXSFJBUkhSVU5EUllkRUJFZEZRMkFDQXdTQ2dvUkRRZ1FFQWdNRWdvS0VRMElBQWNBQVAvZ0FnQUI0QUFFQUFrQURnQVRBQmdBVFFCa0FBQVRNeFVqTlJjekZTTTFJVE1WSXpVM0Z3Y25Oek1YQnljM0F5SXVBalUwUGdJek1oNENGd2N1QXlNaURnSVZGQjRDTXpJK0FqVTBMZ0luTng0REZSUU9BaU12QVQ0RE16SWVBaGNITGdNaklnNENCL0FnSUpCQVFQN0FRRUJFTFJjdEYva1dqaGFPZlRWZFJpZ29SbDAxRnk0ckp4RVZEeUltS0JRdVVqMGpJejFTTGk1U1BTTUhEaFVOR0E4WUVBZ29SbDAxVVJzSUdCd2ZFUkVmSEJnSUd3WVNGUmdNREJnVkVnWUJvRUJBc0NBZ0lDQ0RMUmN0RnhlTEY0ditiU2hHWFRVMVhVWW9DQkFZRHhnTkZRNEhJejFTTGk1U1BTTWpQVkl1RkNnbUlnOFZFU2NyTGhjMVhVWW9ZeEVPRmhBSUNCQVdEaEVMRUF3R0Jnd1FDd0FJQUFELzhBSUFBZEFBRkFBcEFENEFVd0JvQUgwQWdnQ0hBQUEzSWk0Q05UUStBak15SGdJVkZBNENJelVpRGdJVkZCNENNekkrQWpVMExnSWpKU0l1QWpVMFBnSXpNaDRDRlJRT0FpTTFJZzRDRlJRZUFqTXlQZ0kxTkM0Q0l4RWlMZ0kxTkQ0Q016SWVBaFVVRGdJak5TSU9BaFVVSGdJek1qNENOVFF1QWlNbkZ3Y25Od2NYQnljM1VCRWRGUTBORlIwUkVSMFZEUTBWSFJFS0VRMElDQTBSQ2dvUkRRZ0lEUkVLQVdBUkhSVU5EUlVkRVJFZEZRME5GUjBSQ2hFTkNBZ05FUW9LRVEwSUNBMFJDaEVkRlEwTkZSMFJFUjBWRFEwVkhSRUtFUTBJQ0EwUkNnb1JEUWdJRFJFS2R3NkFEb0J5Z0E2QURwQU5GUjBSRVIwVkRRMFZIUkVSSFJVTmdBZ05FUW9LRVEwSUNBMFJDZ29SRFFnZ0RSVWRFUkVkRlEwTkZSMFJFUjBWRFlBSURSRUtDaEVOQ0FnTkVRb0tFUTBJL2tBTkZSMFJFUjBWRFEwVkhSRVJIUlVOZ0FnTkVRb0tFUTBJQ0EwUkNnb1JEUWp1SEVBY1FLQkFIRUFjQUFBQUF3QUYvK0FCK3dIZ0FCOEFRQUREQUFBbE1TSXVBaWN1QXpjbVBnSXpNaDRDRng0REJ4WU9BaU1uSWc0Q0Z3WWVBaGNlQXpNSE56SStBaWMyTGdJbkxnTWpFeU1uTGdNbkJ5YzNKalFtTmljMkpqWTBOeWMzRno0RFB3RVhEd0VPQXc4Qkp3Y1hGUVlVQmhZSEZnWWVBUmNWQnhjM0Z4NERId0l6UHdFK0F6OEJGemNuTnpZME5qUTNKalFtTkNjMU55Y0hKeTRETHdJakp6TVhIZ01YTnhjSEZnWVdGQmNHRkFZVUJ4Y0hKdzRERHdFQkFBa09Ed3dIQlFrRkJBRUJEUlVlRUFrT0VBd0dCUW9GQkFFQkRoVWVEd0VKRXd3SUFRRUNBd1lEQkFjSkNRWUJBUWtTREFrQkFRTURCZ0lGQmdvSUJqZG5Fd2dORGd3SVJqUTBBZ0lCQVFFQkFRSTZORTBIREE4TkNBRWdCUWtKRHhBTkJ3WkhHVElDQWdFQkFRRUNBUUlzR1VFR0J3d1FEZ2tJRXpNVkJnY0tEQWtHQmtjWk1nRUJBZ0VCQVFFNUdVNEZCZ29NQ3djR0ZVOEJhaFVHQ1FzSkJsTXpRZ0lCQVFFQkFRSTZORTBGQ0FzSUJoV1FBd1lKQmdVTkR3OElFUjBWRFFNR0NRWUZEUThQQ0JFZEZRMkFDQTBSQ2dVSkNRY0VBd1VFQWhBUUNBMFJDZ1VKQ1FjRUF3WURBdjdRU3dJSEJ3Z0ZFMWd5QkFrSUNRUURCd2NHQkRsWUZnVUpCd2NDRFFRaEF3TUdDQW9GQmhRdU13a0VCd2NJQXdVSUNRa0ZDU3d1RVFVR0NRZ0dBZ05FU1FNQ0JnY0hCQVlVTGpNSkF3Z0hDQU1EQmdVR0JBZzVMaFFGQlFnSEJnTURTU0JTQWdZR0J3UVdXRUFDQmdVRUF3TUhCd1lFT1ZnV0JBWUdCUUpTQUFBRUFBRC80QUlBQWVBQUZBQXBBRk1BWUFBQU55SXVBalUwUGdJek1oNENGUlFPQWlNUklnNENGUlFlQWpNeVBnSTFOQzRDSXdFaUxnSXZBVGNYSGdFeU5qYytBelUwTGdJdkFUY1hIZ01WRkE0Q0J3NERJeVV1QVRRMk54Y09BUlFXRndmUUswdzRJU0U0VENzclREZ2hJVGhNS3lSQU1Cd2NNRUFrSkVBd0hCd3dRQ1FCQUFVSkNBZ0VXUlphQWdZR0JnSUJBZ0VCQVFFQ0FWWVdWd01HQXdJQ0F3WURCQWdJQ1FYK3BoTVRFeE1XRGc0T0RoWkFJVGhNS3l0TU9DRWhPRXdySzB3NElRR0FIREJBSkNSQU1Cd2NNRUFrSkVBd0hQNGdBZ01HQTFjV1ZnTUNBZ01CQWdNREFnSURBd0lCV2haWkJBY0pDUVVGQ1FrSUF3TUdBd0xXRWk4eUx4TVhEaVFrSkE0V0FBWUFBUC9nQWZjQjF3QVlBQ29BTHdBMEFHTUFhQUFBQVRFaUxnSW5MZ00xTkQ0Q1B3RVhCdzRESXljT0F4VVVIZ0lYSGdFeU5qY3hKd2NYQnljM0J4Y0hKemNISWk0Q0p5NEROVFErQWo4QkZ3Y09BeFVVSGdJWEhnRXlOajhCRndjT0F5TTRBekVURndjbk53RytCUWtKQndRREJnTUNBZ01HQXhkRUZ3TUlDUWtGQ3dFQ0FRRUJBUUlCQWdZR0JnSVdGeGVvRnFmZ0YzZ1dkMndJRHc4TkJnVUpCZ01EQmdrRmtoYVJBd1lEQWdJREJnTUhFaElTQjVFWGtRWU5EaEFJaTNFV2NSWUJiZ0lEQmdNRUJ3a0pCUVVKQ1FnREYwUVhBd1lEQWpzQkFnTURBZ0lEQXdJQkF3SUNBeFlXRjZjV3FPQVhkeFo0MHdNR0NRVUdEUTRRQ0FnUER3MEZraGVSQkFjSkNRVUZDUWtJQXdjSEJ3ZVJGcElGQ1FZREFVeHhGbkVXQUFBQUNnQUFBQkFDQUFHd0FCUUFLUUF2QURVQU9nQS9BRVFBU1FCT0FGb0FBRGNpTGdJMU5ENENNekllQWhVVURnSWpOU0lPQWhVVUhnSXpNajRDTlRRdUFpTVRMd0UzSHdFSEp6OEJGd2MzTXhVak5SVXpGU00xRlRNVkl6VVZNeFVqTlFjekZTTTFCU00xTXhFaEVUTVZJeEVoc0JFZEZRME5GUjBSRVIwVkRRMFZIUkVLRVEwSUNBMFJDZ29SRFFnSURSRUtVQTRuQ2prU3dDQVNPUW9uMGtCQWdJQ0FnSUNBa0tDZ0FWQ1FjUDVBY0pBQ0FOQU5GUjBSRVIwVkRRMFZIUkVSSFJVTmdBZ05FUW9LRVEwSUNBMFJDZ29SRFFqKy9WY05IaE5wQmdacEV4NE5yQ0FnUUNBZ1FDQWdRQ0FnWUNBZ0lDQUJZUDZnSUFHZ0FBQUFBQVVBVGYvZ0FiTUI0QUFFQUJJQUlRQXhBRWdBQUFFWEJ5YzNFeUUzUGdNek1oNENCeGNsSVNjMkxnSWpJZzRDQnhjSE55YzNKajRDTXhjaURnSUhGd2NYSWk0Q0p6TUdIZ0l6TWo0Q056TVdEZ0lqQVMwRlh3ZGhoZjZiSWdFV0tETWZIVFVtR0FFay9yOEJHeDRCRXgwcUZoZ29IeEVCQVI1T0lSRUJEaFFlRUFFTEVBNEhBUUVSUVFzUURnY0JJUUVFQXdjQ0JBVUZBZ0VmQVFrTUVna0I0Q0FRSUJEK1VOSWROQ2NXRmljMEhkSWdzUmNvSGhJU0hpZ1lBcTR1Qkg0UkhSVU5JQWdNRWdvSmVaNElEUkVLQXdZRUF3TUVCZ01LRVEwSUFBQUFCZ0FnLytBQjRBSGdBQWtBRGdBVEFDZ0FQUUJKQUFBRklSRXpFU0VSSVRVaEFTRVZJVFVWSVJVaE5UY2lMZ0kxTkQ0Q016SWVBaFVVRGdJak5TSU9BaFVVSGdJek1qNENOVFF1QWlNWEl6OEJGdzhCTXk4Qk54Y0I0UDVBSUFHQS9zQUJZUDZRQVNEKzRBRWcvdUNRRFJnUkNnb1JHQTBOR0JFS0NoRVlEUWNMQ1FVRkNRc0hCd3NKQlFVSkN3ZGp4aFVvREJnTGVnc1lEQ2dnQWFEK2dBSEFJUDZnSUNCQUlDRGdDaEVZRFEwWUVRb0tFUmdORFJnUkNtQUZDUXNIQndzSkJRVUpDd2NIQ3drRjRIQVBIZ2s0TndvZUVnQUFCQUFBLytBQ0FBRzRBQnNBSVFBNEFENEFBQVVpTGdJbkxnSTJOeGNPQVI0QkZ4NENOamNYRGdNakF5TTFJelV6QVNjK0FTNEJKeTRDQmdjblBnRWVBUmNlQWdZSEZ5TTFNeFV6QVFBWk1TNHJFeU1tQkI0ZkdSd2FCQ0VmSEVWS1N5QVNFQ0VqSXhLZ0lFQmdBV1laSEJvRUlSOGNSVXBMSUJJbVZWVlBJQ01tQkI0Zk9tQWdRQ0FLRXh3U0kxaGNXeVlVSWs5UlRCOGNJQWdRRlJzS0R3b0ZBVkJBSVA2dEZDSlBVVTBlSENBSUVCVWJHQk1LSkNBaldGeGJKZzFnUUFBQUFBTUFJUC9nQWVBQjRBQXFBRXdBYlFBQUJTSXVBalUwUGdJM0Z3NERGUlFlQWpNeVBnSTFOQzRDSnpjZUF4VVVEZ0lqRVRFaUxnSW5MZ005QVRRK0FqYytBek15SGdJZEFSUU9BaU0xSWc0Q0J3NERIUUVVSGdJWEhnTXpNajRDUFFFMExnSWpBUUF1VWowakZDVTBJQXdjTENBUkhqUkdLQ2hHTkI0UklDd2NEQ0EwSlJRalBWSXVCUWtKQ0FNREJnTUNBZ01HQXdNSUNRa0ZDaEVOQ0FnTkVRb0NBd01DQVFFQ0FRRUJBUUlCQVFJREF3SURCZ1FEQXdRR0F5QWpQVkl1STBBMktnMGVDeVF1Tng0b1JqUWVIalJHS0I0M0xpUUxIZzBxTmtBakxsSTlJd0V3QWdNR0F3TUlDUWtGY0FVSkNRZ0RBd1lEQWdnTkVRcHdDaEVOQ0xBQkFRSUJBUUlEQXdKd0FnTURBZ0VCQWdFQkF3UUdBM0FEQmdRREFBUUFnLy9pQVgwQjRBQXdBRFlBU3dCZ0FBQTNMZ0kyTno0RE15SXlJaklqTWg0Q0Z4NEJEZ0VISno0QkxnRW5MZ01yQVNJT0FnY09BaFlYQnhjbk54YzNGeWNpTGdJM0pqNENNekllQWhjT0F5TTNJZzRDQng0RE16SStBaWMyTGdJamd4b1pBUnNZRGh3Z0lSTUJBUUVCQVJNaElCd09HQnNCR1JvV0ZCWUJGQllKR1JrZERRRU5IUmtaQ1JZVUFSWVVGbnhkRzBOQkhWOFRKQmtRQVFFUUdTUVRGU0liRGdFQkRoc2lGUUVPRnhJSkFRRUpFaGNPREJrUUN3RUJDeEFaREs0YVFrVkNHZzBVRFFjSERSUU5Ha0pGUWhvV0ZqWTVOaFlLRUFzR0Jnc1FDaFkyT1RZV0ZzeVdFR3BxRUZnUEdpTVVGQ01hRHc4YUl4UVVJeG9Qb0FvUkdBME5HQkVLQ2hFWURRMFlFUW9BQUFZQUFBQVFBZ0FCc0FBRUFBa0FEd0FWQUNvQVB3QUFKU0VSSVJFbElSRWhFU1VuQnljM0Z6Y25CeWMzRnljaUxnSTFORDRDTXpJZUFoVVVEZ0lqTlNJT0FoVVVIZ0l6TWo0Q05UUXVBaU1DQVA0QUFnRCtJQUhBL2tBQkpLUlVGMnU4V1VVOEYxTmJxd29SRFFnSURSRUtDaEVOQ0FnTkVRb0RCZ1FEQXdRR0F3TUdCQU1EQkFZREVBR2cvbUFnQVdEK29CVzBWQlpzekJwRVFSWlpYR1VJRFJFS0NoRU5DQWdORVFvS0VRMElRQU1FQmdNREJnUURBd1FHQXdNR0JBTUFBQUFGQUVELzRBSEFBYjBBRFFBYkFESUFTUUJpQUFBRklpNENQUUVoRlJRT0FpTURGUlFlQWpNeVBnSTlBU0VYSWk0Q1BRRTBQZ0l6TWg0Q0hRRVVEZ0lqTlNJT0FoMEJGQjRDTXpJK0FqMEJOQzRDSXljdUFUNEJOejRDRmg4QkJ5Y3VBUTRCQnc0Q0ZoY0hBUUFvUmpRZUFZQWVORVlvb0Jrc09pRWhPaXdaL3NDZ0NoRU5DQWdORVFvS0VRMElDQTBSQ2dNR0JBTURCQVlEQXdZRUF3TUVCZ053RGdzRkV4RVRMakF1RWpFWE1BNGlKQ01PREE4RENBb2FJQjQwUmloZ1lDaEdOQjRCQUVBaE9pd1pHU3c2SVVDd0J3MFNDaUFLRVEwSUNBMFJDaUFLRWcwSFlBTUVCZ01nQXdZRUF3TUVCZ01nQXdZRUE0Y1RLaXdwRUJNVEFSRVNNUll3RGd3QkRnNE5IeUFnRFJNQUFBQUlBQ0QvNEFIZ0FlQUFCQUFKQUE0QUV3QWZBQ1FBS1FBdUFBQTNJelV6RlNjek5TTVZOeU0xTXhVbk16VWpGUVVoTlRNVklSRWhGU00xSVFVak5UTVZKek0xSXhVbE14RWpFWUJnWUVBZ0lFQmdZRUFnSUFHZy9tQWdBV0Qrb0NBQm9QNmdZR0JBSUNBQklDQWdNR0JnSUNBZ1lHQmdJQ0FnOEM4UEFjQVFNTEJnWUNBZ0lIRCtRQUhBQUFZQUFBQURBZnNCdlFBSEFBd0FFUUFXQUJzQUlBQUFKU2MzRnhFSEp6Y0hGd2NuTndjak5UTVZKek0xSXhVbEZ3Y25Oek1YQnljM0FVREpFcGVYRXNsWUVGQVFVSWhnWUVBZ0lBRmJnQmFBRm1vV2dCYUFBNEliWXdGR1lSeC9qeHd3SERDdXdNQWdnSUNMZ0JhQUZoYUFGb0FBQ0FBQUFCQUNBQUd3QUFRQUNRQVJBQmtBSVFBcEFERUFPUUFBSlNFUklSRWxJUkVoRVFFak5UTVZNelV6QnlNMU14VXpOVE1ISXpVekZUTTFNeEVqTlNNVkl6VXpGeU0xSXhVak5UTVhJelVqRlNNMU13SUEvZ0FDQVA0Z0FjRCtRQUdRWUNBZ0lJQmdJQ0FnZ0dBZ0lDQWdJQ0JnZ0NBZ0lHQ0FJQ0FnWUJBQm9QNWdJQUZnL3FBQkFFQWdJRUJBSUNCQVFDQWcvdUFnSUVCQUlDQkFRQ0FnUUFBTEFFRC80UUhBQWQ4QUZnQXZBRWdBVFFCU0FGY0FYQUJoQUdZQWF3QndBQUFsSWk0Q05UTVVIZ0l6TWo0Q05UTVVEZ0lqTnljK0F6MEJOQzRDSnpjZUF4MEJGQTRDQnlNdUF6MEJORDRDTnhjT0F4MEJGQjRDRndjVE14RWpFUmN6RlNNMUZUTVZJelVWTXhVak5TY3pGU00xRlRNVkl6VVZNeFVqTlJjekZTTTFBUUFvUmpRZUlCa3NPaUVoT2l3WklCNDBSaWdTQkJFZUZ3d01GeDRSQkJnb0hSRVJIU2dZSkJnb0hSRVJIU2dZQkJFZUZnME5GaDRSQkFJZ0lGQWdJQ0FnSUNDZ0lDQWdJQ0FnRUtDZ0lCNDFSaWdpT2l3WkdTczZJU2RHTkI1Q0lBSVJHaUFTZ0JFaEdSRURId01YSWlzWGdCZ3JJaGNEQXhjaUt4aUFGeXNpRndNZkF4RVpJUkdBRWlBYUVRSWdBVC8vQUFFQUlDQWdVQ0FnVUNBZ29DQWdVQ0FnVUNBZzRDQWdBQUFBQXdBQS8ra0NBQUhBQUFzQUVBQVZBQUFYRVNFUklUVWhFU0VSTnhjbklSVWhOUlV6RlNNMUFBSUEvckFCTVA1QU14b05BVUQrd09EZ0Z3SFgvckFnQVJEK3AwTVUyaUFnVUNBZ0FBWUFBUC93QWdBQm9BQUpBQTRBRXdBWUFCMEFLUUFBSlNNMU16VWhGU00xSVFjekZTTTFGVE1WSXpVRk14VWpOUlV6RlNNMUJ4RWhFU00xTXpVaEZUY1hBZ0NnZ1A4QUlBRkFvR0JnWUdEKzRNREFnSUJBQVVEUXNQOEFFeHFnSU1BUU1GQWdJRUFnSUJBZ0lFQWdJTkFCWVA4QUlNRGdHaFFBQUFBR0FBRC84QUlBQWFBQUJBQUpBQk1BR0FBZEFDa0FBQUV6RlNNMUZUTVZJelVISXhFaEZTTTFJUlV6SnpNVkl6VVZNeFVqTlJNUklSRWpOVE0xSVJVM0Z3RUF3TUNBZ0dDZ0FVQWcvd0NBWUdCZ1lHQ0FBVURRc1A4QUV4b0JBQ0FnUUNBZ0lBRUFNQkRBa0NBZ1FDQWcvdUFCWVA4QUlNRGdHaFFBQkFBQUFCQUNBQUd3QUFRQUNRQU9BQmdBQUJNaEZTRTFGU0VWSVRVVklSVWhOUVVoRVRNUklSRWhOU0ZnQVVEK3dBRkEvc0FCUVA3QUFhRCtBQ0FCd1A0Z0FnQUJNQ0FnUUNBZ1FDQWdvQUZnL3NBQllDQUFBQVFBQUFBUUFnQUJzQUFFQUFrQURRQVJBQUFsSVJFaEVTVWhFU0VSTnpVWEJ6Y1ZOeWNDQVA0QUFnRCtJQUhBL2tDZ3RMUWdURXdRQWFEK1lDQUJZUDZnVnJSYVdvQk1KaVlBQUFBRkFBQUFFQUlBQWJBQUJBQUpBQTRBRkFBWkFBQWxJUkVoRVNVaEVTRVJOeGNISnpjWEp6Y1hOeGNIRndjbk53SUEvZ0FDQVA0Z0FjRCtRSEljWUJ4Z2JzY091YmtPV1dBY1lCd1FBYUQrWUNBQllQNmc2QkNnRUtCS1pCeGNYQndhb0JDZ0VBQUFBQWtBQUFBd0FnQUJrQUFVQUNrQVBnQlRBR2dBZlFDRkFJMEFsUUFBRXlJdUFqVTBQZ0l6TWg0Q0ZSUU9BaU0xSWc0Q0ZSUWVBak15UGdJMU5DNENJeFVpTGdJMU5ENENNekllQWhVVURnSWpOU0lPQWhVVUhnSXpNajRDTlRRdUFpTVZJaTRDTlRRK0FqTXlIZ0lWRkE0Q0l6VWlEZ0lWRkI0Q016SStBalUwTGdJakpTRTFJVFVoTlNFVklUVWhOU0UxSVJVaE5TRTFJVFVoTUFvUkRRZ0lEUkVLQ2hFTkNBZ05FUW9EQmdRREF3UUdBd01HQkFNREJBWURDaEVOQ0FnTkVRb0tFUTBJQ0EwUkNnTUdCQU1EQkFZREF3WUVBd01FQmdNS0VRMElDQTBSQ2dvUkRRZ0lEUkVLQXdZRUF3TUVCZ01EQmdRREF3UUdBd0hRL29BQllQNmdBWUQrZ0FGZy9xQUJnUDZBQVdEK29BR0FBVEFJRFJFS0NoRU5DQWdORVFvS0VRMElRQU1FQmdNREJnUURBd1FHQXdNR0JBUEFDQTBSQ2dvUkRRZ0lEUkVLQ2hFTkNFQURCQVlEQXdZRUF3TUVCZ01EQmdRRHdBZ05FUW9LRVEwSUNBMFJDZ29SRFFoQUF3UUdBd01HQkFNREJBWURBd1lFQThBZ0lDRGdJQ0FnNENBZ0lBQUFBQVFBRGdBU0FmSUJ0Z0FFQUFrQUR3QVZBQUFsSnpjWEJ5Y1hOeWNIRnljM0Z6Y1hCeWMzRnpjWEFRRHk4dkx5cnE2dXJxNnU1dzdaMlE3bjV3N1oyUTZ5Z29LQ2dvSmVYbDVlMEhJY2Ftb2N4SEljYW1vY0FBQUVBQUQvNEFJQUFlQUFEUUF1QUVNQVdBQUFGeU0xTnhjSEZUTTFNemNYQnlNM05USStBalUwTGdJaklnNENGU00wUGdJek1oNENGUlFPQWlNMUlpNENOVFErQWpNeUhnSVZGQTRDSXpVaURnSVZGQjRDTXpJK0FqVTBMZ0lqa0pDMEdLeFFTVnNZWlRmUUdpOGpGQlFqTHhvYUx5TVVJQmtzT2lFaE9pd1pHU3c2SVEwWUVRb0tFUmdORFJnUkNnb1JHQTBIQ3drRkJRa0xCd2NMQ1FVRkNRc0hJR2JGRnJzNlFHb1Vkb0FnRkNNdkdob3ZJeFFVSXk4YUlUb3NHUmtzT2lFaE9pd1pZQW9SR0EwTkdCRUtDaEVZRFEwWUVRcGdCUWtMQndjTENRVUZDUXNIQndzSkJRQUFBQWNBQVAvZ0FnQUI0QUFIQUF3QUVnQVhBQjhBSkFBcEFBQUZJUkV6RVNFUk13VVhCeWMzRnljM0Z6Y1hCeGNISnpjM0l6VWhGU00xSVFVekZTTTFGVE1WSXpVQ0FQNEFJQUhBSVA2U0hHQWNZRzdIRHJtNURsbGdIR0FjVWlEK3dDQUJnUDdBY0hEZzRDQUJrUDZRQVhDSUVLQVFvRXBrSEZ4Y0hCcWdFS0FRU0pDUXNFQWdJRUFnSUFBQUJRQUFBQ0FDQUFHZ0FDQUFRUUJjQUhnQWhRQUFKUzRESXpBaU1DSXhJZzRDQnljK0F6TXlNRG9CTVRJZUFoY0hCeUl1QWljM0hnTXpNREl3TWpFeVBnSTNGdzRESXlJd0tnRXhOeUl1QWpVMFBnSXpNaDRDRlJRT0FnY09BeXNCTlNJT0FoVVVIZ0l6RlRjeVBnSTNQZ00xTkM0Q0l3YzBQZ0l6RnlJT0FoVUhBZUFFSmp4T0t3RUJMRTQ4SmdNZ0JDdEVXVElCQVFFeFdFVXNCU0RoTVZoRkxBVWdCQ1k4VGlzQkFTeE9QQ1lESUFRclJGa3lBUUVCQVJvdkloVVVJaTRiR3k0akZRVUpEZ2tKRlJZWkRRRVVJeG9QRHhzaUZBRUpFeEVRQmdjTEJ3TVBHaU1VUUFvUkZ3MEJCd3NKQlNEdUh6VW5GeGNvTkI4RUpUOHZHeHN2UHlVRXpoc3ZQeVVFSHpVbkZ4Y29OQjhFSlQ4dkcwQVVJaThhR2k4akZSUWlMeG9OR0JnVkNRa09DZ1hnRUJvakZCTWpHZzhRRUFRSEN3Y0hEeElTQ2hNakdnOWhEaGNTQ2lBRkNRd0dBUUFBQUFVQUFQL3dBZ0FCMEFBSkFCTUFLd0E4QUVJQUFBVWhFU0VWSXhFaE5UTUhMd0UzRndjZkFUY1hOeWMzUGdNek1oNENGeDRERlJRT0FnOEJKeGMwTmp3Qk5UUXVBaWN1QWlJSEFUY1hCemNYQWdEK0FBRUE0QUhBSU80ZVBib1dtaDhQbWhZWFd3d0VDd3NOQmdZTkN3c0VCUWNGQWdJRkJ3VUxLaWNCQVFNREFnTUlDQWdFL3Jzc0hoZEhDaEFCc0NEK2tPQnBQUjY1RnBvUEg1b1dGbHNMQlFjRkFnSUZCd1VFQ3dzTkJnWU5Dd3NFREZnbkFRSUNBZ0VEQmdZRkF3TUVBZ0grbElRS1J4Y2VBQVVBQUFBUUFnQUJzQUFUQUNnQVBRQkNBRThBQUNVak5UTVJJeWNqQnlNUk14VWpFVE0zTXhjekFTSXVBalUwUGdJek1oNENGUlFPQWlNUklnNENGUlFlQWpNeVBnSTFOQzRDSXpjekZTTTFCeU0wUGdJekZTSU9BaFVDQUlCZ2FUQ09NR2xnZ0hjd3NqQjMvd0FlTkNjWEZ5YzBIaDQwSnhjWEp6UWVGeWtlRWhJZUtSY1hLUjRTRWg0cEY2QWdJTkFnRFJVZEVRb1JEUWdRSUFFUVVGRCs4Q0FCVUZCUS9yQVhKelFlSGpRbkZ4Y25OQjRlTkNjWEFRQVNIaWtYRnlrZUVoSWVLUmNYS1I0U0VDQWdnQkVkRlEwZ0NBMFJDZ0FBQUFBRkFBQUFEUUlBQWJBQU5nQlBBR2dBYlFCekFBQWxOVEkrQWpVMExnSWpJZzRDQnh3REZSd0RGU004QXpVOEF6VStBek14TXg0REZSUU9BaU1uSXp3RFBRSStBek1WSWc0Q0J4d0RGUWNqSWk0Q05UUStBak1WSWc0Q0ZSUWVBanNCRlRjekZTTTFGeWMzRnpjWEFWQWVOQ2NYRnlZMEhod3lLQmtDSUFNZU1EMGlBaVJBTHhzY01FQWtVQ0FDRXg4bkZnOGNGZzhCVURBYUx5TVVGQ012R2hRakdnOFBHaU1VTUVBZ0lCQTdGaVVsRmxBZ0Z5YzBIaDQwSnhjVkl5OGJBUUlDQWdFQkFRSUJBUUVCQVFFQkFRTURBd0VpT2lzWkFSd3ZRQ1FrUURBY3NBRUNBUUlCQWdJVUpSd1FJQXdUR1E4QkF3SUNBYkFVSXk4YUdpOGpGQ0FQR2lNVUZDTWFEeUJRZ0lDVE54Z2pJeGdBQUFBQUJnQUFBQ0FDQUFHZ0FCUUFLUUEyQUQ0QVJnQkxBQUFsSWk0Q05UUStBak15SGdJVkZBNENJeEVpRGdJVkZCNENNekkrQWpVMExnSWpCeU0wUGdJekZTSU9BaFVISXhFekZTTVJNd1VqTlRNUkl6VXpKVE1WSXpVQkFDUkFNQndjTUVBa0pFQXdIQnd3UUNRZU5DY1hGeWMwSGg0MEp4Y1hKelFlVUNBU0hpa1hFUjBWRFZCZ1lFQkFBYUJnUUVCZy9pQkFRQ0FjTUVBa0pFQXdIQnd3UUNRa1FEQWNBVUFYSnpRZUhqUW5GeGNuTkI0ZU5DY1hrQmNwSGhJZ0RSVWRFYkFCUUNEL0FDQWdBUUFnUUNBZ0FBSUFBQUF3QWdBQmtBQVlBR1VBQUNValBBTTlBajRETXhVaURnSUhIQU1WRnlNaUxnSTFORDRDTXhVaURnSVZGQjRDT3dFeVBnSTFOQzRDSXlJT0FnY2NBeFVjQXhValBBTTFQQU0xUGdNek1UTWVBeFVVRGdJakFRQWdBaE1mSnhZUEhCWVBBVkRRR2k4akZCUWpMeG9VSXhvUER4b2pGTkFlTkNjWEZ5WTBIaHd5S0JrQ0lBTWVNRDBpQWlSQUx4c2NNRUFrNEFFQ0FRSUJBZ0lVSlJ3UUlBd1RHUThCQXdJQ0FiQVVJeThhR2k4akZDQVBHaU1VRkNNYUR4Y25OQjRlTkNjWEZTTXZHd0VDQWdJQkFRRUNBUUVCQVFFQkFRRURBd01CSWpvckdRRWNMMEFrSkVBd0hBQUFCUUJBLytBQndBSGdBQTBBR3dBeUFFa0FaQUFBQlNJdUFqMEJJUlVVRGdJakF4VVVIZ0l6TWo0Q1BRRWhGeUl1QWowQk5ENENNekllQWgwQkZBNENJelVpRGdJZEFSUWVBak15UGdJOUFUUXVBaU0zSXpVMExnSWpJZzRDSFFFak5UUStBak15SGdJZEFRRUFLRVkwSGdHQUhqUkdLS0FaTERvaElUb3NHZjdBb0FvUkRRZ0lEUkVLQ2hFTkNBZ05FUW9EQmdRREF3UUdBd01HQkFNREJBWURnQ0FQR2lNVUZDTWFEeUFVSXk4YUdpOGpGQ0FlTkVZb1lHQW9SalFlQVFCQUlUb3NHUmtzT2lGQXNBY05FZ29nQ2hFTkNBZ05FUW9nQ2hJTkIyQURCQVlESUFNR0JBTURCQVlESUFNR0JBT1FSUk1oR1E0T0dTRVRSVVVaTFNJVEV5SXRHVVVBQXdBQS8rQUNBQUhnQUNBQUtnQXlBQUFYSWk0Q05UUStBak1WSWc0Q0ZSUWVBak15UGdJMU14UU9BaU1CSVJFek1oNENIUUVuTXk0REp4WGdMbEk5SXlNOVVpNG9SalFlSGpSR0tDaEdOQjRnSXoxU0xnRWcvd0FRTGxkREtPQy9BeUkwUWlRZ0l6MVNMaTVTUFNNZ0hqUkdLQ2hHTkI0ZU5FWW9MbEk5SXdFQUFRQW9RMWN1RUNBa1FqUWlBNzhBQlFDTi8rQUJjd0d4QUNVQUtnQXZBRVlBVXdBQUpTYzNQZ0UwSmljdUFTSUdCdzRCRkJZZkFnY25MZ0UwTmpjK0FUSVdGeDRCRkFZUEFRY1hCeWMzRlJjSEp6Y0hJaTRDTlRNVUhnSXpNajRDTlRNVURnSWpBeU0wUGdJekZTSU9BaFVCVHgwcEVoTVRFaE12TWk4VEVoTVRFZ0luSFNRWEZoZ1hGenMrT3hjWEdCWVhKQkVFZ0FTQUJJQUVnRDRLRWcwSElBSUVCZ1FEQmdRRElBZ05FUXBBSUE4YUl4UU5HQkVLaVE1T0V5OHlMeElURXhNVEVpOHlMeE1CVFE1SUZ6czlPaGNZRnhjWUZ6bzlPeGRJQ1NBUEh4QXdJQThmRUhBSURSRUtBd1lFQXdNRUJnTUtFUTBJQVdBVUl4b1BJQW9SR0EwQUFBQUZBQUQvOEFJQUFkQUFCQUFKQUNBQVBRQkZBQUFGSVRVaEZTVWhOU0VWTnlJdUFqVXpGQjRDTXpJK0FqVXpGQTRDSXpjak5UUXVBaU1pRGdJZEFTTTFNelErQWpNeUhnSVZNeFVYSXpVaEZTTTFJUUlBL2dBQ0FQNGdBY0QrUU9BS0VRMElJQU1FQmdNREJnUURJQWdORVFwd1FBZ05FUW9LRVEwSVFDQU5GUjBSRVIwVkRTQ1FJUDVBSUFJQUVORFFJSkNRWUFnTkVRb0RCZ1FEQXdRR0F3b1JEUWp3SUFvUkRRZ0lEUkVLSUNBUkhSVU5EUlVkRVNDQVFFQmdBQUFOQUFBQUVBSUFBYkFBQkFBSkFBNEFFd0FZQUIwQUlnQW5BQ3dBTVFBNUFENEFRd0FBRXlFVklUVVJJUlVoTlJNekZTTTFPd0VWSXpVN0FSVWpOUk1qTlRNVkp6TTFJeFUzTXhVak5TVWhOU0VWSlNFMUlSVUJJVFV6RlNFMU13VXpGU00xRlRNVkl6VVFBZUQrSUFIZy9pQXdJQ0F3SUNBd0lDQWdnSUJnUUVDQWNIQUJJUDRBQWdEK0lBSEEva0FCNFA0QUlBSEFJUDdnNE9EZzRBR3dJQ0QrZ0NBZ0FWQWdJQ0FnSUNEKzRLQ2dJR0JnZ0NBZ01JQ0FJRUJBL3NEdzBPQlFJQ0JBSUNBQUFBQUpBQUFBQUFJQUFjQUFCQUFKQUE0QUV3QWZBQ1FBS1FBdUFETUFBQk1qTlRNVkp6TTFJeFVYSXpVekZTY3pOU01WRXlFUk14VWpFU0VSSXpVeklUTVZJelVISVJVaE5SVWhGU0UxSnlFVklUWFFVRkF3RUJEZ1VGQXdFQkN3L2dCZ1FBSEFRR0QrOENBZ2NBRUEvd0FCQVA4QWNBSGcvaUFCUUlDQUlFQkFJSUNBSUVCQS9xQUJrQ0Qrc0FGUUlDQWcwQ0FnUUNBZ29DQWdBQUFCQUFBQUFRQUFpV3AvSzE4UFBQVUFDd0lBQUFBQUFNK1pERDRBQUFBQXo1a01Qdi85Lzl3Q0JBSHBBQUFBQ0FBQ0FBQUFBQUFBQUFFQUFBSGcvK0FBQUFJQS8vMy8vQUlFQUFFQUFBQUFBQUFBQUFBQUFBQUFBQURNQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUlBQUFBQ0FBQWdBZ0FBQUFJQS8vOENBQUFPQWdBQWZnSUFBQUFDQUFBREFnQUFBQUlBQUFBQ0FBQXdBZ0FBS0FJQUFBQUNBQUFBQWdBQUFBSUFBREFDQVAvOUFnQUFBQUlBQUFBQ0FBQUFBZ0FBQUFJQUFBZ0NBQUFBQWdBQUFBSUFBRUFDQUFBZ0FnQUFJQUlBQUJBQ0FBQk9BZ0FBZ0FJQUFGQUNBQUFBQWdELy9RSUFBRWdDQUFBQUFnQUFMUUlBQUVBQ0FBQ0FBZ0FBQUFJQUFHMENBQUFBQWdBQUFBSUFBQUFDQUFBQUFnQUFBQUlBQUdBQ0FBQkFBZ0FBQUFJQUFBQUNBQUFBQWdBQVFBSUFBSUFDQUFBQUFnQUFJQUlBQUFBQ0FBQUFBZ0FBQUFJQUFJQUNBQUJ0QWdBQVFBSUFBQVVDQUFCd0FnQUFBQUlBQUFBQ0FBQmdBZ0FBQUFJQUFBQUNBQUFBQWdBQWNBSUFBQUFDQUFBQUFnQUFVQUlBQUZBQ0FBQUFBZ0FBQUFJQUFBQUNBQUJRQWdBQVFBSUFBQUFDQUFBZ0FnQUFRZ0lBQUlRQ0FBQWdBZ0FBQUFJQUFBQUNBQUFBQWdBQUlBSUFBRUFDQUFBQUFnQUFBQUlBQUFBQ0FBQUFBZ0FBQUFJQUFIQUNBQUNnQWdBQVVBSUFBQUFDQUFCTEFnQUFOQUlBQUNBQ0FBQUxBZ0FBUUFJQUFDb0NBQUFBQWdBQU1BSUEvLzhDQUFBQUFnQUFBQUlBQUJBQ0FBQXdBZ0FBQlFJQUFBQUNBQUFjQWdBQUFnSUFBQ29DQUFBQUFnQUFKUUlBQUFrQ0FBQU9BZ0FBQUFJQUFBQUNBQUJRQWdBQUFBSUFBQ29DQUFBQUFnQUFCQUlBQUFBQ0FBQUFBZ0FBRUFJQUFBQUNBQUFBQWdBQUFBSUFBQ0FDQUFBZ0FnRC8vZ0lBQUFBQ0FQLytBZ0FBUUFJQUFBQUNBQUFnQWdBQWZ3SUFBRUFDQUFCQUFnQUFNQUlBQUFBQ0FBQU5BZ0FBQUFJQUFCQUNBQUFBQWdBQUFBSUFBQUFDQUFBQUFnQUFjQUlBQUFBQ0FBQUFBZ0QvL2dJQUFDNENBQUFBQWdBQUFBSUFBQUFDQUFBSkFnQUFBQUlBQUFBQ0FBQUZBZ0FBQUFJQUFBQUNBQUFBQWdBQVRRSUFBQ0FDQUFBQUFnQUFJQUlBQUlNQ0FBQUFBZ0FBUUFJQUFDQUNBQUFBQWdBQUFBSUFBRUFDQUFBQUFnQUFBQUlBQUFBQ0FBQUFBZ0FBQUFJQUFBQUNBQUFBQWdBQURnSUFBQUFDQUFBQUFnQUFBQUlBQUFBQ0FBQUFBZ0FBQUFJQUFBQUNBQUFBQWdBQVFBSUFBQUFDQUFDTkFnQUFBQUlBQUFBQ0FBQUFBQUFBQUFBS0FCUUFIZ0NBQVJRQlZnR2FBZHdDSEFKNkF3d0RXQU9PQThnRVdnVFVCVmdGakFaQ0J2SUhPQWdTQ0ZvSW9na2dDV2dKdGdvQUNvSUxVQXYyREdZTXhnMG9EWFlOdUE1WURxb1BLQStDRCt3UU9oQ1VFU1lSVWhIcUVpZ1NuaE1LRTFBVHBoUVVGTHdWQ2hXMEZmUVdZQmFpRndvWFBCZVlHQUFZUWhpNEdPNFphQm8wR200YW5Cc0VHOG9jSUJ5WUhUZ2Q2QjVxSHdnZk9oLzZJRVFndUNEMklTQWhqQ0lDSWlRaW1DTCtJeklqaWlRQUpJb2svaVYwSmNZbUdpWnFKckluYWllU0tFb282Q2xxS2RJcVdpcklLeklyb0N3TUxEZ3NhQzBDTFhRdDVDNWlMeGd2T0MrY0w5SXdPakNTTVN3eDBqSklNcFF5N0ROdU03NDBHRFM2Tld3MkdqWnNOcEkyMURjU04wSTNuRGZ1T0M0NFpEa3lPWkk2QURwYU9yWTdJanV3UEE0OGFqek1QV28rUkQ4UVAxNC96a0JHUUhKQTZrRThRY2hDZ0VQU1JDUkVzRVZtUm5oSEFFZVVTQlJJaEVqd1NWSko0a3BzU3M1TFdFdWVTOWhNS2t6Q1RPaE5KazFrVFpCTnRrM3FUckJPM0U5U1Q1aFFRbENvVVJaUm9sSUtVb0JUQkZOTVU4aFVLRlNPVk53QUFBQUJBQUFBekFEK0FCUUFBQUFBQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURnQ3VBQUVBQUFBQUFBRUFJQUFBQUFFQUFBQUFBQUlBRGdDR0FBRUFBQUFBQUFNQUlBQTJBQUVBQUFBQUFBUUFJQUNVQUFFQUFBQUFBQVVBRmdBZ0FBRUFBQUFBQUFZQUVBQldBQUVBQUFBQUFBb0FLQUMwQUFNQUFRUUpBQUVBSUFBQUFBTUFBUVFKQUFJQURnQ0dBQU1BQVFRSkFBTUFJQUEyQUFNQUFRUUpBQVFBSUFDVUFBTUFBUVFKQUFVQUZnQWdBQU1BQVFRSkFBWUFJQUJtQUFNQUFRUUpBQW9BS0FDMEFGTUFkQUJ5QUc4QWF3QmxBQzBBUndCaEFIQUFMUUJKQUdNQWJ3QnVBSE1BVmdCbEFISUFjd0JwQUc4QWJnQWdBREVBTGdBd0FGTUFkQUJ5QUc4QWF3QmxBQzBBUndCaEFIQUFMUUJKQUdNQWJ3QnVBSE5UZEhKdmEyVXRSMkZ3TFVsamIyNXpBRk1BZEFCeUFHOEFhd0JsQUMwQVJ3QmhBSEFBTFFCSkFHTUFid0J1QUhNQVVnQmxBR2NBZFFCc0FHRUFjZ0JUQUhRQWNnQnZBR3NBWlFBdEFFY0FZUUJ3QUMwQVNRQmpBRzhBYmdCekFFY0FaUUJ1QUdVQWNnQmhBSFFBWlFCa0FDQUFZZ0I1QUNBQVNRQmpBRzhBVFFCdkFHOEFiZ0FBQUFNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQT0pIGZvcm1hdCgndHJ1ZXR5cGUnKSwKCQkgdXJsKGRhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGQwOUdSazlVVkU4QUFJUDRBQW9BQUFBQWc3QUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCRFJrWWdBQUFBOUFBQWZRNEFBSDBPMnk0SkZrOVRMeklBQUg0RUFBQUFZQUFBQUdBSUl2MTlZMjFoY0FBQWZtUUFBQUJNQUFBQVRCcFZ6UjVuWVhOd0FBQitzQUFBQUFnQUFBQUlBQUFBRUdobFlXUUFBSDY0QUFBQU5nQUFBRFlBVWxrK2FHaGxZUUFBZnZBQUFBQWtBQUFBSkFQa0FxbG9iWFI0QUFCL0ZBQUFBekFBQUFNd2tRY1VKMjFoZUhBQUFJSkVBQUFBQmdBQUFBWUF6RkFBYm1GdFpRQUFna3dBQUFHS0FBQUJpcHhtYkFwd2IzTjBBQUNEMkFBQUFDQUFBQUFnQUFNQUFBRUFCQVFBQVFFQkVWTjBjbTlyWlMxSFlYQXRTV052Ym5NQUFRSUFBUUE2K0J3QytCc0QrQmdFSGdvQUdWUC9pNHNlQ2dBWlUvK0xpd3dIaUdmNG1QaDlCUjBBQUFZSkR4MEFBQVlPRVIwQUFBQUpIUUFBZlFVU0FNMENBQUVBRVFBaEFDTUFKUUFvQUMwQU1nQTNBRHdBUVFCR0FFc0FVQUJWQUZvQVh3QmtBR2tBYmdCekFIZ0FmUUNDQUljQWpBQ1JBSllBbXdDZ0FLVUFxZ0N2QUxRQXVRQytBTU1BeUFETkFOSUExd0RjQU9FQTVnRHJBUEFBOVFENkFQOEJCQUVKQVE0QkV3RVlBUjBCSWdFbkFTd0JNUUUyQVRzQlFBRkZBVW9CVHdGVUFWa0JYZ0ZqQVdnQmJRRnlBWGNCZkFHQkFZWUJpd0dRQVpVQm1nR2ZBYVFCcVFHdUFiTUJ1QUc5QWNJQnh3SE1BZEVCMWdIYkFlQUI1UUhxQWU4QjlBSDVBZjRDQXdJSUFnMENFZ0lYQWh3Q0lRSW1BaXNDTUFJMUFqb0NQd0pFQWtrQ1RnSlRBbGdDWFFKaUFtY0NiQUp4QW5ZQ2V3S0FBb1VDaWdLUEFwUUNtUUtlQXFNQ3FBS3RBcklDdHdLOEFzRUN4Z0xMQXRBQzFRTGFBdDhDNUFMcEF1NEM4d0w0QXYwREFnTUhBd3dERVFNV0F4c0RJQU1sQXlvREx3TTBBemtEUGdOREEwZ0RUUU5TQTFjRFhBTmhBMllEYXdOd0EzVURlZ04vQTRRRGlRT09BNU1EbUFPZEE2SURwd09zQTdFRHRnTzdBOEFEeFFQS0E4OEQxQVBaQTk0RDR3UG9BKzBEOGdQM0Evd0VBUVFHQkFzRUVGTjBjbTlyWlMxSFlYQXRTV052Ym5OVGRISnZhMlV0UjJGd0xVbGpiMjV6ZFRCMU1YVXlNSFZGTmpBd2RVVTJNREYxUlRZd01uVkZOakF6ZFVVMk1EUjFSVFl3TlhWRk5qQTJkVVUyTURkMVJUWXdPSFZGTmpBNWRVVTJNRUYxUlRZd1FuVkZOakJEZFVVMk1FUjFSVFl3UlhWRk5qQkdkVVUyTVRCMVJUWXhNWFZGTmpFeWRVVTJNVE4xUlRZeE5IVkZOakUxZFVVMk1UWjFSVFl4TjNWRk5qRTRkVVUyTVRsMVJUWXhRWFZGTmpGQ2RVVTJNVU4xUlRZeFJIVkZOakZGZFVVMk1VWjFSVFl5TUhWRk5qSXhkVVUyTWpKMVJUWXlNM1ZGTmpJMGRVVTJNalYxUlRZeU5uVkZOakkzZFVVMk1qaDFSVFl5T1hWRk5qSkJkVVUyTWtKMVJUWXlRM1ZGTmpKRWRVVTJNa1YxUlRZeVJuVkZOak13ZFVVMk16RjFSVFl6TW5WRk5qTXpkVVUyTXpSMVJUWXpOWFZGTmpNMmRVVTJNemQxUlRZek9IVkZOak01ZFVVMk0wRjFSVFl6UW5WRk5qTkRkVVUyTTBSMVJUWXpSWFZGTmpOR2RVVTJOREIxUlRZME1YVkZOalF5ZFVVMk5ETjFSVFkwTkhWRk5qUTFkVVUyTkRaMVJUWTBOM1ZGTmpRNGRVVTJORGwxUlRZMFFYVkZOalJDZFVVMk5FTjFSVFkwUkhWRk5qUkZkVVUyTkVaMVJUWTFNSFZGTmpVeGRVVTJOVEoxUlRZMU0zVkZOalUwZFVVMk5UVjFSVFkxTm5WRk5qVTNkVVUyTlRoMVJUWTFPWFZGTmpWQmRVVTJOVUoxUlRZMVEzVkZOalZFZFVVMk5VVjFSVFkxUm5WRk5qWXdkVVUyTmpGMVJUWTJNblZGTmpZemRVVTJOalIxUlRZMk5YVkZOalkyZFVVMk5qZDFSVFkyT0hWRk5qWTVkVVUyTmtGMVJUWTJRblZGTmpaRGRVVTJOa1IxUlRZMlJYVkZOalpHZFVVMk56QjFSVFkzTVhWRk5qY3lkVVUyTnpOMVJUWTNOSFZGTmpjMWRVVTJOeloxUlRZM04zVkZOamM0ZFVVMk56bDFSVFkzUVhWRk5qZENkVVUyTjBOMVJUWTNSSFZGTmpkRmRVVTJOMFoxUlRZNE1IVkZOamd4ZFVVMk9ESjFSVFk0TTNWRk5qZzBkVVUyT0RWMVJUWTROblZGTmpnM2RVVTJPRGgxUlRZNE9YVkZOamhCZFVVMk9FSjFSVFk0UTNWRk5qaEVkVVUyT0VWMVJUWTRSblZGTmprd2RVVTJPVEYxUlRZNU1uVkZOamt6ZFVVMk9UUjFSVFk1TlhWRk5qazJkVVUyT1RkMVJUWTVPSFZGTmprNWRVVTJPVUYxUlRZNVFuVkZOamxEZFVVMk9VUjFSVFk1UlhWRk5qbEdkVVUyUVRCMVJUWkJNWFZGTmtFeWRVVTJRVE4xUlRaQk5IVkZOa0UxZFVVMlFUWjFSVFpCTjNWRk5rRTRkVVUyUVRsMVJUWkJRWFZGTmtGQ2RVVTJRVU4xUlRaQlJIVkZOa0ZGZFVVMlFVWjFSVFpDTUhWRk5rSXhkVVUyUWpKMVJUWkNNM1ZGTmtJMGRVVTJRalYxUlRaQ05uVkZOa0kzZFVVMlFqaDFSVFpDT1hWRk5rSkJkVVUyUWtKMVJUWkNRM1ZGTmtKRWRVVTJRa1YxUlRaQ1JuVkZOa013ZFVVMlF6RjFSVFpETW5WRk5rTXpkVVUyUXpSMVJUWkROWFZGTmtNMmRVVTJRemNBQUFJQmlRREtBTXdDQUFFQUJBQUhBQW9BRFFDWkFVY0Jxd0lMQW5RQzJBTmdCQTRFZ3dUZEJUMEY2Z2FWQjFNSG9naDFDVGtKd0FxL0MwY0xzQXczREtjTkh3MTNEZzRQRHcvU0VHVVE0QkY4RWZZU1NCTUdFNE1VS1JTTEZSSVZpaFg5RnRvWEloZjZHRlVaRHhtWkdnSWFpUnMwSEJvY2poMTlIZG9lYVI3YUgzVWZ6U0JTSU9naFlTSHZJbEVpL3lQaUpFZ2tseVV5SmlVbW15YzJKL1FveFNsL0trSXFteXVNTEJFc3VTMGtMVzB1RVM2UkxzOHZlVEFLTUd3dzJqRjRNb0V6WFRRNE5NZzFTRFhJTmpZM05EZDZPR0k1SXpuRk9qMDYyRHRlUEFBOG56MDNQWWs5Mmo2TFAwby8zVUI1UVYxQmtrSUlRbHRDMVVOSlJBRkV4MFZUUmJwR1IwYllSMnBINlVpblNZWktXVXI2U3psTHJrd2dUSGxORTAyMVRoaE9lMDk1VC9OUWVWRVJVYXRTUkZNU1U1WlVGbFM0VllSV2dGZHlXQTlZcTFsTVdacGFMMXFNVzBwY0cxM0NYalZlL0YvTFlRbGhwV0pzWXpGandHUlZaTXRsZG1ZS1pvaG5NV2V1YUJab3JHbVVhZFJxUzJyRGF3NXJTbXVkYkk5czRHMXZiZXh1d1c5TGIrRndvSEVwY2NWeWMzTGFjM0IwQUhUSGRWdjhsQTc4bEE3OGxBNzdsQTczbEdzVit5R0wrd2YzQjR2M0lZdjNJZmNIOXdmM0lZdjNJWXYzQi9zSGkvc2hpL3NoK3dmN0Ivc2hpd2lMK0hRVit4Q0xKeWVMK3hDTCt4RHZKL2NRaS9jUWkrL3ZpL2NRaS9jUUorLzdFSXNJcFB3OUZhSDNKQ08veWRoMWt6ZDNWN09lcExOdDJwM1VjVW82NUY1L084UzlyUGNOcW9Obyt4Y0YrNGhQRld1UmxzSktrWTZyNzRFRkR2ZDBxeFZLaTBta1diMElvcUlGNGpQM0lvdmo0K0xpaS9jaU5PSUlvYUlGN3llTCt6WW5KMWxaU25KSml3aUx5eFVoaXpYaGkvV0w5ZUhoOVl2MWkrRTFpeUdMSVRVMUlZc0lpL2YwRlRPTFEwT0xNNHN6MDBQamkrT0wwOU9MNDR2alE5TXppd2c3L0ZRVjl6U0xpMnY3Tkl1THF3WGk5eWtWbS9jRlJyR3p3SVdPVTMxbnFhQ2pvbmk5bDhKMllGSERiSVZmbzZLZjM2dUVkQzRGK3pGaUZXdVFrYTFuajQrcjBZTUZEdmlVOTlRVi9KU0xpK3Y0bEl1TEt3WDhkS3NWK0ZTTGk2djhWSXVMYXdYM3BQdlVGU3VMaTZzRmk5cEt6RHlMQ0V1TGk5dXJpNHRicTRzRjdJdmFQSXNxQ0l1THE0c0ZpK3phMnV5TENLdUxpN3VyaTRzN1M0c0ZQSXRLU29zOENJdHJCUTc0TkdzVis5U0xpL2ZVcTR1TCs3VDNsSXVMOTdTcml3WDhKRmtWZXZjKzl3RFQ4SXVMZXdXTGNhQjFwb3VsaTZHaGk2VUlpNXZ3aS9jQVEzcjdQbXlQbWZjcU44Tk9pd1dFWjJwdlpZdGtpMnVuZzY4SVQ0czNVNXI3S211SEJRNzRaUGdFRmZ3MGk0dnIrRFNMaXlzRi9CU3JGZmYwaTR1cisvU0xpMnNGdHZ0VUZVYU1qS3U0aXFqZ3FZRUY5K2Y3M3hYN1VvdFg5ekZYK3pIN1VvdXQ5K2FyaDIzN3d2Y1dpOWYzZHRmN2R2Y1dpMjMzd3F1UEJVRDdCaFZuOXFtVnFEYTRqSXhyQlE3MzhQZlVGZnM4aTJQM05QZU1pMlA3TkFYN0pLc1Y5d3lMbyt2N1BJdWpLd1cvL0JZVit4YlZ2ZmVQcTRWZCszbnBWZXJDYlBkNXE0K3MrNDhGTi9jTkZaRnJLM3VGcSt1YkJZdExGWkZySzN1RnErdWJCWXYzRkJXUmF5dDdoYXZybXdVTzk1UnJGZnNoaS9zSDl3ZUw5eUdMOXlIM0IvY0g5eUdMOXlHTDl3ZjdCNHY3SVl2N0lmc0grd2Y3SVlzSWkvaDBGZnNRaXljbmkvc1FpL3NRN3lmM0VJdjNFSXZ2NzR2M0VJdjNFQ2Z2K3hDTENKdjhOQlZyaXdXTDdEemFLb3NJaTZzRjl3ZUw2QzZMK3djSTkwVDNSQlg3QjRzdTZJdjNCd2lyaXdXTEt0bzg3SXNJaTJzRkR2ZDA5MllWcTRkcisyUnJqNnYzWkFYYnJCVzcrNFJyaFZ2M2hLdVJCZnRwVkJWZjl3ejM4ZmNSdC9zTSsvSDdFUVdJOEJXaFR2ZTE4M1hIKzdVa0JmZ1NyaFdBcVFXVGpwR1JqNUtQazR1VWlKT0lrNFdSaEkrRGo0S0xnNGdJZ0trRm01R2RpcHFFbTRTV2ZwRjdrWHVLZVlSOGhIdCtnSHVGQ1B3Nit4d1ZkNHQ1bDRTZmdxU1lwcVNVQ0padEJZZUtoNGlLaDRtSGk0ZU1oNDZEbElhVWpnaVZiUVdHaVlhS2hZc0lEdmVVYXhYN0lZdjdCL2NIaS9jaGkvY2g5d2YzQi9jaGkvY2hpL2NIK3dlTCt5R0wreUg3Qi9zSCt5R0xDSXY0ZEJYN0VJc25KNHY3RUl2N0VPOG45eENMOXhDTDcrK0w5eENMOXhBbjcvc1Fpd2pyKzlRVisxU0xpL2NVcTR1TEsvYzBpd1dMcXhWcmk0dnIrelNMaTZ2M1ZJc0ZEdmdNOTJRVmRhTDNFdmNTaStZd2kvc1MreEowb2ZjYzl4ejNISXVMK3h3RiszTDcyUlg3Zy9lRDl6akdsbTM3Q1dIM1BQczh0ZmNKcVlBRisvSDdheFhkOTB1b2Zsd2g5YnFZYmdYWTkxMFZvblV6TDNTaTQrWUZEdmZrYXhYN05JdUw5L1NyaTR2NzFPdUxpL2ZVcTRzRjl4VDd0QlVyaTR1cnk0dUx4ajczRWFhYjNmc1lCZnZVSnhVcmk0dnYzZmNZcG5zKyt4R0xVTXVMQmV2M1ZCV3JpNHY3ZEd1TGkvZDBCYy94RlZmTFYwdHpuOWZyMXlzRkR2aHNheFg4Ukl1TCtKVDRSSXVML0pRRi9DU3JGZmdFaTR2NFZQd0VpNHY4VkFYM1JLc1ZSSXRTeEl2U2k5TEV4TktMMG92RVVvdEVpMFJTVWtTTENJdjNkQlZXaTJCZ2kxYUxWclpnd0l2QWk3YTJpOENMd0dDMlZvc0lpOHNWY1l0MW9ZdWxpNldob2FXTHBZdWhkWXR4aTNGMWRYR0xDSXZMRllLTGhJU0xnb3VDa29TVWk1U0xrcEtMbEl1VWhKS0Npd2hyKzNRVmE0c0ZpNjZvcUs2TENJdHJCWG1MZlgyTGVRZ08rSlJyRmZ5VWk0djRsUGlVaTR2OGxBWDhkS3NWK0ZTTGkvaFUvRlNMaS94VUJmZDB1eFVxaXp6YWkreUw3TnJhN0l2c2k5bzhpeXFMS2p3OEtvc0lpL2ZVRlR5TFNrcUxQSXM4ekVyYWk5cUx6TXlMMm92YVNzdzhpd2hiK3lRVmE0c0ZpN2V2cjdlTENJdHJCWEdMZFhXTGNRajNaUGRVRmF1TGkydHJpNHVyQmZ2MGl4V3JpNHRyYTR1THF3WDM5UHYwRmF1TGkydHJpNHVyQmZ2MGl4V3JpNHRyYTR1THF3VU85OGYzSkJVbGkydnYzc25lVEdzb0JUeXJGY09Mbk1KZXJsNXBuRk1GcC9jeEZVSy9uYVhDWk1LeG5YRUY5d1Q3T1JVOHRKamtxb2VDU01ac0Jmc1UrM0FWYlphbzMrV01pMnRJaWdYN3NmY1ZGWHlueHFxQ3pxcVBtRElGcmZ0OUZYWEtTSXlMcStXS3FEY0Z1MFVWK3lHTCt3ZjNCNHYzSVl2M0lmY0g5d2YzSVl2M0lZdjNCL3NIaS9zaGkvc2grd2Y3Qi9zaGl3aUwrSFFWK3hDTEp5ZUwreENMK3hEdkovY1FpL2NRaSsvdmkvY1FpL2NRSisvN0VJc0lEdmlVOXhRVi9KU0xpOVh6d1psdk5WMkxkZmhVaTR2M1ZQc29pMzVtYlpXZXh2ZGdpd1g4QzBRVnkwdDFkVXZMb2FFRjI1c1Z5MHQxZFV2TG9hRUYrMjM3ZlJYNGxJdUxhL3lVaTR1ckJRNzNKR3NWVm90Z3RvdkFpOEMydHNDTHdJdTJZSXRXaTFaZ1lGYUxDSXYzTkJWb2kyNXVpMmlMYUtodXJvdXVpNmlvaTY2THJtNm9hSXNJOTNUN05CVldpMkMyaThDTHdMYTJ3SXZBaTdaZ2kxYUxWbUJnVm9zSWkvYzBGV2lMYm02TGFJdG9xRzZ1aTY2THFLaUxyb3V1YnFob2l3ajdkL2Z0RmZjRSswUnhldnNFOTBPbG5RWDNlWW9WcDN2N0F2dEViNXozQXZkREJmc0crOHdWY1l0MW9ZdWxpNldob2FXTHBZdWhkWXR4aTNGMWRYR0xDSXZMRllLTGhJU0xnb3VDa29TVWk1U0xrcEtMbEl1VWhKS0Npd2dPK0IzM0JCVjFvc1BFUjgraW9lWXhCZnQzKzNjVis0MzNqZmQzOTNmbE1IVjBSOC83U2Z0SjkxLzdYOFREb25VRjVmZUhGWWFMaDR1R2pBaVFxd1dmaUorU21abVhsNUtiaTV5TG5JU2JmNWR6bzJHTGMzTjlmWVIzam5jSWE0WUZoNm1WcXFDZ25aMmpsYVdMcFl1amdaMTVzR1dMVDJabGVYbHlnWEtMQ1Bzbisyc1Zjb3R5bFhtZFpyR0x5TEN3c0xESWk3Rm1vSGFWYklkdENHdVFCWTZmaEo5OW1YS2tZNHR5Y25KeWkyT2tjcGw5bjRTZmpnaVBhd1dIaW9lTGhvc0lEdmlVeXhVcmk0dXJ5NHVMOTVUOFZJdUwrNVRMaTR0cks0dUw5OVQ0bElzRit4VDhOQlg3bEl1TDkxU3JpNHY3TlBkVWk0djNOS3VMQmZ2VTl6UVZxNHVMYTJ1TGk2c0Z5NHNWcTR1TGEydUxpNnNGOTVUckZXdUxpNnY3Vkl1TGEydUxpOHYzbElzRisxVDhOQlgzSkl1TGEvc2tpNHVyQll2TEZmY2tpNHRyK3lTTGk2c0ZEdmVVYXhYN0lZdjdCL2NIaS9jaGkvY2g5d2YzQi9jaGkvY2hpL2NIK3dlTCt5R0wreUg3Qi9zSCt5R0xDSXY0ZEJYN0VJc25KNHY3RUl2N0VPOG45eENMOXhDTDcrK0w5eENMOXhBbjcvc1Fpd2lML0JRVk00dEQwNHZqaStQVDArT0w0NHZUUTRzeml6TkRRek9MQ0l2M3RCVkVpMUpTaTBTTFJNUlMwb3ZTaThURWk5S0wwbExFUklzSWkvc2tGV3lMY3FTTHFvdXFwS1NxaTZxTHBIS0xiSXRzY25Kc2l3aUwyeFYraTRDQWkzNkxmcGFBbUl1WWk1YVdpNWlMbUlDV2Zvc0lpL3MwRld5TGNxU0xxb3VxcEtTcWk2cUxwSEtMYkl0c2NuSnNpd2lMMnhWK2k0Q0FpMzZMZnBhQW1JdVlpNWFXaTVpTG1JQ1dmb3NJRHZmMDZ4VnJpNHYzaFBzVWk0djdoR3VMaS9lazkxU0xCZmMwL0JRVi9KU0xpL2UwOXhTTGkyc3JpNHY3ZFBoVWk0djNOQ3VMaTZ2M0ZJc0YrNlQzbEJXcmk0dExhNHVMeXdYN1pDc1ZxNHVMUzJ1TGk4c0Z5NHNWcTR1TFMydUxpOHNGOTdSTEZhdUxpMHRyaTR2TEJidUxGYXVMaTB0cmk0dkxCYnVMRmF1TGkwdHJpNHZMQlE3M2xHc1YreUdMK3dmM0I0djNJWXYzSWZjSDl3ZjNJWXYzSVl2M0Ivc0hpL3NoaS9zaCt3ZjdCL3NoaXdpTCtIUVYreENMSnllTCt4Q0wreER2Si9jUWkvY1FpKy92aS9jUWkvY1FKKy83RUlzSVMvdmhGWXYzSWF1TGl6amN2ZnNOenB1bjl6c3VCUTczbE13Vktvczgyb3ZzaSt6YTJ1eUw3SXZhUElzcWl5bzhQQ3FMQ0l2MzFCVThpMHBLaXp5TE84eEwyb3ZhaTh6TGk5dUwya3JNUElzSSszbjhJeFdEaTRXTmhwQittSVdtMU9vSXBIY0ZZRk9DY1ltQ3A1RHR6L2NROXhEM0VQY1F6KzJRcDRHSmNvSlJYZ2gzcFFYczFhYUZtSDY2WFB0ZysyVmlZV1ZtKzBEN1BFYUxDQTczbEdzVit5R0wrd2YzQjR2M0lZdjNJZmNIOXdmM0lZdjNJWXYzQi9zSGkvc2hpL3NoK3dmN0Ivc2hpd2lMK0hRVit4Q0xKeWVMK3hDTCt4RHZKL2NRaS9jUWkrL3ZpL2NRaS9jUUorLzdFSXNJVy9za0ZhdUxpL3MwYTR1TDl6UUZ5NHNWcTR1TCt6UnJpNHYzTkFVTzk1UnJGZnNoaS9zSDl3ZUw5eUdMOXlIM0IvY0g5eUdMOXlHTDl3ZjdCNHY3SVl2N0lmc0grd2Y3SVlzSWkvaDBGZnNRaXljbmkvc1FpL3NRN3lmM0VJdjNFSXZ2NzR2M0VJdjNFQ2Z2K3hDTENHdjc0UldMOXlHcmk0czQzTDM3RGM2YnAvYzdMZ1g3ZzlvVnE0dUwrMVJyaTR2M1ZBVU85elI3RlZhTFlMYUx3SXZBdHJiQWk4Q0x0bUNMVm90V1lHQldpd2lMOXpRVmFJdHVib3RvaTJpb2JxNkxyb3VvcUl1dWk2NXVxR2lMQ090TEZXdUxpL2UvOTNUb2kvdFgreVpYZ0tuM0ViZUw5eEg3TkVnRkR2Z1VpeFZXaTJDMmk4Q0x3TGEyd0l2QWk3WmdpMWFMVm1CZ1Zvc0lpL2MwRldpTGJtNkxhSXRvcUc2dWk2NkxxS2lMcm91dWJxaG9pd2o3bFB0VUZWYUxZTGFMd0l2QXRyYkFpOENMdG1DTFZvdFdZR0JXaXdpTDl6UVZhSXR1Ym90b2kyaW9icTZMcm91b3FJdXVpNjV1cUdpTENPdExGV3VMaS9lLzk1NzNDSmR0KzRvZ0JmZDB4UldyaTR2N3hHdUxpL2ZFQlE3YitIUVZxNHVMK3hScmk0djNGQVdMKzlRVnE0dUwrMVJyaTR2M1ZBV2JxeFZvaTI2b2k2NkxycWlvcm91dWk2aHVpMmlMYUc1dWFJc0lpK3NWZVl0OWZZdDVpM21aZloyTG5ZdVptWXVkaTUxOW1YbUxDUGNrOTFRVnE0dUwrNVJyaTR2M2xBV0wvRlFWcTR1TFMydUxpOHNGbTZzVmFJdHVxSXV1aTY2b3FLNkxyb3VvYm90b2kyaHVibWlMQ0l2ckZYbUxmWDJMZVl0NW1YMmRpNTJMbVptTG5ZdWRmWmw1aXdqM0pQZlVGYXVMaTB0cmk0dkxCWXY3bEJXcmk0djdsR3VMaS9lVUJadXJGV2lMYnFpTHJvdXVxS2l1aTY2THFHNkxhSXRvYm01b2l3aUw2eFY1aTMxOWkzbUxlWmw5bll1ZGk1bVppNTJMblgyWmVZc0lEc0ZyRlh5TGZwR0JsWGFnaTZ5Z29BaWhkUVdEZ290K2s0S1BoNUdKa1lzSWk0c0ZrSXVSalkrUENLRjFCWUdCZm9WOWk0dUxpNHVMaXdqM3p2ZDBGVHlMU3N5TDJvdmF6TXphaTlxTHpFcUxQSXM4U2tvOGl3aUw5NVFWVFl0WldZdE5pMDI5V2NtTHlZdTl2WXZKaThsWnZVMkxDSzA5RlhtZGE0dDVlUWgwb2dXYm1wK1RvSXVnaTUrRG0zd0lkSFFGK3duN2loWDdFZmNSbU15cWhZRmI4U2E3bEpGc0JmdHUreUlWSmZEM0cvYzhwSGY3Q2ZzbXlFNzNKdmNKbjNJRkR2ZVVheFZFaTFMRWk5S0wwc1RFMG92U2k4UlNpMFNMUkZKU1JJc0lpL2QwRlZhTFlHQ0xWb3RXdG1EQWk4Q0x0cmFMd0l2QVlMWldpd2hyS3hWcml3V0xycWlvcm9zSWkyc0ZlWXQ5Zll0NUNNRDNOUldCcWZjWHQzM1FpN3Y3bEl1TFdIMUo5eGRmZ1czN01iK2Q2SXZaOTlTTGl6MmRMZ1g3aHZZVnE0dUxTMnVMaThzRjY0c1ZxNHVMUzJ1TGk4c0ZEdmVVOS9RVmFJdHVxSXV1aTY2b3FLNkxyb3VvYm90b2kyaHVibWlMQ0l2ckZYbUxmWDJMZVl0NW1YMmRpNTJMbVptTG5ZdWRmWmw1aXdncis4VVZhNDJUOXl2SnY1OXpXVjhGOTB6N0hSV0Q5eDFadDUranlWZVQreXNGT2Z0RkZTK0xlZmRDaSsycmk0c3JtZnNrcjR1Wjl5YUw2YXVMaXlzRkR2ZVVheFVxaXp6YWkrd0lpL2RFcTR1TCswUUZpenpNU3RxTDJvdk16SXZhQ0l2M1JLdUxpL3RFQllzcVBEd3Fpd2lMNnhWZmkyZXZpN2NJaS9kRXE0dUwrMFFGaTNHaGRhV0xwWXVob1l1bENJdjNSS3VMaS90RUJZdGZaMmRmaXdoYjk3UVYreFNMaS9jVTl4U0xpL3NVQlN1ckZjdUxpOHRMaTR0TEJmZlVheFg3Rkl1TDl4VDNGSXVMK3hRRks2c1Z5NHVMeTB1TGkwc0ZEdmM4OTVRVlk0dUxxNk9MdzlHTHhRV0xycWlvcm91dWk2aHVpMmdJYTRzRmk1MTltWG1MZVl0OWZZdDVDSXRGUXpFRjk2bjd0Qlg3Ull6N0FxcHRpNHVycjRyM0FtejNKb3ZEOTNmN1FLcUw5ektyaTR2N0YvZElhZ1g4T1B1UUZTdUxpL2UwNjR1TCs3UUZTNnNWcTR1TDkzUnJpNHY3ZEFVTytJRExGZnhyaTNQZzk0SHpsMjM3WnkrVmFQZzZpNVd3KzRIM0pvdTBtNHNGbll1Wm1ZdWRpNTE5bVhtTGVZdDlmWXQ1Q0d1TEJZdXVxS2l1aTY2THFHNkxhSXR3ZW5SemdRajNnUHNsZERnRkR2ZnM5L1FWYUl0dXFJdXVpNjZvcUs2THJvdW9ib3RvaTJodWJtaUxDSXZyRlhtTGZYMkxlWXQ1bVgyZGk1MkxtWm1Mbll1ZGZabDVpd2o3RlB4MEZUeUxTc3lMMm92YXpNemFpd2lMYXdWTmkxbFppMDJMVGIxWnlZdkppNzI5aThrSXE0c0ZpenhLU2p5TENJdkxGVitMWjYrTHQ0dTNyNiszaXdpTGF3VnhpM1YxaTNHTGNhRjFwWXVsaTZHaGk2VUlxNHNGaTE5bloxK0xDUGRVYUJWcmthZjNJZnRJaTh2M05EaUpMbEI2cGUvTTl5R05TL3MwOTBDTEJRNzNsR3NWK3lHTCt3ZjNCNHYzSVl2M0lmY0g5d2YzSVl2M0lZdjNCL3NIaS9zaGkvc2grd2Y3Qi9zaGl3aUwrSFFWK3hDTEp5ZUwreENMK3hEdkovY1FpL2NRaSsvdmkvY1FpL2NRSisvN0VJc0kreFQ3NFJXTDl5R3JpNHM0M0wzN0RjNmJwL2M3TGdWTSt3SVZpN2lXaS9ISyt3M09tNmYzT3k0RkR2YzNheFZiaTJLYmJxZzcyNm4zTS9jSjl3alEwZVMxMm91N2k3UjdxRzdiTzIzN00vc0ord2hHUlRKaFBJc0k5MDc0ZEJWRWl6dGxTMHNqSTIzN0g4OUlvbk9zZjdLTDBvdmJzY3ZMOC9PcDl4OUh6blNqYXBka2l3aVVKeFdoZGZ0MiszWjFvZmQyOTNZRisycjdNQlgzRkl1TGEvc1VpNHVyQmJ1N0ZhdUxpL3NVYTR1TDl4UUZ1N3NWOXhTTGkydjdGSXVMcXdXN3V4V3JpNHY3Rkd1TGkvY1VCUTdMK0hRVnE0dUwvSlJyaTR2NGxBWDNKL3Z6RlhXTGM1QndsZ2lYcVFYQmM3R1h0SmV4bDdXWHdIc0lpL2R5QlZ1ZFpvQmxnR0IrVzN4THB3aVhxUVhCYzdHWHRKZTJtTHVheTI4SWxZYUwrN1oxbEFWVm8yVi9Zbjl5ZzNDRGJZc0lEdmVVOS9RVmFJdHVxSXV1aTY2b3FLNkxyb3VvYm90b2kyaHVibWlMQ0l2ckZYbUxmWDJMZVl0NW1YMmRpNTJMbVptTG5ZdWRmWmw1aXdncis4VVZhNDJUOXl2SnY1OXpXVjhGOTB6N0hSV0Q5eDFadDUranlWZVQreXNGYjBvVisxeUxyL2MzcTRWdit4SDNESXR2OXhHcmtRVjYrNmNWTFl1RTJhdU9rRnF0aTVDK3E0Z0ZEdmVrYXhWb2kyNm9pNjRJaThWVDBYT0xpNnV6aTlNeGkwVUZpM21aZloyTG5ZdVptWXVkQ0t1TEJZdG9ibTVvaXdqTHl4VnJpNHYzTVppTzl6T29VL2QzK3lhTCt3WnJhNHVMcTZtTDl3YXI5MEdMMHZ1dyswaHFCZnVFaUJVcmk0djN0T3VMaS91MEJVdXJGYXVMaS9kMGE0dUwrM1FGRHZlVWF4VldpMVdmWTdRNjNJdjNHTnpjQ0tKMEJVWkhpL3NFMEVmUFJ2Y0VpOC9RME0rTDl3Ukd6d2lpb2dYY09vdjdHRG82WTJKVmQxYUxDSXYzcnhYN0ovY1ZvTGFuZllGMjl3QXM5d0RxZ2FDbm1hRmdCZnVZN3hYM2RJdUxhL3QwaTR1ckJjdExGZXVMaTJzcmk0dXJCUTczbFBkRUZUeUxTc3lMMmdpTDl6VDN0SXVMK3pRRml6eEtTanlMQ1BzRTk2UVZpL3NVQll0TnZWbkppOG1MdmIyTHlRaUw5eFQ3ZElzRjl3VDdaQlZmaTJldmk3Y0lpOXVyaTRzN0JZdHhvWFdsaXdpTGF3VjcreHdWcTR1TCt3eHJpNHYzREFYN0ZDTVY5N1NMaTJ2N3RJdUxxd1gzMVBmVUZZdXJCYVdMb2FHTHBRaUxtMXVMaTZ2Ymk0dGJCWXRmWjJkZml3ajc5SXNWWDR0bnI0dTNDSXU3MjR1TGExdUxpM3NGaTNHaGRhV0xDSXRyQmZkRSs0UVZhSXR1cUl1dUNLdUxCWXQ1bVgyZGk1MkxtWm1MblFpcml3V0xhRzV1YUlzSURvdTdGZmlVaTR0ci9KU0xpNnNGK0JiM0RCWDdGdmR0K3hUN2JIQ2I5eS8zbXZjeSs1b0Y3U0lWL0pTTGkvZlQ5eHdwZUhFMnlZdjdkZmhVaTR2M2RUWk5lS1gzSE8wRkR2Z2s5NFFWVFl0WnZZdkpDS3VMQll0ZnIyZTNpN2VMcjYrTHQ0dTNaNjlmaXdqN3RJc0ZYNHRuWjR0ZmkxK3ZaN2VMdDR1dnI0dTNDS3VMQll0TldWbE5pMDJMV2IyTHlZdkp2YjNKaXdqM3RJc0Z5WXU5V1l0TmkwMVpXVTJMQ1B0RXF4WExpNHRyUzR1THF3WDdGRXNWcTR1TCszUnJpNHYzZEFYcml4V3JpNHY3ZEd1TGkvZDBCZXVMRmF1TGkvdDBhNHVMOTNRRjY0c1ZxNHVMKzNScmk0djNkQVg3cy9ja0ZXdUxCWXVsb2FHbGl3aUxhd1dDaTRTRWk0SUk5N1NMRld1TEJZdWxvYUdsaXdpTGF3V0NpNFNFaTRJSUR2aFU5elFWaTZzRm5ZdVptWXVkaTUxOW1YbUxDSXVyQmE2THFHNkxhSXRvYm01b2l3aHJPeFg3dEl1THEvZVVpNHYzZFB1VWk0dXI5N1NMQmZ2VSs3UVZLNHVMOTdUcmk0djd0QVZMcXhXcmk0djNkR3VMaS90MEJRNzRsUGNFRld1TGkvZVUvRlNMaS91VWE0dUw5N1Q0bElzRmkvdjBGU09MVzh2N1pJdGJTeU9MaTZ2amk3dkw5NFNMdTB2aml3WDc5SXNWOTFTTGkydjdWSXVMcXdYM1JPc1Zpb3Y3UkpzRmk0dUtpNHVMYW90dXFJdXVpNjZvcUs2TENQZERtd1dMaTR1TGk0dTRpNjluaTErTFgyZG5YNHNJaS9jVUZmdERld1Y0aTMxOWkzbUxlWmw5bllzSTkwVjdCYVdMb0tHTHBZdWxkYUZ4aXdqN1JHc1ZxNHVMYTJ1TGk2c0Y5elNMRmF1TGkydHJpNHVyQlE3M2xHc1ZNNHREMDR2amkrUFQwK09MNDR2VFE0c3ppek5EUXpPTENJdjN0QlZFaTFKU2kwU0xSTVJTMG92U2k4VEVpOUtMMGxMRVJJc0lTL3NVRld1TEJZdkF0cmJBaXdpTGF3Vm9pMjV1aTJnSTl3VDNWQlZyaTR1cmE0dUxhMnVMaTh2cml3Vkx1eFdyaTR0TGE0dUx5d1dyaXhWcml3V0xwYUdocFlzSWkyc0Znb3VFaEl1Q0NBNzNKUGcwRmF1TGkvdkVhNHVMOThRRjl4U0xGWXY3Wkd1TGkvZGtxNHNGaTRzVmE0c0ZpNTE5bVhtTGVZdDlmWXQ1Q0d1TEJZdXVxS2l1aTY2THFHNkxhQWozSXZ4VUZmdXFpMFByaS9jTHNLK2hkWEJ2aXkzRFFQZC9pNmIzV3ZzNHpwZXA5MUErQlE3NFZQYzBGWXVyQloyTG1abUxuWXVkZlpsNWl3aUxxd1d1aTZodWkyaUxhRzV1YUlzSWF6c1YrN1NMaTZ2M2xJdUw5M1Q3bEl1THEvZTBpd1g3UkU0VnFvVnMrelZya2F2M05RVTdpeFdxaFd6N05XdVJxL2MxQmZjMGl4V3FoV3o3Tld1UnEvYzFCZnQwKzNjVks0dUw5N1RyaTR2N3RBVkxxeFdyaTR2M2RHdUxpL3QwQlE3M2xHc1YreUdMK3dmM0I0djNJWXYzSWZjSDl3ZjNJWXYzSVl2M0Ivc0hpL3NoaS9zaCt3ZjdCL3NoaXdpTCtIUVYreENMSnllTCt4Q0wreER2Si9jUWkvY1FpKy92aS9jUWkvY1FKKy83RUlzSW0vdzBGV3VMQll2c1BOb3Fpd2lMcXdYM0I0dm9Mb3Y3QndqM1JQZEVGZnNIaXk3b2kvY0hDS3VMQllzcTJqenNpd2lMYXdYN3dmY25GZmVFKzRSMWRmdUU5NFNob1FYM2Jvc1ZvWFg3aFB1RWRhSDNoUGVFQlE3MzBmZjBGU0tMWjUrYnA2ZDc0b3Vvblp0dkJjajdvaFg3dll0VTkwMllrUVc4b011WDBJdlFpOHQvdkhZSWw0Vm0rMDBGKzZXckZmZUxpNmIzR2dWZm5GU1VVSXRSaTFTQ1lIc0lzL3NiQlorMkZYYlNuSThGeTVuYmlzbDlDSU5yQlZlWVNZeFRnZ2lXWm15QkJac2dGZmMwaTR0cit6U0xpNnNGKzBUM2ZCV3JpNHY3Tkd1TGkvYzBCZmVVKytRVkxJczB2MS9nQ0tlWkJiSkMxMTNlaTk2TDE3bXkxQWluZlFWZk5qUlhMSXNJOTNUMzVCV3JpNHY3Tkd1TGkvYzBCWEdrRldUVVA3azRpemlMUDExa1FnaHZtUVczNE9LLzZvdnFpK0pYdHpZSWIzMEZEdmVVOTFRVklZczE0WXYxQ0l2citCU0xpeXNGaXlFMU5TR0xDUHMwOTVRVmkwc0ZpelBUUStPTDQ0dlQwNHZqQ0l2TCs5U0xCZmNrKzdRVnE0dUwrMVJyaTR2M1ZBWDdGUHMwRmZlMGk0dHIrN1NMaTZzRjl5VDNsQlZFaTFMRWk5SUlpNXVyaTR0N0JZdFd0bURBaXdpTGF3VU85OFQzZEJXTHF3V2xpNkdoaTZVSXE0c0ZpMTluWjErTENDdjNsQlhyaTR0cks0dUxxd1hyL0pRVks0c0ZYNHRucjR1M0NJdjNGQVdMcFppaW5wcDRtbjZpaTZVSWk2c0ZpN2V2cjdlTENPdUxCYmVMcjJlTFh3aUxhMnVMaTZzRmk2VjFvWEdMQ0N1TEJYR0xkWFdMY1FpTGF3V0xjYUYxcFlzSWkyc0ZjWXQxZFl0eENJdjdGQVdMY2FGMXBZc0k2NHNGcFl1aG9ZdWxDSXYzRkFXTHBYV2hjWXNJaTZzRnQ0dXZaNHRmQ0l2N0ZBV0xYMmRuWDRzSU8vZmtGV3VMQll1bG9hR2xpd2lMYXdXQ2k0U0VpNElJbS91a0ZYR0xkYUNMcGdpTDY2dUxpeXNGaTRLU2hKU0xDSXRyQlE3NGxIc1YvSlNMaS9mVXE0dUwrN1Q0Vkl1TDk3U3Jpd1g4bEtzVmkvY1UrSlNMaTJ2OGRJdUxTL2gwaTR0ckJVdjdoQlZMaXdWb2kyNm9pNjZMcnFpb3Jvc0l5NHVMYTB1TEJYbUxmWDJMZVl0NW1YMmRpd2pMaTR0ckJRNzNHL2QvRlcyVkJhTEx4N2JQaXdpTGF3VlZpMXBwZVZnSTlQZUpGYXVMaTJ0cmk0dXJCWXY3NUJXcmk0djdGR3VMaS9jVUJYdjdSQlZ4aTNXaGk2VUlxNHNGaTRLU2hKU0xsSXVTa291VUNLdUxCWXR4ZFhWeGl3ajNsUGRrRmZ4VWk0dWJCWXYzRU8vdjl4Q0w5eENMN3llTCt4QUlpM3NGL0RPckZmZ1Npd1dEN1RqWko0c25pemc5Z3lrSUR2aVVheFg4bEl1TCtCVDRsSXVML0JRRi9IU3JGZmhVaTR2MzFQeFVpNHY3MUFYMzlLc1YrOVNMaS9lVTk5U0xpL3VVQmZ1MHF4WDNsSXVMOTFUN2xJdUwrMVFGOTlUTEZhdUxpMnRyaTR1ckJZdExGYXVMaTJ0cmk0dXJCZnMwOThFVit4M2duYWYzQ3ovM0M5ZWRid1VPOTJUckZmc0hpeTdyaS9jS0NJdjErRFNMaXlFRmkvc0tMaXY3QjRzSSswVDN0QldMUVFXTEp0bzY3SXZzaTlyY2kvQUlpOVg3OUlzRjkwVDdkQlU4aTByT2k5NElpNldyaTR0eEJZdEt2VmJKaXdpTGF3WDNsT3NWZW91THE1eUxCWlNMa3BLTGxBaUxxd1dMazRTVGdvc0llb3VMcTV5TEJhYUxvSFdMY1FpTGFnV0xjWFYyY1lzSS9CVDdWQlgzbEl1TGEvdVVpNHVyQlE3NGxLc1YvRlNMaTZ2NE5JdUw5OVQ4Tkl1THEvaFVpd1g4bElzVnE0dUwvQlJyaTR2NEZBWDROUHRFRmF1TGkydHJpNHVyQld2N0pCWDcxSXVMOTVUMzFJdUwrNVFGKzdTckZmZVVpNHYzVlB1VWk0djdWQVVPOTJSckZZdUxCVitMWjYrTHR3aUw5NFFGaTlMRXhOS0wwb3ZFVW90RUNJdjdoQVdMWDJkblg0c0lLNHNGdS9nMEZWYUxZR0NMVmdpTCs0UUZpM0doZGFXTENPdUxCYVdMb2FHTHBRaUw5NFFGaThCZ3RsYUxDR3Y3NUJWcmk0djNoQVdMcnFpb3Jvc0lpMnNGZVl0OWZZdDVDSXY3aEFWNytFUVY2NHVMYXl1TGk2c0ZEdmZ4YXhYN1Q0dFc5OFQzdW90Vis4UUYrelNyRmZjWmk3YjNoUHR1aTdYN2hBV3Q5MVlWb2Zza2JJZDA5eVNyandYM1JmY0NGV3VMQll1YWlKcUZtUWlvbHdXVGVZOTRpM2dJKzVTTEZXdUxCWXZheTh6Ymk1NkxuWWVkaEFoL2JRVjlrWDJPZkl0TmkxbFppMDBJeTRzVmE0c0ZpN2V2cjdlTENJdHJCWENMZG5XTGNRajNOL2M4RmFaN0t2czBjSnZzOXpRRkR2Z1U5elFWKzVTTGkvZVU5NVNMaS91VUJmdDBxeFgzVkl1TDkxVDdWSXVMKzFRRmkvYzBGY3VMaTJ0TGk0dXJCWXM3RmN1TGkydExpNHVyQmZjVTJ4WExpNHRyUzR1THF3V0xPeFhMaTR0clM0dUxxd1hDKzhRVis2dUxpL2lVK0JTTGkvd2thNHVMK0FUNzFJdUwvRlQzZll2SHhxRjFCUTczbEdzVmFJdHVxSXV1aTY2b3FLNkxyb3VvYm90b2kyaHVibWlMQ0l2ckZYbUxmWDJMZVl0NW1YMmRpNTJMbVptTG5ZdWRmWmw1aXdqN0FlRVZkYUlGejgvM0E0dk9Sd2gxZEFWVHd6R0xVMU1JOTZieUZURG0reWlMTURBSWRhSUY4dkwzUEl2eUpBaDFkQVhMN3hYN0V2Y1MrMktMK3hMN0VnaDFvZ1gzSHZjZTkzYUw5eDc3SGdoMWRBVU85LzlyRmZ0cWkyYjN4OFgzQWZkQWk4YjdBV1g3eHdYN1Rhc1Y5ekNMcmZlZ1h0LzdHb3RmT0t6N29RV3M5M3NWb1B0S2E0aDI5MHFyamdYM0YvZE5GV3VMaTZ2N0FJdUxhMnVMaTh2M1FJc0YrenI3VkJYM05JdUxhL3MwaTR1ckJRNzRsR3NWL0pTTGkvZ1UrSlNMaS93VUJmeDBxeFg0Vkl1TDk5VDhWSXVMKzlRRjl5UzdGVTJMV2IyTHlZdkp2YjNKaThtTHZWbUxUWXROV1ZsTml3aUw5MVFWWDR0blo0dGZpMSt2WjdlTHQ0dXZyNHUzaTdkbnIxK0xDSHM3Rld1TEJZdWxvYUdsaXdpTGF3V0NpNFNFaTRJSTl6VGJGZmNVaTR0cit4U0xpNnNGaTBzVjl4U0xpMnY3Rkl1THF3V0xTeFgzRkl1TGEvc1VpNHVyQmNYNEF4V1hiZnRrTzMrbzkyVGNCUTczMDZVVmJaZjNOZmdRL0JEN05YK3ArRmozVXdYN1l2eVNGZnM4aS9zYzl4eUw5endJcTRzRmkvc3E5dzc3RHZjcWl3aUxhd1g3SlBkRUZXaUxicWlMcm91dXFLaXVpNjZMcUc2TGFJdG9ibTVvaXdpTDZ4VjVpMzE5aTNtTGVabDluWXVkaTVtWmk1MkxuWDJaZVlzSTl5UnJGWEdMZGFHTHBZdWxvYUdsaTZXTG9YV0xjWXR4ZFhWeGl3aUx5eFdDaTRTRWk0S0xncEtFbEl1VWk1S1NpNVNMbElTU2dvc0lTL3QwRlhHTGRhR0xwWXVsb2FHbGk2V0xvWFdMY1l0eGRYVnhpd2lMeXhXQ2k0U0VpNEtMZ3BLRWxJdVVpNUtTaTVTTGxJU1Nnb3NJRHZnMDkvUVYrOVNMaS9jVTk5U0xpL3NVQmZ1MHF4WDNsSXVMeS91VWk0dExCZmUwL0RRVis5U0xpL2YxcTR1TCs5WDNsSXVMOTlXcml3WDdSUHVWRmF1TGkydHJpNHVyQlh2NEJCWExpNHRyUzR1THF3WDdCUHZFRmZlMGk0dHIrN1NMaTZzRkR2aVVxeFg4bEl1TDYvaVVpNHNyQmZ4MHF4WDRWSXVMcS94VWk0dHJCZmhVNnhWcmk0djNkUHdVaTR2N2RHdUxpL2VVK0ZTTEJVdjdsQlZyaTR2M05QdVVpNHY3Tkd1TGkvZFU5OVNMQlE3M3hHc1YrM1NMQlYrTFo2K0x0d2lMK0VUNEZJdUwvRVFGaTE5bloxK0xDUHNFcXhYM0JJc0Zwb3Vnb1l1bENJdjRKUHZVaTR2OEpBV0xjYUYxcFlzSTl3U0xCZmVrOTFRVlc0dUxxN3VMQlpTTGtwS0xsQWlMOXpRRmk1U0Vrb0tMQ0Z1TGk2dTdpd1dsaTZGMWkzRUlpL3MwQll0d2RYWnhpd2o3OVBzMEZYR0xkYUdMcFFpTDkrU3JpNHY3NUFXTGdwS0VsSXNJaTJzRkR2ZWs2eFdMaXdWNmkzcVNmNWQvbDRXYmk1eUxycWlvcm91Y2k1eUVsMytYZjVGN2kzcUxhRzV1YUlzSWkrc1ZlWXQ5Zll0NWk0T09nNUdGa1lTVGlKU0xDSXQ3aTVzRm5ZdVptWXVkaTVPSWs0V1JoWktEam9LTENQY0VLeFdMaTR1TGk0dDZpM3FTZjVjSW9xSUZrWVNUaUpTTGk0dUxpNHVMazR1VGpwR1JrcEdPazR1VWk1T0lrNFdSaFpLRGpvS0xnb3VFaUlXRkNIU2lCWmVXbTVLY2k0dUxpNHVMaTV5TG5JU1hmNWQva1h1TGVvdDZoSHAvZjMrQWU0UjZpd2ozRkVzVi9KU0xpL2dVK0pTTGkvd1VCZngwcXhYNFZJdUw5OVQ4Vkl1TCs5UUZxL2VVRmZnVWk0dHIvQlNMaTZzRkR2Z2s5N1FWYTR1TDl6VDdkSXVMK3pScmk0djNWUGUwaXdXTC9KUVYrN1NMaS9lMDk3U0xpL3UwQmZ1VXF4WDNkSXVMOTNUN2RJdUwrM1FGOXdTckZWK0xaNitMdDR1M3I2KzNpN2VMcjJlTFg0dGZaMmRmaXdpTDl4UVZjWXQxZFl0eGkzR2hkYVdMcFl1aG9ZdWxpNlYxb1hHTENBNzNsR3dWK3lHTCt3ZjNCNHYzSVl2M0ZPcjNBZmNUbkFpUGF3WDdBM3c0TEl2N0JJdjdEKzhtOXhDTDl4Q0w3L0NMOXcrTDl3UTQ2dnNEbWdpUHF3WDNFM3JxK3dHTCt4U0wreUg3Qi9zSCt5R0xDSXYzeEJWeGkzV2hpNldMcHFHZ3BZdWxpNkYyaTNDTGNYVjFjWXNJaThzVmdvdUVoSXVDaTRLU2hKU0xsSXVTa291VWk1U0Vrb0tMQ0hzckZhdUxpL3MwYTR1TDl6UUZEdmVobGhYN2R2ZDM5MWozVndXcHFiT2N0b3UxaTdSNnFXMnBiWnhqaTJDTFlIcGpiVzBJKzFqN1dBWDdTUGQzRmZkSiswcjNRZmRDQmFPam1LdUxyWXV0ZnF0eW8zT2thNWhwaTJtTGEzNXpjd2o3UWZ0QkJkcC9GWFNpOXgvM0h3V2RuYU9WcFl1a2k2T0JubmtJZEhRRmM2TmhqSE55Q1BzZit4OEYrd3o3bGhWL2kzNlFncFNDbElhWGk1aUxtSkNYbEpRSTQrT2hkRFF6QllpSWlZZUxoNHVIalllT2lKR0VsWXVSa2dqajRxSjFNek1GZ29KK2huK0xDQTczc0dzVlZJdEg5MCtwbGNmN09aU0x5UGRacVlFRmZMQVZWb3RndG92QWk4QzJ0c0NMd0l1MllJdFdpMVpnWUZhTENJdjNOQlZvaTI1dWkyaUxhS2h1cm91dWk2aW9pNjZMcm02b2FJc0lpMHNWYTRzRmk1MlptWjJMQ0l0ckJmczBXeFZyaXdXTG5abVpuWXNJaTJzRml5c1ZWb3RndG92QWk4QzJ0c0NMbUl1WGlaZUdDSDV0QllTT2dvMkRpMmlMYm02TGFJdG9xRzZ1aTU2TG5wU1htZ2lrZHdWNGRIQitib3NJalBkd0ZXeVJCWk80czZ5NWk2aUxwbjZlZFFoeWRnVittbm1VZUl0c2kzRjFoVzBJRHZlVTkyUVZQSXRLekl2YUNLdUxCWXROdlZuSmk4bUx2YjJMeVFpcml3V0xQRXBLUElzSTkwVDNSQlg3OUl1TDYvZjBpNHNyQmZ2VXF4WDN0SXVMcS91MGk0dHJCZmUwKzlRVmE0c0ZpOGxadlUyTFRZdFpXWXROQ0d1TEJZdmF6TXphaTlxTHpFcUxQQWo3VklzVmE0c0ZpN2V2cjdlTENJdHJCWEdMZFhXTGNRaTc5MFFWWDR0bnI0dTNDS3VMQll0eG9YV2xpd2lMYXdYM1JQdkVGZnYwaTR2cjkvU0xpeXNGKzlTckZmZTBpNHVyKzdTTGkyc0ZEdmUyYkJXSHF3WDNBNXJlNm92M0JJdjNEeWZ3K3hDTCt4Q0xKeWFMK3crTCt3VGVMUGNEZkFpSGF3WDdFNXdzOXdHTDl4U0w5eUgzQi9jSDl5R0w5eUdMOXdmN0I0djdJWXY3RkN6N0Fmc1RlZ2g1OTJVVmE0dUx5cHVMQmE2THFLaUxyb3V1YnFob2kyaUxibTZMYUFocml3V0x3TGEyd0l2QWk3WmdpMWFMWEdoalhvTUlpMnNGZS9zVkZYR0xkYUdMcFl1bW9hQ2xpNldMb1hhTGNJdHhkWFZ4aXdpTHl4V0NpNFNFaTRLTGdwS0VsSXVVaTVLU2k1U0xsSVNTZ29zSUR2Y0U5MlFWOXlTTGkydjdKSXVMcXdVNyt4UVZhNHVMeXdXTGpaTDNNdmROaXdqTGk0dHJTNHNGK3k2TGhmc1BpNFVJaTB3Rjk0U05GWXZwZTR1THE3dUxpMG4zSiszN0orMkxTVnVMaTZ1Ymk0dnA5NEg3TWdVTzl3U0xGVTJMV2IyTHlZdkp2YjNKaThtTHZWbUxUWXROV1ZsTml3aUw5MVFWWDR0blo0dGZpMSt2WjdlTHQ0dXZyNHUzaTdkbnIxK0xDSHM3Rld1TEJZdWxvYUdsaXdpTGF3V0NpNFNFaTRJSTk3U0xGV3VMQll1bG9hR2xpd2lMYXdXQ2k0U0VpNElJbS9zRUZVMkxXYjJMeVl2SnZiM0ppOG1MdlZtTFRZdE5XVmxOaXdpTDkxUVZYNHRuWjR0ZmkxK3ZaN2VMdDR1dnI0dTNpN2RucjErTENQdFVTeFhyaTR0cks0dUxxd1g3Uk9nVmE1R3I5ek1GaksybnA2NkxDSXRyQlhtTGZYMkxlUWlMaUd2N05BWDRWSXNWYS9jM0JZdWRmWmw1aXdpTHF3V3VpNmR2akdrSXEvc3phNFVGRHZjazl4UVY2NHVMYXl1TGk2c0ZxNnNWcTR1TEsydUxpK3NGOTAySkZabHZhM3Q5cDZ1YkJWdGJGWmx2YTN0OXA2dWJCZmNMOTBZVmE0dUw5elQ3dEl1TCt6UnJpNHYzVlBmMGl3VkwrMVFWYTR1TDYvczBpNHNyYTR1TDl4VDNkSXNGeS94VUZmdjBpNHYzdFBmMGk0djd0QVg3MUtzVjk3U0xpL2QwKzdTTGkvdDBCUTczUkdzVmNZdDFvWXVsQ0l2M1JLdUxpL3RFQll1Q2tvU1VpNVNMa3BLTGxBaUwrQlFGaTZWMW9YR0xjWXQxZFl0eENJdjdaR3VMaS9ka0JZdTNyNiszaTdlTHIyZUxYd2lML0JRRmkzRjFkWEdMQ1BkRWl4VnhpM1doaTZVSWkvZU5XN3VMOXp1cmk0djdMYnRiaS91YkJZdUNrb1NVaTVTTGtwS0xsQWlMOTV1N3U0djNMYXVMaS9zN1cxdUwrNDBGaTNGMWRYR0xDSnY0bEJXTCt6UnJpNHYzTkt1TEJRNzNaUGZFRmZjRWk0dHIrd1NMaTZzRlN5c1ZhNHVMdndXTGpKejNEL2NtaXdpNGk0dHJYb3NGK3dXTGV6YUpnUWlMV2dYM1JJWVZpL0NyaTR0aTg5QWowWXRaYTR1TDl3TDNWdnNXQlZuNzhCWDhaSXVMK0NUM0JJdUxhenVMaS92aytDU0xpL2RscTRzRkR2aDBheFg4Qkl1TDI2dUxpMXYzeEl1TCtGVDd4SXVMVzJ1TGk5djRCSXNGKzhUOE1oV0w2ZnNraTR1cjkwU0xpMG4zSiszN0orMkxTZnRFaTR1cjl5U0xpK24zZ2ZzeUJRNzRCMnNWKzdxTHJ2ZFhxNFZ1K3pIM2JvdHU5ekdya1FYN09IOFZxNFo4SjJ1UG12QUY5emkwRmZ0MGk0djNEMTNROTZLTGkvdFVCZnRVcXhYM05JdUw5eFQ3Um91ZGNJc21CZmNrOTFRVmE0c0ZpNTE5bVhtTGVZdDlmWXQ1Q0d1TEJZdXVxS2l1aTY2THFHNkxhQWpyKzNRVmVvdUxxNXlMQlpTTGtwS0xsQWlMeXdXTGxJU1Nnb3NJZW91THE1eUxCYVdMb1hXTGNRaUxTd1dMY0hWMmNZc0lEdmVVZUJWY2kxK2RhcXhHMEl2M0JORFBDS0YxQlZOVGl5L0RVNlp3c0h5eGk3R0xzSnFtcHFhbW1xK0xzb3V4ZkxCd3BnaWhvUVd0YXAxZmkxeUxYSGxmYVdscWFsOTVYSXNJUE93VmRxQi9wNHVwaTZtWHA2Q2dDS0YwQlh4OGczZUxkb3QyazNhYWZBaDFkUVgzSmZlQkZVbjFTU0Z2bk9uM0tlbjdLUVVPK0hSckZmeFVpNHYzRkt1TGl5djRGSXVMNjZ1TEJmdDBmaFg3TXZlQjZZdUw5elNyaTR2N1ZFbUw3ZnNuN2ZjblNZdUw5MVNyaTR2N05PbUxCUTc0TlBjVUZmdzBpNHYzbFBnMGk0djdsQVg4RktzVjkvU0xpL2RVKy9TTGkvdFVCZmgwK3hRVi9EU0xpOHVyaTR0cjkvU0xpL2RVYTR1THE4dUxCZnZFS3hWb2kyNm9pNjZMcnFpb3JvdXVpNmh1aTJpTGFHNXVhSXNJaStzVmVZdDlmWXQ1aTNtWmZaMkxuWXVabVl1ZGk1MTltWG1MQ1Bza3F4V3JpNHRyYTR1THF3V0xLeFdyaTR0cmE0dUxxd1gzbE9zVnE0dUxhMnVMaTZzRml5c1ZxNHVMYTJ1TGk2c0ZEdmlVeXhYOGxJdUw5OVQ0bEl1TCs5UUYvSFNyRmZoVWk0djNsUHhVaTR2N2xBWDNkS3NWVm90Z3RvdkFpOEMydHNDTHdJdTJZSXRXaTFaZ1lGYUxDSXYzTkJWb2kyNXVpMmlMYUtodXJvdXVpNmlvaTY2THJtNm9hSXNJKzFTckZjdUxpMnRMaTR1ckJmZlVpeFhMaTR0clM0dUxxd1dMK3pRVnk0dUxhMHVMaTZzRis5U0xGY3VMaTJ0TGk0dXJCUTc0bE5zVisyU0xpNnYzUkl1TDk3VDhWSXVMKzdUM1JZdUxhL3RsaTR2MzlQaVVpd1ZMKzdRVi9CU0xpL2QwK0JTTGkvdDBCZnYwcXhYMzFJdUw5elQ3MUl1TCt6UUY5eVJNRmF1TGkycHJpNHVzQlRwS0ZmZFdpNHRyKzFhTGk2c0ZEdmcwOS9RVis5U0xCV2lMYnFpTHJvdXVxS2l1aXdqMzFJc0Zyb3VvYm90b2kyaHVibWlMQ1B2VTZ4VjVpMzE5aTNtTGVabDluWXNJOTlTTEJaMkxtWm1Mbll1ZGZabDVpd2o3MUlzRjkwVDhkQlZyaTR2VVpMTE15MHZLc2JPTDFLdUxpelJ5Y3N4TFNrdWtjZ1VPK0NOckZmdXlpM3I0QTZ1Tm12dmw5M2FMbXZmbHE0a0YrL1RNRmZnVWk0dHIvQlNMaTZzRjk5aHJGZnVjaTZMM0JQZHVpNkw3QkFYN2RLc1Y5MHlMZ3J2N09vdUNXd1huKzhRVmFJdHVxSXV1aTY2b3FLNkxyb3VvYm90b2kyaHVibWlMQ0l2ckZYbUxmWDJMZVl0NW1YMmRpNTJMbVptTG5ZdWRmWmw1aXdncjZ4WDNWSXVMYS90VWk0dXJCWXY3ZEJYM1ZJdUxhL3RVaTR1ckJRNkxpeFg0bEl1TGEveVVpNHVyQll2NGRCV3JpNHY4bEd1TGkvaVVCZmNFL0ZRVnE0dUxhMnVMaTZzRnk0c1ZxNHVMYTJ1TGk2c0Z5NHNWcTR1TGEydUxpNnNGeTRzVnE0dUxhMnVMaTZzRnk0c1ZxNHVMYTJ1TGk2c0Z5NHNWcTR1TGEydUxpNnNGL0NUTEZhdUxpMnRyaTR1ckJZdkxGYXVMaTJ0cmk0dXJCWXZMRmF1TGkydHJpNHVyQll2TEZhdUxpMnRyaTR1ckJZdkxGYXVMaTJ0cmk0dXJCWXZMRmF1TGkydHJpNHVyQmZkRSsvUVZLNHVMOTNUcmk0djdkQVZMcXhXcmk0djNOR3VMaS9zMEJmZFVheFVyaTR2MzlPdUxpL3YwQlV1ckZhdUxpL2UwYTR1TCs3UUY5MVJyRlN1TGkvZTA2NHVMKzdRRlM2c1ZxNHVMOTNScmk0djdkQVVPaTRzVitKU0xpMnY4bEl1THF3V0wrSFFWcTR1TC9KUnJpNHY0bEFYM0JQeFVGYXVMaTJ0cmk0dXJCY3VMRmF1TGkydHJpNHVyQmN1TEZhdUxpMnRyaTR1ckJjdUxGYXVMaTJ0cmk0dXJCY3VMRmF1TGkydHJpNHVyQmN1TEZhdUxpMnRyaTR1ckJmd2t5eFdyaTR0cmE0dUxxd1dMeXhXcmk0dHJhNHVMcXdXTHl4V3JpNHRyYTR1THF3V0x5eFdyaTR0cmE0dUxxd1dMeXhXcmk0dHJhNHVMcXdXTHl4V3JpNHRyYTR1THF3WDNBZnUrRlhHZjlmY2gzVW4zR3ZjYW9YWDdMdnN1UGNrRjk0RnlGV3VMaS9jRSt3U0xpNnYzSklzRkRvdUxGZmlVaTR0ci9KU0xpNnNGaS9oMEZhdUxpL3lVYTR1TCtKUUY5d1Q4VkJXcmk0dHJhNHVMcXdYTGl4V3JpNHRyYTR1THF3WExpeFdyaTR0cmE0dUxxd1hMaXhXcmk0dHJhNHVMcXdYTGl4V3JpNHRyYTR1THF3WExpeFdyaTR0cmE0dUxxd1g4Sk1zVnE0dUxhMnVMaTZzRmk4c1ZxNHVMYTJ1TGk2c0ZpOHNWcTR1TGEydUxpNnNGaThzVnE0dUxhMnVMaTZzRmk4c1ZxNHVMYTJ1TGk2c0ZpOHNWcTR1TGEydUxpNnNGK0NqN3J4WDdHdmNwTzBzaDl4Q2puK0VuMjh2M0x2cy9CWTl3RmZza2k0dXI5d1NMaS9jRXE0c0ZEdmlVYXhYOGxJdUwrSlQ0bEl1TC9KUUYvSFNyRmZoVWk0djRWUHhVaTR2OFZBWDNCUGdVRmF1TGkvc1VhNHVMOXhRRlcxc1Y5eFNMaTJ2N0ZJdUxxd1gzVklzVjl4U0xpMnY3Rkl1THF3V0wrelFWcTR1TGEydUxpNnNGMjBzVnE0dUxhMnVMaTZzRit6L1dGYUYxS3l0MW9ldnJCZmRVaXhXaGRTc3JkYUhyNndYN25vc1Y2eXQxZFN2cm9hRUZEdmdVOTRRVlM0dUxxNnVMaTVzRmkrTkQwek9MTTR0RFE0c3pDSXQ3cTR1TGEwdUxpN3NGaS9YaDRmV0w5WXZoTllzaENJdGJCV3Y3cEJYNzFJdUw5NFNyaTR2N1pQZVVpNHYzWkt1TEJmYzBxeFZMaTR1cnE0dUxtd1dMNDBQVE00c0lpNnNGOVl2aE5Zc2hDSXRiQld2N3BCVXJpNHVyeTR1TDkyU3Jpd1VPOThUMzFCVXJpNHZycTR1TFM2dUxpOHVyaXdYN0ZNc1Y5elNMaTJ2N05JdUxxd1gzZFB5VUZmdTBpNHYzaEt1TGkvdGs5M1NMaS9ka3E0c0ZpNHNWYTRzRmk4bFp2VTJMVFl0WldZdE5DR3VMQll2YXpNemFpOXFMekVxTFBBajdWUHRFRld1TGkvZEVCWXUzcjY2M2l3aUxhd1Z4aTNWMmkzRUlpL3RFQlE3M3hQZlVGU3VMaSt1cmk0dExxNHVMeTZ1TEJTdkxGZXVMaTJzcmk0dXJCZmNrL0pRVisxU0xpL2UwQll2QXRyYkFpOENMdG1DTFZnaUwrN1FGK3pTckZmY1VpNHYzbEFXTHJtNm9hSXRvaTI1dWkyZ0lpL3VVQmN1N0ZXdUxpL2RrQll1Y21aaWRpd2lMKzRJRkR0djNaQldyaTR2N0pHdUxpL2NrQmF1TEZXdUxCWXZYdk0zUm93aEg5ZmNoaTR0ck9JdklMWFNHQlVoOVcxQ0xSd2ozZFB1RUZmczBpd1ZXaTJDMmk4QUlxNHNGaTJpb2JxNkxDUGMwaXdXdWk2aW9pNjRJcTRzRmkxWmdZRmFMQ012M2hCV3JpNHY3Skd1TGkvY2tCYXVMRld1TEJZdlBXOFpJbVFoMGtOajNDNlY1VnpvRjBYTzhTWXMvQ1B0RSt3UVZjWXQxb1l1bENLdUxCWXVDa29TVWk1U0xrcEtMbEl1VWhKS0NpM0dMZGFHTHBZdW1vYUNsaTZXTG9YYUxjQWhyaXdXTGxJU1Nnb3VDaTRTRWk0S0xncEtFbEl1bGk2RjJpM0NMY1hWMWNZc0llL2RrRmF1TGkydHJpNHVyQll2N2RCV3JpNHRyYTR1THF3VU85Nzczd0JYYlMzZHpPOHVmb3dWUit6QVYrNFNMaS9jMDk0U0xpMnY3Wkl1TEsvZGtpd1ZyKzFZVmkvY1dxNHVMVGZkcjkwTDdhL2RDaTAxcmk0djNGdmU5KzRZRkR2ZVU5M1lWYUl0dXFJdXVpNjZvcUs2THJvdW9ib3RvaTJodWJtaUxDSXZyRlhtTGZYMkxlWXQ1bVgyZGk1MkxtWm1Mbll1ZGZabDVpd2o3QVBzNUZVYlBpL2NFME04SW9YVUZVMU9MTDhOVENIVjFCVUphRlNmdmkvYzI3KzRJb1hVRk5EU0wreUxpTkFoMWRBWDN0Y01WZGFJRnc4T0w1MVBEQ0tHaEJkQkhpL3NFUmtZSTFFd1ZkYUVGNHVLTDl5STA0Z2lob1FYdktJdjdOaWNvQ1BzSmpCVnJpNHVyQll1ZGZabDVpM21MZlgyTGVRaUxhMnVMaTZzRmk2Nm9xSzZMcm91b2JvdG9DSXRyQll2N0ZCWDdGSXVMNi9jVWk0c3JCU3VyRmN1TGk2dExpNHRyQlE3M1JHc1ZYSXRmbldxdFJzK0w5d1RRendqRHhQZU4rNDFTVXdWcWFWOTVYSXNJUi9mTUZXbHBCVk5UaXkvRFU2WndzSHl4aTdHTHNKcW1wZ2l0cmZ0ZzkyQUZnUHRyRlYrMmk5TzN0Z2loZFFWc2E0dFpxbXNJZFhVRjkxRDNCaFYxb1FXUmtZNlRpNVNMbElpVGhaRi9sM1dMZjM4SWRhRUZvNk8xaTZOemwzK1NlNHQ2aTNxRWUzOS9DTzJ5Rll2YlM4czdpd2lMcXdYc2k5bzhpeW9JYTRzRjdKSVZpL2NQSisvN0Q0c0lpNnNGOXlDTDl3ZjdCNHY3SUFocml3VU85NVM3RmZzUWl5ZmhpL1VJaTV2TGk0dHJiSXNGbFRyZFRPNkw3b3ZkeXBYY0NHeUxpNnZMaTR0N0JZc2hKelg3RUlzSWkvZWtGVitMWjYrTHQ0dTNyNiszaTdlTHIyZUxYNHRmWjJkZml3aUw5eFFWY1l0MWRZdHhpM0doZGFXTHBZdWhvWXVsaTZWMW9YR0xDSHY3QkJXcmk0djdkR3VMaS9kMEJadjhCQlZ4aTNXaGk2VUlxNHNGaTRLU2hKU0xsSXVTa291VUNLdUxCWXR4ZFhWeGl3Z082OHNWZTR0OGozMlNYS1I1eHFTNXBickZuYmx5Q0h4dUJXeWNaSDk3Ykhwc2wyU3FlNXFEbkltYmtKeVFtSmFUbWdpb2ZBVitkSGQ2YzRTQ2lJR0tnb3NJK0IvM2d4V1ZiUHdrK3hPQnFmZ2s5eFFGKzd0QkZmc2I5eS8zNTR1TEsydUxpOHY3Z1l2a0pnWGJPaFhMTzNOM1M5dWpud1VPOTVUckZTR0xOZUdMOVl2MTRlSDFpL1dMNFRXTElZc2hOVFVoaXdpTDkvUVZNNHREUTRzeml6UFRRK09MNDR2VDA0dmppK05EMHpPTENJdjdsQlZXaTJDMmk4Q0x3TGEyd0l2QWk3WmdpMWFMVm1CZ1Zvc0lpL2MwRldpTGJtNkxhSXRvcUc2dWk2NkxxS2lMcm91dWJxaG9pd2lMU3hWcml3V0xuWm1abllzSWkyc0Y5MHo3MUJYOEJJdTA4YWwvZEZIM3BJdDB4YW1YQlE3NExmZEJGWFNpeU1nRnQ3YUwwMSsyWUxkRGkyQmZDRTVPZEtMSXlBWER3K2VMdzFQRFU0c3ZVMU1JVGs0Ris1MzdZUlZtaTJhWmI2ZFR3NHZudzhNSXlNaWlkRTVPQlY5Z2kwTzNZTFpmMDR1MnR3akl5S0owVGs0RmIyOW1mV2FMQ0ZiNFR4WDNGUHNVZFhYN0ZQY1VvYUVGOTNUN2RCWDNGUHNVZFhYN0ZQY1VvYUVGRHZmVTl3UVYrOVNMaS9mVTk5U0xpL3ZVQmZ1MHF4WDNsSXVMOTVUN2xJdUwrNVFGK0hSckZmczBpNHVyOXhTTGkvY0FZZDlWaTRzcnk0dUxheXVMaS9jMDlZdkIrd0FGL0ZSM0ZmZFVpNHRyKzFTTGk2c0YrQVQ3ZEJWb2kyNm9pNjRJcTRzRmkzbVpmWjJMbll1Wm1ZdWRDS3VMQll0b2JtNW9pd2o3eElzVmFJdHVxSXV1Q0t1TEJZdDVtWDJkaTUyTG1abUxuUWlyaXdXTGFHNXVhSXNJRHZlVWF4WDdCNHN1Nkl2M0I0dmZ2ZGZacXdpWGJnVkpiMkZMaTBTTEt0bzg3SXZtaTlqU2t1VUlxNGtGZ2lBd055Q0xDUGREOTNNVmhzeGl4RTZsQ0plb0JkTnR2RWlSUFFocmlRWDdFL2NsRld1TGk5dTdpNHVyK3hTTGkydTdpNHM3YTR1THUxdUxpK3YzVkl1TEsxdUxCZmNwcGhXaGRWdGJkYUc3dXdXTG9oVzRYblIwWHJpaW9nVkcrNllWK3lTTGkvY2txNHVMK3dUM0JJc0ZEdmY2OUJYN0N2Y0hpL2M2cTR1TCt5MzNBQ0lGK3cvN01SVkppMG1rV3J3SW9hSUYxMEQzQ24vanhRaWRjUVZnYmxwK1dvc0k5Mm4zQmhWeG5RWEY0My8zQzBEV0NLS2hCZUUybVBzY1NDWUl0dmNoRld1TEJZdjFQK2dpb0FpUnFnWDNESFBpSVl2N0RRajdsdnVVRmZzaGkvc0g5d2VMOXlHTDl3N2g5UGNMb3dpUmJBVWtkajh2aXlDTCt3L3dKdmNQaXdpTGF3VU8rSlQzbEJYOGxJdUw5MVQ0bEl1TCsxUUYvSFNyRmZoVWk0djNGUHhVaTR2N0ZBWDRSUHUwRmZ3MGk0djNoS3VMaS90azkvU0xpL2RrcTRzRk8vc0VGZnVVaTR2cnE0dUxTL2RVaTR2THE0c0ZEdmRhOTVRVisxcUxpNnYzUkl2TTkwbXBnUVgzUlB4MEZmdFQ5d1g3VS9zRjBQZE5Mcm1acC9jTVVWdjdFL2NWMS9jVlAxdjNFL2NNeFpsdkxsMEY5eHJuRmZ0d2kyajNFcW1VcUNUM1dJc0ZEdmhoOXhRVis4MkxPL2UwVjR1THE5ZUwyL3UwOTV1THBmY2srNUdMaTZ2M3Q0c0YrOGY3NUJWeGkzV2hpNldMcGFHaHBZdWxpNkYxaTNHTGNYVjFjWXNJaThzVmdvdUVoSXVDaTRLU2hKU0xsSXVTa291VWk1U0Vrb0tMQ1Bka1N4VnhpM1doaTZXTHBhR2hwWXVsaTZGMWkzR0xjWFYxY1lzSWk4c1Znb3VFaEl1Q2k0S1NoSlNMbEl1U2tvdVVpNVNFa29LTENQczA5MlFWcTR1TE8ydUxpOXNGNjRzVnE0dUxPMnVMaTlzRkRydjM1QldyaTR2N1pHdUxpL2RrQmZnVWl4V3JpNHY3Wkd1TGkvZGtCZnN3L0FRVlk0djdLdHNGYUtDSW80dXVDS3VMQll0cmpZS2hmd2lMaS9jZ1FLT0w5eURXQmFHWGpaU0xxd2lyaXdXTGFJaHphSFlJaVlyN0tEd0YreGozbEJYM2RJdUxhL3QwaTR1ckJZdExGZmQwaTR0ciszU0xpNnNGaS9jVUZmY0VpNHRyK3dTTGk2c0Y5OVRiRmZzRWl3VmlpMmloZDZ0M2EyaDFZb3NJK3dTTGk2djNCSXNGdDR1dnI0dTNDS3VMQll0ZnIyZTNpd2ozQkl1TGF3VU90NjRWb25SalpIV2hzck1GK0JyNEdoV2lkRDArZGFIWTJRV0V2UlhiTzNWMU85dWhvUVg3YS94REZYU2k5MFgzUlRIbCswWDdSWFNpOTF6M1hQY2MreHdGKzZ0WEZhWndkSFJ3cHFLaUJidTdGYVp3ZEhSd3BxS2lCYnU3RmFad2RIUndwcUtpQlRiN3BCVnlpM09VZUo1bXNZdkhzTEVJb25RRmNuS0xZNlJ5cEhLemk2U2tDS0owQlhoNGM0Snlpd2dPK0hEM2VSVnpvQVdkb1pXbmk2ZUx6VlhCU1l0bmkycDhkSEFJZjN4L21nVjBwbXFhWjR0SmkxVlZpMG1MYjVWdm5YVUljM1lGZEtkK3JvdXZpOS9QejkrTHNvdXdmS2R4cDZXd21yS0wzNHZQUjRzM2kyZCthSFJ2Q1B0OSt4SVZWZmNIZUdIN1BvdUxxL2NxaTdMaHZTREw5MG5IK3pUM0tZdUxhL3RBaTJmdEJYTDd4aFZkaS9zWjl6R2pvUGNQK3lhZGkvY1A5eWFqZGdVTzkzL05GZnNiOXh6M1J2ZEc5eHo3Ry90SCswY0ZNZmNjRmVVdzl4cjNHakRsK3huN0dRVmErMzRWY1l0emxYbWRackdMeDdDeENMZTNvblJmWHdWL2Y0UjdpM3FMZXBKN2wzK1hmNXVFbkl1Y2k1dVNsNWNJdDdlaWRGOWZCWGw1YzRGeGl3ajM3UGZFRlhTaXQ3Y0ZsNWVTbTR1Y2k1eUVtMytYYzZOaGkzTnpDRjlmZEtLM3R3V2RuYU9WcFl1bGk2T0JuWG1kZVpWemkzR0xjWUZ6ZVhrSVgxOEYrNHhpRmFKMGRIUjBvcUtpQmN1YkZhSjBkSFIwb3FLaUJadkxGYUowZEhSMG9xS2lCV3Y3RkJXaWRIUjBkS0tpb2dYYjJ4V2lkSFIwZEtLaW9nVU85K3h2RmZzYzl3NkxZNUNRb1hSUVVZdjNVUGNzK3g3M0UvZ2UvQjM3SU44NDl6ZjNFSjV4KzAzN0lQc2g5eDM0aS9kSUJRNzRMZmRCRlhTaXlNZ0Z0N2FMMDErMllMZERpMkJmQ0U1T2RLTEl5QVhEdytlTHcxUERVNHN2VTFNSVRrNEYrNTM3WVJWbGkyYWFjS1pUdzR2bnc4TUk5eEQzRVBkaCsxLzdFZnNSQlhCd1pueGxpd2lpOTlrVkpTVUZYMkNMUTdkZ29IYW5mNm1McVl1bmw2Q2dDUEh4K3pMM01nVU8rSEtMRmZ4UWkybjNncXVQcWZ0bStCaUxxZmRtcTRjRi9KVE5GZmlVaTR0ci9KU0xpNnNGOTJUN0FSV2JLMnVGZSt1cmtRWHJpeFdyaFhzcmE1R2I2d1crOTVvVnBYbjdCUHMwY1ozM0JQYzBCUTczNDJjVlA0czNyMGJQK3dIM0FXMzNMTkhuQ0tWNEJWQTlxUHNkNnl2cksvY2JjTmZJQ0o5eUJXbHdZWDVlaXdqM0t0a1YrdzMzRFhWMUJYUjBiWDlxaTJ1TGJKZDFvbHU3aTlpN3VnaWdvZnNOOXcyaW92Y2sreVJlWHdWb2FJdFNybWljZXFHQ280dWppNkdVbkp3SXVMZjNJL3NrZFhVRkR2aHQ5OFVWK3h6M0hKYVdCWjJkbzVXbGk2V0xvNEdkZWJCbGkwOW1aUWlBZ0FVeDl4b1Y0ek1GbXFTSHEzYWdkNkJxam5KOUNGcDhGZXY3TkhCN0svYzBwcHNGKzluOFVoVzc5MGFxZzJyN0V2Y1JyWlJzQmFXaUZXWHNLckQzVy9kZG9uVDdPZnM2ekhLa1MvY1o5eG1pZEFVTzl6bjNLQldoYy9zayt4eDFvL2NrOXh3RnRsOFZhSXR1cUl1dWk2Nm9xSzZMcm91b2JvdG9pMmh1Ym1pTENJdnJGWG1MZlgyTGVZdDVtWDJkaTUyTG1abUxuWXVkZlpsNWl3ajNOSnNWYVl0cm1IT2pjcVIrcTR1dGk2MllxNlNrQ0xhMzkwcjdTVjllQlhKemEzNXBpd2hjOTIwVmRuWUZlWG1CYzR0eGkzR1ZjNTE1blhtamdhV0xwWXVqbFoyZENLQ2greHozR3dYN3gveFpGYTczeXZjcjM1dHYreDAvYnZ1Tzk2YTl1UGNNcVg5WSt4d0ZEdmMwZXhWZ2kyT2NiYWx0cVhxemk3YUx0cHl6cWFrSTkwMzNXcUoyKzAzN1d3VnljbjVyaTJtTGFaaHJvM09rY3F0K3JZdXRpNnVZbzZRSTkxNzNhZ1dkblpXamk2V0xwWUdqZVoxNW5YT1ZjWXR4aTNPQmVYa0krMTM3YWdWeWNZdGpwSEtYZjV1RW5JdUxpNHVMaTR1Y2k1dVNsNWNJOTFYM1hhSjErMVg3WGdWNWVYT0JjWXVMaTR1TGk0dHhpM09WZVoxbHNJeklzTEVJOTEzM2FnV2twS3VZcll1dGk2dCtvM0trYzVocmkybUxhWDVyY25JSSsxMzdhZ1Z0YldONllJc0lEdmMweXhXTGl3VXppMFBUaStPTDQ5UFQ0b3NJOTFXTEJlT0wwME9MTTRzelEwTTBpd2o3VllzRjkxVDN0Qlg3VllzRlJZdFNVb3RFaTBURVV0S0xDUGRWaXdYUmk4VEVpOUtMMGxMRVJJc0krMVQ3ZEJWV2kyQzJpOENMd0xhMndJdkFpN1pnaTFhTFZtQmdWb3NJaS9jMEZXaUxibTZMYUl0b3FHNnVpNjZMcUtpTHJvdXVicWhvaXdnTytFVDN4QlZyaXdXTDJrck1QSXM4aTBwS2l6d0lhNHNGaSt6YTJ1eUw3SXZhUElzcUNQdEUrK1FWS29zODJvdnNDSXYzRkt1TGkvc1VCWXM4ekVyYWk5cUx6TXlMMmdpTDl4U3JpNHY3RkFXTEtqdzhLb3NJZS9nMEZhdUxpL3NVYTR1TDl4UUZEdmVFOXpRVk80dUxxN3VMaS9jVU80dUxxL2NFaXdYM3BQdTdGZnU1ODVXcDk0OHppL2ZHKzQ4emdhbjN1Zk1GTlNrVmwyMzdKRldBcWZjandRWDczdnRaRlN1TGkvZFU2NHVMKzFRRlM2c1ZxNHVMOXhScmk0djdGQVhyKzFRVmFJdHVxSXV1Q0l2THE0dUxTd1dMZVpsOW5ZdWRpNW1aaTUwSWk4dkxpNHRyYTR1TGF3V0xhRzV1YUlzSUR2ZGg5MEVWVThPTDVzUEVDS0owQlY5ZmkwUzNZQWgwZEFYM1lJc1ZkS0xJeUFXM3RvdlRYN1pndDBPTFlGOElUazUwb3NqSUJjUEQ1NHZEVThOVGl5OVRVd2hPVGdVbEpSVjBvZ1czdDR2U1g3WUlvcUlGdzFPTE1GTlNDUHMzSkJWbWkyYVpiNmRUdzR2bnc4TUl5TWlpZEU1T0JWOWdpME8zWUxaZjA0dTJ0d2pJeUtKMFRrNEZiMjltZldhTENBN3I5NVFWcTR1TGEydUxpNnNGNjRzVnE0dUxhMnVMaTZzRjY0c1ZxNHVMYTJ1TGk2c0Y2NHNWcTR1TGEydUxpNnNGKzdUTEZhdUxpMnRyaTR1ckJldUxGYXVMaTJ0cmk0dXJCZXVMRmF1TGkydHJpNHVyQmV1TEZhdUxpMnRyaTR1ckJmdVUrelFWOTVTTGkydjdsSXVMcXdYNEZQc0VGZnlVaTR2M3hLdUxpL3VrK0ZTTGkvZTAvSFNMaTZ2NGxJc0ZEdmhVYXhYOEZJdUw5MlNyaTR2N1JQZlVpNHYzUkt1TEJhK1FGZnQ0OTRqN2VQdUljNkgza1BlZzk1RDdvQVg3VVBzL0ZXdUxpL2NFUzR1TCt3UnJpNHYzSlBjVWl3VkxxeFZvaTI2b2k2NkxycWlvcm91dWk2aHVpMmlMYUc1dWFJc0lpK3NWZVl0OWZZdDVpM21aZloyTG5ZdVptWXVkaTUxOW1YbUxDQTczbVg4ViszWDNaUVYwcDM2dWk2K0wzOC9QMzR1eWk3QjhwM0ducGJDYXNvdmZpODlIaXplTFozNW9kRzhJaW9yN1JQczBkYVAzUS9jekJaMmdsYWVMcDR2TlZjRkppMmVMYW54MGNBaC9mSCthQlhTbWFwcG5pMG1MVlZXTFNZdHZsVytkZGdqM2MvdGpkWE1GZWZNVit6WDNLZ1YvbW9XZmk1Nkx2TEt5dklzSWkyc0ZiSXR5Y290c2kzK1BmNUtCQ1BjeSt5WjFjd1hQOTNnVmI1b0ZscUNlbXFLUm9aS2ppS0NBQ0h0dkJYNlNmSTE5aDN5R2Y0S0VmZ2dPOXdUYkZYdUxCVlNMWXJTTHdvdkN0TFRDaXdpYmk0djdWQVZyOXpJVmJvVjRjNHRyaTJ5ZWNxaUZDSXYzRUFYMzVQc3lGWHVMaS9kVW00c0Z3b3UwWW90VWkxUmlZbFNMQ0p2M01oV0wreEFGcUpHZXBJdXFpNnQ0bzI2UkNJdjdnaFdMcXdXVGk1T1FpNVlJcTRzRmkzQjJkbkNMQ0V1ckZjdUxpMnRMaTR1ckJXTkxGWEdMZGFDTHBvdWxvYUdsaTZhTG9IV0xjWXR3ZG5ad2l3aUx5eFdEaTRPRWk0S0xncE9FazR1VWk1S1NpNVNMbElTU2dvc0k4L2VrRld1TEJZdmFTc3c4aXp5TFNrcUxQQWhyaXdXTDdOcmE3SXZzaTlvOGl5b0lEdmhoOXhRVis4MkxPL2UwVjR1THE5ZUwyL3UwOTV1THBmY2srNUNMaTZ2M3Rvc0YrOGY3NUJWeGkzV2hpNldMcGFHaHBZdWxpNkYxaTNHTGNYVjFjWXNJaThzVmdvdUVoSXVDaTRLU2hKU0xsSXVTa291VWk1U0Vrb0tMQ1Bka1N4VnhpM1doaTZXTHBhR2hwWXVsaTZGMWkzR0xjWFYxY1lzSWk4c1Znb3VFaEl1Q2k0S1NoSlNMbEl1U2tvdVVpNVNFa29LTENQczA5MlFWcTR1TE8ydUxpOXNGNjRzVnE0dUxPMnVMaTlzRksrc1ZhNHVMdC9hdWxXMDJiZ1gzZEhjVmE0dUxyeXVqaTA5cmk0dnY5elJqQlE3NGxQZmtGV3VMaS9jRSt3U0xpNnYzSklzRmNJWVZvWFg3WmZ0bGRhSDNaZmRsQmZ2cC9JOFYreVNMaS9ja3E0dUwrd1QzQklzRjBmZGdGYUYxKzJYN1pYV2g5MlgzWlFYN0N1OFZhNHVMOXdUM0JJdUxhenVMQld2N0JCV3JpNHNyYTR1TDZ3WDNKUGNrRmV1TGkyc3JpNHVyQmZlRS9CUVYrd1NMaTZ2Ymk0dmJxNHNGYS9jVUZhdUxpeXRyaTR2ckJmdGsrMlFWNjR1TGF5dUxpNnNGRHZpVW14WDhsSXVMOTlUNGxJdUwrOVFGL0hTckZmaFVpNHYzbFB4VWk0djdsQVg0ZFBmVUZmdlVpNHVyK3pTTGkydHJpNHZMOTNTTGkydjN0SXNGRHZnMDk1UVYrOVNMaS9jVXE0dUxLL2VVaTR2cnE0c0ZTMHNWSzR1THk2dUxpMnVyaTR1cnE0c0Y5elQ4TkJYOGxJdUwrSlQ0Tkl1TGEvd1VpNHY4VlBoVWk0djRGS3VMQmZ3MCsxUVY5OVNMaTJ2NzFJdUxxd1dMU3hYMzFJdUxhL3ZVaTR1ckJZdExGZmZVaTR0cis5U0xpNnNGRHZnVXF4WDc5SXVMK0ZUMzlJdUwvRlFGKzlTckZmZTBpNHY0RlB1MGk0djhGQVc3OTNRVjkxU0xpMnY3Vkl1THF3V0xTeFgzVkl1TGEvdFVpNHVyQll0TEZmZFVpNHRyKzFTTGk2c0ZpL2RVRmV1TGkyc3JpNHVyQmZnRS9CUVYrK1NMaTZ2M3hJdUwrQlJzaTR1cnlvc0ZEdmNrOTVRVjkyU0xpMnY3Wkl1THF3V0xTeFgzWkl1TGEvdGtpNHVyQll0TEZmZGtpNHRyKzJTTGk2c0ZpL2QwRmV1TGkyc3JpNHVyQmZmVS9CUVYvRVNMaS9oVXE0dUwvRFQ0Qkl1TCtGVDhKSXVMcS9oRWl3VU85NVRiRlZ5TFk2NkR1QWo3TjR1dDk1YXJoMjM3Y3ZjeWk0dDdCWXRvcUc2dWk2NkxxS2lMcmdpTG0vY3lpMjMzY3F1UHJmdVcremVMQllOZVkyaGNpd2ozbENzVi9KU0xpL2NrcTR1TCt3VDRWSXVMOXdTcml3VXI2eFZyaTR2M1pQdVVpNHY3Wkd1TGkvZUU5OVNMQmZ1VVN4WGJpNHRyTzR1THF3V0xTeFgzVkl1TGEvdFVpNHVyQll0TEZmZFVpNHRyKzFTTGk2c0ZEdmcwOTRRVit5U0xpL2NrcTR1TCt3VDNCSXNGMFBkZkZhRjErMVg3VlhXaDkxWDNWUVg3aWZ3dkZXdUxpL2NFK3dTTGk2djNKSXNGWVhjVm9YWDdWZnRWZGFIM1ZmZFZCZnM2OTBjVmE0dUw5d1QzQkl1TGF6dUxCV3Y3QkJXcmk0c3JhNHVMNndYM0pQY2tGZXVMaTJzcmk0dXJCZmdFL0pNVit3U0xpNnZiaTR2YnE0c0ZhL2NVRmF1TGl5dHJpNHZyQmZ0aysyUVY2NHVMYXl1TGk2c0ZEdmVVNnhWY2kyT3VnN2dJK3plTHIvZWsrRkNMci91ayt6ZUxCWU5lWTJoY2l3ajdjdmNFRmZjeWk0dDdCWXRvcUc2dWk2NkxxS2lMcmdpTG0vY3lpMi8zWlB3WWkyLzdaQVg0Y3Z0a0ZmeVVpNHYzSkt1TGkvc0UrRlNMaS9jRXE0c0ZEdmcwYXhYNzFJdUwrQVNyaTR2NzVQZVVpNHYzNUt1TEJmdjB5eFg0Rkl1TGEvd1VpNHVyQmZla2F4WDdOSXVMOXdUM05JdUwrd1FGK3hTckZldUxpN3NyaTR0YkJYdjdCQldyaTR2N2RHdUxpL2QwQmV1TEZhdUxpL3QwYTR1TDkzUUZEdmdFcXhYN2RJc0ZPNHRMekl2YWk5ckx6TnVMQ1BlRWl3WE9pOGhHaTBDTFBFdEtPNHNJKzNUM2xCVk5pMWxaaTAyTFRiMVp5WXNJOTNTTEJjbUx2YjJMeVl2S1dMeGVpd2o3aElzRmUxc1ZxNHVMK3hScmk0djNGQVZiV3hYM0ZJdUxhL3NVaTR1ckJmZFU5elFWYTR1THF3V0xwYUdocFlzSWkyc0Znb3VFaEl1Q0NJdHJCY0w3UVJXRWtvR0xoWVFJZEtJRm5wNnBpNTU0Q0hWMEJWMWVGWUtVaHBlTG1JdVlrSmVVbEFpaWRBV0lpSW1IaTRlTGg0Mkhqb2dJZEhRRjl5SzRGWVNTZ1l1RmhBaDBvZ1dlbnFtTG5uZ0lkWFFGWFY0VmdwU0dsNHVZaTVpUWw1U1VDS0owQllpSWlZZUxoNHVIalllT2lBaDBkQVVPOTVSckZmc1FpeWZ2aS9jUWkvUFM1ZkNqQ0pOc0JUUjJUaitMTVlzaDRUWDFpL1dMNGVHTDlZdmxUdGMwb0FpVHFnWHdjOUl4aXlPTCt4QW5KL3NRaXdoNytKUVZxNHVMSzJ1TGkrc0ZhNHNWNjR1TGF5dUxpNnNGVWZ3ZEZiYjNFcW1CZFVuTm9aVnRCYlcxRlcyVm9jMUpkWUdwOXhPMUJRNzNsUGQwRlY2TGFLK0x0NHUzcnErNGk3ZUxyMmVMWDR0ZloyZGZpd2lMOXhRVmNJdDJkWXR4aTNHZ2RhYUxwWXVob1l1bGk2VjFvWEdMQ0kvN3BoVnNpMnlUYjV3SW02WUZ6MlBrb0xUUENLWjdCV3BVVVcxUGl3aDMrQ1lWcTR1TFMydUxpOHNGVy91Z0ZhcURTdnQwYkpQTTkzUUY5eEtMRmN6N2RHeURTdmQwcXBNRkR2aFVheFg4Rkl1TCtGVExpNHRyYTR1TC9CVDMxSXVMK0JScWk0dXJ6SXNGS2tzVisxS0xpK3U5aXdXUm5wMllvSXVnaTUxK2tYZ0l2WXVMS3dYN01xc1Y5eEtMaTZ0Y2k0dWJCWXVVaEpLQ2k0S0xoSVNMZ2dpTGUxeUxpMnNGYXZzMEZmZFVpNHRyKzFTTGk2c0ZpMHNWOTFTTGkydjdWSXVMcXdXTFN4WDNWSXVMYS90VWk0dXJCWXYzVkJYYmk0dHJPNHVMcXdVTytGUnJGZndVaTR2NFZNdUxpMnRyaTR2OEZQZlVpNHY0RkdxTGk2dk1pd1VxU3hYN1VvdUw2NzJMQlpHZW5aaWdpNkNMblg2UmVBaTlpNHNyQmZzeXF4WDNFb3VMcTF5TGk1c0ZpNVNFa29LTGdvdUVoSXVDQ0l0N1hJdUxhd1dhK3dRVnE0dUwrM1JyaTR2M2RBWExxeFdyaTR2N2xHdUxpL2VVQmN0YkZhdUxpL3RrYTR1TDkyUUYrMVFyRmF1TGkvc0VhNHVMOXdRRkR2YzErSFFWOTFTTGkydjdWSXVMcXdYM21meVVGZnZnaTRlUUJYS2pmcXVMcm91dW1LdWpvd2ozQVBjQWkvY3RxNHVMK3p2N0Nmc0lCWGw1Z1hLTGNZdHprM1diZVFqM3hJc0ZyTEdLeG1ldkNQc0o5d2lMOXp1cmk0djdMZmNBK3dBRnZWbUxPVmhaQ0llR0JmdkgxaFdKa29xU2k1S0xuWktibDVjSTl3VDNCS0YwK3dUN0JBV0ZoWWlEaTRLTGg0eUlqSWNJYklFRkR2ZVVheFg3SVl2N0IvY0hpL2NoaS9jaDl3ZjNCL2NoaS9jaGkvY0grd2VMK3lHTCt5SDdCL3NIK3lHTENJdjRkQlg3RUlzbko0djdFSXY3RU84bjl4Q0w5eENMNysrTDl4Q0w5eEFuNy9zUWl3aUwrN1FWYUl0dXFJdXVpNjZvcUs2THJvdW9ib3RvaTJodWJtaUxDSXZyRlhtTGZYMkxlWXQ1bVgyZGk1MkxtWm1Mbll1ZGZabDVpd2g3OXpRVnE0dUwrelJyaTR2M05BV0wrM1FWcTR1TCt6UnJpNHYzTkFYM0lQZEhGYUowK3dYN0JYU2k5d1gzQlFYN012c3lGYUowK3dYN0JYU2k5d1gzQlFVTzkzNnJGZnMrOTBQMzdQZWk4Q2I3cC92c0Jmc085MEFWOXd6N0VQZCs5N3BQeC91Niszb0Y5NnIzUlJXZmNmdHQrejE0cGZkczl6MEYrOVQ4R0JWZXVKYVdCWjZlaTZwNG5RaUFsNjJ0b25SK2ZnV2RjWXRvZVhBSWpZa0ZwcDJ1aTZWNUNKaVlvblJwYVgrV0JYbWViSXQ0ZUFpQWdBVjB1QldpZEdscGRLS3RyUVVPK0pUM0ZCWDhsSXVMcS9oMGk0dXlRN2FicCtOV0JmeDBiaFZyazc3M2NQZXVpN0w3UlB1NGk0dXI5NUNMY3ZjRSszcUxCZmZIKy9RVmFJdHVxSXV1Q0t1TEJZdDVtWDJkaTUyTG1abUxuUWlyaXdXTGFHNXVhSXNJKzZTTEZXaUxicWlMcmdpcml3V0xlWmw5bll1ZGk1bVppNTBJcTRzRmkyaHVibWlMQ0E3M2hQZ2tGYXVMaS92VWE0dUw5OVFGcS94RUZXdUxCWXVsZGFGeGl3ajdSSXVMcS9kRWl3VzNpNjluaTE4SWk0c1ZhNHNGaTdldnI3ZUxDUGRFaTR0ciswU0xCWEdMZFhXTGNRaEw5d1FWKzFTTGkvZ2s5MFNMQmJlTHIyZUxYd2hyaXdXTHBYV2hjWXNJK3lTTGkvdms5elNMaTJzRjk3U0xGZnRVaTR1cjl6U0xpL2ZrK3lTTEJYR0xkWFdMY1Focml3V0x0Nit2dDRzSTkwU0xpL3drQlE3M0EvZ1pGYXNyYklGczY2bVZCZXlMRmFvcmJZRnI2NnFWQlR2OEdSVldpMkMyaThDTHdMYTJ3SXZBaTdaZ2kxYUxWbUJnVm9zSWkvYzBGV2lMYm02TGFJdG9xRzZ1aTY2THFLaUxyb3V1YnFob2l3ajN0UHMwRlZhTFlMYUx3SXZBdHJiQWk4Q0x0bUNMVm90V1lHQldpd2lMOXpRVmFJdHVib3RvaTJpb2JxNkxyb3VvcUl1dWk2NXVxR2lMQ0N1b0ZmdlV3SXYzWXZpVWk0dHIvSFNMaS9zbTk1UmdpL2N4cTRzRjkxVDdWQlZyaTR2WWI5NUhpNHNyeTR1TGF5dUxpL2MwOXhDTHIvc0JCUTdxcXhWM2kzaVJlcGgybW4yaGg2U0lwWkdrbXFDYW42R1pwWThJa0dzRmVvbDhnb0Y5Z1gyR2VvNTZqbnFVZkppQnFIZXprYUNuQ0tWNEJYaHlibjF0aXdqMzFvc1ZmSXQ5am42U2RKWjVub09rZzZPTXBaYWlDS2g5QllSOGlubVFlNUY3bG42Ymc1cUVuSXFja1p1UW1KZVNtcE9hakoyRm00YWJmNWg4a3dpWnB3V2lnSng0azNLVWM0bHhnSFNBZEhkNmM0S0JpSUNKZ1lzSWF2ZW9GYnY3Ukd5RFcvZEVxcE1GdU9jVmsyeExlb09yeTVzRisxTkxGWkJySzN1R3ErdWJCWmI3ZEJYN1RJdUxzL2NlOHZjMHk1RjhtSUg3R2Z0S0Jmc2lxeFgzRW92bDl4RWhZUHNDT1FYM2l2ZFVGYXVMaTF0cmk0dTdCUTc0QVBkd0ZXK0xicFoxb1hhZ2Y2ZUxxWXVwbDZlZ29RaTR1S0owWGw0RmZIeUNkNHQxaTNhVWQ1cDhxbXkraTZxcUNMaTRvblJlWGdWMWRXNkFib3NJOXhIWkZXbXRnSUFGY25KaWkzS2tmNWVFbTR1Y2k1eVNtNWVZQ0phV2FhMmlvY1JUYVdrRmhZV0hnNHVDaTRPUGc1R0ZrWVdUaDVPTENJdUxCWlNMazQrUmtRaXRyY05TZFhRRi9EMzdmaFdyaTR0cmE0dUxxd1gzUGZkYUZjdE1kSFZNeWFHaUJmc3QrN29WZG90M2szdWFmSnVEbjR1Z2k2Q1RuNXFiQ0kyTTl6YjNDSjV4K3pYN0J3V0Rnb1ovaTMrTGZwQi9sSUtkZWFxTG5ad0k5d2YzTktWNSt3bjdPQVY3ZkhlRGRvc0lEdmlVbXhYOGxJdUw5NVNyaTR2N2RQaFVpNHYzZEt1TEJZdXJGZnlVaTR2M0ZQaVVpNHY3RkFYOGRLc1YrRlNMaTh2OFZJdUxTd1dydXhXcmk0dHJhNHVMcXdXN2l4V3JpNHRyYTR1THF3VzdpeFdyaTR0cmE0dUxxd1dyKzhRVit4U0xpL2RVOXhTTGkvdFVCU3VyRmN1TGkvY1VTNHVMK3hRRjkvUnJGZnQwaTR2M1ZQZDBpNHY3VkFYN1ZLc1Y5elNMaS9jVSt6U0xpL3NVQlE3M2xOc1ZQSXRLekl2YWk5ck16TnFMMm92TVNvczhpenhLU2p5TENJdjNsQlZOaTFsWmkwMkxUYjFaeVl2Smk3MjlpOG1MeVZtOVRZc0k3cElWYjdUN0lvdHZZbkdkcjhMM1JvdXZWQVZ1c2hWcmk0dTcreFNMaTF0cmk0dmI5MVNMQllUOFZCWDdSb3Rud3FXZHAyTDNJb3VudEtWNUJXNzdDeFg3Vkl1TDI2dUxpMXYzRkl1THU2dUxCWHYzTkJVcmk0dnJxNHVMUzh1TEJRNzMxSTRWKzEzM0U1Mm45eXNxaS9mYSt5c3FlYWYzWGZjVEJUUDdJeFdiYnp0YmU2ZmJ1d1g3SFB0Q0ZTdUxpL2RVNjR1TCsxUUZTNnNWcTR1TDl4UnJpNHY3RkFYMzFHc1ZpNnNGcm91b3FJdXVpNjV1cUdpTENJdXJCY0NMdG1DTFZvdFdZR0JXaXdpTFN4V0xxd1hTaThURWk5S0wwbExFUklzSWk2c0Y0NHZUUTRzeml6TkRRek9MQ0l2M0ZCV0x5d1dkaTVsOWkzbUxlWDE5ZVlzSUR2ZlV1eFg3MUl1TDk1VDNjNHVMYS90VGk0djdWUGVVaTR2M2x2dEdxWkNyOTJGcEJmdVUreElWOXpPTGkydjdNNHVMcXdYNFZQdFlGZnNvcjVPcjl3QnZpL2RNK3dCdmc2djNLSzhGRHZkVTkxUVZQSXRLekl2YWk5ck16TnFMMm92TVNvczhpenhLU2p5TENJdjNsQlZOaTFsWmkwMkxUYjFaeVl2Smk3MjlpOG1MeVZtOVRZc0k5MFQ3bEJXTHF3VzNpNit2aTdlTHQyZXZYNHNJaTZzRnlZdTlXWXROaTAxWldVMkxDUGNrKzFRVks0dUxxOGFMZjk1WW1aT3EwM2dGSWZ0QkZmd1lpNS8zTzlhamxXMVRlWDc3QS9mUWkzNzNBMU9kbGFuV2N3VU85NUQzVkJVOGkwck1pOXFMMnN6TTJvdmJpOHRLaXp5TFBFdEtPNHNJaS9lVUZVNkxXRm1MVFl0TnZsbklpOG1MdmIyTHlZdkpXYjFOaXdqM2F2eDBGZnc0aTU3M1ArU3ZsMjFFYjM3N0NmZndpMzczQ1VTbmw2bmtad1VPOStUYkZZdXJCZHFMek15TDJvdmFTOHM4akVDS1RGS0VRNHVJaTRpTGlZdUppNG1MaVFocml3V0xqWXVNaTQyTGo0dVBpNDZUNU5qUjVvd0lpNHVOaXdYcml0azhpeXVMS2p3OEtvc0lPL2RFRld1TEJZdU5pNDZMalFpTGpZdU5CWkRDdnJqRWpBaUxhd1ZpaW1kc2gyU0xoNHVKaTRnSU8vdEVGVnVMQlVTTFVzU0wwb3ZTeE1UU2l3aUxhd1ZXaTJCZ2kxYUxWclpnd0lzSXU0dUxhd1hMMnhXcmk0djdGR3VMaS9jVUJjQlBGV2F1Wm1oMW84YkN4bFFGRHZjazk0UVZjWXQxb1l1bGk2V2hvYVdMcFl1aGRZdHhpM0YxZFhHTENJdkxGWUtMaElTTGdvdUNrb1NVaTVTTGtwS0xsSXVVaEpLQ2l3ajNCRXNWY1l0MW9ZdWxpNldob2FXTHBZdWhkWXR4aTNGMWRYR0xDSXZMRllLTGhJU0xnb3VDa29TVWk1U0xrcEtMbEl1VWhKS0Npd2ozQkVzVmNZdDFvWXVsaTZXaG9hV0xwWXVoZFl0eGkzRjFkWEdMQ0l2TEZZS0xoSVNMZ291Q2tvU1VpNVNMa3BLTGxJdVVoSktDaXdqOEJQdmJGWXY0YS9pVWk0djc1UHdFaTR1cjkrU0xpL2VrL0ZTTGkvdnR2czZsZHdVT3kvZ0VGWXVMaTR1TGkzNkxmNUNDbEFoMG9zL1BvblFGbElLUWY0dCtpMzZHZjRLQ2dvSi9objZMQ0lDd0ZZNklqNG1QaXdpTGl3V1BpNCtOam82T2pvMlBpNCtMajRtUGlJNElpNHQxZFFXNGl4WHdLWFYwSnUyaG9nWDNrdnVQRmVJMGRYUXo0NktoQmRmN1JoVjJpM2VUZTVvSUt1eWlvdXdxQlo1NHFZdWVucDZlaTZsNG5nZ3E3S0dpN0NrRnEyeUxXR3RzZkh4MmczZUxDRmYzbEJXTGl3VnRpMitYZHFCMm9IK25pNm1McVplbm9LQUlxS21pZEc1dUJYeDhnbmVMZFl0MmxIZWFmSnA4bjRLZ2l3aUxpd1doaTUrVW1wb0lxS2lpZEcxdUJYWjJiMzl0aXdqM0Fja1ZhYTEvZ0FWL2YzdUVlb3NJaTRzRmVvdDdrbitYZjVlRW00dWNpNXlTbTVlWENKYVhhYTJpb2NSVGFXa0ZoWVdIZzR1Q2k0T1BnNUdGa1lXVGg1T0xpNHVMaTR1TGxJdVRqNUdSQ0syc3cxTjFkQVg4T2Z0NkZhdUxpMnRyaTR1ckJmYzk5MllWeTB4MGRFektvYUlGK3kzN3hoVjJpM2VUZTVwOG00T2ZpNkNMb0pPZm1wc0lqWXozT3ZjTW5uTDdPZnNNQllPQ2huK0xmNHQra0grVWdwMTVxb3VkbkFqM0RQYzVwSGo3RGZzOEJYdDhkNE4yaXdnTzk1UjBGZnVMOTR2M2NQZHZvWFg3V1B0WjkxMzdYZmRaOTFpaGRRV3d0aFZyaTR2M1pQdGtpNHVyOTRTTEJmczArNFFWaTRzRlhvdG9yNHUzaTdldnI3ZUx1SXV1WjR0ZmkxOW5aMStMQ0l2M0ZCVnhpM1YyaTNDTGNhQjFwb3NJaTN1TG13V2xpNkdnaTZhTHBYYWhjSXNJRHZlRStEUVZxNHVMUzJ1TGk4c0Y5eVQ3UkJYTGk0dHJTNHVMcXdYNzFJc1Z5NHVMYTB1TGk2c0Z6L2NYRmJoZWRIUmV1S0tpQmZlTml4V2hkUHNpK3g5MW92Y2k5eDhGK3hIOEp4WDdJWXY3Qi9jSGkvY2hpL2NoOXdmM0IvY2hpOG1MeDNXNVlnaDJjd1ZqcmxhZlZZdjdFSXNuSjR2N0VJdjdFTzhuOXhDTDl4Q0w3KytMOXhDTHdYZkFhTE1JbzZBRnRGMmhUNHROaS9zaCt3ZjdCL3NoaXdnNjdoVnduQVdpc2JTaHQ0dTNpN1Ixb21VSWNIb0ZlcWRzbkdxTGFvdHNlbnB2Q0E3Yjl5UVZYNHRucjR1M2k3ZXZyN2VMdDR1dlo0dGZpMTluWjErTENJdjNGQlZ4aTNWMWkzR0xjYUYxcFl1bGk2R2hpNldMcFhXaGNZc0k5L1NyRlYrTFo2K0x0NHUzcjYrM2k3ZUxyMmVMWDR0ZloyZGZpd2lMOXhRVmNZdDFkWXR4aTNHaGRhV0xwWXVob1l1bGk2VjFvWEdMQ0l2OFZCVmZpMmV2aTdlTHQ2K3Z0NHUzaTY5bmkxK0xYMmRuWDRzSWkvY1VGWEdMZFhXTGNZdHhvWFdsaTZXTG9hR0xwWXVsZGFGeGl3ajdDL2VDRlpsdit4UkxmYWYzRk1zRit3YjdOQlgzRkV0OWIvc1V5NW1uQlE3M2xQY2tGWXFMQlhhTGQ1TjhtM3lhZzUrTG9JdTNyNiszaTZDTG40T2FlNXQ4azNlTGRvdGZaMmRmaXdpTDl4UVZjSXQyZG90d2kzNlFmNVNDbElLWGhwaUxDSXQ3aTVzRnBZdWhvSXVtaTVpR2w0S1VncFIva0g2TENNSDd4QlVsaTNmV0JYaVNlWlI2bUFoRWVGamp2cjBGaVphS2w0dVdpNVNMbEkyVUNGTEV2dVBaZFFXYm1KMlZuNUlJalppcWg0ZHFnWWdGZFlSM2dYcDhDSVNGUlo5eFhiNVlpb0lGaVlHS2dZdUNpMytNZjQ1L0NJeUNYbCtsWGN1Y2tvWUZtM3lmZ2FDRkNKU0luVWUvaTUvVWtvNEZtNUdabEppV0NKS1IwWGVsdVZpK2paUUZqWldNbFl1VWk1T0trb3FVQ0lxVHhjUnh1VDUzaFpBRmZaZDhsWHVTQ0lTT2Q5UTdpNHVyOUl1aE9RV1poSmlEbUlFSTM2RzlNMHBMQll5RWpJV0xoSXVDaW9LSmdnakVVbGd6UGFFRmdJRitoSDZGQ0hVNUJRNzNaTXNWK3dlTEx1aUw5d2VMOXdmbzZQY0hpL2NIaStndWkvc0hpL3NITGk3N0I0c0lpL2dVRlNxTFBEeUxLb3NxMmp6c2kreUwydHFMN0l2c1BOb3Fpd2ozbFB4MEZYK0xmcENDbEFneTRxR2g1VFVGa1lTVmk1R1NqbzZOajR1UGk0K0pqNGlPQ0RYbG9hSGlNZ1dVZ3BCL2kzNkxmb1ovZ29LQ2duNkdmNHNJKys3M2FoVlp2SXZkdmIwSW9YUUZabVdMVDdCbENIVjFCUTc0VXZnQ0ZZdUxCWDZMZjVDQ2xJS1VocGVMbUl1WWtKZVVsQWlpb3M5SGRIUUZnb0ovaG42TENJREdGWWlJaVllTGg0dUhqWWVPaUpHRmxZdVJrUWlMaTNXaEJYUjFGYUowK3p6N08zV2g5enYzUEFYN2RQdDBGYUowK3d6N0MzV2g5d3YzREFYN0FQdG5GWGFMZDVON21ueWFnNkNMb0l1Z2s1K2FtZ2ozSnZjbW9YVDdKZnNsQllLQ2huK0xmb3Qra0grVWdwNTRxWXVlbmdqM0pmY2xvblg3SmZzbUJYeDhkNE4xaTR1TGk0dUxpd2ozSC9mZ0ZmY0Yrd1YxZGZzRjl3V2hvUVVPOTBUM1pCVmZpMmV2aTdlTHQ2K3Z0NHUzaTY5bmkxK0xYMmRuWDRzSWkvY1VGWEdMZFhXTGNZdHhvWFdsaTZXTG9hR0xwWXVsZGFGeGl3amIrNWNWZmVKa21KV3B4SGlkSWdYN1ZJVVZhNUdkOU1TZWxXMWtmZ1gzWnZkQUZjdUxpMnRMaTR1ckJZdExGZmNVaTR0cit4U0xpNnNGaTBzVjl4U0xpMnY3Rkl1THF3V0xTeFgzRkl1TGEvc1VpNHVyQmZza0t4WDNOSXVMYS9zMGk0dXJCZmZrYXhYN0pJdUxxL2NFaTR2MzlQeFVpNHY3OVBjRWk0dHIreVNMaS9nMCtKU0xCUTczd2ZoMEZaRnJLM3VGcSt1YkJmY2EvRVFWKy9xTHJ2ZG1CWXpaeTh2YWk5cUx5MHVNUFFpdSsyWUYrOVNyRmZldWkyNzNSUVdMeUZtOVRZdE5pMWxaaTAwSWk0bHUrMElGMkxrVmE0K2I5eElGaTdldnI3ZUxDSXRyQlhHTGRYYUxjQWlMZ252N0RRWEwreklWY1l0MW9ZdWxDS3VMQll1Q2tvU1VpNVNMa3BLTGxBaXJpd1dMY1hWMWNZc0lEdmgwYXhYOFZJdUwrRFNyaTR2OEZQZ1VpNHY0VlB2VWk0dXI5L1NMQmZ3RSsvUVY5N1NMaTJ2N3RJdUxxd1dMU3hYM3RJdUxhL3UwaTR1ckJmY2s5M1FWYUl0dXFJdXVpNjZvcUs2THJvdW9ib3RvaTJodWJtaUxDSXZyRlhtTGZYMkxlWXQ1bVgyZGk1MkxtWm1Mbll1ZGZabDVpd2p1KzNRVisxcUxvUGNFczVxWGJYT0NnRlAzRG91QXduT1ZsNm16ZVFVTzk1UnJGVW1MU2FWWnZDM3BoUGNvNFBFSXBIY0ZRVEtSK3hiZE9kVkI5d2wrNHNNSW5YQUZZWEJiZmx5TENQczA5K1FWYTR1THkwdUxpNnZyaXdYMyt2dm5GWEtmQmRYa2hmY1dPZDFCMWZzSm1EUlRDSG1tQmZETDl4bDg0RGZwTFpMN0tEWWxDTVYrRlN1TGkrdXJpNHRMeTRzRkR2ZVVheFg3RUlzbjc0djNFSXZud3QzaHJRaVhiUVZCYmx4Rml6eUxJZUUxOVl2MWkrSGhpL1dMMmx6UlFhZ0lsNmtGNFduQ09Zc3ZpL3NRSnlmN0VJc0lpL2ZFRll1TEJYNkxmNUNDbElLVWhwZUxtQWlMOXdRRmk1aVFsNVNVbEpTWGtKaUxwWXVoZFl0eENJdjdCQVdMY1hWMWNZc0lpL2RFRlllTGg0bUlpSWlJaVllTGh3aUwrd1FGaTRlTmg0Nklqb2lQaVkrTGxJdVNrb3VVQ0l2M0JBV0xsSVNTZ29zSUR2Y1g5MElWUjlHTDl3YlAwSzJ0dDU2Nmk0dUxpNHVMaTdxTHQzaXRhYzlGaS9zRlIwVUlkS0VGdzhXTDZGUEZjS2RtbW1XTENJdUxCV1dMWm54d2IxTlJpeTdEVVFoMGRRWDNFZnRnRlMzM0txZWJ6U0hOOWFkN0JTM2pGVmFMWUxhTHdJdkF0cmJBaThDTHRtQ0xWb3RXWUdCV2l3aUw5elFWYUl0dWJvdG9pMmlvYnE2THJvdW9xSXV1aTY1dXFHaUxDQTc0bEpzVi9KU0xpL2cwK0pTTGkvdzBCZngwcXhYNFZJdUw5L1Q4Vkl1TCsvUUY5N2lnRmZzNDkwZzNOM1NoOXZjQTkxRDdZQVhrcFJWR3owOUtkS0hlNU9ZdkJmcy84QlZ4aTNXaGk2V0xwYUdocFl1bGk2RjFpM0dMY1hWMWNZc0lpOHNWZ291RWhJdUNpNEtTaEpTTGxJdVNrb3VVaTVTRWtvS0xDQTczbEdzVklZczE0WXYxQ0l2citCU0xpeXNGaXlFMU5TR0xDUHMwOTVRVmkwc0ZpelBUUStPTDQ0dlQwNHZqQ0l2TCs5U0xCZmMwKzBRVmNZdDFvSXVtQ0l1ckJZdWxvYUdsaTZXTG9YV0xjUWlMYXdXTGNIVjJjWXNJaStzVmdvdUVoSXVDQ0l0ckJZdUNrb1NVaTVTTGtwS0xsQWlMcXdXTGxJU1Nnb3NJK3dUM0d4Vm52SkxRdUxlOXZkcU51MXNJdkZwMGRWdTdCV2V2VUlsbFptcHBoVmltWndoeGVBVU85eFM3RlN1TGkrdnJpNHNyQlV1ckZhdUxpNnRyaTR0ckJjdnJGU3VMaSt2cmk0c3JCVXVyRmF1TGk2dHJpNHRyQmZnMCs0UVYvRFNMaTdxcmk0dDg5L1NMaS9oVSsvU0xpM3RyaTR1NytEU0xCZnYwKzBRVks0dUw2K3VMaXlzRlM2c1ZxNHVMcTJ1TGkyc0Y5N1QzQkJXcmk0djhWR3VMaS9oVUJRNzMxSTRWKzEzM0ZwMm05eXNvaS9mYSt5c3FlYWYzWGZjVEJUUDdJeFdiYnp0YmU2ZmJ1d1g3SFB0Q0ZTdUxpL2RVNjR1TCsxUUZTNnNWcTR1TDl4UnJpNHY3RkFYMzcvY2ZGZmNVK3hSMWRmc1U5eFNob1FYMWl4V2hkZnNVK3hSMW9mY1U5eFFGRHZpVW14WDhsSXVMK0RUNGxJdUwvRFFGL0hTckZmaFVpNHYzOVB4VWk0djc5QVg0SlBlVUZTdUxpOHVyaTR0cnE0dUxxNnVMQmZzVVN4VXJpNHZMcTR1TGE2dUxpNnVyaXdYN0ZFc1ZLNHVMeTZ1TGkydXJpNHVycTRzRmkvdTBGV3VMaTZ0cmk0dHJhNHVMeSt1TEJmY1VTeFZyaTR1cmE0dUxhMnVMaTh2cml3WDNGRXNWYTR1THEydUxpMnRyaTR2TDY0c0ZEdmVVcXhVaGl6WGhpL1lJcTRzRml6TFRRK09MNDR2VDBvdmpDS3VMQllzaU5UVWhpd2lkelJXSHF3VzZrYTYwaTdzSWkvY1VCWXU2YUxSY2tnaVBxZ1hLZ3JwVmkwd0lpL3NVQll0TFhGVk1nZ2huaXhWTWxGekJpOHNJaS9jVUJZdkt1c0hLbEFpUGJBVmNoR2hpaTF3SWkvc1VCWXRicm1LNmhRaUhhd1dOOTlNVnE0dUwrNVJyaTR2M2xBWGJheFdyaTR0cmE0dUxxd1dMT3hXcmk0dHJhNHVMcXdXTE94V3JpNHRyYTR1THF3WDdOUGMwRmF1TGkydHJpNHVyQllzN0ZhdUxpMnRyaTR1ckJZczdGYXVMaTJ0cmk0dXJCWnY3ZEJYM05JdUxhL3MwaTR1ckJRNkxkQldMK0d2NGxJdUwrK1Q3NUl1THEvZkVpNHYzcFB4VWk0djc3YjdPcFhjRmZ2ZHVGZmZVaTR0cis5U0xpNnNGaXpzVjkzU0xpMnY3ZEl1THF3VU8rSlQzTkJYN05JdUxxL2NVaTR2M1ZQdVVpNHQ3YTR1THUvZlVpd1g3TkRzVjY0dUxheXVMaTZzRmkwc1Y2NHVMYXl1TGk2c0YrN1I3RmZkVWk0dHIrMVNMaTZzRmkwc1Y5eFNMaTJ2N0ZJdUxxd1ZMKzJRVmkvZjA5OVNMaS91VSsyU0xpNnYzUkl1TDkxVDdsSXVMKzNTZXBhVjNCUTczbFBlVUZmZFVpNHRyKzFTTGk2c0ZpMHNWOXhTTGkydjdGSXVMcXdVcmF4WDdOSXVMOTVUMzFJdUxXMnVMaTV2N2xJdUwrMVQzRklzRksvY2tGZXVMaTJzcmk0dXJCWXRMRmV1TGkyc3JpNHVyQmZjVSs3UVZpL2YwOTlTTGkvdVUrMlNMaTZ2M1JJdUw5MVQ3bEl1TCszU2VwYVYzQlE3cjk4UVY5OVNMaTJ2NzFJdUxxd1dMU3hYMzFJdUxhL3ZVaTR1ckJZdExGZmZVaTR0cis5U0xpNnNGK0RUN05CWDhsSXVMOS9Tcmk0djcxUGhVaTR2MzlQeDBpNHVyK0pTTEJRNzRsSnNWL0pTTGkvZzArSlNMaS93MEJmeDBxeFg0Vkl1TDkvVDhWSXVMKy9RRjl6VGhGWXYzU1BkSU1mdElNUVdyOXhRVml6L1hzVCt4QlE3NGxKc1YvSlNMaS9nMCtKU0xpL3cwQmZ4MHF4WDRWSXVMOS9UOFZJdUwrL1FGOXdiM2ZCV25leXY3TkcrYjYvYzBCZmNDUVJYN1crK1pwL2ROTC9kTjU1bHZCVEp4RmV2N05HOTdLL2MwcDVzRkRydjN4QlZ4aTNXaGk2V0xwYUdocFl1bGk2RjFpM0dMY1hWMWNZc0lpOHNWZ291RWhJdUNpNEtTaEpTTGxJdVNrb3VVaTVTRWtvS0xDSXY3VkJWeGkzV2hpNldMcGFHaHBZdWxpNkYxaTNHTGNYVjFjWXNJaThzVmdvdUVoSXVDaTRLU2hKU0xsSXVTa291VWk1U0Vrb0tMQ0l2N1ZCVnhpM1doaTZXTHBhR2hwWXVsaTZGMWkzR0xjWFYxY1lzSWk4c1Znb3VFaEl1Q2k0S1NoSlNMbEl1U2tvdVVpNVNFa29LTENQaGs5MVFWL0JTTGk2djM5SXVMcS92MGk0dXIrQlNMQll2N2RCWDhGSXVMcS9mMGk0dXIrL1NMaTZ2NEZJc0ZpL3QwRmZ3VWk0dXI5L1NMaTZ2NzlJdUxxL2dVaXdVTzk1VDNSaFg3aHZjVzk0YjNGdmVHK3hiN2h2c1dCZnRDOXhZVjkwSXQ5MExwKzBMcCswSXRCZmRDKzJRViszdjNCcG1uOTIwaDkyMzFtVzhGKzN2N1dCWDdlL2NHbWFmM2JTSDNiZldaYndVTzl5UnJGZnNraTR2eDkwajNXYU4xKzBEN1Q0dFIyNHVMeTlTTDV2V2pkeWI3Q2xTTEJmZGs5eFFWaTZzRjBvdkV4SXZTaTlKU3hFU0xSSXRTVW90RUNHdUxCWXZqMDlQamkrT0wwME9MTTRzelEwTXppd2lMNnhWb2kyNm9pNjZMcnFpb3JvdXVpNmh1aTJpTGFHNXVhSXNJaStzVmVZdDlmWXQ1aTNtWmZaMkxuWXVabVl1ZGk1MTltWG1MQ0E3NGxHc1YvSlNMaS9na3E0dUwvQVQ0Vkl1TCtBU3Jpd1g4QXZzY0ZhZDdLL3MwYjV2cjl6UUY5d0pCRmZ0Yjc1bW45MDB2OTAzbm1XOEZNbkVWNi9zMGIzc3I5elNubXdYZDB4VnJpNHYzSlB2VWk0djdKR3VMaS9kRStCU0xCZnZVU3hYM0JJdUxhL3NFaTR1ckJZdExGZmQwaTR0ciszU0xpNnNGRHZoMDk0SVZnTjBxeS9zSGk0cUxpNHVLaS9zSWlpbExnam9JYTQ4Rmx1MzNBdGIzR1l5TWk0eUxqSXYzRjR2M0F6K1lLUWhyaHdYN2RmdGlGZnNYaS9zRDEzN3RDS3VQQlpZNTdFdjNCNHVNaTR1TGpJdjNDSXp0eTVUY0NLdUhCWUFwK3dGQSt4cUtpb3VLaTRxTENJekxGVVdMVXNTSzBZclN4TVRTak5LTHhGS01SWXRwZm10emNuTnphMzFwaXdpS2l3V0w5M1FWVll0aFg0dFdpMWUzWUwrTENJdDdqSnNGcEl1amxaMmVuWjJWbzR1bGk3OWd0bGFMQ0VzcUZZdXZwNml1aXdpTWF3VjVpMzE4aTNvSWE0b0ZEdmlVZXhYOGxJdUwrRVQzbEl1TGEvdDBpNHY4QlBoVWk0djNkS3VMQmZ1Q0loVnR5RTZwOTA3M1RhRjEreTc3THFwOG1tejNMdmN1b1hVRm9xRVZNT2FYbGdXWGw1dVNuSXVjaTV1RWwzK1hmNUo3aTNxTGVvUjdmMzhJZ0g4RlllTVZzbVFGakkyTGpvdU9pNVNJazRXUmc1Titqb0dJQ1B2Wi9BQVZ0L2NZcVlGMFJOS2lsVzBGRHZpVW14WDdGSXVMcSt1TGkvZWtJb3RiMi9zaWkxczdJb3VMKzZUcmk0dHIreFNMaS9mazl3dUx1OXYzUm91N08vY0xpd1g3bFB2a0ZUeUxTc3lMMm92YXpNemFpOXFMekVxTFBJczhTa284aXdpTDk1UVZUWXRaV1l0TmkwMjlXY21MeVl1OXZZdkppOGxadlUyTENQYzBteFdyaTR0cmE0dUxxd1g3WlBzVUZXdUxCWXUzcjYrM2l3aUxhd1Z4aTNWMWkzRUlEdmZrMnhXTHF3WGFpOHpNaTlxTDJrdkxQSXhBaWt4U2hFT0xpSXVJaTRtTGlZdUppNGtJYTRzRmk0MkxqSXVOaTQrTGo0dU9rK1RZMGVhTUNJdUxqWXNGNjRyWlBJc3JpeW84UENxTENEdjNSQlZyaXdXTGpZdU9pNDBJaTQyTGpRV1F3cjY0eEl3SWkyc0ZZb3RuYTRka2k0ZUxpWXVJQ0R2N1JCVmJpd1ZGaTFIRWk5S0wwc1RFMG9zSWkyc0ZWb3RnWUl0V2kxYTJZTUNMQ0x1TGkyc0Z5OXNWcTR1TCt4UnJpNHYzRkFXYit5Y1ZVTUtobzdCb3NLNmhjd1VPOTVTckZTcUxQTnFMN0l2czJ0cnNpK3lMMmp5TEtvc3FQRHdxaXdpTDk5UVZQSXRLU29zOGl6ek1TdHFMMm92TXpJdmFpOXBLekR5TENEdjdKQlZyaXdXTHliMjl5WXNJaTJzRlg0dG5aNHRmQ0R2N1JCVXJpNHYzMU91TGkydExpNHY3bE11TEJmZzBheFVyaTR1cnk0dUw5NVJMaTR1cjY0c0YvSFRMRmN1TGkydExpNHVyQlE3M2xQZDBGV3VMQll1Tmk0NkxqUWlMall1TkJaREN2cmpFakFpTGF3VmlpMmRyaDJTTGg0dUppNGdJMi90RUZmdGtpd1ZFaTFMRWk5S0wwc1RFMG9zSWkyc0ZWb3RnWUl0V2kxYTJZTUNMQ1Bka2l3WGFpOHpNaTlxTDJrdkxQSXhBaWt4U2hFT0xpSXVJaTRtTGlZdUppNGtJYTRzRmk0MkxqSXVOaTQrTGo0dU9rK1RZMGVhTUNJdUxqWXNGNjRyWlBJc3JpeW84UENxTENBNzNsR3NWSVlzMTRZdjFDSXZyK0JTTGl5c0ZpeUUxTlNHTENQczA5NVFWaTBzRml6UFRRK09MNDR2VDA0dmpDSXZMKzlTTEJmYzArMFFWY1l0MW9JdW1DSXVyQll1bG9hR2xpNldMb1hXTGNRaUxhd1dMY0hWMmNZc0lpK3NWZ291RWhJdUNDSXRyQll1Q2tvU1VpNVNMa3BLTGxBaUxxd1dMbElTU2dvc0k5eFQzSkJWcmk0dlFCWXU5WUxSV2kxYUxZR0tMV1FpTFJtdUxpOUFGaTgvRXd0S0wwb3ZFVkl0SENJdEdCUTczZEdzVit4Q0xKKytMOXhDTDl4RHY3L2NRaXdpTGF3VWhpelUxaXlHTEllRTE5WXYxaStIaGkvVUlxNHNGaS9zUUp5ZjdFSXNJOTdUM2xCWDdsSXVMOTVTYml3WDNENHYzQ2ZzSmkvc1BDSXQ3QmZ0MHF4WDNVNHNGZ3VvMDRpeVVDSXY3VXdVTzkrUDNIUlZ1bWJUWkJieTlpOTFhdkZtOU9ZdFpXVnBhaXptOFdRaU5pckkrYm4xbjB3Vk95WXp2eWNuSnl2R0x5VXpKVFl3blRrMElaME1GZW9JVmoydjdGSHlIcXZjVW13V0xXeFdQYS9zVWZJZXE5eFNiQlUzN0JCVndpM2FoaTZVSXE0c0ZpNEtTaEpTTGs0dVRrb3VVQ0t1TEJZdHhkWFZ4aXdoTDkvUVZhNHNGaThDMnRzQ0xDSXRyQldpTGJtNkxhQWdPK0pSN0ZmeVVpNHYzWlBpVWk0djdaQVg4ZEtzVitGU0xpL2NrL0ZTTGkvc2tCZmQwNnhWeGkzV2hpNlVJcTRzRmk0S1NoSlNMbEl1U2tvdVVDS3VMQll0eGRYVnhpd2ozQlBlRUZVdUxpNnNGaTZWMW9YR0xjWXQxZFl0eENJdHJTNHVMcTZ1TEJZdTNyNiszaTdlTHIyZUxYd2lyaTR0ckJmY2sreFFWYTR1THkveFVpNHRMYTR1TDYvaVVpd1VPbS9oRUZmaDBpNHRyL0hTTGk2c0ZpL3dVRmZoMGk0dHIvSFNMaTZzRnUvZmtGYXVMaTJ0cmk0dXJCYnVMRmF1TGkydHJpNHVyQmJ1TEZhdUxpMnRyaTR1ckJhdjd0Qlg3Rkl1TDl6VDNGSXVMK3pRRks2c1Z5NHVMNjB1TGl5c0Y5eFQzRkJYM0JJdUxhL3NFaTR1ckJmZTB1eFg4bEl1TDl4VDRsSXVMK3hRRi9IU3JGZmhVaTR2TC9GU0xpMHNGK0hUNzFCWDhsSXVMOTRTcmk0djdaUGhVaTR2M2RLdUxCZnUwT3hYM2RJdUxhL3QwaTR1ckJZdExGZmQwaTR0ciszU0xpNnNGRHZkazk5UVZPNHVMOXhUYmk0djdGQVZicXhXYmk0dkxlNHVMU3dYM2RHc1ZPNHVMOXhUYmk0djdGQVZicXhXYmk0dkxlNHVMU3dYM1JQdjBGZnlVaTR2NEpPdUxpMnRMaTR2NzVQaFVpNHYzNUV1TGk2dnJpd1g3cElzVnE0dUxhMnVMaTZzRit3VDdaQlgzbEl1TGEvdVVpNHVyQll0TEZmZVVpNHRyKzVTTGk2c0Yrd1QzTkJYNGRJdUxhL3gwaTR1ckJRNzRsQlQ0bEJXTERBb0FBQUFEQWdBQmtBQUZBQUFCVEFGbUFBQUFSd0ZNQVdZQUFBRDFBQmtBaEFBQUFBQUFBQUFBQUFBQUFBQUFBQUVRQUFBQUFBQUFBQUFBQUFBQUFBQUFBRUFBQU9iSEFlRC80UC9nQWVBQUlBQUFBQUVBQUFBQUFBQUFBQUFBQUNBQUFBQUFBQUlBQUFBREFBQUFGQUFEQUFFQUFBQVVBQVFBT0FBQUFBb0FDQUFDQUFJQUFRQWc1c2YvL2YvL0FBQUFBQUFnNWdELy9mLy9BQUgvNHhvRUFBTUFBUUFBQUFBQUFBQUFBQUFBQVFBQi8vOEFEd0FCQUFBQUFRQUFIMEI3QlY4UFBQVUFDd0lBQUFBQUFNK1pERDRBQUFBQXo1a01Qdi85Lzl3Q0JBSHBBQUFBQ0FBQ0FBQUFBQUFBQUFFQUFBSGcvK0FBQUFJQS8vMy8vQUlFQUFFQUFBQUFBQUFBQUFBQUFBQUFBQURNQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUlBQUFBQ0FBQWdBZ0FBQUFJQS8vOENBQUFPQWdBQWZnSUFBQUFDQUFBREFnQUFBQUlBQUFBQ0FBQXdBZ0FBS0FJQUFBQUNBQUFBQWdBQUFBSUFBREFDQVAvOUFnQUFBQUlBQUFBQ0FBQUFBZ0FBQUFJQUFBZ0NBQUFBQWdBQUFBSUFBRUFDQUFBZ0FnQUFJQUlBQUJBQ0FBQk9BZ0FBZ0FJQUFGQUNBQUFBQWdELy9RSUFBRWdDQUFBQUFnQUFMUUlBQUVBQ0FBQ0FBZ0FBQUFJQUFHMENBQUFBQWdBQUFBSUFBQUFDQUFBQUFnQUFBQUlBQUdBQ0FBQkFBZ0FBQUFJQUFBQUNBQUFBQWdBQVFBSUFBSUFDQUFBQUFnQUFJQUlBQUFBQ0FBQUFBZ0FBQUFJQUFJQUNBQUJ0QWdBQVFBSUFBQVVDQUFCd0FnQUFBQUlBQUFBQ0FBQmdBZ0FBQUFJQUFBQUNBQUFBQWdBQWNBSUFBQUFDQUFBQUFnQUFVQUlBQUZBQ0FBQUFBZ0FBQUFJQUFBQUNBQUJRQWdBQVFBSUFBQUFDQUFBZ0FnQUFRZ0lBQUlRQ0FBQWdBZ0FBQUFJQUFBQUNBQUFBQWdBQUlBSUFBRUFDQUFBQUFnQUFBQUlBQUFBQ0FBQUFBZ0FBQUFJQUFIQUNBQUNnQWdBQVVBSUFBQUFDQUFCTEFnQUFOQUlBQUNBQ0FBQUxBZ0FBUUFJQUFDb0NBQUFBQWdBQU1BSUEvLzhDQUFBQUFnQUFBQUlBQUJBQ0FBQXdBZ0FBQlFJQUFBQUNBQUFjQWdBQUFnSUFBQ29DQUFBQUFnQUFKUUlBQUFrQ0FBQU9BZ0FBQUFJQUFBQUNBQUJRQWdBQUFBSUFBQ29DQUFBQUFnQUFCQUlBQUFBQ0FBQUFBZ0FBRUFJQUFBQUNBQUFBQWdBQUFBSUFBQ0FDQUFBZ0FnRC8vZ0lBQUFBQ0FQLytBZ0FBUUFJQUFBQUNBQUFnQWdBQWZ3SUFBRUFDQUFCQUFnQUFNQUlBQUFBQ0FBQU5BZ0FBQUFJQUFCQUNBQUFBQWdBQUFBSUFBQUFDQUFBQUFnQUFjQUlBQUFBQ0FBQUFBZ0QvL2dJQUFDNENBQUFBQWdBQUFBSUFBQUFDQUFBSkFnQUFBQUlBQUFBQ0FBQUZBZ0FBQUFJQUFBQUNBQUFBQWdBQVRRSUFBQ0FDQUFBQUFnQUFJQUlBQUlNQ0FBQUFBZ0FBUUFJQUFDQUNBQUFBQWdBQUFBSUFBRUFDQUFBQUFnQUFBQUlBQUFBQ0FBQUFBZ0FBQUFJQUFBQUNBQUFBQWdBQURnSUFBQUFDQUFBQUFnQUFBQUlBQUFBQ0FBQUFBZ0FBQUFJQUFBQUNBQUFBQWdBQVFBSUFBQUFDQUFDTkFnQUFBQUlBQUFBQ0FBQUFBQUJRQUFETUFBQUFBQUFPQUs0QUFRQUFBQUFBQVFBZ0FBQUFBUUFBQUFBQUFnQU9BSVlBQVFBQUFBQUFBd0FnQURZQUFRQUFBQUFBQkFBZ0FKUUFBUUFBQUFBQUJRQVdBQ0FBQVFBQUFBQUFCZ0FRQUZZQUFRQUFBQUFBQ2dBb0FMUUFBd0FCQkFrQUFRQWdBQUFBQXdBQkJBa0FBZ0FPQUlZQUF3QUJCQWtBQXdBZ0FEWUFBd0FCQkFrQUJBQWdBSlFBQXdBQkJBa0FCUUFXQUNBQUF3QUJCQWtBQmdBZ0FHWUFBd0FCQkFrQUNnQW9BTFFBVXdCMEFISUFid0JyQUdVQUxRQkhBR0VBY0FBdEFFa0FZd0J2QUc0QWN3QldBR1VBY2dCekFHa0Fid0J1QUNBQU1RQXVBREFBVXdCMEFISUFid0JyQUdVQUxRQkhBR0VBY0FBdEFFa0FZd0J2QUc0QWMxTjBjbTlyWlMxSFlYQXRTV052Ym5NQVV3QjBBSElBYndCckFHVUFMUUJIQUdFQWNBQXRBRWtBWXdCdkFHNEFjd0JTQUdVQVp3QjFBR3dBWVFCeUFGTUFkQUJ5QUc4QWF3QmxBQzBBUndCaEFIQUFMUUJKQUdNQWJ3QnVBSE1BUndCbEFHNEFaUUJ5QUdFQWRBQmxBR1FBSUFCaUFIa0FJQUJKQUdNQWJ3Qk5BRzhBYndCdUFBQUFBd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE9PSkgZm9ybWF0KCd3b2ZmJyk7Cglmb250LXdlaWdodDogbm9ybWFsOwoJZm9udC1zdHlsZTogbm9ybWFsOwp9CgouaWNvbiB7Cglmb250LWZhbWlseTogJ1N0cm9rZS1HYXAtSWNvbnMnOwoJc3BlYWs6IG5vbmU7Cglmb250LXN0eWxlOiBub3JtYWw7Cglmb250LXdlaWdodDogbm9ybWFsOwoJZm9udC12YXJpYW50OiBub3JtYWw7Cgl0ZXh0LXRyYW5zZm9ybTogbm9uZTsKCWxpbmUtaGVpZ2h0OiAxOwoKCS8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqLwoJLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7CgktbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwp9CgouaWNvbi1Xb3JsZFdpZGU6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYwMCI7Cn0KLmljb24tV29ybGRHbG9iZTpiZWZvcmUgewoJY29udGVudDogIlxlNjAxIjsKfQouaWNvbi1VbmRlcnBhbnRzOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MDIiOwp9Ci5pY29uLVRzaGlydDpiZWZvcmUgewoJY29udGVudDogIlxlNjAzIjsKfQouaWNvbi1Ucm91c2VyczpiZWZvcmUgewoJY29udGVudDogIlxlNjA0IjsKfQouaWNvbi1UaWU6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYwNSI7Cn0KLmljb24tVGVubmlzQmFsbDpiZWZvcmUgewoJY29udGVudDogIlxlNjA2IjsKfQouaWNvbi1UZWxlc29jcGU6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYwNyI7Cn0KLmljb24tU3RvcDpiZWZvcmUgewoJY29udGVudDogIlxlNjA4IjsKfQouaWNvbi1TdGFyc2hpcDpiZWZvcmUgewoJY29udGVudDogIlxlNjA5IjsKfQouaWNvbi1TdGFyc2hpcDI6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYwYSI7Cn0KLmljb24tU3BlYWtlcjpiZWZvcmUgewoJY29udGVudDogIlxlNjBiIjsKfQouaWNvbi1TcGVha2VyMjpiZWZvcmUgewoJY29udGVudDogIlxlNjBjIjsKfQouaWNvbi1Tb2NjZXI6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYwZCI7Cn0KLmljb24tU25pa2VyczpiZWZvcmUgewoJY29udGVudDogIlxlNjBlIjsKfQouaWNvbi1TY2lzb3JzOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MGYiOwp9Ci5pY29uLVB1enpsZTpiZWZvcmUgewoJY29udGVudDogIlxlNjEwIjsKfQouaWNvbi1QcmludGVyOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MTEiOwp9Ci5pY29uLVBvb2w6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYxMiI7Cn0KLmljb24tUG9kaXVtOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MTMiOwp9Ci5pY29uLVBsYXk6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYxNCI7Cn0KLmljb24tUGxhbmV0OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MTUiOwp9Ci5pY29uLVBhdXNlOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MTYiOwp9Ci5pY29uLU5leHQ6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYxNyI7Cn0KLmljb24tTXVzaWNOb3RlMjpiZWZvcmUgewoJY29udGVudDogIlxlNjE4IjsKfQouaWNvbi1NdXNpY05vdGU6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYxOSI7Cn0KLmljb24tTXVzaWNNaXhlcjpiZWZvcmUgewoJY29udGVudDogIlxlNjFhIjsKfQouaWNvbi1NaWNyb3Bob25lOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MWIiOwp9Ci5pY29uLU1lZGFsOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MWMiOwp9Ci5pY29uLU1hbkZpZ3VyZTpiZWZvcmUgewoJY29udGVudDogIlxlNjFkIjsKfQouaWNvbi1NYWduZXQ6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYxZSI7Cn0KLmljb24tTGlrZTpiZWZvcmUgewoJY29udGVudDogIlxlNjFmIjsKfQouaWNvbi1IYW5nZXI6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYyMCI7Cn0KLmljb24tSGFuZGljYXA6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYyMSI7Cn0KLmljb24tRm9yd2FyZDpiZWZvcmUgewoJY29udGVudDogIlxlNjIyIjsKfQouaWNvbi1Gb290YmFsOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MjMiOwp9Ci5pY29uLUZsYWc6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYyNCI7Cn0KLmljb24tRmVtYWxlRmlndXJlOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MjUiOwp9Ci5pY29uLURpc2xpa2U6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYyNiI7Cn0KLmljb24tRGlhbW9uZFJpbmc6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYyNyI7Cn0KLmljb24tQ3VwOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MjgiOwp9Ci5pY29uLUNyb3duOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MjkiOwp9Ci5pY29uLUNvbHVtbjpiZWZvcmUgewoJY29udGVudDogIlxlNjJhIjsKfQouaWNvbi1DbGljazpiZWZvcmUgewoJY29udGVudDogIlxlNjJiIjsKfQouaWNvbi1DYXNzZXR0ZTpiZWZvcmUgewoJY29udGVudDogIlxlNjJjIjsKfQouaWNvbi1Cb21iOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MmQiOwp9Ci5pY29uLUJhdHRlcnlMb3c6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYyZSI7Cn0KLmljb24tQmF0dGVyeUZ1bGw6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYyZiI7Cn0KLmljb24tQmFzY2tldGJhbGw6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYzMCI7Cn0KLmljb24tQXN0cm9uYXV0OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MzEiOwp9Ci5pY29uLVdpbmVHbGFzczpiZWZvcmUgewoJY29udGVudDogIlxlNjMyIjsKfQouaWNvbi1XYXRlcjpiZWZvcmUgewoJY29udGVudDogIlxlNjMzIjsKfQouaWNvbi1XYWxsZXQ6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYzNCI7Cn0KLmljb24tVW1icmVsbGE6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYzNSI7Cn0KLmljb24tVFY6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYzNiI7Cn0KLmljb24tVGVhTXVnOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MzciOwp9Ci5pY29uLVRhYmxldDpiZWZvcmUgewoJY29udGVudDogIlxlNjM4IjsKfQouaWNvbi1Tb2RhOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2MzkiOwp9Ci5pY29uLVNvZGFDYW46YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYzYSI7Cn0KLmljb24tU2ltQ2FyZDpiZWZvcmUgewoJY29udGVudDogIlxlNjNiIjsKfQouaWNvbi1TaWduYWw6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTYzYyI7Cn0KLmljb24tU2hha2VyOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2M2QiOwp9Ci5pY29uLVJhZGlvOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2M2UiOwp9Ci5pY29uLVBpenphOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2M2YiOwp9Ci5pY29uLVBob25lOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NDAiOwp9Ci5pY29uLU5vdGVib29rOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NDEiOwp9Ci5pY29uLU11ZzpiZWZvcmUgewoJY29udGVudDogIlxlNjQyIjsKfQouaWNvbi1NYXN0ZXJjYXJkOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NDMiOwp9Ci5pY29uLUlwb2Q6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY0NCI7Cn0KLmljb24tSW5mbzpiZWZvcmUgewoJY29udGVudDogIlxlNjQ1IjsKfQouaWNvbi1JY2VjcmVhbTI6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY0NiI7Cn0KLmljb24tSWNlY3JlYW0xOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NDciOwp9Ci5pY29uLUhvdXJnbGFzczpiZWZvcmUgewoJY29udGVudDogIlxlNjQ4IjsKfQouaWNvbi1IZWxwOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NDkiOwp9Ci5pY29uLUdvdG86YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY0YSI7Cn0KLmljb24tR2xhc3NlczpiZWZvcmUgewoJY29udGVudDogIlxlNjRiIjsKfQouaWNvbi1HYW1lYm95OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NGMiOwp9Ci5pY29uLUZvcmthbmRLbmlmZTpiZWZvcmUgewoJY29udGVudDogIlxlNjRkIjsKfQouaWNvbi1FeHBvcnQ6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY0ZSI7Cn0KLmljb24tRXhpdDpiZWZvcmUgewoJY29udGVudDogIlxlNjRmIjsKfQouaWNvbi1Fc3ByZXNzbzpiZWZvcmUgewoJY29udGVudDogIlxlNjUwIjsKfQouaWNvbi1Ecm9wOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NTEiOwp9Ci5pY29uLURvd25sb2FkOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NTIiOwp9Ci5pY29uLURvbGxhcnM6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY1MyI7Cn0KLmljb24tRG9sbGFyOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NTQiOwp9Ci5pY29uLURlc2t0b3BNb25pdG9yOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NTUiOwp9Ci5pY29uLUNvcmtzY3JldzpiZWZvcmUgewoJY29udGVudDogIlxlNjU2IjsKfQouaWNvbi1Db2ZmZWVUb0dvOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NTciOwp9Ci5pY29uLUNoYXJ0OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NTgiOwp9Ci5pY29uLUNoYXJ0VXA6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY1OSI7Cn0KLmljb24tQ2hhcnREb3duOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NWEiOwp9Ci5pY29uLUNhbGN1bGF0b3I6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY1YiI7Cn0KLmljb24tQnJlYWQ6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY1YyI7Cn0KLmljb24tQm91cmJvbjpiZWZvcmUgewoJY29udGVudDogIlxlNjVkIjsKfQouaWNvbi1Cb3R0bGVvZldJbmU6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY1ZSI7Cn0KLmljb24tQmFnOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NWYiOwp9Ci5pY29uLUFycm93OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NjAiOwp9Ci5pY29uLUFudGVubmEyOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NjEiOwp9Ci5pY29uLUFudGVubmExOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NjIiOwp9Ci5pY29uLUFuY2hvcjpiZWZvcmUgewoJY29udGVudDogIlxlNjYzIjsKfQouaWNvbi1XaGVlbGJhcnJvdzpiZWZvcmUgewoJY29udGVudDogIlxlNjY0IjsKfQouaWNvbi1XZWJjYW06YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY2NSI7Cn0KLmljb24tVW5saW5rZWQ6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY2NiI7Cn0KLmljb24tVHJ1Y2s6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY2NyI7Cn0KLmljb24tVGltZXI6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY2OCI7Cn0KLmljb24tVGltZTpiZWZvcmUgewoJY29udGVudDogIlxlNjY5IjsKfQouaWNvbi1TdG9yYWdlQm94OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NmEiOwp9Ci5pY29uLVN0YXI6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY2YiI7Cn0KLmljb24tU2hvcHBpbmdDYXJ0OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NmMiOwp9Ci5pY29uLVNoaWVsZDpiZWZvcmUgewoJY29udGVudDogIlxlNjZkIjsKfQouaWNvbi1TZXJpbmdlOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NmUiOwp9Ci5pY29uLVB1bHNlOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NmYiOwp9Ci5pY29uLVBsYXN0ZXI6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY3MCI7Cn0KLmljb24tUGxhaW5lOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NzEiOwp9Ci5pY29uLVBpbGw6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY3MiI7Cn0KLmljb24tUGljbmljQmFza2V0OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NzMiOwp9Ci5pY29uLVBob25lMjpiZWZvcmUgewoJY29udGVudDogIlxlNjc0IjsKfQouaWNvbi1QZW5jaWw6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY3NSI7Cn0KLmljb24tUGVuOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2NzYiOwp9Ci5pY29uLVBhcGVyQ2xpcDpiZWZvcmUgewoJY29udGVudDogIlxlNjc3IjsKfQouaWNvbi1Pbi1PZmY6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY3OCI7Cn0KLmljb24tTW91c2U6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY3OSI7Cn0KLmljb24tTWVnYXBob25lOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2N2EiOwp9Ci5pY29uLUxpbmtlZDpiZWZvcmUgewoJY29udGVudDogIlxlNjdiIjsKfQouaWNvbi1LZXlib2FyZDpiZWZvcmUgewoJY29udGVudDogIlxlNjdjIjsKfQouaWNvbi1Ib3VzZTpiZWZvcmUgewoJY29udGVudDogIlxlNjdkIjsKfQouaWNvbi1IZWFydDpiZWZvcmUgewoJY29udGVudDogIlxlNjdlIjsKfQouaWNvbi1IZWFkc2V0OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2N2YiOwp9Ci5pY29uLUZ1bGxTaG9wcGluZ0NhcnQ6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY4MCI7Cn0KLmljb24tRnVsbFNjcmVlbjpiZWZvcmUgewoJY29udGVudDogIlxlNjgxIjsKfQouaWNvbi1Gb2xkZXI6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY4MiI7Cn0KLmljb24tRmxvcHB5OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2ODMiOwp9Ci5pY29uLUZpbGVzOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2ODQiOwp9Ci5pY29uLUZpbGU6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY4NSI7Cn0KLmljb24tRmlsZUJveDpiZWZvcmUgewoJY29udGVudDogIlxlNjg2IjsKfQouaWNvbi1FeGl0RnVsbFNjcmVlbjpiZWZvcmUgewoJY29udGVudDogIlxlNjg3IjsKfQouaWNvbi1FbXB0eUJveDpiZWZvcmUgewoJY29udGVudDogIlxlNjg4IjsKfQouaWNvbi1EZWxldGU6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY4OSI7Cn0KLmljb24tQ29udHJvbGxlcjpiZWZvcmUgewoJY29udGVudDogIlxlNjhhIjsKfQouaWNvbi1Db21wYXNzOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2OGIiOwp9Ci5pY29uLUNvbXBhc3NUb29sOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2OGMiOwp9Ci5pY29uLUNsaXBib2FyZFRleHQ6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY4ZCI7Cn0KLmljb24tQ2xpcGJvYXJkQ2hhcnQ6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY4ZSI7Cn0KLmljb24tQ2hlbWljYWxHbGFzczpiZWZvcmUgewoJY29udGVudDogIlxlNjhmIjsKfQouaWNvbi1DRDpiZWZvcmUgewoJY29udGVudDogIlxlNjkwIjsKfQouaWNvbi1DYXJpb2NhOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2OTEiOwp9Ci5pY29uLUNhcjpiZWZvcmUgewoJY29udGVudDogIlxlNjkyIjsKfQouaWNvbi1Cb29rOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2OTMiOwp9Ci5pY29uLUJpZ1RydWNrOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2OTQiOwp9Ci5pY29uLUJpY3ljbGU6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY5NSI7Cn0KLmljb24tV3JlbmNoOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2OTYiOwp9Ci5pY29uLVdlYjpiZWZvcmUgewoJY29udGVudDogIlxlNjk3IjsKfQouaWNvbi1XYXRjaDpiZWZvcmUgewoJY29udGVudDogIlxlNjk4IjsKfQouaWNvbi1Wb2x1bWU6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY5OSI7Cn0KLmljb24tVmlkZW86YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY5YSI7Cn0KLmljb24tVXNlcnM6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY5YiI7Cn0KLmljb24tVXNlcjpiZWZvcmUgewoJY29udGVudDogIlxlNjljIjsKfQouaWNvbi1VcGxvYWRDTG91ZDpiZWZvcmUgewoJY29udGVudDogIlxlNjlkIjsKfQouaWNvbi1UeXBpbmc6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY5ZSI7Cn0KLmljb24tVG9vbHM6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTY5ZiI7Cn0KLmljb24tVGFnOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YTAiOwp9Ci5pY29uLVNwZWVkb21ldHRlcjpiZWZvcmUgewoJY29udGVudDogIlxlNmExIjsKfQouaWNvbi1TaGFyZTpiZWZvcmUgewoJY29udGVudDogIlxlNmEyIjsKfQouaWNvbi1TZXR0aW5nczpiZWZvcmUgewoJY29udGVudDogIlxlNmEzIjsKfQouaWNvbi1TZWFyY2g6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZhNCI7Cn0KLmljb24tU2NyZXdkcml2ZXI6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZhNSI7Cn0KLmljb24tUm9sb2RleDpiZWZvcmUgewoJY29udGVudDogIlxlNmE2IjsKfQouaWNvbi1SaW5nZXI6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZhNyI7Cn0KLmljb24tUmVzdW1lOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YTgiOwp9Ci5pY29uLVJlc3RhcnQ6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZhOSI7Cn0KLmljb24tUG93ZXJPZmY6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZhYSI7Cn0KLmljb24tUG9pbnRlcjpiZWZvcmUgewoJY29udGVudDogIlxlNmFiIjsKfQouaWNvbi1QaWN0dXJlOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YWMiOwp9Ci5pY29uLU9wZW5lZExvY2s6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZhZCI7Cn0KLmljb24tTm90ZXM6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZhZSI7Cn0KLmljb24tTXV0ZTpiZWZvcmUgewoJY29udGVudDogIlxlNmFmIjsKfQouaWNvbi1Nb3ZpZTpiZWZvcmUgewoJY29udGVudDogIlxlNmIwIjsKfQouaWNvbi1NaWNyb3Bob25lMjpiZWZvcmUgewoJY29udGVudDogIlxlNmIxIjsKfQouaWNvbi1NZXNzYWdlOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YjIiOwp9Ci5pY29uLU1lc3NhZ2VSaWdodDpiZWZvcmUgewoJY29udGVudDogIlxlNmIzIjsKfQouaWNvbi1NZXNzYWdlTGVmdDpiZWZvcmUgewoJY29udGVudDogIlxlNmI0IjsKfQouaWNvbi1NZW51OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YjUiOwp9Ci5pY29uLU1lZGlhOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YjYiOwp9Ci5pY29uLU1haWw6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZiNyI7Cn0KLmljb24tTGlzdDpiZWZvcmUgewoJY29udGVudDogIlxlNmI4IjsKfQouaWNvbi1MYXllcnM6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZiOSI7Cn0KLmljb24tS2V5OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YmEiOwp9Ci5pY29uLUltYm94OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YmIiOwp9Ci5pY29uLUV5ZTpiZWZvcmUgewoJY29udGVudDogIlxlNmJjIjsKfQouaWNvbi1FZGl0OmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YmQiOwp9Ci5pY29uLURTTFJDYW1lcmE6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZiZSI7Cn0KLmljb24tRG93bmxvYWRDbG91ZDpiZWZvcmUgewoJY29udGVudDogIlxlNmJmIjsKfQouaWNvbi1Db21wYWN0Q2FtZXJhOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YzAiOwp9Ci5pY29uLUNsb3VkOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YzEiOwp9Ci5pY29uLUNsb3NlZExvY2s6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZjMiI7Cn0KLmljb24tQ2hhcnQyOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YzMiOwp9Ci5pY29uLUJ1bGI6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZjNCI7Cn0KLmljb24tQnJpZWZjYXNlOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YzUiOwp9Ci5pY29uLUJsb2c6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTZjNiI7Cn0KLmljb24tQWdlbmRhOmJlZm9yZSB7Cgljb250ZW50OiAiXGU2YzciOwp9Cg=="}},"time_used":8954,"timings":{"blocked":-1,"dns":0,"connect":2133,"send":0,"wait":2646,"receive":4178,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/latest-blog/blog.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.346Z","timestamp":1785143908346,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /image/latest-blog/blog.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:46 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"aaec-63ccd443bdcc0\"\r\nAccept-Ranges: bytes\r\nContent-Length: 43756\r\nVary: User-Agent\r\nKeep-Alive: timeout=5, max=95\r\nConnection: Keep-Alive\r\nContent-Type: image/jpeg\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":43756,"size_decoded":44075,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=0], baseline, precision 8, 370x336, components 3","md5":"dc48fc21ea91faf4d7bd322e944a8a79","sha1":"d9440a9f9b74e738b944b4e2a1106fa3d33c7e67","sha256":"e40d972a59096ff4e217c62081669a624f52109ef4704a3e5faf4cc75c963cb6","sha512":"dbbfb611fca0a328a66cbdbc9adb26eec139a63e905e4df0c834ec4d1e595578a021bb45a798023617305d8674e8ed22df47c781dc0cccd656d47c4cb35ada91","ssdeep":"768:P5ohE2342IpY1I7t7lwTldCEUS9UabuwNQ+SHTxEqhFW7MS8HCN5X0P6ZE:kE23ApY1Cs4VOe1zW7B8S5sGE","tlshash":"d313e195d8d25acab8a7d4252ca33c7e9cd54e53fe8ae06608c1c97ef013196d1f930d","first_seen":"2025-03-10T16:31:42.996398Z","last_seen":"2026-08-06T06:09:10.695578Z","times_seen":39,"resource_available":false,"data":"/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABGAAD/4QPGaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTU3NzIsIDIwMTQvMDEvMTMtMTk6NDQ6MDAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcFJpZ2h0cz0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3JpZ2h0cy8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bXBSaWdodHM6TWFya2VkPSJGYWxzZSIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkZGOURFNEUxM0UyRUU2MTFBMkE4Rjc5OEI3Qzk3RUY5IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkRCNzEwOEIwRjhGNzExRTc4MjgyRDQyNjg4OTQ1RjkxIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkRCNzEwOEFGRjhGNzExRTc4MjgyRDQyNjg4OTQ1RjkxIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE3IChXaW5kb3dzKSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjUzN2ExNDA4LWE4MGItOGE0ZC04MTlhLWI3YTgyOWQ5ZDI3OCIgc3RSZWY6ZG9j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"}},"time_used":18140,"timings":{"blocked":17892,"dns":0,"connect":0,"send":0,"wait":247,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/s/player/7a7969c2/www-player.css","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.youtube.com/embed/tZOSQBP946Q","date":"2026-07-27T09:18:46.682Z","timestamp":1785143926682,"http_version":"HTTP/3","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.com","organization":""},"issuer":{"commonName":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:25 GMT","end":"Mon, 21 Sep 2026 08:37:24 GMT"},"fingerprint":{"sha1":"D9:DA:81:30:78:3E:9C:6B:5F:9D:18:52:0E:BE:6D:52:2F:FB:33:E0","sha256":"EA:E2:2D:87:EC:9C:D6:51:9D:59:E4:13:35:3B:97:14:E3:DA:58:2D:1C:69:19:41:54:94:25:C3:94:17:F3:0C"}}},"request":{"raw":"GET /s/player/7a7969c2/www-player.css HTTP/1.1\r\nHost: www.youtube.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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.youtube.com/embed/tZOSQBP946Q\r\nCookie: __Secure-YNID=20.YT=HJHEAMDOg21BtS27Beq3zWzqjV-7dYCK59j527uPmgsSWq48pSqj22Ql_kBAc9XJGuGK18LTy4_uYmPEHuwRNVtOl3H_-_fLs1iXS-9r6U33RKrPmu7iH8eEIUAtVV4emXhJ8HqqcyLKfu_YE5QJLQ-DGnQpHV7wSZDaw_AeQXomTEiAS11OZ8rNPU_Exo9GUw1HLaQh9Uu4vU-S5FAaTtoQAm-UcgX0vyggliPYW2bUtx09PpJqxohHHZ6nv77zzKufFcSZR1HKrCPoITOfiCwwol7j6OB-6oFj2yL4VkxFQRI-wnySC3rZpBH_hG9L037fQ1iCbaMOjhRV9XO-SQ; YSC=tV5tUXVf6rM; VISITOR_INFO1_LIVE=aOb2A5cME_o; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgTw%3D%3D; __Secure-ROLLOUT_TOKEN=CKiX56v_3fm7NxCc_fOsw_KVAxic_fOsw_KVAw%3D%3D\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/3 200 \r\naccept-ranges: bytes\r\ncontent-encoding: br\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"youtube\"\r\nreport-to: {\"group\":\"youtube\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/youtube\"}]}\r\ncontent-length: 57346\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 23:45:20 GMT\r\nexpires: Thu, 22 Jul 2027 23:45:20 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Wed, 22 Jul 2026 04:34:15 GMT\r\ncontent-type: text/css\r\nvary: Accept-Encoding, Origin\r\nage: 380006\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":525369,"size_decoded":58026,"mime_type":"text/css","magic":"Unicode text, UTF-8 text, with very long lines (65534), with no line terminators","md5":"839a152020ccf30ae48724d0b0c7b838","sha1":"dc9e04d667f3ebd589549aaa4cfc8a8e887505e1","sha256":"921b6856085a224b1ca2e5db139b1788c01d4dd1e70daca7006b6a7b381bdae1","sha512":"efc3700ca9d21022fb13b33c526a2f9f6c73c6c063957504b3b8ed58ef9512fa815c7f915f522af2f3fa73dd7cbfd6634566ad1dc6c86f11f4ed0a4b74f824ce","ssdeep":"6144:s8d5Fe/qoMOg7USBfUIoImM5Kia68Oi4u7:3YxMOg7USiIoIr5Kia6Tg","tlshash":"8eb4d972f0a1233cb2278d59a7d9d54d7339d983e2e12aeff11166dacbc77811326206","first_seen":"2026-07-14T08:36:18.809394Z","last_seen":"2026-07-28T16:17:31.518857Z","times_seen":5127,"resource_available":false,"data":"QGNoYXJzZXQgIlVURi04IjsuaHRtbDUtdmlkZW8tcGxheWVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6MDtvdXRsaW5lOjA7Zm9udC1mYW1pbHk6WW91VHViZSBOb3RvLFJvYm90byxBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtjb2xvcjojZWVlO3RleHQtYWxpZ246bGVmdDtkaXJlY3Rpb246bHRyO2ZvbnQtc2l6ZToxMXB4O2xpbmUtaGVpZ2h0OjEuMzstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjpyZ2JhKDAsMCwwLDApO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb259Lmh0bWw1LXZpZGVvLXBsYXllciwueXRwLWNvbnRleHRtZW51ey1tcy1oaWdoLWNvbnRyYXN0LWFkanVzdDpub25lO2ZvcmNlZC1jb2xvci1hZGp1c3Q6bm9uZX0uaHRtbDUtdmlkZW8tcGxheWVyLmFkLXNob3dpbmcsLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlLC5odG1sNS12aWRlby1wbGF5ZXIudW5zdGFydGVkLW1vZGUsLmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC10cmFuc3BhcmVudCl7YmFja2dyb3VuZC1jb2xvcjojMDAwfS55dGQtdmlkZW8tbWFzdGhlYWQtYWQtcHJpbWFyeS12aWRlby1yZW5kZXJlciAuaHRtbDUtdmlkZW8tcGxheWVyLmFkLXNob3dpbmcsLnl0ZC12aWRlby1tYXN0aGVhZC1hZC1wcmltYXJ5LXZpZGVvLXJlbmRlcmVyIC5odG1sNS12aWRlby1wbGF5ZXIuZW5kZWQtbW9kZSwueXRkLXZpZGVvLW1hc3RoZWFkLWFkLXByaW1hcnktdmlkZW8tcmVuZGVyZXIgLmh0bWw1LXZpZGVvLXBsYXllci51bnN0YXJ0ZWQtbW9kZSwueXRkLXZpZGVvLW1hc3RoZWFkLWFkLXByaW1hcnktdmlkZW8tcmVuZGVyZXIgLmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC10cmFuc3BhcmVudCl7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ueXRwLWJpZy1tb2Rle2ZvbnQtc2l6ZToxN3B4fS55dHAtYXV0b2hpZGV7Y3Vyc29yOm5vbmV9Lmh0bWw1LXZpZGVvLXBsYXllciBhe2NvbG9yOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOmNvbG9yIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246Y29sb3IgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7b3V0bGluZTowfS5odG1sNS12aWRlby1wbGF5ZXIgYTpob3Zlcntjb2xvcjojZmZmOy13ZWJraXQtdHJhbnNpdGlvbjpjb2xvciAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmNvbG9yIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgYTpmb2N1c3std2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuOCk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KX0uaHRtbDUtdmlkZW8tcGxheWVyIGgxLC5odG1sNS12aWRlby1wbGF5ZXIgaDJ7bWFyZ2luOjB9Lmh0bWw1LXZpZGVvLXBsYXllciBzdmd7cG9pbnRlci1ldmVudHM6bm9uZX0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLXRvdWNoLW1vZGUpIDo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6MTBweDtiYWNrZ3JvdW5kLWNvbG9yOiM0MjQyNDJ9Lnl0cC1iaWctbW9kZTpub3QoLnl0cC10b3VjaC1tb2RlKSA6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjE1cHh9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC10b3VjaC1tb2RlKSA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQtY29sb3I6IzQyNDI0Mn0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLXRvdWNoLW1vZGUpIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojOGU4ZThlO2JvcmRlcjoxcHggc29saWQgIzQyNDI0Mjtib3JkZXItcmFkaXVzOjVweH0ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXRvdWNoLW1vZGUpIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7Ym9yZGVyLXJhZGl1czo4cHh9Lmh0bWw1LXZpZGVvLWNvbnRhaW5lcnt6LWluZGV4OjEwO3Bvc2l0aW9uOnJlbGF0aXZlfS55dHAtZW1iZWQtZXJyb3IgLmh0bWw1LXZpZGVvLWNvbnRhaW5lcntkaXNwbGF5Om5vbmV9Lmh0bWw1LW1haW4tdmlkZW97cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b3V0bGluZTowfS55dHAtZml0LWNvdmVyLXZpZGVvIC5odG1sNS1tYWluLXZpZGVvey1vLW9iamVjdC1maXQ6Y292ZXI7b2JqZWN0LWZpdDpjb3Zlcn0uaHRtbDUtbWFpbi12aWRlb1tkYXRhLW5vLWZ1bGxzY3JlZW49dHJ1ZV06Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi1idXR0b257ZGlzcGxheTpub25lfS5odG1sNS1tYWluLXZpZGVvOm5vdChbY29udHJvbHNdKTo6LXdlYmtpdC1tZWRpYS1jb250cm9scywuaHRtbDUtbWFpbi12aWRlbzpub3QoW2NvbnRyb2xzXSk6Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc3RhcnQtcGxheWJhY2stYnV0dG9ue2Rpc3BsYXk6bm9uZX0uaHRtbDUtbWFpbi12aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZXtkaXNwbGF5OmlubGluZX0udW5zdGFydGVkLW1vZGUgLmh0bWw1LW1haW4tdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc3RhcnQtcGxheWJhY2stYnV0dG9ue2Rpc3BsYXk6bm9uZX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjMyNXB4KXsuaHRtbDUtbWFpbi12aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy13aXJlbGVzcy1wbGF5YmFjay1waWNrZXItYnV0dG9ue2Rpc3BsYXk6bm9uZX19Lmh0bWw1LW1haW4tdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtY3VycmVudC10aW1lLWRpc3BsYXksLmh0bWw1LW1haW4tdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZS1yZW1haW5pbmctZGlzcGxheXtkaXNwbGF5Oi13ZWJraXQtZmxleH0ueXRwLXBsYXllci1jb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO3RvcDo0OHB4O2JvdHRvbTo2MXB4Oy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLHRvcCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLHRvcCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5ZXItY29udGVudHtib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDE0cHgpfS55dHAtZGVsaGktbW9kZXJuOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKTpub3QoLmFkLXNob3dpbmcpIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyAxNHB4KX0ueXRwLWRlbGhpLW1vZGVybjpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSk6bm90KC5hZC1zaG93aW5nKS55dHAtaGFzLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9ucyAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgOTRweCl9Lnl0cC1kZWxoaS1tb2Rlcm46bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpOm5vdCguYWQtc2hvd2luZykueXRwLWhhcy1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnMueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyA5NHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWRlbGhpLW1vZGVybjpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSk6bm90KC5hZC1zaG93aW5nKS55dHAtYmlnLW1vZGUgLnl0cC1wbGF5ZXItY29udGVudHtib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDE0cHgpfS55dHAtZGVsaGktbW9kZXJuOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKTpub3QoLmFkLXNob3dpbmcpLnl0cC1iaWctbW9kZS55dHAtaGFzLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9ucyAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgOTRweCl9Lnl0cC1kZWxoaS1tb2Rlcm46bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpOm5vdCguYWQtc2hvd2luZykueXRwLWJpZy1tb2RlLnl0cC1oYXMtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25zLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgOTRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1zbWFsbC1tb2RlIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOjQ5cHh9Lnl0cC1lbWJlZCAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbTo1M3B4fS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLXBsYXllci1jb250ZW50Om5vdCgueXRwLXVwbmV4dCl7dG9wOjYwcHh9Lnl0cC1iaWctbW9kZSAueXRwLXBsYXllci1jb250ZW50e3RvcDo2OXB4O2JvdHRvbTo3MHB4fS55dHAtYmlnLW1vZGUueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC1wbGF5ZXItY29udGVudDpub3QoLnl0cC11cG5leHQpe3RvcDo4OXB4fS55dHAtcGxheWVyLWNvbnRlbnQueXRwLWl2LXBsYXllci1jb250ZW50LC55dHAtcGxheWVyLWNvbnRlbnQueXRwLXRpbWVseS1hY3Rpb25zLWNvbnRlbnR7bGVmdDoxMnB4O3JpZ2h0OjEycHh9Lnl0cC1icmFuZGluZy1zaG93biAueXRwLXBsYXllci1jb250ZW50Lnl0cC10aW1lbHktYWN0aW9ucy1jb250ZW50e3JpZ2h0OmNhbGMoMjJweCArIHZhcigtLWJyYW5kaW5nLWltYWdlLXdpZHRoKSl9Lnl0cC1iaWctbW9kZSAueXRwLXBsYXllci1jb250ZW50Lnl0cC1pdi1wbGF5ZXItY29udGVudCwueXRwLWJpZy1tb2RlIC55dHAtcGxheWVyLWNvbnRlbnQueXRwLXRpbWVseS1hY3Rpb25zLWNvbnRlbnR7bGVmdDoyNHB4O3JpZ2h0OjI0cHh9Lnl0cC1icmFuZGluZy1zaG93bi55dHAtYmlnLW1vZGUgLnl0cC1wbGF5ZXItY29udGVudC55dHAtdGltZWx5LWFjdGlvbnMtY29udGVudHtyaWdodDpjYWxjKDIycHggKyB2YXIoLS1icmFuZGluZy1pbWFnZS13aWR0aCkpfS55dHAtYXV0b2hpZGUgLnl0cC1wbGF5ZXItY29udGVudDpub3QoLmh0bWw1LWVuZHNjcmVlbiksLnl0cC1hdXRvaGlkZSAueXRwLXBsYXllci1jb250ZW50Om5vdCgueXRwLXVwbmV4dCksLnl0cC1oaWRlLWluZm8tYmFyIC55dHAtcGxheWVyLWNvbnRlbnR7dG9wOjA7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSx0b3AgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksdG9wIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYXV0b2hpZGUgLnl0cC15cGMtcGxheWVyLWNvbnRlbnQsLnl0cC1oaWRlLWNvbnRyb2xzIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOjB9Lnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hZC1vdmVybGF5LW9wZW4pIC55dHAtaXYtcGxheWVyLWNvbnRlbnQsLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hZC1vdmVybGF5LW9wZW4pIC55dHAtdGltZWx5LWFjdGlvbnMtY29udGVudCwueXRwLWhpZGUtY29udHJvbHMgLnl0cC1pdi1wbGF5ZXItY29udGVudCwueXRwLWhpZGUtY29udHJvbHMgLnl0cC10aW1lbHktYWN0aW9ucy1jb250ZW50e2JvdHRvbToxMnB4fS55dHAtdGltZWx5LWFjdGlvbnMtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtyaWdodDowO3otaW5kZXg6MzU7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpOy13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTouMzNzO3RyYW5zaXRpb24tZGVsYXk6LjMzc30ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktYm90dG9tLXJpZ2h0IC55dHAtcGxheWVyLWNvbnRlbnQueXRwLXRpbWVseS1hY3Rpb25zLWNvbnRlbnQsLnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1vdmVybGF5LWJvdHRvbS1yaWdodCAueXRwLXRpbWVseS1hY3Rpb25zLW92ZXJsYXl7cG9zaXRpb246cmVsYXRpdmU7aW5zZXQ6MH0ueXRwLWZpbmUtc2NydWJiaW5nLWVuYWJsZSAueXRwLXRpbWVseS1hY3Rpb25zLW92ZXJsYXl7ZGlzcGxheTpub25lfS55dHAtYWQtb3ZlcmxheS1vcGVuIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOjE1MXB4fS55dHAtc21hbGwtbW9kZS55dHAtYWQtb3ZlcmxheS1vcGVuIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOjEzOXB4fS55dHAtZW1iZWQueXRwLWFkLW92ZXJsYXktb3BlbiAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbToxNDNweH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hZC1vdmVybGF5LW9wZW4pIC55dHAtaXYtcGxheWVyLWNvbnRlbnQsLnl0cC1iaWctbW9kZS55dHAtYXV0b2hpZGU6bm90KC55dHAtYWQtb3ZlcmxheS1vcGVuKSAueXRwLXRpbWVseS1hY3Rpb25zLWNvbnRlbnQsLnl0cC1iaWctbW9kZS55dHAtaGlkZS1jb250cm9scyAueXRwLWl2LXBsYXllci1jb250ZW50LC55dHAtYmlnLW1vZGUueXRwLWhpZGUtY29udHJvbHMgLnl0cC10aW1lbHktYWN0aW9ucy1jb250ZW50e2JvdHRvbToyNHB4fS55dHAtYmlnLW1vZGUueXRwLWFkLW92ZXJsYXktb3BlbiAueXRwLXBsYXllci1jb250ZW50e2JvdHRvbToxNjBweH0ueXRwLWJ1dHRvbntib3JkZXI6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmc6MDtjb2xvcjppbmhlcml0O3RleHQtYWxpZ246aW5oZXJpdDtmb250LXNpemU6MTAwJTtmb250LWZhbWlseTppbmhlcml0O2N1cnNvcjpkZWZhdWx0O2xpbmUtaGVpZ2h0OmluaGVyaXR9Lnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24gc3Zne3BhZGRpbmc6dmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpIDEycHh9Lnl0cC1iaWctbW9kZS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uIHN2Z3t2ZXJ0aWNhbC1hbGlnbjp0b3A7cGFkZGluZzpjYWxjKCh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkgLSAyNHB4KS8yKX0ueXRwLXhzbWFsbC13aWR0aC1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLnl0cC1sZWZ0LWNvbnRyb2xzIC55dHAtbXV0ZS1idXR0b24ueXRwLXN0YW5kYWxvbmUtbXV0ZS1idXR0b24gc3Zne3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7cGFkZGluZzo5cHh9Lnl0cC14c21hbGwtd2lkdGgtbW9kZS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1idXR0b246bm90KC55dHAtZXhwYW5kLXJpZ2h0LWJvdHRvbS1zZWN0aW9uLWJ1dHRvbikgc3Zne3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7cGFkZGluZzo3cHh9Lnl0cC14c21hbGwtd2lkdGgtbW9kZS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1leHBhbmQtcmlnaHQtYm90dG9tLXNlY3Rpb24tYnV0dG9uLnl0cC1idXR0b24gc3Zne3BhZGRpbmc6MH0ueXRwLWJ1dHRvbiwueXRwLWJ1dHRvbjpmb2N1c3tvdXRsaW5lOjB9Lnl0cC1idXR0b246Oi1tb3otZm9jdXMtaW5uZXJ7cGFkZGluZzowO2JvcmRlcjowfS5odG1sNS12aWRlby1wbGF5ZXIgLnl0cC1idXR0b25bYXJpYS1kaXNhYmxlZD10cnVlXSwuaHRtbDUtdmlkZW8tcGxheWVyIC55dHAtYnV0dG9uW2Rpc2FibGVkXXtvcGFjaXR5Oi41fS55dHAtYnV0dG9uOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSk6bm90KFtkaXNhYmxlZF0pOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pe2N1cnNvcjpwb2ludGVyfS55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgLnl0cC1idXR0b246Zm9jdXN7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjgpO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuOCl9Lnl0cC1jaHJvbWUtYm90dG9tLC55dHAtY2hyb21lLXRvcHtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpfS55dHAtZG5pIC55dHAtY2hyb21lLWJvdHRvbXt0ZXh0LXNoYWRvdzpub25lfS55dHAtY2hyb21lLXRvcHtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtd3JhcDpub3dyYXA7ZmxleC13cmFwOm5vd3JhcDstd2Via2l0LWJveC1wYWNrOmVuZDstd2Via2l0LWp1c3RpZnktY29udGVudDpmbGV4LWVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7bGVmdDoxMnB4O3JpZ2h0OjEycHg7dG9wOjA7ei1pbmRleDo1OH0ueXRwLXNob3J0cy1tb2RlIC55dHAtY2hyb21lLXRvcHstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cmlnaHQ6MH0ueXRwLWd2biAueXRwLWNocm9tZS10b3AsLnl0cC1ndm4ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLXRvcHt0b3A6MjBweH0ueXRwLWNocm9tZS1ib3R0b217Ym90dG9tOjA7aGVpZ2h0OjQ4cHg7d2lkdGg6MTAwJTt6LWluZGV4OjU5O3BhZGRpbmctdG9wOjNweDt0ZXh0LWFsaWduOmxlZnQ7ZGlyZWN0aW9uOmx0cn0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1ib3R0b217aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsNzJweCl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtYm90dG9tLnl0cC12b2x1bWUtcG9wb3Zlci1zaG93aW5ne3otaW5kZXg6MTAwMH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1jaHJvbWUtYm90dG9te2hlaWdodDozNnB4fS55dHAtZW1iZWQgLnl0cC1jaHJvbWUtYm90dG9te2hlaWdodDo0MHB4fS55dHAtZW1iZWQueXRwLWVtYmVkLW1vYmlsZSAueXRwLWNocm9tZS1ib3R0b20sLnl0cC1lbWJlZC55dHAtZW1iZWQtbW9iaWxlIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLWNocm9tZS1jb250cm9scywueXRwLWVtYmVkLnl0cC1lbWJlZC1tb2JpbGUueXRwLXNtYWxsLW1vZGUgLnl0cC1jaHJvbWUtYm90dG9tLC55dHAtZW1iZWQueXRwLWVtYmVkLW1vYmlsZS55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1jaHJvbWUtY29udHJvbHN7aGVpZ2h0OjQ4cHh9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS1ib3R0b217aGVpZ2h0OjU0cHg7cGFkZGluZy10b3A6NHB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1jaHJvbWUtYm90dG9te2hlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LDk2cHgpO3BhZGRpbmctdG9wOjB9Lnl0cC1jaHJvbWUtdG9wIC55dHAtYnV0dG9uLC55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbiwueXRwLXNtYWxsLW1vZGUgLnl0cC1yZXBsYXktYnV0dG9ue29wYWNpdHk6Ljk7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MzZweDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7b3ZlcmZsb3c6aGlkZGVufS55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLC55dHAtcmVwbGF5LWJ1dHRvbntvcGFjaXR5Oi45O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjQ4cHg7cGFkZGluZzowIDJweDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7b3ZlcmZsb3c6aGlkZGVufS55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC1tdXRlLWJ1dHRvbntwYWRkaW5nOjZweH0ueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtbmV4dC1idXR0b257cGFkZGluZzowfS55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC1taW5pcGxheWVyLWJ1dHRvbiwueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtcmVtb3RlLWJ1dHRvbntwYWRkaW5nOjAgNHB4fS55dHAtZW1iZWQgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24sLnl0cC1lbWJlZCAueXRwLXJlcGxheS1idXR0b257d2lkdGg6NDBweDtwYWRkaW5nOjB9Lnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtbWluaXBsYXllci1idXR0b24sLnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtbXV0ZS1idXR0b24sLnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtbmV4dC1idXR0b24sLnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtcmVtb3RlLWJ1dHRvbntwYWRkaW5nOjB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1yaWdodC1jb250cm9sc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDttYXJnaW4tdG9wOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KTtoZWlnaHQ6dmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQsNDhweCk7Ym9yZGVyLXJhZGl1czoyOHB4O3BhZGRpbmc6MCAxNnB4Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMgc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xze3BhZGRpbmc6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC1leHBhbmQtcmlnaHQtYm90dG9tLXNlY3Rpb24tYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMtbGVmdCwueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMtcmlnaHR7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246ZW5kOy13ZWJraXQtYWxpZ24taXRlbXM6ZmxleC1lbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmR9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b257b3BhY2l0eTp1bnNldDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvblthcmlhLXByZXNzZWRdOmFmdGVye2Rpc3BsYXk6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLW11dGUtYnV0dG9ue292ZXJmbG93OnZpc2libGU7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjEwMCV9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1tdXRlLWJ1dHRvbiAueXRwLXZvbHVtZS1pY29ue292ZXJmbG93OnZpc2libGU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJlcGxheS1idXR0b257b3BhY2l0eTp1bnNldH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWxlZnQtY29udHJvbHN7bWluLXdpZHRoOjA7ei1pbmRleDo1OX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xze3BhZGRpbmc6MCA0cHg7ei1pbmRleDo1OX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9ue3BhZGRpbmc6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9uOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6YmxvY2s7dG9wOjUwJTtsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTtib3JkZXItcmFkaXVzOjQwcHg7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtwb2ludGVyLWV2ZW50czpub25lO3dpZHRoOjQ4cHg7aGVpZ2h0OmNhbGModmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQsIDQ4cHgpIC0gOHB4KX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9uOmhvdmVyOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9uOmFjdGl2ZTpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdG9uYWwtaG92ZXIscmdiYSgyNTUsMjU1LDI1NSwuMikpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbmV4dC1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopey13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbmV4dC1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopIHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1uZXh0LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kil7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0LDQ4cHgpO2JvcmRlci1yYWRpdXM6MjhweDtwYWRkaW5nOjAgMTZweDtwYWRkaW5nOjAgNHB4IDAgMDttYXJnaW4tdG9wOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KTttYXJnaW4tbGVmdDo4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1uZXh0LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+KikueXRwLXBsYXlsaXN0LXVpe21hcmdpbi1sZWZ0OjA7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLW5leHQtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKTphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czoyOHB4O2luc2V0OjRweCA0cHggNHB4IDB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1uZXh0LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kik6aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYnV0dG9uLXNlY29uZGFyeSxyZ2JhKDI1NSwyNTUsMjU1LC4xKSk7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1uZXh0LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kik6YWN0aXZlOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRvbmFsLWhvdmVyLHJnYmEoMjU1LDI1NSwyNTUsLjIpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1idXR0b257aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpO3dpZHRoOnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1yaWdodC1jb250cm9scyAueXRwLWJ1dHRvbjpiZWZvcmV7aGVpZ2h0OmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsIDU2cHgpIC0gOHB4KTt3aWR0aDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbmV4dC1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiope21hcmdpbi10b3A6Y2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpO2hlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbmV4dC1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopIHN2Z3twYWRkaW5nOmNhbGMoKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LCA1NnB4KSAtIDI0cHgpLzIpfS55dHAtZGVsaGktbW9kZXJuLXdpdGgtbHVtaW5vc2l0eS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbmV4dC1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiope2JhY2tncm91bmQ6cmdiYSg4MCw4MCw4MCwuNik7YmFja2dyb3VuZC1ibGVuZC1tb2RlOmx1bWlub3NpdHk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KX0ueXRwLWRlbGhpLW1vZGVybi13aXRoLWRpZmZlcmVuY2UueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLW5leHQtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKXtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpkaWZmZXJlbmNlOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1leGNsdXNpb24ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLW5leHQtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKXtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpleGNsdXNpb247LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KX0ueXRwLWVtYmVkLnl0cC1lbWJlZC1tb2JpbGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24sLnl0cC1lbWJlZC55dHAtZW1iZWQtbW9iaWxlLnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9ue3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHh9Lnl0cC1lbWJlZC1tb2JpbGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b246bm90KC55dHAteW91dHViZS1idXR0b24pIHN2ZywueXRwLWVtYmVkLW1vYmlsZS55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbjpub3QoLnl0cC15b3V0dWJlLWJ1dHRvbikgc3Zne3dpZHRoOjQwcHg7cGFkZGluZy1sZWZ0OjRweH0ueXRwLWNocm9tZS10b3AgLnl0cC1idXR0b257cGFkZGluZy10b3A6NnB4O2hlaWdodDo0MnB4O3ZlcnRpY2FsLWFsaWduOnRvcH0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLXRvcCAueXRwLWJ1dHRvbntwYWRkaW5nLXRvcDo5cHg7aGVpZ2h0OjYzcHh9Lnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b257aGVpZ2h0OjEwMCV9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbiwueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLXRvcCAueXRwLWJ1dHRvbnt3aWR0aDo1NHB4fS55dHAtcGxheS1idXR0b246bm90KC55dHAtcGxheS1idXR0b24tcGxheWxpc3QpOmJlZm9yZSwueXRwLXByZXYtYnV0dG9uOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NXB4O2JvdHRvbTowO2xlZnQ6LTEycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5LWJ1dHRvbjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czoyOHB4O2JvcmRlci1yYWRpdXM6MjdweH0ueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5LWJ1dHRvbjphZnRlcntib3JkZXItcmFkaXVzOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkvMil9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5LWJ1dHRvbjpob3ZlcjphZnRlciwueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1wbGF5LWJ1dHRvbjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXBsYXktYnV0dG9uOmFjdGl2ZTphZnRlciwueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1wbGF5LWJ1dHRvbjphY3RpdmU6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdG9uYWwtaG92ZXIscmdiYSgyNTUsMjU1LDI1NSwuMikpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtYmlnLW1vZGUtY29uc2lzdGVudC1waWxsLWhlaWdodC55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1sZWZ0LWNvbnRyb2xzIC55dHAtcGxheS1idXR0b257aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpO3dpZHRoOnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpO21hcmdpbi10b3A6Y2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpO21hcmdpbi1ib3R0b206Y2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJldi1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopey13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJldi1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopIHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcmV2LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kil7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0LDQ4cHgpO2JvcmRlci1yYWRpdXM6MjhweDtwYWRkaW5nOjAgMTZweDtwYWRkaW5nOjAgMCAwIDRweDttYXJnaW4tdG9wOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KTttYXJnaW4tbGVmdDo4cHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJldi1idXR0b246bm90KC55dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiopOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6NHB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7cG9pbnRlci1ldmVudHM6bm9uZTtib3JkZXItcmFkaXVzOjI4cHg7aW5zZXQ6NHB4IDAgNHB4IDRweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXByZXYtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKTpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXByZXYtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKTphY3RpdmU6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdG9uYWwtaG92ZXIscmdiYSgyNTUsMjU1LDI1NSwuMikpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtYmlnLW1vZGUueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXByZXYtYnV0dG9uOm5vdCh5dHAtbWluaXBsYXllci1idXR0b24tY29udGFpbmVyPiope21hcmdpbi10b3A6Y2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpO2hlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KX0ueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wcmV2LWJ1dHRvbjpub3QoeXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKSBzdmd7cGFkZGluZzpjYWxjKCh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkgLSAyNHB4KS8yKX0ueXRwLWRlbGhpLW1vZGVybi13aXRoLWx1bWlub3NpdHkueXRwLWRlbGhpLW1vZGVybiAueXRwLXByZXYtYnV0dG9uOm5vdCgueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcj4qKXtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpsdW1pbm9zaXR5Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1kaWZmZXJlbmNlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcmV2LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kil7YmFja2dyb3VuZDpyZ2JhKDgwLDgwLDgwLC42KTtiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6ZGlmZmVyZW5jZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpfS55dHAtZGVsaGktbW9kZXJuLXdpdGgtZXhjbHVzaW9uLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcmV2LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kil7YmFja2dyb3VuZDpyZ2JhKDgwLDgwLDgwLC42KTtiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6ZXhjbHVzaW9uOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1mdWxsc2NyZWVuLWJ1dHRvbjphZnRlcntjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NXB4O2JvdHRvbTowO2xlZnQ6MTAwJX0ueXRwLWJpZy1tb2RlIC55dHAtcGxheS1idXR0b246bm90KC55dHAtcGxheS1idXR0b24tcGxheWxpc3QpOmJlZm9yZSwueXRwLWJpZy1tb2RlIC55dHAtcHJldi1idXR0b246YmVmb3Jle3dpZHRoOjI0cHg7bGVmdDotMjRweH0ueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pOm5vdChbZGlzYWJsZWRdKTpob3ZlciwueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvblthcmlhLWV4cGFuZGVkPXRydWVdLC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZD10cnVlXSwueXRwLWNocm9tZS10b3AgLnl0cC1idXR0b246aG92ZXIsLnl0cC1yZXBsYXktYnV0dG9uOmhvdmVye29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1zdmctZmlsbHtmaWxsOiNmZmZ9Lnl0cC1zdmctc2hhZG93e3N0cm9rZTojMDAwO3N0cm9rZS1vcGFjaXR5Oi4xNTtzdHJva2Utd2lkdGg6MnB4O2ZpbGw6bm9uZX0ueXRwLWRuaSAueXRwLXN2Zy1zaGFkb3d7ZGlzcGxheTpub25lfS55dHAtc3ZnLXNoYWRvdy1maWxse2ZpbGw6IzAwMDtmaWxsLW9wYWNpdHk6LjE1O3N0cm9rZTpub25lfS55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZF17cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkXTphZnRlcntjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MDtoZWlnaHQ6M3B4O2JvcmRlci1yYWRpdXM6M3B4O2xlZnQ6MjRweDtib3R0b206OXB4O2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1yZWQtaW5kaWNhdG9yLCNlMTAwMmQpOy13ZWJraXQtdHJhbnNpdGlvbjpsZWZ0IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLHdpZHRoIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246bGVmdCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSx3aWR0aCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZF06YWZ0ZXJ7aGVpZ2h0OjJweDtib3JkZXItcmFkaXVzOjJweDtsZWZ0OjIwcHg7Ym90dG9tOjhweH0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZF06YWZ0ZXJ7aGVpZ2h0OjNweDtib3JkZXItcmFkaXVzOjNweDtsZWZ0OjI3cHg7Ym90dG9tOjEwcHh9Lnl0cC1kbmkgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkXTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkPXRydWVdOmFmdGVye3dpZHRoOjI0cHg7bGVmdDoxMnB4Oy13ZWJraXQtdHJhbnNpdGlvbjpsZWZ0IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSx3aWR0aCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpsZWZ0IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSx3aWR0aCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZD10cnVlXTphZnRlciwueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZD10cnVlXTphZnRlcnt3aWR0aDoxOHB4O2xlZnQ6OXB4fS55dHAtZW1iZWQgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkPXRydWVdOmFmdGVye3dpZHRoOjIwcHg7bGVmdDoxMHB4fS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkPXRydWVdOmFmdGVye3dpZHRoOjI3cHg7bGVmdDoxNHB4fS55dHAtZW1iZWQtbW9iaWxlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uW2FyaWEtcHJlc3NlZD10cnVlXTphZnRlciwueXRwLWVtYmVkLW1vYmlsZS55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvblthcmlhLXByZXNzZWQ9dHJ1ZV06YWZ0ZXJ7bGVmdDoxNXB4fS55dHAtY29sb3Itd2hpdGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b25bYXJpYS1wcmVzc2VkXTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNkZGR9Lnl0cC1jb2xvci1wYXJ0eSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvblthcmlhLXByZXNzZWRdOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOnl0cC1wYXJ0eS1iYWNrZ3JvdW5kLWNvbG9yIC4xcyBsaW5lYXIgaW5maW5pdGU7YW5pbWF0aW9uOnl0cC1wYXJ0eS1iYWNrZ3JvdW5kLWNvbG9yIC4xcyBsaW5lYXIgaW5maW5pdGV9Lnl0cC1jaHJvbWUtdG9wLWJ1dHRvbnN7d2hpdGUtc3BhY2U6bm93cmFwfS55dHAtY2hyb21lLXRvcC1idXR0b25zIC55dHAtYnV0dG9ue3RleHQtc2hhZG93OmluaGVyaXR9W2Rpcj1ydGxdIC55dHAtc2hvcnRzLW1vZGUgLnl0cC1jaHJvbWUtdG9wLWJ1dHRvbnN7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDt3aWR0aDo0OHB4fS55dHAtY29weWxpbmstYnV0dG9uOm5vdCgueXRwLWNvcHlsaW5rLWJ1dHRvbi12aXNpYmxlKSwueXRwLW92ZXJmbG93LWJ1dHRvbjpub3QoLnl0cC1vdmVyZmxvdy1idXR0b24tdmlzaWJsZSksLnl0cC1zaGFyZS1idXR0b246bm90KC55dHAtc2hhcmUtYnV0dG9uLXZpc2libGUpe2Rpc3BsYXk6bm9uZX0ueXRwLWV4cC1ib3R0b20tY29udHJvbC1mbGV4Ym94IC55dHAtY2hyb21lLWNvbnRyb2xze2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtY2hyb21lLWNvbnRyb2xze2hlaWdodDo0OHB4O2xpbmUtaGVpZ2h0OjQ4cHg7Zm9udC1zaXplOjEwOSU7dGV4dC1hbGlnbjpsZWZ0O2RpcmVjdGlvbjpsdHJ9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHN7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsNzJweCk7bGluZS1oZWlnaHQ6dmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCw3MnB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xze2hlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LDk2cHgpO2xpbmUtaGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsOTZweCl9Lnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xze2hlaWdodDozNnB4O2xpbmUtaGVpZ2h0OjM2cHh9Lnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9sc3toZWlnaHQ6NDBweDtsaW5lLWhlaWdodDo0MHB4fS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHN7aGVpZ2h0OjU0cHg7bGluZS1oZWlnaHQ6NTRweH06bm90KC55dHAtZXhwLWJvdHRvbS1jb250cm9sLWZsZXhib3gpIC55dHAtbGVmdC1jb250cm9sc3tmbG9hdDpsZWZ0fS55dHAtbGVmdC1jb250cm9sc3toZWlnaHQ6MTAwJX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWxlZnQtY29udHJvbHMueXRwLWxlZnQtY29udHJvbHMtd2l0aC12b2x1bWV7b3ZlcmZsb3c6dmlzaWJsZX0ueXRwLWV4cC1ib3R0b20tY29udHJvbC1mbGV4Ym94IC55dHAtbGVmdC1jb250cm9sc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4OjE7ZmxleDoxO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc306bm90KC55dHAtZXhwLWJvdHRvbS1jb250cm9sLWZsZXhib3gpIC55dHAtcmlnaHQtY29udHJvbHN7ZmxvYXQ6cmlnaHR9Lnl0cC1yaWdodC1jb250cm9sc3toZWlnaHQ6MTAwJX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWxlZnQtY29udHJvbHMgLnl0cC1tdXRlLWJ1dHRvbi55dHAtc3RhbmRhbG9uZS1tdXRlLWJ1dHRvbnstd2Via2l0LWZsZXgtc2hyaW5rOjA7ZmxleC1zaHJpbms6MDttaW4td2lkdGg6MDttYXJnaW46dmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpIDAgdmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpIDEycHg7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0LDQ4cHgpO2JvcmRlci1yYWRpdXM6MjhweDtwYWRkaW5nOjAgMTZweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWxlZnQtY29udHJvbHMgLnl0cC1tdXRlLWJ1dHRvbi55dHAtc3RhbmRhbG9uZS1tdXRlLWJ1dHRvbiBzdmd7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9uLC55dHAtZGVsaGktbW9kZXJuIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9uIC55dHAtYnV0dG9ue3BhZGRpbmc6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWxlZnQtY29udHJvbHMgLnl0cC1tdXRlLWJ1dHRvbi55dHAtc3RhbmRhbG9uZS1tdXRlLWJ1dHRvbjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czoyOHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJ1dHRvbi1zZWNvbmRhcnkscmdiYSgyNTUsMjU1LDI1NSwuMSkpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9uOmFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10b25hbC1ob3ZlcixyZ2JhKDI1NSwyNTUsMjU1LC4yKSk7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9ue3BhZGRpbmc6MCA0cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9uIHN2Z3twYWRkaW5nOjEwcHggNnB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1sZWZ0LWNvbnRyb2xzIC55dHAtbXV0ZS1idXR0b24gLnl0cC12b2x1bWUtaWNvbntwYWRkaW5nOjRweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9ue2hlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KTttYXJnaW46Y2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpIDAgY2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSB2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCwgNTZweCkpLzIpIDEycHg7cGFkZGluZzowfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1yaWdodC1jb250cm9sc3toZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCk7bWFyZ2luLXRvcDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLXRvcC1oZWlnaHQsMjBweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMtbGVmdHtoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMtcmlnaHR7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1yaWdodC1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xzLWxlZnQ6YWZ0ZXJ7aGVpZ2h0OjI4cHg7bWFyZ2luOjEwcHggMTRweH0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1jaHJvbWUtYm90dG9te2hlaWdodDp2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LXhzbWFsbC13aWR0aC1tb2RlLDY0cHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1idXR0b257aGVpZ2h0OjMycHg7d2lkdGg6MzJweH0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtYnV0dG9uLnl0cC1saXZlLWJhZGdle3dpZHRoOmF1dG99Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLWJ1dHRvbjpub3QoLnl0cC1saXZlLWJhZGdlKTpiZWZvcmV7Ym9yZGVyLXJhZGl1czo1MCU7aGVpZ2h0OjMycHg7d2lkdGg6MzJweH0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHN7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQteHNtYWxsLXdpZHRoLW1vZGUsNjRweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtbGVmdC1jb250cm9scyAueXRwLW5leHQtYnV0dG9uLC55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWxlZnQtY29udHJvbHMgLnl0cC1wcmV2LWJ1dHRvbntkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtbGVmdC1jb250cm9scyAueXRwLW11dGUtYnV0dG9uLnl0cC1zdGFuZGFsb25lLW11dGUtYnV0dG9ue2hlaWdodDo0MHB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLXJpZ2h0LWNvbnRyb2xze2hlaWdodDo0MHB4O2xpbmUtaGVpZ2h0OjQwcHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1idXR0b257ZGlzcGxheTpub25lO21hcmdpbjo0cHggMnB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMtbGVmdDphZnRlcntkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLXNldHRpbmdzLWJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1yaWdodC1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtZXhwYW5kLXJpZ2h0LWJvdHRvbS1zZWN0aW9uLWJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9jazstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTstbXMtdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWNocm9tZS1ib3R0b20ueXRwLXhzbWFsbC13aWR0aC1yaWdodC1jb250cm9scy1leHBhbmRlZCAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWNocm9tZS1ib3R0b20ueXRwLXhzbWFsbC13aWR0aC1yaWdodC1jb250cm9scy1leHBhbmRlZCAueXRwLXJpZ2h0LWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC1leHBhbmQtcmlnaHQtYm90dG9tLXNlY3Rpb24tYnV0dG9uey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTstbXMtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDBkZWcpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtY2hyb21lLWJvdHRvbS55dHAteHNtYWxsLXdpZHRoLXJpZ2h0LWNvbnRyb2xzLWV4cGFuZGVkIC55dHAtbGVmdC1jb250cm9scyAueXRwLXRpbWUtZGlzcGxheXt2aXNpYmlsaXR5OmhpZGRlbn0ueXRwLWV4cC1ib3R0b20tY29udHJvbC1mbGV4Ym94IC55dHAtdm9sdW1lLWFyZWF7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWF7bWFyZ2luOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KSAwIHZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KSAxMnB4O2hlaWdodDp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KTtib3JkZXItcmFkaXVzOjI4cHg7cGFkZGluZzowIDE2cHg7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWEgc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC12b2x1bWUtYXJlYXtwYWRkaW5nOjA7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWEgLnl0cC12b2x1bWUtaWNvbntwYWRkaW5nOjB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWEgLnl0cC12b2x1bWUtaWNvbiBzdmd7cGFkZGluZzp2YXIoLS15dC1kZWxoaS1waWxsLXRvcC1oZWlnaHQsMTJweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWE6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDo0cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwb2ludGVyLWV2ZW50czpub25lO2JvcmRlci1yYWRpdXM6MjhweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC12b2x1bWUtYXJlYTpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC1jaHJvbWUtYm90dG9tLnl0cC12b2x1bWUtc2xpZGVyLWFjdGl2ZSAueXRwLXZvbHVtZS1hcmVhe3BhZGRpbmctcmlnaHQ6MTZweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLXZvbHVtZS1hcmVhe21hcmdpbjp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLXRvcC1oZWlnaHQsMjBweCkgMCAwIDEycHg7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZS55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC12b2x1bWUtYXJlYXttYXJnaW46dmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpIDAgdmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpIDhweDtoZWlnaHQ6NDBweH0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLWFyZWEgLnl0cC1idXR0b257aGVpZ2h0OjQwcHg7d2lkdGg6NDBweDtwYWRkaW5nOjB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlLnl0cC1kZWxoaS1ob3Jpem9udGFsLXZvbHVtZS1jb250cm9scyAueXRwLXZvbHVtZS1hcmVhIHN2Z3t3aWR0aDoxOHB4O2hlaWdodDoxOHB4O3BhZGRpbmc6MTFweH0ueXRwLWF1dG9oaWRlLWZhZGUtdHJhbnNpdGlvbiwueXRwLWNocm9tZS1ib3R0b206bm90KC55dHAtZnJvc3RlZC1nbGFzcy1vcGFjaXR5LWFuaW1hdGlvbiksLnl0cC1jaHJvbWUtdG9wey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYXV0b2hpZGUgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtYXV0b2hpZGUtZmFkZS10cmFuc2l0aW9uLC55dHAtYXV0b2hpZGUgLnl0cC1jaHJvbWUtYm90dG9tOm5vdCgueXRwLWZyb3N0ZWQtZ2xhc3Mtb3BhY2l0eS1hbmltYXRpb24pLC55dHAtYXV0b2hpZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtY29weWxpbmstYnV0dG9uLC55dHAtYXV0b2hpZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hhcmUtYnV0dG9uLC55dHAtYXV0b2hpZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtd2F0Y2gtbGF0ZXItYnV0dG9uLC55dHAtYXV0b2hpZGUgLnl0cC1vdmVyZmxvdy1idXR0b24sLnl0cC1hdXRvaGlkZSAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLC55dHAtYXV0b2hpZGUgLnl0cC1zaG9ydHMtdGl0bGUtY2hhbm5lbCwueXRwLWF1dG9oaWRlIC55dHAtdGl0bGUsLnl0cC1hdXRvaGlkZSAueXRwLXRpdGxlLWNoYW5uZWwsLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1jYXJkcy10ZWFzZXItc2hvd24pIC55dHAtY2FyZHMtYnV0dG9uLC55dHAtY2hyb21lLWJvdHRvbVthcmlhLWhpZGRlbj10cnVlXSwueXRwLWNocm9tZS10b3BbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWF1dG9oaWRlOm5vdCgueXRwLWF1dG9oaWRlLWFjdGl2ZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hhcmUtYnV0dG9uLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLWNocm9tZS10b3AgLnl0cC13YXRjaC1sYXRlci1idXR0b24sLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hdXRvaGlkZS1hY3RpdmUpIC55dHAtb3ZlcmZsb3ctYnV0dG9uLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLXNob3J0cy10aXRsZS1jaGFubmVsLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLXRpdGxlLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLXRpdGxlLWNoYW5uZWwsLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hdXRvaGlkZS1hY3RpdmUpOm5vdCgueXRwLWNhcmRzLXRlYXNlci1zaG93bikgLnl0cC1jYXJkcy1idXR0b257ZGlzcGxheTpub25lfS55dHAtc2hvcnRzLW1vZGUgLnl0cC10aXRsZS1jaGFubmVse3BhZGRpbmctcmlnaHQ6OHB4fS55dHAtZ3JhZGllbnQtYm90dG9tLC55dHAtZ3JhZGllbnQtdG9we3dpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFBRUFBQURHQ0FZQUFBQVQrT3FGQUFBQWRrbEVRVlFvejQyUVFRN0FJQWdFRi9UL0Qra2JxL1JXQWxuUXl5YXpBNGFvQUI0RnNCU0EvYkZqdUYxRU9MN1ZicklyQnV1c21ydDRaWk9SZmI2ZWhiV2RuUkhFSWlJVGFFVUthNUVKcVVha1JTYUVZQkpTQ1kyZEVzdFFZN0F1eGFod1hGcnZabVdsMnJoNEpaMDd6OWRMdGVzZk5qNXEwRlUzQTVPYmJ3QUFBQUJKUlU1RXJrSmdnZz09KTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtwb2ludGVyLWV2ZW50czpub25lfS55dHAtZGVsaGktbW9kZXJuIC55dHAtZ3JhZGllbnQtdG9wLC55dHAtZGVsaGktbW9kZXJuOm5vdCgueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nKTpub3QoLnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlKSAueXRwLWdyYWRpZW50LWJvdHRvbXtkaXNwbGF5Om5vbmV9Lnl0cC1iaWctbW9kZSAueXRwLWdyYWRpZW50LWJvdHRvbSwueXRwLWJpZy1tb2RlIC55dHAtZ3JhZGllbnQtdG9we2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQUVBQUFFbUNBWUFBQUNqeS9xekFBQUFoa2xFUVZRNHk1MlJVUTZBTUF4Q0tkNy9KSjdSNmFlSkFkcjUwN1RqUVpxT0FFNENXQVJ3eDdKRTk0NHJjaC9rNnFPV1M3YnE1Ymg3MnpHRjgrTFRhNmdvSmVSUGdYRFlOeFdGZmtTMFFYQ0luTElOMUd4VFhBMGR0UzBvdFdKbnVYSlIxWTlXWVA5R0YxVUNZUlFZSFJTbFhNQVJiVk80dGgzc2Q3WTNPUDVkWTNCbitTa1BzR0oxK0hHR1Z0Y0FBQUFBU1VWT1JLNUNZSUk9KX0ueXRwLWF1dG9oaWRlIC55dHAtZ3JhZGllbnQtdG9wLC55dHAtYXV0b2hpZGU6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpOm5vdCgueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUpIC55dHAtZ3JhZGllbnQtYm90dG9tLC55dHAtZ3JhZGllbnQtYm90dG9tW2FyaWEtaGlkZGVuPXRydWVdLC55dHAtZ3JhZGllbnQtdG9wW2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hdXRvaGlkZS1hY3RpdmUpIC55dHAtZ3JhZGllbnQtdG9wLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKTpub3QoLnl0cC1ncmlkLXNjcm9sbGluZyk6bm90KC55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZSkgLnl0cC1ncmFkaWVudC1ib3R0b217ZGlzcGxheTpub25lfS55dHAtZ3JhZGllbnQtdG9we2hlaWdodDo0OHB4O3BhZGRpbmctYm90dG9tOjUwcHg7dG9wOjA7ei1pbmRleDoyNTtiYWNrZ3JvdW5kLXBvc2l0aW9uOnRvcH0ueXRwLWVtYmVkLXBmbC55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLWdyYWRpZW50LXRvcHtoZWlnaHQ6NzBweDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLC43NSksdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsbGVmdCB0b3AsbGVmdCBib3R0b20sY29sb3Itc3RvcCgwLHJnYmEoMCwwLDAsLjc1KSksdG8odHJhbnNwYXJlbnQpKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgwLDAsMCwuNzUpIDAsdHJhbnNwYXJlbnQpO3BhZGRpbmctYm90dG9tOjB9Lnl0cC1zaG9ydHMtbW9kZS55dHAtYmlnLW1vZGUueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC1ncmFkaWVudC10b3AsLnl0cC1zaG9ydHMtbW9kZS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLWdyYWRpZW50LXRvcHtoZWlnaHQ6NTAlOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmF1dG8gMjAwJTtiYWNrZ3JvdW5kLXNpemU6YXV0byAyMDAlfS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLWdyYWRpZW50LXRvcHtoZWlnaHQ6NDlweH0ueXRwLWJpZy1tb2RlIC55dHAtZ3JhZGllbnQtdG9we2hlaWdodDo2OXB4O3BhZGRpbmctYm90dG9tOjc3cHh9Lnl0cC1iaWctbW9kZS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLWdyYWRpZW50LXRvcHtoZWlnaHQ6ODlweDtwYWRkaW5nLWJvdHRvbTo1N3B4fS55dHAtZ3JhZGllbnQtYm90dG9te2hlaWdodDo2MXB4O3BhZGRpbmctdG9wOjM3cHg7Ym90dG9tOjA7ei1pbmRleDoyNDtiYWNrZ3JvdW5kLXBvc2l0aW9uOmJvdHRvbX0ueXRwLXNtYWxsLW1vZGUgLnl0cC1ncmFkaWVudC1ib3R0b217aGVpZ2h0OjQ5cHg7cGFkZGluZy10b3A6NDlweH0ueXRwLWVtYmVkIC55dHAtZ3JhZGllbnQtYm90dG9te2hlaWdodDo1M3B4O3BhZGRpbmctdG9wOjQ1cHh9Lnl0cC1iaWctbW9kZSAueXRwLWdyYWRpZW50LWJvdHRvbXtoZWlnaHQ6NzBweDtwYWRkaW5nLXRvcDo3NnB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlIC55dHAtZ3JhZGllbnQtYm90dG9tLC55dHAtZGVsaGktbW9kZXJuOm5vdCgueXRwLWRpc2FibGUtYm90dG9tLWdyYWRpZW50KSAueXRwLWdyYWRpZW50LWJvdHRvbXstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1kaXNhYmxlLWJvdHRvbS1ncmFkaWVudC55dHAtZ3JpZC1zY3JvbGxpbmcgLnl0cC1ncmFkaWVudC1ib3R0b20sLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nOm5vdCgueXRwLWRpc2FibGUtYm90dG9tLWdyYWRpZW50KSAueXRwLWdyYWRpZW50LWJvdHRvbXtiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGZyb20ocmdiYSgwLDAsMCwwKSksY29sb3Itc3RvcChyZ2JhKDAsMCwwLDApKSx0byhyZ2JhKDAsMCwwLC44NSkpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApIDAscmdiYSgwLDAsMCwwKSBjYWxjKDcwJSAtIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSAtIHZhcigtLXl0cC1ncmlkLXNjcm9sbC1wZXJjZW50YWdlKSoxMDAlKSxyZ2JhKDAsMCwwLC44NSkgMTAwJSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHJnYmEoMCwwLDAsMCkgMCxyZ2JhKDAsMCwwLDApIGNhbGMoNzAlIC0gdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpIC0gdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpLHJnYmEoMCwwLDAsLjg1KSAxMDAlKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZSAueXRwLWdyYWRpZW50LWJvdHRvbXtiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGZyb20ocmdiYSgwLDAsMCwwKSksY29sb3Itc3RvcChyZ2JhKDAsMCwwLDApKSx0byhyZ2JhKDAsMCwwLC44NSkpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApIDAscmdiYSgwLDAsMCwwKSBjYWxjKDIwJSArIHZhcigtLXl0cC1ncmlkLXNjcm9sbC1wZXJjZW50YWdlKSoxMDAlIC0gdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKSxyZ2JhKDAsMCwwLC44NSkgMTAwJSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHJnYmEoMCwwLDAsMCkgMCxyZ2JhKDAsMCwwLDApIGNhbGMoMjAlICsgdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUgLSB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkpLHJnYmEoMCwwLDAsLjg1KSAxMDAlKX0ueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1jaHJvbWUtdG9we2hlaWdodDowfS55dHAtaGlkZS1pbmZvLWJhciAueXRwLWNocm9tZS10b3AgLnl0cC1vdmVyZmxvdy1idXR0b24sLnl0cC1oaWRlLWluZm8tYmFyIC55dHAtY2hyb21lLXRvcCAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLC55dHAtaGlkZS1pbmZvLWJhciAueXRwLWNocm9tZS10b3AgLnl0cC1zaGFyZS1idXR0b24sLnl0cC1oaWRlLWluZm8tYmFyIC55dHAtY2hyb21lLXRvcCAueXRwLXNob3J0cy10aXRsZS1jaGFubmVsLC55dHAtaGlkZS1pbmZvLWJhciAueXRwLWNocm9tZS10b3AgLnl0cC10aXRsZSwueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1jaHJvbWUtdG9wIC55dHAtdGl0bGUtY2hhbm5lbCwueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1jaHJvbWUtdG9wIC55dHAtd2F0Y2gtbGF0ZXItYnV0dG9uLC55dHAtaGlkZS1pbmZvLWJhciAueXRwLWdyYWRpZW50LXRvcCwueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1vdmVybGF5LXRvcC1yaWdodCAueXRwLW92ZXJmbG93LWJ1dHRvbiwueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1vdmVybGF5LXRvcC1yaWdodCAueXRwLXNoYXJlLWJ1dHRvbiwueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1vdmVybGF5LXRvcC1yaWdodCAueXRwLXdhdGNoLWxhdGVyLWJ1dHRvbntkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUueXRwLWZ1bGwtYmxlZWQtcGxheWVyOm5vdCgueXRwLWdyaWQtc2Nyb2xsYWJsZSkgLnl0cC1ncmFkaWVudC1ib3R0b20sLnl0cC1kaXNhYmxlLWJvdHRvbS1ncmFkaWVudC55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtZnVsbC1ibGVlZC1wbGF5ZXIgLnl0cC1ncmFkaWVudC1ib3R0b217ZGlzcGxheTpub25lfS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsLWJsZWVkLXBsYXllci55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZTpub3QoLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlKSAueXRwLWNocm9tZS1ib3R0b217Ym90dG9tOmNhbGMoNzAlIC0gdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpO29wYWNpdHk6dmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtZnVsbC1ibGVlZC1wbGF5ZXIueXRwLWRlbGhpLW1vZGVybi55dHAtYXV0b2hpZGUueXRwLWdyaWQtc2Nyb2xsaW5nIC55dHAtY2hyb21lLWJvdHRvbSwueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1mdWxsLWJsZWVkLXBsYXllci55dHAtZGVsaGktbW9kZXJuOm5vdCgueXRwLWF1dG9oaWRlKSAueXRwLWNocm9tZS1ib3R0b217b3BhY2l0eTpjYWxjKDEgLSB2YXIoLS15dHAtZ3JpZC1zY3JvbGwtcGVyY2VudGFnZSkqMyl9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtZnVsbC1ibGVlZC1wbGF5ZXIueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1ib3R0b217Ym90dG9tOmNhbGModmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpICsgdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpfS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWZ1bGwtYmxlZWQtcGxheWVyLnl0cC1ncmlkLXNjcm9sbGluZyAueXRwLWNocm9tZS1ib3R0b217cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZTpub3QoLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlKTpub3QoLnl0cC1ncmlkLXNjcm9sbGluZykgLnl0cC1jaHJvbWUtYm90dG9te2Rpc3BsYXk6bm9uZX0ueXRwLWhpZGUtY29udHJvbHMgLnl0cC1jaHJvbWUtYm90dG9tLC55dHAtaGlkZS1jb250cm9scyAueXRwLWdyYWRpZW50LWJvdHRvbXtkaXNwbGF5Om5vbmV9QG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSl7Lnl0cC1ncmFkaWVudC1ib3R0b20sLnl0cC1ncmFkaWVudC10b3B7YmFja2dyb3VuZDojMDAwO3BhZGRpbmctYm90dG9tOjA7cGFkZGluZy10b3A6MH19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1wYXJ0eS1iYWNrZ3JvdW5kLWNvbG9yezAle2JhY2tncm91bmQtY29sb3I6I2YwMH0yMCV7YmFja2dyb3VuZC1jb2xvcjojMGYwfTQwJXtiYWNrZ3JvdW5kLWNvbG9yOiMwMGZ9NjAle2JhY2tncm91bmQtY29sb3I6I2YwZn04MCV7YmFja2dyb3VuZC1jb2xvcjojZmYwfXRve2JhY2tncm91bmQtY29sb3I6IzBmZn19QGtleWZyYW1lcyB5dHAtcGFydHktYmFja2dyb3VuZC1jb2xvcnswJXtiYWNrZ3JvdW5kLWNvbG9yOiNmMDB9MjAle2JhY2tncm91bmQtY29sb3I6IzBmMH00MCV7YmFja2dyb3VuZC1jb2xvcjojMDBmfTYwJXtiYWNrZ3JvdW5kLWNvbG9yOiNmMGZ9ODAle2JhY2tncm91bmQtY29sb3I6I2ZmMH10b3tiYWNrZ3JvdW5kLWNvbG9yOiMwZmZ9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtcGFydHktY29sb3J7MCV7Y29sb3I6I2YwMH0yMCV7Y29sb3I6IzBmMH00MCV7Y29sb3I6IzAwZn02MCV7Y29sb3I6I2YwZn04MCV7Y29sb3I6I2ZmMH10b3tjb2xvcjojMGZmfX1Aa2V5ZnJhbWVzIHl0cC1wYXJ0eS1jb2xvcnswJXtjb2xvcjojZjAwfTIwJXtjb2xvcjojMGYwfTQwJXtjb2xvcjojMDBmfTYwJXtjb2xvcjojZjBmfTgwJXtjb2xvcjojZmYwfXRve2NvbG9yOiMwZmZ9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtcGFydHktZmlsbHswJXtmaWxsOiNmMDB9MjAle2ZpbGw6IzBmMH00MCV7ZmlsbDojMDBmfTYwJXtmaWxsOiNmMGZ9ODAle2ZpbGw6I2ZmMH10b3tmaWxsOiMwZmZ9fUBrZXlmcmFtZXMgeXRwLXBhcnR5LWZpbGx7MCV7ZmlsbDojZjAwfTIwJXtmaWxsOiMwZjB9NDAle2ZpbGw6IzAwZn02MCV7ZmlsbDojZjBmfTgwJXtmaWxsOiNmZjB9dG97ZmlsbDojMGZmfX0ueXRwLW1lbnUtc2hvd24gLnZpZGVvLWFkc3tkaXNwbGF5Om5vbmV9Lnl0cC1hZC1kaXNwbGF5LW92ZXJyaWRlIC52aWRlby1hZHN7ZGlzcGxheTppbmhlcml0fS55dHAtc3dhdGNoLWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLXN0YXRpYy1icmFuZC1yZWQsI2YwMyl9Lnl0cC1kbmkgLnl0cC1zd2F0Y2gtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lnl0cC1jb2xvci13aGl0ZSAueXRwLXN3YXRjaC1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6I2RkZH0ueXRwLWNvbG9yLXdoaXRlIC55dHAtc3dhdGNoLWJhY2tncm91bmQtY29sb3Itc2Vjb25kYXJ5e2JhY2tncm91bmQtY29sb3I6I2FhYX0ueXRwLWNvbG9yLXBhcnR5IC55dHAtcGxheS1wcm9ncmVzcy55dHAtc3dhdGNoLWJhY2tncm91bmQtY29sb3IsLnl0cC1jb2xvci1wYXJ0eSAueXRwLXN3YXRjaC1iYWNrZ3JvdW5kLWNvbG9yLC55dHAtY29sb3ItcGFydHkgLnl0cC1zd2F0Y2gtYmFja2dyb3VuZC1jb2xvci1zZWNvbmRhcnl7LXdlYmtpdC1hbmltYXRpb246eXRwLXBhcnR5LWJhY2tncm91bmQtY29sb3IgLjFzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246eXRwLXBhcnR5LWJhY2tncm91bmQtY29sb3IgLjFzIGxpbmVhciBpbmZpbml0ZTtiYWNrZ3JvdW5kOm5vbmV9Lnl0cC1zd2F0Y2gtY29sb3J7Y29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1zdGF0aWMtYnJhbmQtcmVkLCNmMDMpfS55dHAtc3dhdGNoLWNvbG9yLXdoaXRle2NvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10ZXh0LXNlY29uZGFyeSl9Lnl0cC1wcmVtaXVtLWxhYmVse2ZvbnQtc2l6ZTo4My4zMzMzJTtjb2xvcjojY2NjfS55dHAtZG5pIC55dHAtc3dhdGNoLWNvbG9ye2NvbG9yOiNmZmZ9Lnl0cC1jb2xvci13aGl0ZSAueXRwLXN3YXRjaC1jb2xvcntjb2xvcjojZGRkfS55dHAtY29sb3ItcGFydHkgLnl0cC1zd2F0Y2gtY29sb3J7LXdlYmtpdC1hbmltYXRpb246eXRwLXBhcnR5LWNvbG9yIC4xNXMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbjp5dHAtcGFydHktY29sb3IgLjE1cyBsaW5lYXIgaW5maW5pdGV9QG1lZGlhIHByaW50ey5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtbXdlYi1wbGF5ZXIpICp7dmlzaWJpbGl0eTpoaWRkZW59Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1td2ViLXBsYXllcil7Ym9yZGVyOjFweCBzb2xpZCAjMDAwOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH06bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtY2hyb21lLXRvcCw6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheSw6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtbGFyZ2UtcGxheS1idXR0b257b3BhY2l0eToxIWltcG9ydGFudDtkaXNwbGF5OmJsb2NrIWltcG9ydGFudDt2aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50fTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbiAqLDpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC10aXRsZSw6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtdGl0bGUgKntjb2xvcjojMDAwIWltcG9ydGFudDt2aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50fX0ueXRwLXBsYXllci1pbi1iYXItZGlzYWJsZS11aT46bm90KC5odG1sNS12aWRlby1jb250YWluZXIpe2Rpc3BsYXk6bm9uZTtwb2ludGVyLWV2ZW50czpub25lfS55dHAtY29tcG9zaXRlLXZpZGVvLW92ZXJsYXktcmVuZGVyZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OjA7dG9wOjA7Ym90dG9tOjA7ei1pbmRleDoxMH0ueXRwLWFkLW1vZHVsZXt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dHAtcGxheWVyLW1pbmltaXplZC55dHAtbWluaXBsYXllci1hbHRlcm5hdGUtdWkgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXR7aGVpZ2h0OmNhbGMoMTAwJSAtIDEycHgpO3RvcDowfS52aWRlby1hZC1zdGF0dXMtYmFye3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo2MXB4O3otaW5kZXg6ODUwO3dpZHRoOjEwMCU7YmFja2dyb3VuZC1jb2xvcjojMDAwO29wYWNpdHk6Ljc7ZGlzcGxheTpub25lfS55dHAtZW1iZWQgLnZpZGVvLWFkLXN0YXR1cy1iYXJ7Ym90dG9tOjUzcHh9Lnl0cC1iaWctbW9kZSAudmlkZW8tYWQtc3RhdHVzLWJhcntib3R0b206NzBweH0ueXRwLWhpZGUtY29udHJvbHMgLnZpZGVvLWFkLXN0YXR1cy1iYXJ7Ym90dG9tOjB9LmFkLXNob3dpbmcgLnZpZGVvLWFkLXN0YXR1cy1iYXJ7ZGlzcGxheTpibG9ja30uYWQtc2hvd2luZy55dHAtYXV0b2hpZGUgLnZpZGVvLWFkLXN0YXR1cy1iYXIsLmFkLXNob3dpbmcueXRwLWhpZGUtY29udHJvbHMgLnZpZGVvLWFkLXN0YXR1cy1iYXJ7Ym90dG9tOjB9LnZpZGVvLWFkLWxhYmVse2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbTo1cHh9LmFkLXNob3dpbmcgLmFkLXZpZGVve3Bvc2l0aW9uOmFic29sdXRlfS5hZC1zaG93aW5nIC5hZC12aWRlb3t0b3A6MH0uaHRtbDUtdmlkZW8tcGxheWVyIC52aWRlby1jbGljay10cmFja2luZywuaHRtbDUtdmlkZW8tcGxheWVyIC52aWRlby1zdHJlYW17ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlfS5odG1sNS12aWRlby1wbGF5ZXIgLmFkLWNvbnRhaW5lci1zaW5nbGUtbWVkaWEtZWxlbWVudC1hbm5vdGF0aW9uc3twb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4Ojg1MH0uaHRtbDUtdmlkZW8tcGxheWVyIC5hZC1jb250YWluZXItc2luZ2xlLW1lZGlhLWVsZW1lbnQtYW5ub3RhdGlvbnMtd29ya2Fyb3VuZHt6LWluZGV4Ojg1MH0uaHRtbDUtdmlkZW8tcGxheWVyIC5hZC1vdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo2MXB4O3dpZHRoOjEwMCU7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZW1iZWQuaHRtbDUtdmlkZW8tcGxheWVyIC5hZC1vdmVybGF5e2JvdHRvbTo1M3B4fS55dHAtYWQtb3ZlcmxheS1jbG9zZWQgLmFkLW92ZXJsYXksLnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1hZC1vdmVybGF5LWNsb3NlZCAuYWQtb3ZlcmxheXtkaXNwbGF5Om5vbmV9Lnl0cC1iaWctbW9kZSAuYWQtb3ZlcmxheXtib3R0b206NzBweH0ueXRwLWF1dG9oaWRlLnl0cC1hZC1vdmVybGF5LWNsb3NlZCAuYWQtb3ZlcmxheXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lmh0bWw1LXZpZGVvLXBsYXllciAuYWQtb3ZlcmxheSAudmlkZW8tY2xpY2stdHJhY2tpbmd7ZGlzcGxheTpub25lfS5odG1sNS12aWRlby1wbGF5ZXIgLmFkLW92ZXJsYXk+Om5vdCguaW1hLWNvbnRhaW5lcil7ei1pbmRleDo4NzB9Lmh0bWw1LXZpZGVvLXBsYXllciAuYWQtb3ZlcmxheT4uaW1hLWNvbnRhaW5lcnt6LWluZGV4OmF1dG8haW1wb3J0YW50fS5odG1sNS12aWRlby1wbGF5ZXIgLmFkLW92ZXJsYXk+LmltYS1jb250YWluZXI+Knt6LWluZGV4Ojg3MCFpbXBvcnRhbnQ7cG9zaXRpb246cmVsYXRpdmV9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpIC5hZC1jb250YWluZXIsLmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCgueXRwLWFkLW92ZXJsYXktb3BlbikgLnZpZGVvLWFkc3tkaXNwbGF5Om5vbmV9Lml2LWVuZGNhcC1iYWNrZ3JvdW5ke3otaW5kZXg6ODIxfS5odG1sNS12aWRlby1wbGF5ZXIgLmF0dHJpYnV0aW9uLWJ1dHRvbnt0ZXh0LXNoYWRvdzpyZ2IoMCwwLDApIDAgMCA4cHgscmdiYSgwLDAsMCwuOSkgMCAwIDRweH0ueXRwLWFkLWJ1dHRvbi1pY29uLC55dHAtYWQtYnV0dG9uLXRleHQsLnl0cC1hZC1za2lwLWJ1dHRvbi1pY29uLC55dHAtYWQtc2tpcC1idXR0b24tdGV4dHtkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWFkLXNraXAtYnV0dG9uLXRleHQtY2VudGVyZWR7dmVydGljYWwtYWxpZ246bWlkZGxlfS55dHAtYWQtcGxheWVyLW92ZXJsYXktdXBkYXRlZC1mb2N1cy1zdHlsZS55dHAtYWQtcGxheWVyLW92ZXJsYXkgLnl0cC1hZC1idXR0b24sLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS11cGRhdGVkLWZvY3VzLXN0eWxlLnl0cC1hZC1wbGF5ZXItb3ZlcmxheSBidXR0b257b3V0bGluZTowfS55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS11cGRhdGVkLWZvY3VzLXN0eWxlLnl0cC1hZC1wbGF5ZXItb3ZlcmxheSAueXRwLWFkLWJ1dHRvbjpmb2N1cywueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtYWQtcGxheWVyLW92ZXJsYXktdXBkYXRlZC1mb2N1cy1zdHlsZS55dHAtYWQtcGxheWVyLW92ZXJsYXkgYnV0dG9uOmZvY3Vzey13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjgpfS55dHAtYWQtYnV0dG9uLWljb257aGVpZ2h0OmluaGVyaXQ7d2lkdGg6aW5oZXJpdDtwb2ludGVyLWV2ZW50czphdXRvfS55dHAtYWQtYnV0dG9uLWxpbmt7cGFkZGluZzowO2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc2l6ZTppbmhlcml0O3RleHQtZGVjb3JhdGlvbjpub25lOy13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZX0ueXRwLWFkLWJ1dHRvbi1saW5rOmFjdGl2ZSwueXRwLWFkLWJ1dHRvbi1saW5rOmhvdmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmV9Lnl0cC1iaWctbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW5zdHJlYW0taW5mbywueXRwLWJpZy1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mbywueXRwLWJpZy1tb2RlIC55dHAtYWQtc3VydmV5LXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm97bGVmdDoyNHB4O2JvdHRvbTo3MHB4fS55dHAtYXV0b2hpZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWluc3RyZWFtLWluZm8sLnl0cC1hdXRvaGlkZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm8sLnl0cC1hdXRvaGlkZSAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtZW1iZWQueXRwLWF1dG9oaWRlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1pbnN0cmVhbS1pbmZvLC55dHAtZW1iZWQueXRwLWF1dG9oaWRlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mbywueXRwLWVtYmVkLnl0cC1hdXRvaGlkZSAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtZW1iZWQueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWluc3RyZWFtLWluZm8sLnl0cC1lbWJlZC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm8sLnl0cC1lbWJlZC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtZW1iZWQueXRwLWl2LWRyYXdlci1vcGVuIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1pbnN0cmVhbS1pbmZvLC55dHAtZW1iZWQueXRwLWl2LWRyYXdlci1vcGVuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mbywueXRwLWVtYmVkLnl0cC1pdi1kcmF3ZXItb3BlbiAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW5zdHJlYW0taW5mbywueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZvLC55dHAtaXYtZHJhd2VyLW9wZW4gLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWluc3RyZWFtLWluZm8sLnl0cC1pdi1kcmF3ZXItb3BlbiAueXRwLWFkLXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm8sLnl0cC1pdi1kcmF3ZXItb3BlbiAueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS1pbmZve2JvdHRvbTo2cHg7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW5zdHJlYW0taW5mbywueXRwLWFkLXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm8sLnl0cC1hZC1zdXJ2ZXktcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mb3tib3R0b206NjFweDtjdXJzb3I6ZGVmYXVsdDtsZWZ0OjE4cHg7cG9pbnRlci1ldmVudHM6YXV0bztwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjc1KTt6LWluZGV4Ojg1MDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1lbWJlZCAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW5zdHJlYW0taW5mbywueXRwLWVtYmVkIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mbywueXRwLWVtYmVkIC55dHAtYWQtc3VydmV5LXBsYXllci1vdmVybGF5LWluc3RyZWFtLWluZm97Ym90dG9tOjUzcHh9Lnl0cC1hZC1jbGlja2FibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1hZC1kaXNjbG9zdXJlLWJhbm5lcntib3JkZXItcmFkaXVzOjA7Ym90dG9tOmF1dG87Y3Vyc29yOnBvaW50ZXI7aGVpZ2h0OmF1dG87bGVmdDoxMnB4O3BvaW50ZXItZXZlbnRzOmF1dG87cG9zaXRpb246YWJzb2x1dGU7dG9wOjI0cHg7ei1pbmRleDo4NTB9Lnl0cC1iaWctbW9kZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWFkLWRpc2Nsb3N1cmUtYmFubmVye2xlZnQ6MjRweH0ueXRwLWFkLXBsYXllci1vdmVybGF5LWZseW91dC1jdGF7Ym90dG9tOjg2cHg7bGVmdDoxMnB4O3BvaW50ZXItZXZlbnRzOmF1dG87cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDo4NTB9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1mbHlvdXQtY3RhLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czo4cHg7b3ZlcmZsb3c6aGlkZGVufS55dHAtZW1iZWQgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1mbHlvdXQtY3Rhe2JvdHRvbTo3OHB4fS55dHAtZmx5b3V0LWN0YXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO3RleHQtYWxpZ246bGVmdDtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1mbHlvdXQtY3RhLWxhcmdle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7cGFkZGluZzo4cHg7bWluLXdpZHRoOjIwMHB4fS55dHAtZmx5b3V0LWN0YTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS55dHAtZmx5b3V0LWN0YS1sYXJnZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpfS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYm9keXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjkpO2JvcmRlci1yYWRpdXM6MnB4O21heC13aWR0aDo0MDBweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowO3dpZHRoOjEwMCU7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC10cmFuc2l0aW9uOndpZHRoIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIC41cyxtYXgtd2lkdGggLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAuNXMsbWF4LXdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYm9keS1sYXJnZXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LXRyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uOm5vbmV9Lnl0cC1mbHlvdXQtY3RhOmhvdmVyIC55dHAtZmx5b3V0LWN0YS1ib2R5e2JhY2tncm91bmQtY29sb3I6cmdiKDI1NSwyNTUsMjU1KX0ueXRwLWZseW91dC1jdGE6aG92ZXIgLnl0cC1mbHlvdXQtY3RhLWJvZHktbGFyZ2V7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLXRleHQtY29udGFpbmVye21heC13aWR0aDoyNTBweDtwYWRkaW5nLWxlZnQ6NThweDtwYWRkaW5nLXJpZ2h0OjIwcHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtdGV4dC1jb250YWluZXItbGFyZ2V7cGFkZGluZy1yaWdodDoxMHB4fS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaGVhZGxpbmUtY29udGFpbmVye2NvbG9yOiMzMzM7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToxNHB4O21hcmdpbi10b3A6MTBweH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWhlYWRsaW5lLWNvbnRhaW5lci1kYXJrLWJhY2tncm91bmR7Y29sb3I6I2RkZH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWRlc2NyaXB0aW9uLWNvbnRhaW5lcntjb2xvcjojNzY3Njc2O2ZvbnQtc2l6ZToxM3B4O21hcmdpbi10b3A6M3B4O21hcmdpbi1ib3R0b206MTBweH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWRlc2NyaXB0aW9uLWNvbnRhaW5lci1kYXJrLWJhY2tncm91bmR7Y29sb3I6I2RkZH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWRlc2NyaXB0aW9ue292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWhlYWRsaW5le2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6Mn0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWFjdGlvbi1idXR0b24tY29udGFpbmVye2RpcmVjdGlvbjpsdHI7bGluZS1oZWlnaHQ6NTZweDttYXgtd2lkdGg6MTUwcHg7cG9zaXRpb246c3RhdGljOy13ZWJraXQtYWxpZ24tc2VsZjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1hY3Rpb24tYnV0dG9uLWNvbnRhaW5lci1sYXJnZXtsaW5lLWhlaWdodDppbmhlcml0O21hcmdpbjo4cHg7bWluLXdpZHRoOjEwMCV9Lnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1hY3Rpb24tYnV0dG9ue2JhY2tncm91bmQ6IzE2N2FjNjtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjojMTY3YWM2O2JvcmRlci1yYWRpdXM6MnB4Oy13ZWJraXQtYm94LXNoYWRvdzowIDFweCAwIHJnYmEoMCwwLDAsLjA1KTtib3gtc2hhZG93OjAgMXB4IDAgcmdiYSgwLDAsMCwuMDUpO2NvbG9yOiNmZmY7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NTAwO2hlaWdodDoyOHB4O21hcmdpbjowIDhweCAwIDA7bWF4LXdpZHRoOjE0MHB4O292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjAgMTBweDt0ZXh0LWRlY29yYXRpb246bm9uZTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6aW5oZXJpdH0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWFjdGlvbi1idXR0b24tbGFyZ2V7bWluLXdpZHRoOjEwMCU7Y29sb3I6IzBmMGYwZn0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWFjdGlvbi1idXR0b246aG92ZXJ7YmFja2dyb3VuZDojMTI2ZGIzfS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYWN0aW9uLWJ1dHRvbjphY3RpdmV7YmFja2dyb3VuZDojMDk1Yjk5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAwIHJnYmEoMCwwLDAsLjUpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDAsMCwwLC41KX0ueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWFjdGlvbi1idXR0b24ueXRwLWZseW91dC1jdGEtYWN0aW9uLWJ1dHRvbi1yb3VuZGVke2hlaWdodDozMnB4O2JvcmRlci1yYWRpdXM6MTZweDtwYWRkaW5nOjAgMTJweDtib3JkZXI6bm9uZTstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmU7Zm9udC1zaXplOjE0cHg7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7YmFja2dyb3VuZDojMDY1ZmQ0fS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYWN0aW9uLWJ1dHRvbi55dHAtZmx5b3V0LWN0YS1hY3Rpb24tYnV0dG9uLXJvdW5kZWQtbGFyZ2V7YmFja2dyb3VuZC1jb2xvcjojM2VhNmZmfS55dHAtZmx5b3V0LWN0YSwueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWJvZHksLnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1ib2R5PmRpdntkaXJlY3Rpb246bHRyO2hlaWdodDphdXRvfS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaWNvbi1jb250YWluZXJ7aGVpZ2h0OjEwMCU7bGVmdDo0cHg7b3ZlcmZsb3c6dmlzaWJsZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDo0OHB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTstbXMtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaWNvbi1jb250YWluZXItbGFyZ2V7bGVmdDo4cHg7dG9wOi0yNnB4fS55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaWNvbi55dHAtZmx5b3V0LWN0YS1pY29uLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1pY29ue2hlaWdodDo0OHB4O3dpZHRoOjQ4cHh9Lnl0cC1mbHlvdXQtY3RhLnl0cC1mbHlvdXQtY3RhLWluYWN0aXZley13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAlKX0ueXRwLWZseW91dC1jdGEueXRwLWZseW91dC1jdGEtaW5hY3RpdmUgLnl0cC1mbHlvdXQtY3RhLWljb24tY29udGFpbmVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwMCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwMCUpfS55dHAtZmx5b3V0LWN0YS55dHAtZmx5b3V0LWN0YS1pbmFjdGl2ZSAueXRwLWZseW91dC1jdGEtYm9keXttYXgtd2lkdGg6MDt3aWR0aDowfS55dHAtYmlnLW1vZGUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1mbHlvdXQtY3Rhe2JvdHRvbTo5NXB4fS55dHAtc21hbGwtbW9kZSAueXRwLWZseW91dC1jdGEsLnl0cC1zbWFsbC1tb2RlIC55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYm9keSwueXRwLXNtYWxsLW1vZGUgLnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1ib2R5PmRpdntoZWlnaHQ6YXV0bzttaW4taGVpZ2h0OjQwcHg7bWF4LXdpZHRoOjE5MHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWljb24tY29udGFpbmVye2hlaWdodDoxMDAlO3dpZHRoOjQwcHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaWNvbntoZWlnaHQ6NDBweDt3aWR0aDo0MHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLXRleHQtY29udGFpbmVye21hcmdpbi1sZWZ0OjZweDtwYWRkaW5nOjRweCAyMHB4IDRweCA0MHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWZseW91dC1jdGEgLnl0cC1mbHlvdXQtY3RhLWhlYWRsaW5lLWNvbnRhaW5lcntmb250LXNpemU6MTJweDttYXJnaW4tdG9wOjJweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1kZXNjcmlwdGlvbi1jb250YWluZXJ7Zm9udC1zaXplOjExcHg7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1mbHlvdXQtY3RhIC55dHAtZmx5b3V0LWN0YS1pY29uLWNvbnRhaW5lcntsZWZ0OjA7dG9wOjB9Lnl0cC1zbWFsbC1tb2RlIC55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtaWNvbi1jb250YWluZXItbGFyZ2V7bGVmdDo0cHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtZmx5b3V0LWN0YSAueXRwLWZseW91dC1jdGEtYWN0aW9uLWJ1dHRvbi1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtYWQtZHVyYXRpb24tcmVtYWluaW5nLC55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWJ1dHRvbiwueXRwLWFkLWluZm8taWNvbi1idXR0b24sLnl0cC1hZC1zaW1wbGUtYWQtYmFkZ2UsLnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbntjb2xvcjojZmZmO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxMnB4O2xlZnQ6MDtsaW5lLWhlaWdodDoyOHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dHAtYWQtc2ltcGxlLWFkLWJhZGdle21hcmdpbi1sZWZ0OjVweDtvcGFjaXR5Oi43NX0ueXRwLWFkLXNpbXBsZS1hZC1iYWRnZS0tY2xlYW4tcGxheWVye21hcmdpbi1sZWZ0OjA7b3BhY2l0eToxO2NvbG9yOiNmZmY7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpO2xlZnQ6MDtsaW5lLWhlaWdodDoyOHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dHAtYWQtc2ltcGxlLWFkLWJhZGdlLS1zdXJ2ZXl7Zm9udC13ZWlnaHQ6NTAwfS55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAueXRwLWFkLXNpbXBsZS1hZC1iYWRnZXttYXJnaW4tbGVmdDowfS55dHAtYWQtZHVyYXRpb24tcmVtYWluaW5ne21hcmdpbi1sZWZ0OjNweDtvcGFjaXR5Oi43NX0ueXRwLWFkLWR1cmF0aW9uLXJlbWFpbmluZy0tY2xlYW4tcGxheWVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtZmxleDtkaXNwbGF5OmlubGluZS1mbGV4O21hcmdpbi1sZWZ0OjA7b3BhY2l0eToxO2NvbG9yOiNmZmY7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjt0ZXh0LXNoYWRvdzowIDAgMTZweCByZ2JhKDAsMCwwLC41KTtsZWZ0OjA7bGluZS1oZWlnaHQ6MjhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkLWR1cmF0aW9uLXJlbWFpbmluZy0tY2xlYW4tcGxheWVyOmJlZm9yZXtjb250ZW50OiLigKIiO3BhZGRpbmctaW5saW5lOjRweH0ueXRwLWFkLWR1cmF0aW9uLXJlbWFpbmluZy0tbXdlYntmb250LXdlaWdodDo2MDA7bWFyZ2luLWxlZnQ6M3B4fS55dHAtYWQtZHVyYXRpb24tcmVtYWluaW5nLS1td2ViLWlvc3tsZXR0ZXItc3BhY2luZzotLjJweH0ueXRwLWFkLWluZm8taG92ZXItdGV4dC1idXR0b257ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjI4cHg7bGluZS1oZWlnaHQ6aW5oZXJpdDttYXJnaW46MCA1cHg7bWFyZ2luLXJpZ2h0OjA7cG9pbnRlci1ldmVudHM6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLWluZm8taG92ZXItdGV4dC1idXR0b24gLnl0cC1hZC1ob3Zlci10ZXh0LWNvbnRhaW5lcntiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O2JvdHRvbTozMHB4Oy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjojMzMzO2Rpc3BsYXk6bm9uZTtmb250LXNpemU6MTJweDtsZWZ0Oi0xOXB4O2xpbmUtaGVpZ2h0Om5vcm1hbDtvcGFjaXR5Oi45O3BhZGRpbmc6N3B4O3BvaW50ZXItZXZlbnRzOmF1dG87cG9zaXRpb246YWJzb2x1dGU7dGV4dC1zaGFkb3c6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfS55dHAtYWQtaW5mby1ob3Zlci10ZXh0LXNob3J0e3doaXRlLXNwYWNlOm5vd3JhcH0uaHRtbDUtdmlkZW8tcGxheWVyIC55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWhvdmVyLXRleHQtY29udGFpbmVyIGF7Y29sb3I6IzE2N2FjNn0uaHRtbDUtdmlkZW8tcGxheWVyIC55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWhvdmVyLXRleHQtY29udGFpbmVyIGE6aG92ZXJ7Y29sb3I6IzE2N2FjNjt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbjpob3ZlciAueXRwLWFkLWhvdmVyLXRleHQtY29udGFpbmVyLC55dHAtYWQtb3ZlcmxheS1hZC1pbmZvLWJ1dHRvbi1jb250YWluZXI6aG92ZXIgLnl0cC1hZC1ob3Zlci10ZXh0LWNvbnRhaW5lcntkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWFkLWhvdmVyLXRleHQtY2FsbG91dHtib3JkZXItbGVmdDo1cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJpZ2h0OjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItdG9wOjVweCBzb2xpZCAjZmZmOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MDtsZWZ0OjIwcHg7b3ZlcmZsb3c6dmlzaWJsZTtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt0b3A6MTAwJTt3aWR0aDowfS55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWJ1dHRvbiwueXRwLWFkLWluZm8taWNvbi1idXR0b257LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDJweCAjMDAwKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDJweCAjMDAwKTtoZWlnaHQ6aW5oZXJpdDtvcGFjaXR5Oi43NTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTt3aWR0aDoxM3B4fS55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWhvdmVyLXRleHQtYnV0dG9uLS1jbGVhbi1wbGF5ZXJ7b3BhY2l0eToxOy13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCA3cHggcmdiYSgwLDAsMCwuOSkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgN3B4IHJnYmEoMCwwLDAsLjkpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWFkLWluZm8taG92ZXItdGV4dC1idXR0b24gLnl0cC1hZC1idXR0b257LXdlYmtpdC1maWx0ZXI6dW5zZXQ7ZmlsdGVyOnVuc2V0fS55dHAtYWQtaW5mby1ob3Zlci10ZXh0LWJ1dHRvbiAueXRwLWFkLWJ1dHRvbjpob3ZlciwueXRwLWFkLWluZm8taWNvbi1idXR0b246aG92ZXJ7b3BhY2l0eToxfS55dHAtYWQtY29uZmlybS1kaWFsb2ctYmFja2dyb3VuZCwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1iYWNrZ3JvdW5kLC55dHAtYWQtaW5mby1kaWFsb2ctYmFja2dyb3VuZHtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjgpO2Rpc3BsYXk6dGFibGU7aGVpZ2h0OjEwMCU7bGVmdDowO21hcmdpbjphdXRvO3BvaW50ZXItZXZlbnRzOmF1dG87cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJTt6LWluZGV4OjIyMDF9Lnl0cC1hZHMtdGlueS1tb2RlIC55dHAtYWQtY29uZmlybS1kaWFsb2ctYmFja2dyb3VuZCwueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctYmFja2dyb3VuZCwueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1pbmZvLWRpYWxvZy1iYWNrZ3JvdW5ke2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3cteTpzY3JvbGw7b3ZlcmZsb3cteDpoaWRkZW59Lnl0cC1hZC1jb25maXJtLWRpYWxvZy1jbG9zZS1vdmVybGF5LWJ1dHRvbiwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1jbG9zZS1idXR0b24sLnl0cC1hZC1pbmZvLWRpYWxvZy1jbG9zZS1idXR0b257aGVpZ2h0OjI0cHg7b3BhY2l0eTouNzU7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MTRweDt0b3A6MTRweDt3aWR0aDoyNHB4fS55dHAtYWQtY29uZmlybS1kaWFsb2ctY2xvc2Utb3ZlcmxheS1idXR0b246aG92ZXIsLnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctY2xvc2UtYnV0dG9uOmhvdmVyLC55dHAtYWQtaW5mby1kaWFsb2ctY2xvc2UtYnV0dG9uOmhvdmVye29wYWNpdHk6MX0ueXRwLWFkLWNvbmZpcm0tZGlhbG9nLWNvbnRhaW5lciwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1jb250YWluZXIsLnl0cC1hZC1pbmZvLWRpYWxvZy1jb250YWluZXJ7ZGlzcGxheTp0YWJsZS1jZWxsO3RleHQtYWxpZ246Y2VudGVyO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLWNvbmZpcm0tZGlhbG9nLC55dHAtYWQtZmVlZGJhY2stZGlhbG9nLWZvcm0sLnl0cC1hZC1pbmZvLWRpYWxvZy1mb3Jte2JhY2tncm91bmQ6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCBibGFjaztjb2xvcjojNzY3Njc2O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3RleHQtc2hhZG93Om5vbmU7Zm9udC1zaXplOjE0cHg7bWluLXdpZHRoOjE4MHB4O21heC13aWR0aDo1MCU7cGFkZGluZzoxNHB4O3RleHQtYWxpZ246bGVmdH0ueXRwLWFkLWluZm8tZGlhbG9nLXJlbGF0aXZlLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjcyfS55dHAtYWQtaW5mby1kaWFsb2ctcmVsYXRpdmUtY29udGFpbmVyIC55dHAtYWQtaW5mby1kaWFsb2ctZm9ybXstd2Via2l0LWJveC1zaGFkb3c6MCAwIDE1cHggcmdiYSgwLDAsMCwuMTgpO2JveC1zaGFkb3c6MCAwIDE1cHggcmdiYSgwLDAsMCwuMTgpO2JvcmRlci1jb2xvcjojZTJlMmUyO21heC13aWR0aDpub25lfS55dHAtYWQtZmVlZGJhY2stZGlhbG9nLWZvcm0gYSwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1mb3JtIGE6aG92ZXIsLnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctdW5kby1tdXRlLWJ1dHRvbiwueXRwLWFkLWluZm8tZGlhbG9nLWZvcm0gYSwueXRwLWFkLWluZm8tZGlhbG9nLWZvcm0gYTpob3ZlciwueXRwLWFkLWluZm8tZGlhbG9nLW11dGUtYnV0dG9ue2NvbG9yOiMxNjdhYzY7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctdGl0bGUsLnl0cC1hZC1pbmZvLWRpYWxvZy10aXRsZXtjb2xvcjojMzMzO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nLWJvdHRvbTo4cHh9Lnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctdGl0bGUgYSwueXRwLWFkLWluZm8tZGlhbG9nLXRpdGxlIGF7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX11bC55dHAtYWQtaW5mby1kaWFsb2ctYWQtcmVhc29uc3twYWRkaW5nOjA7bWFyZ2luOjA7bWFyZ2luLWJvdHRvbTo4cHh9Lnl0cC1hZC1pbmZvLWRpYWxvZy1hZC1yZWFzb25zIGxpe2xpc3Qtc3R5bGU6ZGlzYztsaXN0LXN0eWxlLXBvc2l0aW9uOm91dHNpZGU7bWFyZ2luLWxlZnQ6MjBweH0ueXRwLWFkLWNvbmZpcm0tZGlhbG9nLW1lc3NhZ2VzLC55dHAtYWQtaW5mby1kaWFsb2ctZmVlZGJhY2stb3B0aW9uc3ttYXJnaW4tbGVmdDo4cHh9bGFiZWwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1yZWFzb24tbGFiZWx7ZGlzcGxheTpibG9jazttYXJnaW46OHB4IDB9Lnl0cC1hZC1jb25maXJtLWRpYWxvZy1jb25maXJtLWNvbnRhaW5lciwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1jb25maXJtLWNvbnRhaW5lciwueXRwLWFkLWluZm8tZGlhbG9nLWNvbmZpcm0tY29udGFpbmVye21hcmdpbi10b3A6OHB4O3RleHQtYWxpZ246cmlnaHR9Lnl0cC1hZC1jb25maXJtLWRpYWxvZy1jYW5jZWwtYnV0dG9uLC55dHAtYWQtY29uZmlybS1kaWFsb2ctY29uZmlybS1idXR0b24sLnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctY2FuY2VsLWJ1dHRvbiwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1jb25maXJtLWJ1dHRvbiwueXRwLWFkLWluZm8tZGlhbG9nLWNvbmZpcm0tYnV0dG9ue2JhY2tncm91bmQ6bm9uZTtib3JkZXI6bm9uZTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXdlaWdodDo1MDA7bWFyZ2luOjRweCAwIDAgMTJweDtwYWRkaW5nOjEwcHg7Y29sb3I6IzE2N2FjNjtjdXJzb3I6cG9pbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lnl0cC1hZC1jb25maXJtLWRpYWxvZy1jYW5jZWwtYnV0dG9uOmhvdmVyLC55dHAtYWQtY29uZmlybS1kaWFsb2ctY29uZmlybS1idXR0b246aG92ZXIsLnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctY2FuY2VsLWJ1dHRvbjpob3ZlciwueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy1jb25maXJtLWJ1dHRvbjpob3ZlciwueXRwLWFkLWluZm8tZGlhbG9nLWNvbmZpcm0tYnV0dG9uOmhvdmVye2NvbG9yOiMxNjdhYzY7Y3Vyc29yOnBvaW50ZXI7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtYWQtaW5mby1kaWFsb2ctbXV0ZS1jb250YWluZXJ7bWFyZ2luLXRvcDo4cHh9Lnl0cC1hZC1pbmZvLWRpYWxvZy1tdXRlLWJ1dHRvbntmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZn0ueXRwLWFkLWluZm8tZGlhbG9nLW11dGUtYnV0dG9uIC55dHAtYWQtYnV0dG9uLWljb257aGVpZ2h0OjE2cHg7bWFyZ2luLXJpZ2h0OjVweDt3aWR0aDoxNnB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLWZlZWRiYWNrLWRpYWxvZy11bmRvLW11dGUtYnV0dG9ue2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjUwMDttYXJnaW4tbGVmdDo1cHh9Lnl0cC1hZC1mZWVkYmFjay1kaWFsb2ctdW5kby1tdXRlLWJ1dHRvbiAueXRwLWFkLWJ1dHRvbi10ZXh0e3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9Lnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbntsaW5lLWhlaWdodDppbmhlcml0O2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO21hcmdpbi1sZWZ0OjVweDt0ZXh0LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjc1KX0ueXRwLWFkLXZpc2l0LWFkdmVydGlzZXItYnV0dG9uOmJlZm9yZXtjb250ZW50OiIiO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTJweDtyaWdodDotMnB4O3RvcDotN3B4O2JvdHRvbTotOHB4fS55dHAtYWQtdmlzaXQtYWR2ZXJ0aXNlci1idXR0b24gLnl0cC1hZC1idXR0b24tdGV4dHtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC43NSk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjEycHg7bWFyZ2luOi00cHggM3B4IC0ycHggMDtwYWRkaW5nOjVweCAwO3RleHQtZGVjb3JhdGlvbjpub25lO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS55dHAtYWQtdmlzaXQtYWR2ZXJ0aXNlci1idXR0b246aG92ZXIgLnl0cC1hZC1idXR0b24tdGV4dHtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9Lnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbiAueXRwLWFkLWJ1dHRvbi1pY29ue2N1cnNvcjpwb2ludGVyOy13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAycHggIzAwMCk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAycHggIzAwMCk7aGVpZ2h0OjEwcHg7b3BhY2l0eTouNzU7d2lkdGg6MTBweDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDFweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKDFweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMXB4KX0ueXRwLWFkLXZpc2l0LWFkdmVydGlzZXItYnV0dG9uOmhvdmVyIC55dHAtYWQtYnV0dG9uLWljb257b3BhY2l0eToxfS55dHAtYmlnLW1vZGUgLnl0cC1hZC1wcmV2aWV3LWNvbnRhaW5lciwueXRwLWJpZy1tb2RlIC55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVye2JvdHRvbTo5NXB4fS55dHAtYmlnLW1vZGUgLnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXJ7Ym90dG9tOjE1NnB4fS55dHAtZW1iZWQueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1wcmV2aWV3LWNvbnRhaW5lciwueXRwLWVtYmVkLnl0cC1oaWRlLWNvbnRyb2xzIC55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVyLC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXByZXZpZXctY29udGFpbmVyLC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXNraXAtYnV0dG9uLWNvbnRhaW5lcntib3R0b206MjVweH0ueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXJ7Ym90dG9tOjg2cHh9Lnl0cC1hZHMtdGlueS1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0tdXNlci1zZW50aW1lbnQgLnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXJ7Ym90dG9tOjcwcHh9Lnl0cC1zZXR0aW5ncy1zaG93biAueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWNvbnRhaW5lciwueXRwLXNldHRpbmdzLXNob3duIC55dHAtYWQtcHJldmlldy1jb250YWluZXIsLnl0cC1zZXR0aW5ncy1zaG93biAueXRwLWFkLXNraXAtYnV0dG9uLWNvbnRhaW5lcntvcGFjaXR5Oi40O3BvaW50ZXItZXZlbnRzOm5vbmU7ei1pbmRleDo4NTB9Lnl0cC1zZXR0aW5ncy1zaG93biAueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWNvbnRhaW5lciAueXRwLWFkLXRvZ2dsZS1idXR0b24tbGFiZWx7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWFkLW1lc3NhZ2Utb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JvdHRvbTowO2xlZnQ6MDtwb2ludGVyLWV2ZW50czpub25lO3otaW5kZXg6ODUwfS55dHAtYWQtbWVzc2FnZS1zbG90LC55dHAtYWQtcHJldmlldy1zbG90LC55dHAtYWQtc2tpcC1hZC1zbG90e3RleHQtc2hhZG93OjAgMCA0cHggcmdiYSgwLDAsMCwuNzUpO3BvaW50ZXItZXZlbnRzOmF1dG87ei1pbmRleDo4NTB9Lnl0cC1hZC1tZXNzYWdlLWNvbnRhaW5lciwueXRwLWFkLXByZXZpZXctY29udGFpbmVyLC55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVye2JvdHRvbTo4NnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7ei1pbmRleDoxMDAwfS55dHAtZW1iZWQgLnl0cC1hZC1tZXNzYWdlLWNvbnRhaW5lciwueXRwLWVtYmVkIC55dHAtYWQtcHJldmlldy1jb250YWluZXIsLnl0cC1lbWJlZCAueXRwLWFkLXNraXAtYnV0dG9uLWNvbnRhaW5lcntib3R0b206NzhweH0ueXRwLWFkLW1lc3NhZ2UtY29udGFpbmVye2JvdHRvbTo4NnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO2NvbG9yOiNmZmY7Y3Vyc29yOnBvaW50ZXI7b3BhY2l0eToxO3JpZ2h0OjA7ei1pbmRleDoxMDAwfS55dHAtZW1iZWQgLnl0cC1hZC1tZXNzYWdlLWNvbnRhaW5lcntib3R0b206NzhweH0ueXRwLWFkLW1lc3NhZ2UtY29udGFpbmVyLC55dHAtYWQtcHJldmlldy1jb250YWluZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC40cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNCk7Y3Vyc29yOmRlZmF1bHR9Lnl0cC1hZC1wcmV2aWV3LWNvbnRhaW5lci1kZXRhY2hlZHttYXJnaW4tcmlnaHQ6MTJweDtib3JkZXItcmFkaXVzOjRweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC42KTtoZWlnaHQ6MzZweH0ueXRwLWFkLXByZXZpZXctY29udGFpbmVyLWRldGFjaGVkOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxMDAlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLXNraXAtYnV0dG9uLWNvbnRhaW5lcnstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7Y3Vyc29yOnBvaW50ZXI7b3BhY2l0eTouNztwb2ludGVyLWV2ZW50czphdXRvfS55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVyLWRldGFjaGVke21hcmdpbi1yaWdodDoxMnB4O29wYWNpdHk6MX0ueXRwLWFkLW1lc3NhZ2UtY29udGFpbmVyW2FyaWEtaGlkZGVuPXRydWVdLC55dHAtYWQtcHJldmlldy1jb250YWluZXJbYXJpYS1oaWRkZW49dHJ1ZV0sLnl0cC1hZC1za2lwLWJ1dHRvbi1jb250YWluZXJbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWFkLXByZXZpZXctdGV4dHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTJweDtoZWlnaHQ6MzBweDtsZXR0ZXItc3BhY2luZzouMXB4O21pbi13aWR0aDo4MnB4O3BhZGRpbmc6MTFweCAxMHB4O3RleHQtYWxpZ246Y2VudGVyO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aGl0ZS1zcGFjZTpwcmU7d2lkdGg6YXV0b30ueXRwLWFkLXByZXZpZXctdGV4dC1tb2Rlcm57ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjFweDtwYWRkaW5nOjAgOHB4O3RleHQtYWxpZ246Y2VudGVyO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aGl0ZS1zcGFjZTpwcmU7d2lkdGg6YXV0b30ueXRwLWFkLW1lc3NhZ2UtdGV4dHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTZweDtoZWlnaHQ6NTJweDtsaW5lLWhlaWdodDo1MnB4O2xldHRlci1zcGFjaW5nOi4xcHg7bWluLXdpZHRoOjgwcHg7cGFkZGluZzowIDIwcHg7dGV4dC1hbGlnbjpjZW50ZXI7dmVydGljYWwtYWxpZ246bWlkZGxlO3doaXRlLXNwYWNlOnByZTt3aWR0aDphdXRvfS55dHAtYWQtcHJldmlldy1pbWFnZXtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1hZC1wcmV2aWV3LWltYWdlPi55dHAtYWQtaW1hZ2V7ZGlzcGxheTpibG9jazt3aWR0aDo5MnB4O2hlaWdodDo1MnB4fS55dHAtYWQtcHJldmlldy1pbWFnZS1tb2Rlcm57ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlfS55dHAtYWQtcHJldmlldy1pbWFnZS1tb2Rlcm4+Lnl0cC1hZC1pbWFnZXtkaXNwbGF5OmJsb2NrO2hlaWdodDozNnB4O3dpZHRoOjY1cHh9LmNvdW50ZG93bi1uZXh0LXRvLXRodW1ibmFpbCAueXRwLWFkLXByZXZpZXctdGV4dHtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7aGVpZ2h0OmF1dG87bWluLXdpZHRoOjA7cGFkZGluZzowIDhweH0uY291bnRkb3duLW5leHQtdG8tdGh1bWJuYWlsIC55dHAtYWQtaW1hZ2V7aGVpZ2h0OjQxcHg7d2lkdGg6NzNweH0ubW9kZXJuLWNvdW50ZG93bi1uZXh0LXRvLXRodW1ibmFpbCAueXRwLWFkLXByZXZpZXctdGV4dC1tb2Rlcm57Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NDAwO2hlaWdodDphdXRvO21pbi13aWR0aDowO3BhZGRpbmc6MCA4cHh9Lm1vZGVybi1jb3VudGRvd24tbmV4dC10by10aHVtYm5haWwgLnl0cC1hZC1wcmV2aWV3LXRleHQtbW9kZXJuLXBvc3Ryb2xse3BhZGRpbmc6MCAxNHB4fS5tb2Rlcm4tY291bnRkb3duLW5leHQtdG8tdGh1bWJuYWlsIC55dHAtYWQtaW1hZ2V7aGVpZ2h0OjM2cHg7d2lkdGg6NjVweH0ueXRwLWFkLXNraXAtYnV0dG9ue2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNyk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC41KTtib3JkZXItcmlnaHQ6MDstd2Via2l0LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveDtjb2xvcjojZmZmO2RpcmVjdGlvbjpsdHI7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6bm9ybWFsO21pbi13aWR0aDowO3BhZGRpbmc6MTBweCA2cHggOHB4IDEwcHg7d2lkdGg6YXV0bzt0ZXh0LWFsaWduOmNlbnRlcjtjdXJzb3I6cG9pbnRlcn0ueXRwLWFkLXNraXAtYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOSk7Ym9yZGVyOjFweCBzb2xpZCByZ2IoMjU1LDI1NSwyNTUpO2JvcmRlci1yaWdodDowfS55dHAtYWQtc2tpcC1idXR0b24taWNvbntoZWlnaHQ6MzZweDt3aWR0aDozNnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW46LTE0cHggLTZweCAtMTJweCAtNHB4fS55dHAtYWQtc2tpcC1idXR0b24tbW9kZXJue2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNik7LXdlYmtpdC1ib3gtc2l6aW5nOmNvbnRlbnQtYm94O2JveC1zaXppbmc6Y29udGVudC1ib3g7Y29sb3I6I2ZmZjtkaXJlY3Rpb246bHRyO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDpub3JtYWw7bWluLXdpZHRoOjA7cGFkZGluZzowIDZweCAwIDE2cHg7d2lkdGg6YXV0bzt0ZXh0LWFsaWduOmNlbnRlcjtib3JkZXItcmFkaXVzOjE4cHg7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1za2lwLWJ1dHRvbi1tb2Rlcm46aG92ZXJ7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxsZWZ0IGJvdHRvbSxmcm9tKHJnYmEoMjU1LDI1NSwyNTUsLjIpKSx0byhyZ2JhKDI1NSwyNTUsMjU1LC4yKSkpLC13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGZyb20ocmdiKDE1LDE1LDE1KSksdG8ocmdiKDE1LDE1LDE1KSkpO2JhY2tncm91bmQ6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmdiYSgyNTUsMjU1LDI1NSwuMikscmdiYSgyNTUsMjU1LDI1NSwuMikpLC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHJnYigxNSwxNSwxNSkscmdiKDE1LDE1LDE1KSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsMjU1LDI1NSwuMikscmdiYSgyNTUsMjU1LDI1NSwuMikpLGxpbmVhci1ncmFkaWVudChyZ2IoMTUsMTUsMTUpLHJnYigxNSwxNSwxNSkpfS55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVyIC55dHAtYWQtc2tpcC1idXR0b24tbW9kZXJuOmZvY3Vze2JhY2tncm91bmQ6cmdiKDE1LDE1LDE1KTtvdXRsaW5lOm5vbmU7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmU7Ym94LXNoYWRvdzpub25lfS55dHAtYWQtc2tpcC1idXR0b24tY29udGFpbmVyIC55dHAtYWQtc2tpcC1idXR0b24tbW9kZXJuOmZvY3VzLXZpc2libGV7YmFja2dyb3VuZDojZmZmOy13ZWJraXQtYm94LXNoYWRvdzowIDAgMCAycHggIzBmMGYwZjtib3gtc2hhZG93OjAgMCAwIDJweCAjMGYwZjBmO2NvbG9yOiMwZjBmMGZ9Lnl0cC1hZC1za2lwLWJ1dHRvbi1pY29uLW1vZGVybntoZWlnaHQ6MzZweDt3aWR0aDozNnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLXNraXAtYnV0dG9uLWljb24tZGVsaGkgLnl0cC1hZC1za2lwLWJ1dHRvbi1pY29uLW1vZGVybiBzdmd7cGFkZGluZzo2cHh9Lnl0cC1hZC1za2lwLWJ1dHRvbi1pY29uLW13ZWItZGVsaGkgLnl0cC1hZC1za2lwLWJ1dHRvbi1pY29uLWRlbGhpIC55dHAtYWQtc2tpcC1idXR0b24taWNvbi1tb2Rlcm4gc3Zne2hlaWdodDoxNnB4O3dpZHRoOjE2cHg7cGFkZGluZzo0cHh9Lnl0cC1hZC1za2lwLWJ1dHRvbi1tb2Rlcm46Zm9jdXMtdmlzaWJsZSAueXRwLWFkLXNraXAtYnV0dG9uLWljb24tbW9kZXJuIHN2ZyBwYXRoe2ZpbGw6IzBmMGYwZn0uaHRtbDUtdmlkZW8tcGxheWVyIC55dHAtYWQtb3ZlcmxheS1zbG90e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo2MXB4O3dpZHRoOjEwMCU7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3otaW5kZXg6ODUwfS55dHAtZW1iZWQuaHRtbDUtdmlkZW8tcGxheWVyIC55dHAtYWQtb3ZlcmxheS1zbG90e2JvdHRvbTo1M3B4fS55dHAtYmlnLW1vZGUgLnl0cC1hZC1vdmVybGF5LXNsb3R7Ym90dG9tOjcwcHh9Lnl0cC1hdXRvaGlkZS55dHAtYWQtb3ZlcmxheS1jbG9zZWQgLnl0cC1hZC1vdmVybGF5LXNsb3R7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYWQtb3ZlcmxheS1jb250YWluZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9Lnl0cC1hZC1vdmVybGF5LWNvbnRhaW5lciAueXRwLWFkLWVuaGFuY2VkLW92ZXJsYXksLnl0cC1hZC1vdmVybGF5LWNvbnRhaW5lciAueXRwLWFkLW92ZXJsYXktaW1hZ2UgaW1nLC55dHAtYWQtb3ZlcmxheS1jb250YWluZXIgLnl0cC1hZC10ZXh0LW92ZXJsYXl7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0cC1hZC10ZXh0LW92ZXJsYXl7aGVpZ2h0OjYzcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjYpO21pbi13aWR0aDozMjBweDttYXJnaW46YXV0bzttYXgtd2lkdGg6NDQwcHg7cGFkZGluZy1sZWZ0OjEwcHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpsZWZ0fS55dHAtYWQtdGV4dC1vdmVybGF5OmhvdmVye2JvcmRlcjoxcHggc29saWQgcmdiKDU4LDU4LDU4KX0ueXRwLWFkLW92ZXJsYXktdGl0bGV7Y3Vyc29yOnBvaW50ZXI7Y29sb3I6I2ZmZjtkaXNwbGF5OmJsb2NrO2ZvbnQ6NzAwIDE0cHggYXJpYWwsc2Fucy1zZXJpZjttYXJnaW46N3B4IDIycHggMCAwO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWJvdHRvbTo0cHg7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt0ZXh0LXNoYWRvdzpyZ2IoMCwwLDApIDAgLTFweCAwO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLWFkLXRleHQtb3ZlcmxheTpob3ZlciAueXRwLWFkLW92ZXJsYXktdGl0bGV7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ueXRwLWFkLW92ZXJsYXktZGVzY3tjb2xvcjojZmZmO2ZvbnQ6MTJweCBhcmlhbCxzYW5zLXNlcmlmO21hcmdpbi1ib3R0b206MnB4O21hcmdpbi10b3A6LTNweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC1hZC1pbWFnZS1vdmVybGF5e21pbi13aWR0aDozMjBweDttYXJnaW46YXV0bztwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkLW92ZXJsYXktaW1hZ2V7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9ja30ueXRwLWFkLWltYWdlLW92ZXJsYXk6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ueXRwLWFkLW92ZXJsYXktbGlua3tjdXJzb3I6cG9pbnRlcjtib3R0b206OXB4O2NvbG9yOiNlYWRlOTA7Zm9udDoxMXB4IGFyaWFsLHNhbnMtc2VyaWY7cG9zaXRpb246c3RhdGljO3RleHQtZGVjb3JhdGlvbjpub25lO3RleHQtc2hhZG93OnJnYigwLDAsMCkgMCAtMXB4IDB9Lnl0cC1hZC1vdmVybGF5LWxpbmsueXRwLWFkLW92ZXJsYXktbGluay1pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0cC1hZC1vdmVybGF5LWFkLWluZm8tYnV0dG9uLWNvbnRhaW5lcntjb2xvcjojZmZmO2N1cnNvcjpwb2ludGVyO2hlaWdodDoxNXB4O3BhZGRpbmc6NnB4IDFweCAxMHB4IDIwcHg7cG9pbnRlci1ldmVudHM6YXV0bztwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoyMXB4O3RvcDowO3dpZHRoOjE1cHh9Lnl0cC1hZC1vdmVybGF5LWFkLWluZm8tYnV0dG9uLWNvbnRhaW5lciAueXRwLWFkLWluZm8taG92ZXItdGV4dC1idXR0b257aGVpZ2h0OmluaGVyaXQ7d2lkdGg6aW5oZXJpdDttYXJnaW46MDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0ueXRwLWFkLW92ZXJsYXktYWQtaW5mby1idXR0b24tY29udGFpbmVyIC55dHAtYWQtaG92ZXItdGV4dC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjYpO2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6NTAwO29wYWNpdHk6MX0ueXRwLWFkLW92ZXJsYXktYWQtaW5mby1idXR0b24tY29udGFpbmVyIC55dHAtYWQtYnV0dG9ue2N1cnNvcjpwb2ludGVyO2ZpbGwtb3BhY2l0eTouODtoZWlnaHQ6aW5oZXJpdDtvcGFjaXR5Oi45O3dpZHRoOmluaGVyaXQ7LXdlYmtpdC1maWx0ZXI6bm9uZTtmaWx0ZXI6bm9uZTtsaW5lLWhlaWdodDpub3JtYWw7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTstbXMtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7dmVydGljYWwtYWxpZ246dG9wfS55dHAtYWQtb3ZlcmxheS1jbG9zZS1jb250YWluZXJ7Y3Vyc29yOnBvaW50ZXI7aGVpZ2h0OjE1cHg7bWFyZ2luOjA7cGFkZGluZzo2cHggNnB4IDEwcHggMXB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7d2lkdGg6MTVweH0ueXRwLWFkLW92ZXJsYXktY2xvc2UtYnV0dG9ue2JvcmRlcjowO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MDtmaWxsLW9wYWNpdHk6Ljg7ZmxvYXQ6cmlnaHQ7aGVpZ2h0OmluaGVyaXQ7b3BhY2l0eTouOTt3aWR0aDppbmhlcml0fS55dHAtYWQtdGV4dC1vdmVybGF5IC55dHAtYWQtb3ZlcmxheS1hZC1pbmZvLWJ1dHRvbi1jb250YWluZXIgLnl0cC1hZC1idXR0b24gc3ZnLC55dHAtYWQtdGV4dC1vdmVybGF5IC55dHAtYWQtb3ZlcmxheS1jbG9zZS1idXR0b24gc3Zne2JhY2tncm91bmQ6IzAwMDtmaWxsOiNmZmZ9Lnl0cC1hZC1pbWFnZS1vdmVybGF5IC55dHAtYWQtb3ZlcmxheS1hZC1pbmZvLWJ1dHRvbi1jb250YWluZXIgLnl0cC1hZC1idXR0b24gc3ZnLC55dHAtYWQtaW1hZ2Utb3ZlcmxheSAueXRwLWFkLW92ZXJsYXktY2xvc2UtYnV0dG9uIHN2Z3tiYWNrZ3JvdW5kOiNmZmY7ZmlsbDojNzU3NTc1fS55dHAtYWQtaW1hZ2Utb3ZlcmxheSAueXRwLWFkLW92ZXJsYXktY2xvc2UtYnV0dG9uIHBhdGh7ZmlsbDppbmhlcml0fS55dHAtYWQtb3ZlcmxheS1hZC1pbmZvLWJ1dHRvbi1jb250YWluZXI6aG92ZXIgLnl0cC1hZC1idXR0b24sLnl0cC1hZC1vdmVybGF5LWNsb3NlLWNvbnRhaW5lcjpob3ZlciAueXRwLWFkLW92ZXJsYXktY2xvc2UtYnV0dG9ue2ZpbGwtb3BhY2l0eToxfS55dHAtYWQtb3ZlcmxheS1hdHRyaWJ1dGlvbntib3R0b206OHB4O2NvbG9yOiM4ODg7Y3Vyc29yOnBvaW50ZXI7Zm9udDoxMXB4IGFyaWFsLHNhbnMtc2VyaWY7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MXB4O3BhZGRpbmc6NHB4Oy13ZWJraXQtdHJhbnNpdGlvbjpjb2xvciAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmNvbG9yIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYWQtb3ZlcmxheS1hdHRyaWJ1dGlvbjpob3Zlcntjb2xvcjojZmZmOy13ZWJraXQtdHJhbnNpdGlvbjpjb2xvciAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmNvbG9yIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYWQtaW1hZ2Utb3ZlcmxheSAueXRwLWFkLW92ZXJsYXktYXR0cmlidXRpb257Y29sb3I6aW5oZXJpdDt0ZXh0LXNoYWRvdzpyZ2IoMCwwLDApIDAgMCA4cHgscmdiYSgwLDAsMCwuOSkgMCAwIDRweH0ueXRwLWFkLW92ZXJsYXktdGV4dC1pbWFnZXtmbG9hdDpsZWZ0fS55dHAtYWQtb3ZlcmxheS10ZXh0LWltYWdlIGltZ3std2Via2l0LWJveC1zaGFkb3c6MCAzcHggNXB4IHJnYmEoMCwwLDAsLjQ5ODAzOSk7Ym94LXNoYWRvdzowIDNweCA1cHggcmdiYSgwLDAsMCwuNDk4MDM5KTtoZWlnaHQ6NTdweDttYXJnaW46MnB4IDEwcHggMCAwO3dpZHRoOmF1dG87bWluLXdpZHRoOjU3cHh9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFse2JhY2tncm91bmQtc2l6ZTpjb3ZlcjstbW96LWJhY2tncm91bmQtc2l6ZTpjb3Zlcjstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kOndoaXRlO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlO3otaW5kZXg6NjR9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWJhY2tncm91bmQtY29udGFpbmVye3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDo2NTtib3JkZXI6bm9uZX0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYmFja2dyb3VuZHtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7LW1vei1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtib3JkZXI6bm9uZTtkaXNwbGF5OmJsb2NrfS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1zbG90e3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC45KTtib3R0b206MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt6LWluZGV4OjY1fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1jYXJkey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2Rpc3BsYXk6YmxvY2s7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTE0MHB4O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3RvcDo1MCU7d2lkdGg6MjgwcHh9Lnl0cC1hZHMtdGlueS1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1jYXJke21hcmdpbi1sZWZ0Oi05MHB4O3dpZHRoOjE4MHB4fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1jYXJkLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWNhcmQtdW5pZmllZHttYXJnaW4tbGVmdDotMjE1cHg7d2lkdGg6NDMwcHg7cGFkZGluZzowIDE2cHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtY2FyZC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1jYXJkLXVuaWZpZWR7bWFyZ2luLWxlZnQ6MDtsZWZ0OjA7dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjI0NXB4O3BhZGRpbmc6MCAwIDAgMTZweDstd2Via2l0LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtY29udGFpbmVye2N1cnNvcjpwb2ludGVyO3BvaW50ZXItZXZlbnRzOmF1dG99Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWhlYWRsaW5lLWNvbnRhaW5lci55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1oZWFkbGluZS1jb250YWluZXItdW5pZmllZHt3aWR0aDotd2Via2l0LWZpdC1jb250ZW50O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnQ7bWFyZ2luOjAgYXV0bztwYWRkaW5nOjI4cHggMCAxMHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtY29udGFpbmVyLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWhlYWRsaW5lLWNvbnRhaW5lci11bmlmaWVke3dpZHRoOi13ZWJraXQtZml0LWNvbnRlbnQ7d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudDttYXJnaW46MCBhdXRvIDAgMDtwYWRkaW5nOjEwcHggMH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmV7Y29sb3I6IzMzMztkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MjBweDttYXgtaGVpZ2h0OjIuMmVtO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLXRvcDoxMHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmV7Zm9udC1zaXplOjE2cHg7bWF4LWhlaWdodDoyLjJlbTtwYWRkaW5nLXRvcDo4cHh9Lnl0cC1hZHMtdGlueS1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1oZWFkbGluZXtmb250LXNpemU6MTRweDtwYWRkaW5nLXRvcDo0cHh9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLWNvbnRhaW5lcntjdXJzb3I6cG9pbnRlcjtwb2ludGVyLWV2ZW50czphdXRvO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtZGVzY3JpcHRpb24tY29udGFpbmVyLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLWNvbnRhaW5lci11bmlmaWVke3doaXRlLXNwYWNlOm5vcm1hbDt3aWR0aDotd2Via2l0LWZpdC1jb250ZW50O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnQ7bWFyZ2luOjAgYXV0bztwYWRkaW5nOjZweCAwIDIycHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1kZXNjcmlwdGlvbi1jb250YWluZXIueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtZGVzY3JpcHRpb24tY29udGFpbmVyLXVuaWZpZWR7ZGlzcGxheTpub25lfS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1kZXNjcmlwdGlvbntjb2xvcjojNzY3Njc2O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjUwMDttYXgtaGVpZ2h0OjEuMWVtO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3dpZHRoOjEwMCU7cGFkZGluZy1ib3R0b206MTBweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9ue2ZvbnQtc2l6ZToxMnB4O3BhZGRpbmctYm90dG9tOjhweH0ueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9ue3BhZGRpbmctYm90dG9tOjB9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24tY29udGFpbmVye2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLWNvbnRhaW5lci55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLWNvbnRhaW5lci11bmlmaWVke3BhZGRpbmc6NnB4IDB9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b257cG9pbnRlci1ldmVudHM6YXV0bztiYWNrZ3JvdW5kLWNvbG9yOiMxNjdhYzY7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czoycHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOiNmZmY7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjIzcHg7aGVpZ2h0OjQ2cHg7bGluZS1oZWlnaHQ6NDZweDttaW4td2lkdGg6MTY0cHg7cGFkZGluZzowIDIwcHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9ue2ZvbnQtc2l6ZToxNXB4O2hlaWdodDozNnB4O2xpbmUtaGVpZ2h0OjM2cHg7cGFkZGluZzowIDE2cHg7bWluLXdpZHRoOjEyMHB4fS55dHAtYWRzLXRpbnktbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbntoZWlnaHQ6MjRweDtsaW5lLWhlaWdodDoyNHB4O21pbi13aWR0aDowfS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24tcm91bmRlZHtib3JkZXItcmFkaXVzOjI4cHg7aGVpZ2h0OjU2cHg7Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjI4cHg7cGFkZGluZzowIDI0cHg7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0fS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLXJvdW5kZWR7Zm9udC1zaXplOjE1cHg7aGVpZ2h0OjM2cHg7bGluZS1oZWlnaHQ6MzZweDtwYWRkaW5nOjAgMTZweDtib3JkZXItcmFkaXVzOjE4cHh9Lnl0cC1hZHMtdGlueS1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24tcm91bmRlZHtoZWlnaHQ6MjRweDtsaW5lLWhlaWdodDoyNHB4O2JvcmRlci1yYWRpdXM6MTJweH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW1hZ2UtY29udGFpbmVye2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7bWFyZ2luOmF1dG87bWF4LXdpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czo1MCU7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlcjpub25lO2hlaWdodDoxMjhweDt3aWR0aDoxMjhweH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW1hZ2V7cG9pbnRlci1ldmVudHM6YXV0bzttYXgtd2lkdGg6MTAwJX0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWltYWdlLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWltYWdlLXVuaWZpZWR7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1pbWFnZS1jb250YWluZXJ7aGVpZ2h0OjYwcHg7d2lkdGg6NjBweH0ueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWltYWdlLWNvbnRhaW5lcntoZWlnaHQ6NDBweDt3aWR0aDo0MHB4fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1pbWFnZS1jb250YWluZXIueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW1hZ2UtY29udGFpbmVyLXVuaWZpZWR7aGVpZ2h0OjY0cHg7d2lkdGg6NjRweDtwb2ludGVyLWV2ZW50czphdXRvfS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaW1hZ2UtY29udGFpbmVyLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWltYWdlLWNvbnRhaW5lci11bmlmaWVke21hcmdpbi1sZWZ0Oi02cHg7cGFkZGluZzo2cHg7aGVpZ2h0OjM2cHg7d2lkdGg6MzZweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWltYWdlLWNvbnRhaW5lci55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1pbWFnZS1jb250YWluZXItdW5pZmllZHtoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1iYWNrZ3JvdW5kLWNvbnRhaW5lci55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1iYWNrZ3JvdW5kLWNvbnRhaW5lci11bmlmaWVkey13ZWJraXQtZmlsdGVyOmJsdXIoNzBweCk7ZmlsdGVyOmJsdXIoNzBweCl9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLXNsb3QueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtc2xvdC1kYXJrLWJhY2tncm91bmR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDUwLDUwLDUwLC44KX0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtc2xvdC55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1zbG90LXVuaWZpZWR7aW5zZXQ6MDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApIDUwJSxyZ2JhKDAsMCwwLC44KSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxsZWZ0IGJvdHRvbSxjb2xvci1zdG9wKDUwJSxyZ2JhKDAsMCwwLDApKSx0byhyZ2JhKDAsMCwwLC44KSkpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLDApIDUwJSxyZ2JhKDAsMCwwLC44KSk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KX0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtbGlnaHR7Y29sb3I6I2ZmZn0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtdW5pZmllZHtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyOHB4O2ZvbnQtd2VpZ2h0OjkwMDtsaW5lLWhlaWdodDozNHB4O21heC1oZWlnaHQ6bm9uZTtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy10b3A6MDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtbGluZS1jbGFtcDoyfS55dHAtc21hbGwtbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtdW5pZmllZHtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0OjkwMDtsaW5lLWhlaWdodDoyNHB4O21heC1oZWlnaHQ6bm9uZTtwYWRkaW5nLXRvcDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtbGluZS1jbGFtcDoxfS55dHAtYWRzLXRpbnktbW9kZSAueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtaGVhZGxpbmUtdW5pZmllZHtmb250LXNpemU6MTZweDtwYWRkaW5nLXRvcDoxMnB4O3BhZGRpbmctYm90dG9tOjB9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLWxpZ2h0e2NvbG9yOiNmZmZ9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWRlc2NyaXB0aW9uLXVuaWZpZWR7Y29sb3I6I2FhYTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MjBweDttYXgtaGVpZ2h0Om5vbmU7cGFkZGluZy1ib3R0b206MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDoxOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbH0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLWRhcmt7YmFja2dyb3VuZC1jb2xvcjpyZ2IoNjIsMTY2LDI1NSk7Y29sb3I6cmdiKDE1LDE1LDE1KTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXdlaWdodDo1MDA7Zm9udC1zaXplOjIwcHh9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi1tb25vLWRhcmt7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2NvbG9yOnJnYigxNSwxNSwxNSk7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc2l6ZToyMHB4fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24tbW9iaWxlLWNvbXBhbmlvbi1zaXple21pbi13aWR0aDowO2ZvbnQtc2l6ZToxNHB4O3BhZGRpbmc6MCAxNnB4fS55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24tdW5pZmllZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYig2MiwxNjYsMjU1KTtib3JkZXItcmFkaXVzOjE4cHg7Y29sb3I6cmdiKDE1LDE1LDE1KTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7aGVpZ2h0OjM2cHg7bGluZS1oZWlnaHQ6MThweDttaW4td2lkdGg6MDttYXgtd2lkdGg6MjAwcHg7cGFkZGluZzowIDE2cHg7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVkOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0Oi02cHggMDtjdXJzb3I6cG9pbnRlcn0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLXVuaWZpZWQgLnl0cC1hZC1idXR0b24tdGV4dHtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDoxOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVke2JhY2tncm91bmQtY29sb3I6cmdiKDYyLDE2NiwyNTUpO2JvcmRlci1yYWRpdXM6MThweDtjb2xvcjpyZ2IoMTUsMTUsMTUpO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDoxOHB4O21pbi13aWR0aDowO21heC13aWR0aDoxNTBweDtwYWRkaW5nOjAgMTZweH0ueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVke2hlaWdodDoyMnB4O2xpbmUtaGVpZ2h0OjEycHh9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVkLW1vbm97YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2JvcmRlci1yYWRpdXM6MThweDtjb2xvcjpyZ2IoMTUsMTUsMTUpO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDoxOHB4O21pbi13aWR0aDowO21heC13aWR0aDoyMDBweDtwYWRkaW5nOjAgMTZweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi55dHAtYWQtYWN0aW9uLWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLXVuaWZpZWQtbW9ubzpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDotNnB4IDA7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVkLW1vbm8gLnl0cC1hZC1idXR0b24tdGV4dHtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDoxOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVkLW1vbm97YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2JvcmRlci1yYWRpdXM6MThweDtjb2xvcjpyZ2IoMTUsMTUsMTUpO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDoxOHB4O21pbi13aWR0aDowO21heC13aWR0aDoxNTBweDtwYWRkaW5nOjAgMTZweH0ueXRwLWFkcy10aW55LW1vZGUgLnl0cC1hZC1hY3Rpb24taW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLWFjdGlvbi1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi11bmlmaWVkLW1vbm97aGVpZ2h0OjIycHg7bGluZS1oZWlnaHQ6MTJweH0ueXRwLWFkLXRpbWVkLXBpZS1jb3VudGRvd24tY29udGFpbmVye2JvdHRvbTo0cHg7ZGlzcGxheTpibG9jaztsZWZ0OjZweDtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjY1fS55dHAtYWQtdGltZWQtcGllLWNvdW50ZG93bi1jb250YWluZXIueXRwLWFkLXRpbWVkLXBpZS1jb3VudGRvd24tY29udGFpbmVyLXVwcGVyLXJpZ2h0e2JvdHRvbTphdXRvO2xlZnQ6YXV0bzt0b3A6NHB4O3JpZ2h0OjZweH1zdmcueXRwLWFkLXRpbWVkLXBpZS1jb3VudGRvd257YmFja2dyb3VuZDpub25lO2JvcmRlci1yYWRpdXM6NTAlO2hlaWdodDoyMHB4O29wYWNpdHk6LjQ7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7LW1zLXRyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7d2lkdGg6MjBweH1jaXJjbGUueXRwLWFkLXRpbWVkLXBpZS1jb3VudGRvd24tYmFja2dyb3VuZHtmaWxsOm5vbmU7c3Ryb2tlOm5vbmV9Y2lyY2xlLnl0cC1hZC10aW1lZC1waWUtY291bnRkb3duLWlubmVye2ZpbGw6bm9uZTtzdHJva2U6IzAwMDtzdHJva2Utd2lkdGg6MTBweH1jaXJjbGUueXRwLWFkLXRpbWVkLXBpZS1jb3VudGRvd24tb3V0ZXJ7ZmlsbDpub25lO3N0cm9rZTojMDAwO3N0cm9rZS13aWR0aDoxfWNpcmNsZS55dHAtYWQtdGltZWQtcGllLWNvdW50ZG93bi1pbm5lci55dHAtYWQtdGltZWQtcGllLWNvdW50ZG93bi1pbm5lci1saWdodHtzdHJva2U6cmdiYSgyNTUsMjU1LDI1NSwuNzUpfWNpcmNsZS55dHAtYWQtdGltZWQtcGllLWNvdW50ZG93bi1vdXRlci55dHAtYWQtdGltZWQtcGllLWNvdW50ZG93bi1vdXRlci1saWdodHtzdHJva2U6cmdiYSgyNTUsMjU1LDI1NSwuNzUpfS55dHAtYWQtc3VydmV5e3dpZHRoOmF1dG87aGVpZ2h0OjEwMCU7YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtwYWRkaW5nOjAgMzJweDttYXJnaW46MDtsaW5lLWhlaWdodDpub3JtYWw7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dHAtYWQtc3VydmV5LnJlbGF0aXZlLXBvc2l0aW9uaW5nLXN1cnZleXtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4Ojg1MH0ueXRwLWFkLXN1cnZleS1xdWVzdGlvbnN7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1mbGV4LWdyb3c6MTstd2Via2l0LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW46MCBhdXRvO2hlaWdodDoxMDAlfS55dHAtYWQtc3VydmV5LXF1ZXN0aW9ue2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtZmxleC1ncm93OjE7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO3BhZGRpbmctdG9wOjA7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWZ9Lnl0cC1hZC1zdXJ2ZXktcXVlc3Rpb24tYmFja2dyb3VuZHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7YmFja2dyb3VuZC1zaXplOmNvdmVyOy1tb3otYmFja2dyb3VuZC1zaXplOmNvdmVyOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtcG9zaXRpb246NTAlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4OjF9Lnl0cC1hZC1zdXJ2ZXktcXVlc3Rpb24tZm9yZWdyb3VuZHt6LWluZGV4OjJ9Lnl0cC1hZC1zdXJ2ZXktcXVlc3Rpb24tdGV4dHtjb2xvcjojMTMxMzEzO2ZvbnQtc2l6ZToyMHB4O3RleHQtYWxpZ246bGVmdDt3aWR0aDozMDJweDttYXJnaW4tcmlnaHQ6NDhweDtsaW5lLWhlaWdodDoyOHB4fS55dHAtYWQtc3VydmV5LWFuc3dlcnN7cmlnaHQ6MDt0b3A6MzVweDt3aWR0aDozMDhweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXJ7aGVpZ2h0OjQ4cHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLC55dHAtYWQtc3VydmV5LW5vbmUtb2YtdGhlLWFib3Zley13ZWJraXQtZmxleC1ncm93OjE7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOjEwMCV9Lnl0cC1hZC1zdXJ2ZXktbm9uZS1vZi10aGUtYWJvdmV7Zm9udC1zaXplOjEzLjdweDtoZWlnaHQ6MzVweDtwYWRkaW5nLXRvcDo0JX0ueXRwLWFkLXN1cnZleS1hbnN3ZXJzIC55dHAtYWQtc3VydmV5LW5vbmUtb2YtdGhlLWFib3Zle3BhZGRpbmctdG9wOjA7aGVpZ2h0OjQ4cHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24gLnl0cC1hZC10b2dnbGUtYnV0dG9uLWljb257d2lkdGg6MjBweDtoZWlnaHQ6MjBweDstd2Via2l0LWZsZXg6MCAwIDIwcHg7LXdlYmtpdC1ib3gtZmxleDowO2ZsZXg6MCAwIDIwcHg7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0cC1hZC10b2dnbGUtYnV0dG9uLWlucHV0e2Rpc3BsYXk6bm9uZX0ueXRwLWFkLXN1cnZleS1hbnN3ZXItYnV0dG9uLC55dHAtYWQtc3VydmV5LWFuc3dlci10b2dnbGUtYnV0dG9ue2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoycHg7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MjBweDtsaW5lLWhlaWdodDoyOHB4O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt0ZXh0LWFsaWduOmxlZnQ7Ym9yZGVyOjA7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO3BhZGRpbmc6MDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLWJ1dHRvbjpob3ZlciwueXRwLWFkLXN1cnZleS1hbnN3ZXItdG9nZ2xlLWJ1dHRvbjpob3Zlcntmb250LXdlaWdodDo1MDB9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLWJ1dHRvbnttYXJnaW4tbGVmdDoyNHB4fS55dHAtYWQtc3VydmV5LWFuc3dlciAueXRwLWFkLXRvZ2dsZS1idXR0b24tdG9nZ2xlZHtmb250LXdlaWdodDo1MDB9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24gLnl0cC1hZC10b2dnbGUtYnV0dG9uLXVudG9nZ2xlZC1pY29uIHN2ZyBwYXRoOmZpcnN0LW9mLXR5cGV7ZmlsbDojNjA2MDYwfS55dHAtYWQtc3VydmV5LWFuc3dlci10b2dnbGUtYnV0dG9uIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbi10b2dnbGVkLWljb24gc3ZnIHBhdGg6bGFzdC1vZi10eXBle2ZpbGw6IzA0NWVkZH0ueXRwLWFkLXRvZ2dsZS1idXR0b24tbGFiZWx7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7LXdlYmtpdC1ib3gtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtoZWlnaHQ6MTAwJTtwb2ludGVyLWV2ZW50czphdXRvO2N1cnNvcjpwb2ludGVyfS55dHAtYWQtc3VydmV5LXBsYXllci1vdmVybGF5LXN1Ym1pdHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MTJweDtyaWdodDowO2hlaWdodDo1MnB4O3BvaW50ZXItZXZlbnRzOmF1dG99Lnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbntiYWNrZ3JvdW5kOiMxYjdmY2M7Ym9yZGVyOjA7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czoycHg7Y29sb3I6d2hpdGU7Zm9udC1zaXplOjEzLjdweDtoZWlnaHQ6MzVweDttYXJnaW4tcmlnaHQ6NnB4O3BhZGRpbmctbGVmdDoxMnB4O3BhZGRpbmctcmlnaHQ6NTZweH0ueXRwLWFkLXN1cnZleS1zdWJtaXQtYnV0dG9uLnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbi1yb3VuZGVke2JhY2tncm91bmQ6IzA2NWZkNDtib3JkZXItcmFkaXVzOjE4cHg7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2hlaWdodDozNnB4O3BhZGRpbmctbGVmdDoxNnB4O3BhZGRpbmctcmlnaHQ6MTZweH0ueXRwLWFkLXBsYXllci1vdmVybGF5LC55dHAtYWQtc3VydmV5LXBsYXllci1vdmVybGF5LC55dHAtYWQtc3VydmV5LXF1ZXN0aW9uLXBsYXllci1vdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Ym90dG9tOjA7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1za2lwLW9yLXByZXZpZXcsLnl0cC1hZC1zdXJ2ZXktcGxheWVyLW92ZXJsYXktc2tpcC1vci1wcmV2aWV3e3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cmlnaHQ6MH0ueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWx7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MTAwJTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtvcGFjaXR5OjE7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTt6LWluZGV4OjUwMDA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjVzIGVhc2U7dHJhbnNpdGlvbjpvcGFjaXR5IC41cyBlYXNlfS55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbFthcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2U7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlfS55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbC1jb250ZW50c3toZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbCAueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtY29udGVudHN7aGVpZ2h0OmF1dG99Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLXRleHR7bWFyZ2luLWxlZnQ6MzJweDttYXJnaW4tdG9wOjI1cHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpsZWZ0O2ZvbnQtc2l6ZToyNHB4O2NvbG9yOiMxMzEzMTM7d2lkdGg6MjcycHh9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWxvZ297YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1zaXplOjEwMCUgMTAwJTstbW96LWJhY2tncm91bmQtc2l6ZToxMDAlIDEwMCU7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO2hlaWdodDoyNXB4O21hcmdpbi1sZWZ0OjMycHg7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTA1cHh9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWxvZ28taW1hZ2V7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWFjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyLXJhZGl1czoycHg7Ym90dG9tOjA7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEwMCV9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b257YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0O2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOiNmZmY7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjE0cHg7bWluLXdpZHRoOjE2MXB4O3BhZGRpbmc6MTBweDttYXJnaW4tbGVmdDozMnB4O21hcmdpbi10b3A6MjVweDtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOmNlbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Ym9yZGVyOjB9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24ueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi1yb3VuZGVke2JhY2tncm91bmQtY29sb3I6IzA2NWZkNDtib3JkZXItcmFkaXVzOjE4cHg7aGVpZ2h0OjM2cHg7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NTAwO21pbi13aWR0aDowO3BhZGRpbmctbGVmdDoxNnB4O3BhZGRpbmctcmlnaHQ6MTZweDt0ZXh0LXRyYW5zZm9ybTpub25lfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjU2cHgpey55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbC1sb2dve21hcmdpbi1sZWZ0OjQ4cHg7bWFyZ2luLXRvcDoxNXB4fS55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbC10ZXh0e2ZvbnQtc2l6ZToyMHB4O21hcmdpbi1sZWZ0OjQ4cHh9Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b257Zm9udC1zaXplOjE4cHg7bWFyZ2luLWxlZnQ6NDhweH0ueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbi55dHAtYWQtc3VydmV5LWludGVyc3RpdGlhbC1hY3Rpb24tYnV0dG9uLXJvdW5kZWR7Zm9udC1zaXplOjE0cHg7bWFyZ2luLWxlZnQ6NDhweH0ueXRwLWFkLXN1cnZleXtwYWRkaW5nOjAgMzJweDt3aWR0aDphdXRvfS55dHAtYWQtc3VydmV5LXF1ZXN0aW9uLXRleHR7Zm9udC1zaXplOjIwcHg7bWFyZ2luLXJpZ2h0OjMycHg7bGluZS1oZWlnaHQ6MjhweDt3aWR0aDphdXRvfS55dHAtYWQtc3VydmV5LWFuc3dlcnN7dG9wOjI0cHg7d2lkdGg6YXV0b30ueXRwLWFkLXN1cnZleS1hbnN3ZXJ7aGVpZ2h0OjQ4cHh9Lnl0cC1hZC1zdXJ2ZXktbm9uZS1vZi10aGUtYWJvdmUsLnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbntoZWlnaHQ6MjJweDtmb250LXNpemU6MTBweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXItYnV0dG9uLC55dHAtYWQtc3VydmV5LWFuc3dlci10b2dnbGUtYnV0dG9ue2ZvbnQtc2l6ZToyMHB4O2xpbmUtaGVpZ2h0OjI4cHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24gLnl0cC1hZC10b2dnbGUtYnV0dG9uLWljb257aGVpZ2h0OjIwcHg7d2lkdGg6MjBweDstd2Via2l0LWZsZXg6MCAwIDIwcHg7LXdlYmtpdC1ib3gtZmxleDowO2ZsZXg6MCAwIDIwcHg7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VycyAueXRwLWFkLXN1cnZleS1ub25lLW9mLXRoZS1hYm92ZXtoZWlnaHQ6NDhweH0ueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1zdWJtaXR7Ym90dG9tOjB9Lnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbnttYXJnaW4tcmlnaHQ6NHB4O3BhZGRpbmctbGVmdDoxMHB4O3BhZGRpbmctcmlnaHQ6NDBweH0ueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1pbnN0cmVhbS11c2VyLXNlbnRpbWVudHtkaXNwbGF5Om5vbmV9W2Rpcj1ydGxdIC55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXByZXZpZXctY29udGFpbmVye2JvdHRvbTo0MHB4fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEyOTRweCkgYW5kIChtaW4taGVpZ2h0OjYzMHB4KXsueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtYWN0aW9uLWJ1dHRvbiwueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtbG9nbywueXRwLWFkLXN1cnZleS1pbnRlcnN0aXRpYWwtdGV4dHttYXJnaW4tbGVmdDo2NHB4fS55dHAtYWQtc3VydmV5e3dpZHRoOmF1dG87cGFkZGluZzowIDYwcHh9Lnl0cC1hZC1zdXJ2ZXktcXVlc3Rpb24tdGV4dHtmb250LXNpemU6MjRweDtsaW5lLWhlaWdodDozMnB4O21hcmdpbi1yaWdodDo0OHB4O3dpZHRoOjM1NHB4fS55dHAtYWQtc3VydmV5LWFuc3dlcnN7dG9wOjM4cHg7d2lkdGg6MzkwcHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2Vye2hlaWdodDo2MHB4fS55dHAtYWQtc3VydmV5LW5vbmUtb2YtdGhlLWFib3ZlLC55dHAtYWQtc3VydmV5LXN1Ym1pdC1idXR0b257aGVpZ2h0OjQ0cHg7Zm9udC1zaXplOjE4LjJweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXItYnV0dG9uLC55dHAtYWQtc3VydmV5LWFuc3dlci10b2dnbGUtYnV0dG9ue2ZvbnQtc2l6ZToyNHB4O2xpbmUtaGVpZ2h0OjMycHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24gLnl0cC1hZC10b2dnbGUtYnV0dG9uLWljb257aGVpZ2h0OjMycHg7d2lkdGg6MzJweDstd2Via2l0LWZsZXg6MCAwIDMycHg7LXdlYmtpdC1ib3gtZmxleDowO2ZsZXg6MCAwIDMycHg7bWFyZ2luLXJpZ2h0OjIwcHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2VycyAueXRwLWFkLXN1cnZleS1ub25lLW9mLXRoZS1hYm92ZXtoZWlnaHQ6NjBweH0ueXRwLWFkLXN1cnZleS1wbGF5ZXItb3ZlcmxheS1zdWJtaXR7Ym90dG9tOjI1cHh9Lnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbnttYXJnaW4tcmlnaHQ6OHB4O3BhZGRpbmctbGVmdDoxNnB4O3BhZGRpbmctcmlnaHQ6NzBweH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNzIwcHgpIGFuZCAobWluLWhlaWdodDo5ODBweCl7Lnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWFjdGlvbi1idXR0b24sLnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLWxvZ28sLnl0cC1hZC1zdXJ2ZXktaW50ZXJzdGl0aWFsLXRleHR7bWFyZ2luLWxlZnQ6OTZweH0ueXRwLWFkLXN1cnZleXt3aWR0aDoxMDAlO3BhZGRpbmc6MH0ueXRwLWFkLXN1cnZleS1xdWVzdGlvbi10ZXh0e2ZvbnQtc2l6ZTozMnB4O2xpbmUtaGVpZ2h0OjQzcHg7bWFyZ2luLXJpZ2h0OjgwcHg7d2lkdGg6NDUwcHh9Lnl0cC1hZC1zdXJ2ZXktYW5zd2Vyc3t0b3A6NTdweDt3aWR0aDo1MDBweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXJ7aGVpZ2h0Ojc2cHh9Lnl0cC1hZC1zdXJ2ZXktbm9uZS1vZi10aGUtYWJvdmUsLnl0cC1hZC1zdXJ2ZXktc3VibWl0LWJ1dHRvbntoZWlnaHQ6NjdweDtmb250LXNpemU6MjcuNHB4fS55dHAtYWQtc3VydmV5LWFuc3dlci1idXR0b24sLnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b257Zm9udC1zaXplOjMycHg7bGluZS1oZWlnaHQ6NDNweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXItdG9nZ2xlLWJ1dHRvbiAueXRwLWFkLXRvZ2dsZS1idXR0b24taWNvbntoZWlnaHQ6MzJweDt3aWR0aDozMnB4Oy13ZWJraXQtZmxleDowIDAgMzJweDstd2Via2l0LWJveC1mbGV4OjA7ZmxleDowIDAgMzJweDttYXJnaW4tcmlnaHQ6MjBweH0ueXRwLWFkLXN1cnZleS1hbnN3ZXJzIC55dHAtYWQtc3VydmV5LW5vbmUtb2YtdGhlLWFib3Zle2hlaWdodDo3NnB4fS55dHAtYWQtc3VydmV5LXBsYXllci1vdmVybGF5LXN1Ym1pdHtib3R0b206NDVweH0ueXRwLWFkLXN1cnZleS1zdWJtaXQtYnV0dG9ue21hcmdpbi1yaWdodDoxMnB4O3BhZGRpbmctbGVmdDoyMHB4O3BhZGRpbmctcmlnaHQ6MTEwcHh9fS55dHAtYWQtdG9nZ2xlLWJ1dHRvbi10b29sdGlwe2Rpc3BsYXk6bm9uZX0ueXRwLWFkLXRvZ2dsZS1idXR0b246aG92ZXIgLnl0cC1hZC10b2dnbGUtYnV0dG9uLXRvb2x0aXB7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXJbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowfS55dHAtYWQtaW5zdHJlYW0tdXNlci1zZW50aW1lbnQtY29udGFpbmVyey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC40cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuNHMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjcpO2JvdHRvbToxNDdweDtkaXNwbGF5OmlubGluZS1ibG9jaztwb2ludGVyLWV2ZW50czphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7ei1pbmRleDo4NTB9Lnl0cC1lbWJlZCAueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWNvbnRhaW5lcntib3R0b206MTM5cHh9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXIueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LXNlbGVjdGVkey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC41cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTtiYWNrZ3JvdW5kOiM0NzgwZWV9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1kaXNsaWtlLWJ1dHRvbiwueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWxpa2UtYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWNvbnRhaW5lciAueXRwLWFkLXRvZ2dsZS1idXR0b24taWNvbntkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MjJweDtvcGFjaXR5Oi44O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoyMnB4fS55dHAtYWQtaW5zdHJlYW0tdXNlci1zZW50aW1lbnQtY29udGFpbmVyIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbi1sYWJlbHtjdXJzb3I6cG9pbnRlcn0ueXRwLWFkLWluc3RyZWFtLXVzZXItc2VudGltZW50LWxpa2UtYnV0dG9uIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbi1sYWJlbHtwYWRkaW5nOjEycHggMTBweCAxMnB4IDIwcHh9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1kaXNsaWtlLWJ1dHRvbiAueXRwLWFkLXRvZ2dsZS1idXR0b24tbGFiZWx7cGFkZGluZzoxMnB4IDIwcHggMTJweCAxMHB4fS55dHAtYWQtaW5zdHJlYW0tdXNlci1zZW50aW1lbnQtY29udGFpbmVyIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbjpob3ZlciAueXRwLWFkLXRvZ2dsZS1idXR0b24taWNvbntvcGFjaXR5OjF9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXIgLnl0cC1hZC10b2dnbGUtYnV0dG9uLnl0cC1hZC10b2dnbGUtYnV0dG9uLXRvZ2dsZWQgLnl0cC1hZC10b2dnbGUtYnV0dG9uLWljb257b3BhY2l0eToxfS55dHAtYWQtaW5zdHJlYW0tdXNlci1zZW50aW1lbnQtY29udGFpbmVyIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbi10b29sdGlwe2JhY2tncm91bmQ6cmdiYSgzMSwzMSwzMSwuNSk7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7aGVpZ2h0OjE4cHg7bGV0dGVyLXNwYWNpbmc6MDttYXJnaW46OXB4IDA7cGFkZGluZzo4cHggMTZweDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC1hZC1pbnN0cmVhbS11c2VyLXNlbnRpbWVudC1jb250YWluZXIgLnl0cC1hZC10b2dnbGUtYnV0dG9uOmhvdmVyIC55dHAtYWQtdG9nZ2xlLWJ1dHRvbi10b29sdGlwe2JvdHRvbTo0NnB4O3JpZ2h0OjIwcHh9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS10b3AtYmFyLWdyYWRpZW50c3tiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLC43NSkgNDAlLHJnYmEoMCwwLDAsMCkgOTklKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGNvbG9yLXN0b3AoNDAlLHJnYmEoMCwwLDAsLjc1KSksY29sb3Itc3RvcCg5OSUscmdiYSgwLDAsMCwwKSkpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLC43NSkgNDAlLHJnYmEoMCwwLDAsMCkgOTklKTtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstbW96LWp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy13ZWJraXQtanVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwKTtib3JkZXItYm90dG9tOm5vbmU7aGVpZ2h0OjQwcHg7d2lkdGg6MTAwJTtvcGFjaXR5Oi44O3RvcDowO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6ODUwfS55dHAtYWQtcGxheWVyLW92ZXJsYXktdG9wLWJhci1ncmFkaWVudHMgLnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbjpiZWZvcmV7Y29udGVudDpub25lfS55dHAtYWQtcGxheWVyLW92ZXJsYXktdG9wLWJhci1ncmFkaWVudHMgLnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbnttYXJnaW46YXV0byAxMXB4IGF1dG8gYXV0bztwb2ludGVyLWV2ZW50czphdXRvO3otaW5kZXg6ODUwfS55dHAtYWQtcGxheWVyLW92ZXJsYXktdG9wLWJhci1ncmFkaWVudHMgLnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbiAueXRwLWFkLWJ1dHRvbi10ZXh0e2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDpub3JtYWw7bWFyZ2luOmF1dG8gMDtwYWRkaW5nOjAgNHB4IDVweDt0ZXh0LXRyYW5zZm9ybTpjYXBpdGFsaXplO3RleHQtc2hhZG93OjFweCAxcHggMXB4IHJnYmEoMCwwLDAsLjc1KTtjb2xvcjojZmZmO3RleHQtZGVjb3JhdGlvbjpub25lfS55dHAtYWQtcGxheWVyLW92ZXJsYXktdG9wLWJhci1ncmFkaWVudHMgLnl0cC1hZC12aXNpdC1hZHZlcnRpc2VyLWJ1dHRvbiAueXRwLWFkLWJ1dHRvbi1pY29ue2Rpc3BsYXk6bm9uZX0ueXRwLWFkLXBsYXllci1vdmVybGF5LXRvcC1iYXItZ3JhZGllbnRzIC55dHAtdmlkZW8tYWQtdG9wLWJhci10aXRsZXstd2Via2l0LWZsZXg6MTstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjt3aGl0ZS1zcGFjZTpub3dyYXA7Y29sb3I6I2ZmZjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RleHQtc2hhZG93OjFweCAxcHggMXB4IHJnYmEoMCwwLDAsLjc1KTt0ZXh0LWRlY29yYXRpb246bm9uZTtvdmVyZmxvdzpoaWRkZW47cG9pbnRlci1ldmVudHM6YXV0bztjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MTRweDttYXgtd2lkdGg6NTAlO2hlaWdodDoxNnB4O2xpbmUtaGVpZ2h0Om5vcm1hbDttYXJnaW46MTBweCA1cHggNXB4IDEwcHg7ei1pbmRleDo4NTA7b3BhY2l0eTouOX0ueXRwLWFkLWNsaWNrYWJsZS1lbGVtZW50OmhvdmVye2N1cnNvcjpwb2ludGVyfS55dHAtYWQtdW5kZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEzMXB4O2xlZnQ6MDtoZWlnaHQ6Y2FsYygxMDAlIC0gMjYycHgpO3dpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVufS55dHAtYmlnLW1vZGUgLnl0cC1hZC11bmRlcmxheXtoZWlnaHQ6Y2FsYygxMDAlIC0gMjgwcHgpO3RvcDoxNDBweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC11bmRlcmxheXtoZWlnaHQ6Y2FsYygxMDAlIC0gMjIycHgpO3RvcDoxMTFweH0ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC11bmRlcmxheXtoZWlnaHQ6Y2FsYygxMDAlIC0gMTUwcHgpO3RvcDo3NXB4fS55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXVuZGVybGF5e2hlaWdodDpjYWxjKDEwMCUgLSAxMjJweCk7dG9wOjYxcHh9Lnl0cC1hZC11bmRlcmxheS1jb21wYW5pb257aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0ueXRwLWFkLXVuZGVybGF5LXNpZGUtY29udGFpbmVye2hlaWdodDoxMDAlO21heC1oZWlnaHQ6MTAwJTstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWp1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BhZGRpbmctdG9wOjEyNXB4O3BhZGRpbmctYm90dG9tOjEyNXB4fS55dHAtYWQtdW5kZXJsYXktbGVmdC1jb250YWluZXJ7bWFyZ2luLWxlZnQ6MiU7cGFkZGluZy1yaWdodDoyJX0ueXRwLWFkLXVuZGVybGF5LXJpZ2h0LWNvbnRhaW5lcnttYXJnaW4tbGVmdDo1Mi41JX0ueXRwLWFkLXVuZGVybGF5LWltYWdlLWNvbnRhaW5lcntib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjEpO2Rpc3BsYXk6YmxvY2s7bWluLWhlaWdodDo3MnB4O21pbi13aWR0aDo3MnB4O2JvcmRlci1yYWRpdXM6NTAlO21hcmdpbi1ib3R0b206MTZweDttYXgtd2lkdGg6MTQ0cHg7bWF4LWhlaWdodDoxNDRweDstd2Via2l0LWZsZXgtc2hyaW5rOjI7ZmxleC1zaHJpbms6MjtjdXJzb3I6cG9pbnRlcn0ueXRwLWFkLXVuZGVybGF5LWltYWdle3BvaW50ZXItZXZlbnRzOmF1dG87bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlO2JvcmRlci1yYWRpdXM6NTAlfS55dHAtYWQtdW5kZXJsYXktaGVhZGxpbmUtY29udGFpbmVye3dpZHRoOjEwMCU7LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWJvdHRvbTo0OHB4fS55dHAtYWQtdW5kZXJsYXktaGVhZGxpbmV7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2ZvbnQtc2l6ZToyLjV2dztmb250LXdlaWdodDo3MDA7dGV4dC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtbGluZS1jbGFtcDoyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuO3dvcmQtd3JhcDpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YnJlYWstd29yZDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTYwMHB4KXsueXRwLWFkLXVuZGVybGF5LWhlYWRsaW5le2ZvbnQtc2l6ZTo0MHB4fX0ueXRwLWFkLXVuZGVybGF5LWRlc2NyaXB0aW9ue3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNzUpO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxNnB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3BhZGRpbmctYm90dG9tOjQwcHh9Lnl0cC1hZC11bmRlcmxheS1kZXNjcmlwdGlvbi1jb250YWluZXJ7LXdlYmtpdC1mbGV4LXNocmluazoxO2ZsZXgtc2hyaW5rOjF9Lnl0cC1hZC11bmRlcmxheS1hY3Rpb24tYnV0dG9uLWNvbnRhaW5lcntkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWFkLXVuZGVybGF5LWNsaWNrYWJsZXt6LWluZGV4Ojg1MH0ueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b257YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMwMzAzMDM7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpjZW50ZXI7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czoxOHB4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxNHB4O3BhZGRpbmctbGVmdDoxMnB4O3BhZGRpbmctcmlnaHQ6MTJweDtoZWlnaHQ6MzZweH0ueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b24tbWVkaXVte2JvcmRlci1yYWRpdXM6MjRweDtmb250LXNpemU6MThweDtwYWRkaW5nLWxlZnQ6MTZweDtwYWRkaW5nLXJpZ2h0OjE2cHg7aGVpZ2h0OjQ4cHh9Lnl0cC1hZC11bmRlcmxheS1hY3Rpb24tYnV0dG9uLWxhcmdle2JvcmRlci1yYWRpdXM6MzJweDtmb250LXNpemU6MjJweDtwYWRkaW5nLWxlZnQ6MjRweDtwYWRkaW5nLXJpZ2h0OjI0cHg7aGVpZ2h0OjY0cHh9Lnl0cC1hZC11bmRlcmxheS1hY3Rpb24tYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2U5ZTllOX0ueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b24tYmx1ZXtiYWNrZ3JvdW5kLWNvbG9yOiMzZWE2ZmY7Y29sb3I6IzAzMDMwMztib3JkZXItcmFkaXVzOjJweH0ueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b24tYmx1ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiM2NmI4ZmZ9Lnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b246Zm9jdXN7b3V0bGluZTpub25lO2JvcmRlcjoycHggc29saWQgI2ZmZjtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiNmZmZ9Lnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAueXRwLWFkLXVuZGVybGF5LWFjdGlvbi1idXR0b24tYmx1ZTpmb2N1c3tvdXRsaW5lOm5vbmU7Ym9yZGVyOjJweCBzb2xpZCAjM2VhNmZmO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6IzNlYTZmZn0uaHRtbDUtdmlkZW8tY29udGFpbmVyLXRyYW5zaXRpb25pbmd7LXdlYmtpdC10cmFuc2l0aW9uOndpZHRoIDEuNXMsaGVpZ2h0IDEuNXMsbGVmdCAxLjVzLHRvcCAxLjVzO3RyYW5zaXRpb246d2lkdGggMS41cyxoZWlnaHQgMS41cyxsZWZ0IDEuNXMsdG9wIDEuNXN9Lnl0cC1hZC11bmRlcmxheS1hY3Rpb24tYnV0dG9uLXRyYW5zaXRpb257ei1pbmRleDotMX0uY29sb3ItY29udHJhc3QtZml4Lnl0cC1hZC1zdXJ2ZXl7YmFja2dyb3VuZC1jb2xvcjpibGFja30uY29sb3ItY29udHJhc3QtZml4IC55dHAtYWQtc3VydmV5LXF1ZXN0aW9uLWJhY2tncm91bmR7b3BhY2l0eTo2MCV9LmNvbG9yLWNvbnRyYXN0LWZpeCAueXRwLWFkLXN1cnZleS1hbnN3ZXItYnV0dG9uLC5jb2xvci1jb250cmFzdC1maXggLnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24sLmNvbG9yLWNvbnRyYXN0LWZpeCAueXRwLWFkLXN1cnZleS1xdWVzdGlvbi10ZXh0e2NvbG9yOndoaXRlfS5jb2xvci1jb250cmFzdC1maXggLnl0cC1hZC1zdXJ2ZXktYW5zd2VyLXRvZ2dsZS1idXR0b24gLnl0cC1hZC10b2dnbGUtYnV0dG9uLXVudG9nZ2xlZC1pY29uIHN2ZyBwYXRoOmZpcnN0LW9mLXR5cGV7ZmlsbDp3aGl0ZX0ueXRwLWFkLWJhZGdle2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtZmxleDtkaXNwbGF5OmlubGluZS1mbGV4O2xlZnQ6MDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkLWJhZGdlOmFmdGVye2NvbnRlbnQ6IsK3IjtwYWRkaW5nLWlubGluZTo0cHh9Lnl0cC1hZC1iYWRnZV9fcG9kLWluZGV4OmJlZm9yZXtjb250ZW50OiLCtyI7cGFkZGluZy1pbmxpbmU6NHB4IDNweH0ueXRwLWFkLWJhZGdlLS1zdGFya3tjb2xvcjojZmZmO29wYWNpdHk6Ljc1O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjI4cHh9Lnl0cC1hZC1iYWRnZS0tc3RhcmsgLnl0cC1hZC1iYWRnZV9fdGV4dHtmb250LXdlaWdodDo3MDB9Lnl0cC1hZC1iYWRnZS0tY2xlYW4tcGxheWVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtZmxleDtkaXNwbGF5OmlubGluZS1mbGV4O2xlZnQ6MDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWFkLWJhZGdlLS1zdGFyay1jbGVhbi1wbGF5ZXJ7Y29sb3I6I2ZmZjtvcGFjaXR5OjE7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MjhweDt0ZXh0LXNoYWRvdzowIDAgOHB4IHJnYmEoMCwwLDAsLjUpO2xldHRlci1zcGFjaW5nOi4zNXB4fS55dHAtYWQtYmFkZ2UtLXN0YXJrLWNsZWFuLXBsYXllciAueXRwLWFkLWJhZGdlX190ZXh0LS1jbGVhbi1wbGF5ZXJ7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjt0ZXh0LXNoYWRvdzowIDAgMTZweCByZ2JhKDAsMCwwLC41KX0ueXRwLWFkLWJhZGdlLS1zdGFyay1jbGVhbi1wbGF5ZXItaW9ze2xldHRlci1zcGFjaW5nOi4xcHh9Lnl0cC1hZC1ncmlkLWNhcmQtY29sbGVjdGlvbntkaXNwbGF5OmdyaWQ7Z2FwOjhweDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDEsbWlubWF4KDAsMWZyKSl9Lnl0cC1hZC1ncmlkLWNhcmQtdGV4dHttYXgtd2lkdGg6NTAwcHg7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMSk7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleC1ncm93OjE7ZmxleC1ncm93OjE7LXdlYmtpdC1hbGlnbi1zZWxmOnN0cmV0Y2g7YWxpZ24tc2VsZjpzdHJldGNoOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1ncmlkLWNhcmQtdGV4dF9fYnV0dG9ue21hcmdpbjoxMnB4IDE2cHggMTJweCAxMnB4fS55dHAtYWQtZ3JpZC1jYXJkLXRleHRfX21ldGFkYXRhey13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4LWdyb3c6MTtmbGV4LWdyb3c6MTttYXJnaW4tbGVmdDoxNnB4O21hcmdpbi10b3A6MTJweDttYXJnaW4tYm90dG9tOjEycHg7bWluLXdpZHRoOjB9Lnl0cC1hZC1ncmlkLWNhcmQtdGV4dF9fbWV0YWRhdGFfX2hlYWRsaW5le2NvbG9yOiNmZmY7Zm9udC1mYW1pbHk6WW91VHViZSBOb3RvLFJvYm90byxhcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47bWF4LWhlaWdodDoxLjhyZW07LXdlYmtpdC1saW5lLWNsYW1wOjE7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9Lnl0cC1hZC1ncmlkLWNhcmQtdGV4dF9fbWV0YWRhdGFfX2Rlc2NyaXB0aW9ue2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtYWQtZ3JpZC1jYXJkLXRleHRfX21ldGFkYXRhX19kZXNjcmlwdGlvbiA6Zmlyc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjFweDt3aWR0aDotd2Via2l0LW1heC1jb250ZW50O3dpZHRoOi1tb3otbWF4LWNvbnRlbnQ7d2lkdGg6bWF4LWNvbnRlbnR9Lnl0cC1hZC1ncmlkLWNhcmQtdGV4dF9fbWV0YWRhdGFfX2Rlc2NyaXB0aW9uIDpub3QoOmZpcnN0LWNoaWxkKXstd2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4OjE7ZmxleDoxfS55dHAtYWQtZ3JpZC1jYXJkLXRleHRfX21ldGFkYXRhX19kZXNjcmlwdGlvbl9fbGluZXtjb2xvcjojZmZmO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbn0ueXRwLWFkLXBvZC1pbmRleHtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdztkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWZsZXg7ZGlzcGxheTppbmxpbmUtZmxleDtsZWZ0OjA7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1hZC1wb2QtaW5kZXg6YmVmb3Jle2NvbnRlbnQ6IuKAoiI7cGFkZGluZy1pbmxpbmU6NHB4IDNweH0ueXRwLWFkLXBvZC1pbmRleC0tc3Rhcmt7Y29sb3I6I2ZmZjtvcGFjaXR5OjE7Zm9udC1zaXplOjEycHg7bGV0dGVyLXNwYWNpbmc6bm9ybWFsO2xpbmUtaGVpZ2h0OjI4cHg7dGV4dC1zaGFkb3c6MCAwIDE2cHggcmdiYSgwLDAsMCwuNSk7Zm9udC1mYW1pbHk6WW91VHViZSBOb3RvLFJvYm90byxhcmlhbCxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWFkLXBvZC1pbmRleC0tbXdlYntmb250LXdlaWdodDo2MDB9Lnl0cC1hZC1wb2QtaW5kZXgtLW13ZWItaW9ze2xldHRlci1zcGFjaW5nOi0uMnB4fS55dHAtYXV0b2hpZGUgLnl0cC1hZC1wb2QtaW5kZXgtLWF1dG9oaWRle2Rpc3BsYXk6bm9uZTt2aXNpYmlsaXR5OmhpZGRlbjtvcGFjaXR5OjB9Lnl0cC1hZC1idXR0b24tdm17ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7Zm9udC13ZWlnaHQ6NTAwO2JvcmRlcjpub25lOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BvaW50ZXItZXZlbnRzOmF1dG87Y3Vyc29yOnBvaW50ZXI7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtYWQtYnV0dG9uLXZtX190ZXh0e3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWFkLWJ1dHRvbi12bV9faWNvbnstd2Via2l0LWZsZXgtc2hyaW5rOjA7ZmxleC1zaHJpbms6MH0ueXRwLWFkLWJ1dHRvbi12bS0tc2l6ZS1jb21wYWN0e2hlaWdodDozMnB4O2xpbmUtaGVpZ2h0OjMycHg7Ym9yZGVyLXJhZGl1czoxNnB4O2ZvbnQtc2l6ZToxMnB4O3BhZGRpbmc6MCAxMnB4fS55dHAtYWQtYnV0dG9uLXZtLS1zaXplLWNvbXBhY3QgLnl0cC1hZC1idXR0b24tdm1fX2ljb257aGVpZ2h0OjE2cHg7d2lkdGg6MTZweH0ueXRwLWFkLWJ1dHRvbi12bS0tc2l6ZS1jb21wYWN0IC55dHAtYWQtYnV0dG9uLXZtX19pY29uLS10cmFpbGluZ3std2Via2l0LW1hcmdpbi1zdGFydDo0cHg7bWFyZ2luLWlubGluZS1zdGFydDo0cHg7LXdlYmtpdC1tYXJnaW4tZW5kOi00cHg7bWFyZ2luLWlubGluZS1lbmQ6LTRweH0ueXRwLWFkLWJ1dHRvbi12bS0tc2l6ZS1jb21wYWN0IC55dHAtYWQtYnV0dG9uLXZtX19pY29uLS1sZWFkaW5ney13ZWJraXQtbWFyZ2luLXN0YXJ0Oi00cHg7bWFyZ2luLWlubGluZS1zdGFydDotNHB4Oy13ZWJraXQtbWFyZ2luLWVuZDo0cHg7bWFyZ2luLWlubGluZS1lbmQ6NHB4fS55dHAtYWQtYnV0dG9uLXZtLS1zaXplLWRlZmF1bHR7aGVpZ2h0OjM2cHg7bGluZS1oZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjE4cHg7Zm9udC1zaXplOjE0cHg7cGFkZGluZzowIDE2cHh9Lnl0cC1hZC1idXR0b24tdm0tLXNpemUtZGVmYXVsdCAueXRwLWFkLWJ1dHRvbi12bV9faWNvbntoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dHAtYWQtYnV0dG9uLXZtLS1zaXplLWRlZmF1bHQgLnl0cC1hZC1idXR0b24tdm1fX2ljb24tLXRyYWlsaW5ney13ZWJraXQtbWFyZ2luLXN0YXJ0OjZweDttYXJnaW4taW5saW5lLXN0YXJ0OjZweDstd2Via2l0LW1hcmdpbi1lbmQ6LTZweDttYXJnaW4taW5saW5lLWVuZDotNnB4fS55dHAtYWQtYnV0dG9uLXZtLS1zaXplLWRlZmF1bHQgLnl0cC1hZC1idXR0b24tdm1fX2ljb24tLWxlYWRpbmd7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6LTZweDttYXJnaW4taW5saW5lLXN0YXJ0Oi02cHg7LXdlYmtpdC1tYXJnaW4tZW5kOjZweDttYXJnaW4taW5saW5lLWVuZDo2cHh9Lnl0cC1hZC1idXR0b24tdm0tLXNpemUtbGFyZ2V7aGVpZ2h0OjQ4cHg7bGluZS1oZWlnaHQ6NDhweDtib3JkZXItcmFkaXVzOjI0cHg7Zm9udC1zaXplOjE4cHg7cGFkZGluZzowIDI0cHh9Lnl0cC1hZC1idXR0b24tdm0tLXNpemUtbGFyZ2UgLnl0cC1hZC1idXR0b24tdm1fX2ljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRwLWFkLWJ1dHRvbi12bS0tc2l6ZS1sYXJnZSAueXRwLWFkLWJ1dHRvbi12bV9faWNvbi0tdHJhaWxpbmd7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6OHB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6OHB4Oy13ZWJraXQtbWFyZ2luLWVuZDotOHB4O21hcmdpbi1pbmxpbmUtZW5kOi04cHh9Lnl0cC1hZC1idXR0b24tdm0tLXNpemUtbGFyZ2UgLnl0cC1hZC1idXR0b24tdm1fX2ljb24tLWxlYWRpbmd7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6LThweDttYXJnaW4taW5saW5lLXN0YXJ0Oi04cHg7LXdlYmtpdC1tYXJnaW4tZW5kOjhweDttYXJnaW4taW5saW5lLWVuZDo4cHh9Lnl0cC1hZC1idXR0b24tdm0tLXN0eWxlLXRyYW5zcGFyZW50e2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ueXRwLWFkLWJ1dHRvbi12bS0tc3R5bGUtdHJhbnNwYXJlbnQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4yKX0ueXRwLWFkLWJ1dHRvbi12bS0tc3R5bGUtZmlsbGVke2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0fS55dHAtYWQtYnV0dG9uLXZtLS1zdHlsZS1maWxsZWQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDU1NmJmfS55dHAtYWQtYnV0dG9uLXZtLS1zdHlsZS1maWxsZWQtd2hpdGV7Y29sb3I6IzBmMGYwZjtiYWNrZ3JvdW5kLWNvbG9yOiNmMWYxZjF9Lnl0cC1hZC1idXR0b24tdm0tLXN0eWxlLWZpbGxlZC13aGl0ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNkOWQ5ZDl9Lnl0cC1hZC1idXR0b24tdm0tLXN0eWxlLWZpbGxlZC13aGl0ZTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojZDlkOWQ5fS55dHAtYWQtYnV0dG9uLXZtLS1zdHlsZS1maWxsZWQtZGFya3tiYWNrZ3JvdW5kLWNvbG9yOiMzZWE2ZmY7Y29sb3I6cmdiKDE1LDE1LDE1KX0ueXRwLWFkLWJ1dHRvbi12bS0tc3R5bGUtZmlsbGVkLWRhcms6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojNjViOGZmfS55dHAtYWQtYnV0dG9uLXZtLS1zdHlsZS1tb25vLWZpbGxlZHtjb2xvcjojZjFmMWYxO2JhY2tncm91bmQtY29sb3I6IzBmMGYwZn0ueXRwLWFkLWJ1dHRvbi12bS0tc3R5bGUtbW9uby1maWxsZWQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojM2YzZjNmfS55dHAtYWQtYnV0dG9uLXZtLS1zdHlsZS1tb25vLWZpbGxlZDphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojM2YzZjNmfS55dHAtYWQtYnV0dG9uLXZtLS1pY29uLW9ubHl7cGFkZGluZzowfS55dHAtYWQtYnV0dG9uLXZtLS1pY29uLW9ubHkgLnl0cC1hZC1idXR0b24tdm1fX2ljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweDtwYWRkaW5nOjAgNnB4fS55dHAtYWQtZGlzY2xvc3VyZS1iYW5uZXJ7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpO2JvcmRlci1sZWZ0OjRweCBzb2xpZCAjZmJjMDJkO2JvcmRlci1yYWRpdXM6NHB4O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtZmxleDtkaXNwbGF5OmlubGluZS1mbGV4O2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO21heC13aWR0aDozMTJweDtwYWRkaW5nOjhweH0ueXRwLWFkLWRpc2Nsb3N1cmUtYmFubmVyX190ZXh0e2JhY2tncm91bmQ6bm9uZTtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpOy13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXgtZ3JvdzoxO2ZsZXgtZ3JvdzoxO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxZW07cGFkZGluZzo4cHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS55dHAtYWQtZGlzY2xvc3VyZS1iYW5uZXJfX2NoZXZyb257LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjA7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRwLWFkLW5vdGlmaWNhdGlvbi1jb250YWluZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC40KTtib3R0b206ODZweDtjb2xvcjojZmZmO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxNnB4O2hlaWdodDo1MnB4O2xpbmUtaGVpZ2h0OjUycHg7bWluLXdpZHRoOjgwcHg7b3BhY2l0eToxO3BhZGRpbmc6MCAyMHB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dGV4dC1hbGlnbjpjZW50ZXI7dmVydGljYWwtYWxpZ246bWlkZGxlO3otaW5kZXg6NDV9Lnl0cC1lbWJlZCAueXRwLWFkLW5vdGlmaWNhdGlvbi1jb250YWluZXJ7Ym90dG9tOjc4cHh9Lnl0cC1hZC1ub3RpZmljYXRpb24tY29udGFpbmVyW2FyaWEtaGlkZGVuPXRydWVdey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO29wYWNpdHk6MH0ueXRwLWJpZy1tb2RlIC55dHAtYWQtbm90aWZpY2F0aW9uLWNvbnRhaW5lcntib3R0b206OTVweH0ueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1ub3RpZmljYXRpb24tY29udGFpbmVye2JvdHRvbToyNXB4fS55dHAtcHJldmlldy1hZHtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6NHB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjIycHg7Ym90dG9tOjk1cHg7ei1pbmRleDoxMDAwOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC40cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuNHMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtjdXJzb3I6ZGVmYXVsdDtwb2ludGVyLWV2ZW50czphdXRvfS55dHAtcHJldmlldy1hZFthcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtcHJldmlldy1hZF9fdGV4dHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzouMXB4O3BhZGRpbmc6MCA4cHg7dGV4dC1hbGlnbjpjZW50ZXI7dmVydGljYWwtYWxpZ246bWlkZGxlO3doaXRlLXNwYWNlOnByZTt3aWR0aDphdXRvfS55dHAtcHJldmlldy1hZF9fdGV4dC0tZm9udC0tc21hbGx7Zm9udC1zaXplOjEycHg7aGVpZ2h0OmF1dG87bWluLXdpZHRoOjB9Lnl0cC1wcmV2aWV3LWFkX190ZXh0LS1wYWRkaW5nLS13aWRle3BhZGRpbmc6MCAxNHB4fS55dHAtcHJldmlldy1hZF9faW1hZ2V7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjY1cHg7aGVpZ2h0OjM2cHg7LW8tb2JqZWN0LWZpdDpjb3ZlcjtvYmplY3QtZml0OmNvdmVyfS55dHAtYmlnLW1vZGUgLnl0cC1wcmV2aWV3LWFke3JpZ2h0OjQwcHg7Ym90dG9tOjEwNHB4fS55dHAtc21hbGwtbW9kZSAueXRwLXByZXZpZXctYWR7cmlnaHQ6MTJweDtib3R0b206NzVweH0ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1wcmV2aWV3LWFke3JpZ2h0OjE2cHg7Ym90dG9tOjM5cHh9Lnl0cC1oaWRlLWNvbnRyb2xzIC55dHAtcHJldmlldy1hZHtib3R0b206MjVweH0ueXRwLWF1dG9oaWRlIC55dHAtYWQtZHVyYXRpb24tcmVtYWluaW5nLWF1dG9oaWRle2Rpc3BsYXk6bm9uZX0ueXRwLWRpc3BsYXktdW5kZXJsYXktdGV4dC1ncmlkLWNhcmRze2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9Lnl0cC1kaXNwbGF5LXVuZGVybGF5LXRleHQtZ3JpZC1jYXJkc19fY29udGVudF9jb250YWluZXJ7aGVpZ2h0OjEwMCU7bWF4LWhlaWdodDoxMDAlOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otanVzdGlmeS1jb250ZW50OmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cGFkZGluZy1sZWZ0OjY0cHg7cGFkZGluZy1yaWdodDo2NHB4O21hcmdpbi1sZWZ0OmNhbGMoNjAlICsgMTZweCl9Lnl0cC1kaXNwbGF5LXVuZGVybGF5LXRleHQtZ3JpZC1jYXJkc19fY29udGVudF9jb250YWluZXJfX2hlYWRlcntkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otanVzdGlmeS1jb250ZW50OnN0YXJ0Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OnN0YXJ0Oy13ZWJraXQtYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OnN0YXJ0Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O3dpZHRoOjEwMCU7bWF4LXdpZHRoOjUwMHB4O21hcmdpbi1ib3R0b206MjRweH0ueXRwLWRpc3BsYXktdW5kZXJsYXktdGV4dC1ncmlkLWNhcmRzX19jb250ZW50X2NvbnRhaW5lcl9faGVhZGVyX19hZF9hdmF0YXJ7cG9pbnRlci1ldmVudHM6YXV0bztjdXJzb3I6cG9pbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDttYXJnaW4tcmlnaHQ6MTZweH0ueXRwLWRpc3BsYXktdW5kZXJsYXktdGV4dC1ncmlkLWNhcmRzX19jb250ZW50X2NvbnRhaW5lcl9faGVhZGVyX19oZWFkbGluZXtjb2xvcjojZmZmO2ZvbnQtZmFtaWx5OllvdVR1YmUgTm90byxSb2JvdG8sYXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MjBweDtmb250LXdlaWdodDo5MDA7bGluZS1oZWlnaHQ6MjRweDtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC1saW5lLWNsYW1wOjE7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9Lnl0cC1kaXNwbGF5LXVuZGVybGF5LXRleHQtZ3JpZC1jYXJkc19fY29udGVudF9jb250YWluZXJfX2FkX2J1dHRvbntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDttYXJnaW4tdG9wOjI0cHg7d2lkdGg6MTAwJTttYXgtd2lkdGg6NTAwcHg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0cC1kaXNwbGF5LXVuZGVybGF5LXRleHQtZ3JpZC1jYXJkc19fY29udGVudF9jb250YWluZXJfX2FkX2dyaWRfY2FyZF9jb2xsZWN0aW9ue3dpZHRoOjEwMCU7bWF4LXdpZHRoOjUwMHB4O292ZXJmbG93OmhpZGRlbiBhdXRvfS55dHAtZGlzcGxheS11bmRlcmxheS10ZXh0LWdyaWQtY2FyZHNfX2NvbnRlbnRfY29udGFpbmVyX19hZF9idXR0b24+YnV0dG9ue3dpZHRoOjEwMCU7bWF4LXdpZHRoOjUwMHB4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dHAtZGlzcGxheS11bmRlcmxheS10ZXh0LWdyaWQtY2FyZHMgLnl0cC1hZC1hdmF0YXItLXNpemUtcmVzcG9uc2l2ZXt3aWR0aDo0OHB4O2hlaWdodDo0OHB4fS55dHAtaW1hZ2UtYmFja2dyb3VuZC0tZ3JhZGllbnQtdmVydGljYWx7aW5zZXQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApIDUwJSxyZ2JhKDAsMCwwLC44KSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxsZWZ0IGJvdHRvbSxjb2xvci1zdG9wKDUwJSxyZ2JhKDAsMCwwLDApKSx0byhyZ2JhKDAsMCwwLC44KSkpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLDApIDUwJSxyZ2JhKDAsMCwwLC44KSk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KX0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZHtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdztwYWRkaW5nOjEycHg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjk1KTtjdXJzb3I6cG9pbnRlcjttYXgtd2lkdGg6NDAwcHg7b3ZlcmZsb3c6aGlkZGVuO3BvaW50ZXItZXZlbnRzOmF1dG87LXdlYmtpdC10cmFuc2l0aW9uOndpZHRoIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIC41cyxtYXgtd2lkdGggLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAuNXMsbWF4LXdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2ZmZn0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZC0tbGFyZ2V7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7bWluLXdpZHRoOjIwMHB4fS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkLS1sYXJnZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpfS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkLS1pbmFjdGl2ZXstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjAwJSk7d2lkdGg6MDttYXgtd2lkdGg6MH0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fYXZhdGFyX2FuZF90ZXh0X2NvbnRhaW5lci0tbGFyZ2V7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1hbGlnbi1zZWxmOnN0YXJ0O2FsaWduLXNlbGY6c3RhcnR9Lnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmRfX2FkX2F2YXRhci0tbGFyZ2V7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcn0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fdGV4dF9jb250YWluZXJ7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BhZGRpbmc6MCAyMHB4IDAgOHB4O21heC13aWR0aDoxOTJweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmRfX2hlYWRsaW5le2Rpc3BsYXk6LXdlYmtpdC1ib3g7Y29sb3I6IzBmMGYwZjtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoyMHB4O2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWw7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtbGluZS1jbGFtcDoyfS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19oZWFkbGluZS0tbGFyZ2V7Y29sb3I6I2RkZH0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fZGVzY3JpcHRpb257Y29sb3I6IzYwNjA2MDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNnB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fZGVzY3JpcHRpb24tLWxhcmdle2NvbG9yOiNkZGR9Lnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmQgLnl0cC1hZC1idXR0b24tdm17bWF4LXdpZHRoOjE0MHB4fS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19idXR0b24tLWxhcmdle21hcmdpbi10b3A6OHB4O21pbi13aWR0aDoxMDAlOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOiMwZjBmMGY7YmFja2dyb3VuZC1jb2xvcjojM2VhNmZmfS55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19idXR0b24tLWxhcmdlOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzY1YjhmZn0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmQsLnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJke29wYWNpdHk6Ljg2O3BhZGRpbmc6OHB4O21pbi1oZWlnaHQ6NDBweDttYXgtd2lkdGg6MTkwcHh9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkLS1sYXJnZSwueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmQtLWxhcmdle21pbi13aWR0aDphdXRvfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZC0taW5hY3RpdmUsLnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkLS1pbmFjdGl2ZXt3aWR0aDowO21heC13aWR0aDowfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZCAueXRwLWFkLWJ1dHRvbi12bSwueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmQgLnl0cC1hZC1idXR0b24tdm17ZGlzcGxheTpub25lfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9faGVhZGxpbmUsLnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19oZWFkbGluZXtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNnB4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fZGVzY3JpcHRpb24sLnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19kZXNjcmlwdGlvbntmb250LXNpemU6MTBweDtsaW5lLWhlaWdodDoxNHB4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWFkLWF2YXRhci1sb2NrdXAtY2FyZF9fZGVzY3JpcHRpb24tLWhpZGRlbi0taW4tLXNtYWxsLS1wbGF5ZXIsLnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX19kZXNjcmlwdGlvbi0taGlkZGVuLS1pbi0tc21hbGwtLXBsYXllcntkaXNwbGF5Om5vbmV9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkX190ZXh0X2NvbnRhaW5lciwueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmRfX3RleHRfY29udGFpbmVye3BhZGRpbmc6MCA0cHggMCA2cHg7bWF4LXdpZHRoOjE0NnB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtYXZhdGFyLWxvY2t1cC1jYXJkey13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bSxyZ2JhKDAsMCwwLC42KSk7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmRfX2hlYWRsaW5le2NvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10ZXh0LXByaW1hcnksI2ZmZil9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1hZC1hdmF0YXItbG9ja3VwLWNhcmRfX2Rlc2NyaXB0aW9ue2NvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10ZXh0LXNlY29uZGFyeSxyZ2JhKDI1NSwyNTUsMjU1LC43KSl9Lnl0cC1hZC1wZXJzaXN0ZW50LXByb2dyZXNzLWJhci1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOi0zcHg7d2lkdGg6MTAwJTtoZWlnaHQ6M3B4O2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMik7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3otaW5kZXg6Mzh9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1wcm9ncmVzcy1iYXIgLnl0cC1hZC1wZXJzaXN0ZW50LXByb2dyZXNzLWJhci1jb250YWluZXIsLnl0cC1hdXRvaGlkZSAueXRwLWFkLXBlcnNpc3RlbnQtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcntvcGFjaXR5OjE7Ym90dG9tOjA7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYWQtcGxheWVyLW92ZXJsYXktcHJvZ3Jlc3MtYmFyIC55dHAtYWQtcGVyc2lzdGVudC1wcm9ncmVzcy1iYXItY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6IzIyMjtoZWlnaHQ6NHB4fS55dHAtYWQtcGxheWVyLW92ZXJsYXktcHJvZ3Jlc3MtYmFyIC55dHAtYWQtcGVyc2lzdGVudC1wcm9ncmVzcy1iYXItY29udGFpbmVyLS1jbGVhbi1wbGF5ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjIyO2hlaWdodDozcHh9Lnl0cC1hZC1wZXJzaXN0ZW50LXByb2dyZXNzLWJhcntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7Ym90dG9tOjA7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZC1jb2xvcjojZmMwfS55dHAtcGxheWVyLW1pbmltaXplZC55dHAtbWluaXBsYXllci1hbHRlcm5hdGUtdWkgLnl0cC1hZC1wZXJzaXN0ZW50LXByb2dyZXNzLWJhci1jb250YWluZXJ7d2lkdGg6Y2FsYygxMDAlIC0gMjRweCk7bGVmdDoxMnB4O2JvdHRvbToxMnB4fS55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0e3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Ym90dG9tOjA7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2JvdHRvbTo2NXB4O2N1cnNvcjpkZWZhdWx0O2xlZnQ6MjJweDtwb2ludGVyLWV2ZW50czphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtc2hhZG93OjAgMCA0cHggcmdiYSgwLDAsMCwuNzUpO3otaW5kZXg6ODUwOy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXIgLnl0cC1hZC1kdXJhdGlvbi1yZW1haW5pbmd7bWFyZ2luLWxlZnQ6MH0ueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVye2JvdHRvbTo5NXB4O2xlZnQ6MjJweDtwb2ludGVyLWV2ZW50czphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6ODUwO2JvcmRlci1yYWRpdXM6OHB4O292ZXJmbG93OmhpZGRlbjstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX3NraXAtb3ItcHJldmlldy1jb250YWluZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtyaWdodDowO3Bvc2l0aW9uOmFic29sdXRlfS55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1kaXNjbG9zdXJlLWJhbm5lci1jb250YWluZXJ7Ym9yZGVyLXJhZGl1czowO2JvdHRvbTphdXRvO2N1cnNvcjpkZWZhdWx0O2hlaWdodDphdXRvO2xlZnQ6MjJweDtwb2ludGVyLWV2ZW50czphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0MnB4O3otaW5kZXg6ODUwfS55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0IC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1kaXNjbG9zdXJlLWJhbm5lci1jb250YWluZXJ7ei1pbmRleDoyN30ueXRwLWJpZy1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lcntib3R0b206NzRweDtsZWZ0OjQwcHh9Lnl0cC1iaWctbW9kZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVye2xlZnQ6NDBweDtib3R0b206MTA0cHh9Lnl0cC1iaWctbW9kZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtZGlzY2xvc3VyZS1iYW5uZXItY29udGFpbmVye2xlZnQ6NDBweDt0b3A6NjRweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2xlZnQ6MTJweDtib3R0b206NDVweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX3BsYXllci1jYXJkLWNvbnRhaW5lcntsZWZ0OjEycHg7Ym90dG9tOjc1cHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1kaXNjbG9zdXJlLWJhbm5lci1jb250YWluZXJ7bGVmdDoxMnB4O3RvcDoxMnB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lcntib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDE0cHgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAuYWQtc2ltcGxlLWF0dHJpYnV0ZWQtc3RyaW5nLC55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAueXRwLWFkLXBvZC1pbmRleCwueXRwLWRlbGhpLW1vZGVybiAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXIgLnl0cC12aXNpdC1hZHZlcnRpc2VyLWxpbmtfX3RleHR7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAueXRwLWFkLWJ1dHRvbnstd2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMnB4ICMwMDApO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMnB4ICMwMDApfS55dHAtZGVsaGktbW9kZXJuIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19wbGF5ZXItY2FyZC1jb250YWluZXJ7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyA1MHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgMTRweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19wbGF5ZXItY2FyZC1jb250YWluZXJ7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyA1MHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMTRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAuYWQtc2ltcGxlLWF0dHJpYnV0ZWQtc3RyaW5nLC55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXIgLnl0cC1hZC1wb2QtaW5kZXgsLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAueXRwLXZpc2l0LWFkdmVydGlzZXItbGlua19fdGV4dHt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciAueXRwLWFkLWJ1dHRvbnstd2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMnB4ICMwMDApO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMnB4ICMwMDApfS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgNTBweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1iaWctbW9kZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXJ7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAxNHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWJpZy1tb2RlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19wbGF5ZXItY2FyZC1jb250YWluZXJ7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyA1MHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2xlZnQ6MTZweDtib3R0b206OXB4fS55dHAtcGxheWVyLW1pbmltaXplZC55dHAtbWVudS1zaG93biAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVye2xlZnQ6MTZweDtib3R0b206MzlweH0ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWRpc2Nsb3N1cmUtYmFubmVyLWNvbnRhaW5lcntsZWZ0OjE2cHg7dG9wOjE2cHh9Lnl0cC1hdXRvaGlkZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXIsLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWF1dG9oaWRlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19hZC1pbmZvLWNvbnRhaW5lciwueXRwLWhpZGUtY29udHJvbHMgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVyLC55dHAtaXYtZHJhd2VyLW9wZW4gLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVye2JvdHRvbToxNXB4Oy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1hdXRvaGlkZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVyLC55dHAtZGVsaGktbW9kZXJuLnl0cC1hdXRvaGlkZSAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fcGxheWVyLWNhcmQtY29udGFpbmVye2JvdHRvbTo0NXB4Oy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWF1dG9oaWRlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19wbGF5ZXItY2FyZC1jb250YWluZXJ7Ym90dG9tOjNweHZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0LDQ4cHgpMjRweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtc21hbGwtbW9kZS55dHAtYXV0b2hpZGUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXRfX2FkLWluZm8tY29udGFpbmVyLC55dHAtc21hbGwtbW9kZS55dHAtaGlkZS1jb250cm9scyAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXIsLnl0cC1zbWFsbC1tb2RlLnl0cC1pdi1kcmF3ZXItb3BlbiAueXRwLWFkLXBsYXllci1vdmVybGF5LWxheW91dF9fYWQtaW5mby1jb250YWluZXJ7Ym90dG9tOjdweH0ueXRwLXNtYWxsLW1vZGUueXRwLWF1dG9oaWRlIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0X19wbGF5ZXItY2FyZC1jb250YWluZXJ7Ym90dG9tOjM3cHh9Lnl0cC1hZC1hdmF0YXItLXNpemUteHhze3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHh9Lnl0cC1hZC1hdmF0YXItLXNpemUteHN7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRwLWFkLWF2YXRhci0tc2l6ZS1ze3dpZHRoOjMycHg7aGVpZ2h0OjMycHh9Lnl0cC1hZC1hdmF0YXItLXNpemUtbXt3aWR0aDozNnB4O2hlaWdodDozNnB4fS55dHAtYWQtYXZhdGFyLS1zaXplLWx7d2lkdGg6NTZweDtoZWlnaHQ6NTZweH0ueXRwLWFkLWF2YXRhci0tc2l6ZS14bHt3aWR0aDo3MnB4O2hlaWdodDo3MnB4fS55dHAtYWQtYXZhdGFyLS1jaXJjdWxhcntib3JkZXItcmFkaXVzOjUwJX0ueXRwLWFkLWF2YXRhci0tcm91bmRlZC1jb3JuZXJ7Ym9yZGVyLXJhZGl1czoyMCV9Lnl0cC1hZC1kZXRhaWxzLWxpbmV7ZGlzcGxheTpibG9ja30ueXRwLWFkLWRldGFpbHMtbGluZV9fdGV4dC0tc3R5bGUtc3RhbmRhcmR7Y29sb3I6I2FhYTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MjBweDttYXgtaGVpZ2h0Om5vbmU7cGFkZGluZy1ib3R0b206MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDoxOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbH0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXR7ei1pbmRleDo2NDtiYWNrZ3JvdW5kOndoaXRlO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlO2JhY2tncm91bmQtc2l6ZTpjb3ZlcjstbW96LWJhY2tncm91bmQtc2l6ZTpjb3Zlcjstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3Zlcn0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX2JhY2tncm91bmQtaW1hZ2UtY29udGFpbmVye3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDo2NTtib3JkZXI6bm9uZX0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXQgLnl0cC1pbWFnZS1iYWNrZ3JvdW5kLWltYWdle2JhY2tncm91bmQtc2l6ZTpjb3ZlcjstbW96LWJhY2tncm91bmQtc2l6ZTpjb3Zlcjstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3Zlcjstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JvcmRlcjpub25lO2Rpc3BsYXk6YmxvY2t9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50e3otaW5kZXg6NjU7cG9pbnRlci1ldmVudHM6bm9uZTtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjB9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXB7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7ZGlzcGxheTpibG9jaztsZWZ0OjUwJTtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt0b3A6NTAlO21hcmdpbi1sZWZ0Oi0yMTVweDt3aWR0aDo0MzBweDtwYWRkaW5nOjAgMTZweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXBfX2FkLWF2YXRhci1jb250YWluZXJ7cG9pbnRlci1ldmVudHM6YXV0bztjdXJzb3I6cG9pbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleH0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX2NvbnRlbnRfX2xvY2t1cF9faGVhZGxpbmUtY29udGFpbmVye3BvaW50ZXItZXZlbnRzOmF1dG87Y3Vyc29yOnBvaW50ZXI7d2lkdGg6LXdlYmtpdC1maXQtY29udGVudDt3aWR0aDotbW96LWZpdC1jb250ZW50O3dpZHRoOmZpdC1jb250ZW50O21hcmdpbjowIGF1dG99Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXBfX2hlYWRsaW5le3BhZGRpbmc6MjhweCAwIDEwcHg7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MjhweDtmb250LXdlaWdodDo5MDA7bGluZS1oZWlnaHQ6MzRweDttYXgtaGVpZ2h0Om5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjJ9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXBfX2RldGFpbHMtbGluZS1jb250YWluZXJ7cG9pbnRlci1ldmVudHM6YXV0bztjdXJzb3I6cG9pbnRlcjt3aGl0ZS1zcGFjZTpub3JtYWw7d2lkdGg6LXdlYmtpdC1maXQtY29udGVudDt3aWR0aDotbW96LWZpdC1jb250ZW50O3dpZHRoOmZpdC1jb250ZW50O21hcmdpbjowIGF1dG99Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXBfX2FkLWJ1dHRvbi1jb250YWluZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7cGFkZGluZzo2cHggMDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX2NvbnRlbnRfX2luc3RyZWFtLWluZm8tY29udGFpbmVye2JvdHRvbTo2cHg7Y3Vyc29yOmRlZmF1bHQ7bGVmdDoxOHB4O3BvaW50ZXItZXZlbnRzOmF1dG87cG9zaXRpb246YWJzb2x1dGU7dGV4dC1zaGFkb3c6MCAwIDRweCByZ2JhKDAsMCwwLC43NSk7ei1pbmRleDo4NTA7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtdmlkZW8taW50ZXJzdGl0aWFsLWJ1dHRvbmVkLWNlbnRlcmVkLWxheW91dCAueXRwLWFkLWJhZGdlOmFmdGVye3BhZGRpbmctcmlnaHQ6dW5zZXR9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0IC55dHAtYWQtYmFkZ2V7bWFyZ2luLWxlZnQ6NXB4fS55dHAtdmlkZW8taW50ZXJzdGl0aWFsLWJ1dHRvbmVkLWNlbnRlcmVkLWxheW91dCAueXRwLWFkLWRldGFpbHMtbGluZXtwYWRkaW5nOjZweCAwIDIycHh9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0IC55dHAtYWQtYnV0dG9uLXZtOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0Oi02cHggMDtjdXJzb3I6cG9pbnRlcn0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX3RpbWVkLXBpZS1jb3VudGRvd24tY29udGFpbmVye2JvdHRvbTphdXRvO2xlZnQ6YXV0bzt0b3A6NHB4O3JpZ2h0OjZweDtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6NjV9Lnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0IC55dHAtYWQtYXZhdGFyLS1zaXplLXJlc3BvbnNpdmV7d2lkdGg6NjRweDtoZWlnaHQ6NjRweH0ueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXQgLnl0cC1hZC1kZXRhaWxzLWxpbmVfX3RleHQtLXN0eWxlLXJlc3BvbnNpdmV7Y29sb3I6I2FhYTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MjBweDttYXgtaGVpZ2h0Om5vbmU7cGFkZGluZy1ib3R0b206MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDoxOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbH0ueXRwLXNtYWxsLW1vZGUgLnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0X19jb250ZW50X19sb2NrdXB7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7ZGlzcGxheTpibG9jazt0b3A6NTAlO3Bvc2l0aW9uOmFic29sdXRlO21hcmdpbi1sZWZ0OjA7bGVmdDowO3RleHQtYWxpZ246bGVmdDt3aWR0aDoyNDVweDtwYWRkaW5nOjAgMCAwIDE2cHg7LXdlYmtpdC1ib3gtc2l6aW5nOmNvbnRlbnQtYm94O2JveC1zaXppbmc6Y29udGVudC1ib3h9Lnl0cC1zbWFsbC1tb2RlIC55dHAtdmlkZW8taW50ZXJzdGl0aWFsLWJ1dHRvbmVkLWNlbnRlcmVkLWxheW91dF9fY29udGVudF9fbG9ja3VwX19hZC1hdmF0YXItY29udGFpbmVye3BvaW50ZXItZXZlbnRzOmF1dG87Y3Vyc29yOnBvaW50ZXI7bWFyZ2luOjAgYXV0byAwIC02cHg7cGFkZGluZzo2cHg7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6LXdlYmtpdC1tYXgtY29udGVudDt3aWR0aDotbW96LW1heC1jb250ZW50O3dpZHRoOm1heC1jb250ZW50fS55dHAtc21hbGwtbW9kZSAueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX2NvbnRlbnRfX2xvY2t1cF9faGVhZGxpbmUtY29udGFpbmVye3BvaW50ZXItZXZlbnRzOmF1dG87Y3Vyc29yOnBvaW50ZXI7d2lkdGg6LXdlYmtpdC1maXQtY29udGVudDt3aWR0aDotbW96LWZpdC1jb250ZW50O3dpZHRoOmZpdC1jb250ZW50O21hcmdpbjowIGF1dG8gMCAwfS55dHAtc21hbGwtbW9kZSAueXRwLXZpZGVvLWludGVyc3RpdGlhbC1idXR0b25lZC1jZW50ZXJlZC1sYXlvdXRfX2NvbnRlbnRfX2xvY2t1cF9faGVhZGxpbmV7cGFkZGluZzoxMHB4IDA7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MjBweDtmb250LXdlaWdodDo5MDA7bGluZS1oZWlnaHQ6MjRweDttYXgtaGVpZ2h0Om5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjF9Lnl0cC1zbWFsbC1tb2RlIC55dHAtdmlkZW8taW50ZXJzdGl0aWFsLWJ1dHRvbmVkLWNlbnRlcmVkLWxheW91dF9fY29udGVudF9fbG9ja3VwX19kZXRhaWxzLWxpbmUtY29udGFpbmVye2Rpc3BsYXk6bm9uZX0ueXRwLXNtYWxsLW1vZGUgLnl0cC12aWRlby1pbnRlcnN0aXRpYWwtYnV0dG9uZWQtY2VudGVyZWQtbGF5b3V0IC55dHAtYWQtYXZhdGFyLS1zaXplLXJlc3BvbnNpdmV7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLXNraXAtYWR7ei1pbmRleDo4NTB9Lnl0cC1za2lwLWFkLWJ1dHRvbntkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdztib3JkZXI6bm9uZTstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3RleHQtYWxpZ246Y2VudGVyO2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6MThweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpOy13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDtib3gtc2l6aW5nOmNvbnRlbnQtYm94O2NvbG9yOiNmZmY7ZGlyZWN0aW9uOmx0cjttaW4td2lkdGg6MDtwYWRkaW5nOjAgNnB4IDAgMTZweDt3aWR0aDphdXRvO3BvaW50ZXItZXZlbnRzOmF1dG87Y3Vyc29yOnBvaW50ZXI7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjIycHg7Ym90dG9tOjk1cHg7ei1pbmRleDoxMDAwOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLXNraXAtYWQtYnV0dG9uW2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1za2lwLWFkLWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGZyb20ocmdiYSgyNTUsMjU1LDI1NSwuMikpLHRvKHJnYmEoMjU1LDI1NSwyNTUsLjIpKSksLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsbGVmdCB0b3AsbGVmdCBib3R0b20sZnJvbShyZ2IoMTUsMTUsMTUpKSx0byhyZ2IoMTUsMTUsMTUpKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwyNTUsMjU1LC4yKSxyZ2JhKDI1NSwyNTUsMjU1LC4yKSksLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmdiKDE1LDE1LDE1KSxyZ2IoMTUsMTUsMTUpKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwyNTUsMjU1LC4yKSxyZ2JhKDI1NSwyNTUsMjU1LC4yKSksbGluZWFyLWdyYWRpZW50KHJnYigxNSwxNSwxNSkscmdiKDE1LDE1LDE1KSl9Lnl0cC1za2lwLWFkLWJ1dHRvbjpmb2N1c3tiYWNrZ3JvdW5kOnJnYigxNSwxNSwxNSk7b3V0bGluZTpub25lOy13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZX0ueXRwLXNraXAtYWQtYnV0dG9uOmZvY3VzLXZpc2libGV7YmFja2dyb3VuZDojZmZmOy13ZWJraXQtYm94LXNoYWRvdzowIDAgMCAycHggIzBmMGYwZjtib3gtc2hhZG93OjAgMCAwIDJweCAjMGYwZjBmO2NvbG9yOiMwZjBmMGZ9Lnl0cC1za2lwLWFkLWJ1dHRvbjpmb2N1cy12aXNpYmxlIC55dHAtc2tpcC1hZC1idXR0b25fX2ljb24gc3ZnIHBhdGh7ZmlsbDojMGYwZjBmfS55dHAtc2tpcC1hZC1idXR0b25fX3RleHR7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0Om5vcm1hbDtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1za2lwLWFkLWJ1dHRvbl9faWNvbntoZWlnaHQ6MzZweDt3aWR0aDozNnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNraXAtYWQtYnV0dG9ue2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMTRweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLHJnYmEoMCwwLDAsLjYpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNraXAtYWQtYnV0dG9uOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jaztsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNraXAtYWQtYnV0dG9uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJ1dHRvbi1zZWNvbmRhcnkscmdiYSgyNTUsMjU1LDI1NSwuMSkpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc2tpcC1hZC1idXR0b246YWN0aXZlOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRvbmFsLWhvdmVyLHJnYmEoMjU1LDI1NSwyNTUsLjIpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1za2lwLWFkLWJ1dHRvbntib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDE0cHggKyB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bSxyZ2JhKDAsMCwwLC42KSl9Lnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLnl0cC1za2lwLWFkLWJ1dHRvbiBzdmd7cGFkZGluZzo2cHh9Lnl0cC1iaWctbW9kZSAueXRwLXNraXAtYWQtYnV0dG9ue3JpZ2h0OjQwcHg7Ym90dG9tOjEwNHB4fS55dHAtYmlnLW1vZGUueXRwLWRlbGhpLW1vZGVybiAueXRwLXNraXAtYWQtYnV0dG9ue2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgMTRweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtc2tpcC1hZC1idXR0b257Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyAxNHB4KXZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KX0ueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtc2tpcC1hZC1idXR0b257Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAxNHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLXNtYWxsLW1vZGUgLnl0cC1za2lwLWFkLWJ1dHRvbntyaWdodDoxMnB4O2JvdHRvbTo3NXB4fS55dHAtcGxheWVyLW1pbmltaXplZC55dHAtbWVudS1zaG93biAueXRwLXNraXAtYWQtYnV0dG9ue3JpZ2h0OjE2cHg7Ym90dG9tOjM5cHh9c3ZnLnl0cC10aW1lZC1waWUtY291bnRkb3due2JhY2tncm91bmQ6bm9uZTtib3JkZXItcmFkaXVzOjUwJTtoZWlnaHQ6MjBweDtvcGFjaXR5Oi40Oy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcpOy1tcy10cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcpO3dpZHRoOjIwcHh9Y2lyY2xlLnl0cC10aW1lZC1waWUtY291bnRkb3duX19iYWNrZ3JvdW5ke3N0cm9rZTpub25lO2ZpbGw6bm9uZX1jaXJjbGUueXRwLXRpbWVkLXBpZS1jb3VudGRvd25fX2lubmVye2ZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MTBweDtzdHJva2U6cmdiYSgyNTUsMjU1LDI1NSwuNzUpfWNpcmNsZS55dHAtdGltZWQtcGllLWNvdW50ZG93bl9fb3V0ZXJ7ZmlsbDpub25lO3N0cm9rZS13aWR0aDoxO3N0cm9rZTpyZ2JhKDI1NSwyNTUsMjU1LC43NSl9Lnl0cC12aXNpdC1hZHZlcnRpc2VyLWxpbmt7Y29sb3I6I2ZmZjtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWZsZXg7ZGlzcGxheTppbmxpbmUtZmxleDttYXJnaW4tbGVmdDoxNnB4O3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtYm94LWFsaWduOmJhc2VsaW5lOy13ZWJraXQtYWxpZ24taXRlbXM6YmFzZWxpbmU7YWxpZ24taXRlbXM6YmFzZWxpbmV9Lnl0cC12aXNpdC1hZHZlcnRpc2VyLWxpbms6YmVmb3Jle2NvbnRlbnQ6IiI7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6LThweH0ueXRwLXZpc2l0LWFkdmVydGlzZXItbGluazpob3ZlciAueXRwLXZpc2l0LWFkdmVydGlzZXItbGlua19fdGV4dHtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9Lnl0cC12aXNpdC1hZHZlcnRpc2VyLWxpbmtfX3RleHR7Y29sb3I6I2ZmZjtjdXJzb3I6cG9pbnRlcjtmb250LWZhbWlseTpZb3VUdWJlIE5vdG8sUm9ib3RvLGFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE0cHg7b3BhY2l0eToxO3RleHQtZGVjb3JhdGlvbjpub25lO3RleHQtc2hhZG93OjAgMCAxNnB4IHJnYmEoMCwwLDAsLjUpO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS55dHAtaXYtdmlkZW8tY29udGVudHtwb3NpdGlvbjphYnNvbHV0ZX0ueXRwLWl2LXZpZGVvLWNvbnRlbnQgLnZpZGVvLWFubm90YXRpb25ze2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyMDt3aWR0aDoxMDAlfS5hbm5vdGF0aW9ue3Bvc2l0aW9uOmFic29sdXRlO2NvbG9yOiMwMDA7cGFkZGluZzo1cHg7dGV4dC1hbGlnbjpsZWZ0O3dvcmQtd3JhcDpicmVhay13b3JkO3otaW5kZXg6MDtjdXJzb3I6cG9pbnRlcjstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnZpZGVvLWxlZ2FjeS1hbm5vdGF0aW9ucyAuYW5ub3RhdGlvbntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMCk7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjt3aGl0ZS1zcGFjZTpwcmUtd3JhcH0uYW5ub3RhdGlvbi1jbG9zZS1idXR0b257LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtjdXJzb3I6cG9pbnRlcjtoZWlnaHQ6MTZweDtsZWZ0OjA7b3BhY2l0eTouODU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTZweH0uYW5ub3RhdGlvbi1jbG9zZS1idXR0b246aG92ZXJ7b3BhY2l0eToxfS5hbm5vdGF0aW9uLWxpbmstaWNvbnstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb250YWluO2JhY2tncm91bmQtc2l6ZTpjb250YWluO3Bvc2l0aW9uOmFic29sdXRlfS5hbm5vdGF0aW9uLXR5cGUtY3VzdG9te3BhZGRpbmc6MDtjdXJzb3I6ZGVmYXVsdH0uYW5ub3RhdGlvbi10eXBlLWN1c3RvbT5kaXZ7ZmxvYXQ6bGVmdDtwYWRkaW5nOjA7b3ZlcmZsb3c6aGlkZGVufS5pdi1jbGljay10YXJnZXR7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1hZC1vdmVybGF5LW9wZW4gLml2LWJyYW5kaW5nLC55dHAtYWQtb3ZlcmxheS1vcGVuIC5pdi1wcm9tb3tkaXNwbGF5Om5vbmV9Lml2LWJyYW5kaW5ne2JvdHRvbTowO3JpZ2h0OjA7ei1pbmRleDozMDtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5Oi4zM3M7dHJhbnNpdGlvbi1kZWxheTouMzNzfS55dHAtaXYtZHJhd2VyLW9wZW4gLml2LWJyYW5kaW5ne29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lml2LWJyYW5kaW5nIC5icmFuZGluZy1jb250ZXh0LWNvbnRhaW5lci1vdXRlcntib3R0b206MDtmbG9hdDpsZWZ0O3BhZGRpbmctcmlnaHQ6MTBweDtwb3NpdGlvbjphYnNvbHV0ZX0uaXYtYnJhbmRpbmcgLmJyYW5kaW5nLWNvbnRleHQtY29udGFpbmVyLWlubmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgyOCwyOCwyOCwuOSk7Ym90dG9tOjA7Y29sb3I6I2VlZTttYXgtd2lkdGg6MjQ2cHg7b3BhY2l0eTowO3JpZ2h0OjA7d2hpdGUtc3BhY2U6bm93cmFwO2JvcmRlci1yYWRpdXM6OHB4Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0uaXYtYnJhbmRpbmctYWN0aXZlIC5icmFuZGluZy1jb250ZXh0LWNvbnRhaW5lci1pbm5lcntvcGFjaXR5OjE7Ym9yZGVyLXJhZGl1czo4cHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lml2LWJyYW5kaW5nIC5icmFuZGluZy1pbWctY29udGFpbmVyIGltZ3tkaXNwbGF5OmJsb2NrO29wYWNpdHk6Ljc7cG9zaXRpb246cmVsYXRpdmV9Lml2LWJyYW5kaW5nIC5icmFuZGluZy1pbWctY29udGFpbmVye2Zsb2F0OnJpZ2h0fS5pdi1icmFuZGluZyBpbWcuaXYtY2xpY2stdGFyZ2V0OmhvdmVye29wYWNpdHk6MX0uaXYtYnJhbmRpbmcgLml2LWJyYW5kaW5nLWNvbnRleHQtbmFtZXttYXgtd2lkdGg6MjE1cHg7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxMHB4IDEwcHggNXB4fS5pdi1icmFuZGluZyAuaXYtYnJhbmRpbmctY29udGV4dC1zdWJzY3JpYmV7cGFkZGluZzowIDEwcHggMTBweDtmb250LXNpemU6MTFweDtjb2xvcjojYWFhfS5pdi1icmFuZGluZyAuaXYtYnJhbmRpbmctY29udGV4dC1zdWJzY3JpYmUtY2FyZXR7ZGlzcGxheTpub25lfS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tcmlnaHQgLml2LWJyYW5kaW5ne3Bvc2l0aW9uOnJlbGF0aXZlO2luc2V0OjB9Lml2LXByb21vLC5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucywuaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzLC5pdi1wcm9tbyAuaXYtcHJvbW8tY29udGVudHM+YSwuaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzPmRpdiwuaXYtcHJvbW8gLml2LXByb21vLWltZywuaXYtcHJvbW8gLml2LXByb21vLWltZyBpbWd7aGVpZ2h0OjQwcHh9Lml2LXByb21ve2JvdHRvbTo2MXB4O2xlZnQ6MDt6LWluZGV4OjMxO21heC13aWR0aDoxMDAlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOCk7Y29sb3I6I2NjYztmb250LXNpemU6MTFweDt3aGl0ZS1zcGFjZTpub3dyYXA7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZW1iZWQgLml2LXByb21ve2JvdHRvbTo1M3B4fS55dHAtYmlnLW1vZGUgLml2LXByb21ve2JvdHRvbTo3MHB4fS5odG1sNS12aWRlby1wbGF5ZXIuYWQtc2hvd2luZyAuaXYtcHJvbW97Ym90dG9tOjg2cHh9Lnl0cC1lbWJlZC5odG1sNS12aWRlby1wbGF5ZXIuYWQtc2hvd2luZyAuaXYtcHJvbW97Ym90dG9tOjc4cHh9Lmh0bWw1LXZpZGVvLXBsYXllci55dHAtYmlnLW1vZGUuYWQtc2hvd2luZyAuaXYtcHJvbW97Ym90dG9tOjk1cHh9Lml2LXByb21vOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOSl9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cz5hLC5pdi1wcm9tbyAuaXYtcHJvbW8tY29udGVudHM+ZGl2LC5pdi1wcm9tbz5kaXZ7ZGlzcGxheTppbmxpbmUtYmxvY2s7ZmxvYXQ6bm9uZSFpbXBvcnRhbnQ7dmVydGljYWwtYWxpZ246bWlkZGxlOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0uaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzPmF7Y29sb3I6I2NjY30uaXYtcHJvbW8uaXYtcHJvbW8taW5hY3RpdmV7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfS5pdi1wcm9tbyAuaXYtcHJvbW8taW1ne2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZX0uaXYtcHJvbW8gLml2LXByb21vLWltZywuaXYtcHJvbW8gLml2LXByb21vLWltZyBpbWd7ei1pbmRleDoxO3dpZHRoOjQwcHh9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IHAsLml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IHN0cm9uZywuaXYtcHJvbW8gLml2LXByb21vLWltZyAuaXYtcHJvbW8tcGxheWxpc3QtbGVuZ3RoLC5pdi1wcm9tbyAuaXYtcHJvbW8taW1nIC5pdi1wcm9tby12aWRlby1kdXJhdGlvbntvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby1iYWRnZS1saXZle21hcmdpbjo0cHggOHB4IDA7Ym9yZGVyOjFweCBzb2xpZCAjZmZmO2JhY2tncm91bmQtY29sb3I6I2U2MjExNztjb2xvcjojZmZmfS5pdi1wcm9tbyAuaXYtcHJvbW8taW1nIC5pdi1wcm9tby1wbGF5bGlzdC1sZW5ndGgsLml2LXByb21vIC5pdi1wcm9tby1pbWcgLml2LXByb21vLXZpZGVvLWR1cmF0aW9ue3Bvc2l0aW9uOmFic29sdXRlfS5pdi1wcm9tbyAuaXYtcHJvbW8taW1nIC5pdi1wcm9tby1wbGF5bGlzdC1sZW5ndGh7dG9wOjA7cmlnaHQ6MDtib3JkZXItbGVmdDoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMjUpO3dpZHRoOjMwcHg7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjUwMDt0ZXh0LWFsaWduOmNlbnRlcjtsaW5lLWhlaWdodDo0MHB4fS5pdi1wcm9tbyAuaXYtcHJvbW8taW1nIC5pdi1wcm9tby12aWRlby1kdXJhdGlvbntib3R0b206MnB4O3JpZ2h0OjJweDtwYWRkaW5nOjNweCAycHg7bWF4LXdpZHRoOjMycHg7YmFja2dyb3VuZC1jb2xvcjojMDAwO2NvbG9yOiNmZmY7Zm9udC1zaXplOjEwcHh9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50c3twYWRkaW5nLXJpZ2h0OjMxcHg7d2lkdGg6MTAwJTttYXgtd2lkdGg6MzExcHg7LXdlYmtpdC10cmFuc2l0aW9uOm1heC13aWR0aCAuMnMgZWFzZS1vdXQscGFkZGluZy1yaWdodCAuMnMgZWFzZS1vdXQ7dHJhbnNpdGlvbjptYXgtd2lkdGggLjJzIGVhc2Utb3V0LHBhZGRpbmctcmlnaHQgLjJzIGVhc2Utb3V0fS5pdi1wcm9tbyAuaXYtcHJvbW8taW1nKy5pdi1wcm9tby1jb250ZW50c3twYWRkaW5nLWxlZnQ6NDBweDttYXgtd2lkdGg6MzUxcHh9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tYnV0dG9uLWNvbnRhaW5lciwuaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHR7ZGlyZWN0aW9uOmx0cjttYXgtd2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZH0uaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQgcHttYXJnaW46M3B4IDhweCAtNHB4O2xpbmUtaGVpZ2h0OjE4cHh9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IHN0cm9uZ3tjb2xvcjojZmZmO2ZvbnQtc2l6ZToxMnB4fS5pdi1wcm9tby10eHQgcCBzcGFuLC5pdi1wcm9tby10eHQgcCBzdHJvbmd7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWF4LXdpZHRoOjI2NHB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5pdi1wcm9tby13aXRoLWJ1dHRvbiAuaXYtcHJvbW8tdHh0IHAgc3BhbiwuaXYtcHJvbW8td2l0aC1idXR0b24gLml2LXByb21vLXR4dCBwIHN0cm9uZ3ttYXgtd2lkdGg6MTg0cHh9Lml2LXByb21vLXR4dCBwOmZpcnN0LWNoaWxkIHNwYW4sLml2LXByb21vLXR4dCBwOmZpcnN0LWNoaWxkIHN0cm9uZ3ttYXJnaW4tYm90dG9tOi02cHh9Lml2LXByb21vIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IC5pdi1wcm9tby1saW5re3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmctcmlnaHQ6MjBweDttYXgtd2lkdGg6MjQ0cHg7Y29sb3I6I2ZmZDEwMH0uaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQgLml2LXByb21vLWxpbms6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowO29wYWNpdHk6LjU7Y29udGVudDoiIn0uaXYtcHJvbW8gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQ6aG92ZXIgLml2LXByb21vLWxpbms6YWZ0ZXJ7b3BhY2l0eToxfS5pdi1wcm9tby1idXR0b24tY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjMxcHh9Lml2LWJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MjhweDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O3BhZGRpbmc6MCAxMHB4O291dGxpbmU6MDtmb250LWZhbWlseTpZb3VUdWJlIE5vdG8sUm9ib3RvLGFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc2l6ZToxMXB4O3RleHQtZGVjb3JhdGlvbjpub25lO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO2xpbmUtaGVpZ2h0Om5vcm1hbDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Y3Vyc29yOnBvaW50ZXI7Km92ZXJmbG93OnZpc2libGU7Ym9yZGVyLXJhZGl1czoycHg7LXdlYmtpdC1ib3gtc2hhZG93OjAgMXB4IDAgcmdiYSgwLDAsMCwuMDUpO2JveC1zaGFkb3c6MCAxcHggMCByZ2JhKDAsMCwwLC4wNSk7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS5pdi1idXR0b246aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lml2LWJ1dHRvbjpmb2N1cywuaXYtYnV0dG9uOmZvY3VzOmhvdmVyey13ZWJraXQtYm94LXNoYWRvdzowIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC40KTtib3gtc2hhZG93OjAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjQpfS5uby1mb2N1cy1vdXRsaW5lIC55dC11aXgtYnV0dG9uOmZvY3VzLC5uby1mb2N1cy1vdXRsaW5lIC55dC11aXgtYnV0dG9uOmZvY3VzOmhvdmVyey13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZX0uaXYtYnV0dG9uOjotbW96LWZvY3VzLWlubmVye2JvcmRlcjowO3BhZGRpbmc6MH0uaXYtYnV0dG9uW2Rpc2FibGVkXSwuaXYtYnV0dG9uW2Rpc2FibGVkXTphY3RpdmUsLml2LWJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsLml2LWJ1dHRvbltkaXNhYmxlZF06aG92ZXJ7b3BhY2l0eTouNTtjdXJzb3I6YXV0bzstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmV9Lml2LWJ1dHRvbiwuaXYtYnV0dG9uW2Rpc2FibGVkXSwuaXYtYnV0dG9uW2Rpc2FibGVkXTphY3RpdmUsLml2LWJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsLml2LWJ1dHRvbltkaXNhYmxlZF06aG92ZXJ7Ym9yZGVyLWNvbG9yOiMxNjdhYzY7YmFja2dyb3VuZDojMTY3YWM2O2NvbG9yOiNmZmZ9Lml2LWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOiMxMjZkYjN9Lml2LWJ1dHRvbjphY3RpdmV7YmFja2dyb3VuZDojMDk1Yjk5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAwIHJnYmEoMCwwLDAsLjUpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDAsMCwwLC41KX0uaXYtYnV0dG9uIC5pdi1idXR0b24tY29udGVudHtkaXNwbGF5OmlubGluZTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc31hLml2LWJ1dHRvbjphZnRlcntjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtoZWlnaHQ6MTAwJX0uaXYtcHJvbW8tYnV0dG9ue3dpZHRoOjY0cHg7bWFyZ2luOjZweCA4cHh9Lml2LXByb21vIC5pdi1wcm9tby1hY3Rpb25zLC5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucyAuaXYtcHJvbW8tY2xvc2UsLml2LXByb21vIC5pdi1wcm9tby1hY3Rpb25zIC5pdi1wcm9tby1leHBhbmR7dG9wOjA7cmlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZX0uaXYtcHJvbW8gLml2LXByb21vLWFjdGlvbnN7d2lkdGg6MzFweH0uaXYtcHJvbW8gLml2LXByb21vLWFjdGlvbnMgLml2LXByb21vLWNsb3NlLC5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucyAuaXYtcHJvbW8tZXhwYW5ke2N1cnNvcjpwb2ludGVyOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlLW91dDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2Utb3V0fS5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucyAuaXYtcHJvbW8tY2xvc2U6YWZ0ZXIsLml2LXByb21vIC5pdi1wcm9tby1hY3Rpb25zIC5pdi1wcm9tby1leHBhbmQ6YWZ0ZXJ7ZGlzcGxheTpibG9jaztjb250ZW50OiIifS5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucyAuaXYtcHJvbW8tY2xvc2V7b3BhY2l0eToxfS5pdi1wcm9tbyAuaXYtcHJvbW8tYWN0aW9ucyAuaXYtcHJvbW8tY2xvc2U6YWZ0ZXJ7bWFyZ2luOjE2cHggMTBweCAxNXB4IDEycHg7b3BhY2l0eTouNX0uaXYtcHJvbW8gLml2LXByb21vLWFjdGlvbnMgLml2LXByb21vLWV4cGFuZDphZnRlcnttYXJnaW46MTZweCAxMnB4IDE1cHh9Lml2LXByb21vLml2LXByb21vLXZpZGVvIC5pdi1wcm9tby1pbWcsLml2LXByb21vLml2LXByb21vLXZpZGVvIC5pdi1wcm9tby1pbWcgaW1ne3dpZHRoOjcxcHh9Lml2LXByb21vLml2LXByb21vLXZpZGVvIC5pdi1wcm9tby1pbWcrLml2LXByb21vLWNvbnRlbnRze3BhZGRpbmctbGVmdDo3MXB4O21heC13aWR0aDozODJweH0uaXYtcHJvbW8uaXYtcHJvbW8td2l0aC1idXR0b24gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHR7cGFkZGluZy1yaWdodDo4MHB4fS5pdi1wcm9tby5pdi1wcm9tby1jb2xsYXBzZWQgLml2LXByb21vLWFjdGlvbnMgLml2LXByb21vLWNsb3NlLC5pdi1wcm9tby5pdi1wcm9tby1jb2xsYXBzZWQgLml2LXByb21vLWFjdGlvbnMgLml2LXByb21vLWV4cGFuZCwuaXYtcHJvbW8uaXYtcHJvbW8tY29sbGFwc2VkIC5pdi1wcm9tby1jb250ZW50c3std2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjstd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6LjVzO3RyYW5zaXRpb24tZGVsYXk6LjVzfS5pdi1wcm9tby5pdi1wcm9tby1jb2xsYXBzZWQgLml2LXByb21vLWNvbnRlbnRze3BhZGRpbmctcmlnaHQ6MjhweDttYXgtd2lkdGg6MCFpbXBvcnRhbnR9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aXtsZWZ0OjE2cHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aSAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dHtwYWRkaW5nLWxlZnQ6NjBweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1idXR0b24tY29udGFpbmVye2xpbmUtaGVpZ2h0OjY0cHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aSwueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1jb250ZW50cywueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1jb250ZW50cz5hLC55dHAtbGFyZ2Utd2lkdGgtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1sYXJnZXItdWkgLml2LXByb21vLWNvbnRlbnRzPmRpdntoZWlnaHQ6NjRweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1idXR0b257bWluLXdpZHRoOjExMHB4O2hlaWdodDozNnB4fS55dHAtbGFyZ2Utd2lkdGgtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1sYXJnZXItdWkgLml2LXByb21vLWltZ3t0b3A6NnB4O2xlZnQ6NnB4fS55dHAtbGFyZ2Utd2lkdGgtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1sYXJnZXItdWkgLml2LXByb21vLWltZywueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1pbWcgaW1ne2hlaWdodDo1MnB4O3dpZHRoOjUycHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aSAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dCBzdHJvbmd7Zm9udC1zaXplOjE2cHg7cGFkZGluZy10b3A6NHB4fS55dHAtbGFyZ2Utd2lkdGgtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1sYXJnZXItdWkgLml2LXByb21vLWJ1dHRvbntmb250LXNpemU6MTVweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtbGFyZ2VyLXVpIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IC5pdi1wcm9tby1saW5re2ZvbnQtc2l6ZToxNHB4O3BhZGRpbmctdG9wOjEycHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aSAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dHttaW4td2lkdGg6MjIwcHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLWxhcmdlci11aSAuaXYtcHJvbW8tcm91bmQtZXhwYW5kLWljb257dG9wOjM4cHg7bGVmdDo0MnB4fS55dHAtbGFyZ2Utd2lkdGgtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1sYXJnZXItdWkgLml2LXByb21vLWJ1dHRvbnttYXJnaW46MCAxMnB4IDAgMH0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbnt0ZXh0LWFsaWduOmxlZnQ7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtsZWZ0OjEycHh9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8taW1nKy5pdi1wcm9tby1jb250ZW50c3ttYXgtd2lkdGg6NDAwcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC45KTtib3JkZXItcmFkaXVzOjJweDtwYWRkaW5nLWxlZnQ6MDtwYWRkaW5nLXJpZ2h0OjA7d2lkdGg6MTAwJTstd2Via2l0LXRyYW5zaXRpb246d2lkdGggLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjVzLG1heC13aWR0aCAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOndpZHRoIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIC41cyxtYXgtd2lkdGggLjJzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24uaXYtcHJvbW8tY29sbGFwc2VkIC5pdi1wcm9tby1pbWcrLml2LXByb21vLWNvbnRlbnRzey13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTouNXM7dHJhbnNpdGlvbi1kZWxheTouNXN9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ246aG92ZXIgLml2LXByb21vLWNvbnRlbnRze2JhY2tncm91bmQtY29sb3I6cmdiKDI1NSwyNTUsMjU1KX0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbi5pdi1wcm9tby1jb2xsYXBzZWQgLml2LXByb21vLWNvbnRlbnRze3BhZGRpbmctcmlnaHQ6MH0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dHttYXgtd2lkdGg6MjUwcHg7cGFkZGluZy10b3A6MTBweDtwYWRkaW5nLWxlZnQ6NTJweH0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dCBwe2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLXRvcDowfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1idXR0b24tY29udGFpbmVye2RpcmVjdGlvbjpsdHI7bWF4LXdpZHRoOjE1MHB4O2xpbmUtaGVpZ2h0OjU2cHg7cG9zaXRpb246c3RhdGljfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1idXR0b257bWF4LXdpZHRoOjE0MHB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3dpZHRoOmluaGVyaXQ7Zm9udC13ZWlnaHQ6NTAwO21hcmdpbjowIDhweCAwIDB9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWFjdGlvbnMsLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQgLml2LXByb21vLWxpbms6YWZ0ZXJ7ZGlzcGxheTpub25lfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduLC5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1jb250ZW50cywuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHM+YSwuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHM+ZGl2e2RpcmVjdGlvbjpsdHI7aGVpZ2h0OjU2cHh9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWltZ3toZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3RvcDo0cHg7bGVmdDo0cHg7b3ZlcmZsb3c6dmlzaWJsZTstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWltZyBpbWd7aGVpZ2h0OjQ4cHg7d2lkdGg6NDhweH0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbi5pdi1wcm9tby1jb2xsYXBzZWQgLml2LXByb21vLXJvdW5kLWV4cGFuZC1pY29ue29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMTVzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjlzO3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjlzfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1yb3VuZC1leHBhbmQtaWNvbntwb3NpdGlvbjphYnNvbHV0ZTtwYWRkaW5nLWxlZnQ6MDt6LWluZGV4Ojg1MDtoZWlnaHQ6MThweDt3aWR0aDoxOHB4O2JvcmRlci1yYWRpdXM6NTAlO3RvcDozNHB4O2xlZnQ6MzhweDtiYWNrZ3JvdW5kLWNvbG9yOiM0Njg4ZjE7LXdlYmtpdC1ib3gtc2hhZG93OjAgMCAycHggMCByZ2JhKDAsMCwwLC4xMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMjQpO2JveC1zaGFkb3c6MCAwIDJweCAwIHJnYmEoMCwwLDAsLjEyKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4yNCk7b3BhY2l0eTowfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1yb3VuZC1leHBhbmQtaWNvbjphZnRlcntkaXNwbGF5OmJsb2NrO2NvbnRlbnQ6IiJ9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQgc3Ryb25ne2ZvbnQtc2l6ZToxNHB4O3BhZGRpbmctdG9wOjJweDtjb2xvcjojMzMzfS5pdi1wcm9tby13ZWJzaXRlLWNhcmQtY3RhLXJlZGVzaWduIC5pdi1wcm9tby1jb250ZW50cyAuaXYtcHJvbW8tdHh0IC5pdi1wcm9tby1saW5re3BhZGRpbmc6OHB4IDIwcHggMCAwO2ZvbnQtc2l6ZToxM3B4O2NvbG9yOiM3Njc2NzZ9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24uaXYtcHJvbW8taW5hY3RpdmUgLml2LXByb21vLWNvbnRlbnRze3dpZHRoOjB9Lml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24uaXYtcHJvbW8taW5hY3RpdmUsLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24uaXYtcHJvbW8taW5hY3RpdmUgLml2LXByb21vLWltZ3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAlKX0uaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbi5pdi1wcm9tby1pbmFjdGl2ZSAuaXYtcHJvbW8tcm91bmQtZXhwYW5kLWljb257ZGlzcGxheTpub25lfS55dHAtc21hbGwtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiwueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzLC55dHAtc21hbGwtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHM+YSwueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzPmRpdntoZWlnaHQ6NDBweH0ueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWltZywueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWltZyBpbWd7aGVpZ2h0OjQwcHg7d2lkdGg6NDBweH0ueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHR7cGFkZGluZzo0cHggNHB4IDRweCA0MHB4fS55dHAtc21hbGwtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tY29udGVudHMgLml2LXByb21vLXR4dCBzdHJvbmd7cGFkZGluZy10b3A6MDtmb250LXNpemU6MTJweH0ueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWNvbnRlbnRzIC5pdi1wcm9tby10eHQgLml2LXByb21vLWxpbmt7cGFkZGluZy10b3A6NHB4O2ZvbnQtc2l6ZToxMXB4fS55dHAtc21hbGwtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8tcm91bmQtZXhwYW5kLWljb257dG9wOjI2cHg7bGVmdDozMHB4fS55dHAtc21hbGwtbW9kZSAuaXYtcHJvbW8td2Vic2l0ZS1jYXJkLWN0YS1yZWRlc2lnbiAuaXYtcHJvbW8taW1ne3RvcDowO2xlZnQ6MH0ueXRwLXNtYWxsLW1vZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24gLml2LXByb21vLWJ1dHRvbi1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtYXV0b2hpZGUgLml2LXByb21vLXdlYnNpdGUtY2FyZC1jdGEtcmVkZXNpZ24uaXYtcHJvbW8tY29sbGFwc2VkIC5pdi1wcm9tby1pbWd7b3BhY2l0eTouODstd2Via2l0LXRyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSkgLjhzO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSkgLjhzfS5pdi1kcmF3ZXIsLml2LWRyYXdlci1jb250ZW50LC5pdi1kcmF3ZXItaGVhZGVye3Bvc2l0aW9uOmFic29sdXRlfS5pdi1kcmF3ZXJ7dG9wOjA7Ym90dG9tOjA7cmlnaHQ6MDt6LWluZGV4OjMzO3dpZHRoOjE3N3B4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMik7Y29sb3I6I2ZmZjtmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxMnB4Oy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMzNzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjMzcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0uaXYtZHJhd2VyLXNtYWxsLml2LWRyYXdlcnt3aWR0aDoxMzNweH0uaXYtZHJhd2VyLWJpZy5pdi1kcmF3ZXJ7Zm9udC1zaXplOjIwcHg7bGluZS1oZWlnaHQ6MjRweDt3aWR0aDoyOTVweH1bZGlyPWx0cl0gLml2LWRyYXdlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE3N3B4KTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTc3cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDE3N3B4KX1bZGlyPXJ0bF0gLml2LWRyYXdlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xNzdweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xNzdweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTE3N3B4KX0ueXRwLWF1dG9oaWRlLnl0cC1lbWJlZC1vdmVybGF5cy1hdXRvaGlkZSAuaXYtZHJhd2Vye29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1hdXRvaGlkZTpub3QoLnl0cC1hdXRvaGlkZS1hY3RpdmUpLnl0cC1lbWJlZC1vdmVybGF5cy1hdXRvaGlkZSAuaXYtZHJhd2Vye2Rpc3BsYXk6bm9uZX0uaXYtZHJhd2VyLWNvbnRlbnQgKnt0ZXh0LWFsaWduOmxlZnR9Lnl0cC1pdi1kcmF3ZXItb3BlbiAuaXYtZHJhd2Vyey13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMzNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjMzcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX0uaXYtZHJhd2VyLWhlYWRlcnt0b3A6MDtwYWRkaW5nOjE2cHggMzJweCAwIDE2cHg7d2lkdGg6MTc3cHg7aGVpZ2h0OjQxcHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtZHJhd2VyLWhlYWRlcntwYWRkaW5nOjlweCAyNHB4IDAgMTJweDtoZWlnaHQ6MjhweDt3aWR0aDoxMzNweH0uaXYtZHJhd2VyLWJpZyAuaXYtZHJhd2VyLWhlYWRlcntwYWRkaW5nOjIwcHggNDhweCAwIDMycHg7aGVpZ2h0OjY0cHg7d2lkdGg6Mjk1cHh9Lml2LWRyYXdlci1oZWFkZXItdGV4dHtmb250LXdlaWdodDo1MDA7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uaHRtbDUtdmlkZW8tcGxheWVyIC5pdi1kcmF3ZXItaGVhZGVyey13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0uaXYtZHJhd2VyLWNvbnRlbnR7dG9wOjQxcHg7Ym90dG9tOjA7Ym9yZGVyLXRvcDoxcHggc29saWQgdHJhbnNwYXJlbnQ7cGFkZGluZzowIDE2cHg7d2lkdGg6MTQ1cHg7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvO2RpcmVjdGlvbjpsdHI7dGV4dC1hbGlnbjpsZWZ0fS5pdi1kcmF3ZXItc21hbGwgLml2LWRyYXdlci1jb250ZW50e3BhZGRpbmc6MCAxMnB4O3RvcDoyOHB4O3dpZHRoOjEwOXB4fS5pdi1kcmF3ZXItYmlnIC5pdi1kcmF3ZXItY29udGVudHtwYWRkaW5nOjAgMzJweDt0b3A6NjRweDt3aWR0aDoyMzFweH0uaXYtZHJhd2VyLXNjcm9sbGVkIC5pdi1kcmF3ZXItY29udGVudHtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwuNCl9Lml2LWRyYXdlci1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3dpZHRoOjE2cHh9Lml2LWRyYXdlci1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntib3JkZXI6NHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQtY2xpcDpjb250ZW50LWJveDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMTAyLDEwMiwxMDIsLjUpfS5pdi1kcmF3ZXItY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ueXRwLWF1dG9oaWRlIC5pdi1kcmF3ZXItY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0uaXYtZHJhd2VyLWNvbnRlbnQ6aG92ZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQtY29sb3I6IzY2NiFpbXBvcnRhbnR9Lml2LWRyYXdlci1jbG9zZS1idXR0b257cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtwYWRkaW5nOjE2cHg7b3BhY2l0eTouNzU7Y3Vyc29yOnBvaW50ZXJ9Lml2LWRyYXdlci1zbWFsbCAuaXYtZHJhd2VyLWNsb3NlLWJ1dHRvbntwYWRkaW5nOjhweH0uaXYtZHJhd2VyLWJpZyAuaXYtZHJhd2VyLWNsb3NlLWJ1dHRvbntwYWRkaW5nOjI0cHh9Lml2LWRyYXdlci1jbG9zZS1idXR0b246YWZ0ZXJ7ZGlzcGxheTpibG9jaztjb250ZW50OiIifS5pdi1kcmF3ZXItY2xvc2UtYnV0dG9uOmhvdmVye29wYWNpdHk6MX0uaXYtY2FyZCwuaXYtY2FyZCBhLml2LWNsaWNrLXRhcmdldCwuaXYtY2FyZCBhLml2LWNsaWNrLXRhcmdldDpmb2N1cywuaXYtY2FyZCBhLml2LWNsaWNrLXRhcmdldDpob3ZlcntkaXNwbGF5OmJsb2NrO2NvbG9yOiM3Njc2NzY7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lml2LWNhcmR7bWFyZ2luLWJvdHRvbToxNnB4O3dpZHRoOjE0NXB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cG9zaXRpb246cmVsYXRpdmU7d29yZC13cmFwOmJyZWFrLXdvcmQ7LXdlYmtpdC1ib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4yKTtib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4yKTstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyLXJhZGl1czo4cHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZHt3aWR0aDoxMDlweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZHt3aWR0aDoyMzFweH0uaXYtY2FyZDpob3ZlciAuaXYtY2FyZC1wcmltYXJ5LWxpbmt7Y29sb3I6IzE2N2FjNiFpbXBvcnRhbnR9Lml2LWNhcmQgaDIsLml2LWNhcmQtYWN0aW9ue2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS53ZWJraXQgLml2LWNhcmQgaDI6YWZ0ZXIsLndlYmtpdCAuaXYtY2FyZC1hY3Rpb246YWZ0ZXJ7Y29udGVudDoi4oCMIjtwb3NpdGlvbjpzdGF0aWM7dmlzaWJpbGl0eTpoaWRkZW59Lml2LWNhcmQgaDJ7bWFyZ2luOjAgMCA4cHg7LXdlYmtpdC1saW5lLWNsYW1wOjY7bWF4LWhlaWdodDo5MHB4O2NvbG9yOiMzMzM7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE1cHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZCBoMntmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxMnB4O21heC1oZWlnaHQ6NzJweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZCBoMntmb250LXNpemU6MjBweDtsaW5lLWhlaWdodDoyNHB4O21heC1oZWlnaHQ6MTQ0cHh9Lml2LWNhcmQgLml2LWNhcmQtYWN0aW9uLC5pdi1jYXJkIC5pdi1jYXJkLW1ldGEtaW5mbywuaXYtY2FyZCBwe21hcmdpbjotNnB4IDAgMnB4fS5pdi1jYXJkLW1ldGEtaW5mb3tsaXN0LXN0eWxlOm5vbmU7cGFkZGluZzowfS5pdi1jYXJkLWltYWdle3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlMmUyZTI7d2lkdGg6MTQ1cHg7aGVpZ2h0OjE0NXB4O2JhY2tncm91bmQ6I2YxZjFmMSBuby1yZXBlYXQgNTAlOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3Zlcjtjb2xvcjojZmZmfS5pdi1kcmF3ZXItc21hbGwgLml2LWNhcmQtaW1hZ2V7d2lkdGg6MTA5cHg7aGVpZ2h0OjEwOXB4fS5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLWltYWdle3dpZHRoOjIzMXB4O2hlaWdodDoyMzFweH0uaXYtY2FyZC1pbWFnZS10ZXh0e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO3BhZGRpbmc6MjBweCAxMHB4IDhweDt3aWR0aDoxMDAlO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLHRyYW5zcGFyZW50LHJnYmEoMCwwLDAsLjYpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGNvbG9yLXN0b3AoMCx0cmFuc3BhcmVudCksdG8ocmdiYSgwLDAsMCwuNikpKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdHJhbnNwYXJlbnQgMCxyZ2JhKDAsMCwwLC42KSk7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5pdi1kcmF3ZXItc21hbGwgLml2LWNhcmQtaW1hZ2UtdGV4dHtmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxMnB4O3BhZGRpbmc6NnB4IDhweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZC1pbWFnZS10ZXh0e2ZvbnQtc2l6ZToxOHB4O2xpbmUtaGVpZ2h0OjIwcHg7cGFkZGluZzoxMnB4IDE2cHh9Lml2LWNhcmQtaW1hZ2UtdGV4dCAueXQtYmFkZ2V7bWFyZ2luLXJpZ2h0OjVweH0uaXYtY2FyZC1jb250ZW50e3BhZGRpbmc6OHB4IDEwcHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1jb250ZW50e3BhZGRpbmc6NnB4IDhweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZC1jb250ZW50e3BhZGRpbmc6MTJweCAxNnB4fS5pdi1jYXJkLWNvbnRlbnQ+OmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0uaXYtY2FyZC1jb250ZW50PjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uaXYtY2FyZC1hY3Rpb24sLml2LWNhcmQtbWVzc2FnZXtmb250LXdlaWdodDo1MDB9Lml2LWNhcmQtbWVzc2FnZXttYXJnaW4tYm90dG9tOjhweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZTJlMmUyO3BhZGRpbmctYm90dG9tOjhweH0uaXYtY2FyZC1hY3Rpb257LXdlYmtpdC1saW5lLWNsYW1wOjQ7bWF4LWhlaWdodDo1MnB4O3doaXRlLXNwYWNlOm5vd3JhcH0uaXYtZHJhd2VyLXNtYWxsIC5pdi1jYXJkLWFjdGlvbntmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxMnB4O21heC1oZWlnaHQ6NDhweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZC1hY3Rpb257Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MjBweDttYXgtaGVpZ2h0OjgwcHh9Lml2LWNhcmQtYWN0aW9uIHNwYW57d2hpdGUtc3BhY2U6bm9ybWFsfS5pdi1jYXJkLWFjdGlvbi1pY29ue3BhZGRpbmc6MCAwIDAgMzBweDttaW4taGVpZ2h0OjE0cHg7YmFja2dyb3VuZC1wb3NpdGlvbjowO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDstd2Via2l0LWJhY2tncm91bmQtc2l6ZToyNHB4IGF1dG87YmFja2dyb3VuZC1zaXplOjI0cHggYXV0b30uaXYtY2FyZC1saW5rLWljb257ZGlzcGxheTppbmxpbmUtYmxvY2t9Lml2LWNhcmQtZXBpc29kZSBoMiwuaXYtY2FyZC1tb3ZpZSBoMiwuaXYtY2FyZC1wbGF5bGlzdCBoMiwuaXYtY2FyZC12aWRlbyBoMnstd2Via2l0LWxpbmUtY2xhbXA6MzttYXgtaGVpZ2h0OjQ1cHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1lcGlzb2RlIGgyLC5pdi1kcmF3ZXItc21hbGwgLml2LWNhcmQtbW92aWUgaDIsLml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1wbGF5bGlzdCBoMiwuaXYtZHJhd2VyLXNtYWxsIC5pdi1jYXJkLXZpZGVvIGgye21heC1oZWlnaHQ6MzZweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZC1lcGlzb2RlIGgyLC5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLW1vdmllIGgyLC5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXBsYXlsaXN0IGgyLC5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXZpZGVvIGgye21heC1oZWlnaHQ6NzJweH0uaXYtY2FyZC1jaGFubmVsIGgyey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6MzBweH0uaXYtZHJhd2VyLXNtYWxsIC5pdi1jYXJkLWNoYW5uZWwgaDJ7bWF4LWhlaWdodDoyNHB4fS5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLWNoYW5uZWwgaDJ7bWF4LWhlaWdodDo0OHB4fS5pdi1jYXJkLWVwaXNvZGUgLml2LWNhcmQtaW1hZ2UsLml2LWNhcmQtbW92aWUgLml2LWNhcmQtaW1hZ2UsLml2LWNhcmQtcGxheWxpc3QgLml2LWNhcmQtaW1hZ2UsLml2LWNhcmQtdmlkZW8gLml2LWNhcmQtaW1hZ2V7YmFja2dyb3VuZC1jb2xvcjojMDAwfS5pdi1jYXJkLWVwaXNvZGUgLml2LWNhcmQtaW1hZ2UsLml2LWNhcmQtcGxheWxpc3QgLml2LWNhcmQtaW1hZ2UsLml2LWNhcmQtdmlkZW8gLml2LWNhcmQtaW1hZ2V7aGVpZ2h0OjgycHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1lcGlzb2RlIC5pdi1jYXJkLWltYWdlLC5pdi1kcmF3ZXItc21hbGwgLml2LWNhcmQtcGxheWxpc3QgLml2LWNhcmQtaW1hZ2UsLml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC12aWRlbyAuaXYtY2FyZC1pbWFnZXtoZWlnaHQ6NjFweH0uaXYtZHJhd2VyLWJpZyAuaXYtY2FyZC1lcGlzb2RlIC5pdi1jYXJkLWltYWdlLC5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXBsYXlsaXN0IC5pdi1jYXJkLWltYWdlLC5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXZpZGVvIC5pdi1jYXJkLWltYWdle2hlaWdodDoxMjlweH0uaXYtY2FyZC1tb3ZpZSAuaXYtY2FyZC1pbWFnZXtoZWlnaHQ6MjA5cHh9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1tb3ZpZSAuaXYtY2FyZC1pbWFnZXtoZWlnaHQ6MTU3cHh9Lml2LWRyYXdlci1iaWcgLml2LWNhcmQtbW92aWUgLml2LWNhcmQtaW1hZ2V7aGVpZ2h0OjMzNXB4fS5pdi1jYXJkLXZpZGVvLWR1cmF0aW9ue3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo1cHg7cmlnaHQ6NXB4O3BhZGRpbmc6MnB4IDRweDtiYWNrZ3JvdW5kLWNvbG9yOiMwMDB9Lml2LWNhcmQtcGxheWxpc3QgLml2LWNhcmQtaW1hZ2Utb3ZlcmxheXtkaXNwbGF5OnRhYmxlO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7d2lkdGg6NjNweDtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpO2NvbG9yOiNjZmNmY2Y7Zm9udC1zaXplOjIwcHg7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xpbmUtaGVpZ2h0OjIxcHh9Lml2LWNhcmQtcGxheWxpc3QtdmlkZW8tY291bnR7ZGlzcGxheTp0YWJsZS1jZWxsO3RleHQtYWxpZ246Y2VudGVyO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uaXYtY2FyZC1wbGF5bGlzdC12aWRlby1jb3VudDphZnRlcntkaXNwbGF5OmJsb2NrO21hcmdpbjphdXRvO29wYWNpdHk6LjU7Y29udGVudDoiIn0uaXYtY2FyZC1wb2xse3Bvc2l0aW9uOnJlbGF0aXZlfS5pdi1jYXJkLXBvbGwgdWx7bWF4LXdpZHRoOjEyNXB4O2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjB9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1wb2xsIHVse21heC13aWR0aDo4OXB4fS5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXBvbGwgdWx7bWF4LXdpZHRoOjIxMXB4fS5pdi1jYXJkLXBvbGwgZmllbGRzZXR7bWFyZ2luOjA7Ym9yZGVyOjA7cGFkZGluZzowfS5pdi1jYXJkLXBvbGwgbGFiZWx7ZGlzcGxheTpibG9jaztjdXJzb3I6cG9pbnRlcjtwYWRkaW5nLWJvdHRvbTo1cHg7bWluLWhlaWdodDoxNHB4O2JhY2tncm91bmQtcG9zaXRpb246bGVmdCAwIHRvcCA1cHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJeE55SWdhR1ZwWjJoMFBTSXhOeUkrUEdOcGNtTnNaU0JqZUQwaU9DNDFJaUJqZVQwaU9DNDFJaUJ5UFNJM0xqWWlJR1pwYkd3OUltNXZibVVpSUhOMGNtOXJaVDBpSXpBd01DSWdjM1J5YjJ0bExXOXdZV05wZEhrOUlpNDFOQ0lnYzNSeWIydGxMWGRwWkhSb1BTSXhMamdpTHo0OEwzTjJaejQ9KTtjb2xvcjpyZ2JhKDAsMCwwLC44Nyk7LXdlYmtpdC10cmFuc2l0aW9uOmNvbG9yIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246Y29sb3IgLjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAuaXYtY2FyZC1wb2xsIGxhYmVsLml2LWNhcmQtcG9sbC1jaG9pY2UtZm9jdXNlZHstd2Via2l0LWJveC1zaGFkb3c6MCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuNCk7Ym94LXNoYWRvdzowIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC40KX0uaXYtY2FyZC1wb2xsLml2LWNhcmQtcG9sbC12b3RlZCBsYWJlbHtjb2xvcjpyZ2JhKDAsMCwwLC41NCl9Lml2LWNhcmQtcG9sbC5pdi1jYXJkLXBvbGwtdm90ZWQgbGFiZWwuaXYtY2FyZC1wb2xsLWNob2ljZS1jaGVja2Vke2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJeE55SWdhR1ZwWjJoMFBTSXhOeUkrUEdOcGNtTnNaU0JqZUQwaU9DNDFJaUJqZVQwaU9DNDFJaUJ5UFNJM0xqWWlJR1pwYkd3OUltNXZibVVpSUhOMGNtOXJaVDBpSXpFMk4yRmpOaUlnYzNSeWIydGxMWGRwWkhSb1BTSXhMamdpTHo0OFkybHlZMnhsSUdONFBTSTRMalVpSUdONVBTSTRMalVpSUhJOUlqUXVNak1pSUdacGJHdzlJaU14TmpkaFl6WWlMejQ4TDNOMlp6ND0pO2NvbG9yOnJnYmEoMCwwLDAsLjg3KX0uaXYtY2FyZC1wb2xsIGlucHV0W3R5cGU9Y2hlY2tib3hde29wYWNpdHk6MDt3aWR0aDoxN3B4O2hlaWdodDoxN3B4O21hcmdpbjo1cHggMCAwO2Zsb2F0OmxlZnR9Lml2LWNhcmQtcG9sbCAuaXYtY2FyZC1wb2xsLWNob2ljZS10ZXh0e2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWxlZnQ6MjVweDtwYWRkaW5nLXRvcDo4cHh9Lml2LWRyYXdlci1iaWcgLml2LWNhcmQtcG9sbCAuaXYtY2FyZC1wb2xsLWNob2ljZS10ZXh0e3BhZGRpbmctdG9wOjJweH0uaXYtY2FyZC1wb2xsIGxpK2xpe21hcmdpbi10b3A6OHB4fS5pdi1jYXJkLXBvbGwgLml2LWNhcmQtcG9sbC1yZXN1bHR7d2lkdGg6MTAwJTtoZWlnaHQ6NHB4O2JhY2tncm91bmQtY29sb3I6I2RmZGZkZjt2aXNpYmlsaXR5OmhpZGRlbn0uaXYtY2FyZC1wb2xsIC5pdi1jYXJkLXBvbGwtcmVzdWx0IC5pdi1jYXJkLXBvbGwtcmVzdWx0LWJhcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JhY2tncm91bmQtY29sb3I6IzE2N2FjNjstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7LW1zLXRyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7dHJhbnNmb3JtLW9yaWdpbjp0b3AgbGVmdDstd2Via2l0LXRyYW5zaXRpb246dHJhbnNmb3JtIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS5pdi1jYXJkLXBvbGwuaXYtY2FyZC1wb2xsLWV4cGFuZGVkIC5pdi1jYXJkLXBvbGwtcmVzdWx0e3Zpc2liaWxpdHk6dmlzaWJsZX0uaXYtY2FyZC1wb2xsIC5pdi1jYXJkLXBvbGwtY2hvaWNlLXBlcmNlbnR7ZGlzcGxheTpub25lO2Zsb2F0OnJpZ2h0O21hcmdpbi1sZWZ0OjVweH0uaXYtY2FyZC1wb2xsLml2LWNhcmQtcG9sbC1leHBhbmRlZCAuaXYtY2FyZC1wb2xsLWNob2ljZS1wZXJjZW50e2Rpc3BsYXk6YmxvY2t9Lml2LWNhcmQtc2lnbi1pbnt2aXNpYmlsaXR5OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cGFkZGluZzo4cHggMTBweH0uaXYtY2FyZC1zaWduLWluIHB7bWFyZ2luOjAgMCA4cHh9Lml2LWNhcmQtc2lnbi1pbiBhe2NvbG9yOiNmZmZ9Lml2LWNhcmQtdW5hdmFpbGFibGU6aG92ZXIgLml2LWNhcmQtY29udGVudCwuaXYtY2FyZC11bmF2YWlsYWJsZTpob3ZlciAuaXYtY2xpY2stdGFyZ2V0e3Zpc2liaWxpdHk6aGlkZGVufS5pdi1jYXJkLXVuYXZhaWxhYmxlOmhvdmVyIC5pdi1jYXJkLXNpZ24taW57dmlzaWJpbGl0eTp2aXNpYmxlfS5pdi1hZC1pbmZvLWljb24tY29udGFpbmVyLC5pdi1jYXJkLXNwb25zb3JlZHtwb3NpdGlvbjpyZWxhdGl2ZX0uaXYtY2FyZC1zcG9uc29yZWR7bWFyZ2luOjAgMCA4cHg7Y29sb3I6Izk5OX0uaXYtYWQtaW5mby1jb250YWluZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NnB4fS5pdi1hZC1pbmZvLWljb257ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7dG9wOjFweH0uaXYtYWQtaW5mb3tib3R0b206MjFweDtsZWZ0OjA7cmlnaHQ6MDtib3JkZXI6MXB4IHNvbGlkICMwMDA7cGFkZGluZzo3cHg7YmFja2dyb3VuZDojZmZmO2NvbG9yOiMwMDA7Zm9udC1zaXplOjEycHh9Lml2LWFkLWluZm8tY29udGFpbmVyIC5pdi1hZC1pbmZvIGEsLml2LWFkLWluZm8tY29udGFpbmVyIC5pdi1hZC1pbmZvIGE6aG92ZXJ7Y29sb3I6IzE2N2FjNn0uaXYtYWQtaW5mby1jb250YWluZXIgLml2LWFkLWluZm8gYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5pdi1hZC1pbmZvLWNhbGxvdXQsLml2LWFkLWluZm8taWNvbi1jb250YWluZXI6YWZ0ZXJ7bGVmdDowO2JvcmRlci1sZWZ0OjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6NXB4IHNvbGlkO3dpZHRoOjA7aGVpZ2h0OjB9Lml2LWFkLWluZm8tY2FsbG91dHtib3R0b206MTZweDtib3JkZXItdG9wLWNvbG9yOiMwMDB9Lml2LWFkLWluZm8taWNvbi1jb250YWluZXI6YWZ0ZXJ7Y29udGVudDoiIjtib3R0b206MTdweDtib3JkZXItdG9wLWNvbG9yOiNmZmZ9Lml2LWFkLWluZm8sLml2LWFkLWluZm8tY2FsbG91dCwuaXYtYWQtaW5mby1pY29uLWNvbnRhaW5lcjphZnRlcnt2aXNpYmlsaXR5OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zaXRpb246dmlzaWJpbGl0eSAwcyAuMXM7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIC4xc30uaXYtYWQtaW5mby1jb250YWluZXI6aG92ZXIgLml2LWFkLWluZm8sLml2LWFkLWluZm8tY29udGFpbmVyOmhvdmVyIC5pdi1hZC1pbmZvLWNhbGxvdXQsLml2LWFkLWluZm8tY29udGFpbmVyOmhvdmVyIC5pdi1hZC1pbmZvLWljb24tY29udGFpbmVyOmFmdGVye3Zpc2liaWxpdHk6dmlzaWJsZTstd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6MHM7dHJhbnNpdGlvbi1kZWxheTowc30uaXYtY2FyZC1wcm9kdWN0LWxpc3RpbmcgaDJ7LXdlYmtpdC1saW5lLWNsYW1wOjM7bWF4LWhlaWdodDo0NXB4O2NvbG9yOiM2NjZ9Lml2LWRyYXdlci1zbWFsbCAuaXYtY2FyZC1wcm9kdWN0LWxpc3RpbmcgaDJ7bWF4LWhlaWdodDozNnB4fS5pdi1kcmF3ZXItYmlnIC5pdi1jYXJkLXByb2R1Y3QtbGlzdGluZyBoMnttYXgtaGVpZ2h0OjcycHh9Lml2LWNhcmQtb2ZmZXItcHJpY2V7bWFyZ2luLWJvdHRvbToycHg7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjE1cHg7Y29sb3I6IzMzM30uaXYtY2FyZC1vZmZlci1tZXJjaGFudHtjb2xvcjojMDk3YTQxfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcnt3aWR0aDozNjBweDtoZWlnaHQ6Y2FsYygxMDAlIC0gMzlweCk7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luOjAgYXV0bzt6LWluZGV4OjM3fS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlKSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5e3dpZHRoOjEwMCV9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tb3ZlcmxheXstLXcydy1zdGFydC1iYWNrZ3JvdW5kLWNvbG9yOiMwMDA7LS13MnctZW5kLWJhY2tncm91bmQtY29sb3I6IzAwMDtoZWlnaHQ6MTAwJX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXJ7d2lkdGg6MTAwJX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWxpbmstY29udGFpbmVye21hcmdpbi10b3A6MTBweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleC1ncm93OjE7ZmxleC1ncm93OjF9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtaGVhZGVye2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjcpO2ZvbnQtc2l6ZToxNXB4O2xpbmUtaGVpZ2h0OjI0cHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtaGVhZGVyLWNvdW50ZG93bi1udW1iZXJ7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1hbHRlcm5hdGl2ZS1oZWFkZXItb25seSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1oZWFkZXJ7ZGlzcGxheTpub25lfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWFsdGVybmF0aXZlLWhlYWRlcntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC43KTtmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDoxOHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LW5vLWFsdGVybmF0aXZlLWhlYWRlciAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1hbHRlcm5hdGl2ZS1oZWFkZXJ7ZGlzcGxheTpub25lfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWFsdGVybmF0aXZlLWhlYWRlci1vbmx5IC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWFsdGVybmF0aXZlLWhlYWRlcntmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoyNHB4O21hcmdpbi10b3A6MH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC10aHVtYm5haWwsLnl0cC1hdXRvbmF2LXRodW1ibmFpbC1zbWFsbHtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1zaXplOmNvdmVyO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlcjoxcHggc29saWQgIzRjNGM0Yzstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdGh1bWJuYWlse3dpZHRoOjM2MHB4O2hlaWdodDoyMDJweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdGh1bWJuYWlsOmhvdmVyLC55dHAtYXV0b25hdi10aHVtYm5haWwtc21hbGw6aG92ZXJ7Ym9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjgpOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0ueXRwLWF1dG9uYXYtbGl2ZS1zdGFtcCwueXRwLWF1dG9uYXYtdGltZXN0YW1wLC55dHAtYXV0b25hdi11cGNvbWluZy1zdGFtcHtib3R0b206NHB4O3JpZ2h0OjRweDtwYWRkaW5nOjAgNHB4O2JvcmRlci1yYWRpdXM6MnB4O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjE2cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC44KTtjb2xvcjojZmZmO3Bvc2l0aW9uOmFic29sdXRlO2xldHRlci1zcGFjaW5nOi41cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWF1dG9uYXYtbGlzdC1vdmVybGF5e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbG9hdDpyaWdodDt3aWR0aDo0MCU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC44KX0ueXRwLWF1dG9uYXYtbWl4LXRleHR7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE1cHg7bGluZS1oZWlnaHQ6MThweDtmb250LXdlaWdodDo1MDA7bWFyZ2luLXRvcDozMCV9Lnl0cC1hdXRvbmF2LW1peC1pY29ue3dpZHRoOjQyJTtoZWlnaHQ6MzAlO2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIaHRiRzV6T25oc2FXNXJQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUwzaHNhVzVySWlCMmFXVjNRbTk0UFNJd0lEQWdNellnTXpZaVBqeDFjMlVnZUd4cGJtczZhSEpsWmowaUkzbDBjQzF6ZG1jdGJXbDRJaUJ6ZEhKdmEyVTlJaU13TURBaUlITjBjbTlyWlMxdmNHRmphWFI1UFNJdU1UVWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQanh3WVhSb0lHbGtQU0o1ZEhBdGMzWm5MVzFwZUNJZ1ptbHNiRDBpSTJabVppSWdaRDBpVFRJMUxqWTFJREU0WXkwdU1ESWdNaTR6TVMwdU9EY2dOQzQwTVMweUxqSTFJRFl1TURac0xqa3VPVFJqTVM0Mk9TMHhMamdnTWk0M0xUUXVNamNnTWk0M0xUZHpMVEV1TURFdE5TNHlNUzB5TGpjdE4yd3RMamt1T1ROQk9TNDFOQ0E1TGpVMElEQWdNQ0F4SURJMUxqWTFJREU0YlMweE5TNHpJREJqTGpBeExUSXVNekl1T0RZdE5DNDBNaUF5TGpJMUxUWXVNRGRzTFM0NUxTNDVNME14TUNBeE1pNDNPU0E1SURFMUxqSTNJRGtnTVRoek1TQTFMaklnTWk0M0lEZHNMamt0TGprMFl5MHhMak01TFRFdU5qVXRNaTR5TkMwekxqYzFMVEl1TWpVdE5pNHdObTB5TGpjZ01HTXRMakEwTFRFdU56TXVORGt0TXk0d09TQXhMak0xTFRRdU1td3RMamt0TGprMFl5MHhMakV6SURFdU1qWXRNUzQ0SURJdU9Ua3RNUzQ0SURVdU1UUWdNQ0F4TGpZM0xqWTNJRE11TkNBeExqZ2dOQzQyTm13dU9TMHVPVE5qTFM0NE5pMHhMakV5TFRFdU16a3RNaTQwTnkweExqTTFMVE11TnpOdE9TMDFMakUwTFM0NUxqazBZeTQ0TlNBeExqRXhJREV1TXpnZ01pNDBOeUF4TGpNMUlEUXVNaTR3TXlBeExqSTJMUzQxSURJdU5qRXRNUzR6TlNBekxqY3piQzQ1TGprell6RXVNVEl0TVM0eU5pQXhMamd0TWk0NU9TQXhMamd0TkM0Mk5pQXdMVEl1TVRVdExqWTRMVE11T0RndE1TNDRMVFV1TVRSdExUVXVOVFVnTWk0NElETXVOaUF4TGpnM0xUTXVOaUF5TGpNemVpSXZQand2YzNablBnPT0pOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3ZlcjttYXJnaW46MCBhdXRvfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdmlkZW8taW5mb3ttYXJnaW4tdG9wOjEycHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1wcmVtaXVtLWJhZGdle21hcmdpbi1ib3R0b206NnB4O21hcmdpbi1sZWZ0Oi0ycHg7d2lkdGg6NzRweDtoZWlnaHQ6MTZweDtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSTNNQ0lnYUdWcFoyaDBQU0l4TmlJZ1ptbHNiRDBpYm05dVpTSStQSEpsWTNRZ2QybGtkR2c5SWpjd0lpQm9aV2xuYUhROUlqRTJJaUJtYVd4c1BTSWpabVptSWlCdmNHRmphWFI1UFNJdU1TSWdjbmc5SWpJaUx6NDhjR0YwYUNCbWFXeHNQU0lqWVdGaElpQmtQU0pOTWpBdU16VWdPQzQ0TTFZeE1tZ3RNUzQwT0ZZekxqUTNhRE11TWpaakxqazFJREFnTVM0M01TNHlOU0F5TGpJM0xqYzBMalUyTGpVdU9EUWdNUzR4Tmk0NE5DQXhMamszSURBZ0xqZzBMUzR5TnlBeExqUTVMUzQ0TWlBeExqazFMUzQxTlM0ME55MHhMak15TGpjdE1pNHpMamQ2YlRBdE1TNHhPV2d4TGpjNFl5NDFNeUF3SUM0NU15MHVNVElnTVM0eUxTNHpOeTR5T1MwdU1qVXVOREl0TGpZdU5ESXRNUzR3T0NBd0xTNDBOaTB1TVRRdExqZ3lMUzQwTWkweExqRmhNUzQyTWlBeExqWXlJREFnTUNBd0xURXVNVFl0TGpRemFDMHhMamd5ZW0wNUxqTTNMUzQyT0dFekxqVWdNeTQxSURBZ01DQXdMUzQxT0MwdU1EVmpMUzQyTlNBd0xURXVNRGt1TWpVdE1TNHpNUzQzTlZZeE1rZ3lOaTQwVmpVdU5qWm9NUzR6Tm13dU1EUXVOMkV4TGpZZ01TNDJJREFnTUNBeElERXVORE10TGpneVl5NHlJREFnTGpNM0xqQXpMalV1TURoMk1TNHpOSHB0TXk0MU9DQTFMakUyWXkwdU9TQXdMVEV1TmpRdExqSTVMVEl1TWkwdU9EVmhNeTR4SURNdU1TQXdJREFnTVMwdU9EUXRNaTR5T0hZdExqRTNZekF0TGpZekxqRXlMVEV1TWk0ek55MHhMamRoTWk0M01pQXlMamN5SURBZ01DQXhJREl1TlMweExqVTRZeTQ0TnlBd0lERXVOVE11TWpnZ01pQXVPRE11TkRndU5UVXVOekVnTVM0ek15NDNNU0F5TGpNMGRpNDFOMGd6TVM0M1l5NHdOQzQxTWk0eU1pNDVOQzQxTWlBeExqSTBjeTQzTGpRMklERXVNVFl1TkRaakxqWTFJREFnTVM0eE9DMHVNallnTVM0MkxTNDNPV3d1TnpZdU56TmpMUzR5TlM0ek9DMHVOaTQyT0MweExqQXlMamc1TFM0ME1pNHlMUzQ1TGpNdE1TNDBNaTR6ZW0wdExqRTNMVFV1TkROakxTNDBJREF0TGpjdU1UTXRMamsxTGpRdExqSTBMakk0TFM0MExqWTJMUzQwTmlBeExqRTFhREl1TnpKMkxTNHhZVEV1TnpJZ01TNDNNaUF3SURBZ01DMHVNemt0TVM0d09TQXhMaklnTVM0eUlEQWdNQ0F3TFM0NU1pMHVNelp0TlM0eE5pMHhMakF6TGpBMExqWTJZVEl1TWpnZ01pNHlPQ0F3SURBZ01TQXhMamd6TFM0M09HTXVPRFVnTUNBeExqUXpMak16SURFdU56UXVPVGd1TkRZdExqWTFJREV1TVRFdExqazRJREV1T1RVdExqazRMamNnTUNBeExqSXhMaklnTVM0MU5TNDFPQzR6TlM0ek9TNDFNaTQ1Tmk0MU15QXhMamN4VmpFeWFDMHhMalF5VmpjdU9EZGpNQzB1TkMwdU1Ea3RMamN0TGpJM0xTNDRPQzB1TVRjdExqRTVMUzQwTmkwdU1qZ3RMamczTFM0eU9DMHVNeklnTUMwdU5Ua3VNRGt0TGpndU1qWXRMakl1TVRjdExqTTBMalF0TGpReUxqWTRWakV5YUMweExqUXlWamN1T0ROakxTNHdNaTB1TnpVdExqUXRNUzR4TWkweExqRTBMVEV1TVRJdExqVTNJREF0TGprNExqSXpMVEV1TWpJdU4xWXhNbWd0TVM0ME1sWTFMalkyZWswME9DNDVNU0F4TW1ndE1TNDBNMVkxTGpZMmFERXVORE42VFRRM0xqUWdOQzR3TVdNd0xTNHlNaTR3TmkwdU5DNHlMUzQxTkM0eE5DMHVNVFV1TXpRdExqSXlMall0TGpJeWN5NDBOaTR3Tnk0MkxqSXlZeTR4TkM0eE5DNHlMak15TGpJdU5UUnpMUzR3Tmk0MExTNHlMalUwTFM0ek5DNHlNUzB1Tmk0eU1TMHVORFl0TGpBM0xTNDJMUzR5WVM0M05TNDNOU0F3SURBZ01TMHVNaTB1TlRWdE5pNDVJRGN1TXpkaE1pNHlJREl1TWlBd0lEQWdNUzB4TGpjNExqYzBjUzB4TGpBeUlEQXRNUzQxTmkwdU5tTXRMak0xTFM0MExTNDFNeTB4TFM0MU15MHhMamMxVmpVdU5qWm9NUzQwTTNZMExqQTVZekFnTGpndU16TWdNUzR5SURFZ01TNHlMalk1SURBZ01TNHhOaTB1TWpRZ01TNDBMUzQzTkZZMUxqWTJhREV1TkRKV01USm9MVEV1TXpSNmJUUXVNVGN0TlM0M01pNHdOQzQyTm1FeUxqSTRJREl1TWpnZ01DQXdJREVnTVM0NE15MHVOemhqTGpnMUlEQWdNUzQwTXk0ek15QXhMamMwTGprNExqUTJMUzQyTlNBeExqRXhMUzQ1T0NBeExqazFMUzQ1T0M0M0lEQWdNUzR5TVM0eUlERXVOVFV1TlRndU16VXVNemt1TlRJdU9UWXVOVE1nTVM0M01WWXhNa2cyTkM0M1ZqY3VPRGRqTUMwdU5DMHVNRGt0TGpjdExqSTNMUzQ0T0MwdU1UY3RMakU1TFM0ME5pMHVNamd0TGpnM0xTNHlPQzB1TXpJZ01DMHVOVGt1TURrdExqZ3VNall0TGpJdU1UY3RMak0wTGpRdExqUXlMalk0VmpFeWFDMHhMalF5VmpjdU9ETmpMUzR3TWkwdU56VXRMalF0TVM0eE1pMHhMakUwTFRFdU1USXRMalUzSURBdExqazRMakl6TFRFdU1qSXVOMVl4TW1ndE1TNDBNbFkxTGpZMmFERXVNelI2SWk4K1BIQmhkR2dnWm1sc2JEMGljbVZrSWlCa1BTSk5NU0F5WVRFZ01TQXdJREFnTVNBeExURm9NVE4yTVRSSU1tRXhJREVnTUNBd0lERXRNUzB4ZWlJdlBqeHdZWFJvSUdacGJHdzlJaU5tWm1ZaUlHUTlJazAyTGpVeUlEbDJNMGcwTGpjMlZqTXVORGRJT0M0eFl5NDJOQ0F3SURFdU1pNHhNaUF4TGpZNUxqTTFjeTQ0Tmk0MU55QXhMakV5SURFZ0xqUXVPVEl1TkNBeExqUTNZekFnTGpnMExTNHpJREV1TlMwdU9EY2dNUzQ1T0hFdExqZzFOUzQzTWkweUxqTTNMamN5U0RZdU5USjZiVEF0TVM0ME0yZ3hMalUzWXk0ME5pQXdJQzQ0TWkwdU1TQXhMakEyTFM0ek15NHlOUzB1TWpJdU16Y3RMalV6TGpNM0xTNDVOSE10TGpFeUxTNDNOUzB1TXpjdE1XTXRMakkxTFM0eU55MHVOVGt0TGpRdE1TNHdNaTB1TkVnMkxqVXllaUl2UGp3dmMzWm5QZz09KTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXJ9LmF1dG9uYXYtZW5kc2NyZWVue2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTstd2Via2l0LWp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC5hdXRvbmF2LWVuZHNjcmVlbnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHAtc3VnZ2VzdGlvbnMtY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWZsb3c6cm93IHdyYXA7ZmxleC1mbG93OnJvdyB3cmFwfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXRpdGxle2NvbG9yOiNmZmY7ZGlzcGxheTotd2Via2l0LWJveDtmb250LXNpemU6MThweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MjRweDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjI7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfS55dHAtYXV0b25hdi1hdXRob3ItYW5kLXZpZXcsLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtYXV0aG9yLC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRle21hcmdpbi10b3A6NHB4O2NvbG9yOiNhYWE7ZGlzcGxheTotd2Via2l0LWJveDtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoyMXB4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6MTtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1idXR0b24tY29udGFpbmVye3dpZHRoOjEwMCU7bWFyZ2luLXRvcDoxMnB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWJ1dHRvbnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOiNmZmY7Ym9yZGVyLXJhZGl1czoycHg7ZGlzcGxheTppbmxpbmUtZ3JpZDtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7d2lkdGg6MTc2cHg7aGVpZ2h0OjM2cHg7bGluZS1oZWlnaHQ6MzRweDt0ZXh0LWFsaWduOmNlbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyOjB9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtYnV0dG9uLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtYnV0dG9uLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czoxOHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWNhbmNlbC1idXR0b257YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC4xKTtmbG9hdDpsZWZ0fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXBsYXktYnV0dG9ue2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMyk7ZmxvYXQ6cmlnaHR9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVyOm5vdCgueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWlzLXByZW1pdW0pIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tcHJlbWl1bS1iYWRnZXtkaXNwbGF5Om5vbmV9LmNvdW50ZG93bi1ydW5uaW5nIC55dHAtcGxheWVyLWNvbnRlbnR7Ym90dG9tOjB9LmNvdW50ZG93bi1ydW5uaW5nIC55dHAtbWluaXBsYXllci1yZXBsYXktYnV0dG9uLC5jb3VudGRvd24tcnVubmluZyAueXRwLXByZXZpZXd7ZGlzcGxheTpub25lfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLXN1Z2dlc3Rpb24tcGFuZWx7bWFyZ2luOjQwcHggYXV0byBhdXRvIDIwcHg7d2lkdGg6MzYwcHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLW92ZXJsYXl7bWFyZ2luOjQwcHggMjBweCBhdXRvIGF1dG99Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi10aHVtYm5haWwtc21hbGx7d2lkdGg6MzYwcHg7aGVpZ2h0OjIwMnB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtdGl0bGUtY2FyZHttYXJnaW4tdG9wOjEycHg7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MjRweH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLXNtYWxsLW1vZGUgLnl0cC1hdXRvbmF2LWF1dGhvci1jYXJkLC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtdmlldy1hbmQtZGF0ZS1jYXJke21hcmdpbi10b3A6NHB4O2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjIxcHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRlLWNhcmR7bWFyZ2luLXRvcDowfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtc3VnZ2VzdGlvbi1jYXJke3dpZHRoOjM2MHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC10aHVtYm5haWx7d2lkdGg6MzYwcHg7aGVpZ2h0OjIwMnB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtbWl4LXRleHR7Zm9udC1zaXplOjIyLjVweDtsaW5lLWhlaWdodDoyN3B4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tc21hbGwtbW9kZS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcnt3aWR0aDozNzRweH0uY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXIsLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1saW5rLWNvbnRhaW5lcnttYXJnaW4tdG9wOjEzcHg7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LmNvdW50ZG93bi1ydW5uaW5nIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC10aHVtYm5haWwsLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdGh1bWJuYWlse3dpZHRoOjE4M3B4O2hlaWdodDoxMDRweDtib3JkZXItcmFkaXVzOjhweH0uY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWhlYWRlciwuY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXRpdGxlLC55dHAtYXV0b25hdi1jYW5jZWxsZWQtbWluaS1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWhlYWRlciwueXRwLWF1dG9uYXYtY2FuY2VsbGVkLW1pbmktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC10aXRsZXtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxOHB4O2ZvbnQtd2VpZ2h0OjUwMH0uY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdmlkZW8taW5mbywueXRwLWF1dG9uYXYtY2FuY2VsbGVkLW1pbmktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXZpZGVvLWluZm97bWFyZ2luLXRvcDowO3dpZHRoOjE4M3B4fS5jb3VudGRvd24tcnVubmluZyAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXNtYWxsLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1idXR0b24tY29udGFpbmVyLC55dHAtYXV0b25hdi1jYW5jZWxsZWQtbWluaS1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tYnV0dG9uLWNvbnRhaW5lcnttYXJnaW4tdG9wOjEzcHh9LmNvdW50ZG93bi1ydW5uaW5nIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1idXR0b24sLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtYnV0dG9ue3dpZHRoOjE4M3B4O2hlaWdodDozNHB4fS55dHAtYmlnLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVye2hlaWdodDpjYWxjKDEwMCUgLSA1OC41cHgpfS55dHAtYmlnLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1saW5rLWNvbnRhaW5lcnttYXJnaW4tdG9wOjE1cHh9Lnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1oZWFkZXJ7Zm9udC1zaXplOjIyLjVweDtsaW5lLWhlaWdodDozNnB4fS55dHAtYmlnLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtYWx0ZXJuYXRpdmUtaGVhZGVye2ZvbnQtc2l6ZToxOS41cHg7bGluZS1oZWlnaHQ6MjdweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWFsdGVybmF0aXZlLWhlYWRlci1vbmx5IC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWFsdGVybmF0aXZlLWhlYWRlcntmb250LXNpemU6MjIuNXB4O2xpbmUtaGVpZ2h0OjM2cHh9Lnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC10aHVtYm5haWx7d2lkdGg6NTQwcHg7aGVpZ2h0OjMwM3B4fS55dHAtYmlnLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1wcmVtaXVtLWJhZGdle21hcmdpbi1ib3R0b206OXB4O21hcmdpbi1sZWZ0Oi0zcHg7d2lkdGg6MTExcHg7aGVpZ2h0OjI0cHh9Lnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXZpZGVvLWluZm97bWFyZ2luLXRvcDoxOHB4fS55dHAtYmlnLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdGl0bGV7Zm9udC1zaXplOjI3cHg7bGluZS1oZWlnaHQ6MzZweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWF1dGhvciwueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRle21hcmdpbi10b3A6NnB4O2ZvbnQtc2l6ZToyMXB4O2xpbmUtaGVpZ2h0OjMxLjVweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRle21hcmdpbi10b3A6MH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tYnV0dG9uLWNvbnRhaW5lcnttYXJnaW4tdG9wOjE4cHh9Lnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1idXR0b257Zm9udC1zaXplOjIxcHg7d2lkdGg6MjY0cHg7aGVpZ2h0OjU0cHg7bGluZS1oZWlnaHQ6NTJweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWJ1dHRvbi5tb2Rlcm4tYnV0dG9uc3tib3JkZXItcmFkaXVzOjI3cHh9Lnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtbGl2ZS1zdGFtcCwueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi10aW1lc3RhbXAsLnl0cC1iaWctbW9kZSAueXRwLWF1dG9uYXYtdXBjb21pbmctc3RhbXB7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MjRweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcnt3aWR0aDo1NDBweH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5e21hcmdpbjphdXRvO21hcmdpbi1yaWdodDozMHB4O2hlaWdodDo0NDRweH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5IC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcnstd2Via2l0LWJveC1wYWNrOnN0YXJ0Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1zdWdnZXN0aW9uLXBhbmVse21hcmdpbjphdXRvO21hcmdpbi1sZWZ0OjMwcHg7d2lkdGg6NDMycHg7aGVpZ2h0OjQ0NHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtc3VnZ2VzdGlvbi1jYXJkLXdpdGgtbWFyZ2lue21hcmdpbi1sZWZ0OjEycHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LXRodW1ibmFpbC1zbWFsbHttYXJnaW4tdG9wOjA7d2lkdGg6MjEwcHg7aGVpZ2h0OjExOHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmR7bWFyZ2luLXRvcDoxMHB4O3dpZHRoOjIxMHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmQ6bnRoLWxhc3QtY2hpbGQoLW4rMil7bWFyZ2luLXRvcDoyMHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi10aXRsZS1jYXJke21hcmdpbi10b3A6MTBweDtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxNnB4O2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtYXV0aG9yLWNhcmR7bWFyZ2luLXRvcDo0cHh9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWF1dGhvci1jYXJkLC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRlLWNhcmR7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MThweH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtdmlldy1hbmQtZGF0ZSwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtdmlldy1hbmQtZGF0ZS1jYXJke21hcmdpbi10b3A6MH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLXNtYWxsLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1tb3JlLXZpZGVvc3t2aXNpYmlsaXR5OmhpZGRlbn0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLXNtYWxsLW1vZGUgLnl0cC1zdWdnZXN0aW9ucy1jb250YWluZXIgLnl0cC1zdWdnZXN0aW9uLXNldDpub3QoOmZpcnN0LWNoaWxkKXtkaXNwbGF5Om5vbmV9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1zdWdnZXN0aW9uLXBhbmVsLC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtdGlueS1tb2RlIC55dHAtc3VnZ2VzdGlvbi1wYW5lbHtkaXNwbGF5Om5vbmV9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tb3ZlcmxheSwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLXRpbnktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5ey13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2hlaWdodDpjYWxjKDEwMCUgLSAzOXB4KX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLW1pbmktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5IC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lciwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLXRpbnktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5IC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcnstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtoZWlnaHQ6MTAwJX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtY2FuY2VsbGVkLW1pbmktbW9kZSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1vdmVybGF5LC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtdGlueS1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLW92ZXJsYXl7bWFyZ2luLXJpZ2h0OmF1dG99Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tb3ZlcmxheXttYXJnaW4tdG9wOjB9Lnl0cC1wbGF5ZXItbWluaW1pemVkLmNvdW50ZG93bi1ydW5uaW5nIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXIsLnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1saW5rLWNvbnRhaW5lcnttYXJnaW4tdG9wOjMwcHh9Lnl0cC1wbGF5ZXItbWluaW1pemVkLmNvdW50ZG93bi1ydW5uaW5nIC55dHAtc3VnZ2VzdGlvbi1wYW5lbCwueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLXN1Z2dlc3Rpb24tcGFuZWx7ZGlzcGxheTpub25lfS55dHAtcGxheWVyLW1pbmltaXplZC5jb3VudGRvd24tcnVubmluZyAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1jb250YWluZXIsLnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVye3dpZHRoOjM3NHB4O2hlaWdodDoxMDAlOy13ZWJraXQtYm94LXBhY2s6c3RhcnQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ueXRwLXBsYXllci1taW5pbWl6ZWQuY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtY29udGFpbmVyLC55dHAtcGxheWVyLW1pbmltaXplZC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWNvbnRhaW5lcnttYXJnaW4tdG9wOjE2cHh9Lnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1pcy1wcmVtaXVtIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWhlYWRlciwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXNtYWxsLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1pcy1wcmVtaXVtIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWhlYWRlcntkaXNwbGF5Oi13ZWJraXQtYm94fS55dHAtYXV0b25hdi1jYW5jZWxsZWQtbWluaS1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4taXMtcHJlbWl1bSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1hbHRlcm5hdGl2ZS1oZWFkZXIsLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4taXMtcHJlbWl1bSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1hbHRlcm5hdGl2ZS1oZWFkZXJ7bWFyZ2luLXRvcDo1cHh9Lnl0cC1hdXRvbmF2LWNhbmNlbGxlZC1taW5pLW1vZGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1pcy1wcmVtaXVtIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXIsLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1lbmRzY3JlZW4taXMtcHJlbWl1bSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWxpbmstY29udGFpbmVye21hcmdpbi10b3A6OHB4fS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtbWluaS1tb2RlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRle2Rpc3BsYXk6LXdlYmtpdC1ib3h9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1idXR0b24tY29udGFpbmVye2Rpc3BsYXk6bm9uZX0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVye21hcmdpbjphdXRvO21hcmdpbi1yaWdodDo0NXB4O3dpZHRoOjU0MHB4O2hlaWdodDo2NjZweH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtaGVhZGVye2ZvbnQtc2l6ZToyMi41cHg7bGluZS1oZWlnaHQ6MzZweH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1zdWdnZXN0aW9uLXBhbmVse21hcmdpbjphdXRvO21hcmdpbi1sZWZ0OjQ1cHg7d2lkdGg6NjQ4cHg7aGVpZ2h0OjY2NnB4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLXN1Z2dlc3Rpb24tY2FyZC13aXRoLW1hcmdpbnttYXJnaW4tbGVmdDoxOHB4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtdGh1bWJuYWlsLXNtYWxse3dpZHRoOjMxNXB4O2hlaWdodDoxNzdweH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LXN1Z2dlc3Rpb24tY2FyZHttYXJnaW4tdG9wOjE1cHg7d2lkdGg6MzE1cHh9Lnl0cC1iaWctbW9kZS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmQ6bnRoLWxhc3QtY2hpbGQoLW4rMil7bWFyZ2luLXRvcDozMHB4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtdGl0bGUtY2FyZHttYXJnaW4tdG9wOjE1cHg7Zm9udC1zaXplOjIxcHg7bGluZS1oZWlnaHQ6MjRweH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LWF1dGhvci1jYXJke21hcmdpbi10b3A6NnB4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtYXV0aG9yLWNhcmQsLnl0cC1iaWctbW9kZS55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlIC55dHAtYXV0b25hdi12aWV3LWFuZC1kYXRlLWNhcmR7Zm9udC1zaXplOjE5LjVweDtsaW5lLWhlaWdodDoyN3B4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNhbmNlbGxlZC1zdGF0ZSAueXRwLWF1dG9uYXYtdmlldy1hbmQtZGF0ZS1jYXJke21hcmdpbi10b3A6MH0ueXRwLWJpZy1tb2RlLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jYW5jZWxsZWQtc3RhdGUgLnl0cC1hdXRvbmF2LW1peC10ZXh0e2ZvbnQtc2l6ZToyMi41cHg7bGluZS1oZWlnaHQ6MjdweH0ueXRwLWF1dG9uYXYtYXV0aG9yLWFuZC12aWV3e2Rpc3BsYXk6bm9uZX0ueXRwLWF1dG9uYXYtY2FuY2VsbGVkLW1pbmktbW9kZS55dHAtcGxheWVyLWNvbnRlbnQsLnl0cC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi1jYW5jZWxsZWQtbWluaS1tb2RlLnl0cC1wbGF5ZXItY29udGVudHtib3R0b206MH0uY291bnRkb3duLXJ1bm5pbmcgLnl0cC1hdXRvbmF2LW92ZXJsYXl7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4Oi0xfS5jb3VudGRvd24tcnVubmluZyAueXRwLWF1dG9uYXYtdmlldy1hbmQtZGF0ZXtkaXNwbGF5Om5vbmV9Lnl0cC1hdXRvbmF2LXN1Z2dlc3Rpb24tY2FyZFtkYXRhLWlzLWxpc3Q9dHJ1ZV0gLnl0cC1hdXRvbmF2LXRpbWVzdGFtcCwueXRwLWF1dG9uYXYtc3VnZ2VzdGlvbi1jYXJkW2RhdGEtaXMtbGl2ZT10cnVlXSAueXRwLWF1dG9uYXYtdGltZXN0YW1wLC55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmRbZGF0YS1pcy1taXg9dHJ1ZV0gLnl0cC1hdXRvbmF2LXRpbWVzdGFtcCwueXRwLWF1dG9uYXYtc3VnZ2VzdGlvbi1jYXJkW2RhdGEtaXMtdXBjb21pbmc9dHJ1ZV0gLnl0cC1hdXRvbmF2LXRpbWVzdGFtcHtkaXNwbGF5Om5vbmV9Lnl0cC1hdXRvbmF2LXN1Z2dlc3Rpb24tY2FyZFtkYXRhLWlzLWxpdmU9dHJ1ZV0gLnl0cC1hdXRvbmF2LWxpdmUtc3RhbXB7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZC1jb2xvcjojYzAwfS55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmQ6bm90KFtkYXRhLWlzLWxpdmU9dHJ1ZV0pIC55dHAtYXV0b25hdi1saXZlLXN0YW1we2Rpc3BsYXk6bm9uZX0ueXRwLWF1dG9uYXYtc3VnZ2VzdGlvbi1jYXJkW2RhdGEtaXMtdXBjb21pbmc9dHJ1ZV0gLnl0cC1hdXRvbmF2LXVwY29taW5nLXN0YW1we3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOCl9Lnl0cC1hdXRvbmF2LXN1Z2dlc3Rpb24tY2FyZDpub3QoW2RhdGEtaXMtdXBjb21pbmc9dHJ1ZV0pIC55dHAtYXV0b25hdi11cGNvbWluZy1zdGFtcHtkaXNwbGF5Om5vbmV9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtY29udGFpbmVyW2RhdGEtaXMtbGlzdD10cnVlXSAueXRwLWF1dG9uYXYtdGltZXN0YW1wLC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LWNvbnRhaW5lcltkYXRhLWlzLWxpdmU9dHJ1ZV0gLnl0cC1hdXRvbmF2LXRpbWVzdGFtcCwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXJbZGF0YS1pcy1taXg9dHJ1ZV0gLnl0cC1hdXRvbmF2LXRpbWVzdGFtcCwueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXJbZGF0YS1pcy11cGNvbWluZz10cnVlXSAueXRwLWF1dG9uYXYtdGltZXN0YW1we2Rpc3BsYXk6bm9uZX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXJbZGF0YS1pcy1saXZlPXRydWVdIC55dHAtYXV0b25hdi1saXZlLXN0YW1we3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQtY29sb3I6I2MwMH0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXI6bm90KFtkYXRhLWlzLWxpdmU9dHJ1ZV0pIC55dHAtYXV0b25hdi1saXZlLXN0YW1we2Rpc3BsYXk6bm9uZX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXJbZGF0YS1pcy11cGNvbWluZz10cnVlXSAueXRwLWF1dG9uYXYtdXBjb21pbmctc3RhbXB7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC44KX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1jb250YWluZXI6bm90KFtkYXRhLWlzLXVwY29taW5nPXRydWVdKSAueXRwLWF1dG9uYXYtdXBjb21pbmctc3RhbXB7ZGlzcGxheTpub25lfS55dHAtYXV0b25hdi1zdWdnZXN0aW9uLWNhcmQ6bm90KFtkYXRhLWlzLW1peD10cnVlXSkgLnl0cC1hdXRvbmF2LWxpc3Qtb3ZlcmxheXtkaXNwbGF5Om5vbmV9Lmh0bWw1LXZpZGVvLXBsYXllci55dHAtYXV0b25hdi1lbmRzY3JlZW4tY2FuY2VsbGVkLXN0YXRlLmVuZGVkLW1vZGV7YmFja2dyb3VuZC1jb2xvcjojMDAwfS55dHAtYWQtb3ZlcmxheS1vcGVuLmNvdW50ZG93bi1ydW5uaW5nIC55dHAtYWQtb3ZlcmxheS1jb250YWluZXJ7b3BhY2l0eTouM30ueXRwLWFkLW92ZXJsYXktb3BlbiAueXRwLXBsYXllci1jb250ZW50Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVye2hlaWdodDpjYWxjKDEwMCUgLSAxNDNweCl9Lnl0cC1iaWctbW9kZS55dHAtYWQtb3ZlcmxheS1vcGVuIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tY291bnRkb3duLWNvbnRhaW5lcntoZWlnaHQ6Y2FsYygxMDAlIC0gMTYwcHgpfS55dHAtYXV0b25hdi1vdmVybGF5LWNhbmNlbGxlZC1zdGF0ZXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDotMX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC1oZWFkZXItY2xvc2UtYnV0dG9ue2Rpc3BsYXk6bm9uZTt3aWR0aDozNnB4O2hlaWdodDozNnB4O2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TkNBeU5DSStQSEJoZEdnZ1ptbHNiRDBpSTJabVppSWdaRDBpVFRFNUlEWXVOREVnTVRjdU5Ua2dOU0F4TWlBeE1DNDFPU0EyTGpReElEVWdOU0EyTGpReElERXdMalU1SURFeUlEVWdNVGN1TlRrZ05pNDBNU0F4T1NBeE1pQXhNeTQwTVNBeE55NDFPU0F4T1NBeE9TQXhOeTQxT1NBeE15NDBNU0F4TW5vaUx6NDhMM04yWno0PSk7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6MjRweCAyNHB4O2JhY2tncm91bmQtc2l6ZToyNHB4O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MH0ueXRwLWRlbGhpLW1vZGVybjpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSk6bm90KC5hZC1zaG93aW5nKSAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC11cGRhdGVkIC55dHAtcGxheWVyLWNvbnRlbnR7cG9zaXRpb246dW5zZXR9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdXBkYXRlZCAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWNvdW50ZG93bi1jb250YWluZXJ7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjtoZWlnaHQ6MTAwJX0ueXRwLWF1dG9uYXYtZW5kc2NyZWVuLXVwbmV4dC11cGRhdGVkIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdG9wYmFyLWNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmp1c3RpZnk7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtaGVhZGVyLWNsb3NlLWJ1dHRvbntkaXNwbGF5OmJsb2NrfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVyIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXJ7bWFyZ2luLXRvcDowOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVyIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXIgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi12aWRlby1pbmZve21hcmdpbi10b3A6MTJweDt3aWR0aDoxMDAlfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi1jb3VudGRvd24tY29udGFpbmVyIC55dHAtYXV0b25hdi1lbmRzY3JlZW4tbGluay1jb250YWluZXIgLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdGh1bWJuYWlsey13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1wb3NpdGlvbjo1MCV9Lnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdXBkYXRlZCAueXRwLWF1dG9uYXYtZW5kc2NyZWVuLWJ1dHRvbi1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LWxpdmUtc3RhbXAsLnl0cC1hdXRvbmF2LWVuZHNjcmVlbi11cG5leHQtdXBkYXRlZCAueXRwLWF1dG9uYXYtdGltZXN0YW1wLC55dHAtYXV0b25hdi1lbmRzY3JlZW4tdXBuZXh0LXVwZGF0ZWQgLnl0cC1hdXRvbmF2LXVwY29taW5nLXN0YW1we2JvdHRvbTo4cHg7cmlnaHQ6OHB4O2JvcmRlci1yYWRpdXM6MTBweDtsaW5lLWhlaWdodDoxNnB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzp1bnNldDtwYWRkaW5nOjAgOHB4fS55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uLWNvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtZGVsaGktbW9kZXJuLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uLWNvbnRhaW5lcnt2ZXJ0aWNhbC1hbGlnbjp0b3B9Lnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b24sLnl0cC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9ue2hlaWdodDoxNC40cHg7d2lkdGg6MzZweDtib3JkZXItcmFkaXVzOjE0LjRweDt0b3A6NTAlO3Bvc2l0aW9uOnJlbGF0aXZlO2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJek1DSWdhR1ZwWjJoMFBTSXhNaUlnWm1sc2JEMGlibTl1WlNJK1BIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ1ptbHNiQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmtQU0pOTWpJdU55QXhNV015TGprMUlEQWdOUzR6TFRJdU1qRWdOUzR6TFRWekxUSXVNelV0TlMwMUxqTXROVWczTGpORE5DNHpOU0F4SURJZ015NHlNU0F5SURaek1pNHpOU0ExSURVdU15QTFlaUlnWTJ4cGNDMXlkV3hsUFNKbGRtVnViMlJrSWlCdmNHRmphWFI1UFNJdU5TSXZQanh3WVhSb0lHWnBiR3c5SWlNd01EQWlJR1pwYkd3dGIzQmhZMmwwZVQwaUxqTWlJR1pwYkd3dGNuVnNaVDBpWlhabGJtOWtaQ0lnWkQwaVRUY3VNeUF4UXpRdU16VWdNU0F5SURNdU1qRWdNaUEyY3pJdU16VWdOU0ExTGpNZ05XZ3hOUzQwUVRVdU1UWWdOUzR4TmlBd0lEQWdNQ0F5T0NBMmJDMHVNRE10TGpVMFFUVXVNVFlnTlM0eE5pQXdJREFnTUNBeU1pNDNJREY2YlRFMUxqUWdNVEZqTXk0ME5TQXdJRFl1TXkweUxqWWdOaTR6TFRaekxUSXVPRFV0TmkwMkxqTXROa2czTGpORE15NDROU0F3SURFZ01pNDJJREVnTm5NeUxqZzFJRFlnTmk0eklEWjZJaUJqYkdsd0xYSjFiR1U5SW1WMlpXNXZaR1FpSUc5d1lXTnBkSGs5SWk0MUlpOCtQQzl6ZG1jKyk7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1zaXplOmNvdmVyOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjA4cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246YWxsIC4wOHMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9ue2hlaWdodDoxOHB4O3dpZHRoOjMwcHg7YmFja2dyb3VuZC1pbWFnZTp1bnNldDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjMpO2JvcmRlci1yYWRpdXM6OXB4O21hcmdpbjowIDlweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWljb25zIC5kZWxoaS1mYXN0LWZvbGxvdy1hdXRvbmF2LXRvZ2dsZSAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvblthcmlhLWNoZWNrZWQ9dHJ1ZV17YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdGV4dC1wcmltYXJ5LCNmZmYpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLmRlbGhpLWZhc3QtZm9sbG93LWF1dG9uYXYtdG9nZ2xlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uW2FyaWEtY2hlY2tlZD1mYWxzZV17YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYnV0dG9uLXNlY29uZGFyeSxyZ2JhKDI1NSwyNTUsMjU1LC4xKSl9Lnl0cC1iaWctbW9kZS55dHAtZGVsaGktbW9kZXJuLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b257bWFyZ2luOjAgY2FsYygodmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsIDU2cHgpIC0gMzBweCkvMil9Lnl0cC14c21hbGwtd2lkdGgtbW9kZS55dHAtZGVsaGktbW9kZXJuLWljb25zLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b257aGVpZ2h0OjEzLjVweDt3aWR0aDoyMi41cHg7Ym9yZGVyLXJhZGl1czo2Ljc1cHg7bWFyZ2luOjAgNXB4fS55dHAtc21hbGwtbW9kZSAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvbiwueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9ue2hlaWdodDoxMC44cHg7d2lkdGg6MjdweDtib3JkZXItcmFkaXVzOjEwLjhweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9ue2hlaWdodDoxOHB4O3dpZHRoOjQ1cHg7Ym9yZGVyLXJhZGl1czoxOHB4fS55dHAtZW1iZWQgLnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b257aGVpZ2h0OjEycHg7d2lkdGg6MzBweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b25bYXJpYS1jaGVja2VkPXRydWVde2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJek1DSWdhR1ZwWjJoMFBTSXhNaUlnWm1sc2JEMGlibTl1WlNJK1BIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ1ptbHNiQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmtQU0pOTWpJdU55QXhNV015TGprMUlEQWdOUzR6TFRJdU1qRWdOUzR6TFRWekxUSXVNelV0TlMwMUxqTXROVWczTGpORE5DNHpOU0F4SURJZ015NHlNU0F5SURaek1pNHpOU0ExSURVdU15QTFlbTB0TWk0M0xTNDNOWFl0T0M0MWJEWXVOeUEwTGpJMmVpSWdZMnhwY0MxeWRXeGxQU0psZG1WdWIyUmtJaUJ2Y0dGamFYUjVQU0l1TlNJdlBqeHdZWFJvSUdacGJHdzlJaU13TURBaUlHWnBiR3d0YjNCaFkybDBlVDBpTGpNaUlHWnBiR3d0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRjdU15QXhRelF1TXpVZ01TQXlJRE11TWpFZ01pQTJjekl1TXpVZ05TQTFMak1nTldneE5TNDBRVFV1TVRZZ05TNHhOaUF3SURBZ01DQXlPQ0EyYkMwdU1ETXRMalUwUVRVdU1UWWdOUzR4TmlBd0lEQWdNQ0F5TWk0M0lERjZiVEUxTGpRZ01URmpNeTQwTlNBd0lEWXVNeTB5TGpZZ05pNHpMVFp6TFRJdU9EVXROaTAyTGpNdE5rZzNMak5ETXk0NE5TQXdJREVnTWk0MklERWdObk15TGpnMUlEWWdOaTR6SURaNklpQmpiR2x3TFhKMWJHVTlJbVYyWlc1dlpHUWlJRzl3WVdOcGRIazlJaTQxSWk4K1BDOXpkbWMrKTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LXRyYW5zaXRpb246YWxsIC4wOHMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmFsbCAuMDhzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b246YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7aGVpZ2h0OjIwLjRweDt3aWR0aDoyMC40cHg7Ym9yZGVyLXJhZGl1czoyMC40cHg7bWFyZ2luLXRvcDotM3B4O2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlHWnBiR3c5SW01dmJtVWlJSFpwWlhkQ2IzZzlJakFnTUNBeE55QXhOeUkrUEhCaGRHZ2dabWxzYkQwaUl6Y3hOekUzTVNJZ1ptbHNiQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmtQU0pOT0M0MUlERTJZVGN1TlNBM0xqVWdNQ0F4SURBZ01DMHhOU0EzTGpVZ055NDFJREFnTUNBd0lEQWdNVFVpSUdOc2FYQXRjblZzWlQwaVpYWmxibTlrWkNJdlBqeHdZWFJvSUdacGJHdzlJaU13TURBaUlHWnBiR3d0YjNCaFkybDBlVDBpTGpFMUlpQm1hV3hzTFhKMWJHVTlJbVYyWlc1dlpHUWlJR1E5SWsweE55QTRMalZoT0M0MUlEZ3VOU0F3SURFZ01TMHhOeUF3SURndU5TQTRMalVnTUNBd0lERWdNVGNnTUcwdE1TQXdZVGN1TlNBM0xqVWdNQ0F4SURFdE1UVWdNQ0EzTGpVZ055NDFJREFnTUNBeElERTFJREFpSUdOc2FYQXRjblZzWlQwaVpYWmxibTlrWkNJdlBqeHdZWFJvSUdacGJHdzlJaU5tWm1ZaUlHUTlJazAxTGpVZ01USm9NbFkxYUMweWVtMDBMVGQyTjJneVZqVjZJaTgrUEM5emRtYyspOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3Zlcjstd2Via2l0LXRyYW5zaXRpb246YWxsIC4wOHMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmFsbCAuMDhzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLW1vZGVybi1pY29ucyAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvbjphZnRlcntoZWlnaHQ6MTRweDt3aWR0aDoxNHB4O2JvcmRlci1yYWRpdXM6N3B4O21hcmdpbjoycHg7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l6TmlJZ2FHVnBaMmgwUFNJek5pSWdabWxzYkQwaWJtOXVaU0lnZG1sbGQwSnZlRDBpTUNBd0lETTJJRE0ySWo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCa1BTSk5NVEl1TnpVZ05DNDFhQzB6WXkwdU5pQXdMVEV1TVRjdU1qTXRNUzQyTGpZMUxTNDBNaTQwTXkwdU5qVWdNUzB1TmpVZ01TNDJkakl5TGpWak1DQXVOVGt1TWpNZ01TNHhOaTQyTlNBeExqVTVMalF6TGpReUlERWdMalkySURFdU5pNDJObWd6WXk0MU9TQXdJREV1TVRZdExqSTBJREV1TlRrdExqWTJMalF5TFM0ME15NDJOaTB4SUM0Mk5pMHhMalU1VmpZdU56VmpNQzB1TmkwdU1qUXRNUzR4TnkwdU5qWXRNUzQyTFM0ME15MHVOREl0TVMwdU5qVXRNUzQxT1MwdU5qVnRNVE11TlNBd2FDMHpZeTB1TmlBd0xURXVNVGN1TWpNdE1TNDJMalkxTFM0ME1pNDBNeTB1TmpVZ01TMHVOalVnTVM0MmRqSXlMalZqTUNBdU5Ua3VNak1nTVM0eE5pNDJOU0F4TGpVNUxqUXpMalF5SURFZ0xqWTJJREV1Tmk0Mk5tZ3pZeTQxT1NBd0lERXVNVFl0TGpJMElERXVOVGt0TGpZMkxqUXlMUzQwTXk0Mk5pMHhJQzQyTmkweExqVTVWall1TnpWak1DMHVOaTB1TWpRdE1TNHhOeTB1TmpZdE1TNDJMUzQwTXkwdU5ESXRNUzB1TmpVdE1TNDFPUzB1TmpVaUx6NDhMM04yWno0PSk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4zKTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo5cHggOXB4O2JhY2tncm91bmQtc2l6ZTo5cHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246NTAlOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246YWxsIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWljb25zIC5kZWxoaS1mYXN0LWZvbGxvdy1hdXRvbmF2LXRvZ2dsZSAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvbjphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXpOaUlnYUdWcFoyaDBQU0l6TmlJZ1ptbHNiRDBpYm05dVpTSWdkbWxsZDBKdmVEMGlNQ0F3SURNMklETTJJajQ4Y0dGMGFDQm1hV3hzUFNJak1EQXdJaUJrUFNKTk1USXVOelVnTkM0MWFDMHpZeTB1TmlBd0xURXVNVGN1TWpNdE1TNDJMalkxTFM0ME1pNDBNeTB1TmpVZ01TMHVOalVnTVM0MmRqSXlMalZqTUNBdU5Ua3VNak1nTVM0eE5pNDJOU0F4TGpVNUxqUXpMalF5SURFZ0xqWTJJREV1Tmk0Mk5tZ3pZeTQxT1NBd0lERXVNVFl0TGpJMElERXVOVGt0TGpZMkxqUXlMUzQwTXk0Mk5pMHhJQzQyTmkweExqVTVWall1TnpWak1DMHVOaTB1TWpRdE1TNHhOeTB1TmpZdE1TNDJMUzQwTXkwdU5ESXRNUzB1TmpVdE1TNDFPUzB1TmpWdE1UTXVOU0F3YUMwell5MHVOaUF3TFRFdU1UY3VNak10TVM0MkxqWTFMUzQwTWk0ME15MHVOalVnTVMwdU5qVWdNUzQyZGpJeUxqVmpNQ0F1TlRrdU1qTWdNUzR4Tmk0Mk5TQXhMalU1TGpRekxqUXlJREVnTGpZMklERXVOaTQyTm1nell5NDFPU0F3SURFdU1UWXRMakkwSURFdU5Ua3RMalkyTGpReUxTNDBNeTQyTmkweElDNDJOaTB4TGpVNVZqWXVOelZqTUMwdU5pMHVNalF0TVM0eE55MHVOall0TVM0MkxTNDBNeTB1TkRJdE1TMHVOalV0TVM0MU9TMHVOalVpTHo0OEwzTjJaejQ9KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10ZXh0LXByaW1hcnksI2ZmZil9Lnl0cC14c21hbGwtd2lkdGgtbW9kZS55dHAtZGVsaGktbW9kZXJuLWljb25zLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b246YWZ0ZXJ7aGVpZ2h0OjEwLjVweDt3aWR0aDoxMC41cHg7Ym9yZGVyLXJhZGl1czo1LjI1cHg7bWFyZ2luOjFweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b246YWZ0ZXJ7bGVmdDotMnB4O2hlaWdodDoxNS4zcHg7d2lkdGg6MTUuM3B4O2JvcmRlci1yYWRpdXM6MTUuM3B4O21hcmdpbi10b3A6LTIuMjVweH0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uOmFmdGVye2xlZnQ6MDtoZWlnaHQ6MjUuNXB4O3dpZHRoOjI1LjVweDtib3JkZXItcmFkaXVzOjI1LjVweDttYXJnaW4tdG9wOi0zLjc1cHh9Lnl0cC1lbWJlZCAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvbjphZnRlcntsZWZ0OjA7aGVpZ2h0OjE3cHg7d2lkdGg6MTdweDtib3JkZXItcmFkaXVzOjE3cHg7bWFyZ2luLXRvcDotMi41cHh9Lnl0cC1hdXRvbmF2LXRvZ2dsZS1idXR0b25bYXJpYS1jaGVja2VkPXRydWVdOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlHWnBiR3c5SW01dmJtVWlJSFpwWlhkQ2IzZzlJakFnTUNBeE55QXhOeUkrUEhCaGRHZ2dabWxzYkQwaUl6QXdNQ0lnWm1sc2JDMXZjR0ZqYVhSNVBTSXVNVFVpSUdacGJHd3RjblZzWlQwaVpYWmxibTlrWkNJZ1pEMGlUVEUzSURndU5XRTRMalVnT0M0MUlEQWdNU0F4TFRFM0lEQWdPQzQxSURndU5TQXdJREFnTVNBeE55QXdiUzAxSURCTU5pNDFJRFYyTjNwdExURXVPRFlnTUV3M0xqVWdOaTQ0TW5ZekxqTTJlazA0TGpVZ01UWmhOeTQxSURjdU5TQXdJREVnTUNBd0xURTFJRGN1TlNBM0xqVWdNQ0F3SURBZ01DQXhOU0lnWTJ4cGNDMXlkV3hsUFNKbGRtVnViMlJrSWk4K1BIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ1ptbHNiQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmtQU0pOTVRZZ09DNDFZVGN1TlNBM0xqVWdNQ0F4SURFdE1UVWdNQ0EzTGpVZ055NDFJREFnTUNBeElERTFJREJ0TFRRZ01FdzJMalVnTVRKV05Yb2lJR05zYVhBdGNuVnNaVDBpWlhabGJtOWtaQ0l2UGp3dmMzWm5QZz09KTtsZWZ0OjFweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE1LjZweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE1LjZweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTUuNnB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uW2FyaWEtY2hlY2tlZD10cnVlXTphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXpOaUlnYUdWcFoyaDBQU0l6TmlJZ1ptbHNiRDBpYm05dVpTSWdkbWxsZDBKdmVEMGlNQ0F3SURNMklETTJJajQ4Y0dGMGFDQm1hV3hzUFNJak1EQXdJaUJrUFNKdE1UY2dPQzQyTFRZdU1URXRNeTQyTVdNdE1TNDFMUzQ0T0MwekxqTTVMakl0TXk0ek9TQXhMamswZGpJeUxqRXpZekFnTVM0M05DQXhMamc1SURJdU9ESWdNeTR6T1NBeExqazBUREUzSURJM0xqUjZiVEFnTUhZeE9DNDRURE16SURFNGVpSXZQand2YzNablBnPT0pO2JhY2tncm91bmQtY29sb3I6I2ZmZjstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo5cHggOXB4O2JhY2tncm91bmQtc2l6ZTo5cHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTJweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDEycHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDEycHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLmRlbGhpLWZhc3QtZm9sbG93LWF1dG9uYXYtdG9nZ2xlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uW2FyaWEtY2hlY2tlZD10cnVlXTphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXpOaUlnYUdWcFoyaDBQU0l6TmlJZ1ptbHNiRDBpYm05dVpTSWdkbWxsZDBKdmVEMGlNQ0F3SURNMklETTJJajQ4Y0dGMGFDQm1hV3hzUFNJalptWm1JaUJrUFNKdE1UY2dPQzQyTFRZdU1URXRNeTQyTVdNdE1TNDFMUzQ0T0MwekxqTTVMakl0TXk0ek9TQXhMamswZGpJeUxqRXpZekFnTVM0M05DQXhMamc1SURJdU9ESWdNeTR6T1NBeExqazBUREUzSURJM0xqUjZiVEFnTUhZeE9DNDRURE16SURFNGVpSXZQand2YzNablBnPT0pO2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtc29saWQsIzBmMGYwZil9Lnl0cC1zbWFsbC1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uW2FyaWEtY2hlY2tlZD10cnVlXTphZnRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDExLjdweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDExLjdweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTEuN3B4KX0ueXRwLWJpZy1tb2RlIC55dHAtYXV0b25hdi10b2dnbGUtYnV0dG9uW2FyaWEtY2hlY2tlZD10cnVlXTphZnRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE5LjVweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE5LjVweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTkuNXB4KX0ueXRwLXhzbWFsbC13aWR0aC1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMueXRwLWRlbGhpLW1vZGVybiAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvblthcmlhLWNoZWNrZWQ9dHJ1ZV06YWZ0ZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCg4cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCg4cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDhweCl9Lnl0cC1lbWJlZCAueXRwLWF1dG9uYXYtdG9nZ2xlLWJ1dHRvblthcmlhLWNoZWNrZWQ9dHJ1ZV06YWZ0ZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxM3B4KTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTNweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTNweCl9Lnl0cC1iZXplbHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTt0b3A6NTAlO3dpZHRoOjUycHg7aGVpZ2h0OjUycHg7ei1pbmRleDoxOTttYXJnaW4tbGVmdDotMjZweDttYXJnaW4tdG9wOi0yNnB4O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNSk7Ym9yZGVyLXJhZGl1czoyNnB4Oy13ZWJraXQtYW5pbWF0aW9uOnl0cC1iZXplbC1mYWRlb3V0IC41cyBsaW5lYXIgMSBub3JtYWwgZm9yd2FyZHM7YW5pbWF0aW9uOnl0cC1iZXplbC1mYWRlb3V0IC41cyBsaW5lYXIgMSBub3JtYWwgZm9yd2FyZHM7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWJlemVse2xlZnQ6NTAlO3RvcDo1MCU7d2lkdGg6NzhweDtoZWlnaHQ6NzhweDttYXJnaW4tbGVmdDotMzlweDttYXJnaW4tdG9wOi0zOXB4O2JvcmRlci1yYWRpdXM6MzlweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpOy13ZWJraXQtYW5pbWF0aW9uOnl0cC1kZWxoaS1tb2Rlcm4tYmV6ZWwtZmFkZW91dCAxcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAxIG5vcm1hbCBmb3J3YXJkczthbmltYXRpb246eXRwLWRlbGhpLW1vZGVybi1iZXplbC1mYWRlb3V0IDFzIGN1YmljLWJlemllciguMDUsMCwwLDEpIDEgbm9ybWFsIGZvcndhcmRzfS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtYmV6ZWwtaWNvbiBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRwLWJpZy1tb2RlIC55dHAtYmV6ZWx7d2lkdGg6NzhweDtoZWlnaHQ6NzhweDttYXJnaW4tbGVmdDotMzlweDttYXJnaW4tdG9wOi0zOXB4O2JvcmRlci1yYWRpdXM6MzlweH0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1iZXplbHt3aWR0aDo2NHB4O2hlaWdodDo2NHB4O21hcmdpbi1sZWZ0Oi0zMnB4O21hcmdpbi10b3A6LTMycHg7Ym9yZGVyLXJhZGl1czozMnB4fS55dHAtYmV6ZWwtaWNvbnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O21hcmdpbjo2cHh9Lnl0cC1wbGF5ZXItY29udGVudCAueXRwLWJlemVsLWljb257d2lkdGg6NDhweDtoZWlnaHQ6NDhweDttYXJnaW46MnB4fS55dHAtYmlnLW1vZGUgLnl0cC1iZXplbC1pY29uLC55dHAtZGVsaGktbW9kZXJuIC55dHAtYmV6ZWwtaWNvbnt3aWR0aDo1NHB4O2hlaWdodDo1NHB4O21hcmdpbjoxMnB4fS55dHAtZGVsaGktbW9kZXJuLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWJlemVsLWljb257d2lkdGg6NDhweDtoZWlnaHQ6NDhweDttYXJnaW46OHB4fS55dHAtYmV6ZWwtdGV4dC13cmFwcGVye3RleHQtYWxpZ246Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO3RvcDoxMCU7ei1pbmRleDoxOX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWJlemVsLXRleHQtd3JhcHBlcnstd2Via2l0LWFuaW1hdGlvbjp5dHAtZGVsaGktbW9kZXJuLWJlemVsLXRleHQtZmFkZW91dCAxcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAxIG5vcm1hbCBmb3J3YXJkczthbmltYXRpb246eXRwLWRlbGhpLW1vZGVybi1iZXplbC10ZXh0LWZhZGVvdXQgMXMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSkgMSBub3JtYWwgZm9yd2FyZHN9Lnl0cC1iZXplbC10ZXh0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6MTBweCAyMHB4O2ZvbnQtc2l6ZToxNzUlO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNSk7cG9pbnRlci1ldmVudHM6bm9uZTtib3JkZXItcmFkaXVzOjNweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWJlemVsLXRleHR7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLHJnYmEoMCwwLDAsLjYpKX0ueXRwLWJlemVsLXRleHQtaGlkZSAueXRwLWJlemVsLXRleHR7ZGlzcGxheTpub25lfUAtd2Via2l0LWtleWZyYW1lcyB5dHAtYmV6ZWwtZmFkZW91dHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDIpO3RyYW5zZm9ybTpzY2FsZSgyKX19QGtleWZyYW1lcyB5dHAtYmV6ZWwtZmFkZW91dHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDIpO3RyYW5zZm9ybTpzY2FsZSgyKX19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1kZWxoaS1tb2Rlcm4tYmV6ZWwtZmFkZW91dHswJXtvcGFjaXR5OjB9MjUlLDc1JXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4zMyk7dHJhbnNmb3JtOnNjYWxlKDEuMzMpfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSl9fUBrZXlmcmFtZXMgeXRwLWRlbGhpLW1vZGVybi1iZXplbC1mYWRlb3V0ezAle29wYWNpdHk6MH0yNSUsNzUle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjMzKTt0cmFuc2Zvcm06c2NhbGUoMS4zMyl9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1kZWxoaS1tb2Rlcm4tYmV6ZWwtdGV4dC1mYWRlb3V0ezAle29wYWNpdHk6MH0yNSUsNzUle29wYWNpdHk6MX10b3tvcGFjaXR5OjB9fUBrZXlmcmFtZXMgeXRwLWRlbGhpLW1vZGVybi1iZXplbC10ZXh0LWZhZGVvdXR7MCV7b3BhY2l0eTowfTI1JSw3NSV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19Lnl0cC1jaHJvbWUtdG9wIC55dHAtY2FyZHMtYnV0dG9uey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3BvaW50ZXItZXZlbnRzOmFsbDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjYyfS55dHAtY2hyb21lLXRvcCAueXRwLWNhcmRzLWJ1dHRvblthcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLXRvcCAueXRwLWNhcmRzLWJ1dHRvbiAueXRwLWNhcmRzLWJ1dHRvbi1pY29ue3dpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLHJnYmEoMCwwLDAsLjYpKTtib3JkZXItcmFkaXVzOjE4cHh9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1iaWctbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtY2FyZHMtYnV0dG9ue21heC13aWR0aDo4MHB4O3dpZHRoOjM2cHh9Lnl0cC1zaG93LWNhcmRzLXRpdGxlIC55dHAtY2FyZHMtYnV0dG9ue21hcmdpbi1sZWZ0OjEwcHg7bWFyZ2luLXJpZ2h0OjEwcHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtc2hvdy1jYXJkcy10aXRsZSAueXRwLWNhcmRzLWJ1dHRvbnttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDowfS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKS55dHAtc21hbGwtbW9kZSAueXRwLWNhcmRzLWJ1dHRvbntwYWRkaW5nLXRvcDoxNnB4fS55dHAtc2hvdy1jYXJkcy10aXRsZSAueXRwLWNhcmRzLWJ1dHRvbi10aXRsZXtkaXNwbGF5OmJsb2NrfS55dHAtY2FyZHMtYnV0dG9uLWljb24tc2hvcHBpbmcsLnl0cC1zbWFsbC1tb2RlIC55dHAtc2hvdy1jYXJkcy10aXRsZSAueXRwLWNhcmRzLWJ1dHRvbi10aXRsZXtkaXNwbGF5Om5vbmV9Lnl0cC1jYXJkcy1zaG9wcGluZy1hY3RpdmUgLnl0cC1jYXJkcy1idXR0b24taWNvbi1zaG9wcGluZ3tkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWNhcmRzLXNob3BwaW5nLWFjdGl2ZSAueXRwLWNhcmRzLWJ1dHRvbi1pY29uLWRlZmF1bHR7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtY2FyZHMtYnV0dG9uLC55dHAtY2hyb21lLXRvcCAueXRwLWNhcmRzLWJ1dHRvbnt3aWR0aDphdXRvO2hlaWdodDphdXRvfS55dHAtY2FyZHMtYnV0dG9uLWljb257bWFyZ2luOmF1dG87d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLWJpZy1tb2RlIC55dHAtY2FyZHMtYnV0dG9uLWljb257d2lkdGg6NTRweDtoZWlnaHQ6NTRweH0ueXRwLWNhcmRzLWJ1dHRvbi10aXRsZXtmb250LXdlaWdodDo1MDA7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHg7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1jYXJkcy1idXR0b24tdGl0bGV7Zm9udC1zaXplOjIwcHh9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1iaWctbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtY2FyZHMtYnV0dG9uLXRpdGxle3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7b3ZlcmZsb3c6aGlkZGVufS55dHAtY2FyZHMtYnV0dG9uIC55dHAtc3ZnLXNoYWRvd3std2Via2l0LXRyYW5zaXRpb246c3Ryb2tlLW9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpzdHJva2Utb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLWJ1dHRvbiAueXRwLXN2Zy1zaGFkb3d7c3Ryb2tlLW9wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246c3Ryb2tlLW9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjI1czt0cmFuc2l0aW9uOnN0cm9rZS1vcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIC4yNXN9Lnl0cC1jYXJkcy1idXR0b24gLnl0cC1zdmctc2hhZG93LWZpbGx7LXdlYmtpdC10cmFuc2l0aW9uOmZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLWJ1dHRvbiAueXRwLXN2Zy1zaGFkb3ctZmlsbHtmaWxsLW9wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246ZmlsbC1vcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIC4yNXM7dHJhbnNpdGlvbjpmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjI1c30ueXRwLWNhcmRzLXNob3BwaW5nLWFjdGl2ZS55dHAtY2FyZHMtdGVhc2VyLXNob3duIC55dHAtY2FyZHMtYnV0dG9uIC55dHAtc3ZnLWZpbGx7ZmlsbDojMjc5M2U2fS55dHAtY2FyZHMtc2hvcHBpbmctYWN0aXZlLnl0cC1jYXJkcy10ZWFzZXItc2hvd24gLnl0cC1jYXJkcy1idXR0b24gLnl0cC1zdmctc2hhZG93e3N0cm9rZTojZmZmO3N0cm9rZS1vcGFjaXR5OjF9Lnl0cC1jYXJkcy1zaG9wcGluZy1hY3RpdmUueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLWJ1dHRvbiAueXRwLXN2Zy1zaGFkb3ctZmlsbHtmaWxsOiNmZmY7ZmlsbC1vcGFjaXR5OjF9Lnl0cC1jYXJkcy10ZWFzZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjguNXB4O3JpZ2h0OjA7bWF4LXdpZHRoOjkwJTtvcGFjaXR5Oi43NTtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjYxOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtY2FyZHMtdGVhc2Vye3RvcDoxM3B4fS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKS55dHAtc21hbGwtbW9kZSAueXRwLWNhcmRzLXRlYXNlcnt0b3A6MTZweH0uaHRtbDUtdmlkZW8tcGxheWVyLmFkLXNob3dpbmc6bm90KC52aWRlb0FkVWlSZWRlc2lnbikgLnl0cC1jYXJkcy10ZWFzZXJ7dG9wOjQwcHh9Lnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXIsLnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLXRlYXNlcntvcGFjaXR5OjF9Lnl0cC1jYXJkcy10ZWFzZXItc2hvd24gLnl0cC1jYXJkcy10ZWFzZXJ7b3BhY2l0eTouOX0ueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLXRlYXNlcjpob3ZlcntvcGFjaXR5OjF9Lnl0cC1hdXRvaGlkZTpub3QoLnl0cC1jYXJkcy10ZWFzZXItc2hvd24pIC55dHAtY2FyZHMtdGVhc2VyLC55dHAtaXYtZHJhd2VyLW9wZW4gLnl0cC1jYXJkcy10ZWFzZXJ7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpIC4zM3M7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpIC4zM3N9Lnl0cC1pdi1kcmF3ZXItb3BlbiAueXRwLWNhcmRzLXRlYXNlcnstd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6MHM7dHJhbnNpdGlvbi1kZWxheTowc30ueXRwLWNhcmRzLXRlYXNlciAueXRwLWNhcmRzLXRlYXNlci1ib3gsLnl0cC1jYXJkcy10ZWFzZXIgLnl0cC1jYXJkcy10ZWFzZXItdGV4dHtoZWlnaHQ6MzFweH0ueXRwLWJpZy1tb2RlIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLWJveCwueXRwLWJpZy1tb2RlIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLXRleHR7aGVpZ2h0OjQ2cHh9Lnl0cC1jYXJkcy10ZWFzZXIgLnl0cC1jYXJkcy10ZWFzZXItYm94e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjE4cHg7Ym9yZGVyLXJhZGl1czoycHg7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2YxZjFmMTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjMzcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMzNzIGN1YmljLWJlemllciguNCwwLDEsMSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDApIHRyYW5zbGF0ZVgoMCk7LW1zLXRyYW5zZm9ybTpzY2FsZVgoMCkgdHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06c2NhbGVYKDApIHRyYW5zbGF0ZVgoMCk7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IDA7LW1zLXRyYW5zZm9ybS1vcmlnaW46cmlnaHQgMDt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IDB9Lnl0cC1iaWctbW9kZSAueXRwLWNhcmRzLXRlYXNlciAueXRwLWNhcmRzLXRlYXNlci1ib3h7cmlnaHQ6MjdweH0ueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLXRlYXNlciAueXRwLWNhcmRzLXRlYXNlci1ib3h7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAuMjVzO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAuMjVzLC13ZWJraXQtdHJhbnNmb3JtIC4zM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAuMjVzOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgxKSB0cmFuc2xhdGVYKDE4cHgpOy1tcy10cmFuc2Zvcm06c2NhbGVYKDEpIHRyYW5zbGF0ZVgoMThweCk7dHJhbnNmb3JtOnNjYWxlWCgxKSB0cmFuc2xhdGVYKDE4cHgpfS55dHAtYmlnLW1vZGUueXRwLWNhcmRzLXRlYXNlci1zaG93biAueXRwLWNhcmRzLXRlYXNlciAueXRwLWNhcmRzLXRlYXNlci1ib3h7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpIHRyYW5zbGF0ZVgoMjdweCk7LW1zLXRyYW5zZm9ybTpzY2FsZVgoMSkgdHJhbnNsYXRlWCgyN3B4KTt0cmFuc2Zvcm06c2NhbGVYKDEpIHRyYW5zbGF0ZVgoMjdweCl9W2Rpcj1ydGxdIC55dHAtY2FyZHMtdGVhc2VyLXNob3duIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLWJveHstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSkgdHJhbnNsYXRlWCgtMThweCk7LW1zLXRyYW5zZm9ybTpzY2FsZVgoMSkgdHJhbnNsYXRlWCgtMThweCk7dHJhbnNmb3JtOnNjYWxlWCgxKSB0cmFuc2xhdGVYKC0xOHB4KX1bZGlyPXJ0bF0gLnl0cC1iaWctbW9kZS55dHAtY2FyZHMtdGVhc2VyLXNob3duIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLWJveHstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSkgdHJhbnNsYXRlWCgtMjdweCk7LW1zLXRyYW5zZm9ybTpzY2FsZVgoMSkgdHJhbnNsYXRlWCgtMjdweCk7dHJhbnNmb3JtOnNjYWxlWCgxKSB0cmFuc2xhdGVYKC0yN3B4KX0ueXRwLWNhcmRzLXRlYXNlciAueXRwLWNhcmRzLXRlYXNlci10ZXh0e3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmc6MCAzNnB4IDAgMTBweDttYXgtd2lkdGg6MDtvcGFjaXR5OjA7Y29sb3I6IzAwMDtmb250LXdlaWdodDo1MDA7Zm9udC1zaXplOjEwOS4wOTA5MDklO2xpbmUtaGVpZ2h0OjMxcHg7dGV4dC1zaGFkb3c6bm9uZTstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjE2NXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxtYXgtd2lkdGggMHMgZWFzZSAuMTY1czt0cmFuc2l0aW9uOm9wYWNpdHkgLjE2NXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxtYXgtd2lkdGggMHMgZWFzZSAuMTY1c30ueXRwLWJpZy1tb2RlIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLXRleHR7cGFkZGluZzowIDY2cHggMCAxMnB4O2xpbmUtaGVpZ2h0OjQ2cHh9Lnl0cC1jYXJkcy10ZWFzZXItc2hvd24gLnl0cC1jYXJkcy10ZWFzZXIgLnl0cC1jYXJkcy10ZWFzZXItdGV4dHttYXgtd2lkdGg6NDE1cHg7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xNjVzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjQxNXM7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNjVzIGN1YmljLWJlemllcigwLDAsLjIsMSkgLjQxNXN9Lnl0cC1iaWctbW9kZS55dHAtY2FyZHMtdGVhc2VyLXNob3duIC55dHAtY2FyZHMtdGVhc2VyIC55dHAtY2FyZHMtdGVhc2VyLXRleHR7bWF4LXdpZHRoOjYzNXB4fS55dHAtY2FyZHMtdGVhc2VyLWNoYW5uZWwtYXZhdGFye2Rpc3BsYXk6bm9uZX0ueXRwLWNhcmRzLXRlYXNlci1kaXNtaXNzaWJsZSAueXRwLWNhcmRzLXRlYXNlci10ZXh0e3dpZHRoOjMwcHg7bGVmdDpjYWxjKDEwMCUgLSAzMHB4KTstd2Via2l0LXRyYW5zaXRpb246d2lkdGggLjMzcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOndpZHRoIC4zM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7b3BhY2l0eToxOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bSxyZ2JhKDAsMCwwLC42KSk7cGFkZGluZzowO2JvcmRlci1yYWRpdXM6MThweH0ueXRwLWJpZy1tb2RlLnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItdGV4dHtib3JkZXItcmFkaXVzOjIycHh9Lnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItY2hhbm5lbC1hdmF0YXJ7d2lkdGg6MjJweDtoZWlnaHQ6MjJweDttYXJnaW46NHB4O2JvcmRlci1yYWRpdXM6NTAlO2N1cnNvcjpwb2ludGVyO2Zsb2F0OmxlZnR9Lnl0cC1iaWctbW9kZS55dHAtY2FyZHMtdGVhc2VyLWRpc21pc3NpYmxlIC55dHAtY2FyZHMtdGVhc2VyLWNoYW5uZWwtYXZhdGFye21hcmdpbjoxMnB4fS55dHAtY2FyZHMtdGVhc2VyLWRpc21pc3NpYmxlLnl0cC1jYXJkcy10ZWFzZXItc2hvd24gLnl0cC1jYXJkcy10ZWFzZXIgLnl0cC1jYXJkcy10ZWFzZXItdGV4dHt3aWR0aDoxMDAlO2xlZnQ6MDstd2Via2l0LXRyYW5zaXRpb246d2lkdGggLjMzcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAuMnMsbGVmdCAuMzNzIGN1YmljLWJlemllciguMDUsMCwwLDEpIC4yczt0cmFuc2l0aW9uOndpZHRoIC4zM3MgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSkgLjJzLGxlZnQgLjMzcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAuMnN9Lnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItaW5mby1pY29ue2hlaWdodDozMHB4O3dpZHRoOjMwcHg7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7ZmxvYXQ6bGVmdH0ueXRwLWNhcmRzLXRlYXNlci1kaXNtaXNzaWJsZSAueXRwLWNhcmRzLXRlYXNlci1jbG9zZS1idXR0b257aGVpZ2h0OjMwcHg7d2lkdGg6MjBweDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO3BhZGRpbmc6MDttYXJnaW46MCA1cHg7Y3Vyc29yOnBvaW50ZXI7ZmxvYXQ6cmlnaHR9Lnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItY2xvc2UtYnV0dG9uIHBhdGh7ZmlsbDojNzE3MTcxfS55dHAtY2FyZHMtdGVhc2VyLWRpc21pc3NpYmxlIC55dHAtY2FyZHMtdGVhc2VyLWxhYmVse2Rpc3BsYXk6aW5saW5lLWJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2NvbG9yOiNmZmY7bGluZS1oZWlnaHQ6MzBweDttYXgtd2lkdGg6MzUwcHh9Lnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItYm94e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTpub25lfS55dHAtYmlnLW1vZGUueXRwLWNhcmRzLXRlYXNlci1kaXNtaXNzaWJsZSAueXRwLWNhcmRzLXRlYXNlci1pbmZvLWljb257aGVpZ2h0OjQ1cHg7d2lkdGg6NDVweH0ueXRwLWJpZy1tb2RlLnl0cC1jYXJkcy10ZWFzZXItZGlzbWlzc2libGUgLnl0cC1jYXJkcy10ZWFzZXItY2xvc2UtYnV0dG9ue2hlaWdodDo0NXB4O3dpZHRoOjMwcHg7bWFyZ2luOjAgNy41cHh9Lnl0cC1iaWctbW9kZS55dHAtY2FyZHMtdGVhc2VyLWRpc21pc3NpYmxlIC55dHAtY2FyZHMtdGVhc2VyLWxhYmVse2xpbmUtaGVpZ2h0OjQ1cHg7bWF4LXdpZHRoOjUyNXB4fS55dHAtYmlnLW1vZGUueXRwLWNhcmRzLXRlYXNlci1kaXNtaXNzaWJsZSAueXRwLWNhcmRzLXRlYXNlci10ZXh0e3BhZGRpbmc6MH0ueXRwLWVtYmVkLnl0cC1jYXJkcy10ZWFzZXItc2hvd24ueXRwLWNhcmRzLXRlYXNlci1kaXNtaXNzaWJsZSAueXRwLWNocm9tZS10b3AtYnV0dG9ucz46bm90KC55dHAtY2FyZHMtdGVhc2VyKXt2aXNpYmlsaXR5OmhpZGRlbn0ueXRwLXRpdGxlLWVuYWJsZS1jaGFubmVsLWxvZ28gLnl0cC10aXRsZXttaW4taGVpZ2h0OjUycHh9Lnl0cC1iaWctbW9kZS55dHAtdGl0bGUtZW5hYmxlLWNoYW5uZWwtbG9nbyAueXRwLXRpdGxle21pbi1oZWlnaHQ6NzVweH0ueXRwLXNob3J0cy1tb2RlLnl0cC10aXRsZS1lbmFibGUtY2hhbm5lbC1sb2dvIC55dHAtdGl0bGV7bWluLWhlaWdodDo0MnB4fTpub3QoLnl0cC1zaG9ydHMtbW9kZSkueXRwLXRpdGxlLWVuYWJsZS1jaGFubmVsLWxvZ28gLnl0cC10aXRsZS10ZXh0e3BhZGRpbmctbGVmdDo1MHB4fTpub3QoLnl0cC1zaG9ydHMtbW9kZSkueXRwLWJpZy1tb2RlLnl0cC10aXRsZS1lbmFibGUtY2hhbm5lbC1sb2dvIC55dHAtdGl0bGUtdGV4dHtwYWRkaW5nLWxlZnQ6NzVweH0ueXRwLXRpdGxlLWxpbmt7ZGlzcGxheTpibG9jazt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO292ZXJmbG93OmhpZGRlbn0ueXRwLXRpdGxlLWNoYW5uZWwtbG9nb3t3aWR0aDo0MHB4O2hlaWdodDo0MHB4Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0Oy13ZWJraXQtZmxleC1zaHJpbms6MDtmbGV4LXNocmluazowO21hcmdpbjo1cHg7LXdlYmtpdC1iYWNrZ3JvdW5kLW9yaWdpbjpjb250ZW50LWJveDtiYWNrZ3JvdW5kLW9yaWdpbjpjb250ZW50LWJveDtmbG9hdDpsZWZ0O2JvcmRlci1yYWRpdXM6NTAlfS55dHAtYmlnLW1vZGUgLnl0cC10aXRsZS1jaGFubmVsLWxvZ297d2lkdGg6NjBweDtoZWlnaHQ6NjBweH0ueXRwLWVtYmVkLW1vYmlsZSAueXRwLXRpdGxlLWNoYW5uZWwtbG9nbywueXRwLWVtYmVkLW1vYmlsZS55dHAtc21hbGwtbW9kZSAueXRwLXRpdGxlLWNoYW5uZWwtbG9nb3t3aWR0aDo0OHB4O2hlaWdodDo0OHB4O21hcmdpbjowfUAtd2Via2l0LWtleWZyYW1lcyB5dHAtdGl0bGUtY2hhbm5lbC1mYWRlLWluezAle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7bWF4LXdpZHRoOjEwJX0yNSV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KX03NSV7bWF4LXdpZHRoOjEwMCV9fUBrZXlmcmFtZXMgeXRwLXRpdGxlLWNoYW5uZWwtZmFkZS1pbnswJXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O21heC13aWR0aDoxMCV9MjUle2JhY2tncm91bmQtY29sb3I6cmdiYSgzNSwzNSwzNSwuOSl9NzUle21heC13aWR0aDoxMDAlfX1ALXdlYmtpdC1rZXlmcmFtZXMgeXRwLXRpdGxlLWNoYW5uZWwtZmFkZS1vdXR7MCV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KTt3aWR0aDo1MDBweH03NSV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KTt3aWR0aDo1MHB4fX1Aa2V5ZnJhbWVzIHl0cC10aXRsZS1jaGFubmVsLWZhZGUtb3V0ezAle2JhY2tncm91bmQtY29sb3I6cmdiYSgzNSwzNSwzNSwuOSk7d2lkdGg6NTAwcHh9NzUle2JhY2tncm91bmQtY29sb3I6cmdiYSgzNSwzNSwzNSwuOSk7d2lkdGg6NTBweH19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC10aXRsZS1jaGFubmVsLWZhZGUtaW4tYmlnLW1vZGV7MCV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDttYXgtd2lkdGg6MTUlfTI1JXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMzUsMzUsMzUsLjkpfTc1JXttYXgtd2lkdGg6MTAwJX19QGtleWZyYW1lcyB5dHAtdGl0bGUtY2hhbm5lbC1mYWRlLWluLWJpZy1tb2RlezAle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7bWF4LXdpZHRoOjE1JX0yNSV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KX03NSV7bWF4LXdpZHRoOjEwMCV9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtdGl0bGUtY2hhbm5lbC1mYWRlLW91dC1iaWctbW9kZXswJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMzUsMzUsMzUsLjkpO3dpZHRoOjUwMHB4fTc1JXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMzUsMzUsMzUsLjkpO3dpZHRoOjcwcHh9fUBrZXlmcmFtZXMgeXRwLXRpdGxlLWNoYW5uZWwtZmFkZS1vdXQtYmlnLW1vZGV7MCV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KTt3aWR0aDo1MDBweH03NSV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDM1LDM1LDM1LC45KTt3aWR0aDo3MHB4fX1ALXdlYmtpdC1rZXlmcmFtZXMgeXRwLXRpdGxlLWV4cGFuZGVkLWZhZGUtaW57MCV7b3BhY2l0eTowfTI1JXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIHl0cC10aXRsZS1leHBhbmRlZC1mYWRlLWluezAle29wYWNpdHk6MH0yNSV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC10aXRsZS1leHBhbmRlZC1mYWRlLW91dHswJXtvcGFjaXR5OjF9MjUle29wYWNpdHk6MX10b3tvcGFjaXR5OjB9fUBrZXlmcmFtZXMgeXRwLXRpdGxlLWV4cGFuZGVkLWZhZGUtb3V0ezAle29wYWNpdHk6MX0yNSV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19Lnl0cC10aXRsZS1jaGFubmVse2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoyNXB4O2Rpc3BsYXk6bm9uZTtoZWlnaHQ6NTBweDttYXJnaW4tbGVmdDotNXB4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6N3B4O2xlZnQ6MDt3aWR0aDo1MHB4fS55dHAtYmlnLW1vZGUgLnl0cC10aXRsZS1jaGFubmVse3dpZHRoOjcwcHg7aGVpZ2h0OjcwcHg7bWFyZ2luLXRvcDoxMHB4fS55dHAtdGl0bGUtZW5hYmxlLWNoYW5uZWwtbG9nbyAueXRwLXRpdGxlLWNoYW5uZWx7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXh9Lnl0cC10aXRsZS1jaGFubmVsLnl0cC10aXRsZS1zaG93LWV4cGFuZGVkey13ZWJraXQtYW5pbWF0aW9uOnl0cC10aXRsZS1jaGFubmVsLWZhZGUtaW4gLjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2FuaW1hdGlvbjp5dHAtdGl0bGUtY2hhbm5lbC1mYWRlLWluIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtdGl0bGUtY2hhbm5lbC55dHAtdGl0bGUtc2hvdy1leHBhbmRlZHstd2Via2l0LWFuaW1hdGlvbjp5dHAtdGl0bGUtY2hhbm5lbC1mYWRlLWluLWJpZy1tb2RlIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTthbmltYXRpb246eXRwLXRpdGxlLWNoYW5uZWwtZmFkZS1pbi1iaWctbW9kZSAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lnl0cC10aXRsZS1jaGFubmVsLnl0cC10aXRsZS1leHBhbmRlZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMzUsMzUsMzUsLjkpO2JvcmRlci1yYWRpdXM6MjVweDttYXgtd2lkdGg6MTAwJTt6LWluZGV4OjE7d2lkdGg6YXV0b30ueXRwLWJpZy1tb2RlIC55dHAtdGl0bGUtY2hhbm5lbC55dHAtdGl0bGUtZXhwYW5kZWR7Ym9yZGVyLXJhZGl1czozNXB4fS55dHAtdGl0bGUtZXhwYW5kZWQtb3ZlcmxheXtkaXNwbGF5OmNvbnRlbnRzO21heC13aWR0aDoxMDAlO29wYWNpdHk6MDtwYWRkaW5nLXJpZ2h0OjhweDt3aWR0aDphdXRvfS55dHAtYmlnLW1vZGUgLnl0cC10aXRsZS1leHBhbmRlZC1vdmVybGF5e21heC13aWR0aDoxMDAlfS55dHAtdGl0bGUtZXhwYW5kZWQgLnl0cC10aXRsZS1leHBhbmRlZC1vdmVybGF5e29wYWNpdHk6MX0ueXRwLXRpdGxlLXNob3ctZXhwYW5kZWQgLnl0cC10aXRsZS1leHBhbmRlZC1vdmVybGF5e29wYWNpdHk6MTstd2Via2l0LWFuaW1hdGlvbjp5dHAtdGl0bGUtZXhwYW5kZWQtZmFkZS1pbiAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7YW5pbWF0aW9uOnl0cC10aXRsZS1leHBhbmRlZC1mYWRlLWluIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtdGl0bGUtc2hvdy1leHBhbmRlZCAueXRwLXRpdGxlLWV4cGFuZGVkLW92ZXJsYXl7LXdlYmtpdC1hbmltYXRpb246eXRwLXRpdGxlLWV4cGFuZGVkLWZhZGUtaW4tYmlnLW1vZGUgLjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2FuaW1hdGlvbjp5dHAtdGl0bGUtZXhwYW5kZWQtZmFkZS1pbi1iaWctbW9kZSAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lnl0cC10aXRsZS1leHBhbmRlZC1oZWFkaW5ne21hcmdpbjo1cHg7LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleDoxO2ZsZXg6MTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYWxpZ24tc2VsZjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0cC10aXRsZS1leHBhbmRlZC10aXRsZXtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bWFyZ2luOjB9Lnl0cC1iaWctbW9kZSAueXRwLXRpdGxlLWV4cGFuZGVkLXRpdGxle2ZvbnQtc2l6ZToyMnB4fS55dHAtdGl0bGUtZXhwYW5kZWQtdGl0bGUgYXtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtdGl0bGUtZXhwYW5kZWQtc3VidGl0bGV7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbjowfS55dHAtYmlnLW1vZGUgLnl0cC10aXRsZS1leHBhbmRlZC1zdWJ0aXRsZXtmb250LXNpemU6MTZweH0ueXRwLWNocm9tZS10b3AgLnl0cC10aXRsZS1jaGFubmVsIC55dHAtc2J7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjttYXJnaW46NXB4O2hlaWdodDphdXRvO3dpZHRoOmF1dG87cGFkZGluZzowO3BhZGRpbmctbGVmdDoxNnB4O3RleHQtc2hhZG93Om5vbmU7bWFyZ2luLXJpZ2h0OjdweH0ueXRwLWNocm9tZS10b3AgLnl0cC10aXRsZS1jaGFubmVsIC55dHAtc2Itc3Vic2NyaWJlLGEueXRwLXNiLXN1YnNjcmliZXttYXJnaW4tbGVmdDo2NXB4fS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtdGl0bGUtY2hhbm5lbCAueXRwLXNiLXN1YnNjcmliZSwueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLXRvcCAueXRwLXRpdGxlLWNoYW5uZWwgLnl0cC1zYi11bnN1YnNjcmliZXtmb250LXNpemU6MTZweDtwYWRkaW5nOjE0cHggMjBweDttYXJnaW4tcmlnaHQ6N3B4fS55dHAtdGl0bGUtZXhwYW5kZWQgLnl0cC10aXRsZS1iZWFjb24sLnl0cC10aXRsZS1leHBhbmRlZCAueXRwLXRpdGxlLXN1YnRleHQsLnl0cC10aXRsZS1leHBhbmRlZCAueXRwLXRpdGxlLXRleHR7ZGlzcGxheTpub25lfUAtd2Via2l0LWtleWZyYW1lcyB5dHAtdGl0bGUtYmVhY29uLXB1bHNlezAle2JhY2tncm91bmQ6YmxhY2s7d2lkdGg6NDBweDtoZWlnaHQ6NDBweDtsZWZ0OjVweDt0b3A6NXB4fTUwJXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3dpZHRoOjUwcHg7aGVpZ2h0OjUwcHg7bGVmdDowO3RvcDowfX1Aa2V5ZnJhbWVzIHl0cC10aXRsZS1iZWFjb24tcHVsc2V7MCV7YmFja2dyb3VuZDpibGFjazt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2xlZnQ6NXB4O3RvcDo1cHh9NTAle2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7d2lkdGg6NTBweDtoZWlnaHQ6NTBweDtsZWZ0OjA7dG9wOjB9fS55dHAtdGl0bGUtYmVhY29ue2JvcmRlci1yYWRpdXM6MjVweDtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDotMTstd2Via2l0LWFuaW1hdGlvbjp5dHAtdGl0bGUtYmVhY29uLXB1bHNlIDJzIDU7YW5pbWF0aW9uOnl0cC10aXRsZS1iZWFjb24tcHVsc2UgMnMgNX0udW5zdGFydGVkLW1vZGUgLnl0cC10aXRsZS1iZWFjb257ZGlzcGxheTpibG9ja30ueXRwLWJpZy1tb2RlIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uLnl0cC1jaGFwdGVyLWNvbnRhaW5lci1kaXNhYmxlZCwueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbi55dHAtY2hhcHRlci1jb250YWluZXItZGlzYWJsZWR7b3BhY2l0eTouOX0ueXRwLWJpZy1tb2RlIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uLC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uLC55dHAtZW1iZWQtbW9iaWxlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uLC55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOi13ZWJraXQtZml0LWNvbnRlbnQ7d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudDttYXgtd2lkdGg6MTAwJX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbnstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbiBzdmd7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9ue2hlaWdodDp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KTtib3JkZXItcmFkaXVzOjI4cHg7cGFkZGluZzowIDE2cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaGFwdGVyLXRpdGxlLnl0cC1idXR0b24gc3Zne3BhZGRpbmc6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czoyOHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJ1dHRvbi1zZWNvbmRhcnkscmdiYSgyNTUsMjU1LDI1NSwuMSkpOy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hhcHRlci10aXRsZS55dHAtYnV0dG9uOmFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10b25hbC1ob3ZlcixyZ2JhKDI1NSwyNTUsMjU1LC4yKSk7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbntoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCl9Lnl0cC1jaGFwdGVyLWNvbnRhaW5lci1kaXNhYmxlZCAueXRwLWNoYXB0ZXItdGl0bGUtY2hldnJvbiwueXRwLWVtYmVkIC55dHAtY2hhcHRlci10aXRsZS1jaGV2cm9uLC55dHAtcHJvZmlsZS1wYWdlIC55dHAtY2hhcHRlci10aXRsZS1jaGV2cm9ue2Rpc3BsYXk6bm9uZX0ueXRwLWNoYXB0ZXItdGl0bGUtY2hldnJvbnstd2Via2l0LWJveC1mbGV4OjA7LXdlYmtpdC1mbGV4OjAgMCAyMHB4O2ZsZXg6MCAwIDIwcHg7d2lkdGg6MjBweDtwb3NpdGlvbjpyZWxhdGl2ZTtib3R0b206MXB4fS55dHAtY2hhcHRlci10aXRsZS1jb250ZW50ey13ZWJraXQtYm94LWZsZXg6MDstd2Via2l0LWZsZXg6MCAxIGF1dG87ZmxleDowIDEgYXV0bzt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaGFwdGVyLXRpdGxlLWNvbnRlbnR7bGluZS1oZWlnaHQ6MjRweDtmb250LXdlaWdodDo1MDB9Lnl0cC1iaWctbW9kZSAueXRwLWNoYXB0ZXItdGl0bGUtY2hldnJvbnt3aWR0aDoyOHB4fS55dHAtY2hhcHRlci10aXRsZS1jaGV2cm9uIHN2Z3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1jaGFwdGVyLXRpdGxlLXByZWZpeHtwYWRkaW5nLXJpZ2h0OjVweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNoYXB0ZXItdGl0bGUtcHJlZml4LC55dHAtbGl2ZSAueXRwLWNoYXB0ZXItdGl0bGV7ZGlzcGxheTpub25lfS55dHAtZW1iZWQgLnl0cC1jaGFwdGVyLWNvbnRhaW5lciAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbiwueXRwLWVtYmVkLnl0cC1zbWFsbC1tb2RlIC55dHAtY2hhcHRlci1jb250YWluZXIgLnl0cC1jaGFwdGVyLXRpdGxlLnl0cC1idXR0b257Y3Vyc29yOnRleHQ7d2lkdGg6MTAwJX0ueXRwLWNoYXB0ZXItY29udGFpbmVyIC55dHAtcHJvZmlsZS1wYWdlLnl0cC1jaGFwdGVyLXRpdGxlLnl0cC1idXR0b257Y3Vyc29yOnRleHR9Lnl0cC1leHAtYm90dG9tLWNvbnRyb2wtZmxleGJveCAueXRwLWNoYXB0ZXItY29udGFpbmVyey13ZWJraXQtYm94LWZsZXg6MDstd2Via2l0LWZsZXg6MCAxIDEwMCU7ZmxleDowIDEgMTAwJTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc306bm90KC55dHAtZXhwLWJvdHRvbS1jb250cm9sLWZsZXhib3gpIC55dHAtY2hhcHRlci1jb250YWluZXJ7ZmxvYXQ6bGVmdH0ueXRwLWNoYXB0ZXItY29udGFpbmVye2hlaWdodDoxMDAlO2ZvbnQtc2l6ZToxMDklO3ZlcnRpY2FsLWFsaWduOnRvcDttYXJnaW46MCA1cHggMCAwO3doaXRlLXNwYWNlOm5vd3JhcDtsaW5lLWhlaWdodDo0N3B4fS55dHAtZW1iZWQgLnl0cC1jaGFwdGVyLWNvbnRhaW5lcntsaW5lLWhlaWdodDozOXB4fS55dHAtYmlnLW1vZGUgLnl0cC1jaGFwdGVyLWNvbnRhaW5lcntsaW5lLWhlaWdodDo1M3B4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hhcHRlci1jb250YWluZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7cGFkZGluZy10b3A6dmFyKC0teXQtZGVsaGktcGlsbC10b3AtaGVpZ2h0LDEycHgpOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtZmxleDowOy13ZWJraXQtZmxleDowIDEwMCBhdXRvO2ZsZXg6MCAxMDAgYXV0b30ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1jaGFwdGVyLWNvbnRhaW5lcntwYWRkaW5nLXRvcDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLXRvcC1oZWlnaHQsMjBweCl9Lnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWNoYXB0ZXItY29udGFpbmVye2Rpc3BsYXk6bm9uZX0ueXRwLWNvbnRleHRtZW51e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjIzMDA7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO3RleHQtYWxpZ246bGVmdDtkaXJlY3Rpb246bHRyO2ZvbnQtc2l6ZToxMXB4O2xpbmUtaGVpZ2h0OjEuMzstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkO3dpbGwtY2hhbmdlOndpZHRoLGhlaWdodDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1wb3B1cC55dHAtZGVsaGktbW9kZXJuLWNvbnRleHRtZW51e2JvcmRlci1yYWRpdXM6MTJweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpfS55dHAtY29udGV4dG1lbnUgLnl0cC1jb2xsYXBzZXtoZWlnaHQ6MjBweDtvcGFjaXR5Oi45O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjIwcHg7dG9wOjEycHg7d2lkdGg6MjBweH0ueXRwLWNvbnRleHRtZW51IC55dHAtY29sbGFwc2U6aG92ZXJ7b3BhY2l0eToxfS55dHAtZG5pLnl0cC1jb250ZXh0bWVudXt0ZXh0LXNoYWRvdzpub25lfS55dHAtYmlnLW1vZGUueXRwLWNvbnRleHRtZW51e2ZvbnQtc2l6ZToxN3B4fS55dHAtYXV0b2hpZGUueXRwLWVtYmVkLW92ZXJsYXlzLWF1dG9oaWRlLnl0cC1jb250ZXh0bWVudXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKS55dHAtZW1iZWQtb3ZlcmxheXMtYXV0b2hpZGUueXRwLWNvbnRleHRtZW51e2Rpc3BsYXk6bm9uZX0ueXRwLWNvbnRleHRtZW51IGEsLnl0cC1jb250ZXh0bWVudSBhOmZvY3VzLC55dHAtY29udGV4dG1lbnUgYTpob3Zlcntjb2xvcjppbmhlcml0O3RleHQtZGVjb3JhdGlvbjpub25lfS55dHAtY29weXRleHR7bWFyZ2luOjAgMTBweDttYXgtd2lkdGg6MjAwcHg7b3V0bGluZTpub25lO3RleHQtc2hhZG93Om5vbmU7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7LW1vei11c2VyLXNlbGVjdDp0ZXh0Oy1tcy11c2VyLXNlbGVjdDp0ZXh0Oy13ZWJraXQtdXNlci1zZWxlY3Q6dGV4dH0ueXRwLWNvcHl0ZXh0OjotbW96LXNlbGVjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2NvbG9yOmJsYWNrfS55dHAtaHRtbDUtY2xpcGJvYXJke3RvcDowO2xlZnQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTstbW96LXVzZXItc2VsZWN0OnRleHQ7LW1zLXVzZXItc2VsZWN0OnRleHQ7LXdlYmtpdC11c2VyLXNlbGVjdDp0ZXh0fS55dHAtc2hvdy1jb3B5bGluay10aXRsZS55dHAtY29weWxpbmstYnV0dG9ue21hcmdpbi1sZWZ0OjEwcHg7bWFyZ2luLXJpZ2h0OjEwcHh9Lnl0cC1vdmVyZmxvdy1wYW5lbCAueXRwLXNob3ctY29weWxpbmstdGl0bGUueXRwLWNvcHlsaW5rLWJ1dHRvbnttYXJnaW4tbGVmdDoyMHB4O21hcmdpbi1yaWdodDoyMHB4fS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtY29weWxpbmstYnV0dG9uLC55dHAtY2hyb21lLXRvcCAueXRwLWNvcHlsaW5rLWJ1dHRvbnt3aWR0aDphdXRvO2hlaWdodDphdXRvfS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtYmlnLW1vZGUpIC55dHAtY2hyb21lLXRvcCAueXRwLWNvcHlsaW5rLWJ1dHRvbnttaW4td2lkdGg6NDhweDttYXgtd2lkdGg6ODBweH0ueXRwLWNvcHlsaW5rLWljb257bWFyZ2luOmF1dG87d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLWJpZy1tb2RlIC55dHAtY29weWxpbmstaWNvbnt3aWR0aDo1NHB4O2hlaWdodDo1NHB4fS55dHAtb3ZlcmZsb3ctcGFuZWwgLnl0cC1jb3B5bGluay1pY29ue3dpZHRoOjYwcHg7aGVpZ2h0OjYwcHg7bWFyZ2luLWJvdHRvbToxMHB4fS55dHAtY29weWxpbmstdGl0bGV7Zm9udC13ZWlnaHQ6NTAwO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc2l6ZToxNHB4O2Rpc3BsYXk6bm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtY29weWxpbmstdGl0bGUsLnl0cC1vdmVyZmxvdy1wYW5lbCAueXRwLWNvcHlsaW5rLXRpdGxle2ZvbnQtc2l6ZToyMHB4fS55dHAtc2hvdy1jb3B5bGluay10aXRsZSAueXRwLWNvcHlsaW5rLXRpdGxle2Rpc3BsYXk6YmxvY2t9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1iaWctbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtY29weWxpbmstdGl0bGV7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztvdmVyZmxvdzpoaWRkZW59Lnl0cC1jb3VudGRvd24tdGltZXJ7d2lkdGg6MzZweDtoZWlnaHQ6MzZweDstd2Via2l0LXRyYW5zaXRpb246YWxsIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246YWxsIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3otaW5kZXg6Mzk7dGV4dC1hbGlnbjpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cmlnaHQ6MDstd2Via2l0LWJveC1zaGFkb3c6MCAwIDEwcHggcmdiYSgwLDAsMCwuNik7Ym94LXNoYWRvdzowIDAgMTBweCByZ2JhKDAsMCwwLC42KTtib3JkZXItcmFkaXVzOjE4cHh9Lnl0cC1icmFuZGluZy1zaG93biAueXRwLWNvdW50ZG93bi10aW1lcntib3R0b206NTJweH0ueXRwLWNvdW50ZG93bi10aW1lci10aW1le2ZvbnQtc2l6ZToxOHB4O2NvbG9yOiNGRkY7bGluZS1oZWlnaHQ6MzZweDt3aWR0aDozNnB4O2ZvbnQtd2VpZ2h0OjUwMDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7dGV4dC1zaGFkb3c6MCAwIDRweCByZ2IoMCwwLDApfS55dHAtZnJlZS1wcmV2aWV3LWNvdW50ZG93bi10aW1lcntwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6NXB4O2xlZnQ6MjBweDtoZWlnaHQ6MjRweDtib3R0b206MjBweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7dGV4dC1hbGlnbjpsZWZ0O2JhY2tncm91bmQtY29sb3I6IzAwMDtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojZmZmO3dpZHRoOmF1dG87ei1pbmRleDo4Mjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9Lnl0cC1mcmVlLXByZXZpZXctY291bnRkb3duLXRpbWVyLXNlcGFyYXRvcntwYWRkaW5nOjAgM3B4fS55dC11aS1lbGxpcHNpc3tiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxLjNlbTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWw7d29yZC13cmFwOmJyZWFrLXdvcmR9Lnl0LXVpLWVsbGlwc2lzLW5vd3JhcC1zaW5nbGUtbGluZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxLjNlbTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOmJyZWFrLXdvcmQ7bWF4LWhlaWdodDoxLjNlbX0ueXQtdWktZWxsaXBzaXM6YWZ0ZXIsLnl0LXVpLWVsbGlwc2lzOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGV9Lnl0LXVpLWVsbGlwc2lzOmJlZm9yZXtjb250ZW50OiLigKYiO3JpZ2h0OjB9Lnl0LXVpLWVsbGlwc2lzOmFmdGVye2NvbnRlbnQ6IiI7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0ueXQtdWktZWxsaXBzaXMtMjpiZWZvcmV7dG9wOjEuM2VtfS55dC11aS1lbGxpcHNpcy0zOmJlZm9yZXt0b3A6Mi42ZW19Lnl0LXVpLWVsbGlwc2lzLTQ6YmVmb3Jle3RvcDozLjllbX0ueXQtdWktZWxsaXBzaXMtNjpiZWZvcmV7dG9wOjYuNWVtfS55dC11aS1lbGxpcHNpcy0xMDpiZWZvcmV7dG9wOjExLjdlbX0ueXQtdWktZWxsaXBzaXMtMnttYXgtaGVpZ2h0OjIuNmVtfS55dC11aS1lbGxpcHNpcy0ze21heC1oZWlnaHQ6My45ZW19Lnl0LXVpLWVsbGlwc2lzLTR7bWF4LWhlaWdodDo1LjJlbX0ueXQtdWktZWxsaXBzaXMtNnttYXgtaGVpZ2h0OjcuOGVtfS55dC11aS1lbGxpcHNpcy0xMHttYXgtaGVpZ2h0OjEzZW19LndlYmtpdCAueXQtdWktZWxsaXBzaXN7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWx9LndlYmtpdCAueXQtdWktZWxsaXBzaXMtMnstd2Via2l0LWxpbmUtY2xhbXA6Mn0ud2Via2l0IC55dC11aS1lbGxpcHNpcy0zey13ZWJraXQtbGluZS1jbGFtcDozfS53ZWJraXQgLnl0LXVpLWVsbGlwc2lzLTR7LXdlYmtpdC1saW5lLWNsYW1wOjR9LndlYmtpdCAueXQtdWktZWxsaXBzaXMtNnstd2Via2l0LWxpbmUtY2xhbXA6Nn0ud2Via2l0IC55dC11aS1lbGxpcHNpcy0xMHstd2Via2l0LWxpbmUtY2xhbXA6MTB9LndlYmtpdCAueXQtdWktZWxsaXBzaXM6YmVmb3Jle2NvbnRlbnQ6bm9ybWFsfS53ZWJraXQgLnl0LXVpLWVsbGlwc2lzOmFmdGVye2NvbnRlbnQ6IuKAjCI7cG9zaXRpb246c3RhdGljO3Zpc2liaWxpdHk6aGlkZGVufS55dC11aS1lbGxpcHNpc1tkaXI9cnRsXTpiZWZvcmV7bGVmdDowO3JpZ2h0OmF1dG99YS55dHAtY2UtbGlua3tkaXNwbGF5OmJsb2NrfWEueXRwLWNlLWxpbmssYS55dHAtY2UtbGluazpob3ZlcixhLnl0cC1jZS1saW5rOnZpc2l0ZWR7Y29sb3I6IzE2N2FjNn1hLnl0cC1jZS1saW5rOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9Lnl0cC1jZS1zaGFkb3d7b3BhY2l0eTowO291dGxpbmU6c29saWQgIzAwMDtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7ei1pbmRleDoxMn0ueXRwLWNlLXNoYWRvdzpub3QoW2FyaWEtaGlkZGVuPXRydWVdKXtvcGFjaXR5Oi4yNTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1jZS1lbGVtZW50e2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNCk7LXdlYmtpdC1ib3gtc2hhZG93OjAgMCA0cHggcmdiYSgwLDAsMCwuNSk7Ym94LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjUpO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7bGluZS1oZWlnaHQ6MS4zZW07bWFyZ2luOi0xcHg7cG9zaXRpb246YWJzb2x1dGU7LXdlYmtpdC1mb250LXNtb290aGluZzphdXRvO3otaW5kZXg6MTI7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAuMnMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAuMnMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dmlzaWJpbGl0eTpoaWRkZW59Lnl0cC1jZS1oaWRlLWJ1dHRvbi1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjEycHg7cmlnaHQ6MTJweDt6LWluZGV4OjEzO29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246dmlzaWJpbGl0eSAwcyBsaW5lYXIgLjJzLG9wYWNpdHkgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSksYm9yZGVyLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dmlzaWJpbGl0eSAwcyBsaW5lYXIgLjJzLG9wYWNpdHkgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSksYm9yZGVyLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3Zpc2liaWxpdHk6aGlkZGVufS55dHAtY2UtaGlkZS1idXR0b24tY29udGFpbmVyLnl0cC1jZS1oaWRlLWJ1dHRvbi1sb3dlcnttYXJnaW4tdG9wOjQ4cHh9Lnl0cC1iaWctbW9kZSAueXRwLWNlLWhpZGUtYnV0dG9uLWNvbnRhaW5lcnttYXJnaW4tdG9wOjcycHh9Lmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtY2UtZWxlbWVudCwuaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUgLnl0cC1jZS1oaWRlLWJ1dHRvbi1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtY2UtZWxlbWVudC55dHAtY2UtcGxhY2Vob2xkZXIgYS55dHAtY2UtY292ZXJpbmctb3ZlcmxheXtjdXJzb3I6ZGVmYXVsdH0ueXRwLWNlLWVsZW1lbnQueXRwLWNlLWVsZW1lbnQtc2hvdywueXRwLWNlLWhpZGUtYnV0dG9uLWNvbnRhaW5lci55dHAtY2UtZWxlbWVudC1zaG93e29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246dmlzaWJpbGl0eSAwcyBsaW5lYXIgMHMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAwcyxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLGJvcmRlci1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt2aXNpYmlsaXR5OnZpc2libGV9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1lbGVtZW50LWhvdmVyLC55dHAtY2UtZWxlbWVudC55dHAtY2UtZm9yY2UtZXhwYW5ke2JvcmRlcjoxcHggc29saWQgI2ZmZjtvdXRsaW5lOm5vbmU7ei1pbmRleDoxMztvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOnZpc2liaWxpdHkgMHMgbGluZWFyIDBzLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSksYm9yZGVyLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dmlzaWJpbGl0eSAwcyBsaW5lYXIgMHMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7dmlzaWJpbGl0eTp2aXNpYmxlfS55dHAtY2UtZWxlbWVudC55dHAtY2UtZWxlbWVudC1zaG93OmZvY3VzLC55dHAtY2UtZWxlbWVudC55dHAtY2UtZWxlbWVudC1zaG93OmhvdmVye291dGxpbmU6bm9uZX0ueXRwLWNlLWVsZW1lbnQtc2hhZG93e2JhY2tncm91bmQtY29sb3I6IzAwMDtib3R0b206LTFweDtsZWZ0Oi0xcHg7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0Oi0xcHg7dG9wOi0xcHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3otaW5kZXg6MTJ9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1lbGVtZW50LXNob3cueXRwLWNlLWVsZW1lbnQtc2hhZG93LXNob3cgLnl0cC1jZS1lbGVtZW50LXNoYWRvd3tvcGFjaXR5Oi4yNTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1jZS1jb3ZlcmluZy1pbWFnZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1zaXplOmNvdmVyO2JvdHRvbTotMnB4O2xlZnQ6LTFweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDotMXB4O3RvcDotMXB4fS55dHAtY2UtY292ZXJpbmctc2hhZG93LXRvcHtoZWlnaHQ6MzMlO29wYWNpdHk6Ljg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwjMDAwLHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGNvbG9yLXN0b3AoMCwjMDAwKSx0byh0cmFuc3BhcmVudCkpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjMDAwIDAsdHJhbnNwYXJlbnQpfS55dHAtY2UtY292ZXJpbmctb3ZlcmxheXtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO3otaW5kZXg6MTJ9Lmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtY2Utc2hhZG93e2Rpc3BsYXk6bm9uZX0ueXRwLWNlLXBsYXlsaXN0LC55dHAtY2UtdmlkZW97b3ZlcmZsb3c6aGlkZGVufS55dHAtY2UtcGxheWxpc3QtdGl0bGUsLnl0cC1jZS12aWRlby10aXRsZXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOiNmZmY7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE0cHg7bWFyZ2luOjZweCA4cHg7bWF4LWhlaWdodDoyOHB4O3RleHQtc2hhZG93OjAgMXB4IDAgcmdiYSgwLDAsMCwuNCl9Lnl0cC1jZS1wbGF5bGlzdC10aXRsZS55dHAtd2Via2l0LWVsbGlwc2lzLC55dHAtY2UtdmlkZW8tdGl0bGUueXRwLXdlYmtpdC1lbGxpcHNpc3tkaXNwbGF5Oi13ZWJraXQtYm94O292ZXJmbG93OmhpZGRlbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjI7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWNlLXZpZGVvLWR1cmF0aW9ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOCk7Ym9yZGVyLXJhZGl1czoycHg7Ym90dG9tOjA7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuOCk7bWFyZ2luOjAgNHB4IDRweCAwO3BhZGRpbmc6NHB4IDZweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowfS55dHAtY2UtbGl2ZS12aWRlby1kdXJhdGlvbntiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNTUsMCwwKTtib3JkZXItcmFkaXVzOjJweDtib3R0b206MDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC44KTttYXJnaW46MCA0cHggNHB4IDA7cGFkZGluZzo0cHggNnB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjB9Lnl0cC1jZS1wbGF5bGlzdC1jb3VudHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjc1KTtib3R0b206MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MH0ueXRwLWNlLXBsYXlsaXN0LWljb257bGVmdDo4cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweH0ueXRwLWNlLXBsYXlsaXN0LWNvdW50LXRleHR7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuOCk7aGVpZ2h0OjI0cHg7bGluZS1oZWlnaHQ6MjRweDttYXJnaW4tbGVmdDozMnB4fS55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAuMnMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAuMnMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dmlzaWJpbGl0eTpoaWRkZW59Lnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1jb250ZW50e2Rpc3BsYXk6dGFibGV9Lnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5e2Rpc3BsYXk6dGFibGUtY2VsbDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1lbGVtZW50LWhvdmVyIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXksLnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1mb3JjZS1leHBhbmQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheXt6LWluZGV4OjEzO29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246dmlzaWJpbGl0eSAwcyBsaW5lYXIgMHMsb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxib3JkZXItY29sb3IgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IDBzIGxpbmVhciAwcyxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLGJvcmRlci1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt2aXNpYmlsaXR5OnZpc2libGV9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1lbGVtZW50LWhvdmVyIC55dHAtY2UtZXhwYW5kaW5nLWltYWdlLC55dHAtY2UtZWxlbWVudC55dHAtY2UtZm9yY2UtZXhwYW5kIC55dHAtY2UtZXhwYW5kaW5nLWltYWdle3otaW5kZXg6MTN9Lnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1iYWNrZ3JvdW5ke2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItcmFkaXVzOjJweDstd2Via2l0LWJveC1zaGFkb3c6MCAwIDRweCAjMDAwO2JveC1zaGFkb3c6MCAwIDRweCAjMDAwO2hlaWdodDoxMDAlO2xlZnQ6MDttYXJnaW46LThweDtwYWRkaW5nOjhweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfS55dHAtY2UtZXhwYW5kaW5nLWltYWdle2JhY2tncm91bmQtcG9zaXRpb246NTAlOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlfS55dHAtY2UtZXhwYW5kaW5nLWljb257YmFja2dyb3VuZC1jb2xvcjojMDAwO2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDstd2Via2l0LWJhY2tncm91bmQtc2l6ZToyMHB4IDIwcHg7YmFja2dyb3VuZC1zaXplOjIwcHggMjBweDtib3JkZXItcmFkaXVzOjJweDtib3R0b206MnB4O2hlaWdodDoyNHB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjJweDt3aWR0aDoyNHB4Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWNlLWVsZW1lbnQueXRwLWNlLWVsZW1lbnQtaG92ZXIgLnl0cC1jZS1leHBhbmRpbmctaWNvbiwueXRwLWNlLWVsZW1lbnQueXRwLWNlLWZvcmNlLWV4cGFuZCAueXRwLWNlLWV4cGFuZGluZy1pY29ue29wYWNpdHk6MH0ueXRwLWNlLWVsZW1lbnQueXRwLWNlLXRvcC1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheXtsZWZ0OjA7cGFkZGluZy1sZWZ0OjEwMCU7dG9wOjB9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS10b3AtcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5e3BhZGRpbmctcmlnaHQ6MTAwJTtyaWdodDowO3RvcDowfS55dHAtY2UtZWxlbWVudC55dHAtY2UtYm90dG9tLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5e2JvdHRvbTowO2xlZnQ6MDtwYWRkaW5nLWxlZnQ6MTAwJX0ueXRwLWNlLWVsZW1lbnQueXRwLWNlLWJvdHRvbS1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXl7Ym90dG9tOjA7cGFkZGluZy1yaWdodDoxMDAlO3JpZ2h0OjB9Lnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1jaGFubmVsLnl0cC1jZS1lbGVtZW50LXNob3csLnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1jaGFubmVsLnl0cC1jZS1lbGVtZW50LXNob3cueXRwLWNlLWVsZW1lbnQtaG92ZXIsLnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1jaGFubmVsLnl0cC1jZS1lbGVtZW50LXNob3cueXRwLWNlLWZvcmNlLWV4cGFuZCwueXRwLWNlLWVsZW1lbnQueXRwLWNlLW1lcmNoYW5kaXNlLnl0cC1jZS1lbGVtZW50LXNob3csLnl0cC1jZS1lbGVtZW50Lnl0cC1jZS1tZXJjaGFuZGlzZS55dHAtY2UtZWxlbWVudC1zaG93Lnl0cC1jZS1lbGVtZW50LWhvdmVyLC55dHAtY2UtZWxlbWVudC55dHAtY2UtbWVyY2hhbmRpc2UueXRwLWNlLWVsZW1lbnQtc2hvdy55dHAtY2UtZm9yY2UtZXhwYW5kLC55dHAtY2UtZWxlbWVudC55dHAtY2Utd2Vic2l0ZS55dHAtY2UtZWxlbWVudC1zaG93LC55dHAtY2UtZWxlbWVudC55dHAtY2Utd2Vic2l0ZS55dHAtY2UtZWxlbWVudC1zaG93Lnl0cC1jZS1lbGVtZW50LWhvdmVyLC55dHAtY2UtZWxlbWVudC55dHAtY2Utd2Vic2l0ZS55dHAtY2UtZWxlbWVudC1zaG93Lnl0cC1jZS1mb3JjZS1leHBhbmR7Ym9yZGVyOjA7bWFyZ2luOjB9Lnl0cC1jZS1jaGFubmVsLXRpdGxle2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWNlLWNoYW5uZWwtc3Vic2NyaWJle2NvbG9yOiM3Njc2NzY7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLXRvcDo0cHg7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7LW1zLXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0Oy1tcy10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnR9Lnl0cC1jZS1jaGFubmVsLXN1YnNjcmliZXJzLXRleHR7Y29sb3I6Izc2NzY3NjtkaXNwbGF5Om5vbmU7bWFyZ2luLWJvdHRvbToyNHB4O21hcmdpbi10b3A6NnB4fS55dHAtY2UtY2hhbm5lbC1tZXRhZGF0YXtjb2xvcjojNzY3Njc2fS55dHAtY2UtY2hhbm5lbC10aGlzIC55dHAtY2UtY2hhbm5lbC1tZXRhZGF0YXtib3JkZXItdG9wOjFweCBzb2xpZCAjZWJlYmViO2Rpc3BsYXk6bm9uZX0ueXRwLWNlLWNoYW5uZWwtdGhhdCAueXRwLWNlLWNoYW5uZWwtbWV0YWRhdGF7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MTRweDttYXJnaW4tdG9wOjRweDttYXgtaGVpZ2h0OjQycHh9Lnl0cC1jZS1jaGFubmVsLC55dHAtY2UtY2hhbm5lbCAueXRwLWNlLWVsZW1lbnQtc2hhZG93LC55dHAtY2UtY2hhbm5lbCAueXRwLWNlLWV4cGFuZGluZy1pbWFnZXtib3JkZXItcmFkaXVzOjUwJX0ueXRwLWNlLW1lcmNoYW5kaXNlLXRpdGxlLC55dHAtY2Utd2Vic2l0ZS10aXRsZXtjb2xvcjojMzMzO2ZvbnQtd2VpZ2h0OjUwMDttYXJnaW4tYm90dG9tOjJweH0ueXRwLWNlLW1lcmNoYW5kaXNlLW1ldGFkYXRhLC55dHAtY2UtbWVyY2hhbmRpc2UtcHJpY2UtY29udGFpbmVyLC55dHAtY2Utd2Vic2l0ZS1tZXRhZGF0YXtjb2xvcjojNzY3Njc2O21hcmdpbi10b3A6NHB4fS55dHAtY2UtbWVyY2hhbmRpc2UgLnl0cC1jZS1leHBhbmRpbmctaW1hZ2V7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW59Lnl0cC1jZS13ZWJzaXRlLWdvdG97ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC13ZWlnaHQ6NTAwO21hcmdpbi10b3A6NHB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDt3aWR0aDoxMDAlfS55dHAtY2UtbWVyY2hhbmRpc2UgLnl0cC1jZS1leHBhbmRpbmctaW1hZ2UsLnl0cC1jZS13ZWJzaXRlIC55dHAtY2UtZXhwYW5kaW5nLWltYWdle2JhY2tncm91bmQtY29sb3I6I2ZmZn0ueXRwLWNlLW1lcmNoYW5kaXNlLXByaWNle2Rpc3BsYXk6aW5saW5lLWJsb2NrO2NvbG9yOiM2NDY0NjQ7Zm9udC13ZWlnaHQ6ODAwO3doaXRlLXNwYWNlOm5vd3JhcDttYXJnaW4tcmlnaHQ6NnB4fS55dHAtY2UtbWVyY2hhbmRpc2UtYWRkaXRpb25hbC1mZWVze2Rpc3BsYXk6aW5saW5lLWJsb2NrO2NvbG9yOiM3Njc2NzY7bWFyZ2luLXRvcDoycHg7d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1jZS1tZXJjaGFuZGlzZS1pbnZpZGVvLWN0YS1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojMDAwO2JvcmRlcjoxcHggIzAwMDtvcGFjaXR5Oi44O3BhZGRpbmc6MTBweCAwO3dpZHRoOjEwMCU7Ym90dG9tOjA7cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXJ9Lnl0cC1jZS1tZXJjaGFuZGlzZS1pbnZpZGVvLWN0YXtjb2xvcjojZmZmO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLWNlLXNpemUtMzQ2IC55dHAtY2UtbWVyY2hhbmRpc2UtaW52aWRlby1jdGEtY29udGFpbmVyLC55dHAtY2Utc2l6ZS00MjYgLnl0cC1jZS1tZXJjaGFuZGlzZS1pbnZpZGVvLWN0YS1jb250YWluZXIsLnl0cC1jZS1zaXplLTQ3MCAueXRwLWNlLW1lcmNoYW5kaXNlLWludmlkZW8tY3RhLWNvbnRhaW5lcntwYWRkaW5nOjJweCAwfS55dHAtY2Utc2l6ZS01MDYgLnl0cC1jZS1tZXJjaGFuZGlzZS1pbnZpZGVvLWN0YS1jb250YWluZXIsLnl0cC1jZS1zaXplLTU3MCAueXRwLWNlLW1lcmNoYW5kaXNlLWludmlkZW8tY3RhLWNvbnRhaW5lciwueXRwLWNlLXNpemUtNjQwIC55dHAtY2UtbWVyY2hhbmRpc2UtaW52aWRlby1jdGEtY29udGFpbmVyLC55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1tZXJjaGFuZGlzZS1pbnZpZGVvLWN0YS1jb250YWluZXJ7cGFkZGluZzo1cHggMH0ueXRwLWNlLWxhcmdlLXJvdW5kIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYmFja2dyb3VuZCwueXRwLWNlLXBsYXlsaXN0Lnl0cC1jZS1sYXJnZS1yb3VuZCwueXRwLWNlLXZpZGVvLnl0cC1jZS1sYXJnZS1yb3VuZHtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1jZS1tZWRpdW0tcm91bmQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1iYWNrZ3JvdW5kLC55dHAtY2UtcGxheWxpc3QueXRwLWNlLW1lZGl1bS1yb3VuZCwueXRwLWNlLXZpZGVvLnl0cC1jZS1tZWRpdW0tcm91bmR7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0cC1jZS1wbGF5bGlzdC55dHAtY2Utc21hbGwtcm91bmQsLnl0cC1jZS1zbWFsbC1yb3VuZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJhY2tncm91bmQsLnl0cC1jZS12aWRlby55dHAtY2Utc21hbGwtcm91bmR7Ym9yZGVyLXJhZGl1czo0cHh9Lnl0cC1jZS1tZXJjaGFuZGlzZS1nb3Rve2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtd2VpZ2h0OjUwMDttYXJnaW4tdG9wOjRweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6MTAwJX0ueXRwLWNlLXNpemUtMzQ2e2ZvbnQtc2l6ZToxMnB4fS55dHAtY2Utc2l6ZS0zNDYgLnl0cC1jZS1jb3ZlcmluZy1pY29ue2JvdHRvbTo0cHg7cmlnaHQ6NHB4fS55dHAtY2Utc2l6ZS0zNDYgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWluLXdpZHRoOjExNXB4fS55dHAtY2Utc2l6ZS0zNDYgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmc+Om5vdCgueXRwLWNlLXN1YnNjcmliZS1jb250YWluZXIpe3dpZHRoOjExNXB4fS55dHAtY2Utc2l6ZS0zNDYueXRwLWNlLWJvdHRvbS1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTM0Ni55dHAtY2UtdG9wLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCAwIDAgOHB4fS55dHAtY2Utc2l6ZS0zNDYueXRwLWNlLWJvdHRvbS1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS0zNDYueXRwLWNlLXRvcC1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDhweCAwIDB9Lnl0cC1jZS1zaXplLTM0NiAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJhY2tncm91bmR7bWFyZ2luOi04cHg7cGFkZGluZzo4cHh9Lnl0cC1jZS1zaXplLTM0NiAueXRwLWNlLWV4cGFuZGluZy1pY29ue2JvdHRvbToycHg7cmlnaHQ6MnB4fS55dHAtY2Utc2l6ZS0zNDYueXRwLWNlLWNoYW5uZWwtdGhhdCAueXRwLWNlLWNoYW5uZWwtbWV0YWRhdGF7bWFyZ2luLXRvcDowfS55dHAtY2Utc2l6ZS00MjZ7Zm9udC1zaXplOjEycHh9Lnl0cC1jZS1zaXplLTQyNiAueXRwLWNlLWNvdmVyaW5nLWljb257Ym90dG9tOjRweDtyaWdodDo0cHh9Lnl0cC1jZS1zaXplLTQyNiAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttaW4td2lkdGg6MTE1cHh9Lnl0cC1jZS1zaXplLTQyNiAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZz46bm90KC55dHAtY2Utc3Vic2NyaWJlLWNvbnRhaW5lcil7d2lkdGg6MTE1cHh9Lnl0cC1jZS1zaXplLTQyNi55dHAtY2UtYm90dG9tLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtNDI2Lnl0cC1jZS10b3AtbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDRweCAwIDEycHh9Lnl0cC1jZS1zaXplLTQyNi55dHAtY2UtYm90dG9tLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTQyNi55dHAtY2UtdG9wLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWFyZ2luOjAgMTJweCAwIDRweH0ueXRwLWNlLXNpemUtNDI2IC55dHAtY2UtZXhwYW5kaW5nLWljb257Ym90dG9tOjRweDtyaWdodDo0cHh9Lnl0cC1jZS1zaXplLTQyNi55dHAtY2UtY2hhbm5lbC10aGF0IC55dHAtY2UtY2hhbm5lbC1tZXRhZGF0YXttYXJnaW4tdG9wOjB9Lnl0cC1jZS1zaXplLTM0NiAueXRwLWNlLXBsYXlsaXN0LXRpdGxlLC55dHAtY2Utc2l6ZS0zNDYgLnl0cC1jZS12aWRlby10aXRsZSwueXRwLWNlLXNpemUtNDI2IC55dHAtY2UtcGxheWxpc3QtdGl0bGUsLnl0cC1jZS1zaXplLTQyNiAueXRwLWNlLXZpZGVvLXRpdGxlLC55dHAtY2Utc2l6ZS00NzAgLnl0cC1jZS1tZXJjaGFuZGlzZS10aXRsZXtkaXNwbGF5OmlubGluZS1ibG9jaztvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7bWF4LXdpZHRoOjg1JX0ueXRwLWNlLXNpemUtNDcwe2ZvbnQtc2l6ZToxMnB4fS55dHAtY2Utc2l6ZS00NzAgLnl0cC1jZS1jaGFubmVsLXRpdGxlLC55dHAtY2Utc2l6ZS00NzAgLnl0cC1jZS1tZXJjaGFuZGlzZS10aXRsZSwueXRwLWNlLXNpemUtNDcwIC55dHAtY2Utd2Vic2l0ZS10aXRsZXtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNHB4fS55dHAtY2Utc2l6ZS00NzAgLnl0cC1jZS1tZXJjaGFuZGlzZS1nb3RvLC55dHAtY2Utc2l6ZS00NzAgLnl0cC1jZS13ZWJzaXRlLWdvdG97Zm9udC1zaXplOjEycHh9Lnl0cC1jZS1zaXplLTQ3MCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttaW4td2lkdGg6MTM2cHh9Lnl0cC1jZS1zaXplLTQ3MCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZz46bm90KC55dHAtY2Utc3Vic2NyaWJlLWNvbnRhaW5lcil7d2lkdGg6MTM2cHh9Lnl0cC1jZS1zaXplLTQ3MC55dHAtY2UtYm90dG9tLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtNDcwLnl0cC1jZS10b3AtbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDRweCAwIDEycHh9Lnl0cC1jZS1zaXplLTQ3MC55dHAtY2UtYm90dG9tLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTQ3MC55dHAtY2UtdG9wLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWFyZ2luOjAgMTJweCAwIDRweH0ueXRwLWNlLXNpemUtNDcwIC55dHAtY2UtZXhwYW5kaW5nLWljb257Ym90dG9tOjRweDtyaWdodDo0cHh9Lnl0cC1jZS1zaXplLTUwNntmb250LXNpemU6MTJweH0ueXRwLWNlLXNpemUtNTA2IC55dHAtY2UtY2hhbm5lbC10aXRsZSwueXRwLWNlLXNpemUtNTA2IC55dHAtY2UtbWVyY2hhbmRpc2UtdGl0bGUsLnl0cC1jZS1zaXplLTUwNiAueXRwLWNlLXdlYnNpdGUtdGl0bGV7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MTRweH0ueXRwLWNlLXNpemUtNTA2IC55dHAtY2UtbWVyY2hhbmRpc2UtZ290bywueXRwLWNlLXNpemUtNTA2IC55dHAtY2Utd2Vic2l0ZS1nb3Rve2ZvbnQtc2l6ZToxMnB4fS55dHAtY2Utc2l6ZS01MDYgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWluLXdpZHRoOjEzNnB4fS55dHAtY2Utc2l6ZS01MDYgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmc+Om5vdCgueXRwLWNlLXN1YnNjcmliZS1jb250YWluZXIpe3dpZHRoOjEzNnB4fS55dHAtY2Utc2l6ZS01MDYueXRwLWNlLWJvdHRvbS1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTUwNi55dHAtY2UtdG9wLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCA0cHggMCAxMnB4fS55dHAtY2Utc2l6ZS01MDYueXRwLWNlLWJvdHRvbS1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS01MDYueXRwLWNlLXRvcC1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDEycHggMCA0cHh9Lnl0cC1jZS1zaXplLTUwNiAueXRwLWNlLWV4cGFuZGluZy1pY29ue2JvdHRvbTo0cHg7cmlnaHQ6NHB4fS55dHAtY2Utc2l6ZS01NzB7Zm9udC1zaXplOjEycHh9Lnl0cC1jZS1zaXplLTU3MCAueXRwLWNlLWNoYW5uZWwtdGl0bGUsLnl0cC1jZS1zaXplLTU3MCAueXRwLWNlLW1lcmNoYW5kaXNlLXRpdGxlLC55dHAtY2Utc2l6ZS01NzAgLnl0cC1jZS13ZWJzaXRlLXRpdGxle2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjE0cHh9Lnl0cC1jZS1zaXplLTU3MCAueXRwLWNlLW1lcmNoYW5kaXNlLWdvdG8sLnl0cC1jZS1zaXplLTU3MCAueXRwLWNlLXdlYnNpdGUtZ290b3tmb250LXNpemU6MTJweH0ueXRwLWNlLXNpemUtNTcwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21pbi13aWR0aDoxMzZweH0ueXRwLWNlLXNpemUtNTcwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nPjpub3QoLnl0cC1jZS1zdWJzY3JpYmUtY29udGFpbmVyKXt3aWR0aDoxMzZweH0ueXRwLWNlLXNpemUtNTcwLnl0cC1jZS1ib3R0b20tbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS01NzAueXRwLWNlLXRvcC1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWFyZ2luOjAgNHB4IDAgMTJweH0ueXRwLWNlLXNpemUtNTcwLnl0cC1jZS1ib3R0b20tcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtNTcwLnl0cC1jZS10b3AtcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCAxMnB4IDAgNHB4fS55dHAtY2Utc2l6ZS01NzAgLnl0cC1jZS1leHBhbmRpbmctaWNvbntib3R0b206NHB4O3JpZ2h0OjRweH0ueXRwLWNlLXNpemUtNjQwe2ZvbnQtc2l6ZToxMnB4fS55dHAtY2Utc2l6ZS02NDAgLnl0cC1jZS1wbGF5bGlzdC10aXRsZSwueXRwLWNlLXNpemUtNjQwIC55dHAtY2UtdmlkZW8tdGl0bGV7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MTVweDttYXgtaGVpZ2h0OjMwcHh9Lnl0cC1jZS1zaXplLTY0MCAueXRwLWNlLWNoYW5uZWwtdGl0bGUsLnl0cC1jZS1zaXplLTY0MCAueXRwLWNlLW1lcmNoYW5kaXNlLXRpdGxlLC55dHAtY2Utc2l6ZS02NDAgLnl0cC1jZS13ZWJzaXRlLXRpdGxle2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjE1cHh9Lnl0cC1jZS1zaXplLTY0MCAueXRwLWNlLW1lcmNoYW5kaXNlLWdvdG8sLnl0cC1jZS1zaXplLTY0MCAueXRwLWNlLXdlYnNpdGUtZ290b3tmb250LXNpemU6MTJweH0ueXRwLWNlLXNpemUtNjQwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21pbi13aWR0aDoxMzZweH0ueXRwLWNlLXNpemUtNjQwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nPjpub3QoLnl0cC1jZS1zdWJzY3JpYmUtY29udGFpbmVyKXt3aWR0aDoxMzZweH0ueXRwLWNlLXNpemUtNjQwLnl0cC1jZS1ib3R0b20tbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS02NDAueXRwLWNlLXRvcC1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWFyZ2luOjAgOHB4IDAgMTZweH0ueXRwLWNlLXNpemUtNjQwLnl0cC1jZS1ib3R0b20tcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtNjQwLnl0cC1jZS10b3AtcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCAxNnB4IDAgOHB4fS55dHAtY2Utc2l6ZS02NDAgLnl0cC1jZS1leHBhbmRpbmctaWNvbntib3R0b206OHB4O3JpZ2h0OjhweH0ueXRwLWNlLXNpemUtODUze2ZvbnQtc2l6ZToxNHB4fS55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1wbGF5bGlzdC10aXRsZSwueXRwLWNlLXNpemUtODUzIC55dHAtY2UtdmlkZW8tdGl0bGV7Zm9udC1zaXplOjE1cHg7bGluZS1oZWlnaHQ6MThweDttYXJnaW46MTBweCAxMnB4O21heC1oZWlnaHQ6MzZweH0ueXRwLWNlLXNpemUtODUzIC55dHAtY2UtdmlkZW8tZHVyYXRpb257bWFyZ2luOjAgNnB4IDZweCAwfS55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1jaGFubmVsLXRpdGxlLC55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1tZXJjaGFuZGlzZS10aXRsZSwueXRwLWNlLXNpemUtODUzIC55dHAtY2Utd2Vic2l0ZS10aXRsZXtmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoxOHB4fS55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1tZXJjaGFuZGlzZS1nb3RvLC55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS13ZWJzaXRlLWdvdG97Zm9udC1zaXplOjEycHh9Lnl0cC1jZS1zaXplLTg1My55dHAtY2UtY2hhbm5lbC10aGlzIC55dHAtY2UtY2hhbm5lbC1tZXRhZGF0YXtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNHB4O21hcmdpbi10b3A6OHB4O3BhZGRpbmctdG9wOjhweDttYXgtaGVpZ2h0OjQycHg7ZGlzcGxheTpibG9ja30ueXRwLWNlLXNpemUtODUzLnl0cC1jZS1jaGFubmVsLXRoYXQgLnl0cC1jZS1jaGFubmVsLW1ldGFkYXRhe2ZvbnQtc2l6ZToxNXB4O2xpbmUtaGVpZ2h0OjE4cHg7bWFyZ2luLXRvcDo0cHg7bWF4LWhlaWdodDo1NHB4fS55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWluLXdpZHRoOjE3NnB4fS55dHAtY2Utc2l6ZS04NTMgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmc+Om5vdCgueXRwLWNlLXN1YnNjcmliZS1jb250YWluZXIpe3dpZHRoOjE3NnB4fS55dHAtY2Utc2l6ZS04NTMueXRwLWNlLWJvdHRvbS1sZWZ0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTg1My55dHAtY2UtdG9wLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCA4cHggMCAxNnB4fS55dHAtY2Utc2l6ZS04NTMueXRwLWNlLWJvdHRvbS1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS04NTMueXRwLWNlLXRvcC1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDE2cHggMCA4cHh9Lnl0cC1jZS1zaXplLTg1MyAueXRwLWNlLWV4cGFuZGluZy1pY29uey13ZWJraXQtYmFja2dyb3VuZC1zaXplOjI0cHggMjRweDtiYWNrZ3JvdW5kLXNpemU6MjRweCAyNHB4O2JvdHRvbTo4cHg7aGVpZ2h0OjMycHg7cmlnaHQ6OHB4O3dpZHRoOjMycHh9Lnl0cC1jZS1zaXplLTg1MyAueXRwLWNlLXBsYXlsaXN0LWljb257bGVmdDo4cHg7dG9wOjRweH0ueXRwLWNlLXNpemUtODUzIC55dHAtY2UtcGxheWxpc3QtY291bnQtdGV4dHtoZWlnaHQ6MzJweDtsaW5lLWhlaWdodDozMnB4O21hcmdpbi1sZWZ0OjQwcHh9Lnl0cC1jZS1zaXplLTEyODB7Zm9udC1zaXplOjE4cHh9Lnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS1wbGF5bGlzdC10aXRsZSwueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLXZpZGVvLXRpdGxle2ZvbnQtc2l6ZToyMXB4O2xpbmUtaGVpZ2h0OjI0cHg7bWFyZ2luOjE4cHggMjBweDttYXgtaGVpZ2h0OjQ4cHh9Lnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS12aWRlby1kdXJhdGlvbnttYXJnaW46MCAxMnB4IDEycHggMH0ueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLWNoYW5uZWwtdGl0bGUsLnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS1tZXJjaGFuZGlzZS10aXRsZSwueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLXdlYnNpdGUtdGl0bGV7Zm9udC1zaXplOjIxcHg7bGluZS1oZWlnaHQ6MjRweH0ueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLW1lcmNoYW5kaXNlLWdvdG8sLnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS1tZXJjaGFuZGlzZS1tZXRhZGF0YSwueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLW1lcmNoYW5kaXNlLXByaWNlLWNvbnRhaW5lciwueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLXdlYnNpdGUtZ290bywueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLXdlYnNpdGUtbWV0YWRhdGF7Zm9udC1zaXplOjE4cHg7bWFyZ2luLXRvcDo4cHh9Lnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS1jaGFubmVsLW1ldGFkYXRhe2ZvbnQtc2l6ZToxOHB4O2xpbmUtaGVpZ2h0OjIxcHg7bWF4LWhlaWdodDo2M3B4fS55dHAtY2Utc2l6ZS0xMjgwIC55dHAtY2UtY2hhbm5lbC1zdWJzY3JpYmV7aGVpZ2h0OjMycHg7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4zKTstbXMtdHJhbnNmb3JtOnNjYWxlKDEuMyk7dHJhbnNmb3JtOnNjYWxlKDEuMyl9Lnl0cC1jZS1zaXplLTEyODAueXRwLWNlLWNoYW5uZWwtdGhhdCAueXRwLWNlLWNoYW5uZWwtc3Vic2NyaWJlcnMtdGV4dHtkaXNwbGF5OmJsb2NrfS55dHAtY2Utc2l6ZS0xMjgwLnl0cC1jZS1jaGFubmVsLXRoaXMgLnl0cC1jZS1jaGFubmVsLW1ldGFkYXRhe21hcmdpbi10b3A6MTJweDtwYWRkaW5nLXRvcDoxMnB4O2Rpc3BsYXk6YmxvY2t9Lnl0cC1jZS1zaXplLTEyODAgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWluLXdpZHRoOjI2NHB4fS55dHAtY2Utc2l6ZS0xMjgwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nPjpub3QoLnl0cC1jZS1zdWJzY3JpYmUtY29udGFpbmVyKXt3aWR0aDoyNjRweH0ueXRwLWNlLXNpemUtMTI4MC55dHAtY2UtYm90dG9tLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtMTI4MC55dHAtY2UtdG9wLWxlZnQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttYXJnaW46MCAxNnB4IDAgMzJweH0ueXRwLWNlLXNpemUtMTI4MC55dHAtY2UtYm90dG9tLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmcsLnl0cC1jZS1zaXplLTEyODAueXRwLWNlLXRvcC1yaWdodC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDMycHggMCAxNnB4fS55dHAtY2Utc2l6ZS0xMjgwIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYmFja2dyb3VuZHttYXJnaW46LTE2cHg7cGFkZGluZzoxNnB4fS55dHAtY2Utc2l6ZS0xMjgwIC55dHAtY2UtZXhwYW5kaW5nLWljb257LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6MzJweCAzMnB4O2JhY2tncm91bmQtc2l6ZTozMnB4IDMycHg7Ym90dG9tOjEwcHg7aGVpZ2h0OjQwcHg7cmlnaHQ6MTBweDt3aWR0aDo0MHB4fS55dHAtY2Utc2l6ZS0xMjgwIC55dHAtY2UtcGxheWxpc3QtaWNvbntsZWZ0OjEwcHg7dG9wOjhweH0ueXRwLWNlLXNpemUtMTI4MCAueXRwLWNlLXBsYXlsaXN0LWNvdW50LXRleHR7aGVpZ2h0OjQwcHg7bGluZS1oZWlnaHQ6NDBweDttYXJnaW4tbGVmdDo0NnB4fS55dHAtY2Utc2l6ZS0xOTIwe2ZvbnQtc2l6ZToyOHB4fS55dHAtY2Utc2l6ZS0xOTIwIC55dHAtY2UtcGxheWxpc3QtdGl0bGUsLnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS12aWRlby10aXRsZXtmb250LXNpemU6MzJweDtsaW5lLWhlaWdodDozOHB4O21hcmdpbjoxOHB4IDIwcHg7bWF4LWhlaWdodDo3NnB4fS55dHAtY2Utc2l6ZS0xOTIwIC55dHAtY2UtdmlkZW8tZHVyYXRpb257bWFyZ2luOjAgMjBweCAyMHB4IDB9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1jaGFubmVsLXRpdGxlLC55dHAtY2Utc2l6ZS0xOTIwIC55dHAtY2UtbWVyY2hhbmRpc2UtdGl0bGUsLnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS13ZWJzaXRlLXRpdGxle2ZvbnQtc2l6ZTozMnB4O2xpbmUtaGVpZ2h0OjM4cHh9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1tZXJjaGFuZGlzZS1nb3RvLC55dHAtY2Utc2l6ZS0xOTIwIC55dHAtY2UtbWVyY2hhbmRpc2UtbWV0YWRhdGEsLnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1tZXJjaGFuZGlzZS1wcmljZS1jb250YWluZXIsLnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS13ZWJzaXRlLWdvdG8sLnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS13ZWJzaXRlLW1ldGFkYXRhe2ZvbnQtc2l6ZToyOHB4O21hcmdpbi10b3A6MTJweH0ueXRwLWNlLXNpemUtMTkyMCAueXRwLWNlLWNoYW5uZWwtbWV0YWRhdGF7Zm9udC1zaXplOjI4cHg7bGluZS1oZWlnaHQ6MzRweDttYXgtaGVpZ2h0OjEwMnB4fS55dHAtY2Utc2l6ZS0xOTIwIC55dHAtY2UtY2hhbm5lbC1zdWJzY3JpYmV7aGVpZ2h0OjgwcHg7bWFyZ2luLXRvcDotMTZweDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgyLjUpOy1tcy10cmFuc2Zvcm06c2NhbGUoMi41KTt0cmFuc2Zvcm06c2NhbGUoMi41KX0ueXRwLWNlLXNpemUtMTkyMC55dHAtY2UtY2hhbm5lbC10aGF0IC55dHAtY2UtY2hhbm5lbC1zdWJzY3JpYmVycy10ZXh0e2Rpc3BsYXk6YmxvY2t9Lnl0cC1jZS1zaXplLTE5MjAueXRwLWNlLWNoYW5uZWwtdGhpcyAueXRwLWNlLWNoYW5uZWwtbWV0YWRhdGF7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjE4cHg7cGFkZGluZy10b3A6MThweH0ueXRwLWNlLXNpemUtMTkyMCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZ3ttaW4td2lkdGg6MzkycHh9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmc+Om5vdCgueXRwLWNlLXN1YnNjcmliZS1jb250YWluZXIpe3dpZHRoOjM5MnB4fS55dHAtY2Utc2l6ZS0xOTIwLnl0cC1jZS1ib3R0b20tbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5nLC55dHAtY2Utc2l6ZS0xOTIwLnl0cC1jZS10b3AtbGVmdC1xdWFkIC55dHAtY2UtZXhwYW5kaW5nLW92ZXJsYXktYm9keS1wYWRkaW5ne21hcmdpbjowIDI0cHggMCA0OHB4fS55dHAtY2Utc2l6ZS0xOTIwLnl0cC1jZS1ib3R0b20tcmlnaHQtcXVhZCAueXRwLWNlLWV4cGFuZGluZy1vdmVybGF5LWJvZHktcGFkZGluZywueXRwLWNlLXNpemUtMTkyMC55dHAtY2UtdG9wLXJpZ2h0LXF1YWQgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1ib2R5LXBhZGRpbmd7bWFyZ2luOjAgNDhweCAwIDI0cHh9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1leHBhbmRpbmctb3ZlcmxheS1iYWNrZ3JvdW5ke21hcmdpbjotMjRweDtwYWRkaW5nOjI0cHh9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1leHBhbmRpbmctaWNvbnstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo1NnB4IDU2cHg7YmFja2dyb3VuZC1zaXplOjU2cHggNTZweDtib3R0b206MjBweDtoZWlnaHQ6NjJweDtyaWdodDoyMHB4O3dpZHRoOjYycHh9Lnl0cC1jZS1zaXplLTE5MjAgLnl0cC1jZS1wbGF5bGlzdC1pY29ue2xlZnQ6MTJweDt0b3A6MTJweH0ueXRwLWNlLXNpemUtMTkyMCAueXRwLWNlLXBsYXlsaXN0LWljb257aGVpZ2h0OjMycHg7d2lkdGg6MzJweH0ueXRwLWNlLXNpemUtMTkyMCAueXRwLWNlLXBsYXlsaXN0LWNvdW50LXRleHR7aGVpZ2h0OjU2cHg7bGluZS1oZWlnaHQ6NTZweDttYXJnaW4tbGVmdDo1NnB4fS55dHAtY2UtY2hhbm5lbC1zdWJzY3JpYmUueXRwLWNlLXN1YnNjcmliZS1idXR0b257aGVpZ2h0OmF1dG87bWFyZ2luLXRvcDowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpOy1tcy10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfS55dHAtY2Utc2l6ZS0zNDYgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1jZS1zaXplLTM0NiAueXRwLXNiLXVuc3Vic2NyaWJlLC55dHAtY2Utc2l6ZS00MjYgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1jZS1zaXplLTQyNiAueXRwLXNiLXVuc3Vic2NyaWJlLC55dHAtY2Utc2l6ZS00NzAgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1jZS1zaXplLTQ3MCAueXRwLXNiLXVuc3Vic2NyaWJlLC55dHAtY2Utc2l6ZS01MDYgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1jZS1zaXplLTUwNiAueXRwLXNiLXVuc3Vic2NyaWJle2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6OHB4fS55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7YmFja2dyb3VuZC1zaXplOmNvdmVyOy1tb3otYmFja2dyb3VuZC1zaXplOmNvdmVyOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyfS55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS55dHAtZXhwLWNvbnRhaW4tdGh1bWJuYWlse2JhY2tncm91bmQtc2l6ZTpjb250YWluOy1tb3otYmFja2dyb3VuZC1zaXplOmNvbnRhaW47LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y29udGFpbn0ueXRwLWN1ZWQtdGh1bWJuYWlsLW92ZXJsYXlbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS1pbWFnZXtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7LW1vei1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGV9Lnl0cC1jdWVkLXRodW1ibmFpbC1vdmVybGF5Lnl0cC1leHAtZnJhbWUwIC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS1pbWFnZXt6LWluZGV4OjEwfS55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS55dHAtZXhwLWNvbnRhaW4tdGh1bWJuYWlsIC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS1pbWFnZXtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjstbW96LWJhY2tncm91bmQtc2l6ZTpjb250YWluOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW59LmVuZGVkLW1vZGUgLnl0cC1jdWVkLXRodW1ibmFpbC1vdmVybGF5Om5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pLC51bnN0YXJ0ZWQtbW9kZTpub3QoLnBsYXlpbmctbW9kZSkgLnl0cC1jdWVkLXRodW1ibmFpbC1vdmVybGF5Om5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pe2N1cnNvcjpwb2ludGVyfS55dHAtY2hhcHRlci1zZWVrLXRleHR7ZGlzcGxheTpub25lO3dpZHRoOjgwJTttYXJnaW4tbGVmdDoxMCU7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6NzAwO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWNoYXB0ZXItc2VlayAueXRwLWNoYXB0ZXItc2Vlay10ZXh0e3dpZHRoOjEwMCU7ZGlzcGxheTpibG9ja31ALXdlYmtpdC1rZXlmcmFtZXMgYXJyb3ctZmFkZS1vdXQtMXswJXtvcGFjaXR5OjB9MTcle29wYWNpdHk6Ljl9MzMle29wYWNpdHk6LjZ9NTAle29wYWNpdHk6LjN9Njcle29wYWNpdHk6LjN9ODMle29wYWNpdHk6LjN9dG97b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIGFycm93LWZhZGUtb3V0LTF7MCV7b3BhY2l0eTowfTE3JXtvcGFjaXR5Oi45fTMzJXtvcGFjaXR5Oi42fTUwJXtvcGFjaXR5Oi4zfTY3JXtvcGFjaXR5Oi4zfTgzJXtvcGFjaXR5Oi4zfXRve29wYWNpdHk6MH19QC13ZWJraXQta2V5ZnJhbWVzIGFycm93LWZhZGUtb3V0LTJ7MCV7b3BhY2l0eTowfTE3JXtvcGFjaXR5Oi4zfTMzJXtvcGFjaXR5Oi45fTUwJXtvcGFjaXR5Oi42fTY3JXtvcGFjaXR5Oi4zfTgzJXtvcGFjaXR5Oi4zfXRve29wYWNpdHk6MH19QGtleWZyYW1lcyBhcnJvdy1mYWRlLW91dC0yezAle29wYWNpdHk6MH0xNyV7b3BhY2l0eTouM30zMyV7b3BhY2l0eTouOX01MCV7b3BhY2l0eTouNn02NyV7b3BhY2l0eTouM304MyV7b3BhY2l0eTouM310b3tvcGFjaXR5OjB9fUAtd2Via2l0LWtleWZyYW1lcyBhcnJvdy1mYWRlLW91dC0zezAle29wYWNpdHk6MH0xNyV7b3BhY2l0eTouM30zMyV7b3BhY2l0eTouM301MCV7b3BhY2l0eTouOX02NyV7b3BhY2l0eTouNn04MyV7b3BhY2l0eTouM310b3tvcGFjaXR5OjB9fUBrZXlmcmFtZXMgYXJyb3ctZmFkZS1vdXQtM3swJXtvcGFjaXR5OjB9MTcle29wYWNpdHk6LjN9MzMle29wYWNpdHk6LjN9NTAle29wYWNpdHk6Ljl9Njcle29wYWNpdHk6LjZ9ODMle29wYWNpdHk6LjN9dG97b3BhY2l0eTowfX0ueXRwLWRvdWJsZXRhcC11aS1sZWdhY3l7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO2NvbG9yOiNkZGQ7ei1pbmRleDoxOX0ueXRwLWRvdWJsZXRhcC1mYXN0LWZvcndhcmQtdmUsLnl0cC1kb3VibGV0YXAtcmV3aW5kLXZle29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZTtwb2ludGVyLWV2ZW50czpub25lfS55dHAtZG91YmxldGFwLW92ZXJsYXktYTExeXtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2JhY2tncm91bmQtY29sb3I6IzAwMDtvcGFjaXR5Oi4yO3otaW5kZXg6LTF9Lnl0cC1kb3VibGV0YXAtc3RhdGljLWNpcmNsZXtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpO3RvcDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7b3ZlcmZsb3c6aGlkZGVufS55dHAtZG91YmxldGFwLXJpcHBsZXtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjIxLDIyMSwyMjEsLjE1KTstd2Via2l0LWFuaW1hdGlvbjpncm93LWNpcmNsZSAuOXMgMTthbmltYXRpb246Z3Jvdy1jaXJjbGUgLjlzIDE7dmVydGljYWwtYWxpZ246bWlkZGxlfUAtd2Via2l0LWtleWZyYW1lcyBncm93LWNpcmNsZXswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwKTt0cmFuc2Zvcm06c2NhbGUoMCl9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgtMjUlKTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgtMjUlKX19QGtleWZyYW1lcyBncm93LWNpcmNsZXswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwKTt0cmFuc2Zvcm06c2NhbGUoMCl9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgtMjUlKTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgtMjUlKX19Lnl0cC1kb3VibGV0YXAtc2Vlay1pbmZvLWNvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6NTAlfS55dHAtZG91YmxldGFwLXVpLWxlZ2FjeS55dHAtdGltZS1zZWVraW5nIC55dHAtZG91YmxldGFwLW92ZXJsYXktYTExeXtkaXNwbGF5Om5vbmV9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5Lnl0cC1jaGFwdGVyLXNlZWsgLnl0cC1kb3VibGV0YXAtc2Vlay1pbmZvLWNvbnRhaW5lcnt0ZXh0LWFsaWduOmNlbnRlcn0ueXRwLWRvdWJsZXRhcC11aS1sZWdhY3lbZGF0YS1zaWRlPWJhY2tdOm5vdCgueXRwLWNoYXB0ZXItc2VlaykgLnl0cC1kb3VibGV0YXAtc2Vlay1pbmZvLWNvbnRhaW5lcntsZWZ0OjEwJTt0ZXh0LWFsaWduOmxlZnR9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5W2RhdGEtc2lkZT1mb3J3YXJkXTpub3QoLnl0cC1jaGFwdGVyLXNlZWspIC55dHAtZG91YmxldGFwLXNlZWstaW5mby1jb250YWluZXJ7bGVmdDo4MCU7dGV4dC1hbGlnbjpsZWZ0fS55dHAtZG91YmxldGFwLXRvb2x0aXB7cGFkZGluZy10b3A6OHB4O2NvbG9yOiNkZGR9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5W2RhdGEtc2lkZT1iYWNrXSAueXRwLWRvdWJsZXRhcC10b29sdGlwe21hcmdpbi1sZWZ0OjhweH0ueXRwLWRvdWJsZXRhcC11aS1sZWdhY3lbZGF0YS1zaWRlPWZvcndhcmRdIC55dHAtZG91YmxldGFwLXRvb2x0aXB7bWFyZ2luLWxlZnQ6LTVweH0ueXRwLWRvdWJsZXRhcC10b29sdGlwLWxhYmVse3RleHQtYWxpZ246bGVmdDtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo1MDB9Lnl0cC1zZWVrLWljb24tdGV4dC1jb250YWluZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luLWxlZnQ6MTAlO3dpZHRoOjgwJX0ueXRwLXNlZWstaWNvbnttYXJnaW4tcmlnaHQ6NXB4fS55dHAtY2hhcHRlci1zZWVrLXRleHQtbGVnYWN5e2Rpc3BsYXk6bm9uZTtmb250LXNpemU6MThweDtmb250LXdlaWdodDo3MDA7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtY2hhcHRlci1zZWVrIC55dHAtY2hhcHRlci1zZWVrLXRleHQtbGVnYWN5e2Rpc3BsYXk6YmxvY2t9Lnl0cC1kb3VibGV0YXAtYXJyb3dzLWNvbnRhaW5lcnt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC1kb3VibGV0YXAtYmFzZS1hcnJvd3t3aWR0aDowO2hlaWdodDowO2JvcmRlcjoxMHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6N3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206N3B4IHNvbGlkIHRyYW5zcGFyZW50O2Rpc3BsYXk6aW5saW5lLWJsb2NrOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjoxLjJzO2FuaW1hdGlvbi1kdXJhdGlvbjoxLjJzOy13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlfS55dHAtZG91YmxldGFwLXVpLWxlZ2FjeVtkYXRhLXNpZGU9Zm9yd2FyZF0gLnl0cC1kb3VibGV0YXAtYmFzZS1hcnJvd3tib3JkZXItbGVmdDoxMXB4IHNvbGlkICNkZGR9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5W2RhdGEtc2lkZT1iYWNrXSAueXRwLWRvdWJsZXRhcC1iYXNlLWFycm93e2JvcmRlci1yaWdodDoxMXB4IHNvbGlkICNkZGR9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5W2RhdGEtc2lkZT1iYWNrXSAueXRwLWRvdWJsZXRhcC1iYXNlLWFycm93Om50aC1jaGlsZCgzKSwueXRwLWRvdWJsZXRhcC11aS1sZWdhY3lbZGF0YS1zaWRlPWZvcndhcmRdIC55dHAtZG91YmxldGFwLWJhc2UtYXJyb3c6Zmlyc3QtY2hpbGR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTphcnJvdy1mYWRlLW91dC0xO2FuaW1hdGlvbi1uYW1lOmFycm93LWZhZGUtb3V0LTF9Lnl0cC1kb3VibGV0YXAtdWktbGVnYWN5W2RhdGEtc2lkZT1iYWNrXSAueXRwLWRvdWJsZXRhcC1iYXNlLWFycm93Om50aC1jaGlsZCgyKSwueXRwLWRvdWJsZXRhcC11aS1sZWdhY3lbZGF0YS1zaWRlPWZvcndhcmRdIC55dHAtZG91YmxldGFwLWJhc2UtYXJyb3c6bnRoLWNoaWxkKDIpey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6YXJyb3ctZmFkZS1vdXQtMjthbmltYXRpb24tbmFtZTphcnJvdy1mYWRlLW91dC0yfS55dHAtZG91YmxldGFwLXVpLWxlZ2FjeVtkYXRhLXNpZGU9YmFja10gLnl0cC1kb3VibGV0YXAtYmFzZS1hcnJvdzpmaXJzdC1jaGlsZCwueXRwLWRvdWJsZXRhcC11aS1sZWdhY3lbZGF0YS1zaWRlPWZvcndhcmRdIC55dHAtZG91YmxldGFwLWJhc2UtYXJyb3c6bnRoLWNoaWxkKDMpey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6YXJyb3ctZmFkZS1vdXQtMzthbmltYXRpb24tbmFtZTphcnJvdy1mYWRlLW91dC0zfS55dHAtc2Vlay1vdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO3otaW5kZXg6MTA7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwb2ludGVyLWV2ZW50czpub25lO2RpcmVjdGlvbjpsdHJ9Lmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtc2Vlay1vdmVybGF5e2Rpc3BsYXk6bm9uZX0ueXRwLXNlZWstb3ZlcmxheS1hbmltYXRpb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO29wYWNpdHk6MH0ueXRwLXNlZWstb3ZlcmxheS1hbmltYXRpb24ueXRwLXNlZWstb3ZlcmxheS1hbmltYXRpb24tYmFja3tsZWZ0OjQ4cHh9Lnl0cC1zZWVrLW92ZXJsYXktYW5pbWF0aW9uLnl0cC1zZWVrLW92ZXJsYXktYW5pbWF0aW9uLWZvcndhcmR7cmlnaHQ6NDhweH0ueXRwLXNlZWstb3ZlcmxheS1kdXJhdGlvbntjb2xvcjp3aGl0ZTtmb250LXNpemU6MjRweDtsaW5lLWhlaWdodDoyNHB4O2ZvbnQtd2VpZ2h0OjcwMDt0ZXh0LXNoYWRvdzowIDAgMXB4IHJnYmEoMCwwLDAsLjgpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7LW1zLXRyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyfS55dHAtc2Vlay1vdmVybGF5LWFuaW1hdGlvbi1iYWNrIC55dHAtc2Vlay1vdmVybGF5LWFycm93e21hcmdpbi1yaWdodDoyMHB4fS55dHAtc2Vlay1vdmVybGF5LWFuaW1hdGlvbi1mb3J3YXJkIC55dHAtc2Vlay1vdmVybGF5LWFycm93e21hcmdpbi1sZWZ0OjIwcHh9Lnl0cC1zZWVrLW92ZXJsYXktYXJyb3cgc3Zne2Rpc3BsYXk6YmxvY2t9Lnl0cC1zZWVrLW92ZXJsYXktYXJyb3cgc3ZnIHBhdGh7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIC41cHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgLjVweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1zZWVrLW92ZXJsYXktYXJyb3ctcGVyc2lzdGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9Lnl0cC1zZWVrLW92ZXJsYXktYXJyb3ctYWRkaXRpb25hbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zbGF0ZTowIC01MCV9Lnl0cC1zZWVrLW92ZXJsYXktYW5pbWF0aW9uLWJhY2sgLnl0cC1zZWVrLW92ZXJsYXktYXJyb3ctYWRkaXRpb25hbHtsZWZ0OjB9Lnl0cC1zZWVrLW92ZXJsYXktYW5pbWF0aW9uLWZvcndhcmQgLnl0cC1zZWVrLW92ZXJsYXktYXJyb3ctYWRkaXRpb25hbHtyaWdodDowfS55dHAtc2Vlay1vdmVybGF5LW1lc3NhZ2V7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7bWF4LXdpZHRoOmNhbGMoMTAwJSAtIDE4MHB4KX0ueXRwLXNlZWstb3ZlcmxheS1tZXNzYWdlLWljb246bm90KDplbXB0eSl7bWFyZ2luLXJpZ2h0OjVweH0ueXRwLXNlZWstb3ZlcmxheS1tZXNzYWdlLXRleHR7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6NzAwO3RleHQtc2hhZG93OjAgMCAxcHggcmdiYSgwLDAsMCwuOCk7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtbW9yZS12aWRlb3Mtdmlld3tvdmVyZmxvdzpoaWRkZW59Lnl0cC1tb3JlLXZpZGVvcy12aWV3IGEueXRwLXN1Z2dlc3Rpb24tbGluazpmb2N1czphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjgpfS55dHAtc2hvcnRzLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3LWNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDt3aWR0aDppbmhlcml0O2hlaWdodDppbmhlcml0Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0cC1tb3JlLXZpZGVvcy12aWV3Lnl0cC1zY3JvbGwtbWF4IC55dHAtbmV4dCwueXRwLW1vcmUtdmlkZW9zLXZpZXcueXRwLXNjcm9sbC1taW4gLnl0cC1wcmV2aW91cywueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLW5leHQsLnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1wcmV2aW91cywueXRwLXRvdWNoLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtbmV4dCwueXRwLXRvdWNoLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtcHJldmlvdXN7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3e2JvdHRvbTo3MHB4O21hcmdpbjoyNHB4fS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXJlbGF0ZWQtdGl0bGV7bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1ib3R0b206MTJweDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MjBweH0ueXRwLWJpZy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXJlbGF0ZWQtdGl0bGV7bWFyZ2luLWJvdHRvbToyNHB4O2ZvbnQtc2l6ZToyOHB4O2xpbmUtaGVpZ2h0OjMycHh9Lnl0cC1tb3JlLXZpZGVvcy12aWV3W2FyaWEtaGlkZGVuPXRydWVdIGEueXRwLXN1Z2dlc3Rpb24tbGlua3tvcGFjaXR5OjB9Lnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbnN7b3ZlcmZsb3c6aGlkZGVuO3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLXRvdWNoLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbnN7b3ZlcmZsb3cteDphdXRvfS55dHAtdG91Y2gtbW9kZSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1zdWdnZXN0aW9uczo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbnN7aGVpZ2h0OjE4MHB4fS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24taW1hZ2V7YmFja2dyb3VuZC1jb2xvcjojMDAwO2JhY2tncm91bmQtcG9zaXRpb246NTAlOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3Zlcjtib3JkZXItcmFkaXVzOjhweDtoZWlnaHQ6MTA4cHg7d2lkdGg6MTkycHh9Lnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtbmV4dCwueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1wcmV2aW91c3tiYWNrZ3JvdW5kOiMzMzM7Ym9yZGVyLXJhZGl1czo1MCU7LXdlYmtpdC1ib3gtc2hhZG93OjAgMXB4IDVweCByZ2JhKDAsMCwwLC4yKTtib3gtc2hhZG93OjAgMXB4IDVweCByZ2JhKDAsMCwwLC4yKTtoZWlnaHQ6MzJweDtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKDUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNTAlKTt3aWR0aDozMnB4fS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLW5leHQ6aG92ZXIsLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtcHJldmlvdXM6aG92ZXJ7LXdlYmtpdC1ib3gtc2hhZG93OjAgNHB4IDVweCByZ2JhKDAsMCwwLC4yKTtib3gtc2hhZG93OjAgNHB4IDVweCByZ2JhKDAsMCwwLC4yKX0ueXRwLWJpZy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLW5leHQsLnl0cC1iaWctbW9kZSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1wcmV2aW91c3toZWlnaHQ6NjRweDt3aWR0aDo2NHB4fS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLW5leHR7cmlnaHQ6NHB4fS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXByZXZpb3Vze2xlZnQ6NHB4fS55dHAtbW9yZS12aWRlb3MtdmlldyBhLnl0cC1zdWdnZXN0aW9uLWxpbmt7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDo0cHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpsZWZ0O3RvcDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjphbGwgLjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tb3ZlcmxheXtib3R0b206MDtmb250LXNpemU6MTJweDtsZWZ0OjA7cGFkZGluZzo4cHg7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0ueXRwLXNob3J0cy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tb3ZlcmxheXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtcGFjazplbmQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQoYm90dG9tLHJnYmEoMTIsMTIsMTIsLjgpLHRyYW5zcGFyZW50IDEwMHB4KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgwZGVnLHJnYmEoMTIsMTIsMTIsLjgpIDAsdHJhbnNwYXJlbnQgMTAwcHgpfS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtc2hvcnRzLW1vZGUpIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tb3ZlcmxheXtvcGFjaXR5OjA7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AscmdiYSgxMiwxMiwxMiwuOCksdHJhbnNwYXJlbnQgMTAwcHgpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDEyLDEyLDEyLC44KSAwLHRyYW5zcGFyZW50IDEwMHB4KTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tb3ZlcmxheXtmb250LXNpemU6MjBweH0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLXNob3J0cy1tb2RlKSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgYS55dHAtc3VnZ2VzdGlvbi1saW5rOmZvY3VzIC55dHAtc3VnZ2VzdGlvbi1vdmVybGF5LC5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtc2hvcnRzLW1vZGUpIC55dHAtbW9yZS12aWRlb3MtdmlldyBhLnl0cC1zdWdnZXN0aW9uLWxpbms6aG92ZXIgLnl0cC1zdWdnZXN0aW9uLW92ZXJsYXl7b3BhY2l0eToxfS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tbGluayAueXRwLXN1Z2dlc3Rpb24tZHVyYXRpb257YmFja2dyb3VuZDojMDAwO2JvcmRlci1yYWRpdXM6MnB4O2JvdHRvbTo0cHg7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE7b3BhY2l0eTouNzU7cGFkZGluZzoycHggNHB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjRweH0ueXRwLWJpZy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tbGluayAueXRwLXN1Z2dlc3Rpb24tZHVyYXRpb257Zm9udC1zaXplOjE3cHh9Lnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbi1saW5rIC55dHAtc3VnZ2VzdGlvbi1kdXJhdGlvbltkYXRhLWlzLWxpdmU9dHJ1ZV17YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1icmFuZCxyZ2JhKDIyNSwwLDQ1LC45KSk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tbGluayAueXRwLXN1Z2dlc3Rpb24tZHVyYXRpb246ZW1wdHksLnl0cC1zaG9ydHMtbW9kZSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1zdWdnZXN0aW9uLWxpbmsgLnl0cC1zdWdnZXN0aW9uLWR1cmF0aW9ue2Rpc3BsYXk6bm9uZX0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLXNob3J0cy1tb2RlKSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1zdWdnZXN0aW9uLXRpdGxlLC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tYXV0aG9ye292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtc2hvcnRzLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbi10aXRsZXtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtc2hvcnRzLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy12aWV3IC55dHAtc3VnZ2VzdGlvbi1hdXRob3J7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MTZweH0ueXRwLXNob3J0cy1tb2RlIC55dHAtbW9yZS12aWRlb3MtdmlldyAueXRwLXN1Z2dlc3Rpb24tdGl0bGV7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MThweH0ueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1zdWdnZXN0aW9uLXRpdGxle2ZvbnQtd2VpZ2h0OjUwMH0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLXNob3J0cy1tb2RlKSAueXRwLW1vcmUtdmlkZW9zLXZpZXcgLnl0cC1zdWdnZXN0aW9uLXRpdGxle21heC1oZWlnaHQ6MzBweH0ueXRwLWltcHJlc3Npb24tbGlua3tiYWNrZ3JvdW5kOnJnYmEoMjMsMjMsMjMsLjgpO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjJweDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czoycHg7Ym90dG9tOjVweDtoZWlnaHQ6NDdweDtwb3NpdGlvbjphYnNvbHV0ZX0ueXRwLWltcHJlc3Npb24tbGluay10ZXh0e2NvbG9yOndoaXRlO2Zsb2F0OmxlZnQ7Zm9udDo1MDAgMTZweC8xNnB4IFlvdVR1YmUgTm90byxSb2JvdG8sQXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7bWFyZ2luLWxlZnQ6MTJweDttYXJnaW4tdG9wOjE2cHh9Lnl0cC1pbXByZXNzaW9uLWxpbmstbG9nb3tmbG9hdDpyaWdodDtoZWlnaHQ6MTZweDttYXJnaW4tbGVmdDo5cHg7bWFyZ2luLXJpZ2h0OjEycHg7bWFyZ2luLXRvcDoxNnB4O3dpZHRoOjcycHh9Lnl0cC1tdXNpYy1pbXByZXNzaW9uLWxpbmsgLnl0cC1pbXByZXNzaW9uLWxpbmstbG9nb3ttYXJnaW4tdG9wOjE0cHg7bWFyZ2luLWxlZnQ6MDtoZWlnaHQ6MTlweH0ueXRwLW1vYmlsZS1hMTF5LWhpZGRlbi1zZWVrLWJ1dHRvbi1mb3J3YXJkLC55dHAtbW9iaWxlLWExMXktaGlkZGVuLXNlZWstYnV0dG9uLXJld2luZHt3aWR0aDoxcHg7aGVpZ2h0OjFweH0ueXRwLW11dGVkLWF1dG9wbGF5LWVuZHNjcmVlbi1vdmVybGF5LC55dHAtbXV0ZWQtYXV0b3BsYXktb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjEwMDE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7YmFja2dyb3VuZC1zaXplOmNvdmVyOy1tb3otYmFja2dyb3VuZC1zaXplOmNvdmVyOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyfS55dHAtbXV0ZWQtYXV0b3BsYXktZW5kc2NyZWVuLW92ZXJsYXlbYXJpYS1oaWRkZW49dHJ1ZV0sLnl0cC1tdXRlZC1hdXRvcGxheS1vdmVybGF5W2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLW11dGVkLWF1dG9wbGF5LWJvdHRvbS1idXR0b25ze3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjExcHg7Ym90dG9tOjB9Lnl0cC1tdXRlZC1hdXRvcGxheS1ib3R0b20tYnV0dG9ucyAueXRwLWJ1dHRvbiwueXRwLW11dGVkLWF1dG9wbGF5LWJvdHRvbS1idXR0b25zIC55dHAtd2F0ZXJtYXJre2Rpc3BsYXk6aW5saW5lLWJsb2NrO292ZXJmbG93OmhpZGRlbjt6LWluZGV4OnVuc2V0O21hcmdpbjowIDRweH0ueXRwLW11dGVkLWF1dG9wbGF5LWJvdHRvbS1idXR0b25zIC55dHAtd2F0ZXJtYXJre3JpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC13YXRlcm1hcmsueXRwLW11dGVkLWF1dG9wbGF5LXdhdGVybWFya3tvcGFjaXR5OjF9Lnl0cC13YXRlcm1hcmsueXRwLW11dGVkLWF1dG9wbGF5LXdhdGVybWFya1thcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtbXV0ZWQtYXV0b3BsYXktZXF1YWxpemVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOmF1dG87aGVpZ2h0OmF1dG87Ym90dG9tOjhweH0ueXRwLWVtYmVkLW1vYmlsZSAueXRwLW11dGVkLWF1dG9wbGF5LWVxdWFsaXplcntib3R0b206MTBweH0ueXRwLW11dGVkLWF1dG9wbGF5LWVxdWFsaXplci1pY29ue21hcmdpbjphdXRvO3RvcDozcHg7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1tdXRlZC1hdXRvcGxheS1lcXVhbGl6ZXItaWNvbnt3aWR0aDoyMHB4O2hlaWdodDoyMHB4fS55dHAtbXV0ZWQtYXV0b3BsYXktZW5kLXBhbmVse3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDowO3JpZ2h0OjA7bWFyZ2luOjAgMTAlO2Rpc3BsYXk6bm9uZX0ueXRwLW11dGVkLWF1dG9wbGF5LXNob3ctZW5kLXBhbmVsLnl0cC1tdXRlZC1hdXRvcGxheS1lbmRzY3JlZW4tb3ZlcmxheXtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjQpfS55dHAtbXV0ZWQtYXV0b3BsYXktc2hvdy1lbmQtcGFuZWwgLnl0cC1tdXRlZC1hdXRvcGxheS1lbmQtcGFuZWx7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LXdyYXA6bm93cmFwO2ZsZXgtd3JhcDpub3dyYXA7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0cC1tdXRlZC1hdXRvcGxheS1lbmQtdGV4dHtwb3NpdGlvbjphYnNvbHV0ZTtmb250LXdlaWdodDo1MDA7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHg7bWFyZ2luLXRvcDo0MHB4fS55dHAtc2hvcnRzLW1vZGUgLnl0cC1tdXRlZC1hdXRvcGxheS1lbmQtdGV4dHttYXJnaW4tdG9wOjkwcHh9QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1lcXVhbGl6ZXItYW5pbWF0aW9uezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxKTt0cmFuc2Zvcm06c2NhbGVZKDEpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjUpO3RyYW5zZm9ybTpzY2FsZVkoLjUpfXRvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxKTt0cmFuc2Zvcm06c2NhbGVZKDEpfX1Aa2V5ZnJhbWVzIHl0cC1lcXVhbGl6ZXItYW5pbWF0aW9uezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxKTt0cmFuc2Zvcm06c2NhbGVZKDEpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjUpO3RyYW5zZm9ybTpzY2FsZVkoLjUpfXRvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxKTt0cmFuc2Zvcm06c2NhbGVZKDEpfX0ueXRwLWVxdWFsaXplci1iYXItbGVmdCwueXRwLWVxdWFsaXplci1iYXItbWlkZGxlLC55dHAtZXF1YWxpemVyLWJhci1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDstbXMtdHJhbnNmb3JtLW9yaWdpbjo4cHggMTZweDt0cmFuc2Zvcm0tb3JpZ2luOjhweCAxNnB4Oy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjo4cHggMTZweDstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnl0cC1lcXVhbGl6ZXItYW5pbWF0aW9uO2FuaW1hdGlvbi1uYW1lOnl0cC1lcXVhbGl6ZXItYW5pbWF0aW9uOy13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlfS55dHAtZXF1YWxpemVyLWJhci1sZWZ0ey13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOi41czthbmltYXRpb24tZHVyYXRpb246LjVzfS55dHAtZXF1YWxpemVyLWJhci1taWRkbGV7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246MS4zczthbmltYXRpb24tZHVyYXRpb246MS4zc30ueXRwLWVxdWFsaXplci1iYXItcmlnaHR7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246LjdzO2FuaW1hdGlvbi1kdXJhdGlvbjouN3N9Lnl0cC1wYXVzZS1vdmVybGF5e2JvcmRlci1yYWRpdXM6OHB4O2JvdHRvbTo0OXB4O2RpcmVjdGlvbjpsdHI7bGVmdDowO21hcmdpbjoxMnB4O3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6NDI7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IDFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IDFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1wYXVzZS1vdmVybGF5W2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1wYXVzZS1vdmVybGF5LWNvbnRyb2xzLWhpZGRlbiAueXRwLXBhdXNlLW92ZXJsYXl7Ym90dG9tOjB9Lnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheSAuYWQtb3ZlcmxheSwueXRwLWV4cGFuZC1wYXVzZS1vdmVybGF5IC5jYXB0aW9uLXdpbmRvd3tkaXNwbGF5Om5vbmV9Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXBhdXNlLW92ZXJsYXktY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4O3dpZHRoOmluaGVyaXQ7aGVpZ2h0OmluaGVyaXQ7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRwLWV4cGFuZC1wYXVzZS1vdmVybGF5IC55dHAtcGF1c2Utb3ZlcmxheXtiYWNrZ3JvdW5kOnJnYmEoMjMsMjMsMjMsLjkpO3BhZGRpbmc6MTJweCAxNnB4IDE2cHg7cmlnaHQ6MH0ueXRwLWV4cGFuZC1wYXVzZS1vdmVybGF5Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXBhdXNlLW92ZXJsYXl7Ym90dG9tOmF1dG99Lnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheS55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtcGF1c2Utb3ZlcmxheXtvcGFjaXR5Oi4yfS55dHAtY2Utc2hvd24gLnl0cC1wYXVzZS1vdmVybGF5LC55dHAtaXYtZHJhd2VyLW9wZW4gLnl0cC1wYXVzZS1vdmVybGF5LC55dHAtbWVudS1zaG93biAueXRwLXBhdXNlLW92ZXJsYXksLnl0cC1zZXR0aW5ncy1zaG93biAueXRwLXBhdXNlLW92ZXJsYXl7ZGlzcGxheTpub25lfS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtZXhwYW5kLXBhdXNlLW92ZXJsYXkpIC55dHAtcGF1c2Utb3ZlcmxheSAueXRwLWNvbGxhcHNlLC5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtZXhwYW5kLXBhdXNlLW92ZXJsYXkpIC55dHAtcGF1c2Utb3ZlcmxheSAueXRwLW5leHQsLmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheSkgLnl0cC1wYXVzZS1vdmVybGF5IC55dHAtcHJldmlvdXMsLmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheSkgLnl0cC1wYXVzZS1vdmVybGF5IC55dHAtcmVsYXRlZC10aXRsZSwuaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLWV4cGFuZC1wYXVzZS1vdmVybGF5KSAueXRwLXBhdXNlLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uc3tkaXNwbGF5Om5vbmV9Lnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheS55dHAtYmlnLW1vZGUgLnl0cC1wYXVzZS1vdmVybGF5e3BhZGRpbmc6MjRweCAzMnB4IDMycHh9Lnl0cC1wYXVzZS1vdmVybGF5IC55dHAtY29sbGFwc2V7aGVpZ2h0OjIwcHg7b3BhY2l0eTouOTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoyMHB4O3RvcDoxMnB4O3dpZHRoOjIwcHh9Lnl0cC1tb2JpbGUueXRwLWVtYmVkLW1vYmlsZSAueXRwLXBhdXNlLW92ZXJsYXkgLnl0cC1jb2xsYXBzZXtoZWlnaHQ6NDhweDtyaWdodDowO3RvcDowO3dpZHRoOjQ4cHh9Lnl0cC1tb2JpbGUueXRwLWVtYmVkLW1vYmlsZSAueXRwLXBhdXNlLW92ZXJsYXkgLnl0cC1jb2xsYXBzZS1pY29ue21hcmdpbjphdXRvO2hlaWdodDozNnB4O3dpZHRoOjM2cHh9Lnl0cC1iaWctbW9kZSAueXRwLXBhdXNlLW92ZXJsYXkgLnl0cC1jb2xsYXBzZXtoZWlnaHQ6MzJweDtyaWdodDozNnB4O3RvcDoyNHB4O3dpZHRoOjMycHh9Lnl0cC1wYXVzZS1vdmVybGF5IC55dHAtY29sbGFwc2U6aG92ZXJ7b3BhY2l0eToxfS55dHAtcGF1c2Utb3ZlcmxheSAueXRwLWV4cGFuZHtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjYpO2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjMycHg7cGFkZGluZzowIDEwcHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtbW9iaWxlLnl0cC1lbWJlZC1tb2JpbGUgLnl0cC1wYXVzZS1vdmVybGF5IC55dHAtZXhwYW5ke2hlaWdodDo0OHB4fS55dHAtYmlnLW1vZGUgLnl0cC1wYXVzZS1vdmVybGF5IC55dHAtZXhwYW5ke2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtc2l6ZToyNHB4O3BhZGRpbmc6MTBweCAxNXB4fS55dHAtcGF1c2Utb3ZlcmxheSAueXRwLWV4cGFuZDpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjgpfS55dHAtcGF1c2Utb3ZlcmxheSAueXRwLWV4cGFuZCBzdmd7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjI0cHg7bWFyZ2luLWJvdHRvbToycHg7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjI0cHh9Lnl0cC1iaWctbW9kZSAueXRwLXBhdXNlLW92ZXJsYXkgLnl0cC1leHBhbmQgc3Zne3dpZHRoOjMycHg7aGVpZ2h0OjMycHh9Lnl0cC1leHBhbmQtcGF1c2Utb3ZlcmxheSAueXRwLWV4cGFuZHtkaXNwbGF5Om5vbmV9Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXBhdXNlLW92ZXJsYXktYmFja2Ryb3B7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC42KTtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4OjI0Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IDFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IDFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXBhdXNlLW92ZXJsYXktYmFja2Ryb3BbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheXtib3JkZXItcmFkaXVzOjJweDtib3R0b206OHB4O2xlZnQ6OHB4O3JpZ2h0OjhweDttYXJnaW46MDtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtwYWRkaW5nOjE2cHggMjRweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXl7cGFkZGluZzoxMnB4IDI0cHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5e2JvdHRvbTozMnB4O2xlZnQ6MjhweDtyaWdodDoyOHB4fS55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1uZXh0LC55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1wcmV2aW91cywueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheS55dHAtc2Nyb2xsLW1heCAueXRwLW5leHQsLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkueXRwLXNjcm9sbC1taW4gLnl0cC1wcmV2aW91cywueXRwLXRvdWNoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1uZXh0LC55dHAtdG91Y2gtbW9kZSAueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXByZXZpb3Vze2Rpc3BsYXk6bm9uZX0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXJlbGF0ZWQtdGl0bGV7bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1ib3R0b206MDtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MTZweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1yZWxhdGVkLXRpdGxle21hcmdpbi1sZWZ0OjhweH0ueXRwLWJpZy1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtcmVsYXRlZC10aXRsZXttYXJnaW4tYm90dG9tOjI0cHg7Zm9udC1zaXplOjI4cHg7bGluZS1oZWlnaHQ6MzJweH0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXN1Z2dlc3Rpb25ze2RpcmVjdGlvbjpsdHI7b3ZlcmZsb3c6aGlkZGVuO3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcDttYXJnaW4tdG9wOjhweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uc3ttYXJnaW4tdG9wOjZweH0ueXRwLXRvdWNoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uc3tvdmVyZmxvdy14OmF1dG99Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLWltYWdle2JhY2tncm91bmQtY29sb3I6IzAwMDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjEwOHB4O3dpZHRoOjE5MnB4O2JvcmRlci1yYWRpdXM6OHB4fS55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtbmV4dCwueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXByZXZpb3Vze2JhY2tncm91bmQ6IzMzMztib3JkZXItcmFkaXVzOjUwJTstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggNXB4IHJnYmEoMCwwLDAsLjIpO2JveC1zaGFkb3c6MCAxcHggNXB4IHJnYmEoMCwwLDAsLjIpO2hlaWdodDozMnB4O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjMycHg7Ym90dG9tOjUwJX0ueXRwLWJpZy1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtbmV4dCwueXRwLWJpZy1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtcHJldmlvdXN7aGVpZ2h0OjY0cHg7d2lkdGg6NjRweH0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLW5leHR7cmlnaHQ6MjhweDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNTAlKX0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1uZXh0e3JpZ2h0OjMycHh9W2Rpcj1ydGxdIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtbmV4dHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXByZXZpb3Vze2xlZnQ6MjhweDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1wcmV2aW91c3tsZWZ0OmFkZCgyNHB4LDhweCl9W2Rpcj1ydGxdIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtcHJldmlvdXN7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCg1MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCg1MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDUwJSl9Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgYS55dHAtc3VnZ2VzdGlvbi1saW5re2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtYWxpZ246bGVmdDt0b3A6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246YWxsIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgYS55dHAtc3VnZ2VzdGlvbi1saW5re21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6OHB4fS55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtc3VnZ2VzdGlvbi1vdmVybGF5e2JvdHRvbTowO2ZvbnQtc2l6ZToxMnB4O2xlZnQ6MDtvcGFjaXR5OjA7cGFkZGluZzo4cHg7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDEyLDEyLDEyLC44KSx0cmFuc3BhcmVudCAxMDBweCk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHJnYmEoMTIsMTIsMTIsLjgpIDAsdHJhbnNwYXJlbnQgMTAwcHgpOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS55dHAtYmlnLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLW92ZXJsYXl7Zm9udC1zaXplOjIwcHh9Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgYS55dHAtc3VnZ2VzdGlvbi1saW5rOmZvY3VzIC55dHAtc3VnZ2VzdGlvbi1vdmVybGF5LC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IGEueXRwLXN1Z2dlc3Rpb24tbGluazpob3ZlciAueXRwLXN1Z2dlc3Rpb24tb3ZlcmxheXtvcGFjaXR5OjF9Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLWxpbmsgLnl0cC1zdWdnZXN0aW9uLWR1cmF0aW9ue2JhY2tncm91bmQ6IzAwMDtib3JkZXItcmFkaXVzOjJweDtib3R0b206NHB4O2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxO29wYWNpdHk6Ljk7cGFkZGluZzoycHggNHB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjRweH0ueXRwLWJpZy1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtc3VnZ2VzdGlvbi1saW5rIC55dHAtc3VnZ2VzdGlvbi1kdXJhdGlvbntmb250LXNpemU6MTdweH0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXN1Z2dlc3Rpb24tbGluayAueXRwLXN1Z2dlc3Rpb24tZHVyYXRpb25bZGF0YS1pcy1saXZlPXRydWVde2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1lcnJvci1pbmRpY2F0b3IsI2UxMDAyZCk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtc3VnZ2VzdGlvbi1kdXJhdGlvbjplbXB0eXtkaXNwbGF5Om5vbmV9Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLWF1dGhvciwueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXN1Z2dlc3Rpb24tdGl0bGV7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLXRpdGxle2ZvbnQtd2VpZ2h0OjUwMDttYXJnaW4tdG9wOjhweDtmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDoxOHB4O21heC1oZWlnaHQ6MzBweH0ueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXN1Z2dlc3Rpb24tYXV0aG9ye29wYWNpdHk6Ljc7bWFyZ2luLXRvcDo0cHg7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MTZweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1uZXh0LC55dHAtc21hbGwtbW9kZSAueXRwLXJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheSAueXRwLXByZXZpb3Vze2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtcmVsYXRlZC10aXRsZXttYXJnaW4tYm90dG9tOjA7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MTRweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXkgLnl0cC1zdWdnZXN0aW9uLXRpdGxle21hcmdpbi10b3A6NnB4O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjE0cHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtcmVsYXRlZC1vbi1lcnJvci1vdmVybGF5IC55dHAtc3VnZ2VzdGlvbi1hdXRob3J7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6MTJweH06bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtd2F0ZXJtYXJre3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjExMHB4O2hlaWdodDoyNnB4O2JvdHRvbTozOHB4O3otaW5kZXg6Mjg7b3BhY2l0eTouOTtwYWRkaW5nLXRvcDoxMXB4O3BhZGRpbmctYm90dG9tOjExcHh9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLXdhdGVybWFyazpub3QoLnl0cC1tdXRlZC1hdXRvcGxheS13YXRlcm1hcmspe3JpZ2h0OjE2cHh9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLXdhdGVybWFyay55dHAtd2F0ZXJtYXJrLXNtYWxse3dpZHRoOjg1cHg7aGVpZ2h0OjIwcHh9Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC13YXRlcm1hcmt7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYmlnLW1vZGU6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtd2F0ZXJtYXJre2JvdHRvbTo1OXB4fS55dHAtaGlkZS1jb250cm9sczpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC13YXRlcm1hcmt7Ym90dG9tOjVweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLW5hdGl2ZS1jb250cm9sczpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC13YXRlcm1hcmt7Ym90dG9tOjUwcHg7bGVmdDoxNnB4fTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC13YXRlcm1hcms6bm90KC55dHAtbm8taG92ZXIpOm5vdCgueXRwLW11dGVkLWF1dG9wbGF5LXdhdGVybWFyayk6aG92ZXJ7b3BhY2l0eToxfTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC1tdXRlZC1hdXRvcGxheS1vdmVybGF5IC55dHAtd2F0ZXJtYXJre3Bvc2l0aW9uOnJlbGF0aXZlO2JvdHRvbTowfS55dHAtYXV0b2hpZGU6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtd2F0ZXJtYXJrOm5vdCgueXRwLW11dGVkLWF1dG9wbGF5LXdhdGVybWFyayl7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtbXV0ZWQtYXV0b3BsYXkgLnl0cC13YXRlcm1hcms6bm90KC55dHAtbXV0ZWQtYXV0b3BsYXktd2F0ZXJtYXJrKXtkaXNwbGF5Om5vbmV9Om5vdCgueXRwLW13ZWItcGxheWVyKSAuaHRtbDUtZW5kc2NyZWVue2N1cnNvcjpkZWZhdWx0O292ZXJmbG93OmhpZGRlbjt6LWluZGV4OjM2fTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC1lbmRzY3JlZW4tdGFrZW92ZXIuaHRtbDUtZW5kc2NyZWVue2Rpc3BsYXk6bm9uZX0ueXRwLXRpdGxlLWVuYWJsZS1jaGFubmVsLWxvZ286bm90KC55dHAtbXdlYi1wbGF5ZXIpIC5odG1sNS1lbmRzY3JlZW46bm90KC55dHAtc2hvcnRzLWJyYW5kZWQtdWkpe21hcmdpbi10b3A6MTZweH0ueXRwLWJpZy1tb2RlLnl0cC10aXRsZS1lbmFibGUtY2hhbm5lbC1sb2dvOm5vdCgueXRwLW13ZWItcGxheWVyKSAuaHRtbDUtZW5kc2NyZWVuOm5vdCgueXRwLXNob3J0cy1icmFuZGVkLXVpKXttYXJnaW4tdG9wOjMycHh9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1jb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6NTAlO3RvcDo1MCV9Lnl0cC1lbmRzY3JlZW4tdGFrZW92ZXI6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtZW5kc2NyZWVuLWNvbnRlbnR7ZGlzcGxheTpub25lfTpub3QoLnl0cC1td2ViLXBsYXllcikgLmh0bWw1LWVuZHNjcmVlbi55dHAtZW5kc2NyZWVuLXBhZ2luYXRle2xlZnQ6MzJweDtvdmVyZmxvdzp2aXNpYmxlO3JpZ2h0OjMycHh9Lnl0cC1iaWctbW9kZTpub3QoLnl0cC1td2ViLXBsYXllcikgLmh0bWw1LWVuZHNjcmVlbi55dHAtZW5kc2NyZWVuLXBhZ2luYXRle2xlZnQ6NDhweDtyaWdodDo0OHB4fTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC1lbmRzY3JlZW4tbmV4dHtkaXNwbGF5Om5vbmU7aGVpZ2h0OjEwMCU7b3BhY2l0eTouOTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDotMzJweDt3aWR0aDozMnB4Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWJpZy1tb2RlOm5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1uZXh0e3JpZ2h0Oi00OHB4O3dpZHRoOjQ4cHh9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1wYWdpbmF0ZSAueXRwLWVuZHNjcmVlbi1uZXh0e2Rpc3BsYXk6YmxvY2t9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1uZXh0OmhvdmVye29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1wcmV2aW91c3tkaXNwbGF5Om5vbmU7aGVpZ2h0OjEwMCU7bGVmdDotMzJweDtvcGFjaXR5Oi45O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjMycHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYmlnLW1vZGU6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtZW5kc2NyZWVuLXByZXZpb3Vze2xlZnQ6LTQ4cHg7d2lkdGg6NDhweH06bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtZW5kc2NyZWVuLXBhZ2luYXRlIC55dHAtZW5kc2NyZWVuLXByZXZpb3Vze2Rpc3BsYXk6YmxvY2t9Om5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLWVuZHNjcmVlbi1wcmV2aW91czpob3ZlcntvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtbXdlYi1wbGF5ZXIuaHRtbDUtZW5kc2NyZWVue3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Y3Vyc29yOmRlZmF1bHQ7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6MzZ9Lmh0bWw1LWVuZHNjcmVlbi5tb2Rlcm4tdmlkZW93YWxsLWVuZHNjcmVlbntjdXJzb3I6ZGVmYXVsdDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDozNjstd2Via2l0LWFsaWduLWNvbnRlbnQ6Y2VudGVyO2FsaWduLWNvbnRlbnQ6Y2VudGVyfS55dHAtbW9kZXJuLWVuZHNjcmVlbi1jb250ZW50e2ZvbnQtc2l6ZToxMXB4fS55dHAtbW9kZXJuLWVuZHNjcmVlbi1zaW5nbGUtaXRlbSAueXRwLW1vZGVybi1lbmRzY3JlZW4tY29udGVudCAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGx7bWFyZ2luLWJvdHRvbTowOy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93O3BhZGRpbmctYm90dG9tOnVuc2V0O2hlaWdodDoxMDAlfS55dHAtbW9kZXJuLWVuZHNjcmVlbi1zaW5nbGUtaXRlbSAueXRwLW1vZGVybi1lbmRzY3JlZW4tY29udGVudCAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwgLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWltYWdle21hcmdpbi1yaWdodDoxMnB4fS55dHAtZW5kc2NyZWVuLXRha2VvdmVyIC55dHAtbW9kZXJuLWVuZHNjcmVlbi1jb250ZW50LC55dHAtZW5kc2NyZWVuLXRha2VvdmVyLmh0bWw1LWVuZHNjcmVlbntkaXNwbGF5Om5vbmV9Lnl0cC10aXRsZS1lbmFibGUtY2hhbm5lbC1sb2dvIC5odG1sNS1lbmRzY3JlZW46bm90KC55dHAtc2hvcnRzLWJyYW5kZWQtdWkpe21hcmdpbi10b3A6MTZweH0ueXRwLW1vZGVybi1lbmRzY3JlZW4tY29udGVudHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdChhdXRvLWZpbGwsbWlubWF4KDMxMHB4LDFmcikpO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoYXV0by1maWxsLG1pbm1heChjbGFtcCgyNTBweCwyNyUsNDUwcHgpLDFmcikpO2dyaWQtdGVtcGxhdGUtcm93czpyZXBlYXQoMSwxZnIpOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dyaWQtYXV0by1yb3dzOjA7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtY29sdW1uLWdhcDoxNnB4Oy1tb3otY29sdW1uLWdhcDoxNnB4O2NvbHVtbi1nYXA6MTZweDt3aWR0aDoxMDAlOy13ZWJraXQtYm94LWFsaWduOnN0cmV0Y2g7LXdlYmtpdC1hbGlnbi1pdGVtczpzdHJldGNoO2FsaWduLWl0ZW1zOnN0cmV0Y2g7cGFkZGluZzozMnB4Oy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDttYXgtaGVpZ2h0OjEwMCV9Lnl0cC1tb2Rlcm4tZW5kc2NyZWVuLXJvdy0wIC55dHAtbW9kZXJuLWVuZHNjcmVlbi1jb250ZW50e3BhZGRpbmctdG9wOjE2cHg7cGFkZGluZy1ib3R0b206MTZweH0ueXRwLW1vZGVybi1lbmRzY3JlZW4tbGltaXQtcm93cy0xIC55dHAtbW9kZXJuLWVuZHNjcmVlbi1jb250ZW50e2dyaWQtdGVtcGxhdGUtcm93czpyZXBlYXQoMSwxZnIpfS55dHAtbW9kZXJuLWVuZHNjcmVlbi1saW1pdC1yb3dzLTIgLnl0cC1tb2Rlcm4tZW5kc2NyZWVuLWNvbnRlbnR7Z3JpZC10ZW1wbGF0ZS1yb3dzOnJlcGVhdCgyLDFmcil9Lnl0cC1tb2Rlcm4tZW5kc2NyZWVuLWxpbWl0LXJvd3MtMyAueXRwLW1vZGVybi1lbmRzY3JlZW4tY29udGVudHtncmlkLXRlbXBsYXRlLXJvd3M6cmVwZWF0KDMsMWZyKX0ueXRwLWVuZHNjcmVlbi1wcmV2aW91czpob3ZlcntvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZHtvcGFjaXR5OjE7b3ZlcmZsb3c6dmlzaWJsZX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLnl0cC1mdWxsc2NyZWVuLWdyaWQtbWFpbi1jb250ZW50e29wYWNpdHk6MTtzY3JvbGxiYXItd2lkdGg6bm9uZTtvdmVyZmxvdzpzY3JvbGx9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlIC55dHAtZnVsbHNjcmVlbi1ncmlkLW1haW4tY29udGVudHtib3R0b206MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO3RvcDowfS55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZS55dHAtZ3JpZC1zY3JvbGxhYmxlIC55dHAtZnVsbHNjcmVlbi1ncmlke3RvcDpjYWxjKDMwJSArIHZhcigtLXl0cC1ncmlkLXNjcm9sbC1wZXJjZW50YWdlKSoxMDAlKTtib3R0b206MH0uaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUgLnl0cC1mdWxsc2NyZWVuLWdyaWQtZXhwYW5kLWJ1dHRvbiwuaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nKTpub3QoLnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlKSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1idXR0b25zLWNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0b3A6MDttYXJnaW4tdG9wOmNhbGModmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQpLzIqLTEgKyB2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0KS8yKi0xKTstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O3otaW5kZXg6NzI7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtZnVsbHNjcmVlbi1ncmlkLWJ1dHRvbnMtY29udGFpbmVye21hcmdpbi10b3A6Y2FsYyh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCkvMiotMSArIHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQpLzIqLTEpfS55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b257b3BhY2l0eToxOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b24gc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9ue3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOnZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0KTtoZWlnaHQ6dmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQpO2JvcmRlci1yYWRpdXM6NTAlO292ZXJmbG93OnZpc2libGU7c2Nyb2xsYmFyLXdpZHRoOm5vbmU7ei1pbmRleDo3Mjtwb2ludGVyLWV2ZW50czphbGw7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1iaWctbW9kZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9ue3dpZHRoOnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0KTtoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQpfS55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b24gc3Zne3BhZGRpbmc6Y2FsYygodmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQpIC0gdmFyKC0teXQtZGVsaGktaWNvbi1zaXplLCAyNHB4KSkvMik7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLWljb24tc2l6ZSwyNHB4KTt3aWR0aDp2YXIoLS15dC1kZWxoaS1pY29uLXNpemUsMjRweCl9Lnl0cC1iaWctbW9kZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9uIHN2Z3twYWRkaW5nOmNhbGMoKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0KSAtIHZhcigtLXl0LWRlbGhpLWljb24tc2l6ZSwgMjRweCkpLzIpfS55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b246YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTt0b3A6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO3dpZHRoOmNhbGMoMTAwJSAtIDhweCk7aGVpZ2h0OmNhbGMoMTAwJSAtIDhweCk7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aW9uLWJ1dHRvbntkaXNwbGF5Om5vbmU7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aW9uLWJ1dHRvbntkaXNwbGF5OmJsb2NrO3BvaW50ZXItZXZlbnRzOmFsbH06bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b246aG92ZXI6YmVmb3JlLDpub3QoLnl0cC1ncmlkLXNjcm9sbGluZykgLnl0cC1mdWxsc2NyZWVuLWdyaWQtaG92ZXItb3ZlcmxheTpob3ZlciAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9uOmJlZm9yZSw6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLWhvdmVyLW92ZXJsYXk6aG92ZXIgLnl0cC1tb3JlLXZpZGVvcy1idXR0b246YWZ0ZXIsOm5vdCgueXRwLWdyaWQtc2Nyb2xsaW5nKSAueXRwLW1vcmUtdmlkZW9zLWJ1dHRvbjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKX06bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b246YWN0aXZlOmJlZm9yZSw6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLWhvdmVyLW92ZXJsYXk6YWN0aXZlIC55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b246YmVmb3JlLDpub3QoLnl0cC1ncmlkLXNjcm9sbGluZykgLnl0cC1mdWxsc2NyZWVuLWdyaWQtaG92ZXItb3ZlcmxheTphY3RpdmUgLnl0cC1tb3JlLXZpZGVvcy1idXR0b246YWZ0ZXIsOm5vdCgueXRwLWdyaWQtc2Nyb2xsaW5nKSAueXRwLW1vcmUtdmlkZW9zLWJ1dHRvbjphY3RpdmU6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYnV0dG9uLXNlY29uZGFyeSxyZ2JhKDI1NSwyNTUsMjU1LC4yKSl9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tZ3JpZHtvcGFjaXR5OjE7b3ZlcmZsb3c6aGlkZGVuO3RvcDpjYWxjKDEwMCUgLSB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkgLSB2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSAtIDZweCAtIHZhcigtLXl0cC1ncmlkLXNjcm9sbC1wZXJjZW50YWdlKSoxMDAlKX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1iaWctbW9kZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZHt0b3A6Y2FsYygxMDAlIC0gdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpIC0gdmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgLSA2cHggLSB2YXIoLS15dHAtZ3JpZC1zY3JvbGwtcGVyY2VudGFnZSkqMTAwJSl9Lnl0cC1ncmlkLXNjcm9sbGFibGUgLnl0cC1mdWxsc2NyZWVuLWdyaWQtaGVhZGVye2Rpc3BsYXk6bm9uZX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1ncmlkLXNjcm9sbGFibGUgLnl0cC1mdWxsc2NyZWVuLWdyaWR7ZGlzcGxheTpibG9jaztvdmVyZmxvdzp2aXNpYmxlO3RvcDpjYWxjKDEwMCUgLSB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkgLSB2YXIoLS15dHAtZ3JpZC1zY3JvbGwtcGVyY2VudGFnZSkqMTAwJSl9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtZ3JpZC1zY3JvbGxhYmxlLnl0cC1iaWctbW9kZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZHt0b3A6Y2FsYygxMDAlIC0gdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpIC0gdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpfS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWdyaWQtc2Nyb2xsYWJsZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1tYWluLWNvbnRlbnR7b3BhY2l0eTouNX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1ncmlkLXNjcm9sbGFibGUueXRwLWdyaWQtc2Nyb2xsaW5nIC55dHAtZnVsbHNjcmVlbi1ncmlkLW1haW4tY29udGVudHtvcGFjaXR5OjF9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1ob3Zlci1vdmVybGF5e2Rpc3BsYXk6YmxvY2s7d2lkdGg6Y2FsYygxMDAlIC0gMjRweCk7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDoxMnB4O2JvcmRlci1yYWRpdXM6MTZweDt6LWluZGV4OjcyO3BvaW50ZXItZXZlbnRzOmFsbDtjdXJzb3I6cG9pbnRlcn0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmU6bm90KC5lbmRlZC1tb2RlKSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1tYWluLWNvbnRlbnQsLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1tYWluLWNvbnRlbnR7bWFyZ2luLXRvcDoxMnB4fS55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1ob3Zlci1vdmVybGF5LC55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWdyaWQtc2Nyb2xsaW5nIC55dHAtZnVsbHNjcmVlbi1ncmlkLWhvdmVyLW92ZXJsYXl7ZGlzcGxheTpub25lfTpub3QoLnl0cC1ncmlkLXNjcm9sbGluZykgLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1ob3Zlci1vdmVybGF5OmhhcygueXRwLWZ1bGxzY3JlZW4tZ3JpZC1leHBhbmQtYnV0dG9uOmhvdmVyKSw6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1mdWxsc2NyZWVuLWdyaWQtaG92ZXItb3ZlcmxheTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5KX06bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1mdWxsc2NyZWVuLWdyaWQtaG92ZXItb3ZlcmxheTphY3RpdmUsOm5vdCgueXRwLWdyaWQtc2Nyb2xsaW5nKSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtZnVsbHNjcmVlbi1ncmlkLWhvdmVyLW92ZXJsYXk6aGFzKC55dHAtZnVsbHNjcmVlbi1ncmlkLWV4cGFuZC1idXR0b246YWN0aXZlKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10b25hbC1ob3Zlcil9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlOm5vdCguZW5kZWQtbW9kZSkgLnl0cC1mdWxsc2NyZWVuLWdyaWQsLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tZ3JpZHtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApLHJnYmEoMCwwLDAsLjc1KSAxMDBweCxyZ2JhKDAsMCwwLC44NSkpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLDApLHJnYmEoMCwwLDAsLjc1KSAxMDBweCxyZ2JhKDAsMCwwLC44NSkpfS55dHAtZ3JpZC1yZXBsYXktYnV0dG9ue3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7Ym9yZGVyLXJhZGl1czoxOHB4O21hcmdpbi1yaWdodDoxNnB4Oy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTtkaXNwbGF5Om5vbmV9Lnl0cC1mdWxsLWJsZWVkLXBsYXllciAueXRwLWdyaWQtcmVwbGF5LWJ1dHRvbnt3aWR0aDo2MHB4O2hlaWdodDo2MHB4O2JvcmRlci1yYWRpdXM6MzBweH0ueXRwLWdyaWQtcmVwbGF5LWJ1dHRvbiBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1zdGlsbHMtY29udGFpbmVye2Rpc3BsYXk6Z3JpZDtwYWRkaW5nOjAgMjRweDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDMsMWZyKTtwb2ludGVyLWV2ZW50czpub25lOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDoxNnB4Oy13ZWJraXQtYm94LWFsaWduOnN0cmV0Y2g7LXdlYmtpdC1hbGlnbi1pdGVtczpzdHJldGNoO2FsaWduLWl0ZW1zOnN0cmV0Y2h9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlIC55dHAtZnVsbHNjcmVlbi1ncmlkLXN0aWxscy1jb250YWluZXIsLnl0cC1ncmlkLXNjcm9sbGluZy55dHAtZ3JpZC1zY3JvbGxhYmxlIC55dHAtZnVsbHNjcmVlbi1ncmlkLXN0aWxscy1jb250YWluZXJ7cG9pbnRlci1ldmVudHM6YXV0b30ueXRwLWZ1bGxzY3JlZW4tZ3JpZHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MTAwJTt3aWR0aDoxMDAlO3otaW5kZXg6NzI7cG9pbnRlci1ldmVudHM6bm9uZTttYXgtaGVpZ2h0OjEwMCU7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O29wYWNpdHk6MDt2aXNpYmlsaXR5OnZpc2libGU7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcpOm5vdCgueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUpIC55dHAtZnVsbHNjcmVlbi1ncmlke2Rpc3BsYXk6bm9uZX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1hdXRvaGlkZTpub3QoLnl0cC1ncmlkLXNjcm9sbGluZykgLnl0cC1mdWxsc2NyZWVuLWdyaWR7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7b3BhY2l0eTowfS55dHAtbW9yZS12aWRlb3MtYnV0dG9ue3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4O3dpZHRoOi13ZWJraXQtZml0LWNvbnRlbnQ7d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudDstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvdzt6LWluZGV4OjcyO3BvaW50ZXItZXZlbnRzOmFsbDtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KSAxMnB4Oy13ZWJraXQtY29sdW1uLWdhcDo4cHg7LW1vei1jb2x1bW4tZ2FwOjhweDtjb2x1bW4tZ2FwOjhweDtib3JkZXItcmFkaXVzOjI4cHg7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1tb3JlLXZpZGVvcy1idXR0b24gc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLW1vcmUtdmlkZW9zLWJ1dHRvbnstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLW1vcmUtdmlkZW9zLWJ1dHRvbjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0cHg7bGVmdDo0cHg7d2lkdGg6Y2FsYygxMDAlIC0gOHB4KTtoZWlnaHQ6Y2FsYygxMDAlIC0gOHB4KTtib3JkZXItcmFkaXVzOjI4cHh9Lnl0cC1tb3JlLXZpZGVvcy1idXR0b24gLnl0cC1tb3JlLXZpZGVvcy1idXR0b24tdGh1bWJuYWlse3dpZHRoOjQwcHg7YXNwZWN0LXJhdGlvOjE2Lzk7Ym9yZGVyOjJweCBzb2xpZCB3aGl0ZTtib3JkZXItcmFkaXVzOjhweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCV9Lnl0cC1tb3JlLXZpZGVvcy1idXR0b24gLnl0cC1tb3JlLXZpZGVvcy1idXR0b24tdGl0bGV7Y29sb3I6dmFyKC0tT3ZlcmxheS1PdmVybGF5LVRleHQtUHJpbWFyeSwjZmZmKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDA7Zm9udC1mYW1pbHk6dmFyKC0tVHlwb2dyYXBoeS1Gb250LUZhbWlseSxSb2JvdG8pO2ZvbnQtc2l6ZToxNnB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoyMHB4O2xldHRlci1zcGFjaW5nOi4xNnB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9QG1lZGlhIChtaW4td2lkdGg6MjIwMHB4KXsueXRwLWZ1bGxzY3JlZW4tZ3JpZC1zdGlsbHMtY29udGFpbmVye2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCwxZnIpfX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUuaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUgLmh0bWw1LWVuZHNjcmVlbntkaXNwbGF5Om5vbmV9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtZnVsbHNjcmVlbi1ncmlke3RvcDowO2JvdHRvbTp2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LDcycHgpfS55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZS5odG1sNS12aWRlby1wbGF5ZXIuZW5kZWQtbW9kZSAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1zdGlsbHMtY29udGFpbmVye3dpZHRoOjEwMCU7cGFkZGluZzowIDI0cHh9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtZnVsbHNjcmVlbi1ncmlkLW1haW4tY29udGVudHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dHAtZnVsbHNjcmVlbi1ncmlkLWFjdGl2ZS5odG1sNS12aWRlby1wbGF5ZXIuZW5kZWQtbW9kZTpub3QoLnl0cC1lbmFibGUtaG9yaXpvbnRhbC1lbmRzY3JlZW4tc2hlbGYpIC55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbDpudGgtY2hpbGQobis0KXtkaXNwbGF5Om5vbmV9QG1lZGlhIChtaW4td2lkdGg6MjIwMHB4KXsueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUuaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGU6bm90KC55dHAtZW5hYmxlLWhvcml6b250YWwtZW5kc2NyZWVuLXNoZWxmKSAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGw6bnRoLWNoaWxkKDQpe2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUuaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUueXRwLWVuYWJsZS1ob3Jpem9udGFsLWVuZHNjcmVlbi1zaGVsZiAueXRwLWZ1bGxzY3JlZW4tZ3JpZC1zdGlsbHMtY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93O292ZXJmbG93LXg6YXV0bzstd2Via2l0LWJveC1wYWNrOnN0YXJ0Oy13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7c2Nyb2xsYmFyLXdpZHRoOm5vbmV9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlLmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlLnl0cC1lbmFibGUtaG9yaXpvbnRhbC1lbmRzY3JlZW4tc2hlbGYgLnl0cC1mdWxsc2NyZWVuLWdyaWQtbWFpbi1jb250ZW50ey13ZWJraXQtYm94LXBhY2s6c3RhcnQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUuaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUueXRwLWVuYWJsZS1ob3Jpem9udGFsLWVuZHNjcmVlbi1zaGVsZiAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGx7bWluLXdpZHRoOjMxJX0uaHRtbDUtdmlkZW8tcGxheWVyLmVuZGVkLW1vZGUgLnl0cC1tb3JlLXZpZGVvcy1idXR0b24ueXRwLWJ1dHRvbiwueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLmh0bWw1LWVuZHNjcmVlbiwueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLnl0cC1hZC1wbGF5ZXItb3ZlcmxheS1sYXlvdXQsLnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlIC55dHAtY2FwdGlvbi13aW5kb3ctY29udGFpbmVyLC55dHAtZ3JpZC1zY3JvbGxpbmcgLmh0bWw1LWVuZHNjcmVlbiwueXRwLWdyaWQtc2Nyb2xsaW5nIC55dHAtYWQtcGxheWVyLW92ZXJsYXktbGF5b3V0LC55dHAtZ3JpZC1zY3JvbGxpbmcgLnl0cC1jYXB0aW9uLXdpbmRvdy1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmc6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtZnVsbHNjcmVlbi1ncmlkLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmc6bm90KC55dHAtZ3JpZC1zY3JvbGxpbmcpIC55dHAtbW9yZS12aWRlb3MtYnV0dG9uLnl0cC1idXR0b24sLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtZnVsbHNjcmVlbi1ncmlkLC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLW1vcmUtdmlkZW9zLWJ1dHRvbi55dHAtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLWVycm9ye3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4OjQ0O2xpbmUtaGVpZ2h0OjIyMCU7YmFja2dyb3VuZC1jb2xvcjpyZ2IoNDAsNDAsNDApfS55dHAtZW1iZWQtZXJyb3IgLnl0cC1lcnJvcntkaXNwbGF5OmJsb2NrfS55dHAtZXJyb3IucmVsYXRlZC1vbi1lcnJvci1vdmVybGF5LXZpc2libGV7bGluZS1oZWlnaHQ6MTYwJX0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1lcnJvci5yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXktdmlzaWJsZXtsaW5lLWhlaWdodDoyMjAlfS55dHAtZXJyb3IgLnl0cC1lcnJvci1jb250ZW50IGF7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTttYXgtd2lkdGg6ODUlOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXh9Lnl0cC1lbWJlZC1lcnJvciAueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudHttYXJnaW46MCBhdXRvfS55dHAtZXJyb3IgLnl0cC1lcnJvci1pY29uLWNvbnRhaW5lcntoZWlnaHQ6NjRweDt3aWR0aDo2NHB4O21pbi13aWR0aDo2NHB4O21pbi1oZWlnaHQ6NjRweDtmbG9hdDpsZWZ0fS55dHAtZXJyb3IgLnl0cC1lcnJvci1pY29uLWNvbnRhaW5lciBzdmd7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlfS55dHAtZXJyb3IgLnl0cC1zbWFsbC1yZWRpcmVjdHtkaXNwbGF5OmlubGluZTtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo4cHg7cmlnaHQ6OHB4O29wYWNpdHk6Ljd9Lnl0cC1lcnJvciAueXRwLXNtYWxsLXJlZGlyZWN0Lm5vLWxpbmt7Y3Vyc29yOmRlZmF1bHR9Lnl0cC1lcnJvci1jb250ZW50LXdyYXAtc3VicmVhc29uOmVtcHR5e2Rpc3BsYXk6bm9uZX0ueXRwLWVycm9yLnJlbGF0ZWQtb24tZXJyb3Itb3ZlcmxheS12aXNpYmxlIC55dHAtc21hbGwtcmVkaXJlY3QsLnl0cC1mdWxsc2NyZWVuIC55dHAtZXJyb3IgLnl0cC1zbWFsbC1yZWRpcmVjdHtkaXNwbGF5Om5vbmV9Lnl0cC1lcnJvciAueXRwLXNtYWxsLXJlZGlyZWN0IGF7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJX0ueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudCAueXRwLWVycm9yLWNvbnRlbnQtd3JhcHttYXJnaW4tdG9wOmF1dG87bWFyZ2luLWJvdHRvbTphdXRvO21hcmdpbi1sZWZ0OjE2cHg7aGVpZ2h0OjEwMCV9Lnl0cC1lcnJvciAueXRwLWVycm9yLWNvbnRlbnQgLnl0cC1lcnJvci1jb250ZW50LXdyYXAtcmVhc29ue2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1lcnJvciAueXRwLWVycm9yLWNvbnRlbnQgLnl0cC1lcnJvci1pY29uLWNvbnRhaW5lcntoZWlnaHQ6OTZweDt3aWR0aDo5NnB4O21pbi13aWR0aDo5NnB4O21pbi1oZWlnaHQ6OTZweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1lcnJvciAueXRwLXNtYWxsLXJlZGlyZWN0e2hlaWdodDo2MHB4O3dpZHRoOjYwcHh9Lnl0cC1lcnJvciAueXRwLWVycm9yLWNvbnRlbnQgLnl0cC1lcnJvci1jb250ZW50LXdyYXAtcmVhc29ue2ZvbnQtc2l6ZToyMnB4fS55dHAtZXJyb3IucmVsYXRlZC1vbi1lcnJvci1vdmVybGF5LXZpc2libGUgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXJlYXNvbntmb250LXNpemU6MTZweH0ueXRwLWxhcmdlLXdpZHRoLW1vZGUgLnl0cC1lcnJvci5yZWxhdGVkLW9uLWVycm9yLW92ZXJsYXktdmlzaWJsZSAueXRwLWVycm9yLWNvbnRlbnQgLnl0cC1lcnJvci1jb250ZW50LXdyYXAtcmVhc29ue2ZvbnQtc2l6ZToyMnB4fS55dHAtZXJyb3IgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXN1YnJlYXNvbntmb250LXNpemU6MThweDtwYWRkaW5nLXRvcDoxMHB4fS55dHAtZXJyb3IucmVsYXRlZC1vbi1lcnJvci1vdmVybGF5LXZpc2libGUgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXN1YnJlYXNvbntmb250LXNpemU6MTRweDtwYWRkaW5nLXRvcDoycHh9Lnl0cC1sYXJnZS13aWR0aC1tb2RlIC55dHAtZXJyb3IgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXN1YnJlYXNvbntmb250LXNpemU6MThweDtwYWRkaW5nLXRvcDoxMHB4fS55dHAtc21hbGwtbW9kZSAueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudHtsaW5lLWhlaWdodDoxNTAlfS55dHAtc21hbGwtbW9kZSAueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudCAueXRwLWVycm9yLWljb24tY29udGFpbmVye2hlaWdodDozMnB4O3dpZHRoOjMycHg7bWluLXdpZHRoOjMycHg7bWluLWhlaWdodDozMnB4fS55dHAtdGlueS1tb2RlIC55dHAtZXJyb3ItaWNvbi1jb250YWluZXJ7ZGlzcGxheTpub25lfS55dHAtc21hbGwtbW9kZSAueXRwLWVycm9yIC55dHAtZXJyb3ItY29udGVudCAueXRwLWVycm9yLWNvbnRlbnQtd3JhcC1yZWFzb257Zm9udC1zaXplOjE0cHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtZXJyb3IgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXN1YnJlYXNvbntmb250LXNpemU6MTJweDtwYWRkaW5nLXRvcDo0cHh9Lnl0cC10aW55LW1vZGUgLnl0cC1lcnJvciAueXRwLWVycm9yLWNvbnRlbnQgLnl0cC1lcnJvci1jb250ZW50LXdyYXAtcmVhc29ue2ZvbnQtc2l6ZToxMnB4fS55dHAtdGlueS1tb2RlIC55dHAtZXJyb3IgLnl0cC1lcnJvci1jb250ZW50IC55dHAtZXJyb3ItY29udGVudC13cmFwLXN1YnJlYXNvbntmb250LXNpemU6MTBweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC1lcnJvciAueXRwLXNtYWxsLXJlZGlyZWN0e2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWZ1bGxlcnNjcmVlbi1lZHUtYnV0dG9uLnl0cC1idXR0b257d2lkdGg6YXV0bztwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0ZXh0LWFsaWduOmNlbnRlcjstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtZnVsbGVyc2NyZWVuLWVkdS1idXR0b24ueXRwLWJ1dHRvblthcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZnVsbGVyc2NyZWVuLWVkdS1jaGV2cm9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjI0cHh9Lnl0cC1mdWxsZXJzY3JlZW4tZWR1LWJ1dHRvbjpub3QoLnl0cC1mdWxsZXJzY3JlZW4tZWR1LWJ1dHRvbi1zdWJ0bGUpIC55dHAtZnVsbGVyc2NyZWVuLWVkdS1jaGV2cm9ue2hlaWdodDo1MCV9Lnl0cC1mdWxsZXJzY3JlZW4tZWR1LXRleHR7aGVpZ2h0OjUwJTttYXJnaW4tdG9wOi04cHh9Lnl0cC1mdWxsZXJzY3JlZW4tZWR1LWJ1dHRvbi1zdWJ0bGUgLnl0cC1mdWxsZXJzY3JlZW4tZWR1LXRleHR7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1mdWxsc2NyZWVuLWJ1dHRvbjphZnRlcnt3aWR0aDoyNHB4fS55dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTAsLnl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMSwueXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0yLC55dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTN7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTstbXMtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMC1hbmltYXRpb257NTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtMXB4LC0xcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTFweCwtMXB4KX19QGtleWZyYW1lcyB5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTAtYW5pbWF0aW9uezUwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTFweCwtMXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xcHgsLTFweCl9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTEtYW5pbWF0aW9uezUwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMXB4LC0xcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGUoMXB4LC0xcHgpfX1Aa2V5ZnJhbWVzIHl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMS1hbmltYXRpb257NTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgxcHgsLTFweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxcHgsLTFweCl9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTItYW5pbWF0aW9uezUwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMXB4LDFweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxcHgsMXB4KX19QGtleWZyYW1lcyB5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTItYW5pbWF0aW9uezUwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMXB4LDFweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxcHgsMXB4KX19QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMy1hbmltYXRpb257NTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtMXB4LDFweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMXB4LDFweCl9fUBrZXlmcmFtZXMgeXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0zLWFuaW1hdGlvbns1MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC0xcHgsMXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xcHgsMXB4KX19Lnl0cC1mdWxsc2NyZWVuLWJ1dHRvbjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pOmhvdmVyIC55dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTB7LXdlYmtpdC1hbmltYXRpb246eXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0wLWFuaW1hdGlvbiAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7YW5pbWF0aW9uOnl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMC1hbmltYXRpb24gLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS55dHAtZnVsbHNjcmVlbi1idXR0b246bm90KFthcmlhLWRpc2FibGVkPXRydWVdKTpob3ZlciAueXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0xey13ZWJraXQtYW5pbWF0aW9uOnl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMS1hbmltYXRpb24gLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2FuaW1hdGlvbjp5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTEtYW5pbWF0aW9uIC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ueXRwLWZ1bGxzY3JlZW4tYnV0dG9uOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSk6aG92ZXIgLnl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMnstd2Via2l0LWFuaW1hdGlvbjp5dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTItYW5pbWF0aW9uIC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTthbmltYXRpb246eXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0yLWFuaW1hdGlvbiAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lnl0cC1mdWxsc2NyZWVuLWJ1dHRvbjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pOmhvdmVyIC55dHAtZnVsbHNjcmVlbi1idXR0b24tY29ybmVyLTN7LXdlYmtpdC1hbmltYXRpb246eXRwLWZ1bGxzY3JlZW4tYnV0dG9uLWNvcm5lci0zLWFuaW1hdGlvbiAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7YW5pbWF0aW9uOnl0cC1mdWxsc2NyZWVuLWJ1dHRvbi1jb3JuZXItMy1hbmltYXRpb24gLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS55dHAtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25ze3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo4NnB4O3JpZ2h0OjI0cHg7ei1pbmRleDo1OX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9uc3tib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDMwcHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZSAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9uc3tib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDMwcHgpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9uc3tib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDMwcHggKyB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnN7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAzMHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7cG9zaXRpb246YWJzb2x1dGU7bWF4LXdpZHRoOjMzJTt0b3A6MjRweDtsZWZ0OjI0cHg7ei1pbmRleDo1OX0ueXRwLW92ZXJsYXktdG9wLWxlZnQgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhe21heC13aWR0aDo2MCV9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbSAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7dG9wOnVuc2V0O2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMzBweCl9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtZmVhdHVyZWQtcHJvZHVjdC1zaG93biAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGMoMTQycHggKyB2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSl9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtc2hvcHBpbmctcGlsbC1zaG93biAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGMoODZweCArIHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpKX0ueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEtYm90dG9tLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyAzMHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEtYm90dG9tLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtZmVhdHVyZWQtcHJvZHVjdC1zaG93biAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGMoMTQycHggKyB2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLXNob3BwaW5nLXBpbGwtc2hvd24gLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhe2JvdHRvbTpjYWxjKDg2cHggKyB2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtYmlnLW1vZGUgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhe2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgMzBweCl9Lnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtYmlnLW1vZGUueXRwLWZlYXR1cmVkLXByb2R1Y3Qtc2hvd24gLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhe2JvdHRvbTpjYWxjKDE0MnB4ICsgdmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkpfS55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWJpZy1tb2RlLnl0cC1zaG9wcGluZy1waWxsLXNob3duIC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YXtib3R0b206Y2FsYyg4NnB4ICsgdmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkpfS55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWJpZy1tb2RlLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAzMHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEtYm90dG9tLnl0cC1iaWctbW9kZS55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWZlYXR1cmVkLXByb2R1Y3Qtc2hvd24gLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhe2JvdHRvbTpjYWxjKDE0MnB4ICsgdmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyB2YXIoLS15dHAtZ3JpZC1wZWVrLWhlaWdodCkpfS55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWJpZy1tb2RlLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtc2hvcHBpbmctcGlsbC1zaG93biAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGF7Ym90dG9tOmNhbGMoODZweCArIHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLWNocm9tZS10b3AtYnV0dG9uc3t3aWR0aDoxMDAlO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6ZW5kOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEsLnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnN7cG9zaXRpb246cmVsYXRpdmU7aW5zZXQ6MDt6LWluZGV4OjU5Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtY2hyb21lLXRvcC1idXR0b25ze3Bvc2l0aW9uOnJlbGF0aXZlO2luc2V0OjA7ei1pbmRleDo1OH0qIC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YSwqIC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25zLC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20gLnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20gLnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnMsLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLWJvdHRvbS55dHAtYmlnLW1vZGUgLnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWJpZy1tb2RlIC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25ze3Bvc2l0aW9uOnJlbGF0aXZlO2luc2V0OjB9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLW92ZXJsYXlzLWNvbnRhaW5lcntvcGFjaXR5Om1heCgxIC0gMyAqIHZhcigtLXl0cC1ncmlkLXNjcm9sbC1wZXJjZW50YWdlKSwwKX0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLnl0cC1vdmVybGF5cy1jb250YWluZXJ7b3BhY2l0eTowO2Rpc3BsYXk6bm9uZX0ueXRwLWF1dG9oaWRlIC55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YSwueXRwLWF1dG9oaWRlIC55dHAtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25ze29wYWNpdHk6MH0ueXRwLWF1dG9oaWRlOm5vdCgueXRwLWF1dG9oaWRlLWFjdGl2ZSkgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLC55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKSAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9uc3toZWlnaHQ6MDttYXJnaW46MH0uYWQtc2hvd2luZyAueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEsLmFkLXNob3dpbmcgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnMsLmVuZGVkLW1vZGUgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnMsLnNlZWtpbmctbW9kZSAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9ucywueXRwLW1lbnUtc2hvd24gLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLC55dHAtbWVudS1zaG93biAueXRwLWZ1bGxzY3JlZW4tcXVpY2stYWN0aW9ucywueXRwLXNldHRpbmdzLXNob3duIC55dHAtZnVsbHNjcmVlbi1xdWljay1hY3Rpb25zLC55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLC55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1mdWxsc2NyZWVuLXF1aWNrLWFjdGlvbnN7ZGlzcGxheTpub25lfS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5e3otaW5kZXg6ODI7b3ZlcmZsb3c6aGlkZGVufS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJhY2tncm91bmR7YmFja2dyb3VuZDpuby1yZXBlYXQgNTAlL2NvdmVyO2JhY2tncm91bmQtY29sb3I6IzAwMDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjgyfS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJhY2tncm91bmQtb3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjMpO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7dG9wOjA7bGVmdDowO3otaW5kZXg6ODJ9Lnl0cC1nYXRlZC1hY3Rpb25zLW92ZXJsYXktbWluaXBsYXllci1jbG9zZS1idXR0b257ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7d2lkdGg6NDBweDtoZWlnaHQ6NDBweDtwYWRkaW5nOjhweDt6LWluZGV4OjgyfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS1taW5pcGxheWVyLWNsb3NlLWJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS1iYXJ7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjAgNnB4O2xlZnQ6MjBweDtoZWlnaHQ6NTZweDtib3R0b206MjBweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7dGV4dC1hbGlnbjpsZWZ0O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7Ym9yZGVyLXJhZGl1czo4cHg7Y29sb3I6I2ZmZjt3aWR0aDozODBweDt6LWluZGV4OjgyfS55dHAtYmlnLW1vZGUgLnl0cC1nYXRlZC1hY3Rpb25zLW92ZXJsYXktYmFye3BhZGRpbmc6MCA5cHg7aGVpZ2h0Ojg0cHg7Ym90dG9tOjMwcHg7bGVmdDozMHB4fS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJ1dHRvbnN7bWFyZ2luOjEycHggNnB4fS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJ1dHRvbnttaW4td2lkdGg6ODBweDtoZWlnaHQ6MzJweDtwYWRkaW5nOjAgOHB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMSk7Ym9yZGVyLXJhZGl1czoyNHB4O2JvcmRlci13aWR0aDowO2N1cnNvcjpwb2ludGVyfS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJ1dHRvbi10aXRsZXtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7bWFyZ2luOjAgOHB4O2xpbmUtaGVpZ2h0OjMycHg7Zm9udC1zaXplOjExMCU7Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOiNmZmZ9Lnl0cC1iaWctbW9kZSAueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS1idXR0b25ze21hcmdpbjoxOHB4IDlweH0ueXRwLWJpZy1tb2RlIC55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LWJ1dHRvbnttaW4td2lkdGg6MTIwcHg7aGVpZ2h0OjQ4cHg7cGFkZGluZzowIDEycHg7Ym9yZGVyLXJhZGl1czozcHh9Lnl0cC1iaWctbW9kZSAueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS1idXR0b24tdGl0bGV7bWFyZ2luOjAgMTJweDtsaW5lLWhlaWdodDo0OHB4O2ZvbnQtc2l6ZToxMzAlO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS10ZXh0LWNvbnRhaW5lcnstd2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4OjE7ZmxleDoxO21pbi13aWR0aDoxODBweDttYXJnaW46MCA2cHh9Lnl0cC1iaWctbW9kZSAueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS10ZXh0LWNvbnRhaW5lcnttaW4td2lkdGg6MjcwcHg7bWFyZ2luOjAgOXB4fS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LXN1YnRpdGxlLC55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LXRpdGxle3RleHQtdHJhbnNmb3JtOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtZ2F0ZWQtYWN0aW9ucy1vdmVybGF5LXRpdGxle2ZvbnQtc2l6ZToxNTAlO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLWdhdGVkLWFjdGlvbnMtb3ZlcmxheS1zdWJ0aXRsZXtmb250LXNpemU6MTEwJTtmb250LXdlaWdodDo0MDA7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNyl9Lnl0cC1oZWF0LW1hcC55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlOm5vdCguYWQtc2hvd2luZykgLnl0cC1oZWF0LW1hcC1jb250YWluZXIsLnl0cC1oZWF0LW1hcC55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyOm5vdCguYWQtc2hvd2luZykgLnl0cC1oZWF0LW1hcC1jb250YWluZXJ7ZGlzcGxheTpibG9jaztvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO2hlaWdodDo0MHB4O2JvdHRvbTo1cHg7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWhlYXQtbWFwLWNvbnRhaW5lcntwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDtkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206MH0ueXRwLWRlbGhpLW1vZGVybi55dHAtaGVhdC1tYXAueXRwLWZpbmUtc2NydWJiaW5nLWVuYWJsZTpub3QoLmFkLXNob3dpbmcpIC55dHAtaGVhdC1tYXAtY29udGFpbmVyLC55dHAtZGVsaGktbW9kZXJuLnl0cC1oZWF0LW1hcC55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyOm5vdCguYWQtc2hvd2luZykgLnl0cC1oZWF0LW1hcC1jb250YWluZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpIC4xcyxtYXJnaW4tYm90dG9tIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAuMXM7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSAuMXMsbWFyZ2luLWJvdHRvbSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSkgLjFzO21hcmdpbi1ib3R0b206OHB4fS55dHAtaGVhdC1tYXAueXRwLXByb2dyZXNzLWJhci1ob3Zlcjpub3QoLmFkLXNob3dpbmcpIC55dHAtdGltZWQtbWFya2Vycy1lbmFibGVkIC55dHAtaGVhdC1tYXAtY29udGFpbmVye2JvdHRvbTo3cHh9Lnl0cC1oZWF0LW1hcC55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtaGVhdC1tYXAtY2hhcHRlciBzdmd7aGVpZ2h0OjQwcHh9Lnl0cC1iaWctbW9kZS55dHAtaGVhdC1tYXAueXRwLXByb2dyZXNzLWJhci1ob3ZlciAueXRwLWhlYXQtbWFwLWNoYXB0ZXIgc3Zne2hlaWdodDo2MHB4fS55dHAtaGVhdC1tYXAtY29udGFpbmVye29wYWNpdHk6MDtkaXNwbGF5Om5vbmU7d2lkdGg6MTAwJTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllciguNCwwLDEsMSk7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVuO2hlaWdodDowO2JvdHRvbTo1cHg7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLWhlYXQtbWFwLnl0cC1iaWctbW9kZS55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtaGVhdC1tYXAtY29udGFpbmVye2hlaWdodDo2MHB4O2JvdHRvbTo4cHg7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWhlYXQtbWFwLWNoYXB0ZXJ7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRwLWhlYXQtbWFwLWNoYXB0ZXIueXRwLWhlYXRtYXAtaG92ZXJ7Ym90dG9tOjJweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtaGVhdC1tYXAtY2hhcHRlci55dHAtaGVhdG1hcC1ob3Zlcnstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1iaWctbW9kZSAueXRwLWhlYXQtbWFwLWNoYXB0ZXIueXRwLWhlYXRtYXAtaG92ZXJ7Ym90dG9tOjNweH0ueXRwLWhlYXQtbWFwLXBsYXllZF9iYXIgLnl0cC1oZWF0LW1hcC1ob3ZlcntoZWlnaHQ6MTAwJTtmaWxsOnJnYmEoMjU1LDI1NSwyNTUsLjUpfS55dHAtaGVhdC1tYXAtaG92ZXIsLnl0cC1oZWF0LW1hcC1wbGF5e2hlaWdodDowfS55dHAtaGVhdC1tYXAtZWR1e2Rpc3BsYXk6bm9uZX0ueXRwLWZpbmUtc2NydWJiaW5nLWNvbnRhaW5lcnt3aWR0aDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2hlaWdodDowfS55dHAtZmluZS1zY3J1YmJpbmctdGh1bWJuYWlse2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0b30ueXRwLWZpbmUtc2NydWJiaW5nLWRyYWdnYWJsZSwueXRwLWZpbmUtc2NydWJiaW5nLXRodW1ibmFpbHN7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO21pbi13aWR0aDoxNjBweDtoZWlnaHQ6MTAwJX0ueXRwLWZpbmUtc2NydWJiaW5nLWN1cnNvcntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTtoZWlnaHQ6MTAwJTt3aWR0aDozcHg7YmFja2dyb3VuZDojZWVlfS55dHAtZmluZS1zY3J1YmJpbmctc2Vlay10aW1le3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToxMTAlO2xlZnQ6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO2Rpc3BsYXk6bm9uZX0ueXRwLWZpbmUtc2NydWJiaW5nLWVuYWJsZSAueXRwLWZpbmUtc2NydWJiaW5nLWRpc21pc3MsLnl0cC1maW5lLXNjcnViYmluZy1lbmFibGUgLnl0cC1maW5lLXNjcnViYmluZy1wbGF5LC55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlIC55dHAtZmluZS1zY3J1YmJpbmctc2Vlay10aW1le2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlIC55dHAtY2hyb21lLWNvbnRyb2xze2Rpc3BsYXk6bm9uZX0ueXRwLWZpbmUtc2NydWJiaW5nLXBsYXl7ZGlzcGxheTpub25lO2hlaWdodDozNXB4O3dpZHRoOjM1cHg7Ym90dG9tOjExMCU7cG9zaXRpb246YWJzb2x1dGV9Lnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMgLnl0cC1maW5lLXNjcnViYmluZy1wbGF5e2JvdHRvbToxMjAlfS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtZmluZS1zY3J1YmJpbmctcGxheSBzdmd7cGFkZGluZzo4cHh9Lnl0cC1maW5lLXNjcnViYmluZy1kaXNtaXNze3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToxMTUlO3JpZ2h0OjEwcHg7aGVpZ2h0OjI1cHg7d2lkdGg6MjVweDtkaXNwbGF5Om5vbmV9Lnl0cC1maW5lLXNjcnViYmluZy1jaGFwdGVyLXRpdGxle2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4O3dpZHRoOjE2MHB4O2hlaWdodDo5MHB4O2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjcwMDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dvcmQtd3JhcDpicmVhay13b3JkOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0cC1maW5lLXNjcnViYmluZy1jaGFwdGVyLXRpdGxlLWNvbnRlbnR7cGFkZGluZzoxNXB4O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWJpZy1tb2RlIC55dHAtZmluZS1zY3J1YmJpbmctY2hhcHRlci10aXRsZXt3aWR0aDoyNDBweDtoZWlnaHQ6MTM1cHh9Lnl0cC1maW5lLXNjcnViYmluZy1lZHV7ZGlzcGxheTpub25lfS55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlLmh0bWw1LXZpZGVvLXBsYXllciAueXRwLWFkLW92ZXJsYXktc2xvdHtib3R0b206MTA3cHh9Lnl0cC1iaWctbW9kZS55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlLmh0bWw1LXZpZGVvLXBsYXllciAueXRwLWFkLW92ZXJsYXktc2xvdHtib3R0b206MTUxcHh9Lnl0cC1pbmZvLXBhbmVsLWFjdGlvbi1pdGVte2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjE2cHggMCAwIDE2cHg7d2lkdGg6YXV0bztkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1hbGlnbi1pdGVtczpmbGV4LXN0YXJ0Oy13ZWJraXQtYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lnl0cC1iaWctbW9kZSAueXRwLWluZm8tcGFuZWwtYWN0aW9uLWl0ZW17bWFyZ2luOjI0cHggMCAwIDI0cHg7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYWxpZ24taXRlbXM6ZmxleC1zdGFydDstd2Via2l0LWJveC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS55dHAtc21hbGwtbW9kZSAueXRwLWluZm8tcGFuZWwtYWN0aW9uLWl0ZW17bWFyZ2luOjhweCAxMnB4IDAgMCAwIDhweCAxMnB4IDA7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYWxpZ24taXRlbXM6ZmxleC1zdGFydDstd2Via2l0LWJveC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS55dHAtaW5mby1wYW5lbC1hY3Rpb24taXRlbS1kaXNjbGFpbWVye2N1cnNvcjpub25lO2ZvbnQtc2l6ZToxNHB4O292ZXJmbG93OmF1dG87bWFyZ2luLWJvdHRvbToxNnB4fS55dHAtaW5mby1wYW5lbC1hY3Rpb24taXRlbS1idXR0b257d2lkdGg6MTAwJTtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHAtaW5mby1wYW5lbC1hY3Rpb24taXRlbS1pY29ue3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTstd2Via2l0LWZsZXgtc2hyaW5rOjA7ZmxleC1zaHJpbms6MH0ueXRwLWJpZy1tb2RlIC55dHAtaW5mby1wYW5lbC1hY3Rpb24taXRlbS1pY29ue3dpZHRoOjcycHg7aGVpZ2h0OjU0cHh9Lnl0cC1pbmZvLXBhbmVsLWFjdGlvbi1pdGVtLWxhYmVse21hcmdpbi1sZWZ0OjEycHg7Zm9udC1zaXplOjE0cHg7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtvdmVyZmxvdzphdXRvfS55dHAtYmlnLW1vZGUgLnl0cC1pbmZvLXBhbmVsLWFjdGlvbi1pdGVtLWxhYmVsLC55dHAtc21hbGwtbW9kZSAueXRwLWluZm8tcGFuZWwtYWN0aW9uLWl0ZW0tbGFiZWx7bWFyZ2luLWxlZnQ6MTJweDtmb250LXNpemU6MTRweDtvdmVyZmxvdzphdXRvfS55dHAtaW5mby1wYW5lbC1kZXRhaWwtc2tyaW17cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4zKTt6LWluZGV4OjcxfS55dHAtaW5mby1wYW5lbC1kZXRhaWx7cG9zaXRpb246YWJzb2x1dGU7bGVmdDphdXRvO3JpZ2h0OjA7dG9wOjA7Ym90dG9tOjA7d2lkdGg6NjAlO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7b3ZlcmZsb3c6YXV0bztkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtYmlnLW1vZGUgLnl0cC1pbmZvLXBhbmVsLWRldGFpbCwueXRwLXNtYWxsLW1vZGUgLnl0cC1pbmZvLXBhbmVsLWRldGFpbHt3aWR0aDo2MCV9W2Rpcj1sdHJdIC55dHAtaW5mby1wYW5lbC1kZXRhaWxbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfVtkaXI9bHRyXSAueXRwLWVtYmVkLXBsYXlsaXN0IC55dHAtaW5mby1wYW5lbC1kZXRhaWxbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSl9W2Rpcj1ydGxdIC55dHAtaW5mby1wYW5lbC1kZXRhaWxbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfVtkaXI9cnRsXSAueXRwLWVtYmVkLXBsYXlsaXN0IC55dHAtaW5mby1wYW5lbC1kZXRhaWxbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9Lnl0cC1pbmZvLXBhbmVsLWRldGFpbC1oZWFkZXJ7bWFyZ2luOjE2cHg7bGluZS1oZWlnaHQ6MjRweDtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo3MDA7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHAtYmlnLW1vZGUgLnl0cC1pbmZvLXBhbmVsLWRldGFpbC1oZWFkZXJ7bWFyZ2luOjI0cHh9Lnl0cC1pbmZvLXBhbmVsLWRldGFpbC10aXRsZXttYXJnaW4tcmlnaHQ6MTRweDstd2Via2l0LWZsZXgtZ3JvdzoyOy13ZWJraXQtYm94LWZsZXg6MjtmbGV4LWdyb3c6Mn0ueXRwLWluZm8tcGFuZWwtZGV0YWlsLWNsb3Nle3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KTstd2Via2l0LWZsZXgtc2hyaW5rOjA7ZmxleC1zaHJpbms6MH0ueXRwLWJpZy1tb2RlIC55dHAtaW5mby1wYW5lbC1kZXRhaWwtY2xvc2V7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLWluZm8tcGFuZWwtZGV0YWlsLWNsb3NlIHBhdGh7ZmlsbDojYWFhfS55dHAtaW5mby1wYW5lbC1kZXRhaWwtY2xvc2U6aG92ZXIgcGF0aHtmaWxsOiNmZmZ9Lnl0cC1pbmZvLXBhbmVsLWRldGFpbC1ib2R5e2xpbmUtaGVpZ2h0OjI0cHg7bWluLWhlaWdodDo0OHB4O2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO21hcmdpbjowIDE2cHg7b3ZlcmZsb3c6YXV0b30ueXRwLWJpZy1tb2RlIC55dHAtaW5mby1wYW5lbC1kZXRhaWwtYm9keXttYXJnaW46MCAyNHB4fS55dHAtaW5mby1wYW5lbC1kZXRhaWwtaXRlbXN7bGVmdDowO3JpZ2h0OjA7cGFkZGluZzowIDE2cHggMTZweCAwfS55dHAtbXV0ZWQtYXV0b3BsYXkgLnl0cC1pbmZvLXBhbmVsLWRldGFpbC1za3JpbXt6LWluZGV4OjEwMDJ9Lmh0bWw1LXZpZGVvLXBsYXllci5lbmRlZC1tb2RlIC55dHAtaW5mby1wYW5lbC1wcmV2aWV3e2Rpc3BsYXk6bm9uZX0ueXRwLWluZm8tcGFuZWwtcHJldmlld3toZWlnaHQ6YXV0bztib3R0b206YXV0bztsZWZ0OjEycHg7cmlnaHQ6YXV0bztvdmVyZmxvdzpoaWRkZW47cG9pbnRlci1ldmVudHM6YXV0bztwb3NpdGlvbjphYnNvbHV0ZTtjdXJzb3I6cG9pbnRlcjt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpO3otaW5kZXg6MjY7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpO2JvcmRlcjppbmhlcml0O2JvcmRlci1sZWZ0OjRweCBzb2xpZCAjM2VhNmZmO2JvcmRlci1yYWRpdXM6NHB4O3BhZGRpbmc6MDtmb250OmluaGVyaXQ7bWF4LXdpZHRoOm1pbig1MCUgLSA2NHB4LDI3MnB4KTtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWluZm8tcGFuZWwtcHJldmlld1thcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZW1iZWQgLnl0cC1pbmZvLXBhbmVsLXByZXZpZXd7dG9wOjYwcHh9Lnl0cC1lbWJlZC55dHAtc2hvcnRzLW1vZGUgLnl0cC1pbmZvLXBhbmVsLXByZXZpZXd7dG9wOjEyMnB4fS55dHAtYmlnLW1vZGUueXRwLWF1dG9oaWRlIC55dHAtaW5mby1wYW5lbC1wcmV2aWV3LC55dHAtYmlnLW1vZGUueXRwLWhpZGUtaW5mby1iYXIgLnl0cC1pbmZvLXBhbmVsLXByZXZpZXcsLnl0cC1lbWJlZC55dHAtYXV0b2hpZGUgLnl0cC1pbmZvLXBhbmVsLXByZXZpZXcsLnl0cC1lbWJlZC55dHAtaGlkZS1pbmZvLWJhciAueXRwLWluZm8tcGFuZWwtcHJldmlld3t0b3A6MTJweH0ueXRwLW11dGVkLWF1dG9wbGF5IC55dHAtaW5mby1wYW5lbC1wcmV2aWV3e3otaW5kZXg6MTAwMjt0b3A6MTJweH0ueXRwLWxhcmdlci10YXAtYnV0dG9ucyAueXRwLWluZm8tcGFuZWwtcHJldmlld3t0b3A6ODFweH0ueXRwLWJpZy1tb2RlIC55dHAtaW5mby1wYW5lbC1wcmV2aWV3e3RvcDo4MXB4O2JvdHRvbTphdXRvO2xlZnQ6MjRweDtoZWlnaHQ6YXV0bztsaW5lLWhlaWdodDphdXRvfS55dHAtc21hbGwtbW9kZSAueXRwLWluZm8tcGFuZWwtcHJldmlld3ttaW4td2lkdGg6MTMwcHg7bWF4LXdpZHRoOm1pbig1MCUgLSA2NHB4LDIwOHB4KX0ueXRwLWl2LWRyYXdlci1vcGVuIC55dHAtaW5mby1wYW5lbC1wcmV2aWV3e2Rpc3BsYXk6bm9uZTstd2Via2l0LXRyYW5zaXRpb246ZGlzcGxheSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmRpc3BsYXkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1pbmZvLXBhbmVsLXByZXZpZXctY2hldnJvbnt3aWR0aDoyNHB4O2hlaWdodDoyNHB4O2xpbmUtaGVpZ2h0OjBweDtwb2ludGVyLWV2ZW50czpub25lO2NvbG9yOnJnYigyNTUsMjU1LDI1NSk7LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjB9Lnl0cC1pbmZvLXBhbmVsLXByZXZpZXctY2hldnJvbjplbXB0eSwueXRwLWluZm8tcGFuZWwtcHJldmlldy1pY29uOmVtcHR5e2hlaWdodDowO3dpZHRoOjB9Lnl0cC1pbmZvLXBhbmVsLXByZXZpZXctdGV4dHtiYWNrZ3JvdW5kOm5vbmU7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE2cHg7cG9pbnRlci1ldmVudHM6bm9uZTttYXJnaW46OHB4O2NvbG9yOnJnYigyNTUsMjU1LDI1NSk7b3BhY2l0eToxO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7LXdlYmtpdC1saW5lLWNsYW1wOjI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3doaXRlLXNwYWNlOm5vcm1hbDtkaXNwbGF5Oi13ZWJraXQtYm94O292ZXJmbG93OmhpZGRlbjstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWluZm8tcGFuZWwtcHJldmlldy10ZXh0W2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9I2lubGluZS1wcmV2aWV3LXBsYXllciAuY2FwdGlvbi13aW5kb3csI2lubGluZS1wcmV2aWV3LXBsYXllciAueXRwLWNhcHRpb24td2luZG93LWNvbnRhaW5lcntwb2ludGVyLWV2ZW50czpub25lfS55dHAtbW9kZXJuLWNhcHRpb24jaW5saW5lLXByZXZpZXctcGxheWVyIC55dHAtY2FwdGlvbi13aW5kb3ctY29udGFpbmVyLC55dHAtbW9kZXJuLWNhcHRpb24ueXRwLW13ZWItcGxheWVyIC55dHAtY2FwdGlvbi13aW5kb3ctY29udGFpbmVye3dpZHRoOmNhbGMoMTAwJSAtIDQ4cHgpfS55dHAtbW9kZXJuLWNhcHRpb24jaW5saW5lLXByZXZpZXctcGxheWVyIC5jYXB0aW9uLXdpbmRvdywueXRwLW1vZGVybi1jYXB0aW9uLnl0cC1td2ViLXBsYXllciAuY2FwdGlvbi13aW5kb3d7Ym9yZGVyOjhweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjRweDtmb250LXdlaWdodDo1MDB9Lnl0cC1tb2Rlcm4tY2FwdGlvbiNpbmxpbmUtcHJldmlldy1wbGF5ZXIgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b20sLnl0cC1tb2Rlcm4tY2FwdGlvbi55dHAtbXdlYi1wbGF5ZXIgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToxNnB4fS55dHAtaW5wdXQtc2xpZGVyLXNlY3Rpb257ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0cC1pbnB1dC1zbGlkZXJ7LS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudDowOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtsZWZ0OjA7cmlnaHQ6MDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MjRweDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Oy13ZWJraXQtd3JpdGluZy1tb2RlOmhvcml6b250YWwtdGI7LW1zLXdyaXRpbmctbW9kZTpsci10Yjt3cml0aW5nLW1vZGU6aG9yaXpvbnRhbC10YjtkaXJlY3Rpb246bHRyfS55dHAtaW5wdXQtc2xpZGVyOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFja3tiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLHJpZ2h0IHRvcCxmcm9tKCNmZmYpLGNvbG9yLXN0b3AoI2ZmZiksY29sb3Itc3RvcCgjNjY2KSx0bygjNjY2KSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCNmZmYgMCwjZmZmIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IDEwMCUpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCNmZmYgMCwjZmZmIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IDEwMCUpO2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoxMnB4fS55dHAtaW5wdXQtc2xpZGVyOjotbW96LXJhbmdlLXRyYWNre2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCNmZmYgMCwjZmZmIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSxyZ2JhKDI1NSwyNTUsMjU1LC4yKSB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCkscmdiYSgyNTUsMjU1LDI1NSwuMikgMTAwJSk7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1pbnB1dC1zbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXRodW1iey13ZWJraXQtYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kOiNmZmY7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjhweDttYXJnaW4tdG9wOi02cHh9Lnl0cC1pbnB1dC1zbGlkZXI6Oi1tb3otcmFuZ2UtdGh1bWJ7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQ6I2ZmZjt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JvcmRlci1yYWRpdXM6OHB4fS55dHAtaW5wdXQtc2xpZGVyOjotbXMtdGh1bWJ7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQ6I2ZmZjt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JvcmRlci1yYWRpdXM6OHB4fS55dHAtdmFyaXNwZWVkLWlucHV0LXNsaWRlcjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxyaWdodCB0b3AsZnJvbSgjZmZmKSxjb2xvci1zdG9wKCNmZmYpLGNvbG9yLXN0b3AoIzkwOTA5MCksdG8oIzkwOTA5MCkpO2JhY2tncm91bmQ6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwjZmZmIDAsI2ZmZiB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCAxMDAlKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjZmZmIDAsI2ZmZiB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCAxMDAlKX1Ac3VwcG9ydHMgKCgtd2Via2l0LXdyaXRpbmctbW9kZTp2ZXJ0aWNhbC1ybCkgb3IgKHdyaXRpbmctbW9kZTp2ZXJ0aWNhbC1ybCkpey55dHAtdmVydGljYWwtc2xpZGVyIC55dHAtaW5wdXQtc2xpZGVyey13ZWJraXQtd3JpdGluZy1tb2RlOnZlcnRpY2FsLXJsOy1tcy13cml0aW5nLW1vZGU6YnQtcmw7d3JpdGluZy1tb2RlOnZlcnRpY2FsLXJsO2RpcmVjdGlvbjpydGw7aGVpZ2h0OmluaGVyaXQ7d2lkdGg6MjRweH0ueXRwLXZlcnRpY2FsLXNsaWRlciAueXRwLWlucHV0LXNsaWRlcjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKCNmZmYpLGNvbG9yLXN0b3AoI2ZmZiksY29sb3Itc3RvcCgjNjY2KSx0bygjNjY2KSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20sI2ZmZiAwLCNmZmYgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM2NjYgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM2NjYgMTAwJSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gdG9wLCNmZmYgMCwjZmZmIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjNjY2IDEwMCUpO3dpZHRoOjRweH0ueXRwLXZlcnRpY2FsLXNsaWRlciAueXRwLWlucHV0LXNsaWRlcjo6LW1vei1yYW5nZS10cmFja3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byB0b3AsI2ZmZiAwLCNmZmYgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLHJnYmEoMjU1LDI1NSwyNTUsLjIpIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSxyZ2JhKDI1NSwyNTUsMjU1LC4yKSAxMDAlKTt3aWR0aDo0cHg7aGVpZ2h0OjEwMCV9Lnl0cC12ZXJ0aWNhbC1zbGlkZXIgLnl0cC1pbnB1dC1zbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXRodW1ie21hcmdpbi1yaWdodDotNnB4fS55dHAtdmVydGljYWwtc2xpZGVyIC55dHAtaW5wdXQtc2xpZGVyOjotbW96LXJhbmdlLXRodW1ie21hcmdpbi1yaWdodDowfX0ueXRwLWNocm9tZS1jb250cm9scyAueXRwLWp1bXAtYnV0dG9ue3dpZHRoOjQ2cHg7LXdlYmtpdC1ib3gtZmxleDowOy13ZWJraXQtZmxleDowIDAgYXV0bztmbGV4OjAgMCBhdXRvO3BhZGRpbmc6OXB4O2Rpc3BsYXk6bm9uZX0ueXRwLWNocm9tZS1jb250cm9scyAueXRwLWp1bXAtYnV0dG9uLnl0cC1qdW1wLWJ1dHRvbi1lbmFibGVke2Rpc3BsYXk6YmxvY2t9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWp1bXAtYnV0dG9ue3BhZGRpbmctdG9wOjEycHh9Lnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtanVtcC1idXR0b257cGFkZGluZy10b3A6N3B4fS55dHAtc21hbGwtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWp1bXAtYnV0dG9uLnl0cC1qdW1wLWJ1dHRvbi1lbmFibGVkLC55dHAtdGlueS1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtanVtcC1idXR0b24ueXRwLWp1bXAtYnV0dG9uLWVuYWJsZWR7ZGlzcGxheTpub25lfS55dHAtanVtcC1idXR0b24tdGV4dHtmaWxsOiNmZmY7Zm9udC1zaXplOjlweDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7Zm9udC13ZWlnaHQ6OTAwfS55dHAtanVtcC1zcGluIC55dHAtY2lyY2xlLWFycm93ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6eXRwLWp1bXAtc3BpbjthbmltYXRpb24tbmFtZTp5dHAtanVtcC1zcGluOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOi4yNXM7YW5pbWF0aW9uLWR1cmF0aW9uOi4yNXM7LXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0O2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbi1vdXQ7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjstbXMtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXJ9Lnl0cC1qdW1wLXNwaW4uYmFja3dhcmRzIC55dHAtY2lyY2xlLWFycm93ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6eXRwLWp1bXAtc3Bpbi1iYWNrd2FyZHM7YW5pbWF0aW9uLW5hbWU6eXRwLWp1bXAtc3Bpbi1iYWNrd2FyZHN9QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1qdW1wLXNwaW57MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDF0dXJuKTt0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19QGtleWZyYW1lcyB5dHAtanVtcC1zcGluezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxdHVybik7dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtanVtcC1zcGluLWJhY2t3YXJkc3swJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMXR1cm4pO3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfX1Aa2V5ZnJhbWVzIHl0cC1qdW1wLXNwaW4tYmFja3dhcmRzezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxdHVybik7dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9fS55dHAtbGFyZ2UtcGxheS1idXR0b257cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7dG9wOjUwJTt3aWR0aDo2OHB4O2hlaWdodDo0OHB4O21hcmdpbi1sZWZ0Oi0zNHB4O21hcmdpbi10b3A6LTI0cHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7ei1pbmRleDo2M30ueXRwLWxhcmdlLXBsYXktYnV0dG9uLnl0cC1zaG9ydHMtbW9kZXt3aWR0aDo2OHB4O2hlaWdodDo5MHB4fS55dHAtYmlnLW1vZGUgLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbi55dHAtc2hvcnRzLW1vZGV7d2lkdGg6MTAycHg7aGVpZ2h0OjEzNXB4fS55dHAtZG5pIC55dHAtbGFyZ2UtcGxheS1idXR0b24sLnl0cC1kbmkueXRwLWJpZy1tb2RlIC55dHAtbGFyZ2UtcGxheS1idXR0b24sLnl0cC1kbmkueXRwLXNtYWxsLW1vZGUgLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbnt3aWR0aDo3NXB4O2hlaWdodDo3NXB4O21hcmdpbi1sZWZ0Oi0zNy41cHg7bWFyZ2luLXRvcDotMzcuNXB4fS5ob3VzZS1icmFuZCAueXRwLWxhcmdlLXBsYXktYnV0dG9ue3dpZHRoOjYwcHg7aGVpZ2h0OjYwcHg7bWFyZ2luLWxlZnQ6LTMwcHg7bWFyZ2luLXRvcDotMzBweH0ueXRwLWxhcmdlLXBsYXktYnV0dG9uIHN2Z3toZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJX0ueXRwLWRuaSAueXRwLWN1ZWQtdGh1bWJuYWlsLW92ZXJsYXkgLnl0cC1kbmktbGFyZ2UtcGxheS1idXR0b24tYmd7LXdlYmtpdC10cmFuc2l0aW9uOmZpbGwgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksZmlsbC1vcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246ZmlsbCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7ZmlsbC1vcGFjaXR5Oi44fS55dHAtZG5pIC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheTpob3ZlciAueXRwLWRuaS1sYXJnZS1wbGF5LWJ1dHRvbi1iZ3std2Via2l0LXRyYW5zaXRpb246ZmlsbCAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpmaWxsIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLGZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtmaWxsLW9wYWNpdHk6MX0ueXRwLWJpZy1tb2RlIC55dHAtbGFyZ2UtcGxheS1idXR0b257d2lkdGg6MTAycHg7aGVpZ2h0OjcycHg7bWFyZ2luLWxlZnQ6LTUxcHg7bWFyZ2luLXRvcDotMzZweH0uaG91c2UtYnJhbmQueXRwLWJpZy1tb2RlIC55dHAtbGFyZ2UtcGxheS1idXR0b257d2lkdGg6OTBweDtoZWlnaHQ6OTBweDttYXJnaW4tbGVmdDotNDVweDttYXJnaW4tdG9wOi00NXB4fS55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheVthcmlhLWhpZGRlbj10cnVlXSAueXRwLWxhcmdlLXBsYXktYnV0dG9uLC55dHAtbWVudS1zaG93biAueXRwLWxhcmdlLXBsYXktYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLW11dGVkLWF1dG9wbGF5LWVuZC1wYW5lbCAueXRwLWxhcmdlLXBsYXktYnV0dG9ue2Rpc3BsYXk6YmxvY2t9Lnl0cC1sYXJnZS1wbGF5LWJ1dHRvbi1iZ3std2Via2l0LXRyYW5zaXRpb246ZmlsbCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpmaWxsIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLGZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTtmaWxsOiMyMTIxMjE7ZmlsbC1vcGFjaXR5Oi44fS55dHAtbGFyZ2UtcGxheS1idXR0b24tcmVkLWJnIC55dHAtbGFyZ2UtcGxheS1idXR0b24tYmd7ZmlsbDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLXN0YXRpYy1icmFuZC1yZWQsI2YwMyk7ZmlsbC1vcGFjaXR5OjF9Lnl0cC1jdWVkLXRodW1ibmFpbC1vdmVybGF5OmhvdmVyIC55dHAtbGFyZ2UtcGxheS1idXR0b24tYmcsLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbi55dHAtdG91Y2gtZGV2aWNlIC55dHAtbGFyZ2UtcGxheS1idXR0b24tYmcsLnl0cC1tdXRlZC1hdXRvcGxheS1lbmRzY3JlZW4tb3ZlcmxheTpob3ZlciAueXRwLWxhcmdlLXBsYXktYnV0dG9uLWJney13ZWJraXQtdHJhbnNpdGlvbjpmaWxsIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLGZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmZpbGwgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksZmlsbC1vcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO2ZpbGw6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1zdGF0aWMtYnJhbmQtcmVkLCNmMDMpO2ZpbGwtb3BhY2l0eToxfS55dHAtY29sb3ItcGFydHkgLnl0cC1jdWVkLXRodW1ibmFpbC1vdmVybGF5OmhvdmVyIC55dHAtbGFyZ2UtcGxheS1idXR0b24tYmcsLnl0cC1jb2xvci1wYXJ0eSAueXRwLWxhcmdlLXBsYXktYnV0dG9uLnl0cC10b3VjaC1kZXZpY2UgLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbi1iZywueXRwLWNvbG9yLXBhcnR5IC55dHAtbXV0ZWQtYXV0b3BsYXktZW5kc2NyZWVuLW92ZXJsYXk6aG92ZXIgLnl0cC1sYXJnZS1wbGF5LWJ1dHRvbi1iZ3std2Via2l0LWFuaW1hdGlvbjp5dHAtcGFydHktZmlsbCAuMTVzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246eXRwLXBhcnR5LWZpbGwgLjE1cyBsaW5lYXIgaW5maW5pdGV9LmhvdXNlLWJyYW5kIC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheTpob3ZlciAueXRwLWxhcmdlLXBsYXktYnV0dG9uLWJnLC5ob3VzZS1icmFuZCAueXRwLW11dGVkLWF1dG9wbGF5LWVuZHNjcmVlbi1vdmVybGF5OmhvdmVyIC55dHAtbGFyZ2UtcGxheS1idXR0b24tYmd7ZmlsbDojMDAwfS55dHAtbGlua2VkLWFjY291bnQtcG9wdXAtY29udGFpbmVye3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH0ueXRwLWxpbmtlZC1hY2NvdW50LXBvcHVwe3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6NzI7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6d2hpdGU7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjIwcHg7Y29sb3I6cmdiYSgxNywxNywxNywuOCk7Zm9udC1mYW1pbHk6WW91VHViZSBOb3RvLFJvYm90byxBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtkaXNwbGF5OmJsb2NrO3dpZHRoOjQwMHB4O292ZXJmbG93LXk6YXV0b31odG1sW2RhcmtdIC55dHAtbGlua2VkLWFjY291bnQtcG9wdXB7YmFja2dyb3VuZDpyZ2JhKDMzLDMzLDMzLC45NSk7Y29sb3I6cmdiKDI1NSwyNTUsMjU1KX0ueXRwLWxpbmtlZC1hY2NvdW50LXBvcHVwLWJ1dHRvbnN7cGFkZGluZzo4cHggOHB4IDhweCAyNHB4O2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYigyMzgsMjM4LDIzOCk7LXdlYmtpdC1ib3gtcGFjazplbmQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtbGlua2VkLWFjY291bnQtcG9wdXAtYnV0dG9ue2ZvbnQtd2VpZ2h0OjUwMDtsZXR0ZXItc3BhY2luZzouMDA3cHg7bGluZS1oZWlnaHQ6MjBweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6IzA2NWZkNDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MTBweCAxNnB4fWh0bWxbZGFya10gLnl0cC1saW5rZWQtYWNjb3VudC1wb3B1cC1idXR0b257Y29sb3I6IzNlYTZmZn0ueXRwLWxpbmtlZC1hY2NvdW50LXBvcHVwLXRpdGxle2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OjI4cHg7bWFyZ2luOjE2cHggMjRweDtjb2xvcjpyZ2IoMywzLDMpfWh0bWxbZGFya10gLnl0cC1saW5rZWQtYWNjb3VudC1wb3B1cC10aXRsZXtjb2xvcjpyZ2IoMjU1LDI1NSwyNTUpfS55dHAtbGlua2VkLWFjY291bnQtcG9wdXAtZGVzY3JpcHRpb257cGFkZGluZzowIDI0cHg7bWFyZ2luOjRweCAwIDI0cHh9Lnl0cC1tZHgtcHJpdmFjeS1wb3B1cC1jb25maXJte2ZvbnQtd2VpZ2h0OjUwMDtmb250LXNpemU6MTRweDttYXJnaW46MTJweCAwO3BhZGRpbmc6MTBweCAyMHB4O2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6IzY2Njt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lnl0cC1tZHgtcHJpdmFjeS1wb3B1cC1jYW5jZWx7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc2l6ZToxNHB4O21hcmdpbjoxMnB4IDA7cGFkZGluZzoxMHB4IDIwcHg7Ym9yZGVyLXJhZGl1czoycHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtbWR4LXBvcHVwLWRpYWxvZ3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4Ojc1O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7dGV4dC1hbGlnbjpjZW50ZXI7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1tZHgtcG9wdXAtZGlhbG9nLWlubmVyLWNvbnRlbnR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTttYXJnaW4tdG9wOi03MHB4O2xlZnQ6MDtyaWdodDowO3BhZGRpbmc6MCAyMCV9Lnl0cC1tZHgtcG9wdXAtdGl0bGV7Zm9udC1zaXplOjIwcHg7cGFkZGluZy1ib3R0b206MTZweH0ueXRwLW1keC1wb3B1cC1kZXNjcmlwdGlvbntmb250LXNpemU6MTRweH0ueXRwLW1keC1wcml2YWN5LXBvcHVwLWJ1dHRvbnN7bWFyZ2luLXRvcDoyMHB4O2hlaWdodDo0NHB4fS55dHAtYmlnLW1vZGUgLm1keC1wcml2YWN5LXBvcHVwLWJ1dHRvbnN7bWFyZ2luLXRvcDozMHB4O2hlaWdodDo2N3B4fS5odG1sNS12aWRlby1wbGF5ZXIueXRwLXBsYXllci1taW5pbWl6ZWQ6bm90KC5lbmRlZC1tb2RlKTpub3QoLmN1ZWQtbW9kZSk6bm90KC51bnN0YXJ0ZWQtbW9kZSl7b3ZlcmZsb3c6dmlzaWJsZX0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC15cGMtcGxheWVyLWNvbnRlbnR7ZGlzcGxheTpub25lfS55dHAtbWluaXBsYXllci11aXtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3otaW5kZXg6Njd9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZXt6LWluZGV4OjY4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2Utd2l0aC1jb250cm9sc3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0zMHB4KTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTMwcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0zMHB4KX0ueXRwLW1pbmlwbGF5ZXItc2NyaW17d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpOy13ZWJraXQtdHJhbnNpdGlvbjouMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgLjFzO3RyYW5zaXRpb246LjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4xcztvcGFjaXR5OjA7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWp1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0cC1taW5pcGxheWVyLXNjcmltOmZvY3VzLXdpdGhpbntvcGFjaXR5OjF9Lmh0bWw1LXZpZGVvLXBsYXllci55dHAtcGxheWVyLW1pbmltaXplZC51bnN0YXJ0ZWQtbW9kZSAueXRwLW1pbmlwbGF5ZXItc2NyaW17b3BhY2l0eToxfS55dHAtbWluaXBsYXllci1zY3JpbTpob3ZlcntvcGFjaXR5OjF9Lnl0cC1taW5pcGxheWVyLWJ1dHRvbnN7ZGlzcGxheTpub25lfS55dHAtcGxheWVyLW1pbmltaXplZC5lbmRlZC1tb2RlIC55dHAtbWluaXBsYXllci1idXR0b25ze2Rpc3BsYXk6YmxvY2t9Lnl0cC1wbGF5ZXItbWluaW1pemVkLmFkLXNob3dpbmcgLnl0cC1taW5pcGxheWVyLWJ1dHRvbnN7ZGlzcGxheTpub25lfS55dHAtbWluaXBsYXllci1jbG9zZS1idXR0b257cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O3BhZGRpbmc6OHB4O3otaW5kZXg6Njd9Lnl0cC1taW5pcGxheWVyLWV4cGFuZC13YXRjaC1wYWdlLWJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O3BhZGRpbmc6OHB4O3otaW5kZXg6Njd9Lnl0cC1taW5pcGxheWVyLWV4cGFuZC13YXRjaC1wYWdlLWJ1dHRvbi55dHAtbWluaXBsYXllci1idXR0b24tYm90dG9tLXJpZ2h0e2JvdHRvbTo0cHg7cmlnaHQ6MH0ueXRwLW1pbmlwbGF5ZXItZXhwYW5kLXdhdGNoLXBhZ2UtYnV0dG9uLnl0cC1taW5pcGxheWVyLWJ1dHRvbi10b3AtbGVmdHt0b3A6MDtsZWZ0OjB9Lnl0cC1taW5pcGxheWVyLXJlcGxheS1idXR0b257cG9zaXRpb246YWJzb2x1dGU7bGVmdDo4cHg7Ym90dG9tOjhweDt3aWR0aDozMnB4O2hlaWdodDozMnB4O3otaW5kZXg6Njd9Lnl0cC1wbGF5ZXItbWluaW1pemVkLmFkLXNob3dpbmcgLnl0cC1taW5pcGxheWVyLXJlcGxheS1idXR0b257ZGlzcGxheTpub25lfS55dHAtbWluaXBsYXllci1jb250cm9sc3tkaXJlY3Rpb246bHRyO2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOjI2NHB4Oy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1qdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjstd2Via2l0LWp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ueXRwLW1pbmlwbGF5ZXItYnV0dG9uLWNvbnRhaW5lcnttaW4td2lkdGg6NjRweH0ueXRwLW1pbmlwbGF5ZXItdWkgLnl0cC1wbGF5LWJ1dHRvbnt3aWR0aDo3MnB4O2hlaWdodDo3MnB4fS55dHAtbWluaXBsYXllci11aSAueXRwLW5leHQtYnV0dG9uLC55dHAtbWluaXBsYXllci11aSAueXRwLXByZXYtYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjY0cHg7aGVpZ2h0OjY0cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1taW5pcGxheWVyLXVpIC55dHAtbmV4dC1idXR0b24sLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1taW5pcGxheWVyLXVpIC55dHAtcHJldi1idXR0b257d2lkdGg6MzJweDtoZWlnaHQ6MzJweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW1pbmlwbGF5ZXItdWkgLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXJ7bWluLXdpZHRoOjMycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1taW5pcGxheWVyLXVpIC55dHAtcGxheS1idXR0b257d2lkdGg6NDJweDtoZWlnaHQ6NDJweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW1pbmlwbGF5ZXItdWkgLnl0cC1taW5pcGxheWVyLWNvbnRyb2xzIHN2Z3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dHAtbWluaXBsYXllci11aSAueXRwLXRpbWUtZGlzcGxheXtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjdweDtib3R0b206MH0ueXRwLW1pbmlwbGF5ZXItdWkgLnl0cC10aW1lLWRpc3BsYXkgLnl0cC1saXZlLWJhZGdle2Rpc3BsYXk6bm9uZTt3aWR0aDphdXRvO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ueXRwLW1pbmlwbGF5ZXItdWkgLnl0cC10aW1lLWRpc3BsYXkueXRwLWxpdmUgLnl0cC1saXZlLWJhZGdle2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtcGxheWVyLW1pbmltaXplZC5hZC1zaG93aW5nIC55dHAtbWluaXBsYXllci11aXtkaXNwbGF5OmJsb2NrfS55dHAtcGxheWVyLW1pbmltaXplZC5hZC1zaG93aW5nIC55dHAtbWluaXBsYXllci11aSAueXRwLW5leHQtYnV0dG9uLC55dHAtcGxheWVyLW1pbmltaXplZC5hZC1zaG93aW5nIC55dHAtbWluaXBsYXllci11aSAueXRwLXByZXYtYnV0dG9uLC55dHAtcGxheWVyLW1pbmltaXplZC5hZC1zaG93aW5nIC55dHAtbWluaXBsYXllci11aSAueXRwLXRpbWUtZGlzcGxheXtkaXNwbGF5Om5vbmV9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtdG9vbHRpcC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLXRpdGxle3dpZHRoOjIwMCU7dGV4dC1hbGlnbjpjZW50ZXI7cmlnaHQ6NDhweH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1kcmFnIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItZWZmZWN0LC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXIgLnl0cC1leHAtY2hhcHRlci1ob3Zlci1jb250YWluZXI6aG92ZXIsLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3ZlciAueXRwLWV4cC1jaGFwdGVyLWhvdmVyLWVmZmVjdHtib3R0b206MXB4Oy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxLjQpOy1tcy10cmFuc2Zvcm06c2NhbGVZKDEuNCk7dHJhbnNmb3JtOnNjYWxlWSgxLjQpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyLC55dHAtc21hbGwtbW9kZS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOi0xcHg7ei1pbmRleDo2OH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC10aW1lLWRpc3BsYXl7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLXBsYXllci1taW5pbWl6ZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXJ7Ym90dG9tOjB9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC52aWRlby1hZHMsLnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1tZW51LXNob3duIC52aWRlby1hZHN7ZGlzcGxheTpibG9ja30ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC1wbGF5ZXItb3ZlcmxheXtvdmVyZmxvdzpoaWRkZW59Lnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1tZW51LXNob3duIC55dHAtYWQtcGxheWVyLW92ZXJsYXktZmx5b3V0LWN0YSwueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC1wcmV2aWV3LWNvbnRhaW5lciwueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLW1lbnUtc2hvd24gLnl0cC1hZC1za2lwLWJ1dHRvbi1jb250YWluZXJ7Ym90dG9tOjMycHh9Lnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1tZW51LXNob3duIC55dHAtYWQtcGxheWVyLW92ZXJsYXktaW5zdHJlYW0taW5mb3tib3R0b206M3B4O2xlZnQ6NnB4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsIC55dHAtdG9vbHRpcC10aXRsZXt0ZXh0LXRyYW5zZm9ybTpjYXBpdGFsaXplO2ZvbnQtc2l6ZToxMnB4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3e21heC13aWR0aDpjYWxjKDEwMCUgLSAyNHB4KTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246cmV2ZXJzZTstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlOy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTstd2Via2l0LWp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dHAtcGxheWVyLW1pbmltaXplZCAuaHRtbDUtbWFpbi12aWRlbywueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1taW5pcGxheWVyLXNjcmlte2JvcmRlci1yYWRpdXM6MTJweCAxMnB4IDAgMH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLmh0bWw1LW1haW4tdmlkZW97Ym9yZGVyLXJhZGl1czowfS55dHAtcGxheWVyLW1pbmltaXplZC55dHAtcGxheWVyLWRvY3VtZW50LXBpY3R1cmUtaW4tcGljdHVyZSAueXRwLW1pbmlwbGF5ZXItY2xvc2UtYnV0dG9uLC55dHAtcGxheWVyLW1pbmltaXplZC55dHAtcGxheWVyLWRvY3VtZW50LXBpY3R1cmUtaW4tcGljdHVyZSAueXRwLW1pbmlwbGF5ZXItZXhwYW5kLXdhdGNoLXBhZ2UtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLXBsYXllci1kb2N1bWVudC1waWN0dXJlLWluLXBpY3R1cmUgLmh0bWw1LW1haW4tdmlkZW8sLnl0cC1wbGF5ZXItbWluaW1pemVkLnl0cC1wbGF5ZXItZG9jdW1lbnQtcGljdHVyZS1pbi1waWN0dXJlIC55dHAtbWluaXBsYXllci1zY3JpbSwueXRwLXBsYXllci1taW5pbWl6ZWQueXRwLXBsYXllci1kb2N1bWVudC1waWN0dXJlLWluLXBpY3R1cmUuaHRtbDUtdmlkZW8tcGxheWVye2JvcmRlci1yYWRpdXM6MH0ueXRwLXRpdGxlLW5vdGlmaWNhdGlvbnN7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjttYXJnaW4tcmlnaHQ6NXB4O3RleHQtYWxpZ246Y2VudGVyfWJ1dHRvbi55dHAtYnV0dG9uLnl0cC10aXRsZS1ub3RpZmljYXRpb25ze21hcmdpbi1sZWZ0OjhweDt3aWR0aDo0OHB4fS55dHAtdGl0bGUtbm90aWZpY2F0aW9uczpub3QoLnl0cC1ub3RpZmljYXRpb25zLWVuYWJsZWQpIC55dHAtdGl0bGUtbm90aWZpY2F0aW9ucy1vbntkaXNwbGF5Om5vbmV9Lnl0cC10aXRsZS1ub3RpZmljYXRpb25zLnl0cC1ub3RpZmljYXRpb25zLWVuYWJsZWQgLnl0cC10aXRsZS1ub3RpZmljYXRpb25zLW9mZntkaXNwbGF5Om5vbmV9Lnl0cC1vZmZsaW5lLXNsYXRle3otaW5kZXg6MjE7b3ZlcmZsb3c6aGlkZGVufS55dHAtb2ZmbGluZS1zbGF0ZS1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6bm8tcmVwZWF0IDUwJS9jb3Zlcjtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjIyfS55dHAtb2ZmbGluZS1zbGF0ZS55dHAtb2ZmbGluZS1zbGF0ZS1oaWRlLWJhY2tncm91bmQgLnl0cC1vZmZsaW5lLXNsYXRlLWJhY2tncm91bmR7ZGlzcGxheTpub25lfS5odG1sNS12aWRlby1wbGF5ZXIuZW5kZWQtbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUueXRwLW9mZmxpbmUtc2xhdGUtaGlkZS1iYWNrZ3JvdW5kIC55dHAtb2ZmbGluZS1zbGF0ZS1iYWNrZ3JvdW5ke2Rpc3BsYXk6YmxvY2t9Lnl0cC1vZmZsaW5lLXNsYXRlOm5vdCgueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlcikgLnl0cC1vZmZsaW5lLXNsYXRlLWJhci1mYWRlLnl0cC1vZmZsaW5lLXNsYXRlLWJhcntkaXNwbGF5Om5vbmV9Lnl0cC1vZmZsaW5lLXNsYXRlLWJhcntwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MCA2cHg7bGVmdDoxMnB4O2hlaWdodDo1NnB4O2JvdHRvbTo2MHB4Oy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDt0ZXh0LWFsaWduOmxlZnQ7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7Y29sb3I6I2ZmZjstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7ei1pbmRleDo0Njtib3JkZXItcmFkaXVzOjhweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW9mZmxpbmUtc2xhdGUtYmFye2JhY2tncm91bmQtY29sb3I6cmdiYSg0MCw0MCw0MCwuNik7Ym9yZGVyLXJhZGl1czoxMnB4fS55dHAtb2ZmbGluZS1zbGF0ZS1iYXIueXRwLW9mZmxpbmUtc2xhdGUtYmFyLWhpZGRlbntkaXNwbGF5Om5vbmV9Lnl0cC1lbWJlZCAueXRwLW9mZmxpbmUtc2xhdGUtYmFye2JvdHRvbTo1MnB4fS55dHAtYmlnLW1vZGUgLnl0cC1vZmZsaW5lLXNsYXRlLWJhcntwYWRkaW5nOjAgOXB4O2hlaWdodDo4NHB4O2JvdHRvbTo5MHB4O2xlZnQ6MThweH0ueXRwLWVtYmVkLnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtYmFye2JvdHRvbTo5MHB4fS55dHAtYXV0b2hpZGUgLnl0cC1vZmZsaW5lLXNsYXRlLWJhciwueXRwLWhpZGUtY29udHJvbHMgLnl0cC1vZmZsaW5lLXNsYXRlLWJhcntib3R0b206MTJweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYXV0b2hpZGUgLnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtYmFyLC55dHAtaGlkZS1jb250cm9scyAueXRwLWJpZy1tb2RlIC55dHAtb2ZmbGluZS1zbGF0ZS1iYXJ7Ym90dG9tOjE4cHh9Lnl0cC1vZmZsaW5lLXNsYXRlLWljb257bWFyZ2luOjAgMTRweDt3aWR0aDoyNHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtb2ZmbGluZS1zbGF0ZS1pY29ue2Rpc3BsYXk6bm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtb2ZmbGluZS1zbGF0ZS1pY29ue3dpZHRoOjM2cHh9Lnl0cC1vZmZsaW5lLXNsYXRlLWJ1dHRvbnN7bWFyZ2luOjEycHggNnB4fS55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b257bWluLXdpZHRoOjgwcHg7aGVpZ2h0OjMycHg7cGFkZGluZzowIDhweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjI1KTtib3JkZXItcmFkaXVzOjJweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW9mZmxpbmUtc2xhdGUtYnV0dG9ue2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItcmFkaXVzOjE4cHg7Y29sb3I6IzI4MjgyOH0ueXRwLW9mZmxpbmUtc2xhdGUtYnV0dG9uLWljb257ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO2hlaWdodDoyNHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b24taWNvbntoZWlnaHQ6MThweDt3aWR0aDoxOHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b24taWNvbiBzdmd7ZmlsbDojMjgyODI4O2hlaWdodDoxOHB4O3dpZHRoOjE4cHh9Lnl0cC1vZmZsaW5lLXNsYXRlLWJ1dHRvbi10ZXh0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW46MCA4cHg7bGluZS1oZWlnaHQ6MzJweDtmb250LXNpemU6MTEwJTtmb250LXdlaWdodDo1MDB9Lnl0cC1yZW1pbmRlci1tZW51e2JhY2tncm91bmQ6cmdiYSgyOCwyOCwyOCwuOSk7Ym9yZGVyLXJhZGl1czoycHg7Ym90dG9tOjU1cHg7b3V0bGluZTpub25lO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpO3doaXRlLXNwYWNlOm5vd3JhcDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZX0ueXRwLXJlbWluZGVyLW1lbnVbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLXJlbWluZGVyLW1lbnUtY29udGVudHN7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOiNlZWU7ZGlzcGxheTp0YWJsZTtwYWRkaW5nOjhweCAwO3dpZHRoOjEwMCV9Lnl0cC1yZW1pbmRlci1tZW51LWl0ZW17Y3Vyc29yOmRlZmF1bHQ7ZGlzcGxheTp0YWJsZS1yb3c7aGVpZ2h0OjQwcHg7b3V0bGluZTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1yZW1pbmRlci1tZW51LWl0ZW17aGVpZ2h0OjQ5cHh9Lnl0cC1yZW1pbmRlci1tZW51LWl0ZW06bm90KFthcmlhLWRpc2FibGVkPXRydWVdKXtjdXJzb3I6cG9pbnRlcn0ueXRwLXJlbWluZGVyLW1lbnUtaXRlbTpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMSl9Lnl0cC1yZW1pbmRlci1tZW51LWl0ZW0taWNvbiwueXRwLXJlbWluZGVyLW1lbnUtaXRlbS1sYWJlbHtkaXNwbGF5OnRhYmxlLWNlbGw7cGFkZGluZzowIDE1cHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS55dHAtcmVtaW5kZXItbWVudS1pdGVtLWxhYmVse2ZvbnQtc2l6ZToxMTglO2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nLWxlZnQ6MDt0ZXh0LXRyYW5zZm9ybTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1yZW1pbmRlci1tZW51LWl0ZW0tbGFiZWx7cGFkZGluZzowIDE1cHggMCAwfS55dHAtcmVtaW5kZXItbWVudS1pdGVtLWljb257cGFkZGluZzowIDEwcHh9Lnl0cC1iaWctbW9kZSAueXRwLXJlbWluZGVyLW1lbnUtaXRlbS1pY29ue3BhZGRpbmc6MCAxNXB4fS55dHAtcmVtaW5kZXItbWVudS1pdGVtLWljb24gc3Zne2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRwLWJpZy1tb2RlIC55dHAtcmVtaW5kZXItbWVudS1pdGVtLWljb24gc3Zne2hlaWdodDozNnB4O3dpZHRoOjM2cHh9Lnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtYnV0dG9uc3ttYXJnaW46MThweCA5cHh9Lnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtYnV0dG9ue21pbi13aWR0aDoxMjBweDtoZWlnaHQ6NDhweDtwYWRkaW5nOjAgMTJweDtib3JkZXItcmFkaXVzOjNweH0ueXRwLWJpZy1tb2RlIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b24tdGV4dHttYXJnaW46MCAxMnB4O2xpbmUtaGVpZ2h0OjQ4cHg7Zm9udC1zaXplOjEzMCU7Zm9udC13ZWlnaHQ6NTAwfS55dHAtb2ZmbGluZS1zbGF0ZS1tZXNzYWdlc3std2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4OjE7ZmxleDoxO21pbi13aWR0aDoxODBweDttYXJnaW46MCA2cHh9Lnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtbWVzc2FnZXN7bWluLXdpZHRoOjI3MHB4O21hcmdpbjowIDlweH0ueXRwLW9mZmxpbmUtc2xhdGUtbWFpbi10ZXh0LC55dHAtb2ZmbGluZS1zbGF0ZS1zdWJ0aXRsZS10ZXh0e3RleHQtdHJhbnNmb3JtOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtb2ZmbGluZS1zbGF0ZS1tYWluLXRleHR7Zm9udC1zaXplOjE0MCU7Zm9udC13ZWlnaHQ6NDAwfS55dHAtb2ZmbGluZS1zbGF0ZS1zdWJ0aXRsZS10ZXh0e2ZvbnQtc2l6ZToxMTAlO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLW9mZmxpbmUtc2xhdGUtY2xvc2UtYnV0dG9uLC55dHAtb2ZmbGluZS1zbGF0ZS1vcGVuLWJ1dHRvbntkaXNwbGF5Om5vbmV9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWJhcnstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtYWxpZ246c3RhcnQ7LXdlYmtpdC1hbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7dG9wOjA7Ym90dG9tOjA7bGVmdDphdXRvO3JpZ2h0OjA7cGFkZGluZzoyNXB4O3BhZGRpbmctdG9wOjQ4cHg7bWluLXdpZHRoOmF1dG87d2lkdGg6MzAwcHg7aGVpZ2h0OmF1dG87Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtdHJhbnNpdGlvbjpyaWdodCAuMjVzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246cmlnaHQgLjI1cyBlYXNlLWluLW91dDt6LWluZGV4OjIzfS55dHAtYmlnLW1vZGUgLnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWJhcntwYWRkaW5nLXRvcDo2OXB4fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtYmFyLC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtY2xvc2UtYnV0dG9uLC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlci55dHAtb2ZmbGluZS1zbGF0ZS1jb2xsYXBzZWQgLnl0cC1vZmZsaW5lLXNsYXRlLW9wZW4tYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlci55dHAtb2ZmbGluZS1zbGF0ZS1jb2xsYXBzZWQgLnl0cC1vZmZsaW5lLXNsYXRlLWJhcntyaWdodDotMTAwJX0ueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtaWNvbntkaXNwbGF5Om5vbmV9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWNsb3NlLWJ1dHRvbiwueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtb3Blbi1idXR0b257cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6NTBweDtoZWlnaHQ6NTBweDt0b3A6NTAlO3JpZ2h0OjA7bWFyZ2luLXRvcDotMjVweDt6LWluZGV4OjIzfS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1jbG9zZS1idXR0b257ZGlzcGxheTpibG9ja30ueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtb3Blbi1idXR0b246YmVmb3Jle2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoyOHB4O2xlZnQ6MTVweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDt3aWR0aDoyMHB4fS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1vcGVuLWJ1dHRvbiBzdmd7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowfS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyLnl0cC1vZmZsaW5lLXNsYXRlLWNvbGxhcHNlZCAueXRwLW9mZmxpbmUtc2xhdGUtY2xvc2UtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlci55dHAtb2ZmbGluZS1zbGF0ZS1jb2xsYXBzZWQgLnl0cC1vZmZsaW5lLXNsYXRlLW9wZW4tYnV0dG9ue2Rpc3BsYXk6YmxvY2t9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLW1lc3NhZ2Vzey13ZWJraXQtYm94LWZsZXg6MDstd2Via2l0LWZsZXg6bm9uZTtmbGV4Om5vbmU7bWFyZ2luOjB9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLW1haW4tdGV4dHtmb250LXNpemU6MjBweDtmb250LXdlaWdodDo1MDA7aGVpZ2h0OmF1dG99Lnl0cC1iaWctbW9kZSAueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtbWFpbi10ZXh0e21hcmdpbi10b3A6MH0ueXRwLW9mZmxpbmUtc2xhdGUtcHJlbWllcmUtdHJhaWxlciAueXRwLW9mZmxpbmUtc2xhdGUtc3VidGl0bGUtdGV4dHtjb2xvcjojYWFhO2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjEuM2VtO21hcmdpbjo1cHggMCAyMHB4O3doaXRlLXNwYWNlOm5vcm1hbH0ueXRwLWJpZy1tb2RlIC55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1zdWJ0aXRsZS10ZXh0e21hcmdpbi1sZWZ0OjB9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWRlc2NyaXB0aW9ue2Rpc3BsYXk6YmxvY2s7dGV4dC10cmFuc2Zvcm06bm9uZTtmb250LXNpemU6MTNweDttYXJnaW46MjBweCAwO21heC1oZWlnaHQ6MzAwcHg7b3ZlcmZsb3c6aGlkZGVufS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b25ze21hcmdpbi1sZWZ0OjA7bWFyZ2luLXJpZ2h0OjB9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWJ1dHRvbnMgLnl0cC1yZW1pbmRlci1tZW51e2JvdHRvbTphdXRvfS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b257YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC4zKTtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxNHB4O2hlaWdodDphdXRvO3BhZGRpbmc6NHB4IDhweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lnl0cC1vZmZsaW5lLXNsYXRlLXByZW1pZXJlLXRyYWlsZXIgLnl0cC1vZmZsaW5lLXNsYXRlLWJ1dHRvbiBzdmd7ZmlsbDojZmZmfS55dHAtb2ZmbGluZS1zbGF0ZS1wcmVtaWVyZS10cmFpbGVyIC55dHAtb2ZmbGluZS1zbGF0ZS1idXR0b24tdGV4dHtmb250LXNpemU6MTEwJTtsaW5lLWhlaWdodDozMnB4O21hcmdpbjowIDhweH0ueXRwLWNocm9tZS10b3AgLnl0cC1vdmVyZmxvdy1idXR0b257d2lkdGg6YXV0bztoZWlnaHQ6YXV0bzttaW4td2lkdGg6NDhweH0ueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykueXRwLXNtYWxsLW1vZGUgLnl0cC1vdmVyZmxvdy1idXR0b257cGFkZGluZy10b3A6MTZweH0ueXRwLW92ZXJmbG93LWljb257bWFyZ2luOmF1dG87d2lkdGg6MzZweDtoZWlnaHQ6MzZweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1vdmVyZmxvdy1wYW5lbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4Ojc0O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7dGV4dC1hbGlnbjpjZW50ZXI7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1vdmVyZmxvdy1wYW5lbFthcmlhLWhpZGRlbj10cnVlXXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1hdXRvaGlkZS55dHAtZW1iZWQtb3ZlcmxheXMtYXV0b2hpZGUgLnl0cC1vdmVyZmxvdy1wYW5lbHtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYXV0b2hpZGU6bm90KC55dHAtYXV0b2hpZGUtYWN0aXZlKS55dHAtZW1iZWQtb3ZlcmxheXMtYXV0b2hpZGUgLnl0cC1vdmVyZmxvdy1wYW5lbHtkaXNwbGF5Om5vbmV9Lnl0cC1vdmVyZmxvdy1wYW5lbC1jb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDowO3JpZ2h0OjA7bWFyZ2luLXRvcDotNDhweH0ueXRwLW92ZXJmbG93LXBhbmVsLWNsb3Nle3Bvc2l0aW9uOmFic29sdXRlO3RvcDo2cHg7cmlnaHQ6MTJweDtwYWRkaW5nOjA7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLW1vYmlsZS55dHAtZW1iZWQtbW9iaWxlIC55dHAtb3ZlcmZsb3ctcGFuZWwtY2xvc2V7d2lkdGg6NDhweDtoZWlnaHQ6NDhweH0ueXRwLW92ZXJmbG93LXBhbmVsLWNsb3NlIHBhdGh7ZmlsbDojYWFhfS55dHAtb3ZlcmZsb3ctcGFuZWwtY2xvc2U6aG92ZXIgcGF0aHtmaWxsOiNmZmZ9Lnl0cC1vdmVyZmxvdy1wYW5lbC1hY3Rpb24tYnV0dG9uc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtd3JhcDpub3dyYXA7ZmxleC13cmFwOm5vd3JhcDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpzdGFydDstd2Via2l0LWFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDo4cHggMTJweCA3MnB4O3otaW5kZXg6NTk7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLWxlZnR7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJX0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLWxlZnQ+Kntwb2ludGVyLWV2ZW50czphdXRvO21hcmdpbi1ib3R0b206MTJweH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLXJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7cmlnaHQ6MH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLXJpZ2h0Pip7cG9pbnRlci1ldmVudHM6YXV0bzttYXJnaW4tYm90dG9tOjEycHg7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6YXV0b30ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLXJpZ2h0IC55dHAtY2hyb21lLXRvcC1idXR0b25ze21hcmdpbi1ib3R0b206MH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktdG9wLXJpZ2h0IC55dHAtY2hyb21lLXRvcC1idXR0b25zPip7bWFyZ2luLWJvdHRvbToxMnB4fS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tbGVmdHtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2JvdHRvbTowfS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tbGVmdD4qe3BvaW50ZXItZXZlbnRzOmF1dG87bWFyZ2luLXRvcDoxMnB4fS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tcmlnaHR7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDtib3R0b206MH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktYm90dG9tLXJpZ2h0Pip7cG9pbnRlci1ldmVudHM6YXV0bzttYXJnaW4tdG9wOjEycHg7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6MH0ueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLW92ZXJsYXktaW5saW5lLWNvbnRhaW5lcnt3aWR0aDotd2Via2l0LWZpdC1jb250ZW50O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnQ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7Z2FwOjEycHh9Lnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC1vdmVybGF5LWlubGluZS1jb250YWluZXI+Kntwb2ludGVyLWV2ZW50czphdXRvfS55dHAtb3ZlcmxheXMtY29udGFpbmVyey13ZWJraXQtdHJhbnNpdGlvbjpib3R0b20gLjFzO3RyYW5zaXRpb246Ym90dG9tIC4xczstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWZ1bGwtYmxlZWQtcGxheWVyLnl0cC1ncmlkLXNjcm9sbGluZyAueXRwLW92ZXJsYXlzLWNvbnRhaW5lcnstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIDBzO3RyYW5zaXRpb246Ym90dG9tIDBzfS55dHAtYmlnLW1vZGUgLnl0cC1vdmVybGF5cy1jb250YWluZXJ7aW5zZXQ6OHB4IDI0cHggNzhweH0ueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC1vdmVybGF5cy1jb250YWluZXJ7dG9wOjYwcHh9Lnl0cC1iaWctbW9kZTpub3QoLnl0cC1kZWxoaS1tb2Rlcm4pIC55dHAtb3ZlcmxheXMtY29udGFpbmVye3RvcDo2OXB4O2JvdHRvbTo3OHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtb3ZlcmxheXMtY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMjRweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtb3ZlcmxheXMtY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMjRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSArIDEwMCUqdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1vdmVybGF5cy1jb250YWluZXJ7Ym90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAyNHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtb3ZlcmxheXMtY29udGFpbmVye2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgMjRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSArIDEwMCUqdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKX0ueXRwLWF1dG9oaWRlOm5vdCgueXRwLWF1dG9oaWRlLWFjdGl2ZSkgLnl0cC1vdmVybGF5cy1jb250YWluZXIsLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWF1dG9oaWRlOm5vdCgueXRwLWF1dG9oaWRlLWFjdGl2ZSkgLnl0cC1vdmVybGF5cy1jb250YWluZXJ7Ym90dG9tOjI0cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1vdmVybGF5cy1jb250YWluZXIsLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtb3ZlcmxheXMtY29udGFpbmVye2JvdHRvbTozNnB4fS5odG1sNS12aWRlby1wbGF5ZXIuZW5kZWQtbW9kZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LC55dHAtZGVsaGktbW9kZXJuLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtcGxheWxpc3QtbWVudS1idXR0b257ZGlzcGxheTpub25lfS55dHAtcGFpZC1jb250ZW50LW92ZXJsYXl7Ym9yZGVyLXJhZGl1czoycHg7Ym90dG9tOjUzcHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwOS4wOTA5MDkwOTA5JTtoZWlnaHQ6MzBweDtsZWZ0OjI1cHg7bGluZS1oZWlnaHQ6MzBweDtvdmVyZmxvdzpoaWRkZW47cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LXNoYWRvdzowIDAgMnB4IHJnYmEoMCwwLDAsLjUpO3otaW5kZXg6Mjd9Lnl0cC1iaWctbW9kZSAueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXl7cG9zaXRpb246cmVsYXRpdmU7aW5zZXQ6MH0ueXRwLWV4cC1wcHAtdXBkYXRlIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXl7Ym9yZGVyLXJhZGl1czowO2JvdHRvbTphdXRvO2ZvbnQtd2VpZ2h0OjQwMDtoZWlnaHQ6YXV0bztwb2ludGVyLWV2ZW50czphdXRvO3RvcDoxNnB4O2xlZnQ6MTZweDtyaWdodDphdXRvfS55dHAtZXhwLXBwcC11cGRhdGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheS1saW5rey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtib3JkZXItbGVmdDo0cHggc29saWQgIzNlYTZmZjtib3JkZXItcmFkaXVzOjRweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDttYXgtd2lkdGg6MzEycHg7cGFkZGluZzo4cHggMCA4cHggOHB4Oy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZXhwLXBwcC11cGRhdGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheS1saW5rW2hyZWY9IiMiXXtwb2ludGVyLWV2ZW50czpub25lfS55dHAtZXhwLXBwcC11cGRhdGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheS1pY29ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHg7LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjB9Lnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LXRleHR7YmFja2dyb3VuZDpub25lOy13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXgtZ3JvdzoxO2ZsZXgtZ3JvdzoxO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OmluaGVyaXQ7bGluZS1oZWlnaHQ6MWVtO3BhZGRpbmc6OHB4fS55dHAtZXhwLXBwcC11cGRhdGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheS1jaGV2cm9ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHg7LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjB9Lnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LWNoZXZyb246ZW1wdHksLnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LWljb246ZW1wdHl7aGVpZ2h0OjA7d2lkdGg6MH0ueXRwLWV4cC1wcHAtdXBkYXRlLnl0cC1iaWctbW9kZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5e2JvdHRvbTphdXRvO2hlaWdodDphdXRvO2xlZnQ6MTZweDtsaW5lLWhlaWdodDppbmhlcml0fS55dHAtZXhwLXBwcC11cGRhdGUueXRwLWJpZy1tb2RlIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXksLnl0cC1leHAtcHBwLXVwZGF0ZS55dHAtZW1iZWQgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheXt0b3A6NjRweH0ueXRwLWV4cC1wcHAtdXBkYXRlLnl0cC1iaWctbW9kZS55dHAtYXV0b2hpZGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheSwueXRwLWV4cC1wcHAtdXBkYXRlLnl0cC1iaWctbW9kZS55dHAtaGlkZS1pbmZvLWJhciAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LC55dHAtZXhwLXBwcC11cGRhdGUueXRwLWVtYmVkLnl0cC1hdXRvaGlkZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LC55dHAtZXhwLXBwcC11cGRhdGUueXRwLWVtYmVkLnl0cC1oaWRlLWluZm8tYmFyIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXl7dG9wOjE2cHh9Lnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LWluZGljYXRvcntkaXNwbGF5Om5vbmV9Lnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LC55dHAtZXhwLXBwcC11cGRhdGUueXRwLWJpZy1tb2RlIC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXksLnl0cC1leHAtcHBwLXVwZGF0ZS55dHAtYmlnLW1vZGUueXRwLWRlbGhpLW1vZGVybiAueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLXBhaWQtY29udGVudC1vdmVybGF5e3Bvc2l0aW9uOnJlbGF0aXZlO2luc2V0OjB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWV4cC1wcHAtdXBkYXRlIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXktbGlua3std2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpO3BhZGRpbmc6NXB4O2JvcmRlci1sZWZ0OnVuc2V0fS55dHAtZGVsaGktbW9kZXJuLnl0cC1leHAtcHBwLXVwZGF0ZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5LWluZGljYXRvcntkaXNwbGF5OmJsb2NrO3dpZHRoOjRweDtoZWlnaHQ6MjBweDtib3JkZXItcmFkaXVzOjRweDtiYWNrZ3JvdW5kLWNvbG9yOiMzZWE2ZmY7bWFyZ2luOjAgOHB4fS55dHAtZW1iZWQgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheXtib3R0b206NDVweH0ueXRwLXBhaWQtY29udGVudC1vdmVybGF5LXRleHR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MzJweDtvcGFjaXR5OjE7cGFkZGluZzowIDE0cHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1iaWctbW9kZSAueXRwLXBhaWQtY29udGVudC1vdmVybGF5e2JvdHRvbTo2MnB4O2hlaWdodDo0MnB4O2xlZnQ6NDRweDtsaW5lLWhlaWdodDo0MnB4fS55dHAtYXV0b2hpZGUgLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheSwueXRwLWl2LWRyYXdlci1vcGVuIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXl7Ym90dG9tOjZweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246Ym90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYmlnLW1vZGUueXRwLWF1dG9oaWRlIC55dHAtcGFpZC1jb250ZW50LW92ZXJsYXksLnl0cC1iaWctbW9kZS55dHAtaXYtZHJhd2VyLW9wZW4gLnl0cC1wYWlkLWNvbnRlbnQtb3ZlcmxheXtib3R0b206MTJweH0ueXRwLXBhaWQtY29udGVudC1vdmVybGF5LXRleHRbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLW1lbnVpdGVte2Rpc3BsYXk6dGFibGUtcm93O2N1cnNvcjpkZWZhdWx0O291dGxpbmU6bm9uZX0ueXRwLW1lbnVpdGVtOm5vdCgueXRwLW1lbnVpdGVtLXdpdGgtZm9vdGVyKXtoZWlnaHQ6NDBweH0ueXRwLWJpZy1tb2RlIC55dHAtbWVudWl0ZW06bm90KC55dHAtbWVudWl0ZW0td2l0aC1mb290ZXIpe2hlaWdodDo0OXB4fS55dHAtbWVudWl0ZW06bm90KFthcmlhLWRpc2FibGVkPXRydWVdKXtjdXJzb3I6cG9pbnRlcn0ueXRwLW1lbnVpdGVtOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4xKX0ueXRwLW1lbnVpdGVtLWNvbnRlbnQsLnl0cC1tZW51aXRlbS1pY29uLC55dHAtbWVudWl0ZW0tbGFiZWwsLnl0cC1tZW51aXRlbS1zZWNvbmRhcnktaWNvbntkaXNwbGF5OnRhYmxlLWNlbGw7dmVydGljYWwtYWxpZ246bWlkZGxlO3BhZGRpbmc6MCAxNXB4fS55dHAtbWVudWl0ZW0tbGFiZWx7cGFkZGluZy1sZWZ0OjB9Lnl0cC1tZW51aXRlbS1pY29ue3BhZGRpbmc6MCAxMHB4fS55dHAtYmlnLW1vZGUgLnl0cC1tZW51aXRlbS1pY29ue3BhZGRpbmc6MCAxNXB4fS55dHAtbWVudWl0ZW0taWNvbiBzdmd7ZGlzcGxheTpibG9jazt3aWR0aDoyNHB4O2hlaWdodDoyNHB4fS55dHAtbWVudWl0ZW0tc2Vjb25kYXJ5LWljb24gc3Zne2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTZweDtoZWlnaHQ6MTZweH0ueXRwLWJpZy1tb2RlOm5vdCgueXRwLWRlbGhpLW1vZGVybikgLnl0cC1tZW51aXRlbS1pY29uIHN2Z3t3aWR0aDozNnB4O2hlaWdodDozNnB4fS55dHAtbWVudWl0ZW0tbGFiZWx7Zm9udC1zaXplOjExOCU7Zm9udC13ZWlnaHQ6NTAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtbWVudWl0ZW0tbGFiZWx7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6dW5zZXR9Lnl0cC1tZW51aXRlbS1sYWJlbC13cmFwcGVye2Rpc3BsYXk6dGFibGUtY2VsbDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0cC1tZW51aXRlbS1rZXlib2FyZC1zaG9ydGN1dHtmb250LXNpemU6MTE1JTtwYWRkaW5nLWxlZnQ6M3B4O2NvbG9yOiNjY2N9Lnl0cC1xdWFsaXR5LW1lbnUgLnl0cC1tZW51aXRlbXt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC1xdWFsaXR5LW1lbnUgLnl0cC1wYW5lbC1tZW51e21hcmdpbi1yaWdodDoxMHB4fS55dHAtcXVhbGl0eS1tZW51IC55dHAtbWVudWl0ZW0tbGFiZWwgc3Vwe2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjB9Lnl0cC1iaWctbW9kZSAueXRwLW1lbnVpdGVtLWNvbnRlbnQsLnl0cC1iaWctbW9kZSAueXRwLW1lbnVpdGVtLWxhYmVse3BhZGRpbmc6MCAxNXB4IDAgMH0ueXRwLW1lbnVpdGVtW3JvbGU9bWVudWl0ZW1yYWRpb10gLnl0cC1tZW51aXRlbS1jb250ZW50e2Rpc3BsYXk6bm9uZX0ueXRwLW1lbnVpdGVtW3JvbGU9bWVudWl0ZW1yYWRpb10gLnl0cC1tZW51aXRlbS1sYWJlbHtwYWRkaW5nLWxlZnQ6MzVweDtwYWRkaW5nLXJpZ2h0OjIwcHg7Ym9yZGVyLWJvdHRvbTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1tZW51aXRlbVtyb2xlPW1lbnVpdGVtcmFkaW9dIC55dHAtbWVudWl0ZW0tbGFiZWx7cGFkZGluZy1sZWZ0OjUycHg7cGFkZGluZy1yaWdodDozNXB4fS55dHAtbWVudWl0ZW1bcm9sZT1tZW51aXRlbXJhZGlvXVthcmlhLWNoZWNrZWQ9dHJ1ZV0gLnl0cC1tZW51aXRlbS1sYWJlbHtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeU5DQXlOQ0krUEhCaGRHZ2dabWxzYkQwaUkyWm1aaUlnWkQwaVRUa2dNVFl1TWlBMExqZ2dNVEpzTFRFdU5DQXhMalJNT1NBeE9TQXlNU0EzYkMweExqUXRNUzQwZWlJdlBqd3ZjM1puUGc9PSk7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246bGVmdCAxMHB4IGNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6MThweCAxOHB4Oy1tb3otYmFja2dyb3VuZC1zaXplOjE4cHggMThweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZToxOHB4IDE4cHh9Lnl0cC1iaWctbW9kZSAueXRwLW1lbnVpdGVtW3JvbGU9bWVudWl0ZW1yYWRpb11bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tbGFiZWx7YmFja2dyb3VuZC1wb3NpdGlvbjpsZWZ0IDE1cHggY2VudGVyO2JhY2tncm91bmQtc2l6ZToyN3B4IDI3cHg7LW1vei1iYWNrZ3JvdW5kLXNpemU6MjdweCAyN3B4Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOjI3cHggMjdweH0ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtbWVudWl0ZW06Zm9jdXMgLnl0cC1tZW51aXRlbS1pY29uey13ZWJraXQtYm94LXNoYWRvdzppbnNldCAycHggMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KSxpbnNldCAwIC0ycHggMCByZ2JhKDI3LDEyNywyMDQsLjgpO2JveC1zaGFkb3c6aW5zZXQgMnB4IDJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCksaW5zZXQgMCAtMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtbWVudWl0ZW06Zm9jdXMgLnl0cC1tZW51aXRlbS1sYWJlbHstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAycHggMCByZ2JhKDI3LDEyNywyMDQsLjgpLGluc2V0IDAgLTJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCk7Ym94LXNoYWRvdzppbnNldCAwIDJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCksaW5zZXQgMCAtMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtbWVudWl0ZW06Zm9jdXMgLnl0cC1tZW51aXRlbS1sYWJlbDpmaXJzdC1jaGlsZHstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMnB4IDJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCksaW5zZXQgMCAtMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KTtib3gtc2hhZG93Omluc2V0IDJweCAycHggMCByZ2JhKDI3LDEyNywyMDQsLjgpLGluc2V0IDAgLTJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCl9Lnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAueXRwLW1lbnVpdGVtOmZvY3VzIC55dHAtbWVudWl0ZW0tY29udGVudHstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgLTJweCAtMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KSxpbnNldCAwIDJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCk7Ym94LXNoYWRvdzppbnNldCAtMnB4IC0ycHggMCByZ2JhKDI3LDEyNywyMDQsLjgpLGluc2V0IDAgMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtbWVudWl0ZW1bcm9sZT1tZW51aXRlbXJhZGlvXTpmb2N1cyAueXRwLW1lbnVpdGVtLWxhYmVsey13ZWJraXQtYm94LXNoYWRvdzppbnNldCAycHggMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KSxpbnNldCAtMnB4IC0ycHggMCByZ2JhKDI3LDEyNywyMDQsLjgpO2JveC1zaGFkb3c6aW5zZXQgMnB4IDJweCAwIHJnYmEoMjcsMTI3LDIwNCwuOCksaW5zZXQgLTJweCAtMnB4IDAgcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLW1lbnVpdGVtLWNvbnRlbnR7Zm9udC1zaXplOjEwOSU7dGV4dC1hbGlnbjpyaWdodH0ueXRwLW1lbnVpdGVtLXN1YmxhYmVse2Zsb2F0OmxlZnR9Lnl0cC1tZW51LWxhYmVsLXNlY29uZGFyeSwueXRwLW1lbnVpdGVtLXN1YmxhYmVse2ZvbnQtc2l6ZTo5MSU7Y29sb3I6I2NjY30ueXRwLW1lbnVpdGVtW2FyaWEtaGFzcG9wdXA9dHJ1ZV0gLnl0cC1tZW51aXRlbS1jb250ZW50e2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IDlweCBjZW50ZXI7YmFja2dyb3VuZC1zaXplOjMycHggMzJweDstbW96LWJhY2tncm91bmQtc2l6ZTozMnB4IDMycHg7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6MzJweCAzMnB4O3BhZGRpbmctcmlnaHQ6MzhweH0ueXRwLW1lbnVpdGVtW2FyaWEtaGFzcG9wdXA9dHJ1ZV0gLnl0cC1tZW51aXRlbS1jb250ZW50e2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TWlBek1pSStQSEJoZEdnZ1ptbHNiRDBpSTJabVppSWdaRDBpYlRFeUxqVTVJREl3TGpNMElEUXVOVGd0TkM0MU9TMDBMalU0TFRRdU5UbE1NVFFnT1M0M05XdzJJRFl0TmlBMmVpSXZQand2YzNablBnPT0pfVtkaXI9cnRsXSAueXRwLW1lbnVpdGVtW2FyaWEtaGFzcG9wdXA9dHJ1ZV0gLnl0cC1tZW51aXRlbS1jb250ZW50e2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TWlBek1pSStQSEJoZEdnZ1ptbHNiRDBpSTJabVppSWdaRDBpYlRFNUxqUXhJREl3TGpBNUxUUXVOVGd0TkM0MU9TQTBMalU0TFRRdU5UbE1NVGdnT1M0MWJDMDJJRFlnTmlBMmVpSXZQand2YzNablBnPT0pfS55dHAtYmlnLW1vZGUgLnl0cC1tZW51aXRlbVthcmlhLWhhc3BvcHVwPXRydWVdIC55dHAtbWVudWl0ZW0tY29udGVudHtiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IDEzcHggY2VudGVyO2JhY2tncm91bmQtc2l6ZTo0OHB4IDQ4cHg7LW1vei1iYWNrZ3JvdW5kLXNpemU6NDhweCA0OHB4Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOjQ4cHggNDhweDtwYWRkaW5nLXJpZ2h0OjU3cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1tZW51aXRlbS1jb250ZW50e2ZvbnQtc2l6ZToxNHB4O2NvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10ZXh0LXNlY29uZGFyeSxyZ2JhKDI1NSwyNTUsMjU1LC43KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1tZW51aXRlbVthcmlhLWhhc3BvcHVwPXRydWVdIC55dHAtbWVudWl0ZW0tY29udGVudHtiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IDEycHggY2VudGVyO2JhY2tncm91bmQtc2l6ZToxOHB4IDE4cHg7LW1vei1iYWNrZ3JvdW5kLXNpemU6MThweCAxOHB4Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOjE4cHggMThweDtwYWRkaW5nLXJpZ2h0OjMycHg7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l5TkNJZ2FHVnBaMmgwUFNJeU5DSWdkbWxsZDBKdmVEMGlNQ0F3SURJMElESTBJajQ4Y0dGMGFDQm1hV3hzUFNJalptWm1JaUJtYVd4c0xXOXdZV05wZEhrOUlpNDNJaUJrUFNKdE9TNDBJREU0TGpRdExqY3RMamNnTlM0MkxUVXVOaTAxTGpjdE5TNDNMamN0TGpjZ05pNDBJRFl1TkhvaUx6NDhMM04yWno0PSl9Lnl0cC1kZWxoaS1tb2Rlcm4gW2Rpcj1ydGxdIC55dHAtbWVudWl0ZW1bYXJpYS1oYXNwb3B1cD10cnVlXSAueXRwLW1lbnVpdGVtLWNvbnRlbnR7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l5TkNJZ2FHVnBaMmgwUFNJeU5DSWdkbWxsZDBKdmVEMGlNQ0F3SURJMElESTBJajQ4Y0dGMGFDQm1hV3hzUFNJalptWm1JaUJtYVd4c0xXOXdZV05wZEhrOUlpNDNJaUJrUFNKTk1UUXVPVFlnTVRndU9UWWdPQ0F4TW13MkxqazJMVFl1T1RZdU56RXVOekZNT1M0ME1TQXhNbXcyTGpJMUlEWXVNalY2SWk4K1BDOXpkbWMrKX0ueXRwLW1lbnVpdGVtIHN1cHtsaW5lLWhlaWdodDowO2ZvbnQtc2l6ZTouOGVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRwLW1lbnVpdGVtLWxhYmVsLWNvdW50e2NvbG9yOiNjY2N9Lnl0cC1tZW51aXRlbXRpdGxle3BhZGRpbmc6MCAxNXB4O21heC13aWR0aDoyMDBweDt0ZXh0LWFsaWduOmNlbnRlcn0ueXRwLWJpZy1tb2RlIC55dHAtbWVudWl0ZW10aXRsZXtwYWRkaW5nOjAgMjJweDttYXgtd2lkdGg6MzAwcHh9Lnl0cC1tZW51aXRlbS1pbmxpbmUtc3VydmV5LXJlc3BvbnNle21hcmdpbi1sZWZ0Oi44ZW07ZGlzcGxheTppbmxpbmUtYmxvY2s7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1tZW51aXRlbS1pbmxpbmUtc3VydmV5LXJlc3BvbnNlOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMSl9Lnl0cC1tZW51aXRlbS1pbmxpbmUtc3VydmV5LXJlc3BvbnNlIHN2Z3toZWlnaHQ6MjBweDt3aWR0aDoyMHB4O21hcmdpbi1ib3R0b206LTRweH0ueXRwLW1lbnVpdGVtLWhpZ2hsaWdodGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1zdWdnZXN0ZWQtYWN0aW9uKX0ueXRwLW1lbnVpdGVtLWhpZ2hsaWdodC10cmFuc2l0aW9uLWVuYWJsZWQueXRwLW1lbnVpdGVtOm5vdCgueXRwLW1lbnVpdGVtLWhpZ2hsaWdodGVkKXstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAzcyBsaW5lYXIgMXM7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIDNzIGxpbmVhciAxc30ueXRwLW1lbnVpdGVtLXdpdGgtZm9vdGVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtwYWRkaW5nLXRvcDoxNXB4fS55dHAtbWVudWl0ZW0tZm9vdGVye3BhZGRpbmctdG9wOjVweH0ueXRwLW1lbnVpdGVtLXNlY3Rpb24taGVhZGVyIC55dHAtbWVudWl0ZW0tbGFiZWx7Y29sb3I6I2VlZTtwYWRkaW5nOjhweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW1lbnVpdGVtLXNlY3Rpb24taGVhZGVyIC55dHAtbWVudWl0ZW0tbGFiZWx7cGFkZGluZzowfS55dHAtcGFuZWx7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cmlnaHQ6MDtvdmVyZmxvdy15OmF1dG87b3ZlcmZsb3cteDpoaWRkZW59Lnl0cC1wYW5lbHttaW4td2lkdGg6MjUwcHh9Lnl0cC1wYW5lbC1oZWFkZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yKTtsaW5lLWhlaWdodDppbmhlcml0O2ZvbnQtc2l6ZToxMDklO2NvbG9yOiNlZWU7cGFkZGluZzo4cHggMDtoZWlnaHQ6NDBweDt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC1wYW5lbC1mb290ZXJ7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMik7bGluZS1oZWlnaHQ6aW5oZXJpdDtmb250LXNpemU6MTE4JTtmb250LXdlaWdodDo1MDA7Y29sb3I6I2VlZTtwYWRkaW5nOjE2cHggMDttaW4taGVpZ2h0OjQwcHg7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjI1MHB4fS55dHAtcGFuZWwtZm9vdGVyLWNvbnRlbnR7bWFyZ2luOjAgMTBweH0ueXRwLXBhbmVsLWZvb3Rlci55dHAtcGFuZWwtaGlkZS1mb290ZXJ7ZGlzcGxheTpub25lfS5odG1sNS12aWRlby1wbGF5ZXIgLnl0cC1wYW5lbC1mb290ZXItY29udGVudC1saW5re2NvbG9yOiMxNjdhYzZ9Lnl0cC10b3VjaC1tb2RlIC55dHAtcGFuZWwtaGVhZGVye2hlaWdodDo0MHB4fS55dHAtYmlnLW1vZGUgLnl0cC1wYW5lbC1oZWFkZXJ7aGVpZ2h0OjQ5cHh9Lnl0cC1wYW5lbC1iYWNrLWJ1dHRvbi1jb250YWluZXJ7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6NDhweDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDo0OHB4fS55dHAtcGFuZWwtYmFjay1idXR0b257YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXpNaUF6TWlJK1BIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ1pEMGliVEU1TGpReElESXdMakE1TFRRdU5UZ3ROQzQxT1NBMExqVTRMVFF1TlRsTU1UZ2dPUzQxYkMwMklEWWdOaUEyZWlJdlBqd3ZjM1puUGc9PSk7aGVpZ2h0OjMycHg7d2lkdGg6MzJweH0ueXRwLXBhbmVsLXRpdGxlOmhvdmVye2N1cnNvcjpwb2ludGVyfS55dHAtcGFuZWwtb3B0aW9uc3ttYXJnaW4tbGVmdDphdXRvfS55dHAtcGFuZWwtdGl0bGV7Zm9udC13ZWlnaHQ6NTAwfVtkaXI9cnRsXSAueXRwLXBhbmVsLXRpdGxle2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TWlBek1pSStQSEJoZEdnZ1ptbHNiRDBpSTJabVppSWdaRDBpYlRFeUxqVTVJREl3TGpNMElEUXVOVGd0TkM0MU9TMDBMalU0TFRRdU5UbE1NVFFnT1M0M05XdzJJRFl0TmlBMmVpSXZQand2YzNablBnPT0pfS55dHAtYmlnLW1vZGUgLnl0cC1wYW5lbC10aXRsZXtiYWNrZ3JvdW5kLXNpemU6NDhweCA0OHB4Oy1tb3otYmFja2dyb3VuZC1zaXplOjQ4cHggNDhweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo0OHB4IDQ4cHg7cGFkZGluZzowIDE1cHggMCA1MnB4fS55dHAtYmlnLW1vZGUueXRwLWRlbGhpLW1vZGVybiAueXRwLXBhbmVsLXRpdGxle3BhZGRpbmc6MCAxNXB4IDAgMH0ueXRwLXBhbmVsLW9wdGlvbnN7aGVpZ2h0OjEwMCU7cGFkZGluZzowIDEwcHg7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ueXRwLWJpZy1tb2RlIC55dHAtcGFuZWwtb3B0aW9uc3twYWRkaW5nOjAgMTVweH0ueXRwLXBhbmVsLW1lbnV7cGFkZGluZzo4cHggMDtkaXNwbGF5OnRhYmxlO3dpZHRoOjEwMCU7Y29sb3I6I2VlZTstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbiwueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b257d2lkdGg6NDZweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXBsYXktYnV0dG9ue3dpZHRoOjU2cHg7aGVpZ2h0OjU2cHg7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luLXRvcDo4cHg7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbiBzdmd7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b257cGFkZGluZzowfS55dHAtZGVsaGktbW9kZXJuLWljb25zIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24gc3Zne3BhZGRpbmc6MTBweH0ueXRwLWRlbGhpLW1vZGVybi1pY29ucy55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbiBzdmd7cGFkZGluZzoxOHB4fS55dHAtZGVsaGktbW9kZXJuLWljb25zLnl0cC1iaWctbW9kZS55dHAtYmlnLW1vZGUtY29uc2lzdGVudC1waWxsLWhlaWdodCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXBsYXktYnV0dG9uIHN2Z3twYWRkaW5nOjEwcHh9Lnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b257d2lkdGg6NTJweDtoZWlnaHQ6NTJweDttYXJnaW4tdG9wOjZweH0ueXRwLWRlbGhpLW1vZGVybi1pY29ucy55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbiBzdmd7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtwYWRkaW5nOjE0cHh9Lnl0cC1kZWxoaS1tb2Rlcm4taWNvbnMueXRwLWJpZy1tb2RlLnl0cC14c21hbGwtd2lkdGgtbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXBsYXktYnV0dG9uIHN2Z3twYWRkaW5nOjEycHggMTBweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWNvbXBhY3QtY29udHJvbHMgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbnt3aWR0aDp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KTtoZWlnaHQ6dmFyKC0teXQtZGVsaGktcGlsbC1oZWlnaHQsNDhweCk7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luLXRvcDp2YXIoLS15dC1kZWxoaS1waWxsLXRvcC1oZWlnaHQsMTJweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLW1vZGVybi1jb21wYWN0LWNvbnRyb2xzIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24gc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZGVsaGktbW9kZXJuLWNvbXBhY3QtY29udHJvbHMgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbntwYWRkaW5nOjB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLW1vZGVybi1jb21wYWN0LWNvbnRyb2xzIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24gc3Zne3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7cGFkZGluZzo4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLW1vZGVybi1jb21wYWN0LWNvbnRyb2xzLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbnt3aWR0aDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KTtoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCk7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luLXRvcDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLXRvcC1oZWlnaHQsMjBweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWRlbGhpLW1vZGVybi1jb21wYWN0LWNvbnRyb2xzLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbiBzdmd7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtwYWRkaW5nOjEycHh9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1sdW1pbm9zaXR5Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbntiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpsdW1pbm9zaXR5Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1kaWZmZXJlbmNlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbntiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpkaWZmZXJlbmNlOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1leGNsdXNpb24ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXBsYXktYnV0dG9ue2JhY2tncm91bmQ6cmdiYSg4MCw4MCw4MCwuNik7YmFja2dyb3VuZC1ibGVuZC1tb2RlOmV4Y2x1c2lvbjstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpfS55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1wbGF5LWJ1dHRvbnt3aWR0aDo2OXB4fS55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24tcGxheWxpc3R7d2lkdGg6NDBweH0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24tcGxheWxpc3R7d2lkdGg6NjBweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcGxheS1idXR0b24sLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXBsYXktYnV0dG9uLXBsYXlsaXN0e21hcmdpbi10b3A6MTJweDt3aWR0aDo3MnB4O2hlaWdodDo3MnB4fS55dHAtZW1iZWQueXRwLWVtYmVkLW1vYmlsZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAtcHJldi1idXR0b24sLnl0cC1lbWJlZC55dHAtZW1iZWQtbW9iaWxlLnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC1uZXh0LWJ1dHRvbiwueXRwLWVtYmVkLnl0cC1lbWJlZC1tb2JpbGUueXRwLXNtYWxsLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLXByZXYtYnV0dG9uLC55dHAtZW1iZWQueXRwLWVtYmVkLnl0cC1lbWJlZC1tb2JpbGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLW5leHQtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLW5leHQtYnV0dG9uLC55dHAtcGxheS1idXR0b24sLnl0cC1wcmV2LWJ1dHRvbnstd2Via2l0LWJveC1mbGV4OjA7LXdlYmtpdC1mbGV4OjAgMCBhdXRvO2ZsZXg6MCAwIGF1dG99Lnl0cC1wbGF5bGlzdC1tZW51e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDtib3R0b206MDt3aWR0aDo0MDBweDttYXgtd2lkdGg6MTAwJTt6LWluZGV4OjczO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZW1iZWQtcGxheWxpc3QgLnl0cC1wbGF5bGlzdC1tZW51e2xlZnQ6YXV0bztyaWdodDowfS55dHAtYmlnLW1vZGUgLnl0cC1wbGF5bGlzdC1tZW51e3dpZHRoOjYwMHB4fVtkaXI9bHRyXSAueXRwLXBsYXlsaXN0LW1lbnVbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfVtkaXI9bHRyXSAueXRwLWVtYmVkLXBsYXlsaXN0IC55dHAtcGxheWxpc3QtbWVudVthcmlhLWhpZGRlbj10cnVlXXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKX1bZGlyPXJ0bF0gLnl0cC1wbGF5bGlzdC1tZW51W2FyaWEtaGlkZGVuPXRydWVdey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX1bZGlyPXJ0bF0gLnl0cC1lbWJlZC1wbGF5bGlzdCAueXRwLXBsYXlsaXN0LW1lbnVbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9Lnl0cC1wbGF5bGlzdC1tZW51LWhlYWRlcntwYWRkaW5nOjE1cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzQ0NH0ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1oZWFkZXJ7cGFkZGluZzoyM3B4fS55dHAtcGxheWxpc3QtbWVudS10aXRsZXtoZWlnaHQ6MjBweDtsaW5lLWhlaWdodDoyMHB4O3BhZGRpbmctcmlnaHQ6MTVweDtmb250LXNpemU6MTM2JTtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS10aXRsZXtoZWlnaHQ6MzBweDtsaW5lLWhlaWdodDozMHB4O3BhZGRpbmctcmlnaHQ6MjNweDtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLXBsYXlsaXN0LW1lbnUtc3VidGl0bGV7Y29sb3I6I2I4YjhiODtsaW5lLWhlaWdodDoxN3B4O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtYmlnLW1vZGUgLnl0cC1wbGF5bGlzdC1tZW51LXN1YnRpdGxle2xpbmUtaGVpZ2h0OjI2cHh9Lnl0cC1wbGF5bGlzdC1tZW51LWNsb3Nle3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxNXB4O3JpZ2h0OjE1cHg7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1jbG9zZXt0b3A6MjNweDtyaWdodDoyM3B4O3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHh9Lnl0cC1wbGF5bGlzdC1tZW51LWNsb3NlIHBhdGh7ZmlsbDojYWFhfS55dHAtcGxheWxpc3QtbWVudS1jbG9zZTpob3ZlciBwYXRoe2ZpbGw6I2ZmZn0ueXRwLXBsYXlsaXN0LW1lbnUtaXRlbXN7cG9zaXRpb246YWJzb2x1dGU7dG9wOjY4cHg7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7b3ZlcmZsb3c6YXV0b30ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1pdGVtc3t0b3A6MTAzcHh9Lnl0cC1jaHJvbWUtdG9wIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24sLnl0cC1lbWJlZC1wbGF5bGlzdC55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtcGxheWxpc3QtbWVudS1idXR0b257d2lkdGg6YXV0bztoZWlnaHQ6YXV0b30ueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykueXRwLXNtYWxsLW1vZGUgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbntwYWRkaW5nLXRvcDoxNnB4fS55dHAtcGxheWxpc3QtbWVudS1idXR0b24taWNvbnt3aWR0aDozNnB4O2hlaWdodDozNnB4fS55dHAtZW1iZWQtcGxheWxpc3QgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbi1pY29ue21hcmdpbjphdXRvfS55dHAtYmlnLW1vZGUgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbi1pY29ue3dpZHRoOjU0cHg7aGVpZ2h0OjU0cHh9Lnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbi10ZXh0e3BhZGRpbmctcmlnaHQ6NnB4O2xpbmUtaGVpZ2h0OjM2cHg7b3BhY2l0eToxfS55dHAtZW1iZWQtcGxheWxpc3Q6bm90KC55dHAtc21hbGwtbW9kZSkgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbnttYXJnaW4tbGVmdDoxMHB4O21hcmdpbi1yaWdodDoxMHB4fS55dHAtZW1iZWQtcGxheWxpc3QgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbi10ZXh0e3BhZGRpbmc6MDtsaW5lLWhlaWdodDppbmhlcml0O29wYWNpdHk6MTtmb250LXdlaWdodDo1MDA7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHh9Lnl0cC1lbWJlZC1wbGF5bGlzdCAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLWljb24sLnl0cC1lbWJlZC1wbGF5bGlzdCAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLXRleHR7ZGlzcGxheTpibG9ja30ueXRwLWVtYmVkLXBsYXlsaXN0Lnl0cC1zbWFsbC1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24tdGV4dCwueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLXRpbnkgLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbi10ZXh0e2Rpc3BsYXk6Tm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24tdGV4dHtsaW5lLWhlaWdodDo1NHB4fS55dHAtZW1iZWQtcGxheWxpc3QueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24tdGV4dHtsaW5lLWhlaWdodDppbmhlcml0O2ZvbnQtc2l6ZToyMHB4fS55dHAtcGxheWxpc3QtbWVudS1idXR0b24taWNvbiwueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLXRleHR7dmVydGljYWwtYWxpZ246bWlkZGxlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtcGxheWxpc3QtbWVudS1idXR0b257bWluLXdpZHRoOjQ4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC55dHAtcGxheWxpc3QtbWVudS1idXR0b257bWFyZ2luLXRvcDo5cHg7aGVpZ2h0OjU2cHg7d2lkdGg6NTZweDtwYWRkaW5nOjB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvdzttaW4td2lkdGg6MzZweDttaW4taGVpZ2h0OjM2cHg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tdG9wOjlweDtib3JkZXItcmFkaXVzOjI3cHg7bWF4LXdpZHRoOjQwMHB4Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bSxyZ2JhKDAsMCwwLC42KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wbGF5bGlzdC1tZW51LWJ1dHRvbiAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uLWljb257LXdlYmtpdC1ib3gtZmxleDowOy13ZWJraXQtZmxleDpub25lO2ZsZXg6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24tdGV4dCwueXRwLWRlbGhpLW1vZGVybiAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9uIC55dHAtcGxheWxpc3QtbWVudS1idXR0b24tdGl0bGV7ZGlzcGxheTpub25lfS55dHAtZGVsaGktbW9kZXJuIC55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtcGxheWxpc3QtbWVudS1idXR0b257cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLXRvcDp1bnNldDt6LWluZGV4OjU4fS55dHAtaGlkZS1pbmZvLWJhciAueXRwLW92ZXJsYXlzLWNvbnRhaW5lciAueXRwLXBsYXlsaXN0LW1lbnUtYnV0dG9ue2Rpc3BsYXk6bm9uZX0ueXRwLXNjcnViYmVyLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTRweDtsZWZ0Oi02LjVweDt6LWluZGV4OjQzfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc2NydWJiZXItY29udGFpbmVye3RvcDotM3B4O2xlZnQ6LTZweH0ueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXJ7dG9wOi05LjVweDtsZWZ0Oi0xMnB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWNvbnRhaW5lcnt0b3A6LTlweDtsZWZ0Oi0xMnB4fS55dHAtYmlnLW1vZGUgLnl0cC1zY3J1YmJlci1jb250YWluZXJ7dG9wOi02cHg7bGVmdDotMTBweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1zY3J1YmJlci1jb250YWluZXJ7dG9wOi04cHg7bGVmdDotMTBweH0ueXRwLXNjcnViYmVyLWJ1dHRvbntoZWlnaHQ6MTNweDt3aWR0aDoxM3B4O2JvcmRlci1yYWRpdXM6Ni41cHg7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc2NydWJiZXItYnV0dG9ue2hlaWdodDoxMnB4O3dpZHRoOjEycHg7Ym9yZGVyLXJhZGl1czo2cHh9Lnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItY29udGFpbmVyIC55dHAtc2NydWJiZXItYnV0dG9ue3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0qIC55dHAtc2NydWJiZXItYnV0dG9uLnl0cC1oaWRlLXNjcnViYmVyLWJ1dHRvbiwueXRwLWRlbGhpLW1vZGVybiAueXRwLWRyYWcgLnl0cC1zY3J1YmJlci1idXR0b24ueXRwLWhpZGUtc2NydWJiZXItYnV0dG9uLC55dHAtZGVsaGktbW9kZXJuIC55dHAtc2NydWJiZXItYnV0dG9uLnl0cC1oaWRlLXNjcnViYmVyLWJ1dHRvbnstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwKTstbXMtdHJhbnNmb3JtOnNjYWxlKDApO3RyYW5zZm9ybTpzY2FsZSgwKX0ueXRwLWRyYWcgLnl0cC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1zY3J1YmJlci1idXR0b24ueXRwLXNjcnViYmVyLWJ1dHRvbi1ob3ZlciwueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLXNjcnViYmVyLWNvbnRhaW5lciAueXRwLXNjcnViYmVyLWJ1dHRvbi55dHAtc2NydWJiZXItYnV0dG9uLWhvdmVyey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuNTQpOy1tcy10cmFuc2Zvcm06c2NhbGUoMS41NCk7dHJhbnNmb3JtOnNjYWxlKDEuNTQpfS55dHAtYmlnLW1vZGUgLnl0cC1zY3J1YmJlci1idXR0b257aGVpZ2h0OjIwcHg7d2lkdGg6MjBweDtib3JkZXItcmFkaXVzOjEwcHg7Ym90dG9tOjIwcHg7bGVmdDoxMHB4fS55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWJ1dHRvbntkaXNwbGF5Om5vbmU7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItYnV0dG9ue2Rpc3BsYXk6YmxvY2t9LnlwYy1sb2FkZWQgLnl0cC1zY3J1YmJlci1idXR0b24ueXRwLXN3YXRjaC1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IzI3OTNlNn0uYWQtaW50ZXJydXB0aW5nIC55dHAtc2NydWJiZXItYnV0dG9uLnl0cC1zd2F0Y2gtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiNmYzB9Lnl0cC1wcm9iYWJseS1rZXlib2FyZC1mb2N1cyAueXRwLXByb2dyZXNzLWJhcjpmb2N1c3std2Via2l0LWJveC1zaGFkb3c6MCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuOCk7Ym94LXNoYWRvdzowIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLWRyYWcgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC10b3VjaC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtc2NydWJiZXItYnV0dG9uey13ZWJraXQtdHJhbnNmb3JtOm5vbmU7LW1zLXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWRyYWcgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b3VjaC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtc2NydWJiZXItYnV0dG9uey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuNjcpOy1tcy10cmFuc2Zvcm06c2NhbGUoMS42Nyk7dHJhbnNmb3JtOnNjYWxlKDEuNjcpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRyYWcgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItY29udGFpbmVyIC55dHAtc2NydWJiZXItYnV0dG9uLC55dHAtZHJhZyAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1zY3J1YmJlci1idXR0b24ueXRwLXNjcnViYmVyLWJ1dHRvbi1ob3ZlciwueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItY29udGFpbmVyIC55dHAtc2NydWJiZXItYnV0dG9uLnl0cC1zY3J1YmJlci1idXR0b24taG92ZXJ7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4xNjY2NjY2NjY3KTstbXMtdHJhbnNmb3JtOnNjYWxlKDEuMTY2NjY2NjY2Nyk7dHJhbnNmb3JtOnNjYWxlKDEuMTY2NjY2NjY2Nyk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtZHJhZyAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1zY3J1YmJlci1idXR0b24sLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1kcmFnIC55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWNvbnRhaW5lciAueXRwLXNjcnViYmVyLWJ1dHRvbi55dHAtc2NydWJiZXItYnV0dG9uLWhvdmVyLC55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWNvbnRhaW5lciAueXRwLXNjcnViYmVyLWJ1dHRvbiwueXRwLWRlbGhpLW1vZGVybiAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1zY3J1YmJlci1idXR0b24ueXRwLXNjcnViYmVyLWJ1dHRvbi1ob3Zlcnstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjE2NjY2NjY2NjcpOy1tcy10cmFuc2Zvcm06c2NhbGUoMS4xNjY2NjY2NjY3KTt0cmFuc2Zvcm06c2NhbGUoMS4xNjY2NjY2NjY3KTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1zY3J1YmJlci1wdWxsLWluZGljYXRvcntwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjQyO2JvdHRvbToxNi45cHg7bGVmdDo2LjVweDstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpOy1tcy10cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKX0ueXRwLXNjcnViYmVyLXB1bGwtaW5kaWNhdG9yOmFmdGVyLC55dHAtc2NydWJiZXItcHVsbC1pbmRpY2F0b3I6YmVmb3Jle2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7Y29udGVudDoiIjt0b3A6MDtsZWZ0OjA7b3BhY2l0eTowO3dpZHRoOjYuNXB4O2hlaWdodDo2LjVweDtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjJweCAwIDAgMnB4O2JvcmRlci1jb2xvcjojZWFlYWVhfS55dHAtYmlnLW1vZGUgLnl0cC1zY3J1YmJlci1wdWxsLWluZGljYXRvcjphZnRlciwueXRwLWJpZy1tb2RlIC55dHAtc2NydWJiZXItcHVsbC1pbmRpY2F0b3I6YmVmb3Jle3dpZHRoOjEwcHg7aGVpZ2h0OjEwcHh9Lnl0cC1zY3J1YmJlci1wdWxsLWluZGljYXRvcjphZnRlcnstd2Via2l0LXRyYW5zaXRpb246YWxsIC4xczt0cmFuc2l0aW9uOmFsbCAuMXN9Lnl0cC1zY3J1YmJlci1wdWxsLWluZGljYXRvcjpiZWZvcmV7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMnM7dHJhbnNpdGlvbjphbGwgLjJzfS55dHAtY2hhcHRlci1ob3Zlci1jb250YWluZXIsLnl0cC1jaGFwdGVycy1jb250YWluZXJ7ei1pbmRleDozMjtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjA7aGVpZ2h0OjEwMCV9Lnl0cC1jaGFwdGVycy1jb250YWluZXJ7d2lkdGg6MTAwJX0ueXRwLWNoYXB0ZXItaG92ZXItY29udGFpbmVye2Zsb2F0OmxlZnR9Lnl0cC1wcm9ncmVzcy1saXN0e3otaW5kZXg6Mzk7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC4yKTtoZWlnaHQ6MTAwJTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjYpOy1tcy10cmFuc2Zvcm06c2NhbGVZKC42KTt0cmFuc2Zvcm06c2NhbGVZKC42KTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcm9ncmVzcy1saXN0e292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOnJnYmEoNDAsNDAsNDAsLjYpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjY2Nyk7LW1zLXRyYW5zZm9ybTpzY2FsZVkoLjY2Nyk7dHJhbnNmb3JtOnNjYWxlWSguNjY3KX0ueXRwLWRlbGhpLW1vZGVybi13aXRoLWx1bWlub3NpdHkueXRwLWRlbGhpLW1vZGVybiAueXRwLXByb2dyZXNzLWxpc3R7YmFja2dyb3VuZDpyZ2JhKDgwLDgwLDgwLC42KTtiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6bHVtaW5vc2l0eX0ueXRwLWRlbGhpLW1vZGVybi13aXRoLWRpZmZlcmVuY2UueXRwLWRlbGhpLW1vZGVybiAueXRwLXByb2dyZXNzLWxpc3R7YmFja2dyb3VuZDpyZ2JhKDgwLDgwLDgwLC42KTtiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6ZGlmZmVyZW5jZX0ueXRwLWRlbGhpLW1vZGVybi13aXRoLWV4Y2x1c2lvbi55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJvZ3Jlc3MtbGlzdHtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpleGNsdXNpb259Lnl0cC1iaWctbW9kZSAueXRwLXByb2dyZXNzLWxpc3R7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtLjVweCkgc2NhbGVZKC42MjUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtLjVweCkgc2NhbGVZKC42MjUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0uNXB4KSBzY2FsZVkoLjYyNSl9Lnl0cC1kcmFnIC55dHAtcHJvZ3Jlc3MtbGlzdCwueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLXByb2dyZXNzLWxpc3QsLnl0cC10b3VjaC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtcHJvZ3Jlc3MtbGlzdHstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkgLnl0cC1wcm9ncmVzcy1saXN0LC55dHAtZGVsaGktbW9kZXJuIC55dHAtdG91Y2gtbW9kZSAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLXByb2dyZXNzLWxpc3QsLnl0cC1kcmFnIC55dHAtcHJvZ3Jlc3MtbGlzdHstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kcmFnIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItZWZmZWN0LC55dHAtZXhwLWNoYXB0ZXItaG92ZXItY29udGFpbmVyOmhvdmVyLC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItZWZmZWN0LC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pLnl0cC10aW1lZC1tYXJrZXJzLWVuYWJsZWQgLnl0cC1wcm9ncmVzcy1saXN0ey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxLjgpOy1tcy10cmFuc2Zvcm06c2NhbGVZKDEuOCk7dHJhbnNmb3JtOnNjYWxlWSgxLjgpOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtZHJhZyAueXRwLWV4cC1jaGFwdGVyLWhvdmVyLWVmZmVjdCwueXRwLWRlbGhpLW1vZGVybi55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItZWZmZWN0LC55dHAtZGVsaGktbW9kZXJuLnl0cC1wcm9ncmVzcy1iYXItaG92ZXIgLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkueXRwLXRpbWVkLW1hcmtlcnMtZW5hYmxlZCAueXRwLXByb2dyZXNzLWxpc3R7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVZKDEuNjY3KTstbXMtdHJhbnNmb3JtOnNjYWxlWSgxLjY2Nyk7dHJhbnNmb3JtOnNjYWxlWSgxLjY2Nyk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItY29udGFpbmVyOmhvdmVyLC55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtZXhwLWNoYXB0ZXItaG92ZXItZWZmZWN0LC55dHAtZGVsaGktbW9kZXJuIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pLnl0cC10aW1lZC1tYXJrZXJzLWVuYWJsZWQgLnl0cC1wcm9ncmVzcy1saXN0ey13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSB1bnNldDt0cmFuc2l0aW9uOnRyYW5zZm9ybSB1bnNldCwtd2Via2l0LXRyYW5zZm9ybSB1bnNldH0ueXRwLXJlcGVhdGluZy1jaGFwdGVyey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSgxLjgpOy1tcy10cmFuc2Zvcm06c2NhbGVZKDEuOCk7dHJhbnNmb3JtOnNjYWxlWSgxLjgpfS55dHAtYm91bmQtdGltZS1sZWZ0LC55dHAtYm91bmQtdGltZS1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5Om5vbmU7dG9wOi0yOXB4O3otaW5kZXg6Mjk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI4LDI4LDI4LC45KTt0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjojZTNlM2UzO3BhZGRpbmc6NXB4IDlweDtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGVhc2UtaW47dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBlYXNlLWlufS55dHAtYmlnLW1vZGUgLnl0cC1ib3VuZC10aW1lLWxlZnQsLnl0cC1iaWctbW9kZSAueXRwLWJvdW5kLXRpbWUtcmlnaHR7dG9wOi0zNnB4fS55dHAtYm91bmQtdGltZS1sZWZ0e2xlZnQ6MH0ueXRwLWJvdW5kLXRpbWUtcmlnaHR7cmlnaHQ6MH0ueXRwLWJvdW5kLXRpbWUtbGVmdDphZnRlciwueXRwLWJvdW5kLXRpbWUtcmlnaHQ6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7Y29udGVudDoiIjtib3R0b206LTVweDt3aWR0aDowO2hlaWdodDowO2JvcmRlci1zdHlsZTpzb2xpZH0ueXRwLWJvdW5kLXRpbWUtbGVmdDphZnRlcntsZWZ0OjA7Ym9yZGVyLXdpZHRoOjVweCA1cHggMCAwO2JvcmRlci1jb2xvcjpyZ2JhKDI4LDI4LDI4LC45KSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudH0ueXRwLWJvdW5kLXRpbWUtcmlnaHQ6YWZ0ZXJ7cmlnaHQ6MDtib3JkZXItd2lkdGg6MCA1cHggNXB4IDA7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50IHJnYmEoMjgsMjgsMjgsLjkpIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50fS55dHAtMTVtLXByb2dyZXNzLC55dHAtMW0tcHJvZ3Jlc3MsLnl0cC0zMG0tcHJvZ3Jlc3MsLnl0cC02MG0tcHJvZ3Jlc3MsLnl0cC1hZC1wcm9ncmVzcywueXRwLWNsaXAtZW5kLWV4Y2x1ZGUsLnl0cC1jbGlwLXN0YXJ0LWV4Y2x1ZGUsLnl0cC1ob3Zlci1wcm9ncmVzcywueXRwLWxvYWQtcHJvZ3Jlc3MsLnl0cC1wbGF5LXByb2dyZXNzLC55dHAtcHJvZ3Jlc3MtbGluZWFyLWxpdmUtYnVmZmVyLC55dHAtdGltZWQtbWFya2Vycy1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO2JvdHRvbTowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOjAgMDstbXMtdHJhbnNmb3JtLW9yaWdpbjowIDA7dHJhbnNmb3JtLW9yaWdpbjowIDB9Lnl0cC10aW1lZC1tYXJrZXJzLWNvbnRhaW5lcnstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjYpOy1tcy10cmFuc2Zvcm06c2NhbGVZKC42KTt0cmFuc2Zvcm06c2NhbGVZKC42KTt0b3A6MXB4O3otaW5kZXg6NDB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lZC1tYXJrZXJzLWNvbnRhaW5lcnstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjY2Nyk7LW1zLXRyYW5zZm9ybTpzY2FsZVkoLjY2Nyk7dHJhbnNmb3JtOnNjYWxlWSguNjY3KX0ueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXIgLnl0cC10aW1lZC1tYXJrZXJzLWNvbnRhaW5lcnstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoMS44KTstbXMtdHJhbnNmb3JtOnNjYWxlWSgxLjgpO3RyYW5zZm9ybTpzY2FsZVkoMS44KTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dG9wOi0ycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyIC55dHAtdGltZWQtbWFya2Vycy1jb250YWluZXJ7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVZKDEuNjY3KTstbXMtdHJhbnNmb3JtOnNjYWxlWSgxLjY2Nyk7dHJhbnNmb3JtOnNjYWxlWSgxLjY2Nyk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3ZlciAueXRwLXRpbWVkLW1hcmtlci55dHAtdGltZWQtbWFya2VyLWhvdmVyLC55dHAtcHJvZ3Jlc3MtYmFyLWhvdmVyIC55dHAtdGltZWQtbWFya2VyLnl0cC10aW1lZC1tYXJrZXItaG92ZXJ7d2lkdGg6OXB4O2hlaWdodDozcHg7Ym90dG9tOjFweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXIgLnl0cC10aW1lZC1tYXJrZXIueXRwLXRpbWVkLW1hcmtlci1ob3ZlciwueXRwLWRlbGhpLW1vZGVybiAueXRwLXByb2dyZXNzLWJhci1ob3ZlciAueXRwLXRpbWVkLW1hcmtlci55dHAtdGltZWQtbWFya2VyLWhvdmVye3dpZHRoOjEycHg7aGVpZ2h0OjQuOHB4O2JvdHRvbTouNnB4fS55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpob3ZlciAueXRwLXRpbWVkLW1hcmtlcnt3aWR0aDo1cHg7aGVpZ2h0OjEuNjdweDtib3R0b206MS41cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyIC55dHAtdGltZWQtbWFya2Vye3dpZHRoOjZweDtoZWlnaHQ6Mi40cHg7Ym90dG9tOjJweH0ueXRwLXByb2dyZXNzLWJhci1zdGFydHtib3JkZXItcmFkaXVzOjNweCAwIDAgM3B4fS55dHAtcHJvZ3Jlc3MtYmFyLWVuZHtib3JkZXItcmFkaXVzOjAgM3B4IDNweCAwfS55dHAtcHJvZ3Jlc3MtYmFyLXN0YXJ0Lnl0cC1wcm9ncmVzcy1iYXItZW5ke2JvcmRlci1yYWRpdXM6M3B4fS55dHAtdGltZWQtbWFya2Vye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO3dpZHRoOjNweDtoZWlnaHQ6M3B4O2JvdHRvbToxcHg7Ym9yZGVyLXJhZGl1czo1MCU7b3BhY2l0eToxfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdGltZWQtbWFya2Vye2JvdHRvbToycHh9Lnl0cC1jbGlwLWVuZC1leGNsdWRlLC55dHAtY2xpcC1zdGFydC1leGNsdWRle2Rpc3BsYXk6bm9uZTt6LWluZGV4OjM3O2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1jbGlwLWVuZC1lbmFibGVkIC55dHAtY2xpcC1lbmQtZXhjbHVkZSwueXRwLWNsaXAtc3RhcnQtZW5hYmxlZCAueXRwLWNsaXAtc3RhcnQtZXhjbHVkZXtkaXNwbGF5OmJsb2NrfS55dHAtbG9vcC1yYW5nZS1lbmFibGVkIC55dHAtY2xpcC1lbmQsLnl0cC1sb29wLXJhbmdlLWVuYWJsZWQgLnl0cC1jbGlwLXN0YXJ0e3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1jbGlwLWhvdmVyIC55dHAtY2xpcC1lbmQtZXhjbHVkZSwueXRwLWNsaXAtaG92ZXIgLnl0cC1jbGlwLXN0YXJ0LWV4Y2x1ZGV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC41KTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1wcm9ncmVzcy1saW5lYXItbGl2ZS1idWZmZXJ7ei1pbmRleDo0NTtiYWNrZ3JvdW5kOiNjMDA7b3BhY2l0eTowfS55dHAtZW5hYmxlLWxpdmUtYnVmZmVyIC55dHAtcHJvZ3Jlc3MtbGluZWFyLWxpdmUtYnVmZmVye29wYWNpdHk6LjZ9Lnl0cC1hZC1wcm9ncmVzc3t6LWluZGV4OjM2O2JhY2tncm91bmQ6I2ZjMH0ueXRwLWxvYWQtcHJvZ3Jlc3N7ei1pbmRleDozMztiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjQpfS55dHAtbG9hZC1wcm9ncmVzcy55dHAtZmFzdC1sb2Fke2JhY2tncm91bmQ6IzAwODM4Zn0ueXRwLXBsYXktcHJvZ3Jlc3N7ei1pbmRleDozNDtiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLHJpZ2h0IHRvcCxjb2xvci1zdG9wKDgwJSwjZjAzKSx0bygjZmYyNzkxKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCNmMDMgODAlLCNmZjI3OTEpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNmMDMgODAlLCNmZjI3OTEpfS55cGMtbG9hZGVkIC55dHAtcGxheS1wcm9ncmVzcy55dHAtc3dhdGNoLWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZDojMjc5M2U2fS5hZC1pbnRlcnJ1cHRpbmcgLnl0cC1wbGF5LXByb2dyZXNzLnl0cC1zd2F0Y2gtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kOiNmYzB9Lnl0cC1ob3Zlci1wcm9ncmVzc3t6LWluZGV4OjM1O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMTI1KTtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1wcm9ncmVzcy1iYXItaG92ZXIgLnl0cC1ob3Zlci1wcm9ncmVzc3tvcGFjaXR5OjF9Lnl0cC1kZWxoaS1tb2Rlcm4uYWQtaW50ZXJydXB0aW5nIC55dHAtbG9hZC1wcm9ncmVzcywueXRwLWVuYWJsZS1saXZlLWJ1ZmZlciAueXRwLWhvdmVyLXByb2dyZXNzLC55dHAtZW5hYmxlLWxpdmUtYnVmZmVyIC55dHAtbG9hZC1wcm9ncmVzc3tvcGFjaXR5OjB9Lnl0cC1ob3Zlci1wcm9ncmVzcy1saWdodHtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjUpfS55dHAtMTVtLXByb2dyZXNzLC55dHAtMW0tcHJvZ3Jlc3MsLnl0cC0zMG0tcHJvZ3Jlc3MsLnl0cC02MG0tcHJvZ3Jlc3N7d2lkdGg6MXB4O2JhY2tncm91bmQ6IzAwMDt6LWluZGV4OjM2fS55dHAtMW0tcHJvZ3Jlc3N7aGVpZ2h0OjMwJX0ueXRwLTE1bS1wcm9ncmVzc3toZWlnaHQ6NTAlfS55dHAtMzBtLXByb2dyZXNze2hlaWdodDo1NSV9Lnl0cC02MG0tcHJvZ3Jlc3N7aGVpZ2h0OjYwJX0ueXRwLWNsaXAtZW5kLC55dHAtY2xpcC1zdGFydHtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTRweDtoZWlnaHQ6MTRweDtib3R0b206LTQuNXB4O21hcmdpbi1sZWZ0Oi03cHg7ei1pbmRleDo0NDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLjIxNDI4NTcxNDMpOy1tcy10cmFuc2Zvcm06c2NhbGVZKC4yMTQyODU3MTQzKTt0cmFuc2Zvcm06c2NhbGVZKC4yMTQyODU3MTQzKTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1iaWctbW9kZSAueXRwLWNsaXAtZW5kLC55dHAtYmlnLW1vZGUgLnl0cC1jbGlwLXN0YXJ0e3dpZHRoOjIxcHg7aGVpZ2h0OjIxcHg7Ym90dG9tOi02LjVweDttYXJnaW4tbGVmdDotMTAuNXB4Oy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSguMjM4MDk1MjM4KTstbXMtdHJhbnNmb3JtOnNjYWxlWSguMjM4MDk1MjM4KTt0cmFuc2Zvcm06c2NhbGVZKC4yMzgwOTUyMzgpfS55dHAtZHJhZyAueXRwLWNsaXAtZW5kLC55dHAtZHJhZyAueXRwLWNsaXAtc3RhcnQsLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVyOmhvdmVyOm5vdChbYXJpYS1kaXNhYmxlZD10cnVlXSkgLnl0cC1jbGlwLWVuZCwueXRwLXByb2dyZXNzLWJhci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLWNsaXAtc3RhcnQsLnl0cC10b3VjaC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtY2xpcC1lbmQsLnl0cC10b3VjaC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtY2xpcC1zdGFydHstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1jbGlwLWVuZCBzdmcsLnl0cC1jbGlwLXN0YXJ0IHN2Z3tkaXNwbGF5OmJsb2NrfS55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcntkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7Ym90dG9tOjQ3cHg7aGVpZ2h0OjVweH0ueXRwLWRlbGhpLW1vZGVybjpub3QoLnl0cC1wbGF5ZXItbWluaW1pemVkKSAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXJ7ei1pbmRleDo2MDtib3R0b206dmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCw3MnB4KTtoZWlnaHQ6NnB4fS55dHAteHNtYWxsLXdpZHRoLW1vZGUueXRwLWRlbGhpLW1vZGVybjpub3QoLnl0cC1wbGF5ZXItbWluaW1pemVkKSAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXJ7Ym90dG9tOnZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQteHNtYWxsLXdpZHRoLW1vZGUsNjRweCl9Lnl0cC1zbWFsbC1tb2RlIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcntib3R0b206MzZweDtoZWlnaHQ6NXB4fS55dHAtZW1iZWQgLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVye2JvdHRvbTozOXB4fS55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pe2N1cnNvcjpwb2ludGVyfS55dHAtYmlnLW1vZGUgLnl0cC1wcm9ncmVzcy1iYXItY29udGFpbmVye2JvdHRvbTo1Mi41cHg7aGVpZ2h0OjhweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGU6bm90KC55dHAteHNtYWxsLXdpZHRoLW1vZGUpIC55dHAtcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lcntib3R0b206dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCw5NnB4KX0ueXRwLXByb2dyZXNzLWJhcntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4OjMxO291dGxpbmU6bm9uZX0ueXRwLWhlYXQtbWFwLXBsYXllZF9iYXIueXRwLWhlYXQtbWFwLnl0cC1wcm9ncmVzcy1iYXItaG92ZXIgLnl0cC1wcm9ncmVzcy1iYXJ7b3BhY2l0eTowfS55dHAtbW9iaWxlIC55dHAtcHJvZ3Jlc3MtYmFye3BhZGRpbmctYm90dG9tOjEwcHh9Lnl0cC1wcm9ncmVzcy1iYXItcGFkZGluZ3twb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxNnB4O2JvdHRvbTowO3otaW5kZXg6Mjh9Lnl0cC1iaWctbW9kZSAueXRwLXByb2dyZXNzLWJhci1wYWRkaW5ne2hlaWdodDoyNHB4fS55dHAtY2hhcHRlci1ob3Zlci1jb250YWluZXI6aG92ZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLXByb2dyZXNzLWJhci1wYWRkaW5ne2hlaWdodDoyMnB4O2JvdHRvbTotNnB4fS55dHAtYmlnLW1vZGU6bm90KC55dHAtdG91Y2gtbW9kZSkgLnl0cC1jaGFwdGVyLWhvdmVyLWNvbnRhaW5lcjpob3Zlcjpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pIC55dHAtcHJvZ3Jlc3MtYmFyLXBhZGRpbmd7aGVpZ2h0OjMzcHg7Ym90dG9tOi05cHh9Lnl0cC10b3VjaC1tb2RlIC55dHAtY2hhcHRlci1ob3Zlci1jb250YWluZXI6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKSAueXRwLXByb2dyZXNzLWJhci1wYWRkaW5ne2hlaWdodDo0MHB4O2JvdHRvbTotMTFweH1AcHJvcGVydHkgLS1zZWVrLXNjcnViYmVyLXdpZHRoe3N5bnRheDoiPGxlbmd0aD4iO2luaXRpYWwtdmFsdWU6MDtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS1zY3J1YmJlci1jb250YWluZXIteHtzeW50YXg6IjxsZW5ndGg+Ijtpbml0aWFsLXZhbHVlOjA7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tcHJvZ3Jlc3Mtd2lkdGh7c3ludGF4OiI8bGVuZ3RoPiI7aW5pdGlhbC12YWx1ZTowO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXByb2dyZXNzLWxlZnQtYnVmZmVye3N5bnRheDoiPGxlbmd0aD4iO2luaXRpYWwtdmFsdWU6MDtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS1wcm9ncmVzcy1yaWdodC1idWZmZXJ7c3ludGF4OiI8bGVuZ3RoPiI7aW5pdGlhbC12YWx1ZTowO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXVuaWZpZWQtc2Vlay1vZmZzZXQteHtzeW50YXg6IjxsZW5ndGg+Ijtpbml0aWFsLXZhbHVlOjA7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdW5pZmllZC1zZWVrLXNjcnViYmVyLXNjYWxle3N5bnRheDoiPG51bWJlcj4iO2luaXRpYWwtdmFsdWU6MTtpbmhlcml0czpmYWxzZX0ueXRwLXVuaWZpZWQtc2Vlay13cmFwcGVyey0tcHJvZ3Jlc3Mtd2lkdGg6MHB4Oy0tcHJvZ3Jlc3MtbGVmdC1idWZmZXI6MHB4Oy0tcHJvZ3Jlc3MtcmlnaHQtYnVmZmVyOjBweDstLXNlZWstc2NydWJiZXItd2lkdGg6MHB4Oy0tdW5pZmllZC1zZWVrLXNjcnViYmVyLXNjYWxlOjE7LS1zY3J1YmJlci1jb250YWluZXIteDowcHg7LS1oYWxmLXdpZHRoOmNhbGModmFyKC0tc2Vlay1zY3J1YmJlci13aWR0aCwgMHB4KSowLjUpOy0taGFsZi1oZWlnaHQ6bWluKHZhcigtLWhhbGYtd2lkdGgpLDIwcHgpOy0tdW5pZmllZC1zZWVrLW9mZnNldC14OmNhbGMobWF4KDBweCwKICAgICAgICAodmFyKC0taGFsZi13aWR0aCkgKiB2YXIoLS11bmlmaWVkLXNlZWstc2NydWJiZXItc2NhbGUpKSAtIHZhcigKICAgICAgICAgICAgLS1zY3J1YmJlci1jb250YWluZXIteAogICAgICAgICAgKSAtIHZhcigtLXByb2dyZXNzLWxlZnQtYnVmZmVyKSkgKyBtaW4oMHB4LAogICAgICAgIHZhcigtLXByb2dyZXNzLXdpZHRoKSArIHZhcigtLXByb2dyZXNzLXJpZ2h0LWJ1ZmZlcikgLSB2YXIoLS1zY3J1YmJlci1jb250YWluZXIteCkgLSAodmFyKC0taGFsZi13aWR0aCkgKiB2YXIoLS11bmlmaWVkLXNlZWstc2NydWJiZXItc2NhbGUpKSkpfS55dHAtdW5pZmllZC1zZWVrLWFjdGl2ZSAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItYnV0dG9uLC55dHAtdW5pZmllZC1zZWVrLXdyYXBwZXJ7b3BhY2l0eTowfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpuby1wcmVmZXJlbmNlKXsueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItY29udGFpbmVyIC55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWJ1dHRvbiwueXRwLXVuaWZpZWQtc2Vlay13cmFwcGVyey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX19Lnl0cC11bmlmaWVkLXNlZWstY29udGVudHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MCAxNnB4O2hlaWdodDoxMDAlfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpuby1wcmVmZXJlbmNlKXsueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC11bmlmaWVkLXNlZWstd3JhcHBlcnstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9fS55dHAtdW5pZmllZC1zZWVrLWFjdGl2ZSAueXRwLXVuaWZpZWQtc2Vlay13cmFwcGVye29wYWNpdHk6MTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjQ2O21hcmdpbjowO3dpZHRoOi13ZWJraXQtbWF4LWNvbnRlbnQ7d2lkdGg6LW1vei1tYXgtY29udGVudDt3aWR0aDptYXgtY29udGVudDtoZWlnaHQ6NDBweDtib3JkZXItcmFkaXVzOjIwcHg7b3ZlcmZsb3c6aGlkZGVuO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC1jbGlwLXBhdGg6aW5zZXQoY2FsYyg1MCUgLSBtaW4odmFyKC0taGFsZi13aWR0aCksIHZhcigtLWhhbGYtaGVpZ2h0KSkpIGNhbGMoNTAlIC0gdmFyKC0taGFsZi13aWR0aCkpIHJvdW5kIG1pbih2YXIoLS1oYWxmLXdpZHRoKSx2YXIoLS1oYWxmLWhlaWdodCkpKTtjbGlwLXBhdGg6aW5zZXQoY2FsYyg1MCUgLSBtaW4odmFyKC0taGFsZi13aWR0aCksIHZhcigtLWhhbGYtaGVpZ2h0KSkpIGNhbGMoNTAlIC0gdmFyKC0taGFsZi13aWR0aCkpIHJvdW5kIG1pbih2YXIoLS1oYWxmLXdpZHRoKSx2YXIoLS1oYWxmLWhlaWdodCkpKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoY2FsYygtNTAlICsgdmFyKC0tdW5pZmllZC1zZWVrLW9mZnNldC14KSksLTUwJSkgc2NhbGUodmFyKC0tdW5pZmllZC1zZWVrLXNjcnViYmVyLXNjYWxlKSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUoY2FsYygtNTAlICsgdmFyKC0tdW5pZmllZC1zZWVrLW9mZnNldC14KSksLTUwJSkgc2NhbGUodmFyKC0tdW5pZmllZC1zZWVrLXNjcnViYmVyLXNjYWxlKSk7dHJhbnNmb3JtOnRyYW5zbGF0ZShjYWxjKC01MCUgKyB2YXIoLS11bmlmaWVkLXNlZWstb2Zmc2V0LXgpKSwtNTAlKSBzY2FsZSh2YXIoLS11bmlmaWVkLXNlZWstc2NydWJiZXItc2NhbGUpKTtmb250LWZhbWlseTpZb3VUdWJlIE5vdG8sUm9ib3RvLGFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjI2cHg7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxyaWdodCB0b3AsY29sb3Itc3RvcCg4MCUsI2YwMyksdG8oI2ZmMjc5MSkpO2JhY2tncm91bmQ6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwjZjAzIDgwJSwjZmYyNzkxKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZjAzIDgwJSwjZmYyNzkxKX0ueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC11bmlmaWVkLXNlZWstd3JhcHBlciAueXRwLXVuaWZpZWQtc2Vlay1pY29uLWxlZnQtd3JhcHBlcjpub3QoOmVtcHR5KT4ueXRwLXVuaWZpZWQtc2Vlay1pY29ue21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWxlZnQ6LTZweH0ueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC11bmlmaWVkLXNlZWstd3JhcHBlciAueXRwLXVuaWZpZWQtc2Vlay1pY29uLXJpZ2h0LXdyYXBwZXI6bm90KDplbXB0eSk+Lnl0cC11bmlmaWVkLXNlZWstaWNvbnttYXJnaW4tbGVmdDo2cHg7bWFyZ2luLXJpZ2h0Oi02cHh9Lnl0cC11bmlmaWVkLXNlZWstYWN0aXZlIC55dHAtdW5pZmllZC1zZWVrLXdyYXBwZXIgLnl0cC11bmlmaWVkLXNlZWstaWNvbi1yaWdodC13cmFwcGVyOm5vdCg6ZW1wdHkpe2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7aGVpZ2h0OjEwMCU7d2lkdGg6MjRweH0ueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC11bmlmaWVkLXNlZWstd3JhcHBlciAueXRwLXVuaWZpZWQtc2Vlay1pY29uLWxlZnQtd3JhcHBlcjplbXB0eSwueXRwLXVuaWZpZWQtc2Vlay1hY3RpdmUgLnl0cC11bmlmaWVkLXNlZWstd3JhcHBlciAueXRwLXVuaWZpZWQtc2Vlay1pY29uLXJpZ2h0LXdyYXBwZXI6ZW1wdHl7ZGlzcGxheTpub25lfS55dHAtdW5pZmllZC1zZWVrLXNocmlua2luZyAueXRwLXVuaWZpZWQtc2Vlay13cmFwcGVye29wYWNpdHk6MH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246bm8tcHJlZmVyZW5jZSl7Lnl0cC11bmlmaWVkLXNlZWstc2hyaW5raW5nIC55dHAtdW5pZmllZC1zZWVrLXdyYXBwZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfX0ueXRwLXVuaWZpZWQtc2Vlay1zaHJpbmtpbmcgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItY29udGFpbmVyIC55dHAtZGVjb3JhdGVkLXNjcnViYmVyLWJ1dHRvbntvcGFjaXR5OjF9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOm5vLXByZWZlcmVuY2Upey55dHAtdW5pZmllZC1zZWVrLXNocmlua2luZyAueXRwLWRlY29yYXRlZC1zY3J1YmJlci1jb250YWluZXIgLnl0cC1kZWNvcmF0ZWQtc2NydWJiZXItYnV0dG9uey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX19Lnl0cC1wcm9tb3Rvb2x0aXAtd3JhcHBlcnttYXJnaW46MDtwYWRkaW5nOjA7Ym9yZGVyOjA7ZGlzcGxheTpibG9jazt3aWR0aDozMDBweDtoZWlnaHQ6MTQwcHg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDAzfS55dHAtZnVsbHNjcmVlbiAueXRwLXByb21vdG9vbHRpcC13cmFwcGVye3dpZHRoOjQ1MHB4O2hlaWdodDoyMTBweH0ueXRwLXByb21vdG9vbHRpcC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0O2NvbG9yOiNmZmY7Zm9udC1zaXplOjExMCU7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjIwcHg7dGV4dC10cmFuc2Zvcm06bm9uZTtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1wcm9tb3Rvb2x0aXAtY29udGVudHtwYWRkaW5nOjE2cHggMTZweCA0cHh9Lnl0cC1mdWxsc2NyZWVuIC55dHAtcHJvbW90b29sdGlwLWNvbnRlbnR7cGFkZGluZzoyNHB4IDI0cHggNnB4fS55dHAtcHJvbW90b29sdGlwLXRpdGxle21hcmdpbi1ib3R0b206OHB4O2ZvbnQtc2l6ZToxMjAlO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxNnB4fS55dHAtZnVsbHNjcmVlbiAueXRwLXByb21vdG9vbHRpcC10aXRsZXttYXJnaW4tYm90dG9tOjEycHg7bGluZS1oZWlnaHQ6MjRweH0ueXRwLXByb21vdG9vbHRpcC1idXR0b25ze3BhZGRpbmc6OHB4IDRweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1wYWNrOmVuZDstd2Via2l0LWp1c3RpZnktY29udGVudDpmbGV4LWVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lnl0cC1mdWxsc2NyZWVuIC55dHAtcHJvbW90b29sdGlwLWJ1dHRvbnN7cGFkZGluZzoxMnB4IDZweH0ueXRwLXByb21vdG9vbHRpcC1hY2NlcHQtYnV0dG9uLC55dHAtcHJvbW90b29sdGlwLWRpc21pc3MtYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtc2l6ZToxMjAlO2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nOjEwcHggMTZweDtjdXJzb3I6cG9pbnRlcn0ueXRwLWZ1bGxzY3JlZW4gLnl0cC1wcm9tb3Rvb2x0aXAtYWNjZXB0LWJ1dHRvbiwueXRwLWZ1bGxzY3JlZW4gLnl0cC1wcm9tb3Rvb2x0aXAtZGlzbWlzcy1idXR0b257cGFkZGluZzoxNXB4IDI0cHh9Lnl0cC1wcm9tb3Rvb2x0aXAtcG9pbnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlci1zdHlsZTpzb2xpZDt0b3A6MTAwJTtib3JkZXItd2lkdGg6MTJweDtib3JkZXItY29sb3I6IzA2NWZkNCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudH0ueXRwLWZ1bGxzY3JlZW4gLnl0cC1wcm9tb3Rvb2x0aXAtcG9pbnRlcntib3JkZXItd2lkdGg6MThweH0ueXRwLXByb21vdG9vbHRpcC1kZXRhaWxzLWljb257d2lkdGg6MThweH0ueXRwLXByb21vdG9vbHRpcC1kZXRhaWxzLWljb24gc3Zne2hlaWdodDoyMnB4O3dpZHRoOjIycHg7bWFyZ2luOi03cHggLTVweH0ueXRwLWZ1bGxzY3JlZW4gLnl0cC1wcm9tb3Rvb2x0aXAtZGV0YWlscy1pY29ue3dpZHRoOjIycHh9Lnl0cC1mdWxsc2NyZWVuIC55dHAtcHJvbW90b29sdGlwLWRldGFpbHMtaWNvbiBzdmd7aGVpZ2h0OjMwcHg7d2lkdGg6MzBweDttYXJnaW46LTlweCAtN3B4fS55dHAtcmVtb3Rle2xlZnQ6MDtib3R0b206NjFweDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLWVtYmVkIC55dHAtcmVtb3Rle2JvdHRvbTo1M3B4fS55dHAtcmVtb3RlW2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246Ym90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1iaWctbW9kZSAueXRwLXJlbW90ZXtib3R0b206NzBweH0ueXRwLWhpZGUtY29udHJvbHMgLnl0cC1yZW1vdGV7Ym90dG9tOjEycHg7LXdlYmtpdC10cmFuc2l0aW9uOmJvdHRvbSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtcmVtb3RlLWRpc3BsYXktc3RhdHVze3otaW5kZXg6MTU7cG9zaXRpb246YWJzb2x1dGU7bGVmdDoxMnB4O2JvdHRvbTo2MXB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7cGFkZGluZy1yaWdodDo1cHg7Ym9yZGVyLXJhZGl1czo1cHg7b3BhY2l0eTouODV9Lnl0cC1lbWJlZCAueXRwLXJlbW90ZS1kaXNwbGF5LXN0YXR1c3tib3R0b206NTNweH0ueXRwLWJpZy1tb2RlIC55dHAtcmVtb3RlLWRpc3BsYXktc3RhdHVze2JvdHRvbTo3MHB4fS55dHAtcmVtb3RlLWRpc3BsYXktc3RhdHVzLWljb257ZmxvYXQ6bGVmdDt3aWR0aDo0MHB4O2hlaWdodDo0MHB4fS55dHAtYmlnLW1vZGUgLnl0cC1yZW1vdGUtZGlzcGxheS1zdGF0dXMtaWNvbnt3aWR0aDo2MHB4O2hlaWdodDo2MHB4fS55dHAtcmVtb3RlLWRpc3BsYXktc3RhdHVzLXRleHR7dGV4dC1zaGFkb3c6MCAwIDJweCByZ2JhKDAsMCwwLC41KTtwYWRkaW5nLXRvcDoxMHB4O3BhZGRpbmctbGVmdDo1cHg7Zm9udC1zaXplOjEzMCU7Zm9udC13ZWlnaHQ6NTAwO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHAtYmlnLW1vZGUgLnl0cC1yZW1vdGUtZGlzcGxheS1zdGF0dXMtdGV4dHtwYWRkaW5nLXRvcDoxNXB4O2xlZnQ6MTA1cHh9Lnl0cC1iaWctbW9kZSAueXRwLXJlbW90ZS1kaXNwbGF5LXN0YXR1cy10ZXh0e3RvcDozMHB4fS55dHAtcmVwbGF5LWJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTtib3R0b206MDttYXJnaW4tbGVmdDotMjRweDt6LWluZGV4OjU5fS55dHAtZW1iZWQgLnl0cC1yZXBsYXktYnV0dG9ue2JvdHRvbTo0cHg7bWFyZ2luLWxlZnQ6LTIwcHh9Lnl0cC1iaWctbW9kZSAueXRwLXJlcGxheS1idXR0b257Ym90dG9tOjcuNXB4O21hcmdpbi1sZWZ0Oi0yN3B4fS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLXJlcGxheS1idXR0b257Ym90dG9tOjEwcHh9Lnl0cC1iaWctbW9kZS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLXJlcGxheS1idXR0b257Ym90dG9tOjI0LjVweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLXBsYXktYnV0dG9ue21hcmdpbi1sZWZ0OjhweH0ueXRwLWRlbGhpLW1vZGVybi55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLWJ1dHRvbi55dHAtYXV0b25hdi10b2dnbGV7cGFkZGluZy1sZWZ0OjB9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC12b2x1bWUtYXJlYXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dHAtZGVsaGktbW9kZXJuLnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtdm9sdW1lLWFyZWE6aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ueXRwLWRlbGhpLW1vZGVybi55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLXRpbWUtd3JhcHBlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BhZGRpbmc6MCA0cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1jaGFwdGVyLXRpdGxlLnl0cC1idXR0b257YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ueXRwLWRlbGhpLW1vZGVybi55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXJpZ2h0LWNvbnRyb2xze2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1wbGF5LWJ1dHRvbjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dHAtZGVsaGktbW9kZXJuLnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtdGltZS13cmFwcGVyOm5vdCgueXRwLW1pbmlwbGF5ZXItdWkgKik6aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ueXRwLWRlbGhpLW1vZGVybi55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLWNoYXB0ZXItdGl0bGUueXRwLWJ1dHRvbjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dHAtZGVsaGktbW9kZXJuLnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtcmlnaHQtY29udHJvbHMgLnl0cC1idXR0b246aG92ZXI6YmVmb3Jle2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1uZXh0LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kik6aG92ZXI6YWZ0ZXIsLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1wcmV2LWJ1dHRvbjpub3QoLnl0cC1taW5pcGxheWVyLWJ1dHRvbi1jb250YWluZXI+Kik6aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b217cGFkZGluZzowOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAwIDAgcmdiYSgyMjcsMjI3LDIyNywuNSk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAwIDAgcmdiYSgyMjcsMjI3LDIyNywuNSk7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKHJnYigxOSwxOSwxOSkpLHRvKHJnYig1Miw1Miw1MikpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSxyZ2IoMTksMTksMTkpLHJnYig1Miw1Miw1MikpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDBkZWcscmdiKDE5LDE5LDE5KSxyZ2IoNTIsNTIsNTIpKX0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLXByb2dyZXNzLWJhci1jb250YWluZXJ7aGVpZ2h0OjhweDtiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgdG9wLGxlZnQgYm90dG9tLGNvbG9yLXN0b3AoNTAlLHJnYmEoMCwwLDAsMCkpLHRvKHJnYigxOSwxOSwxOSkpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2JhKDAsMCwwLDApIDUwJSxyZ2IoMTksMTksMTkpKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgwLDAsMCwwKSA1MCUscmdiKDE5LDE5LDE5KSl9Lnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC1wcm9ncmVzcy1saXN0e2JhY2tncm91bmQ6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsbGVmdCB0b3AsbGVmdCBib3R0b20sZnJvbShyZ2IoNjgsNjgsNjgpKSx0byhyZ2IoOTUsOTUsOTUpKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AscmdiKDY4LDY4LDY4KSxyZ2IoOTUsOTUsOTUpKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiKDY4LDY4LDY4KSxyZ2IoOTUsOTUsOTUpKX0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLXBsYXktcHJvZ3Jlc3N7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKHJnYigxOTQsMCwwKSksdG8ocmdiKDIzMCw2LDYpKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20scmdiKDE5NCwwLDApLHJnYigyMzAsNiw2KSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMGRlZyxyZ2IoMTk0LDAsMCkscmdiKDIzMCw2LDYpKX0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLXNjcnViYmVyLWJ1dHRvbntoZWlnaHQ6OHB4O3dpZHRoOjhweDtib3JkZXItcmFkaXVzOjhweDtib3JkZXI6NHB4IHNvbGlkIHJnYigyNTUsMjU1LDI1NSk7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKHJnYigxMzcsMTM3LDEzNykpLHRvKHJnYigxODYsMTg2LDE4NikpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSxyZ2IoMTM3LDEzNywxMzcpLHJnYigxODYsMTg2LDE4NikpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDBkZWcscmdiKDEzNywxMzcsMTM3KSxyZ2IoMTg2LDE4NiwxODYpKTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC1jaHJvbWUtYm90dG9tIC55dHAtYnV0dG9uOm5vdCgueXRwLWNoYXB0ZXItdGl0bGUpe2JvcmRlci1yaWdodDoxcHggc29saWQgYmxhY2s7LXdlYmtpdC1ib3gtc2hhZG93OjFweCAwIHJnYmEoMjI3LDIyNywyMjcsLjIpO2JveC1zaGFkb3c6MXB4IDAgcmdiYSgyMjcsMjI3LDIyNywuMik7b3BhY2l0eTouOX0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1idXR0b24ueXRwLWF1dG9uYXYtdG9nZ2xle2JvcmRlci1sZWZ0OjFweCBzb2xpZCBibGFjaztwYWRkaW5nLWxlZnQ6NHB4Oy13ZWJraXQtYm94LXNoYWRvdzoxcHggMCByZ2JhKDIyNywyMjcsMjI3LC4yKSxpbnNldCAxcHggMCByZ2JhKDIyNywyMjcsMjI3LC4yKTtib3gtc2hhZG93OjFweCAwIHJnYmEoMjI3LDIyNywyMjcsLjIpLGluc2V0IDFweCAwIHJnYmEoMjI3LDIyNywyMjcsLjIpfS55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtY2hyb21lLWJvdHRvbSAueXRwLXRpbWUtZGlzcGxheXtwYWRkaW5nLWxlZnQ6MTBweH0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLWNocm9tZS1ib3R0b20gLnl0cC1idXR0b246YWN0aXZlOmZvY3VzLC55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtc3VidGl0bGVzLWJ1dHRvblthcmlhLXByZXNzZWQ9dHJ1ZV17YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxsZWZ0IGJvdHRvbSxmcm9tKHJnYigxOSwxOSwxOSkpLHRvKHJnYig1Miw1Miw1MikpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCxyZ2IoMTksMTksMTkpLHJnYig1Miw1Miw1MikpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2IoMTksMTksMTkpLHJnYig1Miw1Miw1MikpfS55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtdm9sdW1lLXBhbmVsLnl0cC12b2x1bWUtY29udHJvbC1ob3ZlcnttYXJnaW4tbGVmdDo4cHh9Lnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC12b2x1bWUtc2xpZGVyLWhhbmRsZTpiZWZvcmV7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKHJnYigxOTQsMCwwKSksdG8ocmdiKDIzMCw2LDYpKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20scmdiKDE5NCwwLDApLHJnYigyMzAsNiw2KSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMGRlZyxyZ2IoMTk0LDAsMCkscmdiKDIzMCw2LDYpKTttYXJnaW4tbGVmdDotNnB4fS55dHAtcmV0cm8tcGxheWVyOm5vdCguYWQtc2hvd2luZyk6bm90KC5hZC1pbnRlcnJ1cHRpbmcpIC55dHAtYmV6ZWx7Ym9yZGVyLXJhZGl1czp1bnNldDtiYWNrZ3JvdW5kOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLGxlZnQgYm90dG9tLGxlZnQgdG9wLGZyb20ocmdiKDE5LDE5LDE5KSksdG8ocmdiKDUyLDUyLDUyKSkpO2JhY2tncm91bmQ6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQoYm90dG9tLHJnYigxOSwxOSwxOSkscmdiKDUyLDUyLDUyKSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMGRlZyxyZ2IoMTksMTksMTkpLHJnYig1Miw1Miw1MikpOy13ZWJraXQtYW5pbWF0aW9uOmJlemVsLWZhZGUtaW4gMXMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSkgMSBub3JtYWwgZm9yd2FyZHM7YW5pbWF0aW9uOmJlemVsLWZhZGUtaW4gMXMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSkgMSBub3JtYWwgZm9yd2FyZHN9QC13ZWJraXQta2V5ZnJhbWVzIGJlemVsLWZhZGUtaW57MCV7b3BhY2l0eTowfTI1JSw3NSV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDIpO3RyYW5zZm9ybTpzY2FsZSgyKX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfX1Aa2V5ZnJhbWVzIGJlemVsLWZhZGUtaW57MCV7b3BhY2l0eTowfTI1JSw3NSV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDIpO3RyYW5zZm9ybTpzY2FsZSgyKX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfX0ueXRwLXJldHJvLXBsYXllcjpub3QoLmFkLXNob3dpbmcpOm5vdCguYWQtaW50ZXJydXB0aW5nKSAueXRwLXRvb2x0aXAtYmcsLnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC10b29sdGlwLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKXtib3JkZXItcmFkaXVzOjB9Lnl0cC1yZXRyby1wbGF5ZXI6bm90KC5hZC1zaG93aW5nKTpub3QoLmFkLWludGVycnVwdGluZykgLnl0cC10b29sdGlwLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKXstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMXB4IDFweCByZ2JhKDIyNywyMjcsMjI3LC4yKTtib3gtc2hhZG93Omluc2V0IDFweCAxcHggcmdiYSgyMjcsMjI3LDIyNywuMik7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IGJvdHRvbSxsZWZ0IHRvcCxmcm9tKHJnYigxOSwxOSwxOSkpLHRvKHJnYig1Miw1Miw1MikpKTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSxyZ2IoMTksMTksMTkpLHJnYig1Miw1Miw1MikpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDBkZWcscmdiKDE5LDE5LDE5KSxyZ2IoNTIsNTIsNTIpKX0ueXRwLXNldHRpbmdzLWJ1dHRvbntwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLXNldHRpbmdzLWJ1dHRvbiBzdmd7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtc2V0dGluZ3MtYnV0dG9uW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gc3Zney13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgzMGRlZyk7LW1zLXRyYW5zZm9ybTpyb3RhdGUoMzBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMzBkZWcpfS55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZS1ncmV5OmFmdGVyLC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNWstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtOGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGQtcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGRyLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtyaWdodDo1cHg7aGVpZ2h0OjlweDt3aWR0aDoxM3B4O2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1yZWQtaW5kaWNhdG9yLCNlMTAwMmQpO2JvcmRlci1yYWRpdXM6MXB4O2xpbmUtaGVpZ2h0Om5vcm1hbH0ueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM2NjZ9Lnl0cC1jb2xvci13aGl0ZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlciwueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC00ay1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtY29sb3Itd2hpdGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTVrLXF1YWxpdHktYmFkZ2U6YWZ0ZXIsLnl0cC1jb2xvci13aGl0ZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtOGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC1oZC1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtY29sb3Itd2hpdGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkci1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2RkZH0ueXRwLWNvbG9yLXBhcnR5IC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZS1ncmV5OmFmdGVyLC55dHAtY29sb3ItcGFydHkgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTNkLWJhZGdlOmFmdGVyLC55dHAtY29sb3ItcGFydHkgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTRrLXF1YWxpdHktYmFkZ2U6YWZ0ZXIsLnl0cC1jb2xvci1wYXJ0eSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNWstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXBhcnR5IC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC04ay1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtY29sb3ItcGFydHkgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkLXF1YWxpdHktYmFkZ2U6YWZ0ZXIsLnl0cC1jb2xvci1wYXJ0eSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGRyLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246eXRwLXBhcnR5LWJhY2tncm91bmQtY29sb3IgLjFzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246eXRwLXBhcnR5LWJhY2tncm91bmQtY29sb3IgLjFzIGxpbmVhciBpbmZpbml0ZX0ueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGQtcXVhbGl0eS1iYWRnZTphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeE15QTVJajQ4Y0dGMGFDQm1hV3hzTFc5d1lXTnBkSGs5SWk0Mk5EY2lJR1pwYkd3dGNuVnNaVDBpWlhabGJtOWtaQ0lnWkQwaVRUVWdOMmd4ZGpGSU5YcHROUzAwZGpGSU9GWXplazB6SURaV05XZ3lkakY2VFRJZ04yZ3hkakZJTW5wdE5TQXdhRE4yTVVnM2VtMHpMVEZvTVhZeGFDMHhlaUl2UGp4d1lYUm9JR1pwYkd3OUlpTm1abVlpSUdacGJHd3RjblZzWlQwaVpYWmxibTlrWkNJZ1pEMGlUVFVnTjFZMVNETjJNa2d5VmpKb01YWXlhREpXTW1neGRqVjZiVFl0TVdndE1YWXhTRGRXTW1nemRqRm9NWHB0TFRFdE1sWXpTRGgyTTJneWVpSXZQand2YzNablBnPT0pfS55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC1oZHItcXVhbGl0eS1iYWRnZTphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeE5DQTJJajQ4Y0dGMGFDQm1hV3hzTFc5d1lXTnBkSGs5SWk0Mk5EY2lJR1E5SWsweklEVm9NWFl4U0RONmJUVXROSFl4U0RaV01YcE5NU0EwVmpOb01uWXhlazB3SURWb01YWXhTREI2YlRVZ01HZ3pkakZJTlhwdE15MHhhREYyTVVnNGVpSXZQanh3WVhSb0lHWnBiR3c5SWlObVptWWlJR1E5SWsweklEVldNMGd4ZGpKSU1GWXdhREYyTW1neVZqQm9NWFkxZW0wMkxURklPSFl4U0RWV01HZ3pkakZvTVhwTk9DQXlWakZJTm5ZemFESjZJaTgrUEhCaGRHZ2dabWxzYkMxdmNHRmphWFI1UFNJdU5qUTNJaUJrUFNKTk1UTWdNbWd4ZGpGb0xURjZiVEFnTTJneGRqRm9MVEY2YlMweUxUSm9Nbll4YUMweWVtMHRNU0F5YURGMk1XZ3RNWHB0TVMwMGFESjJNV2d0TW5vaUx6NDhjR0YwYUNCbWFXeHNQU0lqWm1abUlpQmtQU0pOTVRRZ00zWXlhQzB4VmpONmJTMHpMVE5vTW5ZeGFDMHlkakZvTW5ZeGFDMHlkakpvTFRGV01IcHRNaUF3YURGMk1tZ3RNWG9pTHo0OEwzTjJaejQ9KTtoZWlnaHQ6NnB4O3dpZHRoOjE0cHg7cmlnaHQ6M3B4O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6I2UxMDAyZDtib3JkZXItd2lkdGg6MXB4fS55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC00ay1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TXlBNUlqNDhjR0YwYUNCbWFXeHNMVzl3WVdOcGRIazlJaTQyTkRjaUlHWnBiR3d0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRFd0lEUm9NWFl4YUMweGVtMHdJRE5vTVhZeGFDMHhlazA0SURWb01uWXhTRGg2VFRjZ04yZ3hkakZJTjNwTk5TQTJhREYyTVVnMWVrMDBJRGRvTVhZeFNEUjZUVElnTm1neWRqRklNbnB0TVMweWFERjJNVWd6ZWlJdlBqeHdZWFJvSUdacGJHdzlJaU5tWm1ZaUlHWnBiR3d0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRFeElEVjJNbWd0TVZZMWVtMHRNU0F3U0RoMk1rZzNWakpvTVhZeWFESjZUVFFnTkVnemRqRm9NWHB0TUNBelZqWklNbFkwYURGV00yZ3hWakpvTVhZemFERjJNVWcxZGpGNmJUWXROV2d4ZGpKb0xURjZJaTgrUEM5emRtYyspfS55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC01ay1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TXlBNUlqNDhjR0YwYUNCbWFXeHNMVzl3WVdOcGRIazlJaTQyTkRjaUlHWnBiR3d0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRFd0lEUm9NWFl4YUMweGVtMHdJRE5vTVhZeGFDMHhlazA0SURWb01uWXhTRGg2VFRjZ04yZ3hkakZJTjNwTk5TQTJhREYyTVVnMWVrMHlJRGRvTTNZeFNESjZiVEF0TW1nemRqRklNbm9pTHo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHUTlJazB4TVNBMWRqSm9MVEZXTlhwdExURWdNRWc0ZGpKSU4xWXlhREYyTW1neWVtMHdMVE5vTVhZeWFDMHhlazB5SURab00zWXhTREp0TXkweWFERjJNVWcxYlRBdE1rZ3pWak5vTTFZeVNESjJNMmd6ZWlJdlBqd3ZjM1puUGc9PSl9Lnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLThrLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXhNeUE1SWo0OGNHRjBhQ0JtYVd4c0xXOXdZV05wZEhrOUlpNDJORGNpSUdacGJHd3RjblZzWlQwaVpYWmxibTlrWkNJZ1pEMGlUVEV3SURSb01YWXhhQzB4ZW0wd0lETm9NWFl4YUMweGVrMDRJRFZvTW5ZeFNEaDZUVGNnTjJneGRqRklOM3BOTlNBMmFERjJNVWcxZWsweklEVm9Nbll4U0RONmJUQXRNbWd5ZGpGSU0zcHRNaUF4YURGMk1VZzFlazB5SURSb01YWXhTREo2YlRBZ01tZ3hkakZJTW5wdE1TQXhhREoyTVVnemVpSXZQanh3WVhSb0lHWnBiR3c5SWlObVptWWlJR1pwYkd3dGNuVnNaVDBpWlhabGJtOWtaQ0lnWkQwaVRURXhJRFYyTW1ndE1WWTFlbTB0TVNBd1NEaDJNa2czVmpKb01YWXlhREo2YlRBdE0yZ3hkakpvTFRGNlRUTWdObWd5ZGpGSU0yMHdMVFZvTW5ZeFNETjZiVElnTTJneGRqRklOWHBOTXlBMGFESjJNVWd6ZW0weUxURm9NWFl4U0RWNlRUSWdOV2d4ZGpGSU1ucHRNQzB5YURGMk1VZ3llaUl2UGp3dmMzWm5QZz09KX0ueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlciwueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2U6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXhNeUE1SWo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCa1BTSk5NaUF5YURSMk5VZ3lWalpvTTFZMVNESldOR2d6VmpOSU1ucHROU0F3YUROMk1VZzRkak5vTW5ZeFNEZDZiVE1nTVdneGRqTm9MVEY2SWk4K1BIQmhkR2dnWm1sc2JDMXZjR0ZqYVhSNVBTSXVOalEzSWlCa1BTSk5NaUF6YUROMk1VZ3llbTAySURCb01uWXhTRGg2VFRJZ05XZ3pkakZJTW5wdE9DQXhhREYyTVdndE1YcE5NaUEzYURSMk1VZ3llbTAxSURCb00zWXhTRGQ2SWk4K1BDOXpkbWMrKX0ueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC1oZC1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TXlBNUlqNDhjR0YwYUNCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHUTlJazAxSURkV05VZ3pkakpJTWxZeWFERjJNbWd5VmpKb01YWTFlbTAyTFRGb0xURjJNVWczVmpKb00zWXhhREY2YlMweExUSldNMGc0ZGpOb01ub2lMejQ4TDNOMlp6ND0pfS55dHAtY29sb3Itd2hpdGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkci1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TkNBMUlqNDhjR0YwYUNCa1BTSk5NeUExVmpOSU1YWXlTREJXTUdneGRqSm9NbFl3YURGMk5YcHROaTB4U0RoMk1VZzFWakJvTTNZeGFERjZUVGdnTWxZeFNEWjJNMmd5ZWsweE5DQXpkakpvTFRGV00zcHRMVEVnTUdndE1uWXlhQzB4VmpCb01YWXlhREo2YlRBdE1tZ3RNMVl3YURSMk1tZ3RNWG9pTHo0OEwzTjJaejQ9KX0ueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC00ay1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TXlBNUlqNDhjR0YwYUNCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHUTlJazB4TVNBMWRqSm9MVEZXTlhwdExURWdNRWc0ZGpKSU4xWXlhREYyTW1neWVrMDBJRFJJTTNZeGFERjZiVEFnTTFZMlNESldOR2d4VmpOb01WWXlhREYyTTJneGRqRklOWFl4ZW0wMkxUVm9NWFl5YUMweGVpSXZQand2YzNablBnPT0pfS55dHAtY29sb3Itd2hpdGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTVrLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXhNeUE1SWo0OGNHRjBhQ0JtYVd4c0xYSjFiR1U5SW1WMlpXNXZaR1FpSUdROUlrMHhNU0ExZGpKb0xURldOWHB0TFRFZ01FZzRkakpJTjFZeWFERjJNbWd5ZW0wd0xUTm9NWFl5YUMweGVrMHlJRFpvTTNZeFNESnRNeTB5YURGMk1VZzFiVEF0TWtnelZqTm9NMVl5U0RKMk0yZ3plaUl2UGp3dmMzWm5QZz09KX0ueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC04ay1xdWFsaXR5LWJhZGdlOmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TXlBNUlqNDhjR0YwYUNCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHUTlJazB4TVNBMWRqSm9MVEZXTlhwdExURWdNRWc0ZGpKSU4xWXlhREYyTW1neWVtMHdMVE5vTVhZeWFDMHhlazB6SURab01uWXhTRE50TUMwMWFESjJNVWd6ZW0weUlETm9NWFl4U0RWNlRUTWdOR2d5ZGpGSU0zcHRNaTB4YURGMk1VZzFlazB5SURWb01YWXhTREo2YlRBdE1tZ3hkakZJTW5vaUx6NDhMM04yWno0PSl9Lnl0cC1jb2xvci13aGl0ZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlciwueXRwLWNvbG9yLXdoaXRlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZTphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeE15QTVJajQ4Y0dGMGFDQmtQU0pOTWlBeWFEUjJOVWd5Vmpab00xWTFTREpXTkdnelZqTklNbnB0TlNBd2FETjJNVWc0ZGpOb01uWXhTRGQ2YlRNZ01XZ3hkak5vTFRGNklpOCtQQzl6ZG1jKyl9Lnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlciwueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZTphZnRlciwueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC00ay1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTVrLXF1YWxpdHktYmFkZ2U6YWZ0ZXIsLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtOGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC1oZC1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkci1xdWFsaXR5LWJhZGdlOmFmdGVye3RvcDoxNXB4O3JpZ2h0OjZweDtwYWRkaW5nOjJweDtmb250LWZhbWlseTpWZXJkYW5hLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEwcHg7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiNmZmY7dGV4dC1zaGFkb3c6MCAycHggMCByZ2JhKDAsMCwwLC42KTtiYWNrZ3JvdW5kLWltYWdlOm5vbmU7Ym9yZGVyLXJhZGl1czoxLjVweDtoZWlnaHQ6YXV0bzt3aWR0aDphdXRvfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtM2QtYmFkZ2UtZ3JleTphZnRlciwueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTNkLWJhZGdlOmFmdGVyLC55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTVrLXF1YWxpdHktYmFkZ2U6YWZ0ZXIsLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC04ay1xdWFsaXR5LWJhZGdlOmFmdGVyLC55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGQtcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkci1xdWFsaXR5LWJhZGdlOmFmdGVye3RvcDo0cHg7cmlnaHQ6NHB4fS55dHAtY29sb3Itd2hpdGUueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZS1ncmV5OmFmdGVyLC55dHAtY29sb3Itd2hpdGUueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtNWstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtOGstcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGQtcXVhbGl0eS1iYWRnZTphZnRlciwueXRwLWNvbG9yLXdoaXRlLnl0cC1iaWctbW9kZSAueXRwLXNldHRpbmdzLWJ1dHRvbi55dHAtaGRyLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7Y29sb3I6IzAwMDt0ZXh0LXNoYWRvdzpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkLXF1YWxpdHktYmFkZ2U6YWZ0ZXJ7Y29udGVudDoiSEQifS55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLWhkci1xdWFsaXR5LWJhZGdlOmFmdGVye2NvbnRlbnQ6IkhEUiI7Zm9udC1zaXplOjhweH0ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC00ay1xdWFsaXR5LWJhZGdlOmFmdGVye2NvbnRlbnQ6IjRLIn0ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC01ay1xdWFsaXR5LWJhZGdlOmFmdGVye2NvbnRlbnQ6IjVLIn0ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC04ay1xdWFsaXR5LWJhZGdlOmFmdGVye2NvbnRlbnQ6IjhLIn0ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtYnV0dG9uLnl0cC0zZC1iYWRnZS1ncmV5OmFmdGVyLC55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1idXR0b24ueXRwLTNkLWJhZGdlOmFmdGVye2NvbnRlbnQ6IjNEIn0ueXRwLWdlbmVyaWMtcG9wdXB7dG9wOjA7bGVmdDowO3BhZGRpbmc6NXB4IDlweDttYXgtd2lkdGg6MTQ0cHg7ei1pbmRleDo3Mn0ueXRwLWJpZy1tb2RlIC55dHAtZ2VuZXJpYy1wb3B1cHttYXgtd2lkdGg6MjE2cHh9Lmh0bWw1LXZpZGVvLXBsYXllciAueXRwLWdlbmVyaWMtcG9wdXAgYXt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS55dHAtcG9wdXB7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6cmdiYSgyOCwyOCwyOCwuOSk7dGV4dC1zaGFkb3c6MCAwIDJweCByZ2JhKDAsMCwwLC41KTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXBvcHVwey13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bSxyZ2JhKDAsMCwwLC42KSl9Lnl0cC1kbmkgLnl0cC1wb3B1cHt0ZXh0LXNoYWRvdzpub25lfS55dHAtcG9wdXBbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLXBvcHVwLWFuaW1hdGluZ3std2Via2l0LXRyYW5zaXRpb246YWxsIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjphbGwgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtwb2ludGVyLWV2ZW50czpub25lfS55dHAtcG9wdXAtYW5pbWF0aW5nIC55dHAtcGFuZWx7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246YWxsIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lnl0cC1wYW5lbC1hbmltYXRlLWJhY2ssLnl0cC1wYW5lbC1hbmltYXRlLWZvcndhcmR7b3BhY2l0eTowfVtkaXI9bHRyXSAueXRwLXBhbmVsLWFuaW1hdGUtYmFja3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1bZGlyPWx0cl0gLnl0cC1wYW5lbC1hbmltYXRlLWZvcndhcmR7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSl9W2Rpcj1ydGxdIC55dHAtcGFuZWwtYW5pbWF0ZS1iYWNrey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpfVtkaXI9cnRsXSAueXRwLXBhbmVsLWFuaW1hdGUtZm9yd2FyZHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX0ueXRwLXNldHRpbmdzLW1lbnV7cmlnaHQ6MTJweDtib3R0b206NjFweDt6LWluZGV4OjcwO3dpbGwtY2hhbmdlOndpZHRoLGhlaWdodDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zZXR0aW5ncy1tZW51e2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgNnB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLnl0cC1zZXR0aW5ncy1tZW51e2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgNnB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpICsgdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpO29wYWNpdHk6Y2FsYygxIC0gdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjMpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1tZW51e29wYWNpdHk6Y2FsYygxIC0gdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjMpO2JvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgNnB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpICsgdmFyKC0teXRwLWdyaWQtc2Nyb2xsLXBlcmNlbnRhZ2UpKjEwMCUpfS55dHAtZW1iZWQgLnl0cC1zZXR0aW5ncy1tZW51e2JvdHRvbTo1M3B4fS55dHAtYmlnLW1vZGUgLnl0cC1zZXR0aW5ncy1tZW51e3JpZ2h0OjI0cHg7Ym90dG9tOjcwcHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC55dHAtc2V0dGluZ3MtbWVudXtib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDZweCl9Lnl0cC1zZXR0aW5ncy1tZW51IC55dHAtbWVudWl0ZW0tY29udGVudHttYXgtd2lkdGg6MjUwcHg7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zZXR0aW5ncy1tZW51e3otaW5kZXg6MjMwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNldHRpbmdzLW1lbnUgLnl0cC1wYW5lbC1tZW51e3BhZGRpbmc6OHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtc2V0dGluZ3MtbWVudSAueXRwLW1lbnVpdGVtOm5vdCgueXRwLW1lbnVpdGVtLXdpdGgtZm9vdGVyKXtoZWlnaHQ6NDhweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNldHRpbmdzLW1lbnUgLnl0cC1tZW51aXRlbT46Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo4cHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zZXR0aW5ncy1tZW51IC55dHAtbWVudWl0ZW0+Omxhc3QtY2hpbGR7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6OHB4O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjhweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXNldHRpbmdzLW1lbnUgLnl0cC1tZW51aXRlbS1pY29ue3BhZGRpbmctbGVmdDo4cHg7cGFkZGluZy1yaWdodDoyNHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtc2V0dGluZ3MtbWVudSAueXRwLW1lbnVpdGVtLWNvbnRlbnR7cGFkZGluZy1yaWdodDo4cHh9Lnl0cC1zcGVlZHNsaWRlci1jb21wb25lbnR7aGVpZ2h0Ojk1cHg7b3V0bGluZTpub25lfS55dHAtc3BlZWRzbGlkZXItY29tcG9uZW50IC55dHAtc2xpZGVye2hlaWdodDo0MHB4fS55dHAtc3BlZWRzbGlkZXItY29tcG9uZW50e3RleHQtYWxpZ246Y2VudGVyfS55dHAtc3BlZWRzbGlkZXItaW5kaWNhdG9yLWNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlfS55dHAtc3BlZWRzbGlkZXItY29tcG9uZW50IC55dHAtc2xpZGVyLWhhbmRsZTphZnRlciwueXRwLXNwZWVkc2xpZGVyLWNvbXBvbmVudCAueXRwLXNsaWRlci1oYW5kbGU6YmVmb3Jle2hlaWdodDo1cHh9Lnl0cC1zcGVlZHNsaWRlci10ZXh0e2ZvbnQtc2l6ZToxNTAlO3RleHQtYWxpZ246Y2VudGVyfS55dHAtc3BlZWRzbGlkZXItcHJlbWl1bS1iYWRnZXt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJeU5DSWdhR1ZwWjJoMFBTSXlOQ0lnZG1sbGQwSnZlRDBpTFRJZ0xUSWdNalFnTWpRaVBqeHdZWFJvSUdacGJHdzlJaU5qTURBaUlHUTlJazB3SURFdU5ETkRNQ0F1TmpRdU5qUWdNQ0F4TGpReklEQm9NVGN1TVRORE1Ua3VNelVnTUNBeU1DQXVOalFnTWpBZ01TNDBNM1l4Tnk0eE0yTXdJQzQzT1MwdU5qVWdNUzQwTkMweExqUTBJREV1TkRSSU1TNDBNME11TmpRZ01qQWdNQ0F4T1M0ek5TQXdJREU0TGpVMldtMHdJREFpTHo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCa1BTSk5OeTQ0T0NBeE1TNDBNblkwTGpJNVNEVXVNemRXTXk0MU1tZzBMamMxWXk0NU1pQXdJREV1TnpJdU1UY2dNaTQwTWk0MUxqWTVMak0wSURFdU1qSXVPREVnTVM0MklERXVORE11TXpjdU5qSXVOVFlnTVM0ek1pNDFOaUF5TGpFeElEQWdNUzR4T1MwdU5ERWdNaTR4TXkweExqSXlJREl1T0RJdExqZ3lMalk1TFRFdU9UVWdNUzR3TkMwekxqUWdNUzR3TkZwdE1DMHlMakEwYURJdU1qUmpMalkzSURBZ01TNHhPQzB1TVRVZ01TNDFNaTB1TkRjdU16VXRMak14TGpVekxTNDNOUzQxTXkweExqTTBjeTB1TVRndE1TNHdOeTB1TlRNdE1TNDBOV010TGpNMUxTNHpOaTB1T0RRdExqVTFMVEV1TkRZdExqVTJhQzB5TGpOYWJUQWdNQ0l2UGp3dmMzWm5QZz09KTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7cG9zaXRpb246YWJzb2x1dGU7bWFyZ2luLXJpZ2h0OjhweDtyaWdodDoxMDAlfS55dHAtbWVudWl0ZW0tcHJlbWl1bS1iYWRnZXt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJeU5DSWdhR1ZwWjJoMFBTSXlOQ0lnZG1sbGQwSnZlRDBpTFRJZ0xUSWdNalFnTWpRaVBqeHdZWFJvSUdacGJHdzlJaU5qTURBaUlHUTlJazB3SURFdU5ETkRNQ0F1TmpRdU5qUWdNQ0F4TGpReklEQm9NVGN1TVRORE1Ua3VNelVnTUNBeU1DQXVOalFnTWpBZ01TNDBNM1l4Tnk0eE0yTXdJQzQzT1MwdU5qVWdNUzQwTkMweExqUTBJREV1TkRSSU1TNDBNME11TmpRZ01qQWdNQ0F4T1M0ek5TQXdJREU0TGpVMldtMHdJREFpTHo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCa1BTSk5OeTQ0T0NBeE1TNDBNblkwTGpJNVNEVXVNemRXTXk0MU1tZzBMamMxWXk0NU1pQXdJREV1TnpJdU1UY2dNaTQwTWk0MUxqWTVMak0wSURFdU1qSXVPREVnTVM0MklERXVORE11TXpjdU5qSXVOVFlnTVM0ek1pNDFOaUF5TGpFeElEQWdNUzR4T1MwdU5ERWdNaTR4TXkweExqSXlJREl1T0RJdExqZ3lMalk1TFRFdU9UVWdNUzR3TkMwekxqUWdNUzR3TkZwdE1DMHlMakEwYURJdU1qUmpMalkzSURBZ01TNHhPQzB1TVRVZ01TNDFNaTB1TkRjdU16VXRMak14TGpVekxTNDNOUzQxTXkweExqTTBjeTB1TVRndE1TNHdOeTB1TlRNdE1TNDBOV010TGpNMUxTNHpOaTB1T0RRdExqVTFMVEV1TkRZdExqVTJhQzB5TGpOYWJUQWdNQ0l2UGp3dmMzWm5QZz09KTstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7bWFyZ2luLWxlZnQ6OHB4fS55dHAtbWVudWl0ZW0tY29udGFpbmVyLXdpdGgtYmFkZ2V7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRwLXNwZWVkLXNsaWRlci1tZW51LWZvb3RlcntwYWRkaW5nOjE2cHh9Lnl0cC1zaG93LXNoYXJlLXRpdGxlLnl0cC1zaGFyZS1idXR0b257bWFyZ2luLWxlZnQ6MTBweDttYXJnaW4tcmlnaHQ6MTBweH0ueXRwLW92ZXJmbG93LXBhbmVsIC55dHAtc2hvdy1zaGFyZS10aXRsZS55dHAtc2hhcmUtYnV0dG9ue21hcmdpbi1sZWZ0OjIwcHg7bWFyZ2luLXJpZ2h0OjIwcHh9Lnl0cC1iaWctbW9kZTpub3QoLnl0cC1zaG9ydHMtbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hhcmUtYnV0dG9uLDpub3QoLnl0cC1zaG9ydHMtbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hhcmUtYnV0dG9ue3dpZHRoOmF1dG87aGVpZ2h0OmF1dG99Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXNoYXJlLWJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO3BhZGRpbmctdG9wOjRweH0uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLWJpZy1tb2RlKSAueXRwLWNocm9tZS10b3AgLnl0cC1zaGFyZS1idXR0b257bWluLXdpZHRoOjQ4cHg7bWF4LXdpZHRoOjgwcHh9Lnl0cC1zaGFyZS1pY29ue21hcmdpbjphdXRvO3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHh9Lnl0cC1iaWctbW9kZSAueXRwLXNoYXJlLWljb257d2lkdGg6NTRweDtoZWlnaHQ6NTRweH0ueXRwLW92ZXJmbG93LXBhbmVsIC55dHAtc2hhcmUtaWNvbnt3aWR0aDo2MHB4O2hlaWdodDo2MHB4O21hcmdpbi1ib3R0b206MTBweH0ueXRwLXNoYXJlLXRpdGxle2ZvbnQtd2VpZ2h0OjUwMDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6MTRweDtkaXNwbGF5Om5vbmV9Lnl0cC1iaWctbW9kZSAueXRwLXNoYXJlLXRpdGxlLC55dHAtb3ZlcmZsb3ctcGFuZWwgLnl0cC1zaGFyZS10aXRsZXtmb250LXNpemU6MjBweH0ueXRwLXNob3ctc2hhcmUtdGl0bGUgLnl0cC1zaGFyZS10aXRsZXtkaXNwbGF5OmJsb2NrfS5odG1sNS12aWRlby1wbGF5ZXI6bm90KC55dHAtYmlnLW1vZGUpIC55dHAtY2hyb21lLXRvcCAueXRwLXNoYXJlLXRpdGxle3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7b3ZlcmZsb3c6aGlkZGVufS55dHAtc2hhcmUtcGFuZWx7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDo3NTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjgpO3RleHQtYWxpZ246Y2VudGVyOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtc2hhcmUtcGFuZWxbYXJpYS1oaWRkZW49dHJ1ZV17b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtc2hhcmUtcGFuZWwtaW5uZXItY29udGVudHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO21hcmdpbi10b3A6LTY1cHg7bGVmdDowO3JpZ2h0OjA7cGFkZGluZzowIDEwJX0ueXRwLWJpZy1tb2RlIC55dHAtc2hhcmUtcGFuZWwtaW5uZXItY29udGVudHttYXJnaW4tdG9wOi05OHB4fS55dHAtc2hhcmUtcGFuZWwtbG9hZGluZy1zcGlubmVye2Rpc3BsYXk6bm9uZTttYXJnaW46MjBweCBhdXRvIDA7d2lkdGg6MzJweDtoZWlnaHQ6MzJweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRwLWJpZy1tb2RlIC55dHAtc2hhcmUtcGFuZWwtbG9hZGluZy1zcGlubmVye21hcmdpbi10b3A6MzBweH0ueXRwLXNoYXJlLXBhbmVsLnl0cC1zaGFyZS1wYW5lbC1sb2FkaW5nIC55dHAtc2hhcmUtcGFuZWwtbG9hZGluZy1zcGlubmVye2Rpc3BsYXk6YmxvY2t9Lnl0cC1zaGFyZS1wYW5lbC1jbG9zZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NnB4O3JpZ2h0OjEycHg7cGFkZGluZzo2cHg7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRwLWJpZy1tb2RlIC55dHAtc2hhcmUtcGFuZWwtY2xvc2V7dG9wOjlweDtyaWdodDoyNHB4O3BhZGRpbmc6OXB4O3dpZHRoOjU0cHg7aGVpZ2h0OjU0cHh9Lnl0cC1zaGFyZS1wYW5lbC1jbG9zZSBwYXRoe2ZpbGw6I2FhYX0ueXRwLXNoYXJlLXBhbmVsLWNsb3NlOmhvdmVyIHBhdGh7ZmlsbDojZmZmfS55dHAtc2hhcmUtcGFuZWwtdGl0bGV7Zm9udC1zaXplOjE1NSU7bGluZS1oZWlnaHQ6MjBweH0ueXRwLWJpZy1tb2RlIC55dHAtc2hhcmUtcGFuZWwtdGl0bGV7bGluZS1oZWlnaHQ6MzBweH0ueXRwLXNoYXJlLXBhbmVsLWxpbmt7ZGlzcGxheTpibG9jaztoZWlnaHQ6MjhweDttYXJnaW4tdG9wOjE4cHg7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LXNpemU6MjE4JTtmb250LXdlaWdodDo1MDA7bGV0dGVyLXNwYWNpbmc6MXB4O3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47b3V0bGluZTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1zaGFyZS1wYW5lbC1saW5re2hlaWdodDo0MnB4O21hcmdpbi10b3A6MjdweH0ueXRwLXNoYXJlLXBhbmVsLWluY2x1ZGUtcGxheWxpc3R7ZGlzcGxheTpub25lO2xpbmUtaGVpZ2h0OjE1cHg7bWFyZ2luLXRvcDoxMnB4O2ZvbnQtc2l6ZToxMTglO2NvbG9yOiM5OTl9Lnl0cC1iaWctbW9kZSAueXRwLXNoYXJlLXBhbmVsLWluY2x1ZGUtcGxheWxpc3R7bGluZS1oZWlnaHQ6MjIuNXB4O21hcmdpbi10b3A6MThweH0ueXRwLXNoYXJlLXBhbmVsLWluY2x1ZGUtcGxheWxpc3QgaW5wdXRbdHlwZT1jaGVja2JveF17bWFyZ2luOjAgOHB4IDAgMH0ueXRwLXNoYXJlLXBhbmVsLXNlcnZpY2UtYnV0dG9uc3ttYXJnaW4tdG9wOjIwcHg7aGVpZ2h0OjQ0cHh9Lnl0cC1iaWctbW9kZSAueXRwLXNoYXJlLXBhbmVsLXNlcnZpY2UtYnV0dG9uc3ttYXJnaW4tdG9wOjMwcHg7aGVpZ2h0OjY3cHh9Lnl0cC1zaGFyZS1wYW5lbC55dHAtc2hhcmUtcGFuZWwtZmFpbCAueXRwLXNoYXJlLXBhbmVsLXNlcnZpY2UtYnV0dG9ucywueXRwLXNoYXJlLXBhbmVsLnl0cC1zaGFyZS1wYW5lbC1sb2FkaW5nIC55dHAtc2hhcmUtcGFuZWwtc2VydmljZS1idXR0b25ze2Rpc3BsYXk6bm9uZX0ueXRwLXNoYXJlLXBhbmVsLXNlcnZpY2UtYnV0dG9ue3BhZGRpbmc6M3B4O3dpZHRoOjM4cHg7aGVpZ2h0OjM4cHg7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0cC1iaWctbW9kZSAueXRwLXNoYXJlLXBhbmVsLXNlcnZpY2UtYnV0dG9ue3BhZGRpbmc6NXB4O3dpZHRoOjU3cHg7aGVpZ2h0OjU3cHh9Lnl0cC1zaGFyZS1wYW5lbC1lcnJvcntkaXNwbGF5Om5vbmU7bWFyZ2luLXRvcDoyMHB4O2ZvbnQtc2l6ZToxMDklfS55dHAtYmlnLW1vZGUgLnl0cC1zaGFyZS1wYW5lbC1lcnJvcnttYXJnaW4tdG9wOjMwcHh9Lnl0cC1zaGFyZS1wYW5lbC1mYWlsIC55dHAtc2hhcmUtcGFuZWwtZXJyb3J7ZGlzcGxheTpibG9ja30ueXRwLXNob3BwaW5nLXByb2R1Y3QtbWVudXt6LWluZGV4OjcyO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjt0ZXh0LWFsaWduOmxlZnQ7ZGlyZWN0aW9uOmx0cjtmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxLjM7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDt3aWxsLWNoYW5nZTp3aWR0aCxoZWlnaHQ7Ym9yZGVyLXJhZGl1czoxMnB4fS55dHAtc2hvcHBpbmctcHJvZHVjdC1tZW51IC55dHAtbWVudWl0ZW0tY29udGVudHttYXgtd2lkdGg6MjUwcHg7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1zaG9ydHMtdGl0bGUtY2hhbm5lbC1sb2dve3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjA7bWFyZ2luOjVweDstd2Via2l0LWJhY2tncm91bmQtb3JpZ2luOmNvbnRlbnQtYm94O2JhY2tncm91bmQtb3JpZ2luOmNvbnRlbnQtYm94O2Zsb2F0OmxlZnQ7LXdlYmtpdC1hbGlnbi1zZWxmOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjtib3JkZXItcmFkaXVzOjUwJX0ueXRwLWJpZy1tb2RlIC55dHAtc2hvcnRzLXRpdGxlLWNoYW5uZWwtbG9nb3t3aWR0aDo1MHB4O2hlaWdodDo1MHB4fS55dHAtZW1iZWQtbW9iaWxlIC55dHAtc2hvcnRzLXRpdGxlLWNoYW5uZWwtbG9nbywueXRwLWVtYmVkLW1vYmlsZS55dHAtc21hbGwtbW9kZSAueXRwLXNob3J0cy10aXRsZS1jaGFubmVsLWxvZ297d2lkdGg6MjRweDtoZWlnaHQ6MjRweDttYXJnaW46MH0ueXRwLXNob3J0cy10aXRsZS1leHBhbmRlZC1oZWFkaW5ne21hcmdpbjozcHg7LXdlYmtpdC1ib3gtZmxleDppbml0aWFsOy13ZWJraXQtZmxleDppbml0aWFsO2ZsZXg6aW5pdGlhbDt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYWxpZ24tc2VsZjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0cC1zaG9ydHMtdGl0bGUtZXhwYW5kZWQtdGl0bGV7Zm9udC1zaXplOjE2cHg7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbjowfS55dHAtYmlnLW1vZGUgLnl0cC1zaG9ydHMtdGl0bGUtZXhwYW5kZWQtdGl0bGV7Zm9udC1zaXplOjIycHh9Lnl0cC1zaG9ydHMtdGl0bGUtZXhwYW5kZWQtdGl0bGUgYXtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtc2hvcnRzLXRpdGxlLWV4cGFuZGVkLXRpdGxle3dvcmQtYnJlYWs6YnJlYWstd29yZDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MThweH0ueXRwLWJpZy1tb2RlIC55dHAtc2hvcnRzLXRpdGxlLWV4cGFuZGVkLXRpdGxle2ZvbnQtc2l6ZToxOHB4fS55dHAtc2hvcnRzLXRpdGxlLWNoYW5uZWx7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjA7ZGlzcGxheTpub25lO2hlaWdodDphdXRvO21hcmdpbi1sZWZ0OjA7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnN0YXRpYzt0b3A6N3B4O2xlZnQ6OHB4O3dpZHRoOmF1dG99Lnl0cC1iaWctbW9kZSAueXRwLXNob3J0cy10aXRsZS1jaGFubmVse21hcmdpbi10b3A6MTBweH0ueXRwLXRpdGxlLWVuYWJsZS1jaGFubmVsLWxvZ28gLnl0cC1zaG9ydHMtdGl0bGUtY2hhbm5lbHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleH0ueXRwLWNocm9tZS10b3AgLnl0cC1zaG9ydHMtdGl0bGUtY2hhbm5lbCAueXRwLXNiey13ZWJraXQtYWxpZ24tc2VsZjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXI7bWFyZ2luOjVweDtoZWlnaHQ6YXV0bzt3aWR0aDphdXRvO3BhZGRpbmc6MDtwYWRkaW5nLWxlZnQ6MDt0ZXh0LXNoYWRvdzpub25lOy13ZWJraXQtZmxleC1zaHJpbms6MDtmbGV4LXNocmluazowfS55dHAtY2hyb21lLXRvcCAueXRwLXNob3J0cy10aXRsZS1jaGFubmVsIC55dHAtc2Itc3Vic2NyaWJle21hcmdpbi1sZWZ0OjB9Lnl0cC1zaG9ydHMtbW9kZSBhLnl0cC1zYi1zdWJzY3JpYmV7bWFyZ2luLWxlZnQ6MH0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLXRvcCAueXRwLXNob3J0cy10aXRsZS1jaGFubmVsIC55dHAtc2Itc3Vic2NyaWJlLC55dHAtYmlnLW1vZGUgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hvcnRzLXRpdGxlLWNoYW5uZWwgLnl0cC1zYi11bnN1YnNjcmliZXtmb250LXNpemU6MTZweDtwYWRkaW5nOjE0cHggMjBweDttYXJnaW4tcmlnaHQ6MTBweH0ueXRwLWF1dG9oaWRlOm5vdCgueXRwLWF1dG9oaWRlLWFjdGl2ZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtc2hvcnRzLXRpdGxlLWNoYW5uZWx7bWFyZ2luLXRvcDo3cHh9Lnl0cC1za2lwLWludHJvLWJ1dHRvbntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjkwMTk2MDc4NDMpO2JvdHRvbTo1OHB4O2hlaWdodDo0OHB4O3BhZGRpbmctbGVmdDoxNnB4O3BhZGRpbmctcmlnaHQ6MTZweDtyaWdodDoxMHB4O3otaW5kZXg6MTB9Lnl0cC1lbWJlZCAueXRwLXNraXAtaW50cm8tYnV0dG9ue2JvdHRvbTo1MHB4O2hlaWdodDo0MHB4fS55dHAtc2tpcC1pbnRyby1idXR0b246aG92ZXJ7YmFja2dyb3VuZDojMDAwfS55dHAtYmlnLW1vZGUgLnl0cC1za2lwLWludHJvLWJ1dHRvbntib3R0b206NzlweDtyaWdodDo0MHB4fS55dHAtc2tpcC1pbnRyby1idXR0b24tdGV4dHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7bWF4LXdpZHRoOjIwMHB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2hpdGUtc3BhY2U6bm93cmFwfS55dHAtc2xpZGVyLXNlY3Rpb257ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTUwcHg7aGVpZ2h0OjEwMCU7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZTowfS55dHAtc2xpZGVye2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbjtvdXRsaW5lOjB9Lnl0cC1zbGlkZXItaGFuZGxle3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtib3JkZXItcmFkaXVzOjEwcHg7bWFyZ2luLXRvcDotMTBweDtiYWNrZ3JvdW5kOiNmZmY7b3V0bGluZTowfS55dHAtc2xpZGVyLWhhbmRsZTphZnRlciwueXRwLXNsaWRlci1oYW5kbGU6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jazt0b3A6NTAlO2xlZnQ6MDtoZWlnaHQ6M3B4O21hcmdpbi10b3A6LTJweDt3aWR0aDoxNzBweDtvdXRsaW5lOjB9Lnl0cC1zbGlkZXItaGFuZGxlOmJlZm9yZXtsZWZ0Oi0xNjBweDtiYWNrZ3JvdW5kOiNmZmZ9Lnl0cC1zbGlkZXItaGFuZGxlOmFmdGVye2xlZnQ6MTBweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjIpfS55dHAtcHJvYmFibHkta2V5Ym9hcmQtZm9jdXMgLnl0cC1zbGlkZXItc2VjdGlvbjpmb2N1c3std2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuOCk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KX0ueXRwLW92ZXJsYXl7ei1pbmRleDoxMDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO3RvcDowO2xlZnQ6MH0ueXRwLXNwZWVkbWFzdGVyLW92ZXJsYXl7dGV4dC1hbGlnbjpjZW50ZXI7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLXNwZWVkbWFzdGVyLXVzZXItZWR1ey13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOjE4cHg7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotd2Via2l0LWlubGluZS1mbGV4O2Rpc3BsYXk6aW5saW5lLWZsZXg7aGVpZ2h0OjMycHg7bWFyZ2luLXRvcDoyMHB4O3BhZGRpbmc6NnB4IDE2cHg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNil9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zcGVlZG1hc3Rlci11c2VyLWVkdXstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpfS55dHAtc3BlZWRtYXN0ZXItdXNlci1lZHUueXRwLXNwZWVkbWFzdGVyLWhhcy1pY29uey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0cC1zcGVlZG1hc3Rlci1pY29uLC55dHAtc3BlZWRtYXN0ZXItbGFiZWx7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotd2Via2l0LWlubGluZS1mbGV4O2Rpc3BsYXk6aW5saW5lLWZsZXh9Lnl0cC1zcGVlZG1hc3Rlci1pY29ue21hcmdpbi1sZWZ0OjRweH0ueXRwLXNwZWVkbWFzdGVyLWljb24gc3Zne2Rpc3BsYXk6YmxvY2s7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRwLXdlYmdsLXNwaGVyaWNhbC1jb250cm9se3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0OHB4O2xlZnQ6MTJweDtvcGFjaXR5Oi42O2N1cnNvcjpwb2ludGVyO3dpZHRoOjUwcHg7aGVpZ2h0OjUwcHg7LXdlYmtpdC10cmFuc2l0aW9uOnRvcCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0b3AgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3otaW5kZXg6NDM7b3V0bGluZTpub25lfS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAueXRwLXdlYmdsLXNwaGVyaWNhbC1jb250cm9se3RvcDo2MHB4fS55dHAtYmlnLW1vZGUgLnl0cC13ZWJnbC1zcGhlcmljYWwtY29udHJvbHt0b3A6NjlweDt3aWR0aDo3NXB4O2hlaWdodDo3NXB4fS55dHAtYmlnLW1vZGUueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC13ZWJnbC1zcGhlcmljYWwtY29udHJvbHt0b3A6NjBweH0ueXRwLXdlYmdsLXNwaGVyaWNhbC1jb250cm9sLnl0cC1kcmFnZ2luZywueXRwLXdlYmdsLXNwaGVyaWNhbC1jb250cm9sOmhvdmVye29wYWNpdHk6MX0ueXRwLWF1dG9oaWRlIC55dHAtd2ViZ2wtc3BoZXJpY2FsLWNvbnRyb2wsLnl0cC1oaWRlLWluZm8tYmFyIC55dHAtd2ViZ2wtc3BoZXJpY2FsLWNvbnRyb2x7dG9wOjEycHg7LXdlYmtpdC10cmFuc2l0aW9uOnRvcCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dG9wIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC13ZWJnbC1zcGhlcmljYWw6bm90KC55dHAtbWVudS1zaG93bikgLmh0bWw1LXZpZGVvLWNvbnRhaW5lcntjdXJzb3I6bW92ZTtjdXJzb3I6LXdlYmtpdC1ncmFiO2N1cnNvcjpncmFifS55dHAtd2ViZ2wtc3BoZXJpY2FsLnl0cC1kcmFnZ2luZzpub3QoLnl0cC1tZW51LXNob3duKSAuaHRtbDUtdmlkZW8tY29udGFpbmVye2N1cnNvcjptb3ZlO2N1cnNvcjotd2Via2l0LWdyYWJiaW5nO2N1cnNvcjpncmFiYmluZ30ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtd2ViZ2wtc3BoZXJpY2FsLWNvbnRyb2w6Zm9jdXN7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjgpO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4IHJnYmEoMjcsMTI3LDIwNCwuOCl9LmVuZGVkLW1vZGUgLnl0cC13ZWJnbC1zcGhlcmljYWwtY29udHJvbCwueXRwLW1lbnUtc2hvd24gLnl0cC13ZWJnbC1zcGhlcmljYWwtY29udHJvbHtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOnRvcCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246dG9wIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1vdmVybGF5cy1jb250YWluZXIgLnl0cC13ZWJnbC1zcGhlcmljYWwtY29udHJvbHtwb3NpdGlvbjpyZWxhdGl2ZTtpbnNldDowfS55dHAtc3Bpbm5lcntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTt0b3A6NTAlO3dpZHRoOjY0cHg7bWFyZ2luLWxlZnQ6LTMycHg7ei1pbmRleDoxODtwb2ludGVyLWV2ZW50czpub25lfS55dHAtYmlnLW1vZGUgLnl0cC1zcGlubmVye3dpZHRoOjEyOHB4O21hcmdpbi1sZWZ0Oi02NHB4fS55dHAtc3Bpbm5lci1tZXNzYWdle3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6NTAlO21hcmdpbi10b3A6NTAlO3dpZHRoOjMwMHB4O2ZvbnQtc2l6ZToxMjclO2xpbmUtaGVpZ2h0OjE4MiU7bWFyZ2luLWxlZnQ6LTE1MHB4O2Rpc3BsYXk6bm9uZTt0ZXh0LWFsaWduOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOmJsYWNrO29wYWNpdHk6LjV9Lnl0cC1zcGlubmVyLWNvbnRhaW5lcntwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7cGFkZGluZy1ib3R0b206MTAwJTt0b3A6NTAlO2xlZnQ6NTAlO21hcmdpbi10b3A6LTUwJTttYXJnaW4tbGVmdDotNTAlO2FuaW1hdGlvbjp5dHAtc3Bpbm5lci1saW5zcGluIDEuNTY4MjM1Mjk0MTE3NnMgbGluZWFyIGluZmluaXRlOy13ZWJraXQtYW5pbWF0aW9uOnl0cC1zcGlubmVyLWxpbnNwaW4gMS41NjgyMzUyOTQxMTc2cyBsaW5lYXIgaW5maW5pdGV9Lnl0cC1zcGlubmVyLXJvdGF0b3J7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTstd2Via2l0LWFuaW1hdGlvbjp5dHAtc3Bpbm5lci1lYXNlc3BpbiA1MzMybXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgaW5maW5pdGUgYm90aDthbmltYXRpb246eXRwLXNwaW5uZXItZWFzZXNwaW4gNTMzMm1zIGN1YmljLWJlemllciguNCwwLC4yLDEpIGluZmluaXRlIGJvdGh9Lnl0cC1zcGlubmVyLWxlZnQsLnl0cC1zcGlubmVyLXJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO292ZXJmbG93OmhpZGRlbn0ueXRwLXNwaW5uZXItbGVmdHtyaWdodDo0OSV9Lnl0cC1zcGlubmVyLXJpZ2h0e2xlZnQ6NDklfS55dHAtc3Bpbm5lci1jaXJjbGV7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjIwMCU7aGVpZ2h0OjEwMCU7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjojZGRkICNkZGQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyLXdpZHRoOjZweH0ueXRwLWJpZy1tb2RlIC55dHAtc3Bpbm5lci1jaXJjbGV7Ym9yZGVyLXdpZHRoOjEycHh9Lnl0cC1zcGlubmVyLWxlZnQgLnl0cC1zcGlubmVyLWNpcmNsZXtsZWZ0OjA7cmlnaHQ6LTEwMCU7Ym9yZGVyLXJpZ2h0LWNvbG9yOnRyYW5zcGFyZW50Oy13ZWJraXQtYW5pbWF0aW9uOnl0cC1zcGlubmVyLWxlZnQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgaW5maW5pdGUgYm90aDthbmltYXRpb246eXRwLXNwaW5uZXItbGVmdC1zcGluIDEzMzNtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSBpbmZpbml0ZSBib3RofS55dHAtc3Bpbm5lci1yaWdodCAueXRwLXNwaW5uZXItY2lyY2xle2xlZnQ6LTEwMCU7cmlnaHQ6MDtib3JkZXItbGVmdC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LWFuaW1hdGlvbjp5dHAtcmlnaHQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgaW5maW5pdGUgYm90aDthbmltYXRpb246eXRwLXJpZ2h0LXNwaW4gMTMzM21zIGN1YmljLWJlemllciguNCwwLC4yLDEpIGluZmluaXRlIGJvdGh9QC13ZWJraXQta2V5ZnJhbWVzIHl0cC1zcGlubmVyLWxpbnNwaW57dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19QGtleWZyYW1lcyB5dHAtc3Bpbm5lci1saW5zcGlue3Rvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxdHVybik7dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtc3Bpbm5lci1lYXNlc3BpbnsxMi41JXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKX0yNSV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDI3MGRlZyl9MzcuNSV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDQwNWRlZyl9NTAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg1NDBkZWcpfTYyLjUley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg2NzVkZWcpfTc1JXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoODEwZGVnKX04Ny41JXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoOTQ1ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoM3R1cm4pfX1Aa2V5ZnJhbWVzIHl0cC1zcGlubmVyLWVhc2VzcGluezEyLjUley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxMzVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKX0yNSV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDI3MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpfTM3LjUley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg0MDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNDA1ZGVnKX01MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDU0MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg1NDBkZWcpfTYyLjUley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg2NzVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNjc1ZGVnKX03NSV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDgxMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg4MTBkZWcpfTg3LjUley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg5NDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoOTQ1ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoM3R1cm4pO3RyYW5zZm9ybTpyb3RhdGUoM3R1cm4pfX1ALXdlYmtpdC1rZXlmcmFtZXMgeXRwLXNwaW5uZXItbGVmdC1zcGluezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxMzBkZWcpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTVkZWcpfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxMzBkZWcpfX1Aa2V5ZnJhbWVzIHl0cC1zcGlubmVyLWxlZnQtc3BpbnswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMTMwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDEzMGRlZyl9NTAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDEzMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgxMzBkZWcpfX1ALXdlYmtpdC1rZXlmcmFtZXMgeXRwLXJpZ2h0LXNwaW57MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC0xMzBkZWcpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC0xMzBkZWcpfX1Aa2V5ZnJhbWVzIHl0cC1yaWdodC1zcGluezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMTMwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0xMzBkZWcpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg1ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTEzMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtMTMwZGVnKX19Lnl0cC1zZm57YmFja2dyb3VuZDpyZ2JhKDI4LDI4LDI4LC44KTtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojZmZmO2xlZnQ6MTBweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDt6LWluZGV4OjY0O21pbi13aWR0aDoyNmVtfS55dHAtc2ZuLWNsb3Nle2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjVweDt0b3A6NXB4O3BhZGRpbmc6NXB4fS55dHAtc2ZuLWNvbnRlbnR7cGFkZGluZzo1cHh9Lnl0cC1zZm4tY29udGVudD5kaXY+ZGl2e2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nOjAgLjVlbTt0ZXh0LWFsaWduOnJpZ2h0O3dpZHRoOjEwZW19Lnl0cC1zZm4tY3Bue2ZvbnQtZmFtaWx5OkNvbnNvbGFzLE1vbmFjbyxtb25vc3BhY2U7Zm9udC1zaXplOjEycHh9Lnl0cC1ob3Jpem9uY2hhcnR7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjJweDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjpib3R0b219Lnl0cC1ob3Jpem9uY2hhcnQ+c3BhbntkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjphYnNvbHV0ZX0ueXRwLXN0b3J5Ym9hcmQtZnJhbWVwcmV2aWV3e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt6LWluZGV4OjE2O2JhY2tncm91bmQ6IzAwMDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1maW5lLXNjcnViYmluZy1lbmFibGUgLnl0cC1zdG9yeWJvYXJkLWZyYW1lcHJldmlld3tjdXJzb3I6cG9pbnRlcn0ueXRwLXN0b3J5Ym9hcmQtZnJhbWVwcmV2aWV3W2FyaWEtaGlkZGVuPXRydWVde29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1zdG9yeWJvYXJkLWZyYW1lcHJldmlldy1pbWd7b3BhY2l0eTouNH0ueXRwLXN0b3J5Ym9hcmQtZnJhbWVwcmV2aWV3LXRpbWVzdGFtcHtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7Y29sb3I6I2RkZDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjMpO2JvcmRlci1yYWRpdXM6MThweDtsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTtib3R0b206MzZweDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7cGFkZGluZzo0cHggMTBweH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1zdG9yeWJvYXJkLWZyYW1lcHJldmlldy1pbWd7b3BhY2l0eToxfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXN0b3J5Ym9hcmQtZnJhbWVwcmV2aWV3LXRpbWVzdGFtcHtkaXNwbGF5OmluaXRpYWx9Lnl0cC1pbmxpbmUtcHJldmlldy1tb2RlIC55dHAtc3Rvcnlib2FyZC1mcmFtZXByZXZpZXctaW1ne29wYWNpdHk6MX0ueXRwLWlubGluZS1wcmV2aWV3LW1vZGUgLnl0cC1zdG9yeWJvYXJkLWZyYW1lcHJldmlldy10aW1lc3RhbXB7ZGlzcGxheTppbml0aWFsfS55dHAtc2J7ZGlzcGxheTppbmxpbmUtYmxvY2s7ZmxvYXQ6bm9uZX0ueXRwLXNiIC55dHAtc2ItdW5zdWJzY3JpYmUsLnl0cC1zYi55dHAtc2Itc3Vic2NyaWJlZCAueXRwLXNiLXN1YnNjcmliZXtkaXNwbGF5Om5vbmV9Lnl0cC1zYi55dHAtc2Itc3Vic2NyaWJlZCAueXRwLXNiLXVuc3Vic2NyaWJle2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtc2Itc3Vic2NyaWJlLC55dHAtc2ItdW5zdWJzY3JpYmV7Ym9yZGVyLXJhZGl1czoxOHB4O2JvcmRlcjpub25lO2RpcmVjdGlvbjpsdHI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2xldHRlci1zcGFjaW5nOi4wMDdweDtsaW5lLWhlaWdodDoxNnB4O3BhZGRpbmc6MTBweCAxNnB4O3doaXRlLXNwYWNlOm5vd3JhcDstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfS55dHAtc2hvcnRzLW1vZGUgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1zaG9ydHMtbW9kZSAueXRwLXNiLXVuc3Vic2NyaWJle2JvcmRlci1yYWRpdXM6M3B4O3BhZGRpbmc6M3B4IDZweDtmb250LXdlaWdodDo1MDB9Lnl0cC1zYi1zdWJzY3JpYmUsYS55dHAtc2Itc3Vic2NyaWJle2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjojMDMwMzAzfS55dHAtc2hvcnRzLW1vZGUgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1zaG9ydHMtbW9kZSBhLnl0cC1zYi1zdWJzY3JpYmV7YmFja2dyb3VuZC1jb2xvcjojZmZmfS55dHAtc2Itc3Vic2NyaWJlIC55dHAtc2ItY291bnR7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuOCl9Lnl0cC1zYi11bnN1YnNjcmliZXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjEpO2NvbG9yOiNmZmZ9Lnl0cC1zaG9ydHMtbW9kZSAueXRwLXNiLXVuc3Vic2NyaWJle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Y29sb3I6I2NjYzt0ZXh0LXRyYW5zZm9ybTpub25lfS55dHAtc2Itc3Vic2NyaWJlLnl0cC1zYi1kaXNhYmxlZCwueXRwLXNiLXVuc3Vic2NyaWJlLnl0cC1zYi1kaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDMsMTQ0LDEzOSk7Y3Vyc29yOmRlZmF1bHR9Lnl0cC1zYi1zdWJzY3JpYmU6Zm9jdXMsLnl0cC1zYi11bnN1YnNjcmliZTpmb2N1c3tvdXRsaW5lOm5vbmV9Lnl0cC1zYi55dHAtc2ItY2xhc3NpY3tiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlci1yYWRpdXM6MnB4O21hcmdpbjo0cHggMH0ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi1zdWJzY3JpYmUueXRwLXNiLWRpc2FibGVkLC55dHAtc2ItY2xhc3NpYyAueXRwLXNiLXVuc3Vic2NyaWJlLnl0cC1zYi1kaXNhYmxlZHtvcGFjaXR5Oi41O2N1cnNvcjpkZWZhdWx0fS55dHAtc2ItdGV4dHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleH0ueXRwLXNiLWNvdW50e21hcmdpbi1sZWZ0OjRweH0ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi1zdWJzY3JpYmUsLnl0cC1zYi1jbGFzc2ljIC55dHAtc2ItdW5zdWJzY3JpYmV7Ym9yZGVyLXJhZGl1czoycHg7Zm9udC1zaXplOjEycHghaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjQwMDtwYWRkaW5nOjAhaW1wb3J0YW50O3RleHQtdHJhbnNmb3JtOm5vbmV9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2Itc3Vic2NyaWJle2JvcmRlcjoxcHggc29saWQgI2U2MjExN30ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi11bnN1YnNjcmliZXtib3JkZXI6MXB4IHNvbGlkICNjY2N9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2ItY291bnQsLnl0cC1zYi1jbGFzc2ljIC55dHAtc2ItdGV4dHtwYWRkaW5nOjNweCA2cHh9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2ItY291bnR7bWFyZ2luOi0xcHg7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjJweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czoycHh9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2Itc3Vic2NyaWJlIC55dHAtc2ItY291bnR7Ym9yZGVyLWxlZnQ6MH0ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi1zdWJzY3JpYmUgLnl0cC1zYi1jb3VudCwueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi11bnN1YnNjcmliZXtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNTAsMjUwLDI1MCl9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2Itc3Vic2NyaWJlIC55dHAtc2ItdGV4dHtjb2xvcjojZmVmZWZlO2JhY2tncm91bmQtY29sb3I6I2U2MjExN30ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi1jb3VudCwueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi11bnN1YnNjcmliZSAueXRwLXNiLXRleHR7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhO2NvbG9yOiM3MzczNzN9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2ItaWNvbntoZWlnaHQ6MTJweDttYXJnaW4tcmlnaHQ6NnB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDoycHg7d2lkdGg6MTZweH0ueXRwLWJpZy1tb2RlIC55dHAtc2Itc3Vic2NyaWJlLC55dHAtYmlnLW1vZGUgLnl0cC1zYi11bnN1YnNjcmliZXtib3JkZXItcmFkaXVzOjIycHh9Lnl0cC1zYi1jbGFzc2ljIC55dHAtc2Itc3Vic2NyaWJlIC55dHAtc2ItaWNvbntiYWNrZ3JvdW5kOnVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQU1DQVlBQUFCcjV6MkJBQUFBblVsRVFWUTRUMlA4Ly8rL0p3TUR3MXdHQmdaSkJ0TEFjd1lHaG1URy8vLy9QeU5ETTh5cTV5QUQvcE5tTWFwcW5BWThrNUpnRUZteGxJSE56aG12K1RnTmVNckp5Y0Fvd01rZ05ITTZBNGRmT0U1RGNCcnduSk9UNGYvdkh3eU1iQXdNWEduSkRQd1Q1bUExaEVnRGtoajRKNEFpQ2hNUTlzS01hUXdjL2hHa2U0SGlRQ1EyYWlsTlNDOUFCbmhCazdJRXNiWkMxVDFsWUdCSUF3QlMxVXhCRTkvMmlBQUFBQUJKUlU1RXJrSmdnZz09KX0ueXRwLXNiLWNsYXNzaWMgLnl0cC1zYi11bnN1YnNjcmliZSAueXRwLXNiLWljb257YmFja2dyb3VuZDp1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFNQ0FZQUFBQnI1ejJCQUFBQS9VbEVRVlE0VDZXU01Vb0VRUkJGNjA4aWFMcVo0QW5FMERPSVlHWXVHTmpkTTRqUmlMa1lqU0lzTEYwdGdwa2dFM2dBY2NEVUc1aDZBQ01OcDc1TW9NeXV5bzVzcDlYMWZ0WC9CVm53WWNGKytSY2dwYlJHY2lJaVkrLzlReWMrR0JCajNNeXk3RnBFUm1ZMkNTR2NEUWFvNmk2QTgwNlE1TEgzL3U1cjlha0pxcXBhS2N2eW8rY0xWUFVFd0tHSXZKblpmZ2podWUvYk4wQlZqMFRrd016eVBNK2ZVa3JMSk1jQXRrbStBTmh6enIzT210NEg3QUM0RkpFbEVia2d1UVZnZytSajI3YWhLSXIzM3hLYldpSEd1QTdnQnNCcTk5bk1ycHFtT2EzcnV2MHI3aDhwcEpSR0pDT0FlK2ZjN2J3N0dSemo0QW5tS2M3V1B3RldSRjBOYzlSUXh3QUFBQUJKUlU1RXJrSmdnZz09KX0uY2FwdGlvbi13aW5kb3d7cG9zaXRpb246YWJzb2x1dGU7bGluZS1oZWlnaHQ6bm9ybWFsO3otaW5kZXg6NDE7cG9pbnRlci1ldmVudHM6YXV0bztjdXJzb3I6bW92ZTtjdXJzb3I6LXdlYmtpdC1ncmFiO2N1cnNvcjpncmFiOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmV9Lnl0cC1jYXB0aW9uLXdpbmRvdy1jb250YWluZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtwb2ludGVyLWV2ZW50czpub25lfS55dHAtbmF0aXZlLWNvbnRyb2xzIC5jYXB0aW9uLXdpbmRvd3t6LWluZGV4OjIxNDc0ODM2NDd9LmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy10b3B7bWFyZ2luLXRvcDo0OHB4Oy13ZWJraXQtdHJhbnNpdGlvbjptYXJnaW4tYm90dG9tIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxtYXJnaW4tdG9wIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm1hcmdpbi1ib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG1hcmdpbi10b3AgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LXRvcHttYXJnaW4tdG9wOjYwcHh9Lnl0cC1iaWctbW9kZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LXRvcHttYXJnaW4tdG9wOjY5cHh9Lnl0cC1iaWctbW9kZS55dHAtZW1iZWQ6bm90KC5hZC1zaG93aW5nKSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LXRvcHttYXJnaW4tdG9wOjg5cHh9Lnl0cC1hdXRvaGlkZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LXRvcCwueXRwLWhpZGUtaW5mby1iYXIgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy10b3B7bWFyZ2luLXRvcDowOy13ZWJraXQtdHJhbnNpdGlvbjptYXJnaW4tYm90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG1hcmdpbi10b3AgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjptYXJnaW4tYm90dG9tIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG1hcmdpbi10b3AgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWF1dG9oaWRlLWFjdGl2ZSAuY2FwdGlvbi13aW5kb3d7cG9pbnRlci1ldmVudHM6bm9uZX15dGQtcmVlbC12aWRlby1yZW5kZXJlciAuc2hvcnQtdmlkZW8tY29udGFpbmVyIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctdG9we21hcmdpbi10b3A6NjlweH0uY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbXttYXJnaW4tYm90dG9tOjYxcHg7LXdlYmtpdC10cmFuc2l0aW9uOm1hcmdpbi1ib3R0b20gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG1hcmdpbi10b3AgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246bWFyZ2luLWJvdHRvbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSksbWFyZ2luLXRvcCAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZpbmUtc2NydWJiaW5nLWVuYWJsZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbSwueXRwLWZpbmUtc2NydWJiaW5nLWVuYWJsZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbXttYXJnaW4tYm90dG9tOjExMHB4fS55dHAtZmluZS1zY3J1YmJpbmctZW5hYmxlLnl0cC1hZC1vdmVybGF5LW9wZW4gLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToyMDBweH0ueXRwLWJpZy1tb2RlLnl0cC1maW5lLXNjcnViYmluZy1lbmFibGUgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToxNTVweH0ueXRwLWVtYmVkIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206NTNweH0ueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206NzBweH0ueXRwLWF1dG9oaWRlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9tLC55dHAtaGlkZS1jb250cm9scyAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbSwueXRwLW11dGVkLWF1dG9wbGF5IC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206MDstd2Via2l0LXRyYW5zaXRpb246bWFyZ2luLWJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxtYXJnaW4tdG9wIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246bWFyZ2luLWJvdHRvbSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxtYXJnaW4tdG9wIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYXV0b2hpZGUueXRwLWRlbGhpLW1vZGVybiAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbSwueXRwLWF1dG9oaWRlLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9tLC55dHAtYXV0b2hpZGUueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b20sLnl0cC1hdXRvaGlkZS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtYmlnLW1vZGUgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b20sLnl0cC1oaWRlLWNvbnRyb2xzLnl0cC1kZWxoaS1tb2Rlcm4gLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b20sLnl0cC1oaWRlLWNvbnRyb2xzLnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9tLC55dHAtaGlkZS1jb250cm9scy55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbSwueXRwLWhpZGUtY29udHJvbHMueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9tLC55dHAtbXV0ZWQtYXV0b3BsYXkueXRwLWRlbGhpLW1vZGVybiAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbSwueXRwLW11dGVkLWF1dG9wbGF5Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9tLC55dHAtbXV0ZWQtYXV0b3BsYXkueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b20sLnl0cC1tdXRlZC1hdXRvcGxheS55dHAtZGVsaGktbW9kZXJuLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZy55dHAtYmlnLW1vZGUgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbTowfS55dHAtbmF0aXZlLWNvbnRyb2xzIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206NDVweDstd2Via2l0LXRyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uOm5vbmV9Lnl0cC1hZC1vdmVybGF5LW9wZW4gLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToxNTFweH0ueXRwLWVtYmVkLnl0cC1hZC1vdmVybGF5LW9wZW4gLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToxNDNweH0ueXRwLWJpZy1tb2RlLnl0cC1hZC1vdmVybGF5LW9wZW4gLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbToxNjBweH0ueXRwLWRlbGhpLW1vZGVybiAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbXttYXJnaW4tYm90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyAxNHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgMTRweCl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tbWV0YWRhdGEtYm90dG9tIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDE1NHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWJpZy1tb2RlIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDE1NHB4KX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1ncmlkLXBlZWtpbmcgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgMTRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1iaWctbW9kZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbXttYXJnaW4tYm90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAxNHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC5jYXB0aW9uLXdpbmRvdy55dHAtY2FwdGlvbi13aW5kb3ctYm90dG9te21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS15dC1kZWxoaS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA3MnB4KSArIDE1NHB4ICsgdmFyKC0teXRwLWdyaWQtcGVlay1oZWlnaHQpKX0ueXRwLWRlbGhpLW1vZGVybi55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nLnl0cC1iaWctbW9kZSAuY2FwdGlvbi13aW5kb3cueXRwLWNhcHRpb24td2luZG93LWJvdHRvbXttYXJnaW4tYm90dG9tOmNhbGModmFyKC0teXQtZGVsaGktYmlnLW1vZGUtYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgOTZweCkgKyAxNTRweCArIHZhcigtLXl0cC1ncmlkLXBlZWstaGVpZ2h0KSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLmNhcHRpb24td2luZG93Lnl0cC1jYXB0aW9uLXdpbmRvdy1ib3R0b217ZGlzcGxheTpub25lO29wYWNpdHk6MH0uaHRtbDUtdmlkZW8tcGxheWVyIC5jYXB0aW9uLXdpbmRvdy55dHAtZHJhZ2dpbmcsLmh0bWw1LXZpZGVvLXBsYXllci55dHAtYWQtb3ZlcmxheS1vcGVuIC5jYXB0aW9uLXdpbmRvdy55dHAtZHJhZ2dpbmcsLmh0bWw1LXZpZGVvLXBsYXllci55dHAtZGVsaGktbW9kZXJuIC5jYXB0aW9uLXdpbmRvdy55dHAtZHJhZ2dpbmd7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MDstd2Via2l0LXRyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uOm5vbmU7Y3Vyc29yOm1vdmU7Y3Vyc29yOi13ZWJraXQtZ3JhYmJpbmc7Y3Vyc29yOmdyYWJiaW5nfS55dHAtY2FwdGlvbi13aW5kb3ctcm9sbHVwLnl0cC1yb2xsdXAtbW9kZXtvdmVyZmxvdzpoaWRkZW59LmNhcHRpb24td2luZG93IC55dHAtaWNvbiwuY2FwdGlvbi13aW5kb3cgc3Zne3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7dmVydGljYWwtYWxpZ246Ym90dG9tO2Rpc3BsYXk6aW5saW5lLWJsb2NrO21heC13aWR0aDoxZW07bWF4LWhlaWdodDoxZW19Lnl0cC1lbWJlZCAuY2FwdGlvbi13aW5kb3cgLnl0cC1pY29uLC55dHAtZW1iZWQgLmNhcHRpb24td2luZG93IHN2Z3t3aWR0aDo0MHB4O2hlaWdodDo0MHB4fS55dHAtYmlnLW1vZGUgLmNhcHRpb24td2luZG93IHN2Z3t3aWR0aDo1NHB4O2hlaWdodDo1NHB4fS55dHAtY2FwdGlvbi13aW5kb3ctcm9sbHVwLnl0cC1yb2xsdXAtbW9kZSAuY2FwdGlvbnMtdGV4dHstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjQzM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNDMzcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC40MzNzIGN1YmljLWJlemllcigwLDAsLjIsMSl9LmNhcHRpb24tZWRpdHtvcGFjaXR5OjA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO2JvdHRvbTowO2JhY2tncm91bmQ6cmdiYSg4LDgsOCwuNzUpO2JvcmRlcjpub25lO3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcn0uY2FwdGlvbi1lZGl0IHN2Z3ttYXgtaGVpZ2h0OjYwJTttYXgtd2lkdGg6NjAlfS5jYXB0aW9uLWVkaXQ6Zm9jdXMsLmNhcHRpb24td2luZG93OmZvY3VzIC5jYXB0aW9uLWVkaXQsLnl0cC1jYXB0aW9uLXdpbmRvdy1yb2xsdXAgLmNhcHRpb24tZWRpdDpob3ZlciwueXRwLWNhcHRpb24td2luZG93LXJvbGx1cDpob3ZlciAuY2FwdGlvbi1lZGl0e29wYWNpdHk6MX0uaHRtbDUtdmlkZW8tcGxheWVyIC5jYXB0aW9uLXZpc3VhbC1saW5lIC55dHAtY2FwdGlvbi1zZWdtZW50OmZpcnN0LWNoaWxke3BhZGRpbmctbGVmdDouMjVlbTtwYWRkaW5nLXRvcDowfS5odG1sNS12aWRlby1wbGF5ZXIgLmNhcHRpb24tdmlzdWFsLWxpbmUgLnl0cC1jYXB0aW9uLXNlZ21lbnQ6bGFzdC1jaGlsZHtwYWRkaW5nLXJpZ2h0Oi4yNWVtO3BhZGRpbmctYm90dG9tOjB9Lmh0bWw1LXZpZGVvLXBsYXllciAueXRwLXZlcnRpY2FsLWNhcHRpb24gLmNhcHRpb24tdmlzdWFsLWxpbmUgLnl0cC1jYXB0aW9uLXNlZ21lbnQ6Zmlyc3QtY2hpbGR7cGFkZGluZy10b3A6LjI1ZW07cGFkZGluZy1sZWZ0OjB9Lmh0bWw1LXZpZGVvLXBsYXllciAueXRwLXZlcnRpY2FsLWNhcHRpb24gLmNhcHRpb24tdmlzdWFsLWxpbmUgLnl0cC1jYXB0aW9uLXNlZ21lbnQ6bGFzdC1jaGlsZHtwYWRkaW5nLWJvdHRvbTouMjVlbTtwYWRkaW5nLXJpZ2h0OjB9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9ue2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otanVzdGlmeS1jb250ZW50OmxlZnQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6bGVmdDstd2Via2l0LWJveC1wYWNrOmxlZnQ7anVzdGlmeS1jb250ZW50OmxlZnR9Lnl0cC1maW5lLXNjcnViYmluZy1lbmFibGUgLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdle2JvdHRvbTo2MHB4O2xlZnQ6NjBweH0ueXRwLWJpZy1tb2RlLnl0cC1maW5lLXNjcnViYmluZy1lbmFibGUgLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdle2JvdHRvbTo5MHB4O2xlZnQ6OTBweH0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2V7ei1pbmRleDo2MDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MTZweDtsZWZ0OjE2cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC44KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjMpO2JvcmRlci1yYWRpdXM6MzRweDtoZWlnaHQ6MzRweDt3aWR0aDozNHB4O3BhZGRpbmc6N3B4O2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxiYWNrZ3JvdW5kLWNvbG9yIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLHRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLGJhY2tncm91bmQtY29sb3IgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksd2lkdGggLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpO29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXRpbWVseS1zaGVsZi1wcmVzZW50e2Rpc3BsYXk6bm9uZX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZnVsbHNjcmVlbi55dHAtdGltZWx5LXNoZWxmLXByZXNlbnR7ZGlzcGxheTp1bnNldH0uYWQtc2hvd2luZyAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZnVsbHNjcmVlbi55dHAtdGltZWx5LXNoZWxmLXByZXNlbnR7ZGlzcGxheTpub25lfXl0ZC13YXRjaC1mbGV4eVt0aGVhdGVyXSAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXRpbWVseS1zaGVsZi1wcmVzZW50e2Rpc3BsYXk6dW5zZXR9eXRkLXdhdGNoLWZsZXh5W3RoZWF0ZXJdIC5hZC1zaG93aW5nIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS55dHAtdGltZWx5LXNoZWxmLXByZXNlbnR7ZGlzcGxheTpub25lfS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tbGVmdCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2V7cG9zaXRpb246cmVsYXRpdmU7Ym90dG9tOjA7bGVmdDowfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZXstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpO2JvcmRlcjpub25lO2hlaWdodDo0MHB4O3dpZHRoOjQwcHg7Ym9yZGVyLXJhZGl1czo0MHB4O3BhZGRpbmc6MTJweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2U6bm90KC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1leHBhbmRlZCl7cGFkZGluZzowIDhweH0uYWQtc2hvd2luZyAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2V7ZGlzcGxheTpub25lfS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZVthcmlhLWhpZGRlbj10cnVlXXstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSx0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLHRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtvcGFjaXR5OjB9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlOmhvdmVyey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxiYWNrZ3JvdW5kLWNvbG9yIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLHRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLGJhY2tncm91bmQtY29sb3IgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksd2lkdGggLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2JhY2tncm91bmQtY29sb3I6cmdiYSgzMywzMywzMywuOTUpfS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS13aXRoLWNvbnRyb2xzey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTU5cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTlweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTU5cHgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS13aXRoLWNvbnRyb2xzey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoY2FsYygodmFyKC0teXQtZGVsaGktYm90dG9tLWNvbnRyb2xzLWhlaWdodCwgNzJweCkgKyA2cHgpKi0xKSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVZKGNhbGMoKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgNnB4KSotMSkpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKGNhbGMoKHZhcigtLXl0LWRlbGhpLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDcycHgpICsgNnB4KSotMSkpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZSAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2Utd2l0aC1jb250cm9sc3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKGNhbGMoKHZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLWJvdHRvbS1jb250cm9scy1oZWlnaHQsIDk2cHgpICsgNnB4KSotMSkpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWShjYWxjKCh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDZweCkqLTEpKTt0cmFuc2Zvcm06dHJhbnNsYXRlWShjYWxjKCh2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1ib3R0b20tY29udHJvbHMtaGVpZ2h0LCA5NnB4KSArIDZweCkqLTEpKX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZnVsbHNjcmVlbi55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS13aXRoLWNvbnRyb2xzey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTgwcHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtODBweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTgwcHgpfS55dHAtb3ZlcmxheXMtY29udGFpbmVyIC55dHAtb3ZlcmxheS1ib3R0b20tbGVmdCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2Utd2l0aC1jb250cm9sc3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2U6aXMoLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWV4cGFuZGVkLC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1jb250ZW50LWZvcndhcmQpe3dpZHRoOmF1dG99Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWljb24tY29udGFpbmVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4fS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1pY29ue2hlaWdodDoxOHB4O3dpZHRoOjE4cHg7YmFja2dyb3VuZDp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l6TmlJZ2FHVnBaMmgwUFNJek5pSWdabWxzYkQwaUkyWm1aaUlnZG1sbGQwSnZlRDBpTUNBd0lESTBJREkwSWo0OGNHRjBhQ0JtYVd4c1BTSnViMjVsSWlCa1BTSk5NQ0F3YURJMGRqSTBTREI2SWk4K1BIQmhkR2dnWkQwaVRURTRJRFpvTFRKak1DMHlMakl4TFRFdU56a3ROQzAwTFRSVE9DQXpMamM1SURnZ05rZzJZeTB4TGpFZ01DMHlJQzQ1TFRJZ01uWXhNbU13SURFdU1TNDVJRElnTWlBeWFERXlZekV1TVNBd0lESXRMamtnTWkweVZqaGpNQzB4TGpFdExqa3RNaTB5TFRKdExUWXRNbU14TGpFZ01DQXlJQzQ1SURJZ01tZ3ROR013TFRFdU1TNDVMVElnTWkweWJUWWdNVFpJTmxZNGFESjJNbU13SUM0MU5TNDBOU0F4SURFZ01YTXhMUzQwTlNBeExURldPR2cwZGpKak1DQXVOVFV1TkRVZ01TQXhJREZ6TVMwdU5EVWdNUzB4Vmpob01ub2lMejQ4TDNOMlp6ND0pOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW47LXdlYmtpdC1mbGV4LXNocmluazowO2ZsZXgtc2hyaW5rOjB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWljb24ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtaWNvbi1jdXN0b20taWNvbiwueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtaWNvbi55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1pY29uLWN1c3RvbS1pY29ue2JhY2tncm91bmQtaW1hZ2U6bm9uZTt3aWR0aDoyMHB4O2hlaWdodDoyMHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1pY29ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLXRpdGxle2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojZmZmO21hcmdpbi1sZWZ0OjZweDttYXJnaW4tcmlnaHQ6NnB4O2N1cnNvcjpwb2ludGVyfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS10aXRsZXtmb250LXdlaWdodDo1MDB9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLXRpdGxlOmVtcHR5e2Rpc3BsYXk6bm9uZX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2V7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC42KTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDhweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KTtib3JkZXItcmFkaXVzOjhweDt3aWR0aDoyOThweDtoZWlnaHQ6NjRweDtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7LXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tY29udGFpbmVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYWxpZ24taXRlbXM6c3RyZXRjaDstd2Via2l0LWJveC1hbGlnbjpzdHJldGNoO2FsaWduLWl0ZW1zOnN0cmV0Y2g7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjI5MHB4O3BhZGRpbmc6NHB4fS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1kZXRhaWxze2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWp1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7Zm9udC1zaXplOjEycHg7LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleDoxO2ZsZXg6MTtwYWRkaW5nOjAgOHB4O292ZXJmbG93OmhpZGRlbn0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tZGV0YWlscyAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tdGl0bGV7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC1zaXplOjE0cHh9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWRldGFpbHMgLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLXN1YnRpdGxle292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO29wYWNpdHk6Ljc7Zm9udC13ZWlnaHQ6NDAwfS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1kZXRhaWxzIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1tZXRhZGF0YS10ZXh0e29wYWNpdHk6Ljc7Zm9udC13ZWlnaHQ6NTAwfS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1pbWd7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czo0cHg7YmFja2dyb3VuZDojZmZmO2hlaWdodDo1NnB4O3dpZHRoOjU2cHg7b3ZlcmZsb3c6aGlkZGVufS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1pbWc+aW1ne3dpZHRoOmluaGVyaXQ7aGVpZ2h0OmluaGVyaXQ7LW8tb2JqZWN0LWZpdDpjb250YWluO29iamVjdC1maXQ6Y29udGFpbn06aXMoOmlzKC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1wcmV2aWV3LWNvbGxhcHNlZCwueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtcHJldmlldy1leHBhbmRlZCksLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWNvbnRlbnQtZm9yd2FyZC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1leHBhbmRlZCkgLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWljb257ZGlzcGxheTpub25lfTppcygueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtcHJldmlldy1jb2xsYXBzZWQsLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLXByZXZpZXctZXhwYW5kZWQpIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1leHBhbmRlZC1jb250ZW50LWNvbnRhaW5lcntkaXNwbGF5Om5vbmV9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWNvbnRlbnQtZm9yd2FyZC1jb250YWluZXJ7ZGlzcGxheTotbW96LWZsZXhib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tcHJvZHVjdC10aHVtYm5haWx7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6MDttYXJnaW4taW5saW5lLXN0YXJ0OjA7b3BhY2l0eTowO3dpZHRoOjA7LXdlYmtpdC10cmFuc2l0aW9uOm1hcmdpbi1pbmxpbmUtc3RhcnQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LW1hcmdpbi1zdGFydCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LW1hcmdpbi1zdGFydCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjptYXJnaW4taW5saW5lLXN0YXJ0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSxvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm1hcmdpbi1pbmxpbmUtc3RhcnQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLC13ZWJraXQtbWFyZ2luLXN0YXJ0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTstd2Via2l0LXRyYW5zaXRpb246d2lkdGggLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246d2lkdGggLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2JvcmRlci1yYWRpdXM6NHB4O2hlaWdodDoxOHB4fS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1wcm9kdWN0LXRodW1ibmFpbDpmaXJzdC1jaGlsZHstd2Via2l0LXRyYW5zaXRpb246bWFyZ2luLWlubGluZS1zdGFydCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLC13ZWJraXQtbWFyZ2luLXN0YXJ0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLC13ZWJraXQtbWFyZ2luLXN0YXJ0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOm1hcmdpbi1pbmxpbmUtc3RhcnQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246bWFyZ2luLWlubGluZS1zdGFydCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC1tYXJnaW4tc3RhcnQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1wcm9kdWN0LXRodW1ibmFpbHtoZWlnaHQ6MjRweH0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtcHJldmlldy1leHBhbmRlZCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tcHJvZHVjdC10aHVtYm5haWx7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6MnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6MnB4O29wYWNpdHk6MTt3aWR0aDoxOHB4fS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1wcmV2aWV3LWV4cGFuZGVkIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1wcm9kdWN0LXRodW1ibmFpbDpmaXJzdC1jaGlsZHstd2Via2l0LW1hcmdpbi1zdGFydDowO21hcmdpbi1pbmxpbmUtc3RhcnQ6MH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtcHJldmlldy1leHBhbmRlZCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tcHJvZHVjdC10aHVtYm5haWx7d2lkdGg6MjRweH06aXMoLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLXByZXZpZXctY29sbGFwc2VkLC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1jb250ZW50LWZvcndhcmQueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZXhwYW5kZWQpIC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1wcm9kdWN0LXRodW1ibmFpbDpmaXJzdC1jaGlsZHstd2Via2l0LW1hcmdpbi1zdGFydDoycHg7bWFyZ2luLWlubGluZS1zdGFydDoycHg7b3BhY2l0eToxO3dpZHRoOjE4cHg7LXdlYmtpdC1tYXJnaW4tc3RhcnQ6MDttYXJnaW4taW5saW5lLXN0YXJ0OjB9Lnl0cC1kZWxoaS1tb2Rlcm4gOmlzKC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1wcmV2aWV3LWNvbGxhcHNlZCwueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtY29udGVudC1mb3J3YXJkLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWV4cGFuZGVkKSAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tcHJvZHVjdC10aHVtYm5haWw6Zmlyc3QtY2hpbGR7d2lkdGg6MjRweH0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tbW9yZS1wcm9kdWN0cy1pY29ue2Rpc3BsYXk6bm9uZTtoZWlnaHQ6MTJweDt3aWR0aDoycHg7Ym9yZGVyLXJhZGl1czowIDEycHggMTJweCAwO2JhY2tncm91bmQtY29sb3I6I2ZmZjtvcGFjaXR5Oi4zMjstd2Via2l0LW1hcmdpbi1zdGFydDoycHg7bWFyZ2luLWlubGluZS1zdGFydDoycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLW1vcmUtcHJvZHVjdHMtaWNvbntoZWlnaHQ6MThweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWNvbnRlbnQtZm9yd2FyZC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1leHBhbmRlZCAueXRwLXN1Z2dlc3RlZC1hY3Rpb24tbW9yZS1wcm9kdWN0cy1pY29ue2Rpc3BsYXk6dW5zZXR9Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWRpc21pc3MtYnV0dG9uLWljb257aGVpZ2h0OjE4cHg7d2lkdGg6MThweDtiYWNrZ3JvdW5kOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOQ0lnYUdWcFoyaDBQU0l5TkNJZ1ptbHNiRDBpSTJabVppSWdkbWxsZDBKdmVEMGlNQ0F3SURJMElESTBJajQ4Y0dGMGFDQmtQU0pOTVRZdU1qUWdPUzR4TnlBeE15NDBNU0F4TW13eUxqZ3pJREl1T0RNdE1TNDBNU0F4TGpReFRERXlJREV6TGpReGJDMHlMamd6SURJdU9ETXRNUzQwTVMweExqUXhUREV3TGpVNUlERXlJRGN1TnpZZ09TNHhOMnd4TGpReExURXVOREZNTVRJZ01UQXVOVGxzTWk0NE15MHlMamd6ZWswMExqa3pJRFF1T1ROakxUTXVPVEVnTXk0NU1TMHpMamt4SURFd0xqSTBJREFnTVRRdU1UUWdNeTQ1TVNBekxqa3hJREV3TGpJMElETXVPVEVnTVRRdU1UUWdNQ0F6TGpreExUTXVPVEVnTXk0NU1TMHhNQzR5TkNBd0xURTBMakUwTFRNdU9TMHpMamt4TFRFd0xqSTBMVE11T1RFdE1UUXVNVFFnTUcweE15NDBNeTQzTVdNekxqVXhJRE11TlRFZ015NDFNU0E1TGpJeUlEQWdNVEl1TnpOekxUa3VNaklnTXk0MU1TMHhNaTQzTXlBd0xUTXVOVEV0T1M0eU1pQXdMVEV5TGpjell6TXVOVEl0TXk0MU1TQTVMakl5TFRNdU5URWdNVEl1TnpNZ01DSXZQand2YzNablBnPT0pOy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW47b3BhY2l0eTouNjstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWRpc21pc3MtYnV0dG9uLWljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweDtiYWNrZ3JvdW5kOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeU5DQXlOQ0krUEhCaGRHZ2dabWxzYkQwaUkyWm1aaUlnWkQwaVRURTVJRFl1TkRFZ01UY3VOVGtnTlNBeE1pQXhNQzQxT1NBMkxqUXhJRFVnTlNBMkxqUXhJREV3TGpVNUlERXlJRFVnTVRjdU5Ua2dOaTQwTVNBeE9TQXhNaUF4TXk0ME1TQXhOeTQxT1NBeE9TQXhPU0F4Tnk0MU9TQXhNeTQwTVNBeE1ub2lMejQ4TDNOMlp6ND0pO29wYWNpdHk6MX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZGlzbWlzcy1idXR0b24taWNvbjpob3ZlcntvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZS1leHBhbmRlZC1jb250ZW50LWNvbnRhaW5lcntkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtZmxleC1zaHJpbms6MDtmbGV4LXNocmluazowOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO29wYWNpdHk6MX0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZXhwYW5kZWQtY29udGVudC1jb250YWluZXJbYXJpYS1oaWRkZW49dHJ1ZV17LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO29wYWNpdHk6MH0ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2Utd2l0aC1vZmZsaW5lLXNsYXRle2JvdHRvbTozMnB4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZXtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjYpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpO2JvcmRlci1yYWRpdXM6OHB4O3dpZHRoOjI4MHB4O2hlaWdodDo2NHB4O3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcjstd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtZmVhdHVyZWQtcHJvZHVjdC55dHAtc3VnZ2VzdGVkLWFjdGlvbi1iYWRnZXstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0scmdiYSgwLDAsMCwuNikpfS55dHAtZmVhdHVyZWQtcHJvZHVjdD4ueXRwLXN1Z2dlc3RlZC1hY3Rpb24tYmFkZ2UtZXhwYW5kZWQtY29udGVudC1jb250YWluZXI+Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLXRpdGxle2Rpc3BsYXk6bm9uZX0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtY29udGFpbmVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYWxpZ24taXRlbXM6c3RyZXRjaDstd2Via2l0LWJveC1hbGlnbjpzdHJldGNoO2FsaWduLWl0ZW1zOnN0cmV0Y2g7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjI3MnB4O3BhZGRpbmc6NHB4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC1jb250YWluZXI+Lnl0cC1zdWdnZXN0ZWQtYWN0aW9uLWJhZGdlLWRpc21pc3MtYnV0dG9uLWljb257YmFja2dyb3VuZDp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXlOQ0F5TkNJK1BIQmhkR2dnWm1sc2JEMGlJMlptWmlJZ1pEMGlUVEU1SURZdU5ERWdNVGN1TlRrZ05TQXhNaUF4TUM0MU9TQTJMalF4SURVZ05TQTJMalF4SURFd0xqVTVJREV5SURVZ01UY3VOVGtnTmk0ME1TQXhPU0F4TWlBeE15NDBNU0F4Tnk0MU9TQXhPU0F4T1NBeE55NDFPU0F4TXk0ME1TQXhNbm9pTHo0OEwzTjJaejQ9KTtvcGFjaXR5Oi44O2hlaWdodDoxOHB4O3dpZHRoOjE4cHg7YXNwZWN0LXJhdGlvOjF9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LXRodW1ibmFpbHtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXItcmFkaXVzOjRweDtiYWNrZ3JvdW5kOiNmZmY7aGVpZ2h0OjU2cHg7d2lkdGg6NTZweDtvdmVyZmxvdzpoaWRkZW59Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LXRodW1ibmFpbD5pbWd7d2lkdGg6aW5oZXJpdDtoZWlnaHQ6aW5oZXJpdDstby1vYmplY3QtZml0OmNvbnRhaW47b2JqZWN0LWZpdDpjb250YWlufS55dHAtZmVhdHVyZWQtcHJvZHVjdC1vcGVuLWluLW5ld3twb3NpdGlvbjphYnNvbHV0ZTtib3R0b206NHB4O3JpZ2h0OjRweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjgpO2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlHWnBiR3c5SWlObVptWWlJSFpwWlhkQ2IzZzlJakFnTUNBME9DQTBPQ0krUEhCaGRHZ2dabWxzYkQwaWJtOXVaU0lnWkQwaVRUQWdNR2cwT0hZME9FZ3dlaUl2UGp4d1lYUm9JR1E5SWswek9DQXpPRWd4TUZZeE1HZ3hORlkyU0RFd1l5MHlMakl4SURBdE5DQXhMamM1TFRRZ05IWXlPR013SURJdU1qRWdNUzQzT1NBMElEUWdOR2d5T0dNeUxqSXhJREFnTkMweExqYzVJRFF0TkZZeU5HZ3ROSHBOTWpnZ05uWTBhRGN1TVRkTU1UVXVOVEVnTWprdU5qWnNNaTQ0TXlBeUxqZ3pURE00SURFeUxqZ3pWakl3YURSV05ub2lMejQ4TDNOMlp6ND0pO3dpZHRoOjEycHg7aGVpZ2h0OjEycHg7b3ZlcmZsb3c6aGlkZGVufS55dHAtZmVhdHVyZWQtcHJvZHVjdC1kZXRhaWxze2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWp1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7Zm9udC1zaXplOjEycHg7LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleDoxO2ZsZXg6MTtwYWRkaW5nOjAgOHB4O292ZXJmbG93OmhpZGRlbn0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtdGl0bGV7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC1zaXplOjE0cHh9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LWRldGFpbHMgLnl0cC1mZWF0dXJlZC1wcm9kdWN0LWNvdW50ZG93bntmb250LWZhbWlseTpZb3VUdWJlIFNhbnMsUm9ib3RvLHNhbnMtc2VyaWY7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtO2ZvbnQtd2VpZ2h0OjcwMH0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtYWZmaWxpYXRlLWRpc2NsYWltZXJ7Zm9udC13ZWlnaHQ6NTAwfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1kZXRhaWxzIC55dHAtZmVhdHVyZWQtcHJvZHVjdC1hZmZpbGlhdGUtZGlzY2xhaW1lci13aGVuLXByb21vdGlvbi10ZXh0LWVuYWJsZWR7Zm9udC13ZWlnaHQ6NTAwO21hcmdpbi1yaWdodDo0cHg7b3BhY2l0eTouN30ueXRwLWZlYXR1cmVkLXByb2R1Y3QtaW5mby1pY29ue2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlHWnBiR3c5SWlObVptWWlJSFpwWlhkQ2IzZzlJakFnTUNBME9DQTBPQ0krUEhCaGRHZ2dabWxzYkQwaWJtOXVaU0lnWkQwaVRUQWdNR2cwT0hZME9FZ3dlaUl2UGp4d1lYUm9JR1E5SWsweU1pQXpOR2cwVmpJeWFDMDBlbTB5TFRNd1F6RXlMamsxSURRZ05DQXhNaTQ1TlNBMElESTBjemd1T1RVZ01qQWdNakFnTWpBZ01qQXRPQzQ1TlNBeU1DMHlNRk16TlM0d05TQTBJREkwSURSdE1DQXpObU10T0M0NE1pQXdMVEUyTFRjdU1UZ3RNVFl0TVRaVE1UVXVNVGdnT0NBeU5DQTRjekUySURjdU1UZ2dNVFlnTVRZdE55NHhPQ0F4TmkweE5pQXhObTB0TWkweU1tZzBkaTAwYUMwMGVpSXZQand2YzNablBnPT0pO2hlaWdodDoxOHB4O3dpZHRoOjE4cHg7bWFyZ2luLXJpZ2h0OjhweDtvcGFjaXR5Oi44O2FzcGVjdC1yYXRpbzoxfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1vdmVyZmxvdy1pY29ue2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlpMDFJQzAxSURNMklETTJJajQ4Y0dGMGFDQm1hV3hzUFNJalptWm1JaUJrUFNKTk1USWdPR014TGpFZ01DQXlMUzQ1SURJdE1uTXRMamt0TWkweUxUSXRNaUF1T1MweUlESWdMamtnTWlBeUlESnRNQ0F5WXkweExqRWdNQzB5SUM0NUxUSWdNbk11T1NBeUlESWdNaUF5TFM0NUlESXRNaTB1T1MweUxUSXRNbTB3SURaakxURXVNU0F3TFRJZ0xqa3RNaUF5Y3k0NUlESWdNaUF5SURJdExqa2dNaTB5TFM0NUxUSXRNaTB5SWk4K1BDOXpkbWMrKTtoZWlnaHQ6MjBweDt3aWR0aDoyMHB4O29wYWNpdHk6Ljg7YXNwZWN0LXJhdGlvOjF9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LWRldGFpbHMgLnl0cC1mZWF0dXJlZC1wcm9kdWN0LXZlbmRvcntvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtdmVuZG9yLXdoZW4tcHJvbW90aW9uLXRleHQtZW5hYmxlZHtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztvcGFjaXR5Oi43O2ZvbnQtd2VpZ2h0OjQwMH0ueXRwLWZlYXR1cmVkLXByb2R1Y3Qtd2hlbi1wcm9tb3Rpb24tdGV4dC1lbmFibGVke2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC13aGVuLXByb21vdGlvbi10ZXh0LWVuYWJsZWQgLnl0cC1mZWF0dXJlZC1wcm9kdWN0LXRyZW5kaW5ne292ZXJmbG93OmhpZGRlbn0ueXRwLWZlYXR1cmVkLXByb2R1Y3Qtd2hlbi1wcm9tb3Rpb24tdGV4dC1lbmFibGVkIC55dHAtZmVhdHVyZWQtcHJvZHVjdC10cmVuZGluZy10ZXh0e29wYWNpdHk6Ljc7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LXRyZW5kaW5nPi55dHAtZmVhdHVyZWQtcHJvZHVjdC10cmVuZGluZy1pY29ue2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdMVGsyTUNBNU5qQWdPVFl3SWo0OGNHRjBhQ0JtYVd4c1BTSWpabVptSWlCa1BTSnRNVEl6TFRJME1DMDBNeTAwTXlBeU9USXRNamt4SURFMk55QXhOamNnTWpReExUSTBNVWcyTlROMkxUWXdhREl5TjNZeU1qZG9MVFU1ZGkweE1qTk1OVE00TFRNeU1TQXpOekV0TkRnNGVpSXZQand2YzNablBnPT0pO2hlaWdodDoxMnB4O3dpZHRoOjEycHg7bWFyZ2luLXRvcDoycHg7bWFyZ2luLXJpZ2h0OjRweDtvcGFjaXR5Oi44O2FzcGVjdC1yYXRpbzoxfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1kZXRhaWxzIC55dHAtZmVhdHVyZWQtcHJvZHVjdC10cmVuZGluZ3tkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleH0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtcHJpY2UtY29udGFpbmVye292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1kZXRhaWxzIC55dHAtZmVhdHVyZWQtcHJvZHVjdC1wcmljZS1jb250YWluZXIgLnl0cC1mZWF0dXJlZC1wcm9kdWN0LXByaWNlLXdoZW4tcHJvbW90aW9uLXRleHQtZW5hYmxlZHtvcGFjaXR5Oi43O2ZvbnQtd2VpZ2h0OjQwMH0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtcHJpY2UtY29udGFpbmVyIC55dHAtZmVhdHVyZWQtcHJvZHVjdC1wcm9tb3Rpb24tdGV4dHtmb250LXdlaWdodDo1MDA7bWFyZ2luLWxlZnQ6NHB4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC1kZXRhaWxzIC55dHAtZmVhdHVyZWQtcHJvZHVjdC1zYWxlcy1vcmlnaW5hbC1wcmljZXt0ZXh0LWRlY29yYXRpb246bGluZS10aHJvdWdoO21hcmdpbi1sZWZ0OjRweH0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtcHJpY2UtZHJvcC1yZWZlcmVuY2UtcHJpY2V7bWFyZ2luLWxlZnQ6NHB4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC1zYWxlcy1vcmlnaW5hbC1wcmljZTplbXB0eXtkaXNwbGF5Om5vbmV9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LXByb21vdGlvbi10ZXh0OmVtcHR5e2Rpc3BsYXk6bm9uZX0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtcHJpY2UtZHJvcC1yZWZlcmVuY2UtcHJpY2U6ZW1wdHl7ZGlzcGxheTpub25lfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1hZmZpbGlhdGUtZGlzY2xhaW1lci13aGVuLXByb21vdGlvbi10ZXh0LWVuYWJsZWQ6ZW1wdHl7ZGlzcGxheTpub25lfS55dHAtZmVhdHVyZWQtcHJvZHVjdC1leGNsdXNpdmUtYmFkZ2UtY29udGFpbmVyLC55dHAtZmVhdHVyZWQtcHJvZHVjdC1leGNsdXNpdmUtY29udGFpbmVye2Rpc3BsYXk6LW1vei1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDstd2Via2l0LWp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0Oy13ZWJraXQtYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lnl0cC1mZWF0dXJlZC1wcm9kdWN0LWV4Y2x1c2l2ZS1iYWRnZXtkaXNwbGF5Oi1tb3otZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQ6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsbGVmdCB0b3AscmlnaHQgdG9wLGZyb20oIzdmMGU3ZiksY29sb3Itc3RvcCgjZGIxZGRiKSx0bygjZWQ1NThmKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCM3ZjBlN2YsI2RiMWRkYiwjZWQ1NThmKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjN2YwZTdmLCNkYjFkZGIsI2VkNTU4Zik7Ym9yZGVyLXJhZGl1czo0cHg7cGFkZGluZzoycHggNHB4fS55dHAtZmVhdHVyZWQtcHJvZHVjdC1leGNsdXNpdmUtYmFkZ2UtdGV4dHtsaW5lLWhlaWdodDoxMDAlO2ZvbnQtd2VpZ2h0OjcwMH0ueXRwLWZlYXR1cmVkLXByb2R1Y3QtZGV0YWlscyAueXRwLWZlYXR1cmVkLXByb2R1Y3QtZXhjbHVzaXZlLWNvdW50ZG93bnttYXJnaW4tbGVmdDo0cHg7bGluZS1oZWlnaHQ6MTAwJX0ueXRwLXRpbWUtZGlzcGxheXtmb250LXNpemU6MTA5JTtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjp0b3A7cGFkZGluZzowIDVweDt3aGl0ZS1zcGFjZTpub3dyYXA7bGluZS1oZWlnaHQ6NDdweH0ueXRwLWVtYmVkLnl0cC1lbWJlZC1tb2JpbGUgLnl0cC10aW1lLWRpc3BsYXksLnl0cC1lbWJlZC55dHAtZW1iZWQtbW9iaWxlLnl0cC1zbWFsbC1tb2RlIC55dHAtdGltZS1kaXNwbGF5e2xpbmUtaGVpZ2h0OjUxcHh9Lnl0cC1lbWJlZCAueXRwLXRpbWUtZGlzcGxheSwueXRwLXNtYWxsLW1vZGUgLnl0cC10aW1lLWRpc3BsYXl7bGluZS1oZWlnaHQ6MzlweH0ueXRwLWJpZy1tb2RlIC55dHAtdGltZS1kaXNwbGF5e2xpbmUtaGVpZ2h0OjUzcHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLWRpc3BsYXk6bm90KC55dHAtbWluaXBsYXllci11aSAqKXtkaXNwbGF5OmlubGluZS1ibG9jazstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2N1cnNvcjpwb2ludGVyO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KTtmb250LXNpemU6MTRweDttaW4td2lkdGg6MDtwYWRkaW5nOnZhcigtLXl0LWRlbGhpLXBpbGwtdG9wLWhlaWdodCwxMnB4KSA4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLXRpbWUtZGlzcGxheXtsaW5lLWhlaWdodDp2YXIoLS15dC1kZWxoaS1iaWctbW9kZS1waWxsLWhlaWdodCw1NnB4KTtmb250LXNpemU6MTZweDtwYWRkaW5nOnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtdG9wLWhlaWdodCwyMHB4KSAxMnB4fS55dHAtdm9sdW1lLXNsaWRlci1hY3RpdmUgLnl0cC10aW1lLWRpc3BsYXktYWxsb3ctYXV0b2hpZGV7ZGlzcGxheTpub25lfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdGltZS13cmFwcGVyOm5vdCgueXRwLW1pbmlwbGF5ZXItdWkgKil7bWluLXdpZHRoOjA7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OnZhcigtLXl0LWRlbGhpLXBpbGwtaGVpZ2h0LDQ4cHgpO2JvcmRlci1yYWRpdXM6MjhweDtwYWRkaW5nOjAgMTZweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtd3JhcHBlcjpub3QoLnl0cC1taW5pcGxheWVyLXVpICopIHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLXhzbWFsbC13aWR0aC1tb2RlIC55dHAtdGltZS13cmFwcGVyOm5vdCgueXRwLW1pbmlwbGF5ZXItdWkgKil7aGVpZ2h0OjQwcHg7bGluZS1oZWlnaHQ6NDBweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtd3JhcHBlcjpub3QoLnl0cC1taW5pcGxheWVyLXVpICopOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6NHB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7cG9pbnRlci1ldmVudHM6bm9uZTtib3JkZXItcmFkaXVzOjI4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLXdyYXBwZXI6bm90KC55dHAtbWluaXBsYXllci11aSAqKTpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjEpKTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtd3JhcHBlcjpub3QoLnl0cC1taW5pcGxheWVyLXVpICopOmFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS10b25hbC1ob3ZlcixyZ2JhKDI1NSwyNTUsMjU1LC4yKSk7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4ueXRwLWJpZy1tb2RlOm5vdCgueXRwLXhzbWFsbC13aWR0aC1tb2RlKSAueXRwLXRpbWUtd3JhcHBlcntoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1sdW1pbm9zaXR5Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLXdyYXBwZXI6bm90KC55dHAtbWluaXBsYXllci11aSAqKXtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpsdW1pbm9zaXR5Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1kaWZmZXJlbmNlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLXdyYXBwZXI6bm90KC55dHAtbWluaXBsYXllci11aSAqKXtiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpkaWZmZXJlbmNlOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1leGNsdXNpb24ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtd3JhcHBlcjpub3QoLnl0cC1taW5pcGxheWVyLXVpICope2JhY2tncm91bmQ6cmdiYSg4MCw4MCw4MCwuNik7YmFja2dyb3VuZC1ibGVuZC1tb2RlOmV4Y2x1c2lvbjstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpfS55dHAtdGltZS1jdXJyZW50LC55dHAtdGltZS1kdXJhdGlvbiwueXRwLXRpbWUtc2VwYXJhdG9ye2NvbG9yOiNkZGR9Lnl0cC10aW1lLXdyYXBwZXItZGVsaGl7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLWN1cnJlbnR7Y29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRleHQtcHJpbWFyeSwjZmZmKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtZHVyYXRpb24sLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10aW1lLXNlcGFyYXRvcntjb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdGV4dC1wcmltYXJ5LCNmZmYpO2ZvbnQtd2VpZ2h0OjQwMH0ueXRwLWxpdmUgLnl0cC10aW1lLWNvbnRlbnRze2Rpc3BsYXk6bm9uZX0qIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbGl2ZS1iYWRnZSwueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbGl2ZS1iYWRnZSwueXRwLXNtYWxsLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1saXZlLWJhZGdle2Rpc3BsYXk6bm9uZTt3aWR0aDphdXRvO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1saXZlLWJhZGdlLC55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbGl2ZS1iYWRnZSwueXRwLXNtYWxsLW1vZGUueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWxpdmUtYmFkZ2V7dGV4dC10cmFuc2Zvcm06bm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbGl2ZSAueXRwLWxpdmUtYmFkZ2UsLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1saXZlIC55dHAtbGl2ZS1iYWRnZXtkaXNwbGF5OmlubGluZS1ibG9ja30ueXRwLWxpdmUtYmFkZ2U6YmVmb3Jle2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjZweDtoZWlnaHQ6NnB4O3ZlcnRpY2FsLWFsaWduOjQlO21hcmdpbi1yaWdodDo1cHg7YmFja2dyb3VuZDojNzU3NTc1O2NvbnRlbnQ6IiI7Ym9yZGVyLXJhZGl1czo2cHh9Lnl0cC1iaWctbW9kZSAueXRwLWxpdmUtYmFkZ2U6YmVmb3Jle3dpZHRoOjlweDtoZWlnaHQ6OXB4O2JvcmRlci1yYWRpdXM6OXB4fS5odG1sNS12aWRlby1wbGF5ZXIgLnl0cC1saXZlLWJhZGdlW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0sLmh0bWw1LXZpZGVvLXBsYXllciAueXRwLWxpdmUtYmFkZ2VbZGlzYWJsZWRde29wYWNpdHk6MX0ueXRwLWxpdmViYWRnZS1jb2xvciAueXRwLWxpdmUtYmFkZ2UueXRwLWxpdmUtYmFkZ2UtaXMtbGl2ZWhlYWQ6YmVmb3Jle2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtYnJhbmQscmdiYSgyMjUsMCw0NSwuOSkpfS55dHAtdGltZS1kaXNwbGF5Lnl0cC1jbGlwe292ZXJmbG93OmhpZGRlbjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleH0ueXRwLWNsaXAtd2F0Y2gtZnVsbC12aWRlby1idXR0b24sLnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9uLXNlcGFyYXRvciwueXRwLXRpbWUtY2xpcC1pY29ue2Rpc3BsYXk6bm9uZX0ueXRwLWNsaXAgLnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9uLC55dHAtY2xpcCAueXRwLWNsaXAtd2F0Y2gtZnVsbC12aWRlby1idXR0b24tc2VwYXJhdG9yLC55dHAtY2xpcCAueXRwLXRpbWUtY2xpcC1pY29ue2Rpc3BsYXk6aW5saW5lfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2xpcCAueXRwLWNsaXAtd2F0Y2gtZnVsbC12aWRlby1idXR0b24tc2VwYXJhdG9ye2Rpc3BsYXk6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNsaXAgLnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmctdG9wOjEycHg7bWFyZ2luLWxlZnQ6OHB4O2hlaWdodDp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KTtib3JkZXItcmFkaXVzOjI4cHg7cGFkZGluZzowIDE2cHg7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jbGlwIC55dHAtY2xpcC13YXRjaC1mdWxsLXZpZGVvLWJ1dHRvbiBzdmd7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtZGVsaGktbW9kZXJuLnl0cC1iaWctbW9kZTpub3QoLnl0cC14c21hbGwtd2lkdGgtbW9kZSkgLnl0cC1jbGlwIC55dHAtY2xpcC13YXRjaC1mdWxsLXZpZGVvLWJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6dmFyKC0teXQtZGVsaGktYmlnLW1vZGUtcGlsbC1oZWlnaHQsNTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1sdW1pbm9zaXR5Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jbGlwIC55dHAtY2xpcC13YXRjaC1mdWxsLXZpZGVvLWJ1dHRvbntiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpsdW1pbm9zaXR5Oy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1kaWZmZXJlbmNlLnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jbGlwIC55dHAtY2xpcC13YXRjaC1mdWxsLXZpZGVvLWJ1dHRvbntiYWNrZ3JvdW5kOnJnYmEoODAsODAsODAsLjYpO2JhY2tncm91bmQtYmxlbmQtbW9kZTpkaWZmZXJlbmNlOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCl9Lnl0cC1kZWxoaS1tb2Rlcm4td2l0aC1leGNsdXNpb24ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNsaXAgLnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9ue2JhY2tncm91bmQ6cmdiYSg4MCw4MCw4MCwuNik7YmFja2dyb3VuZC1ibGVuZC1tb2RlOmV4Y2x1c2lvbjstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpfS55dHAtdGltZS1jbGlwLWljb257bWFyZ2luLWxlZnQ6MTZweDttYXJnaW4tcmlnaHQ6NXB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdGltZS1jbGlwLWljb257bWFyZ2luLWxlZnQ6MH0ueXRwLXRpbWUtY2xpcC1pY29uIHN2Z3t3aWR0aDoxNnB4O2hlaWdodDoxNnB4O21hcmdpbi1ib3R0b206LTNweDtmaWxsOiNkZGR9Lnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9uLXNlcGFyYXRvcnttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0OjhweDtmb250LXdlaWdodDo3MDB9Lnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9ue2N1cnNvcjpwb2ludGVyO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLXNtYWxsLW1vZGUgLnl0cC1jbGlwLXdhdGNoLWZ1bGwtdmlkZW8tYnV0dG9uLC55dHAtc21hbGwtbW9kZSAueXRwLWNsaXAtd2F0Y2gtZnVsbC12aWRlby1idXR0b24tc2VwYXJhdG9ye2Rpc3BsYXk6bm9uZX0ueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtbGl2ZSAueXRwLWxpdmUtYmFkZ2V7d2lkdGg6YXV0b30ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRpbWUtY29udGVudHN7b3ZlcmZsb3c6aGlkZGVufS55dHAtbm8tbGluayxzcGFuLnl0cC10aXRsZS1jaGFubmVsLW5hbWV7Y3Vyc29yOmRlZmF1bHQ7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRwLXRpdGxle292ZXJmbG93OmhpZGRlbjstd2Via2l0LWJveC1mbGV4OjE7LXdlYmtpdC1mbGV4OjE7ZmxleDoxO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4fS55dHAtZnVsbHNjcmVlbi1tZXRhZGF0YS1ib3R0b20gLnl0cC10aXRsZSAueXRwLXRpdGxlLXRleHQsLnl0cC1mdWxsc2NyZWVuLW1ldGFkYXRhLXRvcCAueXRwLXRpdGxlIC55dHAtdGl0bGUtdGV4dCwueXRwLWhpZGUtZnVsbHNjcmVlbi10aXRsZSAueXRwLXRpdGxlIC55dHAtdGl0bGUtdGV4dHtkaXNwbGF5Om5vbmV9Lnl0cC10aXRsZS10ZXh0e3ZlcnRpY2FsLWFsaWduOnRvcDttYXgtd2lkdGg6MTAwJTtwYWRkaW5nLXRvcDoxMnB4O2ZvbnQtc2l6ZToxOHB4Oy13ZWJraXQtYm94LWZsZXg6MTstd2Via2l0LWZsZXg6MTtmbGV4OjE7cGFkZGluZy1sZWZ0OjRweDtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWJpZy1tb2RlIC55dHAtdGl0bGUtdGV4dHtwYWRkaW5nLXRvcDoxOHB4O2ZvbnQtc2l6ZToyN3B4O3BhZGRpbmctbGVmdDo2cHh9Lnl0cC1lbWJlZDpub3QoLmFkLXNob3dpbmcpIC55dHAtdGl0bGUtdGV4dHtwYWRkaW5nLXRvcDoyMXB4fS55dHAtc2hvcnRzLW1vZGUueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC10aXRsZS10ZXh0e2ZvbnQtc2l6ZToxNnB4O3doaXRlLXNwYWNlOm5vcm1hbDtwYWRkaW5nLXRvcDoxNHB4O3BhZGRpbmctcmlnaHQ6NTNweH0ueXRwLWJpZy1tb2RlLnl0cC1lbWJlZDpub3QoLmFkLXNob3dpbmcpIC55dHAtdGl0bGUtdGV4dHtwYWRkaW5nLXRvcDozNnB4fS55dHAtYmlnLW1vZGUueXRwLXNob3J0cy1tb2RlLnl0cC1lbWJlZDpub3QoLmFkLXNob3dpbmcpIC55dHAtdGl0bGUtdGV4dHtwYWRkaW5nLXRvcDoxN3B4O2ZvbnQtc2l6ZToyM3B4O3BhZGRpbmctcmlnaHQ6NjRweH0ueXRwLXRpdGxlLXRleHQtbGFyZ2VyLWxpbmUtaGVpZ2h0IC55dHAtdGl0bGUtdGV4dHtsaW5lLWhlaWdodDoxLjM1fS55dHAtc2hvcnRzLW1vZGUueXRwLWVtYmVkOm5vdCguYWQtc2hvd2luZykgLnl0cC10aXRsZS1saW5re292ZXJmbG93OmhpZGRlbjtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDozOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt2aXNpYmlsaXR5OnZpc2libGV9Lnl0cC10aXRsZS1zdWJ0ZXh0e2ZvbnQtc2l6ZToxNHB4O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtdGl0bGUtY2hhbm5lbC1uYW1le21hcmdpbi10b3A6LjI1cmVtO2Rpc3BsYXk6YmxvY2s7Y29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRleHQtc2Vjb25kYXJ5KX0ueXRwLWJpZy1tb2RlIC55dHAtdGl0bGUtc3VidGV4dHtmb250LXNpemU6MjBweH0ueXRwLXRpdGxlLXN1YnRleHQgYTplbXB0eXtkaXNwbGF5Om5vbmV9Lnl0cC10aXRsZS1mdWxsZXJzY3JlZW4tbGlua3tjdXJzb3I6ZGVmYXVsdH0ueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveHtoZWlnaHQ6MTRweDt3aWR0aDozNnB4O2Zsb2F0OnJpZ2h0O3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjMpOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjA4cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246YWxsIC4wOHMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTstbXMtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX0ueXRwLWJpZy1tb2RlIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2hlaWdodDoyMXB4O3dpZHRoOjU0cHg7Ym9yZGVyLXJhZGl1czoyMXB4fS55dHAtbWVudWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1yZWQtaW5kaWNhdG9yLCNlMTAwMmQpfS55dHAtbWVudWl0ZW1bYXJpYS1kaXNhYmxlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveHtvcGFjaXR5Oi4zfS55dHAtbWVudWl0ZW1bYXJpYS1kaXNhYmxlZD10cnVlXXtjb2xvcjojOTA5MDkwfS55dHAtbWVudWl0ZW1bYXJpYS1kaXNhYmxlZD10cnVlXSBwYXRoe2ZpbGw6IzkwOTA5MH0ueXRwLWNvbnRleHRtZW51IC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2JvcmRlci1yYWRpdXM6MDtoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dHAtY29udGV4dG1lbnUueXRwLWJpZy1tb2RlIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2hlaWdodDozNnB4O3dpZHRoOjM2cHh9Lnl0cC1jb250ZXh0bWVudSAueXRwLW1lbnVpdGVtIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2JhY2tncm91bmQ6bm9uZX0ueXRwLWNvbnRleHRtZW51IC55dHAtbWVudWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TkNBeU5DSStQSEJoZEdnZ1ptbHNiRDBpSTJabVppSWdaRDBpVFRrZ01UWXVNaUEwTGpnZ01USnNMVEV1TkNBeExqUk1PU0F4T1NBeU1TQTNiQzB4TGpRdE1TNDBlaUl2UGp3dmMzWm5QZz09KX0ueXRwLWNvbnRleHRtZW51IC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94OmFmdGVye2NvbnRlbnQ6bm9uZX0ueXRwLWNvbnRleHRtZW51IC55dHAtbWVudWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94OmJlZm9yZXstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX0ueXRwLWJpZy1tb2RlIC55dHAtY29udGV4dG1lbnUgLnl0cC1tZW51aXRlbVthcmlhLWNoZWNrZWQ9dHJ1ZV0gLnl0cC1tZW51aXRlbS10b2dnbGUtY2hlY2tib3g6YmVmb3Jley13ZWJraXQtdHJhbnNmb3JtOm5vbmU7LW1zLXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lfS55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94OmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO2hlaWdodDoyMHB4O3dpZHRoOjIwcHg7Ym9yZGVyLXJhZGl1czoyMHB4O21hcmdpbi10b3A6LTNweDtiYWNrZ3JvdW5kLWNvbG9yOiNiZGJkYmQ7LXdlYmtpdC1ib3gtc2hhZG93OjAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjYpO2JveC1zaGFkb3c6MCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuNik7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMDhzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjphbGwgLjA4cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtYmlnLW1vZGUgLnl0cC1tZW51aXRlbS10b2dnbGUtY2hlY2tib3g6YWZ0ZXJ7bGVmdDowO2hlaWdodDozMHB4O3dpZHRoOjMwcHg7Ym9yZGVyLXJhZGl1czozMHB4O21hcmdpbi10b3A6ZGl2aWRlKHN1YigyMXB4LDMwcHgpLDIpfS55dHAtbWVudWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94OmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE2cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgxNnB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxNnB4KX0ueXRwLWJpZy1tb2RlIC55dHAtbWVudWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94OmFmdGVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjRweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDI0cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDI0cHgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94LC55dHAtZGVsaGktbW9kZXJuLmJpZy1tb2RlIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94e2hlaWdodDoyNHB4O3dpZHRoOjQwcHg7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtbWVkaXVtLWxpZ2h0LHJnYmEoMCwwLDAsLjMpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW1lbnVpdGVtW2FyaWEtY2hlY2tlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveCwueXRwLWRlbGhpLW1vZGVybi5iaWctbW9kZSAueXRwLW1lbnVpdGVtW2FyaWEtY2hlY2tlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveHtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1idXR0b24tcHJpbWFyeSxyZ2JhKDI1NSwyNTUsMjU1LC4zKSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1tZW51aXRlbVthcmlhLWRpc2FibGVkPXRydWVdIC55dHAtbWVudWl0ZW0tdG9nZ2xlLWNoZWNrYm94LC55dHAtZGVsaGktbW9kZXJuLmJpZy1tb2RlIC55dHAtbWVudWl0ZW1bYXJpYS1kaXNhYmxlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveHtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1tZW51aXRlbS10b2dnbGUtY2hlY2tib3g6YWZ0ZXIsLnl0cC1kZWxoaS1tb2Rlcm4uYmlnLW1vZGUgLnl0cC1tZW51aXRlbS10b2dnbGUtY2hlY2tib3g6YWZ0ZXJ7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDttYXJnaW4tbGVmdDoycHg7bWFyZ2luLXRvcDoycHg7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmU7Ym94LXNoYWRvdzpub25lO2JhY2tncm91bmQtY29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRleHQtc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjcpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLW1lbnVpdGVtW2FyaWEtY2hlY2tlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveDphZnRlciwueXRwLWRlbGhpLW1vZGVybi5iaWctbW9kZSAueXRwLW1lbnVpdGVtW2FyaWEtY2hlY2tlZD10cnVlXSAueXRwLW1lbnVpdGVtLXRvZ2dsZS1jaGVja2JveDphZnRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE2cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgxNnB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxNnB4KX0ueXRwLXRvb2x0aXB7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDAzO2ZvbnQtc2l6ZToxMTglO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxNXB4Oy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtwb2ludGVyLWV2ZW50czpub25lfS55dHAtdG9vbHRpcDpub3QoLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbil7b3BhY2l0eTowfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcDpub3QoLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbil7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtYmlnLW1vZGUgLnl0cC10b29sdGlwe2xpbmUtaGVpZ2h0OjIycHh9Lnl0cC10b29sdGlwOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pe29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpub25lOy1tcy10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguNCwwLDEsMSksb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxvcGFjaXR5IC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLG9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC10b29sdGlwLnl0cC1wcmV2aWV3e3BhZGRpbmc6MnB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgyOCwyOCwyOCwuOSk7Ym9yZGVyLXJhZGl1czoycHh9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlld3tib3JkZXItcmFkaXVzOjEycHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlld3std2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldy55dHAtZnJvc3RlZC1nbGFzcy1mYWRlLXRyYW5zaXRpb257b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksdG9wIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksdG9wIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksdG9wIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3Lnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbjpub3QoW2FyaWEtaGlkZGVuPXRydWVdKXtvcGFjaXR5OjF9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldyAueXRwLXRvb2x0aXAtdGl0bGV7cGFkZGluZzowIDlweDt0ZXh0LWFsaWduOnN0YXJ0O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC10aXRsZXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6NXB4IDlweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC1iZ3ttYXJnaW46NHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdGV4dC1kZXRhaWwueXRwLXByZXZpZXcgLnl0cC10b29sdGlwLXRpdGxlIC55dHAtdG9vbHRpcC1rZXlib2FyZC1zaG9ydGN1dHttYXJnaW4tbGVmdDo4cHh9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldyAueXRwLXRvb2x0aXAtdGV4dHtwYWRkaW5nOjAgOXB4O3doaXRlLXNwYWNlOm5vd3JhcH0ueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dHtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdGV4dC1kZXRhaWwueXRwLXByZXZpZXcgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2Rpc3BsYXk6bm9uZX0ueXRwLXRvb2x0aXA6bm90KC55dHAtcHJldmlldykgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2JvcmRlci1yYWRpdXM6NHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcDpub3QoLnl0cC1wcmV2aWV3KSAueXRwLXRvb2x0aXAtYm90dG9tLXRleHR7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0cC10b29sdGlwLWJnLC55dHAtdG9vbHRpcC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCl7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKXtwYWRkaW5nOjFweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXN0eWxlIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dCwueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXN0eWxlIC55dHAtdG9vbHRpcC10aXRsZXtkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwOm5vdCgueXRwLXByZXZpZXcpIC55dHAtdG9vbHRpcC1wcm9ncmVzcy1iYXItcGlsbHtkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1zdHlsZSAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXBpbGx7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7cG9zaXRpb246cmVsYXRpdmU7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDotd2Via2l0LWZpdC1jb250ZW50O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnQ7bWF4LXdpZHRoOjEwMCU7cGFkZGluZzo4cHggMTZweDtib3JkZXItcmFkaXVzOjE4cHg7dG9wOjQ1cHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2xlZnQ6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdG9vbHRpcC1wcm9ncmVzcy1iYXItc3R5bGUgLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxsIHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1zdHlsZSAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXBpbGwgLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxsLXRpdGxle21hcmdpbi1sZWZ0OjhweDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW59Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1zdHlsZSAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXBpbGwgLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxsLXRpdGxlOmVtcHR5e2Rpc3BsYXk6bm9uZX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXN0eWxlOm5vdCgueXRwLXByZXZpZXcpIC55dHAtdG9vbHRpcC1wcm9ncmVzcy1iYXItcGlsbHt0b3A6LTE2cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1zdHlsZSAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXBpbGwueXRwLWZyb3N0ZWQtZ2xhc3MtZmFkZS10cmFuc2l0aW9ue3Bvc2l0aW9uOmFic29sdXRlO21hcmdpbi10b3A6MTBweDt0b3A6dW5zZXQ7bWF4LXdpZHRoOnVuc2V0O2hlaWdodDotd2Via2l0LWZpdC1jb250ZW50O2hlaWdodDotbW96LWZpdC1jb250ZW50O2hlaWdodDpmaXQtY29udGVudDtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx0b3AgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdG9vbHRpcC1wcm9ncmVzcy1iYXItc3R5bGU6bm90KC55dHAtcHJldmlldykgLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxsLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbntib3R0b206OHB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdG9vbHRpcC1wcm9ncmVzcy1iYXItc3R5bGU6bm90KFthcmlhLWhpZGRlbj10cnVlXSkgLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxsLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbntvcGFjaXR5OjF9Lnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1waWxse2Rpc3BsYXk6bm9uZX0ueXRwLWRlbGhpLW1vZGVybi55dHAtYmlnLW1vZGUgLnl0cC10b29sdGlwLnl0cC10b29sdGlwLXByb2dyZXNzLWJhci1zdHlsZSAueXRwLXRvb2x0aXAtcHJvZ3Jlc3MtYmFyLXBpbGx7dG9wOjY3cHh9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldyAueXRwLXRvb2x0aXAtYmd7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoxMnB4O2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MTJweH0ueXRwLXRvb2x0aXAtdGV4dC13cmFwcGVye2JvcmRlci1yYWRpdXM6M3B4fS55dHAtdG9vbHRpcC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLXRleHQtd3JhcHBlcntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206NXB4O2xlZnQ6MDt3aWR0aDoxMDAlO3RleHQtYWxpZ246Y2VudGVyO3otaW5kZXg6MX0ueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC10ZXh0LXdyYXBwZXJ7bWFyZ2luOjRweCAwO292ZXJmbG93OmhpZGRlbjttYXgtaGVpZ2h0OjQ2cHh9Lnl0cC1iaWctbW9kZSAueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC10ZXh0LXdyYXBwZXJ7bWFyZ2luOjZweCAwO21heC1oZWlnaHQ6NjlweH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXA6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10ZXh0LXdyYXBwZXIueXRwLWZyb3N0ZWQtZ2xhc3MtZmFkZS10cmFuc2l0aW9ue29wYWNpdHk6MDtib3JkZXItcmFkaXVzOjhweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXA6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10ZXh0LXdyYXBwZXIueXRwLWZyb3N0ZWQtZ2xhc3MtZmFkZS10cmFuc2l0aW9uIHN2Z3std2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwOm5vdCgueXRwLXRleHQtZGV0YWlsKSAueXRwLXRvb2x0aXAtdGV4dC13cmFwcGVyLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbnstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwOm5vdCgueXRwLXRleHQtZGV0YWlsKTpub3QoW2FyaWEtaGlkZGVuPXRydWVdKSAueXRwLXRvb2x0aXAtdGV4dC13cmFwcGVyLnl0cC1mcm9zdGVkLWdsYXNzLWZhZGUtdHJhbnNpdGlvbntvcGFjaXR5OjF9Lnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2Rpc3BsYXk6YmxvY2s7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI4LDI4LDI4LC45KTtib3JkZXItcmFkaXVzOjJweDtwYWRkaW5nOjVweCA5cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXA6bm90KC55dHAtZnJvc3RlZC1nbGFzcy1mYWRlLXRyYW5zaXRpb24pIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dHtib3JkZXItcmFkaXVzOjhweDstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0teXQtZnJvc3RlZC1nbGFzcy1iYWNrZHJvcC1maWx0ZXItb3ZlcnJpZGUsYmx1cigxNnB4KSk7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1tZWRpdW0tbGlnaHQscmdiYSgwLDAsMCwuMykpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXA6bm90KC55dHAtZnJvc3RlZC1nbGFzcy1mYWRlLXRyYW5zaXRpb24pIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dCBzdmd7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtdG9vbHRpcC1vcGFxdWUgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2JhY2tncm91bmQtY29sb3I6cmdiKDI4LDI4LDI4KX0ueXRwLXRvb2x0aXAueXRwLXByZXZpZXcgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2Rpc3BsYXk6aW5saW5lO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS55dHAtdG9vbHRpcC1pbWFnZS1lbmFibGVkIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dHtwYWRkaW5nLWxlZnQ6MzRweH0ueXRwLWJpZy1tb2RlIC55dHAtdG9vbHRpcC1pbWFnZS1lbmFibGVkIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dHtwYWRkaW5nLWxlZnQ6NDVweH0ueXRwLXRvb2x0aXAueXRwLXRleHQtZGV0YWlsLnl0cC1wcmV2aWV3IC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmc6MH0ueXRwLXRvb2x0aXAtYmd7YmFja2dyb3VuZC1jb2xvcjojMDAwO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Om5vbmV9Lnl0cC10b29sdGlwLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lnl0cC10b29sdGlwLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKS55dHAtZnJvc3RlZC1nbGFzcy1mYWRlLXRyYW5zaXRpb246aXMoW2FyaWEtaGlkZGVuPXRydWVdKXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS55dHAtcHJvZ3Jlc3MtYmFyLXNuYXAgLnl0cC10b29sdGlwLWJne291dGxpbmU6MXB4IHNvbGlkICNmZmY7b3V0bGluZS1vZmZzZXQ6LTFweH0ueXRwLXRvb2x0aXAueXRwLXByZXZpZXcgLnl0cC10b29sdGlwLWJne2Rpc3BsYXk6YmxvY2t9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldyAueXRwLXRvb2x0aXAtYmd7ZmxvYXQ6bGVmdH0ueXRwLWRlbGhpLW1vZGVybiAueXRwLXRvb2x0aXAtYmcueXRwLWZyb3N0ZWQtZ2xhc3MtZmFkZS10cmFuc2l0aW9ue29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHRvcCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pIC55dHAtdG9vbHRpcC1iZy55dHAtZnJvc3RlZC1nbGFzcy1mYWRlLXRyYW5zaXRpb257b3BhY2l0eToxfS55dHAtdG9vbHRpcC1kdXJhdGlvbntkaXNwbGF5Om5vbmV9Lnl0cC10b29sdGlwLnl0cC10ZXh0LWRldGFpbC55dHAtcHJldmlldy55dHAtaGFzLWR1cmF0aW9uIC55dHAtdG9vbHRpcC1kdXJhdGlvbntkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjNweDtib3R0b206M3B4O2JhY2tncm91bmQtY29sb3I6cmdiYSgyOCwyOCwyOCwuOSk7cGFkZGluZzoycHggNHB4O2JvcmRlci1yYWRpdXM6MnB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC55dHAtdGV4dC1kZXRhaWwueXRwLXByZXZpZXcueXRwLWhhcy1kdXJhdGlvbiAueXRwLXRvb2x0aXAtZHVyYXRpb257YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KTtib3JkZXItcmFkaXVzOiNmZmZ9Lnl0cC10b29sdGlwLXRpdGxle2Rpc3BsYXk6bm9uZX0ueXRwLXRvb2x0aXAtdGl0bGUgc3Zne2Rpc3BsYXk6bm9uZX0ueXRwLWJpZy1tb2RlLnl0cC1maW5lLXNjcnViYmluZy1leHAgLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKSAueXRwLXRvb2x0aXAtZWR1e2ZvbnQtc2l6ZToxOHB4fS55dHAtYmlnLW1vZGUueXRwLWZpbmUtc2NydWJiaW5nLWV4cCAueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC1lZHUgc3Zne2hlaWdodDoxOHB4O3dpZHRoOjE4cHh9Lnl0cC1maW5lLXNjcnViYmluZy1leHAgLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKSAueXRwLXRvb2x0aXAtZWR1e2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6MTAzJTtoZWlnaHQ6YXV0bztmb250LXNpemU6MTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjc1KX0ueXRwLXRvb2x0aXAtZWR1e2Rpc3BsYXk6bm9uZX0ueXRwLWZpbmUtc2NydWJiaW5nLWV4cCAueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC1lZHUgc3ZnLC55dHAtcHJvZ3Jlc3MtYmFyLWRlY29yYXRpb24gLnl0cC10b29sdGlwLXRpdGxlIHN2Z3tkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxMnB4O2hlaWdodDoxMnB4O21hcmdpbi1yaWdodDozcHg7ZmlsbDp3aGl0ZTt0ZXh0LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjc1KX0ueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10aXRsZXt3aWR0aDoyMDAlO3RleHQtYWxpZ246Y2VudGVyO3JpZ2h0OjgwcHg7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7aGVpZ2h0OjE2cHg7Ym9yZGVyOjA7dG9wOjQ1cHg7dGV4dC1zaGFkb3c6MCAwIDRweCByZ2JhKDAsMCwwLC43NSl9Lnl0cC1iaWctbW9kZSAueXRwLXRvb2x0aXAueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10aXRsZXt3aWR0aDoyMDAlO3RleHQtYWxpZ246Y2VudGVyO3JpZ2h0OjEyMHB4O3RvcDo2MXB4O2hlaWdodDoyNHB4fS55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e2JhY2tncm91bmQ6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6NDVweDt0ZXh0LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsLjc1KX0ueXRwLWJpZy1tb2RlIC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLWJvdHRvbS10ZXh0e3RvcDo2NXB4fS55dHAtdG9vbHRpcC1rZXlib2FyZC1zaG9ydGN1dHtkaXNwbGF5Om5vbmV9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC10b29sdGlwLWtleWJvYXJkLXNob3J0Y3V0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4zMDE5NjA3ODQzKTttaW4td2lkdGg6MTFweDtib3JkZXItcmFkaXVzOjRweDttYXJnaW4tbGVmdDo0cHg7Y29sb3I6I2ZmZjtwYWRkaW5nOjAgMnB4fS55dHAtZGVsaGktbW9kZXJuIC55dHAtdG9vbHRpcC1rZXlib2FyZC1zaG9ydGN1dDplbXB0eXtkaXNwbGF5Om5vbmU7d2lkdGg6MH0ueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10ZXh0LW5vLXRpdGxle3RvcDozM3B4fS55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLXRleHQtbm8tdGl0bGUueXRwLW1vZGVybi10b29sdGlwLXRleHR7dG9wOjI1cHh9Lnl0cC1iaWctbW9kZSAueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC10ZXh0LW5vLXRpdGxle3RvcDo0MXB4fS55dHAtdG9vbHRpcC55dHAtdGV4dC1kZXRhaWwgLnl0cC10b29sdGlwLXRpdGxle2Rpc3BsYXk6YmxvY2s7Y29sb3I6I2FhYTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lnl0cC10b29sdGlwLWltYWdle3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czoxMHB4O3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6bm9uZTt0b3A6MnB4O2xlZnQ6N3B4Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1zaXplOmNvbnRhaW59Lnl0cC1iaWctbW9kZSAueXRwLXRvb2x0aXAtaW1hZ2V7d2lkdGg6MjVweDtoZWlnaHQ6MjVweDtib3JkZXItcmFkaXVzOjEyLjVweDt0b3A6M3B4O2xlZnQ6MTBweH0ueXRwLXRvb2x0aXAtaW1hZ2UtZW5hYmxlZCAueXRwLXRvb2x0aXAtaW1hZ2V7ZGlzcGxheTppbmhlcml0fS55dHAtaW5saW5lLXByZXZpZXctbW9kZSAueXRwLXByZXZpZXc6bm90KC55dHAtdGV4dC1kZXRhaWwpIC55dHAtdG9vbHRpcC1ib3R0b20tdGV4dCwueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKSAueXRwLXRvb2x0aXAtYm90dG9tLXRleHR7dG9wOi00cHh9Lnl0cC1pbmxpbmUtcHJldmlldy1tb2RlIC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLXRleHQtbm8tdGl0bGUsLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLXRleHQtbm8tdGl0bGV7dG9wOi00cHh9Lnl0cC1pbmxpbmUtcHJldmlldy1tb2RlIC55dHAtcHJldmlldzpub3QoLnl0cC10ZXh0LWRldGFpbCkgLnl0cC10b29sdGlwLWVkdSwueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC1wcmV2aWV3Om5vdCgueXRwLXRleHQtZGV0YWlsKSAueXRwLXRvb2x0aXAtZWR1e2Rpc3BsYXk6bm9uZX0ueXRwLXVubXV0ZS55dHAtcG9wdXB7cG9zaXRpb246YWJzb2x1dGU7dG9wOnN1Yig0OHB4LDEycHgpO2xlZnQ6MDt6LWluZGV4OjEwMDE7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2NvbG9yOiMwMDA7Zm9udC1zaXplOjEyNyU7Zm9udC13ZWlnaHQ6NTAwO2JhY2tncm91bmQ6bm9uZTtwYWRkaW5nOjEycHh9Lnl0cC1iaWctbW9kZSAueXRwLXVubXV0ZS55dHAtcG9wdXB7dG9wOnN1Yig0OHB4LDE4cHgpO3BhZGRpbmc6MThweH0ueXRwLWF1dG9oaWRlIC55dHAtdW5tdXRlLC55dHAtaGlkZS1pbmZvLWJhciAueXRwLXVubXV0ZXt0b3A6MH0ueXRwLXVubXV0ZS1pbm5lcntwYWRkaW5nLWxlZnQ6M3B4O3BhZGRpbmctcmlnaHQ6MTJweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNTUsMjU1LDI1NSk7Ym9yZGVyLXJhZGl1czoycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2YxZjFmMTt0ZXh0LXNoYWRvdzpub25lO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0cC1iaWctbW9kZSAueXRwLXVubXV0ZS1pbm5lcntwYWRkaW5nLWxlZnQ6NXB4O3BhZGRpbmctcmlnaHQ6MThweH0ueXRwLXVubXV0ZS1pY29ue3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRwLWVtYmVkIC55dHAtdW5tdXRlLWljb257d2lkdGg6NDBweDtoZWlnaHQ6NDBweH0ueXRwLXVubXV0ZS1pY29uIC55dHAtc3ZnLWZpbGx7ZmlsbDojMDAwfS55dHAtdW5tdXRlLXRleHR7bWF4LXdpZHRoOjIwMHB4O3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0cC1iaWctbW9kZSAueXRwLXVubXV0ZS1pY29ue3dpZHRoOjU0cHg7aGVpZ2h0OjU0cHh9Lnl0cC11bm11dGUueXRwLXBvcHVwLnl0cC11bm11dGUtYW5pbWF0ZWQgLnl0cC11bm11dGUtaW5uZXJ7cG9zaXRpb246cmVsYXRpdmU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOm5vbmU7cGFkZGluZzowfS55dHAtdW5tdXRlLWFuaW1hdGVkIC55dHAtdW5tdXRlLWljb257cGFkZGluZy1sZWZ0OjJweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjEwO2JhY2tncm91bmQtY29sb3I6cmdiKDI1NSwyNTUsMjU1KTtib3JkZXItcmFkaXVzOjJweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZjFmMWYxfS55dHAtdW5tdXRlLWFuaW1hdGVkIC55dHAtdW5tdXRlLWJveHtkaXNwbGF5OmJsb2NrO2JhY2tncm91bmQtY29sb3I6cmdiKDI1NSwyNTUsMjU1KTtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7Ym90dG9tOjA7Ym9yZGVyLXJhZGl1czoycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2YxZjFmMX0ueXRwLXVubXV0ZS1hbmltYXRlZCAueXRwLXVubXV0ZS10ZXh0e3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTA7cGFkZGluZy10b3A6MXB4O3BhZGRpbmctcmlnaHQ6MTBweH0ueXRwLXVubXV0ZS1leHBhbmQgLnl0cC11bm11dGUtYm94e3dpZHRoOjA7LXdlYmtpdC1hbmltYXRpb246eXRwLXVubXV0ZS13aWR0aC1hbmltIC41cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIDMuNXMgZm9yd2FyZHM7YW5pbWF0aW9uOnl0cC11bm11dGUtd2lkdGgtYW5pbSAuNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSAzLjVzIGZvcndhcmRzfS55dHAtdW5tdXRlLWV4cGFuZCAueXRwLXVubXV0ZS10ZXh0e29wYWNpdHk6MDstd2Via2l0LWFuaW1hdGlvbjp5dHAtdW5tdXRlLWFscGhhLWFuaW0gLjI1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpIDMuOHMgZm9yd2FyZHM7YW5pbWF0aW9uOnl0cC11bm11dGUtYWxwaGEtYW5pbSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSkgMy44cyBmb3J3YXJkc30ueXRwLXVubXV0ZS1zaHJpbmsgLnl0cC11bm11dGUtYm94e3dpZHRoOjEwMCU7LXdlYmtpdC1hbmltYXRpb246eXRwLXVubXV0ZS13aWR0aC1hbmltIC41cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpIDUuNXMgcmV2ZXJzZSBmb3J3YXJkczthbmltYXRpb246eXRwLXVubXV0ZS13aWR0aC1hbmltIC41cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpIDUuNXMgcmV2ZXJzZSBmb3J3YXJkc30ueXRwLXVubXV0ZS1zaHJpbmsgLnl0cC11bm11dGUtdGV4dHtvcGFjaXR5OjE7LXdlYmtpdC1hbmltYXRpb246eXRwLXVubXV0ZS1hbHBoYS1hbmltIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSA1LjRzIHJldmVyc2UgZm9yd2FyZHM7YW5pbWF0aW9uOnl0cC11bm11dGUtYWxwaGEtYW5pbSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSkgNS40cyByZXZlcnNlIGZvcndhcmRzfUAtd2Via2l0LWtleWZyYW1lcyB5dHAtdW5tdXRlLXdpZHRoLWFuaW17MCV7d2lkdGg6MH10b3t3aWR0aDoxMDAlfX1Aa2V5ZnJhbWVzIHl0cC11bm11dGUtd2lkdGgtYW5pbXswJXt3aWR0aDowfXRve3dpZHRoOjEwMCV9fUAtd2Via2l0LWtleWZyYW1lcyB5dHAtdW5tdXRlLWFscGhhLWFuaW17MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19QGtleWZyYW1lcyB5dHAtdW5tdXRlLWFscGhhLWFuaW17MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19Lnl0cC11cG5leHR7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jazt2ZXJ0aWNhbC1hbGlnbjp0b3A7b3BhY2l0eToxO292ZXJmbG93OmhpZGRlbjt3aWR0aDoxMDAlO2hlaWdodDoxMDAlOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjphbGwgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7ei1pbmRleDozOX0ueXRwLXVwbmV4dC10b3B7d2lkdGg6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvO2JvdHRvbTo1MCU7bWFyZ2luLWJvdHRvbTo0OHB4fS55dHAtc21hbGwtbW9kZSAueXRwLXVwbmV4dC10b3B7bWFyZ2luLWJvdHRvbToyNnB4fS55dHAtc21hbGwtbW9kZS55dHAtZW1iZWQgLnl0cC11cG5leHQtbW9iaWxlIC55dHAtdXBuZXh0LXRvcHttYXJnaW4tYm90dG9tOjB9Lnl0cC11cG5leHQtYm90dG9te3dpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzt0b3A6NTAlO21hcmdpbi10b3A6NDhweH0ueXRwLXNtYWxsLW1vZGUgLnl0cC11cG5leHQtYm90dG9te21hcmdpbi10b3A6MjZweH0ueXRwLXNtYWxsLW1vZGUueXRwLWVtYmVkIC55dHAtdXBuZXh0LW1vYmlsZSAueXRwLXVwbmV4dC1ib3R0b217bWFyZ2luLXRvcDo0OHB4fS55dHAtdXBuZXh0LXRpdGxle2Rpc3BsYXk6YmxvY2s7cGFkZGluZzowIDEwcHggMnB4O21hcmdpbi1sZWZ0OjMycHg7bWFyZ2luLXJpZ2h0OjMycHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjIwMCU7Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7d29yZC13cmFwOm5vcm1hbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dHAtc21hbGwtbW9kZSAueXRwLXVwbmV4dC10aXRsZXtmb250LXNpemU6MTUwJX0ueXRwLXVwbmV4dC1hdXRob3J7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxLjNlbTtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIDEwcHggMTBweDt0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxMzAlfS55dHAtdXBuZXh0LWhlYWRlcntkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxNDAlO3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmctYm90dG9tOjhweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC43KX0ueXRwLXNtYWxsLW1vZGUgLnl0cC11cG5leHQtaGVhZGVye3BhZGRpbmctYm90dG9tOjB9Lnl0cC11cG5leHQtY2FuY2Vse2Rpc3BsYXk6YmxvY2s7ZmxvYXQ6bm9uZTt0ZXh0LWFsaWduOmNlbnRlcn0ueXRwLXVwbmV4dC1jYW5jZWwtYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2Zsb2F0Om5vbmU7cGFkZGluZzoxMHB4IDIwcHg7Zm9udC1zaXplOjE0MCU7Zm9udC13ZWlnaHQ6NTAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ueXRwLXVwbmV4dC1jYW5jZWwtYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMTUpO2JvcmRlci1yYWRpdXM6MnB4fS55dHAtdXBuZXh0LWF1dG9wbGF5LWljb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt3aWR0aDo2NHB4O2hlaWdodDo2NHB4O21hcmdpbjotMzJweCAwIDAgLTMycHg7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmFsbCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRwLXNtYWxsLW1vZGUgLnl0cC11cG5leHQtYXV0b3BsYXktaWNvbnt3aWR0aDo1MHB4O2hlaWdodDo1MHB4O21hcmdpbjotMjVweCAwIDAgLTI1cHh9Lnl0cC1zbWFsbC1tb2RlLnl0cC1lbWJlZCAueXRwLXVwbmV4dC1tb2JpbGUgLnl0cC11cG5leHQtYXV0b3BsYXktaWNvbnttYXJnaW4tdG9wOjB9Lnl0cC1lbWJlZCAueXRwLWVuZHNjcmVlbi10YWtlb3Zlcn4ueXRwLXJlcGxheS1idXR0b257ZGlzcGxheTpub25lfS55dHAtdXBuZXh0LXBhdXNlZHtkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc2l6ZToxMjAlO2ZvbnQtc3R5bGU6aXRhbGljO29wYWNpdHk6MH0ueXRwLXVwbmV4dC1hdXRvcGxheS1wYXVzZWQgLnl0cC11cG5leHQtcGF1c2Vke29wYWNpdHk6MTstd2Via2l0LXRyYW5zaXRpb246YWxsIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246YWxsIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS55dHAtdXBuZXh0IC55dHAtY3VlZC10aHVtYm5haWwtb3ZlcmxheS1pbWFnZXtvcGFjaXR5Oi40fS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXVwbmV4dCAueXRwLWN1ZWQtdGh1bWJuYWlsLW92ZXJsYXktaW1hZ2V7b3BhY2l0eTouNjR9Lnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtdXBuZXh0IC55dHAtdXBuZXh0LXRvcHt0b3A6MDttYXJnaW46MTJweCAwIDAgMTJweH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtYXV0aG9yLC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXVwbmV4dCAueXRwLXVwbmV4dC1oZWFkZXIsLnl0cC1wbGF5ZXItbWluaW1pemVkIC55dHAtdXBuZXh0IC55dHAtdXBuZXh0LXRpdGxle3RleHQtYWxpZ246bGVmdDttYXJnaW4tYm90dG9tOjRweH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtYXV0aG9yLC55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXVwbmV4dCAueXRwLXVwbmV4dC1oZWFkZXJ7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjcpO3BhZGRpbmc6MH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtdGl0bGV7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOiNmZmY7cGFkZGluZzowIDc1cHggMCAwfS55dHAtcGxheWVyLW1pbmltaXplZCAueXRwLXVwbmV4dCAueXRwLXVwbmV4dC1hdXRvcGxheS1pY29ue3dpZHRoOjYycHg7aGVpZ2h0OjYycHg7bWFyZ2luOi0zMXB4IDAgMCAtMzFweH0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtY2FuY2VsLWJ1dHRvbiwueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtcGF1c2Vke2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC43KX0ueXRwLXBsYXllci1taW5pbWl6ZWQgLnl0cC11cG5leHQgLnl0cC11cG5leHQtY2FuY2VsLWJ1dHRvbntwYWRkaW5nOjhweDttYXJnaW4tdG9wOjhweH0ueXRwLWJpZy1tb2RlOm5vdCgueXRwLW13ZWItcGxheWVyKSAueXRwLXVwbmV4dC1hdXRvcGxheS1pY29ue3dpZHRoOjE0NnB4O2hlaWdodDoxNDZweDttYXJnaW46LTczcHggMCAwIC03M3B4fS55dHAtYmlnLW1vZGU6bm90KC55dHAtbXdlYi1wbGF5ZXIpIC55dHAtdXBuZXh0LWJvdHRvbXttYXJnaW4tdG9wOjc2cHh9Lnl0cC1iaWctbW9kZTpub3QoLnl0cC1td2ViLXBsYXllcikgLnl0cC11cG5leHQtdG9we21hcmdpbi1ib3R0b206NzZweH0ueXRwLW13ZWItcGxheWVyLnl0cC1zbWFsbC1tb2RlIC55dHAtdXBuZXh0LXRvcHttYXJnaW4tYm90dG9tOjA7Ym90dG9tOjUwJX0ueXRwLW13ZWItcGxheWVyLnl0cC1zbWFsbC1tb2RlIC55dHAtdXBuZXh0LWF1dG9wbGF5LWljb257dG9wOjYwJX0ueXRwLW13ZWItcGxheWVyLnl0cC1zbWFsbC1tb2RlIC55dHAtdXBuZXh0LWJvdHRvbXttYXJnaW4tdG9wOjA7dG9wOjcwJX0ueXRwLXVzZXItaW5mby1wYW5lbHtiYWNrZ3JvdW5kOnJnYmEoMjgsMjgsMjgsLjgpO2NvbG9yOiNmZmY7cmlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoyOTJweDtoZWlnaHQ6NzRweDtib3R0b206MDt6LWluZGV4OjgwO21pbi13aWR0aDoyNmVtO2Rpc3BsYXk6dGFibGV9Lnl0cC11c2VyLWluZm8tcGFuZWwgLnl0cC1jb2xsYXBzZXtoZWlnaHQ6MjBweDtvcGFjaXR5Oi45O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjIwcHg7dG9wOjEycHg7d2lkdGg6MjBweH0ueXRwLXVzZXItaW5mby1wYW5lbCAueXRwLWNvbGxhcHNlOmhvdmVye29wYWNpdHk6MX0ueXRwLXVzZXItaW5mby1wYW5lbC1jb250ZW50e2Rpc3BsYXk6dGFibGUtY2VsbDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7cGFkZGluZzoxNHB4IDA7Zm9udC1zaXplOjE2cHh9Lnl0cC11c2VyLWluZm8tcGFuZWwtY29udGVudD5kaXY+ZGl2e2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nOjAgLjVlbTt0ZXh0LWFsaWduOnJpZ2h0O3dpZHRoOjEwZW19Lnl0cC11c2VyLWluZm8tcGFuZWwtaWNvbntkaXNwbGF5OnRhYmxlLWNlbGw7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjI0cHg7cGFkZGluZzowIDE0cHh9Lnl0cC11c2VyLWluZm8tcGFuZWwtbG9naW57Y29sb3I6IzNlYTZmZjtjdXJzb3I6cG9pbnRlcn0ueXRwLXVzZXItaW5mby1wYW5lbC1pbmZve21heC13aWR0aDoyMDBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0cC12aWRlby1tZW51LWl0ZW17ZGlzcGxheTpibG9jaztoZWlnaHQ6NDRweDtwYWRkaW5nOjEwcHh9Lnl0cC1iaWctbW9kZSAueXRwLXZpZGVvLW1lbnUtaXRlbXtoZWlnaHQ6NjZweDtwYWRkaW5nOjE1cHh9Lnl0cC12aWRlby1tZW51LWl0ZW1bYXJpYS1jaGVja2VkPXRydWVde2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMSl9Lnl0cC12aWRlby1tZW51LWl0ZW06aG92ZXIsLnl0cC12aWRlby1tZW51LWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMTUpfS55dHAtdmlkZW8tbWVudS1pdGVtLWluZGV4LC55dHAtdmlkZW8tbWVudS1pdGVtLW5vdy1wbGF5aW5ne3BhZGRpbmctcmlnaHQ6OXB4O21pbi13aWR0aDoxMHB4O2hlaWdodDo0NHB4O2xpbmUtaGVpZ2h0OjQ0cHg7ZmxvYXQ6bGVmdH0ueXRwLWJpZy1tb2RlIC55dHAtdmlkZW8tbWVudS1pdGVtLWluZGV4LC55dHAtYmlnLW1vZGUgLnl0cC12aWRlby1tZW51LWl0ZW0tbm93LXBsYXlpbmd7cGFkZGluZy1yaWdodDoxM3B4O2hlaWdodDo2NnB4O2xpbmUtaGVpZ2h0OjY2cHh9Lnl0cC12aWRlby1tZW51LWl0ZW0tbm93LXBsYXlpbmd7ZGlzcGxheTpub25lO2NvbG9yOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tc3RhdGljLWJyYW5kLXJlZCwjZjAzKX0ueXRwLWNvbG9yLXdoaXRlIC55dHAtdmlkZW8tbWVudS1pdGVtLW5vdy1wbGF5aW5ne2NvbG9yOiNkZGR9Lnl0cC1jb2xvci1wYXJ0eSAueXRwLXZpZGVvLW1lbnUtaXRlbS1ub3ctcGxheWluZ3std2Via2l0LWFuaW1hdGlvbjp5dHAtcGFydHktY29sb3IgLjE1cyBsaW5lYXIgaW5maW5pdGU7YW5pbWF0aW9uOnl0cC1wYXJ0eS1jb2xvciAuMTVzIGxpbmVhciBpbmZpbml0ZX0ueXRwLXZpZGVvLW1lbnUtaXRlbVthcmlhLWNoZWNrZWQ9dHJ1ZV0gLnl0cC12aWRlby1tZW51LWl0ZW0tbm93LXBsYXlpbmd7ZGlzcGxheTppbmxpbmV9Lnl0cC12aWRlby1tZW51LWl0ZW1bYXJpYS1jaGVja2VkPXRydWVdIC55dHAtdmlkZW8tbWVudS1pdGVtLWluZGV4e2Rpc3BsYXk6bm9uZX0ueXRwLXZpZGVvLW1lbnUtaXRlbS10aXRsZXtwYWRkaW5nLWxlZnQ6OXB4O2ZvbnQtc2l6ZToxMjAlO21heC1oZWlnaHQ6Mi42ZW07b3ZlcmZsb3c6aGlkZGVufS55dHAtdmlkZW8tbWVudS1pdGVtLWF1dGhvcntwYWRkaW5nLWxlZnQ6OXB4O2NvbG9yOiNiOGI4Yjg7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0cC12aWRlby1tZW51LWl0ZW0tdGh1bWJuYWlse2Zsb2F0OmxlZnQ7d2lkdGg6NjRweDtoZWlnaHQ6MzZweDttYXJnaW46NHB4O2JvcmRlcjowIHNvbGlkIHZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tc3RhdGljLWJyYW5kLXJlZCwjZjAzKTtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTZweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo2NHB4IDQ4cHg7YmFja2dyb3VuZC1zaXplOjY0cHggNDhweH0ueXRwLWNvbG9yLXdoaXRlIC55dHAtdmlkZW8tbWVudS1pdGVtLXRodW1ibmFpbHtib3JkZXItY29sb3I6I2RkZH0ueXRwLWNvbG9yLXBhcnR5IC55dHAtdmlkZW8tbWVudS1pdGVtLXRodW1ibmFpbHstd2Via2l0LWFuaW1hdGlvbjp5dHAtcGFydHktYmFja2dyb3VuZC1jb2xvciAuMXMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbjp5dHAtcGFydHktYmFja2dyb3VuZC1jb2xvciAuMXMgbGluZWFyIGluZmluaXRlfS55dHAtYmlnLW1vZGUgLnl0cC12aWRlby1tZW51LWl0ZW0tdGh1bWJuYWlse3dpZHRoOjk2cHg7aGVpZ2h0OjU0cHg7bWFyZ2luOjZweDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTlweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTo5NnB4IDcycHg7YmFja2dyb3VuZC1zaXplOjk2cHggNzJweH0ueXRwLXZpZGVvLW1lbnUtaXRlbVthcmlhLWNoZWNrZWQ9dHJ1ZV0gLnl0cC12aWRlby1tZW51LWl0ZW0tdGh1bWJuYWlse21hcmdpbjoycHg7Ym9yZGVyLXdpZHRoOjJweH0ueXRwLWJpZy1tb2RlIC55dHAtdmlkZW8tbWVudS1pdGVtW2FyaWEtY2hlY2tlZD10cnVlXSAueXRwLXZpZGVvLW1lbnUtaXRlbS10aHVtYm5haWx7bWFyZ2luOjRweH0ueXRwLXZpZGVvd2FsbC1zdGlsbHtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmJsb2NrO2N1cnNvcjpwb2ludGVyO3ZlcnRpY2FsLWFsaWduOnRvcDtvcGFjaXR5OjA7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC4xKTstbXMtdHJhbnNmb3JtOnNjYWxlKC4xKTt0cmFuc2Zvcm06c2NhbGUoLjEpfS55dHAtc2hvdy10aWxlcyAueXRwLXZpZGVvd2FsbC1zdGlsbHtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTstbXMtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtdmlkZW93YWxsLXN0aWxsLW1pbmkgLnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1hdXRob3IsLnl0cC12aWRlb3dhbGwtc3RpbGwtbWluaSAueXRwLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWR1cmF0aW9uLC55dHAtdmlkZW93YWxsLXN0aWxsLW1pbmkgLnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1saXZle2Rpc3BsYXk6bm9uZX0ueXRwLXZpZGVvd2FsbC1zdGlsbFtkYXRhLWlzLWxpdmU9dHJ1ZV0gLnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1kdXJhdGlvbntkaXNwbGF5Om5vbmV9Lnl0cC12aWRlb3dhbGwtc3RpbGxbZGF0YS1pcy1saXZlPXRydWVdIC55dHAtdmlkZW93YWxsLXN0aWxsLWluZm8tbGl2ZXtkaXNwbGF5OmJsb2NrfS55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1taXgsLnl0cC12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLXJlZ3VsYXJ7ZGlzcGxheTpub25lO2hlaWdodDoyLjE1ZW07cGFkZGluZy1yaWdodDoxMHB4O2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6NTAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpfS55dHAtdmlkZW93YWxsLXN0aWxsLW1pbmkgLnl0cC12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLW1peCwueXRwLXZpZGVvd2FsbC1zdGlsbC1taW5pIC55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1yZWd1bGFye2ZvbnQtc2l6ZToxMDAlfS55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1pY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGh0Ykc1ek9uaHNhVzVyUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMM2hzYVc1cklpQjJhV1YzUW05NFBTSXdJREFnTXpZZ016WWlQangxYzJVZ2VHeHBibXM2YUhKbFpqMGlJM2wwY0MxemRtY3RjR3hoZVd4cGMzUWlJSE4wY205clpUMGlJekF3TUNJZ2MzUnliMnRsTFc5d1lXTnBkSGs5SWk0eE5TSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpOCtQSEJoZEdnZ2FXUTlJbmwwY0MxemRtY3RjR3hoZVd4cGMzUWlJR1pwYkd3OUlpTm1abVlpSUdROUlrMHlNaTQxTXlBeU1TNDBNblkyTGpnMWJEVXVOall0TXk0ME1pMDFMalkyTFRNdU5ESjZiUzB4TVM0ek15QXdhRGt1TURaMk1pNHlPRWd4TVM0eWVtMHdMVGt1TVRSb01UTXVObll5TGpJNFNERXhMako2YlRBZ05DNDFOMmd4TXk0MmRqSXVNamhJTVRFdU1ub2lMejQ4TDNOMlp6ND0pO3dpZHRoOjIuMTVlbTtoZWlnaHQ6Mi4xNWVtfS55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1taXgtaWNvbntkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhodGJHNXpPbmhzYVc1clBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1TDNoc2FXNXJJaUIyYVdWM1FtOTRQU0l3SURBZ016WWdNellpUGp4MWMyVWdlR3hwYm1zNmFISmxaajBpSTNsMGNDMXpkbWN0YldsNElpQnpkSEp2YTJVOUlpTXdNREFpSUhOMGNtOXJaUzF2Y0dGamFYUjVQU0l1TVRVaUlITjBjbTlyWlMxM2FXUjBhRDBpTWlJdlBqeHdZWFJvSUdsa1BTSjVkSEF0YzNabkxXMXBlQ0lnWm1sc2JEMGlJMlptWmlJZ1pEMGlUVEkxTGpZMUlERTRZeTB1TURJZ01pNHpNUzB1T0RjZ05DNDBNUzB5TGpJMUlEWXVNRFpzTGprdU9UUmpNUzQyT1MweExqZ2dNaTQzTFRRdU1qY2dNaTQzTFRkekxURXVNREV0TlM0eU1TMHlMamN0TjJ3dExqa3VPVE5CT1M0MU5DQTVMalUwSURBZ01DQXhJREkxTGpZMUlERTRiUzB4TlM0eklEQmpMakF4TFRJdU16SXVPRFl0TkM0ME1pQXlMakkxTFRZdU1EZHNMUzQ1TFM0NU0wTXhNQ0F4TWk0M09TQTVJREUxTGpJM0lEa2dNVGh6TVNBMUxqSWdNaTQzSURkc0xqa3RMamswWXkweExqTTVMVEV1TmpVdE1pNHlOQzB6TGpjMUxUSXVNalV0Tmk0d05tMHlMamNnTUdNdExqQTBMVEV1TnpNdU5Ea3RNeTR3T1NBeExqTTFMVFF1TW13dExqa3RMamswWXkweExqRXpJREV1TWpZdE1TNDRJREl1T1RrdE1TNDRJRFV1TVRRZ01DQXhMalkzTGpZM0lETXVOQ0F4TGpnZ05DNDJObXd1T1MwdU9UTmpMUzQ0TmkweExqRXlMVEV1TXprdE1pNDBOeTB4TGpNMUxUTXVOek50T1MwMUxqRTBMUzQ1TGprMFl5NDROU0F4TGpFeElERXVNemdnTWk0ME55QXhMak0xSURRdU1pNHdNeUF4TGpJMkxTNDFJREl1TmpFdE1TNHpOU0F6TGpjemJDNDVMamt6WXpFdU1USXRNUzR5TmlBeExqZ3RNaTQ1T1NBeExqZ3ROQzQyTmlBd0xUSXVNVFV0TGpZNExUTXVPRGd0TVM0NExUVXVNVFJ0TFRVdU5UVWdNaTQ0SURNdU5pQXhMamczTFRNdU5pQXlMak16ZWlJdlBqd3ZjM1puUGc9PSk7d2lkdGg6Mi4xNWVtO2hlaWdodDoyLjE1ZW19Lnl0cC12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLWxlbmd0aHtmb250LXdlaWdodDo0MDB9Lnl0cC12aWRlb3dhbGwtc3RpbGwtbWluaSAueXRwLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtbGVuZ3Roe2Rpc3BsYXk6bm9uZX0ueXRwLXZpZGVvd2FsbC1zdGlsbDpmb2N1cyAueXRwLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtbWl4LC55dHAtdmlkZW93YWxsLXN0aWxsOmZvY3VzIC55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1yZWd1bGFyLC55dHAtdmlkZW93YWxsLXN0aWxsOmhvdmVyIC55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1taXgsLnl0cC12aWRlb3dhbGwtc3RpbGw6aG92ZXIgLnl0cC12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLXJlZ3VsYXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApfS55dHAtdmlkZW93YWxsLXN0aWxsW2RhdGEtaXMtbGlzdD10cnVlXTpub3QoW2RhdGEtaXMtbWl4PXRydWVdKSAueXRwLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtcmVndWxhcntkaXNwbGF5OmJsb2NrfS55dHAtdmlkZW93YWxsLXN0aWxsW2RhdGEtaXMtbWl4PXRydWVdIC55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1taXh7ZGlzcGxheTpibG9ja30ueXRwLXZpZGVvd2FsbC1zdGlsbC1pbWFnZXstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0Oy13ZWJraXQtYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3Zlcjtib3R0b206MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0ueXRwLXZpZGVvd2FsbC1zdGlsbC1yb3VuZC1sYXJnZSAueXRwLXZpZGVvd2FsbC1zdGlsbC1pbWFnZXtib3JkZXItcmFkaXVzOjEycHh9Lnl0cC12aWRlb3dhbGwtc3RpbGwtcm91bmQtbWVkaXVtIC55dHAtdmlkZW93YWxsLXN0aWxsLWltYWdle2JvcmRlci1yYWRpdXM6OHB4fS55dHAtdmlkZW93YWxsLXN0aWxsLXJvdW5kLWxhcmdlIC55dHAtdmlkZW93YWxsLXN0aWxsLWltYWdle2JvcmRlci1yYWRpdXM6NHB4fS55dHAtdmlkZW93YWxsLXN0aWxsLWluZm8tYXV0aG9ye2Zsb2F0OmxlZnQ7bWFyZ2luLXRvcDoycHh9Lnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1jb250ZW50e2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLHJnYmEoMTIsMTIsMTIsLjgpLHRyYW5zcGFyZW50IDEwMHB4KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgxMiwxMiwxMiwuOCkgMCx0cmFuc3BhcmVudCAxMDBweCk7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2U7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlO2JvdHRvbTowO2NvbG9yOiNmZmY7bGVmdDowO29wYWNpdHk6MDtwYWRkaW5nOjEwcHg7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0ueXRwLXZpZGVvd2FsbC1zdGlsbC55dHAtdmlkZW93YWxsLXNob3ctdGV4dCAueXRwLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWNvbnRlbnQsLnl0cC12aWRlb3dhbGwtc3RpbGw6Zm9jdXMgLnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1jb250ZW50LC55dHAtdmlkZW93YWxsLXN0aWxsOmhvdmVyIC55dHAtdmlkZW93YWxsLXN0aWxsLWluZm8tY29udGVudHtvcGFjaXR5OjF9Lnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1kdXJhdGlvbntiYWNrZ3JvdW5kOiMwMDA7Ym9yZGVyLXJhZGl1czoycHg7Ym90dG9tOjJweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MTtvcGFjaXR5Oi43NTtwYWRkaW5nOjJweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoycHh9Lnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1kdXJhdGlvbjplbXB0eXtkaXNwbGF5Om5vbmV9Lnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby1saXZle2JhY2tncm91bmQ6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJhY2tncm91bmQtYnJhbmQscmdiYSgyMjUsMCw0NSwuOSkpO2JvcmRlci1yYWRpdXM6MnB4O2JvdHRvbToycHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE7b3BhY2l0eTouOTtwYWRkaW5nOjJweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoycHg7ZGlzcGxheTpub25lO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ueXRwLXZpZGVvd2FsbC1zdGlsbC1pbmZvLXRpdGxle2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOjExOCU7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjEuMjttYXgtaGVpZ2h0OjMwcHg7b3ZlcmZsb3c6aGlkZGVufS55dHAtYmlnLW1vZGUgLnl0cC12aWRlb3dhbGwtc3RpbGwtaW5mby10aXRsZXtmb250LXdlaWdodDo0MDA7bWF4LWhlaWdodDo0OHB4fS55dHAtdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbHtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjg2KTtib3R0b206MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MH0ueXRwLXZpZGVvd2FsbC1zdGlsbDpmb2N1cyAueXRwLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwsLnl0cC12aWRlb3dhbGwtc3RpbGw6aG92ZXIgLnl0cC12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVse2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuODYpfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbHt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2N1cnNvcjpwb2ludGVyO3ZlcnRpY2FsLWFsaWduOnRvcDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uO21hcmdpbi1ib3R0b206MTZweDstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LXdlYmtpdC10cmFuc2l0aW9uOmJveC1zaGFkb3cgLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtYm94LXNoYWRvdyAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOi13ZWJraXQtYm94LXNoYWRvdyAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpib3gtc2hhZG93IC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtYm94LXNoYWRvdyAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTtmb250LXNpemU6MTFweH0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW5mb3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0cC1zaG93LXRpbGVzIC55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbHtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTstbXMtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbFtkYXRhLWlzLWxpdmU9dHJ1ZV0gLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tZHVyYXRpb257ZGlzcGxheTpub25lfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtbWl4LC55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtcmVndWxhcntkaXNwbGF5Om5vbmU7aGVpZ2h0OjIuMTVlbTtwYWRkaW5nLXJpZ2h0OjEwcHg7Y29sb3I6I2ZmZjtmb250LXdlaWdodDo1MDA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1saXN0bGFiZWwtaWNvbntkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhodGJHNXpPbmhzYVc1clBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1TDNoc2FXNXJJaUIyYVdWM1FtOTRQU0l3SURBZ016WWdNellpUGp4MWMyVWdlR3hwYm1zNmFISmxaajBpSTNsMGNDMXpkbWN0Y0d4aGVXeHBjM1FpSUhOMGNtOXJaVDBpSXpBd01DSWdjM1J5YjJ0bExXOXdZV05wZEhrOUlpNHhOU0lnYzNSeWIydGxMWGRwWkhSb1BTSXlJaTgrUEhCaGRHZ2dhV1E5SW5sMGNDMXpkbWN0Y0d4aGVXeHBjM1FpSUdacGJHdzlJaU5tWm1ZaUlHUTlJazB5TWk0MU15QXlNUzQwTW5ZMkxqZzFiRFV1TmpZdE15NDBNaTAxTGpZMkxUTXVOREo2YlMweE1TNHpNeUF3YURrdU1EWjJNaTR5T0VneE1TNHllbTB3TFRrdU1UUm9NVE11Tm5ZeUxqSTRTREV4TGpKNmJUQWdOQzQxTjJneE15NDJkakl1TWpoSU1URXVNbm9pTHo0OEwzTjJaejQ9KTt3aWR0aDoyLjE1ZW07aGVpZ2h0OjIuMTVlbX0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLW1peC1pY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGh0Ykc1ek9uaHNhVzVyUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMM2hzYVc1cklpQjJhV1YzUW05NFBTSXdJREFnTXpZZ016WWlQangxYzJVZ2VHeHBibXM2YUhKbFpqMGlJM2wwY0MxemRtY3RiV2w0SWlCemRISnZhMlU5SWlNd01EQWlJSE4wY205clpTMXZjR0ZqYVhSNVBTSXVNVFVpSUhOMGNtOXJaUzEzYVdSMGFEMGlNaUl2UGp4d1lYUm9JR2xrUFNKNWRIQXRjM1puTFcxcGVDSWdabWxzYkQwaUkyWm1aaUlnWkQwaVRUSTFMalkxSURFNFl5MHVNRElnTWk0ek1TMHVPRGNnTkM0ME1TMHlMakkxSURZdU1EWnNMamt1T1RSak1TNDJPUzB4TGpnZ01pNDNMVFF1TWpjZ01pNDNMVGR6TFRFdU1ERXROUzR5TVMweUxqY3ROMnd0TGprdU9UTkJPUzQxTkNBNUxqVTBJREFnTUNBeElESTFMalkxSURFNGJTMHhOUzR6SURCakxqQXhMVEl1TXpJdU9EWXROQzQwTWlBeUxqSTFMVFl1TURkc0xTNDVMUzQ1TTBNeE1DQXhNaTQzT1NBNUlERTFMakkzSURrZ01UaHpNU0ExTGpJZ01pNDNJRGRzTGprdExqazBZeTB4TGpNNUxURXVOalV0TWk0eU5DMHpMamMxTFRJdU1qVXROaTR3Tm0weUxqY2dNR010TGpBMExURXVOek11TkRrdE15NHdPU0F4TGpNMUxUUXVNbXd0TGprdExqazBZeTB4TGpFeklERXVNall0TVM0NElESXVPVGt0TVM0NElEVXVNVFFnTUNBeExqWTNMalkzSURNdU5DQXhMamdnTkM0Mk5td3VPUzB1T1ROakxTNDROaTB4TGpFeUxURXVNemt0TWk0ME55MHhMak0xTFRNdU56TnRPUzAxTGpFMExTNDVMamswWXk0NE5TQXhMakV4SURFdU16Z2dNaTQwTnlBeExqTTFJRFF1TWk0d015QXhMakkyTFM0MUlESXVOakV0TVM0ek5TQXpMamN6YkM0NUxqa3pZekV1TVRJdE1TNHlOaUF4TGpndE1pNDVPU0F4TGpndE5DNDJOaUF3TFRJdU1UVXRMalk0TFRNdU9EZ3RNUzQ0TFRVdU1UUnRMVFV1TlRVZ01pNDRJRE11TmlBeExqZzNMVE11TmlBeUxqTXplaUl2UGp3dmMzWm5QZz09KTt3aWR0aDoyLjE1ZW07aGVpZ2h0OjIuMTVlbX0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLWxlbmd0aHtmb250LXdlaWdodDo0MDB9Lnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsW2RhdGEtaXMtbGlzdD10cnVlXTpub3QoW2RhdGEtaXMtbWl4PXRydWVdKSAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtbGlzdGxhYmVsLXJlZ3VsYXJ7ZGlzcGxheTpibG9ja30ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGxbZGF0YS1pcy1taXg9dHJ1ZV0gLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWxpc3RsYWJlbC1taXh7ZGlzcGxheTpibG9ja30ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW1hZ2V7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDstd2Via2l0LWJhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7d2lkdGg6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXItcmFkaXVzOjhweH0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGw6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYnV0dG9uLXNlY29uZGFyeSk7LXdlYmtpdC1ib3gtc2hhZG93OjAgMCAwIDhweCB2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYnV0dG9uLXNlY29uZGFyeSk7Ym94LXNoYWRvdzowIDAgMCA4cHggdmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LWJ1dHRvbi1zZWNvbmRhcnkpO2JvcmRlci1yYWRpdXM6OHB4fS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbDphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdG9uYWwtaG92ZXIpOy13ZWJraXQtYm94LXNoYWRvdzowIDAgMCA4cHggdmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRvbmFsLWhvdmVyKTtib3gtc2hhZG93OjAgMCAwIDhweCB2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktdG9uYWwtaG92ZXIpO2JvcmRlci1yYWRpdXM6OHB4fUBzdXBwb3J0cyAoYXNwZWN0LXJhdGlvOjEvMSl7Lnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWltYWdle2FzcGVjdC1yYXRpbzoxNi85fX1Ac3VwcG9ydHMgbm90IChhc3BlY3QtcmF0aW86MS8xKXsueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW1hZ2V7aGVpZ2h0OjA7cGFkZGluZy1ib3R0b206NTYuMjUlfX0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW5mb3ttYXJnaW4tdG9wOjhweH0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW5mby1hdXRob3I6bm90KDplbXB0eSl7bWFyZ2luLXRvcDo0cHg7Zm9udC1zaXplOjEzMCU7bWF4LWhlaWdodDoyMHB4O292ZXJmbG93OmhpZGRlbjtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC43KX0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtdmlldy1jb3VudC1hbmQtZGF0ZS1pbmZvOm5vdCg6ZW1wdHkpe2ZvbnQtc2l6ZToxMzAlO21heC1oZWlnaHQ6MjBweDtvdmVyZmxvdzpoaWRkZW47Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNyl9Lnl0cC1mdWxsc2NyZWVuLWdyaWQtYWN0aXZlIC55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWF1dGhvciwueXRwLWZ1bGxzY3JlZW4tZ3JpZC1wZWVraW5nIC55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWF1dGhvcnttYXgtaGVpZ2h0OnVuc2V0fS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWNvbnRlbnR7Y29sb3I6I2ZmZjt3aWR0aDoxMDAlO29wYWNpdHk6MTtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tZHVyYXRpb24sLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tbGl2ZXtib3JkZXItcmFkaXVzOjJweDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206OHB4O3JpZ2h0OjhweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MTtvcGFjaXR5Oi43NTtwYWRkaW5nOjJweDtmb250LXNpemU6MTIwJX0ueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW5mby1kdXJhdGlvbntiYWNrZ3JvdW5kOiMwMDA7Zm9udC13ZWlnaHQ6NTAwO29wYWNpdHk6Ljc1fS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1pbmZvLWxpdmV7YmFja2dyb3VuZDp2YXIoLS15dC1zeXMtY29sb3ItYmFzZWxpbmUtLW92ZXJsYXktYmFja2dyb3VuZC1icmFuZCxyZ2JhKDIyNSwwLDQ1LC45KSk7b3BhY2l0eTouOTtkaXNwbGF5Om5vbmU7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbDpub3QoW2RhdGEtaXMtbGl2ZT10cnVlXSkgLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tbGl2ZXtkaXNwbGF5Om5vbmV9Lnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tZHVyYXRpb246ZW1wdHl7ZGlzcGxheTpub25lfS55dHAtbW9kZXJuLXZpZGVvd2FsbC1zdGlsbC1pbmZvLXRpdGxlOm5vdCg6ZW1wdHkpe2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1saW5lLWNsYW1wOjI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2ZvbnQtc2l6ZToxNTAlO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxLjI7bWF4LWhlaWdodDo0MHB4O292ZXJmbG93OmhpZGRlbn0ueXRwLWZ1bGxzY3JlZW4tZ3JpZC1hY3RpdmUgLnl0cC1tb2Rlcm4tdmlkZW93YWxsLXN0aWxsLWluZm8tdGl0bGUsLnl0cC1mdWxsc2NyZWVuLWdyaWQtcGVla2luZyAueXRwLW1vZGVybi12aWRlb3dhbGwtc3RpbGwtaW5mby10aXRsZXttYXgtaGVpZ2h0OnVuc2V0fS55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtY29udGVudHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstd2Via2l0LWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cGFkZGluZzoyNHB4IDE2cHggMTZweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1jb250ZW50IC55dHAtaW5wdXQtc2xpZGVyLXNlY3Rpb257LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleC1ncm93OjE7ZmxleC1ncm93OjF9Lnl0cC1zcGVlZC1kaXNwbGF5LWNvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW4tYm90dG9tOjI0cHh9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1kaXNwbGF5e3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6OTAwO2xpbmUtaGVpZ2h0OjIycHh9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1zbGlkZXItY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4O2dhcDoxNnB4O21hcmdpbi1ib3R0b206MjRweH0ueXRwLXZhcmlhYmxlLXNwZWVkLXBhbmVsLXNsaWRlci1jb250YWluZXIgLnl0cC1pbnB1dC1zbGlkZXJ7d2lkdGg6MTAwJX0ueXRwLXZhcmlhYmxlLXNwZWVkLXBhbmVsLWNoaXBze2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4O2dhcDo4cHg7LXdlYmtpdC1ib3gtYWxpZ246c3RhcnQ7LXdlYmtpdC1hbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1idXR0b257Ym9yZGVyOm5vbmU7Y3Vyc29yOnBvaW50ZXI7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE2cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4xKTtjb2xvcjojZmZmO2hlaWdodDozMnB4O3RleHQtYWxpZ246Y2VudGVyO2JvcmRlci1yYWRpdXM6MTZweDstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLXZhcmlhYmxlLXNwZWVkLXBhbmVsLWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjIpfS55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtYnV0dG9uOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjMpfS55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtY2hpcHMgLnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1idXR0b257Zm9udC1zaXplOjEycHg7d2lkdGg6NTNweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo0cHh9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1zbGlkZXItY29udGFpbmVyIC55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtYnV0dG9ue2ZvbnQtc2l6ZToyNHB4O3dpZHRoOjMycHh9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1jb250ZW50IC55dHAtc3BlZWRzbGlkZXItaW5kaWNhdG9yLWNvbnRhaW5lcntkaXNwbGF5Om5vbmV9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1wcmVzZXQtYnV0dG9uLXdyYXBwZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0cC12YXJpYWJsZS1zcGVlZC1wYW5lbC1wcmVzZXQtYnV0dG9uLWxhYmVsLXRleHR7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6MTRweDttYXJnaW4tdG9wOjRweDtmb250LXdlaWdodDo0MDA7Y29sb3I6dmFyKC0teXQtc3lzLWNvbG9yLWJhc2VsaW5lLS1vdmVybGF5LXRleHQtc2Vjb25kYXJ5LHJnYmEoMjU1LDI1NSwyNTUsLjcpKX0ueXRwLXZhcmlhYmxlLXNwZWVkLXBhbmVsLXByZW1pdW0tdXBzZWxsLWljb257ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7d2lkdGg6MTRweDtoZWlnaHQ6MTRweDtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOQ0lnYUdWcFoyaDBQU0l5TkNJZ2RtbGxkMEp2ZUQwaUxUSWdMVElnTWpRZ01qUWlQanh3WVhSb0lHWnBiR3c5SWlOak1EQWlJR1E5SWswd0lERXVORE5ETUNBdU5qUXVOalFnTUNBeExqUXpJREJvTVRjdU1UTkRNVGt1TXpVZ01DQXlNQ0F1TmpRZ01qQWdNUzQwTTNZeE55NHhNMk13SUM0M09TMHVOalVnTVM0ME5DMHhMalEwSURFdU5EUklNUzQwTTBNdU5qUWdNakFnTUNBeE9TNHpOU0F3SURFNExqVTJXbTB3SURBaUx6NDhjR0YwYUNCbWFXeHNQU0lqWm1abUlpQmtQU0pOTnk0NE9DQXhNUzQwTW5ZMExqSTVTRFV1TXpkV015NDFNbWcwTGpjMVl5NDVNaUF3SURFdU56SXVNVGNnTWk0ME1pNDFMalk1TGpNMElERXVNakl1T0RFZ01TNDJJREV1TkRNdU16Y3VOakl1TlRZZ01TNHpNaTQxTmlBeUxqRXhJREFnTVM0eE9TMHVOREVnTWk0eE15MHhMakl5SURJdU9ESXRMamd5TGpZNUxURXVPVFVnTVM0d05DMHpMalFnTVM0d05GcHRNQzB5TGpBMGFESXVNalJqTGpZM0lEQWdNUzR4T0MwdU1UVWdNUzQxTWkwdU5EY3VNelV0TGpNeExqVXpMUzQzTlM0MU15MHhMak0wY3kwdU1UZ3RNUzR3TnkwdU5UTXRNUzQwTldNdExqTTFMUzR6TmkwdU9EUXRMalUxTFRFdU5EWXRMalUyYUMweUxqTmFiVEFnTUNJdlBqd3ZjM1puUGc9PSk7Ym9yZGVyLXJhZGl1czozcHg7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1zaXplOmNvdmVyfS55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtcHJlbWl1bS1iYWRnZXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxMDAlO21hcmdpbi1yaWdodDo4cHg7dG9wOjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtvcGFjaXR5OjA7dmlzaWJpbGl0eTpoaWRkZW47d2lkdGg6MjRweDtoZWlnaHQ6MjJweDtiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOQ0lnYUdWcFoyaDBQU0l5TkNJZ2RtbGxkMEp2ZUQwaUxUSWdMVElnTWpRZ01qUWlQanh3WVhSb0lHWnBiR3c5SWlOak1EQWlJR1E5SWswd0lERXVORE5ETUNBdU5qUXVOalFnTUNBeExqUXpJREJvTVRjdU1UTkRNVGt1TXpVZ01DQXlNQ0F1TmpRZ01qQWdNUzQwTTNZeE55NHhNMk13SUM0M09TMHVOalVnTVM0ME5DMHhMalEwSURFdU5EUklNUzQwTTBNdU5qUWdNakFnTUNBeE9TNHpOU0F3SURFNExqVTJXbTB3SURBaUx6NDhjR0YwYUNCbWFXeHNQU0lqWm1abUlpQmtQU0pOTnk0NE9DQXhNUzQwTW5ZMExqSTVTRFV1TXpkV015NDFNbWcwTGpjMVl5NDVNaUF3SURFdU56SXVNVGNnTWk0ME1pNDFMalk1TGpNMElERXVNakl1T0RFZ01TNDJJREV1TkRNdU16Y3VOakl1TlRZZ01TNHpNaTQxTmlBeUxqRXhJREFnTVM0eE9TMHVOREVnTWk0eE15MHhMakl5SURJdU9ESXRMamd5TGpZNUxURXVPVFVnTVM0d05DMHpMalFnTVM0d05GcHRNQzB5TGpBMGFESXVNalJqTGpZM0lEQWdNUzR4T0MwdU1UVWdNUzQxTWkwdU5EY3VNelV0TGpNeExqVXpMUzQzTlM0MU15MHhMak0wY3kwdU1UZ3RNUzR3TnkwdU5UTXRNUzQwTldNdExqTTFMUzR6TmkwdU9EUXRMalUxTFRFdU5EWXRMalUyYUMweUxqTmFiVEFnTUNJdlBqd3ZjM1puUGc9PSk7Ym9yZGVyLXJhZGl1czozcHg7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGxpbmVhcix2aXNpYmlsaXR5IDBzIGxpbmVhciAuMXM7dHJhbnNpdGlvbjpvcGFjaXR5IC4xcyBsaW5lYXIsdmlzaWJpbGl0eSAwcyBsaW5lYXIgLjFzfS55dHAtdmFyaWFibGUtc3BlZWQtcGFuZWwtcHJlbWl1bS1iYWRnZS12aXNpYmxle29wYWNpdHk6MTt2aXNpYmlsaXR5OnZpc2libGU7LXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OjBzO3RyYW5zaXRpb24tZGVsYXk6MHN9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC12b2x1bWUtcG9wb3Zlcnt2aXNpYmlsaXR5OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXItcmFkaXVzOjIycHg7cGFkZGluZzoxMnB4IDEwcHg7bWFyZ2luLWJvdHRvbTowOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXl0LWZyb3N0ZWQtZ2xhc3MtYmFja2Ryb3AtZmlsdGVyLW92ZXJyaWRlLGJsdXIoMTZweCkpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS15dC1mcm9zdGVkLWdsYXNzLWJhY2tkcm9wLWZpbHRlci1vdmVycmlkZSxibHVyKDE2cHgpKTtiYWNrZ3JvdW5kOnZhcigtLXl0LXN5cy1jb2xvci1iYXNlbGluZS0tb3ZlcmxheS1iYWNrZ3JvdW5kLW1lZGl1bS1saWdodCxyZ2JhKDAsMCwwLC4zKSk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgc3Zney13ZWJraXQtZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXZvbHVtZS1wb3BvdmVyey13ZWJraXQtdHJhbnNpdGlvbjptYXJnaW4tYm90dG9tIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOm1hcmdpbi1ib3R0b20gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO2JvdHRvbTp2YXIoLS15dC1kZWxoaS1waWxsLWhlaWdodCw0OHB4KX1Ac3VwcG9ydHMgKCgtd2Via2l0LXdyaXRpbmctbW9kZTp2ZXJ0aWNhbC1ybCkgb3IgKHdyaXRpbmctbW9kZTp2ZXJ0aWNhbC1ybCkpey55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgLnl0cC1pbnB1dC1zbGlkZXItc2VjdGlvbi55dHAtdmVydGljYWwtc2xpZGVyIC55dHAtaW5wdXQtc2xpZGVye2hlaWdodDo5NnB4fX0ueXRwLWRlbGhpLW1vZGVybiAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXZvbHVtZS1wb3BvdmVyIC55dHAtaW5wdXQtc2xpZGVyOjotd2Via2l0LXNsaWRlci10aHVtYnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4Oy13ZWJraXQtYm94LXNoYWRvdzowIDFweCAxcHggcmdiYSgwLDAsMCwuOCk7Ym94LXNoYWRvdzowIDFweCAxcHggcmdiYSgwLDAsMCwuOCk7bWFyZ2luLXJpZ2h0Oi01cHh9Lnl0cC1kZWxoaS1tb2Rlcm4gLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC12b2x1bWUtcG9wb3ZlciAueXRwLWlucHV0LXNsaWRlcjo6LW1vei1yYW5nZS10aHVtYnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4O2JveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgLnl0cC1pbnB1dC1zbGlkZXI6Oi1tcy10aHVtYnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4O2JveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgLnl0cC1pbnB1dC1zbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre3dpZHRoOjJweDstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjgpO2JveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgLnl0cC1pbnB1dC1zbGlkZXI6Oi1tb3otcmFuZ2UtdHJhY2t7d2lkdGg6MnB4O2JveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjgpfS55dHAtZGVsaGktbW9kZXJuIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIgLnl0cC1pbnB1dC1zbGlkZXI6aG92ZXJ7Y3Vyc29yOnBvaW50ZXJ9Lnl0cC1kZWxoaS1tb2Rlcm46bm90KC5zZWVraW5nLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXIueXRwLXZvbHVtZS1wb3BvdmVyLWhvdmVyaW5ne3Zpc2liaWxpdHk6dmlzaWJsZTttYXJnaW4tYm90dG9tOjhweDstd2Via2l0LXRyYW5zaXRpb246bWFyZ2luLWJvdHRvbSAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7dHJhbnNpdGlvbjptYXJnaW4tYm90dG9tIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRwLWRlbGhpLW1vZGVybi55dHAteHNtYWxsLXdpZHRoLW1vZGUgLnl0cC12b2x1bWUtcG9wb3ZlcntsZWZ0Oi00cHh9Lnl0cC1iaWctbW9kZS55dHAtZGVsaGktbW9kZXJuOm5vdCguc2Vla2luZy1tb2RlKSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLXN0YW5kYWxvbmUtbXV0ZS1idXR0b24gLnl0cC12b2x1bWUtcG9wb3ZlcntsZWZ0OjRweH0ueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1tb2Rlcm46bm90KC5zZWVraW5nLW1vZGUpIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXBvcG92ZXJ7Ym90dG9tOnZhcigtLXl0LWRlbGhpLWJpZy1tb2RlLXBpbGwtaGVpZ2h0LDU2cHgpfS55dHAtdm9sdW1lLXBhbmVse2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjA7aGVpZ2h0OjEwMCU7LXdlYmtpdC10cmFuc2l0aW9uOm1hcmdpbiAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSx3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uOm1hcmdpbiAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSx3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTtjdXJzb3I6cG9pbnRlcjtvdXRsaW5lOjB9Lnl0cC1kZWxoaS1ob3Jpem9udGFsLXZvbHVtZS1jb250cm9scy55dHAtdm9sdW1lLXBhbmVsey13ZWJraXQtdHJhbnNpdGlvbjptYXJnaW4gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpLHdpZHRoIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOm1hcmdpbiAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksd2lkdGggLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtdm9sdW1lLXNsaWRlci1hY3RpdmUgLnl0cC12b2x1bWUtcGFuZWx7d2lkdGg6NTJweDttYXJnaW4tcmlnaHQ6M3B4Oy13ZWJraXQtdHJhbnNpdGlvbjptYXJnaW4gLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSksd2lkdGggLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjptYXJnaW4gLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSksd2lkdGggLjJzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0cC1kZWxoaS1ob3Jpem9udGFsLXZvbHVtZS1jb250cm9scy55dHAtdm9sdW1lLXNsaWRlci1hY3RpdmUgLnl0cC12b2x1bWUtcGFuZWx7LXdlYmtpdC10cmFuc2l0aW9uOm1hcmdpbiAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksd2lkdGggLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246bWFyZ2luIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSx3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0cC1iaWctbW9kZSAueXRwLXZvbHVtZS1zbGlkZXItYWN0aXZlIC55dHAtdm9sdW1lLXBhbmVse3dpZHRoOjc4cHg7bWFyZ2luLXJpZ2h0OjVweH0ueXRwLXByb2JhYmx5LWtleWJvYXJkLWZvY3VzIC55dHAtdm9sdW1lLXBhbmVsOmZvY3Vzey13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAycHggcmdiYSgyNywxMjcsMjA0LC44KTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCByZ2JhKDI3LDEyNywyMDQsLjgpfS55dHAtYmlnLW1vZGUgLnl0cC12b2x1bWUtc2xpZGVye21pbi1oZWlnaHQ6NTRweH0ueXRwLXZvbHVtZS1zbGlkZXJ7aGVpZ2h0OjEwMCU7bWluLWhlaWdodDozNnB4O3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn0ueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxle3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7d2lkdGg6MTJweDtoZWlnaHQ6MTJweDtib3JkZXItcmFkaXVzOjZweDttYXJnaW4tdG9wOi02cHg7YmFja2dyb3VuZDojZmZmfS55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC12b2x1bWUtc2xpZGVyLWhhbmRsZXstd2Via2l0LWZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0cC1iaWctbW9kZSAueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxle3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7Ym9yZGVyLXJhZGl1czo5cHg7bWFyZ2luLXRvcDotOXB4fS55dHAtYmlnLW1vZGUueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXNsaWRlci1oYW5kbGV7d2lkdGg6MTJweDtoZWlnaHQ6MTJweDttYXJnaW4tdG9wOi02cHg7Ym9yZGVyLXJhZGl1czo2cHg7LXdlYmtpdC1maWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSk7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS55dHAtdm9sdW1lLXNsaWRlci1oYW5kbGU6YWZ0ZXIsLnl0cC12b2x1bWUtc2xpZGVyLWhhbmRsZTpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmJsb2NrO3RvcDo1MCU7bGVmdDowO2hlaWdodDozcHg7bWFyZ2luLXRvcDotMnB4O3dpZHRoOjY0cHh9Lnl0cC1iaWctbW9kZS55dHAtZGVsaGktaG9yaXpvbnRhbC12b2x1bWUtY29udHJvbHMgLnl0cC12b2x1bWUtc2xpZGVyLWhhbmRsZTphZnRlciwueXRwLWJpZy1tb2RlLnl0cC1kZWxoaS1ob3Jpem9udGFsLXZvbHVtZS1jb250cm9scyAueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxlOmJlZm9yZSwueXRwLWRlbGhpLWhvcml6b250YWwtdm9sdW1lLWNvbnRyb2xzIC55dHAtdm9sdW1lLXNsaWRlci1oYW5kbGU6YWZ0ZXIsLnl0cC1kZWxoaS1ob3Jpem9udGFsLXZvbHVtZS1jb250cm9scyAueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxlOmJlZm9yZXtoZWlnaHQ6MnB4O21hcmdpbi10b3A6LTFweH0ueXRwLWJpZy1tb2RlIC55dHAtdm9sdW1lLXNsaWRlci1oYW5kbGU6YWZ0ZXIsLnl0cC1iaWctbW9kZSAueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxlOmJlZm9yZXtoZWlnaHQ6NHB4O21hcmdpbi10b3A6LTJweDt3aWR0aDo5NnB4fS55dHAtdm9sdW1lLXNsaWRlci1oYW5kbGU6YmVmb3Jle2xlZnQ6LTU4cHg7YmFja2dyb3VuZDojZmZmfS55dHAtYmlnLW1vZGUgLnl0cC12b2x1bWUtc2xpZGVyLWhhbmRsZTpiZWZvcmV7bGVmdDotODdweH0ueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxlOmFmdGVye2xlZnQ6NnB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMil9Lnl0cC1iaWctbW9kZSAueXRwLXZvbHVtZS1zbGlkZXItaGFuZGxlOmFmdGVye2xlZnQ6OXB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMil9Lnl0cC13YXRjaC1vbi15b3V0dWJlLWJ1dHRvbntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MWVtfS55dHAtd2F0Y2gtb24teW91dHViZS1idXR0b257Ym9yZGVyLXJhZGl1czoyOHB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMyk7Zm9udDo1MDAgMTZweC8xNnB4IFlvdVR1YmUgTm90byxSb2JvdG8sQXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dHAtY29udGludWUtd2F0Y2hpbmctYnV0dG9uLnl0cC13YXRjaC1vbi15b3V0dWJlLWJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6IzBmMGYwZn0ueXRwLXdhdGNoLW9uLXlvdXR1YmUtYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMSl9Lnl0cC1jb250aW51ZS13YXRjaGluZy1idXR0b24ueXRwLXdhdGNoLW9uLXlvdXR1YmUtYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNTtjb2xvcjojMGYwZjBmfS55dHAtd2F0Y2gtb24teW91dHViZS1idXR0b246Zm9jdXN7Ym9yZGVyOjJweCBzb2xpZCB3aGl0ZX0ueXRwLWNvbnRpbnVlLXdhdGNoaW5nLWJ1dHRvbi55dHAtd2F0Y2gtb24teW91dHViZS1idXR0b246Zm9jdXN7Ym9yZGVyOjJweCBzb2xpZCB3aGl0ZTtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzBmMGYwZn0ueXRwLXdhdGNoLW9uLXlvdXR1YmUtYnV0dG9uOmFjdGl2ZXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSguOTQpOy1tcy10cmFuc2Zvcm06c2NhbGUoLjk0KTt0cmFuc2Zvcm06c2NhbGUoLjk0KTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjFzIGN1YmljLWJlemllciguMDUsMCwwLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMXMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9LndhdGNoLWFnYWluLW9uLXlvdXR1YmUtZW5kc2NyZWVue2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1ufS53YXRjaC1hZ2Fpbi1vbi15b3V0dWJlLWVuZHNjcmVlbnstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRwLXdhdGNoLWFnYWluLW9uLXlvdXR1YmUtZW5kc2NyZWVuLW1vcmUtdmlkZW9zLWNvbnRhaW5lcnt3aWR0aDoxMDAlfS55dHAtYmlnLW1vZGUgLnl0cC13YXRjaC1hZ2Fpbi1vbi15b3V0dWJlLWVuZHNjcmVlbi1tb3JlLXZpZGVvcy1jb250YWluZXIgLnl0cC1tb3JlLXZpZGVvcy12aWV3e2JvdHRvbTp1bnNldH0ueXRwLXdhdGNoLWFnYWluLW9uLXlvdXR1YmUtZW5kc2NyZWVuLW1vcmUtdmlkZW9zLWNvbnRhaW5lciAueXRwLW1vcmUtdmlkZW9zLXZpZXd7Ym9yZGVyLXJhZGl1czoycHg7ZGlyZWN0aW9uOmx0cjttYXJnaW46MTJweDtiYWNrZ3JvdW5kOnJnYmEoMjMsMjMsMjMsLjkpO3BhZGRpbmc6MTJweCAxNnB4IDE2cHg7cG9zaXRpb246cmVsYXRpdmV9Lnl0cC1zaG93LXdhdGNoLWxhdGVyLXRpdGxlLnl0cC13YXRjaC1sYXRlci1idXR0b257bWFyZ2luLWxlZnQ6MTBweDttYXJnaW4tcmlnaHQ6MTBweH0ueXRwLW92ZXJmbG93LXBhbmVsIC55dHAtc2hvdy13YXRjaC1sYXRlci10aXRsZS55dHAtd2F0Y2gtbGF0ZXItYnV0dG9ue21hcmdpbi1sZWZ0OjIwcHg7bWFyZ2luLXJpZ2h0OjIwcHh9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS10b3AgLnl0cC13YXRjaC1sYXRlci1idXR0b24sLnl0cC1jaHJvbWUtdG9wIC55dHAtd2F0Y2gtbGF0ZXItYnV0dG9ue3dpZHRoOmF1dG87aGVpZ2h0OmF1dG99Lmh0bWw1LXZpZGVvLXBsYXllcjpub3QoLnl0cC1iaWctbW9kZSkgLnl0cC1jaHJvbWUtdG9wIC55dHAtd2F0Y2gtbGF0ZXItYnV0dG9ue21pbi13aWR0aDo0OHB4O21heC13aWR0aDo4MHB4fS55dHAtd2F0Y2gtbGF0ZXItaWNvbnttYXJnaW46YXV0bzt3aWR0aDozNnB4O2hlaWdodDozNnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dHAtYmlnLW1vZGUgLnl0cC13YXRjaC1sYXRlci1pY29ue3dpZHRoOjU0cHg7aGVpZ2h0OjU0cHh9Lnl0cC1vdmVyZmxvdy1wYW5lbCAueXRwLXdhdGNoLWxhdGVyLWljb257d2lkdGg6NjBweDtoZWlnaHQ6NjBweDttYXJnaW4tYm90dG9tOjEwcHh9Lnl0cC13YXRjaC1sYXRlci10aXRsZXtmb250LXdlaWdodDo1MDA7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHg7ZGlzcGxheTpub25lfS55dHAtYmlnLW1vZGUgLnl0cC13YXRjaC1sYXRlci10aXRsZSwueXRwLW92ZXJmbG93LXBhbmVsIC55dHAtd2F0Y2gtbGF0ZXItdGl0bGV7Zm9udC1zaXplOjIwcHh9Lnl0cC1zaG93LXdhdGNoLWxhdGVyLXRpdGxlIC55dHAtd2F0Y2gtbGF0ZXItdGl0bGV7ZGlzcGxheTpibG9ja30uaHRtbDUtdmlkZW8tcGxheWVyOm5vdCgueXRwLWJpZy1tb2RlKSAueXRwLWNocm9tZS10b3AgLnl0cC13YXRjaC1sYXRlci10aXRsZXt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO292ZXJmbG93OmhpZGRlbn0ueXRwLXdhdGNoLWxhdGVyLWljb24gLnl0cC1zcGlubmVyLWNvbnRhaW5lcnt3aWR0aDoyMHB4O3BhZGRpbmctYm90dG9tOjIwcHg7bWFyZ2luLXRvcDotMTBweDttYXJnaW4tbGVmdDotMTBweH0ueXRwLWJpZy1tb2RlIC55dHAtd2F0Y2gtbGF0ZXItaWNvbiAueXRwLXNwaW5uZXItY29udGFpbmVye3dpZHRoOjM1cHg7cGFkZGluZy1ib3R0b206MzVweDttYXJnaW4tdG9wOi0xNy41cHg7bWFyZ2luLWxlZnQ6LTE3LjVweH0ueXRwLXdhdGNoLWxhdGVyLWljb24gLnl0cC1zcGlubmVyLWNpcmNsZXtib3JkZXItd2lkdGg6M3B4fS55dHAtYmlnLW1vZGUgLnl0cC13YXRjaC1sYXRlci1pY29uIC55dHAtc3Bpbm5lci1jaXJjbGV7Ym9yZGVyLXdpZHRoOjVweH0ud2ViZ2x7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjExO3dpZHRoOjEwMCV9LmVuZGVkLW1vZGUgLndlYmdse2Rpc3BsYXk6bm9uZX0ueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAteW91dHViZS1idXR0b24sLnl0cC1kbmkueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC15b3V0dWJlLWJ1dHRvbiwueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC15b3V0dWJlLWJ1dHRvbiwueXRwLWVtYmVkLnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC15b3V0dWJlLWJ1dHRvbiwueXRwLXNtYWxsLW1vZGUgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLXlvdXR1YmUtYnV0dG9ue3dpZHRoOjY3cHh9Lnl0cC1lbWJlZCAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAteW91dHViZS1idXR0b24ueXRwLXlvdXR1YmUtbXVzaWMtYnV0dG9ue3dpZHRoOjEyMHB4fS55dHAtZW1iZWQgLnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLXlvdXR1YmUtYnV0dG9uLnl0cC15b3V0dWJlLW11c2ljLWJ1dHRvbiBzdmd7bWFyZ2luLWxlZnQ6LTI1cHg7aGVpZ2h0OjI0cHh9Lnl0cC1jaHJvbWUtY29udHJvbHMgLnl0cC1idXR0b24ueXRwLXlvdXR1YmUtYnV0dG9uLm5vLWxpbmssLnl0cC1zbWFsbC1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC15b3V0dWJlLWJ1dHRvbi5uby1saW5re2N1cnNvcjpkZWZhdWx0O3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0cC1iaWctbW9kZSAueXRwLWNocm9tZS1jb250cm9scyAueXRwLWJ1dHRvbi55dHAteW91dHViZS1idXR0b24sLnl0cC1kbmkueXRwLWJpZy1tb2RlIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAtYnV0dG9uLnl0cC15b3V0dWJlLWJ1dHRvbnt3aWR0aDoxMDBweH0ueXRwLWVtYmVkIC55dHAtY2hyb21lLWNvbnRyb2xzIC55dHAteW91dHViZS1idXR0b24ueXRwLXlvdXR1YmUtbXVzaWMtYnV0dG9ue2hlaWdodDoyNXB4O21hcmdpbi1ib3R0b206N3B4fS55dHAtZHJhd2Vye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7d2lkdGg6MzUwcHg7dGV4dC1hbGlnbjpjZW50ZXI7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6NDc7LXdlYmtpdC10cmFuc2l0aW9uOndpZHRoIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOndpZHRoIC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtZHJhd2Vye3dpZHRoOjQyNXB4fS55dHAtZHJhd2VyLWNsb3NlZHt3aWR0aDoyNXB4fS55dHAtYmlnLW1vZGUgLnl0cC1kcmF3ZXItY2xvc2Vke3dpZHRoOjM4cHh9Lnl0cC1kcmF3ZXItY29udGVudHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7d2lkdGg6MzUwcHg7aGVpZ2h0OjEwMCU7cGFkZGluZzo0OHB4IDI1cHggMjVweDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjgpOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRwLWJpZy1tb2RlIC55dHAtZHJhd2VyLWNvbnRlbnR7d2lkdGg6NDI1cHg7cGFkZGluZzo3MHB4IDE1cHggMTVweH0ueXRwLWRyYXdlci1jbG9zZWQgLnl0cC1kcmF3ZXItY29udGVudHtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0cC1kcmF3ZXItY2xvc2UtYnV0dG9ue3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtwYWRkaW5nOjVweDtmaWxsOndoaXRlfS55dHAtYmlnLW1vZGUgLnl0cC1kcmF3ZXItY2xvc2UtYnV0dG9ue3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7cGFkZGluZzo3cHh9Lnl0cC1kcmF3ZXItY2xvc2VkIC55dHAtZHJhd2VyLWNsb3NlLWJ1dHRvbntkaXNwbGF5Om5vbmV9Lnl0cC1kcmF3ZXItb3Blbi1idXR0b257ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDowO3dpZHRoOjE1cHg7aGVpZ2h0OjMycHg7bWFyZ2luLXRvcDotMTZweDtwYWRkaW5nOjEwcHggNXB4O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNyl9Lnl0cC1iaWctbW9kZSAueXRwLWRyYXdlci1vcGVuLWJ1dHRvbnt3aWR0aDoyM3B4O2hlaWdodDo0OHB4O21hcmdpbi10b3A6LTI0cHg7cGFkZGluZzoxNXB4IDhweH0ueXRwLWRyYXdlci1jbG9zZWQgLnl0cC1kcmF3ZXItb3Blbi1idXR0b257ZGlzcGxheTpibG9ja30ueXRwLWRyYXdlci1vcGVuLWJ1dHRvbjphZnRlcntkaXNwbGF5OmlubGluZS1ibG9jaztib3JkZXI6NXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodC1jb2xvcjojYWFhO2JvcmRlci1sZWZ0Om5vbmU7Y29udGVudDoiIn0ueXRwLWJpZy1tb2RlIC55dHAtZHJhd2VyLW9wZW4tYnV0dG9uOmFmdGVye2JvcmRlci1ib3R0b20td2lkdGg6OHB4O2JvcmRlci1yaWdodC13aWR0aDo4cHg7Ym9yZGVyLXRvcC13aWR0aDo4cHh9Lmh0bWw1LXlwYy1tb2R1bGV7bGluZS1oZWlnaHQ6MS4yO3RleHQtYWxpZ246bGVmdH0uaHRtbDUteXBjLWFjdGlvbi1oZWFkaW5ne21hcmdpbi1ib3R0b206NXB4O2ZvbnQtc2l6ZToxOHB4O2NvbG9yOiM5OTl9Lnl0cC1zbWFsbC1tb2RlIC5odG1sNS15cGMtYWN0aW9uLWhlYWRpbmd7ZGlzcGxheTpub25lfS5odG1sNS15cGMtdGl0bGV7Zm9udC1zaXplOjIwcHh9Lmh0bWw1LXlwYy10aHVtYm5haWx7ZmxvYXQ6bGVmdH0uaHRtbDUteXBjLXRodW1ibmFpbCBpbWd7d2lkdGg6MTAwcHg7bWFyZ2luOjAgMTBweCAxMHB4IDB9Lmh0bWw1LXlwYy10aHVtYm5haWwgaW1nLmF2YXRhcntib3JkZXItcmFkaXVzOjUwJTtvdmVyZmxvdzpoaWRkZW59Lmh0bWw1LXlwYy10aHVtYm5haWwgaW1nLmxhbmRzY2FwZXt3aWR0aDoxNjBweH0ueXRwLXNtYWxsLW1vZGUgLmh0bWw1LXlwYy10aHVtYm5haWwgaW1ne3dpZHRoOjUwcHh9Lnl0cC1zbWFsbC1tb2RlIC5odG1sNS15cGMtdGh1bWJuYWlsIGltZy5sYW5kc2NhcGV7d2lkdGg6ODBweH0ueXRwLWJpZy1tb2RlIC5odG1sNS15cGMtdGh1bWJuYWlsIGltZ3t3aWR0aDoxNTBweDttYXJnaW46MCAxNXB4IDE4cHggMH0ueXRwLWJpZy1tb2RlIC5odG1sNS15cGMtdGh1bWJuYWlsIGltZy5sYW5kc2NhcGV7d2lkdGg6MjQwcHh9Lmh0bWw1LXlwYy1kZXNjcmlwdGlvbntmb250LXNpemU6MTRweH0ueXRwLXNtYWxsLW1vZGUgLmh0bWw1LXlwYy1kZXNjcmlwdGlvbnttYXJnaW4tdG9wOjEwcHh9Lnl0cC1iaWctbW9kZSAuaHRtbDUteXBjLWRlc2NyaXB0aW9ue21hcmdpbi10b3A6MzhweH0uaHRtbDUteXBjLXB1cmNoYXNle2ZvbnQtd2VpZ2h0OjUwMDtmb250LXNpemU6MTRweDttYXJnaW46MTJweCAwO3BhZGRpbmc6MTBweCAyMHB4O2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6IzI3OTNlNn0ueXRwLWJpZy1tb2RlIC5odG1sNS15cGMtcHVyY2hhc2V7bWFyZ2luOjE4cHggMDtwYWRkaW5nOjE1cHggMjBweDtib3JkZXItcmFkaXVzOjNweH0uaHRtbDUteXBjLXB1cmNoYXNlOmhvdmVye2JhY2tncm91bmQ6IzEyNmRiM30uaHRtbDUteXBjLXB1cmNoYXNlLmh0bWw1LXlwYy1yb3VuZGVke2JvcmRlci1yYWRpdXM6MThweH0uaHRtbDUteXBjLW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cGFkZGluZzo1cHg7bWFyZ2luLWxlZnQ6MTJweDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDo2Njtwb2ludGVyLWV2ZW50czpub25lO3RleHQtc2hhZG93OjAgMCAycHggcmdiYSgwLDAsMCwuNSl9Lnl0cC1iaWctbW9kZSAuaHRtbDUteXBjLW92ZXJsYXl7cGFkZGluZzo4cHg7bWFyZ2luLWxlZnQ6MjRweH0uaHRtbDUteXBjLWVuZHNjcmVlbntkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7cGFkZGluZzo1MXB4IDIxcHggMjFweDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjc1KTt6LWluZGV4OjM2fS55dHAtc21hbGwtbW9kZSAuaHRtbDUteXBjLWVuZHNjcmVlbntwYWRkaW5nLXRvcDoyMXB4fS55dHAteXBjLWNsaWNrd3JhcC1vdmVybGF5e3BhZGRpbmc6MjVweCAyMHB4IDA7ei1pbmRleDo2OX0ueXRwLXlwYy1jbGlja3dyYXAtaGVhZGVye2JvcmRlci1ib3R0b206MXB4IHNvbGlkICM4ODg7cGFkZGluZzowIDAgMTVweCA1cHg7Zm9udC1zaXplOjE4MiU7Zm9udC13ZWlnaHQ6NDAwfS55dHAteXBjLWNsaWNrd3JhcC1kZXNjcmlwdGlvbnttYXJnaW46MTVweCAwIDAgNXB4O2ZvbnQtc2l6ZToxMjclfS55dHAteXBjLWNsaWNrd3JhcC1jb25maXJte21hcmdpbjoyMHB4IDAgMCA1cHg7cGFkZGluZzo3cHggMTBweDtiYWNrZ3JvdW5kLWNvbG9yOiMzN2Q7Ym9yZGVyLXJhZGl1czoycHh9Lnl0cC15cGMtY2xpY2t3cmFwLWNvbmZpcm06aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjZjfS55dHAteXRvLXByZXJvbGwtbWVzc2FnZXtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cGFkZGluZzo1cHg7bWFyZ2luLWxlZnQ6MTJweDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDo2NTtwb2ludGVyLWV2ZW50czpub25lO3RleHQtc2hhZG93OjAgMCAycHggcmdiYSgwLDAsMCwuNSl9Lnl0cC15dG8tcHJlcm9sbCAueXRwLXl0by1wcmVyb2xsLW1lc3NhZ2V7ZGlzcGxheTpibG9ja31zZW50aW5lbHt9"}},"time_used":29,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":11,"receive":18,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/magnify-popup/magnific-popup.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.090Z","timestamp":1785143908090,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/magnify-popup/magnific-popup.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:38 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"2581-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 2129\r\nKeep-Alive: timeout=5, max=100\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":9601,"size_decoded":2491,"mime_type":"text/css","magic":"ASCII text","md5":"d807e3cf1b19191acc86ea908ec13169","sha1":"c0e13c059975fd35be420cb28678218b472ce68d","sha256":"f3e6de33e4066e6c094fdf18be39a500563fb27a3ba49ac1afcdd9d058d2c61e","sha512":"6638d572a8696706871f2fd3595f01f1ab29fe8bb2b94069ce4925fc3becf93481774b1015840dd29b98134033647a9fcb70710e2fad7b0424af2a8e29d58883","ssdeep":"192:EA4fSfR9Z1yjL3n28L6/9FtE8xHFEeOVzFMX:pZEn3eF6IFSFMX","tlshash":"2b1223e56fb51700e52ec599e293a714732e4063e61bccabbfd2184cef8d2890173b85","first_seen":"2024-05-25T01:53:16Z","last_seen":"2026-08-06T06:09:10.719402Z","times_seen":42,"resource_available":false,"data":"LyogTWFnbmlmaWMgUG9wdXAgQ1NTICovCi5tZnAtYmcgewogIHRvcDogMDsKICBsZWZ0OiAwOwogIHdpZHRoOiAxMDAlOwogIGhlaWdodDogMTAwJTsKICB6LWluZGV4OiAxMDQyOwogIG92ZXJmbG93OiBoaWRkZW47CiAgcG9zaXRpb246IGZpeGVkOwogIGJhY2tncm91bmQ6ICMwMDA7CiAgb3BhY2l0eTogMC45OwogIGZpbHRlcjogYWxwaGEob3BhY2l0eT05MCk7Cn0KCi5tZnAtd3JhcCB7CiAgdG9wOiAwOwogIGxlZnQ6IDA7CiAgd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiAxMDAlOwogIHotaW5kZXg6IDEwNDM7CiAgcG9zaXRpb246IGZpeGVkOwogIG91dGxpbmU6IG5vbmU7CiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47Cn0KCi5tZnAtY29udGFpbmVyIHsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHdpZHRoOiAxMDAlOwogIGhlaWdodDogMTAwJTsKICBsZWZ0OiAwOwogIHRvcDogMDsKICBwYWRkaW5nOiAwIDhweDsKICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OwogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7Cn0KCi5tZnAtY29udGFpbmVyOmJlZm9yZSB7CiAgY29udGVudDogJyc7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIGhlaWdodDogMTAwJTsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwp9CgoubWZwLWFsaWduLXRvcCAubWZwLWNvbnRhaW5lcjpiZWZvcmUgewogIGRpc3BsYXk6IG5vbmU7Cn0KCi5tZnAtY29udGVudCB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIG1hcmdpbjogMCBhdXRvOwogIHRleHQtYWxpZ246IGxlZnQ7CiAgei1pbmRleDogMTA0NTsKfQoKLm1mcC1pbmxpbmUtaG9sZGVyIC5tZnAtY29udGVudCwKLm1mcC1hamF4LWhvbGRlciAubWZwLWNvbnRlbnQgewogIHdpZHRoOiAxMDAlOwogIGN1cnNvcjogYXV0bzsKfQoKLm1mcC1hamF4LWN1ciB7CiAgY3Vyc29yOiBwcm9ncmVzczsKfQoKLm1mcC16b29tLW91dC1jdXIsIC5tZnAtem9vbS1vdXQtY3VyIC5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY2xvc2UgewogIGN1cnNvcjogLW1vei16b29tLW91dDsKICBjdXJzb3I6IC13ZWJraXQtem9vbS1vdXQ7CiAgY3Vyc29yOiB6b29tLW91dDsKfQoKLm1mcC16b29tIHsKICBjdXJzb3I6IHBvaW50ZXI7CiAgY3Vyc29yOiAtd2Via2l0LXpvb20taW47CiAgY3Vyc29yOiAtbW96LXpvb20taW47CiAgY3Vyc29yOiB6b29tLWluOwp9CgoubWZwLWF1dG8tY3Vyc29yIC5tZnAtY29udGVudCB7CiAgY3Vyc29yOiBhdXRvOwp9CgoubWZwLWNsb3NlLAoubWZwLWFycm93LAoubWZwLXByZWxvYWRlciwKLm1mcC1jb3VudGVyIHsKICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwogIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7CiAgLW1zLXVzZXItc2VsZWN0OiBub25lOwogIHVzZXItc2VsZWN0OiBub25lOwp9CgoubWZwLWxvYWRpbmcubWZwLWZpZ3VyZSB7CiAgZGlzcGxheTogbm9uZTsKfQoKLm1mcC1oaWRlIHsKICBkaXNwbGF5OiBub25lOwp9CgoubWZwLXByZWxvYWRlciB7CiAgY29sb3I6ICNDQ0M7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDogNTAlOwogIHdpZHRoOiBhdXRvOwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBtYXJnaW4tdG9wOiAtMC44ZW07CiAgbGVmdDogOHB4OwogIHJpZ2h0OiA4cHg7CiAgei1pbmRleDogMTA0NDsKfQoKLm1mcC1wcmVsb2FkZXIgYSB7CiAgY29sb3I6ICNDQ0M7Cn0KCi5tZnAtcHJlbG9hZGVyIGE6aG92ZXIgewogIGNvbG9yOiAjRkZGOwp9CgoubWZwLXMtcmVhZHkgLm1mcC1wcmVsb2FkZXIgewogIGRpc3BsYXk6IG5vbmU7Cn0KCi5tZnAtcy1lcnJvciAubWZwLWNvbnRlbnQgewogIGRpc3BsYXk6IG5vbmU7Cn0KCmJ1dHRvbi5tZnAtY2xvc2UsCmJ1dHRvbi5tZnAtYXJyb3cgewogIG92ZXJmbG93OiB2aXNpYmxlOwogIGN1cnNvcjogcG9pbnRlcjsKICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICBib3JkZXI6IDA7CiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogIGRpc3BsYXk6IGJsb2NrOwogIG91dGxpbmU6IG5vbmU7CiAgcGFkZGluZzogMDsKICB6LWluZGV4OiAxMDQ2OwogIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsKICBib3gtc2hhZG93OiBub25lOwp9CgpidXR0b246Oi1tb3otZm9jdXMtaW5uZXIgewogIHBhZGRpbmc6IDA7CiAgYm9yZGVyOiAwOwp9CgoubWZwLWNsb3NlIHsKICB3aWR0aDogNDRweDsKICBoZWlnaHQ6IDQ0cHg7CiAgbGluZS1oZWlnaHQ6IDQ0cHg7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHJpZ2h0OiAwOwogIHRvcDogMDsKICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIG9wYWNpdHk6IDAuNjU7CiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTY1KTsKICBwYWRkaW5nOiAwIDAgMThweCAxMHB4OwogIGNvbG9yOiAjRkZGOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXNpemU6IDI4cHg7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJywgc2Fucy1zZXJpZjsKfQoKLm1mcC1jbG9zZTpob3ZlciwKLm1mcC1jbG9zZTpmb2N1cyB7CiAgb3BhY2l0eTogMTsKICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTsKfQoKLm1mcC1jbG9zZTphY3RpdmUgewogIHRvcDogMXB4Owp9CgoubWZwLWNsb3NlLWJ0bi1pbiAubWZwLWNsb3NlIHsKICBjb2xvcjogIzMzMzsKfQoKLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jbG9zZSwKLm1mcC1pZnJhbWUtaG9sZGVyIC5tZnAtY2xvc2UgewogIGNvbG9yOiAjRkZGOwogIHJpZ2h0OiAtNnB4OwogIHRleHQtYWxpZ246IHJpZ2h0OwogIHBhZGRpbmctcmlnaHQ6IDZweDsKICB3aWR0aDogMTAwJTsKfQoKLm1mcC1jb3VudGVyIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAwOwogIHJpZ2h0OiAwOwogIGNvbG9yOiAjQ0NDOwogIGZvbnQtc2l6ZTogMTJweDsKICBsaW5lLWhlaWdodDogMThweDsKICB3aGl0ZS1zcGFjZTogbm93cmFwOwp9CgoubWZwLWFycm93IHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgb3BhY2l0eTogMC42NTsKICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NjUpOwogIG1hcmdpbjogMDsKICB0b3A6IDUwJTsKICBtYXJnaW4tdG9wOiAtNTVweDsKICBwYWRkaW5nOiAwOwogIHdpZHRoOiA5MHB4OwogIGhlaWdodDogMTEwcHg7CiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsKfQoKLm1mcC1hcnJvdzphY3RpdmUgewogIG1hcmdpbi10b3A6IC01NHB4Owp9CgoubWZwLWFycm93OmhvdmVyLAoubWZwLWFycm93OmZvY3VzIHsKICBvcGFjaXR5OiAxOwogIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApOwp9CgoubWZwLWFycm93OmJlZm9yZSwKLm1mcC1hcnJvdzphZnRlciwKLm1mcC1hcnJvdyAubWZwLWIsCi5tZnAtYXJyb3cgLm1mcC1hIHsKICBjb250ZW50OiAnJzsKICBkaXNwbGF5OiBibG9jazsKICB3aWR0aDogMDsKICBoZWlnaHQ6IDA7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGxlZnQ6IDA7CiAgdG9wOiAwOwogIG1hcmdpbi10b3A6IDM1cHg7CiAgbWFyZ2luLWxlZnQ6IDM1cHg7CiAgYm9yZGVyOiBtZWRpdW0gaW5zZXQgdHJhbnNwYXJlbnQ7Cn0KCi5tZnAtYXJyb3c6YWZ0ZXIsCi5tZnAtYXJyb3cgLm1mcC1hIHsKICBib3JkZXItdG9wLXdpZHRoOiAxM3B4OwogIGJvcmRlci1ib3R0b20td2lkdGg6IDEzcHg7CiAgdG9wOiA4cHg7Cn0KCi5tZnAtYXJyb3c6YmVmb3JlLAoubWZwLWFycm93IC5tZnAtYiB7CiAgYm9yZGVyLXRvcC13aWR0aDogMjFweDsKICBib3JkZXItYm90dG9tLXdpZHRoOiAyMXB4OwogIG9wYWNpdHk6IDAuNzsKfQoKLm1mcC1hcnJvdy1sZWZ0IHsKICBsZWZ0OiAwOwp9CgoubWZwLWFycm93LWxlZnQ6YWZ0ZXIsCi5tZnAtYXJyb3ctbGVmdCAubWZwLWEgewogIGJvcmRlci1yaWdodDogMTdweCBzb2xpZCAjRkZGOwogIG1hcmdpbi1sZWZ0OiAzMXB4Owp9CgoubWZwLWFycm93LWxlZnQ6YmVmb3JlLAoubWZwLWFycm93LWxlZnQgLm1mcC1iIHsKICBtYXJnaW4tbGVmdDogMjVweDsKICBib3JkZXItcmlnaHQ6IDI3cHggc29saWQgIzNGM0YzRjsKfQoKLm1mcC1hcnJvdy1yaWdodCB7CiAgcmlnaHQ6IDA7Cn0KCi5tZnAtYXJyb3ctcmlnaHQ6YWZ0ZXIsCi5tZnAtYXJyb3ctcmlnaHQgLm1mcC1hIHsKICBib3JkZXItbGVmdDogMTdweCBzb2xpZCAjRkZGOwogIG1hcmdpbi1sZWZ0OiAzOXB4Owp9CgoubWZwLWFycm93LXJpZ2h0OmJlZm9yZSwKLm1mcC1hcnJvdy1yaWdodCAubWZwLWIgewogIGJvcmRlci1sZWZ0OiAyN3B4IHNvbGlkICMzRjNGM0Y7Cn0KCi5tZnAtaWZyYW1lLWhvbGRlciB7CiAgcGFkZGluZy10b3A6IDQwcHg7CiAgcGFkZGluZy1ib3R0b206IDQwcHg7Cn0KCi5tZnAtaWZyYW1lLWhvbGRlciAubWZwLWNvbnRlbnQgewogIGxpbmUtaGVpZ2h0OiAwOwogIHdpZHRoOiAxMDAlOwogIG1heC13aWR0aDogOTAwcHg7Cn0KCi5tZnAtaWZyYW1lLWhvbGRlciAubWZwLWNsb3NlIHsKICB0b3A6IC00MHB4Owp9CgoubWZwLWlmcmFtZS1zY2FsZXIgewogIHdpZHRoOiAxMDAlOwogIGhlaWdodDogMDsKICBvdmVyZmxvdzogaGlkZGVuOwogIHBhZGRpbmctdG9wOiA1Ni4yNSU7Cn0KCi5tZnAtaWZyYW1lLXNjYWxlciBpZnJhbWUgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBkaXNwbGF5OiBibG9jazsKICB0b3A6IDA7CiAgbGVmdDogMDsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTsKICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTsKICBiYWNrZ3JvdW5kOiAjMDAwOwp9CgovKiBNYWluIGltYWdlIGluIHBvcHVwICovCmltZy5tZnAtaW1nIHsKICB3aWR0aDogYXV0bzsKICBtYXgtd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiBhdXRvOwogIGRpc3BsYXk6IGJsb2NrOwogIGxpbmUtaGVpZ2h0OiAwOwogIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsKICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICBwYWRkaW5nOiA0MHB4IDAgNDBweDsKICBtYXJnaW46IDAgYXV0bzsKfQoKLyogVGhlIHNoYWRvdyBiZWhpbmQgdGhlIGltYWdlICovCi5tZnAtZmlndXJlIHsKICBsaW5lLWhlaWdodDogMDsKfQoKLm1mcC1maWd1cmU6YWZ0ZXIgewogIGNvbnRlbnQ6ICcnOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICBsZWZ0OiAwOwogIHRvcDogNDBweDsKICBib3R0b206IDQwcHg7CiAgZGlzcGxheTogYmxvY2s7CiAgcmlnaHQ6IDA7CiAgd2lkdGg6IGF1dG87CiAgaGVpZ2h0OiBhdXRvOwogIHotaW5kZXg6IC0xOwogIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDAsIDAsIDAuNik7CiAgYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDAsIDAsIDAuNik7CiAgYmFja2dyb3VuZDogIzQ0NDsKfQoKLm1mcC1maWd1cmUgc21hbGwgewogIGNvbG9yOiAjQkRCREJEOwogIGRpc3BsYXk6IGJsb2NrOwogIGZvbnQtc2l6ZTogMTJweDsKICBsaW5lLWhlaWdodDogMTRweDsKfQoKLm1mcC1maWd1cmUgZmlndXJlIHsKICBtYXJnaW46IDA7Cn0KCi5tZnAtYm90dG9tLWJhciB7CiAgbWFyZ2luLXRvcDogLTM2cHg7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDogMTAwJTsKICBsZWZ0OiAwOwogIHdpZHRoOiAxMDAlOwogIGN1cnNvcjogYXV0bzsKfQoKLm1mcC10aXRsZSB7CiAgdGV4dC1hbGlnbjogbGVmdDsKICBsaW5lLWhlaWdodDogMThweDsKICBjb2xvcjogI0YzRjNGMzsKICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7CiAgcGFkZGluZy1yaWdodDogMzZweDsKfQoKLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jb250ZW50IHsKICBtYXgtd2lkdGg6IDEwMCU7Cn0KCi5tZnAtZ2FsbGVyeSAubWZwLWltYWdlLWhvbGRlciAubWZwLWZpZ3VyZSB7CiAgY3Vyc29yOiBwb2ludGVyOwp9CgpAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSwgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogMzAwcHgpIHsKICAvKioKICAgICAgICogUmVtb3ZlIGFsbCBwYWRkaW5ncyBhcm91bmQgdGhlIGltYWdlIG9uIHNtYWxsIHNjcmVlbgogICAgICAgKi8KICAubWZwLWltZy1tb2JpbGUgLm1mcC1pbWFnZS1ob2xkZXIgewogICAgcGFkZGluZy1sZWZ0OiAwOwogICAgcGFkZGluZy1yaWdodDogMDsKICB9CiAgLm1mcC1pbWctbW9iaWxlIGltZy5tZnAtaW1nIHsKICAgIHBhZGRpbmc6IDA7CiAgfQogIC5tZnAtaW1nLW1vYmlsZSAubWZwLWZpZ3VyZTphZnRlciB7CiAgICB0b3A6IDA7CiAgICBib3R0b206IDA7CiAgfQogIC5tZnAtaW1nLW1vYmlsZSAubWZwLWZpZ3VyZSBzbWFsbCB7CiAgICBkaXNwbGF5OiBpbmxpbmU7CiAgICBtYXJnaW4tbGVmdDogNXB4OwogIH0KICAubWZwLWltZy1tb2JpbGUgLm1mcC1ib3R0b20tYmFyIHsKICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTsKICAgIGJvdHRvbTogMDsKICAgIG1hcmdpbjogMDsKICAgIHRvcDogYXV0bzsKICAgIHBhZGRpbmc6IDNweCA1cHg7CiAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIH0KICAubWZwLWltZy1tb2JpbGUgLm1mcC1ib3R0b20tYmFyOmVtcHR5IHsKICAgIHBhZGRpbmc6IDA7CiAgfQogIC5tZnAtaW1nLW1vYmlsZSAubWZwLWNvdW50ZXIgewogICAgcmlnaHQ6IDVweDsKICAgIHRvcDogM3B4OwogIH0KICAubWZwLWltZy1tb2JpbGUgLm1mcC1jbG9zZSB7CiAgICB0b3A6IDA7CiAgICByaWdodDogMDsKICAgIHdpZHRoOiAzNXB4OwogICAgaGVpZ2h0OiAzNXB4OwogICAgbGluZS1oZWlnaHQ6IDM1cHg7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7CiAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBwYWRkaW5nOiAwOwogIH0KfQoKQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTAwcHgpIHsKICAubWZwLWFycm93IHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTsKICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNzUpOwogICAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTsKICB9CiAgLm1mcC1hcnJvdy1sZWZ0IHsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMDsKICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwOwogICAgdHJhbnNmb3JtLW9yaWdpbjogMDsKICB9CiAgLm1mcC1hcnJvdy1yaWdodCB7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCU7CiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMTAwJTsKICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCU7CiAgfQogIC5tZnAtY29udGFpbmVyIHsKICAgIHBhZGRpbmctbGVmdDogNnB4OwogICAgcGFkZGluZy1yaWdodDogNnB4OwogIH0KfQoKLm1mcC1pZTcgLm1mcC1pbWcgewogIHBhZGRpbmc6IDA7Cn0KCi5tZnAtaWU3IC5tZnAtYm90dG9tLWJhciB7CiAgd2lkdGg6IDYwMHB4OwogIGxlZnQ6IDUwJTsKICBtYXJnaW4tbGVmdDogLTMwMHB4OwogIG1hcmdpbi10b3A6IDVweDsKICBwYWRkaW5nLWJvdHRvbTogNXB4Owp9CgoubWZwLWllNyAubWZwLWNvbnRhaW5lciB7CiAgcGFkZGluZzogMDsKfQoKLm1mcC1pZTcgLm1mcC1jb250ZW50IHsKICBwYWRkaW5nLXRvcDogNDRweDsKfQoKLm1mcC1pZTcgLm1mcC1jbG9zZSB7CiAgdG9wOiAwOwogIHJpZ2h0OiAwOwogIHBhZGRpbmctdG9wOiAwOwp9CgoubWZwLWZhZGUubWZwLWJnIHsKICBvcGFjaXR5OiAwOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1vdXQ7CiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLW91dDsKICAtby10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLW91dDsKICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLW91dDsKfQoKLm1mcC1mYWRlLm1mcC1iZy5tZnAtcmVhZHkgewogIG9wYWNpdHk6IDAuOTI7Cn0KCi5tZnAtYm90dG9tLWJhciB7CiAgZGlzcGxheTogbm9uZTsKfQoKLm1mcC1mYWRlLm1mcC1iZy5tZnAtcmVtb3ZpbmcgewogIG9wYWNpdHk6IDA7Cn0KCi5tZnAtYXJyb3ctcmlnaHQ6OmFmdGVyLAoubWZwLWFycm93LWxlZnQ6OmFmdGVyIHsKICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJzsKICBib3JkZXI6IG5vbmU7CiAgY29sb3I6ICNmZmY7CiAgZm9udC1zaXplOiA2NXB4OwogIC13ZWJraXQtdHJhbnNpdGlvbjogLjVzOwogIC1vLXRyYW5zaXRpb246IC41czsKICB0cmFuc2l0aW9uOiAuNXM7Cn0KCi5tZnAtYXJyb3ctcmlnaHQ6OmFmdGVyIHsKICBjb250ZW50OiAiXGYxMDUiOwp9CgoubWZwLWFycm93LWxlZnQ6OmFmdGVyIHsKICBjb250ZW50OiAiXGYxMDQiOwp9CgoubWZwLWFycm93LXJpZ2h0OjpiZWZvcmUsCi5tZnAtYXJyb3ctbGVmdDo6YmVmb3JlIHsKICBib3JkZXI6IG5vbmU7Cn0KCi5tZnAtYXJyb3cgewogIGhlaWdodDogNjBweDsKfQoKLm1mcC1hcnJvdzo6YmVmb3JlLAoubWZwLWFycm93OjphZnRlciwKLm1mcC1hcnJvdyAubWZwLWIsCi5tZnAtYXJyb3cgLm1mcC1hIHsKICBtYXJnaW4tdG9wOiAxNXB4OwogIHRvcDogLTFweDsKfQoKaW1nLm1mcC1pbWcgewogIHBhZGRpbmc6IDQwcHggMHB4IDA7Cn0KCi5tZnAtZmFkZS5tZnAtd3JhcCAubWZwLWNvbnRlbnQgewogIG9wYWNpdHk6IDA7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOTUpOwogIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuOTUpOwogIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLW91dDsKICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2Utb3V0OwogIC1vLXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2Utb3V0OwogIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2Utb3V0Owp9CgoubWZwLWZhZGUubWZwLXdyYXAubWZwLXJlYWR5IC5tZnAtY29udGVudCB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwogIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpOwogIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgb3BhY2l0eTogMTsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2Utb3V0OwogIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1vdXQ7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1vdXQ7CiAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1vdXQ7Cn0KCi5tZnAtZmFkZS5tZnAtd3JhcC5tZnAtcmVtb3ZpbmcgLm1mcC1jb250ZW50IHsKICBvcGFjaXR5OiAwOwogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTsKICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTsKICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1vdXQ7CiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLW91dDsKICAtby10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLW91dDsKICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLW91dDsKfQ=="}},"time_used":10948,"timings":{"blocked":8721,"dns":0,"connect":0,"send":0,"wait":2227,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/clients-log/logo8.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.350Z","timestamp":1785143908350,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/clients-log/logo8.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/clients-log/logo1.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.352Z","timestamp":1785143908352,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/clients-log/logo1.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"api.coingecko.com/api/v3/coins/markets?vs_currency=usd\u0026ids=bitcoin,ethereum,eos,ripple,litecoin\u0026locale=en","fqdn":"api.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"104.20.41.132","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.464Z","timestamp":1785143926464,"http_version":"HTTP/3","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":"api.coingecko.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Fri, 03 Jul 2026 17:14:13 GMT","end":"Thu, 01 Oct 2026 18:14:10 GMT"},"fingerprint":{"sha1":"FD:68:29:08:59:93:ED:F1:73:C5:56:C8:B7:8C:EA:2D:F8:7E:E5:67","sha256":"28:11:40:A6:0A:FB:70:11:FF:CD:E4:7F:13:40:3F:0F:D5:5F:68:21:26:DF:61:5A:45:A5:EB:B3:33:B2:A9:0B"}}},"request":{"raw":"GET /api/v3/coins/markets?vs_currency=usd\u0026ids=bitcoin,ethereum,eos,ripple,litecoin\u0026locale=en HTTP/1.1\r\nHost: api.coingecko.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\nReferer: https://scromegatrade.com/\r\nOrigin: https://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\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\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\ncontent-type: application/json; charset=utf-8\r\nserver: cloudflare\r\naccess-control-allow-origin: *\r\naccess-control-allow-methods: POST, PUT, DELETE, GET, OPTIONS\r\naccess-control-expose-headers: link, per-page, total\r\naccess-control-max-age: 7200\r\nx-frame-options: SAMEORIGIN\r\nx-xss-protection: 0\r\nx-content-type-options: nosniff\r\nx-permitted-cross-domain-policies: none\r\nreferrer-policy: strict-origin-when-cross-origin\r\nx-data-source: 2.0\r\ntotal: 5\r\nper-page: 100\r\ncache-control: max-age=30, public, must-revalidate, s-maxage=60\r\naccess-control-request-method: *\r\naccess-control-allow-headers: Origin, X-Requested-With, Content-Type, Accept, Authorization\r\nvary: Accept-Encoding, Origin\r\ncontent-encoding: gzip\r\netag: W/\"734354d30aa82293bae55b95341cefda\"\r\nx-request-id: 1dee27a3-edab-437b-aaf0-487dbed5c384\r\nx-runtime: 0.004572\r\ncontent-security-policy-report-only: script-src https://accounts.google.com/gsi/client; frame-src https://accounts.google.com/gsi/; connect-src https://accounts.google.com/gsi/;\r\nstrict-transport-security: max-age=600\r\ncf-cache-status: EXPIRED\r\npriority: u=4,i=?0\r\ncf-ray: a21a8f047a4da0f0-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\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"]},{"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":3944,"size_decoded":2430,"mime_type":"application/json; charset=utf-8","magic":"JSON text data","md5":"55dab87c4bbfa96fb35ad8c63b1ca07e","sha1":"d34f036789ea67b87cd1a45b5e08ed9269f8b6f6","sha256":"49b37484800b999b54e5fc8136fea8662fb51a292ea6f725aff08b93f0ac7b8d","sha512":"69956dfe6e51413b38bde0a77460ee3517821898663fa13f4248ce56a9241f06474f4feb5c922d86cb94e229de7bd81ab02e2f67986c6ca2f143a579208d0a4c","ssdeep":"","tlshash":"388103930d3499e3c1a1655a699a36140d3efeda8cc9dc025f9ecdce44687fb420ee4a","first_seen":"2026-07-27T09:19:08.392657Z","last_seen":"2026-07-27T09:20:18.373618Z","times_seen":2,"resource_available":false,"data":"W3siaWQiOiJiaXRjb2luIiwic3ltYm9sIjoiYnRjIiwibmFtZSI6IkJpdGNvaW4iLCJpbWFnZSI6Imh0dHBzOi8vY29pbi1pbWFnZXMuY29pbmdlY2tvLmNvbS9jb2lucy9pbWFnZXMvMS9sYXJnZS9iaXRjb2luLnBuZz8xNjk2NTAxNDAwIiwiY3VycmVudF9wcmljZSI6NjUwNzQsIm1hcmtldF9jYXAiOjEzMDU1NDc3MzMyNDMsIm1hcmtldF9jYXBfcmFuayI6MSwiZnVsbHlfZGlsdXRlZF92YWx1YXRpb24iOjEzMDU1NDc3MzMyNDMsInRvdGFsX3ZvbHVtZSI6MTkyMDg2NzI2NzcsImhpZ2hfMjRoIjo2NTYxOCwibG93XzI0aCI6NjQzNzEsInByaWNlX2NoYW5nZV8yNGgiOjYyMC45OCwicHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjoxLjMsIm1hcmtldF9jYXBfY2hhbmdlXzI0aCI6MTI1MzE4NDkwMzYsIm1hcmtldF9jYXBfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjowLjk2OTIsImNpcmN1bGF0aW5nX3N1cHBseSI6MjAwNjE4NjIuMCwidG90YWxfc3VwcGx5IjoyMDA2MTg2Mi4wLCJtYXhfc3VwcGx5IjoyMTAwMDAwMC4wLCJhdGgiOjEyNjA4MCwiYXRoX2NoYW5nZV9wZXJjZW50YWdlIjotNDguMzg2OTcsImF0aF9kYXRlIjoiMjAyNS0xMC0wNlQxMDo1Nzo0Mi4wMDBaIiwiYXRsIjo2Ny44MSwiYXRsX2NoYW5nZV9wZXJjZW50YWdlIjo5NTg2Ni4wODY2NiwiYXRsX2RhdGUiOiIyMDEzLTA3LTA1VDE2OjAwOjAwLjAwMFoiLCJyb2kiOm51bGwsImxhc3RfdXBkYXRlZCI6IjIwMjYtMDctMjdUMDk6MTY6MjAuMDAwWiJ9LHsiaWQiOiJldGhlcmV1bSIsInN5bWJvbCI6ImV0aCIsIm5hbWUiOiJFdGhlcmV1bSIsImltYWdlIjoiaHR0cHM6Ly9jb2luLWltYWdlcy5jb2luZ2Vja28uY29tL2NvaW5zL2ltYWdlcy8yNzkvbGFyZ2UvZXRoZXJldW0ucG5nPzE2OTY1MDE2MjgiLCJjdXJyZW50X3ByaWNlIjoxOTU2LjE3LCJtYXJrZXRfY2FwIjoyMzYwNTUwNjc2MTMsIm1hcmtldF9jYXBfcmFuayI6MiwiZnVsbHlfZGlsdXRlZF92YWx1YXRpb24iOjIzNjA1NTA2NzYxMywidG90YWxfdm9sdW1lIjo4ODk0NjQ1MzQ1LCJoaWdoXzI0aCI6MTk3My4wNywibG93XzI0aCI6MTg4Mi4zMywicHJpY2VfY2hhbmdlXzI0aCI6NzMuMDQsInByaWNlX2NoYW5nZV9wZXJjZW50YWdlXzI0aCI6NC41LCJtYXJrZXRfY2FwX2NoYW5nZV8yNGgiOjg3OTM4NzIyMTgsIm1hcmtldF9jYXBfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjozLjg2OTUsImNpcmN1bGF0aW5nX3N1cHBseSI6MTIwNjgyNjM1Ljg1MzEwMzcxLCJ0b3RhbF9zdXBwbHkiOjEyMDY4MjYzNS44NTMxMDM3LCJtYXhfc3VwcGx5IjpudWxsLCJhdGgiOjQ5NDYuMDUsImF0aF9jaGFuZ2VfcGVyY2VudGFnZSI6LTYwLjQ0OTc2LCJhdGhfZGF0ZSI6IjIwMjUtMDgtMjRUMTE6MjE6MDMuMDAwWiIsImF0bCI6MC40MzI5NzksImF0bF9jaGFuZ2VfcGVyY2VudGFnZSI6NDUxNjk0LjM4ODgyLCJhdGxfZGF0ZSI6IjIwMTUtMTAtMTlUMTY6MDA6MDAuMDAwWiIsInJvaSI6eyJ0aW1lcyI6MzkuMTkyMTc5OTA0MTI1NSwiY3VycmVuY3kiOiJidGMiLCJwZXJjZW50YWdlIjozOTE5LjIxNzk5MDQxMjU1MDV9LCJsYXN0X3VwZGF0ZWQiOiIyMDI2LTA3LTI3VDA5OjE2OjIwLjAwMFoifSx7ImlkIjoicmlwcGxlIiwic3ltYm9sIjoieHJwIiwibmFtZSI6IlhSUCIsImltYWdlIjoiaHR0cHM6Ly9jb2luLWltYWdlcy5jb2luZ2Vja28uY29tL2NvaW5zL2ltYWdlcy80NC9sYXJnZS94cnAtc3ltYm9sLXdoaXRlLTEyOC5wbmc/MTY5NjUwMTQ0MiIsImN1cnJlbnRfcHJpY2UiOjEuMSwibWFya2V0X2NhcCI6NjkwNjQzMjM1NTEsIm1hcmtldF9jYXBfcmFuayI6NiwiZnVsbHlfZGlsdXRlZF92YWx1YXRpb24iOjExMDQyODI1ODA5NCwidG90YWxfdm9sdW1lIjo2Njg1MzAyNTgsImhpZ2hfMjRoIjoxLjEyLCJsb3dfMjRoIjoxLjA5NiwicHJpY2VfY2hhbmdlXzI0aCI6MC4wMDUzNzg5NywicHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjowLjgsIm1hcmtldF9jYXBfY2hhbmdlXzI0aCI6MzM2MDMzOTUzLCJtYXJrZXRfY2FwX2NoYW5nZV9wZXJjZW50YWdlXzI0aCI6MC40ODg5MywiY2lyY3VsYXRpbmdfc3VwcGx5Ijo2MjUzMzI3MTk1NS4wLCJ0b3RhbF9zdXBwbHkiOjk5OTg1NjM1NzA3LjAsIm1heF9zdXBwbHkiOjEwMDAwMDAwMDAwMC4wLCJhdGgiOjMuNjUsImF0aF9jaGFuZ2VfcGVyY2VudGFnZSI6LTY5LjcxMTEzLCJhdGhfZGF0ZSI6IjIwMjUtMDctMTdUMTk6NDA6NTMuMDAwWiIsImF0bCI6MC4wMDI2ODYyMSwiYXRsX2NoYW5nZV9wZXJjZW50YWdlIjo0MTAxNS40NzA2MSwiYXRsX2RhdGUiOiIyMDE0LTA1LTIxVDE2OjAwOjAwLjAwMFoiLCJyb2kiOm51bGwsImxhc3RfdXBkYXRlZCI6IjIwMjYtMDctMjdUMDk6MTY6MjAuMDAwWiJ9LHsiaWQiOiJsaXRlY29pbiIsInN5bWJvbCI6Imx0YyIsIm5hbWUiOiJMaXRlY29pbiIsImltYWdlIjoiaHR0cHM6Ly9jb2luLWltYWdlcy5jb2luZ2Vja28uY29tL2NvaW5zL2ltYWdlcy8yL2xhcmdlL2xpdGVjb2luLnBuZz8xNjk2NTAxNDAwIiwiY3VycmVudF9wcmljZSI6NDYuOTYsIm1hcmtldF9jYXAiOjM2MzU5NjA4MTQsIm1hcmtldF9jYXBfcmFuayI6MjcsImZ1bGx5X2RpbHV0ZWRfdmFsdWF0aW9uIjozNjM1OTY2MDk3LCJ0b3RhbF92b2x1bWUiOjIzMzA3MTcyOSwiaGlnaF8yNGgiOjQ4LjIsImxvd18yNGgiOjQ2LjYyLCJwcmljZV9jaGFuZ2VfMjRoIjotMC4yMDA0NjY3NzAxNzk3MzczNSwicHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjowLjIsIm1hcmtldF9jYXBfY2hhbmdlXzI0aCI6LTE1NTY0ODE4LjMyMTIxNjEwNiwibWFya2V0X2NhcF9jaGFuZ2VfcGVyY2VudGFnZV8yNGgiOi0wLjQyNjI2LCJjaXJjdWxhdGluZ19zdXBwbHkiOjc3NDI5Njc4Ljk3NDYwMjE2LCJ0b3RhbF9zdXBwbHkiOjc3NDMyNjI4Ljk4MjAyMjU3LCJtYXhfc3VwcGx5Ijo4NDAwMDAwMC4wLCJhdGgiOjQxMC4yNiwiYXRoX2NoYW5nZV9wZXJjZW50YWdlIjotODguNTUzNTIsImF0aF9kYXRlIjoiMjAyMS0wNS0wOVQxOToxMzowNy4wMDBaIiwiYXRsIjoxLjE1LCJhdGxfY2hhbmdlX3BlcmNlbnRhZ2UiOjM5ODcuNjIwMDcsImF0bF9kYXRlIjoiMjAxNS0wMS0xM1QxNjowMDowMC4wMDBaIiwicm9pIjpudWxsLCJsYXN0X3VwZGF0ZWQiOiIyMDI2LTA3LTI3VDA5OjE2OjIwLjAwMFoifSx7ImlkIjoiZW9zIiwic3ltYm9sIjoiZW9zIiwibmFtZSI6IkVPUyIsImltYWdlIjoiaHR0cHM6Ly9jb2luLWltYWdlcy5jb2luZ2Vja28uY29tL2NvaW5zL2ltYWdlcy83MzgvbGFyZ2UvQ0dfRU9TX0ljb24ucG5nPzE3MzE3MDUyMzIiLCJjdXJyZW50X3ByaWNlIjowLjA2MzgxLCJtYXJrZXRfY2FwIjowLjAsIm1hcmtldF9jYXBfcmFuayI6bnVsbCwiZnVsbHlfZGlsdXRlZF92YWx1YXRpb24iOjEzNDAwMTExNywidG90YWxfdm9sdW1lIjoyOTA4OSwiaGlnaF8yNGgiOjAuMDY1Mzc3LCJsb3dfMjRoIjowLjA2MjE2OCwicHJpY2VfY2hhbmdlXzI0aCI6MC4wMDE0MDc5NCwicHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoIjoxLjEsIm1hcmtldF9jYXBfY2hhbmdlXzI0aCI6bnVsbCwibWFya2V0X2NhcF9jaGFuZ2VfcGVyY2VudGFnZV8yNGgiOm51bGwsImNpcmN1bGF0aW5nX3N1cHBseSI6MC4wLCJ0b3RhbF9zdXBwbHkiOjIxMDAwMDAwMDAuMCwibWF4X3N1cHBseSI6MjEwMDAwMDAwMC4wLCJhdGgiOjIyLjcxLCJhdGhfY2hhbmdlX3BlcmNlbnRhZ2UiOi05OS43MTkwNCwiYXRoX2RhdGUiOiIyMDE4LTA0LTI4VDIzOjUwOjMzLjAwMFoiLCJhdGwiOjAuMDU4MDA1LCJhdGxfY2hhbmdlX3BlcmNlbnRhZ2UiOjEwLjAwODg5LCJhdGxfZGF0ZSI6IjIwMjYtMDYtMDZUMDQ6Mzg6NDUuMDAwWiIsInJvaSI6eyJ0aW1lcyI6LTAuOTM1NTkxNDk2MjkyNTM3NiwiY3VycmVuY3kiOiJ1c2QiLCJwZXJjZW50YWdlIjotOTMuNTU5MTQ5NjI5MjUzNzV9LCJsYXN0X3VwZGF0ZWQiOiIyMDI2LTA3LTI3VDA5OjE2OjIwLjAwMFoifV0="}},"time_used":182,"timings":{"blocked":-1,"dns":2,"connect":11,"send":0,"wait":169,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLCz7Z1xlFQ.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://scromegatrade.com/","date":"2026-07-27T09:18:46.484Z","timestamp":1785143926484,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/poppins/v24/pxiByp8kv8JHgFVrLCz7Z1xlFQ.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://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.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: 7816\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Tue, 21 Jul 2026 23:00:27 GMT\r\nexpires: Wed, 21 Jul 2027 23:00:27 GMT\r\ncache-control: public, max-age=31536000\r\nage: 469099\r\nlast-modified: Mon, 15 Sep 2025 16:35: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":7816,"size_decoded":8628,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 7816, version 1.0","md5":"25b0e113ca7cce3770d542736db26368","sha1":"cb726212d5d525021752a1d8470a0fb593e0c49e","sha256":"9338e65fc077355c7a87ae0d64cc101e23b9bf8ad78ae65f0f319c857311b526","sha512":"a0d331e62ab4727f49ca286a1ee7fb81cddc5bb9edf71ef84f4bd4fa1552069af1a82752011ba88fae80862d034135926b7e99d70e59d626d66d4ede90e94c30","ssdeep":"192:Agw5ksLwlyK8F2BXU96Fc575OI3+ga534SlEFwTG4ovej9be:Al5y8FSUMS5VOq1KISlvS4ov+4","tlshash":"a3f1af19d5de5a73f80032b45b6911ba7e42fa83bc68bbedf8046a10ad542cb467cc91","first_seen":"2023-04-05T13:48:05Z","last_seen":"2026-08-11T07:58:02.982501Z","times_seen":296054,"resource_available":true,"data":"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"}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/4911410e5153f0d7.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.691Z","timestamp":1785143926691,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/4911410e5153f0d7.js HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\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: same-origin\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\naccess-control-allow-origin: *\r\nage: 3831443\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"4911410e5153f0d7.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\netag: W/\"e09a94d1ed13e73c8c05e86ecc9b73b5\"\r\nlast-modified: Sat, 13 Jun 2026 00:50:11 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/4911410e5153f0d7.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::5pnv4-1781312483646-99b0a50f7685\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=WEaZ1F5hR39RNMDW1xtcF1Dvnh3YKQQtuCjf2%2FT6dDpJRkWOXsCqSBjjApMUu2qb7BtCiE7Yt0vsUYGraSGRHcA1ejii1bSWVG46g6vvU39nhEnouyJlkUjCa5EQ\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21a8f05d9180b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\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"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"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":224417,"size_decoded":73397,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (65536), with no line terminators","md5":"e09a94d1ed13e73c8c05e86ecc9b73b5","sha1":"5d3e0e86e66f40d854564417d18b9a8cfb50938f","sha256":"bdeee3ad5435b26f62f6a8ce700f78618b18b355f3d3cd21ec3949a59777eaf5","sha512":"7d4e4220b8c82da8621e7f0ae1bfdb323ed094215712b54bfd28ed06e06e0aa9aded8bc0f07eb71ea08e821f75d433c38522d2054e9756e34814622cf8957899","ssdeep":"3072:LZhLWlPznn2U1BR0Bef8xgVrkRMKTopmN6Cstv9it+QK:LZhLWxznn2U1sWK04xstv9it+QK","tlshash":"66240be83995f6626ab302a710af1803733c252b280d4d60a711fdddb57845eb17bf9e","first_seen":"2026-02-04T14:24:19.892015Z","last_seen":"2026-08-11T04:47:30.076454Z","times_seen":2060,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDc4NzUsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sImdldEFzc2V0UHJlZml4Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbH19KTtsZXQgcj1lLnIoNDEwNjIpO2Z1bmN0aW9uIGwoKXtsZXQgZT1kb2N1bWVudC5jdXJyZW50U2NyaXB0O2lmKCEoZSBpbnN0YW5jZW9mIEhUTUxTY3JpcHRFbGVtZW50KSl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHIuSW52YXJpYW50RXJyb3IoYEV4cGVjdGVkIGRvY3VtZW50LmN1cnJlbnRTY3JpcHQgdG8gYmUgYSA8c2NyaXB0PiBlbGVtZW50LiBSZWNlaXZlZCAke2V9IGluc3RlYWQuYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3ODMiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7bGV0e3BhdGhuYW1lOnR9PW5ldyBVUkwoZS5zcmMpLG49dC5pbmRleE9mKCIvX25leHQvIik7aWYoLTE9PT1uKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgci5JbnZhcmlhbnRFcnJvcihgRXhwZWN0ZWQgZG9jdW1lbnQuY3VycmVudFNjcmlwdCBzcmMgdG8gY29udGFpbiAnL19uZXh0LycuIFJlY2VpdmVkICR7ZS5zcmN9IGluc3RlYWQuYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3ODQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7cmV0dXJuIHQuc2xpY2UoMCxuKX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwxNTUzNiwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwic2V0QXR0cmlidXRlc0Zyb21Qcm9wcyIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG99fSk7bGV0IHI9e2FjY2VwdENoYXJzZXQ6ImFjY2VwdC1jaGFyc2V0IixjbGFzc05hbWU6ImNsYXNzIixodG1sRm9yOiJmb3IiLGh0dHBFcXVpdjoiaHR0cC1lcXVpdiIsbm9Nb2R1bGU6Im5vTW9kdWxlIn0sbD1bIm9uTG9hZCIsIm9uUmVhZHkiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsImNoaWxkcmVuIiwib25FcnJvciIsInN0cmF0ZWd5Iiwic3R5bGVzaGVldHMiXTtmdW5jdGlvbiBhKGUpe3JldHVyblsiYXN5bmMiLCJkZWZlciIsIm5vTW9kdWxlIl0uaW5jbHVkZXMoZSl9ZnVuY3Rpb24gbyhlLHQpe2ZvcihsZXRbbixvXW9mIE9iamVjdC5lbnRyaWVzKHQpKXtpZighdC5oYXNPd25Qcm9wZXJ0eShuKXx8bC5pbmNsdWRlcyhuKXx8dm9pZCAwPT09byljb250aW51ZTtsZXQgaT1yW25dfHxuLnRvTG93ZXJDYXNlKCk7IlNDUklQVCI9PT1lLnRhZ05hbWUmJmEoaSk/ZVtpXT0hIW86ZS5zZXRBdHRyaWJ1dGUoaSxTdHJpbmcobykpLCghMT09PW98fCJTQ1JJUFQiPT09ZS50YWdOYW1lJiZhKGkpJiYoIW98fCJmYWxzZSI9PT1vKSkmJihlLnNldEF0dHJpYnV0ZShpLCIiKSxlLnJlbW92ZUF0dHJpYnV0ZShpKSl9fSgiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDQ4NzA2LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJhcHBCb290c3RyYXAiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCByPWUucig3ODc1KSxsPWUucigxNTUzNik7ZnVuY3Rpb24gYShlKXt2YXIgdCxuO2xldCBhPSgwLHIuZ2V0QXNzZXRQcmVmaXgpKCk7dD1zZWxmLl9fbmV4dF9zLG49KCk9PntlKGEpfSx0JiZ0Lmxlbmd0aD90LnJlZHVjZSgoZSxbdCxuXSk9PmUudGhlbigoKT0+bmV3IFByb21pc2UoKGUscik9PntsZXQgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtuJiYoMCxsLnNldEF0dHJpYnV0ZXNGcm9tUHJvcHMpKGEsbiksdD8oYS5zcmM9dCxhLm9ubG9hZD0oKT0+ZSgpLGEub25lcnJvcj1yKTpuJiYoYS5pbm5lckhUTUw9bi5jaGlsZHJlbixzZXRUaW1lb3V0KGUpKSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGEpfSkpLFByb21pc2UucmVzb2x2ZSgpKS5jYXRjaChlPT57Y29uc29sZS5lcnJvcihlKX0pLnRoZW4oKCk9PntuKCl9KTpuKCl9d2luZG93Lm5leHQ9e3ZlcnNpb246IjE2LjEuNiIsYXBwRGlyOiEwfSwoImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw4NTQ3OSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgcj17Z2V0T2JqZWN0Q2xhc3NMYWJlbDpmdW5jdGlvbigpe3JldHVybiBhfSxpc1BsYWluT2JqZWN0OmZ1bmN0aW9uKCl7cmV0dXJuIG99fTtmb3IodmFyIGwgaW4gcilPYmplY3QuZGVmaW5lUHJvcGVydHkobixsLHtlbnVtZXJhYmxlOiEwLGdldDpyW2xdfSk7ZnVuY3Rpb24gYShlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpfWZ1bmN0aW9uIG8oZSl7aWYoIltvYmplY3QgT2JqZWN0XSIhPT1hKGUpKXJldHVybiExO2xldCB0PU9iamVjdC5nZXRQcm90b3R5cGVPZihlKTtyZXR1cm4gbnVsbD09PXR8fHQuaGFzT3duUHJvcGVydHkoImlzUHJvdG90eXBlT2YiKX19LDgwOTQwLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByPXtkZWZhdWx0OmZ1bmN0aW9uKCl7cmV0dXJuIG99LGdldFByb3BlckVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGl9fTtmb3IodmFyIGwgaW4gcilPYmplY3QuZGVmaW5lUHJvcGVydHkobixsLHtlbnVtZXJhYmxlOiEwLGdldDpyW2xdfSk7bGV0IGE9ZS5yKDg1NDc5KTtmdW5jdGlvbiBvKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJiJuYW1lImluIGUmJiJtZXNzYWdlImluIGV9ZnVuY3Rpb24gaShlKXtsZXQgdDtyZXR1cm4gbyhlKT9lOk9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigoMCxhLmlzUGxhaW5PYmplY3QpKGUpPyh0PW5ldyBXZWFrU2V0LEpTT04uc3RyaW5naWZ5KGUsKGUsbik9PntpZigib2JqZWN0Ij09dHlwZW9mIG4mJm51bGwhPT1uKXtpZih0LmhhcyhuKSlyZXR1cm4iW0NpcmN1bGFyXSI7dC5hZGQobil9cmV0dXJuIG59KSk6ZSsiIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkUzOTQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9fSwxNzc0OCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwicmVwb3J0R2xvYmFsRXJyb3IiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiByfX0pO2xldCByPSJmdW5jdGlvbiI9PXR5cGVvZiByZXBvcnRFcnJvcj9yZXBvcnRFcnJvcjplPT57Z2xvYmFsVGhpcy5jb25zb2xlLmVycm9yKGUpfTsoImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwzMjc5MywoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgcj17aXNSZWNvdmVyYWJsZUVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGN9LG9uUmVjb3ZlcmFibGVFcnJvcjpmdW5jdGlvbigpe3JldHVybiBmfX07Zm9yKHZhciBsIGluIHIpT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sbCx7ZW51bWVyYWJsZTohMCxnZXQ6cltsXX0pO2xldCBhPWUucig4MTI1OCksbz1lLnIoODQwODIpLGk9YS5fKGUucig4MDk0MCkpLHU9ZS5yKDE3NzQ4KSxzPW5ldyBXZWFrU2V0O2Z1bmN0aW9uIGMoZSl7cmV0dXJuIHMuaGFzKGUpfWxldCBmPWU9PntsZXQgdD0oMCxpLmRlZmF1bHQpKGUpJiYiY2F1c2UiaW4gZT9lLmNhdXNlOmU7KDAsby5pc0JhaWxvdXRUb0NTUkVycm9yKSh0KXx8KDAsdS5yZXBvcnRHbG9iYWxFcnJvcikodCl9OygiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDkyMzg2LChlLHQsbik9PnsidXNlIHN0cmljdCI7dC5leHBvcnRzPXt9fSw2MDg3NywoZSx0LG4pPT57InRyaW1TdGFydCJpbiBTdHJpbmcucHJvdG90eXBlfHwoU3RyaW5nLnByb3RvdHlwZS50cmltU3RhcnQ9U3RyaW5nLnByb3RvdHlwZS50cmltTGVmdCksInRyaW1FbmQiaW4gU3RyaW5nLnByb3RvdHlwZXx8KFN0cmluZy5wcm90b3R5cGUudHJpbUVuZD1TdHJpbmcucHJvdG90eXBlLnRyaW1SaWdodCksImRlc2NyaXB0aW9uImluIFN5bWJvbC5wcm90b3R5cGV8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShTeW1ib2wucHJvdG90eXBlLCJkZXNjcmlwdGlvbiIse2NvbmZpZ3VyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXt2YXIgZT0vXCgoLiopXCkvLmV4ZWModGhpcy50b1N0cmluZygpKTtyZXR1cm4gZT9lWzFdOnZvaWQgMH19KSxBcnJheS5wcm90b3R5cGUuZmxhdHx8KEFycmF5LnByb3RvdHlwZS5mbGF0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ9dGhpcy5jb25jYXQuYXBwbHkoW10sdGhpcyksZT4xJiZ0LnNvbWUoQXJyYXkuaXNBcnJheSk/dC5mbGF0KGUtMSk6dH0sQXJyYXkucHJvdG90eXBlLmZsYXRNYXA9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5tYXAoZSx0KS5mbGF0KCl9KSxQcm9taXNlLnByb3RvdHlwZS5maW5hbGx5fHwoUHJvbWlzZS5wcm90b3R5cGUuZmluYWxseT1mdW5jdGlvbihlKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSlyZXR1cm4gdGhpcy50aGVuKGUsZSk7dmFyIHQ9dGhpcy5jb25zdHJ1Y3Rvcnx8UHJvbWlzZTtyZXR1cm4gdGhpcy50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiB0LnJlc29sdmUoZSgpKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIG59KX0sZnVuY3Rpb24obil7cmV0dXJuIHQucmVzb2x2ZShlKCkpLnRoZW4oZnVuY3Rpb24oKXt0aHJvdyBufSl9KX0pLE9iamVjdC5mcm9tRW50cmllc3x8KE9iamVjdC5mcm9tRW50cmllcz1mdW5jdGlvbihlKXtyZXR1cm4gQXJyYXkuZnJvbShlKS5yZWR1Y2UoZnVuY3Rpb24oZSx0KXtyZXR1cm4gZVt0WzBdXT10WzFdLGV9LHt9KX0pLEFycmF5LnByb3RvdHlwZS5hdHx8KEFycmF5LnByb3RvdHlwZS5hdD1mdW5jdGlvbihlKXt2YXIgdD1NYXRoLnRydW5jKGUpfHwwO2lmKHQ8MCYmKHQrPXRoaXMubGVuZ3RoKSwhKHQ8MHx8dD49dGhpcy5sZW5ndGgpKXJldHVybiB0aGlzW3RdfSksT2JqZWN0Lmhhc093bnx8KE9iamVjdC5oYXNPd249ZnVuY3Rpb24oZSx0KXtpZihudWxsPT1lKXRocm93IFR5cGVFcnJvcigiQ2Fubm90IGNvbnZlcnQgdW5kZWZpbmVkIG9yIG51bGwgdG8gb2JqZWN0Iik7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChPYmplY3QoZSksdCl9KSwiY2FuUGFyc2UiaW4gVVJMfHwoVVJMLmNhblBhcnNlPWZ1bmN0aW9uKGUsdCl7dHJ5e3JldHVybiBuZXcgVVJMKGUsdCksITB9Y2F0Y2goZSl7cmV0dXJuITF9fSl9LDc5MTIzLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLGUucig2MDg3NyksKCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX0sNDAxNDAsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUsdCl7dmFyIG49ZS5sZW5ndGg7Zm9yKGUucHVzaCh0KTswPG47KXt2YXIgcj1uLTE+Pj4xLGw9ZVtyXTtpZigwPG8obCx0KSllW3JdPXQsZVtuXT1sLG49cjtlbHNlIGJyZWFrfX1mdW5jdGlvbiBsKGUpe3JldHVybiAwPT09ZS5sZW5ndGg/bnVsbDplWzBdfWZ1bmN0aW9uIGEoZSl7aWYoMD09PWUubGVuZ3RoKXJldHVybiBudWxsO3ZhciB0PWVbMF0sbj1lLnBvcCgpO2lmKG4hPT10KXtlWzBdPW47Zm9yKHZhciByPTAsbD1lLmxlbmd0aCxhPWw+Pj4xO3I8YTspe3ZhciBpPTIqKHIrMSktMSx1PWVbaV0scz1pKzEsYz1lW3NdO2lmKDA+byh1LG4pKXM8bCYmMD5vKGMsdSk/KGVbcl09YyxlW3NdPW4scj1zKTooZVtyXT11LGVbaV09bixyPWkpO2Vsc2UgaWYoczxsJiYwPm8oYyxuKSllW3JdPWMsZVtzXT1uLHI9cztlbHNlIGJyZWFrfX1yZXR1cm4gdH1mdW5jdGlvbiBvKGUsdCl7dmFyIG49ZS5zb3J0SW5kZXgtdC5zb3J0SW5kZXg7cmV0dXJuIDAhPT1uP246ZS5pZC10LmlkfWlmKG4udW5zdGFibGVfbm93PXZvaWQgMCwib2JqZWN0Ij09dHlwZW9mIHBlcmZvcm1hbmNlJiYiZnVuY3Rpb24iPT10eXBlb2YgcGVyZm9ybWFuY2Uubm93KXt2YXIgaSx1PXBlcmZvcm1hbmNlO24udW5zdGFibGVfbm93PWZ1bmN0aW9uKCl7cmV0dXJuIHUubm93KCl9fWVsc2V7dmFyIHM9RGF0ZSxjPXMubm93KCk7bi51bnN0YWJsZV9ub3c9ZnVuY3Rpb24oKXtyZXR1cm4gcy5ub3coKS1jfX12YXIgZj1bXSxkPVtdLHA9MSxtPW51bGwsaD0zLGc9ITEsdj0hMSx5PSExLGI9ITEsdz0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0Om51bGwsaz0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDpudWxsLFM9InUiPnR5cGVvZiBzZXRJbW1lZGlhdGU/c2V0SW1tZWRpYXRlOm51bGw7ZnVuY3Rpb24gRShlKXtmb3IodmFyIHQ9bChkKTtudWxsIT09dDspe2lmKG51bGw9PT10LmNhbGxiYWNrKWEoZCk7ZWxzZSBpZih0LnN0YXJ0VGltZTw9ZSlhKGQpLHQuc29ydEluZGV4PXQuZXhwaXJhdGlvblRpbWUscihmLHQpO2Vsc2UgYnJlYWs7dD1sKGQpfX1mdW5jdGlvbiB4KGUpe2lmKHk9ITEsRShlKSwhdilpZihudWxsIT09bChmKSl2PSEwLF98fChfPSEwLGkoKSk7ZWxzZXt2YXIgdD1sKGQpO251bGwhPT10JiZSKHgsdC5zdGFydFRpbWUtZSl9fXZhciBfPSExLFA9LTEsTj01LEM9LTE7ZnVuY3Rpb24gVCgpe3JldHVybiEhYnx8IShuLnVuc3RhYmxlX25vdygpLUM8Til9ZnVuY3Rpb24gTygpe2lmKGI9ITEsXyl7dmFyIGU9bi51bnN0YWJsZV9ub3coKTtDPWU7dmFyIHQ9ITA7dHJ5e2U6e3Y9ITEseSYmKHk9ITEsayhQKSxQPS0xKSxnPSEwO3ZhciByPWg7dHJ5e3Q6e2ZvcihFKGUpLG09bChmKTtudWxsIT09bSYmIShtLmV4cGlyYXRpb25UaW1lPmUmJlQoKSk7KXt2YXIgbz1tLmNhbGxiYWNrO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBvKXttLmNhbGxiYWNrPW51bGwsaD1tLnByaW9yaXR5TGV2ZWw7dmFyIHU9byhtLmV4cGlyYXRpb25UaW1lPD1lKTtpZihlPW4udW5zdGFibGVfbm93KCksImZ1bmN0aW9uIj09dHlwZW9mIHUpe20uY2FsbGJhY2s9dSxFKGUpLHQ9ITA7YnJlYWsgdH1tPT09bChmKSYmYShmKSxFKGUpfWVsc2UgYShmKTttPWwoZil9aWYobnVsbCE9PW0pdD0hMDtlbHNle3ZhciBzPWwoZCk7bnVsbCE9PXMmJlIoeCxzLnN0YXJ0VGltZS1lKSx0PSExfX1icmVhayBlfWZpbmFsbHl7bT1udWxsLGg9cixnPSExfX19ZmluYWxseXt0P2koKTpfPSExfX19aWYoImZ1bmN0aW9uIj09dHlwZW9mIFMpaT1mdW5jdGlvbigpe1MoTyl9O2Vsc2UgaWYoInUiPnR5cGVvZiBNZXNzYWdlQ2hhbm5lbCl7dmFyIHo9bmV3IE1lc3NhZ2VDaGFubmVsLEw9ei5wb3J0Mjt6LnBvcnQxLm9ubWVzc2FnZT1PLGk9ZnVuY3Rpb24oKXtMLnBvc3RNZXNzYWdlKG51bGwpfX1lbHNlIGk9ZnVuY3Rpb24oKXt3KE8sMCl9O2Z1bmN0aW9uIFIoZSx0KXtQPXcoZnVuY3Rpb24oKXtlKG4udW5zdGFibGVfbm93KCkpfSx0KX1uLnVuc3RhYmxlX0lkbGVQcmlvcml0eT01LG4udW5zdGFibGVfSW1tZWRpYXRlUHJpb3JpdHk9MSxuLnVuc3RhYmxlX0xvd1ByaW9yaXR5PTQsbi51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eT0zLG4udW5zdGFibGVfUHJvZmlsaW5nPW51bGwsbi51bnN0YWJsZV9Vc2VyQmxvY2tpbmdQcmlvcml0eT0yLG4udW5zdGFibGVfY2FuY2VsQ2FsbGJhY2s9ZnVuY3Rpb24oZSl7ZS5jYWxsYmFjaz1udWxsfSxuLnVuc3RhYmxlX2ZvcmNlRnJhbWVSYXRlPWZ1bmN0aW9uKGUpezA+ZXx8MTI1PGU/Y29uc29sZS5lcnJvcigiZm9yY2VGcmFtZVJhdGUgdGFrZXMgYSBwb3NpdGl2ZSBpbnQgYmV0d2VlbiAwIGFuZCAxMjUsIGZvcmNpbmcgZnJhbWUgcmF0ZXMgaGlnaGVyIHRoYW4gMTI1IGZwcyBpcyBub3Qgc3VwcG9ydGVkIik6Tj0wPGU/TWF0aC5mbG9vcigxZTMvZSk6NX0sbi51bnN0YWJsZV9nZXRDdXJyZW50UHJpb3JpdHlMZXZlbD1mdW5jdGlvbigpe3JldHVybiBofSxuLnVuc3RhYmxlX25leHQ9ZnVuY3Rpb24oZSl7c3dpdGNoKGgpe2Nhc2UgMTpjYXNlIDI6Y2FzZSAzOnZhciB0PTM7YnJlYWs7ZGVmYXVsdDp0PWh9dmFyIG49aDtoPXQ7dHJ5e3JldHVybiBlKCl9ZmluYWxseXtoPW59fSxuLnVuc3RhYmxlX3JlcXVlc3RQYWludD1mdW5jdGlvbigpe2I9ITB9LG4udW5zdGFibGVfcnVuV2l0aFByaW9yaXR5PWZ1bmN0aW9uKGUsdCl7c3dpdGNoKGUpe2Nhc2UgMTpjYXNlIDI6Y2FzZSAzOmNhc2UgNDpjYXNlIDU6YnJlYWs7ZGVmYXVsdDplPTN9dmFyIG49aDtoPWU7dHJ5e3JldHVybiB0KCl9ZmluYWxseXtoPW59fSxuLnVuc3RhYmxlX3NjaGVkdWxlQ2FsbGJhY2s9ZnVuY3Rpb24oZSx0LGEpe3ZhciBvPW4udW5zdGFibGVfbm93KCk7c3dpdGNoKGE9Im9iamVjdCI9PXR5cGVvZiBhJiZudWxsIT09YSYmIm51bWJlciI9PXR5cGVvZihhPWEuZGVsYXkpJiYwPGE/bythOm8sZSl7Y2FzZSAxOnZhciB1PS0xO2JyZWFrO2Nhc2UgMjp1PTI1MDticmVhaztjYXNlIDU6dT0weDNmZmZmZmZmO2JyZWFrO2Nhc2UgNDp1PTFlNDticmVhaztkZWZhdWx0OnU9NWUzfXJldHVybiB1PWErdSxlPXtpZDpwKyssY2FsbGJhY2s6dCxwcmlvcml0eUxldmVsOmUsc3RhcnRUaW1lOmEsZXhwaXJhdGlvblRpbWU6dSxzb3J0SW5kZXg6LTF9LGE+bz8oZS5zb3J0SW5kZXg9YSxyKGQsZSksbnVsbD09PWwoZikmJmU9PT1sKGQpJiYoeT8oayhQKSxQPS0xKTp5PSEwLFIoeCxhLW8pKSk6KGUuc29ydEluZGV4PXUscihmLGUpLHZ8fGd8fCh2PSEwLF98fChfPSEwLGkoKSkpKSxlfSxuLnVuc3RhYmxlX3Nob3VsZFlpZWxkPVQsbi51bnN0YWJsZV93cmFwQ2FsbGJhY2s9ZnVuY3Rpb24oZSl7dmFyIHQ9aDtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgbj1oO2g9dDt0cnl7cmV0dXJuIGUuYXBwbHkodGhpcyxhcmd1bWVudHMpfWZpbmFsbHl7aD1ufX19fSwyNjQ0MywoZSx0LG4pPT57InVzZSBzdHJpY3QiO3QuZXhwb3J0cz1lLnIoNDAxNDApfSw4MjQyNCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO3ZhciByLGw9ZS5pKDgyNjM3KSxhPWUucigyNjQ0Myksbz1lLnIoNzUyMDEpLGk9ZS5yKDI5MDgwKTtmdW5jdGlvbiB1KGUpe3ZhciB0PSJodHRwczovL3JlYWN0LmRldi9lcnJvcnMvIitlO2lmKDE8YXJndW1lbnRzLmxlbmd0aCl7dCs9Ij9hcmdzW109IitlbmNvZGVVUklDb21wb25lbnQoYXJndW1lbnRzWzFdKTtmb3IodmFyIG49MjtuPGFyZ3VtZW50cy5sZW5ndGg7bisrKXQrPSImYXJnc1tdPSIrZW5jb2RlVVJJQ29tcG9uZW50KGFyZ3VtZW50c1tuXSl9cmV0dXJuIk1pbmlmaWVkIFJlYWN0IGVycm9yICMiK2UrIjsgdmlzaXQgIit0KyIgZm9yIHRoZSBmdWxsIG1lc3NhZ2Ugb3IgdXNlIHRoZSBub24tbWluaWZpZWQgZGV2IGVudmlyb25tZW50IGZvciBmdWxsIGVycm9ycyBhbmQgYWRkaXRpb25hbCBoZWxwZnVsIHdhcm5pbmdzLiJ9ZnVuY3Rpb24gcyhlKXtyZXR1cm4hKCFlfHwxIT09ZS5ub2RlVHlwZSYmOSE9PWUubm9kZVR5cGUmJjExIT09ZS5ub2RlVHlwZSl9ZnVuY3Rpb24gYyhlKXt2YXIgdD1lLG49ZTtpZihlLmFsdGVybmF0ZSlmb3IoO3QucmV0dXJuOyl0PXQucmV0dXJuO2Vsc2V7ZT10O2RvIDAhPSg0MDk4Jih0PWUpLmZsYWdzKSYmKG49dC5yZXR1cm4pLGU9dC5yZXR1cm47d2hpbGUoZSl9cmV0dXJuIDM9PT10LnRhZz9uOm51bGx9ZnVuY3Rpb24gZihlKXtpZigxMz09PWUudGFnKXt2YXIgdD1lLm1lbW9pemVkU3RhdGU7aWYobnVsbD09PXQmJm51bGwhPT0oZT1lLmFsdGVybmF0ZSkmJih0PWUubWVtb2l6ZWRTdGF0ZSksbnVsbCE9PXQpcmV0dXJuIHQuZGVoeWRyYXRlZH1yZXR1cm4gbnVsbH1mdW5jdGlvbiBkKGUpe2lmKDMxPT09ZS50YWcpe3ZhciB0PWUubWVtb2l6ZWRTdGF0ZTtpZihudWxsPT09dCYmbnVsbCE9PShlPWUuYWx0ZXJuYXRlKSYmKHQ9ZS5tZW1vaXplZFN0YXRlKSxudWxsIT09dClyZXR1cm4gdC5kZWh5ZHJhdGVkfXJldHVybiBudWxsfWZ1bmN0aW9uIHAoZSl7aWYoYyhlKSE9PWUpdGhyb3cgRXJyb3IodSgxODgpKX1mdW5jdGlvbiBtKGUsdCxuLHIsbCxhKXtmb3IoO251bGwhPT1lOyl7aWYoNT09PWUudGFnJiZuKGUscixsLGEpfHwoMjIhPT1lLnRhZ3x8bnVsbD09PWUubWVtb2l6ZWRTdGF0ZSkmJih0fHw1IT09ZS50YWcpJiZtKGUuY2hpbGQsdCxuLHIsbCxhKSlyZXR1cm4hMDtlPWUuc2libGluZ31yZXR1cm4hMX1mdW5jdGlvbiBoKGUpe2ZvcihlPWUucmV0dXJuO251bGwhPT1lOyl7aWYoMz09PWUudGFnfHw1PT09ZS50YWcpcmV0dXJuIGU7ZT1lLnJldHVybn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBnKGUpe3N3aXRjaChlLnRhZyl7Y2FzZSA1OnJldHVybiBlLnN0YXRlTm9kZTtjYXNlIDM6cmV0dXJuIGUuc3RhdGVOb2RlLmNvbnRhaW5lckluZm87ZGVmYXVsdDp0aHJvdyBFcnJvcih1KDU1OSkpfX12YXIgdj1udWxsLHk9bnVsbDtmdW5jdGlvbiBiKGUpe3JldHVybiB2PWUsITB9ZnVuY3Rpb24gdyhlLHQsbil7cmV0dXJuIGU9PT1ufHxlPT09dCYmKHY9ZSwhMCl9ZnVuY3Rpb24gayhlLHQsbil7cmV0dXJuIGU9PT1uPyh5PWUsITEpOmU9PT10JiYobnVsbCE9PXkmJih2PWUpLCEwKX1mdW5jdGlvbiBTKGUpe2lmKG51bGw9PT1lKXJldHVybiBudWxsO2RvIGU9bnVsbD09PWU/bnVsbDplLnJldHVybjt3aGlsZShlJiY1IT09ZS50YWcmJjI3IT09ZS50YWcmJjMhPT1lLnRhZylyZXR1cm4gZXx8bnVsbH1mdW5jdGlvbiBFKGUsdCxuKXtmb3IodmFyIHI9MCxsPWU7bDtsPW4obCkpcisrO2w9MDtmb3IodmFyIGE9dDthO2E9bihhKSlsKys7Zm9yKDswPHItbDspZT1uKGUpLHItLTtmb3IoOzA8bC1yOyl0PW4odCksbC0tO2Zvcig7ci0tOyl7aWYoZT09PXR8fG51bGwhPT10JiZlPT09dC5hbHRlcm5hdGUpcmV0dXJuIGU7ZT1uKGUpLHQ9bih0KX1yZXR1cm4gbnVsbH12YXIgeD1PYmplY3QuYXNzaWduLF89U3ltYm9sLmZvcigicmVhY3QuZWxlbWVudCIpLFA9U3ltYm9sLmZvcigicmVhY3QudHJhbnNpdGlvbmFsLmVsZW1lbnQiKSxOPVN5bWJvbC5mb3IoInJlYWN0LnBvcnRhbCIpLEM9U3ltYm9sLmZvcigicmVhY3QuZnJhZ21lbnQiKSxUPVN5bWJvbC5mb3IoInJlYWN0LnN0cmljdF9tb2RlIiksTz1TeW1ib2wuZm9yKCJyZWFjdC5wcm9maWxlciIpLHo9U3ltYm9sLmZvcigicmVhY3QuY29uc3VtZXIiKSxMPVN5bWJvbC5mb3IoInJlYWN0LmNvbnRleHQiKSxSPVN5bWJvbC5mb3IoInJlYWN0LmZvcndhcmRfcmVmIiksTT1TeW1ib2wuZm9yKCJyZWFjdC5zdXNwZW5zZSIpLEk9U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2VfbGlzdCIpLEQ9U3ltYm9sLmZvcigicmVhY3QubWVtbyIpLEY9U3ltYm9sLmZvcigicmVhY3QubGF6eSIpO1N5bWJvbC5mb3IoInJlYWN0LnNjb3BlIik7dmFyIEE9U3ltYm9sLmZvcigicmVhY3QuYWN0aXZpdHkiKSxqPVN5bWJvbC5mb3IoInJlYWN0LmxlZ2FjeV9oaWRkZW4iKTtTeW1ib2wuZm9yKCJyZWFjdC50cmFjaW5nX21hcmtlciIpO3ZhciBVPVN5bWJvbC5mb3IoInJlYWN0Lm1lbW9fY2FjaGVfc2VudGluZWwiKSxCPVN5bWJvbC5mb3IoInJlYWN0LnZpZXdfdHJhbnNpdGlvbiIpLFY9U3ltYm9sLml0ZXJhdG9yO2Z1bmN0aW9uIEgoZSl7cmV0dXJuIG51bGw9PT1lfHwib2JqZWN0IiE9dHlwZW9mIGU/bnVsbDoiZnVuY3Rpb24iPT10eXBlb2YoZT1WJiZlW1ZdfHxlWyJAQGl0ZXJhdG9yIl0pP2U6bnVsbH12YXIgJD1TeW1ib2wuZm9yKCJyZWFjdC5jbGllbnQucmVmZXJlbmNlIiksUT1BcnJheS5pc0FycmF5LFc9by5fX0NMSUVOVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9XQVJOX1VTRVJTX1RIRVlfQ0FOTk9UX1VQR1JBREUscT1pLl9fRE9NX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1dBUk5fVVNFUlNfVEhFWV9DQU5OT1RfVVBHUkFERSxLPXtwZW5kaW5nOiExLGRhdGE6bnVsbCxtZXRob2Q6bnVsbCxhY3Rpb246bnVsbH0sWD1bXSxHPS0xO2Z1bmN0aW9uIFkoZSl7cmV0dXJue2N1cnJlbnQ6ZX19ZnVuY3Rpb24gSihlKXswPkd8fChlLmN1cnJlbnQ9WFtHXSxYW0ddPW51bGwsRy0tKX1mdW5jdGlvbiBaKGUsdCl7WFsrK0ddPWUuY3VycmVudCxlLmN1cnJlbnQ9dH12YXIgZWU9WShudWxsKSxldD1ZKG51bGwpLGVuPVkobnVsbCksZXI9WShudWxsKTtmdW5jdGlvbiBlbChlLHQpe3N3aXRjaChaKGVuLHQpLFooZXQsZSksWihlZSxudWxsKSx0Lm5vZGVUeXBlKXtjYXNlIDk6Y2FzZSAxMTplPShlPXQuZG9jdW1lbnRFbGVtZW50KSYmKGU9ZS5uYW1lc3BhY2VVUkkpP2NzKGUpOjA7YnJlYWs7ZGVmYXVsdDppZihlPXQudGFnTmFtZSx0PXQubmFtZXNwYWNlVVJJKWU9Y2ModD1jcyh0KSxlKTtlbHNlIHN3aXRjaChlKXtjYXNlInN2ZyI6ZT0xO2JyZWFrO2Nhc2UibWF0aCI6ZT0yO2JyZWFrO2RlZmF1bHQ6ZT0wfX1KKGVlKSxaKGVlLGUpfWZ1bmN0aW9uIGVhKCl7SihlZSksSihldCksSihlbil9ZnVuY3Rpb24gZW8oZSl7dmFyIHQ9ZS5tZW1vaXplZFN0YXRlO251bGwhPT10JiYoZnYuX2N1cnJlbnRWYWx1ZT10Lm1lbW9pemVkU3RhdGUsWihlcixlKSk7dmFyIG49Y2ModD1lZS5jdXJyZW50LGUudHlwZSk7dCE9PW4mJihaKGV0LGUpLFooZWUsbikpfWZ1bmN0aW9uIGVpKGUpe2V0LmN1cnJlbnQ9PT1lJiYoSihlZSksSihldCkpLGVyLmN1cnJlbnQ9PT1lJiYoSihlciksZnYuX2N1cnJlbnRWYWx1ZT1LKX1mdW5jdGlvbiBldShlKXtpZih2b2lkIDA9PT10WCl0cnl7dGhyb3cgRXJyb3IoKX1jYXRjaChlKXt2YXIgdD1lLnN0YWNrLnRyaW0oKS5tYXRjaCgvXG4oICooYXQgKT8pLyk7dFg9dCYmdFsxXXx8IiIsdEc9LTE8ZS5zdGFjay5pbmRleE9mKCJcbiAgICBhdCIpPyIgKDxhbm9ueW1vdXM+KSI6LTE8ZS5zdGFjay5pbmRleE9mKCJAIik/IkB1bmtub3duOjA6MCI6IiJ9cmV0dXJuIlxuIit0WCtlK3RHfXZhciBlcz0hMTtmdW5jdGlvbiBlYyhlLHQpe2lmKCFlfHxlcylyZXR1cm4iIjtlcz0hMDt2YXIgbj1FcnJvci5wcmVwYXJlU3RhY2tUcmFjZTtFcnJvci5wcmVwYXJlU3RhY2tUcmFjZT12b2lkIDA7dHJ5e3ZhciByPXtEZXRlcm1pbmVDb21wb25lbnRGcmFtZVJvb3Q6ZnVuY3Rpb24oKXt0cnl7aWYodCl7dmFyIG49ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigpfTtpZihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5wcm90b3R5cGUsInByb3BzIix7c2V0OmZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoKX19KSwib2JqZWN0Ij09dHlwZW9mIFJlZmxlY3QmJlJlZmxlY3QuY29uc3RydWN0KXt0cnl7UmVmbGVjdC5jb25zdHJ1Y3QobixbXSl9Y2F0Y2goZSl7dmFyIHI9ZX1SZWZsZWN0LmNvbnN0cnVjdChlLFtdLG4pfWVsc2V7dHJ5e24uY2FsbCgpfWNhdGNoKGUpe3I9ZX1lLmNhbGwobi5wcm90b3R5cGUpfX1lbHNle3RyeXt0aHJvdyBFcnJvcigpfWNhdGNoKGUpe3I9ZX0obj1lKCkpJiYiZnVuY3Rpb24iPT10eXBlb2Ygbi5jYXRjaCYmbi5jYXRjaChmdW5jdGlvbigpe30pfX1jYXRjaChlKXtpZihlJiZyJiYic3RyaW5nIj09dHlwZW9mIGUuc3RhY2spcmV0dXJuW2Uuc3RhY2ssci5zdGFja119cmV0dXJuW251bGwsbnVsbF19fTtyLkRldGVybWluZUNvbXBvbmVudEZyYW1lUm9vdC5kaXNwbGF5TmFtZT0iRGV0ZXJtaW5lQ29tcG9uZW50RnJhbWVSb290Ijt2YXIgbD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHIuRGV0ZXJtaW5lQ29tcG9uZW50RnJhbWVSb290LCJuYW1lIik7bCYmbC5jb25maWd1cmFibGUmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLkRldGVybWluZUNvbXBvbmVudEZyYW1lUm9vdCwibmFtZSIse3ZhbHVlOiJEZXRlcm1pbmVDb21wb25lbnRGcmFtZVJvb3QifSk7dmFyIGE9ci5EZXRlcm1pbmVDb21wb25lbnRGcmFtZVJvb3QoKSxvPWFbMF0saT1hWzFdO2lmKG8mJmkpe3ZhciB1PW8uc3BsaXQoIlxuIikscz1pLnNwbGl0KCJcbiIpO2ZvcihsPXI9MDtyPHUubGVuZ3RoJiYhdVtyXS5pbmNsdWRlcygiRGV0ZXJtaW5lQ29tcG9uZW50RnJhbWVSb290Iik7KXIrKztmb3IoO2w8cy5sZW5ndGgmJiFzW2xdLmluY2x1ZGVzKCJEZXRlcm1pbmVDb21wb25lbnRGcmFtZVJvb3QiKTspbCsrO2lmKHI9PT11Lmxlbmd0aHx8bD09PXMubGVuZ3RoKWZvcihyPXUubGVuZ3RoLTEsbD1zLmxlbmd0aC0xOzE8PXImJjA8PWwmJnVbcl0hPT1zW2xdOylsLS07Zm9yKDsxPD1yJiYwPD1sO3ItLSxsLS0paWYodVtyXSE9PXNbbF0pe2lmKDEhPT1yfHwxIT09bClkbyBpZihyLS0sbC0tLDA+bHx8dVtyXSE9PXNbbF0pe3ZhciBjPSJcbiIrdVtyXS5yZXBsYWNlKCIgYXQgbmV3ICIsIiBhdCAiKTtyZXR1cm4gZS5kaXNwbGF5TmFtZSYmYy5pbmNsdWRlcygiPGFub255bW91cz4iKSYmKGM9Yy5yZXBsYWNlKCI8YW5vbnltb3VzPiIsZS5kaXNwbGF5TmFtZSkpLGN9d2hpbGUoMTw9ciYmMDw9bClicmVha319fWZpbmFsbHl7ZXM9ITEsRXJyb3IucHJlcGFyZVN0YWNrVHJhY2U9bn1yZXR1cm4obj1lP2UuZGlzcGxheU5hbWV8fGUubmFtZToiIik/ZXUobik6IiJ9ZnVuY3Rpb24gZWYoZSl7dHJ5e3ZhciB0PSIiLG49bnVsbDtkbyB0Kz1mdW5jdGlvbihlLHQpe3N3aXRjaChlLnRhZyl7Y2FzZSAyNjpjYXNlIDI3OmNhc2UgNTpyZXR1cm4gZXUoZS50eXBlKTtjYXNlIDE2OnJldHVybiBldSgiTGF6eSIpO2Nhc2UgMTM6cmV0dXJuIGUuY2hpbGQhPT10JiZudWxsIT09dD9ldSgiU3VzcGVuc2UgRmFsbGJhY2siKTpldSgiU3VzcGVuc2UiKTtjYXNlIDE5OnJldHVybiBldSgiU3VzcGVuc2VMaXN0Iik7Y2FzZSAwOmNhc2UgMTU6cmV0dXJuIGVjKGUudHlwZSwhMSk7Y2FzZSAxMTpyZXR1cm4gZWMoZS50eXBlLnJlbmRlciwhMSk7Y2FzZSAxOnJldHVybiBlYyhlLnR5cGUsITApO2Nhc2UgMzE6cmV0dXJuIGV1KCJBY3Rpdml0eSIpO2Nhc2UgMzA6cmV0dXJuIGV1KCJWaWV3VHJhbnNpdGlvbiIpO2RlZmF1bHQ6cmV0dXJuIiJ9fShlLG4pLG49ZSxlPWUucmV0dXJuO3doaWxlKGUpcmV0dXJuIHR9Y2F0Y2goZSl7cmV0dXJuIlxuRXJyb3IgZ2VuZXJhdGluZyBzdGFjazogIitlLm1lc3NhZ2UrIlxuIitlLnN0YWNrfX12YXIgZWQ9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxlcD1hLnVuc3RhYmxlX3NjaGVkdWxlQ2FsbGJhY2ssZW09YS51bnN0YWJsZV9jYW5jZWxDYWxsYmFjayxlaD1hLnVuc3RhYmxlX3Nob3VsZFlpZWxkLGVnPWEudW5zdGFibGVfcmVxdWVzdFBhaW50LGV2PWEudW5zdGFibGVfbm93LGV5PWEudW5zdGFibGVfZ2V0Q3VycmVudFByaW9yaXR5TGV2ZWwsZWI9YS51bnN0YWJsZV9JbW1lZGlhdGVQcmlvcml0eSxldz1hLnVuc3RhYmxlX1VzZXJCbG9ja2luZ1ByaW9yaXR5LGVrPWEudW5zdGFibGVfTm9ybWFsUHJpb3JpdHksZVM9YS51bnN0YWJsZV9Mb3dQcmlvcml0eSxlRT1hLnVuc3RhYmxlX0lkbGVQcmlvcml0eSxleD0oYS5sb2csYS51bnN0YWJsZV9zZXREaXNhYmxlWWllbGRWYWx1ZSxudWxsKSxlXz1udWxsLGVQPU1hdGguY2x6MzI/TWF0aC5jbHozMjpmdW5jdGlvbihlKXtyZXR1cm4gMD09KGU+Pj49MCk/MzI6MzEtKGVOKGUpL2VDfDApfDB9LGVOPU1hdGgubG9nLGVDPU1hdGguTE4yLGVUPTI1NixlTz0yNjIxNDQsZXo9NDE5NDMwNDtmdW5jdGlvbiBlTChlKXt2YXIgdD00MiZlO2lmKDAhPT10KXJldHVybiB0O3N3aXRjaChlJi1lKXtjYXNlIDE6cmV0dXJuIDE7Y2FzZSAyOnJldHVybiAyO2Nhc2UgNDpyZXR1cm4gNDtjYXNlIDg6cmV0dXJuIDg7Y2FzZSAxNjpyZXR1cm4gMTY7Y2FzZSAzMjpyZXR1cm4gMzI7Y2FzZSA2NDpyZXR1cm4gNjQ7Y2FzZSAxMjg6cmV0dXJuIDEyODtjYXNlIDI1NjpjYXNlIDUxMjpjYXNlIDEwMjQ6Y2FzZSAyMDQ4OmNhc2UgNDA5NjpjYXNlIDgxOTI6Y2FzZSAxNjM4NDpjYXNlIDMyNzY4OmNhc2UgNjU1MzY6Y2FzZSAxMzEwNzI6cmV0dXJuIDI2MTg4OCZlO2Nhc2UgMjYyMTQ0OmNhc2UgNTI0Mjg4OmNhc2UgMTA0ODU3NjpjYXNlIDIwOTcxNTI6cmV0dXJuIDM5MzIxNjAmZTtjYXNlIDQxOTQzMDQ6Y2FzZSA4Mzg4NjA4OmNhc2UgMHgxMDAwMDAwOmNhc2UgMHgyMDAwMDAwOnJldHVybiAweDNjMDAwMDAmZTtjYXNlIDB4NDAwMDAwMDpyZXR1cm4gMHg0MDAwMDAwO2Nhc2UgMHg4MDAwMDAwOnJldHVybiAweDgwMDAwMDA7Y2FzZSAweDEwMDAwMDAwOnJldHVybiAweDEwMDAwMDAwO2Nhc2UgMHgyMDAwMDAwMDpyZXR1cm4gMHgyMDAwMDAwMDtjYXNlIDB4NDAwMDAwMDA6cmV0dXJuIDA7ZGVmYXVsdDpyZXR1cm4gZX19ZnVuY3Rpb24gZVIoZSx0LG4pe3ZhciByPWUucGVuZGluZ0xhbmVzO2lmKDA9PT1yKXJldHVybiAwO3ZhciBsPTAsYT1lLnN1c3BlbmRlZExhbmVzLG89ZS5waW5nZWRMYW5lcztlPWUud2FybUxhbmVzO3ZhciBpPTB4N2ZmZmZmZiZyO3JldHVybiAwIT09aT8wIT0ocj1pJn5hKT9sPWVMKHIpOjAhPShvJj1pKT9sPWVMKG8pOm58fDAhPShuPWkmfmUpJiYobD1lTChuKSk6MCE9KGk9ciZ+YSk/bD1lTChpKTowIT09bz9sPWVMKG8pOm58fDAhPShuPXImfmUpJiYobD1lTChuKSksMD09PWw/MDowIT09dCYmdCE9PWwmJjA9PSh0JmEpJiYoKGE9bCYtbCk+PShuPXQmLXQpfHwzMj09PWEmJjAhPSg0MTk0MDQ4Jm4pKT90Omx9ZnVuY3Rpb24gZU0oZSx0KXtyZXR1cm4gMD09KGUucGVuZGluZ0xhbmVzJn4oZS5zdXNwZW5kZWRMYW5lcyZ+ZS5waW5nZWRMYW5lcykmdCl9ZnVuY3Rpb24gZUkoKXt2YXIgZT1lejtyZXR1cm4gMD09KDB4M2MwMDAwMCYoZXo8PD0xKSkmJihlej00MTk0MzA0KSxlfWZ1bmN0aW9uIGVEKGUpe2Zvcih2YXIgdD1bXSxuPTA7MzE+bjtuKyspdC5wdXNoKGUpO3JldHVybiB0fWZ1bmN0aW9uIGVGKGUsdCl7ZS5wZW5kaW5nTGFuZXN8PXQsMHgxMDAwMDAwMCE9PXQmJihlLnN1c3BlbmRlZExhbmVzPTAsZS5waW5nZWRMYW5lcz0wLGUud2FybUxhbmVzPTApfWZ1bmN0aW9uIGVBKGUsdCxuKXtlLnBlbmRpbmdMYW5lc3w9dCxlLnN1c3BlbmRlZExhbmVzJj1+dDt2YXIgcj0zMS1lUCh0KTtlLmVudGFuZ2xlZExhbmVzfD10LGUuZW50YW5nbGVtZW50c1tyXT0weDQwMDAwMDAwfGUuZW50YW5nbGVtZW50c1tyXXwyNjE5MzAmbn1mdW5jdGlvbiBlaihlLHQpe3ZhciBuPWUuZW50YW5nbGVkTGFuZXN8PXQ7Zm9yKGU9ZS5lbnRhbmdsZW1lbnRzO247KXt2YXIgcj0zMS1lUChuKSxsPTE8PHI7bCZ0fGVbcl0mdCYmKGVbcl18PXQpLG4mPX5sfX1mdW5jdGlvbiBlVShlLHQpe3ZhciBuPXQmLXQ7cmV0dXJuIDAhPSgobj0wIT0oNDImbik/MTplQihuKSkmKGUuc3VzcGVuZGVkTGFuZXN8dCkpPzA6bn1mdW5jdGlvbiBlQihlKXtzd2l0Y2goZSl7Y2FzZSAyOmU9MTticmVhaztjYXNlIDg6ZT00O2JyZWFrO2Nhc2UgMzI6ZT0xNjticmVhaztjYXNlIDI1NjpjYXNlIDUxMjpjYXNlIDEwMjQ6Y2FzZSAyMDQ4OmNhc2UgNDA5NjpjYXNlIDgxOTI6Y2FzZSAxNjM4NDpjYXNlIDMyNzY4OmNhc2UgNjU1MzY6Y2FzZSAxMzEwNzI6Y2FzZSAyNjIxNDQ6Y2FzZSA1MjQyODg6Y2FzZSAxMDQ4NTc2OmNhc2UgMjA5NzE1MjpjYXNlIDQxOTQzMDQ6Y2FzZSA4Mzg4NjA4OmNhc2UgMHgxMDAwMDAwOmNhc2UgMHgyMDAwMDAwOmU9MTI4O2JyZWFrO2Nhc2UgMHgxMDAwMDAwMDplPTB4ODAwMDAwMDticmVhaztkZWZhdWx0OmU9MH1yZXR1cm4gZX1mdW5jdGlvbiBlVihlKXtyZXR1cm4gMjwoZSY9LWUpPzg8ZT8wIT0oMHg3ZmZmZmZmJmUpPzMyOjB4MTAwMDAwMDA6ODoyfWZ1bmN0aW9uIGVIKCl7dmFyIGU9cS5wO3JldHVybiAwIT09ZT9lOnZvaWQgMD09PShlPXdpbmRvdy5ldmVudCk/MzI6ZkwoZS50eXBlKX1mdW5jdGlvbiBlJChlLHQpe3ZhciBuPXEucDt0cnl7cmV0dXJuIHEucD1lLHQoKX1maW5hbGx5e3EucD1ufX12YXIgZVE9TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc2xpY2UoMiksZVc9Il9fcmVhY3RGaWJlciQiK2VRLGVxPSJfX3JlYWN0UHJvcHMkIitlUSxlSz0iX19yZWFjdENvbnRhaW5lciQiK2VRLGVYPSJfX3JlYWN0RXZlbnRzJCIrZVEsZUc9Il9fcmVhY3RMaXN0ZW5lcnMkIitlUSxlWT0iX19yZWFjdEhhbmRsZXMkIitlUSxlSj0iX19yZWFjdFJlc291cmNlcyQiK2VRLGVaPSJfX3JlYWN0TWFya2VyJCIrZVE7ZnVuY3Rpb24gZTAoZSl7ZGVsZXRlIGVbZVddLGRlbGV0ZSBlW2VxXSxkZWxldGUgZVtlWF0sZGVsZXRlIGVbZUddLGRlbGV0ZSBlW2VZXX1mdW5jdGlvbiBlMShlKXt2YXIgdDtpZih0PWVbZVddKXJldHVybiB0O2Zvcih2YXIgbj1lLnBhcmVudE5vZGU7bjspe2lmKHQ9bltlS118fG5bZVddKXtpZihuPXQuYWx0ZXJuYXRlLG51bGwhPT10LmNoaWxkfHxudWxsIT09biYmbnVsbCE9PW4uY2hpbGQpZm9yKGU9Y0soZSk7bnVsbCE9PWU7KXtpZihuPWVbZVddKXJldHVybiBuO2U9Y0soZSl9cmV0dXJuIHR9bj0oZT1uKS5wYXJlbnROb2RlfXJldHVybiBudWxsfWZ1bmN0aW9uIGUyKGUpe2lmKGU9ZVtlV118fGVbZUtdKXt2YXIgdD1lLnRhZztpZig1PT09dHx8Nj09PXR8fDEzPT09dHx8MzE9PT10fHwyNj09PXR8fDI3PT09dHx8Mz09PXQpcmV0dXJuIGV9cmV0dXJuIG51bGx9ZnVuY3Rpb24gZTMoZSl7dmFyIHQ9ZS50YWc7aWYoNT09PXR8fDI2PT09dHx8Mjc9PT10fHw2PT09dClyZXR1cm4gZS5zdGF0ZU5vZGU7dGhyb3cgRXJyb3IodSgzMykpfWZ1bmN0aW9uIGU0KGUpe3ZhciB0PWVbZUpdO3JldHVybiB0fHwodD1lW2VKXT17aG9pc3RhYmxlU3R5bGVzOm5ldyBNYXAsaG9pc3RhYmxlU2NyaXB0czpuZXcgTWFwfSksdH1mdW5jdGlvbiBlOChlKXtlW2VaXT0hMH12YXIgZTU9bmV3IFNldCxlNj17fTtmdW5jdGlvbiBlOShlLHQpe2U3KGUsdCksZTcoZSsiQ2FwdHVyZSIsdCl9ZnVuY3Rpb24gZTcoZSx0KXtmb3IoZTZbZV09dCxlPTA7ZTx0Lmxlbmd0aDtlKyspZTUuYWRkKHRbZV0pfXZhciB0ZT1SZWdFeHAoIl5bOkEtWl9hLXpcXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAyRkZcXHUwMzcwLVxcdTAzN0RcXHUwMzdGLVxcdTFGRkZcXHUyMDBDLVxcdTIwMERcXHUyMDcwLVxcdTIxOEZcXHUyQzAwLVxcdTJGRUZcXHUzMDAxLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRkRdWzpBLVpfYS16XFx1MDBDMC1cXHUwMEQ2XFx1MDBEOC1cXHUwMEY2XFx1MDBGOC1cXHUwMkZGXFx1MDM3MC1cXHUwMzdEXFx1MDM3Ri1cXHUxRkZGXFx1MjAwQy1cXHUyMDBEXFx1MjA3MC1cXHUyMThGXFx1MkMwMC1cXHUyRkVGXFx1MzAwMS1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkZEXFwtLjAtOVxcdTAwQjdcXHUwMzAwLVxcdTAzNkZcXHUyMDNGLVxcdTIwNDBdKiQiKSx0dD17fSx0bj17fSx0cj0hMTtmdW5jdGlvbiB0bCgpe3ZhciBlPXRyO3JldHVybiB0cj0hMSxlfWZ1bmN0aW9uIHRhKGUsdCxuKXtpZihlZC5jYWxsKHRuLHQpfHwhZWQuY2FsbCh0dCx0KSYmKHRlLnRlc3QodCk/dG5bdF09ITA6KHR0W3RdPSEwLCExKSkpaWYobnVsbD09PW4pZS5yZW1vdmVBdHRyaWJ1dGUodCk7ZWxzZXtzd2l0Y2godHlwZW9mIG4pe2Nhc2UidW5kZWZpbmVkIjpjYXNlImZ1bmN0aW9uIjpjYXNlInN5bWJvbCI6ZS5yZW1vdmVBdHRyaWJ1dGUodCk7cmV0dXJuO2Nhc2UiYm9vbGVhbiI6dmFyIHI9dC50b0xvd2VyQ2FzZSgpLnNsaWNlKDAsNSk7aWYoImRhdGEtIiE9PXImJiJhcmlhLSIhPT1yKXJldHVybiB2b2lkIGUucmVtb3ZlQXR0cmlidXRlKHQpfWUuc2V0QXR0cmlidXRlKHQsIiIrbil9fWZ1bmN0aW9uIHRvKGUsdCxuKXtpZihudWxsPT09billLnJlbW92ZUF0dHJpYnV0ZSh0KTtlbHNle3N3aXRjaCh0eXBlb2Ygbil7Y2FzZSJ1bmRlZmluZWQiOmNhc2UiZnVuY3Rpb24iOmNhc2Uic3ltYm9sIjpjYXNlImJvb2xlYW4iOmUucmVtb3ZlQXR0cmlidXRlKHQpO3JldHVybn1lLnNldEF0dHJpYnV0ZSh0LCIiK24pfX1mdW5jdGlvbiB0aShlLHQsbixyKXtpZihudWxsPT09cillLnJlbW92ZUF0dHJpYnV0ZShuKTtlbHNle3N3aXRjaCh0eXBlb2Ygcil7Y2FzZSJ1bmRlZmluZWQiOmNhc2UiZnVuY3Rpb24iOmNhc2Uic3ltYm9sIjpjYXNlImJvb2xlYW4iOmUucmVtb3ZlQXR0cmlidXRlKG4pO3JldHVybn1lLnNldEF0dHJpYnV0ZU5TKHQsbiwiIityKX19ZnVuY3Rpb24gdHUoZSl7c3dpdGNoKHR5cGVvZiBlKXtjYXNlImJpZ2ludCI6Y2FzZSJib29sZWFuIjpjYXNlIm51bWJlciI6Y2FzZSJzdHJpbmciOmNhc2UidW5kZWZpbmVkIjpjYXNlIm9iamVjdCI6cmV0dXJuIGU7ZGVmYXVsdDpyZXR1cm4iIn19ZnVuY3Rpb24gdHMoZSl7dmFyIHQ9ZS50eXBlO3JldHVybihlPWUubm9kZU5hbWUpJiYiaW5wdXQiPT09ZS50b0xvd2VyQ2FzZSgpJiYoImNoZWNrYm94Ij09PXR8fCJyYWRpbyI9PT10KX1mdW5jdGlvbiB0YyhlKXtpZighZS5fdmFsdWVUcmFja2VyKXt2YXIgdD10cyhlKT8iY2hlY2tlZCI6InZhbHVlIjtlLl92YWx1ZVRyYWNrZXI9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUsdCk7aWYoIWUuaGFzT3duUHJvcGVydHkodCkmJnZvaWQgMCE9PXImJiJmdW5jdGlvbiI9PXR5cGVvZiByLmdldCYmImZ1bmN0aW9uIj09dHlwZW9mIHIuc2V0KXt2YXIgbD1yLmdldCxhPXIuc2V0O3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGwuY2FsbCh0aGlzKX0sc2V0OmZ1bmN0aW9uKGUpe249IiIrZSxhLmNhbGwodGhpcyxlKX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtlbnVtZXJhYmxlOnIuZW51bWVyYWJsZX0pLHtnZXRWYWx1ZTpmdW5jdGlvbigpe3JldHVybiBufSxzZXRWYWx1ZTpmdW5jdGlvbihlKXtuPSIiK2V9LHN0b3BUcmFja2luZzpmdW5jdGlvbigpe2UuX3ZhbHVlVHJhY2tlcj1udWxsLGRlbGV0ZSBlW3RdfX19fShlLHQsIiIrZVt0XSl9fWZ1bmN0aW9uIHRmKGUpe2lmKCFlKXJldHVybiExO3ZhciB0PWUuX3ZhbHVlVHJhY2tlcjtpZighdClyZXR1cm4hMDt2YXIgbj10LmdldFZhbHVlKCkscj0iIjtyZXR1cm4gZSYmKHI9dHMoZSk/ZS5jaGVja2VkPyJ0cnVlIjoiZmFsc2UiOmUudmFsdWUpLChlPXIpIT09biYmKHQuc2V0VmFsdWUoZSksITApfWZ1bmN0aW9uIHRkKGUpe2lmKHZvaWQgMD09PShlPWV8fCgidSI+dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50OnZvaWQgMCkpKXJldHVybiBudWxsO3RyeXtyZXR1cm4gZS5hY3RpdmVFbGVtZW50fHxlLmJvZHl9Y2F0Y2godCl7cmV0dXJuIGUuYm9keX19dmFyIHRwPS9bXG4iXFxdL2c7ZnVuY3Rpb24gdG0oZSl7cmV0dXJuIGUucmVwbGFjZSh0cCxmdW5jdGlvbihlKXtyZXR1cm4iXFwiK2UuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNikrIiAifSl9ZnVuY3Rpb24gdGgoZSx0LG4scixsLGEsbyxpKXtlLm5hbWU9IiIsbnVsbCE9byYmImZ1bmN0aW9uIiE9dHlwZW9mIG8mJiJzeW1ib2wiIT10eXBlb2YgbyYmImJvb2xlYW4iIT10eXBlb2Ygbz9lLnR5cGU9bzplLnJlbW92ZUF0dHJpYnV0ZSgidHlwZSIpLG51bGwhPXQ/Im51bWJlciI9PT1vPygwPT09dCYmIiI9PT1lLnZhbHVlfHxlLnZhbHVlIT10KSYmKGUudmFsdWU9IiIrdHUodCkpOmUudmFsdWUhPT0iIit0dSh0KSYmKGUudmFsdWU9IiIrdHUodCkpOiJzdWJtaXQiIT09byYmInJlc2V0IiE9PW98fGUucmVtb3ZlQXR0cmlidXRlKCJ2YWx1ZSIpLG51bGwhPXQ/dHYoZSxvLHR1KHQpKTpudWxsIT1uP3R2KGUsbyx0dShuKSk6bnVsbCE9ciYmZS5yZW1vdmVBdHRyaWJ1dGUoInZhbHVlIiksbnVsbD09bCYmbnVsbCE9YSYmKGUuZGVmYXVsdENoZWNrZWQ9ISFhKSxudWxsIT1sJiYoZS5jaGVja2VkPWwmJiJmdW5jdGlvbiIhPXR5cGVvZiBsJiYic3ltYm9sIiE9dHlwZW9mIGwpLG51bGwhPWkmJiJmdW5jdGlvbiIhPXR5cGVvZiBpJiYic3ltYm9sIiE9dHlwZW9mIGkmJiJib29sZWFuIiE9dHlwZW9mIGk/ZS5uYW1lPSIiK3R1KGkpOmUucmVtb3ZlQXR0cmlidXRlKCJuYW1lIil9ZnVuY3Rpb24gdGcoZSx0LG4scixsLGEsbyxpKXtpZihudWxsIT1hJiYiZnVuY3Rpb24iIT10eXBlb2YgYSYmInN5bWJvbCIhPXR5cGVvZiBhJiYiYm9vbGVhbiIhPXR5cGVvZiBhJiYoZS50eXBlPWEpLG51bGwhPXR8fG51bGwhPW4pe2lmKCgic3VibWl0Ij09PWF8fCJyZXNldCI9PT1hKSYmbnVsbD09dClyZXR1cm4gdm9pZCB0YyhlKTtuPW51bGwhPW4/IiIrdHUobik6IiIsdD1udWxsIT10PyIiK3R1KHQpOm4saXx8dD09PWUudmFsdWV8fChlLnZhbHVlPXQpLGUuZGVmYXVsdFZhbHVlPXR9cj0iZnVuY3Rpb24iIT10eXBlb2Yocj1udWxsIT1yP3I6bCkmJiJzeW1ib2wiIT10eXBlb2YgciYmISFyLGUuY2hlY2tlZD1pP2UuY2hlY2tlZDohIXIsZS5kZWZhdWx0Q2hlY2tlZD0hIXIsbnVsbCE9byYmImZ1bmN0aW9uIiE9dHlwZW9mIG8mJiJzeW1ib2wiIT10eXBlb2YgbyYmImJvb2xlYW4iIT10eXBlb2YgbyYmKGUubmFtZT1vKSx0YyhlKX1mdW5jdGlvbiB0dihlLHQsbil7Im51bWJlciI9PT10JiZ0ZChlLm93bmVyRG9jdW1lbnQpPT09ZXx8ZS5kZWZhdWx0VmFsdWU9PT0iIitufHwoZS5kZWZhdWx0VmFsdWU9IiIrbil9ZnVuY3Rpb24gdHkoZSx0LG4scil7aWYoZT1lLm9wdGlvbnMsdCl7dD17fTtmb3IodmFyIGw9MDtsPG4ubGVuZ3RoO2wrKyl0WyIkIituW2xdXT0hMDtmb3Iobj0wO248ZS5sZW5ndGg7bisrKWw9dC5oYXNPd25Qcm9wZXJ0eSgiJCIrZVtuXS52YWx1ZSksZVtuXS5zZWxlY3RlZCE9PWwmJihlW25dLnNlbGVjdGVkPWwpLGwmJnImJihlW25dLmRlZmF1bHRTZWxlY3RlZD0hMCl9ZWxzZXtmb3IobD0wLG49IiIrdHUobiksdD1udWxsO2w8ZS5sZW5ndGg7bCsrKXtpZihlW2xdLnZhbHVlPT09bil7ZVtsXS5zZWxlY3RlZD0hMCxyJiYoZVtsXS5kZWZhdWx0U2VsZWN0ZWQ9ITApO3JldHVybn1udWxsIT09dHx8ZVtsXS5kaXNhYmxlZHx8KHQ9ZVtsXSl9bnVsbCE9PXQmJih0LnNlbGVjdGVkPSEwKX19ZnVuY3Rpb24gdGIoZSx0LG4pe2lmKG51bGwhPXQmJigodD0iIit0dSh0KSkhPT1lLnZhbHVlJiYoZS52YWx1ZT10KSxudWxsPT1uKSl7ZS5kZWZhdWx0VmFsdWUhPT10JiYoZS5kZWZhdWx0VmFsdWU9dCk7cmV0dXJufWUuZGVmYXVsdFZhbHVlPW51bGwhPW4/IiIrdHUobik6IiJ9ZnVuY3Rpb24gdHcoZSx0LG4scil7aWYobnVsbD09dCl7aWYobnVsbCE9cil7aWYobnVsbCE9bil0aHJvdyBFcnJvcih1KDkyKSk7aWYoUShyKSl7aWYoMTxyLmxlbmd0aCl0aHJvdyBFcnJvcih1KDkzKSk7cj1yWzBdfW49cn1udWxsPT1uJiYobj0iIiksdD1ufWUuZGVmYXVsdFZhbHVlPW49dHUodCksKHI9ZS50ZXh0Q29udGVudCk9PT1uJiYiIiE9PXImJm51bGwhPT1yJiYoZS52YWx1ZT1yKSx0YyhlKX1mdW5jdGlvbiB0ayhlLHQpe2lmKHQpe3ZhciBuPWUuZmlyc3RDaGlsZDtpZihuJiZuPT09ZS5sYXN0Q2hpbGQmJjM9PT1uLm5vZGVUeXBlKXtuLm5vZGVWYWx1ZT10O3JldHVybn19ZS50ZXh0Q29udGVudD10fXZhciB0Uz1uZXcgU2V0KCJhbmltYXRpb25JdGVyYXRpb25Db3VudCBhc3BlY3RSYXRpbyBib3JkZXJJbWFnZU91dHNldCBib3JkZXJJbWFnZVNsaWNlIGJvcmRlckltYWdlV2lkdGggYm94RmxleCBib3hGbGV4R3JvdXAgYm94T3JkaW5hbEdyb3VwIGNvbHVtbkNvdW50IGNvbHVtbnMgZmxleCBmbGV4R3JvdyBmbGV4UG9zaXRpdmUgZmxleFNocmluayBmbGV4TmVnYXRpdmUgZmxleE9yZGVyIGdyaWRBcmVhIGdyaWRSb3cgZ3JpZFJvd0VuZCBncmlkUm93U3BhbiBncmlkUm93U3RhcnQgZ3JpZENvbHVtbiBncmlkQ29sdW1uRW5kIGdyaWRDb2x1bW5TcGFuIGdyaWRDb2x1bW5TdGFydCBmb250V2VpZ2h0IGxpbmVDbGFtcCBsaW5lSGVpZ2h0IG9wYWNpdHkgb3JkZXIgb3JwaGFucyBzY2FsZSB0YWJTaXplIHdpZG93cyB6SW5kZXggem9vbSBmaWxsT3BhY2l0eSBmbG9vZE9wYWNpdHkgc3RvcE9wYWNpdHkgc3Ryb2tlRGFzaGFycmF5IHN0cm9rZURhc2hvZmZzZXQgc3Ryb2tlTWl0ZXJsaW1pdCBzdHJva2VPcGFjaXR5IHN0cm9rZVdpZHRoIE1vekFuaW1hdGlvbkl0ZXJhdGlvbkNvdW50IE1vekJveEZsZXggTW96Qm94RmxleEdyb3VwIE1vekxpbmVDbGFtcCBtc0FuaW1hdGlvbkl0ZXJhdGlvbkNvdW50IG1zRmxleCBtc1pvb20gbXNGbGV4R3JvdyBtc0ZsZXhOZWdhdGl2ZSBtc0ZsZXhPcmRlciBtc0ZsZXhQb3NpdGl2ZSBtc0ZsZXhTaHJpbmsgbXNHcmlkQ29sdW1uIG1zR3JpZENvbHVtblNwYW4gbXNHcmlkUm93IG1zR3JpZFJvd1NwYW4gV2Via2l0QW5pbWF0aW9uSXRlcmF0aW9uQ291bnQgV2Via2l0Qm94RmxleCBXZWJLaXRCb3hGbGV4R3JvdXAgV2Via2l0Qm94T3JkaW5hbEdyb3VwIFdlYmtpdENvbHVtbkNvdW50IFdlYmtpdENvbHVtbnMgV2Via2l0RmxleCBXZWJraXRGbGV4R3JvdyBXZWJraXRGbGV4UG9zaXRpdmUgV2Via2l0RmxleFNocmluayBXZWJraXRMaW5lQ2xhbXAiLnNwbGl0KCIgIikpO2Z1bmN0aW9uIHRFKGUsdCxuKXt2YXIgcj0wPT09dC5pbmRleE9mKCItLSIpO251bGw9PW58fCJib29sZWFuIj09dHlwZW9mIG58fCIiPT09bj9yP2Uuc2V0UHJvcGVydHkodCwiIik6ImZsb2F0Ij09PXQ/ZS5jc3NGbG9hdD0iIjplW3RdPSIiOnI/ZS5zZXRQcm9wZXJ0eSh0LG4pOiJudW1iZXIiIT10eXBlb2Ygbnx8MD09PW58fHRTLmhhcyh0KT8iZmxvYXQiPT09dD9lLmNzc0Zsb2F0PW46ZVt0XT0oIiIrbikudHJpbSgpOmVbdF09bisicHgifWZ1bmN0aW9uIHR4KGUsdCxuKXtpZihudWxsIT10JiYib2JqZWN0IiE9dHlwZW9mIHQpdGhyb3cgRXJyb3IodSg2MikpO2lmKGU9ZS5zdHlsZSxudWxsIT1uKXtmb3IodmFyIHIgaW4gbikhbi5oYXNPd25Qcm9wZXJ0eShyKXx8bnVsbCE9dCYmdC5oYXNPd25Qcm9wZXJ0eShyKXx8KDA9PT1yLmluZGV4T2YoIi0tIik/ZS5zZXRQcm9wZXJ0eShyLCIiKToiZmxvYXQiPT09cj9lLmNzc0Zsb2F0PSIiOmVbcl09IiIsdHI9ITApO2Zvcih2YXIgbCBpbiB0KXI9dFtsXSx0Lmhhc093blByb3BlcnR5KGwpJiZuW2xdIT09ciYmKHRFKGUsbCxyKSx0cj0hMCl9ZWxzZSBmb3IodmFyIGEgaW4gdCl0Lmhhc093blByb3BlcnR5KGEpJiZ0RShlLGEsdFthXSl9ZnVuY3Rpb24gdF8oZSl7aWYoLTE9PT1lLmluZGV4T2YoIi0iKSlyZXR1cm4hMTtzd2l0Y2goZSl7Y2FzZSJhbm5vdGF0aW9uLXhtbCI6Y2FzZSJjb2xvci1wcm9maWxlIjpjYXNlImZvbnQtZmFjZSI6Y2FzZSJmb250LWZhY2Utc3JjIjpjYXNlImZvbnQtZmFjZS11cmkiOmNhc2UiZm9udC1mYWNlLWZvcm1hdCI6Y2FzZSJmb250LWZhY2UtbmFtZSI6Y2FzZSJtaXNzaW5nLWdseXBoIjpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX12YXIgdFA9bmV3IE1hcChbWyJhY2NlcHRDaGFyc2V0IiwiYWNjZXB0LWNoYXJzZXQiXSxbImh0bWxGb3IiLCJmb3IiXSxbImh0dHBFcXVpdiIsImh0dHAtZXF1aXYiXSxbImNyb3NzT3JpZ2luIiwiY3Jvc3NvcmlnaW4iXSxbImFjY2VudEhlaWdodCIsImFjY2VudC1oZWlnaHQiXSxbImFsaWdubWVudEJhc2VsaW5lIiwiYWxpZ25tZW50LWJhc2VsaW5lIl0sWyJhcmFiaWNGb3JtIiwiYXJhYmljLWZvcm0iXSxbImJhc2VsaW5lU2hpZnQiLCJiYXNlbGluZS1zaGlmdCJdLFsiY2FwSGVpZ2h0IiwiY2FwLWhlaWdodCJdLFsiY2xpcFBhdGgiLCJjbGlwLXBhdGgiXSxbImNsaXBSdWxlIiwiY2xpcC1ydWxlIl0sWyJjb2xvckludGVycG9sYXRpb24iLCJjb2xvci1pbnRlcnBvbGF0aW9uIl0sWyJjb2xvckludGVycG9sYXRpb25GaWx0ZXJzIiwiY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzIl0sWyJjb2xvclByb2ZpbGUiLCJjb2xvci1wcm9maWxlIl0sWyJjb2xvclJlbmRlcmluZyIsImNvbG9yLXJlbmRlcmluZyJdLFsiZG9taW5hbnRCYXNlbGluZSIsImRvbWluYW50LWJhc2VsaW5lIl0sWyJlbmFibGVCYWNrZ3JvdW5kIiwiZW5hYmxlLWJhY2tncm91bmQiXSxbImZpbGxPcGFjaXR5IiwiZmlsbC1vcGFjaXR5Il0sWyJmaWxsUnVsZSIsImZpbGwtcnVsZSJdLFsiZmxvb2RDb2xvciIsImZsb29kLWNvbG9yIl0sWyJmbG9vZE9wYWNpdHkiLCJmbG9vZC1vcGFjaXR5Il0sWyJmb250RmFtaWx5IiwiZm9udC1mYW1pbHkiXSxbImZvbnRTaXplIiwiZm9udC1zaXplIl0sWyJmb250U2l6ZUFkanVzdCIsImZvbnQtc2l6ZS1hZGp1c3QiXSxbImZvbnRTdHJldGNoIiwiZm9udC1zdHJldGNoIl0sWyJmb250U3R5bGUiLCJmb250LXN0eWxlIl0sWyJmb250VmFyaWFudCIsImZvbnQtdmFyaWFudCJdLFsiZm9udFdlaWdodCIsImZvbnQtd2VpZ2h0Il0sWyJnbHlwaE5hbWUiLCJnbHlwaC1uYW1lIl0sWyJnbHlwaE9yaWVudGF0aW9uSG9yaXpvbnRhbCIsImdseXBoLW9yaWVudGF0aW9uLWhvcml6b250YWwiXSxbImdseXBoT3JpZW50YXRpb25WZXJ0aWNhbCIsImdseXBoLW9yaWVudGF0aW9uLXZlcnRpY2FsIl0sWyJob3JpekFkdlgiLCJob3Jpei1hZHYteCJdLFsiaG9yaXpPcmlnaW5YIiwiaG9yaXotb3JpZ2luLXgiXSxbImltYWdlUmVuZGVyaW5nIiwiaW1hZ2UtcmVuZGVyaW5nIl0sWyJsZXR0ZXJTcGFjaW5nIiwibGV0dGVyLXNwYWNpbmciXSxbImxpZ2h0aW5nQ29sb3IiLCJsaWdodGluZy1jb2xvciJdLFsibWFya2VyRW5kIiwibWFya2VyLWVuZCJdLFsibWFya2VyTWlkIiwibWFya2VyLW1pZCJdLFsibWFya2VyU3RhcnQiLCJtYXJrZXItc3RhcnQiXSxbIm92ZXJsaW5lUG9zaXRpb24iLCJvdmVybGluZS1wb3NpdGlvbiJdLFsib3ZlcmxpbmVUaGlja25lc3MiLCJvdmVybGluZS10aGlja25lc3MiXSxbInBhaW50T3JkZXIiLCJwYWludC1vcmRlciJdLFsicGFub3NlLTEiLCJwYW5vc2UtMSJdLFsicG9pbnRlckV2ZW50cyIsInBvaW50ZXItZXZlbnRzIl0sWyJyZW5kZXJpbmdJbnRlbnQiLCJyZW5kZXJpbmctaW50ZW50Il0sWyJzaGFwZVJlbmRlcmluZyIsInNoYXBlLXJlbmRlcmluZyJdLFsic3RvcENvbG9yIiwic3RvcC1jb2xvciJdLFsic3RvcE9wYWNpdHkiLCJzdG9wLW9wYWNpdHkiXSxbInN0cmlrZXRocm91Z2hQb3NpdGlvbiIsInN0cmlrZXRocm91Z2gtcG9zaXRpb24iXSxbInN0cmlrZXRocm91Z2hUaGlja25lc3MiLCJzdHJpa2V0aHJvdWdoLXRoaWNrbmVzcyJdLFsic3Ryb2tlRGFzaGFycmF5Iiwic3Ryb2tlLWRhc2hhcnJheSJdLFsic3Ryb2tlRGFzaG9mZnNldCIsInN0cm9rZS1kYXNob2Zmc2V0Il0sWyJzdHJva2VMaW5lY2FwIiwic3Ryb2tlLWxpbmVjYXAiXSxbInN0cm9rZUxpbmVqb2luIiwic3Ryb2tlLWxpbmVqb2luIl0sWyJzdHJva2VNaXRlcmxpbWl0Iiwic3Ryb2tlLW1pdGVybGltaXQiXSxbInN0cm9rZU9wYWNpdHkiLCJzdHJva2Utb3BhY2l0eSJdLFsic3Ryb2tlV2lkdGgiLCJzdHJva2Utd2lkdGgiXSxbInRleHRBbmNob3IiLCJ0ZXh0LWFuY2hvciJdLFsidGV4dERlY29yYXRpb24iLCJ0ZXh0LWRlY29yYXRpb24iXSxbInRleHRSZW5kZXJpbmciLCJ0ZXh0LXJlbmRlcmluZyJdLFsidHJhbnNmb3JtT3JpZ2luIiwidHJhbnNmb3JtLW9yaWdpbiJdLFsidW5kZXJsaW5lUG9zaXRpb24iLCJ1bmRlcmxpbmUtcG9zaXRpb24iXSxbInVuZGVybGluZVRoaWNrbmVzcyIsInVuZGVybGluZS10aGlja25lc3MiXSxbInVuaWNvZGVCaWRpIiwidW5pY29kZS1iaWRpIl0sWyJ1bmljb2RlUmFuZ2UiLCJ1bmljb2RlLXJhbmdlIl0sWyJ1bml0c1BlckVtIiwidW5pdHMtcGVyLWVtIl0sWyJ2QWxwaGFiZXRpYyIsInYtYWxwaGFiZXRpYyJdLFsidkhhbmdpbmciLCJ2LWhhbmdpbmciXSxbInZJZGVvZ3JhcGhpYyIsInYtaWRlb2dyYXBoaWMiXSxbInZNYXRoZW1hdGljYWwiLCJ2LW1hdGhlbWF0aWNhbCJdLFsidmVjdG9yRWZmZWN0IiwidmVjdG9yLWVmZmVjdCJdLFsidmVydEFkdlkiLCJ2ZXJ0LWFkdi15Il0sWyJ2ZXJ0T3JpZ2luWCIsInZlcnQtb3JpZ2luLXgiXSxbInZlcnRPcmlnaW5ZIiwidmVydC1vcmlnaW4teSJdLFsid29yZFNwYWNpbmciLCJ3b3JkLXNwYWNpbmciXSxbIndyaXRpbmdNb2RlIiwid3JpdGluZy1tb2RlIl0sWyJ4bWxuc1hsaW5rIiwieG1sbnM6eGxpbmsiXSxbInhIZWlnaHQiLCJ4LWhlaWdodCJdXSksdE49L15bXHUwMDAwLVx1MDAxRiBdKmpbXHJcblx0XSphW1xyXG5cdF0qdltcclxuXHRdKmFbXHJcblx0XSpzW1xyXG5cdF0qY1tcclxuXHRdKnJbXHJcblx0XSppW1xyXG5cdF0qcFtcclxuXHRdKnRbXHJcblx0XSo6L2k7ZnVuY3Rpb24gdEMoZSl7cmV0dXJuIHROLnRlc3QoIiIrZSk/ImphdmFzY3JpcHQ6dGhyb3cgbmV3IEVycm9yKCdSZWFjdCBoYXMgYmxvY2tlZCBhIGphdmFzY3JpcHQ6IFVSTCBhcyBhIHNlY3VyaXR5IHByZWNhdXRpb24uJykiOmV9ZnVuY3Rpb24gdFQoKXt9dmFyIHRPPW51bGw7ZnVuY3Rpb24gdHooZSl7cmV0dXJuKGU9ZS50YXJnZXR8fGUuc3JjRWxlbWVudHx8d2luZG93KS5jb3JyZXNwb25kaW5nVXNlRWxlbWVudCYmKGU9ZS5jb3JyZXNwb25kaW5nVXNlRWxlbWVudCksMz09PWUubm9kZVR5cGU/ZS5wYXJlbnROb2RlOmV9dmFyIHRMPW51bGwsdFI9bnVsbDtmdW5jdGlvbiB0TShlKXt2YXIgdD1lMihlKTtpZih0JiYoZT10LnN0YXRlTm9kZSkpe3ZhciBuPWVbZXFdfHxudWxsO3N3aXRjaChlPXQuc3RhdGVOb2RlLHQudHlwZSl7Y2FzZSJpbnB1dCI6aWYodGgoZSxuLnZhbHVlLG4uZGVmYXVsdFZhbHVlLG4uZGVmYXVsdFZhbHVlLG4uY2hlY2tlZCxuLmRlZmF1bHRDaGVja2VkLG4udHlwZSxuLm5hbWUpLHQ9bi5uYW1lLCJyYWRpbyI9PT1uLnR5cGUmJm51bGwhPXQpe2ZvcihuPWU7bi5wYXJlbnROb2RlOyluPW4ucGFyZW50Tm9kZTtmb3Iobj1uLnF1ZXJ5U2VsZWN0b3JBbGwoJ2lucHV0W25hbWU9IicrdG0oIiIrdCkrJyJdW3R5cGU9InJhZGlvIl0nKSx0PTA7dDxuLmxlbmd0aDt0Kyspe3ZhciByPW5bdF07aWYociE9PWUmJnIuZm9ybT09PWUuZm9ybSl7dmFyIGw9cltlcV18fG51bGw7aWYoIWwpdGhyb3cgRXJyb3IodSg5MCkpO3RoKHIsbC52YWx1ZSxsLmRlZmF1bHRWYWx1ZSxsLmRlZmF1bHRWYWx1ZSxsLmNoZWNrZWQsbC5kZWZhdWx0Q2hlY2tlZCxsLnR5cGUsbC5uYW1lKX19Zm9yKHQ9MDt0PG4ubGVuZ3RoO3QrKykocj1uW3RdKS5mb3JtPT09ZS5mb3JtJiZ0ZihyKX1icmVhaztjYXNlInRleHRhcmVhIjp0YihlLG4udmFsdWUsbi5kZWZhdWx0VmFsdWUpO2JyZWFrO2Nhc2Uic2VsZWN0IjpudWxsIT0odD1uLnZhbHVlKSYmdHkoZSwhIW4ubXVsdGlwbGUsdCwhMSl9fX12YXIgdEk9ITE7ZnVuY3Rpb24gdEQoZSx0LG4pe2lmKHRJKXJldHVybiBlKHQsbik7dEk9ITA7dHJ5e3JldHVybiBlKHQpfWZpbmFsbHl7aWYodEk9ITEsKG51bGwhPT10THx8bnVsbCE9PXRSKSYmKHN0KCksdEwmJih0PXRMLGU9dFIsdFI9dEw9bnVsbCx0TSh0KSxlKSkpZm9yKHQ9MDt0PGUubGVuZ3RoO3QrKyl0TShlW3RdKX19ZnVuY3Rpb24gdEYoZSx0KXt2YXIgbj1lLnN0YXRlTm9kZTtpZihudWxsPT09bilyZXR1cm4gbnVsbDt2YXIgcj1uW2VxXXx8bnVsbDtpZihudWxsPT09cilyZXR1cm4gbnVsbDtzd2l0Y2gobj1yW3RdLHQpe2Nhc2Uib25DbGljayI6Y2FzZSJvbkNsaWNrQ2FwdHVyZSI6Y2FzZSJvbkRvdWJsZUNsaWNrIjpjYXNlIm9uRG91YmxlQ2xpY2tDYXB0dXJlIjpjYXNlIm9uTW91c2VEb3duIjpjYXNlIm9uTW91c2VEb3duQ2FwdHVyZSI6Y2FzZSJvbk1vdXNlTW92ZSI6Y2FzZSJvbk1vdXNlTW92ZUNhcHR1cmUiOmNhc2Uib25Nb3VzZVVwIjpjYXNlIm9uTW91c2VVcENhcHR1cmUiOmNhc2Uib25Nb3VzZUVudGVyIjoocj0hci5kaXNhYmxlZCl8fChyPSJidXR0b24iIT09KGU9ZS50eXBlKSYmImlucHV0IiE9PWUmJiJzZWxlY3QiIT09ZSYmInRleHRhcmVhIiE9PWUpLGU9IXI7YnJlYWs7ZGVmYXVsdDplPSExfWlmKGUpcmV0dXJuIG51bGw7aWYobiYmImZ1bmN0aW9uIiE9dHlwZW9mIG4pdGhyb3cgRXJyb3IodSgyMzEsdCx0eXBlb2YgbikpO3JldHVybiBufXZhciB0QT0idSI+dHlwZW9mIHdpbmRvdyYmdm9pZCAwIT09d2luZG93LmRvY3VtZW50JiZ2b2lkIDAhPT13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCx0aj0hMTtpZih0QSl0cnl7dmFyIHRVPXt9O09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0VSwicGFzc2l2ZSIse2dldDpmdW5jdGlvbigpe3RqPSEwfX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0Iix0VSx0VSksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRlc3QiLHRVLHRVKX1jYXRjaChlKXt0aj0hMX12YXIgdEI9bnVsbCx0Vj1udWxsLHRIPW51bGw7ZnVuY3Rpb24gdCQoKXtpZih0SClyZXR1cm4gdEg7dmFyIGUsdCxuPXRWLHI9bi5sZW5ndGgsbD0idmFsdWUiaW4gdEI/dEIudmFsdWU6dEIudGV4dENvbnRlbnQsYT1sLmxlbmd0aDtmb3IoZT0wO2U8ciYmbltlXT09PWxbZV07ZSsrKTt2YXIgbz1yLWU7Zm9yKHQ9MTt0PD1vJiZuW3ItdF09PT1sW2EtdF07dCsrKTtyZXR1cm4gdEg9bC5zbGljZShlLDE8dD8xLXQ6dm9pZCAwKX1mdW5jdGlvbiB0UShlKXt2YXIgdD1lLmtleUNvZGU7cmV0dXJuImNoYXJDb2RlImluIGU/MD09PShlPWUuY2hhckNvZGUpJiYxMz09PXQmJihlPTEzKTplPXQsMTA9PT1lJiYoZT0xMyksMzI8PWV8fDEzPT09ZT9lOjB9ZnVuY3Rpb24gdFcoKXtyZXR1cm4hMH1mdW5jdGlvbiB0cSgpe3JldHVybiExfWZ1bmN0aW9uIHRLKGUpe2Z1bmN0aW9uIHQodCxuLHIsbCxhKXtmb3IodmFyIG8gaW4gdGhpcy5fcmVhY3ROYW1lPXQsdGhpcy5fdGFyZ2V0SW5zdD1yLHRoaXMudHlwZT1uLHRoaXMubmF0aXZlRXZlbnQ9bCx0aGlzLnRhcmdldD1hLHRoaXMuY3VycmVudFRhcmdldD1udWxsLGUpZS5oYXNPd25Qcm9wZXJ0eShvKSYmKHQ9ZVtvXSx0aGlzW29dPXQ/dChsKTpsW29dKTtyZXR1cm4gdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9KG51bGwhPWwuZGVmYXVsdFByZXZlbnRlZD9sLmRlZmF1bHRQcmV2ZW50ZWQ6ITE9PT1sLnJldHVyblZhbHVlKT90Vzp0cSx0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPXRxLHRoaXN9cmV0dXJuIHgodC5wcm90b3R5cGUse3ByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwO3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUucHJldmVudERlZmF1bHQ/ZS5wcmV2ZW50RGVmYXVsdCgpOiJ1bmtub3duIiE9dHlwZW9mIGUucmV0dXJuVmFsdWUmJihlLnJldHVyblZhbHVlPSExKSx0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD10Vyl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUuc3RvcFByb3BhZ2F0aW9uP2Uuc3RvcFByb3BhZ2F0aW9uKCk6InVua25vd24iIT10eXBlb2YgZS5jYW5jZWxCdWJibGUmJihlLmNhbmNlbEJ1YmJsZT0hMCksdGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZD10Vyl9LHBlcnNpc3Q6ZnVuY3Rpb24oKXt9LGlzUGVyc2lzdGVudDp0V30pLHR9dmFyIHRYLHRHLHRZLHRKLHRaLHQwPXtldmVudFBoYXNlOjAsYnViYmxlczowLGNhbmNlbGFibGU6MCx0aW1lU3RhbXA6ZnVuY3Rpb24oZSl7cmV0dXJuIGUudGltZVN0YW1wfHxEYXRlLm5vdygpfSxkZWZhdWx0UHJldmVudGVkOjAsaXNUcnVzdGVkOjB9LHQxPXRLKHQwKSx0Mj14KHt9LHQwLHt2aWV3OjAsZGV0YWlsOjB9KSx0Mz10Syh0MiksdDQ9eCh7fSx0Mix7c2NyZWVuWDowLHNjcmVlblk6MCxjbGllbnRYOjAsY2xpZW50WTowLHBhZ2VYOjAscGFnZVk6MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAsZ2V0TW9kaWZpZXJTdGF0ZTpuYSxidXR0b246MCxidXR0b25zOjAscmVsYXRlZFRhcmdldDpmdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09ZS5yZWxhdGVkVGFyZ2V0P2UuZnJvbUVsZW1lbnQ9PT1lLnNyY0VsZW1lbnQ/ZS50b0VsZW1lbnQ6ZS5mcm9tRWxlbWVudDplLnJlbGF0ZWRUYXJnZXR9LG1vdmVtZW50WDpmdW5jdGlvbihlKXtyZXR1cm4ibW92ZW1lbnRYImluIGU/ZS5tb3ZlbWVudFg6KGUhPT10WiYmKHRaJiYibW91c2Vtb3ZlIj09PWUudHlwZT8odFk9ZS5zY3JlZW5YLXRaLnNjcmVlblgsdEo9ZS5zY3JlZW5ZLXRaLnNjcmVlblkpOnRKPXRZPTAsdFo9ZSksdFkpfSxtb3ZlbWVudFk6ZnVuY3Rpb24oZSl7cmV0dXJuIm1vdmVtZW50WSJpbiBlP2UubW92ZW1lbnRZOnRKfX0pLHQ4PXRLKHQ0KSx0NT10Syh4KHt9LHQ0LHtkYXRhVHJhbnNmZXI6MH0pKSx0Nj10Syh4KHt9LHQyLHtyZWxhdGVkVGFyZ2V0OjB9KSksdDk9dEsoeCh7fSx0MCx7YW5pbWF0aW9uTmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLHQ3PXRLKHgoe30sdDAse2NsaXBib2FyZERhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuImNsaXBib2FyZERhdGEiaW4gZT9lLmNsaXBib2FyZERhdGE6d2luZG93LmNsaXBib2FyZERhdGF9fSkpLG5lPXRLKHgoe30sdDAse2RhdGE6MH0pKSxudD17RXNjOiJFc2NhcGUiLFNwYWNlYmFyOiIgIixMZWZ0OiJBcnJvd0xlZnQiLFVwOiJBcnJvd1VwIixSaWdodDoiQXJyb3dSaWdodCIsRG93bjoiQXJyb3dEb3duIixEZWw6IkRlbGV0ZSIsV2luOiJPUyIsTWVudToiQ29udGV4dE1lbnUiLEFwcHM6IkNvbnRleHRNZW51IixTY3JvbGw6IlNjcm9sbExvY2siLE1velByaW50YWJsZUtleToiVW5pZGVudGlmaWVkIn0sbm49ezg6IkJhY2tzcGFjZSIsOToiVGFiIiwxMjoiQ2xlYXIiLDEzOiJFbnRlciIsMTY6IlNoaWZ0IiwxNzoiQ29udHJvbCIsMTg6IkFsdCIsMTk6IlBhdXNlIiwyMDoiQ2Fwc0xvY2siLDI3OiJFc2NhcGUiLDMyOiIgIiwzMzoiUGFnZVVwIiwzNDoiUGFnZURvd24iLDM1OiJFbmQiLDM2OiJIb21lIiwzNzoiQXJyb3dMZWZ0IiwzODoiQXJyb3dVcCIsMzk6IkFycm93UmlnaHQiLDQwOiJBcnJvd0Rvd24iLDQ1OiJJbnNlcnQiLDQ2OiJEZWxldGUiLDExMjoiRjEiLDExMzoiRjIiLDExNDoiRjMiLDExNToiRjQiLDExNjoiRjUiLDExNzoiRjYiLDExODoiRjciLDExOToiRjgiLDEyMDoiRjkiLDEyMToiRjEwIiwxMjI6IkYxMSIsMTIzOiJGMTIiLDE0NDoiTnVtTG9jayIsMTQ1OiJTY3JvbGxMb2NrIiwyMjQ6Ik1ldGEifSxucj17QWx0OiJhbHRLZXkiLENvbnRyb2w6ImN0cmxLZXkiLE1ldGE6Im1ldGFLZXkiLFNoaWZ0OiJzaGlmdEtleSJ9O2Z1bmN0aW9uIG5sKGUpe3ZhciB0PXRoaXMubmF0aXZlRXZlbnQ7cmV0dXJuIHQuZ2V0TW9kaWZpZXJTdGF0ZT90LmdldE1vZGlmaWVyU3RhdGUoZSk6ISEoZT1ucltlXSkmJiEhdFtlXX1mdW5jdGlvbiBuYSgpe3JldHVybiBubH12YXIgbm89dEsoeCh7fSx0Mix7a2V5OmZ1bmN0aW9uKGUpe2lmKGUua2V5KXt2YXIgdD1udFtlLmtleV18fGUua2V5O2lmKCJVbmlkZW50aWZpZWQiIT09dClyZXR1cm4gdH1yZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlPzEzPT09KGU9dFEoZSkpPyJFbnRlciI6U3RyaW5nLmZyb21DaGFyQ29kZShlKToia2V5ZG93biI9PT1lLnR5cGV8fCJrZXl1cCI9PT1lLnR5cGU/bm5bZS5rZXlDb2RlXXx8IlVuaWRlbnRpZmllZCI6IiJ9LGNvZGU6MCxsb2NhdGlvbjowLGN0cmxLZXk6MCxzaGlmdEtleTowLGFsdEtleTowLG1ldGFLZXk6MCxyZXBlYXQ6MCxsb2NhbGU6MCxnZXRNb2RpZmllclN0YXRlOm5hLGNoYXJDb2RlOmZ1bmN0aW9uKGUpe3JldHVybiJrZXlwcmVzcyI9PT1lLnR5cGU/dFEoZSk6MH0sa2V5Q29kZTpmdW5jdGlvbihlKXtyZXR1cm4ia2V5ZG93biI9PT1lLnR5cGV8fCJrZXl1cCI9PT1lLnR5cGU/ZS5rZXlDb2RlOjB9LHdoaWNoOmZ1bmN0aW9uKGUpe3JldHVybiJrZXlwcmVzcyI9PT1lLnR5cGU/dFEoZSk6ImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP2Uua2V5Q29kZTowfX0pKSxuaT10Syh4KHt9LHQ0LHtwb2ludGVySWQ6MCx3aWR0aDowLGhlaWdodDowLHByZXNzdXJlOjAsdGFuZ2VudGlhbFByZXNzdXJlOjAsdGlsdFg6MCx0aWx0WTowLHR3aXN0OjAscG9pbnRlclR5cGU6MCxpc1ByaW1hcnk6MH0pKSxudT10Syh4KHt9LHQyLHt0b3VjaGVzOjAsdGFyZ2V0VG91Y2hlczowLGNoYW5nZWRUb3VjaGVzOjAsYWx0S2V5OjAsbWV0YUtleTowLGN0cmxLZXk6MCxzaGlmdEtleTowLGdldE1vZGlmaWVyU3RhdGU6bmF9KSksbnM9dEsoeCh7fSx0MCx7cHJvcGVydHlOYW1lOjAsZWxhcHNlZFRpbWU6MCxwc2V1ZG9FbGVtZW50OjB9KSksbmM9dEsoeCh7fSx0NCx7ZGVsdGFYOmZ1bmN0aW9uKGUpe3JldHVybiJkZWx0YVgiaW4gZT9lLmRlbHRhWDoid2hlZWxEZWx0YVgiaW4gZT8tZS53aGVlbERlbHRhWDowfSxkZWx0YVk6ZnVuY3Rpb24oZSl7cmV0dXJuImRlbHRhWSJpbiBlP2UuZGVsdGFZOiJ3aGVlbERlbHRhWSJpbiBlPy1lLndoZWVsRGVsdGFZOiJ3aGVlbERlbHRhImluIGU/LWUud2hlZWxEZWx0YTowfSxkZWx0YVo6MCxkZWx0YU1vZGU6MH0pKSxuZj10Syh4KHt9LHQwLHtuZXdTdGF0ZTowLG9sZFN0YXRlOjB9KSksbmQ9WzksMTMsMjcsMzJdLG5wPXRBJiYiQ29tcG9zaXRpb25FdmVudCJpbiB3aW5kb3csbm09bnVsbDt0QSYmImRvY3VtZW50TW9kZSJpbiBkb2N1bWVudCYmKG5tPWRvY3VtZW50LmRvY3VtZW50TW9kZSk7dmFyIG5oPXRBJiYiVGV4dEV2ZW50ImluIHdpbmRvdyYmIW5tLG5nPXRBJiYoIW5wfHxubSYmODxubSYmMTE+PW5tKSxudj0hMTtmdW5jdGlvbiBueShlLHQpe3N3aXRjaChlKXtjYXNlImtleXVwIjpyZXR1cm4gLTEhPT1uZC5pbmRleE9mKHQua2V5Q29kZSk7Y2FzZSJrZXlkb3duIjpyZXR1cm4gMjI5IT09dC5rZXlDb2RlO2Nhc2Uia2V5cHJlc3MiOmNhc2UibW91c2Vkb3duIjpjYXNlImZvY3Vzb3V0IjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiExfX1mdW5jdGlvbiBuYihlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mKGU9ZS5kZXRhaWwpJiYiZGF0YSJpbiBlP2UuZGF0YTpudWxsfXZhciBudz0hMSxuaz17Y29sb3I6ITAsZGF0ZTohMCxkYXRldGltZTohMCwiZGF0ZXRpbWUtbG9jYWwiOiEwLGVtYWlsOiEwLG1vbnRoOiEwLG51bWJlcjohMCxwYXNzd29yZDohMCxyYW5nZTohMCxzZWFyY2g6ITAsdGVsOiEwLHRleHQ6ITAsdGltZTohMCx1cmw6ITAsd2VlazohMH07ZnVuY3Rpb24gblMoZSl7dmFyIHQ9ZSYmZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiJpbnB1dCI9PT10PyEhbmtbZS50eXBlXToidGV4dGFyZWEiPT09dH1mdW5jdGlvbiBuRShlLHQsbixyKXt0TD90Uj90Ui5wdXNoKHIpOnRSPVtyXTp0TD1yLDA8KHQ9czgodCwib25DaGFuZ2UiKSkubGVuZ3RoJiYobj1uZXcgdDEoIm9uQ2hhbmdlIiwiY2hhbmdlIixudWxsLG4sciksZS5wdXNoKHtldmVudDpuLGxpc3RlbmVyczp0fSkpfXZhciBueD1udWxsLG5fPW51bGw7ZnVuY3Rpb24gblAoZSl7c1koZSwwKX1mdW5jdGlvbiBuTihlKXtpZih0ZihlMyhlKSkpcmV0dXJuIGV9ZnVuY3Rpb24gbkMoZSx0KXtpZigiY2hhbmdlIj09PWUpcmV0dXJuIHR9dmFyIG5UPSExO2lmKHRBKXtpZih0QSl7dmFyIG5PPSJvbmlucHV0ImluIGRvY3VtZW50O2lmKCFuTyl7dmFyIG56PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO256LnNldEF0dHJpYnV0ZSgib25pbnB1dCIsInJldHVybjsiKSxuTz0iZnVuY3Rpb24iPT10eXBlb2Ygbnoub25pbnB1dH1yPW5PfWVsc2Ugcj0hMTtuVD1yJiYoIWRvY3VtZW50LmRvY3VtZW50TW9kZXx8OTxkb2N1bWVudC5kb2N1bWVudE1vZGUpfWZ1bmN0aW9uIG5MKCl7bngmJihueC5kZXRhY2hFdmVudCgib25wcm9wZXJ0eWNoYW5nZSIsblIpLG5fPW54PW51bGwpfWZ1bmN0aW9uIG5SKGUpe2lmKCJ2YWx1ZSI9PT1lLnByb3BlcnR5TmFtZSYmbk4obl8pKXt2YXIgdD1bXTtuRSh0LG5fLGUsdHooZSkpLHREKG5QLHQpfX1mdW5jdGlvbiBuTShlLHQsbil7ImZvY3VzaW4iPT09ZT8obkwoKSxueD10LG5fPW4sbnguYXR0YWNoRXZlbnQoIm9ucHJvcGVydHljaGFuZ2UiLG5SKSk6ImZvY3Vzb3V0Ij09PWUmJm5MKCl9ZnVuY3Rpb24gbkkoZSl7aWYoInNlbGVjdGlvbmNoYW5nZSI9PT1lfHwia2V5dXAiPT09ZXx8ImtleWRvd24iPT09ZSlyZXR1cm4gbk4obl8pfWZ1bmN0aW9uIG5EKGUsdCl7aWYoImNsaWNrIj09PWUpcmV0dXJuIG5OKHQpfWZ1bmN0aW9uIG5GKGUsdCl7aWYoImlucHV0Ij09PWV8fCJjaGFuZ2UiPT09ZSlyZXR1cm4gbk4odCl9dmFyIG5BPSJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuaXM/T2JqZWN0LmlzOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9PT10JiYoMCE9PWV8fDEvZT09MS90KXx8ZSE9ZSYmdCE9dH07ZnVuY3Rpb24gbmooZSx0KXtpZihuQShlLHQpKXJldHVybiEwO2lmKCJvYmplY3QiIT10eXBlb2YgZXx8bnVsbD09PWV8fCJvYmplY3QiIT10eXBlb2YgdHx8bnVsbD09PXQpcmV0dXJuITE7dmFyIG49T2JqZWN0LmtleXMoZSkscj1PYmplY3Qua2V5cyh0KTtpZihuLmxlbmd0aCE9PXIubGVuZ3RoKXJldHVybiExO2ZvcihyPTA7cjxuLmxlbmd0aDtyKyspe3ZhciBsPW5bcl07aWYoIWVkLmNhbGwodCxsKXx8IW5BKGVbbF0sdFtsXSkpcmV0dXJuITF9cmV0dXJuITB9ZnVuY3Rpb24gblUoZSl7Zm9yKDtlJiZlLmZpcnN0Q2hpbGQ7KWU9ZS5maXJzdENoaWxkO3JldHVybiBlfWZ1bmN0aW9uIG5CKGUsdCl7dmFyIG4scj1uVShlKTtmb3IoZT0wO3I7KXtpZigzPT09ci5ub2RlVHlwZSl7aWYobj1lK3IudGV4dENvbnRlbnQubGVuZ3RoLGU8PXQmJm4+PXQpcmV0dXJue25vZGU6cixvZmZzZXQ6dC1lfTtlPW59ZTp7Zm9yKDtyOyl7aWYoci5uZXh0U2libGluZyl7cj1yLm5leHRTaWJsaW5nO2JyZWFrIGV9cj1yLnBhcmVudE5vZGV9cj12b2lkIDB9cj1uVShyKX19ZnVuY3Rpb24gblYoZSl7ZT1udWxsIT1lJiZudWxsIT1lLm93bmVyRG9jdW1lbnQmJm51bGwhPWUub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldz9lLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXc6d2luZG93O2Zvcih2YXIgdD10ZChlLmRvY3VtZW50KTt0IGluc3RhbmNlb2YgZS5IVE1MSUZyYW1lRWxlbWVudDspe3RyeXt2YXIgbj0ic3RyaW5nIj09dHlwZW9mIHQuY29udGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmfWNhdGNoKGUpe249ITF9aWYobillPXQuY29udGVudFdpbmRvdztlbHNlIGJyZWFrO3Q9dGQoZS5kb2N1bWVudCl9cmV0dXJuIHR9ZnVuY3Rpb24gbkgoZSl7dmFyIHQ9ZSYmZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiB0JiYoImlucHV0Ij09PXQmJigidGV4dCI9PT1lLnR5cGV8fCJzZWFyY2giPT09ZS50eXBlfHwidGVsIj09PWUudHlwZXx8InVybCI9PT1lLnR5cGV8fCJwYXNzd29yZCI9PT1lLnR5cGUpfHwidGV4dGFyZWEiPT09dHx8InRydWUiPT09ZS5jb250ZW50RWRpdGFibGUpfXZhciBuJD10QSYmImRvY3VtZW50TW9kZSJpbiBkb2N1bWVudCYmMTE+PWRvY3VtZW50LmRvY3VtZW50TW9kZSxuUT1udWxsLG5XPW51bGwsbnE9bnVsbCxuSz0hMTtmdW5jdGlvbiBuWChlLHQsbil7dmFyIHI9bi53aW5kb3c9PT1uP24uZG9jdW1lbnQ6OT09PW4ubm9kZVR5cGU/bjpuLm93bmVyRG9jdW1lbnQ7bkt8fG51bGw9PW5RfHxuUSE9PXRkKHIpfHwocj0ic2VsZWN0aW9uU3RhcnQiaW4ocj1uUSkmJm5IKHIpP3tzdGFydDpyLnNlbGVjdGlvblN0YXJ0LGVuZDpyLnNlbGVjdGlvbkVuZH06e2FuY2hvck5vZGU6KHI9KHIub3duZXJEb2N1bWVudCYmci5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3fHx3aW5kb3cpLmdldFNlbGVjdGlvbigpKS5hbmNob3JOb2RlLGFuY2hvck9mZnNldDpyLmFuY2hvck9mZnNldCxmb2N1c05vZGU6ci5mb2N1c05vZGUsZm9jdXNPZmZzZXQ6ci5mb2N1c09mZnNldH0sbnEmJm5qKG5xLHIpfHwobnE9ciwwPChyPXM4KG5XLCJvblNlbGVjdCIpKS5sZW5ndGgmJih0PW5ldyB0MSgib25TZWxlY3QiLCJzZWxlY3QiLG51bGwsdCxuKSxlLnB1c2goe2V2ZW50OnQsbGlzdGVuZXJzOnJ9KSx0LnRhcmdldD1uUSkpKX1mdW5jdGlvbiBuRyhlLHQpe3ZhciBuPXt9O3JldHVybiBuW2UudG9Mb3dlckNhc2UoKV09dC50b0xvd2VyQ2FzZSgpLG5bIldlYmtpdCIrZV09IndlYmtpdCIrdCxuWyJNb3oiK2VdPSJtb3oiK3Qsbn12YXIgblk9e2FuaW1hdGlvbmVuZDpuRygiQW5pbWF0aW9uIiwiQW5pbWF0aW9uRW5kIiksYW5pbWF0aW9uaXRlcmF0aW9uOm5HKCJBbmltYXRpb24iLCJBbmltYXRpb25JdGVyYXRpb24iKSxhbmltYXRpb25zdGFydDpuRygiQW5pbWF0aW9uIiwiQW5pbWF0aW9uU3RhcnQiKSx0cmFuc2l0aW9ucnVuOm5HKCJUcmFuc2l0aW9uIiwiVHJhbnNpdGlvblJ1biIpLHRyYW5zaXRpb25zdGFydDpuRygiVHJhbnNpdGlvbiIsIlRyYW5zaXRpb25TdGFydCIpLHRyYW5zaXRpb25jYW5jZWw6bkcoIlRyYW5zaXRpb24iLCJUcmFuc2l0aW9uQ2FuY2VsIiksdHJhbnNpdGlvbmVuZDpuRygiVHJhbnNpdGlvbiIsIlRyYW5zaXRpb25FbmQiKX0sbko9e30sblo9e307ZnVuY3Rpb24gbjAoZSl7aWYobkpbZV0pcmV0dXJuIG5KW2VdO2lmKCFuWVtlXSlyZXR1cm4gZTt2YXIgdCxuPW5ZW2VdO2Zvcih0IGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eSh0KSYmdCBpbiBuWilyZXR1cm4gbkpbZV09blt0XTtyZXR1cm4gZX10QSYmKG5aPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlLCJBbmltYXRpb25FdmVudCJpbiB3aW5kb3d8fChkZWxldGUgblkuYW5pbWF0aW9uZW5kLmFuaW1hdGlvbixkZWxldGUgblkuYW5pbWF0aW9uaXRlcmF0aW9uLmFuaW1hdGlvbixkZWxldGUgblkuYW5pbWF0aW9uc3RhcnQuYW5pbWF0aW9uKSwiVHJhbnNpdGlvbkV2ZW50ImluIHdpbmRvd3x8ZGVsZXRlIG5ZLnRyYW5zaXRpb25lbmQudHJhbnNpdGlvbik7dmFyIG4xPW4wKCJhbmltYXRpb25lbmQiKSxuMj1uMCgiYW5pbWF0aW9uaXRlcmF0aW9uIiksbjM9bjAoImFuaW1hdGlvbnN0YXJ0IiksbjQ9bjAoInRyYW5zaXRpb25ydW4iKSxuOD1uMCgidHJhbnNpdGlvbnN0YXJ0IiksbjU9bjAoInRyYW5zaXRpb25jYW5jZWwiKSxuNj1uMCgidHJhbnNpdGlvbmVuZCIpLG45PW5ldyBNYXAsbjc9ImFib3J0IGF1eENsaWNrIGJlZm9yZVRvZ2dsZSBjYW5jZWwgY2FuUGxheSBjYW5QbGF5VGhyb3VnaCBjbGljayBjbG9zZSBjb250ZXh0TWVudSBjb3B5IGN1dCBkcmFnIGRyYWdFbmQgZHJhZ0VudGVyIGRyYWdFeGl0IGRyYWdMZWF2ZSBkcmFnT3ZlciBkcmFnU3RhcnQgZHJvcCBkdXJhdGlvbkNoYW5nZSBlbXB0aWVkIGVuY3J5cHRlZCBlbmRlZCBlcnJvciBnb3RQb2ludGVyQ2FwdHVyZSBpbnB1dCBpbnZhbGlkIGtleURvd24ga2V5UHJlc3Mga2V5VXAgbG9hZCBsb2FkZWREYXRhIGxvYWRlZE1ldGFkYXRhIGxvYWRTdGFydCBsb3N0UG9pbnRlckNhcHR1cmUgbW91c2VEb3duIG1vdXNlTW92ZSBtb3VzZU91dCBtb3VzZU92ZXIgbW91c2VVcCBwYXN0ZSBwYXVzZSBwbGF5IHBsYXlpbmcgcG9pbnRlckNhbmNlbCBwb2ludGVyRG93biBwb2ludGVyTW92ZSBwb2ludGVyT3V0IHBvaW50ZXJPdmVyIHBvaW50ZXJVcCBwcm9ncmVzcyByYXRlQ2hhbmdlIHJlc2V0IHJlc2l6ZSBzZWVrZWQgc2Vla2luZyBzdGFsbGVkIHN1Ym1pdCBzdXNwZW5kIHRpbWVVcGRhdGUgdG91Y2hDYW5jZWwgdG91Y2hFbmQgdG91Y2hTdGFydCB2b2x1bWVDaGFuZ2Ugc2Nyb2xsIHRvZ2dsZSB0b3VjaE1vdmUgd2FpdGluZyB3aGVlbCIuc3BsaXQoIiAiKTtmdW5jdGlvbiByZShlLHQpe245LnNldChlLHQpLGU5KHQsW2VdKX1uNy5wdXNoKCJzY3JvbGxFbmQiKTt2YXIgcnQ9MDtmdW5jdGlvbiBybihlLHQpe3JldHVybiBudWxsIT1lLm5hbWUmJiJhdXRvIiE9PWUubmFtZT9lLm5hbWU6bnVsbCE9PXQuYXV0b05hbWU/dC5hdXRvTmFtZTp0LmF1dG9OYW1lPWU9Il8iKyhlPXVxLmlkZW50aWZpZXJQcmVmaXgpKyJ0XyIrKHJ0KyspLnRvU3RyaW5nKDMyKSsiXyJ9ZnVuY3Rpb24gcnIoZSl7aWYobnVsbD09ZXx8InN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO3ZhciB0PW51bGwsbj11MTtpZihudWxsIT09bilmb3IodmFyIHI9MDtyPG4ubGVuZ3RoO3IrKyl7dmFyIGw9ZVtuW3JdXTtpZihudWxsIT1sKXtpZigibm9uZSI9PT1sKXJldHVybiJub25lIjt0PW51bGw9PXQ/bDp0KyIgIitsfX1yZXR1cm4gbnVsbD09dD9lLmRlZmF1bHQ6dH1mdW5jdGlvbiBybChlLHQpe3JldHVybiBlPXJyKGUpLG51bGw9PSh0PXJyKHQpKT8iYXV0byI9PT1lP251bGw6ZToiYXV0byI9PT10P251bGw6dH12YXIgcmE9ImZ1bmN0aW9uIj09dHlwZW9mIHJlcG9ydEVycm9yP3JlcG9ydEVycm9yOmZ1bmN0aW9uKGUpe2lmKCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiYiZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93LkVycm9yRXZlbnQpe3ZhciB0PW5ldyB3aW5kb3cuRXJyb3JFdmVudCgiZXJyb3IiLHtidWJibGVzOiEwLGNhbmNlbGFibGU6ITAsbWVzc2FnZToib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiYic3RyaW5nIj09dHlwZW9mIGUubWVzc2FnZT9TdHJpbmcoZS5tZXNzYWdlKTpTdHJpbmcoZSksZXJyb3I6ZX0pO2lmKCF3aW5kb3cuZGlzcGF0Y2hFdmVudCh0KSlyZXR1cm59ZWxzZSBpZigib2JqZWN0Ij09dHlwZW9mIGwuZGVmYXVsdCYmImZ1bmN0aW9uIj09dHlwZW9mIGwuZGVmYXVsdC5lbWl0KXJldHVybiB2b2lkIGwuZGVmYXVsdC5lbWl0KCJ1bmNhdWdodEV4Y2VwdGlvbiIsZSk7Y29uc29sZS5lcnJvcihlKX0scm89W10scmk9MCxydT0wO2Z1bmN0aW9uIHJzKCl7Zm9yKHZhciBlPXJpLHQ9cnU9cmk9MDt0PGU7KXt2YXIgbj1yb1t0XTtyb1t0KytdPW51bGw7dmFyIHI9cm9bdF07cm9bdCsrXT1udWxsO3ZhciBsPXJvW3RdO3JvW3QrK109bnVsbDt2YXIgYT1yb1t0XTtpZihyb1t0KytdPW51bGwsbnVsbCE9PXImJm51bGwhPT1sKXt2YXIgbz1yLnBlbmRpbmc7bnVsbD09PW8/bC5uZXh0PWw6KGwubmV4dD1vLm5leHQsby5uZXh0PWwpLHIucGVuZGluZz1sfTAhPT1hJiZycChuLGwsYSl9fWZ1bmN0aW9uIHJjKGUsdCxuLHIpe3JvW3JpKytdPWUscm9bcmkrK109dCxyb1tyaSsrXT1uLHJvW3JpKytdPXIscnV8PXIsZS5sYW5lc3w9cixudWxsIT09KGU9ZS5hbHRlcm5hdGUpJiYoZS5sYW5lc3w9cil9ZnVuY3Rpb24gcmYoZSx0LG4scil7cmV0dXJuIHJjKGUsdCxuLHIpLHJtKGUpfWZ1bmN0aW9uIHJkKGUsdCl7cmV0dXJuIHJjKGUsbnVsbCxudWxsLHQpLHJtKGUpfWZ1bmN0aW9uIHJwKGUsdCxuKXtlLmxhbmVzfD1uO3ZhciByPWUuYWx0ZXJuYXRlO251bGwhPT1yJiYoci5sYW5lc3w9bik7Zm9yKHZhciBsPSExLGE9ZS5yZXR1cm47bnVsbCE9PWE7KWEuY2hpbGRMYW5lc3w9bixudWxsIT09KHI9YS5hbHRlcm5hdGUpJiYoci5jaGlsZExhbmVzfD1uKSwyMj09PWEudGFnJiYobnVsbD09PShlPWEuc3RhdGVOb2RlKXx8MSZlLl92aXNpYmlsaXR5fHwobD0hMCkpLGU9YSxhPWEucmV0dXJuO3JldHVybiAzPT09ZS50YWc/KGE9ZS5zdGF0ZU5vZGUsbCYmbnVsbCE9PXQmJihsPTMxLWVQKG4pLG51bGw9PT0ocj0oZT1hLmhpZGRlblVwZGF0ZXMpW2xdKT9lW2xdPVt0XTpyLnB1c2godCksdC5sYW5lPTB4MjAwMDAwMDB8biksYSk6bnVsbH1mdW5jdGlvbiBybShlKXtpZig1MDx1Mil0aHJvdyB1Mj0wLHUzPW51bGwsRXJyb3IodSgxODUpKTtmb3IodmFyIHQ9ZS5yZXR1cm47bnVsbCE9PXQ7KXQ9KGU9dCkucmV0dXJuO3JldHVybiAzPT09ZS50YWc/ZS5zdGF0ZU5vZGU6bnVsbH12YXIgcmg9e307ZnVuY3Rpb24gcmcoZSx0LG4scil7dGhpcy50YWc9ZSx0aGlzLmtleT1uLHRoaXMuc2libGluZz10aGlzLmNoaWxkPXRoaXMucmV0dXJuPXRoaXMuc3RhdGVOb2RlPXRoaXMudHlwZT10aGlzLmVsZW1lbnRUeXBlPW51bGwsdGhpcy5pbmRleD0wLHRoaXMucmVmQ2xlYW51cD10aGlzLnJlZj1udWxsLHRoaXMucGVuZGluZ1Byb3BzPXQsdGhpcy5kZXBlbmRlbmNpZXM9dGhpcy5tZW1vaXplZFN0YXRlPXRoaXMudXBkYXRlUXVldWU9dGhpcy5tZW1vaXplZFByb3BzPW51bGwsdGhpcy5tb2RlPXIsdGhpcy5zdWJ0cmVlRmxhZ3M9dGhpcy5mbGFncz0wLHRoaXMuZGVsZXRpb25zPW51bGwsdGhpcy5jaGlsZExhbmVzPXRoaXMubGFuZXM9MCx0aGlzLmFsdGVybmF0ZT1udWxsfWZ1bmN0aW9uIHJ2KGUsdCxuLHIpe3JldHVybiBuZXcgcmcoZSx0LG4scil9ZnVuY3Rpb24gcnkoZSl7cmV0dXJuISghKGU9ZS5wcm90b3R5cGUpfHwhZS5pc1JlYWN0Q29tcG9uZW50KX1mdW5jdGlvbiByYihlLHQpe3ZhciBuPWUuYWx0ZXJuYXRlO3JldHVybiBudWxsPT09bj8oKG49cnYoZS50YWcsdCxlLmtleSxlLm1vZGUpKS5lbGVtZW50VHlwZT1lLmVsZW1lbnRUeXBlLG4udHlwZT1lLnR5cGUsbi5zdGF0ZU5vZGU9ZS5zdGF0ZU5vZGUsbi5hbHRlcm5hdGU9ZSxlLmFsdGVybmF0ZT1uKToobi5wZW5kaW5nUHJvcHM9dCxuLnR5cGU9ZS50eXBlLG4uZmxhZ3M9MCxuLnN1YnRyZWVGbGFncz0wLG4uZGVsZXRpb25zPW51bGwpLG4uZmxhZ3M9MHg3ZTAwMDAwJmUuZmxhZ3Msbi5jaGlsZExhbmVzPWUuY2hpbGRMYW5lcyxuLmxhbmVzPWUubGFuZXMsbi5jaGlsZD1lLmNoaWxkLG4ubWVtb2l6ZWRQcm9wcz1lLm1lbW9pemVkUHJvcHMsbi5tZW1vaXplZFN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxuLnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsdD1lLmRlcGVuZGVuY2llcyxuLmRlcGVuZGVuY2llcz1udWxsPT09dD9udWxsOntsYW5lczp0LmxhbmVzLGZpcnN0Q29udGV4dDp0LmZpcnN0Q29udGV4dH0sbi5zaWJsaW5nPWUuc2libGluZyxuLmluZGV4PWUuaW5kZXgsbi5yZWY9ZS5yZWYsbi5yZWZDbGVhbnVwPWUucmVmQ2xlYW51cCxufWZ1bmN0aW9uIHJ3KGUsdCl7ZS5mbGFncyY9MHg3ZTAwMDAyO3ZhciBuPWUuYWx0ZXJuYXRlO3JldHVybiBudWxsPT09bj8oZS5jaGlsZExhbmVzPTAsZS5sYW5lcz10LGUuY2hpbGQ9bnVsbCxlLnN1YnRyZWVGbGFncz0wLGUubWVtb2l6ZWRQcm9wcz1udWxsLGUubWVtb2l6ZWRTdGF0ZT1udWxsLGUudXBkYXRlUXVldWU9bnVsbCxlLmRlcGVuZGVuY2llcz1udWxsLGUuc3RhdGVOb2RlPW51bGwpOihlLmNoaWxkTGFuZXM9bi5jaGlsZExhbmVzLGUubGFuZXM9bi5sYW5lcyxlLmNoaWxkPW4uY2hpbGQsZS5zdWJ0cmVlRmxhZ3M9MCxlLmRlbGV0aW9ucz1udWxsLGUubWVtb2l6ZWRQcm9wcz1uLm1lbW9pemVkUHJvcHMsZS5tZW1vaXplZFN0YXRlPW4ubWVtb2l6ZWRTdGF0ZSxlLnVwZGF0ZVF1ZXVlPW4udXBkYXRlUXVldWUsZS50eXBlPW4udHlwZSxlLmRlcGVuZGVuY2llcz1udWxsPT09KHQ9bi5kZXBlbmRlbmNpZXMpP251bGw6e2xhbmVzOnQubGFuZXMsZmlyc3RDb250ZXh0OnQuZmlyc3RDb250ZXh0fSksZX1mdW5jdGlvbiByayhlLHQsbixyLGwsYSl7dmFyIG89MDtpZihyPWUsImZ1bmN0aW9uIj09dHlwZW9mIGUpcnkoZSkmJihvPTEpO2Vsc2UgaWYoInN0cmluZyI9PXR5cGVvZiBlKW89IWZ1bmN0aW9uKGUsdCxuKXtpZigxPT09bnx8bnVsbCE9dC5pdGVtUHJvcClyZXR1cm4hMTtzd2l0Y2goZSl7Y2FzZSJtZXRhIjpjYXNlInRpdGxlIjpyZXR1cm4hMDtjYXNlInN0eWxlIjppZigic3RyaW5nIiE9dHlwZW9mIHQucHJlY2VkZW5jZXx8InN0cmluZyIhPXR5cGVvZiB0LmhyZWZ8fCIiPT09dC5ocmVmKWJyZWFrO3JldHVybiEwO2Nhc2UibGluayI6aWYoInN0cmluZyIhPXR5cGVvZiB0LnJlbHx8InN0cmluZyIhPXR5cGVvZiB0LmhyZWZ8fCIiPT09dC5ocmVmfHx0Lm9uTG9hZHx8dC5vbkVycm9yKWJyZWFrO2lmKCJzdHlsZXNoZWV0Ij09PXQucmVsKXJldHVybiBlPXQuZGlzYWJsZWQsInN0cmluZyI9PXR5cGVvZiB0LnByZWNlZGVuY2UmJm51bGw9PWU7cmV0dXJuITA7Y2FzZSJzY3JpcHQiOmlmKHQuYXN5bmMmJiJmdW5jdGlvbiIhPXR5cGVvZiB0LmFzeW5jJiYic3ltYm9sIiE9dHlwZW9mIHQuYXN5bmMmJiF0Lm9uTG9hZCYmIXQub25FcnJvciYmdC5zcmMmJiJzdHJpbmciPT10eXBlb2YgdC5zcmMpcmV0dXJuITB9cmV0dXJuITF9KGUsbixlZS5jdXJyZW50KT8iaHRtbCI9PT1lfHwiaGVhZCI9PT1lfHwiYm9keSI9PT1lPzI3OjU6MjY7ZWxzZSBlOnN3aXRjaChlKXtjYXNlIEE6cmV0dXJuKGU9cnYoMzEsbix0LGwpKS5lbGVtZW50VHlwZT1BLGUubGFuZXM9YSxlO2Nhc2UgQzpyZXR1cm4gclMobi5jaGlsZHJlbixsLGEsdCk7Y2FzZSBUOm89OCxsfD0yNDticmVhaztjYXNlIE86cmV0dXJuKGU9cnYoMTIsbix0LDJ8bCkpLmVsZW1lbnRUeXBlPU8sZS5sYW5lcz1hLGU7Y2FzZSBNOnJldHVybihlPXJ2KDEzLG4sdCxsKSkuZWxlbWVudFR5cGU9TSxlLmxhbmVzPWEsZTtjYXNlIEk6cmV0dXJuKGU9cnYoMTksbix0LGwpKS5lbGVtZW50VHlwZT1JLGUubGFuZXM9YSxlO2Nhc2UgajpjYXNlIEI6cmV0dXJuKGU9cnYoMzAsbix0LGU9MzJ8bCkpLmVsZW1lbnRUeXBlPUIsZS5sYW5lcz1hLGUuc3RhdGVOb2RlPXthdXRvTmFtZTpudWxsLHBhaXJlZDpudWxsLGNsb25lczpudWxsLHJlZjpudWxsfSxlO2RlZmF1bHQ6aWYoIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSlzd2l0Y2goZS4kJHR5cGVvZil7Y2FzZSBMOm89MTA7YnJlYWsgZTtjYXNlIHo6bz05O2JyZWFrIGU7Y2FzZSBSOm89MTE7YnJlYWsgZTtjYXNlIEQ6bz0xNDticmVhayBlO2Nhc2UgRjpvPTE2LHI9bnVsbDticmVhayBlfW89Mjksbj1FcnJvcih1KDEzMCxudWxsPT09ZT8ibnVsbCI6dHlwZW9mIGUsIiIpKSxyPW51bGx9cmV0dXJuKHQ9cnYobyxuLHQsbCkpLmVsZW1lbnRUeXBlPWUsdC50eXBlPXIsdC5sYW5lcz1hLHR9ZnVuY3Rpb24gclMoZSx0LG4scil7cmV0dXJuKGU9cnYoNyxlLHIsdCkpLmxhbmVzPW4sZX1mdW5jdGlvbiByRShlLHQsbil7cmV0dXJuKGU9cnYoNixlLG51bGwsdCkpLmxhbmVzPW4sZX1mdW5jdGlvbiByeChlKXt2YXIgdD1ydigxOCxudWxsLG51bGwsMCk7cmV0dXJuIHQuc3RhdGVOb2RlPWUsdH1mdW5jdGlvbiByXyhlLHQsbil7cmV0dXJuKHQ9cnYoNCxudWxsIT09ZS5jaGlsZHJlbj9lLmNoaWxkcmVuOltdLGUua2V5LHQpKS5sYW5lcz1uLHQuc3RhdGVOb2RlPXtjb250YWluZXJJbmZvOmUuY29udGFpbmVySW5mbyxwZW5kaW5nQ2hpbGRyZW46bnVsbCxpbXBsZW1lbnRhdGlvbjplLmltcGxlbWVudGF0aW9ufSx0fXZhciByUD1uZXcgV2Vha01hcDtmdW5jdGlvbiByTihlLHQpe2lmKCJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUpe3ZhciBuPXJQLmdldChlKTtyZXR1cm4gdm9pZCAwIT09bj9uOih0PXt2YWx1ZTplLHNvdXJjZTp0LHN0YWNrOmVmKHQpfSxyUC5zZXQoZSx0KSx0KX1yZXR1cm57dmFsdWU6ZSxzb3VyY2U6dCxzdGFjazplZih0KX19dmFyIHJDPVtdLHJUPTAsck89bnVsbCxyej0wLHJMPVtdLHJSPTAsck09bnVsbCxyST0xLHJEPSIiO2Z1bmN0aW9uIHJGKGUsdCl7ckNbclQrK109cnosckNbclQrK109ck8sck89ZSxyej10fWZ1bmN0aW9uIHJBKGUsdCxuKXtyTFtyUisrXT1ySSxyTFtyUisrXT1yRCxyTFtyUisrXT1yTSxyTT1lO3ZhciByPXJJO2U9ckQ7dmFyIGw9MzItZVAociktMTtyJj1+KDE8PGwpLG4rPTE7dmFyIGE9MzItZVAodCkrbDtpZigzMDxhKXt2YXIgbz1sLWwlNTthPShyJigxPDxvKS0xKS50b1N0cmluZygzMikscj4+PW8sbC09byxyST0xPDwzMi1lUCh0KStsfG48PGx8cixyRD1hK2V9ZWxzZSByST0xPDxhfG48PGx8cixyRD1lfWZ1bmN0aW9uIHJqKGUpe251bGwhPT1lLnJldHVybiYmKHJGKGUsMSksckEoZSwxLDApKX1mdW5jdGlvbiByVShlKXtmb3IoO2U9PT1yTzspck89ckNbLS1yVF0sckNbclRdPW51bGwscno9ckNbLS1yVF0sckNbclRdPW51bGw7Zm9yKDtlPT09ck07KXJNPXJMWy0tclJdLHJMW3JSXT1udWxsLHJEPXJMWy0tclJdLHJMW3JSXT1udWxsLHJJPXJMWy0tclJdLHJMW3JSXT1udWxsfWZ1bmN0aW9uIHJCKGUsdCl7ckxbclIrK109ckksckxbclIrK109ckQsckxbclIrK109ck0sckk9dC5pZCxyRD10Lm92ZXJmbG93LHJNPWV9dmFyIHJWPW51bGwsckg9bnVsbCxyJD0hMSxyUT1udWxsLHJXPSExLHJxPUVycm9yKHUoNTE5KSk7ZnVuY3Rpb24gcksoZSl7dmFyIHQ9RXJyb3IodSg0MTgsMTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0mJmFyZ3VtZW50c1sxXT8idGV4dCI6IkhUTUwiLCIiKSk7dGhyb3cgcjAock4odCxlKSkscnF9ZnVuY3Rpb24gclgoZSl7dmFyIHQ9ZS5zdGF0ZU5vZGUsbj1lLnR5cGUscj1lLm1lbW9pemVkUHJvcHM7c3dpdGNoKHRbZVddPWUsdFtlcV09cixuKXtjYXNlImRpYWxvZyI6c0ooImNhbmNlbCIsdCksc0ooImNsb3NlIix0KTticmVhaztjYXNlImlmcmFtZSI6Y2FzZSJvYmplY3QiOmNhc2UiZW1iZWQiOnNKKCJsb2FkIix0KTticmVhaztjYXNlInZpZGVvIjpjYXNlImF1ZGlvIjpmb3Iobj0wO248c1gubGVuZ3RoO24rKylzSihzWFtuXSx0KTticmVhaztjYXNlInNvdXJjZSI6c0ooImVycm9yIix0KTticmVhaztjYXNlImltZyI6Y2FzZSJpbWFnZSI6Y2FzZSJsaW5rIjpzSigiZXJyb3IiLHQpLHNKKCJsb2FkIix0KTticmVhaztjYXNlImRldGFpbHMiOnNKKCJ0b2dnbGUiLHQpO2JyZWFrO2Nhc2UiaW5wdXQiOnNKKCJpbnZhbGlkIix0KSx0Zyh0LHIudmFsdWUsci5kZWZhdWx0VmFsdWUsci5jaGVja2VkLHIuZGVmYXVsdENoZWNrZWQsci50eXBlLHIubmFtZSwhMCk7YnJlYWs7Y2FzZSJzZWxlY3QiOnNKKCJpbnZhbGlkIix0KTticmVhaztjYXNlInRleHRhcmVhIjpzSigiaW52YWxpZCIsdCksdHcodCxyLnZhbHVlLHIuZGVmYXVsdFZhbHVlLHIuY2hpbGRyZW4pfSJzdHJpbmciIT10eXBlb2Yobj1yLmNoaWxkcmVuKSYmIm51bWJlciIhPXR5cGVvZiBuJiYiYmlnaW50IiE9dHlwZW9mIG58fHQudGV4dENvbnRlbnQ9PT0iIitufHwhMD09PXIuc3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nfHxjdCh0LnRleHRDb250ZW50LG4pPyhudWxsIT1yLnBvcG92ZXImJihzSigiYmVmb3JldG9nZ2xlIix0KSxzSigidG9nZ2xlIix0KSksbnVsbCE9ci5vblNjcm9sbCYmc0ooInNjcm9sbCIsdCksbnVsbCE9ci5vblNjcm9sbEVuZCYmc0ooInNjcm9sbGVuZCIsdCksbnVsbCE9ci5vbkNsaWNrJiYodC5vbmNsaWNrPXRUKSx0PSEwKTp0PSExLHR8fHJLKGUsITApfWZ1bmN0aW9uIHJHKGUpe2ZvcihyVj1lLnJldHVybjtyVjspc3dpdGNoKHJWLnRhZyl7Y2FzZSA1OmNhc2UgMzE6Y2FzZSAxMzpyVz0hMTtyZXR1cm47Y2FzZSAyNzpjYXNlIDM6clc9ITA7cmV0dXJuO2RlZmF1bHQ6clY9clYucmV0dXJufX1mdW5jdGlvbiByWShlKXtpZihlIT09clYpcmV0dXJuITE7aWYoIXIkKXJldHVybiByRyhlKSxyJD0hMCwhMTt2YXIgdCxuPWUudGFnO2lmKCh0PTMhPT1uJiYyNyE9PW4pJiYoKHQ9NT09PW4pJiYodD0iZm9ybSI9PT0odD1lLnR5cGUpfHwiYnV0dG9uIj09PXR8fGNmKGUudHlwZSxlLm1lbW9pemVkUHJvcHMpKSx0PSF0KSx0JiZySCYmcksoZSksckcoZSksMTM9PT1uKXtpZighKGU9bnVsbCE9PShlPWUubWVtb2l6ZWRTdGF0ZSk/ZS5kZWh5ZHJhdGVkOm51bGwpKXRocm93IEVycm9yKHUoMzE3KSk7ckg9Y3EoZSl9ZWxzZSBpZigzMT09PW4pe2lmKCEoZT1udWxsIT09KGU9ZS5tZW1vaXplZFN0YXRlKT9lLmRlaHlkcmF0ZWQ6bnVsbCkpdGhyb3cgRXJyb3IodSgzMTcpKTtySD1jcShlKX1lbHNlIDI3PT09bj8obj1ySCxjeShlLnR5cGUpPyhlPWNXLGNXPW51bGwsckg9ZSk6ckg9bik6ckg9clY/Y1EoZS5zdGF0ZU5vZGUubmV4dFNpYmxpbmcpOm51bGw7cmV0dXJuITB9ZnVuY3Rpb24gckooKXtySD1yVj1udWxsLHIkPSExfWZ1bmN0aW9uIHJaKCl7dmFyIGU9clE7cmV0dXJuIG51bGwhPT1lJiYobnVsbD09PXVqP3VqPWU6dWoucHVzaC5hcHBseSh1aixlKSxyUT1udWxsKSxlfWZ1bmN0aW9uIHIwKGUpe251bGw9PT1yUT9yUT1bZV06clEucHVzaChlKX12YXIgcjE9WShudWxsKSxyMj1udWxsLHIzPW51bGw7ZnVuY3Rpb24gcjQoZSx0LG4pe1oocjEsdC5fY3VycmVudFZhbHVlKSx0Ll9jdXJyZW50VmFsdWU9bn1mdW5jdGlvbiByOChlKXtlLl9jdXJyZW50VmFsdWU9cjEuY3VycmVudCxKKHIxKX1mdW5jdGlvbiByNShlLHQsbil7Zm9yKDtudWxsIT09ZTspe3ZhciByPWUuYWx0ZXJuYXRlO2lmKChlLmNoaWxkTGFuZXMmdCkhPT10PyhlLmNoaWxkTGFuZXN8PXQsbnVsbCE9PXImJihyLmNoaWxkTGFuZXN8PXQpKTpudWxsIT09ciYmKHIuY2hpbGRMYW5lcyZ0KSE9PXQmJihyLmNoaWxkTGFuZXN8PXQpLGU9PT1uKWJyZWFrO2U9ZS5yZXR1cm59fWZ1bmN0aW9uIHI2KGUsdCxuLHIpe3ZhciBsPWUuY2hpbGQ7Zm9yKG51bGwhPT1sJiYobC5yZXR1cm49ZSk7bnVsbCE9PWw7KXt2YXIgYT1sLmRlcGVuZGVuY2llcztpZihudWxsIT09YSl7dmFyIG89bC5jaGlsZDthPWEuZmlyc3RDb250ZXh0O2U6Zm9yKDtudWxsIT09YTspe3ZhciBpPWE7YT1sO2Zvcih2YXIgcz0wO3M8dC5sZW5ndGg7cysrKWlmKGkuY29udGV4dD09PXRbc10pe2EubGFuZXN8PW4sbnVsbCE9PShpPWEuYWx0ZXJuYXRlKSYmKGkubGFuZXN8PW4pLHI1KGEucmV0dXJuLG4sZSkscnx8KG89bnVsbCk7YnJlYWsgZX1hPWkubmV4dH19ZWxzZSBpZigxOD09PWwudGFnKXtpZihudWxsPT09KG89bC5yZXR1cm4pKXRocm93IEVycm9yKHUoMzQxKSk7by5sYW5lc3w9bixudWxsIT09KGE9by5hbHRlcm5hdGUpJiYoYS5sYW5lc3w9bikscjUobyxuLGUpLG89bnVsbH1lbHNlIG89bC5jaGlsZDtpZihudWxsIT09bylvLnJldHVybj1sO2Vsc2UgZm9yKG89bDtudWxsIT09bzspe2lmKG89PT1lKXtvPW51bGw7YnJlYWt9aWYobnVsbCE9PShsPW8uc2libGluZykpe2wucmV0dXJuPW8ucmV0dXJuLG89bDticmVha31vPW8ucmV0dXJufWw9b319ZnVuY3Rpb24gcjkoZSx0LG4scil7ZT1udWxsO2Zvcih2YXIgbD10LGE9ITE7bnVsbCE9PWw7KXtpZighYSl7aWYoMCE9KDUyNDI4OCZsLmZsYWdzKSlhPSEwO2Vsc2UgaWYoMCE9KDI2MjE0NCZsLmZsYWdzKSlicmVha31pZigxMD09PWwudGFnKXt2YXIgbz1sLmFsdGVybmF0ZTtpZihudWxsPT09byl0aHJvdyBFcnJvcih1KDM4NykpO2lmKG51bGwhPT0obz1vLm1lbW9pemVkUHJvcHMpKXt2YXIgaT1sLnR5cGU7bkEobC5wZW5kaW5nUHJvcHMudmFsdWUsby52YWx1ZSl8fChudWxsIT09ZT9lLnB1c2goaSk6ZT1baV0pfX1lbHNlIGlmKGw9PT1lci5jdXJyZW50KXtpZihudWxsPT09KG89bC5hbHRlcm5hdGUpKXRocm93IEVycm9yKHUoMzg3KSk7by5tZW1vaXplZFN0YXRlLm1lbW9pemVkU3RhdGUhPT1sLm1lbW9pemVkU3RhdGUubWVtb2l6ZWRTdGF0ZSYmKG51bGwhPT1lP2UucHVzaChmdik6ZT1bZnZdKX1sPWwucmV0dXJufW51bGwhPT1lJiZyNih0LGUsbixyKSx0LmZsYWdzfD0yNjIxNDR9ZnVuY3Rpb24gcjcoZSl7Zm9yKGU9ZS5maXJzdENvbnRleHQ7bnVsbCE9PWU7KXtpZighbkEoZS5jb250ZXh0Ll9jdXJyZW50VmFsdWUsZS5tZW1vaXplZFZhbHVlKSlyZXR1cm4hMDtlPWUubmV4dH1yZXR1cm4hMX1mdW5jdGlvbiBsZShlKXtyMj1lLHIzPW51bGwsbnVsbCE9PShlPWUuZGVwZW5kZW5jaWVzKSYmKGUuZmlyc3RDb250ZXh0PW51bGwpfWZ1bmN0aW9uIGx0KGUpe3JldHVybiBscihyMixlKX1mdW5jdGlvbiBsbihlLHQpe3JldHVybiBudWxsPT09cjImJmxlKGUpLGxyKGUsdCl9ZnVuY3Rpb24gbHIoZSx0KXt2YXIgbj10Ll9jdXJyZW50VmFsdWU7aWYodD17Y29udGV4dDp0LG1lbW9pemVkVmFsdWU6bixuZXh0Om51bGx9LG51bGw9PT1yMyl7aWYobnVsbD09PWUpdGhyb3cgRXJyb3IodSgzMDgpKTtyMz10LGUuZGVwZW5kZW5jaWVzPXtsYW5lczowLGZpcnN0Q29udGV4dDp0fSxlLmZsYWdzfD01MjQyODh9ZWxzZSByMz1yMy5uZXh0PXQ7cmV0dXJuIG59dmFyIGxsPSJ1Ij50eXBlb2YgQWJvcnRDb250cm9sbGVyP0Fib3J0Q29udHJvbGxlcjpmdW5jdGlvbigpe3ZhciBlPVtdLHQ9dGhpcy5zaWduYWw9e2Fib3J0ZWQ6ITEsYWRkRXZlbnRMaXN0ZW5lcjpmdW5jdGlvbih0LG4pe2UucHVzaChuKX19O3RoaXMuYWJvcnQ9ZnVuY3Rpb24oKXt0LmFib3J0ZWQ9ITAsZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3JldHVybiBlKCl9KX19LGxhPWEudW5zdGFibGVfc2NoZWR1bGVDYWxsYmFjayxsbz1hLnVuc3RhYmxlX05vcm1hbFByaW9yaXR5LGxpPXskJHR5cGVvZjpMLENvbnN1bWVyOm51bGwsUHJvdmlkZXI6bnVsbCxfY3VycmVudFZhbHVlOm51bGwsX2N1cnJlbnRWYWx1ZTI6bnVsbCxfdGhyZWFkQ291bnQ6MH07ZnVuY3Rpb24gbHUoKXtyZXR1cm57Y29udHJvbGxlcjpuZXcgbGwsZGF0YTpuZXcgTWFwLHJlZkNvdW50OjB9fWZ1bmN0aW9uIGxzKGUpe2UucmVmQ291bnQtLSwwPT09ZS5yZWZDb3VudCYmbGEobG8sZnVuY3Rpb24oKXtlLmNvbnRyb2xsZXIuYWJvcnQoKX0pfWZ1bmN0aW9uIGxjKGUsdCl7aWYoMCE9KDQxOTQwNDgmZS5wZW5kaW5nTGFuZXMpKXt2YXIgbj1lLnRyYW5zaXRpb25UeXBlcztmb3IobnVsbD09PW4mJihuPWUudHJhbnNpdGlvblR5cGVzPVtdKSxlPTA7ZTx0Lmxlbmd0aDtlKyspe3ZhciByPXRbZV07LTE9PT1uLmluZGV4T2YocikmJm4ucHVzaChyKX19fXZhciBsZj1udWxsLGxkPW51bGwsbHA9MCxsbT0wLGxoPW51bGw7ZnVuY3Rpb24gbGcoKXtpZigwPT0tLWxwJiYobGY9bnVsbCxudWxsIT09bGQpKXtudWxsIT09bGgmJihsaC5zdGF0dXM9ImZ1bGZpbGxlZCIpO3ZhciBlPWxkO2xkPW51bGwsbG09MCxsaD1udWxsO2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKSgwLGVbdF0pKCl9fXZhciBsdj1XLlM7Vy5TPWZ1bmN0aW9uKGUsdCl7aWYodVY9ZXYoKSwib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10JiYiZnVuY3Rpb24iPT10eXBlb2YgdC50aGVuJiZmdW5jdGlvbihlLHQpe2lmKG51bGw9PT1sZCl7dmFyIG49bGQ9W107bHA9MCxsbT1zJCgpLGxoPXtzdGF0dXM6InBlbmRpbmciLHZhbHVlOnZvaWQgMCx0aGVuOmZ1bmN0aW9uKGUpe24ucHVzaChlKX19fWxwKyssdC50aGVuKGxnLGxnKX0oMCx0KSxudWxsIT09bGYpZm9yKHZhciBuPXN6O251bGwhPT1uOylsYyhuLGxmKSxuPW4ubmV4dDtpZihudWxsIT09KG49ZS50eXBlcykpe2Zvcih2YXIgcj1zejtudWxsIT09cjspbGMocixuKSxyPXIubmV4dDtpZigwIT09bG0pe251bGw9PT0ocj1sZikmJihyPWxmPVtdKTtmb3IodmFyIGw9MDtsPG4ubGVuZ3RoO2wrKyl7dmFyIGE9bltsXTstMT09PXIuaW5kZXhPZihhKSYmci5wdXNoKGEpfX19bnVsbCE9PWx2JiZsdihlLHQpfTt2YXIgbHk9WShudWxsKTtmdW5jdGlvbiBsYigpe3ZhciBlPWx5LmN1cnJlbnQ7cmV0dXJuIG51bGwhPT1lP2U6dUUucG9vbGVkQ2FjaGV9ZnVuY3Rpb24gbHcoZSx0KXtudWxsPT09dD9aKGx5LGx5LmN1cnJlbnQpOloobHksdC5wb29sKX1mdW5jdGlvbiBsaygpe3ZhciBlPWxiKCk7cmV0dXJuIG51bGw9PT1lP251bGw6e3BhcmVudDpsaS5fY3VycmVudFZhbHVlLHBvb2w6ZX19dmFyIGxTPUVycm9yKHUoNDYwKSksbEU9RXJyb3IodSg0NzQpKSxseD1FcnJvcih1KDU0MikpLGxfPXt0aGVuOmZ1bmN0aW9uKCl7fX07ZnVuY3Rpb24gbFAoZSl7cmV0dXJuImZ1bGZpbGxlZCI9PT0oZT1lLnN0YXR1cyl8fCJyZWplY3RlZCI9PT1lfWZ1bmN0aW9uIGxOKGUsdCxuKXtzd2l0Y2godm9pZCAwPT09KG49ZVtuXSk/ZS5wdXNoKHQpOm4hPT10JiYodC50aGVuKHRULHRUKSx0PW4pLHQuc3RhdHVzKXtjYXNlImZ1bGZpbGxlZCI6cmV0dXJuIHQudmFsdWU7Y2FzZSJyZWplY3RlZCI6dGhyb3cgbHooZT10LnJlYXNvbiksZTtkZWZhdWx0OmlmKCJzdHJpbmciPT10eXBlb2YgdC5zdGF0dXMpdC50aGVuKHRULHRUKTtlbHNle2lmKG51bGwhPT0oZT11RSkmJjEwMDxlLnNoZWxsU3VzcGVuZENvdW50ZXIpdGhyb3cgRXJyb3IodSg0ODIpKTsoZT10KS5zdGF0dXM9InBlbmRpbmciLGUudGhlbihmdW5jdGlvbihlKXtpZigicGVuZGluZyI9PT10LnN0YXR1cyl7dmFyIG49dDtuLnN0YXR1cz0iZnVsZmlsbGVkIixuLnZhbHVlPWV9fSxmdW5jdGlvbihlKXtpZigicGVuZGluZyI9PT10LnN0YXR1cyl7dmFyIG49dDtuLnN0YXR1cz0icmVqZWN0ZWQiLG4ucmVhc29uPWV9fSl9c3dpdGNoKHQuc3RhdHVzKXtjYXNlImZ1bGZpbGxlZCI6cmV0dXJuIHQudmFsdWU7Y2FzZSJyZWplY3RlZCI6dGhyb3cgbHooZT10LnJlYXNvbiksZX10aHJvdyBsVD10LGxTfX1mdW5jdGlvbiBsQyhlKXt0cnl7cmV0dXJuKDAsZS5faW5pdCkoZS5fcGF5bG9hZCl9Y2F0Y2goZSl7aWYobnVsbCE9PWUmJiJvYmplY3QiPT10eXBlb2YgZSYmImZ1bmN0aW9uIj09dHlwZW9mIGUudGhlbil0aHJvdyBsVD1lLGxTO3Rocm93IGV9fXZhciBsVD1udWxsO2Z1bmN0aW9uIGxPKCl7aWYobnVsbD09PWxUKXRocm93IEVycm9yKHUoNDU5KSk7dmFyIGU9bFQ7cmV0dXJuIGxUPW51bGwsZX1mdW5jdGlvbiBseihlKXtpZihlPT09bFN8fGU9PT1seCl0aHJvdyBFcnJvcih1KDQ4MykpfXZhciBsTD1udWxsLGxSPTA7ZnVuY3Rpb24gbE0oZSl7dmFyIHQ9bFI7cmV0dXJuIGxSKz0xLG51bGw9PT1sTCYmKGxMPVtdKSxsTihsTCxlLHQpfWZ1bmN0aW9uIGxJKGUsdCl7ZS5yZWY9dm9pZCAwIT09KHQ9dC5wcm9wcy5yZWYpP3Q6bnVsbH1mdW5jdGlvbiBsRChlLHQpe2lmKHQuJCR0eXBlb2Y9PT1fKXRocm93IEVycm9yKHUoNTI1KSk7dGhyb3cgRXJyb3IodSgzMSwiW29iamVjdCBPYmplY3RdIj09PShlPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KSk/Im9iamVjdCB3aXRoIGtleXMgeyIrT2JqZWN0LmtleXModCkuam9pbigiLCAiKSsifSI6ZSkpfWZ1bmN0aW9uIGxGKGUpe2Z1bmN0aW9uIHQodCxuKXtpZihlKXt2YXIgcj10LmRlbGV0aW9ucztudWxsPT09cj8odC5kZWxldGlvbnM9W25dLHQuZmxhZ3N8PTE2KTpyLnB1c2gobil9fWZ1bmN0aW9uIG4obixyKXtpZighZSlyZXR1cm4gbnVsbDtmb3IoO251bGwhPT1yOyl0KG4scikscj1yLnNpYmxpbmc7cmV0dXJuIG51bGx9ZnVuY3Rpb24gcihlKXtmb3IodmFyIHQ9bmV3IE1hcDtudWxsIT09ZTspbnVsbD09PWUua2V5P3Quc2V0KGUuaW5kZXgsZSk6dC5zZXQoZS5rZXksZSksZT1lLnNpYmxpbmc7cmV0dXJuIHR9ZnVuY3Rpb24gbChlLHQpe3JldHVybihlPXJiKGUsdCkpLmluZGV4PTAsZS5zaWJsaW5nPW51bGwsZX1mdW5jdGlvbiBhKHQsbixyKXtyZXR1cm4odC5pbmRleD1yLGUpP251bGwhPT0ocj10LmFsdGVybmF0ZSk/KHI9ci5pbmRleCk8bj8odC5mbGFnc3w9MHg4MDAwMDAyLG4pOnI6KHQuZmxhZ3N8PTB4ODAwMDAwMixuKToodC5mbGFnc3w9MTA0ODU3NixuKX1mdW5jdGlvbiBvKHQpe3JldHVybiBlJiZudWxsPT09dC5hbHRlcm5hdGUmJih0LmZsYWdzfD0weDgwMDAwMDIpLHR9ZnVuY3Rpb24gaShlLHQsbixyKXtyZXR1cm4gbnVsbD09PXR8fDYhPT10LnRhZz8odD1yRShuLGUubW9kZSxyKSkucmV0dXJuPWU6KHQ9bCh0LG4pKS5yZXR1cm49ZSx0fWZ1bmN0aW9uIHMoZSx0LG4scil7dmFyIGE9bi50eXBlO3JldHVybiBhPT09Qz8obEkoZT1mKGUsdCxuLnByb3BzLmNoaWxkcmVuLHIsbi5rZXkpLG4pLGUpOihudWxsIT09dCYmKHQuZWxlbWVudFR5cGU9PT1hfHwib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hJiZhLiQkdHlwZW9mPT09RiYmbEMoYSk9PT10LnR5cGUpP2xJKHQ9bCh0LG4ucHJvcHMpLG4pOmxJKHQ9cmsobi50eXBlLG4ua2V5LG4ucHJvcHMsbnVsbCxlLm1vZGUsciksbiksdC5yZXR1cm49ZSx0KX1mdW5jdGlvbiBjKGUsdCxuLHIpe3JldHVybiBudWxsPT09dHx8NCE9PXQudGFnfHx0LnN0YXRlTm9kZS5jb250YWluZXJJbmZvIT09bi5jb250YWluZXJJbmZvfHx0LnN0YXRlTm9kZS5pbXBsZW1lbnRhdGlvbiE9PW4uaW1wbGVtZW50YXRpb24/KHQ9cl8obixlLm1vZGUscikpLnJldHVybj1lOih0PWwodCxuLmNoaWxkcmVufHxbXSkpLnJldHVybj1lLHR9ZnVuY3Rpb24gZihlLHQsbixyLGEpe3JldHVybiBudWxsPT09dHx8NyE9PXQudGFnPyh0PXJTKG4sZS5tb2RlLHIsYSkpLnJldHVybj1lOih0PWwodCxuKSkucmV0dXJuPWUsdH1mdW5jdGlvbiBkKGUsdCxuKXtpZigic3RyaW5nIj09dHlwZW9mIHQmJiIiIT09dHx8Im51bWJlciI9PXR5cGVvZiB0fHwiYmlnaW50Ij09dHlwZW9mIHQpcmV0dXJuKHQ9ckUoIiIrdCxlLm1vZGUsbikpLnJldHVybj1lLHQ7aWYoIm9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT09dCl7c3dpdGNoKHQuJCR0eXBlb2Ype2Nhc2UgUDpyZXR1cm4gbEkobj1yayh0LnR5cGUsdC5rZXksdC5wcm9wcyxudWxsLGUubW9kZSxuKSx0KSxuLnJldHVybj1lLG47Y2FzZSBOOnJldHVybih0PXJfKHQsZS5tb2RlLG4pKS5yZXR1cm49ZSx0O2Nhc2UgRjpyZXR1cm4gZChlLHQ9bEModCksbil9aWYoUSh0KXx8SCh0KSlyZXR1cm4odD1yUyh0LGUubW9kZSxuLG51bGwpKS5yZXR1cm49ZSx0O2lmKCJmdW5jdGlvbiI9PXR5cGVvZiB0LnRoZW4pcmV0dXJuIGQoZSxsTSh0KSxuKTtpZih0LiQkdHlwZW9mPT09TClyZXR1cm4gZChlLGxuKGUsdCksbik7bEQoZSx0KX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBwKGUsdCxuLHIpe3ZhciBsPW51bGwhPT10P3Qua2V5Om51bGw7aWYoInN0cmluZyI9PXR5cGVvZiBuJiYiIiE9PW58fCJudW1iZXIiPT10eXBlb2Ygbnx8ImJpZ2ludCI9PXR5cGVvZiBuKXJldHVybiBudWxsIT09bD9udWxsOmkoZSx0LCIiK24scik7aWYoIm9iamVjdCI9PXR5cGVvZiBuJiZudWxsIT09bil7c3dpdGNoKG4uJCR0eXBlb2Ype2Nhc2UgUDpyZXR1cm4gbi5rZXk9PT1sP3MoZSx0LG4scik6bnVsbDtjYXNlIE46cmV0dXJuIG4ua2V5PT09bD9jKGUsdCxuLHIpOm51bGw7Y2FzZSBGOnJldHVybiBwKGUsdCxuPWxDKG4pLHIpfWlmKFEobil8fEgobikpcmV0dXJuIG51bGwhPT1sP251bGw6ZihlLHQsbixyLG51bGwpO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBuLnRoZW4pcmV0dXJuIHAoZSx0LGxNKG4pLHIpO2lmKG4uJCR0eXBlb2Y9PT1MKXJldHVybiBwKGUsdCxsbihlLG4pLHIpO2xEKGUsbil9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbShlLHQsbixyLGwpe2lmKCJzdHJpbmciPT10eXBlb2YgciYmIiIhPT1yfHwibnVtYmVyIj09dHlwZW9mIHJ8fCJiaWdpbnQiPT10eXBlb2YgcilyZXR1cm4gaSh0LGU9ZS5nZXQobil8fG51bGwsIiIrcixsKTtpZigib2JqZWN0Ij09dHlwZW9mIHImJm51bGwhPT1yKXtzd2l0Y2goci4kJHR5cGVvZil7Y2FzZSBQOnJldHVybiBzKHQsZT1lLmdldChudWxsPT09ci5rZXk/bjpyLmtleSl8fG51bGwscixsKTtjYXNlIE46cmV0dXJuIGModCxlPWUuZ2V0KG51bGw9PT1yLmtleT9uOnIua2V5KXx8bnVsbCxyLGwpO2Nhc2UgRjpyZXR1cm4gbShlLHQsbixyPWxDKHIpLGwpfWlmKFEocil8fEgocikpcmV0dXJuIGYodCxlPWUuZ2V0KG4pfHxudWxsLHIsbCxudWxsKTtpZigiZnVuY3Rpb24iPT10eXBlb2Ygci50aGVuKXJldHVybiBtKGUsdCxuLGxNKHIpLGwpO2lmKHIuJCR0eXBlb2Y9PT1MKXJldHVybiBtKGUsdCxuLGxuKHQsciksbCk7bEQodCxyKX1yZXR1cm4gbnVsbH1yZXR1cm4gZnVuY3Rpb24oaSxzLGMsZil7dHJ5e2xSPTA7dmFyIGg9ZnVuY3Rpb24gaShzLGMsZixoKXtpZigib2JqZWN0Ij09dHlwZW9mIGYmJm51bGwhPT1mJiZmLnR5cGU9PT1DJiZudWxsPT09Zi5rZXkmJnZvaWQgMD09PWYucHJvcHMucmVmJiYoZj1mLnByb3BzLmNoaWxkcmVuKSwib2JqZWN0Ij09dHlwZW9mIGYmJm51bGwhPT1mKXtzd2l0Y2goZi4kJHR5cGVvZil7Y2FzZSBQOmU6e2Zvcih2YXIgZz1mLmtleTtudWxsIT09Yzspe2lmKGMua2V5PT09Zyl7aWYoKGc9Zi50eXBlKT09PUMpe2lmKDc9PT1jLnRhZyl7bihzLGMuc2libGluZyksbEkoaD1sKGMsZi5wcm9wcy5jaGlsZHJlbiksZiksaC5yZXR1cm49cyxzPWg7YnJlYWsgZX19ZWxzZSBpZihjLmVsZW1lbnRUeXBlPT09Z3x8Im9iamVjdCI9PXR5cGVvZiBnJiZudWxsIT09ZyYmZy4kJHR5cGVvZj09PUYmJmxDKGcpPT09Yy50eXBlKXtuKHMsYy5zaWJsaW5nKSxsSShoPWwoYyxmLnByb3BzKSxmKSxoLnJldHVybj1zLHM9aDticmVhayBlfW4ocyxjKTticmVha310KHMsYyksYz1jLnNpYmxpbmd9Zi50eXBlPT09Qz9sSShoPXJTKGYucHJvcHMuY2hpbGRyZW4scy5tb2RlLGgsZi5rZXkpLGYpOmxJKGg9cmsoZi50eXBlLGYua2V5LGYucHJvcHMsbnVsbCxzLm1vZGUsaCksZiksaC5yZXR1cm49cyxzPWh9cmV0dXJuIG8ocyk7Y2FzZSBOOmU6e2ZvcihnPWYua2V5O251bGwhPT1jOyl7aWYoYy5rZXk9PT1nKWlmKDQ9PT1jLnRhZyYmYy5zdGF0ZU5vZGUuY29udGFpbmVySW5mbz09PWYuY29udGFpbmVySW5mbyYmYy5zdGF0ZU5vZGUuaW1wbGVtZW50YXRpb249PT1mLmltcGxlbWVudGF0aW9uKXtuKHMsYy5zaWJsaW5nKSwoaD1sKGMsZi5jaGlsZHJlbnx8W10pKS5yZXR1cm49cyxzPWg7YnJlYWsgZX1lbHNle24ocyxjKTticmVha310KHMsYyksYz1jLnNpYmxpbmd9KGg9cl8oZixzLm1vZGUsaCkpLnJldHVybj1zLHM9aH1yZXR1cm4gbyhzKTtjYXNlIEY6cmV0dXJuIGkocyxjLGY9bEMoZiksaCl9aWYoUShmKSlyZXR1cm4gZnVuY3Rpb24obCxvLGksdSl7Zm9yKHZhciBzPW51bGwsYz1udWxsLGY9byxoPW89MCxnPW51bGw7bnVsbCE9PWYmJmg8aS5sZW5ndGg7aCsrKXtmLmluZGV4Pmg/KGc9ZixmPW51bGwpOmc9Zi5zaWJsaW5nO3ZhciB2PXAobCxmLGlbaF0sdSk7aWYobnVsbD09PXYpe251bGw9PT1mJiYoZj1nKTticmVha31lJiZmJiZudWxsPT09di5hbHRlcm5hdGUmJnQobCxmKSxvPWEodixvLGgpLG51bGw9PT1jP3M9djpjLnNpYmxpbmc9dixjPXYsZj1nfWlmKGg9PT1pLmxlbmd0aClyZXR1cm4gbihsLGYpLHIkJiZyRihsLGgpLHM7aWYobnVsbD09PWYpe2Zvcig7aDxpLmxlbmd0aDtoKyspbnVsbCE9PShmPWQobCxpW2hdLHUpKSYmKG89YShmLG8saCksbnVsbD09PWM/cz1mOmMuc2libGluZz1mLGM9Zik7cmV0dXJuIHIkJiZyRihsLGgpLHN9Zm9yKGY9cihmKTtoPGkubGVuZ3RoO2grKyludWxsIT09KGc9bShmLGwsaCxpW2hdLHUpKSYmKGUmJm51bGwhPT0odj1nLmFsdGVybmF0ZSkmJmYuZGVsZXRlKG51bGw9PT12LmtleT9oOnYua2V5KSxvPWEoZyxvLGgpLG51bGw9PT1jP3M9ZzpjLnNpYmxpbmc9ZyxjPWcpO3JldHVybiBlJiZmLmZvckVhY2goZnVuY3Rpb24oZSl7cmV0dXJuIHQobCxlKX0pLHIkJiZyRihsLGgpLHN9KHMsYyxmLGgpO2lmKEgoZikpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZihnPUgoZikpKXRocm93IEVycm9yKHUoMTUwKSk7cmV0dXJuIGZ1bmN0aW9uKGwsbyxpLHMpe2lmKG51bGw9PWkpdGhyb3cgRXJyb3IodSgxNTEpKTtmb3IodmFyIGM9bnVsbCxmPW51bGwsaD1vLGc9bz0wLHY9bnVsbCx5PWkubmV4dCgpO251bGwhPT1oJiYheS5kb25lO2crKyx5PWkubmV4dCgpKXtoLmluZGV4Pmc/KHY9aCxoPW51bGwpOnY9aC5zaWJsaW5nO3ZhciBiPXAobCxoLHkudmFsdWUscyk7aWYobnVsbD09PWIpe251bGw9PT1oJiYoaD12KTticmVha31lJiZoJiZudWxsPT09Yi5hbHRlcm5hdGUmJnQobCxoKSxvPWEoYixvLGcpLG51bGw9PT1mP2M9YjpmLnNpYmxpbmc9YixmPWIsaD12fWlmKHkuZG9uZSlyZXR1cm4gbihsLGgpLHIkJiZyRihsLGcpLGM7aWYobnVsbD09PWgpe2Zvcig7IXkuZG9uZTtnKysseT1pLm5leHQoKSludWxsIT09KHk9ZChsLHkudmFsdWUscykpJiYobz1hKHksbyxnKSxudWxsPT09Zj9jPXk6Zi5zaWJsaW5nPXksZj15KTtyZXR1cm4gciQmJnJGKGwsZyksY31mb3IoaD1yKGgpOyF5LmRvbmU7ZysrLHk9aS5uZXh0KCkpbnVsbCE9PSh5PW0oaCxsLGcseS52YWx1ZSxzKSkmJihlJiZudWxsIT09KHY9eS5hbHRlcm5hdGUpJiZoLmRlbGV0ZShudWxsPT09di5rZXk/Zzp2LmtleSksbz1hKHksbyxnKSxudWxsPT09Zj9jPXk6Zi5zaWJsaW5nPXksZj15KTtyZXR1cm4gZSYmaC5mb3JFYWNoKGZ1bmN0aW9uKGUpe3JldHVybiB0KGwsZSl9KSxyJCYmckYobCxnKSxjfShzLGMsZj1nLmNhbGwoZiksaCl9aWYoImZ1bmN0aW9uIj09dHlwZW9mIGYudGhlbilyZXR1cm4gaShzLGMsbE0oZiksaCk7aWYoZi4kJHR5cGVvZj09PUwpcmV0dXJuIGkocyxjLGxuKHMsZiksaCk7bEQocyxmKX1yZXR1cm4ic3RyaW5nIj09dHlwZW9mIGYmJiIiIT09Znx8Im51bWJlciI9PXR5cGVvZiBmfHwiYmlnaW50Ij09dHlwZW9mIGY/KGY9IiIrZixudWxsIT09YyYmNj09PWMudGFnPyhuKHMsYy5zaWJsaW5nKSwoaD1sKGMsZikpLnJldHVybj1zKToobihzLGMpLChoPXJFKGYscy5tb2RlLGgpKS5yZXR1cm49cyksbyhzPWgpKTpuKHMsYyl9KGkscyxjLGYpO3JldHVybiBsTD1udWxsLGh9Y2F0Y2goZSl7aWYoZT09PWxTfHxlPT09bHgpdGhyb3cgZTt2YXIgZz1ydigyOSxlLG51bGwsaS5tb2RlKTtyZXR1cm4gZy5sYW5lcz1mLGcucmV0dXJuPWksZ31maW5hbGx5e319fXZhciBsQT1sRighMCksbGo9bEYoITEpLGxVPSExO2Z1bmN0aW9uIGxCKGUpe2UudXBkYXRlUXVldWU9e2Jhc2VTdGF0ZTplLm1lbW9pemVkU3RhdGUsZmlyc3RCYXNlVXBkYXRlOm51bGwsbGFzdEJhc2VVcGRhdGU6bnVsbCxzaGFyZWQ6e3BlbmRpbmc6bnVsbCxsYW5lczowLGhpZGRlbkNhbGxiYWNrczpudWxsfSxjYWxsYmFja3M6bnVsbH19ZnVuY3Rpb24gbFYoZSx0KXtlPWUudXBkYXRlUXVldWUsdC51cGRhdGVRdWV1ZT09PWUmJih0LnVwZGF0ZVF1ZXVlPXtiYXNlU3RhdGU6ZS5iYXNlU3RhdGUsZmlyc3RCYXNlVXBkYXRlOmUuZmlyc3RCYXNlVXBkYXRlLGxhc3RCYXNlVXBkYXRlOmUubGFzdEJhc2VVcGRhdGUsc2hhcmVkOmUuc2hhcmVkLGNhbGxiYWNrczpudWxsfSl9ZnVuY3Rpb24gbEgoZSl7cmV0dXJue2xhbmU6ZSx0YWc6MCxwYXlsb2FkOm51bGwsY2FsbGJhY2s6bnVsbCxuZXh0Om51bGx9fWZ1bmN0aW9uIGwkKGUsdCxuKXt2YXIgcj1lLnVwZGF0ZVF1ZXVlO2lmKG51bGw9PT1yKXJldHVybiBudWxsO2lmKHI9ci5zaGFyZWQsMCE9KDImdVMpKXt2YXIgbD1yLnBlbmRpbmc7cmV0dXJuIG51bGw9PT1sP3QubmV4dD10Oih0Lm5leHQ9bC5uZXh0LGwubmV4dD10KSxyLnBlbmRpbmc9dCx0PXJtKGUpLHJwKGUsbnVsbCxuKSx0fXJldHVybiByYyhlLHIsdCxuKSxybShlKX1mdW5jdGlvbiBsUShlLHQsbil7aWYobnVsbCE9PSh0PXQudXBkYXRlUXVldWUpJiYodD10LnNoYXJlZCwwIT0oNDE5NDA0OCZuKSkpe3ZhciByPXQubGFuZXM7ciY9ZS5wZW5kaW5nTGFuZXMsbnw9cix0LmxhbmVzPW4sZWooZSxuKX19ZnVuY3Rpb24gbFcoZSx0KXt2YXIgbj1lLnVwZGF0ZVF1ZXVlLHI9ZS5hbHRlcm5hdGU7aWYobnVsbCE9PXImJm49PT0ocj1yLnVwZGF0ZVF1ZXVlKSl7dmFyIGw9bnVsbCxhPW51bGw7aWYobnVsbCE9PShuPW4uZmlyc3RCYXNlVXBkYXRlKSl7ZG97dmFyIG89e2xhbmU6bi5sYW5lLHRhZzpuLnRhZyxwYXlsb2FkOm4ucGF5bG9hZCxjYWxsYmFjazpudWxsLG5leHQ6bnVsbH07bnVsbD09PWE/bD1hPW86YT1hLm5leHQ9byxuPW4ubmV4dH13aGlsZShudWxsIT09biludWxsPT09YT9sPWE9dDphPWEubmV4dD10fWVsc2UgbD1hPXQ7bj17YmFzZVN0YXRlOnIuYmFzZVN0YXRlLGZpcnN0QmFzZVVwZGF0ZTpsLGxhc3RCYXNlVXBkYXRlOmEsc2hhcmVkOnIuc2hhcmVkLGNhbGxiYWNrczpyLmNhbGxiYWNrc30sZS51cGRhdGVRdWV1ZT1uO3JldHVybn1udWxsPT09KGU9bi5sYXN0QmFzZVVwZGF0ZSk/bi5maXJzdEJhc2VVcGRhdGU9dDplLm5leHQ9dCxuLmxhc3RCYXNlVXBkYXRlPXR9dmFyIGxxPSExO2Z1bmN0aW9uIGxLKCl7aWYobHEpe3ZhciBlPWxoO2lmKG51bGwhPT1lKXRocm93IGV9fWZ1bmN0aW9uIGxYKGUsdCxuLHIpe2xxPSExO3ZhciBsPWUudXBkYXRlUXVldWU7bFU9ITE7dmFyIGE9bC5maXJzdEJhc2VVcGRhdGUsbz1sLmxhc3RCYXNlVXBkYXRlLGk9bC5zaGFyZWQucGVuZGluZztpZihudWxsIT09aSl7bC5zaGFyZWQucGVuZGluZz1udWxsO3ZhciB1PWkscz11Lm5leHQ7dS5uZXh0PW51bGwsbnVsbD09PW8/YT1zOm8ubmV4dD1zLG89dTt2YXIgYz1lLmFsdGVybmF0ZTtudWxsIT09YyYmKGk9KGM9Yy51cGRhdGVRdWV1ZSkubGFzdEJhc2VVcGRhdGUpIT09byYmKG51bGw9PT1pP2MuZmlyc3RCYXNlVXBkYXRlPXM6aS5uZXh0PXMsYy5sYXN0QmFzZVVwZGF0ZT11KX1pZihudWxsIT09YSl7dmFyIGY9bC5iYXNlU3RhdGU7Zm9yKG89MCxjPXM9dT1udWxsLGk9YTs7KXt2YXIgZD0tMHgyMDAwMDAwMSZpLmxhbmUscD1kIT09aS5sYW5lO2lmKHA/KHVfJmQpPT09ZDoociZkKT09PWQpezAhPT1kJiZkPT09bG0mJihscT0hMCksbnVsbCE9PWMmJihjPWMubmV4dD17bGFuZTowLHRhZzppLnRhZyxwYXlsb2FkOmkucGF5bG9hZCxjYWxsYmFjazpudWxsLG5leHQ6bnVsbH0pO2U6e3ZhciBtPWUsaD1pO3N3aXRjaChkPXQsaC50YWcpe2Nhc2UgMTppZigiZnVuY3Rpb24iPT10eXBlb2YobT1oLnBheWxvYWQpKXtmPW0uY2FsbChuLGYsZCk7YnJlYWsgZX1mPW07YnJlYWsgZTtjYXNlIDM6bS5mbGFncz0tNjU1MzcmbS5mbGFnc3wxMjg7Y2FzZSAwOmlmKG51bGw9PShkPSJmdW5jdGlvbiI9PXR5cGVvZihtPWgucGF5bG9hZCk/bS5jYWxsKG4sZixkKTptKSlicmVhayBlO2Y9eCh7fSxmLGQpO2JyZWFrIGU7Y2FzZSAyOmxVPSEwfX1udWxsIT09KGQ9aS5jYWxsYmFjaykmJihlLmZsYWdzfD02NCxwJiYoZS5mbGFnc3w9ODE5MiksbnVsbD09PShwPWwuY2FsbGJhY2tzKT9sLmNhbGxiYWNrcz1bZF06cC5wdXNoKGQpKX1lbHNlIHA9e2xhbmU6ZCx0YWc6aS50YWcscGF5bG9hZDppLnBheWxvYWQsY2FsbGJhY2s6aS5jYWxsYmFjayxuZXh0Om51bGx9LG51bGw9PT1jPyhzPWM9cCx1PWYpOmM9Yy5uZXh0PXAsb3w9ZDtpZihudWxsPT09KGk9aS5uZXh0KSlpZihudWxsPT09KGk9bC5zaGFyZWQucGVuZGluZykpYnJlYWs7ZWxzZSBpPShwPWkpLm5leHQscC5uZXh0PW51bGwsbC5sYXN0QmFzZVVwZGF0ZT1wLGwuc2hhcmVkLnBlbmRpbmc9bnVsbH1udWxsPT09YyYmKHU9ZiksbC5iYXNlU3RhdGU9dSxsLmZpcnN0QmFzZVVwZGF0ZT1zLGwubGFzdEJhc2VVcGRhdGU9YyxudWxsPT09YSYmKGwuc2hhcmVkLmxhbmVzPTApLHVSfD1vLGUubGFuZXM9byxlLm1lbW9pemVkU3RhdGU9Zn19ZnVuY3Rpb24gbEcoZSx0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSl0aHJvdyBFcnJvcih1KDE5MSxlKSk7ZS5jYWxsKHQpfWZ1bmN0aW9uIGxZKGUsdCl7dmFyIG49ZS5jYWxsYmFja3M7aWYobnVsbCE9PW4pZm9yKGUuY2FsbGJhY2tzPW51bGwsZT0wO2U8bi5sZW5ndGg7ZSsrKWxHKG5bZV0sdCl9dmFyIGxKPVkobnVsbCksbFo9WSgwKTtmdW5jdGlvbiBsMChlLHQpe1oobFosZT11eiksWihsSix0KSx1ej1lfHQuYmFzZUxhbmVzfWZ1bmN0aW9uIGwxKCl7WihsWix1eiksWihsSixsSi5jdXJyZW50KX1mdW5jdGlvbiBsMigpe3V6PWxaLmN1cnJlbnQsSihsSiksSihsWil9dmFyIGwzPVkobnVsbCksbDQ9bnVsbDtmdW5jdGlvbiBsOChlKXt2YXIgdD1lLmFsdGVybmF0ZTtaKGFlLDEmYWUuY3VycmVudCksWihsMyxlKSxudWxsPT09bDQmJihudWxsPT09dHx8bnVsbCE9PWxKLmN1cnJlbnQ/bDQ9ZTpudWxsIT09dC5tZW1vaXplZFN0YXRlJiYobDQ9ZSkpfWZ1bmN0aW9uIGw1KGUpe1ooYWUsYWUuY3VycmVudCksWihsMyxlKSxudWxsPT09bDQmJihsND1lKX1mdW5jdGlvbiBsNihlKXsyMj09PWUudGFnPyhaKGFlLGFlLmN1cnJlbnQpLFoobDMsZSksbnVsbD09PWw0JiYobDQ9ZSkpOmw5KCl9ZnVuY3Rpb24gbDkoKXtaKGFlLGFlLmN1cnJlbnQpLFoobDMsbDMuY3VycmVudCl9ZnVuY3Rpb24gbDcoZSl7SihsMyksbDQ9PT1lJiYobDQ9bnVsbCksSihhZSl9dmFyIGFlPVkoMCk7ZnVuY3Rpb24gYXQoZSx0KXtaKGwzLGwzLmN1cnJlbnQpLFooYWUsdCl9ZnVuY3Rpb24gYW4oZSl7SihhZSksSihsMyksbDQ9PT1lJiYobDQ9bnVsbCl9ZnVuY3Rpb24gYXIoZSl7Zm9yKHZhciB0PWU7bnVsbCE9PXQ7KXtpZigxMz09PXQudGFnKXt2YXIgbj10Lm1lbW9pemVkU3RhdGU7aWYobnVsbCE9PW4mJihudWxsPT09KG49bi5kZWh5ZHJhdGVkKXx8Y0gobil8fGMkKG4pKSlyZXR1cm4gdH1lbHNlIGlmKDE5PT09dC50YWcmJiJpbmRlcGVuZGVudCIhPT10Lm1lbW9pemVkUHJvcHMucmV2ZWFsT3JkZXIpe2lmKDAhPSgxMjgmdC5mbGFncykpcmV0dXJuIHR9ZWxzZSBpZihudWxsIT09dC5jaGlsZCl7dC5jaGlsZC5yZXR1cm49dCx0PXQuY2hpbGQ7Y29udGludWV9aWYodD09PWUpYnJlYWs7Zm9yKDtudWxsPT09dC5zaWJsaW5nOyl7aWYobnVsbD09PXQucmV0dXJufHx0LnJldHVybj09PWUpcmV0dXJuIG51bGw7dD10LnJldHVybn10LnNpYmxpbmcucmV0dXJuPXQucmV0dXJuLHQ9dC5zaWJsaW5nfXJldHVybiBudWxsfXZhciBhbD0wLGFhPW51bGwsYW89bnVsbCxhaT1udWxsLGF1PSExLGFzPSExLGFjPSExLGFmPTAsYWQ9MCxhcD1udWxsLGFtPTA7ZnVuY3Rpb24gYWgoKXt0aHJvdyBFcnJvcih1KDMyMSkpfWZ1bmN0aW9uIGFnKGUsdCl7aWYobnVsbD09PXQpcmV0dXJuITE7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aCYmbjxlLmxlbmd0aDtuKyspaWYoIW5BKGVbbl0sdFtuXSkpcmV0dXJuITE7cmV0dXJuITB9ZnVuY3Rpb24gYXYoZSx0LG4scixsLGEpe3JldHVybiBhbD1hLGFhPXQsdC5tZW1vaXplZFN0YXRlPW51bGwsdC51cGRhdGVRdWV1ZT1udWxsLHQubGFuZXM9MCxXLkg9bnVsbD09PWV8fG51bGw9PT1lLm1lbW9pemVkU3RhdGU/b0U6b3gsYWM9ITEsYT1uKHIsbCksYWM9ITEsYXMmJihhPWFiKHQsbixyLGwpKSxheShlKSxhfWZ1bmN0aW9uIGF5KGUpe1cuSD1vUzt2YXIgdD1udWxsIT09YW8mJm51bGwhPT1hby5uZXh0O2lmKGFsPTAsYWk9YW89YWE9bnVsbCxhdT0hMSxhZD0wLGFwPW51bGwsdCl0aHJvdyBFcnJvcih1KDMwMCkpO251bGw9PT1lfHxvVXx8bnVsbCE9PShlPWUuZGVwZW5kZW5jaWVzKSYmcjcoZSkmJihvVT0hMCl9ZnVuY3Rpb24gYWIoZSx0LG4scil7YWE9ZTt2YXIgbD0wO2Rve2lmKGFzJiYoYXA9bnVsbCksYWQ9MCxhcz0hMSwyNTw9bCl0aHJvdyBFcnJvcih1KDMwMSkpO2lmKGwrPTEsYWk9YW89bnVsbCxudWxsIT1lLnVwZGF0ZVF1ZXVlKXt2YXIgYT1lLnVwZGF0ZVF1ZXVlO2EubGFzdEVmZmVjdD1udWxsLGEuZXZlbnRzPW51bGwsYS5zdG9yZXM9bnVsbCxudWxsIT1hLm1lbW9DYWNoZSYmKGEubWVtb0NhY2hlLmluZGV4PTApfVcuSD1vXyxhPXQobixyKX13aGlsZShhcylyZXR1cm4gYX1mdW5jdGlvbiBhdygpe3ZhciBlPVcuSCx0PWUudXNlU3RhdGUoKVswXTtyZXR1cm4gdD0iZnVuY3Rpb24iPT10eXBlb2YgdC50aGVuP2FOKHQpOnQsZT1lLnVzZVN0YXRlKClbMF0sKG51bGwhPT1hbz9hby5tZW1vaXplZFN0YXRlOm51bGwpIT09ZSYmKGFhLmZsYWdzfD0xMDI0KSx0fWZ1bmN0aW9uIGFrKCl7dmFyIGU9MCE9PWFmO3JldHVybiBhZj0wLGV9ZnVuY3Rpb24gYVMoZSx0LG4pe3QudXBkYXRlUXVldWU9ZS51cGRhdGVRdWV1ZSx0LmZsYWdzJj0tMjA1MyxlLmxhbmVzJj1+bn1mdW5jdGlvbiBhRShlKXtpZihhdSl7Zm9yKGU9ZS5tZW1vaXplZFN0YXRlO251bGwhPT1lOyl7dmFyIHQ9ZS5xdWV1ZTtudWxsIT09dCYmKHQucGVuZGluZz1udWxsKSxlPWUubmV4dH1hdT0hMX1hbD0wLGFpPWFvPWFhPW51bGwsYXM9ITEsYWQ9YWY9MCxhcD1udWxsfWZ1bmN0aW9uIGF4KCl7dmFyIGU9e21lbW9pemVkU3RhdGU6bnVsbCxiYXNlU3RhdGU6bnVsbCxiYXNlUXVldWU6bnVsbCxxdWV1ZTpudWxsLG5leHQ6bnVsbH07cmV0dXJuIG51bGw9PT1haT9hYS5tZW1vaXplZFN0YXRlPWFpPWU6YWk9YWkubmV4dD1lLGFpfWZ1bmN0aW9uIGFfKCl7aWYobnVsbD09PWFvKXt2YXIgZT1hYS5hbHRlcm5hdGU7ZT1udWxsIT09ZT9lLm1lbW9pemVkU3RhdGU6bnVsbH1lbHNlIGU9YW8ubmV4dDt2YXIgdD1udWxsPT09YWk/YWEubWVtb2l6ZWRTdGF0ZTphaS5uZXh0O2lmKG51bGwhPT10KWFpPXQsYW89ZTtlbHNle2lmKG51bGw9PT1lKXtpZihudWxsPT09YWEuYWx0ZXJuYXRlKXRocm93IEVycm9yKHUoNDY3KSk7dGhyb3cgRXJyb3IodSgzMTApKX1lPXttZW1vaXplZFN0YXRlOihhbz1lKS5tZW1vaXplZFN0YXRlLGJhc2VTdGF0ZTphby5iYXNlU3RhdGUsYmFzZVF1ZXVlOmFvLmJhc2VRdWV1ZSxxdWV1ZTphby5xdWV1ZSxuZXh0Om51bGx9LG51bGw9PT1haT9hYS5tZW1vaXplZFN0YXRlPWFpPWU6YWk9YWkubmV4dD1lfXJldHVybiBhaX1mdW5jdGlvbiBhUCgpe3JldHVybntsYXN0RWZmZWN0Om51bGwsZXZlbnRzOm51bGwsc3RvcmVzOm51bGwsbWVtb0NhY2hlOm51bGx9fWZ1bmN0aW9uIGFOKGUpe3ZhciB0PWFkO3JldHVybiBhZCs9MSxudWxsPT09YXAmJihhcD1bXSksZT1sTihhcCxlLHQpLHQ9YWEsbnVsbD09PShudWxsPT09YWk/dC5tZW1vaXplZFN0YXRlOmFpLm5leHQpJiYoVy5IPW51bGw9PT0odD10LmFsdGVybmF0ZSl8fG51bGw9PT10Lm1lbW9pemVkU3RhdGU/b0U6b3gpLGV9ZnVuY3Rpb24gYUMoZSl7aWYobnVsbCE9PWUmJiJvYmplY3QiPT10eXBlb2YgZSl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUudGhlbilyZXR1cm4gYU4oZSk7aWYoZS4kJHR5cGVvZj09PUwpcmV0dXJuIGx0KGUpfXRocm93IEVycm9yKHUoNDM4LFN0cmluZyhlKSkpfWZ1bmN0aW9uIGFUKGUpe3ZhciB0PW51bGwsbj1hYS51cGRhdGVRdWV1ZTtpZihudWxsIT09biYmKHQ9bi5tZW1vQ2FjaGUpLG51bGw9PXQpe3ZhciByPWFhLmFsdGVybmF0ZTtudWxsIT09ciYmbnVsbCE9PShyPXIudXBkYXRlUXVldWUpJiZudWxsIT0ocj1yLm1lbW9DYWNoZSkmJih0PXtkYXRhOnIuZGF0YS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIGUuc2xpY2UoKX0pLGluZGV4OjB9KX1pZihudWxsPT10JiYodD17ZGF0YTpbXSxpbmRleDowfSksbnVsbD09PW4mJihuPWFQKCksYWEudXBkYXRlUXVldWU9biksbi5tZW1vQ2FjaGU9dCx2b2lkIDA9PT0obj10LmRhdGFbdC5pbmRleF0pKWZvcihuPXQuZGF0YVt0LmluZGV4XT1BcnJheShlKSxyPTA7cjxlO3IrKyluW3JdPVU7cmV0dXJuIHQuaW5kZXgrKyxufWZ1bmN0aW9uIGFPKGUsdCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHQ/dChlKTp0fWZ1bmN0aW9uIGF6KGUpe3JldHVybiBhTChhXygpLGFvLGUpfWZ1bmN0aW9uIGFMKGUsdCxuKXt2YXIgcj1lLnF1ZXVlO2lmKG51bGw9PT1yKXRocm93IEVycm9yKHUoMzExKSk7ci5sYXN0UmVuZGVyZWRSZWR1Y2VyPW47dmFyIGw9ZS5iYXNlUXVldWUsYT1yLnBlbmRpbmc7aWYobnVsbCE9PWEpe2lmKG51bGwhPT1sKXt2YXIgbz1sLm5leHQ7bC5uZXh0PWEubmV4dCxhLm5leHQ9b310LmJhc2VRdWV1ZT1sPWEsci5wZW5kaW5nPW51bGx9aWYoYT1lLmJhc2VTdGF0ZSxudWxsPT09bCllLm1lbW9pemVkU3RhdGU9YTtlbHNle3Q9bC5uZXh0O3ZhciBpPW89bnVsbCxzPW51bGwsYz10LGY9ITE7ZG97dmFyIGQ9LTB4MjAwMDAwMDEmYy5sYW5lO2lmKGQhPT1jLmxhbmU/KHVfJmQpPT09ZDooYWwmZCk9PT1kKXt2YXIgcD1jLnJldmVydExhbmU7aWYoMD09PXApbnVsbCE9PXMmJihzPXMubmV4dD17bGFuZTowLHJldmVydExhbmU6MCxnZXN0dXJlOm51bGwsYWN0aW9uOmMuYWN0aW9uLGhhc0VhZ2VyU3RhdGU6Yy5oYXNFYWdlclN0YXRlLGVhZ2VyU3RhdGU6Yy5lYWdlclN0YXRlLG5leHQ6bnVsbH0pLGQ9PT1sbSYmKGY9ITApO2Vsc2UgaWYoKGFsJnApPT09cCl7Yz1jLm5leHQscD09PWxtJiYoZj0hMCk7Y29udGludWV9ZWxzZSBkPXtsYW5lOjAscmV2ZXJ0TGFuZTpjLnJldmVydExhbmUsZ2VzdHVyZTpudWxsLGFjdGlvbjpjLmFjdGlvbixoYXNFYWdlclN0YXRlOmMuaGFzRWFnZXJTdGF0ZSxlYWdlclN0YXRlOmMuZWFnZXJTdGF0ZSxuZXh0Om51bGx9LG51bGw9PT1zPyhpPXM9ZCxvPWEpOnM9cy5uZXh0PWQsYWEubGFuZXN8PXAsdVJ8PXA7ZD1jLmFjdGlvbixhYyYmbihhLGQpLGE9Yy5oYXNFYWdlclN0YXRlP2MuZWFnZXJTdGF0ZTpuKGEsZCl9ZWxzZSBwPXtsYW5lOmQscmV2ZXJ0TGFuZTpjLnJldmVydExhbmUsZ2VzdHVyZTpjLmdlc3R1cmUsYWN0aW9uOmMuYWN0aW9uLGhhc0VhZ2VyU3RhdGU6Yy5oYXNFYWdlclN0YXRlLGVhZ2VyU3RhdGU6Yy5lYWdlclN0YXRlLG5leHQ6bnVsbH0sbnVsbD09PXM/KGk9cz1wLG89YSk6cz1zLm5leHQ9cCxhYS5sYW5lc3w9ZCx1Unw9ZDtjPWMubmV4dH13aGlsZShudWxsIT09YyYmYyE9PXQpaWYobnVsbD09PXM/bz1hOnMubmV4dD1pLCFuQShhLGUubWVtb2l6ZWRTdGF0ZSkmJihvVT0hMCxmJiZudWxsIT09KG49bGgpKSl0aHJvdyBuO2UubWVtb2l6ZWRTdGF0ZT1hLGUuYmFzZVN0YXRlPW8sZS5iYXNlUXVldWU9cyxyLmxhc3RSZW5kZXJlZFN0YXRlPWF9cmV0dXJuIG51bGw9PT1sJiYoci5sYW5lcz0wKSxbZS5tZW1vaXplZFN0YXRlLHIuZGlzcGF0Y2hdfWZ1bmN0aW9uIGFSKGUpe3ZhciB0PWFfKCksbj10LnF1ZXVlO2lmKG51bGw9PT1uKXRocm93IEVycm9yKHUoMzExKSk7bi5sYXN0UmVuZGVyZWRSZWR1Y2VyPWU7dmFyIHI9bi5kaXNwYXRjaCxsPW4ucGVuZGluZyxhPXQubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09bCl7bi5wZW5kaW5nPW51bGw7dmFyIG89bD1sLm5leHQ7ZG8gYT1lKGEsby5hY3Rpb24pLG89by5uZXh0O3doaWxlKG8hPT1sKW5BKGEsdC5tZW1vaXplZFN0YXRlKXx8KG9VPSEwKSx0Lm1lbW9pemVkU3RhdGU9YSxudWxsPT09dC5iYXNlUXVldWUmJih0LmJhc2VTdGF0ZT1hKSxuLmxhc3RSZW5kZXJlZFN0YXRlPWF9cmV0dXJuW2Escl19ZnVuY3Rpb24gYU0oZSx0LG4pe3ZhciByPWFhLGw9YV8oKSxhPXIkO2lmKGEpe2lmKHZvaWQgMD09PW4pdGhyb3cgRXJyb3IodSg0MDcpKTtuPW4oKX1lbHNlIG49dCgpO3ZhciBvPSFuQSgoYW98fGwpLm1lbW9pemVkU3RhdGUsbik7aWYobyYmKGwubWVtb2l6ZWRTdGF0ZT1uLG9VPSEwKSxsPWwucXVldWUsYTgoYUYuYmluZChudWxsLHIsbCxlKSxbZV0pLGwuZ2V0U25hcHNob3QhPT10fHxvfHxudWxsIT09YWkmJjEmYWkubWVtb2l6ZWRTdGF0ZS50YWcpe2lmKHIuZmxhZ3N8PTIwNDgsYTAoOSx7ZGVzdHJveTp2b2lkIDB9LGFELmJpbmQobnVsbCxyLGwsbix0KSxudWxsKSxudWxsPT09dUUpdGhyb3cgRXJyb3IodSgzNDkpKTthfHwwIT0oMTI3JmFsKXx8YUkocix0LG4pfXJldHVybiBufWZ1bmN0aW9uIGFJKGUsdCxuKXtlLmZsYWdzfD0xNjM4NCxlPXtnZXRTbmFwc2hvdDp0LHZhbHVlOm59LG51bGw9PT0odD1hYS51cGRhdGVRdWV1ZSk/KHQ9YVAoKSxhYS51cGRhdGVRdWV1ZT10LHQuc3RvcmVzPVtlXSk6bnVsbD09PShuPXQuc3RvcmVzKT90LnN0b3Jlcz1bZV06bi5wdXNoKGUpfWZ1bmN0aW9uIGFEKGUsdCxuLHIpe3QudmFsdWU9bix0LmdldFNuYXBzaG90PXIsYUEodCkmJmFqKGUpfWZ1bmN0aW9uIGFGKGUsdCxuKXtyZXR1cm4gbihmdW5jdGlvbigpe2FBKHQpJiZhaihlKX0pfWZ1bmN0aW9uIGFBKGUpe3ZhciB0PWUuZ2V0U25hcHNob3Q7ZT1lLnZhbHVlO3RyeXt2YXIgbj10KCk7cmV0dXJuIW5BKGUsbil9Y2F0Y2goZSl7cmV0dXJuITB9fWZ1bmN0aW9uIGFqKGUpe3ZhciB0PXJkKGUsMik7bnVsbCE9PXQmJnU2KHQsZSwyKX1mdW5jdGlvbiBhVShlKXt2YXIgdD1heCgpO3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBlJiYoZT1lKCkpLHQubWVtb2l6ZWRTdGF0ZT10LmJhc2VTdGF0ZT1lLHQucXVldWU9e3BlbmRpbmc6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjphTyxsYXN0UmVuZGVyZWRTdGF0ZTplfSx0fWZ1bmN0aW9uIGFCKGUsdCxuLHIpe3JldHVybiBlLmJhc2VTdGF0ZT1uLGFMKGUsYW8sImZ1bmN0aW9uIj09dHlwZW9mIHI/cjphTyl9ZnVuY3Rpb24gYVYoZSx0LG4scixsKXtpZihvYihlKSl0aHJvdyBFcnJvcih1KDQ4NSkpO2lmKG51bGwhPT0oZT10LmFjdGlvbikpe3ZhciBhPXtwYXlsb2FkOmwsYWN0aW9uOmUsbmV4dDpudWxsLGlzVHJhbnNpdGlvbjohMCxzdGF0dXM6InBlbmRpbmciLHZhbHVlOm51bGwscmVhc29uOm51bGwsbGlzdGVuZXJzOltdLHRoZW46ZnVuY3Rpb24oZSl7YS5saXN0ZW5lcnMucHVzaChlKX19O251bGwhPT1XLlQ/bighMCk6YS5pc1RyYW5zaXRpb249ITEscihhKSxudWxsPT09KG49dC5wZW5kaW5nKT8oYS5uZXh0PXQucGVuZGluZz1hLGFIKHQsYSkpOihhLm5leHQ9bi5uZXh0LHQucGVuZGluZz1uLm5leHQ9YSl9fWZ1bmN0aW9uIGFIKGUsdCl7dmFyIG49dC5hY3Rpb24scj10LnBheWxvYWQsbD1lLnN0YXRlO2lmKHQuaXNUcmFuc2l0aW9uKXt2YXIgYT1XLlQsbz17fTtvLnR5cGVzPW51bGwhPT1hP2EudHlwZXM6bnVsbCxXLlQ9bzt0cnl7dmFyIGk9bihsLHIpLHU9Vy5TO251bGwhPT11JiZ1KG8saSksYSQoZSx0LGkpfWNhdGNoKG4pe2FXKGUsdCxuKX1maW5hbGx5e251bGwhPT1hJiZudWxsIT09by50eXBlcyYmKGEudHlwZXM9by50eXBlcyksVy5UPWF9fWVsc2UgdHJ5e2E9bihsLHIpLGEkKGUsdCxhKX1jYXRjaChuKXthVyhlLHQsbil9fWZ1bmN0aW9uIGEkKGUsdCxuKXtudWxsIT09biYmIm9iamVjdCI9PXR5cGVvZiBuJiYiZnVuY3Rpb24iPT10eXBlb2Ygbi50aGVuP24udGhlbihmdW5jdGlvbihuKXthUShlLHQsbil9LGZ1bmN0aW9uKG4pe3JldHVybiBhVyhlLHQsbil9KTphUShlLHQsbil9ZnVuY3Rpb24gYVEoZSx0LG4pe3Quc3RhdHVzPSJmdWxmaWxsZWQiLHQudmFsdWU9bixhcSh0KSxlLnN0YXRlPW4sbnVsbCE9PSh0PWUucGVuZGluZykmJigobj10Lm5leHQpPT09dD9lLnBlbmRpbmc9bnVsbDoobj1uLm5leHQsdC5uZXh0PW4sYUgoZSxuKSkpfWZ1bmN0aW9uIGFXKGUsdCxuKXt2YXIgcj1lLnBlbmRpbmc7aWYoZS5wZW5kaW5nPW51bGwsbnVsbCE9PXIpe3I9ci5uZXh0O2RvIHQuc3RhdHVzPSJyZWplY3RlZCIsdC5yZWFzb249bixhcSh0KSx0PXQubmV4dDt3aGlsZSh0IT09cil9ZS5hY3Rpb249bnVsbH1mdW5jdGlvbiBhcShlKXtlPWUubGlzdGVuZXJzO2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKSgwLGVbdF0pKCl9ZnVuY3Rpb24gYUsoZSx0KXtyZXR1cm4gdH1mdW5jdGlvbiBhWChlLHQpe2lmKHIkKXt2YXIgbj11RS5mb3JtU3RhdGU7aWYobnVsbCE9PW4pe2U6e3ZhciByPWFhO2lmKHIkKXtpZihySCl7dDp7Zm9yKHZhciBsPXJILGE9clc7OCE9PWwubm9kZVR5cGU7KWlmKCFhfHxudWxsPT09KGw9Y1EobC5uZXh0U2libGluZykpKXtsPW51bGw7YnJlYWsgdH1sPSJGISI9PT0oYT1sLmRhdGEpfHwiRiI9PT1hP2w6bnVsbH1pZihsKXtySD1jUShsLm5leHRTaWJsaW5nKSxyPSJGISI9PT1sLmRhdGE7YnJlYWsgZX19cksocil9cj0hMX1yJiYodD1uWzBdKX19cmV0dXJuKG49YXgoKSkubWVtb2l6ZWRTdGF0ZT1uLmJhc2VTdGF0ZT10LHI9e3BlbmRpbmc6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjphSyxsYXN0UmVuZGVyZWRTdGF0ZTp0fSxuLnF1ZXVlPXIsbj1vZy5iaW5kKG51bGwsYWEsciksci5kaXNwYXRjaD1uLHI9YVUoITEpLGE9b3kuYmluZChudWxsLGFhLCExLHIucXVldWUpLHI9YXgoKSxsPXtzdGF0ZTp0LGRpc3BhdGNoOm51bGwsYWN0aW9uOmUscGVuZGluZzpudWxsfSxyLnF1ZXVlPWwsbj1hVi5iaW5kKG51bGwsYWEsbCxhLG4pLGwuZGlzcGF0Y2g9bixyLm1lbW9pemVkU3RhdGU9ZSxbdCxuLCExXX1mdW5jdGlvbiBhRyhlKXtyZXR1cm4gYVkoYV8oKSxhbyxlKX1mdW5jdGlvbiBhWShlLHQsbil7aWYodD1hTChlLHQsYUspWzBdLGU9YXooYU8pWzBdLCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LnRoZW4pdHJ5e3ZhciByPWFOKHQpfWNhdGNoKGUpe2lmKGU9PT1sUyl0aHJvdyBseDt0aHJvdyBlfWVsc2Ugcj10O3ZhciBsPSh0PWFfKCkpLnF1ZXVlLGE9bC5kaXNwYXRjaDtyZXR1cm4gbiE9PXQubWVtb2l6ZWRTdGF0ZSYmKGFhLmZsYWdzfD0yMDQ4LGEwKDkse2Rlc3Ryb3k6dm9pZCAwfSxhSi5iaW5kKG51bGwsbCxuKSxudWxsKSksW3IsYSxlXX1mdW5jdGlvbiBhSihlLHQpe2UuYWN0aW9uPXR9ZnVuY3Rpb24gYVooZSl7dmFyIHQ9YV8oKSxuPWFvO2lmKG51bGwhPT1uKXJldHVybiBhWSh0LG4sZSk7YV8oKSx0PXQubWVtb2l6ZWRTdGF0ZTt2YXIgcj0obj1hXygpKS5xdWV1ZS5kaXNwYXRjaDtyZXR1cm4gbi5tZW1vaXplZFN0YXRlPWUsW3QsciwhMV19ZnVuY3Rpb24gYTAoZSx0LG4scil7cmV0dXJuIGU9e3RhZzplLGNyZWF0ZTpuLGRlcHM6cixpbnN0OnQsbmV4dDpudWxsfSxudWxsPT09KHQ9YWEudXBkYXRlUXVldWUpJiYodD1hUCgpLGFhLnVwZGF0ZVF1ZXVlPXQpLG51bGw9PT0obj10Lmxhc3RFZmZlY3QpP3QubGFzdEVmZmVjdD1lLm5leHQ9ZToocj1uLm5leHQsbi5uZXh0PWUsZS5uZXh0PXIsdC5sYXN0RWZmZWN0PWUpLGV9ZnVuY3Rpb24gYTEoKXtyZXR1cm4gYV8oKS5tZW1vaXplZFN0YXRlfWZ1bmN0aW9uIGEyKGUsdCxuLHIpe3ZhciBsPWF4KCk7YWEuZmxhZ3N8PWUsbC5tZW1vaXplZFN0YXRlPWEwKDF8dCx7ZGVzdHJveTp2b2lkIDB9LG4sdm9pZCAwPT09cj9udWxsOnIpfWZ1bmN0aW9uIGEzKGUsdCxuLHIpe3ZhciBsPWFfKCk7cj12b2lkIDA9PT1yP251bGw6cjt2YXIgYT1sLm1lbW9pemVkU3RhdGUuaW5zdDtudWxsIT09YW8mJm51bGwhPT1yJiZhZyhyLGFvLm1lbW9pemVkU3RhdGUuZGVwcyk/bC5tZW1vaXplZFN0YXRlPWEwKHQsYSxuLHIpOihhYS5mbGFnc3w9ZSxsLm1lbW9pemVkU3RhdGU9YTAoMXx0LGEsbixyKSl9ZnVuY3Rpb24gYTQoZSx0KXthMig4MzkwNjU2LDgsZSx0KX1mdW5jdGlvbiBhOChlLHQpe2EzKDIwNDgsOCxlLHQpfWZ1bmN0aW9uIGE1KGUpe3ZhciB0PWFfKCkubWVtb2l6ZWRTdGF0ZSxuPXtyZWY6dCxuZXh0SW1wbDplfTthYS5mbGFnc3w9NDt2YXIgcj1hYS51cGRhdGVRdWV1ZTtpZihudWxsPT09cilyPWFQKCksYWEudXBkYXRlUXVldWU9cixyLmV2ZW50cz1bbl07ZWxzZXt2YXIgbD1yLmV2ZW50cztudWxsPT09bD9yLmV2ZW50cz1bbl06bC5wdXNoKG4pfXJldHVybiBmdW5jdGlvbigpe2lmKDAhPSgyJnVTKSl0aHJvdyBFcnJvcih1KDQ0MCkpO3JldHVybiB0LmltcGwuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyl9fWZ1bmN0aW9uIGE2KGUsdCl7cmV0dXJuIGEzKDQsMixlLHQpfWZ1bmN0aW9uIGE5KGUsdCl7cmV0dXJuIGEzKDQsNCxlLHQpfWZ1bmN0aW9uIGE3KGUsdCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQpe3ZhciBuPXQoZT1lKCkpO3JldHVybiBmdW5jdGlvbigpeyJmdW5jdGlvbiI9PXR5cGVvZiBuP24oKTp0KG51bGwpfX1pZihudWxsIT10KXJldHVybiB0LmN1cnJlbnQ9ZT1lKCksZnVuY3Rpb24oKXt0LmN1cnJlbnQ9bnVsbH19ZnVuY3Rpb24gb2UoZSx0LG4pe249bnVsbCE9bj9uLmNvbmNhdChbZV0pOm51bGwsYTMoNCw0LGE3LmJpbmQobnVsbCx0LGUpLG4pfWZ1bmN0aW9uIG90KCl7fWZ1bmN0aW9uIG9uKGUsdCl7dmFyIG49YV8oKTt0PXZvaWQgMD09PXQ/bnVsbDp0O3ZhciByPW4ubWVtb2l6ZWRTdGF0ZTtyZXR1cm4gbnVsbCE9PXQmJmFnKHQsclsxXSk/clswXToobi5tZW1vaXplZFN0YXRlPVtlLHRdLGUpfWZ1bmN0aW9uIG9yKGUsdCl7dmFyIG49YV8oKTt0PXZvaWQgMD09PXQ/bnVsbDp0O3ZhciByPW4ubWVtb2l6ZWRTdGF0ZTtyZXR1cm4gbnVsbCE9PXQmJmFnKHQsclsxXSk/clswXToobi5tZW1vaXplZFN0YXRlPVtyPWUoKSx0XSxyKX1mdW5jdGlvbiBvbChlLHQsbil7cmV0dXJuIHZvaWQgMD09PW58fDAhPSgweDQwMDAwMDAwJmFsKSYmMD09KDI2MTkzMCZ1Xyk/ZS5tZW1vaXplZFN0YXRlPXQ6KGUubWVtb2l6ZWRTdGF0ZT1uLGU9dTgoKSxhYS5sYW5lc3w9ZSx1Unw9ZSxuKX1mdW5jdGlvbiBvYShlLHQsbixyKXtyZXR1cm4gbkEobix0KT9uOm51bGwhPT1sSi5jdXJyZW50PyhuQShlPW9sKGUsbixyKSx0KXx8KG9VPSEwKSxlKTowPT0oNDImYWwpfHwwIT0oMHg0MDAwMDAwMCZhbCkmJjA9PSgyNjE5MzAmdV8pPyhvVT0hMCxlLm1lbW9pemVkU3RhdGU9bik6KGU9dTgoKSxhYS5sYW5lc3w9ZSx1Unw9ZSx0KX1mdW5jdGlvbiBvbyhlLHQsbixyLGwpe3ZhciBhPXEucDtxLnA9MCE9PWEmJjg+YT9hOjg7dmFyIG89Vy5ULGk9e307aS50eXBlcz1udWxsIT09bz9vLnR5cGVzOm51bGwsVy5UPWksb3koZSwhMSx0LG4pO3RyeXt2YXIgdT1sKCkscz1XLlM7aWYobnVsbCE9PXMmJnMoaSx1KSxudWxsIT09dSYmIm9iamVjdCI9PXR5cGVvZiB1JiYiZnVuY3Rpb24iPT10eXBlb2YgdS50aGVuKXt2YXIgYyxmLGQ9KGM9W10sZj17c3RhdHVzOiJwZW5kaW5nIix2YWx1ZTpudWxsLHJlYXNvbjpudWxsLHRoZW46ZnVuY3Rpb24oZSl7Yy5wdXNoKGUpfX0sdS50aGVuKGZ1bmN0aW9uKCl7Zi5zdGF0dXM9ImZ1bGZpbGxlZCIsZi52YWx1ZT1yO2Zvcih2YXIgZT0wO2U8Yy5sZW5ndGg7ZSsrKSgwLGNbZV0pKHIpfSxmdW5jdGlvbihlKXtmb3IoZi5zdGF0dXM9InJlamVjdGVkIixmLnJlYXNvbj1lLGU9MDtlPGMubGVuZ3RoO2UrKykoMCxjW2VdKSh2b2lkIDApfSksZik7b3YoZSx0LGQsdTQoZSkpfWVsc2Ugb3YoZSx0LHIsdTQoZSkpfWNhdGNoKG4pe292KGUsdCx7dGhlbjpmdW5jdGlvbigpe30sc3RhdHVzOiJyZWplY3RlZCIscmVhc29uOm59LHU0KCkpfWZpbmFsbHl7cS5wPWEsbnVsbCE9PW8mJm51bGwhPT1pLnR5cGVzJiYoby50eXBlcz1pLnR5cGVzKSxXLlQ9b319ZnVuY3Rpb24gb2koKXt9ZnVuY3Rpb24gb3UoZSx0LG4scil7aWYoNSE9PWUudGFnKXRocm93IEVycm9yKHUoNDc2KSk7dmFyIGw9b3MoZSkucXVldWU7b28oZSxsLHQsSyxudWxsPT09bj9vaTpmdW5jdGlvbigpe3JldHVybiBvYyhlKSxuKHIpfSl9ZnVuY3Rpb24gb3MoZSl7dmFyIHQ9ZS5tZW1vaXplZFN0YXRlO2lmKG51bGwhPT10KXJldHVybiB0O3ZhciBuPXt9O3JldHVybih0PXttZW1vaXplZFN0YXRlOkssYmFzZVN0YXRlOkssYmFzZVF1ZXVlOm51bGwscXVldWU6e3BlbmRpbmc6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjphTyxsYXN0UmVuZGVyZWRTdGF0ZTpLfSxuZXh0Om51bGx9KS5uZXh0PXttZW1vaXplZFN0YXRlOm4sYmFzZVN0YXRlOm4sYmFzZVF1ZXVlOm51bGwscXVldWU6e3BlbmRpbmc6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjphTyxsYXN0UmVuZGVyZWRTdGF0ZTpufSxuZXh0Om51bGx9LGUubWVtb2l6ZWRTdGF0ZT10LG51bGwhPT0oZT1lLmFsdGVybmF0ZSkmJihlLm1lbW9pemVkU3RhdGU9dCksdH1mdW5jdGlvbiBvYyhlKXt2YXIgdD1vcyhlKTtudWxsPT09dC5uZXh0JiYodD1lLmFsdGVybmF0ZS5tZW1vaXplZFN0YXRlKSxvdihlLHQubmV4dC5xdWV1ZSx7fSx1NCgpKX1mdW5jdGlvbiBvZigpe3JldHVybiBsdChmdil9ZnVuY3Rpb24gb2QoKXtyZXR1cm4gYV8oKS5tZW1vaXplZFN0YXRlfWZ1bmN0aW9uIG9wKCl7cmV0dXJuIGFfKCkubWVtb2l6ZWRTdGF0ZX1mdW5jdGlvbiBvbShlKXtmb3IodmFyIHQ9ZS5yZXR1cm47bnVsbCE9PXQ7KXtzd2l0Y2godC50YWcpe2Nhc2UgMjQ6Y2FzZSAzOnZhciBuPXU0KCkscj1sJCh0LGU9bEgobiksbik7bnVsbCE9PXImJih1NihyLHQsbiksbFEocix0LG4pKSx0PXtjYWNoZTpsdSgpfSxlLnBheWxvYWQ9dDtyZXR1cm59dD10LnJldHVybn19ZnVuY3Rpb24gb2goZSx0LG4pe3ZhciByPXU0KCk7bj17bGFuZTpyLHJldmVydExhbmU6MCxnZXN0dXJlOm51bGwsYWN0aW9uOm4saGFzRWFnZXJTdGF0ZTohMSxlYWdlclN0YXRlOm51bGwsbmV4dDpudWxsfSxvYihlKT9vdyh0LG4pOm51bGwhPT0obj1yZihlLHQsbixyKSkmJih1NihuLGUsciksb2sobix0LHIpKX1mdW5jdGlvbiBvZyhlLHQsbil7b3YoZSx0LG4sdTQoKSl9ZnVuY3Rpb24gb3YoZSx0LG4scil7dmFyIGw9e2xhbmU6cixyZXZlcnRMYW5lOjAsZ2VzdHVyZTpudWxsLGFjdGlvbjpuLGhhc0VhZ2VyU3RhdGU6ITEsZWFnZXJTdGF0ZTpudWxsLG5leHQ6bnVsbH07aWYob2IoZSkpb3codCxsKTtlbHNle3ZhciBhPWUuYWx0ZXJuYXRlO2lmKDA9PT1lLmxhbmVzJiYobnVsbD09PWF8fDA9PT1hLmxhbmVzKSYmbnVsbCE9PShhPXQubGFzdFJlbmRlcmVkUmVkdWNlcikpdHJ5e3ZhciBvPXQubGFzdFJlbmRlcmVkU3RhdGUsaT1hKG8sbik7aWYobC5oYXNFYWdlclN0YXRlPSEwLGwuZWFnZXJTdGF0ZT1pLG5BKGksbykpcmV0dXJuIHJjKGUsdCxsLDApLG51bGw9PT11RSYmcnMoKSwhMX1jYXRjaChlKXt9ZmluYWxseXt9aWYobnVsbCE9PShuPXJmKGUsdCxsLHIpKSlyZXR1cm4gdTYobixlLHIpLG9rKG4sdCxyKSwhMH1yZXR1cm4hMX1mdW5jdGlvbiBveShlLHQsbixyKXtpZihyPXtsYW5lOjIscmV2ZXJ0TGFuZTpzJCgpLGdlc3R1cmU6bnVsbCxhY3Rpb246cixoYXNFYWdlclN0YXRlOiExLGVhZ2VyU3RhdGU6bnVsbCxuZXh0Om51bGx9LG9iKGUpKXtpZih0KXRocm93IEVycm9yKHUoNDc5KSl9ZWxzZSBudWxsIT09KHQ9cmYoZSxuLHIsMikpJiZ1Nih0LGUsMil9ZnVuY3Rpb24gb2IoZSl7dmFyIHQ9ZS5hbHRlcm5hdGU7cmV0dXJuIGU9PT1hYXx8bnVsbCE9PXQmJnQ9PT1hYX1mdW5jdGlvbiBvdyhlLHQpe2FzPWF1PSEwO3ZhciBuPWUucGVuZGluZztudWxsPT09bj90Lm5leHQ9dDoodC5uZXh0PW4ubmV4dCxuLm5leHQ9dCksZS5wZW5kaW5nPXR9ZnVuY3Rpb24gb2soZSx0LG4pe2lmKDAhPSg0MTk0MDQ4Jm4pKXt2YXIgcj10LmxhbmVzO3ImPWUucGVuZGluZ0xhbmVzLHQubGFuZXM9bnw9cixlaihlLG4pfX12YXIgb1M9e3JlYWRDb250ZXh0Omx0LHVzZTphQyx1c2VDYWxsYmFjazphaCx1c2VDb250ZXh0OmFoLHVzZUVmZmVjdDphaCx1c2VJbXBlcmF0aXZlSGFuZGxlOmFoLHVzZUxheW91dEVmZmVjdDphaCx1c2VJbnNlcnRpb25FZmZlY3Q6YWgsdXNlTWVtbzphaCx1c2VSZWR1Y2VyOmFoLHVzZVJlZjphaCx1c2VTdGF0ZTphaCx1c2VEZWJ1Z1ZhbHVlOmFoLHVzZURlZmVycmVkVmFsdWU6YWgsdXNlVHJhbnNpdGlvbjphaCx1c2VTeW5jRXh0ZXJuYWxTdG9yZTphaCx1c2VJZDphaCx1c2VIb3N0VHJhbnNpdGlvblN0YXR1czphaCx1c2VGb3JtU3RhdGU6YWgsdXNlQWN0aW9uU3RhdGU6YWgsdXNlT3B0aW1pc3RpYzphaCx1c2VNZW1vQ2FjaGU6YWgsdXNlQ2FjaGVSZWZyZXNoOmFofTtvUy51c2VFZmZlY3RFdmVudD1haDt2YXIgb0U9e3JlYWRDb250ZXh0Omx0LHVzZTphQyx1c2VDYWxsYmFjazpmdW5jdGlvbihlLHQpe3JldHVybiBheCgpLm1lbW9pemVkU3RhdGU9W2Usdm9pZCAwPT09dD9udWxsOnRdLGV9LHVzZUNvbnRleHQ6bHQsdXNlRWZmZWN0OmE0LHVzZUltcGVyYXRpdmVIYW5kbGU6ZnVuY3Rpb24oZSx0LG4pe249bnVsbCE9bj9uLmNvbmNhdChbZV0pOm51bGwsYTIoNDE5NDMwOCw0LGE3LmJpbmQobnVsbCx0LGUpLG4pfSx1c2VMYXlvdXRFZmZlY3Q6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYTIoNDE5NDMwOCw0LGUsdCl9LHVzZUluc2VydGlvbkVmZmVjdDpmdW5jdGlvbihlLHQpe2EyKDQsMixlLHQpfSx1c2VNZW1vOmZ1bmN0aW9uKGUsdCl7dmFyIG49YXgoKTt0PXZvaWQgMD09PXQ/bnVsbDp0O3ZhciByPWUoKTtyZXR1cm4gbi5tZW1vaXplZFN0YXRlPVtyLHRdLHJ9LHVzZVJlZHVjZXI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWF4KCk7aWYodm9pZCAwIT09bil2YXIgbD1uKHQpO2Vsc2UgbD10O3JldHVybiByLm1lbW9pemVkU3RhdGU9ci5iYXNlU3RhdGU9bCxyLnF1ZXVlPWU9e3BlbmRpbmc6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjplLGxhc3RSZW5kZXJlZFN0YXRlOmx9LGU9ZS5kaXNwYXRjaD1vaC5iaW5kKG51bGwsYWEsZSksW3IubWVtb2l6ZWRTdGF0ZSxlXX0sdXNlUmVmOmZ1bmN0aW9uKGUpe3JldHVybiBheCgpLm1lbW9pemVkU3RhdGU9e2N1cnJlbnQ6ZX19LHVzZVN0YXRlOmZ1bmN0aW9uKGUpe3ZhciB0PShlPWFVKGUpKS5xdWV1ZSxuPW9nLmJpbmQobnVsbCxhYSx0KTtyZXR1cm4gdC5kaXNwYXRjaD1uLFtlLm1lbW9pemVkU3RhdGUsbl19LHVzZURlYnVnVmFsdWU6b3QsdXNlRGVmZXJyZWRWYWx1ZTpmdW5jdGlvbihlLHQpe3JldHVybiBvbChheCgpLGUsdCl9LHVzZVRyYW5zaXRpb246ZnVuY3Rpb24oKXt2YXIgZT1hVSghMSk7cmV0dXJuIGU9b28uYmluZChudWxsLGFhLGUucXVldWUsITAsITEpLGF4KCkubWVtb2l6ZWRTdGF0ZT1lLFshMSxlXX0sdXNlU3luY0V4dGVybmFsU3RvcmU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWFhLGw9YXgoKTtpZihyJCl7aWYodm9pZCAwPT09bil0aHJvdyBFcnJvcih1KDQwNykpO249bigpfWVsc2V7aWYobj10KCksbnVsbD09PXVFKXRocm93IEVycm9yKHUoMzQ5KSk7MCE9KDEyNyZ1Xyl8fGFJKHIsdCxuKX1sLm1lbW9pemVkU3RhdGU9bjt2YXIgYT17dmFsdWU6bixnZXRTbmFwc2hvdDp0fTtyZXR1cm4gbC5xdWV1ZT1hLGE0KGFGLmJpbmQobnVsbCxyLGEsZSksW2VdKSxyLmZsYWdzfD0yMDQ4LGEwKDkse2Rlc3Ryb3k6dm9pZCAwfSxhRC5iaW5kKG51bGwscixhLG4sdCksbnVsbCksbn0sdXNlSWQ6ZnVuY3Rpb24oKXt2YXIgZT1heCgpLHQ9dUUuaWRlbnRpZmllclByZWZpeDtpZihyJCl7dmFyIG49ckQscj1ySTt0PSJfIit0KyJSXyIrKG49KHImfigxPDwzMi1lUChyKS0xKSkudG9TdHJpbmcoMzIpK24pLDA8KG49YWYrKykmJih0Kz0iSCIrbi50b1N0cmluZygzMikpLHQrPSJfIn1lbHNlIHQ9Il8iK3QrInJfIisobj1hbSsrKS50b1N0cmluZygzMikrIl8iO3JldHVybiBlLm1lbW9pemVkU3RhdGU9dH0sdXNlSG9zdFRyYW5zaXRpb25TdGF0dXM6b2YsdXNlRm9ybVN0YXRlOmFYLHVzZUFjdGlvblN0YXRlOmFYLHVzZU9wdGltaXN0aWM6ZnVuY3Rpb24oZSl7dmFyIHQ9YXgoKTt0Lm1lbW9pemVkU3RhdGU9dC5iYXNlU3RhdGU9ZTt2YXIgbj17cGVuZGluZzpudWxsLGxhbmVzOjAsZGlzcGF0Y2g6bnVsbCxsYXN0UmVuZGVyZWRSZWR1Y2VyOm51bGwsbGFzdFJlbmRlcmVkU3RhdGU6bnVsbH07cmV0dXJuIHQucXVldWU9bix0PW95LmJpbmQobnVsbCxhYSwhMCxuKSxuLmRpc3BhdGNoPXQsW2UsdF19LHVzZU1lbW9DYWNoZTphVCx1c2VDYWNoZVJlZnJlc2g6ZnVuY3Rpb24oKXtyZXR1cm4gYXgoKS5tZW1vaXplZFN0YXRlPW9tLmJpbmQobnVsbCxhYSl9LHVzZUVmZmVjdEV2ZW50OmZ1bmN0aW9uKGUpe3ZhciB0PWF4KCksbj17aW1wbDplfTtyZXR1cm4gdC5tZW1vaXplZFN0YXRlPW4sZnVuY3Rpb24oKXtpZigwIT0oMiZ1UykpdGhyb3cgRXJyb3IodSg0NDApKTtyZXR1cm4gbi5pbXBsLmFwcGx5KHZvaWQgMCxhcmd1bWVudHMpfX19LG94PXtyZWFkQ29udGV4dDpsdCx1c2U6YUMsdXNlQ2FsbGJhY2s6b24sdXNlQ29udGV4dDpsdCx1c2VFZmZlY3Q6YTgsdXNlSW1wZXJhdGl2ZUhhbmRsZTpvZSx1c2VJbnNlcnRpb25FZmZlY3Q6YTYsdXNlTGF5b3V0RWZmZWN0OmE5LHVzZU1lbW86b3IsdXNlUmVkdWNlcjpheix1c2VSZWY6YTEsdXNlU3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gYXooYU8pfSx1c2VEZWJ1Z1ZhbHVlOm90LHVzZURlZmVycmVkVmFsdWU6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gb2EoYV8oKSxhby5tZW1vaXplZFN0YXRlLGUsdCl9LHVzZVRyYW5zaXRpb246ZnVuY3Rpb24oKXt2YXIgZT1heihhTylbMF0sdD1hXygpLm1lbW9pemVkU3RhdGU7cmV0dXJuWyJib29sZWFuIj09dHlwZW9mIGU/ZTphTihlKSx0XX0sdXNlU3luY0V4dGVybmFsU3RvcmU6YU0sdXNlSWQ6b2QsdXNlSG9zdFRyYW5zaXRpb25TdGF0dXM6b2YsdXNlRm9ybVN0YXRlOmFHLHVzZUFjdGlvblN0YXRlOmFHLHVzZU9wdGltaXN0aWM6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYUIoYV8oKSxhbyxlLHQpfSx1c2VNZW1vQ2FjaGU6YVQsdXNlQ2FjaGVSZWZyZXNoOm9wfTtveC51c2VFZmZlY3RFdmVudD1hNTt2YXIgb189e3JlYWRDb250ZXh0Omx0LHVzZTphQyx1c2VDYWxsYmFjazpvbix1c2VDb250ZXh0Omx0LHVzZUVmZmVjdDphOCx1c2VJbXBlcmF0aXZlSGFuZGxlOm9lLHVzZUluc2VydGlvbkVmZmVjdDphNix1c2VMYXlvdXRFZmZlY3Q6YTksdXNlTWVtbzpvcix1c2VSZWR1Y2VyOmFSLHVzZVJlZjphMSx1c2VTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBhUihhTyl9LHVzZURlYnVnVmFsdWU6b3QsdXNlRGVmZXJyZWRWYWx1ZTpmdW5jdGlvbihlLHQpe3ZhciBuPWFfKCk7cmV0dXJuIG51bGw9PT1hbz9vbChuLGUsdCk6b2Eobixhby5tZW1vaXplZFN0YXRlLGUsdCl9LHVzZVRyYW5zaXRpb246ZnVuY3Rpb24oKXt2YXIgZT1hUihhTylbMF0sdD1hXygpLm1lbW9pemVkU3RhdGU7cmV0dXJuWyJib29sZWFuIj09dHlwZW9mIGU/ZTphTihlKSx0XX0sdXNlU3luY0V4dGVybmFsU3RvcmU6YU0sdXNlSWQ6b2QsdXNlSG9zdFRyYW5zaXRpb25TdGF0dXM6b2YsdXNlRm9ybVN0YXRlOmFaLHVzZUFjdGlvblN0YXRlOmFaLHVzZU9wdGltaXN0aWM6ZnVuY3Rpb24oZSx0KXt2YXIgbj1hXygpO3JldHVybiBudWxsIT09YW8/YUIobixhbyxlLHQpOihuLmJhc2VTdGF0ZT1lLFtlLG4ucXVldWUuZGlzcGF0Y2hdKX0sdXNlTWVtb0NhY2hlOmFULHVzZUNhY2hlUmVmcmVzaDpvcH07ZnVuY3Rpb24gb1AoZSx0LG4scil7bj1udWxsPT0obj1uKHIsdD1lLm1lbW9pemVkU3RhdGUpKT90Ongoe30sdCxuKSxlLm1lbW9pemVkU3RhdGU9biwwPT09ZS5sYW5lcyYmKGUudXBkYXRlUXVldWUuYmFzZVN0YXRlPW4pfW9fLnVzZUVmZmVjdEV2ZW50PWE1O3ZhciBvTj17ZW5xdWV1ZVNldFN0YXRlOmZ1bmN0aW9uKGUsdCxuKXtlPWUuX3JlYWN0SW50ZXJuYWxzO3ZhciByPXU0KCksbD1sSChyKTtsLnBheWxvYWQ9dCxudWxsIT1uJiYobC5jYWxsYmFjaz1uKSxudWxsIT09KHQ9bCQoZSxsLHIpKSYmKHU2KHQsZSxyKSxsUSh0LGUscikpfSxlbnF1ZXVlUmVwbGFjZVN0YXRlOmZ1bmN0aW9uKGUsdCxuKXtlPWUuX3JlYWN0SW50ZXJuYWxzO3ZhciByPXU0KCksbD1sSChyKTtsLnRhZz0xLGwucGF5bG9hZD10LG51bGwhPW4mJihsLmNhbGxiYWNrPW4pLG51bGwhPT0odD1sJChlLGwscikpJiYodTYodCxlLHIpLGxRKHQsZSxyKSl9LGVucXVldWVGb3JjZVVwZGF0ZTpmdW5jdGlvbihlLHQpe2U9ZS5fcmVhY3RJbnRlcm5hbHM7dmFyIG49dTQoKSxyPWxIKG4pO3IudGFnPTIsbnVsbCE9dCYmKHIuY2FsbGJhY2s9dCksbnVsbCE9PSh0PWwkKGUscixuKSkmJih1Nih0LGUsbiksbFEodCxlLG4pKX19O2Z1bmN0aW9uIG9DKGUsdCxuLHIsbCxhLG8pe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZihlPWUuc3RhdGVOb2RlKS5zaG91bGRDb21wb25lbnRVcGRhdGU/ZS5zaG91bGRDb21wb25lbnRVcGRhdGUocixhLG8pOiF0LnByb3RvdHlwZXx8IXQucHJvdG90eXBlLmlzUHVyZVJlYWN0Q29tcG9uZW50fHwhbmoobixyKXx8IW5qKGwsYSl9ZnVuY3Rpb24gb1QoZSx0LG4scil7ZT10LnN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZiB0LmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJnQuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyhuLHIpLCJmdW5jdGlvbiI9PXR5cGVvZiB0LlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzJiZ0LlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzKG4sciksdC5zdGF0ZSE9PWUmJm9OLmVucXVldWVSZXBsYWNlU3RhdGUodCx0LnN0YXRlLG51bGwpfWZ1bmN0aW9uIG9PKGUsdCl7dmFyIG49dDtpZigicmVmImluIHQpZm9yKHZhciByIGluIG49e30sdCkicmVmIiE9PXImJihuW3JdPXRbcl0pO2lmKGU9ZS5kZWZhdWx0UHJvcHMpZm9yKHZhciBsIGluIG49PT10JiYobj14KHt9LG4pKSxlKXZvaWQgMD09PW5bbF0mJihuW2xdPWVbbF0pO3JldHVybiBufWZ1bmN0aW9uIG96KGUpe3JhKGUpfWZ1bmN0aW9uIG9MKGUpe2NvbnNvbGUuZXJyb3IoZSl9ZnVuY3Rpb24gb1IoZSl7cmEoZSl9ZnVuY3Rpb24gb00oZSx0KXt0cnl7KDAsZS5vblVuY2F1Z2h0RXJyb3IpKHQudmFsdWUse2NvbXBvbmVudFN0YWNrOnQuc3RhY2t9KX1jYXRjaChlKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgZX0pfX1mdW5jdGlvbiBvSShlLHQsbil7dHJ5eygwLGUub25DYXVnaHRFcnJvcikobi52YWx1ZSx7Y29tcG9uZW50U3RhY2s6bi5zdGFjayxlcnJvckJvdW5kYXJ5OjE9PT10LnRhZz90LnN0YXRlTm9kZTpudWxsfSl9Y2F0Y2goZSl7c2V0VGltZW91dChmdW5jdGlvbigpe3Rocm93IGV9KX19ZnVuY3Rpb24gb0QoZSx0LG4pe3JldHVybihuPWxIKG4pKS50YWc9MyxuLnBheWxvYWQ9e2VsZW1lbnQ6bnVsbH0sbi5jYWxsYmFjaz1mdW5jdGlvbigpe29NKGUsdCl9LG59ZnVuY3Rpb24gb0YoZSl7cmV0dXJuKGU9bEgoZSkpLnRhZz0zLGV9ZnVuY3Rpb24gb0EoZSx0LG4scil7dmFyIGw9bi50eXBlLmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcjtpZigiZnVuY3Rpb24iPT10eXBlb2YgbCl7dmFyIGE9ci52YWx1ZTtlLnBheWxvYWQ9ZnVuY3Rpb24oKXtyZXR1cm4gbChhKX0sZS5jYWxsYmFjaz1mdW5jdGlvbigpe29JKHQsbixyKX19dmFyIG89bi5zdGF0ZU5vZGU7bnVsbCE9PW8mJiJmdW5jdGlvbiI9PXR5cGVvZiBvLmNvbXBvbmVudERpZENhdGNoJiYoZS5jYWxsYmFjaz1mdW5jdGlvbigpe29JKHQsbixyKSwiZnVuY3Rpb24iIT10eXBlb2YgbCYmKG51bGw9PT11UT91UT1uZXcgU2V0KFt0aGlzXSk6dVEuYWRkKHRoaXMpKTt2YXIgZT1yLnN0YWNrO3RoaXMuY29tcG9uZW50RGlkQ2F0Y2goci52YWx1ZSx7Y29tcG9uZW50U3RhY2s6bnVsbCE9PWU/ZToiIn0pfSl9dmFyIG9qPUVycm9yKHUoNDYxKSksb1U9ITE7ZnVuY3Rpb24gb0IoZSx0LG4scil7dC5jaGlsZD1udWxsPT09ZT9saih0LG51bGwsbixyKTpsQSh0LGUuY2hpbGQsbixyKX1mdW5jdGlvbiBvVihlLHQsbixyLGwpe249bi5yZW5kZXI7dmFyIGE9dC5yZWY7aWYoInJlZiJpbiByKXt2YXIgbz17fTtmb3IodmFyIGkgaW4gcikicmVmIiE9PWkmJihvW2ldPXJbaV0pfWVsc2Ugbz1yO3JldHVybihsZSh0KSxyPWF2KGUsdCxuLG8sYSxsKSxpPWFrKCksbnVsbD09PWV8fG9VKT8ociQmJmkmJnJqKHQpLHQuZmxhZ3N8PTEsb0IoZSx0LHIsbCksdC5jaGlsZCk6KGFTKGUsdCxsKSxpbChlLHQsbCkpfWZ1bmN0aW9uIG9IKGUsdCxuLHIsbCl7aWYobnVsbD09PWUpe3ZhciBhPW4udHlwZTtyZXR1cm4iZnVuY3Rpb24iIT10eXBlb2YgYXx8cnkoYSl8fHZvaWQgMCE9PWEuZGVmYXVsdFByb3BzfHxudWxsIT09bi5jb21wYXJlPygoZT1yayhuLnR5cGUsbnVsbCxyLHQsdC5tb2RlLGwpKS5yZWY9dC5yZWYsZS5yZXR1cm49dCx0LmNoaWxkPWUpOih0LnRhZz0xNSx0LnR5cGU9YSxvJChlLHQsYSxyLGwpKX1pZihhPWUuY2hpbGQsIWlhKGUsbCkpe3ZhciBvPWEubWVtb2l6ZWRQcm9wcztpZigobj1udWxsIT09KG49bi5jb21wYXJlKT9uOm5qKShvLHIpJiZlLnJlZj09PXQucmVmKXJldHVybiBpbChlLHQsbCl9cmV0dXJuIHQuZmxhZ3N8PTEsKGU9cmIoYSxyKSkucmVmPXQucmVmLGUucmV0dXJuPXQsdC5jaGlsZD1lfWZ1bmN0aW9uIG8kKGUsdCxuLHIsbCl7aWYobnVsbCE9PWUpe3ZhciBhPWUubWVtb2l6ZWRQcm9wcztpZihuaihhLHIpJiZlLnJlZj09PXQucmVmKWlmKG9VPSExLHQucGVuZGluZ1Byb3BzPXI9YSwhaWEoZSxsKSlyZXR1cm4gdC5sYW5lcz1lLmxhbmVzLGlsKGUsdCxsKTtlbHNlIDAhPSgxMzEwNzImZS5mbGFncykmJihvVT0hMCl9cmV0dXJuIG9ZKGUsdCxuLHIsbCl9ZnVuY3Rpb24gb1EoZSx0LG4scil7dmFyIGw9ci5jaGlsZHJlbixhPW51bGwhPT1lP2UubWVtb2l6ZWRTdGF0ZTpudWxsO2lmKG51bGw9PT1lJiZudWxsPT09dC5zdGF0ZU5vZGUmJih0LnN0YXRlTm9kZT17X3Zpc2liaWxpdHk6MSxfcGVuZGluZ01hcmtlcnM6bnVsbCxfcmV0cnlDYWNoZTpudWxsLF90cmFuc2l0aW9uczpudWxsfSksImhpZGRlbiI9PT1yLm1vZGUpe2lmKDAhPSgxMjgmdC5mbGFncykpe2lmKGE9bnVsbCE9PWE/YS5iYXNlTGFuZXN8bjpuLG51bGwhPT1lKXtmb3IobD0wLHI9dC5jaGlsZD1lLmNoaWxkO251bGwhPT1yOylsPWx8ci5sYW5lc3xyLmNoaWxkTGFuZXMscj1yLnNpYmxpbmc7cj1sJn5hfWVsc2Ugcj0wLHQuY2hpbGQ9bnVsbDtyZXR1cm4gb3EoZSx0LGEsbixyKX1pZigwPT0oMHgyMDAwMDAwMCZuKSlyZXR1cm4gcj10LmxhbmVzPTB4MjAwMDAwMDAsb3EoZSx0LG51bGwhPT1hP2EuYmFzZUxhbmVzfG46bixuLHIpO3QubWVtb2l6ZWRTdGF0ZT17YmFzZUxhbmVzOjAsY2FjaGVQb29sOm51bGx9LG51bGwhPT1lJiZsdyh0LG51bGwhPT1hP2EuY2FjaGVQb29sOm51bGwpLG51bGwhPT1hP2wwKHQsYSk6bDEoKSxsNih0KX1lbHNlIG51bGwhPT1hPyhsdyh0LGEuY2FjaGVQb29sKSxsMCh0LGEpLGw5KCksdC5tZW1vaXplZFN0YXRlPW51bGwpOihudWxsIT09ZSYmbHcodCxudWxsKSxsMSgpLGw5KCkpO3JldHVybiBvQihlLHQsbCxuKSx0LmNoaWxkfWZ1bmN0aW9uIG9XKGUsdCl7cmV0dXJuIG51bGwhPT1lJiYyMj09PWUudGFnfHxudWxsIT09dC5zdGF0ZU5vZGV8fCh0LnN0YXRlTm9kZT17X3Zpc2liaWxpdHk6MSxfcGVuZGluZ01hcmtlcnM6bnVsbCxfcmV0cnlDYWNoZTpudWxsLF90cmFuc2l0aW9uczpudWxsfSksdC5zaWJsaW5nfWZ1bmN0aW9uIG9xKGUsdCxuLHIsbCl7dmFyIGE9bGIoKTtyZXR1cm4gdC5tZW1vaXplZFN0YXRlPXtiYXNlTGFuZXM6bixjYWNoZVBvb2w6YT1udWxsPT09YT9udWxsOntwYXJlbnQ6bGkuX2N1cnJlbnRWYWx1ZSxwb29sOmF9fSxudWxsIT09ZSYmbHcodCxudWxsKSxsMSgpLGw2KHQpLG51bGwhPT1lJiZyOShlLHQsciwhMCksdC5jaGlsZExhbmVzPWwsbnVsbH1mdW5jdGlvbiBvSyhlLHQpe3JldHVybih0PW81KHttb2RlOnQubW9kZSxjaGlsZHJlbjp0LmNoaWxkcmVufSxlLm1vZGUpKS5yZWY9ZS5yZWYsZS5jaGlsZD10LHQucmV0dXJuPWUsdH1mdW5jdGlvbiBvWChlLHQsbil7cmV0dXJuIGxBKHQsZS5jaGlsZCxudWxsLG4pLGU9b0sodCx0LnBlbmRpbmdQcm9wcyksZS5mbGFnc3w9MixsNyh0KSx0Lm1lbW9pemVkU3RhdGU9bnVsbCxlfWZ1bmN0aW9uIG9HKGUsdCl7dmFyIG49dC5yZWY7aWYobnVsbD09PW4pbnVsbCE9PWUmJm51bGwhPT1lLnJlZiYmKHQuZmxhZ3N8PTQxOTQ4MTYpO2Vsc2V7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIG4mJiJvYmplY3QiIT10eXBlb2Ygbil0aHJvdyBFcnJvcih1KDI4NCkpOyhudWxsPT09ZXx8ZS5yZWYhPT1uKSYmKHQuZmxhZ3N8PTQxOTQ4MTYpfX1mdW5jdGlvbiBvWShlLHQsbixyLGwpe3JldHVybihsZSh0KSxuPWF2KGUsdCxuLHIsdm9pZCAwLGwpLHI9YWsoKSxudWxsPT09ZXx8b1UpPyhyJCYmciYmcmoodCksdC5mbGFnc3w9MSxvQihlLHQsbixsKSx0LmNoaWxkKTooYVMoZSx0LGwpLGlsKGUsdCxsKSl9ZnVuY3Rpb24gb0ooZSx0LG4scixsLGEpe3JldHVybihsZSh0KSx0LnVwZGF0ZVF1ZXVlPW51bGwsbj1hYih0LHIsbixsKSxheShlKSxyPWFrKCksbnVsbD09PWV8fG9VKT8ociQmJnImJnJqKHQpLHQuZmxhZ3N8PTEsb0IoZSx0LG4sYSksdC5jaGlsZCk6KGFTKGUsdCxhKSxpbChlLHQsYSkpfWZ1bmN0aW9uIG9aKGUsdCxuLHIsbCl7aWYobGUodCksbnVsbD09PXQuc3RhdGVOb2RlKXt2YXIgYT1yaCxvPW4uY29udGV4dFR5cGU7Im9iamVjdCI9PXR5cGVvZiBvJiZudWxsIT09byYmKGE9bHQobykpLHQubWVtb2l6ZWRTdGF0ZT1udWxsIT09KGE9bmV3IG4ocixhKSkuc3RhdGUmJnZvaWQgMCE9PWEuc3RhdGU/YS5zdGF0ZTpudWxsLGEudXBkYXRlcj1vTix0LnN0YXRlTm9kZT1hLGEuX3JlYWN0SW50ZXJuYWxzPXQsKGE9dC5zdGF0ZU5vZGUpLnByb3BzPXIsYS5zdGF0ZT10Lm1lbW9pemVkU3RhdGUsYS5yZWZzPXt9LGxCKHQpLG89bi5jb250ZXh0VHlwZSxhLmNvbnRleHQ9Im9iamVjdCI9PXR5cGVvZiBvJiZudWxsIT09bz9sdChvKTpyaCxhLnN0YXRlPXQubWVtb2l6ZWRTdGF0ZSwiZnVuY3Rpb24iPT10eXBlb2Yobz1uLmdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcykmJihvUCh0LG4sbyxyKSxhLnN0YXRlPXQubWVtb2l6ZWRTdGF0ZSksImZ1bmN0aW9uIj09dHlwZW9mIG4uZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzfHwiZnVuY3Rpb24iPT10eXBlb2YgYS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGEuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCYmImZ1bmN0aW9uIiE9dHlwZW9mIGEuY29tcG9uZW50V2lsbE1vdW50fHwobz1hLnN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZiBhLmNvbXBvbmVudFdpbGxNb3VudCYmYS5jb21wb25lbnRXaWxsTW91bnQoKSwiZnVuY3Rpb24iPT10eXBlb2YgYS5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiZhLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQoKSxvIT09YS5zdGF0ZSYmb04uZW5xdWV1ZVJlcGxhY2VTdGF0ZShhLGEuc3RhdGUsbnVsbCksbFgodCxyLGEsbCksbEsoKSxhLnN0YXRlPXQubWVtb2l6ZWRTdGF0ZSksImZ1bmN0aW9uIj09dHlwZW9mIGEuY29tcG9uZW50RGlkTW91bnQmJih0LmZsYWdzfD00MTk0MzA4KSxyPSEwfWVsc2UgaWYobnVsbD09PWUpe2E9dC5zdGF0ZU5vZGU7dmFyIGk9dC5tZW1vaXplZFByb3BzLHU9b08obixpKTthLnByb3BzPXU7dmFyIHM9YS5jb250ZXh0LGM9bi5jb250ZXh0VHlwZTtvPXJoLCJvYmplY3QiPT10eXBlb2YgYyYmbnVsbCE9PWMmJihvPWx0KGMpKTt2YXIgZj1uLmdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcztjPSJmdW5jdGlvbiI9PXR5cGVvZiBmfHwiZnVuY3Rpb24iPT10eXBlb2YgYS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZSxpPXQucGVuZGluZ1Byb3BzIT09aSxjfHwiZnVuY3Rpb24iIT10eXBlb2YgYS5VTlNBRkVfY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyYmImZ1bmN0aW9uIiE9dHlwZW9mIGEuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wc3x8KGl8fHMhPT1vKSYmb1QodCxhLHIsbyksbFU9ITE7dmFyIGQ9dC5tZW1vaXplZFN0YXRlO2Euc3RhdGU9ZCxsWCh0LHIsYSxsKSxsSygpLHM9dC5tZW1vaXplZFN0YXRlLGl8fGQhPT1zfHxsVT8oImZ1bmN0aW9uIj09dHlwZW9mIGYmJihvUCh0LG4sZixyKSxzPXQubWVtb2l6ZWRTdGF0ZSksKHU9bFV8fG9DKHQsbix1LHIsZCxzLG8pKT8oY3x8ImZ1bmN0aW9uIiE9dHlwZW9mIGEuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCYmImZ1bmN0aW9uIiE9dHlwZW9mIGEuY29tcG9uZW50V2lsbE1vdW50fHwoImZ1bmN0aW9uIj09dHlwZW9mIGEuY29tcG9uZW50V2lsbE1vdW50JiZhLmNvbXBvbmVudFdpbGxNb3VudCgpLCJmdW5jdGlvbiI9PXR5cGVvZiBhLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQmJmEuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCgpKSwiZnVuY3Rpb24iPT10eXBlb2YgYS5jb21wb25lbnREaWRNb3VudCYmKHQuZmxhZ3N8PTQxOTQzMDgpKTooImZ1bmN0aW9uIj09dHlwZW9mIGEuY29tcG9uZW50RGlkTW91bnQmJih0LmZsYWdzfD00MTk0MzA4KSx0Lm1lbW9pemVkUHJvcHM9cix0Lm1lbW9pemVkU3RhdGU9cyksYS5wcm9wcz1yLGEuc3RhdGU9cyxhLmNvbnRleHQ9byxyPXUpOigiZnVuY3Rpb24iPT10eXBlb2YgYS5jb21wb25lbnREaWRNb3VudCYmKHQuZmxhZ3N8PTQxOTQzMDgpLHI9ITEpfWVsc2V7YT10LnN0YXRlTm9kZSxsVihlLHQpLGM9b08obixvPXQubWVtb2l6ZWRQcm9wcyksYS5wcm9wcz1jLGY9dC5wZW5kaW5nUHJvcHMsZD1hLmNvbnRleHQscz1uLmNvbnRleHRUeXBlLHU9cmgsIm9iamVjdCI9PXR5cGVvZiBzJiZudWxsIT09cyYmKHU9bHQocykpLChzPSJmdW5jdGlvbiI9PXR5cGVvZihpPW4uZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKXx8ImZ1bmN0aW9uIj09dHlwZW9mIGEuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUpfHwiZnVuY3Rpb24iIT10eXBlb2YgYS5VTlNBRkVfY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyYmImZ1bmN0aW9uIiE9dHlwZW9mIGEuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wc3x8KG8hPT1mfHxkIT09dSkmJm9UKHQsYSxyLHUpLGxVPSExLGQ9dC5tZW1vaXplZFN0YXRlLGEuc3RhdGU9ZCxsWCh0LHIsYSxsKSxsSygpO3ZhciBwPXQubWVtb2l6ZWRTdGF0ZTtvIT09Znx8ZCE9PXB8fGxVfHxudWxsIT09ZSYmbnVsbCE9PWUuZGVwZW5kZW5jaWVzJiZyNyhlLmRlcGVuZGVuY2llcyk/KCJmdW5jdGlvbiI9PXR5cGVvZiBpJiYob1AodCxuLGkscikscD10Lm1lbW9pemVkU3RhdGUpLChjPWxVfHxvQyh0LG4sYyxyLGQscCx1KXx8bnVsbCE9PWUmJm51bGwhPT1lLmRlcGVuZGVuY2llcyYmcjcoZS5kZXBlbmRlbmNpZXMpKT8oc3x8ImZ1bmN0aW9uIiE9dHlwZW9mIGEuVU5TQUZFX2NvbXBvbmVudFdpbGxVcGRhdGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBhLmNvbXBvbmVudFdpbGxVcGRhdGV8fCgiZnVuY3Rpb24iPT10eXBlb2YgYS5jb21wb25lbnRXaWxsVXBkYXRlJiZhLmNvbXBvbmVudFdpbGxVcGRhdGUocixwLHUpLCJmdW5jdGlvbiI9PXR5cGVvZiBhLlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlJiZhLlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlKHIscCx1KSksImZ1bmN0aW9uIj09dHlwZW9mIGEuY29tcG9uZW50RGlkVXBkYXRlJiYodC5mbGFnc3w9NCksImZ1bmN0aW9uIj09dHlwZW9mIGEuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUmJih0LmZsYWdzfD0xMDI0KSk6KCJmdW5jdGlvbiIhPXR5cGVvZiBhLmNvbXBvbmVudERpZFVwZGF0ZXx8bz09PWUubWVtb2l6ZWRQcm9wcyYmZD09PWUubWVtb2l6ZWRTdGF0ZXx8KHQuZmxhZ3N8PTQpLCJmdW5jdGlvbiIhPXR5cGVvZiBhLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHxvPT09ZS5tZW1vaXplZFByb3BzJiZkPT09ZS5tZW1vaXplZFN0YXRlfHwodC5mbGFnc3w9MTAyNCksdC5tZW1vaXplZFByb3BzPXIsdC5tZW1vaXplZFN0YXRlPXApLGEucHJvcHM9cixhLnN0YXRlPXAsYS5jb250ZXh0PXUscj1jKTooImZ1bmN0aW9uIiE9dHlwZW9mIGEuY29tcG9uZW50RGlkVXBkYXRlfHxvPT09ZS5tZW1vaXplZFByb3BzJiZkPT09ZS5tZW1vaXplZFN0YXRlfHwodC5mbGFnc3w9NCksImZ1bmN0aW9uIiE9dHlwZW9mIGEuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGV8fG89PT1lLm1lbW9pemVkUHJvcHMmJmQ9PT1lLm1lbW9pemVkU3RhdGV8fCh0LmZsYWdzfD0xMDI0KSxyPSExKX1yZXR1cm4gYT1yLG9HKGUsdCkscj0wIT0oMTI4JnQuZmxhZ3MpLGF8fHI/KGE9dC5zdGF0ZU5vZGUsbj1yJiYiZnVuY3Rpb24iIT10eXBlb2Ygbi5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3I/bnVsbDphLnJlbmRlcigpLHQuZmxhZ3N8PTEsbnVsbCE9PWUmJnI/KHQuY2hpbGQ9bEEodCxlLmNoaWxkLG51bGwsbCksdC5jaGlsZD1sQSh0LG51bGwsbixsKSk6b0IoZSx0LG4sbCksdC5tZW1vaXplZFN0YXRlPWEuc3RhdGUsZT10LmNoaWxkKTplPWlsKGUsdCxsKSxlfWZ1bmN0aW9uIG8wKGUsdCxuLHIpe3JldHVybiBySigpLHQuZmxhZ3N8PTI1NixvQihlLHQsbixyKSx0LmNoaWxkfXZhciBvMT17ZGVoeWRyYXRlZDpudWxsLHRyZWVDb250ZXh0Om51bGwscmV0cnlMYW5lOjAsaHlkcmF0aW9uRXJyb3JzOm51bGx9O2Z1bmN0aW9uIG8yKGUpe3JldHVybntiYXNlTGFuZXM6ZSxjYWNoZVBvb2w6bGsoKX19ZnVuY3Rpb24gbzMoZSx0LG4pe3JldHVybiBlPW51bGwhPT1lP2UuY2hpbGRMYW5lcyZ+bjowLHQmJihlfD11RCksZX1mdW5jdGlvbiBvNChlLHQsbil7dmFyIHIsbD10LnBlbmRpbmdQcm9wcyxhPSExLG89MCE9KDEyOCZ0LmZsYWdzKTtpZigocj1vKXx8KHI9KG51bGw9PT1lfHxudWxsIT09ZS5tZW1vaXplZFN0YXRlKSYmMCE9KDImYWUuY3VycmVudCkpLHImJihhPSEwLHQuZmxhZ3MmPS0xMjkpLHI9MCE9KDMyJnQuZmxhZ3MpLHQuZmxhZ3MmPS0zMyxudWxsPT09ZSl7aWYociQpe2lmKGE/bDgodCk6bDkoKSwoZT1ySCk/bnVsbCE9PShlPW51bGwhPT0oZT1jVihlLHJXKSkmJiImIiE9PWUuZGF0YT9lOm51bGwpJiYodC5tZW1vaXplZFN0YXRlPXtkZWh5ZHJhdGVkOmUsdHJlZUNvbnRleHQ6bnVsbCE9PXJNP3tpZDpySSxvdmVyZmxvdzpyRH06bnVsbCxyZXRyeUxhbmU6MHgyMDAwMDAwMCxoeWRyYXRpb25FcnJvcnM6bnVsbH0sKG49cngoZSkpLnJldHVybj10LHQuY2hpbGQ9bixyVj10LHJIPW51bGwpOmU9bnVsbCxudWxsPT09ZSl0aHJvdyBySyh0KTtyZXR1cm4gYyQoZSk/dC5sYW5lcz0zMjp0LmxhbmVzPTB4MjAwMDAwMDAsbnVsbH12YXIgaT1sLmNoaWxkcmVuO3JldHVybihsPWwuZmFsbGJhY2ssYSk/KGw5KCksaT1vNSh7bW9kZToiaGlkZGVuIixjaGlsZHJlbjppfSxhPXQubW9kZSksbD1yUyhsLGEsbixudWxsKSxpLnJldHVybj10LGwucmV0dXJuPXQsaS5zaWJsaW5nPWwsdC5jaGlsZD1pLChsPXQuY2hpbGQpLm1lbW9pemVkU3RhdGU9bzIobiksbC5jaGlsZExhbmVzPW8zKGUscixuKSx0Lm1lbW9pemVkU3RhdGU9bzEsb1cobnVsbCxsKSk6KGw4KHQpLG84KHQsaSkpfXZhciBzPWUubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09cyYmbnVsbCE9PShpPXMuZGVoeWRyYXRlZCkpe2lmKG8pMjU2JnQuZmxhZ3M/KGw4KHQpLHQuZmxhZ3MmPS0yNTcsdD1vNihlLHQsbikpOm51bGwhPT10Lm1lbW9pemVkU3RhdGU/KGw5KCksdC5jaGlsZD1lLmNoaWxkLHQuZmxhZ3N8PTEyOCx0PW51bGwpOihsOSgpLGk9bC5mYWxsYmFjayxhPXQubW9kZSxsPW81KHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjpsLmNoaWxkcmVufSxhKSxpPXJTKGksYSxuLG51bGwpLGkuZmxhZ3N8PTIsbC5yZXR1cm49dCxpLnJldHVybj10LGwuc2libGluZz1pLHQuY2hpbGQ9bCxsQSh0LGUuY2hpbGQsbnVsbCxuKSwobD10LmNoaWxkKS5tZW1vaXplZFN0YXRlPW8yKG4pLGwuY2hpbGRMYW5lcz1vMyhlLHIsbiksdC5tZW1vaXplZFN0YXRlPW8xLHQ9b1cobnVsbCxsKSk7ZWxzZSBpZihsOCh0KSxjJChpKSl7aWYocj1pLm5leHRTaWJsaW5nJiZpLm5leHRTaWJsaW5nLmRhdGFzZXQpdmFyIGM9ci5kZ3N0O3I9YywobD1FcnJvcih1KDQxOSkpKS5zdGFjaz0iIixsLmRpZ2VzdD1yLHIwKHt2YWx1ZTpsLHNvdXJjZTpudWxsLHN0YWNrOm51bGx9KSx0PW82KGUsdCxuKX1lbHNlIGlmKG9VfHxyOShlLHQsbiwhMSkscj0wIT0obiZlLmNoaWxkTGFuZXMpLG9VfHxyKXtpZihudWxsIT09KHI9dUUpJiYwIT09KGw9ZVUocixuKSkmJmwhPT1zLnJldHJ5TGFuZSl0aHJvdyBzLnJldHJ5TGFuZT1sLHJkKGUsbCksdTYocixlLGwpLG9qO2NIKGkpfHxzdSgpLHQ9bzYoZSx0LG4pfWVsc2UgY0goaSk/KHQuZmxhZ3N8PTE5Mix0LmNoaWxkPWUuY2hpbGQsdD1udWxsKTooZT1zLnRyZWVDb250ZXh0LHJIPWNRKGkubmV4dFNpYmxpbmcpLHJWPXQsciQ9ITAsclE9bnVsbCxyVz0hMSxudWxsIT09ZSYmckIodCxlKSx0PW84KHQsbC5jaGlsZHJlbiksdC5mbGFnc3w9NDA5Nik7cmV0dXJuIHR9cmV0dXJuIGE/KGw5KCksaT1sLmZhbGxiYWNrLGE9dC5tb2RlLGM9KHM9ZS5jaGlsZCkuc2libGluZywobD1yYihzLHttb2RlOiJoaWRkZW4iLGNoaWxkcmVuOmwuY2hpbGRyZW59KSkuc3VidHJlZUZsYWdzPTB4N2UwMDAwMCZzLnN1YnRyZWVGbGFncyxudWxsIT09Yz9pPXJiKGMsaSk6KGk9clMoaSxhLG4sbnVsbCksaS5mbGFnc3w9MiksaS5yZXR1cm49dCxsLnJldHVybj10LGwuc2libGluZz1pLHQuY2hpbGQ9bCxvVyhudWxsLGwpLGw9dC5jaGlsZCxudWxsPT09KGk9ZS5jaGlsZC5tZW1vaXplZFN0YXRlKT9pPW8yKG4pOihudWxsIT09KGE9aS5jYWNoZVBvb2wpPyhzPWxpLl9jdXJyZW50VmFsdWUsYT1hLnBhcmVudCE9PXM/e3BhcmVudDpzLHBvb2w6c306YSk6YT1saygpLGk9e2Jhc2VMYW5lczppLmJhc2VMYW5lc3xuLGNhY2hlUG9vbDphfSksbC5tZW1vaXplZFN0YXRlPWksbC5jaGlsZExhbmVzPW8zKGUscixuKSx0Lm1lbW9pemVkU3RhdGU9bzEsb1coZS5jaGlsZCxsKSk6KGw4KHQpLGU9KG49ZS5jaGlsZCkuc2libGluZywobj1yYihuLHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjpsLmNoaWxkcmVufSkpLnJldHVybj10LG4uc2libGluZz1udWxsLG51bGwhPT1lJiYobnVsbD09PShyPXQuZGVsZXRpb25zKT8odC5kZWxldGlvbnM9W2VdLHQuZmxhZ3N8PTE2KTpyLnB1c2goZSkpLHQuY2hpbGQ9bix0Lm1lbW9pemVkU3RhdGU9bnVsbCxuKX1mdW5jdGlvbiBvOChlLHQpe3JldHVybih0PW81KHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjp0fSxlLm1vZGUpKS5yZXR1cm49ZSxlLmNoaWxkPXR9ZnVuY3Rpb24gbzUoZSx0KXtyZXR1cm4oZT1ydigyMixlLG51bGwsdCkpLmxhbmVzPTAsZX1mdW5jdGlvbiBvNihlLHQsbil7cmV0dXJuIGxBKHQsZS5jaGlsZCxudWxsLG4pLGU9bzgodCx0LnBlbmRpbmdQcm9wcy5jaGlsZHJlbiksZS5mbGFnc3w9Mix0Lm1lbW9pemVkU3RhdGU9bnVsbCxlfWZ1bmN0aW9uIG85KGUsdCxuKXtlLmxhbmVzfD10O3ZhciByPWUuYWx0ZXJuYXRlO251bGwhPT1yJiYoci5sYW5lc3w9dCkscjUoZS5yZXR1cm4sdCxuKX1mdW5jdGlvbiBvNyhlKXtmb3IodmFyIHQ9bnVsbDtudWxsIT09ZTspe3ZhciBuPWUuYWx0ZXJuYXRlO251bGwhPT1uJiZudWxsPT09YXIobikmJih0PWUpLGU9ZS5zaWJsaW5nfXJldHVybiB0fWZ1bmN0aW9uIGllKGUsdCxuLHIsbCxhKXt2YXIgbz1lLm1lbW9pemVkU3RhdGU7bnVsbD09PW8/ZS5tZW1vaXplZFN0YXRlPXtpc0JhY2t3YXJkczp0LHJlbmRlcmluZzpudWxsLHJlbmRlcmluZ1N0YXJ0VGltZTowLGxhc3Q6cix0YWlsOm4sdGFpbE1vZGU6bCx0cmVlRm9ya0NvdW50OmF9OihvLmlzQmFja3dhcmRzPXQsby5yZW5kZXJpbmc9bnVsbCxvLnJlbmRlcmluZ1N0YXJ0VGltZT0wLG8ubGFzdD1yLG8udGFpbD1uLG8udGFpbE1vZGU9bCxvLnRyZWVGb3JrQ291bnQ9YSl9ZnVuY3Rpb24gaXQoZSl7dmFyIHQ9ZS5jaGlsZDtmb3IoZS5jaGlsZD1udWxsO251bGwhPT10Oyl7dmFyIG49dC5zaWJsaW5nO3Quc2libGluZz1lLmNoaWxkLGUuY2hpbGQ9dCx0PW59fWZ1bmN0aW9uIGlyKGUsdCxuKXt2YXIgcj10LnBlbmRpbmdQcm9wcyxsPXIucmV2ZWFsT3JkZXIsYT1yLnRhaWw7cj1yLmNoaWxkcmVuO3ZhciBvPWFlLmN1cnJlbnQ7aWYoMTI4JnQuZmxhZ3MpcmV0dXJuIGF0KHQsbyksbnVsbDt2YXIgaT0wIT0oMiZvKTtpZihpPyhvPTEmb3wyLHQuZmxhZ3N8PTEyOCk6byY9MSxhdCh0LG8pLCJiYWNrd2FyZHMiPT09bCYmbnVsbCE9PWU/KGl0KGUpLG9CKGUsdCxyLG4pLGl0KGUpKTpvQihlLHQscixuKSxyPXIkP3J6OjAsIWkmJm51bGwhPT1lJiYwIT0oMTI4JmUuZmxhZ3MpKWU6Zm9yKGU9dC5jaGlsZDtudWxsIT09ZTspe2lmKDEzPT09ZS50YWcpbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmbzkoZSxuLHQpO2Vsc2UgaWYoMTk9PT1lLnRhZylvOShlLG4sdCk7ZWxzZSBpZihudWxsIT09ZS5jaGlsZCl7ZS5jaGlsZC5yZXR1cm49ZSxlPWUuY2hpbGQ7Y29udGludWV9aWYoZT09PXQpYnJlYWs7Zm9yKDtudWxsPT09ZS5zaWJsaW5nOyl7aWYobnVsbD09PWUucmV0dXJufHxlLnJldHVybj09PXQpYnJlYWsgZTtlPWUucmV0dXJufWUuc2libGluZy5yZXR1cm49ZS5yZXR1cm4sZT1lLnNpYmxpbmd9c3dpdGNoKGwpe2Nhc2UiYmFja3dhcmRzIjpudWxsPT09KG49bzcodC5jaGlsZCkpPyhsPXQuY2hpbGQsdC5jaGlsZD1udWxsKToobD1uLnNpYmxpbmcsbi5zaWJsaW5nPW51bGwsaXQodCkpLGllKHQsITAsbCxudWxsLGEscik7YnJlYWs7Y2FzZSJ1bnN0YWJsZV9sZWdhY3ktYmFja3dhcmRzIjpmb3Iobj1udWxsLGw9dC5jaGlsZCx0LmNoaWxkPW51bGw7bnVsbCE9PWw7KXtpZihudWxsIT09KGU9bC5hbHRlcm5hdGUpJiZudWxsPT09YXIoZSkpe3QuY2hpbGQ9bDticmVha31lPWwuc2libGluZyxsLnNpYmxpbmc9bixuPWwsbD1lfWllKHQsITAsbixudWxsLGEscik7YnJlYWs7Y2FzZSJ0b2dldGhlciI6aWUodCwhMSxudWxsLG51bGwsdm9pZCAwLHIpO2JyZWFrO2Nhc2UiaW5kZXBlbmRlbnQiOnQubWVtb2l6ZWRTdGF0ZT1udWxsO2JyZWFrO2RlZmF1bHQ6bnVsbD09PShuPW83KHQuY2hpbGQpKT8obD10LmNoaWxkLHQuY2hpbGQ9bnVsbCk6KGw9bi5zaWJsaW5nLG4uc2libGluZz1udWxsKSxpZSh0LCExLGwsbixhLHIpfXJldHVybiB0LmNoaWxkfWZ1bmN0aW9uIGlsKGUsdCxuKXtpZihudWxsIT09ZSYmKHQuZGVwZW5kZW5jaWVzPWUuZGVwZW5kZW5jaWVzKSx1Unw9dC5sYW5lcywwPT0obiZ0LmNoaWxkTGFuZXMpKXtpZihudWxsPT09ZSlyZXR1cm4gbnVsbDtlbHNlIGlmKHI5KGUsdCxuLCExKSwwPT0obiZ0LmNoaWxkTGFuZXMpKXJldHVybiBudWxsfWlmKG51bGwhPT1lJiZ0LmNoaWxkIT09ZS5jaGlsZCl0aHJvdyBFcnJvcih1KDE1MykpO2lmKG51bGwhPT10LmNoaWxkKXtmb3Iobj1yYihlPXQuY2hpbGQsZS5wZW5kaW5nUHJvcHMpLHQuY2hpbGQ9bixuLnJldHVybj10O251bGwhPT1lLnNpYmxpbmc7KWU9ZS5zaWJsaW5nLChuPW4uc2libGluZz1yYihlLGUucGVuZGluZ1Byb3BzKSkucmV0dXJuPXQ7bi5zaWJsaW5nPW51bGx9cmV0dXJuIHQuY2hpbGR9ZnVuY3Rpb24gaWEoZSx0KXtyZXR1cm4gMCE9KGUubGFuZXMmdCl8fCEhKG51bGwhPT0oZT1lLmRlcGVuZGVuY2llcykmJnI3KGUpKX1mdW5jdGlvbiBpbyhlLHQsbil7aWYobnVsbCE9PWUpaWYoZS5tZW1vaXplZFByb3BzIT09dC5wZW5kaW5nUHJvcHMpb1U9ITA7ZWxzZXtpZighaWEoZSxuKSYmMD09KDEyOCZ0LmZsYWdzKSlyZXR1cm4gb1U9ITEsZnVuY3Rpb24oZSx0LG4pe3N3aXRjaCh0LnRhZyl7Y2FzZSAzOmVsKHQsdC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbykscjQodCxsaSxlLm1lbW9pemVkU3RhdGUuY2FjaGUpLHJKKCk7YnJlYWs7Y2FzZSAyNzpjYXNlIDU6ZW8odCk7YnJlYWs7Y2FzZSA0OmVsKHQsdC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyk7YnJlYWs7Y2FzZSAxMDpyNCh0LHQudHlwZSx0Lm1lbW9pemVkUHJvcHMudmFsdWUpO2JyZWFrO2Nhc2UgMzE6aWYobnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSlyZXR1cm4gdC5mbGFnc3w9MTI4LGw1KHQpLG51bGw7YnJlYWs7Y2FzZSAxMzp2YXIgcj10Lm1lbW9pemVkU3RhdGU7aWYobnVsbCE9PXIpe2lmKG51bGwhPT1yLmRlaHlkcmF0ZWQpcmV0dXJuIGw4KHQpLHQuZmxhZ3N8PTEyOCxudWxsO2lmKDAhPShuJnQuY2hpbGQuY2hpbGRMYW5lcykpcmV0dXJuIG80KGUsdCxuKTtyZXR1cm4gbDgodCksbnVsbCE9PShlPWlsKGUsdCxuKSk/ZS5zaWJsaW5nOm51bGx9bDgodCk7YnJlYWs7Y2FzZSAxOTppZigxMjgmdC5mbGFncylyZXR1cm4gaXIoZSx0LG4pO3ZhciBsPTAhPSgxMjgmZS5mbGFncyk7aWYoKHI9MCE9KG4mdC5jaGlsZExhbmVzKSl8fChyOShlLHQsbiwhMSkscj0wIT0obiZ0LmNoaWxkTGFuZXMpKSxsKXtpZihyKXJldHVybiBpcihlLHQsbik7dC5mbGFnc3w9MTI4fWlmKG51bGwhPT0obD10Lm1lbW9pemVkU3RhdGUpJiYobC5yZW5kZXJpbmc9bnVsbCxsLnRhaWw9bnVsbCxsLmxhc3RFZmZlY3Q9bnVsbCksYXQodCxhZS5jdXJyZW50KSwhcilyZXR1cm4gbnVsbDticmVhaztjYXNlIDIyOnJldHVybiB0LmxhbmVzPTAsb1EoZSx0LG4sdC5wZW5kaW5nUHJvcHMpO2Nhc2UgMjQ6cjQodCxsaSxlLm1lbW9pemVkU3RhdGUuY2FjaGUpfXJldHVybiBpbChlLHQsbil9KGUsdCxuKTtvVT0wIT0oMTMxMDcyJmUuZmxhZ3MpfWVsc2Ugb1U9ITEsciQmJjAhPSgxMDQ4NTc2JnQuZmxhZ3MpJiZyQSh0LHJ6LHQuaW5kZXgpO3N3aXRjaCh0LmxhbmVzPTAsdC50YWcpe2Nhc2UgMTY6ZTp7dmFyIHI9dC5wZW5kaW5nUHJvcHM7aWYoZT1sQyh0LmVsZW1lbnRUeXBlKSx0LnR5cGU9ZSwiZnVuY3Rpb24iPT10eXBlb2YgZSlyeShlKT8ocj1vTyhlLHIpLHQudGFnPTEsdD1vWihudWxsLHQsZSxyLG4pKToodC50YWc9MCx0PW9ZKG51bGwsdCxlLHIsbikpO2Vsc2V7aWYobnVsbCE9ZSl7dmFyIGw9ZS4kJHR5cGVvZjtpZihsPT09Uil7dC50YWc9MTEsdD1vVihudWxsLHQsZSxyLG4pO2JyZWFrIGV9aWYobD09PUQpe3QudGFnPTE0LHQ9b0gobnVsbCx0LGUscixuKTticmVhayBlfX10aHJvdyBFcnJvcih1KDMwNix0PWZ1bmN0aW9uIGUodCl7aWYobnVsbD09dClyZXR1cm4gbnVsbDtpZigiZnVuY3Rpb24iPT10eXBlb2YgdClyZXR1cm4gdC4kJHR5cGVvZj09PSQ/bnVsbDp0LmRpc3BsYXlOYW1lfHx0Lm5hbWV8fG51bGw7aWYoInN0cmluZyI9PXR5cGVvZiB0KXJldHVybiB0O3N3aXRjaCh0KXtjYXNlIEM6cmV0dXJuIkZyYWdtZW50IjtjYXNlIE86cmV0dXJuIlByb2ZpbGVyIjtjYXNlIFQ6cmV0dXJuIlN0cmljdE1vZGUiO2Nhc2UgTTpyZXR1cm4iU3VzcGVuc2UiO2Nhc2UgSTpyZXR1cm4iU3VzcGVuc2VMaXN0IjtjYXNlIEE6cmV0dXJuIkFjdGl2aXR5IjtjYXNlIEI6cmV0dXJuIlZpZXdUcmFuc2l0aW9uIn1pZigib2JqZWN0Ij09dHlwZW9mIHQpc3dpdGNoKHQuJCR0eXBlb2Ype2Nhc2UgTjpyZXR1cm4iUG9ydGFsIjtjYXNlIEw6cmV0dXJuIHQuZGlzcGxheU5hbWV8fCJDb250ZXh0IjtjYXNlIHo6cmV0dXJuKHQuX2NvbnRleHQuZGlzcGxheU5hbWV8fCJDb250ZXh0IikrIi5Db25zdW1lciI7Y2FzZSBSOnZhciBuPXQucmVuZGVyO3JldHVybih0PXQuZGlzcGxheU5hbWUpfHwodD0iIiE9PSh0PW4uZGlzcGxheU5hbWV8fG4ubmFtZXx8IiIpPyJGb3J3YXJkUmVmKCIrdCsiKSI6IkZvcndhcmRSZWYiKSx0O2Nhc2UgRDpyZXR1cm4gbnVsbCE9PShuPXQuZGlzcGxheU5hbWV8fG51bGwpP246ZSh0LnR5cGUpfHwiTWVtbyI7Y2FzZSBGOm49dC5fcGF5bG9hZCx0PXQuX2luaXQ7dHJ5e3JldHVybiBlKHQobikpfWNhdGNoKGUpe319cmV0dXJuIG51bGx9KGUpfHxlLCIiKSl9fXJldHVybiB0O2Nhc2UgMDpyZXR1cm4gb1koZSx0LHQudHlwZSx0LnBlbmRpbmdQcm9wcyxuKTtjYXNlIDE6cmV0dXJuIGw9b08ocj10LnR5cGUsdC5wZW5kaW5nUHJvcHMpLG9aKGUsdCxyLGwsbik7Y2FzZSAzOmU6e2lmKGVsKHQsdC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyksbnVsbD09PWUpdGhyb3cgRXJyb3IodSgzODcpKTtyPXQucGVuZGluZ1Byb3BzO3ZhciBhPXQubWVtb2l6ZWRTdGF0ZTtsPWEuZWxlbWVudCxsVihlLHQpLGxYKHQscixudWxsLG4pO3ZhciBvPXQubWVtb2l6ZWRTdGF0ZTtpZihyNCh0LGxpLHI9by5jYWNoZSksciE9PWEuY2FjaGUmJnI2KHQsW2xpXSxuLCEwKSxsSygpLHI9by5lbGVtZW50LGEuaXNEZWh5ZHJhdGVkKWlmKGE9e2VsZW1lbnQ6cixpc0RlaHlkcmF0ZWQ6ITEsY2FjaGU6by5jYWNoZX0sdC51cGRhdGVRdWV1ZS5iYXNlU3RhdGU9YSx0Lm1lbW9pemVkU3RhdGU9YSwyNTYmdC5mbGFncyl7dD1vMChlLHQscixuKTticmVhayBlfWVsc2UgaWYociE9PWwpe3IwKGw9ck4oRXJyb3IodSg0MjQpKSx0KSksdD1vMChlLHQscixuKTticmVhayBlfWVsc2UgZm9yKHJIPWNRKChlPTk9PT0oZT10LnN0YXRlTm9kZS5jb250YWluZXJJbmZvKS5ub2RlVHlwZT9lLmJvZHk6IkhUTUwiPT09ZS5ub2RlTmFtZT9lLm93bmVyRG9jdW1lbnQuYm9keTplKS5maXJzdENoaWxkKSxyVj10LHIkPSEwLHJRPW51bGwsclc9ITAsbj1saih0LG51bGwscixuKSx0LmNoaWxkPW47bjspbi5mbGFncz0tMyZuLmZsYWdzfDQwOTYsbj1uLnNpYmxpbmc7ZWxzZXtpZihySigpLHI9PT1sKXt0PWlsKGUsdCxuKTticmVhayBlfW9CKGUsdCxyLG4pfXQ9dC5jaGlsZH1yZXR1cm4gdDtjYXNlIDI2OnJldHVybiBvRyhlLHQpLG51bGw9PT1lPyhuPWMzKHQudHlwZSxudWxsLHQucGVuZGluZ1Byb3BzLG51bGwpKT90Lm1lbW9pemVkU3RhdGU9bjpyJHx8KG49dC50eXBlLGU9dC5wZW5kaW5nUHJvcHMsKHI9Y3UoZW4uY3VycmVudCkuY3JlYXRlRWxlbWVudChuKSlbZVddPXQscltlcV09ZSxjbChyLG4sZSksZTgociksdC5zdGF0ZU5vZGU9cik6dC5tZW1vaXplZFN0YXRlPWMzKHQudHlwZSxlLm1lbW9pemVkUHJvcHMsdC5wZW5kaW5nUHJvcHMsZS5tZW1vaXplZFN0YXRlKSxudWxsO2Nhc2UgMjc6cmV0dXJuIGVvKHQpLG51bGw9PT1lJiZyJCYmKHI9dC5zdGF0ZU5vZGU9Y1godC50eXBlLHQucGVuZGluZ1Byb3BzLGVuLmN1cnJlbnQpLHJWPXQsclc9ITAsbD1ySCxjeSh0LnR5cGUpPyhjVz1sLHJIPWNRKHIuZmlyc3RDaGlsZCkpOnJIPWwpLG9CKGUsdCx0LnBlbmRpbmdQcm9wcy5jaGlsZHJlbixuKSxvRyhlLHQpLG51bGw9PT1lJiYodC5mbGFnc3w9NDE5NDMwNCksdC5jaGlsZDtjYXNlIDU6cmV0dXJuIG51bGw9PT1lJiZyJCYmKChsPXI9ckgpJiYobnVsbCE9PShyPWZ1bmN0aW9uKGUsdCxuLHIpe2Zvcig7MT09PWUubm9kZVR5cGU7KXtpZihlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkhPT10LnRvTG93ZXJDYXNlKCkpe2lmKCFyJiYoIklOUFVUIiE9PWUubm9kZU5hbWV8fCJoaWRkZW4iIT09ZS50eXBlKSlicmVha31lbHNlIGlmKHIpe2lmKCFlW2VaXSlzd2l0Y2godCl7Y2FzZSJtZXRhIjppZighZS5oYXNBdHRyaWJ1dGUoIml0ZW1wcm9wIikpYnJlYWs7cmV0dXJuIGU7Y2FzZSJsaW5rIjppZigic3R5bGVzaGVldCI9PT0obD1lLmdldEF0dHJpYnV0ZSgicmVsIikpJiZlLmhhc0F0dHJpYnV0ZSgiZGF0YS1wcmVjZWRlbmNlIil8fGwhPT1uLnJlbHx8ZS5nZXRBdHRyaWJ1dGUoImhyZWYiKSE9PShudWxsPT1uLmhyZWZ8fCIiPT09bi5ocmVmP251bGw6bi5ocmVmKXx8ZS5nZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIikhPT0obnVsbD09bi5jcm9zc09yaWdpbj9udWxsOm4uY3Jvc3NPcmlnaW4pfHxlLmdldEF0dHJpYnV0ZSgidGl0bGUiKSE9PShudWxsPT1uLnRpdGxlP251bGw6bi50aXRsZSkpYnJlYWs7cmV0dXJuIGU7Y2FzZSJzdHlsZSI6aWYoZS5oYXNBdHRyaWJ1dGUoImRhdGEtcHJlY2VkZW5jZSIpKWJyZWFrO3JldHVybiBlO2Nhc2Uic2NyaXB0IjppZigoKGw9ZS5nZXRBdHRyaWJ1dGUoInNyYyIpKSE9PShudWxsPT1uLnNyYz9udWxsOm4uc3JjKXx8ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSE9PShudWxsPT1uLnR5cGU/bnVsbDpuLnR5cGUpfHxlLmdldEF0dHJpYnV0ZSgiY3Jvc3NvcmlnaW4iKSE9PShudWxsPT1uLmNyb3NzT3JpZ2luP251bGw6bi5jcm9zc09yaWdpbikpJiZsJiZlLmhhc0F0dHJpYnV0ZSgiYXN5bmMiKSYmIWUuaGFzQXR0cmlidXRlKCJpdGVtcHJvcCIpKWJyZWFrO3JldHVybiBlO2RlZmF1bHQ6cmV0dXJuIGV9fWVsc2V7aWYoImlucHV0IiE9PXR8fCJoaWRkZW4iIT09ZS50eXBlKXJldHVybiBlO3ZhciBsPW51bGw9PW4ubmFtZT9udWxsOiIiK24ubmFtZTtpZigiaGlkZGVuIj09PW4udHlwZSYmZS5nZXRBdHRyaWJ1dGUoIm5hbWUiKT09PWwpcmV0dXJuIGV9aWYobnVsbD09PShlPWNRKGUubmV4dFNpYmxpbmcpKSlicmVha31yZXR1cm4gbnVsbH0ocix0LnR5cGUsdC5wZW5kaW5nUHJvcHMsclcpKT8odC5zdGF0ZU5vZGU9cixyVj10LHJIPWNRKHIuZmlyc3RDaGlsZCksclc9ITEsbD0hMCk6bD0hMSksbHx8cksodCkpLGVvKHQpLGw9dC50eXBlLGE9dC5wZW5kaW5nUHJvcHMsbz1udWxsIT09ZT9lLm1lbW9pemVkUHJvcHM6bnVsbCxyPWEuY2hpbGRyZW4sY2YobCxhKT9yPW51bGw6bnVsbCE9PW8mJmNmKGwsbykmJih0LmZsYWdzfD0zMiksbnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSYmKGZ2Ll9jdXJyZW50VmFsdWU9bD1hdihlLHQsYXcsbnVsbCxudWxsLG4pKSxvRyhlLHQpLG9CKGUsdCxyLG4pLHQuY2hpbGQ7Y2FzZSA2OnJldHVybiBudWxsPT09ZSYmciQmJigoZT1uPXJIKSYmKG51bGwhPT0obj1mdW5jdGlvbihlLHQsbil7aWYoIiI9PT10KXJldHVybiBudWxsO2Zvcig7MyE9PWUubm9kZVR5cGU7KWlmKCgxIT09ZS5ub2RlVHlwZXx8IklOUFVUIiE9PWUubm9kZU5hbWV8fCJoaWRkZW4iIT09ZS50eXBlKSYmIW58fG51bGw9PT0oZT1jUShlLm5leHRTaWJsaW5nKSkpcmV0dXJuIG51bGw7cmV0dXJuIGV9KG4sdC5wZW5kaW5nUHJvcHMsclcpKT8odC5zdGF0ZU5vZGU9bixyVj10LHJIPW51bGwsZT0hMCk6ZT0hMSksZXx8cksodCkpLG51bGw7Y2FzZSAxMzpyZXR1cm4gbzQoZSx0LG4pO2Nhc2UgNDpyZXR1cm4gZWwodCx0LnN0YXRlTm9kZS5jb250YWluZXJJbmZvKSxyPXQucGVuZGluZ1Byb3BzLG51bGw9PT1lP3QuY2hpbGQ9bEEodCxudWxsLHIsbik6b0IoZSx0LHIsbiksdC5jaGlsZDtjYXNlIDExOnJldHVybiBvVihlLHQsdC50eXBlLHQucGVuZGluZ1Byb3BzLG4pO2Nhc2UgNzpyZXR1cm4gcj10LnBlbmRpbmdQcm9wcyxvRyhlLHQpLG9CKGUsdCxyLG4pLHQuY2hpbGQ7Y2FzZSA4OmNhc2UgMTI6cmV0dXJuIG9CKGUsdCx0LnBlbmRpbmdQcm9wcy5jaGlsZHJlbixuKSx0LmNoaWxkO2Nhc2UgMTA6cmV0dXJuIHI9dC5wZW5kaW5nUHJvcHMscjQodCx0LnR5cGUsci52YWx1ZSksb0IoZSx0LHIuY2hpbGRyZW4sbiksdC5jaGlsZDtjYXNlIDk6cmV0dXJuIGw9dC50eXBlLl9jb250ZXh0LHI9dC5wZW5kaW5nUHJvcHMuY2hpbGRyZW4sbGUodCkscj1yKGw9bHQobCkpLHQuZmxhZ3N8PTEsb0IoZSx0LHIsbiksdC5jaGlsZDtjYXNlIDE0OnJldHVybiBvSChlLHQsdC50eXBlLHQucGVuZGluZ1Byb3BzLG4pO2Nhc2UgMTU6cmV0dXJuIG8kKGUsdCx0LnR5cGUsdC5wZW5kaW5nUHJvcHMsbik7Y2FzZSAxOTpyZXR1cm4gaXIoZSx0LG4pO2Nhc2UgMzE6dmFyIGk9ZSxzPXQsYz1uLGY9cy5wZW5kaW5nUHJvcHMsZD0wIT0oMTI4JnMuZmxhZ3MpO2lmKHMuZmxhZ3MmPS0xMjksbnVsbD09PWkpe2lmKHIkKXtpZigiaGlkZGVuIj09PWYubW9kZSlyZXR1cm4gaT1vSyhzLGYpLHMubGFuZXM9MHgyMDAwMDAwMCxvVyhudWxsLGkpO2lmKGw1KHMpLChpPXJIKT9udWxsIT09KGk9bnVsbCE9PShpPWNWKGksclcpKSYmIiYiPT09aS5kYXRhP2k6bnVsbCkmJihzLm1lbW9pemVkU3RhdGU9e2RlaHlkcmF0ZWQ6aSx0cmVlQ29udGV4dDpudWxsIT09ck0/e2lkOnJJLG92ZXJmbG93OnJEfTpudWxsLHJldHJ5TGFuZToweDIwMDAwMDAwLGh5ZHJhdGlvbkVycm9yczpudWxsfSwoYz1yeChpKSkucmV0dXJuPXMscy5jaGlsZD1jLHJWPXMsckg9bnVsbCk6aT1udWxsLG51bGw9PT1pKXRocm93IHJLKHMpO3JldHVybiBzLmxhbmVzPTB4MjAwMDAwMDAsbnVsbH1yZXR1cm4gb0socyxmKX12YXIgcD1pLm1lbW9pemVkU3RhdGU7aWYobnVsbCE9PXApe3ZhciBtPXAuZGVoeWRyYXRlZDtpZihsNShzKSxkKWlmKDI1NiZzLmZsYWdzKXMuZmxhZ3MmPS0yNTcscz1vWChpLHMsYyk7ZWxzZSBpZihudWxsIT09cy5tZW1vaXplZFN0YXRlKXMuY2hpbGQ9aS5jaGlsZCxzLmZsYWdzfD0xMjgscz1udWxsO2Vsc2UgdGhyb3cgRXJyb3IodSg1NTgpKTtlbHNlIGlmKG9VfHxyOShpLHMsYywhMSksZD0wIT0oYyZpLmNoaWxkTGFuZXMpLG9VfHxkKXtpZihudWxsIT09KGY9dUUpJiYwIT09KG09ZVUoZixjKSkmJm0hPT1wLnJldHJ5TGFuZSl0aHJvdyBwLnJldHJ5TGFuZT1tLHJkKGksbSksdTYoZixpLG0pLG9qO3N1KCkscz1vWChpLHMsYyl9ZWxzZSBpPXAudHJlZUNvbnRleHQsckg9Y1EobS5uZXh0U2libGluZyksclY9cyxyJD0hMCxyUT1udWxsLHJXPSExLG51bGwhPT1pJiZyQihzLGkpLHM9b0socyxmKSxzLmZsYWdzfD00MDk2O3JldHVybiBzfXJldHVybihpPXJiKGkuY2hpbGQse21vZGU6Zi5tb2RlLGNoaWxkcmVuOmYuY2hpbGRyZW59KSkucmVmPXMucmVmLHMuY2hpbGQ9aSxpLnJldHVybj1zLGk7Y2FzZSAyMjpyZXR1cm4gb1EoZSx0LG4sdC5wZW5kaW5nUHJvcHMpO2Nhc2UgMjQ6cmV0dXJuIGxlKHQpLHI9bHQobGkpLG51bGw9PT1lPyhudWxsPT09KGw9bGIoKSkmJihsPXVFLGE9bHUoKSxsLnBvb2xlZENhY2hlPWEsYS5yZWZDb3VudCsrLG51bGwhPT1hJiYobC5wb29sZWRDYWNoZUxhbmVzfD1uKSxsPWEpLHQubWVtb2l6ZWRTdGF0ZT17cGFyZW50OnIsY2FjaGU6bH0sbEIodCkscjQodCxsaSxsKSk6KDAhPShlLmxhbmVzJm4pJiYobFYoZSx0KSxsWCh0LG51bGwsbnVsbCxuKSxsSygpKSxsPWUubWVtb2l6ZWRTdGF0ZSxhPXQubWVtb2l6ZWRTdGF0ZSxsLnBhcmVudCE9PXI/KGw9e3BhcmVudDpyLGNhY2hlOnJ9LHQubWVtb2l6ZWRTdGF0ZT1sLDA9PT10LmxhbmVzJiYodC5tZW1vaXplZFN0YXRlPXQudXBkYXRlUXVldWUuYmFzZVN0YXRlPWwpLHI0KHQsbGkscikpOihyNCh0LGxpLHI9YS5jYWNoZSksciE9PWwuY2FjaGUmJnI2KHQsW2xpXSxuLCEwKSkpLG9CKGUsdCx0LnBlbmRpbmdQcm9wcy5jaGlsZHJlbixuKSx0LmNoaWxkO2Nhc2UgMzA6cmV0dXJuIG51bGwhPShyPXQucGVuZGluZ1Byb3BzKS5uYW1lJiYiYXV0byIhPT1yLm5hbWU/dC5mbGFnc3w9bnVsbD09PWU/MHgxMjAyMDAwOjB4MTIwMDAwMDpyJCYmcmoodCksbnVsbCE9PWUmJmUubWVtb2l6ZWRQcm9wcy5uYW1lIT09ci5uYW1lP3QuZmxhZ3N8PTQxOTQ4MTY6b0coZSx0KSxvQihlLHQsci5jaGlsZHJlbixuKSx0LmNoaWxkO2Nhc2UgMjk6dGhyb3cgdC5wZW5kaW5nUHJvcHN9dGhyb3cgRXJyb3IodSgxNTYsdC50YWcpKX1mdW5jdGlvbiBpaShlKXtlLmZsYWdzfD00fWZ1bmN0aW9uIGl1KGUsdCxuLHIsbCl7dmFyIGE7aWYoKGE9MCE9KDMyJmUubW9kZSkpJiYoYT1udWxsPT09bj9mbyh0LHIpOmZvKHQscikmJihyLnNyYyE9PW4uc3JjfHxyLnNyY1NldCE9PW4uc3JjU2V0KSksYSl7aWYoZS5mbGFnc3w9MHgxMDAwMDAwLCgweDEzZmZmZjQwJmwpPT09bClpZihlLnN0YXRlTm9kZS5jb21wbGV0ZSllLmZsYWdzfD04MTkyO2Vsc2UgaWYoc2EoKSllLmZsYWdzfD04MTkyO2Vsc2UgdGhyb3cgbFQ9bF8sbEV9ZWxzZSBlLmZsYWdzJj0tMHgxMDAwMDAxfWZ1bmN0aW9uIGlzKGUsdCl7aWYoInN0eWxlc2hlZXQiIT09dC50eXBlfHwwIT0oNCZ0LnN0YXRlLmxvYWRpbmcpKWUuZmxhZ3MmPS0weDEwMDAwMDE7ZWxzZSBpZihlLmZsYWdzfD0weDEwMDAwMDAsIWZpKHQpKWlmKHNhKCkpZS5mbGFnc3w9ODE5MjtlbHNlIHRocm93IGxUPWxfLGxFfWZ1bmN0aW9uIGljKGUsdCl7bnVsbCE9PXQmJihlLmZsYWdzfD00KSwxNjM4NCZlLmZsYWdzJiYodD0yMiE9PWUudGFnP2VJKCk6MHgyMDAwMDAwMCxlLmxhbmVzfD10LHVGfD10KX1mdW5jdGlvbiBpZChlLHQpe2lmKCFyJClzd2l0Y2goZS50YWlsTW9kZSl7Y2FzZSJ2aXNpYmxlIjpicmVhaztjYXNlImNvbGxhcHNlZCI6Zm9yKHZhciBuPWUudGFpbCxyPW51bGw7bnVsbCE9PW47KW51bGwhPT1uLmFsdGVybmF0ZSYmKHI9biksbj1uLnNpYmxpbmc7bnVsbD09PXI/dHx8bnVsbD09PWUudGFpbD9lLnRhaWw9bnVsbDplLnRhaWwuc2libGluZz1udWxsOnIuc2libGluZz1udWxsO2JyZWFrO2RlZmF1bHQ6Zm9yKG49bnVsbCx0PWUudGFpbDtudWxsIT09dDspbnVsbCE9PXQuYWx0ZXJuYXRlJiYobj10KSx0PXQuc2libGluZztudWxsPT09bj9lLnRhaWw9bnVsbDpuLnNpYmxpbmc9bnVsbH19ZnVuY3Rpb24gaXAoZSl7dmFyIHQ9bnVsbCE9PWUuYWx0ZXJuYXRlJiZlLmFsdGVybmF0ZS5jaGlsZD09PWUuY2hpbGQsbj0wLHI9MDtpZih0KWZvcih2YXIgbD1lLmNoaWxkO251bGwhPT1sOylufD1sLmxhbmVzfGwuY2hpbGRMYW5lcyxyfD0weDdlMDAwMDAmbC5zdWJ0cmVlRmxhZ3Mscnw9MHg3ZTAwMDAwJmwuZmxhZ3MsbC5yZXR1cm49ZSxsPWwuc2libGluZztlbHNlIGZvcihsPWUuY2hpbGQ7bnVsbCE9PWw7KW58PWwubGFuZXN8bC5jaGlsZExhbmVzLHJ8PWwuc3VidHJlZUZsYWdzLHJ8PWwuZmxhZ3MsbC5yZXR1cm49ZSxsPWwuc2libGluZztyZXR1cm4gZS5zdWJ0cmVlRmxhZ3N8PXIsZS5jaGlsZExhbmVzPW4sdH1mdW5jdGlvbiBpbShlLHQpe3N3aXRjaChyVSh0KSx0LnRhZyl7Y2FzZSAzOnI4KGxpKSxlYSgpO2JyZWFrO2Nhc2UgMjY6Y2FzZSAyNzpjYXNlIDU6ZWkodCk7YnJlYWs7Y2FzZSA0OmVhKCk7YnJlYWs7Y2FzZSAzMTpudWxsIT09dC5tZW1vaXplZFN0YXRlJiZsNyh0KTticmVhaztjYXNlIDEzOmw3KHQpO2JyZWFrO2Nhc2UgMTk6YW4odCk7YnJlYWs7Y2FzZSAxMDpyOCh0LnR5cGUpO2JyZWFrO2Nhc2UgMjI6Y2FzZSAyMzpsNyh0KSxsMigpLG51bGwhPT1lJiZKKGx5KTticmVhaztjYXNlIDI0OnI4KGxpKX19ZnVuY3Rpb24gaWgoZSx0KXt0cnl7dmFyIG49dC51cGRhdGVRdWV1ZSxyPW51bGwhPT1uP24ubGFzdEVmZmVjdDpudWxsO2lmKG51bGwhPT1yKXt2YXIgbD1yLm5leHQ7bj1sO2Rve2lmKChuLnRhZyZlKT09PWUpe3I9dm9pZCAwO3ZhciBhPW4uY3JlYXRlO24uaW5zdC5kZXN0cm95PXI9YSgpfW49bi5uZXh0fXdoaWxlKG4hPT1sKX19Y2F0Y2goZSl7c18odCx0LnJldHVybixlKX19ZnVuY3Rpb24gaWcoZSx0LG4pe3RyeXt2YXIgcj10LnVwZGF0ZVF1ZXVlLGw9bnVsbCE9PXI/ci5sYXN0RWZmZWN0Om51bGw7aWYobnVsbCE9PWwpe3ZhciBhPWwubmV4dDtyPWE7ZG97aWYoKHIudGFnJmUpPT09ZSl7dmFyIG89ci5pbnN0LGk9by5kZXN0cm95O2lmKHZvaWQgMCE9PWkpe28uZGVzdHJveT12b2lkIDAsbD10O3RyeXtpKCl9Y2F0Y2goZSl7c18obCxuLGUpfX19cj1yLm5leHR9d2hpbGUociE9PWEpfX1jYXRjaChlKXtzXyh0LHQucmV0dXJuLGUpfX1mdW5jdGlvbiBpdihlKXt2YXIgdD1lLnVwZGF0ZVF1ZXVlO2lmKG51bGwhPT10KXt2YXIgbj1lLnN0YXRlTm9kZTt0cnl7bFkodCxuKX1jYXRjaCh0KXtzXyhlLGUucmV0dXJuLHQpfX19ZnVuY3Rpb24gaXkoZSx0LG4pe24ucHJvcHM9b08oZS50eXBlLGUubWVtb2l6ZWRQcm9wcyksbi5zdGF0ZT1lLm1lbW9pemVkU3RhdGU7dHJ5e24uY29tcG9uZW50V2lsbFVubW91bnQoKX1jYXRjaChuKXtzXyhlLHQsbil9fWZ1bmN0aW9uIGliKGUsdCl7dHJ5e3ZhciBuPWUucmVmO2lmKG51bGwhPT1uKXtzd2l0Y2goZS50YWcpe2Nhc2UgMjY6Y2FzZSAyNzpjYXNlIDU6dmFyIHI9ZS5zdGF0ZU5vZGU7YnJlYWs7Y2FzZSAzMDp2YXIgbD1lLnN0YXRlTm9kZSxhPXJuKGUubWVtb2l6ZWRQcm9wcyxsKTsobnVsbD09PWwucmVmfHxsLnJlZi5uYW1lIT09YSkmJihsLnJlZj1jQyhhKSkscj1sLnJlZjticmVhaztjYXNlIDc6bnVsbD09PWUuc3RhdGVOb2RlJiYoZS5zdGF0ZU5vZGU9bmV3IGNUKGUpKSxyPWUuc3RhdGVOb2RlO2JyZWFrO2RlZmF1bHQ6cj1lLnN0YXRlTm9kZX0iZnVuY3Rpb24iPT10eXBlb2Ygbj9lLnJlZkNsZWFudXA9bihyKTpuLmN1cnJlbnQ9cn19Y2F0Y2gobil7c18oZSx0LG4pfX1mdW5jdGlvbiBpdyhlLHQpe3ZhciBuPWUucmVmLHI9ZS5yZWZDbGVhbnVwO2lmKG51bGwhPT1uKWlmKCJmdW5jdGlvbiI9PXR5cGVvZiByKXRyeXtyKCl9Y2F0Y2gobil7c18oZSx0LG4pfWZpbmFsbHl7ZS5yZWZDbGVhbnVwPW51bGwsbnVsbCE9KGU9ZS5hbHRlcm5hdGUpJiYoZS5yZWZDbGVhbnVwPW51bGwpfWVsc2UgaWYoImZ1bmN0aW9uIj09dHlwZW9mIG4pdHJ5e24obnVsbCl9Y2F0Y2gobil7c18oZSx0LG4pfWVsc2Ugbi5jdXJyZW50PW51bGx9ZnVuY3Rpb24gaWsoZSl7dmFyIHQ9ZS50eXBlLG49ZS5tZW1vaXplZFByb3BzLHI9ZS5zdGF0ZU5vZGU7dHJ5e3N3aXRjaCh0KXtjYXNlImJ1dHRvbiI6Y2FzZSJpbnB1dCI6Y2FzZSJzZWxlY3QiOmNhc2UidGV4dGFyZWEiOm4uYXV0b0ZvY3VzJiZyLmZvY3VzKCk7YnJlYWs7Y2FzZSJpbWciOm4uc3JjP3Iuc3JjPW4uc3JjOm4uc3JjU2V0JiYoci5zcmNzZXQ9bi5zcmNTZXQpfX1jYXRjaCh0KXtzXyhlLGUucmV0dXJuLHQpfX1mdW5jdGlvbiBpUyhlLHQsbil7dHJ5e3ZhciByPWUuc3RhdGVOb2RlOyhmdW5jdGlvbihlLHQsbixyKXtzd2l0Y2godCl7Y2FzZSJkaXYiOmNhc2Uic3BhbiI6Y2FzZSJzdmciOmNhc2UicGF0aCI6Y2FzZSJhIjpjYXNlImciOmNhc2UicCI6Y2FzZSJsaSI6YnJlYWs7Y2FzZSJpbnB1dCI6dmFyIGw9bnVsbCxhPW51bGwsbz1udWxsLGk9bnVsbCxzPW51bGwsYz1udWxsLGY9bnVsbDtmb3IobSBpbiBuKXt2YXIgZD1uW21dO2lmKG4uaGFzT3duUHJvcGVydHkobSkmJm51bGwhPWQpc3dpdGNoKG0pe2Nhc2UiY2hlY2tlZCI6Y2FzZSJ2YWx1ZSI6YnJlYWs7Y2FzZSJkZWZhdWx0VmFsdWUiOnM9ZDtkZWZhdWx0OnIuaGFzT3duUHJvcGVydHkobSl8fGNuKGUsdCxtLG51bGwscixkKX19Zm9yKHZhciBwIGluIHIpe3ZhciBtPXJbcF07aWYoZD1uW3BdLHIuaGFzT3duUHJvcGVydHkocCkmJihudWxsIT1tfHxudWxsIT1kKSlzd2l0Y2gocCl7Y2FzZSJ0eXBlIjptIT09ZCYmKHRyPSEwKSxhPW07YnJlYWs7Y2FzZSJuYW1lIjptIT09ZCYmKHRyPSEwKSxsPW07YnJlYWs7Y2FzZSJjaGVja2VkIjptIT09ZCYmKHRyPSEwKSxjPW07YnJlYWs7Y2FzZSJkZWZhdWx0Q2hlY2tlZCI6bSE9PWQmJih0cj0hMCksZj1tO2JyZWFrO2Nhc2UidmFsdWUiOm0hPT1kJiYodHI9ITApLG89bTticmVhaztjYXNlImRlZmF1bHRWYWx1ZSI6bSE9PWQmJih0cj0hMCksaT1tO2JyZWFrO2Nhc2UiY2hpbGRyZW4iOmNhc2UiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiOmlmKG51bGwhPW0pdGhyb3cgRXJyb3IodSgxMzcsdCkpO2JyZWFrO2RlZmF1bHQ6bSE9PWQmJmNuKGUsdCxwLG0scixkKX19dGgoZSxvLGkscyxjLGYsYSxsKTtyZXR1cm47Y2FzZSJzZWxlY3QiOmZvcihhIGluIG09bz1pPXA9bnVsbCxuKWlmKHM9blthXSxuLmhhc093blByb3BlcnR5KGEpJiZudWxsIT1zKXN3aXRjaChhKXtjYXNlInZhbHVlIjpicmVhaztjYXNlIm11bHRpcGxlIjptPXM7ZGVmYXVsdDpyLmhhc093blByb3BlcnR5KGEpfHxjbihlLHQsYSxudWxsLHIscyl9Zm9yKGwgaW4gcilpZihhPXJbbF0scz1uW2xdLHIuaGFzT3duUHJvcGVydHkobCkmJihudWxsIT1hfHxudWxsIT1zKSlzd2l0Y2gobCl7Y2FzZSJ2YWx1ZSI6YSE9PXMmJih0cj0hMCkscD1hO2JyZWFrO2Nhc2UiZGVmYXVsdFZhbHVlIjphIT09cyYmKHRyPSEwKSxpPWE7YnJlYWs7Y2FzZSJtdWx0aXBsZSI6YSE9PXMmJih0cj0hMCksbz1hO2RlZmF1bHQ6YSE9PXMmJmNuKGUsdCxsLGEscixzKX10PWksbj1vLHI9bSxudWxsIT1wP3R5KGUsISFuLHAsITEpOiEhciE9ISFuJiYobnVsbCE9dD90eShlLCEhbix0LCEwKTp0eShlLCEhbixuP1tdOiIiLCExKSk7cmV0dXJuO2Nhc2UidGV4dGFyZWEiOmZvcihpIGluIG09cD1udWxsLG4paWYobD1uW2ldLG4uaGFzT3duUHJvcGVydHkoaSkmJm51bGwhPWwmJiFyLmhhc093blByb3BlcnR5KGkpKXN3aXRjaChpKXtjYXNlInZhbHVlIjpjYXNlImNoaWxkcmVuIjpicmVhaztkZWZhdWx0OmNuKGUsdCxpLG51bGwscixsKX1mb3IobyBpbiByKWlmKGw9cltvXSxhPW5bb10sci5oYXNPd25Qcm9wZXJ0eShvKSYmKG51bGwhPWx8fG51bGwhPWEpKXN3aXRjaChvKXtjYXNlInZhbHVlIjpsIT09YSYmKHRyPSEwKSxwPWw7YnJlYWs7Y2FzZSJkZWZhdWx0VmFsdWUiOmwhPT1hJiYodHI9ITApLG09bDticmVhaztjYXNlImNoaWxkcmVuIjpicmVhaztjYXNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIjppZihudWxsIT1sKXRocm93IEVycm9yKHUoOTEpKTticmVhaztkZWZhdWx0OmwhPT1hJiZjbihlLHQsbyxsLHIsYSl9dGIoZSxwLG0pO3JldHVybjtjYXNlIm9wdGlvbiI6Zm9yKHZhciBoIGluIG4pcD1uW2hdLG4uaGFzT3duUHJvcGVydHkoaCkmJm51bGwhPXAmJiFyLmhhc093blByb3BlcnR5KGgpJiYoInNlbGVjdGVkIj09PWg/ZS5zZWxlY3RlZD0hMTpjbihlLHQsaCxudWxsLHIscCkpO2ZvcihzIGluIHIpcD1yW3NdLG09bltzXSxyLmhhc093blByb3BlcnR5KHMpJiZwIT09bSYmKG51bGwhPXB8fG51bGwhPW0pJiYoInNlbGVjdGVkIj09PXM/KHAhPT1tJiYodHI9ITApLGUuc2VsZWN0ZWQ9cCYmImZ1bmN0aW9uIiE9dHlwZW9mIHAmJiJzeW1ib2wiIT10eXBlb2YgcCk6Y24oZSx0LHMscCxyLG0pKTtyZXR1cm47Y2FzZSJpbWciOmNhc2UibGluayI6Y2FzZSJhcmVhIjpjYXNlImJhc2UiOmNhc2UiYnIiOmNhc2UiY29sIjpjYXNlImVtYmVkIjpjYXNlImhyIjpjYXNlImtleWdlbiI6Y2FzZSJtZXRhIjpjYXNlInBhcmFtIjpjYXNlInNvdXJjZSI6Y2FzZSJ0cmFjayI6Y2FzZSJ3YnIiOmNhc2UibWVudWl0ZW0iOmZvcih2YXIgZyBpbiBuKXA9bltnXSxuLmhhc093blByb3BlcnR5KGcpJiZudWxsIT1wJiYhci5oYXNPd25Qcm9wZXJ0eShnKSYmY24oZSx0LGcsbnVsbCxyLHApO2ZvcihjIGluIHIpaWYocD1yW2NdLG09bltjXSxyLmhhc093blByb3BlcnR5KGMpJiZwIT09bSYmKG51bGwhPXB8fG51bGwhPW0pKXN3aXRjaChjKXtjYXNlImNoaWxkcmVuIjpjYXNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIjppZihudWxsIT1wKXRocm93IEVycm9yKHUoMTM3LHQpKTticmVhaztkZWZhdWx0OmNuKGUsdCxjLHAscixtKX1yZXR1cm47ZGVmYXVsdDppZih0Xyh0KSl7Zm9yKHZhciB2IGluIG4pcD1uW3ZdLG4uaGFzT3duUHJvcGVydHkodikmJnZvaWQgMCE9PXAmJiFyLmhhc093blByb3BlcnR5KHYpJiZjcihlLHQsdix2b2lkIDAscixwKTtmb3IoZiBpbiByKXA9cltmXSxtPW5bZl0sci5oYXNPd25Qcm9wZXJ0eShmKSYmcCE9PW0mJih2b2lkIDAhPT1wfHx2b2lkIDAhPT1tKSYmY3IoZSx0LGYscCxyLG0pO3JldHVybn19Zm9yKHZhciB5IGluIG4pcD1uW3ldLG4uaGFzT3duUHJvcGVydHkoeSkmJm51bGwhPXAmJiFyLmhhc093blByb3BlcnR5KHkpJiZjbihlLHQseSxudWxsLHIscCk7Zm9yKGQgaW4gcilwPXJbZF0sbT1uW2RdLHIuaGFzT3duUHJvcGVydHkoZCkmJnAhPT1tJiYobnVsbCE9cHx8bnVsbCE9bSkmJmNuKGUsdCxkLHAscixtKX0pKHIsZS50eXBlLG4sdCkscltlcV09dH1jYXRjaCh0KXtzXyhlLGUucmV0dXJuLHQpfX1mdW5jdGlvbiBpRShlLHQpe2lmKDU9PT1lLnRhZyYmbnVsbD09PWUuYWx0ZXJuYXRlJiZudWxsIT09dClmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rKyljVShlLnN0YXRlTm9kZSx0W25dKX1mdW5jdGlvbiBpeChlKXtmb3IodmFyIHQ9ZS5yZXR1cm47bnVsbCE9PXQ7KXtpZihpUCh0KSl7dmFyIG49ZS5zdGF0ZU5vZGUscj10LnN0YXRlTm9kZS5fZXZlbnRMaXN0ZW5lcnM7aWYobnVsbCE9PXIpZm9yKHZhciBsPTA7bDxyLmxlbmd0aDtsKyspe3ZhciBhPXJbbF07bi5yZW1vdmVFdmVudExpc3RlbmVyKGEudHlwZSxhLmxpc3RlbmVyLGEub3B0aW9uc09yVXNlQ2FwdHVyZSl9fWlmKGlfKHQpKWJyZWFrO3Q9dC5yZXR1cm59fWZ1bmN0aW9uIGlfKGUpe3JldHVybiA1PT09ZS50YWd8fDM9PT1lLnRhZ3x8MjY9PT1lLnRhZ3x8Mjc9PT1lLnRhZyYmY3koZS50eXBlKXx8ND09PWUudGFnfWZ1bmN0aW9uIGlQKGUpe3JldHVybiBlJiY3PT09ZS50YWcmJm51bGwhPT1lLnN0YXRlTm9kZX1mdW5jdGlvbiBpTihlKXtlOmZvcig7Oyl7Zm9yKDtudWxsPT09ZS5zaWJsaW5nOyl7aWYobnVsbD09PWUucmV0dXJufHxpXyhlLnJldHVybikpcmV0dXJuIG51bGw7ZT1lLnJldHVybn1mb3IoZS5zaWJsaW5nLnJldHVybj1lLnJldHVybixlPWUuc2libGluZzs1IT09ZS50YWcmJjYhPT1lLnRhZyYmMTghPT1lLnRhZzspe2lmKDI3PT09ZS50YWcmJmN5KGUudHlwZSl8fDImZS5mbGFnc3x8bnVsbD09PWUuY2hpbGR8fDQ9PT1lLnRhZyljb250aW51ZSBlO2UuY2hpbGQucmV0dXJuPWUsZT1lLmNoaWxkfWlmKCEoMiZlLmZsYWdzKSlyZXR1cm4gZS5zdGF0ZU5vZGV9fWZ1bmN0aW9uIGlDKGUsdCxuLHIpe3ZhciBsPWUudGFnO2lmKDU9PT1sfHw2PT09bClsPWUuc3RhdGVOb2RlLHQ/bi5pbnNlcnRCZWZvcmUobCx0KTpuLmFwcGVuZENoaWxkKGwpLGlFKGUsciksdHI9ITA7ZWxzZSBpZig0IT09bCYmKDI3PT09bCYmY3koZS50eXBlKSYmKG49ZS5zdGF0ZU5vZGUpLG51bGwhPT0oZT1lLmNoaWxkKSkpZm9yKGlDKGUsdCxuLHIpLGU9ZS5zaWJsaW5nO251bGwhPT1lOylpQyhlLHQsbixyKSxlPWUuc2libGluZ31mdW5jdGlvbiBpVChlKXt2YXIgdD1lLnN0YXRlTm9kZSxuPWUubWVtb2l6ZWRQcm9wczt0cnl7Zm9yKHZhciByPWUudHlwZSxsPXQuYXR0cmlidXRlcztsLmxlbmd0aDspdC5yZW1vdmVBdHRyaWJ1dGVOb2RlKGxbMF0pO2NsKHQscixuKSx0W2VXXT1lLHRbZXFdPW59Y2F0Y2godCl7c18oZSxlLnJldHVybix0KX19dmFyIGlPPSExLGl6PW51bGw7ZnVuY3Rpb24gaUwoZSl7KDMwPT09ZS50YWd8fDAhPSgweDIwMDAwMDAmZS5zdWJ0cmVlRmxhZ3MpKSYmKGlPPSEwKX12YXIgaVI9bnVsbDtmdW5jdGlvbiBpTSgpe3ZhciBlPWlSO3JldHVybiBpUj1udWxsLGV9dmFyIGlJPTA7ZnVuY3Rpb24gaUQoZSx0LG4scixsKXtyZXR1cm4gaUk9MCxmdW5jdGlvbiBlKHQsbixyLGwsYSl7Zm9yKHZhciBvPSExO251bGwhPT10Oyl7aWYoNT09PXQudGFnKXt2YXIgaT10LnN0YXRlTm9kZTtpZihudWxsIT09bCl7dmFyIHU9Y3goaSk7bC5wdXNoKHUpLHUudmlldyYmKG89ITApfWVsc2Ugb3x8Y3goaSkudmlldyYmKG89ITApO2lPPSEwLGNrKGksMD09PWlJP246bisiXyIraUksciksaUkrK31lbHNlKDIyIT09dC50YWd8fG51bGw9PT10Lm1lbW9pemVkU3RhdGUpJiYoMzA9PT10LnRhZyYmYXx8ZSh0LmNoaWxkLG4scixsLGEpJiYobz0hMCkpO3Q9dC5zaWJsaW5nfXJldHVybiBvfShlLmNoaWxkLHQsbixyLGwpfWZ1bmN0aW9uIGlGKGUsdCl7Zm9yKDtudWxsIT09ZTspNT09PWUudGFnP2NTKGUuc3RhdGVOb2RlLGUubWVtb2l6ZWRQcm9wcyk6KDIyIT09ZS50YWd8fG51bGw9PT1lLm1lbW9pemVkU3RhdGUpJiYoMzA9PT1lLnRhZyYmdHx8aUYoZS5jaGlsZCx0KSksZT1lLnNpYmxpbmd9ZnVuY3Rpb24gaUEoZSl7aWYoMCE9KDB4MTIwMDAwMCZlLnN1YnRyZWVGbGFncykpZm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspe2lmKCgyMiE9PWUudGFnfHxudWxsPT09ZS5tZW1vaXplZFN0YXRlKSYmKGlBKGUpLDMwPT09ZS50YWcmJjAhPSgweDEyMDAwMDAmZS5mbGFncykmJmUuc3RhdGVOb2RlLnBhaXJlZCkpe3ZhciB0PWUubWVtb2l6ZWRQcm9wcztpZihudWxsPT10Lm5hbWV8fCJhdXRvIj09PXQubmFtZSl0aHJvdyBFcnJvcih1KDU0NCkpO3ZhciBuPXQubmFtZTsibm9uZSIhPT0odD1ybCh0LmRlZmF1bHQsdC5zaGFyZSkpJiYoaUQoZSxuLHQsbnVsbCwhMSl8fGlGKGUuY2hpbGQsITEpKX1lPWUuc2libGluZ319ZnVuY3Rpb24gaWooZSx0KXtpZigzMD09PWUudGFnKXt2YXIgbj1lLnN0YXRlTm9kZSxyPWUubWVtb2l6ZWRQcm9wcyxsPXJuKHIsbiksYT1ybChyLmRlZmF1bHQsbi5wYWlyZWQ/ci5zaGFyZTpyLmVudGVyKTsibm9uZSIhPT1hP2lEKGUsbCxhLG51bGwsITEpPyhpQShlKSxuLnBhaXJlZHx8dHx8dTUoZSxyLm9uRW50ZXIpKTppRihlLmNoaWxkLCExKTppQShlKX1lbHNlIGlmKDAhPSgweDIwMDAwMDAmZS5zdWJ0cmVlRmxhZ3MpKWZvcihlPWUuY2hpbGQ7bnVsbCE9PWU7KWlqKGUsdCksZT1lLnNpYmxpbmc7ZWxzZSBpQShlKX1mdW5jdGlvbiBpVShlKXtpZihudWxsIT09aXomJjAhPT1pei5zaXplKXt2YXIgdD1pejtpZigwIT0oMHgxMjAwMDAwJmUuc3VidHJlZUZsYWdzKSlmb3IoZT1lLmNoaWxkO251bGwhPT1lOyl7aWYoMjIhPT1lLnRhZ3x8bnVsbD09PWUubWVtb2l6ZWRTdGF0ZSl7aWYoMzA9PT1lLnRhZyYmMCE9KDB4MTIwMDAwMCZlLmZsYWdzKSl7dmFyIG49ZS5tZW1vaXplZFByb3BzLHI9bi5uYW1lO2lmKG51bGwhPXImJiJhdXRvIiE9PXIpe3ZhciBsPXQuZ2V0KHIpO2lmKHZvaWQgMCE9PWwpe3ZhciBhPXJsKG4uZGVmYXVsdCxuLnNoYXJlKTtpZigibm9uZSIhPT1hJiYoaUQoZSxyLGEsbnVsbCwhMSk/KGwucGFpcmVkPWE9ZS5zdGF0ZU5vZGUsYS5wYWlyZWQ9bCx1NShlLG4ub25TaGFyZSkpOmlGKGUuY2hpbGQsITEpKSx0LmRlbGV0ZShyKSwwPT09dC5zaXplKWJyZWFrfX19aVUoZSl9ZT1lLnNpYmxpbmd9fX1mdW5jdGlvbiBpQihlKXtpZigzMD09PWUudGFnKXt2YXIgdD1lLm1lbW9pemVkUHJvcHMsbj1ybih0LGUuc3RhdGVOb2RlKSxyPW51bGwhPT1pej9pei5nZXQobik6dm9pZCAwLGw9cmwodC5kZWZhdWx0LHZvaWQgMCE9PXI/dC5zaGFyZTp0LmV4aXQpOyJub25lIiE9PWwmJihpRChlLG4sbCxudWxsLCExKT92b2lkIDAhPT1yPyhyLnBhaXJlZD1sPWUuc3RhdGVOb2RlLGwucGFpcmVkPXIsaXouZGVsZXRlKG4pLHU1KGUsdC5vblNoYXJlKSk6dTUoZSx0Lm9uRXhpdCk6aUYoZS5jaGlsZCwhMSkpLG51bGwhPT1peiYmaVUoZSl9ZWxzZSBpZigwIT0oMHgyMDAwMDAwJmUuc3VidHJlZUZsYWdzKSlmb3IoZT1lLmNoaWxkO251bGwhPT1lOylpQihlKSxlPWUuc2libGluZztlbHNlIG51bGwhPT1peiYmaVUoZSl9ZnVuY3Rpb24gaVYoZSl7aWYoMCE9KDB4MTIwMDAwMCZlLnN1YnRyZWVGbGFncykpZm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspe2lmKDIyIT09ZS50YWd8fG51bGw9PT1lLm1lbW9pemVkU3RhdGUpe2lmKDMwPT09ZS50YWcmJjAhPSgweDEyMDAwMDAmZS5mbGFncykpe3ZhciB0PWUuc3RhdGVOb2RlO251bGwhPT10LnBhaXJlZCYmKHQucGFpcmVkPW51bGwsaUYoZS5jaGlsZCwhMSkpfWlWKGUpfWU9ZS5zaWJsaW5nfX1mdW5jdGlvbiBpSChlKXtpZigzMD09PWUudGFnKWUuc3RhdGVOb2RlLnBhaXJlZD1udWxsLGlGKGUuY2hpbGQsITEpLGlWKGUpO2Vsc2UgaWYoMCE9KDB4MjAwMDAwMCZlLnN1YnRyZWVGbGFncykpZm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspaUgoZSksZT1lLnNpYmxpbmc7ZWxzZSBpVihlKX1mdW5jdGlvbiBpJChlLHQsbixyLGwsYSxvKXtmb3IodmFyIGk9ITE7bnVsbCE9PXQ7KXtpZig1PT09dC50YWcpe3ZhciB1PXQuc3RhdGVOb2RlO2lmKG51bGwhPT1hJiZpSTxhLmxlbmd0aCl7dmFyIHMsYz1hW2lJXSxmPWN4KHUpO2lmKChjLnZpZXd8fGYudmlldykmJihpPSEwKSxzPTA9PSg0JmUuZmxhZ3MpKWlmKGYuY2xpcClzPSEwO2Vsc2V7cz1jLnJlY3Q7dmFyIGQ9Zi5yZWN0O3M9cy55IT09ZC55fHxzLnghPT1kLnh8fHMuaGVpZ2h0IT09ZC5oZWlnaHR8fHMud2lkdGghPT1kLndpZHRofXMmJihlLmZsYWdzfD00KSxmLmFicz9mPSFjLmFiczooYz1jLnJlY3QsZj1mLnJlY3QsZj1jLmhlaWdodCE9PWYuaGVpZ2h0fHxjLndpZHRoIT09Zi53aWR0aCksZiYmKGUuZmxhZ3N8PTMyKX1lbHNlIGUuZmxhZ3N8PTMyOzAhPSg0JmUuZmxhZ3MpJiZjayh1LDA9PT1pST9uOm4rIl8iK2lJLGwpLGkmJjAhPSg0JmUuZmxhZ3MpfHwobnVsbD09PWlSJiYoaVI9W10pLGlSLnB1c2godSxyLHQubWVtb2l6ZWRQcm9wcykpLGlJKyt9ZWxzZSgyMiE9PXQudGFnfHxudWxsPT09dC5tZW1vaXplZFN0YXRlKSYmKDMwPT09dC50YWcmJm8/ZS5mbGFnc3w9MzImdC5mbGFnczppJChlLHQuY2hpbGQsbixyLGwsYSxvKSYmKGk9ITApKTt0PXQuc2libGluZ31yZXR1cm4gaX12YXIgaVE9ITEsaVc9ITEsaXE9ITEsaUs9ITEsaVg9ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtTZXQ/V2Vha1NldDpTZXQsaUc9bnVsbCxpWT0hMSxpSj0hMSxpWj0hMSxpMD0hMTtmdW5jdGlvbiBpMShlKXtmb3IoO251bGwhPT1pRzspe3ZhciB0PWlHLG49ZSxyPXQuYWx0ZXJuYXRlLGw9dC5mbGFncztzd2l0Y2godC50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6aWYoMCE9KDQmbCkmJm51bGwhPT0ocj1udWxsIT09KHI9dC51cGRhdGVRdWV1ZSk/ci5ldmVudHM6bnVsbCkpZm9yKG49MDtuPHIubGVuZ3RoO24rKykobD1yW25dKS5yZWYuaW1wbD1sLm5leHRJbXBsO2JyZWFrO2Nhc2UgMTppZigwIT0oMTAyNCZsKSYmbnVsbCE9PXIpe249dm9pZCAwLGw9ci5tZW1vaXplZFByb3BzLHI9ci5tZW1vaXplZFN0YXRlO3ZhciBhPXQuc3RhdGVOb2RlO3RyeXt2YXIgbz1vTyh0LnR5cGUsbCk7bj1hLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlKG8sciksYS5fX3JlYWN0SW50ZXJuYWxTbmFwc2hvdEJlZm9yZVVwZGF0ZT1ufWNhdGNoKGUpe3NfKHQsdC5yZXR1cm4sZSl9fWJyZWFrO2Nhc2UgMzppZigwIT0oMTAyNCZsKSl7aWYoOT09PShuPShyPXQuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pLm5vZGVUeXBlKSljQihyKTtlbHNlIGlmKDE9PT1uKXN3aXRjaChyLm5vZGVOYW1lKXtjYXNlIkhFQUQiOmNhc2UiSFRNTCI6Y2FzZSJCT0RZIjpjQihyKTticmVhaztkZWZhdWx0OnIudGV4dENvbnRlbnQ9IiJ9fWJyZWFrO2Nhc2UgNTpjYXNlIDI2OmNhc2UgMjc6Y2FzZSA2OmNhc2UgNDpjYXNlIDE3OmJyZWFrO2Nhc2UgMzA6biYmbnVsbCE9PXImJihuPXJuKHIubWVtb2l6ZWRQcm9wcyxyLnN0YXRlTm9kZSksIm5vbmUiIT09KGw9cmwoKGw9dC5tZW1vaXplZFByb3BzKS5kZWZhdWx0LGwudXBkYXRlKSkmJmlEKHIsbixsLHIubWVtb2l6ZWRTdGF0ZT1bXSwhMCkpO2JyZWFrO2RlZmF1bHQ6aWYoMCE9KDEwMjQmbCkpdGhyb3cgRXJyb3IodSgxNjMpKX1pZihudWxsIT09KHI9dC5zaWJsaW5nKSl7ci5yZXR1cm49dC5yZXR1cm4saUc9cjticmVha31pRz10LnJldHVybn19ZnVuY3Rpb24gaTIoZSx0LG4pe3ZhciByPW4uZmxhZ3M7c3dpdGNoKG4udGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OnVpKGUsbiksNCZyJiZpaCg1LG4pO2JyZWFrO2Nhc2UgMTppZih1aShlLG4pLDQmcilpZihlPW4uc3RhdGVOb2RlLG51bGw9PT10KXRyeXtlLmNvbXBvbmVudERpZE1vdW50KCl9Y2F0Y2goZSl7c18obixuLnJldHVybixlKX1lbHNle3ZhciBsPW9PKG4udHlwZSx0Lm1lbW9pemVkUHJvcHMpO3Q9dC5tZW1vaXplZFN0YXRlO3RyeXtlLmNvbXBvbmVudERpZFVwZGF0ZShsLHQsZS5fX3JlYWN0SW50ZXJuYWxTbmFwc2hvdEJlZm9yZVVwZGF0ZSl9Y2F0Y2goZSl7c18obixuLnJldHVybixlKX19NjQmciYmaXYobiksNTEyJnImJmliKG4sbi5yZXR1cm4pO2JyZWFrO2Nhc2UgMzppZih1aShlLG4pLDY0JnImJm51bGwhPT0oZT1uLnVwZGF0ZVF1ZXVlKSl7aWYodD1udWxsLG51bGwhPT1uLmNoaWxkKXN3aXRjaChuLmNoaWxkLnRhZyl7Y2FzZSAyNzpjYXNlIDU6Y2FzZSAxOnQ9bi5jaGlsZC5zdGF0ZU5vZGV9dHJ5e2xZKGUsdCl9Y2F0Y2goZSl7c18obixuLnJldHVybixlKX19YnJlYWs7Y2FzZSAyNzpudWxsPT09dCYmNCZyJiZpVChuKTtjYXNlIDI2OmNhc2UgNTp1aShlLG4pLG51bGw9PT10JiY0JnImJmlrKG4pLDUxMiZyJiZpYihuLG4ucmV0dXJuKTticmVhaztjYXNlIDEyOnVpKGUsbik7YnJlYWs7Y2FzZSAzMTp1aShlLG4pLDQmciYmaTkoZSxuKTticmVhaztjYXNlIDEzOnVpKGUsbiksNCZyJiZpNyhlLG4pLDY0JnImJm51bGwhPT0oZT1uLm1lbW9pemVkU3RhdGUpJiZudWxsIT09KGU9ZS5kZWh5ZHJhdGVkKSYmZnVuY3Rpb24oZSx0KXt2YXIgbj1lLm93bmVyRG9jdW1lbnQ7aWYoIiR+Ij09PWUuZGF0YSllLl9yZWFjdFJldHJ5PXQ7ZWxzZSBpZigiJD8iIT09ZS5kYXRhfHwibG9hZGluZyIhPT1uLnJlYWR5U3RhdGUpdCgpO2Vsc2V7dmFyIHI9ZnVuY3Rpb24oKXt0KCksbi5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixyKX07bi5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixyKSxlLl9yZWFjdFJldHJ5PXJ9fShlLG49c1QuYmluZChudWxsLG4pKTticmVhaztjYXNlIDIyOmlmKCEocj1udWxsIT09bi5tZW1vaXplZFN0YXRlfHxpUSkpe3Q9bnVsbCE9PXQmJm51bGwhPT10Lm1lbW9pemVkU3RhdGV8fGlXLGw9aVE7dmFyIGE9aVc7aVE9ciwoaVc9dCkmJiFhP2Z1bmN0aW9uIGUodCxuLHIpe2ZvcihyPXImJjAhPSg4NzcyJm4uc3VidHJlZUZsYWdzKSxuPW4uY2hpbGQ7bnVsbCE9PW47KXt2YXIgbD1uLmFsdGVybmF0ZSxhPXQsbz1uLGk9by5mbGFncztzd2l0Y2goby50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6ZShhLG8sciksaWgoNCxvKTticmVhaztjYXNlIDE6aWYoZShhLG8sciksImZ1bmN0aW9uIj09dHlwZW9mKGE9KGw9bykuc3RhdGVOb2RlKS5jb21wb25lbnREaWRNb3VudCl0cnl7YS5jb21wb25lbnREaWRNb3VudCgpfWNhdGNoKGUpe3NfKGwsbC5yZXR1cm4sZSl9aWYobnVsbCE9PShhPShsPW8pLnVwZGF0ZVF1ZXVlKSl7dmFyIHU9bC5zdGF0ZU5vZGU7dHJ5e3ZhciBzPWEuc2hhcmVkLmhpZGRlbkNhbGxiYWNrcztpZihudWxsIT09cylmb3IoYS5zaGFyZWQuaGlkZGVuQ2FsbGJhY2tzPW51bGwsYT0wO2E8cy5sZW5ndGg7YSsrKWxHKHNbYV0sdSl9Y2F0Y2goZSl7c18obCxsLnJldHVybixlKX19ciYmNjQmaSYmaXYobyksaWIobyxvLnJldHVybik7YnJlYWs7Y2FzZSAyNzppVChvKTtjYXNlIDI2OmNhc2UgNTppZig1PT09by50YWcpe3U9bztmb3IodmFyIGM9dS5yZXR1cm47bnVsbCE9PWMmJihpUChjKSYmY1UodS5zdGF0ZU5vZGUsYy5zdGF0ZU5vZGUpLCFpXyhjKSk7KWM9Yy5yZXR1cm59ZShhLG8sciksciYmbnVsbD09PWwmJjQmaSYmaWsobyksaWIobyxvLnJldHVybik7YnJlYWs7Y2FzZSAxMjplKGEsbyxyKTticmVhaztjYXNlIDMxOmUoYSxvLHIpLHImJjQmaSYmaTkoYSxvKTticmVhaztjYXNlIDEzOmUoYSxvLHIpLHImJjQmaSYmaTcoYSxvKTticmVhaztjYXNlIDIyOm51bGw9PT1vLm1lbW9pemVkU3RhdGUmJmUoYSxvLHIpLGliKG8sby5yZXR1cm4pO2JyZWFrO2Nhc2UgMzA6ZShhLG8sciksaWIobyxvLnJldHVybik7YnJlYWs7Y2FzZSA3OmliKG8sby5yZXR1cm4pO2RlZmF1bHQ6ZShhLG8scil9bj1uLnNpYmxpbmd9fShlLG4sMCE9KDg3NzImbi5zdWJ0cmVlRmxhZ3MpKTp1aShlLG4pLGlRPWwsaVc9YX1icmVhaztjYXNlIDMwOnVpKGUsbiksNTEyJnImJmliKG4sbi5yZXR1cm4pO2JyZWFrO2Nhc2UgNzo1MTImciYmaWIobixuLnJldHVybik7ZGVmYXVsdDp1aShlLG4pfX1mdW5jdGlvbiBpMyhlLHQpe2ZvcihlPWUuY2hpbGQ7bnVsbCE9PWU7KShmdW5jdGlvbiBlKHQsbil7c3dpdGNoKHQudGFnKXtjYXNlIDU6Y2FzZSAyNjp0cnl7dmFyIHI9dC5zdGF0ZU5vZGU7aWYobil7dmFyIGw9ci5zdHlsZTsiZnVuY3Rpb24iPT10eXBlb2YgbC5zZXRQcm9wZXJ0eT9sLnNldFByb3BlcnR5KCJkaXNwbGF5Iiwibm9uZSIsImltcG9ydGFudCIpOmwuZGlzcGxheT0ibm9uZSJ9ZWxzZXt2YXIgYT10LnN0YXRlTm9kZSxvPXQubWVtb2l6ZWRQcm9wcy5zdHlsZSxpPW51bGwhPW8mJm8uaGFzT3duUHJvcGVydHkoImRpc3BsYXkiKT9vLmRpc3BsYXk6bnVsbDthLnN0eWxlLmRpc3BsYXk9bnVsbD09aXx8ImJvb2xlYW4iPT10eXBlb2YgaT8iIjooIiIraSkudHJpbSgpfX1jYXRjaChlKXtzXyh0LHQucmV0dXJuLGUpfSFmdW5jdGlvbiB0KG4scil7aWYoMHg0MDAwMDAwJm4uc3VidHJlZUZsYWdzKWZvcihuPW4uY2hpbGQ7bnVsbCE9PW47KXtlOnt2YXIgbD1uO3N3aXRjaChsLnRhZyl7Y2FzZSA0OmUobCxyKTticmVhayBlO2Nhc2UgMjI6bnVsbD09PWwubWVtb2l6ZWRTdGF0ZSYmdChsLHIpO2JyZWFrIGU7ZGVmYXVsdDp0KGwscil9fW49bi5zaWJsaW5nfX0odCxuKTticmVhaztjYXNlIDY6dHJ5e3Quc3RhdGVOb2RlLm5vZGVWYWx1ZT1uPyIiOnQubWVtb2l6ZWRQcm9wcyx0cj0hMH1jYXRjaChlKXtzXyh0LHQucmV0dXJuLGUpfWJyZWFrO2Nhc2UgMTg6dHJ5e3ZhciB1PXQuc3RhdGVOb2RlO24/Y3codSwhMCk6Y3codC5zdGF0ZU5vZGUsITEpfWNhdGNoKGUpe3NfKHQsdC5yZXR1cm4sZSl9YnJlYWs7Y2FzZSAyMjpjYXNlIDIzOm51bGw9PT10Lm1lbW9pemVkU3RhdGUmJmkzKHQsbik7YnJlYWs7ZGVmYXVsdDppMyh0LG4pfX0pKGUsdCksZT1lLnNpYmxpbmd9dmFyIGk0PW51bGwsaTg9ITE7ZnVuY3Rpb24gaTUoZSx0LG4pe2ZvcihuPW4uY2hpbGQ7bnVsbCE9PW47KWk2KGUsdCxuKSxuPW4uc2libGluZ31mdW5jdGlvbiBpNihlLHQsbil7aWYoZV8mJiJmdW5jdGlvbiI9PXR5cGVvZiBlXy5vbkNvbW1pdEZpYmVyVW5tb3VudCl0cnl7ZV8ub25Db21taXRGaWJlclVubW91bnQoZXgsbil9Y2F0Y2goZSl7fXN3aXRjaChuLnRhZyl7Y2FzZSAyNjppV3x8aXcobix0KSxpNShlLHQsbiksbi5tZW1vaXplZFN0YXRlP24ubWVtb2l6ZWRTdGF0ZS5jb3VudC0tOm4uc3RhdGVOb2RlJiYobj1uLnN0YXRlTm9kZSkucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChuKTticmVhaztjYXNlIDI3OmlXfHxpdyhuLHQpO3ZhciByPWk0LGw9aTg7Y3kobi50eXBlKSYmKGk0PW4uc3RhdGVOb2RlLGk4PSExKSxpNShlLHQsbiksY0cobi5zdGF0ZU5vZGUpLGk0PXIsaTg9bDticmVhaztjYXNlIDU6aVd8fGl3KG4sdCksNT09PW4udGFnJiZpeChuKTtjYXNlIDY6aWYocj1pNCxsPWk4LGk0PW51bGwsaTUoZSx0LG4pLGk0PXIsaTg9bCxudWxsIT09aTQpaWYoaTgpdHJ5eyg5PT09aTQubm9kZVR5cGU/aTQuYm9keToiSFRNTCI9PT1pNC5ub2RlTmFtZT9pNC5vd25lckRvY3VtZW50LmJvZHk6aTQpLnJlbW92ZUNoaWxkKG4uc3RhdGVOb2RlKSx0cj0hMH1jYXRjaChlKXtzXyhuLHQsZSl9ZWxzZSB0cnl7aTQucmVtb3ZlQ2hpbGQobi5zdGF0ZU5vZGUpLHRyPSEwfWNhdGNoKGUpe3NfKG4sdCxlKX1icmVhaztjYXNlIDE4Om51bGwhPT1pNCYmKGk4PyhjYig5PT09KGU9aTQpLm5vZGVUeXBlP2UuYm9keToiSFRNTCI9PT1lLm5vZGVOYW1lP2Uub3duZXJEb2N1bWVudC5ib2R5OmUsbi5zdGF0ZU5vZGUpLGZHKGUpKTpjYihpNCxuLnN0YXRlTm9kZSkpO2JyZWFrO2Nhc2UgNDpyPWk0LGw9aTgsaTQ9bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyxpOD0hMCxpNShlLHQsbiksaTQ9cixpOD1sO2JyZWFrO2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTppZygyLG4sdCksaVd8fGlnKDQsbix0KSxpNShlLHQsbik7YnJlYWs7Y2FzZSAxOmlXfHwoaXcobix0KSwiZnVuY3Rpb24iPT10eXBlb2Yocj1uLnN0YXRlTm9kZSkuY29tcG9uZW50V2lsbFVubW91bnQmJml5KG4sdCxyKSksaTUoZSx0LG4pO2JyZWFrO2Nhc2UgMjE6ZGVmYXVsdDppNShlLHQsbik7YnJlYWs7Y2FzZSAyMjppVz0ocj1pVyl8fG51bGwhPT1uLm1lbW9pemVkU3RhdGUsaTUoZSx0LG4pLGlXPXI7YnJlYWs7Y2FzZSAzMDppdyhuLHQpLGk1KGUsdCxuKTticmVhaztjYXNlIDc6aVd8fGl3KG4sdCksaTUoZSx0LG4pfX1mdW5jdGlvbiBpOShlLHQpe2lmKG51bGw9PT10Lm1lbW9pemVkU3RhdGUmJm51bGwhPT0oZT10LmFsdGVybmF0ZSkmJm51bGwhPT0oZT1lLm1lbW9pemVkU3RhdGUpKXtlPWUuZGVoeWRyYXRlZDt0cnl7ZkcoZSl9Y2F0Y2goZSl7c18odCx0LnJldHVybixlKX19fWZ1bmN0aW9uIGk3KGUsdCl7aWYobnVsbD09PXQubWVtb2l6ZWRTdGF0ZSYmbnVsbCE9PShlPXQuYWx0ZXJuYXRlKSYmbnVsbCE9PShlPWUubWVtb2l6ZWRTdGF0ZSkmJm51bGwhPT0oZT1lLmRlaHlkcmF0ZWQpKXRyeXtmRyhlKX1jYXRjaChlKXtzXyh0LHQucmV0dXJuLGUpfX1mdW5jdGlvbiB1ZShlLHQpe3ZhciBuPWZ1bmN0aW9uKGUpe3N3aXRjaChlLnRhZyl7Y2FzZSAzMTpjYXNlIDEzOmNhc2UgMTk6dmFyIHQ9ZS5zdGF0ZU5vZGU7cmV0dXJuIG51bGw9PT10JiYodD1lLnN0YXRlTm9kZT1uZXcgaVgpLHQ7Y2FzZSAyMjpyZXR1cm4gbnVsbD09PSh0PShlPWUuc3RhdGVOb2RlKS5fcmV0cnlDYWNoZSkmJih0PWUuX3JldHJ5Q2FjaGU9bmV3IGlYKSx0O2RlZmF1bHQ6dGhyb3cgRXJyb3IodSg0MzUsZS50YWcpKX19KGUpO3QuZm9yRWFjaChmdW5jdGlvbih0KXtpZighbi5oYXModCkpe24uYWRkKHQpO3ZhciByPXNPLmJpbmQobnVsbCxlLHQpO3QudGhlbihyLHIpfX0pfWZ1bmN0aW9uIHV0KGUsdCxuKXt2YXIgcj10LmRlbGV0aW9ucztpZihudWxsIT09cilmb3IodmFyIGw9MDtsPHIubGVuZ3RoO2wrKyl7dmFyIGE9cltsXSxvPWUsaT10LHM9aTtlOmZvcig7bnVsbCE9PXM7KXtzd2l0Y2gocy50YWcpe2Nhc2UgMjc6aWYoY3kocy50eXBlKSl7aTQ9cy5zdGF0ZU5vZGUsaTg9ITE7YnJlYWsgZX1icmVhaztjYXNlIDU6aTQ9cy5zdGF0ZU5vZGUsaTg9ITE7YnJlYWsgZTtjYXNlIDM6Y2FzZSA0Omk0PXMuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8saTg9ITA7YnJlYWsgZX1zPXMucmV0dXJufWlmKG51bGw9PT1pNCl0aHJvdyBFcnJvcih1KDE2MCkpO2k2KG8saSxhKSxpND1udWxsLGk4PSExLG51bGwhPT0obz1hLmFsdGVybmF0ZSkmJihvLnJldHVybj1udWxsKSxhLnJldHVybj1udWxsfWlmKDEzODg2JnQuc3VidHJlZUZsYWdzKWZvcih0PXQuY2hpbGQ7bnVsbCE9PXQ7KXVyKHQsZSxuKSx0PXQuc2libGluZ312YXIgdW49bnVsbDtmdW5jdGlvbiB1cihlLHQsbil7dmFyIHI9ZS5hbHRlcm5hdGUsbD1lLmZsYWdzO3N3aXRjaChlLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNDpjYXNlIDE1OnV0KHQsZSxuKSx1bChlKSw0JmwmJihpZygzLGUsZS5yZXR1cm4pLGloKDMsZSksaWcoNSxlLGUucmV0dXJuKSk7YnJlYWs7Y2FzZSAxOnV0KHQsZSxuKSx1bChlKSw1MTImbCYmKGlXfHxudWxsPT09cnx8aXcocixyLnJldHVybikpLDY0JmwmJmlRJiZudWxsIT09KGU9ZS51cGRhdGVRdWV1ZSkmJm51bGwhPT0ocj1lLmNhbGxiYWNrcykmJih0PWUuc2hhcmVkLmhpZGRlbkNhbGxiYWNrcyxlLnNoYXJlZC5oaWRkZW5DYWxsYmFja3M9bnVsbD09PXQ/cjp0LmNvbmNhdChyKSk7YnJlYWs7Y2FzZSAyNjp2YXIgYT11bjtpZih1dCh0LGUsbiksdWwoZSksNTEyJmwmJihpV3x8bnVsbD09PXJ8fGl3KHIsci5yZXR1cm4pKSw0JmwpaWYobj1udWxsIT09cj9yLm1lbW9pemVkU3RhdGU6bnVsbCx0PWUubWVtb2l6ZWRTdGF0ZSxudWxsPT09cilpZihudWxsPT09dClpZihudWxsPT09ZS5zdGF0ZU5vZGUpe2U6e3I9ZS50eXBlLHQ9ZS5tZW1vaXplZFByb3BzLG49YS5vd25lckRvY3VtZW50fHxhO3Q6c3dpdGNoKHIpe2Nhc2UidGl0bGUiOighKGw9bi5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGl0bGUiKVswXSl8fGxbZVpdfHxsW2VXXXx8Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj09PWwubmFtZXNwYWNlVVJJfHxsLmhhc0F0dHJpYnV0ZSgiaXRlbXByb3AiKSkmJihsPW4uY3JlYXRlRWxlbWVudChyKSxuLmhlYWQuaW5zZXJ0QmVmb3JlKGwsbi5xdWVyeVNlbGVjdG9yKCJoZWFkID4gdGl0bGUiKSkpLGNsKGwscix0KSxsW2VXXT1lLGU4KGwpLHI9bDticmVhayBlO2Nhc2UibGluayI6aWYoYT1mbCgibGluayIsImhyZWYiLG4pLmdldChyKyh0LmhyZWZ8fCIiKSkpe2Zvcih2YXIgbz0wO288YS5sZW5ndGg7bysrKWlmKChsPWFbb10pLmdldEF0dHJpYnV0ZSgiaHJlZiIpPT09KG51bGw9PXQuaHJlZnx8IiI9PT10LmhyZWY/bnVsbDp0LmhyZWYpJiZsLmdldEF0dHJpYnV0ZSgicmVsIik9PT0obnVsbD09dC5yZWw/bnVsbDp0LnJlbCkmJmwuZ2V0QXR0cmlidXRlKCJ0aXRsZSIpPT09KG51bGw9PXQudGl0bGU/bnVsbDp0LnRpdGxlKSYmbC5nZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIik9PT0obnVsbD09dC5jcm9zc09yaWdpbj9udWxsOnQuY3Jvc3NPcmlnaW4pKXthLnNwbGljZShvLDEpO2JyZWFrIHR9fWNsKGw9bi5jcmVhdGVFbGVtZW50KHIpLHIsdCksbi5oZWFkLmFwcGVuZENoaWxkKGwpO2JyZWFrO2Nhc2UibWV0YSI6aWYoYT1mbCgibWV0YSIsImNvbnRlbnQiLG4pLmdldChyKyh0LmNvbnRlbnR8fCIiKSkpe2ZvcihvPTA7bzxhLmxlbmd0aDtvKyspaWYoKGw9YVtvXSkuZ2V0QXR0cmlidXRlKCJjb250ZW50Iik9PT0obnVsbD09dC5jb250ZW50P251bGw6IiIrdC5jb250ZW50KSYmbC5nZXRBdHRyaWJ1dGUoIm5hbWUiKT09PShudWxsPT10Lm5hbWU/bnVsbDp0Lm5hbWUpJiZsLmdldEF0dHJpYnV0ZSgicHJvcGVydHkiKT09PShudWxsPT10LnByb3BlcnR5P251bGw6dC5wcm9wZXJ0eSkmJmwuZ2V0QXR0cmlidXRlKCJodHRwLWVxdWl2Iik9PT0obnVsbD09dC5odHRwRXF1aXY/bnVsbDp0Lmh0dHBFcXVpdikmJmwuZ2V0QXR0cmlidXRlKCJjaGFyc2V0Iik9PT0obnVsbD09dC5jaGFyU2V0P251bGw6dC5jaGFyU2V0KSl7YS5zcGxpY2UobywxKTticmVhayB0fX1jbChsPW4uY3JlYXRlRWxlbWVudChyKSxyLHQpLG4uaGVhZC5hcHBlbmRDaGlsZChsKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKHUoNDY4LHIpKX1sW2VXXT1lLGU4KGwpLHI9bH1lLnN0YXRlTm9kZT1yfWVsc2UgZmEoYSxlLnR5cGUsZS5zdGF0ZU5vZGUpO2Vsc2UgZS5zdGF0ZU5vZGU9YzcoYSx0LGUubWVtb2l6ZWRQcm9wcyk7ZWxzZSBuIT09dD8obnVsbD09PW4/bnVsbCE9PXIuc3RhdGVOb2RlJiYocj1yLnN0YXRlTm9kZSkucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChyKTpuLmNvdW50LS0sbnVsbD09PXQ/ZmEoYSxlLnR5cGUsZS5zdGF0ZU5vZGUpOmM3KGEsdCxlLm1lbW9pemVkUHJvcHMpKTpudWxsPT09dCYmbnVsbCE9PWUuc3RhdGVOb2RlJiZpUyhlLGUubWVtb2l6ZWRQcm9wcyxyLm1lbW9pemVkUHJvcHMpO2JyZWFrO2Nhc2UgMjc6dXQodCxlLG4pLHVsKGUpLDUxMiZsJiYoaVd8fG51bGw9PT1yfHxpdyhyLHIucmV0dXJuKSksbnVsbCE9PXImJjQmbCYmaVMoZSxlLm1lbW9pemVkUHJvcHMsci5tZW1vaXplZFByb3BzKTticmVhaztjYXNlIDU6aWYoYT1pcSxpcT0hMSx1dCh0LGUsbiksaXE9YSx1bChlKSw1MTImbCYmKGlXfHxudWxsPT09cnx8aXcocixyLnJldHVybikpLDMyJmUuZmxhZ3Mpe3Q9ZS5zdGF0ZU5vZGU7dHJ5e3RrKHQsIiIpLHRyPSEwfWNhdGNoKHQpe3NfKGUsZS5yZXR1cm4sdCl9fTQmbCYmbnVsbCE9ZS5zdGF0ZU5vZGUmJih0PWUubWVtb2l6ZWRQcm9wcyxpUyhlLHQsbnVsbCE9PXI/ci5tZW1vaXplZFByb3BzOnQpKSwxMDI0JmwmJihpSz0hMCk7YnJlYWs7Y2FzZSA2OmlmKHV0KHQsZSxuKSx1bChlKSw0Jmwpe2lmKG51bGw9PT1lLnN0YXRlTm9kZSl0aHJvdyBFcnJvcih1KDE2MikpO3I9ZS5tZW1vaXplZFByb3BzLHQ9ZS5zdGF0ZU5vZGU7dHJ5e3Qubm9kZVZhbHVlPXIsdHI9ITB9Y2F0Y2godCl7c18oZSxlLnJldHVybix0KX19YnJlYWs7Y2FzZSAzOmlmKHRyPSExLGZyPW51bGwsYT11bix1bj1jWih0LmNvbnRhaW5lckluZm8pLHV0KHQsZSxuKSx1bj1hLHVsKGUpLDQmbCYmbnVsbCE9PXImJnIubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpdHJ5e2ZHKHQuY29udGFpbmVySW5mbyl9Y2F0Y2godCl7c18oZSxlLnJldHVybix0KX1pSyYmKGlLPSExLGZ1bmN0aW9uIGUodCl7aWYoMTAyNCZ0LnN1YnRyZWVGbGFncylmb3IodD10LmNoaWxkO251bGwhPT10Oyl7dmFyIG49dDtlKG4pLDU9PT1uLnRhZyYmMTAyNCZuLmZsYWdzJiZuLnN0YXRlTm9kZS5yZXNldCgpLHQ9dC5zaWJsaW5nfX0oZSkpLHRyPSExO2JyZWFrO2Nhc2UgNDpyPWlxLGlxPWlRLGw9dGwoKSxhPXVuLHVuPWNaKGUuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pLHV0KHQsZSxuKSx1bChlKSx1bj1hLHRyJiZpSiYmKGlaPSEwKSx0cj1sLGlxPXI7YnJlYWs7Y2FzZSAxMjp1dCh0LGUsbiksdWwoZSk7YnJlYWs7Y2FzZSAzMTpjYXNlIDE5OnV0KHQsZSxuKSx1bChlKSw0JmwmJm51bGwhPT0ocj1lLnVwZGF0ZVF1ZXVlKSYmKGUudXBkYXRlUXVldWU9bnVsbCx1ZShlLHIpKTticmVhaztjYXNlIDEzOnV0KHQsZSxuKSx1bChlKSw4MTkyJmUuY2hpbGQuZmxhZ3MmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUhPShudWxsIT09ciYmbnVsbCE9PXIubWVtb2l6ZWRTdGF0ZSkmJih1Qj1ldigpKSw0JmwmJm51bGwhPT0ocj1lLnVwZGF0ZVF1ZXVlKSYmKGUudXBkYXRlUXVldWU9bnVsbCx1ZShlLHIpKTticmVhaztjYXNlIDIyOmE9bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSxvPW51bGwhPT1yJiZudWxsIT09ci5tZW1vaXplZFN0YXRlO3ZhciBpPWlRLHM9aVcsYz1pcTtpUT1pfHxhLGlxPWN8fGEsaVc9c3x8byx1dCh0LGUsbiksaVc9cyxpcT1jLGlRPWksdWwoZSksODE5MiZsJiYoKHQ9ZS5zdGF0ZU5vZGUpLl92aXNpYmlsaXR5PWE/LTImdC5fdmlzaWJpbGl0eToxfHQuX3Zpc2liaWxpdHksYSYmKG51bGw9PT1yfHxvfHxpUXx8aVd8fGZ1bmN0aW9uIGUodCl7Zm9yKHQ9dC5jaGlsZDtudWxsIT09dDspe3ZhciBuPXQ7c3dpdGNoKG4udGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE0OmNhc2UgMTU6aWcoNCxuLG4ucmV0dXJuKSxlKG4pO2JyZWFrO2Nhc2UgMTppdyhuLG4ucmV0dXJuKTt2YXIgcj1uLnN0YXRlTm9kZTsiZnVuY3Rpb24iPT10eXBlb2Ygci5jb21wb25lbnRXaWxsVW5tb3VudCYmaXkobixuLnJldHVybixyKSxlKG4pO2JyZWFrO2Nhc2UgMjc6Y0cobi5zdGF0ZU5vZGUpO2Nhc2UgMjY6Y2FzZSA1Oml3KG4sbi5yZXR1cm4pLDU9PT1uLnRhZyYmaXgobiksZShuKTticmVhaztjYXNlIDIyOm51bGw9PT1uLm1lbW9pemVkU3RhdGUmJmUobik7YnJlYWs7Y2FzZSAzMDppdyhuLG4ucmV0dXJuKSxlKG4pO2JyZWFrO2Nhc2UgNzppdyhuLG4ucmV0dXJuKTtkZWZhdWx0OmUobil9dD10LnNpYmxpbmd9fShlKSksIWEmJmlxfHxpMyhlLGEpKSw0JmwmJm51bGwhPT0ocj1lLnVwZGF0ZVF1ZXVlKSYmbnVsbCE9PSh0PXIucmV0cnlRdWV1ZSkmJihyLnJldHJ5UXVldWU9bnVsbCx1ZShlLHQpKTticmVhaztjYXNlIDMwOjUxMiZsJiYoaVd8fG51bGw9PT1yfHxpdyhyLHIucmV0dXJuKSksbD10bCgpLGE9aUosbz0oMHgxM2ZmZmYwMCZuKT09PW4saT1lLm1lbW9pemVkUHJvcHMsaUo9byYmIm5vbmUiIT09cmwoaS5kZWZhdWx0LGkudXBkYXRlKSx1dCh0LGUsbiksdWwoZSksbyYmbnVsbCE9PXImJnRyJiYoZS5mbGFnc3w9NCksaUo9YSx0cj1sO2JyZWFrO2Nhc2UgMjE6YnJlYWs7Y2FzZSA3OnImJm51bGwhPT1yLnN0YXRlTm9kZSYmKHIuc3RhdGVOb2RlLl9mcmFnbWVudEZpYmVyPWUpO2RlZmF1bHQ6dXQodCxlLG4pLHVsKGUpfX1mdW5jdGlvbiB1bChlKXt2YXIgdD1lLmZsYWdzO2lmKDImdCl7dHJ5e2Zvcih2YXIgbixyPW51bGwsbD1lLnJldHVybjtudWxsIT09bDspe2lmKGlQKGwpKXt2YXIgYT1sLnN0YXRlTm9kZTtudWxsPT09cj9yPVthXTpyLnB1c2goYSl9aWYoaV8obCkpe249bDticmVha31sPWwucmV0dXJufWlmKG51bGw9PW4pdGhyb3cgRXJyb3IodSgxNjApKTtzd2l0Y2gobi50YWcpe2Nhc2UgMjc6dmFyIG89bi5zdGF0ZU5vZGUsaT1pTihlKTtpQyhlLGksbyxyKTticmVhaztjYXNlIDU6dmFyIHM9bi5zdGF0ZU5vZGU7MzImbi5mbGFncyYmKHRrKHMsIiIpLG4uZmxhZ3MmPS0zMyk7dmFyIGM9aU4oZSk7aUMoZSxjLHMscik7YnJlYWs7Y2FzZSAzOmNhc2UgNDp2YXIgZj1uLnN0YXRlTm9kZS5jb250YWluZXJJbmZvLGQ9aU4oZSk7IWZ1bmN0aW9uIGUodCxuLHIsbCl7dmFyIGE9dC50YWc7aWYoNT09PWF8fDY9PT1hKWE9dC5zdGF0ZU5vZGUsbj8oOT09PXIubm9kZVR5cGU/ci5ib2R5OiJIVE1MIj09PXIubm9kZU5hbWU/ci5vd25lckRvY3VtZW50LmJvZHk6cikuaW5zZXJ0QmVmb3JlKGEsbik6KChuPTk9PT1yLm5vZGVUeXBlP3IuYm9keToiSFRNTCI9PT1yLm5vZGVOYW1lP3Iub3duZXJEb2N1bWVudC5ib2R5OnIpLmFwcGVuZENoaWxkKGEpLG51bGwhPShyPXIuX3JlYWN0Um9vdENvbnRhaW5lcil8fG51bGwhPT1uLm9uY2xpY2t8fChuLm9uY2xpY2s9dFQpKSxpRSh0LGwpLHRyPSEwO2Vsc2UgaWYoNCE9PWEmJigyNz09PWEmJmN5KHQudHlwZSkmJihyPXQuc3RhdGVOb2RlLG49bnVsbCksbnVsbCE9PSh0PXQuY2hpbGQpKSlmb3IoZSh0LG4scixsKSx0PXQuc2libGluZztudWxsIT09dDspZSh0LG4scixsKSx0PXQuc2libGluZ30oZSxkLGYscik7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcih1KDE2MSkpfX1jYXRjaCh0KXtzXyhlLGUucmV0dXJuLHQpfWUuZmxhZ3MmPS0zfTQwOTYmdCYmKGUuZmxhZ3MmPS00MDk3KX1mdW5jdGlvbiB1YShlLHQpe2lmKDkyNzAmdC5zdWJ0cmVlRmxhZ3MpZm9yKHQ9dC5jaGlsZDtudWxsIT09dDspdW8odCxlKSx0PXQuc2libGluZztlbHNlIWZ1bmN0aW9uIGUodCxuKXtmb3IodD10LmNoaWxkO251bGwhPT10Oyl7aWYoMzA9PT10LnRhZyl7dmFyIHI9dC5tZW1vaXplZFByb3BzLGw9dC5zdGF0ZU5vZGUsYT1ybihyLGwpLG89cmwoci5kZWZhdWx0LHIudXBkYXRlKTtpZihuKXZhciBpPW51bGw9PT0obD1sLmNsb25lcyk/bnVsbDpsLm1hcChjXyk7ZWxzZSBpPXQubWVtb2l6ZWRTdGF0ZSx0Lm1lbW9pemVkU3RhdGU9bnVsbDtsPXQ7dmFyIHU9dC5jaGlsZDtpST0wLGE9aSQobCx1LGEsYSxvLGksITEpLDAhPSg0JnQuZmxhZ3MpJiZhJiYobnx8dTUodCxyLm9uVXBkYXRlKSl9ZWxzZSAwIT0oMHgyMDAwMDAwJnQuc3VidHJlZUZsYWdzKSYmZSh0LG4pO3Q9dC5zaWJsaW5nfX0odCwhMSl9ZnVuY3Rpb24gdW8oZSx0KXt2YXIgbj1lLmFsdGVybmF0ZTtpZihudWxsPT09bilpaihlLCExKTtlbHNlIHN3aXRjaChlLnRhZyl7Y2FzZSAzOmlmKGkwPWlZPSExLGlNKCksdWEodCxlKSwhaVkmJiFpWil7aWYobnVsbCE9PShlPWlSKSlmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrPTMpe249ZVtyXTt2YXIgbD1lW3IrMV07Y1MobixlW3IrMl0pLG51bGwhPT0obj1uLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSYmbi5hbmltYXRlKHtvcGFjaXR5OlswLDBdLHBvaW50ZXJFdmVudHM6WyJub25lIiwibm9uZSJdfSx7ZHVyYXRpb246MCxmaWxsOiJmb3J3YXJkcyIscHNldWRvRWxlbWVudDoiOjp2aWV3LXRyYW5zaXRpb24tZ3JvdXAoIitsKyIpIn0pfW51bGwhPT0oZT05PT09KGU9dC5jb250YWluZXJJbmZvKS5ub2RlVHlwZT9lLmRvY3VtZW50RWxlbWVudDplLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSYmIiI9PT1lLnN0eWxlLnZpZXdUcmFuc2l0aW9uTmFtZSYmKGUuc3R5bGUudmlld1RyYW5zaXRpb25OYW1lPSJub25lIixlLmFuaW1hdGUoe29wYWNpdHk6WzAsMF0scG9pbnRlckV2ZW50czpbIm5vbmUiLCJub25lIl19LHtkdXJhdGlvbjowLGZpbGw6ImZvcndhcmRzIixwc2V1ZG9FbGVtZW50OiI6OnZpZXctdHJhbnNpdGlvbi1ncm91cChyb290KSJ9KSxlLmFuaW1hdGUoe3dpZHRoOlswLDBdLGhlaWdodDpbMCwwXX0se2R1cmF0aW9uOjAsZmlsbDoiZm9yd2FyZHMiLHBzZXVkb0VsZW1lbnQ6Ijo6dmlldy10cmFuc2l0aW9uIn0pKSxpMD0hMH1pUj1udWxsO2JyZWFrO2Nhc2UgNTpkZWZhdWx0OnVhKHQsZSk7YnJlYWs7Y2FzZSA0OnI9aVksaVk9ITEsdWEodCxlKSxpWSYmKGlaPSEwKSxpWT1yO2JyZWFrO2Nhc2UgMjI6bnVsbD09PWUubWVtb2l6ZWRTdGF0ZSYmKG51bGwhPT1uLm1lbW9pemVkU3RhdGU/aWooZSwhMSk6dWEodCxlKSk7YnJlYWs7Y2FzZSAzMDpyPWlZLGw9aU0oKSxpWT0hMSx1YSh0LGUpLGlZJiYoZS5mbGFnc3w9NCk7dmFyIGE9ZS5tZW1vaXplZFByb3BzLG89ZS5zdGF0ZU5vZGU7dD1ybihhLG8pLG89cm4obi5tZW1vaXplZFByb3BzLG8pO3ZhciBpPXJsKGEuZGVmYXVsdCxhLnVwZGF0ZSk7Im5vbmUiPT09aT90PSExOihhPW4ubWVtb2l6ZWRTdGF0ZSxuLm1lbW9pemVkU3RhdGU9bnVsbCxuPWUuY2hpbGQsaUk9MCx0PWkkKGUsbix0LG8saSxhLCEwKSxpSSE9PShudWxsPT09YT8wOmEubGVuZ3RoKSYmKGUuZmxhZ3N8PTMyKSksMCE9KDQmZS5mbGFncykmJnQ/KHU1KGUsZS5tZW1vaXplZFByb3BzLm9uVXBkYXRlKSxpUj1sKTpudWxsIT09bCYmKGwucHVzaC5hcHBseShsLGlSKSxpUj1sKSxpWT0wIT0oMzImZS5mbGFncyl8fHJ9fWZ1bmN0aW9uIHVpKGUsdCl7aWYoODc3MiZ0LnN1YnRyZWVGbGFncylmb3IodD10LmNoaWxkO251bGwhPT10OylpMihlLHQuYWx0ZXJuYXRlLHQpLHQ9dC5zaWJsaW5nfWZ1bmN0aW9uIHV1KGUsdCl7dmFyIG49bnVsbDtudWxsIT09ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZS5jYWNoZVBvb2wmJihuPWUubWVtb2l6ZWRTdGF0ZS5jYWNoZVBvb2wucG9vbCksZT1udWxsLG51bGwhPT10Lm1lbW9pemVkU3RhdGUmJm51bGwhPT10Lm1lbW9pemVkU3RhdGUuY2FjaGVQb29sJiYoZT10Lm1lbW9pemVkU3RhdGUuY2FjaGVQb29sLnBvb2wpLGUhPT1uJiYobnVsbCE9ZSYmZS5yZWZDb3VudCsrLG51bGwhPW4mJmxzKG4pKX1mdW5jdGlvbiB1cyhlLHQpe2U9bnVsbCxudWxsIT09dC5hbHRlcm5hdGUmJihlPXQuYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGUuY2FjaGUpLCh0PXQubWVtb2l6ZWRTdGF0ZS5jYWNoZSkhPT1lJiYodC5yZWZDb3VudCsrLG51bGwhPWUmJmxzKGUpKX1mdW5jdGlvbiB1YyhlLHQsbixyKXt2YXIgbD0oMHgxM2ZmZmYwMCZuKT09PW47aWYodC5zdWJ0cmVlRmxhZ3MmKGw/MTAyNjI6MTAyNTYpKWZvcih0PXQuY2hpbGQ7bnVsbCE9PXQ7KXVmKGUsdCxuLHIpLHQ9dC5zaWJsaW5nO2Vsc2UgbCYmZnVuY3Rpb24gZSh0KXtmb3IodD10LmNoaWxkO251bGwhPT10OykzMD09PXQudGFnP2lGKHQuY2hpbGQsITEpOjAhPSgweDIwMDAwMDAmdC5zdWJ0cmVlRmxhZ3MpJiZlKHQpLHQ9dC5zaWJsaW5nfSh0KX1mdW5jdGlvbiB1ZihlLHQsbixyKXt2YXIgbD0oMHgxM2ZmZmYwMCZuKT09PW47bCYmbnVsbD09PXQuYWx0ZXJuYXRlJiZudWxsIT09dC5yZXR1cm4mJm51bGwhPT10LnJldHVybi5hbHRlcm5hdGUmJmlIKHQpO3ZhciBhPXQuZmxhZ3M7c3dpdGNoKHQudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OnVjKGUsdCxuLHIpLDIwNDgmYSYmaWgoOSx0KTticmVhaztjYXNlIDE6Y2FzZSAzMTpjYXNlIDEzOmRlZmF1bHQ6dWMoZSx0LG4scik7YnJlYWs7Y2FzZSAzOnVjKGUsdCxuLHIpLGwmJmkwJiYoInJvb3QiPT09KGU9OT09PShlPWUuY29udGFpbmVySW5mbykubm9kZVR5cGU/ZS5ib2R5OiJIVE1MIj09PWUubm9kZU5hbWU/ZS5vd25lckRvY3VtZW50LmJvZHk6ZSkuc3R5bGUudmlld1RyYW5zaXRpb25OYW1lJiYoZS5zdHlsZS52aWV3VHJhbnNpdGlvbk5hbWU9IiIpLG51bGwhPT0oZT1lLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSYmIm5vbmUiPT09ZS5zdHlsZS52aWV3VHJhbnNpdGlvbk5hbWUmJihlLnN0eWxlLnZpZXdUcmFuc2l0aW9uTmFtZT0iIikpLDIwNDgmYSYmKGE9bnVsbCxudWxsIT09dC5hbHRlcm5hdGUmJihhPXQuYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGUuY2FjaGUpLCh0PXQubWVtb2l6ZWRTdGF0ZS5jYWNoZSkhPT1hJiYodC5yZWZDb3VudCsrLG51bGwhPWEmJmxzKGEpKSk7YnJlYWs7Y2FzZSAxMjppZigyMDQ4JmEpe3VjKGUsdCxuLHIpLGE9dC5zdGF0ZU5vZGU7dHJ5e3ZhciBvPXQubWVtb2l6ZWRQcm9wcyxpPW8uaWQsdT1vLm9uUG9zdENvbW1pdDsiZnVuY3Rpb24iPT10eXBlb2YgdSYmdShpLG51bGw9PT10LmFsdGVybmF0ZT8ibW91bnQiOiJ1cGRhdGUiLGEucGFzc2l2ZUVmZmVjdER1cmF0aW9uLC0wKX1jYXRjaChlKXtzXyh0LHQucmV0dXJuLGUpfX1lbHNlIHVjKGUsdCxuLHIpO2JyZWFrO2Nhc2UgMjM6YnJlYWs7Y2FzZSAyMjpvPXQuc3RhdGVOb2RlLGk9dC5hbHRlcm5hdGUsbnVsbCE9PXQubWVtb2l6ZWRTdGF0ZT8obCYmbnVsbCE9PWkmJm51bGw9PT1pLm1lbW9pemVkU3RhdGUmJmlIKGkpLDImby5fdmlzaWJpbGl0eT91YyhlLHQsbixyKTp1ZChlLHQpKToobCYmbnVsbCE9PWkmJm51bGwhPT1pLm1lbW9pemVkU3RhdGUmJmlIKHQpLDImby5fdmlzaWJpbGl0eT91YyhlLHQsbixyKTooby5fdmlzaWJpbGl0eXw9MixmdW5jdGlvbiBlKHQsbixyLGwsYSl7Zm9yKGE9YSYmMCE9KDEwMjU2Jm4uc3VidHJlZUZsYWdzKSxuPW4uY2hpbGQ7bnVsbCE9PW47KXt2YXIgbz1uLGk9by5mbGFncztzd2l0Y2goby50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6ZSh0LG8scixsLGEpLGloKDgsbyk7YnJlYWs7Y2FzZSAyMzpicmVhaztjYXNlIDIyOnZhciB1PW8uc3RhdGVOb2RlO251bGwhPT1vLm1lbW9pemVkU3RhdGU/MiZ1Ll92aXNpYmlsaXR5P2UodCxvLHIsbCxhKTp1ZCh0LG8pOih1Ll92aXNpYmlsaXR5fD0yLGUodCxvLHIsbCxhKSksYSYmMjA0OCZpJiZ1dShvLmFsdGVybmF0ZSxvKTticmVhaztjYXNlIDI0OmUodCxvLHIsbCxhKSxhJiYyMDQ4JmkmJnVzKG8uYWx0ZXJuYXRlLG8pO2JyZWFrO2RlZmF1bHQ6ZSh0LG8scixsLGEpfW49bi5zaWJsaW5nfX0oZSx0LG4sciwwIT0oMTAyNTYmdC5zdWJ0cmVlRmxhZ3MpKSkpLDIwNDgmYSYmdXUoaSx0KTticmVhaztjYXNlIDI0OnVjKGUsdCxuLHIpLDIwNDgmYSYmdXModC5hbHRlcm5hdGUsdCk7YnJlYWs7Y2FzZSAzMDpsJiZudWxsIT09KGE9dC5hbHRlcm5hdGUpJiYoaUYoYS5jaGlsZCwhMCksaUYodC5jaGlsZCwhMCkpLHVjKGUsdCxuLHIpfX1mdW5jdGlvbiB1ZChlLHQpe2lmKDEwMjU2JnQuc3VidHJlZUZsYWdzKWZvcih0PXQuY2hpbGQ7bnVsbCE9PXQ7KXt2YXIgbj10LHI9bi5mbGFncztzd2l0Y2gobi50YWcpe2Nhc2UgMjI6dWQoZSxuKSwyMDQ4JnImJnV1KG4uYWx0ZXJuYXRlLG4pO2JyZWFrO2Nhc2UgMjQ6dWQoZSxuKSwyMDQ4JnImJnVzKG4uYWx0ZXJuYXRlLG4pO2JyZWFrO2RlZmF1bHQ6dWQoZSxuKX10PXQuc2libGluZ319dmFyIHVwPTgxOTI7ZnVuY3Rpb24gdW0oZSx0LG4pe2lmKGUuc3VidHJlZUZsYWdzJnVwKWZvcihlPWUuY2hpbGQ7bnVsbCE9PWU7KXVoKGUsdCxuKSxlPWUuc2libGluZ31mdW5jdGlvbiB1aChlLHQsbil7c3dpdGNoKGUudGFnKXtjYXNlIDI2OnVtKGUsdCxuKSxlLmZsYWdzJnVwJiYobnVsbCE9PWUubWVtb2l6ZWRTdGF0ZT9mdW5jdGlvbihlLHQsbixyKXtpZigic3R5bGVzaGVldCI9PT1uLnR5cGUmJigic3RyaW5nIiE9dHlwZW9mIHIubWVkaWF8fCExIT09bWF0Y2hNZWRpYShyLm1lZGlhKS5tYXRjaGVzKSYmMD09KDQmbi5zdGF0ZS5sb2FkaW5nKSl7aWYobnVsbD09PW4uaW5zdGFuY2Upe3ZhciBsPWM0KHIuaHJlZiksYT10LnF1ZXJ5U2VsZWN0b3IoYzgobCkpO2lmKGEpe251bGwhPT0odD1hLl9wKSYmIm9iamVjdCI9PXR5cGVvZiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgdC50aGVuJiYoZS5jb3VudCsrLGU9ZmQuYmluZChlKSx0LnRoZW4oZSxlKSksbi5zdGF0ZS5sb2FkaW5nfD00LG4uaW5zdGFuY2U9YSxlOChhKTtyZXR1cm59YT10Lm93bmVyRG9jdW1lbnR8fHQscj1jNShyKSwobD1jWS5nZXQobCkpJiZmdChyLGwpLGU4KGE9YS5jcmVhdGVFbGVtZW50KCJsaW5rIikpO3ZhciBvPWE7by5fcD1uZXcgUHJvbWlzZShmdW5jdGlvbihlLHQpe28ub25sb2FkPWUsby5vbmVycm9yPXR9KSxjbChhLCJsaW5rIixyKSxuLmluc3RhbmNlPWF9bnVsbD09PWUuc3R5bGVzaGVldHMmJihlLnN0eWxlc2hlZXRzPW5ldyBNYXApLGUuc3R5bGVzaGVldHMuc2V0KG4sdCksKHQ9bi5zdGF0ZS5wcmVsb2FkKSYmMD09KDMmbi5zdGF0ZS5sb2FkaW5nKSYmKGUuY291bnQrKyxuPWZkLmJpbmQoZSksdC5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuKSx0LmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIixuKSl9fShuLHVuLGUubWVtb2l6ZWRTdGF0ZSxlLm1lbW9pemVkUHJvcHMpOihlPWUuc3RhdGVOb2RlLCgweDEzZmZmZjQwJnQpPT09dCYmZnMobixlKSkpO2JyZWFrO2Nhc2UgNTp1bShlLHQsbiksZS5mbGFncyZ1cCYmKGU9ZS5zdGF0ZU5vZGUsKDB4MTNmZmZmNDAmdCk9PT10JiZmcyhuLGUpKTticmVhaztjYXNlIDM6Y2FzZSA0OnZhciByPXVuO3VuPWNaKGUuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pLHVtKGUsdCxuKSx1bj1yO2JyZWFrO2Nhc2UgMjI6bnVsbD09PWUubWVtb2l6ZWRTdGF0ZSYmKG51bGwhPT0ocj1lLmFsdGVybmF0ZSkmJm51bGwhPT1yLm1lbW9pemVkU3RhdGU/KHI9dXAsdXA9MHgxMDAwMDAwLHVtKGUsdCxuKSx1cD1yKTp1bShlLHQsbikpO2JyZWFrO2Nhc2UgMzA6aWYoMCE9KGUuZmxhZ3MmdXApJiZudWxsIT0ocj1lLm1lbW9pemVkUHJvcHMubmFtZSkmJiJhdXRvIiE9PXIpe3ZhciBsPWUuc3RhdGVOb2RlO2wucGFpcmVkPW51bGwsbnVsbD09PWl6JiYoaXo9bmV3IE1hcCksaXouc2V0KHIsbCl9dW0oZSx0LG4pO2JyZWFrO2RlZmF1bHQ6dW0oZSx0LG4pfX1mdW5jdGlvbiB1ZyhlKXt2YXIgdD1lLmFsdGVybmF0ZTtpZihudWxsIT09dCYmbnVsbCE9PShlPXQuY2hpbGQpKXt0LmNoaWxkPW51bGw7ZG8gdD1lLnNpYmxpbmcsZS5zaWJsaW5nPW51bGwsZT10O3doaWxlKG51bGwhPT1lKX19ZnVuY3Rpb24gdXYoZSl7dmFyIHQ9ZS5kZWxldGlvbnM7aWYoMCE9KDE2JmUuZmxhZ3MpKXtpZihudWxsIT09dClmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rKyl7dmFyIHI9dFtuXTtpRz1yLHViKHIsZSl9dWcoZSl9aWYoMTAyNTYmZS5zdWJ0cmVlRmxhZ3MpZm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspdXkoZSksZT1lLnNpYmxpbmd9ZnVuY3Rpb24gdXkoZSl7c3dpdGNoKGUudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OnV2KGUpLDIwNDgmZS5mbGFncyYmaWcoOSxlLGUucmV0dXJuKTticmVhaztjYXNlIDM6Y2FzZSAxMjpkZWZhdWx0OnV2KGUpO2JyZWFrO2Nhc2UgMjI6dmFyIHQ9ZS5zdGF0ZU5vZGU7bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmMiZ0Ll92aXNpYmlsaXR5JiYobnVsbD09PWUucmV0dXJufHwxMyE9PWUucmV0dXJuLnRhZyk/KHQuX3Zpc2liaWxpdHkmPS0zLGZ1bmN0aW9uIGUodCl7dmFyIG49dC5kZWxldGlvbnM7aWYoMCE9KDE2JnQuZmxhZ3MpKXtpZihudWxsIT09bilmb3IodmFyIHI9MDtyPG4ubGVuZ3RoO3IrKyl7dmFyIGw9bltyXTtpRz1sLHViKGwsdCl9dWcodCl9Zm9yKHQ9dC5jaGlsZDtudWxsIT09dDspe3N3aXRjaCgobj10KS50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6aWcoOCxuLG4ucmV0dXJuKSxlKG4pO2JyZWFrO2Nhc2UgMjI6MiYocj1uLnN0YXRlTm9kZSkuX3Zpc2liaWxpdHkmJihyLl92aXNpYmlsaXR5Jj0tMyxlKG4pKTticmVhaztkZWZhdWx0OmUobil9dD10LnNpYmxpbmd9fShlKSk6dXYoZSl9fWZ1bmN0aW9uIHViKGUsdCl7Zm9yKDtudWxsIT09aUc7KXt2YXIgbj1pRztzd2l0Y2gobi50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6aWcoOCxuLHQpO2JyZWFrO2Nhc2UgMjM6Y2FzZSAyMjppZihudWxsIT09bi5tZW1vaXplZFN0YXRlJiZudWxsIT09bi5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbCl7dmFyIHI9bi5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbC5wb29sO251bGwhPXImJnIucmVmQ291bnQrK31icmVhaztjYXNlIDI0OmxzKG4ubWVtb2l6ZWRTdGF0ZS5jYWNoZSl9aWYobnVsbCE9PShyPW4uY2hpbGQpKXIucmV0dXJuPW4saUc9cjtlbHNlIGZvcihuPWU7bnVsbCE9PWlHOyl7dmFyIGw9KHI9aUcpLnNpYmxpbmcsYT1yLnJldHVybjtpZighZnVuY3Rpb24gZSh0KXt2YXIgbj10LmFsdGVybmF0ZTtudWxsIT09biYmKHQuYWx0ZXJuYXRlPW51bGwsZShuKSksdC5jaGlsZD1udWxsLHQuZGVsZXRpb25zPW51bGwsdC5zaWJsaW5nPW51bGwsNT09PXQudGFnJiZudWxsIT09KG49dC5zdGF0ZU5vZGUpJiZlMChuKSx0LnN0YXRlTm9kZT1udWxsLHQucmV0dXJuPW51bGwsdC5kZXBlbmRlbmNpZXM9bnVsbCx0Lm1lbW9pemVkUHJvcHM9bnVsbCx0Lm1lbW9pemVkU3RhdGU9bnVsbCx0LnBlbmRpbmdQcm9wcz1udWxsLHQuc3RhdGVOb2RlPW51bGwsdC51cGRhdGVRdWV1ZT1udWxsfShyKSxyPT09bil7aUc9bnVsbDticmVha31pZihudWxsIT09bCl7bC5yZXR1cm49YSxpRz1sO2JyZWFrfWlHPWF9fX12YXIgdXc9e2dldENhY2hlRm9yVHlwZTpmdW5jdGlvbihlKXt2YXIgdD1sdChsaSksbj10LmRhdGEuZ2V0KGUpO3JldHVybiB2b2lkIDA9PT1uJiYobj1lKCksdC5kYXRhLnNldChlLG4pKSxufSxjYWNoZVNpZ25hbDpmdW5jdGlvbigpe3JldHVybiBsdChsaSkuY29udHJvbGxlci5zaWduYWx9fSx1az0iZnVuY3Rpb24iPT10eXBlb2YgV2Vha01hcD9XZWFrTWFwOk1hcCx1Uz0wLHVFPW51bGwsdXg9bnVsbCx1Xz0wLHVQPTAsdU49bnVsbCx1Qz0hMSx1VD0hMSx1Tz0hMSx1ej0wLHVMPTAsdVI9MCx1TT0wLHVJPTAsdUQ9MCx1Rj0wLHVBPW51bGwsdWo9bnVsbCx1VT0hMSx1Qj0wLHVWPTAsdUg9MS8wLHUkPW51bGwsdVE9bnVsbCx1Vz0wLHVxPW51bGwsdUs9bnVsbCx1WD0wLHVHPTAsdVk9bnVsbCx1Sj1udWxsLHVaPW51bGwsdTA9bnVsbCx1MT1udWxsLHUyPTAsdTM9bnVsbDtmdW5jdGlvbiB1NCgpe3JldHVybiAwIT0oMiZ1UykmJjAhPT11Xz91XyYtdV86bnVsbCE9PVcuVD9zJCgpOmVIKCl9ZnVuY3Rpb24gdTgoKXtpZigwPT09dUQpaWYoMD09KDB4MjAwMDAwMDAmdV8pfHxyJCl7dmFyIGU9ZU87MD09KDM5MzIxNjAmKGVPPDw9MSkpJiYoZU89MjYyMTQ0KSx1RD1lfWVsc2UgdUQ9MHgyMDAwMDAwMDtyZXR1cm4gbnVsbCE9PShlPWwzLmN1cnJlbnQpJiYoZS5mbGFnc3w9MzIpLHVEfWZ1bmN0aW9uIHU1KGUsdCl7aWYobnVsbCE9dCl7dmFyIG49ZS5zdGF0ZU5vZGUscj1uLnJlZjtudWxsPT09ciYmKHI9bi5yZWY9Y0Mocm4oZS5tZW1vaXplZFByb3BzLG4pKSksbnVsbD09PXUwJiYodTA9W10pLHUwLnB1c2godC5iaW5kKG51bGwscikpfX1mdW5jdGlvbiB1NihlLHQsbil7KGU9PT11RSYmKDI9PT11UHx8OT09PXVQKXx8bnVsbCE9PWUuY2FuY2VsUGVuZGluZ0NvbW1pdCkmJihzcihlLDApLHNlKGUsdV8sdUQsITEpKSxlRihlLG4pLCgwPT0oMiZ1Uyl8fGUhPT11RSkmJihlPT09dUUmJigwPT0oMiZ1UykmJih1TXw9biksND09PXVMJiZzZShlLHVfLHVELCExKSksc0YoZSkpfWZ1bmN0aW9uIHU5KGUsdCxuKXtpZigwIT0oNiZ1UykpdGhyb3cgRXJyb3IodSgzMjcpKTtmb3IodmFyIHI9IW4mJjA9PSgxMjcmdCkmJjA9PSh0JmUuZXhwaXJlZExhbmVzKXx8ZU0oZSx0KSxsPXI/ZnVuY3Rpb24oZSx0KXt2YXIgbj11Uzt1U3w9Mjt2YXIgcj1zbygpLGw9c2koKTt1RSE9PWV8fHVfIT09dD8odSQ9bnVsbCx1SD1ldigpKzUwMCxzcihlLHQpKTp1VD1lTShlLHQpO2U6Zm9yKDs7KXRyeXtpZigwIT09dVAmJm51bGwhPT11eCl7dD11eDt2YXIgYT11Tjt0OnN3aXRjaCh1UCl7Y2FzZSAxOnVQPTAsdU49bnVsbCxzZChlLHQsYSwxKTticmVhaztjYXNlIDI6Y2FzZSA5OmlmKGxQKGEpKXt1UD0wLHVOPW51bGwsc2YodCk7YnJlYWt9dD1mdW5jdGlvbigpezIhPT11UCYmOSE9PXVQfHx1RSE9PWV8fCh1UD03KSxzRihlKX0sYS50aGVuKHQsdCk7YnJlYWsgZTtjYXNlIDM6dVA9NzticmVhayBlO2Nhc2UgNDp1UD01O2JyZWFrIGU7Y2FzZSA3OmxQKGEpPyh1UD0wLHVOPW51bGwsc2YodCkpOih1UD0wLHVOPW51bGwsc2QoZSx0LGEsNykpO2JyZWFrO2Nhc2UgNTp2YXIgbz1udWxsO3N3aXRjaCh1eC50YWcpe2Nhc2UgMjY6bz11eC5tZW1vaXplZFN0YXRlO2Nhc2UgNTpjYXNlIDI3OnZhciBpPXV4O2lmKG8/Zmkobyk6aS5zdGF0ZU5vZGUuY29tcGxldGUpe3VQPTAsdU49bnVsbDt2YXIgcz1pLnNpYmxpbmc7aWYobnVsbCE9PXMpdXg9cztlbHNle3ZhciBjPWkucmV0dXJuO251bGwhPT1jPyh1eD1jLHNwKGMpKTp1eD1udWxsfWJyZWFrIHR9fXVQPTAsdU49bnVsbCxzZChlLHQsYSw1KTticmVhaztjYXNlIDY6dVA9MCx1Tj1udWxsLHNkKGUsdCxhLDYpO2JyZWFrO2Nhc2UgODpzbigpLHVMPTY7YnJlYWsgZTtkZWZhdWx0OnRocm93IEVycm9yKHUoNDYyKSl9fWZvcig7bnVsbCE9PXV4JiYhZWgoKTspc2ModXgpO2JyZWFrfWNhdGNoKHQpe3NsKGUsdCl9cmV0dXJuKHIzPXIyPW51bGwsVy5IPXIsVy5BPWwsdVM9bixudWxsIT09dXgpPzA6KHVFPW51bGwsdV89MCxycygpLHVMKX0oZSx0KTpzcyhlLHQsITApLGE9cjs7KXtpZigwPT09bCl1VCYmIXImJnNlKGUsdCwwLCExKTtlbHNle2lmKG49ZS5jdXJyZW50LmFsdGVybmF0ZSxhJiYhZnVuY3Rpb24oZSl7Zm9yKHZhciB0PWU7Oyl7dmFyIG49dC50YWc7aWYoKDA9PT1ufHwxMT09PW58fDE1PT09bikmJjE2Mzg0JnQuZmxhZ3MmJm51bGwhPT0obj10LnVwZGF0ZVF1ZXVlKSYmbnVsbCE9PShuPW4uc3RvcmVzKSlmb3IodmFyIHI9MDtyPG4ubGVuZ3RoO3IrKyl7dmFyIGw9bltyXSxhPWwuZ2V0U25hcHNob3Q7bD1sLnZhbHVlO3RyeXtpZighbkEoYSgpLGwpKXJldHVybiExfWNhdGNoKGUpe3JldHVybiExfX1pZihuPXQuY2hpbGQsMTYzODQmdC5zdWJ0cmVlRmxhZ3MmJm51bGwhPT1uKW4ucmV0dXJuPXQsdD1uO2Vsc2V7aWYodD09PWUpYnJlYWs7Zm9yKDtudWxsPT09dC5zaWJsaW5nOyl7aWYobnVsbD09PXQucmV0dXJufHx0LnJldHVybj09PWUpcmV0dXJuITA7dD10LnJldHVybn10LnNpYmxpbmcucmV0dXJuPXQucmV0dXJuLHQ9dC5zaWJsaW5nfX1yZXR1cm4hMH0obikpe2w9c3MoZSx0LCExKSxhPSExO2NvbnRpbnVlfWlmKDI9PT1sKXtpZihhPXQsZS5lcnJvclJlY292ZXJ5RGlzYWJsZWRMYW5lcyZhKXZhciBvPTA7ZWxzZSBvPTAhPShvPS0weDIwMDAwMDAxJmUucGVuZGluZ0xhbmVzKT9vOjB4MjAwMDAwMDAmbz8weDIwMDAwMDAwOjA7aWYoMCE9PW8pe3Q9bztlOntsPXVBO3ZhciBpPWUuY3VycmVudC5tZW1vaXplZFN0YXRlLmlzRGVoeWRyYXRlZDtpZihpJiYoc3IoZSxvKS5mbGFnc3w9MjU2KSwyIT09KG89c3MoZSxvLCExKSkpe2lmKHVPJiYhaSl7ZS5lcnJvclJlY292ZXJ5RGlzYWJsZWRMYW5lc3w9YSx1TXw9YSxsPTQ7YnJlYWsgZX1hPXVqLHVqPWwsbnVsbCE9PWEmJihudWxsPT09dWo/dWo9YTp1ai5wdXNoLmFwcGx5KHVqLGEpKX1sPW99aWYoYT0hMSwyIT09bCljb250aW51ZX19aWYoMT09PWwpe3NyKGUsMCksc2UoZSx0LDAsITApO2JyZWFrfWU6e3N3aXRjaChyPWUsYT1sKXtjYXNlIDA6Y2FzZSAxOnRocm93IEVycm9yKHUoMzQ1KSk7Y2FzZSA0OmlmKCg0MTk0MDQ4JnQpIT09dCYmKDB4M2MwMDAwMCZ0KSE9PXQpYnJlYWs7Y2FzZSA2OnNlKHIsdCx1RCwhdUMpO2JyZWFrIGU7Y2FzZSAyOnVqPW51bGw7YnJlYWs7Y2FzZSAzOmNhc2UgNTpicmVhaztkZWZhdWx0OnRocm93IEVycm9yKHUoMzI5KSl9aWYoKDB4M2MwMDAwMCZ0KT09PXQmJjEwPChsPXVCKzMwMC1ldigpKSl7aWYoc2Uocix0LHVELCF1QyksMCE9PWVSKHIsMCwhMCkpYnJlYWsgZTt1WD10LHIudGltZW91dEhhbmRsZT1jcCh1Ny5iaW5kKG51bGwscixuLHVqLHUkLHVVLHQsdUQsdU0sdUYsdUMsYSwiVGhyb3R0bGVkIiwtMCwwKSxsKTticmVhayBlfXU3KHIsbix1aix1JCx1VSx0LHVELHVNLHVGLHVDLGEsbnVsbCwtMCwwKX19YnJlYWt9c0YoZSl9ZnVuY3Rpb24gdTcoZSx0LG4scixsLGEsbyxpLHUscyxjLGYsZCxwKXtlLnRpbWVvdXRIYW5kbGU9LTE7dmFyIG0saCxnPXQuc3VidHJlZUZsYWdzLHY9KDB4MTNmZmZmMDAmYSk9PT1hO2lmKGY9bnVsbCwodnx8ODE5MiZnfHwweDEwMDIwMDA9PSgweDEwMDIwMDAmZykpJiYoaXo9bnVsbCx1aCh0LGEsZj17c3R5bGVzaGVldHM6bnVsbCxjb3VudDowLGltZ0NvdW50OjAsaW1nQnl0ZXM6MCxzdXNwZW5zZXlJbWFnZXM6W10sd2FpdGluZ0ZvckltYWdlczohMCx3YWl0aW5nRm9yVmlld1RyYW5zaXRpb246ITEsdW5zdXNwZW5kOnRUfSksdiYmKGc9ZixudWxsIT0odj0oOT09PSh2PWUuY29udGFpbmVySW5mbykubm9kZVR5cGU/djp2Lm93bmVyRG9jdW1lbnQpLl9fcmVhY3RWaWV3VHJhbnNpdGlvbikmJihnLmNvdW50KyssZy53YWl0aW5nRm9yVmlld1RyYW5zaXRpb249ITAsZz1mZC5iaW5kKGcpLHYuZmluaXNoZWQudGhlbihnLGcpKSksbnVsbCE9PShtPWYsaD1nPSgweDNjMDAwMDAmYSk9PT1hP3VCLWV2KCk6KDQxOTQwNDgmYSk9PT1hP3VWLWV2KCk6MCxtLnN0eWxlc2hlZXRzJiYwPT09bS5jb3VudCYmZmgobSxtLnN0eWxlc2hlZXRzKSxnPTA8bS5jb3VudHx8MDxtLmltZ0NvdW50P2Z1bmN0aW9uKGUpe3ZhciB0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtpZihtLnN0eWxlc2hlZXRzJiZmaChtLG0uc3R5bGVzaGVldHMpLG0udW5zdXNwZW5kKXt2YXIgZT1tLnVuc3VzcGVuZDttLnVuc3VzcGVuZD1udWxsLGUoKX19LDZlNCtoKTswPG0uaW1nQnl0ZXMmJjA9PT1mYyYmKGZjPTYyNTAwKmZ1bmN0aW9uKCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUpe2Zvcih2YXIgZT0wLHQ9MCxuPXBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIikscj0wO3I8bi5sZW5ndGg7cisrKXt2YXIgbD1uW3JdLGE9bC50cmFuc2ZlclNpemUsbz1sLmluaXRpYXRvclR5cGUsaT1sLmR1cmF0aW9uO2lmKGEmJmkmJmNhKG8pKXtmb3Iobz0wLGk9bC5yZXNwb25zZUVuZCxyKz0xO3I8bi5sZW5ndGg7cisrKXt2YXIgdT1uW3JdLHM9dS5zdGFydFRpbWU7aWYocz5pKWJyZWFrO3ZhciBjPXUudHJhbnNmZXJTaXplLGY9dS5pbml0aWF0b3JUeXBlO2MmJmNhKGYpJiYobys9YyooKHU9dS5yZXNwb25zZUVuZCk8aT8xOihpLXMpLyh1LXMpKSl9aWYoLS1yLHQrPTgqKGErbykvKGwuZHVyYXRpb24vMWUzKSwxMDwrK2UpYnJlYWt9fWlmKDA8ZSlyZXR1cm4gdC9lLzFlNn1yZXR1cm4gbmF2aWdhdG9yLmNvbm5lY3Rpb24mJiJudW1iZXIiPT10eXBlb2YoZT1uYXZpZ2F0b3IuY29ubmVjdGlvbi5kb3dubGluayk/ZTo1fSgpKTt2YXIgbj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aWYobS53YWl0aW5nRm9ySW1hZ2VzPSExLDA9PT1tLmNvdW50JiYobS5zdHlsZXNoZWV0cyYmZmgobSxtLnN0eWxlc2hlZXRzKSxtLnVuc3VzcGVuZCkpe3ZhciBlPW0udW5zdXNwZW5kO20udW5zdXNwZW5kPW51bGwsZSgpfX0sKG0uaW1nQnl0ZXM+ZmM/NTA6ODAwKStoKTtyZXR1cm4gbS51bnN1c3BlbmQ9ZSxmdW5jdGlvbigpe20udW5zdXNwZW5kPW51bGwsY2xlYXJUaW1lb3V0KHQpLGNsZWFyVGltZW91dChuKX19Om51bGwpKSl7dVg9YSxlLmNhbmNlbFBlbmRpbmdDb21taXQ9ZyhzaC5iaW5kKG51bGwsZSx0LGEsbixyLGwsbyxpLHUsYyxmLG51bGwsZCxwKSksc2UoZSxhLG8sIXMpO3JldHVybn1zaChlLHQsYSxuLHIsbCxvLGksdSxjLGYpfWZ1bmN0aW9uIHNlKGUsdCxuLHIpe3QmPX51SSx0Jj1+dU0sZS5zdXNwZW5kZWRMYW5lc3w9dCxlLnBpbmdlZExhbmVzJj1+dCxyJiYoZS53YXJtTGFuZXN8PXQpLHI9ZS5leHBpcmF0aW9uVGltZXM7Zm9yKHZhciBsPXQ7MDxsOyl7dmFyIGE9MzEtZVAobCksbz0xPDxhO3JbYV09LTEsbCY9fm99MCE9PW4mJmVBKGUsbix0KX1mdW5jdGlvbiBzdCgpe3JldHVybiAwIT0oNiZ1Uyl8fChzQSgwLCExKSwhMSl9ZnVuY3Rpb24gc24oKXtpZihudWxsIT09dXgpe2lmKDA9PT11UCl2YXIgZT11eC5yZXR1cm47ZWxzZSBlPXV4LHIzPXIyPW51bGwsYUUoZSksbEw9bnVsbCxsUj0wLGU9dXg7Zm9yKDtudWxsIT09ZTspaW0oZS5hbHRlcm5hdGUsZSksZT1lLnJldHVybjt1eD1udWxsfX1mdW5jdGlvbiBzcihlLHQpe3ZhciBuPWUudGltZW91dEhhbmRsZTstMSE9PW4mJihlLnRpbWVvdXRIYW5kbGU9LTEsY20obikpLG51bGwhPT0obj1lLmNhbmNlbFBlbmRpbmdDb21taXQpJiYoZS5jYW5jZWxQZW5kaW5nQ29tbWl0PW51bGwsbigpKSx1WD0wLHNuKCksdUU9ZSx1eD1uPXJiKGUuY3VycmVudCxudWxsKSx1Xz10LHVQPTAsdU49bnVsbCx1Qz0hMSx1VD1lTShlLHQpLHVPPSExLHVGPXVEPXVJPXVNPXVSPXVMPTAsdWo9dUE9bnVsbCx1VT0hMSwwIT0oOCZ0KSYmKHR8PTMyJnQpO3ZhciByPWUuZW50YW5nbGVkTGFuZXM7aWYoMCE9PXIpZm9yKGU9ZS5lbnRhbmdsZW1lbnRzLHImPXQ7MDxyOyl7dmFyIGw9MzEtZVAociksYT0xPDxsO3R8PWVbbF0sciY9fmF9cmV0dXJuIHV6PXQscnMoKSxufWZ1bmN0aW9uIHNsKGUsdCl7YWE9bnVsbCxXLkg9b1MsdD09PWxTfHx0PT09bHg/KHQ9bE8oKSx1UD0zKTp0PT09bEU/KHQ9bE8oKSx1UD00KTp1UD10PT09b2o/ODpudWxsIT09dCYmIm9iamVjdCI9PXR5cGVvZiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgdC50aGVuPzY6MSx1Tj10LG51bGw9PT11eCYmKHVMPTEsb00oZSxyTih0LGUuY3VycmVudCkpKX1mdW5jdGlvbiBzYSgpe3ZhciBlPWwzLmN1cnJlbnQ7cmV0dXJuIG51bGw9PT1lfHwoKDQxOTQwNDgmdV8pPT09dV8/bnVsbD09PWw0OigoMHgzYzAwMDAwJnVfKT09PXVffHwwIT0oMHgyMDAwMDAwMCZ1XykpJiZlPT09bDQpfWZ1bmN0aW9uIHNvKCl7dmFyIGU9Vy5IO3JldHVybiBXLkg9b1MsbnVsbD09PWU/b1M6ZX1mdW5jdGlvbiBzaSgpe3ZhciBlPVcuQTtyZXR1cm4gVy5BPXV3LGV9ZnVuY3Rpb24gc3UoKXt1TD00LHVDfHwoNDE5NDA0OCZ1XykhPT11XyYmbnVsbCE9PWwzLmN1cnJlbnR8fCh1VD0hMCksMD09KDB4N2ZmZmZmZiZ1UikmJjA9PSgweDdmZmZmZmYmdU0pfHxudWxsPT09dUV8fHNlKHVFLHVfLHVELCExKX1mdW5jdGlvbiBzcyhlLHQsbil7dmFyIHI9dVM7dVN8PTI7dmFyIGw9c28oKSxhPXNpKCk7KHVFIT09ZXx8dV8hPT10KSYmKHUkPW51bGwsc3IoZSx0KSksdD0hMTt2YXIgbz11TDtlOmZvcig7Oyl0cnl7aWYoMCE9PXVQJiZudWxsIT09dXgpe3ZhciBpPXV4LHU9dU47c3dpdGNoKHVQKXtjYXNlIDg6c24oKSxvPTY7YnJlYWsgZTtjYXNlIDM6Y2FzZSAyOmNhc2UgOTpjYXNlIDY6bnVsbD09PWwzLmN1cnJlbnQmJih0PSEwKTt2YXIgcz11UDtpZih1UD0wLHVOPW51bGwsc2QoZSxpLHUscyksbiYmdVQpe289MDticmVhayBlfWJyZWFrO2RlZmF1bHQ6cz11UCx1UD0wLHVOPW51bGwsc2QoZSxpLHUscyl9fShmdW5jdGlvbigpe2Zvcig7bnVsbCE9PXV4OylzYyh1eCl9KSgpLG89dUw7YnJlYWt9Y2F0Y2godCl7c2woZSx0KX1yZXR1cm4gdCYmZS5zaGVsbFN1c3BlbmRDb3VudGVyKysscjM9cjI9bnVsbCx1Uz1yLFcuSD1sLFcuQT1hLG51bGw9PT11eCYmKHVFPW51bGwsdV89MCxycygpKSxvfWZ1bmN0aW9uIHNjKGUpe3ZhciB0PWlvKGUuYWx0ZXJuYXRlLGUsdXopO2UubWVtb2l6ZWRQcm9wcz1lLnBlbmRpbmdQcm9wcyxudWxsPT09dD9zcChlKTp1eD10fWZ1bmN0aW9uIHNmKGUpe3ZhciB0PWUsbj10LmFsdGVybmF0ZTtzd2l0Y2godC50YWcpe2Nhc2UgMTU6Y2FzZSAwOnQ9b0oobix0LHQucGVuZGluZ1Byb3BzLHQudHlwZSx2b2lkIDAsdV8pO2JyZWFrO2Nhc2UgMTE6dD1vSihuLHQsdC5wZW5kaW5nUHJvcHMsdC50eXBlLnJlbmRlcix0LnJlZix1Xyk7YnJlYWs7Y2FzZSA1OmFFKHQpO2RlZmF1bHQ6aW0obix0KSx0PWlvKG4sdD11eD1ydyh0LHV6KSx1eil9ZS5tZW1vaXplZFByb3BzPWUucGVuZGluZ1Byb3BzLG51bGw9PT10P3NwKGUpOnV4PXR9ZnVuY3Rpb24gc2QoZSx0LG4scil7cjM9cjI9bnVsbCxhRSh0KSxsTD1udWxsLGxSPTA7dmFyIGw9dC5yZXR1cm47dHJ5e2lmKGZ1bmN0aW9uKGUsdCxuLHIsbCl7aWYobi5mbGFnc3w9MzI3NjgsbnVsbCE9PXImJiJvYmplY3QiPT10eXBlb2YgciYmImZ1bmN0aW9uIj09dHlwZW9mIHIudGhlbil7aWYobnVsbCE9PSh0PW4uYWx0ZXJuYXRlKSYmcjkodCxuLGwsITApLG51bGwhPT0obj1sMy5jdXJyZW50KSl7c3dpdGNoKG4udGFnKXtjYXNlIDMxOmNhc2UgMTM6Y2FzZSAxOTpyZXR1cm4gbnVsbD09PWw0P3N1KCk6bnVsbD09PW4uYWx0ZXJuYXRlJiYwPT09dUwmJih1TD0zKSxuLmZsYWdzJj0tMjU3LG4uZmxhZ3N8PTY1NTM2LG4ubGFuZXM9bCxyPT09bF8/bi5mbGFnc3w9MTYzODQ6KG51bGw9PT0odD1uLnVwZGF0ZVF1ZXVlKT9uLnVwZGF0ZVF1ZXVlPW5ldyBTZXQoW3JdKTp0LmFkZChyKSxzUChlLHIsbCkpLCExO2Nhc2UgMjI6cmV0dXJuIG4uZmxhZ3N8PTY1NTM2LHI9PT1sXz9uLmZsYWdzfD0xNjM4NDoobnVsbD09PSh0PW4udXBkYXRlUXVldWUpPyh0PXt0cmFuc2l0aW9uczpudWxsLG1hcmtlckluc3RhbmNlczpudWxsLHJldHJ5UXVldWU6bmV3IFNldChbcl0pfSxuLnVwZGF0ZVF1ZXVlPXQpOm51bGw9PT0obj10LnJldHJ5UXVldWUpP3QucmV0cnlRdWV1ZT1uZXcgU2V0KFtyXSk6bi5hZGQociksc1AoZSxyLGwpKSwhMX10aHJvdyBFcnJvcih1KDQzNSxuLnRhZykpfXJldHVybiBzUChlLHIsbCksc3UoKSwhMX1pZihyJClyZXR1cm4gbnVsbCE9PSh0PWwzLmN1cnJlbnQpPygwPT0oNjU1MzYmdC5mbGFncykmJih0LmZsYWdzfD0yNTYpLHQuZmxhZ3N8PTY1NTM2LHQubGFuZXM9bCxyIT09cnEmJnIwKHJOKGU9RXJyb3IodSg0MjIpLHtjYXVzZTpyfSksbikpKToociE9PXJxJiZyMChyTih0PUVycm9yKHUoNDIzKSx7Y2F1c2U6cn0pLG4pKSxlPWUuY3VycmVudC5hbHRlcm5hdGUsZS5mbGFnc3w9NjU1MzYsbCY9LWwsZS5sYW5lc3w9bCxyPXJOKHIsbiksbD1vRChlLnN0YXRlTm9kZSxyLGwpLGxXKGUsbCksNCE9PXVMJiYodUw9MikpLCExO3ZhciBhPUVycm9yKHUoNTIwKSx7Y2F1c2U6cn0pO2lmKGE9ck4oYSxuKSxudWxsPT09dUE/dUE9W2FdOnVBLnB1c2goYSksNCE9PXVMJiYodUw9MiksbnVsbD09PXQpcmV0dXJuITA7cj1yTihyLG4pLG49dDtkb3tzd2l0Y2gobi50YWcpe2Nhc2UgMzpyZXR1cm4gbi5mbGFnc3w9NjU1MzYsZT1sJi1sLG4ubGFuZXN8PWUsZT1vRChuLnN0YXRlTm9kZSxyLGUpLGxXKG4sZSksITE7Y2FzZSAxOmlmKHQ9bi50eXBlLGE9bi5zdGF0ZU5vZGUsMD09KDEyOCZuLmZsYWdzKSYmKCJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcnx8bnVsbCE9PWEmJiJmdW5jdGlvbiI9PXR5cGVvZiBhLmNvbXBvbmVudERpZENhdGNoJiYobnVsbD09PXVRfHwhdVEuaGFzKGEpKSkpcmV0dXJuIG4uZmxhZ3N8PTY1NTM2LGwmPS1sLG4ubGFuZXN8PWwsb0EobD1vRihsKSxlLG4sciksbFcobixsKSwhMTticmVhaztjYXNlIDIyOmlmKG51bGwhPT1uLm1lbW9pemVkU3RhdGUpcmV0dXJuIG4uZmxhZ3N8PTY1NTM2LCExfW49bi5yZXR1cm59d2hpbGUobnVsbCE9PW4pcmV0dXJuITF9KGUsbCx0LG4sdV8pKXt1TD0xLG9NKGUsck4obixlLmN1cnJlbnQpKSx1eD1udWxsO3JldHVybn19Y2F0Y2godCl7aWYobnVsbCE9PWwpdGhyb3cgdXg9bCx0O3VMPTEsb00oZSxyTihuLGUuY3VycmVudCkpLHV4PW51bGw7cmV0dXJufTMyNzY4JnQuZmxhZ3M/KHIkfHwxPT09cj9lPSEwOnVUfHwwIT0oMHgyMDAwMDAwMCZ1Xyk/ZT0hMToodUM9ZT0hMCwoMj09PXJ8fDk9PT1yfHwzPT09cnx8Nj09PXIpJiZudWxsIT09KHI9bDMuY3VycmVudCkmJjEzPT09ci50YWcmJihyLmZsYWdzfD0xNjM4NCkpLHNtKHQsZSkpOnNwKHQpfWZ1bmN0aW9uIHNwKGUpe3ZhciB0PWU7ZG97aWYoMCE9KDMyNzY4JnQuZmxhZ3MpKXJldHVybiB2b2lkIHNtKHQsdUMpO2U9dC5yZXR1cm47dmFyIG49ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXQucGVuZGluZ1Byb3BzO3N3aXRjaChyVSh0KSx0LnRhZyl7Y2FzZSAxNjpjYXNlIDE1OmNhc2UgMDpjYXNlIDExOmNhc2UgNzpjYXNlIDg6Y2FzZSAxMjpjYXNlIDk6Y2FzZSAxNDpjYXNlIDE6cmV0dXJuIGlwKHQpLG51bGw7Y2FzZSAzOnJldHVybiBuPXQuc3RhdGVOb2RlLHI9bnVsbCxudWxsIT09ZSYmKHI9ZS5tZW1vaXplZFN0YXRlLmNhY2hlKSx0Lm1lbW9pemVkU3RhdGUuY2FjaGUhPT1yJiYodC5mbGFnc3w9MjA0OCkscjgobGkpLGVhKCksbi5wZW5kaW5nQ29udGV4dCYmKG4uY29udGV4dD1uLnBlbmRpbmdDb250ZXh0LG4ucGVuZGluZ0NvbnRleHQ9bnVsbCksKG51bGw9PT1lfHxudWxsPT09ZS5jaGlsZCkmJihyWSh0KT9paSh0KTpudWxsPT09ZXx8ZS5tZW1vaXplZFN0YXRlLmlzRGVoeWRyYXRlZCYmMD09KDI1NiZ0LmZsYWdzKXx8KHQuZmxhZ3N8PTEwMjQsclooKSkpLGlwKHQpLG51bGw7Y2FzZSAyNjp2YXIgbD10LnR5cGUsYT10Lm1lbW9pemVkU3RhdGU7cmV0dXJuIG51bGw9PT1lPyhpaSh0KSxudWxsIT09YT8oaXAodCksaXModCxhKSk6KGlwKHQpLGl1KHQsbCxudWxsLHIsbikpKTphP2EhPT1lLm1lbW9pemVkU3RhdGU/KGlpKHQpLGlwKHQpLGlzKHQsYSkpOihpcCh0KSx0LmZsYWdzJj0tMHgxMDAwMDAxKTooKGU9ZS5tZW1vaXplZFByb3BzKSE9PXImJmlpKHQpLGlwKHQpLGl1KHQsbCxlLHIsbikpLG51bGw7Y2FzZSAyNzppZihlaSh0KSxuPWVuLmN1cnJlbnQsbD10LnR5cGUsbnVsbCE9PWUmJm51bGwhPXQuc3RhdGVOb2RlKWUubWVtb2l6ZWRQcm9wcyE9PXImJmlpKHQpO2Vsc2V7aWYoIXIpe2lmKG51bGw9PT10LnN0YXRlTm9kZSl0aHJvdyBFcnJvcih1KDE2NikpO3JldHVybiBpcCh0KSx0LnN1YnRyZWVGbGFncyY9LTB4MjAwMDAwMSxudWxsfWU9ZWUuY3VycmVudCxyWSh0KT9yWCh0LGUpOih0LnN0YXRlTm9kZT1lPWNYKGwscixuKSxpaSh0KSl9cmV0dXJuIGlwKHQpLHQuc3VidHJlZUZsYWdzJj0tMHgyMDAwMDAxLG51bGw7Y2FzZSA1OmlmKGVpKHQpLGw9dC50eXBlLG51bGwhPT1lJiZudWxsIT10LnN0YXRlTm9kZSllLm1lbW9pemVkUHJvcHMhPT1yJiZpaSh0KTtlbHNle2lmKCFyKXtpZihudWxsPT09dC5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IodSgxNjYpKTtyZXR1cm4gaXAodCksdC5zdWJ0cmVlRmxhZ3MmPS0weDIwMDAwMDEsbnVsbH1pZihhPWVlLmN1cnJlbnQsclkodCkpclgodCxhKTtlbHNle3ZhciBvPWN1KGVuLmN1cnJlbnQpO3N3aXRjaChhKXtjYXNlIDE6YT1vLmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGwpO2JyZWFrO2Nhc2UgMjphPW8uY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIixsKTticmVhaztkZWZhdWx0OnN3aXRjaChsKXtjYXNlInN2ZyI6YT1vLmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGwpO2JyZWFrO2Nhc2UibWF0aCI6YT1vLmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCIsbCk7YnJlYWs7Y2FzZSJzY3JpcHQiOihhPW8uY3JlYXRlRWxlbWVudCgiZGl2IikpLmlubmVySFRNTD0iPHNjcmlwdD48L3NjcmlwdD4iLGE9YS5yZW1vdmVDaGlsZChhLmZpcnN0Q2hpbGQpO2JyZWFrO2Nhc2Uic2VsZWN0IjphPSJzdHJpbmciPT10eXBlb2Ygci5pcz9vLmNyZWF0ZUVsZW1lbnQoInNlbGVjdCIse2lzOnIuaXN9KTpvLmNyZWF0ZUVsZW1lbnQoInNlbGVjdCIpLHIubXVsdGlwbGU/YS5tdWx0aXBsZT0hMDpyLnNpemUmJihhLnNpemU9ci5zaXplKTticmVhaztkZWZhdWx0OmE9InN0cmluZyI9PXR5cGVvZiByLmlzP28uY3JlYXRlRWxlbWVudChsLHtpczpyLmlzfSk6by5jcmVhdGVFbGVtZW50KGwpfX1hW2VXXT10LGFbZXFdPXI7ZTpmb3Iobz10LmNoaWxkO251bGwhPT1vOyl7aWYoNT09PW8udGFnfHw2PT09by50YWcpYS5hcHBlbmRDaGlsZChvLnN0YXRlTm9kZSk7ZWxzZSBpZig0IT09by50YWcmJjI3IT09by50YWcmJm51bGwhPT1vLmNoaWxkKXtvLmNoaWxkLnJldHVybj1vLG89by5jaGlsZDtjb250aW51ZX1pZihvPT09dClicmVhaztmb3IoO251bGw9PT1vLnNpYmxpbmc7KXtpZihudWxsPT09by5yZXR1cm58fG8ucmV0dXJuPT09dClicmVhayBlO289by5yZXR1cm59by5zaWJsaW5nLnJldHVybj1vLnJldHVybixvPW8uc2libGluZ31zd2l0Y2godC5zdGF0ZU5vZGU9YSxjbChhLGwsciksbCl7Y2FzZSJidXR0b24iOmNhc2UiaW5wdXQiOmNhc2Uic2VsZWN0IjpjYXNlInRleHRhcmVhIjpyPSEhci5hdXRvRm9jdXM7YnJlYWs7Y2FzZSJpbWciOnI9ITA7YnJlYWs7ZGVmYXVsdDpyPSExfXImJmlpKHQpfX1yZXR1cm4gaXAodCksdC5zdWJ0cmVlRmxhZ3MmPS0weDIwMDAwMDEsaXUodCx0LnR5cGUsbnVsbD09PWU/bnVsbDplLm1lbW9pemVkUHJvcHMsdC5wZW5kaW5nUHJvcHMsbiksbnVsbDtjYXNlIDY6aWYoZSYmbnVsbCE9dC5zdGF0ZU5vZGUpZS5tZW1vaXplZFByb3BzIT09ciYmaWkodCk7ZWxzZXtpZigic3RyaW5nIiE9dHlwZW9mIHImJm51bGw9PT10LnN0YXRlTm9kZSl0aHJvdyBFcnJvcih1KDE2NikpO2lmKGU9ZW4uY3VycmVudCxyWSh0KSl7aWYoZT10LnN0YXRlTm9kZSxuPXQubWVtb2l6ZWRQcm9wcyxyPW51bGwsbnVsbCE9PShsPXJWKSlzd2l0Y2gobC50YWcpe2Nhc2UgMjc6Y2FzZSA1OnI9bC5tZW1vaXplZFByb3BzfWVbZVddPXQsKGU9ISEoZS5ub2RlVmFsdWU9PT1ufHxudWxsIT09ciYmITA9PT1yLnN1cHByZXNzSHlkcmF0aW9uV2FybmluZ3x8Y3QoZS5ub2RlVmFsdWUsbikpKXx8cksodCwhMCl9ZWxzZShlPWN1KGUpLmNyZWF0ZVRleHROb2RlKHIpKVtlV109dCx0LnN0YXRlTm9kZT1lfXJldHVybiBpcCh0KSxudWxsO2Nhc2UgMzE6aWYobj10Lm1lbW9pemVkU3RhdGUsbnVsbD09PWV8fG51bGwhPT1lLm1lbW9pemVkU3RhdGUpe2lmKHI9clkodCksbnVsbCE9PW4pe2lmKG51bGw9PT1lKXtpZighcil0aHJvdyBFcnJvcih1KDMxOCkpO2lmKCEoZT1udWxsIT09KGU9dC5tZW1vaXplZFN0YXRlKT9lLmRlaHlkcmF0ZWQ6bnVsbCkpdGhyb3cgRXJyb3IodSg1NTcpKTtlW2VXXT10fWVsc2UgckooKSwwPT0oMTI4JnQuZmxhZ3MpJiYodC5tZW1vaXplZFN0YXRlPW51bGwpLHQuZmxhZ3N8PTQ7aXAodCksZT0hMX1lbHNlIG49clooKSxudWxsIT09ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmKGUubWVtb2l6ZWRTdGF0ZS5oeWRyYXRpb25FcnJvcnM9biksZT0hMDtpZighZSl7aWYoMjU2JnQuZmxhZ3MpcmV0dXJuIGw3KHQpLHQ7cmV0dXJuIGw3KHQpLG51bGx9aWYoMCE9KDEyOCZ0LmZsYWdzKSl0aHJvdyBFcnJvcih1KDU1OCkpfXJldHVybiBpcCh0KSxudWxsO2Nhc2UgMTM6aWYocj10Lm1lbW9pemVkU3RhdGUsbnVsbD09PWV8fG51bGwhPT1lLm1lbW9pemVkU3RhdGUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUuZGVoeWRyYXRlZCl7aWYobD1yWSh0KSxudWxsIT09ciYmbnVsbCE9PXIuZGVoeWRyYXRlZCl7aWYobnVsbD09PWUpe2lmKCFsKXRocm93IEVycm9yKHUoMzE4KSk7aWYoIShsPW51bGwhPT0obD10Lm1lbW9pemVkU3RhdGUpP2wuZGVoeWRyYXRlZDpudWxsKSl0aHJvdyBFcnJvcih1KDMxNykpO2xbZVddPXR9ZWxzZSBySigpLDA9PSgxMjgmdC5mbGFncykmJih0Lm1lbW9pemVkU3RhdGU9bnVsbCksdC5mbGFnc3w9NDtpcCh0KSxsPSExfWVsc2UgbD1yWigpLG51bGwhPT1lJiZudWxsIT09ZS5tZW1vaXplZFN0YXRlJiYoZS5tZW1vaXplZFN0YXRlLmh5ZHJhdGlvbkVycm9ycz1sKSxsPSEwO2lmKCFsKXtpZigyNTYmdC5mbGFncylyZXR1cm4gbDcodCksdDtyZXR1cm4gbDcodCksbnVsbH19aWYobDcodCksMCE9KDEyOCZ0LmZsYWdzKSlyZXR1cm4gdC5sYW5lcz1uLHQ7cmV0dXJuIG49bnVsbCE9PXIsZT1udWxsIT09ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSxuJiYocj10LmNoaWxkLGw9bnVsbCxudWxsIT09ci5hbHRlcm5hdGUmJm51bGwhPT1yLmFsdGVybmF0ZS5tZW1vaXplZFN0YXRlJiZudWxsIT09ci5hbHRlcm5hdGUubWVtb2l6ZWRTdGF0ZS5jYWNoZVBvb2wmJihsPXIuYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGUuY2FjaGVQb29sLnBvb2wpLGE9bnVsbCxudWxsIT09ci5tZW1vaXplZFN0YXRlJiZudWxsIT09ci5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbCYmKGE9ci5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbC5wb29sKSxhIT09bCYmKHIuZmxhZ3N8PTIwNDgpKSxuIT09ZSYmbiYmKHQuY2hpbGQuZmxhZ3N8PTgxOTIpLGljKHQsdC51cGRhdGVRdWV1ZSksaXAodCksbnVsbDtjYXNlIDQ6cmV0dXJuIGVhKCksbnVsbD09PWUmJnMxKHQuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pLHQuZmxhZ3N8PTB4NDAwMDAwMCxpcCh0KSxudWxsO2Nhc2UgMTA6cmV0dXJuIHI4KHQudHlwZSksaXAodCksbnVsbDtjYXNlIDE5OmlmKGFuKHQpLG51bGw9PT0ocj10Lm1lbW9pemVkU3RhdGUpKXJldHVybiBpcCh0KSxudWxsO2lmKGw9MCE9KDEyOCZ0LmZsYWdzKSxudWxsPT09KGE9ci5yZW5kZXJpbmcpKWlmKGwpaWQociwhMSk7ZWxzZXtpZigwIT09dUx8fG51bGwhPT1lJiYwIT0oMTI4JmUuZmxhZ3MpKWZvcihlPXQuY2hpbGQ7bnVsbCE9PWU7KXtpZihudWxsIT09KGE9YXIoZSkpKXtmb3IodC5mbGFnc3w9MTI4LGlkKHIsITEpLHQudXBkYXRlUXVldWU9ZT1hLnVwZGF0ZVF1ZXVlLGljKHQsZSksdC5zdWJ0cmVlRmxhZ3M9MCxlPW4sbj10LmNoaWxkO251bGwhPT1uOylydyhuLGUpLG49bi5zaWJsaW5nO3JldHVybiBhdCh0LDEmYWUuY3VycmVudHwyKSxyJCYmckYodCxyLnRyZWVGb3JrQ291bnQpLHQuY2hpbGR9ZT1lLnNpYmxpbmd9bnVsbCE9PXIudGFpbCYmZXYoKT51SCYmKHQuZmxhZ3N8PTEyOCxsPSEwLGlkKHIsITEpLHQubGFuZXM9NDE5NDMwNCl9ZWxzZXtpZighbClpZihudWxsIT09KGU9YXIoYSkpKXtpZih0LmZsYWdzfD0xMjgsbD0hMCx0LnVwZGF0ZVF1ZXVlPWU9ZS51cGRhdGVRdWV1ZSxpYyh0LGUpLGlkKHIsITApLG51bGw9PT1yLnRhaWwmJiJjb2xsYXBzZWQiIT09ci50YWlsTW9kZSYmInZpc2libGUiIT09ci50YWlsTW9kZSYmIWEuYWx0ZXJuYXRlJiYhciQpcmV0dXJuIGlwKHQpLG51bGx9ZWxzZSAyKmV2KCktci5yZW5kZXJpbmdTdGFydFRpbWU+dUgmJjB4MjAwMDAwMDAhPT1uJiYodC5mbGFnc3w9MTI4LGw9ITAsaWQociwhMSksdC5sYW5lcz00MTk0MzA0KTtyLmlzQmFja3dhcmRzPyhhLnNpYmxpbmc9dC5jaGlsZCx0LmNoaWxkPWEpOihudWxsIT09KGU9ci5sYXN0KT9lLnNpYmxpbmc9YTp0LmNoaWxkPWEsci5sYXN0PWEpfWlmKG51bGwhPT1yLnRhaWwpe2U9ci50YWlsO2U6e2ZvcihuPWU7bnVsbCE9PW47KXtpZihudWxsIT09bi5hbHRlcm5hdGUpe249ITE7YnJlYWsgZX1uPW4uc2libGluZ31uPSEwfXJldHVybiByLnJlbmRlcmluZz1lLHIudGFpbD1lLnNpYmxpbmcsci5yZW5kZXJpbmdTdGFydFRpbWU9ZXYoKSxlLnNpYmxpbmc9bnVsbCxhPWFlLmN1cnJlbnQsYT1sPzEmYXwyOjEmYSwidmlzaWJsZSI9PT1yLnRhaWxNb2RlfHwiY29sbGFwc2VkIj09PXIudGFpbE1vZGV8fCFufHxyJD9hdCh0LGEpOihuPWEsWihsMyx0KSxaKGFlLG4pLG51bGw9PT1sNCYmKGw0PXQpKSxyJCYmckYodCxyLnRyZWVGb3JrQ291bnQpLGV9cmV0dXJuIGlwKHQpLG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBsNyh0KSxsMigpLHI9bnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSxudWxsIT09ZT9udWxsIT09ZS5tZW1vaXplZFN0YXRlIT09ciYmKHQuZmxhZ3N8PTgxOTIpOnImJih0LmZsYWdzfD04MTkyKSxyPzAhPSgweDIwMDAwMDAwJm4pJiYwPT0oMTI4JnQuZmxhZ3MpJiYoaXAodCksNiZ0LnN1YnRyZWVGbGFncyYmKHQuZmxhZ3N8PTgxOTIpKTppcCh0KSxudWxsIT09KG49dC51cGRhdGVRdWV1ZSkmJmljKHQsbi5yZXRyeVF1ZXVlKSxuPW51bGwsbnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUuY2FjaGVQb29sJiYobj1lLm1lbW9pemVkU3RhdGUuY2FjaGVQb29sLnBvb2wpLHI9bnVsbCxudWxsIT09dC5tZW1vaXplZFN0YXRlJiZudWxsIT09dC5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbCYmKHI9dC5tZW1vaXplZFN0YXRlLmNhY2hlUG9vbC5wb29sKSxyIT09biYmKHQuZmxhZ3N8PTIwNDgpLG51bGwhPT1lJiZKKGx5KSxudWxsO2Nhc2UgMjQ6cmV0dXJuIG49bnVsbCxudWxsIT09ZSYmKG49ZS5tZW1vaXplZFN0YXRlLmNhY2hlKSx0Lm1lbW9pemVkU3RhdGUuY2FjaGUhPT1uJiYodC5mbGFnc3w9MjA0OCkscjgobGkpLGlwKHQpLG51bGw7Y2FzZSAyNTpyZXR1cm4gbnVsbDtjYXNlIDMwOnJldHVybiB0LmZsYWdzfD0weDIwMDAwMDAsaXAodCksbnVsbH10aHJvdyBFcnJvcih1KDE1Nix0LnRhZykpfSh0LmFsdGVybmF0ZSx0LHV6KTtpZihudWxsIT09bil7dXg9bjtyZXR1cm59aWYobnVsbCE9PSh0PXQuc2libGluZykpe3V4PXQ7cmV0dXJufXV4PXQ9ZX13aGlsZShudWxsIT09dCkwPT09dUwmJih1TD01KX1mdW5jdGlvbiBzbShlLHQpe2Rve3ZhciBuPWZ1bmN0aW9uKGUsdCl7c3dpdGNoKHJVKHQpLHQudGFnKXtjYXNlIDE6cmV0dXJuIDY1NTM2JihlPXQuZmxhZ3MpPyh0LmZsYWdzPS02NTUzNyZlfDEyOCx0KTpudWxsO2Nhc2UgMzpyZXR1cm4gcjgobGkpLGVhKCksMCE9KDY1NTM2JihlPXQuZmxhZ3MpKSYmMD09KDEyOCZlKT8odC5mbGFncz0tNjU1MzcmZXwxMjgsdCk6bnVsbDtjYXNlIDI2OmNhc2UgMjc6Y2FzZSA1OnJldHVybiBlaSh0KSxudWxsO2Nhc2UgMzE6aWYobnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSl7aWYobDcodCksbnVsbD09PXQuYWx0ZXJuYXRlKXRocm93IEVycm9yKHUoMzQwKSk7ckooKX1yZXR1cm4gNjU1MzYmKGU9dC5mbGFncyk/KHQuZmxhZ3M9LTY1NTM3JmV8MTI4LHQpOm51bGw7Y2FzZSAxMzppZihsNyh0KSxudWxsIT09KGU9dC5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PWUuZGVoeWRyYXRlZCl7aWYobnVsbD09PXQuYWx0ZXJuYXRlKXRocm93IEVycm9yKHUoMzQwKSk7ckooKX1yZXR1cm4gNjU1MzYmKGU9dC5mbGFncyk/KHQuZmxhZ3M9LTY1NTM3JmV8MTI4LHQpOm51bGw7Y2FzZSAxOTpyZXR1cm4gYW4odCksNjU1MzYmKGU9dC5mbGFncyk/KHQuZmxhZ3M9LTY1NTM3JmV8MTI4LG51bGwhPT0oZT10Lm1lbW9pemVkU3RhdGUpJiYoZS5yZW5kZXJpbmc9bnVsbCxlLnRhaWw9bnVsbCksdC5mbGFnc3w9NCx0KTpudWxsO2Nhc2UgNDpyZXR1cm4gZWEoKSxudWxsO2Nhc2UgMTA6cmV0dXJuIHI4KHQudHlwZSksbnVsbDtjYXNlIDIyOmNhc2UgMjM6cmV0dXJuIGw3KHQpLGwyKCksbnVsbCE9PWUmJkoobHkpLDY1NTM2JihlPXQuZmxhZ3MpPyh0LmZsYWdzPS02NTUzNyZlfDEyOCx0KTpudWxsO2Nhc2UgMjQ6cmV0dXJuIHI4KGxpKSxudWxsO2RlZmF1bHQ6cmV0dXJuIG51bGx9fShlLmFsdGVybmF0ZSxlKTtpZihudWxsIT09bil7bi5mbGFncyY9MzI3NjcsdXg9bjtyZXR1cm59aWYobnVsbCE9PShuPWUucmV0dXJuKSYmKG4uZmxhZ3N8PTMyNzY4LG4uc3VidHJlZUZsYWdzPTAsbi5kZWxldGlvbnM9bnVsbCksIXQmJm51bGwhPT0oZT1lLnNpYmxpbmcpKXt1eD1lO3JldHVybn11eD1lPW59d2hpbGUobnVsbCE9PWUpdUw9Nix1eD1udWxsfWZ1bmN0aW9uIHNoKGUsdCxuLHIsbCxhLG8saSxzLGMsZil7ZS5jYW5jZWxQZW5kaW5nQ29tbWl0PW51bGw7ZG8gc1MoKTt3aGlsZSgwIT09dVcpaWYoMCE9KDYmdVMpKXRocm93IEVycm9yKHUoMzI3KSk7aWYobnVsbCE9PXQpe3ZhciBkO2lmKHQ9PT1lLmN1cnJlbnQpdGhyb3cgRXJyb3IodSgxNzcpKTtpZighZnVuY3Rpb24oZSx0LG4scixsLGEpe3ZhciBvPWUucGVuZGluZ0xhbmVzO2UucGVuZGluZ0xhbmVzPW4sZS5zdXNwZW5kZWRMYW5lcz0wLGUucGluZ2VkTGFuZXM9MCxlLndhcm1MYW5lcz0wLGUuZXhwaXJlZExhbmVzJj1uLGUuZW50YW5nbGVkTGFuZXMmPW4sZS5lcnJvclJlY292ZXJ5RGlzYWJsZWRMYW5lcyY9bixlLnNoZWxsU3VzcGVuZENvdW50ZXI9MDt2YXIgaT1lLmVudGFuZ2xlbWVudHMsdT1lLmV4cGlyYXRpb25UaW1lcyxzPWUuaGlkZGVuVXBkYXRlcztmb3Iobj1vJn5uOzA8bjspe3ZhciBjPTMxLWVQKG4pLGY9MTw8YztpW2NdPTAsdVtjXT0tMTt2YXIgZD1zW2NdO2lmKG51bGwhPT1kKWZvcihzW2NdPW51bGwsYz0wO2M8ZC5sZW5ndGg7YysrKXt2YXIgcD1kW2NdO251bGwhPT1wJiYocC5sYW5lJj0tMHgyMDAwMDAwMSl9biY9fmZ9MCE9PXImJmVBKGUsciwwKSwwIT09YSYmMD09PWwmJjAhPT1lLnRhZyYmKGUuc3VzcGVuZGVkTGFuZXN8PWEmfihvJn50KSl9KGUsbixhPXQubGFuZXN8dC5jaGlsZExhbmVzfHJ1LG8saSxzKSxlPT09dUUmJih1eD11RT1udWxsLHVfPTApLHVLPXQsdXE9ZSx1WD1uLHVHPWEsdVk9bCx1Sj1yLHUwPW51bGwsKDB4MTNmZmZmMDAmbik9PT1uPyhkPWUudHJhbnNpdGlvblR5cGVzLGUudHJhbnNpdGlvblR5cGVzPW51bGwsdTE9ZCxyPTEwMjYyKToodTE9bnVsbCxyPTEwMjU2KSwwIT0odC5zdWJ0cmVlRmxhZ3Mmcil8fDAhPSh0LmZsYWdzJnIpPyhlLmNhbGxiYWNrTm9kZT1udWxsLGUuY2FsbGJhY2tQcmlvcml0eT0wLGVwKGVrLGZ1bmN0aW9uKCl7cmV0dXJuIHNFKCksbnVsbH0pKTooZS5jYWxsYmFja05vZGU9bnVsbCxlLmNhbGxiYWNrUHJpb3JpdHk9MCksaU89ITEscj0wIT0oMTM4NzgmdC5mbGFncyksMCE9KDEzODc4JnQuc3VidHJlZUZsYWdzKXx8cil7cj1XLlQsVy5UPW51bGwsbD1xLnAscS5wPTIsbz11Uyx1U3w9NDt0cnl7IWZ1bmN0aW9uKGUsdCxuKXtpZihlPWUuY29udGFpbmVySW5mbyxjbz1mXyxuSChlPW5WKGUpKSl7aWYoInNlbGVjdGlvblN0YXJ0ImluIGUpdmFyIHI9e3N0YXJ0OmUuc2VsZWN0aW9uU3RhcnQsZW5kOmUuc2VsZWN0aW9uRW5kfTtlbHNlIGU6e3ZhciBsPShyPShyPWUub3duZXJEb2N1bWVudCkmJnIuZGVmYXVsdFZpZXd8fHdpbmRvdykuZ2V0U2VsZWN0aW9uJiZyLmdldFNlbGVjdGlvbigpO2lmKGwmJjAhPT1sLnJhbmdlQ291bnQpe3I9bC5hbmNob3JOb2RlO3ZhciBhLG89bC5hbmNob3JPZmZzZXQsaT1sLmZvY3VzTm9kZTtsPWwuZm9jdXNPZmZzZXQ7dHJ5e3Iubm9kZVR5cGUsaS5ub2RlVHlwZX1jYXRjaChlKXtyPW51bGw7YnJlYWsgZX12YXIgdT0wLHM9LTEsYz0tMSxmPTAsZD0wLHA9ZSxtPW51bGw7dDpmb3IoOzspe2Zvcig7cCE9PXJ8fDAhPT1vJiYzIT09cC5ub2RlVHlwZXx8KHM9dStvKSxwIT09aXx8MCE9PWwmJjMhPT1wLm5vZGVUeXBlfHwoYz11K2wpLDM9PT1wLm5vZGVUeXBlJiYodSs9cC5ub2RlVmFsdWUubGVuZ3RoKSxudWxsIT09KGE9cC5maXJzdENoaWxkKTspbT1wLHA9YTtmb3IoOzspe2lmKHA9PT1lKWJyZWFrIHQ7aWYobT09PXImJisrZj09PW8mJihzPXUpLG09PT1pJiYrK2Q9PT1sJiYoYz11KSxudWxsIT09KGE9cC5uZXh0U2libGluZykpYnJlYWs7bT0ocD1tKS5wYXJlbnROb2RlfXA9YX1yPS0xPT09c3x8LTE9PT1jP251bGw6e3N0YXJ0OnMsZW5kOmN9fWVsc2Ugcj1udWxsfXI9cnx8e3N0YXJ0OjAsZW5kOjB9fWVsc2Ugcj1udWxsO2ZvcihjaT17Zm9jdXNlZEVsZW06ZSxzZWxlY3Rpb25SYW5nZTpyfSxmXz0hMSxuPSgweDEzZmZmZjAwJm4pPT09bixpRz10LHQ9bj85MjcwOjEwMjg7bnVsbCE9PWlHOyl7aWYoZT1pRyxuJiZudWxsIT09KHI9ZS5kZWxldGlvbnMpKWZvcihvPTA7bzxyLmxlbmd0aDtvKyspbiYmaUIocltvXSk7aWYobnVsbD09PWUuYWx0ZXJuYXRlJiYwIT0oMiZlLmZsYWdzKSluJiZpTChlKSxpMShuKTtlbHNle2lmKDIyPT09ZS50YWcpe2lmKHI9ZS5hbHRlcm5hdGUsbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSl7bnVsbCE9PXImJm51bGw9PT1yLm1lbW9pemVkU3RhdGUmJm4mJmlCKHIpLGkxKG4pO2NvbnRpbnVlfWVsc2UgaWYobnVsbCE9PXImJm51bGwhPT1yLm1lbW9pemVkU3RhdGUpe24mJmlMKGUpLGkxKG4pO2NvbnRpbnVlfX1yPWUuY2hpbGQsMCE9KGUuc3VidHJlZUZsYWdzJnQpJiZudWxsIT09cj8oci5yZXR1cm49ZSxpRz1yKToobiYmZnVuY3Rpb24gZSh0KXtmb3IodD10LmNoaWxkO251bGwhPT10Oyl7aWYoMzA9PT10LnRhZyl7dmFyIG49dC5tZW1vaXplZFByb3BzLHI9cm4obix0LnN0YXRlTm9kZSk7bj1ybChuLmRlZmF1bHQsbi51cGRhdGUpLHQuZmxhZ3MmPS01LCJub25lIiE9PW4mJmlEKHQscixuLHQubWVtb2l6ZWRTdGF0ZT1bXSwhMSl9ZWxzZSAwIT0oMHgyMDAwMDAwJnQuc3VidHJlZUZsYWdzKSYmZSh0KTt0PXQuc2libGluZ319KGUpLGkxKG4pKX19aXo9bnVsbH0oZSx0LG4pfWZpbmFsbHl7dVM9byxxLnA9bCxXLlQ9cn19dVc9MSwodD1pTyk/dVo9ZnVuY3Rpb24oZSx0LG4scixsLGEsbyxpLHUpe3ZhciBzPTk9PT10Lm5vZGVUeXBlP3Q6dC5vd25lckRvY3VtZW50O3RyeXt2YXIgYz1zLnN0YXJ0Vmlld1RyYW5zaXRpb24oe3VwZGF0ZTpmdW5jdGlvbigpe3ZhciB0PXMuZGVmYXVsdFZpZXcsbj10Lm5hdmlnYXRpb24mJnQubmF2aWdhdGlvbi50cmFuc2l0aW9uLG89cy5mb250cy5zdGF0dXM7cigpO3ZhciBpPVtdO2lmKCJsb2FkZWQiPT09byYmKHMuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCwibG9hZGluZyI9PT1zLmZvbnRzLnN0YXR1cyYmaS5wdXNoKHMuZm9udHMucmVhZHkpKSxvPWkubGVuZ3RoLG51bGwhPT1lKWZvcih2YXIgdT1lLnN1c3BlbnNleUltYWdlcyxjPTAsZj0wO2Y8dS5sZW5ndGg7ZisrKXt2YXIgZD11W2ZdO2lmKCFkLmNvbXBsZXRlKXt2YXIgcD1kLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2lmKDA8cC5ib3R0b20mJjA8cC5yaWdodCYmcC50b3A8dC5pbm5lckhlaWdodCYmcC5sZWZ0PHQuaW5uZXJXaWR0aCl7aWYoKGMrPWZ1KGQpKT5mYyl7aS5sZW5ndGg9bzticmVha31kPW5ldyBQcm9taXNlKGNQLmJpbmQoZCkpLGkucHVzaChkKX19fXJldHVybiAwPGkubGVuZ3RoPyh0PVByb21pc2UucmFjZShbUHJvbWlzZS5hbGwoaSksbmV3IFByb21pc2UoZnVuY3Rpb24oZSl7cmV0dXJuIHNldFRpbWVvdXQoZSw1MDApfSldKS50aGVuKGwsbCksKG4/UHJvbWlzZS5hbGxTZXR0bGVkKFtuLmZpbmlzaGVkLHRdKTp0KS50aGVuKGEsYSkpOihsKCksbik/bi5maW5pc2hlZC50aGVuKGEsYSk6dm9pZCBhKCl9LHR5cGVzOm59KTtzLl9fcmVhY3RWaWV3VHJhbnNpdGlvbj1jO3ZhciBmPVtdO3JldHVybiBjLnJlYWR5LnRoZW4oZnVuY3Rpb24oKXtmb3IodmFyIGU9cy5kb2N1bWVudEVsZW1lbnQuZ2V0QW5pbWF0aW9ucyh7c3VidHJlZTohMH0pLHQ9MDt0PGUubGVuZ3RoO3QrKyl7dmFyIG49ZVt0XSxyPW4uZWZmZWN0LGw9ci5wc2V1ZG9FbGVtZW50O2lmKG51bGwhPWwmJmwuc3RhcnRzV2l0aCgiOjp2aWV3LXRyYW5zaXRpb24iKSl7Zi5wdXNoKG4pLG49ci5nZXRLZXlmcmFtZXMoKTtmb3IodmFyIGE9bD12b2lkIDAsaT0hMCx1PTA7dTxuLmxlbmd0aDt1Kyspe3ZhciBjPW5bdV0sZD1jLndpZHRoO2lmKHZvaWQgMD09PWwpbD1kO2Vsc2UgaWYobCE9PWQpe2k9ITE7YnJlYWt9aWYoZD1jLmhlaWdodCx2b2lkIDA9PT1hKWE9ZDtlbHNlIGlmKGEhPT1kKXtpPSExO2JyZWFrfWRlbGV0ZSBjLndpZHRoLGRlbGV0ZSBjLmhlaWdodCwibm9uZSI9PT1jLnRyYW5zZm9ybSYmZGVsZXRlIGMudHJhbnNmb3JtfWkmJnZvaWQgMCE9PWwmJnZvaWQgMCE9PWEmJihyLnNldEtleWZyYW1lcyhuKSwoaT1nZXRDb21wdXRlZFN0eWxlKHIudGFyZ2V0LHIucHNldWRvRWxlbWVudCkpLndpZHRoIT09bHx8aS5oZWlnaHQhPT1hKSYmKChpPW5bMF0pLndpZHRoPWwsaS5oZWlnaHQ9YSwoaT1uW24ubGVuZ3RoLTFdKS53aWR0aD1sLGkuaGVpZ2h0PWEsci5zZXRLZXlmcmFtZXMobikpfX1vKCl9LGZ1bmN0aW9uKGUpe3MuX19yZWFjdFZpZXdUcmFuc2l0aW9uPT09YyYmKHMuX19yZWFjdFZpZXdUcmFuc2l0aW9uPW51bGwpO3RyeXsib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiYiSW52YWxpZFN0YXRlRXJyb3IiPT09ZS5uYW1lJiYoIlZpZXcgdHJhbnNpdGlvbiB3YXMgc2tpcHBlZCBiZWNhdXNlIGRvY3VtZW50IHZpc2liaWxpdHkgc3RhdGUgaXMgaGlkZGVuLiI9PT1lLm1lc3NhZ2V8fCJTa2lwcGluZyB2aWV3IHRyYW5zaXRpb24gYmVjYXVzZSBkb2N1bWVudCB2aXNpYmlsaXR5IHN0YXRlIGhhcyBiZWNvbWUgaGlkZGVuLiI9PT1lLm1lc3NhZ2V8fCJTa2lwcGluZyB2aWV3IHRyYW5zaXRpb24gYmVjYXVzZSB2aWV3cG9ydCBzaXplIGNoYW5nZWQuIj09PWUubWVzc2FnZXx8IlRyYW5zaXRpb24gd2FzIGFib3J0ZWQgYmVjYXVzZSBvZiBpbnZhbGlkIHN0YXRlIj09PWUubWVzc2FnZSkmJihlPW51bGwpLG51bGwhPT1lJiZ1KGUpfWZpbmFsbHl7cigpLGwoKSxvKCl9fSksYy5maW5pc2hlZC5maW5hbGx5KGZ1bmN0aW9uKCl7Zm9yKHZhciBlPTA7ZTxmLmxlbmd0aDtlKyspZltlXS5jYW5jZWwoKTtzLl9fcmVhY3RWaWV3VHJhbnNpdGlvbj09PWMmJihzLl9fcmVhY3RWaWV3VHJhbnNpdGlvbj1udWxsKSxpKCl9KSxjfWNhdGNoKGUpe3JldHVybiByKCksbCgpLG8oKSxudWxsfX0oZixlLmNvbnRhaW5lckluZm8sdTEsc3ksc2Isc3Ysc3csc0Usc2csbnVsbCxudWxsKTooc3koKSxzYigpLHN3KCkpfX1mdW5jdGlvbiBzZyhlKXswIT09dVcmJigwLHVxLm9uUmVjb3ZlcmFibGVFcnJvcikoZSx7Y29tcG9uZW50U3RhY2s6bnVsbH0pfWZ1bmN0aW9uIHN2KCl7Mz09PXVXJiYodVc9MCx1byh1Syx1cSksdVc9NCl9ZnVuY3Rpb24gc3koKXtpZigxPT09dVcpe3VXPTA7dmFyIGU9dXEsdD11SyxuPXVYLHI9MCE9KDEzODc4JnQuZmxhZ3MpO2lmKDAhPSgxMzg3OCZ0LnN1YnRyZWVGbGFncyl8fHIpe3I9Vy5ULFcuVD1udWxsO3ZhciBsPXEucDtxLnA9Mjt2YXIgYT11Uzt1U3w9NDt0cnl7aUo9aVo9ITEsdXIodCxlLG4pLG49Y2k7dmFyIG89blYoZS5jb250YWluZXJJbmZvKSxpPW4uZm9jdXNlZEVsZW0sdT1uLnNlbGVjdGlvblJhbmdlO2lmKG8hPT1pJiZpJiZpLm93bmVyRG9jdW1lbnQmJmZ1bmN0aW9uIGUodCxuKXtyZXR1cm4hIXQmJiEhbiYmKHQ9PT1ufHwoIXR8fDMhPT10Lm5vZGVUeXBlKSYmKG4mJjM9PT1uLm5vZGVUeXBlP2UodCxuLnBhcmVudE5vZGUpOiJjb250YWlucyJpbiB0P3QuY29udGFpbnMobik6ISF0LmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uJiYhISgxNiZ0LmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKG4pKSkpfShpLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LGkpKXtpZihudWxsIT09dSYmbkgoaSkpe3ZhciBzPXUuc3RhcnQsYz11LmVuZDtpZih2b2lkIDA9PT1jJiYoYz1zKSwic2VsZWN0aW9uU3RhcnQiaW4gaSlpLnNlbGVjdGlvblN0YXJ0PXMsaS5zZWxlY3Rpb25FbmQ9TWF0aC5taW4oYyxpLnZhbHVlLmxlbmd0aCk7ZWxzZXt2YXIgZj1pLm93bmVyRG9jdW1lbnR8fGRvY3VtZW50LGQ9ZiYmZi5kZWZhdWx0Vmlld3x8d2luZG93O2lmKGQuZ2V0U2VsZWN0aW9uKXt2YXIgcD1kLmdldFNlbGVjdGlvbigpLG09aS50ZXh0Q29udGVudC5sZW5ndGgsaD1NYXRoLm1pbih1LnN0YXJ0LG0pLGc9dm9pZCAwPT09dS5lbmQ/aDpNYXRoLm1pbih1LmVuZCxtKTshcC5leHRlbmQmJmg+ZyYmKG89ZyxnPWgsaD1vKTt2YXIgdj1uQihpLGgpLHk9bkIoaSxnKTtpZih2JiZ5JiYoMSE9PXAucmFuZ2VDb3VudHx8cC5hbmNob3JOb2RlIT09di5ub2RlfHxwLmFuY2hvck9mZnNldCE9PXYub2Zmc2V0fHxwLmZvY3VzTm9kZSE9PXkubm9kZXx8cC5mb2N1c09mZnNldCE9PXkub2Zmc2V0KSl7dmFyIGI9Zi5jcmVhdGVSYW5nZSgpO2Iuc2V0U3RhcnQodi5ub2RlLHYub2Zmc2V0KSxwLnJlbW92ZUFsbFJhbmdlcygpLGg+Zz8ocC5hZGRSYW5nZShiKSxwLmV4dGVuZCh5Lm5vZGUseS5vZmZzZXQpKTooYi5zZXRFbmQoeS5ub2RlLHkub2Zmc2V0KSxwLmFkZFJhbmdlKGIpKX19fX1mb3IoZj1bXSxwPWk7cD1wLnBhcmVudE5vZGU7KTE9PT1wLm5vZGVUeXBlJiZmLnB1c2goe2VsZW1lbnQ6cCxsZWZ0OnAuc2Nyb2xsTGVmdCx0b3A6cC5zY3JvbGxUb3B9KTtmb3IoImZ1bmN0aW9uIj09dHlwZW9mIGkuZm9jdXMmJmkuZm9jdXMoKSxpPTA7aTxmLmxlbmd0aDtpKyspe3ZhciB3PWZbaV07dy5lbGVtZW50LnNjcm9sbExlZnQ9dy5sZWZ0LHcuZWxlbWVudC5zY3JvbGxUb3A9dy50b3B9fWZfPSEhY28sY2k9Y289bnVsbH1maW5hbGx5e3VTPWEscS5wPWwsVy5UPXJ9fWUuY3VycmVudD10LHVXPTJ9fWZ1bmN0aW9uIHNiKCl7aWYoMj09PXVXKXt1Vz0wO3ZhciBlPXVxLHQ9dUssbj0wIT0oODc3MiZ0LmZsYWdzKTtpZigwIT0oODc3MiZ0LnN1YnRyZWVGbGFncyl8fG4pe249Vy5ULFcuVD1udWxsO3ZhciByPXEucDtxLnA9Mjt2YXIgbD11Uzt1U3w9NDt0cnl7aTIoZSx0LmFsdGVybmF0ZSx0KX1maW5hbGx5e3VTPWwscS5wPXIsVy5UPW59fXVXPTN9fWZ1bmN0aW9uIHN3KCl7aWYoND09PXVXfHwzPT09dVcpe3VXPTAsdVo9bnVsbCxlZygpO3ZhciBlPXVxLHQ9dUssbj11WCxyPXVKLGw9KDB4MTNmZmZmMDAmbik9PT1uPzEwMjYyOjEwMjU2O2lmKDAhPSh0LnN1YnRyZWVGbGFncyZsKXx8MCE9KHQuZmxhZ3MmbCk/dVc9NToodVc9MCx1Sz11cT1udWxsLHNrKGUsZS5wZW5kaW5nTGFuZXMpKSwwPT09KGw9ZS5wZW5kaW5nTGFuZXMpJiYodVE9bnVsbCksZVYobiksdD10LnN0YXRlTm9kZSxlXyYmImZ1bmN0aW9uIj09dHlwZW9mIGVfLm9uQ29tbWl0RmliZXJSb290KXRyeXtlXy5vbkNvbW1pdEZpYmVyUm9vdChleCx0LHZvaWQgMCwxMjg9PSgxMjgmdC5jdXJyZW50LmZsYWdzKSl9Y2F0Y2goZSl7fWlmKG51bGwhPT1yKXt0PVcuVCxsPXEucCxxLnA9MixXLlQ9bnVsbDt0cnl7Zm9yKHZhciBhPWUub25SZWNvdmVyYWJsZUVycm9yLG89MDtvPHIubGVuZ3RoO28rKyl7dmFyIGk9cltvXTthKGkudmFsdWUse2NvbXBvbmVudFN0YWNrOmkuc3RhY2t9KX19ZmluYWxseXtXLlQ9dCxxLnA9bH19aWYocj11MCxhPXUxLHUxPW51bGwsbnVsbCE9PXIpZm9yKHUwPW51bGwsbnVsbD09PWEmJihhPVtdKSxpPTA7aTxyLmxlbmd0aDtpKyspKDAscltpXSkoYSk7MCE9KDMmdVgpJiZzUygpLHNGKGUpLGw9ZS5wZW5kaW5nTGFuZXMsMCE9KDI2MTkzMCZuKSYmMCE9KDQyJmwpP2U9PT11Mz91MisrOih1Mj0wLHUzPWUpOnUyPTAsc0EoMCwhMSl9fWZ1bmN0aW9uIHNrKGUsdCl7MD09KGUucG9vbGVkQ2FjaGVMYW5lcyY9dCkmJm51bGwhPSh0PWUucG9vbGVkQ2FjaGUpJiYoZS5wb29sZWRDYWNoZT1udWxsLGxzKHQpKX1mdW5jdGlvbiBzUygpe3JldHVybiBudWxsIT09dVomJih1Wi5za2lwVHJhbnNpdGlvbigpLHVaPW51bGwpLHN5KCksc2IoKSxzdygpLHNFKCl9ZnVuY3Rpb24gc0UoKXtpZig1IT09dVcpcmV0dXJuITE7dmFyIGU9dXEsdD11Rzt1Rz0wO3ZhciBuPWVWKHVYKSxyPVcuVCxsPXEucDt0cnl7cS5wPTMyPm4/MzI6bixXLlQ9bnVsbCxuPXVZLHVZPW51bGw7dmFyIGE9dXEsbz11WDtpZih1Vz0wLHVLPXVxPW51bGwsdVg9MCwwIT0oNiZ1UykpdGhyb3cgRXJyb3IodSgzMzEpKTt2YXIgaT11UztpZih1U3w9NCx1eShhLmN1cnJlbnQpLHVmKGEsYS5jdXJyZW50LG8sbiksdVM9aSxzQSgwLCExKSxlXyYmImZ1bmN0aW9uIj09dHlwZW9mIGVfLm9uUG9zdENvbW1pdEZpYmVyUm9vdCl0cnl7ZV8ub25Qb3N0Q29tbWl0RmliZXJSb290KGV4LGEpfWNhdGNoKGUpe31yZXR1cm4hMH1maW5hbGx5e3EucD1sLFcuVD1yLHNrKGUsdCl9fWZ1bmN0aW9uIHN4KGUsdCxuKXt0PXJOKG4sdCksdD1vRChlLnN0YXRlTm9kZSx0LDIpLG51bGwhPT0oZT1sJChlLHQsMikpJiYoZUYoZSwyKSxzRihlKSl9ZnVuY3Rpb24gc18oZSx0LG4pe2lmKDM9PT1lLnRhZylzeChlLGUsbik7ZWxzZSBmb3IoO251bGwhPT10Oyl7aWYoMz09PXQudGFnKXtzeCh0LGUsbik7YnJlYWt9aWYoMT09PXQudGFnKXt2YXIgcj10LnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2YgdC50eXBlLmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcnx8ImZ1bmN0aW9uIj09dHlwZW9mIHIuY29tcG9uZW50RGlkQ2F0Y2gmJihudWxsPT09dVF8fCF1US5oYXMocikpKXtlPXJOKG4sZSksbnVsbCE9PShyPWwkKHQsbj1vRigyKSwyKSkmJihvQShuLHIsdCxlKSxlRihyLDIpLHNGKHIpKTticmVha319dD10LnJldHVybn19ZnVuY3Rpb24gc1AoZSx0LG4pe3ZhciByPWUucGluZ0NhY2hlO2lmKG51bGw9PT1yKXtyPWUucGluZ0NhY2hlPW5ldyB1azt2YXIgbD1uZXcgU2V0O3Iuc2V0KHQsbCl9ZWxzZSB2b2lkIDA9PT0obD1yLmdldCh0KSkmJihsPW5ldyBTZXQsci5zZXQodCxsKSk7bC5oYXMobil8fCh1Tz0hMCxsLmFkZChuKSxlPXNOLmJpbmQobnVsbCxlLHQsbiksdC50aGVuKGUsZSkpfWZ1bmN0aW9uIHNOKGUsdCxuKXt2YXIgcj1lLnBpbmdDYWNoZTtudWxsIT09ciYmci5kZWxldGUodCksZS5waW5nZWRMYW5lc3w9ZS5zdXNwZW5kZWRMYW5lcyZuLGUud2FybUxhbmVzJj1+bix1RT09PWUmJih1XyZuKT09PW4mJig0PT09dUx8fDM9PT11TCYmKDB4M2MwMDAwMCZ1Xyk9PT11XyYmMzAwPmV2KCktdUI/MD09KDImdVMpJiZzcihlLDApOnVJfD1uLHVGPT09dV8mJih1Rj0wKSksc0YoZSl9ZnVuY3Rpb24gc0MoZSx0KXswPT09dCYmKHQ9ZUkoKSksbnVsbCE9PShlPXJkKGUsdCkpJiYoZUYoZSx0KSxzRihlKSl9ZnVuY3Rpb24gc1QoZSl7dmFyIHQ9ZS5tZW1vaXplZFN0YXRlLG49MDtudWxsIT09dCYmKG49dC5yZXRyeUxhbmUpLHNDKGUsbil9ZnVuY3Rpb24gc08oZSx0KXt2YXIgbj0wO3N3aXRjaChlLnRhZyl7Y2FzZSAzMTpjYXNlIDEzOnZhciByPWUuc3RhdGVOb2RlLGw9ZS5tZW1vaXplZFN0YXRlO251bGwhPT1sJiYobj1sLnJldHJ5TGFuZSk7YnJlYWs7Y2FzZSAxOTpyPWUuc3RhdGVOb2RlO2JyZWFrO2Nhc2UgMjI6cj1lLnN0YXRlTm9kZS5fcmV0cnlDYWNoZTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKHUoMzE0KSl9bnVsbCE9PXImJnIuZGVsZXRlKHQpLHNDKGUsbil9dmFyIHN6PW51bGwsc0w9bnVsbCxzUj0hMSxzTT0hMSxzST0hMSxzRD0wO2Z1bmN0aW9uIHNGKGUpe2UhPT1zTCYmbnVsbD09PWUubmV4dCYmKG51bGw9PT1zTD9zej1zTD1lOnNMPXNMLm5leHQ9ZSksc009ITAsc1J8fChzUj0hMCxjZyhmdW5jdGlvbigpezAhPSg2JnVTKT9lcChlYixzaik6c1UoKX0pKX1mdW5jdGlvbiBzQShlLHQpe2lmKCFzSSYmc00pe3NJPSEwO2RvIGZvcih2YXIgbj0hMSxyPXN6O251bGwhPT1yOyl7aWYoIXQpaWYoMCE9PWUpe3ZhciBsPXIucGVuZGluZ0xhbmVzO2lmKDA9PT1sKXZhciBhPTA7ZWxzZXt2YXIgbz1yLnN1c3BlbmRlZExhbmVzLGk9ci5waW5nZWRMYW5lczthPTB4YzAwMDA5NSYoYT0oMTw8MzEtZVAoNDJ8ZSkrMSktMSYobCZ+KG8mfmkpKSk/MHhjMDAwMDk1JmF8MTphPzJ8YTowfTAhPT1hJiYobj0hMCxzSChyLGEpKX1lbHNlIGE9dV8sMD09KDMmKGE9ZVIocixyPT09dUU/YTowLG51bGwhPT1yLmNhbmNlbFBlbmRpbmdDb21taXR8fC0xIT09ci50aW1lb3V0SGFuZGxlKSkpfHxlTShyLGEpfHwobj0hMCxzSChyLGEpKTtyPXIubmV4dH13aGlsZShuKXNJPSExfX1mdW5jdGlvbiBzaigpe3NVKCl9ZnVuY3Rpb24gc1UoKXtzTT1zUj0hMTt2YXIgZSx0PTA7MD09PXNEfHwoKGU9d2luZG93LmV2ZW50KSYmInBvcHN0YXRlIj09PWUudHlwZT9lPT09Y2R8fChjZD1lLDApOihjZD1udWxsLDEpKXx8KHQ9c0QpO2Zvcih2YXIgbj1ldigpLHI9bnVsbCxsPXN6O251bGwhPT1sOyl7dmFyIGE9bC5uZXh0LG89c0IobCxuKTswPT09bz8obC5uZXh0PW51bGwsbnVsbD09PXI/c3o9YTpyLm5leHQ9YSxudWxsPT09YSYmKHNMPXIpKToocj1sLCgwIT09dHx8MCE9KDMmbykpJiYoc009ITApKSxsPWF9MCE9PXVXJiY1IT09dVd8fHNBKHQsITEpLDAhPT1zRCYmKHNEPTApfWZ1bmN0aW9uIHNCKGUsdCl7Zm9yKHZhciBuPWUuc3VzcGVuZGVkTGFuZXMscj1lLnBpbmdlZExhbmVzLGw9ZS5leHBpcmF0aW9uVGltZXMsYT0tMHgzYzAwMDAxJmUucGVuZGluZ0xhbmVzOzA8YTspe3ZhciBvPTMxLWVQKGEpLGk9MTw8byx1PWxbb107LTE9PT11PygwPT0oaSZuKXx8MCE9KGkmcikpJiYobFtvXT1mdW5jdGlvbihlLHQpe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgNDpjYXNlIDg6Y2FzZSA2NDpyZXR1cm4gdCsyNTA7Y2FzZSAxNjpjYXNlIDMyOmNhc2UgMTI4OmNhc2UgMjU2OmNhc2UgNTEyOmNhc2UgMTAyNDpjYXNlIDIwNDg6Y2FzZSA0MDk2OmNhc2UgODE5MjpjYXNlIDE2Mzg0OmNhc2UgMzI3Njg6Y2FzZSA2NTUzNjpjYXNlIDEzMTA3MjpjYXNlIDI2MjE0NDpjYXNlIDUyNDI4ODpjYXNlIDEwNDg1NzY6Y2FzZSAyMDk3MTUyOnJldHVybiB0KzVlMztkZWZhdWx0OnJldHVybiAtMX19KGksdCkpOnU8PXQmJihlLmV4cGlyZWRMYW5lc3w9aSksYSY9fml9aWYodD11RSxuPXVfLG49ZVIoZSxlPT09dD9uOjAsbnVsbCE9PWUuY2FuY2VsUGVuZGluZ0NvbW1pdHx8LTEhPT1lLnRpbWVvdXRIYW5kbGUpLHI9ZS5jYWxsYmFja05vZGUsMD09PW58fGU9PT10JiYoMj09PXVQfHw5PT09dVApfHxudWxsIT09ZS5jYW5jZWxQZW5kaW5nQ29tbWl0KXJldHVybiBudWxsIT09ciYmbnVsbCE9PXImJmVtKHIpLGUuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7aWYoMD09KDMmbil8fGVNKGUsbikpe2lmKCh0PW4mLW4pPT09ZS5jYWxsYmFja1ByaW9yaXR5KXJldHVybiB0O3N3aXRjaChudWxsIT09ciYmZW0ociksZVYobikpe2Nhc2UgMjpjYXNlIDg6bj1ldzticmVhaztjYXNlIDMyOmRlZmF1bHQ6bj1lazticmVhaztjYXNlIDB4MTAwMDAwMDA6bj1lRX1yZXR1cm4gbj1lcChuLHI9c1YuYmluZChudWxsLGUpKSxlLmNhbGxiYWNrUHJpb3JpdHk9dCxlLmNhbGxiYWNrTm9kZT1uLHR9cmV0dXJuIG51bGwhPT1yJiZudWxsIT09ciYmZW0ociksZS5jYWxsYmFja1ByaW9yaXR5PTIsZS5jYWxsYmFja05vZGU9bnVsbCwyfWZ1bmN0aW9uIHNWKGUsdCl7aWYoMCE9PXVXJiY1IT09dVcpcmV0dXJuIGUuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTAsbnVsbDt2YXIgbj1lLmNhbGxiYWNrTm9kZTtpZihzUygpJiZlLmNhbGxiYWNrTm9kZSE9PW4pcmV0dXJuIG51bGw7dmFyIHI9dV87cmV0dXJuIDA9PT0ocj1lUihlLGU9PT11RT9yOjAsbnVsbCE9PWUuY2FuY2VsUGVuZGluZ0NvbW1pdHx8LTEhPT1lLnRpbWVvdXRIYW5kbGUpKT9udWxsOih1OShlLHIsdCksc0IoZSxldigpKSxudWxsIT1lLmNhbGxiYWNrTm9kZSYmZS5jYWxsYmFja05vZGU9PT1uP3NWLmJpbmQobnVsbCxlKTpudWxsKX1mdW5jdGlvbiBzSChlLHQpe2lmKHNTKCkpcmV0dXJuIG51bGw7dTkoZSx0LCEwKX1mdW5jdGlvbiBzJCgpe2lmKDA9PT1zRCl7dmFyIGU9bG07MD09PWUmJihlPWVULDA9PSgyNjE4ODgmKGVUPDw9MSkpJiYoZVQ9MjU2KSksc0Q9ZX1yZXR1cm4gc0R9ZnVuY3Rpb24gc1EoZSl7cmV0dXJuIG51bGw9PWV8fCJzeW1ib2wiPT10eXBlb2YgZXx8ImJvb2xlYW4iPT10eXBlb2YgZT9udWxsOiJmdW5jdGlvbiI9PXR5cGVvZiBlP2U6dEMoIiIrZSl9ZnVuY3Rpb24gc1coZSx0KXt2YXIgbj10Lm93bmVyRG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTtyZXR1cm4gbi5uYW1lPXQubmFtZSxuLnZhbHVlPXQudmFsdWUsZS5pZCYmbi5zZXRBdHRyaWJ1dGUoImZvcm0iLGUuaWQpLHQucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobix0KSxlPW5ldyBGb3JtRGF0YShlKSxuLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobiksZX1mb3IodmFyIHNxPTA7c3E8bjcubGVuZ3RoO3NxKyspe3ZhciBzSz1uN1tzcV07cmUoc0sudG9Mb3dlckNhc2UoKSwib24iKyhzS1swXS50b1VwcGVyQ2FzZSgpK3NLLnNsaWNlKDEpKSl9cmUobjEsIm9uQW5pbWF0aW9uRW5kIikscmUobjIsIm9uQW5pbWF0aW9uSXRlcmF0aW9uIikscmUobjMsIm9uQW5pbWF0aW9uU3RhcnQiKSxyZSgiZGJsY2xpY2siLCJvbkRvdWJsZUNsaWNrIikscmUoImZvY3VzaW4iLCJvbkZvY3VzIikscmUoImZvY3Vzb3V0Iiwib25CbHVyIikscmUobjQsIm9uVHJhbnNpdGlvblJ1biIpLHJlKG44LCJvblRyYW5zaXRpb25TdGFydCIpLHJlKG41LCJvblRyYW5zaXRpb25DYW5jZWwiKSxyZShuNiwib25UcmFuc2l0aW9uRW5kIiksZTcoIm9uTW91c2VFbnRlciIsWyJtb3VzZW91dCIsIm1vdXNlb3ZlciJdKSxlNygib25Nb3VzZUxlYXZlIixbIm1vdXNlb3V0IiwibW91c2VvdmVyIl0pLGU3KCJvblBvaW50ZXJFbnRlciIsWyJwb2ludGVyb3V0IiwicG9pbnRlcm92ZXIiXSksZTcoIm9uUG9pbnRlckxlYXZlIixbInBvaW50ZXJvdXQiLCJwb2ludGVyb3ZlciJdKSxlOSgib25DaGFuZ2UiLCJjaGFuZ2UgY2xpY2sgZm9jdXNpbiBmb2N1c291dCBpbnB1dCBrZXlkb3duIGtleXVwIHNlbGVjdGlvbmNoYW5nZSIuc3BsaXQoIiAiKSksZTkoIm9uU2VsZWN0IiwiZm9jdXNvdXQgY29udGV4dG1lbnUgZHJhZ2VuZCBmb2N1c2luIGtleWRvd24ga2V5dXAgbW91c2Vkb3duIG1vdXNldXAgc2VsZWN0aW9uY2hhbmdlIi5zcGxpdCgiICIpKSxlOSgib25CZWZvcmVJbnB1dCIsWyJjb21wb3NpdGlvbmVuZCIsImtleXByZXNzIiwidGV4dElucHV0IiwicGFzdGUiXSksZTkoIm9uQ29tcG9zaXRpb25FbmQiLCJjb21wb3NpdGlvbmVuZCBmb2N1c291dCBrZXlkb3duIGtleXByZXNzIGtleXVwIG1vdXNlZG93biIuc3BsaXQoIiAiKSksZTkoIm9uQ29tcG9zaXRpb25TdGFydCIsImNvbXBvc2l0aW9uc3RhcnQgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpLGU5KCJvbkNvbXBvc2l0aW9uVXBkYXRlIiwiY29tcG9zaXRpb251cGRhdGUgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpO3ZhciBzWD0iYWJvcnQgY2FucGxheSBjYW5wbGF5dGhyb3VnaCBkdXJhdGlvbmNoYW5nZSBlbXB0aWVkIGVuY3J5cHRlZCBlbmRlZCBlcnJvciBsb2FkZWRkYXRhIGxvYWRlZG1ldGFkYXRhIGxvYWRzdGFydCBwYXVzZSBwbGF5IHBsYXlpbmcgcHJvZ3Jlc3MgcmF0ZWNoYW5nZSByZXNpemUgc2Vla2VkIHNlZWtpbmcgc3RhbGxlZCBzdXNwZW5kIHRpbWV1cGRhdGUgdm9sdW1lY2hhbmdlIHdhaXRpbmciLnNwbGl0KCIgIiksc0c9bmV3IFNldCgiYmVmb3JldG9nZ2xlIGNhbmNlbCBjbG9zZSBpbnZhbGlkIGxvYWQgc2Nyb2xsIHNjcm9sbGVuZCB0b2dnbGUiLnNwbGl0KCIgIikuY29uY2F0KHNYKSk7ZnVuY3Rpb24gc1koZSx0KXt0PTAhPSg0JnQpO2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgcj1lW25dLGw9ci5ldmVudDtyPXIubGlzdGVuZXJzO2U6e3ZhciBhPXZvaWQgMDtpZih0KWZvcih2YXIgbz1yLmxlbmd0aC0xOzA8PW87by0tKXt2YXIgaT1yW29dLHU9aS5pbnN0YW5jZSxzPWkuY3VycmVudFRhcmdldDtpZihpPWkubGlzdGVuZXIsdSE9PWEmJmwuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSlicmVhayBlO2E9aSxsLmN1cnJlbnRUYXJnZXQ9czt0cnl7YShsKX1jYXRjaChlKXtyYShlKX1sLmN1cnJlbnRUYXJnZXQ9bnVsbCxhPXV9ZWxzZSBmb3Iobz0wO288ci5sZW5ndGg7bysrKXtpZih1PShpPXJbb10pLmluc3RhbmNlLHM9aS5jdXJyZW50VGFyZ2V0LGk9aS5saXN0ZW5lcix1IT09YSYmbC5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpKWJyZWFrIGU7YT1pLGwuY3VycmVudFRhcmdldD1zO3RyeXthKGwpfWNhdGNoKGUpe3JhKGUpfWwuY3VycmVudFRhcmdldD1udWxsLGE9dX19fX1mdW5jdGlvbiBzSihlLHQpe3ZhciBuPXRbZVhdO3ZvaWQgMD09PW4mJihuPXRbZVhdPW5ldyBTZXQpO3ZhciByPWUrIl9fYnViYmxlIjtuLmhhcyhyKXx8KHMyKHQsZSwyLCExKSxuLmFkZChyKSl9ZnVuY3Rpb24gc1ooZSx0LG4pe3ZhciByPTA7dCYmKHJ8PTQpLHMyKG4sZSxyLHQpfXZhciBzMD0iX3JlYWN0TGlzdGVuaW5nIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKTtmdW5jdGlvbiBzMShlKXtpZighZVtzMF0pe2VbczBdPSEwLGU1LmZvckVhY2goZnVuY3Rpb24odCl7InNlbGVjdGlvbmNoYW5nZSIhPT10JiYoc0cuaGFzKHQpfHxzWih0LCExLGUpLHNaKHQsITAsZSkpfSk7dmFyIHQ9OT09PWUubm9kZVR5cGU/ZTplLm93bmVyRG9jdW1lbnQ7bnVsbD09PXR8fHRbczBdfHwodFtzMF09ITAsc1ooInNlbGVjdGlvbmNoYW5nZSIsITEsdCkpfX1mdW5jdGlvbiBzMihlLHQsbixyKXtzd2l0Y2goZkwodCkpe2Nhc2UgMjp2YXIgbD1mUDticmVhaztjYXNlIDg6bD1mTjticmVhaztkZWZhdWx0Omw9ZkN9bj1sLmJpbmQobnVsbCx0LG4sZSksbD12b2lkIDAsdGomJigidG91Y2hzdGFydCI9PT10fHwidG91Y2htb3ZlIj09PXR8fCJ3aGVlbCI9PT10KSYmKGw9ITApLHI/dm9pZCAwIT09bD9lLmFkZEV2ZW50TGlzdGVuZXIodCxuLHtjYXB0dXJlOiEwLHBhc3NpdmU6bH0pOmUuYWRkRXZlbnRMaXN0ZW5lcih0LG4sITApOnZvaWQgMCE9PWw/ZS5hZGRFdmVudExpc3RlbmVyKHQsbix7cGFzc2l2ZTpsfSk6ZS5hZGRFdmVudExpc3RlbmVyKHQsbiwhMSl9ZnVuY3Rpb24gczMoZSx0LG4scixsKXt2YXIgYT1yO2lmKDA9PSgxJnQpJiYwPT0oMiZ0KSYmbnVsbCE9PXIpZTpmb3IoOzspe2lmKG51bGw9PT1yKXJldHVybjt2YXIgbz1yLnRhZztpZigzPT09b3x8ND09PW8pe3ZhciBpPXIuc3RhdGVOb2RlLmNvbnRhaW5lckluZm87aWYoaT09PWwpYnJlYWs7aWYoND09PW8pZm9yKG89ci5yZXR1cm47bnVsbCE9PW87KXt2YXIgdT1vLnRhZztpZigoMz09PXV8fDQ9PT11KSYmby5zdGF0ZU5vZGUuY29udGFpbmVySW5mbz09PWwpcmV0dXJuO289by5yZXR1cm59Zm9yKDtudWxsIT09aTspe2lmKG51bGw9PT0obz1lMShpKSkpcmV0dXJuO2lmKDU9PT0odT1vLnRhZyl8fDY9PT11fHwyNj09PXV8fDI3PT09dSl7cj1hPW87Y29udGludWUgZX1pPWkucGFyZW50Tm9kZX19cj1yLnJldHVybn10RChmdW5jdGlvbigpe3ZhciByPWEsbD10eihuKSxvPVtdO2U6e3ZhciBpPW45LmdldChlKTtpZih2b2lkIDAhPT1pKXt2YXIgdT10MSxzPWU7c3dpdGNoKGUpe2Nhc2Uia2V5cHJlc3MiOmlmKDA9PT10UShuKSlicmVhayBlO2Nhc2Uia2V5ZG93biI6Y2FzZSJrZXl1cCI6dT1ubzticmVhaztjYXNlImZvY3VzaW4iOnM9ImZvY3VzIix1PXQ2O2JyZWFrO2Nhc2UiZm9jdXNvdXQiOnM9ImJsdXIiLHU9dDY7YnJlYWs7Y2FzZSJiZWZvcmVibHVyIjpjYXNlImFmdGVyYmx1ciI6dT10NjticmVhaztjYXNlImNsaWNrIjppZigyPT09bi5idXR0b24pYnJlYWsgZTtjYXNlImF1eGNsaWNrIjpjYXNlImRibGNsaWNrIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJtb3VzZW1vdmUiOmNhc2UibW91c2V1cCI6Y2FzZSJtb3VzZW91dCI6Y2FzZSJtb3VzZW92ZXIiOmNhc2UiY29udGV4dG1lbnUiOnU9dDg7YnJlYWs7Y2FzZSJkcmFnIjpjYXNlImRyYWdlbmQiOmNhc2UiZHJhZ2VudGVyIjpjYXNlImRyYWdleGl0IjpjYXNlImRyYWdsZWF2ZSI6Y2FzZSJkcmFnb3ZlciI6Y2FzZSJkcmFnc3RhcnQiOmNhc2UiZHJvcCI6dT10NTticmVhaztjYXNlInRvdWNoY2FuY2VsIjpjYXNlInRvdWNoZW5kIjpjYXNlInRvdWNobW92ZSI6Y2FzZSJ0b3VjaHN0YXJ0Ijp1PW51O2JyZWFrO2Nhc2UgbjE6Y2FzZSBuMjpjYXNlIG4zOnU9dDk7YnJlYWs7Y2FzZSBuNjp1PW5zO2JyZWFrO2Nhc2Uic2Nyb2xsIjpjYXNlInNjcm9sbGVuZCI6dT10MzticmVhaztjYXNlIndoZWVsIjp1PW5jO2JyZWFrO2Nhc2UiY29weSI6Y2FzZSJjdXQiOmNhc2UicGFzdGUiOnU9dDc7YnJlYWs7Y2FzZSJnb3Rwb2ludGVyY2FwdHVyZSI6Y2FzZSJsb3N0cG9pbnRlcmNhcHR1cmUiOmNhc2UicG9pbnRlcmNhbmNlbCI6Y2FzZSJwb2ludGVyZG93biI6Y2FzZSJwb2ludGVybW92ZSI6Y2FzZSJwb2ludGVyb3V0IjpjYXNlInBvaW50ZXJvdmVyIjpjYXNlInBvaW50ZXJ1cCI6dT1uaTticmVhaztjYXNlInRvZ2dsZSI6Y2FzZSJiZWZvcmV0b2dnbGUiOnU9bmZ9dmFyIGY9MCE9KDQmdCksZD0hZiYmKCJzY3JvbGwiPT09ZXx8InNjcm9sbGVuZCI9PT1lKSxwPWY/bnVsbCE9PWk/aSsiQ2FwdHVyZSI6bnVsbDppO2Y9W107Zm9yKHZhciBtLGg9cjtudWxsIT09aDspe3ZhciBnPWg7aWYobT1nLnN0YXRlTm9kZSw1IT09KGc9Zy50YWcpJiYyNiE9PWcmJjI3IT09Z3x8bnVsbD09PW18fG51bGw9PT1wfHxudWxsIT0oZz10RihoLHApKSYmZi5wdXNoKHM0KGgsZyxtKSksZClicmVhaztoPWgucmV0dXJufTA8Zi5sZW5ndGgmJihpPW5ldyB1KGkscyxudWxsLG4sbCksby5wdXNoKHtldmVudDppLGxpc3RlbmVyczpmfSkpfX1pZigwPT0oNyZ0KSl7dT0ibW91c2VvdmVyIj09PWV8fCJwb2ludGVyb3ZlciI9PT1lLGk9Im1vdXNlb3V0Ij09PWV8fCJwb2ludGVyb3V0Ij09PWUsISh1JiZuIT09dE8mJihzPW4ucmVsYXRlZFRhcmdldHx8bi5mcm9tRWxlbWVudCkmJihlMShzKXx8c1tlS10pKSYmKGl8fHUpJiYocz1sLndpbmRvdz09PWw/bDoodT1sLm93bmVyRG9jdW1lbnQpP3UuZGVmYXVsdFZpZXd8fHUucGFyZW50V2luZG93OndpbmRvdyxpPyh1PW4ucmVsYXRlZFRhcmdldHx8bi50b0VsZW1lbnQsaT1yLG51bGwhPT0odT11P2UxKHUpOm51bGwpJiYoZD1jKHUpLGY9dS50YWcsdSE9PWR8fDUhPT1mJiYyNyE9PWYmJjYhPT1mKSYmKHU9bnVsbCkpOihpPW51bGwsdT1yKSxpIT09dSYmKGY9dDgsZz0ib25Nb3VzZUxlYXZlIixwPSJvbk1vdXNlRW50ZXIiLGg9Im1vdXNlIiwoInBvaW50ZXJvdXQiPT09ZXx8InBvaW50ZXJvdmVyIj09PWUpJiYoZj1uaSxnPSJvblBvaW50ZXJMZWF2ZSIscD0ib25Qb2ludGVyRW50ZXIiLGg9InBvaW50ZXIiKSxkPW51bGw9PWk/czplMyhpKSxtPW51bGw9PXU/czplMyh1KSwocz1uZXcgZihnLGgrImxlYXZlIixpLG4sbCkpLnRhcmdldD1kLHMucmVsYXRlZFRhcmdldD1tLGc9bnVsbCxlMShsKT09PXImJigoZj1uZXcgZihwLGgrImVudGVyIix1LG4sbCkpLnRhcmdldD1tLGYucmVsYXRlZFRhcmdldD1kLGc9ZiksZD1nLGY9aSYmdT9FKGksdSxzNSk6bnVsbCxudWxsIT09aSYmczYobyxzLGksZiwhMSksbnVsbCE9PXUmJm51bGwhPT1kJiZzNihvLGQsdSxmLCEwKSkpO2U6e2lmKCJzZWxlY3QiPT09KHU9KGk9cj9lMyhyKTp3aW5kb3cpLm5vZGVOYW1lJiZpLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpfHwiaW5wdXQiPT09dSYmImZpbGUiPT09aS50eXBlKXZhciB2LHk9bkM7ZWxzZSBpZihuUyhpKSlpZihuVCl5PW5GO2Vsc2V7eT1uSTt2YXIgYj1uTX1lbHNlKHU9aS5ub2RlTmFtZSkmJiJpbnB1dCI9PT11LnRvTG93ZXJDYXNlKCkmJigiY2hlY2tib3giPT09aS50eXBlfHwicmFkaW8iPT09aS50eXBlKT95PW5EOnImJnRfKHIuZWxlbWVudFR5cGUpJiYoeT1uQyk7aWYoeSYmKHk9eShlLHIpKSl7bkUobyx5LG4sbCk7YnJlYWsgZX1iJiZiKGUsaSxyKSwiZm9jdXNvdXQiPT09ZSYmciYmIm51bWJlciI9PT1pLnR5cGUmJm51bGwhPXIubWVtb2l6ZWRQcm9wcy52YWx1ZSYmdHYoaSwibnVtYmVyIixpLnZhbHVlKX1zd2l0Y2goYj1yP2UzKHIpOndpbmRvdyxlKXtjYXNlImZvY3VzaW4iOihuUyhiKXx8InRydWUiPT09Yi5jb250ZW50RWRpdGFibGUpJiYoblE9YixuVz1yLG5xPW51bGwpO2JyZWFrO2Nhc2UiZm9jdXNvdXQiOm5xPW5XPW5RPW51bGw7YnJlYWs7Y2FzZSJtb3VzZWRvd24iOm5LPSEwO2JyZWFrO2Nhc2UiY29udGV4dG1lbnUiOmNhc2UibW91c2V1cCI6Y2FzZSJkcmFnZW5kIjpuSz0hMSxuWChvLG4sbCk7YnJlYWs7Y2FzZSJzZWxlY3Rpb25jaGFuZ2UiOmlmKG4kKWJyZWFrO2Nhc2Uia2V5ZG93biI6Y2FzZSJrZXl1cCI6blgobyxuLGwpfWlmKG5wKXQ6e3N3aXRjaChlKXtjYXNlImNvbXBvc2l0aW9uc3RhcnQiOnZhciB3PSJvbkNvbXBvc2l0aW9uU3RhcnQiO2JyZWFrIHQ7Y2FzZSJjb21wb3NpdGlvbmVuZCI6dz0ib25Db21wb3NpdGlvbkVuZCI7YnJlYWsgdDtjYXNlImNvbXBvc2l0aW9udXBkYXRlIjp3PSJvbkNvbXBvc2l0aW9uVXBkYXRlIjticmVhayB0fXc9dm9pZCAwfWVsc2Ugbnc/bnkoZSxuKSYmKHc9Im9uQ29tcG9zaXRpb25FbmQiKToia2V5ZG93biI9PT1lJiYyMjk9PT1uLmtleUNvZGUmJih3PSJvbkNvbXBvc2l0aW9uU3RhcnQiKTt3JiYobmcmJiJrbyIhPT1uLmxvY2FsZSYmKG53fHwib25Db21wb3NpdGlvblN0YXJ0IiE9PXc/Im9uQ29tcG9zaXRpb25FbmQiPT09dyYmbncmJih2PXQkKCkpOih0Vj0idmFsdWUiaW4odEI9bCk/dEIudmFsdWU6dEIudGV4dENvbnRlbnQsbnc9ITApKSwwPChiPXM4KHIsdykpLmxlbmd0aCYmKHc9bmV3IG5lKHcsZSxudWxsLG4sbCksby5wdXNoKHtldmVudDp3LGxpc3RlbmVyczpifSksdj93LmRhdGE9djpudWxsIT09KHY9bmIobikpJiYody5kYXRhPXYpKSksKHY9bmg/ZnVuY3Rpb24oZSx0KXtzd2l0Y2goZSl7Y2FzZSJjb21wb3NpdGlvbmVuZCI6cmV0dXJuIG5iKHQpO2Nhc2Uia2V5cHJlc3MiOmlmKDMyIT09dC53aGljaClyZXR1cm4gbnVsbDtyZXR1cm4gbnY9ITAsIiAiO2Nhc2UidGV4dElucHV0IjpyZXR1cm4iICI9PT0oZT10LmRhdGEpJiZudj9udWxsOmU7ZGVmYXVsdDpyZXR1cm4gbnVsbH19KGUsbik6ZnVuY3Rpb24oZSx0KXtpZihudylyZXR1cm4iY29tcG9zaXRpb25lbmQiPT09ZXx8IW5wJiZueShlLHQpPyhlPXQkKCksdEg9dFY9dEI9bnVsbCxudz0hMSxlKTpudWxsO3N3aXRjaChlKXtjYXNlInBhc3RlIjpkZWZhdWx0OnJldHVybiBudWxsO2Nhc2Uia2V5cHJlc3MiOmlmKCEodC5jdHJsS2V5fHx0LmFsdEtleXx8dC5tZXRhS2V5KXx8dC5jdHJsS2V5JiZ0LmFsdEtleSl7aWYodC5jaGFyJiYxPHQuY2hhci5sZW5ndGgpcmV0dXJuIHQuY2hhcjtpZih0LndoaWNoKXJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKHQud2hpY2gpfXJldHVybiBudWxsO2Nhc2UiY29tcG9zaXRpb25lbmQiOnJldHVybiBuZyYmImtvIiE9PXQubG9jYWxlP251bGw6dC5kYXRhfX0oZSxuKSkmJjA8KHc9czgociwib25CZWZvcmVJbnB1dCIpKS5sZW5ndGgmJihiPW5ldyBuZSgib25CZWZvcmVJbnB1dCIsImJlZm9yZWlucHV0IixudWxsLG4sbCksby5wdXNoKHtldmVudDpiLGxpc3RlbmVyczp3fSksYi5kYXRhPXYpO3ZhciBrPWU7aWYoInN1Ym1pdCI9PT1rJiZyJiZyLnN0YXRlTm9kZT09PWwpe3ZhciBTPXNRKChsW2VxXXx8bnVsbCkuYWN0aW9uKSx4PW4uc3VibWl0dGVyO3gmJm51bGwhPT0oaz0oaz14W2VxXXx8bnVsbCk/c1Eoay5mb3JtQWN0aW9uKTp4LmdldEF0dHJpYnV0ZSgiZm9ybUFjdGlvbiIpKSYmKFM9ayx4PW51bGwpO3ZhciBfPW5ldyB0MSgiYWN0aW9uIiwiYWN0aW9uIixudWxsLG4sbCk7by5wdXNoKHtldmVudDpfLGxpc3RlbmVyczpbe2luc3RhbmNlOm51bGwsbGlzdGVuZXI6ZnVuY3Rpb24oKXtpZihuLmRlZmF1bHRQcmV2ZW50ZWQpe2lmKDAhPT1zRCl7dmFyIGU9eD9zVyhsLHgpOm5ldyBGb3JtRGF0YShsKTtvdShyLHtwZW5kaW5nOiEwLGRhdGE6ZSxtZXRob2Q6bC5tZXRob2QsYWN0aW9uOlN9LG51bGwsZSl9fWVsc2UiZnVuY3Rpb24iPT10eXBlb2YgUyYmKF8ucHJldmVudERlZmF1bHQoKSxvdShyLHtwZW5kaW5nOiEwLGRhdGE6ZT14P3NXKGwseCk6bmV3IEZvcm1EYXRhKGwpLG1ldGhvZDpsLm1ldGhvZCxhY3Rpb246U30sUyxlKSl9LGN1cnJlbnRUYXJnZXQ6bH1dfSl9fXNZKG8sdCl9KX1mdW5jdGlvbiBzNChlLHQsbil7cmV0dXJue2luc3RhbmNlOmUsbGlzdGVuZXI6dCxjdXJyZW50VGFyZ2V0Om59fWZ1bmN0aW9uIHM4KGUsdCl7Zm9yKHZhciBuPXQrIkNhcHR1cmUiLHI9W107bnVsbCE9PWU7KXt2YXIgbD1lLGE9bC5zdGF0ZU5vZGU7aWYoNSE9PShsPWwudGFnKSYmMjYhPT1sJiYyNyE9PWx8fG51bGw9PT1hfHwobnVsbCE9KGw9dEYoZSxuKSkmJnIudW5zaGlmdChzNChlLGwsYSkpLG51bGwhPShsPXRGKGUsdCkpJiZyLnB1c2goczQoZSxsLGEpKSksMz09PWUudGFnKXJldHVybiByO2U9ZS5yZXR1cm59cmV0dXJuW119ZnVuY3Rpb24gczUoZSl7aWYobnVsbD09PWUpcmV0dXJuIG51bGw7ZG8gZT1lLnJldHVybjt3aGlsZShlJiY1IT09ZS50YWcmJjI3IT09ZS50YWcpcmV0dXJuIGV8fG51bGx9ZnVuY3Rpb24gczYoZSx0LG4scixsKXtmb3IodmFyIGE9dC5fcmVhY3ROYW1lLG89W107bnVsbCE9PW4mJm4hPT1yOyl7dmFyIGk9bix1PWkuYWx0ZXJuYXRlLHM9aS5zdGF0ZU5vZGU7aWYoaT1pLnRhZyxudWxsIT09dSYmdT09PXIpYnJlYWs7NSE9PWkmJjI2IT09aSYmMjchPT1pfHxudWxsPT09c3x8KHU9cyxsP251bGwhPShzPXRGKG4sYSkpJiZvLnVuc2hpZnQoczQobixzLHUpKTpsfHxudWxsIT0ocz10RihuLGEpKSYmby5wdXNoKHM0KG4scyx1KSkpLG49bi5yZXR1cm59MCE9PW8ubGVuZ3RoJiZlLnB1c2goe2V2ZW50OnQsbGlzdGVuZXJzOm99KX12YXIgczk9L1xyXG4/L2csczc9L1x1MDAwMHxcdUZGRkQvZztmdW5jdGlvbiBjZShlKXtyZXR1cm4oInN0cmluZyI9PXR5cGVvZiBlP2U6IiIrZSkucmVwbGFjZShzOSwiXG4iKS5yZXBsYWNlKHM3LCIiKX1mdW5jdGlvbiBjdChlLHQpe3JldHVybiB0PWNlKHQpLGNlKGUpPT09dH1mdW5jdGlvbiBjbihlLHQsbixyLGwsYSl7c3dpdGNoKG4pe2Nhc2UiY2hpbGRyZW4iOmlmKCJzdHJpbmciPT10eXBlb2YgcikiYm9keSI9PT10fHwidGV4dGFyZWEiPT09dCYmIiI9PT1yfHx0ayhlLHIpO2Vsc2V7aWYoIm51bWJlciIhPXR5cGVvZiByJiYiYmlnaW50IiE9dHlwZW9mIHIpcmV0dXJuOyJib2R5IiE9PXQmJnRrKGUsIiIrcil9YnJlYWs7Y2FzZSJjbGFzc05hbWUiOnRvKGUsImNsYXNzIixyKTticmVhaztjYXNlInRhYkluZGV4Ijp0byhlLCJ0YWJpbmRleCIscik7YnJlYWs7Y2FzZSJkaXIiOmNhc2Uicm9sZSI6Y2FzZSJ2aWV3Qm94IjpjYXNlIndpZHRoIjpjYXNlImhlaWdodCI6dG8oZSxuLHIpO2JyZWFrO2Nhc2Uic3R5bGUiOnR4KGUscixhKTtyZXR1cm47Y2FzZSJkYXRhIjppZigib2JqZWN0IiE9PXQpe3RvKGUsImRhdGEiLHIpO2JyZWFrfWNhc2Uic3JjIjpjYXNlImhyZWYiOmlmKCIiPT09ciYmKCJhIiE9PXR8fCJocmVmIiE9PW4pfHxudWxsPT1yfHwiZnVuY3Rpb24iPT10eXBlb2Ygcnx8InN5bWJvbCI9PXR5cGVvZiByfHwiYm9vbGVhbiI9PXR5cGVvZiByKXtlLnJlbW92ZUF0dHJpYnV0ZShuKTticmVha31yPXRDKCIiK3IpLGUuc2V0QXR0cmlidXRlKG4scik7YnJlYWs7Y2FzZSJhY3Rpb24iOmNhc2UiZm9ybUFjdGlvbiI6aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe2Uuc2V0QXR0cmlidXRlKG4sImphdmFzY3JpcHQ6dGhyb3cgbmV3IEVycm9yKCdBIFJlYWN0IGZvcm0gd2FzIHVuZXhwZWN0ZWRseSBzdWJtaXR0ZWQuIElmIHlvdSBjYWxsZWQgZm9ybS5zdWJtaXQoKSBtYW51YWxseSwgY29uc2lkZXIgdXNpbmcgZm9ybS5yZXF1ZXN0U3VibWl0KCkgaW5zdGVhZC4gSWYgeW91XFwncmUgdHJ5aW5nIHRvIHVzZSBldmVudC5zdG9wUHJvcGFnYXRpb24oKSBpbiBhIHN1Ym1pdCBldmVudCBoYW5kbGVyLCBjb25zaWRlciBhbHNvIGNhbGxpbmcgZXZlbnQucHJldmVudERlZmF1bHQoKS4nKSIpO2JyZWFrfWlmKCJmdW5jdGlvbiI9PXR5cGVvZiBhJiYoImZvcm1BY3Rpb24iPT09bj8oImlucHV0IiE9PXQmJmNuKGUsdCwibmFtZSIsbC5uYW1lLGwsbnVsbCksY24oZSx0LCJmb3JtRW5jVHlwZSIsbC5mb3JtRW5jVHlwZSxsLG51bGwpLGNuKGUsdCwiZm9ybU1ldGhvZCIsbC5mb3JtTWV0aG9kLGwsbnVsbCksY24oZSx0LCJmb3JtVGFyZ2V0IixsLmZvcm1UYXJnZXQsbCxudWxsKSk6KGNuKGUsdCwiZW5jVHlwZSIsbC5lbmNUeXBlLGwsbnVsbCksY24oZSx0LCJtZXRob2QiLGwubWV0aG9kLGwsbnVsbCksY24oZSx0LCJ0YXJnZXQiLGwudGFyZ2V0LGwsbnVsbCkpKSxudWxsPT1yfHwic3ltYm9sIj09dHlwZW9mIHJ8fCJib29sZWFuIj09dHlwZW9mIHIpe2UucmVtb3ZlQXR0cmlidXRlKG4pO2JyZWFrfXI9dEMoIiIrciksZS5zZXRBdHRyaWJ1dGUobixyKTticmVhaztjYXNlIm9uQ2xpY2siOm51bGwhPXImJihlLm9uY2xpY2s9dFQpO3JldHVybjtjYXNlIm9uU2Nyb2xsIjpudWxsIT1yJiZzSigic2Nyb2xsIixlKTtyZXR1cm47Y2FzZSJvblNjcm9sbEVuZCI6bnVsbCE9ciYmc0ooInNjcm9sbGVuZCIsZSk7cmV0dXJuO2Nhc2UiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiOmlmKG51bGwhPXIpe2lmKCJvYmplY3QiIT10eXBlb2Ygcnx8ISgiX19odG1sImluIHIpKXRocm93IEVycm9yKHUoNjEpKTtpZihudWxsIT0obj1yLl9faHRtbCkpe2lmKG51bGwhPWwuY2hpbGRyZW4pdGhyb3cgRXJyb3IodSg2MCkpO2UuaW5uZXJIVE1MPW59fWJyZWFrO2Nhc2UibXVsdGlwbGUiOmUubXVsdGlwbGU9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHImJiJzeW1ib2wiIT10eXBlb2YgcjticmVhaztjYXNlIm11dGVkIjplLm11dGVkPXImJiJmdW5jdGlvbiIhPXR5cGVvZiByJiYic3ltYm9sIiE9dHlwZW9mIHI7YnJlYWs7Y2FzZSJzdXBwcmVzc0NvbnRlbnRFZGl0YWJsZVdhcm5pbmciOmNhc2Uic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIjpjYXNlImRlZmF1bHRWYWx1ZSI6Y2FzZSJkZWZhdWx0Q2hlY2tlZCI6Y2FzZSJpbm5lckhUTUwiOmNhc2UicmVmIjpjYXNlImF1dG9Gb2N1cyI6YnJlYWs7Y2FzZSJ4bGlua0hyZWYiOmlmKG51bGw9PXJ8fCJmdW5jdGlvbiI9PXR5cGVvZiByfHwiYm9vbGVhbiI9PXR5cGVvZiByfHwic3ltYm9sIj09dHlwZW9mIHIpe2UucmVtb3ZlQXR0cmlidXRlKCJ4bGluazpocmVmIik7YnJlYWt9bj10QygiIityKSxlLnNldEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiwieGxpbms6aHJlZiIsbik7YnJlYWs7Y2FzZSJjb250ZW50RWRpdGFibGUiOmNhc2Uic3BlbGxDaGVjayI6Y2FzZSJkcmFnZ2FibGUiOmNhc2UidmFsdWUiOmNhc2UiYXV0b1JldmVyc2UiOmNhc2UiZXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZCI6Y2FzZSJmb2N1c2FibGUiOmNhc2UicHJlc2VydmVBbHBoYSI6bnVsbCE9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHImJiJzeW1ib2wiIT10eXBlb2Ygcj9lLnNldEF0dHJpYnV0ZShuLCIiK3IpOmUucmVtb3ZlQXR0cmlidXRlKG4pO2JyZWFrO2Nhc2UiaW5lcnQiOmNhc2UiYWxsb3dGdWxsU2NyZWVuIjpjYXNlImFzeW5jIjpjYXNlImF1dG9QbGF5IjpjYXNlImNvbnRyb2xzIjpjYXNlImRlZmF1bHQiOmNhc2UiZGVmZXIiOmNhc2UiZGlzYWJsZWQiOmNhc2UiZGlzYWJsZVBpY3R1cmVJblBpY3R1cmUiOmNhc2UiZGlzYWJsZVJlbW90ZVBsYXliYWNrIjpjYXNlImZvcm1Ob1ZhbGlkYXRlIjpjYXNlImhpZGRlbiI6Y2FzZSJsb29wIjpjYXNlIm5vTW9kdWxlIjpjYXNlIm5vVmFsaWRhdGUiOmNhc2Uib3BlbiI6Y2FzZSJwbGF5c0lubGluZSI6Y2FzZSJyZWFkT25seSI6Y2FzZSJyZXF1aXJlZCI6Y2FzZSJyZXZlcnNlZCI6Y2FzZSJzY29wZWQiOmNhc2Uic2VhbWxlc3MiOmNhc2UiaXRlbVNjb3BlIjpyJiYiZnVuY3Rpb24iIT10eXBlb2YgciYmInN5bWJvbCIhPXR5cGVvZiByP2Uuc2V0QXR0cmlidXRlKG4sIiIpOmUucmVtb3ZlQXR0cmlidXRlKG4pO2JyZWFrO2Nhc2UiY2FwdHVyZSI6Y2FzZSJkb3dubG9hZCI6ITA9PT1yP2Uuc2V0QXR0cmlidXRlKG4sIiIpOiExIT09ciYmbnVsbCE9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHImJiJzeW1ib2wiIT10eXBlb2Ygcj9lLnNldEF0dHJpYnV0ZShuLHIpOmUucmVtb3ZlQXR0cmlidXRlKG4pO2JyZWFrO2Nhc2UiY29scyI6Y2FzZSJyb3dzIjpjYXNlInNpemUiOmNhc2Uic3BhbiI6bnVsbCE9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHImJiJzeW1ib2wiIT10eXBlb2YgciYmIWlzTmFOKHIpJiYxPD1yP2Uuc2V0QXR0cmlidXRlKG4scik6ZS5yZW1vdmVBdHRyaWJ1dGUobik7YnJlYWs7Y2FzZSJyb3dTcGFuIjpjYXNlInN0YXJ0IjpudWxsPT1yfHwiZnVuY3Rpb24iPT10eXBlb2Ygcnx8InN5bWJvbCI9PXR5cGVvZiByfHxpc05hTihyKT9lLnJlbW92ZUF0dHJpYnV0ZShuKTplLnNldEF0dHJpYnV0ZShuLHIpO2JyZWFrO2Nhc2UicG9wb3ZlciI6c0ooImJlZm9yZXRvZ2dsZSIsZSksc0ooInRvZ2dsZSIsZSksdGEoZSwicG9wb3ZlciIscik7YnJlYWs7Y2FzZSJ4bGlua0FjdHVhdGUiOnRpKGUsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCJ4bGluazphY3R1YXRlIixyKTticmVhaztjYXNlInhsaW5rQXJjcm9sZSI6dGkoZSwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsInhsaW5rOmFyY3JvbGUiLHIpO2JyZWFrO2Nhc2UieGxpbmtSb2xlIjp0aShlLCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiwieGxpbms6cm9sZSIscik7YnJlYWs7Y2FzZSJ4bGlua1Nob3ciOnRpKGUsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCJ4bGluazpzaG93IixyKTticmVhaztjYXNlInhsaW5rVGl0bGUiOnRpKGUsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCJ4bGluazp0aXRsZSIscik7YnJlYWs7Y2FzZSJ4bGlua1R5cGUiOnRpKGUsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCJ4bGluazp0eXBlIixyKTticmVhaztjYXNlInhtbEJhc2UiOnRpKGUsImh0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZSIsInhtbDpiYXNlIixyKTticmVhaztjYXNlInhtbExhbmciOnRpKGUsImh0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZSIsInhtbDpsYW5nIixyKTticmVhaztjYXNlInhtbFNwYWNlIjp0aShlLCJodHRwOi8vd3d3LnczLm9yZy9YTUwvMTk5OC9uYW1lc3BhY2UiLCJ4bWw6c3BhY2UiLHIpO2JyZWFrO2Nhc2UiaXMiOnRhKGUsImlzIixyKTticmVhaztjYXNlImlubmVyVGV4dCI6Y2FzZSJ0ZXh0Q29udGVudCI6cmV0dXJuO2RlZmF1bHQ6aWYoMjxuLmxlbmd0aCYmKCJvIj09PW5bMF18fCJPIj09PW5bMF0pJiYoIm4iPT09blsxXXx8Ik4iPT09blsxXSkpcmV0dXJuO3RhKGUsbj10UC5nZXQobil8fG4scil9dHI9ITB9ZnVuY3Rpb24gY3IoZSx0LG4scixsLGEpe3N3aXRjaChuKXtjYXNlInN0eWxlIjp0eChlLHIsYSk7cmV0dXJuO2Nhc2UiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiOmlmKG51bGwhPXIpe2lmKCJvYmplY3QiIT10eXBlb2Ygcnx8ISgiX19odG1sImluIHIpKXRocm93IEVycm9yKHUoNjEpKTtpZihudWxsIT0obj1yLl9faHRtbCkpe2lmKG51bGwhPWwuY2hpbGRyZW4pdGhyb3cgRXJyb3IodSg2MCkpO2UuaW5uZXJIVE1MPW59fWJyZWFrO2Nhc2UiY2hpbGRyZW4iOmlmKCJzdHJpbmciPT10eXBlb2Ygcil0ayhlLHIpO2Vsc2V7aWYoIm51bWJlciIhPXR5cGVvZiByJiYiYmlnaW50IiE9dHlwZW9mIHIpcmV0dXJuO3RrKGUsIiIrcil9YnJlYWs7Y2FzZSJvblNjcm9sbCI6bnVsbCE9ciYmc0ooInNjcm9sbCIsZSk7cmV0dXJuO2Nhc2Uib25TY3JvbGxFbmQiOm51bGwhPXImJnNKKCJzY3JvbGxlbmQiLGUpO3JldHVybjtjYXNlIm9uQ2xpY2siOm51bGwhPXImJihlLm9uY2xpY2s9dFQpO3JldHVybjtjYXNlInN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyI6Y2FzZSJzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmciOmNhc2UiaW5uZXJIVE1MIjpjYXNlInJlZiI6Y2FzZSJpbm5lclRleHQiOmNhc2UidGV4dENvbnRlbnQiOnJldHVybjtkZWZhdWx0OmlmKCFlNi5oYXNPd25Qcm9wZXJ0eShuKSllOntpZigibyI9PT1uWzBdJiYibiI9PT1uWzFdJiYobD1uLmVuZHNXaXRoKCJDYXB0dXJlIiksdD1uLnNsaWNlKDIsbD9uLmxlbmd0aC03OnZvaWQgMCksImZ1bmN0aW9uIj09dHlwZW9mKGE9bnVsbCE9KGE9ZVtlcV18fG51bGwpP2Fbbl06bnVsbCkmJmUucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LGEsbCksImZ1bmN0aW9uIj09dHlwZW9mIHIpKXsiZnVuY3Rpb24iIT10eXBlb2YgYSYmbnVsbCE9PWEmJihuIGluIGU/ZVtuXT1udWxsOmUuaGFzQXR0cmlidXRlKG4pJiZlLnJlbW92ZUF0dHJpYnV0ZShuKSksZS5hZGRFdmVudExpc3RlbmVyKHQscixsKTticmVhayBlfXRyPSEwLG4gaW4gZT9lW25dPXI6ITA9PT1yP2Uuc2V0QXR0cmlidXRlKG4sIiIpOnRhKGUsbixyKX1yZXR1cm59dHI9ITB9ZnVuY3Rpb24gY2woZSx0LG4pe3N3aXRjaCh0KXtjYXNlImRpdiI6Y2FzZSJzcGFuIjpjYXNlInN2ZyI6Y2FzZSJwYXRoIjpjYXNlImEiOmNhc2UiZyI6Y2FzZSJwIjpjYXNlImxpIjpicmVhaztjYXNlImltZyI6c0ooImVycm9yIixlKSxzSigibG9hZCIsZSk7dmFyIHIsbD0hMSxhPSExO2ZvcihyIGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eShyKSl7dmFyIG89bltyXTtpZihudWxsIT1vKXN3aXRjaChyKXtjYXNlInNyYyI6bD0hMDticmVhaztjYXNlInNyY1NldCI6YT0hMDticmVhaztjYXNlImNoaWxkcmVuIjpjYXNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIjp0aHJvdyBFcnJvcih1KDEzNyx0KSk7ZGVmYXVsdDpjbihlLHQscixvLG4sbnVsbCl9fWEmJmNuKGUsdCwic3JjU2V0IixuLnNyY1NldCxuLG51bGwpLGwmJmNuKGUsdCwic3JjIixuLnNyYyxuLG51bGwpO3JldHVybjtjYXNlImlucHV0IjpzSigiaW52YWxpZCIsZSk7dmFyIGk9cj1vPWE9bnVsbCxzPW51bGwsYz1udWxsO2ZvcihsIGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eShsKSl7dmFyIGY9bltsXTtpZihudWxsIT1mKXN3aXRjaChsKXtjYXNlIm5hbWUiOmE9ZjticmVhaztjYXNlInR5cGUiOm89ZjticmVhaztjYXNlImNoZWNrZWQiOnM9ZjticmVhaztjYXNlImRlZmF1bHRDaGVja2VkIjpjPWY7YnJlYWs7Y2FzZSJ2YWx1ZSI6cj1mO2JyZWFrO2Nhc2UiZGVmYXVsdFZhbHVlIjppPWY7YnJlYWs7Y2FzZSJjaGlsZHJlbiI6Y2FzZSJkYW5nZXJvdXNseVNldElubmVySFRNTCI6aWYobnVsbCE9Zil0aHJvdyBFcnJvcih1KDEzNyx0KSk7YnJlYWs7ZGVmYXVsdDpjbihlLHQsbCxmLG4sbnVsbCl9fXRnKGUscixpLHMsYyxvLGEsITEpO3JldHVybjtjYXNlInNlbGVjdCI6Zm9yKGEgaW4gc0ooImludmFsaWQiLGUpLGw9bz1yPW51bGwsbilpZihuLmhhc093blByb3BlcnR5KGEpJiZudWxsIT0oaT1uW2FdKSlzd2l0Y2goYSl7Y2FzZSJ2YWx1ZSI6cj1pO2JyZWFrO2Nhc2UiZGVmYXVsdFZhbHVlIjpvPWk7YnJlYWs7Y2FzZSJtdWx0aXBsZSI6bD1pO2RlZmF1bHQ6Y24oZSx0LGEsaSxuLG51bGwpfXQ9cixuPW8sZS5tdWx0aXBsZT0hIWwsbnVsbCE9dD90eShlLCEhbCx0LCExKTpudWxsIT1uJiZ0eShlLCEhbCxuLCEwKTtyZXR1cm47Y2FzZSJ0ZXh0YXJlYSI6Zm9yKG8gaW4gc0ooImludmFsaWQiLGUpLHI9YT1sPW51bGwsbilpZihuLmhhc093blByb3BlcnR5KG8pJiZudWxsIT0oaT1uW29dKSlzd2l0Y2gobyl7Y2FzZSJ2YWx1ZSI6bD1pO2JyZWFrO2Nhc2UiZGVmYXVsdFZhbHVlIjphPWk7YnJlYWs7Y2FzZSJjaGlsZHJlbiI6cj1pO2JyZWFrO2Nhc2UiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiOmlmKG51bGwhPWkpdGhyb3cgRXJyb3IodSg5MSkpO2JyZWFrO2RlZmF1bHQ6Y24oZSx0LG8saSxuLG51bGwpfXR3KGUsbCxhLHIpO3JldHVybjtjYXNlIm9wdGlvbiI6Zm9yKHMgaW4gbiluLmhhc093blByb3BlcnR5KHMpJiZudWxsIT0obD1uW3NdKSYmKCJzZWxlY3RlZCI9PT1zP2Uuc2VsZWN0ZWQ9bCYmImZ1bmN0aW9uIiE9dHlwZW9mIGwmJiJzeW1ib2wiIT10eXBlb2YgbDpjbihlLHQscyxsLG4sbnVsbCkpO3JldHVybjtjYXNlImRpYWxvZyI6c0ooImJlZm9yZXRvZ2dsZSIsZSksc0ooInRvZ2dsZSIsZSksc0ooImNhbmNlbCIsZSksc0ooImNsb3NlIixlKTticmVhaztjYXNlImlmcmFtZSI6Y2FzZSJvYmplY3QiOnNKKCJsb2FkIixlKTticmVhaztjYXNlInZpZGVvIjpjYXNlImF1ZGlvIjpmb3IobD0wO2w8c1gubGVuZ3RoO2wrKylzSihzWFtsXSxlKTticmVhaztjYXNlImltYWdlIjpzSigiZXJyb3IiLGUpLHNKKCJsb2FkIixlKTticmVhaztjYXNlImRldGFpbHMiOnNKKCJ0b2dnbGUiLGUpO2JyZWFrO2Nhc2UiZW1iZWQiOmNhc2Uic291cmNlIjpjYXNlImxpbmsiOnNKKCJlcnJvciIsZSksc0ooImxvYWQiLGUpO2Nhc2UiYXJlYSI6Y2FzZSJiYXNlIjpjYXNlImJyIjpjYXNlImNvbCI6Y2FzZSJociI6Y2FzZSJrZXlnZW4iOmNhc2UibWV0YSI6Y2FzZSJwYXJhbSI6Y2FzZSJ0cmFjayI6Y2FzZSJ3YnIiOmNhc2UibWVudWl0ZW0iOmZvcihjIGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eShjKSYmbnVsbCE9KGw9bltjXSkpc3dpdGNoKGMpe2Nhc2UiY2hpbGRyZW4iOmNhc2UiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiOnRocm93IEVycm9yKHUoMTM3LHQpKTtkZWZhdWx0OmNuKGUsdCxjLGwsbixudWxsKX1yZXR1cm47ZGVmYXVsdDppZih0Xyh0KSl7Zm9yKGYgaW4gbiluLmhhc093blByb3BlcnR5KGYpJiZ2b2lkIDAhPT0obD1uW2ZdKSYmY3IoZSx0LGYsbCxuLHZvaWQgMCk7cmV0dXJufX1mb3IoaSBpbiBuKW4uaGFzT3duUHJvcGVydHkoaSkmJm51bGwhPShsPW5baV0pJiZjbihlLHQsaSxsLG4sbnVsbCl9ZnVuY3Rpb24gY2EoZSl7c3dpdGNoKGUpe2Nhc2UiY3NzIjpjYXNlInNjcmlwdCI6Y2FzZSJmb250IjpjYXNlImltZyI6Y2FzZSJpbWFnZSI6Y2FzZSJpbnB1dCI6Y2FzZSJsaW5rIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiExfX12YXIgY289bnVsbCxjaT1udWxsO2Z1bmN0aW9uIGN1KGUpe3JldHVybiA5PT09ZS5ub2RlVHlwZT9lOmUub3duZXJEb2N1bWVudH1mdW5jdGlvbiBjcyhlKXtzd2l0Y2goZSl7Y2FzZSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI6cmV0dXJuIDE7Y2FzZSJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIjpyZXR1cm4gMjtkZWZhdWx0OnJldHVybiAwfX1mdW5jdGlvbiBjYyhlLHQpe2lmKDA9PT1lKXN3aXRjaCh0KXtjYXNlInN2ZyI6cmV0dXJuIDE7Y2FzZSJtYXRoIjpyZXR1cm4gMjtkZWZhdWx0OnJldHVybiAwfXJldHVybiAxPT09ZSYmImZvcmVpZ25PYmplY3QiPT09dD8wOmV9ZnVuY3Rpb24gY2YoZSx0KXtyZXR1cm4idGV4dGFyZWEiPT09ZXx8Im5vc2NyaXB0Ij09PWV8fCJzdHJpbmciPT10eXBlb2YgdC5jaGlsZHJlbnx8Im51bWJlciI9PXR5cGVvZiB0LmNoaWxkcmVufHwiYmlnaW50Ij09dHlwZW9mIHQuY2hpbGRyZW58fCJvYmplY3QiPT10eXBlb2YgdC5kYW5nZXJvdXNseVNldElubmVySFRNTCYmbnVsbCE9PXQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwmJm51bGwhPXQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwuX19odG1sfXZhciBjZD1udWxsLGNwPSJmdW5jdGlvbiI9PXR5cGVvZiBzZXRUaW1lb3V0P3NldFRpbWVvdXQ6dm9pZCAwLGNtPSJmdW5jdGlvbiI9PXR5cGVvZiBjbGVhclRpbWVvdXQ/Y2xlYXJUaW1lb3V0OnZvaWQgMCxjaD0iZnVuY3Rpb24iPT10eXBlb2YgUHJvbWlzZT9Qcm9taXNlOnZvaWQgMCxjZz0iZnVuY3Rpb24iPT10eXBlb2YgcXVldWVNaWNyb3Rhc2s/cXVldWVNaWNyb3Rhc2s6dm9pZCAwIT09Y2g/ZnVuY3Rpb24oZSl7cmV0dXJuIGNoLnJlc29sdmUobnVsbCkudGhlbihlKS5jYXRjaChjdil9OmNwO2Z1bmN0aW9uIGN2KGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBlfSl9ZnVuY3Rpb24gY3koZSl7cmV0dXJuImhlYWQiPT09ZX1mdW5jdGlvbiBjYihlLHQpe3ZhciBuPXQscj0wO2Rve3ZhciBsPW4ubmV4dFNpYmxpbmc7aWYoZS5yZW1vdmVDaGlsZChuKSxsJiY4PT09bC5ub2RlVHlwZSlpZigiLyQiPT09KG49bC5kYXRhKXx8Ii8mIj09PW4pe2lmKDA9PT1yKXtlLnJlbW92ZUNoaWxkKGwpLGZHKHQpO3JldHVybn1yLS19ZWxzZSBpZigiJCI9PT1ufHwiJD8iPT09bnx8IiR+Ij09PW58fCIkISI9PT1ufHwiJiI9PT1uKXIrKztlbHNlIGlmKCJodG1sIj09PW4pY0coZS5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCk7ZWxzZSBpZigiaGVhZCI9PT1uKXtjRyhuPWUub3duZXJEb2N1bWVudC5oZWFkKTtmb3IodmFyIGE9bi5maXJzdENoaWxkO2E7KXt2YXIgbz1hLm5leHRTaWJsaW5nLGk9YS5ub2RlTmFtZTthW2VaXXx8IlNDUklQVCI9PT1pfHwiU1RZTEUiPT09aXx8IkxJTksiPT09aSYmInN0eWxlc2hlZXQiPT09YS5yZWwudG9Mb3dlckNhc2UoKXx8bi5yZW1vdmVDaGlsZChhKSxhPW99fWVsc2UiYm9keSI9PT1uJiZjRyhlLm93bmVyRG9jdW1lbnQuYm9keSk7bj1sfXdoaWxlKG4pZkcodCl9ZnVuY3Rpb24gY3coZSx0KXt2YXIgbj1lO2U9MDtkb3t2YXIgcj1uLm5leHRTaWJsaW5nO2lmKDE9PT1uLm5vZGVUeXBlP3Q/KG4uX3N0YXNoZWREaXNwbGF5PW4uc3R5bGUuZGlzcGxheSxuLnN0eWxlLmRpc3BsYXk9Im5vbmUiKToobi5zdHlsZS5kaXNwbGF5PW4uX3N0YXNoZWREaXNwbGF5fHwiIiwiIj09PW4uZ2V0QXR0cmlidXRlKCJzdHlsZSIpJiZuLnJlbW92ZUF0dHJpYnV0ZSgic3R5bGUiKSk6Mz09PW4ubm9kZVR5cGUmJih0PyhuLl9zdGFzaGVkVGV4dD1uLm5vZGVWYWx1ZSxuLm5vZGVWYWx1ZT0iIik6bi5ub2RlVmFsdWU9bi5fc3Rhc2hlZFRleHR8fCIiKSxyJiY4PT09ci5ub2RlVHlwZSlpZigiLyQiPT09KG49ci5kYXRhKSlpZigwPT09ZSlicmVhaztlbHNlIGUtLTtlbHNlIiQiIT09biYmIiQ/IiE9PW4mJiIkfiIhPT1uJiYiJCEiIT09bnx8ZSsrO249cn13aGlsZShuKX1mdW5jdGlvbiBjayhlLHQsbil7aWYodD1DU1MuZXNjYXBlKHQpIT09dD8ici0iK2J0b2EodCkucmVwbGFjZSgvPS9nLCIiKTp0LGUuc3R5bGUudmlld1RyYW5zaXRpb25OYW1lPXQsbnVsbCE9biYmKGUuc3R5bGUudmlld1RyYW5zaXRpb25DbGFzcz1uKSwiaW5saW5lIj09PShuPWdldENvbXB1dGVkU3R5bGUoZSkpLmRpc3BsYXkpe2lmKDE9PT0odD1lLmdldENsaWVudFJlY3RzKCkpLmxlbmd0aCl2YXIgcj0xO2Vsc2UgZm9yKHZhciBsPXI9MDtsPHQubGVuZ3RoO2wrKyl7dmFyIGE9dFtsXTswPGEud2lkdGgmJjA8YS5oZWlnaHQmJnIrK30xPT09ciYmKChlPWUuc3R5bGUpLmRpc3BsYXk9MT09PXQubGVuZ3RoPyJpbmxpbmUtYmxvY2siOiJibG9jayIsZS5tYXJnaW5Ub3A9Ii0iK24ucGFkZGluZ1RvcCxlLm1hcmdpbkJvdHRvbT0iLSIrbi5wYWRkaW5nQm90dG9tKX19ZnVuY3Rpb24gY1MoZSx0KXtlPWUuc3R5bGU7dmFyIG49bnVsbCE9KHQ9dC5zdHlsZSk/dC5oYXNPd25Qcm9wZXJ0eSgidmlld1RyYW5zaXRpb25OYW1lIik/dC52aWV3VHJhbnNpdGlvbk5hbWU6dC5oYXNPd25Qcm9wZXJ0eSgidmlldy10cmFuc2l0aW9uLW5hbWUiKT90WyJ2aWV3LXRyYW5zaXRpb24tbmFtZSJdOm51bGw6bnVsbDtlLnZpZXdUcmFuc2l0aW9uTmFtZT1udWxsPT1ufHwiYm9vbGVhbiI9PXR5cGVvZiBuPyIiOigiIituKS50cmltKCksbj1udWxsIT10P3QuaGFzT3duUHJvcGVydHkoInZpZXdUcmFuc2l0aW9uQ2xhc3MiKT90LnZpZXdUcmFuc2l0aW9uQ2xhc3M6dC5oYXNPd25Qcm9wZXJ0eSgidmlldy10cmFuc2l0aW9uLWNsYXNzIik/dFsidmlldy10cmFuc2l0aW9uLWNsYXNzIl06bnVsbDpudWxsLGUudmlld1RyYW5zaXRpb25DbGFzcz1udWxsPT1ufHwiYm9vbGVhbiI9PXR5cGVvZiBuPyIiOigiIituKS50cmltKCksImlubGluZS1ibG9jayI9PT1lLmRpc3BsYXkmJihudWxsPT10P2UuZGlzcGxheT1lLm1hcmdpbj0iIjoobj10LmRpc3BsYXksZS5kaXNwbGF5PW51bGw9PW58fCJib29sZWFuIj09dHlwZW9mIG4/IiI6bixudWxsIT0obj10Lm1hcmdpbik/ZS5tYXJnaW49bjoobj10Lmhhc093blByb3BlcnR5KCJtYXJnaW5Ub3AiKT90Lm1hcmdpblRvcDp0WyJtYXJnaW4tdG9wIl0sZS5tYXJnaW5Ub3A9bnVsbD09bnx8ImJvb2xlYW4iPT10eXBlb2Ygbj8iIjpuLHQ9dC5oYXNPd25Qcm9wZXJ0eSgibWFyZ2luQm90dG9tIik/dC5tYXJnaW5Cb3R0b206dFsibWFyZ2luLWJvdHRvbSJdLGUubWFyZ2luQm90dG9tPW51bGw9PXR8fCJib29sZWFuIj09dHlwZW9mIHQ/IiI6dCkpKX1mdW5jdGlvbiBjRShlLHQsbil7cmV0dXJuIG49bi5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LHtyZWN0OmUsYWJzOiJhYnNvbHV0ZSI9PT10LnBvc2l0aW9ufHwiZml4ZWQiPT09dC5wb3NpdGlvbixjbGlwOiJub25lIiE9PXQuY2xpcFBhdGh8fCJ2aXNpYmxlIiE9PXQub3ZlcmZsb3d8fCJub25lIiE9PXQuZmlsdGVyfHwibm9uZSIhPT10Lm1hc2t8fCJub25lIiE9PXQubWFza3x8IjBweCIhPT10LmJvcmRlclJhZGl1cyx2aWV3OjA8PWUuYm90dG9tJiYwPD1lLnJpZ2h0JiZlLnRvcDw9bi5pbm5lckhlaWdodCYmZS5sZWZ0PD1uLmlubmVyV2lkdGh9fWZ1bmN0aW9uIGN4KGUpe3JldHVybiBjRShlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGdldENvbXB1dGVkU3R5bGUoZSksZSl9ZnVuY3Rpb24gY18oZSl7dmFyIHQ9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtyZXR1cm4gY0UodD1uZXcgRE9NUmVjdCh0LngrMmU0LHQueSsyZTQsdC53aWR0aCx0LmhlaWdodCksZ2V0Q29tcHV0ZWRTdHlsZShlKSxlKX1mdW5jdGlvbiBjUChlKXt0aGlzLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGUpLHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGUpfWZ1bmN0aW9uIGNOKGUsdCl7dGhpcy5fc2NvcGU9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHRoaXMuX3NlbGVjdG9yPSI6OnZpZXctdHJhbnNpdGlvbi0iK2UrIigiK3QrIikifWZ1bmN0aW9uIGNDKGUpe3JldHVybntuYW1lOmUsZ3JvdXA6bmV3IGNOKCJncm91cCIsZSksaW1hZ2VQYWlyOm5ldyBjTigiaW1hZ2UtcGFpciIsZSksb2xkOm5ldyBjTigib2xkIixlKSxuZXc6bmV3IGNOKCJuZXciLGUpfX1mdW5jdGlvbiBjVChlKXt0aGlzLl9mcmFnbWVudEZpYmVyPWUsdGhpcy5fb2JzZXJ2ZXJzPXRoaXMuX2V2ZW50TGlzdGVuZXJzPW51bGx9ZnVuY3Rpb24gY08oZSx0LG4scil7cmV0dXJuIGcoZSkuYWRkRXZlbnRMaXN0ZW5lcih0LG4sciksITF9ZnVuY3Rpb24gY3ooZSx0LG4scil7cmV0dXJuIGcoZSkucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LG4sciksITF9ZnVuY3Rpb24gY0woZSl7cmV0dXJuIG51bGw9PWU/IjAiOiJib29sZWFuIj09dHlwZW9mIGU/ImM9IisoZT8iMSI6IjAiKToiYz0iKyhlLmNhcHR1cmU/IjEiOiIwIikrIiZvPSIrKGUub25jZT8iMSI6IjAiKSsiJnA9IisoZS5wYXNzaXZlPyIxIjoiMCIpfWZ1bmN0aW9uIGNSKGUsdCxuLHIpe2Zvcih2YXIgbD0wO2w8ZS5sZW5ndGg7bCsrKXt2YXIgYT1lW2xdO2lmKGEudHlwZT09PXQmJmEubGlzdGVuZXI9PT1uJiZjTChhLm9wdGlvbnNPclVzZUNhcHR1cmUpPT09Y0wocikpcmV0dXJuIGx9cmV0dXJuIC0xfWZ1bmN0aW9uIGNNKGUsdCl7dmFyIG49ZT1nKGUpLHI9dDtmdW5jdGlvbiBsKCl7YT0hMH12YXIgYT0hMTt0cnl7bi5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsbCksKG4uZm9jdXN8fEhUTUxFbGVtZW50LnByb3RvdHlwZS5mb2N1cykuY2FsbChuLHIpfWZpbmFsbHl7bi5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1cyIsbCl9cmV0dXJuIGF9ZnVuY3Rpb24gY0koZSx0KXtyZXR1cm4gdC5wdXNoKGUpLCExfWZ1bmN0aW9uIGNEKGUpe3JldHVybihlPWcoZSkpPT09ZS5vd25lckRvY3VtZW50LmFjdGl2ZUVsZW1lbnQmJihlLmJsdXIoKSwhMCl9ZnVuY3Rpb24gY0YoZSx0KXtyZXR1cm4gZT1nKGUpLHQub2JzZXJ2ZShlKSwhMX1mdW5jdGlvbiBjQShlLHQpe3JldHVybiBlPWcoZSksdC51bm9ic2VydmUoZSksITF9ZnVuY3Rpb24gY2ooZSx0KXtyZXR1cm4gZT1nKGUpLHQucHVzaC5hcHBseSh0LGUuZ2V0Q2xpZW50UmVjdHMoKSksITF9ZnVuY3Rpb24gY1UoZSx0KXt2YXIgbj10Ll9ldmVudExpc3RlbmVycztpZihudWxsIT09bilmb3IodmFyIHI9MDtyPG4ubGVuZ3RoO3IrKyl7dmFyIGw9bltyXTtlLmFkZEV2ZW50TGlzdGVuZXIobC50eXBlLGwubGlzdGVuZXIsbC5vcHRpb25zT3JVc2VDYXB0dXJlKX1udWxsIT09dC5fb2JzZXJ2ZXJzJiZ0Ll9vYnNlcnZlcnMuZm9yRWFjaChmdW5jdGlvbih0KXt0Lm9ic2VydmUoZSl9KX1mdW5jdGlvbiBjQihlKXt2YXIgdD1lLmZpcnN0Q2hpbGQ7Zm9yKHQmJjEwPT09dC5ub2RlVHlwZSYmKHQ9dC5uZXh0U2libGluZyk7dDspe3ZhciBuPXQ7c3dpdGNoKHQ9dC5uZXh0U2libGluZyxuLm5vZGVOYW1lKXtjYXNlIkhUTUwiOmNhc2UiSEVBRCI6Y2FzZSJCT0RZIjpjQihuKSxlMChuKTtjb250aW51ZTtjYXNlIlNDUklQVCI6Y2FzZSJTVFlMRSI6Y29udGludWU7Y2FzZSJMSU5LIjppZigic3R5bGVzaGVldCI9PT1uLnJlbC50b0xvd2VyQ2FzZSgpKWNvbnRpbnVlfWUucmVtb3ZlQ2hpbGQobil9fWZ1bmN0aW9uIGNWKGUsdCl7Zm9yKDs4IT09ZS5ub2RlVHlwZTspaWYoKDEhPT1lLm5vZGVUeXBlfHwiSU5QVVQiIT09ZS5ub2RlTmFtZXx8ImhpZGRlbiIhPT1lLnR5cGUpJiYhdHx8bnVsbD09PShlPWNRKGUubmV4dFNpYmxpbmcpKSlyZXR1cm4gbnVsbDtyZXR1cm4gZX1mdW5jdGlvbiBjSChlKXtyZXR1cm4iJD8iPT09ZS5kYXRhfHwiJH4iPT09ZS5kYXRhfWZ1bmN0aW9uIGMkKGUpe3JldHVybiIkISI9PT1lLmRhdGF8fCIkPyI9PT1lLmRhdGEmJiJsb2FkaW5nIiE9PWUub3duZXJEb2N1bWVudC5yZWFkeVN0YXRlfWZ1bmN0aW9uIGNRKGUpe2Zvcig7bnVsbCE9ZTtlPWUubmV4dFNpYmxpbmcpe3ZhciB0PWUubm9kZVR5cGU7aWYoMT09PXR8fDM9PT10KWJyZWFrO2lmKDg9PT10KXtpZigiJCI9PT0odD1lLmRhdGEpfHwiJCEiPT09dHx8IiQ/Ij09PXR8fCIkfiI9PT10fHwiJiI9PT10fHwiRiEiPT09dHx8IkYiPT09dClicmVhaztpZigiLyQiPT09dHx8Ii8mIj09PXQpcmV0dXJuIG51bGx9fXJldHVybiBlfWNOLnByb3RvdHlwZS5hbmltYXRlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKHQ9Im51bWJlciI9PXR5cGVvZiB0P3tkdXJhdGlvbjp0fTp4KHt9LHQpKS5wc2V1ZG9FbGVtZW50PXRoaXMuX3NlbGVjdG9yLHRoaXMuX3Njb3BlLmFuaW1hdGUoZSx0KX0sY04ucHJvdG90eXBlLmdldEFuaW1hdGlvbnM9ZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcy5fc2NvcGUsdD10aGlzLl9zZWxlY3RvcixuPWUuZ2V0QW5pbWF0aW9ucyh7c3VidHJlZTohMH0pLHI9W10sbD0wO2w8bi5sZW5ndGg7bCsrKXt2YXIgYT1uW2xdLmVmZmVjdDtudWxsIT09YSYmYS50YXJnZXQ9PT1lJiZhLnBzZXVkb0VsZW1lbnQ9PT10JiZyLnB1c2gobltsXSl9cmV0dXJuIHJ9LGNOLnByb3RvdHlwZS5nZXRDb21wdXRlZFN0eWxlPWZ1bmN0aW9uKCl7cmV0dXJuIGdldENvbXB1dGVkU3R5bGUodGhpcy5fc2NvcGUsdGhpcy5fc2VsZWN0b3IpfSxjVC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihlLHQsbil7bnVsbD09PXRoaXMuX2V2ZW50TGlzdGVuZXJzJiYodGhpcy5fZXZlbnRMaXN0ZW5lcnM9W10pO3ZhciByPXRoaXMuX2V2ZW50TGlzdGVuZXJzOy0xPT09Y1IocixlLHQsbikmJihyLnB1c2goe3R5cGU6ZSxsaXN0ZW5lcjp0LG9wdGlvbnNPclVzZUNhcHR1cmU6bn0pLG0odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjTyxlLHQsbikpLHRoaXMuX2V2ZW50TGlzdGVuZXJzPXJ9LGNULnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj10aGlzLl9ldmVudExpc3RlbmVycztudWxsIT1yJiYwPHIubGVuZ3RoJiYobSh0aGlzLl9mcmFnbWVudEZpYmVyLmNoaWxkLCExLGN6LGUsdCxuKSxlPWNSKHIsZSx0LG4pLG51bGwhPT10aGlzLl9ldmVudExpc3RlbmVycyYmdGhpcy5fZXZlbnRMaXN0ZW5lcnMuc3BsaWNlKGUsMSkpfSxjVC5wcm90b3R5cGUuZGlzcGF0Y2hFdmVudD1mdW5jdGlvbihlKXt2YXIgdD1oKHRoaXMuX2ZyYWdtZW50RmliZXIpO2lmKG51bGw9PT10KXJldHVybiEwO3Q9Zyh0KTt2YXIgbj10aGlzLl9ldmVudExpc3RlbmVycztpZihudWxsIT09biYmMDxuLmxlbmd0aHx8IWUuYnViYmxlcyl7dmFyIHI9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiIpO2lmKG4pZm9yKHZhciBsPTA7bDxuLmxlbmd0aDtsKyspe3ZhciBhPW5bbF07ci5hZGRFdmVudExpc3RlbmVyKGEudHlwZSxhLmxpc3RlbmVyLGEub3B0aW9uc09yVXNlQ2FwdHVyZSl9aWYodC5hcHBlbmRDaGlsZChyKSxlPXIuZGlzcGF0Y2hFdmVudChlKSxuKWZvcihsPTA7bDxuLmxlbmd0aDtsKyspYT1uW2xdLHIucmVtb3ZlRXZlbnRMaXN0ZW5lcihhLnR5cGUsYS5saXN0ZW5lcixhLm9wdGlvbnNPclVzZUNhcHR1cmUpO3JldHVybiB0LnJlbW92ZUNoaWxkKHIpLGV9cmV0dXJuIHQuZGlzcGF0Y2hFdmVudChlKX0sY1QucHJvdG90eXBlLmZvY3VzPWZ1bmN0aW9uKGUpe20odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMCxjTSxlLHZvaWQgMCx2b2lkIDApfSxjVC5wcm90b3R5cGUuZm9jdXNMYXN0PWZ1bmN0aW9uKGUpe3ZhciB0PVtdO20odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMCxjSSx0LHZvaWQgMCx2b2lkIDApO2Zvcih2YXIgbj10Lmxlbmd0aC0xOzA8PW4mJiFjTSh0W25dLGUpO24tLSk7fSxjVC5wcm90b3R5cGUuYmx1cj1mdW5jdGlvbigpe20odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjRCx2b2lkIDAsdm9pZCAwLHZvaWQgMCl9LGNULnByb3RvdHlwZS5vYnNlcnZlVXNpbmc9ZnVuY3Rpb24oZSl7bnVsbD09PXRoaXMuX29ic2VydmVycyYmKHRoaXMuX29ic2VydmVycz1uZXcgU2V0KSx0aGlzLl9vYnNlcnZlcnMuYWRkKGUpLG0odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjRixlLHZvaWQgMCx2b2lkIDApfSxjVC5wcm90b3R5cGUudW5vYnNlcnZlVXNpbmc9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5fb2JzZXJ2ZXJzO251bGwhPT10JiZ0LmhhcyhlKSYmKHQuZGVsZXRlKGUpLG0odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjQSxlLHZvaWQgMCx2b2lkIDApKX0sY1QucHJvdG90eXBlLmdldENsaWVudFJlY3RzPWZ1bmN0aW9uKCl7dmFyIGU9W107cmV0dXJuIG0odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjaixlLHZvaWQgMCx2b2lkIDApLGV9LGNULnByb3RvdHlwZS5nZXRSb290Tm9kZT1mdW5jdGlvbihlKXt2YXIgdD1oKHRoaXMuX2ZyYWdtZW50RmliZXIpO3JldHVybiBudWxsPT09dD90aGlzOmcodCkuZ2V0Um9vdE5vZGUoZSl9LGNULnByb3RvdHlwZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbj1mdW5jdGlvbihlKXt2YXIgdD1oKHRoaXMuX2ZyYWdtZW50RmliZXIpO2lmKG51bGw9PT10KXJldHVybiBOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0RJU0NPTk5FQ1RFRDt2YXIgbj1bXTttKHRoaXMuX2ZyYWdtZW50RmliZXIuY2hpbGQsITEsY0ksbix2b2lkIDAsdm9pZCAwKTt2YXIgcj1nKHQpO2lmKDA9PT1uLmxlbmd0aCl7bj10aGlzLl9mcmFnbWVudEZpYmVyO3ZhciBsPXIuY29tcGFyZURvY3VtZW50UG9zaXRpb24oZSk7cmV0dXJuIHQ9bCxyPT09ZT90PU5vZGUuRE9DVU1FTlRfUE9TSVRJT05fQ09OVEFJTlM6bCZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0NPTlRBSU5FRF9CWSYmKG0obi5zaWJsaW5nLCExLGIpLG49dix2PW51bGwsdD1udWxsPT09bj9Ob2RlLkRPQ1VNRU5UX1BPU0lUSU9OX1BSRUNFRElORzowPT09KGU9ZyhuKS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihlKSl8fGUmTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9GT0xMT1dJTkc/Tm9kZS5ET0NVTUVOVF9QT1NJVElPTl9GT0xMT1dJTkc6Tm9kZS5ET0NVTUVOVF9QT1NJVElPTl9QUkVDRURJTkcpLHR8Tm9kZS5ET0NVTUVOVF9QT1NJVElPTl9JTVBMRU1FTlRBVElPTl9TUEVDSUZJQ310PWcoblswXSksbD1nKG5bbi5sZW5ndGgtMV0pO2Zvcih2YXIgYT1nKG5bMF0pLG89ITEsaT10aGlzLl9mcmFnbWVudEZpYmVyLnJldHVybjtudWxsIT09aSYmKDQ9PT1pLnRhZyYmKG89ITApLDMhPT1pLnRhZyYmNSE9PWkudGFnKTspaT1pLnJldHVybjtpZihudWxsPT0oYT1vP2EucGFyZW50RWxlbWVudDpyKSlyZXR1cm4gTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9ESVNDT05ORUNURUQ7cj1hLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHQpJk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fQ09OVEFJTkVEX0JZLGE9YS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihsKSZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0NPTlRBSU5FRF9CWSxvPXQuY29tcGFyZURvY3VtZW50UG9zaXRpb24oZSk7dmFyIHU9bC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihlKTtyZXR1cm4gaT1vJk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fQ09OVEFJTkVEX0JZfHx1Jk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fQ09OVEFJTkVEX0JZLHU9ciYmYSYmbyZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0ZPTExPV0lORyYmdSZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX1BSRUNFRElORywodD1yJiZ0PT09ZXx8YSYmbD09PWV8fGl8fHU/Tm9kZS5ET0NVTUVOVF9QT1NJVElPTl9DT05UQUlORURfQlk6KHJ8fHQhPT1lKSYmKGF8fGwhPT1lKT9vOk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fSU1QTEVNRU5UQVRJT05fU1BFQ0lGSUMpJk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fRElTQ09OTkVDVEVEfHx0Jk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fSU1QTEVNRU5UQVRJT05fU1BFQ0lGSUN8fGZ1bmN0aW9uKGUsdCxuLHIsbCl7dmFyIGE9ZTEobCk7aWYoZSZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0NPTlRBSU5FRF9CWSl7aWYobj0hIWEpZTp7Zm9yKDtudWxsIT09YTspe2lmKDc9PT1hLnRhZyYmKGE9PT10fHxhLmFsdGVybmF0ZT09PXQpKXtuPSEwO2JyZWFrIGV9YT1hLnJldHVybn1uPSExfXJldHVybiBufWlmKGUmTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9DT05UQUlOUyl7aWYobnVsbD09PWEpcmV0dXJuIGE9bC5vd25lckRvY3VtZW50LGw9PT1hfHxsPT09YS5ib2R5O2U6e2ZvcihhPXQsdD1oKHQpO251bGwhPT1hOyl7aWYoKDU9PT1hLnRhZ3x8Mz09PWEudGFnKSYmKGE9PT10fHxhLmFsdGVybmF0ZT09PXQpKXthPSEwO2JyZWFrIGV9YT1hLnJldHVybn1hPSExfXJldHVybiBhfXJldHVybiBlJk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fUFJFQ0VESU5HPygodD0hIWEpJiYhKHQ9YT09PW4pJiYobnVsbD09PSh0PUUobixhLFMpKT90PSExOihtKHQsITAsdyxhLG4pLGE9dix2PW51bGwsdD1udWxsIT09YSkpLHQpOiEhKGUmTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9GT0xMT1dJTkcpJiYoKHQ9ISFhKSYmISh0PWE9PT1yKSYmKG51bGw9PT0odD1FKHIsYSxTKSk/dD0hMToobSh0LCEwLGssYSxyKSxhPXYseT12PW51bGwsdD1udWxsIT09YSkpLHQpfSh0LHRoaXMuX2ZyYWdtZW50RmliZXIsblswXSxuW24ubGVuZ3RoLTFdLGUpP3Q6Tm9kZS5ET0NVTUVOVF9QT1NJVElPTl9JTVBMRU1FTlRBVElPTl9TUEVDSUZJQ30sY1QucHJvdG90eXBlLnNjcm9sbEludG9WaWV3PWZ1bmN0aW9uKGUpe2lmKCJvYmplY3QiPT10eXBlb2YgZSl0aHJvdyBFcnJvcih1KDU2NikpO3ZhciB0PVtdO20odGhpcy5fZnJhZ21lbnRGaWJlci5jaGlsZCwhMSxjSSx0LHZvaWQgMCx2b2lkIDApO3ZhciBuPSExIT09ZTtpZigwPT09dC5sZW5ndGgpe3Q9dGhpcy5fZnJhZ21lbnRGaWJlcjt2YXIgcj1bbnVsbCxudWxsXSxsPWgodCk7bnVsbCE9PWwmJmZ1bmN0aW9uIGUodCxuLHIpe2Zvcih2YXIgbD0zPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1szXSYmYXJndW1lbnRzWzNdO251bGwhPT1yOyl7aWYocj09PW4paWYobD0hMCwhci5zaWJsaW5nKXJldHVybiEwO2Vsc2Ugcj1yLnNpYmxpbmc7aWYoNT09PXIudGFnKXtpZihsKXJldHVybiB0WzFdPXIsITA7dFswXT1yfWVsc2UgaWYoKDIyIT09ci50YWd8fG51bGw9PT1yLm1lbW9pemVkU3RhdGUpJiZlKHQsbixyLmNoaWxkLGwpKXJldHVybiEwO3I9ci5zaWJsaW5nfXJldHVybiExfShyLHQsbC5jaGlsZCksbnVsbCE9PShuPW4/clsxXXx8clswXXx8aCh0aGlzLl9mcmFnbWVudEZpYmVyKTpyWzBdfHxyWzFdKSYmZyhuKS5zY3JvbGxJbnRvVmlldyhlKX1lbHNlIGZvcihyPW4/dC5sZW5ndGgtMTowO3IhPT0obj8tMTp0Lmxlbmd0aCk7KWcodFtyXSkuc2Nyb2xsSW50b1ZpZXcoZSkscis9bj8tMToxfTt2YXIgY1c9bnVsbDtmdW5jdGlvbiBjcShlKXtlPWUubmV4dFNpYmxpbmc7Zm9yKHZhciB0PTA7ZTspe2lmKDg9PT1lLm5vZGVUeXBlKXt2YXIgbj1lLmRhdGE7aWYoIi8kIj09PW58fCIvJiI9PT1uKXtpZigwPT09dClyZXR1cm4gY1EoZS5uZXh0U2libGluZyk7dC0tfWVsc2UiJCIhPT1uJiYiJCEiIT09biYmIiQ/IiE9PW4mJiIkfiIhPT1uJiYiJiIhPT1ufHx0Kyt9ZT1lLm5leHRTaWJsaW5nfXJldHVybiBudWxsfWZ1bmN0aW9uIGNLKGUpe2U9ZS5wcmV2aW91c1NpYmxpbmc7Zm9yKHZhciB0PTA7ZTspe2lmKDg9PT1lLm5vZGVUeXBlKXt2YXIgbj1lLmRhdGE7aWYoIiQiPT09bnx8IiQhIj09PW58fCIkPyI9PT1ufHwiJH4iPT09bnx8IiYiPT09bil7aWYoMD09PXQpcmV0dXJuIGU7dC0tfWVsc2UiLyQiIT09biYmIi8mIiE9PW58fHQrK31lPWUucHJldmlvdXNTaWJsaW5nfXJldHVybiBudWxsfWZ1bmN0aW9uIGNYKGUsdCxuKXtzd2l0Y2godD1jdShuKSxlKXtjYXNlImh0bWwiOmlmKCEoZT10LmRvY3VtZW50RWxlbWVudCkpdGhyb3cgRXJyb3IodSg0NTIpKTtyZXR1cm4gZTtjYXNlImhlYWQiOmlmKCEoZT10LmhlYWQpKXRocm93IEVycm9yKHUoNDUzKSk7cmV0dXJuIGU7Y2FzZSJib2R5IjppZighKGU9dC5ib2R5KSl0aHJvdyBFcnJvcih1KDQ1NCkpO3JldHVybiBlO2RlZmF1bHQ6dGhyb3cgRXJyb3IodSg0NTEpKX19ZnVuY3Rpb24gY0coZSl7Zm9yKHZhciB0PWUuYXR0cmlidXRlczt0Lmxlbmd0aDspZS5yZW1vdmVBdHRyaWJ1dGVOb2RlKHRbMF0pO2UwKGUpfXZhciBjWT1uZXcgTWFwLGNKPW5ldyBTZXQ7ZnVuY3Rpb24gY1ooZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGUuZ2V0Um9vdE5vZGU/ZS5nZXRSb290Tm9kZSgpOjk9PT1lLm5vZGVUeXBlP2U6ZS5vd25lckRvY3VtZW50fXZhciBjMD1xLmQ7cS5kPXtmOmZ1bmN0aW9uKCl7dmFyIGU9YzAuZigpLHQ9c3QoKTtyZXR1cm4gZXx8dH0scjpmdW5jdGlvbihlKXt2YXIgdD1lMihlKTtudWxsIT09dCYmNT09PXQudGFnJiYiZm9ybSI9PT10LnR5cGU/b2ModCk6YzAucihlKX0sRDpmdW5jdGlvbihlKXtjMC5EKGUpLGMyKCJkbnMtcHJlZmV0Y2giLGUsbnVsbCl9LEM6ZnVuY3Rpb24oZSx0KXtjMC5DKGUsdCksYzIoInByZWNvbm5lY3QiLGUsdCl9LEw6ZnVuY3Rpb24oZSx0LG4pe2lmKGMwLkwoZSx0LG4pLGMxJiZlJiZ0KXt2YXIgcj0nbGlua1tyZWw9InByZWxvYWQiXVthcz0iJyt0bSh0KSsnIl0nOyJpbWFnZSI9PT10JiZuJiZuLmltYWdlU3JjU2V0PyhyKz0nW2ltYWdlc3Jjc2V0PSInK3RtKG4uaW1hZ2VTcmNTZXQpKyciXScsInN0cmluZyI9PXR5cGVvZiBuLmltYWdlU2l6ZXMmJihyKz0nW2ltYWdlc2l6ZXM9IicrdG0obi5pbWFnZVNpemVzKSsnIl0nKSk6cis9J1tocmVmPSInK3RtKGUpKyciXSc7dmFyIGw9cjtzd2l0Y2godCl7Y2FzZSJzdHlsZSI6bD1jNChlKTticmVhaztjYXNlInNjcmlwdCI6bD1jNihlKX1jWS5oYXMobCl8fChlPXgoe3JlbDoicHJlbG9hZCIsaHJlZjoiaW1hZ2UiPT09dCYmbiYmbi5pbWFnZVNyY1NldD92b2lkIDA6ZSxhczp0fSxuKSxjWS5zZXQobCxlKSxudWxsIT09YzEucXVlcnlTZWxlY3RvcihyKXx8InN0eWxlIj09PXQmJmMxLnF1ZXJ5U2VsZWN0b3IoYzgobCkpfHwic2NyaXB0Ij09PXQmJmMxLnF1ZXJ5U2VsZWN0b3IoYzkobCkpfHwoY2wodD1jMS5jcmVhdGVFbGVtZW50KCJsaW5rIiksImxpbmsiLGUpLGU4KHQpLGMxLmhlYWQuYXBwZW5kQ2hpbGQodCkpKX19LG06ZnVuY3Rpb24oZSx0KXtpZihjMC5tKGUsdCksYzEmJmUpe3ZhciBuPXQmJiJzdHJpbmciPT10eXBlb2YgdC5hcz90LmFzOiJzY3JpcHQiLHI9J2xpbmtbcmVsPSJtb2R1bGVwcmVsb2FkIl1bYXM9IicrdG0obikrJyJdW2hyZWY9IicrdG0oZSkrJyJdJyxsPXI7c3dpdGNoKG4pe2Nhc2UiYXVkaW93b3JrbGV0IjpjYXNlInBhaW50d29ya2xldCI6Y2FzZSJzZXJ2aWNld29ya2VyIjpjYXNlInNoYXJlZHdvcmtlciI6Y2FzZSJ3b3JrZXIiOmNhc2Uic2NyaXB0IjpsPWM2KGUpfWlmKCFjWS5oYXMobCkmJihlPXgoe3JlbDoibW9kdWxlcHJlbG9hZCIsaHJlZjplfSx0KSxjWS5zZXQobCxlKSxudWxsPT09YzEucXVlcnlTZWxlY3RvcihyKSkpe3N3aXRjaChuKXtjYXNlImF1ZGlvd29ya2xldCI6Y2FzZSJwYWludHdvcmtsZXQiOmNhc2Uic2VydmljZXdvcmtlciI6Y2FzZSJzaGFyZWR3b3JrZXIiOmNhc2Uid29ya2VyIjpjYXNlInNjcmlwdCI6aWYoYzEucXVlcnlTZWxlY3RvcihjOShsKSkpcmV0dXJufWNsKG49YzEuY3JlYXRlRWxlbWVudCgibGluayIpLCJsaW5rIixlKSxlOChuKSxjMS5oZWFkLmFwcGVuZENoaWxkKG4pfX19LFg6ZnVuY3Rpb24oZSx0KXtpZihjMC5YKGUsdCksYzEmJmUpe3ZhciBuPWU0KGMxKS5ob2lzdGFibGVTY3JpcHRzLHI9YzYoZSksbD1uLmdldChyKTtsfHwoKGw9YzEucXVlcnlTZWxlY3RvcihjOShyKSkpfHwoZT14KHtzcmM6ZSxhc3luYzohMH0sdCksKHQ9Y1kuZ2V0KHIpKSYmZm4oZSx0KSxlOChsPWMxLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpKSxjbChsLCJsaW5rIixlKSxjMS5oZWFkLmFwcGVuZENoaWxkKGwpKSxsPXt0eXBlOiJzY3JpcHQiLGluc3RhbmNlOmwsY291bnQ6MSxzdGF0ZTpudWxsfSxuLnNldChyLGwpKX19LFM6ZnVuY3Rpb24oZSx0LG4pe2lmKGMwLlMoZSx0LG4pLGMxJiZlKXt2YXIgcj1lNChjMSkuaG9pc3RhYmxlU3R5bGVzLGw9YzQoZSk7dD10fHwiZGVmYXVsdCI7dmFyIGE9ci5nZXQobCk7aWYoIWEpe3ZhciBvPXtsb2FkaW5nOjAscHJlbG9hZDpudWxsfTtpZihhPWMxLnF1ZXJ5U2VsZWN0b3IoYzgobCkpKW8ubG9hZGluZz01O2Vsc2V7ZT14KHtyZWw6InN0eWxlc2hlZXQiLGhyZWY6ZSwiZGF0YS1wcmVjZWRlbmNlIjp0fSxuKSwobj1jWS5nZXQobCkpJiZmdChlLG4pO3ZhciBpPWE9YzEuY3JlYXRlRWxlbWVudCgibGluayIpO2U4KGkpLGNsKGksImxpbmsiLGUpLGkuX3A9bmV3IFByb21pc2UoZnVuY3Rpb24oZSx0KXtpLm9ubG9hZD1lLGkub25lcnJvcj10fSksaS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbigpe28ubG9hZGluZ3w9MX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGZ1bmN0aW9uKCl7by5sb2FkaW5nfD0yfSksby5sb2FkaW5nfD00LGZlKGEsdCxjMSl9YT17dHlwZToic3R5bGVzaGVldCIsaW5zdGFuY2U6YSxjb3VudDoxLHN0YXRlOm99LHIuc2V0KGwsYSl9fX0sTTpmdW5jdGlvbihlLHQpe2lmKGMwLk0oZSx0KSxjMSYmZSl7dmFyIG49ZTQoYzEpLmhvaXN0YWJsZVNjcmlwdHMscj1jNihlKSxsPW4uZ2V0KHIpO2x8fCgobD1jMS5xdWVyeVNlbGVjdG9yKGM5KHIpKSl8fChlPXgoe3NyYzplLGFzeW5jOiEwLHR5cGU6Im1vZHVsZSJ9LHQpLCh0PWNZLmdldChyKSkmJmZuKGUsdCksZTgobD1jMS5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSksY2wobCwibGluayIsZSksYzEuaGVhZC5hcHBlbmRDaGlsZChsKSksbD17dHlwZToic2NyaXB0IixpbnN0YW5jZTpsLGNvdW50OjEsc3RhdGU6bnVsbH0sbi5zZXQocixsKSl9fX07dmFyIGMxPSJ1Ijx0eXBlb2YgZG9jdW1lbnQ/bnVsbDpkb2N1bWVudDtmdW5jdGlvbiBjMihlLHQsbil7aWYoYzEmJiJzdHJpbmciPT10eXBlb2YgdCYmdCl7dmFyIHI9dG0odCk7cj0nbGlua1tyZWw9IicrZSsnIl1baHJlZj0iJytyKyciXScsInN0cmluZyI9PXR5cGVvZiBuJiYocis9J1tjcm9zc29yaWdpbj0iJytuKyciXScpLGNKLmhhcyhyKXx8KGNKLmFkZChyKSxlPXtyZWw6ZSxjcm9zc09yaWdpbjpuLGhyZWY6dH0sbnVsbD09PWMxLnF1ZXJ5U2VsZWN0b3IocikmJihjbCh0PWMxLmNyZWF0ZUVsZW1lbnQoImxpbmsiKSwibGluayIsZSksZTgodCksYzEuaGVhZC5hcHBlbmRDaGlsZCh0KSkpfX1mdW5jdGlvbiBjMyhlLHQsbixyKXt2YXIgbD0obD1lbi5jdXJyZW50KT9jWihsKTpudWxsO2lmKCFsKXRocm93IEVycm9yKHUoNDQ2KSk7c3dpdGNoKGUpe2Nhc2UibWV0YSI6Y2FzZSJ0aXRsZSI6cmV0dXJuIG51bGw7Y2FzZSJzdHlsZSI6cmV0dXJuInN0cmluZyI9PXR5cGVvZiBuLnByZWNlZGVuY2UmJiJzdHJpbmciPT10eXBlb2Ygbi5ocmVmPyh0PWM0KG4uaHJlZiksKHI9KG49ZTQobCkuaG9pc3RhYmxlU3R5bGVzKS5nZXQodCkpfHwocj17dHlwZToic3R5bGUiLGluc3RhbmNlOm51bGwsY291bnQ6MCxzdGF0ZTpudWxsfSxuLnNldCh0LHIpKSxyKTp7dHlwZToidm9pZCIsaW5zdGFuY2U6bnVsbCxjb3VudDowLHN0YXRlOm51bGx9O2Nhc2UibGluayI6aWYoInN0eWxlc2hlZXQiPT09bi5yZWwmJiJzdHJpbmciPT10eXBlb2Ygbi5ocmVmJiYic3RyaW5nIj09dHlwZW9mIG4ucHJlY2VkZW5jZSl7ZT1jNChuLmhyZWYpO3ZhciBhLG8saSxzLGM9ZTQobCkuaG9pc3RhYmxlU3R5bGVzLGY9Yy5nZXQoZSk7aWYoZnx8KGw9bC5vd25lckRvY3VtZW50fHxsLGY9e3R5cGU6InN0eWxlc2hlZXQiLGluc3RhbmNlOm51bGwsY291bnQ6MCxzdGF0ZTp7bG9hZGluZzowLHByZWxvYWQ6bnVsbH19LGMuc2V0KGUsZiksKGM9bC5xdWVyeVNlbGVjdG9yKGM4KGUpKSkmJiFjLl9wJiYoZi5pbnN0YW5jZT1jLGYuc3RhdGUubG9hZGluZz01KSxjWS5oYXMoZSl8fChuPXtyZWw6InByZWxvYWQiLGFzOiJzdHlsZSIsaHJlZjpuLmhyZWYsY3Jvc3NPcmlnaW46bi5jcm9zc09yaWdpbixpbnRlZ3JpdHk6bi5pbnRlZ3JpdHksbWVkaWE6bi5tZWRpYSxocmVmTGFuZzpuLmhyZWZMYW5nLHJlZmVycmVyUG9saWN5Om4ucmVmZXJyZXJQb2xpY3l9LGNZLnNldChlLG4pLGN8fChhPWwsbz1lLGk9bixzPWYuc3RhdGUsYS5xdWVyeVNlbGVjdG9yKCdsaW5rW3JlbD0icHJlbG9hZCJdW2FzPSJzdHlsZSJdWycrbysiXSIpP3MubG9hZGluZz0xOihzLnByZWxvYWQ9bz1hLmNyZWF0ZUVsZW1lbnQoImxpbmsiKSxvLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGZ1bmN0aW9uKCl7cmV0dXJuIHMubG9hZGluZ3w9MX0pLG8uYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGZ1bmN0aW9uKCl7cmV0dXJuIHMubG9hZGluZ3w9Mn0pLGNsKG8sImxpbmsiLGkpLGU4KG8pLGEuaGVhZC5hcHBlbmRDaGlsZChvKSkpKSksdCYmbnVsbD09PXIpdGhyb3cgRXJyb3IodSg1MjgsIiIpKTtyZXR1cm4gZn1pZih0JiZudWxsIT09cil0aHJvdyBFcnJvcih1KDUyOSwiIikpO3JldHVybiBudWxsO2Nhc2Uic2NyaXB0IjpyZXR1cm4gdD1uLmFzeW5jLCJzdHJpbmciPT10eXBlb2Yobj1uLnNyYykmJnQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0JiYic3ltYm9sIiE9dHlwZW9mIHQ/KHQ9YzYobiksKHI9KG49ZTQobCkuaG9pc3RhYmxlU2NyaXB0cykuZ2V0KHQpKXx8KHI9e3R5cGU6InNjcmlwdCIsaW5zdGFuY2U6bnVsbCxjb3VudDowLHN0YXRlOm51bGx9LG4uc2V0KHQscikpLHIpOnt0eXBlOiJ2b2lkIixpbnN0YW5jZTpudWxsLGNvdW50OjAsc3RhdGU6bnVsbH07ZGVmYXVsdDp0aHJvdyBFcnJvcih1KDQ0NCxlKSl9fWZ1bmN0aW9uIGM0KGUpe3JldHVybidocmVmPSInK3RtKGUpKyciJ31mdW5jdGlvbiBjOChlKXtyZXR1cm4nbGlua1tyZWw9InN0eWxlc2hlZXQiXVsnK2UrIl0ifWZ1bmN0aW9uIGM1KGUpe3JldHVybiB4KHt9LGUseyJkYXRhLXByZWNlZGVuY2UiOmUucHJlY2VkZW5jZSxwcmVjZWRlbmNlOm51bGx9KX1mdW5jdGlvbiBjNihlKXtyZXR1cm4nW3NyYz0iJyt0bShlKSsnIl0nfWZ1bmN0aW9uIGM5KGUpe3JldHVybiJzY3JpcHRbYXN5bmNdIitlfWZ1bmN0aW9uIGM3KGUsdCxuKXtpZih0LmNvdW50KyssbnVsbD09PXQuaW5zdGFuY2Upc3dpdGNoKHQudHlwZSl7Y2FzZSJzdHlsZSI6dmFyIHI9ZS5xdWVyeVNlbGVjdG9yKCdzdHlsZVtkYXRhLWhyZWZ+PSInK3RtKG4uaHJlZikrJyJdJyk7aWYocilyZXR1cm4gdC5pbnN0YW5jZT1yLGU4KHIpLHI7dmFyIGw9eCh7fSxuLHsiZGF0YS1ocmVmIjpuLmhyZWYsImRhdGEtcHJlY2VkZW5jZSI6bi5wcmVjZWRlbmNlLGhyZWY6bnVsbCxwcmVjZWRlbmNlOm51bGx9KTtyZXR1cm4gZTgocj0oZS5vd25lckRvY3VtZW50fHxlKS5jcmVhdGVFbGVtZW50KCJzdHlsZSIpKSxjbChyLCJzdHlsZSIsbCksZmUocixuLnByZWNlZGVuY2UsZSksdC5pbnN0YW5jZT1yO2Nhc2Uic3R5bGVzaGVldCI6bD1jNChuLmhyZWYpO3ZhciBhPWUucXVlcnlTZWxlY3RvcihjOChsKSk7aWYoYSlyZXR1cm4gdC5zdGF0ZS5sb2FkaW5nfD00LHQuaW5zdGFuY2U9YSxlOChhKSxhO3I9YzUobiksKGw9Y1kuZ2V0KGwpKSYmZnQocixsKSxlOChhPShlLm93bmVyRG9jdW1lbnR8fGUpLmNyZWF0ZUVsZW1lbnQoImxpbmsiKSk7dmFyIG89YTtyZXR1cm4gby5fcD1uZXcgUHJvbWlzZShmdW5jdGlvbihlLHQpe28ub25sb2FkPWUsby5vbmVycm9yPXR9KSxjbChhLCJsaW5rIixyKSx0LnN0YXRlLmxvYWRpbmd8PTQsZmUoYSxuLnByZWNlZGVuY2UsZSksdC5pbnN0YW5jZT1hO2Nhc2Uic2NyaXB0IjppZihhPWM2KG4uc3JjKSxsPWUucXVlcnlTZWxlY3RvcihjOShhKSkpcmV0dXJuIHQuaW5zdGFuY2U9bCxlOChsKSxsO3JldHVybiByPW4sKGw9Y1kuZ2V0KGEpKSYmZm4ocj14KHt9LG4pLGwpLGU4KGw9KGU9ZS5vd25lckRvY3VtZW50fHxlKS5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSksY2wobCwibGluayIsciksZS5oZWFkLmFwcGVuZENoaWxkKGwpLHQuaW5zdGFuY2U9bDtjYXNlInZvaWQiOnJldHVybiBudWxsO2RlZmF1bHQ6dGhyb3cgRXJyb3IodSg0NDMsdC50eXBlKSl9cmV0dXJuInN0eWxlc2hlZXQiPT09dC50eXBlJiYwPT0oNCZ0LnN0YXRlLmxvYWRpbmcpJiYocj10Lmluc3RhbmNlLHQuc3RhdGUubG9hZGluZ3w9NCxmZShyLG4ucHJlY2VkZW5jZSxlKSksdC5pbnN0YW5jZX1mdW5jdGlvbiBmZShlLHQsbil7Zm9yKHZhciByPW4ucXVlcnlTZWxlY3RvckFsbCgnbGlua1tyZWw9InN0eWxlc2hlZXQiXVtkYXRhLXByZWNlZGVuY2VdLHN0eWxlW2RhdGEtcHJlY2VkZW5jZV0nKSxsPXIubGVuZ3RoP3Jbci5sZW5ndGgtMV06bnVsbCxhPWwsbz0wO288ci5sZW5ndGg7bysrKXt2YXIgaT1yW29dO2lmKGkuZGF0YXNldC5wcmVjZWRlbmNlPT09dClhPWk7ZWxzZSBpZihhIT09bClicmVha31hP2EucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSxhLm5leHRTaWJsaW5nKToodD05PT09bi5ub2RlVHlwZT9uLmhlYWQ6bikuaW5zZXJ0QmVmb3JlKGUsdC5maXJzdENoaWxkKX1mdW5jdGlvbiBmdChlLHQpe251bGw9PWUuY3Jvc3NPcmlnaW4mJihlLmNyb3NzT3JpZ2luPXQuY3Jvc3NPcmlnaW4pLG51bGw9PWUucmVmZXJyZXJQb2xpY3kmJihlLnJlZmVycmVyUG9saWN5PXQucmVmZXJyZXJQb2xpY3kpLG51bGw9PWUudGl0bGUmJihlLnRpdGxlPXQudGl0bGUpfWZ1bmN0aW9uIGZuKGUsdCl7bnVsbD09ZS5jcm9zc09yaWdpbiYmKGUuY3Jvc3NPcmlnaW49dC5jcm9zc09yaWdpbiksbnVsbD09ZS5yZWZlcnJlclBvbGljeSYmKGUucmVmZXJyZXJQb2xpY3k9dC5yZWZlcnJlclBvbGljeSksbnVsbD09ZS5pbnRlZ3JpdHkmJihlLmludGVncml0eT10LmludGVncml0eSl9dmFyIGZyPW51bGw7ZnVuY3Rpb24gZmwoZSx0LG4pe2lmKG51bGw9PT1mcil7dmFyIHI9bmV3IE1hcCxsPWZyPW5ldyBNYXA7bC5zZXQobixyKX1lbHNlKHI9KGw9ZnIpLmdldChuKSl8fChyPW5ldyBNYXAsbC5zZXQobixyKSk7aWYoci5oYXMoZSkpcmV0dXJuIHI7Zm9yKHIuc2V0KGUsbnVsbCksbj1uLmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpLGw9MDtsPG4ubGVuZ3RoO2wrKyl7dmFyIGE9bltsXTtpZighKGFbZVpdfHxhW2VXXXx8ImxpbmsiPT09ZSYmInN0eWxlc2hlZXQiPT09YS5nZXRBdHRyaWJ1dGUoInJlbCIpKSYmImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiE9PWEubmFtZXNwYWNlVVJJKXt2YXIgbz1hLmdldEF0dHJpYnV0ZSh0KXx8IiI7bz1lK287dmFyIGk9ci5nZXQobyk7aT9pLnB1c2goYSk6ci5zZXQobyxbYV0pfX1yZXR1cm4gcn1mdW5jdGlvbiBmYShlLHQsbil7KGU9ZS5vd25lckRvY3VtZW50fHxlKS5oZWFkLmluc2VydEJlZm9yZShuLCJ0aXRsZSI9PT10P2UucXVlcnlTZWxlY3RvcigiaGVhZCA+IHRpdGxlIik6bnVsbCl9ZnVuY3Rpb24gZm8oZSx0KXtyZXR1cm4iaW1nIj09PWUmJm51bGwhPXQuc3JjJiYiIiE9PXQuc3JjJiZudWxsPT10Lm9uTG9hZCYmImxhenkiIT09dC5sb2FkaW5nfWZ1bmN0aW9uIGZpKGUpe3JldHVybiJzdHlsZXNoZWV0IiE9PWUudHlwZXx8MCE9KDMmZS5zdGF0ZS5sb2FkaW5nKX1mdW5jdGlvbiBmdShlKXtyZXR1cm4oZS53aWR0aHx8MTAwKSooZS5oZWlnaHR8fDEwMCkqKCJudW1iZXIiPT10eXBlb2YgZGV2aWNlUGl4ZWxSYXRpbz9kZXZpY2VQaXhlbFJhdGlvOjEpKi4yNX1mdW5jdGlvbiBmcyhlLHQpeyJmdW5jdGlvbiI9PXR5cGVvZiB0LmRlY29kZSYmKGUuaW1nQ291bnQrKyx0LmNvbXBsZXRlfHwoZS5pbWdCeXRlcys9ZnUodCksZS5zdXNwZW5zZXlJbWFnZXMucHVzaCh0KSksZT1mcC5iaW5kKGUpLHQuZGVjb2RlKCkudGhlbihlLGUpKX12YXIgZmM9MDtmdW5jdGlvbiBmZihlKXtpZigwPT09ZS5jb3VudCYmKDA9PT1lLmltZ0NvdW50fHwhZS53YWl0aW5nRm9ySW1hZ2VzKSl7aWYoZS5zdHlsZXNoZWV0cylmaChlLGUuc3R5bGVzaGVldHMpO2Vsc2UgaWYoZS51bnN1c3BlbmQpe3ZhciB0PWUudW5zdXNwZW5kO2UudW5zdXNwZW5kPW51bGwsdCgpfX19ZnVuY3Rpb24gZmQoKXt0aGlzLmNvdW50LS0sZmYodGhpcyl9ZnVuY3Rpb24gZnAoKXt0aGlzLmltZ0NvdW50LS0sZmYodGhpcyl9dmFyIGZtPW51bGw7ZnVuY3Rpb24gZmgoZSx0KXtlLnN0eWxlc2hlZXRzPW51bGwsbnVsbCE9PWUudW5zdXNwZW5kJiYoZS5jb3VudCsrLGZtPW5ldyBNYXAsdC5mb3JFYWNoKGZnLGUpLGZtPW51bGwsZmQuY2FsbChlKSl9ZnVuY3Rpb24gZmcoZSx0KXtpZighKDQmdC5zdGF0ZS5sb2FkaW5nKSl7dmFyIG49Zm0uZ2V0KGUpO2lmKG4pdmFyIHI9bi5nZXQobnVsbCk7ZWxzZXtuPW5ldyBNYXAsZm0uc2V0KGUsbik7Zm9yKHZhciBsPWUucXVlcnlTZWxlY3RvckFsbCgibGlua1tkYXRhLXByZWNlZGVuY2VdLHN0eWxlW2RhdGEtcHJlY2VkZW5jZV0iKSxhPTA7YTxsLmxlbmd0aDthKyspe3ZhciBvPWxbYV07KCJMSU5LIj09PW8ubm9kZU5hbWV8fCJub3QgYWxsIiE9PW8uZ2V0QXR0cmlidXRlKCJtZWRpYSIpKSYmKG4uc2V0KG8uZGF0YXNldC5wcmVjZWRlbmNlLG8pLHI9byl9ciYmbi5zZXQobnVsbCxyKX1vPShsPXQuaW5zdGFuY2UpLmdldEF0dHJpYnV0ZSgiZGF0YS1wcmVjZWRlbmNlIiksKGE9bi5nZXQobyl8fHIpPT09ciYmbi5zZXQobnVsbCxsKSxuLnNldChvLGwpLHRoaXMuY291bnQrKyxyPWZkLmJpbmQodGhpcyksbC5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixyKSxsLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIixyKSxhP2EucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobCxhLm5leHRTaWJsaW5nKTooZT05PT09ZS5ub2RlVHlwZT9lLmhlYWQ6ZSkuaW5zZXJ0QmVmb3JlKGwsZS5maXJzdENoaWxkKSx0LnN0YXRlLmxvYWRpbmd8PTR9fXZhciBmdj17JCR0eXBlb2Y6TCxQcm92aWRlcjpudWxsLENvbnN1bWVyOm51bGwsX2N1cnJlbnRWYWx1ZTpLLF9jdXJyZW50VmFsdWUyOkssX3RocmVhZENvdW50OjB9O2Z1bmN0aW9uIGZ5KGUsdCxuLHIsbCxhLG8saSx1KXt0aGlzLnRhZz0xLHRoaXMuY29udGFpbmVySW5mbz1lLHRoaXMucGluZ0NhY2hlPXRoaXMuY3VycmVudD10aGlzLnBlbmRpbmdDaGlsZHJlbj1udWxsLHRoaXMudGltZW91dEhhbmRsZT0tMSx0aGlzLmNhbGxiYWNrTm9kZT10aGlzLm5leHQ9dGhpcy5wZW5kaW5nQ29udGV4dD10aGlzLmNvbnRleHQ9dGhpcy5jYW5jZWxQZW5kaW5nQ29tbWl0PW51bGwsdGhpcy5jYWxsYmFja1ByaW9yaXR5PTAsdGhpcy5leHBpcmF0aW9uVGltZXM9ZUQoLTEpLHRoaXMuZW50YW5nbGVkTGFuZXM9dGhpcy5zaGVsbFN1c3BlbmRDb3VudGVyPXRoaXMuZXJyb3JSZWNvdmVyeURpc2FibGVkTGFuZXM9dGhpcy5leHBpcmVkTGFuZXM9dGhpcy53YXJtTGFuZXM9dGhpcy5waW5nZWRMYW5lcz10aGlzLnN1c3BlbmRlZExhbmVzPXRoaXMucGVuZGluZ0xhbmVzPTAsdGhpcy5lbnRhbmdsZW1lbnRzPWVEKDApLHRoaXMuaGlkZGVuVXBkYXRlcz1lRChudWxsKSx0aGlzLmlkZW50aWZpZXJQcmVmaXg9cix0aGlzLm9uVW5jYXVnaHRFcnJvcj1sLHRoaXMub25DYXVnaHRFcnJvcj1hLHRoaXMub25SZWNvdmVyYWJsZUVycm9yPW8sdGhpcy5wb29sZWRDYWNoZT1udWxsLHRoaXMucG9vbGVkQ2FjaGVMYW5lcz0wLHRoaXMuZm9ybVN0YXRlPXUsdGhpcy50cmFuc2l0aW9uVHlwZXM9bnVsbCx0aGlzLmluY29tcGxldGVUcmFuc2l0aW9ucz1uZXcgTWFwfWZ1bmN0aW9uIGZiKGUsdCxuLHIsbCxhLG8saSx1LHMsYyxmKXtyZXR1cm4gZT1uZXcgZnkoZSx0LG4sbyx1LHMsYyxmLGkpLHQ9MSwhMD09PWEmJih0fD0yNCksYT1ydigzLG51bGwsbnVsbCx0KSxlLmN1cnJlbnQ9YSxhLnN0YXRlTm9kZT1lLHQ9bHUoKSx0LnJlZkNvdW50KyssZS5wb29sZWRDYWNoZT10LHQucmVmQ291bnQrKyxhLm1lbW9pemVkU3RhdGU9e2VsZW1lbnQ6cixpc0RlaHlkcmF0ZWQ6bixjYWNoZTp0fSxsQihhKSxlfWZ1bmN0aW9uIGZ3KGUsdCxuLHIsbCxhKXtsPWw/cmg6cmgsbnVsbD09PXIuY29udGV4dD9yLmNvbnRleHQ9bDpyLnBlbmRpbmdDb250ZXh0PWwsKHI9bEgodCkpLnBheWxvYWQ9e2VsZW1lbnQ6bn0sbnVsbCE9PShhPXZvaWQgMD09PWE/bnVsbDphKSYmKHIuY2FsbGJhY2s9YSksbnVsbCE9PShuPWwkKGUscix0KSkmJih1NihuLGUsdCksbFEobixlLHQpKX1mdW5jdGlvbiBmayhlLHQpe2lmKG51bGwhPT0oZT1lLm1lbW9pemVkU3RhdGUpJiZudWxsIT09ZS5kZWh5ZHJhdGVkKXt2YXIgbj1lLnJldHJ5TGFuZTtlLnJldHJ5TGFuZT0wIT09biYmbjx0P246dH19ZnVuY3Rpb24gZlMoZSx0KXtmayhlLHQpLChlPWUuYWx0ZXJuYXRlKSYmZmsoZSx0KX1mdW5jdGlvbiBmRShlKXtpZigxMz09PWUudGFnfHwzMT09PWUudGFnKXt2YXIgdD1yZChlLDB4NDAwMDAwMCk7bnVsbCE9PXQmJnU2KHQsZSwweDQwMDAwMDApLGZTKGUsMHg0MDAwMDAwKX19ZnVuY3Rpb24gZngoZSl7aWYoMTM9PT1lLnRhZ3x8MzE9PT1lLnRhZyl7dmFyIHQ9dTQoKSxuPXJkKGUsdD1lQih0KSk7bnVsbCE9PW4mJnU2KG4sZSx0KSxmUyhlLHQpfX12YXIgZl89ITA7ZnVuY3Rpb24gZlAoZSx0LG4scil7dmFyIGw9Vy5UO1cuVD1udWxsO3ZhciBhPXEucDt0cnl7cS5wPTIsZkMoZSx0LG4scil9ZmluYWxseXtxLnA9YSxXLlQ9bH19ZnVuY3Rpb24gZk4oZSx0LG4scil7dmFyIGw9Vy5UO1cuVD1udWxsO3ZhciBhPXEucDt0cnl7cS5wPTgsZkMoZSx0LG4scil9ZmluYWxseXtxLnA9YSxXLlQ9bH19ZnVuY3Rpb24gZkMoZSx0LG4scil7aWYoZl8pe3ZhciBsPWZUKHIpO2lmKG51bGw9PT1sKXMzKGUsdCxyLGZPLG4pLGZCKGUscik7ZWxzZSBpZihmdW5jdGlvbihlLHQsbixyLGwpe3N3aXRjaCh0KXtjYXNlImZvY3VzaW4iOnJldHVybiBmTT1mVihmTSxlLHQsbixyLGwpLCEwO2Nhc2UiZHJhZ2VudGVyIjpyZXR1cm4gZkk9ZlYoZkksZSx0LG4scixsKSwhMDtjYXNlIm1vdXNlb3ZlciI6cmV0dXJuIGZEPWZWKGZELGUsdCxuLHIsbCksITA7Y2FzZSJwb2ludGVyb3ZlciI6dmFyIGE9bC5wb2ludGVySWQ7cmV0dXJuIGZGLnNldChhLGZWKGZGLmdldChhKXx8bnVsbCxlLHQsbixyLGwpKSwhMDtjYXNlImdvdHBvaW50ZXJjYXB0dXJlIjpyZXR1cm4gYT1sLnBvaW50ZXJJZCxmQS5zZXQoYSxmVihmQS5nZXQoYSl8fG51bGwsZSx0LG4scixsKSksITB9cmV0dXJuITF9KGwsZSx0LG4scikpci5zdG9wUHJvcGFnYXRpb24oKTtlbHNlIGlmKGZCKGUsciksNCZ0JiYtMTxmVS5pbmRleE9mKGUpKXtmb3IoO251bGwhPT1sOyl7dmFyIGE9ZTIobCk7aWYobnVsbCE9PWEpc3dpdGNoKGEudGFnKXtjYXNlIDM6aWYoKGE9YS5zdGF0ZU5vZGUpLmN1cnJlbnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpe3ZhciBvPWVMKGEucGVuZGluZ0xhbmVzKTtpZigwIT09byl7dmFyIGk9YTtmb3IoaS5wZW5kaW5nTGFuZXN8PTIsaS5lbnRhbmdsZWRMYW5lc3w9MjtvOyl7dmFyIHU9MTw8MzEtZVAobyk7aS5lbnRhbmdsZW1lbnRzWzFdfD11LG8mPX51fXNGKGEpLDA9PSg2JnVTKSYmKHVIPWV2KCkrNTAwLHNBKDAsITEpKX19YnJlYWs7Y2FzZSAzMTpjYXNlIDEzOm51bGwhPT0oaT1yZChhLDIpKSYmdTYoaSxhLDIpLHN0KCksZlMoYSwyKX1pZihudWxsPT09KGE9ZlQocikpJiZzMyhlLHQscixmTyxuKSxhPT09bClicmVhaztsPWF9bnVsbCE9PWwmJnIuc3RvcFByb3BhZ2F0aW9uKCl9ZWxzZSBzMyhlLHQscixudWxsLG4pfX1mdW5jdGlvbiBmVChlKXtyZXR1cm4gZnooZT10eihlKSl9dmFyIGZPPW51bGw7ZnVuY3Rpb24gZnooZSl7aWYoZk89bnVsbCxudWxsIT09KGU9ZTEoZSkpKXt2YXIgdD1jKGUpO2lmKG51bGw9PT10KWU9bnVsbDtlbHNle3ZhciBuPXQudGFnO2lmKDEzPT09bil7aWYobnVsbCE9PShlPWYodCkpKXJldHVybiBlO2U9bnVsbH1lbHNlIGlmKDMxPT09bil7aWYobnVsbCE9PShlPWQodCkpKXJldHVybiBlO2U9bnVsbH1lbHNlIGlmKDM9PT1uKXtpZih0LnN0YXRlTm9kZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXJldHVybiAzPT09dC50YWc/dC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzpudWxsO2U9bnVsbH1lbHNlIHQhPT1lJiYoZT1udWxsKX19cmV0dXJuIGZPPWUsbnVsbH1mdW5jdGlvbiBmTChlKXtzd2l0Y2goZSl7Y2FzZSJiZWZvcmV0b2dnbGUiOmNhc2UiY2FuY2VsIjpjYXNlImNsaWNrIjpjYXNlImNsb3NlIjpjYXNlImNvbnRleHRtZW51IjpjYXNlImNvcHkiOmNhc2UiY3V0IjpjYXNlImF1eGNsaWNrIjpjYXNlImRibGNsaWNrIjpjYXNlImRyYWdlbmQiOmNhc2UiZHJhZ3N0YXJ0IjpjYXNlImRyb3AiOmNhc2UiZm9jdXNpbiI6Y2FzZSJmb2N1c291dCI6Y2FzZSJpbnB1dCI6Y2FzZSJpbnZhbGlkIjpjYXNlImtleWRvd24iOmNhc2Uia2V5cHJlc3MiOmNhc2Uia2V5dXAiOmNhc2UibW91c2Vkb3duIjpjYXNlIm1vdXNldXAiOmNhc2UicGFzdGUiOmNhc2UicGF1c2UiOmNhc2UicGxheSI6Y2FzZSJwb2ludGVyY2FuY2VsIjpjYXNlInBvaW50ZXJkb3duIjpjYXNlInBvaW50ZXJ1cCI6Y2FzZSJyYXRlY2hhbmdlIjpjYXNlInJlc2V0IjpjYXNlInNlZWtlZCI6Y2FzZSJzdWJtaXQiOmNhc2UidG9nZ2xlIjpjYXNlInRvdWNoY2FuY2VsIjpjYXNlInRvdWNoZW5kIjpjYXNlInRvdWNoc3RhcnQiOmNhc2Uidm9sdW1lY2hhbmdlIjpjYXNlImNoYW5nZSI6Y2FzZSJzZWxlY3Rpb25jaGFuZ2UiOmNhc2UidGV4dElucHV0IjpjYXNlImNvbXBvc2l0aW9uc3RhcnQiOmNhc2UiY29tcG9zaXRpb25lbmQiOmNhc2UiY29tcG9zaXRpb251cGRhdGUiOmNhc2UiYmVmb3JlYmx1ciI6Y2FzZSJhZnRlcmJsdXIiOmNhc2UiYmVmb3JlaW5wdXQiOmNhc2UiYmx1ciI6Y2FzZSJmdWxsc2NyZWVuY2hhbmdlIjpjYXNlImZvY3VzIjpjYXNlImhhc2hjaGFuZ2UiOmNhc2UicG9wc3RhdGUiOmNhc2Uic2VsZWN0IjpjYXNlInNlbGVjdHN0YXJ0IjpyZXR1cm4gMjtjYXNlImRyYWciOmNhc2UiZHJhZ2VudGVyIjpjYXNlImRyYWdleGl0IjpjYXNlImRyYWdsZWF2ZSI6Y2FzZSJkcmFnb3ZlciI6Y2FzZSJtb3VzZW1vdmUiOmNhc2UibW91c2VvdXQiOmNhc2UibW91c2VvdmVyIjpjYXNlInBvaW50ZXJtb3ZlIjpjYXNlInBvaW50ZXJvdXQiOmNhc2UicG9pbnRlcm92ZXIiOmNhc2UicmVzaXplIjpjYXNlInNjcm9sbCI6Y2FzZSJ0b3VjaG1vdmUiOmNhc2Uid2hlZWwiOmNhc2UibW91c2VlbnRlciI6Y2FzZSJtb3VzZWxlYXZlIjpjYXNlInBvaW50ZXJlbnRlciI6Y2FzZSJwb2ludGVybGVhdmUiOnJldHVybiA4O2Nhc2UibWVzc2FnZSI6c3dpdGNoKGV5KCkpe2Nhc2UgZWI6cmV0dXJuIDI7Y2FzZSBldzpyZXR1cm4gODtjYXNlIGVrOmNhc2UgZVM6cmV0dXJuIDMyO2Nhc2UgZUU6cmV0dXJuIDB4MTAwMDAwMDA7ZGVmYXVsdDpyZXR1cm4gMzJ9ZGVmYXVsdDpyZXR1cm4gMzJ9fXZhciBmUj0hMSxmTT1udWxsLGZJPW51bGwsZkQ9bnVsbCxmRj1uZXcgTWFwLGZBPW5ldyBNYXAsZmo9W10sZlU9Im1vdXNlZG93biBtb3VzZXVwIHRvdWNoY2FuY2VsIHRvdWNoZW5kIHRvdWNoc3RhcnQgYXV4Y2xpY2sgZGJsY2xpY2sgcG9pbnRlcmNhbmNlbCBwb2ludGVyZG93biBwb2ludGVydXAgZHJhZ2VuZCBkcmFnc3RhcnQgZHJvcCBjb21wb3NpdGlvbmVuZCBjb21wb3NpdGlvbnN0YXJ0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgaW5wdXQgdGV4dElucHV0IGNvcHkgY3V0IHBhc3RlIGNsaWNrIGNoYW5nZSBjb250ZXh0bWVudSByZXNldCIuc3BsaXQoIiAiKTtmdW5jdGlvbiBmQihlLHQpe3N3aXRjaChlKXtjYXNlImZvY3VzaW4iOmNhc2UiZm9jdXNvdXQiOmZNPW51bGw7YnJlYWs7Y2FzZSJkcmFnZW50ZXIiOmNhc2UiZHJhZ2xlYXZlIjpmST1udWxsO2JyZWFrO2Nhc2UibW91c2VvdmVyIjpjYXNlIm1vdXNlb3V0IjpmRD1udWxsO2JyZWFrO2Nhc2UicG9pbnRlcm92ZXIiOmNhc2UicG9pbnRlcm91dCI6ZkYuZGVsZXRlKHQucG9pbnRlcklkKTticmVhaztjYXNlImdvdHBvaW50ZXJjYXB0dXJlIjpjYXNlImxvc3Rwb2ludGVyY2FwdHVyZSI6ZkEuZGVsZXRlKHQucG9pbnRlcklkKX19ZnVuY3Rpb24gZlYoZSx0LG4scixsLGEpe3JldHVybiBudWxsPT09ZXx8ZS5uYXRpdmVFdmVudCE9PWE/KGU9e2Jsb2NrZWRPbjp0LGRvbUV2ZW50TmFtZTpuLGV2ZW50U3lzdGVtRmxhZ3M6cixuYXRpdmVFdmVudDphLHRhcmdldENvbnRhaW5lcnM6W2xdfSxudWxsIT09dCYmbnVsbCE9PSh0PWUyKHQpKSYmZkUodCkpOihlLmV2ZW50U3lzdGVtRmxhZ3N8PXIsdD1lLnRhcmdldENvbnRhaW5lcnMsbnVsbCE9PWwmJi0xPT09dC5pbmRleE9mKGwpJiZ0LnB1c2gobCkpLGV9ZnVuY3Rpb24gZkgoZSl7dmFyIHQ9ZTEoZS50YXJnZXQpO2lmKG51bGwhPT10KXt2YXIgbj1jKHQpO2lmKG51bGwhPT1uKXtpZigxMz09PSh0PW4udGFnKSl7aWYobnVsbCE9PSh0PWYobikpKXtlLmJsb2NrZWRPbj10LGUkKGUucHJpb3JpdHksZnVuY3Rpb24oKXtmeChuKX0pO3JldHVybn19ZWxzZSBpZigzMT09PXQpe2lmKG51bGwhPT0odD1kKG4pKSl7ZS5ibG9ja2VkT249dCxlJChlLnByaW9yaXR5LGZ1bmN0aW9uKCl7Zngobil9KTtyZXR1cm59fWVsc2UgaWYoMz09PXQmJm4uc3RhdGVOb2RlLmN1cnJlbnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpe2UuYmxvY2tlZE9uPTM9PT1uLnRhZz9uLnN0YXRlTm9kZS5jb250YWluZXJJbmZvOm51bGw7cmV0dXJufX19ZS5ibG9ja2VkT249bnVsbH1mdW5jdGlvbiBmJChlKXtpZihudWxsIT09ZS5ibG9ja2VkT24pcmV0dXJuITE7Zm9yKHZhciB0PWUudGFyZ2V0Q29udGFpbmVyczswPHQubGVuZ3RoOyl7dmFyIG49ZlQoZS5uYXRpdmVFdmVudCk7aWYobnVsbCE9PW4pcmV0dXJuIG51bGwhPT0odD1lMihuKSkmJmZFKHQpLGUuYmxvY2tlZE9uPW4sITE7dmFyIHI9bmV3KG49ZS5uYXRpdmVFdmVudCkuY29uc3RydWN0b3Iobi50eXBlLG4pO3RPPXIsbi50YXJnZXQuZGlzcGF0Y2hFdmVudChyKSx0Tz1udWxsLHQuc2hpZnQoKX1yZXR1cm4hMH1mdW5jdGlvbiBmUShlLHQsbil7ZiQoZSkmJm4uZGVsZXRlKHQpfWZ1bmN0aW9uIGZXKCl7ZlI9ITEsbnVsbCE9PWZNJiZmJChmTSkmJihmTT1udWxsKSxudWxsIT09ZkkmJmYkKGZJKSYmKGZJPW51bGwpLG51bGwhPT1mRCYmZiQoZkQpJiYoZkQ9bnVsbCksZkYuZm9yRWFjaChmUSksZkEuZm9yRWFjaChmUSl9ZnVuY3Rpb24gZnEoZSx0KXtlLmJsb2NrZWRPbj09PXQmJihlLmJsb2NrZWRPbj1udWxsLGZSfHwoZlI9ITAsYS51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrKGEudW5zdGFibGVfTm9ybWFsUHJpb3JpdHksZlcpKSl9dmFyIGZLPW51bGw7ZnVuY3Rpb24gZlgoZSl7ZkshPT1lJiYoZks9ZSxhLnVuc3RhYmxlX3NjaGVkdWxlQ2FsbGJhY2soYS51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eSxmdW5jdGlvbigpe2ZLPT09ZSYmKGZLPW51bGwpO2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCs9Myl7dmFyIG49ZVt0XSxyPWVbdCsxXSxsPWVbdCsyXTtpZigiZnVuY3Rpb24iIT10eXBlb2YgcilpZihudWxsPT09Znoocnx8bikpY29udGludWU7ZWxzZSBicmVhazt2YXIgYT1lMihuKTtudWxsIT09YSYmKGUuc3BsaWNlKHQsMyksdC09MyxvdShhLHtwZW5kaW5nOiEwLGRhdGE6bCxtZXRob2Q6bi5tZXRob2QsYWN0aW9uOnJ9LHIsbCkpfX0pKX1mdW5jdGlvbiBmRyhlKXtmdW5jdGlvbiB0KHQpe3JldHVybiBmcSh0LGUpfW51bGwhPT1mTSYmZnEoZk0sZSksbnVsbCE9PWZJJiZmcShmSSxlKSxudWxsIT09ZkQmJmZxKGZELGUpLGZGLmZvckVhY2godCksZkEuZm9yRWFjaCh0KTtmb3IodmFyIG49MDtuPGZqLmxlbmd0aDtuKyspe3ZhciByPWZqW25dO3IuYmxvY2tlZE9uPT09ZSYmKHIuYmxvY2tlZE9uPW51bGwpfWZvcig7MDxmai5sZW5ndGgmJm51bGw9PT0obj1malswXSkuYmxvY2tlZE9uOylmSChuKSxudWxsPT09bi5ibG9ja2VkT24mJmZqLnNoaWZ0KCk7aWYobnVsbCE9KG49KGUub3duZXJEb2N1bWVudHx8ZSkuJCRyZWFjdEZvcm1SZXBsYXkpKWZvcihyPTA7cjxuLmxlbmd0aDtyKz0zKXt2YXIgbD1uW3JdLGE9bltyKzFdLG89bFtlcV18fG51bGw7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGEpb3x8Zlgobik7ZWxzZSBpZihvKXt2YXIgaT1udWxsO2lmKGEmJmEuaGFzQXR0cmlidXRlKCJmb3JtQWN0aW9uIikpe2lmKGw9YSxvPWFbZXFdfHxudWxsKWk9by5mb3JtQWN0aW9uO2Vsc2UgaWYobnVsbCE9PWZ6KGwpKWNvbnRpbnVlfWVsc2UgaT1vLmFjdGlvbjsiZnVuY3Rpb24iPT10eXBlb2YgaT9uW3IrMV09aToobi5zcGxpY2UociwzKSxyLT0zKSxmWChuKX19fWZ1bmN0aW9uIGZZKCl7ZnVuY3Rpb24gZShlKXtlLmNhbkludGVyY2VwdCYmInJlYWN0LXRyYW5zaXRpb24iPT09ZS5pbmZvJiZlLmludGVyY2VwdCh7aGFuZGxlcjpmdW5jdGlvbigpe3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihlKXtyZXR1cm4gbD1lfSl9LGZvY3VzUmVzZXQ6Im1hbnVhbCIsc2Nyb2xsOiJtYW51YWwifSl9ZnVuY3Rpb24gdCgpe251bGwhPT1sJiYobCgpLGw9bnVsbCkscnx8c2V0VGltZW91dChuLDIwKX1mdW5jdGlvbiBuKCl7aWYoIXImJiFuYXZpZ2F0aW9uLnRyYW5zaXRpb24pe3ZhciBlPW5hdmlnYXRpb24uY3VycmVudEVudHJ5O2UmJm51bGwhPWUudXJsJiZuYXZpZ2F0aW9uLm5hdmlnYXRlKGUudXJsLHtzdGF0ZTplLmdldFN0YXRlKCksaW5mbzoicmVhY3QtdHJhbnNpdGlvbiIsaGlzdG9yeToicmVwbGFjZSJ9KX19aWYoIm9iamVjdCI9PXR5cGVvZiBuYXZpZ2F0aW9uKXt2YXIgcj0hMSxsPW51bGw7cmV0dXJuIG5hdmlnYXRpb24uYWRkRXZlbnRMaXN0ZW5lcigibmF2aWdhdGUiLGUpLG5hdmlnYXRpb24uYWRkRXZlbnRMaXN0ZW5lcigibmF2aWdhdGVzdWNjZXNzIix0KSxuYXZpZ2F0aW9uLmFkZEV2ZW50TGlzdGVuZXIoIm5hdmlnYXRlZXJyb3IiLHQpLHNldFRpbWVvdXQobiwxMDApLGZ1bmN0aW9uKCl7cj0hMCxuYXZpZ2F0aW9uLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm5hdmlnYXRlIixlKSxuYXZpZ2F0aW9uLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm5hdmlnYXRlc3VjY2VzcyIsdCksbmF2aWdhdGlvbi5yZW1vdmVFdmVudExpc3RlbmVyKCJuYXZpZ2F0ZWVycm9yIix0KSxudWxsIT09bCYmKGwoKSxsPW51bGwpfX19ZnVuY3Rpb24gZkooZSl7dGhpcy5faW50ZXJuYWxSb290PWV9ZnVuY3Rpb24gZlooZSl7dGhpcy5faW50ZXJuYWxSb290PWV9ZloucHJvdG90eXBlLnJlbmRlcj1mSi5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuX2ludGVybmFsUm9vdDtpZihudWxsPT09dCl0aHJvdyBFcnJvcih1KDQwOSkpO2Z3KHQuY3VycmVudCx1NCgpLGUsdCxudWxsLG51bGwpfSxmWi5wcm90b3R5cGUudW5tb3VudD1mSi5wcm90b3R5cGUudW5tb3VudD1mdW5jdGlvbigpe3ZhciBlPXRoaXMuX2ludGVybmFsUm9vdDtpZihudWxsIT09ZSl7dGhpcy5faW50ZXJuYWxSb290PW51bGw7dmFyIHQ9ZS5jb250YWluZXJJbmZvO2Z3KGUuY3VycmVudCwyLG51bGwsZSxudWxsLG51bGwpLHN0KCksdFtlS109bnVsbH19LGZaLnByb3RvdHlwZS51bnN0YWJsZV9zY2hlZHVsZUh5ZHJhdGlvbj1mdW5jdGlvbihlKXtpZihlKXt2YXIgdD1lSCgpO2U9e2Jsb2NrZWRPbjpudWxsLHRhcmdldDplLHByaW9yaXR5OnR9O2Zvcih2YXIgbj0wO248ZmoubGVuZ3RoJiYwIT09dCYmdDxmaltuXS5wcmlvcml0eTtuKyspO2ZqLnNwbGljZShuLDAsZSksMD09PW4mJmZIKGUpfX07dmFyIGYwPW8udmVyc2lvbjtpZigiMTkuMy4wLWNhbmFyeS1mOTNiOWZkNC0yMDI1MTIxNyIhPT1mMCl0aHJvdyBFcnJvcih1KDUyNyxmMCwiMTkuMy4wLWNhbmFyeS1mOTNiOWZkNC0yMDI1MTIxNyIpKTtpZihxLmZpbmRET01Ob2RlPWZ1bmN0aW9uKGUpe3ZhciB0PWUuX3JlYWN0SW50ZXJuYWxzO2lmKHZvaWQgMD09PXQpe2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBlLnJlbmRlcil0aHJvdyBFcnJvcih1KDE4OCkpO3Rocm93IEVycm9yKHUoMjY4LGU9T2JqZWN0LmtleXMoZSkuam9pbigiLCIpKSl9cmV0dXJuIG51bGw9PT0oZT1udWxsIT09KGU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5hbHRlcm5hdGU7aWYoIXQpe2lmKG51bGw9PT0odD1jKGUpKSl0aHJvdyBFcnJvcih1KDE4OCkpO3JldHVybiB0IT09ZT9udWxsOmV9Zm9yKHZhciBuPWUscj10Ozspe3ZhciBsPW4ucmV0dXJuO2lmKG51bGw9PT1sKWJyZWFrO3ZhciBhPWwuYWx0ZXJuYXRlO2lmKG51bGw9PT1hKXtpZihudWxsIT09KHI9bC5yZXR1cm4pKXtuPXI7Y29udGludWV9YnJlYWt9aWYobC5jaGlsZD09PWEuY2hpbGQpe2ZvcihhPWwuY2hpbGQ7YTspe2lmKGE9PT1uKXJldHVybiBwKGwpLGU7aWYoYT09PXIpcmV0dXJuIHAobCksdDthPWEuc2libGluZ310aHJvdyBFcnJvcih1KDE4OCkpfWlmKG4ucmV0dXJuIT09ci5yZXR1cm4pbj1sLHI9YTtlbHNle2Zvcih2YXIgbz0hMSxpPWwuY2hpbGQ7aTspe2lmKGk9PT1uKXtvPSEwLG49bCxyPWE7YnJlYWt9aWYoaT09PXIpe289ITAscj1sLG49YTticmVha31pPWkuc2libGluZ31pZighbyl7Zm9yKGk9YS5jaGlsZDtpOyl7aWYoaT09PW4pe289ITAsbj1hLHI9bDticmVha31pZihpPT09cil7bz0hMCxyPWEsbj1sO2JyZWFrfWk9aS5zaWJsaW5nfWlmKCFvKXRocm93IEVycm9yKHUoMTg5KSl9fWlmKG4uYWx0ZXJuYXRlIT09cil0aHJvdyBFcnJvcih1KDE5MCkpfWlmKDMhPT1uLnRhZyl0aHJvdyBFcnJvcih1KDE4OCkpO3JldHVybiBuLnN0YXRlTm9kZS5jdXJyZW50PT09bj9lOnR9KHQpKT9mdW5jdGlvbiBlKHQpe3ZhciBuPXQudGFnO2lmKDU9PT1ufHwyNj09PW58fDI3PT09bnx8Nj09PW4pcmV0dXJuIHQ7Zm9yKHQ9dC5jaGlsZDtudWxsIT09dDspe2lmKG51bGwhPT0obj1lKHQpKSlyZXR1cm4gbjt0PXQuc2libGluZ31yZXR1cm4gbnVsbH0oZSk6bnVsbCk/bnVsbDplLnN0YXRlTm9kZX0sInUiPnR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18pe3ZhciBmMT1fX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX187aWYoIWYxLmlzRGlzYWJsZWQmJmYxLnN1cHBvcnRzRmliZXIpdHJ5e2V4PWYxLmluamVjdCh7YnVuZGxlVHlwZTowLHZlcnNpb246IjE5LjMuMC1jYW5hcnktZjkzYjlmZDQtMjAyNTEyMTciLHJlbmRlcmVyUGFja2FnZU5hbWU6InJlYWN0LWRvbSIsY3VycmVudERpc3BhdGNoZXJSZWY6VyxyZWNvbmNpbGVyVmVyc2lvbjoiMTkuMy4wLWNhbmFyeS1mOTNiOWZkNC0yMDI1MTIxNyJ9KSxlXz1mMX1jYXRjaChlKXt9fW4uY3JlYXRlUm9vdD1mdW5jdGlvbihlLHQpe2lmKCFzKGUpKXRocm93IEVycm9yKHUoMjk5KSk7dmFyIG49ITEscj0iIixsPW96LGE9b0wsbz1vUjtyZXR1cm4gbnVsbCE9dCYmKCEwPT09dC51bnN0YWJsZV9zdHJpY3RNb2RlJiYobj0hMCksdm9pZCAwIT09dC5pZGVudGlmaWVyUHJlZml4JiYocj10LmlkZW50aWZpZXJQcmVmaXgpLHZvaWQgMCE9PXQub25VbmNhdWdodEVycm9yJiYobD10Lm9uVW5jYXVnaHRFcnJvciksdm9pZCAwIT09dC5vbkNhdWdodEVycm9yJiYoYT10Lm9uQ2F1Z2h0RXJyb3IpLHZvaWQgMCE9PXQub25SZWNvdmVyYWJsZUVycm9yJiYobz10Lm9uUmVjb3ZlcmFibGVFcnJvcikpLHQ9ZmIoZSwxLCExLG51bGwsbnVsbCxuLHIsbnVsbCxsLGEsbyxmWSksZVtlS109dC5jdXJyZW50LHMxKGUpLG5ldyBmSih0KX0sbi5oeWRyYXRlUm9vdD1mdW5jdGlvbihlLHQsbil7aWYoIXMoZSkpdGhyb3cgRXJyb3IodSgyOTkpKTt2YXIgcixsPSExLGE9IiIsbz1veixpPW9MLGM9b1IsZj1udWxsO3JldHVybiBudWxsIT1uJiYoITA9PT1uLnVuc3RhYmxlX3N0cmljdE1vZGUmJihsPSEwKSx2b2lkIDAhPT1uLmlkZW50aWZpZXJQcmVmaXgmJihhPW4uaWRlbnRpZmllclByZWZpeCksdm9pZCAwIT09bi5vblVuY2F1Z2h0RXJyb3ImJihvPW4ub25VbmNhdWdodEVycm9yKSx2b2lkIDAhPT1uLm9uQ2F1Z2h0RXJyb3ImJihpPW4ub25DYXVnaHRFcnJvciksdm9pZCAwIT09bi5vblJlY292ZXJhYmxlRXJyb3ImJihjPW4ub25SZWNvdmVyYWJsZUVycm9yKSx2b2lkIDAhPT1uLmZvcm1TdGF0ZSYmKGY9bi5mb3JtU3RhdGUpKSwodD1mYihlLDEsITAsdCxudWxsIT1uP246bnVsbCxsLGEsZixvLGksYyxmWSkpLmNvbnRleHQ9KHI9bnVsbCxyaCksbj10LmN1cnJlbnQsKGE9bEgobD1lQihsPXU0KCkpKSkuY2FsbGJhY2s9bnVsbCxsJChuLGEsbCksbj1sLHQuY3VycmVudC5sYW5lcz1uLGVGKHQsbiksc0YodCksZVtlS109dC5jdXJyZW50LHMxKGUpLG5ldyBmWih0KX0sbi52ZXJzaW9uPSIxOS4zLjAtY2FuYXJ5LWY5M2I5ZmQ0LTIwMjUxMjE3In0sODI5NDAsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjshZnVuY3Rpb24gZSgpe2lmKCJ1Ij50eXBlb2YgX19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fJiYiZnVuY3Rpb24iPT10eXBlb2YgX19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fLmNoZWNrRENFKXRyeXtfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uY2hlY2tEQ0UoZSl9Y2F0Y2goZSl7Y29uc29sZS5lcnJvcihlKX19KCksdC5leHBvcnRzPWUucig4MjQyNCl9LDgyOTM5LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByPXtvbkNhdWdodEVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGR9LG9uVW5jYXVnaHRFcnJvcjpmdW5jdGlvbigpe3JldHVybiBwfX07Zm9yKHZhciBsIGluIHIpT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sbCx7ZW51bWVyYWJsZTohMCxnZXQ6cltsXX0pO2xldCBhPWUucig4MTI1OCksbz1lLnIoNDk4NDMpLGk9ZS5yKDg0MDgyKSx1PWUucigxNzc0OCkscz1lLnIoNzQ4NDcpLGM9YS5fKGUucigxNjE1MykpLGY9e2RlY29yYXRlRGV2RXJyb3I6ZT0+ZSxoYW5kbGVDbGllbnRFcnJvcjooKT0+e30sb3JpZ2luQ29uc29sZUVycm9yOmNvbnNvbGUuZXJyb3IuYmluZChjb25zb2xlKX07ZnVuY3Rpb24gZChlLHQpe2xldCBuLHI9dC5lcnJvckJvdW5kYXJ5Py5jb25zdHJ1Y3RvcjtpZihuPW58fHI9PT1zLkVycm9yQm91bmRhcnlIYW5kbGVyJiZ0LmVycm9yQm91bmRhcnkucHJvcHMuZXJyb3JDb21wb25lbnQ9PT1jLmRlZmF1bHQpcmV0dXJuIHAoZSk7KDAsaS5pc0JhaWxvdXRUb0NTUkVycm9yKShlKXx8KDAsby5pc05leHRSb3V0ZXJFcnJvcikoZSl8fGYub3JpZ2luQ29uc29sZUVycm9yKGUpfWZ1bmN0aW9uIHAoZSl7KDAsaS5pc0JhaWxvdXRUb0NTUkVycm9yKShlKXx8KDAsby5pc05leHRSb3V0ZXJFcnJvcikoZSl8fCgwLHUucmVwb3J0R2xvYmFsRXJyb3IpKGUpfSgiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDY0NTQ3LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJBcHBSb3V0ZXJBbm5vdW5jZXIiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBvfX0pO2xldCByPWUucig3NTIwMSksbD1lLnIoMjkwODApLGE9Im5leHQtcm91dGUtYW5ub3VuY2VyIjtmdW5jdGlvbiBvKHt0cmVlOmV9KXtsZXRbdCxuXT0oMCxyLnVzZVN0YXRlKShudWxsKTsoMCxyLnVzZUVmZmVjdCkoKCk9PihuKGZ1bmN0aW9uKCl7bGV0IGU9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoYSlbMF07aWYoZT8uc2hhZG93Um9vdD8uY2hpbGROb2Rlc1swXSlyZXR1cm4gZS5zaGFkb3dSb290LmNoaWxkTm9kZXNbMF07e2xldCBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoYSk7ZS5zdHlsZS5jc3NUZXh0PSJwb3NpdGlvbjphYnNvbHV0ZSI7bGV0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIHQuYXJpYUxpdmU9ImFzc2VydGl2ZSIsdC5pZD0iX19uZXh0LXJvdXRlLWFubm91bmNlcl9fIix0LnJvbGU9ImFsZXJ0Iix0LnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOmFic29sdXRlO2JvcmRlcjowO2hlaWdodDoxcHg7bWFyZ2luOi0xcHg7cGFkZGluZzowO3dpZHRoOjFweDtjbGlwOnJlY3QoMCAwIDAgMCk7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt3b3JkLXdyYXA6bm9ybWFsIixlLmF0dGFjaFNoYWRvdyh7bW9kZToib3BlbiJ9KS5hcHBlbmRDaGlsZCh0KSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpLHR9fSgpKSwoKT0+e2xldCBlPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKGEpWzBdO2U/LmlzQ29ubmVjdGVkJiZkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGUpfSksW10pO2xldFtvLGldPSgwLHIudXNlU3RhdGUpKCIiKSx1PSgwLHIudXNlUmVmKSh2b2lkIDApO3JldHVybigwLHIudXNlRWZmZWN0KSgoKT0+e2xldCBlPSIiO2lmKGRvY3VtZW50LnRpdGxlKWU9ZG9jdW1lbnQudGl0bGU7ZWxzZXtsZXQgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJoMSIpO3QmJihlPXQuaW5uZXJUZXh0fHx0LnRleHRDb250ZW50fHwiIil9dm9pZCAwIT09dS5jdXJyZW50JiZ1LmN1cnJlbnQhPT1lJiZpKGUpLHUuY3VycmVudD1lfSxbZV0pLHQ/KDAsbC5jcmVhdGVQb3J0YWwpKG8sdCk6bnVsbH0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw3OTIxMywoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiZmluZEhlYWRJbkNhY2hlIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gYX19KTtsZXQgcj1lLnIoMjc0NTQpLGw9ZS5yKDU3Nzc4KTtmdW5jdGlvbiBhKGUsdCl7cmV0dXJuIGZ1bmN0aW9uIGUodCxuLGEsbyl7aWYoMD09PU9iamVjdC5rZXlzKG4pLmxlbmd0aClyZXR1cm5bdCxhLG9dO2xldCBpPU9iamVjdC5rZXlzKG4pLmZpbHRlcihlPT4iY2hpbGRyZW4iIT09ZSk7Zm9yKGxldCBvIG9mKCJjaGlsZHJlbiJpbiBuJiZpLnVuc2hpZnQoImNoaWxkcmVuIiksaSkpe2xldFtpLHVdPW5bb107aWYoaT09PXIuREVGQVVMVF9TRUdNRU5UX0tFWSljb250aW51ZTtsZXQgcz10LnBhcmFsbGVsUm91dGVzLmdldChvKTtpZighcyljb250aW51ZTtsZXQgYz0oMCxsLmNyZWF0ZVJvdXRlckNhY2hlS2V5KShpKSxmPSgwLGwuY3JlYXRlUm91dGVyQ2FjaGVLZXkpKGksITApLGQ9cy5nZXQoYyk7aWYoIWQpY29udGludWU7bGV0IHA9ZShkLHUsYSsiLyIrYyxhKyIvIitmKTtpZihwKXJldHVybiBwfXJldHVybiBudWxsfShlLHQsIiIsIiIpfSgiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDI2NzA2LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByPXtHcmFjZWZ1bERlZ3JhZGVCb3VuZGFyeTpmdW5jdGlvbigpe3JldHVybiBpfSxkZWZhdWx0OmZ1bmN0aW9uKCl7cmV0dXJuIHV9fTtmb3IodmFyIGwgaW4gcilPYmplY3QuZGVmaW5lUHJvcGVydHkobixsLHtlbnVtZXJhYmxlOiEwLGdldDpyW2xdfSk7bGV0IGE9ZS5yKDk4MTM0KSxvPWUucig3NTIwMSk7Y2xhc3MgaSBleHRlbmRzIG8uQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpLHRoaXMuc3RhdGU9e2hhc0Vycm9yOiExfSx0aGlzLnJvb3RIdG1sPSIiLHRoaXMuaHRtbEF0dHJpYnV0ZXM9e30sdGhpcy5odG1sUmVmPSgwLG8uY3JlYXRlUmVmKSgpfXN0YXRpYyBnZXREZXJpdmVkU3RhdGVGcm9tRXJyb3IoZSl7cmV0dXJue2hhc0Vycm9yOiEwfX1jb21wb25lbnREaWRNb3VudCgpe2xldCBlPXRoaXMuaHRtbFJlZi5jdXJyZW50O3RoaXMuc3RhdGUuaGFzRXJyb3ImJmUmJk9iamVjdC5lbnRyaWVzKHRoaXMuaHRtbEF0dHJpYnV0ZXMpLmZvckVhY2goKFt0LG5dKT0+e2Uuc2V0QXR0cmlidXRlKHQsbil9KX1yZW5kZXIoKXtsZXR7aGFzRXJyb3I6ZX09dGhpcy5zdGF0ZTtyZXR1cm4oInUiPnR5cGVvZiB3aW5kb3cmJiF0aGlzLnJvb3RIdG1sJiYodGhpcy5yb290SHRtbD1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuaW5uZXJIVE1MLHRoaXMuaHRtbEF0dHJpYnV0ZXM9ZnVuY3Rpb24oZSl7bGV0IHQ9e307Zm9yKGxldCBuPTA7bjxlLmF0dHJpYnV0ZXMubGVuZ3RoO24rKyl7bGV0IHI9ZS5hdHRyaWJ1dGVzW25dO3Rbci5uYW1lXT1yLnZhbHVlfXJldHVybiB0fShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpKSxlKT8oMCxhLmpzeCkoImh0bWwiLHtyZWY6dGhpcy5odG1sUmVmLHN1cHByZXNzSHlkcmF0aW9uV2FybmluZzohMCxkYW5nZXJvdXNseVNldElubmVySFRNTDp7X19odG1sOnRoaXMucm9vdEh0bWx9fSk6dGhpcy5wcm9wcy5jaGlsZHJlbn19bGV0IHU9aTsoImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwzMzcwMiwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHN9fSk7bGV0IHI9ZS5yKDgxMjU4KSxsPWUucig5ODEzNCk7ZS5yKDc1MjAxKTtsZXQgYT1yLl8oZS5yKDI2NzA2KSksbz1lLnIoNzQ4NDcpLGk9ZS5yKDM0NjUpLHU9InUiPnR5cGVvZiB3aW5kb3cmJigwLGkuaXNCb3QpKHdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50KTtmdW5jdGlvbiBzKHtjaGlsZHJlbjplLGVycm9yQ29tcG9uZW50OnQsZXJyb3JTdHlsZXM6bixlcnJvclNjcmlwdHM6cn0pe3JldHVybiB1PygwLGwuanN4KShhLmRlZmF1bHQse2NoaWxkcmVuOmV9KTooMCxsLmpzeCkoby5FcnJvckJvdW5kYXJ5LHtlcnJvckNvbXBvbmVudDp0LGVycm9yU3R5bGVzOm4sZXJyb3JTY3JpcHRzOnIsY2hpbGRyZW46ZX0pfSgiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDYxMTU2LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gUn19KTtsZXQgcj1lLnIoODEyNTgpLGw9ZS5yKDQ0MDY2KSxhPWUucig5ODEzNCksbz1sLl8oZS5yKDc1MjAxKSksaT1lLnIoMTY4NzIpLHU9ZS5yKDU5NDMwKSxzPWUucig4NTU5NCksYz1lLnIoMzE4OTkpLGY9ZS5yKDk0ODc5KSxkPWUucig2NDU0NykscD1lLnIoNTcyNDcpLG09ZS5yKDc5MjEzKSxoPWUucig1MDA5NiksZz1lLnIoMjQwNDIpLHY9ZS5yKDM4OTMzKSx5PWUucigxODE2NyksYj1lLnIoODMzOTgpLHc9ZS5yKDg0Mzk1KSxrPWUucig0MTcyMSksUz1lLnIoOTA4NjIpLEU9ZS5yKDk4MjgzKSx4PXIuXyhlLnIoMzM3MDIpKSxfPXIuXyhlLnIoMTYxNTMpKSxQPWUucigzNjM0NSksTj1lLnIoODg3NzQpLEM9e307ZnVuY3Rpb24gVCh7YXBwUm91dGVyU3RhdGU6ZX0pe3JldHVybigwLG8udXNlSW5zZXJ0aW9uRWZmZWN0KSgoKT0+e2xldHt0cmVlOnQscHVzaFJlZjpuLGNhbm9uaWNhbFVybDpyLHJlbmRlcmVkU2VhcmNoOmx9PWUsYT17Li4ubi5wcmVzZXJ2ZUN1c3RvbUhpc3RvcnlTdGF0ZT93aW5kb3cuaGlzdG9yeS5zdGF0ZTp7fSxfX05BOiEwLF9fUFJJVkFURV9ORVhUSlNfSU5URVJOQUxTX1RSRUU6e3RyZWU6dCxyZW5kZXJlZFNlYXJjaDpsfX07bi5wZW5kaW5nUHVzaCYmKDAscy5jcmVhdGVIcmVmRnJvbVVybCkobmV3IFVSTCh3aW5kb3cubG9jYXRpb24uaHJlZikpIT09cj8obi5wZW5kaW5nUHVzaD0hMSx3aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGUoYSwiIixyKSk6d2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlKGEsIiIscil9LFtlXSksKDAsby51c2VFZmZlY3QpKCgpPT57KDAsRS5waW5nVmlzaWJsZUxpbmtzKShlLm5leHRVcmwsZS50cmVlKX0sW2UubmV4dFVybCxlLnRyZWVdKSxudWxsfWZ1bmN0aW9uIE8oZSl7bnVsbD09ZSYmKGU9e30pO2xldCB0PXdpbmRvdy5oaXN0b3J5LnN0YXRlLG49dD8uX19OQTtuJiYoZS5fX05BPW4pO2xldCByPXQ/Ll9fUFJJVkFURV9ORVhUSlNfSU5URVJOQUxTX1RSRUU7cmV0dXJuIHImJihlLl9fUFJJVkFURV9ORVhUSlNfSU5URVJOQUxTX1RSRUU9ciksZX1mdW5jdGlvbiB6KHtoZWFkQ2FjaGVOb2RlOmV9KXtsZXQgdD1udWxsIT09ZT9lLmhlYWQ6bnVsbCxuPW51bGwhPT1lP2UucHJlZmV0Y2hIZWFkOm51bGwscj1udWxsIT09bj9uOnQ7cmV0dXJuKDAsby51c2VEZWZlcnJlZFZhbHVlKSh0LHIpfWZ1bmN0aW9uIEwoe2FjdGlvblF1ZXVlOmUsZ2xvYmFsRXJyb3I6dCx3ZWJTb2NrZXQ6bixzdGF0aWNJbmRpY2F0b3JTdGF0ZTpyfSl7bGV0IGwscz0oMCxmLnVzZUFjdGlvblF1ZXVlKShlKSx7Y2Fub25pY2FsVXJsOmJ9PXMse3NlYXJjaFBhcmFtczpFLHBhdGhuYW1lOl99PSgwLG8udXNlTWVtbykoKCk9PntsZXQgZT1uZXcgVVJMKGIsInUiPHR5cGVvZiB3aW5kb3c/Imh0dHA6Ly9uIjp3aW5kb3cubG9jYXRpb24uaHJlZik7cmV0dXJue3NlYXJjaFBhcmFtczplLnNlYXJjaFBhcmFtcyxwYXRobmFtZTooMCx2Lmhhc0Jhc2VQYXRoKShlLnBhdGhuYW1lKT8oMCxnLnJlbW92ZUJhc2VQYXRoKShlLnBhdGhuYW1lKTplLnBhdGhuYW1lfX0sW2JdKTsoMCxvLnVzZUVmZmVjdCkoKCk9PntmdW5jdGlvbiBlKGUpe2UucGVyc2lzdGVkJiZ3aW5kb3cuaGlzdG9yeS5zdGF0ZT8uX19QUklWQVRFX05FWFRKU19JTlRFUk5BTFNfVFJFRSYmKEMucGVuZGluZ01wYVBhdGg9dm9pZCAwLCgwLGYuZGlzcGF0Y2hBcHBSb3V0ZXJBY3Rpb24pKHt0eXBlOnUuQUNUSU9OX1JFU1RPUkUsdXJsOm5ldyBVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpLGhpc3RvcnlTdGF0ZTp3aW5kb3cuaGlzdG9yeS5zdGF0ZS5fX1BSSVZBVEVfTkVYVEpTX0lOVEVSTkFMU19UUkVFfSkpfXJldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicGFnZXNob3ciLGUpLCgpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBhZ2VzaG93IixlKX19LFtdKSwoMCxvLnVzZUVmZmVjdCkoKCk9PntmdW5jdGlvbiBlKGUpe2xldCB0PSJyZWFzb24iaW4gZT9lLnJlYXNvbjplLmVycm9yO2lmKCgwLFMuaXNSZWRpcmVjdEVycm9yKSh0KSl7ZS5wcmV2ZW50RGVmYXVsdCgpO2xldCBuPSgwLGsuZ2V0VVJMRnJvbVJlZGlyZWN0RXJyb3IpKHQpOygwLGsuZ2V0UmVkaXJlY3RUeXBlRnJvbUVycm9yKSh0KT09PVMuUmVkaXJlY3RUeXBlLnB1c2g/dy5wdWJsaWNBcHBSb3V0ZXJJbnN0YW5jZS5wdXNoKG4se30pOncucHVibGljQXBwUm91dGVySW5zdGFuY2UucmVwbGFjZShuLHt9KX19cmV0dXJuIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsZSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInVuaGFuZGxlZHJlamVjdGlvbiIsZSksKCk9Pnt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGUpLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJ1bmhhbmRsZWRyZWplY3Rpb24iLGUpfX0sW10pO2xldHtwdXNoUmVmOk59PXM7aWYoTi5tcGFOYXZpZ2F0aW9uKXtpZihDLnBlbmRpbmdNcGFQYXRoIT09Yil7bGV0IGU9d2luZG93LmxvY2F0aW9uO04ucGVuZGluZ1B1c2g/ZS5hc3NpZ24oYik6ZS5yZXBsYWNlKGIpLEMucGVuZGluZ01wYVBhdGg9Yn10aHJvdyBoLnVucmVzb2x2ZWRUaGVuYWJsZX0oMCxvLnVzZUVmZmVjdCkoKCk9PntsZXQgZT13aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGUuYmluZCh3aW5kb3cuaGlzdG9yeSksdD13aW5kb3cuaGlzdG9yeS5yZXBsYWNlU3RhdGUuYmluZCh3aW5kb3cuaGlzdG9yeSksbj1lPT57bGV0IHQ9d2luZG93LmxvY2F0aW9uLmhyZWYsbj13aW5kb3cuaGlzdG9yeS5zdGF0ZT8uX19QUklWQVRFX05FWFRKU19JTlRFUk5BTFNfVFJFRTsoMCxvLnN0YXJ0VHJhbnNpdGlvbikoKCk9PnsoMCxmLmRpc3BhdGNoQXBwUm91dGVyQWN0aW9uKSh7dHlwZTp1LkFDVElPTl9SRVNUT1JFLHVybDpuZXcgVVJMKGU/P3QsdCksaGlzdG9yeVN0YXRlOm59KX0pfTt3aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGU9ZnVuY3Rpb24odCxyLGwpe3JldHVybiB0Py5fX05BfHx0Py5fTnx8KHQ9Tyh0KSxsJiZuKGwpKSxlKHQscixsKX0sd2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlPWZ1bmN0aW9uKGUscixsKXtyZXR1cm4gZT8uX19OQXx8ZT8uX058fChlPU8oZSksbCYmbihsKSksdChlLHIsbCl9O2xldCByPWU9PntpZihlLnN0YXRlKXtpZighZS5zdGF0ZS5fX05BKXJldHVybiB2b2lkIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTsoMCxvLnN0YXJ0VHJhbnNpdGlvbikoKCk9PnsoMCx3LmRpc3BhdGNoVHJhdmVyc2VBY3Rpb24pKHdpbmRvdy5sb2NhdGlvbi5ocmVmLGUuc3RhdGUuX19QUklWQVRFX05FWFRKU19JTlRFUk5BTFNfVFJFRSl9KX19O3JldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicG9wc3RhdGUiLHIpLCgpPT57d2luZG93Lmhpc3RvcnkucHVzaFN0YXRlPWUsd2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlPXQsd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvcHN0YXRlIixyKX19LFtdKTtsZXR7Y2FjaGU6TCx0cmVlOlIsbmV4dFVybDpNLGZvY3VzQW5kU2Nyb2xsUmVmOkkscHJldmlvdXNOZXh0VXJsOkZ9PXMsQT0oMCxvLnVzZU1lbW8pKCgpPT4oMCxtLmZpbmRIZWFkSW5DYWNoZSkoTCxSWzFdKSxbTCxSXSksaj0oMCxvLnVzZU1lbW8pKCgpPT4oMCx5LmdldFNlbGVjdGVkUGFyYW1zKShSKSxbUl0pLFU9KDAsby51c2VNZW1vKSgoKT0+KHtwYXJlbnRUcmVlOlIscGFyZW50Q2FjaGVOb2RlOkwscGFyZW50U2VnbWVudFBhdGg6bnVsbCxwYXJlbnRQYXJhbXM6e30sZGVidWdOYW1lQ29udGV4dDoiLyIsdXJsOmIsaXNBY3RpdmU6ITB9KSxbUixMLGJdKSxCPSgwLG8udXNlTWVtbykoKCk9Pih7dHJlZTpSLGZvY3VzQW5kU2Nyb2xsUmVmOkksbmV4dFVybDpNLHByZXZpb3VzTmV4dFVybDpGfSksW1IsSSxNLEZdKTtpZihudWxsIT09QSl7bGV0W2UsdCxuXT1BO2w9KDAsYS5qc3gpKHose2hlYWRDYWNoZU5vZGU6ZX0sInUiPHR5cGVvZiB3aW5kb3c/bjp0KX1lbHNlIGw9bnVsbDtsZXQgVj0oMCxhLmpzeHMpKHAuUmVkaXJlY3RCb3VuZGFyeSx7Y2hpbGRyZW46W2wsKDAsYS5qc3gpKFAuUm9vdExheW91dEJvdW5kYXJ5LHtjaGlsZHJlbjpMLnJzY30pLCgwLGEuanN4KShkLkFwcFJvdXRlckFubm91bmNlcix7dHJlZTpSfSldfSk7cmV0dXJuIFY9KDAsYS5qc3gpKHguZGVmYXVsdCx7ZXJyb3JDb21wb25lbnQ6dFswXSxlcnJvclN0eWxlczp0WzFdLGNoaWxkcmVuOlZ9KSwoMCxhLmpzeHMpKGEuRnJhZ21lbnQse2NoaWxkcmVuOlsoMCxhLmpzeCkoVCx7YXBwUm91dGVyU3RhdGU6c30pLCgwLGEuanN4KShELHt9KSwoMCxhLmpzeCkoYy5OYXZpZ2F0aW9uUHJvbWlzZXNDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTpudWxsLGNoaWxkcmVuOigwLGEuanN4KShjLlBhdGhQYXJhbXNDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTpqLGNoaWxkcmVuOigwLGEuanN4KShjLlBhdGhuYW1lQ29udGV4dC5Qcm92aWRlcix7dmFsdWU6XyxjaGlsZHJlbjooMCxhLmpzeCkoYy5TZWFyY2hQYXJhbXNDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTpFLGNoaWxkcmVuOigwLGEuanN4KShpLkdsb2JhbExheW91dFJvdXRlckNvbnRleHQuUHJvdmlkZXIse3ZhbHVlOkIsY2hpbGRyZW46KDAsYS5qc3gpKGkuQXBwUm91dGVyQ29udGV4dC5Qcm92aWRlcix7dmFsdWU6dy5wdWJsaWNBcHBSb3V0ZXJJbnN0YW5jZSxjaGlsZHJlbjooMCxhLmpzeCkoaS5MYXlvdXRSb3V0ZXJDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTpVLGNoaWxkcmVuOlZ9KX0pfSl9KX0pfSl9KV19KX1mdW5jdGlvbiBSKHthY3Rpb25RdWV1ZTplLGdsb2JhbEVycm9yU3RhdGU6dCx3ZWJTb2NrZXQ6bixzdGF0aWNJbmRpY2F0b3JTdGF0ZTpyfSl7KDAsYi51c2VOYXZGYWlsdXJlSGFuZGxlcikoKTtsZXQgbD0oMCxhLmpzeCkoTCx7YWN0aW9uUXVldWU6ZSxnbG9iYWxFcnJvcjp0LHdlYlNvY2tldDpuLHN0YXRpY0luZGljYXRvclN0YXRlOnJ9KTtyZXR1cm4oMCxhLmpzeCkoeC5kZWZhdWx0LHtlcnJvckNvbXBvbmVudDpfLmRlZmF1bHQsY2hpbGRyZW46bH0pfWxldCBNPW5ldyBTZXQsST1uZXcgU2V0O2Z1bmN0aW9uIEQoKXtsZXRbLGVdPW8uZGVmYXVsdC51c2VTdGF0ZSgwKSx0PU0uc2l6ZTsoMCxvLnVzZUVmZmVjdCkoKCk9PntsZXQgbj0oKT0+ZShlPT5lKzEpO3JldHVybiBJLmFkZChuKSx0IT09TS5zaXplJiZuKCksKCk9PntJLmRlbGV0ZShuKX19LFt0LGVdKTtsZXQgbj0oMCxOLmdldERlcGxveW1lbnRJZFF1ZXJ5T3JFbXB0eVN0cmluZykoKTtyZXR1cm5bLi4uTV0ubWFwKChlLHQpPT4oMCxhLmpzeCkoImxpbmsiLHtyZWw6InN0eWxlc2hlZXQiLGhyZWY6YCR7ZX0ke259YCxwcmVjZWRlbmNlOiJuZXh0In0sdCkpfWdsb2JhbFRoaXMuX05fRV9TVFlMRV9MT0FEPWZ1bmN0aW9uKGUpe2xldCB0PU0uc2l6ZTtyZXR1cm4gTS5hZGQoZSksTS5zaXplIT09dCYmSS5mb3JFYWNoKGU9PmUoKSksUHJvbWlzZS5yZXNvbHZlKCl9LCgiZnVuY3Rpb24iPT10eXBlb2Ygbi5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIG4uZGVmYXVsdCYmbnVsbCE9PW4uZGVmYXVsdCkmJnZvaWQgMD09PW4uZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KG4uZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihuLmRlZmF1bHQsbiksdC5leHBvcnRzPW4uZGVmYXVsdCl9LDM4NzkyLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJjcmVhdGVJbml0aWFsUm91dGVyU3RhdGUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBpfX0pO2xldCByPWUucig4NTU5NCksbD1lLnIoMTgxNjcpLGE9ZS5yKDY3NjI4KSxvPWUucigxODkzOSk7ZnVuY3Rpb24gaSh7bmF2aWdhdGVkQXQ6ZSxpbml0aWFsRmxpZ2h0RGF0YTp0LGluaXRpYWxDYW5vbmljYWxVcmxQYXJ0czpuLGluaXRpYWxSZW5kZXJlZFNlYXJjaDppLGxvY2F0aW9uOnV9KXtsZXQgcz1uLmpvaW4oIi8iKSx7dHJlZTpjLHNlZWREYXRhOmYsaGVhZDpkfT0oMCxhLmdldEZsaWdodERhdGFQYXJ0c0Zyb21QYXRoKSh0WzBdKSxwPXU/KDAsci5jcmVhdGVIcmVmRnJvbVVybCkodSk6cztyZXR1cm57dHJlZTpjLGNhY2hlOigwLG8uY3JlYXRlSW5pdGlhbENhY2hlTm9kZUZvckh5ZHJhdGlvbikoZSxjLGYsZCkscHVzaFJlZjp7cGVuZGluZ1B1c2g6ITEsbXBhTmF2aWdhdGlvbjohMSxwcmVzZXJ2ZUN1c3RvbUhpc3RvcnlTdGF0ZTohMH0sZm9jdXNBbmRTY3JvbGxSZWY6e2FwcGx5OiExLG9ubHlIYXNoQ2hhbmdlOiExLGhhc2hGcmFnbWVudDpudWxsLHNlZ21lbnRQYXRoczpbXX0sY2Fub25pY2FsVXJsOnAscmVuZGVyZWRTZWFyY2g6aSxuZXh0VXJsOigoMCxsLmV4dHJhY3RQYXRoRnJvbUZsaWdodFJvdXRlclN0YXRlKShjKXx8dT8ucGF0aG5hbWUpPz9udWxsLHByZXZpb3VzTmV4dFVybDpudWxsLGRlYnVnSW5mbzpudWxsfX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw5MzM1MSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO2xldCByLGwsYSxvO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiaHlkcmF0ZSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIEF9fSk7bGV0IGk9ZS5yKDgxMjU4KSx1PWUucig5ODEzNCk7ZS5yKDc5MTIzKTtsZXQgcz1pLl8oZS5yKDgyOTQwKSksYz1pLl8oZS5yKDc1MjAxKSksZj1lLnIoNzUwNDUpLGQ9ZS5yKDQ0OTM0KSxwPWUucigzMjc5MyksbT1lLnIoODI5MzkpLGg9ZS5yKDMwOTMxKSxnPWUucig4OTU5NCksdj1lLnIoODQzOTUpLHk9aS5fKGUucig2MTE1NikpLGI9ZS5yKDM4NzkyKTtlLnIoMTY4NzIpO2xldCB3PWUucig2MTcwNiksaz1lLnIoNjc2MjgpLFM9Zi5jcmVhdGVGcm9tUmVhZGFibGVTdHJlYW0sRT1mLmNyZWF0ZUZyb21GZXRjaCx4PWRvY3VtZW50LF89bmV3IFRleHRFbmNvZGVyLFA9ITEsTj0hMSxDPW51bGw7ZnVuY3Rpb24gVChlKXtpZigwPT09ZVswXSlhPVtdO2Vsc2UgaWYoMT09PWVbMF0pe2lmKCFhKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiVW5leHBlY3RlZCBzZXJ2ZXIgZGF0YTogbWlzc2luZyBib290c3RyYXAgc2NyaXB0LiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMTgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7bz9vLmVucXVldWUoXy5lbmNvZGUoZVsxXSkpOmEucHVzaChlWzFdKX1lbHNlIGlmKDI9PT1lWzBdKUM9ZVsxXTtlbHNlIGlmKDM9PT1lWzBdKXtpZighYSl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIlVuZXhwZWN0ZWQgc2VydmVyIGRhdGE6IG1pc3NpbmcgYm9vdHN0cmFwIHNjcmlwdC4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTE4IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO2xldCBuPWF0b2IoZVsxXSkscj1uZXcgVWludDhBcnJheShuLmxlbmd0aCk7Zm9yKHZhciB0PTA7dDxuLmxlbmd0aDt0Kyspclt0XT1uLmNoYXJDb2RlQXQodCk7bz9vLmVucXVldWUocik6YS5wdXNoKHIpfX1sZXQgTz1mdW5jdGlvbigpe28mJiFOJiYoby5jbG9zZSgpLE49ITAsYT12b2lkIDApLFA9ITB9OyJsb2FkaW5nIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsTywhMSk6c2V0VGltZW91dChPKTtsZXQgej1zZWxmLl9fbmV4dF9mPXNlbGYuX19uZXh0X2Z8fFtdO3ouZm9yRWFjaChUKSx6Lmxlbmd0aD0wLHoucHVzaD1UO2xldCBMPW5ldyBSZWFkYWJsZVN0cmVhbSh7c3RhcnQoZSl7YSYmKGEuZm9yRWFjaCh0PT57ZS5lbnF1ZXVlKCJzdHJpbmciPT10eXBlb2YgdD9fLmVuY29kZSh0KTp0KX0pLFAmJiFOKSYmKG51bGw9PT1lLmRlc2lyZWRTaXplfHxlLmRlc2lyZWRTaXplPDA/ZS5lcnJvcihPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIlRoZSBjb25uZWN0aW9uIHRvIHRoZSBwYWdlIHdhcyB1bmV4cGVjdGVkbHkgY2xvc2VkLCBwb3NzaWJseSBkdWUgdG8gdGhlIHN0b3AgYnV0dG9uIGJlaW5nIGNsaWNrZWQsIGxvc3Mgb2YgV2ktRmksIG9yIGFuIHVuc3RhYmxlIGludGVybmV0IGNvbm5lY3Rpb24uIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkUxMTciLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSkpOmUuY2xvc2UoKSxOPSEwLGE9dm9pZCAwKSxvPWV9fSksUj13aW5kb3cuX19ORVhUX0NMSUVOVF9SRVNVTUU7ZnVuY3Rpb24gTSh7aW5pdGlhbFJTQ1BheWxvYWQ6ZSxhY3Rpb25RdWV1ZTp0LHdlYlNvY2tldDpuLHN0YXRpY0luZGljYXRvclN0YXRlOnJ9KXtyZXR1cm4oMCx1LmpzeCkoeS5kZWZhdWx0LHthY3Rpb25RdWV1ZTp0LGdsb2JhbEVycm9yU3RhdGU6ZS5HLHdlYlNvY2tldDpuLHN0YXRpY0luZGljYXRvclN0YXRlOnJ9KX1sPVI/UHJvbWlzZS5yZXNvbHZlKEUoUix7Y2FsbFNlcnZlcjpoLmNhbGxTZXJ2ZXIsZmluZFNvdXJjZU1hcFVSTDpnLmZpbmRTb3VyY2VNYXBVUkwsZGVidWdDaGFubmVsOnJ9KSkudGhlbihhc3luYyBlPT4oMCxrLmNyZWF0ZUluaXRpYWxSU0NQYXlsb2FkRnJvbUZhbGxiYWNrUHJlcmVuZGVyKShhd2FpdCBSLGUpKTpTKEwse2NhbGxTZXJ2ZXI6aC5jYWxsU2VydmVyLGZpbmRTb3VyY2VNYXBVUkw6Zy5maW5kU291cmNlTWFwVVJMLGRlYnVnQ2hhbm5lbDpyLHN0YXJ0VGltZTowfSk7bGV0IEk9Yy5kZWZhdWx0LlN0cmljdE1vZGU7ZnVuY3Rpb24gRCh7Y2hpbGRyZW46ZX0pe3JldHVybiBlfWxldCBGPXtvbkRlZmF1bHRUcmFuc2l0aW9uSW5kaWNhdG9yOmZ1bmN0aW9uKCl7cmV0dXJuKCk9Pnt9fSxvblJlY292ZXJhYmxlRXJyb3I6cC5vblJlY292ZXJhYmxlRXJyb3Isb25DYXVnaHRFcnJvcjptLm9uQ2F1Z2h0RXJyb3Isb25VbmNhdWdodEVycm9yOm0ub25VbmNhdWdodEVycm9yfTthc3luYyBmdW5jdGlvbiBBKGUsdCl7bGV0IG4scixhPWF3YWl0IGw7KDAsdy5zZXRBcHBCdWlsZElkKShhLmIpO2xldCBvPURhdGUubm93KCksaT0oMCx2LmNyZWF0ZU11dGFibGVBY3Rpb25RdWV1ZSkoKDAsYi5jcmVhdGVJbml0aWFsUm91dGVyU3RhdGUpKHtuYXZpZ2F0ZWRBdDpvLGluaXRpYWxGbGlnaHREYXRhOmEuZixpbml0aWFsQ2Fub25pY2FsVXJsUGFydHM6YS5jLGluaXRpYWxSZW5kZXJlZFNlYXJjaDphLnEsbG9jYXRpb246d2luZG93LmxvY2F0aW9ufSksZSksZj0oMCx1LmpzeCkoSSx7Y2hpbGRyZW46KDAsdS5qc3gpKGQuSGVhZE1hbmFnZXJDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTp7YXBwRGlyOiEwfSxjaGlsZHJlbjooMCx1LmpzeCkoRCx7Y2hpbGRyZW46KDAsdS5qc3gpKE0se2luaXRpYWxSU0NQYXlsb2FkOmEsYWN0aW9uUXVldWU6aSx3ZWJTb2NrZXQ6cixzdGF0aWNJbmRpY2F0b3JTdGF0ZTpufSl9KX0pfSk7Il9fbmV4dF9lcnJvcl9fIj09PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5pZD9zLmRlZmF1bHQuY3JlYXRlUm9vdCh4LEYpLnJlbmRlcihmKTpjLmRlZmF1bHQuc3RhcnRUcmFuc2l0aW9uKCgpPT57cy5kZWZhdWx0Lmh5ZHJhdGVSb290KHgsZix7Li4uRixmb3JtU3RhdGU6Q30pfSl9KCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX0sOTYzMzUsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7bGV0IHI9ZS5yKDQ4NzA2KTtlLnIoMzI3OTMpLHdpbmRvdy5uZXh0LnR1cmJvcGFjaz0hMCxzZWxmLl9fd2VicGFja19oYXNoX189IiI7bGV0IGw9ZS5yKDkyMzg2KTsoMCxyLmFwcEJvb3RzdHJhcCkodD0+e2xldHtoeWRyYXRlOm59PWUucig5MzM1MSk7bihsLHQpfSksKCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX1dKTs="}},"time_used":12,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/4815a758657d4bae.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.693Z","timestamp":1785143926693,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/4815a758657d4bae.js HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\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: same-origin\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\naccess-control-allow-origin: *\r\nage: 3831443\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"4815a758657d4bae.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\netag: W/\"9b4f6d29f92ea43b7c7ef4770fbed76a\"\r\nlast-modified: Sat, 13 Jun 2026 00:50:11 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/4815a758657d4bae.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::98lrq-1781312483644-7e3fe14e464a\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Y5uTk4BDZAiWxLjl5Mw%2B4nE%2Fbc2r8Z2yxUWWb3LzGJ9fHEhWOKRLkEoXfQeAIEtG%2FSATnn0%2B75riNBNRquAxQDunxJUv4ryK9NCpD2oajargJHGUxyfpdHEyt0Zh\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21a8f05d9190b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"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"]},{"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":49883,"size_decoded":17722,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (49883), with no line terminators","md5":"9b4f6d29f92ea43b7c7ef4770fbed76a","sha1":"bdad2044ced7e4c0208e62e5650f99140e88aeb6","sha256":"6fb06a5d29509dddf687974e467d8274ef9ef0f6bec7c841fd8336543c9a3f74","sha512":"06ec26c380efdf73315dfc21639732033b79b7869acaed6d4a6697c4d441500bb21f57311b543ee176e2b31b775cff20bc5e611dfff3cca3a3a5c30c8338262f","ssdeep":"1536:UIYGGTQpo7UFYEpzussak11xgaAF+j/G7qWF:UIYGKO+UFZaJgaUt7/","tlshash":"f023d4c971e5b4900bb395b1803f000bf23e1d76185d98a0d3a2dde9b8b45aed233f99","first_seen":"2026-06-13T02:21:16.211868Z","last_seen":"2026-08-11T04:47:30.060041Z","times_seen":1896,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDkzMDYzLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJSZWRpcmVjdFN0YXR1c0NvZGUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBvfX0pO3ZhciByLG89KChyPXt9KVtyLlNlZU90aGVyPTMwM109IlNlZU90aGVyIixyW3IuVGVtcG9yYXJ5UmVkaXJlY3Q9MzA3XT0iVGVtcG9yYXJ5UmVkaXJlY3QiLHJbci5QZXJtYW5lbnRSZWRpcmVjdD0zMDhdPSJQZXJtYW5lbnRSZWRpcmVjdCIscik7KCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX0sOTA4NjIsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIHIsbz17UkVESVJFQ1RfRVJST1JfQ09ERTpmdW5jdGlvbigpe3JldHVybiBhfSxSZWRpcmVjdFR5cGU6ZnVuY3Rpb24oKXtyZXR1cm4gbH0saXNSZWRpcmVjdEVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIHN9fTtmb3IodmFyIHUgaW4gbylPYmplY3QuZGVmaW5lUHJvcGVydHkobix1LHtlbnVtZXJhYmxlOiEwLGdldDpvW3VdfSk7bGV0IGk9ZS5yKDkzMDYzKSxhPSJORVhUX1JFRElSRUNUIjt2YXIgbD0oKHI9e30pLnB1c2g9InB1c2giLHIucmVwbGFjZT0icmVwbGFjZSIscik7ZnVuY3Rpb24gcyhlKXtpZigib2JqZWN0IiE9dHlwZW9mIGV8fG51bGw9PT1lfHwhKCJkaWdlc3QiaW4gZSl8fCJzdHJpbmciIT10eXBlb2YgZS5kaWdlc3QpcmV0dXJuITE7bGV0IHQ9ZS5kaWdlc3Quc3BsaXQoIjsiKSxbbixyXT10LG89dC5zbGljZSgyLC0yKS5qb2luKCI7IiksdT1OdW1iZXIodC5hdCgtMikpO3JldHVybiBuPT09YSYmKCJyZXBsYWNlIj09PXJ8fCJwdXNoIj09PXIpJiYic3RyaW5nIj09dHlwZW9mIG8mJiFpc05hTih1KSYmdSBpbiBpLlJlZGlyZWN0U3RhdHVzQ29kZX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwzNDY0MSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgcj17QUNUSU9OX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBpfSxGTElHSFRfSEVBREVSUzpmdW5jdGlvbigpe3JldHVybiB5fSxORVhUX0FDVElPTl9OT1RfRk9VTkRfSEVBREVSOmZ1bmN0aW9uKCl7cmV0dXJuIEV9LE5FWFRfQUNUSU9OX1JFVkFMSURBVEVEX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBPfSxORVhUX0RJRF9QT1NUUE9ORV9IRUFERVI6ZnVuY3Rpb24oKXtyZXR1cm4gX30sTkVYVF9ITVJfUkVGUkVTSF9IQVNIX0NPT0tJRTpmdW5jdGlvbigpe3JldHVybiBmfSxORVhUX0hNUl9SRUZSRVNIX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBjfSxORVhUX0hUTUxfUkVRVUVTVF9JRF9IRUFERVI6ZnVuY3Rpb24oKXtyZXR1cm4gUn0sTkVYVF9JU19QUkVSRU5ERVJfSEVBREVSOmZ1bmN0aW9uKCl7cmV0dXJuIG19LE5FWFRfUkVRVUVTVF9JRF9IRUFERVI6ZnVuY3Rpb24oKXtyZXR1cm4gU30sTkVYVF9SRVdSSVRURU5fUEFUSF9IRUFERVI6ZnVuY3Rpb24oKXtyZXR1cm4gYn0sTkVYVF9SRVdSSVRURU5fUVVFUllfSEVBREVSOmZ1bmN0aW9uKCl7cmV0dXJuIGd9LE5FWFRfUk9VVEVSX1BSRUZFVENIX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBsfSxORVhUX1JPVVRFUl9TRUdNRU5UX1BSRUZFVENIX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBzfSxORVhUX1JPVVRFUl9TVEFMRV9USU1FX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBofSxORVhUX1JPVVRFUl9TVEFURV9UUkVFX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBhfSxORVhUX1JTQ19VTklPTl9RVUVSWTpmdW5jdGlvbigpe3JldHVybiB2fSxORVhUX1VSTDpmdW5jdGlvbigpe3JldHVybiBkfSxSU0NfQ09OVEVOVF9UWVBFX0hFQURFUjpmdW5jdGlvbigpe3JldHVybiBwfSxSU0NfSEVBREVSOmZ1bmN0aW9uKCl7cmV0dXJuIHV9fTtmb3IodmFyIG8gaW4gcilPYmplY3QuZGVmaW5lUHJvcGVydHkobixvLHtlbnVtZXJhYmxlOiEwLGdldDpyW29dfSk7bGV0IHU9InJzYyIsaT0ibmV4dC1hY3Rpb24iLGE9Im5leHQtcm91dGVyLXN0YXRlLXRyZWUiLGw9Im5leHQtcm91dGVyLXByZWZldGNoIixzPSJuZXh0LXJvdXRlci1zZWdtZW50LXByZWZldGNoIixjPSJuZXh0LWhtci1yZWZyZXNoIixmPSJfX25leHRfaG1yX3JlZnJlc2hfaGFzaF9fIixkPSJuZXh0LXVybCIscD0idGV4dC94LWNvbXBvbmVudCIseT1bdSxhLGwsYyxzXSx2PSJfcnNjIixoPSJ4LW5leHRqcy1zdGFsZS10aW1lIixfPSJ4LW5leHRqcy1wb3N0cG9uZWQiLGI9IngtbmV4dGpzLXJld3JpdHRlbi1wYXRoIixnPSJ4LW5leHRqcy1yZXdyaXR0ZW4tcXVlcnkiLG09IngtbmV4dGpzLXByZXJlbmRlciIsRT0ieC1uZXh0anMtYWN0aW9uLW5vdC1mb3VuZCIsUz0ieC1uZXh0anMtcmVxdWVzdC1pZCIsUj0ieC1uZXh0anMtaHRtbC1yZXF1ZXN0LWlkIixPPSJ4LWFjdGlvbi1yZXZhbGlkYXRlZCI7KCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX0sMjc0NTQsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIHI9e0RFRkFVTFRfU0VHTUVOVF9LRVk6ZnVuY3Rpb24oKXtyZXR1cm4gZn0sTk9UX0ZPVU5EX1NFR01FTlRfS0VZOmZ1bmN0aW9uKCl7cmV0dXJuIGR9LFBBR0VfU0VHTUVOVF9LRVk6ZnVuY3Rpb24oKXtyZXR1cm4gY30sYWRkU2VhcmNoUGFyYW1zSWZQYWdlU2VnbWVudDpmdW5jdGlvbigpe3JldHVybiBsfSxjb21wdXRlU2VsZWN0ZWRMYXlvdXRTZWdtZW50OmZ1bmN0aW9uKCl7cmV0dXJuIHN9LGdldFNlZ21lbnRWYWx1ZTpmdW5jdGlvbigpe3JldHVybiB1fSxnZXRTZWxlY3RlZExheW91dFNlZ21lbnRQYXRoOmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uIGUodCxuLHI9ITAsbz1bXSl7bGV0IGk7aWYocilpPXRbMV1bbl07ZWxzZXtsZXQgZT10WzFdO2k9ZS5jaGlsZHJlbj8/T2JqZWN0LnZhbHVlcyhlKVswXX1pZighaSlyZXR1cm4gbztsZXQgYT11KGlbMF0pO3JldHVybiFhfHxhLnN0YXJ0c1dpdGgoYyk/bzooby5wdXNoKGEpLGUoaSxuLCExLG8pKX19LGlzR3JvdXBTZWdtZW50OmZ1bmN0aW9uKCl7cmV0dXJuIGl9LGlzUGFyYWxsZWxSb3V0ZVNlZ21lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gYX19O2Zvcih2YXIgbyBpbiByKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLG8se2VudW1lcmFibGU6ITAsZ2V0OnJbb119KTtmdW5jdGlvbiB1KGUpe3JldHVybiBBcnJheS5pc0FycmF5KGUpP2VbMV06ZX1mdW5jdGlvbiBpKGUpe3JldHVybiIoIj09PWVbMF0mJmUuZW5kc1dpdGgoIikiKX1mdW5jdGlvbiBhKGUpe3JldHVybiBlLnN0YXJ0c1dpdGgoIkAiKSYmIkBjaGlsZHJlbiIhPT1lfWZ1bmN0aW9uIGwoZSx0KXtpZihlLmluY2x1ZGVzKGMpKXtsZXQgZT1KU09OLnN0cmluZ2lmeSh0KTtyZXR1cm4ie30iIT09ZT9jKyI/IitlOmN9cmV0dXJuIGV9ZnVuY3Rpb24gcyhlLHQpe2lmKCFlfHwwPT09ZS5sZW5ndGgpcmV0dXJuIG51bGw7bGV0IG49ImNoaWxkcmVuIj09PXQ/ZVswXTplW2UubGVuZ3RoLTFdO3JldHVybiBuPT09Zj9udWxsOm59bGV0IGM9Il9fUEFHRV9fIixmPSJfX0RFRkFVTFRfXyIsZD0iL19ub3QtZm91bmQifSw3NTA1MSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgcj17VW5yZWNvZ25pemVkQWN0aW9uRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gdX0sdW5zdGFibGVfaXNVbnJlY29nbml6ZWRBY3Rpb25FcnJvcjpmdW5jdGlvbigpe3JldHVybiBpfX07Zm9yKHZhciBvIGluIHIpT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sbyx7ZW51bWVyYWJsZTohMCxnZXQ6cltvXX0pO2NsYXNzIHUgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvciguLi5lKXtzdXBlciguLi5lKSx0aGlzLm5hbWU9IlVucmVjb2duaXplZEFjdGlvbkVycm9yIn19ZnVuY3Rpb24gaShlKXtyZXR1cm4hIShlJiYib2JqZWN0Ij09dHlwZW9mIGUmJmUgaW5zdGFuY2VvZiB1KX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw5NzA4OCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiYWN0aW9uQXN5bmNTdG9yYWdlSW5zdGFuY2UiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiByfX0pO2xldCByPSgwLGUucig0OTIxMSkuY3JlYXRlQXN5bmNMb2NhbFN0b3JhZ2UpKCl9LDIzNzA4LChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJhY3Rpb25Bc3luY1N0b3JhZ2UiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiByLmFjdGlvbkFzeW5jU3RvcmFnZUluc3RhbmNlfX0pO2xldCByPWUucig5NzA4OCl9LDQxNzIxLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByPXtnZXRSZWRpcmVjdEVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGx9LGdldFJlZGlyZWN0U3RhdHVzQ29kZUZyb21FcnJvcjpmdW5jdGlvbigpe3JldHVybiBwfSxnZXRSZWRpcmVjdFR5cGVGcm9tRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gZH0sZ2V0VVJMRnJvbVJlZGlyZWN0RXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gZn0scGVybWFuZW50UmVkaXJlY3Q6ZnVuY3Rpb24oKXtyZXR1cm4gY30scmVkaXJlY3Q6ZnVuY3Rpb24oKXtyZXR1cm4gc319O2Zvcih2YXIgbyBpbiByKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLG8se2VudW1lcmFibGU6ITAsZ2V0OnJbb119KTtsZXQgdT1lLnIoOTMwNjMpLGk9ZS5yKDkwODYyKSxhPSJ1Ijx0eXBlb2Ygd2luZG93P2UucigyMzcwOCkuYWN0aW9uQXN5bmNTdG9yYWdlOnZvaWQgMDtmdW5jdGlvbiBsKGUsdCxuPXUuUmVkaXJlY3RTdGF0dXNDb2RlLlRlbXBvcmFyeVJlZGlyZWN0KXtsZXQgcj1PYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoaS5SRURJUkVDVF9FUlJPUl9DT0RFKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTM5NCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtyZXR1cm4gci5kaWdlc3Q9YCR7aS5SRURJUkVDVF9FUlJPUl9DT0RFfTske3R9OyR7ZX07JHtufTtgLHJ9ZnVuY3Rpb24gcyhlLHQpe3Rocm93IGwoZSx0Pz89YT8uZ2V0U3RvcmUoKT8uaXNBY3Rpb24/aS5SZWRpcmVjdFR5cGUucHVzaDppLlJlZGlyZWN0VHlwZS5yZXBsYWNlLHUuUmVkaXJlY3RTdGF0dXNDb2RlLlRlbXBvcmFyeVJlZGlyZWN0KX1mdW5jdGlvbiBjKGUsdD1pLlJlZGlyZWN0VHlwZS5yZXBsYWNlKXt0aHJvdyBsKGUsdCx1LlJlZGlyZWN0U3RhdHVzQ29kZS5QZXJtYW5lbnRSZWRpcmVjdCl9ZnVuY3Rpb24gZihlKXtyZXR1cm4oMCxpLmlzUmVkaXJlY3RFcnJvcikoZSk/ZS5kaWdlc3Quc3BsaXQoIjsiKS5zbGljZSgyLC0yKS5qb2luKCI7Iik6bnVsbH1mdW5jdGlvbiBkKGUpe2lmKCEoMCxpLmlzUmVkaXJlY3RFcnJvcikoZSkpdGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKCJOb3QgYSByZWRpcmVjdCBlcnJvciIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMjYwIixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3JldHVybiBlLmRpZ2VzdC5zcGxpdCgiOyIsMilbMV19ZnVuY3Rpb24gcChlKXtpZighKDAsaS5pc1JlZGlyZWN0RXJyb3IpKGUpKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiTm90IGEgcmVkaXJlY3QgZXJyb3IiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTI2MCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtyZXR1cm4gTnVtYmVyKGUuZGlnZXN0LnNwbGl0KCI7IikuYXQoLTIpKX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwxNjg3MiwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgcj17QXBwUm91dGVyQ29udGV4dDpmdW5jdGlvbigpe3JldHVybiBpfSxHbG9iYWxMYXlvdXRSb3V0ZXJDb250ZXh0OmZ1bmN0aW9uKCl7cmV0dXJuIGx9LExheW91dFJvdXRlckNvbnRleHQ6ZnVuY3Rpb24oKXtyZXR1cm4gYX0sTWlzc2luZ1Nsb3RDb250ZXh0OmZ1bmN0aW9uKCl7cmV0dXJuIGN9LFRlbXBsYXRlQ29udGV4dDpmdW5jdGlvbigpe3JldHVybiBzfX07Zm9yKHZhciBvIGluIHIpT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sbyx7ZW51bWVyYWJsZTohMCxnZXQ6cltvXX0pO2xldCB1PWUucig4MTI1OCkuXyhlLnIoNzUyMDEpKSxpPXUuZGVmYXVsdC5jcmVhdGVDb250ZXh0KG51bGwpLGE9dS5kZWZhdWx0LmNyZWF0ZUNvbnRleHQobnVsbCksbD11LmRlZmF1bHQuY3JlYXRlQ29udGV4dChudWxsKSxzPXUuZGVmYXVsdC5jcmVhdGVDb250ZXh0KG51bGwpLGM9dS5kZWZhdWx0LmNyZWF0ZUNvbnRleHQobmV3IFNldCl9LDYzMTY1LChlLHQsbik9Pnt2YXIgcj17MjI5OmZ1bmN0aW9uKGUpe3ZhciB0LG4scixvPWUuZXhwb3J0cz17fTtmdW5jdGlvbiB1KCl7dGhyb3cgRXJyb3IoInNldFRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQiKX1mdW5jdGlvbiBpKCl7dGhyb3cgRXJyb3IoImNsZWFyVGltZW91dCBoYXMgbm90IGJlZW4gZGVmaW5lZCIpfXRyeXt0PSJmdW5jdGlvbiI9PXR5cGVvZiBzZXRUaW1lb3V0P3NldFRpbWVvdXQ6dX1jYXRjaChlKXt0PXV9dHJ5e249ImZ1bmN0aW9uIj09dHlwZW9mIGNsZWFyVGltZW91dD9jbGVhclRpbWVvdXQ6aX1jYXRjaChlKXtuPWl9ZnVuY3Rpb24gYShlKXtpZih0PT09c2V0VGltZW91dClyZXR1cm4gc2V0VGltZW91dChlLDApO2lmKCh0PT09dXx8IXQpJiZzZXRUaW1lb3V0KXJldHVybiB0PXNldFRpbWVvdXQsc2V0VGltZW91dChlLDApO3RyeXtyZXR1cm4gdChlLDApfWNhdGNoKG4pe3RyeXtyZXR1cm4gdC5jYWxsKG51bGwsZSwwKX1jYXRjaChuKXtyZXR1cm4gdC5jYWxsKHRoaXMsZSwwKX19fXZhciBsPVtdLHM9ITEsYz0tMTtmdW5jdGlvbiBmKCl7cyYmciYmKHM9ITEsci5sZW5ndGg/bD1yLmNvbmNhdChsKTpjPS0xLGwubGVuZ3RoJiZkKCkpfWZ1bmN0aW9uIGQoKXtpZighcyl7dmFyIGU9YShmKTtzPSEwO2Zvcih2YXIgdD1sLmxlbmd0aDt0Oyl7Zm9yKHI9bCxsPVtdOysrYzx0OylyJiZyW2NdLnJ1bigpO2M9LTEsdD1sLmxlbmd0aH1yPW51bGwscz0hMSxmdW5jdGlvbihlKXtpZihuPT09Y2xlYXJUaW1lb3V0KXJldHVybiBjbGVhclRpbWVvdXQoZSk7aWYoKG49PT1pfHwhbikmJmNsZWFyVGltZW91dClyZXR1cm4gbj1jbGVhclRpbWVvdXQsY2xlYXJUaW1lb3V0KGUpO3RyeXtuKGUpfWNhdGNoKHQpe3RyeXtyZXR1cm4gbi5jYWxsKG51bGwsZSl9Y2F0Y2godCl7cmV0dXJuIG4uY2FsbCh0aGlzLGUpfX19KGUpfX1mdW5jdGlvbiBwKGUsdCl7dGhpcy5mdW49ZSx0aGlzLmFycmF5PXR9ZnVuY3Rpb24geSgpe31vLm5leHRUaWNrPWZ1bmN0aW9uKGUpe3ZhciB0PUFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMSk7aWYoYXJndW1lbnRzLmxlbmd0aD4xKWZvcih2YXIgbj0xO248YXJndW1lbnRzLmxlbmd0aDtuKyspdFtuLTFdPWFyZ3VtZW50c1tuXTtsLnB1c2gobmV3IHAoZSx0KSksMSE9PWwubGVuZ3RofHxzfHxhKGQpfSxwLnByb3RvdHlwZS5ydW49ZnVuY3Rpb24oKXt0aGlzLmZ1bi5hcHBseShudWxsLHRoaXMuYXJyYXkpfSxvLnRpdGxlPSJicm93c2VyIixvLmJyb3dzZXI9ITAsby5lbnY9e30sby5hcmd2PVtdLG8udmVyc2lvbj0iIixvLnZlcnNpb25zPXt9LG8ub249eSxvLmFkZExpc3RlbmVyPXksby5vbmNlPXksby5vZmY9eSxvLnJlbW92ZUxpc3RlbmVyPXksby5yZW1vdmVBbGxMaXN0ZW5lcnM9eSxvLmVtaXQ9eSxvLnByZXBlbmRMaXN0ZW5lcj15LG8ucHJlcGVuZE9uY2VMaXN0ZW5lcj15LG8ubGlzdGVuZXJzPWZ1bmN0aW9uKGUpe3JldHVybltdfSxvLmJpbmRpbmc9ZnVuY3Rpb24oZSl7dGhyb3cgRXJyb3IoInByb2Nlc3MuYmluZGluZyBpcyBub3Qgc3VwcG9ydGVkIil9LG8uY3dkPWZ1bmN0aW9uKCl7cmV0dXJuIi8ifSxvLmNoZGlyPWZ1bmN0aW9uKGUpe3Rocm93IEVycm9yKCJwcm9jZXNzLmNoZGlyIGlzIG5vdCBzdXBwb3J0ZWQiKX0sby51bWFzaz1mdW5jdGlvbigpe3JldHVybiAwfX19LG89e307ZnVuY3Rpb24gdShlKXt2YXIgdD1vW2VdO2lmKHZvaWQgMCE9PXQpcmV0dXJuIHQuZXhwb3J0czt2YXIgbj1vW2VdPXtleHBvcnRzOnt9fSxpPSEwO3RyeXtyW2VdKG4sbi5leHBvcnRzLHUpLGk9ITF9ZmluYWxseXtpJiZkZWxldGUgb1tlXX1yZXR1cm4gbi5leHBvcnRzfXUuYWI9Ii9ST09UL25vZGVfbW9kdWxlcy8ucG5wbS9uZXh0QDE2LjEuNl9AYmFiZWwrY29yZUA3LjI5LjBfcmVhY3QtZG9tQDE5LjIuM19yZWFjdEAxOS4yLjNfX3JlYWN0QDE5LjIuMy9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NvbXBpbGVkL3Byb2Nlc3MvIix0LmV4cG9ydHM9dSgyMjkpfSw4MjYzNywoZSx0LG4pPT57InVzZSBzdHJpY3QiO3ZhciByLG87dC5leHBvcnRzPShudWxsPT0ocj1lLmcucHJvY2Vzcyk/dm9pZCAwOnIuZW52KSYmIm9iamVjdCI9PXR5cGVvZihudWxsPT0obz1lLmcucHJvY2Vzcyk/dm9pZCAwOm8uZW52KT9lLmcucHJvY2VzczplLnIoNjMxNjUpfSw5OTI5MywoZSx0LG4pPT57InVzZSBzdHJpY3QiO3ZhciByPVN5bWJvbC5mb3IoInJlYWN0LnRyYW5zaXRpb25hbC5lbGVtZW50Iik7ZnVuY3Rpb24gbyhlLHQsbil7dmFyIG89bnVsbDtpZih2b2lkIDAhPT1uJiYobz0iIituKSx2b2lkIDAhPT10LmtleSYmKG89IiIrdC5rZXkpLCJrZXkiaW4gdClmb3IodmFyIHUgaW4gbj17fSx0KSJrZXkiIT09dSYmKG5bdV09dFt1XSk7ZWxzZSBuPXQ7cmV0dXJueyQkdHlwZW9mOnIsdHlwZTplLGtleTpvLHJlZjp2b2lkIDAhPT0odD1uLnJlZik/dDpudWxsLHByb3BzOm59fW4uRnJhZ21lbnQ9U3ltYm9sLmZvcigicmVhY3QuZnJhZ21lbnQiKSxuLmpzeD1vLG4uanN4cz1vfSw5ODEzNCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO3QuZXhwb3J0cz1lLnIoOTkyOTMpfSw2MzQxNywoZSx0LG4pPT57InVzZSBzdHJpY3QiO3ZhciByPWUuaSg4MjYzNyksbz1TeW1ib2wuZm9yKCJyZWFjdC50cmFuc2l0aW9uYWwuZWxlbWVudCIpLHU9U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIiksaT1TeW1ib2wuZm9yKCJyZWFjdC5mcmFnbWVudCIpLGE9U3ltYm9sLmZvcigicmVhY3Quc3RyaWN0X21vZGUiKSxsPVN5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIikscz1TeW1ib2wuZm9yKCJyZWFjdC5jb25zdW1lciIpLGM9U3ltYm9sLmZvcigicmVhY3QuY29udGV4dCIpLGY9U3ltYm9sLmZvcigicmVhY3QuZm9yd2FyZF9yZWYiKSxkPVN5bWJvbC5mb3IoInJlYWN0LnN1c3BlbnNlIikscD1TeW1ib2wuZm9yKCJyZWFjdC5tZW1vIikseT1TeW1ib2wuZm9yKCJyZWFjdC5sYXp5Iiksdj1TeW1ib2wuZm9yKCJyZWFjdC5hY3Rpdml0eSIpLGg9U3ltYm9sLmZvcigicmVhY3Qudmlld190cmFuc2l0aW9uIiksXz1TeW1ib2wuaXRlcmF0b3IsYj17aXNNb3VudGVkOmZ1bmN0aW9uKCl7cmV0dXJuITF9LGVucXVldWVGb3JjZVVwZGF0ZTpmdW5jdGlvbigpe30sZW5xdWV1ZVJlcGxhY2VTdGF0ZTpmdW5jdGlvbigpe30sZW5xdWV1ZVNldFN0YXRlOmZ1bmN0aW9uKCl7fX0sZz1PYmplY3QuYXNzaWduLG09e307ZnVuY3Rpb24gRShlLHQsbil7dGhpcy5wcm9wcz1lLHRoaXMuY29udGV4dD10LHRoaXMucmVmcz1tLHRoaXMudXBkYXRlcj1ufHxifWZ1bmN0aW9uIFMoKXt9ZnVuY3Rpb24gUihlLHQsbil7dGhpcy5wcm9wcz1lLHRoaXMuY29udGV4dD10LHRoaXMucmVmcz1tLHRoaXMudXBkYXRlcj1ufHxifUUucHJvdG90eXBlLmlzUmVhY3RDb21wb25lbnQ9e30sRS5wcm90b3R5cGUuc2V0U3RhdGU9ZnVuY3Rpb24oZSx0KXtpZigib2JqZWN0IiE9dHlwZW9mIGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlJiZudWxsIT1lKXRocm93IEVycm9yKCJ0YWtlcyBhbiBvYmplY3Qgb2Ygc3RhdGUgdmFyaWFibGVzIHRvIHVwZGF0ZSBvciBhIGZ1bmN0aW9uIHdoaWNoIHJldHVybnMgYW4gb2JqZWN0IG9mIHN0YXRlIHZhcmlhYmxlcy4iKTt0aGlzLnVwZGF0ZXIuZW5xdWV1ZVNldFN0YXRlKHRoaXMsZSx0LCJzZXRTdGF0ZSIpfSxFLnByb3RvdHlwZS5mb3JjZVVwZGF0ZT1mdW5jdGlvbihlKXt0aGlzLnVwZGF0ZXIuZW5xdWV1ZUZvcmNlVXBkYXRlKHRoaXMsZSwiZm9yY2VVcGRhdGUiKX0sUy5wcm90b3R5cGU9RS5wcm90b3R5cGU7dmFyIE89Ui5wcm90b3R5cGU9bmV3IFM7Ty5jb25zdHJ1Y3Rvcj1SLGcoTyxFLnByb3RvdHlwZSksTy5pc1B1cmVSZWFjdENvbXBvbmVudD0hMDt2YXIgdz1BcnJheS5pc0FycmF5O2Z1bmN0aW9uIFQoKXt9dmFyIGo9e0g6bnVsbCxBOm51bGwsVDpudWxsLFM6bnVsbH0sQT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2Z1bmN0aW9uIGsoZSx0LG4pe3ZhciByPW4ucmVmO3JldHVybnskJHR5cGVvZjpvLHR5cGU6ZSxrZXk6dCxyZWY6dm9pZCAwIT09cj9yOm51bGwscHJvcHM6bn19ZnVuY3Rpb24gQyhlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiZlLiQkdHlwZW9mPT09b312YXIgTj0vXC8rL2c7ZnVuY3Rpb24gUChlLHQpe3ZhciBuLHI7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmbnVsbCE9ZS5rZXk/KG49IiIrZS5rZXkscj17Ij0iOiI9MCIsIjoiOiI9MiJ9LCIkIituLnJlcGxhY2UoL1s9Ol0vZyxmdW5jdGlvbihlKXtyZXR1cm4gcltlXX0pKTp0LnRvU3RyaW5nKDM2KX1mdW5jdGlvbiB4KGUsdCxuKXtpZihudWxsPT1lKXJldHVybiBlO3ZhciByPVtdLGk9MDtyZXR1cm4hZnVuY3Rpb24gZSh0LG4scixpLGEpe3ZhciBsLHMsYyxmPXR5cGVvZiB0OygidW5kZWZpbmVkIj09PWZ8fCJib29sZWFuIj09PWYpJiYodD1udWxsKTt2YXIgZD0hMTtpZihudWxsPT09dClkPSEwO2Vsc2Ugc3dpdGNoKGYpe2Nhc2UiYmlnaW50IjpjYXNlInN0cmluZyI6Y2FzZSJudW1iZXIiOmQ9ITA7YnJlYWs7Y2FzZSJvYmplY3QiOnN3aXRjaCh0LiQkdHlwZW9mKXtjYXNlIG86Y2FzZSB1OmQ9ITA7YnJlYWs7Y2FzZSB5OnJldHVybiBlKChkPXQuX2luaXQpKHQuX3BheWxvYWQpLG4scixpLGEpfX1pZihkKXJldHVybiBhPWEodCksZD0iIj09PWk/Ii4iK1AodCwwKTppLHcoYSk/KHI9IiIsbnVsbCE9ZCYmKHI9ZC5yZXBsYWNlKE4sIiQmLyIpKyIvIiksZShhLG4sciwiIixmdW5jdGlvbihlKXtyZXR1cm4gZX0pKTpudWxsIT1hJiYoQyhhKSYmKGw9YSxzPXIrKG51bGw9PWEua2V5fHx0JiZ0LmtleT09PWEua2V5PyIiOigiIithLmtleSkucmVwbGFjZShOLCIkJi8iKSsiLyIpK2QsYT1rKGwudHlwZSxzLGwucHJvcHMpKSxuLnB1c2goYSkpLDE7ZD0wO3ZhciBwPSIiPT09aT8iLiI6aSsiOiI7aWYodyh0KSlmb3IodmFyIHY9MDt2PHQubGVuZ3RoO3YrKylmPXArUChpPXRbdl0sdiksZCs9ZShpLG4scixmLGEpO2Vsc2UgaWYoImZ1bmN0aW9uIj09dHlwZW9mKHY9bnVsbD09PShjPXQpfHwib2JqZWN0IiE9dHlwZW9mIGM/bnVsbDoiZnVuY3Rpb24iPT10eXBlb2YoYz1fJiZjW19dfHxjWyJAQGl0ZXJhdG9yIl0pP2M6bnVsbCkpZm9yKHQ9di5jYWxsKHQpLHY9MDshKGk9dC5uZXh0KCkpLmRvbmU7KWY9cCtQKGk9aS52YWx1ZSx2KyspLGQrPWUoaSxuLHIsZixhKTtlbHNlIGlmKCJvYmplY3QiPT09Zil7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQudGhlbilyZXR1cm4gZShmdW5jdGlvbihlKXtzd2l0Y2goZS5zdGF0dXMpe2Nhc2UiZnVsZmlsbGVkIjpyZXR1cm4gZS52YWx1ZTtjYXNlInJlamVjdGVkIjp0aHJvdyBlLnJlYXNvbjtkZWZhdWx0OnN3aXRjaCgic3RyaW5nIj09dHlwZW9mIGUuc3RhdHVzP2UudGhlbihULFQpOihlLnN0YXR1cz0icGVuZGluZyIsZS50aGVuKGZ1bmN0aW9uKHQpeyJwZW5kaW5nIj09PWUuc3RhdHVzJiYoZS5zdGF0dXM9ImZ1bGZpbGxlZCIsZS52YWx1ZT10KX0sZnVuY3Rpb24odCl7InBlbmRpbmciPT09ZS5zdGF0dXMmJihlLnN0YXR1cz0icmVqZWN0ZWQiLGUucmVhc29uPXQpfSkpLGUuc3RhdHVzKXtjYXNlImZ1bGZpbGxlZCI6cmV0dXJuIGUudmFsdWU7Y2FzZSJyZWplY3RlZCI6dGhyb3cgZS5yZWFzb259fXRocm93IGV9KHQpLG4scixpLGEpO3Rocm93IEVycm9yKCJPYmplY3RzIGFyZSBub3QgdmFsaWQgYXMgYSBSZWFjdCBjaGlsZCAoZm91bmQ6ICIrKCJbb2JqZWN0IE9iamVjdF0iPT09KG49U3RyaW5nKHQpKT8ib2JqZWN0IHdpdGgga2V5cyB7IitPYmplY3Qua2V5cyh0KS5qb2luKCIsICIpKyJ9IjpuKSsiKS4gSWYgeW91IG1lYW50IHRvIHJlbmRlciBhIGNvbGxlY3Rpb24gb2YgY2hpbGRyZW4sIHVzZSBhbiBhcnJheSBpbnN0ZWFkLiIpfXJldHVybiBkfShlLHIsIiIsIiIsZnVuY3Rpb24oZSl7cmV0dXJuIHQuY2FsbChuLGUsaSsrKX0pLHJ9ZnVuY3Rpb24gRChlKXtpZigtMT09PWUuX3N0YXR1cyl7dmFyIHQ9ZS5fcmVzdWx0Oyh0PXQoKSkudGhlbihmdW5jdGlvbih0KXsoMD09PWUuX3N0YXR1c3x8LTE9PT1lLl9zdGF0dXMpJiYoZS5fc3RhdHVzPTEsZS5fcmVzdWx0PXQpfSxmdW5jdGlvbih0KXsoMD09PWUuX3N0YXR1c3x8LTE9PT1lLl9zdGF0dXMpJiYoZS5fc3RhdHVzPTIsZS5fcmVzdWx0PXQpfSksLTE9PT1lLl9zdGF0dXMmJihlLl9zdGF0dXM9MCxlLl9yZXN1bHQ9dCl9aWYoMT09PWUuX3N0YXR1cylyZXR1cm4gZS5fcmVzdWx0LmRlZmF1bHQ7dGhyb3cgZS5fcmVzdWx0fXZhciBNPSJmdW5jdGlvbiI9PXR5cGVvZiByZXBvcnRFcnJvcj9yZXBvcnRFcnJvcjpmdW5jdGlvbihlKXtpZigib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5FcnJvckV2ZW50KXt2YXIgdD1uZXcgd2luZG93LkVycm9yRXZlbnQoImVycm9yIix7YnViYmxlczohMCxjYW5jZWxhYmxlOiEwLG1lc3NhZ2U6Im9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmInN0cmluZyI9PXR5cGVvZiBlLm1lc3NhZ2U/U3RyaW5nKGUubWVzc2FnZSk6U3RyaW5nKGUpLGVycm9yOmV9KTtpZighd2luZG93LmRpc3BhdGNoRXZlbnQodCkpcmV0dXJufWVsc2UgaWYoIm9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJiJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHQuZW1pdClyZXR1cm4gdm9pZCByLmRlZmF1bHQuZW1pdCgidW5jYXVnaHRFeGNlcHRpb24iLGUpO2NvbnNvbGUuZXJyb3IoZSl9O2Z1bmN0aW9uICQoZSl7dmFyIHQ9ai5ULG49e307bi50eXBlcz1udWxsIT09dD90LnR5cGVzOm51bGwsai5UPW47dHJ5e3ZhciByPWUoKSxvPWouUztudWxsIT09byYmbyhuLHIpLCJvYmplY3QiPT10eXBlb2YgciYmbnVsbCE9PXImJiJmdW5jdGlvbiI9PXR5cGVvZiByLnRoZW4mJnIudGhlbihULE0pfWNhdGNoKGUpe00oZSl9ZmluYWxseXtudWxsIT09dCYmbnVsbCE9PW4udHlwZXMmJih0LnR5cGVzPW4udHlwZXMpLGouVD10fX1mdW5jdGlvbiBJKGUpe3ZhciB0PWouVDtpZihudWxsIT09dCl7dmFyIG49dC50eXBlcztudWxsPT09bj90LnR5cGVzPVtlXTotMT09PW4uaW5kZXhPZihlKSYmbi5wdXNoKGUpfWVsc2UgJChJLmJpbmQobnVsbCxlKSl9bi5BY3Rpdml0eT12LG4uQ2hpbGRyZW49e21hcDp4LGZvckVhY2g6ZnVuY3Rpb24oZSx0LG4pe3goZSxmdW5jdGlvbigpe3QuYXBwbHkodGhpcyxhcmd1bWVudHMpfSxuKX0sY291bnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9MDtyZXR1cm4geChlLGZ1bmN0aW9uKCl7dCsrfSksdH0sdG9BcnJheTpmdW5jdGlvbihlKXtyZXR1cm4geChlLGZ1bmN0aW9uKGUpe3JldHVybiBlfSl8fFtdfSxvbmx5OmZ1bmN0aW9uKGUpe2lmKCFDKGUpKXRocm93IEVycm9yKCJSZWFjdC5DaGlsZHJlbi5vbmx5IGV4cGVjdGVkIHRvIHJlY2VpdmUgYSBzaW5nbGUgUmVhY3QgZWxlbWVudCBjaGlsZC4iKTtyZXR1cm4gZX19LG4uQ29tcG9uZW50PUUsbi5GcmFnbWVudD1pLG4uUHJvZmlsZXI9bCxuLlB1cmVDb21wb25lbnQ9UixuLlN0cmljdE1vZGU9YSxuLlN1c3BlbnNlPWQsbi5WaWV3VHJhbnNpdGlvbj1oLG4uX19DTElFTlRfSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfV0FSTl9VU0VSU19USEVZX0NBTk5PVF9VUEdSQURFPWosbi5fX0NPTVBJTEVSX1JVTlRJTUU9e19fcHJvdG9fXzpudWxsLGM6ZnVuY3Rpb24oZSl7cmV0dXJuIGouSC51c2VNZW1vQ2FjaGUoZSl9fSxuLmFkZFRyYW5zaXRpb25UeXBlPUksbi5jYWNoZT1mdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseShudWxsLGFyZ3VtZW50cyl9fSxuLmNhY2hlU2lnbmFsPWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9LG4uY2xvbmVFbGVtZW50PWZ1bmN0aW9uKGUsdCxuKXtpZihudWxsPT1lKXRocm93IEVycm9yKCJUaGUgYXJndW1lbnQgbXVzdCBiZSBhIFJlYWN0IGVsZW1lbnQsIGJ1dCB5b3UgcGFzc2VkICIrZSsiLiIpO3ZhciByPWcoe30sZS5wcm9wcyksbz1lLmtleTtpZihudWxsIT10KWZvcih1IGluIHZvaWQgMCE9PXQua2V5JiYobz0iIit0LmtleSksdClBLmNhbGwodCx1KSYmImtleSIhPT11JiYiX19zZWxmIiE9PXUmJiJfX3NvdXJjZSIhPT11JiYoInJlZiIhPT11fHx2b2lkIDAhPT10LnJlZikmJihyW3VdPXRbdV0pO3ZhciB1PWFyZ3VtZW50cy5sZW5ndGgtMjtpZigxPT09dSlyLmNoaWxkcmVuPW47ZWxzZSBpZigxPHUpe2Zvcih2YXIgaT1BcnJheSh1KSxhPTA7YTx1O2ErKylpW2FdPWFyZ3VtZW50c1thKzJdO3IuY2hpbGRyZW49aX1yZXR1cm4gayhlLnR5cGUsbyxyKX0sbi5jcmVhdGVDb250ZXh0PWZ1bmN0aW9uKGUpe3JldHVybihlPXskJHR5cGVvZjpjLF9jdXJyZW50VmFsdWU6ZSxfY3VycmVudFZhbHVlMjplLF90aHJlYWRDb3VudDowLFByb3ZpZGVyOm51bGwsQ29uc3VtZXI6bnVsbH0pLlByb3ZpZGVyPWUsZS5Db25zdW1lcj17JCR0eXBlb2Y6cyxfY29udGV4dDplfSxlfSxuLmNyZWF0ZUVsZW1lbnQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLG89e30sdT1udWxsO2lmKG51bGwhPXQpZm9yKHIgaW4gdm9pZCAwIT09dC5rZXkmJih1PSIiK3Qua2V5KSx0KUEuY2FsbCh0LHIpJiYia2V5IiE9PXImJiJfX3NlbGYiIT09ciYmIl9fc291cmNlIiE9PXImJihvW3JdPXRbcl0pO3ZhciBpPWFyZ3VtZW50cy5sZW5ndGgtMjtpZigxPT09aSlvLmNoaWxkcmVuPW47ZWxzZSBpZigxPGkpe2Zvcih2YXIgYT1BcnJheShpKSxsPTA7bDxpO2wrKylhW2xdPWFyZ3VtZW50c1tsKzJdO28uY2hpbGRyZW49YX1pZihlJiZlLmRlZmF1bHRQcm9wcylmb3IociBpbiBpPWUuZGVmYXVsdFByb3BzKXZvaWQgMD09PW9bcl0mJihvW3JdPWlbcl0pO3JldHVybiBrKGUsdSxvKX0sbi5jcmVhdGVSZWY9ZnVuY3Rpb24oKXtyZXR1cm57Y3VycmVudDpudWxsfX0sbi5mb3J3YXJkUmVmPWZ1bmN0aW9uKGUpe3JldHVybnskJHR5cGVvZjpmLHJlbmRlcjplfX0sbi5pc1ZhbGlkRWxlbWVudD1DLG4ubGF6eT1mdW5jdGlvbihlKXtyZXR1cm57JCR0eXBlb2Y6eSxfcGF5bG9hZDp7X3N0YXR1czotMSxfcmVzdWx0OmV9LF9pbml0OkR9fSxuLm1lbW89ZnVuY3Rpb24oZSx0KXtyZXR1cm57JCR0eXBlb2Y6cCx0eXBlOmUsY29tcGFyZTp2b2lkIDA9PT10P251bGw6dH19LG4uc3RhcnRUcmFuc2l0aW9uPSQsbi51bnN0YWJsZV91c2VDYWNoZVJlZnJlc2g9ZnVuY3Rpb24oKXtyZXR1cm4gai5ILnVzZUNhY2hlUmVmcmVzaCgpfSxuLnVzZT1mdW5jdGlvbihlKXtyZXR1cm4gai5ILnVzZShlKX0sbi51c2VBY3Rpb25TdGF0ZT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIGouSC51c2VBY3Rpb25TdGF0ZShlLHQsbil9LG4udXNlQ2FsbGJhY2s9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gai5ILnVzZUNhbGxiYWNrKGUsdCl9LG4udXNlQ29udGV4dD1mdW5jdGlvbihlKXtyZXR1cm4gai5ILnVzZUNvbnRleHQoZSl9LG4udXNlRGVidWdWYWx1ZT1mdW5jdGlvbigpe30sbi51c2VEZWZlcnJlZFZhbHVlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGouSC51c2VEZWZlcnJlZFZhbHVlKGUsdCl9LG4udXNlRWZmZWN0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGouSC51c2VFZmZlY3QoZSx0KX0sbi51c2VFZmZlY3RFdmVudD1mdW5jdGlvbihlKXtyZXR1cm4gai5ILnVzZUVmZmVjdEV2ZW50KGUpfSxuLnVzZUlkPWZ1bmN0aW9uKCl7cmV0dXJuIGouSC51c2VJZCgpfSxuLnVzZUltcGVyYXRpdmVIYW5kbGU9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBqLkgudXNlSW1wZXJhdGl2ZUhhbmRsZShlLHQsbil9LG4udXNlSW5zZXJ0aW9uRWZmZWN0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGouSC51c2VJbnNlcnRpb25FZmZlY3QoZSx0KX0sbi51c2VMYXlvdXRFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gai5ILnVzZUxheW91dEVmZmVjdChlLHQpfSxuLnVzZU1lbW89ZnVuY3Rpb24oZSx0KXtyZXR1cm4gai5ILnVzZU1lbW8oZSx0KX0sbi51c2VPcHRpbWlzdGljPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGouSC51c2VPcHRpbWlzdGljKGUsdCl9LG4udXNlUmVkdWNlcj1mdW5jdGlvbihlLHQsbil7cmV0dXJuIGouSC51c2VSZWR1Y2VyKGUsdCxuKX0sbi51c2VSZWY9ZnVuY3Rpb24oZSl7cmV0dXJuIGouSC51c2VSZWYoZSl9LG4udXNlU3RhdGU9ZnVuY3Rpb24oZSl7cmV0dXJuIGouSC51c2VTdGF0ZShlKX0sbi51c2VTeW5jRXh0ZXJuYWxTdG9yZT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIGouSC51c2VTeW5jRXh0ZXJuYWxTdG9yZShlLHQsbil9LG4udXNlVHJhbnNpdGlvbj1mdW5jdGlvbigpe3JldHVybiBqLkgudXNlVHJhbnNpdGlvbigpfSxuLnZlcnNpb249IjE5LjMuMC1jYW5hcnktZjkzYjlmZDQtMjAyNTEyMTcifSw3NTIwMSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO3QuZXhwb3J0cz1lLnIoNjM0MTcpfSw0NDA2NiwoZSx0LG4pPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIFdlYWtNYXApcmV0dXJuIG51bGw7dmFyIHQ9bmV3IFdlYWtNYXAsbj1uZXcgV2Vha01hcDtyZXR1cm4ocj1mdW5jdGlvbihlKXtyZXR1cm4gZT9uOnR9KShlKX1uLl89ZnVuY3Rpb24oZSx0KXtpZighdCYmZSYmZS5fX2VzTW9kdWxlKXJldHVybiBlO2lmKG51bGw9PT1lfHwib2JqZWN0IiE9dHlwZW9mIGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlKXJldHVybntkZWZhdWx0OmV9O3ZhciBuPXIodCk7aWYobiYmbi5oYXMoZSkpcmV0dXJuIG4uZ2V0KGUpO3ZhciBvPXtfX3Byb3RvX186bnVsbH0sdT1PYmplY3QuZGVmaW5lUHJvcGVydHkmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7Zm9yKHZhciBpIGluIGUpaWYoImRlZmF1bHQiIT09aSYmT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsaSkpe3ZhciBhPXU/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLGkpOm51bGw7YSYmKGEuZ2V0fHxhLnNldCk/T2JqZWN0LmRlZmluZVByb3BlcnR5KG8saSxhKTpvW2ldPWVbaV19cmV0dXJuIG8uZGVmYXVsdD1lLG4mJm4uc2V0KGUsbyksb319LDgxMjU4LChlLHQsbik9PnsidXNlIHN0cmljdCI7bi5fPWZ1bmN0aW9uKGUpe3JldHVybiBlJiZlLl9fZXNNb2R1bGU/ZTp7ZGVmYXVsdDplfX19LDQ5MjExLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByPXtiaW5kU25hcHNob3Q6ZnVuY3Rpb24oKXtyZXR1cm4gc30sY3JlYXRlQXN5bmNMb2NhbFN0b3JhZ2U6ZnVuY3Rpb24oKXtyZXR1cm4gbH0sY3JlYXRlU25hcHNob3Q6ZnVuY3Rpb24oKXtyZXR1cm4gY319O2Zvcih2YXIgbyBpbiByKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLG8se2VudW1lcmFibGU6ITAsZ2V0OnJbb119KTtsZXQgdT1PYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIkludmFyaWFudDogQXN5bmNMb2NhbFN0b3JhZ2UgYWNjZXNzZWQgaW4gcnVudGltZSB3aGVyZSBpdCBpcyBub3QgYXZhaWxhYmxlIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU1MDQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2xhc3MgaXtkaXNhYmxlKCl7dGhyb3cgdX1nZXRTdG9yZSgpe31ydW4oKXt0aHJvdyB1fWV4aXQoKXt0aHJvdyB1fWVudGVyV2l0aCgpe3Rocm93IHV9c3RhdGljIGJpbmQoZSl7cmV0dXJuIGV9fWxldCBhPSJ1Ij50eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcy5Bc3luY0xvY2FsU3RvcmFnZTtmdW5jdGlvbiBsKCl7cmV0dXJuIGE/bmV3IGE6bmV3IGl9ZnVuY3Rpb24gcyhlKXtyZXR1cm4gYT9hLmJpbmQoZSk6aS5iaW5kKGUpfWZ1bmN0aW9uIGMoKXtyZXR1cm4gYT9hLnNuYXBzaG90KCk6ZnVuY3Rpb24oZSwuLi50KXtyZXR1cm4gZSguLi50KX19fSw1NjU0OSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO3ZhciByPWUucig3NTIwMSk7ZnVuY3Rpb24gbyhlKXt2YXIgdD0iaHR0cHM6Ly9yZWFjdC5kZXYvZXJyb3JzLyIrZTtpZigxPGFyZ3VtZW50cy5sZW5ndGgpe3QrPSI/YXJnc1tdPSIrZW5jb2RlVVJJQ29tcG9uZW50KGFyZ3VtZW50c1sxXSk7Zm9yKHZhciBuPTI7bjxhcmd1bWVudHMubGVuZ3RoO24rKyl0Kz0iJmFyZ3NbXT0iK2VuY29kZVVSSUNvbXBvbmVudChhcmd1bWVudHNbbl0pfXJldHVybiJNaW5pZmllZCBSZWFjdCBlcnJvciAjIitlKyI7IHZpc2l0ICIrdCsiIGZvciB0aGUgZnVsbCBtZXNzYWdlIG9yIHVzZSB0aGUgbm9uLW1pbmlmaWVkIGRldiBlbnZpcm9ubWVudCBmb3IgZnVsbCBlcnJvcnMgYW5kIGFkZGl0aW9uYWwgaGVscGZ1bCB3YXJuaW5ncy4ifWZ1bmN0aW9uIHUoKXt9dmFyIGk9e2Q6e2Y6dSxyOmZ1bmN0aW9uKCl7dGhyb3cgRXJyb3Iobyg1MjIpKX0sRDp1LEM6dSxMOnUsbTp1LFg6dSxTOnUsTTp1fSxwOjAsZmluZERPTU5vZGU6bnVsbH0sYT1TeW1ib2wuZm9yKCJyZWFjdC5wb3J0YWwiKSxsPVN5bWJvbC5mb3IoInJlYWN0Lm9wdGltaXN0aWNfa2V5Iikscz1yLl9fQ0xJRU5UX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1dBUk5fVVNFUlNfVEhFWV9DQU5OT1RfVVBHUkFERTtmdW5jdGlvbiBjKGUsdCl7cmV0dXJuImZvbnQiPT09ZT8iIjoic3RyaW5nIj09dHlwZW9mIHQ/InVzZS1jcmVkZW50aWFscyI9PT10P3Q6IiI6dm9pZCAwfW4uX19ET01fSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfV0FSTl9VU0VSU19USEVZX0NBTk5PVF9VUEdSQURFPWksbi5jcmVhdGVQb3J0YWw9ZnVuY3Rpb24oZSx0KXt2YXIgbj0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06bnVsbDtpZighdHx8MSE9PXQubm9kZVR5cGUmJjkhPT10Lm5vZGVUeXBlJiYxMSE9PXQubm9kZVR5cGUpdGhyb3cgRXJyb3IobygyOTkpKTtyZXR1cm4gZnVuY3Rpb24oZSx0LG4pe3ZhciByPTM8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTpudWxsO3JldHVybnskJHR5cGVvZjphLGtleTpudWxsPT1yP251bGw6cj09PWw/bDoiIityLGNoaWxkcmVuOmUsY29udGFpbmVySW5mbzp0LGltcGxlbWVudGF0aW9uOm59fShlLHQsbnVsbCxuKX0sbi5mbHVzaFN5bmM9ZnVuY3Rpb24oZSl7dmFyIHQ9cy5ULG49aS5wO3RyeXtpZihzLlQ9bnVsbCxpLnA9MixlKXJldHVybiBlKCl9ZmluYWxseXtzLlQ9dCxpLnA9bixpLmQuZigpfX0sbi5wcmVjb25uZWN0PWZ1bmN0aW9uKGUsdCl7InN0cmluZyI9PXR5cGVvZiBlJiYodD10PyJzdHJpbmciPT10eXBlb2YodD10LmNyb3NzT3JpZ2luKT8idXNlLWNyZWRlbnRpYWxzIj09PXQ/dDoiIjp2b2lkIDA6bnVsbCxpLmQuQyhlLHQpKX0sbi5wcmVmZXRjaEROUz1mdW5jdGlvbihlKXsic3RyaW5nIj09dHlwZW9mIGUmJmkuZC5EKGUpfSxuLnByZWluaXQ9ZnVuY3Rpb24oZSx0KXtpZigic3RyaW5nIj09dHlwZW9mIGUmJnQmJiJzdHJpbmciPT10eXBlb2YgdC5hcyl7dmFyIG49dC5hcyxyPWMobix0LmNyb3NzT3JpZ2luKSxvPSJzdHJpbmciPT10eXBlb2YgdC5pbnRlZ3JpdHk/dC5pbnRlZ3JpdHk6dm9pZCAwLHU9InN0cmluZyI9PXR5cGVvZiB0LmZldGNoUHJpb3JpdHk/dC5mZXRjaFByaW9yaXR5OnZvaWQgMDsic3R5bGUiPT09bj9pLmQuUyhlLCJzdHJpbmciPT10eXBlb2YgdC5wcmVjZWRlbmNlP3QucHJlY2VkZW5jZTp2b2lkIDAse2Nyb3NzT3JpZ2luOnIsaW50ZWdyaXR5Om8sZmV0Y2hQcmlvcml0eTp1fSk6InNjcmlwdCI9PT1uJiZpLmQuWChlLHtjcm9zc09yaWdpbjpyLGludGVncml0eTpvLGZldGNoUHJpb3JpdHk6dSxub25jZToic3RyaW5nIj09dHlwZW9mIHQubm9uY2U/dC5ub25jZTp2b2lkIDB9KX19LG4ucHJlaW5pdE1vZHVsZT1mdW5jdGlvbihlLHQpe2lmKCJzdHJpbmciPT10eXBlb2YgZSlpZigib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10KXtpZihudWxsPT10LmFzfHwic2NyaXB0Ij09PXQuYXMpe3ZhciBuPWModC5hcyx0LmNyb3NzT3JpZ2luKTtpLmQuTShlLHtjcm9zc09yaWdpbjpuLGludGVncml0eToic3RyaW5nIj09dHlwZW9mIHQuaW50ZWdyaXR5P3QuaW50ZWdyaXR5OnZvaWQgMCxub25jZToic3RyaW5nIj09dHlwZW9mIHQubm9uY2U/dC5ub25jZTp2b2lkIDB9KX19ZWxzZSBudWxsPT10JiZpLmQuTShlKX0sbi5wcmVsb2FkPWZ1bmN0aW9uKGUsdCl7aWYoInN0cmluZyI9PXR5cGVvZiBlJiYib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10JiYic3RyaW5nIj09dHlwZW9mIHQuYXMpe3ZhciBuPXQuYXMscj1jKG4sdC5jcm9zc09yaWdpbik7aS5kLkwoZSxuLHtjcm9zc09yaWdpbjpyLGludGVncml0eToic3RyaW5nIj09dHlwZW9mIHQuaW50ZWdyaXR5P3QuaW50ZWdyaXR5OnZvaWQgMCxub25jZToic3RyaW5nIj09dHlwZW9mIHQubm9uY2U/dC5ub25jZTp2b2lkIDAsdHlwZToic3RyaW5nIj09dHlwZW9mIHQudHlwZT90LnR5cGU6dm9pZCAwLGZldGNoUHJpb3JpdHk6InN0cmluZyI9PXR5cGVvZiB0LmZldGNoUHJpb3JpdHk/dC5mZXRjaFByaW9yaXR5OnZvaWQgMCxyZWZlcnJlclBvbGljeToic3RyaW5nIj09dHlwZW9mIHQucmVmZXJyZXJQb2xpY3k/dC5yZWZlcnJlclBvbGljeTp2b2lkIDAsaW1hZ2VTcmNTZXQ6InN0cmluZyI9PXR5cGVvZiB0LmltYWdlU3JjU2V0P3QuaW1hZ2VTcmNTZXQ6dm9pZCAwLGltYWdlU2l6ZXM6InN0cmluZyI9PXR5cGVvZiB0LmltYWdlU2l6ZXM/dC5pbWFnZVNpemVzOnZvaWQgMCxtZWRpYToic3RyaW5nIj09dHlwZW9mIHQubWVkaWE/dC5tZWRpYTp2b2lkIDB9KX19LG4ucHJlbG9hZE1vZHVsZT1mdW5jdGlvbihlLHQpe2lmKCJzdHJpbmciPT10eXBlb2YgZSlpZih0KXt2YXIgbj1jKHQuYXMsdC5jcm9zc09yaWdpbik7aS5kLm0oZSx7YXM6InN0cmluZyI9PXR5cGVvZiB0LmFzJiYic2NyaXB0IiE9PXQuYXM/dC5hczp2b2lkIDAsY3Jvc3NPcmlnaW46bixpbnRlZ3JpdHk6InN0cmluZyI9PXR5cGVvZiB0LmludGVncml0eT90LmludGVncml0eTp2b2lkIDB9KX1lbHNlIGkuZC5tKGUpfSxuLnJlcXVlc3RGb3JtUmVzZXQ9ZnVuY3Rpb24oZSl7aS5kLnIoZSl9LG4udW5zdGFibGVfYmF0Y2hlZFVwZGF0ZXM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZSh0KX0sbi51c2VGb3JtU3RhdGU9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBzLkgudXNlRm9ybVN0YXRlKGUsdCxuKX0sbi51c2VGb3JtU3RhdHVzPWZ1bmN0aW9uKCl7cmV0dXJuIHMuSC51c2VIb3N0VHJhbnNpdGlvblN0YXR1cygpfSxuLnZlcnNpb249IjE5LjMuMC1jYW5hcnktZjkzYjlmZDQtMjAyNTEyMTcifSwyOTA4MCwoZSx0LG4pPT57InVzZSBzdHJpY3QiOyFmdW5jdGlvbiBlKCl7aWYoInUiPnR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18mJiJmdW5jdGlvbiI9PXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uY2hlY2tEQ0UpdHJ5e19fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXy5jaGVja0RDRShlKX1jYXRjaChlKXtjb25zb2xlLmVycm9yKGUpfX0oKSx0LmV4cG9ydHM9ZS5yKDU2NTQ5KX0sODg3NzQsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIHI9e2dldERlcGxveW1lbnRJZDpmdW5jdGlvbigpe3JldHVybiB1fSxnZXREZXBsb3ltZW50SWRRdWVyeU9yRW1wdHlTdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gaX19O2Zvcih2YXIgbyBpbiByKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLG8se2VudW1lcmFibGU6ITAsZ2V0OnJbb119KTtmdW5jdGlvbiB1KCl7cmV0dXJuITF9ZnVuY3Rpb24gaSgpe3JldHVybiIifX0sNDk3MDYsKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgcj1lLnIoMjkwODApLG89e3N0cmVhbTohMH0sdT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2Z1bmN0aW9uIGkodCl7dmFyIG49ZS5yKHQpO3JldHVybiJmdW5jdGlvbiIhPXR5cGVvZiBuLnRoZW58fCJmdWxmaWxsZWQiPT09bi5zdGF0dXM/bnVsbDoobi50aGVuKGZ1bmN0aW9uKGUpe24uc3RhdHVzPSJmdWxmaWxsZWQiLG4udmFsdWU9ZX0sZnVuY3Rpb24oZSl7bi5zdGF0dXM9InJlamVjdGVkIixuLnJlYXNvbj1lfSksbil9dmFyIGE9bmV3IFdlYWtTZXQsbD1uZXcgV2Vha1NldDtmdW5jdGlvbiBzKCl7fWZ1bmN0aW9uIGModCl7Zm9yKHZhciBuPXRbMV0scj1bXSxvPTA7bzxuLmxlbmd0aDtvKyspe3ZhciB1PWUuTChuW29dKTtpZihsLmhhcyh1KXx8ci5wdXNoKHUpLCFhLmhhcyh1KSl7dmFyIGM9bC5hZGQuYmluZChsLHUpO3UudGhlbihjLHMpLGEuYWRkKHUpfX1yZXR1cm4gND09PXQubGVuZ3RoPzA9PT1yLmxlbmd0aD9pKHRbMF0pOlByb21pc2UuYWxsKHIpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gaSh0WzBdKX0pOjA8ci5sZW5ndGg/UHJvbWlzZS5hbGwocik6bnVsbH1mdW5jdGlvbiBmKHQpe3ZhciBuPWUucih0WzBdKTtpZig0PT09dC5sZW5ndGgmJiJmdW5jdGlvbiI9PXR5cGVvZiBuLnRoZW4paWYoImZ1bGZpbGxlZCI9PT1uLnN0YXR1cyluPW4udmFsdWU7ZWxzZSB0aHJvdyBuLnJlYXNvbjtyZXR1cm4iKiI9PT10WzJdP246IiI9PT10WzJdP24uX19lc01vZHVsZT9uLmRlZmF1bHQ6bjp1LmNhbGwobix0WzJdKT9uW3RbMl1dOnZvaWQgMH12YXIgZD1yLl9fRE9NX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1dBUk5fVVNFUlNfVEhFWV9DQU5OT1RfVVBHUkFERSxwPVN5bWJvbC5mb3IoInJlYWN0LnRyYW5zaXRpb25hbC5lbGVtZW50IikseT1TeW1ib2wuZm9yKCJyZWFjdC5sYXp5Iiksdj1TeW1ib2wuaXRlcmF0b3IsaD1TeW1ib2wuYXN5bmNJdGVyYXRvcixfPUFycmF5LmlzQXJyYXksYj1PYmplY3QuZ2V0UHJvdG90eXBlT2YsZz1PYmplY3QucHJvdG90eXBlLG09bmV3IFdlYWtNYXA7ZnVuY3Rpb24gRShlLHQsbil7bS5oYXMoZSl8fG0uc2V0KGUse2lkOnQsb3JpZ2luYWxCaW5kOmUuYmluZCxib3VuZDpufSl9ZnVuY3Rpb24gUyhlLHQsbil7dGhpcy5zdGF0dXM9ZSx0aGlzLnZhbHVlPXQsdGhpcy5yZWFzb249bn1mdW5jdGlvbiBSKGUpe3N3aXRjaChlLnN0YXR1cyl7Y2FzZSJyZXNvbHZlZF9tb2RlbCI6RChlKTticmVhaztjYXNlInJlc29sdmVkX21vZHVsZSI6TShlKX1zd2l0Y2goZS5zdGF0dXMpe2Nhc2UiZnVsZmlsbGVkIjpyZXR1cm4gZS52YWx1ZTtjYXNlInBlbmRpbmciOmNhc2UiYmxvY2tlZCI6Y2FzZSJoYWx0ZWQiOnRocm93IGU7ZGVmYXVsdDp0aHJvdyBlLnJlYXNvbn19ZnVuY3Rpb24gTyhlLHQsbixyKXtmb3IodmFyIG89MDtvPHQubGVuZ3RoO28rKyl7dmFyIHU9dFtvXTsiZnVuY3Rpb24iPT10eXBlb2YgdT91KG4pOkwoZSx1LG4scil9fWZ1bmN0aW9uIHcoZSx0LG4pe2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgbz10W3JdOyJmdW5jdGlvbiI9PXR5cGVvZiBvP28obik6VShlLG8uaGFuZGxlcixuKX19ZnVuY3Rpb24gVChlLHQpe3ZhciBuPXQuaGFuZGxlci5jaHVuaztpZihudWxsPT09bilyZXR1cm4gbnVsbDtpZihuPT09ZSlyZXR1cm4gdC5oYW5kbGVyO2lmKG51bGwhPT0odD1uLnZhbHVlKSlmb3Iobj0wO248dC5sZW5ndGg7bisrKXt2YXIgcj10W25dO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiByJiZudWxsIT09KHI9VChlLHIpKSlyZXR1cm4gcn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBqKGUsdCxuLHIpe3N3aXRjaCh0LnN0YXR1cyl7Y2FzZSJmdWxmaWxsZWQiOk8oZSxuLHQudmFsdWUsdCk7YnJlYWs7Y2FzZSJibG9ja2VkIjpmb3IodmFyIG89MDtvPG4ubGVuZ3RoO28rKyl7dmFyIHU9bltvXTtpZigiZnVuY3Rpb24iIT10eXBlb2YgdSl7dmFyIGk9VCh0LHUpO2lmKG51bGwhPT1pKXN3aXRjaChMKGUsdSxpLnZhbHVlLHQpLG4uc3BsaWNlKG8sMSksby0tLG51bGwhPT1yJiYtMSE9PSh1PXIuaW5kZXhPZih1KSkmJnIuc3BsaWNlKHUsMSksdC5zdGF0dXMpe2Nhc2UiZnVsZmlsbGVkIjpPKGUsbix0LnZhbHVlLHQpO3JldHVybjtjYXNlInJlamVjdGVkIjpudWxsIT09ciYmdyhlLHIsdC5yZWFzb24pO3JldHVybn19fWNhc2UicGVuZGluZyI6aWYodC52YWx1ZSlmb3IoZT0wO2U8bi5sZW5ndGg7ZSsrKXQudmFsdWUucHVzaChuW2VdKTtlbHNlIHQudmFsdWU9bjtpZih0LnJlYXNvbil7aWYocilmb3Iobj0wO248ci5sZW5ndGg7bisrKXQucmVhc29uLnB1c2gocltuXSl9ZWxzZSB0LnJlYXNvbj1yO2JyZWFrO2Nhc2UicmVqZWN0ZWQiOnImJncoZSxyLHQucmVhc29uKX19ZnVuY3Rpb24gQShlLHQsbil7aWYoInBlbmRpbmciIT09dC5zdGF0dXMmJiJibG9ja2VkIiE9PXQuc3RhdHVzKXQucmVhc29uLmVycm9yKG4pO2Vsc2V7dmFyIHI9dC5yZWFzb247dC5zdGF0dXM9InJlamVjdGVkIix0LnJlYXNvbj1uLG51bGwhPT1yJiZ3KGUscixuKX19ZnVuY3Rpb24gayhlLHQsbil7cmV0dXJuIG5ldyBTKCJyZXNvbHZlZF9tb2RlbCIsKG4/J3siZG9uZSI6dHJ1ZSwidmFsdWUiOic6J3siZG9uZSI6ZmFsc2UsInZhbHVlIjonKSt0KyJ9IixlKX1mdW5jdGlvbiBDKGUsdCxuLHIpe04oZSx0LChyPyd7ImRvbmUiOnRydWUsInZhbHVlIjonOid7ImRvbmUiOmZhbHNlLCJ2YWx1ZSI6JykrbisifSIpfWZ1bmN0aW9uIE4oZSx0LG4pe2lmKCJwZW5kaW5nIiE9PXQuc3RhdHVzKXQucmVhc29uLmVucXVldWVNb2RlbChuKTtlbHNle3ZhciByPXQudmFsdWUsbz10LnJlYXNvbjt0LnN0YXR1cz0icmVzb2x2ZWRfbW9kZWwiLHQudmFsdWU9bix0LnJlYXNvbj1lLG51bGwhPT1yJiYoRCh0KSxqKGUsdCxyLG8pKX19ZnVuY3Rpb24gUChlLHQsbil7aWYoInBlbmRpbmciPT09dC5zdGF0dXN8fCJibG9ja2VkIj09PXQuc3RhdHVzKXt2YXIgcj10LnZhbHVlLG89dC5yZWFzb247dC5zdGF0dXM9InJlc29sdmVkX21vZHVsZSIsdC52YWx1ZT1uLHQucmVhc29uPW51bGwsbnVsbCE9PXImJihNKHQpLGooZSx0LHIsbykpfX1TLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKFByb21pc2UucHJvdG90eXBlKSxTLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKGUsdCl7c3dpdGNoKHRoaXMuc3RhdHVzKXtjYXNlInJlc29sdmVkX21vZGVsIjpEKHRoaXMpO2JyZWFrO2Nhc2UicmVzb2x2ZWRfbW9kdWxlIjpNKHRoaXMpfXN3aXRjaCh0aGlzLnN0YXR1cyl7Y2FzZSJmdWxmaWxsZWQiOiJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlKHRoaXMudmFsdWUpO2JyZWFrO2Nhc2UicGVuZGluZyI6Y2FzZSJibG9ja2VkIjoiZnVuY3Rpb24iPT10eXBlb2YgZSYmKG51bGw9PT10aGlzLnZhbHVlJiYodGhpcy52YWx1ZT1bXSksdGhpcy52YWx1ZS5wdXNoKGUpKSwiZnVuY3Rpb24iPT10eXBlb2YgdCYmKG51bGw9PT10aGlzLnJlYXNvbiYmKHRoaXMucmVhc29uPVtdKSx0aGlzLnJlYXNvbi5wdXNoKHQpKTticmVhaztjYXNlImhhbHRlZCI6YnJlYWs7ZGVmYXVsdDoiZnVuY3Rpb24iPT10eXBlb2YgdCYmdCh0aGlzLnJlYXNvbil9fTt2YXIgeD1udWxsO2Z1bmN0aW9uIEQoZSl7dmFyIHQ9eDt4PW51bGw7dmFyIG49ZS52YWx1ZSxyPWUucmVhc29uO2Uuc3RhdHVzPSJibG9ja2VkIixlLnZhbHVlPW51bGwsZS5yZWFzb249bnVsbDt0cnl7dmFyIG89SlNPTi5wYXJzZShuLHIuX2Zyb21KU09OKSx1PWUudmFsdWU7aWYobnVsbCE9PXUpZm9yKGUudmFsdWU9bnVsbCxlLnJlYXNvbj1udWxsLG49MDtuPHUubGVuZ3RoO24rKyl7dmFyIGk9dVtuXTsiZnVuY3Rpb24iPT10eXBlb2YgaT9pKG8pOkwocixpLG8sZSl9aWYobnVsbCE9PXgpe2lmKHguZXJyb3JlZCl0aHJvdyB4LnJlYXNvbjtpZigwPHguZGVwcyl7eC52YWx1ZT1vLHguY2h1bms9ZTtyZXR1cm59fWUuc3RhdHVzPSJmdWxmaWxsZWQiLGUudmFsdWU9b31jYXRjaCh0KXtlLnN0YXR1cz0icmVqZWN0ZWQiLGUucmVhc29uPXR9ZmluYWxseXt4PXR9fWZ1bmN0aW9uIE0oZSl7dHJ5e3ZhciB0PWYoZS52YWx1ZSk7ZS5zdGF0dXM9ImZ1bGZpbGxlZCIsZS52YWx1ZT10fWNhdGNoKHQpe2Uuc3RhdHVzPSJyZWplY3RlZCIsZS5yZWFzb249dH19ZnVuY3Rpb24gJChlLHQpe2UuX2Nsb3NlZD0hMCxlLl9jbG9zZWRSZWFzb249dCxlLl9jaHVua3MuZm9yRWFjaChmdW5jdGlvbihuKXsicGVuZGluZyI9PT1uLnN0YXR1cz9BKGUsbix0KToiZnVsZmlsbGVkIj09PW4uc3RhdHVzJiZudWxsIT09bi5yZWFzb24mJm4ucmVhc29uLmVycm9yKHQpfSl9ZnVuY3Rpb24gSShlKXtyZXR1cm57JCR0eXBlb2Y6eSxfcGF5bG9hZDplLF9pbml0OlJ9fWZ1bmN0aW9uIEgoZSx0KXt2YXIgbj1lLl9jaHVua3Mscj1uLmdldCh0KTtyZXR1cm4gcnx8KHI9ZS5fY2xvc2VkP25ldyBTKCJyZWplY3RlZCIsbnVsbCxlLl9jbG9zZWRSZWFzb24pOm5ldyBTKCJwZW5kaW5nIixudWxsLG51bGwpLG4uc2V0KHQscikpLHJ9ZnVuY3Rpb24gTChlLHQsbil7dmFyIHI9dC5oYW5kbGVyLG89dC5wYXJlbnRPYmplY3QsaT10LmtleSxhPXQubWFwLGw9dC5wYXRoO3RyeXtmb3IodmFyIHM9MTtzPGwubGVuZ3RoO3MrKyl7Zm9yKDsib2JqZWN0Ij09dHlwZW9mIG4mJm51bGwhPT1uJiZuLiQkdHlwZW9mPT09eTspe3ZhciBjPW4uX3BheWxvYWQ7aWYoYz09PXIuY2h1bmspbj1yLnZhbHVlO2Vsc2V7c3dpdGNoKGMuc3RhdHVzKXtjYXNlInJlc29sdmVkX21vZGVsIjpEKGMpO2JyZWFrO2Nhc2UicmVzb2x2ZWRfbW9kdWxlIjpNKGMpfXN3aXRjaChjLnN0YXR1cyl7Y2FzZSJmdWxmaWxsZWQiOm49Yy52YWx1ZTtjb250aW51ZTtjYXNlImJsb2NrZWQiOnZhciBmPVQoYyx0KTtpZihudWxsIT09Zil7bj1mLnZhbHVlO2NvbnRpbnVlfWNhc2UicGVuZGluZyI6bC5zcGxpY2UoMCxzLTEpLG51bGw9PT1jLnZhbHVlP2MudmFsdWU9W3RdOmMudmFsdWUucHVzaCh0KSxudWxsPT09Yy5yZWFzb24/Yy5yZWFzb249W3RdOmMucmVhc29uLnB1c2godCk7cmV0dXJuO2Nhc2UiaGFsdGVkIjpyZXR1cm47ZGVmYXVsdDpVKGUsdC5oYW5kbGVyLGMucmVhc29uKTtyZXR1cm59fX12YXIgZD1sW3NdO2lmKCJvYmplY3QiPT10eXBlb2YgbiYmbnVsbCE9PW4mJnUuY2FsbChuLGQpKW49bltkXTtlbHNlIHRocm93IEVycm9yKCJJbnZhbGlkIHJlZmVyZW5jZS4iKX1mb3IoOyJvYmplY3QiPT10eXBlb2YgbiYmbnVsbCE9PW4mJm4uJCR0eXBlb2Y9PT15Oyl7dmFyIHY9bi5fcGF5bG9hZDtpZih2PT09ci5jaHVuayluPXIudmFsdWU7ZWxzZXtzd2l0Y2godi5zdGF0dXMpe2Nhc2UicmVzb2x2ZWRfbW9kZWwiOkQodik7YnJlYWs7Y2FzZSJyZXNvbHZlZF9tb2R1bGUiOk0odil9aWYoImZ1bGZpbGxlZCI9PT12LnN0YXR1cyl7bj12LnZhbHVlO2NvbnRpbnVlfWJyZWFrfX12YXIgaD1hKGUsbixvLGkpO2lmKCJfX3Byb3RvX18iIT09aSYmKG9baV09aCksIiI9PT1pJiZudWxsPT09ci52YWx1ZSYmKHIudmFsdWU9aCksb1swXT09PXAmJiJvYmplY3QiPT10eXBlb2Ygci52YWx1ZSYmbnVsbCE9PXIudmFsdWUmJnIudmFsdWUuJCR0eXBlb2Y9PT1wKXt2YXIgXz1yLnZhbHVlOyIzIj09PWkmJihfLnByb3BzPWgpfX1jYXRjaChuKXtVKGUsdC5oYW5kbGVyLG4pO3JldHVybn1yLmRlcHMtLSwwPT09ci5kZXBzJiZudWxsIT09KHQ9ci5jaHVuaykmJiJibG9ja2VkIj09PXQuc3RhdHVzJiYobj10LnZhbHVlLHQuc3RhdHVzPSJmdWxmaWxsZWQiLHQudmFsdWU9ci52YWx1ZSx0LnJlYXNvbj1yLnJlYXNvbixudWxsIT09biYmTyhlLG4sci52YWx1ZSx0KSl9ZnVuY3Rpb24gVShlLHQsbil7dC5lcnJvcmVkfHwodC5lcnJvcmVkPSEwLHQudmFsdWU9bnVsbCx0LnJlYXNvbj1uLG51bGwhPT0odD10LmNodW5rKSYmImJsb2NrZWQiPT09dC5zdGF0dXMmJkEoZSx0LG4pKX1mdW5jdGlvbiBGKGUsdCxuLHIsbyx1KXtyZXR1cm4geD8ocj14LHIuZGVwcysrKTpyPXg9e3BhcmVudDpudWxsLGNodW5rOm51bGwsdmFsdWU6bnVsbCxyZWFzb246bnVsbCxkZXBzOjEsZXJyb3JlZDohMX0sdD17aGFuZGxlcjpyLHBhcmVudE9iamVjdDp0LGtleTpuLG1hcDpvLHBhdGg6dX0sbnVsbD09PWUudmFsdWU/ZS52YWx1ZT1bdF06ZS52YWx1ZS5wdXNoKHQpLG51bGw9PT1lLnJlYXNvbj9lLnJlYXNvbj1bdF06ZS5yZWFzb24ucHVzaCh0KSxudWxsfWZ1bmN0aW9uIFgoZSx0LG4scil7aWYoIWUuX3NlcnZlclJlZmVyZW5jZUNvbmZpZylyZXR1cm4gZnVuY3Rpb24oZSx0KXtmdW5jdGlvbiBuKCl7dmFyIGU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtyZXR1cm4gbz8iZnVsZmlsbGVkIj09PW8uc3RhdHVzP3QocixvLnZhbHVlLmNvbmNhdChlKSk6UHJvbWlzZS5yZXNvbHZlKG8pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIHQocixuLmNvbmNhdChlKSl9KTp0KHIsZSl9dmFyIHI9ZS5pZCxvPWUuYm91bmQ7cmV0dXJuIEUobixyLG8pLG59KHQsZS5fY2FsbFNlcnZlcik7dmFyIG89ZnVuY3Rpb24oZSx0KXt2YXIgbj0iIixyPWVbdF07aWYociluPXIubmFtZTtlbHNle3ZhciBvPXQubGFzdEluZGV4T2YoIiMiKTtpZigtMSE9PW8mJihuPXQuc2xpY2UobysxKSxyPWVbdC5zbGljZSgwLG8pXSksIXIpdGhyb3cgRXJyb3IoJ0NvdWxkIG5vdCBmaW5kIHRoZSBtb2R1bGUgIicrdCsnIiBpbiB0aGUgUmVhY3QgU2VydmVyIE1hbmlmZXN0LiBUaGlzIGlzIHByb2JhYmx5IGEgYnVnIGluIHRoZSBSZWFjdCBTZXJ2ZXIgQ29tcG9uZW50cyBidW5kbGVyLicpfXJldHVybiByLmFzeW5jP1tyLmlkLHIuY2h1bmtzLG4sMV06W3IuaWQsci5jaHVua3Msbl19KGUuX3NlcnZlclJlZmVyZW5jZUNvbmZpZyx0LmlkKSx1PWMobyk7aWYodSl0LmJvdW5kJiYodT1Qcm9taXNlLmFsbChbdSx0LmJvdW5kXSkpO2Vsc2V7aWYoIXQuYm91bmQpcmV0dXJuIEUodT1mKG8pLHQuaWQsdC5ib3VuZCksdTt1PVByb21pc2UucmVzb2x2ZSh0LmJvdW5kKX1pZih4KXt2YXIgaT14O2kuZGVwcysrfWVsc2UgaT14PXtwYXJlbnQ6bnVsbCxjaHVuazpudWxsLHZhbHVlOm51bGwscmVhc29uOm51bGwsZGVwczoxLGVycm9yZWQ6ITF9O3JldHVybiB1LnRoZW4oZnVuY3Rpb24oKXt2YXIgdT1mKG8pO2lmKHQuYm91bmQpe3ZhciBhPXQuYm91bmQudmFsdWUuc2xpY2UoMCk7YS51bnNoaWZ0KG51bGwpLHU9dS5iaW5kLmFwcGx5KHUsYSl9RSh1LHQuaWQsdC5ib3VuZCksIl9fcHJvdG9fXyIhPT1yJiYobltyXT11KSwiIj09PXImJm51bGw9PT1pLnZhbHVlJiYoaS52YWx1ZT11KSxuWzBdPT09cCYmIm9iamVjdCI9PXR5cGVvZiBpLnZhbHVlJiZudWxsIT09aS52YWx1ZSYmaS52YWx1ZS4kJHR5cGVvZj09PXAmJihhPWkudmFsdWUsIjMiPT09cikmJihhLnByb3BzPXUpLGkuZGVwcy0tLDA9PT1pLmRlcHMmJm51bGwhPT0odT1pLmNodW5rKSYmImJsb2NrZWQiPT09dS5zdGF0dXMmJihhPXUudmFsdWUsdS5zdGF0dXM9ImZ1bGZpbGxlZCIsdS52YWx1ZT1pLnZhbHVlLHUucmVhc29uPW51bGwsbnVsbCE9PWEmJk8oZSxhLGkudmFsdWUsdSkpfSxmdW5jdGlvbih0KXtpZighaS5lcnJvcmVkKXtpLmVycm9yZWQ9ITAsaS52YWx1ZT1udWxsLGkucmVhc29uPXQ7dmFyIG49aS5jaHVuaztudWxsIT09biYmImJsb2NrZWQiPT09bi5zdGF0dXMmJkEoZSxuLHQpfX0pLG51bGx9ZnVuY3Rpb24gVihlLHQsbixyLG8pe3ZhciB1PXBhcnNlSW50KCh0PXQuc3BsaXQoIjoiKSlbMF0sMTYpO3N3aXRjaCgodT1IKGUsdSkpLnN0YXR1cyl7Y2FzZSJyZXNvbHZlZF9tb2RlbCI6RCh1KTticmVhaztjYXNlInJlc29sdmVkX21vZHVsZSI6TSh1KX1zd2l0Y2godS5zdGF0dXMpe2Nhc2UiZnVsZmlsbGVkIjp1PXUudmFsdWU7Zm9yKHZhciBpPTE7aTx0Lmxlbmd0aDtpKyspe2Zvcig7Im9iamVjdCI9PXR5cGVvZiB1JiZudWxsIT09dSYmdS4kJHR5cGVvZj09PXk7KXtzd2l0Y2goKHU9dS5fcGF5bG9hZCkuc3RhdHVzKXtjYXNlInJlc29sdmVkX21vZGVsIjpEKHUpO2JyZWFrO2Nhc2UicmVzb2x2ZWRfbW9kdWxlIjpNKHUpfXN3aXRjaCh1LnN0YXR1cyl7Y2FzZSJmdWxmaWxsZWQiOnU9dS52YWx1ZTticmVhaztjYXNlImJsb2NrZWQiOmNhc2UicGVuZGluZyI6cmV0dXJuIEYodSxuLHIsZSxvLHQuc2xpY2UoaS0xKSk7Y2FzZSJoYWx0ZWQiOnJldHVybiB4PyhlPXgsZS5kZXBzKyspOng9e3BhcmVudDpudWxsLGNodW5rOm51bGwsdmFsdWU6bnVsbCxyZWFzb246bnVsbCxkZXBzOjEsZXJyb3JlZDohMX0sbnVsbDtkZWZhdWx0OnJldHVybiB4Pyh4LmVycm9yZWQ9ITAseC52YWx1ZT1udWxsLHgucmVhc29uPXUucmVhc29uKTp4PXtwYXJlbnQ6bnVsbCxjaHVuazpudWxsLHZhbHVlOm51bGwscmVhc29uOnUucmVhc29uLGRlcHM6MCxlcnJvcmVkOiEwfSxudWxsfX11PXVbdFtpXV19Zm9yKDsib2JqZWN0Ij09dHlwZW9mIHUmJm51bGwhPT11JiZ1LiQkdHlwZW9mPT09eTspe3N3aXRjaCgodD11Ll9wYXlsb2FkKS5zdGF0dXMpe2Nhc2UicmVzb2x2ZWRfbW9kZWwiOkQodCk7YnJlYWs7Y2FzZSJyZXNvbHZlZF9tb2R1bGUiOk0odCl9aWYoImZ1bGZpbGxlZCI9PT10LnN0YXR1cyl7dT10LnZhbHVlO2NvbnRpbnVlfWJyZWFrfXJldHVybiBvKGUsdSxuLHIpO2Nhc2UicGVuZGluZyI6Y2FzZSJibG9ja2VkIjpyZXR1cm4gRih1LG4scixlLG8sdCk7Y2FzZSJoYWx0ZWQiOnJldHVybiB4PyhlPXgsZS5kZXBzKyspOng9e3BhcmVudDpudWxsLGNodW5rOm51bGwsdmFsdWU6bnVsbCxyZWFzb246bnVsbCxkZXBzOjEsZXJyb3JlZDohMX0sbnVsbDtkZWZhdWx0OnJldHVybiB4Pyh4LmVycm9yZWQ9ITAseC52YWx1ZT1udWxsLHgucmVhc29uPXUucmVhc29uKTp4PXtwYXJlbnQ6bnVsbCxjaHVuazpudWxsLHZhbHVlOm51bGwscmVhc29uOnUucmVhc29uLGRlcHM6MCxlcnJvcmVkOiEwfSxudWxsfX1mdW5jdGlvbiBxKGUsdCl7cmV0dXJuIG5ldyBNYXAodCl9ZnVuY3Rpb24gQihlLHQpe3JldHVybiBuZXcgU2V0KHQpfWZ1bmN0aW9uIFcoZSx0KXtyZXR1cm4gbmV3IEJsb2IodC5zbGljZSgxKSx7dHlwZTp0WzBdfSl9ZnVuY3Rpb24gRyhlLHQpe2U9bmV3IEZvcm1EYXRhO2Zvcih2YXIgbj0wO248dC5sZW5ndGg7bisrKWUuYXBwZW5kKHRbbl1bMF0sdFtuXVsxXSk7cmV0dXJuIGV9ZnVuY3Rpb24gSihlLHQpe3JldHVybiB0W1N5bWJvbC5pdGVyYXRvcl0oKX1mdW5jdGlvbiBLKGUsdCl7cmV0dXJuIHR9ZnVuY3Rpb24geigpe3Rocm93IEVycm9yKCdUcnlpbmcgdG8gY2FsbCBhIGZ1bmN0aW9uIGZyb20gInVzZSBzZXJ2ZXIiIGJ1dCB0aGUgY2FsbFNlcnZlciBvcHRpb24gd2FzIG5vdCBpbXBsZW1lbnRlZCBpbiB5b3VyIHJvdXRlciBydW50aW1lLicpfWZ1bmN0aW9uIFkoZSx0LG4scixvLHUsaSl7dmFyIGEsbD1uZXcgTWFwO3RoaXMuX2J1bmRsZXJDb25maWc9ZSx0aGlzLl9zZXJ2ZXJSZWZlcmVuY2VDb25maWc9dCx0aGlzLl9tb2R1bGVMb2FkaW5nPW4sdGhpcy5fY2FsbFNlcnZlcj12b2lkIDAhPT1yP3I6eix0aGlzLl9lbmNvZGVGb3JtQWN0aW9uPW8sdGhpcy5fbm9uY2U9dSx0aGlzLl9jaHVua3M9bCx0aGlzLl9zdHJpbmdEZWNvZGVyPW5ldyBUZXh0RGVjb2Rlcix0aGlzLl9mcm9tSlNPTj1udWxsLHRoaXMuX2Nsb3NlZD0hMSx0aGlzLl9jbG9zZWRSZWFzb249bnVsbCx0aGlzLl90ZW1wUmVmcz1pLHRoaXMuX2Zyb21KU09OPShhPXRoaXMsZnVuY3Rpb24oZSx0KXtpZigiX19wcm90b19fIiE9PWUpe2lmKCJzdHJpbmciPT10eXBlb2YgdCl7dmFyIG49YSxyPXRoaXMsbz1lLHU9dDtpZigiJCI9PT11WzBdKXtpZigiJCI9PT11KXJldHVybiBudWxsIT09eCYmIjAiPT09byYmKHg9e3BhcmVudDp4LGNodW5rOm51bGwsdmFsdWU6bnVsbCxyZWFzb246bnVsbCxkZXBzOjAsZXJyb3JlZDohMX0pLHA7c3dpdGNoKHVbMV0pe2Nhc2UiJCI6cmV0dXJuIHUuc2xpY2UoMSk7Y2FzZSJMIjpyZXR1cm4gSShuPUgobixyPXBhcnNlSW50KHUuc2xpY2UoMiksMTYpKSk7Y2FzZSJAIjpyZXR1cm4gSChuLHI9cGFyc2VJbnQodS5zbGljZSgyKSwxNikpO2Nhc2UiUyI6cmV0dXJuIFN5bWJvbC5mb3IodS5zbGljZSgyKSk7Y2FzZSJoIjpyZXR1cm4gVihuLHU9dS5zbGljZSgyKSxyLG8sWCk7Y2FzZSJUIjppZihyPSIkIit1LnNsaWNlKDIpLG51bGw9PShuPW4uX3RlbXBSZWZzKSl0aHJvdyBFcnJvcigiTWlzc2luZyBhIHRlbXBvcmFyeSByZWZlcmVuY2Ugc2V0IGJ1dCB0aGUgUlNDIHJlc3BvbnNlIHJldHVybmVkIGEgdGVtcG9yYXJ5IHJlZmVyZW5jZS4gUGFzcyBhIHRlbXBvcmFyeVJlZmVyZW5jZSBvcHRpb24gd2l0aCB0aGUgc2V0IHRoYXQgd2FzIHVzZWQgd2l0aCB0aGUgcmVwbHkuIik7cmV0dXJuIG4uZ2V0KHIpO2Nhc2UiUSI6cmV0dXJuIFYobix1PXUuc2xpY2UoMikscixvLHEpO2Nhc2UiVyI6cmV0dXJuIFYobix1PXUuc2xpY2UoMikscixvLEIpO2Nhc2UiQiI6cmV0dXJuIFYobix1PXUuc2xpY2UoMikscixvLFcpO2Nhc2UiSyI6cmV0dXJuIFYobix1PXUuc2xpY2UoMikscixvLEcpO2Nhc2UiWiI6cmV0dXJuIGVyKCk7Y2FzZSJpIjpyZXR1cm4gVihuLHU9dS5zbGljZSgyKSxyLG8sSik7Y2FzZSJJIjpyZXR1cm4gMS8wO2Nhc2UiLSI6cmV0dXJuIiQtMCI9PT11Py0wOi0xLzA7Y2FzZSJOIjpyZXR1cm4gTmFOO2Nhc2UidSI6cmV0dXJuO2Nhc2UiRCI6cmV0dXJuIG5ldyBEYXRlKERhdGUucGFyc2UodS5zbGljZSgyKSkpO2Nhc2UibiI6cmV0dXJuIEJpZ0ludCh1LnNsaWNlKDIpKTtkZWZhdWx0OnJldHVybiBWKG4sdT11LnNsaWNlKDEpLHIsbyxLKX19cmV0dXJuIHV9aWYoIm9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT09dCl7aWYodFswXT09PXApe2lmKGU9eyQkdHlwZW9mOnAsdHlwZTp0WzFdLGtleTp0WzJdLHJlZjpudWxsLHByb3BzOnRbM119LG51bGwhPT14KXtpZih4PSh0PXgpLnBhcmVudCx0LmVycm9yZWQpZT1JKGU9bmV3IFMoInJlamVjdGVkIixudWxsLHQucmVhc29uKSk7ZWxzZSBpZigwPHQuZGVwcyl7dmFyIGk9bmV3IFMoImJsb2NrZWQiLG51bGwsbnVsbCk7dC52YWx1ZT1lLHQuY2h1bms9aSxlPUkoaSl9fX1lbHNlIGU9dDtyZXR1cm4gZX1yZXR1cm4gdH19KX1mdW5jdGlvbiBRKGUsdCxuKXt2YXIgcj0oZT1lLl9jaHVua3MpLmdldCh0KTtyJiYicGVuZGluZyIhPT1yLnN0YXR1cz9yLnJlYXNvbi5lbnF1ZXVlVmFsdWUobik6KG49bmV3IFMoImZ1bGZpbGxlZCIsbixudWxsKSxlLnNldCh0LG4pKX1mdW5jdGlvbiBaKGUsdCxuLHIpe3ZhciBvPWUuX2NodW5rcyx1PW8uZ2V0KHQpO3U/InBlbmRpbmciPT09dS5zdGF0dXMmJih0PXUudmFsdWUsdS5zdGF0dXM9ImZ1bGZpbGxlZCIsdS52YWx1ZT1uLHUucmVhc29uPXIsbnVsbCE9PXQmJk8oZSx0LHUudmFsdWUsdSkpOihlPW5ldyBTKCJmdWxmaWxsZWQiLG4sciksby5zZXQodCxlKSl9ZnVuY3Rpb24gZWUoZSx0LG4pe3ZhciByPW51bGwsbz0hMTtuPW5ldyBSZWFkYWJsZVN0cmVhbSh7dHlwZTpuLHN0YXJ0OmZ1bmN0aW9uKGUpe3I9ZX19KTt2YXIgdT1udWxsO1ooZSx0LG4se2VucXVldWVWYWx1ZTpmdW5jdGlvbihlKXtudWxsPT09dT9yLmVucXVldWUoZSk6dS50aGVuKGZ1bmN0aW9uKCl7ci5lbnF1ZXVlKGUpfSl9LGVucXVldWVNb2RlbDpmdW5jdGlvbih0KXtpZihudWxsPT09dSl7dmFyIG49bmV3IFMoInJlc29sdmVkX21vZGVsIix0LGUpO0QobiksImZ1bGZpbGxlZCI9PT1uLnN0YXR1cz9yLmVucXVldWUobi52YWx1ZSk6KG4udGhlbihmdW5jdGlvbihlKXtyZXR1cm4gci5lbnF1ZXVlKGUpfSxmdW5jdGlvbihlKXtyZXR1cm4gci5lcnJvcihlKX0pLHU9bil9ZWxzZXtuPXU7dmFyIG89bmV3IFMoInBlbmRpbmciLG51bGwsbnVsbCk7by50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiByLmVucXVldWUoZSl9LGZ1bmN0aW9uKGUpe3JldHVybiByLmVycm9yKGUpfSksdT1vLG4udGhlbihmdW5jdGlvbigpe3U9PT1vJiYodT1udWxsKSxOKGUsbyx0KX0pfX0sY2xvc2U6ZnVuY3Rpb24oKXtpZighbylpZihvPSEwLG51bGw9PT11KXIuY2xvc2UoKTtlbHNle3ZhciBlPXU7dT1udWxsLGUudGhlbihmdW5jdGlvbigpe3JldHVybiByLmNsb3NlKCl9KX19LGVycm9yOmZ1bmN0aW9uKGUpe2lmKCFvKWlmKG89ITAsbnVsbD09PXUpci5lcnJvcihlKTtlbHNle3ZhciB0PXU7dT1udWxsLHQudGhlbihmdW5jdGlvbigpe3JldHVybiByLmVycm9yKGUpfSl9fX0pfWZ1bmN0aW9uIGV0KCl7cmV0dXJuIHRoaXN9ZnVuY3Rpb24gZW4oZSx0LG4pe3ZhciByPVtdLG89ITEsdT0wLGk9e307aVtoXT1mdW5jdGlvbigpe3ZhciBlLHQ9MDtyZXR1cm4oZT17bmV4dDplPWZ1bmN0aW9uKGUpe2lmKHZvaWQgMCE9PWUpdGhyb3cgRXJyb3IoIlZhbHVlcyBjYW5ub3QgYmUgcGFzc2VkIHRvIG5leHQoKSBvZiBBc3luY0l0ZXJhYmxlcyBwYXNzZWQgdG8gQ2xpZW50IENvbXBvbmVudHMuIik7aWYodD09PXIubGVuZ3RoKXtpZihvKXJldHVybiBuZXcgUygiZnVsZmlsbGVkIix7ZG9uZTohMCx2YWx1ZTp2b2lkIDB9LG51bGwpO3JbdF09bmV3IFMoInBlbmRpbmciLG51bGwsbnVsbCl9cmV0dXJuIHJbdCsrXX19KVtoXT1ldCxlfSxaKGUsdCxuP2lbaF0oKTppLHtlbnF1ZXVlVmFsdWU6ZnVuY3Rpb24odCl7aWYodT09PXIubGVuZ3RoKXJbdV09bmV3IFMoImZ1bGZpbGxlZCIse2RvbmU6ITEsdmFsdWU6dH0sbnVsbCk7ZWxzZXt2YXIgbj1yW3VdLG89bi52YWx1ZSxpPW4ucmVhc29uO24uc3RhdHVzPSJmdWxmaWxsZWQiLG4udmFsdWU9e2RvbmU6ITEsdmFsdWU6dH0sbi5yZWFzb249bnVsbCxudWxsIT09byYmaihlLG4sbyxpKX11Kyt9LGVucXVldWVNb2RlbDpmdW5jdGlvbih0KXt1PT09ci5sZW5ndGg/clt1XT1rKGUsdCwhMSk6QyhlLHJbdV0sdCwhMSksdSsrfSxjbG9zZTpmdW5jdGlvbih0KXtpZighbylmb3Iobz0hMCx1PT09ci5sZW5ndGg/clt1XT1rKGUsdCwhMCk6QyhlLHJbdV0sdCwhMCksdSsrO3U8ci5sZW5ndGg7KUMoZSxyW3UrK10sJyIkdW5kZWZpbmVkIicsITApfSxlcnJvcjpmdW5jdGlvbih0KXtpZighbylmb3Iobz0hMCx1PT09ci5sZW5ndGgmJihyW3VdPW5ldyBTKCJwZW5kaW5nIixudWxsLG51bGwpKTt1PHIubGVuZ3RoOylBKGUsclt1KytdLHQpfX0pfWZ1bmN0aW9uIGVyKCl7dmFyIGU9RXJyb3IoIkFuIGVycm9yIG9jY3VycmVkIGluIHRoZSBTZXJ2ZXIgQ29tcG9uZW50cyByZW5kZXIuIFRoZSBzcGVjaWZpYyBtZXNzYWdlIGlzIG9taXR0ZWQgaW4gcHJvZHVjdGlvbiBidWlsZHMgdG8gYXZvaWQgbGVha2luZyBzZW5zaXRpdmUgZGV0YWlscy4gQSBkaWdlc3QgcHJvcGVydHkgaXMgaW5jbHVkZWQgb24gdGhpcyBlcnJvciBpbnN0YW5jZSB3aGljaCBtYXkgcHJvdmlkZSBhZGRpdGlvbmFsIGRldGFpbHMgYWJvdXQgdGhlIG5hdHVyZSBvZiB0aGUgZXJyb3IuIik7cmV0dXJuIGUuc3RhY2s9IkVycm9yOiAiK2UubWVzc2FnZSxlfWZ1bmN0aW9uIGVvKGUsdCl7Zm9yKHZhciBuPWUubGVuZ3RoLHI9dC5sZW5ndGgsbz0wO288bjtvKyspcis9ZVtvXS5ieXRlTGVuZ3RoO3I9bmV3IFVpbnQ4QXJyYXkocik7Zm9yKHZhciB1PW89MDt1PG47dSsrKXt2YXIgaT1lW3VdO3Iuc2V0KGksbyksbys9aS5ieXRlTGVuZ3RofXJldHVybiByLnNldCh0LG8pLHJ9ZnVuY3Rpb24gZXUoZSx0LG4scixvLHUpe1EoZSx0LG89bmV3IG8oKG49MD09PW4ubGVuZ3RoJiYwPT1yLmJ5dGVPZmZzZXQldT9yOmVvKG4scikpLmJ1ZmZlcixuLmJ5dGVPZmZzZXQsbi5ieXRlTGVuZ3RoL3UpKX1mdW5jdGlvbiBlaShlKXskKGUsRXJyb3IoIkNvbm5lY3Rpb24gY2xvc2VkLiIpKX1mdW5jdGlvbiBlYShlKXtyZXR1cm4gbmV3IFkobnVsbCxudWxsLG51bGwsZSYmZS5jYWxsU2VydmVyP2UuY2FsbFNlcnZlcjp2b2lkIDAsdm9pZCAwLHZvaWQgMCxlJiZlLnRlbXBvcmFyeVJlZmVyZW5jZXM/ZS50ZW1wb3JhcnlSZWZlcmVuY2VzOnZvaWQgMCl9ZnVuY3Rpb24gZWwoZSx0LG4pe2Z1bmN0aW9uIHIodCl7JChlLHQpfXZhciB1PXtfcm93U3RhdGU6MCxfcm93SUQ6MCxfcm93VGFnOjAsX3Jvd0xlbmd0aDowLF9idWZmZXI6W119LGk9dC5nZXRSZWFkZXIoKTtpLnJlYWQoKS50aGVuKGZ1bmN0aW9uIHQoYSl7dmFyIGw9YS52YWx1ZTtpZihhLmRvbmUpcmV0dXJuIG4oKTt2YXIgcz0wLGY9dS5fcm93U3RhdGU7YT11Ll9yb3dJRDtmb3IodmFyIHA9dS5fcm93VGFnLHk9dS5fcm93TGVuZ3RoLHY9dS5fYnVmZmVyLGg9bC5sZW5ndGg7czxoOyl7dmFyIF89LTE7c3dpdGNoKGYpe2Nhc2UgMDo1OD09PShfPWxbcysrXSk/Zj0xOmE9YTw8NHwoOTY8Xz9fLTg3Ol8tNDgpO2NvbnRpbnVlO2Nhc2UgMTo4ND09PShmPWxbc10pfHw2NT09PWZ8fDc5PT09Znx8MTExPT09Znx8OTg9PT1mfHw4NT09PWZ8fDgzPT09Znx8MTE1PT09Znx8NzY9PT1mfHwxMDg9PT1mfHw3MT09PWZ8fDEwMz09PWZ8fDc3PT09Znx8MTA5PT09Znx8ODY9PT1mPyhwPWYsZj0yLHMrKyk6NjQ8ZiYmOTE+Znx8MzU9PT1mfHwxMTQ9PT1mfHwxMjA9PT1mPyhwPWYsZj0zLHMrKyk6KHA9MCxmPTMpO2NvbnRpbnVlO2Nhc2UgMjo0ND09PShfPWxbcysrXSk/Zj00Onk9eTw8NHwoOTY8Xz9fLTg3Ol8tNDgpO2NvbnRpbnVlO2Nhc2UgMzpfPWwuaW5kZXhPZigxMCxzKTticmVhaztjYXNlIDQ6KF89cyt5KT5sLmxlbmd0aCYmKF89LTEpfXZhciBiPWwuYnl0ZU9mZnNldCtzO2lmKC0xPF8peT1uZXcgVWludDhBcnJheShsLmJ1ZmZlcixiLF8tcyksOTg9PT1wP1EoZSxhLF89PT1oP3k6eS5zbGljZSgpKTpmdW5jdGlvbihlLHQsbixyLHUsaSl7c3dpdGNoKHIpe2Nhc2UgNjU6UShlLG4sZW8odSxpKS5idWZmZXIpO3JldHVybjtjYXNlIDc5OmV1KGUsbix1LGksSW50OEFycmF5LDEpO3JldHVybjtjYXNlIDExMTpRKGUsbiwwPT09dS5sZW5ndGg/aTplbyh1LGkpKTtyZXR1cm47Y2FzZSA4NTpldShlLG4sdSxpLFVpbnQ4Q2xhbXBlZEFycmF5LDEpO3JldHVybjtjYXNlIDgzOmV1KGUsbix1LGksSW50MTZBcnJheSwyKTtyZXR1cm47Y2FzZSAxMTU6ZXUoZSxuLHUsaSxVaW50MTZBcnJheSwyKTtyZXR1cm47Y2FzZSA3NjpldShlLG4sdSxpLEludDMyQXJyYXksNCk7cmV0dXJuO2Nhc2UgMTA4OmV1KGUsbix1LGksVWludDMyQXJyYXksNCk7cmV0dXJuO2Nhc2UgNzE6ZXUoZSxuLHUsaSxGbG9hdDMyQXJyYXksNCk7cmV0dXJuO2Nhc2UgMTAzOmV1KGUsbix1LGksRmxvYXQ2NEFycmF5LDgpO3JldHVybjtjYXNlIDc3OmV1KGUsbix1LGksQmlnSW50NjRBcnJheSw4KTtyZXR1cm47Y2FzZSAxMDk6ZXUoZSxuLHUsaSxCaWdVaW50NjRBcnJheSw4KTtyZXR1cm47Y2FzZSA4NjpldShlLG4sdSxpLERhdGFWaWV3LDEpO3JldHVybn10PWUuX3N0cmluZ0RlY29kZXI7Zm9yKHZhciBhPSIiLGw9MDtsPHUubGVuZ3RoO2wrKylhKz10LmRlY29kZSh1W2xdLG8pO3N3aXRjaCh1PWErPXQuZGVjb2RlKGkpLHIpe2Nhc2UgNzM6dmFyIHM9ZSxmPW4scD11LHk9cy5fY2h1bmtzLHY9eS5nZXQoZik7cD1KU09OLnBhcnNlKHAscy5fZnJvbUpTT04pO3ZhciBoPWZ1bmN0aW9uKGUsdCl7aWYoZSl7dmFyIG49ZVt0WzBdXTtpZihlPW4mJm5bdFsyXV0pbj1lLm5hbWU7ZWxzZXtpZighKGU9biYmblsiKiJdKSl0aHJvdyBFcnJvcignQ291bGQgbm90IGZpbmQgdGhlIG1vZHVsZSAiJyt0WzBdKyciIGluIHRoZSBSZWFjdCBTZXJ2ZXIgQ29uc3VtZXIgTWFuaWZlc3QuIFRoaXMgaXMgcHJvYmFibHkgYSBidWcgaW4gdGhlIFJlYWN0IFNlcnZlciBDb21wb25lbnRzIGJ1bmRsZXIuJyk7bj10WzJdfXJldHVybiA0PT09dC5sZW5ndGg/W2UuaWQsZS5jaHVua3MsbiwxXTpbZS5pZCxlLmNodW5rcyxuXX1yZXR1cm4gdH0ocy5fYnVuZGxlckNvbmZpZyxwKTtpZihwPWMoaCkpe2lmKHYpe3ZhciBfPXY7Xy5zdGF0dXM9ImJsb2NrZWQifWVsc2UgXz1uZXcgUygiYmxvY2tlZCIsbnVsbCxudWxsKSx5LnNldChmLF8pO3AudGhlbihmdW5jdGlvbigpe3JldHVybiBQKHMsXyxoKX0sZnVuY3Rpb24oZSl7cmV0dXJuIEEocyxfLGUpfSl9ZWxzZSB2P1Aocyx2LGgpOih2PW5ldyBTKCJyZXNvbHZlZF9tb2R1bGUiLGgsbnVsbCkseS5zZXQoZix2KSk7YnJlYWs7Y2FzZSA3Mjpzd2l0Y2gobj11WzBdLGU9SlNPTi5wYXJzZSh1PXUuc2xpY2UoMSksZS5fZnJvbUpTT04pLHU9ZC5kLG4pe2Nhc2UiRCI6dS5EKGUpO2JyZWFrO2Nhc2UiQyI6InN0cmluZyI9PXR5cGVvZiBlP3UuQyhlKTp1LkMoZVswXSxlWzFdKTticmVhaztjYXNlIkwiOm49ZVswXSxyPWVbMV0sMz09PWUubGVuZ3RoP3UuTChuLHIsZVsyXSk6dS5MKG4scik7YnJlYWs7Y2FzZSJtIjoic3RyaW5nIj09dHlwZW9mIGU/dS5tKGUpOnUubShlWzBdLGVbMV0pO2JyZWFrO2Nhc2UiWCI6InN0cmluZyI9PXR5cGVvZiBlP3UuWChlKTp1LlgoZVswXSxlWzFdKTticmVhaztjYXNlIlMiOiJzdHJpbmciPT10eXBlb2YgZT91LlMoZSk6dS5TKGVbMF0sMD09PWVbMV0/dm9pZCAwOmVbMV0sMz09PWUubGVuZ3RoP2VbMl06dm9pZCAwKTticmVhaztjYXNlIk0iOiJzdHJpbmciPT10eXBlb2YgZT91Lk0oZSk6dS5NKGVbMF0sZVsxXSl9YnJlYWs7Y2FzZSA2OTppPShyPWUuX2NodW5rcykuZ2V0KG4pLHU9SlNPTi5wYXJzZSh1KSwodD1lcigpKS5kaWdlc3Q9dS5kaWdlc3QsaT9BKGUsaSx0KTooZT1uZXcgUygicmVqZWN0ZWQiLG51bGwsdCksci5zZXQobixlKSk7YnJlYWs7Y2FzZSA4NDoocj0oZT1lLl9jaHVua3MpLmdldChuKSkmJiJwZW5kaW5nIiE9PXIuc3RhdHVzP3IucmVhc29uLmVucXVldWVWYWx1ZSh1KToodT1uZXcgUygiZnVsZmlsbGVkIix1LG51bGwpLGUuc2V0KG4sdSkpO2JyZWFrO2Nhc2UgNzg6Y2FzZSA2ODpjYXNlIDc0OmNhc2UgODc6dGhyb3cgRXJyb3IoIkZhaWxlZCB0byByZWFkIGEgUlNDIHBheWxvYWQgY3JlYXRlZCBieSBhIGRldmVsb3BtZW50IHZlcnNpb24gb2YgUmVhY3Qgb24gdGhlIHNlcnZlciB3aGlsZSB1c2luZyBhIHByb2R1Y3Rpb24gdmVyc2lvbiBvbiB0aGUgY2xpZW50LiBBbHdheXMgdXNlIG1hdGNoaW5nIHZlcnNpb25zIG9uIHRoZSBzZXJ2ZXIgYW5kIHRoZSBjbGllbnQuIik7Y2FzZSA4MjplZShlLG4sdm9pZCAwKTticmVhaztjYXNlIDExNDplZShlLG4sImJ5dGVzIik7YnJlYWs7Y2FzZSA4ODplbihlLG4sITEpO2JyZWFrO2Nhc2UgMTIwOmVuKGUsbiwhMCk7YnJlYWs7Y2FzZSA2Nzoobj1lLl9jaHVua3MuZ2V0KG4pKSYmImZ1bGZpbGxlZCI9PT1uLnN0YXR1cyYmbi5yZWFzb24uY2xvc2UoIiI9PT11PyciJHVuZGVmaW5lZCInOnUpO2JyZWFrO2RlZmF1bHQ6KGk9KHI9ZS5fY2h1bmtzKS5nZXQobikpP04oZSxpLHUpOihlPW5ldyBTKCJyZXNvbHZlZF9tb2RlbCIsdSxlKSxyLnNldChuLGUpKX19KGUsdSxhLHAsdix5KSxzPV8sMz09PWYmJnMrKyx5PWE9cD1mPTAsdi5sZW5ndGg9MDtlbHNle2w9bmV3IFVpbnQ4QXJyYXkobC5idWZmZXIsYixsLmJ5dGVMZW5ndGgtcyksOTg9PT1wPyh5LT1sLmJ5dGVMZW5ndGgsUShlLGEsbCkpOih2LnB1c2gobCkseS09bC5ieXRlTGVuZ3RoKTticmVha319cmV0dXJuIHUuX3Jvd1N0YXRlPWYsdS5fcm93SUQ9YSx1Ll9yb3dUYWc9cCx1Ll9yb3dMZW5ndGg9eSxpLnJlYWQoKS50aGVuKHQpLmNhdGNoKHIpfSkuY2F0Y2gocil9bi5jcmVhdGVGcm9tRmV0Y2g9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lYSh0KTtyZXR1cm4gZS50aGVuKGZ1bmN0aW9uKGUpe2VsKG4sZS5ib2R5LGVpLmJpbmQobnVsbCxuKSl9LGZ1bmN0aW9uKGUpeyQobixlKX0pLEgobiwwKX0sbi5jcmVhdGVGcm9tUmVhZGFibGVTdHJlYW09ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZWwodD1lYSh0KSxlLGVpLmJpbmQobnVsbCx0KSksSCh0LDApfSxuLmNyZWF0ZVNlcnZlclJlZmVyZW5jZT1mdW5jdGlvbihlLHQpe2Z1bmN0aW9uIG4oKXt2YXIgbj1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO3JldHVybiB0KGUsbil9cmV0dXJuIEUobixlLG51bGwpLG59LG4uY3JlYXRlVGVtcG9yYXJ5UmVmZXJlbmNlU2V0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9LG4uZW5jb2RlUmVwbHk9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXt2YXIgbz1mdW5jdGlvbihlLHQsbixyLG8pe2Z1bmN0aW9uIHUoZSx0KXt0PW5ldyBCbG9iKFtuZXcgVWludDhBcnJheSh0LmJ1ZmZlcix0LmJ5dGVPZmZzZXQsdC5ieXRlTGVuZ3RoKV0pO3ZhciBuPWwrKztyZXR1cm4gbnVsbD09PWMmJihjPW5ldyBGb3JtRGF0YSksYy5hcHBlbmQoIiIrbix0KSwiJCIrZStuLnRvU3RyaW5nKDE2KX1mdW5jdGlvbiBpKGUsdCl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7aWYoIm9iamVjdCI9PXR5cGVvZiB0KXtzd2l0Y2godC4kJHR5cGVvZil7Y2FzZSBwOmlmKHZvaWQgMCE9PW4mJi0xPT09ZS5pbmRleE9mKCI6Iikpe3ZhciBFLFMsUixPLHcsVD1mLmdldCh0aGlzKTtpZih2b2lkIDAhPT1UKXJldHVybiBuLnNldChUKyI6IitlLHQpLCIkVCJ9dGhyb3cgRXJyb3IoIlJlYWN0IEVsZW1lbnQgY2Fubm90IGJlIHBhc3NlZCB0byBTZXJ2ZXIgRnVuY3Rpb25zIGZyb20gdGhlIENsaWVudCB3aXRob3V0IGEgdGVtcG9yYXJ5IHJlZmVyZW5jZSBzZXQuIFBhc3MgYSBUZW1wb3JhcnlSZWZlcmVuY2VTZXQgdG8gdGhlIG9wdGlvbnMuIik7Y2FzZSB5OlQ9dC5fcGF5bG9hZDt2YXIgaj10Ll9pbml0O251bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLHMrKzt0cnl7dmFyIEE9aihUKSxrPWwrKyxDPWEoQSxrKTtyZXR1cm4gYy5hcHBlbmQoIiIrayxDKSwiJCIray50b1N0cmluZygxNil9Y2F0Y2goZSl7aWYoIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmImZ1bmN0aW9uIj09dHlwZW9mIGUudGhlbil7cysrO3ZhciBOPWwrKztyZXR1cm4gVD1mdW5jdGlvbigpe3RyeXt2YXIgZT1hKHQsTiksbj1jO24uYXBwZW5kKCIiK04sZSkscy0tLDA9PT1zJiZyKG4pfWNhdGNoKGUpe28oZSl9fSxlLnRoZW4oVCxUKSwiJCIrTi50b1N0cmluZygxNil9cmV0dXJuIG8oZSksbnVsbH1maW5hbGx5e3MtLX19aWYoVD1mLmdldCh0KSwiZnVuY3Rpb24iPT10eXBlb2YgdC50aGVuKXtpZih2b2lkIDAhPT1UKWlmKGQhPT10KXJldHVybiBUO2Vsc2UgZD1udWxsO251bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLHMrKzt2YXIgUD1sKys7cmV0dXJuIGU9IiRAIitQLnRvU3RyaW5nKDE2KSxmLnNldCh0LGUpLHQudGhlbihmdW5jdGlvbihlKXt0cnl7dmFyIHQ9Zi5nZXQoZSksbj12b2lkIDAhPT10P0pTT04uc3RyaW5naWZ5KHQpOmEoZSxQKTsoZT1jKS5hcHBlbmQoIiIrUCxuKSxzLS0sMD09PXMmJnIoZSl9Y2F0Y2goZSl7byhlKX19LG8pLGV9aWYodm9pZCAwIT09VClpZihkIT09dClyZXR1cm4gVDtlbHNlIGQ9bnVsbDtlbHNlIC0xPT09ZS5pbmRleE9mKCI6IikmJnZvaWQgMCE9PShUPWYuZ2V0KHRoaXMpKSYmKGU9VCsiOiIrZSxmLnNldCh0LGUpLHZvaWQgMCE9PW4mJm4uc2V0KGUsdCkpO2lmKF8odCkpcmV0dXJuIHQ7aWYodCBpbnN0YW5jZW9mIEZvcm1EYXRhKXtudWxsPT09YyYmKGM9bmV3IEZvcm1EYXRhKTt2YXIgeD1jLEQ9IiIrKGU9bCsrKSsiXyI7cmV0dXJuIHQuZm9yRWFjaChmdW5jdGlvbihlLHQpe3guYXBwZW5kKEQrdCxlKX0pLCIkSyIrZS50b1N0cmluZygxNil9aWYodCBpbnN0YW5jZW9mIE1hcClyZXR1cm4gZT1sKyssVD1hKEFycmF5LmZyb20odCksZSksbnVsbD09PWMmJihjPW5ldyBGb3JtRGF0YSksYy5hcHBlbmQoIiIrZSxUKSwiJFEiK2UudG9TdHJpbmcoMTYpO2lmKHQgaW5zdGFuY2VvZiBTZXQpcmV0dXJuIGU9bCsrLFQ9YShBcnJheS5mcm9tKHQpLGUpLG51bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLGMuYXBwZW5kKCIiK2UsVCksIiRXIitlLnRvU3RyaW5nKDE2KTtpZih0IGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpcmV0dXJuIGU9bmV3IEJsb2IoW3RdKSxUPWwrKyxudWxsPT09YyYmKGM9bmV3IEZvcm1EYXRhKSxjLmFwcGVuZCgiIitULGUpLCIkQSIrVC50b1N0cmluZygxNik7aWYodCBpbnN0YW5jZW9mIEludDhBcnJheSlyZXR1cm4gdSgiTyIsdCk7aWYodCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpcmV0dXJuIHUoIm8iLHQpO2lmKHQgaW5zdGFuY2VvZiBVaW50OENsYW1wZWRBcnJheSlyZXR1cm4gdSgiVSIsdCk7aWYodCBpbnN0YW5jZW9mIEludDE2QXJyYXkpcmV0dXJuIHUoIlMiLHQpO2lmKHQgaW5zdGFuY2VvZiBVaW50MTZBcnJheSlyZXR1cm4gdSgicyIsdCk7aWYodCBpbnN0YW5jZW9mIEludDMyQXJyYXkpcmV0dXJuIHUoIkwiLHQpO2lmKHQgaW5zdGFuY2VvZiBVaW50MzJBcnJheSlyZXR1cm4gdSgibCIsdCk7aWYodCBpbnN0YW5jZW9mIEZsb2F0MzJBcnJheSlyZXR1cm4gdSgiRyIsdCk7aWYodCBpbnN0YW5jZW9mIEZsb2F0NjRBcnJheSlyZXR1cm4gdSgiZyIsdCk7aWYodCBpbnN0YW5jZW9mIEJpZ0ludDY0QXJyYXkpcmV0dXJuIHUoIk0iLHQpO2lmKHQgaW5zdGFuY2VvZiBCaWdVaW50NjRBcnJheSlyZXR1cm4gdSgibSIsdCk7aWYodCBpbnN0YW5jZW9mIERhdGFWaWV3KXJldHVybiB1KCJWIix0KTtpZigiZnVuY3Rpb24iPT10eXBlb2YgQmxvYiYmdCBpbnN0YW5jZW9mIEJsb2IpcmV0dXJuIG51bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLGU9bCsrLGMuYXBwZW5kKCIiK2UsdCksIiRCIitlLnRvU3RyaW5nKDE2KTtpZihlPW51bGw9PT0oRT10KXx8Im9iamVjdCIhPXR5cGVvZiBFP251bGw6ImZ1bmN0aW9uIj09dHlwZW9mKEU9diYmRVt2XXx8RVsiQEBpdGVyYXRvciJdKT9FOm51bGwpcmV0dXJuKFQ9ZS5jYWxsKHQpKT09PXQ/KGU9bCsrLFQ9YShBcnJheS5mcm9tKFQpLGUpLG51bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLGMuYXBwZW5kKCIiK2UsVCksIiRpIitlLnRvU3RyaW5nKDE2KSk6QXJyYXkuZnJvbShUKTtpZigiZnVuY3Rpb24iPT10eXBlb2YgUmVhZGFibGVTdHJlYW0mJnQgaW5zdGFuY2VvZiBSZWFkYWJsZVN0cmVhbSlyZXR1cm4gZnVuY3Rpb24oZSl7dHJ5e3ZhciB0LG4sdSxhLGYsZCxwLHk9ZS5nZXRSZWFkZXIoe21vZGU6ImJ5b2IifSl9Y2F0Y2goYSl7cmV0dXJuIHQ9ZS5nZXRSZWFkZXIoKSxudWxsPT09YyYmKGM9bmV3IEZvcm1EYXRhKSxuPWMscysrLHU9bCsrLHQucmVhZCgpLnRoZW4oZnVuY3Rpb24gZShhKXtpZihhLmRvbmUpbi5hcHBlbmQoIiIrdSwiQyIpLDA9PS0tcyYmcihuKTtlbHNlIHRyeXt2YXIgbD1KU09OLnN0cmluZ2lmeShhLnZhbHVlLGkpO24uYXBwZW5kKCIiK3UsbCksdC5yZWFkKCkudGhlbihlLG8pfWNhdGNoKGUpe28oZSl9fSxvKSwiJFIiK3UudG9TdHJpbmcoMTYpfXJldHVybiBhPXksbnVsbD09PWMmJihjPW5ldyBGb3JtRGF0YSksZj1jLHMrKyxkPWwrKyxwPVtdLGEucmVhZChuZXcgVWludDhBcnJheSgxMDI0KSkudGhlbihmdW5jdGlvbiBlKHQpe3QuZG9uZT8odD1sKyssZi5hcHBlbmQoIiIrdCxuZXcgQmxvYihwKSksZi5hcHBlbmQoIiIrZCwnIiRvJyt0LnRvU3RyaW5nKDE2KSsnIicpLGYuYXBwZW5kKCIiK2QsIkMiKSwwPT0tLXMmJnIoZikpOihwLnB1c2godC52YWx1ZSksYS5yZWFkKG5ldyBVaW50OEFycmF5KDEwMjQpKS50aGVuKGUsbykpfSxvKSwiJHIiK2QudG9TdHJpbmcoMTYpfSh0KTtpZigiZnVuY3Rpb24iPT10eXBlb2YoZT10W2hdKSlyZXR1cm4gUz10LFI9ZS5jYWxsKHQpLG51bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLE89YyxzKyssdz1sKyssUz1TPT09UixSLm5leHQoKS50aGVuKGZ1bmN0aW9uIGUodCl7aWYodC5kb25lKXtpZih2b2lkIDA9PT10LnZhbHVlKU8uYXBwZW5kKCIiK3csIkMiKTtlbHNlIHRyeXt2YXIgbj1KU09OLnN0cmluZ2lmeSh0LnZhbHVlLGkpO08uYXBwZW5kKCIiK3csIkMiK24pfWNhdGNoKGUpe28oZSk7cmV0dXJufTA9PS0tcyYmcihPKX1lbHNlIHRyeXt2YXIgdT1KU09OLnN0cmluZ2lmeSh0LnZhbHVlLGkpO08uYXBwZW5kKCIiK3csdSksUi5uZXh0KCkudGhlbihlLG8pfWNhdGNoKGUpe28oZSl9fSxvKSwiJCIrKFM/IngiOiJYIikrdy50b1N0cmluZygxNik7aWYoKGU9Yih0KSkhPT1nJiYobnVsbD09PWV8fG51bGwhPT1iKGUpKSl7aWYodm9pZCAwPT09bil0aHJvdyBFcnJvcigiT25seSBwbGFpbiBvYmplY3RzLCBhbmQgYSBmZXcgYnVpbHQtaW5zLCBjYW4gYmUgcGFzc2VkIHRvIFNlcnZlciBGdW5jdGlvbnMuIENsYXNzZXMgb3IgbnVsbCBwcm90b3R5cGVzIGFyZSBub3Qgc3VwcG9ydGVkLiIpO3JldHVybiIkVCJ9cmV0dXJuIHR9aWYoInN0cmluZyI9PXR5cGVvZiB0KXJldHVybiJaIj09PXRbdC5sZW5ndGgtMV0mJnRoaXNbZV1pbnN0YW5jZW9mIERhdGU/IiREIit0OmU9IiQiPT09dFswXT8iJCIrdDp0O2lmKCJib29sZWFuIj09dHlwZW9mIHQpcmV0dXJuIHQ7aWYoIm51bWJlciI9PXR5cGVvZiB0KXJldHVybiBOdW1iZXIuaXNGaW5pdGUodCk/MD09PXQmJi0xLzA9PTEvdD8iJC0wIjp0OjEvMD09PXQ/IiRJbmZpbml0eSI6LTEvMD09PXQ/IiQtSW5maW5pdHkiOiIkTmFOIjtpZih2b2lkIDA9PT10KXJldHVybiIkdW5kZWZpbmVkIjtpZigiZnVuY3Rpb24iPT10eXBlb2YgdCl7aWYodm9pZCAwIT09KFQ9bS5nZXQodCkpKXJldHVybiB2b2lkIDAhPT0oZT1mLmdldCh0KSl8fChlPUpTT04uc3RyaW5naWZ5KHtpZDpULmlkLGJvdW5kOlQuYm91bmR9LGkpLG51bGw9PT1jJiYoYz1uZXcgRm9ybURhdGEpLFQ9bCsrLGMuc2V0KCIiK1QsZSksZT0iJGgiK1QudG9TdHJpbmcoMTYpLGYuc2V0KHQsZSkpLGU7aWYodm9pZCAwIT09biYmLTE9PT1lLmluZGV4T2YoIjoiKSYmdm9pZCAwIT09KFQ9Zi5nZXQodGhpcykpKXJldHVybiBuLnNldChUKyI6IitlLHQpLCIkVCI7dGhyb3cgRXJyb3IoIkNsaWVudCBGdW5jdGlvbnMgY2Fubm90IGJlIHBhc3NlZCBkaXJlY3RseSB0byBTZXJ2ZXIgRnVuY3Rpb25zLiBPbmx5IEZ1bmN0aW9ucyBwYXNzZWQgZnJvbSB0aGUgU2VydmVyIGNhbiBiZSBwYXNzZWQgYmFjayBhZ2Fpbi4iKX1pZigic3ltYm9sIj09dHlwZW9mIHQpe2lmKHZvaWQgMCE9PW4mJi0xPT09ZS5pbmRleE9mKCI6IikmJnZvaWQgMCE9PShUPWYuZ2V0KHRoaXMpKSlyZXR1cm4gbi5zZXQoVCsiOiIrZSx0KSwiJFQiO3Rocm93IEVycm9yKCJTeW1ib2xzIGNhbm5vdCBiZSBwYXNzZWQgdG8gYSBTZXJ2ZXIgRnVuY3Rpb24gd2l0aG91dCBhIHRlbXBvcmFyeSByZWZlcmVuY2Ugc2V0LiBQYXNzIGEgVGVtcG9yYXJ5UmVmZXJlbmNlU2V0IHRvIHRoZSBvcHRpb25zLiIpfWlmKCJiaWdpbnQiPT10eXBlb2YgdClyZXR1cm4iJG4iK3QudG9TdHJpbmcoMTApO3Rocm93IEVycm9yKCJUeXBlICIrdHlwZW9mIHQrIiBpcyBub3Qgc3VwcG9ydGVkIGFzIGFuIGFyZ3VtZW50IHRvIGEgU2VydmVyIEZ1bmN0aW9uLiIpfWZ1bmN0aW9uIGEoZSx0KXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiYodD0iJCIrdC50b1N0cmluZygxNiksZi5zZXQoZSx0KSx2b2lkIDAhPT1uJiZuLnNldCh0LGUpKSxkPWUsSlNPTi5zdHJpbmdpZnkoZSxpKX12YXIgbD0xLHM9MCxjPW51bGwsZj1uZXcgV2Vha01hcCxkPWUsRT1hKGUsMCk7cmV0dXJuIG51bGw9PT1jP3IoRSk6KGMuc2V0KCIwIixFKSwwPT09cyYmcihjKSksZnVuY3Rpb24oKXswPHMmJihzPTAsbnVsbD09PWM/cihFKTpyKGMpKX19KGUsMCx0JiZ0LnRlbXBvcmFyeVJlZmVyZW5jZXM/dC50ZW1wb3JhcnlSZWZlcmVuY2VzOnZvaWQgMCxuLHIpO2lmKHQmJnQuc2lnbmFsKXt2YXIgdT10LnNpZ25hbDtpZih1LmFib3J0ZWQpbyh1LnJlYXNvbik7ZWxzZXt2YXIgaT1mdW5jdGlvbigpe28odS5yZWFzb24pLHUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYWJvcnQiLGkpfTt1LmFkZEV2ZW50TGlzdGVuZXIoImFib3J0IixpKX19fSl9LG4ucmVnaXN0ZXJTZXJ2ZXJSZWZlcmVuY2U9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gRShlLHQsbnVsbCksZX19LDkxNTk4LChlLHQsbik9PnsidXNlIHN0cmljdCI7dC5leHBvcnRzPWUucig0OTcwNil9LDc1MDQ1LChlLHQsbik9PnsidXNlIHN0cmljdCI7dC5leHBvcnRzPWUucig5MTU5OCl9LDU5NDMwLChlLHQsbik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciByLG89e0FDVElPTl9ITVJfUkVGUkVTSDpmdW5jdGlvbigpe3JldHVybiBjfSxBQ1RJT05fTkFWSUdBVEU6ZnVuY3Rpb24oKXtyZXR1cm4gYX0sQUNUSU9OX1JFRlJFU0g6ZnVuY3Rpb24oKXtyZXR1cm4gaX0sQUNUSU9OX1JFU1RPUkU6ZnVuY3Rpb24oKXtyZXR1cm4gbH0sQUNUSU9OX1NFUlZFUl9BQ1RJT046ZnVuY3Rpb24oKXtyZXR1cm4gZn0sQUNUSU9OX1NFUlZFUl9QQVRDSDpmdW5jdGlvbigpe3JldHVybiBzfSxQcmVmZXRjaEtpbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gZH19O2Zvcih2YXIgdSBpbiBvKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLHUse2VudW1lcmFibGU6ITAsZ2V0Om9bdV19KTtsZXQgaT0icmVmcmVzaCIsYT0ibmF2aWdhdGUiLGw9InJlc3RvcmUiLHM9InNlcnZlci1wYXRjaCIsYz0iaG1yLXJlZnJlc2giLGY9InNlcnZlci1hY3Rpb24iO3ZhciBkPSgocj17fSkuQVVUTz0iYXV0byIsci5GVUxMPSJmdWxsIixyKTsoImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw5MTc2OCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSl7cmV0dXJuIG51bGwhPT1lJiYib2JqZWN0Ij09dHlwZW9mIGUmJiJ0aGVuImluIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBlLnRoZW59T2JqZWN0LmRlZmluZVByb3BlcnR5KG4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJpc1RoZW5hYmxlIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gcn19KX0sOTQ4NzksKGUsdCxuKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIHI9e2Rpc3BhdGNoQXBwUm91dGVyQWN0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIGx9LHVzZUFjdGlvblF1ZXVlOmZ1bmN0aW9uKCl7cmV0dXJuIHN9fTtmb3IodmFyIG8gaW4gcilPYmplY3QuZGVmaW5lUHJvcGVydHkobixvLHtlbnVtZXJhYmxlOiEwLGdldDpyW29dfSk7bGV0IHU9ZS5yKDQ0MDY2KS5fKGUucig3NTIwMSkpLGk9ZS5yKDkxNzY4KSxhPW51bGw7ZnVuY3Rpb24gbChlKXtpZihudWxsPT09YSl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIkludGVybmFsIE5leHQuanMgZXJyb3I6IFJvdXRlciBhY3Rpb24gZGlzcGF0Y2hlZCBiZWZvcmUgaW5pdGlhbGl6YXRpb24uIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU2NjgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7YShlKX1mdW5jdGlvbiBzKGUpe2xldFt0LG5dPXUuZGVmYXVsdC51c2VTdGF0ZShlLnN0YXRlKTthPXQ9PmUuZGlzcGF0Y2godCxuKTtsZXQgcj0oMCx1LnVzZU1lbW8pKCgpPT50LFt0XSk7cmV0dXJuKDAsaS5pc1RoZW5hYmxlKShyKT8oMCx1LnVzZSkocik6cn0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSwzMDkzMSwoZSx0LG4pPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiY2FsbFNlcnZlciIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGl9fSk7bGV0IHI9ZS5yKDc1MjAxKSxvPWUucig1OTQzMCksdT1lLnIoOTQ4NzkpO2FzeW5jIGZ1bmN0aW9uIGkoZSx0KXtyZXR1cm4gbmV3IFByb21pc2UoKG4saSk9PnsoMCxyLnN0YXJ0VHJhbnNpdGlvbikoKCk9PnsoMCx1LmRpc3BhdGNoQXBwUm91dGVyQWN0aW9uKSh7dHlwZTpvLkFDVElPTl9TRVJWRVJfQUNUSU9OLGFjdGlvbklkOmUsYWN0aW9uQXJnczp0LHJlc29sdmU6bixyZWplY3Q6aX0pfSl9KX0oImZ1bmN0aW9uIj09dHlwZW9mIG4uZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiBuLmRlZmF1bHQmJm51bGwhPT1uLmRlZmF1bHQpJiZ2b2lkIDA9PT1uLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24obi5kZWZhdWx0LG4pLHQuZXhwb3J0cz1uLmRlZmF1bHQpfSw4OTU5NCwoZSx0LG4pPT57InVzZSBzdHJpY3QiO2xldCByO09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiZmluZFNvdXJjZU1hcFVSTCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHJ9fSk7KCJmdW5jdGlvbiI9PXR5cGVvZiBuLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygbi5kZWZhdWx0JiZudWxsIT09bi5kZWZhdWx0KSYmdm9pZCAwPT09bi5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkobi5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKG4uZGVmYXVsdCxuKSx0LmV4cG9ydHM9bi5kZWZhdWx0KX1dKTs="}},"time_used":10,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":10,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coin-images.coingecko.com/coins/images/279/large/ethereum.png?1696501628","fqdn":"coin-images.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"104.21.63.32","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.797Z","timestamp":1785143926797,"http_version":"HTTP/3","security_state":"","security_info":null,"request":{"raw":"GET /coins/images/279/large/ethereum.png?1696501628 HTTP/1.1\r\nHost: coin-images.coingecko.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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\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":"HTTP/3 200 \r\nx-amz-id-2: AfuKWJd+EqcwweT0VgEm6+/c0BTGHR9A2laflJDnhk0QvXATj/+WqhfB5XSuG2MDc8uRZHMi04g=\r\nx-amz-request-id: 5ZK48BRCW41ZWPT6\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\nlast-modified: Wed, 29 May 2024 02:48:08 GMT\r\netag: \"af87366546180c799987073ac53f0733\"\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: 6vmhZ_PH5UG1O..xRx9fhSAwELb.H8zx\r\naccept-ranges: bytes\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\nserver: cloudflare\r\ncf-cache-status: HIT\r\npriority: u=4,i\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=GiIseHQnYzcRvQ4wD0q2yIOjP%2FiBnOEK2VleAsCggI8wVaIfqih8bNgIHltDYObp2CDOOnOMb0OZ%2B4enRg%2Fv2xGWdQMCBEn5ndmR98CaHHJMuUURkrZ2QKATrd3%2FIObKBEGQLO6flheX%2FZWl\"}]}\r\ncf-bgj: h2pri,imgq:85\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-polished: ok, orig_size=13114\r\nage: 2911\r\ncf-ray: a21a8f0698de56c1-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 9561\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"]},{"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":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-11T07:57:31.65745Z","times_seen":17832625,"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":"scromegatrade.com/image/tf.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.522Z","timestamp":1785143926522,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/tf.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/owl-carousel/owl.carousel.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.289Z","timestamp":1785143908289,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/owl-carousel/owl.carousel.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:42 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"a70e-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 10926\r\nKeep-Alive: timeout=5, max=99\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":42766,"size_decoded":11295,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (32000)","md5":"b7b9c97cd68ec336d01a79d5be48c58d","sha1":"1a99890b57c9859a622337ed0b2f989d6e30cc0e","sha256":"b394d33b2a7ec654a6b037ebfda6618341b3f897a362be624c923c2711b54a43","sha512":"968e18822c24c6c54827999ec766fe54750a9489d22b6a45b641854731ec00beb8fd93b9bda8823e67463f7a99ab587d333673821ae90cfdf7e92716ba050c4e","ssdeep":"768:JBA7PMMFA0tdlXKNSR4vlGRep2lcwJeL+C2jQdc7/CORUQuFBt33:HAIMFFdYMxAcLQDV","tlshash":"cb137346b3202d2a869b61a0663f160bb23a291ce414507d7d7da6de6d7dc4c213fbfc","first_seen":"2023-03-07T01:03:18Z","last_seen":"2026-08-11T07:11:06.246026Z","times_seen":20606,"resource_available":true,"data":"LyoqCiAqIE93bCBDYXJvdXNlbCB2Mi4yLjEKICogQ29weXJpZ2h0IDIwMTMtMjAxNyBEYXZpZCBEZXV0c2NoCiAqIExpY2Vuc2VkIHVuZGVyICAoKQogKi8KIWZ1bmN0aW9uKGEsYixjLGQpe2Z1bmN0aW9uIGUoYixjKXt0aGlzLnNldHRpbmdzPW51bGwsdGhpcy5vcHRpb25zPWEuZXh0ZW5kKHt9LGUuRGVmYXVsdHMsYyksdGhpcy4kZWxlbWVudD1hKGIpLHRoaXMuX2hhbmRsZXJzPXt9LHRoaXMuX3BsdWdpbnM9e30sdGhpcy5fc3VwcmVzcz17fSx0aGlzLl9jdXJyZW50PW51bGwsdGhpcy5fc3BlZWQ9bnVsbCx0aGlzLl9jb29yZGluYXRlcz1bXSx0aGlzLl9icmVha3BvaW50PW51bGwsdGhpcy5fd2lkdGg9bnVsbCx0aGlzLl9pdGVtcz1bXSx0aGlzLl9jbG9uZXM9W10sdGhpcy5fbWVyZ2Vycz1bXSx0aGlzLl93aWR0aHM9W10sdGhpcy5faW52YWxpZGF0ZWQ9e30sdGhpcy5fcGlwZT1bXSx0aGlzLl9kcmFnPXt0aW1lOm51bGwsdGFyZ2V0Om51bGwscG9pbnRlcjpudWxsLHN0YWdlOntzdGFydDpudWxsLGN1cnJlbnQ6bnVsbH0sZGlyZWN0aW9uOm51bGx9LHRoaXMuX3N0YXRlcz17Y3VycmVudDp7fSx0YWdzOntpbml0aWFsaXppbmc6WyJidXN5Il0sYW5pbWF0aW5nOlsiYnVzeSJdLGRyYWdnaW5nOlsiaW50ZXJhY3RpbmciXX19LGEuZWFjaChbIm9uUmVzaXplIiwib25UaHJvdHRsZWRSZXNpemUiXSxhLnByb3h5KGZ1bmN0aW9uKGIsYyl7dGhpcy5faGFuZGxlcnNbY109YS5wcm94eSh0aGlzW2NdLHRoaXMpfSx0aGlzKSksYS5lYWNoKGUuUGx1Z2lucyxhLnByb3h5KGZ1bmN0aW9uKGEsYil7dGhpcy5fcGx1Z2luc1thLmNoYXJBdCgwKS50b0xvd2VyQ2FzZSgpK2Euc2xpY2UoMSldPW5ldyBiKHRoaXMpfSx0aGlzKSksYS5lYWNoKGUuV29ya2VycyxhLnByb3h5KGZ1bmN0aW9uKGIsYyl7dGhpcy5fcGlwZS5wdXNoKHtmaWx0ZXI6Yy5maWx0ZXIscnVuOmEucHJveHkoYy5ydW4sdGhpcyl9KX0sdGhpcykpLHRoaXMuc2V0dXAoKSx0aGlzLmluaXRpYWxpemUoKX1lLkRlZmF1bHRzPXtpdGVtczozLGxvb3A6ITEsY2VudGVyOiExLHJld2luZDohMSxtb3VzZURyYWc6ITAsdG91Y2hEcmFnOiEwLHB1bGxEcmFnOiEwLGZyZWVEcmFnOiExLG1hcmdpbjowLHN0YWdlUGFkZGluZzowLG1lcmdlOiExLG1lcmdlRml0OiEwLGF1dG9XaWR0aDohMSxzdGFydFBvc2l0aW9uOjAscnRsOiExLHNtYXJ0U3BlZWQ6MjUwLGZsdWlkU3BlZWQ6ITEsZHJhZ0VuZFNwZWVkOiExLHJlc3BvbnNpdmU6e30scmVzcG9uc2l2ZVJlZnJlc2hSYXRlOjIwMCxyZXNwb25zaXZlQmFzZUVsZW1lbnQ6YixmYWxsYmFja0Vhc2luZzoic3dpbmciLGluZm86ITEsbmVzdGVkSXRlbVNlbGVjdG9yOiExLGl0ZW1FbGVtZW50OiJkaXYiLHN0YWdlRWxlbWVudDoiZGl2IixyZWZyZXNoQ2xhc3M6Im93bC1yZWZyZXNoIixsb2FkZWRDbGFzczoib3dsLWxvYWRlZCIsbG9hZGluZ0NsYXNzOiJvd2wtbG9hZGluZyIscnRsQ2xhc3M6Im93bC1ydGwiLHJlc3BvbnNpdmVDbGFzczoib3dsLXJlc3BvbnNpdmUiLGRyYWdDbGFzczoib3dsLWRyYWciLGl0ZW1DbGFzczoib3dsLWl0ZW0iLHN0YWdlQ2xhc3M6Im93bC1zdGFnZSIsc3RhZ2VPdXRlckNsYXNzOiJvd2wtc3RhZ2Utb3V0ZXIiLGdyYWJDbGFzczoib3dsLWdyYWIifSxlLldpZHRoPXtEZWZhdWx0OiJkZWZhdWx0IixJbm5lcjoiaW5uZXIiLE91dGVyOiJvdXRlciJ9LGUuVHlwZT17RXZlbnQ6ImV2ZW50IixTdGF0ZToic3RhdGUifSxlLlBsdWdpbnM9e30sZS5Xb3JrZXJzPVt7ZmlsdGVyOlsid2lkdGgiLCJzZXR0aW5ncyJdLHJ1bjpmdW5jdGlvbigpe3RoaXMuX3dpZHRoPXRoaXMuJGVsZW1lbnQud2lkdGgoKX19LHtmaWx0ZXI6WyJ3aWR0aCIsIml0ZW1zIiwic2V0dGluZ3MiXSxydW46ZnVuY3Rpb24oYSl7YS5jdXJyZW50PXRoaXMuX2l0ZW1zJiZ0aGlzLl9pdGVtc1t0aGlzLnJlbGF0aXZlKHRoaXMuX2N1cnJlbnQpXX19LHtmaWx0ZXI6WyJpdGVtcyIsInNldHRpbmdzIl0scnVuOmZ1bmN0aW9uKCl7dGhpcy4kc3RhZ2UuY2hpbGRyZW4oIi5jbG9uZWQiKS5yZW1vdmUoKX19LHtmaWx0ZXI6WyJ3aWR0aCIsIml0ZW1zIiwic2V0dGluZ3MiXSxydW46ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5zZXR0aW5ncy5tYXJnaW58fCIiLGM9IXRoaXMuc2V0dGluZ3MuYXV0b1dpZHRoLGQ9dGhpcy5zZXR0aW5ncy5ydGwsZT17d2lkdGg6ImF1dG8iLCJtYXJnaW4tbGVmdCI6ZD9iOiIiLCJtYXJnaW4tcmlnaHQiOmQ/IiI6Yn07IWMmJnRoaXMuJHN0YWdlLmNoaWxkcmVuKCkuY3NzKGUpLGEuY3NzPWV9fSx7ZmlsdGVyOlsid2lkdGgiLCJpdGVtcyIsInNldHRpbmdzIl0scnVuOmZ1bmN0aW9uKGEpe3ZhciBiPSh0aGlzLndpZHRoKCkvdGhpcy5zZXR0aW5ncy5pdGVtcykudG9GaXhlZCgzKS10aGlzLnNldHRpbmdzLm1hcmdpbixjPW51bGwsZD10aGlzLl9pdGVtcy5sZW5ndGgsZT0hdGhpcy5zZXR0aW5ncy5hdXRvV2lkdGgsZj1bXTtmb3IoYS5pdGVtcz17bWVyZ2U6ITEsd2lkdGg6Yn07ZC0tOyljPXRoaXMuX21lcmdlcnNbZF0sYz10aGlzLnNldHRpbmdzLm1lcmdlRml0JiZNYXRoLm1pbihjLHRoaXMuc2V0dGluZ3MuaXRlbXMpfHxjLGEuaXRlbXMubWVyZ2U9Yz4xfHxhLml0ZW1zLm1lcmdlLGZbZF09ZT9iKmM6dGhpcy5faXRlbXNbZF0ud2lkdGgoKTt0aGlzLl93aWR0aHM9Zn19LHtmaWx0ZXI6WyJpdGVtcyIsInNldHRpbmdzIl0scnVuOmZ1bmN0aW9uKCl7dmFyIGI9W10sYz10aGlzLl9pdGVtcyxkPXRoaXMuc2V0dGluZ3MsZT1NYXRoLm1heCgyKmQuaXRlbXMsNCksZj0yKk1hdGguY2VpbChjLmxlbmd0aC8yKSxnPWQubG9vcCYmYy5sZW5ndGg/ZC5yZXdpbmQ/ZTpNYXRoLm1heChlLGYpOjAsaD0iIixpPSIiO2ZvcihnLz0yO2ctLTspYi5wdXNoKHRoaXMubm9ybWFsaXplKGIubGVuZ3RoLzIsITApKSxoKz1jW2JbYi5sZW5ndGgtMV1dWzBdLm91dGVySFRNTCxiLnB1c2godGhpcy5ub3JtYWxpemUoYy5sZW5ndGgtMS0oYi5sZW5ndGgtMSkvMiwhMCkpLGk9Y1tiW2IubGVuZ3RoLTFdXVswXS5vdXRlckhUTUwraTt0aGlzLl9jbG9uZXM9YixhKGgpLmFkZENsYXNzKCJjbG9uZWQiKS5hcHBlbmRUbyh0aGlzLiRzdGFnZSksYShpKS5hZGRDbGFzcygiY2xvbmVkIikucHJlcGVuZFRvKHRoaXMuJHN0YWdlKX19LHtmaWx0ZXI6WyJ3aWR0aCIsIml0ZW1zIiwic2V0dGluZ3MiXSxydW46ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5zZXR0aW5ncy5ydGw/MTotMSxiPXRoaXMuX2Nsb25lcy5sZW5ndGgrdGhpcy5faXRlbXMubGVuZ3RoLGM9LTEsZD0wLGU9MCxmPVtdOysrYzxiOylkPWZbYy0xXXx8MCxlPXRoaXMuX3dpZHRoc1t0aGlzLnJlbGF0aXZlKGMpXSt0aGlzLnNldHRpbmdzLm1hcmdpbixmLnB1c2goZCtlKmEpO3RoaXMuX2Nvb3JkaW5hdGVzPWZ9fSx7ZmlsdGVyOlsid2lkdGgiLCJpdGVtcyIsInNldHRpbmdzIl0scnVuOmZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5zZXR0aW5ncy5zdGFnZVBhZGRpbmcsYj10aGlzLl9jb29yZGluYXRlcyxjPXt3aWR0aDpNYXRoLmNlaWwoTWF0aC5hYnMoYltiLmxlbmd0aC0xXSkpKzIqYSwicGFkZGluZy1sZWZ0IjphfHwiIiwicGFkZGluZy1yaWdodCI6YXx8IiJ9O3RoaXMuJHN0YWdlLmNzcyhjKX19LHtmaWx0ZXI6WyJ3aWR0aCIsIml0ZW1zIiwic2V0dGluZ3MiXSxydW46ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5fY29vcmRpbmF0ZXMubGVuZ3RoLGM9IXRoaXMuc2V0dGluZ3MuYXV0b1dpZHRoLGQ9dGhpcy4kc3RhZ2UuY2hpbGRyZW4oKTtpZihjJiZhLml0ZW1zLm1lcmdlKWZvcig7Yi0tOylhLmNzcy53aWR0aD10aGlzLl93aWR0aHNbdGhpcy5yZWxhdGl2ZShiKV0sZC5lcShiKS5jc3MoYS5jc3MpO2Vsc2UgYyYmKGEuY3NzLndpZHRoPWEuaXRlbXMud2lkdGgsZC5jc3MoYS5jc3MpKX19LHtmaWx0ZXI6WyJpdGVtcyJdLHJ1bjpmdW5jdGlvbigpe3RoaXMuX2Nvb3JkaW5hdGVzLmxlbmd0aDwxJiZ0aGlzLiRzdGFnZS5yZW1vdmVBdHRyKCJzdHlsZSIpfX0se2ZpbHRlcjpbIndpZHRoIiwiaXRlbXMiLCJzZXR0aW5ncyJdLHJ1bjpmdW5jdGlvbihhKXthLmN1cnJlbnQ9YS5jdXJyZW50P3RoaXMuJHN0YWdlLmNoaWxkcmVuKCkuaW5kZXgoYS5jdXJyZW50KTowLGEuY3VycmVudD1NYXRoLm1heCh0aGlzLm1pbmltdW0oKSxNYXRoLm1pbih0aGlzLm1heGltdW0oKSxhLmN1cnJlbnQpKSx0aGlzLnJlc2V0KGEuY3VycmVudCl9fSx7ZmlsdGVyOlsicG9zaXRpb24iXSxydW46ZnVuY3Rpb24oKXt0aGlzLmFuaW1hdGUodGhpcy5jb29yZGluYXRlcyh0aGlzLl9jdXJyZW50KSl9fSx7ZmlsdGVyOlsid2lkdGgiLCJwb3NpdGlvbiIsIml0ZW1zIiwic2V0dGluZ3MiXSxydW46ZnVuY3Rpb24oKXt2YXIgYSxiLGMsZCxlPXRoaXMuc2V0dGluZ3MucnRsPzE6LTEsZj0yKnRoaXMuc2V0dGluZ3Muc3RhZ2VQYWRkaW5nLGc9dGhpcy5jb29yZGluYXRlcyh0aGlzLmN1cnJlbnQoKSkrZixoPWcrdGhpcy53aWR0aCgpKmUsaT1bXTtmb3IoYz0wLGQ9dGhpcy5fY29vcmRpbmF0ZXMubGVuZ3RoO2M8ZDtjKyspYT10aGlzLl9jb29yZGluYXRlc1tjLTFdfHwwLGI9TWF0aC5hYnModGhpcy5fY29vcmRpbmF0ZXNbY10pK2YqZSwodGhpcy5vcChhLCI8PSIsZykmJnRoaXMub3AoYSwiPiIsaCl8fHRoaXMub3AoYiwiPCIsZykmJnRoaXMub3AoYiwiPiIsaCkpJiZpLnB1c2goYyk7dGhpcy4kc3RhZ2UuY2hpbGRyZW4oIi5hY3RpdmUiKS5yZW1vdmVDbGFzcygiYWN0aXZlIiksdGhpcy4kc3RhZ2UuY2hpbGRyZW4oIjplcSgiK2kuam9pbigiKSwgOmVxKCIpKyIpIikuYWRkQ2xhc3MoImFjdGl2ZSIpLHRoaXMuc2V0dGluZ3MuY2VudGVyJiYodGhpcy4kc3RhZ2UuY2hpbGRyZW4oIi5jZW50ZXIiKS5yZW1vdmVDbGFzcygiY2VudGVyIiksdGhpcy4kc3RhZ2UuY2hpbGRyZW4oKS5lcSh0aGlzLmN1cnJlbnQoKSkuYWRkQ2xhc3MoImNlbnRlciIpKX19XSxlLnByb3RvdHlwZS5pbml0aWFsaXplPWZ1bmN0aW9uKCl7aWYodGhpcy5lbnRlcigiaW5pdGlhbGl6aW5nIiksdGhpcy50cmlnZ2VyKCJpbml0aWFsaXplIiksdGhpcy4kZWxlbWVudC50b2dnbGVDbGFzcyh0aGlzLnNldHRpbmdzLnJ0bENsYXNzLHRoaXMuc2V0dGluZ3MucnRsKSx0aGlzLnNldHRpbmdzLmF1dG9XaWR0aCYmIXRoaXMuaXMoInByZS1sb2FkaW5nIikpe3ZhciBiLGMsZTtiPXRoaXMuJGVsZW1lbnQuZmluZCgiaW1nIiksYz10aGlzLnNldHRpbmdzLm5lc3RlZEl0ZW1TZWxlY3Rvcj8iLiIrdGhpcy5zZXR0aW5ncy5uZXN0ZWRJdGVtU2VsZWN0b3I6ZCxlPXRoaXMuJGVsZW1lbnQuY2hpbGRyZW4oYykud2lkdGgoKSxiLmxlbmd0aCYmZTw9MCYmdGhpcy5wcmVsb2FkQXV0b1dpZHRoSW1hZ2VzKGIpfXRoaXMuJGVsZW1lbnQuYWRkQ2xhc3ModGhpcy5vcHRpb25zLmxvYWRpbmdDbGFzcyksdGhpcy4kc3RhZ2U9YSgiPCIrdGhpcy5zZXR0aW5ncy5zdGFnZUVsZW1lbnQrJyBjbGFzcz0iJyt0aGlzLnNldHRpbmdzLnN0YWdlQ2xhc3MrJyIvPicpLndyYXAoJzxkaXYgY2xhc3M9IicrdGhpcy5zZXR0aW5ncy5zdGFnZU91dGVyQ2xhc3MrJyIvPicpLHRoaXMuJGVsZW1lbnQuYXBwZW5kKHRoaXMuJHN0YWdlLnBhcmVudCgpKSx0aGlzLnJlcGxhY2UodGhpcy4kZWxlbWVudC5jaGlsZHJlbigpLm5vdCh0aGlzLiRzdGFnZS5wYXJlbnQoKSkpLHRoaXMuJGVsZW1lbnQuaXMoIjp2aXNpYmxlIik/dGhpcy5yZWZyZXNoKCk6dGhpcy5pbnZhbGlkYXRlKCJ3aWR0aCIpLHRoaXMuJGVsZW1lbnQucmVtb3ZlQ2xhc3ModGhpcy5vcHRpb25zLmxvYWRpbmdDbGFzcykuYWRkQ2xhc3ModGhpcy5vcHRpb25zLmxvYWRlZENsYXNzKSx0aGlzLnJlZ2lzdGVyRXZlbnRIYW5kbGVycygpLHRoaXMubGVhdmUoImluaXRpYWxpemluZyIpLHRoaXMudHJpZ2dlcigiaW5pdGlhbGl6ZWQiKX0sZS5wcm90b3R5cGUuc2V0dXA9ZnVuY3Rpb24oKXt2YXIgYj10aGlzLnZpZXdwb3J0KCksYz10aGlzLm9wdGlvbnMucmVzcG9uc2l2ZSxkPS0xLGU9bnVsbDtjPyhhLmVhY2goYyxmdW5jdGlvbihhKXthPD1iJiZhPmQmJihkPU51bWJlcihhKSl9KSxlPWEuZXh0ZW5kKHt9LHRoaXMub3B0aW9ucyxjW2RdKSwiZnVuY3Rpb24iPT10eXBlb2YgZS5zdGFnZVBhZGRpbmcmJihlLnN0YWdlUGFkZGluZz1lLnN0YWdlUGFkZGluZygpKSxkZWxldGUgZS5yZXNwb25zaXZlLGUucmVzcG9uc2l2ZUNsYXNzJiZ0aGlzLiRlbGVtZW50LmF0dHIoImNsYXNzIix0aGlzLiRlbGVtZW50LmF0dHIoImNsYXNzIikucmVwbGFjZShuZXcgUmVnRXhwKCIoIit0aGlzLm9wdGlvbnMucmVzcG9uc2l2ZUNsYXNzKyItKVxcUytcXHMiLCJnIiksIiQxIitkKSkpOmU9YS5leHRlbmQoe30sdGhpcy5vcHRpb25zKSx0aGlzLnRyaWdnZXIoImNoYW5nZSIse3Byb3BlcnR5OntuYW1lOiJzZXR0aW5ncyIsdmFsdWU6ZX19KSx0aGlzLl9icmVha3BvaW50PWQsdGhpcy5zZXR0aW5ncz1lLHRoaXMuaW52YWxpZGF0ZSgic2V0dGluZ3MiKSx0aGlzLnRyaWdnZXIoImNoYW5nZWQiLHtwcm9wZXJ0eTp7bmFtZToic2V0dGluZ3MiLHZhbHVlOnRoaXMuc2V0dGluZ3N9fSl9LGUucHJvdG90eXBlLm9wdGlvbnNMb2dpYz1mdW5jdGlvbigpe3RoaXMuc2V0dGluZ3MuYXV0b1dpZHRoJiYodGhpcy5zZXR0aW5ncy5zdGFnZVBhZGRpbmc9ITEsdGhpcy5zZXR0aW5ncy5tZXJnZT0hMSl9LGUucHJvdG90eXBlLnByZXBhcmU9ZnVuY3Rpb24oYil7dmFyIGM9dGhpcy50cmlnZ2VyKCJwcmVwYXJlIix7Y29udGVudDpifSk7cmV0dXJuIGMuZGF0YXx8KGMuZGF0YT1hKCI8Iit0aGlzLnNldHRpbmdzLml0ZW1FbGVtZW50KyIvPiIpLmFkZENsYXNzKHRoaXMub3B0aW9ucy5pdGVtQ2xhc3MpLmFwcGVuZChiKSksdGhpcy50cmlnZ2VyKCJwcmVwYXJlZCIse2NvbnRlbnQ6Yy5kYXRhfSksYy5kYXRhfSxlLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oKXtmb3IodmFyIGI9MCxjPXRoaXMuX3BpcGUubGVuZ3RoLGQ9YS5wcm94eShmdW5jdGlvbihhKXtyZXR1cm4gdGhpc1thXX0sdGhpcy5faW52YWxpZGF0ZWQpLGU9e307YjxjOykodGhpcy5faW52YWxpZGF0ZWQuYWxsfHxhLmdyZXAodGhpcy5fcGlwZVtiXS5maWx0ZXIsZCkubGVuZ3RoPjApJiZ0aGlzLl9waXBlW2JdLnJ1bihlKSxiKys7dGhpcy5faW52YWxpZGF0ZWQ9e30sIXRoaXMuaXMoInZhbGlkIikmJnRoaXMuZW50ZXIoInZhbGlkIil9LGUucHJvdG90eXBlLndpZHRoPWZ1bmN0aW9uKGEpe3N3aXRjaChhPWF8fGUuV2lkdGguRGVmYXVsdCl7Y2FzZSBlLldpZHRoLklubmVyOmNhc2UgZS5XaWR0aC5PdXRlcjpyZXR1cm4gdGhpcy5fd2lkdGg7ZGVmYXVsdDpyZXR1cm4gdGhpcy5fd2lkdGgtMip0aGlzLnNldHRpbmdzLnN0YWdlUGFkZGluZyt0aGlzLnNldHRpbmdzLm1hcmdpbn19LGUucHJvdG90eXBlLnJlZnJlc2g9ZnVuY3Rpb24oKXt0aGlzLmVudGVyKCJyZWZyZXNoaW5nIiksdGhpcy50cmlnZ2VyKCJyZWZyZXNoIiksdGhpcy5zZXR1cCgpLHRoaXMub3B0aW9uc0xvZ2ljKCksdGhpcy4kZWxlbWVudC5hZGRDbGFzcyh0aGlzLm9wdGlvbnMucmVmcmVzaENsYXNzKSx0aGlzLnVwZGF0ZSgpLHRoaXMuJGVsZW1lbnQucmVtb3ZlQ2xhc3ModGhpcy5vcHRpb25zLnJlZnJlc2hDbGFzcyksdGhpcy5sZWF2ZSgicmVmcmVzaGluZyIpLHRoaXMudHJpZ2dlcigicmVmcmVzaGVkIil9LGUucHJvdG90eXBlLm9uVGhyb3R0bGVkUmVzaXplPWZ1bmN0aW9uKCl7Yi5jbGVhclRpbWVvdXQodGhpcy5yZXNpemVUaW1lciksdGhpcy5yZXNpemVUaW1lcj1iLnNldFRpbWVvdXQodGhpcy5faGFuZGxlcnMub25SZXNpemUsdGhpcy5zZXR0aW5ncy5yZXNwb25zaXZlUmVmcmVzaFJhdGUpfSxlLnByb3RvdHlwZS5vblJlc2l6ZT1mdW5jdGlvbigpe3JldHVybiEhdGhpcy5faXRlbXMubGVuZ3RoJiYodGhpcy5fd2lkdGghPT10aGlzLiRlbGVtZW50LndpZHRoKCkmJighIXRoaXMuJGVsZW1lbnQuaXMoIjp2aXNpYmxlIikmJih0aGlzLmVudGVyKCJyZXNpemluZyIpLHRoaXMudHJpZ2dlcigicmVzaXplIikuaXNEZWZhdWx0UHJldmVudGVkKCk/KHRoaXMubGVhdmUoInJlc2l6aW5nIiksITEpOih0aGlzLmludmFsaWRhdGUoIndpZHRoIiksdGhpcy5yZWZyZXNoKCksdGhpcy5sZWF2ZSgicmVzaXppbmciKSx2b2lkIHRoaXMudHJpZ2dlcigicmVzaXplZCIpKSkpKX0sZS5wcm90b3R5cGUucmVnaXN0ZXJFdmVudEhhbmRsZXJzPWZ1bmN0aW9uKCl7YS5zdXBwb3J0LnRyYW5zaXRpb24mJnRoaXMuJHN0YWdlLm9uKGEuc3VwcG9ydC50cmFuc2l0aW9uLmVuZCsiLm93bC5jb3JlIixhLnByb3h5KHRoaXMub25UcmFuc2l0aW9uRW5kLHRoaXMpKSx0aGlzLnNldHRpbmdzLnJlc3BvbnNpdmUhPT0hMSYmdGhpcy5vbihiLCJyZXNpemUiLHRoaXMuX2hhbmRsZXJzLm9uVGhyb3R0bGVkUmVzaXplKSx0aGlzLnNldHRpbmdzLm1vdXNlRHJhZyYmKHRoaXMuJGVsZW1lbnQuYWRkQ2xhc3ModGhpcy5vcHRpb25zLmRyYWdDbGFzcyksdGhpcy4kc3RhZ2Uub24oIm1vdXNlZG93bi5vd2wuY29yZSIsYS5wcm94eSh0aGlzLm9uRHJhZ1N0YXJ0LHRoaXMpKSx0aGlzLiRzdGFnZS5vbigiZHJhZ3N0YXJ0Lm93bC5jb3JlIHNlbGVjdHN0YXJ0Lm93bC5jb3JlIixmdW5jdGlvbigpe3JldHVybiExfSkpLHRoaXMuc2V0dGluZ3MudG91Y2hEcmFnJiYodGhpcy4kc3RhZ2Uub24oInRvdWNoc3RhcnQub3dsLmNvcmUiLGEucHJveHkodGhpcy5vbkRyYWdTdGFydCx0aGlzKSksdGhpcy4kc3RhZ2Uub24oInRvdWNoY2FuY2VsLm93bC5jb3JlIixhLnByb3h5KHRoaXMub25EcmFnRW5kLHRoaXMpKSl9LGUucHJvdG90eXBlLm9uRHJhZ1N0YXJ0PWZ1bmN0aW9uKGIpe3ZhciBkPW51bGw7MyE9PWIud2hpY2gmJihhLnN1cHBvcnQudHJhbnNmb3JtPyhkPXRoaXMuJHN0YWdlLmNzcygidHJhbnNmb3JtIikucmVwbGFjZSgvLipcKHxcKXwgL2csIiIpLnNwbGl0KCIsIiksZD17eDpkWzE2PT09ZC5sZW5ndGg/MTI6NF0seTpkWzE2PT09ZC5sZW5ndGg/MTM6NV19KTooZD10aGlzLiRzdGFnZS5wb3NpdGlvbigpLGQ9e3g6dGhpcy5zZXR0aW5ncy5ydGw/ZC5sZWZ0K3RoaXMuJHN0YWdlLndpZHRoKCktdGhpcy53aWR0aCgpK3RoaXMuc2V0dGluZ3MubWFyZ2luOmQubGVmdCx5OmQudG9wfSksdGhpcy5pcygiYW5pbWF0aW5nIikmJihhLnN1cHBvcnQudHJhbnNmb3JtP3RoaXMuYW5pbWF0ZShkLngpOnRoaXMuJHN0YWdlLnN0b3AoKSx0aGlzLmludmFsaWRhdGUoInBvc2l0aW9uIikpLHRoaXMuJGVsZW1lbnQudG9nZ2xlQ2xhc3ModGhpcy5vcHRpb25zLmdyYWJDbGFzcywibW91c2Vkb3duIj09PWIudHlwZSksdGhpcy5zcGVlZCgwKSx0aGlzLl9kcmFnLnRpbWU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdGhpcy5fZHJhZy50YXJnZXQ9YShiLnRhcmdldCksdGhpcy5fZHJhZy5zdGFnZS5zdGFydD1kLHRoaXMuX2RyYWcuc3RhZ2UuY3VycmVudD1kLHRoaXMuX2RyYWcucG9pbnRlcj10aGlzLnBvaW50ZXIoYiksYShjKS5vbigibW91c2V1cC5vd2wuY29yZSB0b3VjaGVuZC5vd2wuY29yZSIsYS5wcm94eSh0aGlzLm9uRHJhZ0VuZCx0aGlzKSksYShjKS5vbmUoIm1vdXNlbW92ZS5vd2wuY29yZSB0b3VjaG1vdmUub3dsLmNvcmUiLGEucHJveHkoZnVuY3Rpb24oYil7dmFyIGQ9dGhpcy5kaWZmZXJlbmNlKHRoaXMuX2RyYWcucG9pbnRlcix0aGlzLnBvaW50ZXIoYikpO2EoYykub24oIm1vdXNlbW92ZS5vd2wuY29yZSB0b3VjaG1vdmUub3dsLmNvcmUiLGEucHJveHkodGhpcy5vbkRyYWdNb3ZlLHRoaXMpKSxNYXRoLmFicyhkLngpPE1hdGguYWJzKGQueSkmJnRoaXMuaXMoInZhbGlkIil8fChiLnByZXZlbnREZWZhdWx0KCksdGhpcy5lbnRlcigiZHJhZ2dpbmciKSx0aGlzLnRyaWdnZXIoImRyYWciKSl9LHRoaXMpKSl9LGUucHJvdG90eXBlLm9uRHJhZ01vdmU9ZnVuY3Rpb24oYSl7dmFyIGI9bnVsbCxjPW51bGwsZD1udWxsLGU9dGhpcy5kaWZmZXJlbmNlKHRoaXMuX2RyYWcucG9pbnRlcix0aGlzLnBvaW50ZXIoYSkpLGY9dGhpcy5kaWZmZXJlbmNlKHRoaXMuX2RyYWcuc3RhZ2Uuc3RhcnQsZSk7dGhpcy5pcygiZHJhZ2dpbmciKSYmKGEucHJldmVudERlZmF1bHQoKSx0aGlzLnNldHRpbmdzLmxvb3A/KGI9dGhpcy5jb29yZGluYXRlcyh0aGlzLm1pbmltdW0oKSksYz10aGlzLmNvb3JkaW5hdGVzKHRoaXMubWF4aW11bSgpKzEpLWIsZi54PSgoZi54LWIpJWMrYyklYytiKTooYj10aGlzLnNldHRpbmdzLnJ0bD90aGlzLmNvb3JkaW5hdGVzKHRoaXMubWF4aW11bSgpKTp0aGlzLmNvb3JkaW5hdGVzKHRoaXMubWluaW11bSgpKSxjPXRoaXMuc2V0dGluZ3MucnRsP3RoaXMuY29vcmRpbmF0ZXModGhpcy5taW5pbXVtKCkpOnRoaXMuY29vcmRpbmF0ZXModGhpcy5tYXhpbXVtKCkpLGQ9dGhpcy5zZXR0aW5ncy5wdWxsRHJhZz8tMSplLngvNTowLGYueD1NYXRoLm1heChNYXRoLm1pbihmLngsYitkKSxjK2QpKSx0aGlzLl9kcmFnLnN0YWdlLmN1cnJlbnQ9Zix0aGlzLmFuaW1hdGUoZi54KSl9LGUucHJvdG90eXBlLm9uRHJhZ0VuZD1mdW5jdGlvbihiKXt2YXIgZD10aGlzLmRpZmZlcmVuY2UodGhpcy5fZHJhZy5wb2ludGVyLHRoaXMucG9pbnRlcihiKSksZT10aGlzLl9kcmFnLnN0YWdlLmN1cnJlbnQsZj1kLng+MF50aGlzLnNldHRpbmdzLnJ0bD8ibGVmdCI6InJpZ2h0IjthKGMpLm9mZigiLm93bC5jb3JlIiksdGhpcy4kZWxlbWVudC5yZW1vdmVDbGFzcyh0aGlzLm9wdGlvbnMuZ3JhYkNsYXNzKSwoMCE9PWQueCYmdGhpcy5pcygiZHJhZ2dpbmciKXx8IXRoaXMuaXMoInZhbGlkIikpJiYodGhpcy5zcGVlZCh0aGlzLnNldHRpbmdzLmRyYWdFbmRTcGVlZHx8dGhpcy5zZXR0aW5ncy5zbWFydFNwZWVkKSx0aGlzLmN1cnJlbnQodGhpcy5jbG9zZXN0KGUueCwwIT09ZC54P2Y6dGhpcy5fZHJhZy5kaXJlY3Rpb24pKSx0aGlzLmludmFsaWRhdGUoInBvc2l0aW9uIiksdGhpcy51cGRhdGUoKSx0aGlzLl9kcmFnLmRpcmVjdGlvbj1mLChNYXRoLmFicyhkLngpPjN8fChuZXcgRGF0ZSkuZ2V0VGltZSgpLXRoaXMuX2RyYWcudGltZT4zMDApJiZ0aGlzLl9kcmFnLnRhcmdldC5vbmUoImNsaWNrLm93bC5jb3JlIixmdW5jdGlvbigpe3JldHVybiExfSkpLHRoaXMuaXMoImRyYWdnaW5nIikmJih0aGlzLmxlYXZlKCJkcmFnZ2luZyIpLHRoaXMudHJpZ2dlcigiZHJhZ2dlZCIpKX0sZS5wcm90b3R5cGUuY2xvc2VzdD1mdW5jdGlvbihiLGMpe3ZhciBkPS0xLGU9MzAsZj10aGlzLndpZHRoKCksZz10aGlzLmNvb3JkaW5hdGVzKCk7cmV0dXJuIHRoaXMuc2V0dGluZ3MuZnJlZURyYWd8fGEuZWFjaChnLGEucHJveHkoZnVuY3Rpb24oYSxoKXtyZXR1cm4ibGVmdCI9PT1jJiZiPmgtZSYmYjxoK2U/ZD1hOiJyaWdodCI9PT1jJiZiPmgtZi1lJiZiPGgtZitlP2Q9YSsxOnRoaXMub3AoYiwiPCIsaCkmJnRoaXMub3AoYiwiPiIsZ1thKzFdfHxoLWYpJiYoZD0ibGVmdCI9PT1jP2ErMTphKSxkPT09LTF9LHRoaXMpKSx0aGlzLnNldHRpbmdzLmxvb3B8fCh0aGlzLm9wKGIsIj4iLGdbdGhpcy5taW5pbXVtKCldKT9kPWI9dGhpcy5taW5pbXVtKCk6dGhpcy5vcChiLCI8IixnW3RoaXMubWF4aW11bSgpXSkmJihkPWI9dGhpcy5tYXhpbXVtKCkpKSxkfSxlLnByb3RvdHlwZS5hbmltYXRlPWZ1bmN0aW9uKGIpe3ZhciBjPXRoaXMuc3BlZWQoKT4wO3RoaXMuaXMoImFuaW1hdGluZyIpJiZ0aGlzLm9uVHJhbnNpdGlvbkVuZCgpLGMmJih0aGlzLmVudGVyKCJhbmltYXRpbmciKSx0aGlzLnRyaWdnZXIoInRyYW5zbGF0ZSIpKSxhLnN1cHBvcnQudHJhbnNmb3JtM2QmJmEuc3VwcG9ydC50cmFuc2l0aW9uP3RoaXMuJHN0YWdlLmNzcyh7dHJhbnNmb3JtOiJ0cmFuc2xhdGUzZCgiK2IrInB4LDBweCwwcHgpIix0cmFuc2l0aW9uOnRoaXMuc3BlZWQoKS8xZTMrInMifSk6Yz90aGlzLiRzdGFnZS5hbmltYXRlKHtsZWZ0OmIrInB4In0sdGhpcy5zcGVlZCgpLHRoaXMuc2V0dGluZ3MuZmFsbGJhY2tFYXNpbmcsYS5wcm94eSh0aGlzLm9uVHJhbnNpdGlvbkVuZCx0aGlzKSk6dGhpcy4kc3RhZ2UuY3NzKHtsZWZ0OmIrInB4In0pfSxlLnByb3RvdHlwZS5pcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5fc3RhdGVzLmN1cnJlbnRbYV0mJnRoaXMuX3N0YXRlcy5jdXJyZW50W2FdPjB9LGUucHJvdG90eXBlLmN1cnJlbnQ9ZnVuY3Rpb24oYSl7aWYoYT09PWQpcmV0dXJuIHRoaXMuX2N1cnJlbnQ7aWYoMD09PXRoaXMuX2l0ZW1zLmxlbmd0aClyZXR1cm4gZDtpZihhPXRoaXMubm9ybWFsaXplKGEpLHRoaXMuX2N1cnJlbnQhPT1hKXt2YXIgYj10aGlzLnRyaWdnZXIoImNoYW5nZSIse3Byb3BlcnR5OntuYW1lOiJwb3NpdGlvbiIsdmFsdWU6YX19KTtiLmRhdGEhPT1kJiYoYT10aGlzLm5vcm1hbGl6ZShiLmRhdGEpKSx0aGlzLl9jdXJyZW50PWEsdGhpcy5pbnZhbGlkYXRlKCJwb3NpdGlvbiIpLHRoaXMudHJpZ2dlcigiY2hhbmdlZCIse3Byb3BlcnR5OntuYW1lOiJwb3NpdGlvbiIsdmFsdWU6dGhpcy5fY3VycmVudH19KX1yZXR1cm4gdGhpcy5fY3VycmVudH0sZS5wcm90b3R5cGUuaW52YWxpZGF0ZT1mdW5jdGlvbihiKXtyZXR1cm4ic3RyaW5nIj09PWEudHlwZShiKSYmKHRoaXMuX2ludmFsaWRhdGVkW2JdPSEwLHRoaXMuaXMoInZhbGlkIikmJnRoaXMubGVhdmUoInZhbGlkIikpLGEubWFwKHRoaXMuX2ludmFsaWRhdGVkLGZ1bmN0aW9uKGEsYil7cmV0dXJuIGJ9KX0sZS5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oYSl7YT10aGlzLm5vcm1hbGl6ZShhKSxhIT09ZCYmKHRoaXMuX3NwZWVkPTAsdGhpcy5fY3VycmVudD1hLHRoaXMuc3VwcHJlc3MoWyJ0cmFuc2xhdGUiLCJ0cmFuc2xhdGVkIl0pLHRoaXMuYW5pbWF0ZSh0aGlzLmNvb3JkaW5hdGVzKGEpKSx0aGlzLnJlbGVhc2UoWyJ0cmFuc2xhdGUiLCJ0cmFuc2xhdGVkIl0pKX0sZS5wcm90b3R5cGUubm9ybWFsaXplPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5faXRlbXMubGVuZ3RoLGU9Yj8wOnRoaXMuX2Nsb25lcy5sZW5ndGg7cmV0dXJuIXRoaXMuaXNOdW1lcmljKGEpfHxjPDE/YT1kOihhPDB8fGE+PWMrZSkmJihhPSgoYS1lLzIpJWMrYyklYytlLzIpLGF9LGUucHJvdG90eXBlLnJlbGF0aXZlPWZ1bmN0aW9uKGEpe3JldHVybiBhLT10aGlzLl9jbG9uZXMubGVuZ3RoLzIsdGhpcy5ub3JtYWxpemUoYSwhMCl9LGUucHJvdG90eXBlLm1heGltdW09ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGU9dGhpcy5zZXR0aW5ncyxmPXRoaXMuX2Nvb3JkaW5hdGVzLmxlbmd0aDtpZihlLmxvb3ApZj10aGlzLl9jbG9uZXMubGVuZ3RoLzIrdGhpcy5faXRlbXMubGVuZ3RoLTE7ZWxzZSBpZihlLmF1dG9XaWR0aHx8ZS5tZXJnZSl7Zm9yKGI9dGhpcy5faXRlbXMubGVuZ3RoLGM9dGhpcy5faXRlbXNbLS1iXS53aWR0aCgpLGQ9dGhpcy4kZWxlbWVudC53aWR0aCgpO2ItLSYmKGMrPXRoaXMuX2l0ZW1zW2JdLndpZHRoKCkrdGhpcy5zZXR0aW5ncy5tYXJnaW4sIShjPmQpKTspO2Y9YisxfWVsc2UgZj1lLmNlbnRlcj90aGlzLl9pdGVtcy5sZW5ndGgtMTp0aGlzLl9pdGVtcy5sZW5ndGgtZS5pdGVtcztyZXR1cm4gYSYmKGYtPXRoaXMuX2Nsb25lcy5sZW5ndGgvMiksTWF0aC5tYXgoZiwwKX0sZS5wcm90b3R5cGUubWluaW11bT1mdW5jdGlvbihhKXtyZXR1cm4gYT8wOnRoaXMuX2Nsb25lcy5sZW5ndGgvMn0sZS5wcm90b3R5cGUuaXRlbXM9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT1kP3RoaXMuX2l0ZW1zLnNsaWNlKCk6KGE9dGhpcy5ub3JtYWxpemUoYSwhMCksdGhpcy5faXRlbXNbYV0pfSxlLnByb3RvdHlwZS5tZXJnZXJzPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09ZD90aGlzLl9tZXJnZXJzLnNsaWNlKCk6KGE9dGhpcy5ub3JtYWxpemUoYSwhMCksdGhpcy5fbWVyZ2Vyc1thXSl9LGUucHJvdG90eXBlLmNsb25lcz1mdW5jdGlvbihiKXt2YXIgYz10aGlzLl9jbG9uZXMubGVuZ3RoLzIsZT1jK3RoaXMuX2l0ZW1zLmxlbmd0aCxmPWZ1bmN0aW9uKGEpe3JldHVybiBhJTI9PT0wP2UrYS8yOmMtKGErMSkvMn07cmV0dXJuIGI9PT1kP2EubWFwKHRoaXMuX2Nsb25lcyxmdW5jdGlvbihhLGIpe3JldHVybiBmKGIpfSk6YS5tYXAodGhpcy5fY2xvbmVzLGZ1bmN0aW9uKGEsYyl7cmV0dXJuIGE9PT1iP2YoYyk6bnVsbH0pfSxlLnByb3RvdHlwZS5zcGVlZD1mdW5jdGlvbihhKXtyZXR1cm4gYSE9PWQmJih0aGlzLl9zcGVlZD1hKSx0aGlzLl9zcGVlZH0sZS5wcm90b3R5cGUuY29vcmRpbmF0ZXM9ZnVuY3Rpb24oYil7dmFyIGMsZT0xLGY9Yi0xO3JldHVybiBiPT09ZD9hLm1hcCh0aGlzLl9jb29yZGluYXRlcyxhLnByb3h5KGZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuY29vcmRpbmF0ZXMoYil9LHRoaXMpKToodGhpcy5zZXR0aW5ncy5jZW50ZXI/KHRoaXMuc2V0dGluZ3MucnRsJiYoZT0tMSxmPWIrMSksYz10aGlzLl9jb29yZGluYXRlc1tiXSxjKz0odGhpcy53aWR0aCgpLWMrKHRoaXMuX2Nvb3JkaW5hdGVzW2ZdfHwwKSkvMiplKTpjPXRoaXMuX2Nvb3JkaW5hdGVzW2ZdfHwwLGM9TWF0aC5jZWlsKGMpKX0sZS5wcm90b3R5cGUuZHVyYXRpb249ZnVuY3Rpb24oYSxiLGMpe3JldHVybiAwPT09Yz8wOk1hdGgubWluKE1hdGgubWF4KE1hdGguYWJzKGItYSksMSksNikqTWF0aC5hYnMoY3x8dGhpcy5zZXR0aW5ncy5zbWFydFNwZWVkKX0sZS5wcm90b3R5cGUudG89ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLmN1cnJlbnQoKSxkPW51bGwsZT1hLXRoaXMucmVsYXRpdmUoYyksZj0oZT4wKS0oZTwwKSxnPXRoaXMuX2l0ZW1zLmxlbmd0aCxoPXRoaXMubWluaW11bSgpLGk9dGhpcy5tYXhpbXVtKCk7dGhpcy5zZXR0aW5ncy5sb29wPyghdGhpcy5zZXR0aW5ncy5yZXdpbmQmJk1hdGguYWJzKGUpPmcvMiYmKGUrPWYqLTEqZyksYT1jK2UsZD0oKGEtaCklZytnKSVnK2gsZCE9PWEmJmQtZTw9aSYmZC1lPjAmJihjPWQtZSxhPWQsdGhpcy5yZXNldChjKSkpOnRoaXMuc2V0dGluZ3MucmV3aW5kPyhpKz0xLGE9KGElaStpKSVpKTphPU1hdGgubWF4KGgsTWF0aC5taW4oaSxhKSksdGhpcy5zcGVlZCh0aGlzLmR1cmF0aW9uKGMsYSxiKSksdGhpcy5jdXJyZW50KGEpLHRoaXMuJGVsZW1lbnQuaXMoIjp2aXNpYmxlIikmJnRoaXMudXBkYXRlKCl9LGUucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24oYSl7YT1hfHwhMSx0aGlzLnRvKHRoaXMucmVsYXRpdmUodGhpcy5jdXJyZW50KCkpKzEsYSl9LGUucHJvdG90eXBlLnByZXY9ZnVuY3Rpb24oYSl7YT1hfHwhMSx0aGlzLnRvKHRoaXMucmVsYXRpdmUodGhpcy5jdXJyZW50KCkpLTEsYSl9LGUucHJvdG90eXBlLm9uVHJhbnNpdGlvbkVuZD1mdW5jdGlvbihhKXtpZihhIT09ZCYmKGEuc3RvcFByb3BhZ2F0aW9uKCksKGEudGFyZ2V0fHxhLnNyY0VsZW1lbnR8fGEub3JpZ2luYWxUYXJnZXQpIT09dGhpcy4kc3RhZ2UuZ2V0KDApKSlyZXR1cm4hMTt0aGlzLmxlYXZlKCJhbmltYXRpbmciKSx0aGlzLnRyaWdnZXIoInRyYW5zbGF0ZWQiKX0sZS5wcm90b3R5cGUudmlld3BvcnQ9ZnVuY3Rpb24oKXt2YXIgZDtyZXR1cm4gdGhpcy5vcHRpb25zLnJlc3BvbnNpdmVCYXNlRWxlbWVudCE9PWI/ZD1hKHRoaXMub3B0aW9ucy5yZXNwb25zaXZlQmFzZUVsZW1lbnQpLndpZHRoKCk6Yi5pbm5lcldpZHRoP2Q9Yi5pbm5lcldpZHRoOmMuZG9jdW1lbnRFbGVtZW50JiZjLmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aD9kPWMuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoOmNvbnNvbGUud2FybigiQ2FuIG5vdCBkZXRlY3Qgdmlld3BvcnQgd2lkdGguIiksZH0sZS5wcm90b3R5cGUucmVwbGFjZT1mdW5jdGlvbihiKXt0aGlzLiRzdGFnZS5lbXB0eSgpLHRoaXMuX2l0ZW1zPVtdLGImJihiPWIgaW5zdGFuY2VvZiBqUXVlcnk/YjphKGIpKSx0aGlzLnNldHRpbmdzLm5lc3RlZEl0ZW1TZWxlY3RvciYmKGI9Yi5maW5kKCIuIit0aGlzLnNldHRpbmdzLm5lc3RlZEl0ZW1TZWxlY3RvcikpLGIuZmlsdGVyKGZ1bmN0aW9uKCl7cmV0dXJuIDE9PT10aGlzLm5vZGVUeXBlfSkuZWFjaChhLnByb3h5KGZ1bmN0aW9uKGEsYil7Yj10aGlzLnByZXBhcmUoYiksdGhpcy4kc3RhZ2UuYXBwZW5kKGIpLHRoaXMuX2l0ZW1zLnB1c2goYiksdGhpcy5fbWVyZ2Vycy5wdXNoKDEqYi5maW5kKCJbZGF0YS1tZXJnZV0iKS5hZGRCYWNrKCJbZGF0YS1tZXJnZV0iKS5hdHRyKCJkYXRhLW1lcmdlIil8fDEpfSx0aGlzKSksdGhpcy5yZXNldCh0aGlzLmlzTnVtZXJpYyh0aGlzLnNldHRpbmdzLnN0YXJ0UG9zaXRpb24pP3RoaXMuc2V0dGluZ3Muc3RhcnRQb3NpdGlvbjowKSx0aGlzLmludmFsaWRhdGUoIml0ZW1zIil9LGUucHJvdG90eXBlLmFkZD1mdW5jdGlvbihiLGMpe3ZhciBlPXRoaXMucmVsYXRpdmUodGhpcy5fY3VycmVudCk7Yz1jPT09ZD90aGlzLl9pdGVtcy5sZW5ndGg6dGhpcy5ub3JtYWxpemUoYywhMCksYj1iIGluc3RhbmNlb2YgalF1ZXJ5P2I6YShiKSx0aGlzLnRyaWdnZXIoImFkZCIse2NvbnRlbnQ6Yixwb3NpdGlvbjpjfSksYj10aGlzLnByZXBhcmUoYiksMD09PXRoaXMuX2l0ZW1zLmxlbmd0aHx8Yz09PXRoaXMuX2l0ZW1zLmxlbmd0aD8oMD09PXRoaXMuX2l0ZW1zLmxlbmd0aCYmdGhpcy4kc3RhZ2UuYXBwZW5kKGIpLDAhPT10aGlzLl9pdGVtcy5sZW5ndGgmJnRoaXMuX2l0ZW1zW2MtMV0uYWZ0ZXIoYiksdGhpcy5faXRlbXMucHVzaChiKSx0aGlzLl9tZXJnZXJzLnB1c2goMSpiLmZpbmQoIltkYXRhLW1lcmdlXSIpLmFkZEJhY2soIltkYXRhLW1lcmdlXSIpLmF0dHIoImRhdGEtbWVyZ2UiKXx8MSkpOih0aGlzLl9pdGVtc1tjXS5iZWZvcmUoYiksdGhpcy5faXRlbXMuc3BsaWNlKGMsMCxiKSx0aGlzLl9tZXJnZXJzLnNwbGljZShjLDAsMSpiLmZpbmQoIltkYXRhLW1lcmdlXSIpLmFkZEJhY2soIltkYXRhLW1lcmdlXSIpLmF0dHIoImRhdGEtbWVyZ2UiKXx8MSkpLHRoaXMuX2l0ZW1zW2VdJiZ0aGlzLnJlc2V0KHRoaXMuX2l0ZW1zW2VdLmluZGV4KCkpLHRoaXMuaW52YWxpZGF0ZSgiaXRlbXMiKSx0aGlzLnRyaWdnZXIoImFkZGVkIix7Y29udGVudDpiLHBvc2l0aW9uOmN9KX0sZS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEpe2E9dGhpcy5ub3JtYWxpemUoYSwhMCksYSE9PWQmJih0aGlzLnRyaWdnZXIoInJlbW92ZSIse2NvbnRlbnQ6dGhpcy5faXRlbXNbYV0scG9zaXRpb246YX0pLHRoaXMuX2l0ZW1zW2FdLnJlbW92ZSgpLHRoaXMuX2l0ZW1zLnNwbGljZShhLDEpLHRoaXMuX21lcmdlcnMuc3BsaWNlKGEsMSksdGhpcy5pbnZhbGlkYXRlKCJpdGVtcyIpLHRoaXMudHJpZ2dlcigicmVtb3ZlZCIse2NvbnRlbnQ6bnVsbCxwb3NpdGlvbjphfSkpfSxlLnByb3RvdHlwZS5wcmVsb2FkQXV0b1dpZHRoSW1hZ2VzPWZ1bmN0aW9uKGIpe2IuZWFjaChhLnByb3h5KGZ1bmN0aW9uKGIsYyl7dGhpcy5lbnRlcigicHJlLWxvYWRpbmciKSxjPWEoYyksYShuZXcgSW1hZ2UpLm9uZSgibG9hZCIsYS5wcm94eShmdW5jdGlvbihhKXtjLmF0dHIoInNyYyIsYS50YXJnZXQuc3JjKSxjLmNzcygib3BhY2l0eSIsMSksdGhpcy5sZWF2ZSgicHJlLWxvYWRpbmciKSwhdGhpcy5pcygicHJlLWxvYWRpbmciKSYmIXRoaXMuaXMoImluaXRpYWxpemluZyIpJiZ0aGlzLnJlZnJlc2goKX0sdGhpcykpLmF0dHIoInNyYyIsYy5hdHRyKCJzcmMiKXx8Yy5hdHRyKCJkYXRhLXNyYyIpfHxjLmF0dHIoImRhdGEtc3JjLXJldGluYSIpKX0sdGhpcykpfSxlLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dGhpcy4kZWxlbWVudC5vZmYoIi5vd2wuY29yZSIpLHRoaXMuJHN0YWdlLm9mZigiLm93bC5jb3JlIiksYShjKS5vZmYoIi5vd2wuY29yZSIpLHRoaXMuc2V0dGluZ3MucmVzcG9uc2l2ZSE9PSExJiYoYi5jbGVhclRpbWVvdXQodGhpcy5yZXNpemVUaW1lciksdGhpcy5vZmYoYiwicmVzaXplIix0aGlzLl9oYW5kbGVycy5vblRocm90dGxlZFJlc2l6ZSkpO2Zvcih2YXIgZCBpbiB0aGlzLl9wbHVnaW5zKXRoaXMuX3BsdWdpbnNbZF0uZGVzdHJveSgpO3RoaXMuJHN0YWdlLmNoaWxkcmVuKCIuY2xvbmVkIikucmVtb3ZlKCksdGhpcy4kc3RhZ2UudW53cmFwKCksdGhpcy4kc3RhZ2UuY2hpbGRyZW4oKS5jb250ZW50cygpLnVud3JhcCgpLHRoaXMuJHN0YWdlLmNoaWxkcmVuKCkudW53cmFwKCksdGhpcy4kZWxlbWVudC5yZW1vdmVDbGFzcyh0aGlzLm9wdGlvbnMucmVmcmVzaENsYXNzKS5yZW1vdmVDbGFzcyh0aGlzLm9wdGlvbnMubG9hZGluZ0NsYXNzKS5yZW1vdmVDbGFzcyh0aGlzLm9wdGlvbnMubG9hZGVkQ2xhc3MpLnJlbW92ZUNsYXNzKHRoaXMub3B0aW9ucy5ydGxDbGFzcykucmVtb3ZlQ2xhc3ModGhpcy5vcHRpb25zLmRyYWdDbGFzcykucmVtb3ZlQ2xhc3ModGhpcy5vcHRpb25zLmdyYWJDbGFzcykuYXR0cigiY2xhc3MiLHRoaXMuJGVsZW1lbnQuYXR0cigiY2xhc3MiKS5yZXBsYWNlKG5ldyBSZWdFeHAodGhpcy5vcHRpb25zLnJlc3BvbnNpdmVDbGFzcysiLVxcUytcXHMiLCJnIiksIiIpKS5yZW1vdmVEYXRhKCJvd2wuY2Fyb3VzZWwiKX0sZS5wcm90b3R5cGUub3A9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMuc2V0dGluZ3MucnRsO3N3aXRjaChiKXtjYXNlIjwiOnJldHVybiBkP2E+YzphPGM7Y2FzZSI+IjpyZXR1cm4gZD9hPGM6YT5jO2Nhc2UiPj0iOnJldHVybiBkP2E8PWM6YT49YztjYXNlIjw9IjpyZXR1cm4gZD9hPj1jOmE8PWN9fSxlLnByb3RvdHlwZS5vbj1mdW5jdGlvbihhLGIsYyxkKXthLmFkZEV2ZW50TGlzdGVuZXI/YS5hZGRFdmVudExpc3RlbmVyKGIsYyxkKTphLmF0dGFjaEV2ZW50JiZhLmF0dGFjaEV2ZW50KCJvbiIrYixjKX0sZS5wcm90b3R5cGUub2ZmPWZ1bmN0aW9uKGEsYixjLGQpe2EucmVtb3ZlRXZlbnRMaXN0ZW5lcj9hLnJlbW92ZUV2ZW50TGlzdGVuZXIoYixjLGQpOmEuZGV0YWNoRXZlbnQmJmEuZGV0YWNoRXZlbnQoIm9uIitiLGMpfSxlLnByb3RvdHlwZS50cmlnZ2VyPWZ1bmN0aW9uKGIsYyxkLGYsZyl7dmFyIGg9e2l0ZW06e2NvdW50OnRoaXMuX2l0ZW1zLmxlbmd0aCxpbmRleDp0aGlzLmN1cnJlbnQoKX19LGk9YS5jYW1lbENhc2UoYS5ncmVwKFsib24iLGIsZF0sZnVuY3Rpb24oYSl7cmV0dXJuIGF9KS5qb2luKCItIikudG9Mb3dlckNhc2UoKSksaj1hLkV2ZW50KFtiLCJvd2wiLGR8fCJjYXJvdXNlbCJdLmpvaW4oIi4iKS50b0xvd2VyQ2FzZSgpLGEuZXh0ZW5kKHtyZWxhdGVkVGFyZ2V0OnRoaXN9LGgsYykpO3JldHVybiB0aGlzLl9zdXByZXNzW2JdfHwoYS5lYWNoKHRoaXMuX3BsdWdpbnMsZnVuY3Rpb24oYSxiKXtiLm9uVHJpZ2dlciYmYi5vblRyaWdnZXIoail9KSx0aGlzLnJlZ2lzdGVyKHt0eXBlOmUuVHlwZS5FdmVudCxuYW1lOmJ9KSx0aGlzLiRlbGVtZW50LnRyaWdnZXIoaiksdGhpcy5zZXR0aW5ncyYmImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMuc2V0dGluZ3NbaV0mJnRoaXMuc2V0dGluZ3NbaV0uY2FsbCh0aGlzLGopKSxqfSxlLnByb3RvdHlwZS5lbnRlcj1mdW5jdGlvbihiKXthLmVhY2goW2JdLmNvbmNhdCh0aGlzLl9zdGF0ZXMudGFnc1tiXXx8W10pLGEucHJveHkoZnVuY3Rpb24oYSxiKXt0aGlzLl9zdGF0ZXMuY3VycmVudFtiXT09PWQmJih0aGlzLl9zdGF0ZXMuY3VycmVudFtiXT0wKSx0aGlzLl9zdGF0ZXMuY3VycmVudFtiXSsrfSx0aGlzKSl9LGUucHJvdG90eXBlLmxlYXZlPWZ1bmN0aW9uKGIpe2EuZWFjaChbYl0uY29uY2F0KHRoaXMuX3N0YXRlcy50YWdzW2JdfHxbXSksYS5wcm94eShmdW5jdGlvbihhLGIpe3RoaXMuX3N0YXRlcy5jdXJyZW50W2JdLS19LHRoaXMpKX0sZS5wcm90b3R5cGUucmVnaXN0ZXI9ZnVuY3Rpb24oYil7aWYoYi50eXBlPT09ZS5UeXBlLkV2ZW50KXtpZihhLmV2ZW50LnNwZWNpYWxbYi5uYW1lXXx8KGEuZXZlbnQuc3BlY2lhbFtiLm5hbWVdPXt9KSwhYS5ldmVudC5zcGVjaWFsW2IubmFtZV0ub3dsKXt2YXIgYz1hLmV2ZW50LnNwZWNpYWxbYi5uYW1lXS5fZGVmYXVsdDthLmV2ZW50LnNwZWNpYWxbYi5uYW1lXS5fZGVmYXVsdD1mdW5jdGlvbihhKXtyZXR1cm4hY3x8IWMuYXBwbHl8fGEubmFtZXNwYWNlJiZhLm5hbWVzcGFjZS5pbmRleE9mKCJvd2wiKSE9PS0xP2EubmFtZXNwYWNlJiZhLm5hbWVzcGFjZS5pbmRleE9mKCJvd2wiKT4tMTpjLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sYS5ldmVudC5zcGVjaWFsW2IubmFtZV0ub3dsPSEwfX1lbHNlIGIudHlwZT09PWUuVHlwZS5TdGF0ZSYmKHRoaXMuX3N0YXRlcy50YWdzW2IubmFtZV0/dGhpcy5fc3RhdGVzLnRhZ3NbYi5uYW1lXT10aGlzLl9zdGF0ZXMudGFnc1tiLm5hbWVdLmNvbmNhdChiLnRhZ3MpOnRoaXMuX3N0YXRlcy50YWdzW2IubmFtZV09Yi50YWdzLHRoaXMuX3N0YXRlcy50YWdzW2IubmFtZV09YS5ncmVwKHRoaXMuX3N0YXRlcy50YWdzW2IubmFtZV0sYS5wcm94eShmdW5jdGlvbihjLGQpe3JldHVybiBhLmluQXJyYXkoYyx0aGlzLl9zdGF0ZXMudGFnc1tiLm5hbWVdKT09PWR9LHRoaXMpKSl9LGUucHJvdG90eXBlLnN1cHByZXNzPWZ1bmN0aW9uKGIpe2EuZWFjaChiLGEucHJveHkoZnVuY3Rpb24oYSxiKXt0aGlzLl9zdXByZXNzW2JdPSEwfSx0aGlzKSl9LGUucHJvdG90eXBlLnJlbGVhc2U9ZnVuY3Rpb24oYil7YS5lYWNoKGIsYS5wcm94eShmdW5jdGlvbihhLGIpe2RlbGV0ZSB0aGlzLl9zdXByZXNzW2JdfSx0aGlzKSl9LGUucHJvdG90eXBlLnBvaW50ZXI9ZnVuY3Rpb24oYSl7dmFyIGM9e3g6bnVsbCx5Om51bGx9O3JldHVybiBhPWEub3JpZ2luYWxFdmVudHx8YXx8Yi5ldmVudCxhPWEudG91Y2hlcyYmYS50b3VjaGVzLmxlbmd0aD9hLnRvdWNoZXNbMF06YS5jaGFuZ2VkVG91Y2hlcyYmYS5jaGFuZ2VkVG91Y2hlcy5sZW5ndGg/YS5jaGFuZ2VkVG91Y2hlc1swXTphLGEucGFnZVg/KGMueD1hLnBhZ2VYLGMueT1hLnBhZ2VZKTooYy54PWEuY2xpZW50WCxjLnk9YS5jbGllbnRZKSxjfSxlLnByb3RvdHlwZS5pc051bWVyaWM9ZnVuY3Rpb24oYSl7cmV0dXJuIWlzTmFOKHBhcnNlRmxvYXQoYSkpfSxlLnByb3RvdHlwZS5kaWZmZXJlbmNlPWZ1bmN0aW9uKGEsYil7cmV0dXJue3g6YS54LWIueCx5OmEueS1iLnl9fSxhLmZuLm93bENhcm91c2VsPWZ1bmN0aW9uKGIpe3ZhciBjPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKTtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGQ9YSh0aGlzKSxmPWQuZGF0YSgib3dsLmNhcm91c2VsIik7Znx8KGY9bmV3IGUodGhpcywib2JqZWN0Ij09dHlwZW9mIGImJmIpLGQuZGF0YSgib3dsLmNhcm91c2VsIixmKSxhLmVhY2goWyJuZXh0IiwicHJldiIsInRvIiwiZGVzdHJveSIsInJlZnJlc2giLCJyZXBsYWNlIiwiYWRkIiwicmVtb3ZlIl0sZnVuY3Rpb24oYixjKXtmLnJlZ2lzdGVyKHt0eXBlOmUuVHlwZS5FdmVudCxuYW1lOmN9KSxmLiRlbGVtZW50Lm9uKGMrIi5vd2wuY2Fyb3VzZWwuY29yZSIsYS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmYS5yZWxhdGVkVGFyZ2V0IT09dGhpcyYmKHRoaXMuc3VwcHJlc3MoW2NdKSxmW2NdLmFwcGx5KHRoaXMsW10uc2xpY2UuY2FsbChhcmd1bWVudHMsMSkpLHRoaXMucmVsZWFzZShbY10pKX0sZikpfSkpLCJzdHJpbmciPT10eXBlb2YgYiYmIl8iIT09Yi5jaGFyQXQoMCkmJmZbYl0uYXBwbHkoZixjKX0pfSxhLmZuLm93bENhcm91c2VsLkNvbnN0cnVjdG9yPWV9KHdpbmRvdy5aZXB0b3x8d2luZG93LmpRdWVyeSx3aW5kb3csZG9jdW1lbnQpLGZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWZ1bmN0aW9uKGIpe3RoaXMuX2NvcmU9Yix0aGlzLl9pbnRlcnZhbD1udWxsLHRoaXMuX3Zpc2libGU9bnVsbCx0aGlzLl9oYW5kbGVycz17ImluaXRpYWxpemVkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmdGhpcy5fY29yZS5zZXR0aW5ncy5hdXRvUmVmcmVzaCYmdGhpcy53YXRjaCgpfSx0aGlzKX0sdGhpcy5fY29yZS5vcHRpb25zPWEuZXh0ZW5kKHt9LGUuRGVmYXVsdHMsdGhpcy5fY29yZS5vcHRpb25zKSx0aGlzLl9jb3JlLiRlbGVtZW50Lm9uKHRoaXMuX2hhbmRsZXJzKX07ZS5EZWZhdWx0cz17YXV0b1JlZnJlc2g6ITAsYXV0b1JlZnJlc2hJbnRlcnZhbDo1MDB9LGUucHJvdG90eXBlLndhdGNoPWZ1bmN0aW9uKCl7dGhpcy5faW50ZXJ2YWx8fCh0aGlzLl92aXNpYmxlPXRoaXMuX2NvcmUuJGVsZW1lbnQuaXMoIjp2aXNpYmxlIiksdGhpcy5faW50ZXJ2YWw9Yi5zZXRJbnRlcnZhbChhLnByb3h5KHRoaXMucmVmcmVzaCx0aGlzKSx0aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9SZWZyZXNoSW50ZXJ2YWwpKX0sZS5wcm90b3R5cGUucmVmcmVzaD1mdW5jdGlvbigpe3RoaXMuX2NvcmUuJGVsZW1lbnQuaXMoIjp2aXNpYmxlIikhPT10aGlzLl92aXNpYmxlJiYodGhpcy5fdmlzaWJsZT0hdGhpcy5fdmlzaWJsZSx0aGlzLl9jb3JlLiRlbGVtZW50LnRvZ2dsZUNsYXNzKCJvd2wtaGlkZGVuIiwhdGhpcy5fdmlzaWJsZSksdGhpcy5fdmlzaWJsZSYmdGhpcy5fY29yZS5pbnZhbGlkYXRlKCJ3aWR0aCIpJiZ0aGlzLl9jb3JlLnJlZnJlc2goKSl9LGUucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt2YXIgYSxjO2IuY2xlYXJJbnRlcnZhbCh0aGlzLl9pbnRlcnZhbCk7Zm9yKGEgaW4gdGhpcy5faGFuZGxlcnMpdGhpcy5fY29yZS4kZWxlbWVudC5vZmYoYSx0aGlzLl9oYW5kbGVyc1thXSk7Zm9yKGMgaW4gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModGhpcykpImZ1bmN0aW9uIiE9dHlwZW9mIHRoaXNbY10mJih0aGlzW2NdPW51bGwpfSxhLmZuLm93bENhcm91c2VsLkNvbnN0cnVjdG9yLlBsdWdpbnMuQXV0b1JlZnJlc2g9ZX0od2luZG93LlplcHRvfHx3aW5kb3cualF1ZXJ5LHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ZnVuY3Rpb24oYil7dGhpcy5fY29yZT1iLHRoaXMuX2xvYWRlZD1bXSx0aGlzLl9oYW5kbGVycz17ImluaXRpYWxpemVkLm93bC5jYXJvdXNlbCBjaGFuZ2Uub3dsLmNhcm91c2VsIHJlc2l6ZWQub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGIpe2lmKGIubmFtZXNwYWNlJiZ0aGlzLl9jb3JlLnNldHRpbmdzJiZ0aGlzLl9jb3JlLnNldHRpbmdzLmxhenlMb2FkJiYoYi5wcm9wZXJ0eSYmInBvc2l0aW9uIj09Yi5wcm9wZXJ0eS5uYW1lfHwiaW5pdGlhbGl6ZWQiPT1iLnR5cGUpKWZvcih2YXIgYz10aGlzLl9jb3JlLnNldHRpbmdzLGU9Yy5jZW50ZXImJk1hdGguY2VpbChjLml0ZW1zLzIpfHxjLml0ZW1zLGY9Yy5jZW50ZXImJmUqLTF8fDAsZz0oYi5wcm9wZXJ0eSYmYi5wcm9wZXJ0eS52YWx1ZSE9PWQ/Yi5wcm9wZXJ0eS52YWx1ZTp0aGlzLl9jb3JlLmN1cnJlbnQoKSkrZixoPXRoaXMuX2NvcmUuY2xvbmVzKCkubGVuZ3RoLGk9YS5wcm94eShmdW5jdGlvbihhLGIpe3RoaXMubG9hZChiKX0sdGhpcyk7ZisrPGU7KXRoaXMubG9hZChoLzIrdGhpcy5fY29yZS5yZWxhdGl2ZShnKSksaCYmYS5lYWNoKHRoaXMuX2NvcmUuY2xvbmVzKHRoaXMuX2NvcmUucmVsYXRpdmUoZykpLGkpLGcrK30sdGhpcyl9LHRoaXMuX2NvcmUub3B0aW9ucz1hLmV4dGVuZCh7fSxlLkRlZmF1bHRzLHRoaXMuX2NvcmUub3B0aW9ucyksdGhpcy5fY29yZS4kZWxlbWVudC5vbih0aGlzLl9oYW5kbGVycyl9O2UuRGVmYXVsdHM9e2xhenlMb2FkOiExfSxlLnByb3RvdHlwZS5sb2FkPWZ1bmN0aW9uKGMpe3ZhciBkPXRoaXMuX2NvcmUuJHN0YWdlLmNoaWxkcmVuKCkuZXEoYyksZT1kJiZkLmZpbmQoIi5vd2wtbGF6eSIpOyFlfHxhLmluQXJyYXkoZC5nZXQoMCksdGhpcy5fbG9hZGVkKT4tMXx8KGUuZWFjaChhLnByb3h5KGZ1bmN0aW9uKGMsZCl7dmFyIGUsZj1hKGQpLGc9Yi5kZXZpY2VQaXhlbFJhdGlvPjEmJmYuYXR0cigiZGF0YS1zcmMtcmV0aW5hIil8fGYuYXR0cigiZGF0YS1zcmMiKTt0aGlzLl9jb3JlLnRyaWdnZXIoImxvYWQiLHtlbGVtZW50OmYsdXJsOmd9LCJsYXp5IiksZi5pcygiaW1nIik/Zi5vbmUoImxvYWQub3dsLmxhenkiLGEucHJveHkoZnVuY3Rpb24oKXtmLmNzcygib3BhY2l0eSIsMSksdGhpcy5fY29yZS50cmlnZ2VyKCJsb2FkZWQiLHtlbGVtZW50OmYsdXJsOmd9LCJsYXp5Iil9LHRoaXMpKS5hdHRyKCJzcmMiLGcpOihlPW5ldyBJbWFnZSxlLm9ubG9hZD1hLnByb3h5KGZ1bmN0aW9uKCl7Zi5jc3MoeyJiYWNrZ3JvdW5kLWltYWdlIjondXJsKCInK2crJyIpJyxvcGFjaXR5OiIxIn0pLHRoaXMuX2NvcmUudHJpZ2dlcigibG9hZGVkIix7ZWxlbWVudDpmLHVybDpnfSwibGF6eSIpfSx0aGlzKSxlLnNyYz1nKX0sdGhpcykpLHRoaXMuX2xvYWRlZC5wdXNoKGQuZ2V0KDApKSl9LGUucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt2YXIgYSxiO2ZvcihhIGluIHRoaXMuaGFuZGxlcnMpdGhpcy5fY29yZS4kZWxlbWVudC5vZmYoYSx0aGlzLmhhbmRsZXJzW2FdKTtmb3IoYiBpbiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzKSkiZnVuY3Rpb24iIT10eXBlb2YgdGhpc1tiXSYmKHRoaXNbYl09bnVsbCl9LGEuZm4ub3dsQ2Fyb3VzZWwuQ29uc3RydWN0b3IuUGx1Z2lucy5MYXp5PWV9KHdpbmRvdy5aZXB0b3x8d2luZG93LmpRdWVyeSx3aW5kb3csZG9jdW1lbnQpLGZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWZ1bmN0aW9uKGIpe3RoaXMuX2NvcmU9Yix0aGlzLl9oYW5kbGVycz17ImluaXRpYWxpemVkLm93bC5jYXJvdXNlbCByZWZyZXNoZWQub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiZ0aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9IZWlnaHQmJnRoaXMudXBkYXRlKCl9LHRoaXMpLCJjaGFuZ2VkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmdGhpcy5fY29yZS5zZXR0aW5ncy5hdXRvSGVpZ2h0JiYicG9zaXRpb24iPT1hLnByb3BlcnR5Lm5hbWUmJnRoaXMudXBkYXRlKCl9LHRoaXMpLCJsb2FkZWQub3dsLmxhenkiOmEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJnRoaXMuX2NvcmUuc2V0dGluZ3MuYXV0b0hlaWdodCYmYS5lbGVtZW50LmNsb3Nlc3QoIi4iK3RoaXMuX2NvcmUuc2V0dGluZ3MuaXRlbUNsYXNzKS5pbmRleCgpPT09dGhpcy5fY29yZS5jdXJyZW50KCkmJnRoaXMudXBkYXRlKCl9LHRoaXMpfSx0aGlzLl9jb3JlLm9wdGlvbnM9YS5leHRlbmQoe30sZS5EZWZhdWx0cyx0aGlzLl9jb3JlLm9wdGlvbnMpLHRoaXMuX2NvcmUuJGVsZW1lbnQub24odGhpcy5faGFuZGxlcnMpfTtlLkRlZmF1bHRzPXthdXRvSGVpZ2h0OiExLGF1dG9IZWlnaHRDbGFzczoib3dsLWhlaWdodCJ9LGUucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbigpe3ZhciBiPXRoaXMuX2NvcmUuX2N1cnJlbnQsYz1iK3RoaXMuX2NvcmUuc2V0dGluZ3MuaXRlbXMsZD10aGlzLl9jb3JlLiRzdGFnZS5jaGlsZHJlbigpLnRvQXJyYXkoKS5zbGljZShiLGMpLGU9W10sZj0wO2EuZWFjaChkLGZ1bmN0aW9uKGIsYyl7ZS5wdXNoKGEoYykuaGVpZ2h0KCkpfSksZj1NYXRoLm1heC5hcHBseShudWxsLGUpLHRoaXMuX2NvcmUuJHN0YWdlLnBhcmVudCgpLmhlaWdodChmKS5hZGRDbGFzcyh0aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9IZWlnaHRDbGFzcyl9LGUucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt2YXIgYSxiO2ZvcihhIGluIHRoaXMuX2hhbmRsZXJzKXRoaXMuX2NvcmUuJGVsZW1lbnQub2ZmKGEsdGhpcy5faGFuZGxlcnNbYV0pO2ZvcihiIGluIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHRoaXMpKSJmdW5jdGlvbiIhPXR5cGVvZiB0aGlzW2JdJiYodGhpc1tiXT1udWxsKX0sYS5mbi5vd2xDYXJvdXNlbC5Db25zdHJ1Y3Rvci5QbHVnaW5zLkF1dG9IZWlnaHQ9ZX0od2luZG93LlplcHRvfHx3aW5kb3cualF1ZXJ5LHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ZnVuY3Rpb24oYil7dGhpcy5fY29yZT1iLHRoaXMuX3ZpZGVvcz17fSx0aGlzLl9wbGF5aW5nPW51bGwsdGhpcy5faGFuZGxlcnM9eyJpbml0aWFsaXplZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJnRoaXMuX2NvcmUucmVnaXN0ZXIoe3R5cGU6InN0YXRlIixuYW1lOiJwbGF5aW5nIix0YWdzOlsiaW50ZXJhY3RpbmciXX0pfSx0aGlzKSwicmVzaXplLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmdGhpcy5fY29yZS5zZXR0aW5ncy52aWRlbyYmdGhpcy5pc0luRnVsbFNjcmVlbigpJiZhLnByZXZlbnREZWZhdWx0KCl9LHRoaXMpLCJyZWZyZXNoZWQub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiZ0aGlzLl9jb3JlLmlzKCJyZXNpemluZyIpJiZ0aGlzLl9jb3JlLiRzdGFnZS5maW5kKCIuY2xvbmVkIC5vd2wtdmlkZW8tZnJhbWUiKS5yZW1vdmUoKX0sdGhpcyksImNoYW5nZWQub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiYicG9zaXRpb24iPT09YS5wcm9wZXJ0eS5uYW1lJiZ0aGlzLl9wbGF5aW5nJiZ0aGlzLnN0b3AoKX0sdGhpcyksInByZXBhcmVkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihiKXtpZihiLm5hbWVzcGFjZSl7dmFyIGM9YShiLmNvbnRlbnQpLmZpbmQoIi5vd2wtdmlkZW8iKTtjLmxlbmd0aCYmKGMuY3NzKCJkaXNwbGF5Iiwibm9uZSIpLHRoaXMuZmV0Y2goYyxhKGIuY29udGVudCkpKX19LHRoaXMpfSx0aGlzLl9jb3JlLm9wdGlvbnM9YS5leHRlbmQoe30sZS5EZWZhdWx0cyx0aGlzLl9jb3JlLm9wdGlvbnMpLHRoaXMuX2NvcmUuJGVsZW1lbnQub24odGhpcy5faGFuZGxlcnMpLHRoaXMuX2NvcmUuJGVsZW1lbnQub24oImNsaWNrLm93bC52aWRlbyIsIi5vd2wtdmlkZW8tcGxheS1pY29uIixhLnByb3h5KGZ1bmN0aW9uKGEpe3RoaXMucGxheShhKX0sdGhpcykpfTtlLkRlZmF1bHRzPXt2aWRlbzohMSx2aWRlb0hlaWdodDohMSx2aWRlb1dpZHRoOiExfSxlLnByb3RvdHlwZS5mZXRjaD1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1bmN0aW9uKCl7cmV0dXJuIGEuYXR0cigiZGF0YS12aW1lby1pZCIpPyJ2aW1lbyI6YS5hdHRyKCJkYXRhLXZ6YWFyLWlkIik/InZ6YWFyIjoieW91dHViZSJ9KCksZD1hLmF0dHIoImRhdGEtdmltZW8taWQiKXx8YS5hdHRyKCJkYXRhLXlvdXR1YmUtaWQiKXx8YS5hdHRyKCJkYXRhLXZ6YWFyLWlkIiksZT1hLmF0dHIoImRhdGEtd2lkdGgiKXx8dGhpcy5fY29yZS5zZXR0aW5ncy52aWRlb1dpZHRoLGY9YS5hdHRyKCJkYXRhLWhlaWdodCIpfHx0aGlzLl9jb3JlLnNldHRpbmdzLnZpZGVvSGVpZ2h0LGc9YS5hdHRyKCJocmVmIik7aWYoIWcpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIHZpZGVvIFVSTC4iKTtpZihkPWcubWF0Y2goLyhodHRwOnxodHRwczp8KVwvXC8ocGxheWVyLnx3d3cufGFwcC4pPyh2aW1lb1wuY29tfHlvdXR1KGJlXC5jb218XC5iZXxiZVwuZ29vZ2xlYXBpc1wuY29tKXx2emFhclwuY29tKVwvKHZpZGVvXC98dmlkZW9zXC98ZW1iZWRcL3xjaGFubmVsc1wvLitcL3xncm91cHNcLy4rXC98d2F0Y2hcP3Y9fHZcLyk/KFtBLVphLXowLTkuXyUtXSopKFwmXFMrKT8vKSxkWzNdLmluZGV4T2YoInlvdXR1Iik+LTEpYz0ieW91dHViZSI7ZWxzZSBpZihkWzNdLmluZGV4T2YoInZpbWVvIik+LTEpYz0idmltZW8iO2Vsc2V7aWYoIShkWzNdLmluZGV4T2YoInZ6YWFyIik+LTEpKXRocm93IG5ldyBFcnJvcigiVmlkZW8gVVJMIG5vdCBzdXBwb3J0ZWQuIik7Yz0idnphYXIifWQ9ZFs2XSx0aGlzLl92aWRlb3NbZ109e3R5cGU6YyxpZDpkLHdpZHRoOmUsaGVpZ2h0OmZ9LGIuYXR0cigiZGF0YS12aWRlbyIsZyksdGhpcy50aHVtYm5haWwoYSx0aGlzLl92aWRlb3NbZ10pfSxlLnByb3RvdHlwZS50aHVtYm5haWw9ZnVuY3Rpb24oYixjKXt2YXIgZCxlLGYsZz1jLndpZHRoJiZjLmhlaWdodD8nc3R5bGU9IndpZHRoOicrYy53aWR0aCsicHg7aGVpZ2h0OiIrYy5oZWlnaHQrJ3B4OyInOiIiLGg9Yi5maW5kKCJpbWciKSxpPSJzcmMiLGo9IiIsaz10aGlzLl9jb3JlLnNldHRpbmdzLGw9ZnVuY3Rpb24oYSl7ZT0nPGRpdiBjbGFzcz0ib3dsLXZpZGVvLXBsYXktaWNvbiI+PC9kaXY+JyxkPWsubGF6eUxvYWQ/JzxkaXYgY2xhc3M9Im93bC12aWRlby10biAnK2orJyIgJytpKyc9IicrYSsnIj48L2Rpdj4nOic8ZGl2IGNsYXNzPSJvd2wtdmlkZW8tdG4iIHN0eWxlPSJvcGFjaXR5OjE7YmFja2dyb3VuZC1pbWFnZTp1cmwoJythKycpIj48L2Rpdj4nLGIuYWZ0ZXIoZCksYi5hZnRlcihlKX07aWYoYi53cmFwKCc8ZGl2IGNsYXNzPSJvd2wtdmlkZW8td3JhcHBlciInK2crIj48L2Rpdj4iKSx0aGlzLl9jb3JlLnNldHRpbmdzLmxhenlMb2FkJiYoaT0iZGF0YS1zcmMiLGo9Im93bC1sYXp5IiksaC5sZW5ndGgpcmV0dXJuIGwoaC5hdHRyKGkpKSxoLnJlbW92ZSgpLCExOyJ5b3V0dWJlIj09PWMudHlwZT8oZj0iLy9pbWcueW91dHViZS5jb20vdmkvIitjLmlkKyIvaHFkZWZhdWx0LmpwZyIsbChmKSk6InZpbWVvIj09PWMudHlwZT9hLmFqYXgoe3R5cGU6IkdFVCIsdXJsOiIvL3ZpbWVvLmNvbS9hcGkvdjIvdmlkZW8vIitjLmlkKyIuanNvbiIsanNvbnA6ImNhbGxiYWNrIixkYXRhVHlwZToianNvbnAiLHN1Y2Nlc3M6ZnVuY3Rpb24oYSl7Zj1hWzBdLnRodW1ibmFpbF9sYXJnZSxsKGYpfX0pOiJ2emFhciI9PT1jLnR5cGUmJmEuYWpheCh7dHlwZToiR0VUIix1cmw6Ii8vdnphYXIuY29tL2FwaS92aWRlb3MvIitjLmlkKyIuanNvbiIsanNvbnA6ImNhbGxiYWNrIixkYXRhVHlwZToianNvbnAiLHN1Y2Nlc3M6ZnVuY3Rpb24oYSl7Zj1hLmZyYW1lZ3JhYl91cmwsbChmKX19KX0sZS5wcm90b3R5cGUuc3RvcD1mdW5jdGlvbigpe3RoaXMuX2NvcmUudHJpZ2dlcigic3RvcCIsbnVsbCwidmlkZW8iKSx0aGlzLl9wbGF5aW5nLmZpbmQoIi5vd2wtdmlkZW8tZnJhbWUiKS5yZW1vdmUoKSx0aGlzLl9wbGF5aW5nLnJlbW92ZUNsYXNzKCJvd2wtdmlkZW8tcGxheWluZyIpLHRoaXMuX3BsYXlpbmc9bnVsbCx0aGlzLl9jb3JlLmxlYXZlKCJwbGF5aW5nIiksdGhpcy5fY29yZS50cmlnZ2VyKCJzdG9wcGVkIixudWxsLCJ2aWRlbyIpfSxlLnByb3RvdHlwZS5wbGF5PWZ1bmN0aW9uKGIpe3ZhciBjLGQ9YShiLnRhcmdldCksZT1kLmNsb3Nlc3QoIi4iK3RoaXMuX2NvcmUuc2V0dGluZ3MuaXRlbUNsYXNzKSxmPXRoaXMuX3ZpZGVvc1tlLmF0dHIoImRhdGEtdmlkZW8iKV0sZz1mLndpZHRofHwiMTAwJSIsaD1mLmhlaWdodHx8dGhpcy5fY29yZS4kc3RhZ2UuaGVpZ2h0KCk7dGhpcy5fcGxheWluZ3x8KHRoaXMuX2NvcmUuZW50ZXIoInBsYXlpbmciKSx0aGlzLl9jb3JlLnRyaWdnZXIoInBsYXkiLG51bGwsInZpZGVvIiksZT10aGlzLl9jb3JlLml0ZW1zKHRoaXMuX2NvcmUucmVsYXRpdmUoZS5pbmRleCgpKSksdGhpcy5fY29yZS5yZXNldChlLmluZGV4KCkpLCJ5b3V0dWJlIj09PWYudHlwZT9jPSc8aWZyYW1lIHdpZHRoPSInK2crJyIgaGVpZ2h0PSInK2grJyIgc3JjPSIvL3d3dy55b3V0dWJlLmNvbS9lbWJlZC8nK2YuaWQrIj9hdXRvcGxheT0xJnJlbD0wJnY9IitmLmlkKyciIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+JzoidmltZW8iPT09Zi50eXBlP2M9JzxpZnJhbWUgc3JjPSIvL3BsYXllci52aW1lby5jb20vdmlkZW8vJytmLmlkKyc/YXV0b3BsYXk9MSIgd2lkdGg9IicrZysnIiBoZWlnaHQ9IicraCsnIiBmcmFtZWJvcmRlcj0iMCIgd2Via2l0YWxsb3dmdWxsc2NyZWVuIG1vemFsbG93ZnVsbHNjcmVlbiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+JzoidnphYXIiPT09Zi50eXBlJiYoYz0nPGlmcmFtZSBmcmFtZWJvcmRlcj0iMCJoZWlnaHQ9IicraCsnIndpZHRoPSInK2crJyIgYWxsb3dmdWxsc2NyZWVuIG1vemFsbG93ZnVsbHNjcmVlbiB3ZWJraXRBbGxvd0Z1bGxTY3JlZW4gc3JjPSIvL3ZpZXcudnphYXIuY29tLycrZi5pZCsnL3BsYXllcj9hdXRvcGxheT10cnVlIj48L2lmcmFtZT4nKSxhKCc8ZGl2IGNsYXNzPSJvd2wtdmlkZW8tZnJhbWUiPicrYysiPC9kaXY+IikuaW5zZXJ0QWZ0ZXIoZS5maW5kKCIub3dsLXZpZGVvIikpLHRoaXMuX3BsYXlpbmc9ZS5hZGRDbGFzcygib3dsLXZpZGVvLXBsYXlpbmciKSl9LGUucHJvdG90eXBlLmlzSW5GdWxsU2NyZWVuPWZ1bmN0aW9uKCl7dmFyIGI9Yy5mdWxsc2NyZWVuRWxlbWVudHx8Yy5tb3pGdWxsU2NyZWVuRWxlbWVudHx8Yy53ZWJraXRGdWxsc2NyZWVuRWxlbWVudDtyZXR1cm4gYiYmYShiKS5wYXJlbnQoKS5oYXNDbGFzcygib3dsLXZpZGVvLWZyYW1lIil9LGUucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt2YXIgYSxiO3RoaXMuX2NvcmUuJGVsZW1lbnQub2ZmKCJjbGljay5vd2wudmlkZW8iKTtmb3IoYSBpbiB0aGlzLl9oYW5kbGVycyl0aGlzLl9jb3JlLiRlbGVtZW50Lm9mZihhLHRoaXMuX2hhbmRsZXJzW2FdKTtmb3IoYiBpbiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzKSkiZnVuY3Rpb24iIT10eXBlb2YgdGhpc1tiXSYmKHRoaXNbYl09bnVsbCl9LGEuZm4ub3dsQ2Fyb3VzZWwuQ29uc3RydWN0b3IuUGx1Z2lucy5WaWRlbz1lfSh3aW5kb3cuWmVwdG98fHdpbmRvdy5qUXVlcnksd2luZG93LGRvY3VtZW50KSxmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1mdW5jdGlvbihiKXt0aGlzLmNvcmU9Yix0aGlzLmNvcmUub3B0aW9ucz1hLmV4dGVuZCh7fSxlLkRlZmF1bHRzLHRoaXMuY29yZS5vcHRpb25zKSx0aGlzLnN3YXBwaW5nPSEwLHRoaXMucHJldmlvdXM9ZCx0aGlzLm5leHQ9ZCx0aGlzLmhhbmRsZXJzPXsiY2hhbmdlLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmInBvc2l0aW9uIj09YS5wcm9wZXJ0eS5uYW1lJiYodGhpcy5wcmV2aW91cz10aGlzLmNvcmUuY3VycmVudCgpLHRoaXMubmV4dD1hLnByb3BlcnR5LnZhbHVlKX0sdGhpcyksImRyYWcub3dsLmNhcm91c2VsIGRyYWdnZWQub3dsLmNhcm91c2VsIHRyYW5zbGF0ZWQub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiYodGhpcy5zd2FwcGluZz0idHJhbnNsYXRlZCI9PWEudHlwZSl9LHRoaXMpLCJ0cmFuc2xhdGUub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiZ0aGlzLnN3YXBwaW5nJiYodGhpcy5jb3JlLm9wdGlvbnMuYW5pbWF0ZU91dHx8dGhpcy5jb3JlLm9wdGlvbnMuYW5pbWF0ZUluKSYmdGhpcy5zd2FwKCl9LHRoaXMpfSx0aGlzLmNvcmUuJGVsZW1lbnQub24odGhpcy5oYW5kbGVycyl9O2UuRGVmYXVsdHM9e2FuaW1hdGVPdXQ6ITEsYW5pbWF0ZUluOiExfSxlLnByb3RvdHlwZS5zd2FwPWZ1bmN0aW9uKCl7aWYoMT09PXRoaXMuY29yZS5zZXR0aW5ncy5pdGVtcyYmYS5zdXBwb3J0LmFuaW1hdGlvbiYmYS5zdXBwb3J0LnRyYW5zaXRpb24pe3RoaXMuY29yZS5zcGVlZCgwKTt2YXIgYixjPWEucHJveHkodGhpcy5jbGVhcix0aGlzKSxkPXRoaXMuY29yZS4kc3RhZ2UuY2hpbGRyZW4oKS5lcSh0aGlzLnByZXZpb3VzKSxlPXRoaXMuY29yZS4kc3RhZ2UuY2hpbGRyZW4oKS5lcSh0aGlzLm5leHQpLGY9dGhpcy5jb3JlLnNldHRpbmdzLmFuaW1hdGVJbixnPXRoaXMuY29yZS5zZXR0aW5ncy5hbmltYXRlT3V0O3RoaXMuY29yZS5jdXJyZW50KCkhPT10aGlzLnByZXZpb3VzJiYoZyYmKGI9dGhpcy5jb3JlLmNvb3JkaW5hdGVzKHRoaXMucHJldmlvdXMpLXRoaXMuY29yZS5jb29yZGluYXRlcyh0aGlzLm5leHQpLGQub25lKGEuc3VwcG9ydC5hbmltYXRpb24uZW5kLGMpLmNzcyh7bGVmdDpiKyJweCJ9KS5hZGRDbGFzcygiYW5pbWF0ZWQgb3dsLWFuaW1hdGVkLW91dCIpLmFkZENsYXNzKGcpKSxmJiZlLm9uZShhLnN1cHBvcnQuYW5pbWF0aW9uLmVuZCxjKS5hZGRDbGFzcygiYW5pbWF0ZWQgb3dsLWFuaW1hdGVkLWluIikuYWRkQ2xhc3MoZikpfX0sZS5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oYil7YShiLnRhcmdldCkuY3NzKHtsZWZ0OiIifSkucmVtb3ZlQ2xhc3MoImFuaW1hdGVkIG93bC1hbmltYXRlZC1vdXQgb3dsLWFuaW1hdGVkLWluIikucmVtb3ZlQ2xhc3ModGhpcy5jb3JlLnNldHRpbmdzLmFuaW1hdGVJbikucmVtb3ZlQ2xhc3ModGhpcy5jb3JlLnNldHRpbmdzLmFuaW1hdGVPdXQpLHRoaXMuY29yZS5vblRyYW5zaXRpb25FbmQoKX0sZS5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe3ZhciBhLGI7Zm9yKGEgaW4gdGhpcy5oYW5kbGVycyl0aGlzLmNvcmUuJGVsZW1lbnQub2ZmKGEsdGhpcy5oYW5kbGVyc1thXSk7Zm9yKGIgaW4gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModGhpcykpImZ1bmN0aW9uIiE9dHlwZW9mIHRoaXNbYl0mJih0aGlzW2JdPW51bGwpfSwKYS5mbi5vd2xDYXJvdXNlbC5Db25zdHJ1Y3Rvci5QbHVnaW5zLkFuaW1hdGU9ZX0od2luZG93LlplcHRvfHx3aW5kb3cualF1ZXJ5LHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ZnVuY3Rpb24oYil7dGhpcy5fY29yZT1iLHRoaXMuX3RpbWVvdXQ9bnVsbCx0aGlzLl9wYXVzZWQ9ITEsdGhpcy5faGFuZGxlcnM9eyJjaGFuZ2VkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmInNldHRpbmdzIj09PWEucHJvcGVydHkubmFtZT90aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9wbGF5P3RoaXMucGxheSgpOnRoaXMuc3RvcCgpOmEubmFtZXNwYWNlJiYicG9zaXRpb24iPT09YS5wcm9wZXJ0eS5uYW1lJiZ0aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9wbGF5JiZ0aGlzLl9zZXRBdXRvUGxheUludGVydmFsKCl9LHRoaXMpLCJpbml0aWFsaXplZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJnRoaXMuX2NvcmUuc2V0dGluZ3MuYXV0b3BsYXkmJnRoaXMucGxheSgpfSx0aGlzKSwicGxheS5vd2wuYXV0b3BsYXkiOmEucHJveHkoZnVuY3Rpb24oYSxiLGMpe2EubmFtZXNwYWNlJiZ0aGlzLnBsYXkoYixjKX0sdGhpcyksInN0b3Aub3dsLmF1dG9wbGF5IjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiZ0aGlzLnN0b3AoKX0sdGhpcyksIm1vdXNlb3Zlci5vd2wuYXV0b3BsYXkiOmEucHJveHkoZnVuY3Rpb24oKXt0aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9wbGF5SG92ZXJQYXVzZSYmdGhpcy5fY29yZS5pcygicm90YXRpbmciKSYmdGhpcy5wYXVzZSgpfSx0aGlzKSwibW91c2VsZWF2ZS5vd2wuYXV0b3BsYXkiOmEucHJveHkoZnVuY3Rpb24oKXt0aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9wbGF5SG92ZXJQYXVzZSYmdGhpcy5fY29yZS5pcygicm90YXRpbmciKSYmdGhpcy5wbGF5KCl9LHRoaXMpLCJ0b3VjaHN0YXJ0Lm93bC5jb3JlIjphLnByb3h5KGZ1bmN0aW9uKCl7dGhpcy5fY29yZS5zZXR0aW5ncy5hdXRvcGxheUhvdmVyUGF1c2UmJnRoaXMuX2NvcmUuaXMoInJvdGF0aW5nIikmJnRoaXMucGF1c2UoKX0sdGhpcyksInRvdWNoZW5kLm93bC5jb3JlIjphLnByb3h5KGZ1bmN0aW9uKCl7dGhpcy5fY29yZS5zZXR0aW5ncy5hdXRvcGxheUhvdmVyUGF1c2UmJnRoaXMucGxheSgpfSx0aGlzKX0sdGhpcy5fY29yZS4kZWxlbWVudC5vbih0aGlzLl9oYW5kbGVycyksdGhpcy5fY29yZS5vcHRpb25zPWEuZXh0ZW5kKHt9LGUuRGVmYXVsdHMsdGhpcy5fY29yZS5vcHRpb25zKX07ZS5EZWZhdWx0cz17YXV0b3BsYXk6ITEsYXV0b3BsYXlUaW1lb3V0OjVlMyxhdXRvcGxheUhvdmVyUGF1c2U6ITEsYXV0b3BsYXlTcGVlZDohMX0sZS5wcm90b3R5cGUucGxheT1mdW5jdGlvbihhLGIpe3RoaXMuX3BhdXNlZD0hMSx0aGlzLl9jb3JlLmlzKCJyb3RhdGluZyIpfHwodGhpcy5fY29yZS5lbnRlcigicm90YXRpbmciKSx0aGlzLl9zZXRBdXRvUGxheUludGVydmFsKCkpfSxlLnByb3RvdHlwZS5fZ2V0TmV4dFRpbWVvdXQ9ZnVuY3Rpb24oZCxlKXtyZXR1cm4gdGhpcy5fdGltZW91dCYmYi5jbGVhclRpbWVvdXQodGhpcy5fdGltZW91dCksYi5zZXRUaW1lb3V0KGEucHJveHkoZnVuY3Rpb24oKXt0aGlzLl9wYXVzZWR8fHRoaXMuX2NvcmUuaXMoImJ1c3kiKXx8dGhpcy5fY29yZS5pcygiaW50ZXJhY3RpbmciKXx8Yy5oaWRkZW58fHRoaXMuX2NvcmUubmV4dChlfHx0aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9wbGF5U3BlZWQpfSx0aGlzKSxkfHx0aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9wbGF5VGltZW91dCl9LGUucHJvdG90eXBlLl9zZXRBdXRvUGxheUludGVydmFsPWZ1bmN0aW9uKCl7dGhpcy5fdGltZW91dD10aGlzLl9nZXROZXh0VGltZW91dCgpfSxlLnByb3RvdHlwZS5zdG9wPWZ1bmN0aW9uKCl7dGhpcy5fY29yZS5pcygicm90YXRpbmciKSYmKGIuY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpLHRoaXMuX2NvcmUubGVhdmUoInJvdGF0aW5nIikpfSxlLnByb3RvdHlwZS5wYXVzZT1mdW5jdGlvbigpe3RoaXMuX2NvcmUuaXMoInJvdGF0aW5nIikmJih0aGlzLl9wYXVzZWQ9ITApfSxlLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dmFyIGEsYjt0aGlzLnN0b3AoKTtmb3IoYSBpbiB0aGlzLl9oYW5kbGVycyl0aGlzLl9jb3JlLiRlbGVtZW50Lm9mZihhLHRoaXMuX2hhbmRsZXJzW2FdKTtmb3IoYiBpbiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzKSkiZnVuY3Rpb24iIT10eXBlb2YgdGhpc1tiXSYmKHRoaXNbYl09bnVsbCl9LGEuZm4ub3dsQ2Fyb3VzZWwuQ29uc3RydWN0b3IuUGx1Z2lucy5hdXRvcGxheT1lfSh3aW5kb3cuWmVwdG98fHdpbmRvdy5qUXVlcnksd2luZG93LGRvY3VtZW50KSxmdW5jdGlvbihhLGIsYyxkKXsidXNlIHN0cmljdCI7dmFyIGU9ZnVuY3Rpb24oYil7dGhpcy5fY29yZT1iLHRoaXMuX2luaXRpYWxpemVkPSExLHRoaXMuX3BhZ2VzPVtdLHRoaXMuX2NvbnRyb2xzPXt9LHRoaXMuX3RlbXBsYXRlcz1bXSx0aGlzLiRlbGVtZW50PXRoaXMuX2NvcmUuJGVsZW1lbnQsdGhpcy5fb3ZlcnJpZGVzPXtuZXh0OnRoaXMuX2NvcmUubmV4dCxwcmV2OnRoaXMuX2NvcmUucHJldix0bzp0aGlzLl9jb3JlLnRvfSx0aGlzLl9oYW5kbGVycz17InByZXBhcmVkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihiKXtiLm5hbWVzcGFjZSYmdGhpcy5fY29yZS5zZXR0aW5ncy5kb3RzRGF0YSYmdGhpcy5fdGVtcGxhdGVzLnB1c2goJzxkaXYgY2xhc3M9IicrdGhpcy5fY29yZS5zZXR0aW5ncy5kb3RDbGFzcysnIj4nK2EoYi5jb250ZW50KS5maW5kKCJbZGF0YS1kb3RdIikuYWRkQmFjaygiW2RhdGEtZG90XSIpLmF0dHIoImRhdGEtZG90IikrIjwvZGl2PiIpfSx0aGlzKSwiYWRkZWQub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiZ0aGlzLl9jb3JlLnNldHRpbmdzLmRvdHNEYXRhJiZ0aGlzLl90ZW1wbGF0ZXMuc3BsaWNlKGEucG9zaXRpb24sMCx0aGlzLl90ZW1wbGF0ZXMucG9wKCkpfSx0aGlzKSwicmVtb3ZlLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmdGhpcy5fY29yZS5zZXR0aW5ncy5kb3RzRGF0YSYmdGhpcy5fdGVtcGxhdGVzLnNwbGljZShhLnBvc2l0aW9uLDEpfSx0aGlzKSwiY2hhbmdlZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJiJwb3NpdGlvbiI9PWEucHJvcGVydHkubmFtZSYmdGhpcy5kcmF3KCl9LHRoaXMpLCJpbml0aWFsaXplZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJiF0aGlzLl9pbml0aWFsaXplZCYmKHRoaXMuX2NvcmUudHJpZ2dlcigiaW5pdGlhbGl6ZSIsbnVsbCwibmF2aWdhdGlvbiIpLHRoaXMuaW5pdGlhbGl6ZSgpLHRoaXMudXBkYXRlKCksdGhpcy5kcmF3KCksdGhpcy5faW5pdGlhbGl6ZWQ9ITAsdGhpcy5fY29yZS50cmlnZ2VyKCJpbml0aWFsaXplZCIsbnVsbCwibmF2aWdhdGlvbiIpKX0sdGhpcyksInJlZnJlc2hlZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJnRoaXMuX2luaXRpYWxpemVkJiYodGhpcy5fY29yZS50cmlnZ2VyKCJyZWZyZXNoIixudWxsLCJuYXZpZ2F0aW9uIiksdGhpcy51cGRhdGUoKSx0aGlzLmRyYXcoKSx0aGlzLl9jb3JlLnRyaWdnZXIoInJlZnJlc2hlZCIsbnVsbCwibmF2aWdhdGlvbiIpKX0sdGhpcyl9LHRoaXMuX2NvcmUub3B0aW9ucz1hLmV4dGVuZCh7fSxlLkRlZmF1bHRzLHRoaXMuX2NvcmUub3B0aW9ucyksdGhpcy4kZWxlbWVudC5vbih0aGlzLl9oYW5kbGVycyl9O2UuRGVmYXVsdHM9e25hdjohMSxuYXZUZXh0OlsicHJldiIsIm5leHQiXSxuYXZTcGVlZDohMSxuYXZFbGVtZW50OiJkaXYiLG5hdkNvbnRhaW5lcjohMSxuYXZDb250YWluZXJDbGFzczoib3dsLW5hdiIsbmF2Q2xhc3M6WyJvd2wtcHJldiIsIm93bC1uZXh0Il0sc2xpZGVCeToxLGRvdENsYXNzOiJvd2wtZG90Iixkb3RzQ2xhc3M6Im93bC1kb3RzIixkb3RzOiEwLGRvdHNFYWNoOiExLGRvdHNEYXRhOiExLGRvdHNTcGVlZDohMSxkb3RzQ29udGFpbmVyOiExfSxlLnByb3RvdHlwZS5pbml0aWFsaXplPWZ1bmN0aW9uKCl7dmFyIGIsYz10aGlzLl9jb3JlLnNldHRpbmdzO3RoaXMuX2NvbnRyb2xzLiRyZWxhdGl2ZT0oYy5uYXZDb250YWluZXI/YShjLm5hdkNvbnRhaW5lcik6YSgiPGRpdj4iKS5hZGRDbGFzcyhjLm5hdkNvbnRhaW5lckNsYXNzKS5hcHBlbmRUbyh0aGlzLiRlbGVtZW50KSkuYWRkQ2xhc3MoImRpc2FibGVkIiksdGhpcy5fY29udHJvbHMuJHByZXZpb3VzPWEoIjwiK2MubmF2RWxlbWVudCsiPiIpLmFkZENsYXNzKGMubmF2Q2xhc3NbMF0pLmh0bWwoYy5uYXZUZXh0WzBdKS5wcmVwZW5kVG8odGhpcy5fY29udHJvbHMuJHJlbGF0aXZlKS5vbigiY2xpY2siLGEucHJveHkoZnVuY3Rpb24oYSl7dGhpcy5wcmV2KGMubmF2U3BlZWQpfSx0aGlzKSksdGhpcy5fY29udHJvbHMuJG5leHQ9YSgiPCIrYy5uYXZFbGVtZW50KyI+IikuYWRkQ2xhc3MoYy5uYXZDbGFzc1sxXSkuaHRtbChjLm5hdlRleHRbMV0pLmFwcGVuZFRvKHRoaXMuX2NvbnRyb2xzLiRyZWxhdGl2ZSkub24oImNsaWNrIixhLnByb3h5KGZ1bmN0aW9uKGEpe3RoaXMubmV4dChjLm5hdlNwZWVkKX0sdGhpcykpLGMuZG90c0RhdGF8fCh0aGlzLl90ZW1wbGF0ZXM9W2EoIjxkaXY+IikuYWRkQ2xhc3MoYy5kb3RDbGFzcykuYXBwZW5kKGEoIjxzcGFuPiIpKS5wcm9wKCJvdXRlckhUTUwiKV0pLHRoaXMuX2NvbnRyb2xzLiRhYnNvbHV0ZT0oYy5kb3RzQ29udGFpbmVyP2EoYy5kb3RzQ29udGFpbmVyKTphKCI8ZGl2PiIpLmFkZENsYXNzKGMuZG90c0NsYXNzKS5hcHBlbmRUbyh0aGlzLiRlbGVtZW50KSkuYWRkQ2xhc3MoImRpc2FibGVkIiksdGhpcy5fY29udHJvbHMuJGFic29sdXRlLm9uKCJjbGljayIsImRpdiIsYS5wcm94eShmdW5jdGlvbihiKXt2YXIgZD1hKGIudGFyZ2V0KS5wYXJlbnQoKS5pcyh0aGlzLl9jb250cm9scy4kYWJzb2x1dGUpP2EoYi50YXJnZXQpLmluZGV4KCk6YShiLnRhcmdldCkucGFyZW50KCkuaW5kZXgoKTtiLnByZXZlbnREZWZhdWx0KCksdGhpcy50byhkLGMuZG90c1NwZWVkKX0sdGhpcykpO2ZvcihiIGluIHRoaXMuX292ZXJyaWRlcyl0aGlzLl9jb3JlW2JdPWEucHJveHkodGhpc1tiXSx0aGlzKX0sZS5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe3ZhciBhLGIsYyxkO2ZvcihhIGluIHRoaXMuX2hhbmRsZXJzKXRoaXMuJGVsZW1lbnQub2ZmKGEsdGhpcy5faGFuZGxlcnNbYV0pO2ZvcihiIGluIHRoaXMuX2NvbnRyb2xzKXRoaXMuX2NvbnRyb2xzW2JdLnJlbW92ZSgpO2ZvcihkIGluIHRoaXMub3ZlcmlkZXMpdGhpcy5fY29yZVtkXT10aGlzLl9vdmVycmlkZXNbZF07Zm9yKGMgaW4gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModGhpcykpImZ1bmN0aW9uIiE9dHlwZW9mIHRoaXNbY10mJih0aGlzW2NdPW51bGwpfSxlLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oKXt2YXIgYSxiLGMsZD10aGlzLl9jb3JlLmNsb25lcygpLmxlbmd0aC8yLGU9ZCt0aGlzLl9jb3JlLml0ZW1zKCkubGVuZ3RoLGY9dGhpcy5fY29yZS5tYXhpbXVtKCEwKSxnPXRoaXMuX2NvcmUuc2V0dGluZ3MsaD1nLmNlbnRlcnx8Zy5hdXRvV2lkdGh8fGcuZG90c0RhdGE/MTpnLmRvdHNFYWNofHxnLml0ZW1zO2lmKCJwYWdlIiE9PWcuc2xpZGVCeSYmKGcuc2xpZGVCeT1NYXRoLm1pbihnLnNsaWRlQnksZy5pdGVtcykpLGcuZG90c3x8InBhZ2UiPT1nLnNsaWRlQnkpZm9yKHRoaXMuX3BhZ2VzPVtdLGE9ZCxiPTAsYz0wO2E8ZTthKyspe2lmKGI+PWh8fDA9PT1iKXtpZih0aGlzLl9wYWdlcy5wdXNoKHtzdGFydDpNYXRoLm1pbihmLGEtZCksZW5kOmEtZCtoLTF9KSxNYXRoLm1pbihmLGEtZCk9PT1mKWJyZWFrO2I9MCwrK2N9Yis9dGhpcy5fY29yZS5tZXJnZXJzKHRoaXMuX2NvcmUucmVsYXRpdmUoYSkpfX0sZS5wcm90b3R5cGUuZHJhdz1mdW5jdGlvbigpe3ZhciBiLGM9dGhpcy5fY29yZS5zZXR0aW5ncyxkPXRoaXMuX2NvcmUuaXRlbXMoKS5sZW5ndGg8PWMuaXRlbXMsZT10aGlzLl9jb3JlLnJlbGF0aXZlKHRoaXMuX2NvcmUuY3VycmVudCgpKSxmPWMubG9vcHx8Yy5yZXdpbmQ7dGhpcy5fY29udHJvbHMuJHJlbGF0aXZlLnRvZ2dsZUNsYXNzKCJkaXNhYmxlZCIsIWMubmF2fHxkKSxjLm5hdiYmKHRoaXMuX2NvbnRyb2xzLiRwcmV2aW91cy50b2dnbGVDbGFzcygiZGlzYWJsZWQiLCFmJiZlPD10aGlzLl9jb3JlLm1pbmltdW0oITApKSx0aGlzLl9jb250cm9scy4kbmV4dC50b2dnbGVDbGFzcygiZGlzYWJsZWQiLCFmJiZlPj10aGlzLl9jb3JlLm1heGltdW0oITApKSksdGhpcy5fY29udHJvbHMuJGFic29sdXRlLnRvZ2dsZUNsYXNzKCJkaXNhYmxlZCIsIWMuZG90c3x8ZCksYy5kb3RzJiYoYj10aGlzLl9wYWdlcy5sZW5ndGgtdGhpcy5fY29udHJvbHMuJGFic29sdXRlLmNoaWxkcmVuKCkubGVuZ3RoLGMuZG90c0RhdGEmJjAhPT1iP3RoaXMuX2NvbnRyb2xzLiRhYnNvbHV0ZS5odG1sKHRoaXMuX3RlbXBsYXRlcy5qb2luKCIiKSk6Yj4wP3RoaXMuX2NvbnRyb2xzLiRhYnNvbHV0ZS5hcHBlbmQobmV3IEFycmF5KGIrMSkuam9pbih0aGlzLl90ZW1wbGF0ZXNbMF0pKTpiPDAmJnRoaXMuX2NvbnRyb2xzLiRhYnNvbHV0ZS5jaGlsZHJlbigpLnNsaWNlKGIpLnJlbW92ZSgpLHRoaXMuX2NvbnRyb2xzLiRhYnNvbHV0ZS5maW5kKCIuYWN0aXZlIikucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLHRoaXMuX2NvbnRyb2xzLiRhYnNvbHV0ZS5jaGlsZHJlbigpLmVxKGEuaW5BcnJheSh0aGlzLmN1cnJlbnQoKSx0aGlzLl9wYWdlcykpLmFkZENsYXNzKCJhY3RpdmUiKSl9LGUucHJvdG90eXBlLm9uVHJpZ2dlcj1mdW5jdGlvbihiKXt2YXIgYz10aGlzLl9jb3JlLnNldHRpbmdzO2IucGFnZT17aW5kZXg6YS5pbkFycmF5KHRoaXMuY3VycmVudCgpLHRoaXMuX3BhZ2VzKSxjb3VudDp0aGlzLl9wYWdlcy5sZW5ndGgsc2l6ZTpjJiYoYy5jZW50ZXJ8fGMuYXV0b1dpZHRofHxjLmRvdHNEYXRhPzE6Yy5kb3RzRWFjaHx8Yy5pdGVtcyl9fSxlLnByb3RvdHlwZS5jdXJyZW50PWZ1bmN0aW9uKCl7dmFyIGI9dGhpcy5fY29yZS5yZWxhdGl2ZSh0aGlzLl9jb3JlLmN1cnJlbnQoKSk7cmV0dXJuIGEuZ3JlcCh0aGlzLl9wYWdlcyxhLnByb3h5KGZ1bmN0aW9uKGEsYyl7cmV0dXJuIGEuc3RhcnQ8PWImJmEuZW5kPj1ifSx0aGlzKSkucG9wKCl9LGUucHJvdG90eXBlLmdldFBvc2l0aW9uPWZ1bmN0aW9uKGIpe3ZhciBjLGQsZT10aGlzLl9jb3JlLnNldHRpbmdzO3JldHVybiJwYWdlIj09ZS5zbGlkZUJ5PyhjPWEuaW5BcnJheSh0aGlzLmN1cnJlbnQoKSx0aGlzLl9wYWdlcyksZD10aGlzLl9wYWdlcy5sZW5ndGgsYj8rK2M6LS1jLGM9dGhpcy5fcGFnZXNbKGMlZCtkKSVkXS5zdGFydCk6KGM9dGhpcy5fY29yZS5yZWxhdGl2ZSh0aGlzLl9jb3JlLmN1cnJlbnQoKSksZD10aGlzLl9jb3JlLml0ZW1zKCkubGVuZ3RoLGI/Yys9ZS5zbGlkZUJ5OmMtPWUuc2xpZGVCeSksY30sZS5wcm90b3R5cGUubmV4dD1mdW5jdGlvbihiKXthLnByb3h5KHRoaXMuX292ZXJyaWRlcy50byx0aGlzLl9jb3JlKSh0aGlzLmdldFBvc2l0aW9uKCEwKSxiKX0sZS5wcm90b3R5cGUucHJldj1mdW5jdGlvbihiKXthLnByb3h5KHRoaXMuX292ZXJyaWRlcy50byx0aGlzLl9jb3JlKSh0aGlzLmdldFBvc2l0aW9uKCExKSxiKX0sZS5wcm90b3R5cGUudG89ZnVuY3Rpb24oYixjLGQpe3ZhciBlOyFkJiZ0aGlzLl9wYWdlcy5sZW5ndGg/KGU9dGhpcy5fcGFnZXMubGVuZ3RoLGEucHJveHkodGhpcy5fb3ZlcnJpZGVzLnRvLHRoaXMuX2NvcmUpKHRoaXMuX3BhZ2VzWyhiJWUrZSklZV0uc3RhcnQsYykpOmEucHJveHkodGhpcy5fb3ZlcnJpZGVzLnRvLHRoaXMuX2NvcmUpKGIsYyl9LGEuZm4ub3dsQ2Fyb3VzZWwuQ29uc3RydWN0b3IuUGx1Z2lucy5OYXZpZ2F0aW9uPWV9KHdpbmRvdy5aZXB0b3x8d2luZG93LmpRdWVyeSx3aW5kb3csZG9jdW1lbnQpLGZ1bmN0aW9uKGEsYixjLGQpeyJ1c2Ugc3RyaWN0Ijt2YXIgZT1mdW5jdGlvbihjKXt0aGlzLl9jb3JlPWMsdGhpcy5faGFzaGVzPXt9LHRoaXMuJGVsZW1lbnQ9dGhpcy5fY29yZS4kZWxlbWVudCx0aGlzLl9oYW5kbGVycz17ImluaXRpYWxpemVkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihjKXtjLm5hbWVzcGFjZSYmIlVSTEhhc2giPT09dGhpcy5fY29yZS5zZXR0aW5ncy5zdGFydFBvc2l0aW9uJiZhKGIpLnRyaWdnZXIoImhhc2hjaGFuZ2Uub3dsLm5hdmlnYXRpb24iKX0sdGhpcyksInByZXBhcmVkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihiKXtpZihiLm5hbWVzcGFjZSl7dmFyIGM9YShiLmNvbnRlbnQpLmZpbmQoIltkYXRhLWhhc2hdIikuYWRkQmFjaygiW2RhdGEtaGFzaF0iKS5hdHRyKCJkYXRhLWhhc2giKTtpZighYylyZXR1cm47dGhpcy5faGFzaGVzW2NdPWIuY29udGVudH19LHRoaXMpLCJjaGFuZ2VkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihjKXtpZihjLm5hbWVzcGFjZSYmInBvc2l0aW9uIj09PWMucHJvcGVydHkubmFtZSl7dmFyIGQ9dGhpcy5fY29yZS5pdGVtcyh0aGlzLl9jb3JlLnJlbGF0aXZlKHRoaXMuX2NvcmUuY3VycmVudCgpKSksZT1hLm1hcCh0aGlzLl9oYXNoZXMsZnVuY3Rpb24oYSxiKXtyZXR1cm4gYT09PWQ/YjpudWxsfSkuam9pbigpO2lmKCFlfHxiLmxvY2F0aW9uLmhhc2guc2xpY2UoMSk9PT1lKXJldHVybjtiLmxvY2F0aW9uLmhhc2g9ZX19LHRoaXMpfSx0aGlzLl9jb3JlLm9wdGlvbnM9YS5leHRlbmQoe30sZS5EZWZhdWx0cyx0aGlzLl9jb3JlLm9wdGlvbnMpLHRoaXMuJGVsZW1lbnQub24odGhpcy5faGFuZGxlcnMpLGEoYikub24oImhhc2hjaGFuZ2Uub3dsLm5hdmlnYXRpb24iLGEucHJveHkoZnVuY3Rpb24oYSl7dmFyIGM9Yi5sb2NhdGlvbi5oYXNoLnN1YnN0cmluZygxKSxlPXRoaXMuX2NvcmUuJHN0YWdlLmNoaWxkcmVuKCksZj10aGlzLl9oYXNoZXNbY10mJmUuaW5kZXgodGhpcy5faGFzaGVzW2NdKTtmIT09ZCYmZiE9PXRoaXMuX2NvcmUuY3VycmVudCgpJiZ0aGlzLl9jb3JlLnRvKHRoaXMuX2NvcmUucmVsYXRpdmUoZiksITEsITApfSx0aGlzKSl9O2UuRGVmYXVsdHM9e1VSTGhhc2hMaXN0ZW5lcjohMX0sZS5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe3ZhciBjLGQ7YShiKS5vZmYoImhhc2hjaGFuZ2Uub3dsLm5hdmlnYXRpb24iKTtmb3IoYyBpbiB0aGlzLl9oYW5kbGVycyl0aGlzLl9jb3JlLiRlbGVtZW50Lm9mZihjLHRoaXMuX2hhbmRsZXJzW2NdKTtmb3IoZCBpbiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzKSkiZnVuY3Rpb24iIT10eXBlb2YgdGhpc1tkXSYmKHRoaXNbZF09bnVsbCl9LGEuZm4ub3dsQ2Fyb3VzZWwuQ29uc3RydWN0b3IuUGx1Z2lucy5IYXNoPWV9KHdpbmRvdy5aZXB0b3x8d2luZG93LmpRdWVyeSx3aW5kb3csZG9jdW1lbnQpLGZ1bmN0aW9uKGEsYixjLGQpe2Z1bmN0aW9uIGUoYixjKXt2YXIgZT0hMSxmPWIuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrYi5zbGljZSgxKTtyZXR1cm4gYS5lYWNoKChiKyIgIitoLmpvaW4oZisiICIpK2YpLnNwbGl0KCIgIiksZnVuY3Rpb24oYSxiKXtpZihnW2JdIT09ZClyZXR1cm4gZT0hY3x8YiwhMX0pLGV9ZnVuY3Rpb24gZihhKXtyZXR1cm4gZShhLCEwKX12YXIgZz1hKCI8c3VwcG9ydD4iKS5nZXQoMCkuc3R5bGUsaD0iV2Via2l0IE1veiBPIG1zIi5zcGxpdCgiICIpLGk9e3RyYW5zaXRpb246e2VuZDp7V2Via2l0VHJhbnNpdGlvbjoid2Via2l0VHJhbnNpdGlvbkVuZCIsTW96VHJhbnNpdGlvbjoidHJhbnNpdGlvbmVuZCIsT1RyYW5zaXRpb246Im9UcmFuc2l0aW9uRW5kIix0cmFuc2l0aW9uOiJ0cmFuc2l0aW9uZW5kIn19LGFuaW1hdGlvbjp7ZW5kOntXZWJraXRBbmltYXRpb246IndlYmtpdEFuaW1hdGlvbkVuZCIsTW96QW5pbWF0aW9uOiJhbmltYXRpb25lbmQiLE9BbmltYXRpb246Im9BbmltYXRpb25FbmQiLGFuaW1hdGlvbjoiYW5pbWF0aW9uZW5kIn19fSxqPXtjc3N0cmFuc2Zvcm1zOmZ1bmN0aW9uKCl7cmV0dXJuISFlKCJ0cmFuc2Zvcm0iKX0sY3NzdHJhbnNmb3JtczNkOmZ1bmN0aW9uKCl7cmV0dXJuISFlKCJwZXJzcGVjdGl2ZSIpfSxjc3N0cmFuc2l0aW9uczpmdW5jdGlvbigpe3JldHVybiEhZSgidHJhbnNpdGlvbiIpfSxjc3NhbmltYXRpb25zOmZ1bmN0aW9uKCl7cmV0dXJuISFlKCJhbmltYXRpb24iKX19O2ouY3NzdHJhbnNpdGlvbnMoKSYmKGEuc3VwcG9ydC50cmFuc2l0aW9uPW5ldyBTdHJpbmcoZigidHJhbnNpdGlvbiIpKSxhLnN1cHBvcnQudHJhbnNpdGlvbi5lbmQ9aS50cmFuc2l0aW9uLmVuZFthLnN1cHBvcnQudHJhbnNpdGlvbl0pLGouY3NzYW5pbWF0aW9ucygpJiYoYS5zdXBwb3J0LmFuaW1hdGlvbj1uZXcgU3RyaW5nKGYoImFuaW1hdGlvbiIpKSxhLnN1cHBvcnQuYW5pbWF0aW9uLmVuZD1pLmFuaW1hdGlvbi5lbmRbYS5zdXBwb3J0LmFuaW1hdGlvbl0pLGouY3NzdHJhbnNmb3JtcygpJiYoYS5zdXBwb3J0LnRyYW5zZm9ybT1uZXcgU3RyaW5nKGYoInRyYW5zZm9ybSIpKSxhLnN1cHBvcnQudHJhbnNmb3JtM2Q9ai5jc3N0cmFuc2Zvcm1zM2QoKSl9KHdpbmRvdy5aZXB0b3x8d2luZG93LmpRdWVyeSx3aW5kb3csZG9jdW1lbnQpOw=="}},"time_used":14603,"timings":{"blocked":13282,"dns":0,"connect":0,"send":0,"wait":1321,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/jquery.themepunch.revolution.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.293Z","timestamp":1785143908293,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/js/jquery.themepunch.revolution.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:44 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"f4c0-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 17338\r\nKeep-Alive: timeout=5, max=99\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":62656,"size_decoded":17707,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (32108), with CRLF line terminators","md5":"cb68b552656ec0718cfe2692f65df9ff","sha1":"e8ccbadce248ba21fddeab07e07149c4481f48dc","sha256":"23d49684fb60053d365b5e3a949b245c2dd413a265050bad5bcb7d74d69eecbc","sha512":"e624352a8ba20f456e5f422d9453bbfab851df1f52db9e6289898accc2629128c4a54f95f969cfdcce5345c8f9d75123d2b6f59bb69d7c975496568469c03a10","ssdeep":"1536:LCnzw4tFco78X3hSrk8chnmbtWd2YMdYQ8Mv3xVgnugt9uK5jc7NKi2nz+NwAIIM:LCnzXQo7s3hSrk8kmEy6cNKp+qm6N","tlshash":"9b53fa64ba20347654bb2265d03f461572b15c37eb02c4a4e5e7587caff8d89236bf8c","first_seen":"2023-03-07T01:10:42Z","last_seen":"2026-08-09T08:42:12.852582Z","times_seen":327,"resource_available":true,"data":"LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogKiBqcXVlcnkudGhlbWVwdW5jaC5yZXZvbHV0aW9uLmpzIC0galF1ZXJ5IFBsdWdpbiBmb3IgUmV2b2x1dGlvbiBTbGlkZXINCiAqIEB2ZXJzaW9uOiA1LjMuMS42ICgxNS4xMi4yMDE2KQ0KICogQHJlcXVpcmVzIGpRdWVyeSB2MS43IG9yIGxhdGVyICh0ZXN0ZWQgb24gMS45KQ0KICogQGF1dGhvciBUaGVtZVB1bmNoDQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiFmdW5jdGlvbihqUXVlcnksdW5kZWZpbmVkKXsidXNlIHN0cmljdCI7dmFyIHZlcnNpb249e2NvcmU6IjUuMy4xLjYiLCJyZXZvbHV0aW9uLmV4dGVuc2lvbnMuYWN0aW9ucy5taW4uanMiOiIyLjAuNCIsInJldm9sdXRpb24uZXh0ZW5zaW9ucy5jYXJvdXNlbC5taW4uanMiOiIxLjIuMSIsInJldm9sdXRpb24uZXh0ZW5zaW9ucy5rZW5idXJuLm1pbi5qcyI6IjEuMi4wIiwicmV2b2x1dGlvbi5leHRlbnNpb25zLmxheWVyYW5pbWF0aW9uLm1pbi5qcyI6IjMuNS4wIiwicmV2b2x1dGlvbi5leHRlbnNpb25zLm5hdmlnYXRpb24ubWluLmpzIjoiMS4zLjIiLCJyZXZvbHV0aW9uLmV4dGVuc2lvbnMucGFyYWxsYXgubWluLmpzIjoiMi4yLjAiLCJyZXZvbHV0aW9uLmV4dGVuc2lvbnMuc2xpZGVhbmltcy5taW4uanMiOiIxLjYiLCJyZXZvbHV0aW9uLmV4dGVuc2lvbnMudmlkZW8ubWluLmpzIjoiMi4wLjIifTtqUXVlcnkuZm4uZXh0ZW5kKHtyZXZvbHV0aW9uOmZ1bmN0aW9uKGEpe3ZhciBiPXtkZWxheTo5ZTMscmVzcG9uc2l2ZUxldmVsczo0MDY0LHZpc2liaWxpdHlMZXZlbHM6WzIwNDgsMTAyNCw3NzgsNDgwXSxncmlkd2lkdGg6OTYwLGdyaWRoZWlnaHQ6NTAwLG1pbkhlaWdodDowLGF1dG9IZWlnaHQ6Im9mZiIsc2xpZGVyVHlwZToic3RhbmRhcmQiLHNsaWRlckxheW91dDoiYXV0byIsZnVsbFNjcmVlbkF1dG9XaWR0aDoib2ZmIixmdWxsU2NyZWVuQWxpZ25Gb3JjZToib2ZmIixmdWxsU2NyZWVuT2Zmc2V0Q29udGFpbmVyOiIiLGZ1bGxTY3JlZW5PZmZzZXQ6IjAiLGhpZGVDYXB0aW9uQXRMaW1pdDowLGhpZGVBbGxDYXB0aW9uQXRMaW1pdDowLGhpZGVTbGlkZXJBdExpbWl0OjAsZGlzYWJsZVByb2dyZXNzQmFyOiJvZmYiLHN0b3BBdFNsaWRlOi0xLHN0b3BBZnRlckxvb3BzOi0xLHNoYWRvdzowLGRvdHRlZE92ZXJsYXk6Im5vbmUiLHN0YXJ0RGVsYXk6MCxsYXp5VHlwZToic21hcnQiLHNwaW5uZXI6InNwaW5uZXIwIixzaHVmZmxlOiJvZmYiLHZpZXdQb3J0OntlbmFibGU6ITEsb3V0b2Y6IndhaXQiLHZpc2libGVfYXJlYToiNjAlIixwcmVzaXplOiExfSxmYWxsYmFja3M6e2lzSm9vbWxhOiExLHBhblpvb21EaXNhYmxlT25Nb2JpbGU6Im9mZiIsc2ltcGxpZnlBbGw6Im9uIixuZXh0U2xpZGVPbldpbmRvd0ZvY3VzOiJvZmYiLGRpc2FibGVGb2N1c0xpc3RlbmVyOiEwLGlnbm9yZUhlaWdodENoYW5nZXM6Im9mZiIsaWdub3JlSGVpZ2h0Q2hhbmdlc1NpemU6MH0scGFyYWxsYXg6e3R5cGU6Im9mZiIsbGV2ZWxzOlsxMCwxNSwyMCwyNSwzMCwzNSw0MCw0NSw1MCw1NSw2MCw2NSw3MCw3NSw4MCw4NV0sb3JpZ286ImVudGVycG9pbnQiLHNwZWVkOjQwMCxiZ3BhcmFsbGF4OiJvZmYiLG9wYWNpdHk6Im9uIixkaXNhYmxlX29ubW9iaWxlOiJvZmYiLGRkZF9zaGFkb3c6Im9uIixkZGRfYmdmcmVlemU6Im9mZiIsZGRkX292ZXJmbG93OiJ2aXNpYmxlIixkZGRfbGF5ZXJfb3ZlcmZsb3c6InZpc2libGUiLGRkZF96X2NvcnJlY3Rpb246NjUsZGRkX3BhdGg6Im1vdXNlIn0sc2Nyb2xsZWZmZWN0OntmYWRlOiJvZmYiLGJsdXI6Im9mZiIsZ3JheXNjYWxlOiJvZmYiLG1heGJsdXI6MTAsb25fbGF5ZXJzOiJvZmYiLG9uX3NsaWRlYmc6Im9mZiIsb25fc3RhdGljX2xheWVyczoib2ZmIixvbl9wYXJhbGxheF9sYXllcnM6Im9mZiIsb25fcGFyYWxsYXhfc3RhdGljX2xheWVyczoib2ZmIixkaXJlY3Rpb246ImJvdGgiLG11bHRpcGxpY2F0b3I6MS4zNSxtdWx0aXBsaWNhdG9yX2xheWVyczouNSx0aWx0OjMwLGRpc2FibGVfb25fbW9iaWxlOiJvbiJ9LGNhcm91c2VsOntlYXNpbmc6cHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0LHNwZWVkOjgwMCxzaG93TGF5ZXJzQWxsVGltZToib2ZmIixob3Jpem9udGFsX2FsaWduOiJjZW50ZXIiLHZlcnRpY2FsX2FsaWduOiJjZW50ZXIiLGluZmluaXR5OiJvbiIsc3BhY2U6MCxtYXhWaXNpYmxlSXRlbXM6MyxzdHJldGNoOiJvZmYiLGZhZGVvdXQ6Im9uIixtYXhSb3RhdGlvbjowLG1pblNjYWxlOjAsdmFyeV9mYWRlOiJvZmYiLHZhcnlfcm90YXRpb246Im9uIix2YXJ5X3NjYWxlOiJvZmYiLGJvcmRlcl9yYWRpdXM6IjBweCIscGFkZGluZ190b3A6MCxwYWRkaW5nX2JvdHRvbTowfSxuYXZpZ2F0aW9uOntrZXlib2FyZE5hdmlnYXRpb246Im9mZiIsa2V5Ym9hcmRfZGlyZWN0aW9uOiJob3Jpem9udGFsIixtb3VzZVNjcm9sbE5hdmlnYXRpb246Im9mZiIsb25Ib3ZlclN0b3A6Im9uIix0b3VjaDp7dG91Y2hlbmFibGVkOiJvZmYiLHN3aXBlX3RyZXNob2xkOjc1LHN3aXBlX21pbl90b3VjaGVzOjEsZHJhZ19ibG9ja192ZXJ0aWNhbDohMSxzd2lwZV9kaXJlY3Rpb246Imhvcml6b250YWwifSxhcnJvd3M6e3N0eWxlOiIiLGVuYWJsZTohMSxoaWRlX29ubW9iaWxlOiExLGhpZGVfb25sZWF2ZTohMCxoaWRlX2RlbGF5OjIwMCxoaWRlX2RlbGF5X21vYmlsZToxMjAwLGhpZGVfdW5kZXI6MCxoaWRlX292ZXI6OTk5OSx0bXA6IiIscnRsOiExLGxlZnQ6e2hfYWxpZ246ImxlZnQiLHZfYWxpZ246ImNlbnRlciIsaF9vZmZzZXQ6MjAsdl9vZmZzZXQ6MCxjb250YWluZXI6InNsaWRlciJ9LHJpZ2h0OntoX2FsaWduOiJyaWdodCIsdl9hbGlnbjoiY2VudGVyIixoX29mZnNldDoyMCx2X29mZnNldDowLGNvbnRhaW5lcjoic2xpZGVyIn19LGJ1bGxldHM6e2NvbnRhaW5lcjoic2xpZGVyIixydGw6ITEsc3R5bGU6IiIsZW5hYmxlOiExLGhpZGVfb25tb2JpbGU6ITEsaGlkZV9vbmxlYXZlOiEwLGhpZGVfZGVsYXk6MjAwLGhpZGVfZGVsYXlfbW9iaWxlOjEyMDAsaGlkZV91bmRlcjowLGhpZGVfb3Zlcjo5OTk5LGRpcmVjdGlvbjoiaG9yaXpvbnRhbCIsaF9hbGlnbjoibGVmdCIsdl9hbGlnbjoiY2VudGVyIixzcGFjZTowLGhfb2Zmc2V0OjIwLHZfb2Zmc2V0OjAsdG1wOic8c3BhbiBjbGFzcz0idHAtYnVsbGV0LWltYWdlIj48L3NwYW4+PHNwYW4gY2xhc3M9InRwLWJ1bGxldC10aXRsZSI+PC9zcGFuPid9LHRodW1ibmFpbHM6e2NvbnRhaW5lcjoic2xpZGVyIixydGw6ITEsc3R5bGU6IiIsZW5hYmxlOiExLHdpZHRoOjEwMCxoZWlnaHQ6NTAsbWluX3dpZHRoOjEwMCx3cmFwcGVyX3BhZGRpbmc6Mix3cmFwcGVyX2NvbG9yOiIjZjVmNWY1Iix3cmFwcGVyX29wYWNpdHk6MSx0bXA6JzxzcGFuIGNsYXNzPSJ0cC10aHVtYi1pbWFnZSI+PC9zcGFuPjxzcGFuIGNsYXNzPSJ0cC10aHVtYi10aXRsZSI+PC9zcGFuPicsdmlzaWJsZUFtb3VudDo1LGhpZGVfb25tb2JpbGU6ITEsaGlkZV9vbmxlYXZlOiEwLGhpZGVfZGVsYXk6MjAwLGhpZGVfZGVsYXlfbW9iaWxlOjEyMDAsaGlkZV91bmRlcjowLGhpZGVfb3Zlcjo5OTk5LGRpcmVjdGlvbjoiaG9yaXpvbnRhbCIsc3BhbjohMSxwb3NpdGlvbjoiaW5uZXIiLHNwYWNlOjIsaF9hbGlnbjoibGVmdCIsdl9hbGlnbjoiY2VudGVyIixoX29mZnNldDoyMCx2X29mZnNldDowfSx0YWJzOntjb250YWluZXI6InNsaWRlciIscnRsOiExLHN0eWxlOiIiLGVuYWJsZTohMSx3aWR0aDoxMDAsbWluX3dpZHRoOjEwMCxoZWlnaHQ6NTAsd3JhcHBlcl9wYWRkaW5nOjEwLHdyYXBwZXJfY29sb3I6IiNmNWY1ZjUiLHdyYXBwZXJfb3BhY2l0eToxLHRtcDonPHNwYW4gY2xhc3M9InRwLXRhYi1pbWFnZSI+PC9zcGFuPicsdmlzaWJsZUFtb3VudDo1LGhpZGVfb25tb2JpbGU6ITEsaGlkZV9vbmxlYXZlOiEwLGhpZGVfZGVsYXk6MjAwLGhpZGVfZGVsYXlfbW9iaWxlOjEyMDAsaGlkZV91bmRlcjowLGhpZGVfb3Zlcjo5OTk5LGRpcmVjdGlvbjoiaG9yaXpvbnRhbCIsc3BhbjohMSxzcGFjZTowLHBvc2l0aW9uOiJpbm5lciIsaF9hbGlnbjoibGVmdCIsdl9hbGlnbjoiY2VudGVyIixoX29mZnNldDoyMCx2X29mZnNldDowfX0sZXh0ZW5zaW9uczoiZXh0ZW5zaW9ucy8iLGV4dGVuc2lvbnNfc3VmZml4OiIubWluLmpzIixkZWJ1Z01vZGU6ITF9O3JldHVybiBhPWpRdWVyeS5leHRlbmQoITAse30sYixhKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgYj1qUXVlcnkodGhpcyk7YS5taW5IZWlnaHQ9YS5taW5IZWlnaHQhPXVuZGVmaW5lZD9wYXJzZUludChhLm1pbkhlaWdodCwwKTphLm1pbkhlaWdodCxhLnNjcm9sbGVmZmVjdC5vbj0ib24iPT09YS5zY3JvbGxlZmZlY3QuZmFkZXx8Im9uIj09PWEuc2Nyb2xsZWZmZWN0LmJsdXJ8fCJvbiI9PT1hLnNjcm9sbGVmZmVjdC5ncmF5c2NhbGUsImhlcm8iPT1hLnNsaWRlclR5cGUmJmIuZmluZCgiPnVsPmxpIikuZWFjaChmdW5jdGlvbihhKXthPjAmJmpRdWVyeSh0aGlzKS5yZW1vdmUoKX0pLGEuanNGaWxlTG9jYXRpb249YS5qc0ZpbGVMb2NhdGlvbnx8Z2V0U2NyaXB0TG9jYXRpb24oInRoZW1lcHVuY2gucmV2b2x1dGlvbi5taW4uanMiKSxhLmpzRmlsZUxvY2F0aW9uPWEuanNGaWxlTG9jYXRpb24rYS5leHRlbnNpb25zLGEuc2NyaXB0c25lZWRlZD1nZXROZWVkZWRTY3JpcHRzKGEsYiksYS5jdXJXaW5SYW5nZT0wLGEucnRsPSEwLGEubmF2aWdhdGlvbiE9dW5kZWZpbmVkJiZhLm5hdmlnYXRpb24udG91Y2ghPXVuZGVmaW5lZCYmKGEubmF2aWdhdGlvbi50b3VjaC5zd2lwZV9taW5fdG91Y2hlcz1hLm5hdmlnYXRpb24udG91Y2guc3dpcGVfbWluX3RvdWNoZXM+NT8xOmEubmF2aWdhdGlvbi50b3VjaC5zd2lwZV9taW5fdG91Y2hlcyksalF1ZXJ5KHRoaXMpLm9uKCJzY3JpcHRzbG9hZGVkIixmdW5jdGlvbigpe3JldHVybiBhLm1vZHVsZXNmYWlsaW5nPyhiLmh0bWwoJzxkaXYgc3R5bGU9Im1hcmdpbjphdXRvO2xpbmUtaGVpZ2h0OjQwcHg7Zm9udC1zaXplOjE0cHg7Y29sb3I6I2ZmZjtwYWRkaW5nOjE1cHg7YmFja2dyb3VuZDojZTc0YzNjO21hcmdpbjoyMHB4IDBweDsiPiEhIEVycm9yIGF0IGxvYWRpbmcgU2xpZGVyIFJldm9sdXRpb24gNS4wIEV4dHJlbnNpb25zLicrYS5lcnJvcm0rIjwvZGl2PiIpLnNob3coKSwhMSk6KF9SLm1pZ3JhdGlvbiE9dW5kZWZpbmVkJiYoYT1fUi5taWdyYXRpb24oYixhKSkscHVuY2hncy5mb3JjZTNEPSEwLCJvbiIhPT1hLnNpbXBsaWZ5QWxsJiZwdW5jaGdzLlR3ZWVuTGl0ZS5sYWdTbW9vdGhpbmcoMWUzLDE2KSxwcmVwYXJlT3B0aW9ucyhiLGEpLHZvaWQgaW5pdFNsaWRlcihiLGEpKX0pLGJbMF0ub3B0PWEsd2FpdEZvclNjcmlwdHMoYixhKX0pfSxyZXZyZW1vdmVzbGlkZTpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGI9alF1ZXJ5KHRoaXMpLGM9YlswXS5vcHQ7aWYoIShhPDB8fGE+Yy5zbGlkZWFtb3VudCkmJmIhPXVuZGVmaW5lZCYmYi5sZW5ndGg+MCYmalF1ZXJ5KCJib2R5IikuZmluZCgiIyIrYi5hdHRyKCJpZCIpKS5sZW5ndGg+MCYmYyYmYy5saS5sZW5ndGg+MCYmKGE+MHx8YTw9Yy5saS5sZW5ndGgpKXt2YXIgZD1qUXVlcnkoYy5saVthXSksZT1kLmRhdGEoImluZGV4IiksZj0hMTtjLnNsaWRlYW1vdW50PWMuc2xpZGVhbW91bnQtMSxjLnJlYWxzbGlkZWFtb3VudD1jLnJlYWxzbGlkZWFtb3VudC0xLHJlbW92ZU5hdldpdGhMaXJlZigiLnRwLWJ1bGxldCIsZSxjKSxyZW1vdmVOYXZXaXRoTGlyZWYoIi50cC10YWIiLGUsYykscmVtb3ZlTmF2V2l0aExpcmVmKCIudHAtdGh1bWIiLGUsYyksZC5oYXNDbGFzcygiYWN0aXZlLXJldnNsaWRlIikmJihmPSEwKSxkLnJlbW92ZSgpLGMubGk9cmVtb3ZlQXJyYXkoYy5saSxhKSxjLmNhcm91c2VsJiZjLmNhcm91c2VsLnNsaWRlcyYmKGMuY2Fyb3VzZWwuc2xpZGVzPXJlbW92ZUFycmF5KGMuY2Fyb3VzZWwuc2xpZGVzLGEpKSxjLnRodW1icz1yZW1vdmVBcnJheShjLnRodW1icyxhKSxfUi51cGRhdGVOYXZJbmRleGVzJiZfUi51cGRhdGVOYXZJbmRleGVzKGMpLGYmJmIucmV2bmV4dCgpLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChjLmxpLHttaW5XaWR0aDoiOTklIn0pLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChjLmxpLHttaW5XaWR0aDoiMTAwJSJ9KX19KX0scmV2YWRkY2FsbGJhY2s6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3RoaXMub3B0JiYodGhpcy5vcHQuY2FsbEJhY2tBcnJheT09PXVuZGVmaW5lZCYmKHRoaXMub3B0LmNhbGxCYWNrQXJyYXk9bmV3IEFycmF5KSx0aGlzLm9wdC5jYWxsQmFja0FycmF5LnB1c2goYSkpfSl9LHJldmdldHBhcmFsbGF4cHJvYzpmdW5jdGlvbigpe3JldHVybiBqUXVlcnkodGhpcylbMF0ub3B0LnNjcm9sbHByb2N9LHJldmRlYnVnbW9kZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyk7YVswXS5vcHQuZGVidWdNb2RlPSEwLGNvbnRhaW5lclJlc2l6ZWQoYSxhWzBdLm9wdCl9KX0scmV2c2Nyb2xsOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgYj1qUXVlcnkodGhpcyk7alF1ZXJ5KCJib2R5LGh0bWwiKS5hbmltYXRlKHtzY3JvbGxUb3A6Yi5vZmZzZXQoKS50b3ArYi5oZWlnaHQoKS1hKyJweCJ9LHtkdXJhdGlvbjo0MDB9KX0pfSxyZXZyZWRyYXc6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKTtjb250YWluZXJSZXNpemVkKGEsYVswXS5vcHQpfSl9LHJldmtpbGw6ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPWpRdWVyeSh0aGlzKTtpZihwdW5jaGdzLlR3ZWVuTGl0ZS5raWxsRGVsYXllZENhbGxzVG8oX1Iuc2hvd0hpZGVOYXZFbGVtZW50cyksYyE9dW5kZWZpbmVkJiZjLmxlbmd0aD4wJiZqUXVlcnkoImJvZHkiKS5maW5kKCIjIitjLmF0dHIoImlkIikpLmxlbmd0aD4wKXtjLmRhdGEoImNvbnRob3ZlciIsMSksYy5kYXRhKCJjb250aG92ZXItY2hhbmdlZCIsMSksYy50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLm9ucGF1c2UiKTt2YXIgZD1jLnBhcmVudCgpLmZpbmQoIi50cC1iYW5uZXJ0aW1lciIpLGU9Y1swXS5vcHQ7ZS50b25wYXVzZT0hMCxjLnRyaWdnZXIoInN0b3B0aW1lciIpLHB1bmNoZ3MuVHdlZW5MaXRlLmtpbGxUd2VlbnNPZihjLmZpbmQoIioiKSwhMSkscHVuY2hncy5Ud2VlbkxpdGUua2lsbFR3ZWVuc09mKGMsITEpLGMudW5iaW5kKCJob3ZlciwgbW91c2VvdmVyLCBtb3VzZWVudGVyLG1vdXNlbGVhdmUsIHJlc2l6ZSIpO3ZhciBmPSJyZXNpemUucmV2c2xpZGVyLSIrYy5hdHRyKCJpZCIpO2pRdWVyeSh3aW5kb3cpLm9mZihmKSxjLmZpbmQoIioiKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGE9alF1ZXJ5KHRoaXMpO2EudW5iaW5kKCJvbiwgaG92ZXIsIG1vdXNlZW50ZXIsbW91c2VsZWF2ZSxtb3VzZW92ZXIsIHJlc2l6ZSxyZXN0YXJ0dGltZXIsIHN0b3B0aW1lciIpLGEub2ZmKCJvbiwgaG92ZXIsIG1vdXNlZW50ZXIsbW91c2VsZWF2ZSxtb3VzZW92ZXIsIHJlc2l6ZSIpLGEuZGF0YSgibXlTcGxpdFRleHQiLG51bGwpLGEuZGF0YSgiY3RsIixudWxsKSxhLmRhdGEoInR3ZWVuIikhPXVuZGVmaW5lZCYmYS5kYXRhKCJ0d2VlbiIpLmtpbGwoKSxhLmRhdGEoImtlbmJ1cm4iKSE9dW5kZWZpbmVkJiZhLmRhdGEoImtlbmJ1cm4iKS5raWxsKCksYS5kYXRhKCJ0aW1lbGluZV9vdXQiKSE9dW5kZWZpbmVkJiZhLmRhdGEoInRpbWVsaW5lX291dCIpLmtpbGwoKSxhLmRhdGEoInRpbWVsaW5lIikhPXVuZGVmaW5lZCYmYS5kYXRhKCJ0aW1lbGluZSIpLmtpbGwoKSxhLnJlbW92ZSgpLGEuZW1wdHkoKSxhPW51bGx9KSxwdW5jaGdzLlR3ZWVuTGl0ZS5raWxsVHdlZW5zT2YoYy5maW5kKCIqIiksITEpLHB1bmNoZ3MuVHdlZW5MaXRlLmtpbGxUd2VlbnNPZihjLCExKSxkLnJlbW92ZSgpO3RyeXtjLmNsb3Nlc3QoIi5mb3JjZWZ1bGx3aWR0aF93cmFwcGVyX3RwX2Jhbm5lciIpLnJlbW92ZSgpfWNhdGNoKGEpe310cnl7Yy5jbG9zZXN0KCIucmV2X3NsaWRlcl93cmFwcGVyIikucmVtb3ZlKCl9Y2F0Y2goYSl7fXRyeXtjLnJlbW92ZSgpfWNhdGNoKGEpe31yZXR1cm4gYy5lbXB0eSgpLGMuaHRtbCgpLGM9bnVsbCxlPW51bGwsZGVsZXRlIGIuYyxkZWxldGUgYi5vcHQsITB9cmV0dXJuITF9LHJldnBhdXNlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKTthIT11bmRlZmluZWQmJmEubGVuZ3RoPjAmJmpRdWVyeSgiYm9keSIpLmZpbmQoIiMiK2EuYXR0cigiaWQiKSkubGVuZ3RoPjAmJihhLmRhdGEoImNvbnRob3ZlciIsMSksYS5kYXRhKCJjb250aG92ZXItY2hhbmdlZCIsMSksYS50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLm9ucGF1c2UiKSxhWzBdLm9wdC50b25wYXVzZT0hMCxhLnRyaWdnZXIoInN0b3B0aW1lciIpKX0pfSxyZXZyZXN1bWU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGE9alF1ZXJ5KHRoaXMpO2EhPXVuZGVmaW5lZCYmYS5sZW5ndGg+MCYmalF1ZXJ5KCJib2R5IikuZmluZCgiIyIrYS5hdHRyKCJpZCIpKS5sZW5ndGg+MCYmKGEuZGF0YSgiY29udGhvdmVyIiwwKSxhLmRhdGEoImNvbnRob3Zlci1jaGFuZ2VkIiwxKSxhLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub25yZXN1bWUiKSxhWzBdLm9wdC50b25wYXVzZT0hMSxhLnRyaWdnZXIoInN0YXJ0dGltZXIiKSl9KX0scmV2c3RhcnQ6ZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyk7aWYoYSE9dW5kZWZpbmVkJiZhLmxlbmd0aD4wJiZqUXVlcnkoImJvZHkiKS5maW5kKCIjIithLmF0dHIoImlkIikpLmxlbmd0aD4wJiZhWzBdLm9wdCE9PXVuZGVmaW5lZClyZXR1cm4gYVswXS5vcHQuc2xpZGVyaXNydW5uaW5nPyhjb25zb2xlLmxvZygiU2xpZGVyIElzIFJ1bm5pbmcgQWxyZWFkeSIpLCExKToocnVuU2xpZGVyKGEsYVswXS5vcHQpLCEwKX0scmV2bmV4dDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyk7YSE9dW5kZWZpbmVkJiZhLmxlbmd0aD4wJiZqUXVlcnkoImJvZHkiKS5maW5kKCIjIithLmF0dHIoImlkIikpLmxlbmd0aD4wJiZfUi5jYWxsaW5nTmV3U2xpZGUoYSwxKX0pfSxyZXZwcmV2OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKTthIT11bmRlZmluZWQmJmEubGVuZ3RoPjAmJmpRdWVyeSgiYm9keSIpLmZpbmQoIiMiK2EuYXR0cigiaWQiKSkubGVuZ3RoPjAmJl9SLmNhbGxpbmdOZXdTbGlkZShhLC0xKX0pfSxyZXZtYXhzbGlkZTpmdW5jdGlvbigpe3JldHVybiBqUXVlcnkodGhpcykuZmluZCgiLnRwLXJldnNsaWRlci1tYWludWwgPmxpIikubGVuZ3RofSxyZXZjdXJyZW50c2xpZGU6ZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyk7aWYoYSE9dW5kZWZpbmVkJiZhLmxlbmd0aD4wJiZqUXVlcnkoImJvZHkiKS5maW5kKCIjIithLmF0dHIoImlkIikpLmxlbmd0aD4wKXJldHVybiBwYXJzZUludChhWzBdLm9wdC5hY3QsMCkrMX0scmV2bGFzdHNsaWRlOmZ1bmN0aW9uKCl7cmV0dXJuIGpRdWVyeSh0aGlzKS5maW5kKCIudHAtcmV2c2xpZGVyLW1haW51bCA+bGkiKS5sZW5ndGh9LHJldnNob3dzbGlkZTpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGI9alF1ZXJ5KHRoaXMpO2IhPXVuZGVmaW5lZCYmYi5sZW5ndGg+MCYmalF1ZXJ5KCJib2R5IikuZmluZCgiIyIrYi5hdHRyKCJpZCIpKS5sZW5ndGg+MCYmX1IuY2FsbGluZ05ld1NsaWRlKGIsInRvIisoYS0xKSl9KX0scmV2Y2FsbHNsaWRld2l0aGlkOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgYj1qUXVlcnkodGhpcyk7YiE9dW5kZWZpbmVkJiZiLmxlbmd0aD4wJiZqUXVlcnkoImJvZHkiKS5maW5kKCIjIitiLmF0dHIoImlkIikpLmxlbmd0aD4wJiZfUi5jYWxsaW5nTmV3U2xpZGUoYixhKX0pfX0pO3ZhciBfUj1qUXVlcnkuZm4ucmV2b2x1dGlvbjtqUXVlcnkuZXh0ZW5kKCEwLF9SLHtnZXR2ZXJzaW9uOmZ1bmN0aW9uKCl7cmV0dXJuIHZlcnNpb259LGNvbXBhcmVfdmVyc2lvbjpmdW5jdGlvbihhKXtyZXR1cm4ic3RvcCIhPWEuY2hlY2smJihfUi5nZXR2ZXJzaW9uKCkuY29yZTxhLm1pbl9jb3JlPyhhLmNoZWNrPT09dW5kZWZpbmVkJiYoY29uc29sZS5sb2coIiVjU2xpZGVyIFJldm9sdXRpb24gV2FybmluZyAoQ29yZToiK19SLmdldHZlcnNpb24oKS5jb3JlKyIpIiwiY29sb3I6I2MwMzkyYjtmb250LXdlaWdodDpib2xkOyIpLGNvbnNvbGUubG9nKCIlYyAgICAgQ29yZSBpcyBvbGRlciB0aGFuIGV4cGVjdGVkICgiK2EubWluX2NvcmUrIikgZnJvbSAiK2EuYWxpYXMsImNvbG9yOiMzMzMiKSxjb25zb2xlLmxvZygiJWMgICAgIFBsZWFzZSB1cGRhdGUgU2xpZGVyIFJldm9sdXRpb24gdG8gdGhlIGxhdGVzdCB2ZXJzaW9uLiIsImNvbG9yOiMzMzMiKSxjb25zb2xlLmxvZygiJWMgICAgIEl0IG1pZ2h0IGJlIHJlcXVpcmVkIHRvIHB1cmdlIGFuZCBjbGVhciBTZXJ2ZXIvQ2xpZW50IHNpZGUgQ2FjaGVzLiIsImNvbG9yOiMzMzMiKSksYS5jaGVjaz0ic3RvcCIpOl9SLmdldHZlcnNpb24oKVthLm5hbWVdIT11bmRlZmluZWQmJmEudmVyc2lvbjxfUi5nZXR2ZXJzaW9uKClbYS5uYW1lXSYmKGEuY2hlY2s9PT11bmRlZmluZWQmJihjb25zb2xlLmxvZygiJWNTbGlkZXIgUmV2b2x1dGlvbiBXYXJuaW5nIChDb3JlOiIrX1IuZ2V0dmVyc2lvbigpLmNvcmUrIikiLCJjb2xvcjojYzAzOTJiO2ZvbnQtd2VpZ2h0OmJvbGQ7IiksY29uc29sZS5sb2coIiVjICAgICAiK2EuYWxpYXMrIiAoIithLnZlcnNpb24rIikgaXMgb2xkZXIgdGhhbiByZXF1aWVyZWQgKCIrX1IuZ2V0dmVyc2lvbigpW2EubmFtZV0rIikiLCJjb2xvcjojMzMzIiksY29uc29sZS5sb2coIiVjICAgICBQbGVhc2UgdXBkYXRlIFNsaWRlciBSZXZvbHV0aW9uIHRvIHRoZSBsYXRlc3QgdmVyc2lvbi4iLCJjb2xvcjojMzMzIiksY29uc29sZS5sb2coIiVjICAgICBJdCBtaWdodCBiZSByZXF1aXJlZCB0byBwdXJnZSBhbmQgY2xlYXIgU2VydmVyL0NsaWVudCBzaWRlIENhY2hlcy4iLCJjb2xvcjojMzMzIikpLGEuY2hlY2s9InN0b3AiKSksYX0sY3VycmVudFNsaWRlSW5kZXg6ZnVuY3Rpb24oYSl7dmFyIGI9YS5jLmZpbmQoIi5hY3RpdmUtcmV2c2xpZGUiKS5pbmRleCgpO3JldHVybiBiPWI9PS0xPzA6Yn0sc2ltcDpmdW5jdGlvbihhLGIsYyl7dmFyIGQ9TWF0aC5hYnMoYSktTWF0aC5mbG9vcihNYXRoLmFicyhhL2IpKSpiO3JldHVybiBjP2Q6YTwwPy0xKmQ6ZH0saU9TVmVyc2lvbjpmdW5jdGlvbigpe3ZhciBhPSExO3JldHVybiBuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9pUGhvbmUvaSl8fG5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL2lQb2QvaSl8fG5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL2lQYWQvaSk/bmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvT1MgNF9cZCBsaWtlIE1hYyBPUyBYL2kpJiYoYT0hMCk6YT0hMSxhfSxpc0lFOmZ1bmN0aW9uKGEsYil7dmFyIGM9alF1ZXJ5KCc8ZGl2IHN0eWxlPSJkaXNwbGF5Om5vbmU7Ii8+JykuYXBwZW5kVG8oalF1ZXJ5KCJib2R5IikpO2MuaHRtbCgiPCEtLVtpZiAiKyhifHwiIikrIiBJRSAiKyhhfHwiIikrIl0+PGE+Jm5ic3A7PC9hPjwhW2VuZGlmXS0tPiIpO3ZhciBkPWMuZmluZCgiYSIpLmxlbmd0aDtyZXR1cm4gYy5yZW1vdmUoKSxkfSxpc19tb2JpbGU6ZnVuY3Rpb24oKXt2YXIgYT1bImFuZHJvaWQiLCJ3ZWJvcyIsImlwaG9uZSIsImlwYWQiLCJibGFja2JlcnJ5IiwiQW5kcm9pZCIsIndlYm9zIiwsImlQb2QiLCJpUGhvbmUiLCJpUGFkIiwiQmxhY2tiZXJyeSIsIkJsYWNrQmVycnkiXSxiPSExO2Zvcih2YXIgYyBpbiBhKW5hdmlnYXRvci51c2VyQWdlbnQuc3BsaXQoYVtjXSkubGVuZ3RoPjEmJihiPSEwKTtyZXR1cm4gYn0sY2FsbEJhY2tIYW5kbGluZzpmdW5jdGlvbihhLGIsYyl7dHJ5e2EuY2FsbEJhY2tBcnJheSYmalF1ZXJ5LmVhY2goYS5jYWxsQmFja0FycmF5LGZ1bmN0aW9uKGEsZCl7ZCYmZC5pbm1vZHVsZSYmZC5pbm1vZHVsZT09PWImJmQuYXRwb3NpdGlvbiYmZC5hdHBvc2l0aW9uPT09YyYmZC5jYWxsYmFjayYmZC5jYWxsYmFjay5jYWxsKCl9KX1jYXRjaChhKXtjb25zb2xlLmxvZygiQ2FsbCBCYWNrIEZhaWxlZCIpfX0sZ2V0X2Jyb3dzZXI6ZnVuY3Rpb24oKXt2YXIgYyxhPW5hdmlnYXRvci5hcHBOYW1lLGI9bmF2aWdhdG9yLnVzZXJBZ2VudCxkPWIubWF0Y2goLyhvcGVyYXxjaHJvbWV8c2FmYXJpfGZpcmVmb3h8bXNpZSlcLz9ccyooXC4/XGQrKFwuXGQrKSopL2kpO3JldHVybiBkJiZudWxsIT0oYz1iLm1hdGNoKC92ZXJzaW9uXC8oW1wuXGRdKykvaSkpJiYoZFsyXT1jWzFdKSxkPWQ/W2RbMV0sZFsyXV06W2EsbmF2aWdhdG9yLmFwcFZlcnNpb24sIi0/Il0sZFswXX0sZ2V0X2Jyb3dzZXJfdmVyc2lvbjpmdW5jdGlvbigpe3ZhciBjLGE9bmF2aWdhdG9yLmFwcE5hbWUsYj1uYXZpZ2F0b3IudXNlckFnZW50LGQ9Yi5tYXRjaCgvKG9wZXJhfGNocm9tZXxzYWZhcml8ZmlyZWZveHxtc2llKVwvP1xzKihcLj9cZCsoXC5cZCspKikvaSk7cmV0dXJuIGQmJm51bGwhPShjPWIubWF0Y2goL3ZlcnNpb25cLyhbXC5cZF0rKS9pKSkmJihkWzJdPWNbMV0pLGQ9ZD9bZFsxXSxkWzJdXTpbYSxuYXZpZ2F0b3IuYXBwVmVyc2lvbiwiLT8iXSxkWzFdfSxnZXRIb3Jpem9udGFsT2Zmc2V0OmZ1bmN0aW9uKGEsYil7dmFyIGM9Z1dpZGVyT3V0KGEsIi5vdXRlci1sZWZ0IiksZD1nV2lkZXJPdXQoYSwiLm91dGVyLXJpZ2h0Iik7c3dpdGNoKGIpe2Nhc2UibGVmdCI6cmV0dXJuIGM7Y2FzZSJyaWdodCI6cmV0dXJuIGQ7Y2FzZSJib3RoIjpyZXR1cm4gYytkfX0sY2FsbGluZ05ld1NsaWRlOmZ1bmN0aW9uKGEsYil7dmFyIGM9YS5maW5kKCIubmV4dC1yZXZzbGlkZSIpLmxlbmd0aD4wP2EuZmluZCgiLm5leHQtcmV2c2xpZGUiKS5pbmRleCgpOmEuZmluZCgiLnByb2Nlc3NpbmctcmV2c2xpZGUiKS5sZW5ndGg+MD9hLmZpbmQoIi5wcm9jZXNzaW5nLXJldnNsaWRlIikuaW5kZXgoKTphLmZpbmQoIi5hY3RpdmUtcmV2c2xpZGUiKS5pbmRleCgpLGQ9MCxlPWFbMF0ub3B0O2EuZmluZCgiLm5leHQtcmV2c2xpZGUiKS5yZW1vdmVDbGFzcygibmV4dC1yZXZzbGlkZSIpLGEuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLmhhc0NsYXNzKCJ0cC1pbnZpc2libGUtc2xpZGUiKSYmKGM9ZS5sYXN0X3Nob3duX3NsaWRlKSxiJiZqUXVlcnkuaXNOdW1lcmljKGIpfHxiLm1hdGNoKC90by9nKT8oMT09PWJ8fGI9PT0tMT8oZD1jK2IsZD1kPDA/ZS5zbGlkZWFtb3VudC0xOmQ+PWUuc2xpZGVhbW91bnQ/MDpkKTooYj1qUXVlcnkuaXNOdW1lcmljKGIpP2I6cGFyc2VJbnQoYi5zcGxpdCgidG8iKVsxXSwwKSxkPWI8MD8wOmI+ZS5zbGlkZWFtb3VudC0xP2Uuc2xpZGVhbW91bnQtMTpiKSxhLmZpbmQoIi50cC1yZXZzbGlkZXItc2xpZGVzbGk6ZXEoIitkKyIpIikuYWRkQ2xhc3MoIm5leHQtcmV2c2xpZGUiKSk6YiYmYS5maW5kKCIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIikuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKTthLmRhdGEoImluZGV4Iik9PT1iJiZhLmFkZENsYXNzKCJuZXh0LXJldnNsaWRlIil9KSxkPWEuZmluZCgiLm5leHQtcmV2c2xpZGUiKS5pbmRleCgpLGEudHJpZ2dlcigicmV2b2x1dGlvbi5uZXh0c2xpZGUud2FpdGluZyIpLGM9PT1kJiZjPT09ZS5sYXN0X3Nob3duX3NsaWRlfHxkIT09YyYmZCE9LTE/c3dhcFNsaWRlKGEpOmEuZmluZCgiLm5leHQtcmV2c2xpZGUiKS5yZW1vdmVDbGFzcygibmV4dC1yZXZzbGlkZSIpfSxzbG90U2l6ZTpmdW5jdGlvbihhLGIpe2Iuc2xvdHc9TWF0aC5jZWlsKGIud2lkdGgvYi5zbG90cyksImZ1bGxzY3JlZW4iPT1iLnNsaWRlckxheW91dD9iLnNsb3RoPU1hdGguY2VpbChqUXVlcnkod2luZG93KS5oZWlnaHQoKS9iLnNsb3RzKTpiLnNsb3RoPU1hdGguY2VpbChiLmhlaWdodC9iLnNsb3RzKSwib24iPT1iLmF1dG9IZWlnaHQmJmEhPT11bmRlZmluZWQmJiIiIT09YSYmKGIuc2xvdGg9TWF0aC5jZWlsKGEuaGVpZ2h0KCkvYi5zbG90cykpfSxzZXRTaXplOmZ1bmN0aW9uKGEpe3ZhciBiPShhLnRvcF9vdXRlcnx8MCkrKGEuYm90dG9tX291dGVyfHwwKSxjPXBhcnNlSW50KGEuY2Fyb3VzZWwucGFkZGluZ190b3B8fDAsMCksZD1wYXJzZUludChhLmNhcm91c2VsLnBhZGRpbmdfYm90dG9tfHwwLDApLGU9YS5ncmlkaGVpZ2h0W2EuY3VyV2luUmFuZ2VdLGY9MCxnPWEubmV4dFNsaWRlPT09LTF8fGEubmV4dFNsaWRlPT09dW5kZWZpbmVkPzA6YS5uZXh0U2xpZGU7aWYoYS5wYWRkaW5ncz1hLnBhZGRpbmdzPT09dW5kZWZpbmVkP3t0b3A6cGFyc2VJbnQoYS5jLnBhcmVudCgpLmNzcygicGFkZGluZ1RvcCIpLDApfHwwLGJvdHRvbTpwYXJzZUludChhLmMucGFyZW50KCkuY3NzKCJwYWRkaW5nQm90dG9tIiksMCl8fDB9OmEucGFkZGluZ3MsYS5yb3d6b25lcyYmYS5yb3d6b25lcy5sZW5ndGg+MClmb3IodmFyIGg9MDtoPGEucm93em9uZXNbZ10ubGVuZ3RoO2grKylmKz1hLnJvd3pvbmVzW2ddW2hdWzBdLm9mZnNldEhlaWdodDtpZihlPWU8YS5taW5IZWlnaHQ/YS5taW5IZWlnaHQ6ZSxlPWU8Zj9mOmUsImZ1bGx3aWR0aCI9PWEuc2xpZGVyTGF5b3V0JiYib2ZmIj09YS5hdXRvSGVpZ2h0JiZwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYS5jLHttYXhIZWlnaHQ6ZSsicHgifSksYS5jLmNzcyh7bWFyZ2luVG9wOmMsbWFyZ2luQm90dG9tOmR9KSxhLndpZHRoPWEudWwud2lkdGgoKSxhLmhlaWdodD1hLnVsLmhlaWdodCgpLHNldFNjYWxlKGEpLGEuaGVpZ2h0PU1hdGgucm91bmQoYS5ncmlkaGVpZ2h0W2EuY3VyV2luUmFuZ2VdKihhLndpZHRoL2EuZ3JpZHdpZHRoW2EuY3VyV2luUmFuZ2VdKSksYS5oZWlnaHQ+YS5ncmlkaGVpZ2h0W2EuY3VyV2luUmFuZ2VdJiYib24iIT1hLmF1dG9IZWlnaHQmJihhLmhlaWdodD1hLmdyaWRoZWlnaHRbYS5jdXJXaW5SYW5nZV0pLCJmdWxsc2NyZWVuIj09YS5zbGlkZXJMYXlvdXR8fGEuaW5mdWxsc2NyZWVubW9kZSl7YS5oZWlnaHQ9YS5idyphLmdyaWRoZWlnaHRbYS5jdXJXaW5SYW5nZV07dmFyIGo9KGEuYy5wYXJlbnQoKS53aWR0aCgpLGpRdWVyeSh3aW5kb3cpLmhlaWdodCgpKTtpZihhLmZ1bGxTY3JlZW5PZmZzZXRDb250YWluZXIhPXVuZGVmaW5lZCl7dHJ5e3ZhciBrPWEuZnVsbFNjcmVlbk9mZnNldENvbnRhaW5lci5zcGxpdCgiLCIpO2smJmpRdWVyeS5lYWNoKGssZnVuY3Rpb24oYSxiKXtqPWpRdWVyeShiKS5sZW5ndGg+MD9qLWpRdWVyeShiKS5vdXRlckhlaWdodCghMCk6an0pfWNhdGNoKGEpe310cnl7YS5mdWxsU2NyZWVuT2Zmc2V0LnNwbGl0KCIlIikubGVuZ3RoPjEmJmEuZnVsbFNjcmVlbk9mZnNldCE9dW5kZWZpbmVkJiZhLmZ1bGxTY3JlZW5PZmZzZXQubGVuZ3RoPjA/ai09alF1ZXJ5KHdpbmRvdykuaGVpZ2h0KCkqcGFyc2VJbnQoYS5mdWxsU2NyZWVuT2Zmc2V0LDApLzEwMDphLmZ1bGxTY3JlZW5PZmZzZXQhPXVuZGVmaW5lZCYmYS5mdWxsU2NyZWVuT2Zmc2V0Lmxlbmd0aD4wJiYoai09cGFyc2VJbnQoYS5mdWxsU2NyZWVuT2Zmc2V0LDApKX1jYXRjaChhKXt9fWo9ajxhLm1pbkhlaWdodD9hLm1pbkhlaWdodDpqLGotPWIsYS5jLnBhcmVudCgpLmhlaWdodChqKSxhLmMuY2xvc2VzdCgiLnJldl9zbGlkZXJfd3JhcHBlciIpLmhlaWdodChqKSxhLmMuY3NzKHtoZWlnaHQ6IjEwMCUifSksYS5oZWlnaHQ9aixhLm1pbkhlaWdodCE9dW5kZWZpbmVkJiZhLmhlaWdodDxhLm1pbkhlaWdodCYmKGEuaGVpZ2h0PWEubWluSGVpZ2h0KSxhLmhlaWdodD1wYXJzZUludChmLDApPnBhcnNlSW50KGEuaGVpZ2h0LDApP2Y6YS5oZWlnaHR9ZWxzZSBhLm1pbkhlaWdodCE9dW5kZWZpbmVkJiZhLmhlaWdodDxhLm1pbkhlaWdodCYmKGEuaGVpZ2h0PWEubWluSGVpZ2h0KSxhLmhlaWdodD1wYXJzZUludChmLDApPnBhcnNlSW50KGEuaGVpZ2h0LDApP2Y6YS5oZWlnaHQsYS5jLmhlaWdodChhLmhlaWdodCk7dmFyIGw9e2hlaWdodDpjK2QrYithLmhlaWdodCthLnBhZGRpbmdzLnRvcCthLnBhZGRpbmdzLmJvdHRvbX07YS5jLmNsb3Nlc3QoIi5mb3JjZWZ1bGx3aWR0aF93cmFwcGVyX3RwX2Jhbm5lciIpLmZpbmQoIi50cC1mdWxsd2lkdGgtZm9yY2VyIikuY3NzKGwpLGEuYy5jbG9zZXN0KCIucmV2X3NsaWRlcl93cmFwcGVyIikuY3NzKGwpLHNldFNjYWxlKGEpfSxlbnRlckluVmlld1BvcnQ6ZnVuY3Rpb24oYSl7YS53YWl0Rm9yQ291bnREb3duJiYoY291bnREb3duKGEuYyxhKSxhLndhaXRGb3JDb3VudERvd249ITEpLGEud2FpdEZvckZpcnN0U2xpZGUmJihzd2FwU2xpZGUoYS5jKSxhLndhaXRGb3JGaXJzdFNsaWRlPSExLHNldFRpbWVvdXQoZnVuY3Rpb24oKXthLmMucmVtb3ZlQ2xhc3MoInRwLXdhaXRmb3JmaXJzdHN0YXJ0Iil9LDUwMCkpLCJwbGF5aW5nIiE9YS5zbGlkZXJsYXN0c3RhdHVzJiZhLnNsaWRlcmxhc3RzdGF0dXMhPXVuZGVmaW5lZHx8YS5jLnRyaWdnZXIoInN0YXJ0dGltZXIiKSxhLmxhc3RwbGF5ZWR2aWRlb3MhPXVuZGVmaW5lZCYmYS5sYXN0cGxheWVkdmlkZW9zLmxlbmd0aD4wJiZqUXVlcnkuZWFjaChhLmxhc3RwbGF5ZWR2aWRlb3MsZnVuY3Rpb24oYixjKXtfUi5wbGF5VmlkZW8oYyxhKX0pfSxsZWF2ZVZpZXdQb3J0OmZ1bmN0aW9uKGEpe2Euc2xpZGVybGFzdHN0YXR1cz1hLnNsaWRlcnN0YXR1cyxhLmMudHJpZ2dlcigic3RvcHRpbWVyIiksYS5wbGF5aW5ndmlkZW9zIT11bmRlZmluZWQmJmEucGxheWluZ3ZpZGVvcy5sZW5ndGg+MCYmKGEubGFzdHBsYXllZHZpZGVvcz1qUXVlcnkuZXh0ZW5kKCEwLFtdLGEucGxheWluZ3ZpZGVvcyksYS5wbGF5aW5ndmlkZW9zJiZqUXVlcnkuZWFjaChhLnBsYXlpbmd2aWRlb3MsZnVuY3Rpb24oYixjKXthLmxlYXZlVmlld1BvcnRCYXNlZFN0b3A9ITAsX1Iuc3RvcFZpZGVvJiZfUi5zdG9wVmlkZW8oYyxhKX0pKX0sdW5Ub2dnbGVTdGF0ZTpmdW5jdGlvbihhKXthIT11bmRlZmluZWQmJmEubGVuZ3RoPjAmJmpRdWVyeS5lYWNoKGEsZnVuY3Rpb24oYSxiKXtiLnJlbW92ZUNsYXNzKCJycy10b2dnbGUtY29udGVudC1hY3RpdmUiKX0pfSx0b2dnbGVTdGF0ZTpmdW5jdGlvbihhKXthIT11bmRlZmluZWQmJmEubGVuZ3RoPjAmJmpRdWVyeS5lYWNoKGEsZnVuY3Rpb24oYSxiKXtiLmFkZENsYXNzKCJycy10b2dnbGUtY29udGVudC1hY3RpdmUiKX0pfSxzd2FwdG9nZ2xlU3RhdGU6ZnVuY3Rpb24oYSl7YSE9dW5kZWZpbmVkJiZhLmxlbmd0aD4wJiZqUXVlcnkuZWFjaChhLGZ1bmN0aW9uKGEsYil7alF1ZXJ5KGIpLmhhc0NsYXNzKCJycy10b2dnbGUtY29udGVudC1hY3RpdmUiKT9qUXVlcnkoYikucmVtb3ZlQ2xhc3MoInJzLXRvZ2dsZS1jb250ZW50LWFjdGl2ZSIpOmpRdWVyeShiKS5hZGRDbGFzcygicnMtdG9nZ2xlLWNvbnRlbnQtYWN0aXZlIil9KX0sbGFzdFRvZ2dsZVN0YXRlOmZ1bmN0aW9uKGEpe3ZhciBiPTA7cmV0dXJuIGEhPXVuZGVmaW5lZCYmYS5sZW5ndGg+MCYmalF1ZXJ5LmVhY2goYSxmdW5jdGlvbihhLGMpe2I9Yy5oYXNDbGFzcygicnMtdG9nZ2xlLWNvbnRlbnQtYWN0aXZlIil9KSxifX0pO3ZhciBfSVNNPV9SLmlzX21vYmlsZSgpLGNoZWNrSURTPWZ1bmN0aW9uKGEsYil7YS5hbnlpZD1hLmFueWlkPT09dW5kZWZpbmVkP1tdOmEuYW55aWQ7dmFyIGM9alF1ZXJ5LmluQXJyYXkoYi5hdHRyKCJpZCIpLGEuYW55aWQpO2lmKGMhPS0xKXt2YXIgZD1iLmF0dHIoImlkIikrIl8iK01hdGgucm91bmQoOTk5OSpNYXRoLnJhbmRvbSgpKTtiLmF0dHIoImlkIixkKX1hLmFueWlkLnB1c2goYi5hdHRyKCJpZCIpKX0scmVtb3ZlQXJyYXk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtyZXR1cm4galF1ZXJ5LmVhY2goYSxmdW5jdGlvbihhLGQpe2EhPWImJmMucHVzaChkKX0pLGN9LHJlbW92ZU5hdldpdGhMaXJlZj1mdW5jdGlvbihhLGIsYyl7Yy5jLmZpbmQoYSkuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKTthLmRhdGEoImxpcmVmIik9PT1iJiZhLnJlbW92ZSgpfSl9LGxBamF4PWZ1bmN0aW9uKGEsYil7cmV0dXJuIWpRdWVyeSgiYm9keSIpLmRhdGEoYSkmJihiLmZpbGVzeXN0ZW0/KGIuZXJyb3JtPT09dW5kZWZpbmVkJiYoYi5lcnJvcm09Ijxicj5Mb2NhbCBGaWxlc3lzdGVtIERldGVjdGVkICE8YnI+UHV0IHRoaXMgdG8geW91ciBoZWFkZXI6IiksY29uc29sZS53YXJuKCJMb2NhbCBGaWxlc3lzdGVtIGRldGVjdGVkICEiKSxiLmVycm9ybT1iLmVycm9ybSsnPGJyPiZsdDtzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IicrYi5qc0ZpbGVMb2NhdGlvbithK2IuZXh0ZW5zaW9uc19zdWZmaXgrJyImZ3Q7Jmx0Oy9zY3JpcHQmZ3Q7Jyxjb25zb2xlLndhcm4oYi5qc0ZpbGVMb2NhdGlvbithK2IuZXh0ZW5zaW9uc19zdWZmaXgrIiBjb3VsZCBub3QgYmUgbG9hZGVkICEiKSxjb25zb2xlLndhcm4oIlBsZWFzZSB1c2UgYSBsb2NhbCBTZXJ2ZXIgb3Igd29yayBvbmxpbmUgb3IgbWFrZSBzdXJlIHRoYXQgeW91IGxvYWQgYWxsIG5lZWRlZCBMaWJyYXJpZXMgbWFudWFsbHkgaW4geW91ciBEb2N1bWVudC4iKSxjb25zb2xlLmxvZygiICIpLGIubW9kdWxlc2ZhaWxpbmc9ITAsITEpOihqUXVlcnkuYWpheCh7dXJsOmIuanNGaWxlTG9jYXRpb24rYStiLmV4dGVuc2lvbnNfc3VmZml4KyI/dmVyc2lvbj0iK3ZlcnNpb24uY29yZSxkYXRhVHlwZToic2NyaXB0IixjYWNoZTohMCxlcnJvcjpmdW5jdGlvbihjKXtjb25zb2xlLndhcm4oIlNsaWRlciBSZXZvbHV0aW9uIDUuMCBFcnJvciAhIiksY29uc29sZS5lcnJvcigiRmFpbHVyZSBhdCBMb2FkaW5nOiIrYStiLmV4dGVuc2lvbnNfc3VmZml4KyIgb24gUGF0aDoiK2IuanNGaWxlTG9jYXRpb24pLGNvbnNvbGUuaW5mbyhjKX19KSx2b2lkIGpRdWVyeSgiYm9keSIpLmRhdGEoYSwhMCkpKX0sZ2V0TmVlZGVkU2NyaXB0cz1mdW5jdGlvbihhLGIpe3ZhciBjPW5ldyBPYmplY3QsZD1hLm5hdmlnYXRpb247cmV0dXJuIGMua2VuYnVybnM9ITEsYy5wYXJhbGxheD0hMSxjLmNhcm91c2VsPSExLGMubmF2aWdhdGlvbj0hMSxjLnZpZGVvcz0hMSxjLmFjdGlvbnM9ITEsYy5sYXllcmFuaW09ITEsYy5taWdyYXRpb249ITEsYi5kYXRhKCJ2ZXJzaW9uIikmJmIuZGF0YSgidmVyc2lvbiIpLnRvU3RyaW5nKCkubWF0Y2goLzUuL2dpKT8oYi5maW5kKCJpbWciKS5lYWNoKGZ1bmN0aW9uKCl7Im9uIj09alF1ZXJ5KHRoaXMpLmRhdGEoImtlbmJ1cm5zIikmJihjLmtlbmJ1cm5zPSEwKX0pLCgiY2Fyb3VzZWwiPT1hLnNsaWRlclR5cGV8fCJvbiI9PWQua2V5Ym9hcmROYXZpZ2F0aW9ufHwib24iPT1kLm1vdXNlU2Nyb2xsTmF2aWdhdGlvbnx8Im9uIj09ZC50b3VjaC50b3VjaGVuYWJsZWR8fGQuYXJyb3dzLmVuYWJsZXx8ZC5idWxsZXRzLmVuYWJsZXx8ZC50aHVtYm5haWxzLmVuYWJsZXx8ZC50YWJzLmVuYWJsZSkmJihjLm5hdmlnYXRpb249ITApLGIuZmluZCgiLnRwLWNhcHRpb24sIC50cC1zdGF0aWMtbGF5ZXIsIC5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIikuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKTsoYS5kYXRhKCJ5dGlkIikhPXVuZGVmaW5lZHx8YS5maW5kKCJpZnJhbWUiKS5sZW5ndGg+MCYmYS5maW5kKCJpZnJhbWUiKS5hdHRyKCJzcmMiKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoInlvdXR1YmUiKT4wKSYmKGMudmlkZW9zPSEwKSwoYS5kYXRhKCJ2aW1lb2lkIikhPXVuZGVmaW5lZHx8YS5maW5kKCJpZnJhbWUiKS5sZW5ndGg+MCYmYS5maW5kKCJpZnJhbWUiKS5hdHRyKCJzcmMiKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoInZpbWVvIik+MCkmJihjLnZpZGVvcz0hMCksYS5kYXRhKCJhY3Rpb25zIikhPT11bmRlZmluZWQmJihjLmFjdGlvbnM9ITApLGMubGF5ZXJhbmltPSEwfSksYi5maW5kKCJsaSIpLmVhY2goZnVuY3Rpb24oKXtqUXVlcnkodGhpcykuZGF0YSgibGluayIpJiZqUXVlcnkodGhpcykuZGF0YSgibGluayIpIT11bmRlZmluZWQmJihjLmxheWVyYW5pbT0hMCxjLmFjdGlvbnM9ITApfSksIWMudmlkZW9zJiYoYi5maW5kKCIucnMtYmFja2dyb3VuZC12aWRlby1sYXllciIpLmxlbmd0aD4wfHxiLmZpbmQoIi50cC12aWRlb2xheWVyIikubGVuZ3RoPjB8fGIuZmluZCgiLnRwLWF1ZGlvbGF5ZXIiKS5sZW5ndGg+MHx8Yi5maW5kKCJpZnJhbWUiKS5sZW5ndGg+MHx8Yi5maW5kKCJ2aWRlbyIpLmxlbmd0aD4wKSYmKGMudmlkZW9zPSEwKSwiY2Fyb3VzZWwiPT1hLnNsaWRlclR5cGUmJihjLmNhcm91c2VsPSEwKSwoIm9mZiIhPT1hLnBhcmFsbGF4LnR5cGV8fGEudmlld1BvcnQuZW5hYmxlfHwidHJ1ZSI9PWEudmlld1BvcnQuZW5hYmxlfHwidHJ1ZSI9PT1hLnNjcm9sbGVmZmVjdC5vbnx8YS5zY3JvbGxlZmZlY3Qub24pJiYoYy5wYXJhbGxheD0hMCkpOihjLmtlbmJ1cm5zPSEwLGMucGFyYWxsYXg9ITAsYy5jYXJvdXNlbD0hMSxjLm5hdmlnYXRpb249ITAsYy52aWRlb3M9ITAsYy5hY3Rpb25zPSEwLGMubGF5ZXJhbmltPSEwLGMubWlncmF0aW9uPSEwKSwiaGVybyI9PWEuc2xpZGVyVHlwZSYmKGMuY2Fyb3VzZWw9ITEsYy5uYXZpZ2F0aW9uPSExKSx3aW5kb3cubG9jYXRpb24uaHJlZi5tYXRjaCgvZmlsZTovZ2kpJiYoYy5maWxlc3lzdGVtPSEwLGEuZmlsZXN5c3RlbT0hMCksYy52aWRlb3MmJiJ1bmRlZmluZWQiPT10eXBlb2YgX1IuaXNWaWRlb1BsYXlpbmcmJmxBamF4KCJyZXZvbHV0aW9uLmV4dGVuc2lvbi52aWRlbyIsYSksYy5jYXJvdXNlbCYmInVuZGVmaW5lZCI9PXR5cGVvZiBfUi5wcmVwYXJlQ2Fyb3VzZWwmJmxBamF4KCJyZXZvbHV0aW9uLmV4dGVuc2lvbi5jYXJvdXNlbCIsYSksYy5jYXJvdXNlbHx8InVuZGVmaW5lZCIhPXR5cGVvZiBfUi5hbmltYXRlU2xpZGV8fGxBamF4KCJyZXZvbHV0aW9uLmV4dGVuc2lvbi5zbGlkZWFuaW1zIixhKSxjLmFjdGlvbnMmJiJ1bmRlZmluZWQiPT10eXBlb2YgX1IuY2hlY2tBY3Rpb25zJiZsQWpheCgicmV2b2x1dGlvbi5leHRlbnNpb24uYWN0aW9ucyIsYSksYy5sYXllcmFuaW0mJiJ1bmRlZmluZWQiPT10eXBlb2YgX1IuaGFuZGxlU3RhdGljTGF5ZXJzJiZsQWpheCgicmV2b2x1dGlvbi5leHRlbnNpb24ubGF5ZXJhbmltYXRpb24iLGEpLGMua2VuYnVybnMmJiJ1bmRlZmluZWQiPT10eXBlb2YgX1Iuc3RvcEtlbkJ1cm4mJmxBamF4KCJyZXZvbHV0aW9uLmV4dGVuc2lvbi5rZW5idXJuIixhKSxjLm5hdmlnYXRpb24mJiJ1bmRlZmluZWQiPT10eXBlb2YgX1IuY3JlYXRlTmF2aWdhdGlvbiYmbEFqYXgoInJldm9sdXRpb24uZXh0ZW5zaW9uLm5hdmlnYXRpb24iLGEpLGMubWlncmF0aW9uJiYidW5kZWZpbmVkIj09dHlwZW9mIF9SLm1pZ3JhdGlvbiYmbEFqYXgoInJldm9sdXRpb24uZXh0ZW5zaW9uLm1pZ3JhdGlvbiIsYSksYy5wYXJhbGxheCYmInVuZGVmaW5lZCI9PXR5cGVvZiBfUi5jaGVja0ZvclBhcmFsbGF4JiZsQWpheCgicmV2b2x1dGlvbi5leHRlbnNpb24ucGFyYWxsYXgiLGEpLGEuYWRkb25zIT11bmRlZmluZWQmJmEuYWRkb25zLmxlbmd0aD4wJiZqUXVlcnkuZWFjaChhLmFkZG9ucyxmdW5jdGlvbihiLGMpeyJvYmplY3QiPT10eXBlb2YgYyYmYy5maWxlcHJlZml4IT11bmRlZmluZWQmJmxBamF4KGMuZmlsZXByZWZpeCxhKX0pLGN9LHdhaXRGb3JTY3JpcHRzPWZ1bmN0aW9uKGEsYil7dmFyIGM9ITAsZD1iLnNjcmlwdHNuZWVkZWQ7Yi5hZGRvbnMhPXVuZGVmaW5lZCYmYi5hZGRvbnMubGVuZ3RoPjAmJmpRdWVyeS5lYWNoKGIuYWRkb25zLGZ1bmN0aW9uKGEsYil7Im9iamVjdCI9PXR5cGVvZiBiJiZiLmluaXQhPXVuZGVmaW5lZCYmX1JbYi5pbml0XT09PXVuZGVmaW5lZCYmKGM9ITEpfSksZC5maWxlc3lzdGVtfHwidW5kZWZpbmVkIiE9dHlwZW9mIHB1bmNoZ3MmJmMmJighZC5rZW5idXJuc3x8ZC5rZW5idXJucyYmInVuZGVmaW5lZCIhPXR5cGVvZiBfUi5zdG9wS2VuQnVybikmJighZC5uYXZpZ2F0aW9ufHxkLm5hdmlnYXRpb24mJiJ1bmRlZmluZWQiIT10eXBlb2YgX1IuY3JlYXRlTmF2aWdhdGlvbikmJighZC5jYXJvdXNlbHx8ZC5jYXJvdXNlbCYmInVuZGVmaW5lZCIhPXR5cGVvZiBfUi5wcmVwYXJlQ2Fyb3VzZWwpJiYoIWQudmlkZW9zfHxkLnZpZGVvcyYmInVuZGVmaW5lZCIhPXR5cGVvZiBfUi5yZXNldFZpZGVvKSYmKCFkLmFjdGlvbnN8fGQuYWN0aW9ucyYmInVuZGVmaW5lZCIhPXR5cGVvZiBfUi5jaGVja0FjdGlvbnMpJiYoIWQubGF5ZXJhbmltfHxkLmxheWVyYW5pbSYmInVuZGVmaW5lZCIhPXR5cGVvZiBfUi5oYW5kbGVTdGF0aWNMYXllcnMpJiYoIWQubWlncmF0aW9ufHxkLm1pZ3JhdGlvbiYmInVuZGVmaW5lZCIhPXR5cGVvZiBfUi5taWdyYXRpb24pJiYoIWQucGFyYWxsYXh8fGQucGFyYWxsYXgmJiJ1bmRlZmluZWQiIT10eXBlb2YgX1IuY2hlY2tGb3JQYXJhbGxheCkmJihkLmNhcm91c2VsfHwhZC5jYXJvdXNlbCYmInVuZGVmaW5lZCIhPXR5cGVvZiBfUi5hbmltYXRlU2xpZGUpP2EudHJpZ2dlcigic2NyaXB0c2xvYWRlZCIpOnNldFRpbWVvdXQoZnVuY3Rpb24oKXt3YWl0Rm9yU2NyaXB0cyhhLGIpfSw1MCl9LGdldFNjcmlwdExvY2F0aW9uPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBSZWdFeHAoInRoZW1lcHVuY2gucmV2b2x1dGlvbi5taW4uanMiLCJnaSIpLGM9IiI7cmV0dXJuIGpRdWVyeSgic2NyaXB0IikuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKS5hdHRyKCJzcmMiKTthJiZhLm1hdGNoKGIpJiYoYz1hKX0pLGM9Yy5yZXBsYWNlKCJqcXVlcnkudGhlbWVwdW5jaC5yZXZvbHV0aW9uLm1pbi5qcyIsIiIpLGM9Yy5yZXBsYWNlKCJqcXVlcnkudGhlbWVwdW5jaC5yZXZvbHV0aW9uLmpzIiwiIiksYz1jLnNwbGl0KCI/IilbMF19LHNldEN1cldpblJhbmdlPWZ1bmN0aW9uKGEsYil7dmFyIGQ9OTk5OSxlPTAsZj0wLGc9MCxoPWpRdWVyeSh3aW5kb3cpLndpZHRoKCksaT1iJiY5OTk5PT1hLnJlc3BvbnNpdmVMZXZlbHM/YS52aXNpYmlsaXR5TGV2ZWxzOmEucmVzcG9uc2l2ZUxldmVscztpJiZpLmxlbmd0aCYmalF1ZXJ5LmVhY2goaSxmdW5jdGlvbihhLGIpe2g8YiYmKDA9PWV8fGU+YikmJihkPWIsZz1hLGU9YiksaD5iJiZlPGImJihlPWIsZj1hKX0pLGU8ZCYmKGc9ZiksYj9hLmZvcmNlZFdpblJhbmdlPWc6YS5jdXJXaW5SYW5nZT1nfSxwcmVwYXJlT3B0aW9ucz1mdW5jdGlvbihhLGIpe2IuY2Fyb3VzZWwubWF4VmlzaWJsZUl0ZW1zPWIuY2Fyb3VzZWwubWF4VmlzaWJsZUl0ZW1zPDE/OTk5OmIuY2Fyb3VzZWwubWF4VmlzaWJsZUl0ZW1zLGIuY2Fyb3VzZWwudmVydGljYWxfYWxpZ249InRvcCI9PT1iLmNhcm91c2VsLnZlcnRpY2FsX2FsaWduPyIwJSI6ImJvdHRvbSI9PT1iLmNhcm91c2VsLnZlcnRpY2FsX2FsaWduPyIxMDAlIjoiNTAlIn0sZ1dpZGVyT3V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9MDtyZXR1cm4gYS5maW5kKGIpLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyk7IWEuaGFzQ2xhc3MoInRwLWZvcmNlbm90dmlzaWJsZSIpJiZjPGEub3V0ZXJXaWR0aCgpJiYoYz1hLm91dGVyV2lkdGgoKSl9KSxjfSxpbml0U2xpZGVyPWZ1bmN0aW9uKGNvbnRhaW5lcixvcHQpe3JldHVybiBjb250YWluZXIhPXVuZGVmaW5lZCYmKGNvbnRhaW5lci5kYXRhKCJhaW1nIikhPXVuZGVmaW5lZCYmKCJlbmFibGVkIj09Y29udGFpbmVyLmRhdGEoImFpZTgiKSYmX1IuaXNJRSg4KXx8ImVuYWJsZWQiPT1jb250YWluZXIuZGF0YSgiYW1vYmlsZSIpJiZfSVNNKSYmY29udGFpbmVyLmh0bWwoJzxpbWcgY2xhc3M9InRwLXNsaWRlci1hbHRlcm5hdGl2ZS1pbWFnZSIgc3JjPSInK2NvbnRhaW5lci5kYXRhKCJhaW1nIikrJyI+JyksY29udGFpbmVyLmZpbmQoIj51bCIpLmFkZENsYXNzKCJ0cC1yZXZzbGlkZXItbWFpbnVsIiksb3B0LmM9Y29udGFpbmVyLG9wdC51bD1jb250YWluZXIuZmluZCgiLnRwLXJldnNsaWRlci1tYWludWwiKSxvcHQudWwuZmluZCgiPmxpIikuZWFjaChmdW5jdGlvbihhKXt2YXIgYj1qUXVlcnkodGhpcyk7Im9uIj09Yi5kYXRhKCJoaWRlc2xpZGVvbm1vYmlsZSIpJiZfSVNNJiZiLnJlbW92ZSgpLChiLmRhdGEoImludmlzaWJsZSIpfHxiLmRhdGEoImludmlzaWJsZSIpPT09ITApJiYoYi5hZGRDbGFzcygidHAtaW52aXNpYmxlLXNsaWRlIiksYi5hcHBlbmRUbyhvcHQudWwpKX0pLG9wdC5hZGRvbnMhPXVuZGVmaW5lZCYmb3B0LmFkZG9ucy5sZW5ndGg+MCYmalF1ZXJ5LmVhY2gob3B0LmFkZG9ucyxmdW5jdGlvbihpLG9iail7Im9iamVjdCI9PXR5cGVvZiBvYmomJm9iai5pbml0IT11bmRlZmluZWQmJl9SW29iai5pbml0XShldmFsKG9iai5wYXJhbXMpKX0pLG9wdC5jaWQ9Y29udGFpbmVyLmF0dHIoImlkIiksb3B0LnVsLmNzcyh7dmlzaWJpbGl0eToidmlzaWJsZSJ9KSxvcHQuc2xpZGVhbW91bnQ9b3B0LnVsLmZpbmQoIj5saSIpLm5vdCgiLnRwLWludmlzaWJsZS1zbGlkZSIpLmxlbmd0aCxvcHQucmVhbHNsaWRlYW1vdW50PW9wdC51bC5maW5kKCI+bGkiKS5sZW5ndGgsb3B0LnNsYXllcnM9Y29udGFpbmVyLmZpbmQoIi50cC1zdGF0aWMtbGF5ZXJzIiksb3B0LnNsYXllcnMuZGF0YSgiaW5kZXgiLCJzdGF0aWNsYXllcnMiKSx2b2lkKDEhPW9wdC53YWl0Rm9ySW5pdCYmKGNvbnRhaW5lclswXS5vcHQ9b3B0LHJ1blNsaWRlcihjb250YWluZXIsb3B0KSkpKX0sb25GdWxsU2NyZWVuQ2hhbmdlPWZ1bmN0aW9uKCl7alF1ZXJ5KCJib2R5IikuZGF0YSgicnMtZnVsbFNjcmVlbk1vZGUiLCFqUXVlcnkoImJvZHkiKS5kYXRhKCJycy1mdWxsU2NyZWVuTW9kZSIpKSxqUXVlcnkoImJvZHkiKS5kYXRhKCJycy1mdWxsU2NyZWVuTW9kZSIpJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7alF1ZXJ5KHdpbmRvdykudHJpZ2dlcigicmVzaXplIil9LDIwMCl9LHJ1blNsaWRlcj1mdW5jdGlvbihhLGIpe2lmKGIuc2xpZGVyaXNydW5uaW5nPSEwLGIudWwuZmluZCgiPmxpIikuZWFjaChmdW5jdGlvbihhKXtqUXVlcnkodGhpcykuZGF0YSgib3JpZ2luYWxpbmRleCIsYSl9KSxiLmFsbGxpPWIudWwuZmluZCgiPmxpIiksalF1ZXJ5LmVhY2goYi5hbGxsaSxmdW5jdGlvbihhLGIpe3ZhciBiPWpRdWVyeShiKTtiLmRhdGEoIm9yaWdpbmRleCIsYi5pbmRleCgpKX0pLGIubGk9Yi51bC5maW5kKCI+bGkiKS5ub3QoIi50cC1pbnZpc2libGUtc2xpZGUiKSwib24iPT1iLnNodWZmbGUpe3ZhciBjPW5ldyBPYmplY3QsZD1iLnVsLmZpbmQoIj5saTpmaXJzdC1jaGlsZCIpO2MuZnN0cmFuc2l0aW9uPWQuZGF0YSgiZnN0cmFuc2l0aW9uIiksYy5mc21hc3RlcnNwZWVkPWQuZGF0YSgiZnNtYXN0ZXJzcGVlZCIpLGMuZnNzbG90YW1vdW50PWQuZGF0YSgiZnNzbG90YW1vdW50Iik7Zm9yKHZhciBlPTA7ZTxiLnNsaWRlYW1vdW50O2UrKyl7dmFyIGY9TWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpKmIuc2xpZGVhbW91bnQpO2IudWwuZmluZCgiPmxpOmVxKCIrZisiKSIpLnByZXBlbmRUbyhiLnVsKX12YXIgZz1iLnVsLmZpbmQoIj5saTpmaXJzdC1jaGlsZCIpO2cuZGF0YSgiZnN0cmFuc2l0aW9uIixjLmZzdHJhbnNpdGlvbiksZy5kYXRhKCJmc21hc3RlcnNwZWVkIixjLmZzbWFzdGVyc3BlZWQpLGcuZGF0YSgiZnNzbG90YW1vdW50IixjLmZzc2xvdGFtb3VudCksYi5hbGxsaT1iLnVsLmZpbmQoIj5saSIpLGIubGk9Yi51bC5maW5kKCI+bGkiKS5ub3QoIi50cC1pbnZpc2libGUtc2xpZGUiKX1pZihiLmlubGk9Yi51bC5maW5kKCI+bGkudHAtaW52aXNpYmxlLXNsaWRlIiksYi50aHVtYnM9bmV3IEFycmF5LGIuc2xvdHM9NCxiLmFjdD0tMSxiLmZpcnN0c3RhcnQ9MSxiLmxvYWRxdWV1ZT1uZXcgQXJyYXksYi5zeW5jbG9hZD0wLGIuY29udz1hLndpZHRoKCksYi5jb25oPWEuaGVpZ2h0KCksYi5yZXNwb25zaXZlTGV2ZWxzLmxlbmd0aD4xP2IucmVzcG9uc2l2ZUxldmVsc1swXT05OTk5OmIucmVzcG9uc2l2ZUxldmVscz05OTk5LGpRdWVyeS5lYWNoKGIuYWxsbGksZnVuY3Rpb24oYSxjKXt2YXIgYz1qUXVlcnkoYyksZD1jLmZpbmQoIi5yZXYtc2xpZGViZyIpfHxjLmZpbmQoImltZyIpLmZpcnN0KCksZT0wO2MuYWRkQ2xhc3MoInRwLXJldnNsaWRlci1zbGlkZXNsaSIpLGMuZGF0YSgiaW5kZXgiKT09PXVuZGVmaW5lZCYmYy5kYXRhKCJpbmRleCIsInJzLSIrTWF0aC5yb3VuZCg5OTk5OTkqTWF0aC5yYW5kb20oKSkpO3ZhciBmPW5ldyBPYmplY3Q7Zi5wYXJhbXM9bmV3IEFycmF5LGYuaWQ9Yy5kYXRhKCJpbmRleCIpLGYuc3JjPWMuZGF0YSgidGh1bWIiKSE9PXVuZGVmaW5lZD9jLmRhdGEoInRodW1iIik6ZC5kYXRhKCJsYXp5bG9hZCIpIT09dW5kZWZpbmVkP2QuZGF0YSgibGF6eWxvYWQiKTpkLmF0dHIoInNyYyIpLGMuZGF0YSgidGl0bGUiKSE9PXVuZGVmaW5lZCYmZi5wYXJhbXMucHVzaCh7ZnJvbTpSZWdFeHAoIlxce1xce3RpdGxlXFx9XFx9IiwiZyIpLHRvOmMuZGF0YSgidGl0bGUiKX0pLGMuZGF0YSgiZGVzY3JpcHRpb24iKSE9PXVuZGVmaW5lZCYmZi5wYXJhbXMucHVzaCh7ZnJvbTpSZWdFeHAoIlxce1xce2Rlc2NyaXB0aW9uXFx9XFx9IiwiZyIpLHRvOmMuZGF0YSgiZGVzY3JpcHRpb24iKX0pO2Zvcih2YXIgZT0xO2U8PTEwO2UrKyljLmRhdGEoInBhcmFtIitlKSE9PXVuZGVmaW5lZCYmZi5wYXJhbXMucHVzaCh7ZnJvbTpSZWdFeHAoIlxce1xce3BhcmFtIitlKyJcXH1cXH0iLCJnIiksdG86Yy5kYXRhKCJwYXJhbSIrZSl9KTtpZihiLnRodW1icy5wdXNoKGYpLGMuZGF0YSgibGluayIpIT11bmRlZmluZWQpe3ZhciBnPWMuZGF0YSgibGluayIpLGg9Yy5kYXRhKCJ0YXJnZXQiKXx8Il9zZWxmIixpPSJiYWNrIj09PWMuZGF0YSgic2xpZGVpbmRleCIpPzA6NjAsaj1jLmRhdGEoImxpbmt0b3NsaWRlIiksaz1qO2ohPXVuZGVmaW5lZCYmIm5leHQiIT1qJiYicHJldiIhPWomJmIuYWxsbGkuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKTthLmRhdGEoIm9yaWdpbmRleCIpKzE9PWsmJihqPWEuZGF0YSgiaW5kZXgiKSl9KSwic2xpZGUiIT1nJiYoaj0ibm8iKTt2YXIgbD0nPGRpdiBjbGFzcz0idHAtY2FwdGlvbiBzbGlkZWxpbmsiIHN0eWxlPSJjdXJzb3I6cG9pbnRlcjt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3otaW5kZXg6JytpKyc7IiBkYXRhLXg9ImNlbnRlciIgZGF0YS15PSJjZW50ZXIiIGRhdGEtYmFzZWFsaWduPSJzbGlkZSIgJyxtPSJzY3JvbGxfdW5kZXIiPT09aj8nW3siZXZlbnQiOiJjbGljayIsImFjdGlvbiI6InNjcm9sbGJlbG93Iiwib2Zmc2V0IjoiMTAwcHgiLCJkZWxheSI6IjAifV0nOiJwcmV2Ij09PWo/J1t7ImV2ZW50IjoiY2xpY2siLCJhY3Rpb24iOiJqdW1wdG9zbGlkZSIsInNsaWRlIjoicHJldiIsImRlbGF5IjoiMC4yIn1dJzoibmV4dCI9PT1qPydbeyJldmVudCI6ImNsaWNrIiwiYWN0aW9uIjoianVtcHRvc2xpZGUiLCJzbGlkZSI6Im5leHQiLCJkZWxheSI6IjAuMiJ9XSc6J1t7ImV2ZW50IjoiY2xpY2siLCJhY3Rpb24iOiJqdW1wdG9zbGlkZSIsInNsaWRlIjoiJytqKyciLCJkZWxheSI6IjAuMiJ9XScsbj0nIGRhdGEtZnJhbWVzPVwnW3siZGVsYXkiOjAsInNwZWVkIjoxMDAsImZyYW1lIjoiMCIsImZyb20iOiJvcGFjaXR5OjA7IiwidG8iOiJvOjE7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifSx7ImRlbGF5Ijoid2FpdCIsInNwZWVkIjozMDAsImZyYW1lIjoiOTk5IiwidG8iOiJvcGFjaXR5OjA7IiwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifV1cJyc7bD0ibm8iPT1qP2wrbisiID4iOmwrImRhdGEtYWN0aW9ucz0nIittKyInIituKyIgPiIsbCs9JzxhIHN0eWxlPSJ3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2Rpc3BsYXk6YmxvY2siJyxsPSJzbGlkZSIhPWc/bCsnIHRhcmdldD0iJytoKyciIGhyZWY9IicrZysnIic6bCxsKz0nPjxzcGFuIHN0eWxlPSJ3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2Rpc3BsYXk6YmxvY2siPjwvc3Bhbj48L2E+PC9kaXY+JyxjLmFwcGVuZChsKX19KSxiLnJsZT1iLnJlc3BvbnNpdmVMZXZlbHMubGVuZ3RofHwxLGIuZ3JpZHdpZHRoPWNBcnJheShiLmdyaWR3aWR0aCxiLnJsZSksYi5ncmlkaGVpZ2h0PWNBcnJheShiLmdyaWRoZWlnaHQsYi5ybGUpLCJvbiI9PWIuc2ltcGxpZnlBbGwmJihfUi5pc0lFKDgpfHxfUi5pT1NWZXJzaW9uKCkpJiYoYS5maW5kKCIudHAtY2FwdGlvbiIpLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyk7YS5yZW1vdmVDbGFzcygiY3VzdG9taW4gY3VzdG9tb3V0IikuYWRkQ2xhc3MoImZhZGVpbiBmYWRlb3V0IiksYS5kYXRhKCJzcGxpdGluIiwiIiksYS5kYXRhKCJzcGVlZCIsNDAwKX0pLGIuYWxsbGkuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKTthLmRhdGEoInRyYW5zaXRpb24iLCJmYWRlIiksYS5kYXRhKCJtYXN0ZXJzcGVlZCIsNTAwKSxhLmRhdGEoInNsb3RhbW91bnQiLDEpO3ZhciBiPWEuZmluZCgiLnJldi1zbGlkZWJnIil8fGEuZmluZCgiPmltZyIpLmZpcnN0KCk7Yi5kYXRhKCJrZW5idXJucyIsIm9mZiIpfSkpLGIuZGVza3RvcD0hbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvKGlQaG9uZXxpUG9kfGlQYWR8QW5kcm9pZHxCbGFja0JlcnJ5fEJCMTB8bW9iaXx0YWJsZXR8b3BlcmEgbWluaXxuZXh1cyA3KS9pKSxiLmF1dG9IZWlnaHQ9ImZ1bGxzY3JlZW4iPT1iLnNsaWRlckxheW91dD8ib24iOmIuYXV0b0hlaWdodCwiZnVsbHdpZHRoIj09Yi5zbGlkZXJMYXlvdXQmJiJvZmYiPT1iLmF1dG9IZWlnaHQmJmEuY3NzKHttYXhIZWlnaHQ6Yi5ncmlkaGVpZ2h0W2IuY3VyV2luUmFuZ2VdKyJweCJ9KSwiYXV0byIhPWIuc2xpZGVyTGF5b3V0JiYwPT1hLmNsb3Nlc3QoIi5mb3JjZWZ1bGx3aWR0aF93cmFwcGVyX3RwX2Jhbm5lciIpLmxlbmd0aCYmKCJmdWxsc2NyZWVuIiE9PWIuc2xpZGVyTGF5b3V0fHwib24iIT1iLmZ1bGxTY3JlZW5BdXRvV2lkdGgpKXt2YXIgaD1hLnBhcmVudCgpLGk9aC5jc3MoIm1hcmdpbkJvdHRvbSIpLGo9aC5jc3MoIm1hcmdpblRvcCIpLGs9YS5hdHRyKCJpZCIpKyJfZm9yY2VmdWxsd2lkdGgiO2k9aT09PXVuZGVmaW5lZD8wOmksaj1qPT09dW5kZWZpbmVkPzA6aixoLndyYXAoJzxkaXYgY2xhc3M9ImZvcmNlZnVsbHdpZHRoX3dyYXBwZXJfdHBfYmFubmVyIiBpZD0iJytrKyciIHN0eWxlPSJwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO2hlaWdodDphdXRvO21hcmdpbi10b3A6JytqKyI7bWFyZ2luLWJvdHRvbToiK2krJyI+PC9kaXY+JyksYS5jbG9zZXN0KCIuZm9yY2VmdWxsd2lkdGhfd3JhcHBlcl90cF9iYW5uZXIiKS5hcHBlbmQoJzxkaXYgY2xhc3M9InRwLWZ1bGx3aWR0aC1mb3JjZXIiIHN0eWxlPSJ3aWR0aDoxMDAlO2hlaWdodDonK2EuaGVpZ2h0KCkrJ3B4Ij48L2Rpdj4nKSxhLnBhcmVudCgpLmNzcyh7bWFyZ2luVG9wOiIwcHgiLG1hcmdpbkJvdHRvbToiMHB4In0pLGEucGFyZW50KCkuY3NzKHtwb3NpdGlvbjoiYWJzb2x1dGUifSl9aWYoYi5zaGFkb3chPT11bmRlZmluZWQmJmIuc2hhZG93PjAmJihhLnBhcmVudCgpLmFkZENsYXNzKCJ0cC1zaGFkb3ciK2Iuc2hhZG93KSxhLnBhcmVudCgpLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtc2hhZG93Y292ZXIiPjwvZGl2PicpLGEucGFyZW50KCkuZmluZCgiLnRwLXNoYWRvd2NvdmVyIikuY3NzKHtiYWNrZ3JvdW5kQ29sb3I6YS5wYXJlbnQoKS5jc3MoImJhY2tncm91bmRDb2xvciIpLGJhY2tncm91bmRJbWFnZTphLnBhcmVudCgpLmNzcygiYmFja2dyb3VuZEltYWdlIil9KSksc2V0Q3VyV2luUmFuZ2UoYiksc2V0Q3VyV2luUmFuZ2UoYiwhMCksIWEuaGFzQ2xhc3MoInJldnNsaWRlci1pbml0aWFsaXNlZCIpKXthLmFkZENsYXNzKCJyZXZzbGlkZXItaW5pdGlhbGlzZWQiKSxhLmFkZENsYXNzKCJ0cC1zaW1wbGVyZXNwb25zaXZlIiksYS5hdHRyKCJpZCIpPT11bmRlZmluZWQmJmEuYXR0cigiaWQiLCJyZXZzbGlkZXItIitNYXRoLnJvdW5kKDFlMypNYXRoLnJhbmRvbSgpKzUpKSxjaGVja0lEUyhiLGEpLGIuZmlyZWZveDEzPSExLGIuaWU9IWpRdWVyeS5zdXBwb3J0Lm9wYWNpdHksYi5pZTk9OT09ZG9jdW1lbnQuZG9jdW1lbnRNb2RlLGIub3JpZ2NkPWIuZGVsYXk7dmFyIGw9alF1ZXJ5LmZuLmpxdWVyeS5zcGxpdCgiLiIpLG09cGFyc2VGbG9hdChsWzBdKSxuPXBhcnNlRmxvYXQobFsxXSk7cGFyc2VGbG9hdChsWzJdfHwiMCIpOzE9PW0mJm48NyYmYS5odG1sKCc8ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlcjsgcGFkZGluZzo0MHB4IDBweDsgZm9udC1zaXplOjIwcHg7IGNvbG9yOiM5OTIyMjI7Ij4gVGhlIEN1cnJlbnQgVmVyc2lvbiBvZiBqUXVlcnk6JytsKyIgPGJyPlBsZWFzZSB1cGRhdGUgeW91ciBqUXVlcnkgVmVyc2lvbiB0byBtaW4uIDEuNyBpbiBDYXNlIHlvdSB3aXNoIHRvIHVzZSB0aGUgUmV2b2x1dGlvbiBTbGlkZXIgUGx1Z2luPC9kaXY+IiksbT4xJiYoYi5pZT0hMSk7dmFyIHA9bmV3IE9iamVjdDtwLmFkZGVkeXQ9MCxwLmFkZGVkdmltPTAscC5hZGRlZHZpZD0wLGIuc2Nyb2xsZWZmZWN0Lm9uJiYoYi5zY3JvbGxlZmZlY3QubGF5ZXJzPW5ldyBBcnJheSksYS5maW5kKCIudHAtY2FwdGlvbiwgLnJzLWJhY2tncm91bmQtdmlkZW8tbGF5ZXIiKS5lYWNoKGZ1bmN0aW9uKGEpe3ZhciBjPWpRdWVyeSh0aGlzKSxkPWMuZGF0YSgpLGU9ZC5hdXRvcGxheW9ubHlmaXJzdHRpbWUsZj1kLmF1dG9wbGF5LGc9Yy5oYXNDbGFzcygidHAtYXVkaW9sYXllciIpLGg9ZC52aWRlb2xvb3AsaT0hMCxqPSExO2Quc3RhcnRjbGFzc2VzPWMuYXR0cigiY2xhc3MiKSxkLmlzcGFyYWxsYXhsYXllcj1kLnN0YXJ0Y2xhc3Nlcy5pbmRleE9mKCJycy1wYXJhbGxheCIpPj0wLGMuaGFzQ2xhc3MoInRwLXN0YXRpYy1sYXllciIpJiZfUi5oYW5kbGVTdGF0aWNMYXllcnMmJihfUi5oYW5kbGVTdGF0aWNMYXllcnMoYyxiKSxiLnNjcm9sbGVmZmVjdC5vbiYmKCJvbiI9PT1iLnNjcm9sbGVmZmVjdC5vbl9wYXJhbGxheF9zdGF0aWNfbGF5ZXJzJiZkLmlzcGFyYWxsYXhsYXllcnx8Im9uIj09PWIuc2Nyb2xsZWZmZWN0Lm9uX3N0YXRpY19sYXllcnMmJiFkLmlzcGFyYWxsYXhsYXllcikmJihqPSEwKSxpPSExKTt2YXIgaz1jLmRhdGEoIm5vcG9zdGVyb25tb2JpbGUiKXx8Yy5kYXRhKCJub1Bvc3Rlck9uTW9iaWxlIil8fGMuZGF0YSgicG9zdGVyb25tb2JpbGUiKXx8Yy5kYXRhKCJwb3N0ZXJPbk1vYmlsZSIpfHxjLmRhdGEoInBvc3Rlck9uTU9iaWxlIik7Yy5kYXRhKCJub3Bvc3Rlcm9ubW9iaWxlIixrKTt2YXIgbD0wO2lmKGMuZmluZCgiaWZyYW1lIikuZWFjaChmdW5jdGlvbigpe3B1bmNoZ3MuVHdlZW5MaXRlLnNldChqUXVlcnkodGhpcykse2F1dG9BbHBoYTowfSksbCsrfSksbD4wJiZjLmRhdGEoImlmcmFtZXMiLCEwKSxjLmhhc0NsYXNzKCJ0cC1jYXB0aW9uIikpe3ZhciBtPWMuaGFzQ2xhc3MoInNsaWRlbGluayIpPyJ3aWR0aDoxMDAlICFpbXBvcnRhbnQ7aGVpZ2h0OjEwMCUgIWltcG9ydGFudDsiOiIiLG49Yy5kYXRhKCksbz1uLnR5cGUscT0icm93Ij09PW98fCJjb2x1bW4iPT09bz8icmVsYXRpdmUiOiJhYnNvbHV0ZSIscj0iIjsicm93Ij09PW8/KGMuYWRkQ2xhc3MoInJldl9yb3ciKS5yZW1vdmVDbGFzcygidHAtcmVzaXplbWUiKSxyPSJyZXZfcm93X3dyYXAiKToiY29sdW1uIj09PW8/KHI9InJldl9jb2x1bW4iLGMuYWRkQ2xhc3MoInJldl9jb2x1bW5faW5uZXIiKS5yZW1vdmVDbGFzcygidHAtcmVzaXplbWUiKSxjLmRhdGEoIndpZHRoIiwiYXV0byIpLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChjLHt3aWR0aDoiYXV0byJ9KSk6Imdyb3VwIj09PW8mJmMucmVtb3ZlQ2xhc3MoInRwLXJlc2l6ZW1lIik7dmFyIHM9IiIsdD0iIjsicm93IiE9PW8mJiJncm91cCIhPT1vJiYiY29sdW1uIiE9PW8/KHM9ImRpc3BsYXk6IitjLmNzcygiZGlzcGxheSIpKyI7IixjLmNsb3Nlc3QoIi5yZXZfY29sdW1uIikubGVuZ3RoPjA/KGMuYWRkQ2xhc3MoInJldl9sYXllcl9pbl9jb2x1bW4iKSxpPSExKTpjLmNsb3Nlc3QoIi5yZXZfZ3JvdXAiKS5sZW5ndGg+MCYmKGMuYWRkQ2xhc3MoInJldl9sYXllcl9pbl9ncm91cCIpLGk9ITEpKToiY29sdW1uIj09PW8mJihpPSExKSxuLndyYXBwZXJfY2xhc3MhPT11bmRlZmluZWQmJihyPXIrIiAiK24ud3JhcHBlcl9jbGFzcyksbi53cmFwcGVyX2lkIT09dW5kZWZpbmVkJiYodD0naWQ9Iicrbi53cmFwcGVyX2lkKyciJyksYy53cmFwKCI8ZGl2ICIrdCsnIGNsYXNzPSJ0cC1wYXJhbGxheC13cmFwICcrcisnIiBzdHlsZT0iJyttKyJwb3NpdGlvbjoiK3ErIjsiK3MrJzt2aXNpYmlsaXR5OmhpZGRlbiI+PGRpdiBjbGFzcz0idHAtbG9vcC13cmFwIiBzdHlsZT0iJyttKyJwb3NpdGlvbjoiK3ErIjsiK3MrJzsiPjxkaXYgY2xhc3M9InRwLW1hc2std3JhcCIgc3R5bGU9IicrbSsicG9zaXRpb246IitxKyI7IitzKyc7IiA+PC9kaXY+PC9kaXY+PC9kaXY+JyksDQppJiZiLnNjcm9sbGVmZmVjdC5vbiYmKCJvbiI9PT1iLnNjcm9sbGVmZmVjdC5vbl9wYXJhbGxheF9sYXllcnMmJmQuaXNwYXJhbGxheGxheWVyfHwib24iPT09Yi5zY3JvbGxlZmZlY3Qub25fbGF5ZXJzJiYhZC5pc3BhcmFsbGF4bGF5ZXIpJiZiLnNjcm9sbGVmZmVjdC5sYXllcnMucHVzaChjLnBhcmVudCgpKSxqJiZiLnNjcm9sbGVmZmVjdC5sYXllcnMucHVzaChjLnBhcmVudCgpKSwiY29sdW1uIj09PW8mJihjLmFwcGVuZCgnPGRpdiBjbGFzcz0icmV2X2NvbHVtbl9iZyByZXZfY29sdW1uX2JnX21hbl9zaXplZCIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+PC9kaXY+JyksYy5jbG9zZXN0KCIudHAtcGFyYWxsYXgtd3JhcCIpLmFwcGVuZCgnPGRpdiBjbGFzcz0icmV2X2NvbHVtbl9iZyByZXZfY29sdW1uX2JnX2F1dG9fc2l6ZWQiPjwvZGl2PicpKTt2YXIgdT1bInBlbmR1bHVtIiwicm90YXRlIiwic2xpZGVsb29wIiwicHVsc2UiLCJ3YXZlIl0sdj1jLmNsb3Nlc3QoIi50cC1sb29wLXdyYXAiKTtqUXVlcnkuZWFjaCh1LGZ1bmN0aW9uKGEsYil7dmFyIGQ9Yy5maW5kKCIucnMtIitiKSxlPWQuZGF0YSgpfHwiIjsiIiE9ZSYmKHYuZGF0YShlKSx2LmFkZENsYXNzKCJycy0iK2IpLGQuY2hpbGRyZW4oMCkudW53cmFwKCksYy5kYXRhKCJsb29wYW5pbWF0aW9uIiwib24iKSl9KSxjLmF0dHIoImlkIik9PT11bmRlZmluZWQmJmMuYXR0cigiaWQiLCJsYXllci0iK01hdGgucm91bmQoOTk5OTk5OTk5Kk1hdGgucmFuZG9tKCkpKSxjaGVja0lEUyhiLGMpLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChjLHt2aXNpYmlsaXR5OiJoaWRkZW4ifSl9dmFyIHc9Yy5kYXRhKCJhY3Rpb25zIik7dyE9PXVuZGVmaW5lZCYmX1IuY2hlY2tBY3Rpb25zKGMsYix3KSxjaGVja0hvdmVyRGVwZW5kZW5jaWVzKGMsYiksX1IuY2hlY2tWaWRlb0FwaXMmJihwPV9SLmNoZWNrVmlkZW9BcGlzKGMsYixwKSksX0lTTSYmKDEhPWUmJiJ0cnVlIiE9ZXx8KGQuYXV0b3BsYXlvbmx5Zmlyc3R0aW1lPSExLGU9ITEpLDEhPWYmJiJ0cnVlIiE9ZiYmIm9uIiE9ZiYmIjFzdHRpbWUiIT1mfHwoZC5hdXRvcGxheT0ib2ZmIixmPSJvZmYiKSksZ3x8MSE9ZSYmInRydWUiIT1lJiYiMXN0dGltZSIhPWZ8fCJsb29wYW5kbm9zbGlkZXN0b3AiPT1ofHxjLmNsb3Nlc3QoImxpLnRwLXJldnNsaWRlci1zbGlkZXNsaSIpLmFkZENsYXNzKCJycy1wYXVzZS10aW1lci1vbmNlIiksZ3x8MSE9ZiYmInRydWUiIT1mJiYib24iIT1mJiYibm8xc3R0aW1lIiE9Znx8Imxvb3BhbmRub3NsaWRlc3RvcCI9PWh8fGMuY2xvc2VzdCgibGkudHAtcmV2c2xpZGVyLXNsaWRlc2xpIikuYWRkQ2xhc3MoInJzLXBhdXNlLXRpbWVyLWFsd2F5cyIpfSksYVswXS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWVudGVyIixmdW5jdGlvbigpe2EudHJpZ2dlcigidHAtbW91c2VlbnRlciIpLGIub3ZlcmNvbnRhaW5lcj0hMH0se3Bhc3NpdmU6ITB9KSxhWzBdLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlb3ZlciIsZnVuY3Rpb24oKXthLnRyaWdnZXIoInRwLW1vdXNlb3ZlciIpLGIub3ZlcmNvbnRhaW5lcj0hMH0se3Bhc3NpdmU6ITB9KSxhWzBdLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGZ1bmN0aW9uKCl7YS50cmlnZ2VyKCJ0cC1tb3VzZWxlZnQiKSxiLm92ZXJjb250YWluZXI9ITF9LHtwYXNzaXZlOiEwfSksYS5maW5kKCIudHAtY2FwdGlvbiB2aWRlbyIpLmVhY2goZnVuY3Rpb24oYSl7dmFyIGI9alF1ZXJ5KHRoaXMpO2IucmVtb3ZlQ2xhc3MoInZpZGVvLWpzIHZqcy1kZWZhdWx0LXNraW4iKSxiLmF0dHIoInByZWxvYWQiLCIiKSxiLmNzcyh7ZGlzcGxheToibm9uZSJ9KX0pLCJzdGFuZGFyZCIhPT1iLnNsaWRlclR5cGUmJihiLmxhenlUeXBlPSJhbGwiKSxsb2FkSW1hZ2VzKGEuZmluZCgiLnRwLXN0YXRpYy1sYXllcnMiKSxiLDAsITApLHdhaXRGb3JDdXJyZW50SW1hZ2VzKGEuZmluZCgiLnRwLXN0YXRpYy1sYXllcnMiKSxiLGZ1bmN0aW9uKCl7YS5maW5kKCIudHAtc3RhdGljLWxheWVycyBpbWciKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGE9alF1ZXJ5KHRoaXMpLGM9YS5kYXRhKCJsYXp5bG9hZCIpIT11bmRlZmluZWQ/YS5kYXRhKCJsYXp5bG9hZCIpOmEuYXR0cigic3JjIiksZD1nZXRMb2FkT2JqKGIsYyk7YS5hdHRyKCJzcmMiLGQuc3JjKX0pfSksYi5yb3d6b25lcz1bXSxiLmFsbGxpLmVhY2goZnVuY3Rpb24oYSl7dmFyIGM9alF1ZXJ5KHRoaXMpO2Iucm93em9uZXNbYV09W10sYy5maW5kKCIucmV2X3Jvd196b25lIikuZWFjaChmdW5jdGlvbigpe2Iucm93em9uZXNbYV0ucHVzaChqUXVlcnkodGhpcykpfSksImFsbCIhPWIubGF6eVR5cGUmJigic21hcnQiIT1iLmxhenlUeXBlfHwwIT1hJiYxIT1hJiZhIT1iLnNsaWRlYW1vdW50JiZhIT1iLnNsaWRlYW1vdW50LTEpfHwobG9hZEltYWdlcyhjLGIsYSksd2FpdEZvckN1cnJlbnRJbWFnZXMoYyxiLGZ1bmN0aW9uKCl7fSkpfSk7dmFyIHE9Z2V0VXJsVmFycygiIyIpWzBdO2lmKHEubGVuZ3RoPDkmJnEuc3BsaXQoInNsaWRlIikubGVuZ3RoPjEpe3ZhciByPXBhcnNlSW50KHEuc3BsaXQoInNsaWRlIilbMV0sMCk7cjwxJiYocj0xKSxyPmIuc2xpZGVhbW91bnQmJihyPWIuc2xpZGVhbW91bnQpLGIuc3RhcnRXaXRoU2xpZGU9ci0xfWEuYXBwZW5kKCc8ZGl2IGNsYXNzPSJ0cC1sb2FkZXIgJytiLnNwaW5uZXIrJyI+PGRpdiBjbGFzcz0iZG90MSI+PC9kaXY+PGRpdiBjbGFzcz0iZG90MiI+PC9kaXY+PGRpdiBjbGFzcz0iYm91bmNlMSI+PC9kaXY+PGRpdiBjbGFzcz0iYm91bmNlMiI+PC9kaXY+PGRpdiBjbGFzcz0iYm91bmNlMyI+PC9kaXY+PC9kaXY+JyksYi5sb2FkZXI9YS5maW5kKCIudHAtbG9hZGVyIiksMD09PWEuZmluZCgiLnRwLWJhbm5lcnRpbWVyIikubGVuZ3RoJiZhLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtYmFubmVydGltZXIiIHN0eWxlPSJ2aXNpYmlsaXR5OmhpZGRlbiI+PC9kaXY+JyksYS5maW5kKCIudHAtYmFubmVydGltZXIiKS5jc3Moe3dpZHRoOiIwJSJ9KSxiLnVsLmNzcyh7ZGlzcGxheToiYmxvY2sifSkscHJlcGFyZVNsaWRlcyhhLGIpLCgib2ZmIiE9PWIucGFyYWxsYXgudHlwZXx8Yi5zY3JvbGxlZmZlY3Qub24pJiZfUi5jaGVja0ZvclBhcmFsbGF4JiZfUi5jaGVja0ZvclBhcmFsbGF4KGEsYiksX1Iuc2V0U2l6ZShiKSwiaGVybyIhPT1iLnNsaWRlclR5cGUmJl9SLmNyZWF0ZU5hdmlnYXRpb24mJl9SLmNyZWF0ZU5hdmlnYXRpb24oYSxiKSxfUi5yZXNpemVUaHVtYnNUYWJzJiZfUi5yZXNpemVUaHVtYnNUYWJzJiZfUi5yZXNpemVUaHVtYnNUYWJzKGIpLGNvbnRXaWR0aE1hbmFnZXIoYik7dmFyIHM9Yi52aWV3UG9ydDtiLmludmlld3BvcnQ9ITEscyE9dW5kZWZpbmVkJiZzLmVuYWJsZSYmKGpRdWVyeS5pc051bWVyaWMocy52aXNpYmxlX2FyZWEpfHxzLnZpc2libGVfYXJlYS5pbmRleE9mKCIlIikhPT0tMSYmKHMudmlzaWJsZV9hcmVhPXBhcnNlSW50KHMudmlzaWJsZV9hcmVhKS8xMDApLF9SLnNjcm9sbFRpY2tlciYmX1Iuc2Nyb2xsVGlja2VyKGIsYSkpLCJjYXJvdXNlbCI9PT1iLnNsaWRlclR5cGUmJl9SLnByZXBhcmVDYXJvdXNlbCYmKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChiLnVsLHtvcGFjaXR5OjB9KSxfUi5wcmVwYXJlQ2Fyb3VzZWwoYixuZXcgcHVuY2hncy5UaW1lbGluZUxpdGUsdW5kZWZpbmVkLDApLGIub25seVByZXBhcmVkU2xpZGU9ITApLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtpZighcy5lbmFibGV8fHMuZW5hYmxlJiZiLmludmlld3BvcnR8fHMuZW5hYmxlJiYhYi5pbnZpZXdwb3J0JiYid2FpdCI9PSFzLm91dG9mKXN3YXBTbGlkZShhKTtlbHNlIGlmKGIuYy5hZGRDbGFzcygidHAtd2FpdGZvcmZpcnN0c3RhcnQiKSxiLndhaXRGb3JGaXJzdFNsaWRlPSEwLHMucHJlc2l6ZSl7dmFyIGM9alF1ZXJ5KGIubGlbMF0pO2xvYWRJbWFnZXMoYyxiLDAsITApLHdhaXRGb3JDdXJyZW50SW1hZ2VzKGMuZmluZCgiLnRwLWxheWVycyIpLGIsZnVuY3Rpb24oKXtfUi5hbmltYXRlVGhlQ2FwdGlvbnMoe3NsaWRlOmMsb3B0OmIscHJlc2V0OiEwfSl9KX1fUi5tYW5hZ2VOYXZpZ2F0aW9uJiZfUi5tYW5hZ2VOYXZpZ2F0aW9uKGIpLGIuc2xpZGVhbW91bnQ+MSYmKCFzLmVuYWJsZXx8cy5lbmFibGUmJmIuaW52aWV3cG9ydD9jb3VudERvd24oYSxiKTpiLndhaXRGb3JDb3VudERvd249ITApLHNldFRpbWVvdXQoZnVuY3Rpb24oKXthLnRyaWdnZXIoInJldm9sdXRpb24uc2xpZGUub25sb2FkZWQiKX0sMTAwKX0sYi5zdGFydERlbGF5KSxiLnN0YXJ0RGVsYXk9MCxqUXVlcnkoImJvZHkiKS5kYXRhKCJycy1mdWxsU2NyZWVuTW9kZSIsITEpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJmdWxsc2NyZWVuY2hhbmdlIixvbkZ1bGxTY3JlZW5DaGFuZ2Use3Bhc3NpdmU6ITB9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibW96ZnVsbHNjcmVlbmNoYW5nZSIsb25GdWxsU2NyZWVuQ2hhbmdlLHtwYXNzaXZlOiEwfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIndlYmtpdGZ1bGxzY3JlZW5jaGFuZ2UiLG9uRnVsbFNjcmVlbkNoYW5nZSx7cGFzc2l2ZTohMH0pO3ZhciB0PSJyZXNpemUucmV2c2xpZGVyLSIrYS5hdHRyKCJpZCIpO2pRdWVyeSh3aW5kb3cpLm9uKHQsZnVuY3Rpb24oKXtpZihhPT11bmRlZmluZWQpcmV0dXJuITE7MCE9alF1ZXJ5KCJib2R5IikuZmluZChhKSYmY29udFdpZHRoTWFuYWdlcihiKTt2YXIgYz0hMTtpZigiZnVsbHNjcmVlbiI9PWIuc2xpZGVyTGF5b3V0KXt2YXIgZD1qUXVlcnkod2luZG93KS5oZWlnaHQoKTsibW9iaWxlIj09Yi5mYWxsYmFja3MuaWdub3JlSGVpZ2h0Q2hhbmdlcyYmX0lTTXx8ImFsd2F5cyI9PWIuZmFsbGJhY2tzLmlnbm9yZUhlaWdodENoYW5nZXM/KGIuZmFsbGJhY2tzLmlnbm9yZUhlaWdodENoYW5nZXNTaXplPWIuZmFsbGJhY2tzLmlnbm9yZUhlaWdodENoYW5nZXNTaXplPT11bmRlZmluZWQ/MDpiLmZhbGxiYWNrcy5pZ25vcmVIZWlnaHRDaGFuZ2VzU2l6ZSxjPWQhPWIubGFzdHdpbmRvd2hlaWdodCYmTWF0aC5hYnMoZC1iLmxhc3R3aW5kb3doZWlnaHQpPmIuZmFsbGJhY2tzLmlnbm9yZUhlaWdodENoYW5nZXNTaXplKTpjPWQhPWIubGFzdHdpbmRvd2hlaWdodH0oYS5vdXRlcldpZHRoKCEwKSE9Yi53aWR0aHx8YS5pcygiOmhpZGRlbiIpfHxjKSYmKGIubGFzdHdpbmRvd2hlaWdodD1qUXVlcnkod2luZG93KS5oZWlnaHQoKSxjb250YWluZXJSZXNpemVkKGEsYikpfSksaGlkZVNsaWRlclVuZGVyKGEsYiksY29udFdpZHRoTWFuYWdlcihiKSxiLmZhbGxiYWNrcy5kaXNhYmxlRm9jdXNMaXN0ZW5lcnx8InRydWUiPT1iLmZhbGxiYWNrcy5kaXNhYmxlRm9jdXNMaXN0ZW5lcnx8Yi5mYWxsYmFja3MuZGlzYWJsZUZvY3VzTGlzdGVuZXI9PT0hMHx8dGFiQmx1cnJpbmdDaGVjayhhLGIpfX0sY0FycmF5PWZ1bmN0aW9uKGEsYil7aWYoIWpRdWVyeS5pc0FycmF5KGEpKXt2YXIgYz1hO2E9bmV3IEFycmF5LGEucHVzaChjKX1pZihhLmxlbmd0aDxiKWZvcih2YXIgYz1hW2EubGVuZ3RoLTFdLGQ9MDtkPGItYS5sZW5ndGgrMjtkKyspYS5wdXNoKGMpO3JldHVybiBhfSxjaGVja0hvdmVyRGVwZW5kZW5jaWVzPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5kYXRhKCksZD0ic2xpZGVyZW50ZXIiPT09Yy5zdGFydHx8Yy5mcmFtZXMhPT11bmRlZmluZWQmJmMuZnJhbWVzWzBdIT11bmRlZmluZWQmJiJzbGlkZXJlbnRlciI9PT1jLmZyYW1lc1swXS5kZWxheTtkJiYoYi5sYXllcnNvbmhvdmVyPT09dW5kZWZpbmVkJiYoYi5jLm9uKCJ0cC1tb3VzZWVudGVyIixmdW5jdGlvbigpe2IubGF5ZXJzb25ob3ZlciYmalF1ZXJ5LmVhY2goYi5sYXllcnNvbmhvdmVyLGZ1bmN0aW9uKGEsYyl7dmFyIGQ9Yy5kYXRhKCJjbG9zZXN0bGkiKXx8Yy5jbG9zZXN0KCIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIiksZT1jLmRhdGEoInN0YXRpY2xpIil8fGMuY2xvc2VzdCgiLnRwLXN0YXRpYy1sYXllcnMiKTtjLmRhdGEoImNsb3Nlc3RsaSIpPT09dW5kZWZpbmVkJiYoYy5kYXRhKCJjbG9zZXN0bGkiLGQpLGMuZGF0YSgic3RhdGljbGkiLGUpKSwoZC5sZW5ndGg+MCYmZC5oYXNDbGFzcygiYWN0aXZlLXJldnNsaWRlIil8fGQuaGFzQ2xhc3MoInByb2Nlc3NpbmctcmV2c2xpZGUiKXx8ZS5sZW5ndGg+MCkmJihjLmRhdGEoImFuaW1kaXJlY3Rpb24iLCJpbiIpLF9SLnBsYXlBbmltYXRpb25GcmFtZSYmX1IucGxheUFuaW1hdGlvbkZyYW1lKHtjYXB0aW9uOmMsb3B0OmIsZnJhbWU6ImZyYW1lXzAiLHRyaWdnZXJkaXJlY3Rpb246ImluIix0cmlnZ2VyZnJhbWVpbjoiZnJhbWVfMCIsdHJpZ2dlcmZyYW1lb3V0OiJmcmFtZV85OTkifSksYy5kYXRhKCJ0cmlnZ2Vyc3RhdGUiLCJvbiIpKX0pfSksYi5jLm9uKCJ0cC1tb3VzZWxlZnQiLGZ1bmN0aW9uKCl7Yi5sYXllcnNvbmhvdmVyJiZqUXVlcnkuZWFjaChiLmxheWVyc29uaG92ZXIsZnVuY3Rpb24oYSxjKXtjLmRhdGEoImFuaW1kaXJlY3Rpb24iLCJvdXQiKSxjLmRhdGEoInRyaWdnZXJlZCIsITApLGMuZGF0YSgidHJpZ2dlcnN0YXRlIiwib2ZmIiksX1Iuc3RvcFZpZGVvJiZfUi5zdG9wVmlkZW8oYyxiKSxfUi5wbGF5QW5pbWF0aW9uRnJhbWUmJl9SLnBsYXlBbmltYXRpb25GcmFtZSh7Y2FwdGlvbjpjLG9wdDpiLGZyYW1lOiJmcmFtZV85OTkiLHRyaWdnZXJkaXJlY3Rpb246Im91dCIsdHJpZ2dlcmZyYW1laW46ImZyYW1lXzAiLHRyaWdnZXJmcmFtZW91dDoiZnJhbWVfOTk5In0pfSl9KSxiLmxheWVyc29uaG92ZXI9bmV3IEFycmF5KSxiLmxheWVyc29uaG92ZXIucHVzaChhKSl9LGNvbnRXaWR0aE1hbmFnZXI9ZnVuY3Rpb24oYSl7dmFyIGI9X1IuZ2V0SG9yaXpvbnRhbE9mZnNldChhLmMsImxlZnQiKTtpZigiYXV0byI9PWEuc2xpZGVyTGF5b3V0fHwiZnVsbHNjcmVlbiI9PT1hLnNsaWRlckxheW91dCYmIm9uIj09YS5mdWxsU2NyZWVuQXV0b1dpZHRoKSJmdWxsc2NyZWVuIj09YS5zbGlkZXJMYXlvdXQmJiJvbiI9PWEuZnVsbFNjcmVlbkF1dG9XaWR0aD9wdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYS51bCx7bGVmdDowLHdpZHRoOmEuYy53aWR0aCgpfSk6cHVuY2hncy5Ud2VlbkxpdGUuc2V0KGEudWwse2xlZnQ6Yix3aWR0aDphLmMud2lkdGgoKS1fUi5nZXRIb3Jpem9udGFsT2Zmc2V0KGEuYywiYm90aCIpfSk7ZWxzZXt2YXIgYz1NYXRoLmNlaWwoYS5jLmNsb3Nlc3QoIi5mb3JjZWZ1bGx3aWR0aF93cmFwcGVyX3RwX2Jhbm5lciIpLm9mZnNldCgpLmxlZnQtYik7cHVuY2hncy5Ud2VlbkxpdGUuc2V0KGEuYy5wYXJlbnQoKSx7bGVmdDowLWMrInB4Iix3aWR0aDpqUXVlcnkod2luZG93KS53aWR0aCgpLV9SLmdldEhvcml6b250YWxPZmZzZXQoYS5jLCJib3RoIil9KX1hLnNsYXllcnMmJiJmdWxsd2lkdGgiIT1hLnNsaWRlckxheW91dCYmImZ1bGxzY3JlZW4iIT1hLnNsaWRlckxheW91dCYmcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGEuc2xheWVycyx7bGVmdDpifSl9LGN2PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PT11bmRlZmluZWQ/YjphfSxoaWRlU2xpZGVyVW5kZXI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEucGFyZW50KCk7alF1ZXJ5KHdpbmRvdykud2lkdGgoKTxiLmhpZGVTbGlkZXJBdExpbWl0PyhhLnRyaWdnZXIoInN0b3B0aW1lciIpLCJub25lIiE9ZC5jc3MoImRpc3BsYXkiKSYmZC5kYXRhKCJvbGRkaXNwbGF5IixkLmNzcygiZGlzcGxheSIpKSxkLmNzcyh7ZGlzcGxheToibm9uZSJ9KSk6YS5pcygiOmhpZGRlbiIpJiZjJiYoZC5kYXRhKCJvbGRkaXNwbGF5IikhPXVuZGVmaW5lZCYmInVuZGVmaW5lZCIhPWQuZGF0YSgib2xkZGlzcGxheSIpJiYibm9uZSIhPWQuZGF0YSgib2xkZGlzcGxheSIpP2QuY3NzKHtkaXNwbGF5OmQuZGF0YSgib2xkZGlzcGxheSIpfSk6ZC5jc3Moe2Rpc3BsYXk6ImJsb2NrIn0pLGEudHJpZ2dlcigicmVzdGFydHRpbWVyIiksc2V0VGltZW91dChmdW5jdGlvbigpe2NvbnRhaW5lclJlc2l6ZWQoYSxiKX0sMTUwKSksX1IuaGlkZVVuSGlkZU5hdiYmX1IuaGlkZVVuSGlkZU5hdihiKX0sY29udGFpbmVyUmVzaXplZD1mdW5jdGlvbihhLGIpe2lmKGEudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5iZWZvcmVyZWRyYXciKSwxPT1iLmluZnVsbHNjcmVlbm1vZGUmJihiLm1pbkhlaWdodD1qUXVlcnkod2luZG93KS5oZWlnaHQoKSksc2V0Q3VyV2luUmFuZ2UoYiksc2V0Q3VyV2luUmFuZ2UoYiwhMCksIV9SLnJlc2l6ZVRodW1ic1RhYnN8fF9SLnJlc2l6ZVRodW1ic1RhYnMoYik9PT0hMCl7aWYoaGlkZVNsaWRlclVuZGVyKGEsYiwhMCksY29udFdpZHRoTWFuYWdlcihiKSwiY2Fyb3VzZWwiPT1iLnNsaWRlclR5cGUmJl9SLnByZXBhcmVDYXJvdXNlbChiLCEwKSxhPT09dW5kZWZpbmVkKXJldHVybiExO19SLnNldFNpemUoYiksYi5jb253PWIuYy53aWR0aCgpLGIuY29uaD1iLmluZnVsbHNjcmVlbm1vZGU/Yi5taW5IZWlnaHQ6Yi5jLmhlaWdodCgpO3ZhciBjPWEuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSAuc2xvdGhvbGRlciIpLGQ9YS5maW5kKCIucHJvY2Vzc2luZy1yZXZzbGlkZSAuc2xvdGhvbGRlciIpO3JlbW92ZVNsb3RzKGEsYixhLDIpLCJzdGFuZGFyZCI9PT1iLnNsaWRlclR5cGUmJihwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZC5maW5kKCIuZGVmYXVsdGltZyIpLHtvcGFjaXR5OjB9KSxjLmZpbmQoIi5kZWZhdWx0aW1nIikuY3NzKHtvcGFjaXR5OjF9KSksImNhcm91c2VsIj09PWIuc2xpZGVyVHlwZSYmYi5sYXN0Y29udyE9Yi5jb253JiYoY2xlYXJUaW1lb3V0KGIucGNhcnRpbWVyKSxiLnBjYXJ0aW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7X1IucHJlcGFyZUNhcm91c2VsKGIsITApLCJjYXJvdXNlbCI9PWIuc2xpZGVyVHlwZSYmIm9uIj09PWIuY2Fyb3VzZWwuc2hvd0xheWVyc0FsbFRpbWUmJmpRdWVyeS5lYWNoKGIubGksZnVuY3Rpb24oYSl7X1IuYW5pbWF0ZVRoZUNhcHRpb25zKHtzbGlkZTpqUXVlcnkoYi5saVthXSksb3B0OmIscmVjYWxsOiEwfSl9KX0sMTAwKSxiLmxhc3Rjb253PWIuY29udyksX1IubWFuYWdlTmF2aWdhdGlvbiYmX1IubWFuYWdlTmF2aWdhdGlvbihiKSxfUi5hbmltYXRlVGhlQ2FwdGlvbnMmJmEuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLmxlbmd0aD4wJiZfUi5hbmltYXRlVGhlQ2FwdGlvbnMoe3NsaWRlOmEuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLG9wdDpiLHJlY2FsbDohMH0pLCJvbiI9PWQuZGF0YSgia2VuYnVybnMiKSYmX1Iuc3RhcnRLZW5CdXJuKGQsYixkLmRhdGEoImtidGwiKS5wcm9ncmVzcygpKSwib24iPT1jLmRhdGEoImtlbmJ1cm5zIikmJl9SLnN0YXJ0S2VuQnVybihjLGIsYy5kYXRhKCJrYnRsIikucHJvZ3Jlc3MoKSksX1IuYW5pbWF0ZVRoZUNhcHRpb25zJiZhLmZpbmQoIi5wcm9jZXNzaW5nLXJldnNsaWRlIikubGVuZ3RoPjAmJl9SLmFuaW1hdGVUaGVDYXB0aW9ucyh7c2xpZGU6YS5maW5kKCIucHJvY2Vzc2luZy1yZXZzbGlkZSIpLG9wdDpiLHJlY2FsbDohMH0pLF9SLm1hbmFnZU5hdmlnYXRpb24mJl9SLm1hbmFnZU5hdmlnYXRpb24oYil9YS50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLmFmdGVyZHJhdyIpfSxzZXRTY2FsZT1mdW5jdGlvbihhKXthLmJ3PWEud2lkdGgvYS5ncmlkd2lkdGhbYS5jdXJXaW5SYW5nZV0sYS5iaD1hLmhlaWdodC9hLmdyaWRoZWlnaHRbYS5jdXJXaW5SYW5nZV0sYS5iaD5hLmJ3P2EuYmg9YS5idzphLmJ3PWEuYmgsKGEuYmg+MXx8YS5idz4xKSYmKGEuYnc9MSxhLmJoPTEpfSxwcmVwYXJlU2xpZGVzPWZ1bmN0aW9uKGEsYil7aWYoYS5maW5kKCIudHAtY2FwdGlvbiIpLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyk7YS5kYXRhKCJ0cmFuc2l0aW9uIikhPT11bmRlZmluZWQmJmEuYWRkQ2xhc3MoYS5kYXRhKCJ0cmFuc2l0aW9uIikpfSksYi51bC5jc3Moe292ZXJmbG93OiJoaWRkZW4iLHdpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLG1heEhlaWdodDphLnBhcmVudCgpLmNzcygibWF4SGVpZ2h0Iil9KSwib24iPT1iLmF1dG9IZWlnaHQmJihiLnVsLmNzcyh7b3ZlcmZsb3c6ImhpZGRlbiIsd2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsbWF4SGVpZ2h0OiJub25lIn0pLGEuY3NzKHttYXhIZWlnaHQ6Im5vbmUifSksYS5wYXJlbnQoKS5jc3Moe21heEhlaWdodDoibm9uZSJ9KSksYi5hbGxsaS5lYWNoKGZ1bmN0aW9uKGEpe3ZhciBjPWpRdWVyeSh0aGlzKSxkPWMuZGF0YSgib3JpZ2luYWxpbmRleCIpOyhiLnN0YXJ0V2l0aFNsaWRlIT11bmRlZmluZWQmJmQ9PWIuc3RhcnRXaXRoU2xpZGV8fGIuc3RhcnRXaXRoU2xpZGU9PT11bmRlZmluZWQmJjA9PWEpJiZjLmFkZENsYXNzKCJuZXh0LXJldnNsaWRlIiksYy5jc3Moe3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLG92ZXJmbG93OiJoaWRkZW4ifSl9KSwiY2Fyb3VzZWwiPT09Yi5zbGlkZXJUeXBlKXtiLnVsLmNzcyh7b3ZlcmZsb3c6InZpc2libGUifSkud3JhcCgnPGRpdiBjbGFzcz0idHAtY2Fyb3VzZWwtd3JhcHBlciIgc3R5bGU9IndpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjBweDtsZWZ0OjBweDtvdmVyZmxvdzpoaWRkZW47Ij48L2Rpdj4nKTt2YXIgYz0nPGRpdiBzdHlsZT0iY2xlYXI6Ym90aDtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjFweDtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW4tYm90dG9tOi0xcHgiPjwvZGl2Pic7Yi5jLnBhcmVudCgpLnByZXBlbmQoYyksYi5jLnBhcmVudCgpLmFwcGVuZChjKSxfUi5wcmVwYXJlQ2Fyb3VzZWwoYil9YS5wYXJlbnQoKS5jc3Moe292ZXJmbG93OiJ2aXNpYmxlIn0pLGIuYWxsbGkuZmluZCgiPmltZyIpLmVhY2goZnVuY3Rpb24oYSl7dmFyIGM9alF1ZXJ5KHRoaXMpLGQ9Yy5jbG9zZXN0KCJsaSIpLGU9ZC5maW5kKCIucnMtYmFja2dyb3VuZC12aWRlby1sYXllciIpO2UuYWRkQ2xhc3MoImRlZmF1bHR2aWQiKS5jc3Moe3pJbmRleDozMH0pLGMuYWRkQ2xhc3MoImRlZmF1bHRpbWciKSwib24iPT1iLmZhbGxiYWNrcy5wYW5ab29tRGlzYWJsZU9uTW9iaWxlJiZfSVNNJiYoYy5kYXRhKCJrZW5idXJucyIsIm9mZiIpLGMuZGF0YSgiYmdmaXQiLCJjb3ZlciIpKTt2YXIgZj1kLmRhdGEoIm1lZGlhZmlsdGVyIik7Zj0ibm9uZSI9PT1mfHxmPT09dW5kZWZpbmVkPyIiOmYsYy53cmFwKCc8ZGl2IGNsYXNzPSJzbG90aG9sZGVyIiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7IHRvcDowcHg7IGxlZnQ6MHB4OyB6LWluZGV4OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTsiPjwvZGl2PicpLGUuYXBwZW5kVG8oZC5maW5kKCIuc2xvdGhvbGRlciIpKTt2YXIgZz1jLmRhdGEoKTtjLmNsb3Nlc3QoIi5zbG90aG9sZGVyIikuZGF0YShnKSxlLmxlbmd0aD4wJiZnLmJncGFyYWxsYXghPXVuZGVmaW5lZCYmZS5kYXRhKCJiZ3BhcmFsbGF4IixnLmJncGFyYWxsYXgpLCJub25lIiE9Yi5kb3R0ZWRPdmVybGF5JiZiLmRvdHRlZE92ZXJsYXkhPXVuZGVmaW5lZCYmYy5jbG9zZXN0KCIuc2xvdGhvbGRlciIpLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtZG90dGVkb3ZlcmxheSAnK2IuZG90dGVkT3ZlcmxheSsnIj48L2Rpdj4nKTt2YXIgaD1jLmF0dHIoInNyYyIpO2cuc3JjPWgsZy5iZ2ZpdD1nLmJnZml0fHwiY292ZXIiLGcuYmdyZXBlYXQ9Zy5iZ3JlcGVhdHx8Im5vLXJlcGVhdCIsZy5iZ3Bvc2l0aW9uPWcuYmdwb3NpdGlvbnx8ImNlbnRlciBjZW50ZXIiO3ZhciBpPWMuY2xvc2VzdCgiLnNsb3Rob2xkZXIiKTtjLnBhcmVudCgpLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtYmdpbWcgZGVmYXVsdGltZyAnK2YrJyIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6JytjLmNzcygiYmFja2dyb3VuZENvbG9yIikrIjtiYWNrZ3JvdW5kLXJlcGVhdDoiK2cuYmdyZXBlYXQrIjtiYWNrZ3JvdW5kLWltYWdlOnVybCgiK2grIik7YmFja2dyb3VuZC1zaXplOiIrZy5iZ2ZpdCsiO2JhY2tncm91bmQtcG9zaXRpb246IitnLmJncG9zaXRpb24rJzt3aWR0aDoxMDAlO2hlaWdodDoxMDAlOyI+PC9kaXY+JyksYy5kYXRhKCJtZWRpYWZpbHRlciIsZik7dmFyIGo9ZG9jdW1lbnQuY3JlYXRlQ29tbWVudCgiUnVudGltZSBNb2RpZmljYXRpb24gLSBJbWcgdGFnIGlzIFN0aWxsIEF2YWlsYWJsZSBmb3IgU0VPIEdvYWxzIGluIFNvdXJjZSAtICIrYy5nZXQoMCkub3V0ZXJIVE1MKTtjLnJlcGxhY2VXaXRoKGopLGM9aS5maW5kKCIudHAtYmdpbWciKSxjLmRhdGEoZyksYy5hdHRyKCJzcmMiLGgpLCJzdGFuZGFyZCIhPT1iLnNsaWRlclR5cGUmJiJ1bmRlZmluZWQiIT09Yi5zbGlkZXJUeXBlfHxjLmNzcyh7b3BhY2l0eTowfSl9KSxiLnNjcm9sbGVmZmVjdC5vbiYmIm9uIj09PWIuc2Nyb2xsZWZmZWN0Lm9uX3NsaWRlYmcmJihiLmFsbHNsb3Rob2xkZXI9bmV3IEFycmF5LGIuYWxsbGkuZmluZCgiLnNsb3Rob2xkZXIiKS5lYWNoKGZ1bmN0aW9uKCl7alF1ZXJ5KHRoaXMpLndyYXAoJzxkaXYgc3R5bGU9ImRpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7dG9wOjBweDtsZWZ0OjBweDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlIiBjbGFzcz0ic2xvdGhvbGRlcl9mYWRlb3V0d3JhcCI+PC9kaXY+Jyl9KSxiLmFsbHNsb3Rob2xkZXI9Yi5jLmZpbmQoIi5zbG90aG9sZGVyX2ZhZGVvdXR3cmFwIikpfSxyZW1vdmVTbG90cz1mdW5jdGlvbihhLGIsYyxkKXtiLnJlbW92ZVByZXBhcmU9Yi5yZW1vdmVQcmVwYXJlK2QsYy5maW5kKCIuc2xvdCwgLnNsb3QtY2lyY2xlLXdyYXBwZXIiKS5lYWNoKGZ1bmN0aW9uKCl7alF1ZXJ5KHRoaXMpLnJlbW92ZSgpfSksYi50cmFuc2l0aW9uPTAsYi5yZW1vdmVQcmVwYXJlPTB9LGN1dFBhcmFtcz1mdW5jdGlvbihhKXt2YXIgYj1hO3JldHVybiBhIT11bmRlZmluZWQmJmEubGVuZ3RoPjAmJihiPWEuc3BsaXQoIj8iKVswXSksYn0scmVsYXRpdmVSZWRpcj1mdW5jdGlvbihhKXtyZXR1cm4gbG9jYXRpb24ucGF0aG5hbWUucmVwbGFjZSgvKC4qKVwvW15cL10qLywiJDEvIithKX0sYWJzdG9yZWw9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLnNwbGl0KCIvIiksZD1iLnNwbGl0KCIvIik7Yy5wb3AoKTtmb3IodmFyIGU9MDtlPGQubGVuZ3RoO2UrKykiLiIhPWRbZV0mJigiLi4iPT1kW2VdP2MucG9wKCk6Yy5wdXNoKGRbZV0pKTtyZXR1cm4gYy5qb2luKCIvIil9LGltZ0xvYWRlZD1mdW5jdGlvbihhLGIsYyl7Yi5zeW5jbG9hZC0tLGIubG9hZHF1ZXVlJiZqUXVlcnkuZWFjaChiLmxvYWRxdWV1ZSxmdW5jdGlvbihiLGQpe3ZhciBlPWQuc3JjLnJlcGxhY2UoL1wuXC5cL1wuXC5cLy9naSwiIiksZj1zZWxmLmxvY2F0aW9uLmhyZWYsZz1kb2N1bWVudC5sb2NhdGlvbi5vcmlnaW4saD1mLnN1YnN0cmluZygwLGYubGVuZ3RoLTEpKyIvIitlLGk9ZysiLyIrZSxqPWFic3RvcmVsKHNlbGYubG9jYXRpb24uaHJlZixkLnNyYyk7Zj1mLnN1YnN0cmluZygwLGYubGVuZ3RoLTEpK2UsZys9ZSwoY3V0UGFyYW1zKGcpPT09Y3V0UGFyYW1zKGRlY29kZVVSSUNvbXBvbmVudChhLnNyYykpfHxjdXRQYXJhbXMoZik9PT1jdXRQYXJhbXMoZGVjb2RlVVJJQ29tcG9uZW50KGEuc3JjKSl8fGN1dFBhcmFtcyhqKT09PWN1dFBhcmFtcyhkZWNvZGVVUklDb21wb25lbnQoYS5zcmMpKXx8Y3V0UGFyYW1zKGkpPT09Y3V0UGFyYW1zKGRlY29kZVVSSUNvbXBvbmVudChhLnNyYykpfHxjdXRQYXJhbXMoaCk9PT1jdXRQYXJhbXMoZGVjb2RlVVJJQ29tcG9uZW50KGEuc3JjKSl8fGN1dFBhcmFtcyhkLnNyYyk9PT1jdXRQYXJhbXMoZGVjb2RlVVJJQ29tcG9uZW50KGEuc3JjKSl8fGN1dFBhcmFtcyhkLnNyYykucmVwbGFjZSgvXi4qXC9cL1teXC9dKy8sIiIpPT09Y3V0UGFyYW1zKGRlY29kZVVSSUNvbXBvbmVudChhLnNyYykpLnJlcGxhY2UoL14uKlwvXC9bXlwvXSsvLCIiKXx8ImZpbGU6Ly8iPT09d2luZG93LmxvY2F0aW9uLm9yaWdpbiYmY3V0UGFyYW1zKGEuc3JjKS5tYXRjaChuZXcgUmVnRXhwKGUpKSkmJihkLnByb2dyZXNzPWMsZC53aWR0aD1hLndpZHRoLGQuaGVpZ2h0PWEuaGVpZ2h0KX0pLHByb2dyZXNzSW1hZ2VMb2FkKGIpfSxwcm9ncmVzc0ltYWdlTG9hZD1mdW5jdGlvbihhKXszIT1hLnN5bmNsb2FkJiZhLmxvYWRxdWV1ZSYmalF1ZXJ5LmVhY2goYS5sb2FkcXVldWUsZnVuY3Rpb24oYixjKXtpZihjLnByb2dyZXNzLm1hdGNoKC9wcmVwYXJlZC9nKSYmYS5zeW5jbG9hZDw9Myl7aWYoYS5zeW5jbG9hZCsrLCJpbWciPT1jLnR5cGUpe3ZhciBkPW5ldyBJbWFnZTtkLm9ubG9hZD1mdW5jdGlvbigpe2ltZ0xvYWRlZCh0aGlzLGEsImxvYWRlZCIpLGMuZXJyb3I9ITF9LGQub25lcnJvcj1mdW5jdGlvbigpe2ltZ0xvYWRlZCh0aGlzLGEsImZhaWxlZCIpLGMuZXJyb3I9ITB9LGQuc3JjPWMuc3JjfWVsc2UgalF1ZXJ5LmdldChjLnNyYyxmdW5jdGlvbihiKXtjLmlubmVySFRNTD0obmV3IFhNTFNlcmlhbGl6ZXIpLnNlcmlhbGl6ZVRvU3RyaW5nKGIuZG9jdW1lbnRFbGVtZW50KSxjLnByb2dyZXNzPSJsb2FkZWQiLGEuc3luY2xvYWQtLSxwcm9ncmVzc0ltYWdlTG9hZChhKX0pLmZhaWwoZnVuY3Rpb24oKXtjLnByb2dyZXNzPSJmYWlsZWQiLGEuc3luY2xvYWQtLSxwcm9ncmVzc0ltYWdlTG9hZChhKX0pO2MucHJvZ3Jlc3M9ImlubG9hZCJ9fSl9LGFkZFRvTG9hZFF1ZXVlPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9ITE7aWYoYi5sb2FkcXVldWUmJmpRdWVyeS5lYWNoKGIubG9hZHF1ZXVlLGZ1bmN0aW9uKGIsYyl7Yy5zcmM9PT1hJiYoZj0hMCl9KSwhZil7dmFyIGc9bmV3IE9iamVjdDtnLnNyYz1hLGcuc3RhcnR0b2xvYWQ9alF1ZXJ5Lm5vdygpLGcudHlwZT1kfHwiaW1nIixnLnByaW89YyxnLnByb2dyZXNzPSJwcmVwYXJlZCIsZy5zdGF0aWM9ZSxiLmxvYWRxdWV1ZS5wdXNoKGcpfX0sbG9hZEltYWdlcz1mdW5jdGlvbihhLGIsYyxkKXthLmZpbmQoImltZywuZGVmYXVsdGltZywgLnRwLXN2Zy1sYXllciIpLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyksZT1hLmRhdGEoImxhenlsb2FkIikhPT11bmRlZmluZWQmJiJ1bmRlZmluZWQiIT09YS5kYXRhKCJsYXp5bG9hZCIpP2EuZGF0YSgibGF6eWxvYWQiKTphLmRhdGEoInN2Z19zcmMiKSE9dW5kZWZpbmVkP2EuZGF0YSgic3ZnX3NyYyIpOmEuYXR0cigic3JjIiksZj1hLmRhdGEoInN2Z19zcmMiKSE9dW5kZWZpbmVkPyJzdmciOiJpbWciO2EuZGF0YSgic3RhcnQtdG8tbG9hZCIsalF1ZXJ5Lm5vdygpKSxhZGRUb0xvYWRRdWV1ZShlLGIsYyxmLGQpfSkscHJvZ3Jlc3NJbWFnZUxvYWQoYil9LGdldExvYWRPYmo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1uZXcgT2JqZWN0O3JldHVybiBhLmxvYWRxdWV1ZSYmalF1ZXJ5LmVhY2goYS5sb2FkcXVldWUsZnVuY3Rpb24oYSxkKXtkLnNyYz09YiYmKGM9ZCl9KSxjfSx3YWl0Rm9yQ3VycmVudEltYWdlcz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9ITE7YS5maW5kKCJpbWcsLmRlZmF1bHRpbWcsIC50cC1zdmctbGF5ZXIiKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGM9alF1ZXJ5KHRoaXMpLGU9Yy5kYXRhKCJsYXp5bG9hZCIpIT11bmRlZmluZWQ/Yy5kYXRhKCJsYXp5bG9hZCIpOmMuZGF0YSgic3ZnX3NyYyIpIT11bmRlZmluZWQ/Yy5kYXRhKCJzdmdfc3JjIik6Yy5hdHRyKCJzcmMiKSxmPWdldExvYWRPYmooYixlKTtpZihjLmRhdGEoImxvYWRlZCIpPT09dW5kZWZpbmVkJiZmIT09dW5kZWZpbmVkJiZmLnByb2dyZXNzJiZmLnByb2dyZXNzLm1hdGNoKC9sb2FkZWQvZykpe2lmKGMuYXR0cigic3JjIixmLnNyYyksImltZyI9PWYudHlwZSlpZihjLmhhc0NsYXNzKCJkZWZhdWx0aW1nIikpX1IuaXNJRSg4KT9kZWZpbWcuYXR0cigic3JjIixmLnNyYyk6Yy5jc3Moe2JhY2tncm91bmRJbWFnZTondXJsKCInK2Yuc3JjKyciKSd9KSxhLmRhdGEoIm93aWR0aCIsZi53aWR0aCksYS5kYXRhKCJvaGVpZ2h0IixmLmhlaWdodCksYS5maW5kKCIuc2xvdGhvbGRlciIpLmRhdGEoIm93aWR0aCIsZi53aWR0aCksYS5maW5kKCIuc2xvdGhvbGRlciIpLmRhdGEoIm9oZWlnaHQiLGYuaGVpZ2h0KTtlbHNle3ZhciBnPWMuZGF0YSgid3ciKSxoPWMuZGF0YSgiaGgiKTtjLmRhdGEoIm93aWR0aCIsZi53aWR0aCksYy5kYXRhKCJvaGVpZ2h0IixmLmhlaWdodCksZz1nPT11bmRlZmluZWR8fCJhdXRvIj09Z3x8IiI9PWc/Zi53aWR0aDpnLGg9aD09dW5kZWZpbmVkfHwiYXV0byI9PWh8fCIiPT1oP2YuaGVpZ2h0OmgsIWpRdWVyeS5pc051bWVyaWMoZykmJmcuaW5kZXhPZigiJSIpPjAmJihoPWcpLGMuZGF0YSgid3ciLGcpLGMuZGF0YSgiaGgiLGgpfWVsc2Uic3ZnIj09Zi50eXBlJiYibG9hZGVkIj09Zi5wcm9ncmVzcyYmKGMuYXBwZW5kKCc8ZGl2IGNsYXNzPSJ0cC1zdmctaW5uZXJjb250YWluZXIiPjwvZGl2PicpLGMuZmluZCgiLnRwLXN2Zy1pbm5lcmNvbnRhaW5lciIpLmFwcGVuZChmLmlubmVySFRNTCkpO2MuZGF0YSgibG9hZGVkIiwhMCl9aWYoZiYmZi5wcm9ncmVzcyYmZi5wcm9ncmVzcy5tYXRjaCgvaW5wcm9ncmVzc3xpbmxvYWR8cHJlcGFyZWQvZykmJighZi5lcnJvciYmalF1ZXJ5Lm5vdygpLWMuZGF0YSgic3RhcnQtdG8tbG9hZCIpPDVlMz9kPSEwOihmLnByb2dyZXNzPSJmYWlsZWQiLGYucmVwb3J0ZWRfaW1nfHwoZi5yZXBvcnRlZF9pbWc9ITAsY29uc29sZS53YXJuKGUrIiAgQ291bGQgbm90IGJlIGxvYWRlZCAhIikpKSksMT09Yi55b3V0dWJlYXBpbmVlZGVkJiYoIXdpbmRvdy5ZVHx8WVQuUGxheWVyPT11bmRlZmluZWQpJiYoZD0hMCxqUXVlcnkubm93KCktYi55b3V0dWJlc3RhcnR0aW1lPjVlMyYmMSE9Yi55b3V0dWJld2FybmluZykpe2IueW91dHViZXdhcm5pbmc9ITA7dmFyIGk9IllvdVR1YmUgQXBpIENvdWxkIG5vdCBiZSBsb2FkZWQgISI7Imh0dHBzOiI9PT1sb2NhdGlvbi5wcm90b2NvbCYmKGkrPSIgUGxlYXNlIENoZWNrIGFuZCBSZW5ldyBTU0wgQ2VydGlmaWNhdGUgISIpLGNvbnNvbGUuZXJyb3IoaSksYi5jLmFwcGVuZCgnPGRpdiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt3aWR0aDoxMDAlO2NvbG9yOiNlNzRjM2M7ICBmb250LXNpemU6MTZweDsgdGV4dC1hbGlnbjpjZW50ZXI7IHBhZGRpbmc6MTVweDtiYWNrZ3JvdW5kOiMwMDA7IGRpc3BsYXk6YmxvY2s7Ij48c3Ryb25nPicraSsiPC9zdHJvbmc+PC9kaXY+Iil9aWYoMT09Yi52aW1lb2FwaW5lZWRlZCYmIXdpbmRvdy5Gcm9vZ2Fsb29wJiYoZD0hMCxqUXVlcnkubm93KCktYi52aW1lb3N0YXJ0dGltZT41ZTMmJjEhPWIudmltZW93YXJuaW5nKSl7Yi52aW1lb3dhcm5pbmc9ITA7dmFyIGk9IlZpbWVvIEZyb29nYWxvb3AgQXBpIENvdWxkIG5vdCBiZSBsb2FkZWQgISI7Imh0dHBzOiI9PT1sb2NhdGlvbi5wcm90b2NvbCYmKGkrPSIgUGxlYXNlIENoZWNrIGFuZCBSZW5ldyBTU0wgQ2VydGlmaWNhdGUgISIpLGNvbnNvbGUuZXJyb3IoaSksYi5jLmFwcGVuZCgnPGRpdiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt3aWR0aDoxMDAlO2NvbG9yOiNlNzRjM2M7ICBmb250LXNpemU6MTZweDsgdGV4dC1hbGlnbjpjZW50ZXI7IHBhZGRpbmc6MTVweDtiYWNrZ3JvdW5kOiMwMDA7IGRpc3BsYXk6YmxvY2s7Ij48c3Ryb25nPicraSsiPC9zdHJvbmc+PC9kaXY+Iil9fSksIV9JU00mJmIuYXVkaW9xdWV1ZSYmYi5hdWRpb3F1ZXVlLmxlbmd0aD4wJiZqUXVlcnkuZWFjaChiLmF1ZGlvcXVldWUsZnVuY3Rpb24oYSxiKXtiLnN0YXR1cyYmInByZXBhcmVkIj09PWIuc3RhdHVzJiZqUXVlcnkubm93KCktYi5zdGFydDxiLndhaXR0aW1lJiYoZD0hMCl9KSxqUXVlcnkuZWFjaChiLmxvYWRxdWV1ZSxmdW5jdGlvbihhLGIpe2Iuc3RhdGljIT09ITB8fCJsb2FkZWQiPT1iLnByb2dyZXNzJiYiZmFpbGVkIiE9PWIucHJvZ3Jlc3N8fCgiZmFpbGVkIj09Yi5wcm9ncmVzcz9iLnJlcG9ydGVkfHwoYi5yZXBvcnRlZD0hMCxjb25zb2xlLndhcm4oIlN0YXRpYyBJbWFnZSAiK2Iuc3JjKyIgIENvdWxkIG5vdCBiZSBsb2FkZWQgaW4gdGltZS4gRXJyb3IgRXhpc3RzOiIrYi5lcnJvcikpOiFiLmVycm9yJiZqUXVlcnkubm93KCktYi5zdGFydHRvbG9hZDw1ZTM/ZD0hMDpiLnJlcG9ydGVkfHwoYi5yZXBvcnRlZD0hMCxjb25zb2xlLndhcm4oIlN0YXRpYyBJbWFnZSAiK2Iuc3JjKyIgIENvdWxkIG5vdCBiZSBsb2FkZWQgd2l0aGluIDVzISBFcnJvciBFeGlzdHM6IitiLmVycm9yKSkpfSksZD9wdW5jaGdzLlR3ZWVuTGl0ZS5kZWxheWVkQ2FsbCguMTgsd2FpdEZvckN1cnJlbnRJbWFnZXMsW2EsYixjXSk6cHVuY2hncy5Ud2VlbkxpdGUuZGVsYXllZENhbGwoLjE4LGMpfSxzd2FwU2xpZGU9ZnVuY3Rpb24oYSl7dmFyIGI9YVswXS5vcHQ7aWYoY2xlYXJUaW1lb3V0KGIud2FpdFdpdGhTd2FwU2xpZGUpLGEuZmluZCgiLnByb2Nlc3NpbmctcmV2c2xpZGUiKS5sZW5ndGg+MClyZXR1cm4gYi53YWl0V2l0aFN3YXBTbGlkZT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7c3dhcFNsaWRlKGEpfSwxNTApLCExO3ZhciBjPWEuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLGQ9YS5maW5kKCIubmV4dC1yZXZzbGlkZSIpLGU9ZC5maW5kKCIuZGVmYXVsdGltZyIpO3JldHVybiJjYXJvdXNlbCIhPT1iLnNsaWRlclR5cGV8fGIuY2Fyb3VzZWwuZmFkZWlufHwocHVuY2hncy5Ud2VlbkxpdGUudG8oYi51bCwxLHtvcGFjaXR5OjF9KSxiLmNhcm91c2VsLmZhZGVpbj0hMCksZC5pbmRleCgpPT09Yy5pbmRleCgpJiZiLm9ubHlQcmVwYXJlZFNsaWRlIT09ITA/KGQucmVtb3ZlQ2xhc3MoIm5leHQtcmV2c2xpZGUiKSwhMSk6KGIub25seVByZXBhcmVkU2xpZGU9PT0hMCYmKGIub25seVByZXBhcmVkU2xpZGU9ITEsalF1ZXJ5KGIubGlbMF0pLmFkZENsYXNzKCJwcm9jZXNzaW5nLXJldnNsaWRlIikpLGQucmVtb3ZlQ2xhc3MoIm5leHQtcmV2c2xpZGUiKS5hZGRDbGFzcygicHJvY2Vzc2luZy1yZXZzbGlkZSIpLGQuaW5kZXgoKT09PS0xJiYiY2Fyb3VzZWwiPT09Yi5zbGlkZXJUeXBlJiYoZD1qUXVlcnkoYi5saVswXSkpLGQuZGF0YSgic2xpZGVfb25fZm9jdXNfYW1vdW50IixkLmRhdGEoInNsaWRlX29uX2ZvY3VzX2Ftb3VudCIpKzF8fDEpLCJvbiI9PWIuc3RvcExvb3AmJmQuaW5kZXgoKT09Yi5sYXN0c2xpZGV0b3Nob3ctMSYmKGEuZmluZCgiLnRwLWJhbm5lcnRpbWVyIikuY3NzKHt2aXNpYmlsaXR5OiJoaWRkZW4ifSksYS50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLm9uc3RvcCIpLGIubm9sb29wYW55bW9yZT0xKSxkLmluZGV4KCk9PT1iLnNsaWRlYW1vdW50LTEmJihiLmxvb3B0b2dvPWIubG9vcHRvZ28tMSxiLmxvb3B0b2dvPD0wJiYoYi5zdG9wTG9vcD0ib24iKSksYi50b25wYXVzZT0hMCxhLnRyaWdnZXIoInN0b3B0aW1lciIpLGIuY2Q9MCwib2ZmIj09PWIuc3Bpbm5lciYmKGIubG9hZGVyIT09dW5kZWZpbmVkP2IubG9hZGVyLmNzcyh7ZGlzcGxheToibm9uZSJ9KTpiLmxvYWRlcnRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtiLmxvYWRlciE9PXVuZGVmaW5lZCYmYi5sb2FkZXIuY3NzKHtkaXNwbGF5OiJibG9jayJ9KX0sNTApKSxsb2FkSW1hZ2VzKGQsYiwxKSxfUi5wcmVMb2FkQXVkaW8mJl9SLnByZUxvYWRBdWRpbyhkLGIsMSksdm9pZCB3YWl0Rm9yQ3VycmVudEltYWdlcyhkLGIsZnVuY3Rpb24oKXtkLmZpbmQoIi5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIikuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKTthLmhhc0NsYXNzKCJIYXNMaXN0ZW5lciIpfHwoYS5kYXRhKCJiZ3ZpZGVvIiwxKSxfUi5tYW5hZ2VWaWRlb0xheWVyJiZfUi5tYW5hZ2VWaWRlb0xheWVyKGEsYikpLDA9PWEuZmluZCgiLnJzLWZ1bGx2aWRlby1jb3ZlciIpLmxlbmd0aCYmYS5hcHBlbmQoJzxkaXYgY2xhc3M9InJzLWZ1bGx2aWRlby1jb3ZlciI+PC9kaXY+Jyl9KSxzd2FwU2xpZGVQcm9ncmVzcyhlLGEpfSkpfSxzd2FwU2xpZGVQcm9ncmVzcz1mdW5jdGlvbihhLGIpe3ZhciBjPWIuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLGQ9Yi5maW5kKCIucHJvY2Vzc2luZy1yZXZzbGlkZSIpLGU9Yy5maW5kKCIuc2xvdGhvbGRlciIpLGY9ZC5maW5kKCIuc2xvdGhvbGRlciIpLGc9YlswXS5vcHQ7Zy50b25wYXVzZT0hMSxnLmNkPTAsY2xlYXJUaW1lb3V0KGcubG9hZGVydGltZXIpLGcubG9hZGVyIT09dW5kZWZpbmVkJiZnLmxvYWRlci5jc3Moe2Rpc3BsYXk6Im5vbmUifSksX1Iuc2V0U2l6ZShnKSxfUi5zbG90U2l6ZShhLGcpLF9SLm1hbmFnZU5hdmlnYXRpb24mJl9SLm1hbmFnZU5hdmlnYXRpb24oZyk7dmFyIGg9e307aC5uZXh0c2xpZGU9ZCxoLmN1cnJlbnRzbGlkZT1jLGIudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbmJlZm9yZXN3YXAiLGgpLGcudHJhbnNpdGlvbj0xLGcudmlkZW9wbGF5aW5nPSExLGQuZGF0YSgiZGVsYXkiKSE9dW5kZWZpbmVkPyhnLmNkPTAsZy5kZWxheT1kLmRhdGEoImRlbGF5IikpOmcuZGVsYXk9Zy5vcmlnY2QsInRydWUiPT1kLmRhdGEoInNzb3AiKXx8ZC5kYXRhKCJzc29wIik9PT0hMD9nLnNzb3A9ITA6Zy5zc29wPSExLGIudHJpZ2dlcigibnVsbHRpbWVyIik7dmFyIGk9Yy5pbmRleCgpLGo9ZC5pbmRleCgpO2cuc2Rpcj1qPGk/MTowLCJhcnJvdyI9PWcuc2NfaW5kaWNhdG9yJiYoMD09aSYmaj09Zy5zbGlkZWFtb3VudC0xJiYoZy5zZGlyPTEpLGk9PWcuc2xpZGVhbW91bnQtMSYmMD09aiYmKGcuc2Rpcj0wKSksZy5sc2Rpcj1nLmxzZGlyPT09dW5kZWZpbmVkP2cuc2RpcjpnLmxzZGlyLGcuZGlyYz1nLmxzZGlyIT1nLnNkaXIsZy5sc2Rpcj1nLnNkaXIsYy5pbmRleCgpIT1kLmluZGV4KCkmJjEhPWcuZmlyc3RzdGFydCYmX1IucmVtb3ZlVGhlQ2FwdGlvbnMmJl9SLnJlbW92ZVRoZUNhcHRpb25zKGMsZyksZC5oYXNDbGFzcygicnMtcGF1c2UtdGltZXItb25jZSIpfHxkLmhhc0NsYXNzKCJycy1wYXVzZS10aW1lci1hbHdheXMiKT9nLnZpZGVvcGxheWluZz0hMDpiLnRyaWdnZXIoInJlc3RhcnR0aW1lciIpLGQucmVtb3ZlQ2xhc3MoInJzLXBhdXNlLXRpbWVyLW9uY2UiKTt2YXIgayxtO2lmKGcuY3VycmVudFNsaWRlPWMuaW5kZXgoKSxnLm5leHRTbGlkZT1kLmluZGV4KCksImNhcm91c2VsIj09Zy5zbGlkZXJUeXBlKW09bmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlLF9SLnByZXBhcmVDYXJvdXNlbChnLG0pLGxldEl0RnJlZShiLGYsZSxkLGMsbSksZy50cmFuc2l0aW9uPTAsZy5maXJzdHN0YXJ0PTA7ZWxzZXttPW5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZSh7b25Db21wbGV0ZTpmdW5jdGlvbigpe2xldEl0RnJlZShiLGYsZSxkLGMsbSl9fSksbS5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGYuZmluZCgiLmRlZmF1bHRpbWciKSx7b3BhY2l0eTowfSkpLG0ucGF1c2UoKSxfUi5hbmltYXRlVGhlQ2FwdGlvbnMmJl9SLmFuaW1hdGVUaGVDYXB0aW9ucyh7c2xpZGU6ZCxvcHQ6ZyxwcmVzZXQ6ITB9KSwxPT1nLmZpcnN0c3RhcnQmJihwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYyx7YXV0b0FscGhhOjB9KSxnLmZpcnN0c3RhcnQ9MCkscHVuY2hncy5Ud2VlbkxpdGUuc2V0KGMse3pJbmRleDoxOH0pLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChkLHthdXRvQWxwaGE6MCx6SW5kZXg6MjB9KSwicHJlcGFyZWQiPT1kLmRhdGEoImRpZmZlcmVudGlzc3BsYXllZCIpJiYoZC5kYXRhKCJkaWZmZXJlbnRpc3NwbGF5ZWQiLCJkb25lIiksZC5kYXRhKCJ0cmFuc2l0aW9uIixkLmRhdGEoInNhdmVkdHJhbnNpdGlvbiIpKSxkLmRhdGEoInNsb3RhbW91bnQiLGQuZGF0YSgic2F2ZWRzbG90YW1vdW50IikpLGQuZGF0YSgibWFzdGVyc3BlZWQiLGQuZGF0YSgic2F2ZWRtYXN0ZXJzcGVlZCIpKSksZC5kYXRhKCJmc3RyYW5zaXRpb24iKSE9dW5kZWZpbmVkJiYiZG9uZSIhPWQuZGF0YSgiZGlmZmVyZW50aXNzcGxheWVkIikmJihkLmRhdGEoInNhdmVkdHJhbnNpdGlvbiIsZC5kYXRhKCJ0cmFuc2l0aW9uIikpLGQuZGF0YSgic2F2ZWRzbG90YW1vdW50IixkLmRhdGEoInNsb3RhbW91bnQiKSksZC5kYXRhKCJzYXZlZG1hc3RlcnNwZWVkIixkLmRhdGEoIm1hc3RlcnNwZWVkIikpLGQuZGF0YSgidHJhbnNpdGlvbiIsZC5kYXRhKCJmc3RyYW5zaXRpb24iKSksZC5kYXRhKCJzbG90YW1vdW50IixkLmRhdGEoImZzc2xvdGFtb3VudCIpKSxkLmRhdGEoIm1hc3RlcnNwZWVkIixkLmRhdGEoImZzbWFzdGVyc3BlZWQiKSksZC5kYXRhKCJkaWZmZXJlbnRpc3NwbGF5ZWQiLCJwcmVwYXJlZCIpKSxkLmRhdGEoInRyYW5zaXRpb24iKT09dW5kZWZpbmVkJiZkLmRhdGEoInRyYW5zaXRpb24iLCJyYW5kb20iKSxrPTA7dmFyIG49ZC5kYXRhKCJ0cmFuc2l0aW9uIikhPT11bmRlZmluZWQ/ZC5kYXRhKCJ0cmFuc2l0aW9uIikuc3BsaXQoIiwiKToiZmFkZSIsbz1kLmRhdGEoIm5leHR0cmFuc2lkIik9PXVuZGVmaW5lZD8tMTpkLmRhdGEoIm5leHR0cmFuc2lkIik7Im9uIj09ZC5kYXRhKCJyYW5kb210cmFuc2l0aW9uIik/bz1NYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkqbi5sZW5ndGgpOm8rPTEsbz09bi5sZW5ndGgmJihvPTApLGQuZGF0YSgibmV4dHRyYW5zaWQiLG8pO3ZhciBwPW5bb107Zy5pZSYmKCJib3hmYWRlIj09cCYmKHA9ImJveHNsaWRlIiksInNsb3RmYWRlLXZlcnRpY2FsIj09cCYmKHA9InNsb3R6b29tLXZlcnRpY2FsIiksInNsb3RmYWRlLWhvcml6b250YWwiPT1wJiYocD0ic2xvdHpvb20taG9yaXpvbnRhbCIpKSxfUi5pc0lFKDgpJiYocD0xMSksbT1fUi5hbmltYXRlU2xpZGUoayxwLGIsZCxjLGYsZSxtKSwib24iPT1mLmRhdGEoImtlbmJ1cm5zIikmJihfUi5zdGFydEtlbkJ1cm4oZixnKSxtLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZix7YXV0b0FscGhhOjB9KSkpLG0ucGF1c2UoKX1fUi5zY3JvbGxIYW5kbGluZyYmKF9SLnNjcm9sbEhhbmRsaW5nKGcsITApLG0uZXZlbnRDYWxsYmFjaygib25VcGRhdGUiLGZ1bmN0aW9uKCl7X1Iuc2Nyb2xsSGFuZGxpbmcoZywhMCl9KSksIm9mZiIhPWcucGFyYWxsYXgudHlwZSYmZy5wYXJhbGxheC5maXJzdGdvPT11bmRlZmluZWQmJl9SLnNjcm9sbEhhbmRsaW5nJiYoZy5wYXJhbGxheC5maXJzdGdvPSEwLGcubGFzdHNjcm9sbHRvcD0tOTk5LF9SLnNjcm9sbEhhbmRsaW5nKGcsITApLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtnLmxhc3RzY3JvbGx0b3A9LTk5OSxfUi5zY3JvbGxIYW5kbGluZyhnLCEwKX0sMjEwKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Zy5sYXN0c2Nyb2xsdG9wPS05OTksX1Iuc2Nyb2xsSGFuZGxpbmcoZywhMCl9LDQyMCkpLF9SLmFuaW1hdGVUaGVDYXB0aW9ucz8iY2Fyb3VzZWwiPT09Zy5zbGlkZXJUeXBlJiYib24iPT09Zy5jYXJvdXNlbC5zaG93TGF5ZXJzQWxsVGltZT8oalF1ZXJ5LmVhY2goZy5saSxmdW5jdGlvbihhKXtnLmNhcm91c2VsLmFsbExheWVyc1N0YXJ0ZWQ/X1IuYW5pbWF0ZVRoZUNhcHRpb25zKHtzbGlkZTpqUXVlcnkoZy5saVthXSksb3B0OmcscmVjYWxsOiEwfSk6Zy5saVthXT09PWQ/X1IuYW5pbWF0ZVRoZUNhcHRpb25zKHtzbGlkZTpqUXVlcnkoZy5saVthXSksbWFpbnRpbWVsaW5lOm0sb3B0Omcsc3RhcnRzbGlkZWFuaW1hdDowfSk6X1IuYW5pbWF0ZVRoZUNhcHRpb25zKHtzbGlkZTpqUXVlcnkoZy5saVthXSksb3B0Omcsc3RhcnRzbGlkZWFuaW1hdDowfSl9KSxnLmNhcm91c2VsLmFsbExheWVyc1N0YXJ0ZWQ9ITApOl9SLmFuaW1hdGVUaGVDYXB0aW9ucyh7c2xpZGU6ZCxvcHQ6ZyxtYWludGltZWxpbmU6bSxzdGFydHNsaWRlYW5pbWF0OjB9KTptIT11bmRlZmluZWQmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXttLnJlc3VtZSgpfSwzMCkscHVuY2hncy5Ud2VlbkxpdGUudG8oZCwuMDAxLHthdXRvQWxwaGE6MX0pfSxsZXRJdEZyZWU9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe3ZhciBnPWFbMF0ub3B0OyJjYXJvdXNlbCI9PT1nLnNsaWRlclR5cGV8fChnLnJlbW92ZVByZXBhcmU9MCxwdW5jaGdzLlR3ZWVuTGl0ZS50byhiLmZpbmQoIi5kZWZhdWx0aW1nIiksLjAwMSx7ekluZGV4OjIwLGF1dG9BbHBoYToxLG9uQ29tcGxldGU6ZnVuY3Rpb24oKXtyZW1vdmVTbG90cyhhLGcsZCwxKX19KSxkLmluZGV4KCkhPWUuaW5kZXgoKSYmcHVuY2hncy5Ud2VlbkxpdGUudG8oZSwuMix7ekluZGV4OjE4LGF1dG9BbHBoYTowLG9uQ29tcGxldGU6ZnVuY3Rpb24oKXtyZW1vdmVTbG90cyhhLGcsZSwxKX19KSksYS5maW5kKCIuYWN0aXZlLXJldnNsaWRlIikucmVtb3ZlQ2xhc3MoImFjdGl2ZS1yZXZzbGlkZSIpLGEuZmluZCgiLnByb2Nlc3NpbmctcmV2c2xpZGUiKS5yZW1vdmVDbGFzcygicHJvY2Vzc2luZy1yZXZzbGlkZSIpLmFkZENsYXNzKCJhY3RpdmUtcmV2c2xpZGUiKSxnLmFjdD1kLmluZGV4KCksZy5jLmF0dHIoImRhdGEtc2xpZGVhY3RpdmUiLGEuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLmRhdGEoImluZGV4IikpLCJzY3JvbGwiIT1nLnBhcmFsbGF4LnR5cGUmJiJzY3JvbGwrbW91c2UiIT1nLnBhcmFsbGF4LnR5cGUmJiJtb3VzZStzY3JvbGwiIT1nLnBhcmFsbGF4LnR5cGV8fChnLmxhc3RzY3JvbGx0b3A9LTk5OSxfUi5zY3JvbGxIYW5kbGluZyhnKSksZi5jbGVhcigpLGMuZGF0YSgia2J0bCIpIT11bmRlZmluZWQmJihjLmRhdGEoImtidGwiKS5yZXZlcnNlKCksYy5kYXRhKCJrYnRsIikudGltZVNjYWxlKDI1KSksIm9uIj09Yi5kYXRhKCJrZW5idXJucyIpJiYoYi5kYXRhKCJrYnRsIikhPXVuZGVmaW5lZD8oYi5kYXRhKCJrYnRsIikudGltZVNjYWxlKDEpLGIuZGF0YSgia2J0bCIpLnBsYXkoKSk6X1Iuc3RhcnRLZW5CdXJuKGIsZykpLGQuZmluZCgiLnJzLWJhY2tncm91bmQtdmlkZW8tbGF5ZXIiKS5lYWNoKGZ1bmN0aW9uKGEpe2lmKF9JU00pcmV0dXJuITE7dmFyIGI9alF1ZXJ5KHRoaXMpO19SLnJlc2V0VmlkZW8oYixnKSxwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYiwxLHthdXRvQWxwaGE6MH0se2F1dG9BbHBoYToxLGVhc2U6cHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0LGRlbGF5Oi4yLG9uQ29tcGxldGU6ZnVuY3Rpb24oKXtfUi5hbmltY29tcGxldGVkJiZfUi5hbmltY29tcGxldGVkKGIsZyl9fSl9KSxlLmZpbmQoIi5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIikuZWFjaChmdW5jdGlvbihhKXtpZihfSVNNKXJldHVybiExO3ZhciBiPWpRdWVyeSh0aGlzKTtfUi5zdG9wVmlkZW8mJihfUi5yZXNldFZpZGVvKGIsZyksX1Iuc3RvcFZpZGVvKGIsZykpLHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGIsMSx7YXV0b0FscGhhOjAsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQsZGVsYXk6LjJ9KX0pO3ZhciBoPXt9O2guc2xpZGVJbmRleD1kLmluZGV4KCkrMSxoLnNsaWRlTElJbmRleD1kLmluZGV4KCksaC5zbGlkZT1kLGguY3VycmVudHNsaWRlPWQsaC5wcmV2c2xpZGU9ZSxnLmxhc3Rfc2hvd25fc2xpZGU9ZS5pbmRleCgpLGEudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbmNoYW5nZSIsaCksYS50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLm9uYWZ0ZXJzd2FwIixoKSxnLmR1cmluZ3NsaWRlY2hhbmdlPSExO3ZhciBpPWUuZGF0YSgic2xpZGVfb25fZm9jdXNfYW1vdW50Iiksaj1lLmRhdGEoImhpZGVhZnRlcmxvb3AiKTswIT1qJiZqPD1pJiZnLmMucmV2cmVtb3Zlc2xpZGUoZS5pbmRleCgpKTt2YXIgaz1nLm5leHRTbGlkZT09PS0xfHxnLm5leHRTbGlkZT09PXVuZGVmaW5lZD8wOmcubmV4dFNsaWRlO2s9az5nLnJvd3pvbmVzLmxlbmd0aD9nLnJvd3pvbmVzLmxlbmd0aDprLGcucm93em9uZXMhPXVuZGVmaW5lZCYmZy5yb3d6b25lcy5sZW5ndGg+MCYmZy5yb3d6b25lc1trXSE9dW5kZWZpbmVkJiZrPj0wJiZrPD1nLnJvd3pvbmVzLmxlbmd0aCYmZy5yb3d6b25lc1trXS5sZW5ndGg+MCYmX1Iuc2V0U2l6ZShnKX0scmVtb3ZlQWxsTGlzdGVuZXJzPWZ1bmN0aW9uKGEsYil7YS5jaGlsZHJlbigpLmVhY2goZnVuY3Rpb24oKXt0cnl7alF1ZXJ5KHRoaXMpLmRpZSgiY2xpY2siKX1jYXRjaChhKXt9dHJ5e2pRdWVyeSh0aGlzKS5kaWUoIm1vdXNlZW50ZXIiKX1jYXRjaChhKXt9dHJ5e2pRdWVyeSh0aGlzKS5kaWUoIm1vdXNlbGVhdmUiKX1jYXRjaChhKXt9dHJ5e2pRdWVyeSh0aGlzKS51bmJpbmQoImhvdmVyIil9Y2F0Y2goYSl7fX0pO3RyeXthLmRpZSgiY2xpY2siLCJtb3VzZWVudGVyIiwibW91c2VsZWF2ZSIpfWNhdGNoKGEpe31jbGVhckludGVydmFsKGIuY2RpbnQpLGE9bnVsbH0sY291bnREb3duPWZ1bmN0aW9uKGEsYil7Yi5jZD0wLGIubG9vcD0wLGIuc3RvcEFmdGVyTG9vcHMhPXVuZGVmaW5lZCYmYi5zdG9wQWZ0ZXJMb29wcz4tMT9iLmxvb3B0b2dvPWIuc3RvcEFmdGVyTG9vcHM6Yi5sb29wdG9nbz05OTk5OTk5LGIuc3RvcEF0U2xpZGUhPXVuZGVmaW5lZCYmYi5zdG9wQXRTbGlkZT4tMT9iLmxhc3RzbGlkZXRvc2hvdz1iLnN0b3BBdFNsaWRlOmIubGFzdHNsaWRldG9zaG93PTk5OSxiLnN0b3BMb29wPSJvZmYiLDA9PWIubG9vcHRvZ28mJihiLnN0b3BMb29wPSJvbiIpO3ZhciBjPWEuZmluZCgiLnRwLWJhbm5lcnRpbWVyIik7YS5vbigic3RvcHRpbWVyIixmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKS5maW5kKCIudHAtYmFubmVydGltZXIiKTthWzBdLnR3ZWVuLnBhdXNlKCksIm9uIj09Yi5kaXNhYmxlUHJvZ3Jlc3NCYXImJmEuY3NzKHt2aXNpYmlsaXR5OiJoaWRkZW4ifSksYi5zbGlkZXJzdGF0dXM9InBhdXNlZCIsX1IudW5Ub2dnbGVTdGF0ZShiLnNsaWRlcnRvZ2dsZWRieSl9KSxhLm9uKCJzdGFydHRpbWVyIixmdW5jdGlvbigpe2IuZm9yY2VwYXVzZV92aWF0b2dnbGV8fCgxIT1iLmNvbnRob3ZlciYmMSE9Yi52aWRlb3BsYXlpbmcmJmIud2lkdGg+Yi5oaWRlU2xpZGVyQXRMaW1pdCYmMSE9Yi50b25wYXVzZSYmMSE9Yi5vdmVybmF2JiYxIT1iLnNzb3AmJigxPT09Yi5ub2xvb3Bhbnltb3JlfHxiLnZpZXdQb3J0LmVuYWJsZSYmIWIuaW52aWV3cG9ydHx8KGMuY3NzKHt2aXNpYmlsaXR5OiJ2aXNpYmxlIn0pLGNbMF0udHdlZW4ucmVzdW1lKCksYi5zbGlkZXJzdGF0dXM9InBsYXlpbmciKSksIm9uIj09Yi5kaXNhYmxlUHJvZ3Jlc3NCYXImJmMuY3NzKHt2aXNpYmlsaXR5OiJoaWRkZW4ifSksX1IudG9nZ2xlU3RhdGUoYi5zbGlkZXJ0b2dnbGVkYnkpKX0pLGEub24oInJlc3RhcnR0aW1lciIsZnVuY3Rpb24oKXtpZighYi5mb3JjZXBhdXNlX3ZpYXRvZ2dsZSl7dmFyIGE9alF1ZXJ5KHRoaXMpLmZpbmQoIi50cC1iYW5uZXJ0aW1lciIpO2lmKGIubW91c2VvbmNvbnRhaW5lciYmIm9uIj09Yi5uYXZpZ2F0aW9uLm9uSG92ZXJTdG9wJiYhX0lTTSlyZXR1cm4hMTsxPT09Yi5ub2xvb3Bhbnltb3JlfHxiLnZpZXdQb3J0LmVuYWJsZSYmIWIuaW52aWV3cG9ydHx8MT09Yi5zc29wfHwoYS5jc3Moe3Zpc2liaWxpdHk6InZpc2libGUifSksYVswXS50d2Vlbi5raWxsKCksYVswXS50d2Vlbj1wdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYSxiLmRlbGF5LzFlMyx7d2lkdGg6IjAlIn0se2ZvcmNlM0Q6ImF1dG8iLHdpZHRoOiIxMDAlIixlYXNlOnB1bmNoZ3MuTGluZWFyLmVhc2VOb25lLG9uQ29tcGxldGU6ZCxkZWxheToxfSksYi5zbGlkZXJzdGF0dXM9InBsYXlpbmciKSwib24iPT1iLmRpc2FibGVQcm9ncmVzc0JhciYmYS5jc3Moe3Zpc2liaWxpdHk6ImhpZGRlbiJ9KSxfUi50b2dnbGVTdGF0ZShiLnNsaWRlcnRvZ2dsZWRieSl9fSksYS5vbigibnVsbHRpbWVyIixmdW5jdGlvbigpe2NbMF0udHdlZW4ua2lsbCgpLGNbMF0udHdlZW49cHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGMsYi5kZWxheS8xZTMse3dpZHRoOiIwJSJ9LHtmb3JjZTNEOiJhdXRvIix3aWR0aDoiMTAwJSIsZWFzZTpwdW5jaGdzLkxpbmVhci5lYXNlTm9uZSxvbkNvbXBsZXRlOmQsZGVsYXk6MX0pLGNbMF0udHdlZW4ucGF1c2UoMCksIm9uIj09Yi5kaXNhYmxlUHJvZ3Jlc3NCYXImJmMuY3NzKHt2aXNpYmlsaXR5OiJoaWRkZW4ifSksYi5zbGlkZXJzdGF0dXM9InBhdXNlZCJ9KTt2YXIgZD1mdW5jdGlvbigpezA9PWpRdWVyeSgiYm9keSIpLmZpbmQoYSkubGVuZ3RoJiYocmVtb3ZlQWxsTGlzdGVuZXJzKGEsYiksY2xlYXJJbnRlcnZhbChiLmNkaW50KSksYS50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLnNsaWRlYXRlbmQiKSwxPT1hLmRhdGEoImNvbnRob3Zlci1jaGFuZ2VkIikmJihiLmNvbnRob3Zlcj1hLmRhdGEoImNvbnRob3ZlciIpLGEuZGF0YSgiY29udGhvdmVyLWNoYW5nZWQiLDApKSxfUi5jYWxsaW5nTmV3U2xpZGUoYSwxKX07Y1swXS50d2Vlbj1wdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYyxiLmRlbGF5LzFlMyx7d2lkdGg6IjAlIn0se2ZvcmNlM0Q6ImF1dG8iLHdpZHRoOiIxMDAlIixlYXNlOnB1bmNoZ3MuTGluZWFyLmVhc2VOb25lLG9uQ29tcGxldGU6ZCxkZWxheToxfSksYi5zbGlkZWFtb3VudD4xJiYoMCE9Yi5zdG9wQWZ0ZXJMb29wc3x8MSE9Yi5zdG9wQXRTbGlkZSk/YS50cmlnZ2VyKCJzdGFydHRpbWVyIik6KGIubm9sb29wYW55bW9yZT0xLGEudHJpZ2dlcigibnVsbHRpbWVyIikpLGEub24oInRwLW1vdXNlZW50ZXIiLGZ1bmN0aW9uKCl7Yi5tb3VzZW9uY29udGFpbmVyPSEwLCJvbiIhPWIubmF2aWdhdGlvbi5vbkhvdmVyU3RvcHx8X0lTTXx8KGEudHJpZ2dlcigic3RvcHRpbWVyIiksYS50cmlnZ2VyKCJyZXZvbHV0aW9uLnNsaWRlLm9ucGF1c2UiKSl9KSxhLm9uKCJ0cC1tb3VzZWxlZnQiLGZ1bmN0aW9uKCl7Yi5tb3VzZW9uY29udGFpbmVyPSExLDEhPWEuZGF0YSgiY29udGhvdmVyIikmJiJvbiI9PWIubmF2aWdhdGlvbi5vbkhvdmVyU3RvcCYmKDE9PWIudmlld1BvcnQuZW5hYmxlJiZiLmludmlld3BvcnR8fDA9PWIudmlld1BvcnQuZW5hYmxlKSYmKGEudHJpZ2dlcigicmV2b2x1dGlvbi5zbGlkZS5vbnJlc3VtZSIpLGEudHJpZ2dlcigic3RhcnR0aW1lciIpKX0pfSx2aXM9ZnVuY3Rpb24oKXt2YXIgYSxiLGM9e2hpZGRlbjoidmlzaWJpbGl0eWNoYW5nZSIsd2Via2l0SGlkZGVuOiJ3ZWJraXR2aXNpYmlsaXR5Y2hhbmdlIixtb3pIaWRkZW46Im1venZpc2liaWxpdHljaGFuZ2UiLG1zSGlkZGVuOiJtc3Zpc2liaWxpdHljaGFuZ2UifTtmb3IoYSBpbiBjKWlmKGEgaW4gZG9jdW1lbnQpe2I9Y1thXTticmVha31yZXR1cm4gZnVuY3Rpb24oYyl7cmV0dXJuIGMmJmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoYixjLHtwYXNpdmU6ITB9KSwhZG9jdW1lbnRbYV19fSgpLHJlc3RhcnRPbkZvY3VzPWZ1bmN0aW9uKGEpe3JldHVybiBhIT11bmRlZmluZWQmJmEuYyE9dW5kZWZpbmVkJiZ2b2lkKDEhPWEud2luZG93Zm9jdXNlZCYmKGEud2luZG93Zm9jdXNlZD0hMCxwdW5jaGdzLlR3ZWVuTGl0ZS5kZWxheWVkQ2FsbCguMyxmdW5jdGlvbigpeyJvbiI9PWEuZmFsbGJhY2tzLm5leHRTbGlkZU9uV2luZG93Rm9jdXMmJmEuYy5yZXZuZXh0KCksYS5jLnJldnJlZHJhdygpLCJwbGF5aW5nIj09YS5sYXN0c2xpZGVyc3RhdHVzJiZhLmMucmV2cmVzdW1lKCl9KSkpfSxsYXN0U3RhdEJsdXI9ZnVuY3Rpb24oYSl7YS53aW5kb3dmb2N1c2VkPSExLGEubGFzdHNsaWRlcnN0YXR1cz1hLnNsaWRlcnN0YXR1cyxhLmMucmV2cGF1c2UoKTt2YXIgYj1hLmMuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSAuc2xvdGhvbGRlciIpLGM9YS5jLmZpbmQoIi5wcm9jZXNzaW5nLXJldnNsaWRlIC5zbG90aG9sZGVyIik7Im9uIj09Yy5kYXRhKCJrZW5idXJucyIpJiZfUi5zdG9wS2VuQnVybihjLGEpLCJvbiI9PWIuZGF0YSgia2VuYnVybnMiKSYmX1Iuc3RvcEtlbkJ1cm4oYixhKX0sdGFiQmx1cnJpbmdDaGVjaz1mdW5jdGlvbihhLGIpe3ZhciBjPWRvY3VtZW50LmRvY3VtZW50TW9kZT09PXVuZGVmaW5lZCxkPXdpbmRvdy5jaHJvbWU7YyYmIWQ/alF1ZXJ5KHdpbmRvdykub24oImZvY3VzaW4iLGZ1bmN0aW9uKCl7cmVzdGFydE9uRm9jdXMoYil9KS5vbigiZm9jdXNvdXQiLGZ1bmN0aW9uKCl7bGFzdFN0YXRCbHVyKGIpfSk6d2luZG93LmFkZEV2ZW50TGlzdGVuZXI/KHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsZnVuY3Rpb24oYSl7cmVzdGFydE9uRm9jdXMoYil9LHtjYXB0dXJlOiExLHBhc3NpdmU6ITB9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsZnVuY3Rpb24oYSl7bGFzdFN0YXRCbHVyKGIpfSx7Y2FwdHVyZTohMSxwYXNzaXZlOiEwfSkpOih3aW5kb3cuYXR0YWNoRXZlbnQoImZvY3VzIixmdW5jdGlvbihhKXtyZXN0YXJ0T25Gb2N1cyhiKX0pLHdpbmRvdy5hdHRhY2hFdmVudCgiYmx1ciIsZnVuY3Rpb24oYSl7bGFzdFN0YXRCbHVyKGIpfSkpfSxnZXRVcmxWYXJzPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYyxiPVtdLGQ9d2luZG93LmxvY2F0aW9uLmhyZWYuc2xpY2Uod2luZG93LmxvY2F0aW9uLmhyZWYuaW5kZXhPZihhKSsxKS5zcGxpdCgiXyIpLGU9MDtlPGQubGVuZ3RoO2UrKylkW2VdPWRbZV0ucmVwbGFjZSgiJTNEIiwiPSIpLGM9ZFtlXS5zcGxpdCgiPSIpLGIucHVzaChjWzBdKSxiW2NbMF1dPWNbMV07cmV0dXJuIGJ9fShqUXVlcnkpOw=="}},"time_used":15694,"timings":{"blocked":14604,"dns":0,"connect":0,"send":0,"wait":1090,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/c0a6ae515f4d245d.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.697Z","timestamp":1785143926697,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/c0a6ae515f4d245d.js HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\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: same-origin\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\naccess-control-allow-origin: *\r\nage: 3831443\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"c0a6ae515f4d245d.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\netag: W/\"42e2ea745a52c479ce79b9fadf7f2ed9\"\r\nlast-modified: Sat, 13 Jun 2026 00:50:11 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/c0a6ae515f4d245d.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::xwt97-1781312483646-eb94f2b460c3\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=q7SmyytKHFzNUCWqnzFxfKRD4T8J7Wn67%2FyiEgX8AwcvqwGQyTD4%2BAJ67MMJnb9cXhozDnbZXKvVXPQD2OBUGrlwA2C%2BsZqGhPCbKlCm0bqrJo%2Bbig9fxu6zwB2r\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21a8f05d91b0b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\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"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"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":3649,"size_decoded":3726,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3649), with no line terminators","md5":"42e2ea745a52c479ce79b9fadf7f2ed9","sha1":"0cf08999016475d70bf072b7878daea0244184e3","sha256":"2746264358bea944d3523f9c66585147897903d73b7b42e0bfd599f2492e3315","sha512":"cf4f42621c9615fcfc08b325ce391ff9e3af8b94fe80c1e4118eb1e52ca88e0b0409d0c36bc96f50a26ac3ea232630521e1a8077e10d05438f3b7fb8ebc266a9","ssdeep":"","tlshash":"af7165f0a702b23409ea41de5079c778b53d3658512e9420d1badc7f626cd8964b2ef3","first_seen":"2026-06-13T02:21:16.197988Z","last_seen":"2026-08-11T04:47:30.097724Z","times_seen":1896,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDQyMDkyLGU9PnsidXNlIHN0cmljdCI7dmFyIHQ9ZS5pKDc1MjAxKSxyPShlLHQscixuLHMsYSxvLGwpPT57bGV0IGk9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LG09WyJsaWdodCIsImRhcmsiXTtmdW5jdGlvbiBjKHQpe3ZhciByOyhBcnJheS5pc0FycmF5KGUpP2U6W2VdKS5mb3JFYWNoKGU9PntsZXQgcj0iY2xhc3MiPT09ZSxuPXImJmE/cy5tYXAoZT0+YVtlXXx8ZSk6cztyPyhpLmNsYXNzTGlzdC5yZW1vdmUoLi4ubiksaS5jbGFzc0xpc3QuYWRkKGEmJmFbdF0/YVt0XTp0KSk6aS5zZXRBdHRyaWJ1dGUoZSx0KX0pLHI9dCxsJiZtLmluY2x1ZGVzKHIpJiYoaS5zdHlsZS5jb2xvclNjaGVtZT1yKX1pZihuKWMobik7ZWxzZSB0cnl7bGV0IGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0odCl8fHIsbj1vJiYic3lzdGVtIj09PWU/d2luZG93Lm1hdGNoTWVkaWEoIihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiKS5tYXRjaGVzPyJkYXJrIjoibGlnaHQiOmU7YyhuKX1jYXRjaChlKXt9fSxuPVsibGlnaHQiLCJkYXJrIl0scz0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIsYT0idSI8dHlwZW9mIHdpbmRvdyxvPXQuY3JlYXRlQ29udGV4dCh2b2lkIDApLGw9e3NldFRoZW1lOmU9Pnt9LHRoZW1lczpbXX0saT0oKT0+e3ZhciBlO3JldHVybiBudWxsIT0oZT10LnVzZUNvbnRleHQobykpP2U6bH0sbT1lPT50LnVzZUNvbnRleHQobyk/dC5jcmVhdGVFbGVtZW50KHQuRnJhZ21lbnQsbnVsbCxlLmNoaWxkcmVuKTp0LmNyZWF0ZUVsZW1lbnQoZCx7Li4uZX0pLGM9WyJsaWdodCIsImRhcmsiXSxkPSh7Zm9yY2VkVGhlbWU6ZSxkaXNhYmxlVHJhbnNpdGlvbk9uQ2hhbmdlOnI9ITEsZW5hYmxlU3lzdGVtOmE9ITAsZW5hYmxlQ29sb3JTY2hlbWU6bD0hMCxzdG9yYWdlS2V5Omk9InRoZW1lIix0aGVtZXM6bT1jLGRlZmF1bHRUaGVtZTpkPWE/InN5c3RlbSI6ImxpZ2h0IixhdHRyaWJ1dGU6cD0iZGF0YS10aGVtZSIsdmFsdWU6YixjaGlsZHJlbjp2LG5vbmNlOmcsc2NyaXB0UHJvcHM6VH0pPT57bGV0W3csU109dC51c2VTdGF0ZSgoKT0+aChpLGQpKSxbQyxFXT10LnVzZVN0YXRlKCgpPT4ic3lzdGVtIj09PXc/ZigpOncpLGs9Yj9PYmplY3QudmFsdWVzKGIpOm0sQT10LnVzZUNhbGxiYWNrKGU9PntsZXQgdD1lO2lmKCF0KXJldHVybjsic3lzdGVtIj09PWUmJmEmJih0PWYoKSk7bGV0IHM9Yj9iW3RdOnQsbz1yP3koZyk6bnVsbCxpPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxtPWU9PnsiY2xhc3MiPT09ZT8oaS5jbGFzc0xpc3QucmVtb3ZlKC4uLmspLHMmJmkuY2xhc3NMaXN0LmFkZChzKSk6ZS5zdGFydHNXaXRoKCJkYXRhLSIpJiYocz9pLnNldEF0dHJpYnV0ZShlLHMpOmkucmVtb3ZlQXR0cmlidXRlKGUpKX07aWYoQXJyYXkuaXNBcnJheShwKT9wLmZvckVhY2gobSk6bShwKSxsKXtsZXQgZT1uLmluY2x1ZGVzKGQpP2Q6bnVsbCxyPW4uaW5jbHVkZXModCk/dDplO2kuc3R5bGUuY29sb3JTY2hlbWU9cn1udWxsPT1vfHxvKCl9LFtnXSksTD10LnVzZUNhbGxiYWNrKGU9PntsZXQgdD0iZnVuY3Rpb24iPT10eXBlb2YgZT9lKHcpOmU7Uyh0KTt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oaSx0KX1jYXRjaChlKXt9fSxbd10pLFA9dC51c2VDYWxsYmFjayh0PT57RShmKHQpKSwic3lzdGVtIj09PXcmJmEmJiFlJiZBKCJzeXN0ZW0iKX0sW3csZV0pO3QudXNlRWZmZWN0KCgpPT57bGV0IGU9d2luZG93Lm1hdGNoTWVkaWEocyk7cmV0dXJuIGUuYWRkTGlzdGVuZXIoUCksUChlKSwoKT0+ZS5yZW1vdmVMaXN0ZW5lcihQKX0sW1BdKSx0LnVzZUVmZmVjdCgoKT0+e2xldCBlPWU9PntlLmtleT09PWkmJihlLm5ld1ZhbHVlP1MoZS5uZXdWYWx1ZSk6TChkKSl9O3JldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic3RvcmFnZSIsZSksKCk9PndpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJzdG9yYWdlIixlKX0sW0xdKSx0LnVzZUVmZmVjdCgoKT0+e0EobnVsbCE9ZT9lOncpfSxbZSx3XSk7bGV0IE89dC51c2VNZW1vKCgpPT4oe3RoZW1lOncsc2V0VGhlbWU6TCxmb3JjZWRUaGVtZTplLHJlc29sdmVkVGhlbWU6InN5c3RlbSI9PT13P0M6dyx0aGVtZXM6YT9bLi4ubSwic3lzdGVtIl06bSxzeXN0ZW1UaGVtZTphP0M6dm9pZCAwfSksW3csTCxlLEMsYSxtXSk7cmV0dXJuIHQuY3JlYXRlRWxlbWVudChvLlByb3ZpZGVyLHt2YWx1ZTpPfSx0LmNyZWF0ZUVsZW1lbnQodSx7Zm9yY2VkVGhlbWU6ZSxzdG9yYWdlS2V5OmksYXR0cmlidXRlOnAsZW5hYmxlU3lzdGVtOmEsZW5hYmxlQ29sb3JTY2hlbWU6bCxkZWZhdWx0VGhlbWU6ZCx2YWx1ZTpiLHRoZW1lczptLG5vbmNlOmcsc2NyaXB0UHJvcHM6VH0pLHYpfSx1PXQubWVtbygoe2ZvcmNlZFRoZW1lOmUsc3RvcmFnZUtleTpuLGF0dHJpYnV0ZTpzLGVuYWJsZVN5c3RlbTphLGVuYWJsZUNvbG9yU2NoZW1lOm8sZGVmYXVsdFRoZW1lOmwsdmFsdWU6aSx0aGVtZXM6bSxub25jZTpjLHNjcmlwdFByb3BzOmR9KT0+e2xldCB1PUpTT04uc3RyaW5naWZ5KFtzLG4sbCxlLG0saSxhLG9dKS5zbGljZSgxLC0xKTtyZXR1cm4gdC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiLHsuLi5kLHN1cHByZXNzSHlkcmF0aW9uV2FybmluZzohMCxub25jZToidSI8dHlwZW9mIHdpbmRvdz9jOiIiLGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MOntfX2h0bWw6YCgke3IudG9TdHJpbmcoKX0pKCR7dX0pYH19KX0pLGg9KGUsdCk9PntsZXQgcjtpZighYSl7dHJ5e3I9bG9jYWxTdG9yYWdlLmdldEl0ZW0oZSl8fHZvaWQgMH1jYXRjaChlKXt9cmV0dXJuIHJ8fHR9fSx5PWU9PntsZXQgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiBlJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGUpLHQuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiosKjo6YmVmb3JlLCo6OmFmdGVyey13ZWJraXQtdHJhbnNpdGlvbjpub25lIWltcG9ydGFudDstbW96LXRyYW5zaXRpb246bm9uZSFpbXBvcnRhbnQ7LW8tdHJhbnNpdGlvbjpub25lIWltcG9ydGFudDstbXMtdHJhbnNpdGlvbjpub25lIWltcG9ydGFudDt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fSIpKSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHQpLCgpPT57d2luZG93LmdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuYm9keSksc2V0VGltZW91dCgoKT0+e2RvY3VtZW50LmhlYWQucmVtb3ZlQ2hpbGQodCl9LDEpfX0sZj1lPT4oZXx8KGU9d2luZG93Lm1hdGNoTWVkaWEocykpLGUubWF0Y2hlcz8iZGFyayI6ImxpZ2h0Iik7ZS5zKFsiVGhlbWVQcm92aWRlciIsKCk9Pm0sInVzZVRoZW1lIiwoKT0+aV0pfSw4MzY2MSxlPT57InVzZSBzdHJpY3QiO3ZhciB0PWUuaSg5ODEzNCkscj1lLmkoNDIwOTIpO2Z1bmN0aW9uIG4oe2NoaWxkcmVuOmV9KXtyZXR1cm4oMCx0LmpzeCkoci5UaGVtZVByb3ZpZGVyLHthdHRyaWJ1dGU6ImNsYXNzIixkZWZhdWx0VGhlbWU6ImRhcmsiLGVuYWJsZVN5c3RlbTohMCxkaXNhYmxlVHJhbnNpdGlvbk9uQ2hhbmdlOiEwLGNoaWxkcmVuOmV9KX1lLnMoWyJUaGVtZVByb3ZpZGVyIiwoKT0+bl0pfV0pOw=="}},"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":"fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.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://www.youtube.com/embed/tZOSQBP946Q","date":"2026-07-27T09:18:46.742Z","timestamp":1785143926742,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.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://www.youtube.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.youtube.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: 40128\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 02:17:07 GMT\r\nexpires: Fri, 23 Jul 2027 02:17:07 GMT\r\ncache-control: public, max-age=31536000\r\nage: 370899\r\nlast-modified: Thu, 29 May 2025 23:30:55 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":40128,"size_decoded":40941,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 40128, version 1.0","md5":"9a01b69183a9604ab3a439e388b30501","sha1":"8ed1d59003d0dbe6360481017b44665153665fbe","sha256":"20b535fa80c8189e3b87d1803038389960203a886d502bc2ef1857affc2f38d2","sha512":"0e6795255b6eea00b5403fd7e3b904d52776d49ac63a31c2778361262883697943aedcb29feee85694ba6f19eaa34dddb9a5bfe7118f4a25b4757e92c331feca","ssdeep":"768:Vce3jkow68wmT4IBX0tXdlSirS61gSjcz0GPwHbP+w2jec56O:VcI/iEEEtXdFJj+0GPwHbP+w5rO","tlshash":"3703023a5e3ccf1a84157a703950f6d9a8481e548e9d143b4f1ac7bf085dde2209b6d4","first_seen":"2025-01-08T22:59:02.845106Z","last_seen":"2026-08-11T07:56:15.184532Z","times_seen":961540,"resource_available":false,"data":"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"}},"time_used":19,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/opensans/v44/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-muw.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://scromegatrade.com/","date":"2026-07-27T09:18:46.549Z","timestamp":1785143926549,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/opensans/v44/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-muw.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://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.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: 48320\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:19 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:19 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Mon, 15 Sep 2025 16:30:41 GMT\r\ncontent-type: font/woff2\r\nage: 418107\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":48320,"size_decoded":49133,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 48320, version 1.0","md5":"dcf31ebe107435bd68e0164d59e19b87","sha1":"b68160c9333af833fe483928b3ef7128c07a56a0","sha256":"d8e4fe0452aa2076429a9bb5d8757d00a994dd95986cf950e9a1a371b9a072a0","sha512":"130cd52c3cccc36a7029bf92b2ddb363b8b36d206454aacc246739919552fccec5cacbad615ba4ac3817da3e83239371fe51324bdadd08357e3495087f62cb08","ssdeep":"768:Jzqdwl5YV7FVmpudK5a8dF8D8Z7J78VGnNFZEKh02dmSTPe9UiallHcOEi2c0NC1:9q+SYuMaVwZ7oGRNh02dd6UialBcOEpE","tlshash":"1623f218f29471f7edecd4d500a18c72baa528d442f116ed07b8d53ca36ca817a729fb","first_seen":"2025-09-17T00:07:53.723302Z","last_seen":"2026-08-11T07:59:18.823424Z","times_seen":325213,"resource_available":false,"data":"d09GMgABAAAAALzAABcAAAABQkQAALxFAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGoVPG55CHIZoP0hWQVKIeAZgP1NUQVSBJCceAIIoKxMIgXwJnxQvVhEQCoG1GIGbKwuEMgAwgs0UATYCJAOIYAQgBYd+B4kfDIUfW5gxcSNacVv1x4BuMQL4Ss8t1RmfoIBz4iu3gy7y7Dc4GccswHkI1Dlfzi/7///PTCoyZlI06TY2mKB4/R/LjtLk4qCmm1aht9EKly2RtI9E03x41nqIDSFRkqV4wHJUFVScDvw0NWF7hRcGrVR2kZWQTRbmMcmCUIoqvLdH2KHWlJDUR0+c3DcyTzUIbyguosQun2RUKdDiQZM3CToTIx15n3QJmW3FCiFNk/Nw1lLQPHpL8iV6wj95KAey1N6CbJkvLuUj/kBeF756vm8/zli3fXdr6ZfECip58brwWrjhYt1h17Iv2RJEorpyPkv8e6s//0c9w9cdfif0y6VhFfvuloGxi6G0GGNd3p+nub3/726MMWDMgTARRlrYGGBQNRmlkiPSETVH1MiwsMFIRDARqwkrwMRoRCzoLQB4qOwe/k/39Mw+MwJDWJXLCuVvhjAj4e4O/27W/0FKbXamHe+suM/ufWb6JUZzzWRM2ikt4gkESEiIC8ESoAQ/Xmc5X2Cv3kgyhbhKHa6vCoFo7QU2hUDSNFa2s7PdIZK9RZOiugHYZrFwOuecFbMBA5MQA5GWEklBJRVMFBUFCxurURetGDmdOne7GYvqv0VfbRf1/PPPye4nntBOHiRRBbxOQEGShSlmFNDevbrXu7PIEGTluVJ5JNCLA8ROAdgFcnHsMjoFWpaO4+f5/9+vct/3C7sGiNQIl7WqQyDszMQlNhbfSU3Ah110PCpAFJq4h+e32fufMEDUZdx0rq82d72vrq/aiy4eHxCDMhuJVqEVHGn0VIxZebMXhcPjpv1LAiEKCQkREpIQAsELXqpQXbvO9URs939pdl9FT77v/s53PtNOvEp/ni79P5cD7SyzEYq0fWRSvOcvcmc2/QQeoIKpkjRaj++FXlq+PknbbKf0ClCnpQNqGgC1/84BOJQE0pvBNqMSpDDtuulr98ye93LonOjX7GfmI9Y6RQNJiJHEgHezb+hKu2Zdk5pDHYshGop6EAsEghRatse5fdqfuT05s+6eWeade0uJkxTwI+av2UGGOTRuxh+RNHsrCHeq/Ubt0KY1kkY8gtUum2LHDpDzQNBVekrpuryi+eLjN/n9lreSKInaiE20EqJJ+gZ32xNMDsdYd+AbLjJB1K81Uie0CaL/BHTzq+LECEkgiKrd0m5bfWj5r2oq2T1VzmSAKZ/46TxnblVXXe8OzqfSyKvIsPU5wM+2PKbKYxqqcIDHi2fUDgAYcDjo7ngblKT/MzVtZxHIpWRaglIEHaGQi0a5ci46Pxedq5n/ZzE7s7vEYEGcgAVwB4IXQOLCAkeKQQkgFADeySGnSs/VglSAYq5UOr0+xNJF7aJ1U7gu7dq1/69Uy2t9kh/T1CbQ8qE2Fx0/ZxxaGofrSI7p7MPFh1OjAZJAk1w1QMnbBKWZJiStm1QqgqRfARpOoLRJcg5ySPkDkNZFUHouitpnSNpAOeVjvMV4uPh2WPuafkbVr//U/FBrrSynJOfAQ4Qi0AD6j7RBmi9PuWTXbJJDuhQitNnBgwfgBnQhQ6NLxY8d4ff3c6X92f9ygNmUti5XYiHxC1dSMpsDopQ4x9mdk4C2hMIBuuwe5Ti3WzjAOgDSCEJWyHpJwpaF8xWuiIPjQ4CBNQxA8kzWqqoSgb4Ni8pon4yd4fVdv/am+u3at5RRbCeY8TAqoRvKMFSl+Ehu+a/9k5YxLQPbWtRyFRcQltyPYUyzYuDWTq42UyNulClb2v5QM6YJF+H+TEOSVnsAFbC2mb2Qfs+vHxSTusbSWCnNzdjP++z35fEao6iEEEE0gEidueWAENgaU+jRpDAmQ8sgtgKuqRgxqUyZqTyVqfW2pLZpTZ1zU349jyL06of99uct9deQRPHZA2gDYEJovvrrn/8GDEJ8/kMQwPsiAGwB4A+Ag4GYPB6CFwHSUenyItJQ/sPowiXXbr+XPMUakdrh81t36V/ydy51LYyXi8rcw+yYgY3xSNmXPZV81U/NN8Pv6nvB8r7/btf+IED5D4WK/rBQ6V98q/T+yt+Cd0sneqcYQPx9f7jQYdJVn9g1XsKFSOlFP+9LoeTrP/326Cn53Qj63bj8u1TFPWeTB+HxD/Hqh9TSx5DIf/tJewzjPyegXvxLeRHLeYHLeenk9NLd/aU/9WVwycsI3Et06iu7gFfulq8QRFjZr5CMV5H0Nx6QN2GkN0gqBL2qfPOmE+hvw3HvQvkHEJH7Lkb5PjjqPQr9Hsf7YBv7Acr6AJd8tMNWnt9vZCYPYitPLv/jLerZ11cdHhPPHzfOnwpC084/vvjwKWbPbX3k+igifP1Roe9RmblwQrywEYYsXXgoNnDlwmsrHjuhi+vcxZc2/BmRrZPTl+6SLj1lXj5uXTkmX7kFpL1XT6nXTogDpK5HieC46NSI82MTU8eFqZtDU0+Xp15c/C/app8e/ff08H+yw2fD6xrO8y8FJJJGCCv/F/QF/dyFidfg+gEAAnABQHXwH4UAQIP/iS38emHhVwuucfSpq+RlKnGVhVOj5dOd5ZY5RAszrzbXDpTW/P3n+V7/P7+7vpsj2uahPOMD/ft+HUJ83gCwOPXdy4WyBIidYbFVqCOO4nsB75zSpJgkLygMj5YXKkKS5KUycZzZTAq3AeT21CjxFXMNNC7LyTuACgDcEMDxbWQm+KcVAw0LqgUSbPznkHRMNN4cLTeLDhXEIqvt63lgAFh2JyCgHmEKY+3qM/0ZnaPloVtwVlStt5VJj/x+rMMiiCYBxPNDNKCyT8TO2CJYo6P874/9w+U1liggMmEC49ciJGL1k3l30KDQCOTOBpRvvygt5fEQHVq3J74Sr8unAUMX+J8DQAXHAy0cMRHmKTOViCYVxAgDwAF6xdDFMD6mIxfr9HPpb+0kiaSvEYRcs3Z7RAIxYNQbhwT7dt5V0YMZoEQUh4LRQr0kkygAMY9gW5SYV4l2Ii1Ls+5oajouxtKToCT8e62lMFShnhGzgcJvOoDl1ktm41ib6xOi0Ks+AMnKxBUBMPMguYnJFxTzfgMJ1L9qHf+1q+C12zAd/7/5d57i73kJv8fvcJk1PNOXPtbLelgPa4/WaiEaiLAE7+EdlKFZz+Qlj+WmnJRRGZQm/KdLrIYVWZ9an1jvWm9Y7gKqIjy3tH9p79Lf1D+oP1C/oM6p7xn5eOSVkYsjj2HTWD+mK3FwevGtxf8t/kn5jfId5TPKh4a/HH5l+PTwcc+kp+ihPO5d6B1MvJh4OvE7/gv+Df4J/o7j7x9/4Th2/AF0FC2j4G70nl44uPDiQryfX7AfsS+xGnvHsfhjF4895p52F90tapLsqzdrh8xxD5fQhLqFqip77XklLtFa7ycIwqqF7GtpzVuzraaueWgCHXACxiFthPSTz2vI8AqPvq9tjYLW2ppaXdvYytZwnkCKBATBbSHLNmcNbjNu2lPHBOyAvjpluA8f8WKhG3kuj42WPDBqJ9iB9SjZNTWjUth74AXnF1t231yYJqkvphwmV+lRmJ10NIT64mPqQ7+YDBGBSccetpZInyxdK2iudV5JAF2OzFiLDyALzlFhrZ3sLWeOcse6RNSj5h2O68WTZ41aXq6twSlTjovQ9Jr5ZN0p7o9KGjxcYvBK0lgzehUzGeZE52fcWoliT615x7UxWWdlqvf6La9Lx9dLDF5xsm1Grxi0V1K8k+LqqEcCYAyKY/Irj+ETAGgHmwoclKmhi9B4JU1pjpGAwQVrWq8iRkE+7ZzBKyHMWHmUHpjRq7YR0bKeOdWXGQbvkr0lqG7SLoDkikfMRklXcQ5CzdX9UcnU3Ph19bUWPmPw6k181IlePelDg+wyGIxcxdMISW6N1a0pEJc8smyqrgeZf2bvZNXtfdabqvpSYxuq+7zABzQdQH0LOJ53YGes/Z7pVk28yaU3OXVep/Y5hz6jba4UxM5wg1qfXxPRX7ngmYmT1TgghDdVjR1Sk+qxXvYjw4IzWuMvTQfErjsE4ZHCiUF706ry57HVuKcEscu4pLziqtGkUuPqUScZu0RKUwYWsqcBAixNfr8b0a6mxr+pC5hDUy2kd/MTgC7l27OgM0Yk+LYz84QAjBSFOhHjiSj61IIY91IDp2SGbxrvP4LqxnWZzwklYCjGxoG5mVEhpij79AZD3HHQpJnb7RNEwmIE1/GtqJnOQsFQPEPjnG17XCCFXNnezZswXfy6mdzpH8W8HXgkFjKnAaYIWI9LouQzPIL1YIpQRyuIA47RmRUFMtO3C15C77V2hAnRCQxXc90nHLbAcfMLIufcX6auMGO266SwtfIy9b57YuiDxo7nyonLaeQkAk53ZATR6yavE0N2DpWspDvVwPluPlG3GntdiAFUXbBLJtRp5wuRdYBexUS3KDbznDUotS7AdFsAXcGJrsGXNGdWDjHrtH4xCFMo/j49rnBGu2VebpmV6pUAMUIp18UIzbf9LlHw7bgvtVRQDGDhosB5+guFuper3Pyk9HzqK7UYINfZga56K9k6VWa9tOnMQ5wxFht7Vc9JlvrMk1LD8TCw9B0D+Y5479aEcHyr9qKm3iYsnyEkZmFwP25aJ0jpBkG3l//b/jOdKdYpgFa3i3FBN7UwdEUnzF9iH+Y/WRS2RRIVtuXM2ce0y+X6VR932+sIb3LvdPEu/X8+rI9yQEdyY0gw+biuy7YQ/RIX6S+R1buhTMMA7x0h4DYe5wlGM5YX7Oc9IlM/C3gHCxR3s9r6ilb0yIYsgIDm730eQq5cE94ibOQ9FjIxKjf37n1wUweAAM5sUxIA8D6eiCAfwJfyknMjHirgjJMW9NcAMfGb/XX3t2daaWW5Svne9XXQcBl3GPG6hnXfA9WPwwNrvL44llnnaDa80Vpmy75nf5+EOEHyBcK2Vk4tjOhY1jBQn4x3MnQsPDM6abmK5z/w4dHP/x3tq8KXIdxCIoXck88m8O805igh/IplAd4/TLW4we1amPxPIyqgMmkkoFoRXTEmFC5hzSJCG3mIFY1RF+byj6WhHSQMeD9PblPBF2aLoI/8HmgXqpdSjOnQxOZT+2ACPy8RX2/ipB8xLfCLEj4EOeT/IG1hwfzGIBATwHZ3hX4jWb5YaE/FjDEQCnY1S1wyqxWGA2d2aCu2KK0MZaQB9JHuuLXb7aPZ93J8dkYj8PAE2m/utGN/E37kGiwtwCfPdunrywVoJaMTGRW4xwpECoxxLwDZ5uwPU0k1fPuzQUODpy+FcZjUGTXIkPVD+h18pz5PUyi7wtEAPub1NW9WqIcmS82+zUkbmrW6bFZsPWZLIWGJ5KBifQf0W8rxj9giUD53YQQS+InlocQzRcLlKuBrVfl1zhLZCrFRoXseShOlAnMls9atkpd4/LIAedZxUa5Mp1JSLrzZ14fcBHl+nfuum6p0EOGL0FKSeJbCuFj6b/unSoJ5ut7XBKMQhTDb7hxMOth0f6m/65564aV+OJ+33BAmQZWUgvTHUEhSFYJzP7TSfZVbtooXoMpLGx7DFolaLpMdvPT7wz3iI127DR4L5VqMokaiarfmeoDmmleeuI0jI0lYERNqqqx5yC1PDgxXXQmzkMUPU5sTCf/Pce5YzV4GO9GCxVgjsRW958Nbodp47Q46vnheYH63NqIXXXLlolganXVt95cS3A9zk+H++fmPY+adJzS3v+qcuQv8j8y7qVH9veBAqD/nZpg+r9ydl2FzoL2u+/76o8rbd+BasN/lqI/vgSpy74UzMV3D6aCaPYt5n1Lo+efhXgRhigJdX4KhCFRujZlfI3Xk21DvCT7gFsM/cDR4P9MdNr8BpWH8B7WO/Rm4t+37b8vbPyn76Jt2fvRzVz4nceBzf/n5eR9bPy+y6QtBKr8gsu5LMTYUatPHs+3Lgcq+HOrFlxMUfM3T/q8Fy/3GTPnf9CX9tkDbD+OU/OwN5P3SUM0vTdT+KcCmvyZYertfwxt71ccqTtsXc37xMy91nHaN5J0MIUnuPVbps6GvHy2/9MbuN+Mb34565NuvVb79evoHu9g33un98ETt7Uc7335y4xOH609El3DR9hwKHXo6YuTpj6hfRNpH45ZO7IqdeOLB32L53yHQ6UOrfnf8kT+crE0+svGPofbZN7qHhJ/+iv/u19JM9Wb4cdTSP8ewf18vTk1Onnp04J/nu/8KuiT9ztkXsi1QDLSKKEexE1w5sfDv8UXv00e7Gw8oQA4U0t4/P/5D/8oQ6N0cX0CWVpyT+YHave4C2KYCcNl5Xq7XpEnBjVg09YoCcDhZ4ICuALkelatDgD7jcoBeBADkMb0FAA8JQegIABx0ACbwDeeKoxACSLkgSowA0H8jc0bapjGCuLG12JHMswzMX3sBjIYA+71yrgWQQkaPQzj+3xCGX9C9Tw1AHQNJw4iiL3VL+I1WAzoEo35wI8HDrDs3hwzAv7a84O/TVvIVBCCVcqEiPEVIBPxuaXiPNXQ29OwhK74r+lb0nRhEKNHIhAGP4qPkKG8EDc0wjZhRNDqMgXs/CY+bfjPQmsvMSu+UAb4x+ax3AoQQ9a2cIRnqBy4YtX+5oKT2+PzZ+dPz+7fpFsiq2dqsrRs5Aca/+4u3Pd09XT2tPad7TvUc72nq2dtT17OpZ9bPX3jT8RajT75CmvfAVN5gAPj8s0C9xHK5kTU4lHoLjd1VyhEHyFMjX0znTUvYSqsDedYGhzSozakD8uSRtT1RvWqH355tm1hltolWZbt0+1SGuQLIPdrep1BqOM4yXZbqNDjpyS6LNbaqd5YPO9ZTOaAxSC1dXiBQcn1T7krPNt1eRzTLV2FLmEskVaw63Xa/LEXKbTo+fpM+qbKV2BCO0kjp922jbQ6Oay29M4CzvJB17eAhx21dmZWZwGYxcQak34/62Xu97m6n3WqKjbpQq/KVcqlYyOeyGS6dSibisWgkHAoG/D6vp/b3cHCwv7e7s93rdtqt5tULxTF/X74dBgk/mR7b38jeGYQnfXz/h7cWIoF8ZhhzBHcgtteX8qmx1hu2Lw0wU+72x4mmP7S9U2YdPsTzd+oNuHdQCZW6DvY2PDS4K3fTbukSKEll9LrUvYj3ianR3wNjADGSCTCu+VYCz7QWnEl4eHSefFnAmPOMTceWZepblxREncPw5DwRjcp1C5RQXQnJcij1jGvEukqg12e+7VwAMtguG9RwIH57tMNvT54SQRge7Yt2FrjOxkz1hfWGadDaSd7XpV1VSB+itxqJoCvF+HYiuSk0VUldCc3Rb6flKyEl4bFPOxJtEB13MQLcIBzE9Ew2lA/1Y6ruTe3q4pnDThAupDXCa1yRIxMhQW5lLzHLkgYlWNwxYrCEcjPM5C5DxSqPOgJCKO75m59AKI/18Bh3a27dnaAyakl4Kr+yyH8IYCB8j7AMMZLF+/U/mG23FUzdidd/MjI4T2bMnEDQ3Yq9sPBJD8wQf9uZSr5FUIYtW1ZUj98eYKtRJhp1LNN0LoEMQrARvOFD4kmiDbiB4M0HY/1H+6d9oFiRJDw17FNtrV57sqGy8klPk4NKzVC6lqeNFRucyhtIWYmL23QdPNMZczPk5xnMfGQnLI0PidmbjexcoqKpvQqhYqahfo7wTEJm8pOZxj0iiagI4uljhPHjwtNOZdqYILIKrGf4My65pM03mvKICG5f5mbmI3R6hTiCxY/NeAZd1vrNfH+DygSj7qlZ3ztIbs/tP5eIYJo076alJRvH8WbFU2vY6uWvjbufemy7pLpwLTIUzdJjW5KRZg9HmiTXH4AZAkzx6VcVfnhYiUZbvOqB3PVDbSiNo7Etb3RhzOz6061GPpJsYNkyWVCRvpfNePazvNaQDDw6Ac3c9HXLeSZnDT2Zz92+8DuOizrI5aQIn3bkt/OSvliaeHnxYdxm3M0K18YFgmda3q2Vx46SyBjTX0CLs3DynGp+zgQwcwOhb6nVu1hcMLjkXfl2Edkmqa7k2/yFNY0WaUm+B1kaDZMSascCo7uWZGSsB7MPZ1XZKGO+GORzccW1h+a0E6fFgsxUQsjGKfiPDAkyoa1xBg9oFiULTK7anwvbUpVQOepUn4LFs2ggp6WqNGXrwTldOOOBvCYzXUDdekBLnsd5gWPeNN8bCNxC2M6O6Q3XHMcp9PpQtgZoxmpcZQx01DQlW48yAWwEqjVqgs2vcanGG4SV4MDNhlabdUd0/ghWiqxCjw8x2tOigprEZx2NBxRQHaD9HeCVTN9gU/y4i8Vll1ZWzRkHc1ddxROUvTUBJgXj5Y7MCLevR2VquJmBiZdwslIO4xJQzuabHUbt+kqZhvQs0HSZx5qqTj3PnBGWEMq/xWyW1Hho9eiIj3hEfKL0FQf0iVWm5FSy3cEeRszxieddHz1sbCIeFca4Fw4CZqbP3BXC6EHogYv8GTJ1KbU8OvzAgFLoW6leEBvbdfQGJguPx1Z0gELxEQtVZ/y9l5wgU5IoLObTGeJUF4yr1aUU0/AG76Gw5pnPGmnpHDlNzrmTBu5K1ugQja12YXwQaejn0jnPdrUFMWh5JEw5Teflfmao27UMoJDNvJczfTL7swT1YIO4P0f1TBfI86C7yDfwVwJU8c074ncmQllgvSEKFSejPOXPXJg46fZ9ARxuuYsDJZS/AbGqO2bpqGlZbllakBcauXf56dgtlAqo7urjrGSiUsU5RUBFrEkEEbAFcOy1Bp+BXPVElBN+KB+gJfo07NqTu8idShds5y50KrsWMtBnX3OzFqSVU9pZjuxGKnwGgbkFaZFAZIv9KO3DeL9KnfE7fyiT8EKe5c1xVBZtzm+5ZndDEuG0YMB9pS7NSUZMTgHI4JVpq8xqiIoJmfRcNT9lmFUTWFrkHdfQ4cjii7a5OLfwS3LcEjj5HHcGRzohXTOUpZblBQQdrQKeuc3KeXu8kL7Wo9lpaWOc0G7NQ9sPsHUEwLPA8gvCgp6U8NjV0OpPQZUVbrn24JzMLAHnyr7hgrUUloIEYRK7gF9SPvdX3AA3n/7bm0/ADFVi/BPAK9i9CWXzVGCRs82SlpxJntt8kxrKJ2BS+X9BzsCAW/upDN1gIFTv4lUX5KpPgpXPfwu2V9b0JoIleeyvh32gNwiTajRwZc03EBV/8TWMvcn9Xj8yfrBBJVxQfjxTtaxlrBQjJARmBNl4ywPX65Ku2ip0fKr12TZUrYsNnDq7WlQ28Iq2VrHD55TWICwGO5iZy3McILx5gvKhQbOyyZh9jMtjXKyuPuWve8sUNd0IjGs4x28tG+gxv8rvLNbG0PqF1IwA/IGRs15zvao4kSocyhZLSKAReQACko+pfYhLdg6PnRDq3/H8PyHBH5DywUh4yElo/Ab57PMfqbjhz0DefOS3xTucx1F/gEc0sG8ULLSGbX/+Sz4vWsKRjNr1yknBY0KDmjCaWBr/+0oewPHUFg/cgOh9Co4A0DtURfaAWYUAoF2lIWo9CwpFLA+/wXIYxFfDWg2HFHkaWgcgsBMGCEADz5oEJ0R5CwA0Hhi9GQA/BBB6GcD1Ggh1NxcMjQPPyghwp60h5GDFyUOk3IjDSaTPfRK+sVAODpKEBN8zTwNsBaWB/I3WJNAFtJNIujzENbjWCOPuMaTWY6fsre8f8b0eklUi55ukqbATtbBaiMNFBDQQMCvuiQboMY611vQt7bHXEPlUhYS4xpOxRJj0jT+2NSWRxxSd4/bs6XCd9FWK/J+IyJNG1Ff0fRy+te7KO3IHwpLU1JUU3JiyfTVdeiDrDBqNYevHuJ3CZObXTCukhlq8G0qa8xiHx3mKj7R1N3izIB2PxzwifpKIulW38VqraLsOMyGtHsK2HWMgrTF6i2mFD95eUcYUaeV9cl+9T+aUkWh2fhPnfEqmRSJaED157ykjotb4SW/Q251eIuGWBqJd3EZsqMS4ffH+NzWaZ3c+AOpIOc6c9wgJ1jUawVihXEMih+wItROVcyJHeYofo35SA1OqT6kPbB1m7rViovQ+EQ0ClQTpzGP2Ugr0p6YhxSOV7AOwfdk99Xmv/EeiGDJa7PY6apt94pqfugaCh8DhfbqXM/sxtKoXdFpzSi7iVObHs/xhxgfI+CYxSO/3nfAqsJjQmN1KivuvV0jRtD8x7FWjoDYVTlbFIVuDbitH5+mXzcIaKWhd8z+WQjYBwRXphJGQd5ULG28PnUgAdLvWsS5eo2Flfdtn76x0eEGdK0WsLxIFxTSwn0wunxrljRkqyLdLx7SErOXzrzsGdWSbnGomgtEEDbqrhHNs62Slz8ZeVDSoJRqLzYiGYLxAbnTC1wlmlUY6PsJA8JFj0YQuxd3eBkV2GxspRSxR3C5kyX5WAImBemA+F7f8iDkkBECIWDXeVprUMfrs0dhbHwfeZfdEDoguPZQeDN13i2NoTBSdqRKKEyGSWVnzSeLUR9dNcYQIQV0+TlFjlkCWOdhZJB0YjdZ2oU7/UOchSepP0hRVcl6Ct/9z4wmgomvb2TYuvupGEE5a1dXm0taqlSmROAtPEDFHth1ySldhGDnlvnTJAjnavHvUrwXqhN9aleebkI3nMMQL/9gilcDVCuQaBQd7w6AVOaOpBVHcVsdjh3VbYBYNCBslk3lbnkRdK1Lb5srudufpQjz+9q7SqKHr/OfrNgUqpVhHC21ykAXIZ/JXigXo5KZbrTeHeV4iiJBKAvjzaeMQQ1h5JQzIJAzxsx7Q9i95rjutKWTyQBMt+xUhH3CgTQdqTg0klbNBqLeU2o7u67RVhWzJ3TX/+2GeD/4YmZcYKSeHaDM3UL9eDu317/pztPSr0skoJusQ1Xy2HJAt4/KlwloNtFvcbHPjH7sUGzBTI+CLK6VB6dI2NeHEkQSp/+2wlZPY47SkHdFJEUuyj7aTcNoWv0zZzsMFAS7qzOe8t0OZ3nXo2b9OFK2DDJ6fjAeX54YHac5TWNWB02W3e9S7TQUoqY/TTfBGCpzPSzKyllcb6pwgwMG8VH04HFREpn+O3L6KTpkD410WhQGE7RzyUGHMbU3cWwA5s5pV0Ke32TEs378UOuTtW4il9k3jKvM+X5jFx5bgPEagTUyMgE/Uu2K9agWm0YouEBmCVes1kHXUOmF2XpRrYz+PFg9Rm+JZfs2nXBePvcfL6zzTRMvTIA6EKZ5tkf/Mtl2z2O+TOsp6cURJ1px0WbhbHjqSCNVyxJ/1rgrrCA7pIkdM2f0YQRU7HvXMs3En08EHnA85aRWGNDfmCj3D0zsChM7UEuCQQwEFtM9L1WLaysUoEyoMmRyyjeljaUjqaiYbOqFNR9ijbJtc3uJ6nGMZ+xFkWAmMkfzoJvB5DbDHb7F1cgOwOmbM2XqoibkZiDEOWS0AswSXFnx9WFoopOAXfhuz0qmmlDVHFiia5px3vKbyKYDmzA6XFrSqzkMVnlGS6BbM/bwrM+oJE5AxwTxdHPjQOieQWAQd7SelvoYcEAQV/ShhZPx2wx2yzVGopQRldSOziAqK/1fwu0v9Qeg/uLcnne+dU3S7B/zg7DB2F3yD8LJp5VDGYkBXIiSRyl40ZeEcNE+WT68gYw10qya2AGpj6hTv4xsY4FT52Z2QugrKqoxbaMHg9v7AY/flfNsvY98gg/ld6hoNgFlq0A1HzRFc5CEfpXx2nE6WtLZagju+aLFize3G6/7MrDc3vbutGNCL6o+845nvMDKMKjSd3WRfgo6p+v3aMlYkvJiDtF5Z+L1clSgN9T5HXBUnnDkRPKl6jpAwQKy0II/MBH7ogRPtxPKzW6AOuK/Wmb1dWMXFLTSnnkBgPya/NQbyC7Mdq4Pic9BUIXvXev4BysHMJlte3Vkp8YJpuSzaE2uOpmT5TFCfC2cndrZjPjYeq/NiOfeXslWbDSbQnKMyz1/ZrGCMWzZsQMfXpIFD3d3tqQ9xKh3rcSjnn3a6ovWcH2lhjx+najr3Pa5uRwhqSqljyoXe8w2inw0mFJuTMITHAJa4Q5LDp54NOY4oLwgHwY8dStUPmSoqvhdB6KdOXJH7FkXw+INoK1jjhefNvc+QAamzsyVladOmxlRQjEJtwJI48JDXJ2y1bb4UrLj0LLnoByIKVm0/aiw6fWPh9BW9N2bWlS9ed1ETQXjaxkZNE9eC1roq0Yzb4y5ucG2f9QhAmX2G839rhN4pqG2f3tin70pd4xQJOXrMSrCtRW7KqmEuLpCO40UvmGvk1h4qHg09B2VI+82areMWOgyr9QCsG5yTZ4HUOS2MjAdFG+/b3ENMQF1YZl9LrhJPT8jDyL53wc/RlrUPtFg95/NgLB3UObWUoamE5JUsrDUZd2WlAdUL+fILiwcArKtY0F3xE4xn6VSIuAFp/0ibWVYukFmSUlhFCr8BtSMdcld2qfdedsgeLLPKZWY9FK/uq5qB2u3F5XHvTR4dZwN65ukYwVj0sME1oQoEg/NaQK3l59lLb3UkZHs7jgnP57Spe7ajo+DrmrRtR8ttnScg54fTvgsWTwJYpsmpsdMdjdXvmsRporKtfqADfot/p5p2cK3VbafkU1zzEFSr7ArUiPoLzAprElQTfKBUEPXxflHp+XpABBExQqrZ/acFoUzfOBIWB4VDF4tEJC4iwdf/RlbMgXAoEr7LCUuCPqAPcAXwou/qBK0K/25wWg0SfKufknlBdq7vN0Vqj3cUx+t+0WPRpPcO8qQMLOv4/61bkf35GyGDhI+CQQlRJCIBDYXh0Q62C4ugHVnWDm/gVtEqBl+H4bhWwbkzjUo9jDWjZ8xsqdJxHAddEHuheUAwVH8zbtXl17hhWE5YpInm5cINN3ywOw8TPO6HZG44XgecFPOaU9OlXTOsYpOpsonsjTN+VA9YC95lHyhhy4IefIyfUpPRc3du1eZRXtm2kq2MiOC4LHiyY+n1RupmRQZKgUUHMuThfk7fLmfu/vLokeGXPYLBX1w7ur/0a1i00bEx2gSLy5oYG2WOwbtSoQuLPS8xG27Y00Y9nFI48MvDvq4vA1pqhBp3Gp24WEe9wd+ufr2Xym1Nqx2dr6EYmlXEUcfUUY86+VMaB+j+8tjsXz1vzIWq266m5B+tyY4f6CxOQ/7AyYaVUeXJ7Ubaht5t8ek8flQuo3hfW33TqSRcrMNmyNCsmEdnVdHiKwj51fyETBmEmreMOSs3honVeylKD3R9333920EsvNpDXLVPodW7YKLNt0JHMKh613TNPklltRcm/OARbHS1j7TyQHpZvScGbe63aAdqayl0ni4F/0o4JDiWNpw2IvjZVgt2na4vBLe5+p122Nu0d7R59Pt3w3izpfLsOWty+DDG6EmusEvwnfWc3BpHsd7u+6kv0JBBwkeFwYhRJCIRDQvDo82DDIveJotD3vaL23C/ejqHcFSvLclrjtw5msn88kHMvH1sevjuXAYz7ManKzE7WhoKClr06B1XL8ZYNjep1c1NKEur64ctogFcTLJ+FOYb9Yn5raEt9j6nWhvalLl9E/FGeUVPbUnWoTguVqDqaqLthSQ1nhZlT5UUpZwbXs9TxqBMPzqi78hSaZ2NySnWZlP20/M9VZrTX/NWis4AkwL2JgfehcovHN3fIkktOh5e29PRqx0mJlbyVb0lVYwqDxWyiFOQEPM6qefF88sepDXOY85hzuk2SN3zqbuPdc+QGwQIHSZCZr6hgtr1Sg8fWKXhsbxkpbm/5sGvReOFp31xvvvJkOuwVJWRJOzK65nbv4butf2bE46cuj9IAR7na6181Pn1wL/5DwaO/E94ICjDzLmTLt4WeuLOIZHdlsltLyXMppCU6lMZmWfbB1SPr2k6c+ZZ9YcoP/14o+nI1GxX90ivvJfN0mFx4MYEdSnRwxukd3cbvF4NIobbAvWXq04n5O0uSKLX16QywKKA/hx+t7xcM3dX0rXngTB/ulzB62vP4QDJviUKUlOKKn/3GaYFMCl/X9fBweEuDYWW18oX+6BSQNVCfLHt6TqNIT+bTs7UUeM9aB7FdHwWNbtP5YLjxOmBfwseDhx5JTwAyTX376KnWYZ+d/egyM5k0uK5lNkcKqw6mZF5tm2g8Ml1bbtynlV/mPzjZ75+aGqmu32kL72PxdThxr/7wlKShwzFnCQfDyUTiDE2x1ilfL5nHYc0Yowe5Eo7hu+s99TWOOknDGcEXo+PQchscF2/osLjErvsSV/oywJmKd7GFJbcON4YdWiXllikPxX6Mw0i1X1ZY8XZHbfxMMCZboXUNBwyHpOc7JuCzdTnlaXtCiN5R+pZASsIzdrtUyOi6NpcJRWFRRK5zgK012wQCRsFDzNx3wfC4Fi0Y07hI0nAMX5XLS9JlJtjTsFBjJ70nL2j1yYbsq+ta/RJI27Wtj2bHbYpx6hIfHJmyKxyZdd2y/bZGcvcP12Q2I5c6XJz6rtU9hIh8KrlAx8G1/3MO7bA+bKmwb/4jKm9eJ86e5KE9UrXZ5WLi5RTph3bNl9gWwRlVMoi9/iL5q9T565P+pw9uctHf7I/ffwKy4Xlym8ZdGDaE7RTV1wt9Iv7bWyPnOVhGsr5yVbmEm9vAqdT1Vix/IN47+/mR/BOKz26Ut107so/BT6hpw8N1nLIxYfRTR4wA6J0ld2wN+5p6/FCy1e9k6mTniynvgS3mZ2lzwOO97HeGIU2c+c3x/xQdRXC9sN3Ej2MwVY8m/e/z1/kGn9tB6SW5efYw9PouZ/OMv7f0rfe1uBgf6vfgoFJS3B//UNJn8St3rlw/PD0O4kMIkdYz3//31fwL6DPvYpYOMR898Mci33iS9mjQJEfppfpvR6WOf9fL3v78lKx5Z8GV1q7w4FVnjNrFSB7J0DbReZxFUDV4HwhN1qNFubVUNr2ie4/KeaQCBEEmSUCmDRNDA3sbk6eNwos3ly0vLWnNbpJ9Q8jMNrqKOz4nfPEUpemdes0D1rStAVLswiTYqSFvHc/ZvrPziurAZPlq39dHRodxW6qNSlKmnnYW+zk/ASZiztXzHimFa42ChnvMj0dNnTBlG1SvbkPk3DQMWX96RjPbvTcnznD4//kGM+z7cde9LICv/vhod/yIJO8+vpE1o5HvWPjD3ozdpxw/YT+e7y/O9vCCqhYdN385JoIZWysfEI+OBc71npyu85wD7SdiBY15Pcsd7T7rDom81m92BnEz/yVO7L90PbObXYGIRaPfRCoF9qLOLsbJXTnrq5zCllo6hDaq3vuh72bH+3uMMyVu2Gs9bXVi28l+zi9O7xb8PURqvt9uCZvIIqRx6Bh5YPsumChZztDkhZaxyvWGG8JmovPQdhAeDfDcxYiFleH49OI8RhFB6M4oDp4PlPUv7N5AkDiXenH9l+yZQ0vzu2p+Hn0M7U7XEC/TcvnT5y5eKZhXMqeVh+zovMWPe8uTlhtc/ZppymeWc6yffucU72yqfb4VduigpNT8U1o4/PgogPXln4p2H3MiubAu2x95P6EE3HxqOW84Xs7gRVne8Ia0g6un++QdMVK3Tpj7dPzzDHFJtGSsVJqm+NS/J/KfJ/r4FpLXVfdwps/z1i+V5LySMdOH3dBPah/suSurkKOh7jXNZ5wJP4ufRC+/49Bz9xZwn5/52z8WQB55CzHB2Dy1cdym2HRG7Q47G2/aAFdPo1sOpf7WX6OJrBc1Xulbrf3Gorfc95bLmbBmsubzawbvHSkfEa2iVMBipvAEeCZgXY2wL7kM9/PrL0v9Thk9jiNWesnke8mCtpzhzbNbDU9aYr/WGmBKnFPGNELqqOAVhBxMcYtV0wPFivFBUninuVDh33sE+30+C06/9ZAypii/trXnfKy6t9O2FprlAYSt3v1lAC2cF7jta1C1InOrdebHy3uGnx+407/XZDCtu9lqe7PS576f97/YWAPepqFtdjWekQW9suo37fqyd91pebyW4FNfTkNblZw2xu/uEquv3vu5dcEieg/MdGmOeaSEUDmNDjtMX0hTqgNRjfPdp8/636z5fnSroEPly/1PwaBuMK28+VZzwwZ3/Dq8sWxzAMgHrCHDTzspdr/obrmzwWtZuOD1q5G/b4pyz0EgMy8T8t29lefsz5nPLfOXAuntLAm97DyYzPtdQG1LlybQElyWR3T2vXFxwfvD3Zn1HarHY+gEuAoXDLBn+edbVRpZMZlfr3bkABRknPR6Z5vLn7o6ep68O/mUCzEU0Gxgq/NnzJ0Lfqu2dQ0zYUL0uNw0Ti1A/cUNTcoKgmfZBBuS7tTq9Wqy0vLtIVllWX55dog+0S7m36bmI1tzpkMvR+tfpYjmGm7NLTSXNFYU9YlRM/XxhgBZI6rPZdMNpK5u/yHIpDD/hA9MqLeKuAjjGa53Pj+L78BDk3+54Fr8tiOOhrgd1lEPQSnH2ztSXZ+fiaFiillueJUTt3p47cfqC/UbqkvbR8GkDmeiSPfa2DEgrdauLB08ua1oXP6wvqCA51L84rhc0nQYnlUfG5dUtRsDcFIbnDavdUsbUm5L0k3KgSJtyLE3wn9IHLh6fOnbhO7YrH36hk01l9G+7b65zD0fq6kjeBG4u267hN0Td4ivb6bfLvxWOk/75n7+l/oK/4xNebriWvdWerCniziWn0d8VR3RtHE/pdWEKDw6q/OyneqfztgC78uSBT/2cLYLDexPgIgz2u2P2T2cwq7PjSmtbCFHzu9oc6zFbXSlqZNb8zFnale738Finj54Z7vJsXAtiDamKLh4q+uwWXVv3cYzXXD6cEUM6e99QDyvDeSotZEzMyGWp87nY/mdxs+XLxoeAYKsBN6xW1ZsNtlxJq64Yrg/NSwFh59hNxifdFUWyKvjHZGYgOzMjvW4xrVIz4vduE8lxGyjqqUhCAoQYvJAmf6DjLYBSmtL/qW0ibBVE9kPX7nLl+muoyGg0VgdZHp4HSQgcksdLFS+/O2j9VcSbcO47ejuN01LXtZezHYz/L/rGqx+gyxwg1fTyY3Oe7a6pQT3wCm185wBDMt10bXm8sbqsq6UmLnarGuB102k3/1U/8WPOxIt+lR5JAD7qfaShc7sj1uduO67oIDw4b8hWQa/syGYs98cLnsO5tX5Ml9wr+1H7RLJ5oJvEQ/w55x+GLZ/HrpjzszHKVEszD7tJ3af+vfHrP5SnadDy1zOOU57DF8ssyhM/QU9BT81MmdACB57ufyOJ90V1G56U3YYTfuq7J5tzvvQXK5oZOZHhJn3q/nvvVGJwdjk3TRu1xUHnmgXgGs9lM5yJYudv4eXw6Y04vbc6BxyMRcX1YLE5BrjOTFwXPS2uaI2ibKhsxEOI8QlJmly7W1UPkzdFkwAoKb6UsFuLmfs28FBFKtZrj+FsqGjHg4lxCSla1T2ljkcZm6zFAigpfhRwU0dQFHdeI2ZSgZmZjny2ph5fkieaTw7LT2oyQ3/26Sh8wpJLIS72OwK0NQ0EUufBDZXeIcFK3D2/b+WhpBRRU7u90eVW185XF5+6cEEiEKugpFBKP7DKNtg0wuD9M3tnmAQ1rk9e4R6gEJ9VRnB+V4T3KeoNHrYXe2xiNhw/nqKxXWCxWy98eW0r4sVJdZT9kFvL6omgkmekXrr/QFc0p1VR0eB6sOPuP65mFwPKdBAPerIjxcm/LifNX5sAr51JIQtHgr1k9j1dSWktSs36iN4TBqsE2LPiWpoXVHgAaLAZdg6puTBC36n4vBGFwp+IfmhmRBY4uVn6YqNp5cUUGmM3QUSoWQU3Q6anx8BZXMleNeldyYccFvMivvnI5WY+44vANVjprOtNll06ajgaz9TGxt/aU1uNXC7LS/QqHDudPAvDxe2bX21YJ9YKobtIrg2gaW6nLwaP+Ykkg5MANoSGSquZli/S0ykKlktr7ZfbNg1Oe/LqcaXOWI2aNJQQd8X4RS+maCBzgsTUcOIjKhmpDly0ZxxaTwKE47pQL0XCJxsVUUQmPAvvHQMIwvOLQq9MaAwCItTDAo1BKBsTtio7p0Mc/m8BGVjePHKg7vs8q/ekltffjw8SmuAV26/McNlvTK8aJ6XI1HG1LtLHMJqWqd3X2wcqIZWugMLzPJUNJX9O8kM9Npn9obxO8n5j/I29o+SCanxYNB9GFy7t8QVwf9+dq6XO16ikNidkFEPEYMgSbhCcSUzjDlJhUSQuQi0cj0nfcDxJE1nrczZZvKkaTeKMQNRKYwlePBgHAGNXh3qbtUQ+D0t7sIBovwblI3aRFB0A/E4R12NDQimyzRrjqTI3tq62Wp+X/0Jg1dS2uRP1JxxCxSPB8vzDUjFKe5LocUE2ijDybdzqKKMnNNS5F2xjPbhCJGWycjVdLFYLWJhFa5K15YkCpTCoRypUThHlookCqtMhpPNzr/4Jqif3ldfWFcbOant6wEvsKTFYKLJ+Fi0oPJOMHR1ujE2t7qfEJ4QbaaTh47stvGPvx2Z7culSvIurXFzSe+laMd752j1TpfLcV7NPuglemJNLqGoNRmazOlLDyWG4vB5AWk4gVPWhGu7hovOxSByRFwE1Aqp2+07Lh8nQ0BTiY3Og9stRfRK/xYiSUInZnvJhIkKCcYAWRT4xl9VVNNRbsQNVeD9SLe3BwPthx9QL4F+cR38WYg3ZJU/uDY97mPz4r0ATbjbjKDsttDsykrsuBOS4DAkdlhbDPBz1UIlTPTP4Ro5e6wltsYDnQP3ImLXFfSsSLz4zaQO6qhyaXe1um5MePYXJ+sjRm/C/BNWkpFerqworQkpTRdIdJaRfXYCAbUBDeZm0SNFwx0ufAGio4iivBHdS6m4a8Xu8K/LZ6htKw/raS1c6lZ+dXpak9qH74VXl1YfXUQve164IZcYxQlkoXfaA3k24DI9iDX/wMUy048Lm5RXqVwgvLiEkhYtGI8rOBQWzRvILIgK1kLlrfwSrxePB9JrXO5Wor3bPFGK9N5dLqW/h82N6AQz3/ahhB3dFemcvhZt0wFPsktHO1EH2w9ijhmAG2ONjpdiM4ey5yAJ7ip01t9SjKYacgrZaEkr0GnEFoxT0lBlcMIYDAmCrEcgUE7mC8ds8hkAP/cuPW0dTbg2+LlfvZDSB/EjU0Lu7m0pIZcEzYnz89+8Rnu8DT64+/zF3nGr5XNewx7Bru73puKP1v0+/X7g/x9z9b9Pw/zTGYRdaZfJJXJpIlYmiYRSlKlN37eOVWSBlwrNapZgVKgik41LXdPclqS+9yKRiVnGUoNkrUUMrJ6hbLUROULDcgH4bQA22Pa7sCU9KahmK4TtbBbMLr/D9O8Zl9eohMcSWLlpAcsxZ3Ghspn5COz2NRPBmifbnjydcv++jsIldKg6l1su3zaAzv0NS5SwY3nYiMxfh7XGShKaFxIlixCw8kXdY+SCmSd3pIBghCU5RhelJ7KRQDjuVRSEBsh4/sLIrBIAQfPjkUyIgRdLHV8VQAtPWXEONKsHrpIqalZwWXX28/+Pt0eXxLqT5UrngKE+bOb2ofX98p3gZjAHhZwr5dCuj+8JNs3PpCclzMQlSPfS0xqz83N63/GNm5eNo37sC5fydobSvSG6Sjgc3B5zVASWA5PnlIkxu7dsmpaX6wUK5NSklvjEjqV53eWdo+aH7QGpC7oU7FggrpoXDVuePcayu4PTXGKyxqxoOMdw3X4lHbTy7oDPS+0umeDu4of39N000pdxIg/aneXNF0VMM13kTLe1E9JIsy+Zqt7OaRDxZmkxkYEhROHrp9Dg/MSEivCvATbqvSPNp1uetkV/CAGezs48DY25gHk+5sOgzBXih1pI/hY2X/v2fsSGoD1/BIlVVqHouKu1Fpa+n5kNPsWczUqsrQumoy/CPesYjs1zd+uokrcoib2vzScT3DW99yuDpC6RsagwYjZfHXiCr7fqf5th82CuiAR/T+mtQkBiZMujgACZCPNHptkqulPQmZdaPLVX91+ZHen79beyZ4zG64Cb7Q/m89okOPWvCzCeJfh0q2X7PqFDxF9CDdh/7Yl2Vb4DwHf9bD/97+eBPDyJ0PNSVbZHtTTthPZlk97xiMUVpWaTtn2ID4wufV0WeZTQ8b/NrVPrw7l7AWxk5pP7T4vZc/d0hhNdPGtsrbup/qK/05Xaf9+y9zddLU8Ug2i5Wd3R6w0G/sf3GzDrbal5qtaZbiTLR341TbZ8IbqAaPFweA0ZG8RM8gj0bMtKT8tJ91Bwy5QJCbmyTmFDnxpjkC11zHAIGvgN1hsUxxOM1QsbL4++qC8IF1eVpAqqbEqGVWFUgkCh0EiCbEw6MC79sdgLE2AT1K8REgs3TskmAOkBZOAXqHU56kWRfe0SAJZgWUy0Ccs6pkb63GfsM9sSiheBZBObFQ/s2BNRhqxRs+4Mlu631GvaXOS1xa0+LpAfdiTXPbOvcZV76ArtoTYL9oVM8x5TW0l/VLljhjGGb3Iv506/WJBHz6MTXQMsH9KUdCQVGdH8z/qNVNa+fRdK0pEpqXknXuNi95Bp3Ac/8hHZkpDYmKsCTIrkYvMloZdKKxVZvbDi+MECxXhajtmbjFOtLixlemXYenjc1tZ+JzlDbjafRMrP/vF8G+LPHknbgt9fSl9OpAVTGzsGAhjMmrC0hTEQRvFH5kmm8wc7LebXKtYcSjJHBtJUifsA/1t6BsEyo6803V83Dk8UjFotsnV0d1ysGLYabTzjw8JkO5XN+fPwi7Dpm+W7XfcJKNMb8HSL8DMbDZy+VG7rJuZbpm3syD6kdsMwvWqvtphvoMsLbe3b/l/hlnATjB4LbvC5l3feWDzfHt1x8TeIXyr68Pq/GYQUqLiJbOUAkU4bcfbBc8RD3MYV/pnx08CsYPPDiuHxBsFB5V5dF4axoPtJVVxC0aaGmVNUaRcWqQ/jxJ7D+tLSGIoh4o4r75ioJ4YfxSPnpjEpcWgkplsF4CeocdERHDj/rB0jCdFRTBiHGPf2EWdHo86PRZ1ZAw9+3dIYR8ONh3PAcvwzScHjkSWuKggj1hH8V6VQcjYhyFRcBIeTkPh8pnRLjZkJhoVwUaT6WxUBIqJcnS6+yhexCVbmeXdajFJt0jMhYXRfaJ3ym3lCI1vaU2yvYMPYd+ed88fGz4c2bf/7bNHhs/DWiFvaGKcNyRM5g5NjnGGLN3e3PQgmhbfn0EyB6uqeZE9JinY5fxoXqmho05MbWqmiEQ9XN5UXQb4hLRrjOMwFy2AhBJ8EQEyXgyamSqVMvkpzvaJd4W97MTxhgzwSXHvCLfWJ85U8aAAuy0sX5ccYdjMJ5ayMJza/m693jjSkktPEwlZHKkgShAQRvCN8Zdwka48I9losaZXspRtDTAgI/oCIH16qcEMf/9fQxotPybXrEY6zn8UJ9w6NmO8c3sEWFfI2Fh3MPwpwMjwBr0yf/iILaGtAFKLfQKRh2mzD8dxxmik7YMkN4wazjo4tK4qD4afnnpZr3G2ycWv0hvj4uuFFMtHdF/STBLYSL8vl9y+cs60QXqfT9593P+Yc/DdMwpATaRYZvzetNoZpZv37cr+w7BW/PJxqb3V2NGP3Js8GKT6LJFKrLwKzVD/geB0IZLLdw+KP+WUBeSPdeQcA/Jw47KxG/AR6FAlMD6Z671zViLbPfff7gDuB3OBFF/t2nVmRfXphNy3SKDqoDDAAMWaf6C3Pr0dSylOoNDyWviS10HuH1fMoBKL2rD59yjuGhohm5bdq6ooNuRn0ymZFVRHHMwnDwaGXqXEWwM6z3HnoNjWZCrIiAYLH7dyfvITv2FocrarY7gH8OkmJrMi/kLXFgKmAQvgCdQAPjuNGQLU2adtNjEt4tOSuJK+5Uu6w/llIqYBJO3hJY/GSXpqgGpqcKqrqTyqpn74MWIRPZqkbZbDaYmQ9K2lF4vmB5wbd8RSzkvbxLW0JL2X34oc46M88jR4p7XYRzWZADRWi90KGB9ur5Z2lKkDW37AK8BpSYiX37LtKwM6Lpt/SfQHQdwejIF9jnshbDl639nA5cKgOoQsmPzT/q7OsnljSHJglt06BTwCexwDd9QaUXngw0ykJbEvfUvH8g5144PlFlXlXdWaeMSfzcq7eorMQ7ar/CXYYElIRevQ+8RsAaQtvVZxZgVYCu9VbR2/Z8r/kMMPgx1Qa0yhlhAKXumexgPuzcWXwi44lRX4FfO4cST/qYJoiqjk/up6iAUEoTpo87/bByWrWQc7/uc+eHvG86JVs8Dj38DYuzEDxbgWX+Mb/I5vsQd/iG+jsn9iBopxLb7GN/gd32LP8I/vhAZsTTNieXDO86/v7i8hpsJPvPjfLzxy8IhXaZ0JatM+CpoLfmfUugo1jNXIRysbA7JmTnX2Tm2A+Kd3K2B13mr5WkUPtcSpGB/L0aWlcsWeoHl4/1DCUAdPfFnLp34BWxFWT9GYlbPA3QJYHXAcAMibhPA7a51DD21hgjfdX3uPsLZE0sxp68uflLomeDejBI+ybfmnAD2m6WqAt89YLgJ8VsaiAryNqXmBPLS/hh3EzVSClwVTuZfG4k04wWNM47lQmIM9Q06D/7GWGNviqweH1TyEovzkKfw8unYZ73t9w21Xw8rzmCuKbJ2Txzo6gPrc0MU0uWVimqZ9iXw84v/O1b1SDb1VNczlyq/o/071al4j0XNXvQyTHjx/6qzg9kemLV2va9n4AP2yJeAuPAQA/NOR/xC5dtH5KKI3AgDriGQ8tXYu+uE9lKa/SWThsSk4VR7Xxc8QmdjXKn2FyNWx6CXwD6g28Ey7KBsh/R4eqiOGfjpWDyLRS+HPQ258XqujLsJT6EXwZwWl6R9Tt8FjU0Op8rhn8WvULbCvVfke1Rn7tfa+H6Xyoz1gTOvgK+cVHnclot/OrxeNZJcg0aqXWS++Yr5i67ULu1Eahhh7aIz3MbqxFZUz8A3NM5gRivwzTLeMQcYeje1Wx+N6b6yfHcW6gha8/RoYnPvl2LeKY4bz2M1dcZw6daGiYJXbIIcNlQR27p3q+n/us95+IkE5eeZGeg/PkVWzq++BwAKiw4zEDMfsVXhij7I/TggYIxm8SjjvnivP0mp0XgTGyStzASBZr9aGylkrFZxHxurPkhcEu8xQ5TzmLA6E9UOxtjWCV2bgmx1saDdB1l6Gi3A7ijvvnCKsQBSmALOj8boi64qv14IEKjsUr5Qkhs08t49PhUJLzXEeDYoZK9teDdZKxnjRWHkjeEDikGZRS5pG0QiAvl2VPjaZplnmN1NpNptyU73eOnV25YuBeeMjVnIuxonYa+PjpH+McA3Z9BkKKCak2JRuDCURJtChtk+6UodK5ptdbDB5YdR1er4Sl0ygUFAtz8RUApQeoaxwJclQcAEqQR+S+91uNttYlVrRU54SbE37259jQru4EyPsTz+FpKRL1UcPGlmHqB0oC5/GziGIwrmQvGphIBKKz2utaduiABuM1lbAWcKpzugVYZaqzVZnld/TSCPeMClrmeTItGPQKYw3exGhgH837QGULoi6lhb3omSEkF4Ny1ZaNeMV6tPLrILSFGMQ4lFwE2EoVEeVl83oiAxxrpw89QxNdJUx6yiLwtxzsq1Hi8zW5hM2N/GkQa7hPlnrI8EWfh760LZ0oF6tFAdURy/EXRtNKTbFJsnPddGoMcDHyhl0+3Wq4nEjVcJGgpTvsVoIpBdIkm6tPxjJoOJkHkWCsz8GfWWORyndb+E0T5aSbohceoPMUejaCFwLCRDINcciARsaUbbtGwZAgfBO1XxMKwZnyrxZMUI2+aDJZW3IqxmJwJqgx2wF4TCDnT3CxVNMwflh+V+bX0DRp5O1bX3gfUVXR9DGK2s9WT6yG0DtXS3taOTJtMRx1Lm94F9gcGSK94zgge6a5maG6p3+cFVd2y5JgF/DaaUU2My9qc9YCawKKcnYqHpmiFXh+EIz2PjhYH/7raE++2yzAUscf2zf1VdIDRnhotX/OWT537RATbOrKNvWGDGM9ih0QlXerTqDuu0WK/B0O/icb0vnE0SU3igXQuOqU9IQ4JgxO82hMofTGDGuB/OF3LYTY7D3evmiapSzk3GUoAKKZ2UnVMvIfkBpDAvE6G30P3aQ9EsXtTaxToeDlviF+i5NgQbAGeKerWpbztYVZR8W65CKONxJmsaLa2Mst5GMV7Pa49GrJC8Mh76HXlHE06DaD+lNKY7BrBBYiu5nL5xHm9MKiD3gG1qLaE1/UEW833ip6kN0LVlD1JNVYExmKK1KpooTaOeoNmsHYUJeJYC9SyOuruOenof1xnTWQueL9QRADChogAGKVCg5u9blAShwfUxzehblS268aKXyCAab6moGe4+5XQug6aArh/Nd/vs51MtUU5jqEQTg0REWVHP0/WiottnECINdNUiAEAHeRl7vh8N1mCTrdR5Nr2c8yj2iV6HU66sRQ0Bp7YrgG0rOMi3ec/BYdDKihy5AptYhP13XNDbrsZLKOlWOzSOIU1AJ1LAnSuc9Hd68E6N5OkKD2Q2MOt6R+l6yO/NwWDFT1Lvu1xmsXy3rhEBPEtXxiAdASvtuAKJ4L0GM8aJePNG4kzEqCAdaceZZafGWmBGjK4Yg4n40opCJAgbho738XgeX3dgbN6RRj5zBmZ4umgxzUkfXEB0xBKudYwyAMEKtoES3nN0evLnmP/iGPhM1kpTebLIscN6uASOl8LNfiBkykLdrGtujmCZZ9zo1BP6zBYLTZcpa0Uiqcle5U5tN8a6Ac9apH2G9I438LfxHg+dnYz9XiMFagngibl3QoFB4J4kZKkGz17Xuh8Mk8ad5HmFJFKqBokVMjCXkmIYdx92BCKMmO9TtdsXMbzwrhuRIvnae62CM2713dXV5Se5evSqPkniBiNu7IEDIwv2iT9xLu+ScMX16iLIAs9lGq9RCNqsPwdMsndDwOZ/cTRyr1d0aMT6C961hs3BBrHeSitfImHR7LcQYIVE8qm+x8Np982q17xEUTDvWNztQhZn1HZGoaayuM3IMP7a3gQJfMrs6V7d2G0U+eTf5PPF+pfr4AWHLz6zVlgnjuTROAZhOISoQhMCXizkce1gMw8Mh5o9Rd/cbyxtzOJhW2i5ytF3s+bjevNjcKp/YV6v7DYKC6azbeUpq8mqVpoCBWBd74fUhXj4T6oeuLsVSctZ5yhl0bz750cTn1err9xHjz7QV/B4Yuyh6vLzki805eaNOT7S0f19dHwI+S6x6/voOaB77JUbMiXl5Nx325MknSi746B7oUxxXvWAiV6o5IM6JZ3KS5VHs1fZqZAwDeHZ9hQHtpB+zHpO37LiBOPk88f6B6uFjd7oH0cEArY8Pzx/U/DPzZbNcRtF4HAZQq7frwnRaPzwYBr1Q+c3p26Byuzy5peA/7x85OP0EakMZxuNMqzlmWVHt7a3s6WqFsAeqD24BFaKn03SKjKqdEz6+7qwErzdzCoQg4JYDCLle1H6xeKWq4UMAQ622T3sj56hjuLfCLl7xeXiLUZSLSsQIzg8fLL1HWRKJM37MLg+sK4B0Ue+IZcJ1GNg2srnMs5ka1pTTGbwvLYlVr/gmtXMxH0HWd3SmvPCH4q7JUMUL67l/YP8ZXEozokZODDFaeUTyKLUnzhL1Vq2Bq+uYCF4JlQAumbQ7AcdM7VMSBDiq4qUCX30/D95/cDp5t1OyDe2UYD1zvL+wJsIVQ7UXs4pjKZGYdIwAYaJwPgXwc7Crwv8cIab7ODwo761FxsRb0t6se239OHGzLtJUUqqlN769MgB1NpIx9SbcD6+6hm6XQH2Re+HdeUCe+qzdn8QxPT6KMJ1MGClgZuivrAS1764Yeg9ObVlN8FZUL5gcPwD5lG6HT9qjOnSQh+j6+TxJoPG2/cFTdAihJ9VgE35DsOaqNcsnWsc/ZqSdtdJfN5i2+eCFrVYgCCic/Err+KgUH/4whM/IRim4keuIQGDfM4rCBjZD6Q8ZjGWbiYddVCBj4gpSuaDoD1EvBpUN6h5G3t3r03vKkl7EuEcBDbqEINYm7utauwA0Q08Rvmq6NnKDuPlvvsj3xutL+KVHHkdecEREAq/meuPRUnoTDX3R/W12NLFmGHjePrwS/kTdu/wr/Q0n3asR8mmnfjlVbF535tUzWnv7WeehoO+qc9+cu3mEyfQyn2IOrc2t333hxcOrL/6Ku+7SL/nXXv4Qf+SYHTh03BY2j35E+L3wwPHJE0GxJD58jZG+J4/IPwxuDH5C+Y5qDq699b9bI6H67RnHW3eq+0WPfI+/PXd6bfQq9nriDfb+5lPzWfX5CdgE7gUFgNrDf5C7YDH4F98f+W32A/vb+xcHMAIeQfwgNAg30CsQGbgv8FEQLuhOsENwd/C94M8h5JCWkI+hEaE3wtqgWpgPLBrGgeXA6mB7YPNwU7g7HAlnwNPhOrgBPgU/C3+KYCIyEdWIAcQ04iziSbh9+O3wj8iNSGdkKJKCXIgwRpyKuBfxJXJLpHtkeBR/bfFR8qjyqJ6osai1qIdRP0fj0Wejn0R/RZEob1QkiolajlHEVMT0xozHrMU8QjeiD6KX0DdiSzDxmGHMGnYDdgt2FfsQ+4t1AC4dp8M9wxPxQvxh/Cn8/whOBCqhnDBAlBLPEn8gwUjDpBtxtWimJ26EvOkPcyfFhPI1yjLlNuUz1YKaosZRe6lG6jL1CvU59ReXQBqGxqVl0ipoXbQh2nHaFdoL2le+hr4aHx7/goFnXEioT5hldrPiWCksFauONcCaYK2wbrPesv722MG2MHk3DihuAfQBJBADMIhhMgDqQOotVkU51nc7/zTN21qye2Vj1Z4NXgjyYSxJeeu6inSxgcKHQ3fTd1r/5MmhqJRZhrYgwUfA0RWegE2m9C5Xam0/5JB3ZiTV0UMY/uYr9vFg74NoWnU6BU7c5sVVkuU795RJjYbMDzt5ARo5FAbE6zoD7ctH2nlQlmRCcHTIfydyZDSzMqjLmt9jjFJFNdDcKQtFBn5VFFghXnnRYAAHcAjsDdSX1XFUl7ebJ0bWRYRYFTdzCoeunFDPzoRib7OcjJyEiAPHlSNcEyrEQ7/rNyvn3ZEJIaub4zfS0QtRyqzo/0s/1X6cH0dVZ9hdic927i3eEsbU2e/sPua47n22fFxJIiQb6Ouy/xZvDbVCUP/Fbyy094odW7XF3m9mfynw7YrXnKU0jUR+LfS19M97VvK3/uTqae2Frt887/f38SRCEkBLv+k3l/NNSAiqfvTYxYvoUwDuw3vw/rRZQ78pTyM058UsY171KSy/l2/D8HtSLsJ6RcwTD/iCPSwZ2NvO+LgZiGg8bM8feOMzucXF2wYlUTOtSKQZHo/EzHXRkO9XksBRlSoK8v4Zx4dmKPaGGccH2RUJWRmEIKlvniSN0OOfuwlY2feqPqcvP3zbp5qEg4xe0uftL/NVjxxq0vSXpv5C7Ew4tbDrASTekXWzX53cRwhRnGJzTAiw6C+bVMrHa3nda3QwePaWGWKtI5P62bf+zjY0LFSGBxeenm0bGNbrmrjNS8aOzpPxSLpnY1JTySYpj/jjuee9s0qfJ9x6enZtIPJHrb8ESCg9/nJnR/xPvpR5028qm524pJswHtf9zAe/IBA8dyIXVeyJFvDBhUV00fXj8re+X1N2Omu1VQMAdPZuPfbSJy699EOXlsqowMwDEkXauL0tPQiPOCTwSmcCPeSr5klOljpdvSAbSTN0q4AvECVgyndGAQnYUTw4+xXBpbHwqKfEdRg5GD8QEN22A86ECWAUxcFQxMOo+Lf08v4IIi5+QcW6QBDW6ojplMv1H52byiBSSdlyZ6XUIT2ZbNJI14GHSi9XO4HsjsjRpCMJv/j0wXXTr+JhMEZkUzz+9dOH16MbEClj61rOkO1fyPlD5e1yzXeqOp14E470qHR6Hf4vBF2EnqjDpC7FT2yziARo9ombwAXwyHR1d8wtz0PlgBiqCBZUXxnu2rRlyf8a6/hmFyWUUSqsap8qsYBzd3rWAPtDzA7vwffi97LxK6QJuqW8UE/g1eCbJN7Z3qSjFKIaOslpCYXjCYuz9UbOp4IN+4rIMiaVAc8MLIBDgSGYG5SzO0oEz8u2mUTLLOobQgljB4tuayrxyhvCItrbLehEOE8VZE9WctzA0AtOj1nOD+Nksn8nv2V+4Zu2rfr1Q0rPTDIXREhrWym2dhE1Mnv2hqYvvH3lO58Ou2hMLtKn6vuvgiPQJ4zNZCXKvxdzKDvHJlAP34K6mxFmifEaXIR4lDq++NYznZg9UGaPCubLX3Y3nUNp4Yp8ZOELOLpg1T6DDOgkZxy+dWW3TpPBliRZxZ6PHtEO2gZ0rFdSOi9WujsNfV0abQRRbdRnyCAec2YK24mbKWSjpWmG86zzj24Z1AkSMNaROUm3O29ConCcHo87bvJNfPqeu7lejCkYU1KGFgzr7H/hF03R/C0UyuF2m6OUT+2uauuOLZtF9ltZAh5wxNE75F4B/0kCSbjH4P2PokgXraDljEmpxiGOMSyafhRzBnteS/X+pAsVQCJjeCl0lG4qHkWpMBPpCI9zPvRC5BJefClBazwawhoexH+Tl2nDygxAQctHGNXJhx6aKwTxp5EkocTJu5wvnpLKccEOYAY+KSVOtRMJ2x8QiCyGrHJxIIlJrDJcK1KpoAkqx3bKkMpjP/YBAe0haChWEZpJy3WNeJjZTr3womAoFJT+K7h10VmIEb9KCoARlRZJY+w5qfVwYF5FJkslKh4RXXQqVYfR3VV4aWQpJXN3L4RCgEaeIdYCPKfGE4m46l+AiRGM/aXwHjQsheDugvbdbgtMwHK8opoPXPTnMwW/OCAdhnVmyqQKNevIfvW1lOLtw8FqNE4d8v+z2X3kWx3dJ/KHQ7uZc4tUZZ38xdHYHz97Wd6ygvHQSdv07/9x+jJGpb6duyrfvW234AQZhRH5RAAXZPfAk+UGWj0R8pMbdPVkHzh79Z/B3OQb3t6H3Jv3zZ560P3Z20yv+NrwoV+9jW7/WFbb15kDFAxiZH+o///b4qgiM+wiBL436QSpNRPrYSUlWzcFOzuszfqHOb0bIBp6ArQwtWA0Z4eFna1MDHDyeUIUePBZ9GW1STg3Z477EBe72wLAkEC6+f0xclK73cmoDS0fhc55PgZv8fp9t01FV7wVcgkaaqjptG23Em6vf1Kc1rPBXnVLp4+w0WB2mT+pxSB8BBxTs0L5anS0Pkrcu1a0bHVtwHU5bsI9uZgb9jzuzYV/ReDlExSSe5euz52E0qR1jHVgCPvwBsZccG3XByPnbYtOEc+qapUeQC4yz2DZILTcqgJ/hOBM6dgVMucai9lo7JzFyhDcjXpGy7yK1EeHQqpIwuWFiEXtg14JCb6H946Bd54W4i7tA5Gv8wMis8h8EiEBoTlV2dmrixD3WIv6UQavHIDCurs7SyYzp/K0qtOcWe7ugyMcnjs4n9/Hii38IMF8sjZGIo+jg52QjBkI+UpIplYKWNvdOIAESujBaWZzGZRvSy120MmWnMUHHW3MJr4DpzKYLImKbpw/yLwN/FEzaCdjNNJGG7uC7bY+/gf2y3bsyBUrfrn63oF3HopZLuNV5OlRQKAm8xGmocUFRLVqkB3Bftn9HObwXpvnt7vDH7X0rSULFklHHoEFXziqS6hjHy4z9JED1LmZqFG8N3Kv8RPVIBlVAk2TMkh++peRnJm0+8Okc8nBskytxrC4r0nIBoudg/ScOwdty5y92sKLV+Rn16N2dF8/O9uY66xTV6VkugVhj+IejS+vRGaYq9wMkAB9tOdrAzXHTb3891Jp0N/7hu+SsZABXwciHi3/9v/e4bbOlTHGo+bFhqyGr9ypXuQ0T0h5Lf/B09GRm4q839yubZIHqsGSLjdPQ0tFieawE7fjE2YO5rQm8aLIa8WaPkdSB461z2bwmzwD4xzRl2RYAMWFukir6IZm4I8IylAj4uCaNLGqkPvgSpQ0YKImTo0bgR4p8W0J4PKBWj9jOmkqi7ERlzU5N1xpGloIqU/gN/rqg86/heK3Bu7VutmRsTNeC+Bph7ANhQKMddNg/iCWVr7pME9drUzLf+VHVPLl1oU0B0GWKJDuwya8OMBspPP5Qh99tgyyWRqGw9c+GxtLzE4/oZ93Lmu406gK+3Nc9tb03eKR+f5IeAA7oa7pJznAqEUN1UeU3Ck58RiCtll4fbJG0eLc+Znzro+e2VhvLPioGJH6sAUXW1DGXlwRS0F32f22i255i5fttsesSCSqqr6HgN9D+mYTH9LjMOSbjq8O6Ehtg9xqrJzCwSbSWbnv/OzG4C8rdv/MMZFIbKrkH77Rq4FkQKX3TwXX2XlEcqCiHy8hjKGbARdWReMuAyTZr4gJYaa2EVLXb3zu5ce3IoZd0aobp1j+ePfE7iTdA7wX/vlCozQBE43Jwz3hP1uVrbbw/sgG4QojOIxblyNrQlBjOx/RTVNLvUC6nUGjGqFFRwvzswOccYE/QtuYUMJ1zDByf7WM6vTE4bbV0tmm65KO03a/Hj7XkiV4EWuiFceBEjWp/t0UBlP3c2Po/epUcEMqtuHwqXE7LLNun7Ww8JY/ZZRvwbdosZrMriRx/fojqbiTu8m8XuY2pTDSW5Eko3LX4uoccH4bRspjMk493PJirQ8CZQpaFHZCZklsREWijuRy17f7zUgTLWW24uY7+bWSmyODMRV91s/pCIEPt+Et+AEOcDHEGrBt5sKklbGwarZYLuezsNDrtYREWHTMgIVHCirV3d5FeaRlAH+kitvyiQCMkubKfIlW2ddahBEEf7EogH03pwnPV+ypE5NRvKaTTSrQg0/g0lZiQSli21Y81dY9araaNG1X44ghI6ApW1HN4P7Pobx+ZSDKuZS8o6ajGvMOZcC3jPaRNFq3nM1m4tE+hsQS2Feb9dmbilt0Oe5few+z5XXFgfOoo46bx2vVxU6n3bCwao8Gn4BQyrZHwixrJO26qpJw5ls0/mfrMuTJbkCmA2CqvOv8IXEJhCAdxoioGMnxRymMDy8yjhepOBh0pEa+mtBYl49HKL0TSrO1wNE3BWbVs3F9w0zwJqkNHLKoNGMPVnxOqylDew0x72hCNJNf5fWR91jLBvE2buxXexmol9liqb6TJJAq+Gu1GCY4PSHrcpbwJD6J38h6/NMma6J2KpRujev2iDEkYNeyKuMj0GMdvbCXZBKmROGFjvlKHULas0Is+UhE0PJ8CqGqCqOMyFTpeBqSoWVdZVIyE+DWsW8H5GacC6phU6POzqsECVExhEDqaN65DEb5iCRV7UwZYSKggiY8wQq7RZz1eXhzeKlFfIvR9C0y6aXhoSNbIfrrs/RlEd8F0WQG+COplLafBoSxPx1CMHTSxqJNWhCFkg64TMYHpXSmKoQ/+5nHiJvl7qLa0nPfxHfzse7RIt5sycXoiWWNWuunSeWS2tJC1BUQ0/1obsLTrbHSfqyVjJd3JNYvCN6Z4mygpPv2UdaqZ29ubL2o5hgbWqWMigXj3U9Zohou6Tua63V4ukXt3GLQX6KQhS1711+4ivwoO0/WMpuVivD7ZQeXOtalPcutztexny/kPLw1N2HMmTSKmitgsLbModIjstliOSViBPNmJGe+O8z8vTkUO2KKXU9YvqhBT9TwfoMaQFpFUKR/RjYhYJlhakRWc1O2nykFsL4HXR0G2NdLlqfKYvLTgkARBIXWKtsaqNbRqDfwDsN7KbAHozCAbdtRq67j1fmJ2Da5PuyUxBRFZfKVXD6vuop4DZxQsjWIOz9E6ZfXOZxjjQHmyTjLf1uIRwzqFPK8JglEo0GUmzcKEqHc8lpPudHuKkydQLw2eH0DBS150hB9+4gwroylF9JesBNqfd0Vwom4MW7vQRFRG6ZH/dsI/vMnU80le5QIpZfGMOUpN2T7JYv332NmvTrHf3smhJKCABWsYOXtZHV6K9X6iM3JMdN2y3Ex0/mNMo6sZm+lch8hJqdBeCQ4/eneN2pAW9XvrVTxI8Tk3bAa2aKvFc2ZWQRKWMBOB8mTzlRxYom2TSvHXDH4jF+MNwY5sFeD+YHJVDOQ65r0Cu2WDf8/U0JMxYSWW1X6soYeB8egvyDCnoMJghzPnRmMsWcoTcIzoU+b+s+lSHxov7rpp6H7wNmUL+/u6vJ4k+qLt7t4Bjz6UWzDosATiT+Oj6S/7RW9pd9BzEPk3EXvCOb+8w66Vzoafx4cx10brw7Pt+vwNhuEIHrzU3c33oKfrZaMAg6ZEW6eRLt9faiEEgrvzC3HTwAXeZ6Qk7fsLiIj/3/20Pvx0vP+dIZcL/ruo98F+aspF5IoADp/wDgVjoi15kehfNE+58EPPMAfbUPg2h2Sq11HV2H9s48qZu/u2yk0bMEt2IwzxCaEMGL1cXNdE7gH9JbBUBC8DrfwFlljrhlizkk0RjlwOuHHG5yuSpTgq1aVf3mDuED7ZZ2jkHIXaeyL3b9Y70g63xMsBW4pXUsGT4wn4LcvSUOKlTwvtsmBatSxXHBybEeb8E7cZVyANTNLQWTN80X+5dn8cc8vX5p6VI7T29cWWO0xLngkquV6Vny3PLwsw8oPAexWC3D5wtSx0DIwfoZJj4GuznIMOGrRQ3GGcHIE1GUGfLuEYJbNc0FmGjpQcLoY+j8SwmSdM5uBAyLEqT7YuZMAfVPc8D98H3+APxvA6OgGwtw4iHA9uCN13IsxXB8ruq60kvd1WaMhooHmWIm0JIsnGCVZ/VBknWaIj8GSI25Nq0GVx6UclQA4nVPxAHMTZd3Tc6FqCG7qrKVXFain8oaEtsZQ3EejYT/U2S6qdN5rEqpct23hkBx+nbMSH6cmRUl2IOtX5hivjtPD8KxtdDCJ4Cc9ULeVy6WyEue18nXaoM3pDR2D/KbB0Ft7ekqqREaIQYnQGrJkzjQDaDRiOWVO5BQTQN6VhEjFUf9Np9lAeYSd53xeMxlg1mQ7SfGuxn8ytEL7uta1RFmdl3wWNQ2dCIuJg4k+0q4M4hiDuYiTeu+kpQmkOoguy7S7cAThEGIyaNftNru6PUtfKqVer3tIcWWKt04w2KVbIpZxDV+mGJTXXU9hQ9Yql5w5m81n4bhWHHUB8bb2y7xXRx0ol7UV1R+NZUu+tM1nQ/S1FRJYVa7mz19e14kEB+sMWETHxb0+berSSMxSeT6gBCk1VqnTlp+pnMedEwwBaSxg42F4YvN/24BwTyp2VFB0RZFlUegOsIWOLCj39P0tT57l0W1099udjv/g+EXEBgKlHXiXkG1OPfOcmdH29BTiibvxa2pIRQUzYPjdX5LaYfjbWH2jD+eja8caKChaDUrWZzN4du77cKuUSqYCVgMBfcfYQ4+RCgpqhYUrpYts5HUuveVyLCKz5HU+z7AMl+BdyzY5aveMkO22KuG+erWeeM4NJ/JU8zd5sz/ijK0ooDcMauyjRBi40FIQiNi/hJw6VsXT/sdigWtommM3NlL9UDa7u5vSbfqKMfXCf187eDE/c/eu/OiBHzg6RwOgDB1CIGQXuxRT1bmfPwvpmb+S5tX/M0vdbJHFIhTw1HM7QtR8BQUp44032Ywymri07w0YrPxHo2b8OGt4qA+GU5b/nSJtKSkHNkANThAXZy2s3wwjT9mqz7b32Sv7PnX2SD/7DnPA+vqK+1czZzTUAUt6AMdwoxZG1y+nr5fhZtwpntfeWDoVsUtGUZLbyy0FroZmVsuoOGlv5IUvRN0+RTAsMxPT966X9m85pJc6UKHAjrsf2H77ouYsuDuJpXudHcemMLQhP97XAaFQaePG0pqxad9YuR66QYBeLNSnMEo7bX36v9xMTMfR/rMfZqDWEm1Tsn/xKUohFKKafCWb3M7qtooV+5Jmgii4PSd7FErWk/HGxxmokINDWwm4T5E4lsrEaLS8JTFgG9+4AGMfLbZroauLYvAEum+ca92iinNUOq3EVPBGkhjtVkrxiQ2VFv8dXII2WZZCoAZy8Kr12a+b7pns6slPZIBd8DNBsp0fpiG+3X7d0Y1jqmTu6z5hJWN9kjace8JmTzTqMLH8HDa9m4RwiNVwvJtAqnbvWamNM3qJKmffrCvwoQ+kFw/e7oIHvxne7kcRNTu5+9+AvHjILukW5JFb5vzrSyDd1CYDtN+A2YpmCtgzb5yh6MDsi/QIP937e/88/M34dilJMDu8HbgXw0dO/kYfkC2LXgBId2A/tIJLdH9m38Dj36X348rczrbuxYa0zj69ZDPeoqY/J3Va2Wo3n5/07FJpH7jpkY/jK26fOzsx5yG7pdAeowyJ4XJfpuCrd27TnPKP1pUh2qO4H5fOnAsdmAHB0XdT4JA1Q9DZNnVsv557wWVw2yOLqqjikwPUcROfPbv/8W+mhcj79ifX8jYu/NVmaOMvNsWT0y64s8yOmuXzsHZ4fEaKA0jTEfmlg+1vpfSY4g/lGtgOiW/wFMUn+/6Pe6iPhuW9kp8wO2gjH8aRaU8yVfZTEMmvq3X1dlT+j6L6HPm5rfv6/x/shjAV8uXM/98fv24dB3fAQxCYVzJtdANTK4g8jENZwIsBEF+PGPpecZP57Q5DTg9AWkRv7+HLfPLyo8C+dZhw74Mk5rHAcouWYZpatzUI+FrcT+kudIaiJpl3BwibHYE8YmDAs4453WAplKEpMqrfBSaRTUSAoYfyuBNF3qBJE82Q+2bpNHqkM10YpbAKFk6wsPgW6vFCcQW4hVxvadFpX765kiSKnGfSp17R0wtiaI0UmwFhpx5zpHfQ+SccrGah3qkD9kBkKevgrrpPYfVtC8WVRd/+qNfb+U7JSWL5bwLODr50PMju+xBhaWxWSoKV+k45G+WQysRUz7pPp8EZ30L0X4uBoeaMz8i5OcPKSTVKoW0+cJ0589kwPSUHN/jty6sVZhD63874H8LnVTxwrw/uPpwhDtWhinVcpct34TpSKbU/gf7iNbX2sz8suVeWaaeBPnTC4vauHSTSKVZIQwMe855JHYLVC8ZureujZDyVDfto8Q7kbjGy/vrG7RE9a9zUb8CbqZ2pTDgNPswFhSQHu6qJHA34t1pWaLsWAnx5v1SZfD3rfgPTbdTyulk64smfNjAh+A7U9ERJG4vO4bZNmEl4BIphb211Zu8ND53VrPvm7Fo8SGAXDq0LGPIvdNSJ9vv+PrfX6Xf1B2ALJFmRqtFkecAuX/ZeL85kYZLmNz5Jc6n0TtWrJ+pQ5biPu+vgr3hIUVFcAik4cssu8LybUmLZ8u4/r3Xj85AuTQami9Mk24y6jA93nEFrx1QEnmlbOnVRpsbiZZc2PO+Kfl7m+40tOJrzcFvbMCfpTrena9rCJM0l7rrFw3lEjdeKqzsrXj/1tgrFBPtsaoeWiRnGUHC6OiMHSoJdj5YlStTVUqlMSmcxmUhM5THRtlQDKYO+iN9kz+hzzPrWqncTU6aDSOiDtR2TywBB66pyGHulhnLfB3sesaiHoPCOjt6uOIu0c5NWZ5bLN7b74NMusuZ+4dU4qYcNNVzPWtZre9bXQVRmVBhAJNRxdEEXYkaPn8RpC8GPr8p5sqd6RocCFkZ6MyAt9La7UYOpHheWO0M6zQ7TwmKwPzBAnYGQPYSa0BZWjjNmWEhWnL5BHUPDYGVZjizfO6T02U5LFu5BtFv7Psa1kaKByYYNJ2Rs+IgpDQ/0sEU4nchVGy3k6fas+3dvs1nEGVluFmbAU13aj77G3tkKa4yYLY7ba2Zq954k7KuUb1iOa/Hef0j28HA7dzn79rgklagThlJ94KG66poUGr8K6onm/i9WIoX0q/Pv6TjBjSWNJiRMrQr0H8dNFITSqvbUncaI1++GccJgd598829+NV8bDN/gyFJwsI1dmzqtbHa9tRCHq6EY8vPgUTvZKnkLPk31UH9wAruo/Vi3zv0v2p2gM94xNln9kd3feAvhVv95ZFgYAm900KhQRgnOvYeR5Otff7wZ5vjVDJw03b2xyDINXPnhTTr773LFDz+W9uozH0wyBP587EgOS2uRmbeSyF/+cizndnp92mI5MfrJx5Ec3Ii3omPPL/eqIZkHCueagO7hclOT5UU/QU1VJUHRIzNqjLdTumEax+s9iCO4g0UcQFL94ukCfRAltBRFDJBYOpwaKJLLGlsOVAy5WxNRtwbBMF8WZAZSDdylRwX9F4zx4pegnOLOWcHT5gkIpRYLyKpfy2xu4i5EGYUmADfEaizmY9IqNiDE2HYXluAKMydjcPa6xd0SR/PsuvGBtHQfsMLDjfuilsYzju0TSNoesF61WZ9ajVz4xvbaxDj71G9aO4quueP+eNfaRm8zYZW2GVDECbs3qpCPPUQF8DjEi/rGJzC2+gbR1ZxRwUPwN7mPteCLWr3BbC/yYx/1Tr9DMuEiiG7WHpWvFqvDhLZWpjFQSA37pweKTB7+J136f4IZiObybY7dsP0dbwR7o2a9UgO5XuozuRbXBicO7IoDM60EdUxQcaviB8lxKRuYDET6cQzXfIU67oVUuGCuNKBUqRDRFe9S9puzyJUqOOnySCLQxLR2n8S7Vd2tBSrHqg7erZ+GjRw2xN08XhLb3juR8CisodYTmI9Y5SbyadMccza1IsOtG+gYx1wr09twCPzp1/5C/xZZmnwHeDPMwNKNIl2NroSfwATfLpFUHwAmYWG7Xu5qL9Uq8VPg28yBd5aAkyQba6vuB585y+s6ehFgFax/uFYucbGQ2/IpgPGGed6geV10zHQ6TOsxTMB6vBM/91c1pfy5+/+3cFoQeJZX3MFTtwgv+D2CCWlJU9oLf32ygVTKlWopnxuYPtjDCEythQzaQe1omgRT2iq4akOp1p7dUeVzE2FQWVWhpta+JRYmM8FvSyQtnjxQ7WgvlYqZRLpYB+fQK6N/Js9mC+Ui7zuXmv5neSpmJ2w7nU1MgTfjX2waHpkqm8iVysa9wWEvG/orC2eSiNFk9Ofz/gMlsN5IWEzmMgGWXy/P+r9IdPwPHRg4EuAY6C1N7JBglCpaQBpoBiujawKUgIUjTQmJCnvAgcWo3hbK5XNVoXAf1F0N4+IuEpWiSjSLt2FXFv4gKuKjOVC/yKhRnWJMbAUmKw+9WvbhwbXzhewb2RPgvKLWxgTVWunqH0KYxLQLrUcvdbdk7p+7g7//A6gCwaG98IuO+7xbn1Fbk1cTELYRzu6AoITjDdQydIzBJUTipnhUH1/FzWEQ2diLjkUn7sEycO1AtkCjenNIw9JNWH7z4LNt/AcChkZCGSCGyU+3GUPgD+wBthH85m5k/adYsCTc6W1cA0xmHcfKhkE5KPpnsehxJQttWrC8esXTE654nMgpMDDIvUHRYfIAI3/aiHAmHj9H+IuClOp8DJTdgHjkCLf/sQbYaHTK6bVgvA3y1SEmeWzse1JGgWUdfl5KgQTuknNi/gcSyWtQgsSqrhdcN4mevRcQl5YWjwR+eX+/9u/rw7M3/S/2Jh/89XY52bz6rvwC8po3ZP8RfAHFqvBmDcSXgPhq543ghIXa++SE63+wC2Do2vf6xC+mh+Y2r93+7s0rwGMAg22YOo52L2Rfo/6fECYqJJjmzGmc9nbwoPGv2xc49MO9bCq+IfU0tiLs2j23Upfa0XwQfCPEh3eSf9XfkKb1Ur4AQ88INkpAjRpq80bjC+A9a68HC7n7fjn9IeN8NyeMov1HRmhPOTGGSSCUMx8GQycgmYgIEcQDAtOOQKZySgqKkadDbRG+JWUg+m5fUmYlyPVq01YQjUYSA3yEdGx/vdp/y6jtyRPGZKa1LX09rMVNeFstOTVYzAyJO8fAEZFO5/UkZEXuuHKQVsuX0C/hEWkB02BPCCEn6GQbVBW63h+auiCrfTNul7bEguCHUjpMDqLqY8UZHeu517bL02PGuFTufEnJiN4qokUiyqmgdOz4Mk3V2l5jvHZMBh8FDygen/TkVazwUrgtnrADB3ZIHHuHF/XTtsfCtfWun70MQa/fpVpH7mrfWds0TMuxLUel4g7Bps5C9MS8+v/UEzSaSHN2eeuD/1eBzmQQNtqwiJBOuslY0Iczvb19xBmTe5/8nJ2b7f28fHKoQMFe4uJTZfd7NQyW4lJ8OI45ypfLpbe7BI3cRuDRYipbIuKuVoKmIWl2fzjyVKZB7ewq7+5SE12EOYz2MScWm7BmZhQ4rA9gJqqzYsbZsIt2et181Epuo2ODid1uPfl46fieO/ebqfPmQb38FXAY1qiT9LBphiRcfCZHPh5MtM2Q5uaGSIrrvYvLlL4javw8E1k0qv6j5UsexwVTT9Z1g8zFExeGknDo8p1Yv5krXPKCqUlu/ltqsbgHYKlRjdLduVwq1r1EniI+/rNLbcYYjy9IR83I55kwsxZ4dQ92PkknqGM/rslktMO85hGxtJ46inKZuXaKRlmLzVrEsQLc9LxttJ0mRqDS+vJSlihwwkYlJpudod3SXecmDfhuNsh0Lx6ji76zt4rsJq1WrXStlpTAonibF5ADV4Qi2c+OVpJ6zwgvzkbiUd7QwucYRnRz5l4mw6XREoHkkfN6ffMeBgou0kU9TzPokqKYUWu0ehBSC8FINH4Jn5Xq7Hf8MvH0kcrjDMTRBoPmSkrcBEtwCe5IY0GxFz/OiUZYEUWl01t9B4OKrvMzK0EsIGSBEaWfpdTxpraN51ihwFizzihjULD3g6ENAofaL1+hYGj//0cNP4eW0zdqLCYN+0TXG3pNpdl12xl7GmlsLKm3sTgMPaqiVQJusqrrRn7FwL065Bp8cfu6Rz8otWXypuJtg5FfPT6azRtVRamClESWwTXmC1xWYpb4keMl5a4df2YACRyES+wAi0dRKalRXexEKlXdSYCzIv7FTIMYcg8bfM+F/TNWamTes345MS8JRhjEwZENDRC+MzGaWFLbHYZK8bykOmqftmtMuvle6k5TxuBEaEO8qXo55mIZW64YSt+iq3FuB5sT2GpzVEk4Y5Ldu0xaF63jdq2hlkLcrOEaWOqiWuvJITMBuqA9UVRl8vDgbWt4qFByhOgrj1rjhiH+yx21LPSAG0LnjNR0SCR2Bxf21pW+XLVacy4Y85IPOR6sU6Cr4x2/elk/CR6MYhTN2r57vE8MgAP3mCKtmNxXHraFF4Xot39626yG31VWbKhiFUfNYOXt6bgr7bywQSLRcJXnOBFJY54D+iBG0SY/sOyVu1nEZ1D8vHJBPmte94f9D/R6j5cGpHwNNu5q35FlaL16c8+kjs//4p08GSS7rhbUWbNh+vFvZVWb64AgONuV6xYr246MHfK5w9xyaNtL6mY2EmeQ2u3gyjumIEheHiQf+i5POjY/8dFI+bbUoEbh/EKo/hpF+Rm+jl/Hv6YK610J/ZamrZvSyWEKS3qJ65omim41wBDO0jQKITW01ajDih6moY+yqDX1Rl5RN52e5OWU0UnbG6At8FQ2gV6uUiw8pFJnhrbGjKmfGAlgimY60aJZgzK5o+lO4PFPSStk/iBYmU6WDUlavuKwBn4KdWfQKd5ZSkGTOlIQeZl1Iow/0Z7r6dngoiGTOCZD7aRS7Wzv7lWGt73XpuIgOTnTZ1LzdPFyWfbKpU2ucpCBzVOY4lDr0GMwqqiGUwiwKz/L80drqAUWE83UPMNIFsvomLEEMHjNhoI19jtg5bCcG5xJ4APIKo7f40rCETczVyWS9Vi2XbvfwdFjuJYfqwh6sMIHVKvA06fRi6H4yn0rhqf1aXD/Smq02sJt41qDShdmVOneQoMth2SzaHLI49OL/W2jlHMKMDCMUyjtKX04SeOQMgqSHjEOhw+rX9JaJqLnJzlhMNQ9tOPvaFdb4P473BPUavMe2FbEXi6YzdOYsejijL2WGGVwqGEnrotVp0Y2n94yehjsNVDcpHqpRWRqC25PBJP6tB2r11va2EO41JGCB1LKCr5vcBcjtnr77UI6EM4ifrQyn3yf7zF+6JugY9IXa8bteIbskzifp3CvRn3B4K6/+7mWq1J57mdipVUgA8SSjeLxyaybf2gLjfxlXIYuH/g5tRirULhmu1XryNtujGpiEx3ZYBu1xpP26thguFvseWn0/Zfm34/IHUlOjJTKiZfMTfQHaAi44ZmDletrQYs4iH+dhigM5OQeob8D6R95fOKR1ppyuX/ynQ81jUJ8coS3HigA0GDZXRhe9P2cWFHZdK357oGeud3PgwOR0DRa5aLYXTza8Ix0uM9Fc+jFblxZZ1an+njKAGMRd1zMd5KBy/mrJGMT3CbCv1c4cjXtB//n+jBOby3raAPBa7bd79DKa/F2vcL8pX1y2fiXb6stRzLA16lvuS1fDJfmRoVSQQLEgQIyTqyM8BZEsei/jKmajOZt5t6qiGdLx2t/euXWRXXKPeKOo2Tj7XcBJi34WTJyy/Jfv5x4ezS6gp0C/lhXId8GGrLGHNZj3tVsoZAuX7X6T996Pbhv4r7ghh+HHjzxGnq+ylJcfmNQRMjgODsoy+aOKPRKIqU/aZd1TDqemBe1i8olL5cQsCs7l6iHRgU3ay7df/cLrMmhBipqWhXdHkE2Qy+U3QdS4HdvN7cuH8BqXbPp6CSeJfr9CS4/EY3fwupDbONP2TXU7wQN8Li/Hi+9DV/fAmDCdhg3fECIYC1uw/E0UScVt5iW9XrrkrhxJuN4nY/6PerJ3KiuaS+mty1aFZDK46usOWks87o6qzdVlmqvWaFSaFp/aYw4SpMuukmSGtRRjEiBnsRHL7U8Ort6X/z5HFTbhgucNuAz6VK5Wi3kCgIJJnrLwE8hE0WW9Gi3zWpXm5uSgbdrq1e22l5KhmgIphkJia5YbW0x8RROQwVLHI+70pQoPkDBDPHkuV9kn6zdwIOiVf/D4mzNky1NLomOl1DR3qmoY7JDMIqqXBPtqdsnn2OCIxDdsz2JQ7OEHQoY8nu9VEooaT9Etp9ejg6Q48jT4pV2UXTMLr+GwQXa6eYxPYoHbheXm3yQ/QNBlaBeuclzEHoGRDxHlUYpj/iy8DhfUfjotrYkWUOIdqTt+KlMDIFTPp0blqbfRxUzzyCjoE3pBB38vGMvFjd1yzpx/D+bySRiBYBhHMZ1nNnXJ1i9Rq4NL/HaIhlWBZlKVXhnzt/ALqG9WQqMhJB4OPOrVP1I2pZLKmfa2IUJ1UuglOJZx7yovRgP+okUpVgGjJWS7Q+JMYX/YvqH7NLhrveLiICIwbGMZ4m54QoilJ8cW1Iktvtk8Jcf8TNQ+CsTAZPcEqE1ibV9J5JbkqAk6faSeNH4+W/G0o/tUb5690MEXB1cCC5QdG7IzIJiRutCROUqD4yw08e717mLFz7m7EDBYR2uw/fVk+N6W9fEkMheKqsVdM4m0Efz2VQOHyw3Mo8armsjW+9Q44pJoQMCgv0Ra7JYDHNuTQvYL1MVNdiSkmaM8UkUpg2V5+ZTJ/mSq4y2+qOVIWn1ugm2HV4Wu5169mrt5i5JVilPly/u0yQ4DN0VkdQV7I8kjixLoRTmOMG2TUX8+c9dXce7bV2ZTra71NpP2iIfU9pTlRPGOUGuEjudGAtp5tyfy1uj6wd2KjXpZ+YhtTHhBCJsmkwmh29urhu/ecJ60falqyzvEsGmon4/RXwnTky/CRmK2flqNZ+IdsaeVXzsmDBMI2Xx/eLDy/wJAstxGW6pxrYYDcgGlhJoC2WfUwMcsQc3fFMSkVA23ua7wGAiNKeUKZdDLZRNUjMoz1ZwfrD2fEWI+PFqUirOcxUoBez/5dpqXZW+vsnZYHesF7dqamxPdpvwPidld2i0eTsrDkMu02Dhl7aM+3Gm6q5bliC0/pJzTKDqni5KfjVzU/mD8SWnJAsVtR2yjS5dV+VlZ+d/edcQ94hFxFdfcBFyxxEOYYb5qz81G6ZKIchYrblKJRptnYZIdXy+nOr7L73TnvUhYvpVr4CIyC3v5WxBcQprlnYstsZlf7yxtLtlA75QB1qMLm3LVSNlBqgoIaQ10LyHC+6woQzf3BTZhnksX6vW63gnZjJZ+fzXU7shrVdtkJZlBO91h1RCfMyS7BvA9BUOKX2tL7cu378yZCVEKhR38HeItUjMb2XRhjVZqbu0mz9UyI6OcmoGCGzC7XhHWUi62G7EJcJYsfYIq4lXhLTBuaBGuTKBkM1LOBE8BhMamA3aFNY/UtjzJgIrj61QkKORcGc5SppLMwl3sWUyouEG0TB8UXsl6jWtgB0e4w/8EGJHEYTvd3eVLyipgXuspI5RwInbNNbNGtTtIAkxT8R9w5n9l3x+2RU6nVGi2kuscxHFe/50psZ9Ihos1NqrxYQztiWS8a6k+Iveid3qi1xIVoXW6rO7H4iXl5a3k1L5cT0cEA5i3D0O5hAfwcvBczLCBBqQ9yBXkgxoPrx2nDnX37EEj4+KtlLob9SLNvfGzQG3x2Xaph1UcQiXs8H61hIMlymiqc31R0Lvb9e0ItsrOtAZUsem20z6nE7WI6PMueYQvD/rgoBAaATfPt2opdpnVJL1Ocfpzw0Z9isJ5yH+IJUGTFFI0cVa8zLpq5IF89d/HVtCeVl477VzoDjYpYSSWlPTS9bSlBaBe3UpEBsxYELBPDxxaG3HXE4cpU3HWjx2wqaP1Sb8thXjqej7+edeBJQiFcrYgUO8XF8/Vw9ckegIwIhE3KJwRRoZNXhJrt0OmU7a3ARNSMaYGsNswzi/Tr+pMDLGPOtHLhQ4KVFo40Vb6lXOGMT/S2ySXUqVgZhhZ5eFxeG8RtJtGnVmFQzcQjbHMZwShq2Ji2+hDjTmdMXtd2uMwc//FJHR3wNET4Z1NxrdpUMWOb5QhFOS9hHCmMD87n0I/PFHrkXgnQo8+MPvgSp0yiD70m86Lf6+9PM+1hED6rgzcdluNBF3FWgWPKyO4X3FaAi5rhs5LqfMGWhngT6TdIom6dVqetteGMfGdYnx8Oh9egONqqNdqhtcb01Lhh/YjA5+967T8w2VerPVaKFoi6CuUqk7JhSe4Wg7nn3sTH57TzGfyWUyOxZL50ezQUYOtX7Pqc1atm1luleG/u+n9FPfUXvLnW4pK5Q/mK//Vu8plYoXCvPuBjRDk/nBfjPtdjps6lTYriOnmOkdoC9C46FAbB7Xjpk+gqF4LcjvtBq5XM9Q0w3IZNldWIF/uzQM4tL6xWcMg31kAsrQzvKuj+EbYEgaJzh3djw8iQTJQ8pl/uFjWjWZtajG3DGjzXu1IDzjka4ZdAwzRsTRTIue9o5804WhXeiWjoeNgT7J3u2ejdKpZ2WB8F1FcqxC5tLf1elO1wbIfJ2fjdvVUqVMv2YfsXKW43tkSfNnR0bRrFc9saynwmw0mTKjqxYvH0GLHm7l+70h02FIc3uea3E4qNe0TUS7DFRvGYn95bKN/M6+BPaELGPs336Q1EEWejiu6LX48mmLYtzqv6EO2D6A72+hjLKwflQghB2uy9G6638+PxLAdTT9Fm+8WExfULVotA5uO51hm5DjzAJ9uAJ3GPraHx6qo2hj9wjrjf7vvp0nc5NSd83pndYliuJdIMvO6/6vtqwuGC5dsd4Y/B/lzuyV9lG4vLcGv+SAfwa584xq0EhT2wod3FUB71rS1nBK3V4qFgvFUqVazCBQlxyShhCqbu/1v6ecXf23pkt+REA9AHftW0Msn8Th7g5MqlYmYZJYKCaVEWQnhtyFeQ2Em0NCXhdNbo/fTigz7DUUolFUbPRpqHlCWherLi9uWPXF0XDHajKpVKfvaal1uAmLrqBlKvhZUz2NvP7oK+rxE+nDz+X5ol5p//byHu/rp/0R6/6IxAo8J36QPYv8GcpgJa4cuXEVsJsvKz0b5Sbid6un9Wo1dbGSDQ+K5tI/DJ29CjpDD1uYrZcgcIMsH58wRrCFRjxybiEbUZr6qIaIMDO6AcNQlHi012WTpSmKZuHVTfaEmB5ysaEjSRqvGBZEYGf2CC8eYCxRq1SezKWjWlynPbXv/8rSxQnWVBjIKJHskN8/KD5y/1pMmtq152rTu1utb32kxSKbVFk8xpd8TPD0d18ut6Xgt0xNzlkj8l/7eaXyhbNJU17AzwQC7/ukuF0A//8tjLV9rLi50x6AIevzggHG4YOh51GkB9DDb3uz6HQAb/n871H5ObqEFbgCt6/CiNQN6dYgPC0qXa2yLprlPEfJRkRe1twkTR/pvr3NKCXMJXXRQajfzBTyACLa1YVrqaJsyDwmF3vp+kafE4+a0uBlWUxjdny2sN2+KU2dPXVC03lXW2Uo09/KAG8fMx8O+RFPa96R2MZVsRggtNGkaqXz+eebam26zfXmigsLh6obaUiWpacdqvRcvuAtmIPYwkNeildiLYJVfPG7TYDdfPFb1N7f28EV3ZWDPO6cEz3U+i02e6PAEejc7hGH462/r7J5Fq4XFjWhA9tHOvYDAFFoFQlXTUVhnLhEVLmTEAthrAwMEJHcJ6j9yphx3pCiZsqK4A5Loj/kyIlfddc9X9Mq0fmevGDCIKcaqVefwloqtHmfHZfpRDw1n0lbCe1LC9qukA6pGaXcBG6tJKbSSTuRiKqBgB+EoHzT3wRbfaXZcqouGYpklF738f/bvpoaPChWLsncxrbXPXuJ0bu2S40Vs0cjVEue2z+l0q9cV129sudlr74Z/frz7KLgMyaEAg3n9GkSdcBxrqSj08ON1hC0xxBTuKUx/Undmc1pmw737eIEdM6fPxA/7f4+0m2sRufIvMAYLsadfHSxixMnDgFRePsfl9Xr6KBBMD6uquvTNCxmDHIfLGhF45viKRBXltskCiLsQkUWC3PkLn0lDr2y9ES3HikFEtkiHsLZ08YSWZ0zqJUzTZkRxWMy08aMO0IxEH2TwlP2sa+XS0yjYPe50LudKP4/5jTCQmEJ4LqizGlzAQ7H8HP8nEE7uQRAj+JiTx8V+oPjeDw2Ojy8JHBCpZGCcYOvcHxrV4KhZ/U9UgiOYvLkwn04nL6DgeA3VSZj5D2dIhm45mVuC2OgzFEDx3IPMxTSyKILfa096SpNTwxPYY6zQlRMy6okkQ16oRU11ynmZV1F7exlSVpjDlO1fC6XpNxXQtfHa8zcZvty7tq2p9q8zJnY2E6VZSdGqFQnY15bTxurgYecxzk8xgj9+McZtnn953r+FT3g+i9c9APzzc2yx/gzmN/511ES15WpyIBnjLPHLMiw5j6VpKQ73svu0vYR07ilYWHnT5SnOvcUEIIIpZzslHJhyEUsf++b4DY8YG81xWSFkkolO+OkUK2qlOLvXSx+eCEe87iLaeBuvBOftJdvT4AmtlVrLFxeioDLb0E7J9iJSBwiRKGSMw3M/LlEeFnfzOMSoWSzVQL+qIjUUjDq6loFq6SuJfMoSiuDDi04xnCobE939tG6ckVCDbBvQ8kx5qufy1iE+OWWRgs8omorDBZR9k+tj1B8X6xpZtuO6a92a8SFUzvS2G2TYaVn9aD2UCAxtWUGTbAGXu0JVh6CNhLJTbkTBhcU47MjOgEy5oNoJXDiRbGjbQo6lM2yjvp6LkY2x+ktKdlGy9xzaMO//p+L92gs3Xuyo80+uhe4can84diTPU6dd7/Xv2EPq9F4ZKNZPB/aT0Ra+4Lvv/e1guuA0Ic6lvx1YqTQvTkePm27wAD7Mwop5PBRxCR488nYhJOW0+2zCAXMjdTSsFCAgji81x10/pXKdL68Ozz/uy6g7vPDSIJ+bZm5G0Runzy/sBmqsvSqmnK1Vs80vWfI2dNT/4bfnv8uNA+R9oKW8aEtUjNzBhhM8h88ct/8Qxl9c/N/+9Kb8NqJoTdBS47s+BdwHzryeOcEOM4dhYoPhqqdt+niiHtqZLzlbZmYK/rP23eBq+/zXPwpUf7qn9tD+Ax+Br+q94YxajbGtUGmqE4neCrlTYnunSB5W6odWmNnDMecGxpBzhT7QYsBxzPvULpJxSXT9Iz7UbO7C0he7ZREKKNaC5S2257HeW5G53V3SDwCzsvzJIQuayob2Rw4uA7C92gBH87aOWf0FowI1ecaUQIMWr9y1caKmAI3WuH72T7HeEO9kKoKRw2SfcbdTot+0H5r3Ih894vuh8zdYVT71e5ycGHv7pcKAr7/575xsRv8O6dCU3PcwWkPoaLmO7936h2jl7iEtjU7YBmqmce7EgnrynJBC9IsrKy17kEXcpKejlKxf5ZpInUNOnqY4QjOkfO62QH6ME/NrtqFpNaFiMZKPohnfdYggyUqDHjTb/QhkuQY529/2Mwz/yaEp6aZK72pLi17z8HK/RjPqVjs8NZwpW+UQvFnvqNxaNWmOiv7BChssM0Qw7AXIMy9JeJi/+9MBzzdhJXskRIs9plZanRq4TiyozdPe1XnOrVNApLJucwkcwWOA7N8ykKQgDVIkjlGpDPT2bcjHoJo83yYt/rDjPtb/KBzZLxzI5oyzl4BF5kYowWlQUbJ240fjDrz6x/2jCsjdr06jX8vUL1wU5eCgrD1w6ENDLJQLBRXKBXcVeLthriUd/gINvHDy+NvpETiYyoDF8OSpLLzqJR1MeoSyoDKI6s5ug3AYrquESDK0p0RZFGYaxLeNjlyxq/3YrxyvaW1Km3BLWAKw4YRWpmyKNmdYxrSK3PORtGLHuOk7IwRcNklBTZAYZh1LqUyxCabYFjwEH+NEJacctKmxkipLDNRGOatIJE/siTGx2sj0EqqThW/p+6RJQXBVFzBETxqJkQDqtuQD7mQGhAlUZX2RebUkORjMNOkijczegkQPS7k9IZIsAa30P1dFnI7f56c1SvsmycVqb1UhffNdxGhp9OgsXFDic/UogdMK/aud52no3Ah2o7PAQHKjEfapookX/yOSPaDvfHdE/zQTXJrdzFMwtzKbmhTlR0C7ct2t1mwBtfgmjRxU8PygW6AME2qipKyNlIQ0LroDJ+Q2JNg3gMcCIzEtmUVZMWaSr0CUxMyamm6hiDgllLWJYhU95zN5/SZfXcEP2bgTiYDhkbsYXSZhlN/lKaDE7tJMtL8nAWXwyZtf5Oi+idoOd7oSyKj7lilCJvZ1V0w8iPNDCkLhdehgzfYed+0n867aVhIH8Gn2VVRijDnF6XTwYV3k7jJ83YB8fFohzLZrB2QkINpM2QLUbfnekVYafncCB5+v0r6psxXIJYDuGEO8++Gj/PS+MeVqhHv8dRHUvn2BmAkhAX1M+go87fhIGLcD1LwGk0febvisLDgerkjp+KBueZZar2UKxxdh4O13uglSbOBsJWe/SkodNcuWQLBu6To2OYDi0eAt1/XrX134FK7BwzSw8yUR9KmpVOocF3Vk5rVxtLTHr74/wffue0Z37u6E1m4ESsAIKAAXSsCdqglNQ8m8AncrfVs4PEOa65eyrfx+xl6iWvju+LIQ2CPvgLXFoakh0WVOAhW8922zU4onUQgckVe3nqPDc+WN7V6xlFCGG90QV6o/BtMRcDHMFwX9takLI0Uc6lJ28aWO8NGeL9gL84pV8Gp9bvzRNdAq3QyX3v7dOefyH7vm60dPb0Hb82l4VmBNWGoVWBoCrJTQ9PjU4stqWyx9wLuzQ1ceR8tngGKKKKr3j+RJ1vQfOA684n3t7gZOrETu7PxK6qda+LTYKapVC82UJSIkCvnaR2tygHGq1PfJZqdC8hXh763EoERvaw7HN8WyB2IOgajP6KCpNjDJBdOJMvW3+hNN3kwVhmyPZXF8jeC9cZB9bxMM9vVnaHYbZcgpBcHakKpnvDfl2VXMNbFmuByhH71qyVGL+a+sOtY4UpJGs1eKHyX6RmJVz3I5KCjOhLzgtRJOKXyOIzhO1T3gom9ROVYF1TlvZNK8/Bghr+Q5zn4YMsJ7yvVq53oXhDScKY+MLuc4e7yC8s3sBeBgtiDPYaKEGIqBbM5HrQkP5xWpMI4VJoCR8CpwC2HLL1PyEIUlbApDduRwnDabhHQluuPkcJprQJnxOVE4uLokEi0RIeeYYYAy68H1mnMKHQ8yJEzLuk1CyP6SARU03yWU//wjaBrpQnLTYbal5ql4anVmSyJ2+R03OwfxhfBRFNb2Frhy1HywjmfPgsrae6EbyowD2zE9bi+niL1uvv10umyA0PcTNO4cOjhoirrUdxA2F1wZYweSZtwKgdF2HMRRCgmMO+hGDrICbIrQk5cfpU51G/4UCyGqQ18TGU5zk5wlqoEBYH3Vq+3oIt+WW6FW237WrBc9PtDu63vR1FAk2xMgp6NUsxnmVVScc0z4oh0L9f2/Pm9UbiewtFvTaiq15vhOKNFbYbDWroHPQJ9qHPUPOY72bamZfp1l/lSifTaj2kuJTNCmzLL5KNVPnKdOegRd8jZ9pm8G0VFi3+9PDCKdh90cJAkOhSRJNEHU22utvOA4Di9lhhWFq02slGfMkktKRY+oMjs18H1DnSiHCQiwgRBu+3tpk0HjrLIk3GLJKrFrgO1pyLHwBWKkd1w6fUde2nfpZduvGTXm5rm+vE8eUq+ZD+TK+Qz6a4uuKeMHKSh13l4xYTi1CcJhM9LsZiVrA0e6AFTU1inBsX7dbD7E+7Yajk00n2hWqdL0dmgMGXuFeYMmXnwminFSZhOx2jUtmLFex5RFpYE876DhMs06ohlACMU3pWx4e89kBlk9nAPE2bTyypGVKjSyLhikokQ7718xPz1898qkgGlXexpVSYneDAVh/S+iu+80N4Hz1+0M7A/yOGDThE+8Awku6vkgv0riIwaTfz56C4SHgXbejd4CELnFCYIBRZiKXDBwlVfrPz0pzBwLWItZ5i+j9/1t+4VuUOoWY9U1pput70X056lL/pMMRfgQQ96kqZa9urmsAmOVYYXEf02jW4gWMR2Uxpk9NiCTVQSgO1uy8NknmA4pihGbIYEmmc5/V4CUeSRDrcNpcAPTnXKO7Z6nj/Po01dkXd1aYGzpc1J/wTJ9Gv1GrOMSuSFJ/3cnG068LvkCbDPvnyCZY1ownUUdolu3puLZQRgOP/xxoXM6bs3nzLxqRPXC/INSpVcYE00cunkITisP0KtFM44FZDhVBhBlBd0y4yZeX439PrsQENIz6mdTAHU4wPOW/o961e5BVn5iuZ3xhgd4+MdH4gy5vqN7rPPgdvin2eRUa7ghZixYPcpO66K4LRQw+pIzQDBMXHQJX7aBWOlyLL2oO3mcNgcgKlsUQq0suRBRGUmcK/LhIeNXfLW3RzUMKsEkyKSs7y85+J57eqic52NgymNOUrTuj2UWBMnCO/b2wMgeLJq+l1rcFF/wK7eV9NdOnie9qHD/TXsh9K8kljr8EIj6634eCrSNb9TMDVsCeY1s8phny/9tLPe+IZAU9db7916Bm3MG56cAuX/ck5DS2BPuzdXpeAsgU+VNx+7599BOJvnG44eZ6grmYh1FhkdPQ9KlUo5cDI6tCt3WdtZj6sdbxyBvC9Ck2+/C6W6hTHciPdq9qZXisfNdtI1jWtXGnb/f/+79j+3urfuwvAhzgz9+QmuIjDsDbPOVxxsaEEBXoI3Bixw3SdVJb/caX7x1d9cyNnxtu1IUbIxKp8J6afDYZ4P6R2zKsZzmMbFswu+cCQSLVSAHQ+zwQxligIdQjsbow46mpvkp53pdOpK7VlLwNP/Erhj/cF6mSxNrBb51egKm+sAW2k8j6XXHNgWprNCq3rppKVf+yUtHbOjzd0MNz7MZrYnbvy7EMwFvemmrR5dCryVwebHnxSvSnhyq1sDPo4fXGmLvpSKq3f2lpBCJrgJ3PNWKHqwPdicL5EEr2EobkvuaIh8cT8FJ8IMpsyqGKV2lWrA4juRt3sLn2zbcgl36oC5FZpY76dQGBqC8pF8v/Ae0YCpQJU6lyTiK2dVqxn8PkMGSgNHoz7ItJEZXJKbUlhO0SkVony2twL2mTsoPQD21uKzrXq1eifRDSr/Cd+ZDGI1PHGQi4pkb91uIBoNQZPgTfPlQ2dAl0CzyP+ajIWa0Sa0cueHMxN3MHehRVTSLCFM7YNOXOaWW9wqE12r/3JUSeFczLVJVcvJpY1Coa2FD+An8Du23qijlVyukVDFNFXp2SNSjce1ohjpJKFSsKMZrxJiVBFKHCKHeRnT9pOaNsT0wXCWqZEBFZwMfnRpUjp5qlfWEyg8gVnPTRA5/NAY5n1EgL3zBgcwFj/f091dq1VzHdL10IvKnZ1GeJY7Pd211rtW7l20vgjFrpZGLa36+XRvb2oQyUFwwrQ+j5+PumQ7ekBdYvDt6kfyTLNSqbrmr4gjcy615pwfxjaWgH7SPPO7FrjCBYl9FANeMcZu2FHWarn2NePXi166OplUKvPchZXBUHShY10w3sFHIGESV+n34rTruSAVZx7j1jTYEKaLLvgOgEgvZOHp2OLk1iUfafAtt5mzHnH7HMpLElK8dDeMqdum1JTUFVfJSbAFb8D3xpm5IpZl2CLO9WUrMZq1LmM5iKSZQUkhB9iAUdMNioUHgdrYoYwhyqql4eFu0XTH7va19CZANdRMH2GGwp3DSmUYi2To8He1F5KxKg26mIS987LtTNdYv0wvyrAkYZrVJfmrDDkvXmkcn25kwrWxf/6yWGuwtquzfMeNptnaLUaLzVKCCr7w/Uxt7+4ZZR3hzM+tQU8blFSyKMQdc7qoUgdW9uCsGM2SMMrd7L0pXCgyozWBl5I3ITSbrV5l3/bmmHm9tI6AsAdssxbUWisx1FWEcMNi75BgD5Y2unJwlSZWKrmMrkVUctn5beN05nsYnNpSpBxM/wPM2/r7Tb5uQ+gA2X+VzQDwlyV7vQ2WHxUb+CYpjl3cRzqJj+NNpEV8Gu8hraE1pIX2hXbPGp6mTDoJJYYWAkbDWA1h/veD7h0w+Exsad5TrIXyoJFJR0xLEwpESevtSzpAXXktGiTALXwsDuUcKpi5PbiRqkPBLuNdAl+ptf8SfAnEUTmNUxiFP9tJVVPArzT738vWSKAIVxayAy+hHeLGir0uVywfXErHmwxcDWthTYCPuQqi/HfAjDCLdgQxaGzsKghZqlvc4tIumxoN2jxyFKRN24Qw/+zg4DMrIWkzJsxhFfeSVbvo90RpRIcbfZmIG7w6KqaRHsMuvkz6Ml7AG6eWqR66CuujgIYJ4y2JYtvPKPEjd3DL2kskTEZVsUWcB75AolwCRny2rp+YAq/C8j8CO0ygiInOMKzfjBcJSY6PDbuFe+je6m9nEpYPZZiK4Tbsgp9et6fxmRL49MNn/keAiQlYMREPnRi9GS98n/jfelkuwc9+NS6lGHp/peVn4yRt065dPgfCoUdEqotjn2xoePUCWkpA/PAPSbEqvdh8TtR/QO1C3KjglsuGJ5BBVOESzaLTjU6X2SorKrg0qq553RBzwv1YRVaIoa/iZbKTuIO7jqcpjVZBu2YBMTBNTQah+YTlOZYE/ogMTwFHZlHsONh1k4Yo9yeqyIPggXvZ/bNbEEkfBg/fLYbng/+Puh36X5XXXf4T9eITWvUlJ0EIkvxP8NLfv557DYr28rtN6mb6PvojIQUKkXSR7hT61H0Uosxqet9ZgefiChH7160MyGbPf/5zY+fRiIdKxGnOgHs5CNYbUHvGpIRrzBtAfqT+216mjQSda07fmjoKMUSHUpQ92tWw3SWRkxEZT08ksqmLmbHrDTDG8et0G+/3ne7FNDn8gbv74KKsWl+/FL+APhLfOKU6QHd8t4ceC7D2T/f7cTfLYu/y7/3ZUYgh22BG0ra10eoYHhyFaI620ubt1d6OQcSN8SJ/E9QpbfwLr76gHq/GvHca3FHe9mHC0YfW3rvq0SNjPSASfPrEZODSMo7gD9dlYlr3EmJwHrL7HLJUbTDllzicgp/QLnLFtXDRbLX0aHB1VF33uiGOhEewgUyMI3yPXi7g3YMzvcULzM+A5QVYDD06ULL6xNthRTZ3+kgUofuwNVl4jEyPk8MMtegkWvxmwGsZqct9TsahQ6fgXU7oMz2b3wHzyzY8Pi5BqAi+JhNR8BU4m3snVPwFsasIEQ3RDkErCQYKGXCa+0VOo8y3zqTi6/NGdO+t9I6UMaEvCce4JgUDdqjGnmsiYPBXHi2dMFzR4lddOM1IJIluia8zcKZ40zr+35lJXPyDttOfc/hdgLScZfIx9JZKWYVUudpWU1NfKsHlvRSsMh5Dq4P2ChlcdwHZTaN4QO9ym9pbUqCeYUU2oBoiFq8k3R218znqD8vo94giEg1iD/kDDI65VeAYbz5oFHlUypSRRE+r/ToIqqc+dx4i2ItmHTGgXSOo2RWce6TZ4PlChc/SqzVPd99WOzcciPI99DjzYd0bBBIiNb1tdAk7Now3CWUQGQjQEMf1Kb7OzP7zPo/bVixJntVBpt2oIzBcLe1eKylAXfK6JHqny95EBjMofvbq+FPQNHQmdG5lu2Qvy56RnZdFQ5uQpWHQgn6VcvGhkCKNEHPXiFymrt9yaDe7ab9Po4AJhPFYTGzZ/smRWkXh8Zkheaxf/U2jqHTToh0I11uSBcJHA/xeMLHCqwiRnVvdJ7GjDYUbukq1SqkQ56edrUIcPeogaXoT7z85uIn0/w1SnBxx9hto1J+GjyTIbsAkjQVdFkjoJesFRbhH9gBeAZNMEz4Ah0wbPoPW1JOoT9Bfov/Stl4Eri2pajHrPN9fEUzTckcrsjUAJiQRThs0k1tyJVIGB2TcXBAXvHXoFPDLNIyagGY7uBU8X3g0Y/rg0uj5UWXX8XXrxJyVMaj6dGgasiCr3v/pcIln+Wz0v7NNk3X0rxQqiYR7nh+VEw78NK/SKxQgBsb5B8W4Tp8RhKp/q6ezzZZ8OmLwR5EWipmm19py1QLiWiUr2T1qOty+YjoPtLWBBff6ws9FGs1LbLAE7h2RP0ryHBy4Vws5sGC4rr8FLYVTmXjCLp2zhXPnDgeVpaV1ajHURwJz7fKlhmaTlnu/G0IianoISIJwW9czSC1xlAYkTFRO3a9jHfSGzuKRDfM2jONEtm992GOlRnY3Als9myvc748PgKEF7C4ap1hOz839GgWcjnE0KtZyoC7D139UFL/L/SokaCF/78CItrmBGCsOmCiKONWRE66oYHfSrn4lAc5UOLF/RDlY2z59yBO6Fjd1pqzsrlnNc0cZDjQLVhGmWGucZwbAXwVdkqXgBLsdnpj1SvgZdOExSTcYwimSCyCDkRnTHXG2DzToz8HXUciBci74JSjCH7I/oApPyJ7BN+BOrU/dQ99DjytVqGk1qFOpmKmUMj1GnZOUIdZGMgJxTVc02uNHahpHndJaKTiE442FzJoSgvtCdb2tk58UIFKhj/D6kzJpW0ZtKFHlwVShjSxJhhGPq2i0aCIkTCblqXLcqRRFUaA2jbIGtWPkQgEizLR1W6XWzm1bzZPhBPowbvULxR0dFiTXAsfM2mrtPmyCFEZUNfYo0uCkYCr+pKR2JaRGWzhdKnvvOle73FPLZfb28P18bDiAfIFIxtU9aP+mX6QFqX+/X884hnPNFmZUu11vkct9Jzsrd3Rl28qb8hCm3mIgVitZI/GXTr3+fSJtEv77JnhuTJU5pcA/O5hzk1+k/QGREO18W2ytLvJ4r/z0oxrQ834u86UC+3Sk5z4KvGj/1xuuztV+UsAZbAge3WYKGxmMDcG8/hsQsd8x+gkXLkMKy+IH1wW9/xyq8EeSP8IKLJN0oQUdx5jqobvoHlmIzGNp1ZE2YFKNS00fVEBESvWktiFJdDgmVeADS4rHQ1grRbmnhuKO0vQO98HVEYYhGGOlSOB/EZ96MLFvI7rRgFVmAXido2krPKWuzLUsGtrZHV4Q92b7Gma20Vfq3sMyEILKTe/Sj/1cVNPr2zEPtrZFKysDe2jG2dQpsl3H1A56O/2k1bY+Uu03xih6aSgwXUtCDFTeP7OFJ1OpcuNuDevNUrdpnOuv//N5O9cPDgVNAszfWAh71hY9JDlNZ72QBiZocVXgyHpopHOW2QOpyhVh7LNave2i9raQP1ysjt2Fe2mbztkei51YskBZxvWRB0ZuvziusDf/Pb3iB60OIiBksPrGluiXrg6BUdjWI1p5amlD9pPa37qz8XXbIsvqUZEg7uoTPd/ZLjdbYu/aSroyRV5uuGnhSH1FC1I7kz3mc6BarOdhjx5P3FoXCKiHMZZtnkWl4nEY+eBcK8Awgk4gsK9+1gc7shwWtGir18aY8ToxzXU8QYC/uG8pI+fkkVMVvFcfLe3WV8gS78BvOE5vLNCSoAzfSHqADZ0kN6EXWNOyysO5mLUDWRXBjSj5FibC0JQ5CDfhh9vSAwMMTcC7Y8Nn8qQwbZPLZXZcuKRTt+toe/7YlDO0oa3rSxHS/Q5Hh6cRgUID42leMZB0uqYHLZWtPFXw4q39cIpb0JEnw+CKZmqdbifFRWF6kGZ9t1XLhi3ke/8+fmyk1+12bdenyhfBYYhjU3EwYVlaD+LBiPqGVmOWFX4IWvrMg2o1vOq99K4l75xDNS7tVZ1PrICUvICno7mffdhZQ8FASyJHYsUGSa/wdQ3rb6dhel8bEq+fLMIurCRgwePETcXBOY63xEFvMCJzLbVaKLQ9BH0qyP9LYGvhDRW20Skm391kZ1b1MNKVm44OV60JS7SKaPLkeln052P3E7JoMS9gsfFmLXURxEiuINkcgg14Ez7OJW8Gmcuyn0gbZA7Bu85IZOB2Q4CbMtyY1dNb7V7GMWkM4+yDhD1gKvJcXDup3a7/O5/cShVtnMC8YFfmbQlDvX2EHQq7r5bzDiC16bGBm7hvfVi012fT8qmpPhywpJmDuDYQNDu4uB7e/j7La28d06NNQhfBR0EY+8q3vvXAWf/K/V3hoCoFO1uAGH/jG+V2Fex9eXye0HzBFzPxXUMu6lMG8QoaprXs/1+0zS5JbaIw6B2D8003lFOa45qu8hagrOoj7gvOLJbw7GkZir8/YH6Sv64XhGclN0XLuuDqKTLDCeBiG+dl41ga3IZduAu/kHVH2UGqnU4Jsz6OcFmOl2d8389ccwMGixJxokRQUpzXUhBYHihGqr/FxL2L8q+5TGtAgN5I4KBduWss39I/NxFReMKYMPvz2TpxfHtGJXQE28aPpTg2lUzqGkYl6XSzatcKnUxWBScXG6Q2gg8GSWSMsDMW7ICLC3GPEbzDi0VIUhla2JvpTwDqGaP2n/HaFC6H3qocmuwrdw+LH/t+x+Y+xI28JMsOlT1L8k9/OryaWF2kzbPov5z9kbegTRgHChBpMt7n05kEFOPGcxbZfG9vfWz+jrwl6BllRmEHv5zh3UU9YuaepOEhuujgVUvzVz/v/z6znza0TwCvv/6VeRLERNlot8Xoewqv6wwsvvezjZuBxCiolu0dbiCQPd5DTX3sY51Heh4PftF+/MP0jbM/5olEmsLL7vwWpBBxCdszSntcXrHG1o4gGEXgm8RxyYEob9LKVCrliWiEso8oY7PhLnVcvNwcO+fJPXwylfIHnkEQ5VDnCBEBRGDG4+ixxUSIIh4gfnPaghVYMFv+0c5Uq90mISg4g/+ACrNSStLl2AHGKqpAYWFrH8IjSPI46GzYnk7P4/nmfxgYei8nm+zVlxBCC2PX8ARYentKcKWnEevIPAfBhzY9gaaC+vjGUEIS9VqJFxz46mpk8iVpZkUTK8BS+K4QUAkwlrCMZQNMDXkZNnnLbggpKXnJEw9WspnlJZdMa3z3aWMiWRGLW8oUQgZov2gPxNqRUcVHpKtE8pFl0a9lsz4XSppqHJGd0hCHpVbCt+AP3hYhraS6N0aqUrJHDqQ6liZKsFEtmR6hF4ZtlevM7Fv0iu7ljYfp+X4PQ6xhbbDxKzJpK8PWeFYSvLUGRqmC4vRWusdk0ElmqRkuMqZxpLSskTGWk7SYrl8ZwBwet2B4SAAkBOoJ9EnkQ7xBfr5gEBIKA/Dvsr93gEPCkkeicGXUe7jtSdBcSfWXv/80gImFk6eTCxgetdPGMu0GOoUcCwvwJbLYADnZn669DKZ5gSxiyxdqfOa2+WbFf8X9aN5oxI5CFORM16HkG/NH/yiGIbT9U0uDNz0bNko5q3OwrqK0+1N6y2wFLZAyz43WEATPSSlim/kwxWWz+CA+8rMSfdf2HjYmpOr0JEd7z5WvSEnHiBLc2KjsnApT1i4r8NyBhirGetNOR66ConE8x3H+f9YPp8p6RKa1nYOQj1P/UeQa6f+dkvK6F8YeQTCC5hTp9nxh8i7sgJyUhHhQ0hidgWg2vvEThanNF8wAbnS/LeEalzIhePk4j/TzyAnwFOu8bR7jYH8x+yvJicl9VLteKZcy2xYrhTplHSgIHSUo9uChePq+35wtN68GTRq338jdvPMpLpvPwS8AgkCdK3RkTK8jufRSy9zT5wA0DW2FzoTOAh9+epmUkJ6iUFM6GRNyna4BVsebpa2oB32j8vK+uC9xLRSxAxc9gJT2lYz84uKuDi/y2UwebjTieI7nOfDV8oZM4HnrRZOUn9t1WK+48l6c229Ox2MxjkunU0np/12nugJkEEUEbxsUQ/7dZL0su81j0MW530XQhdAF4KvyZcuQbvNUKD3lZKQTJUNTOd8RUm6FZvMn+Zr+fun+rKlN8mNwXxutObCcxHSTA/VQEcBCC1Om78nuJA2X92SaxfsQcqjbqdE+NaYhJQnsiO5my4rjnDnTaIF1D4+wSuEHk+9e3k+0e5ZINCFw5JXzfS5JELm+vnaJld1BgUFs0+BF5uKNH4K9sEabsb0tic+DV5/ifIXiLqGPxAi1PRgfuqsBDJuOLroXmML1HDiFAU6wPcuOgEYfcnuAg+7rS4K5QETFrpPMD6bPzqbXEyLjegjXZ6GSNhA0q3k+HXAbVTT64MPT3zOBoIY+0BBAy6iwbIOjJJ7EAM/Ia34wLY2bHtzLoiA3re9QorwCZLGy5a+4sWPz3kcvCCmNSk6Z9Dv5rqEk2wLZ06QoNV+HPKpEtMLpmaaQx49MZ3/U4PytZ6wWQ5hHedjggK/WwbFRLG1+0jGxVt9hgRg6I0KU8KQL4hXmzXkDFZZ7wv/gwXmwQHKr//InQGTQlb/90huSLUH/XcoVPID34Wf7t29gp6xVvMRTcSrI42g130Fw3O2GfJjT9k0iU8pqOdU0LUFIJhNWTn7YYhFdBq0oTIheHNBtS7LBecs6LlGBU3WUnycLTC6/n8VsHOH5+QPr49RlBWHS6iauc0GJZ72tRSIQ6w8U62dp7xRq4Hqc/O6yTyHLiLTUyQeQBjrMu2IZxLpR/JobE5xw4Ev4zR+n6lJs75eFw4K7D6ysKMfkQ2M8TC7znyhmA1OWK6NNFC2v9j8usHAwxM+0ktEr/VPbBgUt/ydjVX1FIkOGI4eSpD60cii4/qrNihoIaOvXp4T5wEVWbppiSEv0DY/miQgxd1CqzDjiPWZOfeHU3ZGXUa4XO0Gu8fjrPRuPM9AgRkJUgzR2z/YuBIuZSCXoYE2w7jtXKVT3JsFOU+vt/Yqh9VMZNe23WmvkDRcNBl16fSC3Lj4AggBpGKBzRfwZ7I/Hm3RmRqVXIfJe3u2umX9bY/psjqMbf0qx+JxSTkWOmCXnoP2bsAp3NYiOMRUwqb1aLHFgS7v/0oPJX3OesImGtms4hqA6PMkmUISmk4CmeFW1cqRUCiqpapq1f/0LSg7HQCMB9LTquI7Hxjm50Uk83zwc2rzvtXXzR65E+z7GkpDFJGbNwAxFrTEeRX+LdN+anrY2qO4HM0EmrabdrNCn7Ak5adDPMswvJD+YVo38xY0me70LQH2ld3852H5hdLejH8Pc+KZy+TfaEvbodr7wm2aexYjn4otV3k03hXZ3gtgcmNTOS0qrrBt/QD/240BkhDpueIlls6gl86leKz2AvgG7RDmqVpXAqdB3jOiX+hRZjGJHcXaQ5mQ/86XgKkvNjW7LDBppQttVl1tQpKAgMJQRJ9jDfFuli3SgntqOP/9yvetFOirDStor36plhGnJXQ3Dfeeea4xVsZzPzV3F6eeiCdOU/ew1Qns4vDzIjSrgtgyr3/3u3uEQMsgQVEn7usOE3FbBGzeKgro02zdyOaHG+pt+1CpGSHMN7GZiQZrlXboMsFfvP/9p9l4mtZMY4i6/JErwxeh997tfQbT67ePdubuT5dG8pYRJ4rg7iB23NMsYUU2DRoS0R9JVIri8xCTTU5kEhlNq2Yy7kFBq46MNhUpYHh1CFuujAywmSXDsIcjldd1Lw8p2Q8boTnk01x+pt6iGlcLwQ5FSgsJ5dUSqc5lfqnRoUcVCRm2D3NSQBeYAqOdcxpC0ZvMDUotlIG7oVJoucA/6U7QFKP0ZHRUynHZqNW6qGRGdSEY16MT5yytIoc03VGKNvT5UvK2lUicMe4st6Vv1tdRpHeUVTWlU8Bebzwa35VxF0co0cOdJJ9Ql5FnFD+bk4bih3IkoCSU7xj1MczON8hlNk5GwbAM+nT6Dexoiv82E0M8hSj0gfPdLCKlfNfm7KuVRUPFBBCXgyZqCHOawhwnMO96CecBvKO2uB0iNc9XIIWsQwcrRpudk+hBvTmNcFmcmhhsGtmVqhfwZnr0BNzJZE5pNepGNZJbY7nAhrpJN1CxaDVU5u0wXdmxB7oA5V/GHB9lDwESWK5ZUi3uucNTEsD5k+P9km95GfZ09xpHwNWMrjSikqE+16FDGMnak8o1JoOQBmkjFJ37pDgo80saSZRvDCElsM1EX7P1Kj+h1lhC80IaQEW6Ct0dik20ol8PXEemPjQp1CzBdbj4AASZMgN55yjnbQr8XSwc4/NIAzQ5N2BPbRgpIyzp4rQlEf04hg6RtDb74V975aNyXvptFevSC//oc/7WcHQXb38g5bMNteI9LdsZb7bVQaVoS0cZwRpA4iaC5vdBSw0WaeNlWvOVlh5AMLGUDlmgiYi3o+Po3gRbBlPU74aMjdB6u8EoqWTF+L1oTnew5cNtKfHnY7QmnOC65Y9CrINWMJdM6dfpsOb0koRxLCjiwOIeZTaf4n+cskg7fpBhPCVaYNo/lqBjhvT4pYGJp0N3Pke1NKMBzJ5ZKJSs5A6AcpUTEQeOib384IvEalXEW26AVS/F+wZCkzcXMGHyX7Ai+yFYXVdQf78iE1N7i8CysNI4STMKmjaJUe3+/ucOZ9fVHOCXHF2exhs24MbczXemlohleo0fNwVJjTrAOcUuXyjhKgee4UnpNPajhHktYSEjNXRCczT0IHWYZCTcqcF6tXVE5mPd5WdeJhRtxTjedzGimWtOtnJSoAutzcvBpXWJoljf7WYgspAc4ZZ4PTkvzw+IUlx0Mza1+8h7tGgNX5pBWQ2soGHXz4z912IuxsIonGsmVvYbv7hgJxHHz6tfzGs6YXlIuwpm9vd0m2zNpGh7JUigj2loKNT1NWRtOjcZr2Trj66boR5TdK1I5sj0vy1LAVF3P2rnTbR7o4KcSp7OdswX4nJdpSWL9eLUAtlGau1cSZWrVKBLmEC6YN7NvghvESMvR07U6b+65n3xmk+aBNkS/rJRFbTwVIZ+TVnOecOirxu6k9aMEJkw23s2XwTLYHQ3/jwyWlt5eqms1AHhrHRYZR9fIXTuWLG3tp3sD0ft6Qj7xXB7iDeDu61COYzer+5PXWjR3fGTdpBuupCvptmMNFPA5ICsJViVc5Qjw+NDgxzsF8pDn47LmXMBXegVsV2kBgfHcZVBRxUhKUvNxk35KbfpDR2lGymQXrvmteyflGO/cX5FufjLun4GM48etvT7uGmxtafGzRkwTC6djoabNUnxM/rW/ihNrNaFtYZOwviOk43eXj7mHZiKsI75438koMIAjuDUOX1XqjoRPWibLkfTToly2wlIWg6WkhSW0DG5GCE54F7vjVjjXeeyLlXOkjGOyZhvOPbdYyJgCjVNJ0/QFI1NsgB2y/etHD32XN7V3y113EWAnOAq122gMYWiBsGCJ63lsPXDhz3DYDWsRHgqwmfLwSHGRg0R3eHx7bGzPaYnPIuvU3ds+CNWpDk4Lt0lMhAOa4y9Q6Wvmz09HzZZ166apiuHk9odw/7ufjX6hW/iEkZc2nrOVmHX8qQ83ClE4+MribQJnecJY0wxnqv30V19oyMJDQWC8aYtNGbaeUz1jNRmKtzn2Nxx1QCOQaUsVjUcbsnDXeRZuragW/i4Ys/+33/QSYCR0+3JEjHdujcYjoZkmPxrIl/KHVWu50DVsw79n00asAYkkcUkH8Hm1qvHM6ppTgS9kk+851rHc8uUGu9q3k2tCE+M6UrYl/OxAnufF2dTc8PpxbTfaWpFiuVxAhEcZR5MMQ5DtkcrDj2c8NfyWze9hWtPbsDtY11EEtCSI8qzyCtZ9lbgeZwo2odXPVGVEItEMb0sEixiTzbL+o2z4awbxcbShwt//XzhoT6zUhRHzPWcC0tNsjdmv0iP3M3zLbMS5a02W9UrPsO64wDJebd0dnmh95zQV3PG57Sb738rKT3+koURYk4P649Fc+0mqZNkjOAQ1TYtRhag0kZ9NZneth2+2un4lkz947JTrY6ejjBXlt9n8BW/sxHqT+ESXLNcvjBqUyi3Wq6PWWepqOwbugzXdNiI0WMpgNIZI9aBOvVg5MJu//sOVvz/ZmoZQuePXf1hUUlJcVGbSv4sKpdRaMF4OovXfO1sNx0EORmuSsKLx4lO7EfSrNdtyrlSeZSwTxzlFpZjKDs51yuA27x/FLwaWzuDN66UC29vA/D78Z754UbwKD11M/nojN0yNyMQE9wleVjTVbrOuBGPiataPJI2KGacTIbvlbIIWjTafzpZ5kwtLE50pg7zuC3mdaGZ3hTiTjv8whlEt4pkfvjO8o5DVABJW4XDm3uGllOzXEcPSiuPs8and/4/NF+9ypHXpJ9nXLr/W049MEu3yO9jjPtmSipLx5Bn/5v7HCj/FWRvenXs/E6AUw2H89EqDiAUl05OZbOqGl7Z7jQJMP1a5NVbmTsxgXmhJavrBJ+DitVeAZfepoRxfstP+tUCw784IcvPtaPpj0VQGg8ZgcdMKCgpVch6dTiEpExPk7Wa16S/3S6s4+6NbTPbbjz/Zo6U7owHYXLE2n45Vs9ee/O7EjfL2193lq0lZErGktFQp5sQBmqCBDobM6CED73KxVpUxMCKi4peDSMQuOszFrvru36qDko+Pj1th88PzuuaSUY3mQEC/J9cetRtVJa7xnvcnOeYCRg8IBXzjQlxYgiMTkMtJH/tAEuVLMzyYTdSfplf1dHYXxyerOukz80D80fZBNDz1txngYQJ347ez3tUoZRkpRCtp2UtUmapmReR2iVQNopm+rDyiti4QcOxDwvaSNTUu+XkdWcZNAK6NF8a5JVWfzY3xVpipt7kE2j/GDbE2WrRq1+3epXCb1G2jDa9EBUqMsLUiyihkbJBaf3q83NOnSBLNy1ddP6am0TW5si5NHFPIYt2P5MBq+eZfhO0+ABz0nlBps5WIm0uw9YJpXLNNSyG+OKouaQuHSfk2mjOOLnZhRnJnJToPSripY1QHyU6cs2kbF3RL6KH87+PrVvhPTkVW0uAoKG8Y5aigJzJVSKTuCF0VolL3Cw4pS0CEHlWozVfeKcu4SaEhS57ZLN4UbZOO1FvE26YFqK/xyhcOfD0WPlrUcHNscGXE23JNZlzCSiUxeg1XZpnSCz3bTmUtH8wqg4ShasqamVvfoepxwqLuYqoeOB8iPVknnM2DmDxaR0Dz1mPZhEQQy9IIwm7tpf1cJYC19zqEMgpIz6w4xVmsaHKBVkg9sVS2RlarFbQw6zrdTktGHyqFUu2NOyM9KMd98OJzt71ERkAjVM73VepPmx9Lt3nKtcf6H/GSc7SntzfluDVqX5fmuqXMsnITLZwvKy0RXSI6Zlgi1qag1bUiOn47pRLuTZKZy99+7+s/W3DmBrwd+qhacUneREaocBtj5/1Hq09VGaxGHA3WGMWJ0auzzYJlP/f9HTdlMroL1zpfRbn08j6oJwxX8aLnUOPwe5B7VwACACDgn2du+tCDf3zuiatLpAqN8Tff2/OBP3Tnj6V3NVtrLcupaaqBV9FgpxD4Dx4qesmO0H9jCE1EW9RdV53Am+zct1Xb5ijuM5jWBjljp4j+RHxcfV9Kfx4k6+LyiuLTbo9MNs/cIBfnqs1f1JkYZ41ww98wMQoMsREQiwQpo2cFlayeYRPTnUxIuioAtZu2zoCsfg/5ShKp92w8JJ/zuZTzxssfsLtZM/U0j1ODdshMVj1QpH98hVpTUdj9qbN1Eyg8P7ZO1aNVGiCf5Zp1DqTLRM7nM3NructdX8yjkgjrk+b2VBJZIdn5PN4X5U23vmpOCnaxIa8p0yOlOUWBrVAPpLJZSonNTta1ByLzBV779e9tcqDtTrPmmFIYcLvCrQGYVXj0NgCbfFh5t3Jn2BppStf9nEpbeu2NheOQsHzMtg2CQA4M7WsUyGXEWltuM684Rt3o/APNfZn0XM/HLdqt58/PcbBpg7Ci97IeRkyGOb0mtiDn/XYN2l+lvwxYAkGA/DJQeaoa8GFav8ecNt01aoNCgjL0EADK1ahRaM55XzbHZ+QtsjGflHyIRrU8zcNf6o7EEmwKyAkoKEMPA6BcoOA8epY5UfMUIWuqldDseOQoeEQMSYjZyswCcw2YDz+TylW58R+sssMkyfWOs2oYjgwztfGcWzPj2RlJ0FgRNNn5f8h0aNMtj6Eul4thXjItsDPRGRp04BW6AcY7sX1vGi5t0EPoVMubpgg4B+F8XAfGtgTjd1ayRV72XSW/LY7v55fjnxddsWenxYewz6oaJDeJ+SUiqBKra5s5dXR21UguNrU6Jf3+EYkIBddWBgTQFq8RxQYJY5ltG8CfXT8fAQHQDGOdL0V9uBvTBMJOLkwlmQgL4xmSfpxC4cY2NLxIHxWmYb8QADPMIWDEnBBl/GScAwpYoYEG9FChAGxjVMDYM6owXSMWE1JqDPljm2UWLiZ92jEmZSG1mWTIyfHJAC4uJ15ZQoVJY5w/2lNsOGlKsd204wkVUWZVY6XCJR6se65foNPWIIhNCfMdd3pxz91lF+56//NsOBezRKXn4xeqlFX+i+U0krXUplG75dK3yrTKHHOcBXY0zlRtW1pblyLIqwq7pxbVZalCDstZS/EL6lnT2zx96Y2O4Cd5ab9HYdFyzim8cvf4eu51y5pKBqyy+f4po/Ua/SKUafz7ng6hy6V75IK78j3uN4Prm5h0+Mu8QstJ1RWSmDHIBrhy09nz6otKVt5ZFiVFpUoHFlYlH1slnExOILu1JXw8rz5fmDGk+VBSV/7F521RfrG0BBz9l/+XkyBKMoAIE8q4kBVV0w3Tsh3X84MwipM0y4uyqpu264dxmpd127tyC5asWLNhy449B46cOHPBt4IrATfuPHjystIqq3nz4cuPvwBCgYIEBwl7FSh0Ua2vilQpt9Nh+4KCsqBBvg2hgOhQGYpQ4ro3wYA6Df77Z8AeR7W7rUmIUDXCdArXpsN9d9x1zzcRHnvgoWaR+q3zzBNPRfnhp1Iia0SLFSPOLvESJUiSbC0xiRTfpUqXJkOWTK12y5FNKlevPudCCTHhmOO6vPDKa91OOKnFGTecctpNxX5UueDVZssqldICCQAhGEExnCBTqDQ6o1QvM1nhbA6XxxcIRWKJVCZXKFVqjVanNxhNZovVZnc4XW6P1+d3KcXA7DNW6xA9OSxeyS8vN3LKHzgxqFk4hly8VewrIFlMltfVjk5s8Y2jpYN7fPi53ONjsKWODvIp/MQ++XK1RMlysppon84VkrVY37l6nV5PTTGgjg19/UdzV/nimTscw619Kb6c/DVejpOVthqyt5Y5Vgqx/MItPX9ZsYrv30h4HTyRSMWGPrdxvpRGQU2RK6lWO7VztTEwXLiBAfLX6bvD3hH+CneYa9xtOSeHnh8W6sSY9HNdPN+UnFY/38YR+McNDqg/bk6rnK84w+GD0s3H52yBilKNVGCq4QoUVOBiFwBWcMAKnmQXAE8XBtoGgAcAggNrBGoEAoBrDqw5EAjU+Od+ZfJ8ub6QojprOoHmJquL7ZJG+5vVK18lVK5mrZJRrUr4ckalGNXLRV0qvZvFklkoZORzWT2Xi8jmBD2T0+lcHjqd7wul8qyebPOaiTYdz6qOZf1mNBuKZNf1zRnRoXTbDKZDgXRW96c0wpd6BW9K4knSdCe0K6GmM5GxE3/IEZdsNe12hi0msUa1JfqcYY4SuskyjRFtMMXUm1pn9mUw4VegwxmU/lWkrgm9bWqNkMa4RVdr1KoQM5Tq/fq2umZLXaZv1J/9uEOvFtfQSi6lJ+J17HRAkTfbNzN6LFrXJ7xpY4R1I69HZF03ZX/4vn6Lfk+vM0qVhM3aNVUPiQuDLRR9s7DbuUnaFKqbgjom/oEHrvcIC21X/GvYFWaNP8AEaDlJLkcZBVig4mifHTL3nOSVodxJKVcSY+CJgSAgAv9VJRwsfOh7u0NMIAtyIz05lypAgYqhPh2Sex6OZHdM9gH8UkxDLH+QpZW0d/jjS+/At4VxPTQdK/gOEcaCZ4f870R88YL+40e4XR1tX6YE7/JgC214JxE98YvJvBCujjlzJh+oyL45siz8YQC6B1LQsssuagA23MBZ/5WYi7r7Tkk="}},"time_used":21,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":17,"receive":4,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=converter\u0026theme=light","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.526Z","timestamp":1785143926526,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /widget?type=converter\u0026theme=light HTTP/1.1\r\nHost: coinlib.io\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\nReferer: https://scromegatrade.com/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\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\naccess-control-allow-origin: *\r\nage: 336817\r\ncache-control: public, max-age=3600, stale-while-revalidate=86400\r\ncontent-disposition: inline\r\npriority: u=4,i=?0\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors *\r\ncontent-type: text/html; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nvary: rsc, next-router-state-tree, next-router-prefetch, next-router-segment-prefetch, accept-encoding\r\nx-content-type-options: nosniff\r\nx-frame-options: SAMEORIGIN\r\nx-matched-path: /widget\r\nx-nextjs-prerender: 1\r\nx-nextjs-stale-time: 300\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::knb9c-1785143926544-272333133afa\r\nx-xss-protection: 1; mode=block\r\ncf-cache-status: DYNAMIC\r\nserver-timing: cfCacheStatus;desc=\"DYNAMIC\", cfEdge;dur=7,cfOrigin;dur=18, cfExtPri\r\ncontent-encoding: zstd\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=AqhtaWcNyJ4rCa%2BYsb%2Bqy8Xc7K1Jo7d6U2HN8yLVgOftMULMFvmaWwZystWQWOpCLQEuKvLRxrYYVUYzAXT1Im41ViG5QcksLNnb7DiGFPLMb9vwZgVBuRW3DQ7X\"}]}\r\ncf-ray: a21a8f04d90d0b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare Browser Insights","description":"Cloudflare Browser Insights is a tool that measures the performance of websites from the perspective of users.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["Analytics","RUM"]},{"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"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"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":264025,"size_decoded":33852,"mime_type":"text/html; charset=utf-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (62918)","md5":"0b66e1b457bb677d8f58fbbe7d1dc0d3","sha1":"21d7b46ede1a80096ad8c0b24ac09e2b9d13baf6","sha256":"2d3fd1241a3c0c323de2b5fea043ea12d3cdf4aa2b288e3911976bb0ec53482c","sha512":"23db906319bb67d11230275571b08ff1a73b3c64c7aa9040d8797999624a297c817a1fad43c8a195e1eb6292fd7799ad2ba1fa36539482afc36f680433297406","ssdeep":"6144:cuwdzaVM7XPgFm+eQQ6L/c7kXl528IyIn:lMQ41k9Sn","tlshash":"7744b464f228ea7ebd3778ac92bce84c320571a1d9f847dde911b2119fc3bf25929114","first_seen":"2026-07-23T13:38:20.379492Z","last_seen":"2026-07-29T06:14:00.404739Z","times_seen":959,"resource_available":false,"data":"PCFET0NUWVBFIGh0bWw+PCEtLVMxSjJHRV9qQzlkRTl5aGE5aEFfdC0tPjxodG1sIGxhbmc9ImVuIj48aGVhZD48bWV0YSBjaGFyU2V0PSJ1dGYtOCIvPjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSwgdmlld3BvcnQtZml0PWNvdmVyIi8+PGxpbmsgcmVsPSJwcmVsb2FkIiBocmVmPSIvX25leHQvc3RhdGljL21lZGlhLzgzYWZlMjc4YjZhNmJiM2Mtcy5wLjNhNmJhMDM2LndvZmYyIiBhcz0iZm9udCIgY3Jvc3NvcmlnaW49IiIgdHlwZT0iZm9udC93b2ZmMiIvPjxzdHlsZSBkYXRhLXByZWNlZGVuY2U9Im5leHQiIGRhdGEtaHJlZj0iL19uZXh0L3N0YXRpYy9jaHVua3MvMDcyNWZjNGRiODE0ZjAzNS5jc3MgL19uZXh0L3N0YXRpYy9jaHVua3MvYjM0ZWJiOGFlZmYyMTg2ZS5jc3MiPkBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6MTAwIDkwMDtmb250LWRpc3BsYXk6b3B0aW9uYWw7c3JjOnVybCgvX25leHQvc3RhdGljL21lZGlhLzJjNTVhMGU2MDEyMDU3N2Etcy4yYTQ4NTM0YS53b2ZmMilmb3JtYXQoIndvZmYyIik7dW5pY29kZS1yYW5nZTpVKzQ2MC01MkYsVSsxQzgwLTFDOEEsVSsyMEI0LFUrMkRFMC0yREZGLFUrQTY0MC1BNjlGLFUrRkUyRS1GRTJGfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6MTAwIDkwMDtmb250LWRpc3BsYXk6b3B0aW9uYWw7c3JjOnVybCgvX25leHQvc3RhdGljL21lZGlhLzljNzJhYTBmNDBlNGVlZjgtcy4xOGE0OGNiYy53b2ZmMilmb3JtYXQoIndvZmYyIik7dW5pY29kZS1yYW5nZTpVKzMwMSxVKzQwMC00NUYsVSs0OTAtNDkxLFUrNEIwLTRCMSxVKzIxMTZ9QGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlcjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDAgOTAwO2ZvbnQtZGlzcGxheTpvcHRpb25hbDtzcmM6dXJsKC9fbmV4dC9zdGF0aWMvbWVkaWEvYWQ2NmY5YWZkODk0N2Y4Ni1zLjdhNDBlYjczLndvZmYyKWZvcm1hdCgid29mZjIiKTt1bmljb2RlLXJhbmdlOlUrMUY/P31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkludGVyO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjEwMCA5MDA7Zm9udC1kaXNwbGF5Om9wdGlvbmFsO3NyYzp1cmwoL19uZXh0L3N0YXRpYy9tZWRpYS81NDc2ZjY4ZDYwNDYwOTMwLXMuYzk5NWUzNTIud29mZjIpZm9ybWF0KCJ3b2ZmMiIpO3VuaWNvZGUtcmFuZ2U6VSszNzAtMzc3LFUrMzdBLTM3RixVKzM4NC0zOEEsVSszOEMsVSszOEUtM0ExLFUrM0EzLTNGRn1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkludGVyO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjEwMCA5MDA7Zm9udC1kaXNwbGF5Om9wdGlvbmFsO3NyYzp1cmwoL19uZXh0L3N0YXRpYy9tZWRpYS8yYmJlOGQyNjcxNjEzZjFmLXMuNzZkY2IwYjIud29mZjIpZm9ybWF0KCJ3b2ZmMiIpO3VuaWNvZGUtcmFuZ2U6VSsxMDItMTAzLFUrMTEwLTExMSxVKzEyOC0xMjksVSsxNjgtMTY5LFUrMUEwLTFBMSxVKzFBRi0xQjAsVSszMDAtMzAxLFUrMzAzLTMwNCxVKzMwOC0zMDksVSszMjMsVSszMjksVSsxRUEwLTFFRjksVSsyMEFCfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6MTAwIDkwMDtmb250LWRpc3BsYXk6b3B0aW9uYWw7c3JjOnVybCgvX25leHQvc3RhdGljL21lZGlhLzFiZmZhZGFhYmY4OTNhMWUtcy43Y2Q4MTk2My53b2ZmMilmb3JtYXQoIndvZmYyIik7dW5pY29kZS1yYW5nZTpVKzEwMC0yQkEsVSsyQkQtMkM1LFUrMkM3LTJDQyxVKzJDRS0yRDcsVSsyREQtMkZGLFUrMzA0LFUrMzA4LFUrMzI5LFUrMUQwMC0xREJGLFUrMUUwMC0xRTlGLFUrMUVGMi0xRUZGLFUrMjAyMCxVKzIwQTAtMjBBQixVKzIwQUQtMjBDMCxVKzIxMTMsVSsyQzYwLTJDN0YsVStBNzIwLUE3RkZ9QGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlcjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDAgOTAwO2ZvbnQtZGlzcGxheTpvcHRpb25hbDtzcmM6dXJsKC9fbmV4dC9zdGF0aWMvbWVkaWEvODNhZmUyNzhiNmE2YmIzYy1zLnAuM2E2YmEwMzYud29mZjIpZm9ybWF0KCJ3b2ZmMiIpO3VuaWNvZGUtcmFuZ2U6VSs/PyxVKzEzMSxVKzE1Mi0xNTMsVSsyQkItMkJDLFUrMkM2LFUrMkRBLFUrMkRDLFUrMzA0LFUrMzA4LFUrMzI5LFUrMjAwMC0yMDZGLFUrMjBBQyxVKzIxMjIsVSsyMTkxLFUrMjE5MyxVKzIyMTIsVSsyMjE1LFUrRkVGRixVK0ZGRkR9QGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlciBGYWxsYmFjaztzcmM6bG9jYWwoQXJpYWwpO2FzY2VudC1vdmVycmlkZTo5MC40NCU7ZGVzY2VudC1vdmVycmlkZToyMi41MiU7bGluZS1nYXAtb3ZlcnJpZGU6MC4wJTtzaXplLWFkanVzdDoxMDcuMTIlfS5pbnRlcl8xZWM0ZGQ5Zi1tb2R1bGVfX1VNUGFLR19fY2xhc3NOYW1le2ZvbnQtZmFtaWx5OkludGVyLEludGVyIEZhbGxiYWNrO2ZvbnQtc3R5bGU6bm9ybWFsfS5pbnRlcl8xZWM0ZGQ5Zi1tb2R1bGVfX1VNUGFLR19fdmFyaWFibGV7LS1mb250LWludGVyOiJJbnRlciIsIkludGVyIEZhbGxiYWNrIn0KQGxheWVyIHByb3BlcnRpZXN7QHN1cHBvcnRzICgoKC13ZWJraXQtaHlwaGVuczpub25lKSkgYW5kIChub3QgKG1hcmdpbi10cmltOmlubGluZSkpKSBvciAoKC1tb3otb3JpZW50OmlubGluZSkgYW5kIChub3QgKGNvbG9yOnJnYihmcm9tIHJlZCByIGcgYikpKSl7Kiw6YmVmb3JlLDphZnRlciw6OmJhY2tkcm9wey0tdHctdHJhbnNsYXRlLXg6MDstLXR3LXRyYW5zbGF0ZS15OjA7LS10dy10cmFuc2xhdGUtejowOy0tdHctcm90YXRlLXg6aW5pdGlhbDstLXR3LXJvdGF0ZS15OmluaXRpYWw7LS10dy1yb3RhdGUtejppbml0aWFsOy0tdHctc2tldy14OmluaXRpYWw7LS10dy1za2V3LXk6aW5pdGlhbDstLXR3LXNwYWNlLXktcmV2ZXJzZTowOy0tdHctc3BhY2UteC1yZXZlcnNlOjA7LS10dy1kaXZpZGUteS1yZXZlcnNlOjA7LS10dy1ib3JkZXItc3R5bGU6c29saWQ7LS10dy1ncmFkaWVudC1wb3NpdGlvbjppbml0aWFsOy0tdHctZ3JhZGllbnQtZnJvbTojMDAwMDstLXR3LWdyYWRpZW50LXZpYTojMDAwMDstLXR3LWdyYWRpZW50LXRvOiMwMDAwOy0tdHctZ3JhZGllbnQtc3RvcHM6aW5pdGlhbDstLXR3LWdyYWRpZW50LXZpYS1zdG9wczppbml0aWFsOy0tdHctZ3JhZGllbnQtZnJvbS1wb3NpdGlvbjowJTstLXR3LWdyYWRpZW50LXZpYS1wb3NpdGlvbjo1MCU7LS10dy1ncmFkaWVudC10by1wb3NpdGlvbjoxMDAlOy0tdHctbGVhZGluZzppbml0aWFsOy0tdHctZm9udC13ZWlnaHQ6aW5pdGlhbDstLXR3LXRyYWNraW5nOmluaXRpYWw7LS10dy1vcmRpbmFsOmluaXRpYWw7LS10dy1zbGFzaGVkLXplcm86aW5pdGlhbDstLXR3LW51bWVyaWMtZmlndXJlOmluaXRpYWw7LS10dy1udW1lcmljLXNwYWNpbmc6aW5pdGlhbDstLXR3LW51bWVyaWMtZnJhY3Rpb246aW5pdGlhbDstLXR3LXNoYWRvdzowIDAgIzAwMDA7LS10dy1zaGFkb3ctY29sb3I6aW5pdGlhbDstLXR3LXNoYWRvdy1hbHBoYToxMDAlOy0tdHctaW5zZXQtc2hhZG93OjAgMCAjMDAwMDstLXR3LWluc2V0LXNoYWRvdy1jb2xvcjppbml0aWFsOy0tdHctaW5zZXQtc2hhZG93LWFscGhhOjEwMCU7LS10dy1yaW5nLWNvbG9yOmluaXRpYWw7LS10dy1yaW5nLXNoYWRvdzowIDAgIzAwMDA7LS10dy1pbnNldC1yaW5nLWNvbG9yOmluaXRpYWw7LS10dy1pbnNldC1yaW5nLXNoYWRvdzowIDAgIzAwMDA7LS10dy1yaW5nLWluc2V0OmluaXRpYWw7LS10dy1yaW5nLW9mZnNldC13aWR0aDowcHg7LS10dy1yaW5nLW9mZnNldC1jb2xvcjojZmZmOy0tdHctcmluZy1vZmZzZXQtc2hhZG93OjAgMCAjMDAwMDstLXR3LW91dGxpbmUtc3R5bGU6c29saWQ7LS10dy1ibHVyOmluaXRpYWw7LS10dy1icmlnaHRuZXNzOmluaXRpYWw7LS10dy1jb250cmFzdDppbml0aWFsOy0tdHctZ3JheXNjYWxlOmluaXRpYWw7LS10dy1odWUtcm90YXRlOmluaXRpYWw7LS10dy1pbnZlcnQ6aW5pdGlhbDstLXR3LW9wYWNpdHk6aW5pdGlhbDstLXR3LXNhdHVyYXRlOmluaXRpYWw7LS10dy1zZXBpYTppbml0aWFsOy0tdHctZHJvcC1zaGFkb3c6aW5pdGlhbDstLXR3LWRyb3Atc2hhZG93LWNvbG9yOmluaXRpYWw7LS10dy1kcm9wLXNoYWRvdy1hbHBoYToxMDAlOy0tdHctZHJvcC1zaGFkb3ctc2l6ZTppbml0aWFsOy0tdHctYmFja2Ryb3AtYmx1cjppbml0aWFsOy0tdHctYmFja2Ryb3AtYnJpZ2h0bmVzczppbml0aWFsOy0tdHctYmFja2Ryb3AtY29udHJhc3Q6aW5pdGlhbDstLXR3LWJhY2tkcm9wLWdyYXlzY2FsZTppbml0aWFsOy0tdHctYmFja2Ryb3AtaHVlLXJvdGF0ZTppbml0aWFsOy0tdHctYmFja2Ryb3AtaW52ZXJ0OmluaXRpYWw7LS10dy1iYWNrZHJvcC1vcGFjaXR5OmluaXRpYWw7LS10dy1iYWNrZHJvcC1zYXR1cmF0ZTppbml0aWFsOy0tdHctYmFja2Ryb3Atc2VwaWE6aW5pdGlhbDstLXR3LWR1cmF0aW9uOmluaXRpYWw7LS10dy1lYXNlOmluaXRpYWw7LS10dy1jb250ZW50OiIiOy0tdHctYW5pbWF0aW9uLWRlbGF5OjBzOy0tdHctYW5pbWF0aW9uLWRpcmVjdGlvbjpub3JtYWw7LS10dy1hbmltYXRpb24tZHVyYXRpb246aW5pdGlhbDstLXR3LWFuaW1hdGlvbi1maWxsLW1vZGU6bm9uZTstLXR3LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MTstLXR3LWVudGVyLWJsdXI6MDstLXR3LWVudGVyLW9wYWNpdHk6MTstLXR3LWVudGVyLXJvdGF0ZTowOy0tdHctZW50ZXItc2NhbGU6MTstLXR3LWVudGVyLXRyYW5zbGF0ZS14OjA7LS10dy1lbnRlci10cmFuc2xhdGUteTowOy0tdHctZXhpdC1ibHVyOjA7LS10dy1leGl0LW9wYWNpdHk6MTstLXR3LWV4aXQtcm90YXRlOjA7LS10dy1leGl0LXNjYWxlOjE7LS10dy1leGl0LXRyYW5zbGF0ZS14OjA7LS10dy1leGl0LXRyYW5zbGF0ZS15OjB9fX1AbGF5ZXIgdGhlbWV7OnJvb3QsOmhvc3R7LS1jb2xvci1yZWQtNTAwOiNmYjJjMzY7LS1jb2xvci1vcmFuZ2UtNTAwOiNmZTZlMDA7LS1jb2xvci1ncmVlbi00MDA6IzA1ZGY3MjstLWNvbG9yLWdyZWVuLTYwMDojMDBhNTQ0Oy0tY29sb3ItYmxhY2s6IzAwMDstLWNvbG9yLXdoaXRlOiNmZmY7LS1zcGFjaW5nOi4yNXJlbTstLWNvbnRhaW5lci14czoyMHJlbTstLWNvbnRhaW5lci1zbToyNHJlbTstLWNvbnRhaW5lci1tZDoyOHJlbTstLWNvbnRhaW5lci1sZzozMnJlbTstLWNvbnRhaW5lci14bDozNnJlbTstLWNvbnRhaW5lci0yeGw6NDJyZW07LS1jb250YWluZXItM3hsOjQ4cmVtOy0tY29udGFpbmVyLTR4bDo1NnJlbTstLWNvbnRhaW5lci03eGw6ODByZW07LS10ZXh0LXhzOi43NXJlbTstLXRleHQteHMtLWxpbmUtaGVpZ2h0OmNhbGMoMS8uNzUpOy0tdGV4dC1zbTouODc1cmVtOy0tdGV4dC1zbS0tbGluZS1oZWlnaHQ6Y2FsYygxLjI1Ly44NzUpOy0tdGV4dC1iYXNlOjFyZW07LS10ZXh0LWJhc2UtLWxpbmUtaGVpZ2h0OmNhbGMoMS41LzEpOy0tdGV4dC1sZzoxLjEyNXJlbTstLXRleHQtbGctLWxpbmUtaGVpZ2h0OmNhbGMoMS43NS8xLjEyNSk7LS10ZXh0LXhsOjEuMjVyZW07LS10ZXh0LXhsLS1saW5lLWhlaWdodDpjYWxjKDEuNzUvMS4yNSk7LS10ZXh0LTJ4bDoxLjVyZW07LS10ZXh0LTJ4bC0tbGluZS1oZWlnaHQ6Y2FsYygyLzEuNSk7LS10ZXh0LTN4bDoxLjg3NXJlbTstLXRleHQtM3hsLS1saW5lLWhlaWdodDpjYWxjKDIuMjUvMS44NzUpOy0tdGV4dC00eGw6Mi4yNXJlbTstLXRleHQtNHhsLS1saW5lLWhlaWdodDpjYWxjKDIuNS8yLjI1KTstLXRleHQtNnhsOjMuNzVyZW07LS10ZXh0LTZ4bC0tbGluZS1oZWlnaHQ6MTstLWZvbnQtd2VpZ2h0LW5vcm1hbDo0MDA7LS1mb250LXdlaWdodC1tZWRpdW06NTAwOy0tZm9udC13ZWlnaHQtc2VtaWJvbGQ6NjAwOy0tZm9udC13ZWlnaHQtYm9sZDo3MDA7LS10cmFja2luZy10aWdodDotLjAyNWVtOy0tdHJhY2tpbmctd2lkZTouMDI1ZW07LS10cmFja2luZy13aWRlc3Q6LjFlbTstLWxlYWRpbmctdGlnaHQ6MS4yNTstLWxlYWRpbmctc251ZzoxLjM3NTstLWxlYWRpbmctcmVsYXhlZDoxLjYyNTstLXJhZGl1cy1tZDpjYWxjKHZhcigtLXJhZGl1cykqLjgpOy0tZWFzZS1pbi1vdXQ6Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7LS1hbmltYXRlLXNwaW46c3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7LS1hbmltYXRlLXB1bHNlOnB1bHNlIDJzIGN1YmljLWJlemllciguNCwwLC42LDEpaW5maW5pdGU7LS1ibHVyLXhzOjRweDstLWJsdXItc206OHB4Oy0tZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7LS1kZWZhdWx0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpOy0tZGVmYXVsdC1mb250LWZhbWlseTp2YXIoLS1mb250LWludGVyKSwiSW50ZXIiLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZjstLWRlZmF1bHQtbW9uby1mb250LWZhbWlseTp2YXIoLS1mb250LWludGVyKSwiSW50ZXIiLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZn1Ac3VwcG9ydHMgKGNvbG9yOmxhYigwJSAwIDApKXs6cm9vdCw6aG9zdHstLWNvbG9yLXJlZC01MDA6bGFiKDU1LjQ4MTQlIDc1LjA3MzIgNDguODUyOCk7LS1jb2xvci1vcmFuZ2UtNTAwOmxhYig2NC4yNzIlIDU3LjE3ODggOTAuMzU4Myk7LS1jb2xvci1ncmVlbi00MDA6bGFiKDc4LjUwMyUgLTY0LjkyNjUgMzkuNzQ5Mik7LS1jb2xvci1ncmVlbi02MDA6bGFiKDU5LjA5NzglIC01OC42NjIxIDQxLjI1NzkpfX19QGxheWVyIGJhc2V7Kiw6YWZ0ZXIsOmJlZm9yZSw6OmJhY2tkcm9we2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6MCBzb2xpZDttYXJnaW46MDtwYWRkaW5nOjB9OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOjAgc29saWQ7bWFyZ2luOjA7cGFkZGluZzowfWh0bWwsOmhvc3R7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7dGFiLXNpemU6NDtsaW5lLWhlaWdodDoxLjU7Zm9udC1mYW1pbHk6dmFyKC0tZGVmYXVsdC1mb250LWZhbWlseSx1aS1zYW5zLXNlcmlmLHN5c3RlbS11aSxzYW5zLXNlcmlmLCJBcHBsZSBDb2xvciBFbW9qaSIsIlNlZ29lIFVJIEVtb2ppIiwiU2Vnb2UgVUkgU3ltYm9sIiwiTm90byBDb2xvciBFbW9qaSIpO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczp2YXIoLS1kZWZhdWx0LWZvbnQtZmVhdHVyZS1zZXR0aW5ncyxub3JtYWwpO2ZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOnZhcigtLWRlZmF1bHQtZm9udC12YXJpYXRpb24tc2V0dGluZ3Msbm9ybWFsKTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9aHJ7aGVpZ2h0OjA7Y29sb3I6aW5oZXJpdDtib3JkZXItdG9wLXdpZHRoOjFweH1hYmJyOndoZXJlKFt0aXRsZV0pey13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWR9aDEsaDIsaDMsaDQsaDUsaDZ7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdH1he2NvbG9yOmluaGVyaXQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb246aW5oZXJpdDstd2Via2l0LXRleHQtZGVjb3JhdGlvbjppbmhlcml0Oy13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246aW5oZXJpdH1iLHN0cm9uZ3tmb250LXdlaWdodDpib2xkZXJ9Y29kZSxrYmQsc2FtcCxwcmV7Zm9udC1mYW1pbHk6dmFyKC0tZGVmYXVsdC1tb25vLWZvbnQtZmFtaWx5LHVpLW1vbm9zcGFjZSxTRk1vbm8tUmVndWxhcixNZW5sbyxNb25hY28sQ29uc29sYXMsIkxpYmVyYXRpb24gTW9ubyIsIkNvdXJpZXIgTmV3Iixtb25vc3BhY2UpO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczp2YXIoLS1kZWZhdWx0LW1vbm8tZm9udC1mZWF0dXJlLXNldHRpbmdzLG5vcm1hbCk7Zm9udC12YXJpYXRpb24tc2V0dGluZ3M6dmFyKC0tZGVmYXVsdC1tb25vLWZvbnQtdmFyaWF0aW9uLXNldHRpbmdzLG5vcm1hbCk7Zm9udC1zaXplOjFlbX1zbWFsbHtmb250LXNpemU6ODAlfXN1YixzdXB7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7Zm9udC1zaXplOjc1JTtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlfXN1Yntib3R0b206LS4yNWVtfXN1cHt0b3A6LS41ZW19dGFibGV7dGV4dC1pbmRlbnQ6MDtib3JkZXItY29sb3I6aW5oZXJpdDtib3JkZXItY29sbGFwc2U6Y29sbGFwc2V9Oi1tb3otZm9jdXNyaW5ne291dGxpbmU6YXV0b31wcm9ncmVzc3t2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1zdW1tYXJ5e2Rpc3BsYXk6bGlzdC1pdGVtfW9sLHVsLG1lbnV7bGlzdC1zdHlsZTpub25lfWltZyxzdmcsdmlkZW8sY2FudmFzLGF1ZGlvLGlmcmFtZSxlbWJlZCxvYmplY3R7dmVydGljYWwtYWxpZ246bWlkZGxlO2Rpc3BsYXk6YmxvY2t9aW1nLHZpZGVve21heC13aWR0aDoxMDAlO2hlaWdodDphdXRvfWJ1dHRvbixpbnB1dCxzZWxlY3Qsb3B0Z3JvdXAsdGV4dGFyZWF7Zm9udDppbmhlcml0O2ZvbnQtZmVhdHVyZS1zZXR0aW5nczppbmhlcml0O2ZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOmluaGVyaXQ7bGV0dGVyLXNwYWNpbmc6aW5oZXJpdDtjb2xvcjppbmhlcml0O29wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JvcmRlci1yYWRpdXM6MH06OmZpbGUtc2VsZWN0b3ItYnV0dG9ue2ZvbnQ6aW5oZXJpdDtmb250LWZlYXR1cmUtc2V0dGluZ3M6aW5oZXJpdDtmb250LXZhcmlhdGlvbi1zZXR0aW5nczppbmhlcml0O2xldHRlci1zcGFjaW5nOmluaGVyaXQ7Y29sb3I6aW5oZXJpdDtvcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjojMDAwMDtib3JkZXItcmFkaXVzOjB9OndoZXJlKHNlbGVjdDppcyhbbXVsdGlwbGVdLFtzaXplXSkpIG9wdGdyb3Vwe2ZvbnQtd2VpZ2h0OmJvbGRlcn06d2hlcmUoc2VsZWN0OmlzKFttdWx0aXBsZV0sW3NpemVdKSkgb3B0Z3JvdXAgb3B0aW9ue3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHh9OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbnttYXJnaW4taW5saW5lLWVuZDo0cHh9OjpwbGFjZWhvbGRlcntvcGFjaXR5OjF9QHN1cHBvcnRzIChub3QgKCgtd2Via2l0LWFwcGVhcmFuY2U6LWFwcGxlLXBheS1idXR0b24pKSkgb3IgKGNvbnRhaW4taW50cmluc2ljLXNpemU6MXB4KXs6OnBsYWNlaG9sZGVye2NvbG9yOmN1cnJlbnRDb2xvcn1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7OjpwbGFjZWhvbGRlcntjb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsY3VycmVudGNvbG9yIDUwJSx0cmFuc3BhcmVudCl9fX10ZXh0YXJlYXtyZXNpemU6dmVydGljYWx9Ojotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lfTo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVle21pbi1oZWlnaHQ6MWxoO3RleHQtYWxpZ246aW5oZXJpdH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdHtkaXNwbGF5OmlubGluZS1mbGV4fTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVye3BhZGRpbmc6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtbW9udGgtZmllbGR7cGFkZGluZy1ibG9jazowfTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1zZWNvbmQtZmllbGR7cGFkZGluZy1ibG9jazowfTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbGxpc2Vjb25kLWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tZXJpZGllbS1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3J7bGluZS1oZWlnaHQ6MX06LW1vei11aS1pbnZhbGlke2JveC1zaGFkb3c6bm9uZX1idXR0b24saW5wdXQ6d2hlcmUoW3R5cGU9YnV0dG9uXSxbdHlwZT1yZXNldF0sW3R5cGU9c3VibWl0XSl7YXBwZWFyYW5jZTpidXR0b259OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbnthcHBlYXJhbmNlOmJ1dHRvbn06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9ue2hlaWdodDphdXRvfVtoaWRkZW5dOndoZXJlKDpub3QoW2hpZGRlbj11bnRpbC1mb3VuZF0pKXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fSp7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlcik7b3V0bGluZS1jb2xvcjp2YXIoLS1yaW5nKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7KntvdXRsaW5lLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1yaW5nKTUwJSx0cmFuc3BhcmVudCl9fWJvZHl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1iYWNrZ3JvdW5kKTtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKTtmb250LWZhbWlseTp2YXIoLS1mb250LWludGVyKSx1aS1zYW5zLXNlcmlmLHN5c3RlbS11aSwtYXBwbGUtc3lzdGVtLHNhbnMtc2VyaWZ9Y29kZSxwcmUsa2Jke2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtaW50ZXIpLCJJbnRlciIsdWktc2Fucy1zZXJpZixzeXN0ZW0tdWksLWFwcGxlLXN5c3RlbSxzYW5zLXNlcmlmfX1AbGF5ZXIgY29tcG9uZW50cztAbGF5ZXIgdXRpbGl0aWVzey5cQGNvbnRhaW5lclwvY2FyZC1oZWFkZXJ7Y29udGFpbmVyOmNhcmQtaGVhZGVyL2lubGluZS1zaXplfS5wb2ludGVyLWV2ZW50cy1ub25le3BvaW50ZXItZXZlbnRzOm5vbmV9LmNvbGxhcHNle3Zpc2liaWxpdHk6Y29sbGFwc2V9LnZpc2libGV7dmlzaWJpbGl0eTp2aXNpYmxlfS5zci1vbmx5e2NsaXAtcGF0aDppbnNldCg1MCUpO3doaXRlLXNwYWNlOm5vd3JhcDtib3JkZXItd2lkdGg6MDt3aWR0aDoxcHg7aGVpZ2h0OjFweDttYXJnaW46LTFweDtwYWRkaW5nOjA7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVufS5hYnNvbHV0ZXtwb3NpdGlvbjphYnNvbHV0ZX0uZml4ZWR7cG9zaXRpb246Zml4ZWR9LnJlbGF0aXZle3Bvc2l0aW9uOnJlbGF0aXZlfS5zdGF0aWN7cG9zaXRpb246c3RhdGljfS5zdGlja3l7cG9zaXRpb246c3RpY2t5fS5pbnNldC0we2luc2V0OmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmluc2V0LXgtMHtpbnNldC1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uaW5zZXQteC00e2luc2V0LWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5pbnNldC15LTB7aW5zZXQtYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uc3RhcnR7aW5zZXQtaW5saW5lLXN0YXJ0OnZhcigtLXNwYWNpbmcpfS5lbmR7aW5zZXQtaW5saW5lLWVuZDp2YXIoLS1zcGFjaW5nKX0uLXRvcC0ye3RvcDpjYWxjKHZhcigtLXNwYWNpbmcpKi0yKX0udG9wLTB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMCl9LnRvcC0wXC41e3RvcDpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0udG9wLTFcLzJ7dG9wOjUwJX0udG9wLTFcLzN7dG9wOjMzLjMzMzMlfS50b3AtMnt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0udG9wLTN7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMyl9LnRvcC0xNHt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNCl9LnRvcC0xMDB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMTAwKX0udG9wLTEwMDB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMTAwMCl9LnRvcC1mdWxse3RvcDoxMDAlfS4tcmlnaHQtMntyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKi0yKX0ucmlnaHQtMHtyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5yaWdodC0ye3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9LnJpZ2h0LTJcLjV7cmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5yaWdodC0ze3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMyl9LmJvdHRvbS0we2JvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5ib3R0b20tMjB7Ym90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMjApfS5sZWZ0LTB7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5sZWZ0LTBcLjV7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0ubGVmdC0xXC8ye2xlZnQ6NTAlfS5sZWZ0LTJcLjV7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjIuNSl9LmxlZnQtM3tsZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMyl9LmxlZnQtNHtsZWZ0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LmxlZnQtMTB7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKX0uaXNvbGF0ZXtpc29sYXRpb246aXNvbGF0ZX0uei0xMHt6LWluZGV4OjEwfS56LTIwe3otaW5kZXg6MjB9LnotMzB7ei1pbmRleDozMH0uei00MHt6LWluZGV4OjQwfS56LTUwe3otaW5kZXg6NTB9Lm9yZGVyLWZpcnN0e29yZGVyOi05OTk5fS5vcmRlci1sYXN0e29yZGVyOjk5OTl9LmNvbC1zdGFydC0ye2dyaWQtY29sdW1uLXN0YXJ0OjJ9LnJvdy1zcGFuLTJ7Z3JpZC1yb3c6c3BhbiAyL3NwYW4gMn0ucm93LXN0YXJ0LTF7Z3JpZC1yb3ctc3RhcnQ6MX0uY29udGFpbmVye3dpZHRoOjEwMCV9QG1lZGlhIChtaW4td2lkdGg6NDByZW0pey5jb250YWluZXJ7bWF4LXdpZHRoOjQwcmVtfX1AbWVkaWEgKG1pbi13aWR0aDo0OHJlbSl7LmNvbnRhaW5lcnttYXgtd2lkdGg6NDhyZW19fUBtZWRpYSAobWluLXdpZHRoOjY0cmVtKXsuY29udGFpbmVye21heC13aWR0aDo2NHJlbX19QG1lZGlhIChtaW4td2lkdGg6ODByZW0pey5jb250YWluZXJ7bWF4LXdpZHRoOjgwcmVtfX1AbWVkaWEgKG1pbi13aWR0aDo5NnJlbSl7LmNvbnRhaW5lcnttYXgtd2lkdGg6OTZyZW19fS4tbXgtMXttYXJnaW4taW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqLTEpfS4tbXgtNHttYXJnaW4taW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqLTQpfS5teC0xe21hcmdpbi1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ubXgtNHttYXJnaW4taW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqNCl9Lm14LWF1dG97bWFyZ2luLWlubGluZTphdXRvfS5teS0xe21hcmdpbi1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5teS0ye21hcmdpbi1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5wcm9zZXtjb2xvcjp2YXIoLS10dy1wcm9zZS1ib2R5KTttYXgtd2lkdGg6NjVjaH0ucHJvc2UgOndoZXJlKHApOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjI1ZW07bWFyZ2luLWJvdHRvbToxLjI1ZW19LnByb3NlIDp3aGVyZShbY2xhc3N+PWxlYWRdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWxlYWQpO21hcmdpbi10b3A6MS4yZW07bWFyZ2luLWJvdHRvbToxLjJlbTtmb250LXNpemU6MS4yNWVtO2xpbmUtaGVpZ2h0OjEuNn0ucHJvc2UgOndoZXJlKGEpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6dmFyKC0tdHctcHJvc2UtbGlua3MpO2ZvbnQtd2VpZ2h0OjUwMDt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5wcm9zZSA6d2hlcmUoc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWJvbGQpO2ZvbnQtd2VpZ2h0OjYwMH0ucHJvc2UgOndoZXJlKGEgc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUoYmxvY2txdW90ZSBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlIDp3aGVyZSh0aGVhZCB0aCBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdH0ucHJvc2UgOndoZXJlKG9sKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4yNWVtO21hcmdpbi1ib3R0b206MS4yNWVtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjEuNjI1ZW07bGlzdC1zdHlsZS10eXBlOmRlY2ltYWx9LnByb3NlIDp3aGVyZShvbFt0eXBlPUFdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTp1cHBlci1hbHBoYX0ucHJvc2UgOndoZXJlKG9sW3R5cGU9YV0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmxvd2VyLWFscGhhfS5wcm9zZSA6d2hlcmUob2xbdHlwZT1BIHNdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTp1cHBlci1hbHBoYX0ucHJvc2UgOndoZXJlKG9sW3R5cGU9YSBzXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6bG93ZXItYWxwaGF9LnByb3NlIDp3aGVyZShvbFt0eXBlPUldKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTp1cHBlci1yb21hbn0ucHJvc2UgOndoZXJlKG9sW3R5cGU9aV0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmxvd2VyLXJvbWFufS5wcm9zZSA6d2hlcmUob2xbdHlwZT1JIHNdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTp1cHBlci1yb21hbn0ucHJvc2UgOndoZXJlKG9sW3R5cGU9aSBzXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6bG93ZXItcm9tYW59LnByb3NlIDp3aGVyZShvbFt0eXBlPSIxIl0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmRlY2ltYWx9LnByb3NlIDp3aGVyZSh1bCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMjVlbTttYXJnaW4tYm90dG9tOjEuMjVlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjYyNWVtO2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5wcm9zZSA6d2hlcmUob2w+bGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6Om1hcmtlcntjb2xvcjp2YXIoLS10dy1wcm9zZS1jb3VudGVycyk7Zm9udC13ZWlnaHQ6NDAwfS5wcm9zZSA6d2hlcmUodWw+bGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6Om1hcmtlcntjb2xvcjp2YXIoLS10dy1wcm9zZS1idWxsZXRzKX0ucHJvc2UgOndoZXJlKGR0KTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTttYXJnaW4tdG9wOjEuMjVlbTtmb250LXdlaWdodDo2MDB9LnByb3NlIDp3aGVyZShocik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtib3JkZXItY29sb3I6dmFyKC0tdHctcHJvc2UtaHIpO2JvcmRlci10b3Atd2lkdGg6MXB4O21hcmdpbi10b3A6M2VtO21hcmdpbi1ib3R0b206M2VtfS5wcm9zZSA6d2hlcmUoYmxvY2txdW90ZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1xdW90ZXMpO2JvcmRlci1pbmxpbmUtc3RhcnQtd2lkdGg6LjI1cmVtO2JvcmRlci1pbmxpbmUtc3RhcnQtY29sb3I6dmFyKC0tdHctcHJvc2UtcXVvdGUtYm9yZGVycyk7cXVvdGVzOiLigJwiIuKAnSIi4oCYIiLigJkiO21hcmdpbi10b3A6MS42ZW07bWFyZ2luLWJvdHRvbToxLjZlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW07Zm9udC1zdHlsZTppdGFsaWM7Zm9udC13ZWlnaHQ6NTAwfS5wcm9zZSA6d2hlcmUoYmxvY2txdW90ZSBwOmZpcnN0LW9mLXR5cGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YmVmb3Jle2NvbnRlbnQ6b3Blbi1xdW90ZX0ucHJvc2UgOndoZXJlKGJsb2NrcXVvdGUgcDpsYXN0LW9mLXR5cGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YWZ0ZXJ7Y29udGVudDpjbG9zZS1xdW90ZX0ucHJvc2UgOndoZXJlKGgxKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouODg4ODg5ZW07Zm9udC1zaXplOjIuMjVlbTtmb250LXdlaWdodDo4MDA7bGluZS1oZWlnaHQ6MS4xMTExMX0ucHJvc2UgOndoZXJlKGgxIHN0cm9uZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0O2ZvbnQtd2VpZ2h0OjkwMH0ucHJvc2UgOndoZXJlKGgyKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjFlbTtmb250LXNpemU6MS41ZW07Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjEuMzMzMzN9LnByb3NlIDp3aGVyZShoMiBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdDtmb250LXdlaWdodDo4MDB9LnByb3NlIDp3aGVyZShoMyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1oZWFkaW5ncyk7bWFyZ2luLXRvcDoxLjZlbTttYXJnaW4tYm90dG9tOi42ZW07Zm9udC1zaXplOjEuMjVlbTtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MS42fS5wcm9zZSA6d2hlcmUoaDMgc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOmluaGVyaXQ7Zm9udC13ZWlnaHQ6NzAwfS5wcm9zZSA6d2hlcmUoaDQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6dmFyKC0tdHctcHJvc2UtaGVhZGluZ3MpO21hcmdpbi10b3A6MS41ZW07bWFyZ2luLWJvdHRvbTouNWVtO2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjV9LnByb3NlIDp3aGVyZShoNCBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdDtmb250LXdlaWdodDo3MDB9LnByb3NlIDp3aGVyZShpbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoyZW07bWFyZ2luLWJvdHRvbToyZW19LnByb3NlIDp3aGVyZShwaWN0dXJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MmVtO21hcmdpbi1ib3R0b206MmVtO2Rpc3BsYXk6YmxvY2t9LnByb3NlIDp3aGVyZSh2aWRlbyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjJlbX0ucHJvc2UgOndoZXJlKGtiZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1rYmQpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLXR3LXByb3NlLWtiZC1zaGFkb3dzKSwwIDNweCAwIHZhcigtLXR3LXByb3NlLWtiZC1zaGFkb3dzKTtwYWRkaW5nLXRvcDouMTg3NWVtO3BhZGRpbmctaW5saW5lLWVuZDouMzc1ZW07cGFkZGluZy1ib3R0b206LjE4NzVlbTtib3JkZXItcmFkaXVzOi4zMTI1cmVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi4zNzVlbTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTouODc1ZW07Zm9udC13ZWlnaHQ6NTAwfS5wcm9zZSA6d2hlcmUoY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1jb2RlKTtmb250LXNpemU6Ljg3NWVtO2ZvbnQtd2VpZ2h0OjYwMH0ucHJvc2UgOndoZXJlKGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YmVmb3JlLC5wcm9zZSA6d2hlcmUoY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKTphZnRlcntjb250ZW50OiJgIn0ucHJvc2UgOndoZXJlKGEgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKGgxIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdH0ucHJvc2UgOndoZXJlKGgyIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdDtmb250LXNpemU6Ljg3NWVtfS5wcm9zZSA6d2hlcmUoaDMgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0O2ZvbnQtc2l6ZTouOWVtfS5wcm9zZSA6d2hlcmUoaDQgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKGJsb2NrcXVvdGUgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKHRoZWFkIHRoIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdH0ucHJvc2UgOndoZXJlKHByZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1wcmUtY29kZSk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10dy1wcm9zZS1wcmUtYmcpO3BhZGRpbmctdG9wOi44NTcxNDNlbTtwYWRkaW5nLWlubGluZS1lbmQ6MS4xNDI4NmVtO3BhZGRpbmctYm90dG9tOi44NTcxNDNlbTtib3JkZXItcmFkaXVzOi4zNzVyZW07bWFyZ2luLXRvcDoxLjcxNDI5ZW07bWFyZ2luLWJvdHRvbToxLjcxNDI5ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6MS4xNDI4NmVtO2ZvbnQtc2l6ZTouODc1ZW07Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjEuNzE0Mjk7b3ZlcmZsb3cteDphdXRvfS5wcm9zZSA6d2hlcmUocHJlIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC13ZWlnaHQ6aW5oZXJpdDtjb2xvcjppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtZmFtaWx5OmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JvcmRlci13aWR0aDowO2JvcmRlci1yYWRpdXM6MDtwYWRkaW5nOjB9LnByb3NlIDp3aGVyZShwcmUgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKTpiZWZvcmUsLnByb3NlIDp3aGVyZShwcmUgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKTphZnRlcntjb250ZW50Om5vbmV9LnByb3NlIDp3aGVyZSh0YWJsZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXt0YWJsZS1sYXlvdXQ6YXV0bzt3aWR0aDoxMDAlO21hcmdpbi10b3A6MmVtO21hcmdpbi1ib3R0b206MmVtO2ZvbnQtc2l6ZTouODc1ZW07bGluZS1oZWlnaHQ6MS43MTQyOX0ucHJvc2UgOndoZXJlKHRoZWFkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2JvcmRlci1ib3R0b20td2lkdGg6MXB4O2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tdHctcHJvc2UtdGgtYm9yZGVycyl9LnByb3NlIDp3aGVyZSh0aGVhZCB0aCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1oZWFkaW5ncyk7dmVydGljYWwtYWxpZ246Ym90dG9tO3BhZGRpbmctaW5saW5lLWVuZDouNTcxNDI5ZW07cGFkZGluZy1ib3R0b206LjU3MTQyOWVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi41NzE0MjllbTtmb250LXdlaWdodDo2MDB9LnByb3NlIDp3aGVyZSh0Ym9keSB0cik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtib3JkZXItYm90dG9tLXdpZHRoOjFweDtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLXR3LXByb3NlLXRkLWJvcmRlcnMpfS5wcm9zZSA6d2hlcmUodGJvZHkgdHI6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtib3JkZXItYm90dG9tLXdpZHRoOjB9LnByb3NlIDp3aGVyZSh0Ym9keSB0ZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0ucHJvc2UgOndoZXJlKHRmb290KTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2JvcmRlci10b3Atd2lkdGg6MXB4O2JvcmRlci10b3AtY29sb3I6dmFyKC0tdHctcHJvc2UtdGgtYm9yZGVycyl9LnByb3NlIDp3aGVyZSh0Zm9vdCB0ZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXt2ZXJ0aWNhbC1hbGlnbjp0b3B9LnByb3NlIDp3aGVyZSh0aCx0ZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXt0ZXh0LWFsaWduOnN0YXJ0fS5wcm9zZSA6d2hlcmUoZmlndXJlPiopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ucHJvc2UgOndoZXJlKGZpZ2NhcHRpb24pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6dmFyKC0tdHctcHJvc2UtY2FwdGlvbnMpO21hcmdpbi10b3A6Ljg1NzE0M2VtO2ZvbnQtc2l6ZTouODc1ZW07bGluZS1oZWlnaHQ6MS40Mjg1N30ucHJvc2V7LS10dy1wcm9zZS1ib2R5OiMzNjQxNTM7LS10dy1wcm9zZS1oZWFkaW5nczojMTAxODI4Oy0tdHctcHJvc2UtbGVhZDojNGE1NTY1Oy0tdHctcHJvc2UtbGlua3M6IzEwMTgyODstLXR3LXByb3NlLWJvbGQ6IzEwMTgyODstLXR3LXByb3NlLWNvdW50ZXJzOiM2YTcyODI7LS10dy1wcm9zZS1idWxsZXRzOiNkMWQ1ZGM7LS10dy1wcm9zZS1ocjojZTVlN2ViOy0tdHctcHJvc2UtcXVvdGVzOiMxMDE4Mjg7LS10dy1wcm9zZS1xdW90ZS1ib3JkZXJzOiNlNWU3ZWI7LS10dy1wcm9zZS1jYXB0aW9uczojNmE3MjgyOy0tdHctcHJvc2Uta2JkOiMxMDE4Mjg7LS10dy1wcm9zZS1rYmQtc2hhZG93czojMTAxODI4MWE7LS10dy1wcm9zZS1jb2RlOiMxMDE4Mjg7LS10dy1wcm9zZS1wcmUtY29kZTojZTVlN2ViOy0tdHctcHJvc2UtcHJlLWJnOiMxZTI5Mzk7LS10dy1wcm9zZS10aC1ib3JkZXJzOiNkMWQ1ZGM7LS10dy1wcm9zZS10ZC1ib3JkZXJzOiNlNWU3ZWI7LS10dy1wcm9zZS1pbnZlcnQtYm9keTojZDFkNWRjOy0tdHctcHJvc2UtaW52ZXJ0LWhlYWRpbmdzOiNmZmY7LS10dy1wcm9zZS1pbnZlcnQtbGVhZDojOTlhMWFmOy0tdHctcHJvc2UtaW52ZXJ0LWxpbmtzOiNmZmY7LS10dy1wcm9zZS1pbnZlcnQtYm9sZDojZmZmOy0tdHctcHJvc2UtaW52ZXJ0LWNvdW50ZXJzOiM5OWExYWY7LS10dy1wcm9zZS1pbnZlcnQtYnVsbGV0czojNGE1NTY1Oy0tdHctcHJvc2UtaW52ZXJ0LWhyOiMzNjQxNTM7LS10dy1wcm9zZS1pbnZlcnQtcXVvdGVzOiNmM2Y0ZjY7LS10dy1wcm9zZS1pbnZlcnQtcXVvdGUtYm9yZGVyczojMzY0MTUzOy0tdHctcHJvc2UtaW52ZXJ0LWNhcHRpb25zOiM5OWExYWY7LS10dy1wcm9zZS1pbnZlcnQta2JkOiNmZmY7LS10dy1wcm9zZS1pbnZlcnQta2JkLXNoYWRvd3M6I2ZmZmZmZjFhOy0tdHctcHJvc2UtaW52ZXJ0LWNvZGU6I2ZmZjstLXR3LXByb3NlLWludmVydC1wcmUtY29kZTojZDFkNWRjOy0tdHctcHJvc2UtaW52ZXJ0LXByZS1iZzojMDAwMDAwODA7LS10dy1wcm9zZS1pbnZlcnQtdGgtYm9yZGVyczojNGE1NTY1Oy0tdHctcHJvc2UtaW52ZXJ0LXRkLWJvcmRlcnM6IzM2NDE1Mztmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjc1fUBzdXBwb3J0cyAoY29sb3I6bGFiKDAlIDAgMCkpey5wcm9zZXstLXR3LXByb3NlLWJvZHk6bGFiKDI3LjExMzQlIC0uOTU2NDAxIC0xMi4zMjI0KTstLXR3LXByb3NlLWhlYWRpbmdzOmxhYig4LjExODk3JSAuODExMjc5IC0xMi4yNTQpOy0tdHctcHJvc2UtbGVhZDpsYWIoMzUuNjMzNyUgLTEuNTg2OTcgLTEwLjg0MjUpOy0tdHctcHJvc2UtbGlua3M6bGFiKDguMTE4OTclIC44MTEyNzkgLTEyLjI1NCk7LS10dy1wcm9zZS1ib2xkOmxhYig4LjExODk3JSAuODExMjc5IC0xMi4yNTQpOy0tdHctcHJvc2UtY291bnRlcnM6bGFiKDQ3Ljc4NDElIC0uMzkzMTgyIC0xMC4wMjY4KTstLXR3LXByb3NlLWJ1bGxldHM6bGFiKDg1LjEyMzYlIC0uNjEyMjU5IC0zLjcxMzgpOy0tdHctcHJvc2UtaHI6bGFiKDkxLjYyMjklIC0uMTU5MTE1IC0yLjI2NzkxKTstLXR3LXByb3NlLXF1b3RlczpsYWIoOC4xMTg5NyUgLjgxMTI3OSAtMTIuMjU0KTstLXR3LXByb3NlLXF1b3RlLWJvcmRlcnM6bGFiKDkxLjYyMjklIC0uMTU5MTE1IC0yLjI2NzkxKTstLXR3LXByb3NlLWNhcHRpb25zOmxhYig0Ny43ODQxJSAtLjM5MzE4MiAtMTAuMDI2OCk7LS10dy1wcm9zZS1rYmQ6bGFiKDguMTE4OTclIC44MTEyNzkgLTEyLjI1NCk7LS10dy1wcm9zZS1rYmQtc2hhZG93czpsYWIoOC4xMTg5NyUgLjgxMTI3OSAtMTIuMjU0Ly4xKTstLXR3LXByb3NlLWNvZGU6bGFiKDguMTE4OTclIC44MTEyNzkgLTEyLjI1NCk7LS10dy1wcm9zZS1wcmUtY29kZTpsYWIoOTEuNjIyOSUgLS4xNTkxMTUgLTIuMjY3OTEpOy0tdHctcHJvc2UtcHJlLWJnOmxhYigxNi4xMDUxJSAtMS4xODIzOSAtMTEuNzUzMyk7LS10dy1wcm9zZS10aC1ib3JkZXJzOmxhYig4NS4xMjM2JSAtLjYxMjI1OSAtMy43MTM4KTstLXR3LXByb3NlLXRkLWJvcmRlcnM6bGFiKDkxLjYyMjklIC0uMTU5MTE1IC0yLjI2NzkxKTstLXR3LXByb3NlLWludmVydC1ib2R5OmxhYig4NS4xMjM2JSAtLjYxMjI1OSAtMy43MTM4KTstLXR3LXByb3NlLWludmVydC1sZWFkOmxhYig2NS45MjY5JSAtLjgzMjcwNyAtOC4xNzQ3Myk7LS10dy1wcm9zZS1pbnZlcnQtY291bnRlcnM6bGFiKDY1LjkyNjklIC0uODMyNzA3IC04LjE3NDczKTstLXR3LXByb3NlLWludmVydC1idWxsZXRzOmxhYigzNS42MzM3JSAtMS41ODY5NyAtMTAuODQyNSk7LS10dy1wcm9zZS1pbnZlcnQtaHI6bGFiKDI3LjExMzQlIC0uOTU2NDAxIC0xMi4zMjI0KTstLXR3LXByb3NlLWludmVydC1xdW90ZXM6bGFiKDk2LjE1OTYlIC0uMDgyMzQzOCAtMS4xMzU3NSk7LS10dy1wcm9zZS1pbnZlcnQtcXVvdGUtYm9yZGVyczpsYWIoMjcuMTEzNCUgLS45NTY0MDEgLTEyLjMyMjQpOy0tdHctcHJvc2UtaW52ZXJ0LWNhcHRpb25zOmxhYig2NS45MjY5JSAtLjgzMjcwNyAtOC4xNzQ3Myk7LS10dy1wcm9zZS1pbnZlcnQtcHJlLWNvZGU6bGFiKDg1LjEyMzYlIC0uNjEyMjU5IC0zLjcxMzgpOy0tdHctcHJvc2UtaW52ZXJ0LXRoLWJvcmRlcnM6bGFiKDM1LjYzMzclIC0xLjU4Njk3IC0xMC44NDI1KTstLXR3LXByb3NlLWludmVydC10ZC1ib3JkZXJzOmxhYigyNy4xMTM0JSAtLjk1NjQwMSAtMTIuMzIyNCl9fS5wcm9zZSA6d2hlcmUocGljdHVyZT5pbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ucHJvc2UgOndoZXJlKGxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjVlbTttYXJnaW4tYm90dG9tOi41ZW19LnByb3NlIDp3aGVyZShvbD5saSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKHVsPmxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0Oi4zNzVlbX0ucHJvc2UgOndoZXJlKC5wcm9zZT51bD5saSBwKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6Ljc1ZW07bWFyZ2luLWJvdHRvbTouNzVlbX0ucHJvc2UgOndoZXJlKC5wcm9zZT51bD5saT5wOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4yNWVtfS5wcm9zZSA6d2hlcmUoLnByb3NlPnVsPmxpPnA6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjEuMjVlbX0ucHJvc2UgOndoZXJlKC5wcm9zZT5vbD5saT5wOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4yNWVtfS5wcm9zZSA6d2hlcmUoLnByb3NlPm9sPmxpPnA6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjEuMjVlbX0ucHJvc2UgOndoZXJlKHVsIHVsLHVsIG9sLG9sIHVsLG9sIG9sKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6Ljc1ZW07bWFyZ2luLWJvdHRvbTouNzVlbX0ucHJvc2UgOndoZXJlKGRsKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4yNWVtO21hcmdpbi1ib3R0b206MS4yNWVtfS5wcm9zZSA6d2hlcmUoZGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNWVtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjEuNjI1ZW19LnByb3NlIDp3aGVyZShocisqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUoaDIrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKGgzKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlIDp3aGVyZShoNCsqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MH0ucHJvc2UgOndoZXJlKHRoZWFkIHRoOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnByb3NlIDp3aGVyZSh0aGVhZCB0aDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLWVuZDowfS5wcm9zZSA6d2hlcmUodGJvZHkgdGQsdGZvb3QgdGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy10b3A6LjU3MTQyOWVtO3BhZGRpbmctaW5saW5lLWVuZDouNTcxNDI5ZW07cGFkZGluZy1ib3R0b206LjU3MTQyOWVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi41NzE0MjllbX0ucHJvc2UgOndoZXJlKHRib2R5IHRkOmZpcnN0LWNoaWxkLHRmb290IHRkOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnByb3NlIDp3aGVyZSh0Ym9keSB0ZDpsYXN0LWNoaWxkLHRmb290IHRkOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOjB9LnByb3NlIDp3aGVyZShmaWd1cmUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoyZW07bWFyZ2luLWJvdHRvbToyZW19LnByb3NlIDp3aGVyZSgucHJvc2U+OmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MH0ucHJvc2UgOndoZXJlKC5wcm9zZT46bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjB9LnByb3NlLWxne2ZvbnQtc2l6ZToxLjEyNXJlbTtsaW5lLWhlaWdodDoxLjc3Nzc4fS5wcm9zZS1sZyA6d2hlcmUocCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbTttYXJnaW4tYm90dG9tOjEuMzMzMzNlbX0ucHJvc2UtbGcgOndoZXJlKFtjbGFzc349bGVhZF0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjA5MDkxZW07bWFyZ2luLWJvdHRvbToxLjA5MDkxZW07Zm9udC1zaXplOjEuMjIyMjJlbTtsaW5lLWhlaWdodDoxLjQ1NDU1fS5wcm9zZS1sZyA6d2hlcmUoYmxvY2txdW90ZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNjY2NjdlbTttYXJnaW4tYm90dG9tOjEuNjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW19LnByb3NlLWxnIDp3aGVyZShoMSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouODMzMzMzZW07Zm9udC1zaXplOjIuNjY2NjdlbTtsaW5lLWhlaWdodDoxfS5wcm9zZS1sZyA6d2hlcmUoaDIpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjg2NjY3ZW07bWFyZ2luLWJvdHRvbToxLjA2NjY3ZW07Zm9udC1zaXplOjEuNjY2NjdlbTtsaW5lLWhlaWdodDoxLjMzMzMzfS5wcm9zZS1sZyA6d2hlcmUoaDMpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjY2NjY3ZW07bWFyZ2luLWJvdHRvbTouNjY2NjY3ZW07Zm9udC1zaXplOjEuMzMzMzNlbTtsaW5lLWhlaWdodDoxLjV9LnByb3NlLWxnIDp3aGVyZShoNCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNzc3NzhlbTttYXJnaW4tYm90dG9tOi40NDQ0NDRlbTtsaW5lLWhlaWdodDoxLjU1NTU2fS5wcm9zZS1sZyA6d2hlcmUoaW1nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1sZyA6d2hlcmUocGljdHVyZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNzc3NzhlbTttYXJnaW4tYm90dG9tOjEuNzc3NzhlbX0ucHJvc2UtbGcgOndoZXJlKHBpY3R1cmU+aW1nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjB9LnByb3NlLWxnIDp3aGVyZSh2aWRlbyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNzc3NzhlbTttYXJnaW4tYm90dG9tOjEuNzc3NzhlbX0ucHJvc2UtbGcgOndoZXJlKGtiZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLXRvcDouMjIyMjIyZW07cGFkZGluZy1pbmxpbmUtZW5kOi40NDQ0NDRlbTtwYWRkaW5nLWJvdHRvbTouMjIyMjIyZW07Ym9yZGVyLXJhZGl1czouMzEyNXJlbTtwYWRkaW5nLWlubGluZS1zdGFydDouNDQ0NDQ0ZW07Zm9udC1zaXplOi44ODg4ODllbX0ucHJvc2UtbGcgOndoZXJlKGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC1zaXplOi44ODg4ODllbX0ucHJvc2UtbGcgOndoZXJlKGgyIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC1zaXplOi44NjY2NjdlbX0ucHJvc2UtbGcgOndoZXJlKGgzIGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC1zaXplOi44NzVlbX0ucHJvc2UtbGcgOndoZXJlKHByZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLXRvcDoxZW07cGFkZGluZy1pbmxpbmUtZW5kOjEuNWVtO3BhZGRpbmctYm90dG9tOjFlbTtib3JkZXItcmFkaXVzOi4zNzVyZW07bWFyZ2luLXRvcDoyZW07bWFyZ2luLWJvdHRvbToyZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6MS41ZW07Zm9udC1zaXplOi44ODg4ODllbTtsaW5lLWhlaWdodDoxLjc1fS5wcm9zZS1sZyA6d2hlcmUob2wpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLWxnIDp3aGVyZSh1bCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbTttYXJnaW4tYm90dG9tOjEuMzMzMzNlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjU1NTU2ZW19LnByb3NlLWxnIDp3aGVyZShsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi42NjY2NjdlbTttYXJnaW4tYm90dG9tOi42NjY2NjdlbX0ucHJvc2UtbGcgOndoZXJlKG9sPmxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1sZyA6d2hlcmUodWw+bGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjQ0NDQ0NGVtfS5wcm9zZS1sZyA6d2hlcmUoLnByb3NlLWxnPnVsPmxpIHApOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouODg4ODg5ZW07bWFyZ2luLWJvdHRvbTouODg4ODg5ZW19LnByb3NlLWxnIDp3aGVyZSgucHJvc2UtbGc+dWw+bGk+cDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbX0ucHJvc2UtbGcgOndoZXJlKC5wcm9zZS1sZz51bD5saT5wOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLWJvdHRvbToxLjMzMzMzZW19LnByb3NlLWxnIDp3aGVyZSgucHJvc2UtbGc+b2w+bGk+cDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbX0ucHJvc2UtbGcgOndoZXJlKC5wcm9zZS1sZz5vbD5saT5wOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLWJvdHRvbToxLjMzMzMzZW19LnByb3NlLWxnIDp3aGVyZSh1bCB1bCx1bCBvbCxvbCB1bCxvbCBvbCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi44ODg4ODllbTttYXJnaW4tYm90dG9tOi44ODg4ODllbX0ucHJvc2UtbGcgOndoZXJlKGRsKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4zMzMzM2VtO21hcmdpbi1ib3R0b206MS4zMzMzM2VtfS5wcm9zZS1sZyA6d2hlcmUoZHQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjMzMzMzZW19LnByb3NlLWxnIDp3aGVyZShkZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjU1NTU2ZW19LnByb3NlLWxnIDp3aGVyZShocik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjMuMTExMTFlbTttYXJnaW4tYm90dG9tOjMuMTExMTFlbX0ucHJvc2UtbGcgOndoZXJlKGhyKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLWxnIDp3aGVyZShoMisqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1sZyA6d2hlcmUoaDMrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UtbGcgOndoZXJlKGg0KyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowfS5wcm9zZS1sZyA6d2hlcmUodGFibGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC1zaXplOi44ODg4ODllbTtsaW5lLWhlaWdodDoxLjV9LnByb3NlLWxnIDp3aGVyZSh0aGVhZCB0aCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1lbmQ6Ljc1ZW07cGFkZGluZy1ib3R0b206Ljc1ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6Ljc1ZW19LnByb3NlLWxnIDp3aGVyZSh0aGVhZCB0aDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1zdGFydDowfS5wcm9zZS1sZyA6d2hlcmUodGhlYWQgdGg6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1lbmQ6MH0ucHJvc2UtbGcgOndoZXJlKHRib2R5IHRkLHRmb290IHRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOi43NWVtO3BhZGRpbmctaW5saW5lLWVuZDouNzVlbTtwYWRkaW5nLWJvdHRvbTouNzVlbTtwYWRkaW5nLWlubGluZS1zdGFydDouNzVlbX0ucHJvc2UtbGcgOndoZXJlKHRib2R5IHRkOmZpcnN0LWNoaWxkLHRmb290IHRkOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnByb3NlLWxnIDp3aGVyZSh0Ym9keSB0ZDpsYXN0LWNoaWxkLHRmb290IHRkOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOjB9LnByb3NlLWxnIDp3aGVyZShmaWd1cmUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjc3Nzc4ZW07bWFyZ2luLWJvdHRvbToxLjc3Nzc4ZW19LnByb3NlLWxnIDp3aGVyZShmaWd1cmU+Kik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowfS5wcm9zZS1sZyA6d2hlcmUoZmlnY2FwdGlvbik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjFlbTtmb250LXNpemU6Ljg4ODg4OWVtO2xpbmUtaGVpZ2h0OjEuNX0ucHJvc2UtbGcgOndoZXJlKC5wcm9zZS1sZz46Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowfS5wcm9zZS1sZyA6d2hlcmUoLnByb3NlLWxnPjpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi1ib3R0b206MH0ucHJvc2Utc217Zm9udC1zaXplOi44NzVyZW07bGluZS1oZWlnaHQ6MS43MTQyOX0ucHJvc2Utc20gOndoZXJlKHApOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjE0Mjg2ZW07bWFyZ2luLWJvdHRvbToxLjE0Mjg2ZW19LnByb3NlLXNtIDp3aGVyZShbY2xhc3N+PWxlYWRdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6Ljg4ODg4OWVtO21hcmdpbi1ib3R0b206Ljg4ODg4OWVtO2ZvbnQtc2l6ZToxLjI4NTcxZW07bGluZS1oZWlnaHQ6MS41NTU1Nn0ucHJvc2Utc20gOndoZXJlKGJsb2NrcXVvdGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjMzMzMzZW07bWFyZ2luLWJvdHRvbToxLjMzMzMzZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6MS4xMTExMWVtfS5wcm9zZS1zbSA6d2hlcmUoaDEpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206LjhlbTtmb250LXNpemU6Mi4xNDI4NmVtO2xpbmUtaGVpZ2h0OjEuMn0ucHJvc2Utc20gOndoZXJlKGgyKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS42ZW07bWFyZ2luLWJvdHRvbTouOGVtO2ZvbnQtc2l6ZToxLjQyODU3ZW07bGluZS1oZWlnaHQ6MS40fS5wcm9zZS1zbSA6d2hlcmUoaDMpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjU1NTU2ZW07bWFyZ2luLWJvdHRvbTouNDQ0NDQ0ZW07Zm9udC1zaXplOjEuMjg1NzFlbTtsaW5lLWhlaWdodDoxLjU1NTU2fS5wcm9zZS1zbSA6d2hlcmUoaDQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjQyODU3ZW07bWFyZ2luLWJvdHRvbTouNTcxNDI5ZW07bGluZS1oZWlnaHQ6MS40Mjg1N30ucHJvc2Utc20gOndoZXJlKGltZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2Utc20gOndoZXJlKHBpY3R1cmUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjcxNDI5ZW07bWFyZ2luLWJvdHRvbToxLjcxNDI5ZW19LnByb3NlLXNtIDp3aGVyZShwaWN0dXJlPmltZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowfS5wcm9zZS1zbSA6d2hlcmUodmlkZW8pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjcxNDI5ZW07bWFyZ2luLWJvdHRvbToxLjcxNDI5ZW19LnByb3NlLXNtIDp3aGVyZShrYmQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy10b3A6LjE0Mjg1N2VtO3BhZGRpbmctaW5saW5lLWVuZDouMzU3MTQzZW07cGFkZGluZy1ib3R0b206LjE0Mjg1N2VtO2JvcmRlci1yYWRpdXM6LjMxMjVyZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjM1NzE0M2VtO2ZvbnQtc2l6ZTouODU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2ZvbnQtc2l6ZTouODU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShoMiBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2ZvbnQtc2l6ZTouOWVtfS5wcm9zZS1zbSA6d2hlcmUoaDMgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg4ODg4OWVtfS5wcm9zZS1zbSA6d2hlcmUocHJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1lbmQ6MWVtO3BhZGRpbmctYm90dG9tOi42NjY2NjdlbTtib3JkZXItcmFkaXVzOi4yNXJlbTttYXJnaW4tdG9wOjEuNjY2NjdlbTttYXJnaW4tYm90dG9tOjEuNjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW07Zm9udC1zaXplOi44NTcxNDNlbTtsaW5lLWhlaWdodDoxLjY2NjY3fS5wcm9zZS1zbSA6d2hlcmUob2wpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZSh1bCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMTQyODZlbTttYXJnaW4tYm90dG9tOjEuMTQyODZlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi4yODU3MTRlbTttYXJnaW4tYm90dG9tOi4yODU3MTRlbX0ucHJvc2Utc20gOndoZXJlKG9sPmxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1zbSA6d2hlcmUodWw+bGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjQyODU3MWVtfS5wcm9zZS1zbSA6d2hlcmUoLnByb3NlLXNtPnVsPmxpIHApOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNTcxNDI5ZW07bWFyZ2luLWJvdHRvbTouNTcxNDI5ZW19LnByb3NlLXNtIDp3aGVyZSgucHJvc2Utc20+dWw+bGk+cDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMTQyODZlbX0ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbT51bD5saT5wOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLWJvdHRvbToxLjE0Mjg2ZW19LnByb3NlLXNtIDp3aGVyZSgucHJvc2Utc20+b2w+bGk+cDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMTQyODZlbX0ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbT5vbD5saT5wOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLWJvdHRvbToxLjE0Mjg2ZW19LnByb3NlLXNtIDp3aGVyZSh1bCB1bCx1bCBvbCxvbCB1bCxvbCBvbCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi41NzE0MjllbTttYXJnaW4tYm90dG9tOi41NzE0MjllbX0ucHJvc2Utc20gOndoZXJlKGRsKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4xNDI4NmVtO21hcmdpbi1ib3R0b206MS4xNDI4NmVtfS5wcm9zZS1zbSA6d2hlcmUoZHQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjE0Mjg2ZW19LnByb3NlLXNtIDp3aGVyZShkZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi4yODU3MTRlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShocik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjIuODU3MTRlbTttYXJnaW4tYm90dG9tOjIuODU3MTRlbX0ucHJvc2Utc20gOndoZXJlKGhyKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZShoMisqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1zbSA6d2hlcmUoaDMrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2Utc20gOndoZXJlKGg0KyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowfS5wcm9zZS1zbSA6d2hlcmUodGFibGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Zm9udC1zaXplOi44NTcxNDNlbTtsaW5lLWhlaWdodDoxLjV9LnByb3NlLXNtIDp3aGVyZSh0aGVhZCB0aCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1lbmQ6MWVtO3BhZGRpbmctYm90dG9tOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW19LnByb3NlLXNtIDp3aGVyZSh0aGVhZCB0aDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1zdGFydDowfS5wcm9zZS1zbSA6d2hlcmUodGhlYWQgdGg6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1lbmQ6MH0ucHJvc2Utc20gOndoZXJlKHRib2R5IHRkLHRmb290IHRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1lbmQ6MWVtO3BhZGRpbmctYm90dG9tOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW19LnByb3NlLXNtIDp3aGVyZSh0Ym9keSB0ZDpmaXJzdC1jaGlsZCx0Zm9vdCB0ZDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1zdGFydDowfS5wcm9zZS1zbSA6d2hlcmUodGJvZHkgdGQ6bGFzdC1jaGlsZCx0Zm9vdCB0ZDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLWVuZDowfS5wcm9zZS1zbSA6d2hlcmUoZmlndXJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS43MTQyOWVtO21hcmdpbi1ib3R0b206MS43MTQyOWVtfS5wcm9zZS1zbSA6d2hlcmUoZmlndXJlPiopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ucHJvc2Utc20gOndoZXJlKGZpZ2NhcHRpb24pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNjY2NjY3ZW07Zm9udC1zaXplOi44NTcxNDNlbTtsaW5lLWhlaWdodDoxLjMzMzMzfS5wcm9zZS1zbSA6d2hlcmUoLnByb3NlLXNtPjpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjB9LnByb3NlLXNtIDp3aGVyZSgucHJvc2Utc20+Omxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLWJvdHRvbTowfS4tbXQtMXttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqLTEpfS5tdC0wXC41e21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9Lm10LTF7bWFyZ2luLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tdC0ye21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ubXQtM3ttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqMyl9Lm10LTR7bWFyZ2luLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5tdC02e21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0ubXQtOHttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqOCl9Lm10LTEwe21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9Lm10LTEye21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMil9Lm10LWF1dG97bWFyZ2luLXRvcDphdXRvfS5tci0xe21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tci0ye21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5tci04e21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjgpfS4tbWItNHttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqLTQpfS5tYi0xe21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ubWItMVwuNXttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMS41KX0ubWItMnttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMil9Lm1iLTN7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5tYi00e21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0ubWItNnttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqNil9Lm1iLTh7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjgpfS5tYi0xMHttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMTApfS5tbC0xe21hcmdpbi1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMSl9Lm1sLTJ7bWFyZ2luLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ubWwtYXV0b3ttYXJnaW4tbGVmdDphdXRvfS5saW5lLWNsYW1wLTJ7LXdlYmtpdC1saW5lLWNsYW1wOjI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVufS5uby1zY3JvbGxiYXJ7LW1zLW92ZXJmbG93LXN0eWxlOm5vbmU7c2Nyb2xsYmFyLXdpZHRoOm5vbmV9Lm5vLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS5ibG9ja3tkaXNwbGF5OmJsb2NrfS5mbGV4e2Rpc3BsYXk6ZmxleH0uZ3JpZHtkaXNwbGF5OmdyaWR9LmhpZGRlbntkaXNwbGF5Om5vbmV9LmlubGluZXtkaXNwbGF5OmlubGluZX0uaW5saW5lLWJsb2Nre2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5pbmxpbmUtZmxleHtkaXNwbGF5OmlubGluZS1mbGV4fS5saXN0LWl0ZW17ZGlzcGxheTpsaXN0LWl0ZW19LnRhYmxle2Rpc3BsYXk6dGFibGV9LnRhYmxlLWNhcHRpb257ZGlzcGxheTp0YWJsZS1jYXB0aW9ufS50YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbH0udGFibGUtcm93e2Rpc3BsYXk6dGFibGUtcm93fS5maWVsZC1zaXppbmctY29udGVudHtmaWVsZC1zaXppbmc6Y29udGVudH0uYXNwZWN0LVxbMTZcLzlcXXthc3BlY3QtcmF0aW86MTYvOX0uYXNwZWN0LVxbNjEwXC8yMDhcXXthc3BlY3QtcmF0aW86NjEwLzIwOH0uYXNwZWN0LXNxdWFyZXthc3BlY3QtcmF0aW86MX0uc2l6ZS0zXC41e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMy41KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpfS5zaXplLTR7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0uc2l6ZS01e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNSk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNSl9LnNpemUtNnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5zaXplLTd7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo3KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo3KX0uc2l6ZS04e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqOCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOCl9LnNpemUtOXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjkpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjkpfS5zaXplLTEwe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMTApO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKX0uc2l6ZS0xNHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjE0KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNCl9LnNpemUtZnVsbHt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS5oLTJ7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9LmgtMlwuNXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5oLTN7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMyl9LmgtM1wuNXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpfS5oLTR7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LmgtNXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0uaC02e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5oLTd7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNyl9LmgtOHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uaC04XCF7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOCkhaW1wb3J0YW50fS5oLTl7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOSl9LmgtMTB7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTApfS5oLTEye2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEyKX0uaC0xNHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNCl9LmgtMTZ7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTYpfS5oLTIwe2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjIwKX0uaC0yNHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyNCl9LmgtNDB7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNDApfS5oLTY0e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjY0KX0uaC04MHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4MCl9LmgtXFs4MHB4XF17aGVpZ2h0OjgwcHh9LmgtXFszMDBweFxde2hlaWdodDozMDBweH0uaC1cWzM2MHB4XF17aGVpZ2h0OjM2MHB4fS5oLVxbNDQwcHhcXXtoZWlnaHQ6NDQwcHh9LmgtXFtjYWxjXCgxMDBcJS0xcHhcKVxde2hlaWdodDpjYWxjKDEwMCUgLSAxcHgpfS5oLWF1dG97aGVpZ2h0OmF1dG99LmgtZnVsbHtoZWlnaHQ6MTAwJX0uaC1weHtoZWlnaHQ6MXB4fS5oLXNjcmVlbntoZWlnaHQ6MTAwdmh9Lm1heC1oLVwoLS1hdmFpbGFibGUtaGVpZ2h0XCl7bWF4LWhlaWdodDp2YXIoLS1hdmFpbGFibGUtaGVpZ2h0KX0ubWF4LWgtNjR7bWF4LWhlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjY0KX0ubWF4LWgtNzJ7bWF4LWhlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjcyKX0ubWluLWgtMTZ7bWluLWhlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjE2KX0ubWluLWgtXFs2MHZoXF17bWluLWhlaWdodDo2MHZofS5taW4taC1zY3JlZW57bWluLWhlaWdodDoxMDB2aH0udy1cKC0tYW5jaG9yLXdpZHRoXCl7d2lkdGg6dmFyKC0tYW5jaG9yLXdpZHRoKX0udy0xe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMSl9LnctMnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS53LTN7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0udy0zXC41e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMy41KX0udy00e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCl9LnctNXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjUpfS53LTZ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0udy03e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNyl9LnctOHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjgpfS53LTl7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo5KX0udy0xMHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKX0udy0xMnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEyKX0udy0xNHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjE0KX0udy0xNnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjE2KX0udy0yMHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjIwKX0udy0yNHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjI0KX0udy0yOHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjI4KX0udy0zMnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMyKX0udy00MHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQwKX0udy00NHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQ0KX0udy00OHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQ4KX0udy01Mnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjUyKX0udy01Nnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjU2KX0udy03Mnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjcyKX0udy1cWzEyMHB4XF17d2lkdGg6MTIwcHh9LnctXFsxNDBweFxde3dpZHRoOjE0MHB4fS53LVxbY2FsY1woXCgxMDBcJS0ycmVtXClcLzNcKVxde3dpZHRoOmNhbGMoMzMuMzMzMyUgLSAuNjY2NjY3cmVtKX0udy1hdXRve3dpZHRoOmF1dG99LnctZml0e3dpZHRoOmZpdC1jb250ZW50fS53LWZ1bGx7d2lkdGg6MTAwJX0udy1weHt3aWR0aDoxcHh9Lm1heC13LTB7bWF4LXdpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lm1heC13LTJ4bHttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLTJ4bCl9Lm1heC13LTN4bHttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLTN4bCl9Lm1heC13LTR4bHttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLTR4bCl9Lm1heC13LTd4bHttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLTd4bCl9Lm1heC13LTQ4e21heC13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQ4KX0ubWF4LXctXFsyMDBweFxde21heC13aWR0aDoyMDBweH0ubWF4LXctXFtjYWxjXCgxMDBcJS0ycmVtXClcXXttYXgtd2lkdGg6Y2FsYygxMDAlIC0gMnJlbSl9Lm1heC13LVxbY2FsY1woMTAwdnctMnJlbVwpXF17bWF4LXdpZHRoOmNhbGMoMTAwdncgLSAycmVtKX0ubWF4LXctbGd7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci1sZyl9Lm1heC13LW1ke21heC13aWR0aDp2YXIoLS1jb250YWluZXItbWQpfS5tYXgtdy1ub25le21heC13aWR0aDpub25lfS5tYXgtdy1zbXttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLXNtKX0ubWF4LXcteGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci14bCl9Lm1heC13LXhze21heC13aWR0aDp2YXIoLS1jb250YWluZXIteHMpfS5taW4tdy0we21pbi13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5taW4tdy0zMnttaW4td2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozMil9Lm1pbi13LTY0e21pbi13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjY0KX0ubWluLXctXFsycmVtXF17bWluLXdpZHRoOjJyZW19Lm1pbi13LVxbOTZweFxde21pbi13aWR0aDo5NnB4fS5taW4tdy1cWzE1MHB4XF17bWluLXdpZHRoOjE1MHB4fS5mbGV4LTF7ZmxleDoxfS5zaHJpbmstMHtmbGV4LXNocmluazowfS50YWJsZS1maXhlZHt0YWJsZS1sYXlvdXQ6Zml4ZWR9LmNhcHRpb24tYm90dG9te2NhcHRpb24tc2lkZTpib3R0b219Lm9yaWdpbi1cKC0tdHJhbnNmb3JtLW9yaWdpblwpe3RyYW5zZm9ybS1vcmlnaW46dmFyKC0tdHJhbnNmb3JtLW9yaWdpbil9Li10cmFuc2xhdGUteC0xXC8yey0tdHctdHJhbnNsYXRlLXg6Y2FsYyhjYWxjKDEvMioxMDAlKSotMSk7dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0udHJhbnNsYXRlLXgtXFszcHhcXXstLXR3LXRyYW5zbGF0ZS14OjNweDt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS50cmFuc2xhdGUteC1cWzE4cHhcXXstLXR3LXRyYW5zbGF0ZS14OjE4cHg7dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0uLXRyYW5zbGF0ZS15LTFcLzJ7LS10dy10cmFuc2xhdGUteTpjYWxjKGNhbGMoMS8yKjEwMCUpKi0xKTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS50cmFuc2xhdGUteS0wey0tdHctdHJhbnNsYXRlLXk6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS5yb3RhdGUtMTgwe3JvdGF0ZToxODBkZWd9LnRyYW5zZm9ybXt0cmFuc2Zvcm06dmFyKC0tdHctcm90YXRlLXgsKXZhcigtLXR3LXJvdGF0ZS15LCl2YXIoLS10dy1yb3RhdGUteiwpdmFyKC0tdHctc2tldy14LCl2YXIoLS10dy1za2V3LXksKX0udHJhbnNmb3JtLWdwdXt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKXZhcigtLXR3LXJvdGF0ZS14LCl2YXIoLS10dy1yb3RhdGUteSwpdmFyKC0tdHctcm90YXRlLXosKXZhcigtLXR3LXNrZXcteCwpdmFyKC0tdHctc2tldy15LCl9LmFuaW1hdGUtcHVsc2V7YW5pbWF0aW9uOnZhcigtLWFuaW1hdGUtcHVsc2UpfS5hbmltYXRlLXNwaW57YW5pbWF0aW9uOnZhcigtLWFuaW1hdGUtc3Bpbil9LmN1cnNvci1jcm9zc2hhaXJ7Y3Vyc29yOmNyb3NzaGFpcn0uY3Vyc29yLWRlZmF1bHR7Y3Vyc29yOmRlZmF1bHR9LmN1cnNvci1ub3QtYWxsb3dlZHtjdXJzb3I6bm90LWFsbG93ZWR9LmN1cnNvci1wb2ludGVye2N1cnNvcjpwb2ludGVyfS5jdXJzb3ItdGV4dHtjdXJzb3I6dGV4dH0ucmVzaXple3Jlc2l6ZTpib3RofS5yZXNpemUtbm9uZXtyZXNpemU6bm9uZX0uc2Nyb2xsLXB5LTF7c2Nyb2xsLXBhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ubGlzdC1kaXNje2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5saXN0LW5vbmV7bGlzdC1zdHlsZS10eXBlOm5vbmV9LmF1dG8tY29scy1mcntncmlkLWF1dG8tY29sdW1uczptaW5tYXgoMCwxZnIpfS5ncmlkLWZsb3ctY29se2dyaWQtYXV0by1mbG93OmNvbHVtbn0uYXV0by1yb3dzLW1pbntncmlkLWF1dG8tcm93czptaW4tY29udGVudH0uZ3JpZC1jb2xzLTF7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgxLG1pbm1heCgwLDFmcikpfS5ncmlkLWNvbHMtMntncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDIsbWlubWF4KDAsMWZyKSl9LmZsZXgtY29se2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZmxleC1jb2wtcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZX0uZmxleC1yb3d7ZmxleC1kaXJlY3Rpb246cm93fS5mbGV4LXdyYXB7ZmxleC13cmFwOndyYXB9LmNvbnRlbnQtc3RhcnR7YWxpZ24tY29udGVudDpmbGV4LXN0YXJ0fS5pdGVtcy1iYXNlbGluZXthbGlnbi1pdGVtczpiYXNlbGluZX0uaXRlbXMtY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlcn0uaXRlbXMtZW5ke2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5pdGVtcy1zdGFydHthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5pdGVtcy1zdHJldGNoe2FsaWduLWl0ZW1zOnN0cmV0Y2h9Lmp1c3RpZnktYXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9Lmp1c3RpZnktYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uanVzdGlmeS1jZW50ZXJ7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uanVzdGlmeS1lbmR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS5qdXN0aWZ5LXN0YXJ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5nYXAtMFwuNXtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9LmdhcC0xe2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5nYXAtMVwuNXtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxLjUpfS5nYXAtMntnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uZ2FwLTJcLjV7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqMi41KX0uZ2FwLTN7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqMyl9LmdhcC00e2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5nYXAtNntnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0uZ2FwLTh7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqOCl9LmdhcC1cWzJweFxde2dhcDoycHh9OndoZXJlKC5zcGFjZS15LTBcLjU+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSouNSkqdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSk7bWFyZ2luLWJsb2NrLWVuZDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqLjUpKmNhbGMoMSAtIHZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpKX06d2hlcmUoLnNwYWNlLXktMT46bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEpKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEpKmNhbGMoMSAtIHZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpKX06d2hlcmUoLnNwYWNlLXktMVwuNT46bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSkqdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSk7bWFyZ2luLWJsb2NrLWVuZDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMS41KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTI+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSoyKSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSoyKSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTM+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSozKSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSozKSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTQ+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo0KSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo0KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTY+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo2KSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo2KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTg+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo4KSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo4KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTEwPjpub3QoOmxhc3QtY2hpbGQpKXstLXR3LXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi1ibG9jay1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMTApKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEwKSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9LmdhcC14LTR7Y29sdW1uLWdhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5nYXAteC04e2NvbHVtbi1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX06d2hlcmUoLi1zcGFjZS14LTI+Om5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteC1yZXZlcnNlOjA7bWFyZ2luLWlubGluZS1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqLTIpKnZhcigtLXR3LXNwYWNlLXgtcmV2ZXJzZSkpO21hcmdpbi1pbmxpbmUtZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSotMikqY2FsYygxIC0gdmFyKC0tdHctc3BhY2UteC1yZXZlcnNlKSkpfS5nYXAteS0xXC41e3Jvdy1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxLjUpfS5nYXAteS01e3Jvdy1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX06d2hlcmUoLmRpdmlkZS15Pjpub3QoOmxhc3QtY2hpbGQpKXstLXR3LWRpdmlkZS15LXJldmVyc2U6MDtib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXRvcC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci10b3Atd2lkdGg6Y2FsYygxcHgqdmFyKC0tdHctZGl2aWRlLXktcmV2ZXJzZSkpO2JvcmRlci1ib3R0b20td2lkdGg6Y2FsYygxcHgqY2FsYygxIC0gdmFyKC0tdHctZGl2aWRlLXktcmV2ZXJzZSkpKX06d2hlcmUoLmRpdmlkZS1ib3JkZXI+Om5vdCg6bGFzdC1jaGlsZCkpe2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpfS5zZWxmLXN0YXJ0e2FsaWduLXNlbGY6ZmxleC1zdGFydH0uanVzdGlmeS1zZWxmLWVuZHtqdXN0aWZ5LXNlbGY6ZmxleC1lbmR9LnRydW5jYXRle3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbn0ub3ZlcmZsb3ctYXV0b3tvdmVyZmxvdzphdXRvfS5vdmVyZmxvdy1oaWRkZW57b3ZlcmZsb3c6aGlkZGVufS5vdmVyZmxvdy14LWF1dG97b3ZlcmZsb3cteDphdXRvfS5vdmVyZmxvdy14LWhpZGRlbntvdmVyZmxvdy14OmhpZGRlbn0ub3ZlcmZsb3cteC1zY3JvbGx7b3ZlcmZsb3cteDpzY3JvbGx9Lm92ZXJmbG93LXktYXV0b3tvdmVyZmxvdy15OmF1dG99LnJvdW5kZWR7Ym9yZGVyLXJhZGl1czouMjVyZW19LnJvdW5kZWQtMnhse2JvcmRlci1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuOCl9LnJvdW5kZWQtNHhse2JvcmRlci1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjIuNil9LnJvdW5kZWQtXFtjYWxjXCh2YXJcKC0tcmFkaXVzXCktM3B4XClcXXtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSAtIDNweCl9LnJvdW5kZWQtXFttaW5cKHZhclwoLS1yYWRpdXMtbWRcKVwsMTBweFwpXF17Ym9yZGVyLXJhZGl1czptaW4odmFyKC0tcmFkaXVzLW1kKSwxMHB4KX0ucm91bmRlZC1cW21pblwodmFyXCgtLXJhZGl1cy1tZFwpXCwxMnB4XClcXXtib3JkZXItcmFkaXVzOm1pbih2YXIoLS1yYWRpdXMtbWQpLDEycHgpfS5yb3VuZGVkLWZ1bGx7Ym9yZGVyLXJhZGl1czozLjQwMjgyZTM4cHh9LnJvdW5kZWQtbGd7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMpfS5yb3VuZGVkLWxnXCF7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMpIWltcG9ydGFudH0ucm91bmRlZC1tZHtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSouOCl9LnJvdW5kZWQtbm9uZXtib3JkZXItcmFkaXVzOjB9LnJvdW5kZWQtc217Ym9yZGVyLXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqLjYpfS5yb3VuZGVkLXhse2JvcmRlci1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuNCl9LnJvdW5kZWQteGxcIXtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpIWltcG9ydGFudH0ucm91bmRlZC10LTJ4bHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjgpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjgpfS5yb3VuZGVkLXQteGx7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqMS40KTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqMS40KX0ucm91bmRlZC1iLXhse2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuNCl9LmJvcmRlcntib3JkZXItc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItd2lkdGg6MXB4fS5ib3JkZXItMHtib3JkZXItc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItd2lkdGg6MH0uYm9yZGVyLTJ7Ym9yZGVyLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXdpZHRoOjJweH0uYm9yZGVyLXR7Ym9yZGVyLXRvcC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci10b3Atd2lkdGg6MXB4fS5ib3JkZXItcntib3JkZXItcmlnaHQtc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItcmlnaHQtd2lkdGg6MXB4fS5ib3JkZXItYntib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLWJvdHRvbS13aWR0aDoxcHh9LmJvcmRlci1iLTJ7Ym9yZGVyLWJvdHRvbS1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1ib3R0b20td2lkdGg6MnB4fS5ib3JkZXItZGFzaGVkey0tdHctYm9yZGVyLXN0eWxlOmRhc2hlZDtib3JkZXItc3R5bGU6ZGFzaGVkfS5ib3JkZXItYm9yZGVye2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpfS5ib3JkZXItZGFuZ2VyXC8zMHtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJvcmRlci1kYW5nZXJcLzMwe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGFuZ2VyKTMwJSx0cmFuc3BhcmVudCl9fS5ib3JkZXItZGVzdHJ1Y3RpdmVcLzMwe2JvcmRlci1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ib3JkZXItZGVzdHJ1Y3RpdmVcLzMwe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMzAlLHRyYW5zcGFyZW50KX19LmJvcmRlci1pbnB1dCwuYm9yZGVyLWlucHV0XC8zMHtib3JkZXItY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYm9yZGVyLWlucHV0XC8zMHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTMwJSx0cmFuc3BhcmVudCl9fS5ib3JkZXItcHJpbWFyeXtib3JkZXItY29sb3I6dmFyKC0tcHJpbWFyeSl9LmJvcmRlci1yZWQtNTAwXC80MHtib3JkZXItY29sb3I6I2ZiMmMzNjY2fUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYm9yZGVyLXJlZC01MDBcLzQwe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tY29sb3ItcmVkLTUwMCk0MCUsdHJhbnNwYXJlbnQpfX0uYm9yZGVyLXN1Y2Nlc3NcLzMwe2JvcmRlci1jb2xvcjp2YXIoLS1zdWNjZXNzKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJvcmRlci1zdWNjZXNzXC8zMHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXN1Y2Nlc3MpMzAlLHRyYW5zcGFyZW50KX19LmJvcmRlci10cmFuc3BhcmVudHtib3JkZXItY29sb3I6IzAwMDB9LmJnLVxbXCMyMjlFRDlcXXtiYWNrZ3JvdW5kLWNvbG9yOiMyMjllZDl9LmJnLWJhY2tncm91bmQsLmJnLWJhY2tncm91bmRcLzgwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tYmFja2dyb3VuZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1iYWNrZ3JvdW5kXC84MHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1iYWNrZ3JvdW5kKTgwJSx0cmFuc3BhcmVudCl9fS5iZy1ibGFja1wvMTB7YmFja2dyb3VuZC1jb2xvcjojMDAwMDAwMWF9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1ibGFja1wvMTB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tY29sb3ItYmxhY2spMTAlLHRyYW5zcGFyZW50KX19LmJnLWJsYWNrXC81MHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwMDA4MH1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLWJsYWNrXC81MHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1jb2xvci1ibGFjayk1MCUsdHJhbnNwYXJlbnQpfX0uYmctYm9yZGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tYm9yZGVyKX0uYmctY2FyZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNhcmQpfS5iZy1kYW5nZXIsLmJnLWRhbmdlclwvNXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRhbmdlcil9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1kYW5nZXJcLzV7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGFuZ2VyKTUlLHRyYW5zcGFyZW50KX19LmJnLWRlc3RydWN0aXZlLC5iZy1kZXN0cnVjdGl2ZVwvNXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLWRlc3RydWN0aXZlXC81e2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTUlLHRyYW5zcGFyZW50KX19LmJnLWRlc3RydWN0aXZlXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLWRlc3RydWN0aXZlXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkxMCUsdHJhbnNwYXJlbnQpfX0uYmctaW5wdXRcLzMwe2JhY2tncm91bmQtY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctaW5wdXRcLzMwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTMwJSx0cmFuc3BhcmVudCl9fS5iZy1tdXRlZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX0uYmctbXV0ZWQtZm9yZWdyb3VuZFwvMjV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLW11dGVkLWZvcmVncm91bmRcLzI1e2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkLWZvcmVncm91bmQpMjUlLHRyYW5zcGFyZW50KX19LmJnLW11dGVkXC8zMHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLW11dGVkXC8zMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCkzMCUsdHJhbnNwYXJlbnQpfX0uYmctbXV0ZWRcLzQwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctbXV0ZWRcLzQwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkKTQwJSx0cmFuc3BhcmVudCl9fS5iZy1tdXRlZFwvNTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1tdXRlZFwvNTB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tbXV0ZWQpNTAlLHRyYW5zcGFyZW50KX19LmJnLXBvcG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wb3BvdmVyKX0uYmctcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnkpfS5iZy1wcmltYXJ5LWZvcmVncm91bmRcLzIwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tcHJpbWFyeS1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXByaW1hcnktZm9yZWdyb3VuZFwvMjB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeS1mb3JlZ3JvdW5kKTIwJSx0cmFuc3BhcmVudCl9fS5iZy1wcmltYXJ5XC81e2JhY2tncm91bmQtY29sb3I6dmFyKC0tcHJpbWFyeSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1wcmltYXJ5XC81e2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXByaW1hcnkpNSUsdHJhbnNwYXJlbnQpfX0uYmctcHJpbWFyeVwvMTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXByaW1hcnlcLzEwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXByaW1hcnkpMTAlLHRyYW5zcGFyZW50KX19LmJnLXByaW1hcnlcLzE1e2JhY2tncm91bmQtY29sb3I6dmFyKC0tcHJpbWFyeSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1wcmltYXJ5XC8xNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTE1JSx0cmFuc3BhcmVudCl9fS5iZy1zZWNvbmRhcnl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zZWNvbmRhcnkpfS5iZy1zdWNjZXNzLC5iZy1zdWNjZXNzXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXN1Y2Nlc3MpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctc3VjY2Vzc1wvMTB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tc3VjY2VzcykxMCUsdHJhbnNwYXJlbnQpfX0uYmctc3VjY2Vzc1wvMTV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zdWNjZXNzKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXN1Y2Nlc3NcLzE1e2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXN1Y2Nlc3MpMTUlLHRyYW5zcGFyZW50KX19LmJnLXN1cmZhY2UsLmJnLXN1cmZhY2VcLzkwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tc3VyZmFjZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1zdXJmYWNlXC85MHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1zdXJmYWNlKTkwJSx0cmFuc3BhcmVudCl9fS5iZy10cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5iZy13YXJuaW5nXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXdhcm5pbmcpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctd2FybmluZ1wvMTB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0td2FybmluZykxMCUsdHJhbnNwYXJlbnQpfX0uYmctd2hpdGV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci13aGl0ZSl9LmJnLXdoaXRlXC8xNXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYyNn1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXdoaXRlXC8xNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1jb2xvci13aGl0ZSkxNSUsdHJhbnNwYXJlbnQpfX0uYmctZ3JhZGllbnQtdG8tYnJ7LS10dy1ncmFkaWVudC1wb3NpdGlvbjp0byBib3R0b20gcmlnaHQgaW4gb2tsYWI7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodmFyKC0tdHctZ3JhZGllbnQtc3RvcHMpKX0uZnJvbS1cW1wjMzhBRkUzXF17LS10dy1ncmFkaWVudC1mcm9tOiMzOGFmZTM7LS10dy1ncmFkaWVudC1zdG9wczp2YXIoLS10dy1ncmFkaWVudC12aWEtc3RvcHMsdmFyKC0tdHctZ3JhZGllbnQtcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LWZyb20pdmFyKC0tdHctZ3JhZGllbnQtZnJvbS1wb3NpdGlvbiksdmFyKC0tdHctZ3JhZGllbnQtdG8pdmFyKC0tdHctZ3JhZGllbnQtdG8tcG9zaXRpb24pKX0uZnJvbS1cW1wjMjI5RUQ5XF17LS10dy1ncmFkaWVudC1mcm9tOiMyMjllZDk7LS10dy1ncmFkaWVudC1zdG9wczp2YXIoLS10dy1ncmFkaWVudC12aWEtc3RvcHMsdmFyKC0tdHctZ3JhZGllbnQtcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LWZyb20pdmFyKC0tdHctZ3JhZGllbnQtZnJvbS1wb3NpdGlvbiksdmFyKC0tdHctZ3JhZGllbnQtdG8pdmFyKC0tdHctZ3JhZGllbnQtdG8tcG9zaXRpb24pKX0udG8tXFtcIzFGOTdDQVxdey0tdHctZ3JhZGllbnQtdG86IzFmOTdjYTstLXR3LWdyYWRpZW50LXN0b3BzOnZhcigtLXR3LWdyYWRpZW50LXZpYS1zdG9wcyx2YXIoLS10dy1ncmFkaWVudC1wb3NpdGlvbiksdmFyKC0tdHctZ3JhZGllbnQtZnJvbSl2YXIoLS10dy1ncmFkaWVudC1mcm9tLXBvc2l0aW9uKSx2YXIoLS10dy1ncmFkaWVudC10byl2YXIoLS10dy1ncmFkaWVudC10by1wb3NpdGlvbikpfS50by1cW1wjMWE3ZmIwXF17LS10dy1ncmFkaWVudC10bzojMWE3ZmIwOy0tdHctZ3JhZGllbnQtc3RvcHM6dmFyKC0tdHctZ3JhZGllbnQtdmlhLXN0b3BzLHZhcigtLXR3LWdyYWRpZW50LXBvc2l0aW9uKSx2YXIoLS10dy1ncmFkaWVudC1mcm9tKXZhcigtLXR3LWdyYWRpZW50LWZyb20tcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LXRvKXZhcigtLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9uKSl9LmJnLWNsaXAtcGFkZGluZ3tiYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3h9Lm9iamVjdC1jb3ZlcntvYmplY3QtZml0OmNvdmVyfS5wLTB7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5wLTBcLjV7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0ucC0xe3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ucC0ye3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucC0ze3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ucC00e3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0ucC01e3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0ucC02e3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0ucC0xMntwYWRkaW5nOmNhbGModmFyKC0tc3BhY2luZykqMTIpfS5wLVxbM3B4XF17cGFkZGluZzozcHh9LnB4LTF7cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ucHgtMVwuNXtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9LnB4LTJ7cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucHgtMlwuNXtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjIuNSl9LnB4LTN7cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ucHgtNHtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5weC01e3BhZGRpbmctaW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqNSl9LnB5LTBcLjV7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0ucHktMXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMSl9LnB5LTFcLjV7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9LnB5LTJ7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5weS0yXC41e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5weS0ze3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ucHktM1wuNXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMy41KX0ucHktNHtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqNCl9LnB5LTZ7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5weS04e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0ucHktMTB7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKX0ucHktMTJ7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEyKX0ucHktMTZ7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjE2KX0ucHQtMntwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5wdC0ze3BhZGRpbmctdG9wOmNhbGModmFyKC0tc3BhY2luZykqMyl9LnB0LTR7cGFkZGluZy10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0ucHQtNntwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5wci0ye3BhZGRpbmctcmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucHItNHtwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LnByLTh7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjgpfS5wci0xMntwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTIpfS5wYi0we3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMCl9LnBiLTF7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ucGItMntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5wYi02e3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqNil9LnBiLTh7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0ucGItMTB7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LnBiLTE2e3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMTYpfS5wbC0xXC41e3BhZGRpbmctbGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9LnBsLTJ7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMil9LnBsLTV7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqNSl9LnBsLTh7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqOCl9LnBsLTl7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqOSl9LnRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyfS50ZXh0LWxlZnR7dGV4dC1hbGlnbjpsZWZ0fS50ZXh0LXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9LmFsaWduLW1pZGRsZXt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmZvbnQtbW9ub3tmb250LWZhbWlseTp2YXIoLS1mb250LWludGVyKSwiSW50ZXIiLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZn0udGV4dC0yeGx7Zm9udC1zaXplOnZhcigtLXRleHQtMnhsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtMnhsLS1saW5lLWhlaWdodCkpfS50ZXh0LTN4bHtmb250LXNpemU6dmFyKC0tdGV4dC0zeGwpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC0zeGwtLWxpbmUtaGVpZ2h0KSl9LnRleHQtNHhse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LTR4bCk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LTR4bC0tbGluZS1oZWlnaHQpKX0udGV4dC02eGx7Zm9udC1zaXplOnZhcigtLXRleHQtNnhsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtNnhsLS1saW5lLWhlaWdodCkpfS50ZXh0LWJhc2V7Zm9udC1zaXplOnZhcigtLXRleHQtYmFzZSk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LWJhc2UtLWxpbmUtaGVpZ2h0KSl9LnRleHQtbGd7Zm9udC1zaXplOnZhcigtLXRleHQtbGcpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC1sZy0tbGluZS1oZWlnaHQpKX0udGV4dC1zbXtmb250LXNpemU6dmFyKC0tdGV4dC1zbSk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LXNtLS1saW5lLWhlaWdodCkpfS50ZXh0LXhse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXhsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQteGwtLWxpbmUtaGVpZ2h0KSl9LnRleHQteHN7Zm9udC1zaXplOnZhcigtLXRleHQteHMpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC14cy0tbGluZS1oZWlnaHQpKX0udGV4dC1cWzBcLjhyZW1cXXtmb250LXNpemU6LjhyZW19LnRleHQtXFsxMHB4XF17Zm9udC1zaXplOjEwcHh9LnRleHQtXFsxMXB4XF17Zm9udC1zaXplOjExcHh9LmxlYWRpbmctbm9uZXstLXR3LWxlYWRpbmc6MTtsaW5lLWhlaWdodDoxfS5sZWFkaW5nLXJlbGF4ZWR7LS10dy1sZWFkaW5nOnZhcigtLWxlYWRpbmctcmVsYXhlZCk7bGluZS1oZWlnaHQ6dmFyKC0tbGVhZGluZy1yZWxheGVkKX0ubGVhZGluZy1zbnVney0tdHctbGVhZGluZzp2YXIoLS1sZWFkaW5nLXNudWcpO2xpbmUtaGVpZ2h0OnZhcigtLWxlYWRpbmctc251Zyl9LmxlYWRpbmctdGlnaHR7LS10dy1sZWFkaW5nOnZhcigtLWxlYWRpbmctdGlnaHQpO2xpbmUtaGVpZ2h0OnZhcigtLWxlYWRpbmctdGlnaHQpfS5mb250LWJvbGR7LS10dy1mb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1ib2xkKTtmb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1ib2xkKX0uZm9udC1tZWRpdW17LS10dy1mb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO2ZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSl9LmZvbnQtbm9ybWFsey0tdHctZm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtbm9ybWFsKTtmb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpfS5mb250LXNlbWlib2xkey0tdHctZm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO2ZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKX0udHJhY2tpbmctdGlnaHR7LS10dy10cmFja2luZzp2YXIoLS10cmFja2luZy10aWdodCk7bGV0dGVyLXNwYWNpbmc6dmFyKC0tdHJhY2tpbmctdGlnaHQpfS50cmFja2luZy13aWRley0tdHctdHJhY2tpbmc6dmFyKC0tdHJhY2tpbmctd2lkZSk7bGV0dGVyLXNwYWNpbmc6dmFyKC0tdHJhY2tpbmctd2lkZSl9LnRyYWNraW5nLXdpZGVzdHstLXR3LXRyYWNraW5nOnZhcigtLXRyYWNraW5nLXdpZGVzdCk7bGV0dGVyLXNwYWNpbmc6dmFyKC0tdHJhY2tpbmctd2lkZXN0KX0uYnJlYWstYWxse3dvcmQtYnJlYWs6YnJlYWstYWxsfS53aGl0ZXNwYWNlLW5vcm1hbHt3aGl0ZS1zcGFjZTpub3JtYWx9LndoaXRlc3BhY2Utbm93cmFwe3doaXRlLXNwYWNlOm5vd3JhcH0ud2hpdGVzcGFjZS1wcmUtbGluZXt3aGl0ZS1zcGFjZTpwcmUtbGluZX0ud2hpdGVzcGFjZS1wcmUtd3JhcHt3aGl0ZS1zcGFjZTpwcmUtd3JhcH0udGV4dC1cW1wjMjJDNTVFXF17Y29sb3I6IzIyYzU1ZX0udGV4dC1cW1wjMjI5RUQ5XF17Y29sb3I6IzIyOWVkOX0udGV4dC1cW1wjMTg3OUE4XF17Y29sb3I6IzE4NzlhOH0udGV4dC1cW1wjRUY0NDQ0XF17Y29sb3I6I2VmNDQ0NH0udGV4dC1jYXJkLWZvcmVncm91bmR7Y29sb3I6dmFyKC0tY2FyZC1mb3JlZ3JvdW5kKX0udGV4dC1kYW5nZXJ7Y29sb3I6dmFyKC0tZGFuZ2VyKX0udGV4dC1kZXN0cnVjdGl2ZXtjb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9LnRleHQtZm9yZWdyb3VuZCwudGV4dC1mb3JlZ3JvdW5kXC82MHtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnRleHQtZm9yZWdyb3VuZFwvNjB7Y29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWZvcmVncm91bmQpNjAlLHRyYW5zcGFyZW50KX19LnRleHQtZm9yZWdyb3VuZFwvODB7Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey50ZXh0LWZvcmVncm91bmRcLzgwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1mb3JlZ3JvdW5kKTgwJSx0cmFuc3BhcmVudCl9fS50ZXh0LWdyZWVuLTYwMHtjb2xvcjp2YXIoLS1jb2xvci1ncmVlbi02MDApfS50ZXh0LW11dGVkLWZvcmVncm91bmQsLnRleHQtbXV0ZWQtZm9yZWdyb3VuZFwvNjB7Y29sb3I6dmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey50ZXh0LW11dGVkLWZvcmVncm91bmRcLzYwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKTYwJSx0cmFuc3BhcmVudCl9fS50ZXh0LW9yYW5nZS01MDB7Y29sb3I6dmFyKC0tY29sb3Itb3JhbmdlLTUwMCl9LnRleHQtcG9wb3Zlci1mb3JlZ3JvdW5ke2NvbG9yOnZhcigtLXBvcG92ZXItZm9yZWdyb3VuZCl9LnRleHQtcHJpbWFyeXtjb2xvcjp2YXIoLS1wcmltYXJ5KX0udGV4dC1wcmltYXJ5LWZvcmVncm91bmR7Y29sb3I6dmFyKC0tcHJpbWFyeS1mb3JlZ3JvdW5kKX0udGV4dC1yZWQtNTAwe2NvbG9yOnZhcigtLWNvbG9yLXJlZC01MDApfS50ZXh0LXNlY29uZGFyeS1mb3JlZ3JvdW5ke2NvbG9yOnZhcigtLXNlY29uZGFyeS1mb3JlZ3JvdW5kKX0udGV4dC1zdWNjZXNze2NvbG9yOnZhcigtLXN1Y2Nlc3MpfS50ZXh0LXdhcm5pbmd7Y29sb3I6dmFyKC0td2FybmluZyl9LnRleHQtd2hpdGV7Y29sb3I6dmFyKC0tY29sb3Itd2hpdGUpfS50ZXh0LXdoaXRlXC84NXtjb2xvcjojZmZmZmZmZDl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey50ZXh0LXdoaXRlXC84NXtjb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tY29sb3Itd2hpdGUpODUlLHRyYW5zcGFyZW50KX19LnRleHQtd2hpdGVcLzkwe2NvbG9yOiNmZmZmZmZlNn1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnRleHQtd2hpdGVcLzkwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1jb2xvci13aGl0ZSk5MCUsdHJhbnNwYXJlbnQpfX0udGV4dC13aGl0ZVwvOTV7Y29sb3I6I2ZmZmZmZmYyfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsudGV4dC13aGl0ZVwvOTV7Y29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWNvbG9yLXdoaXRlKTk1JSx0cmFuc3BhcmVudCl9fS5jYXBpdGFsaXple3RleHQtdHJhbnNmb3JtOmNhcGl0YWxpemV9LnVwcGVyY2FzZXt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lml0YWxpY3tmb250LXN0eWxlOml0YWxpY30udGFidWxhci1udW1zey0tdHctbnVtZXJpYy1zcGFjaW5nOnRhYnVsYXItbnVtcztmb250LXZhcmlhbnQtbnVtZXJpYzp2YXIoLS10dy1vcmRpbmFsLCl2YXIoLS10dy1zbGFzaGVkLXplcm8sKXZhcigtLXR3LW51bWVyaWMtZmlndXJlLCl2YXIoLS10dy1udW1lcmljLXNwYWNpbmcsKXZhcigtLXR3LW51bWVyaWMtZnJhY3Rpb24sKX0udW5kZXJsaW5le3RleHQtZGVjb3JhdGlvbi1saW5lOnVuZGVybGluZX0udW5kZXJsaW5lLW9mZnNldC0ye3RleHQtdW5kZXJsaW5lLW9mZnNldDoycHh9LnVuZGVybGluZS1vZmZzZXQtNHt0ZXh0LXVuZGVybGluZS1vZmZzZXQ6NHB4fS5hbnRpYWxpYXNlZHstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZX0ub3BhY2l0eS0we29wYWNpdHk6MH0ub3BhY2l0eS0zMHtvcGFjaXR5Oi4zfS5vcGFjaXR5LTQwe29wYWNpdHk6LjR9Lm9wYWNpdHktNTB7b3BhY2l0eTouNX0ub3BhY2l0eS03MHtvcGFjaXR5Oi43fS5iZy1ibGVuZC1jb2xvcntiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6Y29sb3J9LnNoYWRvd3stLXR3LXNoYWRvdzowIDFweCAzcHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSwwIDFweCAycHggLTFweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnNoYWRvdy1sZ3stLXR3LXNoYWRvdzowIDEwcHggMTVweCAtM3B4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgNHB4IDZweCAtNHB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uc2hhZG93LW1key0tdHctc2hhZG93OjAgNHB4IDZweCAtMXB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgMnB4IDRweCAtMnB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uc2hhZG93LW5vbmV7LS10dy1zaGFkb3c6MCAwICMwMDAwO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uc2hhZG93LW5vbmVcIXstLXR3LXNoYWRvdzowIDAgIzAwMDAhaW1wb3J0YW50O2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KSFpbXBvcnRhbnR9LnNoYWRvdy1zbXstLXR3LXNoYWRvdzowIDFweCAzcHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSwwIDFweCAycHggLTFweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnNoYWRvdy14c3stLXR3LXNoYWRvdzowIDFweCAycHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDBkKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMHstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMHB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMXB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMnstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMnB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctYmFja2dyb3VuZHstLXR3LXJpbmctY29sb3I6dmFyKC0tYmFja2dyb3VuZCl9LnJpbmctZm9yZWdyb3VuZFwvMTB7LS10dy1yaW5nLWNvbG9yOnZhcigtLWZvcmVncm91bmQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsucmluZy1mb3JlZ3JvdW5kXC8xMHstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWZvcmVncm91bmQpMTAlLHRyYW5zcGFyZW50KX19LnJpbmctcHJpbWFyeVwvMzB7LS10dy1yaW5nLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsucmluZy1wcmltYXJ5XC8zMHstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXByaW1hcnkpMzAlLHRyYW5zcGFyZW50KX19Lm91dGxpbmUtaGlkZGVuey0tdHctb3V0bGluZS1zdHlsZTpub25lO291dGxpbmUtc3R5bGU6bm9uZX1AbWVkaWEgKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsub3V0bGluZS1oaWRkZW57b3V0bGluZS1vZmZzZXQ6MnB4O291dGxpbmU6MnB4IHNvbGlkICMwMDAwfX0ub3V0bGluZXtvdXRsaW5lLXN0eWxlOnZhcigtLXR3LW91dGxpbmUtc3R5bGUpO291dGxpbmUtd2lkdGg6MXB4fS5maWx0ZXJ7ZmlsdGVyOnZhcigtLXR3LWJsdXIsKXZhcigtLXR3LWJyaWdodG5lc3MsKXZhcigtLXR3LWNvbnRyYXN0LCl2YXIoLS10dy1ncmF5c2NhbGUsKXZhcigtLXR3LWh1ZS1yb3RhdGUsKXZhcigtLXR3LWludmVydCwpdmFyKC0tdHctc2F0dXJhdGUsKXZhcigtLXR3LXNlcGlhLCl2YXIoLS10dy1kcm9wLXNoYWRvdywpfS5iYWNrZHJvcC1ibHVyLXNtey0tdHctYmFja2Ryb3AtYmx1cjpibHVyKHZhcigtLWJsdXItc20pKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS10dy1iYWNrZHJvcC1ibHVyLCl2YXIoLS10dy1iYWNrZHJvcC1icmlnaHRuZXNzLCl2YXIoLS10dy1iYWNrZHJvcC1jb250cmFzdCwpdmFyKC0tdHctYmFja2Ryb3AtZ3JheXNjYWxlLCl2YXIoLS10dy1iYWNrZHJvcC1odWUtcm90YXRlLCl2YXIoLS10dy1iYWNrZHJvcC1pbnZlcnQsKXZhcigtLXR3LWJhY2tkcm9wLW9wYWNpdHksKXZhcigtLXR3LWJhY2tkcm9wLXNhdHVyYXRlLCl2YXIoLS10dy1iYWNrZHJvcC1zZXBpYSwpO2JhY2tkcm9wLWZpbHRlcjp2YXIoLS10dy1iYWNrZHJvcC1ibHVyLCl2YXIoLS10dy1iYWNrZHJvcC1icmlnaHRuZXNzLCl2YXIoLS10dy1iYWNrZHJvcC1jb250cmFzdCwpdmFyKC0tdHctYmFja2Ryb3AtZ3JheXNjYWxlLCl2YXIoLS10dy1iYWNrZHJvcC1odWUtcm90YXRlLCl2YXIoLS10dy1iYWNrZHJvcC1pbnZlcnQsKXZhcigtLXR3LWJhY2tkcm9wLW9wYWNpdHksKXZhcigtLXR3LWJhY2tkcm9wLXNhdHVyYXRlLCl2YXIoLS10dy1iYWNrZHJvcC1zZXBpYSwpfS50cmFuc2l0aW9ue3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcixib3JkZXItY29sb3Isb3V0bGluZS1jb2xvcix0ZXh0LWRlY29yYXRpb24tY29sb3IsZmlsbCxzdHJva2UsLS10dy1ncmFkaWVudC1mcm9tLC0tdHctZ3JhZGllbnQtdmlhLC0tdHctZ3JhZGllbnQtdG8sb3BhY2l0eSxib3gtc2hhZG93LHRyYW5zZm9ybSx0cmFuc2xhdGUsc2NhbGUscm90YXRlLGZpbHRlciwtd2Via2l0LWJhY2tkcm9wLWZpbHRlcixiYWNrZHJvcC1maWx0ZXIsZGlzcGxheSxjb250ZW50LXZpc2liaWxpdHksb3ZlcmxheSxwb2ludGVyLWV2ZW50czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS50cmFuc2l0aW9uLWFsbHt0cmFuc2l0aW9uLXByb3BlcnR5OmFsbDt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS50cmFuc2l0aW9uLWNvbG9yc3t0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3IsYm9yZGVyLWNvbG9yLG91dGxpbmUtY29sb3IsdGV4dC1kZWNvcmF0aW9uLWNvbG9yLGZpbGwsc3Ryb2tlLC0tdHctZ3JhZGllbnQtZnJvbSwtLXR3LWdyYWRpZW50LXZpYSwtLXR3LWdyYWRpZW50LXRvO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLXR3LWVhc2UsdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbikpO3RyYW5zaXRpb24tZHVyYXRpb246dmFyKC0tdHctZHVyYXRpb24sdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uKSl9LnRyYW5zaXRpb24tb3BhY2l0eXt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHk7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tdHctZWFzZSx2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKSk7dHJhbnNpdGlvbi1kdXJhdGlvbjp2YXIoLS10dy1kdXJhdGlvbix2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24pKX0udHJhbnNpdGlvbi1zaGFkb3d7dHJhbnNpdGlvbi1wcm9wZXJ0eTpib3gtc2hhZG93O3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLXR3LWVhc2UsdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbikpO3RyYW5zaXRpb24tZHVyYXRpb246dmFyKC0tdHctZHVyYXRpb24sdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uKSl9LnRyYW5zaXRpb24tdHJhbnNmb3Jte3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLHRyYW5zbGF0ZSxzY2FsZSxyb3RhdGU7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tdHctZWFzZSx2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKSk7dHJhbnNpdGlvbi1kdXJhdGlvbjp2YXIoLS10dy1kdXJhdGlvbix2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24pKX0uZHVyYXRpb24tMTAwey0tdHctZHVyYXRpb246LjFzO3RyYW5zaXRpb24tZHVyYXRpb246LjFzfS5kdXJhdGlvbi0xNTB7LS10dy1kdXJhdGlvbjouMTVzO3RyYW5zaXRpb24tZHVyYXRpb246LjE1c30uZHVyYXRpb24tMjAwey0tdHctZHVyYXRpb246LjJzO3RyYW5zaXRpb24tZHVyYXRpb246LjJzfS5lYXNlLWluLW91dHstLXR3LWVhc2U6dmFyKC0tZWFzZS1pbi1vdXQpO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLWVhc2UtaW4tb3V0KX0uXFt3aWxsLWNoYW5nZVw6dHJhbnNmb3JtXF17d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5vdXRsaW5lLW5vbmV7LS10dy1vdXRsaW5lLXN0eWxlOm5vbmU7b3V0bGluZS1zdHlsZTpub25lfS5zZWxlY3Qtbm9uZXstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0ucGF1c2Vke2FuaW1hdGlvbi1wbGF5LXN0YXRlOnBhdXNlZH0ucnVubmluZ3thbmltYXRpb24tcGxheS1zdGF0ZTpydW5uaW5nfS5ncm91cC1vcGVuXDpyb3RhdGUtMTgwOmlzKDp3aGVyZSguZ3JvdXApOmlzKFtvcGVuXSw6cG9wb3Zlci1vcGVuLDpvcGVuKSAqKXtyb3RhdGU6MTgwZGVnfUBtZWRpYSAoaG92ZXI6aG92ZXIpey5ncm91cC1ob3Zlclw6dHJhbnNsYXRlLXgtMFwuNTppcyg6d2hlcmUoLmdyb3VwKTpob3ZlciAqKXstLXR3LXRyYW5zbGF0ZS14OmNhbGModmFyKC0tc3BhY2luZykqLjUpO3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9Lmdyb3VwLWhvdmVyXDpiZy1tdXRlZDppcyg6d2hlcmUoLmdyb3VwKTpob3ZlciAqKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX0uZ3JvdXAtaG92ZXJcOnRleHQtcHJpbWFyeTppcyg6d2hlcmUoLmdyb3VwKTpob3ZlciAqKXtjb2xvcjp2YXIoLS1wcmltYXJ5KX0uZ3JvdXAtaG92ZXJcOnRleHQtd2hpdGU6aXMoOndoZXJlKC5ncm91cCk6aG92ZXIgKil7Y29sb3I6dmFyKC0tY29sb3Itd2hpdGUpfS5ncm91cC1ob3Zlclw6b3BhY2l0eS0xMDA6aXMoOndoZXJlKC5ncm91cCk6aG92ZXIgKil7b3BhY2l0eToxfS5ncm91cC1ob3Zlclw6c2hhZG93LW1kOmlzKDp3aGVyZSguZ3JvdXApOmhvdmVyICopey0tdHctc2hhZG93OjAgNHB4IDZweCAtMXB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgMnB4IDRweCAtMnB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX19Lmdyb3VwLWZvY3VzXC9kcm9wZG93bi1tZW51LWl0ZW1cOnRleHQtYWNjZW50LWZvcmVncm91bmQ6aXMoOndoZXJlKC5ncm91cFwvZHJvcGRvd24tbWVudS1pdGVtKTpmb2N1cyAqKXtjb2xvcjp2YXIoLS1hY2NlbnQtZm9yZWdyb3VuZCl9Lmdyb3VwLWhhcy1kYXRhLVxbc2l6ZVw9bGdcXVwvYXZhdGFyLWdyb3VwXDpzaXplLTEwOmlzKDp3aGVyZSguZ3JvdXBcL2F2YXRhci1ncm91cCk6aGFzKFtkYXRhLXNpemU9bGddKSAqKXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9Lmdyb3VwLWhhcy1kYXRhLVxbc2l6ZVw9c21cXVwvYXZhdGFyLWdyb3VwXDpzaXplLTY6aXMoOndoZXJlKC5ncm91cFwvYXZhdGFyLWdyb3VwKTpoYXMoW2RhdGEtc2l6ZT1zbV0pICope3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNik7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNil9Lmdyb3VwLWhhcy1kYXRhLVxbc2xvdFw9Y29tbWFuZC1zaG9ydGN1dFxdXC9jb21tYW5kLWl0ZW1cOmhpZGRlbjppcyg6d2hlcmUoLmdyb3VwXC9jb21tYW5kLWl0ZW0pOmhhcyhbZGF0YS1zbG90PWNvbW1hbmQtc2hvcnRjdXRdKSAqKXtkaXNwbGF5Om5vbmV9Lmdyb3VwLWhhcy1cW1w+aW5wdXRcXVwvaW5wdXQtZ3JvdXBcOnB0LTI6aXMoOndoZXJlKC5ncm91cFwvaW5wdXQtZ3JvdXApOmhhcyg+aW5wdXQpICope3BhZGRpbmctdG9wOmNhbGModmFyKC0tc3BhY2luZykqMil9Lmdyb3VwLWhhcy1cW1w+aW5wdXRcXVwvaW5wdXQtZ3JvdXBcOnBiLTI6aXMoOndoZXJlKC5ncm91cFwvaW5wdXQtZ3JvdXApOmhhcyg+aW5wdXQpICope3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMil9Lmdyb3VwLWRhdGEtXFtjaGVja2VkXD10cnVlXF1cL2NvbW1hbmQtaXRlbVw6b3BhY2l0eS0xMDA6aXMoOndoZXJlKC5ncm91cFwvY29tbWFuZC1pdGVtKVtkYXRhLWNoZWNrZWQ9dHJ1ZV0gKil7b3BhY2l0eToxfS5ncm91cC1kYXRhLVxbZGlzYWJsZWRcPXRydWVcXVw6cG9pbnRlci1ldmVudHMtbm9uZTppcyg6d2hlcmUoLmdyb3VwKVtkYXRhLWRpc2FibGVkPXRydWVdICope3BvaW50ZXItZXZlbnRzOm5vbmV9Lmdyb3VwLWRhdGEtXFtkaXNhYmxlZFw9dHJ1ZVxdXDpvcGFjaXR5LTUwOmlzKDp3aGVyZSguZ3JvdXApW2RhdGEtZGlzYWJsZWQ9dHJ1ZV0gKiksLmdyb3VwLWRhdGEtXFtkaXNhYmxlZFw9dHJ1ZVxdXC9pbnB1dC1ncm91cFw6b3BhY2l0eS01MDppcyg6d2hlcmUoLmdyb3VwXC9pbnB1dC1ncm91cClbZGF0YS1kaXNhYmxlZD10cnVlXSAqKXtvcGFjaXR5Oi41fS5ncm91cC1kYXRhLVxbc2l6ZVw9ZGVmYXVsdFxdXC9hdmF0YXJcOnNpemUtMlwuNTppcyg6d2hlcmUoLmdyb3VwXC9hdmF0YXIpW2RhdGEtc2l6ZT1kZWZhdWx0XSAqKXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjIuNSk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMi41KX0uZ3JvdXAtZGF0YS1cW3NpemVcPWxnXF1cL2F2YXRhclw6c2l6ZS0zOmlzKDp3aGVyZSguZ3JvdXBcL2F2YXRhcilbZGF0YS1zaXplPWxnXSAqKXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5ncm91cC1kYXRhLVxbc2l6ZVw9c21cXVwvYXZhdGFyXDpzaXplLTI6aXMoOndoZXJlKC5ncm91cFwvYXZhdGFyKVtkYXRhLXNpemU9c21dICope3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMik7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9Lmdyb3VwLWRhdGEtXFtzaXplXD1zbVxdXC9hdmF0YXJcOnRleHQteHM6aXMoOndoZXJlKC5ncm91cFwvYXZhdGFyKVtkYXRhLXNpemU9c21dICope2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXhzKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQteHMtLWxpbmUtaGVpZ2h0KSl9Lmdyb3VwLWRhdGEtXFtzaXplXD1zbVxdXC9jYXJkXDpwLTM6aXMoOndoZXJlKC5ncm91cFwvY2FyZClbZGF0YS1zaXplPXNtXSAqKXtwYWRkaW5nOmNhbGModmFyKC0tc3BhY2luZykqMyl9Lmdyb3VwLWRhdGEtXFtzaXplXD1zbVxdXC9jYXJkXDpweC0zOmlzKDp3aGVyZSguZ3JvdXBcL2NhcmQpW2RhdGEtc2l6ZT1zbV0gKil7cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uZ3JvdXAtZGF0YS1cW3NpemVcPXNtXF1cL2NhcmRcOnRleHQtc206aXMoOndoZXJlKC5ncm91cFwvY2FyZClbZGF0YS1zaXplPXNtXSAqKXtmb250LXNpemU6dmFyKC0tdGV4dC1zbSk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LXNtLS1saW5lLWhlaWdodCkpfS5ncm91cC1kYXRhLVxbdmFyaWFudFw9bGluZVxdXC90YWJzLWxpc3RcOmJnLXRyYW5zcGFyZW50OmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWxpbmVdICope2JhY2tncm91bmQtY29sb3I6IzAwMDB9Lmdyb3VwLWRhdGEtc2VsZWN0ZWRcL2NvbW1hbmQtaXRlbVw6dGV4dC1mb3JlZ3JvdW5kOmlzKDp3aGVyZSguZ3JvdXBcL2NvbW1hbmQtaXRlbSk6d2hlcmUoW2RhdGEtc2VsZWN0ZWQ9dHJ1ZV0pICope2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5ncm91cC1kYXRhLWhvcml6b250YWxcL3RhYnNcOmgtODppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj1ob3Jpem9udGFsXSkgKil7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOCl9Lmdyb3VwLWRhdGEtdmVydGljYWxcL3RhYnNcOmgtZml0OmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPXZlcnRpY2FsXSkgKil7aGVpZ2h0OmZpdC1jb250ZW50fS5ncm91cC1kYXRhLXZlcnRpY2FsXC90YWJzXDp3LWZ1bGw6aXMoOndoZXJlKC5ncm91cFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249dmVydGljYWxdKSAqKXt3aWR0aDoxMDAlfS5ncm91cC1kYXRhLXZlcnRpY2FsXC90YWJzXDpmbGV4LWNvbDppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pICope2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFwvdGFic1w6anVzdGlmeS1zdGFydDppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pICope2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5wZWVyLWRpc2FibGVkXDpjdXJzb3Itbm90LWFsbG93ZWQ6aXMoOndoZXJlKC5wZWVyKTpkaXNhYmxlZH4qKXtjdXJzb3I6bm90LWFsbG93ZWR9LnBlZXItZGlzYWJsZWRcOm9wYWNpdHktNTA6aXMoOndoZXJlKC5wZWVyKTpkaXNhYmxlZH4qKXtvcGFjaXR5Oi41fS5maWxlXDppbmxpbmUtZmxleDo6ZmlsZS1zZWxlY3Rvci1idXR0b257ZGlzcGxheTppbmxpbmUtZmxleH0uZmlsZVw6aC02OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0uZmlsZVw6Ym9yZGVyLTA6OmZpbGUtc2VsZWN0b3ItYnV0dG9ue2JvcmRlci1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci13aWR0aDowfS5maWxlXDpiZy10cmFuc3BhcmVudDo6ZmlsZS1zZWxlY3Rvci1idXR0b257YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZmlsZVw6dGV4dC1zbTo6ZmlsZS1zZWxlY3Rvci1idXR0b257Zm9udC1zaXplOnZhcigtLXRleHQtc20pO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC1zbS0tbGluZS1oZWlnaHQpKX0uZmlsZVw6Zm9udC1tZWRpdW06OmZpbGUtc2VsZWN0b3ItYnV0dG9uey0tdHctZm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtmb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pfS5maWxlXDp0ZXh0LWZvcmVncm91bmQ6OmZpbGUtc2VsZWN0b3ItYnV0dG9ue2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5wbGFjZWhvbGRlclw6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX0uYWZ0ZXJcOmFic29sdXRlOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7cG9zaXRpb246YWJzb2x1dGV9LmFmdGVyXDppbnNldC0wOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7aW5zZXQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uYWZ0ZXJcOnJvdW5kZWQtZnVsbDphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2JvcmRlci1yYWRpdXM6My40MDI4MmUzOHB4fS5hZnRlclw6Ym9yZGVyOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7Ym9yZGVyLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXdpZHRoOjFweH0uYWZ0ZXJcOmJvcmRlci1ib3JkZXI6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyKX0uYWZ0ZXJcOmJnLWZvcmVncm91bmQ6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWZvcmVncm91bmQpfS5hZnRlclw6b3BhY2l0eS0wOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7b3BhY2l0eTowfS5hZnRlclw6bWl4LWJsZW5kLWRhcmtlbjphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO21peC1ibGVuZC1tb2RlOmRhcmtlbn0uYWZ0ZXJcOnRyYW5zaXRpb24tb3BhY2l0eTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eTt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS5ncm91cC1kYXRhLWhvcml6b250YWxcL3RhYnNcOmFmdGVyXDppbnNldC14LTA6aXMoOndoZXJlKC5ncm91cFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249aG9yaXpvbnRhbF0pICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7aW5zZXQtaW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmdyb3VwLWRhdGEtaG9yaXpvbnRhbFwvdGFic1w6YWZ0ZXJcOmJvdHRvbS1cWy01cHhcXTppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj1ob3Jpem9udGFsXSkgKik6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtib3R0b206LTVweH0uZ3JvdXAtZGF0YS1ob3Jpem9udGFsXC90YWJzXDphZnRlclw6aC0wXC41OmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPWhvcml6b250YWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFwvdGFic1w6YWZ0ZXJcOmluc2V0LXktMDppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7aW5zZXQtYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFwvdGFic1w6YWZ0ZXJcOi1yaWdodC0xOmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPXZlcnRpY2FsXSkgKik6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKi0xKX0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFwvdGFic1w6YWZ0ZXJcOnctMFwuNTppcyg6d2hlcmUoLmdyb3VwXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9LmZvY3VzLXdpdGhpblw6Ym9yZGVyLXJpbmc6Zm9jdXMtd2l0aGlue2JvcmRlci1jb2xvcjp2YXIoLS1yaW5nKX0uZm9jdXMtd2l0aGluXDpyaW5nLTM6Zm9jdXMtd2l0aGluey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uZm9jdXMtd2l0aGluXDpyaW5nLXJpbmdcLzUwOmZvY3VzLXdpdGhpbnstLXR3LXJpbmctY29sb3I6dmFyKC0tcmluZyl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5mb2N1cy13aXRoaW5cOnJpbmctcmluZ1wvNTA6Zm9jdXMtd2l0aGluey0tdHctcmluZy1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcmluZyk1MCUsdHJhbnNwYXJlbnQpfX1AbWVkaWEgKGhvdmVyOmhvdmVyKXsuaG92ZXJcOmJvcmRlci1tdXRlZC1mb3JlZ3JvdW5kXC8zMDpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3Zlclw6Ym9yZGVyLW11dGVkLWZvcmVncm91bmRcLzMwOmhvdmVye2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCkzMCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcOmJvcmRlci1wcmltYXJ5XC80MDpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tcHJpbWFyeSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3Zlclw6Ym9yZGVyLXByaW1hcnlcLzQwOmhvdmVye2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeSk0MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcOmJvcmRlci1yaW5nOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1yaW5nKX0uaG92ZXJcOmJnLWFjY2VudDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWFjY2VudCl9LmhvdmVyXDpiZy1kZXN0cnVjdGl2ZVwvMjA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3Zlclw6YmctZGVzdHJ1Y3RpdmVcLzIwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5ob3Zlclw6YmctbXV0ZWQ6aG92ZXIsLmhvdmVyXDpiZy1tdXRlZFwvNDA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3Zlclw6YmctbXV0ZWRcLzQwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkKTQwJSx0cmFuc3BhcmVudCl9fS5ob3Zlclw6YmctbXV0ZWRcLzUwOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcOmJnLW11dGVkXC81MDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCk1MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcOmJnLW11dGVkXC84MDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmhvdmVyXDpiZy1tdXRlZFwvODA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tbXV0ZWQpODAlLHRyYW5zcGFyZW50KX19LmhvdmVyXDpiZy1wcmltYXJ5XC8yMDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcOmJnLXByaW1hcnlcLzIwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXByaW1hcnkpMjAlLHRyYW5zcGFyZW50KX19LmhvdmVyXDpiZy1zZWNvbmRhcnlcLzgwOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tc2Vjb25kYXJ5KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmhvdmVyXDpiZy1zZWNvbmRhcnlcLzgwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXNlY29uZGFyeSk4MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcOnRleHQtZm9yZWdyb3VuZDpob3Zlcntjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX0uaG92ZXJcOnRleHQtbXV0ZWQtZm9yZWdyb3VuZDpob3Zlcntjb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX0uaG92ZXJcOnRleHQtcHJpbWFyeTpob3Zlcntjb2xvcjp2YXIoLS1wcmltYXJ5KX0uaG92ZXJcOnVuZGVybGluZTpob3Zlcnt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9LmhvdmVyXDpzaGFkb3ctbGc6aG92ZXJ7LS10dy1zaGFkb3c6MCAxMHB4IDE1cHggLTNweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSwwIDRweCA2cHggLTRweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LmhvdmVyXDpzaGFkb3ctbWQ6aG92ZXJ7LS10dy1zaGFkb3c6MCA0cHggNnB4IC0xcHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksMCAycHggNHB4IC0ycHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSk7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfX0uZm9jdXNcOmJnLWFjY2VudDpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWFjY2VudCl9LmZvY3VzXDp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kOmZvY3Vze2NvbG9yOnZhcigtLWFjY2VudC1mb3JlZ3JvdW5kKX0uZm9jdXNcOm91dGxpbmUtbm9uZTpmb2N1c3stLXR3LW91dGxpbmUtc3R5bGU6bm9uZTtvdXRsaW5lLXN0eWxlOm5vbmV9OmlzKC5mb2N1c1w6XCpcKlw6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZDpmb2N1cyAqKSw6aXMoLm5vdC1kYXRhLVxbdmFyaWFudFw9ZGVzdHJ1Y3RpdmVcXVw6Zm9jdXNcOlwqXCpcOnRleHQtYWNjZW50LWZvcmVncm91bmQ6bm90KFtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdKTpmb2N1cyAqKXtjb2xvcjp2YXIoLS1hY2NlbnQtZm9yZWdyb3VuZCl9LmZvY3VzLXZpc2libGVcOmJvcmRlci1kZXN0cnVjdGl2ZVwvNDA6Zm9jdXMtdmlzaWJsZXtib3JkZXItY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZm9jdXMtdmlzaWJsZVw6Ym9yZGVyLWRlc3RydWN0aXZlXC80MDpmb2N1cy12aXNpYmxle2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpNDAlLHRyYW5zcGFyZW50KX19LmZvY3VzLXZpc2libGVcOmJvcmRlci1yaW5nOmZvY3VzLXZpc2libGV7Ym9yZGVyLWNvbG9yOnZhcigtLXJpbmcpfS5mb2N1cy12aXNpYmxlXDpyaW5nLTA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMHB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LmZvY3VzLXZpc2libGVcOnJpbmctMjpmb2N1cy12aXNpYmxley0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygycHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uZm9jdXMtdmlzaWJsZVw6cmluZy0zOmZvY3VzLXZpc2libGUsLmZvY3VzLXZpc2libGVcOnJpbmctXFszcHhcXTpmb2N1cy12aXNpYmxley0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uZm9jdXMtdmlzaWJsZVw6cmluZy1kZXN0cnVjdGl2ZVwvMjA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZm9jdXMtdmlzaWJsZVw6cmluZy1kZXN0cnVjdGl2ZVwvMjA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5mb2N1cy12aXNpYmxlXDpyaW5nLXJpbmdcLzUwOmZvY3VzLXZpc2libGV7LS10dy1yaW5nLWNvbG9yOnZhcigtLXJpbmcpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZm9jdXMtdmlzaWJsZVw6cmluZy1yaW5nXC81MDpmb2N1cy12aXNpYmxley0tdHctcmluZy1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcmluZyk1MCUsdHJhbnNwYXJlbnQpfX0uZm9jdXMtdmlzaWJsZVw6b3V0bGluZS0xOmZvY3VzLXZpc2libGV7b3V0bGluZS1zdHlsZTp2YXIoLS10dy1vdXRsaW5lLXN0eWxlKTtvdXRsaW5lLXdpZHRoOjFweH0uZm9jdXMtdmlzaWJsZVw6b3V0bGluZS0yOmZvY3VzLXZpc2libGV7b3V0bGluZS1zdHlsZTp2YXIoLS10dy1vdXRsaW5lLXN0eWxlKTtvdXRsaW5lLXdpZHRoOjJweH0uZm9jdXMtdmlzaWJsZVw6b3V0bGluZS1vZmZzZXQtMjpmb2N1cy12aXNpYmxle291dGxpbmUtb2Zmc2V0OjJweH0uZm9jdXMtdmlzaWJsZVw6b3V0bGluZS1wcmltYXJ5OmZvY3VzLXZpc2libGV7b3V0bGluZS1jb2xvcjp2YXIoLS1wcmltYXJ5KX0uZm9jdXMtdmlzaWJsZVw6b3V0bGluZS1yaW5nOmZvY3VzLXZpc2libGV7b3V0bGluZS1jb2xvcjp2YXIoLS1yaW5nKX0uYWN0aXZlXDp0cmFuc2xhdGUteS1weDphY3RpdmV7LS10dy10cmFuc2xhdGUteToxcHg7dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0uZGlzYWJsZWRcOnBvaW50ZXItZXZlbnRzLW5vbmU6ZGlzYWJsZWR7cG9pbnRlci1ldmVudHM6bm9uZX0uZGlzYWJsZWRcOmN1cnNvci1ub3QtYWxsb3dlZDpkaXNhYmxlZHtjdXJzb3I6bm90LWFsbG93ZWR9LmRpc2FibGVkXDpiZy1pbnB1dFwvNTA6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kaXNhYmxlZFw6YmctaW5wdXRcLzUwOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTUwJSx0cmFuc3BhcmVudCl9fS5kaXNhYmxlZFw6YmctdHJhbnNwYXJlbnQ6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZGlzYWJsZWRcOm9wYWNpdHktNTA6ZGlzYWJsZWR7b3BhY2l0eTouNX06d2hlcmUoW2RhdGEtc2xvdD1idXR0b24tZ3JvdXBdKSAuaW4tZGF0YS1cW3Nsb3RcPWJ1dHRvbi1ncm91cFxdXDpyb3VuZGVkLWxne2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzKX06d2hlcmUoW2RhdGEtc2xvdD1jb21ib2JveC1jb250ZW50XSkgLmluLWRhdGEtXFtzbG90XD1jb21ib2JveC1jb250ZW50XF1cOmZvY3VzLXdpdGhpblw6Ym9yZGVyLWluaGVyaXQ6Zm9jdXMtd2l0aGlue2JvcmRlci1jb2xvcjppbmhlcml0fTp3aGVyZShbZGF0YS1zbG90PWNvbWJvYm94LWNvbnRlbnRdKSAuaW4tZGF0YS1cW3Nsb3RcPWNvbWJvYm94LWNvbnRlbnRcXVw6Zm9jdXMtd2l0aGluXDpyaW5nLTA6Zm9jdXMtd2l0aGluey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygwcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX06d2hlcmUoW2RhdGEtc2xvdD1kaWFsb2ctY29udGVudF0pIC5pbi1kYXRhLVxbc2xvdFw9ZGlhbG9nLWNvbnRlbnRcXVw6cm91bmRlZC1sZ1whe2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzKSFpbXBvcnRhbnR9Lmhhcy1kaXNhYmxlZFw6YmctaW5wdXRcLzUwOmhhcyg6ZGlzYWJsZWQpe2JhY2tncm91bmQtY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaGFzLWRpc2FibGVkXDpiZy1pbnB1dFwvNTA6aGFzKDpkaXNhYmxlZCl7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0taW5wdXQpNTAlLHRyYW5zcGFyZW50KX19Lmhhcy1kaXNhYmxlZFw6b3BhY2l0eS01MDpoYXMoOmRpc2FibGVkKXtvcGFjaXR5Oi41fS5oYXMtZGF0YS1cW2ljb25cPWlubGluZS1lbmRcXVw6cHItMVwuNTpoYXMoW2RhdGEtaWNvbj1pbmxpbmUtZW5kXSl7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9Lmhhcy1kYXRhLVxbaWNvblw9aW5saW5lLWVuZFxdXDpwci0yOmhhcyhbZGF0YS1pY29uPWlubGluZS1lbmRdKXtwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9Lmhhcy1kYXRhLVxbaWNvblw9aW5saW5lLWVuZFxdXDpwci0zOmhhcyhbZGF0YS1pY29uPWlubGluZS1lbmRdKXtwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMyl9Lmhhcy1kYXRhLVxbaWNvblw9aW5saW5lLXN0YXJ0XF1cOnBsLTFcLjU6aGFzKFtkYXRhLWljb249aW5saW5lLXN0YXJ0XSl7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uaGFzLWRhdGEtXFtpY29uXD1pbmxpbmUtc3RhcnRcXVw6cGwtMjpoYXMoW2RhdGEtaWNvbj1pbmxpbmUtc3RhcnRdKXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uaGFzLWRhdGEtXFtpY29uXD1pbmxpbmUtc3RhcnRcXVw6cGwtMzpoYXMoW2RhdGEtaWNvbj1pbmxpbmUtc3RhcnRdKXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uaGFzLWRhdGEtXFtzbG90XD1jYXJkLWFjdGlvblxdXDpncmlkLWNvbHMtXFsxZnJfYXV0b1xdOmhhcyhbZGF0YS1zbG90PWNhcmQtYWN0aW9uXSl7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciBhdXRvfS5oYXMtZGF0YS1cW3Nsb3RcPWNhcmQtZGVzY3JpcHRpb25cXVw6Z3JpZC1yb3dzLVxbYXV0b19hdXRvXF06aGFzKFtkYXRhLXNsb3Q9Y2FyZC1kZXNjcmlwdGlvbl0pe2dyaWQtdGVtcGxhdGUtcm93czphdXRvIGF1dG99Lmhhcy1kYXRhLVxbc2xvdFw9Y2FyZC1mb290ZXJcXVw6cGItMDpoYXMoW2RhdGEtc2xvdD1jYXJkLWZvb3Rlcl0pe3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmhhcy1cW1xbZGF0YS1zbG90XD1pbnB1dC1ncm91cC1jb250cm9sXF1cOmZvY3VzLXZpc2libGVcXVw6Ym9yZGVyLXJpbmc6aGFzKFtkYXRhLXNsb3Q9aW5wdXQtZ3JvdXAtY29udHJvbF06Zm9jdXMtdmlzaWJsZSl7Ym9yZGVyLWNvbG9yOnZhcigtLXJpbmcpfS5oYXMtXFtcW2RhdGEtc2xvdFw9aW5wdXQtZ3JvdXAtY29udHJvbFxdXDpmb2N1cy12aXNpYmxlXF1cOnJpbmctMzpoYXMoW2RhdGEtc2xvdD1pbnB1dC1ncm91cC1jb250cm9sXTpmb2N1cy12aXNpYmxlKXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoM3B4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9Lmhhcy1cW1xbZGF0YS1zbG90XD1pbnB1dC1ncm91cC1jb250cm9sXF1cOmZvY3VzLXZpc2libGVcXVw6cmluZy1yaW5nXC81MDpoYXMoW2RhdGEtc2xvdD1pbnB1dC1ncm91cC1jb250cm9sXTpmb2N1cy12aXNpYmxlKXstLXR3LXJpbmctY29sb3I6dmFyKC0tcmluZyl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5oYXMtXFtcW2RhdGEtc2xvdFw9aW5wdXQtZ3JvdXAtY29udHJvbFxdXDpmb2N1cy12aXNpYmxlXF1cOnJpbmctcmluZ1wvNTA6aGFzKFtkYXRhLXNsb3Q9aW5wdXQtZ3JvdXAtY29udHJvbF06Zm9jdXMtdmlzaWJsZSl7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1yaW5nKTUwJSx0cmFuc3BhcmVudCl9fS5oYXMtXFtcW2RhdGEtc2xvdFxdXFthcmlhLWludmFsaWRcPXRydWVcXVxdXDpib3JkZXItZGVzdHJ1Y3RpdmU6aGFzKFtkYXRhLXNsb3RdW2FyaWEtaW52YWxpZD10cnVlXSl7Ym9yZGVyLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX0uaGFzLVxbXFtkYXRhLXNsb3RcXVxbYXJpYS1pbnZhbGlkXD10cnVlXF1cXVw6cmluZy0zOmhhcyhbZGF0YS1zbG90XVthcmlhLWludmFsaWQ9dHJ1ZV0pey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uaGFzLVxbXFtkYXRhLXNsb3RcXVxbYXJpYS1pbnZhbGlkXD10cnVlXF1cXVw6cmluZy1kZXN0cnVjdGl2ZVwvMjA6aGFzKFtkYXRhLXNsb3RdW2FyaWEtaW52YWxpZD10cnVlXSl7LS10dy1yaW5nLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7Lmhhcy1cW1xbZGF0YS1zbG90XF1cW2FyaWEtaW52YWxpZFw9dHJ1ZVxdXF1cOnJpbmctZGVzdHJ1Y3RpdmVcLzIwOmhhcyhbZGF0YS1zbG90XVthcmlhLWludmFsaWQ9dHJ1ZV0pey0tdHctcmluZy1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMjAlLHRyYW5zcGFyZW50KX19Lmhhcy1cW1w+XFtkYXRhLWFsaWduXD1ibG9jay1lbmRcXVxdXDpoLWF1dG86aGFzKD5bZGF0YS1hbGlnbj1ibG9jay1lbmRdKXtoZWlnaHQ6YXV0b30uaGFzLVxbXD5cW2RhdGEtYWxpZ25cPWJsb2NrLWVuZFxdXF1cOmZsZXgtY29sOmhhcyg+W2RhdGEtYWxpZ249YmxvY2stZW5kXSl7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5oYXMtXFtcPlxbZGF0YS1hbGlnblw9YmxvY2stc3RhcnRcXVxdXDpoLWF1dG86aGFzKD5bZGF0YS1hbGlnbj1ibG9jay1zdGFydF0pe2hlaWdodDphdXRvfS5oYXMtXFtcPlxbZGF0YS1hbGlnblw9YmxvY2stc3RhcnRcXVxdXDpmbGV4LWNvbDpoYXMoPltkYXRhLWFsaWduPWJsb2NrLXN0YXJ0XSl7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5oYXMtXFtcPmJ1dHRvblxdXDptci1cWy0wXC4zcmVtXF06aGFzKD5idXR0b24pe21hcmdpbi1yaWdodDotLjNyZW19Lmhhcy1cW1w+YnV0dG9uXF1cOm1sLVxbLTBcLjNyZW1cXTpoYXMoPmJ1dHRvbil7bWFyZ2luLWxlZnQ6LS4zcmVtfS5oYXMtXFtcPmltZ1w6Zmlyc3QtY2hpbGRcXVw6cHQtMDpoYXMoPmltZzpmaXJzdC1jaGlsZCl7cGFkZGluZy10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uaGFzLVxbXD5rYmRcXVw6bXItXFstMFwuMTVyZW1cXTpoYXMoPmtiZCl7bWFyZ2luLXJpZ2h0Oi0uMTVyZW19Lmhhcy1cW1w+a2JkXF1cOm1sLVxbLTBcLjE1cmVtXF06aGFzKD5rYmQpe21hcmdpbi1sZWZ0Oi0uMTVyZW19Lmhhcy1cW1w+c3ZnXF1cOnAtMDpoYXMoPnN2Zyl7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5oYXMtXFtcPnRleHRhcmVhXF1cOmgtYXV0bzpoYXMoPnRleHRhcmVhKXtoZWlnaHQ6YXV0b30uYXJpYS1kaXNhYmxlZFw6cG9pbnRlci1ldmVudHMtbm9uZVthcmlhLWRpc2FibGVkPXRydWVde3BvaW50ZXItZXZlbnRzOm5vbmV9LmFyaWEtZGlzYWJsZWRcOm9wYWNpdHktNTBbYXJpYS1kaXNhYmxlZD10cnVlXXtvcGFjaXR5Oi41fS5hcmlhLWV4cGFuZGVkXDpiZy1tdXRlZFthcmlhLWV4cGFuZGVkPXRydWVde2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5hcmlhLWV4cGFuZGVkXDpiZy1zZWNvbmRhcnlbYXJpYS1leHBhbmRlZD10cnVlXXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXNlY29uZGFyeSl9LmFyaWEtZXhwYW5kZWRcOnRleHQtZm9yZWdyb3VuZFthcmlhLWV4cGFuZGVkPXRydWVde2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5hcmlhLWV4cGFuZGVkXDp0ZXh0LXNlY29uZGFyeS1mb3JlZ3JvdW5kW2FyaWEtZXhwYW5kZWQ9dHJ1ZV17Y29sb3I6dmFyKC0tc2Vjb25kYXJ5LWZvcmVncm91bmQpfS5hcmlhLWludmFsaWRcOmJvcmRlci1kZXN0cnVjdGl2ZVthcmlhLWludmFsaWQ9dHJ1ZV17Ym9yZGVyLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX0uYXJpYS1pbnZhbGlkXDpyaW5nLTBbYXJpYS1pbnZhbGlkPXRydWVdey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygwcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uYXJpYS1pbnZhbGlkXDpyaW5nLTNbYXJpYS1pbnZhbGlkPXRydWVdey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uYXJpYS1pbnZhbGlkXDpyaW5nLWRlc3RydWN0aXZlXC8yMFthcmlhLWludmFsaWQ9dHJ1ZV17LS10dy1yaW5nLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmFyaWEtaW52YWxpZFw6cmluZy1kZXN0cnVjdGl2ZVwvMjBbYXJpYS1pbnZhbGlkPXRydWVdey0tdHctcmluZy1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMjAlLHRyYW5zcGFyZW50KX19LmRhdGEtZW5kaW5nLXN0eWxlXDpvcGFjaXR5LTBbZGF0YS1lbmRpbmctc3R5bGVde29wYWNpdHk6MH0uZGF0YS1pbnNldFw6cGwtN1tkYXRhLWluc2V0XXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo3KX0uZGF0YS1wb3B1cC1vcGVuXDpiZy1hY2NlbnRbZGF0YS1wb3B1cC1vcGVuXXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWFjY2VudCl9LmRhdGEtcG9wdXAtb3Blblw6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZFtkYXRhLXBvcHVwLW9wZW5de2NvbG9yOnZhcigtLWFjY2VudC1mb3JlZ3JvdW5kKX0uZGF0YS1zdGFydGluZy1zdHlsZVw6b3BhY2l0eS0wW2RhdGEtc3RhcnRpbmctc3R5bGVde29wYWNpdHk6MH0uZGF0YS1cW2Rpc2FibGVkXD10cnVlXF1cOnBvaW50ZXItZXZlbnRzLW5vbmVbZGF0YS1kaXNhYmxlZD10cnVlXXtwb2ludGVyLWV2ZW50czpub25lfS5kYXRhLVxbZGlzYWJsZWRcPXRydWVcXVw6b3BhY2l0eS01MFtkYXRhLWRpc2FibGVkPXRydWVde29wYWNpdHk6LjV9LmRhdGEtXFtzaWRlXD1ib3R0b21cXVw6aW5zZXQteC0wW2RhdGEtc2lkZT1ib3R0b21de2luc2V0LWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxbc2lkZVw9Ym90dG9tXF1cOmJvdHRvbS0wW2RhdGEtc2lkZT1ib3R0b21de2JvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxbc2lkZVw9Ym90dG9tXF1cOmgtYXV0b1tkYXRhLXNpZGU9Ym90dG9tXXtoZWlnaHQ6YXV0b30uZGF0YS1cW3NpZGVcPWJvdHRvbVxdXDpib3JkZXItdFtkYXRhLXNpZGU9Ym90dG9tXXtib3JkZXItdG9wLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXRvcC13aWR0aDoxcHh9LmRhdGEtXFtzaWRlXD1ib3R0b21cXVw6c2xpZGUtaW4tZnJvbS10b3AtMltkYXRhLXNpZGU9Ym90dG9tXXstLXR3LWVudGVyLXRyYW5zbGF0ZS15OmNhbGMoMip2YXIoLS1zcGFjaW5nKSotMSl9LmRhdGEtXFtzaWRlXD1ib3R0b21cXVw6ZGF0YS1lbmRpbmctc3R5bGVcOnRyYW5zbGF0ZS15LVxbMlwuNXJlbVxdW2RhdGEtc2lkZT1ib3R0b21dW2RhdGEtZW5kaW5nLXN0eWxlXSwuZGF0YS1cW3NpZGVcPWJvdHRvbVxdXDpkYXRhLXN0YXJ0aW5nLXN0eWxlXDp0cmFuc2xhdGUteS1cWzJcLjVyZW1cXVtkYXRhLXNpZGU9Ym90dG9tXVtkYXRhLXN0YXJ0aW5nLXN0eWxlXXstLXR3LXRyYW5zbGF0ZS15OjIuNXJlbTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS5kYXRhLVxbc2lkZVw9aW5saW5lLWVuZFxdXDpzbGlkZS1pbi1mcm9tLWxlZnQtMltkYXRhLXNpZGU9aW5saW5lLWVuZF17LS10dy1lbnRlci10cmFuc2xhdGUteDpjYWxjKDIqdmFyKC0tc3BhY2luZykqLTEpfS5kYXRhLVxbc2lkZVw9aW5saW5lLXN0YXJ0XF1cOnNsaWRlLWluLWZyb20tcmlnaHQtMltkYXRhLXNpZGU9aW5saW5lLXN0YXJ0XXstLXR3LWVudGVyLXRyYW5zbGF0ZS14OmNhbGMoMip2YXIoLS1zcGFjaW5nKSl9LmRhdGEtXFtzaWRlXD1sZWZ0XF1cOmluc2V0LXktMFtkYXRhLXNpZGU9bGVmdF17aW5zZXQtYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cW3NpZGVcPWxlZnRcXVw6bGVmdC0wW2RhdGEtc2lkZT1sZWZ0XXtsZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMCl9LmRhdGEtXFtzaWRlXD1sZWZ0XF1cOmgtZnVsbFtkYXRhLXNpZGU9bGVmdF17aGVpZ2h0OjEwMCV9LmRhdGEtXFtzaWRlXD1sZWZ0XF1cOnctM1wvNFtkYXRhLXNpZGU9bGVmdF17d2lkdGg6NzUlfS5kYXRhLVxbc2lkZVw9bGVmdFxdXDpib3JkZXItcltkYXRhLXNpZGU9bGVmdF17Ym9yZGVyLXJpZ2h0LXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXJpZ2h0LXdpZHRoOjFweH0uZGF0YS1cW3NpZGVcPWxlZnRcXVw6c2xpZGUtaW4tZnJvbS1yaWdodC0yW2RhdGEtc2lkZT1sZWZ0XXstLXR3LWVudGVyLXRyYW5zbGF0ZS14OmNhbGMoMip2YXIoLS1zcGFjaW5nKSl9LmRhdGEtXFtzaWRlXD1sZWZ0XF1cOmRhdGEtZW5kaW5nLXN0eWxlXDp0cmFuc2xhdGUteC1cWy0yXC41cmVtXF1bZGF0YS1zaWRlPWxlZnRdW2RhdGEtZW5kaW5nLXN0eWxlXSwuZGF0YS1cW3NpZGVcPWxlZnRcXVw6ZGF0YS1zdGFydGluZy1zdHlsZVw6dHJhbnNsYXRlLXgtXFstMlwuNXJlbVxdW2RhdGEtc2lkZT1sZWZ0XVtkYXRhLXN0YXJ0aW5nLXN0eWxlXXstLXR3LXRyYW5zbGF0ZS14Oi0yLjVyZW07dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0uZGF0YS1cW3NpZGVcPXJpZ2h0XF1cOmluc2V0LXktMFtkYXRhLXNpZGU9cmlnaHRde2luc2V0LWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMCl9LmRhdGEtXFtzaWRlXD1yaWdodFxdXDpyaWdodC0wW2RhdGEtc2lkZT1yaWdodF17cmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cW3NpZGVcPXJpZ2h0XF1cOmgtZnVsbFtkYXRhLXNpZGU9cmlnaHRde2hlaWdodDoxMDAlfS5kYXRhLVxbc2lkZVw9cmlnaHRcXVw6dy0zXC80W2RhdGEtc2lkZT1yaWdodF17d2lkdGg6NzUlfS5kYXRhLVxbc2lkZVw9cmlnaHRcXVw6Ym9yZGVyLWxbZGF0YS1zaWRlPXJpZ2h0XXtib3JkZXItbGVmdC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1sZWZ0LXdpZHRoOjFweH0uZGF0YS1cW3NpZGVcPXJpZ2h0XF1cOnNsaWRlLWluLWZyb20tbGVmdC0yW2RhdGEtc2lkZT1yaWdodF17LS10dy1lbnRlci10cmFuc2xhdGUteDpjYWxjKDIqdmFyKC0tc3BhY2luZykqLTEpfS5kYXRhLVxbc2lkZVw9cmlnaHRcXVw6ZGF0YS1lbmRpbmctc3R5bGVcOnRyYW5zbGF0ZS14LVxbMlwuNXJlbVxdW2RhdGEtc2lkZT1yaWdodF1bZGF0YS1lbmRpbmctc3R5bGVdLC5kYXRhLVxbc2lkZVw9cmlnaHRcXVw6ZGF0YS1zdGFydGluZy1zdHlsZVw6dHJhbnNsYXRlLXgtXFsyXC41cmVtXF1bZGF0YS1zaWRlPXJpZ2h0XVtkYXRhLXN0YXJ0aW5nLXN0eWxlXXstLXR3LXRyYW5zbGF0ZS14OjIuNXJlbTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS5kYXRhLVxbc2lkZVw9dG9wXF1cOmluc2V0LXgtMFtkYXRhLXNpZGU9dG9wXXtpbnNldC1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cW3NpZGVcPXRvcFxdXDp0b3AtMFtkYXRhLXNpZGU9dG9wXXt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cW3NpZGVcPXRvcFxdXDpoLWF1dG9bZGF0YS1zaWRlPXRvcF17aGVpZ2h0OmF1dG99LmRhdGEtXFtzaWRlXD10b3BcXVw6Ym9yZGVyLWJbZGF0YS1zaWRlPXRvcF17Ym9yZGVyLWJvdHRvbS1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1ib3R0b20td2lkdGg6MXB4fS5kYXRhLVxbc2lkZVw9dG9wXF1cOnNsaWRlLWluLWZyb20tYm90dG9tLTJbZGF0YS1zaWRlPXRvcF17LS10dy1lbnRlci10cmFuc2xhdGUteTpjYWxjKDIqdmFyKC0tc3BhY2luZykpfS5kYXRhLVxbc2lkZVw9dG9wXF1cOmRhdGEtZW5kaW5nLXN0eWxlXDp0cmFuc2xhdGUteS1cWy0yXC41cmVtXF1bZGF0YS1zaWRlPXRvcF1bZGF0YS1lbmRpbmctc3R5bGVdLC5kYXRhLVxbc2lkZVw9dG9wXF1cOmRhdGEtc3RhcnRpbmctc3R5bGVcOnRyYW5zbGF0ZS15LVxbLTJcLjVyZW1cXVtkYXRhLXNpZGU9dG9wXVtkYXRhLXN0YXJ0aW5nLXN0eWxlXXstLXR3LXRyYW5zbGF0ZS15Oi0yLjVyZW07dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0uZGF0YS1cW3NpemVcPWxnXF1cOnNpemUtMTBbZGF0YS1zaXplPWxnXXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LmRhdGEtXFtzaXplXD1zbVxdXDpzaXplLTZbZGF0YS1zaXplPXNtXXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5kYXRhLVxbc2l6ZVw9c21cXVw6Z2FwLTNbZGF0YS1zaXplPXNtXXtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uZGF0YS1cW3NpemVcPXNtXF1cOnB5LTNbZGF0YS1zaXplPXNtXXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMyl9LmRhdGEtXFtzaXplXD1zbVxdXDpoYXMtZGF0YS1cW3Nsb3RcPWNhcmQtZm9vdGVyXF1cOnBiLTBbZGF0YS1zaXplPXNtXTpoYXMoW2RhdGEtc2xvdD1jYXJkLWZvb3Rlcl0pe3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMCl9OmlzKC5cKlw6ZGF0YS1cW3Nsb3RcPWF2YXRhclxdXDpyaW5nLTI+KilbZGF0YS1zbG90PWF2YXRhcl17LS10dy1yaW5nLXNoYWRvdzp2YXIoLS10dy1yaW5nLWluc2V0LCkwIDAgMCBjYWxjKDJweCArIHZhcigtLXR3LXJpbmctb2Zmc2V0LXdpZHRoKSl2YXIoLS10dy1yaW5nLWNvbG9yLGN1cnJlbnRjb2xvcik7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfTppcyguXCpcOmRhdGEtXFtzbG90XD1hdmF0YXJcXVw6cmluZy1iYWNrZ3JvdW5kPiopW2RhdGEtc2xvdD1hdmF0YXJdey0tdHctcmluZy1jb2xvcjp2YXIoLS1iYWNrZ3JvdW5kKX06aXMoLlwqXDpkYXRhLVxbc2xvdFw9aW5wdXQtZ3JvdXAtYWRkb25cXVw6cGwtMlwhPiopW2RhdGEtc2xvdD1pbnB1dC1ncm91cC1hZGRvbl17cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMikhaW1wb3J0YW50fS5kYXRhLVxbc3RhdGVcPXNlbGVjdGVkXF1cOmJnLW11dGVkW2RhdGEtc3RhdGU9c2VsZWN0ZWRde2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5kYXRhLVxbdmFyaWFudFw9ZGVzdHJ1Y3RpdmVcXVw6dGV4dC1kZXN0cnVjdGl2ZVtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVde2NvbG9yOnZhcigtLWRlc3RydWN0aXZlKX0uZGF0YS1cW3ZhcmlhbnRcPWRlc3RydWN0aXZlXF1cOmZvY3VzXDpiZy1kZXN0cnVjdGl2ZVwvMTBbZGF0YS12YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhdGEtXFt2YXJpYW50XD1kZXN0cnVjdGl2ZVxdXDpmb2N1c1w6YmctZGVzdHJ1Y3RpdmVcLzEwW2RhdGEtdmFyaWFudD1kZXN0cnVjdGl2ZV06Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMTAlLHRyYW5zcGFyZW50KX19LmRhdGEtXFt2YXJpYW50XD1kZXN0cnVjdGl2ZVxdXDpmb2N1c1w6dGV4dC1kZXN0cnVjdGl2ZVtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdOmZvY3Vze2NvbG9yOnZhcigtLWRlc3RydWN0aXZlKX0uZGF0YS1cW3ZhcmlhbnRcPWxpbmVcXVw6cm91bmRlZC1ub25lW2RhdGEtdmFyaWFudD1saW5lXXtib3JkZXItcmFkaXVzOjB9QHN1cHBvcnRzICgoLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0tdHcpKSBvciAoYmFja2Ryb3AtZmlsdGVyOnZhcigtLXR3KSkpey5zdXBwb3J0cy1iYWNrZHJvcC1maWx0ZXJcOmJhY2tkcm9wLWJsdXIteHN7LS10dy1iYWNrZHJvcC1ibHVyOmJsdXIodmFyKC0tYmx1ci14cykpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXR3LWJhY2tkcm9wLWJsdXIsKXZhcigtLXR3LWJhY2tkcm9wLWJyaWdodG5lc3MsKXZhcigtLXR3LWJhY2tkcm9wLWNvbnRyYXN0LCl2YXIoLS10dy1iYWNrZHJvcC1ncmF5c2NhbGUsKXZhcigtLXR3LWJhY2tkcm9wLWh1ZS1yb3RhdGUsKXZhcigtLXR3LWJhY2tkcm9wLWludmVydCwpdmFyKC0tdHctYmFja2Ryb3Atb3BhY2l0eSwpdmFyKC0tdHctYmFja2Ryb3Atc2F0dXJhdGUsKXZhcigtLXR3LWJhY2tkcm9wLXNlcGlhLCk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXR3LWJhY2tkcm9wLWJsdXIsKXZhcigtLXR3LWJhY2tkcm9wLWJyaWdodG5lc3MsKXZhcigtLXR3LWJhY2tkcm9wLWNvbnRyYXN0LCl2YXIoLS10dy1iYWNrZHJvcC1ncmF5c2NhbGUsKXZhcigtLXR3LWJhY2tkcm9wLWh1ZS1yb3RhdGUsKXZhcigtLXR3LWJhY2tkcm9wLWludmVydCwpdmFyKC0tdHctYmFja2Ryb3Atb3BhY2l0eSwpdmFyKC0tdHctYmFja2Ryb3Atc2F0dXJhdGUsKXZhcigtLXR3LWJhY2tkcm9wLXNlcGlhLCl9fUBtZWRpYSAobWluLXdpZHRoOjQwcmVtKXsuc21cOmJsb2Nre2Rpc3BsYXk6YmxvY2t9LnNtXDpoaWRkZW57ZGlzcGxheTpub25lfS5zbVw6aW5saW5le2Rpc3BsYXk6aW5saW5lfS5zbVw6aW5saW5lLWZsZXh7ZGlzcGxheTppbmxpbmUtZmxleH0uc21cOmgtMjR7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMjQpfS5zbVw6dy00MHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQwKX0uc21cOnctYXV0b3t3aWR0aDphdXRvfS5zbVw6bWF4LXctc217bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci1zbSl9LnNtXDpmbGV4LW5vbmV7ZmxleDpub25lfS5zbVw6Z3JpZC1jb2xzLTJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgyLG1pbm1heCgwLDFmcikpfS5zbVw6Z3JpZC1jb2xzLTN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgzLG1pbm1heCgwLDFmcikpfS5zbVw6ZmxleC1yb3d7ZmxleC1kaXJlY3Rpb246cm93fS5zbVw6aXRlbXMtY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlcn0uc21cOmp1c3RpZnktYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uc21cOmp1c3RpZnktZW5ke2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uc21cOnAtNXtwYWRkaW5nOmNhbGModmFyKC0tc3BhY2luZykqNSl9LnNtXDpwLTZ7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5zbVw6cC04e3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uc21cOnRleHQtcmlnaHR7dGV4dC1hbGlnbjpyaWdodH0uc21cOnRleHQtM3hse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LTN4bCk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LTN4bC0tbGluZS1oZWlnaHQpKX0uc21cOnRleHQtYmFzZXtmb250LXNpemU6dmFyKC0tdGV4dC1iYXNlKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtYmFzZS0tbGluZS1oZWlnaHQpKX0uc21cOnRleHQteGx7Zm9udC1zaXplOnZhcigtLXRleHQteGwpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC14bC0tbGluZS1oZWlnaHQpKX0uZGF0YS1cW3NpZGVcPWxlZnRcXVw6c21cOm1heC13LXNtW2RhdGEtc2lkZT1sZWZ0XSwuZGF0YS1cW3NpZGVcPXJpZ2h0XF1cOnNtXDptYXgtdy1zbVtkYXRhLXNpZGU9cmlnaHRde21heC13aWR0aDp2YXIoLS1jb250YWluZXItc20pfX1AbWVkaWEgKG1pbi13aWR0aDo0OHJlbSl7Lm1kXDppbnNldC14LWF1dG97aW5zZXQtaW5saW5lOmF1dG99Lm1kXDpyaWdodC00e3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9Lm1kXDpib3R0b20tNHtib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0ubWRcOmxlZnQtYXV0b3tsZWZ0OmF1dG99Lm1kXDpibG9ja3tkaXNwbGF5OmJsb2NrfS5tZFw6ZmxleHtkaXNwbGF5OmZsZXh9Lm1kXDpoaWRkZW57ZGlzcGxheTpub25lfS5tZFw6dGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGx9Lm1kXDptaW4tdy0we21pbi13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5tZFw6Z3JpZC1jb2xzLTF7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgxLG1pbm1heCgwLDFmcikpfS5tZFw6Z3JpZC1jb2xzLTJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgyLG1pbm1heCgwLDFmcikpfS5tZFw6Z3JpZC1jb2xzLTN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgzLG1pbm1heCgwLDFmcikpfS5tZFw6Z3JpZC1jb2xzLTR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg0LG1pbm1heCgwLDFmcikpfS5tZFw6ZmxleC1jb2x7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZFw6aXRlbXMtY2VudGVye2FsaWduLWl0ZW1zOmNlbnRlcn0ubWRcOmdhcC0xe2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tZFw6cGItMHtwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5tZFw6dGV4dC1zbXtmb250LXNpemU6dmFyKC0tdGV4dC1zbSk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LXNtLS1saW5lLWhlaWdodCkpfS5tZFw6d2hpdGVzcGFjZS1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfX1AbWVkaWEgKG1pbi13aWR0aDo2NHJlbSl7LmxnXDpzdGlja3l7cG9zaXRpb246c3RpY2t5fS5sZ1w6dG9wLTR7dG9wOmNhbGModmFyKC0tc3BhY2luZykqNCl9LmxnXDpibG9ja3tkaXNwbGF5OmJsb2NrfS5sZ1w6aGlkZGVue2Rpc3BsYXk6bm9uZX0ubGdcOnRhYmxlLWNlbGx7ZGlzcGxheTp0YWJsZS1jZWxsfS5sZ1w6dy03Mnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjcyKX0ubGdcOmdyaWQtY29scy0ye2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKX0ubGdcOmdyaWQtY29scy0ze2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMyxtaW5tYXgoMCwxZnIpKX0ubGdcOmdyaWQtY29scy00e2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCxtaW5tYXgoMCwxZnIpKX0ubGdcOmdyaWQtY29scy01e2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNSxtaW5tYXgoMCwxZnIpKX0ubGdcOmdyaWQtY29scy1cWzFmcl8zNDBweFxde2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMzQwcHh9LmxnXDpmbGV4LXJvd3tmbGV4LWRpcmVjdGlvbjpyb3d9LmxnXDpzZWxmLXN0YXJ0e2FsaWduLXNlbGY6ZmxleC1zdGFydH19QG1lZGlhIChtaW4td2lkdGg6ODByZW0pey54bFw6dy04MHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjgwKX19LmRhcmtcOmJsb2NrOmlzKC5kYXJrICope2Rpc3BsYXk6YmxvY2t9LmRhcmtcOmhpZGRlbjppcyguZGFyayAqKXtkaXNwbGF5Om5vbmV9LmRhcmtcOmJvcmRlci1pbnB1dDppcyguZGFyayAqKXtib3JkZXItY29sb3I6dmFyKC0taW5wdXQpfS5kYXJrXDpiZy1kZXN0cnVjdGl2ZVwvMjA6aXMoLmRhcmsgKil7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXDpiZy1kZXN0cnVjdGl2ZVwvMjA6aXMoLmRhcmsgKil7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMjAlLHRyYW5zcGFyZW50KX19LmRhcmtcOmJnLWlucHV0XC8zMDppcyguZGFyayAqKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmJnLWlucHV0XC8zMDppcyguZGFyayAqKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCkzMCUsdHJhbnNwYXJlbnQpfX0uZGFya1w6YmctdHJhbnNwYXJlbnQ6aXMoLmRhcmsgKil7YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZGFya1w6dGV4dC1ncmVlbi00MDA6aXMoLmRhcmsgKil7Y29sb3I6dmFyKC0tY29sb3ItZ3JlZW4tNDAwKX0uZGFya1w6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kOmlzKC5kYXJrICope2NvbG9yOnZhcigtLW11dGVkLWZvcmVncm91bmQpfS5kYXJrXDpwcm9zZS1pbnZlcnQ6aXMoLmRhcmsgKil7LS10dy1wcm9zZS1ib2R5OnZhcigtLXR3LXByb3NlLWludmVydC1ib2R5KTstLXR3LXByb3NlLWhlYWRpbmdzOnZhcigtLXR3LXByb3NlLWludmVydC1oZWFkaW5ncyk7LS10dy1wcm9zZS1sZWFkOnZhcigtLXR3LXByb3NlLWludmVydC1sZWFkKTstLXR3LXByb3NlLWxpbmtzOnZhcigtLXR3LXByb3NlLWludmVydC1saW5rcyk7LS10dy1wcm9zZS1ib2xkOnZhcigtLXR3LXByb3NlLWludmVydC1ib2xkKTstLXR3LXByb3NlLWNvdW50ZXJzOnZhcigtLXR3LXByb3NlLWludmVydC1jb3VudGVycyk7LS10dy1wcm9zZS1idWxsZXRzOnZhcigtLXR3LXByb3NlLWludmVydC1idWxsZXRzKTstLXR3LXByb3NlLWhyOnZhcigtLXR3LXByb3NlLWludmVydC1ocik7LS10dy1wcm9zZS1xdW90ZXM6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LXF1b3Rlcyk7LS10dy1wcm9zZS1xdW90ZS1ib3JkZXJzOnZhcigtLXR3LXByb3NlLWludmVydC1xdW90ZS1ib3JkZXJzKTstLXR3LXByb3NlLWNhcHRpb25zOnZhcigtLXR3LXByb3NlLWludmVydC1jYXB0aW9ucyk7LS10dy1wcm9zZS1rYmQ6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LWtiZCk7LS10dy1wcm9zZS1rYmQtc2hhZG93czp2YXIoLS10dy1wcm9zZS1pbnZlcnQta2JkLXNoYWRvd3MpOy0tdHctcHJvc2UtY29kZTp2YXIoLS10dy1wcm9zZS1pbnZlcnQtY29kZSk7LS10dy1wcm9zZS1wcmUtY29kZTp2YXIoLS10dy1wcm9zZS1pbnZlcnQtcHJlLWNvZGUpOy0tdHctcHJvc2UtcHJlLWJnOnZhcigtLXR3LXByb3NlLWludmVydC1wcmUtYmcpOy0tdHctcHJvc2UtdGgtYm9yZGVyczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtdGgtYm9yZGVycyk7LS10dy1wcm9zZS10ZC1ib3JkZXJzOnZhcigtLXR3LXByb3NlLWludmVydC10ZC1ib3JkZXJzKX0uZGFya1w6YWZ0ZXJcOm1peC1ibGVuZC1saWdodGVuOmlzKC5kYXJrICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7bWl4LWJsZW5kLW1vZGU6bGlnaHRlbn1AbWVkaWEgKGhvdmVyOmhvdmVyKXsuZGFya1w6aG92ZXJcOmJnLWRlc3RydWN0aXZlXC8zMDppcyguZGFyayAqKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmhvdmVyXDpiZy1kZXN0cnVjdGl2ZVwvMzA6aXMoLmRhcmsgKik6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMzAlLHRyYW5zcGFyZW50KX19LmRhcmtcOmhvdmVyXDpiZy1pbnB1dFwvNTA6aXMoLmRhcmsgKik6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXDpob3Zlclw6YmctaW5wdXRcLzUwOmlzKC5kYXJrICopOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTUwJSx0cmFuc3BhcmVudCl9fS5kYXJrXDpob3Zlclw6YmctbXV0ZWRcLzUwOmlzKC5kYXJrICopOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1w6aG92ZXJcOmJnLW11dGVkXC81MDppcyguZGFyayAqKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCk1MCUsdHJhbnNwYXJlbnQpfX0uZGFya1w6aG92ZXJcOnRleHQtZm9yZWdyb3VuZDppcyguZGFyayAqKTpob3Zlcntjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX19LmRhcmtcOmZvY3VzLXZpc2libGVcOnJpbmctZGVzdHJ1Y3RpdmVcLzQwOmlzKC5kYXJrICopOmZvY3VzLXZpc2libGV7LS10dy1yaW5nLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmZvY3VzLXZpc2libGVcOnJpbmctZGVzdHJ1Y3RpdmVcLzQwOmlzKC5kYXJrICopOmZvY3VzLXZpc2libGV7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk0MCUsdHJhbnNwYXJlbnQpfX0uZGFya1w6ZGlzYWJsZWRcOmJnLWlucHV0XC84MDppcyguZGFyayAqKTpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmRpc2FibGVkXDpiZy1pbnB1dFwvODA6aXMoLmRhcmsgKik6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0taW5wdXQpODAlLHRyYW5zcGFyZW50KX19LmRhcmtcOmRpc2FibGVkXDpiZy10cmFuc3BhcmVudDppcyguZGFyayAqKTpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5kYXJrXDpoYXMtZGlzYWJsZWRcOmJnLWlucHV0XC84MDppcyguZGFyayAqKTpoYXMoOmRpc2FibGVkKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmhhcy1kaXNhYmxlZFw6YmctaW5wdXRcLzgwOmlzKC5kYXJrICopOmhhcyg6ZGlzYWJsZWQpe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTgwJSx0cmFuc3BhcmVudCl9fS5kYXJrXDpoYXMtXFtcW2RhdGEtc2xvdFxdXFthcmlhLWludmFsaWRcPXRydWVcXVxdXDpyaW5nLWRlc3RydWN0aXZlXC80MDppcyguZGFyayAqKTpoYXMoW2RhdGEtc2xvdF1bYXJpYS1pbnZhbGlkPXRydWVdKXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1w6aGFzLVxbXFtkYXRhLXNsb3RcXVxbYXJpYS1pbnZhbGlkXD10cnVlXF1cXVw6cmluZy1kZXN0cnVjdGl2ZVwvNDA6aXMoLmRhcmsgKik6aGFzKFtkYXRhLXNsb3RdW2FyaWEtaW52YWxpZD10cnVlXSl7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk0MCUsdHJhbnNwYXJlbnQpfX0uZGFya1w6YXJpYS1pbnZhbGlkXDpib3JkZXItZGVzdHJ1Y3RpdmVcLzUwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1w6YXJpYS1pbnZhbGlkXDpib3JkZXItZGVzdHJ1Y3RpdmVcLzUwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTUwJSx0cmFuc3BhcmVudCl9fS5kYXJrXDphcmlhLWludmFsaWRcOnJpbmctZGVzdHJ1Y3RpdmVcLzQwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1w6YXJpYS1pbnZhbGlkXDpyaW5nLWRlc3RydWN0aXZlXC80MDppcyguZGFyayAqKVthcmlhLWludmFsaWQ9dHJ1ZV17LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk0MCUsdHJhbnNwYXJlbnQpfX0uZGFya1w6ZGF0YS1cW3ZhcmlhbnRcPWRlc3RydWN0aXZlXF1cOmZvY3VzXDpiZy1kZXN0cnVjdGl2ZVwvMjA6aXMoLmRhcmsgKilbZGF0YS12YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcOmRhdGEtXFt2YXJpYW50XD1kZXN0cnVjdGl2ZVxdXDpmb2N1c1w6YmctZGVzdHJ1Y3RpdmVcLzIwOmlzKC5kYXJrICopW2RhdGEtdmFyaWFudD1kZXN0cnVjdGl2ZV06Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMjAlLHRyYW5zcGFyZW50KX19LmRhdGEtb3Blblw6YW5pbWF0ZS1pbjp3aGVyZShbZGF0YS1zdGF0ZT1vcGVuXSksLmRhdGEtb3Blblw6YW5pbWF0ZS1pbjp3aGVyZShbZGF0YS1vcGVuXTpub3QoW2RhdGEtb3Blbj1mYWxzZV0pKXthbmltYXRpb246ZW50ZXIgdmFyKC0tdHctYW5pbWF0aW9uLWR1cmF0aW9uLHZhcigtLXR3LWR1cmF0aW9uLC4xNXMpKXZhcigtLXR3LWVhc2UsZWFzZSl2YXIoLS10dy1hbmltYXRpb24tZGVsYXksMHMpdmFyKC0tdHctYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwxKXZhcigtLXR3LWFuaW1hdGlvbi1kaXJlY3Rpb24sbm9ybWFsKXZhcigtLXR3LWFuaW1hdGlvbi1maWxsLW1vZGUsbm9uZSl9LmRhdGEtb3Blblw6YmctYWNjZW50OndoZXJlKFtkYXRhLXN0YXRlPW9wZW5dKSwuZGF0YS1vcGVuXDpiZy1hY2NlbnQ6d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1hY2NlbnQpfS5kYXRhLW9wZW5cOnRleHQtYWNjZW50LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtc3RhdGU9b3Blbl0pLC5kYXRhLW9wZW5cOnRleHQtYWNjZW50LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7Y29sb3I6dmFyKC0tYWNjZW50LWZvcmVncm91bmQpfS5kYXRhLW9wZW5cOmZhZGUtaW4tMDp3aGVyZShbZGF0YS1zdGF0ZT1vcGVuXSksLmRhdGEtb3Blblw6ZmFkZS1pbi0wOndoZXJlKFtkYXRhLW9wZW5dOm5vdChbZGF0YS1vcGVuPWZhbHNlXSkpey0tdHctZW50ZXItb3BhY2l0eTowfS5kYXRhLW9wZW5cOnpvb20taW4tOTU6d2hlcmUoW2RhdGEtc3RhdGU9b3Blbl0pLC5kYXRhLW9wZW5cOnpvb20taW4tOTU6d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7LS10dy1lbnRlci1zY2FsZTouOTV9LmRhdGEtY2xvc2VkXDphbmltYXRlLW91dDp3aGVyZShbZGF0YS1zdGF0ZT1jbG9zZWRdKSwuZGF0YS1jbG9zZWRcOmFuaW1hdGUtb3V0OndoZXJlKFtkYXRhLWNsb3NlZF06bm90KFtkYXRhLWNsb3NlZD1mYWxzZV0pKXthbmltYXRpb246ZXhpdCB2YXIoLS10dy1hbmltYXRpb24tZHVyYXRpb24sdmFyKC0tdHctZHVyYXRpb24sLjE1cykpdmFyKC0tdHctZWFzZSxlYXNlKXZhcigtLXR3LWFuaW1hdGlvbi1kZWxheSwwcyl2YXIoLS10dy1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50LDEpdmFyKC0tdHctYW5pbWF0aW9uLWRpcmVjdGlvbixub3JtYWwpdmFyKC0tdHctYW5pbWF0aW9uLWZpbGwtbW9kZSxub25lKX0uZGF0YS1jbG9zZWRcOm92ZXJmbG93LWhpZGRlbjp3aGVyZShbZGF0YS1zdGF0ZT1jbG9zZWRdKSwuZGF0YS1jbG9zZWRcOm92ZXJmbG93LWhpZGRlbjp3aGVyZShbZGF0YS1jbG9zZWRdOm5vdChbZGF0YS1jbG9zZWQ9ZmFsc2VdKSl7b3ZlcmZsb3c6aGlkZGVufS5kYXRhLWNsb3NlZFw6ZmFkZS1vdXQtMDp3aGVyZShbZGF0YS1zdGF0ZT1jbG9zZWRdKSwuZGF0YS1jbG9zZWRcOmZhZGUtb3V0LTA6d2hlcmUoW2RhdGEtY2xvc2VkXTpub3QoW2RhdGEtY2xvc2VkPWZhbHNlXSkpey0tdHctZXhpdC1vcGFjaXR5OjB9LmRhdGEtY2xvc2VkXDp6b29tLW91dC05NTp3aGVyZShbZGF0YS1zdGF0ZT1jbG9zZWRdKSwuZGF0YS1jbG9zZWRcOnpvb20tb3V0LTk1OndoZXJlKFtkYXRhLWNsb3NlZF06bm90KFtkYXRhLWNsb3NlZD1mYWxzZV0pKXstLXR3LWV4aXQtc2NhbGU6Ljk1fS5kYXRhLXNlbGVjdGVkXDpiZy1tdXRlZDp3aGVyZShbZGF0YS1zZWxlY3RlZD10cnVlXSl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9LmRhdGEtc2VsZWN0ZWRcOnRleHQtZm9yZWdyb3VuZDp3aGVyZShbZGF0YS1zZWxlY3RlZD10cnVlXSl7Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9LmRhdGEtZGlzYWJsZWRcOnBvaW50ZXItZXZlbnRzLW5vbmU6d2hlcmUoW2RhdGEtZGlzYWJsZWQ9dHJ1ZV0pLC5kYXRhLWRpc2FibGVkXDpwb2ludGVyLWV2ZW50cy1ub25lOndoZXJlKFtkYXRhLWRpc2FibGVkXTpub3QoW2RhdGEtZGlzYWJsZWQ9ZmFsc2VdKSl7cG9pbnRlci1ldmVudHM6bm9uZX0uZGF0YS1kaXNhYmxlZFw6b3BhY2l0eS01MDp3aGVyZShbZGF0YS1kaXNhYmxlZD10cnVlXSksLmRhdGEtZGlzYWJsZWRcOm9wYWNpdHktNTA6d2hlcmUoW2RhdGEtZGlzYWJsZWRdOm5vdChbZGF0YS1kaXNhYmxlZD1mYWxzZV0pKXtvcGFjaXR5Oi41fS5kYXRhLWFjdGl2ZVw6YmctYmFja2dyb3VuZDp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGF0YS1hY3RpdmVcOmJnLWJhY2tncm91bmQ6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JhY2tncm91bmQtY29sb3I6dmFyKC0tYmFja2dyb3VuZCl9LmRhdGEtYWN0aXZlXDp0ZXh0LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhdGEtYWN0aXZlXDp0ZXh0LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5ncm91cC1kYXRhLVxbdmFyaWFudFw9ZGVmYXVsdFxdXC90YWJzLWxpc3RcOmRhdGEtYWN0aXZlXDpzaGFkb3ctc206aXMoOndoZXJlKC5ncm91cFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9ZGVmYXVsdF0gKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmdyb3VwLWRhdGEtXFt2YXJpYW50XD1kZWZhdWx0XF1cL3RhYnMtbGlzdFw6ZGF0YS1hY3RpdmVcOnNoYWRvdy1zbTppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1kZWZhdWx0XSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7LS10dy1zaGFkb3c6MCAxcHggM3B4IDAgdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksMCAxcHggMnB4IC0xcHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSk7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5ncm91cC1kYXRhLVxbdmFyaWFudFw9bGluZVxdXC90YWJzLWxpc3RcOmRhdGEtYWN0aXZlXDpiZy10cmFuc3BhcmVudDppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZ3JvdXAtZGF0YS1cW3ZhcmlhbnRcPWxpbmVcXVwvdGFicy1saXN0XDpkYXRhLWFjdGl2ZVw6YmctdHJhbnNwYXJlbnQ6aXMoOndoZXJlKC5ncm91cFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JhY2tncm91bmQtY29sb3I6IzAwMDB9Lmdyb3VwLWRhdGEtXFt2YXJpYW50XD1saW5lXF1cL3RhYnMtbGlzdFw6ZGF0YS1hY3RpdmVcOnNoYWRvdy1ub25lOmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWxpbmVdICopOndoZXJlKFtkYXRhLXN0YXRlPWFjdGl2ZV0pLC5ncm91cC1kYXRhLVxbdmFyaWFudFw9bGluZVxdXC90YWJzLWxpc3RcOmRhdGEtYWN0aXZlXDpzaGFkb3ctbm9uZTppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7LS10dy1zaGFkb3c6MCAwICMwMDAwO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX06aXMoLmdyb3VwLWRhdGEtXFt2YXJpYW50XD1saW5lXF1cL3RhYnMtbGlzdFw6ZGF0YS1hY3RpdmVcOmFmdGVyXDpvcGFjaXR5LTEwMDppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZ3JvdXAtZGF0YS1cW3ZhcmlhbnRcPWxpbmVcXVwvdGFicy1saXN0XDpkYXRhLWFjdGl2ZVw6YWZ0ZXJcOm9wYWNpdHktMTAwOmlzKDp3aGVyZSguZ3JvdXBcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWxpbmVdICopOndoZXJlKFtkYXRhLWFjdGl2ZV06bm90KFtkYXRhLWFjdGl2ZT1mYWxzZV0pKSk6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtvcGFjaXR5OjF9LmRhcmtcOmRhdGEtYWN0aXZlXDpib3JkZXItaW5wdXQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhcmtcOmRhdGEtYWN0aXZlXDpib3JkZXItaW5wdXQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JvcmRlci1jb2xvcjp2YXIoLS1pbnB1dCl9LmRhcmtcOmRhdGEtYWN0aXZlXDpiZy1pbnB1dFwvMzA6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhcmtcOmRhdGEtYWN0aXZlXDpiZy1pbnB1dFwvMzA6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JhY2tncm91bmQtY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1w6ZGF0YS1hY3RpdmVcOmJnLWlucHV0XC8zMDppcyguZGFyayAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGFya1w6ZGF0YS1hY3RpdmVcOmJnLWlucHV0XC8zMDppcyguZGFyayAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0taW5wdXQpMzAlLHRyYW5zcGFyZW50KX19LmRhcmtcOmRhdGEtYWN0aXZlXDp0ZXh0LWZvcmVncm91bmQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhcmtcOmRhdGEtYWN0aXZlXDp0ZXh0LWZvcmVncm91bmQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5kYXJrXDpncm91cC1kYXRhLVxbdmFyaWFudFw9bGluZVxdXC90YWJzLWxpc3RcOmRhdGEtYWN0aXZlXDpib3JkZXItdHJhbnNwYXJlbnQ6aXMoLmRhcmsgKik6aXMoOndoZXJlKC5ncm91cFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhcmtcOmdyb3VwLWRhdGEtXFt2YXJpYW50XD1saW5lXF1cL3RhYnMtbGlzdFw6ZGF0YS1hY3RpdmVcOmJvcmRlci10cmFuc3BhcmVudDppcyguZGFyayAqKTppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7Ym9yZGVyLWNvbG9yOiMwMDAwfS5kYXJrXDpncm91cC1kYXRhLVxbdmFyaWFudFw9bGluZVxdXC90YWJzLWxpc3RcOmRhdGEtYWN0aXZlXDpiZy10cmFuc3BhcmVudDppcyguZGFyayAqKTppcyg6d2hlcmUoLmdyb3VwXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGFya1w6Z3JvdXAtZGF0YS1cW3ZhcmlhbnRcPWxpbmVcXVwvdGFicy1saXN0XDpkYXRhLWFjdGl2ZVw6YmctdHJhbnNwYXJlbnQ6aXMoLmRhcmsgKik6aXMoOndoZXJlKC5ncm91cFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JhY2tncm91bmQtY29sb3I6IzAwMDB9LmRhdGEtaG9yaXpvbnRhbFw6aC1weDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj1ob3Jpem9udGFsXSl7aGVpZ2h0OjFweH0uZGF0YS1ob3Jpem9udGFsXDp3LWZ1bGw6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249aG9yaXpvbnRhbF0pe3dpZHRoOjEwMCV9LmRhdGEtaG9yaXpvbnRhbFw6ZmxleC1jb2w6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249aG9yaXpvbnRhbF0pe2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZGF0YS12ZXJ0aWNhbFw6dy1weDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pe3dpZHRoOjFweH0uZGF0YS12ZXJ0aWNhbFw6c2VsZi1zdHJldGNoOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPXZlcnRpY2FsXSl7YWxpZ24tc2VsZjpzdHJldGNofS5cW1wmX2FcXVw6dGV4dC1wcmltYXJ5IGF7Y29sb3I6dmFyKC0tcHJpbWFyeSl9LlxbXCZfaDNcXVw6bXQtNiBoM3ttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqNil9LlxbXCZfaDNcXVw6bWItMiBoM3ttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMil9LlxbXCZfaDNcXVw6dGV4dC1mb3JlZ3JvdW5kIGgze2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5cW1wmX3N2Z1xdXDpwb2ludGVyLWV2ZW50cy1ub25lIHN2Z3twb2ludGVyLWV2ZW50czpub25lfS5cW1wmX3N2Z1xdXDpzaHJpbmstMCBzdmd7ZmxleC1zaHJpbms6MH0uXFtcJl9zdmdcOm5vdFwoXFtjbGFzc1wqXD1cJ3NpemUtXCdcXVwpXF1cOnNpemUtMyBzdmc6bm90KFtjbGFzcyo9c2l6ZS1dKXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5cW1wmX3N2Z1w6bm90XChcW2NsYXNzXCpcPVwnc2l6ZS1cJ1xdXClcXVw6c2l6ZS0zXC41IHN2Zzpub3QoW2NsYXNzKj1zaXplLV0pe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMy41KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpfS5cW1wmX3N2Z1w6bm90XChcW2NsYXNzXCpcPVwnc2l6ZS1cJ1xdXClcXVw6c2l6ZS00IHN2Zzpub3QoW2NsYXNzKj1zaXplLV0pe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LlxbXCZfdHJcXVw6Ym9yZGVyLWIgdHJ7Ym9yZGVyLWJvdHRvbS1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1ib3R0b20td2lkdGg6MXB4fS5cW1wmX3RyXDpsYXN0LWNoaWxkXF1cOmJvcmRlci0wIHRyOmxhc3QtY2hpbGR7Ym9yZGVyLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXdpZHRoOjB9LlxbXCZcOlw6LXdlYmtpdC1kZXRhaWxzLW1hcmtlclxdXDpoaWRkZW46Oi13ZWJraXQtZGV0YWlscy1tYXJrZXJ7ZGlzcGxheTpub25lfS5cW1wmXDpcOi13ZWJraXQtc2Nyb2xsYmFyXF1cOmhpZGRlbjo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS5cW1wmXDpoYXNcKFxbcm9sZVw9Y2hlY2tib3hcXVwpXF1cOnByLTA6aGFzKFtyb2xlPWNoZWNrYm94XSl7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5cW1wuYm9yZGVyLWJcXVw6cGItMi5ib3JkZXItYntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5cW1wuYm9yZGVyLWJcXVw6cGItNC5ib3JkZXItYntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5ncm91cC1kYXRhLVxbc2l6ZVw9c21cXVwvY2FyZFw6XFtcLmJvcmRlci1iXF1cOnBiLTM6aXMoOndoZXJlKC5ncm91cFwvY2FyZClbZGF0YS1zaXplPXNtXSAqKS5ib3JkZXItYntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5cW1wuYm9yZGVyLXRcXVw6cHQtMi5ib3JkZXItdHtwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfTppcyguXCpcKlw6XFtcW2NtZGstZ3JvdXAtaGVhZGluZ1xdXF1cOnB4LTIgKilbY21kay1ncm91cC1oZWFkaW5nXXtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfTppcyguXCpcKlw6XFtcW2NtZGstZ3JvdXAtaGVhZGluZ1xdXF1cOnB5LTFcLjUgKilbY21kay1ncm91cC1oZWFkaW5nXXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMS41KX06aXMoLlwqXCpcOlxbXFtjbWRrLWdyb3VwLWhlYWRpbmdcXVxdXDp0ZXh0LXhzICopW2NtZGstZ3JvdXAtaGVhZGluZ117Zm9udC1zaXplOnZhcigtLXRleHQteHMpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC14cy0tbGluZS1oZWlnaHQpKX06aXMoLlwqXCpcOlxbXFtjbWRrLWdyb3VwLWhlYWRpbmdcXVxdXDpmb250LW1lZGl1bSAqKVtjbWRrLWdyb3VwLWhlYWRpbmddey0tdHctZm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtmb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pfTppcyguXCpcKlw6XFtcW2NtZGstZ3JvdXAtaGVhZGluZ1xdXF1cOnRleHQtbXV0ZWQtZm9yZWdyb3VuZCAqKVtjbWRrLWdyb3VwLWhlYWRpbmdde2NvbG9yOnZhcigtLW11dGVkLWZvcmVncm91bmQpfTppcyguXCpcOlxbYVxdXDp1bmRlcmxpbmU+Kik6aXMoYSl7dGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lfTppcyguXCpcOlxbYVxdXDp1bmRlcmxpbmUtb2Zmc2V0LTM+Kik6aXMoYSl7dGV4dC11bmRlcmxpbmUtb2Zmc2V0OjNweH1AbWVkaWEgKGhvdmVyOmhvdmVyKXsuXFthXF1cOmhvdmVyXDpiZy1kZXN0cnVjdGl2ZVwvMjA6aXMoYSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5cW2FcXVw6aG92ZXJcOmJnLWRlc3RydWN0aXZlXC8yMDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkyMCUsdHJhbnNwYXJlbnQpfX0uXFthXF1cOmhvdmVyXDpiZy1tdXRlZDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX0uXFthXF1cOmhvdmVyXDpiZy1wcmltYXJ5XC84MDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuXFthXF1cOmhvdmVyXDpiZy1wcmltYXJ5XC84MDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTgwJSx0cmFuc3BhcmVudCl9fS5cW2FcXVw6aG92ZXJcOmJnLXNlY29uZGFyeVwvODA6aXMoYSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zZWNvbmRhcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuXFthXF1cOmhvdmVyXDpiZy1zZWNvbmRhcnlcLzgwOmlzKGEpOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXNlY29uZGFyeSk4MCUsdHJhbnNwYXJlbnQpfX0uXFthXF1cOmhvdmVyXDp0ZXh0LW11dGVkLWZvcmVncm91bmQ6aXMoYSk6aG92ZXJ7Y29sb3I6dmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCl9OmlzKC5cKlw6XFthXF1cOmhvdmVyXDp0ZXh0LWZvcmVncm91bmQ+Kik6aXMoYSk6aG92ZXJ7Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9fTppcyguXCpcOlxbaW1nXDpmaXJzdC1jaGlsZFxdXDpyb3VuZGVkLXQteGw+Kik6aXMoaW1nOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpfTppcyguXCpcOlxbaW1nXDpsYXN0LWNoaWxkXF1cOnJvdW5kZWQtYi14bD4qKTppcyhpbWc6bGFzdC1jaGlsZCl7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuNCk7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqMS40KX06aXMoLmRhdGEtXFt2YXJpYW50XD1kZXN0cnVjdGl2ZVxdXDpcKlw6XFtzdmdcXVw6dGV4dC1kZXN0cnVjdGl2ZVtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdPiopOmlzKHN2Zyl7Y29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfTppcyguZGF0YS1zZWxlY3RlZFw6XCpcOlxbc3ZnXF1cOnRleHQtZm9yZWdyb3VuZDp3aGVyZShbZGF0YS1zZWxlY3RlZD10cnVlXSk+Kik6aXMoc3ZnKXtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX0uaGFzLVxbXD5cW2RhdGEtYWxpZ25cPWJsb2NrLWVuZFxdXF1cOlxbXCZcPmlucHV0XF1cOnB0LTM6aGFzKD5bZGF0YS1hbGlnbj1ibG9jay1lbmRdKT5pbnB1dHtwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5oYXMtXFtcPlxbZGF0YS1hbGlnblw9YmxvY2stc3RhcnRcXVxdXDpcW1wmXD5pbnB1dFxdXDpwYi0zOmhhcyg+W2RhdGEtYWxpZ249YmxvY2stc3RhcnRdKT5pbnB1dHtwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5oYXMtXFtcPlxbZGF0YS1hbGlnblw9aW5saW5lLWVuZFxdXF1cOlxbXCZcPmlucHV0XF1cOnByLTFcLjU6aGFzKD5bZGF0YS1hbGlnbj1pbmxpbmUtZW5kXSk+aW5wdXR7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9Lmhhcy1cW1w+XFtkYXRhLWFsaWduXD1pbmxpbmUtc3RhcnRcXVxdXDpcW1wmXD5pbnB1dFxdXDpwbC0xXC41Omhhcyg+W2RhdGEtYWxpZ249aW5saW5lLXN0YXJ0XSk+aW5wdXR7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uXFtcJlw+a2JkXF1cOnJvdW5kZWQtXFtjYWxjXCh2YXJcKC0tcmFkaXVzXCktNXB4XClcXT5rYmR7Ym9yZGVyLXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykgLSA1cHgpfS5cW1wmXD5zdmdcXVw6cG9pbnRlci1ldmVudHMtbm9uZT5zdmd7cG9pbnRlci1ldmVudHM6bm9uZX0uXFtcJlw+c3ZnXF1cOnNpemUtM1whPnN2Z3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpIWltcG9ydGFudDtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKSFpbXBvcnRhbnR9LlxbXCZcPnN2Z1xdXDpzaXplLTQ+c3Zne3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9Lmdyb3VwLWhhcy1kYXRhLVxbc2l6ZVw9bGdcXVwvYXZhdGFyLWdyb3VwXDpcW1wmXD5zdmdcXVw6c2l6ZS01OmlzKDp3aGVyZSguZ3JvdXBcL2F2YXRhci1ncm91cCk6aGFzKFtkYXRhLXNpemU9bGddKSAqKT5zdmd7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0uZ3JvdXAtaGFzLWRhdGEtXFtzaXplXD1zbVxdXC9hdmF0YXItZ3JvdXBcOlxbXCZcPnN2Z1xdXDpzaXplLTM6aXMoOndoZXJlKC5ncm91cFwvYXZhdGFyLWdyb3VwKTpoYXMoW2RhdGEtc2l6ZT1zbV0pICopPnN2Z3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5ncm91cC1kYXRhLVxbc2l6ZVw9ZGVmYXVsdFxdXC9hdmF0YXJcOlxbXCZcPnN2Z1xdXDpzaXplLTI6aXMoOndoZXJlKC5ncm91cFwvYXZhdGFyKVtkYXRhLXNpemU9ZGVmYXVsdF0gKik+c3ZnLC5ncm91cC1kYXRhLVxbc2l6ZVw9bGdcXVwvYXZhdGFyXDpcW1wmXD5zdmdcXVw6c2l6ZS0yOmlzKDp3aGVyZSguZ3JvdXBcL2F2YXRhcilbZGF0YS1zaXplPWxnXSAqKT5zdmd7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uZ3JvdXAtZGF0YS1cW3NpemVcPXNtXF1cL2F2YXRhclw6XFtcJlw+c3ZnXF1cOmhpZGRlbjppcyg6d2hlcmUoLmdyb3VwXC9hdmF0YXIpW2RhdGEtc2l6ZT1zbV0gKik+c3Zne2Rpc3BsYXk6bm9uZX0uXFtcJlw+c3ZnXDpub3RcKFxbY2xhc3NcKlw9XCdzaXplLVwnXF1cKVxdXDpzaXplLTNcLjU+c3ZnOm5vdChbY2xhc3MqPXNpemUtXSl7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMuNSl9LlxbXCZcPnN2Z1w6bm90XChcW2NsYXNzXCpcPVwnc2l6ZS1cJ1xdXClcXVw6c2l6ZS00PnN2Zzpub3QoW2NsYXNzKj1zaXplLV0pe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LlxbXCZcPnRyXF1cOmxhc3RcOmJvcmRlci1iLTA+dHI6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLWJvdHRvbS13aWR0aDowfX1AcHJvcGVydHkgLS10dy1hbmltYXRpb24tZGVsYXl7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjBzfUBwcm9wZXJ0eSAtLXR3LWFuaW1hdGlvbi1kaXJlY3Rpb257c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOm5vcm1hbH1AcHJvcGVydHkgLS10dy1hbmltYXRpb24tZHVyYXRpb257c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1hbmltYXRpb24tZmlsbC1tb2Rle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTpub25lfUBwcm9wZXJ0eSAtLXR3LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnR7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjF9QHByb3BlcnR5IC0tdHctZW50ZXItYmx1cntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1lbnRlci1vcGFjaXR5e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToxfUBwcm9wZXJ0eSAtLXR3LWVudGVyLXJvdGF0ZXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1lbnRlci1zY2FsZXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MX1AcHJvcGVydHkgLS10dy1lbnRlci10cmFuc2xhdGUteHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1lbnRlci10cmFuc2xhdGUteXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1leGl0LWJsdXJ7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctZXhpdC1vcGFjaXR5e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToxfUBwcm9wZXJ0eSAtLXR3LWV4aXQtcm90YXRle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LWV4aXQtc2NhbGV7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjF9QHByb3BlcnR5IC0tdHctZXhpdC10cmFuc2xhdGUteHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1leGl0LXRyYW5zbGF0ZS15e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfTpyb290ey0tYmFja2dyb3VuZDojZmZmOy0tZm9yZWdyb3VuZDojMTExODI3Oy0tY2FyZDojZjlmYWZiOy0tY2FyZC1mb3JlZ3JvdW5kOiMxMTE4Mjc7LS1wb3BvdmVyOiNmZmY7LS1wb3BvdmVyLWZvcmVncm91bmQ6IzExMTgyNzstLXByaW1hcnk6IzAwNzBlYzstLXByaW1hcnktZm9yZWdyb3VuZDojZmZmOy0tc2Vjb25kYXJ5OiNmM2Y0ZjY7LS1zZWNvbmRhcnktZm9yZWdyb3VuZDojMTExODI3Oy0tbXV0ZWQ6I2YzZjRmNjstLW11dGVkLWZvcmVncm91bmQ6IzZiNzI4MDstLWFjY2VudDojZjNmNGY2Oy0tYWNjZW50LWZvcmVncm91bmQ6IzExMTgyNzstLWRlc3RydWN0aXZlOiNlZjQ0NDQ7LS1ib3JkZXI6I2U1ZTdlYjstLWlucHV0OiNlNWU3ZWI7LS1yaW5nOiMwMDc0ZjU7LS1yYWRpdXM6LjVyZW07LS1zdWNjZXNzOiMyMmM1NWU7LS1kYW5nZXI6I2VmNDQ0NDstLXdhcm5pbmc6I2Y1OWUwYjstLWluZm86IzNiODJmNjstLXN1cmZhY2U6I2Y5ZmFmYjstLXN1cmZhY2UtMjojZjNmNGY2Oy0tY2hhcnQtMTojMDA3NGY1Oy0tY2hhcnQtMjojMDBiOGE5Oy0tY2hhcnQtMzojMjJjNTVlOy0tY2hhcnQtNDojZjU5ZTBiOy0tY2hhcnQtNTojZWY0NDQ0Oy0tc2lkZWJhcjojZjlmYWZiOy0tc2lkZWJhci1mb3JlZ3JvdW5kOiMxMTE4Mjc7LS1zaWRlYmFyLXByaW1hcnk6IzAwNzRmNTstLXNpZGViYXItcHJpbWFyeS1mb3JlZ3JvdW5kOiNmZmY7LS1zaWRlYmFyLWFjY2VudDojZjNmNGY2Oy0tc2lkZWJhci1hY2NlbnQtZm9yZWdyb3VuZDojMTExODI3Oy0tc2lkZWJhci1ib3JkZXI6I2U1ZTdlYjstLXNpZGViYXItcmluZzojMDA3NGY1fS5kYXJrey0tYmFja2dyb3VuZDojMGIwZjE5Oy0tZm9yZWdyb3VuZDojZjlmYWZiOy0tY2FyZDojMTExODI3Oy0tY2FyZC1mb3JlZ3JvdW5kOiNmOWZhZmI7LS1wb3BvdmVyOiMxMTE4Mjc7LS1wb3BvdmVyLWZvcmVncm91bmQ6I2Y5ZmFmYjstLXByaW1hcnk6IzAwNzBlYzstLXByaW1hcnktZm9yZWdyb3VuZDojZmZmOy0tc2Vjb25kYXJ5OiMxZjI5Mzc7LS1zZWNvbmRhcnktZm9yZWdyb3VuZDojZjlmYWZiOy0tbXV0ZWQ6IzFmMjkzNzstLW11dGVkLWZvcmVncm91bmQ6IzljYTNhZjstLWFjY2VudDojMWYyOTM3Oy0tYWNjZW50LWZvcmVncm91bmQ6I2Y5ZmFmYjstLWRlc3RydWN0aXZlOiNlZjQ0NDQ7LS1ib3JkZXI6IzM3NDE1MTstLWlucHV0OiMzNzQxNTE7LS1yaW5nOiMwMDc0ZjU7LS1zdWNjZXNzOiMyMmM1NWU7LS1kYW5nZXI6I2VmNDQ0NDstLXdhcm5pbmc6I2Y1OWUwYjstLWluZm86IzNiODJmNjstLXN1cmZhY2U6IzExMTgyNzstLXN1cmZhY2UtMjojMWYyOTM3Oy0tY2hhcnQtMTojM2Q5YWZmOy0tY2hhcnQtMjojMzNjOWJkOy0tY2hhcnQtMzojMjJjNTVlOy0tY2hhcnQtNDojZjU5ZTBiOy0tY2hhcnQtNTojZWY0NDQ0Oy0tc2lkZWJhcjojMTExODI3Oy0tc2lkZWJhci1mb3JlZ3JvdW5kOiNmOWZhZmI7LS1zaWRlYmFyLXByaW1hcnk6IzNkOWFmZjstLXNpZGViYXItcHJpbWFyeS1mb3JlZ3JvdW5kOiNmZmY7LS1zaWRlYmFyLWFjY2VudDojMWYyOTM3Oy0tc2lkZWJhci1hY2NlbnQtZm9yZWdyb3VuZDojZjlmYWZiOy0tc2lkZWJhci1ib3JkZXI6IzM3NDE1MTstLXNpZGViYXItcmluZzojMDA3NGY1fUBrZXlmcmFtZXMgdGV4dC1zaGltbWVyezAle2JhY2tncm91bmQtcG9zaXRpb246MjAwJX10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yMDAlfX0udGV4dC1zaGltbWVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHZhcigtLW11dGVkLWZvcmVncm91bmQpNDAlLHZhcigtLWZvcmVncm91bmQpNTAlLHZhcigtLW11dGVkLWZvcmVncm91bmQpNjAlKTtjb2xvcjojMDAwMDtiYWNrZ3JvdW5kLXNpemU6MjAwJTstd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0O2JhY2tncm91bmQtY2xpcDp0ZXh0O2FuaW1hdGlvbjoycyBsaW5lYXIgaW5maW5pdGUgdGV4dC1zaGltbWVyfWh0bWwuY2MtY29uc2VudGVkIC5jb29raWUtbm90aWNle2Rpc3BsYXk6bm9uZX1AcHJvcGVydHkgLS10dy10cmFuc2xhdGUteHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy10cmFuc2xhdGUteXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy10cmFuc2xhdGUtentzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1yb3RhdGUteHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXJvdGF0ZS15e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctcm90YXRlLXp7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1za2V3LXh7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1za2V3LXl7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1zcGFjZS15LXJldmVyc2V7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctc3BhY2UteC1yZXZlcnNle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LWRpdmlkZS15LXJldmVyc2V7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctYm9yZGVyLXN0eWxle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTpzb2xpZH1AcHJvcGVydHkgLS10dy1ncmFkaWVudC1wb3NpdGlvbntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LWZyb217c3ludGF4OiI8Y29sb3I+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOiMwMDAwfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXZpYXtzeW50YXg6Ijxjb2xvcj4iO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6IzAwMDB9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtdG97c3ludGF4OiI8Y29sb3I+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOiMwMDAwfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXN0b3Bze3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtdmlhLXN0b3Bze3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtZnJvbS1wb3NpdGlvbntzeW50YXg6IjxsZW5ndGgtcGVyY2VudGFnZT4iO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MCV9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtdmlhLXBvc2l0aW9ue3N5bnRheDoiPGxlbmd0aC1wZXJjZW50YWdlPiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTo1MCV9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtdG8tcG9zaXRpb257c3ludGF4OiI8bGVuZ3RoLXBlcmNlbnRhZ2U+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctbGVhZGluZ3tzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWZvbnQtd2VpZ2h0e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctdHJhY2tpbmd7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1vcmRpbmFse3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2xhc2hlZC16ZXJve3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctbnVtZXJpYy1maWd1cmV7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1udW1lcmljLXNwYWNpbmd7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1udW1lcmljLWZyYWN0aW9ue3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2hhZG93e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowIDAgIzAwMDB9QHByb3BlcnR5IC0tdHctc2hhZG93LWNvbG9ye3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2hhZG93LWFscGhhe3N5bnRheDoiPHBlcmNlbnRhZ2U+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctaW5zZXQtc2hhZG93e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowIDAgIzAwMDB9QHByb3BlcnR5IC0tdHctaW5zZXQtc2hhZG93LWNvbG9ye3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctaW5zZXQtc2hhZG93LWFscGhhe3N5bnRheDoiPHBlcmNlbnRhZ2U+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctcmluZy1jb2xvcntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXJpbmctc2hhZG93e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowIDAgIzAwMDB9QHByb3BlcnR5IC0tdHctaW5zZXQtcmluZy1jb2xvcntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWluc2V0LXJpbmctc2hhZG93e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowIDAgIzAwMDB9QHByb3BlcnR5IC0tdHctcmluZy1pbnNldHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXJpbmctb2Zmc2V0LXdpZHRoe3N5bnRheDoiPGxlbmd0aD4iO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1yaW5nLW9mZnNldC1jb2xvcntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6I2ZmZn1AcHJvcGVydHkgLS10dy1yaW5nLW9mZnNldC1zaGFkb3d7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjAgMCAjMDAwMH1AcHJvcGVydHkgLS10dy1vdXRsaW5lLXN0eWxle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTpzb2xpZH1AcHJvcGVydHkgLS10dy1ibHVye3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYnJpZ2h0bmVzc3tzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWNvbnRyYXN0e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctZ3JheXNjYWxle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctaHVlLXJvdGF0ZXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWludmVydHtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LW9wYWNpdHl7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1zYXR1cmF0ZXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXNlcGlhe3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctZHJvcC1zaGFkb3d7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1kcm9wLXNoYWRvdy1jb2xvcntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWRyb3Atc2hhZG93LWFscGhhe3N5bnRheDoiPHBlcmNlbnRhZ2U+Ijtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctZHJvcC1zaGFkb3ctc2l6ZXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWJhY2tkcm9wLWJsdXJ7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1iYWNrZHJvcC1icmlnaHRuZXNze3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtY29udHJhc3R7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1iYWNrZHJvcC1ncmF5c2NhbGV7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1iYWNrZHJvcC1odWUtcm90YXRle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtaW52ZXJ0e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3Atb3BhY2l0eXtzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWJhY2tkcm9wLXNhdHVyYXRle3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3Atc2VwaWF7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1kdXJhdGlvbntzeW50YXg6IioiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWVhc2V7c3ludGF4OiIqIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1jb250ZW50e3N5bnRheDoiKiI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToiIn1Aa2V5ZnJhbWVzIHNwaW57dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX1Aa2V5ZnJhbWVzIHB1bHNlezUwJXtvcGFjaXR5Oi41fX1Aa2V5ZnJhbWVzIGVudGVyezAle29wYWNpdHk6dmFyKC0tdHctZW50ZXItb3BhY2l0eSwxKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QodmFyKC0tdHctZW50ZXItdHJhbnNsYXRlLXgsMCksdmFyKC0tdHctZW50ZXItdHJhbnNsYXRlLXksMCksMClzY2FsZTNkKHZhcigtLXR3LWVudGVyLXNjYWxlLDEpLHZhcigtLXR3LWVudGVyLXNjYWxlLDEpLHZhcigtLXR3LWVudGVyLXNjYWxlLDEpKXJvdGF0ZSh2YXIoLS10dy1lbnRlci1yb3RhdGUsMCkpO2ZpbHRlcjpibHVyKHZhcigtLXR3LWVudGVyLWJsdXIsMCkpfX1Aa2V5ZnJhbWVzIGV4aXR7dG97b3BhY2l0eTp2YXIoLS10dy1leGl0LW9wYWNpdHksMSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKHZhcigtLXR3LWV4aXQtdHJhbnNsYXRlLXgsMCksdmFyKC0tdHctZXhpdC10cmFuc2xhdGUteSwwKSwwKXNjYWxlM2QodmFyKC0tdHctZXhpdC1zY2FsZSwxKSx2YXIoLS10dy1leGl0LXNjYWxlLDEpLHZhcigtLXR3LWV4aXQtc2NhbGUsMSkpcm90YXRlKHZhcigtLXR3LWV4aXQtcm90YXRlLDApKTtmaWx0ZXI6Ymx1cih2YXIoLS10dy1leGl0LWJsdXIsMCkpfX0KPC9zdHlsZT48bGluayByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiIGZldGNoUHJpb3JpdHk9ImxvdyIgaHJlZj0iL19uZXh0L3N0YXRpYy9jaHVua3MvODFhMjk4ZGRjNzQ3MTA3MC5qcyIvPjxzY3JpcHQgc3JjPSIvX25leHQvc3RhdGljL2NodW5rcy85ZGYzYjY3YjYwNjFlYTllLmpzIiBhc3luYz0iIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL19uZXh0L3N0YXRpYy9jaHVua3MvNDgwY2RlMDhiOGJmZDVjZS5qcyIgYXN5bmM9IiI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9fbmV4dC9zdGF0aWMvY2h1bmtzLzQ5MTE0MTBlNTE1M2YwZDcuanMiIGFzeW5jPSIiPjwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvX25leHQvc3RhdGljL2NodW5rcy80ODE1YTc1ODY1N2Q0YmFlLmpzIiBhc3luYz0iIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL19uZXh0L3N0YXRpYy9jaHVua3MvdHVyYm9wYWNrLTE4YTlkZTUxMmExOTMzYWQuanMiIGFzeW5jPSIiPjwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvX25leHQvc3RhdGljL2NodW5rcy9jMGE2YWU1MTVmNGQyNDVkLmpzIiBhc3luYz0iIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL19uZXh0L3N0YXRpYy9jaHVua3MvMzMwNzRkM2ZmNWQwY2QyZC5qcyIgYXN5bmM9IiI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9fbmV4dC9zdGF0aWMvY2h1bmtzLzk1MjYyMzg2ZDhkNGI2ZGQuanMiIGFzeW5jPSIiPjwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvX25leHQvc3RhdGljL2NodW5rcy84MDBlODM2MTQ2ZDZlN2ViLmpzIiBhc3luYz0iIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL19uZXh0L3N0YXRpYy9jaHVua3MvZDcxYjk5MjY3YjA2NmI5Yi5qcyIgYXN5bmM9IiI+PC9zY3JpcHQ+PGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tIiBjcm9zc29yaWdpbj0iIi8+PG1ldGEgbmFtZT0ibmV4dC1zaXplLWFkanVzdCIgY29udGVudD0iIi8+PHRpdGxlPkNvaW5saWIgV2lkZ2V0IHwgQ29pbmxpYjwvdGl0bGU+PG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRyYWNrIHJlYWwtdGltZSBjcnlwdG9jdXJyZW5jeSBwcmljZXMsIG1hcmtldCBjYXAsIGNoYXJ0cywgYW5kIHBvcnRmb2xpby4gRXhwbG9yZSB0aG91c2FuZHMgb2YgY29pbnMgYW5kIGV4Y2hhbmdlcyB3aXRoIENvaW5saWIuIi8+PG1ldGEgbmFtZT0ia2V5d29yZHMiIGNvbnRlbnQ9ImNyeXB0b2N1cnJlbmN5LGNyeXB0byBwcmljZXMsYml0Y29pbixtYXJrZXQgY2FwLGNyeXB0byBjaGFydHMscG9ydGZvbGlvIHRyYWNrZXIiLz48bWV0YSBuYW1lPSJyb2JvdHMiIGNvbnRlbnQ9Im5vaW5kZXgiLz48bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9IkNvaW5saWIg4oCUIENyeXB0b2N1cnJlbmN5IFByaWNlcywgQ2hhcnRzICZhbXA7IE1hcmtldCBEYXRhIi8+PG1ldGEgcHJvcGVydHk9Im9nOmRlc2NyaXB0aW9uIiBjb250ZW50PSJUcmFjayByZWFsLXRpbWUgY3J5cHRvY3VycmVuY3kgcHJpY2VzLCBtYXJrZXQgY2FwLCBjaGFydHMsIGFuZCBwb3J0Zm9saW8uIEV4cGxvcmUgdGhvdXNhbmRzIG9mIGNvaW5zIGFuZCBleGNoYW5nZXMgd2l0aCBDb2lubGliLiIvPjxtZXRhIHByb3BlcnR5PSJvZzp1cmwiIGNvbnRlbnQ9Imh0dHBzOi8vY29pbmxpYi5pbyIvPjxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IkNvaW5saWIiLz48bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2UiIGNvbnRlbnQ9Imh0dHBzOi8vY29pbmxpYi5pby9vZy9kZWZhdWx0LnBuZyIvPjxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTp3aWR0aCIgY29udGVudD0iMTIwMCIvPjxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTpoZWlnaHQiIGNvbnRlbnQ9IjYzMCIvPjxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTphbHQiIGNvbnRlbnQ9IkNvaW5saWIg4oCUIENyeXB0b2N1cnJlbmN5IFByaWNlcywgQ2hhcnRzICZhbXA7IE1hcmtldCBEYXRhIi8+PG1ldGEgcHJvcGVydHk9Im9nOnR5cGUiIGNvbnRlbnQ9IndlYnNpdGUiLz48bWV0YSBuYW1lPSJ0d2l0dGVyOmNhcmQiIGNvbnRlbnQ9InN1bW1hcnlfbGFyZ2VfaW1hZ2UiLz48bWV0YSBuYW1lPSJ0d2l0dGVyOnRpdGxlIiBjb250ZW50PSJDb2lubGliIOKAlCBDcnlwdG9jdXJyZW5jeSBQcmljZXMsIENoYXJ0cyAmYW1wOyBNYXJrZXQgRGF0YSIvPjxtZXRhIG5hbWU9InR3aXR0ZXI6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRyYWNrIHJlYWwtdGltZSBjcnlwdG9jdXJyZW5jeSBwcmljZXMsIG1hcmtldCBjYXAsIGNoYXJ0cywgYW5kIHBvcnRmb2xpby4gRXhwbG9yZSB0aG91c2FuZHMgb2YgY29pbnMgYW5kIGV4Y2hhbmdlcyB3aXRoIENvaW5saWIuIi8+PG1ldGEgbmFtZT0idHdpdHRlcjppbWFnZSIgY29udGVudD0iaHR0cHM6Ly9jb2lubGliLmlvL29nL2RlZmF1bHQucG5nIi8+PGxpbmsgcmVsPSJpY29uIiBocmVmPSIvZmF2aWNvbi5pY28/ZmF2aWNvbi4zOTBlMTEwOS5pY28iIHNpemVzPSI0OHg0OCIgdHlwZT0iaW1hZ2UveC1pY29uIi8+PGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSIvbG9nb3MvYXBwbGUtdG91Y2gtaWNvbi5wbmciLz48c2NyaXB0PnRyeXtpZihsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnY29pbmxpYi1jb29raWUtY29uc2VudCcpKXtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnY2MtY29uc2VudGVkJyl9fWNhdGNoKGUpe308L3NjcmlwdD48c2NyaXB0IHNyYz0iL19uZXh0L3N0YXRpYy9jaHVua3MvYTZkYWQ5N2Q5NjM0YTcyZC5qcyIgbm9Nb2R1bGU9IiI+PC9zY3JpcHQ+PC9oZWFkPjxib2R5IGNsYXNzPSJpbnRlcl8xZWM0ZGQ5Zi1tb2R1bGVfX1VNUGFLR19fdmFyaWFibGUgYW50aWFsaWFzZWQiPjxkaXYgaGlkZGVuPSIiPjwhLS0kLS0+PCEtLS8kLS0+PC9kaXY+PHNjcmlwdD4oKGEsYixjLGQsZSxmLGcsaCk9PntsZXQgaT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsaj1bImxpZ2h0IiwiZGFyayJdO2Z1bmN0aW9uIGsoYil7dmFyIGM7KEFycmF5LmlzQXJyYXkoYSk/YTpbYV0pLmZvckVhY2goYT0+e2xldCBjPSJjbGFzcyI9PT1hLGQ9YyYmZj9lLm1hcChhPT5mW2FdfHxhKTplO2M/KGkuY2xhc3NMaXN0LnJlbW92ZSguLi5kKSxpLmNsYXNzTGlzdC5hZGQoZiYmZltiXT9mW2JdOmIpKTppLnNldEF0dHJpYnV0ZShhLGIpfSksYz1iLGgmJmouaW5jbHVkZXMoYykmJihpLnN0eWxlLmNvbG9yU2NoZW1lPWMpfWlmKGQpayhkKTtlbHNlIHRyeXtsZXQgYT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbShiKXx8YyxkPWcmJiJzeXN0ZW0iPT09YT93aW5kb3cubWF0Y2hNZWRpYSgiKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIpLm1hdGNoZXM/ImRhcmsiOiJsaWdodCI6YTtrKGQpfWNhdGNoKGEpe319KSgiY2xhc3MiLCJ0aGVtZSIsImRhcmsiLG51bGwsWyJsaWdodCIsImRhcmsiXSxudWxsLHRydWUsdHJ1ZSk8L3NjcmlwdD48c3R5bGU+aHRtbCwgYm9keSB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgb3ZlcmZsb3c6IGhpZGRlbjsgfTwvc3R5bGU+PCEtLSQhLS0+PHRlbXBsYXRlIGRhdGEtZGdzdD0iQkFJTE9VVF9UT19DTElFTlRfU0lERV9SRU5ERVJJTkciPjwvdGVtcGxhdGU+PCEtLS8kLS0+PCEtLSQtLT48IS0tLyQtLT48c2NyaXB0PihmdW5jdGlvbigpe2Z1bmN0aW9uIGxvYWQoKXt3aW5kb3cuZGF0YUxheWVyPXdpbmRvdy5kYXRhTGF5ZXJ8fFtdO3dpbmRvdy5ndGFnPWZ1bmN0aW9uKCl7ZGF0YUxheWVyLnB1c2goYXJndW1lbnRzKX07Z3RhZygnanMnLG5ldyBEYXRlKCkpO2d0YWcoJ2NvbmZpZycsJ0ctVjg0WFA4V0dYWScpO3ZhciBzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO3Muc3JjPSdodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndGFnL2pzP2lkPUctVjg0WFA4V0dYWSc7cy5hc3luYz10cnVlO2RvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQocyl9ZnVuY3Rpb24gc2NoZWR1bGUoKXtpZigncmVxdWVzdElkbGVDYWxsYmFjaydpbiB3aW5kb3cpe3JlcXVlc3RJZGxlQ2FsbGJhY2sobG9hZCx7dGltZW91dDozMDAwfSl9ZWxzZXtzZXRUaW1lb3V0KGxvYWQsMTUwMCl9fWlmKGRvY3VtZW50LnJlYWR5U3RhdGU9PT0nY29tcGxldGUnKXtzY2hlZHVsZSgpfWVsc2V7YWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsc2NoZWR1bGUse29uY2U6dHJ1ZX0pfX0pKCk7PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9fbmV4dC9zdGF0aWMvY2h1bmtzLzgxYTI5OGRkYzc0NzEwNzAuanMiIGlkPSJfUl8iIGFzeW5jPSIiPjwvc2NyaXB0PjxzY3JpcHQ+KHNlbGYuX19uZXh0X2Y9c2VsZi5fX25leHRfZnx8W10pLnB1c2goWzBdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCIxOlwiJFNyZWFjdC5mcmFnbWVudFwiXG5hOklbMTYxNTMsW10sXCJkZWZhdWx0XCJdXG46SExbXCIvX25leHQvc3RhdGljL21lZGlhLzgzYWZlMjc4YjZhNmJiM2Mtcy5wLjNhNmJhMDM2LndvZmYyXCIsXCJmb250XCIse1wiY3Jvc3NPcmlnaW5cIjpcIlwiLFwidHlwZVwiOlwiZm9udC93b2ZmMlwifV1cbjI6VDg4NCwiXSk8L3NjcmlwdD48c2NyaXB0PnNlbGYuX19uZXh0X2YucHVzaChbMSwiQGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlcjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDAgOTAwO2ZvbnQtZGlzcGxheTpvcHRpb25hbDtzcmM6dXJsKC9fbmV4dC9zdGF0aWMvbWVkaWEvMmM1NWEwZTYwMTIwNTc3YS1zLjJhNDg1MzRhLndvZmYyKWZvcm1hdChcIndvZmYyXCIpO3VuaWNvZGUtcmFuZ2U6VSs0NjAtNTJGLFUrMUM4MC0xQzhBLFUrMjBCNCxVKzJERTAtMkRGRixVK0E2NDAtQTY5RixVK0ZFMkUtRkUyRn1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkludGVyO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjEwMCA5MDA7Zm9udC1kaXNwbGF5Om9wdGlvbmFsO3NyYzp1cmwoL19uZXh0L3N0YXRpYy9tZWRpYS85YzcyYWEwZjQwZTRlZWY4LXMuMThhNDhjYmMud29mZjIpZm9ybWF0KFwid29mZjJcIik7dW5pY29kZS1yYW5nZTpVKzMwMSxVKzQwMC00NUYsVSs0OTAtNDkxLFUrNEIwLTRCMSxVKzIxMTZ9QGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlcjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDAgOTAwO2ZvbnQtZGlzcGxheTpvcHRpb25hbDtzcmM6dXJsKC9fbmV4dC9zdGF0aWMvbWVkaWEvYWQ2NmY5YWZkODk0N2Y4Ni1zLjdhNDBlYjczLndvZmYyKWZvcm1hdChcIndvZmYyXCIpO3VuaWNvZGUtcmFuZ2U6VSsxRj8/fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6MTAwIDkwMDtmb250LWRpc3BsYXk6b3B0aW9uYWw7c3JjOnVybCgvX25leHQvc3RhdGljL21lZGlhLzU0NzZmNjhkNjA0NjA5MzAtcy5jOTk1ZTM1Mi53b2ZmMilmb3JtYXQoXCJ3b2ZmMlwiKTt1bmljb2RlLXJhbmdlOlUrMzcwLTM3NyxVKzM3QS0zN0YsVSszODQtMzhBLFUrMzhDLFUrMzhFLTNBMSxVKzNBMy0zRkZ9QGZvbnQtZmFjZXtmb250LWZhbWlseTpJbnRlcjtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDoxMDAgOTAwO2ZvbnQtZGlzcGxheTpvcHRpb25hbDtzcmM6dXJsKC9fbmV4dC9zdGF0aWMvbWVkaWEvMmJiZThkMjY3MTYxM2YxZi1zLjc2ZGNiMGIyLndvZmYyKWZvcm1hdChcIndvZmYyXCIpO3VuaWNvZGUtcmFuZ2U6VSsxMDItMTAzLFUrMTEwLTExMSxVKzEyOC0xMjksVSsxNjgtMTY5LFUrMUEwLTFBMSxVKzFBRi0xQjAsVSszMDAtMzAxLFUrMzAzLTMwNCxVKzMwOC0zMDksVSszMjMsVSszMjksVSsxRUEwLTFFRjksVSsyMEFCfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXI7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6MTAwIDkwMDtmb250LWRpc3BsYXk6b3B0aW9uYWw7c3JjOnVybCgvX25leHQvc3RhdGljL21lZGlhLzFiZmZhZGFhYmY4OTNhMWUtcy43Y2Q4MTk2My53b2ZmMilmb3JtYXQoXCJ3b2ZmMlwiKTt1bmljb2RlLXJhbmdlOlUrMTAwLTJCQSxVKzJCRC0yQzUsVSsyQzctMkNDLFUrMkNFLTJENyxVKzJERC0yRkYsVSszMDQsVSszMDgsVSszMjksVSsxRDAwLTFEQkYsVSsxRTAwLTFFOUYsVSsxRUYyLTFFRkYsVSsyMDIwLFUrMjBBMC0yMEFCLFUrMjBBRC0yMEMwLFUrMjExMyxVKzJDNjAtMkM3RixVK0E3MjAtQTdGRn1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OkludGVyO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjEwMCA5MDA7Zm9udC1kaXNwbGF5Om9wdGlvbmFsO3NyYzp1cmwoL19uZXh0L3N0YXRpYy9tZWRpYS84M2FmZTI3OGI2YTZiYjNjLXMucC4zYTZiYTAzNi53b2ZmMilmb3JtYXQoXCJ3b2ZmMlwiKTt1bmljb2RlLXJhbmdlOlUrPz8sVSsxMzEsVSsxNTItMTUzLFUrMkJCLTJCQyxVKzJDNixVKzJEQSxVKzJEQyxVKzMwNCxVKzMwOCxVKzMyOSxVKzIwMDAtMjA2RixVKzIwQUMsVSsyMTIyLFUrMjE5MSxVKzIxOTMsVSsyMjEyLFUrMjIxNSxVK0ZFRkYsVStGRkZEfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6SW50ZXIgRmFsbGJhY2s7c3JjOmxvY2FsKEFyaWFsKTthc2NlbnQtb3ZlcnJpZGU6OTAuNDQlO2Rlc2NlbnQtb3ZlcnJpZGU6MjIuNTIlO2xpbmUtZ2FwLW92ZXJyaWRlOjAuMCU7c2l6ZS1hZGp1c3Q6MTA3LjEyJX0uaW50ZXJfMWVjNGRkOWYtbW9kdWxlX19VTVBhS0dfX2NsYXNzTmFtZXtmb250LWZhbWlseTpJbnRlcixJbnRlciBGYWxsYmFjaztmb250LXN0eWxlOm5vcm1hbH0uaW50ZXJfMWVjNGRkOWYtbW9kdWxlX19VTVBhS0dfX3ZhcmlhYmxley0tZm9udC1pbnRlcjpcIkludGVyXCIsXCJJbnRlciBGYWxsYmFja1wifVxuIl0pPC9zY3JpcHQ+PHNjcmlwdD5zZWxmLl9fbmV4dF9mLnB1c2goWzEsIjM6VDFkNmU4LCJdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCJAbGF5ZXIgcHJvcGVydGllc3tAc3VwcG9ydHMgKCgoLXdlYmtpdC1oeXBoZW5zOm5vbmUpKSBhbmQgKG5vdCAobWFyZ2luLXRyaW06aW5saW5lKSkpIG9yICgoLW1vei1vcmllbnQ6aW5saW5lKSBhbmQgKG5vdCAoY29sb3I6cmdiKGZyb20gcmVkIHIgZyBiKSkpKXsqLDpiZWZvcmUsOmFmdGVyLDo6YmFja2Ryb3B7LS10dy10cmFuc2xhdGUteDowOy0tdHctdHJhbnNsYXRlLXk6MDstLXR3LXRyYW5zbGF0ZS16OjA7LS10dy1yb3RhdGUteDppbml0aWFsOy0tdHctcm90YXRlLXk6aW5pdGlhbDstLXR3LXJvdGF0ZS16OmluaXRpYWw7LS10dy1za2V3LXg6aW5pdGlhbDstLXR3LXNrZXcteTppbml0aWFsOy0tdHctc3BhY2UteS1yZXZlcnNlOjA7LS10dy1zcGFjZS14LXJldmVyc2U6MDstLXR3LWRpdmlkZS15LXJldmVyc2U6MDstLXR3LWJvcmRlci1zdHlsZTpzb2xpZDstLXR3LWdyYWRpZW50LXBvc2l0aW9uOmluaXRpYWw7LS10dy1ncmFkaWVudC1mcm9tOiMwMDAwOy0tdHctZ3JhZGllbnQtdmlhOiMwMDAwOy0tdHctZ3JhZGllbnQtdG86IzAwMDA7LS10dy1ncmFkaWVudC1zdG9wczppbml0aWFsOy0tdHctZ3JhZGllbnQtdmlhLXN0b3BzOmluaXRpYWw7LS10dy1ncmFkaWVudC1mcm9tLXBvc2l0aW9uOjAlOy0tdHctZ3JhZGllbnQtdmlhLXBvc2l0aW9uOjUwJTstLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9uOjEwMCU7LS10dy1sZWFkaW5nOmluaXRpYWw7LS10dy1mb250LXdlaWdodDppbml0aWFsOy0tdHctdHJhY2tpbmc6aW5pdGlhbDstLXR3LW9yZGluYWw6aW5pdGlhbDstLXR3LXNsYXNoZWQtemVybzppbml0aWFsOy0tdHctbnVtZXJpYy1maWd1cmU6aW5pdGlhbDstLXR3LW51bWVyaWMtc3BhY2luZzppbml0aWFsOy0tdHctbnVtZXJpYy1mcmFjdGlvbjppbml0aWFsOy0tdHctc2hhZG93OjAgMCAjMDAwMDstLXR3LXNoYWRvdy1jb2xvcjppbml0aWFsOy0tdHctc2hhZG93LWFscGhhOjEwMCU7LS10dy1pbnNldC1zaGFkb3c6MCAwICMwMDAwOy0tdHctaW5zZXQtc2hhZG93LWNvbG9yOmluaXRpYWw7LS10dy1pbnNldC1zaGFkb3ctYWxwaGE6MTAwJTstLXR3LXJpbmctY29sb3I6aW5pdGlhbDstLXR3LXJpbmctc2hhZG93OjAgMCAjMDAwMDstLXR3LWluc2V0LXJpbmctY29sb3I6aW5pdGlhbDstLXR3LWluc2V0LXJpbmctc2hhZG93OjAgMCAjMDAwMDstLXR3LXJpbmctaW5zZXQ6aW5pdGlhbDstLXR3LXJpbmctb2Zmc2V0LXdpZHRoOjBweDstLXR3LXJpbmctb2Zmc2V0LWNvbG9yOiNmZmY7LS10dy1yaW5nLW9mZnNldC1zaGFkb3c6MCAwICMwMDAwOy0tdHctb3V0bGluZS1zdHlsZTpzb2xpZDstLXR3LWJsdXI6aW5pdGlhbDstLXR3LWJyaWdodG5lc3M6aW5pdGlhbDstLXR3LWNvbnRyYXN0OmluaXRpYWw7LS10dy1ncmF5c2NhbGU6aW5pdGlhbDstLXR3LWh1ZS1yb3RhdGU6aW5pdGlhbDstLXR3LWludmVydDppbml0aWFsOy0tdHctb3BhY2l0eTppbml0aWFsOy0tdHctc2F0dXJhdGU6aW5pdGlhbDstLXR3LXNlcGlhOmluaXRpYWw7LS10dy1kcm9wLXNoYWRvdzppbml0aWFsOy0tdHctZHJvcC1zaGFkb3ctY29sb3I6aW5pdGlhbDstLXR3LWRyb3Atc2hhZG93LWFscGhhOjEwMCU7LS10dy1kcm9wLXNoYWRvdy1zaXplOmluaXRpYWw7LS10dy1iYWNrZHJvcC1ibHVyOmluaXRpYWw7LS10dy1iYWNrZHJvcC1icmlnaHRuZXNzOmluaXRpYWw7LS10dy1iYWNrZHJvcC1jb250cmFzdDppbml0aWFsOy0tdHctYmFja2Ryb3AtZ3JheXNjYWxlOmluaXRpYWw7LS10dy1iYWNrZHJvcC1odWUtcm90YXRlOmluaXRpYWw7LS10dy1iYWNrZHJvcC1pbnZlcnQ6aW5pdGlhbDstLXR3LWJhY2tkcm9wLW9wYWNpdHk6aW5pdGlhbDstLXR3LWJhY2tkcm9wLXNhdHVyYXRlOmluaXRpYWw7LS10dy1iYWNrZHJvcC1zZXBpYTppbml0aWFsOy0tdHctZHVyYXRpb246aW5pdGlhbDstLXR3LWVhc2U6aW5pdGlhbDstLXR3LWNvbnRlbnQ6XCJcIjstLXR3LWFuaW1hdGlvbi1kZWxheTowczstLXR3LWFuaW1hdGlvbi1kaXJlY3Rpb246bm9ybWFsOy0tdHctYW5pbWF0aW9uLWR1cmF0aW9uOmluaXRpYWw7LS10dy1hbmltYXRpb24tZmlsbC1tb2RlOm5vbmU7LS10dy1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OjE7LS10dy1lbnRlci1ibHVyOjA7LS10dy1lbnRlci1vcGFjaXR5OjE7LS10dy1lbnRlci1yb3RhdGU6MDstLXR3LWVudGVyLXNjYWxlOjE7LS10dy1lbnRlci10cmFuc2xhdGUteDowOy0tdHctZW50ZXItdHJhbnNsYXRlLXk6MDstLXR3LWV4aXQtYmx1cjowOy0tdHctZXhpdC1vcGFjaXR5OjE7LS10dy1leGl0LXJvdGF0ZTowOy0tdHctZXhpdC1zY2FsZToxOy0tdHctZXhpdC10cmFuc2xhdGUteDowOy0tdHctZXhpdC10cmFuc2xhdGUteTowfX19QGxheWVyIHRoZW1lezpyb290LDpob3N0ey0tY29sb3ItcmVkLTUwMDojZmIyYzM2Oy0tY29sb3Itb3JhbmdlLTUwMDojZmU2ZTAwOy0tY29sb3ItZ3JlZW4tNDAwOiMwNWRmNzI7LS1jb2xvci1ncmVlbi02MDA6IzAwYTU0NDstLWNvbG9yLWJsYWNrOiMwMDA7LS1jb2xvci13aGl0ZTojZmZmOy0tc3BhY2luZzouMjVyZW07LS1jb250YWluZXIteHM6MjByZW07LS1jb250YWluZXItc206MjRyZW07LS1jb250YWluZXItbWQ6MjhyZW07LS1jb250YWluZXItbGc6MzJyZW07LS1jb250YWluZXIteGw6MzZyZW07LS1jb250YWluZXItMnhsOjQycmVtOy0tY29udGFpbmVyLTN4bDo0OHJlbTstLWNvbnRhaW5lci00eGw6NTZyZW07LS1jb250YWluZXItN3hsOjgwcmVtOy0tdGV4dC14czouNzVyZW07LS10ZXh0LXhzLS1saW5lLWhlaWdodDpjYWxjKDEvLjc1KTstLXRleHQtc206Ljg3NXJlbTstLXRleHQtc20tLWxpbmUtaGVpZ2h0OmNhbGMoMS4yNS8uODc1KTstLXRleHQtYmFzZToxcmVtOy0tdGV4dC1iYXNlLS1saW5lLWhlaWdodDpjYWxjKDEuNS8xKTstLXRleHQtbGc6MS4xMjVyZW07LS10ZXh0LWxnLS1saW5lLWhlaWdodDpjYWxjKDEuNzUvMS4xMjUpOy0tdGV4dC14bDoxLjI1cmVtOy0tdGV4dC14bC0tbGluZS1oZWlnaHQ6Y2FsYygxLjc1LzEuMjUpOy0tdGV4dC0yeGw6MS41cmVtOy0tdGV4dC0yeGwtLWxpbmUtaGVpZ2h0OmNhbGMoMi8xLjUpOy0tdGV4dC0zeGw6MS44NzVyZW07LS10ZXh0LTN4bC0tbGluZS1oZWlnaHQ6Y2FsYygyLjI1LzEuODc1KTstLXRleHQtNHhsOjIuMjVyZW07LS10ZXh0LTR4bC0tbGluZS1oZWlnaHQ6Y2FsYygyLjUvMi4yNSk7LS10ZXh0LTZ4bDozLjc1cmVtOy0tdGV4dC02eGwtLWxpbmUtaGVpZ2h0OjE7LS1mb250LXdlaWdodC1ub3JtYWw6NDAwOy0tZm9udC13ZWlnaHQtbWVkaXVtOjUwMDstLWZvbnQtd2VpZ2h0LXNlbWlib2xkOjYwMDstLWZvbnQtd2VpZ2h0LWJvbGQ6NzAwOy0tdHJhY2tpbmctdGlnaHQ6LS4wMjVlbTstLXRyYWNraW5nLXdpZGU6LjAyNWVtOy0tdHJhY2tpbmctd2lkZXN0Oi4xZW07LS1sZWFkaW5nLXRpZ2h0OjEuMjU7LS1sZWFkaW5nLXNudWc6MS4zNzU7LS1sZWFkaW5nLXJlbGF4ZWQ6MS42MjU7LS1yYWRpdXMtbWQ6Y2FsYyh2YXIoLS1yYWRpdXMpKi44KTstLWVhc2UtaW4tb3V0OmN1YmljLWJlemllciguNCwwLC4yLDEpOy0tYW5pbWF0ZS1zcGluOnNwaW4gMXMgbGluZWFyIGluZmluaXRlOy0tYW5pbWF0ZS1wdWxzZTpwdWxzZSAycyBjdWJpYy1iZXppZXIoLjQsMCwuNiwxKWluZmluaXRlOy0tYmx1ci14czo0cHg7LS1ibHVyLXNtOjhweDstLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbjouMTVzOy0tZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTstLWRlZmF1bHQtZm9udC1mYW1pbHk6dmFyKC0tZm9udC1pbnRlciksXCJJbnRlclwiLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZjstLWRlZmF1bHQtbW9uby1mb250LWZhbWlseTp2YXIoLS1mb250LWludGVyKSxcIkludGVyXCIsdWktc2Fucy1zZXJpZixzeXN0ZW0tdWksLWFwcGxlLXN5c3RlbSxzYW5zLXNlcmlmfUBzdXBwb3J0cyAoY29sb3I6bGFiKDAlIDAgMCkpezpyb290LDpob3N0ey0tY29sb3ItcmVkLTUwMDpsYWIoNTUuNDgxNCUgNzUuMDczMiA0OC44NTI4KTstLWNvbG9yLW9yYW5nZS01MDA6bGFiKDY0LjI3MiUgNTcuMTc4OCA5MC4zNTgzKTstLWNvbG9yLWdyZWVuLTQwMDpsYWIoNzguNTAzJSAtNjQuOTI2NSAzOS43NDkyKTstLWNvbG9yLWdyZWVuLTYwMDpsYWIoNTkuMDk3OCUgLTU4LjY2MjEgNDEuMjU3OSl9fX1AbGF5ZXIgYmFzZXsqLDphZnRlciw6YmVmb3JlLDo6YmFja2Ryb3B7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjowIHNvbGlkO21hcmdpbjowO3BhZGRpbmc6MH06OmZpbGUtc2VsZWN0b3ItYnV0dG9ue2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6MCBzb2xpZDttYXJnaW46MDtwYWRkaW5nOjB9aHRtbCw6aG9zdHstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTt0YWItc2l6ZTo0O2xpbmUtaGVpZ2h0OjEuNTtmb250LWZhbWlseTp2YXIoLS1kZWZhdWx0LWZvbnQtZmFtaWx5LHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLHNhbnMtc2VyaWYsXCJBcHBsZSBDb2xvciBFbW9qaVwiLFwiU2Vnb2UgVUkgRW1vamlcIixcIlNlZ29lIFVJIFN5bWJvbFwiLFwiTm90byBDb2xvciBFbW9qaVwiKTtmb250LWZlYXR1cmUtc2V0dGluZ3M6dmFyKC0tZGVmYXVsdC1mb250LWZlYXR1cmUtc2V0dGluZ3Msbm9ybWFsKTtmb250LXZhcmlhdGlvbi1zZXR0aW5nczp2YXIoLS1kZWZhdWx0LWZvbnQtdmFyaWF0aW9uLXNldHRpbmdzLG5vcm1hbCk7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fWhye2hlaWdodDowO2NvbG9yOmluaGVyaXQ7Ym9yZGVyLXRvcC13aWR0aDoxcHh9YWJicjp3aGVyZShbdGl0bGVdKXstd2Via2l0LXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgZG90dGVkO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgZG90dGVkfWgxLGgyLGgzLGg0LGg1LGg2e2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtd2VpZ2h0OmluaGVyaXR9YXtjb2xvcjppbmhlcml0Oy13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb246aW5oZXJpdDstd2Via2l0LXRleHQtZGVjb3JhdGlvbjppbmhlcml0Oy13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXR9YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfWNvZGUsa2JkLHNhbXAscHJle2ZvbnQtZmFtaWx5OnZhcigtLWRlZmF1bHQtbW9uby1mb250LWZhbWlseSx1aS1tb25vc3BhY2UsU0ZNb25vLVJlZ3VsYXIsTWVubG8sTW9uYWNvLENvbnNvbGFzLFwiTGliZXJhdGlvbiBNb25vXCIsXCJDb3VyaWVyIE5ld1wiLG1vbm9zcGFjZSk7Zm9udC1mZWF0dXJlLXNldHRpbmdzOnZhcigtLWRlZmF1bHQtbW9uby1mb250LWZlYXR1cmUtc2V0dGluZ3Msbm9ybWFsKTtmb250LXZhcmlhdGlvbi1zZXR0aW5nczp2YXIoLS1kZWZhdWx0LW1vbm8tZm9udC12YXJpYXRpb24tc2V0dGluZ3Msbm9ybWFsKTtmb250LXNpemU6MWVtfXNtYWxse2ZvbnQtc2l6ZTo4MCV9c3ViLHN1cHt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTtmb250LXNpemU6NzUlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmV9c3Vie2JvdHRvbTotLjI1ZW19c3Vwe3RvcDotLjVlbX10YWJsZXt0ZXh0LWluZGVudDowO2JvcmRlci1jb2xvcjppbmhlcml0O2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZX06LW1vei1mb2N1c3Jpbmd7b3V0bGluZTphdXRvfXByb2dyZXNze3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXN1bW1hcnl7ZGlzcGxheTpsaXN0LWl0ZW19b2wsdWwsbWVudXtsaXN0LXN0eWxlOm5vbmV9aW1nLHN2Zyx2aWRlbyxjYW52YXMsYXVkaW8saWZyYW1lLGVtYmVkLG9iamVjdHt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7ZGlzcGxheTpibG9ja31pbWcsdmlkZW97bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG99YnV0dG9uLGlucHV0LHNlbGVjdCxvcHRncm91cCx0ZXh0YXJlYXtmb250OmluaGVyaXQ7Zm9udC1mZWF0dXJlLXNldHRpbmdzOmluaGVyaXQ7Zm9udC12YXJpYXRpb24tc2V0dGluZ3M6aW5oZXJpdDtsZXR0ZXItc3BhY2luZzppbmhlcml0O2NvbG9yOmluaGVyaXQ7b3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6IzAwMDA7Ym9yZGVyLXJhZGl1czowfTo6ZmlsZS1zZWxlY3Rvci1idXR0b257Zm9udDppbmhlcml0O2ZvbnQtZmVhdHVyZS1zZXR0aW5nczppbmhlcml0O2ZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOmluaGVyaXQ7bGV0dGVyLXNwYWNpbmc6aW5oZXJpdDtjb2xvcjppbmhlcml0O29wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JvcmRlci1yYWRpdXM6MH06d2hlcmUoc2VsZWN0OmlzKFttdWx0aXBsZV0sW3NpemVdKSkgb3B0Z3JvdXB7Zm9udC13ZWlnaHQ6Ym9sZGVyfTp3aGVyZShzZWxlY3Q6aXMoW211bHRpcGxlXSxbc2l6ZV0pKSBvcHRncm91cCBvcHRpb257cGFkZGluZy1pbmxpbmUtc3RhcnQ6MjBweH06OmZpbGUtc2VsZWN0b3ItYnV0dG9ue21hcmdpbi1pbmxpbmUtZW5kOjRweH06OnBsYWNlaG9sZGVye29wYWNpdHk6MX1Ac3VwcG9ydHMgKG5vdCAoKC13ZWJraXQtYXBwZWFyYW5jZTotYXBwbGUtcGF5LWJ1dHRvbikpKSBvciAoY29udGFpbi1pbnRyaW5zaWMtc2l6ZToxcHgpezo6cGxhY2Vob2xkZXJ7Y29sb3I6Y3VycmVudENvbG9yfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXs6OnBsYWNlaG9sZGVye2NvbG9yOmNvbG9yLW1peChpbiBva2xhYixjdXJyZW50Y29sb3IgNTAlLHRyYW5zcGFyZW50KX19fXRleHRhcmVhe3Jlc2l6ZTp2ZXJ0aWNhbH06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9Ojotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWV7bWluLWhlaWdodDoxbGg7dGV4dC1hbGlnbjppbmhlcml0fTo6LXdlYmtpdC1kYXRldGltZS1lZGl0e2Rpc3BsYXk6aW5saW5lLWZsZXh9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXJ7cGFkZGluZzowfTo6LXdlYmtpdC1kYXRldGltZS1lZGl0e3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51dGUtZmllbGR7cGFkZGluZy1ibG9jazowfTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXNlY29uZC1maWVsZHtwYWRkaW5nLWJsb2NrOjB9Ojotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWlsbGlzZWNvbmQtZmllbGR7cGFkZGluZy1ibG9jazowfTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1lcmlkaWVtLWZpZWxke3BhZGRpbmctYmxvY2s6MH06Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvcntsaW5lLWhlaWdodDoxfTotbW96LXVpLWludmFsaWR7Ym94LXNoYWRvdzpub25lfWJ1dHRvbixpbnB1dDp3aGVyZShbdHlwZT1idXR0b25dLFt0eXBlPXJlc2V0XSxbdHlwZT1zdWJtaXRdKXthcHBlYXJhbmNlOmJ1dHRvbn06OmZpbGUtc2VsZWN0b3ItYnV0dG9ue2FwcGVhcmFuY2U6YnV0dG9ufTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b306Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99W2hpZGRlbl06d2hlcmUoOm5vdChbaGlkZGVuPXVudGlsLWZvdW5kXSkpe2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9Kntib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyKTtvdXRsaW5lLWNvbG9yOnZhcigtLXJpbmcpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsqe291dGxpbmUtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXJpbmcpNTAlLHRyYW5zcGFyZW50KX19Ym9keXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJhY2tncm91bmQpO2NvbG9yOnZhcigtLWZvcmVncm91bmQpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtaW50ZXIpLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZn1jb2RlLHByZSxrYmR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1pbnRlciksXCJJbnRlclwiLHVpLXNhbnMtc2VyaWYsc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sc2Fucy1zZXJpZn19QGxheWVyIGNvbXBvbmVudHM7QGxheWVyIHV0aWxpdGllc3suXFxAY29udGFpbmVyXFwvY2FyZC1oZWFkZXJ7Y29udGFpbmVyOmNhcmQtaGVhZGVyL2lubGluZS1zaXplfS5wb2ludGVyLWV2ZW50cy1ub25le3BvaW50ZXItZXZlbnRzOm5vbmV9LmNvbGxhcHNle3Zpc2liaWxpdHk6Y29sbGFwc2V9LnZpc2libGV7dmlzaWJpbGl0eTp2aXNpYmxlfS5zci1vbmx5e2NsaXAtcGF0aDppbnNldCg1MCUpO3doaXRlLXNwYWNlOm5vd3JhcDtib3JkZXItd2lkdGg6MDt3aWR0aDoxcHg7aGVpZ2h0OjFweDttYXJnaW46LTFweDtwYWRkaW5nOjA7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVufS5hYnNvbHV0ZXtwb3NpdGlvbjphYnNvbHV0ZX0uZml4ZWR7cG9zaXRpb246Zml4ZWR9LnJlbGF0aXZle3Bvc2l0aW9uOnJlbGF0aXZlfS5zdGF0aWN7cG9zaXRpb246c3RhdGljfS5zdGlja3l7cG9zaXRpb246c3RpY2t5fS5pbnNldC0we2luc2V0OmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmluc2V0LXgtMHtpbnNldC1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uaW5zZXQteC00e2luc2V0LWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5pbnNldC15LTB7aW5zZXQtYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uc3RhcnR7aW5zZXQtaW5saW5lLXN0YXJ0OnZhcigtLXNwYWNpbmcpfS5lbmR7aW5zZXQtaW5saW5lLWVuZDp2YXIoLS1zcGFjaW5nKX0uLXRvcC0ye3RvcDpjYWxjKHZhcigtLXNwYWNpbmcpKi0yKX0udG9wLTB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMCl9LnRvcC0wXFwuNXt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9LnRvcC0xXFwvMnt0b3A6NTAlfS50b3AtMVxcLzN7dG9wOjMzLjMzMzMlfS50b3AtMnt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0udG9wLTN7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMyl9LnRvcC0xNHt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNCl9LnRvcC0xMDB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMTAwKX0udG9wLTEwMDB7dG9wOmNhbGModmFyKC0tc3BhY2luZykqMTAwMCl9LnRvcC1mdWxse3RvcDoxMDAlfS4tcmlnaHQtMntyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKi0yKX0ucmlnaHQtMHtyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5yaWdodC0ye3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9LnJpZ2h0LTJcXC41e3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMi41KX0ucmlnaHQtM3tyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5ib3R0b20tMHtib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uYm90dG9tLTIwe2JvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjIwKX0ubGVmdC0we2xlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0ubGVmdC0wXFwuNXtsZWZ0OmNhbGModmFyKC0tc3BhY2luZykqLjUpfS5sZWZ0LTFcXC8ye2xlZnQ6NTAlfS5sZWZ0LTJcXC41e2xlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5sZWZ0LTN7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5sZWZ0LTR7bGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5sZWZ0LTEwe2xlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9Lmlzb2xhdGV7aXNvbGF0aW9uOmlzb2xhdGV9LnotMTB7ei1pbmRleDoxMH0uei0yMHt6LWluZGV4OjIwfS56LTMwe3otaW5kZXg6MzB9LnotNDB7ei1pbmRleDo0MH0uei01MHt6LWluZGV4OjUwfS5vcmRlci1maXJzdHtvcmRlcjotOTk5OX0ub3JkZXItbGFzdHtvcmRlcjo5OTk5fS5jb2wtc3RhcnQtMntncmlkLWNvbHVtbi1zdGFydDoyfS5yb3ctc3Bhbi0ye2dyaWQtcm93OnNwYW4gMi9zcGFuIDJ9LnJvdy1zdGFydC0xe2dyaWQtcm93LXN0YXJ0OjF9LmNvbnRhaW5lcnt3aWR0aDoxMDAlfUBtZWRpYSAobWluLXdpZHRoOjQwcmVtKXsuY29udGFpbmVye21heC13aWR0aDo0MHJlbX19QG1lZGlhIChtaW4td2lkdGg6NDhyZW0pey5jb250YWluZXJ7bWF4LXdpZHRoOjQ4cmVtfX1AbWVkaWEgKG1pbi13aWR0aDo2NHJlbSl7LmNvbnRhaW5lcnttYXgtd2lkdGg6NjRyZW19fUBtZWRpYSAobWluLXdpZHRoOjgwcmVtKXsuY29udGFpbmVye21heC13aWR0aDo4MHJlbX19QG1lZGlhIChtaW4td2lkdGg6OTZyZW0pey5jb250YWluZXJ7bWF4LXdpZHRoOjk2cmVtfX0uLW14LTF7bWFyZ2luLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKi0xKX0uLW14LTR7bWFyZ2luLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKi00KX0ubXgtMXttYXJnaW4taW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqMSl9Lm14LTR7bWFyZ2luLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5teC1hdXRve21hcmdpbi1pbmxpbmU6YXV0b30ubXktMXttYXJnaW4tYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ubXktMnttYXJnaW4tYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucHJvc2V7Y29sb3I6dmFyKC0tdHctcHJvc2UtYm9keSk7bWF4LXdpZHRoOjY1Y2h9LnByb3NlIDp3aGVyZShwKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4yNWVtO21hcmdpbi1ib3R0b206MS4yNWVtfS5wcm9zZSA6d2hlcmUoW2NsYXNzfj1sZWFkXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1sZWFkKTttYXJnaW4tdG9wOjEuMmVtO21hcmdpbi1ib3R0b206MS4yZW07Zm9udC1zaXplOjEuMjVlbTtsaW5lLWhlaWdodDoxLjZ9LnByb3NlIDp3aGVyZShhKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWxpbmtzKTtmb250LXdlaWdodDo1MDA7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ucHJvc2UgOndoZXJlKHN0cm9uZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1ib2xkKTtmb250LXdlaWdodDo2MDB9LnByb3NlIDp3aGVyZShhIHN0cm9uZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKGJsb2NrcXVvdGUgc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUodGhlYWQgdGggc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOmluaGVyaXR9LnByb3NlIDp3aGVyZShvbCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMjVlbTttYXJnaW4tYm90dG9tOjEuMjVlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjYyNWVtO2xpc3Qtc3R5bGUtdHlwZTpkZWNpbWFsfS5wcm9zZSA6d2hlcmUob2xbdHlwZT1BXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6dXBwZXItYWxwaGF9LnByb3NlIDp3aGVyZShvbFt0eXBlPWFdKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTpsb3dlci1hbHBoYX0ucHJvc2UgOndoZXJlKG9sW3R5cGU9QSBzXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6dXBwZXItYWxwaGF9LnByb3NlIDp3aGVyZShvbFt0eXBlPWEgc10pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmxvd2VyLWFscGhhfS5wcm9zZSA6d2hlcmUob2xbdHlwZT1JXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6dXBwZXItcm9tYW59LnByb3NlIDp3aGVyZShvbFt0eXBlPWldKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2xpc3Qtc3R5bGUtdHlwZTpsb3dlci1yb21hbn0ucHJvc2UgOndoZXJlKG9sW3R5cGU9SSBzXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtsaXN0LXN0eWxlLXR5cGU6dXBwZXItcm9tYW59LnByb3NlIDp3aGVyZShvbFt0eXBlPWkgc10pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmxvd2VyLXJvbWFufS5wcm9zZSA6d2hlcmUob2xbdHlwZT1cIjFcIl0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bGlzdC1zdHlsZS10eXBlOmRlY2ltYWx9LnByb3NlIDp3aGVyZSh1bCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMjVlbTttYXJnaW4tYm90dG9tOjEuMjVlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjYyNWVtO2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5wcm9zZSA6d2hlcmUob2xcdTAwM2VsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKTo6bWFya2Vye2NvbG9yOnZhcigtLXR3LXByb3NlLWNvdW50ZXJzKTtmb250LXdlaWdodDo0MDB9LnByb3NlIDp3aGVyZSh1bFx1MDAzZWxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpOjptYXJrZXJ7Y29sb3I6dmFyKC0tdHctcHJvc2UtYnVsbGV0cyl9LnByb3NlIDp3aGVyZShkdCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1oZWFkaW5ncyk7bWFyZ2luLXRvcDoxLjI1ZW07Zm9udC13ZWlnaHQ6NjAwfS5wcm9zZSA6d2hlcmUoaHIpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Ym9yZGVyLWNvbG9yOnZhcigtLXR3LXByb3NlLWhyKTtib3JkZXItdG9wLXdpZHRoOjFweDttYXJnaW4tdG9wOjNlbTttYXJnaW4tYm90dG9tOjNlbX0ucHJvc2UgOndoZXJlKGJsb2NrcXVvdGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6dmFyKC0tdHctcHJvc2UtcXVvdGVzKTtib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOi4yNXJlbTtib3JkZXItaW5saW5lLXN0YXJ0LWNvbG9yOnZhcigtLXR3LXByb3NlLXF1b3RlLWJvcmRlcnMpO3F1b3RlczpcIuKAnFwiXCLigJ1cIlwi4oCYXCJcIuKAmVwiO21hcmdpbi10b3A6MS42ZW07bWFyZ2luLWJvdHRvbToxLjZlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW07Zm9udC1zdHlsZTppdGFsaWM7Zm9udC13ZWlnaHQ6NTAwfS5wcm9zZSA6d2hlcmUoYmxvY2txdW90ZSBwOmZpcnN0LW9mLXR5cGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YmVmb3Jle2NvbnRlbnQ6b3Blbi1xdW90ZX0ucHJvc2UgOndoZXJlKGJsb2NrcXVvdGUgcDpsYXN0LW9mLXR5cGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YWZ0ZXJ7Y29udGVudDpjbG9zZS1xdW90ZX0ucHJvc2UgOndoZXJlKGgxKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouODg4ODg5ZW07Zm9udC1zaXplOjIuMjVlbTtmb250LXdlaWdodDo4MDA7bGluZS1oZWlnaHQ6MS4xMTExMX0ucHJvc2UgOndoZXJlKGgxIHN0cm9uZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0O2ZvbnQtd2VpZ2h0OjkwMH0ucHJvc2UgOndoZXJlKGgyKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjFlbTtmb250LXNpemU6MS41ZW07Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjEuMzMzMzN9LnByb3NlIDp3aGVyZShoMiBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdDtmb250LXdlaWdodDo4MDB9LnByb3NlIDp3aGVyZShoMyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1oZWFkaW5ncyk7bWFyZ2luLXRvcDoxLjZlbTttYXJnaW4tYm90dG9tOi42ZW07Zm9udC1zaXplOjEuMjVlbTtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MS42fS5wcm9zZSA6d2hlcmUoaDMgc3Ryb25nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOmluaGVyaXQ7Zm9udC13ZWlnaHQ6NzAwfS5wcm9zZSA6d2hlcmUoaDQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6dmFyKC0tdHctcHJvc2UtaGVhZGluZ3MpO21hcmdpbi10b3A6MS41ZW07bWFyZ2luLWJvdHRvbTouNWVtO2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjV9LnByb3NlIDp3aGVyZShoNCBzdHJvbmcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Y29sb3I6aW5oZXJpdDtmb250LXdlaWdodDo3MDB9LnByb3NlIDp3aGVyZShpbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoyZW07bWFyZ2luLWJvdHRvbToyZW19LnByb3NlIDp3aGVyZShwaWN0dXJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MmVtO21hcmdpbi1ib3R0b206MmVtO2Rpc3BsYXk6YmxvY2t9LnByb3NlIDp3aGVyZSh2aWRlbyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjJlbX0ucHJvc2UgOndoZXJlKGtiZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1rYmQpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLXR3LXByb3NlLWtiZC1zaGFkb3dzKSwwIDNweCAwIHZhcigtLXR3LXByb3NlLWtiZC1zaGFkb3dzKTtwYWRkaW5nLXRvcDouMTg3NWVtO3BhZGRpbmctaW5saW5lLWVuZDouMzc1ZW07cGFkZGluZy1ib3R0b206LjE4NzVlbTtib3JkZXItcmFkaXVzOi4zMTI1cmVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi4zNzVlbTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTouODc1ZW07Zm9udC13ZWlnaHQ6NTAwfS5wcm9zZSA6d2hlcmUoY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjp2YXIoLS10dy1wcm9zZS1jb2RlKTtmb250LXNpemU6Ljg3NWVtO2ZvbnQtd2VpZ2h0OjYwMH0ucHJvc2UgOndoZXJlKGNvZGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSk6YmVmb3JlLC5wcm9zZSA6d2hlcmUoY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKTphZnRlcntjb250ZW50OlwiYFwifS5wcm9zZSA6d2hlcmUoYSBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUoaDEgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0fS5wcm9zZSA6d2hlcmUoaDIgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0O2ZvbnQtc2l6ZTouODc1ZW19LnByb3NlIDp3aGVyZShoMyBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOmluaGVyaXQ7Zm9udC1zaXplOi45ZW19LnByb3NlIDp3aGVyZShoNCBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUoYmxvY2txdW90ZSBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUodGhlYWQgdGggY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtjb2xvcjppbmhlcml0fS5wcm9zZSA6d2hlcmUocHJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLXByZS1jb2RlKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR3LXByb3NlLXByZS1iZyk7cGFkZGluZy10b3A6Ljg1NzE0M2VtO3BhZGRpbmctaW5saW5lLWVuZDoxLjE0Mjg2ZW07cGFkZGluZy1ib3R0b206Ljg1NzE0M2VtO2JvcmRlci1yYWRpdXM6LjM3NXJlbTttYXJnaW4tdG9wOjEuNzE0MjllbTttYXJnaW4tYm90dG9tOjEuNzE0MjllbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjE0Mjg2ZW07Zm9udC1zaXplOi44NzVlbTtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MS43MTQyOTtvdmVyZmxvdy14OmF1dG99LnByb3NlIDp3aGVyZShwcmUgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXdlaWdodDppbmhlcml0O2NvbG9yOmluaGVyaXQ7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC1mYW1pbHk6aW5oZXJpdDtsaW5lLWhlaWdodDppbmhlcml0O2JhY2tncm91bmQtY29sb3I6IzAwMDA7Ym9yZGVyLXdpZHRoOjA7Ym9yZGVyLXJhZGl1czowO3BhZGRpbmc6MH0ucHJvc2UgOndoZXJlKHByZSBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpOmJlZm9yZSwucHJvc2UgOndoZXJlKHByZSBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpOmFmdGVye2NvbnRlbnQ6bm9uZX0ucHJvc2UgOndoZXJlKHRhYmxlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3RhYmxlLWxheW91dDphdXRvO3dpZHRoOjEwMCU7bWFyZ2luLXRvcDoyZW07bWFyZ2luLWJvdHRvbToyZW07Zm9udC1zaXplOi44NzVlbTtsaW5lLWhlaWdodDoxLjcxNDI5fS5wcm9zZSA6d2hlcmUodGhlYWQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Ym9yZGVyLWJvdHRvbS13aWR0aDoxcHg7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS10dy1wcm9zZS10aC1ib3JkZXJzKX0ucHJvc2UgOndoZXJlKHRoZWFkIHRoKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWhlYWRpbmdzKTt2ZXJ0aWNhbC1hbGlnbjpib3R0b207cGFkZGluZy1pbmxpbmUtZW5kOi41NzE0MjllbTtwYWRkaW5nLWJvdHRvbTouNTcxNDI5ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjU3MTQyOWVtO2ZvbnQtd2VpZ2h0OjYwMH0ucHJvc2UgOndoZXJlKHRib2R5IHRyKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2JvcmRlci1ib3R0b20td2lkdGg6MXB4O2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tdHctcHJvc2UtdGQtYm9yZGVycyl9LnByb3NlIDp3aGVyZSh0Ym9keSB0cjpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2JvcmRlci1ib3R0b20td2lkdGg6MH0ucHJvc2UgOndoZXJlKHRib2R5IHRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS5wcm9zZSA6d2hlcmUodGZvb3QpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7Ym9yZGVyLXRvcC13aWR0aDoxcHg7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS10dy1wcm9zZS10aC1ib3JkZXJzKX0ucHJvc2UgOndoZXJlKHRmb290IHRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3ZlcnRpY2FsLWFsaWduOnRvcH0ucHJvc2UgOndoZXJlKHRoLHRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3RleHQtYWxpZ246c3RhcnR9LnByb3NlIDp3aGVyZShmaWd1cmVcdTAwM2UqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjB9LnByb3NlIDp3aGVyZShmaWdjYXB0aW9uKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2NvbG9yOnZhcigtLXR3LXByb3NlLWNhcHRpb25zKTttYXJnaW4tdG9wOi44NTcxNDNlbTtmb250LXNpemU6Ljg3NWVtO2xpbmUtaGVpZ2h0OjEuNDI4NTd9LnByb3Nley0tdHctcHJvc2UtYm9keTojMzY0MTUzOy0tdHctcHJvc2UtaGVhZGluZ3M6IzEwMTgyODstLXR3LXByb3NlLWxlYWQ6IzRhNTU2NTstLXR3LXByb3NlLWxpbmtzOiMxMDE4Mjg7LS10dy1wcm9zZS1ib2xkOiMxMDE4Mjg7LS10dy1wcm9zZS1jb3VudGVyczojNmE3MjgyOy0tdHctcHJvc2UtYnVsbGV0czojZDFkNWRjOy0tdHctcHJvc2UtaHI6I2U1ZTdlYjstLXR3LXByb3NlLXF1b3RlczojMTAxODI4Oy0tdHctcHJvc2UtcXVvdGUtYm9yZGVyczojZTVlN2ViOy0tdHctcHJvc2UtY2FwdGlvbnM6IzZhNzI4MjstLXR3LXByb3NlLWtiZDojMTAxODI4Oy0tdHctcHJvc2Uta2JkLXNoYWRvd3M6IzEwMTgyODFhOy0tdHctcHJvc2UtY29kZTojMTAxODI4Oy0tdHctcHJvc2UtcHJlLWNvZGU6I2U1ZTdlYjstLXR3LXByb3NlLXByZS1iZzojMWUyOTM5Oy0tdHctcHJvc2UtdGgtYm9yZGVyczojZDFkNWRjOy0tdHctcHJvc2UtdGQtYm9yZGVyczojZTVlN2ViOy0tdHctcHJvc2UtaW52ZXJ0LWJvZHk6I2QxZDVkYzstLXR3LXByb3NlLWludmVydC1oZWFkaW5nczojZmZmOy0tdHctcHJvc2UtaW52ZXJ0LWxlYWQ6Izk5YTFhZjstLXR3LXByb3NlLWludmVydC1saW5rczojZmZmOy0tdHctcHJvc2UtaW52ZXJ0LWJvbGQ6I2ZmZjstLXR3LXByb3NlLWludmVydC1jb3VudGVyczojOTlhMWFmOy0tdHctcHJvc2UtaW52ZXJ0LWJ1bGxldHM6IzRhNTU2NTstLXR3LXByb3NlLWludmVydC1ocjojMzY0MTUzOy0tdHctcHJvc2UtaW52ZXJ0LXF1b3RlczojZjNmNGY2Oy0tdHctcHJvc2UtaW52ZXJ0LXF1b3RlLWJvcmRlcnM6IzM2NDE1MzstLXR3LXByb3NlLWludmVydC1jYXB0aW9uczojOTlhMWFmOy0tdHctcHJvc2UtaW52ZXJ0LWtiZDojZmZmOy0tdHctcHJvc2UtaW52ZXJ0LWtiZC1zaGFkb3dzOiNmZmZmZmYxYTstLXR3LXByb3NlLWludmVydC1jb2RlOiNmZmY7LS10dy1wcm9zZS1pbnZlcnQtcHJlLWNvZGU6I2QxZDVkYzstLXR3LXByb3NlLWludmVydC1wcmUtYmc6IzAwMDAwMDgwOy0tdHctcHJvc2UtaW52ZXJ0LXRoLWJvcmRlcnM6IzRhNTU2NTstLXR3LXByb3NlLWludmVydC10ZC1ib3JkZXJzOiMzNjQxNTM7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MS43NX1Ac3VwcG9ydHMgKGNvbG9yOmxhYigwJSAwIDApKXsucHJvc2V7LS10dy1wcm9zZS1ib2R5OmxhYigyNy4xMTM0JSAtLjk1NjQwMSAtMTIuMzIyNCk7LS10dy1wcm9zZS1oZWFkaW5nczpsYWIoOC4xMTg5NyUgLjgxMTI3OSAtMTIuMjU0KTstLXR3LXByb3NlLWxlYWQ6bGFiKDM1LjYzMzclIC0xLjU4Njk3IC0xMC44NDI1KTstLXR3LXByb3NlLWxpbmtzOmxhYig4LjExODk3JSAuODExMjc5IC0xMi4yNTQpOy0tdHctcHJvc2UtYm9sZDpsYWIoOC4xMTg5NyUgLjgxMTI3OSAtMTIuMjU0KTstLXR3LXByb3NlLWNvdW50ZXJzOmxhYig0Ny43ODQxJSAtLjM5MzE4MiAtMTAuMDI2OCk7LS10dy1wcm9zZS1idWxsZXRzOmxhYig4NS4xMjM2JSAtLjYxMjI1OSAtMy43MTM4KTstLXR3LXByb3NlLWhyOmxhYig5MS42MjI5JSAtLjE1OTExNSAtMi4yNjc5MSk7LS10dy1wcm9zZS1xdW90ZXM6bGFiKDguMTE4OTclIC44MTEyNzkgLTEyLjI1NCk7LS10dy1wcm9zZS1xdW90ZS1ib3JkZXJzOmxhYig5MS42MjI5JSAtLjE1OTExNSAtMi4yNjc5MSk7LS10dy1wcm9zZS1jYXB0aW9uczpsYWIoNDcuNzg0MSUgLS4zOTMxODIgLTEwLjAyNjgpOy0tdHctcHJvc2Uta2JkOmxhYig4LjExODk3JSAuODExMjc5IC0xMi4yNTQpOy0tdHctcHJvc2Uta2JkLXNoYWRvd3M6bGFiKDguMTE4OTclIC44MTEyNzkgLTEyLjI1NC8uMSk7LS10dy1wcm9zZS1jb2RlOmxhYig4LjExODk3JSAuODExMjc5IC0xMi4yNTQpOy0tdHctcHJvc2UtcHJlLWNvZGU6bGFiKDkxLjYyMjklIC0uMTU5MTE1IC0yLjI2NzkxKTstLXR3LXByb3NlLXByZS1iZzpsYWIoMTYuMTA1MSUgLTEuMTgyMzkgLTExLjc1MzMpOy0tdHctcHJvc2UtdGgtYm9yZGVyczpsYWIoODUuMTIzNiUgLS42MTIyNTkgLTMuNzEzOCk7LS10dy1wcm9zZS10ZC1ib3JkZXJzOmxhYig5MS42MjI5JSAtLjE1OTExNSAtMi4yNjc5MSk7LS10dy1wcm9zZS1pbnZlcnQtYm9keTpsYWIoODUuMTIzNiUgLS42MTIyNTkgLTMuNzEzOCk7LS10dy1wcm9zZS1pbnZlcnQtbGVhZDpsYWIoNjUuOTI2OSUgLS44MzI3MDcgLTguMTc0NzMpOy0tdHctcHJvc2UtaW52ZXJ0LWNvdW50ZXJzOmxhYig2NS45MjY5JSAtLjgzMjcwNyAtOC4xNzQ3Myk7LS10dy1wcm9zZS1pbnZlcnQtYnVsbGV0czpsYWIoMzUuNjMzNyUgLTEuNTg2OTcgLTEwLjg0MjUpOy0tdHctcHJvc2UtaW52ZXJ0LWhyOmxhYigyNy4xMTM0JSAtLjk1NjQwMSAtMTIuMzIyNCk7LS10dy1wcm9zZS1pbnZlcnQtcXVvdGVzOmxhYig5Ni4xNTk2JSAtLjA4MjM0MzggLTEuMTM1NzUpOy0tdHctcHJvc2UtaW52ZXJ0LXF1b3RlLWJvcmRlcnM6bGFiKDI3LjExMzQlIC0uOTU2NDAxIC0xMi4zMjI0KTstLXR3LXByb3NlLWludmVydC1jYXB0aW9uczpsYWIoNjUuOTI2OSUgLS44MzI3MDcgLTguMTc0NzMpOy0tdHctcHJvc2UtaW52ZXJ0LXByZS1jb2RlOmxhYig4NS4xMjM2JSAtLjYxMjI1OSAtMy43MTM4KTstLXR3LXByb3NlLWludmVydC10aC1ib3JkZXJzOmxhYigzNS42MzM3JSAtMS41ODY5NyAtMTAuODQyNSk7LS10dy1wcm9zZS1pbnZlcnQtdGQtYm9yZGVyczpsYWIoMjcuMTEzNCUgLS45NTY0MDEgLTEyLjMyMjQpfX0ucHJvc2UgOndoZXJlKHBpY3R1cmVcdTAwM2VpbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ucHJvc2UgOndoZXJlKGxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjVlbTttYXJnaW4tYm90dG9tOi41ZW19LnByb3NlIDp3aGVyZShvbFx1MDAzZWxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUodWxcdTAwM2VsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1zdGFydDouMzc1ZW19LnByb3NlIDp3aGVyZSgucHJvc2VcdTAwM2V1bFx1MDAzZWxpIHApOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNzVlbTttYXJnaW4tYm90dG9tOi43NWVtfS5wcm9zZSA6d2hlcmUoLnByb3NlXHUwMDNldWxcdTAwM2VsaVx1MDAzZXA6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjI1ZW19LnByb3NlIDp3aGVyZSgucHJvc2VcdTAwM2V1bFx1MDAzZWxpXHUwMDNlcDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi1ib3R0b206MS4yNWVtfS5wcm9zZSA6d2hlcmUoLnByb3NlXHUwMDNlb2xcdTAwM2VsaVx1MDAzZXA6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjI1ZW19LnByb3NlIDp3aGVyZSgucHJvc2VcdTAwM2VvbFx1MDAzZWxpXHUwMDNlcDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi1ib3R0b206MS4yNWVtfS5wcm9zZSA6d2hlcmUodWwgdWwsdWwgb2wsb2wgdWwsb2wgb2wpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNzVlbTttYXJnaW4tYm90dG9tOi43NWVtfS5wcm9zZSA6d2hlcmUoZGwpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjI1ZW07bWFyZ2luLWJvdHRvbToxLjI1ZW19LnByb3NlIDp3aGVyZShkZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi41ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6MS42MjVlbX0ucHJvc2UgOndoZXJlKGhyKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlIDp3aGVyZShoMisqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZSA6d2hlcmUoaDMrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UgOndoZXJlKGg0KyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowfS5wcm9zZSA6d2hlcmUodGhlYWQgdGg6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH0ucHJvc2UgOndoZXJlKHRoZWFkIHRoOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOjB9LnByb3NlIDp3aGVyZSh0Ym9keSB0ZCx0Zm9vdCB0ZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLXRvcDouNTcxNDI5ZW07cGFkZGluZy1pbmxpbmUtZW5kOi41NzE0MjllbTtwYWRkaW5nLWJvdHRvbTouNTcxNDI5ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjU3MTQyOWVtfS5wcm9zZSA6d2hlcmUodGJvZHkgdGQ6Zmlyc3QtY2hpbGQsdGZvb3QgdGQ6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH0ucHJvc2UgOndoZXJlKHRib2R5IHRkOmxhc3QtY2hpbGQsdGZvb3QgdGQ6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1lbmQ6MH0ucHJvc2UgOndoZXJlKGZpZ3VyZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjJlbX0ucHJvc2UgOndoZXJlKC5wcm9zZVx1MDAzZTpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjB9LnByb3NlIDp3aGVyZSgucHJvc2VcdTAwM2U6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjB9LnByb3NlLWxne2ZvbnQtc2l6ZToxLjEyNXJlbTtsaW5lLWhlaWdodDoxLjc3Nzc4fS5wcm9zZS1sZyA6d2hlcmUocCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbTttYXJnaW4tYm90dG9tOjEuMzMzMzNlbX0ucHJvc2UtbGcgOndoZXJlKFtjbGFzc349bGVhZF0pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjA5MDkxZW07bWFyZ2luLWJvdHRvbToxLjA5MDkxZW07Zm9udC1zaXplOjEuMjIyMjJlbTtsaW5lLWhlaWdodDoxLjQ1NDU1fS5wcm9zZS1sZyA6d2hlcmUoYmxvY2txdW90ZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNjY2NjdlbTttYXJnaW4tYm90dG9tOjEuNjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW19LnByb3NlLWxnIDp3aGVyZShoMSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouODMzMzMzZW07Zm9udC1zaXplOjIuNjY2NjdlbTtsaW5lLWhlaWdodDoxfS5wcm9zZS1sZyA6d2hlcmUoaDIpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjg2NjY3ZW07bWFyZ2luLWJvdHRvbToxLjA2NjY3ZW07Zm9udC1zaXplOjEuNjY2NjdlbTtsaW5lLWhlaWdodDoxLjMzMzMzfS5wcm9zZS1sZyA6d2hlcmUoaDMpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjY2NjY3ZW07bWFyZ2luLWJvdHRvbTouNjY2NjY3ZW07Zm9udC1zaXplOjEuMzMzMzNlbTtsaW5lLWhlaWdodDoxLjV9LnByb3NlLWxnIDp3aGVyZShoNCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNzc3NzhlbTttYXJnaW4tYm90dG9tOi40NDQ0NDRlbTtsaW5lLWhlaWdodDoxLjU1NTU2fS5wcm9zZS1sZyA6d2hlcmUoaW1nKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1sZyA6d2hlcmUocGljdHVyZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNzc3NzhlbTttYXJnaW4tYm90dG9tOjEuNzc3NzhlbX0ucHJvc2UtbGcgOndoZXJlKHBpY3R1cmVcdTAwM2VpbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ucHJvc2UtbGcgOndoZXJlKHZpZGVvKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS43Nzc3OGVtO21hcmdpbi1ib3R0b206MS43Nzc3OGVtfS5wcm9zZS1sZyA6d2hlcmUoa2JkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOi4yMjIyMjJlbTtwYWRkaW5nLWlubGluZS1lbmQ6LjQ0NDQ0NGVtO3BhZGRpbmctYm90dG9tOi4yMjIyMjJlbTtib3JkZXItcmFkaXVzOi4zMTI1cmVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi40NDQ0NDRlbTtmb250LXNpemU6Ljg4ODg4OWVtfS5wcm9zZS1sZyA6d2hlcmUoY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg4ODg4OWVtfS5wcm9zZS1sZyA6d2hlcmUoaDIgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg2NjY2N2VtfS5wcm9zZS1sZyA6d2hlcmUoaDMgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg3NWVtfS5wcm9zZS1sZyA6d2hlcmUocHJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOjFlbTtwYWRkaW5nLWlubGluZS1lbmQ6MS41ZW07cGFkZGluZy1ib3R0b206MWVtO2JvcmRlci1yYWRpdXM6LjM3NXJlbTttYXJnaW4tdG9wOjJlbTttYXJnaW4tYm90dG9tOjJlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjVlbTtmb250LXNpemU6Ljg4ODg4OWVtO2xpbmUtaGVpZ2h0OjEuNzV9LnByb3NlLWxnIDp3aGVyZShvbCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UtbGcgOndoZXJlKHVsKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4zMzMzM2VtO21hcmdpbi1ib3R0b206MS4zMzMzM2VtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjEuNTU1NTZlbX0ucHJvc2UtbGcgOndoZXJlKGxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjY2NjY2N2VtO21hcmdpbi1ib3R0b206LjY2NjY2N2VtfS5wcm9zZS1sZyA6d2hlcmUob2xcdTAwM2VsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UtbGcgOndoZXJlKHVsXHUwMDNlbGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjQ0NDQ0NGVtfS5wcm9zZS1sZyA6d2hlcmUoLnByb3NlLWxnXHUwMDNldWxcdTAwM2VsaSBwKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6Ljg4ODg4OWVtO21hcmdpbi1ib3R0b206Ljg4ODg4OWVtfS5wcm9zZS1sZyA6d2hlcmUoLnByb3NlLWxnXHUwMDNldWxcdTAwM2VsaVx1MDAzZXA6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjMzMzMzZW19LnByb3NlLWxnIDp3aGVyZSgucHJvc2UtbGdcdTAwM2V1bFx1MDAzZWxpXHUwMDNlcDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi1ib3R0b206MS4zMzMzM2VtfS5wcm9zZS1sZyA6d2hlcmUoLnByb3NlLWxnXHUwMDNlb2xcdTAwM2VsaVx1MDAzZXA6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjMzMzMzZW19LnByb3NlLWxnIDp3aGVyZSgucHJvc2UtbGdcdTAwM2VvbFx1MDAzZWxpXHUwMDNlcDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi1ib3R0b206MS4zMzMzM2VtfS5wcm9zZS1sZyA6d2hlcmUodWwgdWwsdWwgb2wsb2wgdWwsb2wgb2wpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouODg4ODg5ZW07bWFyZ2luLWJvdHRvbTouODg4ODg5ZW19LnByb3NlLWxnIDp3aGVyZShkbCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMzMzMzNlbTttYXJnaW4tYm90dG9tOjEuMzMzMzNlbX0ucHJvc2UtbGcgOndoZXJlKGR0KTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4zMzMzM2VtfS5wcm9zZS1sZyA6d2hlcmUoZGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDouNjY2NjY3ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6MS41NTU1NmVtfS5wcm9zZS1sZyA6d2hlcmUoaHIpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDozLjExMTExZW07bWFyZ2luLWJvdHRvbTozLjExMTExZW19LnByb3NlLWxnIDp3aGVyZShocisqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1sZyA6d2hlcmUoaDIrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2UtbGcgOndoZXJlKGgzKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLWxnIDp3aGVyZShoNCsqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MH0ucHJvc2UtbGcgOndoZXJlKHRhYmxlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2ZvbnQtc2l6ZTouODg4ODg5ZW07bGluZS1oZWlnaHQ6MS41fS5wcm9zZS1sZyA6d2hlcmUodGhlYWQgdGgpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOi43NWVtO3BhZGRpbmctYm90dG9tOi43NWVtO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi43NWVtfS5wcm9zZS1sZyA6d2hlcmUodGhlYWQgdGg6Zmlyc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH0ucHJvc2UtbGcgOndoZXJlKHRoZWFkIHRoOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOjB9LnByb3NlLWxnIDp3aGVyZSh0Ym9keSB0ZCx0Zm9vdCB0ZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLXRvcDouNzVlbTtwYWRkaW5nLWlubGluZS1lbmQ6Ljc1ZW07cGFkZGluZy1ib3R0b206Ljc1ZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6Ljc1ZW19LnByb3NlLWxnIDp3aGVyZSh0Ym9keSB0ZDpmaXJzdC1jaGlsZCx0Zm9vdCB0ZDpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtwYWRkaW5nLWlubGluZS1zdGFydDowfS5wcm9zZS1sZyA6d2hlcmUodGJvZHkgdGQ6bGFzdC1jaGlsZCx0Zm9vdCB0ZDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLWVuZDowfS5wcm9zZS1sZyA6d2hlcmUoZmlndXJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS43Nzc3OGVtO21hcmdpbi1ib3R0b206MS43Nzc3OGVtfS5wcm9zZS1sZyA6d2hlcmUoZmlndXJlXHUwMDNlKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowfS5wcm9zZS1sZyA6d2hlcmUoZmlnY2FwdGlvbik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjFlbTtmb250LXNpemU6Ljg4ODg4OWVtO2xpbmUtaGVpZ2h0OjEuNX0ucHJvc2UtbGcgOndoZXJlKC5wcm9zZS1sZ1x1MDAzZTpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjB9LnByb3NlLWxnIDp3aGVyZSgucHJvc2UtbGdcdTAwM2U6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjB9LnByb3NlLXNte2ZvbnQtc2l6ZTouODc1cmVtO2xpbmUtaGVpZ2h0OjEuNzE0Mjl9LnByb3NlLXNtIDp3aGVyZShwKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4xNDI4NmVtO21hcmdpbi1ib3R0b206MS4xNDI4NmVtfS5wcm9zZS1zbSA6d2hlcmUoW2NsYXNzfj1sZWFkXSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi44ODg4ODllbTttYXJnaW4tYm90dG9tOi44ODg4ODllbTtmb250LXNpemU6MS4yODU3MWVtO2xpbmUtaGVpZ2h0OjEuNTU1NTZ9LnByb3NlLXNtIDp3aGVyZShibG9ja3F1b3RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4zMzMzM2VtO21hcmdpbi1ib3R0b206MS4zMzMzM2VtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjEuMTExMTFlbX0ucHJvc2Utc20gOndoZXJlKGgxKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOi44ZW07Zm9udC1zaXplOjIuMTQyODZlbTtsaW5lLWhlaWdodDoxLjJ9LnByb3NlLXNtIDp3aGVyZShoMik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuNmVtO21hcmdpbi1ib3R0b206LjhlbTtmb250LXNpemU6MS40Mjg1N2VtO2xpbmUtaGVpZ2h0OjEuNH0ucHJvc2Utc20gOndoZXJlKGgzKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS41NTU1NmVtO21hcmdpbi1ib3R0b206LjQ0NDQ0NGVtO2ZvbnQtc2l6ZToxLjI4NTcxZW07bGluZS1oZWlnaHQ6MS41NTU1Nn0ucHJvc2Utc20gOndoZXJlKGg0KTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS40Mjg1N2VtO21hcmdpbi1ib3R0b206LjU3MTQyOWVtO2xpbmUtaGVpZ2h0OjEuNDI4NTd9LnByb3NlLXNtIDp3aGVyZShpbWcpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZShwaWN0dXJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS43MTQyOWVtO21hcmdpbi1ib3R0b206MS43MTQyOWVtfS5wcm9zZS1zbSA6d2hlcmUocGljdHVyZVx1MDAzZWltZyk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowfS5wcm9zZS1zbSA6d2hlcmUodmlkZW8pOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjcxNDI5ZW07bWFyZ2luLWJvdHRvbToxLjcxNDI5ZW19LnByb3NlLXNtIDp3aGVyZShrYmQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy10b3A6LjE0Mjg1N2VtO3BhZGRpbmctaW5saW5lLWVuZDouMzU3MTQzZW07cGFkZGluZy1ib3R0b206LjE0Mjg1N2VtO2JvcmRlci1yYWRpdXM6LjMxMjVyZW07cGFkZGluZy1pbmxpbmUtc3RhcnQ6LjM1NzE0M2VtO2ZvbnQtc2l6ZTouODU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2ZvbnQtc2l6ZTouODU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShoMiBjb2RlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe2ZvbnQtc2l6ZTouOWVtfS5wcm9zZS1zbSA6d2hlcmUoaDMgY29kZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg4ODg4OWVtfS5wcm9zZS1zbSA6d2hlcmUocHJlKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctdG9wOi42NjY2NjdlbTtwYWRkaW5nLWlubGluZS1lbmQ6MWVtO3BhZGRpbmctYm90dG9tOi42NjY2NjdlbTtib3JkZXItcmFkaXVzOi4yNXJlbTttYXJnaW4tdG9wOjEuNjY2NjdlbTttYXJnaW4tYm90dG9tOjEuNjY2NjdlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxZW07Zm9udC1zaXplOi44NTcxNDNlbTtsaW5lLWhlaWdodDoxLjY2NjY3fS5wcm9zZS1zbSA6d2hlcmUob2wpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZSh1bCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMTQyODZlbTttYXJnaW4tYm90dG9tOjEuMTQyODZlbTtwYWRkaW5nLWlubGluZS1zdGFydDoxLjU3MTQzZW19LnByb3NlLXNtIDp3aGVyZShsaSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi4yODU3MTRlbTttYXJnaW4tYm90dG9tOi4yODU3MTRlbX0ucHJvc2Utc20gOndoZXJlKG9sXHUwMDNlbGkpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZSh1bFx1MDAzZWxpKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0Oi40Mjg1NzFlbX0ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbVx1MDAzZXVsXHUwMDNlbGkgcCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOi41NzE0MjllbTttYXJnaW4tYm90dG9tOi41NzE0MjllbX0ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbVx1MDAzZXVsXHUwMDNlbGlcdTAwM2VwOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4xNDI4NmVtfS5wcm9zZS1zbSA6d2hlcmUoLnByb3NlLXNtXHUwMDNldWxcdTAwM2VsaVx1MDAzZXA6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjEuMTQyODZlbX0ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbVx1MDAzZW9sXHUwMDNlbGlcdTAwM2VwOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MS4xNDI4NmVtfS5wcm9zZS1zbSA6d2hlcmUoLnByb3NlLXNtXHUwMDNlb2xcdTAwM2VsaVx1MDAzZXA6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjEuMTQyODZlbX0ucHJvc2Utc20gOndoZXJlKHVsIHVsLHVsIG9sLG9sIHVsLG9sIG9sKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjU3MTQyOWVtO21hcmdpbi1ib3R0b206LjU3MTQyOWVtfS5wcm9zZS1zbSA6d2hlcmUoZGwpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjE0Mjg2ZW07bWFyZ2luLWJvdHRvbToxLjE0Mjg2ZW19LnByb3NlLXNtIDp3aGVyZShkdCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjEuMTQyODZlbX0ucHJvc2Utc20gOndoZXJlKGRkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjI4NTcxNGVtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjEuNTcxNDNlbX0ucHJvc2Utc20gOndoZXJlKGhyKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6Mi44NTcxNGVtO21hcmdpbi1ib3R0b206Mi44NTcxNGVtfS5wcm9zZS1zbSA6d2hlcmUoaHIrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKSwucHJvc2Utc20gOndoZXJlKGgyKyopOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSksLnByb3NlLXNtIDp3aGVyZShoMysqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpLC5wcm9zZS1zbSA6d2hlcmUoaDQrKik6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjB9LnByb3NlLXNtIDp3aGVyZSh0YWJsZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXtmb250LXNpemU6Ljg1NzE0M2VtO2xpbmUtaGVpZ2h0OjEuNX0ucHJvc2Utc20gOndoZXJlKHRoZWFkIHRoKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLWVuZDoxZW07cGFkZGluZy1ib3R0b206LjY2NjY2N2VtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjFlbX0ucHJvc2Utc20gOndoZXJlKHRoZWFkIHRoOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnByb3NlLXNtIDp3aGVyZSh0aGVhZCB0aDpsYXN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLWVuZDowfS5wcm9zZS1zbSA6d2hlcmUodGJvZHkgdGQsdGZvb3QgdGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy10b3A6LjY2NjY2N2VtO3BhZGRpbmctaW5saW5lLWVuZDoxZW07cGFkZGluZy1ib3R0b206LjY2NjY2N2VtO3BhZGRpbmctaW5saW5lLXN0YXJ0OjFlbX0ucHJvc2Utc20gOndoZXJlKHRib2R5IHRkOmZpcnN0LWNoaWxkLHRmb290IHRkOmZpcnN0LWNoaWxkKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnByb3NlLXNtIDp3aGVyZSh0Ym9keSB0ZDpsYXN0LWNoaWxkLHRmb290IHRkOmxhc3QtY2hpbGQpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7cGFkZGluZy1pbmxpbmUtZW5kOjB9LnByb3NlLXNtIDp3aGVyZShmaWd1cmUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtcHJvc2VdLFtjbGFzc349bm90LXByb3NlXSAqKSl7bWFyZ2luLXRvcDoxLjcxNDI5ZW07bWFyZ2luLWJvdHRvbToxLjcxNDI5ZW19LnByb3NlLXNtIDp3aGVyZShmaWd1cmVcdTAwM2UqKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjB9LnByb3NlLXNtIDp3aGVyZShmaWdjYXB0aW9uKTpub3QoOndoZXJlKFtjbGFzc349bm90LXByb3NlXSxbY2xhc3N+PW5vdC1wcm9zZV0gKikpe21hcmdpbi10b3A6LjY2NjY2N2VtO2ZvbnQtc2l6ZTouODU3MTQzZW07bGluZS1oZWlnaHQ6MS4zMzMzM30ucHJvc2Utc20gOndoZXJlKC5wcm9zZS1zbVx1MDAzZTpmaXJzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tdG9wOjB9LnByb3NlLXNtIDp3aGVyZSgucHJvc2Utc21cdTAwM2U6bGFzdC1jaGlsZCk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1wcm9zZV0sW2NsYXNzfj1ub3QtcHJvc2VdICopKXttYXJnaW4tYm90dG9tOjB9Li1tdC0xe21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSotMSl9Lm10LTBcXC41e21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9Lm10LTF7bWFyZ2luLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tdC0ye21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ubXQtM3ttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqMyl9Lm10LTR7bWFyZ2luLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5tdC02e21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0ubXQtOHttYXJnaW4tdG9wOmNhbGModmFyKC0tc3BhY2luZykqOCl9Lm10LTEwe21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9Lm10LTEye21hcmdpbi10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMil9Lm10LWF1dG97bWFyZ2luLXRvcDphdXRvfS5tci0xe21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tci0ye21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5tci04e21hcmdpbi1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjgpfS4tbWItNHttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqLTQpfS5tYi0xe21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoxKX0ubWItMVxcLjV7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9Lm1iLTJ7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5tYi0ze21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ubWItNHttYXJnaW4tYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqNCl9Lm1iLTZ7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5tYi04e21hcmdpbi1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0ubWItMTB7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKX0ubWwtMXttYXJnaW4tbGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tbC0ye21hcmdpbi1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMil9Lm1sLWF1dG97bWFyZ2luLWxlZnQ6YXV0b30ubGluZS1jbGFtcC0yey13ZWJraXQtbGluZS1jbGFtcDoyOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtkaXNwbGF5Oi13ZWJraXQtYm94O292ZXJmbG93OmhpZGRlbn0ubm8tc2Nyb2xsYmFyey1tcy1vdmVyZmxvdy1zdHlsZTpub25lO3Njcm9sbGJhci13aWR0aDpub25lfS5uby1zY3JvbGxiYXI6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0uYmxvY2t7ZGlzcGxheTpibG9ja30uZmxleHtkaXNwbGF5OmZsZXh9LmdyaWR7ZGlzcGxheTpncmlkfS5oaWRkZW57ZGlzcGxheTpub25lfS5pbmxpbmV7ZGlzcGxheTppbmxpbmV9LmlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9ja30uaW5saW5lLWZsZXh7ZGlzcGxheTppbmxpbmUtZmxleH0ubGlzdC1pdGVte2Rpc3BsYXk6bGlzdC1pdGVtfS50YWJsZXtkaXNwbGF5OnRhYmxlfS50YWJsZS1jYXB0aW9ue2Rpc3BsYXk6dGFibGUtY2FwdGlvbn0udGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGx9LnRhYmxlLXJvd3tkaXNwbGF5OnRhYmxlLXJvd30uZmllbGQtc2l6aW5nLWNvbnRlbnR7ZmllbGQtc2l6aW5nOmNvbnRlbnR9LmFzcGVjdC1cXFsxNlxcLzlcXF17YXNwZWN0LXJhdGlvOjE2Lzl9LmFzcGVjdC1cXFs2MTBcXC8yMDhcXF17YXNwZWN0LXJhdGlvOjYxMC8yMDh9LmFzcGVjdC1zcXVhcmV7YXNwZWN0LXJhdGlvOjF9LnNpemUtM1xcLjV7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMuNSl9LnNpemUtNHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5zaXplLTV7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0uc2l6ZS02e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNik7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNil9LnNpemUtN3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjcpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjcpfS5zaXplLTh7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uc2l6ZS05e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqOSk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOSl9LnNpemUtMTB7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTApfS5zaXplLTE0e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMTQpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjE0KX0uc2l6ZS1mdWxse3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LmgtMntoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uaC0yXFwuNXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5oLTN7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMyl9LmgtM1xcLjV7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMy41KX0uaC00e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5oLTV7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNSl9LmgtNntoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0uaC03e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjcpfS5oLTh7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqOCl9LmgtOFxcIXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KSFpbXBvcnRhbnR9LmgtOXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo5KX0uaC0xMHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LmgtMTJ7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTIpfS5oLTE0e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjE0KX0uaC0xNntoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNil9LmgtMjB7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMjApfS5oLTI0e2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjI0KX0uaC00MHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0MCl9LmgtNjR7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNjQpfS5oLTgwe2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjgwKX0uaC1cXFs4MHB4XFxde2hlaWdodDo4MHB4fS5oLVxcWzMwMHB4XFxde2hlaWdodDozMDBweH0uaC1cXFszNjBweFxcXXtoZWlnaHQ6MzYwcHh9LmgtXFxbNDQwcHhcXF17aGVpZ2h0OjQ0MHB4fS5oLVxcW2NhbGNcXCgxMDBcXCUtMXB4XFwpXFxde2hlaWdodDpjYWxjKDEwMCUgLSAxcHgpfS5oLWF1dG97aGVpZ2h0OmF1dG99LmgtZnVsbHtoZWlnaHQ6MTAwJX0uaC1weHtoZWlnaHQ6MXB4fS5oLXNjcmVlbntoZWlnaHQ6MTAwdmh9Lm1heC1oLVxcKC0tYXZhaWxhYmxlLWhlaWdodFxcKXttYXgtaGVpZ2h0OnZhcigtLWF2YWlsYWJsZS1oZWlnaHQpfS5tYXgtaC02NHttYXgtaGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNjQpfS5tYXgtaC03MnttYXgtaGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNzIpfS5taW4taC0xNnttaW4taGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMTYpfS5taW4taC1cXFs2MHZoXFxde21pbi1oZWlnaHQ6NjB2aH0ubWluLWgtc2NyZWVue21pbi1oZWlnaHQ6MTAwdmh9LnctXFwoLS1hbmNob3Itd2lkdGhcXCl7d2lkdGg6dmFyKC0tYW5jaG9yLXdpZHRoKX0udy0xe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMSl9LnctMnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS53LTN7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0udy0zXFwuNXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjMuNSl9LnctNHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS53LTV7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0udy02e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNil9LnctN3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjcpfS53LTh7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0udy05e3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqOSl9LnctMTB7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LnctMTJ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMil9LnctMTR7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNCl9LnctMTZ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNil9LnctMjB7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyMCl9LnctMjR7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyNCl9LnctMjh7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyOCl9LnctMzJ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozMil9LnctNDB7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0MCl9LnctNDR7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0NCl9LnctNDh7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0OCl9LnctNTJ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1Mil9LnctNTZ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1Nil9LnctNzJ7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo3Mil9LnctXFxbMTIwcHhcXF17d2lkdGg6MTIwcHh9LnctXFxbMTQwcHhcXF17d2lkdGg6MTQwcHh9LnctXFxbY2FsY1xcKFxcKDEwMFxcJS0ycmVtXFwpXFwvM1xcKVxcXXt3aWR0aDpjYWxjKDMzLjMzMzMlIC0gLjY2NjY2N3JlbSl9LnctYXV0b3t3aWR0aDphdXRvfS53LWZpdHt3aWR0aDpmaXQtY29udGVudH0udy1mdWxse3dpZHRoOjEwMCV9LnctcHh7d2lkdGg6MXB4fS5tYXgtdy0we21heC13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5tYXgtdy0yeGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci0yeGwpfS5tYXgtdy0zeGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci0zeGwpfS5tYXgtdy00eGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci00eGwpfS5tYXgtdy03eGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci03eGwpfS5tYXgtdy00OHttYXgtd2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0OCl9Lm1heC13LVxcWzIwMHB4XFxde21heC13aWR0aDoyMDBweH0ubWF4LXctXFxbY2FsY1xcKDEwMFxcJS0ycmVtXFwpXFxde21heC13aWR0aDpjYWxjKDEwMCUgLSAycmVtKX0ubWF4LXctXFxbY2FsY1xcKDEwMHZ3LTJyZW1cXClcXF17bWF4LXdpZHRoOmNhbGMoMTAwdncgLSAycmVtKX0ubWF4LXctbGd7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci1sZyl9Lm1heC13LW1ke21heC13aWR0aDp2YXIoLS1jb250YWluZXItbWQpfS5tYXgtdy1ub25le21heC13aWR0aDpub25lfS5tYXgtdy1zbXttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLXNtKX0ubWF4LXcteGx7bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci14bCl9Lm1heC13LXhze21heC13aWR0aDp2YXIoLS1jb250YWluZXIteHMpfS5taW4tdy0we21pbi13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5taW4tdy0zMnttaW4td2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozMil9Lm1pbi13LTY0e21pbi13aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjY0KX0ubWluLXctXFxbMnJlbVxcXXttaW4td2lkdGg6MnJlbX0ubWluLXctXFxbOTZweFxcXXttaW4td2lkdGg6OTZweH0ubWluLXctXFxbMTUwcHhcXF17bWluLXdpZHRoOjE1MHB4fS5mbGV4LTF7ZmxleDoxfS5zaHJpbmstMHtmbGV4LXNocmluazowfS50YWJsZS1maXhlZHt0YWJsZS1sYXlvdXQ6Zml4ZWR9LmNhcHRpb24tYm90dG9te2NhcHRpb24tc2lkZTpib3R0b219Lm9yaWdpbi1cXCgtLXRyYW5zZm9ybS1vcmlnaW5cXCl7dHJhbnNmb3JtLW9yaWdpbjp2YXIoLS10cmFuc2Zvcm0tb3JpZ2luKX0uLXRyYW5zbGF0ZS14LTFcXC8yey0tdHctdHJhbnNsYXRlLXg6Y2FsYyhjYWxjKDEvMioxMDAlKSotMSk7dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0udHJhbnNsYXRlLXgtXFxbM3B4XFxdey0tdHctdHJhbnNsYXRlLXg6M3B4O3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LnRyYW5zbGF0ZS14LVxcWzE4cHhcXF17LS10dy10cmFuc2xhdGUteDoxOHB4O3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9Li10cmFuc2xhdGUteS0xXFwvMnstLXR3LXRyYW5zbGF0ZS15OmNhbGMoY2FsYygxLzIqMTAwJSkqLTEpO3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LnRyYW5zbGF0ZS15LTB7LS10dy10cmFuc2xhdGUteTpjYWxjKHZhcigtLXNwYWNpbmcpKjApO3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LnJvdGF0ZS0xODB7cm90YXRlOjE4MGRlZ30udHJhbnNmb3Jte3RyYW5zZm9ybTp2YXIoLS10dy1yb3RhdGUteCwpdmFyKC0tdHctcm90YXRlLXksKXZhcigtLXR3LXJvdGF0ZS16LCl2YXIoLS10dy1za2V3LXgsKXZhcigtLXR3LXNrZXcteSwpfS50cmFuc2Zvcm0tZ3B1e3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApdmFyKC0tdHctcm90YXRlLXgsKXZhcigtLXR3LXJvdGF0ZS15LCl2YXIoLS10dy1yb3RhdGUteiwpdmFyKC0tdHctc2tldy14LCl2YXIoLS10dy1za2V3LXksKX0uYW5pbWF0ZS1wdWxzZXthbmltYXRpb246dmFyKC0tYW5pbWF0ZS1wdWxzZSl9LmFuaW1hdGUtc3BpbnthbmltYXRpb246dmFyKC0tYW5pbWF0ZS1zcGluKX0uY3Vyc29yLWNyb3NzaGFpcntjdXJzb3I6Y3Jvc3NoYWlyfS5jdXJzb3ItZGVmYXVsdHtjdXJzb3I6ZGVmYXVsdH0uY3Vyc29yLW5vdC1hbGxvd2Vke2N1cnNvcjpub3QtYWxsb3dlZH0uY3Vyc29yLXBvaW50ZXJ7Y3Vyc29yOnBvaW50ZXJ9LmN1cnNvci10ZXh0e2N1cnNvcjp0ZXh0fS5yZXNpemV7cmVzaXplOmJvdGh9LnJlc2l6ZS1ub25le3Jlc2l6ZTpub25lfS5zY3JvbGwtcHktMXtzY3JvbGwtcGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5saXN0LWRpc2N7bGlzdC1zdHlsZS10eXBlOmRpc2N9Lmxpc3Qtbm9uZXtsaXN0LXN0eWxlLXR5cGU6bm9uZX0uYXV0by1jb2xzLWZye2dyaWQtYXV0by1jb2x1bW5zOm1pbm1heCgwLDFmcil9LmdyaWQtZmxvdy1jb2x7Z3JpZC1hdXRvLWZsb3c6Y29sdW1ufS5hdXRvLXJvd3MtbWlue2dyaWQtYXV0by1yb3dzOm1pbi1jb250ZW50fS5ncmlkLWNvbHMtMXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDEsbWlubWF4KDAsMWZyKSl9LmdyaWQtY29scy0ye2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKX0uZmxleC1jb2x7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5mbGV4LWNvbC1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfS5mbGV4LXJvd3tmbGV4LWRpcmVjdGlvbjpyb3d9LmZsZXgtd3JhcHtmbGV4LXdyYXA6d3JhcH0uY29udGVudC1zdGFydHthbGlnbi1jb250ZW50OmZsZXgtc3RhcnR9Lml0ZW1zLWJhc2VsaW5le2FsaWduLWl0ZW1zOmJhc2VsaW5lfS5pdGVtcy1jZW50ZXJ7YWxpZ24taXRlbXM6Y2VudGVyfS5pdGVtcy1lbmR7YWxpZ24taXRlbXM6ZmxleC1lbmR9Lml0ZW1zLXN0YXJ0e2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lml0ZW1zLXN0cmV0Y2h7YWxpZ24taXRlbXM6c3RyZXRjaH0uanVzdGlmeS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH0uanVzdGlmeS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5qdXN0aWZ5LWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5qdXN0aWZ5LWVuZHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lmp1c3RpZnktc3RhcnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9LmdhcC0wXFwuNXtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9LmdhcC0xe2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5nYXAtMVxcLjV7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uZ2FwLTJ7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqMil9LmdhcC0yXFwuNXtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5nYXAtM3tnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uZ2FwLTR7Z2FwOmNhbGModmFyKC0tc3BhY2luZykqNCl9LmdhcC02e2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5nYXAtOHtnYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uZ2FwLVxcWzJweFxcXXtnYXA6MnB4fTp3aGVyZSguc3BhY2UteS0wXFwuNVx1MDAzZTpub3QoOmxhc3QtY2hpbGQpKXstLXR3LXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi1ibG9jay1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqLjUpKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKi41KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTFcdTAwM2U6bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEpKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEpKmNhbGMoMSAtIHZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpKX06d2hlcmUoLnNwYWNlLXktMVxcLjVcdTAwM2U6bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSkqdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSk7bWFyZ2luLWJsb2NrLWVuZDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMS41KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTJcdTAwM2U6bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjIpKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjIpKmNhbGMoMSAtIHZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpKX06d2hlcmUoLnNwYWNlLXktM1x1MDAzZTpub3QoOmxhc3QtY2hpbGQpKXstLXR3LXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi1ibG9jay1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMykqdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSk7bWFyZ2luLWJsb2NrLWVuZDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMykqY2FsYygxIC0gdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSkpfTp3aGVyZSguc3BhY2UteS00XHUwMDNlOm5vdCg6bGFzdC1jaGlsZCkpey0tdHctc3BhY2UteS1yZXZlcnNlOjA7bWFyZ2luLWJsb2NrLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo0KSp2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKTttYXJnaW4tYmxvY2stZW5kOmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSo0KSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9OndoZXJlKC5zcGFjZS15LTZcdTAwM2U6bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tYmxvY2stc3RhcnQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjYpKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjYpKmNhbGMoMSAtIHZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpKX06d2hlcmUoLnNwYWNlLXktOFx1MDAzZTpub3QoOmxhc3QtY2hpbGQpKXstLXR3LXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi1ibG9jay1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqOCkqdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSk7bWFyZ2luLWJsb2NrLWVuZDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqOCkqY2FsYygxIC0gdmFyKC0tdHctc3BhY2UteS1yZXZlcnNlKSkpfTp3aGVyZSguc3BhY2UteS0xMFx1MDAzZTpub3QoOmxhc3QtY2hpbGQpKXstLXR3LXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi1ibG9jay1zdGFydDpjYWxjKGNhbGModmFyKC0tc3BhY2luZykqMTApKnZhcigtLXR3LXNwYWNlLXktcmV2ZXJzZSkpO21hcmdpbi1ibG9jay1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKjEwKSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS15LXJldmVyc2UpKSl9LmdhcC14LTR7Y29sdW1uLWdhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5nYXAteC04e2NvbHVtbi1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX06d2hlcmUoLi1zcGFjZS14LTJcdTAwM2U6bm90KDpsYXN0LWNoaWxkKSl7LS10dy1zcGFjZS14LXJldmVyc2U6MDttYXJnaW4taW5saW5lLXN0YXJ0OmNhbGMoY2FsYyh2YXIoLS1zcGFjaW5nKSotMikqdmFyKC0tdHctc3BhY2UteC1yZXZlcnNlKSk7bWFyZ2luLWlubGluZS1lbmQ6Y2FsYyhjYWxjKHZhcigtLXNwYWNpbmcpKi0yKSpjYWxjKDEgLSB2YXIoLS10dy1zcGFjZS14LXJldmVyc2UpKSl9LmdhcC15LTFcXC41e3Jvdy1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxLjUpfS5nYXAteS01e3Jvdy1nYXA6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX06d2hlcmUoLmRpdmlkZS15XHUwMDNlOm5vdCg6bGFzdC1jaGlsZCkpey0tdHctZGl2aWRlLXktcmV2ZXJzZTowO2JvcmRlci1ib3R0b20tc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItdG9wLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXRvcC13aWR0aDpjYWxjKDFweCp2YXIoLS10dy1kaXZpZGUteS1yZXZlcnNlKSk7Ym9yZGVyLWJvdHRvbS13aWR0aDpjYWxjKDFweCpjYWxjKDEgLSB2YXIoLS10dy1kaXZpZGUteS1yZXZlcnNlKSkpfTp3aGVyZSguZGl2aWRlLWJvcmRlclx1MDAzZTpub3QoOmxhc3QtY2hpbGQpKXtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyKX0uc2VsZi1zdGFydHthbGlnbi1zZWxmOmZsZXgtc3RhcnR9Lmp1c3RpZnktc2VsZi1lbmR7anVzdGlmeS1zZWxmOmZsZXgtZW5kfS50cnVuY2F0ZXt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW59Lm92ZXJmbG93LWF1dG97b3ZlcmZsb3c6YXV0b30ub3ZlcmZsb3ctaGlkZGVue292ZXJmbG93OmhpZGRlbn0ub3ZlcmZsb3cteC1hdXRve292ZXJmbG93LXg6YXV0b30ub3ZlcmZsb3cteC1oaWRkZW57b3ZlcmZsb3cteDpoaWRkZW59Lm92ZXJmbG93LXgtc2Nyb2xse292ZXJmbG93LXg6c2Nyb2xsfS5vdmVyZmxvdy15LWF1dG97b3ZlcmZsb3cteTphdXRvfS5yb3VuZGVke2JvcmRlci1yYWRpdXM6LjI1cmVtfS5yb3VuZGVkLTJ4bHtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjgpfS5yb3VuZGVkLTR4bHtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoyLjYpfS5yb3VuZGVkLVxcW2NhbGNcXCh2YXJcXCgtLXJhZGl1c1xcKS0zcHhcXClcXF17Ym9yZGVyLXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykgLSAzcHgpfS5yb3VuZGVkLVxcW21pblxcKHZhclxcKC0tcmFkaXVzLW1kXFwpXFwsMTBweFxcKVxcXXtib3JkZXItcmFkaXVzOm1pbih2YXIoLS1yYWRpdXMtbWQpLDEwcHgpfS5yb3VuZGVkLVxcW21pblxcKHZhclxcKC0tcmFkaXVzLW1kXFwpXFwsMTJweFxcKVxcXXtib3JkZXItcmFkaXVzOm1pbih2YXIoLS1yYWRpdXMtbWQpLDEycHgpfS5yb3VuZGVkLWZ1bGx7Ym9yZGVyLXJhZGl1czozLjQwMjgyZTM4cHh9LnJvdW5kZWQtbGd7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMpfS5yb3VuZGVkLWxnXFwhe2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzKSFpbXBvcnRhbnR9LnJvdW5kZWQtbWR7Ym9yZGVyLXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqLjgpfS5yb3VuZGVkLW5vbmV7Ym9yZGVyLXJhZGl1czowfS5yb3VuZGVkLXNte2JvcmRlci1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKi42KX0ucm91bmRlZC14bHtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpfS5yb3VuZGVkLXhsXFwhe2JvcmRlci1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuNCkhaW1wb3J0YW50fS5yb3VuZGVkLXQtMnhse2JvcmRlci10b3AtbGVmdC1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuOCk7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuOCl9LnJvdW5kZWQtdC14bHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpfS5yb3VuZGVkLWIteGx7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6Y2FsYyh2YXIoLS1yYWRpdXMpKjEuNCk7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqMS40KX0uYm9yZGVye2JvcmRlci1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci13aWR0aDoxcHh9LmJvcmRlci0we2JvcmRlci1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci13aWR0aDowfS5ib3JkZXItMntib3JkZXItc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItd2lkdGg6MnB4fS5ib3JkZXItdHtib3JkZXItdG9wLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXRvcC13aWR0aDoxcHh9LmJvcmRlci1ye2JvcmRlci1yaWdodC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1yaWdodC13aWR0aDoxcHh9LmJvcmRlci1ie2JvcmRlci1ib3R0b20tc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItYm90dG9tLXdpZHRoOjFweH0uYm9yZGVyLWItMntib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLWJvdHRvbS13aWR0aDoycHh9LmJvcmRlci1kYXNoZWR7LS10dy1ib3JkZXItc3R5bGU6ZGFzaGVkO2JvcmRlci1zdHlsZTpkYXNoZWR9LmJvcmRlci1ib3JkZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlcil9LmJvcmRlci1kYW5nZXJcXC8zMHtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJvcmRlci1kYW5nZXJcXC8zMHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRhbmdlcikzMCUsdHJhbnNwYXJlbnQpfX0uYm9yZGVyLWRlc3RydWN0aXZlXFwvMzB7Ym9yZGVyLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJvcmRlci1kZXN0cnVjdGl2ZVxcLzMwe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMzAlLHRyYW5zcGFyZW50KX19LmJvcmRlci1pbnB1dCwuYm9yZGVyLWlucHV0XFwvMzB7Ym9yZGVyLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJvcmRlci1pbnB1dFxcLzMwe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0taW5wdXQpMzAlLHRyYW5zcGFyZW50KX19LmJvcmRlci1wcmltYXJ5e2JvcmRlci1jb2xvcjp2YXIoLS1wcmltYXJ5KX0uYm9yZGVyLXJlZC01MDBcXC80MHtib3JkZXItY29sb3I6I2ZiMmMzNjY2fUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYm9yZGVyLXJlZC01MDBcXC80MHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWNvbG9yLXJlZC01MDApNDAlLHRyYW5zcGFyZW50KX19LmJvcmRlci1zdWNjZXNzXFwvMzB7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYm9yZGVyLXN1Y2Nlc3NcXC8zMHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXN1Y2Nlc3MpMzAlLHRyYW5zcGFyZW50KX19LmJvcmRlci10cmFuc3BhcmVudHtib3JkZXItY29sb3I6IzAwMDB9LmJnLVxcW1xcIzIyOUVEOVxcXXtiYWNrZ3JvdW5kLWNvbG9yOiMyMjllZDl9LmJnLWJhY2tncm91bmQsLmJnLWJhY2tncm91bmRcXC84MHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJhY2tncm91bmQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctYmFja2dyb3VuZFxcLzgwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWJhY2tncm91bmQpODAlLHRyYW5zcGFyZW50KX19LmJnLWJsYWNrXFwvMTB7YmFja2dyb3VuZC1jb2xvcjojMDAwMDAwMWF9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1ibGFja1xcLzEwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWNvbG9yLWJsYWNrKTEwJSx0cmFuc3BhcmVudCl9fS5iZy1ibGFja1xcLzUwe2JhY2tncm91bmQtY29sb3I6IzAwMDAwMDgwfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctYmxhY2tcXC81MHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1jb2xvci1ibGFjayk1MCUsdHJhbnNwYXJlbnQpfX0uYmctYm9yZGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tYm9yZGVyKX0uYmctY2FyZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNhcmQpfS5iZy1kYW5nZXIsLmJnLWRhbmdlclxcLzV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kYW5nZXIpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctZGFuZ2VyXFwvNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kYW5nZXIpNSUsdHJhbnNwYXJlbnQpfX0uYmctZGVzdHJ1Y3RpdmUsLmJnLWRlc3RydWN0aXZlXFwvNXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLWRlc3RydWN0aXZlXFwvNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk1JSx0cmFuc3BhcmVudCl9fS5iZy1kZXN0cnVjdGl2ZVxcLzEwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctZGVzdHJ1Y3RpdmVcXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkxMCUsdHJhbnNwYXJlbnQpfX0uYmctaW5wdXRcXC8zMHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLWlucHV0XFwvMzB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0taW5wdXQpMzAlLHRyYW5zcGFyZW50KX19LmJnLW11dGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5iZy1tdXRlZC1mb3JlZ3JvdW5kXFwvMjV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLW11dGVkLWZvcmVncm91bmRcXC8yNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKTI1JSx0cmFuc3BhcmVudCl9fS5iZy1tdXRlZFxcLzMwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctbXV0ZWRcXC8zMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCkzMCUsdHJhbnNwYXJlbnQpfX0uYmctbXV0ZWRcXC80MHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLW11dGVkXFwvNDB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tbXV0ZWQpNDAlLHRyYW5zcGFyZW50KX19LmJnLW11dGVkXFwvNTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5iZy1tdXRlZFxcLzUwe2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkKTUwJSx0cmFuc3BhcmVudCl9fS5iZy1wb3BvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tcG9wb3Zlcil9LmJnLXByaW1hcnl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5KX0uYmctcHJpbWFyeS1mb3JlZ3JvdW5kXFwvMjB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5LWZvcmVncm91bmQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctcHJpbWFyeS1mb3JlZ3JvdW5kXFwvMjB7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeS1mb3JlZ3JvdW5kKTIwJSx0cmFuc3BhcmVudCl9fS5iZy1wcmltYXJ5XFwvNXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYmctcHJpbWFyeVxcLzV7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeSk1JSx0cmFuc3BhcmVudCl9fS5iZy1wcmltYXJ5XFwvMTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXByaW1hcnlcXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTEwJSx0cmFuc3BhcmVudCl9fS5iZy1wcmltYXJ5XFwvMTV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXByaW1hcnlcXC8xNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTE1JSx0cmFuc3BhcmVudCl9fS5iZy1zZWNvbmRhcnl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zZWNvbmRhcnkpfS5iZy1zdWNjZXNzLC5iZy1zdWNjZXNzXFwvMTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zdWNjZXNzKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXN1Y2Nlc3NcXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1zdWNjZXNzKTEwJSx0cmFuc3BhcmVudCl9fS5iZy1zdWNjZXNzXFwvMTV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zdWNjZXNzKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXN1Y2Nlc3NcXC8xNXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1zdWNjZXNzKTE1JSx0cmFuc3BhcmVudCl9fS5iZy1zdXJmYWNlLC5iZy1zdXJmYWNlXFwvOTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zdXJmYWNlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXN1cmZhY2VcXC85MHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1zdXJmYWNlKTkwJSx0cmFuc3BhcmVudCl9fS5iZy10cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5iZy13YXJuaW5nXFwvMTB7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS13YXJuaW5nKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXdhcm5pbmdcXC8xMHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS13YXJuaW5nKTEwJSx0cmFuc3BhcmVudCl9fS5iZy13aGl0ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXdoaXRlKX0uYmctd2hpdGVcXC8xNXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYyNn1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmJnLXdoaXRlXFwvMTV7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tY29sb3Itd2hpdGUpMTUlLHRyYW5zcGFyZW50KX19LmJnLWdyYWRpZW50LXRvLWJyey0tdHctZ3JhZGllbnQtcG9zaXRpb246dG8gYm90dG9tIHJpZ2h0IGluIG9rbGFiO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHZhcigtLXR3LWdyYWRpZW50LXN0b3BzKSl9LmZyb20tXFxbXFwjMzhBRkUzXFxdey0tdHctZ3JhZGllbnQtZnJvbTojMzhhZmUzOy0tdHctZ3JhZGllbnQtc3RvcHM6dmFyKC0tdHctZ3JhZGllbnQtdmlhLXN0b3BzLHZhcigtLXR3LWdyYWRpZW50LXBvc2l0aW9uKSx2YXIoLS10dy1ncmFkaWVudC1mcm9tKXZhcigtLXR3LWdyYWRpZW50LWZyb20tcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LXRvKXZhcigtLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9uKSl9LmZyb20tXFxbXFwjMjI5RUQ5XFxdey0tdHctZ3JhZGllbnQtZnJvbTojMjI5ZWQ5Oy0tdHctZ3JhZGllbnQtc3RvcHM6dmFyKC0tdHctZ3JhZGllbnQtdmlhLXN0b3BzLHZhcigtLXR3LWdyYWRpZW50LXBvc2l0aW9uKSx2YXIoLS10dy1ncmFkaWVudC1mcm9tKXZhcigtLXR3LWdyYWRpZW50LWZyb20tcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LXRvKXZhcigtLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9uKSl9LnRvLVxcW1xcIzFGOTdDQVxcXXstLXR3LWdyYWRpZW50LXRvOiMxZjk3Y2E7LS10dy1ncmFkaWVudC1zdG9wczp2YXIoLS10dy1ncmFkaWVudC12aWEtc3RvcHMsdmFyKC0tdHctZ3JhZGllbnQtcG9zaXRpb24pLHZhcigtLXR3LWdyYWRpZW50LWZyb20pdmFyKC0tdHctZ3JhZGllbnQtZnJvbS1wb3NpdGlvbiksdmFyKC0tdHctZ3JhZGllbnQtdG8pdmFyKC0tdHctZ3JhZGllbnQtdG8tcG9zaXRpb24pKX0udG8tXFxbXFwjMWE3ZmIwXFxdey0tdHctZ3JhZGllbnQtdG86IzFhN2ZiMDstLXR3LWdyYWRpZW50LXN0b3BzOnZhcigtLXR3LWdyYWRpZW50LXZpYS1zdG9wcyx2YXIoLS10dy1ncmFkaWVudC1wb3NpdGlvbiksdmFyKC0tdHctZ3JhZGllbnQtZnJvbSl2YXIoLS10dy1ncmFkaWVudC1mcm9tLXBvc2l0aW9uKSx2YXIoLS10dy1ncmFkaWVudC10byl2YXIoLS10dy1ncmFkaWVudC10by1wb3NpdGlvbikpfS5iZy1jbGlwLXBhZGRpbmd7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94fS5vYmplY3QtY292ZXJ7b2JqZWN0LWZpdDpjb3Zlcn0ucC0we3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0ucC0wXFwuNXtwYWRkaW5nOmNhbGModmFyKC0tc3BhY2luZykqLjUpfS5wLTF7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5wLTJ7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5wLTN7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5wLTR7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5wLTV7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjUpfS5wLTZ7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5wLTEye3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMil9LnAtXFxbM3B4XFxde3BhZGRpbmc6M3B4fS5weC0xe3BhZGRpbmctaW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqMSl9LnB4LTFcXC41e3BhZGRpbmctaW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqMS41KX0ucHgtMntwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5weC0yXFwuNXtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjIuNSl9LnB4LTN7cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ucHgtNHtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5weC01e3BhZGRpbmctaW5saW5lOmNhbGModmFyKC0tc3BhY2luZykqNSl9LnB5LTBcXC41e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSouNSl9LnB5LTF7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5weS0xXFwuNXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMS41KX0ucHktMntwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMil9LnB5LTJcXC41e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5weS0ze3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0ucHktM1xcLjV7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjMuNSl9LnB5LTR7cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5weS02e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0ucHktOHtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqOCl9LnB5LTEwe3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LnB5LTEye3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMil9LnB5LTE2e3BhZGRpbmctYmxvY2s6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxNil9LnB0LTJ7cGFkZGluZy10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucHQtM3twYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5wdC00e3BhZGRpbmctdG9wOmNhbGModmFyKC0tc3BhY2luZykqNCl9LnB0LTZ7cGFkZGluZy10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0ucHItMntwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9LnByLTR7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5wci04e3BhZGRpbmctcmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0ucHItMTJ7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjEyKX0ucGItMHtwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5wYi0xe3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMSl9LnBiLTJ7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucGItNntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5wYi04e3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqOCl9LnBiLTEwe3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMTApfS5wYi0xNntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjE2KX0ucGwtMVxcLjV7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0ucGwtMntwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0ucGwtNXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo1KX0ucGwtOHtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0ucGwtOXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo5KX0udGV4dC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LnRleHQtbGVmdHt0ZXh0LWFsaWduOmxlZnR9LnRleHQtcmlnaHR7dGV4dC1hbGlnbjpyaWdodH0uYWxpZ24tbWlkZGxle3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uZm9udC1tb25ve2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtaW50ZXIpLFwiSW50ZXJcIix1aS1zYW5zLXNlcmlmLHN5c3RlbS11aSwtYXBwbGUtc3lzdGVtLHNhbnMtc2VyaWZ9LnRleHQtMnhse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LTJ4bCk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LTJ4bC0tbGluZS1oZWlnaHQpKX0udGV4dC0zeGx7Zm9udC1zaXplOnZhcigtLXRleHQtM3hsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtM3hsLS1saW5lLWhlaWdodCkpfS50ZXh0LTR4bHtmb250LXNpemU6dmFyKC0tdGV4dC00eGwpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC00eGwtLWxpbmUtaGVpZ2h0KSl9LnRleHQtNnhse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LTZ4bCk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LTZ4bC0tbGluZS1oZWlnaHQpKX0udGV4dC1iYXNle2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LWJhc2UpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC1iYXNlLS1saW5lLWhlaWdodCkpfS50ZXh0LWxne2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LWxnKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtbGctLWxpbmUtaGVpZ2h0KSl9LnRleHQtc217Zm9udC1zaXplOnZhcigtLXRleHQtc20pO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC1zbS0tbGluZS1oZWlnaHQpKX0udGV4dC14bHtmb250LXNpemU6dmFyKC0tdGV4dC14bCk7bGluZS1oZWlnaHQ6dmFyKC0tdHctbGVhZGluZyx2YXIoLS10ZXh0LXhsLS1saW5lLWhlaWdodCkpfS50ZXh0LXhze2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXhzKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQteHMtLWxpbmUtaGVpZ2h0KSl9LnRleHQtXFxbMFxcLjhyZW1cXF17Zm9udC1zaXplOi44cmVtfS50ZXh0LVxcWzEwcHhcXF17Zm9udC1zaXplOjEwcHh9LnRleHQtXFxbMTFweFxcXXtmb250LXNpemU6MTFweH0ubGVhZGluZy1ub25ley0tdHctbGVhZGluZzoxO2xpbmUtaGVpZ2h0OjF9LmxlYWRpbmctcmVsYXhlZHstLXR3LWxlYWRpbmc6dmFyKC0tbGVhZGluZy1yZWxheGVkKTtsaW5lLWhlaWdodDp2YXIoLS1sZWFkaW5nLXJlbGF4ZWQpfS5sZWFkaW5nLXNudWd7LS10dy1sZWFkaW5nOnZhcigtLWxlYWRpbmctc251Zyk7bGluZS1oZWlnaHQ6dmFyKC0tbGVhZGluZy1zbnVnKX0ubGVhZGluZy10aWdodHstLXR3LWxlYWRpbmc6dmFyKC0tbGVhZGluZy10aWdodCk7bGluZS1oZWlnaHQ6dmFyKC0tbGVhZGluZy10aWdodCl9LmZvbnQtYm9sZHstLXR3LWZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO2ZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpfS5mb250LW1lZGl1bXstLXR3LWZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7Zm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKX0uZm9udC1ub3JtYWx7LS10dy1mb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpO2ZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LW5vcm1hbCl9LmZvbnQtc2VtaWJvbGR7LS10dy1mb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7Zm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpfS50cmFja2luZy10aWdodHstLXR3LXRyYWNraW5nOnZhcigtLXRyYWNraW5nLXRpZ2h0KTtsZXR0ZXItc3BhY2luZzp2YXIoLS10cmFja2luZy10aWdodCl9LnRyYWNraW5nLXdpZGV7LS10dy10cmFja2luZzp2YXIoLS10cmFja2luZy13aWRlKTtsZXR0ZXItc3BhY2luZzp2YXIoLS10cmFja2luZy13aWRlKX0udHJhY2tpbmctd2lkZXN0ey0tdHctdHJhY2tpbmc6dmFyKC0tdHJhY2tpbmctd2lkZXN0KTtsZXR0ZXItc3BhY2luZzp2YXIoLS10cmFja2luZy13aWRlc3QpfS5icmVhay1hbGx7d29yZC1icmVhazpicmVhay1hbGx9LndoaXRlc3BhY2Utbm9ybWFse3doaXRlLXNwYWNlOm5vcm1hbH0ud2hpdGVzcGFjZS1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfS53aGl0ZXNwYWNlLXByZS1saW5le3doaXRlLXNwYWNlOnByZS1saW5lfS53aGl0ZXNwYWNlLXByZS13cmFwe3doaXRlLXNwYWNlOnByZS13cmFwfS50ZXh0LVxcW1xcIzIyQzU1RVxcXXtjb2xvcjojMjJjNTVlfS50ZXh0LVxcW1xcIzIyOUVEOVxcXXtjb2xvcjojMjI5ZWQ5fS50ZXh0LVxcW1xcIzE4NzlBOFxcXXtjb2xvcjojMTg3OWE4fS50ZXh0LVxcW1xcI0VGNDQ0NFxcXXtjb2xvcjojZWY0NDQ0fS50ZXh0LWNhcmQtZm9yZWdyb3VuZHtjb2xvcjp2YXIoLS1jYXJkLWZvcmVncm91bmQpfS50ZXh0LWRhbmdlcntjb2xvcjp2YXIoLS1kYW5nZXIpfS50ZXh0LWRlc3RydWN0aXZle2NvbG9yOnZhcigtLWRlc3RydWN0aXZlKX0udGV4dC1mb3JlZ3JvdW5kLC50ZXh0LWZvcmVncm91bmRcXC82MHtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnRleHQtZm9yZWdyb3VuZFxcLzYwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1mb3JlZ3JvdW5kKTYwJSx0cmFuc3BhcmVudCl9fS50ZXh0LWZvcmVncm91bmRcXC84MHtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnRleHQtZm9yZWdyb3VuZFxcLzgwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1mb3JlZ3JvdW5kKTgwJSx0cmFuc3BhcmVudCl9fS50ZXh0LWdyZWVuLTYwMHtjb2xvcjp2YXIoLS1jb2xvci1ncmVlbi02MDApfS50ZXh0LW11dGVkLWZvcmVncm91bmQsLnRleHQtbXV0ZWQtZm9yZWdyb3VuZFxcLzYwe2NvbG9yOnZhcigtLW11dGVkLWZvcmVncm91bmQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsudGV4dC1tdXRlZC1mb3JlZ3JvdW5kXFwvNjB7Y29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkLWZvcmVncm91bmQpNjAlLHRyYW5zcGFyZW50KX19LnRleHQtb3JhbmdlLTUwMHtjb2xvcjp2YXIoLS1jb2xvci1vcmFuZ2UtNTAwKX0udGV4dC1wb3BvdmVyLWZvcmVncm91bmR7Y29sb3I6dmFyKC0tcG9wb3Zlci1mb3JlZ3JvdW5kKX0udGV4dC1wcmltYXJ5e2NvbG9yOnZhcigtLXByaW1hcnkpfS50ZXh0LXByaW1hcnktZm9yZWdyb3VuZHtjb2xvcjp2YXIoLS1wcmltYXJ5LWZvcmVncm91bmQpfS50ZXh0LXJlZC01MDB7Y29sb3I6dmFyKC0tY29sb3ItcmVkLTUwMCl9LnRleHQtc2Vjb25kYXJ5LWZvcmVncm91bmR7Y29sb3I6dmFyKC0tc2Vjb25kYXJ5LWZvcmVncm91bmQpfS50ZXh0LXN1Y2Nlc3N7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnRleHQtd2FybmluZ3tjb2xvcjp2YXIoLS13YXJuaW5nKX0udGV4dC13aGl0ZXtjb2xvcjp2YXIoLS1jb2xvci13aGl0ZSl9LnRleHQtd2hpdGVcXC84NXtjb2xvcjojZmZmZmZmZDl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey50ZXh0LXdoaXRlXFwvODV7Y29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWNvbG9yLXdoaXRlKTg1JSx0cmFuc3BhcmVudCl9fS50ZXh0LXdoaXRlXFwvOTB7Y29sb3I6I2ZmZmZmZmU2fUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsudGV4dC13aGl0ZVxcLzkwe2NvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1jb2xvci13aGl0ZSk5MCUsdHJhbnNwYXJlbnQpfX0udGV4dC13aGl0ZVxcLzk1e2NvbG9yOiNmZmZmZmZmMn1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnRleHQtd2hpdGVcXC85NXtjb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tY29sb3Itd2hpdGUpOTUlLHRyYW5zcGFyZW50KX19LmNhcGl0YWxpemV7dGV4dC10cmFuc2Zvcm06Y2FwaXRhbGl6ZX0udXBwZXJjYXNle3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0uaXRhbGlje2ZvbnQtc3R5bGU6aXRhbGljfS50YWJ1bGFyLW51bXN7LS10dy1udW1lcmljLXNwYWNpbmc6dGFidWxhci1udW1zO2ZvbnQtdmFyaWFudC1udW1lcmljOnZhcigtLXR3LW9yZGluYWwsKXZhcigtLXR3LXNsYXNoZWQtemVybywpdmFyKC0tdHctbnVtZXJpYy1maWd1cmUsKXZhcigtLXR3LW51bWVyaWMtc3BhY2luZywpdmFyKC0tdHctbnVtZXJpYy1mcmFjdGlvbiwpfS51bmRlcmxpbmV7dGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lfS51bmRlcmxpbmUtb2Zmc2V0LTJ7dGV4dC11bmRlcmxpbmUtb2Zmc2V0OjJweH0udW5kZXJsaW5lLW9mZnNldC00e3RleHQtdW5kZXJsaW5lLW9mZnNldDo0cHh9LmFudGlhbGlhc2Vkey13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6Z3JheXNjYWxlfS5vcGFjaXR5LTB7b3BhY2l0eTowfS5vcGFjaXR5LTMwe29wYWNpdHk6LjN9Lm9wYWNpdHktNDB7b3BhY2l0eTouNH0ub3BhY2l0eS01MHtvcGFjaXR5Oi41fS5vcGFjaXR5LTcwe29wYWNpdHk6Ljd9LmJnLWJsZW5kLWNvbG9ye2JhY2tncm91bmQtYmxlbmQtbW9kZTpjb2xvcn0uc2hhZG93ey0tdHctc2hhZG93OjAgMXB4IDNweCAwIHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgMXB4IDJweCAtMXB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uc2hhZG93LWxney0tdHctc2hhZG93OjAgMTBweCAxNXB4IC0zcHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksMCA0cHggNnB4IC00cHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSk7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5zaGFkb3ctbWR7LS10dy1zaGFkb3c6MCA0cHggNnB4IC0xcHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksMCAycHggNHB4IC0ycHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSk7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5zaGFkb3ctbm9uZXstLXR3LXNoYWRvdzowIDAgIzAwMDA7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5zaGFkb3ctbm9uZVxcIXstLXR3LXNoYWRvdzowIDAgIzAwMDAhaW1wb3J0YW50O2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KSFpbXBvcnRhbnR9LnNoYWRvdy1zbXstLXR3LXNoYWRvdzowIDFweCAzcHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSwwIDFweCAycHggLTFweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnNoYWRvdy14c3stLXR3LXNoYWRvdzowIDFweCAycHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDBkKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMHstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMHB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMXB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctMnstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMnB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LnJpbmctYmFja2dyb3VuZHstLXR3LXJpbmctY29sb3I6dmFyKC0tYmFja2dyb3VuZCl9LnJpbmctZm9yZWdyb3VuZFxcLzEwey0tdHctcmluZy1jb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LnJpbmctZm9yZWdyb3VuZFxcLzEwey0tdHctcmluZy1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZm9yZWdyb3VuZCkxMCUsdHJhbnNwYXJlbnQpfX0ucmluZy1wcmltYXJ5XFwvMzB7LS10dy1yaW5nLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsucmluZy1wcmltYXJ5XFwvMzB7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTMwJSx0cmFuc3BhcmVudCl9fS5vdXRsaW5lLWhpZGRlbnstLXR3LW91dGxpbmUtc3R5bGU6bm9uZTtvdXRsaW5lLXN0eWxlOm5vbmV9QG1lZGlhIChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lm91dGxpbmUtaGlkZGVue291dGxpbmUtb2Zmc2V0OjJweDtvdXRsaW5lOjJweCBzb2xpZCAjMDAwMH19Lm91dGxpbmV7b3V0bGluZS1zdHlsZTp2YXIoLS10dy1vdXRsaW5lLXN0eWxlKTtvdXRsaW5lLXdpZHRoOjFweH0uZmlsdGVye2ZpbHRlcjp2YXIoLS10dy1ibHVyLCl2YXIoLS10dy1icmlnaHRuZXNzLCl2YXIoLS10dy1jb250cmFzdCwpdmFyKC0tdHctZ3JheXNjYWxlLCl2YXIoLS10dy1odWUtcm90YXRlLCl2YXIoLS10dy1pbnZlcnQsKXZhcigtLXR3LXNhdHVyYXRlLCl2YXIoLS10dy1zZXBpYSwpdmFyKC0tdHctZHJvcC1zaGFkb3csKX0uYmFja2Ryb3AtYmx1ci1zbXstLXR3LWJhY2tkcm9wLWJsdXI6Ymx1cih2YXIoLS1ibHVyLXNtKSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6dmFyKC0tdHctYmFja2Ryb3AtYmx1ciwpdmFyKC0tdHctYmFja2Ryb3AtYnJpZ2h0bmVzcywpdmFyKC0tdHctYmFja2Ryb3AtY29udHJhc3QsKXZhcigtLXR3LWJhY2tkcm9wLWdyYXlzY2FsZSwpdmFyKC0tdHctYmFja2Ryb3AtaHVlLXJvdGF0ZSwpdmFyKC0tdHctYmFja2Ryb3AtaW52ZXJ0LCl2YXIoLS10dy1iYWNrZHJvcC1vcGFjaXR5LCl2YXIoLS10dy1iYWNrZHJvcC1zYXR1cmF0ZSwpdmFyKC0tdHctYmFja2Ryb3Atc2VwaWEsKTtiYWNrZHJvcC1maWx0ZXI6dmFyKC0tdHctYmFja2Ryb3AtYmx1ciwpdmFyKC0tdHctYmFja2Ryb3AtYnJpZ2h0bmVzcywpdmFyKC0tdHctYmFja2Ryb3AtY29udHJhc3QsKXZhcigtLXR3LWJhY2tkcm9wLWdyYXlzY2FsZSwpdmFyKC0tdHctYmFja2Ryb3AtaHVlLXJvdGF0ZSwpdmFyKC0tdHctYmFja2Ryb3AtaW52ZXJ0LCl2YXIoLS10dy1iYWNrZHJvcC1vcGFjaXR5LCl2YXIoLS10dy1iYWNrZHJvcC1zYXR1cmF0ZSwpdmFyKC0tdHctYmFja2Ryb3Atc2VwaWEsKX0udHJhbnNpdGlvbnt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3IsYm9yZGVyLWNvbG9yLG91dGxpbmUtY29sb3IsdGV4dC1kZWNvcmF0aW9uLWNvbG9yLGZpbGwsc3Ryb2tlLC0tdHctZ3JhZGllbnQtZnJvbSwtLXR3LWdyYWRpZW50LXZpYSwtLXR3LWdyYWRpZW50LXRvLG9wYWNpdHksYm94LXNoYWRvdyx0cmFuc2Zvcm0sdHJhbnNsYXRlLHNjYWxlLHJvdGF0ZSxmaWx0ZXIsLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXIsYmFja2Ryb3AtZmlsdGVyLGRpc3BsYXksY29udGVudC12aXNpYmlsaXR5LG92ZXJsYXkscG9pbnRlci1ldmVudHM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tdHctZWFzZSx2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKSk7dHJhbnNpdGlvbi1kdXJhdGlvbjp2YXIoLS10dy1kdXJhdGlvbix2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24pKX0udHJhbnNpdGlvbi1hbGx7dHJhbnNpdGlvbi1wcm9wZXJ0eTphbGw7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tdHctZWFzZSx2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKSk7dHJhbnNpdGlvbi1kdXJhdGlvbjp2YXIoLS10dy1kdXJhdGlvbix2YXIoLS1kZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24pKX0udHJhbnNpdGlvbi1jb2xvcnN7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yLGJvcmRlci1jb2xvcixvdXRsaW5lLWNvbG9yLHRleHQtZGVjb3JhdGlvbi1jb2xvcixmaWxsLHN0cm9rZSwtLXR3LWdyYWRpZW50LWZyb20sLS10dy1ncmFkaWVudC12aWEsLS10dy1ncmFkaWVudC10bzt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS50cmFuc2l0aW9uLW9wYWNpdHl7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5O3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLXR3LWVhc2UsdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbikpO3RyYW5zaXRpb24tZHVyYXRpb246dmFyKC0tdHctZHVyYXRpb24sdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uKSl9LnRyYW5zaXRpb24tc2hhZG93e3RyYW5zaXRpb24tcHJvcGVydHk6Ym94LXNoYWRvdzt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS50cmFuc2l0aW9uLXRyYW5zZm9ybXt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSx0cmFuc2xhdGUsc2NhbGUscm90YXRlO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOnZhcigtLXR3LWVhc2UsdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbikpO3RyYW5zaXRpb24tZHVyYXRpb246dmFyKC0tdHctZHVyYXRpb24sdmFyKC0tZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uKSl9LmR1cmF0aW9uLTEwMHstLXR3LWR1cmF0aW9uOi4xczt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xc30uZHVyYXRpb24tMTUwey0tdHctZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXN9LmR1cmF0aW9uLTIwMHstLXR3LWR1cmF0aW9uOi4yczt0cmFuc2l0aW9uLWR1cmF0aW9uOi4yc30uZWFzZS1pbi1vdXR7LS10dy1lYXNlOnZhcigtLWVhc2UtaW4tb3V0KTt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS1lYXNlLWluLW91dCl9LlxcW3dpbGwtY2hhbmdlXFw6dHJhbnNmb3JtXFxde3dpbGwtY2hhbmdlOnRyYW5zZm9ybX0ub3V0bGluZS1ub25ley0tdHctb3V0bGluZS1zdHlsZTpub25lO291dGxpbmUtc3R5bGU6bm9uZX0uc2VsZWN0LW5vbmV7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9LnBhdXNlZHthbmltYXRpb24tcGxheS1zdGF0ZTpwYXVzZWR9LnJ1bm5pbmd7YW5pbWF0aW9uLXBsYXktc3RhdGU6cnVubmluZ30uZ3JvdXAtb3BlblxcOnJvdGF0ZS0xODA6aXMoOndoZXJlKC5ncm91cCk6aXMoW29wZW5dLDpwb3BvdmVyLW9wZW4sOm9wZW4pICope3JvdGF0ZToxODBkZWd9QG1lZGlhIChob3Zlcjpob3Zlcil7Lmdyb3VwLWhvdmVyXFw6dHJhbnNsYXRlLXgtMFxcLjU6aXMoOndoZXJlKC5ncm91cCk6aG92ZXIgKil7LS10dy10cmFuc2xhdGUteDpjYWxjKHZhcigtLXNwYWNpbmcpKi41KTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS5ncm91cC1ob3ZlclxcOmJnLW11dGVkOmlzKDp3aGVyZSguZ3JvdXApOmhvdmVyICope2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5ncm91cC1ob3ZlclxcOnRleHQtcHJpbWFyeTppcyg6d2hlcmUoLmdyb3VwKTpob3ZlciAqKXtjb2xvcjp2YXIoLS1wcmltYXJ5KX0uZ3JvdXAtaG92ZXJcXDp0ZXh0LXdoaXRlOmlzKDp3aGVyZSguZ3JvdXApOmhvdmVyICope2NvbG9yOnZhcigtLWNvbG9yLXdoaXRlKX0uZ3JvdXAtaG92ZXJcXDpvcGFjaXR5LTEwMDppcyg6d2hlcmUoLmdyb3VwKTpob3ZlciAqKXtvcGFjaXR5OjF9Lmdyb3VwLWhvdmVyXFw6c2hhZG93LW1kOmlzKDp3aGVyZSguZ3JvdXApOmhvdmVyICopey0tdHctc2hhZG93OjAgNHB4IDZweCAtMXB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgMnB4IDRweCAtMnB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX19Lmdyb3VwLWZvY3VzXFwvZHJvcGRvd24tbWVudS1pdGVtXFw6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZDppcyg6d2hlcmUoLmdyb3VwXFwvZHJvcGRvd24tbWVudS1pdGVtKTpmb2N1cyAqKXtjb2xvcjp2YXIoLS1hY2NlbnQtZm9yZWdyb3VuZCl9Lmdyb3VwLWhhcy1kYXRhLVxcW3NpemVcXD1sZ1xcXVxcL2F2YXRhci1ncm91cFxcOnNpemUtMTA6aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhci1ncm91cCk6aGFzKFtkYXRhLXNpemU9bGddKSAqKXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9Lmdyb3VwLWhhcy1kYXRhLVxcW3NpemVcXD1zbVxcXVxcL2F2YXRhci1ncm91cFxcOnNpemUtNjppcyg6d2hlcmUoLmdyb3VwXFwvYXZhdGFyLWdyb3VwKTpoYXMoW2RhdGEtc2l6ZT1zbV0pICope3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNik7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNil9Lmdyb3VwLWhhcy1kYXRhLVxcW3Nsb3RcXD1jb21tYW5kLXNob3J0Y3V0XFxdXFwvY29tbWFuZC1pdGVtXFw6aGlkZGVuOmlzKDp3aGVyZSguZ3JvdXBcXC9jb21tYW5kLWl0ZW0pOmhhcyhbZGF0YS1zbG90PWNvbW1hbmQtc2hvcnRjdXRdKSAqKXtkaXNwbGF5Om5vbmV9Lmdyb3VwLWhhcy1cXFtcXFx1MDAzZWlucHV0XFxdXFwvaW5wdXQtZ3JvdXBcXDpwdC0yOmlzKDp3aGVyZSguZ3JvdXBcXC9pbnB1dC1ncm91cCk6aGFzKFx1MDAzZWlucHV0KSAqKXtwYWRkaW5nLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5ncm91cC1oYXMtXFxbXFxcdTAwM2VpbnB1dFxcXVxcL2lucHV0LWdyb3VwXFw6cGItMjppcyg6d2hlcmUoLmdyb3VwXFwvaW5wdXQtZ3JvdXApOmhhcyhcdTAwM2VpbnB1dCkgKil7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uZ3JvdXAtZGF0YS1cXFtjaGVja2VkXFw9dHJ1ZVxcXVxcL2NvbW1hbmQtaXRlbVxcOm9wYWNpdHktMTAwOmlzKDp3aGVyZSguZ3JvdXBcXC9jb21tYW5kLWl0ZW0pW2RhdGEtY2hlY2tlZD10cnVlXSAqKXtvcGFjaXR5OjF9Lmdyb3VwLWRhdGEtXFxbZGlzYWJsZWRcXD10cnVlXFxdXFw6cG9pbnRlci1ldmVudHMtbm9uZTppcyg6d2hlcmUoLmdyb3VwKVtkYXRhLWRpc2FibGVkPXRydWVdICope3BvaW50ZXItZXZlbnRzOm5vbmV9Lmdyb3VwLWRhdGEtXFxbZGlzYWJsZWRcXD10cnVlXFxdXFw6b3BhY2l0eS01MDppcyg6d2hlcmUoLmdyb3VwKVtkYXRhLWRpc2FibGVkPXRydWVdICopLC5ncm91cC1kYXRhLVxcW2Rpc2FibGVkXFw9dHJ1ZVxcXVxcL2lucHV0LWdyb3VwXFw6b3BhY2l0eS01MDppcyg6d2hlcmUoLmdyb3VwXFwvaW5wdXQtZ3JvdXApW2RhdGEtZGlzYWJsZWQ9dHJ1ZV0gKil7b3BhY2l0eTouNX0uZ3JvdXAtZGF0YS1cXFtzaXplXFw9ZGVmYXVsdFxcXVxcL2F2YXRhclxcOnNpemUtMlxcLjU6aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhcilbZGF0YS1zaXplPWRlZmF1bHRdICope3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMi41KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyLjUpfS5ncm91cC1kYXRhLVxcW3NpemVcXD1sZ1xcXVxcL2F2YXRhclxcOnNpemUtMzppcyg6d2hlcmUoLmdyb3VwXFwvYXZhdGFyKVtkYXRhLXNpemU9bGddICope3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMyk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMyl9Lmdyb3VwLWRhdGEtXFxbc2l6ZVxcPXNtXFxdXFwvYXZhdGFyXFw6c2l6ZS0yOmlzKDp3aGVyZSguZ3JvdXBcXC9hdmF0YXIpW2RhdGEtc2l6ZT1zbV0gKil7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX0uZ3JvdXAtZGF0YS1cXFtzaXplXFw9c21cXF1cXC9hdmF0YXJcXDp0ZXh0LXhzOmlzKDp3aGVyZSguZ3JvdXBcXC9hdmF0YXIpW2RhdGEtc2l6ZT1zbV0gKil7Zm9udC1zaXplOnZhcigtLXRleHQteHMpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC14cy0tbGluZS1oZWlnaHQpKX0uZ3JvdXAtZGF0YS1cXFtzaXplXFw9c21cXF1cXC9jYXJkXFw6cC0zOmlzKDp3aGVyZSguZ3JvdXBcXC9jYXJkKVtkYXRhLXNpemU9c21dICope3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uZ3JvdXAtZGF0YS1cXFtzaXplXFw9c21cXF1cXC9jYXJkXFw6cHgtMzppcyg6d2hlcmUoLmdyb3VwXFwvY2FyZClbZGF0YS1zaXplPXNtXSAqKXtwYWRkaW5nLWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5ncm91cC1kYXRhLVxcW3NpemVcXD1zbVxcXVxcL2NhcmRcXDp0ZXh0LXNtOmlzKDp3aGVyZSguZ3JvdXBcXC9jYXJkKVtkYXRhLXNpemU9c21dICope2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXNtKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtc20tLWxpbmUtaGVpZ2h0KSl9Lmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpiZy10cmFuc3BhcmVudDppcyg6d2hlcmUoLmdyb3VwXFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKil7YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZ3JvdXAtZGF0YS1zZWxlY3RlZFxcL2NvbW1hbmQtaXRlbVxcOnRleHQtZm9yZWdyb3VuZDppcyg6d2hlcmUoLmdyb3VwXFwvY29tbWFuZC1pdGVtKTp3aGVyZShbZGF0YS1zZWxlY3RlZD10cnVlXSkgKil7Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9Lmdyb3VwLWRhdGEtaG9yaXpvbnRhbFxcL3RhYnNcXDpoLTg6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPWhvcml6b250YWxdKSAqKXtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFxcL3RhYnNcXDpoLWZpdDppcyg6d2hlcmUoLmdyb3VwXFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249dmVydGljYWxdKSAqKXtoZWlnaHQ6Zml0LWNvbnRlbnR9Lmdyb3VwLWRhdGEtdmVydGljYWxcXC90YWJzXFw6dy1mdWxsOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzKTp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pICope3dpZHRoOjEwMCV9Lmdyb3VwLWRhdGEtdmVydGljYWxcXC90YWJzXFw6ZmxleC1jb2w6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPXZlcnRpY2FsXSkgKil7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5ncm91cC1kYXRhLXZlcnRpY2FsXFwvdGFic1xcOmp1c3RpZnktc3RhcnQ6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPXZlcnRpY2FsXSkgKil7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9LnBlZXItZGlzYWJsZWRcXDpjdXJzb3Itbm90LWFsbG93ZWQ6aXMoOndoZXJlKC5wZWVyKTpkaXNhYmxlZH4qKXtjdXJzb3I6bm90LWFsbG93ZWR9LnBlZXItZGlzYWJsZWRcXDpvcGFjaXR5LTUwOmlzKDp3aGVyZSgucGVlcik6ZGlzYWJsZWR+Kil7b3BhY2l0eTouNX0uZmlsZVxcOmlubGluZS1mbGV4OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntkaXNwbGF5OmlubGluZS1mbGV4fS5maWxlXFw6aC02OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0uZmlsZVxcOmJvcmRlci0wOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntib3JkZXItc3R5bGU6dmFyKC0tdHctYm9yZGVyLXN0eWxlKTtib3JkZXItd2lkdGg6MH0uZmlsZVxcOmJnLXRyYW5zcGFyZW50OjpmaWxlLXNlbGVjdG9yLWJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5maWxlXFw6dGV4dC1zbTo6ZmlsZS1zZWxlY3Rvci1idXR0b257Zm9udC1zaXplOnZhcigtLXRleHQtc20pO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC1zbS0tbGluZS1oZWlnaHQpKX0uZmlsZVxcOmZvbnQtbWVkaXVtOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbnstLXR3LWZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7Zm9udC13ZWlnaHQ6dmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKX0uZmlsZVxcOnRleHQtZm9yZWdyb3VuZDo6ZmlsZS1zZWxlY3Rvci1idXR0b257Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9LnBsYWNlaG9sZGVyXFw6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX0uYWZ0ZXJcXDphYnNvbHV0ZTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO3Bvc2l0aW9uOmFic29sdXRlfS5hZnRlclxcOmluc2V0LTA6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtpbnNldDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5hZnRlclxcOnJvdW5kZWQtZnVsbDphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2JvcmRlci1yYWRpdXM6My40MDI4MmUzOHB4fS5hZnRlclxcOmJvcmRlcjphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2JvcmRlci1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci13aWR0aDoxcHh9LmFmdGVyXFw6Ym9yZGVyLWJvcmRlcjphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpfS5hZnRlclxcOmJnLWZvcmVncm91bmQ6YWZ0ZXJ7Y29udGVudDp2YXIoLS10dy1jb250ZW50KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWZvcmVncm91bmQpfS5hZnRlclxcOm9wYWNpdHktMDphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO29wYWNpdHk6MH0uYWZ0ZXJcXDptaXgtYmxlbmQtZGFya2VuOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7bWl4LWJsZW5kLW1vZGU6ZGFya2VufS5hZnRlclxcOnRyYW5zaXRpb24tb3BhY2l0eTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eTt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS10dy1lYXNlLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24pKTt0cmFuc2l0aW9uLWR1cmF0aW9uOnZhcigtLXR3LWR1cmF0aW9uLHZhcigtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbikpfS5ncm91cC1kYXRhLWhvcml6b250YWxcXC90YWJzXFw6YWZ0ZXJcXDppbnNldC14LTA6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPWhvcml6b250YWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2luc2V0LWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5ncm91cC1kYXRhLWhvcml6b250YWxcXC90YWJzXFw6YWZ0ZXJcXDpib3R0b20tXFxbLTVweFxcXTppcyg6d2hlcmUoLmdyb3VwXFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249aG9yaXpvbnRhbF0pICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7Ym90dG9tOi01cHh9Lmdyb3VwLWRhdGEtaG9yaXpvbnRhbFxcL3RhYnNcXDphZnRlclxcOmgtMFxcLjU6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMpOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPWhvcml6b250YWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKi41KX0uZ3JvdXAtZGF0YS12ZXJ0aWNhbFxcL3RhYnNcXDphZnRlclxcOmluc2V0LXktMDppcyg6d2hlcmUoLmdyb3VwXFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249dmVydGljYWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO2luc2V0LWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmdyb3VwLWRhdGEtdmVydGljYWxcXC90YWJzXFw6YWZ0ZXJcXDotcmlnaHQtMTppcyg6d2hlcmUoLmdyb3VwXFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249dmVydGljYWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO3JpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqLTEpfS5ncm91cC1kYXRhLXZlcnRpY2FsXFwvdGFic1xcOmFmdGVyXFw6dy0wXFwuNTppcyg6d2hlcmUoLmdyb3VwXFwvdGFicyk6d2hlcmUoW2RhdGEtb3JpZW50YXRpb249dmVydGljYWxdKSAqKTphZnRlcntjb250ZW50OnZhcigtLXR3LWNvbnRlbnQpO3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqLjUpfS5mb2N1cy13aXRoaW5cXDpib3JkZXItcmluZzpmb2N1cy13aXRoaW57Ym9yZGVyLWNvbG9yOnZhcigtLXJpbmcpfS5mb2N1cy13aXRoaW5cXDpyaW5nLTM6Zm9jdXMtd2l0aGluey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uZm9jdXMtd2l0aGluXFw6cmluZy1yaW5nXFwvNTA6Zm9jdXMtd2l0aGluey0tdHctcmluZy1jb2xvcjp2YXIoLS1yaW5nKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmZvY3VzLXdpdGhpblxcOnJpbmctcmluZ1xcLzUwOmZvY3VzLXdpdGhpbnstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXJpbmcpNTAlLHRyYW5zcGFyZW50KX19QG1lZGlhIChob3Zlcjpob3Zlcil7LmhvdmVyXFw6Ym9yZGVyLW11dGVkLWZvcmVncm91bmRcXC8zMDpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3ZlclxcOmJvcmRlci1tdXRlZC1mb3JlZ3JvdW5kXFwvMzA6aG92ZXJ7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKTMwJSx0cmFuc3BhcmVudCl9fS5ob3ZlclxcOmJvcmRlci1wcmltYXJ5XFwvNDA6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcXDpib3JkZXItcHJpbWFyeVxcLzQwOmhvdmVye2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeSk0MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcXDpib3JkZXItcmluZzpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tcmluZyl9LmhvdmVyXFw6YmctYWNjZW50OmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tYWNjZW50KX0uaG92ZXJcXDpiZy1kZXN0cnVjdGl2ZVxcLzIwOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcXDpiZy1kZXN0cnVjdGl2ZVxcLzIwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5ob3ZlclxcOmJnLW11dGVkOmhvdmVyLC5ob3ZlclxcOmJnLW11dGVkXFwvNDA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3ZlclxcOmJnLW11dGVkXFwvNDA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tbXV0ZWQpNDAlLHRyYW5zcGFyZW50KX19LmhvdmVyXFw6YmctbXV0ZWRcXC81MDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmhvdmVyXFw6YmctbXV0ZWRcXC81MDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCk1MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcXDpiZy1tdXRlZFxcLzgwOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcXDpiZy1tdXRlZFxcLzgwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLW11dGVkKTgwJSx0cmFuc3BhcmVudCl9fS5ob3ZlclxcOmJnLXByaW1hcnlcXC8yMDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnkpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaG92ZXJcXDpiZy1wcmltYXJ5XFwvMjA6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tcHJpbWFyeSkyMCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcXDpiZy1zZWNvbmRhcnlcXC84MDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXNlY29uZGFyeSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5ob3ZlclxcOmJnLXNlY29uZGFyeVxcLzgwOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXNlY29uZGFyeSk4MCUsdHJhbnNwYXJlbnQpfX0uaG92ZXJcXDp0ZXh0LWZvcmVncm91bmQ6aG92ZXJ7Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9LmhvdmVyXFw6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kOmhvdmVye2NvbG9yOnZhcigtLW11dGVkLWZvcmVncm91bmQpfS5ob3ZlclxcOnRleHQtcHJpbWFyeTpob3Zlcntjb2xvcjp2YXIoLS1wcmltYXJ5KX0uaG92ZXJcXDp1bmRlcmxpbmU6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lfS5ob3ZlclxcOnNoYWRvdy1sZzpob3ZlcnstLXR3LXNoYWRvdzowIDEwcHggMTVweCAtM3B4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpLDAgNHB4IDZweCAtNHB4IHZhcigtLXR3LXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uaG92ZXJcXDpzaGFkb3ctbWQ6aG92ZXJ7LS10dy1zaGFkb3c6MCA0cHggNnB4IC0xcHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksMCAycHggNHB4IC0ycHggdmFyKC0tdHctc2hhZG93LWNvbG9yLCMwMDAwMDAxYSk7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfX0uZm9jdXNcXDpiZy1hY2NlbnQ6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1hY2NlbnQpfS5mb2N1c1xcOnRleHQtYWNjZW50LWZvcmVncm91bmQ6Zm9jdXN7Y29sb3I6dmFyKC0tYWNjZW50LWZvcmVncm91bmQpfS5mb2N1c1xcOm91dGxpbmUtbm9uZTpmb2N1c3stLXR3LW91dGxpbmUtc3R5bGU6bm9uZTtvdXRsaW5lLXN0eWxlOm5vbmV9OmlzKC5mb2N1c1xcOlxcKlxcKlxcOnRleHQtYWNjZW50LWZvcmVncm91bmQ6Zm9jdXMgKiksOmlzKC5ub3QtZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDpmb2N1c1xcOlxcKlxcKlxcOnRleHQtYWNjZW50LWZvcmVncm91bmQ6bm90KFtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdKTpmb2N1cyAqKXtjb2xvcjp2YXIoLS1hY2NlbnQtZm9yZWdyb3VuZCl9LmZvY3VzLXZpc2libGVcXDpib3JkZXItZGVzdHJ1Y3RpdmVcXC80MDpmb2N1cy12aXNpYmxle2JvcmRlci1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5mb2N1cy12aXNpYmxlXFw6Ym9yZGVyLWRlc3RydWN0aXZlXFwvNDA6Zm9jdXMtdmlzaWJsZXtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTQwJSx0cmFuc3BhcmVudCl9fS5mb2N1cy12aXNpYmxlXFw6Ym9yZGVyLXJpbmc6Zm9jdXMtdmlzaWJsZXtib3JkZXItY29sb3I6dmFyKC0tcmluZyl9LmZvY3VzLXZpc2libGVcXDpyaW5nLTA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMHB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LmZvY3VzLXZpc2libGVcXDpyaW5nLTI6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoMnB4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9LmZvY3VzLXZpc2libGVcXDpyaW5nLTM6Zm9jdXMtdmlzaWJsZSwuZm9jdXMtdmlzaWJsZVxcOnJpbmctXFxbM3B4XFxdOmZvY3VzLXZpc2libGV7LS10dy1yaW5nLXNoYWRvdzp2YXIoLS10dy1yaW5nLWluc2V0LCkwIDAgMCBjYWxjKDNweCArIHZhcigtLXR3LXJpbmctb2Zmc2V0LXdpZHRoKSl2YXIoLS10dy1yaW5nLWNvbG9yLGN1cnJlbnRjb2xvcik7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5mb2N1cy12aXNpYmxlXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzIwOmZvY3VzLXZpc2libGV7LS10dy1yaW5nLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmZvY3VzLXZpc2libGVcXDpyaW5nLWRlc3RydWN0aXZlXFwvMjA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5mb2N1cy12aXNpYmxlXFw6cmluZy1yaW5nXFwvNTA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6dmFyKC0tcmluZyl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5mb2N1cy12aXNpYmxlXFw6cmluZy1yaW5nXFwvNTA6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLXJpbmcpNTAlLHRyYW5zcGFyZW50KX19LmZvY3VzLXZpc2libGVcXDpvdXRsaW5lLTE6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLXN0eWxlOnZhcigtLXR3LW91dGxpbmUtc3R5bGUpO291dGxpbmUtd2lkdGg6MXB4fS5mb2N1cy12aXNpYmxlXFw6b3V0bGluZS0yOmZvY3VzLXZpc2libGV7b3V0bGluZS1zdHlsZTp2YXIoLS10dy1vdXRsaW5lLXN0eWxlKTtvdXRsaW5lLXdpZHRoOjJweH0uZm9jdXMtdmlzaWJsZVxcOm91dGxpbmUtb2Zmc2V0LTI6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLW9mZnNldDoycHh9LmZvY3VzLXZpc2libGVcXDpvdXRsaW5lLXByaW1hcnk6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLWNvbG9yOnZhcigtLXByaW1hcnkpfS5mb2N1cy12aXNpYmxlXFw6b3V0bGluZS1yaW5nOmZvY3VzLXZpc2libGV7b3V0bGluZS1jb2xvcjp2YXIoLS1yaW5nKX0uYWN0aXZlXFw6dHJhbnNsYXRlLXktcHg6YWN0aXZley0tdHctdHJhbnNsYXRlLXk6MXB4O3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LmRpc2FibGVkXFw6cG9pbnRlci1ldmVudHMtbm9uZTpkaXNhYmxlZHtwb2ludGVyLWV2ZW50czpub25lfS5kaXNhYmxlZFxcOmN1cnNvci1ub3QtYWxsb3dlZDpkaXNhYmxlZHtjdXJzb3I6bm90LWFsbG93ZWR9LmRpc2FibGVkXFw6YmctaW5wdXRcXC81MDpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWlucHV0KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRpc2FibGVkXFw6YmctaW5wdXRcXC81MDpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCk1MCUsdHJhbnNwYXJlbnQpfX0uZGlzYWJsZWRcXDpiZy10cmFuc3BhcmVudDpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5kaXNhYmxlZFxcOm9wYWNpdHktNTA6ZGlzYWJsZWR7b3BhY2l0eTouNX06d2hlcmUoW2RhdGEtc2xvdD1idXR0b24tZ3JvdXBdKSAuaW4tZGF0YS1cXFtzbG90XFw9YnV0dG9uLWdyb3VwXFxdXFw6cm91bmRlZC1sZ3tib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cyl9OndoZXJlKFtkYXRhLXNsb3Q9Y29tYm9ib3gtY29udGVudF0pIC5pbi1kYXRhLVxcW3Nsb3RcXD1jb21ib2JveC1jb250ZW50XFxdXFw6Zm9jdXMtd2l0aGluXFw6Ym9yZGVyLWluaGVyaXQ6Zm9jdXMtd2l0aGlue2JvcmRlci1jb2xvcjppbmhlcml0fTp3aGVyZShbZGF0YS1zbG90PWNvbWJvYm94LWNvbnRlbnRdKSAuaW4tZGF0YS1cXFtzbG90XFw9Y29tYm9ib3gtY29udGVudFxcXVxcOmZvY3VzLXdpdGhpblxcOnJpbmctMDpmb2N1cy13aXRoaW57LS10dy1yaW5nLXNoYWRvdzp2YXIoLS10dy1yaW5nLWluc2V0LCkwIDAgMCBjYWxjKDBweCArIHZhcigtLXR3LXJpbmctb2Zmc2V0LXdpZHRoKSl2YXIoLS10dy1yaW5nLWNvbG9yLGN1cnJlbnRjb2xvcik7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfTp3aGVyZShbZGF0YS1zbG90PWRpYWxvZy1jb250ZW50XSkgLmluLWRhdGEtXFxbc2xvdFxcPWRpYWxvZy1jb250ZW50XFxdXFw6cm91bmRlZC1sZ1xcIXtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cykhaW1wb3J0YW50fS5oYXMtZGlzYWJsZWRcXDpiZy1pbnB1dFxcLzUwOmhhcyg6ZGlzYWJsZWQpe2JhY2tncm91bmQtY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaGFzLWRpc2FibGVkXFw6YmctaW5wdXRcXC81MDpoYXMoOmRpc2FibGVkKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCk1MCUsdHJhbnNwYXJlbnQpfX0uaGFzLWRpc2FibGVkXFw6b3BhY2l0eS01MDpoYXMoOmRpc2FibGVkKXtvcGFjaXR5Oi41fS5oYXMtZGF0YS1cXFtpY29uXFw9aW5saW5lLWVuZFxcXVxcOnByLTFcXC41OmhhcyhbZGF0YS1pY29uPWlubGluZS1lbmRdKXtwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uaGFzLWRhdGEtXFxbaWNvblxcPWlubGluZS1lbmRcXF1cXDpwci0yOmhhcyhbZGF0YS1pY29uPWlubGluZS1lbmRdKXtwYWRkaW5nLXJpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMil9Lmhhcy1kYXRhLVxcW2ljb25cXD1pbmxpbmUtZW5kXFxdXFw6cHItMzpoYXMoW2RhdGEtaWNvbj1pbmxpbmUtZW5kXSl7cGFkZGluZy1yaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5oYXMtZGF0YS1cXFtpY29uXFw9aW5saW5lLXN0YXJ0XFxdXFw6cGwtMVxcLjU6aGFzKFtkYXRhLWljb249aW5saW5lLXN0YXJ0XSl7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uaGFzLWRhdGEtXFxbaWNvblxcPWlubGluZS1zdGFydFxcXVxcOnBsLTI6aGFzKFtkYXRhLWljb249aW5saW5lLXN0YXJ0XSl7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMil9Lmhhcy1kYXRhLVxcW2ljb25cXD1pbmxpbmUtc3RhcnRcXF1cXDpwbC0zOmhhcyhbZGF0YS1pY29uPWlubGluZS1zdGFydF0pe3BhZGRpbmctbGVmdDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5oYXMtZGF0YS1cXFtzbG90XFw9Y2FyZC1hY3Rpb25cXF1cXDpncmlkLWNvbHMtXFxbMWZyX2F1dG9cXF06aGFzKFtkYXRhLXNsb3Q9Y2FyZC1hY3Rpb25dKXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIGF1dG99Lmhhcy1kYXRhLVxcW3Nsb3RcXD1jYXJkLWRlc2NyaXB0aW9uXFxdXFw6Z3JpZC1yb3dzLVxcW2F1dG9fYXV0b1xcXTpoYXMoW2RhdGEtc2xvdD1jYXJkLWRlc2NyaXB0aW9uXSl7Z3JpZC10ZW1wbGF0ZS1yb3dzOmF1dG8gYXV0b30uaGFzLWRhdGEtXFxbc2xvdFxcPWNhcmQtZm9vdGVyXFxdXFw6cGItMDpoYXMoW2RhdGEtc2xvdD1jYXJkLWZvb3Rlcl0pe3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmhhcy1cXFtcXFtkYXRhLXNsb3RcXD1pbnB1dC1ncm91cC1jb250cm9sXFxdXFw6Zm9jdXMtdmlzaWJsZVxcXVxcOmJvcmRlci1yaW5nOmhhcyhbZGF0YS1zbG90PWlucHV0LWdyb3VwLWNvbnRyb2xdOmZvY3VzLXZpc2libGUpe2JvcmRlci1jb2xvcjp2YXIoLS1yaW5nKX0uaGFzLVxcW1xcW2RhdGEtc2xvdFxcPWlucHV0LWdyb3VwLWNvbnRyb2xcXF1cXDpmb2N1cy12aXNpYmxlXFxdXFw6cmluZy0zOmhhcyhbZGF0YS1zbG90PWlucHV0LWdyb3VwLWNvbnRyb2xdOmZvY3VzLXZpc2libGUpey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uaGFzLVxcW1xcW2RhdGEtc2xvdFxcPWlucHV0LWdyb3VwLWNvbnRyb2xcXF1cXDpmb2N1cy12aXNpYmxlXFxdXFw6cmluZy1yaW5nXFwvNTA6aGFzKFtkYXRhLXNsb3Q9aW5wdXQtZ3JvdXAtY29udHJvbF06Zm9jdXMtdmlzaWJsZSl7LS10dy1yaW5nLWNvbG9yOnZhcigtLXJpbmcpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuaGFzLVxcW1xcW2RhdGEtc2xvdFxcPWlucHV0LWdyb3VwLWNvbnRyb2xcXF1cXDpmb2N1cy12aXNpYmxlXFxdXFw6cmluZy1yaW5nXFwvNTA6aGFzKFtkYXRhLXNsb3Q9aW5wdXQtZ3JvdXAtY29udHJvbF06Zm9jdXMtdmlzaWJsZSl7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1yaW5nKTUwJSx0cmFuc3BhcmVudCl9fS5oYXMtXFxbXFxbZGF0YS1zbG90XFxdXFxbYXJpYS1pbnZhbGlkXFw9dHJ1ZVxcXVxcXVxcOmJvcmRlci1kZXN0cnVjdGl2ZTpoYXMoW2RhdGEtc2xvdF1bYXJpYS1pbnZhbGlkPXRydWVdKXtib3JkZXItY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfS5oYXMtXFxbXFxbZGF0YS1zbG90XFxdXFxbYXJpYS1pbnZhbGlkXFw9dHJ1ZVxcXVxcXVxcOnJpbmctMzpoYXMoW2RhdGEtc2xvdF1bYXJpYS1pbnZhbGlkPXRydWVdKXstLXR3LXJpbmctc2hhZG93OnZhcigtLXR3LXJpbmctaW5zZXQsKTAgMCAwIGNhbGMoM3B4ICsgdmFyKC0tdHctcmluZy1vZmZzZXQtd2lkdGgpKXZhcigtLXR3LXJpbmctY29sb3IsY3VycmVudGNvbG9yKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9Lmhhcy1cXFtcXFtkYXRhLXNsb3RcXF1cXFthcmlhLWludmFsaWRcXD10cnVlXFxdXFxdXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzIwOmhhcyhbZGF0YS1zbG90XVthcmlhLWludmFsaWQ9dHJ1ZV0pey0tdHctcmluZy1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5oYXMtXFxbXFxbZGF0YS1zbG90XFxdXFxbYXJpYS1pbnZhbGlkXFw9dHJ1ZVxcXVxcXVxcOnJpbmctZGVzdHJ1Y3RpdmVcXC8yMDpoYXMoW2RhdGEtc2xvdF1bYXJpYS1pbnZhbGlkPXRydWVdKXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5oYXMtXFxbXFxcdTAwM2VcXFtkYXRhLWFsaWduXFw9YmxvY2stZW5kXFxdXFxdXFw6aC1hdXRvOmhhcyhcdTAwM2VbZGF0YS1hbGlnbj1ibG9jay1lbmRdKXtoZWlnaHQ6YXV0b30uaGFzLVxcW1xcXHUwMDNlXFxbZGF0YS1hbGlnblxcPWJsb2NrLWVuZFxcXVxcXVxcOmZsZXgtY29sOmhhcyhcdTAwM2VbZGF0YS1hbGlnbj1ibG9jay1lbmRdKXtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lmhhcy1cXFtcXFx1MDAzZVxcW2RhdGEtYWxpZ25cXD1ibG9jay1zdGFydFxcXVxcXVxcOmgtYXV0bzpoYXMoXHUwMDNlW2RhdGEtYWxpZ249YmxvY2stc3RhcnRdKXtoZWlnaHQ6YXV0b30uaGFzLVxcW1xcXHUwMDNlXFxbZGF0YS1hbGlnblxcPWJsb2NrLXN0YXJ0XFxdXFxdXFw6ZmxleC1jb2w6aGFzKFx1MDAzZVtkYXRhLWFsaWduPWJsb2NrLXN0YXJ0XSl7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5oYXMtXFxbXFxcdTAwM2VidXR0b25cXF1cXDptci1cXFstMFxcLjNyZW1cXF06aGFzKFx1MDAzZWJ1dHRvbil7bWFyZ2luLXJpZ2h0Oi0uM3JlbX0uaGFzLVxcW1xcXHUwMDNlYnV0dG9uXFxdXFw6bWwtXFxbLTBcXC4zcmVtXFxdOmhhcyhcdTAwM2VidXR0b24pe21hcmdpbi1sZWZ0Oi0uM3JlbX0uaGFzLVxcW1xcXHUwMDNlaW1nXFw6Zmlyc3QtY2hpbGRcXF1cXDpwdC0wOmhhcyhcdTAwM2VpbWc6Zmlyc3QtY2hpbGQpe3BhZGRpbmctdG9wOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lmhhcy1cXFtcXFx1MDAzZWtiZFxcXVxcOm1yLVxcWy0wXFwuMTVyZW1cXF06aGFzKFx1MDAzZWtiZCl7bWFyZ2luLXJpZ2h0Oi0uMTVyZW19Lmhhcy1cXFtcXFx1MDAzZWtiZFxcXVxcOm1sLVxcWy0wXFwuMTVyZW1cXF06aGFzKFx1MDAzZWtiZCl7bWFyZ2luLWxlZnQ6LS4xNXJlbX0uaGFzLVxcW1xcXHUwMDNlc3ZnXFxdXFw6cC0wOmhhcyhcdTAwM2Vzdmcpe3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uaGFzLVxcW1xcXHUwMDNldGV4dGFyZWFcXF1cXDpoLWF1dG86aGFzKFx1MDAzZXRleHRhcmVhKXtoZWlnaHQ6YXV0b30uYXJpYS1kaXNhYmxlZFxcOnBvaW50ZXItZXZlbnRzLW5vbmVbYXJpYS1kaXNhYmxlZD10cnVlXXtwb2ludGVyLWV2ZW50czpub25lfS5hcmlhLWRpc2FibGVkXFw6b3BhY2l0eS01MFthcmlhLWRpc2FibGVkPXRydWVde29wYWNpdHk6LjV9LmFyaWEtZXhwYW5kZWRcXDpiZy1tdXRlZFthcmlhLWV4cGFuZGVkPXRydWVde2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5hcmlhLWV4cGFuZGVkXFw6Ymctc2Vjb25kYXJ5W2FyaWEtZXhwYW5kZWQ9dHJ1ZV17YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1zZWNvbmRhcnkpfS5hcmlhLWV4cGFuZGVkXFw6dGV4dC1mb3JlZ3JvdW5kW2FyaWEtZXhwYW5kZWQ9dHJ1ZV17Y29sb3I6dmFyKC0tZm9yZWdyb3VuZCl9LmFyaWEtZXhwYW5kZWRcXDp0ZXh0LXNlY29uZGFyeS1mb3JlZ3JvdW5kW2FyaWEtZXhwYW5kZWQ9dHJ1ZV17Y29sb3I6dmFyKC0tc2Vjb25kYXJ5LWZvcmVncm91bmQpfS5hcmlhLWludmFsaWRcXDpib3JkZXItZGVzdHJ1Y3RpdmVbYXJpYS1pbnZhbGlkPXRydWVde2JvcmRlci1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9LmFyaWEtaW52YWxpZFxcOnJpbmctMFthcmlhLWludmFsaWQ9dHJ1ZV17LS10dy1yaW5nLXNoYWRvdzp2YXIoLS10dy1yaW5nLWluc2V0LCkwIDAgMCBjYWxjKDBweCArIHZhcigtLXR3LXJpbmctb2Zmc2V0LXdpZHRoKSl2YXIoLS10dy1yaW5nLWNvbG9yLGN1cnJlbnRjb2xvcik7Ym94LXNoYWRvdzp2YXIoLS10dy1pbnNldC1zaGFkb3cpLHZhcigtLXR3LWluc2V0LXJpbmctc2hhZG93KSx2YXIoLS10dy1yaW5nLW9mZnNldC1zaGFkb3cpLHZhcigtLXR3LXJpbmctc2hhZG93KSx2YXIoLS10dy1zaGFkb3cpfS5hcmlhLWludmFsaWRcXDpyaW5nLTNbYXJpYS1pbnZhbGlkPXRydWVdey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygzcHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX0uYXJpYS1pbnZhbGlkXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzIwW2FyaWEtaW52YWxpZD10cnVlXXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuYXJpYS1pbnZhbGlkXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzIwW2FyaWEtaW52YWxpZD10cnVlXXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTIwJSx0cmFuc3BhcmVudCl9fS5kYXRhLWVuZGluZy1zdHlsZVxcOm9wYWNpdHktMFtkYXRhLWVuZGluZy1zdHlsZV17b3BhY2l0eTowfS5kYXRhLWluc2V0XFw6cGwtN1tkYXRhLWluc2V0XXtwYWRkaW5nLWxlZnQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo3KX0uZGF0YS1wb3B1cC1vcGVuXFw6YmctYWNjZW50W2RhdGEtcG9wdXAtb3Blbl17YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1hY2NlbnQpfS5kYXRhLXBvcHVwLW9wZW5cXDp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kW2RhdGEtcG9wdXAtb3Blbl17Y29sb3I6dmFyKC0tYWNjZW50LWZvcmVncm91bmQpfS5kYXRhLXN0YXJ0aW5nLXN0eWxlXFw6b3BhY2l0eS0wW2RhdGEtc3RhcnRpbmctc3R5bGVde29wYWNpdHk6MH0uZGF0YS1cXFtkaXNhYmxlZFxcPXRydWVcXF1cXDpwb2ludGVyLWV2ZW50cy1ub25lW2RhdGEtZGlzYWJsZWQ9dHJ1ZV17cG9pbnRlci1ldmVudHM6bm9uZX0uZGF0YS1cXFtkaXNhYmxlZFxcPXRydWVcXF1cXDpvcGFjaXR5LTUwW2RhdGEtZGlzYWJsZWQ9dHJ1ZV17b3BhY2l0eTouNX0uZGF0YS1cXFtzaWRlXFw9Ym90dG9tXFxdXFw6aW5zZXQteC0wW2RhdGEtc2lkZT1ib3R0b21de2luc2V0LWlubGluZTpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxcW3NpZGVcXD1ib3R0b21cXF1cXDpib3R0b20tMFtkYXRhLXNpZGU9Ym90dG9tXXtib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cXFtzaWRlXFw9Ym90dG9tXFxdXFw6aC1hdXRvW2RhdGEtc2lkZT1ib3R0b21de2hlaWdodDphdXRvfS5kYXRhLVxcW3NpZGVcXD1ib3R0b21cXF1cXDpib3JkZXItdFtkYXRhLXNpZGU9Ym90dG9tXXtib3JkZXItdG9wLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXRvcC13aWR0aDoxcHh9LmRhdGEtXFxbc2lkZVxcPWJvdHRvbVxcXVxcOnNsaWRlLWluLWZyb20tdG9wLTJbZGF0YS1zaWRlPWJvdHRvbV17LS10dy1lbnRlci10cmFuc2xhdGUteTpjYWxjKDIqdmFyKC0tc3BhY2luZykqLTEpfS5kYXRhLVxcW3NpZGVcXD1ib3R0b21cXF1cXDpkYXRhLWVuZGluZy1zdHlsZVxcOnRyYW5zbGF0ZS15LVxcWzJcXC41cmVtXFxdW2RhdGEtc2lkZT1ib3R0b21dW2RhdGEtZW5kaW5nLXN0eWxlXSwuZGF0YS1cXFtzaWRlXFw9Ym90dG9tXFxdXFw6ZGF0YS1zdGFydGluZy1zdHlsZVxcOnRyYW5zbGF0ZS15LVxcWzJcXC41cmVtXFxdW2RhdGEtc2lkZT1ib3R0b21dW2RhdGEtc3RhcnRpbmctc3R5bGVdey0tdHctdHJhbnNsYXRlLXk6Mi41cmVtO3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LmRhdGEtXFxbc2lkZVxcPWlubGluZS1lbmRcXF1cXDpzbGlkZS1pbi1mcm9tLWxlZnQtMltkYXRhLXNpZGU9aW5saW5lLWVuZF17LS10dy1lbnRlci10cmFuc2xhdGUteDpjYWxjKDIqdmFyKC0tc3BhY2luZykqLTEpfS5kYXRhLVxcW3NpZGVcXD1pbmxpbmUtc3RhcnRcXF1cXDpzbGlkZS1pbi1mcm9tLXJpZ2h0LTJbZGF0YS1zaWRlPWlubGluZS1zdGFydF17LS10dy1lbnRlci10cmFuc2xhdGUteDpjYWxjKDIqdmFyKC0tc3BhY2luZykpfS5kYXRhLVxcW3NpZGVcXD1sZWZ0XFxdXFw6aW5zZXQteS0wW2RhdGEtc2lkZT1sZWZ0XXtpbnNldC1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxcW3NpZGVcXD1sZWZ0XFxdXFw6bGVmdC0wW2RhdGEtc2lkZT1sZWZ0XXtsZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMCl9LmRhdGEtXFxbc2lkZVxcPWxlZnRcXF1cXDpoLWZ1bGxbZGF0YS1zaWRlPWxlZnRde2hlaWdodDoxMDAlfS5kYXRhLVxcW3NpZGVcXD1sZWZ0XFxdXFw6dy0zXFwvNFtkYXRhLXNpZGU9bGVmdF17d2lkdGg6NzUlfS5kYXRhLVxcW3NpZGVcXD1sZWZ0XFxdXFw6Ym9yZGVyLXJbZGF0YS1zaWRlPWxlZnRde2JvcmRlci1yaWdodC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1yaWdodC13aWR0aDoxcHh9LmRhdGEtXFxbc2lkZVxcPWxlZnRcXF1cXDpzbGlkZS1pbi1mcm9tLXJpZ2h0LTJbZGF0YS1zaWRlPWxlZnRdey0tdHctZW50ZXItdHJhbnNsYXRlLXg6Y2FsYygyKnZhcigtLXNwYWNpbmcpKX0uZGF0YS1cXFtzaWRlXFw9bGVmdFxcXVxcOmRhdGEtZW5kaW5nLXN0eWxlXFw6dHJhbnNsYXRlLXgtXFxbLTJcXC41cmVtXFxdW2RhdGEtc2lkZT1sZWZ0XVtkYXRhLWVuZGluZy1zdHlsZV0sLmRhdGEtXFxbc2lkZVxcPWxlZnRcXF1cXDpkYXRhLXN0YXJ0aW5nLXN0eWxlXFw6dHJhbnNsYXRlLXgtXFxbLTJcXC41cmVtXFxdW2RhdGEtc2lkZT1sZWZ0XVtkYXRhLXN0YXJ0aW5nLXN0eWxlXXstLXR3LXRyYW5zbGF0ZS14Oi0yLjVyZW07dHJhbnNsYXRlOnZhcigtLXR3LXRyYW5zbGF0ZS14KXZhcigtLXR3LXRyYW5zbGF0ZS15KX0uZGF0YS1cXFtzaWRlXFw9cmlnaHRcXF1cXDppbnNldC15LTBbZGF0YS1zaWRlPXJpZ2h0XXtpbnNldC1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxcW3NpZGVcXD1yaWdodFxcXVxcOnJpZ2h0LTBbZGF0YS1zaWRlPXJpZ2h0XXtyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjApfS5kYXRhLVxcW3NpZGVcXD1yaWdodFxcXVxcOmgtZnVsbFtkYXRhLXNpZGU9cmlnaHRde2hlaWdodDoxMDAlfS5kYXRhLVxcW3NpZGVcXD1yaWdodFxcXVxcOnctM1xcLzRbZGF0YS1zaWRlPXJpZ2h0XXt3aWR0aDo3NSV9LmRhdGEtXFxbc2lkZVxcPXJpZ2h0XFxdXFw6Ym9yZGVyLWxbZGF0YS1zaWRlPXJpZ2h0XXtib3JkZXItbGVmdC1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1sZWZ0LXdpZHRoOjFweH0uZGF0YS1cXFtzaWRlXFw9cmlnaHRcXF1cXDpzbGlkZS1pbi1mcm9tLWxlZnQtMltkYXRhLXNpZGU9cmlnaHRdey0tdHctZW50ZXItdHJhbnNsYXRlLXg6Y2FsYygyKnZhcigtLXNwYWNpbmcpKi0xKX0uZGF0YS1cXFtzaWRlXFw9cmlnaHRcXF1cXDpkYXRhLWVuZGluZy1zdHlsZVxcOnRyYW5zbGF0ZS14LVxcWzJcXC41cmVtXFxdW2RhdGEtc2lkZT1yaWdodF1bZGF0YS1lbmRpbmctc3R5bGVdLC5kYXRhLVxcW3NpZGVcXD1yaWdodFxcXVxcOmRhdGEtc3RhcnRpbmctc3R5bGVcXDp0cmFuc2xhdGUteC1cXFsyXFwuNXJlbVxcXVtkYXRhLXNpZGU9cmlnaHRdW2RhdGEtc3RhcnRpbmctc3R5bGVdey0tdHctdHJhbnNsYXRlLXg6Mi41cmVtO3RyYW5zbGF0ZTp2YXIoLS10dy10cmFuc2xhdGUteCl2YXIoLS10dy10cmFuc2xhdGUteSl9LmRhdGEtXFxbc2lkZVxcPXRvcFxcXVxcOmluc2V0LXgtMFtkYXRhLXNpZGU9dG9wXXtpbnNldC1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uZGF0YS1cXFtzaWRlXFw9dG9wXFxdXFw6dG9wLTBbZGF0YS1zaWRlPXRvcF17dG9wOmNhbGModmFyKC0tc3BhY2luZykqMCl9LmRhdGEtXFxbc2lkZVxcPXRvcFxcXVxcOmgtYXV0b1tkYXRhLXNpZGU9dG9wXXtoZWlnaHQ6YXV0b30uZGF0YS1cXFtzaWRlXFw9dG9wXFxdXFw6Ym9yZGVyLWJbZGF0YS1zaWRlPXRvcF17Ym9yZGVyLWJvdHRvbS1zdHlsZTp2YXIoLS10dy1ib3JkZXItc3R5bGUpO2JvcmRlci1ib3R0b20td2lkdGg6MXB4fS5kYXRhLVxcW3NpZGVcXD10b3BcXF1cXDpzbGlkZS1pbi1mcm9tLWJvdHRvbS0yW2RhdGEtc2lkZT10b3Bdey0tdHctZW50ZXItdHJhbnNsYXRlLXk6Y2FsYygyKnZhcigtLXNwYWNpbmcpKX0uZGF0YS1cXFtzaWRlXFw9dG9wXFxdXFw6ZGF0YS1lbmRpbmctc3R5bGVcXDp0cmFuc2xhdGUteS1cXFstMlxcLjVyZW1cXF1bZGF0YS1zaWRlPXRvcF1bZGF0YS1lbmRpbmctc3R5bGVdLC5kYXRhLVxcW3NpZGVcXD10b3BcXF1cXDpkYXRhLXN0YXJ0aW5nLXN0eWxlXFw6dHJhbnNsYXRlLXktXFxbLTJcXC41cmVtXFxdW2RhdGEtc2lkZT10b3BdW2RhdGEtc3RhcnRpbmctc3R5bGVdey0tdHctdHJhbnNsYXRlLXk6LTIuNXJlbTt0cmFuc2xhdGU6dmFyKC0tdHctdHJhbnNsYXRlLXgpdmFyKC0tdHctdHJhbnNsYXRlLXkpfS5kYXRhLVxcW3NpemVcXD1sZ1xcXVxcOnNpemUtMTBbZGF0YS1zaXplPWxnXXt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjEwKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxMCl9LmRhdGEtXFxbc2l6ZVxcPXNtXFxdXFw6c2l6ZS02W2RhdGEtc2l6ZT1zbV17d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo2KX0uZGF0YS1cXFtzaXplXFw9c21cXF1cXDpnYXAtM1tkYXRhLXNpemU9c21de2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjMpfS5kYXRhLVxcW3NpemVcXD1zbVxcXVxcOnB5LTNbZGF0YS1zaXplPXNtXXtwYWRkaW5nLWJsb2NrOmNhbGModmFyKC0tc3BhY2luZykqMyl9LmRhdGEtXFxbc2l6ZVxcPXNtXFxdXFw6aGFzLWRhdGEtXFxbc2xvdFxcPWNhcmQtZm9vdGVyXFxdXFw6cGItMFtkYXRhLXNpemU9c21dOmhhcyhbZGF0YS1zbG90PWNhcmQtZm9vdGVyXSl7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX06aXMoLlxcKlxcOmRhdGEtXFxbc2xvdFxcPWF2YXRhclxcXVxcOnJpbmctMlx1MDAzZSopW2RhdGEtc2xvdD1hdmF0YXJdey0tdHctcmluZy1zaGFkb3c6dmFyKC0tdHctcmluZy1pbnNldCwpMCAwIDAgY2FsYygycHggKyB2YXIoLS10dy1yaW5nLW9mZnNldC13aWR0aCkpdmFyKC0tdHctcmluZy1jb2xvcixjdXJyZW50Y29sb3IpO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX06aXMoLlxcKlxcOmRhdGEtXFxbc2xvdFxcPWF2YXRhclxcXVxcOnJpbmctYmFja2dyb3VuZFx1MDAzZSopW2RhdGEtc2xvdD1hdmF0YXJdey0tdHctcmluZy1jb2xvcjp2YXIoLS1iYWNrZ3JvdW5kKX06aXMoLlxcKlxcOmRhdGEtXFxbc2xvdFxcPWlucHV0LWdyb3VwLWFkZG9uXFxdXFw6cGwtMlxcIVx1MDAzZSopW2RhdGEtc2xvdD1pbnB1dC1ncm91cC1hZGRvbl17cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMikhaW1wb3J0YW50fS5kYXRhLVxcW3N0YXRlXFw9c2VsZWN0ZWRcXF1cXDpiZy1tdXRlZFtkYXRhLXN0YXRlPXNlbGVjdGVkXXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW11dGVkKX0uZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDp0ZXh0LWRlc3RydWN0aXZlW2RhdGEtdmFyaWFudD1kZXN0cnVjdGl2ZV17Y29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfS5kYXRhLVxcW3ZhcmlhbnRcXD1kZXN0cnVjdGl2ZVxcXVxcOmZvY3VzXFw6YmctZGVzdHJ1Y3RpdmVcXC8xMFtkYXRhLXZhcmlhbnQ9ZGVzdHJ1Y3RpdmVdOmZvY3Vze2JhY2tncm91bmQtY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDpmb2N1c1xcOmJnLWRlc3RydWN0aXZlXFwvMTBbZGF0YS12YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkxMCUsdHJhbnNwYXJlbnQpfX0uZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDpmb2N1c1xcOnRleHQtZGVzdHJ1Y3RpdmVbZGF0YS12YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1c3tjb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9LmRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXDpyb3VuZGVkLW5vbmVbZGF0YS12YXJpYW50PWxpbmVde2JvcmRlci1yYWRpdXM6MH1Ac3VwcG9ydHMgKCgtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjp2YXIoLS10dykpIG9yIChiYWNrZHJvcC1maWx0ZXI6dmFyKC0tdHcpKSl7LnN1cHBvcnRzLWJhY2tkcm9wLWZpbHRlclxcOmJhY2tkcm9wLWJsdXIteHN7LS10dy1iYWNrZHJvcC1ibHVyOmJsdXIodmFyKC0tYmx1ci14cykpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnZhcigtLXR3LWJhY2tkcm9wLWJsdXIsKXZhcigtLXR3LWJhY2tkcm9wLWJyaWdodG5lc3MsKXZhcigtLXR3LWJhY2tkcm9wLWNvbnRyYXN0LCl2YXIoLS10dy1iYWNrZHJvcC1ncmF5c2NhbGUsKXZhcigtLXR3LWJhY2tkcm9wLWh1ZS1yb3RhdGUsKXZhcigtLXR3LWJhY2tkcm9wLWludmVydCwpdmFyKC0tdHctYmFja2Ryb3Atb3BhY2l0eSwpdmFyKC0tdHctYmFja2Ryb3Atc2F0dXJhdGUsKXZhcigtLXR3LWJhY2tkcm9wLXNlcGlhLCk7YmFja2Ryb3AtZmlsdGVyOnZhcigtLXR3LWJhY2tkcm9wLWJsdXIsKXZhcigtLXR3LWJhY2tkcm9wLWJyaWdodG5lc3MsKXZhcigtLXR3LWJhY2tkcm9wLWNvbnRyYXN0LCl2YXIoLS10dy1iYWNrZHJvcC1ncmF5c2NhbGUsKXZhcigtLXR3LWJhY2tkcm9wLWh1ZS1yb3RhdGUsKXZhcigtLXR3LWJhY2tkcm9wLWludmVydCwpdmFyKC0tdHctYmFja2Ryb3Atb3BhY2l0eSwpdmFyKC0tdHctYmFja2Ryb3Atc2F0dXJhdGUsKXZhcigtLXR3LWJhY2tkcm9wLXNlcGlhLCl9fUBtZWRpYSAobWluLXdpZHRoOjQwcmVtKXsuc21cXDpibG9ja3tkaXNwbGF5OmJsb2NrfS5zbVxcOmhpZGRlbntkaXNwbGF5Om5vbmV9LnNtXFw6aW5saW5le2Rpc3BsYXk6aW5saW5lfS5zbVxcOmlubGluZS1mbGV4e2Rpc3BsYXk6aW5saW5lLWZsZXh9LnNtXFw6aC0yNHtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyNCl9LnNtXFw6dy00MHt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjQwKX0uc21cXDp3LWF1dG97d2lkdGg6YXV0b30uc21cXDptYXgtdy1zbXttYXgtd2lkdGg6dmFyKC0tY29udGFpbmVyLXNtKX0uc21cXDpmbGV4LW5vbmV7ZmxleDpub25lfS5zbVxcOmdyaWQtY29scy0ye2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKX0uc21cXDpncmlkLWNvbHMtM3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDMsbWlubWF4KDAsMWZyKSl9LnNtXFw6ZmxleC1yb3d7ZmxleC1kaXJlY3Rpb246cm93fS5zbVxcOml0ZW1zLWNlbnRlcnthbGlnbi1pdGVtczpjZW50ZXJ9LnNtXFw6anVzdGlmeS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5zbVxcOmp1c3RpZnktZW5ke2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uc21cXDpwLTV7cGFkZGluZzpjYWxjKHZhcigtLXNwYWNpbmcpKjUpfS5zbVxcOnAtNntwYWRkaW5nOmNhbGModmFyKC0tc3BhY2luZykqNil9LnNtXFw6cC04e3BhZGRpbmc6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4KX0uc21cXDp0ZXh0LXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9LnNtXFw6dGV4dC0zeGx7Zm9udC1zaXplOnZhcigtLXRleHQtM3hsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtM3hsLS1saW5lLWhlaWdodCkpfS5zbVxcOnRleHQtYmFzZXtmb250LXNpemU6dmFyKC0tdGV4dC1iYXNlKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtYmFzZS0tbGluZS1oZWlnaHQpKX0uc21cXDp0ZXh0LXhse2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXhsKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQteGwtLWxpbmUtaGVpZ2h0KSl9LmRhdGEtXFxbc2lkZVxcPWxlZnRcXF1cXDpzbVxcOm1heC13LXNtW2RhdGEtc2lkZT1sZWZ0XSwuZGF0YS1cXFtzaWRlXFw9cmlnaHRcXF1cXDpzbVxcOm1heC13LXNtW2RhdGEtc2lkZT1yaWdodF17bWF4LXdpZHRoOnZhcigtLWNvbnRhaW5lci1zbSl9fUBtZWRpYSAobWluLXdpZHRoOjQ4cmVtKXsubWRcXDppbnNldC14LWF1dG97aW5zZXQtaW5saW5lOmF1dG99Lm1kXFw6cmlnaHQtNHtyaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5tZFxcOmJvdHRvbS00e2JvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5tZFxcOmxlZnQtYXV0b3tsZWZ0OmF1dG99Lm1kXFw6YmxvY2t7ZGlzcGxheTpibG9ja30ubWRcXDpmbGV4e2Rpc3BsYXk6ZmxleH0ubWRcXDpoaWRkZW57ZGlzcGxheTpub25lfS5tZFxcOnRhYmxlLWNlbGx7ZGlzcGxheTp0YWJsZS1jZWxsfS5tZFxcOm1pbi13LTB7bWluLXdpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMCl9Lm1kXFw6Z3JpZC1jb2xzLTF7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgxLG1pbm1heCgwLDFmcikpfS5tZFxcOmdyaWQtY29scy0ye2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKX0ubWRcXDpncmlkLWNvbHMtM3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDMsbWlubWF4KDAsMWZyKSl9Lm1kXFw6Z3JpZC1jb2xzLTR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg0LG1pbm1heCgwLDFmcikpfS5tZFxcOmZsZXgtY29se2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubWRcXDppdGVtcy1jZW50ZXJ7YWxpZ24taXRlbXM6Y2VudGVyfS5tZFxcOmdhcC0xe2dhcDpjYWxjKHZhcigtLXNwYWNpbmcpKjEpfS5tZFxcOnBiLTB7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0ubWRcXDp0ZXh0LXNte2ZvbnQtc2l6ZTp2YXIoLS10ZXh0LXNtKTtsaW5lLWhlaWdodDp2YXIoLS10dy1sZWFkaW5nLHZhcigtLXRleHQtc20tLWxpbmUtaGVpZ2h0KSl9Lm1kXFw6d2hpdGVzcGFjZS1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfX1AbWVkaWEgKG1pbi13aWR0aDo2NHJlbSl7LmxnXFw6c3RpY2t5e3Bvc2l0aW9uOnN0aWNreX0ubGdcXDp0b3AtNHt0b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0ubGdcXDpibG9ja3tkaXNwbGF5OmJsb2NrfS5sZ1xcOmhpZGRlbntkaXNwbGF5Om5vbmV9LmxnXFw6dGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGx9LmxnXFw6dy03Mnt3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjcyKX0ubGdcXDpncmlkLWNvbHMtMntncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDIsbWlubWF4KDAsMWZyKSl9LmxnXFw6Z3JpZC1jb2xzLTN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgzLG1pbm1heCgwLDFmcikpfS5sZ1xcOmdyaWQtY29scy00e2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCxtaW5tYXgoMCwxZnIpKX0ubGdcXDpncmlkLWNvbHMtNXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDUsbWlubWF4KDAsMWZyKSl9LmxnXFw6Z3JpZC1jb2xzLVxcWzFmcl8zNDBweFxcXXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDM0MHB4fS5sZ1xcOmZsZXgtcm93e2ZsZXgtZGlyZWN0aW9uOnJvd30ubGdcXDpzZWxmLXN0YXJ0e2FsaWduLXNlbGY6ZmxleC1zdGFydH19QG1lZGlhIChtaW4td2lkdGg6ODByZW0pey54bFxcOnctODB7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo4MCl9fS5kYXJrXFw6YmxvY2s6aXMoLmRhcmsgKil7ZGlzcGxheTpibG9ja30uZGFya1xcOmhpZGRlbjppcyguZGFyayAqKXtkaXNwbGF5Om5vbmV9LmRhcmtcXDpib3JkZXItaW5wdXQ6aXMoLmRhcmsgKil7Ym9yZGVyLWNvbG9yOnZhcigtLWlucHV0KX0uZGFya1xcOmJnLWRlc3RydWN0aXZlXFwvMjA6aXMoLmRhcmsgKil7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6YmctZGVzdHJ1Y3RpdmVcXC8yMDppcyguZGFyayAqKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkyMCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmJnLWlucHV0XFwvMzA6aXMoLmRhcmsgKil7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6YmctaW5wdXRcXC8zMDppcyguZGFyayAqKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCkzMCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmJnLXRyYW5zcGFyZW50OmlzKC5kYXJrICope2JhY2tncm91bmQtY29sb3I6IzAwMDB9LmRhcmtcXDp0ZXh0LWdyZWVuLTQwMDppcyguZGFyayAqKXtjb2xvcjp2YXIoLS1jb2xvci1ncmVlbi00MDApfS5kYXJrXFw6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kOmlzKC5kYXJrICope2NvbG9yOnZhcigtLW11dGVkLWZvcmVncm91bmQpfS5kYXJrXFw6cHJvc2UtaW52ZXJ0OmlzKC5kYXJrICopey0tdHctcHJvc2UtYm9keTp2YXIoLS10dy1wcm9zZS1pbnZlcnQtYm9keSk7LS10dy1wcm9zZS1oZWFkaW5nczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtaGVhZGluZ3MpOy0tdHctcHJvc2UtbGVhZDp2YXIoLS10dy1wcm9zZS1pbnZlcnQtbGVhZCk7LS10dy1wcm9zZS1saW5rczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtbGlua3MpOy0tdHctcHJvc2UtYm9sZDp2YXIoLS10dy1wcm9zZS1pbnZlcnQtYm9sZCk7LS10dy1wcm9zZS1jb3VudGVyczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtY291bnRlcnMpOy0tdHctcHJvc2UtYnVsbGV0czp2YXIoLS10dy1wcm9zZS1pbnZlcnQtYnVsbGV0cyk7LS10dy1wcm9zZS1ocjp2YXIoLS10dy1wcm9zZS1pbnZlcnQtaHIpOy0tdHctcHJvc2UtcXVvdGVzOnZhcigtLXR3LXByb3NlLWludmVydC1xdW90ZXMpOy0tdHctcHJvc2UtcXVvdGUtYm9yZGVyczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtcXVvdGUtYm9yZGVycyk7LS10dy1wcm9zZS1jYXB0aW9uczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtY2FwdGlvbnMpOy0tdHctcHJvc2Uta2JkOnZhcigtLXR3LXByb3NlLWludmVydC1rYmQpOy0tdHctcHJvc2Uta2JkLXNoYWRvd3M6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LWtiZC1zaGFkb3dzKTstLXR3LXByb3NlLWNvZGU6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LWNvZGUpOy0tdHctcHJvc2UtcHJlLWNvZGU6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LXByZS1jb2RlKTstLXR3LXByb3NlLXByZS1iZzp2YXIoLS10dy1wcm9zZS1pbnZlcnQtcHJlLWJnKTstLXR3LXByb3NlLXRoLWJvcmRlcnM6dmFyKC0tdHctcHJvc2UtaW52ZXJ0LXRoLWJvcmRlcnMpOy0tdHctcHJvc2UtdGQtYm9yZGVyczp2YXIoLS10dy1wcm9zZS1pbnZlcnQtdGQtYm9yZGVycyl9LmRhcmtcXDphZnRlclxcOm1peC1ibGVuZC1saWdodGVuOmlzKC5kYXJrICopOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7bWl4LWJsZW5kLW1vZGU6bGlnaHRlbn1AbWVkaWEgKGhvdmVyOmhvdmVyKXsuZGFya1xcOmhvdmVyXFw6YmctZGVzdHJ1Y3RpdmVcXC8zMDppcyguZGFyayAqKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LmRhcmtcXDpob3ZlclxcOmJnLWRlc3RydWN0aXZlXFwvMzA6aXMoLmRhcmsgKik6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMzAlLHRyYW5zcGFyZW50KX19LmRhcmtcXDpob3ZlclxcOmJnLWlucHV0XFwvNTA6aXMoLmRhcmsgKik6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6aG92ZXJcXDpiZy1pbnB1dFxcLzUwOmlzKC5kYXJrICopOmhvdmVye2JhY2tncm91bmQtY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWlucHV0KTUwJSx0cmFuc3BhcmVudCl9fS5kYXJrXFw6aG92ZXJcXDpiZy1tdXRlZFxcLzUwOmlzKC5kYXJrICopOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1xcOmhvdmVyXFw6YmctbXV0ZWRcXC81MDppcyguZGFyayAqKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1tdXRlZCk1MCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmhvdmVyXFw6dGV4dC1mb3JlZ3JvdW5kOmlzKC5kYXJrICopOmhvdmVye2NvbG9yOnZhcigtLWZvcmVncm91bmQpfX0uZGFya1xcOmZvY3VzLXZpc2libGVcXDpyaW5nLWRlc3RydWN0aXZlXFwvNDA6aXMoLmRhcmsgKik6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1xcOmZvY3VzLXZpc2libGVcXDpyaW5nLWRlc3RydWN0aXZlXFwvNDA6aXMoLmRhcmsgKik6Zm9jdXMtdmlzaWJsZXstLXR3LXJpbmctY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTQwJSx0cmFuc3BhcmVudCl9fS5kYXJrXFw6ZGlzYWJsZWRcXDpiZy1pbnB1dFxcLzgwOmlzKC5kYXJrICopOmRpc2FibGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0taW5wdXQpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1xcOmRpc2FibGVkXFw6YmctaW5wdXRcXC84MDppcyguZGFyayAqKTpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCk4MCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmRpc2FibGVkXFw6YmctdHJhbnNwYXJlbnQ6aXMoLmRhcmsgKik6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZGFya1xcOmhhcy1kaXNhYmxlZFxcOmJnLWlucHV0XFwvODA6aXMoLmRhcmsgKik6aGFzKDpkaXNhYmxlZCl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6aGFzLWRpc2FibGVkXFw6YmctaW5wdXRcXC84MDppcyguZGFyayAqKTpoYXMoOmRpc2FibGVkKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCk4MCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmhhcy1cXFtcXFtkYXRhLXNsb3RcXF1cXFthcmlhLWludmFsaWRcXD10cnVlXFxdXFxdXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzQwOmlzKC5kYXJrICopOmhhcyhbZGF0YS1zbG90XVthcmlhLWludmFsaWQ9dHJ1ZV0pey0tdHctcmluZy1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6aGFzLVxcW1xcW2RhdGEtc2xvdFxcXVxcW2FyaWEtaW52YWxpZFxcPXRydWVcXF1cXF1cXDpyaW5nLWRlc3RydWN0aXZlXFwvNDA6aXMoLmRhcmsgKik6aGFzKFtkYXRhLXNsb3RdW2FyaWEtaW52YWxpZD10cnVlXSl7LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk0MCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmFyaWEtaW52YWxpZFxcOmJvcmRlci1kZXN0cnVjdGl2ZVxcLzUwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1xcOmFyaWEtaW52YWxpZFxcOmJvcmRlci1kZXN0cnVjdGl2ZVxcLzUwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIG9rbGFiLHZhcigtLWRlc3RydWN0aXZlKTUwJSx0cmFuc3BhcmVudCl9fS5kYXJrXFw6YXJpYS1pbnZhbGlkXFw6cmluZy1kZXN0cnVjdGl2ZVxcLzQwOmlzKC5kYXJrICopW2FyaWEtaW52YWxpZD10cnVlXXstLXR3LXJpbmctY29sb3I6dmFyKC0tZGVzdHJ1Y3RpdmUpfUBzdXBwb3J0cyAoY29sb3I6Y29sb3ItbWl4KGluIGxhYiwgcmVkLCByZWQpKXsuZGFya1xcOmFyaWEtaW52YWxpZFxcOnJpbmctZGVzdHJ1Y3RpdmVcXC80MDppcyguZGFyayAqKVthcmlhLWludmFsaWQ9dHJ1ZV17LS10dy1yaW5nLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSk0MCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmRhdGEtXFxbdmFyaWFudFxcPWRlc3RydWN0aXZlXFxdXFw6Zm9jdXNcXDpiZy1kZXN0cnVjdGl2ZVxcLzIwOmlzKC5kYXJrICopW2RhdGEtdmFyaWFudD1kZXN0cnVjdGl2ZV06Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1kZXN0cnVjdGl2ZSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6ZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDpmb2N1c1xcOmJnLWRlc3RydWN0aXZlXFwvMjA6aXMoLmRhcmsgKilbZGF0YS12YXJpYW50PWRlc3RydWN0aXZlXTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1kZXN0cnVjdGl2ZSkyMCUsdHJhbnNwYXJlbnQpfX0uZGF0YS1vcGVuXFw6YW5pbWF0ZS1pbjp3aGVyZShbZGF0YS1zdGF0ZT1vcGVuXSksLmRhdGEtb3BlblxcOmFuaW1hdGUtaW46d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7YW5pbWF0aW9uOmVudGVyIHZhcigtLXR3LWFuaW1hdGlvbi1kdXJhdGlvbix2YXIoLS10dy1kdXJhdGlvbiwuMTVzKSl2YXIoLS10dy1lYXNlLGVhc2UpdmFyKC0tdHctYW5pbWF0aW9uLWRlbGF5LDBzKXZhcigtLXR3LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsMSl2YXIoLS10dy1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCl2YXIoLS10dy1hbmltYXRpb24tZmlsbC1tb2RlLG5vbmUpfS5kYXRhLW9wZW5cXDpiZy1hY2NlbnQ6d2hlcmUoW2RhdGEtc3RhdGU9b3Blbl0pLC5kYXRhLW9wZW5cXDpiZy1hY2NlbnQ6d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1hY2NlbnQpfS5kYXRhLW9wZW5cXDp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kOndoZXJlKFtkYXRhLXN0YXRlPW9wZW5dKSwuZGF0YS1vcGVuXFw6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZDp3aGVyZShbZGF0YS1vcGVuXTpub3QoW2RhdGEtb3Blbj1mYWxzZV0pKXtjb2xvcjp2YXIoLS1hY2NlbnQtZm9yZWdyb3VuZCl9LmRhdGEtb3BlblxcOmZhZGUtaW4tMDp3aGVyZShbZGF0YS1zdGF0ZT1vcGVuXSksLmRhdGEtb3BlblxcOmZhZGUtaW4tMDp3aGVyZShbZGF0YS1vcGVuXTpub3QoW2RhdGEtb3Blbj1mYWxzZV0pKXstLXR3LWVudGVyLW9wYWNpdHk6MH0uZGF0YS1vcGVuXFw6em9vbS1pbi05NTp3aGVyZShbZGF0YS1zdGF0ZT1vcGVuXSksLmRhdGEtb3BlblxcOnpvb20taW4tOTU6d2hlcmUoW2RhdGEtb3Blbl06bm90KFtkYXRhLW9wZW49ZmFsc2VdKSl7LS10dy1lbnRlci1zY2FsZTouOTV9LmRhdGEtY2xvc2VkXFw6YW5pbWF0ZS1vdXQ6d2hlcmUoW2RhdGEtc3RhdGU9Y2xvc2VkXSksLmRhdGEtY2xvc2VkXFw6YW5pbWF0ZS1vdXQ6d2hlcmUoW2RhdGEtY2xvc2VkXTpub3QoW2RhdGEtY2xvc2VkPWZhbHNlXSkpe2FuaW1hdGlvbjpleGl0IHZhcigtLXR3LWFuaW1hdGlvbi1kdXJhdGlvbix2YXIoLS10dy1kdXJhdGlvbiwuMTVzKSl2YXIoLS10dy1lYXNlLGVhc2UpdmFyKC0tdHctYW5pbWF0aW9uLWRlbGF5LDBzKXZhcigtLXR3LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsMSl2YXIoLS10dy1hbmltYXRpb24tZGlyZWN0aW9uLG5vcm1hbCl2YXIoLS10dy1hbmltYXRpb24tZmlsbC1tb2RlLG5vbmUpfS5kYXRhLWNsb3NlZFxcOm92ZXJmbG93LWhpZGRlbjp3aGVyZShbZGF0YS1zdGF0ZT1jbG9zZWRdKSwuZGF0YS1jbG9zZWRcXDpvdmVyZmxvdy1oaWRkZW46d2hlcmUoW2RhdGEtY2xvc2VkXTpub3QoW2RhdGEtY2xvc2VkPWZhbHNlXSkpe292ZXJmbG93OmhpZGRlbn0uZGF0YS1jbG9zZWRcXDpmYWRlLW91dC0wOndoZXJlKFtkYXRhLXN0YXRlPWNsb3NlZF0pLC5kYXRhLWNsb3NlZFxcOmZhZGUtb3V0LTA6d2hlcmUoW2RhdGEtY2xvc2VkXTpub3QoW2RhdGEtY2xvc2VkPWZhbHNlXSkpey0tdHctZXhpdC1vcGFjaXR5OjB9LmRhdGEtY2xvc2VkXFw6em9vbS1vdXQtOTU6d2hlcmUoW2RhdGEtc3RhdGU9Y2xvc2VkXSksLmRhdGEtY2xvc2VkXFw6em9vbS1vdXQtOTU6d2hlcmUoW2RhdGEtY2xvc2VkXTpub3QoW2RhdGEtY2xvc2VkPWZhbHNlXSkpey0tdHctZXhpdC1zY2FsZTouOTV9LmRhdGEtc2VsZWN0ZWRcXDpiZy1tdXRlZDp3aGVyZShbZGF0YS1zZWxlY3RlZD10cnVlXSl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tdXRlZCl9LmRhdGEtc2VsZWN0ZWRcXDp0ZXh0LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtc2VsZWN0ZWQ9dHJ1ZV0pe2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5kYXRhLWRpc2FibGVkXFw6cG9pbnRlci1ldmVudHMtbm9uZTp3aGVyZShbZGF0YS1kaXNhYmxlZD10cnVlXSksLmRhdGEtZGlzYWJsZWRcXDpwb2ludGVyLWV2ZW50cy1ub25lOndoZXJlKFtkYXRhLWRpc2FibGVkXTpub3QoW2RhdGEtZGlzYWJsZWQ9ZmFsc2VdKSl7cG9pbnRlci1ldmVudHM6bm9uZX0uZGF0YS1kaXNhYmxlZFxcOm9wYWNpdHktNTA6d2hlcmUoW2RhdGEtZGlzYWJsZWQ9dHJ1ZV0pLC5kYXRhLWRpc2FibGVkXFw6b3BhY2l0eS01MDp3aGVyZShbZGF0YS1kaXNhYmxlZF06bm90KFtkYXRhLWRpc2FibGVkPWZhbHNlXSkpe29wYWNpdHk6LjV9LmRhdGEtYWN0aXZlXFw6YmctYmFja2dyb3VuZDp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGF0YS1hY3RpdmVcXDpiZy1iYWNrZ3JvdW5kOndoZXJlKFtkYXRhLWFjdGl2ZV06bm90KFtkYXRhLWFjdGl2ZT1mYWxzZV0pKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWJhY2tncm91bmQpfS5kYXRhLWFjdGl2ZVxcOnRleHQtZm9yZWdyb3VuZDp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGF0YS1hY3RpdmVcXDp0ZXh0LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5ncm91cC1kYXRhLVxcW3ZhcmlhbnRcXD1kZWZhdWx0XFxdXFwvdGFicy1saXN0XFw6ZGF0YS1hY3RpdmVcXDpzaGFkb3ctc206aXMoOndoZXJlKC5ncm91cFxcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWRlZmF1bHRdICopOndoZXJlKFtkYXRhLXN0YXRlPWFjdGl2ZV0pLC5ncm91cC1kYXRhLVxcW3ZhcmlhbnRcXD1kZWZhdWx0XFxdXFwvdGFicy1saXN0XFw6ZGF0YS1hY3RpdmVcXDpzaGFkb3ctc206aXMoOndoZXJlKC5ncm91cFxcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWRlZmF1bHRdICopOndoZXJlKFtkYXRhLWFjdGl2ZV06bm90KFtkYXRhLWFjdGl2ZT1mYWxzZV0pKXstLXR3LXNoYWRvdzowIDFweCAzcHggMCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSwwIDFweCAycHggLTFweCB2YXIoLS10dy1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXR3LWluc2V0LXNoYWRvdyksdmFyKC0tdHctaW5zZXQtcmluZy1zaGFkb3cpLHZhcigtLXR3LXJpbmctb2Zmc2V0LXNoYWRvdyksdmFyKC0tdHctcmluZy1zaGFkb3cpLHZhcigtLXR3LXNoYWRvdyl9Lmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOmJnLXRyYW5zcGFyZW50OmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZ3JvdXAtZGF0YS1cXFt2YXJpYW50XFw9bGluZVxcXVxcL3RhYnMtbGlzdFxcOmRhdGEtYWN0aXZlXFw6YmctdHJhbnNwYXJlbnQ6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWxpbmVdICopOndoZXJlKFtkYXRhLWFjdGl2ZV06bm90KFtkYXRhLWFjdGl2ZT1mYWxzZV0pKXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5ncm91cC1kYXRhLVxcW3ZhcmlhbnRcXD1saW5lXFxdXFwvdGFicy1saXN0XFw6ZGF0YS1hY3RpdmVcXDpzaGFkb3ctbm9uZTppcyg6d2hlcmUoLmdyb3VwXFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOnNoYWRvdy1ub25lOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7LS10dy1zaGFkb3c6MCAwICMwMDAwO2JveC1zaGFkb3c6dmFyKC0tdHctaW5zZXQtc2hhZG93KSx2YXIoLS10dy1pbnNldC1yaW5nLXNoYWRvdyksdmFyKC0tdHctcmluZy1vZmZzZXQtc2hhZG93KSx2YXIoLS10dy1yaW5nLXNoYWRvdyksdmFyKC0tdHctc2hhZG93KX06aXMoLmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOmFmdGVyXFw6b3BhY2l0eS0xMDA6aXMoOndoZXJlKC5ncm91cFxcL3RhYnMtbGlzdClbZGF0YS12YXJpYW50PWxpbmVdICopOndoZXJlKFtkYXRhLXN0YXRlPWFjdGl2ZV0pLC5ncm91cC1kYXRhLVxcW3ZhcmlhbnRcXD1saW5lXFxdXFwvdGFicy1saXN0XFw6ZGF0YS1hY3RpdmVcXDphZnRlclxcOm9wYWNpdHktMTAwOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSkpOmFmdGVye2NvbnRlbnQ6dmFyKC0tdHctY29udGVudCk7b3BhY2l0eToxfS5kYXJrXFw6ZGF0YS1hY3RpdmVcXDpib3JkZXItaW5wdXQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtc3RhdGU9YWN0aXZlXSksLmRhcmtcXDpkYXRhLWFjdGl2ZVxcOmJvcmRlci1pbnB1dDppcyguZGFyayAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7Ym9yZGVyLWNvbG9yOnZhcigtLWlucHV0KX0uZGFya1xcOmRhdGEtYWN0aXZlXFw6YmctaW5wdXRcXC8zMDppcyguZGFyayAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGFya1xcOmRhdGEtYWN0aXZlXFw6YmctaW5wdXRcXC8zMDppcyguZGFyayAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1pbnB1dCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5kYXJrXFw6ZGF0YS1hY3RpdmVcXDpiZy1pbnB1dFxcLzMwOmlzKC5kYXJrICopOndoZXJlKFtkYXRhLXN0YXRlPWFjdGl2ZV0pLC5kYXJrXFw6ZGF0YS1hY3RpdmVcXDpiZy1pbnB1dFxcLzMwOmlzKC5kYXJrICopOndoZXJlKFtkYXRhLWFjdGl2ZV06bm90KFtkYXRhLWFjdGl2ZT1mYWxzZV0pKXtiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1pbnB1dCkzMCUsdHJhbnNwYXJlbnQpfX0uZGFya1xcOmRhdGEtYWN0aXZlXFw6dGV4dC1mb3JlZ3JvdW5kOmlzKC5kYXJrICopOndoZXJlKFtkYXRhLXN0YXRlPWFjdGl2ZV0pLC5kYXJrXFw6ZGF0YS1hY3RpdmVcXDp0ZXh0LWZvcmVncm91bmQ6aXMoLmRhcmsgKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2NvbG9yOnZhcigtLWZvcmVncm91bmQpfS5kYXJrXFw6Z3JvdXAtZGF0YS1cXFt2YXJpYW50XFw9bGluZVxcXVxcL3RhYnMtbGlzdFxcOmRhdGEtYWN0aXZlXFw6Ym9yZGVyLXRyYW5zcGFyZW50OmlzKC5kYXJrICopOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGFya1xcOmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOmJvcmRlci10cmFuc3BhcmVudDppcyguZGFyayAqKTppcyg6d2hlcmUoLmdyb3VwXFwvdGFicy1saXN0KVtkYXRhLXZhcmlhbnQ9bGluZV0gKik6d2hlcmUoW2RhdGEtYWN0aXZlXTpub3QoW2RhdGEtYWN0aXZlPWZhbHNlXSkpe2JvcmRlci1jb2xvcjojMDAwMH0uZGFya1xcOmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOmJnLXRyYW5zcGFyZW50OmlzKC5kYXJrICopOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1zdGF0ZT1hY3RpdmVdKSwuZGFya1xcOmdyb3VwLWRhdGEtXFxbdmFyaWFudFxcPWxpbmVcXF1cXC90YWJzLWxpc3RcXDpkYXRhLWFjdGl2ZVxcOmJnLXRyYW5zcGFyZW50OmlzKC5kYXJrICopOmlzKDp3aGVyZSguZ3JvdXBcXC90YWJzLWxpc3QpW2RhdGEtdmFyaWFudD1saW5lXSAqKTp3aGVyZShbZGF0YS1hY3RpdmVdOm5vdChbZGF0YS1hY3RpdmU9ZmFsc2VdKSl7YmFja2dyb3VuZC1jb2xvcjojMDAwMH0uZGF0YS1ob3Jpem9udGFsXFw6aC1weDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj1ob3Jpem9udGFsXSl7aGVpZ2h0OjFweH0uZGF0YS1ob3Jpem9udGFsXFw6dy1mdWxsOndoZXJlKFtkYXRhLW9yaWVudGF0aW9uPWhvcml6b250YWxdKXt3aWR0aDoxMDAlfS5kYXRhLWhvcml6b250YWxcXDpmbGV4LWNvbDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj1ob3Jpem9udGFsXSl7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5kYXRhLXZlcnRpY2FsXFw6dy1weDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pe3dpZHRoOjFweH0uZGF0YS12ZXJ0aWNhbFxcOnNlbGYtc3RyZXRjaDp3aGVyZShbZGF0YS1vcmllbnRhdGlvbj12ZXJ0aWNhbF0pe2FsaWduLXNlbGY6c3RyZXRjaH0uXFxbXFxcdTAwMjZfYVxcXVxcOnRleHQtcHJpbWFyeSBhe2NvbG9yOnZhcigtLXByaW1hcnkpfS5cXFtcXFx1MDAyNl9oM1xcXVxcOm10LTYgaDN7bWFyZ2luLXRvcDpjYWxjKHZhcigtLXNwYWNpbmcpKjYpfS5cXFtcXFx1MDAyNl9oM1xcXVxcOm1iLTIgaDN7bWFyZ2luLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5cXFtcXFx1MDAyNl9oM1xcXVxcOnRleHQtZm9yZWdyb3VuZCBoM3tjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX0uXFxbXFxcdTAwMjZfc3ZnXFxdXFw6cG9pbnRlci1ldmVudHMtbm9uZSBzdmd7cG9pbnRlci1ldmVudHM6bm9uZX0uXFxbXFxcdTAwMjZfc3ZnXFxdXFw6c2hyaW5rLTAgc3Zne2ZsZXgtc2hyaW5rOjB9LlxcW1xcXHUwMDI2X3N2Z1xcOm5vdFxcKFxcW2NsYXNzXFwqXFw9XFwnc2l6ZS1cXCdcXF1cXClcXF1cXDpzaXplLTMgc3ZnOm5vdChbY2xhc3MqPXNpemUtXSl7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uXFxbXFxcdTAwMjZfc3ZnXFw6bm90XFwoXFxbY2xhc3NcXCpcXD1cXCdzaXplLVxcJ1xcXVxcKVxcXVxcOnNpemUtM1xcLjUgc3ZnOm5vdChbY2xhc3MqPXNpemUtXSl7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjMuNSl9LlxcW1xcXHUwMDI2X3N2Z1xcOm5vdFxcKFxcW2NsYXNzXFwqXFw9XFwnc2l6ZS1cXCdcXF1cXClcXF1cXDpzaXplLTQgc3ZnOm5vdChbY2xhc3MqPXNpemUtXSl7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSo0KX0uXFxbXFxcdTAwMjZfdHJcXF1cXDpib3JkZXItYiB0cntib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLWJvdHRvbS13aWR0aDoxcHh9LlxcW1xcXHUwMDI2X3RyXFw6bGFzdC1jaGlsZFxcXVxcOmJvcmRlci0wIHRyOmxhc3QtY2hpbGR7Ym9yZGVyLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLXdpZHRoOjB9LlxcW1xcXHUwMDI2XFw6XFw6LXdlYmtpdC1kZXRhaWxzLW1hcmtlclxcXVxcOmhpZGRlbjo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlcntkaXNwbGF5Om5vbmV9LlxcW1xcXHUwMDI2XFw6XFw6LXdlYmtpdC1zY3JvbGxiYXJcXF1cXDpoaWRkZW46Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0uXFxbXFxcdTAwMjZcXDpoYXNcXChcXFtyb2xlXFw9Y2hlY2tib3hcXF1cXClcXF1cXDpwci0wOmhhcyhbcm9sZT1jaGVja2JveF0pe3BhZGRpbmctcmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSowKX0uXFxbXFwuYm9yZGVyLWJcXF1cXDpwYi0yLmJvcmRlci1ie3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMil9LlxcW1xcLmJvcmRlci1iXFxdXFw6cGItNC5ib3JkZXItYntwYWRkaW5nLWJvdHRvbTpjYWxjKHZhcigtLXNwYWNpbmcpKjQpfS5ncm91cC1kYXRhLVxcW3NpemVcXD1zbVxcXVxcL2NhcmRcXDpcXFtcXC5ib3JkZXItYlxcXVxcOnBiLTM6aXMoOndoZXJlKC5ncm91cFxcL2NhcmQpW2RhdGEtc2l6ZT1zbV0gKikuYm9yZGVyLWJ7cGFkZGluZy1ib3R0b206Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uXFxbXFwuYm9yZGVyLXRcXF1cXDpwdC0yLmJvcmRlci10e3BhZGRpbmctdG9wOmNhbGModmFyKC0tc3BhY2luZykqMil9OmlzKC5cXCpcXCpcXDpcXFtcXFtjbWRrLWdyb3VwLWhlYWRpbmdcXF1cXF1cXDpweC0yICopW2NtZGstZ3JvdXAtaGVhZGluZ117cGFkZGluZy1pbmxpbmU6Y2FsYyh2YXIoLS1zcGFjaW5nKSoyKX06aXMoLlxcKlxcKlxcOlxcW1xcW2NtZGstZ3JvdXAtaGVhZGluZ1xcXVxcXVxcOnB5LTFcXC41ICopW2NtZGstZ3JvdXAtaGVhZGluZ117cGFkZGluZy1ibG9jazpjYWxjKHZhcigtLXNwYWNpbmcpKjEuNSl9OmlzKC5cXCpcXCpcXDpcXFtcXFtjbWRrLWdyb3VwLWhlYWRpbmdcXF1cXF1cXDp0ZXh0LXhzICopW2NtZGstZ3JvdXAtaGVhZGluZ117Zm9udC1zaXplOnZhcigtLXRleHQteHMpO2xpbmUtaGVpZ2h0OnZhcigtLXR3LWxlYWRpbmcsdmFyKC0tdGV4dC14cy0tbGluZS1oZWlnaHQpKX06aXMoLlxcKlxcKlxcOlxcW1xcW2NtZGstZ3JvdXAtaGVhZGluZ1xcXVxcXVxcOmZvbnQtbWVkaXVtICopW2NtZGstZ3JvdXAtaGVhZGluZ117LS10dy1mb250LXdlaWdodDp2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO2ZvbnQtd2VpZ2h0OnZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSl9OmlzKC5cXCpcXCpcXDpcXFtcXFtjbWRrLWdyb3VwLWhlYWRpbmdcXF1cXF1cXDp0ZXh0LW11dGVkLWZvcmVncm91bmQgKilbY21kay1ncm91cC1oZWFkaW5nXXtjb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX06aXMoLlxcKlxcOlxcW2FcXF1cXDp1bmRlcmxpbmVcdTAwM2UqKTppcyhhKXt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9OmlzKC5cXCpcXDpcXFthXFxdXFw6dW5kZXJsaW5lLW9mZnNldC0zXHUwMDNlKik6aXMoYSl7dGV4dC11bmRlcmxpbmUtb2Zmc2V0OjNweH1AbWVkaWEgKGhvdmVyOmhvdmVyKXsuXFxbYVxcXVxcOmhvdmVyXFw6YmctZGVzdHJ1Y3RpdmVcXC8yMDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWRlc3RydWN0aXZlKX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LlxcW2FcXF1cXDpob3ZlclxcOmJnLWRlc3RydWN0aXZlXFwvMjA6aXMoYSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpjb2xvci1taXgoaW4gb2tsYWIsdmFyKC0tZGVzdHJ1Y3RpdmUpMjAlLHRyYW5zcGFyZW50KX19LlxcW2FcXF1cXDpob3ZlclxcOmJnLW11dGVkOmlzKGEpOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tbXV0ZWQpfS5cXFthXFxdXFw6aG92ZXJcXDpiZy1wcmltYXJ5XFwvODA6aXMoYSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1wcmltYXJ5KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yLW1peChpbiBsYWIsIHJlZCwgcmVkKSl7LlxcW2FcXF1cXDpob3ZlclxcOmJnLXByaW1hcnlcXC84MDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1wcmltYXJ5KTgwJSx0cmFuc3BhcmVudCl9fS5cXFthXFxdXFw6aG92ZXJcXDpiZy1zZWNvbmRhcnlcXC84MDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXNlY29uZGFyeSl9QHN1cHBvcnRzIChjb2xvcjpjb2xvci1taXgoaW4gbGFiLCByZWQsIHJlZCkpey5cXFthXFxdXFw6aG92ZXJcXDpiZy1zZWNvbmRhcnlcXC84MDppcyhhKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yLW1peChpbiBva2xhYix2YXIoLS1zZWNvbmRhcnkpODAlLHRyYW5zcGFyZW50KX19LlxcW2FcXF1cXDpob3ZlclxcOnRleHQtbXV0ZWQtZm9yZWdyb3VuZDppcyhhKTpob3Zlcntjb2xvcjp2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKX06aXMoLlxcKlxcOlxcW2FcXF1cXDpob3ZlclxcOnRleHQtZm9yZWdyb3VuZFx1MDAzZSopOmlzKGEpOmhvdmVye2NvbG9yOnZhcigtLWZvcmVncm91bmQpfX06aXMoLlxcKlxcOlxcW2ltZ1xcOmZpcnN0LWNoaWxkXFxdXFw6cm91bmRlZC10LXhsXHUwMDNlKik6aXMoaW1nOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpfTppcyguXFwqXFw6XFxbaW1nXFw6bGFzdC1jaGlsZFxcXVxcOnJvdW5kZWQtYi14bFx1MDAzZSopOmlzKGltZzpsYXN0LWNoaWxkKXtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykqMS40KTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSoxLjQpfTppcyguZGF0YS1cXFt2YXJpYW50XFw9ZGVzdHJ1Y3RpdmVcXF1cXDpcXCpcXDpcXFtzdmdcXF1cXDp0ZXh0LWRlc3RydWN0aXZlW2RhdGEtdmFyaWFudD1kZXN0cnVjdGl2ZV1cdTAwM2UqKTppcyhzdmcpe2NvbG9yOnZhcigtLWRlc3RydWN0aXZlKX06aXMoLmRhdGEtc2VsZWN0ZWRcXDpcXCpcXDpcXFtzdmdcXF1cXDp0ZXh0LWZvcmVncm91bmQ6d2hlcmUoW2RhdGEtc2VsZWN0ZWQ9dHJ1ZV0pXHUwMDNlKik6aXMoc3ZnKXtjb2xvcjp2YXIoLS1mb3JlZ3JvdW5kKX0uaGFzLVxcW1xcXHUwMDNlXFxbZGF0YS1hbGlnblxcPWJsb2NrLWVuZFxcXVxcXVxcOlxcW1xcXHUwMDI2XFxcdTAwM2VpbnB1dFxcXVxcOnB0LTM6aGFzKFx1MDAzZVtkYXRhLWFsaWduPWJsb2NrLWVuZF0pXHUwMDNlaW5wdXR7cGFkZGluZy10b3A6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uaGFzLVxcW1xcXHUwMDNlXFxbZGF0YS1hbGlnblxcPWJsb2NrLXN0YXJ0XFxdXFxdXFw6XFxbXFxcdTAwMjZcXFx1MDAzZWlucHV0XFxdXFw6cGItMzpoYXMoXHUwMDNlW2RhdGEtYWxpZ249YmxvY2stc3RhcnRdKVx1MDAzZWlucHV0e3BhZGRpbmctYm90dG9tOmNhbGModmFyKC0tc3BhY2luZykqMyl9Lmhhcy1cXFtcXFx1MDAzZVxcW2RhdGEtYWxpZ25cXD1pbmxpbmUtZW5kXFxdXFxdXFw6XFxbXFxcdTAwMjZcXFx1MDAzZWlucHV0XFxdXFw6cHItMVxcLjU6aGFzKFx1MDAzZVtkYXRhLWFsaWduPWlubGluZS1lbmRdKVx1MDAzZWlucHV0e3BhZGRpbmctcmlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSoxLjUpfS5oYXMtXFxbXFxcdTAwM2VcXFtkYXRhLWFsaWduXFw9aW5saW5lLXN0YXJ0XFxdXFxdXFw6XFxbXFxcdTAwMjZcXFx1MDAzZWlucHV0XFxdXFw6cGwtMVxcLjU6aGFzKFx1MDAzZVtkYXRhLWFsaWduPWlubGluZS1zdGFydF0pXHUwMDNlaW5wdXR7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tc3BhY2luZykqMS41KX0uXFxbXFxcdTAwMjZcXFx1MDAzZWtiZFxcXVxcOnJvdW5kZWQtXFxbY2FsY1xcKHZhclxcKC0tcmFkaXVzXFwpLTVweFxcKVxcXVx1MDAzZWtiZHtib3JkZXItcmFkaXVzOmNhbGModmFyKC0tcmFkaXVzKSAtIDVweCl9LlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpwb2ludGVyLWV2ZW50cy1ub25lXHUwMDNlc3Zne3BvaW50ZXItZXZlbnRzOm5vbmV9LlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpzaXplLTNcXCFcdTAwM2Vzdmd7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKSFpbXBvcnRhbnQ7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqMykhaW1wb3J0YW50fS5cXFtcXFx1MDAyNlxcXHUwMDNlc3ZnXFxdXFw6c2l6ZS00XHUwMDNlc3Zne3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9Lmdyb3VwLWhhcy1kYXRhLVxcW3NpemVcXD1sZ1xcXVxcL2F2YXRhci1ncm91cFxcOlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpzaXplLTU6aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhci1ncm91cCk6aGFzKFtkYXRhLXNpemU9bGddKSAqKVx1MDAzZXN2Z3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjUpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjUpfS5ncm91cC1oYXMtZGF0YS1cXFtzaXplXFw9c21cXF1cXC9hdmF0YXItZ3JvdXBcXDpcXFtcXFx1MDAyNlxcXHUwMDNlc3ZnXFxdXFw6c2l6ZS0zOmlzKDp3aGVyZSguZ3JvdXBcXC9hdmF0YXItZ3JvdXApOmhhcyhbZGF0YS1zaXplPXNtXSkgKilcdTAwM2Vzdmd7d2lkdGg6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozKX0uZ3JvdXAtZGF0YS1cXFtzaXplXFw9ZGVmYXVsdFxcXVxcL2F2YXRhclxcOlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpzaXplLTI6aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhcilbZGF0YS1zaXplPWRlZmF1bHRdICopXHUwMDNlc3ZnLC5ncm91cC1kYXRhLVxcW3NpemVcXD1sZ1xcXVxcL2F2YXRhclxcOlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpzaXplLTI6aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhcilbZGF0YS1zaXplPWxnXSAqKVx1MDAzZXN2Z3t3aWR0aDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpO2hlaWdodDpjYWxjKHZhcigtLXNwYWNpbmcpKjIpfS5ncm91cC1kYXRhLVxcW3NpemVcXD1zbVxcXVxcL2F2YXRhclxcOlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXF1cXDpoaWRkZW46aXMoOndoZXJlKC5ncm91cFxcL2F2YXRhcilbZGF0YS1zaXplPXNtXSAqKVx1MDAzZXN2Z3tkaXNwbGF5Om5vbmV9LlxcW1xcXHUwMDI2XFxcdTAwM2VzdmdcXDpub3RcXChcXFtjbGFzc1xcKlxcPVxcJ3NpemUtXFwnXFxdXFwpXFxdXFw6c2l6ZS0zXFwuNVx1MDAzZXN2Zzpub3QoW2NsYXNzKj1zaXplLV0pe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqMy41KTtoZWlnaHQ6Y2FsYyh2YXIoLS1zcGFjaW5nKSozLjUpfS5cXFtcXFx1MDAyNlxcXHUwMDNlc3ZnXFw6bm90XFwoXFxbY2xhc3NcXCpcXD1cXCdzaXplLVxcJ1xcXVxcKVxcXVxcOnNpemUtNFx1MDAzZXN2Zzpub3QoW2NsYXNzKj1zaXplLV0pe3dpZHRoOmNhbGModmFyKC0tc3BhY2luZykqNCk7aGVpZ2h0OmNhbGModmFyKC0tc3BhY2luZykqNCl9LlxcW1xcXHUwMDI2XFxcdTAwM2V0clxcXVxcOmxhc3RcXDpib3JkZXItYi0wXHUwMDNldHI6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLXN0eWxlOnZhcigtLXR3LWJvcmRlci1zdHlsZSk7Ym9yZGVyLWJvdHRvbS13aWR0aDowfX1AcHJvcGVydHkgLS10dy1hbmltYXRpb24tZGVsYXl7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MHN9QHByb3BlcnR5IC0tdHctYW5pbWF0aW9uLWRpcmVjdGlvbntzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTpub3JtYWx9QHByb3BlcnR5IC0tdHctYW5pbWF0aW9uLWR1cmF0aW9ue3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1hbmltYXRpb24tZmlsbC1tb2Rle3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOm5vbmV9QHByb3BlcnR5IC0tdHctYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToxfUBwcm9wZXJ0eSAtLXR3LWVudGVyLWJsdXJ7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1lbnRlci1vcGFjaXR5e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjF9QHByb3BlcnR5IC0tdHctZW50ZXItcm90YXRle3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctZW50ZXItc2NhbGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MX1AcHJvcGVydHkgLS10dy1lbnRlci10cmFuc2xhdGUteHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LWVudGVyLXRyYW5zbGF0ZS15e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctZXhpdC1ibHVye3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctZXhpdC1vcGFjaXR5e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjF9QHByb3BlcnR5IC0tdHctZXhpdC1yb3RhdGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1leGl0LXNjYWxle3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjF9QHByb3BlcnR5IC0tdHctZXhpdC10cmFuc2xhdGUteHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LWV4aXQtdHJhbnNsYXRlLXl7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH06cm9vdHstLWJhY2tncm91bmQ6I2ZmZjstLWZvcmVncm91bmQ6IzExMTgyNzstLWNhcmQ6I2Y5ZmFmYjstLWNhcmQtZm9yZWdyb3VuZDojMTExODI3Oy0tcG9wb3ZlcjojZmZmOy0tcG9wb3Zlci1mb3JlZ3JvdW5kOiMxMTE4Mjc7LS1wcmltYXJ5OiMwMDcwZWM7LS1wcmltYXJ5LWZvcmVncm91bmQ6I2ZmZjstLXNlY29uZGFyeTojZjNmNGY2Oy0tc2Vjb25kYXJ5LWZvcmVncm91bmQ6IzExMTgyNzstLW11dGVkOiNmM2Y0ZjY7LS1tdXRlZC1mb3JlZ3JvdW5kOiM2YjcyODA7LS1hY2NlbnQ6I2YzZjRmNjstLWFjY2VudC1mb3JlZ3JvdW5kOiMxMTE4Mjc7LS1kZXN0cnVjdGl2ZTojZWY0NDQ0Oy0tYm9yZGVyOiNlNWU3ZWI7LS1pbnB1dDojZTVlN2ViOy0tcmluZzojMDA3NGY1Oy0tcmFkaXVzOi41cmVtOy0tc3VjY2VzczojMjJjNTVlOy0tZGFuZ2VyOiNlZjQ0NDQ7LS13YXJuaW5nOiNmNTllMGI7LS1pbmZvOiMzYjgyZjY7LS1zdXJmYWNlOiNmOWZhZmI7LS1zdXJmYWNlLTI6I2YzZjRmNjstLWNoYXJ0LTE6IzAwNzRmNTstLWNoYXJ0LTI6IzAwYjhhOTstLWNoYXJ0LTM6IzIyYzU1ZTstLWNoYXJ0LTQ6I2Y1OWUwYjstLWNoYXJ0LTU6I2VmNDQ0NDstLXNpZGViYXI6I2Y5ZmFmYjstLXNpZGViYXItZm9yZWdyb3VuZDojMTExODI3Oy0tc2lkZWJhci1wcmltYXJ5OiMwMDc0ZjU7LS1zaWRlYmFyLXByaW1hcnktZm9yZWdyb3VuZDojZmZmOy0tc2lkZWJhci1hY2NlbnQ6I2YzZjRmNjstLXNpZGViYXItYWNjZW50LWZvcmVncm91bmQ6IzExMTgyNzstLXNpZGViYXItYm9yZGVyOiNlNWU3ZWI7LS1zaWRlYmFyLXJpbmc6IzAwNzRmNX0uZGFya3stLWJhY2tncm91bmQ6IzBiMGYxOTstLWZvcmVncm91bmQ6I2Y5ZmFmYjstLWNhcmQ6IzExMTgyNzstLWNhcmQtZm9yZWdyb3VuZDojZjlmYWZiOy0tcG9wb3ZlcjojMTExODI3Oy0tcG9wb3Zlci1mb3JlZ3JvdW5kOiNmOWZhZmI7LS1wcmltYXJ5OiMwMDcwZWM7LS1wcmltYXJ5LWZvcmVncm91bmQ6I2ZmZjstLXNlY29uZGFyeTojMWYyOTM3Oy0tc2Vjb25kYXJ5LWZvcmVncm91bmQ6I2Y5ZmFmYjstLW11dGVkOiMxZjI5Mzc7LS1tdXRlZC1mb3JlZ3JvdW5kOiM5Y2EzYWY7LS1hY2NlbnQ6IzFmMjkzNzstLWFjY2VudC1mb3JlZ3JvdW5kOiNmOWZhZmI7LS1kZXN0cnVjdGl2ZTojZWY0NDQ0Oy0tYm9yZGVyOiMzNzQxNTE7LS1pbnB1dDojMzc0MTUxOy0tcmluZzojMDA3NGY1Oy0tc3VjY2VzczojMjJjNTVlOy0tZGFuZ2VyOiNlZjQ0NDQ7LS13YXJuaW5nOiNmNTllMGI7LS1pbmZvOiMzYjgyZjY7LS1zdXJmYWNlOiMxMTE4Mjc7LS1zdXJmYWNlLTI6IzFmMjkzNzstLWNoYXJ0LTE6IzNkOWFmZjstLWNoYXJ0LTI6IzMzYzliZDstLWNoYXJ0LTM6IzIyYzU1ZTstLWNoYXJ0LTQ6I2Y1OWUwYjstLWNoYXJ0LTU6I2VmNDQ0NDstLXNpZGViYXI6IzExMTgyNzstLXNpZGViYXItZm9yZWdyb3VuZDojZjlmYWZiOy0tc2lkZWJhci1wcmltYXJ5OiMzZDlhZmY7LS1zaWRlYmFyLXByaW1hcnktZm9yZWdyb3VuZDojZmZmOy0tc2lkZWJhci1hY2NlbnQ6IzFmMjkzNzstLXNpZGViYXItYWNjZW50LWZvcmVncm91bmQ6I2Y5ZmFmYjstLXNpZGViYXItYm9yZGVyOiMzNzQxNTE7LS1zaWRlYmFyLXJpbmc6IzAwNzRmNX1Aa2V5ZnJhbWVzIHRleHQtc2hpbW1lcnswJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjIwMCV9dG97YmFja2dyb3VuZC1wb3NpdGlvbjotMjAwJX19LnRleHQtc2hpbW1lcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKTQwJSx2YXIoLS1mb3JlZ3JvdW5kKTUwJSx2YXIoLS1tdXRlZC1mb3JlZ3JvdW5kKTYwJSk7Y29sb3I6IzAwMDA7YmFja2dyb3VuZC1zaXplOjIwMCU7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDtiYWNrZ3JvdW5kLWNsaXA6dGV4dDthbmltYXRpb246MnMgbGluZWFyIGluZmluaXRlIHRleHQtc2hpbW1lcn1odG1sLmNjLWNvbnNlbnRlZCAuY29va2llLW5vdGljZXtkaXNwbGF5Om5vbmV9QHByb3BlcnR5IC0tdHctdHJhbnNsYXRlLXh7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy10cmFuc2xhdGUteXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LXRyYW5zbGF0ZS16e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjB9QHByb3BlcnR5IC0tdHctcm90YXRlLXh7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXJvdGF0ZS15e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1yb3RhdGUtentzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2tldy14e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1za2V3LXl7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXNwYWNlLXktcmV2ZXJzZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LXNwYWNlLXgtcmV2ZXJzZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LWRpdmlkZS15LXJldmVyc2V7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH1AcHJvcGVydHkgLS10dy1ib3JkZXItc3R5bGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6c29saWR9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtcG9zaXRpb257c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LWZyb217c3ludGF4OlwiXHUwMDNjY29sb3JcdTAwM2VcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOiMwMDAwfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXZpYXtzeW50YXg6XCJcdTAwM2Njb2xvclx1MDAzZVwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6IzAwMDB9QHByb3BlcnR5IC0tdHctZ3JhZGllbnQtdG97c3ludGF4OlwiXHUwMDNjY29sb3JcdTAwM2VcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOiMwMDAwfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXN0b3Bze3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1ncmFkaWVudC12aWEtc3RvcHN7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LWZyb20tcG9zaXRpb257c3ludGF4OlwiXHUwMDNjbGVuZ3RoLXBlcmNlbnRhZ2VcdTAwM2VcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjAlfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXZpYS1wb3NpdGlvbntzeW50YXg6XCJcdTAwM2NsZW5ndGgtcGVyY2VudGFnZVx1MDAzZVwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6NTAlfUBwcm9wZXJ0eSAtLXR3LWdyYWRpZW50LXRvLXBvc2l0aW9ue3N5bnRheDpcIlx1MDAzY2xlbmd0aC1wZXJjZW50YWdlXHUwMDNlXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToxMDAlfUBwcm9wZXJ0eSAtLXR3LWxlYWRpbmd7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWZvbnQtd2VpZ2h0e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy10cmFja2luZ3tzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctb3JkaW5hbHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2xhc2hlZC16ZXJve3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1udW1lcmljLWZpZ3VyZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctbnVtZXJpYy1zcGFjaW5ne3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1udW1lcmljLWZyYWN0aW9ue3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1zaGFkb3d7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MCAwICMwMDAwfUBwcm9wZXJ0eSAtLXR3LXNoYWRvdy1jb2xvcntzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2hhZG93LWFscGhhe3N5bnRheDpcIlx1MDAzY3BlcmNlbnRhZ2VcdTAwM2VcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctaW5zZXQtc2hhZG93e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjAgMCAjMDAwMH1AcHJvcGVydHkgLS10dy1pbnNldC1zaGFkb3ctY29sb3J7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWluc2V0LXNoYWRvdy1hbHBoYXtzeW50YXg6XCJcdTAwM2NwZXJjZW50YWdlXHUwMDNlXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZToxMDAlfUBwcm9wZXJ0eSAtLXR3LXJpbmctY29sb3J7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXJpbmctc2hhZG93e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjAgMCAjMDAwMH1AcHJvcGVydHkgLS10dy1pbnNldC1yaW5nLWNvbG9ye3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1pbnNldC1yaW5nLXNoYWRvd3tzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowIDAgIzAwMDB9QHByb3BlcnR5IC0tdHctcmluZy1pbnNldHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctcmluZy1vZmZzZXQtd2lkdGh7c3ludGF4OlwiXHUwMDNjbGVuZ3RoXHUwMDNlXCI7aW5oZXJpdHM6ZmFsc2U7aW5pdGlhbC12YWx1ZTowfUBwcm9wZXJ0eSAtLXR3LXJpbmctb2Zmc2V0LWNvbG9ye3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOiNmZmZ9QHByb3BlcnR5IC0tdHctcmluZy1vZmZzZXQtc2hhZG93e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjAgMCAjMDAwMH1AcHJvcGVydHkgLS10dy1vdXRsaW5lLXN0eWxle3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOnNvbGlkfUBwcm9wZXJ0eSAtLXR3LWJsdXJ7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWJyaWdodG5lc3N7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWNvbnRyYXN0e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1ncmF5c2NhbGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWh1ZS1yb3RhdGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWludmVydHtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctb3BhY2l0eXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctc2F0dXJhdGV7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LXNlcGlhe3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1kcm9wLXNoYWRvd3tzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctZHJvcC1zaGFkb3ctY29sb3J7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWRyb3Atc2hhZG93LWFscGhhe3N5bnRheDpcIlx1MDAzY3BlcmNlbnRhZ2VcdTAwM2VcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOjEwMCV9QHByb3BlcnR5IC0tdHctZHJvcC1zaGFkb3ctc2l6ZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtYmx1cntzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtYnJpZ2h0bmVzc3tzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtY29udHJhc3R7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWJhY2tkcm9wLWdyYXlzY2FsZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtaHVlLXJvdGF0ZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3AtaW52ZXJ0e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1iYWNrZHJvcC1vcGFjaXR5e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1iYWNrZHJvcC1zYXR1cmF0ZXtzeW50YXg6XCIqXCI7aW5oZXJpdHM6ZmFsc2V9QHByb3BlcnR5IC0tdHctYmFja2Ryb3Atc2VwaWF7c3ludGF4OlwiKlwiO2luaGVyaXRzOmZhbHNlfUBwcm9wZXJ0eSAtLXR3LWR1cmF0aW9ue3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1lYXNle3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZX1AcHJvcGVydHkgLS10dy1jb250ZW50e3N5bnRheDpcIipcIjtpbmhlcml0czpmYWxzZTtpbml0aWFsLXZhbHVlOlwiXCJ9QGtleWZyYW1lcyBzcGlue3Rve3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19QGtleWZyYW1lcyBwdWxzZXs1MCV7b3BhY2l0eTouNX19QGtleWZyYW1lcyBlbnRlcnswJXtvcGFjaXR5OnZhcigtLXR3LWVudGVyLW9wYWNpdHksMSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKHZhcigtLXR3LWVudGVyLXRyYW5zbGF0ZS14LDApLHZhcigtLXR3LWVudGVyLXRyYW5zbGF0ZS15LDApLDApc2NhbGUzZCh2YXIoLS10dy1lbnRlci1zY2FsZSwxKSx2YXIoLS10dy1lbnRlci1zY2FsZSwxKSx2YXIoLS10dy1lbnRlci1zY2FsZSwxKSlyb3RhdGUodmFyKC0tdHctZW50ZXItcm90YXRlLDApKTtmaWx0ZXI6Ymx1cih2YXIoLS10dy1lbnRlci1ibHVyLDApKX19QGtleWZyYW1lcyBleGl0e3Rve29wYWNpdHk6dmFyKC0tdHctZXhpdC1vcGFjaXR5LDEpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCh2YXIoLS10dy1leGl0LXRyYW5zbGF0ZS14LDApLHZhcigtLXR3LWV4aXQtdHJhbnNsYXRlLXksMCksMClzY2FsZTNkKHZhcigtLXR3LWV4aXQtc2NhbGUsMSksdmFyKC0tdHctZXhpdC1zY2FsZSwxKSx2YXIoLS10dy1leGl0LXNjYWxlLDEpKXJvdGF0ZSh2YXIoLS10dy1leGl0LXJvdGF0ZSwwKSk7ZmlsdGVyOmJsdXIodmFyKC0tdHctZXhpdC1ibHVyLDApKX19XG4iXSk8L3NjcmlwdD48c2NyaXB0PnNlbGYuX19uZXh0X2YucHVzaChbMSwiMDp7XCJQXCI6bnVsbCxcImJcIjpcIlMxSjJHRS1qQzlkRTl5aGE5aEFfdFwiLFwiY1wiOltcIlwiLFwid2lkZ2V0XCJdLFwicVwiOlwiXCIsXCJpXCI6ZmFsc2UsXCJmXCI6W1tbXCJcIix7XCJjaGlsZHJlblwiOltcIihlbWJlZClcIix7XCJjaGlsZHJlblwiOltcIndpZGdldFwiLHtcImNoaWxkcmVuXCI6W1wiX19QQUdFX19cIix7fV19XX1dfSxcIiR1bmRlZmluZWRcIixcIiR1bmRlZmluZWRcIix0cnVlXSxbW1wiJFwiLFwiJDFcIixcImNcIix7XCJjaGlsZHJlblwiOltbW1wiJFwiLFwic3R5bGVcIixcIjBcIix7XCJub25jZVwiOlwiJHVuZGVmaW5lZFwiLFwicHJlY2VkZW5jZVwiOlwibmV4dFwiLFwiaHJlZlwiOlwiL19uZXh0L3N0YXRpYy9jaHVua3MvMDcyNWZjNGRiODE0ZjAzNS5jc3NcIixcImNoaWxkcmVuXCI6XCIkMlwifV0sW1wiJFwiLFwic3R5bGVcIixcIjFcIix7XCJub25jZVwiOlwiJHVuZGVmaW5lZFwiLFwicHJlY2VkZW5jZVwiOlwibmV4dFwiLFwiaHJlZlwiOlwiL19uZXh0L3N0YXRpYy9jaHVua3MvYjM0ZWJiOGFlZmYyMTg2ZS5jc3NcIixcImNoaWxkcmVuXCI6XCIkM1wifV0sXCIkTDRcIl0sXCIkTDVcIl19XSx7XCJjaGlsZHJlblwiOltcIiRMNlwiLHtcImNoaWxkcmVuXCI6W1wiJEw3XCIse1wiY2hpbGRyZW5cIjpbXCIkTDhcIix7fSxudWxsLGZhbHNlLGZhbHNlXX0sbnVsbCxmYWxzZSxmYWxzZV19LG51bGwsZmFsc2UsZmFsc2VdfSxudWxsLGZhbHNlLGZhbHNlXSxcIiRMOVwiLGZhbHNlXV0sXCJtXCI6XCIkdW5kZWZpbmVkXCIsXCJHXCI6W1wiJGFcIixbXV0sXCJTXCI6dHJ1ZX1cbiJdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCJiOklbODM2NjEsW1wiL19uZXh0L3N0YXRpYy9jaHVua3MvYzBhNmFlNTE1ZjRkMjQ1ZC5qc1wiXSxcIlRoZW1lUHJvdmlkZXJcIl1cbmM6SVszMDk3LFtcIi9fbmV4dC9zdGF0aWMvY2h1bmtzLzMzMDc0ZDNmZjVkMGNkMmQuanNcIixcIi9fbmV4dC9zdGF0aWMvY2h1bmtzLzk1MjYyMzg2ZDhkNGI2ZGQuanNcIl0sXCJkZWZhdWx0XCJdXG5kOklbOTkyOTksW1wiL19uZXh0L3N0YXRpYy9jaHVua3MvMzMwNzRkM2ZmNWQwY2QyZC5qc1wiLFwiL19uZXh0L3N0YXRpYy9jaHVua3MvOTUyNjIzODZkOGQ0YjZkZC5qc1wiXSxcImRlZmF1bHRcIl1cbmU6XCIkU3JlYWN0LnN1c3BlbnNlXCJcbmY6SVs3OTI5NCxbXCIvX25leHQvc3RhdGljL2NodW5rcy9jMGE2YWU1MTVmNGQyNDVkLmpzXCIsXCIvX25leHQvc3RhdGljL2NodW5rcy84MDBlODM2MTQ2ZDZlN2ViLmpzXCIsXCIvX25leHQvc3RhdGljL2NodW5rcy9kNzFiOTkyNjdiMDY2YjliLmpzXCJdLFwiV2lkZ2V0Q2xpZW50XCJdXG4xMDpJWzM2MzQ1LFtcIi9fbmV4dC9zdGF0aWMvY2h1bmtzLzMzMDc0ZDNmZjVkMGNkMmQuanNcIixcIi9fbmV4dC9zdGF0aWMvY2h1bmtzLzk1MjYyMzg2ZDhkNGI2ZGQuanNcIl0sXCJPdXRsZXRCb3VuZGFyeVwiXVxuMTI6SVszNjM0NSxbXCIvX25leHQvc3RhdGljL2NodW5rcy8zMzA3NGQzZmY1ZDBjZDJkLmpzXCIsXCIvX25leHQvc3RhdGljL2NodW5rcy85NTI2MjM4NmQ4ZDRiNmRkLmpzXCJdLFwiVmlld3BvcnRCb3VuZGFyeVwiXVxuMTQ6SVszNjM0NSxbXCIvX25leHQvc3RhdGljL2NodW5rcy8zMzA3NGQzZmY1ZDBjZDJkLmpzXCIsXCIvX25leHQvc3RhdGljL2NodW5rcy85NTI2MjM4NmQ4ZDRiNmRkLmpzXCJdLFwiTWV0YWRhdGFCb3VuZGFyeVwiXVxuNDpbXCIkXCIsXCJzY3JpcHRcIixcInNjcmlwdC0wXCIse1wic3JjXCI6XCIvX25leHQvc3RhdGljL2NodW5rcy9jMGE2YWU1MTVmNGQyNDVkLmpzXCIsXCJhc3luY1wiOnRydWUsXCJub25jZVwiOlwiJHVuZGVmaW5lZFwifV1cbiJdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCI1OltcIiRcIixcImh0bWxcIixudWxsLHtcImxhbmdcIjpcImVuXCIsXCJzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmdcIjp0cnVlLFwiY2hpbGRyZW5cIjpbW1wiJFwiLFwiaGVhZFwiLG51bGwse1wiY2hpbGRyZW5cIjpbW1wiJFwiLFwic2NyaXB0XCIsbnVsbCx7XCJkYW5nZXJvdXNseVNldElubmVySFRNTFwiOntcIl9faHRtbFwiOlwidHJ5e2lmKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdjb2lubGliLWNvb2tpZS1jb25zZW50Jykpe2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKCdjYy1jb25zZW50ZWQnKX19Y2F0Y2goZSl7fVwifX1dLFtcIiRcIixcImxpbmtcIixudWxsLHtcInJlbFwiOlwicHJlY29ubmVjdFwiLFwiaHJlZlwiOlwiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbVwiLFwiY3Jvc3NPcmlnaW5cIjpcIlwifV1dfV0sW1wiJFwiLFwiYm9keVwiLG51bGwse1wiY2xhc3NOYW1lXCI6XCJpbnRlcl8xZWM0ZGQ5Zi1tb2R1bGVfX1VNUGFLR19fdmFyaWFibGUgYW50aWFsaWFzZWRcIixcImNoaWxkcmVuXCI6W1tcIiRcIixcIiRMYlwiLG51bGwse1wiY2hpbGRyZW5cIjpbXCIkXCIsXCIkTGNcIixudWxsLHtcInBhcmFsbGVsUm91dGVyS2V5XCI6XCJjaGlsZHJlblwiLFwiZXJyb3JcIjpcIiR1bmRlZmluZWRcIixcImVycm9yU3R5bGVzXCI6XCIkdW5kZWZpbmVkXCIsXCJlcnJvclNjcmlwdHNcIjpcIiR1bmRlZmluZWRcIixcInRlbXBsYXRlXCI6W1wiJFwiLFwiJExkXCIsbnVsbCx7fV0sXCJ0ZW1wbGF0ZVN0eWxlc1wiOlwiJHVuZGVmaW5lZFwiLFwidGVtcGxhdGVTY3JpcHRzXCI6XCIkdW5kZWZpbmVkXCIsXCJub3RGb3VuZFwiOltbW1wiJFwiLFwidGl0bGVcIixudWxsLHtcImNoaWxkcmVuXCI6XCI0MDQ6IFRoaXMgcGFnZSBjb3VsZCBub3QgYmUgZm91bmQuXCJ9XSxbXCIkXCIsXCJkaXZcIixudWxsLHtcInN0eWxlXCI6e1wiZm9udEZhbWlseVwiOlwic3lzdGVtLXVpLFxcXCJTZWdvZSBVSVxcXCIsUm9ib3RvLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmLFxcXCJBcHBsZSBDb2xvciBFbW9qaVxcXCIsXFxcIlNlZ29lIFVJIEVtb2ppXFxcIlwiLFwiaGVpZ2h0XCI6XCIxMDB2aFwiLFwidGV4dEFsaWduXCI6XCJjZW50ZXJcIixcImRpc3BsYXlcIjpcImZsZXhcIixcImZsZXhEaXJlY3Rpb25cIjpcImNvbHVtblwiLFwiYWxpZ25JdGVtc1wiOlwiY2VudGVyXCIsXCJqdXN0aWZ5Q29udGVudFwiOlwiY2VudGVyXCJ9LFwiY2hpbGRyZW5cIjpbXCIkXCIsXCJkaXZcIixudWxsLHtcImNoaWxkcmVuXCI6W1tcIiRcIixcInN0eWxlXCIsbnVsbCx7XCJkYW5nZXJvdXNseVNldElubmVySFRNTFwiOntcIl9faHRtbFwiOlwiYm9keXtjb2xvcjojMDAwO2JhY2tncm91bmQ6I2ZmZjttYXJnaW46MH0ubmV4dC1lcnJvci1oMXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjMpfUBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ZGFyayl7Ym9keXtjb2xvcjojZmZmO2JhY2tncm91bmQ6IzAwMH0ubmV4dC1lcnJvci1oMXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjMpfX1cIn19XSxbXCIkXCIsXCJoMVwiLG51bGwse1wiY2xhc3NOYW1lXCI6XCJuZXh0LWVycm9yLWgxXCIsXCJzdHlsZVwiOntcImRpc3BsYXlcIjpcImlubGluZS1ibG9ja1wiLFwibWFyZ2luXCI6XCIwIDIwcHggMCAwXCIsXCJwYWRkaW5nXCI6XCIwIDIzcHggMCAwXCIsXCJmb250U2l6ZVwiOjI0LFwiZm9udFdlaWdodFwiOjUwMCxcInZlcnRpY2FsQWxpZ25cIjpcInRvcFwiLFwibGluZUhlaWdodFwiOlwiNDlweFwifSxcImNoaWxkcmVuXCI6NDA0fV0sW1wiJFwiLFwiZGl2XCIsbnVsbCx7XCJzdHlsZVwiOntcImRpc3BsYXlcIjpcImlubGluZS1ibG9ja1wifSxcImNoaWxkcmVuXCI6W1wiJFwiLFwiaDJcIixudWxsLHtcInN0eWxlXCI6e1wiZm9udFNpemVcIjoxNCxcImZvbnRXZWlnaHRcIjo0MDAsXCJsaW5lSGVpZ2h0XCI6XCI0OXB4XCIsXCJtYXJnaW5cIjowfSxcImNoaWxkcmVuXCI6XCJUaGlzIHBhZ2UgY291bGQgbm90IGJlIGZvdW5kLlwifV19XV19XX1dXSxbXV0sXCJmb3JiaWRkZW5cIjpcIiR1bmRlZmluZWRcIixcInVuYXV0aG9yaXplZFwiOlwiJHVuZGVmaW5lZFwifV19XSxbXCIkXCIsXCJzY3JpcHRcIixudWxsLHtcImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MXCI6e1wiX19odG1sXCI6XCIoZnVuY3Rpb24oKXtmdW5jdGlvbiBsb2FkKCl7d2luZG93LmRhdGFMYXllcj13aW5kb3cuZGF0YUxheWVyfHxbXTt3aW5kb3cuZ3RhZz1mdW5jdGlvbigpe2RhdGFMYXllci5wdXNoKGFyZ3VtZW50cyl9O2d0YWcoJ2pzJyxuZXcgRGF0ZSgpKTtndGFnKCdjb25maWcnLCdHLVY4NFhQOFdHWFknKTt2YXIgcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtzLnNyYz0naHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vZ3RhZy9qcz9pZD1HLVY4NFhQOFdHWFknO3MuYXN5bmM9dHJ1ZTtkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHMpfWZ1bmN0aW9uIHNjaGVkdWxlKCl7aWYoJ3JlcXVlc3RJZGxlQ2FsbGJhY2snaW4gd2luZG93KXtyZXF1ZXN0SWRsZUNhbGxiYWNrKGxvYWQse3RpbWVvdXQ6MzAwMH0pfWVsc2V7c2V0VGltZW91dChsb2FkLDE1MDApfX1pZihkb2N1bWVudC5yZWFkeVN0YXRlPT09J2NvbXBsZXRlJyl7c2NoZWR1bGUoKX1lbHNle2FkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLHNjaGVkdWxlLHtvbmNlOnRydWV9KX19KSgpO1wifX1dXX1dXX1dXG4iXSk8L3NjcmlwdD48c2NyaXB0PnNlbGYuX19uZXh0X2YucHVzaChbMSwiNjpbXCIkXCIsXCIkMVwiLFwiY1wiLHtcImNoaWxkcmVuXCI6W251bGwsW1tcIiRcIixcInN0eWxlXCIsbnVsbCx7XCJjaGlsZHJlblwiOlwiaHRtbCwgYm9keSB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgb3ZlcmZsb3c6IGhpZGRlbjsgfVwifV0sW1wiJFwiLFwiJExjXCIsbnVsbCx7XCJwYXJhbGxlbFJvdXRlcktleVwiOlwiY2hpbGRyZW5cIixcImVycm9yXCI6XCIkdW5kZWZpbmVkXCIsXCJlcnJvclN0eWxlc1wiOlwiJHVuZGVmaW5lZFwiLFwiZXJyb3JTY3JpcHRzXCI6XCIkdW5kZWZpbmVkXCIsXCJ0ZW1wbGF0ZVwiOltcIiRcIixcIiRMZFwiLG51bGwse31dLFwidGVtcGxhdGVTdHlsZXNcIjpcIiR1bmRlZmluZWRcIixcInRlbXBsYXRlU2NyaXB0c1wiOlwiJHVuZGVmaW5lZFwiLFwibm90Rm91bmRcIjpbW1tcIiRcIixcInRpdGxlXCIsbnVsbCx7XCJjaGlsZHJlblwiOlwiNDA0OiBUaGlzIHBhZ2UgY291bGQgbm90IGJlIGZvdW5kLlwifV0sW1wiJFwiLFwiZGl2XCIsbnVsbCx7XCJzdHlsZVwiOlwiJDU6cHJvcHM6Y2hpbGRyZW46MTpwcm9wczpjaGlsZHJlbjowOnByb3BzOmNoaWxkcmVuOnByb3BzOm5vdEZvdW5kOjA6MTpwcm9wczpzdHlsZVwiLFwiY2hpbGRyZW5cIjpbXCIkXCIsXCJkaXZcIixudWxsLHtcImNoaWxkcmVuXCI6W1tcIiRcIixcInN0eWxlXCIsbnVsbCx7XCJkYW5nZXJvdXNseVNldElubmVySFRNTFwiOntcIl9faHRtbFwiOlwiYm9keXtjb2xvcjojMDAwO2JhY2tncm91bmQ6I2ZmZjttYXJnaW46MH0ubmV4dC1lcnJvci1oMXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjMpfUBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ZGFyayl7Ym9keXtjb2xvcjojZmZmO2JhY2tncm91bmQ6IzAwMH0ubmV4dC1lcnJvci1oMXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjMpfX1cIn19XSxbXCIkXCIsXCJoMVwiLG51bGwse1wiY2xhc3NOYW1lXCI6XCJuZXh0LWVycm9yLWgxXCIsXCJzdHlsZVwiOlwiJDU6cHJvcHM6Y2hpbGRyZW46MTpwcm9wczpjaGlsZHJlbjowOnByb3BzOmNoaWxkcmVuOnByb3BzOm5vdEZvdW5kOjA6MTpwcm9wczpjaGlsZHJlbjpwcm9wczpjaGlsZHJlbjoxOnByb3BzOnN0eWxlXCIsXCJjaGlsZHJlblwiOjQwNH1dLFtcIiRcIixcImRpdlwiLG51bGwse1wic3R5bGVcIjpcIiQ1OnByb3BzOmNoaWxkcmVuOjE6cHJvcHM6Y2hpbGRyZW46MDpwcm9wczpjaGlsZHJlbjpwcm9wczpub3RGb3VuZDowOjE6cHJvcHM6Y2hpbGRyZW46cHJvcHM6Y2hpbGRyZW46Mjpwcm9wczpzdHlsZVwiLFwiY2hpbGRyZW5cIjpbXCIkXCIsXCJoMlwiLG51bGwse1wic3R5bGVcIjpcIiQ1OnByb3BzOmNoaWxkcmVuOjE6cHJvcHM6Y2hpbGRyZW46MDpwcm9wczpjaGlsZHJlbjpwcm9wczpub3RGb3VuZDowOjE6cHJvcHM6Y2hpbGRyZW46cHJvcHM6Y2hpbGRyZW46Mjpwcm9wczpjaGlsZHJlbjpwcm9wczpzdHlsZVwiLFwiY2hpbGRyZW5cIjpcIlRoaXMgcGFnZSBjb3VsZCBub3QgYmUgZm91bmQuXCJ9XX1dXX1dfV1dLFtdXSxcImZvcmJpZGRlblwiOlwiJHVuZGVmaW5lZFwiLFwidW5hdXRob3JpemVkXCI6XCIkdW5kZWZpbmVkXCJ9XV1dfV1cbiJdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCI3OltcIiRcIixcIiQxXCIsXCJjXCIse1wiY2hpbGRyZW5cIjpbbnVsbCxbXCIkXCIsXCIkTGNcIixudWxsLHtcInBhcmFsbGVsUm91dGVyS2V5XCI6XCJjaGlsZHJlblwiLFwiZXJyb3JcIjpcIiR1bmRlZmluZWRcIixcImVycm9yU3R5bGVzXCI6XCIkdW5kZWZpbmVkXCIsXCJlcnJvclNjcmlwdHNcIjpcIiR1bmRlZmluZWRcIixcInRlbXBsYXRlXCI6W1wiJFwiLFwiJExkXCIsbnVsbCx7fV0sXCJ0ZW1wbGF0ZVN0eWxlc1wiOlwiJHVuZGVmaW5lZFwiLFwidGVtcGxhdGVTY3JpcHRzXCI6XCIkdW5kZWZpbmVkXCIsXCJub3RGb3VuZFwiOlwiJHVuZGVmaW5lZFwiLFwiZm9yYmlkZGVuXCI6XCIkdW5kZWZpbmVkXCIsXCJ1bmF1dGhvcml6ZWRcIjpcIiR1bmRlZmluZWRcIn1dXX1dXG44OltcIiRcIixcIiQxXCIsXCJjXCIse1wiY2hpbGRyZW5cIjpbW1wiJFwiLFwiJGVcIixudWxsLHtcImNoaWxkcmVuXCI6W1wiJFwiLFwiJExmXCIsbnVsbCx7fV19XSxbW1wiJFwiLFwic2NyaXB0XCIsXCJzY3JpcHQtMFwiLHtcInNyY1wiOlwiL19uZXh0L3N0YXRpYy9jaHVua3MvODAwZTgzNjE0NmQ2ZTdlYi5qc1wiLFwiYXN5bmNcIjp0cnVlLFwibm9uY2VcIjpcIiR1bmRlZmluZWRcIn1dLFtcIiRcIixcInNjcmlwdFwiLFwic2NyaXB0LTFcIix7XCJzcmNcIjpcIi9fbmV4dC9zdGF0aWMvY2h1bmtzL2Q3MWI5OTI2N2IwNjZiOWIuanNcIixcImFzeW5jXCI6dHJ1ZSxcIm5vbmNlXCI6XCIkdW5kZWZpbmVkXCJ9XV0sW1wiJFwiLFwiJEwxMFwiLG51bGwse1wiY2hpbGRyZW5cIjpbXCIkXCIsXCIkZVwiLG51bGwse1wibmFtZVwiOlwiTmV4dC5NZXRhZGF0YU91dGxldFwiLFwiY2hpbGRyZW5cIjpcIiRAMTFcIn1dfV1dfV1cbjk6W1wiJFwiLFwiJDFcIixcImhcIix7XCJjaGlsZHJlblwiOltudWxsLFtcIiRcIixcIiRMMTJcIixudWxsLHtcImNoaWxkcmVuXCI6XCIkTDEzXCJ9XSxbXCIkXCIsXCJkaXZcIixudWxsLHtcImhpZGRlblwiOnRydWUsXCJjaGlsZHJlblwiOltcIiRcIixcIiRMMTRcIixudWxsLHtcImNoaWxkcmVuXCI6W1wiJFwiLFwiJGVcIixudWxsLHtcIm5hbWVcIjpcIk5leHQuTWV0YWRhdGFcIixcImNoaWxkcmVuXCI6XCIkTDE1XCJ9XX1dfV0sW1wiJFwiLFwibWV0YVwiLG51bGwse1wibmFtZVwiOlwibmV4dC1zaXplLWFkanVzdFwiLFwiY29udGVudFwiOlwiXCJ9XV19XVxuIl0pPC9zY3JpcHQ+PHNjcmlwdD5zZWxmLl9fbmV4dF9mLnB1c2goWzEsIjEzOltbXCIkXCIsXCJtZXRhXCIsXCIwXCIse1wiY2hhclNldFwiOlwidXRmLThcIn1dLFtcIiRcIixcIm1ldGFcIixcIjFcIix7XCJuYW1lXCI6XCJ2aWV3cG9ydFwiLFwiY29udGVudFwiOlwid2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHZpZXdwb3J0LWZpdD1jb3ZlclwifV1dXG4iXSk8L3NjcmlwdD48c2NyaXB0PnNlbGYuX19uZXh0X2YucHVzaChbMSwiMTY6SVsyMDQxNCxbXCIvX25leHQvc3RhdGljL2NodW5rcy8zMzA3NGQzZmY1ZDBjZDJkLmpzXCIsXCIvX25leHQvc3RhdGljL2NodW5rcy85NTI2MjM4NmQ4ZDRiNmRkLmpzXCJdLFwiSWNvbk1hcmtcIl1cbjExOm51bGxcbiJdKTwvc2NyaXB0PjxzY3JpcHQ+c2VsZi5fX25leHRfZi5wdXNoKFsxLCIxNTpbW1wiJFwiLFwidGl0bGVcIixcIjBcIix7XCJjaGlsZHJlblwiOlwiQ29pbmxpYiBXaWRnZXQgfCBDb2lubGliXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCIxXCIse1wibmFtZVwiOlwiZGVzY3JpcHRpb25cIixcImNvbnRlbnRcIjpcIlRyYWNrIHJlYWwtdGltZSBjcnlwdG9jdXJyZW5jeSBwcmljZXMsIG1hcmtldCBjYXAsIGNoYXJ0cywgYW5kIHBvcnRmb2xpby4gRXhwbG9yZSB0aG91c2FuZHMgb2YgY29pbnMgYW5kIGV4Y2hhbmdlcyB3aXRoIENvaW5saWIuXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCIyXCIse1wibmFtZVwiOlwia2V5d29yZHNcIixcImNvbnRlbnRcIjpcImNyeXB0b2N1cnJlbmN5LGNyeXB0byBwcmljZXMsYml0Y29pbixtYXJrZXQgY2FwLGNyeXB0byBjaGFydHMscG9ydGZvbGlvIHRyYWNrZXJcIn1dLFtcIiRcIixcIm1ldGFcIixcIjNcIix7XCJuYW1lXCI6XCJyb2JvdHNcIixcImNvbnRlbnRcIjpcIm5vaW5kZXhcIn1dLFtcIiRcIixcIm1ldGFcIixcIjRcIix7XCJwcm9wZXJ0eVwiOlwib2c6dGl0bGVcIixcImNvbnRlbnRcIjpcIkNvaW5saWIg4oCUIENyeXB0b2N1cnJlbmN5IFByaWNlcywgQ2hhcnRzIFx1MDAyNiBNYXJrZXQgRGF0YVwifV0sW1wiJFwiLFwibWV0YVwiLFwiNVwiLHtcInByb3BlcnR5XCI6XCJvZzpkZXNjcmlwdGlvblwiLFwiY29udGVudFwiOlwiVHJhY2sgcmVhbC10aW1lIGNyeXB0b2N1cnJlbmN5IHByaWNlcywgbWFya2V0IGNhcCwgY2hhcnRzLCBhbmQgcG9ydGZvbGlvLiBFeHBsb3JlIHRob3VzYW5kcyBvZiBjb2lucyBhbmQgZXhjaGFuZ2VzIHdpdGggQ29pbmxpYi5cIn1dLFtcIiRcIixcIm1ldGFcIixcIjZcIix7XCJwcm9wZXJ0eVwiOlwib2c6dXJsXCIsXCJjb250ZW50XCI6XCJodHRwczovL2NvaW5saWIuaW9cIn1dLFtcIiRcIixcIm1ldGFcIixcIjdcIix7XCJwcm9wZXJ0eVwiOlwib2c6c2l0ZV9uYW1lXCIsXCJjb250ZW50XCI6XCJDb2lubGliXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCI4XCIse1wicHJvcGVydHlcIjpcIm9nOmltYWdlXCIsXCJjb250ZW50XCI6XCJodHRwczovL2NvaW5saWIuaW8vb2cvZGVmYXVsdC5wbmdcIn1dLFtcIiRcIixcIm1ldGFcIixcIjlcIix7XCJwcm9wZXJ0eVwiOlwib2c6aW1hZ2U6d2lkdGhcIixcImNvbnRlbnRcIjpcIjEyMDBcIn1dLFtcIiRcIixcIm1ldGFcIixcIjEwXCIse1wicHJvcGVydHlcIjpcIm9nOmltYWdlOmhlaWdodFwiLFwiY29udGVudFwiOlwiNjMwXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCIxMVwiLHtcInByb3BlcnR5XCI6XCJvZzppbWFnZTphbHRcIixcImNvbnRlbnRcIjpcIkNvaW5saWIg4oCUIENyeXB0b2N1cnJlbmN5IFByaWNlcywgQ2hhcnRzIFx1MDAyNiBNYXJrZXQgRGF0YVwifV0sW1wiJFwiLFwibWV0YVwiLFwiMTJcIix7XCJwcm9wZXJ0eVwiOlwib2c6dHlwZVwiLFwiY29udGVudFwiOlwid2Vic2l0ZVwifV0sW1wiJFwiLFwibWV0YVwiLFwiMTNcIix7XCJuYW1lXCI6XCJ0d2l0dGVyOmNhcmRcIixcImNvbnRlbnRcIjpcInN1bW1hcnlfbGFyZ2VfaW1hZ2VcIn1dLFtcIiRcIixcIm1ldGFcIixcIjE0XCIse1wibmFtZVwiOlwidHdpdHRlcjp0aXRsZVwiLFwiY29udGVudFwiOlwiQ29pbmxpYiDigJQgQ3J5cHRvY3VycmVuY3kgUHJpY2VzLCBDaGFydHMgXHUwMDI2IE1hcmtldCBEYXRhXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCIxNVwiLHtcIm5hbWVcIjpcInR3aXR0ZXI6ZGVzY3JpcHRpb25cIixcImNvbnRlbnRcIjpcIlRyYWNrIHJlYWwtdGltZSBjcnlwdG9jdXJyZW5jeSBwcmljZXMsIG1hcmtldCBjYXAsIGNoYXJ0cywgYW5kIHBvcnRmb2xpby4gRXhwbG9yZSB0aG91c2FuZHMgb2YgY29pbnMgYW5kIGV4Y2hhbmdlcyB3aXRoIENvaW5saWIuXCJ9XSxbXCIkXCIsXCJtZXRhXCIsXCIxNlwiLHtcIm5hbWVcIjpcInR3aXR0ZXI6aW1hZ2VcIixcImNvbnRlbnRcIjpcImh0dHBzOi8vY29pbmxpYi5pby9vZy9kZWZhdWx0LnBuZ1wifV0sW1wiJFwiLFwibGlua1wiLFwiMTdcIix7XCJyZWxcIjpcImljb25cIixcImhyZWZcIjpcIi9mYXZpY29uLmljbz9mYXZpY29uLjM5MGUxMTA5Lmljb1wiLFwic2l6ZXNcIjpcIjQ4eDQ4XCIsXCJ0eXBlXCI6XCJpbWFnZS94LWljb25cIn1dLFtcIiRcIixcImxpbmtcIixcIjE4XCIse1wicmVsXCI6XCJhcHBsZS10b3VjaC1pY29uXCIsXCJocmVmXCI6XCIvbG9nb3MvYXBwbGUtdG91Y2gtaWNvbi5wbmdcIn1dLFtcIiRcIixcIiRMMTZcIixcIjE5XCIse31dXVxuIl0pPC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJtb2R1bGUiIHNyYz0iaHR0cHM6Ly9zdGF0aWMuY2xvdWRmbGFyZWluc2lnaHRzLmNvbS9iZWFjb24ubWluLmpzL3Y0NTEzMjI2Y2RhZTM0NzQ2YjRkZWRmMGI0ZGZhMDk5ZTE3ODE3OTE1MDk0OTYiIGludGVncml0eT0ic2hhNTEyLVpFOXBaYVVYTkQ2NnYzODBRVXRjaC81c0U5dFBGaDJ6ZzQ1cFIyUEIwQ1ZrQ3RPUkV2MkFKS2tTaWRJU1dreXNFdVEwRUg4ZmFVVTVkdTc4Yng4N1VRPT0iIGRhdGEtY2YtYmVhY29uPSd7InZlcnNpb24iOiIyMDI0LjExLjAiLCJ0b2tlbiI6IjdkZjcwOGZjZmFhMDRhNjRhYjNiNWU4NmUzMTBkZjVhIiwiciI6MX0nIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiPjwvc2NyaXB0Pgo8L2JvZHk+PC9odG1sPg=="}},"time_used":50,"timings":{"blocked":6,"dns":5,"connect":0,"send":0,"wait":33,"receive":6,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/Error","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:40.466Z","timestamp":1785143920466,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /Error HTTP/1.1\r\nHost: scromegatrade.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\nReferer: https://scromegatrade.com/\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:46 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nX-Powered-By: PHP/7.4.7\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 680\r\nKeep-Alive: timeout=5, max=96\r\nConnection: Keep-Alive\r\nContent-Type: text/html; charset=UTF-8\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"PHP:7.4.7","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":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":1465,"size_decoded":980,"mime_type":"text/html; charset=UTF-8","magic":"HTML document, ASCII text, with CRLF line terminators","md5":"a6823e2f05835e8db5832c650d12f00c","sha1":"2eaa59ccd53165726cac8f37d644fae998a02656","sha256":"fe15f0988528d02afb17d2ebbd68e0578e7e8552095068e63e3a1692ce652b71","sha512":"b231b9b3be32625926a11c560a4250f42ea3c97b81aae05f382403bd37a0c6f672372f16c857840f0c1fbba52f25101014650021565513693ce80518dcea1208","ssdeep":"","tlshash":"6431f92e14c2003651b28224baa0392edfab851b3b162fa170dd86df7ff7c0085a35cc","first_seen":"2024-06-18T09:42:31Z","last_seen":"2026-07-27T14:18:36.412297Z","times_seen":41,"resource_available":false,"data":"PGh0bWwgbGFuZz0iZW4iPg0KPGhlYWQ+DQogICAgPG1ldGEgY2hhcnNldD0iVVRGLTgiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+NDA0IHwgUGFnZSBub3QgZm91bmQ8L3RpdGxlPg0KICA8IS0tIEN1c3RvbSBmb250cyBmb3IgdGhpcyB0ZW1wbGF0ZS0tPg0KICA8bGluayBocmVmPSJlcnJvci9mb250YXdlc29tZS1mcmVlL2FsbC5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIj4NCiAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU51bml0bzoyMDAsMjAwaSwzMDAsMzAwaSw0MDAsNDAwaSw2MDAsNjAwaSw3MDAsNzAwaSw4MDAsODAwaSw5MDAsOTAwaSIgcmVsPSJzdHlsZXNoZWV0Ij4NCg0KICA8IS0tIEN1c3RvbSBzdHlsZXMgZm9yIHRoaXMgdGVtcGxhdGUtLT4NCiAgPGxpbmsgaHJlZj0iZXJyb3JzL3NiLWFkbWluLTIubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ij4NCg0KPC9oZWFkPg0KDQo8Ym9keSBpZD0icGFnZS10b3AiPg0KPGJyPjxicj4NCiAgPCEtLSBQYWdlIFdyYXBwZXIgLS0+DQogIDxkaXYgaWQ9IndyYXBwZXIiPg0KDQogICAgICAgIDwhLS0gQmVnaW4gUGFnZSBDb250ZW50IC0tPg0KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXItZmx1aWQiPg0KDQogICAgICAgICAgPCEtLSA0MDQgRXJyb3IgVGV4dCAtLT4NCiAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LWNlbnRlciI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJlcnJvciBteC1hdXRvIiBkYXRhLXRleHQ9IjQwNCI+NDA0PC9kaXY+DQogICAgICAgICAgICA8cCBjbGFzcz0ibGVhZCB0ZXh0LWdyYXktODAwIG1iLTUiPlBhZ2UgTm90IEZvdW5kPC9wPg0KICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZ3JheS01MDAgbWItMCI+VGhlIHJlcXVlc3RlZCBVUkwgd2FzIG5vdCBmb3VuZCBvbiB0aGlzIHNlcnZlci48YnI+DQpBZGRpdGlvbmFsbHksIGEgNDA0IE5vdCBGb3VuZCBlcnJvciB3YXMgZW5jb3VudGVyZWQgd2hpbGUgdHJ5aW5nIHRvIHVzZSBhbiBFcnJvckRvY3VtZW50IHRvIGhhbmRsZSB0aGUgcmVxdWVzdC48L3A+DQogICAgICAgICAgICA8YSBocmVmPSJob21lIj4mbGFycjsgQmFjayB0byBEYXNoYm9hcmQ8L2E+DQogICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgPC9kaXY+DQogICAgICAgIDwhLS0gLy5jb250YWluZXItZmx1aWQgLS0+DQoNCiAgICAgIDwvZGl2Pg0KICAgICAgPCEtLSBFbmQgb2YgTWFpbiBDb250ZW50IC0tPg0KDQogICAgICA8IS0tIEZvb3RlciAtLT4NCiAgICAgIA0KICAgIDwvZGl2Pg0KICAgIDwhLS0gRW5kIG9mIENvbnRlbnQgV3JhcHBlciAtLT4NCg0KICA8L2Rpdj4NCiAgPCEtLSBFbmQgb2YgUGFnZSBXcmFwcGVyIC0tPg0KDQoNCjwvYm9keT4NCg0KPC9odG1sPg=="}},"time_used":5951,"timings":{"blocked":5403,"dns":0,"connect":0,"send":0,"wait":548,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtag/js?id=G-V84XP8WGXY","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.806Z","timestamp":1785143926806,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /gtag/js?id=G-V84XP8WGXY 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\nReferer: https://coinlib.io/\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":"","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-11T07:57:31.65745Z","times_seen":17832625,"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":"scromegatrade.com/css/font-awesome.min.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.083Z","timestamp":1785143908083,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /css/font-awesome.min.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:30 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"6b92-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 6257\r\nKeep-Alive: timeout=5, max=100\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":27538,"size_decoded":6619,"mime_type":"text/css","magic":"ASCII text, with very long lines (27375)","md5":"57db6e1fe00d90b90f102dcf8935f74f","sha1":"325df57f9764bcdef7978ac95ed228d040b9ea49","sha256":"92bfa809fa9a481e05b2b9acb3713657dd000d11dbfe599dbff752efb9a6a676","sha512":"bd3c366cdb6838a8f2db61e766aa32b79dd01bca5f157d43f68bc001e5d5b61747ac623c8a1e36981cb6e649f1eeeeda72bad7704d47f8a3ea2bb007b7da30b0","ssdeep":"384:8i5yWeTUKW+KlkJ5de2UYmydfwYUas8l8yQ/8c:Xlr+Klk3YlKfwYUf8l8yQ/T","tlshash":"e2c240f8e54c01d66731c48bff81b36862b6f73dd5814d99f01f690c29d22a522c9bba","first_seen":"2025-06-30T17:57:14.590579Z","last_seen":"2026-07-27T09:20:18.364858Z","times_seen":12,"resource_available":false,"data":"LyohCiAqICBGb250IEF3ZXNvbWUgNC41LjAgYnkgQGRhdmVnYW5keSAtIGh0dHA6Ly9mb250YXdlc29tZS5pbyAtIEBmb250YXdlc29tZQogKiAgTGljZW5zZSAtIGh0dHA6Ly9mb250YXdlc29tZS5pby9saWNlbnNlIChGb250OiBTSUwgT0ZMIDEuMSwgQ1NTOiBNSVQgTGljZW5zZSkKICovQGZvbnQtZmFjZXtmb250LWZhbWlseTonRm9udEF3ZXNvbWUnO3NyYzp1cmwoJy4uL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQzMjk1MzI5NTMyOTUuZW90P3Y9NC41LjAnKTtzcmM6dXJsKCcuLi9mb250cy9mb250YXdlc29tZS13ZWJmb250ZDQxZGQ0MWRkNDFkLmVvdD8jaWVmaXgmdj00LjUuMCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSx1cmwoJy4uL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQzMjk1MzI5NTMyOTUud29mZjI/dj00LjUuMCcpIGZvcm1hdCgnd29mZjInKSx1cmwoJy4uL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQzMjk1MzI5NTMyOTUud29mZj92PTQuNS4wJykgZm9ybWF0KCd3b2ZmJyksdXJsKCcuLi9mb250cy9mb250YXdlc29tZS13ZWJmb250MzI5NTMyOTUzMjk1LnR0Zj92PTQuNS4wJykgZm9ybWF0KCd0cnVldHlwZScpLHVybCgnLi4vZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udDMyOTUzMjk1MzI5NS5zdmc/dj00LjUuMCNmb250YXdlc29tZXJlZ3VsYXInKSBmb3JtYXQoJ3N2ZycpO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXN0eWxlOm5vcm1hbH0uZmF7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udDpub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7Zm9udC1zaXplOmluaGVyaXQ7dGV4dC1yZW5kZXJpbmc6YXV0bzstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZX0uZmEtbGd7Zm9udC1zaXplOjEuMzMzMzMzMzNlbTtsaW5lLWhlaWdodDouNzVlbTt2ZXJ0aWNhbC1hbGlnbjotMTUlfS5mYS0yeHtmb250LXNpemU6MmVtfS5mYS0zeHtmb250LXNpemU6M2VtfS5mYS00eHtmb250LXNpemU6NGVtfS5mYS01eHtmb250LXNpemU6NWVtfS5mYS1md3t3aWR0aDoxLjI4NTcxNDI5ZW07dGV4dC1hbGlnbjpjZW50ZXJ9LmZhLXVse3BhZGRpbmctbGVmdDowO21hcmdpbi1sZWZ0OjIuMTQyODU3MTRlbTtsaXN0LXN0eWxlLXR5cGU6bm9uZX0uZmEtdWw+bGl7cG9zaXRpb246cmVsYXRpdmV9LmZhLWxpe3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTIuMTQyODU3MTRlbTt3aWR0aDoyLjE0Mjg1NzE0ZW07dG9wOi4xNDI4NTcxNGVtO3RleHQtYWxpZ246Y2VudGVyfS5mYS1saS5mYS1sZ3tsZWZ0Oi0xLjg1NzE0Mjg2ZW19LmZhLWJvcmRlcntwYWRkaW5nOi4yZW0gLjI1ZW0gLjE1ZW07Ym9yZGVyOnNvbGlkIC4wOGVtICNlZWU7Ym9yZGVyLXJhZGl1czouMWVtfS5mYS1wdWxsLWxlZnR7ZmxvYXQ6bGVmdH0uZmEtcHVsbC1yaWdodHtmbG9hdDpyaWdodH0uZmEuZmEtcHVsbC1sZWZ0e21hcmdpbi1yaWdodDouM2VtfS5mYS5mYS1wdWxsLXJpZ2h0e21hcmdpbi1sZWZ0Oi4zZW19LnB1bGwtcmlnaHR7ZmxvYXQ6cmlnaHR9LnB1bGwtbGVmdHtmbG9hdDpsZWZ0fS5mYS5wdWxsLWxlZnR7bWFyZ2luLXJpZ2h0Oi4zZW19LmZhLnB1bGwtcmlnaHR7bWFyZ2luLWxlZnQ6LjNlbX0uZmEtc3Bpbnstd2Via2l0LWFuaW1hdGlvbjpmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjthbmltYXRpb246ZmEtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXJ9LmZhLXB1bHNley13ZWJraXQtYW5pbWF0aW9uOmZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7YW5pbWF0aW9uOmZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCl9QC13ZWJraXQta2V5ZnJhbWVzIGZhLXNwaW57MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9MTAwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMzU5ZGVnKTt0cmFuc2Zvcm06cm90YXRlKDM1OWRlZyl9fUBrZXlmcmFtZXMgZmEtc3BpbnswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX0xMDAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgzNTlkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMzU5ZGVnKX19LmZhLXJvdGF0ZS05MHtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MSk7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDkwZGVnKTstbXMtdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9LmZhLXJvdGF0ZS0xODB7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIpOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpOy1tcy10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS5mYS1yb3RhdGUtMjcwe2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0zKTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMjcwZGVnKTstbXMtdHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMjcwZGVnKX0uZmEtZmxpcC1ob3Jpem9udGFse2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0wLCBtaXJyb3I9MSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLTEsIDEpOy1tcy10cmFuc2Zvcm06c2NhbGUoLTEsIDEpO3RyYW5zZm9ybTpzY2FsZSgtMSwgMSl9LmZhLWZsaXAtdmVydGljYWx7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIsIG1pcnJvcj0xKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLCAtMSk7LW1zLXRyYW5zZm9ybTpzY2FsZSgxLCAtMSk7dHJhbnNmb3JtOnNjYWxlKDEsIC0xKX06cm9vdCAuZmEtcm90YXRlLTkwLDpyb290IC5mYS1yb3RhdGUtMTgwLDpyb290IC5mYS1yb3RhdGUtMjcwLDpyb290IC5mYS1mbGlwLWhvcml6b250YWwsOnJvb3QgLmZhLWZsaXAtdmVydGljYWx7ZmlsdGVyOm5vbmV9LmZhLXN0YWNre3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjJlbTtoZWlnaHQ6MmVtO2xpbmUtaGVpZ2h0OjJlbTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmZhLXN0YWNrLTF4LC5mYS1zdGFjay0yeHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7d2lkdGg6MTAwJTt0ZXh0LWFsaWduOmNlbnRlcn0uZmEtc3RhY2stMXh7bGluZS1oZWlnaHQ6aW5oZXJpdH0uZmEtc3RhY2stMnh7Zm9udC1zaXplOjJlbX0uZmEtaW52ZXJzZXtjb2xvcjojZmZmfS5mYS1nbGFzczpiZWZvcmV7Y29udGVudDoiXGYwMDAifS5mYS1tdXNpYzpiZWZvcmV7Y29udGVudDoiXGYwMDEifS5mYS1zZWFyY2g6YmVmb3Jle2NvbnRlbnQ6IlxmMDAyIn0uZmEtZW52ZWxvcGUtbzpiZWZvcmV7Y29udGVudDoiXGYwMDMifS5mYS1oZWFydDpiZWZvcmV7Y29udGVudDoiXGYwMDQifS5mYS1zdGFyOmJlZm9yZXtjb250ZW50OiJcZjAwNSJ9LmZhLXN0YXItbzpiZWZvcmV7Y29udGVudDoiXGYwMDYifS5mYS11c2VyOmJlZm9yZXtjb250ZW50OiJcZjAwNyJ9LmZhLWZpbG06YmVmb3Jle2NvbnRlbnQ6IlxmMDA4In0uZmEtdGgtbGFyZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMDA5In0uZmEtdGg6YmVmb3Jle2NvbnRlbnQ6IlxmMDBhIn0uZmEtdGgtbGlzdDpiZWZvcmV7Y29udGVudDoiXGYwMGIifS5mYS1jaGVjazpiZWZvcmV7Y29udGVudDoiXGYwMGMifS5mYS1yZW1vdmU6YmVmb3JlLC5mYS1jbG9zZTpiZWZvcmUsLmZhLXRpbWVzOmJlZm9yZXtjb250ZW50OiJcZjAwZCJ9LmZhLXNlYXJjaC1wbHVzOmJlZm9yZXtjb250ZW50OiJcZjAwZSJ9LmZhLXNlYXJjaC1taW51czpiZWZvcmV7Y29udGVudDoiXGYwMTAifS5mYS1wb3dlci1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxmMDExIn0uZmEtc2lnbmFsOmJlZm9yZXtjb250ZW50OiJcZjAxMiJ9LmZhLWdlYXI6YmVmb3JlLC5mYS1jb2c6YmVmb3Jle2NvbnRlbnQ6IlxmMDEzIn0uZmEtdHJhc2gtbzpiZWZvcmV7Y29udGVudDoiXGYwMTQifS5mYS1ob21lOmJlZm9yZXtjb250ZW50OiJcZjAxNSJ9LmZhLWZpbGUtbzpiZWZvcmV7Y29udGVudDoiXGYwMTYifS5mYS1jbG9jay1vOmJlZm9yZXtjb250ZW50OiJcZjAxNyJ9LmZhLXJvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDE4In0uZmEtZG93bmxvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDE5In0uZmEtYXJyb3ctY2lyY2xlLW8tZG93bjpiZWZvcmV7Y29udGVudDoiXGYwMWEifS5mYS1hcnJvdy1jaXJjbGUtby11cDpiZWZvcmV7Y29udGVudDoiXGYwMWIifS5mYS1pbmJveDpiZWZvcmV7Y29udGVudDoiXGYwMWMifS5mYS1wbGF5LWNpcmNsZS1vOmJlZm9yZXtjb250ZW50OiJcZjAxZCJ9LmZhLXJvdGF0ZS1yaWdodDpiZWZvcmUsLmZhLXJlcGVhdDpiZWZvcmV7Y29udGVudDoiXGYwMWUifS5mYS1yZWZyZXNoOmJlZm9yZXtjb250ZW50OiJcZjAyMSJ9LmZhLWxpc3QtYWx0OmJlZm9yZXtjb250ZW50OiJcZjAyMiJ9LmZhLWxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDIzIn0uZmEtZmxhZzpiZWZvcmV7Y29udGVudDoiXGYwMjQifS5mYS1oZWFkcGhvbmVzOmJlZm9yZXtjb250ZW50OiJcZjAyNSJ9LmZhLXZvbHVtZS1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxmMDI2In0uZmEtdm9sdW1lLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMDI3In0uZmEtdm9sdW1lLXVwOmJlZm9yZXtjb250ZW50OiJcZjAyOCJ9LmZhLXFyY29kZTpiZWZvcmV7Y29udGVudDoiXGYwMjkifS5mYS1iYXJjb2RlOmJlZm9yZXtjb250ZW50OiJcZjAyYSJ9LmZhLXRhZzpiZWZvcmV7Y29udGVudDoiXGYwMmIifS5mYS10YWdzOmJlZm9yZXtjb250ZW50OiJcZjAyYyJ9LmZhLWJvb2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDJkIn0uZmEtYm9va21hcms6YmVmb3Jle2NvbnRlbnQ6IlxmMDJlIn0uZmEtcHJpbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDJmIn0uZmEtY2FtZXJhOmJlZm9yZXtjb250ZW50OiJcZjAzMCJ9LmZhLWZvbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDMxIn0uZmEtYm9sZDpiZWZvcmV7Y29udGVudDoiXGYwMzIifS5mYS1pdGFsaWM6YmVmb3Jle2NvbnRlbnQ6IlxmMDMzIn0uZmEtdGV4dC1oZWlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDM0In0uZmEtdGV4dC13aWR0aDpiZWZvcmV7Y29udGVudDoiXGYwMzUifS5mYS1hbGlnbi1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjAzNiJ9LmZhLWFsaWduLWNlbnRlcjpiZWZvcmV7Y29udGVudDoiXGYwMzcifS5mYS1hbGlnbi1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwMzgifS5mYS1hbGlnbi1qdXN0aWZ5OmJlZm9yZXtjb250ZW50OiJcZjAzOSJ9LmZhLWxpc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDNhIn0uZmEtZGVkZW50OmJlZm9yZSwuZmEtb3V0ZGVudDpiZWZvcmV7Y29udGVudDoiXGYwM2IifS5mYS1pbmRlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDNjIn0uZmEtdmlkZW8tY2FtZXJhOmJlZm9yZXtjb250ZW50OiJcZjAzZCJ9LmZhLXBob3RvOmJlZm9yZSwuZmEtaW1hZ2U6YmVmb3JlLC5mYS1waWN0dXJlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMDNlIn0uZmEtcGVuY2lsOmJlZm9yZXtjb250ZW50OiJcZjA0MCJ9LmZhLW1hcC1tYXJrZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDQxIn0uZmEtYWRqdXN0OmJlZm9yZXtjb250ZW50OiJcZjA0MiJ9LmZhLXRpbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDQzIn0uZmEtZWRpdDpiZWZvcmUsLmZhLXBlbmNpbC1zcXVhcmUtbzpiZWZvcmV7Y29udGVudDoiXGYwNDQifS5mYS1zaGFyZS1zcXVhcmUtbzpiZWZvcmV7Y29udGVudDoiXGYwNDUifS5mYS1jaGVjay1zcXVhcmUtbzpiZWZvcmV7Y29udGVudDoiXGYwNDYifS5mYS1hcnJvd3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDQ3In0uZmEtc3RlcC1iYWNrd2FyZDpiZWZvcmV7Y29udGVudDoiXGYwNDgifS5mYS1mYXN0LWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA0OSJ9LmZhLWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA0YSJ9LmZhLXBsYXk6YmVmb3Jle2NvbnRlbnQ6IlxmMDRiIn0uZmEtcGF1c2U6YmVmb3Jle2NvbnRlbnQ6IlxmMDRjIn0uZmEtc3RvcDpiZWZvcmV7Y29udGVudDoiXGYwNGQifS5mYS1mb3J3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA0ZSJ9LmZhLWZhc3QtZm9yd2FyZDpiZWZvcmV7Y29udGVudDoiXGYwNTAifS5mYS1zdGVwLWZvcndhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDUxIn0uZmEtZWplY3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDUyIn0uZmEtY2hldnJvbi1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjA1MyJ9LmZhLWNoZXZyb24tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDU0In0uZmEtcGx1cy1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDU1In0uZmEtbWludXMtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjA1NiJ9LmZhLXRpbWVzLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYwNTcifS5mYS1jaGVjay1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDU4In0uZmEtcXVlc3Rpb24tY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjA1OSJ9LmZhLWluZm8tY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjA1YSJ9LmZhLWNyb3NzaGFpcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMDViIn0uZmEtdGltZXMtY2lyY2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMDVjIn0uZmEtY2hlY2stY2lyY2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMDVkIn0uZmEtYmFuOmJlZm9yZXtjb250ZW50OiJcZjA1ZSJ9LmZhLWFycm93LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDYwIn0uZmEtYXJyb3ctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDYxIn0uZmEtYXJyb3ctdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMDYyIn0uZmEtYXJyb3ctZG93bjpiZWZvcmV7Y29udGVudDoiXGYwNjMifS5mYS1tYWlsLWZvcndhcmQ6YmVmb3JlLC5mYS1zaGFyZTpiZWZvcmV7Y29udGVudDoiXGYwNjQifS5mYS1leHBhbmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDY1In0uZmEtY29tcHJlc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDY2In0uZmEtcGx1czpiZWZvcmV7Y29udGVudDoiXGYwNjcifS5mYS1taW51czpiZWZvcmV7Y29udGVudDoiXGYwNjgifS5mYS1hc3RlcmlzazpiZWZvcmV7Y29udGVudDoiXGYwNjkifS5mYS1leGNsYW1hdGlvbi1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDZhIn0uZmEtZ2lmdDpiZWZvcmV7Y29udGVudDoiXGYwNmIifS5mYS1sZWFmOmJlZm9yZXtjb250ZW50OiJcZjA2YyJ9LmZhLWZpcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDZkIn0uZmEtZXllOmJlZm9yZXtjb250ZW50OiJcZjA2ZSJ9LmZhLWV5ZS1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGYwNzAifS5mYS13YXJuaW5nOmJlZm9yZSwuZmEtZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDcxIn0uZmEtcGxhbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDcyIn0uZmEtY2FsZW5kYXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDczIn0uZmEtcmFuZG9tOmJlZm9yZXtjb250ZW50OiJcZjA3NCJ9LmZhLWNvbW1lbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDc1In0uZmEtbWFnbmV0OmJlZm9yZXtjb250ZW50OiJcZjA3NiJ9LmZhLWNoZXZyb24tdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMDc3In0uZmEtY2hldnJvbi1kb3duOmJlZm9yZXtjb250ZW50OiJcZjA3OCJ9LmZhLXJldHdlZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDc5In0uZmEtc2hvcHBpbmctY2FydDpiZWZvcmV7Y29udGVudDoiXGYwN2EifS5mYS1mb2xkZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDdiIn0uZmEtZm9sZGVyLW9wZW46YmVmb3Jle2NvbnRlbnQ6IlxmMDdjIn0uZmEtYXJyb3dzLXY6YmVmb3Jle2NvbnRlbnQ6IlxmMDdkIn0uZmEtYXJyb3dzLWg6YmVmb3Jle2NvbnRlbnQ6IlxmMDdlIn0uZmEtYmFyLWNoYXJ0LW86YmVmb3JlLC5mYS1iYXItY2hhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDgwIn0uZmEtdHdpdHRlci1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDgxIn0uZmEtZmFjZWJvb2stc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjA4MiJ9LmZhLWNhbWVyYS1yZXRybzpiZWZvcmV7Y29udGVudDoiXGYwODMifS5mYS1rZXk6YmVmb3Jle2NvbnRlbnQ6IlxmMDg0In0uZmEtZ2VhcnM6YmVmb3JlLC5mYS1jb2dzOmJlZm9yZXtjb250ZW50OiJcZjA4NSJ9LmZhLWNvbW1lbnRzOmJlZm9yZXtjb250ZW50OiJcZjA4NiJ9LmZhLXRodW1icy1vLXVwOmJlZm9yZXtjb250ZW50OiJcZjA4NyJ9LmZhLXRodW1icy1vLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMDg4In0uZmEtc3Rhci1oYWxmOmJlZm9yZXtjb250ZW50OiJcZjA4OSJ9LmZhLWhlYXJ0LW86YmVmb3Jle2NvbnRlbnQ6IlxmMDhhIn0uZmEtc2lnbi1vdXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDhiIn0uZmEtbGlua2VkaW4tc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjA4YyJ9LmZhLXRodW1iLXRhY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDhkIn0uZmEtZXh0ZXJuYWwtbGluazpiZWZvcmV7Y29udGVudDoiXGYwOGUifS5mYS1zaWduLWluOmJlZm9yZXtjb250ZW50OiJcZjA5MCJ9LmZhLXRyb3BoeTpiZWZvcmV7Y29udGVudDoiXGYwOTEifS5mYS1naXRodWItc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjA5MiJ9LmZhLXVwbG9hZDpiZWZvcmV7Y29udGVudDoiXGYwOTMifS5mYS1sZW1vbi1vOmJlZm9yZXtjb250ZW50OiJcZjA5NCJ9LmZhLXBob25lOmJlZm9yZXtjb250ZW50OiJcZjA5NSJ9LmZhLXNxdWFyZS1vOmJlZm9yZXtjb250ZW50OiJcZjA5NiJ9LmZhLWJvb2ttYXJrLW86YmVmb3Jle2NvbnRlbnQ6IlxmMDk3In0uZmEtcGhvbmUtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjA5OCJ9LmZhLXR3aXR0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDk5In0uZmEtZmFjZWJvb2stZjpiZWZvcmUsLmZhLWZhY2Vib29rOmJlZm9yZXtjb250ZW50OiJcZjA5YSJ9LmZhLWdpdGh1YjpiZWZvcmV7Y29udGVudDoiXGYwOWIifS5mYS11bmxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDljIn0uZmEtY3JlZGl0LWNhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDlkIn0uZmEtZmVlZDpiZWZvcmUsLmZhLXJzczpiZWZvcmV7Y29udGVudDoiXGYwOWUifS5mYS1oZGQtbzpiZWZvcmV7Y29udGVudDoiXGYwYTAifS5mYS1idWxsaG9ybjpiZWZvcmV7Y29udGVudDoiXGYwYTEifS5mYS1iZWxsOmJlZm9yZXtjb250ZW50OiJcZjBmMyJ9LmZhLWNlcnRpZmljYXRlOmJlZm9yZXtjb250ZW50OiJcZjBhMyJ9LmZhLWhhbmQtby1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwYTQifS5mYS1oYW5kLW8tbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwYTUifS5mYS1oYW5kLW8tdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMGE2In0uZmEtaGFuZC1vLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMGE3In0uZmEtYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGE4In0uZmEtYXJyb3ctY2lyY2xlLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjBhOSJ9LmZhLWFycm93LWNpcmNsZS11cDpiZWZvcmV7Y29udGVudDoiXGYwYWEifS5mYS1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYwYWIifS5mYS1nbG9iZTpiZWZvcmV7Y29udGVudDoiXGYwYWMifS5mYS13cmVuY2g6YmVmb3Jle2NvbnRlbnQ6IlxmMGFkIn0uZmEtdGFza3M6YmVmb3Jle2NvbnRlbnQ6IlxmMGFlIn0uZmEtZmlsdGVyOmJlZm9yZXtjb250ZW50OiJcZjBiMCJ9LmZhLWJyaWVmY2FzZTpiZWZvcmV7Y29udGVudDoiXGYwYjEifS5mYS1hcnJvd3MtYWx0OmJlZm9yZXtjb250ZW50OiJcZjBiMiJ9LmZhLWdyb3VwOmJlZm9yZSwuZmEtdXNlcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMGMwIn0uZmEtY2hhaW46YmVmb3JlLC5mYS1saW5rOmJlZm9yZXtjb250ZW50OiJcZjBjMSJ9LmZhLWNsb3VkOmJlZm9yZXtjb250ZW50OiJcZjBjMiJ9LmZhLWZsYXNrOmJlZm9yZXtjb250ZW50OiJcZjBjMyJ9LmZhLWN1dDpiZWZvcmUsLmZhLXNjaXNzb3JzOmJlZm9yZXtjb250ZW50OiJcZjBjNCJ9LmZhLWNvcHk6YmVmb3JlLC5mYS1maWxlcy1vOmJlZm9yZXtjb250ZW50OiJcZjBjNSJ9LmZhLXBhcGVyY2xpcDpiZWZvcmV7Y29udGVudDoiXGYwYzYifS5mYS1zYXZlOmJlZm9yZSwuZmEtZmxvcHB5LW86YmVmb3Jle2NvbnRlbnQ6IlxmMGM3In0uZmEtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjBjOCJ9LmZhLW5hdmljb246YmVmb3JlLC5mYS1yZW9yZGVyOmJlZm9yZSwuZmEtYmFyczpiZWZvcmV7Y29udGVudDoiXGYwYzkifS5mYS1saXN0LXVsOmJlZm9yZXtjb250ZW50OiJcZjBjYSJ9LmZhLWxpc3Qtb2w6YmVmb3Jle2NvbnRlbnQ6IlxmMGNiIn0uZmEtc3RyaWtldGhyb3VnaDpiZWZvcmV7Y29udGVudDoiXGYwY2MifS5mYS11bmRlcmxpbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGNkIn0uZmEtdGFibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGNlIn0uZmEtbWFnaWM6YmVmb3Jle2NvbnRlbnQ6IlxmMGQwIn0uZmEtdHJ1Y2s6YmVmb3Jle2NvbnRlbnQ6IlxmMGQxIn0uZmEtcGludGVyZXN0OmJlZm9yZXtjb250ZW50OiJcZjBkMiJ9LmZhLXBpbnRlcmVzdC1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGQzIn0uZmEtZ29vZ2xlLXBsdXMtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjBkNCJ9LmZhLWdvb2dsZS1wbHVzOmJlZm9yZXtjb250ZW50OiJcZjBkNSJ9LmZhLW1vbmV5OmJlZm9yZXtjb250ZW50OiJcZjBkNiJ9LmZhLWNhcmV0LWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMGQ3In0uZmEtY2FyZXQtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMGQ4In0uZmEtY2FyZXQtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwZDkifS5mYS1jYXJldC1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwZGEifS5mYS1jb2x1bW5zOmJlZm9yZXtjb250ZW50OiJcZjBkYiJ9LmZhLXVuc29ydGVkOmJlZm9yZSwuZmEtc29ydDpiZWZvcmV7Y29udGVudDoiXGYwZGMifS5mYS1zb3J0LWRvd246YmVmb3JlLC5mYS1zb3J0LWRlc2M6YmVmb3Jle2NvbnRlbnQ6IlxmMGRkIn0uZmEtc29ydC11cDpiZWZvcmUsLmZhLXNvcnQtYXNjOmJlZm9yZXtjb250ZW50OiJcZjBkZSJ9LmZhLWVudmVsb3BlOmJlZm9yZXtjb250ZW50OiJcZjBlMCJ9LmZhLWxpbmtlZGluOmJlZm9yZXtjb250ZW50OiJcZjBlMSJ9LmZhLXJvdGF0ZS1sZWZ0OmJlZm9yZSwuZmEtdW5kbzpiZWZvcmV7Y29udGVudDoiXGYwZTIifS5mYS1sZWdhbDpiZWZvcmUsLmZhLWdhdmVsOmJlZm9yZXtjb250ZW50OiJcZjBlMyJ9LmZhLWRhc2hib2FyZDpiZWZvcmUsLmZhLXRhY2hvbWV0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMGU0In0uZmEtY29tbWVudC1vOmJlZm9yZXtjb250ZW50OiJcZjBlNSJ9LmZhLWNvbW1lbnRzLW86YmVmb3Jle2NvbnRlbnQ6IlxmMGU2In0uZmEtZmxhc2g6YmVmb3JlLC5mYS1ib2x0OmJlZm9yZXtjb250ZW50OiJcZjBlNyJ9LmZhLXNpdGVtYXA6YmVmb3Jle2NvbnRlbnQ6IlxmMGU4In0uZmEtdW1icmVsbGE6YmVmb3Jle2NvbnRlbnQ6IlxmMGU5In0uZmEtcGFzdGU6YmVmb3JlLC5mYS1jbGlwYm9hcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGVhIn0uZmEtbGlnaHRidWxiLW86YmVmb3Jle2NvbnRlbnQ6IlxmMGViIn0uZmEtZXhjaGFuZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMGVjIn0uZmEtY2xvdWQtZG93bmxvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGVkIn0uZmEtY2xvdWQtdXBsb2FkOmJlZm9yZXtjb250ZW50OiJcZjBlZSJ9LmZhLXVzZXItbWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGYwIn0uZmEtc3RldGhvc2NvcGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGYxIn0uZmEtc3VpdGNhc2U6YmVmb3Jle2NvbnRlbnQ6IlxmMGYyIn0uZmEtYmVsbC1vOmJlZm9yZXtjb250ZW50OiJcZjBhMiJ9LmZhLWNvZmZlZTpiZWZvcmV7Y29udGVudDoiXGYwZjQifS5mYS1jdXRsZXJ5OmJlZm9yZXtjb250ZW50OiJcZjBmNSJ9LmZhLWZpbGUtdGV4dC1vOmJlZm9yZXtjb250ZW50OiJcZjBmNiJ9LmZhLWJ1aWxkaW5nLW86YmVmb3Jle2NvbnRlbnQ6IlxmMGY3In0uZmEtaG9zcGl0YWwtbzpiZWZvcmV7Y29udGVudDoiXGYwZjgifS5mYS1hbWJ1bGFuY2U6YmVmb3Jle2NvbnRlbnQ6IlxmMGY5In0uZmEtbWVka2l0OmJlZm9yZXtjb250ZW50OiJcZjBmYSJ9LmZhLWZpZ2h0ZXItamV0OmJlZm9yZXtjb250ZW50OiJcZjBmYiJ9LmZhLWJlZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMGZjIn0uZmEtaC1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGZkIn0uZmEtcGx1cy1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGZlIn0uZmEtYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTAwIn0uZmEtYW5nbGUtZG91YmxlLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjEwMSJ9LmZhLWFuZ2xlLWRvdWJsZS11cDpiZWZvcmV7Y29udGVudDoiXGYxMDIifS5mYS1hbmdsZS1kb3VibGUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxMDMifS5mYS1hbmdsZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjEwNCJ9LmZhLWFuZ2xlLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjEwNSJ9LmZhLWFuZ2xlLXVwOmJlZm9yZXtjb250ZW50OiJcZjEwNiJ9LmZhLWFuZ2xlLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMTA3In0uZmEtZGVza3RvcDpiZWZvcmV7Y29udGVudDoiXGYxMDgifS5mYS1sYXB0b3A6YmVmb3Jle2NvbnRlbnQ6IlxmMTA5In0uZmEtdGFibGV0OmJlZm9yZXtjb250ZW50OiJcZjEwYSJ9LmZhLW1vYmlsZS1waG9uZTpiZWZvcmUsLmZhLW1vYmlsZTpiZWZvcmV7Y29udGVudDoiXGYxMGIifS5mYS1jaXJjbGUtbzpiZWZvcmV7Y29udGVudDoiXGYxMGMifS5mYS1xdW90ZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjEwZCJ9LmZhLXF1b3RlLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjEwZSJ9LmZhLXNwaW5uZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMTEwIn0uZmEtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjExMSJ9LmZhLW1haWwtcmVwbHk6YmVmb3JlLC5mYS1yZXBseTpiZWZvcmV7Y29udGVudDoiXGYxMTIifS5mYS1naXRodWItYWx0OmJlZm9yZXtjb250ZW50OiJcZjExMyJ9LmZhLWZvbGRlci1vOmJlZm9yZXtjb250ZW50OiJcZjExNCJ9LmZhLWZvbGRlci1vcGVuLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTE1In0uZmEtc21pbGUtbzpiZWZvcmV7Y29udGVudDoiXGYxMTgifS5mYS1mcm93bi1vOmJlZm9yZXtjb250ZW50OiJcZjExOSJ9LmZhLW1laC1vOmJlZm9yZXtjb250ZW50OiJcZjExYSJ9LmZhLWdhbWVwYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTFiIn0uZmEta2V5Ym9hcmQtbzpiZWZvcmV7Y29udGVudDoiXGYxMWMifS5mYS1mbGFnLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTFkIn0uZmEtZmxhZy1jaGVja2VyZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTFlIn0uZmEtdGVybWluYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMTIwIn0uZmEtY29kZTpiZWZvcmV7Y29udGVudDoiXGYxMjEifS5mYS1tYWlsLXJlcGx5LWFsbDpiZWZvcmUsLmZhLXJlcGx5LWFsbDpiZWZvcmV7Y29udGVudDoiXGYxMjIifS5mYS1zdGFyLWhhbGYtZW1wdHk6YmVmb3JlLC5mYS1zdGFyLWhhbGYtZnVsbDpiZWZvcmUsLmZhLXN0YXItaGFsZi1vOmJlZm9yZXtjb250ZW50OiJcZjEyMyJ9LmZhLWxvY2F0aW9uLWFycm93OmJlZm9yZXtjb250ZW50OiJcZjEyNCJ9LmZhLWNyb3A6YmVmb3Jle2NvbnRlbnQ6IlxmMTI1In0uZmEtY29kZS1mb3JrOmJlZm9yZXtjb250ZW50OiJcZjEyNiJ9LmZhLXVubGluazpiZWZvcmUsLmZhLWNoYWluLWJyb2tlbjpiZWZvcmV7Y29udGVudDoiXGYxMjcifS5mYS1xdWVzdGlvbjpiZWZvcmV7Y29udGVudDoiXGYxMjgifS5mYS1pbmZvOmJlZm9yZXtjb250ZW50OiJcZjEyOSJ9LmZhLWV4Y2xhbWF0aW9uOmJlZm9yZXtjb250ZW50OiJcZjEyYSJ9LmZhLXN1cGVyc2NyaXB0OmJlZm9yZXtjb250ZW50OiJcZjEyYiJ9LmZhLXN1YnNjcmlwdDpiZWZvcmV7Y29udGVudDoiXGYxMmMifS5mYS1lcmFzZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMTJkIn0uZmEtcHV6emxlLXBpZWNlOmJlZm9yZXtjb250ZW50OiJcZjEyZSJ9LmZhLW1pY3JvcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTMwIn0uZmEtbWljcm9waG9uZS1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGYxMzEifS5mYS1zaGllbGQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTMyIn0uZmEtY2FsZW5kYXItbzpiZWZvcmV7Y29udGVudDoiXGYxMzMifS5mYS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmV7Y29udGVudDoiXGYxMzQifS5mYS1yb2NrZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTM1In0uZmEtbWF4Y2RuOmJlZm9yZXtjb250ZW50OiJcZjEzNiJ9LmZhLWNoZXZyb24tY2lyY2xlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTM3In0uZmEtY2hldnJvbi1jaXJjbGUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTM4In0uZmEtY2hldnJvbi1jaXJjbGUtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTM5In0uZmEtY2hldnJvbi1jaXJjbGUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxM2EifS5mYS1odG1sNTpiZWZvcmV7Y29udGVudDoiXGYxM2IifS5mYS1jc3MzOmJlZm9yZXtjb250ZW50OiJcZjEzYyJ9LmZhLWFuY2hvcjpiZWZvcmV7Y29udGVudDoiXGYxM2QifS5mYS11bmxvY2stYWx0OmJlZm9yZXtjb250ZW50OiJcZjEzZSJ9LmZhLWJ1bGxzZXllOmJlZm9yZXtjb250ZW50OiJcZjE0MCJ9LmZhLWVsbGlwc2lzLWg6YmVmb3Jle2NvbnRlbnQ6IlxmMTQxIn0uZmEtZWxsaXBzaXMtdjpiZWZvcmV7Y29udGVudDoiXGYxNDIifS5mYS1yc3Mtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE0MyJ9LmZhLXBsYXktY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjE0NCJ9LmZhLXRpY2tldDpiZWZvcmV7Y29udGVudDoiXGYxNDUifS5mYS1taW51cy1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTQ2In0uZmEtbWludXMtc3F1YXJlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTQ3In0uZmEtbGV2ZWwtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTQ4In0uZmEtbGV2ZWwtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNDkifS5mYS1jaGVjay1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTRhIn0uZmEtcGVuY2lsLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxNGIifS5mYS1leHRlcm5hbC1saW5rLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxNGMifS5mYS1zaGFyZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTRkIn0uZmEtY29tcGFzczpiZWZvcmV7Y29udGVudDoiXGYxNGUifS5mYS10b2dnbGUtZG93bjpiZWZvcmUsLmZhLWNhcmV0LXNxdWFyZS1vLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMTUwIn0uZmEtdG9nZ2xlLXVwOmJlZm9yZSwuZmEtY2FyZXQtc3F1YXJlLW8tdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTUxIn0uZmEtdG9nZ2xlLXJpZ2h0OmJlZm9yZSwuZmEtY2FyZXQtc3F1YXJlLW8tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTUyIn0uZmEtZXVybzpiZWZvcmUsLmZhLWV1cjpiZWZvcmV7Y29udGVudDoiXGYxNTMifS5mYS1nYnA6YmVmb3Jle2NvbnRlbnQ6IlxmMTU0In0uZmEtZG9sbGFyOmJlZm9yZSwuZmEtdXNkOmJlZm9yZXtjb250ZW50OiJcZjE1NSJ9LmZhLXJ1cGVlOmJlZm9yZSwuZmEtaW5yOmJlZm9yZXtjb250ZW50OiJcZjE1NiJ9LmZhLWNueTpiZWZvcmUsLmZhLXJtYjpiZWZvcmUsLmZhLXllbjpiZWZvcmUsLmZhLWpweTpiZWZvcmV7Y29udGVudDoiXGYxNTcifS5mYS1ydWJsZTpiZWZvcmUsLmZhLXJvdWJsZTpiZWZvcmUsLmZhLXJ1YjpiZWZvcmV7Y29udGVudDoiXGYxNTgifS5mYS13b246YmVmb3JlLC5mYS1rcnc6YmVmb3Jle2NvbnRlbnQ6IlxmMTU5In0uZmEtYml0Y29pbjpiZWZvcmUsLmZhLWJ0YzpiZWZvcmV7Y29udGVudDoiXGYxNWEifS5mYS1maWxlOmJlZm9yZXtjb250ZW50OiJcZjE1YiJ9LmZhLWZpbGUtdGV4dDpiZWZvcmV7Y29udGVudDoiXGYxNWMifS5mYS1zb3J0LWFscGhhLWFzYzpiZWZvcmV7Y29udGVudDoiXGYxNWQifS5mYS1zb3J0LWFscGhhLWRlc2M6YmVmb3Jle2NvbnRlbnQ6IlxmMTVlIn0uZmEtc29ydC1hbW91bnQtYXNjOmJlZm9yZXtjb250ZW50OiJcZjE2MCJ9LmZhLXNvcnQtYW1vdW50LWRlc2M6YmVmb3Jle2NvbnRlbnQ6IlxmMTYxIn0uZmEtc29ydC1udW1lcmljLWFzYzpiZWZvcmV7Y29udGVudDoiXGYxNjIifS5mYS1zb3J0LW51bWVyaWMtZGVzYzpiZWZvcmV7Y29udGVudDoiXGYxNjMifS5mYS10aHVtYnMtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTY0In0uZmEtdGh1bWJzLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMTY1In0uZmEteW91dHViZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTY2In0uZmEteW91dHViZTpiZWZvcmV7Y29udGVudDoiXGYxNjcifS5mYS14aW5nOmJlZm9yZXtjb250ZW50OiJcZjE2OCJ9LmZhLXhpbmctc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE2OSJ9LmZhLXlvdXR1YmUtcGxheTpiZWZvcmV7Y29udGVudDoiXGYxNmEifS5mYS1kcm9wYm94OmJlZm9yZXtjb250ZW50OiJcZjE2YiJ9LmZhLXN0YWNrLW92ZXJmbG93OmJlZm9yZXtjb250ZW50OiJcZjE2YyJ9LmZhLWluc3RhZ3JhbTpiZWZvcmV7Y29udGVudDoiXGYxNmQifS5mYS1mbGlja3I6YmVmb3Jle2NvbnRlbnQ6IlxmMTZlIn0uZmEtYWRuOmJlZm9yZXtjb250ZW50OiJcZjE3MCJ9LmZhLWJpdGJ1Y2tldDpiZWZvcmV7Y29udGVudDoiXGYxNzEifS5mYS1iaXRidWNrZXQtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE3MiJ9LmZhLXR1bWJscjpiZWZvcmV7Y29udGVudDoiXGYxNzMifS5mYS10dW1ibHItc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE3NCJ9LmZhLWxvbmctYXJyb3ctZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNzUifS5mYS1sb25nLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZjE3NiJ9LmZhLWxvbmctYXJyb3ctbGVmdDpiZWZvcmV7Y29udGVudDoiXGYxNzcifS5mYS1sb25nLWFycm93LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjE3OCJ9LmZhLWFwcGxlOmJlZm9yZXtjb250ZW50OiJcZjE3OSJ9LmZhLXdpbmRvd3M6YmVmb3Jle2NvbnRlbnQ6IlxmMTdhIn0uZmEtYW5kcm9pZDpiZWZvcmV7Y29udGVudDoiXGYxN2IifS5mYS1saW51eDpiZWZvcmV7Y29udGVudDoiXGYxN2MifS5mYS1kcmliYmJsZTpiZWZvcmV7Y29udGVudDoiXGYxN2QifS5mYS1za3lwZTpiZWZvcmV7Y29udGVudDoiXGYxN2UifS5mYS1mb3Vyc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE4MCJ9LmZhLXRyZWxsbzpiZWZvcmV7Y29udGVudDoiXGYxODEifS5mYS1mZW1hbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTgyIn0uZmEtbWFsZTpiZWZvcmV7Y29udGVudDoiXGYxODMifS5mYS1naXR0aXA6YmVmb3JlLC5mYS1ncmF0aXBheTpiZWZvcmV7Y29udGVudDoiXGYxODQifS5mYS1zdW4tbzpiZWZvcmV7Y29udGVudDoiXGYxODUifS5mYS1tb29uLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTg2In0uZmEtYXJjaGl2ZTpiZWZvcmV7Y29udGVudDoiXGYxODcifS5mYS1idWc6YmVmb3Jle2NvbnRlbnQ6IlxmMTg4In0uZmEtdms6YmVmb3Jle2NvbnRlbnQ6IlxmMTg5In0uZmEtd2VpYm86YmVmb3Jle2NvbnRlbnQ6IlxmMThhIn0uZmEtcmVucmVuOmJlZm9yZXtjb250ZW50OiJcZjE4YiJ9LmZhLXBhZ2VsaW5lczpiZWZvcmV7Y29udGVudDoiXGYxOGMifS5mYS1zdGFjay1leGNoYW5nZTpiZWZvcmV7Y29udGVudDoiXGYxOGQifS5mYS1hcnJvdy1jaXJjbGUtby1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYxOGUifS5mYS1hcnJvdy1jaXJjbGUtby1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjE5MCJ9LmZhLXRvZ2dsZS1sZWZ0OmJlZm9yZSwuZmEtY2FyZXQtc3F1YXJlLW8tbGVmdDpiZWZvcmV7Y29udGVudDoiXGYxOTEifS5mYS1kb3QtY2lyY2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTkyIn0uZmEtd2hlZWxjaGFpcjpiZWZvcmV7Y29udGVudDoiXGYxOTMifS5mYS12aW1lby1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTk0In0uZmEtdHVya2lzaC1saXJhOmJlZm9yZSwuZmEtdHJ5OmJlZm9yZXtjb250ZW50OiJcZjE5NSJ9LmZhLXBsdXMtc3F1YXJlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTk2In0uZmEtc3BhY2Utc2h1dHRsZTpiZWZvcmV7Y29udGVudDoiXGYxOTcifS5mYS1zbGFjazpiZWZvcmV7Y29udGVudDoiXGYxOTgifS5mYS1lbnZlbG9wZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTk5In0uZmEtd29yZHByZXNzOmJlZm9yZXtjb250ZW50OiJcZjE5YSJ9LmZhLW9wZW5pZDpiZWZvcmV7Y29udGVudDoiXGYxOWIifS5mYS1pbnN0aXR1dGlvbjpiZWZvcmUsLmZhLWJhbms6YmVmb3JlLC5mYS11bml2ZXJzaXR5OmJlZm9yZXtjb250ZW50OiJcZjE5YyJ9LmZhLW1vcnRhci1ib2FyZDpiZWZvcmUsLmZhLWdyYWR1YXRpb24tY2FwOmJlZm9yZXtjb250ZW50OiJcZjE5ZCJ9LmZhLXlhaG9vOmJlZm9yZXtjb250ZW50OiJcZjE5ZSJ9LmZhLWdvb2dsZTpiZWZvcmV7Y29udGVudDoiXGYxYTAifS5mYS1yZWRkaXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWExIn0uZmEtcmVkZGl0LXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxYTIifS5mYS1zdHVtYmxldXBvbi1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMWEzIn0uZmEtc3R1bWJsZXVwb246YmVmb3Jle2NvbnRlbnQ6IlxmMWE0In0uZmEtZGVsaWNpb3VzOmJlZm9yZXtjb250ZW50OiJcZjFhNSJ9LmZhLWRpZ2c6YmVmb3Jle2NvbnRlbnQ6IlxmMWE2In0uZmEtcGllZC1waXBlcjpiZWZvcmV7Y29udGVudDoiXGYxYTcifS5mYS1waWVkLXBpcGVyLWFsdDpiZWZvcmV7Y29udGVudDoiXGYxYTgifS5mYS1kcnVwYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMWE5In0uZmEtam9vbWxhOmJlZm9yZXtjb250ZW50OiJcZjFhYSJ9LmZhLWxhbmd1YWdlOmJlZm9yZXtjb250ZW50OiJcZjFhYiJ9LmZhLWZheDpiZWZvcmV7Y29udGVudDoiXGYxYWMifS5mYS1idWlsZGluZzpiZWZvcmV7Y29udGVudDoiXGYxYWQifS5mYS1jaGlsZDpiZWZvcmV7Y29udGVudDoiXGYxYWUifS5mYS1wYXc6YmVmb3Jle2NvbnRlbnQ6IlxmMWIwIn0uZmEtc3Bvb246YmVmb3Jle2NvbnRlbnQ6IlxmMWIxIn0uZmEtY3ViZTpiZWZvcmV7Y29udGVudDoiXGYxYjIifS5mYS1jdWJlczpiZWZvcmV7Y29udGVudDoiXGYxYjMifS5mYS1iZWhhbmNlOmJlZm9yZXtjb250ZW50OiJcZjFiNCJ9LmZhLWJlaGFuY2Utc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjFiNSJ9LmZhLXN0ZWFtOmJlZm9yZXtjb250ZW50OiJcZjFiNiJ9LmZhLXN0ZWFtLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxYjcifS5mYS1yZWN5Y2xlOmJlZm9yZXtjb250ZW50OiJcZjFiOCJ9LmZhLWF1dG9tb2JpbGU6YmVmb3JlLC5mYS1jYXI6YmVmb3Jle2NvbnRlbnQ6IlxmMWI5In0uZmEtY2FiOmJlZm9yZSwuZmEtdGF4aTpiZWZvcmV7Y29udGVudDoiXGYxYmEifS5mYS10cmVlOmJlZm9yZXtjb250ZW50OiJcZjFiYiJ9LmZhLXNwb3RpZnk6YmVmb3Jle2NvbnRlbnQ6IlxmMWJjIn0uZmEtZGV2aWFudGFydDpiZWZvcmV7Y29udGVudDoiXGYxYmQifS5mYS1zb3VuZGNsb3VkOmJlZm9yZXtjb250ZW50OiJcZjFiZSJ9LmZhLWRhdGFiYXNlOmJlZm9yZXtjb250ZW50OiJcZjFjMCJ9LmZhLWZpbGUtcGRmLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWMxIn0uZmEtZmlsZS13b3JkLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWMyIn0uZmEtZmlsZS1leGNlbC1vOmJlZm9yZXtjb250ZW50OiJcZjFjMyJ9LmZhLWZpbGUtcG93ZXJwb2ludC1vOmJlZm9yZXtjb250ZW50OiJcZjFjNCJ9LmZhLWZpbGUtcGhvdG8tbzpiZWZvcmUsLmZhLWZpbGUtcGljdHVyZS1vOmJlZm9yZSwuZmEtZmlsZS1pbWFnZS1vOmJlZm9yZXtjb250ZW50OiJcZjFjNSJ9LmZhLWZpbGUtemlwLW86YmVmb3JlLC5mYS1maWxlLWFyY2hpdmUtbzpiZWZvcmV7Y29udGVudDoiXGYxYzYifS5mYS1maWxlLXNvdW5kLW86YmVmb3JlLC5mYS1maWxlLWF1ZGlvLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWM3In0uZmEtZmlsZS1tb3ZpZS1vOmJlZm9yZSwuZmEtZmlsZS12aWRlby1vOmJlZm9yZXtjb250ZW50OiJcZjFjOCJ9LmZhLWZpbGUtY29kZS1vOmJlZm9yZXtjb250ZW50OiJcZjFjOSJ9LmZhLXZpbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWNhIn0uZmEtY29kZXBlbjpiZWZvcmV7Y29udGVudDoiXGYxY2IifS5mYS1qc2ZpZGRsZTpiZWZvcmV7Y29udGVudDoiXGYxY2MifS5mYS1saWZlLWJvdXk6YmVmb3JlLC5mYS1saWZlLWJ1b3k6YmVmb3JlLC5mYS1saWZlLXNhdmVyOmJlZm9yZSwuZmEtc3VwcG9ydDpiZWZvcmUsLmZhLWxpZmUtcmluZzpiZWZvcmV7Y29udGVudDoiXGYxY2QifS5mYS1jaXJjbGUtby1ub3RjaDpiZWZvcmV7Y29udGVudDoiXGYxY2UifS5mYS1yYTpiZWZvcmUsLmZhLXJlYmVsOmJlZm9yZXtjb250ZW50OiJcZjFkMCJ9LmZhLWdlOmJlZm9yZSwuZmEtZW1waXJlOmJlZm9yZXtjb250ZW50OiJcZjFkMSJ9LmZhLWdpdC1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWQyIn0uZmEtZ2l0OmJlZm9yZXtjb250ZW50OiJcZjFkMyJ9LmZhLXktY29tYmluYXRvci1zcXVhcmU6YmVmb3JlLC5mYS15Yy1zcXVhcmU6YmVmb3JlLC5mYS1oYWNrZXItbmV3czpiZWZvcmV7Y29udGVudDoiXGYxZDQifS5mYS10ZW5jZW50LXdlaWJvOmJlZm9yZXtjb250ZW50OiJcZjFkNSJ9LmZhLXFxOmJlZm9yZXtjb250ZW50OiJcZjFkNiJ9LmZhLXdlY2hhdDpiZWZvcmUsLmZhLXdlaXhpbjpiZWZvcmV7Y29udGVudDoiXGYxZDcifS5mYS1zZW5kOmJlZm9yZSwuZmEtcGFwZXItcGxhbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWQ4In0uZmEtc2VuZC1vOmJlZm9yZSwuZmEtcGFwZXItcGxhbmUtbzpiZWZvcmV7Y29udGVudDoiXGYxZDkifS5mYS1oaXN0b3J5OmJlZm9yZXtjb250ZW50OiJcZjFkYSJ9LmZhLWNpcmNsZS10aGluOmJlZm9yZXtjb250ZW50OiJcZjFkYiJ9LmZhLWhlYWRlcjpiZWZvcmV7Y29udGVudDoiXGYxZGMifS5mYS1wYXJhZ3JhcGg6YmVmb3Jle2NvbnRlbnQ6IlxmMWRkIn0uZmEtc2xpZGVyczpiZWZvcmV7Y29udGVudDoiXGYxZGUifS5mYS1zaGFyZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWUwIn0uZmEtc2hhcmUtYWx0LXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxZTEifS5mYS1ib21iOmJlZm9yZXtjb250ZW50OiJcZjFlMiJ9LmZhLXNvY2Nlci1iYWxsLW86YmVmb3JlLC5mYS1mdXRib2wtbzpiZWZvcmV7Y29udGVudDoiXGYxZTMifS5mYS10dHk6YmVmb3Jle2NvbnRlbnQ6IlxmMWU0In0uZmEtYmlub2N1bGFyczpiZWZvcmV7Y29udGVudDoiXGYxZTUifS5mYS1wbHVnOmJlZm9yZXtjb250ZW50OiJcZjFlNiJ9LmZhLXNsaWRlc2hhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWU3In0uZmEtdHdpdGNoOmJlZm9yZXtjb250ZW50OiJcZjFlOCJ9LmZhLXllbHA6YmVmb3Jle2NvbnRlbnQ6IlxmMWU5In0uZmEtbmV3c3BhcGVyLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWVhIn0uZmEtd2lmaTpiZWZvcmV7Y29udGVudDoiXGYxZWIifS5mYS1jYWxjdWxhdG9yOmJlZm9yZXtjb250ZW50OiJcZjFlYyJ9LmZhLXBheXBhbDpiZWZvcmV7Y29udGVudDoiXGYxZWQifS5mYS1nb29nbGUtd2FsbGV0OmJlZm9yZXtjb250ZW50OiJcZjFlZSJ9LmZhLWNjLXZpc2E6YmVmb3Jle2NvbnRlbnQ6IlxmMWYwIn0uZmEtY2MtbWFzdGVyY2FyZDpiZWZvcmV7Y29udGVudDoiXGYxZjEifS5mYS1jYy1kaXNjb3ZlcjpiZWZvcmV7Y29udGVudDoiXGYxZjIifS5mYS1jYy1hbWV4OmJlZm9yZXtjb250ZW50OiJcZjFmMyJ9LmZhLWNjLXBheXBhbDpiZWZvcmV7Y29udGVudDoiXGYxZjQifS5mYS1jYy1zdHJpcGU6YmVmb3Jle2NvbnRlbnQ6IlxmMWY1In0uZmEtYmVsbC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGYxZjYifS5mYS1iZWxsLXNsYXNoLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWY3In0uZmEtdHJhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmMWY4In0uZmEtY29weXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjFmOSJ9LmZhLWF0OmJlZm9yZXtjb250ZW50OiJcZjFmYSJ9LmZhLWV5ZWRyb3BwZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMWZiIn0uZmEtcGFpbnQtYnJ1c2g6YmVmb3Jle2NvbnRlbnQ6IlxmMWZjIn0uZmEtYmlydGhkYXktY2FrZTpiZWZvcmV7Y29udGVudDoiXGYxZmQifS5mYS1hcmVhLWNoYXJ0OmJlZm9yZXtjb250ZW50OiJcZjFmZSJ9LmZhLXBpZS1jaGFydDpiZWZvcmV7Y29udGVudDoiXGYyMDAifS5mYS1saW5lLWNoYXJ0OmJlZm9yZXtjb250ZW50OiJcZjIwMSJ9LmZhLWxhc3RmbTpiZWZvcmV7Y29udGVudDoiXGYyMDIifS5mYS1sYXN0Zm0tc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjIwMyJ9LmZhLXRvZ2dsZS1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxmMjA0In0uZmEtdG9nZ2xlLW9uOmJlZm9yZXtjb250ZW50OiJcZjIwNSJ9LmZhLWJpY3ljbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjA2In0uZmEtYnVzOmJlZm9yZXtjb250ZW50OiJcZjIwNyJ9LmZhLWlveGhvc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMjA4In0uZmEtYW5nZWxsaXN0OmJlZm9yZXtjb250ZW50OiJcZjIwOSJ9LmZhLWNjOmJlZm9yZXtjb250ZW50OiJcZjIwYSJ9LmZhLXNoZWtlbDpiZWZvcmUsLmZhLXNoZXFlbDpiZWZvcmUsLmZhLWlsczpiZWZvcmV7Y29udGVudDoiXGYyMGIifS5mYS1tZWFucGF0aDpiZWZvcmV7Y29udGVudDoiXGYyMGMifS5mYS1idXlzZWxsYWRzOmJlZm9yZXtjb250ZW50OiJcZjIwZCJ9LmZhLWNvbm5lY3RkZXZlbG9wOmJlZm9yZXtjb250ZW50OiJcZjIwZSJ9LmZhLWRhc2hjdWJlOmJlZm9yZXtjb250ZW50OiJcZjIxMCJ9LmZhLWZvcnVtYmVlOmJlZm9yZXtjb250ZW50OiJcZjIxMSJ9LmZhLWxlYW5wdWI6YmVmb3Jle2NvbnRlbnQ6IlxmMjEyIn0uZmEtc2VsbHN5OmJlZm9yZXtjb250ZW50OiJcZjIxMyJ9LmZhLXNoaXJ0c2luYnVsazpiZWZvcmV7Y29udGVudDoiXGYyMTQifS5mYS1zaW1wbHlidWlsdDpiZWZvcmV7Y29udGVudDoiXGYyMTUifS5mYS1za3lhdGxhczpiZWZvcmV7Y29udGVudDoiXGYyMTYifS5mYS1jYXJ0LXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjE3In0uZmEtY2FydC1hcnJvdy1kb3duOmJlZm9yZXtjb250ZW50OiJcZjIxOCJ9LmZhLWRpYW1vbmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjE5In0uZmEtc2hpcDpiZWZvcmV7Y29udGVudDoiXGYyMWEifS5mYS11c2VyLXNlY3JldDpiZWZvcmV7Y29udGVudDoiXGYyMWIifS5mYS1tb3RvcmN5Y2xlOmJlZm9yZXtjb250ZW50OiJcZjIxYyJ9LmZhLXN0cmVldC12aWV3OmJlZm9yZXtjb250ZW50OiJcZjIxZCJ9LmZhLWhlYXJ0YmVhdDpiZWZvcmV7Y29udGVudDoiXGYyMWUifS5mYS12ZW51czpiZWZvcmV7Y29udGVudDoiXGYyMjEifS5mYS1tYXJzOmJlZm9yZXtjb250ZW50OiJcZjIyMiJ9LmZhLW1lcmN1cnk6YmVmb3Jle2NvbnRlbnQ6IlxmMjIzIn0uZmEtaW50ZXJzZXg6YmVmb3JlLC5mYS10cmFuc2dlbmRlcjpiZWZvcmV7Y29udGVudDoiXGYyMjQifS5mYS10cmFuc2dlbmRlci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjI1In0uZmEtdmVudXMtZG91YmxlOmJlZm9yZXtjb250ZW50OiJcZjIyNiJ9LmZhLW1hcnMtZG91YmxlOmJlZm9yZXtjb250ZW50OiJcZjIyNyJ9LmZhLXZlbnVzLW1hcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjI4In0uZmEtbWFycy1zdHJva2U6YmVmb3Jle2NvbnRlbnQ6IlxmMjI5In0uZmEtbWFycy1zdHJva2UtdjpiZWZvcmV7Y29udGVudDoiXGYyMmEifS5mYS1tYXJzLXN0cm9rZS1oOmJlZm9yZXtjb250ZW50OiJcZjIyYiJ9LmZhLW5ldXRlcjpiZWZvcmV7Y29udGVudDoiXGYyMmMifS5mYS1nZW5kZXJsZXNzOmJlZm9yZXtjb250ZW50OiJcZjIyZCJ9LmZhLWZhY2Vib29rLW9mZmljaWFsOmJlZm9yZXtjb250ZW50OiJcZjIzMCJ9LmZhLXBpbnRlcmVzdC1wOmJlZm9yZXtjb250ZW50OiJcZjIzMSJ9LmZhLXdoYXRzYXBwOmJlZm9yZXtjb250ZW50OiJcZjIzMiJ9LmZhLXNlcnZlcjpiZWZvcmV7Y29udGVudDoiXGYyMzMifS5mYS11c2VyLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjM0In0uZmEtdXNlci10aW1lczpiZWZvcmV7Y29udGVudDoiXGYyMzUifS5mYS1ob3RlbDpiZWZvcmUsLmZhLWJlZDpiZWZvcmV7Y29udGVudDoiXGYyMzYifS5mYS12aWFjb2luOmJlZm9yZXtjb250ZW50OiJcZjIzNyJ9LmZhLXRyYWluOmJlZm9yZXtjb250ZW50OiJcZjIzOCJ9LmZhLXN1YndheTpiZWZvcmV7Y29udGVudDoiXGYyMzkifS5mYS1tZWRpdW06YmVmb3Jle2NvbnRlbnQ6IlxmMjNhIn0uZmEteWM6YmVmb3JlLC5mYS15LWNvbWJpbmF0b3I6YmVmb3Jle2NvbnRlbnQ6IlxmMjNiIn0uZmEtb3B0aW4tbW9uc3RlcjpiZWZvcmV7Y29udGVudDoiXGYyM2MifS5mYS1vcGVuY2FydDpiZWZvcmV7Y29udGVudDoiXGYyM2QifS5mYS1leHBlZGl0ZWRzc2w6YmVmb3Jle2NvbnRlbnQ6IlxmMjNlIn0uZmEtYmF0dGVyeS00OmJlZm9yZSwuZmEtYmF0dGVyeS1mdWxsOmJlZm9yZXtjb250ZW50OiJcZjI0MCJ9LmZhLWJhdHRlcnktMzpiZWZvcmUsLmZhLWJhdHRlcnktdGhyZWUtcXVhcnRlcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjQxIn0uZmEtYmF0dGVyeS0yOmJlZm9yZSwuZmEtYmF0dGVyeS1oYWxmOmJlZm9yZXtjb250ZW50OiJcZjI0MiJ9LmZhLWJhdHRlcnktMTpiZWZvcmUsLmZhLWJhdHRlcnktcXVhcnRlcjpiZWZvcmV7Y29udGVudDoiXGYyNDMifS5mYS1iYXR0ZXJ5LTA6YmVmb3JlLC5mYS1iYXR0ZXJ5LWVtcHR5OmJlZm9yZXtjb250ZW50OiJcZjI0NCJ9LmZhLW1vdXNlLXBvaW50ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMjQ1In0uZmEtaS1jdXJzb3I6YmVmb3Jle2NvbnRlbnQ6IlxmMjQ2In0uZmEtb2JqZWN0LWdyb3VwOmJlZm9yZXtjb250ZW50OiJcZjI0NyJ9LmZhLW9iamVjdC11bmdyb3VwOmJlZm9yZXtjb250ZW50OiJcZjI0OCJ9LmZhLXN0aWNreS1ub3RlOmJlZm9yZXtjb250ZW50OiJcZjI0OSJ9LmZhLXN0aWNreS1ub3RlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjRhIn0uZmEtY2MtamNiOmJlZm9yZXtjb250ZW50OiJcZjI0YiJ9LmZhLWNjLWRpbmVycy1jbHViOmJlZm9yZXtjb250ZW50OiJcZjI0YyJ9LmZhLWNsb25lOmJlZm9yZXtjb250ZW50OiJcZjI0ZCJ9LmZhLWJhbGFuY2Utc2NhbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjRlIn0uZmEtaG91cmdsYXNzLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjUwIn0uZmEtaG91cmdsYXNzLTE6YmVmb3JlLC5mYS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjUxIn0uZmEtaG91cmdsYXNzLTI6YmVmb3JlLC5mYS1ob3VyZ2xhc3MtaGFsZjpiZWZvcmV7Y29udGVudDoiXGYyNTIifS5mYS1ob3VyZ2xhc3MtMzpiZWZvcmUsLmZhLWhvdXJnbGFzcy1lbmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjUzIn0uZmEtaG91cmdsYXNzOmJlZm9yZXtjb250ZW50OiJcZjI1NCJ9LmZhLWhhbmQtZ3JhYi1vOmJlZm9yZSwuZmEtaGFuZC1yb2NrLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjU1In0uZmEtaGFuZC1zdG9wLW86YmVmb3JlLC5mYS1oYW5kLXBhcGVyLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjU2In0uZmEtaGFuZC1zY2lzc29ycy1vOmJlZm9yZXtjb250ZW50OiJcZjI1NyJ9LmZhLWhhbmQtbGl6YXJkLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjU4In0uZmEtaGFuZC1zcG9jay1vOmJlZm9yZXtjb250ZW50OiJcZjI1OSJ9LmZhLWhhbmQtcG9pbnRlci1vOmJlZm9yZXtjb250ZW50OiJcZjI1YSJ9LmZhLWhhbmQtcGVhY2UtbzpiZWZvcmV7Y29udGVudDoiXGYyNWIifS5mYS10cmFkZW1hcms6YmVmb3Jle2NvbnRlbnQ6IlxmMjVjIn0uZmEtcmVnaXN0ZXJlZDpiZWZvcmV7Y29udGVudDoiXGYyNWQifS5mYS1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZXtjb250ZW50OiJcZjI1ZSJ9LmZhLWdnOmJlZm9yZXtjb250ZW50OiJcZjI2MCJ9LmZhLWdnLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYyNjEifS5mYS10cmlwYWR2aXNvcjpiZWZvcmV7Y29udGVudDoiXGYyNjIifS5mYS1vZG5va2xhc3NuaWtpOmJlZm9yZXtjb250ZW50OiJcZjI2MyJ9LmZhLW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjI2NCJ9LmZhLWdldC1wb2NrZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjY1In0uZmEtd2lraXBlZGlhLXc6YmVmb3Jle2NvbnRlbnQ6IlxmMjY2In0uZmEtc2FmYXJpOmJlZm9yZXtjb250ZW50OiJcZjI2NyJ9LmZhLWNocm9tZTpiZWZvcmV7Y29udGVudDoiXGYyNjgifS5mYS1maXJlZm94OmJlZm9yZXtjb250ZW50OiJcZjI2OSJ9LmZhLW9wZXJhOmJlZm9yZXtjb250ZW50OiJcZjI2YSJ9LmZhLWludGVybmV0LWV4cGxvcmVyOmJlZm9yZXtjb250ZW50OiJcZjI2YiJ9LmZhLXR2OmJlZm9yZSwuZmEtdGVsZXZpc2lvbjpiZWZvcmV7Y29udGVudDoiXGYyNmMifS5mYS1jb250YW86YmVmb3Jle2NvbnRlbnQ6IlxmMjZkIn0uZmEtNTAwcHg6YmVmb3Jle2NvbnRlbnQ6IlxmMjZlIn0uZmEtYW1hem9uOmJlZm9yZXtjb250ZW50OiJcZjI3MCJ9LmZhLWNhbGVuZGFyLXBsdXMtbzpiZWZvcmV7Y29udGVudDoiXGYyNzEifS5mYS1jYWxlbmRhci1taW51cy1vOmJlZm9yZXtjb250ZW50OiJcZjI3MiJ9LmZhLWNhbGVuZGFyLXRpbWVzLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjczIn0uZmEtY2FsZW5kYXItY2hlY2stbzpiZWZvcmV7Y29udGVudDoiXGYyNzQifS5mYS1pbmR1c3RyeTpiZWZvcmV7Y29udGVudDoiXGYyNzUifS5mYS1tYXAtcGluOmJlZm9yZXtjb250ZW50OiJcZjI3NiJ9LmZhLW1hcC1zaWduczpiZWZvcmV7Y29udGVudDoiXGYyNzcifS5mYS1tYXAtbzpiZWZvcmV7Y29udGVudDoiXGYyNzgifS5mYS1tYXA6YmVmb3Jle2NvbnRlbnQ6IlxmMjc5In0uZmEtY29tbWVudGluZzpiZWZvcmV7Y29udGVudDoiXGYyN2EifS5mYS1jb21tZW50aW5nLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjdiIn0uZmEtaG91eno6YmVmb3Jle2NvbnRlbnQ6IlxmMjdjIn0uZmEtdmltZW86YmVmb3Jle2NvbnRlbnQ6IlxmMjdkIn0uZmEtYmxhY2stdGllOmJlZm9yZXtjb250ZW50OiJcZjI3ZSJ9LmZhLWZvbnRpY29uczpiZWZvcmV7Y29udGVudDoiXGYyODAifS5mYS1yZWRkaXQtYWxpZW46YmVmb3Jle2NvbnRlbnQ6IlxmMjgxIn0uZmEtZWRnZTpiZWZvcmV7Y29udGVudDoiXGYyODIifS5mYS1jcmVkaXQtY2FyZC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjgzIn0uZmEtY29kaWVwaWU6YmVmb3Jle2NvbnRlbnQ6IlxmMjg0In0uZmEtbW9keDpiZWZvcmV7Y29udGVudDoiXGYyODUifS5mYS1mb3J0LWF3ZXNvbWU6YmVmb3Jle2NvbnRlbnQ6IlxmMjg2In0uZmEtdXNiOmJlZm9yZXtjb250ZW50OiJcZjI4NyJ9LmZhLXByb2R1Y3QtaHVudDpiZWZvcmV7Y29udGVudDoiXGYyODgifS5mYS1taXhjbG91ZDpiZWZvcmV7Y29udGVudDoiXGYyODkifS5mYS1zY3JpYmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjhhIn0uZmEtcGF1c2UtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjI4YiJ9LmZhLXBhdXNlLWNpcmNsZS1vOmJlZm9yZXtjb250ZW50OiJcZjI4YyJ9LmZhLXN0b3AtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjI4ZCJ9LmZhLXN0b3AtY2lyY2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjhlIn0uZmEtc2hvcHBpbmctYmFnOmJlZm9yZXtjb250ZW50OiJcZjI5MCJ9LmZhLXNob3BwaW5nLWJhc2tldDpiZWZvcmV7Y29udGVudDoiXGYyOTEifS5mYS1oYXNodGFnOmJlZm9yZXtjb250ZW50OiJcZjI5MiJ9LmZhLWJsdWV0b290aDpiZWZvcmV7Y29udGVudDoiXGYyOTMifS5mYS1ibHVldG9vdGgtYjpiZWZvcmV7Y29udGVudDoiXGYyOTQifS5mYS1wZXJjZW50OmJlZm9yZXtjb250ZW50OiJcZjI5NSJ9Cg=="}},"time_used":2133,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2133,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.layeranimation.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.299Z","timestamp":1785143908299,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/js/extensions/revolution.extension.layeranimation.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:44 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"c400-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 12842\r\nKeep-Alive: timeout=5, max=97\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":50176,"size_decoded":13211,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (32005), with CRLF line terminators","md5":"2984cd848201aee5b321e9bf7fc6f514","sha1":"2b4d94877ab5a3befdb2510478d444317aaf7453","sha256":"7a7499032e51e8bcb6d0e57b5dead5349bd0abd519ee79e1538cc64f9d9030cf","sha512":"d79082e58dacd24ddfe3602b8cafa8c5f73a334eb5c368518cbbbddc96e7bd63ab630fc70cbb1bdf4c6f4c61f7526cb7c810b9300d13100fbb5d2d6aa21809a9","ssdeep":"384:SjzdxpS3/2LdfPCNcpl56aPkSFLj26YItsq4dtXPLAjnzG3Ek+ECld6EgOhAOTIA:W5pl/FrJtsq4dtMjzG3IfZIuUtg","tlshash":"8c33b8c6f9102ce581ab8145d1be44693220bf79b103c5b1fd9ad59a1a48f8221fbf7f","first_seen":"2023-03-07T01:06:58Z","last_seen":"2026-08-09T08:42:12.840536Z","times_seen":627,"resource_available":true,"data":"LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICogUkVWT0xVVElPTiA1LjMgRVhURU5TSU9OIC0gTEFZRVIgQU5JTUFUSU9ODQogKiBAdmVyc2lvbjogMy41LjEgKDA5LjEyLjIwMTYpDQogKiBAcmVxdWlyZXMganF1ZXJ5LnRoZW1lcHVuY2gucmV2b2x1dGlvbi5qcw0KICogQGF1dGhvciBUaGVtZVB1bmNoDQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQohZnVuY3Rpb24oYSl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHAoYSxiLGMsZCxlLGYsZyl7dmFyIGg9YS5maW5kKGIpO2guY3NzKCJib3JkZXJXaWR0aCIsZisicHgiKSxoLmNzcyhjLDAtZisicHgiKSxoLmNzcyhkLCIwcHggc29saWQgdHJhbnNwYXJlbnQiKSxoLmNzcyhlLGcpfXZhciBiPWpRdWVyeS5mbi5yZXZvbHV0aW9uLGQ9KGIuaXNfbW9iaWxlKCkse2FsaWFzOiJMYXllckFuaW1hdGlvbiBNaW4gSlMiLG5hbWU6InJldm9sdXRpb24uZXh0ZW5zaW9ucy5sYXllcmFuaW1hdGlvbi5taW4uanMiLG1pbl9jb3JlOiI1LjMuMSIsdmVyc2lvbjoiMy41LjEifSk7alF1ZXJ5LmV4dGVuZCghMCxiLHt1cGRhdGVNYXJrdXA6ZnVuY3Rpb24oYSxiKXt2YXIgYz1qUXVlcnkoYSkuZGF0YSgpO2lmKHZvaWQgMCE9PWMuc3RhcnQmJiFjLmZyYW1lc19hZGRlZCYmdm9pZCAwPT09Yy5mcmFtZXMpe3ZhciBkPW5ldyBBcnJheSxlPW0oZigpLGMudHJhbnNmb3JtX2luLHZvaWQgMCwhMSksZz1tKGYoKSxjLnRyYW5zZm9ybV9vdXQsdm9pZCAwLCExKSxoPW0oZigpLGMudHJhbnNmb3JtX2hvdmVyLHZvaWQgMCwhMSk7alF1ZXJ5LmlzTnVtZXJpYyhjLmVuZCkmJmpRdWVyeS5pc051bWVyaWMoYy5zdGFydCkmJmpRdWVyeS5pc051bWVyaWMoZS5zcGVlZCkmJihjLmVuZD1wYXJzZUludChjLmVuZCwwKS0ocGFyc2VJbnQoYy5zdGFydCwwKStwYXJzZUZsb2F0KGUuc3BlZWQsMCkpKSxkLnB1c2goe2ZyYW1lOiIwIixkZWxheTpjLnN0YXJ0LGZyb206Yy50cmFuc2Zvcm1faW4sdG86Yy50cmFuc2Zvcm1faWRsZSxzcGxpdDpjLnNwbGl0aW4sc3BlZWQ6ZS5zcGVlZCxlYXNlOmUuYW5pbS5lYXNlLG1hc2s6Yy5tYXNrX2luLHNwbGl0ZGVsYXk6Yy5lbGVtZW50ZGVsYXl9KSxkLnB1c2goe2ZyYW1lOiI1IixkZWxheTpjLmVuZCx0bzpjLnRyYW5zZm9ybV9vdXQsc3BsaXQ6Yy5zcGxpdG91dCxzcGVlZDpnLnNwZWVkLGVhc2U6Zy5hbmltLmVhc2UsbWFzazpjLm1hc2tfb3V0LHNwbGl0ZGVsYXk6Yy5lbGVtZW50ZGVsYXl9KSxjLnRyYW5zZm9ybV9ob3ZlciYmZC5wdXNoKHtmcmFtZToiaG92ZXIiLHRvOmMudHJhbnNmb3JtX2hvdmVyLHN0eWxlOmMuc3R5bGVfaG92ZXIsc3BlZWQ6aC5zcGVlZCxlYXNlOmguYW5pbS5lYXNlLHNwbGl0ZGVsYXk6Yy5lbGVtZW50ZGVsYXl9KSxjLmZyYW1lcz1kfWlmKCFjLmZyYW1lc19hZGRlZCl7aWYoYy5pbmZyYW1laW5kZXg9MCxjLm91dGZyYW1laW5kZXg9LTEsYy5ob3ZlcmZyYW1laW5kZXg9LTEsdm9pZCAwIT09Yy5mcmFtZXMpZm9yKHZhciBpPTA7aTxjLmZyYW1lcy5sZW5ndGg7aSsrKXZvaWQgMD09PWMuZnJhbWVzWzBdLmZyb20mJihjLmZyYW1lc1swXS5mcm9tPSJvOmluaGVyaXQiKSwwPT09Yy5mcmFtZXNbMF0uZGVsYXkmJihjLmZyYW1lc1swXS5kZWxheT0yMCksImhvdmVyIj09PWMuZnJhbWVzW2ldLmZyYW1lP2MuaG92ZXJmcmFtZWluZGV4PWk6ImZyYW1lXzk5OSIhPT1jLmZyYW1lc1tpXS5mcmFtZSYmImZyYW1lX291dCIhPT1jLmZyYW1lc1tpXS5mcmFtZSYmImxhc3QiIT09Yy5mcmFtZXNbaV0uZnJhbWUmJiJlbmQiIT09Yy5mcmFtZXNbaV0uZnJhbWV8fChjLm91dGZyYW1laW5kZXg9aSksdm9pZCAwIT09Yy5mcmFtZXNbaV0uc3BsaXQmJmMuZnJhbWVzW2ldLnNwbGl0Lm1hdGNoKC9jaGFyc3x3b3Jkc3xsaW5lcy9nKSYmKGMuc3BsaXR0ZXh0PSEwKTtjLm91dGZyYW1laW5kZXg9Yy5vdXRmcmFtZWluZGV4PT09LTE/Yy5ob3ZlcmZyYW1laW5kZXg9PT0tMT9jLmZyYW1lcy5sZW5ndGgtMTpjLmZyYW1lcy5sZW5ndGgtMjpjLm91dGZyYW1laW5kZXgsYy5mcmFtZXNfYWRkZWQ9ITB9fSxhbmltY29tcGxldGVkOmZ1bmN0aW9uKGEsYyl7dmFyIGQ9YS5kYXRhKCksZT1kLnZpZGVvdHlwZSxmPWQuYXV0b3BsYXksZz1kLmF1dG9wbGF5b25seWZpcnN0dGltZTt2b2lkIDAhPWUmJiJub25lIiE9ZSYmKDE9PWZ8fCJ0cnVlIj09Znx8Im9uIj09Znx8IjFzdHRpbWUiPT1mfHxnPygoImNhcm91c2VsIiE9PWMuc2xpZGVyVHlwZXx8ImNhcm91c2VsIj09PWMuc2xpZGVyVHlwZSYmIm9uIj09PWMuY2Fyb3VzZWwuc2hvd0xheWVyc0FsbFRpbWUmJmEuY2xvc2VzdCgibGkiKS5oYXNDbGFzcygiYWN0aXZlLXJldnNsaWRlIil8fCJjYXJvdXNlbCI9PT1jLnNsaWRlclR5cGUmJiJvbiIhPT1jLmNhcm91c2VsLnNob3dMYXllcnNBbGxUaW1lJiZhLmNsb3Nlc3QoImxpIikuaGFzQ2xhc3MoImFjdGl2ZS1yZXZzbGlkZSIpKSYmYi5wbGF5VmlkZW8oYSxjKSxiLnRvZ2dsZVN0YXRlKGEuZGF0YSgidmlkZW90b2dnbGVkYnkiKSksKGd8fCIxc3R0aW1lIj09ZikmJihkLmF1dG9wbGF5b25seWZpcnN0dGltZT0hMSxkLmF1dG9wbGF5PSJvZmYiKSk6KCJubzFzdHRpbWUiPT1mJiYoZC5kYXRhc2V0YXV0b3BsYXk9Im9uIiksYi51blRvZ2dsZVN0YXRlKGEuZGF0YSgidmlkZW90b2dnbGVkYnkiKSkpKX0saGFuZGxlU3RhdGljTGF5ZXJzOmZ1bmN0aW9uKGEsYil7dmFyIGM9cGFyc2VJbnQoYS5kYXRhKCJzdGFydHNsaWRlIiksMCksZD1wYXJzZUludChhLmRhdGEoImVuZHNsaWRlIiksMCk7YzwwJiYoYz0wKSxkPDAmJihkPWIucmVhbHNsaWRlYW1vdW50KSwwPT09YyYmZD09PWIucmVhbHNsaWRlYW1vdW50LTEmJihkPWIucmVhbHNsaWRlYW1vdW50KzEpLGEuZGF0YSgic3RhcnRzbGlkZSIsYyksYS5kYXRhKCJlbmRzbGlkZSIsZCl9LGFuaW1hdGVUaGVDYXB0aW9uczpmdW5jdGlvbihhKXtpZigic3RvcCI9PT1iLmNvbXBhcmVfdmVyc2lvbihkKS5jaGVjaylyZXR1cm4hMTt2YXIgYz1hLm9wdCxlPWEuc2xpZGUsZj1hLnJlY2FsbCxnPWEubWFpbnRpbWVsaW5lLGg9YS5wcmVzZXQsaT1hLnN0YXJ0c2xpZGVhbmltYXQsaj0iY2Fyb3VzZWwiPT09Yy5zbGlkZXJUeXBlPzA6Yy53aWR0aC8yLWMuZ3JpZHdpZHRoW2MuY3VyV2luUmFuZ2VdKmMuYncvMixrPTAsbD1lLmRhdGEoImluZGV4Iik7aWYoYy5sYXllcnM9Yy5sYXllcnN8fG5ldyBPYmplY3QsYy5sYXllcnNbbF09Yy5sYXllcnNbbF18fGUuZmluZCgiLnRwLWNhcHRpb24iKSxjLmxheWVycy5zdGF0aWM9Yy5sYXllcnMuc3RhdGljfHxjLmMuZmluZCgiLnRwLXN0YXRpYy1sYXllcnMiKS5maW5kKCIudHAtY2FwdGlvbiIpLHZvaWQgMD09PWMudGltZWxpbmVzJiZiLmNyZWF0ZVRpbWVsaW5lU3RydWN0dXJlKGMpLGMuY29uaD1jLmMuaGVpZ2h0KCksYy5jb253PWMuYy53aWR0aCgpLGMudWx3PWMudWwud2lkdGgoKSxjLnVsaD1jLnVsLmhlaWdodCgpLGMuZGVidWdNb2RlKXtlLmFkZENsYXNzKCJpbmRlYnVnbW9kZSIpLGUuZmluZCgiLmhlbHBncmlkIikucmVtb3ZlKCksYy5jLmZpbmQoIi5oZ2xheWVyaW5mbyIpLnJlbW92ZSgpLGUuYXBwZW5kKCc8ZGl2IGNsYXNzPSJoZWxwZ3JpZCIgc3R5bGU9IndpZHRoOicrYy5ncmlkd2lkdGhbYy5jdXJXaW5SYW5nZV0qYy5idysicHg7aGVpZ2h0OiIrYy5ncmlkaGVpZ2h0W2MuY3VyV2luUmFuZ2VdKmMuYncrJ3B4OyI+PC9kaXY+Jyk7dmFyIG09ZS5maW5kKCIuaGVscGdyaWQiKTttLmFwcGVuZCgnPGRpdiBjbGFzcz0iaGdpbmZvIj5ab29tOicrTWF0aC5yb3VuZCgxMDAqYy5idykrIiUgJm5ic3A7Jm5ic3A7Jm5ic3A7IERldmljZSBMZXZlbDoiK2MuY3VyV2luUmFuZ2UrIiZuYnNwOyZuYnNwOyZuYnNwOyBHcmlkIFByZXNldDoiK2MuZ3JpZHdpZHRoW2MuY3VyV2luUmFuZ2VdKyJ4IitjLmdyaWRoZWlnaHRbYy5jdXJXaW5SYW5nZV0rIjwvZGl2PiIpLGMuYy5hcHBlbmQoJzxkaXYgY2xhc3M9ImhnbGF5ZXJpbmZvIj48L2Rpdj4nKSxtLmFwcGVuZCgnPGRpdiBjbGFzcz0idGxoZyI+PC9kaXY+Jyl9dm9pZCAwIT09bCYmYy5sYXllcnNbbF0mJmpRdWVyeS5lYWNoKGMubGF5ZXJzW2xdLGZ1bmN0aW9uKGEsZCl7dmFyIGU9alF1ZXJ5KHRoaXMpO2IudXBkYXRlTWFya3VwKHRoaXMsYyksYi5wcmVwYXJlU2luZ2xlQ2FwdGlvbih7Y2FwdGlvbjplLG9wdDpjLG9mZnNldHg6aixvZmZzZXR5OmssaW5kZXg6YSxyZWNhbGw6ZixwcmVzZXQ6aH0pLGgmJjAhPT1pfHxiLmJ1aWxkRnVsbFRpbWVMaW5lKHtjYXB0aW9uOmUsb3B0OmMsb2Zmc2V0eDpqLG9mZnNldHk6ayxpbmRleDphLHJlY2FsbDpmLHByZXNldDpoLHJlZ2VuZXJhdGU6MD09PWl9KSxmJiYiY2Fyb3VzZWwiPT09Yy5zbGlkZXJUeXBlJiYib24iPT09Yy5jYXJvdXNlbC5zaG93TGF5ZXJzQWxsVGltZSYmYi5hbmltY29tcGxldGVkKGUsYyl9KSxjLmxheWVycy5zdGF0aWMmJmpRdWVyeS5lYWNoKGMubGF5ZXJzLnN0YXRpYyxmdW5jdGlvbihhLGQpe3ZhciBlPWpRdWVyeSh0aGlzKSxnPWUuZGF0YSgpO2cuaG92ZXJlZHN0YXR1cyE9PSEwJiZnLmluaG92ZXJvdXRhbmltYXRpb24hPT0hMD8oYi51cGRhdGVNYXJrdXAodGhpcyxjKSxiLnByZXBhcmVTaW5nbGVDYXB0aW9uKHtjYXB0aW9uOmUsb3B0OmMsb2Zmc2V0eDpqLG9mZnNldHk6ayxpbmRleDphLHJlY2FsbDpmLHByZXNldDpofSksaCYmMCE9PWl8fGIuYnVpbGRGdWxsVGltZUxpbmUoe2NhcHRpb246ZSxvcHQ6YyxvZmZzZXR4Omosb2Zmc2V0eTprLGluZGV4OmEscmVjYWxsOmYscHJlc2V0OmgscmVnZW5lcmF0ZTowPT09aX0pLGYmJiJjYXJvdXNlbCI9PT1jLnNsaWRlclR5cGUmJiJvbiI9PT1jLmNhcm91c2VsLnNob3dMYXllcnNBbGxUaW1lJiZiLmFuaW1jb21wbGV0ZWQoZSxjKSk6Yi5wcmVwYXJlU2luZ2xlQ2FwdGlvbih7Y2FwdGlvbjplLG9wdDpjLG9mZnNldHg6aixvZmZzZXR5OmssaW5kZXg6YSxyZWNhbGw6ZixwcmVzZXQ6aH0pfSk7dmFyIG49Yy5uZXh0U2xpZGU9PT0tMXx8dm9pZCAwPT09Yy5uZXh0U2xpZGU/MDpjLm5leHRTbGlkZTtuPW4+Yy5yb3d6b25lcy5sZW5ndGg/Yy5yb3d6b25lcy5sZW5ndGg6bix2b2lkIDAhPWMucm93em9uZXMmJmMucm93em9uZXMubGVuZ3RoPjAmJnZvaWQgMCE9Yy5yb3d6b25lc1tuXSYmbj49MCYmbjw9Yy5yb3d6b25lcy5sZW5ndGgmJmMucm93em9uZXNbbl0ubGVuZ3RoPjAmJmIuc2V0U2l6ZShjKSxofHx2b2lkIDAhPT1pJiYodm9pZCAwIT09bCYmalF1ZXJ5LmVhY2goYy50aW1lbGluZXNbbF0ubGF5ZXJzLGZ1bmN0aW9uKGEsZCl7dmFyIGU9ZC5sYXllci5kYXRhKCk7Im5vbmUiIT09ZC53cmFwcGVyJiZ2b2lkIDAhPT1kLndyYXBwZXJ8fCgia2VlcCI9PWQudHJpZ2dlcnN0YXRlJiYib24iPT09ZS50cmlnZ2Vyc3RhdGU/Yi5wbGF5QW5pbWF0aW9uRnJhbWUoe2NhcHRpb246ZC5sYXllcixvcHQ6YyxmcmFtZToiZnJhbWVfMCIsdHJpZ2dlcmRpcmVjdGlvbjoiaW4iLHRyaWdnZXJmcmFtZWluOiJmcmFtZV8wIix0cmlnZ2VyZnJhbWVvdXQ6ImZyYW1lXzk5OSJ9KTpkLnRpbWVsaW5lLnJlc3RhcnQoMCkpfSksYy50aW1lbGluZXMuc3RhdGljbGF5ZXJzJiZqUXVlcnkuZWFjaChjLnRpbWVsaW5lcy5zdGF0aWNsYXllcnMubGF5ZXJzLGZ1bmN0aW9uKGEsZCl7dmFyIGU9ZC5sYXllci5kYXRhKCksZj1uPj1kLmZpcnN0c2xpZGUmJm48PWQubGFzdHNsaWRlLGc9bjxkLmZpcnN0c2xpZGV8fG4+ZC5sYXN0c2xpZGUsaD1kLnRpbWVsaW5lLmdldExhYmVsVGltZSgic2xpZGVfIitkLmZpcnN0c2xpZGUpLGk9ZC50aW1lbGluZS5nZXRMYWJlbFRpbWUoInNsaWRlXyIrZC5sYXN0c2xpZGUpLGo9ZS5zdGF0aWNfbGF5ZXJfdGltZWxpbmVfdGltZSxrPSJpbiI9PT1lLmFuaW1kaXJlY3Rpb258fCJvdXQiIT09ZS5hbmltZGlyZWN0aW9uJiZ2b2lkIDAsbD0iYnl0cmlnZ2VyIj09PWUuZnJhbWVzWzBdLmRlbGF5LG89KCJieXRyaWdnZXIiPT09ZS5mcmFtZXNbZS5mcmFtZXMubGVuZ3RoLTFdLmRlbGF5LGUudHJpZ2dlcmVkX3N0YXJ0c3RhdHVzKSxwPWUubGFzdHRyaWdnZXJzdGF0ZTtlLmhvdmVyZWRzdGF0dXMhPT0hMCYmMSE9ZS5pbmhvdmVyb3V0YW5pbWF0aW9uJiYodm9pZCAwIT09aiYmayYmKCJrZWVwIj09cD8oYi5wbGF5QW5pbWF0aW9uRnJhbWUoe2NhcHRpb246ZC5sYXllcixvcHQ6YyxmcmFtZToiZnJhbWVfMCIsdHJpZ2dlcmRpcmVjdGlvbjoiaW4iLHRyaWdnZXJmcmFtZWluOiJmcmFtZV8wIix0cmlnZ2VyZnJhbWVvdXQ6ImZyYW1lXzk5OSJ9KSxlLnRyaWdnZXJlZHRpbWVsaW5lLnRpbWUoaikpOmUuaG92ZXJlZHN0YXR1cyE9PSEwJiZkLnRpbWVsaW5lLnRpbWUoaikpLCJyZXNldCI9PT1wJiYiaGlkZGVuIj09PW8mJihkLnRpbWVsaW5lLnRpbWUoMCksZS5hbmltZGlyZWN0aW9uPSJvdXQiKSxmP2s/bj09PWQubGFzdHNsaWRlJiYoZC50aW1lbGluZS5wbGF5KGkpLGUuYW5pbWRpcmVjdGlvbj0iaW4iKToobHx8ImluIj09PWUuYW5pbWRpcmVjdGlvbnx8ZC50aW1lbGluZS5wbGF5KGgpLCgidmlzaWJsZSI9PW8mJiJrZWVwIiE9PXB8fCJrZWVwIj09PXAmJms9PT0hMHx8InZpc2libGUiPT1vJiZ2b2lkIDA9PT1rKSYmKGQudGltZWxpbmUucGxheShoKy4wMSksZS5hbmltZGlyZWN0aW9uPSJpbiIpKTpnJiZrJiZkLnRpbWVsaW5lLnBsYXkoImZyYW1lXzk5OSIpKX0pKSx2b2lkIDAhPWcmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXtnLnJlc3VtZSgpfSwzMCl9LHByZXBhcmVTaW5nbGVDYXB0aW9uOmZ1bmN0aW9uKGEpe3ZhciBjPWEuY2FwdGlvbixkPWMuZGF0YSgpLGU9YS5vcHQsZj1hLnJlY2FsbCxnPWEucmVjYWxsLGk9KGEucHJlc2V0LGpRdWVyeSgiYm9keSIpLmhhc0NsYXNzKCJydGwiKSk7aWYoZC5fcHc9dm9pZCAwPT09ZC5fcHc/Yy5jbG9zZXN0KCIudHAtcGFyYWxsYXgtd3JhcCIpOmQuX3B3LGQuX2x3PXZvaWQgMD09PWQuX2x3P2MuY2xvc2VzdCgiLnRwLWxvb3Atd3JhcCIpOmQuX2x3LGQuX213PXZvaWQgMD09PWQuX213P2MuY2xvc2VzdCgiLnRwLW1hc2std3JhcCIpOmQuX213LGQuX3Jlc3BvbnNpdmU9ZC5yZXNwb25zaXZlfHwib24iLGQuX3Jlc3BvZmZzZXQ9ZC5yZXNwb25zaXZlX29mZnNldHx8Im9uIixkLl9iYT1kLmJhc2VhbGlnbnx8ImdyaWQiLGQuX2d3PSJncmlkIj09PWQuX2JhP2Uud2lkdGg6ZS51bHcsZC5fZ2g9ImdyaWQiPT09ZC5fYmE/ZS5oZWlnaHQ6ZS51bGgsZC5fbGlnPXZvaWQgMD09PWQuX2xpZz9jLmhhc0NsYXNzKCJyZXZfbGF5ZXJfaW5fZ3JvdXAiKT9jLmNsb3Nlc3QoIi5yZXZfZ3JvdXAiKTpjLmhhc0NsYXNzKCJyZXZfbGF5ZXJfaW5fY29sdW1uIik/Yy5jbG9zZXN0KCIucmV2X2NvbHVtbl9pbm5lciIpOmMuaGFzQ2xhc3MoInJldl9jb2x1bW5faW5uZXIiKT9jLmNsb3Nlc3QoIi5yZXZfcm93Iik6Im5vbmUiOmQuX2xpZyxkLl9pbmdyb3VwPXZvaWQgMD09PWQuX2luZ3JvdXA/IShjLmhhc0NsYXNzKCJyZXZfZ3JvdXAiKXx8IWMuY2xvc2VzdCgiLnJldl9ncm91cCIpKTpkLl9pbmdyb3VwLGQuX2lzZ3JvdXA9dm9pZCAwPT09ZC5faXNncm91cD8hIWMuaGFzQ2xhc3MoInJldl9ncm91cCIpOmQuX2lzZ3JvdXAsZC5fbmN0eXBlPWQudHlwZXx8Im5vbmUiLGQuX2NiZ2NfYXV0bz12b2lkIDA9PT1kLl9jYmdjX2F1dG8/ImNvbHVtbiI9PT1kLl9uY3R5cGUmJmQuX3B3LmZpbmQoIi5yZXZfY29sdW1uX2JnX2F1dG9fc2l6ZWQiKTpkLl9jYmdjX2F1dG8sZC5fY2JnY19tYW49dm9pZCAwPT09ZC5fY2JnY19tYW4/ImNvbHVtbiI9PT1kLl9uY3R5cGUmJmQuX3B3LmZpbmQoIi5yZXZfY29sdW1uX2JnX21hbl9zaXplZCIpOmQuX2NiZ2NfbWFuLGQuX3NsaWRlaWQ9ZC5fc2xpZGVpZHx8Yy5jbG9zZXN0KCIudHAtcmV2c2xpZGVyLXNsaWRlc2xpIikuZGF0YSgiaW5kZXgiKSxkLl9pZD12b2lkIDA9PT1kLl9pZD9jLmRhdGEoImlkIil8fGMuYXR0cigiaWQiKTpkLl9pZCxkLl9zbGlkZWxpbms9dm9pZCAwPT09ZC5fc2xpZGVsaW5rP3ZvaWQgMCE9PWMuaGFzQ2xhc3MoInNsaWRlbGluayIpJiZjLmhhc0NsYXNzKCJzbGlkZWxpbmsiKTpkLl9zbGlkZWxpbmssdm9pZCAwPT09ZC5fbGkmJihjLmhhc0NsYXNzKCJ0cC1zdGF0aWMtbGF5ZXIiKT8oZC5faXNzdGF0aWM9ITAsZC5fbGk9Yy5jbG9zZXN0KCIudHAtc3RhdGljLWxheWVycyIpLGQuX3NsaWRlaWQ9InN0YXRpY2xheWVycyIpOmQuX2xpPWMuY2xvc2VzdCgiLnRwLXJldnNsaWRlci1zbGlkZXNsaSIpKSxkLl9yb3c9dm9pZCAwPT09ZC5fcm93PyJjb2x1bW4iPT09ZC5fbmN0eXBlJiZkLl9wdy5jbG9zZXN0KCIucmV2X3JvdyIpOmQuX3Jvdyx2b2lkIDA9PT1kLl90b2dnbGVsaXN0ZW5lcnMmJmMuZmluZCgiLnJzLXRvZ2dsZWQtY29udGVudCIpPyhkLl90b2dnbGVsaXN0ZW5lcnM9ITAsdm9pZCAwPT09ZC5hY3Rpb25zJiZjLmNsaWNrKGZ1bmN0aW9uKCl7Yi5zd2FwdG9nZ2xlU3RhdGUoYyl9KSk6ZC5fdG9nZ2xlbGlzdGVuZXJzPSExLCJmdWxsc2NyZWVuIj09ZS5zbGlkZXJMYXlvdXQmJihhLm9mZnNldHk9ZC5fZ2gvMi1lLmdyaWRoZWlnaHRbZS5jdXJXaW5SYW5nZV0qZS5iaC8yKSwoIm9uIj09ZS5hdXRvSGVpZ2h0fHx2b2lkIDAhPWUubWluSGVpZ2h0JiZlLm1pbkhlaWdodD4wKSYmKGEub2Zmc2V0eT1lLmNvbmgvMi1lLmdyaWRoZWlnaHRbZS5jdXJXaW5SYW5nZV0qZS5iaC8yKSxhLm9mZnNldHk8MCYmKGEub2Zmc2V0eT0wKSxlLmRlYnVnTW9kZSl7Yy5jbG9zZXN0KCJsaSIpLmZpbmQoIi5oZWxwZ3JpZCIpLmNzcyh7dG9wOmEub2Zmc2V0eSsicHgiLGxlZnQ6YS5vZmZzZXR4KyJweCJ9KTt2YXIgaz1lLmMuZmluZCgiLmhnbGF5ZXJpbmZvIik7Yy5vbigiaG92ZXIsIG1vdXNlZW50ZXIiLGZ1bmN0aW9uKCl7dmFyIGE9IiI7Yy5kYXRhKCkmJmpRdWVyeS5lYWNoKGMuZGF0YSgpLGZ1bmN0aW9uKGIsYyl7Im9iamVjdCIhPXR5cGVvZiBjJiYoYT1hKyc8c3BhbiBzdHlsZT0id2hpdGUtc3BhY2U6bm93cmFwIj48c3BhbiBzdHlsZT0iY29sb3I6IzI3YWU2MCI+JytiKyI6PC9zcGFuPiIrYysiPC9zcGFuPiZuYnNwOyAmbmJzcDsgIil9KSxrLmh0bWwoYSl9KX12YXIgbT12b2lkIDA9PT1kLnZpc2liaWxpdHk/Im9vbiI6byhkLnZpc2liaWxpdHksZSlbZS5mb3JjZWRXaW5SYW5nZV18fG8oZC52aXNpYmlsaXR5LGUpfHwib29vbiI7aWYoIm9mZiI9PT1tfHxkLl9ndzxlLmhpZGVDYXB0aW9uQXRMaW1pdCYmIm9uIj09ZC5jYXB0aW9uaGlkZGVufHxkLl9ndzxlLmhpZGVBbGxDYXB0aW9uQXRMaW1pdD9kLl9wdy5hZGRDbGFzcygidHAtaGlkZGVuLWNhcHRpb24iKTpkLl9wdy5yZW1vdmVDbGFzcygidHAtaGlkZGVuLWNhcHRpb24iKSxkLmxheWVydHlwZT0iaHRtbCIsYS5vZmZzZXR4PDAmJihhLm9mZnNldHg9MCksdm9pZCAwIT1kLnRodW1iaW1hZ2UmJnZvaWQgMD09ZC52aWRlb3Bvc3RlciYmKGQudmlkZW9wb3N0ZXI9ZC50aHVtYmltYWdlKSxjLmZpbmQoImltZyIpLmxlbmd0aD4wKXt2YXIgbj1jLmZpbmQoImltZyIpO2QubGF5ZXJ0eXBlPSJpbWFnZSIsMD09bi53aWR0aCgpJiZuLmNzcyh7d2lkdGg6ImF1dG8ifSksMD09bi5oZWlnaHQoKSYmbi5jc3Moe2hlaWdodDoiYXV0byJ9KSx2b2lkIDA9PW4uZGF0YSgid3ciKSYmbi53aWR0aCgpPjAmJm4uZGF0YSgid3ciLG4ud2lkdGgoKSksdm9pZCAwPT1uLmRhdGEoImhoIikmJm4uaGVpZ2h0KCk+MCYmbi5kYXRhKCJoaCIsbi5oZWlnaHQoKSk7dmFyIHE9bi5kYXRhKCJ3dyIpLHQ9bi5kYXRhKCJoaCIpLHY9InNsaWRlIj09ZC5fYmE/ZS51bHc6ZS5ncmlkd2lkdGhbZS5jdXJXaW5SYW5nZV0sdz0ic2xpZGUiPT1kLl9iYT9lLnVsaDplLmdyaWRoZWlnaHRbZS5jdXJXaW5SYW5nZV07cT1vKG4uZGF0YSgid3ciKSxlKVtlLmN1cldpblJhbmdlXXx8byhuLmRhdGEoInd3IiksZSl8fCJhdXRvIix0PW8obi5kYXRhKCJoaCIpLGUpW2UuY3VyV2luUmFuZ2VdfHxvKG4uZGF0YSgiaGgiKSxlKXx8ImF1dG8iO3ZhciB4PSJmdWxsIj09PXF8fCJmdWxsLXByb3BvcnRpb25hbCI9PT1xLHk9ImZ1bGwiPT09dHx8ImZ1bGwtcHJvcG9ydGlvbmFsIj09PXQ7aWYoImZ1bGwtcHJvcG9ydGlvbmFsIj09PXEpe3ZhciB6PW4uZGF0YSgib3dpZHRoIiksQT1uLmRhdGEoIm9oZWlnaHQiKTt6L3Y8QS93PyhxPXYsdD1BKih2L3opKToodD13LHE9eioody9BKSl9ZWxzZSBxPXg/djohalF1ZXJ5LmlzTnVtZXJpYyhxKSYmcS5pbmRleE9mKCIlIik+MD9xOnBhcnNlRmxvYXQocSksdD15P3c6IWpRdWVyeS5pc051bWVyaWModCkmJnQuaW5kZXhPZigiJSIpPjA/dDpwYXJzZUZsb2F0KHQpO3E9dm9pZCAwPT09cT8wOnEsdD12b2lkIDA9PT10PzA6dCwib2ZmIiE9PWQuX3Jlc3BvbnNpdmU/KCJncmlkIiE9ZC5fYmEmJng/alF1ZXJ5LmlzTnVtZXJpYyhxKT9uLmNzcyh7d2lkdGg6cSsicHgifSk6bi5jc3Moe3dpZHRoOnF9KTpqUXVlcnkuaXNOdW1lcmljKHEpP24uY3NzKHt3aWR0aDpxKmUuYncrInB4In0pOm4uY3NzKHt3aWR0aDpxfSksImdyaWQiIT1kLl9iYSYmeT9qUXVlcnkuaXNOdW1lcmljKHQpP24uY3NzKHtoZWlnaHQ6dCsicHgifSk6bi5jc3Moe2hlaWdodDp0fSk6alF1ZXJ5LmlzTnVtZXJpYyh0KT9uLmNzcyh7aGVpZ2h0OnQqZS5iaCsicHgifSk6bi5jc3Moe2hlaWdodDp0fSkpOm4uY3NzKHt3aWR0aDpxLGhlaWdodDp0fSksZC5faW5ncm91cCYmInJvdyIhPT1kLl9uY3R5cGUmJih2b2lkIDAhPT1xJiYhalF1ZXJ5LmlzTnVtZXJpYyhxKSYmcS5pbmRleE9mKCIlIik+MCYmcHVuY2hncy5Ud2VlbkxpdGUuc2V0KFtkLl9sdyxkLl9wdyxkLl9td10se21pbldpZHRoOnF9KSx2b2lkIDAhPT10JiYhalF1ZXJ5LmlzTnVtZXJpYyh0KSYmdC5pbmRleE9mKCIlIik+MCYmcHVuY2hncy5Ud2VlbkxpdGUuc2V0KFtkLl9sdyxkLl9wdyxkLl9td10se21pbkhlaWdodDp0fSkpfWlmKCJzbGlkZSI9PT1kLl9iYSlhLm9mZnNldHg9MCxhLm9mZnNldHk9MDtlbHNlIGlmKGQuX2lzc3RhdGljJiZ2b2lkIDAhPT1lLmNhcm91c2VsJiZ2b2lkIDAhPT1lLmNhcm91c2VsLmhvcml6b250YWxfYWxpZ24mJiJjYXJvdXNlbCI9PT1lLnNsaWRlclR5cGUpe3N3aXRjaChlLmNhcm91c2VsLmhvcml6b250YWxfYWxpZ24pe2Nhc2UiY2VudGVyIjphLm9mZnNldHg9MCsoZS51bHctZS5ncmlkd2lkdGhbZS5jdXJXaW5SYW5nZV0qZS5idykvMjticmVhaztjYXNlImxlZnQiOmJyZWFrO2Nhc2UicmlnaHQiOmEub2Zmc2V0eD1lLnVsdy1lLmdyaWR3aWR0aFtlLmN1cldpblJhbmdlXSplLmJ3fWEub2Zmc2V0eD1hLm9mZnNldHg8MD8wOmEub2Zmc2V0eH12YXIgQj0iaHRtbDUiPT1kLmF1ZGlvPyJhdWRpbyI6InZpZGVvIjtpZihjLmhhc0NsYXNzKCJ0cC12aWRlb2xheWVyIil8fGMuaGFzQ2xhc3MoInRwLWF1ZGlvbGF5ZXIiKXx8Yy5maW5kKCJpZnJhbWUiKS5sZW5ndGg+MHx8Yy5maW5kKEIpLmxlbmd0aD4wKXtpZihkLmxheWVydHlwZT0idmlkZW8iLGIubWFuYWdlVmlkZW9MYXllciYmYi5tYW5hZ2VWaWRlb0xheWVyKGMsZSxmLGcpLCFmJiYhZyl7ZC52aWRlb3R5cGU7Yi5yZXNldFZpZGVvJiZiLnJlc2V0VmlkZW8oYyxlLGEucHJlc2V0KX12YXIgRD1kLmFzcGVjdHJhdGlvO3ZvaWQgMCE9RCYmRC5zcGxpdCgiOiIpLmxlbmd0aD4xJiZiLnByZXBhcmVDb3ZlcmVkVmlkZW8oRCxlLGMpO3ZhciBuPWMuZmluZCgiaWZyYW1lIik/Yy5maW5kKCJpZnJhbWUiKTpuPWMuZmluZChCKSxFPSFjLmZpbmQoImlmcmFtZSIpLEY9Yy5oYXNDbGFzcygiY292ZXJzY3JlZW52aWRlbyIpO24uY3NzKHtkaXNwbGF5OiJibG9jayJ9KSx2b2lkIDA9PWMuZGF0YSgidmlkZW93aWR0aCIpJiYoYy5kYXRhKCJ2aWRlb3dpZHRoIixuLndpZHRoKCkpLGMuZGF0YSgidmlkZW9oZWlnaHQiLG4uaGVpZ2h0KCkpKTt2YXIgcT1vKGMuZGF0YSgidmlkZW93aWR0aCIpLGUpW2UuY3VyV2luUmFuZ2VdfHxvKGMuZGF0YSgidmlkZW93aWR0aCIpLGUpfHwiYXV0byIsdD1vKGMuZGF0YSgidmlkZW9oZWlnaHQiKSxlKVtlLmN1cldpblJhbmdlXXx8byhjLmRhdGEoInZpZGVvaGVpZ2h0IiksZSl8fCJhdXRvIjshalF1ZXJ5LmlzTnVtZXJpYyhxKSYmcS5pbmRleE9mKCIlIik+MD90PXBhcnNlRmxvYXQodCkqZS5iaCsicHgiOihxPXBhcnNlRmxvYXQocSkqZS5idysicHgiLHQ9cGFyc2VGbG9hdCh0KSplLmJoKyJweCIpLGQuY3Nzb2JqPXZvaWQgMD09PWQuY3Nzb2JqP3IoYywwKTpkLmNzc29iajt2YXIgRz1zKGQuY3Nzb2JqLGUpO2lmKCJhdXRvIj09Ry5saW5lSGVpZ2h0JiYoRy5saW5lSGVpZ2h0PUcuZm9udFNpemUrNCksYy5oYXNDbGFzcygiZnVsbHNjcmVlbnZpZGVvIil8fEYpe2Eub2Zmc2V0eD0wLGEub2Zmc2V0eT0wLGMuZGF0YSgieCIsMCksYy5kYXRhKCJ5IiwwKTt2YXIgSD1kLl9naDsib24iPT1lLmF1dG9IZWlnaHQmJihIPWUuY29uaCksYy5jc3Moe3dpZHRoOmQuX2d3LGhlaWdodDpIfSl9ZWxzZSBwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYyx7cGFkZGluZ1RvcDpNYXRoLnJvdW5kKEcucGFkZGluZ1RvcCplLmJoKSsicHgiLHBhZGRpbmdCb3R0b206TWF0aC5yb3VuZChHLnBhZGRpbmdCb3R0b20qZS5iaCkrInB4IixwYWRkaW5nTGVmdDpNYXRoLnJvdW5kKEcucGFkZGluZ0xlZnQqZS5idykrInB4IixwYWRkaW5nUmlnaHQ6TWF0aC5yb3VuZChHLnBhZGRpbmdSaWdodCplLmJ3KSsicHgiLG1hcmdpblRvcDpHLm1hcmdpblRvcCplLmJoKyJweCIsbWFyZ2luQm90dG9tOkcubWFyZ2luQm90dG9tKmUuYmgrInB4IixtYXJnaW5MZWZ0OkcubWFyZ2luTGVmdCplLmJ3KyJweCIsbWFyZ2luUmlnaHQ6Ry5tYXJnaW5SaWdodCplLmJ3KyJweCIsYm9yZGVyVG9wV2lkdGg6TWF0aC5yb3VuZChHLmJvcmRlclRvcFdpZHRoKmUuYmgpKyJweCIsYm9yZGVyQm90dG9tV2lkdGg6TWF0aC5yb3VuZChHLmJvcmRlckJvdHRvbVdpZHRoKmUuYmgpKyJweCIsYm9yZGVyTGVmdFdpZHRoOk1hdGgucm91bmQoRy5ib3JkZXJMZWZ0V2lkdGgqZS5idykrInB4Iixib3JkZXJSaWdodFdpZHRoOk1hdGgucm91bmQoRy5ib3JkZXJSaWdodFdpZHRoKmUuYncpKyJweCIsd2lkdGg6cSxoZWlnaHQ6dH0pOygwPT1FJiYhRnx8MSE9ZC5mb3JjZWNvdmVyJiYhYy5oYXNDbGFzcygiZnVsbHNjcmVlbnZpZGVvIikmJiFGKSYmKG4ud2lkdGgocSksbi5oZWlnaHQodCkpLGQuX2luZ3JvdXAmJm51bGwhPT1kLnZpZGVvd2lkdGgmJnZvaWQgMCE9PWQudmlkZW93aWR0aCYmIWpRdWVyeS5pc051bWVyaWMoZC52aWRlb3dpZHRoKSYmZC52aWRlb3dpZHRoLmluZGV4T2YoIiUiKT4wJiZwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoW2QuX2x3LGQuX3B3LGQuX213XSx7bWluV2lkdGg6ZC52aWRlb3dpZHRofSl9dShjLGUsMCxkLl9yZXNwb25zaXZlKSxjLmhhc0NsYXNzKCJ0cC1yZXNpemVtZSIpJiZjLmZpbmQoIioiKS5lYWNoKGZ1bmN0aW9uKCl7dShqUXVlcnkodGhpcyksZSwicmVrdXJzaXZlIixkLl9yZXNwb25zaXZlKX0pO3ZhciBJPWMub3V0ZXJIZWlnaHQoKSxKPWMuY3NzKCJiYWNrZ3JvdW5kQ29sb3IiKTtwKGMsIi5mcm9udGNvcm5lciIsImxlZnQiLCJib3JkZXJSaWdodCIsImJvcmRlclRvcENvbG9yIixJLEopLHAoYywiLmZyb250Y29ybmVydG9wIiwibGVmdCIsImJvcmRlclJpZ2h0IiwiYm9yZGVyQm90dG9tQ29sb3IiLEksSikscChjLCIuYmFja2Nvcm5lciIsInJpZ2h0IiwiYm9yZGVyTGVmdCIsImJvcmRlckJvdHRvbUNvbG9yIixJLEopLHAoYywiLmJhY2tjb3JuZXJ0b3AiLCJyaWdodCIsImJvcmRlckxlZnQiLCJib3JkZXJUb3BDb2xvciIsSSxKKSwib24iPT1lLmZ1bGxTY3JlZW5BbGlnbkZvcmNlJiYoYS5vZmZzZXR4PTAsYS5vZmZzZXR5PTApLGQuYXJyb2JqPW5ldyBPYmplY3QsZC5hcnJvYmoudm9hPW8oZC52b2Zmc2V0LGUpW2UuY3VyV2luUmFuZ2VdfHxvKGQudm9mZnNldCxlKVswXSxkLmFycm9iai5ob2E9byhkLmhvZmZzZXQsZSlbZS5jdXJXaW5SYW5nZV18fG8oZC5ob2Zmc2V0LGUpWzBdLGQuYXJyb2JqLmVseD1vKGQueCxlKVtlLmN1cldpblJhbmdlXXx8byhkLngsZSlbMF0sZC5hcnJvYmouZWx5PW8oZC55LGUpW2UuY3VyV2luUmFuZ2VdfHxvKGQueSxlKVswXTt2YXIgSz0wPT1kLmFycm9iai52b2EubGVuZ3RoPzA6ZC5hcnJvYmoudm9hLEw9MD09ZC5hcnJvYmouaG9hLmxlbmd0aD8wOmQuYXJyb2JqLmhvYSxNPTA9PWQuYXJyb2JqLmVseC5sZW5ndGg/MDpkLmFycm9iai5lbHgsTj0wPT1kLmFycm9iai5lbHkubGVuZ3RoPzA6ZC5hcnJvYmouZWx5O2QuZW93PWMub3V0ZXJXaWR0aCghMCksZC5lb2g9Yy5vdXRlckhlaWdodCghMCksMD09ZC5lb3cmJjA9PWQuZW9oJiYoZC5lb3c9ZS51bHcsZC5lb2g9ZS51bGgpO3ZhciBPPSJvZmYiIT09ZC5fcmVzcG9mZnNldD9wYXJzZUludChLLDApKmUuYnc6cGFyc2VJbnQoSywwKSxQPSJvZmYiIT09ZC5fcmVzcG9mZnNldD9wYXJzZUludChMLDApKmUuYnc6cGFyc2VJbnQoTCwwKSxRPSJncmlkIj09PWQuX2JhP2UuZ3JpZHdpZHRoW2UuY3VyV2luUmFuZ2VdKmUuYnc6ZC5fZ3csUj0iZ3JpZCI9PT1kLl9iYT9lLmdyaWRoZWlnaHRbZS5jdXJXaW5SYW5nZV0qZS5idzpkLl9naDsib24iPT1lLmZ1bGxTY3JlZW5BbGlnbkZvcmNlJiYoUT1lLnVsdyxSPWUudWxoKSwibm9uZSIhPT1kLl9saWcmJnZvaWQgMCE9ZC5fbGlnJiYoUT1kLl9saWcud2lkdGgoKSxSPWQuX2xpZy5oZWlnaHQoKSxhLm9mZnNldHg9MCxhLm9mZnNldHk9MCksTT0iY2VudGVyIj09PU18fCJtaWRkbGUiPT09TT9RLzItZC5lb3cvMitQOiJsZWZ0Ij09PU0/UDoicmlnaHQiPT09TT9RLWQuZW93LVA6Im9mZiIhPT1kLl9yZXNwb2Zmc2V0P00qZS5idzpNLE49ImNlbnRlciI9PU58fCJtaWRkbGUiPT1OP1IvMi1kLmVvaC8yK086InRvcCI9PU4/TzoiYm90dG9tIj09Tj9SLWQuZW9oLU86Im9mZiIhPT1kLl9yZXNwb2Zmc2V0P04qZS5idzpOLGkmJiFkLl9zbGlkZWxpbmsmJihNKz1kLmVvdyksZC5fc2xpZGVsaW5rJiYoTT0wKSxkLmNhbGN4PXBhcnNlSW50KE0sMCkrYS5vZmZzZXR4LGQuY2FsY3k9cGFyc2VJbnQoTiwwKSthLm9mZnNldHk7dmFyIFM9Yy5jc3MoInotSW5kZXgiKTtpZigicm93IiE9PWQuX25jdHlwZSYmImNvbHVtbiIhPT1kLl9uY3R5cGUpcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGQuX3B3LHt6SW5kZXg6Uyx0b3A6ZC5jYWxjeSxsZWZ0OmQuY2FsY3gsb3ZlcndyaXRlOiJhdXRvIn0pO2Vsc2UgaWYoInJvdyIhPT1kLl9uY3R5cGUpcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGQuX3B3LHt6SW5kZXg6Uyx3aWR0aDpkLmNvbHVtbndpZHRoLHRvcDowLGxlZnQ6MCxvdmVyd3JpdGU6ImF1dG8ifSk7ZWxzZSBpZigicm93Ij09PWQuX25jdHlwZSl7dmFyIFQ9ImdyaWQiPT09ZC5fYmE/USsicHgiOiIxMDAlIjtwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZC5fcHcse3pJbmRleDpTLHdpZHRoOlQsdG9wOjAsbGVmdDphLm9mZnNldHgsb3ZlcndyaXRlOiJhdXRvIn0pfXZvaWQgMCE9PWQuYmxlbmRtb2RlJiZwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZC5fcHcse21peEJsZW5kTW9kZTpkLmJsZW5kbW9kZX0pLCJyb3ciPT09ZC5fbmN0eXBlJiYoZC5jb2x1bW5icmVhazw9ZS5jdXJXaW5SYW5nZT9jLmFkZENsYXNzKCJyZXZfYnJlYWtfY29sdW1ucyIpOmMucmVtb3ZlQ2xhc3MoInJldl9icmVha19jb2x1bW5zIikpLCJvbiI9PWQubG9vcGFuaW1hdGlvbiYmcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGQuX2x3LHttaW5XaWR0aDpkLmVvdyxtaW5IZWlnaHQ6ZC5lb2h9KSxkLl9pbmdyb3VwJiYicm93IiE9PWQuX25jdHlwZSYmKHZvaWQgMCE9PWQuX2dyb3VwdyYmIWpRdWVyeS5pc051bWVyaWMoZC5fZ3JvdXB3KSYmZC5fZ3JvdXB3LmluZGV4T2YoIiUiKT4wJiZwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoW2QuX2x3LGQuX3B3LGQuX213XSx7bWluV2lkdGg6ZC5fZ3JvdXB3fSksdm9pZCAwIT09ZC5fZ3JvdXBoJiYhalF1ZXJ5LmlzTnVtZXJpYyhkLl9ncm91cGgpJiZkLl9ncm91cGguaW5kZXhPZigiJSIpPjAmJnB1bmNoZ3MuVHdlZW5MaXRlLnNldChbZC5fbHcsZC5fcHcsZC5fbXddLHttaW5IZWlnaHQ6ZC5fZ3JvdXBofSkpfSxjcmVhdGVUaW1lbGluZVN0cnVjdHVyZTpmdW5jdGlvbihhKXtmdW5jdGlvbiBiKGEsYixjLGQpe3ZhciBmLGU9bmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlKHtwYXVzZWQ6ITB9KTtjPWN8fG5ldyBPYmplY3QsY1thLmF0dHIoImlkIildPWNbYS5hdHRyKCJpZCIpXXx8bmV3IE9iamVjdCwic3RhdGljbGF5ZXJzIj09PWQmJihjW2EuYXR0cigiaWQiKV0uZmlyc3RzbGlkZT1hLmRhdGEoInN0YXJ0c2xpZGUiKSxjW2EuYXR0cigiaWQiKV0ubGFzdHNsaWRlPWEuZGF0YSgiZW5kc2xpZGUiKSksYS5kYXRhKCJzbGlkZWlkIixkKSxjW2EuYXR0cigiaWQiKV0uZGVmY2xhc3Nlcz1mPWFbMF0uY2xhc3NOYW1lLGNbYS5hdHRyKCJpZCIpXS53cmFwcGVyPWYuaW5kZXhPZigicmV2X2xheWVyX2luX2NvbHVtbiIpPj0wP2EuY2xvc2VzdCgiLnJldl9jb2x1bW5faW5uZXIiKTpmLmluZGV4T2YoInJldl9jb2x1bW5faW5uZXIiKT49MD9hLmNsb3Nlc3QoIi5yZXZfcm93Iik6Zi5pbmRleE9mKCJyZXZfbGF5ZXJfaW5fZ3JvdXAiKT49MD9hLmNsb3Nlc3QoIi5yZXZfZ3JvdXAiKToibm9uZSIsY1thLmF0dHIoImlkIildLnRpbWVsaW5lPWUsY1thLmF0dHIoImlkIildLmxheWVyPWEsY1thLmF0dHIoImlkIildLnRyaWdnZXJzdGF0ZT1hLmRhdGEoImxhc3R0cmlnZ2Vyc3RhdGUiKSxjW2EuYXR0cigiaWQiKV0uZGNoaWxkcmVuPWYuaW5kZXhPZigicmV2X3JvdyIpPj0wP2FbMF0uZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgicmV2X2NvbHVtbl9pbm5lciIpOmYuaW5kZXhPZigicmV2X2NvbHVtbl9pbm5lciIpPj0wP2FbMF0uZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgidHAtY2FwdGlvbiIpOmYuaW5kZXhPZigicmV2X2dyb3VwIik+PTA/YVswXS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJyZXZfbGF5ZXJfaW5fZ3JvdXAiKToibm9uZSIsYS5kYXRhKCJ0aW1lbGluZSIsZSl9YS50aW1lbGluZXM9YS50aW1lbGluZXN8fG5ldyBPYmplY3QsYS5jLmZpbmQoIi50cC1yZXZzbGlkZXItc2xpZGVzbGksIC50cC1zdGF0aWMtbGF5ZXJzIikuZWFjaChmdW5jdGlvbigpe3ZhciBjPWpRdWVyeSh0aGlzKSxkPWMuZGF0YSgiaW5kZXgiKTthLnRpbWVsaW5lc1tkXT1hLnRpbWVsaW5lc1tkXXx8e30sYS50aW1lbGluZXNbZF0ubGF5ZXJzPWEudGltZWxpbmVzW2RdLmxheWVyc3x8bmV3IE9iamVjdCxjLmZpbmQoIi50cC1jYXB0aW9uIikuZWFjaChmdW5jdGlvbihjKXtiKGpRdWVyeSh0aGlzKSxhLGEudGltZWxpbmVzW2RdLmxheWVycyxkKX0pfSl9LGJ1aWxkRnVsbFRpbWVMaW5lOmZ1bmN0aW9uKGEpe3ZhciBrLGwsYz1hLmNhcHRpb24sZD1jLmRhdGEoKSxmPWEub3B0LGk9e30sbj1qKCk7aWYoaz1mLnRpbWVsaW5lc1tkLl9zbGlkZWlkXS5sYXllcnNbZC5faWRdLCFrLmdlbmVyYXRlZHx8YS5yZWdlbmVyYXRlPT09ITApe2lmKGw9ay50aW1lbGluZSxrLmdlbmVyYXRlZD0hMCx2b2lkIDAhPT1kLmN1cnJlbnRfdGltZWxpbmUmJmEucmVnZW5lcmF0ZSE9PSEwPyhkLmN1cnJlbnRfdGltZWxpbmVfcGF1c2U9ZC5jdXJyZW50X3RpbWVsaW5lLnBhdXNlZCgpLGQuY3VycmVudF90aW1lbGluZV90aW1lPWQuY3VycmVudF90aW1lbGluZS50aW1lKCksZC5jdXJyZW50X2lzX25jX3RpbWVsaW5lPWw9PT1kLmN1cnJlbnRfdGltZWxpbmUsZC5zdGF0aWNfbGF5ZXJfdGltZWxpbmVfdGltZT1kLmN1cnJlbnRfdGltZWxpbmVfdGltZSk6KGQuc3RhdGljX2xheWVyX3RpbWVsaW5lX3RpbWU9ZC5jdXJyZW50X3RpbWVsaW5lX3RpbWUsZC5jdXJyZW50X3RpbWVsaW5lX3RpbWU9MCxkLmN1cnJlbnRfdGltZWxpbmUmJmQuY3VycmVudF90aW1lbGluZS5jbGVhcigpKSxsLmNsZWFyKCksaS5zdmc9dm9pZCAwIT1kLnN2Z19zcmMmJmMuZmluZCgic3ZnIiksaS5zdmcmJihkLmlkbGVzdmc9aChkLnN2Z19pZGxlLGcoKSkpLGQuaG92ZXJmcmFtZWluZGV4IT09LTEmJnZvaWQgMCE9PWQuaG92ZXJmcmFtZWluZGV4JiYhYy5oYXNDbGFzcygicnMtaG92ZXItcmVhZHkiKSl7aWYoYy5hZGRDbGFzcygicnMtaG92ZXItcmVhZHkiKSxkLmhvdmVydGltZWxpbmVzPXt9LGQuaG92ZXJhbmltPW0obixkLmZyYW1lc1tkLmhvdmVyZnJhbWVpbmRleF0udG8pLGQuaG92ZXJhbmltPXEoZC5ob3ZlcmFuaW0sZC5mcmFtZXNbZC5ob3ZlcmZyYW1laW5kZXhdLnN0eWxlKSxpLnN2Zyl7dmFyIHA9aChkLnN2Z19ob3ZlcixnKCkpO3ZvaWQgMCE9ZC5ob3ZlcmFuaW0uYW5pbS5jb2xvciYmKHAuYW5pbS5maWxsPWQuaG92ZXJhbmltLmFuaW0uY29sb3IsZC5pZGxlc3ZnLmFuaW0uZmlsbD1pLnN2Zy5jc3MoImNvbG9yIikpLGQuaG92ZXJzdmc9cH1jLmhvdmVyKGZ1bmN0aW9uKGEpe3ZhciBiPXtjYXB0aW9uOmpRdWVyeShhLmN1cnJlbnRUYXJnZXQpLG9wdDpmLGZpcnN0ZnJhbWU6ImZyYW1lXzAiLGxhc3RmcmFtZToiZnJhbWVfOTk5In0sZD0oZShiKSxiLmNhcHRpb24pLGc9ZC5kYXRhKCksaD1nLmZyYW1lc1tnLmhvdmVyZnJhbWVpbmRleF0saj0hMDtnLmZvcmNlaG92ZXI9aC5mb3JjZSxqJiYoZy5ob3ZlcnRpbWVsaW5lcy5pdGVtPXB1bmNoZ3MuVHdlZW5MaXRlLnRvKGQsaC5zcGVlZC8xZTMsZy5ob3ZlcmFuaW0uYW5pbSksKGcuaG92ZXJ6SW5kZXh8fGcuaG92ZXJhbmltLmFuaW0mJmcuaG92ZXJhbmltLmFuaW0uekluZGV4KSYmKGcuYmFzaWN6aW5kZXg9dm9pZCAwPT09Zy5iYXNpY3ppbmRleD9nLmNzc29iai56SW5kZXg6Zy5iYXNpY3ppbmRleCxnLmhvdmVyekluZGV4PXZvaWQgMD09PWcuaG92ZXJ6SW5kZXg/Zy5ob3ZlcmFuaW0uYW5pbS56SW5kZXg6Zy5ob3ZlcnpJbmRleCxnLmluaG92ZXJpbmFuaW1hdGlvbj0hMCwwPT09aC5zcGVlZCYmKGcuaW5ob3ZlcmluYW5pbWF0aW9uPSExKSxnLmhvdmVydGltZWxpbmVzLnB3aG92ZXJhbmltPXB1bmNoZ3MuVHdlZW5MaXRlLnRvKGcuX3B3LGguc3BlZWQvMWUzLHtvdmVyd3JpdGU6ImF1dG8iLHpJbmRleDpnLmhvdmVyekluZGV4fSksZy5ob3ZlcnRpbWVsaW5lcy5wd2hvdmVyYW5pbS5ldmVudENhbGxiYWNrKCJvbkNvbXBsZXRlIixmdW5jdGlvbihhKXthLmluaG92ZXJpbmFuaW1hdGlvbj0hMX0sW2ddKSksaS5zdmcmJihnLmhvdmVydGltZWxpbmVzLnN2Z2hvdmVyYW5pbT1wdW5jaGdzLlR3ZWVuTGl0ZS50byhbaS5zdmcsaS5zdmcuZmluZCgicGF0aCIpXSxoLnNwZWVkLzFlMyxnLmhvdmVyc3ZnLmFuaW0pKSxnLmhvdmVyZWRzdGF0dXM9ITApfSxmdW5jdGlvbihhKXt2YXIgYj17Y2FwdGlvbjpqUXVlcnkoYS5jdXJyZW50VGFyZ2V0KSxvcHQ6ZixmaXJzdGZyYW1lOiJmcmFtZV8wIixsYXN0ZnJhbWU6ImZyYW1lXzk5OSJ9LGQ9KGUoYiksYi5jYXB0aW9uKSxnPWQuZGF0YSgpLGg9Zy5mcmFtZXNbZy5ob3ZlcmZyYW1laW5kZXhdLGo9ITA7aiYmKGcuaG92ZXJlZHN0YXR1cz0hMSxnLmluaG92ZXJvdXRhbmltYXRpb249ITAsZy5ob3ZlcnRpbWVsaW5lcy5pdGVtLnBhdXNlKCksZy5ob3ZlcnRpbWVsaW5lcy5pdGVtPXB1bmNoZ3MuVHdlZW5MaXRlLnRvKGQsaC5zcGVlZC8xZTMsalF1ZXJ5LmV4dGVuZCghMCx7fSxnLl9nc1RyYW5zZm9ybVRvKSksMD09aC5zcGVlZCYmKGcuaW5ob3Zlcm91dGFuaW1hdGlvbj0hMSksZy5ob3ZlcnRpbWVsaW5lcy5pdGVtLmV2ZW50Q2FsbGJhY2soIm9uQ29tcGxldGUiLGZ1bmN0aW9uKGEpe2EuaW5ob3Zlcm91dGFuaW1hdGlvbj0hMX0sW2ddKSx2b2lkIDAhPT1nLmhvdmVydGltZWxpbmVzLnB3aG92ZXJhbmltJiYoZy5ob3ZlcnRpbWVsaW5lcy5wd2hvdmVyYW5pbT1wdW5jaGdzLlR3ZWVuTGl0ZS50byhnLl9wdyxoLnNwZWVkLzFlMyx7b3ZlcndyaXRlOiJhdXRvIix6SW5kZXg6Zy5iYXNpY3ppbmRleH0pKSxpLnN2ZyYmcHVuY2hncy5Ud2VlbkxpdGUudG8oW2kuc3ZnLGkuc3ZnLmZpbmQoInBhdGgiKV0saC5zcGVlZC8xZTMsZy5pZGxlc3ZnLmFuaW0pKX0pfWZvcih2YXIgcj0wO3I8ZC5mcmFtZXMubGVuZ3RoO3IrKylpZihyIT09ZC5ob3ZlcmZyYW1laW5kZXgpe3ZhciBzPXI9PT1kLmluZnJhbWVpbmRleD8iZnJhbWVfMCI6cj09PWQub3V0ZnJhbWVpbmRleHx8ImZyYW1lXzk5OSI9PT1kLmZyYW1lc1tyXS5mcmFtZT8iZnJhbWVfOTk5IjoiZnJhbWVfIityO2QuZnJhbWVzW3JdLmZyYW1lbmFtZT1zLGtbc109e30sa1tzXS50aW1lbGluZT1uZXcgcHVuY2hncy5UaW1lbGluZUxpdGUoe2FsaWduOiJub3JtYWwifSk7dmFyIHQ9ZC5mcmFtZXNbcl0uZGVsYXksdj0oZC50cmlnZ2VyZWRfc3RhcnRzdGF0dXMsdm9pZCAwIT09dD9qUXVlcnkuaW5BcnJheSh0LFsic2xpZGVlbnRlciIsImJ5dHJpZ2dlciIsIndhaXQiXSk+PTA/dDpwYXJzZUludCh0LDApLzFlMzoid2FpdCIpO3ZvaWQgMCE9PWsuZmlyc3RzbGlkZSYmImZyYW1lXzAiPT09cyYmKGwuYWRkTGFiZWwoInNsaWRlXyIray5maXJzdHNsaWRlKyJfcGF1c2UiLDApLGwuYWRkUGF1c2UoInNsaWRlXyIray5maXJzdHNsaWRlKyJfcGF1c2UiKSxsLmFkZExhYmVsKCJzbGlkZV8iK2suZmlyc3RzbGlkZSwiKz0wLjAwNSIpKSx2b2lkIDAhPT1rLmxhc3RzbGlkZSYmImZyYW1lXzk5OSI9PT1zJiYobC5hZGRMYWJlbCgic2xpZGVfIitrLmxhc3RzbGlkZSsiX3BhdXNlIiwiKz0wLjAxIiksbC5hZGRQYXVzZSgic2xpZGVfIitrLmxhc3RzbGlkZSsiX3BhdXNlIiksbC5hZGRMYWJlbCgic2xpZGVfIitrLmxhc3RzbGlkZSwiKz0wLjAwNSIpKSxqUXVlcnkuaXNOdW1lcmljKHYpP2wuYWRkTGFiZWwocywiKz0iK3YpOihsLmFkZExhYmVsKCJwYXVzZV8iK3IsIis9MC4wMSIpLGwuYWRkUGF1c2UoInBhdXNlXyIrciksbC5hZGRMYWJlbChzLCIrPTAuMDEiKSksbD1iLmNyZWF0ZUZyYW1lT25UaW1lbGluZSh7Y2FwdGlvbjphLmNhcHRpb24sdGltZWxpbmU6bCxsYWJlbDpzLGZyYW1laW5kZXg6cixvcHQ6Zn0pfWEucmVnZW5lcmF0ZXx8KGQuY3VycmVudF9pc19uY190aW1lbGluZSYmKGQuY3VycmVudF90aW1lbGluZT1sKSxkLmN1cnJlbnRfdGltZWxpbmVfcGF1c2U/bC5wYXVzZShkLmN1cnJlbnRfdGltZWxpbmVfdGltZSk6bC50aW1lKGQuY3VycmVudF90aW1lbGluZV90aW1lKSl9fSxjcmVhdGVGcmFtZU9uVGltZWxpbmU6ZnVuY3Rpb24oYSl7dmFyIGM9YS5jYXB0aW9uLGQ9Yy5kYXRhKCksZT1hLmxhYmVsLGc9YS50aW1lbGluZSxoPWEuZnJhbWVpbmRleCxqPWEub3B0LGs9YyxvPXt9LHA9ai50aW1lbGluZXNbZC5fc2xpZGVpZF0ubGF5ZXJzW2QuX2lkXSxxPWQuZnJhbWVzLmxlbmd0aC0xLHI9ZC5mcmFtZXNbaF0uc3BsaXQ7aWYoZC5ob3ZlcmZyYW1laW5kZXghPT0tMSYmZC5ob3ZlcmZyYW1laW5kZXg9PXEmJihxLT0xKSxvLmNvbnRlbnQ9bmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlKHthbGlnbjoibm9ybWFsIn0pLG8ubWFzaz1uZXcgcHVuY2hncy5UaW1lbGluZUxpdGUoe2FsaWduOiJub3JtYWwifSksdm9pZCAwPT09Zy52YXJzLmlkJiYoZy52YXJzLmlkPU1hdGgucm91bmQoMWU1Kk1hdGgucmFuZG9tKCkpKSwiY29sdW1uIj09PWQuX25jdHlwZSYmKGcuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChkLl9jYmdjX21hbix7ZGlzcGxheToiYmxvY2sifSksZSksZy5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGQuX2NiZ2NfYXV0byx7ZGlzcGxheToibm9uZSJ9KSxlKSksdm9pZCAwPT09ZC5teVNwbGl0VGV4dCYmZC5zcGxpdHRleHQpe3ZhciBzPWMuZmluZCgiYSIpLmxlbmd0aD4wP2MuZmluZCgiYSIpOmM7ZC5teVNwbGl0VGV4dD1uZXcgcHVuY2hncy5TcGxpdFRleHQocyx7dHlwZToiY2hhcnMsd29yZHMsbGluZXMiLGNoYXJzQ2xhc3M6InRwLXNwbGl0dGVkIHRwLWNoYXJzcGxpdCIsd29yZHNDbGFzczoidHAtc3BsaXR0ZWQgdHAtd29yZHNwbGl0IixsaW5lc0NsYXNzOiJ0cC1zcGxpdHRlZCB0cC1saW5lc3BsaXQifSksYy5hZGRDbGFzcygic3BsaXR0ZWQiKX12b2lkIDAhPT1kLm15U3BsaXRUZXh0JiZyJiZyLm1hdGNoKC9jaGFyc3x3b3Jkc3xsaW5lcy9nKSYmKGs9ZC5teVNwbGl0VGV4dFtyXSk7dmFyIHkseix0PWghPT1kLm91dGZyYW1laW5kZXg/bShmKCksZC5mcmFtZXNbaF0udG8pOnZvaWQgMCE9PWQuZnJhbWVzW2hdLnRvJiZudWxsPT09ZC5mcmFtZXNbaF0udG8ubWF0Y2goL2F1dG86YXV0by9nKT9tKGkoKSxkLmZyYW1lc1toXS50bywxPT1qLnNkaXIpOm0oaSgpLGQuZnJhbWVzW2QuaW5mcmFtZWluZGV4XS5mcm9tLDA9PWouc2RpciksdT12b2lkIDAhPT1kLmZyYW1lc1toXS5mcm9tP20odCxkLmZyYW1lc1tkLmluZnJhbWVpbmRleF0uZnJvbSwxPT1qLnNkaXIpOnZvaWQgMCx4PWQuZnJhbWVzW2hdLnNwbGl0ZGVsYXk7aWYoMCE9PWh8fGEuZnJvbWN1cnJlbnRzdGF0ZT96PW4oZC5mcmFtZXNbaF0ubWFzayk6eT1uKGQuZnJhbWVzW2hdLm1hc2spLHQuYW5pbS5lYXNlPXZvaWQgMD09PWQuZnJhbWVzW2hdLmVhc2U/cHVuY2hncy5Qb3dlcjEuZWFzZUluT3V0OmQuZnJhbWVzW2hdLmVhc2Usdm9pZCAwIT09dSYmKHUuYW5pbS5lYXNlPXZvaWQgMD09PWQuZnJhbWVzW2hdLmVhc2U/cHVuY2hncy5Qb3dlcjEuZWFzZUluT3V0OmQuZnJhbWVzW2hdLmVhc2UsdS5zcGVlZD12b2lkIDA9PT1kLmZyYW1lc1toXS5zcGVlZD91LnNwZWVkOmQuZnJhbWVzW2hdLnNwZWVkLHUuYW5pbS54PXUuYW5pbS54KmouYnd8fGwodS5hbmltLngsaixkLmVvdyxkLmVvaCxkLmNhbGN5LGQuY2FsY3gsImhvcml6b250YWwiKSx1LmFuaW0ueT11LmFuaW0ueSpqLmJ3fHxsKHUuYW5pbS55LGosZC5lb3csZC5lb2gsZC5jYWxjeSxkLmNhbGN4LCJ2ZXJ0aWNhbCIpKSx2b2lkIDAhPT10JiYodC5hbmltLmVhc2U9dm9pZCAwPT09ZC5mcmFtZXNbaF0uZWFzZT9wdW5jaGdzLlBvd2VyMS5lYXNlSW5PdXQ6ZC5mcmFtZXNbaF0uZWFzZSx0LnNwZWVkPXZvaWQgMD09PWQuZnJhbWVzW2hdLnNwZWVkP3Quc3BlZWQ6ZC5mcmFtZXNbaF0uc3BlZWQsdC5hbmltLng9dC5hbmltLngqai5id3x8bCh0LmFuaW0ueCxqLGQuZW93LGQuZW9oLGQuY2FsY3ksZC5jYWxjeCwiaG9yaXpvbnRhbCIpLHQuYW5pbS55PXQuYW5pbS55KmouYnd8fGwodC5hbmltLnksaixkLmVvdyxkLmVvaCxkLmNhbGN5LGQuY2FsY3gsInZlcnRpY2FsIikpLGMuZGF0YSgiaWZyYW1lcyIpJiZnLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYy5maW5kKCJpZnJhbWUiKSx7YXV0b0FscGhhOjF9KSxlKyIrPTAuMDAxIiksaD09PWQub3V0ZnJhbWVpbmRleCYmKGQuZnJhbWVzW2hdLnRvJiZkLmZyYW1lc1toXS50by5tYXRjaCgvYXV0bzphdXRvL2cpLHQuc3BlZWQ9dm9pZCAwPT09ZC5mcmFtZXNbaF0uc3BlZWR8fCJpbmhlcml0Ij09PWQuZnJhbWVzW2hdLnNwZWVkP2QuZnJhbWVzW2QuaW5mcmFtZWluZGV4XS5zcGVlZDpkLmZyYW1lc1toXS5zcGVlZCx0LmFuaW0uZWFzZT12b2lkIDA9PT1kLmZyYW1lc1toXS5lYXNlfHwiaW5oZXJpdCI9PT1kLmZyYW1lc1toXS5lYXNlP2QuZnJhbWVzW2QuaW5mcmFtZWluZGV4XS5lYXNlOmQuZnJhbWVzW2hdLmVhc2UsdC5hbmltLm92ZXJ3cml0ZT0iYXV0byIpLDAhPT1ofHxhLmZyb21jdXJyZW50c3RhdGUpMD09PWgmJmEuZnJvbWN1cnJlbnRzdGF0ZSYmKHQuc3BlZWQ9dS5zcGVlZCk7ZWxzZXtpZihrIT1jKXt2YXIgQT1qUXVlcnkuZXh0ZW5kKHt9LHQuYW5pbSwhMCk7Zy5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGMsdC5hbmltKSxlKSx0PWYoKSx0LmVhc2U9QS5lYXNlLHZvaWQgMCE9PUEuZmlsdGVyJiYodC5hbmltLmZpbHRlcj1BLmZpbHRlciksdm9pZCAwIT09QVsiLXdlYmtpdC1maWx0ZXIiXSYmKHQuYW5pbVsiLXdlYmtpdC1maWx0ZXIiXT1BWyItd2Via2l0LWZpbHRlciJdKX11LmFuaW0udmlzaWJpbGl0eT0iaGlkZGVuIix1LmFuaW0uaW1tZWRpYXRlUmVuZGVyPSEwLHQuYW5pbS52aXNpYmlsaXR5PSJ2aXNpYmxlIn1yZXR1cm4gYS5mcm9tY3VycmVudHN0YXRlJiYodC5hbmltLmltbWVkaWF0ZVJlbmRlcj0hMCksMCE9PWh8fGEuZnJvbWN1cnJlbnRzdGF0ZT9nLmFkZChvLmNvbnRlbnQuc3RhZ2dlclRvKGssdC5zcGVlZC8xZTMsdC5hbmltLHgpLGUpOmcuYWRkKG8uY29udGVudC5zdGFnZ2VyRnJvbVRvKGssdS5zcGVlZC8xZTMsdS5hbmltLHQuYW5pbSx4KSxlKSx2b2lkIDA9PT16fHx6PT09ITF8fDA9PT1oJiZhLmlnbm9yZWZpcnN0ZnJhbWV8fCh6LmFuaW0uZWFzZT12b2lkIDA9PT16LmFuaW0uZWFzZXx8ImluaGVyaXQiPT09ei5hbmltLmVhc2U/ZC5mcmFtZXNbMF0uZWFzZTp6LmFuaW0uZWFzZSx6LmFuaW0ub3ZlcmZsb3c9ImhpZGRlbiIsei5hbmltLng9ei5hbmltLngqai5id3x8bCh6LmFuaW0ueCxqLGQuZW93LGQuZW9oLGQuY2FsY3ksZC5jYWxjeCwiaG9yaXpvbnRhbCIpLHouYW5pbS55PXouYW5pbS55KmouYnd8fGwoei5hbmltLnksaixkLmVvdyxkLmVvaCxkLmNhbGN5LGQuY2FsY3gsInZlcnRpY2FsIikpLDA9PT1oJiZ5JiZ5IT09ITEmJiFhLmZyb21jdXJyZW50c3RhdGV8fDA9PT1oJiZhLmlnbm9yZWZpcnN0ZnJhbWU/KHo9bmV3IE9iamVjdCx6LmFuaW09bmV3IE9iamVjdCx6LmFuaW0ub3ZlcndyaXRlPSJhdXRvIix6LmFuaW0uZWFzZT10LmFuaW0uZWFzZSx6LmFuaW0ueD16LmFuaW0ueT0wLHkmJnkhPT0hMSYmKHkuYW5pbS54PXkuYW5pbS54KmouYnd8fGwoeS5hbmltLngsaixkLmVvdyxkLmVvaCxkLmNhbGN5LGQuY2FsY3gsImhvcml6b250YWwiKSx5LmFuaW0ueT15LmFuaW0ueSpqLmJ3fHxsKHkuYW5pbS55LGosZC5lb3csZC5lb2gsZC5jYWxjeSxkLmNhbGN4LCJ2ZXJ0aWNhbCIpLHkuYW5pbS5vdmVyZmxvdz0iaGlkZGVuIikpOjA9PT1oJiZnLmFkZChvLm1hc2suc2V0KGQuX213LHtvdmVyZmxvdzoidmlzaWJsZSJ9KSxlKSx2b2lkIDAhPT15JiZ2b2lkIDAhPT16JiZ5IT09ITEmJnohPT0hMT9nLmFkZChvLm1hc2suZnJvbVRvKGQuX213LHUuc3BlZWQvMWUzLHkuYW5pbSx6LmFuaW0seCksZSk6dm9pZCAwIT09eiYmeiE9PSExJiZnLmFkZChvLm1hc2sudG8oZC5fbXcsdC5zcGVlZC8xZTMsei5hbmltLHgpLGUpLGcuYWRkTGFiZWwoZSsiX2VuZCIpLGQuX2dzVHJhbnNmb3JtVG8mJmg9PT1xJiZkLmhvdmVyZWRzdGF0dXMmJihkLmhvdmVydGltZWxpbmVzLml0ZW09cHVuY2hncy5Ud2VlbkxpdGUudG8oYywwLGQuX2dzVHJhbnNmb3JtVG8pKSxkLl9nc1RyYW5zZm9ybVRvPSExLG8uY29udGVudC5ldmVudENhbGxiYWNrKCJvblN0YXJ0IixmdW5jdGlvbihhLGMsZCxlLGYsZyxoLGkpe3ZhciBrPXt9O2lmKGsubGF5ZXI9aCxrLmV2ZW50dHlwZT0wPT09YT8iZW50ZXJzdGFnZSI6YT09PWUub3V0ZnJhbWVpbmRleD8ibGVhdmVzdGFnZSI6ImZyYW1lc3RhcnRlZCIsay5sYXllcnR5cGU9aC5kYXRhKCJsYXllcnR5cGUiKSxlLmFjdGl2ZT0hMCxrLmZyYW1lX2luZGV4PWEsay5sYXllcnNldHRpbmdzPWguZGF0YSgpLGouYy50cmlnZ2VyKCJyZXZvbHV0aW9uLmxheWVyYWN0aW9uIixba10pLCJvbiI9PWUubG9vcGFuaW1hdGlvbiYmdyhlLl9sdyxqLmJ3KSwiZW50ZXJzdGFnZSI9PT1rLmV2ZW50dHlwZSYmKGUuYW5pbWRpcmVjdGlvbj0iaW4iLGUudmlzaWJsZWVsZW1lbnQ9ITAsYi50b2dnbGVTdGF0ZShlLmxheWVydG9nZ2xlZGJ5KSksIm5vbmUiIT09Yy5kY2hpbGRyZW4mJnZvaWQgMCE9PWMuZGNoaWxkcmVuJiZjLmRjaGlsZHJlbi5sZW5ndGg+MClpZigwPT09YSlmb3IodmFyIGw9MDtsPGMuZGNoaWxkcmVuLmxlbmd0aDtsKyspalF1ZXJ5KGMuZGNoaWxkcmVuW2xdKS5kYXRhKCJ0aW1lbGluZSIpLnBsYXkoMCk7ZWxzZSBpZihhPT09ZS5vdXRmcmFtZWluZGV4KWZvcih2YXIgbD0wO2w8Yy5kY2hpbGRyZW4ubGVuZ3RoO2wrKyliLmVuZE1vdmVDYXB0aW9uKHtjYXB0aW9uOmpRdWVyeShjLmRjaGlsZHJlbltsXSksb3B0OmosY2hlY2tjaGlsZHJlbnM6ITB9KTtwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZCx7dmlzaWJpbGl0eToidmlzaWJsZSJ9KSxlLmN1cnJlbnRfZnJhbWU9YSxlLmN1cnJlbnRfdGltZWxpbmU9ZixlLmN1cnJlbnRfdGltZWxpbmVfdGltZT1mLnRpbWUoKSxpJiYoZS5zdGF0aWNfbGF5ZXJfdGltZWxpbmVfdGltZT1lLmN1cnJlbnRfdGltZWxpbmVfdGltZSksZS5sYXN0X2ZyYW1lX3N0YXJ0ZWQ9YX0sW2gscCxkLl9wdyxkLGcsdC5hbmltLGMsYS51cGRhdGVTdGF0aWNUaW1lbGluZV0pLG8uY29udGVudC5ldmVudENhbGxiYWNrKCJvblVwZGF0ZSIsZnVuY3Rpb24oYSxiLGQsZSxmLGcsaCxpKXsiY29sdW1uIj09PWUuX25jdHlwZSYmdihjLGopLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChkLHt2aXNpYmlsaXR5OiJ2aXNpYmxlIn0pLGUuY3VycmVudF9mcmFtZT1nLGUuY3VycmVudF90aW1lbGluZT1mLGUuY3VycmVudF90aW1lbGluZV90aW1lPWYudGltZSgpLGkmJihlLnN0YXRpY19sYXllcl90aW1lbGluZV90aW1lPWUuY3VycmVudF90aW1lbGluZV90aW1lKSx2b2lkIDAhPT1lLmhvdmVyYW5pbSYmZS5fZ3NUcmFuc2Zvcm1Ubz09PSExJiYoZS5fZ3NUcmFuc2Zvcm1Ubz1oLGUuX2dzVHJhbnNmb3JtVG8mJmUuX2dzVHJhbnNmb3JtVG8uc3RhcnRBdCYmZGVsZXRlIGUuX2dzVHJhbnNmb3JtVG8uc3RhcnRBdCx2b2lkIDA9PT1lLmNzc29iai5zdHlsZVByb3BzLmNzcz9lLl9nc1RyYW5zZm9ybVRvPWpRdWVyeS5leHRlbmQoITAse30sZS5jc3NvYmouc3R5bGVQcm9wcyxlLl9nc1RyYW5zZm9ybVRvKTplLl9nc1RyYW5zZm9ybVRvPWpRdWVyeS5leHRlbmQoITAse30sZS5jc3NvYmouc3R5bGVQcm9wcy5jc3MsZS5fZ3NUcmFuc2Zvcm1UbykpLGUudmlzaWJsZWVsZW1lbnQ9ITB9LFtlLGQuX2lkLGQuX3B3LGQsZyxoLGpRdWVyeS5leHRlbmQoITAse30sdC5hbmltKSxhLnVwZGF0ZVN0YXRpY1RpbWVsaW5lXSksby5jb250ZW50LmV2ZW50Q2FsbGJhY2soIm9uQ29tcGxldGUiLGZ1bmN0aW9uKGEsZCxlLGYsZyxoLGkpe3ZhciBrPXt9O2subGF5ZXI9YyxrLmV2ZW50dHlwZT0wPT09YT8iZW50ZXJlZHN0YWdlIjphPT09ZC0xfHxhPT09ZT8ibGVmdHN0YWdlIjoiZnJhbWVlbmRlZCIsay5sYXllcnR5cGU9Yy5kYXRhKCJsYXllcnR5cGUiKSxrLmxheWVyc2V0dGluZ3M9Yy5kYXRhKCksai5jLnRyaWdnZXIoInJldm9sdXRpb24ubGF5ZXJhY3Rpb24iLFtrXSksImxlZnRzdGFnZSIhPT1rLmV2ZW50dHlwZSYmYi5hbmltY29tcGxldGVkKGMsaiksImxlZnRzdGFnZSI9PT1rLmV2ZW50dHlwZSYmYi5zdG9wVmlkZW8mJmIuc3RvcFZpZGVvKGMsaiksImNvbHVtbiI9PT1nLl9uY3R5cGUmJihwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZy5fY2JnY19tYW4se2Rpc3BsYXk6Im5vbmUifSkscHVuY2hncy5Ud2VlbkxpdGUuc2V0KGcuX2NiZ2NfYXV0byx7ZGlzcGxheToiYmxvY2sifSkpLCJsZWZ0c3RhZ2UiPT09ay5ldmVudHR5cGUmJihnLmFjdGl2ZT0hMSxwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZix7dmlzaWJpbGl0eToiaGlkZGVuIixvdmVyd3JpdGU6ImF1dG8ifSksZy5hbmltZGlyZWN0aW9uPSJvdXQiLGcudmlzaWJsZWVsZW1lbnQ9ITEsYi51blRvZ2dsZVN0YXRlKGcubGF5ZXJ0b2dnbGVkYnkpKSxnLmN1cnJlbnRfZnJhbWU9YSxnLmN1cnJlbnRfdGltZWxpbmU9aCxnLmN1cnJlbnRfdGltZWxpbmVfdGltZT1oLnRpbWUoKSxpJiYoZy5zdGF0aWNfbGF5ZXJfdGltZWxpbmVfdGltZT1nLmN1cnJlbnRfdGltZWxpbmVfdGltZSl9LFtoLGQuZnJhbWVzLmxlbmd0aCxxLGQuX3B3LGQsZyxhLnVwZGF0ZVN0YXRpY1RpbWVsaW5lXSksZ30sZW5kTW92ZUNhcHRpb246ZnVuY3Rpb24oYSl7YS5maXJzdGZyYW1lPSJmcmFtZV8wIixhLmxhc3RmcmFtZT0iZnJhbWVfOTk5Ijt2YXIgYz1lKGEpLGQ9YS5jYXB0aW9uLmRhdGEoKTtpZih2b2lkIDAhPT1hLmZyYW1lP2MudGltZWxpbmUucGxheShhLmZyYW1lKTooIWMuc3RhdGljfHxhLmN1cnJlbnRzbGlkZT49Yy5yZW1vdmVvbnNsaWRlfHxhLmN1cnJlbnRzbGlkZTxjLnNob3dvbnNsaWRlKSYmKGMub3V0bm93PW5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZSxjLnRpbWVsaW5lLnBhdXNlKCksZC52aXNpYmxlZWxlbWVudD09PSEwJiZiLmNyZWF0ZUZyYW1lT25UaW1lbGluZSh7Y2FwdGlvbjphLmNhcHRpb24sdGltZWxpbmU6Yy5vdXRub3csbGFiZWw6Im91dG5vdyIsZnJhbWVpbmRleDphLmNhcHRpb24uZGF0YSgib3V0ZnJhbWVpbmRleCIpLG9wdDphLm9wdCxmcm9tY3VycmVudHN0YXRlOiEwfSkucGxheSgpKSxhLmNoZWNrY2hpbGRyZW5zJiZjLnRpbWVsaW5lX29iaiYmYy50aW1lbGluZV9vYmouZGNoaWxkcmVuJiYibm9uZSIhPT1jLnRpbWVsaW5lX29iai5kY2hpbGRyZW4mJmMudGltZWxpbmVfb2JqLmRjaGlsZHJlbi5sZW5ndGg+MClmb3IodmFyIGY9MDtmPGMudGltZWxpbmVfb2JqLmRjaGlsZHJlbi5sZW5ndGg7ZisrKWIuZW5kTW92ZUNhcHRpb24oe2NhcHRpb246alF1ZXJ5KGMudGltZWxpbmVfb2JqLmRjaGlsZHJlbltmXSksb3B0OmEub3B0fSl9LHBsYXlBbmltYXRpb25GcmFtZTpmdW5jdGlvbihhKXthLmZpcnN0ZnJhbWU9YS50cmlnZ2VyZnJhbWVpbixhLmxhc3RmcmFtZT1hLnRyaWdnZXJmcmFtZW91dDt2YXIgZixjPWUoYSksZD1hLmNhcHRpb24uZGF0YSgpLGc9MDtmb3IodmFyIGggaW4gZC5mcmFtZXMpZC5mcmFtZXNbaF0uZnJhbWVuYW1lPT09YS5mcmFtZSYmKGY9ZyksZysrO3ZvaWQgMCE9PWQudHJpZ2dlcmVkdGltZWxpbmUmJmQudHJpZ2dlcmVkdGltZWxpbmUucGF1c2UoKSxkLnRyaWdnZXJlZHRpbWVsaW5lPW5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZSxjLnRpbWVsaW5lLnBhdXNlKCk7dmFyIGk9ZC52aXNpYmxlZWxlbWVudD09PSEwO2QudHJpZ2dlcmVkdGltZWxpbmU9Yi5jcmVhdGVGcmFtZU9uVGltZWxpbmUoe2NhcHRpb246YS5jYXB0aW9uLHRpbWVsaW5lOmQudHJpZ2dlcmVkdGltZWxpbmUsbGFiZWw6InRyaWdnZXJlZCIsZnJhbWVpbmRleDpmLHVwZGF0ZVN0YXRpY1RpbWVsaW5lOiEwLG9wdDphLm9wdCxpZ25vcmVmaXJzdGZyYW1lOiEwLGZyb21jdXJyZW50c3RhdGU6aX0pLnBsYXkoKX0scmVtb3ZlVGhlQ2FwdGlvbnM6ZnVuY3Rpb24oYSxjKXtpZigic3RvcCI9PT1iLmNvbXBhcmVfdmVyc2lvbihkKS5jaGVjaylyZXR1cm4hMTt2YXIgZj1hLmRhdGEoImluZGV4IiksZz1uZXcgQXJyYXk7Yy5sYXllcnNbZl0mJmpRdWVyeS5lYWNoKGMubGF5ZXJzW2ZdLGZ1bmN0aW9uKGEsYil7Zy5wdXNoKGIpfSk7dmFyIGg9Yi5jdXJyZW50U2xpZGVJbmRleChjKTtnJiZqUXVlcnkuZWFjaChnLGZ1bmN0aW9uKGEpe3ZhciBkPWpRdWVyeSh0aGlzKTsiY2Fyb3VzZWwiPT09Yy5zbGlkZXJUeXBlJiYib24iPT09Yy5jYXJvdXNlbC5zaG93TGF5ZXJzQWxsVGltZT8oY2xlYXJUaW1lb3V0KGQuZGF0YSgidmlkZW9wbGF5d2FpdCIpKSxiLnN0b3BWaWRlbyYmYi5zdG9wVmlkZW8oZCxjKSxiLnJlbW92ZU1lZGlhRnJvbUxpc3QmJmIucmVtb3ZlTWVkaWFGcm9tTGlzdChkLGMpLGMubGFzdHBsYXllZHZpZGVvcz1bXSk6KHgoZCksY2xlYXJUaW1lb3V0KGQuZGF0YSgidmlkZW9wbGF5d2FpdCIpKSxiLmVuZE1vdmVDYXB0aW9uKHtjYXB0aW9uOmQsb3B0OmMsY3VycmVudHNsaWRlOmh9KSxiLnJlbW92ZU1lZGlhRnJvbUxpc3QmJmIucmVtb3ZlTWVkaWFGcm9tTGlzdChkLGMpLGMubGFzdHBsYXllZHZpZGVvcz1bXSl9KX19KTt2YXIgZT1mdW5jdGlvbihhKXt2YXIgYj17fTtyZXR1cm4gYS5maXJzdGZyYW1lPXZvaWQgMD09PWEuZmlyc3RmcmFtZT8iZnJhbWVfMCI6YS5maXJzdGZyYW1lLGEubGFzdGZyYW1lPXZvaWQgMD09PWEubGFzdGZyYW1lPyJmcmFtZV85OTkiOmEubGFzdGZyYW1lLGIuaWQ9YS5jYXB0aW9uLmRhdGEoImlkIil8fGEuY2FwdGlvbi5hdHRyKCJpZCIpLGIuc2xpZGVpZD1hLmNhcHRpb24uZGF0YSgic2xpZGVpZCIpfHxhLmNhcHRpb24uY2xvc2VzdCgiLnRwLXJldnNsaWRlci1zbGlkZXNsaSIpLmRhdGEoImluZGV4IiksYi50aW1lbGluZV9vYmo9YS5vcHQudGltZWxpbmVzW2Iuc2xpZGVpZF0ubGF5ZXJzW2IuaWRdLGIudGltZWxpbmU9Yi50aW1lbGluZV9vYmoudGltZWxpbmUsYi5mZnM9Yi50aW1lbGluZS5nZXRMYWJlbFRpbWUoYS5maXJzdGZyYW1lKSxiLmZmZT1iLnRpbWVsaW5lLmdldExhYmVsVGltZShhLmZpcnN0ZnJhbWUrIl9lbmQiKSxiLmxmcz1iLnRpbWVsaW5lLmdldExhYmVsVGltZShhLmxhc3RmcmFtZSksYi5sZmU9Yi50aW1lbGluZS5nZXRMYWJlbFRpbWUoYS5sYXN0ZnJhbWUrIl9lbmQiKSxiLmN0PWIudGltZWxpbmUudGltZSgpLGIuc3RhdGljPXZvaWQgMCE9Yi50aW1lbGluZV9vYmouZmlyc3RzbGlkZXx8dm9pZCAwIT1iLnRpbWVsaW5lX29iai5sYXN0c2xpZGUsYi5zdGF0aWMmJihiLnNob3dvbnNsaWRlPWIudGltZWxpbmVfb2JqLmZpcnN0c2xpZGUsYi5yZW1vdmVvbnNsaWRlPWIudGltZWxpbmVfb2JqLmxhc3RzbGlkZSksYn0sZj1mdW5jdGlvbihhKXtyZXR1cm4gYT12b2lkIDA9PT1hP25ldyBPYmplY3Q6YSxhLmFuaW09dm9pZCAwPT09YS5hbmltP25ldyBPYmplY3Q6YS5hbmltLGEuYW5pbS54PXZvaWQgMD09PWEuYW5pbS54PzA6YS5hbmltLngsYS5hbmltLnk9dm9pZCAwPT09YS5hbmltLnk/MDphLmFuaW0ueSxhLmFuaW0uej12b2lkIDA9PT1hLmFuaW0uej8wOmEuYW5pbS56LGEuYW5pbS5yb3RhdGlvblg9dm9pZCAwPT09YS5hbmltLnJvdGF0aW9uWD8wOmEuYW5pbS5yb3RhdGlvblgsYS5hbmltLnJvdGF0aW9uWT12b2lkIDA9PT1hLmFuaW0ucm90YXRpb25ZPzA6YS5hbmltLnJvdGF0aW9uWSxhLmFuaW0ucm90YXRpb25aPXZvaWQgMD09PWEuYW5pbS5yb3RhdGlvblo/MDphLmFuaW0ucm90YXRpb25aLGEuYW5pbS5zY2FsZVg9dm9pZCAwPT09YS5hbmltLnNjYWxlWD8xOmEuYW5pbS5zY2FsZVgsYS5hbmltLnNjYWxlWT12b2lkIDA9PT1hLmFuaW0uc2NhbGVZPzE6YS5hbmltLnNjYWxlWSxhLmFuaW0uc2tld1g9dm9pZCAwPT09YS5hbmltLnNrZXdYPzA6YS5hbmltLnNrZXdYLGEuYW5pbS5za2V3WT12b2lkIDA9PT1hLmFuaW0uc2tld1k/MDphLmFuaW0uc2tld1ksYS5hbmltLm9wYWNpdHk9dm9pZCAwPT09YS5hbmltLm9wYWNpdHk/MTphLmFuaW0ub3BhY2l0eSxhLmFuaW0udHJhbnNmb3JtT3JpZ2luPXZvaWQgMD09PWEuYW5pbS50cmFuc2Zvcm1PcmlnaW4/IjUwJSA1MCUiOmEuYW5pbS50cmFuc2Zvcm1PcmlnaW4sYS5hbmltLnRyYW5zZm9ybVBlcnNwZWN0aXZlPXZvaWQgMD09PWEuYW5pbS50cmFuc2Zvcm1QZXJzcGVjdGl2ZT82MDA6YS5hbmltLnRyYW5zZm9ybVBlcnNwZWN0aXZlLGEuYW5pbS5yb3RhdGlvbj12b2lkIDA9PT1hLmFuaW0ucm90YXRpb24/MDphLmFuaW0ucm90YXRpb24sYS5hbmltLmZvcmNlM0Q9dm9pZCAwPT09YS5hbmltLmZvcmNlM0Q/ImF1dG8iOmEuYW5pbS5mb3JjZTNELGEuYW5pbS5hdXRvQWxwaGE9dm9pZCAwPT09YS5hbmltLmF1dG9BbHBoYT8xOmEuYW5pbS5hdXRvQWxwaGEsYS5hbmltLnZpc2liaWxpdHk9dm9pZCAwPT09YS5hbmltLnZpc2liaWxpdHk/InZpc2libGUiOmEuYW5pbS52aXNpYmlsaXR5LGEuYW5pbS5vdmVyd3JpdGU9dm9pZCAwPT09YS5hbmltLm92ZXJ3cml0ZT8iYXV0byI6YS5hbmltLm92ZXJ3cml0ZSxhLnNwZWVkPXZvaWQgMD09PWEuc3BlZWQ/LjM6YS5zcGVlZCxhLmZpbHRlcj12b2lkIDA9PT1hLmZpbHRlcj8iYmx1cigwcHgpIGdyYXlzY2FsZSgwcHgpIjphLmZpbHRlcixhWyItd2Via2l0LWZpbHRlciJdPXZvaWQgMD09PWFbIi13ZWJraXQtZmlsdGVyIl0/ImJsdXIoMHB4KSBncmF5c2NhbGUoMHB4KSI6YVsiLXdlYmtpdC1maWx0ZXIiXSxhfSxnPWZ1bmN0aW9uKCl7dmFyIGE9bmV3IE9iamVjdDtyZXR1cm4gYS5hbmltPW5ldyBPYmplY3QsYS5hbmltLnN0cm9rZT0ibm9uZSIsYS5hbmltLnN0cm9rZVdpZHRoPTAsYS5hbmltLnN0cm9rZURhc2hhcnJheT0ibm9uZSIsYS5hbmltLnN0cm9rZURhc2hvZmZzZXQ9IjAiLGF9LGg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLnNwbGl0KCI7Iik7cmV0dXJuIGMmJmpRdWVyeS5lYWNoKGMsZnVuY3Rpb24oYSxjKXt2YXIgZD1jLnNwbGl0KCI6IiksZT1kWzBdLGY9ZFsxXTsic2MiPT1lJiYoYi5hbmltLnN0cm9rZT1mKSwic3ciPT1lJiYoYi5hbmltLnN0cm9rZVdpZHRoPWYpLCJzZGEiPT1lJiYoYi5hbmltLnN0cm9rZURhc2hhcnJheT1mKSwic2RvIj09ZSYmKGIuYW5pbS5zdHJva2VEYXNob2Zmc2V0PWYpfSksYn0saT1mdW5jdGlvbigpe3ZhciBhPW5ldyBPYmplY3Q7cmV0dXJuIGEuYW5pbT1uZXcgT2JqZWN0LGEuYW5pbS54PTAsYS5hbmltLnk9MCxhLmFuaW0uej0wLGF9LGo9ZnVuY3Rpb24oKXt2YXIgYT1uZXcgT2JqZWN0O3JldHVybiBhLmFuaW09bmV3IE9iamVjdCxhLnNwZWVkPS4yLGF9LGs9ZnVuY3Rpb24oYSxiKXtpZihqUXVlcnkuaXNOdW1lcmljKHBhcnNlRmxvYXQoYSkpKXJldHVybiBwYXJzZUZsb2F0KGEpO2lmKHZvaWQgMD09PWF8fCJpbmhlcml0Ij09PWEpcmV0dXJuIGI7DQppZihhLnNwbGl0KCJ7IikubGVuZ3RoPjEpe3ZhciBjPWEuc3BsaXQoIiwiKSxkPXBhcnNlRmxvYXQoY1sxXS5zcGxpdCgifSIpWzBdKTtjPXBhcnNlRmxvYXQoY1swXS5zcGxpdCgieyIpWzFdKSxhPU1hdGgucmFuZG9tKCkqKGQtYykrY31yZXR1cm4gYX0sbD1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXtyZXR1cm4halF1ZXJ5LmlzTnVtZXJpYyhhKSYmYS5tYXRjaCgvJV0vZyk/KGE9YS5zcGxpdCgiWyIpWzFdLnNwbGl0KCJdIilbMF0sImhvcml6b250YWwiPT1nP2E9KGMrMikqcGFyc2VJbnQoYSwwKS8xMDA6InZlcnRpY2FsIj09ZyYmKGE9KGQrMikqcGFyc2VJbnQoYSwwKS8xMDApKTooYT0ibGF5ZXJfbGVmdCI9PT1hPzAtYzoibGF5ZXJfcmlnaHQiPT09YT9jOmEsYT0ibGF5ZXJfdG9wIj09PWE/MC1kOiJsYXllcl9ib3R0b20iPT09YT9kOmEsYT0ibGVmdCI9PT1hfHwic3RhZ2VfbGVmdCI9PT1hPzAtYy1mOiJyaWdodCI9PT1hfHwic3RhZ2VfcmlnaHQiPT09YT9iLmNvbnctZjoiY2VudGVyIj09PWF8fCJzdGFnZV9jZW50ZXIiPT09YT9iLmNvbncvMi1jLzItZjphLGE9InRvcCI9PT1hfHwic3RhZ2VfdG9wIj09PWE/MC1kLWU6ImJvdHRvbSI9PT1hfHwic3RhZ2VfYm90dG9tIj09PWE/Yi5jb25oLWU6Im1pZGRsZSI9PT1hfHwic3RhZ2VfbWlkZGxlIj09PWE/Yi5jb25oLzItZC8yLWU6YSksYX0sbT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmV3IE9iamVjdDtpZihkPWpRdWVyeS5leHRlbmQoITAse30sZCxhKSx2b2lkIDA9PT1iKXJldHVybiBkO3ZhciBlPWIuc3BsaXQoIjsiKSxmPSIiO3JldHVybiBlJiZqUXVlcnkuZWFjaChlLGZ1bmN0aW9uKGEsYil7dmFyIGU9Yi5zcGxpdCgiOiIpLGc9ZVswXSxoPWVbMV07YyYmdm9pZCAwIT1oJiZoLmxlbmd0aD4wJiZoLm1hdGNoKC9cKFJcKS8pJiYoaD1oLnJlcGxhY2UoIihSKSIsIiIpLGg9InJpZ2h0Ij09PWg/ImxlZnQiOiJsZWZ0Ij09PWg/InJpZ2h0IjoidG9wIj09PWg/ImJvdHRvbSI6ImJvdHRvbSI9PT1oPyJ0b3AiOmgsIlsiPT09aFswXSYmIi0iPT09aFsxXT9oPWgucmVwbGFjZSgiWy0iLCJbIik6IlsiPT09aFswXSYmIi0iIT09aFsxXT9oPWgucmVwbGFjZSgiWyIsIlstIik6Ii0iPT09aFswXT9oPWgucmVwbGFjZSgiLSIsIiIpOmhbMF0ubWF0Y2goL1sxLTldLykmJihoPSItIitoKSksdm9pZCAwIT1oJiYoaD1oLnJlcGxhY2UoL1woUlwpLywiIiksInJvdGF0aW9uWCIhPWcmJiJyWCIhPWd8fChkLmFuaW0ucm90YXRpb25YPWsoaCxkLmFuaW0ucm90YXRpb25YKSsiZGVnIiksInJvdGF0aW9uWSIhPWcmJiJyWSIhPWd8fChkLmFuaW0ucm90YXRpb25ZPWsoaCxkLmFuaW0ucm90YXRpb25ZKSsiZGVnIiksInJvdGF0aW9uWiIhPWcmJiJyWiIhPWd8fChkLmFuaW0ucm90YXRpb249ayhoLGQuYW5pbS5yb3RhdGlvblopKyJkZWciKSwic2NhbGVYIiE9ZyYmInNYIiE9Z3x8KGQuYW5pbS5zY2FsZVg9ayhoLGQuYW5pbS5zY2FsZVgpKSwic2NhbGVZIiE9ZyYmInNZIiE9Z3x8KGQuYW5pbS5zY2FsZVk9ayhoLGQuYW5pbS5zY2FsZVkpKSwib3BhY2l0eSIhPWcmJiJvIiE9Z3x8KGQuYW5pbS5vcGFjaXR5PWsoaCxkLmFuaW0ub3BhY2l0eSkpLCJmYiI9PWcmJihmPSIiPT09Zj8iYmx1cigiK3BhcnNlSW50KGgsMCkrInB4KSI6ZisiIGJsdXIoIitwYXJzZUludChoLDApKyJweCkiKSwiZmciPT1nJiYoZj0iIj09PWY/ImdyYXlzY2FsZSgiK3BhcnNlSW50KGgsMCkrIiUpIjpmKyIgZ3JheXNjYWxlKCIrcGFyc2VJbnQoaCwwKSsiJSkiKSwwPT09ZC5hbmltLm9wYWNpdHkmJihkLmFuaW0uYXV0b0FscGhhPTApLGQuYW5pbS5vcGFjaXR5PTA9PWQuYW5pbS5vcGFjaXR5PzFlLTQ6ZC5hbmltLm9wYWNpdHksInNrZXdYIiE9ZyYmInNrWCIhPWd8fChkLmFuaW0uc2tld1g9ayhoLGQuYW5pbS5za2V3WCkpLCJza2V3WSIhPWcmJiJza1kiIT1nfHwoZC5hbmltLnNrZXdZPWsoaCxkLmFuaW0uc2tld1kpKSwieCI9PWcmJihkLmFuaW0ueD1rKGgsZC5hbmltLngpKSwieSI9PWcmJihkLmFuaW0ueT1rKGgsZC5hbmltLnkpKSwieiI9PWcmJihkLmFuaW0uej1rKGgsZC5hbmltLnopKSwidHJhbnNmb3JtT3JpZ2luIiE9ZyYmInRPIiE9Z3x8KGQuYW5pbS50cmFuc2Zvcm1PcmlnaW49aC50b1N0cmluZygpKSwidHJhbnNmb3JtUGVyc3BlY3RpdmUiIT1nJiYidFAiIT1nfHwoZC5hbmltLnRyYW5zZm9ybVBlcnNwZWN0aXZlPXBhcnNlSW50KGgsMCkpLCJzcGVlZCIhPWcmJiJzIiE9Z3x8KGQuc3BlZWQ9cGFyc2VGbG9hdChoKSkpfSksIiIhPT1mJiYoZC5hbmltWyItd2Via2l0LWZpbHRlciJdPWYsZC5hbmltLmZpbHRlcj1mKSxkfSxuPWZ1bmN0aW9uKGEpe2lmKHZvaWQgMD09PWEpcmV0dXJuITE7dmFyIGI9bmV3IE9iamVjdDtiLmFuaW09bmV3IE9iamVjdDt2YXIgYz1hLnNwbGl0KCI7Iik7cmV0dXJuIGMmJmpRdWVyeS5lYWNoKGMsZnVuY3Rpb24oYSxjKXtjPWMuc3BsaXQoIjoiKTt2YXIgZD1jWzBdLGU9Y1sxXTsieCI9PWQmJihiLmFuaW0ueD1lKSwieSI9PWQmJihiLmFuaW0ueT1lKSwicyI9PWQmJihiLnNwZWVkPXBhcnNlRmxvYXQoZSkpLCJlIiE9ZCYmImVhc2UiIT1kfHwoYi5hbmltLmVhc2U9ZSl9KSxifSxvPWZ1bmN0aW9uKGEsYixjKXtpZih2b2lkIDA9PWEmJihhPTApLCFqUXVlcnkuaXNBcnJheShhKSYmInN0cmluZyI9PT1qUXVlcnkudHlwZShhKSYmKGEuc3BsaXQoIiwiKS5sZW5ndGg+MXx8YS5zcGxpdCgiWyIpLmxlbmd0aD4xKSl7YT1hLnJlcGxhY2UoIlsiLCIiKSxhPWEucmVwbGFjZSgiXSIsIiIpO3ZhciBkPWEubWF0Y2goLycvZyk/YS5zcGxpdCgiJywiKTphLnNwbGl0KCIsIik7YT1uZXcgQXJyYXksZCYmalF1ZXJ5LmVhY2goZCxmdW5jdGlvbihiLGMpe2M9Yy5yZXBsYWNlKCInIiwiIiksYz1jLnJlcGxhY2UoIiciLCIiKSxhLnB1c2goYyl9KX1lbHNle3ZhciBlPWE7alF1ZXJ5LmlzQXJyYXkoYSl8fChhPW5ldyBBcnJheSxhLnB1c2goZSkpfXZhciBlPWFbYS5sZW5ndGgtMV07aWYoYS5sZW5ndGg8Yi5ybGUpZm9yKHZhciBmPTE7Zjw9Yi5jdXJXaW5SYW5nZTtmKyspYS5wdXNoKGUpO3JldHVybiBhfSxxPWZ1bmN0aW9uKGEsYil7aWYodm9pZCAwPT09YilyZXR1cm4gYTtiPWIucmVwbGFjZSgiYzoiLCJjb2xvcjoiKSxiPWIucmVwbGFjZSgiYmc6IiwiYmFja2dyb3VuZC1jb2xvcjoiKSxiPWIucmVwbGFjZSgiYnc6IiwiYm9yZGVyLXdpZHRoOiIpLGI9Yi5yZXBsYWNlKCJiYzoiLCJib3JkZXItY29sb3I6IiksYj1iLnJlcGxhY2UoImJyOiIsImJvcmRlclJhZGl1czoiKSxiPWIucmVwbGFjZSgiYnM6IiwiYm9yZGVyLXN0eWxlOiIpLGI9Yi5yZXBsYWNlKCJ0ZDoiLCJ0ZXh0LWRlY29yYXRpb246IiksYj1iLnJlcGxhY2UoInppOiIsInpJbmRleDoiKTt2YXIgYz1iLnNwbGl0KCI7Iik7cmV0dXJuIGMmJmpRdWVyeS5lYWNoKGMsZnVuY3Rpb24oYixjKXt2YXIgZD1jLnNwbGl0KCI6Iik7ZFswXS5sZW5ndGg+MCYmKGEuYW5pbVtkWzBdXT1kWzFdKX0pLGF9LHI9ZnVuY3Rpb24oYSxiKXt2YXIgZSxjPW5ldyBPYmplY3QsZD0hMTtpZigicmVrdXJzaXZlIj09YiYmKGU9YS5jbG9zZXN0KCIudHAtY2FwdGlvbiIpLGUmJmEuY3NzKCJmb250U2l6ZSIpPT09ZS5jc3MoImZvbnRTaXplIikmJmEuY3NzKCJmb250V2VpZ2h0Iik9PT1lLmNzcygiZm9udFdlaWdodCIpJiZhLmNzcygibGluZUhlaWdodCIpPT09ZS5jc3MoImxpbmVIZWlnaHQiKSYmKGQ9ITApKSxjLmJhc2VhbGlnbj1hLmRhdGEoImJhc2VhbGlnbiIpfHwiZ3JpZCIsYy5mb250U2l6ZT1kP3ZvaWQgMD09PWUuZGF0YSgiZm9udHNpemUiKT9wYXJzZUludChlLmNzcygiZm9udFNpemUiKSwwKXx8MDplLmRhdGEoImZvbnRzaXplIik6dm9pZCAwPT09YS5kYXRhKCJmb250c2l6ZSIpP3BhcnNlSW50KGEuY3NzKCJmb250U2l6ZSIpLDApfHwwOmEuZGF0YSgiZm9udHNpemUiKSxjLmZvbnRXZWlnaHQ9ZD92b2lkIDA9PT1lLmRhdGEoImZvbnR3ZWlnaHQiKT9wYXJzZUludChlLmNzcygiZm9udFdlaWdodCIpLDApfHwwOmUuZGF0YSgiZm9udHdlaWdodCIpOnZvaWQgMD09PWEuZGF0YSgiZm9udHdlaWdodCIpP3BhcnNlSW50KGEuY3NzKCJmb250V2VpZ2h0IiksMCl8fDA6YS5kYXRhKCJmb250d2VpZ2h0IiksYy53aGl0ZVNwYWNlPWQ/dm9pZCAwPT09ZS5kYXRhKCJ3aGl0ZXNwYWNlIik/ZS5jc3MoIndoaXRlc3BhY2UiKXx8Im5vcm1hbCI6ZS5kYXRhKCJ3aGl0ZXNwYWNlIik6dm9pZCAwPT09YS5kYXRhKCJ3aGl0ZXNwYWNlIik/YS5jc3MoIndoaXRlc3BhY2UiKXx8Im5vcm1hbCI6YS5kYXRhKCJ3aGl0ZXNwYWNlIiksYy50ZXh0QWxpZ249ZD92b2lkIDA9PT1lLmRhdGEoInRleHRhbGlnbiIpP2UuY3NzKCJ0ZXh0YWxpZ24iKXx8ImluaGVyaXQiOmUuZGF0YSgidGV4dGFsaWduIik6dm9pZCAwPT09YS5kYXRhKCJ0ZXh0YWxpZ24iKT9hLmNzcygidGV4dGFsaWduIil8fCJpbmhlcml0IjphLmRhdGEoInRleHRhbGlnbiIpLGMuekluZGV4PWQ/dm9pZCAwPT09ZS5kYXRhKCJ6SW5kZXgiKT9lLmNzcygiekluZGV4Iil8fCJpbmhlcml0IjplLmRhdGEoInpJbmRleCIpOnZvaWQgMD09PWEuZGF0YSgiekluZGV4Iik/YS5jc3MoInpJbmRleCIpfHwiaW5oZXJpdCI6YS5kYXRhKCJ6SW5kZXgiKSxqUXVlcnkuaW5BcnJheShhLmRhdGEoImxheWVydHlwZSIpLFsidmlkZW8iLCJpbWFnZSIsImF1ZGlvIl0pIT09LTF8fGEuaXMoImltZyIpP2MubGluZUhlaWdodD0wOmMubGluZUhlaWdodD1kP3ZvaWQgMD09PWUuZGF0YSgibGluZWhlaWdodCIpP3BhcnNlSW50KGUuY3NzKCJsaW5lSGVpZ2h0IiksMCl8fDA6ZS5kYXRhKCJsaW5laGVpZ2h0Iik6dm9pZCAwPT09YS5kYXRhKCJsaW5laGVpZ2h0Iik/cGFyc2VJbnQoYS5jc3MoImxpbmVIZWlnaHQiKSwwKXx8MDphLmRhdGEoImxpbmVoZWlnaHQiKSxjLmxldHRlclNwYWNpbmc9ZD92b2lkIDA9PT1lLmRhdGEoImxldHRlcnNwYWNpbmciKT9wYXJzZUZsb2F0KGUuY3NzKCJsZXR0ZXJTcGFjaW5nIiksMCl8fDA6ZS5kYXRhKCJsZXR0ZXJzcGFjaW5nIik6dm9pZCAwPT09YS5kYXRhKCJsZXR0ZXJzcGFjaW5nIik/cGFyc2VGbG9hdChhLmNzcygibGV0dGVyU3BhY2luZyIpKXx8MDphLmRhdGEoImxldHRlcnNwYWNpbmciKSxjLnBhZGRpbmdUb3A9dm9pZCAwPT09YS5kYXRhKCJwYWRkaW5ndG9wIik/cGFyc2VJbnQoYS5jc3MoInBhZGRpbmdUb3AiKSwwKXx8MDphLmRhdGEoInBhZGRpbmd0b3AiKSxjLnBhZGRpbmdCb3R0b209dm9pZCAwPT09YS5kYXRhKCJwYWRkaW5nYm90dG9tIik/cGFyc2VJbnQoYS5jc3MoInBhZGRpbmdCb3R0b20iKSwwKXx8MDphLmRhdGEoInBhZGRpbmdib3R0b20iKSxjLnBhZGRpbmdMZWZ0PXZvaWQgMD09PWEuZGF0YSgicGFkZGluZ2xlZnQiKT9wYXJzZUludChhLmNzcygicGFkZGluZ0xlZnQiKSwwKXx8MDphLmRhdGEoInBhZGRpbmdsZWZ0IiksYy5wYWRkaW5nUmlnaHQ9dm9pZCAwPT09YS5kYXRhKCJwYWRkaW5ncmlnaHQiKT9wYXJzZUludChhLmNzcygicGFkZGluZ1JpZ2h0IiksMCl8fDA6YS5kYXRhKCJwYWRkaW5ncmlnaHQiKSxjLm1hcmdpblRvcD12b2lkIDA9PT1hLmRhdGEoIm1hcmdpbnRvcCIpP3BhcnNlSW50KGEuY3NzKCJtYXJnaW5Ub3AiKSwwKXx8MDphLmRhdGEoIm1hcmdpbnRvcCIpLGMubWFyZ2luQm90dG9tPXZvaWQgMD09PWEuZGF0YSgibWFyZ2luYm90dG9tIik/cGFyc2VJbnQoYS5jc3MoIm1hcmdpbkJvdHRvbSIpLDApfHwwOmEuZGF0YSgibWFyZ2luYm90dG9tIiksYy5tYXJnaW5MZWZ0PXZvaWQgMD09PWEuZGF0YSgibWFyZ2lubGVmdCIpP3BhcnNlSW50KGEuY3NzKCJtYXJnaW5MZWZ0IiksMCl8fDA6YS5kYXRhKCJtYXJnaW5sZWZ0IiksYy5tYXJnaW5SaWdodD12b2lkIDA9PT1hLmRhdGEoIm1hcmdpbnJpZ2h0Iik/cGFyc2VJbnQoYS5jc3MoIm1hcmdpblJpZ2h0IiksMCl8fDA6YS5kYXRhKCJtYXJnaW5yaWdodCIpLGMuYm9yZGVyVG9wV2lkdGg9dm9pZCAwPT09YS5kYXRhKCJib3JkZXJ0b3B3aWR0aCIpP3BhcnNlSW50KGEuY3NzKCJib3JkZXJUb3BXaWR0aCIpLDApfHwwOmEuZGF0YSgiYm9yZGVydG9wd2lkdGgiKSxjLmJvcmRlckJvdHRvbVdpZHRoPXZvaWQgMD09PWEuZGF0YSgiYm9yZGVyYm90dG9td2lkdGgiKT9wYXJzZUludChhLmNzcygiYm9yZGVyQm90dG9tV2lkdGgiKSwwKXx8MDphLmRhdGEoImJvcmRlcmJvdHRvbXdpZHRoIiksYy5ib3JkZXJMZWZ0V2lkdGg9dm9pZCAwPT09YS5kYXRhKCJib3JkZXJsZWZ0d2lkdGgiKT9wYXJzZUludChhLmNzcygiYm9yZGVyTGVmdFdpZHRoIiksMCl8fDA6YS5kYXRhKCJib3JkZXJsZWZ0d2lkdGgiKSxjLmJvcmRlclJpZ2h0V2lkdGg9dm9pZCAwPT09YS5kYXRhKCJib3JkZXJyaWdodHdpZHRoIik/cGFyc2VJbnQoYS5jc3MoImJvcmRlclJpZ2h0V2lkdGgiKSwwKXx8MDphLmRhdGEoImJvcmRlcnJpZ2h0d2lkdGgiKSwicmVrdXJzaXZlIiE9Yil7aWYoYy5jb2xvcj12b2lkIDA9PT1hLmRhdGEoImNvbG9yIik/Im5vcHJlZGVmaW5lZGNvbG9yIjphLmRhdGEoImNvbG9yIiksYy53aGl0ZVNwYWNlPWQ/dm9pZCAwPT09ZS5kYXRhKCJ3aGl0ZXNwYWNlIik/ZS5jc3MoIndoaXRlU3BhY2UiKXx8Im5vd3JhcCI6ZS5kYXRhKCJ3aGl0ZXNwYWNlIik6dm9pZCAwPT09YS5kYXRhKCJ3aGl0ZXNwYWNlIik/YS5jc3MoIndoaXRlU3BhY2UiKXx8Im5vd3JhcCI6YS5kYXRhKCJ3aGl0ZXNwYWNlIiksYy50ZXh0QWxpZ249ZD92b2lkIDA9PT1lLmRhdGEoInRleHRhbGlnbiIpP2UuY3NzKCJ0ZXh0YWxpZ24iKXx8ImluaGVyaXQiOmUuZGF0YSgidGV4dGFsaWduIik6dm9pZCAwPT09YS5kYXRhKCJ0ZXh0YWxpZ24iKT9hLmNzcygidGV4dGFsaWduIil8fCJpbmhlcml0IjphLmRhdGEoInRleHRhbGlnbiIpLGMuZm9udFdlaWdodD1kP3ZvaWQgMD09PWUuZGF0YSgiZm9udHdlaWdodCIpP3BhcnNlSW50KGUuY3NzKCJmb250V2VpZ2h0IiksMCl8fDA6ZS5kYXRhKCJmb250d2VpZ2h0Iik6dm9pZCAwPT09YS5kYXRhKCJmb250d2VpZ2h0Iik/cGFyc2VJbnQoYS5jc3MoImZvbnRXZWlnaHQiKSwwKXx8MDphLmRhdGEoImZvbnR3ZWlnaHQiKSxjLm1pbldpZHRoPXZvaWQgMD09PWEuZGF0YSgid2lkdGgiKT9wYXJzZUludChhLmNzcygibWluV2lkdGgiKSwwKXx8MDphLmRhdGEoIndpZHRoIiksYy5taW5IZWlnaHQ9dm9pZCAwPT09YS5kYXRhKCJoZWlnaHQiKT9wYXJzZUludChhLmNzcygibWluSGVpZ2h0IiksMCl8fDA6YS5kYXRhKCJoZWlnaHQiKSx2b2lkIDAhPWEuZGF0YSgidmlkZW93aWR0aCIpJiZ2b2lkIDAhPWEuZGF0YSgidmlkZW9oZWlnaHQiKSl7dmFyIGY9YS5kYXRhKCJ2aWRlb3dpZHRoIiksZz1hLmRhdGEoInZpZGVvaGVpZ2h0Iik7Zj0iMTAwJSI9PT1mPyJub25lIjpmLGc9IjEwMCUiPT09Zz8ibm9uZSI6ZyxhLmRhdGEoIndpZHRoIixmKSxhLmRhdGEoImhlaWdodCIsZyl9Yy5tYXhXaWR0aD12b2lkIDA9PT1hLmRhdGEoIndpZHRoIik/cGFyc2VJbnQoYS5jc3MoIm1heFdpZHRoIiksMCl8fCJub25lIjphLmRhdGEoIndpZHRoIiksYy5tYXhIZWlnaHQ9dm9pZCAwPT09YS5kYXRhKCJoZWlnaHQiKT9wYXJzZUludChhLmNzcygibWF4SGVpZ2h0IiksMCl8fCJub25lIjphLmRhdGEoImhlaWdodCIpLGMud2FuPXZvaWQgMD09PWEuZGF0YSgid2FuIik/cGFyc2VJbnQoYS5jc3MoIi13ZWJraXQtdHJhbnNpdGlvbiIpLDApfHwibm9uZSI6YS5kYXRhKCJ3YW4iKSxjLm1vYW49dm9pZCAwPT09YS5kYXRhKCJtb2FuIik/cGFyc2VJbnQoYS5jc3MoIi1tb3otYW5pbWF0aW9uLXRyYW5zaXRpb24iKSwwKXx8Im5vbmUiOmEuZGF0YSgibW9hbiIpLGMubWFuPXZvaWQgMD09PWEuZGF0YSgibWFuIik/cGFyc2VJbnQoYS5jc3MoIi1tcy1hbmltYXRpb24tdHJhbnNpdGlvbiIpLDApfHwibm9uZSI6YS5kYXRhKCJtYW4iKSxjLmFuaT12b2lkIDA9PT1hLmRhdGEoImFuaSIpP3BhcnNlSW50KGEuY3NzKCJ0cmFuc2l0aW9uIiksMCl8fCJub25lIjphLmRhdGEoImFuaSIpfXJldHVybiBjLnN0eWxlUHJvcHM9e2JvcmRlclRvcExlZnRSYWRpdXM6YVswXS5zdHlsZS5ib3JkZXJUb3BMZWZ0UmFkaXVzLGJvcmRlclRvcFJpZ2h0UmFkaXVzOmFbMF0uc3R5bGUuYm9yZGVyVG9wUmlnaHRSYWRpdXMsYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6YVswXS5zdHlsZS5ib3JkZXJCb3R0b21SaWdodFJhZGl1cyxib3JkZXJCb3R0b21MZWZ0UmFkaXVzOmFbMF0uc3R5bGUuYm9yZGVyQm90dG9tTGVmdFJhZGl1cywiYmFja2dyb3VuZC1jb2xvciI6YVswXS5zdHlsZVsiYmFja2dyb3VuZC1jb2xvciJdLCJib3JkZXItdG9wLWNvbG9yIjphWzBdLnN0eWxlWyJib3JkZXItdG9wLWNvbG9yIl0sImJvcmRlci1ib3R0b20tY29sb3IiOmFbMF0uc3R5bGVbImJvcmRlci1ib3R0b20tY29sb3IiXSwiYm9yZGVyLXJpZ2h0LWNvbG9yIjphWzBdLnN0eWxlWyJib3JkZXItcmlnaHQtY29sb3IiXSwiYm9yZGVyLWxlZnQtY29sb3IiOmFbMF0uc3R5bGVbImJvcmRlci1sZWZ0LWNvbG9yIl0sImJvcmRlci10b3Atc3R5bGUiOmFbMF0uc3R5bGVbImJvcmRlci10b3Atc3R5bGUiXSwiYm9yZGVyLWJvdHRvbS1zdHlsZSI6YVswXS5zdHlsZVsiYm9yZGVyLWJvdHRvbS1zdHlsZSJdLCJib3JkZXItbGVmdC1zdHlsZSI6YVswXS5zdHlsZVsiYm9yZGVyLWxlZnQtc3R5bGUiXSwiYm9yZGVyLXJpZ2h0LXN0eWxlIjphWzBdLnN0eWxlWyJib3JkZXItcmlnaHQtc3R5bGUiXSwiYm9yZGVyLWxlZnQtd2lkdGgiOmFbMF0uc3R5bGVbImJvcmRlci1sZWZ0LXdpZHRoIl0sImJvcmRlci1yaWdodC13aWR0aCI6YVswXS5zdHlsZVsiYm9yZGVyLXJpZ2h0LXdpZHRoIl0sImJvcmRlci1ib3R0b20td2lkdGgiOmFbMF0uc3R5bGVbImJvcmRlci1ib3R0b20td2lkdGgiXSwiYm9yZGVyLXRvcC13aWR0aCI6YVswXS5zdHlsZVsiYm9yZGVyLXRvcC13aWR0aCJdLGNvbG9yOmFbMF0uc3R5bGUuY29sb3IsInRleHQtZGVjb3JhdGlvbiI6YVswXS5zdHlsZVsidGV4dC1kZWNvcmF0aW9uIl0sImZvbnQtc3R5bGUiOmFbMF0uc3R5bGVbImZvbnQtc3R5bGUiXX0sIiI9PWMuc3R5bGVQcm9wcy5jb2xvciYmKGMuc3R5bGVQcm9wcy5jb2xvcj1hLmNzcygiY29sb3IiKSksY30scz1mdW5jdGlvbihhLGIpe3ZhciBjPW5ldyBPYmplY3Q7cmV0dXJuIGEmJmpRdWVyeS5lYWNoKGEsZnVuY3Rpb24oZCxlKXt2YXIgZj1vKGUsYilbYi5jdXJXaW5SYW5nZV07Y1tkXT12b2lkIDAhPT1mP2Y6YVtkXX0pLGN9LHQ9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIGE9alF1ZXJ5LmlzTnVtZXJpYyhhKT9hKmIrInB4IjphLGE9ImZ1bGwiPT09YT9kOiJhdXRvIj09PWF8fCJub25lIj09PWE/YzphfSx1PWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEuZGF0YSgpO2U9dm9pZCAwPT09ZT97fTplO3RyeXtpZigiQlIiPT1hWzBdLm5vZGVOYW1lfHwiYnIiPT1hWzBdLnRhZ05hbWUpcmV0dXJuITF9Y2F0Y2goYSl7fWUuY3Nzb2JqPXZvaWQgMD09PWUuY3Nzb2JqP3IoYSxjKTplLmNzc29iajt2YXIgZj1zKGUuY3Nzb2JqLGIpLGc9Yi5idyxoPWIuYmg7aWYoIm9mZiI9PT1kJiYoZz0xLGg9MSksImF1dG8iPT1mLmxpbmVIZWlnaHQmJihmLmxpbmVIZWlnaHQ9Zi5mb250U2l6ZSs0KSwhYS5oYXNDbGFzcygidHAtc3BsaXR0ZWQiKSl7YS5jc3MoIi13ZWJraXQtdHJhbnNpdGlvbiIsIm5vbmUiKSxhLmNzcygiLW1vei10cmFuc2l0aW9uIiwibm9uZSIpLGEuY3NzKCItbXMtdHJhbnNpdGlvbiIsIm5vbmUiKSxhLmNzcygidHJhbnNpdGlvbiIsIm5vbmUiKTt2YXIgaT12b2lkIDAhPT1hLmRhdGEoInRyYW5zZm9ybV9ob3ZlciIpfHx2b2lkIDAhPT1hLmRhdGEoInN0eWxlX2hvdmVyIik7aWYoaSYmcHVuY2hncy5Ud2VlbkxpdGUuc2V0KGEsZi5zdHlsZVByb3BzKSxwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYSx7Zm9udFNpemU6TWF0aC5yb3VuZChmLmZvbnRTaXplKmcpKyJweCIsZm9udFdlaWdodDpmLmZvbnRXZWlnaHQsbGV0dGVyU3BhY2luZzpNYXRoLmZsb29yKGYubGV0dGVyU3BhY2luZypnKSsicHgiLHBhZGRpbmdUb3A6TWF0aC5yb3VuZChmLnBhZGRpbmdUb3AqaCkrInB4IixwYWRkaW5nQm90dG9tOk1hdGgucm91bmQoZi5wYWRkaW5nQm90dG9tKmgpKyJweCIscGFkZGluZ0xlZnQ6TWF0aC5yb3VuZChmLnBhZGRpbmdMZWZ0KmcpKyJweCIscGFkZGluZ1JpZ2h0Ok1hdGgucm91bmQoZi5wYWRkaW5nUmlnaHQqZykrInB4IixtYXJnaW5Ub3A6Zi5tYXJnaW5Ub3AqaCsicHgiLG1hcmdpbkJvdHRvbTpmLm1hcmdpbkJvdHRvbSpoKyJweCIsbWFyZ2luTGVmdDpmLm1hcmdpbkxlZnQqZysicHgiLG1hcmdpblJpZ2h0OmYubWFyZ2luUmlnaHQqZysicHgiLGJvcmRlclRvcFdpZHRoOk1hdGgucm91bmQoZi5ib3JkZXJUb3BXaWR0aCpoKSsicHgiLGJvcmRlckJvdHRvbVdpZHRoOk1hdGgucm91bmQoZi5ib3JkZXJCb3R0b21XaWR0aCpoKSsicHgiLGJvcmRlckxlZnRXaWR0aDpNYXRoLnJvdW5kKGYuYm9yZGVyTGVmdFdpZHRoKmcpKyJweCIsYm9yZGVyUmlnaHRXaWR0aDpNYXRoLnJvdW5kKGYuYm9yZGVyUmlnaHRXaWR0aCpnKSsicHgiLGxpbmVIZWlnaHQ6TWF0aC5yb3VuZChmLmxpbmVIZWlnaHQqaCkrInB4Iix0ZXh0QWxpZ246Zi50ZXh0QWxpZ24sb3ZlcndyaXRlOiJhdXRvIn0pLCJyZWt1cnNpdmUiIT1jKXt2YXIgaj0ic2xpZGUiPT1mLmJhc2VhbGlnbj9iLnVsdzpiLmdyaWR3aWR0aFtiLmN1cldpblJhbmdlXSxrPSJzbGlkZSI9PWYuYmFzZWFsaWduP2IudWxoOmIuZ3JpZGhlaWdodFtiLmN1cldpblJhbmdlXSxsPXQoZi5tYXhXaWR0aCxnLCJub25lIixqKSxtPXQoZi5tYXhIZWlnaHQsaCwibm9uZSIsayksbj10KGYubWluV2lkdGgsZywiMHB4IixqKSxvPXQoZi5taW5IZWlnaHQsaCwiMHB4IixrKTtpZihuPXZvaWQgMD09PW4/MDpuLG89dm9pZCAwPT09bz8wOm8sbD12b2lkIDA9PT1sPyJub25lIjpsLG09dm9pZCAwPT09bT8ibm9uZSI6bSxlLl9pc2dyb3VwJiYoIiMxLzEjIj09PW4mJihuPWw9aiksIiMxLzIjIj09PW4mJihuPWw9ai8yKSwiIzEvMyMiPT09biYmKG49bD1qLzMpLCIjMS80IyI9PT1uJiYobj1sPWovNCksIiMxLzUjIj09PW4mJihuPWw9ai81KSwiIzEvNiMiPT09biYmKG49bD1qLzYpLCIjMi8zIyI9PT1uJiYobj1sPWovMyoyKSwiIzMvNCMiPT09biYmKG49bD1qLzQqMyksIiMyLzUjIj09PW4mJihuPWw9ai81KjIpLCIjMy81IyI9PT1uJiYobj1sPWovNSozKSwiIzQvNSMiPT09biYmKG49bD1qLzUqNCksIiMzLzYjIj09PW4mJihuPWw9ai82KjMpLCIjNC82IyI9PT1uJiYobj1sPWovNio0KSwiIzUvNiMiPT09biYmKG49bD1qLzYqNSkpLGUuX2luZ3JvdXAmJihlLl9ncm91cHc9bixlLl9ncm91cGg9bykscHVuY2hncy5Ud2VlbkxpdGUuc2V0KGEse21heFdpZHRoOmwsbWF4SGVpZ2h0Om0sbWluV2lkdGg6bixtaW5IZWlnaHQ6byx3aGl0ZVNwYWNlOmYud2hpdGVTcGFjZSx0ZXh0QWxpZ246Zi50ZXh0QWxpZ24sb3ZlcndyaXRlOiJhdXRvIn0pLCJub3ByZWRlZmluZWRjb2xvciIhPWYuY29sb3ImJnB1bmNoZ3MuVHdlZW5MaXRlLnNldChhLHtjb2xvcjpmLmNvbG9yLG92ZXJ3cml0ZToiYXV0byJ9KSx2b2lkIDAhPWUuc3ZnX3NyYyl7dmFyIHA9Im5vcHJlZGVmaW5lZGNvbG9yIiE9Zi5jb2xvciYmdm9pZCAwIT1mLmNvbG9yP2YuY29sb3I6dm9pZCAwIT1mLmNzcyYmIm5vcHJlZGVmaW5lZGNvbG9yIiE9Zi5jc3MuY29sb3ImJnZvaWQgMCE9Zi5jc3MuY29sb3I/Zi5jc3MuY29sb3I6dm9pZCAwIT1mLnN0eWxlUHJvcHMuY29sb3I/Zi5zdHlsZVByb3BzLmNvbG9yOnZvaWQgMCE9Zi5zdHlsZVByb3BzLmNzcyYmdm9pZCAwIT1mLnN0eWxlUHJvcHMuY3NzLmNvbG9yJiZmLnN0eWxlUHJvcHMuY3NzLmNvbG9yOzAhPXAmJihwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYS5maW5kKCJzdmciKSx7ZmlsbDpwLG92ZXJ3cml0ZToiYXV0byJ9KSxwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYS5maW5kKCJzdmcgcGF0aCIpLHtmaWxsOnAsb3ZlcndyaXRlOiJhdXRvIn0pKX19ImNvbHVtbiI9PT1lLl9uY3R5cGUmJih2b2lkIDA9PT1lLl9jb2x1bW5fYmdfc2V0JiYoZS5fY29sdW1uX2JnX3NldD1hLmNzcygiYmFja2dyb3VuZENvbG9yIiksZS5fY29sdW1uX2JnX2ltYWdlPWEuY3NzKCJiYWNrZ3JvdW5kSW1hZ2UiKSxlLl9jb2x1bW5fYmdfaW1hZ2VfcmVwZWF0PWEuY3NzKCJiYWNrZ3JvdW5kUmVwZWF0IiksZS5fY29sdW1uX2JnX2ltYWdlX3Bvc2l0aW9uPWEuY3NzKCJiYWNrZ3JvdW5kUG9zaXRpb24iKSxlLl9jb2x1bW5fYmdfaW1hZ2Vfc2l6ZT1hLmNzcygiYmFja2dyb3VuZFNpemUiKSxlLl9jb2x1bW5fYmdfb3BhY2l0eT1hLmRhdGEoImJnb3BhY2l0eSIpLGUuX2NvbHVtbl9iZ19vcGFjaXR5PXZvaWQgMD09PWUuX2NvbHVtbl9iZ19vcGFjaXR5PzE6ZS5fY29sdW1uX2JnX29wYWNpdHkscHVuY2hncy5Ud2VlbkxpdGUuc2V0KGEse2JhY2tncm91bmRDb2xvcjoidHJhbnNwYXJlbnQiLGJhY2tncm91bmRJbWFnZToiIn0pKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dihhLGIpfSwxKSxlLl9jYmdjX2F1dG8mJihlLl9jYmdjX2F1dG9bMF0uc3R5bGUuYmFja2dyb3VuZFNpemU9ZS5fY29sdW1uX2JnX2ltYWdlX3NpemUsalF1ZXJ5LmlzQXJyYXkoZi5tYXJnaW5MZWZ0KT9wdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZS5fY2JnY19hdXRvLHtib3JkZXJUb3BXaWR0aDpmLm1hcmdpblRvcFtiLmN1cldpblJhbmdlXSpoKyJweCIsYm9yZGVyTGVmdFdpZHRoOmYubWFyZ2luTGVmdFtiLmN1cldpblJhbmdlXSpnKyJweCIsYm9yZGVyUmlnaHRXaWR0aDpmLm1hcmdpblJpZ2h0W2IuY3VyV2luUmFuZ2VdKmcrInB4Iixib3JkZXJCb3R0b21XaWR0aDpmLm1hcmdpbkJvdHRvbVtiLmN1cldpblJhbmdlXSpoKyJweCIsYmFja2dyb3VuZENvbG9yOmUuX2NvbHVtbl9iZ19zZXQsYmFja2dyb3VuZEltYWdlOmUuX2NvbHVtbl9iZ19pbWFnZSxiYWNrZ3JvdW5kUmVwZWF0OmUuX2NvbHVtbl9iZ19pbWFnZV9yZXBlYXQsYmFja2dyb3VuZFBvc2l0aW9uOmUuX2NvbHVtbl9iZ19pbWFnZV9wb3NpdGlvbixvcGFjaXR5OmUuX2NvbHVtbl9iZ19vcGFjaXR5fSk6cHVuY2hncy5Ud2VlbkxpdGUuc2V0KGUuX2NiZ2NfYXV0byx7Ym9yZGVyVG9wV2lkdGg6Zi5tYXJnaW5Ub3AqaCsicHgiLGJvcmRlckxlZnRXaWR0aDpmLm1hcmdpbkxlZnQqZysicHgiLGJvcmRlclJpZ2h0V2lkdGg6Zi5tYXJnaW5SaWdodCpnKyJweCIsYm9yZGVyQm90dG9tV2lkdGg6Zi5tYXJnaW5Cb3R0b20qaCsicHgiLGJhY2tncm91bmRDb2xvcjplLl9jb2x1bW5fYmdfc2V0LGJhY2tncm91bmRJbWFnZTplLl9jb2x1bW5fYmdfaW1hZ2UsYmFja2dyb3VuZFJlcGVhdDplLl9jb2x1bW5fYmdfaW1hZ2VfcmVwZWF0LGJhY2tncm91bmRQb3NpdGlvbjplLl9jb2x1bW5fYmdfaW1hZ2VfcG9zaXRpb24sb3BhY2l0eTplLl9jb2x1bW5fYmdfb3BhY2l0eX0pKSksc2V0VGltZW91dChmdW5jdGlvbigpe2EuY3NzKCItd2Via2l0LXRyYW5zaXRpb24iLGEuZGF0YSgid2FuIikpLGEuY3NzKCItbW96LXRyYW5zaXRpb24iLGEuZGF0YSgibW9hbiIpKSxhLmNzcygiLW1zLXRyYW5zaXRpb24iLGEuZGF0YSgibWFuIikpLGEuY3NzKCJ0cmFuc2l0aW9uIixhLmRhdGEoImFuaSIpKX0sMzApfX0sdj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuZGF0YSgpO2lmKGMuX2NiZ2NfbWFuKXt2YXIgZCxlLGYsZyxoO2pRdWVyeS5pc0FycmF5KGMuY3Nzb2JqLm1hcmdpbkxlZnQpPyhkPWMuY3Nzb2JqLm1hcmdpbkxlZnRbYi5jdXJXaW5SYW5nZV0qYi5idyxlPWMuY3Nzb2JqLm1hcmdpblRvcFtiLmN1cldpblJhbmdlXSpiLmJoLGY9Yy5jc3NvYmoubWFyZ2luQm90dG9tW2IuY3VyV2luUmFuZ2VdKmIuYmgsZz1jLmNzc29iai5tYXJnaW5SaWdodFtiLmN1cldpblJhbmdlXSpiLmJ3KTooZD1jLmNzc29iai5tYXJnaW5MZWZ0KmIuYncsZT1jLmNzc29iai5tYXJnaW5Ub3AqYi5iaCxmPWMuY3Nzb2JqLm1hcmdpbkJvdHRvbSpiLmJoLGc9Yy5jc3NvYmoubWFyZ2luUmlnaHQqYi5idyksaD1jLl9yb3cuaGFzQ2xhc3MoInJldl9icmVha19jb2x1bW5zIik/IjEwMCUiOmMuX3Jvdy5vdXRlckhlaWdodCgpLShlK2YpKyJweCIsYy5fY2JnY19tYW5bMF0uc3R5bGUuYmFja2dyb3VuZFNpemU9Yy5fY29sdW1uX2JnX2ltYWdlX3NpemUscHVuY2hncy5Ud2VlbkxpdGUuc2V0KGMuX2NiZ2NfbWFuLHt3aWR0aDoiMTAwJSIsaGVpZ2h0OmgsYmFja2dyb3VuZENvbG9yOmMuX2NvbHVtbl9iZ19zZXQsYmFja2dyb3VuZEltYWdlOmMuX2NvbHVtbl9iZ19pbWFnZSxiYWNrZ3JvdW5kUmVwZWF0OmMuX2NvbHVtbl9iZ19pbWFnZV9yZXBlYXQsYmFja2dyb3VuZFBvc2l0aW9uOmMuX2NvbHVtbl9iZ19pbWFnZV9wb3NpdGlvbixvdmVyd3JpdGU6ImF1dG8iLG9wYWNpdHk6Yy5fY29sdW1uX2JnX29wYWNpdHl9KX19LHc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmRhdGEoKTtpZihhLmhhc0NsYXNzKCJycy1wZW5kdWx1bSIpJiZ2b2lkIDA9PWMuX2xvb3BfdGltZWxpbmUpe2MuX2xvb3BfdGltZWxpbmU9bmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlO3ZhciBkPXZvaWQgMD09YS5kYXRhKCJzdGFydGRlZyIpPy0yMDphLmRhdGEoInN0YXJ0ZGVnIiksZT12b2lkIDA9PWEuZGF0YSgiZW5kZGVnIik/MjA6YS5kYXRhKCJlbmRkZWciKSxmPXZvaWQgMD09YS5kYXRhKCJzcGVlZCIpPzI6YS5kYXRhKCJzcGVlZCIpLGc9dm9pZCAwPT1hLmRhdGEoIm9yaWdpbiIpPyI1MCUgNTAlIjphLmRhdGEoIm9yaWdpbiIpLGg9dm9pZCAwPT1hLmRhdGEoImVhc2luZyIpP3B1bmNoZ3MuUG93ZXIyLmVhc2VJbk91dDphLmRhdGEoImVhc2luZyIpO2QqPWIsZSo9YixjLl9sb29wX3RpbWVsaW5lLmFwcGVuZChuZXcgcHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGEsZix7Zm9yY2UzRDoiYXV0byIscm90YXRpb246ZCx0cmFuc2Zvcm1PcmlnaW46Z30se3JvdGF0aW9uOmUsZWFzZTpofSkpLGMuX2xvb3BfdGltZWxpbmUuYXBwZW5kKG5ldyBwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYSxmLHtmb3JjZTNEOiJhdXRvIixyb3RhdGlvbjplLHRyYW5zZm9ybU9yaWdpbjpnfSx7cm90YXRpb246ZCxlYXNlOmgsb25Db21wbGV0ZTpmdW5jdGlvbigpe2MuX2xvb3BfdGltZWxpbmUucmVzdGFydCgpfX0pKX1pZihhLmhhc0NsYXNzKCJycy1yb3RhdGUiKSYmdm9pZCAwPT1jLl9sb29wX3RpbWVsaW5lKXtjLl9sb29wX3RpbWVsaW5lPW5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZTt2YXIgZD12b2lkIDA9PWEuZGF0YSgic3RhcnRkZWciKT8wOmEuZGF0YSgic3RhcnRkZWciKSxlPXZvaWQgMD09YS5kYXRhKCJlbmRkZWciKT8zNjA6YS5kYXRhKCJlbmRkZWciKSxmPXZvaWQgMD09YS5kYXRhKCJzcGVlZCIpPzI6YS5kYXRhKCJzcGVlZCIpLGc9dm9pZCAwPT1hLmRhdGEoIm9yaWdpbiIpPyI1MCUgNTAlIjphLmRhdGEoIm9yaWdpbiIpLGg9dm9pZCAwPT1hLmRhdGEoImVhc2luZyIpP3B1bmNoZ3MuUG93ZXIyLmVhc2VJbk91dDphLmRhdGEoImVhc2luZyIpO2QqPWIsZSo9YixjLl9sb29wX3RpbWVsaW5lLmFwcGVuZChuZXcgcHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGEsZix7Zm9yY2UzRDoiYXV0byIscm90YXRpb246ZCx0cmFuc2Zvcm1PcmlnaW46Z30se3JvdGF0aW9uOmUsZWFzZTpoLG9uQ29tcGxldGU6ZnVuY3Rpb24oKXtjLl9sb29wX3RpbWVsaW5lLnJlc3RhcnQoKX19KSl9aWYoYS5oYXNDbGFzcygicnMtc2xpZGVsb29wIikmJnZvaWQgMD09Yy5fbG9vcF90aW1lbGluZSl7Yy5fbG9vcF90aW1lbGluZT1uZXcgcHVuY2hncy5UaW1lbGluZUxpdGU7dmFyIGk9dm9pZCAwPT1hLmRhdGEoInhzIik/MDphLmRhdGEoInhzIiksaj12b2lkIDA9PWEuZGF0YSgieXMiKT8wOmEuZGF0YSgieXMiKSxrPXZvaWQgMD09YS5kYXRhKCJ4ZSIpPzA6YS5kYXRhKCJ4ZSIpLGw9dm9pZCAwPT1hLmRhdGEoInllIik/MDphLmRhdGEoInllIiksZj12b2lkIDA9PWEuZGF0YSgic3BlZWQiKT8yOmEuZGF0YSgic3BlZWQiKSxoPXZvaWQgMD09YS5kYXRhKCJlYXNpbmciKT9wdW5jaGdzLlBvd2VyMi5lYXNlSW5PdXQ6YS5kYXRhKCJlYXNpbmciKTtpKj1iLGoqPWIsayo9YixsKj1iLGMuX2xvb3BfdGltZWxpbmUuYXBwZW5kKG5ldyBwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYSxmLHtmb3JjZTNEOiJhdXRvIix4OmkseTpqfSx7eDprLHk6bCxlYXNlOmh9KSksYy5fbG9vcF90aW1lbGluZS5hcHBlbmQobmV3IHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhhLGYse2ZvcmNlM0Q6ImF1dG8iLHg6ayx5Omx9LHt4OmkseTpqLG9uQ29tcGxldGU6ZnVuY3Rpb24oKXtjLl9sb29wX3RpbWVsaW5lLnJlc3RhcnQoKX19KSl9aWYoYS5oYXNDbGFzcygicnMtcHVsc2UiKSYmdm9pZCAwPT1jLl9sb29wX3RpbWVsaW5lKXtjLl9sb29wX3RpbWVsaW5lPW5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZTt2YXIgbT12b2lkIDA9PWEuZGF0YSgiem9vbXN0YXJ0Iik/MDphLmRhdGEoInpvb21zdGFydCIpLG49dm9pZCAwPT1hLmRhdGEoInpvb21lbmQiKT8wOmEuZGF0YSgiem9vbWVuZCIpLGY9dm9pZCAwPT1hLmRhdGEoInNwZWVkIik/MjphLmRhdGEoInNwZWVkIiksaD12b2lkIDA9PWEuZGF0YSgiZWFzaW5nIik/cHVuY2hncy5Qb3dlcjIuZWFzZUluT3V0OmEuZGF0YSgiZWFzaW5nIik7Yy5fbG9vcF90aW1lbGluZS5hcHBlbmQobmV3IHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhhLGYse2ZvcmNlM0Q6ImF1dG8iLHNjYWxlOm19LHtzY2FsZTpuLGVhc2U6aH0pKSxjLl9sb29wX3RpbWVsaW5lLmFwcGVuZChuZXcgcHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGEsZix7Zm9yY2UzRDoiYXV0byIsc2NhbGU6bn0se3NjYWxlOm0sb25Db21wbGV0ZTpmdW5jdGlvbigpe2MuX2xvb3BfdGltZWxpbmUucmVzdGFydCgpfX0pKX1pZihhLmhhc0NsYXNzKCJycy13YXZlIikmJnZvaWQgMD09Yy5fbG9vcF90aW1lbGluZSl7Yy5fbG9vcF90aW1lbGluZT1uZXcgcHVuY2hncy5UaW1lbGluZUxpdGU7dmFyIG89dm9pZCAwPT1hLmRhdGEoImFuZ2xlIik/MTA6cGFyc2VJbnQoYS5kYXRhKCJhbmdsZSIpLDApLHA9dm9pZCAwPT1hLmRhdGEoInJhZGl1cyIpPzEwOnBhcnNlSW50KGEuZGF0YSgicmFkaXVzIiksMCksZj12b2lkIDA9PWEuZGF0YSgic3BlZWQiKT8tMjA6YS5kYXRhKCJzcGVlZCIpLGc9dm9pZCAwPT1hLmRhdGEoIm9yaWdpbiIpPyI1MCUgNTAlIjphLmRhdGEoIm9yaWdpbiIpLHE9Zy5zcGxpdCgiICIpLHI9bmV3IE9iamVjdDtxLmxlbmd0aD49MT8oci54PXFbMF0sci55PXFbMV0pOihyLng9IjUwJSIsci55PSI1MCUiKSxwKj1iO3ZhciBzPShwYXJzZUludChyLngsMCkvMTAwLS41KSphLndpZHRoKCksdD0ocGFyc2VJbnQoci55LDApLzEwMC0uNSkqYS5oZWlnaHQoKSx1PS0xKnArdCx2PTArcyx3PXthOjAsYW5nOm8sZWxlbWVudDphLHVuaXQ6cCx4b2Zmc2V0OnYseW9mZnNldDp1fSx4PXBhcnNlSW50KG8sMCkseT1uZXcgcHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKHcsZix7YTowK3h9LHthOjM2MCt4LGZvcmNlM0Q6ImF1dG8iLGVhc2U6cHVuY2hncy5MaW5lYXIuZWFzZU5vbmV9KTt5LmV2ZW50Q2FsbGJhY2soIm9uVXBkYXRlIixmdW5jdGlvbihhKXt2YXIgYj1hLmEqKE1hdGguUEkvMTgwKSxjPWEueW9mZnNldCthLnVuaXQqKDEtTWF0aC5zaW4oYikpLGQ9YS54b2Zmc2V0K01hdGguY29zKGIpKmEudW5pdDtwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLmVsZW1lbnQsLjEse2ZvcmNlM0Q6ImF1dG8iLHg6ZCx5OmN9KX0sW3ddKSx5LmV2ZW50Q2FsbGJhY2soIm9uQ29tcGxldGUiLGZ1bmN0aW9uKGEpe2EuX2xvb3BfdGltZWxpbmUucmVzdGFydCgpfSxbY10pLGMuX2xvb3BfdGltZWxpbmUuYXBwZW5kKHkpfX0seD1mdW5jdGlvbihhKXthLmNsb3Nlc3QoIi5ycy1wZW5kdWx1bSwgLnJzLXNsaWRlbG9vcCwgLnJzLXB1bHNlLCAucnMtd2F2ZSIpLmVhY2goZnVuY3Rpb24oKXt2YXIgYT10aGlzO3ZvaWQgMCE9YS5fbG9vcF90aW1lbGluZSYmKGEuX2xvb3BfdGltZWxpbmUucGF1c2UoKSxhLl9sb29wX3RpbWVsaW5lPW51bGwpfSl9fShqUXVlcnkpOw=="}},"time_used":16521,"timings":{"blocked":15694,"dns":0,"connect":0,"send":0,"wait":827,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/fav.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.343Z","timestamp":1785143908343,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /image/fav.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:46 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"f7c-63ccd443bdcc0\"\r\nAccept-Ranges: bytes\r\nContent-Length: 3964\r\nVary: User-Agent\r\nKeep-Alive: timeout=5, max=95\r\nConnection: Keep-Alive\r\nContent-Type: image/png\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":3964,"size_decoded":4280,"mime_type":"image/png","magic":"PNG image data, 70 x 70, 8-bit/color RGBA, non-interlaced","md5":"4e1020ee804e3c3b06be90bc5b80bb95","sha1":"8f15a07b2942170ef8060ad2558b96b6e1468a6f","sha256":"b682c194cad1eec02a9860e2e7d715ccc0dcbac6518196ea845be721612a2e0a","sha512":"ab939f70aa00349e9ef0bf4c38d6c1eada465ce2cd8f784530466ba8e4125c7979eadbcc4ec87254c4965bfe4db6389b81d7241356f6b9c3f5a51bc57bff7877","ssdeep":"","tlshash":"46817d7dc6fb8391a1931f210376a29345b363ed9756899cafea191d48212089bcf864","first_seen":"2026-07-27T06:18:56.485772Z","last_seen":"2026-07-27T09:20:18.342663Z","times_seen":3,"resource_available":false,"data":"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"}},"time_used":18149,"timings":{"blocked":17901,"dns":0,"connect":0,"send":0,"wait":248,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/clients-log/logo7.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.348Z","timestamp":1785143908348,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/clients-log/logo7.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/d71b99267b066b9b.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.705Z","timestamp":1785143926705,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/d71b99267b066b9b.js HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\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: same-origin\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\naccess-control-allow-origin: *\r\nage: 2272542\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"d71b99267b066b9b.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com https://vitals.vercel-insights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\netag: W/\"8ab91e90961bd7e4d7c2d7514a37ecf6\"\r\nlast-modified: Mon, 25 May 2026 18:12:21 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/d71b99267b066b9b.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::z8pn9-1779843301298-e28dad7012c9\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=NpwMJ%2FDvHM8skDticznvhT9DLPO5U4f8T%2Ff6ReWLmcpp0JxCgHV8elBKsJxgSYoLrZ7AlL34hH9DdB5Qp3FMTFUh7k0twn0yNQ6m2vvNXP6I2GmQDqqnkW9kK%2FGt\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21a8f05e91f0b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"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"]},{"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":27443,"size_decoded":11047,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (27443), with no line terminators","md5":"8ab91e90961bd7e4d7c2d7514a37ecf6","sha1":"d2e2405837d8cd1436dae22a0c5d7f4e15168995","sha256":"6e16504cbe3f76082798a523cf9cdce3bc9321fefc36485d02c9289e5a5f6b38","sha512":"da24ae4884840b4b996fdd087c41065e590b5cf33046f6aec00157142b53b9da067a83af2cc7744429b64c02bbfb1aef428787389939a1736cb4ad1f0458ee69","ssdeep":"384:AqniNMH/fZ8oNS1VFWHcE+Ff8IiUG6AUNmXVOmitisz8Xdjz8/K4QIwATf:YO58o0fG65mXVOOKKNInf","tlshash":"bec2c725b90705be2aee83e7e06cabd5d9385a02d5098b4ce3978f319704bf56187b0d","first_seen":"2026-04-30T18:36:20.827898Z","last_seen":"2026-08-11T04:47:30.134319Z","times_seen":2156,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDc1MTU3LDcyODQsZT0+eyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKCl7Zm9yKHZhciBlLHIsbz0wLHQ9IiIsbD1hcmd1bWVudHMubGVuZ3RoO288bDtvKyspKGU9YXJndW1lbnRzW29dKSYmKHI9ZnVuY3Rpb24gZShyKXt2YXIgbyx0LGw9IiI7aWYoInN0cmluZyI9PXR5cGVvZiByfHwibnVtYmVyIj09dHlwZW9mIHIpbCs9cjtlbHNlIGlmKCJvYmplY3QiPT10eXBlb2YgcilpZihBcnJheS5pc0FycmF5KHIpKXt2YXIgbj1yLmxlbmd0aDtmb3Iobz0wO288bjtvKyspcltvXSYmKHQ9ZShyW29dKSkmJihsJiYobCs9IiAiKSxsKz10KX1lbHNlIGZvcih0IGluIHIpclt0XSYmKGwmJihsKz0iICIpLGwrPXQpO3JldHVybiBsfShlKSkmJih0JiYodCs9IiAiKSx0Kz1yKTtyZXR1cm4gdH1lLnMoWyJjbHN4IiwoKT0+cl0sNzI4NCk7bGV0IG89KGU9bmV3IE1hcCxyPW51bGwsbyk9Pih7bmV4dFBhcnQ6ZSx2YWxpZGF0b3JzOnIsY2xhc3NHcm91cElkOm99KSx0PVtdLGw9KGUscixvKT0+e2lmKDA9PWUubGVuZ3RoLXIpcmV0dXJuIG8uY2xhc3NHcm91cElkO2xldCB0PWVbcl0sbj1vLm5leHRQYXJ0LmdldCh0KTtpZihuKXtsZXQgbz1sKGUscisxLG4pO2lmKG8pcmV0dXJuIG99bGV0IGE9by52YWxpZGF0b3JzO2lmKG51bGw9PT1hKXJldHVybjtsZXQgcz0wPT09cj9lLmpvaW4oIi0iKTplLnNsaWNlKHIpLmpvaW4oIi0iKSxpPWEubGVuZ3RoO2ZvcihsZXQgZT0wO2U8aTtlKyspe2xldCByPWFbZV07aWYoci52YWxpZGF0b3IocykpcmV0dXJuIHIuY2xhc3NHcm91cElkfX0sbj0oZSxyKT0+e2xldCB0PW8oKTtmb3IobGV0IG8gaW4gZSlhKGVbb10sdCxvLHIpO3JldHVybiB0fSxhPShlLHIsbyx0KT0+e2xldCBsPWUubGVuZ3RoO2ZvcihsZXQgbj0wO248bDtuKyspcyhlW25dLHIsbyx0KX0scz0oZSxyLG8sdCk9Pnsic3RyaW5nIj09dHlwZW9mIGU/aShlLHIsbyk6ImZ1bmN0aW9uIj09dHlwZW9mIGU/YyhlLHIsbyx0KTpkKGUscixvLHQpfSxpPShlLHIsbyk9PnsoIiI9PT1lP3I6bShyLGUpKS5jbGFzc0dyb3VwSWQ9b30sYz0oZSxyLG8sdCk9PntwKGUpP2EoZSh0KSxyLG8sdCk6KG51bGw9PT1yLnZhbGlkYXRvcnMmJihyLnZhbGlkYXRvcnM9W10pLHIudmFsaWRhdG9ycy5wdXNoKHtjbGFzc0dyb3VwSWQ6byx2YWxpZGF0b3I6ZX0pKX0sZD0oZSxyLG8sdCk9PntsZXQgbD1PYmplY3QuZW50cmllcyhlKSxuPWwubGVuZ3RoO2ZvcihsZXQgZT0wO2U8bjtlKyspe2xldFtuLHNdPWxbZV07YShzLG0ocixuKSxvLHQpfX0sbT0oZSxyKT0+e2xldCB0PWUsbD1yLnNwbGl0KCItIiksbj1sLmxlbmd0aDtmb3IobGV0IGU9MDtlPG47ZSsrKXtsZXQgcj1sW2VdLG49dC5uZXh0UGFydC5nZXQocik7bnx8KG49bygpLHQubmV4dFBhcnQuc2V0KHIsbikpLHQ9bn1yZXR1cm4gdH0scD1lPT4iaXNUaGVtZUdldHRlciJpbiBlJiYhMD09PWUuaXNUaGVtZUdldHRlcixiPVtdLHU9KGUscixvLHQsbCk9Pih7bW9kaWZpZXJzOmUsaGFzSW1wb3J0YW50TW9kaWZpZXI6cixiYXNlQ2xhc3NOYW1lOm8sbWF5YmVQb3N0Zml4TW9kaWZpZXJQb3NpdGlvbjp0LGlzRXh0ZXJuYWw6bH0pLGY9L1xzKy8sZz1lPT57bGV0IHI7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO2xldCBvPSIiO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0mJihyPWcoZVt0XSkpJiYobyYmKG8rPSIgIiksbys9cik7cmV0dXJuIG99LGg9W10saz1lPT57bGV0IHI9cj0+cltlXXx8aDtyZXR1cm4gci5pc1RoZW1lR2V0dGVyPSEwLHJ9LHc9L15cWyg/Oihcd1tcdy1dKik6KT8oLispXF0kL2kseD0vXlwoKD86KFx3W1x3LV0qKTopPyguKylcKSQvaSx5PS9eXGQrKD86XC5cZCspP1wvXGQrKD86XC5cZCspPyQvLHY9L14oXGQrKFwuXGQrKT8pPyh4c3xzbXxtZHxsZ3x4bCkkLyx6PS9cZCsoJXxweHxyP2VtfFtzZGxdP3YoW2h3aWJdfG1pbnxtYXgpfHB0fHBjfGlufGNtfG1tfGNhcHxjaHxleHxyP2xofGNxKHd8aHxpfGJ8bWlufG1heCkpfFxiKGNhbGN8bWlufG1heHxjbGFtcClcKC4rXCl8XjAkLyxqPS9eKHJnYmE/fGhzbGE/fGh3Ynwob2spPyhsYWJ8bGNoKXxjb2xvci1taXgpXCguK1wpJC8sQz0vXihpbnNldF8pPy0/KChcZCspP1wuPyhcZCspW2Etel0rfDApXy0/KChcZCspP1wuPyhcZCspW2Etel0rfDApLyxHPS9eKHVybHxpbWFnZXxpbWFnZS1zZXR8Y3Jvc3MtZmFkZXxlbGVtZW50fChyZXBlYXRpbmctKT8obGluZWFyfHJhZGlhbHxjb25pYyktZ3JhZGllbnQpXCguK1wpJC8sTj1lPT55LnRlc3QoZSksST1lPT4hIWUmJiFOdW1iZXIuaXNOYU4oTnVtYmVyKGUpKSxVPWU9PiEhZSYmTnVtYmVyLmlzSW50ZWdlcihOdW1iZXIoZSkpLCQ9ZT0+ZS5lbmRzV2l0aCgiJSIpJiZJKGUuc2xpY2UoMCwtMSkpLE89ZT0+di50ZXN0KGUpLFM9KCk9PiEwLFc9ZT0+ei50ZXN0KGUpJiYhai50ZXN0KGUpLEY9KCk9PiExLFA9ZT0+Qy50ZXN0KGUpLFQ9ZT0+Ry50ZXN0KGUpLE09ZT0+IVIoZSkmJiFIKGUpLEE9ZT0+ZXIoZSxlbixGKSxSPWU9PncudGVzdChlKSxEPWU9PmVyKGUsZWEsVykscT1lPT5lcihlLGVzLEkpLEI9ZT0+ZXIoZSxlYyxTKSxFPWU9PmVyKGUsZWksRiksSz1lPT5lcihlLGV0LEYpLF89ZT0+ZXIoZSxlbCxUKSxMPWU9PmVyKGUsZWQsUCksSD1lPT54LnRlc3QoZSksSj1lPT5lbyhlLGVhKSxRPWU9PmVvKGUsZWkpLFY9ZT0+ZW8oZSxldCksWD1lPT5lbyhlLGVuKSxZPWU9PmVvKGUsZWwpLFo9ZT0+ZW8oZSxlZCwhMCksZWU9ZT0+ZW8oZSxlYywhMCksZXI9KGUscixvKT0+e2xldCB0PXcuZXhlYyhlKTtyZXR1cm4hIXQmJih0WzFdP3IodFsxXSk6byh0WzJdKSl9LGVvPShlLHIsbz0hMSk9PntsZXQgdD14LmV4ZWMoZSk7cmV0dXJuISF0JiYodFsxXT9yKHRbMV0pOm8pfSxldD1lPT4icG9zaXRpb24iPT09ZXx8InBlcmNlbnRhZ2UiPT09ZSxlbD1lPT4iaW1hZ2UiPT09ZXx8InVybCI9PT1lLGVuPWU9PiJsZW5ndGgiPT09ZXx8InNpemUiPT09ZXx8ImJnLXNpemUiPT09ZSxlYT1lPT4ibGVuZ3RoIj09PWUsZXM9ZT0+Im51bWJlciI9PT1lLGVpPWU9PiJmYW1pbHktbmFtZSI9PT1lLGVjPWU9PiJudW1iZXIiPT09ZXx8IndlaWdodCI9PT1lLGVkPWU9PiJzaGFkb3ciPT09ZSxlbT0oKGUsLi4ucik9PntsZXQgbyxhLHMsaSxjPWU9PntsZXQgcj1hKGUpO2lmKHIpcmV0dXJuIHI7bGV0IHQ9KChlLHIpPT57bGV0e3BhcnNlQ2xhc3NOYW1lOm8sZ2V0Q2xhc3NHcm91cElkOnQsZ2V0Q29uZmxpY3RpbmdDbGFzc0dyb3VwSWRzOmwsc29ydE1vZGlmaWVyczpufT1yLGE9W10scz1lLnRyaW0oKS5zcGxpdChmKSxpPSIiO2ZvcihsZXQgZT1zLmxlbmd0aC0xO2U+PTA7ZS09MSl7bGV0IHI9c1tlXSx7aXNFeHRlcm5hbDpjLG1vZGlmaWVyczpkLGhhc0ltcG9ydGFudE1vZGlmaWVyOm0sYmFzZUNsYXNzTmFtZTpwLG1heWJlUG9zdGZpeE1vZGlmaWVyUG9zaXRpb246Yn09byhyKTtpZihjKXtpPXIrKGkubGVuZ3RoPjA/IiAiK2k6aSk7Y29udGludWV9bGV0IHU9ISFiLGY9dCh1P3Auc3Vic3RyaW5nKDAsYik6cCk7aWYoIWYpe2lmKCF1fHwhKGY9dChwKSkpe2k9cisoaS5sZW5ndGg+MD8iICIraTppKTtjb250aW51ZX11PSExfWxldCBnPTA9PT1kLmxlbmd0aD8iIjoxPT09ZC5sZW5ndGg/ZFswXTpuKGQpLmpvaW4oIjoiKSxoPW0/ZysiISI6ZyxrPWgrZjtpZihhLmluZGV4T2Yoayk+LTEpY29udGludWU7YS5wdXNoKGspO2xldCB3PWwoZix1KTtmb3IobGV0IGU9MDtlPHcubGVuZ3RoOysrZSl7bGV0IHI9d1tlXTthLnB1c2goaCtyKX1pPXIrKGkubGVuZ3RoPjA/IiAiK2k6aSl9cmV0dXJuIGl9KShlLG8pO3JldHVybiBzKGUsdCksdH07cmV0dXJuIGk9ZD0+e3ZhciBtO2xldCBwO3JldHVybiBhPShvPXtjYWNoZTooZT0+e2lmKGU8MSlyZXR1cm57Z2V0OigpPT52b2lkIDAsc2V0OigpPT57fX07bGV0IHI9MCxvPU9iamVjdC5jcmVhdGUobnVsbCksdD1PYmplY3QuY3JlYXRlKG51bGwpLGw9KGwsbik9PntvW2xdPW4sKytyPmUmJihyPTAsdD1vLG89T2JqZWN0LmNyZWF0ZShudWxsKSl9O3JldHVybntnZXQoZSl7bGV0IHI9b1tlXTtyZXR1cm4gdm9pZCAwIT09cj9yOnZvaWQgMCE9PShyPXRbZV0pPyhsKGUscikscik6dm9pZCAwfSxzZXQoZSxyKXtlIGluIG8/b1tlXT1yOmwoZSxyKX19fSkoKG09ci5yZWR1Y2UoKGUscik9PnIoZSksZSgpKSkuY2FjaGVTaXplKSxwYXJzZUNsYXNzTmFtZTooZT0+e2xldHtwcmVmaXg6cixleHBlcmltZW50YWxQYXJzZUNsYXNzTmFtZTpvfT1lLHQ9ZT0+e2xldCByLG89W10sdD0wLGw9MCxuPTAsYT1lLmxlbmd0aDtmb3IobGV0IHM9MDtzPGE7cysrKXtsZXQgYT1lW3NdO2lmKDA9PT10JiYwPT09bCl7aWYoIjoiPT09YSl7by5wdXNoKGUuc2xpY2UobixzKSksbj1zKzE7Y29udGludWV9aWYoIi8iPT09YSl7cj1zO2NvbnRpbnVlfX0iWyI9PT1hP3QrKzoiXSI9PT1hP3QtLToiKCI9PT1hP2wrKzoiKSI9PT1hJiZsLS19bGV0IHM9MD09PW8ubGVuZ3RoP2U6ZS5zbGljZShuKSxpPXMsYz0hMTtyZXR1cm4gcy5lbmRzV2l0aCgiISIpPyhpPXMuc2xpY2UoMCwtMSksYz0hMCk6cy5zdGFydHNXaXRoKCIhIikmJihpPXMuc2xpY2UoMSksYz0hMCksdShvLGMsaSxyJiZyPm4/ci1uOnZvaWQgMCl9O2lmKHIpe2xldCBlPXIrIjoiLG89dDt0PXI9PnIuc3RhcnRzV2l0aChlKT9vKHIuc2xpY2UoZS5sZW5ndGgpKTp1KGIsITEscix2b2lkIDAsITApfWlmKG8pe2xldCBlPXQ7dD1yPT5vKHtjbGFzc05hbWU6cixwYXJzZUNsYXNzTmFtZTplfSl9cmV0dXJuIHR9KShtKSxzb3J0TW9kaWZpZXJzOihwPW5ldyBNYXAsbS5vcmRlclNlbnNpdGl2ZU1vZGlmaWVycy5mb3JFYWNoKChlLHIpPT57cC5zZXQoZSwxZTYrcil9KSxlPT57bGV0IHI9W10sbz1bXTtmb3IobGV0IHQ9MDt0PGUubGVuZ3RoO3QrKyl7bGV0IGw9ZVt0XSxuPSJbIj09PWxbMF0sYT1wLmhhcyhsKTtufHxhPyhvLmxlbmd0aD4wJiYoby5zb3J0KCksci5wdXNoKC4uLm8pLG89W10pLHIucHVzaChsKSk6by5wdXNoKGwpfXJldHVybiBvLmxlbmd0aD4wJiYoby5zb3J0KCksci5wdXNoKC4uLm8pKSxyfSksLi4uKGU9PntsZXQgcj0oZT0+e2xldHt0aGVtZTpyLGNsYXNzR3JvdXBzOm99PWU7cmV0dXJuIG4obyxyKX0pKGUpLHtjb25mbGljdGluZ0NsYXNzR3JvdXBzOm8sY29uZmxpY3RpbmdDbGFzc0dyb3VwTW9kaWZpZXJzOmF9PWU7cmV0dXJue2dldENsYXNzR3JvdXBJZDplPT57aWYoZS5zdGFydHNXaXRoKCJbIikmJmUuZW5kc1dpdGgoIl0iKSl7dmFyIG87bGV0IHIsdCxsO3JldHVybiAtMT09PShvPWUpLnNsaWNlKDEsLTEpLmluZGV4T2YoIjoiKT92b2lkIDA6KHQ9KHI9by5zbGljZSgxLC0xKSkuaW5kZXhPZigiOiIpLChsPXIuc2xpY2UoMCx0KSk/ImFyYml0cmFyeS4uIitsOnZvaWQgMCl9bGV0IHQ9ZS5zcGxpdCgiLSIpLG49KygiIj09PXRbMF0mJnQubGVuZ3RoPjEpO3JldHVybiBsKHQsbixyKX0sZ2V0Q29uZmxpY3RpbmdDbGFzc0dyb3VwSWRzOihlLHIpPT57aWYocil7bGV0IHI9YVtlXSxsPW9bZV07aWYocil7aWYobCl7bGV0IGU9QXJyYXkobC5sZW5ndGgrci5sZW5ndGgpO2ZvcihsZXQgcj0wO3I8bC5sZW5ndGg7cisrKWVbcl09bFtyXTtmb3IobGV0IG89MDtvPHIubGVuZ3RoO28rKyllW2wubGVuZ3RoK29dPXJbb107cmV0dXJuIGV9cmV0dXJuIHJ9cmV0dXJuIGx8fHR9cmV0dXJuIG9bZV18fHR9fX0pKG0pfSkuY2FjaGUuZ2V0LHM9by5jYWNoZS5zZXQsaT1jLGMoZCl9LCguLi5lKT0+aSgoKC4uLmUpPT57bGV0IHIsbyx0PTAsbD0iIjtmb3IoO3Q8ZS5sZW5ndGg7KShyPWVbdCsrXSkmJihvPWcocikpJiYobCYmKGwrPSIgIiksbCs9byk7cmV0dXJuIGx9KSguLi5lKSl9KSgoKT0+e2xldCBlPWsoImNvbG9yIikscj1rKCJmb250Iiksbz1rKCJ0ZXh0IiksdD1rKCJmb250LXdlaWdodCIpLGw9aygidHJhY2tpbmciKSxuPWsoImxlYWRpbmciKSxhPWsoImJyZWFrcG9pbnQiKSxzPWsoImNvbnRhaW5lciIpLGk9aygic3BhY2luZyIpLGM9aygicmFkaXVzIiksZD1rKCJzaGFkb3ciKSxtPWsoImluc2V0LXNoYWRvdyIpLHA9aygidGV4dC1zaGFkb3ciKSxiPWsoImRyb3Atc2hhZG93IiksdT1rKCJibHVyIiksZj1rKCJwZXJzcGVjdGl2ZSIpLGc9aygiYXNwZWN0IiksaD1rKCJlYXNlIiksdz1rKCJhbmltYXRlIikseD0oKT0+WyJhdXRvIiwiYXZvaWQiLCJhbGwiLCJhdm9pZC1wYWdlIiwicGFnZSIsImxlZnQiLCJyaWdodCIsImNvbHVtbiJdLHk9KCk9PlsiY2VudGVyIiwidG9wIiwiYm90dG9tIiwibGVmdCIsInJpZ2h0IiwidG9wLWxlZnQiLCJsZWZ0LXRvcCIsInRvcC1yaWdodCIsInJpZ2h0LXRvcCIsImJvdHRvbS1yaWdodCIsInJpZ2h0LWJvdHRvbSIsImJvdHRvbS1sZWZ0IiwibGVmdC1ib3R0b20iXSx2PSgpPT5bLi4ueSgpLEgsUl0sej0oKT0+WyJhdXRvIiwiaGlkZGVuIiwiY2xpcCIsInZpc2libGUiLCJzY3JvbGwiXSxqPSgpPT5bImF1dG8iLCJjb250YWluIiwibm9uZSJdLEM9KCk9PltILFIsaV0sRz0oKT0+W04sImZ1bGwiLCJhdXRvIiwuLi5DKCldLFc9KCk9PltVLCJub25lIiwic3ViZ3JpZCIsSCxSXSxGPSgpPT5bImF1dG8iLHtzcGFuOlsiZnVsbCIsVSxILFJdfSxVLEgsUl0sUD0oKT0+W1UsImF1dG8iLEgsUl0sVD0oKT0+WyJhdXRvIiwibWluIiwibWF4IiwiZnIiLEgsUl0sZXI9KCk9Plsic3RhcnQiLCJlbmQiLCJjZW50ZXIiLCJiZXR3ZWVuIiwiYXJvdW5kIiwiZXZlbmx5Iiwic3RyZXRjaCIsImJhc2VsaW5lIiwiY2VudGVyLXNhZmUiLCJlbmQtc2FmZSJdLGVvPSgpPT5bInN0YXJ0IiwiZW5kIiwiY2VudGVyIiwic3RyZXRjaCIsImNlbnRlci1zYWZlIiwiZW5kLXNhZmUiXSxldD0oKT0+WyJhdXRvIiwuLi5DKCldLGVsPSgpPT5bTiwiYXV0byIsImZ1bGwiLCJkdnciLCJkdmgiLCJsdnciLCJsdmgiLCJzdnciLCJzdmgiLCJtaW4iLCJtYXgiLCJmaXQiLC4uLkMoKV0sZW49KCk9PltOLCJzY3JlZW4iLCJmdWxsIiwiZHZ3IiwibHZ3Iiwic3Z3IiwibWluIiwibWF4IiwiZml0IiwuLi5DKCldLGVhPSgpPT5bTiwic2NyZWVuIiwiZnVsbCIsImxoIiwiZHZoIiwibHZoIiwic3ZoIiwibWluIiwibWF4IiwiZml0IiwuLi5DKCldLGVzPSgpPT5bZSxILFJdLGVpPSgpPT5bLi4ueSgpLFYsSyx7cG9zaXRpb246W0gsUl19XSxlYz0oKT0+WyJuby1yZXBlYXQiLHtyZXBlYXQ6WyIiLCJ4IiwieSIsInNwYWNlIiwicm91bmQiXX1dLGVkPSgpPT5bImF1dG8iLCJjb3ZlciIsImNvbnRhaW4iLFgsQSx7c2l6ZTpbSCxSXX1dLGVtPSgpPT5bJCxKLERdLGVwPSgpPT5bIiIsIm5vbmUiLCJmdWxsIixjLEgsUl0sZWI9KCk9PlsiIixJLEosRF0sZXU9KCk9Plsic29saWQiLCJkYXNoZWQiLCJkb3R0ZWQiLCJkb3VibGUiXSxlZj0oKT0+WyJub3JtYWwiLCJtdWx0aXBseSIsInNjcmVlbiIsIm92ZXJsYXkiLCJkYXJrZW4iLCJsaWdodGVuIiwiY29sb3ItZG9kZ2UiLCJjb2xvci1idXJuIiwiaGFyZC1saWdodCIsInNvZnQtbGlnaHQiLCJkaWZmZXJlbmNlIiwiZXhjbHVzaW9uIiwiaHVlIiwic2F0dXJhdGlvbiIsImNvbG9yIiwibHVtaW5vc2l0eSJdLGVnPSgpPT5bSSwkLFYsS10sZWg9KCk9PlsiIiwibm9uZSIsdSxILFJdLGVrPSgpPT5bIm5vbmUiLEksSCxSXSxldz0oKT0+WyJub25lIixJLEgsUl0sZXg9KCk9PltJLEgsUl0sZXk9KCk9PltOLCJmdWxsIiwuLi5DKCldO3JldHVybntjYWNoZVNpemU6NTAwLHRoZW1lOnthbmltYXRlOlsic3BpbiIsInBpbmciLCJwdWxzZSIsImJvdW5jZSJdLGFzcGVjdDpbInZpZGVvIl0sYmx1cjpbT10sYnJlYWtwb2ludDpbT10sY29sb3I6W1NdLGNvbnRhaW5lcjpbT10sImRyb3Atc2hhZG93IjpbT10sZWFzZTpbImluIiwib3V0IiwiaW4tb3V0Il0sZm9udDpbTV0sImZvbnQtd2VpZ2h0IjpbInRoaW4iLCJleHRyYWxpZ2h0IiwibGlnaHQiLCJub3JtYWwiLCJtZWRpdW0iLCJzZW1pYm9sZCIsImJvbGQiLCJleHRyYWJvbGQiLCJibGFjayJdLCJpbnNldC1zaGFkb3ciOltPXSxsZWFkaW5nOlsibm9uZSIsInRpZ2h0Iiwic251ZyIsIm5vcm1hbCIsInJlbGF4ZWQiLCJsb29zZSJdLHBlcnNwZWN0aXZlOlsiZHJhbWF0aWMiLCJuZWFyIiwibm9ybWFsIiwibWlkcmFuZ2UiLCJkaXN0YW50Iiwibm9uZSJdLHJhZGl1czpbT10sc2hhZG93OltPXSxzcGFjaW5nOlsicHgiLEldLHRleHQ6W09dLCJ0ZXh0LXNoYWRvdyI6W09dLHRyYWNraW5nOlsidGlnaHRlciIsInRpZ2h0Iiwibm9ybWFsIiwid2lkZSIsIndpZGVyIiwid2lkZXN0Il19LGNsYXNzR3JvdXBzOnthc3BlY3Q6W3thc3BlY3Q6WyJhdXRvIiwic3F1YXJlIixOLFIsSCxnXX1dLGNvbnRhaW5lcjpbImNvbnRhaW5lciJdLGNvbHVtbnM6W3tjb2x1bW5zOltJLFIsSCxzXX1dLCJicmVhay1hZnRlciI6W3siYnJlYWstYWZ0ZXIiOngoKX1dLCJicmVhay1iZWZvcmUiOlt7ImJyZWFrLWJlZm9yZSI6eCgpfV0sImJyZWFrLWluc2lkZSI6W3siYnJlYWstaW5zaWRlIjpbImF1dG8iLCJhdm9pZCIsImF2b2lkLXBhZ2UiLCJhdm9pZC1jb2x1bW4iXX1dLCJib3gtZGVjb3JhdGlvbiI6W3siYm94LWRlY29yYXRpb24iOlsic2xpY2UiLCJjbG9uZSJdfV0sYm94Olt7Ym94OlsiYm9yZGVyIiwiY29udGVudCJdfV0sZGlzcGxheTpbImJsb2NrIiwiaW5saW5lLWJsb2NrIiwiaW5saW5lIiwiZmxleCIsImlubGluZS1mbGV4IiwidGFibGUiLCJpbmxpbmUtdGFibGUiLCJ0YWJsZS1jYXB0aW9uIiwidGFibGUtY2VsbCIsInRhYmxlLWNvbHVtbiIsInRhYmxlLWNvbHVtbi1ncm91cCIsInRhYmxlLWZvb3Rlci1ncm91cCIsInRhYmxlLWhlYWRlci1ncm91cCIsInRhYmxlLXJvdy1ncm91cCIsInRhYmxlLXJvdyIsImZsb3ctcm9vdCIsImdyaWQiLCJpbmxpbmUtZ3JpZCIsImNvbnRlbnRzIiwibGlzdC1pdGVtIiwiaGlkZGVuIl0sc3I6WyJzci1vbmx5Iiwibm90LXNyLW9ubHkiXSxmbG9hdDpbe2Zsb2F0OlsicmlnaHQiLCJsZWZ0Iiwibm9uZSIsInN0YXJ0IiwiZW5kIl19XSxjbGVhcjpbe2NsZWFyOlsibGVmdCIsInJpZ2h0IiwiYm90aCIsIm5vbmUiLCJzdGFydCIsImVuZCJdfV0saXNvbGF0aW9uOlsiaXNvbGF0ZSIsImlzb2xhdGlvbi1hdXRvIl0sIm9iamVjdC1maXQiOlt7b2JqZWN0OlsiY29udGFpbiIsImNvdmVyIiwiZmlsbCIsIm5vbmUiLCJzY2FsZS1kb3duIl19XSwib2JqZWN0LXBvc2l0aW9uIjpbe29iamVjdDp2KCl9XSxvdmVyZmxvdzpbe292ZXJmbG93OnooKX1dLCJvdmVyZmxvdy14IjpbeyJvdmVyZmxvdy14Ijp6KCl9XSwib3ZlcmZsb3cteSI6W3sib3ZlcmZsb3cteSI6eigpfV0sb3ZlcnNjcm9sbDpbe292ZXJzY3JvbGw6aigpfV0sIm92ZXJzY3JvbGwteCI6W3sib3ZlcnNjcm9sbC14IjpqKCl9XSwib3ZlcnNjcm9sbC15IjpbeyJvdmVyc2Nyb2xsLXkiOmooKX1dLHBvc2l0aW9uOlsic3RhdGljIiwiZml4ZWQiLCJhYnNvbHV0ZSIsInJlbGF0aXZlIiwic3RpY2t5Il0saW5zZXQ6W3tpbnNldDpHKCl9XSwiaW5zZXQteCI6W3siaW5zZXQteCI6RygpfV0sImluc2V0LXkiOlt7Imluc2V0LXkiOkcoKX1dLHN0YXJ0Olt7Imluc2V0LXMiOkcoKSxzdGFydDpHKCl9XSxlbmQ6W3siaW5zZXQtZSI6RygpLGVuZDpHKCl9XSwiaW5zZXQtYnMiOlt7Imluc2V0LWJzIjpHKCl9XSwiaW5zZXQtYmUiOlt7Imluc2V0LWJlIjpHKCl9XSx0b3A6W3t0b3A6RygpfV0scmlnaHQ6W3tyaWdodDpHKCl9XSxib3R0b206W3tib3R0b206RygpfV0sbGVmdDpbe2xlZnQ6RygpfV0sdmlzaWJpbGl0eTpbInZpc2libGUiLCJpbnZpc2libGUiLCJjb2xsYXBzZSJdLHo6W3t6OltVLCJhdXRvIixILFJdfV0sYmFzaXM6W3tiYXNpczpbTiwiZnVsbCIsImF1dG8iLHMsLi4uQygpXX1dLCJmbGV4LWRpcmVjdGlvbiI6W3tmbGV4Olsicm93Iiwicm93LXJldmVyc2UiLCJjb2wiLCJjb2wtcmV2ZXJzZSJdfV0sImZsZXgtd3JhcCI6W3tmbGV4Olsibm93cmFwIiwid3JhcCIsIndyYXAtcmV2ZXJzZSJdfV0sZmxleDpbe2ZsZXg6W0ksTiwiYXV0byIsImluaXRpYWwiLCJub25lIixSXX1dLGdyb3c6W3tncm93OlsiIixJLEgsUl19XSxzaHJpbms6W3tzaHJpbms6WyIiLEksSCxSXX1dLG9yZGVyOlt7b3JkZXI6W1UsImZpcnN0IiwibGFzdCIsIm5vbmUiLEgsUl19XSwiZ3JpZC1jb2xzIjpbeyJncmlkLWNvbHMiOlcoKX1dLCJjb2wtc3RhcnQtZW5kIjpbe2NvbDpGKCl9XSwiY29sLXN0YXJ0IjpbeyJjb2wtc3RhcnQiOlAoKX1dLCJjb2wtZW5kIjpbeyJjb2wtZW5kIjpQKCl9XSwiZ3JpZC1yb3dzIjpbeyJncmlkLXJvd3MiOlcoKX1dLCJyb3ctc3RhcnQtZW5kIjpbe3JvdzpGKCl9XSwicm93LXN0YXJ0IjpbeyJyb3ctc3RhcnQiOlAoKX1dLCJyb3ctZW5kIjpbeyJyb3ctZW5kIjpQKCl9XSwiZ3JpZC1mbG93IjpbeyJncmlkLWZsb3ciOlsicm93IiwiY29sIiwiZGVuc2UiLCJyb3ctZGVuc2UiLCJjb2wtZGVuc2UiXX1dLCJhdXRvLWNvbHMiOlt7ImF1dG8tY29scyI6VCgpfV0sImF1dG8tcm93cyI6W3siYXV0by1yb3dzIjpUKCl9XSxnYXA6W3tnYXA6QygpfV0sImdhcC14IjpbeyJnYXAteCI6QygpfV0sImdhcC15IjpbeyJnYXAteSI6QygpfV0sImp1c3RpZnktY29udGVudCI6W3tqdXN0aWZ5OlsuLi5lcigpLCJub3JtYWwiXX1dLCJqdXN0aWZ5LWl0ZW1zIjpbeyJqdXN0aWZ5LWl0ZW1zIjpbLi4uZW8oKSwibm9ybWFsIl19XSwianVzdGlmeS1zZWxmIjpbeyJqdXN0aWZ5LXNlbGYiOlsiYXV0byIsLi4uZW8oKV19XSwiYWxpZ24tY29udGVudCI6W3tjb250ZW50Olsibm9ybWFsIiwuLi5lcigpXX1dLCJhbGlnbi1pdGVtcyI6W3tpdGVtczpbLi4uZW8oKSx7YmFzZWxpbmU6WyIiLCJsYXN0Il19XX1dLCJhbGlnbi1zZWxmIjpbe3NlbGY6WyJhdXRvIiwuLi5lbygpLHtiYXNlbGluZTpbIiIsImxhc3QiXX1dfV0sInBsYWNlLWNvbnRlbnQiOlt7InBsYWNlLWNvbnRlbnQiOmVyKCl9XSwicGxhY2UtaXRlbXMiOlt7InBsYWNlLWl0ZW1zIjpbLi4uZW8oKSwiYmFzZWxpbmUiXX1dLCJwbGFjZS1zZWxmIjpbeyJwbGFjZS1zZWxmIjpbImF1dG8iLC4uLmVvKCldfV0scDpbe3A6QygpfV0scHg6W3tweDpDKCl9XSxweTpbe3B5OkMoKX1dLHBzOlt7cHM6QygpfV0scGU6W3twZTpDKCl9XSxwYnM6W3twYnM6QygpfV0scGJlOlt7cGJlOkMoKX1dLHB0Olt7cHQ6QygpfV0scHI6W3twcjpDKCl9XSxwYjpbe3BiOkMoKX1dLHBsOlt7cGw6QygpfV0sbTpbe206ZXQoKX1dLG14Olt7bXg6ZXQoKX1dLG15Olt7bXk6ZXQoKX1dLG1zOlt7bXM6ZXQoKX1dLG1lOlt7bWU6ZXQoKX1dLG1iczpbe21iczpldCgpfV0sbWJlOlt7bWJlOmV0KCl9XSxtdDpbe210OmV0KCl9XSxtcjpbe21yOmV0KCl9XSxtYjpbe21iOmV0KCl9XSxtbDpbe21sOmV0KCl9XSwic3BhY2UteCI6W3sic3BhY2UteCI6QygpfV0sInNwYWNlLXgtcmV2ZXJzZSI6WyJzcGFjZS14LXJldmVyc2UiXSwic3BhY2UteSI6W3sic3BhY2UteSI6QygpfV0sInNwYWNlLXktcmV2ZXJzZSI6WyJzcGFjZS15LXJldmVyc2UiXSxzaXplOlt7c2l6ZTplbCgpfV0sImlubGluZS1zaXplIjpbe2lubGluZTpbImF1dG8iLC4uLmVuKCldfV0sIm1pbi1pbmxpbmUtc2l6ZSI6W3sibWluLWlubGluZSI6WyJhdXRvIiwuLi5lbigpXX1dLCJtYXgtaW5saW5lLXNpemUiOlt7Im1heC1pbmxpbmUiOlsibm9uZSIsLi4uZW4oKV19XSwiYmxvY2stc2l6ZSI6W3tibG9jazpbImF1dG8iLC4uLmVhKCldfV0sIm1pbi1ibG9jay1zaXplIjpbeyJtaW4tYmxvY2siOlsiYXV0byIsLi4uZWEoKV19XSwibWF4LWJsb2NrLXNpemUiOlt7Im1heC1ibG9jayI6WyJub25lIiwuLi5lYSgpXX1dLHc6W3t3OltzLCJzY3JlZW4iLC4uLmVsKCldfV0sIm1pbi13IjpbeyJtaW4tdyI6W3MsInNjcmVlbiIsIm5vbmUiLC4uLmVsKCldfV0sIm1heC13IjpbeyJtYXgtdyI6W3MsInNjcmVlbiIsIm5vbmUiLCJwcm9zZSIse3NjcmVlbjpbYV19LC4uLmVsKCldfV0saDpbe2g6WyJzY3JlZW4iLCJsaCIsLi4uZWwoKV19XSwibWluLWgiOlt7Im1pbi1oIjpbInNjcmVlbiIsImxoIiwibm9uZSIsLi4uZWwoKV19XSwibWF4LWgiOlt7Im1heC1oIjpbInNjcmVlbiIsImxoIiwuLi5lbCgpXX1dLCJmb250LXNpemUiOlt7dGV4dDpbImJhc2UiLG8sSixEXX1dLCJmb250LXNtb290aGluZyI6WyJhbnRpYWxpYXNlZCIsInN1YnBpeGVsLWFudGlhbGlhc2VkIl0sImZvbnQtc3R5bGUiOlsiaXRhbGljIiwibm90LWl0YWxpYyJdLCJmb250LXdlaWdodCI6W3tmb250Olt0LGVlLEJdfV0sImZvbnQtc3RyZXRjaCI6W3siZm9udC1zdHJldGNoIjpbInVsdHJhLWNvbmRlbnNlZCIsImV4dHJhLWNvbmRlbnNlZCIsImNvbmRlbnNlZCIsInNlbWktY29uZGVuc2VkIiwibm9ybWFsIiwic2VtaS1leHBhbmRlZCIsImV4cGFuZGVkIiwiZXh0cmEtZXhwYW5kZWQiLCJ1bHRyYS1leHBhbmRlZCIsJCxSXX1dLCJmb250LWZhbWlseSI6W3tmb250OltRLEUscl19XSwiZm9udC1mZWF0dXJlcyI6W3siZm9udC1mZWF0dXJlcyI6W1JdfV0sImZ2bi1ub3JtYWwiOlsibm9ybWFsLW51bXMiXSwiZnZuLW9yZGluYWwiOlsib3JkaW5hbCJdLCJmdm4tc2xhc2hlZC16ZXJvIjpbInNsYXNoZWQtemVybyJdLCJmdm4tZmlndXJlIjpbImxpbmluZy1udW1zIiwib2xkc3R5bGUtbnVtcyJdLCJmdm4tc3BhY2luZyI6WyJwcm9wb3J0aW9uYWwtbnVtcyIsInRhYnVsYXItbnVtcyJdLCJmdm4tZnJhY3Rpb24iOlsiZGlhZ29uYWwtZnJhY3Rpb25zIiwic3RhY2tlZC1mcmFjdGlvbnMiXSx0cmFja2luZzpbe3RyYWNraW5nOltsLEgsUl19XSwibGluZS1jbGFtcCI6W3sibGluZS1jbGFtcCI6W0ksIm5vbmUiLEgscV19XSxsZWFkaW5nOlt7bGVhZGluZzpbbiwuLi5DKCldfV0sImxpc3QtaW1hZ2UiOlt7Imxpc3QtaW1hZ2UiOlsibm9uZSIsSCxSXX1dLCJsaXN0LXN0eWxlLXBvc2l0aW9uIjpbe2xpc3Q6WyJpbnNpZGUiLCJvdXRzaWRlIl19XSwibGlzdC1zdHlsZS10eXBlIjpbe2xpc3Q6WyJkaXNjIiwiZGVjaW1hbCIsIm5vbmUiLEgsUl19XSwidGV4dC1hbGlnbm1lbnQiOlt7dGV4dDpbImxlZnQiLCJjZW50ZXIiLCJyaWdodCIsImp1c3RpZnkiLCJzdGFydCIsImVuZCJdfV0sInBsYWNlaG9sZGVyLWNvbG9yIjpbe3BsYWNlaG9sZGVyOmVzKCl9XSwidGV4dC1jb2xvciI6W3t0ZXh0OmVzKCl9XSwidGV4dC1kZWNvcmF0aW9uIjpbInVuZGVybGluZSIsIm92ZXJsaW5lIiwibGluZS10aHJvdWdoIiwibm8tdW5kZXJsaW5lIl0sInRleHQtZGVjb3JhdGlvbi1zdHlsZSI6W3tkZWNvcmF0aW9uOlsuLi5ldSgpLCJ3YXZ5Il19XSwidGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzcyI6W3tkZWNvcmF0aW9uOltJLCJmcm9tLWZvbnQiLCJhdXRvIixILERdfV0sInRleHQtZGVjb3JhdGlvbi1jb2xvciI6W3tkZWNvcmF0aW9uOmVzKCl9XSwidW5kZXJsaW5lLW9mZnNldCI6W3sidW5kZXJsaW5lLW9mZnNldCI6W0ksImF1dG8iLEgsUl19XSwidGV4dC10cmFuc2Zvcm0iOlsidXBwZXJjYXNlIiwibG93ZXJjYXNlIiwiY2FwaXRhbGl6ZSIsIm5vcm1hbC1jYXNlIl0sInRleHQtb3ZlcmZsb3ciOlsidHJ1bmNhdGUiLCJ0ZXh0LWVsbGlwc2lzIiwidGV4dC1jbGlwIl0sInRleHQtd3JhcCI6W3t0ZXh0Olsid3JhcCIsIm5vd3JhcCIsImJhbGFuY2UiLCJwcmV0dHkiXX1dLGluZGVudDpbe2luZGVudDpDKCl9XSwidmVydGljYWwtYWxpZ24iOlt7YWxpZ246WyJiYXNlbGluZSIsInRvcCIsIm1pZGRsZSIsImJvdHRvbSIsInRleHQtdG9wIiwidGV4dC1ib3R0b20iLCJzdWIiLCJzdXBlciIsSCxSXX1dLHdoaXRlc3BhY2U6W3t3aGl0ZXNwYWNlOlsibm9ybWFsIiwibm93cmFwIiwicHJlIiwicHJlLWxpbmUiLCJwcmUtd3JhcCIsImJyZWFrLXNwYWNlcyJdfV0sYnJlYWs6W3ticmVhazpbIm5vcm1hbCIsIndvcmRzIiwiYWxsIiwia2VlcCJdfV0sd3JhcDpbe3dyYXA6WyJicmVhay13b3JkIiwiYW55d2hlcmUiLCJub3JtYWwiXX1dLGh5cGhlbnM6W3toeXBoZW5zOlsibm9uZSIsIm1hbnVhbCIsImF1dG8iXX1dLGNvbnRlbnQ6W3tjb250ZW50Olsibm9uZSIsSCxSXX1dLCJiZy1hdHRhY2htZW50Ijpbe2JnOlsiZml4ZWQiLCJsb2NhbCIsInNjcm9sbCJdfV0sImJnLWNsaXAiOlt7ImJnLWNsaXAiOlsiYm9yZGVyIiwicGFkZGluZyIsImNvbnRlbnQiLCJ0ZXh0Il19XSwiYmctb3JpZ2luIjpbeyJiZy1vcmlnaW4iOlsiYm9yZGVyIiwicGFkZGluZyIsImNvbnRlbnQiXX1dLCJiZy1wb3NpdGlvbiI6W3tiZzplaSgpfV0sImJnLXJlcGVhdCI6W3tiZzplYygpfV0sImJnLXNpemUiOlt7Ymc6ZWQoKX1dLCJiZy1pbWFnZSI6W3tiZzpbIm5vbmUiLHtsaW5lYXI6W3t0bzpbInQiLCJ0ciIsInIiLCJiciIsImIiLCJibCIsImwiLCJ0bCJdfSxVLEgsUl0scmFkaWFsOlsiIixILFJdLGNvbmljOltVLEgsUl19LFksX119XSwiYmctY29sb3IiOlt7Ymc6ZXMoKX1dLCJncmFkaWVudC1mcm9tLXBvcyI6W3tmcm9tOmVtKCl9XSwiZ3JhZGllbnQtdmlhLXBvcyI6W3t2aWE6ZW0oKX1dLCJncmFkaWVudC10by1wb3MiOlt7dG86ZW0oKX1dLCJncmFkaWVudC1mcm9tIjpbe2Zyb206ZXMoKX1dLCJncmFkaWVudC12aWEiOlt7dmlhOmVzKCl9XSwiZ3JhZGllbnQtdG8iOlt7dG86ZXMoKX1dLHJvdW5kZWQ6W3tyb3VuZGVkOmVwKCl9XSwicm91bmRlZC1zIjpbeyJyb3VuZGVkLXMiOmVwKCl9XSwicm91bmRlZC1lIjpbeyJyb3VuZGVkLWUiOmVwKCl9XSwicm91bmRlZC10IjpbeyJyb3VuZGVkLXQiOmVwKCl9XSwicm91bmRlZC1yIjpbeyJyb3VuZGVkLXIiOmVwKCl9XSwicm91bmRlZC1iIjpbeyJyb3VuZGVkLWIiOmVwKCl9XSwicm91bmRlZC1sIjpbeyJyb3VuZGVkLWwiOmVwKCl9XSwicm91bmRlZC1zcyI6W3sicm91bmRlZC1zcyI6ZXAoKX1dLCJyb3VuZGVkLXNlIjpbeyJyb3VuZGVkLXNlIjplcCgpfV0sInJvdW5kZWQtZWUiOlt7InJvdW5kZWQtZWUiOmVwKCl9XSwicm91bmRlZC1lcyI6W3sicm91bmRlZC1lcyI6ZXAoKX1dLCJyb3VuZGVkLXRsIjpbeyJyb3VuZGVkLXRsIjplcCgpfV0sInJvdW5kZWQtdHIiOlt7InJvdW5kZWQtdHIiOmVwKCl9XSwicm91bmRlZC1iciI6W3sicm91bmRlZC1iciI6ZXAoKX1dLCJyb3VuZGVkLWJsIjpbeyJyb3VuZGVkLWJsIjplcCgpfV0sImJvcmRlci13Ijpbe2JvcmRlcjplYigpfV0sImJvcmRlci13LXgiOlt7ImJvcmRlci14IjplYigpfV0sImJvcmRlci13LXkiOlt7ImJvcmRlci15IjplYigpfV0sImJvcmRlci13LXMiOlt7ImJvcmRlci1zIjplYigpfV0sImJvcmRlci13LWUiOlt7ImJvcmRlci1lIjplYigpfV0sImJvcmRlci13LWJzIjpbeyJib3JkZXItYnMiOmViKCl9XSwiYm9yZGVyLXctYmUiOlt7ImJvcmRlci1iZSI6ZWIoKX1dLCJib3JkZXItdy10IjpbeyJib3JkZXItdCI6ZWIoKX1dLCJib3JkZXItdy1yIjpbeyJib3JkZXItciI6ZWIoKX1dLCJib3JkZXItdy1iIjpbeyJib3JkZXItYiI6ZWIoKX1dLCJib3JkZXItdy1sIjpbeyJib3JkZXItbCI6ZWIoKX1dLCJkaXZpZGUteCI6W3siZGl2aWRlLXgiOmViKCl9XSwiZGl2aWRlLXgtcmV2ZXJzZSI6WyJkaXZpZGUteC1yZXZlcnNlIl0sImRpdmlkZS15IjpbeyJkaXZpZGUteSI6ZWIoKX1dLCJkaXZpZGUteS1yZXZlcnNlIjpbImRpdmlkZS15LXJldmVyc2UiXSwiYm9yZGVyLXN0eWxlIjpbe2JvcmRlcjpbLi4uZXUoKSwiaGlkZGVuIiwibm9uZSJdfV0sImRpdmlkZS1zdHlsZSI6W3tkaXZpZGU6Wy4uLmV1KCksImhpZGRlbiIsIm5vbmUiXX1dLCJib3JkZXItY29sb3IiOlt7Ym9yZGVyOmVzKCl9XSwiYm9yZGVyLWNvbG9yLXgiOlt7ImJvcmRlci14IjplcygpfV0sImJvcmRlci1jb2xvci15IjpbeyJib3JkZXIteSI6ZXMoKX1dLCJib3JkZXItY29sb3ItcyI6W3siYm9yZGVyLXMiOmVzKCl9XSwiYm9yZGVyLWNvbG9yLWUiOlt7ImJvcmRlci1lIjplcygpfV0sImJvcmRlci1jb2xvci1icyI6W3siYm9yZGVyLWJzIjplcygpfV0sImJvcmRlci1jb2xvci1iZSI6W3siYm9yZGVyLWJlIjplcygpfV0sImJvcmRlci1jb2xvci10IjpbeyJib3JkZXItdCI6ZXMoKX1dLCJib3JkZXItY29sb3ItciI6W3siYm9yZGVyLXIiOmVzKCl9XSwiYm9yZGVyLWNvbG9yLWIiOlt7ImJvcmRlci1iIjplcygpfV0sImJvcmRlci1jb2xvci1sIjpbeyJib3JkZXItbCI6ZXMoKX1dLCJkaXZpZGUtY29sb3IiOlt7ZGl2aWRlOmVzKCl9XSwib3V0bGluZS1zdHlsZSI6W3tvdXRsaW5lOlsuLi5ldSgpLCJub25lIiwiaGlkZGVuIl19XSwib3V0bGluZS1vZmZzZXQiOlt7Im91dGxpbmUtb2Zmc2V0IjpbSSxILFJdfV0sIm91dGxpbmUtdyI6W3tvdXRsaW5lOlsiIixJLEosRF19XSwib3V0bGluZS1jb2xvciI6W3tvdXRsaW5lOmVzKCl9XSxzaGFkb3c6W3tzaGFkb3c6WyIiLCJub25lIixkLFosTF19XSwic2hhZG93LWNvbG9yIjpbe3NoYWRvdzplcygpfV0sImluc2V0LXNoYWRvdyI6W3siaW5zZXQtc2hhZG93IjpbIm5vbmUiLG0sWixMXX1dLCJpbnNldC1zaGFkb3ctY29sb3IiOlt7Imluc2V0LXNoYWRvdyI6ZXMoKX1dLCJyaW5nLXciOlt7cmluZzplYigpfV0sInJpbmctdy1pbnNldCI6WyJyaW5nLWluc2V0Il0sInJpbmctY29sb3IiOlt7cmluZzplcygpfV0sInJpbmctb2Zmc2V0LXciOlt7InJpbmctb2Zmc2V0IjpbSSxEXX1dLCJyaW5nLW9mZnNldC1jb2xvciI6W3sicmluZy1vZmZzZXQiOmVzKCl9XSwiaW5zZXQtcmluZy13IjpbeyJpbnNldC1yaW5nIjplYigpfV0sImluc2V0LXJpbmctY29sb3IiOlt7Imluc2V0LXJpbmciOmVzKCl9XSwidGV4dC1zaGFkb3ciOlt7InRleHQtc2hhZG93IjpbIm5vbmUiLHAsWixMXX1dLCJ0ZXh0LXNoYWRvdy1jb2xvciI6W3sidGV4dC1zaGFkb3ciOmVzKCl9XSxvcGFjaXR5Olt7b3BhY2l0eTpbSSxILFJdfV0sIm1peC1ibGVuZCI6W3sibWl4LWJsZW5kIjpbLi4uZWYoKSwicGx1cy1kYXJrZXIiLCJwbHVzLWxpZ2h0ZXIiXX1dLCJiZy1ibGVuZCI6W3siYmctYmxlbmQiOmVmKCl9XSwibWFzay1jbGlwIjpbeyJtYXNrLWNsaXAiOlsiYm9yZGVyIiwicGFkZGluZyIsImNvbnRlbnQiLCJmaWxsIiwic3Ryb2tlIiwidmlldyJdfSwibWFzay1uby1jbGlwIl0sIm1hc2stY29tcG9zaXRlIjpbe21hc2s6WyJhZGQiLCJzdWJ0cmFjdCIsImludGVyc2VjdCIsImV4Y2x1ZGUiXX1dLCJtYXNrLWltYWdlLWxpbmVhci1wb3MiOlt7Im1hc2stbGluZWFyIjpbSV19XSwibWFzay1pbWFnZS1saW5lYXItZnJvbS1wb3MiOlt7Im1hc2stbGluZWFyLWZyb20iOmVnKCl9XSwibWFzay1pbWFnZS1saW5lYXItdG8tcG9zIjpbeyJtYXNrLWxpbmVhci10byI6ZWcoKX1dLCJtYXNrLWltYWdlLWxpbmVhci1mcm9tLWNvbG9yIjpbeyJtYXNrLWxpbmVhci1mcm9tIjplcygpfV0sIm1hc2staW1hZ2UtbGluZWFyLXRvLWNvbG9yIjpbeyJtYXNrLWxpbmVhci10byI6ZXMoKX1dLCJtYXNrLWltYWdlLXQtZnJvbS1wb3MiOlt7Im1hc2stdC1mcm9tIjplZygpfV0sIm1hc2staW1hZ2UtdC10by1wb3MiOlt7Im1hc2stdC10byI6ZWcoKX1dLCJtYXNrLWltYWdlLXQtZnJvbS1jb2xvciI6W3sibWFzay10LWZyb20iOmVzKCl9XSwibWFzay1pbWFnZS10LXRvLWNvbG9yIjpbeyJtYXNrLXQtdG8iOmVzKCl9XSwibWFzay1pbWFnZS1yLWZyb20tcG9zIjpbeyJtYXNrLXItZnJvbSI6ZWcoKX1dLCJtYXNrLWltYWdlLXItdG8tcG9zIjpbeyJtYXNrLXItdG8iOmVnKCl9XSwibWFzay1pbWFnZS1yLWZyb20tY29sb3IiOlt7Im1hc2stci1mcm9tIjplcygpfV0sIm1hc2staW1hZ2Utci10by1jb2xvciI6W3sibWFzay1yLXRvIjplcygpfV0sIm1hc2staW1hZ2UtYi1mcm9tLXBvcyI6W3sibWFzay1iLWZyb20iOmVnKCl9XSwibWFzay1pbWFnZS1iLXRvLXBvcyI6W3sibWFzay1iLXRvIjplZygpfV0sIm1hc2staW1hZ2UtYi1mcm9tLWNvbG9yIjpbeyJtYXNrLWItZnJvbSI6ZXMoKX1dLCJtYXNrLWltYWdlLWItdG8tY29sb3IiOlt7Im1hc2stYi10byI6ZXMoKX1dLCJtYXNrLWltYWdlLWwtZnJvbS1wb3MiOlt7Im1hc2stbC1mcm9tIjplZygpfV0sIm1hc2staW1hZ2UtbC10by1wb3MiOlt7Im1hc2stbC10byI6ZWcoKX1dLCJtYXNrLWltYWdlLWwtZnJvbS1jb2xvciI6W3sibWFzay1sLWZyb20iOmVzKCl9XSwibWFzay1pbWFnZS1sLXRvLWNvbG9yIjpbeyJtYXNrLWwtdG8iOmVzKCl9XSwibWFzay1pbWFnZS14LWZyb20tcG9zIjpbeyJtYXNrLXgtZnJvbSI6ZWcoKX1dLCJtYXNrLWltYWdlLXgtdG8tcG9zIjpbeyJtYXNrLXgtdG8iOmVnKCl9XSwibWFzay1pbWFnZS14LWZyb20tY29sb3IiOlt7Im1hc2steC1mcm9tIjplcygpfV0sIm1hc2staW1hZ2UteC10by1jb2xvciI6W3sibWFzay14LXRvIjplcygpfV0sIm1hc2staW1hZ2UteS1mcm9tLXBvcyI6W3sibWFzay15LWZyb20iOmVnKCl9XSwibWFzay1pbWFnZS15LXRvLXBvcyI6W3sibWFzay15LXRvIjplZygpfV0sIm1hc2staW1hZ2UteS1mcm9tLWNvbG9yIjpbeyJtYXNrLXktZnJvbSI6ZXMoKX1dLCJtYXNrLWltYWdlLXktdG8tY29sb3IiOlt7Im1hc2steS10byI6ZXMoKX1dLCJtYXNrLWltYWdlLXJhZGlhbCI6W3sibWFzay1yYWRpYWwiOltILFJdfV0sIm1hc2staW1hZ2UtcmFkaWFsLWZyb20tcG9zIjpbeyJtYXNrLXJhZGlhbC1mcm9tIjplZygpfV0sIm1hc2staW1hZ2UtcmFkaWFsLXRvLXBvcyI6W3sibWFzay1yYWRpYWwtdG8iOmVnKCl9XSwibWFzay1pbWFnZS1yYWRpYWwtZnJvbS1jb2xvciI6W3sibWFzay1yYWRpYWwtZnJvbSI6ZXMoKX1dLCJtYXNrLWltYWdlLXJhZGlhbC10by1jb2xvciI6W3sibWFzay1yYWRpYWwtdG8iOmVzKCl9XSwibWFzay1pbWFnZS1yYWRpYWwtc2hhcGUiOlt7Im1hc2stcmFkaWFsIjpbImNpcmNsZSIsImVsbGlwc2UiXX1dLCJtYXNrLWltYWdlLXJhZGlhbC1zaXplIjpbeyJtYXNrLXJhZGlhbCI6W3tjbG9zZXN0Olsic2lkZSIsImNvcm5lciJdLGZhcnRoZXN0Olsic2lkZSIsImNvcm5lciJdfV19XSwibWFzay1pbWFnZS1yYWRpYWwtcG9zIjpbeyJtYXNrLXJhZGlhbC1hdCI6eSgpfV0sIm1hc2staW1hZ2UtY29uaWMtcG9zIjpbeyJtYXNrLWNvbmljIjpbSV19XSwibWFzay1pbWFnZS1jb25pYy1mcm9tLXBvcyI6W3sibWFzay1jb25pYy1mcm9tIjplZygpfV0sIm1hc2staW1hZ2UtY29uaWMtdG8tcG9zIjpbeyJtYXNrLWNvbmljLXRvIjplZygpfV0sIm1hc2staW1hZ2UtY29uaWMtZnJvbS1jb2xvciI6W3sibWFzay1jb25pYy1mcm9tIjplcygpfV0sIm1hc2staW1hZ2UtY29uaWMtdG8tY29sb3IiOlt7Im1hc2stY29uaWMtdG8iOmVzKCl9XSwibWFzay1tb2RlIjpbe21hc2s6WyJhbHBoYSIsImx1bWluYW5jZSIsIm1hdGNoIl19XSwibWFzay1vcmlnaW4iOlt7Im1hc2stb3JpZ2luIjpbImJvcmRlciIsInBhZGRpbmciLCJjb250ZW50IiwiZmlsbCIsInN0cm9rZSIsInZpZXciXX1dLCJtYXNrLXBvc2l0aW9uIjpbe21hc2s6ZWkoKX1dLCJtYXNrLXJlcGVhdCI6W3ttYXNrOmVjKCl9XSwibWFzay1zaXplIjpbe21hc2s6ZWQoKX1dLCJtYXNrLXR5cGUiOlt7Im1hc2stdHlwZSI6WyJhbHBoYSIsImx1bWluYW5jZSJdfV0sIm1hc2staW1hZ2UiOlt7bWFzazpbIm5vbmUiLEgsUl19XSxmaWx0ZXI6W3tmaWx0ZXI6WyIiLCJub25lIixILFJdfV0sYmx1cjpbe2JsdXI6ZWgoKX1dLGJyaWdodG5lc3M6W3ticmlnaHRuZXNzOltJLEgsUl19XSxjb250cmFzdDpbe2NvbnRyYXN0OltJLEgsUl19XSwiZHJvcC1zaGFkb3ciOlt7ImRyb3Atc2hhZG93IjpbIiIsIm5vbmUiLGIsWixMXX1dLCJkcm9wLXNoYWRvdy1jb2xvciI6W3siZHJvcC1zaGFkb3ciOmVzKCl9XSxncmF5c2NhbGU6W3tncmF5c2NhbGU6WyIiLEksSCxSXX1dLCJodWUtcm90YXRlIjpbeyJodWUtcm90YXRlIjpbSSxILFJdfV0saW52ZXJ0Olt7aW52ZXJ0OlsiIixJLEgsUl19XSxzYXR1cmF0ZTpbe3NhdHVyYXRlOltJLEgsUl19XSxzZXBpYTpbe3NlcGlhOlsiIixJLEgsUl19XSwiYmFja2Ryb3AtZmlsdGVyIjpbeyJiYWNrZHJvcC1maWx0ZXIiOlsiIiwibm9uZSIsSCxSXX1dLCJiYWNrZHJvcC1ibHVyIjpbeyJiYWNrZHJvcC1ibHVyIjplaCgpfV0sImJhY2tkcm9wLWJyaWdodG5lc3MiOlt7ImJhY2tkcm9wLWJyaWdodG5lc3MiOltJLEgsUl19XSwiYmFja2Ryb3AtY29udHJhc3QiOlt7ImJhY2tkcm9wLWNvbnRyYXN0IjpbSSxILFJdfV0sImJhY2tkcm9wLWdyYXlzY2FsZSI6W3siYmFja2Ryb3AtZ3JheXNjYWxlIjpbIiIsSSxILFJdfV0sImJhY2tkcm9wLWh1ZS1yb3RhdGUiOlt7ImJhY2tkcm9wLWh1ZS1yb3RhdGUiOltJLEgsUl19XSwiYmFja2Ryb3AtaW52ZXJ0IjpbeyJiYWNrZHJvcC1pbnZlcnQiOlsiIixJLEgsUl19XSwiYmFja2Ryb3Atb3BhY2l0eSI6W3siYmFja2Ryb3Atb3BhY2l0eSI6W0ksSCxSXX1dLCJiYWNrZHJvcC1zYXR1cmF0ZSI6W3siYmFja2Ryb3Atc2F0dXJhdGUiOltJLEgsUl19XSwiYmFja2Ryb3Atc2VwaWEiOlt7ImJhY2tkcm9wLXNlcGlhIjpbIiIsSSxILFJdfV0sImJvcmRlci1jb2xsYXBzZSI6W3tib3JkZXI6WyJjb2xsYXBzZSIsInNlcGFyYXRlIl19XSwiYm9yZGVyLXNwYWNpbmciOlt7ImJvcmRlci1zcGFjaW5nIjpDKCl9XSwiYm9yZGVyLXNwYWNpbmcteCI6W3siYm9yZGVyLXNwYWNpbmcteCI6QygpfV0sImJvcmRlci1zcGFjaW5nLXkiOlt7ImJvcmRlci1zcGFjaW5nLXkiOkMoKX1dLCJ0YWJsZS1sYXlvdXQiOlt7dGFibGU6WyJhdXRvIiwiZml4ZWQiXX1dLGNhcHRpb246W3tjYXB0aW9uOlsidG9wIiwiYm90dG9tIl19XSx0cmFuc2l0aW9uOlt7dHJhbnNpdGlvbjpbIiIsImFsbCIsImNvbG9ycyIsIm9wYWNpdHkiLCJzaGFkb3ciLCJ0cmFuc2Zvcm0iLCJub25lIixILFJdfV0sInRyYW5zaXRpb24tYmVoYXZpb3IiOlt7dHJhbnNpdGlvbjpbIm5vcm1hbCIsImRpc2NyZXRlIl19XSxkdXJhdGlvbjpbe2R1cmF0aW9uOltJLCJpbml0aWFsIixILFJdfV0sZWFzZTpbe2Vhc2U6WyJsaW5lYXIiLCJpbml0aWFsIixoLEgsUl19XSxkZWxheTpbe2RlbGF5OltJLEgsUl19XSxhbmltYXRlOlt7YW5pbWF0ZTpbIm5vbmUiLHcsSCxSXX1dLGJhY2tmYWNlOlt7YmFja2ZhY2U6WyJoaWRkZW4iLCJ2aXNpYmxlIl19XSxwZXJzcGVjdGl2ZTpbe3BlcnNwZWN0aXZlOltmLEgsUl19XSwicGVyc3BlY3RpdmUtb3JpZ2luIjpbeyJwZXJzcGVjdGl2ZS1vcmlnaW4iOnYoKX1dLHJvdGF0ZTpbe3JvdGF0ZTplaygpfV0sInJvdGF0ZS14IjpbeyJyb3RhdGUteCI6ZWsoKX1dLCJyb3RhdGUteSI6W3sicm90YXRlLXkiOmVrKCl9XSwicm90YXRlLXoiOlt7InJvdGF0ZS16IjplaygpfV0sc2NhbGU6W3tzY2FsZTpldygpfV0sInNjYWxlLXgiOlt7InNjYWxlLXgiOmV3KCl9XSwic2NhbGUteSI6W3sic2NhbGUteSI6ZXcoKX1dLCJzY2FsZS16IjpbeyJzY2FsZS16IjpldygpfV0sInNjYWxlLTNkIjpbInNjYWxlLTNkIl0sc2tldzpbe3NrZXc6ZXgoKX1dLCJza2V3LXgiOlt7InNrZXcteCI6ZXgoKX1dLCJza2V3LXkiOlt7InNrZXcteSI6ZXgoKX1dLHRyYW5zZm9ybTpbe3RyYW5zZm9ybTpbSCxSLCIiLCJub25lIiwiZ3B1IiwiY3B1Il19XSwidHJhbnNmb3JtLW9yaWdpbiI6W3tvcmlnaW46digpfV0sInRyYW5zZm9ybS1zdHlsZSI6W3t0cmFuc2Zvcm06WyIzZCIsImZsYXQiXX1dLHRyYW5zbGF0ZTpbe3RyYW5zbGF0ZTpleSgpfV0sInRyYW5zbGF0ZS14IjpbeyJ0cmFuc2xhdGUteCI6ZXkoKX1dLCJ0cmFuc2xhdGUteSI6W3sidHJhbnNsYXRlLXkiOmV5KCl9XSwidHJhbnNsYXRlLXoiOlt7InRyYW5zbGF0ZS16IjpleSgpfV0sInRyYW5zbGF0ZS1ub25lIjpbInRyYW5zbGF0ZS1ub25lIl0sYWNjZW50Olt7YWNjZW50OmVzKCl9XSxhcHBlYXJhbmNlOlt7YXBwZWFyYW5jZTpbIm5vbmUiLCJhdXRvIl19XSwiY2FyZXQtY29sb3IiOlt7Y2FyZXQ6ZXMoKX1dLCJjb2xvci1zY2hlbWUiOlt7c2NoZW1lOlsibm9ybWFsIiwiZGFyayIsImxpZ2h0IiwibGlnaHQtZGFyayIsIm9ubHktZGFyayIsIm9ubHktbGlnaHQiXX1dLGN1cnNvcjpbe2N1cnNvcjpbImF1dG8iLCJkZWZhdWx0IiwicG9pbnRlciIsIndhaXQiLCJ0ZXh0IiwibW92ZSIsImhlbHAiLCJub3QtYWxsb3dlZCIsIm5vbmUiLCJjb250ZXh0LW1lbnUiLCJwcm9ncmVzcyIsImNlbGwiLCJjcm9zc2hhaXIiLCJ2ZXJ0aWNhbC10ZXh0IiwiYWxpYXMiLCJjb3B5Iiwibm8tZHJvcCIsImdyYWIiLCJncmFiYmluZyIsImFsbC1zY3JvbGwiLCJjb2wtcmVzaXplIiwicm93LXJlc2l6ZSIsIm4tcmVzaXplIiwiZS1yZXNpemUiLCJzLXJlc2l6ZSIsInctcmVzaXplIiwibmUtcmVzaXplIiwibnctcmVzaXplIiwic2UtcmVzaXplIiwic3ctcmVzaXplIiwiZXctcmVzaXplIiwibnMtcmVzaXplIiwibmVzdy1yZXNpemUiLCJud3NlLXJlc2l6ZSIsInpvb20taW4iLCJ6b29tLW91dCIsSCxSXX1dLCJmaWVsZC1zaXppbmciOlt7ImZpZWxkLXNpemluZyI6WyJmaXhlZCIsImNvbnRlbnQiXX1dLCJwb2ludGVyLWV2ZW50cyI6W3sicG9pbnRlci1ldmVudHMiOlsiYXV0byIsIm5vbmUiXX1dLHJlc2l6ZTpbe3Jlc2l6ZTpbIm5vbmUiLCIiLCJ5IiwieCJdfV0sInNjcm9sbC1iZWhhdmlvciI6W3tzY3JvbGw6WyJhdXRvIiwic21vb3RoIl19XSwic2Nyb2xsLW0iOlt7InNjcm9sbC1tIjpDKCl9XSwic2Nyb2xsLW14IjpbeyJzY3JvbGwtbXgiOkMoKX1dLCJzY3JvbGwtbXkiOlt7InNjcm9sbC1teSI6QygpfV0sInNjcm9sbC1tcyI6W3sic2Nyb2xsLW1zIjpDKCl9XSwic2Nyb2xsLW1lIjpbeyJzY3JvbGwtbWUiOkMoKX1dLCJzY3JvbGwtbWJzIjpbeyJzY3JvbGwtbWJzIjpDKCl9XSwic2Nyb2xsLW1iZSI6W3sic2Nyb2xsLW1iZSI6QygpfV0sInNjcm9sbC1tdCI6W3sic2Nyb2xsLW10IjpDKCl9XSwic2Nyb2xsLW1yIjpbeyJzY3JvbGwtbXIiOkMoKX1dLCJzY3JvbGwtbWIiOlt7InNjcm9sbC1tYiI6QygpfV0sInNjcm9sbC1tbCI6W3sic2Nyb2xsLW1sIjpDKCl9XSwic2Nyb2xsLXAiOlt7InNjcm9sbC1wIjpDKCl9XSwic2Nyb2xsLXB4IjpbeyJzY3JvbGwtcHgiOkMoKX1dLCJzY3JvbGwtcHkiOlt7InNjcm9sbC1weSI6QygpfV0sInNjcm9sbC1wcyI6W3sic2Nyb2xsLXBzIjpDKCl9XSwic2Nyb2xsLXBlIjpbeyJzY3JvbGwtcGUiOkMoKX1dLCJzY3JvbGwtcGJzIjpbeyJzY3JvbGwtcGJzIjpDKCl9XSwic2Nyb2xsLXBiZSI6W3sic2Nyb2xsLXBiZSI6QygpfV0sInNjcm9sbC1wdCI6W3sic2Nyb2xsLXB0IjpDKCl9XSwic2Nyb2xsLXByIjpbeyJzY3JvbGwtcHIiOkMoKX1dLCJzY3JvbGwtcGIiOlt7InNjcm9sbC1wYiI6QygpfV0sInNjcm9sbC1wbCI6W3sic2Nyb2xsLXBsIjpDKCl9XSwic25hcC1hbGlnbiI6W3tzbmFwOlsic3RhcnQiLCJlbmQiLCJjZW50ZXIiLCJhbGlnbi1ub25lIl19XSwic25hcC1zdG9wIjpbe3NuYXA6WyJub3JtYWwiLCJhbHdheXMiXX1dLCJzbmFwLXR5cGUiOlt7c25hcDpbIm5vbmUiLCJ4IiwieSIsImJvdGgiXX1dLCJzbmFwLXN0cmljdG5lc3MiOlt7c25hcDpbIm1hbmRhdG9yeSIsInByb3hpbWl0eSJdfV0sdG91Y2g6W3t0b3VjaDpbImF1dG8iLCJub25lIiwibWFuaXB1bGF0aW9uIl19XSwidG91Y2gteCI6W3sidG91Y2gtcGFuIjpbIngiLCJsZWZ0IiwicmlnaHQiXX1dLCJ0b3VjaC15IjpbeyJ0b3VjaC1wYW4iOlsieSIsInVwIiwiZG93biJdfV0sInRvdWNoLXB6IjpbInRvdWNoLXBpbmNoLXpvb20iXSxzZWxlY3Q6W3tzZWxlY3Q6WyJub25lIiwidGV4dCIsImFsbCIsImF1dG8iXX1dLCJ3aWxsLWNoYW5nZSI6W3sid2lsbC1jaGFuZ2UiOlsiYXV0byIsInNjcm9sbCIsImNvbnRlbnRzIiwidHJhbnNmb3JtIixILFJdfV0sZmlsbDpbe2ZpbGw6WyJub25lIiwuLi5lcygpXX1dLCJzdHJva2UtdyI6W3tzdHJva2U6W0ksSixELHFdfV0sc3Ryb2tlOlt7c3Ryb2tlOlsibm9uZSIsLi4uZXMoKV19XSwiZm9yY2VkLWNvbG9yLWFkanVzdCI6W3siZm9yY2VkLWNvbG9yLWFkanVzdCI6WyJhdXRvIiwibm9uZSJdfV19LGNvbmZsaWN0aW5nQ2xhc3NHcm91cHM6e292ZXJmbG93Olsib3ZlcmZsb3cteCIsIm92ZXJmbG93LXkiXSxvdmVyc2Nyb2xsOlsib3ZlcnNjcm9sbC14Iiwib3ZlcnNjcm9sbC15Il0saW5zZXQ6WyJpbnNldC14IiwiaW5zZXQteSIsImluc2V0LWJzIiwiaW5zZXQtYmUiLCJzdGFydCIsImVuZCIsInRvcCIsInJpZ2h0IiwiYm90dG9tIiwibGVmdCJdLCJpbnNldC14IjpbInJpZ2h0IiwibGVmdCJdLCJpbnNldC15IjpbInRvcCIsImJvdHRvbSJdLGZsZXg6WyJiYXNpcyIsImdyb3ciLCJzaHJpbmsiXSxnYXA6WyJnYXAteCIsImdhcC15Il0scDpbInB4IiwicHkiLCJwcyIsInBlIiwicGJzIiwicGJlIiwicHQiLCJwciIsInBiIiwicGwiXSxweDpbInByIiwicGwiXSxweTpbInB0IiwicGIiXSxtOlsibXgiLCJteSIsIm1zIiwibWUiLCJtYnMiLCJtYmUiLCJtdCIsIm1yIiwibWIiLCJtbCJdLG14OlsibXIiLCJtbCJdLG15OlsibXQiLCJtYiJdLHNpemU6WyJ3IiwiaCJdLCJmb250LXNpemUiOlsibGVhZGluZyJdLCJmdm4tbm9ybWFsIjpbImZ2bi1vcmRpbmFsIiwiZnZuLXNsYXNoZWQtemVybyIsImZ2bi1maWd1cmUiLCJmdm4tc3BhY2luZyIsImZ2bi1mcmFjdGlvbiJdLCJmdm4tb3JkaW5hbCI6WyJmdm4tbm9ybWFsIl0sImZ2bi1zbGFzaGVkLXplcm8iOlsiZnZuLW5vcm1hbCJdLCJmdm4tZmlndXJlIjpbImZ2bi1ub3JtYWwiXSwiZnZuLXNwYWNpbmciOlsiZnZuLW5vcm1hbCJdLCJmdm4tZnJhY3Rpb24iOlsiZnZuLW5vcm1hbCJdLCJsaW5lLWNsYW1wIjpbImRpc3BsYXkiLCJvdmVyZmxvdyJdLHJvdW5kZWQ6WyJyb3VuZGVkLXMiLCJyb3VuZGVkLWUiLCJyb3VuZGVkLXQiLCJyb3VuZGVkLXIiLCJyb3VuZGVkLWIiLCJyb3VuZGVkLWwiLCJyb3VuZGVkLXNzIiwicm91bmRlZC1zZSIsInJvdW5kZWQtZWUiLCJyb3VuZGVkLWVzIiwicm91bmRlZC10bCIsInJvdW5kZWQtdHIiLCJyb3VuZGVkLWJyIiwicm91bmRlZC1ibCJdLCJyb3VuZGVkLXMiOlsicm91bmRlZC1zcyIsInJvdW5kZWQtZXMiXSwicm91bmRlZC1lIjpbInJvdW5kZWQtc2UiLCJyb3VuZGVkLWVlIl0sInJvdW5kZWQtdCI6WyJyb3VuZGVkLXRsIiwicm91bmRlZC10ciJdLCJyb3VuZGVkLXIiOlsicm91bmRlZC10ciIsInJvdW5kZWQtYnIiXSwicm91bmRlZC1iIjpbInJvdW5kZWQtYnIiLCJyb3VuZGVkLWJsIl0sInJvdW5kZWQtbCI6WyJyb3VuZGVkLXRsIiwicm91bmRlZC1ibCJdLCJib3JkZXItc3BhY2luZyI6WyJib3JkZXItc3BhY2luZy14IiwiYm9yZGVyLXNwYWNpbmcteSJdLCJib3JkZXItdyI6WyJib3JkZXItdy14IiwiYm9yZGVyLXcteSIsImJvcmRlci13LXMiLCJib3JkZXItdy1lIiwiYm9yZGVyLXctYnMiLCJib3JkZXItdy1iZSIsImJvcmRlci13LXQiLCJib3JkZXItdy1yIiwiYm9yZGVyLXctYiIsImJvcmRlci13LWwiXSwiYm9yZGVyLXcteCI6WyJib3JkZXItdy1yIiwiYm9yZGVyLXctbCJdLCJib3JkZXItdy15IjpbImJvcmRlci13LXQiLCJib3JkZXItdy1iIl0sImJvcmRlci1jb2xvciI6WyJib3JkZXItY29sb3IteCIsImJvcmRlci1jb2xvci15IiwiYm9yZGVyLWNvbG9yLXMiLCJib3JkZXItY29sb3ItZSIsImJvcmRlci1jb2xvci1icyIsImJvcmRlci1jb2xvci1iZSIsImJvcmRlci1jb2xvci10IiwiYm9yZGVyLWNvbG9yLXIiLCJib3JkZXItY29sb3ItYiIsImJvcmRlci1jb2xvci1sIl0sImJvcmRlci1jb2xvci14IjpbImJvcmRlci1jb2xvci1yIiwiYm9yZGVyLWNvbG9yLWwiXSwiYm9yZGVyLWNvbG9yLXkiOlsiYm9yZGVyLWNvbG9yLXQiLCJib3JkZXItY29sb3ItYiJdLHRyYW5zbGF0ZTpbInRyYW5zbGF0ZS14IiwidHJhbnNsYXRlLXkiLCJ0cmFuc2xhdGUtbm9uZSJdLCJ0cmFuc2xhdGUtbm9uZSI6WyJ0cmFuc2xhdGUiLCJ0cmFuc2xhdGUteCIsInRyYW5zbGF0ZS15IiwidHJhbnNsYXRlLXoiXSwic2Nyb2xsLW0iOlsic2Nyb2xsLW14Iiwic2Nyb2xsLW15Iiwic2Nyb2xsLW1zIiwic2Nyb2xsLW1lIiwic2Nyb2xsLW1icyIsInNjcm9sbC1tYmUiLCJzY3JvbGwtbXQiLCJzY3JvbGwtbXIiLCJzY3JvbGwtbWIiLCJzY3JvbGwtbWwiXSwic2Nyb2xsLW14IjpbInNjcm9sbC1tciIsInNjcm9sbC1tbCJdLCJzY3JvbGwtbXkiOlsic2Nyb2xsLW10Iiwic2Nyb2xsLW1iIl0sInNjcm9sbC1wIjpbInNjcm9sbC1weCIsInNjcm9sbC1weSIsInNjcm9sbC1wcyIsInNjcm9sbC1wZSIsInNjcm9sbC1wYnMiLCJzY3JvbGwtcGJlIiwic2Nyb2xsLXB0Iiwic2Nyb2xsLXByIiwic2Nyb2xsLXBiIiwic2Nyb2xsLXBsIl0sInNjcm9sbC1weCI6WyJzY3JvbGwtcHIiLCJzY3JvbGwtcGwiXSwic2Nyb2xsLXB5IjpbInNjcm9sbC1wdCIsInNjcm9sbC1wYiJdLHRvdWNoOlsidG91Y2gteCIsInRvdWNoLXkiLCJ0b3VjaC1weiJdLCJ0b3VjaC14IjpbInRvdWNoIl0sInRvdWNoLXkiOlsidG91Y2giXSwidG91Y2gtcHoiOlsidG91Y2giXX0sY29uZmxpY3RpbmdDbGFzc0dyb3VwTW9kaWZpZXJzOnsiZm9udC1zaXplIjpbImxlYWRpbmciXX0sb3JkZXJTZW5zaXRpdmVNb2RpZmllcnM6WyIqIiwiKioiLCJhZnRlciIsImJhY2tkcm9wIiwiYmVmb3JlIiwiZGV0YWlscy1jb250ZW50IiwiZmlsZSIsImZpcnN0LWxldHRlciIsImZpcnN0LWxpbmUiLCJtYXJrZXIiLCJwbGFjZWhvbGRlciIsInNlbGVjdGlvbiJdfX0pO2Z1bmN0aW9uIGVwKC4uLmUpe3JldHVybiBlbShyKGUpKX1mdW5jdGlvbiBlYihlLHIpe3JldHVybmAvY29pbi8ke2UudG9VcHBlckNhc2UoKX0vJHtlbmNvZGVVUklDb21wb25lbnQoci50cmltKCkucmVwbGFjZSgvXHMrL2csIi0iKSl9YH1sZXQgZXU9bmV3IFNldChbImNvaW5saWIuaW8iLCJ3d3cuY29pbmxpYi5pbyIsImNvaW5saWIudmVyY2VsLmFwcCJdKTtmdW5jdGlvbiBlZihlKXtpZighZXx8ZS5zdGFydHNXaXRoKCIvIil8fGUuc3RhcnRzV2l0aCgiIyIpKXJldHVybiExO2lmKC9eKG1haWx0b3x0ZWwpOi9pLnRlc3QoZSkpcmV0dXJuITA7dHJ5e2xldCByPW5ldyBVUkwoZSk7cmV0dXJuIWV1LmhhcyhyLmhvc3RuYW1lKX1jYXRjaHtyZXR1cm4hMX19bGV0IGVnPW5ldyBJbnRsLk51bWJlckZvcm1hdCgiZW4tVVMiLHtub3RhdGlvbjoiY29tcGFjdCIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjJ9KTtmdW5jdGlvbiBlaChlKXtyZXR1cm4gZWcuZm9ybWF0KGUpfWZ1bmN0aW9uIGVrKGUscj0idXNkIil7cmV0dXJuIG5ldyBJbnRsLk51bWJlckZvcm1hdCgiZW4tVVMiLHtzdHlsZToiY3VycmVuY3kiLGN1cnJlbmN5OnIudG9VcHBlckNhc2UoKSxtaW5pbXVtRnJhY3Rpb25EaWdpdHM6MixtYXhpbXVtRnJhY3Rpb25EaWdpdHM6ZTwxPzY6ZTwxMDA/NDoyfSkuZm9ybWF0KGUpfWZ1bmN0aW9uIGV3KGUpe3JldHVybmAke2U+PTA/IisiOiIifSR7ZS50b0ZpeGVkKDIpfSVgfWZ1bmN0aW9uIGV4KGUpe3JldHVybiBuZXcgSW50bC5OdW1iZXJGb3JtYXQoImVuLVVTIikuZm9ybWF0KGUpfWUucyhbImNuIiwoKT0+ZXAsImNvaW5VcmwiLCgpPT5lYiwiZm9ybWF0Q29tcGFjdCIsKCk9PmVoLCJmb3JtYXROdW1iZXIiLCgpPT5leCwiZm9ybWF0UGVyY2VudGFnZSIsKCk9PmV3LCJmb3JtYXRQcmljZSIsKCk9PmVrLCJpc0V4dGVybmFsVXJsIiwoKT0+ZWZdLDc1MTU3KX1dKTs="}},"time_used":9,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/t3.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.342Z","timestamp":1785143908342,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /image/t3.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:46 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"230ad-63ccd443bdcc0\"\r\nAccept-Ranges: bytes\r\nContent-Length: 143533\r\nVary: User-Agent\r\nKeep-Alive: timeout=5, max=94\r\nConnection: Keep-Alive\r\nContent-Type: image/png\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":143533,"size_decoded":143853,"mime_type":"image/png","magic":"PNG image data, 400 x 433, 8-bit/color RGBA, non-interlaced","md5":"afcd9f1ecd856d8e82c31a9c5f325a47","sha1":"1cffe39682cb7722d7c1fcd9486a0df6d7ca12d4","sha256":"b923cacdfea8875d5bae21bd5953f5fc4ad96353a25e45f43ce23b3a061bc000","sha512":"8b8bd50cf6eebccc4d57f52bd82aa618f546d48060ba74262078a9adc5c9fc4a19053386aabfc096ab16c5fd58836830627e5ecf6f30d844ae7b92e5af868fb1","ssdeep":"3072:VPpzYabLpRSLgV765D/JYzpkH2Hrrn683VG/YXeKhtQKoi:VJYqRSLgVgik6O83QGXhiKp","tlshash":"4ce3124928ab6f6c33121e6f33011a16b2b305a27737380b93665b55e4e13ff704bba5","first_seen":"2025-10-06T17:20:27.011889Z","last_seen":"2026-07-27T09:20:18.377716Z","times_seen":12,"resource_available":false,"data":"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"}},"time_used":18293,"timings":{"blocked":17901,"dns":0,"connect":0,"send":0,"wait":245,"receive":147,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/clients-log/logo5.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.351Z","timestamp":1785143908351,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/clients-log/logo5.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/jquery.themepunch.tools.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.292Z","timestamp":1785143908292,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/js/jquery.themepunch.tools.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:44 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"1a406-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 37356\r\nKeep-Alive: timeout=5, max=98\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":107526,"size_decoded":37726,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (27184), with CRLF line terminators","md5":"e6b48b6ba78ddfe39bef9b6bf147543e","sha1":"8950b7ef02baf1ea3a6bde99a613a5224216ab18","sha256":"9a56320bb8bfb81dc997a1120c77ec017cffab4db5ba5482afb29129e0690540","sha512":"138ad5e36256062a42c67755559589dfa9e172b2e1167b80ae7c3aee385d29f2c5ea0e8a9abdae632d77ce097f0391e020443c63da580c4db2214b38b3276431","ssdeep":"1536:iQpnayKBPfeu87CWWCuy+7u5zOLvITONqvUejs0VH4dLk2IrVpyXjKXkPxbnvxXp:iJfOCWWCuzNVqvUej2FjGXZojvtl7","tlshash":"68b308ca31517012459622a5517f0a47723bedeab4098d2cf588d9dd3e3cc8921bffba","first_seen":"2023-03-07T01:06:58Z","last_seen":"2026-08-11T06:53:48.960586Z","times_seen":1725,"resource_available":true,"data":"LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQoJLQlUSEVNRVBVTkNIIFRPT0xTIFZlci4gMS4wICAgICAtDQoJIExhc3QgVXBkYXRlIG9mIFRvb2xzIDI3LjAyLjIwMTUNCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KDQovKg0KKiBAZmlsZU92ZXJ2aWV3IFRvdWNoU3dpcGUgLSBqUXVlcnkgUGx1Z2luDQoqIEB2ZXJzaW9uIDEuNi45DQoqDQoqIEBhdXRob3IgTWF0dCBCcnlzb24gaHR0cDovL3d3dy5naXRodWIuY29tL21hdHRicnlzb24NCiogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vbWF0dGJyeXNvbi9Ub3VjaFN3aXBlLUpxdWVyeS1QbHVnaW4NCiogQHNlZSBodHRwOi8vbGFicy5za2lua2Vycy5jb20vdG91Y2hTd2lwZS8NCiogQHNlZSBodHRwOi8vcGx1Z2lucy5qcXVlcnkuY29tL3Byb2plY3QvdG91Y2hTd2lwZQ0KKg0KKiBDb3B5cmlnaHQgKGMpIDIwMTAgTWF0dCBCcnlzb24NCiogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIG9yIEdQTCBWZXJzaW9uIDIgbGljZW5zZXMuDQoqDQoqLw0KDQoNCg0KKGZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBkZWZpbmU9PT0iZnVuY3Rpb24iJiZkZWZpbmUuYW1kJiZkZWZpbmUuYW1kLmpRdWVyeSl7ZGVmaW5lKFsianF1ZXJ5Il0sYSl9ZWxzZXthKGpRdWVyeSl9fShmdW5jdGlvbihmKXt2YXIgeT0iMS42LjkiLHA9ImxlZnQiLG89InJpZ2h0IixlPSJ1cCIseD0iZG93biIsYz0iaW4iLEE9Im91dCIsbT0ibm9uZSIscz0iYXV0byIsbD0ic3dpcGUiLHQ9InBpbmNoIixCPSJ0YXAiLGo9ImRvdWJsZXRhcCIsYj0ibG9uZ3RhcCIsej0iaG9sZCIsRT0iaG9yaXpvbnRhbCIsdT0idmVydGljYWwiLGk9ImFsbCIscj0xMCxnPSJzdGFydCIsaz0ibW92ZSIsaD0iZW5kIixxPSJjYW5jZWwiLGE9Im9udG91Y2hzdGFydCIgaW4gd2luZG93LHY9d2luZG93Lm5hdmlnYXRvci5tc1BvaW50ZXJFbmFibGVkJiYhd2luZG93Lm5hdmlnYXRvci5wb2ludGVyRW5hYmxlZCxkPXdpbmRvdy5uYXZpZ2F0b3IucG9pbnRlckVuYWJsZWR8fHdpbmRvdy5uYXZpZ2F0b3IubXNQb2ludGVyRW5hYmxlZCxDPSJUb3VjaFN3aXBlIjt2YXIgbj17ZmluZ2VyczoxLHRocmVzaG9sZDo3NSxjYW5jZWxUaHJlc2hvbGQ6bnVsbCxwaW5jaFRocmVzaG9sZDoyMCxtYXhUaW1lVGhyZXNob2xkOm51bGwsZmluZ2VyUmVsZWFzZVRocmVzaG9sZDoyNTAsbG9uZ1RhcFRocmVzaG9sZDo1MDAsZG91YmxlVGFwVGhyZXNob2xkOjIwMCxzd2lwZTpudWxsLHN3aXBlTGVmdDpudWxsLHN3aXBlUmlnaHQ6bnVsbCxzd2lwZVVwOm51bGwsc3dpcGVEb3duOm51bGwsc3dpcGVTdGF0dXM6bnVsbCxwaW5jaEluOm51bGwscGluY2hPdXQ6bnVsbCxwaW5jaFN0YXR1czpudWxsLGNsaWNrOm51bGwsdGFwOm51bGwsZG91YmxlVGFwOm51bGwsbG9uZ1RhcDpudWxsLGhvbGQ6bnVsbCx0cmlnZ2VyT25Ub3VjaEVuZDp0cnVlLHRyaWdnZXJPblRvdWNoTGVhdmU6ZmFsc2UsYWxsb3dQYWdlU2Nyb2xsOiJhdXRvIixmYWxsYmFja1RvTW91c2VFdmVudHM6dHJ1ZSxleGNsdWRlZEVsZW1lbnRzOiJsYWJlbCwgYnV0dG9uLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSwgYSwgLm5vU3dpcGUiLHByZXZlbnREZWZhdWx0RXZlbnRzOnRydWV9O2YuZm4uc3dpcGV0cD1mdW5jdGlvbihIKXt2YXIgRz1mKHRoaXMpLEY9Ry5kYXRhKEMpO2lmKEYmJnR5cGVvZiBIPT09InN0cmluZyIpe2lmKEZbSF0pe3JldHVybiBGW0hdLmFwcGx5KHRoaXMsQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpKX1lbHNle2YuZXJyb3IoIk1ldGhvZCAiK0grIiBkb2VzIG5vdCBleGlzdCBvbiBqUXVlcnkuc3dpcGV0cCIpfX1lbHNle2lmKCFGJiYodHlwZW9mIEg9PT0ib2JqZWN0Inx8IUgpKXtyZXR1cm4gdy5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fXJldHVybiBHfTtmLmZuLnN3aXBldHAudmVyc2lvbj15O2YuZm4uc3dpcGV0cC5kZWZhdWx0cz1uO2YuZm4uc3dpcGV0cC5waGFzZXM9e1BIQVNFX1NUQVJUOmcsUEhBU0VfTU9WRTprLFBIQVNFX0VORDpoLFBIQVNFX0NBTkNFTDpxfTtmLmZuLnN3aXBldHAuZGlyZWN0aW9ucz17TEVGVDpwLFJJR0hUOm8sVVA6ZSxET1dOOngsSU46YyxPVVQ6QX07Zi5mbi5zd2lwZXRwLnBhZ2VTY3JvbGw9e05PTkU6bSxIT1JJWk9OVEFMOkUsVkVSVElDQUw6dSxBVVRPOnN9O2YuZm4uc3dpcGV0cC5maW5nZXJzPXtPTkU6MSxUV086MixUSFJFRTozLEFMTDppfTtmdW5jdGlvbiB3KEYpe2lmKEYmJihGLmFsbG93UGFnZVNjcm9sbD09PXVuZGVmaW5lZCYmKEYuc3dpcGUhPT11bmRlZmluZWR8fEYuc3dpcGVTdGF0dXMhPT11bmRlZmluZWQpKSl7Ri5hbGxvd1BhZ2VTY3JvbGw9bX1pZihGLmNsaWNrIT09dW5kZWZpbmVkJiZGLnRhcD09PXVuZGVmaW5lZCl7Ri50YXA9Ri5jbGlja31pZighRil7Rj17fX1GPWYuZXh0ZW5kKHt9LGYuZm4uc3dpcGV0cC5kZWZhdWx0cyxGKTtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIEg9Zih0aGlzKTt2YXIgRz1ILmRhdGEoQyk7aWYoIUcpe0c9bmV3IEQodGhpcyxGKTtILmRhdGEoQyxHKX19KX1mdW5jdGlvbiBEKGE1LGF3KXt2YXIgYUE9KGF8fGR8fCFhdy5mYWxsYmFja1RvTW91c2VFdmVudHMpLEs9YUE/KGQ/KHY/Ik1TUG9pbnRlckRvd24iOiJwb2ludGVyZG93biIpOiJ0b3VjaHN0YXJ0Iik6Im1vdXNlZG93biIsYXo9YUE/KGQ/KHY/Ik1TUG9pbnRlck1vdmUiOiJwb2ludGVybW92ZSIpOiJ0b3VjaG1vdmUiKToibW91c2Vtb3ZlIixWPWFBPyhkPyh2PyJNU1BvaW50ZXJVcCI6InBvaW50ZXJ1cCIpOiJ0b3VjaGVuZCIpOiJtb3VzZXVwIixUPWFBP251bGw6Im1vdXNlbGVhdmUiLGFFPShkPyh2PyJNU1BvaW50ZXJDYW5jZWwiOiJwb2ludGVyY2FuY2VsIik6InRvdWNoY2FuY2VsIik7dmFyIGFoPTAsYVE9bnVsbCxhYz0wLGEyPTAsYTA9MCxIPTEsYXI9MCxhSz0wLE49bnVsbDt2YXIgYVM9ZihhNSk7dmFyIGFhPSJzdGFydCI7dmFyIFg9MDt2YXIgYVI9bnVsbDt2YXIgVT0wLGEzPTAsYTY9MCxhZT0wLE89MDt2YXIgYVg9bnVsbCxhZz1udWxsO3RyeXthUy5iaW5kKEssYU8pO2FTLmJpbmQoYUUsYmEpfWNhdGNoKGFsKXtmLmVycm9yKCJldmVudHMgbm90IHN1cHBvcnRlZCAiK0srIiwiK2FFKyIgb24galF1ZXJ5LnN3aXBldHAiKX10aGlzLmVuYWJsZT1mdW5jdGlvbigpe2FTLmJpbmQoSyxhTyk7YVMuYmluZChhRSxiYSk7cmV0dXJuIGFTfTt0aGlzLmRpc2FibGU9ZnVuY3Rpb24oKXthTCgpO3JldHVybiBhU307dGhpcy5kZXN0cm95PWZ1bmN0aW9uKCl7YUwoKTthUy5kYXRhKEMsbnVsbCk7YVM9bnVsbH07dGhpcy5vcHRpb249ZnVuY3Rpb24oYmQsYmMpe2lmKGF3W2JkXSE9PXVuZGVmaW5lZCl7aWYoYmM9PT11bmRlZmluZWQpe3JldHVybiBhd1tiZF19ZWxzZXthd1tiZF09YmN9fWVsc2V7Zi5lcnJvcigiT3B0aW9uICIrYmQrIiBkb2VzIG5vdCBleGlzdCBvbiBqUXVlcnkuc3dpcGV0cC5vcHRpb25zIil9cmV0dXJuIG51bGx9O2Z1bmN0aW9uIGFPKGJlKXtpZihhQygpKXtyZXR1cm59aWYoZihiZS50YXJnZXQpLmNsb3Nlc3QoYXcuZXhjbHVkZWRFbGVtZW50cyxhUykubGVuZ3RoPjApe3JldHVybn12YXIgYmY9YmUub3JpZ2luYWxFdmVudD9iZS5vcmlnaW5hbEV2ZW50OmJlO3ZhciBiZCxiZz1iZi50b3VjaGVzLGJjPWJnP2JnWzBdOmJmO2FhPWc7aWYoYmcpe1g9YmcubGVuZ3RofWVsc2V7YmUucHJldmVudERlZmF1bHQoKX1haD0wO2FRPW51bGw7YUs9bnVsbDthYz0wO2EyPTA7YTA9MDtIPTE7YXI9MDthUj1haygpO049YWIoKTtTKCk7aWYoIWJnfHwoWD09PWF3LmZpbmdlcnN8fGF3LmZpbmdlcnM9PT1pKXx8YVkoKSl7YWooMCxiYyk7VT1hdSgpO2lmKFg9PTIpe2FqKDEsYmdbMV0pO2EyPWEwPWF2KGFSWzBdLnN0YXJ0LGFSWzFdLnN0YXJ0KX1pZihhdy5zd2lwZVN0YXR1c3x8YXcucGluY2hTdGF0dXMpe2JkPVAoYmYsYWEpfX1lbHNle2JkPWZhbHNlfWlmKGJkPT09ZmFsc2Upe2FhPXE7UChiZixhYSk7cmV0dXJuIGJkfWVsc2V7aWYoYXcuaG9sZCl7YWc9c2V0VGltZW91dChmLnByb3h5KGZ1bmN0aW9uKCl7YVMudHJpZ2dlcigiaG9sZCIsW2JmLnRhcmdldF0pO2lmKGF3LmhvbGQpe2JkPWF3LmhvbGQuY2FsbChhUyxiZixiZi50YXJnZXQpfX0sdGhpcyksYXcubG9uZ1RhcFRocmVzaG9sZCl9YXAodHJ1ZSl9cmV0dXJuIG51bGx9ZnVuY3Rpb24gYTQoYmYpe3ZhciBiaT1iZi5vcmlnaW5hbEV2ZW50P2JmLm9yaWdpbmFsRXZlbnQ6YmY7aWYoYWE9PT1ofHxhYT09PXF8fGFuKCkpe3JldHVybn12YXIgYmUsYmo9YmkudG91Y2hlcyxiZD1iaj9ialswXTpiaTt2YXIgYmc9YUkoYmQpO2EzPWF1KCk7aWYoYmope1g9YmoubGVuZ3RofWlmKGF3LmhvbGQpe2NsZWFyVGltZW91dChhZyl9YWE9aztpZihYPT0yKXtpZihhMj09MCl7YWooMSxialsxXSk7YTI9YTA9YXYoYVJbMF0uc3RhcnQsYVJbMV0uc3RhcnQpfWVsc2V7YUkoYmpbMV0pO2EwPWF2KGFSWzBdLmVuZCxhUlsxXS5lbmQpO2FLPWF0KGFSWzBdLmVuZCxhUlsxXS5lbmQpfUg9YTgoYTIsYTApO2FyPU1hdGguYWJzKGEyLWEwKX1pZigoWD09PWF3LmZpbmdlcnN8fGF3LmZpbmdlcnM9PT1pKXx8IWJqfHxhWSgpKXthUT1hTShiZy5zdGFydCxiZy5lbmQpO2FtKGJmLGFRKTthaD1hVChiZy5zdGFydCxiZy5lbmQpO2FjPWFOKCk7YUooYVEsYWgpO2lmKGF3LnN3aXBlU3RhdHVzfHxhdy5waW5jaFN0YXR1cyl7YmU9UChiaSxhYSl9aWYoIWF3LnRyaWdnZXJPblRvdWNoRW5kfHxhdy50cmlnZ2VyT25Ub3VjaExlYXZlKXt2YXIgYmM9dHJ1ZTtpZihhdy50cmlnZ2VyT25Ub3VjaExlYXZlKXt2YXIgYmg9YVoodGhpcyk7YmM9RihiZy5lbmQsYmgpfWlmKCFhdy50cmlnZ2VyT25Ub3VjaEVuZCYmYmMpe2FhPWFEKGspfWVsc2V7aWYoYXcudHJpZ2dlck9uVG91Y2hMZWF2ZSYmIWJjKXthYT1hRChoKX19aWYoYWE9PXF8fGFhPT1oKXtQKGJpLGFhKX19fWVsc2V7YWE9cTtQKGJpLGFhKX1pZihiZT09PWZhbHNlKXthYT1xO1AoYmksYWEpfX1mdW5jdGlvbiBNKGJjKXt2YXIgYmQ9YmMub3JpZ2luYWxFdmVudD9iYy5vcmlnaW5hbEV2ZW50OmJjLGJlPWJkLnRvdWNoZXM7aWYoYmUpe2lmKGJlLmxlbmd0aCl7RygpO3JldHVybiB0cnVlfX1pZihhbigpKXtYPWFlfWEzPWF1KCk7YWM9YU4oKTtpZihiYigpfHwhYW8oKSl7YWE9cTtQKGJkLGFhKX1lbHNle2lmKGF3LnRyaWdnZXJPblRvdWNoRW5kfHwoYXcudHJpZ2dlck9uVG91Y2hFbmQ9PWZhbHNlJiZhYT09PWspKXtiYy5wcmV2ZW50RGVmYXVsdCgpO2FhPWg7UChiZCxhYSl9ZWxzZXtpZighYXcudHJpZ2dlck9uVG91Y2hFbmQmJmE3KCkpe2FhPWg7YUcoYmQsYWEsQil9ZWxzZXtpZihhYT09PWspe2FhPXE7UChiZCxhYSl9fX19YXAoZmFsc2UpO3JldHVybiBudWxsfWZ1bmN0aW9uIGJhKCl7WD0wO2EzPTA7VT0wO2EyPTA7YTA9MDtIPTE7UygpO2FwKGZhbHNlKX1mdW5jdGlvbiBMKGJjKXt2YXIgYmQ9YmMub3JpZ2luYWxFdmVudD9iYy5vcmlnaW5hbEV2ZW50OmJjO2lmKGF3LnRyaWdnZXJPblRvdWNoTGVhdmUpe2FhPWFEKGgpO1AoYmQsYWEpfX1mdW5jdGlvbiBhTCgpe2FTLnVuYmluZChLLGFPKTthUy51bmJpbmQoYUUsYmEpO2FTLnVuYmluZChheixhNCk7YVMudW5iaW5kKFYsTSk7aWYoVCl7YVMudW5iaW5kKFQsTCl9YXAoZmFsc2UpfWZ1bmN0aW9uIGFEKGJnKXt2YXIgYmY9Ymc7dmFyIGJlPWFCKCk7dmFyIGJkPWFvKCk7dmFyIGJjPWJiKCk7aWYoIWJlfHxiYyl7YmY9cX1lbHNle2lmKGJkJiZiZz09ayYmKCFhdy50cmlnZ2VyT25Ub3VjaEVuZHx8YXcudHJpZ2dlck9uVG91Y2hMZWF2ZSkpe2JmPWh9ZWxzZXtpZighYmQmJmJnPT1oJiZhdy50cmlnZ2VyT25Ub3VjaExlYXZlKXtiZj1xfX19cmV0dXJuIGJmfWZ1bmN0aW9uIFAoYmUsYmMpe3ZhciBiZCxiZj1iZS50b3VjaGVzO2lmKChKKCl8fFcoKSl8fChRKCl8fGFZKCkpKXtpZihKKCl8fFcoKSl7YmQ9YUcoYmUsYmMsbCl9aWYoKFEoKXx8YVkoKSkmJmJkIT09ZmFsc2Upe2JkPWFHKGJlLGJjLHQpfX1lbHNle2lmKGFIKCkmJmJkIT09ZmFsc2Upe2JkPWFHKGJlLGJjLGopfWVsc2V7aWYoYXEoKSYmYmQhPT1mYWxzZSl7YmQ9YUcoYmUsYmMsYil9ZWxzZXtpZihhaSgpJiZiZCE9PWZhbHNlKXtiZD1hRyhiZSxiYyxCKX19fX1pZihiYz09PXEpe2JhKGJlKX1pZihiYz09PWgpe2lmKGJmKXtpZighYmYubGVuZ3RoKXtiYShiZSl9fWVsc2V7YmEoYmUpfX1yZXR1cm4gYmR9ZnVuY3Rpb24gYUcoYmYsYmMsYmUpe3ZhciBiZDtpZihiZT09bCl7YVMudHJpZ2dlcigic3dpcGVTdGF0dXMiLFtiYyxhUXx8bnVsbCxhaHx8MCxhY3x8MCxYLGFSXSk7aWYoYXcuc3dpcGVTdGF0dXMpe2JkPWF3LnN3aXBlU3RhdHVzLmNhbGwoYVMsYmYsYmMsYVF8fG51bGwsYWh8fDAsYWN8fDAsWCxhUik7aWYoYmQ9PT1mYWxzZSl7cmV0dXJuIGZhbHNlfX1pZihiYz09aCYmYVcoKSl7YVMudHJpZ2dlcigic3dpcGUiLFthUSxhaCxhYyxYLGFSXSk7aWYoYXcuc3dpcGUpe2JkPWF3LnN3aXBlLmNhbGwoYVMsYmYsYVEsYWgsYWMsWCxhUik7aWYoYmQ9PT1mYWxzZSl7cmV0dXJuIGZhbHNlfX1zd2l0Y2goYVEpe2Nhc2UgcDphUy50cmlnZ2VyKCJzd2lwZUxlZnQiLFthUSxhaCxhYyxYLGFSXSk7aWYoYXcuc3dpcGVMZWZ0KXtiZD1hdy5zd2lwZUxlZnQuY2FsbChhUyxiZixhUSxhaCxhYyxYLGFSKX1icmVhaztjYXNlIG86YVMudHJpZ2dlcigic3dpcGVSaWdodCIsW2FRLGFoLGFjLFgsYVJdKTtpZihhdy5zd2lwZVJpZ2h0KXtiZD1hdy5zd2lwZVJpZ2h0LmNhbGwoYVMsYmYsYVEsYWgsYWMsWCxhUil9YnJlYWs7Y2FzZSBlOmFTLnRyaWdnZXIoInN3aXBlVXAiLFthUSxhaCxhYyxYLGFSXSk7aWYoYXcuc3dpcGVVcCl7YmQ9YXcuc3dpcGVVcC5jYWxsKGFTLGJmLGFRLGFoLGFjLFgsYVIpfWJyZWFrO2Nhc2UgeDphUy50cmlnZ2VyKCJzd2lwZURvd24iLFthUSxhaCxhYyxYLGFSXSk7aWYoYXcuc3dpcGVEb3duKXtiZD1hdy5zd2lwZURvd24uY2FsbChhUyxiZixhUSxhaCxhYyxYLGFSKX1icmVha319fWlmKGJlPT10KXthUy50cmlnZ2VyKCJwaW5jaFN0YXR1cyIsW2JjLGFLfHxudWxsLGFyfHwwLGFjfHwwLFgsSCxhUl0pO2lmKGF3LnBpbmNoU3RhdHVzKXtiZD1hdy5waW5jaFN0YXR1cy5jYWxsKGFTLGJmLGJjLGFLfHxudWxsLGFyfHwwLGFjfHwwLFgsSCxhUik7aWYoYmQ9PT1mYWxzZSl7cmV0dXJuIGZhbHNlfX1pZihiYz09aCYmYTkoKSl7c3dpdGNoKGFLKXtjYXNlIGM6YVMudHJpZ2dlcigicGluY2hJbiIsW2FLfHxudWxsLGFyfHwwLGFjfHwwLFgsSCxhUl0pO2lmKGF3LnBpbmNoSW4pe2JkPWF3LnBpbmNoSW4uY2FsbChhUyxiZixhS3x8bnVsbCxhcnx8MCxhY3x8MCxYLEgsYVIpfWJyZWFrO2Nhc2UgQTphUy50cmlnZ2VyKCJwaW5jaE91dCIsW2FLfHxudWxsLGFyfHwwLGFjfHwwLFgsSCxhUl0pO2lmKGF3LnBpbmNoT3V0KXtiZD1hdy5waW5jaE91dC5jYWxsKGFTLGJmLGFLfHxudWxsLGFyfHwwLGFjfHwwLFgsSCxhUil9YnJlYWt9fX1pZihiZT09Qil7aWYoYmM9PT1xfHxiYz09PWgpe2NsZWFyVGltZW91dChhWCk7Y2xlYXJUaW1lb3V0KGFnKTtpZihaKCkmJiFJKCkpe089YXUoKTthWD1zZXRUaW1lb3V0KGYucHJveHkoZnVuY3Rpb24oKXtPPW51bGw7YVMudHJpZ2dlcigidGFwIixbYmYudGFyZ2V0XSk7aWYoYXcudGFwKXtiZD1hdy50YXAuY2FsbChhUyxiZixiZi50YXJnZXQpfX0sdGhpcyksYXcuZG91YmxlVGFwVGhyZXNob2xkKX1lbHNle089bnVsbDthUy50cmlnZ2VyKCJ0YXAiLFtiZi50YXJnZXRdKTtpZihhdy50YXApe2JkPWF3LnRhcC5jYWxsKGFTLGJmLGJmLnRhcmdldCl9fX19ZWxzZXtpZihiZT09ail7aWYoYmM9PT1xfHxiYz09PWgpe2NsZWFyVGltZW91dChhWCk7Tz1udWxsO2FTLnRyaWdnZXIoImRvdWJsZXRhcCIsW2JmLnRhcmdldF0pO2lmKGF3LmRvdWJsZVRhcCl7YmQ9YXcuZG91YmxlVGFwLmNhbGwoYVMsYmYsYmYudGFyZ2V0KX19fWVsc2V7aWYoYmU9PWIpe2lmKGJjPT09cXx8YmM9PT1oKXtjbGVhclRpbWVvdXQoYVgpO089bnVsbDthUy50cmlnZ2VyKCJsb25ndGFwIixbYmYudGFyZ2V0XSk7aWYoYXcubG9uZ1RhcCl7YmQ9YXcubG9uZ1RhcC5jYWxsKGFTLGJmLGJmLnRhcmdldCl9fX19fXJldHVybiBiZH1mdW5jdGlvbiBhbygpe3ZhciBiYz10cnVlO2lmKGF3LnRocmVzaG9sZCE9PW51bGwpe2JjPWFoPj1hdy50aHJlc2hvbGR9cmV0dXJuIGJjfWZ1bmN0aW9uIGJiKCl7dmFyIGJjPWZhbHNlO2lmKGF3LmNhbmNlbFRocmVzaG9sZCE9PW51bGwmJmFRIT09bnVsbCl7YmM9KGFVKGFRKS1haCk+PWF3LmNhbmNlbFRocmVzaG9sZH1yZXR1cm4gYmN9ZnVuY3Rpb24gYWYoKXtpZihhdy5waW5jaFRocmVzaG9sZCE9PW51bGwpe3JldHVybiBhcj49YXcucGluY2hUaHJlc2hvbGR9cmV0dXJuIHRydWV9ZnVuY3Rpb24gYUIoKXt2YXIgYmM7aWYoYXcubWF4VGltZVRocmVzaG9sZCl7aWYoYWM+PWF3Lm1heFRpbWVUaHJlc2hvbGQpe2JjPWZhbHNlfWVsc2V7YmM9dHJ1ZX19ZWxzZXtiYz10cnVlfXJldHVybiBiY31mdW5jdGlvbiBhbShiYyxiZCl7aWYoYXcucHJldmVudERlZmF1bHRFdmVudHM9PT1mYWxzZSl7cmV0dXJufWlmKGF3LmFsbG93UGFnZVNjcm9sbD09PW0pe2JjLnByZXZlbnREZWZhdWx0KCl9ZWxzZXt2YXIgYmU9YXcuYWxsb3dQYWdlU2Nyb2xsPT09cztzd2l0Y2goYmQpe2Nhc2UgcDppZigoYXcuc3dpcGVMZWZ0JiZiZSl8fCghYmUmJmF3LmFsbG93UGFnZVNjcm9sbCE9RSkpe2JjLnByZXZlbnREZWZhdWx0KCl9YnJlYWs7Y2FzZSBvOmlmKChhdy5zd2lwZVJpZ2h0JiZiZSl8fCghYmUmJmF3LmFsbG93UGFnZVNjcm9sbCE9RSkpe2JjLnByZXZlbnREZWZhdWx0KCl9YnJlYWs7Y2FzZSBlOmlmKChhdy5zd2lwZVVwJiZiZSl8fCghYmUmJmF3LmFsbG93UGFnZVNjcm9sbCE9dSkpe2JjLnByZXZlbnREZWZhdWx0KCl9YnJlYWs7Y2FzZSB4OmlmKChhdy5zd2lwZURvd24mJmJlKXx8KCFiZSYmYXcuYWxsb3dQYWdlU2Nyb2xsIT11KSl7YmMucHJldmVudERlZmF1bHQoKX1icmVha319fWZ1bmN0aW9uIGE5KCl7dmFyIGJkPWFQKCk7dmFyIGJjPVkoKTt2YXIgYmU9YWYoKTtyZXR1cm4gYmQmJmJjJiZiZX1mdW5jdGlvbiBhWSgpe3JldHVybiAhIShhdy5waW5jaFN0YXR1c3x8YXcucGluY2hJbnx8YXcucGluY2hPdXQpfWZ1bmN0aW9uIFEoKXtyZXR1cm4gISEoYTkoKSYmYVkoKSl9ZnVuY3Rpb24gYVcoKXt2YXIgYmY9YUIoKTt2YXIgYmg9YW8oKTt2YXIgYmU9YVAoKTt2YXIgYmM9WSgpO3ZhciBiZD1iYigpO3ZhciBiZz0hYmQmJmJjJiZiZSYmYmgmJmJmO3JldHVybiBiZ31mdW5jdGlvbiBXKCl7cmV0dXJuICEhKGF3LnN3aXBlfHxhdy5zd2lwZVN0YXR1c3x8YXcuc3dpcGVMZWZ0fHxhdy5zd2lwZVJpZ2h0fHxhdy5zd2lwZVVwfHxhdy5zd2lwZURvd24pfWZ1bmN0aW9uIEooKXtyZXR1cm4gISEoYVcoKSYmVygpKX1mdW5jdGlvbiBhUCgpe3JldHVybigoWD09PWF3LmZpbmdlcnN8fGF3LmZpbmdlcnM9PT1pKXx8IWEpfWZ1bmN0aW9uIFkoKXtyZXR1cm4gYVJbMF0uZW5kLnghPT0wfWZ1bmN0aW9uIGE3KCl7cmV0dXJuICEhKGF3LnRhcCl9ZnVuY3Rpb24gWigpe3JldHVybiAhIShhdy5kb3VibGVUYXApfWZ1bmN0aW9uIGFWKCl7cmV0dXJuICEhKGF3LmxvbmdUYXApfWZ1bmN0aW9uIFIoKXtpZihPPT1udWxsKXtyZXR1cm4gZmFsc2V9dmFyIGJjPWF1KCk7cmV0dXJuKFooKSYmKChiYy1PKTw9YXcuZG91YmxlVGFwVGhyZXNob2xkKSl9ZnVuY3Rpb24gSSgpe3JldHVybiBSKCl9ZnVuY3Rpb24gYXkoKXtyZXR1cm4oKFg9PT0xfHwhYSkmJihpc05hTihhaCl8fGFoPGF3LnRocmVzaG9sZCkpfWZ1bmN0aW9uIGExKCl7cmV0dXJuKChhYz5hdy5sb25nVGFwVGhyZXNob2xkKSYmKGFoPHIpKX1mdW5jdGlvbiBhaSgpe3JldHVybiAhIShheSgpJiZhNygpKX1mdW5jdGlvbiBhSCgpe3JldHVybiAhIShSKCkmJlooKSl9ZnVuY3Rpb24gYXEoKXtyZXR1cm4gISEoYTEoKSYmYVYoKSl9ZnVuY3Rpb24gRygpe2E2PWF1KCk7YWU9ZXZlbnQudG91Y2hlcy5sZW5ndGgrMX1mdW5jdGlvbiBTKCl7YTY9MDthZT0wfWZ1bmN0aW9uIGFuKCl7dmFyIGJjPWZhbHNlO2lmKGE2KXt2YXIgYmQ9YXUoKS1hNjtpZihiZDw9YXcuZmluZ2VyUmVsZWFzZVRocmVzaG9sZCl7YmM9dHJ1ZX19cmV0dXJuIGJjfWZ1bmN0aW9uIGFDKCl7cmV0dXJuICEhKGFTLmRhdGEoQysiX2ludG91Y2giKT09PXRydWUpfWZ1bmN0aW9uIGFwKGJjKXtpZihiYz09PXRydWUpe2FTLmJpbmQoYXosYTQpO2FTLmJpbmQoVixNKTtpZihUKXthUy5iaW5kKFQsTCl9fWVsc2V7YVMudW5iaW5kKGF6LGE0LGZhbHNlKTthUy51bmJpbmQoVixNLGZhbHNlKTtpZihUKXthUy51bmJpbmQoVCxMLGZhbHNlKX19YVMuZGF0YShDKyJfaW50b3VjaCIsYmM9PT10cnVlKX1mdW5jdGlvbiBhaihiZCxiYyl7dmFyIGJlPWJjLmlkZW50aWZpZXIhPT11bmRlZmluZWQ/YmMuaWRlbnRpZmllcjowO2FSW2JkXS5pZGVudGlmaWVyPWJlO2FSW2JkXS5zdGFydC54PWFSW2JkXS5lbmQueD1iYy5wYWdlWHx8YmMuY2xpZW50WDthUltiZF0uc3RhcnQueT1hUltiZF0uZW5kLnk9YmMucGFnZVl8fGJjLmNsaWVudFk7cmV0dXJuIGFSW2JkXX1mdW5jdGlvbiBhSShiYyl7dmFyIGJlPWJjLmlkZW50aWZpZXIhPT11bmRlZmluZWQ/YmMuaWRlbnRpZmllcjowO3ZhciBiZD1hZChiZSk7YmQuZW5kLng9YmMucGFnZVh8fGJjLmNsaWVudFg7YmQuZW5kLnk9YmMucGFnZVl8fGJjLmNsaWVudFk7cmV0dXJuIGJkfWZ1bmN0aW9uIGFkKGJkKXtmb3IodmFyIGJjPTA7YmM8YVIubGVuZ3RoO2JjKyspe2lmKGFSW2JjXS5pZGVudGlmaWVyPT1iZCl7cmV0dXJuIGFSW2JjXX19fWZ1bmN0aW9uIGFrKCl7dmFyIGJjPVtdO2Zvcih2YXIgYmQ9MDtiZDw9NTtiZCsrKXtiYy5wdXNoKHtzdGFydDp7eDowLHk6MH0sZW5kOnt4OjAseTowfSxpZGVudGlmaWVyOjB9KX1yZXR1cm4gYmN9ZnVuY3Rpb24gYUooYmMsYmQpe2JkPU1hdGgubWF4KGJkLGFVKGJjKSk7TltiY10uZGlzdGFuY2U9YmR9ZnVuY3Rpb24gYVUoYmMpe2lmKE5bYmNdKXtyZXR1cm4gTltiY10uZGlzdGFuY2V9cmV0dXJuIHVuZGVmaW5lZH1mdW5jdGlvbiBhYigpe3ZhciBiYz17fTtiY1twXT1heChwKTtiY1tvXT1heChvKTtiY1tlXT1heChlKTtiY1t4XT1heCh4KTtyZXR1cm4gYmN9ZnVuY3Rpb24gYXgoYmMpe3JldHVybntkaXJlY3Rpb246YmMsZGlzdGFuY2U6MH19ZnVuY3Rpb24gYU4oKXtyZXR1cm4gYTMtVX1mdW5jdGlvbiBhdihiZixiZSl7dmFyIGJkPU1hdGguYWJzKGJmLngtYmUueCk7dmFyIGJjPU1hdGguYWJzKGJmLnktYmUueSk7cmV0dXJuIE1hdGgucm91bmQoTWF0aC5zcXJ0KGJkKmJkK2JjKmJjKSl9ZnVuY3Rpb24gYTgoYmMsYmQpe3ZhciBiZT0oYmQvYmMpKjE7cmV0dXJuIGJlLnRvRml4ZWQoMil9ZnVuY3Rpb24gYXQoKXtpZihIPDEpe3JldHVybiBBfWVsc2V7cmV0dXJuIGN9fWZ1bmN0aW9uIGFUKGJkLGJjKXtyZXR1cm4gTWF0aC5yb3VuZChNYXRoLnNxcnQoTWF0aC5wb3coYmMueC1iZC54LDIpK01hdGgucG93KGJjLnktYmQueSwyKSkpfWZ1bmN0aW9uIGFGKGJmLGJkKXt2YXIgYmM9YmYueC1iZC54O3ZhciBiaD1iZC55LWJmLnk7dmFyIGJlPU1hdGguYXRhbjIoYmgsYmMpO3ZhciBiZz1NYXRoLnJvdW5kKGJlKjE4MC9NYXRoLlBJKTtpZihiZzwwKXtiZz0zNjAtTWF0aC5hYnMoYmcpfXJldHVybiBiZ31mdW5jdGlvbiBhTShiZCxiYyl7dmFyIGJlPWFGKGJkLGJjKTtpZigoYmU8PTQ1KSYmKGJlPj0wKSl7cmV0dXJuIHB9ZWxzZXtpZigoYmU8PTM2MCkmJihiZT49MzE1KSl7cmV0dXJuIHB9ZWxzZXtpZigoYmU+PTEzNSkmJihiZTw9MjI1KSl7cmV0dXJuIG99ZWxzZXtpZigoYmU+NDUpJiYoYmU8MTM1KSl7cmV0dXJuIHh9ZWxzZXtyZXR1cm4gZX19fX19ZnVuY3Rpb24gYXUoKXt2YXIgYmM9bmV3IERhdGUoKTtyZXR1cm4gYmMuZ2V0VGltZSgpfWZ1bmN0aW9uIGFaKGJjKXtiYz1mKGJjKTt2YXIgYmU9YmMub2Zmc2V0KCk7dmFyIGJkPXtsZWZ0OmJlLmxlZnQscmlnaHQ6YmUubGVmdCtiYy5vdXRlcldpZHRoKCksdG9wOmJlLnRvcCxib3R0b206YmUudG9wK2JjLm91dGVySGVpZ2h0KCl9O3JldHVybiBiZH1mdW5jdGlvbiBGKGJjLGJkKXtyZXR1cm4oYmMueD5iZC5sZWZ0JiZiYy54PGJkLnJpZ2h0JiZiYy55PmJkLnRvcCYmYmMueTxiZC5ib3R0b20pfX19KSk7DQoNCmlmKHR5cGVvZihjb25zb2xlKSA9PT0gJ3VuZGVmaW5lZCcpIHsNCiAgICB2YXIgY29uc29sZSA9IHt9Ow0KICAgIGNvbnNvbGUubG9nID0gY29uc29sZS5lcnJvciA9IGNvbnNvbGUuaW5mbyA9IGNvbnNvbGUuZGVidWcgPSBjb25zb2xlLndhcm4gPSBjb25zb2xlLnRyYWNlID0gY29uc29sZS5kaXIgPSBjb25zb2xlLmRpcnhtbCA9IGNvbnNvbGUuZ3JvdXAgPSBjb25zb2xlLmdyb3VwRW5kID0gY29uc29sZS50aW1lID0gY29uc29sZS50aW1lRW5kID0gY29uc29sZS5hc3NlcnQgPSBjb25zb2xlLnByb2ZpbGUgPSBjb25zb2xlLmdyb3VwQ29sbGFwc2VkID0gZnVuY3Rpb24oKSB7fTsNCn0NCg0KaWYgKHdpbmRvdy50cGxvZ3M9PXRydWUpDQoJdHJ5IHsNCgkJY29uc29sZS5ncm91cENvbGxhcHNlZCgiVGhlbWVQdW5jaCBHcmVlblNvY2tzIExvZ3MiKTsNCgl9IGNhdGNoKGUpIHsgfQ0KDQoNCnZhciBvbGRncyA9IHdpbmRvdy5HcmVlblNvY2tHbG9iYWxzOw0KCW9sZGdzX3F1ZXVlID0gd2luZG93Ll9nc1F1ZXVlOw0KCQ0KdmFyIHB1bmNoZ3MgPSB3aW5kb3cuR3JlZW5Tb2NrR2xvYmFscyA9IHt9Ow0KDQppZiAod2luZG93LnRwbG9ncz09dHJ1ZSkNCgl0cnkgew0KCQljb25zb2xlLmluZm8oIkJ1aWxkIEdyZWVuU29jayBTYW5kQm94IGZvciBUaGVtZVB1bmNoIFBsdWdpbnMiKTsNCgkJY29uc29sZS5pbmZvKCJHcmVlblNvY2sgVHdlZW5MaXRlIEVuZ2luZSBJbml0YWxpc2VkIGJ5IFRoZW1lUHVuY2ggUGx1Z2luIik7DQoJfSBjYXRjaChlKSB7fQ0KDQoNCi8qIFRXRUVOIExJVEUgKi8NCi8qIQ0KICogVkVSU0lPTjogMS4xOS4wDQogKiBEQVRFOiAyMDE2LTA3LTE2DQogKiBVUERBVEVTIEFORCBET0NTIEFUOiBodHRwOi8vZ3JlZW5zb2NrLmNvbQ0KICoNCiAqIEBsaWNlbnNlIENvcHlyaWdodCAoYykgMjAwOC0yMDE2LCBHcmVlblNvY2suIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQogKiBUaGlzIHdvcmsgaXMgc3ViamVjdCB0byB0aGUgdGVybXMgYXQgaHR0cDovL2dyZWVuc29jay5jb20vc3RhbmRhcmQtbGljZW5zZSBvciBmb3INCiAqIENsdWIgR3JlZW5Tb2NrIG1lbWJlcnMsIHRoZSBzb2Z0d2FyZSBhZ3JlZW1lbnQgdGhhdCB3YXMgaXNzdWVkIHdpdGggeW91ciBtZW1iZXJzaGlwLg0KICogDQogKiBAYXV0aG9yOiBKYWNrIERveWxlLCBqYWNrQGdyZWVuc29jay5jb20NCiAqLw0KIWZ1bmN0aW9uKGEsYil7InVzZSBzdHJpY3QiO3ZhciBjPXt9LGQ9YS5HcmVlblNvY2tHbG9iYWxzPWEuR3JlZW5Tb2NrR2xvYmFsc3x8YTtpZighZC5Ud2VlbkxpdGUpe3ZhciBlLGYsZyxoLGksaj1mdW5jdGlvbihhKXt2YXIgYixjPWEuc3BsaXQoIi4iKSxlPWQ7Zm9yKGI9MDtiPGMubGVuZ3RoO2IrKyllW2NbYl1dPWU9ZVtjW2JdXXx8e307cmV0dXJuIGV9LGs9aigiY29tLmdyZWVuc29jayIpLGw9MWUtMTAsbT1mdW5jdGlvbihhKXt2YXIgYixjPVtdLGQ9YS5sZW5ndGg7Zm9yKGI9MDtiIT09ZDtjLnB1c2goYVtiKytdKSk7cmV0dXJuIGN9LG49ZnVuY3Rpb24oKXt9LG89ZnVuY3Rpb24oKXt2YXIgYT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLGI9YS5jYWxsKFtdKTtyZXR1cm4gZnVuY3Rpb24oYyl7cmV0dXJuIG51bGwhPWMmJihjIGluc3RhbmNlb2YgQXJyYXl8fCJvYmplY3QiPT10eXBlb2YgYyYmISFjLnB1c2gmJmEuY2FsbChjKT09PWIpfX0oKSxwPXt9LHE9ZnVuY3Rpb24oZSxmLGcsaCl7dGhpcy5zYz1wW2VdP3BbZV0uc2M6W10scFtlXT10aGlzLHRoaXMuZ3NDbGFzcz1udWxsLHRoaXMuZnVuYz1nO3ZhciBpPVtdO3RoaXMuY2hlY2s9ZnVuY3Rpb24oayl7Zm9yKHZhciBsLG0sbixvLHIscz1mLmxlbmd0aCx0PXM7LS1zPi0xOykobD1wW2Zbc11dfHxuZXcgcShmW3NdLFtdKSkuZ3NDbGFzcz8oaVtzXT1sLmdzQ2xhc3MsdC0tKTprJiZsLnNjLnB1c2godGhpcyk7aWYoMD09PXQmJmcpe2lmKG09KCJjb20uZ3JlZW5zb2NrLiIrZSkuc3BsaXQoIi4iKSxuPW0ucG9wKCksbz1qKG0uam9pbigiLiIpKVtuXT10aGlzLmdzQ2xhc3M9Zy5hcHBseShnLGkpLGgpaWYoZFtuXT1jW25dPW8scj0idW5kZWZpbmVkIiE9dHlwZW9mIG1vZHVsZSYmbW9kdWxlLmV4cG9ydHMsIXImJiJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQpZGVmaW5lKChhLkdyZWVuU29ja0FNRFBhdGg/YS5HcmVlblNvY2tBTURQYXRoKyIvIjoiIikrZS5zcGxpdCgiLiIpLnBvcCgpLFtdLGZ1bmN0aW9uKCl7cmV0dXJuIG99KTtlbHNlIGlmKHIpaWYoZT09PWIpe21vZHVsZS5leHBvcnRzPWNbYl09bztmb3IocyBpbiBjKW9bc109Y1tzXX1lbHNlIGNbYl0mJihjW2JdW25dPW8pO2ZvcihzPTA7czx0aGlzLnNjLmxlbmd0aDtzKyspdGhpcy5zY1tzXS5jaGVjaygpfX0sdGhpcy5jaGVjayghMCl9LHI9YS5fZ3NEZWZpbmU9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIG5ldyBxKGEsYixjLGQpfSxzPWsuX2NsYXNzPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYj1ifHxmdW5jdGlvbigpe30scihhLFtdLGZ1bmN0aW9uKCl7cmV0dXJuIGJ9LGMpLGJ9O3IuZ2xvYmFscz1kO3ZhciB0PVswLDAsMSwxXSx1PXMoImVhc2luZy5FYXNlIixmdW5jdGlvbihhLGIsYyxkKXt0aGlzLl9mdW5jPWEsdGhpcy5fdHlwZT1jfHwwLHRoaXMuX3Bvd2VyPWR8fDAsdGhpcy5fcGFyYW1zPWI/dC5jb25jYXQoYik6dH0sITApLHY9dS5tYXA9e30sdz11LnJlZ2lzdGVyPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZSxmLGcsaCxpPWIuc3BsaXQoIiwiKSxqPWkubGVuZ3RoLGw9KGN8fCJlYXNlSW4sZWFzZU91dCxlYXNlSW5PdXQiKS5zcGxpdCgiLCIpOy0taj4tMTspZm9yKGY9aVtqXSxlPWQ/cygiZWFzaW5nLiIrZixudWxsLCEwKTprLmVhc2luZ1tmXXx8e30sZz1sLmxlbmd0aDstLWc+LTE7KWg9bFtnXSx2W2YrIi4iK2hdPXZbaCtmXT1lW2hdPWEuZ2V0UmF0aW8/YTphW2hdfHxuZXcgYX07Zm9yKGc9dS5wcm90b3R5cGUsZy5fY2FsY0VuZD0hMSxnLmdldFJhdGlvPWZ1bmN0aW9uKGEpe2lmKHRoaXMuX2Z1bmMpcmV0dXJuIHRoaXMuX3BhcmFtc1swXT1hLHRoaXMuX2Z1bmMuYXBwbHkobnVsbCx0aGlzLl9wYXJhbXMpO3ZhciBiPXRoaXMuX3R5cGUsYz10aGlzLl9wb3dlcixkPTE9PT1iPzEtYToyPT09Yj9hOi41PmE/MiphOjIqKDEtYSk7cmV0dXJuIDE9PT1jP2QqPWQ6Mj09PWM/ZCo9ZCpkOjM9PT1jP2QqPWQqZCpkOjQ9PT1jJiYoZCo9ZCpkKmQqZCksMT09PWI/MS1kOjI9PT1iP2Q6LjU+YT9kLzI6MS1kLzJ9LGU9WyJMaW5lYXIiLCJRdWFkIiwiQ3ViaWMiLCJRdWFydCIsIlF1aW50LFN0cm9uZyJdLGY9ZS5sZW5ndGg7LS1mPi0xOylnPWVbZl0rIixQb3dlciIrZix3KG5ldyB1KG51bGwsbnVsbCwxLGYpLGcsImVhc2VPdXQiLCEwKSx3KG5ldyB1KG51bGwsbnVsbCwyLGYpLGcsImVhc2VJbiIrKDA9PT1mPyIsZWFzZU5vbmUiOiIiKSksdyhuZXcgdShudWxsLG51bGwsMyxmKSxnLCJlYXNlSW5PdXQiKTt2LmxpbmVhcj1rLmVhc2luZy5MaW5lYXIuZWFzZUluLHYuc3dpbmc9ay5lYXNpbmcuUXVhZC5lYXNlSW5PdXQ7dmFyIHg9cygiZXZlbnRzLkV2ZW50RGlzcGF0Y2hlciIsZnVuY3Rpb24oYSl7dGhpcy5fbGlzdGVuZXJzPXt9LHRoaXMuX2V2ZW50VGFyZ2V0PWF8fHRoaXN9KTtnPXgucHJvdG90eXBlLGcuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhLGIsYyxkLGUpe2U9ZXx8MDt2YXIgZixnLGo9dGhpcy5fbGlzdGVuZXJzW2FdLGs9MDtmb3IodGhpcyE9PWh8fGl8fGgud2FrZSgpLG51bGw9PWomJih0aGlzLl9saXN0ZW5lcnNbYV09aj1bXSksZz1qLmxlbmd0aDstLWc+LTE7KWY9altnXSxmLmM9PT1iJiZmLnM9PT1jP2ouc3BsaWNlKGcsMSk6MD09PWsmJmYucHI8ZSYmKGs9ZysxKTtqLnNwbGljZShrLDAse2M6YixzOmMsdXA6ZCxwcjplfSl9LGcucmVtb3ZlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhLGIpe3ZhciBjLGQ9dGhpcy5fbGlzdGVuZXJzW2FdO2lmKGQpZm9yKGM9ZC5sZW5ndGg7LS1jPi0xOylpZihkW2NdLmM9PT1iKXJldHVybiB2b2lkIGQuc3BsaWNlKGMsMSl9LGcuZGlzcGF0Y2hFdmVudD1mdW5jdGlvbihhKXt2YXIgYixjLGQsZT10aGlzLl9saXN0ZW5lcnNbYV07aWYoZSlmb3IoYj1lLmxlbmd0aCxiPjEmJihlPWUuc2xpY2UoMCkpLGM9dGhpcy5fZXZlbnRUYXJnZXQ7LS1iPi0xOylkPWVbYl0sZCYmKGQudXA/ZC5jLmNhbGwoZC5zfHxjLHt0eXBlOmEsdGFyZ2V0OmN9KTpkLmMuY2FsbChkLnN8fGMpKX07dmFyIHk9YS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUsej1hLmNhbmNlbEFuaW1hdGlvbkZyYW1lLEE9RGF0ZS5ub3d8fGZ1bmN0aW9uKCl7cmV0dXJuKG5ldyBEYXRlKS5nZXRUaW1lKCl9LEI9QSgpO2ZvcihlPVsibXMiLCJtb3oiLCJ3ZWJraXQiLCJvIl0sZj1lLmxlbmd0aDstLWY+LTEmJiF5Oyl5PWFbZVtmXSsiUmVxdWVzdEFuaW1hdGlvbkZyYW1lIl0sej1hW2VbZl0rIkNhbmNlbEFuaW1hdGlvbkZyYW1lIl18fGFbZVtmXSsiQ2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lIl07cygiVGlja2VyIixmdW5jdGlvbihhLGIpe3ZhciBjLGQsZSxmLGcsaj10aGlzLGs9QSgpLG09YiE9PSExJiZ5PyJhdXRvIjohMSxvPTUwMCxwPTMzLHE9InRpY2siLHI9ZnVuY3Rpb24oYSl7dmFyIGIsaCxpPUEoKS1CO2k+byYmKGsrPWktcCksQis9aSxqLnRpbWU9KEItaykvMWUzLGI9ai50aW1lLWcsKCFjfHxiPjB8fGE9PT0hMCkmJihqLmZyYW1lKyssZys9YisoYj49Zj8uMDA0OmYtYiksaD0hMCksYSE9PSEwJiYoZT1kKHIpKSxoJiZqLmRpc3BhdGNoRXZlbnQocSl9O3guY2FsbChqKSxqLnRpbWU9ai5mcmFtZT0wLGoudGljaz1mdW5jdGlvbigpe3IoITApfSxqLmxhZ1Ntb290aGluZz1mdW5jdGlvbihhLGIpe289YXx8MS9sLHA9TWF0aC5taW4oYixvLDApfSxqLnNsZWVwPWZ1bmN0aW9uKCl7bnVsbCE9ZSYmKG0mJno/eihlKTpjbGVhclRpbWVvdXQoZSksZD1uLGU9bnVsbCxqPT09aCYmKGk9ITEpKX0sai53YWtlPWZ1bmN0aW9uKGEpe251bGwhPT1lP2ouc2xlZXAoKTphP2srPS1CKyhCPUEoKSk6ai5mcmFtZT4xMCYmKEI9QSgpLW8rNSksZD0wPT09Yz9uOm0mJnk/eTpmdW5jdGlvbihhKXtyZXR1cm4gc2V0VGltZW91dChhLDFlMyooZy1qLnRpbWUpKzF8MCl9LGo9PT1oJiYoaT0hMCkscigyKX0sai5mcHM9ZnVuY3Rpb24oYSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/KGM9YSxmPTEvKGN8fDYwKSxnPXRoaXMudGltZStmLHZvaWQgai53YWtlKCkpOmN9LGoudXNlUkFGPWZ1bmN0aW9uKGEpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyhqLnNsZWVwKCksbT1hLHZvaWQgai5mcHMoYykpOm19LGouZnBzKGEpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXsiYXV0byI9PT1tJiZqLmZyYW1lPDUmJiJoaWRkZW4iIT09ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlJiZqLnVzZVJBRighMSl9LDE1MDApfSksZz1rLlRpY2tlci5wcm90b3R5cGU9bmV3IGsuZXZlbnRzLkV2ZW50RGlzcGF0Y2hlcixnLmNvbnN0cnVjdG9yPWsuVGlja2VyO3ZhciBDPXMoImNvcmUuQW5pbWF0aW9uIixmdW5jdGlvbihhLGIpe2lmKHRoaXMudmFycz1iPWJ8fHt9LHRoaXMuX2R1cmF0aW9uPXRoaXMuX3RvdGFsRHVyYXRpb249YXx8MCx0aGlzLl9kZWxheT1OdW1iZXIoYi5kZWxheSl8fDAsdGhpcy5fdGltZVNjYWxlPTEsdGhpcy5fYWN0aXZlPWIuaW1tZWRpYXRlUmVuZGVyPT09ITAsdGhpcy5kYXRhPWIuZGF0YSx0aGlzLl9yZXZlcnNlZD1iLnJldmVyc2VkPT09ITAsVil7aXx8aC53YWtlKCk7dmFyIGM9dGhpcy52YXJzLnVzZUZyYW1lcz9VOlY7Yy5hZGQodGhpcyxjLl90aW1lKSx0aGlzLnZhcnMucGF1c2VkJiZ0aGlzLnBhdXNlZCghMCl9fSk7aD1DLnRpY2tlcj1uZXcgay5UaWNrZXIsZz1DLnByb3RvdHlwZSxnLl9kaXJ0eT1nLl9nYz1nLl9pbml0dGVkPWcuX3BhdXNlZD0hMSxnLl90b3RhbFRpbWU9Zy5fdGltZT0wLGcuX3Jhd1ByZXZUaW1lPS0xLGcuX25leHQ9Zy5fbGFzdD1nLl9vblVwZGF0ZT1nLl90aW1lbGluZT1nLnRpbWVsaW5lPW51bGwsZy5fcGF1c2VkPSExO3ZhciBEPWZ1bmN0aW9uKCl7aSYmQSgpLUI+MmUzJiZoLndha2UoKSxzZXRUaW1lb3V0KEQsMmUzKX07RCgpLGcucGxheT1mdW5jdGlvbihhLGIpe3JldHVybiBudWxsIT1hJiZ0aGlzLnNlZWsoYSxiKSx0aGlzLnJldmVyc2VkKCExKS5wYXVzZWQoITEpfSxnLnBhdXNlPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG51bGwhPWEmJnRoaXMuc2VlayhhLGIpLHRoaXMucGF1c2VkKCEwKX0sZy5yZXN1bWU9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbnVsbCE9YSYmdGhpcy5zZWVrKGEsYiksdGhpcy5wYXVzZWQoITEpfSxnLnNlZWs9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdGhpcy50b3RhbFRpbWUoTnVtYmVyKGEpLGIhPT0hMSl9LGcucmVzdGFydD1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLnJldmVyc2VkKCExKS5wYXVzZWQoITEpLnRvdGFsVGltZShhPy10aGlzLl9kZWxheTowLGIhPT0hMSwhMCl9LGcucmV2ZXJzZT1mdW5jdGlvbihhLGIpe3JldHVybiBudWxsIT1hJiZ0aGlzLnNlZWsoYXx8dGhpcy50b3RhbER1cmF0aW9uKCksYiksdGhpcy5yZXZlcnNlZCghMCkucGF1c2VkKCExKX0sZy5yZW5kZXI9ZnVuY3Rpb24oYSxiLGMpe30sZy5pbnZhbGlkYXRlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3RpbWU9dGhpcy5fdG90YWxUaW1lPTAsdGhpcy5faW5pdHRlZD10aGlzLl9nYz0hMSx0aGlzLl9yYXdQcmV2VGltZT0tMSwodGhpcy5fZ2N8fCF0aGlzLnRpbWVsaW5lKSYmdGhpcy5fZW5hYmxlZCghMCksdGhpc30sZy5pc0FjdGl2ZT1mdW5jdGlvbigpe3ZhciBhLGI9dGhpcy5fdGltZWxpbmUsYz10aGlzLl9zdGFydFRpbWU7cmV0dXJuIWJ8fCF0aGlzLl9nYyYmIXRoaXMuX3BhdXNlZCYmYi5pc0FjdGl2ZSgpJiYoYT1iLnJhd1RpbWUoKSk+PWMmJmE8Yyt0aGlzLnRvdGFsRHVyYXRpb24oKS90aGlzLl90aW1lU2NhbGV9LGcuX2VuYWJsZWQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gaXx8aC53YWtlKCksdGhpcy5fZ2M9IWEsdGhpcy5fYWN0aXZlPXRoaXMuaXNBY3RpdmUoKSxiIT09ITAmJihhJiYhdGhpcy50aW1lbGluZT90aGlzLl90aW1lbGluZS5hZGQodGhpcyx0aGlzLl9zdGFydFRpbWUtdGhpcy5fZGVsYXkpOiFhJiZ0aGlzLnRpbWVsaW5lJiZ0aGlzLl90aW1lbGluZS5fcmVtb3ZlKHRoaXMsITApKSwhMX0sZy5fa2lsbD1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLl9lbmFibGVkKCExLCExKX0sZy5raWxsPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuX2tpbGwoYSxiKSx0aGlzfSxnLl91bmNhY2hlPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1hP3RoaXM6dGhpcy50aW1lbGluZTtiOyliLl9kaXJ0eT0hMCxiPWIudGltZWxpbmU7cmV0dXJuIHRoaXN9LGcuX3N3YXBTZWxmSW5QYXJhbXM9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPWEubGVuZ3RoLGM9YS5jb25jYXQoKTstLWI+LTE7KSJ7c2VsZn0iPT09YVtiXSYmKGNbYl09dGhpcyk7cmV0dXJuIGN9LGcuX2NhbGxiYWNrPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMudmFycyxjPWJbYV0sZD1iW2ErIlBhcmFtcyJdLGU9YlthKyJTY29wZSJdfHxiLmNhbGxiYWNrU2NvcGV8fHRoaXMsZj1kP2QubGVuZ3RoOjA7c3dpdGNoKGYpe2Nhc2UgMDpjLmNhbGwoZSk7YnJlYWs7Y2FzZSAxOmMuY2FsbChlLGRbMF0pO2JyZWFrO2Nhc2UgMjpjLmNhbGwoZSxkWzBdLGRbMV0pO2JyZWFrO2RlZmF1bHQ6Yy5hcHBseShlLGQpfX0sZy5ldmVudENhbGxiYWNrPWZ1bmN0aW9uKGEsYixjLGQpe2lmKCJvbiI9PT0oYXx8IiIpLnN1YnN0cigwLDIpKXt2YXIgZT10aGlzLnZhcnM7aWYoMT09PWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIGVbYV07bnVsbD09Yj9kZWxldGUgZVthXTooZVthXT1iLGVbYSsiUGFyYW1zIl09byhjKSYmLTEhPT1jLmpvaW4oIiIpLmluZGV4T2YoIntzZWxmfSIpP3RoaXMuX3N3YXBTZWxmSW5QYXJhbXMoYyk6YyxlW2ErIlNjb3BlIl09ZCksIm9uVXBkYXRlIj09PWEmJih0aGlzLl9vblVwZGF0ZT1iKX1yZXR1cm4gdGhpc30sZy5kZWxheT1mdW5jdGlvbihhKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD8odGhpcy5fdGltZWxpbmUuc21vb3RoQ2hpbGRUaW1pbmcmJnRoaXMuc3RhcnRUaW1lKHRoaXMuX3N0YXJ0VGltZSthLXRoaXMuX2RlbGF5KSx0aGlzLl9kZWxheT1hLHRoaXMpOnRoaXMuX2RlbGF5fSxnLmR1cmF0aW9uPWZ1bmN0aW9uKGEpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyh0aGlzLl9kdXJhdGlvbj10aGlzLl90b3RhbER1cmF0aW9uPWEsdGhpcy5fdW5jYWNoZSghMCksdGhpcy5fdGltZWxpbmUuc21vb3RoQ2hpbGRUaW1pbmcmJnRoaXMuX3RpbWU+MCYmdGhpcy5fdGltZTx0aGlzLl9kdXJhdGlvbiYmMCE9PWEmJnRoaXMudG90YWxUaW1lKHRoaXMuX3RvdGFsVGltZSooYS90aGlzLl9kdXJhdGlvbiksITApLHRoaXMpOih0aGlzLl9kaXJ0eT0hMSx0aGlzLl9kdXJhdGlvbil9LGcudG90YWxEdXJhdGlvbj1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5fZGlydHk9ITEsYXJndW1lbnRzLmxlbmd0aD90aGlzLmR1cmF0aW9uKGEpOnRoaXMuX3RvdGFsRHVyYXRpb259LGcudGltZT1mdW5jdGlvbihhLGIpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyh0aGlzLl9kaXJ0eSYmdGhpcy50b3RhbER1cmF0aW9uKCksdGhpcy50b3RhbFRpbWUoYT50aGlzLl9kdXJhdGlvbj90aGlzLl9kdXJhdGlvbjphLGIpKTp0aGlzLl90aW1lfSxnLnRvdGFsVGltZT1mdW5jdGlvbihhLGIsYyl7aWYoaXx8aC53YWtlKCksIWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMuX3RvdGFsVGltZTtpZih0aGlzLl90aW1lbGluZSl7aWYoMD5hJiYhYyYmKGErPXRoaXMudG90YWxEdXJhdGlvbigpKSx0aGlzLl90aW1lbGluZS5zbW9vdGhDaGlsZFRpbWluZyl7dGhpcy5fZGlydHkmJnRoaXMudG90YWxEdXJhdGlvbigpO3ZhciBkPXRoaXMuX3RvdGFsRHVyYXRpb24sZT10aGlzLl90aW1lbGluZTtpZihhPmQmJiFjJiYoYT1kKSx0aGlzLl9zdGFydFRpbWU9KHRoaXMuX3BhdXNlZD90aGlzLl9wYXVzZVRpbWU6ZS5fdGltZSktKHRoaXMuX3JldmVyc2VkP2QtYTphKS90aGlzLl90aW1lU2NhbGUsZS5fZGlydHl8fHRoaXMuX3VuY2FjaGUoITEpLGUuX3RpbWVsaW5lKWZvcig7ZS5fdGltZWxpbmU7KWUuX3RpbWVsaW5lLl90aW1lIT09KGUuX3N0YXJ0VGltZStlLl90b3RhbFRpbWUpL2UuX3RpbWVTY2FsZSYmZS50b3RhbFRpbWUoZS5fdG90YWxUaW1lLCEwKSxlPWUuX3RpbWVsaW5lfXRoaXMuX2djJiZ0aGlzLl9lbmFibGVkKCEwLCExKSwodGhpcy5fdG90YWxUaW1lIT09YXx8MD09PXRoaXMuX2R1cmF0aW9uKSYmKEkubGVuZ3RoJiZYKCksdGhpcy5yZW5kZXIoYSxiLCExKSxJLmxlbmd0aCYmWCgpKX1yZXR1cm4gdGhpc30sZy5wcm9ncmVzcz1nLnRvdGFsUHJvZ3Jlc3M9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLmR1cmF0aW9uKCk7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/dGhpcy50b3RhbFRpbWUoYyphLGIpOmM/dGhpcy5fdGltZS9jOnRoaXMucmF0aW99LGcuc3RhcnRUaW1lPWZ1bmN0aW9uKGEpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyhhIT09dGhpcy5fc3RhcnRUaW1lJiYodGhpcy5fc3RhcnRUaW1lPWEsdGhpcy50aW1lbGluZSYmdGhpcy50aW1lbGluZS5fc29ydENoaWxkcmVuJiZ0aGlzLnRpbWVsaW5lLmFkZCh0aGlzLGEtdGhpcy5fZGVsYXkpKSx0aGlzKTp0aGlzLl9zdGFydFRpbWV9LGcuZW5kVGltZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5fc3RhcnRUaW1lKygwIT1hP3RoaXMudG90YWxEdXJhdGlvbigpOnRoaXMuZHVyYXRpb24oKSkvdGhpcy5fdGltZVNjYWxlfSxnLnRpbWVTY2FsZT1mdW5jdGlvbihhKXtpZighYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdGhpcy5fdGltZVNjYWxlO2lmKGE9YXx8bCx0aGlzLl90aW1lbGluZSYmdGhpcy5fdGltZWxpbmUuc21vb3RoQ2hpbGRUaW1pbmcpe3ZhciBiPXRoaXMuX3BhdXNlVGltZSxjPWJ8fDA9PT1iP2I6dGhpcy5fdGltZWxpbmUudG90YWxUaW1lKCk7dGhpcy5fc3RhcnRUaW1lPWMtKGMtdGhpcy5fc3RhcnRUaW1lKSp0aGlzLl90aW1lU2NhbGUvYX1yZXR1cm4gdGhpcy5fdGltZVNjYWxlPWEsdGhpcy5fdW5jYWNoZSghMSl9LGcucmV2ZXJzZWQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/KGEhPXRoaXMuX3JldmVyc2VkJiYodGhpcy5fcmV2ZXJzZWQ9YSx0aGlzLnRvdGFsVGltZSh0aGlzLl90aW1lbGluZSYmIXRoaXMuX3RpbWVsaW5lLnNtb290aENoaWxkVGltaW5nP3RoaXMudG90YWxEdXJhdGlvbigpLXRoaXMuX3RvdGFsVGltZTp0aGlzLl90b3RhbFRpbWUsITApKSx0aGlzKTp0aGlzLl9yZXZlcnNlZH0sZy5wYXVzZWQ9ZnVuY3Rpb24oYSl7aWYoIWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMuX3BhdXNlZDt2YXIgYixjLGQ9dGhpcy5fdGltZWxpbmU7cmV0dXJuIGEhPXRoaXMuX3BhdXNlZCYmZCYmKGl8fGF8fGgud2FrZSgpLGI9ZC5yYXdUaW1lKCksYz1iLXRoaXMuX3BhdXNlVGltZSwhYSYmZC5zbW9vdGhDaGlsZFRpbWluZyYmKHRoaXMuX3N0YXJ0VGltZSs9Yyx0aGlzLl91bmNhY2hlKCExKSksdGhpcy5fcGF1c2VUaW1lPWE/YjpudWxsLHRoaXMuX3BhdXNlZD1hLHRoaXMuX2FjdGl2ZT10aGlzLmlzQWN0aXZlKCksIWEmJjAhPT1jJiZ0aGlzLl9pbml0dGVkJiZ0aGlzLmR1cmF0aW9uKCkmJihiPWQuc21vb3RoQ2hpbGRUaW1pbmc/dGhpcy5fdG90YWxUaW1lOihiLXRoaXMuX3N0YXJ0VGltZSkvdGhpcy5fdGltZVNjYWxlLHRoaXMucmVuZGVyKGIsYj09PXRoaXMuX3RvdGFsVGltZSwhMCkpKSx0aGlzLl9nYyYmIWEmJnRoaXMuX2VuYWJsZWQoITAsITEpLHRoaXN9O3ZhciBFPXMoImNvcmUuU2ltcGxlVGltZWxpbmUiLGZ1bmN0aW9uKGEpe0MuY2FsbCh0aGlzLDAsYSksdGhpcy5hdXRvUmVtb3ZlQ2hpbGRyZW49dGhpcy5zbW9vdGhDaGlsZFRpbWluZz0hMH0pO2c9RS5wcm90b3R5cGU9bmV3IEMsZy5jb25zdHJ1Y3Rvcj1FLGcua2lsbCgpLl9nYz0hMSxnLl9maXJzdD1nLl9sYXN0PWcuX3JlY2VudD1udWxsLGcuX3NvcnRDaGlsZHJlbj0hMSxnLmFkZD1nLmluc2VydD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZSxmO2lmKGEuX3N0YXJ0VGltZT1OdW1iZXIoYnx8MCkrYS5fZGVsYXksYS5fcGF1c2VkJiZ0aGlzIT09YS5fdGltZWxpbmUmJihhLl9wYXVzZVRpbWU9YS5fc3RhcnRUaW1lKyh0aGlzLnJhd1RpbWUoKS1hLl9zdGFydFRpbWUpL2EuX3RpbWVTY2FsZSksYS50aW1lbGluZSYmYS50aW1lbGluZS5fcmVtb3ZlKGEsITApLGEudGltZWxpbmU9YS5fdGltZWxpbmU9dGhpcyxhLl9nYyYmYS5fZW5hYmxlZCghMCwhMCksZT10aGlzLl9sYXN0LHRoaXMuX3NvcnRDaGlsZHJlbilmb3IoZj1hLl9zdGFydFRpbWU7ZSYmZS5fc3RhcnRUaW1lPmY7KWU9ZS5fcHJldjtyZXR1cm4gZT8oYS5fbmV4dD1lLl9uZXh0LGUuX25leHQ9YSk6KGEuX25leHQ9dGhpcy5fZmlyc3QsdGhpcy5fZmlyc3Q9YSksYS5fbmV4dD9hLl9uZXh0Ll9wcmV2PWE6dGhpcy5fbGFzdD1hLGEuX3ByZXY9ZSx0aGlzLl9yZWNlbnQ9YSx0aGlzLl90aW1lbGluZSYmdGhpcy5fdW5jYWNoZSghMCksdGhpc30sZy5fcmVtb3ZlPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEudGltZWxpbmU9PT10aGlzJiYoYnx8YS5fZW5hYmxlZCghMSwhMCksYS5fcHJldj9hLl9wcmV2Ll9uZXh0PWEuX25leHQ6dGhpcy5fZmlyc3Q9PT1hJiYodGhpcy5fZmlyc3Q9YS5fbmV4dCksYS5fbmV4dD9hLl9uZXh0Ll9wcmV2PWEuX3ByZXY6dGhpcy5fbGFzdD09PWEmJih0aGlzLl9sYXN0PWEuX3ByZXYpLGEuX25leHQ9YS5fcHJldj1hLnRpbWVsaW5lPW51bGwsYT09PXRoaXMuX3JlY2VudCYmKHRoaXMuX3JlY2VudD10aGlzLl9sYXN0KSx0aGlzLl90aW1lbGluZSYmdGhpcy5fdW5jYWNoZSghMCkpLHRoaXN9LGcucmVuZGVyPWZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlPXRoaXMuX2ZpcnN0O2Zvcih0aGlzLl90b3RhbFRpbWU9dGhpcy5fdGltZT10aGlzLl9yYXdQcmV2VGltZT1hO2U7KWQ9ZS5fbmV4dCwoZS5fYWN0aXZlfHxhPj1lLl9zdGFydFRpbWUmJiFlLl9wYXVzZWQpJiYoZS5fcmV2ZXJzZWQ/ZS5yZW5kZXIoKGUuX2RpcnR5P2UudG90YWxEdXJhdGlvbigpOmUuX3RvdGFsRHVyYXRpb24pLShhLWUuX3N0YXJ0VGltZSkqZS5fdGltZVNjYWxlLGIsYyk6ZS5yZW5kZXIoKGEtZS5fc3RhcnRUaW1lKSplLl90aW1lU2NhbGUsYixjKSksZT1kfSxnLnJhd1RpbWU9ZnVuY3Rpb24oKXtyZXR1cm4gaXx8aC53YWtlKCksdGhpcy5fdG90YWxUaW1lfTt2YXIgRj1zKCJUd2VlbkxpdGUiLGZ1bmN0aW9uKGIsYyxkKXtpZihDLmNhbGwodGhpcyxjLGQpLHRoaXMucmVuZGVyPUYucHJvdG90eXBlLnJlbmRlcixudWxsPT1iKXRocm93IkNhbm5vdCB0d2VlbiBhIG51bGwgdGFyZ2V0LiI7dGhpcy50YXJnZXQ9Yj0ic3RyaW5nIiE9dHlwZW9mIGI/YjpGLnNlbGVjdG9yKGIpfHxiO3ZhciBlLGYsZyxoPWIuanF1ZXJ5fHxiLmxlbmd0aCYmYiE9PWEmJmJbMF0mJihiWzBdPT09YXx8YlswXS5ub2RlVHlwZSYmYlswXS5zdHlsZSYmIWIubm9kZVR5cGUpLGk9dGhpcy52YXJzLm92ZXJ3cml0ZTtpZih0aGlzLl9vdmVyd3JpdGU9aT1udWxsPT1pP1RbRi5kZWZhdWx0T3ZlcndyaXRlXToibnVtYmVyIj09dHlwZW9mIGk/aT4+MDpUW2ldLChofHxiIGluc3RhbmNlb2YgQXJyYXl8fGIucHVzaCYmbyhiKSkmJiJudW1iZXIiIT10eXBlb2YgYlswXSlmb3IodGhpcy5fdGFyZ2V0cz1nPW0oYiksdGhpcy5fcHJvcExvb2t1cD1bXSx0aGlzLl9zaWJsaW5ncz1bXSxlPTA7ZTxnLmxlbmd0aDtlKyspZj1nW2VdLGY/InN0cmluZyIhPXR5cGVvZiBmP2YubGVuZ3RoJiZmIT09YSYmZlswXSYmKGZbMF09PT1hfHxmWzBdLm5vZGVUeXBlJiZmWzBdLnN0eWxlJiYhZi5ub2RlVHlwZSk/KGcuc3BsaWNlKGUtLSwxKSx0aGlzLl90YXJnZXRzPWc9Zy5jb25jYXQobShmKSkpOih0aGlzLl9zaWJsaW5nc1tlXT1ZKGYsdGhpcywhMSksMT09PWkmJnRoaXMuX3NpYmxpbmdzW2VdLmxlbmd0aD4xJiYkKGYsdGhpcyxudWxsLDEsdGhpcy5fc2libGluZ3NbZV0pKTooZj1nW2UtLV09Ri5zZWxlY3RvcihmKSwic3RyaW5nIj09dHlwZW9mIGYmJmcuc3BsaWNlKGUrMSwxKSk6Zy5zcGxpY2UoZS0tLDEpO2Vsc2UgdGhpcy5fcHJvcExvb2t1cD17fSx0aGlzLl9zaWJsaW5ncz1ZKGIsdGhpcywhMSksMT09PWkmJnRoaXMuX3NpYmxpbmdzLmxlbmd0aD4xJiYkKGIsdGhpcyxudWxsLDEsdGhpcy5fc2libGluZ3MpOyh0aGlzLnZhcnMuaW1tZWRpYXRlUmVuZGVyfHwwPT09YyYmMD09PXRoaXMuX2RlbGF5JiZ0aGlzLnZhcnMuaW1tZWRpYXRlUmVuZGVyIT09ITEpJiYodGhpcy5fdGltZT0tbCx0aGlzLnJlbmRlcihNYXRoLm1pbigwLC10aGlzLl9kZWxheSkpKX0sITApLEc9ZnVuY3Rpb24oYil7cmV0dXJuIGImJmIubGVuZ3RoJiZiIT09YSYmYlswXSYmKGJbMF09PT1hfHxiWzBdLm5vZGVUeXBlJiZiWzBdLnN0eWxlJiYhYi5ub2RlVHlwZSl9LEg9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkPXt9O2ZvcihjIGluIGEpU1tjXXx8YyBpbiBiJiYidHJhbnNmb3JtIiE9PWMmJiJ4IiE9PWMmJiJ5IiE9PWMmJiJ3aWR0aCIhPT1jJiYiaGVpZ2h0IiE9PWMmJiJjbGFzc05hbWUiIT09YyYmImJvcmRlciIhPT1jfHwhKCFQW2NdfHxQW2NdJiZQW2NdLl9hdXRvQ1NTKXx8KGRbY109YVtjXSxkZWxldGUgYVtjXSk7YS5jc3M9ZH07Zz1GLnByb3RvdHlwZT1uZXcgQyxnLmNvbnN0cnVjdG9yPUYsZy5raWxsKCkuX2djPSExLGcucmF0aW89MCxnLl9maXJzdFBUPWcuX3RhcmdldHM9Zy5fb3ZlcndyaXR0ZW5Qcm9wcz1nLl9zdGFydEF0PW51bGwsZy5fbm90aWZ5UGx1Z2luc09mRW5hYmxlZD1nLl9sYXp5PSExLEYudmVyc2lvbj0iMS4xOS4wIixGLmRlZmF1bHRFYXNlPWcuX2Vhc2U9bmV3IHUobnVsbCxudWxsLDEsMSksRi5kZWZhdWx0T3ZlcndyaXRlPSJhdXRvIixGLnRpY2tlcj1oLEYuYXV0b1NsZWVwPTEyMCxGLmxhZ1Ntb290aGluZz1mdW5jdGlvbihhLGIpe2gubGFnU21vb3RoaW5nKGEsYil9LEYuc2VsZWN0b3I9YS4kfHxhLmpRdWVyeXx8ZnVuY3Rpb24oYil7dmFyIGM9YS4kfHxhLmpRdWVyeTtyZXR1cm4gYz8oRi5zZWxlY3Rvcj1jLGMoYikpOiJ1bmRlZmluZWQiPT10eXBlb2YgZG9jdW1lbnQ/Yjpkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoYik6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIiMiPT09Yi5jaGFyQXQoMCk/Yi5zdWJzdHIoMSk6Yil9O3ZhciBJPVtdLEo9e30sSz0vKD86KC18LT18XCs9KT9cZCpcLj9cZCooPzplW1wtK10/XGQrKT8pWzAtOV0vZ2ksTD1mdW5jdGlvbihhKXtmb3IodmFyIGIsYz10aGlzLl9maXJzdFBULGQ9MWUtNjtjOyliPWMuYmxvYj9hP3RoaXMuam9pbigiIik6dGhpcy5zdGFydDpjLmMqYStjLnMsYy5tP2I9Yy5tKGIsdGhpcy5fdGFyZ2V0fHxjLnQpOmQ+YiYmYj4tZCYmKGI9MCksYy5mP2MuZnA/Yy50W2MucF0oYy5mcCxiKTpjLnRbYy5wXShiKTpjLnRbYy5wXT1iLGM9Yy5fbmV4dH0sTT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZSxmLGcsaCxpLGosayxsPVthLGJdLG09MCxuPSIiLG89MDtmb3IobC5zdGFydD1hLGMmJihjKGwpLGE9bFswXSxiPWxbMV0pLGwubGVuZ3RoPTAsZT1hLm1hdGNoKEspfHxbXSxmPWIubWF0Y2goSyl8fFtdLGQmJihkLl9uZXh0PW51bGwsZC5ibG9iPTEsbC5fZmlyc3RQVD1sLl9hcHBseVBUPWQpLGk9Zi5sZW5ndGgsaD0wO2k+aDtoKyspaz1mW2hdLGo9Yi5zdWJzdHIobSxiLmluZGV4T2YoayxtKS1tKSxuKz1qfHwhaD9qOiIsIixtKz1qLmxlbmd0aCxvP289KG8rMSklNToicmdiYSgiPT09ai5zdWJzdHIoLTUpJiYobz0xKSxrPT09ZVtoXXx8ZS5sZW5ndGg8PWg/bis9azoobiYmKGwucHVzaChuKSxuPSIiKSxnPXBhcnNlRmxvYXQoZVtoXSksbC5wdXNoKGcpLGwuX2ZpcnN0UFQ9e19uZXh0OmwuX2ZpcnN0UFQsdDpsLHA6bC5sZW5ndGgtMSxzOmcsYzooIj0iPT09ay5jaGFyQXQoMSk/cGFyc2VJbnQoay5jaGFyQXQoMCkrIjEiLDEwKSpwYXJzZUZsb2F0KGsuc3Vic3RyKDIpKTpwYXJzZUZsb2F0KGspLWcpfHwwLGY6MCxtOm8mJjQ+bz9NYXRoLnJvdW5kOjB9KSxtKz1rLmxlbmd0aDtyZXR1cm4gbis9Yi5zdWJzdHIobSksbiYmbC5wdXNoKG4pLGwuc2V0UmF0aW89TCxsfSxOPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCxpKXsiZnVuY3Rpb24iPT10eXBlb2YgZCYmKGQ9ZChpfHwwLGEpKTt2YXIgaixrLGw9ImdldCI9PT1jP2FbYl06YyxtPXR5cGVvZiBhW2JdLG49InN0cmluZyI9PXR5cGVvZiBkJiYiPSI9PT1kLmNoYXJBdCgxKSxvPXt0OmEscDpiLHM6bCxmOiJmdW5jdGlvbiI9PT1tLHBnOjAsbjplfHxiLG06Zj8iZnVuY3Rpb24iPT10eXBlb2YgZj9mOk1hdGgucm91bmQ6MCxwcjowLGM6bj9wYXJzZUludChkLmNoYXJBdCgwKSsiMSIsMTApKnBhcnNlRmxvYXQoZC5zdWJzdHIoMikpOnBhcnNlRmxvYXQoZCktbHx8MH07cmV0dXJuIm51bWJlciIhPT1tJiYoImZ1bmN0aW9uIj09PW0mJiJnZXQiPT09YyYmKGs9Yi5pbmRleE9mKCJzZXQiKXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGFbImdldCIrYi5zdWJzdHIoMyldP2I6ImdldCIrYi5zdWJzdHIoMyksby5zPWw9Zz9hW2tdKGcpOmFba10oKSksInN0cmluZyI9PXR5cGVvZiBsJiYoZ3x8aXNOYU4obCkpPyhvLmZwPWcsaj1NKGwsZCxofHxGLmRlZmF1bHRTdHJpbmdGaWx0ZXIsbyksbz17dDpqLHA6InNldFJhdGlvIixzOjAsYzoxLGY6MixwZzowLG46ZXx8YixwcjowLG06MH0pOm58fChvLnM9cGFyc2VGbG9hdChsKSxvLmM9cGFyc2VGbG9hdChkKS1vLnN8fDApKSxvLmM/KChvLl9uZXh0PXRoaXMuX2ZpcnN0UFQpJiYoby5fbmV4dC5fcHJldj1vKSx0aGlzLl9maXJzdFBUPW8sbyk6dm9pZCAwfSxPPUYuX2ludGVybmFscz17aXNBcnJheTpvLGlzU2VsZWN0b3I6RyxsYXp5VHdlZW5zOkksYmxvYkRpZjpNfSxQPUYuX3BsdWdpbnM9e30sUT1PLnR3ZWVuTG9va3VwPXt9LFI9MCxTPU8ucmVzZXJ2ZWRQcm9wcz17ZWFzZToxLGRlbGF5OjEsb3ZlcndyaXRlOjEsb25Db21wbGV0ZToxLG9uQ29tcGxldGVQYXJhbXM6MSxvbkNvbXBsZXRlU2NvcGU6MSx1c2VGcmFtZXM6MSxydW5CYWNrd2FyZHM6MSxzdGFydEF0OjEsb25VcGRhdGU6MSxvblVwZGF0ZVBhcmFtczoxLG9uVXBkYXRlU2NvcGU6MSxvblN0YXJ0OjEsb25TdGFydFBhcmFtczoxLG9uU3RhcnRTY29wZToxLG9uUmV2ZXJzZUNvbXBsZXRlOjEsb25SZXZlcnNlQ29tcGxldGVQYXJhbXM6MSxvblJldmVyc2VDb21wbGV0ZVNjb3BlOjEsb25SZXBlYXQ6MSxvblJlcGVhdFBhcmFtczoxLG9uUmVwZWF0U2NvcGU6MSxlYXNlUGFyYW1zOjEseW95bzoxLGltbWVkaWF0ZVJlbmRlcjoxLHJlcGVhdDoxLHJlcGVhdERlbGF5OjEsZGF0YToxLHBhdXNlZDoxLHJldmVyc2VkOjEsYXV0b0NTUzoxLGxhenk6MSxvbk92ZXJ3cml0ZToxLGNhbGxiYWNrU2NvcGU6MSxzdHJpbmdGaWx0ZXI6MSxpZDoxfSxUPXtub25lOjAsYWxsOjEsYXV0bzoyLGNvbmN1cnJlbnQ6MyxhbGxPblN0YXJ0OjQscHJlZXhpc3Rpbmc6NSwidHJ1ZSI6MSwiZmFsc2UiOjB9LFU9Qy5fcm9vdEZyYW1lc1RpbWVsaW5lPW5ldyBFLFY9Qy5fcm9vdFRpbWVsaW5lPW5ldyBFLFc9MzAsWD1PLmxhenlSZW5kZXI9ZnVuY3Rpb24oKXt2YXIgYSxiPUkubGVuZ3RoO2ZvcihKPXt9Oy0tYj4tMTspYT1JW2JdLGEmJmEuX2xhenkhPT0hMSYmKGEucmVuZGVyKGEuX2xhenlbMF0sYS5fbGF6eVsxXSwhMCksYS5fbGF6eT0hMSk7SS5sZW5ndGg9MH07Vi5fc3RhcnRUaW1lPWgudGltZSxVLl9zdGFydFRpbWU9aC5mcmFtZSxWLl9hY3RpdmU9VS5fYWN0aXZlPSEwLHNldFRpbWVvdXQoWCwxKSxDLl91cGRhdGVSb290PUYucmVuZGVyPWZ1bmN0aW9uKCl7dmFyIGEsYixjO2lmKEkubGVuZ3RoJiZYKCksVi5yZW5kZXIoKGgudGltZS1WLl9zdGFydFRpbWUpKlYuX3RpbWVTY2FsZSwhMSwhMSksVS5yZW5kZXIoKGguZnJhbWUtVS5fc3RhcnRUaW1lKSpVLl90aW1lU2NhbGUsITEsITEpLEkubGVuZ3RoJiZYKCksaC5mcmFtZT49Vyl7Vz1oLmZyYW1lKyhwYXJzZUludChGLmF1dG9TbGVlcCwxMCl8fDEyMCk7Zm9yKGMgaW4gUSl7Zm9yKGI9UVtjXS50d2VlbnMsYT1iLmxlbmd0aDstLWE+LTE7KWJbYV0uX2djJiZiLnNwbGljZShhLDEpOzA9PT1iLmxlbmd0aCYmZGVsZXRlIFFbY119aWYoYz1WLl9maXJzdCwoIWN8fGMuX3BhdXNlZCkmJkYuYXV0b1NsZWVwJiYhVS5fZmlyc3QmJjE9PT1oLl9saXN0ZW5lcnMudGljay5sZW5ndGgpe2Zvcig7YyYmYy5fcGF1c2VkOyljPWMuX25leHQ7Y3x8aC5zbGVlcCgpfX19LGguYWRkRXZlbnRMaXN0ZW5lcigidGljayIsQy5fdXBkYXRlUm9vdCk7dmFyIFk9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZj1hLl9nc1R3ZWVuSUQ7aWYoUVtmfHwoYS5fZ3NUd2VlbklEPWY9InQiK1IrKyldfHwoUVtmXT17dGFyZ2V0OmEsdHdlZW5zOltdfSksYiYmKGQ9UVtmXS50d2VlbnMsZFtlPWQubGVuZ3RoXT1iLGMpKWZvcig7LS1lPi0xOylkW2VdPT09YiYmZC5zcGxpY2UoZSwxKTtyZXR1cm4gUVtmXS50d2VlbnN9LFo9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGUsZixnPWEudmFycy5vbk92ZXJ3cml0ZTtyZXR1cm4gZyYmKGU9ZyhhLGIsYyxkKSksZz1GLm9uT3ZlcndyaXRlLGcmJihmPWcoYSxiLGMsZCkpLGUhPT0hMSYmZiE9PSExfSwkPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGYsZyxoLGk7aWYoMT09PWR8fGQ+PTQpe2ZvcihpPWUubGVuZ3RoLGY9MDtpPmY7ZisrKWlmKChoPWVbZl0pIT09YiloLl9nY3x8aC5fa2lsbChudWxsLGEsYikmJihnPSEwKTtlbHNlIGlmKDU9PT1kKWJyZWFrO3JldHVybiBnfXZhciBqLGs9Yi5fc3RhcnRUaW1lK2wsbT1bXSxuPTAsbz0wPT09Yi5fZHVyYXRpb247Zm9yKGY9ZS5sZW5ndGg7LS1mPi0xOykoaD1lW2ZdKT09PWJ8fGguX2djfHxoLl9wYXVzZWR8fChoLl90aW1lbGluZSE9PWIuX3RpbWVsaW5lPyhqPWp8fF8oYiwwLG8pLDA9PT1fKGgsaixvKSYmKG1bbisrXT1oKSk6aC5fc3RhcnRUaW1lPD1rJiZoLl9zdGFydFRpbWUraC50b3RhbER1cmF0aW9uKCkvaC5fdGltZVNjYWxlPmsmJigob3x8IWguX2luaXR0ZWQpJiZrLWguX3N0YXJ0VGltZTw9MmUtMTB8fChtW24rK109aCkpKTtmb3IoZj1uOy0tZj4tMTspaWYoaD1tW2ZdLDI9PT1kJiZoLl9raWxsKGMsYSxiKSYmKGc9ITApLDIhPT1kfHwhaC5fZmlyc3RQVCYmaC5faW5pdHRlZCl7aWYoMiE9PWQmJiFaKGgsYikpY29udGludWU7aC5fZW5hYmxlZCghMSwhMSkmJihnPSEwKX1yZXR1cm4gZ30sXz1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPWEuX3RpbWVsaW5lLGU9ZC5fdGltZVNjYWxlLGY9YS5fc3RhcnRUaW1lO2QuX3RpbWVsaW5lOyl7aWYoZis9ZC5fc3RhcnRUaW1lLGUqPWQuX3RpbWVTY2FsZSxkLl9wYXVzZWQpcmV0dXJuLTEwMDtkPWQuX3RpbWVsaW5lfXJldHVybiBmLz1lLGY+Yj9mLWI6YyYmZj09PWJ8fCFhLl9pbml0dGVkJiYyKmw+Zi1iP2w6KGYrPWEudG90YWxEdXJhdGlvbigpL2EuX3RpbWVTY2FsZS9lKT5iK2w/MDpmLWItbH07Zy5faW5pdD1mdW5jdGlvbigpe3ZhciBhLGIsYyxkLGUsZixnPXRoaXMudmFycyxoPXRoaXMuX292ZXJ3cml0dGVuUHJvcHMsaT10aGlzLl9kdXJhdGlvbixqPSEhZy5pbW1lZGlhdGVSZW5kZXIsaz1nLmVhc2U7aWYoZy5zdGFydEF0KXt0aGlzLl9zdGFydEF0JiYodGhpcy5fc3RhcnRBdC5yZW5kZXIoLTEsITApLHRoaXMuX3N0YXJ0QXQua2lsbCgpKSxlPXt9O2ZvcihkIGluIGcuc3RhcnRBdCllW2RdPWcuc3RhcnRBdFtkXTtpZihlLm92ZXJ3cml0ZT0hMSxlLmltbWVkaWF0ZVJlbmRlcj0hMCxlLmxhenk9aiYmZy5sYXp5IT09ITEsZS5zdGFydEF0PWUuZGVsYXk9bnVsbCx0aGlzLl9zdGFydEF0PUYudG8odGhpcy50YXJnZXQsMCxlKSxqKWlmKHRoaXMuX3RpbWU+MCl0aGlzLl9zdGFydEF0PW51bGw7ZWxzZSBpZigwIT09aSlyZXR1cm59ZWxzZSBpZihnLnJ1bkJhY2t3YXJkcyYmMCE9PWkpaWYodGhpcy5fc3RhcnRBdCl0aGlzLl9zdGFydEF0LnJlbmRlcigtMSwhMCksdGhpcy5fc3RhcnRBdC5raWxsKCksdGhpcy5fc3RhcnRBdD1udWxsO2Vsc2V7MCE9PXRoaXMuX3RpbWUmJihqPSExKSxjPXt9O2ZvcihkIGluIGcpU1tkXSYmImF1dG9DU1MiIT09ZHx8KGNbZF09Z1tkXSk7aWYoYy5vdmVyd3JpdGU9MCxjLmRhdGE9ImlzRnJvbVN0YXJ0IixjLmxhenk9aiYmZy5sYXp5IT09ITEsYy5pbW1lZGlhdGVSZW5kZXI9aix0aGlzLl9zdGFydEF0PUYudG8odGhpcy50YXJnZXQsMCxjKSxqKXtpZigwPT09dGhpcy5fdGltZSlyZXR1cm59ZWxzZSB0aGlzLl9zdGFydEF0Ll9pbml0KCksdGhpcy5fc3RhcnRBdC5fZW5hYmxlZCghMSksdGhpcy52YXJzLmltbWVkaWF0ZVJlbmRlciYmKHRoaXMuX3N0YXJ0QXQ9bnVsbCl9aWYodGhpcy5fZWFzZT1rPWs/ayBpbnN0YW5jZW9mIHU/azoiZnVuY3Rpb24iPT10eXBlb2Ygaz9uZXcgdShrLGcuZWFzZVBhcmFtcyk6dltrXXx8Ri5kZWZhdWx0RWFzZTpGLmRlZmF1bHRFYXNlLGcuZWFzZVBhcmFtcyBpbnN0YW5jZW9mIEFycmF5JiZrLmNvbmZpZyYmKHRoaXMuX2Vhc2U9ay5jb25maWcuYXBwbHkoayxnLmVhc2VQYXJhbXMpKSx0aGlzLl9lYXNlVHlwZT10aGlzLl9lYXNlLl90eXBlLHRoaXMuX2Vhc2VQb3dlcj10aGlzLl9lYXNlLl9wb3dlcix0aGlzLl9maXJzdFBUPW51bGwsdGhpcy5fdGFyZ2V0cylmb3IoZj10aGlzLl90YXJnZXRzLmxlbmd0aCxhPTA7Zj5hO2ErKyl0aGlzLl9pbml0UHJvcHModGhpcy5fdGFyZ2V0c1thXSx0aGlzLl9wcm9wTG9va3VwW2FdPXt9LHRoaXMuX3NpYmxpbmdzW2FdLGg/aFthXTpudWxsLGEpJiYoYj0hMCk7ZWxzZSBiPXRoaXMuX2luaXRQcm9wcyh0aGlzLnRhcmdldCx0aGlzLl9wcm9wTG9va3VwLHRoaXMuX3NpYmxpbmdzLGgsMCk7aWYoYiYmRi5fb25QbHVnaW5FdmVudCgiX29uSW5pdEFsbFByb3BzIix0aGlzKSxoJiYodGhpcy5fZmlyc3RQVHx8ImZ1bmN0aW9uIiE9dHlwZW9mIHRoaXMudGFyZ2V0JiZ0aGlzLl9lbmFibGVkKCExLCExKSksZy5ydW5CYWNrd2FyZHMpZm9yKGM9dGhpcy5fZmlyc3RQVDtjOyljLnMrPWMuYyxjLmM9LWMuYyxjPWMuX25leHQ7dGhpcy5fb25VcGRhdGU9Zy5vblVwZGF0ZSx0aGlzLl9pbml0dGVkPSEwfSxnLl9pbml0UHJvcHM9ZnVuY3Rpb24oYixjLGQsZSxmKXt2YXIgZyxoLGksaixrLGw7aWYobnVsbD09YilyZXR1cm4hMTtKW2IuX2dzVHdlZW5JRF0mJlgoKSx0aGlzLnZhcnMuY3NzfHxiLnN0eWxlJiZiIT09YSYmYi5ub2RlVHlwZSYmUC5jc3MmJnRoaXMudmFycy5hdXRvQ1NTIT09ITEmJkgodGhpcy52YXJzLGIpO2ZvcihnIGluIHRoaXMudmFycylpZihsPXRoaXMudmFyc1tnXSxTW2ddKWwmJihsIGluc3RhbmNlb2YgQXJyYXl8fGwucHVzaCYmbyhsKSkmJi0xIT09bC5qb2luKCIiKS5pbmRleE9mKCJ7c2VsZn0iKSYmKHRoaXMudmFyc1tnXT1sPXRoaXMuX3N3YXBTZWxmSW5QYXJhbXMobCx0aGlzKSk7ZWxzZSBpZihQW2ddJiYoaj1uZXcgUFtnXSkuX29uSW5pdFR3ZWVuKGIsdGhpcy52YXJzW2ddLHRoaXMsZikpe2Zvcih0aGlzLl9maXJzdFBUPWs9e19uZXh0OnRoaXMuX2ZpcnN0UFQsdDpqLHA6InNldFJhdGlvIixzOjAsYzoxLGY6MSxuOmcscGc6MSxwcjpqLl9wcmlvcml0eSxtOjB9LGg9ai5fb3ZlcndyaXRlUHJvcHMubGVuZ3RoOy0taD4tMTspY1tqLl9vdmVyd3JpdGVQcm9wc1toXV09dGhpcy5fZmlyc3RQVDsoai5fcHJpb3JpdHl8fGouX29uSW5pdEFsbFByb3BzKSYmKGk9ITApLChqLl9vbkRpc2FibGV8fGouX29uRW5hYmxlKSYmKHRoaXMuX25vdGlmeVBsdWdpbnNPZkVuYWJsZWQ9ITApLGsuX25leHQmJihrLl9uZXh0Ll9wcmV2PWspfWVsc2UgY1tnXT1OLmNhbGwodGhpcyxiLGcsImdldCIsbCxnLDAsbnVsbCx0aGlzLnZhcnMuc3RyaW5nRmlsdGVyLGYpO3JldHVybiBlJiZ0aGlzLl9raWxsKGUsYik/dGhpcy5faW5pdFByb3BzKGIsYyxkLGUsZik6dGhpcy5fb3ZlcndyaXRlPjEmJnRoaXMuX2ZpcnN0UFQmJmQubGVuZ3RoPjEmJiQoYix0aGlzLGMsdGhpcy5fb3ZlcndyaXRlLGQpPyh0aGlzLl9raWxsKGMsYiksdGhpcy5faW5pdFByb3BzKGIsYyxkLGUsZikpOih0aGlzLl9maXJzdFBUJiYodGhpcy52YXJzLmxhenkhPT0hMSYmdGhpcy5fZHVyYXRpb258fHRoaXMudmFycy5sYXp5JiYhdGhpcy5fZHVyYXRpb24pJiYoSltiLl9nc1R3ZWVuSURdPSEwKSxpKX0sZy5yZW5kZXI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZixnLGg9dGhpcy5fdGltZSxpPXRoaXMuX2R1cmF0aW9uLGo9dGhpcy5fcmF3UHJldlRpbWU7aWYoYT49aS0xZS03KXRoaXMuX3RvdGFsVGltZT10aGlzLl90aW1lPWksdGhpcy5yYXRpbz10aGlzLl9lYXNlLl9jYWxjRW5kP3RoaXMuX2Vhc2UuZ2V0UmF0aW8oMSk6MSx0aGlzLl9yZXZlcnNlZHx8KGQ9ITAsZT0ib25Db21wbGV0ZSIsYz1jfHx0aGlzLl90aW1lbGluZS5hdXRvUmVtb3ZlQ2hpbGRyZW4pLDA9PT1pJiYodGhpcy5faW5pdHRlZHx8IXRoaXMudmFycy5sYXp5fHxjKSYmKHRoaXMuX3N0YXJ0VGltZT09PXRoaXMuX3RpbWVsaW5lLl9kdXJhdGlvbiYmKGE9MCksKDA+anx8MD49YSYmYT49LTFlLTd8fGo9PT1sJiYiaXNQYXVzZSIhPT10aGlzLmRhdGEpJiZqIT09YSYmKGM9ITAsaj5sJiYoZT0ib25SZXZlcnNlQ29tcGxldGUiKSksdGhpcy5fcmF3UHJldlRpbWU9Zz0hYnx8YXx8aj09PWE/YTpsKTtlbHNlIGlmKDFlLTc+YSl0aGlzLl90b3RhbFRpbWU9dGhpcy5fdGltZT0wLHRoaXMucmF0aW89dGhpcy5fZWFzZS5fY2FsY0VuZD90aGlzLl9lYXNlLmdldFJhdGlvKDApOjAsKDAhPT1ofHwwPT09aSYmaj4wKSYmKGU9Im9uUmV2ZXJzZUNvbXBsZXRlIixkPXRoaXMuX3JldmVyc2VkKSwwPmEmJih0aGlzLl9hY3RpdmU9ITEsMD09PWkmJih0aGlzLl9pbml0dGVkfHwhdGhpcy52YXJzLmxhenl8fGMpJiYoaj49MCYmKGohPT1sfHwiaXNQYXVzZSIhPT10aGlzLmRhdGEpJiYoYz0hMCksdGhpcy5fcmF3UHJldlRpbWU9Zz0hYnx8YXx8aj09PWE/YTpsKSksdGhpcy5faW5pdHRlZHx8KGM9ITApO2Vsc2UgaWYodGhpcy5fdG90YWxUaW1lPXRoaXMuX3RpbWU9YSx0aGlzLl9lYXNlVHlwZSl7dmFyIGs9YS9pLG09dGhpcy5fZWFzZVR5cGUsbj10aGlzLl9lYXNlUG93ZXI7KDE9PT1tfHwzPT09bSYmaz49LjUpJiYoaz0xLWspLDM9PT1tJiYoayo9MiksMT09PW4/ayo9azoyPT09bj9rKj1rKms6Mz09PW4/ayo9ayprKms6ND09PW4mJihrKj1rKmsqayprKSwxPT09bT90aGlzLnJhdGlvPTEtazoyPT09bT90aGlzLnJhdGlvPWs6LjU+YS9pP3RoaXMucmF0aW89ay8yOnRoaXMucmF0aW89MS1rLzJ9ZWxzZSB0aGlzLnJhdGlvPXRoaXMuX2Vhc2UuZ2V0UmF0aW8oYS9pKTtpZih0aGlzLl90aW1lIT09aHx8Yyl7aWYoIXRoaXMuX2luaXR0ZWQpe2lmKHRoaXMuX2luaXQoKSwhdGhpcy5faW5pdHRlZHx8dGhpcy5fZ2MpcmV0dXJuO2lmKCFjJiZ0aGlzLl9maXJzdFBUJiYodGhpcy52YXJzLmxhenkhPT0hMSYmdGhpcy5fZHVyYXRpb258fHRoaXMudmFycy5sYXp5JiYhdGhpcy5fZHVyYXRpb24pKXJldHVybiB0aGlzLl90aW1lPXRoaXMuX3RvdGFsVGltZT1oLHRoaXMuX3Jhd1ByZXZUaW1lPWosSS5wdXNoKHRoaXMpLHZvaWQodGhpcy5fbGF6eT1bYSxiXSk7dGhpcy5fdGltZSYmIWQ/dGhpcy5yYXRpbz10aGlzLl9lYXNlLmdldFJhdGlvKHRoaXMuX3RpbWUvaSk6ZCYmdGhpcy5fZWFzZS5fY2FsY0VuZCYmKHRoaXMucmF0aW89dGhpcy5fZWFzZS5nZXRSYXRpbygwPT09dGhpcy5fdGltZT8wOjEpKX1mb3IodGhpcy5fbGF6eSE9PSExJiYodGhpcy5fbGF6eT0hMSksdGhpcy5fYWN0aXZlfHwhdGhpcy5fcGF1c2VkJiZ0aGlzLl90aW1lIT09aCYmYT49MCYmKHRoaXMuX2FjdGl2ZT0hMCksMD09PWgmJih0aGlzLl9zdGFydEF0JiYoYT49MD90aGlzLl9zdGFydEF0LnJlbmRlcihhLGIsYyk6ZXx8KGU9Il9kdW1teUdTIikpLHRoaXMudmFycy5vblN0YXJ0JiYoMCE9PXRoaXMuX3RpbWV8fDA9PT1pKSYmKGJ8fHRoaXMuX2NhbGxiYWNrKCJvblN0YXJ0IikpKSxmPXRoaXMuX2ZpcnN0UFQ7ZjspZi5mP2YudFtmLnBdKGYuYyp0aGlzLnJhdGlvK2Yucyk6Zi50W2YucF09Zi5jKnRoaXMucmF0aW8rZi5zLGY9Zi5fbmV4dDt0aGlzLl9vblVwZGF0ZSYmKDA+YSYmdGhpcy5fc3RhcnRBdCYmYSE9PS0xZS00JiZ0aGlzLl9zdGFydEF0LnJlbmRlcihhLGIsYyksYnx8KHRoaXMuX3RpbWUhPT1ofHxkfHxjKSYmdGhpcy5fY2FsbGJhY2soIm9uVXBkYXRlIikpLGUmJighdGhpcy5fZ2N8fGMpJiYoMD5hJiZ0aGlzLl9zdGFydEF0JiYhdGhpcy5fb25VcGRhdGUmJmEhPT0tMWUtNCYmdGhpcy5fc3RhcnRBdC5yZW5kZXIoYSxiLGMpLGQmJih0aGlzLl90aW1lbGluZS5hdXRvUmVtb3ZlQ2hpbGRyZW4mJnRoaXMuX2VuYWJsZWQoITEsITEpLHRoaXMuX2FjdGl2ZT0hMSksIWImJnRoaXMudmFyc1tlXSYmdGhpcy5fY2FsbGJhY2soZSksMD09PWkmJnRoaXMuX3Jhd1ByZXZUaW1lPT09bCYmZyE9PWwmJih0aGlzLl9yYXdQcmV2VGltZT0wKSl9fSxnLl9raWxsPWZ1bmN0aW9uKGEsYixjKXtpZigiYWxsIj09PWEmJihhPW51bGwpLG51bGw9PWEmJihudWxsPT1ifHxiPT09dGhpcy50YXJnZXQpKXJldHVybiB0aGlzLl9sYXp5PSExLHRoaXMuX2VuYWJsZWQoITEsITEpO2I9InN0cmluZyIhPXR5cGVvZiBiP2J8fHRoaXMuX3RhcmdldHN8fHRoaXMudGFyZ2V0OkYuc2VsZWN0b3IoYil8fGI7dmFyIGQsZSxmLGcsaCxpLGosayxsLG09YyYmdGhpcy5fdGltZSYmYy5fc3RhcnRUaW1lPT09dGhpcy5fc3RhcnRUaW1lJiZ0aGlzLl90aW1lbGluZT09PWMuX3RpbWVsaW5lO2lmKChvKGIpfHxHKGIpKSYmIm51bWJlciIhPXR5cGVvZiBiWzBdKWZvcihkPWIubGVuZ3RoOy0tZD4tMTspdGhpcy5fa2lsbChhLGJbZF0sYykmJihpPSEwKTtlbHNle2lmKHRoaXMuX3RhcmdldHMpe2ZvcihkPXRoaXMuX3RhcmdldHMubGVuZ3RoOy0tZD4tMTspaWYoYj09PXRoaXMuX3RhcmdldHNbZF0pe2g9dGhpcy5fcHJvcExvb2t1cFtkXXx8e30sdGhpcy5fb3ZlcndyaXR0ZW5Qcm9wcz10aGlzLl9vdmVyd3JpdHRlblByb3BzfHxbXSxlPXRoaXMuX292ZXJ3cml0dGVuUHJvcHNbZF09YT90aGlzLl9vdmVyd3JpdHRlblByb3BzW2RdfHx7fToiYWxsIjticmVha319ZWxzZXtpZihiIT09dGhpcy50YXJnZXQpcmV0dXJuITE7aD10aGlzLl9wcm9wTG9va3VwLGU9dGhpcy5fb3ZlcndyaXR0ZW5Qcm9wcz1hP3RoaXMuX292ZXJ3cml0dGVuUHJvcHN8fHt9OiJhbGwifWlmKGgpe2lmKGo9YXx8aCxrPWEhPT1lJiYiYWxsIiE9PWUmJmEhPT1oJiYoIm9iamVjdCIhPXR5cGVvZiBhfHwhYS5fdGVtcEtpbGwpLGMmJihGLm9uT3ZlcndyaXRlfHx0aGlzLnZhcnMub25PdmVyd3JpdGUpKXtmb3IoZiBpbiBqKWhbZl0mJihsfHwobD1bXSksbC5wdXNoKGYpKTtpZigobHx8IWEpJiYhWih0aGlzLGMsYixsKSlyZXR1cm4hMX1mb3IoZiBpbiBqKShnPWhbZl0pJiYobSYmKGcuZj9nLnRbZy5wXShnLnMpOmcudFtnLnBdPWcucyxpPSEwKSxnLnBnJiZnLnQuX2tpbGwoaikmJihpPSEwKSxnLnBnJiYwIT09Zy50Ll9vdmVyd3JpdGVQcm9wcy5sZW5ndGh8fChnLl9wcmV2P2cuX3ByZXYuX25leHQ9Zy5fbmV4dDpnPT09dGhpcy5fZmlyc3RQVCYmKHRoaXMuX2ZpcnN0UFQ9Zy5fbmV4dCksZy5fbmV4dCYmKGcuX25leHQuX3ByZXY9Zy5fcHJldiksZy5fbmV4dD1nLl9wcmV2PW51bGwpLGRlbGV0ZSBoW2ZdKSxrJiYoZVtmXT0xKTshdGhpcy5fZmlyc3RQVCYmdGhpcy5faW5pdHRlZCYmdGhpcy5fZW5hYmxlZCghMSwhMSl9fXJldHVybiBpfSxnLmludmFsaWRhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fbm90aWZ5UGx1Z2luc09mRW5hYmxlZCYmRi5fb25QbHVnaW5FdmVudCgiX29uRGlzYWJsZSIsdGhpcyksdGhpcy5fZmlyc3RQVD10aGlzLl9vdmVyd3JpdHRlblByb3BzPXRoaXMuX3N0YXJ0QXQ9dGhpcy5fb25VcGRhdGU9bnVsbCx0aGlzLl9ub3RpZnlQbHVnaW5zT2ZFbmFibGVkPXRoaXMuX2FjdGl2ZT10aGlzLl9sYXp5PSExLHRoaXMuX3Byb3BMb29rdXA9dGhpcy5fdGFyZ2V0cz97fTpbXSxDLnByb3RvdHlwZS5pbnZhbGlkYXRlLmNhbGwodGhpcyksdGhpcy52YXJzLmltbWVkaWF0ZVJlbmRlciYmKHRoaXMuX3RpbWU9LWwsdGhpcy5yZW5kZXIoTWF0aC5taW4oMCwtdGhpcy5fZGVsYXkpKSksdGhpc30sZy5fZW5hYmxlZD1mdW5jdGlvbihhLGIpe2lmKGl8fGgud2FrZSgpLGEmJnRoaXMuX2djKXt2YXIgYyxkPXRoaXMuX3RhcmdldHM7aWYoZClmb3IoYz1kLmxlbmd0aDstLWM+LTE7KXRoaXMuX3NpYmxpbmdzW2NdPVkoZFtjXSx0aGlzLCEwKTtlbHNlIHRoaXMuX3NpYmxpbmdzPVkodGhpcy50YXJnZXQsdGhpcywhMCl9cmV0dXJuIEMucHJvdG90eXBlLl9lbmFibGVkLmNhbGwodGhpcyxhLGIpLHRoaXMuX25vdGlmeVBsdWdpbnNPZkVuYWJsZWQmJnRoaXMuX2ZpcnN0UFQ/Ri5fb25QbHVnaW5FdmVudChhPyJfb25FbmFibGUiOiJfb25EaXNhYmxlIix0aGlzKTohMX0sRi50bz1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIG5ldyBGKGEsYixjKX0sRi5mcm9tPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYy5ydW5CYWNrd2FyZHM9ITAsYy5pbW1lZGlhdGVSZW5kZXI9MCE9Yy5pbW1lZGlhdGVSZW5kZXIsbmV3IEYoYSxiLGMpfSxGLmZyb21Ubz1mdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4gZC5zdGFydEF0PWMsZC5pbW1lZGlhdGVSZW5kZXI9MCE9ZC5pbW1lZGlhdGVSZW5kZXImJjAhPWMuaW1tZWRpYXRlUmVuZGVyLG5ldyBGKGEsYixkKX0sRi5kZWxheWVkQ2FsbD1mdW5jdGlvbihhLGIsYyxkLGUpe3JldHVybiBuZXcgRihiLDAse2RlbGF5OmEsb25Db21wbGV0ZTpiLG9uQ29tcGxldGVQYXJhbXM6YyxjYWxsYmFja1Njb3BlOmQsb25SZXZlcnNlQ29tcGxldGU6YixvblJldmVyc2VDb21wbGV0ZVBhcmFtczpjLGltbWVkaWF0ZVJlbmRlcjohMSxsYXp5OiExLHVzZUZyYW1lczplLG92ZXJ3cml0ZTowfSl9LEYuc2V0PWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBGKGEsMCxiKX0sRi5nZXRUd2VlbnNPZj1mdW5jdGlvbihhLGIpe2lmKG51bGw9PWEpcmV0dXJuW107YT0ic3RyaW5nIiE9dHlwZW9mIGE/YTpGLnNlbGVjdG9yKGEpfHxhO3ZhciBjLGQsZSxmO2lmKChvKGEpfHxHKGEpKSYmIm51bWJlciIhPXR5cGVvZiBhWzBdKXtmb3IoYz1hLmxlbmd0aCxkPVtdOy0tYz4tMTspZD1kLmNvbmNhdChGLmdldFR3ZWVuc09mKGFbY10sYikpO2ZvcihjPWQubGVuZ3RoOy0tYz4tMTspZm9yKGY9ZFtjXSxlPWM7LS1lPi0xOylmPT09ZFtlXSYmZC5zcGxpY2UoYywxKX1lbHNlIGZvcihkPVkoYSkuY29uY2F0KCksYz1kLmxlbmd0aDstLWM+LTE7KShkW2NdLl9nY3x8YiYmIWRbY10uaXNBY3RpdmUoKSkmJmQuc3BsaWNlKGMsMSk7cmV0dXJuIGR9LEYua2lsbFR3ZWVuc09mPUYua2lsbERlbGF5ZWRDYWxsc1RvPWZ1bmN0aW9uKGEsYixjKXsib2JqZWN0Ij09dHlwZW9mIGImJihjPWIsYj0hMSk7Zm9yKHZhciBkPUYuZ2V0VHdlZW5zT2YoYSxiKSxlPWQubGVuZ3RoOy0tZT4tMTspZFtlXS5fa2lsbChjLGEpfTt2YXIgYWE9cygicGx1Z2lucy5Ud2VlblBsdWdpbiIsZnVuY3Rpb24oYSxiKXt0aGlzLl9vdmVyd3JpdGVQcm9wcz0oYXx8IiIpLnNwbGl0KCIsIiksdGhpcy5fcHJvcE5hbWU9dGhpcy5fb3ZlcndyaXRlUHJvcHNbMF0sdGhpcy5fcHJpb3JpdHk9Ynx8MCx0aGlzLl9zdXBlcj1hYS5wcm90b3R5cGV9LCEwKTtpZihnPWFhLnByb3RvdHlwZSxhYS52ZXJzaW9uPSIxLjE5LjAiLGFhLkFQST0yLGcuX2ZpcnN0UFQ9bnVsbCxnLl9hZGRUd2Vlbj1OLGcuc2V0UmF0aW89TCxnLl9raWxsPWZ1bmN0aW9uKGEpe3ZhciBiLGM9dGhpcy5fb3ZlcndyaXRlUHJvcHMsZD10aGlzLl9maXJzdFBUO2lmKG51bGwhPWFbdGhpcy5fcHJvcE5hbWVdKXRoaXMuX292ZXJ3cml0ZVByb3BzPVtdO2Vsc2UgZm9yKGI9Yy5sZW5ndGg7LS1iPi0xOyludWxsIT1hW2NbYl1dJiZjLnNwbGljZShiLDEpO2Zvcig7ZDspbnVsbCE9YVtkLm5dJiYoZC5fbmV4dCYmKGQuX25leHQuX3ByZXY9ZC5fcHJldiksZC5fcHJldj8oZC5fcHJldi5fbmV4dD1kLl9uZXh0LGQuX3ByZXY9bnVsbCk6dGhpcy5fZmlyc3RQVD09PWQmJih0aGlzLl9maXJzdFBUPWQuX25leHQpKSxkPWQuX25leHQ7cmV0dXJuITF9LGcuX21vZD1nLl9yb3VuZFByb3BzPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYixjPXRoaXMuX2ZpcnN0UFQ7YzspYj1hW3RoaXMuX3Byb3BOYW1lXXx8bnVsbCE9Yy5uJiZhW2Mubi5zcGxpdCh0aGlzLl9wcm9wTmFtZSsiXyIpLmpvaW4oIiIpXSxiJiYiZnVuY3Rpb24iPT10eXBlb2YgYiYmKDI9PT1jLmY/Yy50Ll9hcHBseVBULm09YjpjLm09YiksYz1jLl9uZXh0fSxGLl9vblBsdWdpbkV2ZW50PWZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlLGYsZyxoPWIuX2ZpcnN0UFQ7aWYoIl9vbkluaXRBbGxQcm9wcyI9PT1hKXtmb3IoO2g7KXtmb3IoZz1oLl9uZXh0LGQ9ZTtkJiZkLnByPmgucHI7KWQ9ZC5fbmV4dDsoaC5fcHJldj1kP2QuX3ByZXY6Zik/aC5fcHJldi5fbmV4dD1oOmU9aCwoaC5fbmV4dD1kKT9kLl9wcmV2PWg6Zj1oLGg9Z31oPWIuX2ZpcnN0UFQ9ZX1mb3IoO2g7KWgucGcmJiJmdW5jdGlvbiI9PXR5cGVvZiBoLnRbYV0mJmgudFthXSgpJiYoYz0hMCksaD1oLl9uZXh0O3JldHVybiBjfSxhYS5hY3RpdmF0ZT1mdW5jdGlvbihhKXtmb3IodmFyIGI9YS5sZW5ndGg7LS1iPi0xOylhW2JdLkFQST09PWFhLkFQSSYmKFBbKG5ldyBhW2JdKS5fcHJvcE5hbWVdPWFbYl0pO3JldHVybiEwfSxyLnBsdWdpbj1mdW5jdGlvbihhKXtpZighKGEmJmEucHJvcE5hbWUmJmEuaW5pdCYmYS5BUEkpKXRocm93ImlsbGVnYWwgcGx1Z2luIGRlZmluaXRpb24uIjt2YXIgYixjPWEucHJvcE5hbWUsZD1hLnByaW9yaXR5fHwwLGU9YS5vdmVyd3JpdGVQcm9wcyxmPXtpbml0OiJfb25Jbml0VHdlZW4iLHNldDoic2V0UmF0aW8iLGtpbGw6Il9raWxsIixyb3VuZDoiX21vZCIsbW9kOiJfbW9kIixpbml0QWxsOiJfb25Jbml0QWxsUHJvcHMifSxnPXMoInBsdWdpbnMuIitjLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpK2Muc3Vic3RyKDEpKyJQbHVnaW4iLGZ1bmN0aW9uKCl7YWEuY2FsbCh0aGlzLGMsZCksdGhpcy5fb3ZlcndyaXRlUHJvcHM9ZXx8W119LGEuZ2xvYmFsPT09ITApLGg9Zy5wcm90b3R5cGU9bmV3IGFhKGMpO2guY29uc3RydWN0b3I9ZyxnLkFQST1hLkFQSTtmb3IoYiBpbiBmKSJmdW5jdGlvbiI9PXR5cGVvZiBhW2JdJiYoaFtmW2JdXT1hW2JdKTtyZXR1cm4gZy52ZXJzaW9uPWEudmVyc2lvbixhYS5hY3RpdmF0ZShbZ10pLGd9LGU9YS5fZ3NRdWV1ZSl7Zm9yKGY9MDtmPGUubGVuZ3RoO2YrKyllW2ZdKCk7Zm9yKGcgaW4gcClwW2ddLmZ1bmN8fGEuY29uc29sZS5sb2coIkdTQVAgZW5jb3VudGVyZWQgbWlzc2luZyBkZXBlbmRlbmN5OiAiK2cpfWk9ITF9fSgidW5kZWZpbmVkIiE9dHlwZW9mIG1vZHVsZSYmbW9kdWxlLmV4cG9ydHMmJiJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsP2dsb2JhbDp0aGlzfHx3aW5kb3csIlR3ZWVuTGl0ZSIpOw0KDQovKiBUSU1FIExJTkUgTElURSAqLw0KLyohDQogKiBWRVJTSU9OOiAxLjE3LjANCiAqIERBVEU6IDIwMTUtMDUtMjcNCiAqIFVQREFURVMgQU5EIERPQ1MgQVQ6IGh0dHA6Ly9ncmVlbnNvY2suY29tDQogKg0KICogQGxpY2Vuc2UgQ29weXJpZ2h0IChjKSAyMDA4LTIwMTUsIEdyZWVuU29jay4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIFRoaXMgd29yayBpcyBzdWJqZWN0IHRvIHRoZSB0ZXJtcyBhdCBodHRwOi8vZ3JlZW5zb2NrLmNvbS9zdGFuZGFyZC1saWNlbnNlIG9yIGZvcg0KICogQ2x1YiBHcmVlblNvY2sgbWVtYmVycywgdGhlIHNvZnR3YXJlIGFncmVlbWVudCB0aGF0IHdhcyBpc3N1ZWQgd2l0aCB5b3VyIG1lbWJlcnNoaXAuDQogKiANCiAqIEBhdXRob3I6IEphY2sgRG95bGUsIGphY2tAZ3JlZW5zb2NrLmNvbQ0KICovDQp2YXIgX2dzU2NvcGU9InVuZGVmaW5lZCIhPXR5cGVvZiBtb2R1bGUmJm1vZHVsZS5leHBvcnRzJiYidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6dGhpc3x8d2luZG93OyhfZ3NTY29wZS5fZ3NRdWV1ZXx8KF9nc1Njb3BlLl9nc1F1ZXVlPVtdKSkucHVzaChmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtfZ3NTY29wZS5fZ3NEZWZpbmUoIlRpbWVsaW5lTGl0ZSIsWyJjb3JlLkFuaW1hdGlvbiIsImNvcmUuU2ltcGxlVGltZWxpbmUiLCJUd2VlbkxpdGUiXSxmdW5jdGlvbih0LGUsaSl7dmFyIHM9ZnVuY3Rpb24odCl7ZS5jYWxsKHRoaXMsdCksdGhpcy5fbGFiZWxzPXt9LHRoaXMuYXV0b1JlbW92ZUNoaWxkcmVuPXRoaXMudmFycy5hdXRvUmVtb3ZlQ2hpbGRyZW49PT0hMCx0aGlzLnNtb290aENoaWxkVGltaW5nPXRoaXMudmFycy5zbW9vdGhDaGlsZFRpbWluZz09PSEwLHRoaXMuX3NvcnRDaGlsZHJlbj0hMCx0aGlzLl9vblVwZGF0ZT10aGlzLnZhcnMub25VcGRhdGU7dmFyIGkscyxyPXRoaXMudmFycztmb3IocyBpbiByKWk9cltzXSxoKGkpJiYtMSE9PWkuam9pbigiIikuaW5kZXhPZigie3NlbGZ9IikmJihyW3NdPXRoaXMuX3N3YXBTZWxmSW5QYXJhbXMoaSkpO2goci50d2VlbnMpJiZ0aGlzLmFkZChyLnR3ZWVucywwLHIuYWxpZ24sci5zdGFnZ2VyKX0scj0xZS0xMCxuPWkuX2ludGVybmFscyxhPXMuX2ludGVybmFscz17fSxvPW4uaXNTZWxlY3RvcixoPW4uaXNBcnJheSxsPW4ubGF6eVR3ZWVucyxfPW4ubGF6eVJlbmRlcix1PVtdLGY9X2dzU2NvcGUuX2dzRGVmaW5lLmdsb2JhbHMsYz1mdW5jdGlvbih0KXt2YXIgZSxpPXt9O2ZvcihlIGluIHQpaVtlXT10W2VdO3JldHVybiBpfSxwPWEucGF1c2VDYWxsYmFjaz1mdW5jdGlvbih0LGUsaSxzKXt2YXIgbixhPXQuX3RpbWVsaW5lLG89YS5fdG90YWxUaW1lLGg9dC5fc3RhcnRUaW1lLGw9MD50Ll9yYXdQcmV2VGltZXx8MD09PXQuX3Jhd1ByZXZUaW1lJiZhLl9yZXZlcnNlZCxfPWw/MDpyLGY9bD9yOjA7aWYoZXx8IXRoaXMuX2ZvcmNpbmdQbGF5aGVhZCl7Zm9yKGEucGF1c2UoaCksbj10Ll9wcmV2O24mJm4uX3N0YXJ0VGltZT09PWg7KW4uX3Jhd1ByZXZUaW1lPWYsbj1uLl9wcmV2O2ZvcihuPXQuX25leHQ7biYmbi5fc3RhcnRUaW1lPT09aDspbi5fcmF3UHJldlRpbWU9XyxuPW4uX25leHQ7ZSYmZS5hcHBseShzfHxhLnZhcnMuY2FsbGJhY2tTY29wZXx8YSxpfHx1KSwodGhpcy5fZm9yY2luZ1BsYXloZWFkfHwhYS5fcGF1c2VkKSYmYS5zZWVrKG8pfX0sbT1mdW5jdGlvbih0KXt2YXIgZSxpPVtdLHM9dC5sZW5ndGg7Zm9yKGU9MDtlIT09cztpLnB1c2godFtlKytdKSk7cmV0dXJuIGl9LGQ9cy5wcm90b3R5cGU9bmV3IGU7cmV0dXJuIHMudmVyc2lvbj0iMS4xNy4wIixkLmNvbnN0cnVjdG9yPXMsZC5raWxsKCkuX2djPWQuX2ZvcmNpbmdQbGF5aGVhZD0hMSxkLnRvPWZ1bmN0aW9uKHQsZSxzLHIpe3ZhciBuPXMucmVwZWF0JiZmLlR3ZWVuTWF4fHxpO3JldHVybiBlP3RoaXMuYWRkKG5ldyBuKHQsZSxzKSxyKTp0aGlzLnNldCh0LHMscil9LGQuZnJvbT1mdW5jdGlvbih0LGUscyxyKXtyZXR1cm4gdGhpcy5hZGQoKHMucmVwZWF0JiZmLlR3ZWVuTWF4fHxpKS5mcm9tKHQsZSxzKSxyKX0sZC5mcm9tVG89ZnVuY3Rpb24odCxlLHMscixuKXt2YXIgYT1yLnJlcGVhdCYmZi5Ud2Vlbk1heHx8aTtyZXR1cm4gZT90aGlzLmFkZChhLmZyb21Ubyh0LGUscyxyKSxuKTp0aGlzLnNldCh0LHIsbil9LGQuc3RhZ2dlclRvPWZ1bmN0aW9uKHQsZSxyLG4sYSxoLGwsXyl7dmFyIHUsZj1uZXcgcyh7b25Db21wbGV0ZTpoLG9uQ29tcGxldGVQYXJhbXM6bCxjYWxsYmFja1Njb3BlOl8sc21vb3RoQ2hpbGRUaW1pbmc6dGhpcy5zbW9vdGhDaGlsZFRpbWluZ30pO2Zvcigic3RyaW5nIj09dHlwZW9mIHQmJih0PWkuc2VsZWN0b3IodCl8fHQpLHQ9dHx8W10sbyh0KSYmKHQ9bSh0KSksbj1ufHwwLDA+biYmKHQ9bSh0KSx0LnJldmVyc2UoKSxuKj0tMSksdT0wO3QubGVuZ3RoPnU7dSsrKXIuc3RhcnRBdCYmKHIuc3RhcnRBdD1jKHIuc3RhcnRBdCkpLGYudG8odFt1XSxlLGMociksdSpuKTtyZXR1cm4gdGhpcy5hZGQoZixhKX0sZC5zdGFnZ2VyRnJvbT1mdW5jdGlvbih0LGUsaSxzLHIsbixhLG8pe3JldHVybiBpLmltbWVkaWF0ZVJlbmRlcj0wIT1pLmltbWVkaWF0ZVJlbmRlcixpLnJ1bkJhY2t3YXJkcz0hMCx0aGlzLnN0YWdnZXJUbyh0LGUsaSxzLHIsbixhLG8pfSxkLnN0YWdnZXJGcm9tVG89ZnVuY3Rpb24odCxlLGkscyxyLG4sYSxvLGgpe3JldHVybiBzLnN0YXJ0QXQ9aSxzLmltbWVkaWF0ZVJlbmRlcj0wIT1zLmltbWVkaWF0ZVJlbmRlciYmMCE9aS5pbW1lZGlhdGVSZW5kZXIsdGhpcy5zdGFnZ2VyVG8odCxlLHMscixuLGEsbyxoKX0sZC5jYWxsPWZ1bmN0aW9uKHQsZSxzLHIpe3JldHVybiB0aGlzLmFkZChpLmRlbGF5ZWRDYWxsKDAsdCxlLHMpLHIpfSxkLnNldD1mdW5jdGlvbih0LGUscyl7cmV0dXJuIHM9dGhpcy5fcGFyc2VUaW1lT3JMYWJlbChzLDAsITApLG51bGw9PWUuaW1tZWRpYXRlUmVuZGVyJiYoZS5pbW1lZGlhdGVSZW5kZXI9cz09PXRoaXMuX3RpbWUmJiF0aGlzLl9wYXVzZWQpLHRoaXMuYWRkKG5ldyBpKHQsMCxlKSxzKX0scy5leHBvcnRSb290PWZ1bmN0aW9uKHQsZSl7dD10fHx7fSxudWxsPT10LnNtb290aENoaWxkVGltaW5nJiYodC5zbW9vdGhDaGlsZFRpbWluZz0hMCk7dmFyIHIsbixhPW5ldyBzKHQpLG89YS5fdGltZWxpbmU7Zm9yKG51bGw9PWUmJihlPSEwKSxvLl9yZW1vdmUoYSwhMCksYS5fc3RhcnRUaW1lPTAsYS5fcmF3UHJldlRpbWU9YS5fdGltZT1hLl90b3RhbFRpbWU9by5fdGltZSxyPW8uX2ZpcnN0O3I7KW49ci5fbmV4dCxlJiZyIGluc3RhbmNlb2YgaSYmci50YXJnZXQ9PT1yLnZhcnMub25Db21wbGV0ZXx8YS5hZGQocixyLl9zdGFydFRpbWUtci5fZGVsYXkpLHI9bjtyZXR1cm4gby5hZGQoYSwwKSxhfSxkLmFkZD1mdW5jdGlvbihyLG4sYSxvKXt2YXIgbCxfLHUsZixjLHA7aWYoIm51bWJlciIhPXR5cGVvZiBuJiYobj10aGlzLl9wYXJzZVRpbWVPckxhYmVsKG4sMCwhMCxyKSksIShyIGluc3RhbmNlb2YgdCkpe2lmKHIgaW5zdGFuY2VvZiBBcnJheXx8ciYmci5wdXNoJiZoKHIpKXtmb3IoYT1hfHwibm9ybWFsIixvPW98fDAsbD1uLF89ci5sZW5ndGgsdT0wO18+dTt1KyspaChmPXJbdV0pJiYoZj1uZXcgcyh7dHdlZW5zOmZ9KSksdGhpcy5hZGQoZixsKSwic3RyaW5nIiE9dHlwZW9mIGYmJiJmdW5jdGlvbiIhPXR5cGVvZiBmJiYoInNlcXVlbmNlIj09PWE/bD1mLl9zdGFydFRpbWUrZi50b3RhbER1cmF0aW9uKCkvZi5fdGltZVNjYWxlOiJzdGFydCI9PT1hJiYoZi5fc3RhcnRUaW1lLT1mLmRlbGF5KCkpKSxsKz1vO3JldHVybiB0aGlzLl91bmNhY2hlKCEwKX1pZigic3RyaW5nIj09dHlwZW9mIHIpcmV0dXJuIHRoaXMuYWRkTGFiZWwocixuKTtpZigiZnVuY3Rpb24iIT10eXBlb2Ygcil0aHJvdyJDYW5ub3QgYWRkICIrcisiIGludG8gdGhlIHRpbWVsaW5lOyBpdCBpcyBub3QgYSB0d2VlbiwgdGltZWxpbmUsIGZ1bmN0aW9uLCBvciBzdHJpbmcuIjtyPWkuZGVsYXllZENhbGwoMCxyKX1pZihlLnByb3RvdHlwZS5hZGQuY2FsbCh0aGlzLHIsbiksKHRoaXMuX2djfHx0aGlzLl90aW1lPT09dGhpcy5fZHVyYXRpb24pJiYhdGhpcy5fcGF1c2VkJiZ0aGlzLl9kdXJhdGlvbjx0aGlzLmR1cmF0aW9uKCkpZm9yKGM9dGhpcyxwPWMucmF3VGltZSgpPnIuX3N0YXJ0VGltZTtjLl90aW1lbGluZTspcCYmYy5fdGltZWxpbmUuc21vb3RoQ2hpbGRUaW1pbmc/Yy50b3RhbFRpbWUoYy5fdG90YWxUaW1lLCEwKTpjLl9nYyYmYy5fZW5hYmxlZCghMCwhMSksYz1jLl90aW1lbGluZTtyZXR1cm4gdGhpc30sZC5yZW1vdmU9ZnVuY3Rpb24oZSl7aWYoZSBpbnN0YW5jZW9mIHQpcmV0dXJuIHRoaXMuX3JlbW92ZShlLCExKTtpZihlIGluc3RhbmNlb2YgQXJyYXl8fGUmJmUucHVzaCYmaChlKSl7Zm9yKHZhciBpPWUubGVuZ3RoOy0taT4tMTspdGhpcy5yZW1vdmUoZVtpXSk7cmV0dXJuIHRoaXN9cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP3RoaXMucmVtb3ZlTGFiZWwoZSk6dGhpcy5raWxsKG51bGwsZSl9LGQuX3JlbW92ZT1mdW5jdGlvbih0LGkpe2UucHJvdG90eXBlLl9yZW1vdmUuY2FsbCh0aGlzLHQsaSk7dmFyIHM9dGhpcy5fbGFzdDtyZXR1cm4gcz90aGlzLl90aW1lPnMuX3N0YXJ0VGltZStzLl90b3RhbER1cmF0aW9uL3MuX3RpbWVTY2FsZSYmKHRoaXMuX3RpbWU9dGhpcy5kdXJhdGlvbigpLHRoaXMuX3RvdGFsVGltZT10aGlzLl90b3RhbER1cmF0aW9uKTp0aGlzLl90aW1lPXRoaXMuX3RvdGFsVGltZT10aGlzLl9kdXJhdGlvbj10aGlzLl90b3RhbER1cmF0aW9uPTAsdGhpc30sZC5hcHBlbmQ9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5hZGQodCx0aGlzLl9wYXJzZVRpbWVPckxhYmVsKG51bGwsZSwhMCx0KSl9LGQuaW5zZXJ0PWQuaW5zZXJ0TXVsdGlwbGU9ZnVuY3Rpb24odCxlLGkscyl7cmV0dXJuIHRoaXMuYWRkKHQsZXx8MCxpLHMpfSxkLmFwcGVuZE11bHRpcGxlPWZ1bmN0aW9uKHQsZSxpLHMpe3JldHVybiB0aGlzLmFkZCh0LHRoaXMuX3BhcnNlVGltZU9yTGFiZWwobnVsbCxlLCEwLHQpLGkscyl9LGQuYWRkTGFiZWw9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5fbGFiZWxzW3RdPXRoaXMuX3BhcnNlVGltZU9yTGFiZWwoZSksdGhpc30sZC5hZGRQYXVzZT1mdW5jdGlvbih0LGUscyxyKXt2YXIgbj1pLmRlbGF5ZWRDYWxsKDAscCxbIntzZWxmfSIsZSxzLHJdLHRoaXMpO3JldHVybiBuLmRhdGE9ImlzUGF1c2UiLHRoaXMuYWRkKG4sdCl9LGQucmVtb3ZlTGFiZWw9ZnVuY3Rpb24odCl7cmV0dXJuIGRlbGV0ZSB0aGlzLl9sYWJlbHNbdF0sdGhpc30sZC5nZXRMYWJlbFRpbWU9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXRoaXMuX2xhYmVsc1t0XT90aGlzLl9sYWJlbHNbdF06LTF9LGQuX3BhcnNlVGltZU9yTGFiZWw9ZnVuY3Rpb24oZSxpLHMscil7dmFyIG47aWYociBpbnN0YW5jZW9mIHQmJnIudGltZWxpbmU9PT10aGlzKXRoaXMucmVtb3ZlKHIpO2Vsc2UgaWYociYmKHIgaW5zdGFuY2VvZiBBcnJheXx8ci5wdXNoJiZoKHIpKSlmb3Iobj1yLmxlbmd0aDstLW4+LTE7KXJbbl1pbnN0YW5jZW9mIHQmJnJbbl0udGltZWxpbmU9PT10aGlzJiZ0aGlzLnJlbW92ZShyW25dKTtpZigic3RyaW5nIj09dHlwZW9mIGkpcmV0dXJuIHRoaXMuX3BhcnNlVGltZU9yTGFiZWwoaSxzJiYibnVtYmVyIj09dHlwZW9mIGUmJm51bGw9PXRoaXMuX2xhYmVsc1tpXT9lLXRoaXMuZHVyYXRpb24oKTowLHMpO2lmKGk9aXx8MCwic3RyaW5nIiE9dHlwZW9mIGV8fCFpc05hTihlKSYmbnVsbD09dGhpcy5fbGFiZWxzW2VdKW51bGw9PWUmJihlPXRoaXMuZHVyYXRpb24oKSk7ZWxzZXtpZihuPWUuaW5kZXhPZigiPSIpLC0xPT09bilyZXR1cm4gbnVsbD09dGhpcy5fbGFiZWxzW2VdP3M/dGhpcy5fbGFiZWxzW2VdPXRoaXMuZHVyYXRpb24oKStpOmk6dGhpcy5fbGFiZWxzW2VdK2k7aT1wYXJzZUludChlLmNoYXJBdChuLTEpKyIxIiwxMCkqTnVtYmVyKGUuc3Vic3RyKG4rMSkpLGU9bj4xP3RoaXMuX3BhcnNlVGltZU9yTGFiZWwoZS5zdWJzdHIoMCxuLTEpLDAscyk6dGhpcy5kdXJhdGlvbigpfXJldHVybiBOdW1iZXIoZSkraX0sZC5zZWVrPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMudG90YWxUaW1lKCJudW1iZXIiPT10eXBlb2YgdD90OnRoaXMuX3BhcnNlVGltZU9yTGFiZWwodCksZSE9PSExKX0sZC5zdG9wPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucGF1c2VkKCEwKX0sZC5nb3RvQW5kUGxheT1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLnBsYXkodCxlKX0sZC5nb3RvQW5kU3RvcD1mdW5jdGlvbih0LGUpe3JldHVybiB0aGlzLnBhdXNlKHQsZSl9LGQucmVuZGVyPWZ1bmN0aW9uKHQsZSxpKXt0aGlzLl9nYyYmdGhpcy5fZW5hYmxlZCghMCwhMSk7dmFyIHMsbixhLG8saCx1PXRoaXMuX2RpcnR5P3RoaXMudG90YWxEdXJhdGlvbigpOnRoaXMuX3RvdGFsRHVyYXRpb24sZj10aGlzLl90aW1lLGM9dGhpcy5fc3RhcnRUaW1lLHA9dGhpcy5fdGltZVNjYWxlLG09dGhpcy5fcGF1c2VkO2lmKHQ+PXUpdGhpcy5fdG90YWxUaW1lPXRoaXMuX3RpbWU9dSx0aGlzLl9yZXZlcnNlZHx8dGhpcy5faGFzUGF1c2VkQ2hpbGQoKXx8KG49ITAsbz0ib25Db21wbGV0ZSIsaD0hIXRoaXMuX3RpbWVsaW5lLmF1dG9SZW1vdmVDaGlsZHJlbiwwPT09dGhpcy5fZHVyYXRpb24mJigwPT09dHx8MD50aGlzLl9yYXdQcmV2VGltZXx8dGhpcy5fcmF3UHJldlRpbWU9PT1yKSYmdGhpcy5fcmF3UHJldlRpbWUhPT10JiZ0aGlzLl9maXJzdCYmKGg9ITAsdGhpcy5fcmF3UHJldlRpbWU+ciYmKG89Im9uUmV2ZXJzZUNvbXBsZXRlIikpKSx0aGlzLl9yYXdQcmV2VGltZT10aGlzLl9kdXJhdGlvbnx8IWV8fHR8fHRoaXMuX3Jhd1ByZXZUaW1lPT09dD90OnIsdD11KzFlLTQ7ZWxzZSBpZigxZS03PnQpaWYodGhpcy5fdG90YWxUaW1lPXRoaXMuX3RpbWU9MCwoMCE9PWZ8fDA9PT10aGlzLl9kdXJhdGlvbiYmdGhpcy5fcmF3UHJldlRpbWUhPT1yJiYodGhpcy5fcmF3UHJldlRpbWU+MHx8MD50JiZ0aGlzLl9yYXdQcmV2VGltZT49MCkpJiYobz0ib25SZXZlcnNlQ29tcGxldGUiLG49dGhpcy5fcmV2ZXJzZWQpLDA+dCl0aGlzLl9hY3RpdmU9ITEsdGhpcy5fdGltZWxpbmUuYXV0b1JlbW92ZUNoaWxkcmVuJiZ0aGlzLl9yZXZlcnNlZD8oaD1uPSEwLG89Im9uUmV2ZXJzZUNvbXBsZXRlIik6dGhpcy5fcmF3UHJldlRpbWU+PTAmJnRoaXMuX2ZpcnN0JiYoaD0hMCksdGhpcy5fcmF3UHJldlRpbWU9dDtlbHNle2lmKHRoaXMuX3Jhd1ByZXZUaW1lPXRoaXMuX2R1cmF0aW9ufHwhZXx8dHx8dGhpcy5fcmF3UHJldlRpbWU9PT10P3Q6ciwwPT09dCYmbilmb3Iocz10aGlzLl9maXJzdDtzJiYwPT09cy5fc3RhcnRUaW1lOylzLl9kdXJhdGlvbnx8KG49ITEpLHM9cy5fbmV4dDt0PTAsdGhpcy5faW5pdHRlZHx8KGg9ITApfWVsc2UgdGhpcy5fdG90YWxUaW1lPXRoaXMuX3RpbWU9dGhpcy5fcmF3UHJldlRpbWU9dDtpZih0aGlzLl90aW1lIT09ZiYmdGhpcy5fZmlyc3R8fGl8fGgpe2lmKHRoaXMuX2luaXR0ZWR8fCh0aGlzLl9pbml0dGVkPSEwKSx0aGlzLl9hY3RpdmV8fCF0aGlzLl9wYXVzZWQmJnRoaXMuX3RpbWUhPT1mJiZ0PjAmJih0aGlzLl9hY3RpdmU9ITApLDA9PT1mJiZ0aGlzLnZhcnMub25TdGFydCYmMCE9PXRoaXMuX3RpbWUmJihlfHx0aGlzLl9jYWxsYmFjaygib25TdGFydCIpKSx0aGlzLl90aW1lPj1mKWZvcihzPXRoaXMuX2ZpcnN0O3MmJihhPXMuX25leHQsIXRoaXMuX3BhdXNlZHx8bSk7KShzLl9hY3RpdmV8fHMuX3N0YXJ0VGltZTw9dGhpcy5fdGltZSYmIXMuX3BhdXNlZCYmIXMuX2djKSYmKHMuX3JldmVyc2VkP3MucmVuZGVyKChzLl9kaXJ0eT9zLnRvdGFsRHVyYXRpb24oKTpzLl90b3RhbER1cmF0aW9uKS0odC1zLl9zdGFydFRpbWUpKnMuX3RpbWVTY2FsZSxlLGkpOnMucmVuZGVyKCh0LXMuX3N0YXJ0VGltZSkqcy5fdGltZVNjYWxlLGUsaSkpLHM9YTtlbHNlIGZvcihzPXRoaXMuX2xhc3Q7cyYmKGE9cy5fcHJldiwhdGhpcy5fcGF1c2VkfHxtKTspKHMuX2FjdGl2ZXx8Zj49cy5fc3RhcnRUaW1lJiYhcy5fcGF1c2VkJiYhcy5fZ2MpJiYocy5fcmV2ZXJzZWQ/cy5yZW5kZXIoKHMuX2RpcnR5P3MudG90YWxEdXJhdGlvbigpOnMuX3RvdGFsRHVyYXRpb24pLSh0LXMuX3N0YXJ0VGltZSkqcy5fdGltZVNjYWxlLGUsaSk6cy5yZW5kZXIoKHQtcy5fc3RhcnRUaW1lKSpzLl90aW1lU2NhbGUsZSxpKSkscz1hO3RoaXMuX29uVXBkYXRlJiYoZXx8KGwubGVuZ3RoJiZfKCksdGhpcy5fY2FsbGJhY2soIm9uVXBkYXRlIikpKSxvJiYodGhpcy5fZ2N8fChjPT09dGhpcy5fc3RhcnRUaW1lfHxwIT09dGhpcy5fdGltZVNjYWxlKSYmKDA9PT10aGlzLl90aW1lfHx1Pj10aGlzLnRvdGFsRHVyYXRpb24oKSkmJihuJiYobC5sZW5ndGgmJl8oKSx0aGlzLl90aW1lbGluZS5hdXRvUmVtb3ZlQ2hpbGRyZW4mJnRoaXMuX2VuYWJsZWQoITEsITEpLHRoaXMuX2FjdGl2ZT0hMSksIWUmJnRoaXMudmFyc1tvXSYmdGhpcy5fY2FsbGJhY2sobykpKX19LGQuX2hhc1BhdXNlZENoaWxkPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PXRoaXMuX2ZpcnN0O3Q7KXtpZih0Ll9wYXVzZWR8fHQgaW5zdGFuY2VvZiBzJiZ0Ll9oYXNQYXVzZWRDaGlsZCgpKXJldHVybiEwO3Q9dC5fbmV4dH1yZXR1cm4hMX0sZC5nZXRDaGlsZHJlbj1mdW5jdGlvbih0LGUscyxyKXtyPXJ8fC05OTk5OTk5OTk5O2Zvcih2YXIgbj1bXSxhPXRoaXMuX2ZpcnN0LG89MDthOylyPmEuX3N0YXJ0VGltZXx8KGEgaW5zdGFuY2VvZiBpP2UhPT0hMSYmKG5bbysrXT1hKToocyE9PSExJiYobltvKytdPWEpLHQhPT0hMSYmKG49bi5jb25jYXQoYS5nZXRDaGlsZHJlbighMCxlLHMpKSxvPW4ubGVuZ3RoKSkpLGE9YS5fbmV4dDtyZXR1cm4gbn0sZC5nZXRUd2VlbnNPZj1mdW5jdGlvbih0LGUpe3ZhciBzLHIsbj10aGlzLl9nYyxhPVtdLG89MDtmb3IobiYmdGhpcy5fZW5hYmxlZCghMCwhMCkscz1pLmdldFR3ZWVuc09mKHQpLHI9cy5sZW5ndGg7LS1yPi0xOykoc1tyXS50aW1lbGluZT09PXRoaXN8fGUmJnRoaXMuX2NvbnRhaW5zKHNbcl0pKSYmKGFbbysrXT1zW3JdKTtyZXR1cm4gbiYmdGhpcy5fZW5hYmxlZCghMSwhMCksYX0sZC5yZWNlbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fcmVjZW50fSxkLl9jb250YWlucz1mdW5jdGlvbih0KXtmb3IodmFyIGU9dC50aW1lbGluZTtlOyl7aWYoZT09PXRoaXMpcmV0dXJuITA7ZT1lLnRpbWVsaW5lfXJldHVybiExfSxkLnNoaWZ0Q2hpbGRyZW49ZnVuY3Rpb24odCxlLGkpe2k9aXx8MDtmb3IodmFyIHMscj10aGlzLl9maXJzdCxuPXRoaXMuX2xhYmVscztyOylyLl9zdGFydFRpbWU+PWkmJihyLl9zdGFydFRpbWUrPXQpLHI9ci5fbmV4dDtpZihlKWZvcihzIGluIG4pbltzXT49aSYmKG5bc10rPXQpO3JldHVybiB0aGlzLl91bmNhY2hlKCEwKX0sZC5fa2lsbD1mdW5jdGlvbih0LGUpe2lmKCF0JiYhZSlyZXR1cm4gdGhpcy5fZW5hYmxlZCghMSwhMSk7Zm9yKHZhciBpPWU/dGhpcy5nZXRUd2VlbnNPZihlKTp0aGlzLmdldENoaWxkcmVuKCEwLCEwLCExKSxzPWkubGVuZ3RoLHI9ITE7LS1zPi0xOylpW3NdLl9raWxsKHQsZSkmJihyPSEwKTtyZXR1cm4gcn0sZC5jbGVhcj1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmdldENoaWxkcmVuKCExLCEwLCEwKSxpPWUubGVuZ3RoO2Zvcih0aGlzLl90aW1lPXRoaXMuX3RvdGFsVGltZT0wOy0taT4tMTspZVtpXS5fZW5hYmxlZCghMSwhMSk7cmV0dXJuIHQhPT0hMSYmKHRoaXMuX2xhYmVscz17fSksdGhpcy5fdW5jYWNoZSghMCl9LGQuaW52YWxpZGF0ZT1mdW5jdGlvbigpe2Zvcih2YXIgZT10aGlzLl9maXJzdDtlOyllLmludmFsaWRhdGUoKSxlPWUuX25leHQ7cmV0dXJuIHQucHJvdG90eXBlLmludmFsaWRhdGUuY2FsbCh0aGlzKX0sZC5fZW5hYmxlZD1mdW5jdGlvbih0LGkpe2lmKHQ9PT10aGlzLl9nYylmb3IodmFyIHM9dGhpcy5fZmlyc3Q7czspcy5fZW5hYmxlZCh0LCEwKSxzPXMuX25leHQ7cmV0dXJuIGUucHJvdG90eXBlLl9lbmFibGVkLmNhbGwodGhpcyx0LGkpfSxkLnRvdGFsVGltZT1mdW5jdGlvbigpe3RoaXMuX2ZvcmNpbmdQbGF5aGVhZD0hMDt2YXIgZT10LnByb3RvdHlwZS50b3RhbFRpbWUuYXBwbHkodGhpcyxhcmd1bWVudHMpO3JldHVybiB0aGlzLl9mb3JjaW5nUGxheWhlYWQ9ITEsZX0sZC5kdXJhdGlvbj1mdW5jdGlvbih0KXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD8oMCE9PXRoaXMuZHVyYXRpb24oKSYmMCE9PXQmJnRoaXMudGltZVNjYWxlKHRoaXMuX2R1cmF0aW9uL3QpLHRoaXMpOih0aGlzLl9kaXJ0eSYmdGhpcy50b3RhbER1cmF0aW9uKCksdGhpcy5fZHVyYXRpb24pfSxkLnRvdGFsRHVyYXRpb249ZnVuY3Rpb24odCl7aWYoIWFyZ3VtZW50cy5sZW5ndGgpe2lmKHRoaXMuX2RpcnR5KXtmb3IodmFyIGUsaSxzPTAscj10aGlzLl9sYXN0LG49OTk5OTk5OTk5OTk5O3I7KWU9ci5fcHJldixyLl9kaXJ0eSYmci50b3RhbER1cmF0aW9uKCksci5fc3RhcnRUaW1lPm4mJnRoaXMuX3NvcnRDaGlsZHJlbiYmIXIuX3BhdXNlZD90aGlzLmFkZChyLHIuX3N0YXJ0VGltZS1yLl9kZWxheSk6bj1yLl9zdGFydFRpbWUsMD5yLl9zdGFydFRpbWUmJiFyLl9wYXVzZWQmJihzLT1yLl9zdGFydFRpbWUsdGhpcy5fdGltZWxpbmUuc21vb3RoQ2hpbGRUaW1pbmcmJih0aGlzLl9zdGFydFRpbWUrPXIuX3N0YXJ0VGltZS90aGlzLl90aW1lU2NhbGUpLHRoaXMuc2hpZnRDaGlsZHJlbigtci5fc3RhcnRUaW1lLCExLC05OTk5OTk5OTk5KSxuPTApLGk9ci5fc3RhcnRUaW1lK3IuX3RvdGFsRHVyYXRpb24vci5fdGltZVNjYWxlLGk+cyYmKHM9aSkscj1lO3RoaXMuX2R1cmF0aW9uPXRoaXMuX3RvdGFsRHVyYXRpb249cyx0aGlzLl9kaXJ0eT0hMX1yZXR1cm4gdGhpcy5fdG90YWxEdXJhdGlvbn1yZXR1cm4gMCE9PXRoaXMudG90YWxEdXJhdGlvbigpJiYwIT09dCYmdGhpcy50aW1lU2NhbGUodGhpcy5fdG90YWxEdXJhdGlvbi90KSx0aGlzfSxkLnBhdXNlZD1mdW5jdGlvbihlKXtpZighZSlmb3IodmFyIGk9dGhpcy5fZmlyc3Qscz10aGlzLl90aW1lO2k7KWkuX3N0YXJ0VGltZT09PXMmJiJpc1BhdXNlIj09PWkuZGF0YSYmKGkuX3Jhd1ByZXZUaW1lPTApLGk9aS5fbmV4dDtyZXR1cm4gdC5wcm90b3R5cGUucGF1c2VkLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sZC51c2VzRnJhbWVzPWZ1bmN0aW9uKCl7Zm9yKHZhciBlPXRoaXMuX3RpbWVsaW5lO2UuX3RpbWVsaW5lOyllPWUuX3RpbWVsaW5lO3JldHVybiBlPT09dC5fcm9vdEZyYW1lc1RpbWVsaW5lfSxkLnJhd1RpbWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fcGF1c2VkP3RoaXMuX3RvdGFsVGltZToodGhpcy5fdGltZWxpbmUucmF3VGltZSgpLXRoaXMuX3N0YXJ0VGltZSkqdGhpcy5fdGltZVNjYWxlfSxzfSwhMCl9KSxfZ3NTY29wZS5fZ3NEZWZpbmUmJl9nc1Njb3BlLl9nc1F1ZXVlLnBvcCgpKCksZnVuY3Rpb24odCl7InVzZSBzdHJpY3QiO3ZhciBlPWZ1bmN0aW9uKCl7cmV0dXJuKF9nc1Njb3BlLkdyZWVuU29ja0dsb2JhbHN8fF9nc1Njb3BlKVt0XX07ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoWyJUd2VlbkxpdGUiXSxlKToidW5kZWZpbmVkIiE9dHlwZW9mIG1vZHVsZSYmbW9kdWxlLmV4cG9ydHMmJihyZXF1aXJlKCIuL1R3ZWVuTGl0ZS5qcyIpLG1vZHVsZS5leHBvcnRzPWUoKSl9KCJUaW1lbGluZUxpdGUiKTsNCg0KDQovKiBFQVNJTkcgUExVR0lOKi8NCi8qIQ0KICogVkVSU0lPTjogMS4xNS41DQogKiBEQVRFOiAyMDE2LTA3LTA4DQogKiBVUERBVEVTIEFORCBET0NTIEFUOiBodHRwOi8vZ3JlZW5zb2NrLmNvbQ0KICoNCiAqIEBsaWNlbnNlIENvcHlyaWdodCAoYykgMjAwOC0yMDE2LCBHcmVlblNvY2suIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQogKiBUaGlzIHdvcmsgaXMgc3ViamVjdCB0byB0aGUgdGVybXMgYXQgaHR0cDovL2dyZWVuc29jay5jb20vc3RhbmRhcmQtbGljZW5zZSBvciBmb3INCiAqIENsdWIgR3JlZW5Tb2NrIG1lbWJlcnMsIHRoZSBzb2Z0d2FyZSBhZ3JlZW1lbnQgdGhhdCB3YXMgaXNzdWVkIHdpdGggeW91ciBtZW1iZXJzaGlwLg0KICogDQogKiBAYXV0aG9yOiBKYWNrIERveWxlLCBqYWNrQGdyZWVuc29jay5jb20NCiAqKi8NCnZhciBfZ3NTY29wZT0idW5kZWZpbmVkIiE9dHlwZW9mIG1vZHVsZSYmbW9kdWxlLmV4cG9ydHMmJiJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsP2dsb2JhbDp0aGlzfHx3aW5kb3c7KF9nc1Njb3BlLl9nc1F1ZXVlfHwoX2dzU2NvcGUuX2dzUXVldWU9W10pKS5wdXNoKGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO19nc1Njb3BlLl9nc0RlZmluZSgiZWFzaW5nLkJhY2siLFsiZWFzaW5nLkVhc2UiXSxmdW5jdGlvbihhKXt2YXIgYixjLGQsZT1fZ3NTY29wZS5HcmVlblNvY2tHbG9iYWxzfHxfZ3NTY29wZSxmPWUuY29tLmdyZWVuc29jayxnPTIqTWF0aC5QSSxoPU1hdGguUEkvMixpPWYuX2NsYXNzLGo9ZnVuY3Rpb24oYixjKXt2YXIgZD1pKCJlYXNpbmcuIitiLGZ1bmN0aW9uKCl7fSwhMCksZT1kLnByb3RvdHlwZT1uZXcgYTtyZXR1cm4gZS5jb25zdHJ1Y3Rvcj1kLGUuZ2V0UmF0aW89YyxkfSxrPWEucmVnaXN0ZXJ8fGZ1bmN0aW9uKCl7fSxsPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9aSgiZWFzaW5nLiIrYSx7ZWFzZU91dDpuZXcgYixlYXNlSW46bmV3IGMsZWFzZUluT3V0Om5ldyBkfSwhMCk7cmV0dXJuIGsoZixhKSxmfSxtPWZ1bmN0aW9uKGEsYixjKXt0aGlzLnQ9YSx0aGlzLnY9YixjJiYodGhpcy5uZXh0PWMsYy5wcmV2PXRoaXMsdGhpcy5jPWMudi1iLHRoaXMuZ2FwPWMudC1hKX0sbj1mdW5jdGlvbihiLGMpe3ZhciBkPWkoImVhc2luZy4iK2IsZnVuY3Rpb24oYSl7dGhpcy5fcDE9YXx8MD09PWE/YToxLjcwMTU4LHRoaXMuX3AyPTEuNTI1KnRoaXMuX3AxfSwhMCksZT1kLnByb3RvdHlwZT1uZXcgYTtyZXR1cm4gZS5jb25zdHJ1Y3Rvcj1kLGUuZ2V0UmF0aW89YyxlLmNvbmZpZz1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IGQoYSl9LGR9LG89bCgiQmFjayIsbigiQmFja091dCIsZnVuY3Rpb24oYSl7cmV0dXJuKGEtPTEpKmEqKCh0aGlzLl9wMSsxKSphK3RoaXMuX3AxKSsxfSksbigiQmFja0luIixmdW5jdGlvbihhKXtyZXR1cm4gYSphKigodGhpcy5fcDErMSkqYS10aGlzLl9wMSl9KSxuKCJCYWNrSW5PdXQiLGZ1bmN0aW9uKGEpe3JldHVybihhKj0yKTwxPy41KmEqYSooKHRoaXMuX3AyKzEpKmEtdGhpcy5fcDIpOi41KigoYS09MikqYSooKHRoaXMuX3AyKzEpKmErdGhpcy5fcDIpKzIpfSkpLHA9aSgiZWFzaW5nLlNsb3dNbyIsZnVuY3Rpb24oYSxiLGMpe2I9Ynx8MD09PWI/YjouNyxudWxsPT1hP2E9Ljc6YT4xJiYoYT0xKSx0aGlzLl9wPTEhPT1hP2I6MCx0aGlzLl9wMT0oMS1hKS8yLHRoaXMuX3AyPWEsdGhpcy5fcDM9dGhpcy5fcDErdGhpcy5fcDIsdGhpcy5fY2FsY0VuZD1jPT09ITB9LCEwKSxxPXAucHJvdG90eXBlPW5ldyBhO3JldHVybiBxLmNvbnN0cnVjdG9yPXAscS5nZXRSYXRpbz1mdW5jdGlvbihhKXt2YXIgYj1hKyguNS1hKSp0aGlzLl9wO3JldHVybiBhPHRoaXMuX3AxP3RoaXMuX2NhbGNFbmQ/MS0oYT0xLWEvdGhpcy5fcDEpKmE6Yi0oYT0xLWEvdGhpcy5fcDEpKmEqYSphKmI6YT50aGlzLl9wMz90aGlzLl9jYWxjRW5kPzEtKGE9KGEtdGhpcy5fcDMpL3RoaXMuX3AxKSphOmIrKGEtYikqKGE9KGEtdGhpcy5fcDMpL3RoaXMuX3AxKSphKmEqYTp0aGlzLl9jYWxjRW5kPzE6Yn0scC5lYXNlPW5ldyBwKC43LC43KSxxLmNvbmZpZz1wLmNvbmZpZz1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIG5ldyBwKGEsYixjKX0sYj1pKCJlYXNpbmcuU3RlcHBlZEVhc2UiLGZ1bmN0aW9uKGEpe2E9YXx8MSx0aGlzLl9wMT0xL2EsdGhpcy5fcDI9YSsxfSwhMCkscT1iLnByb3RvdHlwZT1uZXcgYSxxLmNvbnN0cnVjdG9yPWIscS5nZXRSYXRpbz1mdW5jdGlvbihhKXtyZXR1cm4gMD5hP2E9MDphPj0xJiYoYT0uOTk5OTk5OTk5KSwodGhpcy5fcDIqYT4+MCkqdGhpcy5fcDF9LHEuY29uZmlnPWIuY29uZmlnPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgYihhKX0sYz1pKCJlYXNpbmcuUm91Z2hFYXNlIixmdW5jdGlvbihiKXtiPWJ8fHt9O2Zvcih2YXIgYyxkLGUsZixnLGgsaT1iLnRhcGVyfHwibm9uZSIsaj1bXSxrPTAsbD0wfChiLnBvaW50c3x8MjApLG49bCxvPWIucmFuZG9taXplIT09ITEscD1iLmNsYW1wPT09ITAscT1iLnRlbXBsYXRlIGluc3RhbmNlb2YgYT9iLnRlbXBsYXRlOm51bGwscj0ibnVtYmVyIj09dHlwZW9mIGIuc3RyZW5ndGg/LjQqYi5zdHJlbmd0aDouNDstLW4+LTE7KWM9bz9NYXRoLnJhbmRvbSgpOjEvbCpuLGQ9cT9xLmdldFJhdGlvKGMpOmMsIm5vbmUiPT09aT9lPXI6Im91dCI9PT1pPyhmPTEtYyxlPWYqZipyKToiaW4iPT09aT9lPWMqYypyOi41PmM/KGY9MipjLGU9ZipmKi41KnIpOihmPTIqKDEtYyksZT1mKmYqLjUqciksbz9kKz1NYXRoLnJhbmRvbSgpKmUtLjUqZTpuJTI/ZCs9LjUqZTpkLT0uNSplLHAmJihkPjE/ZD0xOjA+ZCYmKGQ9MCkpLGpbaysrXT17eDpjLHk6ZH07Zm9yKGouc29ydChmdW5jdGlvbihhLGIpe3JldHVybiBhLngtYi54fSksaD1uZXcgbSgxLDEsbnVsbCksbj1sOy0tbj4tMTspZz1qW25dLGg9bmV3IG0oZy54LGcueSxoKTt0aGlzLl9wcmV2PW5ldyBtKDAsMCwwIT09aC50P2g6aC5uZXh0KX0sITApLHE9Yy5wcm90b3R5cGU9bmV3IGEscS5jb25zdHJ1Y3Rvcj1jLHEuZ2V0UmF0aW89ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5fcHJldjtpZihhPmIudCl7Zm9yKDtiLm5leHQmJmE+PWIudDspYj1iLm5leHQ7Yj1iLnByZXZ9ZWxzZSBmb3IoO2IucHJldiYmYTw9Yi50OyliPWIucHJldjtyZXR1cm4gdGhpcy5fcHJldj1iLGIudisoYS1iLnQpL2IuZ2FwKmIuY30scS5jb25maWc9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBjKGEpfSxjLmVhc2U9bmV3IGMsbCgiQm91bmNlIixqKCJCb3VuY2VPdXQiLGZ1bmN0aW9uKGEpe3JldHVybiAxLzIuNzU+YT83LjU2MjUqYSphOjIvMi43NT5hPzcuNTYyNSooYS09MS41LzIuNzUpKmErLjc1OjIuNS8yLjc1PmE/Ny41NjI1KihhLT0yLjI1LzIuNzUpKmErLjkzNzU6Ny41NjI1KihhLT0yLjYyNS8yLjc1KSphKy45ODQzNzV9KSxqKCJCb3VuY2VJbiIsZnVuY3Rpb24oYSl7cmV0dXJuKGE9MS1hKTwxLzIuNzU/MS03LjU2MjUqYSphOjIvMi43NT5hPzEtKDcuNTYyNSooYS09MS41LzIuNzUpKmErLjc1KToyLjUvMi43NT5hPzEtKDcuNTYyNSooYS09Mi4yNS8yLjc1KSphKy45Mzc1KToxLSg3LjU2MjUqKGEtPTIuNjI1LzIuNzUpKmErLjk4NDM3NSl9KSxqKCJCb3VuY2VJbk91dCIsZnVuY3Rpb24oYSl7dmFyIGI9LjU+YTtyZXR1cm4gYT1iPzEtMiphOjIqYS0xLGE9MS8yLjc1PmE/Ny41NjI1KmEqYToyLzIuNzU+YT83LjU2MjUqKGEtPTEuNS8yLjc1KSphKy43NToyLjUvMi43NT5hPzcuNTYyNSooYS09Mi4yNS8yLjc1KSphKy45Mzc1OjcuNTYyNSooYS09Mi42MjUvMi43NSkqYSsuOTg0Mzc1LGI/LjUqKDEtYSk6LjUqYSsuNX0pKSxsKCJDaXJjIixqKCJDaXJjT3V0IixmdW5jdGlvbihhKXtyZXR1cm4gTWF0aC5zcXJ0KDEtKGEtPTEpKmEpfSksaigiQ2lyY0luIixmdW5jdGlvbihhKXtyZXR1cm4tKE1hdGguc3FydCgxLWEqYSktMSl9KSxqKCJDaXJjSW5PdXQiLGZ1bmN0aW9uKGEpe3JldHVybihhKj0yKTwxPy0uNSooTWF0aC5zcXJ0KDEtYSphKS0xKTouNSooTWF0aC5zcXJ0KDEtKGEtPTIpKmEpKzEpfSkpLGQ9ZnVuY3Rpb24oYixjLGQpe3ZhciBlPWkoImVhc2luZy4iK2IsZnVuY3Rpb24oYSxiKXt0aGlzLl9wMT1hPj0xP2E6MSx0aGlzLl9wMj0oYnx8ZCkvKDE+YT9hOjEpLHRoaXMuX3AzPXRoaXMuX3AyL2cqKE1hdGguYXNpbigxL3RoaXMuX3AxKXx8MCksdGhpcy5fcDI9Zy90aGlzLl9wMn0sITApLGY9ZS5wcm90b3R5cGU9bmV3IGE7cmV0dXJuIGYuY29uc3RydWN0b3I9ZSxmLmdldFJhdGlvPWMsZi5jb25maWc9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbmV3IGUoYSxiKX0sZX0sbCgiRWxhc3RpYyIsZCgiRWxhc3RpY091dCIsZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuX3AxKk1hdGgucG93KDIsLTEwKmEpKk1hdGguc2luKChhLXRoaXMuX3AzKSp0aGlzLl9wMikrMX0sLjMpLGQoIkVsYXN0aWNJbiIsZnVuY3Rpb24oYSl7cmV0dXJuLSh0aGlzLl9wMSpNYXRoLnBvdygyLDEwKihhLT0xKSkqTWF0aC5zaW4oKGEtdGhpcy5fcDMpKnRoaXMuX3AyKSl9LC4zKSxkKCJFbGFzdGljSW5PdXQiLGZ1bmN0aW9uKGEpe3JldHVybihhKj0yKTwxPy0uNSoodGhpcy5fcDEqTWF0aC5wb3coMiwxMCooYS09MSkpKk1hdGguc2luKChhLXRoaXMuX3AzKSp0aGlzLl9wMikpOnRoaXMuX3AxKk1hdGgucG93KDIsLTEwKihhLT0xKSkqTWF0aC5zaW4oKGEtdGhpcy5fcDMpKnRoaXMuX3AyKSouNSsxfSwuNDUpKSxsKCJFeHBvIixqKCJFeHBvT3V0IixmdW5jdGlvbihhKXtyZXR1cm4gMS1NYXRoLnBvdygyLC0xMCphKX0pLGooIkV4cG9JbiIsZnVuY3Rpb24oYSl7cmV0dXJuIE1hdGgucG93KDIsMTAqKGEtMSkpLS4wMDF9KSxqKCJFeHBvSW5PdXQiLGZ1bmN0aW9uKGEpe3JldHVybihhKj0yKTwxPy41Kk1hdGgucG93KDIsMTAqKGEtMSkpOi41KigyLU1hdGgucG93KDIsLTEwKihhLTEpKSl9KSksbCgiU2luZSIsaigiU2luZU91dCIsZnVuY3Rpb24oYSl7cmV0dXJuIE1hdGguc2luKGEqaCl9KSxqKCJTaW5lSW4iLGZ1bmN0aW9uKGEpe3JldHVybi1NYXRoLmNvcyhhKmgpKzF9KSxqKCJTaW5lSW5PdXQiLGZ1bmN0aW9uKGEpe3JldHVybi0uNSooTWF0aC5jb3MoTWF0aC5QSSphKS0xKX0pKSxpKCJlYXNpbmcuRWFzZUxvb2t1cCIse2ZpbmQ6ZnVuY3Rpb24oYil7cmV0dXJuIGEubWFwW2JdfX0sITApLGsoZS5TbG93TW8sIlNsb3dNbyIsImVhc2UsIiksayhjLCJSb3VnaEVhc2UiLCJlYXNlLCIpLGsoYiwiU3RlcHBlZEVhc2UiLCJlYXNlLCIpLG99LCEwKX0pLF9nc1Njb3BlLl9nc0RlZmluZSYmX2dzU2NvcGUuX2dzUXVldWUucG9wKCkoKSxmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgYT1mdW5jdGlvbigpe3JldHVybiBfZ3NTY29wZS5HcmVlblNvY2tHbG9iYWxzfHxfZ3NTY29wZX07ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoWyJUd2VlbkxpdGUiXSxhKToidW5kZWZpbmVkIiE9dHlwZW9mIG1vZHVsZSYmbW9kdWxlLmV4cG9ydHMmJihyZXF1aXJlKCIuLi9Ud2VlbkxpdGUuanMiKSxtb2R1bGUuZXhwb3J0cz1hKCkpfSgpOw0KDQoNCi8qIENTUyBQTFVHSU4gKi8NCi8qIQ0KICogVkVSU0lPTjogMS4xOS4wDQogKiBEQVRFOiAyMDE2LTA3LTE0DQogKiBVUERBVEVTIEFORCBET0NTIEFUOiBodHRwOi8vZ3JlZW5zb2NrLmNvbQ0KICoNCiAqIEBsaWNlbnNlIENvcHlyaWdodCAoYykgMjAwOC0yMDE2LCBHcmVlblNvY2suIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQogKiBUaGlzIHdvcmsgaXMgc3ViamVjdCB0byB0aGUgdGVybXMgYXQgaHR0cDovL2dyZWVuc29jay5jb20vc3RhbmRhcmQtbGljZW5zZSBvciBmb3INCiAqIENsdWIgR3JlZW5Tb2NrIG1lbWJlcnMsIHRoZSBzb2Z0d2FyZSBhZ3JlZW1lbnQgdGhhdCB3YXMgaXNzdWVkIHdpdGggeW91ciBtZW1iZXJzaGlwLg0KICogDQogKiBAYXV0aG9yOiBKYWNrIERveWxlLCBqYWNrQGdyZWVuc29jay5jb20NCiAqLw0KdmFyIF9nc1Njb3BlPSJ1bmRlZmluZWQiIT10eXBlb2YgbW9kdWxlJiZtb2R1bGUuZXhwb3J0cyYmInVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWw/Z2xvYmFsOnRoaXN8fHdpbmRvdzsoX2dzU2NvcGUuX2dzUXVldWV8fChfZ3NTY29wZS5fZ3NRdWV1ZT1bXSkpLnB1c2goZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7X2dzU2NvcGUuX2dzRGVmaW5lKCJwbHVnaW5zLkNTU1BsdWdpbiIsWyJwbHVnaW5zLlR3ZWVuUGx1Z2luIiwiVHdlZW5MaXRlIl0sZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZixnPWZ1bmN0aW9uKCl7YS5jYWxsKHRoaXMsImNzcyIpLHRoaXMuX292ZXJ3cml0ZVByb3BzLmxlbmd0aD0wLHRoaXMuc2V0UmF0aW89Zy5wcm90b3R5cGUuc2V0UmF0aW99LGg9X2dzU2NvcGUuX2dzRGVmaW5lLmdsb2JhbHMsaT17fSxqPWcucHJvdG90eXBlPW5ldyBhKCJjc3MiKTtqLmNvbnN0cnVjdG9yPWcsZy52ZXJzaW9uPSIxLjE5LjAiLGcuQVBJPTIsZy5kZWZhdWx0VHJhbnNmb3JtUGVyc3BlY3RpdmU9MCxnLmRlZmF1bHRTa2V3VHlwZT0iY29tcGVuc2F0ZWQiLGcuZGVmYXVsdFNtb290aE9yaWdpbj0hMCxqPSJweCIsZy5zdWZmaXhNYXA9e3RvcDpqLHJpZ2h0OmosYm90dG9tOmosbGVmdDpqLHdpZHRoOmosaGVpZ2h0OmosZm9udFNpemU6aixwYWRkaW5nOmosbWFyZ2luOmoscGVyc3BlY3RpdmU6aixsaW5lSGVpZ2h0OiIifTt2YXIgayxsLG0sbixvLHAscSxyLHM9Lyg/OlwtfFwufFxiKShcZHxcLnxlXC0pKy9nLHQ9Lyg/OlxkfFwtXGR8XC5cZHxcLVwuXGR8XCs9XGR8XC09XGR8XCs9LlxkfFwtPVwuXGQpKy9nLHU9Lyg/OlwrPXxcLT18XC18XGIpW1xkXC1cLl0rW2EtekEtWjAtOV0qKD86JXxcYikvZ2ksdj0vKD8hWystXT9cZCpcLj9cZCt8WystXXxlWystXVxkKylbXjAtOV0vZyx3PS8oPzpcZHxcLXxcK3w9fCN8XC4pKi9nLHg9L29wYWNpdHkgKj0gKihbXildKikvaSx5PS9vcGFjaXR5OihbXjtdKikvaSx6PS9hbHBoYVwob3BhY2l0eSAqPS4rP1wpL2ksQT0vXihyZ2J8aHNsKS8sQj0vKFtBLVpdKS9nLEM9Ly0oW2Etel0pL2dpLEQ9LyheKD86dXJsXChcInx1cmxcKCkpfCg/OihcIlwpKSR8XCkkKS9naSxFPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGIudG9VcHBlckNhc2UoKX0sRj0vKD86TGVmdHxSaWdodHxXaWR0aCkvaSxHPS8oTTExfE0xMnxNMjF8TTIyKT1bXGRcLVwuZV0rL2dpLEg9L3Byb2dpZFw6RFhJbWFnZVRyYW5zZm9ybVwuTWljcm9zb2Z0XC5NYXRyaXhcKC4rP1wpL2ksST0vLCg/PVteXCldKig/OlwofCQpKS9naSxKPS9bXHMsXChdL2ksSz1NYXRoLlBJLzE4MCxMPTE4MC9NYXRoLlBJLE09e30sTj1kb2N1bWVudCxPPWZ1bmN0aW9uKGEpe3JldHVybiBOLmNyZWF0ZUVsZW1lbnROUz9OLmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIsYSk6Ti5jcmVhdGVFbGVtZW50KGEpfSxQPU8oImRpdiIpLFE9TygiaW1nIiksUj1nLl9pbnRlcm5hbHM9e19zcGVjaWFsUHJvcHM6aX0sUz1uYXZpZ2F0b3IudXNlckFnZW50LFQ9ZnVuY3Rpb24oKXt2YXIgYT1TLmluZGV4T2YoIkFuZHJvaWQiKSxiPU8oImEiKTtyZXR1cm4gbT0tMSE9PVMuaW5kZXhPZigiU2FmYXJpIikmJi0xPT09Uy5pbmRleE9mKCJDaHJvbWUiKSYmKC0xPT09YXx8TnVtYmVyKFMuc3Vic3RyKGErOCwxKSk+Myksbz1tJiZOdW1iZXIoUy5zdWJzdHIoUy5pbmRleE9mKCJWZXJzaW9uLyIpKzgsMSkpPDYsbj0tMSE9PVMuaW5kZXhPZigiRmlyZWZveCIpLCgvTVNJRSAoWzAtOV17MSx9W1wuMC05XXswLH0pLy5leGVjKFMpfHwvVHJpZGVudFwvLipydjooWzAtOV17MSx9W1wuMC05XXswLH0pLy5leGVjKFMpKSYmKHA9cGFyc2VGbG9hdChSZWdFeHAuJDEpKSxiPyhiLnN0eWxlLmNzc1RleHQ9InRvcDoxcHg7b3BhY2l0eTouNTU7IiwvXjAuNTUvLnRlc3QoYi5zdHlsZS5vcGFjaXR5KSk6ITF9KCksVT1mdW5jdGlvbihhKXtyZXR1cm4geC50ZXN0KCJzdHJpbmciPT10eXBlb2YgYT9hOihhLmN1cnJlbnRTdHlsZT9hLmN1cnJlbnRTdHlsZS5maWx0ZXI6YS5zdHlsZS5maWx0ZXIpfHwiIik/cGFyc2VGbG9hdChSZWdFeHAuJDEpLzEwMDoxfSxWPWZ1bmN0aW9uKGEpe3dpbmRvdy5jb25zb2xlJiZjb25zb2xlLmxvZyhhKX0sVz0iIixYPSIiLFk9ZnVuY3Rpb24oYSxiKXtiPWJ8fFA7dmFyIGMsZCxlPWIuc3R5bGU7aWYodm9pZCAwIT09ZVthXSlyZXR1cm4gYTtmb3IoYT1hLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpK2Euc3Vic3RyKDEpLGM9WyJPIiwiTW96IiwibXMiLCJNcyIsIldlYmtpdCJdLGQ9NTstLWQ+LTEmJnZvaWQgMD09PWVbY1tkXSthXTspO3JldHVybiBkPj0wPyhYPTM9PT1kPyJtcyI6Y1tkXSxXPSItIitYLnRvTG93ZXJDYXNlKCkrIi0iLFgrYSk6bnVsbH0sWj1OLmRlZmF1bHRWaWV3P04uZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZTpmdW5jdGlvbigpe30sJD1nLmdldFN0eWxlPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY7cmV0dXJuIFR8fCJvcGFjaXR5IiE9PWI/KCFkJiZhLnN0eWxlW2JdP2Y9YS5zdHlsZVtiXTooYz1jfHxaKGEpKT9mPWNbYl18fGMuZ2V0UHJvcGVydHlWYWx1ZShiKXx8Yy5nZXRQcm9wZXJ0eVZhbHVlKGIucmVwbGFjZShCLCItJDEiKS50b0xvd2VyQ2FzZSgpKTphLmN1cnJlbnRTdHlsZSYmKGY9YS5jdXJyZW50U3R5bGVbYl0pLG51bGw9PWV8fGYmJiJub25lIiE9PWYmJiJhdXRvIiE9PWYmJiJhdXRvIGF1dG8iIT09Zj9mOmUpOlUoYSl9LF89Ui5jb252ZXJ0VG9QaXhlbHM9ZnVuY3Rpb24oYSxjLGQsZSxmKXtpZigicHgiPT09ZXx8IWUpcmV0dXJuIGQ7aWYoImF1dG8iPT09ZXx8IWQpcmV0dXJuIDA7dmFyIGgsaSxqLGs9Ri50ZXN0KGMpLGw9YSxtPVAuc3R5bGUsbj0wPmQsbz0xPT09ZDtpZihuJiYoZD0tZCksbyYmKGQqPTEwMCksIiUiPT09ZSYmLTEhPT1jLmluZGV4T2YoImJvcmRlciIpKWg9ZC8xMDAqKGs/YS5jbGllbnRXaWR0aDphLmNsaWVudEhlaWdodCk7ZWxzZXtpZihtLmNzc1RleHQ9ImJvcmRlcjowIHNvbGlkIHJlZDtwb3NpdGlvbjoiKyQoYSwicG9zaXRpb24iKSsiO2xpbmUtaGVpZ2h0OjA7IiwiJSIhPT1lJiZsLmFwcGVuZENoaWxkJiYidiIhPT1lLmNoYXJBdCgwKSYmInJlbSIhPT1lKW1baz8iYm9yZGVyTGVmdFdpZHRoIjoiYm9yZGVyVG9wV2lkdGgiXT1kK2U7ZWxzZXtpZihsPWEucGFyZW50Tm9kZXx8Ti5ib2R5LGk9bC5fZ3NDYWNoZSxqPWIudGlja2VyLmZyYW1lLGkmJmsmJmkudGltZT09PWopcmV0dXJuIGkud2lkdGgqZC8xMDA7bVtrPyJ3aWR0aCI6ImhlaWdodCJdPWQrZX1sLmFwcGVuZENoaWxkKFApLGg9cGFyc2VGbG9hdChQW2s/Im9mZnNldFdpZHRoIjoib2Zmc2V0SGVpZ2h0Il0pLGwucmVtb3ZlQ2hpbGQoUCksayYmIiUiPT09ZSYmZy5jYWNoZVdpZHRocyE9PSExJiYoaT1sLl9nc0NhY2hlPWwuX2dzQ2FjaGV8fHt9LGkudGltZT1qLGkud2lkdGg9aC9kKjEwMCksMCE9PWh8fGZ8fChoPV8oYSxjLGQsZSwhMCkpfXJldHVybiBvJiYoaC89MTAwKSxuPy1oOmh9LGFhPVIuY2FsY3VsYXRlT2Zmc2V0PWZ1bmN0aW9uKGEsYixjKXtpZigiYWJzb2x1dGUiIT09JChhLCJwb3NpdGlvbiIsYykpcmV0dXJuIDA7dmFyIGQ9ImxlZnQiPT09Yj8iTGVmdCI6IlRvcCIsZT0kKGEsIm1hcmdpbiIrZCxjKTtyZXR1cm4gYVsib2Zmc2V0IitkXS0oXyhhLGIscGFyc2VGbG9hdChlKSxlLnJlcGxhY2UodywiIikpfHwwKX0sYmE9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZj17fTtpZihiPWJ8fFooYSxudWxsKSlpZihjPWIubGVuZ3RoKWZvcig7LS1jPi0xOyllPWJbY10sKC0xPT09ZS5pbmRleE9mKCItdHJhbnNmb3JtIil8fENhPT09ZSkmJihmW2UucmVwbGFjZShDLEUpXT1iLmdldFByb3BlcnR5VmFsdWUoZSkpO2Vsc2UgZm9yKGMgaW4gYikoLTE9PT1jLmluZGV4T2YoIlRyYW5zZm9ybSIpfHxCYT09PWMpJiYoZltjXT1iW2NdKTtlbHNlIGlmKGI9YS5jdXJyZW50U3R5bGV8fGEuc3R5bGUpZm9yKGMgaW4gYikic3RyaW5nIj09dHlwZW9mIGMmJnZvaWQgMD09PWZbY10mJihmW2MucmVwbGFjZShDLEUpXT1iW2NdKTtyZXR1cm4gVHx8KGYub3BhY2l0eT1VKGEpKSxkPVBhKGEsYiwhMSksZi5yb3RhdGlvbj1kLnJvdGF0aW9uLGYuc2tld1g9ZC5za2V3WCxmLnNjYWxlWD1kLnNjYWxlWCxmLnNjYWxlWT1kLnNjYWxlWSxmLng9ZC54LGYueT1kLnksRWEmJihmLno9ZC56LGYucm90YXRpb25YPWQucm90YXRpb25YLGYucm90YXRpb25ZPWQucm90YXRpb25ZLGYuc2NhbGVaPWQuc2NhbGVaKSxmLmZpbHRlcnMmJmRlbGV0ZSBmLmZpbHRlcnMsZn0sY2E9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZixnLGgsaT17fSxqPWEuc3R5bGU7Zm9yKGcgaW4gYykiY3NzVGV4dCIhPT1nJiYibGVuZ3RoIiE9PWcmJmlzTmFOKGcpJiYoYltnXSE9PShmPWNbZ10pfHxlJiZlW2ddKSYmLTE9PT1nLmluZGV4T2YoIk9yaWdpbiIpJiYoIm51bWJlciI9PXR5cGVvZiBmfHwic3RyaW5nIj09dHlwZW9mIGYpJiYoaVtnXT0iYXV0byIhPT1mfHwibGVmdCIhPT1nJiYidG9wIiE9PWc/IiIhPT1mJiYiYXV0byIhPT1mJiYibm9uZSIhPT1mfHwic3RyaW5nIiE9dHlwZW9mIGJbZ118fCIiPT09YltnXS5yZXBsYWNlKHYsIiIpP2Y6MDphYShhLGcpLHZvaWQgMCE9PWpbZ10mJihoPW5ldyByYShqLGcsaltnXSxoKSkpO2lmKGQpZm9yKGcgaW4gZCkiY2xhc3NOYW1lIiE9PWcmJihpW2ddPWRbZ10pO3JldHVybntkaWZzOmksZmlyc3RNUFQ6aH19LGRhPXt3aWR0aDpbIkxlZnQiLCJSaWdodCJdLGhlaWdodDpbIlRvcCIsIkJvdHRvbSJdfSxlYT1bIm1hcmdpbkxlZnQiLCJtYXJnaW5SaWdodCIsIm1hcmdpblRvcCIsIm1hcmdpbkJvdHRvbSJdLGZhPWZ1bmN0aW9uKGEsYixjKXtpZigic3ZnIj09PShhLm5vZGVOYW1lKyIiKS50b0xvd2VyQ2FzZSgpKXJldHVybihjfHxaKGEpKVtiXXx8MDtpZihhLmdldEJCb3gmJk1hKGEpKXJldHVybiBhLmdldEJCb3goKVtiXXx8MDt2YXIgZD1wYXJzZUZsb2F0KCJ3aWR0aCI9PT1iP2Eub2Zmc2V0V2lkdGg6YS5vZmZzZXRIZWlnaHQpLGU9ZGFbYl0sZj1lLmxlbmd0aDtmb3IoYz1jfHxaKGEsbnVsbCk7LS1mPi0xOylkLT1wYXJzZUZsb2F0KCQoYSwicGFkZGluZyIrZVtmXSxjLCEwKSl8fDAsZC09cGFyc2VGbG9hdCgkKGEsImJvcmRlciIrZVtmXSsiV2lkdGgiLGMsITApKXx8MDtyZXR1cm4gZH0sZ2E9ZnVuY3Rpb24oYSxiKXtpZigiY29udGFpbiI9PT1hfHwiYXV0byI9PT1hfHwiYXV0byBhdXRvIj09PWEpcmV0dXJuIGErIiAiOyhudWxsPT1hfHwiIj09PWEpJiYoYT0iMCAwIik7dmFyIGMsZD1hLnNwbGl0KCIgIiksZT0tMSE9PWEuaW5kZXhPZigibGVmdCIpPyIwJSI6LTEhPT1hLmluZGV4T2YoInJpZ2h0Iik/IjEwMCUiOmRbMF0sZj0tMSE9PWEuaW5kZXhPZigidG9wIik/IjAlIjotMSE9PWEuaW5kZXhPZigiYm90dG9tIik/IjEwMCUiOmRbMV07aWYoZC5sZW5ndGg+MyYmIWIpe2ZvcihkPWEuc3BsaXQoIiwgIikuam9pbigiLCIpLnNwbGl0KCIsIiksYT1bXSxjPTA7YzxkLmxlbmd0aDtjKyspYS5wdXNoKGdhKGRbY10pKTtyZXR1cm4gYS5qb2luKCIsIil9cmV0dXJuIG51bGw9PWY/Zj0iY2VudGVyIj09PWU/IjUwJSI6IjAiOiJjZW50ZXIiPT09ZiYmKGY9IjUwJSIpLCgiY2VudGVyIj09PWV8fGlzTmFOKHBhcnNlRmxvYXQoZSkpJiYtMT09PShlKyIiKS5pbmRleE9mKCI9IikpJiYoZT0iNTAlIiksYT1lKyIgIitmKyhkLmxlbmd0aD4yPyIgIitkWzJdOiIiKSxiJiYoYi5veHA9LTEhPT1lLmluZGV4T2YoIiUiKSxiLm95cD0tMSE9PWYuaW5kZXhPZigiJSIpLGIub3hyPSI9Ij09PWUuY2hhckF0KDEpLGIub3lyPSI9Ij09PWYuY2hhckF0KDEpLGIub3g9cGFyc2VGbG9hdChlLnJlcGxhY2UodiwiIikpLGIub3k9cGFyc2VGbG9hdChmLnJlcGxhY2UodiwiIikpLGIudj1hKSxifHxhfSxoYT1mdW5jdGlvbihhLGIpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBhJiYoYT1hKHIscSkpLCJzdHJpbmciPT10eXBlb2YgYSYmIj0iPT09YS5jaGFyQXQoMSk/cGFyc2VJbnQoYS5jaGFyQXQoMCkrIjEiLDEwKSpwYXJzZUZsb2F0KGEuc3Vic3RyKDIpKTpwYXJzZUZsb2F0KGEpLXBhcnNlRmxvYXQoYil8fDB9LGlhPWZ1bmN0aW9uKGEsYil7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGEmJihhPWEocixxKSksbnVsbD09YT9iOiJzdHJpbmciPT10eXBlb2YgYSYmIj0iPT09YS5jaGFyQXQoMSk/cGFyc2VJbnQoYS5jaGFyQXQoMCkrIjEiLDEwKSpwYXJzZUZsb2F0KGEuc3Vic3RyKDIpKStiOnBhcnNlRmxvYXQoYSl8fDB9LGphPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlLGYsZyxoLGksaj0xZS02O3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBhJiYoYT1hKHIscSkpLG51bGw9PWE/aD1iOiJudW1iZXIiPT10eXBlb2YgYT9oPWE6KGU9MzYwLGY9YS5zcGxpdCgiXyIpLGk9Ij0iPT09YS5jaGFyQXQoMSksZz0oaT9wYXJzZUludChhLmNoYXJBdCgwKSsiMSIsMTApKnBhcnNlRmxvYXQoZlswXS5zdWJzdHIoMikpOnBhcnNlRmxvYXQoZlswXSkpKigtMT09PWEuaW5kZXhPZigicmFkIik/MTpMKS0oaT8wOmIpLGYubGVuZ3RoJiYoZCYmKGRbY109YitnKSwtMSE9PWEuaW5kZXhPZigic2hvcnQiKSYmKGclPWUsZyE9PWclKGUvMikmJihnPTA+Zz9nK2U6Zy1lKSksLTEhPT1hLmluZGV4T2YoIl9jdyIpJiYwPmc/Zz0oZys5OTk5OTk5OTk5KmUpJWUtKGcvZXwwKSplOi0xIT09YS5pbmRleE9mKCJjY3ciKSYmZz4wJiYoZz0oZy05OTk5OTk5OTk5KmUpJWUtKGcvZXwwKSplKSksaD1iK2cpLGo+aCYmaD4taiYmKGg9MCksaH0sa2E9e2FxdWE6WzAsMjU1LDI1NV0sbGltZTpbMCwyNTUsMF0sc2lsdmVyOlsxOTIsMTkyLDE5Ml0sYmxhY2s6WzAsMCwwXSxtYXJvb246WzEyOCwwLDBdLHRlYWw6WzAsMTI4LDEyOF0sYmx1ZTpbMCwwLDI1NV0sbmF2eTpbMCwwLDEyOF0sd2hpdGU6WzI1NSwyNTUsMjU1XSxmdWNoc2lhOlsyNTUsMCwyNTVdLG9saXZlOlsxMjgsMTI4LDBdLHllbGxvdzpbMjU1LDI1NSwwXSxvcmFuZ2U6WzI1NSwxNjUsMF0sZ3JheTpbMTI4LDEyOCwxMjhdLHB1cnBsZTpbMTI4LDAsMTI4XSxncmVlbjpbMCwxMjgsMF0scmVkOlsyNTUsMCwwXSxwaW5rOlsyNTUsMTkyLDIwM10sY3lhbjpbMCwyNTUsMjU1XSx0cmFuc3BhcmVudDpbMjU1LDI1NSwyNTUsMF19LGxhPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYT0wPmE/YSsxOmE+MT9hLTE6YSwyNTUqKDE+NiphP2IrKGMtYikqYSo2Oi41PmE/YzoyPjMqYT9iKyhjLWIpKigyLzMtYSkqNjpiKSsuNXwwfSxtYT1nLnBhcnNlQ29sb3I9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZixnLGgsaSxqLGssbCxtO2lmKGEpaWYoIm51bWJlciI9PXR5cGVvZiBhKWM9W2E+PjE2LGE+PjgmMjU1LDI1NSZhXTtlbHNle2lmKCIsIj09PWEuY2hhckF0KGEubGVuZ3RoLTEpJiYoYT1hLnN1YnN0cigwLGEubGVuZ3RoLTEpKSxrYVthXSljPWthW2FdO2Vsc2UgaWYoIiMiPT09YS5jaGFyQXQoMCkpND09PWEubGVuZ3RoJiYoZD1hLmNoYXJBdCgxKSxlPWEuY2hhckF0KDIpLGY9YS5jaGFyQXQoMyksYT0iIyIrZCtkK2UrZStmK2YpLGE9cGFyc2VJbnQoYS5zdWJzdHIoMSksMTYpLGM9W2E+PjE2LGE+PjgmMjU1LDI1NSZhXTtlbHNlIGlmKCJoc2wiPT09YS5zdWJzdHIoMCwzKSlpZihjPW09YS5tYXRjaChzKSxiKXtpZigtMSE9PWEuaW5kZXhPZigiPSIpKXJldHVybiBhLm1hdGNoKHQpfWVsc2UgZz1OdW1iZXIoY1swXSklMzYwLzM2MCxoPU51bWJlcihjWzFdKS8xMDAsaT1OdW1iZXIoY1syXSkvMTAwLGU9LjU+PWk/aSooaCsxKTppK2gtaSpoLGQ9MippLWUsYy5sZW5ndGg+MyYmKGNbM109TnVtYmVyKGFbM10pKSxjWzBdPWxhKGcrMS8zLGQsZSksY1sxXT1sYShnLGQsZSksY1syXT1sYShnLTEvMyxkLGUpO2Vsc2UgYz1hLm1hdGNoKHMpfHxrYS50cmFuc3BhcmVudDtjWzBdPU51bWJlcihjWzBdKSxjWzFdPU51bWJlcihjWzFdKSxjWzJdPU51bWJlcihjWzJdKSxjLmxlbmd0aD4zJiYoY1szXT1OdW1iZXIoY1szXSkpfWVsc2UgYz1rYS5ibGFjaztyZXR1cm4gYiYmIW0mJihkPWNbMF0vMjU1LGU9Y1sxXS8yNTUsZj1jWzJdLzI1NSxqPU1hdGgubWF4KGQsZSxmKSxrPU1hdGgubWluKGQsZSxmKSxpPShqK2spLzIsaj09PWs/Zz1oPTA6KGw9ai1rLGg9aT4uNT9sLygyLWotayk6bC8oaitrKSxnPWo9PT1kPyhlLWYpL2wrKGY+ZT82OjApOmo9PT1lPyhmLWQpL2wrMjooZC1lKS9sKzQsZyo9NjApLGNbMF09ZysuNXwwLGNbMV09MTAwKmgrLjV8MCxjWzJdPTEwMCppKy41fDApLGN9LG5hPWZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlLGY9YS5tYXRjaChvYSl8fFtdLGc9MCxoPWYubGVuZ3RoPyIiOmE7Zm9yKGM9MDtjPGYubGVuZ3RoO2MrKylkPWZbY10sZT1hLnN1YnN0cihnLGEuaW5kZXhPZihkLGcpLWcpLGcrPWUubGVuZ3RoK2QubGVuZ3RoLGQ9bWEoZCxiKSwzPT09ZC5sZW5ndGgmJmQucHVzaCgxKSxoKz1lKyhiPyJoc2xhKCIrZFswXSsiLCIrZFsxXSsiJSwiK2RbMl0rIiUsIitkWzNdOiJyZ2JhKCIrZC5qb2luKCIsIikpKyIpIjtyZXR1cm4gaCthLnN1YnN0cihnKX0sb2E9Iig/OlxcYig/Oig/OnJnYnxyZ2JhfGhzbHxoc2xhKVxcKC4rP1xcKSl8XFxCIyg/OlswLTlhLWZdezN9KXsxLDJ9XFxiIjtmb3IoaiBpbiBrYSlvYSs9InwiK2orIlxcYiI7b2E9bmV3IFJlZ0V4cChvYSsiKSIsImdpIiksZy5jb2xvclN0cmluZ0ZpbHRlcj1mdW5jdGlvbihhKXt2YXIgYixjPWFbMF0rYVsxXTtvYS50ZXN0KGMpJiYoYj0tMSE9PWMuaW5kZXhPZigiaHNsKCIpfHwtMSE9PWMuaW5kZXhPZigiaHNsYSgiKSxhWzBdPW5hKGFbMF0sYiksYVsxXT1uYShhWzFdLGIpKSxvYS5sYXN0SW5kZXg9MH0sYi5kZWZhdWx0U3RyaW5nRmlsdGVyfHwoYi5kZWZhdWx0U3RyaW5nRmlsdGVyPWcuY29sb3JTdHJpbmdGaWx0ZXIpO3ZhciBwYT1mdW5jdGlvbihhLGIsYyxkKXtpZihudWxsPT1hKXJldHVybiBmdW5jdGlvbihhKXtyZXR1cm4gYX07dmFyIGUsZj1iPyhhLm1hdGNoKG9hKXx8WyIiXSlbMF06IiIsZz1hLnNwbGl0KGYpLmpvaW4oIiIpLm1hdGNoKHUpfHxbXSxoPWEuc3Vic3RyKDAsYS5pbmRleE9mKGdbMF0pKSxpPSIpIj09PWEuY2hhckF0KGEubGVuZ3RoLTEpPyIpIjoiIixqPS0xIT09YS5pbmRleE9mKCIgIik/IiAiOiIsIixrPWcubGVuZ3RoLGw9az4wP2dbMF0ucmVwbGFjZShzLCIiKToiIjtyZXR1cm4gaz9lPWI/ZnVuY3Rpb24oYSl7dmFyIGIsbSxuLG87aWYoIm51bWJlciI9PXR5cGVvZiBhKWErPWw7ZWxzZSBpZihkJiZJLnRlc3QoYSkpe2ZvcihvPWEucmVwbGFjZShJLCJ8Iikuc3BsaXQoInwiKSxuPTA7bjxvLmxlbmd0aDtuKyspb1tuXT1lKG9bbl0pO3JldHVybiBvLmpvaW4oIiwiKX1pZihiPShhLm1hdGNoKG9hKXx8W2ZdKVswXSxtPWEuc3BsaXQoYikuam9pbigiIikubWF0Y2godSl8fFtdLG49bS5sZW5ndGgsaz5uLS0pZm9yKDsrK248azspbVtuXT1jP21bKG4tMSkvMnwwXTpnW25dO3JldHVybiBoK20uam9pbihqKStqK2IraSsoLTEhPT1hLmluZGV4T2YoImluc2V0Iik/IiBpbnNldCI6IiIpfTpmdW5jdGlvbihhKXt2YXIgYixmLG07aWYoIm51bWJlciI9PXR5cGVvZiBhKWErPWw7ZWxzZSBpZihkJiZJLnRlc3QoYSkpe2ZvcihmPWEucmVwbGFjZShJLCJ8Iikuc3BsaXQoInwiKSxtPTA7bTxmLmxlbmd0aDttKyspZlttXT1lKGZbbV0pO3JldHVybiBmLmpvaW4oIiwiKX1pZihiPWEubWF0Y2godSl8fFtdLG09Yi5sZW5ndGgsaz5tLS0pZm9yKDsrK208azspYlttXT1jP2JbKG0tMSkvMnwwXTpnW21dO3JldHVybiBoK2Iuam9pbihqKStpfTpmdW5jdGlvbihhKXtyZXR1cm4gYX19LHFhPWZ1bmN0aW9uKGEpe3JldHVybiBhPWEuc3BsaXQoIiwiKSxmdW5jdGlvbihiLGMsZCxlLGYsZyxoKXt2YXIgaSxqPShjKyIiKS5zcGxpdCgiICIpO2ZvcihoPXt9LGk9MDs0Pmk7aSsrKWhbYVtpXV09altpXT1qW2ldfHxqWyhpLTEpLzI+PjBdO3JldHVybiBlLnBhcnNlKGIsaCxmLGcpfX0scmE9KFIuX3NldFBsdWdpblJhdGlvPWZ1bmN0aW9uKGEpe3RoaXMucGx1Z2luLnNldFJhdGlvKGEpO2Zvcih2YXIgYixjLGQsZSxmLGc9dGhpcy5kYXRhLGg9Zy5wcm94eSxpPWcuZmlyc3RNUFQsaj0xZS02O2k7KWI9aFtpLnZdLGkucj9iPU1hdGgucm91bmQoYik6aj5iJiZiPi1qJiYoYj0wKSxpLnRbaS5wXT1iLGk9aS5fbmV4dDtpZihnLmF1dG9Sb3RhdGUmJihnLmF1dG9Sb3RhdGUucm90YXRpb249Zy5tb2Q/Zy5tb2QoaC5yb3RhdGlvbix0aGlzLnQpOmgucm90YXRpb24pLDE9PT1hfHwwPT09YSlmb3IoaT1nLmZpcnN0TVBULGY9MT09PWE/ImUiOiJiIjtpOyl7aWYoYz1pLnQsYy50eXBlKXtpZigxPT09Yy50eXBlKXtmb3IoZT1jLnhzMCtjLnMrYy54czEsZD0xO2Q8Yy5sO2QrKyllKz1jWyJ4biIrZF0rY1sieHMiKyhkKzEpXTtjW2ZdPWV9fWVsc2UgY1tmXT1jLnMrYy54czA7aT1pLl9uZXh0fX0sZnVuY3Rpb24oYSxiLGMsZCxlKXt0aGlzLnQ9YSx0aGlzLnA9Yix0aGlzLnY9Yyx0aGlzLnI9ZSxkJiYoZC5fcHJldj10aGlzLHRoaXMuX25leHQ9ZCl9KSxzYT0oUi5fcGFyc2VUb1Byb3h5PWZ1bmN0aW9uKGEsYixjLGQsZSxmKXt2YXIgZyxoLGksaixrLGw9ZCxtPXt9LG49e30sbz1jLl90cmFuc2Zvcm0scD1NO2ZvcihjLl90cmFuc2Zvcm09bnVsbCxNPWIsZD1rPWMucGFyc2UoYSxiLGQsZSksTT1wLGYmJihjLl90cmFuc2Zvcm09byxsJiYobC5fcHJldj1udWxsLGwuX3ByZXYmJihsLl9wcmV2Ll9uZXh0PW51bGwpKSk7ZCYmZCE9PWw7KXtpZihkLnR5cGU8PTEmJihoPWQucCxuW2hdPWQucytkLmMsbVtoXT1kLnMsZnx8KGo9bmV3IHJhKGQsInMiLGgsaixkLnIpLGQuYz0wKSwxPT09ZC50eXBlKSlmb3IoZz1kLmw7LS1nPjA7KWk9InhuIitnLGg9ZC5wKyJfIitpLG5baF09ZC5kYXRhW2ldLG1baF09ZFtpXSxmfHwoaj1uZXcgcmEoZCxpLGgsaixkLnJ4cFtpXSkpO2Q9ZC5fbmV4dH1yZXR1cm57cHJveHk6bSxlbmQ6bixmaXJzdE1QVDpqLHB0Omt9fSxSLkNTU1Byb3BUd2Vlbj1mdW5jdGlvbihhLGIsZCxlLGcsaCxpLGosayxsLG0pe3RoaXMudD1hLHRoaXMucD1iLHRoaXMucz1kLHRoaXMuYz1lLHRoaXMubj1pfHxiLGEgaW5zdGFuY2VvZiBzYXx8Zi5wdXNoKHRoaXMubiksdGhpcy5yPWosdGhpcy50eXBlPWh8fDAsayYmKHRoaXMucHI9ayxjPSEwKSx0aGlzLmI9dm9pZCAwPT09bD9kOmwsdGhpcy5lPXZvaWQgMD09PW0/ZCtlOm0sZyYmKHRoaXMuX25leHQ9ZyxnLl9wcmV2PXRoaXMpfSksdGE9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe3ZhciBnPW5ldyBzYShhLGIsYyxkLWMsZSwtMSxmKTtyZXR1cm4gZy5iPWMsZy5lPWcueHMwPWQsZ30sdWE9Zy5wYXJzZUNvbXBsZXg9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsaCxpLGosbCl7Yz1jfHxmfHwiIiwiZnVuY3Rpb24iPT10eXBlb2YgZCYmKGQ9ZChyLHEpKSxoPW5ldyBzYShhLGIsMCwwLGgsbD8yOjEsbnVsbCwhMSxpLGMsZCksZCs9IiIsZSYmb2EudGVzdChkK2MpJiYoZD1bYyxkXSxnLmNvbG9yU3RyaW5nRmlsdGVyKGQpLGM9ZFswXSxkPWRbMV0pO3ZhciBtLG4sbyxwLHUsdix3LHgseSx6LEEsQixDLEQ9Yy5zcGxpdCgiLCAiKS5qb2luKCIsIikuc3BsaXQoIiAiKSxFPWQuc3BsaXQoIiwgIikuam9pbigiLCIpLnNwbGl0KCIgIiksRj1ELmxlbmd0aCxHPWshPT0hMTtmb3IoKC0xIT09ZC5pbmRleE9mKCIsIil8fC0xIT09Yy5pbmRleE9mKCIsIikpJiYoRD1ELmpvaW4oIiAiKS5yZXBsYWNlKEksIiwgIikuc3BsaXQoIiAiKSxFPUUuam9pbigiICIpLnJlcGxhY2UoSSwiLCAiKS5zcGxpdCgiICIpLEY9RC5sZW5ndGgpLEYhPT1FLmxlbmd0aCYmKEQ9KGZ8fCIiKS5zcGxpdCgiICIpLEY9RC5sZW5ndGgpLGgucGx1Z2luPWosaC5zZXRSYXRpbz1sLG9hLmxhc3RJbmRleD0wLG09MDtGPm07bSsrKWlmKHA9RFttXSx1PUVbbV0seD1wYXJzZUZsb2F0KHApLHh8fDA9PT14KWguYXBwZW5kWHRyYSgiIix4LGhhKHUseCksdS5yZXBsYWNlKHQsIiIpLEcmJi0xIT09dS5pbmRleE9mKCJweCIpLCEwKTtlbHNlIGlmKGUmJm9hLnRlc3QocCkpQj11LmluZGV4T2YoIikiKSsxLEI9IikiKyhCP3Uuc3Vic3RyKEIpOiIiKSxDPS0xIT09dS5pbmRleE9mKCJoc2wiKSYmVCxwPW1hKHAsQyksdT1tYSh1LEMpLHk9cC5sZW5ndGgrdS5sZW5ndGg+Nix5JiYhVCYmMD09PXVbM10/KGhbInhzIitoLmxdKz1oLmw/IiB0cmFuc3BhcmVudCI6InRyYW5zcGFyZW50IixoLmU9aC5lLnNwbGl0KEVbbV0pLmpvaW4oInRyYW5zcGFyZW50IikpOihUfHwoeT0hMSksQz9oLmFwcGVuZFh0cmEoeT8iaHNsYSgiOiJoc2woIixwWzBdLGhhKHVbMF0scFswXSksIiwiLCExLCEwKS5hcHBlbmRYdHJhKCIiLHBbMV0saGEodVsxXSxwWzFdKSwiJSwiLCExKS5hcHBlbmRYdHJhKCIiLHBbMl0saGEodVsyXSxwWzJdKSx5PyIlLCI6IiUiK0IsITEpOmguYXBwZW5kWHRyYSh5PyJyZ2JhKCI6InJnYigiLHBbMF0sdVswXS1wWzBdLCIsIiwhMCwhMCkuYXBwZW5kWHRyYSgiIixwWzFdLHVbMV0tcFsxXSwiLCIsITApLmFwcGVuZFh0cmEoIiIscFsyXSx1WzJdLXBbMl0seT8iLCI6QiwhMCkseSYmKHA9cC5sZW5ndGg8ND8xOnBbM10saC5hcHBlbmRYdHJhKCIiLHAsKHUubGVuZ3RoPDQ/MTp1WzNdKS1wLEIsITEpKSksb2EubGFzdEluZGV4PTA7ZWxzZSBpZih2PXAubWF0Y2gocykpe2lmKHc9dS5tYXRjaCh0KSwhd3x8dy5sZW5ndGghPT12Lmxlbmd0aClyZXR1cm4gaDtmb3Iobz0wLG49MDtuPHYubGVuZ3RoO24rKylBPXZbbl0sej1wLmluZGV4T2YoQSxvKSxoLmFwcGVuZFh0cmEocC5zdWJzdHIobyx6LW8pLE51bWJlcihBKSxoYSh3W25dLEEpLCIiLEcmJiJweCI9PT1wLnN1YnN0cih6K0EubGVuZ3RoLDIpLDA9PT1uKSxvPXorQS5sZW5ndGg7aFsieHMiK2gubF0rPXAuc3Vic3RyKG8pfWVsc2UgaFsieHMiK2gubF0rPWgubHx8aFsieHMiK2gubF0/IiAiK3U6dTtpZigtMSE9PWQuaW5kZXhPZigiPSIpJiZoLmRhdGEpe2ZvcihCPWgueHMwK2guZGF0YS5zLG09MTttPGgubDttKyspQis9aFsieHMiK21dK2guZGF0YVsieG4iK21dO2guZT1CK2hbInhzIittXX1yZXR1cm4gaC5sfHwoaC50eXBlPS0xLGgueHMwPWguZSksaC54Zmlyc3R8fGh9LHZhPTk7Zm9yKGo9c2EucHJvdG90eXBlLGoubD1qLnByPTA7LS12YT4wOylqWyJ4biIrdmFdPTAsalsieHMiK3ZhXT0iIjtqLnhzMD0iIixqLl9uZXh0PWouX3ByZXY9ai54Zmlyc3Q9ai5kYXRhPWoucGx1Z2luPWouc2V0UmF0aW89ai5yeHA9bnVsbCxqLmFwcGVuZFh0cmE9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe3ZhciBnPXRoaXMsaD1nLmw7cmV0dXJuIGdbInhzIitoXSs9ZiYmKGh8fGdbInhzIitoXSk/IiAiK2E6YXx8IiIsY3x8MD09PWh8fGcucGx1Z2luPyhnLmwrKyxnLnR5cGU9Zy5zZXRSYXRpbz8yOjEsZ1sieHMiK2cubF09ZHx8IiIsaD4wPyhnLmRhdGFbInhuIitoXT1iK2MsZy5yeHBbInhuIitoXT1lLGdbInhuIitoXT1iLGcucGx1Z2lufHwoZy54Zmlyc3Q9bmV3IHNhKGcsInhuIitoLGIsYyxnLnhmaXJzdHx8ZywwLGcubixlLGcucHIpLGcueGZpcnN0LnhzMD0wKSxnKTooZy5kYXRhPXtzOmIrY30sZy5yeHA9e30sZy5zPWIsZy5jPWMsZy5yPWUsZykpOihnWyJ4cyIraF0rPWIrKGR8fCIiKSxnKX07dmFyIHdhPWZ1bmN0aW9uKGEsYil7Yj1ifHx7fSx0aGlzLnA9Yi5wcmVmaXg/WShhKXx8YTphLGlbYV09aVt0aGlzLnBdPXRoaXMsdGhpcy5mb3JtYXQ9Yi5mb3JtYXR0ZXJ8fHBhKGIuZGVmYXVsdFZhbHVlLGIuY29sb3IsYi5jb2xsYXBzaWJsZSxiLm11bHRpKSxiLnBhcnNlciYmKHRoaXMucGFyc2U9Yi5wYXJzZXIpLHRoaXMuY2xycz1iLmNvbG9yLHRoaXMubXVsdGk9Yi5tdWx0aSx0aGlzLmtleXdvcmQ9Yi5rZXl3b3JkLHRoaXMuZGZsdD1iLmRlZmF1bHRWYWx1ZSx0aGlzLnByPWIucHJpb3JpdHl8fDB9LHhhPVIuX3JlZ2lzdGVyQ29tcGxleFNwZWNpYWxQcm9wPWZ1bmN0aW9uKGEsYixjKXsib2JqZWN0IiE9dHlwZW9mIGImJihiPXtwYXJzZXI6Y30pO3ZhciBkLGUsZj1hLnNwbGl0KCIsIiksZz1iLmRlZmF1bHRWYWx1ZTtmb3IoYz1jfHxbZ10sZD0wO2Q8Zi5sZW5ndGg7ZCsrKWIucHJlZml4PTA9PT1kJiZiLnByZWZpeCxiLmRlZmF1bHRWYWx1ZT1jW2RdfHxnLGU9bmV3IHdhKGZbZF0sYil9LHlhPVIuX3JlZ2lzdGVyUGx1Z2luUHJvcD1mdW5jdGlvbihhKXtpZighaVthXSl7dmFyIGI9YS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSthLnN1YnN0cigxKSsiUGx1Z2luIjt4YShhLHtwYXJzZXI6ZnVuY3Rpb24oYSxjLGQsZSxmLGcsail7dmFyIGs9aC5jb20uZ3JlZW5zb2NrLnBsdWdpbnNbYl07cmV0dXJuIGs/KGsuX2Nzc1JlZ2lzdGVyKCksaVtkXS5wYXJzZShhLGMsZCxlLGYsZyxqKSk6KFYoIkVycm9yOiAiK2IrIiBqcyBmaWxlIG5vdCBsb2FkZWQuIiksZil9fSl9fTtqPXdhLnByb3RvdHlwZSxqLnBhcnNlQ29tcGxleD1mdW5jdGlvbihhLGIsYyxkLGUsZil7dmFyIGcsaCxpLGosayxsLG09dGhpcy5rZXl3b3JkO2lmKHRoaXMubXVsdGkmJihJLnRlc3QoYyl8fEkudGVzdChiKT8oaD1iLnJlcGxhY2UoSSwifCIpLnNwbGl0KCJ8IiksaT1jLnJlcGxhY2UoSSwifCIpLnNwbGl0KCJ8IikpOm0mJihoPVtiXSxpPVtjXSkpLGkpe2ZvcihqPWkubGVuZ3RoPmgubGVuZ3RoP2kubGVuZ3RoOmgubGVuZ3RoLGc9MDtqPmc7ZysrKWI9aFtnXT1oW2ddfHx0aGlzLmRmbHQsYz1pW2ddPWlbZ118fHRoaXMuZGZsdCxtJiYoaz1iLmluZGV4T2YobSksbD1jLmluZGV4T2YobSksayE9PWwmJigtMT09PWw/aFtnXT1oW2ddLnNwbGl0KG0pLmpvaW4oIiIpOi0xPT09ayYmKGhbZ10rPSIgIittKSkpO2I9aC5qb2luKCIsICIpLGM9aS5qb2luKCIsICIpfXJldHVybiB1YShhLHRoaXMucCxiLGMsdGhpcy5jbHJzLHRoaXMuZGZsdCxkLHRoaXMucHIsZSxmKX0sai5wYXJzZT1mdW5jdGlvbihhLGIsYyxkLGYsZyxoKXtyZXR1cm4gdGhpcy5wYXJzZUNvbXBsZXgoYS5zdHlsZSx0aGlzLmZvcm1hdCgkKGEsdGhpcy5wLGUsITEsdGhpcy5kZmx0KSksdGhpcy5mb3JtYXQoYiksZixnKX0sZy5yZWdpc3RlclNwZWNpYWxQcm9wPWZ1bmN0aW9uKGEsYixjKXt4YShhLHtwYXJzZXI6ZnVuY3Rpb24oYSxkLGUsZixnLGgsaSl7dmFyIGo9bmV3IHNhKGEsZSwwLDAsZywyLGUsITEsYyk7cmV0dXJuIGoucGx1Z2luPWgsai5zZXRSYXRpbz1iKGEsZCxmLl90d2VlbixlKSxqfSxwcmlvcml0eTpjfSl9LGcudXNlU1ZHVHJhbnNmb3JtQXR0cj1tfHxuO3ZhciB6YSxBYT0ic2NhbGVYLHNjYWxlWSxzY2FsZVoseCx5LHosc2tld1gsc2tld1kscm90YXRpb24scm90YXRpb25YLHJvdGF0aW9uWSxwZXJzcGVjdGl2ZSx4UGVyY2VudCx5UGVyY2VudCIuc3BsaXQoIiwiKSxCYT1ZKCJ0cmFuc2Zvcm0iKSxDYT1XKyJ0cmFuc2Zvcm0iLERhPVkoInRyYW5zZm9ybU9yaWdpbiIpLEVhPW51bGwhPT1ZKCJwZXJzcGVjdGl2ZSIpLEZhPVIuVHJhbnNmb3JtPWZ1bmN0aW9uKCl7dGhpcy5wZXJzcGVjdGl2ZT1wYXJzZUZsb2F0KGcuZGVmYXVsdFRyYW5zZm9ybVBlcnNwZWN0aXZlKXx8MCx0aGlzLmZvcmNlM0Q9Zy5kZWZhdWx0Rm9yY2UzRCE9PSExJiZFYT9nLmRlZmF1bHRGb3JjZTNEfHwiYXV0byI6ITF9LEdhPXdpbmRvdy5TVkdFbGVtZW50LEhhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlPU4uY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsYSksZj0vKFthLXpdKShbQS1aXSkvZztmb3IoZCBpbiBjKWUuc2V0QXR0cmlidXRlTlMobnVsbCxkLnJlcGxhY2UoZiwiJDEtJDIiKS50b0xvd2VyQ2FzZSgpLGNbZF0pO3JldHVybiBiLmFwcGVuZENoaWxkKGUpLGV9LElhPU4uZG9jdW1lbnRFbGVtZW50LEphPWZ1bmN0aW9uKCl7dmFyIGEsYixjLGQ9cHx8L0FuZHJvaWQvaS50ZXN0KFMpJiYhd2luZG93LmNocm9tZTtyZXR1cm4gTi5jcmVhdGVFbGVtZW50TlMmJiFkJiYoYT1IYSgic3ZnIixJYSksYj1IYSgicmVjdCIsYSx7d2lkdGg6MTAwLGhlaWdodDo1MCx4OjEwMH0pLGM9Yi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCxiLnN0eWxlW0RhXT0iNTAlIDUwJSIsYi5zdHlsZVtCYV09InNjYWxlWCgwLjUpIixkPWM9PT1iLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoJiYhKG4mJkVhKSxJYS5yZW1vdmVDaGlsZChhKSksZH0oKSxLYT1mdW5jdGlvbihhLGIsYyxkLGUsZil7dmFyIGgsaSxqLGssbCxtLG4sbyxwLHEscixzLHQsdSx2PWEuX2dzVHJhbnNmb3JtLHc9T2EoYSwhMCk7diYmKHQ9di54T3JpZ2luLHU9di55T3JpZ2luKSwoIWR8fChoPWQuc3BsaXQoIiAiKSkubGVuZ3RoPDIpJiYobj1hLmdldEJCb3goKSxiPWdhKGIpLnNwbGl0KCIgIiksaD1bKC0xIT09YlswXS5pbmRleE9mKCIlIik/cGFyc2VGbG9hdChiWzBdKS8xMDAqbi53aWR0aDpwYXJzZUZsb2F0KGJbMF0pKStuLngsKC0xIT09YlsxXS5pbmRleE9mKCIlIik/cGFyc2VGbG9hdChiWzFdKS8xMDAqbi5oZWlnaHQ6cGFyc2VGbG9hdChiWzFdKSkrbi55XSksYy54T3JpZ2luPWs9cGFyc2VGbG9hdChoWzBdKSxjLnlPcmlnaW49bD1wYXJzZUZsb2F0KGhbMV0pLGQmJnchPT1OYSYmKG09d1swXSxuPXdbMV0sbz13WzJdLHA9d1szXSxxPXdbNF0scj13WzVdLHM9bSpwLW4qbyxpPWsqKHAvcykrbCooLW8vcykrKG8qci1wKnEpL3Msaj1rKigtbi9zKStsKihtL3MpLShtKnItbipxKS9zLGs9Yy54T3JpZ2luPWhbMF09aSxsPWMueU9yaWdpbj1oWzFdPWopLHYmJihmJiYoYy54T2Zmc2V0PXYueE9mZnNldCxjLnlPZmZzZXQ9di55T2Zmc2V0LHY9YyksZXx8ZSE9PSExJiZnLmRlZmF1bHRTbW9vdGhPcmlnaW4hPT0hMT8oaT1rLXQsaj1sLXUsdi54T2Zmc2V0Kz1pKndbMF0raip3WzJdLWksdi55T2Zmc2V0Kz1pKndbMV0raip3WzNdLWopOnYueE9mZnNldD12LnlPZmZzZXQ9MCksZnx8YS5zZXRBdHRyaWJ1dGUoImRhdGEtc3ZnLW9yaWdpbiIsaC5qb2luKCIgIikpfSxMYT1mdW5jdGlvbihhKXt0cnl7cmV0dXJuIGEuZ2V0QkJveCgpfWNhdGNoKGEpe319LE1hPWZ1bmN0aW9uKGEpe3JldHVybiEhKEdhJiZhLmdldEJCb3gmJmEuZ2V0Q1RNJiZMYShhKSYmKCFhLnBhcmVudE5vZGV8fGEucGFyZW50Tm9kZS5nZXRCQm94JiZhLnBhcmVudE5vZGUuZ2V0Q1RNKSl9LE5hPVsxLDAsMCwxLDAsMF0sT2E9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZixnLGgsaT1hLl9nc1RyYW5zZm9ybXx8bmV3IEZhLGo9MWU1LGs9YS5zdHlsZTtpZihCYT9kPSQoYSxDYSxudWxsLCEwKTphLmN1cnJlbnRTdHlsZSYmKGQ9YS5jdXJyZW50U3R5bGUuZmlsdGVyLm1hdGNoKEcpLGQ9ZCYmND09PWQubGVuZ3RoP1tkWzBdLnN1YnN0cig0KSxOdW1iZXIoZFsyXS5zdWJzdHIoNCkpLE51bWJlcihkWzFdLnN1YnN0cig0KSksZFszXS5zdWJzdHIoNCksaS54fHwwLGkueXx8MF0uam9pbigiLCIpOiIiKSxjPSFkfHwibm9uZSI9PT1kfHwibWF0cml4KDEsIDAsIDAsIDEsIDAsIDApIj09PWQsYyYmQmEmJigoaD0ibm9uZSI9PT1aKGEpLmRpc3BsYXkpfHwhYS5wYXJlbnROb2RlKSYmKGgmJihmPWsuZGlzcGxheSxrLmRpc3BsYXk9ImJsb2NrIiksYS5wYXJlbnROb2RlfHwoZz0xLElhLmFwcGVuZENoaWxkKGEpKSxkPSQoYSxDYSxudWxsLCEwKSxjPSFkfHwibm9uZSI9PT1kfHwibWF0cml4KDEsIDAsIDAsIDEsIDAsIDApIj09PWQsZj9rLmRpc3BsYXk9ZjpoJiZUYShrLCJkaXNwbGF5IiksZyYmSWEucmVtb3ZlQ2hpbGQoYSkpLChpLnN2Z3x8YS5nZXRCQm94JiZNYShhKSkmJihjJiYtMSE9PShrW0JhXSsiIikuaW5kZXhPZigibWF0cml4IikmJihkPWtbQmFdLGM9MCksZT1hLmdldEF0dHJpYnV0ZSgidHJhbnNmb3JtIiksYyYmZSYmKC0xIT09ZS5pbmRleE9mKCJtYXRyaXgiKT8oZD1lLGM9MCk6LTEhPT1lLmluZGV4T2YoInRyYW5zbGF0ZSIpJiYoZD0ibWF0cml4KDEsMCwwLDEsIitlLm1hdGNoKC8oPzpcLXxcYilbXGRcLVwuZV0rXGIvZ2kpLmpvaW4oIiwiKSsiKSIsYz0wKSkpLGMpcmV0dXJuIE5hO2ZvcihlPShkfHwiIikubWF0Y2gocyl8fFtdLHZhPWUubGVuZ3RoOy0tdmE+LTE7KWY9TnVtYmVyKGVbdmFdKSxlW3ZhXT0oZz1mLShmfD0wKSk/KGcqaisoMD5nPy0uNTouNSl8MCkvaitmOmY7cmV0dXJuIGImJmUubGVuZ3RoPjY/W2VbMF0sZVsxXSxlWzRdLGVbNV0sZVsxMl0sZVsxM11dOmV9LFBhPVIuZ2V0VHJhbnNmb3JtPWZ1bmN0aW9uKGEsYyxkLGUpe2lmKGEuX2dzVHJhbnNmb3JtJiZkJiYhZSlyZXR1cm4gYS5fZ3NUcmFuc2Zvcm07dmFyIGYsaCxpLGosayxsLG09ZD9hLl9nc1RyYW5zZm9ybXx8bmV3IEZhOm5ldyBGYSxuPW0uc2NhbGVYPDAsbz0yZS01LHA9MWU1LHE9RWE/cGFyc2VGbG9hdCgkKGEsRGEsYywhMSwiMCAwIDAiKS5zcGxpdCgiICIpWzJdKXx8bS56T3JpZ2lufHwwOjAscj1wYXJzZUZsb2F0KGcuZGVmYXVsdFRyYW5zZm9ybVBlcnNwZWN0aXZlKXx8MDtpZihtLnN2Zz0hKCFhLmdldEJCb3h8fCFNYShhKSksbS5zdmcmJihLYShhLCQoYSxEYSxjLCExLCI1MCUgNTAlIikrIiIsbSxhLmdldEF0dHJpYnV0ZSgiZGF0YS1zdmctb3JpZ2luIikpLHphPWcudXNlU1ZHVHJhbnNmb3JtQXR0cnx8SmEpLGY9T2EoYSksZiE9PU5hKXtpZigxNj09PWYubGVuZ3RoKXt2YXIgcyx0LHUsdix3LHg9ZlswXSx5PWZbMV0sej1mWzJdLEE9ZlszXSxCPWZbNF0sQz1mWzVdLEQ9Zls2XSxFPWZbN10sRj1mWzhdLEc9Zls5XSxIPWZbMTBdLEk9ZlsxMl0sSj1mWzEzXSxLPWZbMTRdLE09ZlsxMV0sTj1NYXRoLmF0YW4yKEQsSCk7bS56T3JpZ2luJiYoSz0tbS56T3JpZ2luLEk9RipLLWZbMTJdLEo9RypLLWZbMTNdLEs9SCpLK20uek9yaWdpbi1mWzE0XSksbS5yb3RhdGlvblg9TipMLE4mJih2PU1hdGguY29zKC1OKSx3PU1hdGguc2luKC1OKSxzPUIqditGKncsdD1DKnYrRyp3LHU9RCp2K0gqdyxGPUIqLXcrRip2LEc9QyotdytHKnYsSD1EKi13K0gqdixNPUUqLXcrTSp2LEI9cyxDPXQsRD11KSxOPU1hdGguYXRhbjIoLXosSCksbS5yb3RhdGlvblk9TipMLE4mJih2PU1hdGguY29zKC1OKSx3PU1hdGguc2luKC1OKSxzPXgqdi1GKncsdD15KnYtRyp3LHU9eip2LUgqdyxHPXkqdytHKnYsSD16KncrSCp2LE09QSp3K00qdix4PXMseT10LHo9dSksTj1NYXRoLmF0YW4yKHkseCksbS5yb3RhdGlvbj1OKkwsTiYmKHY9TWF0aC5jb3MoLU4pLHc9TWF0aC5zaW4oLU4pLHg9eCp2K0Iqdyx0PXkqditDKncsQz15Ki13K0MqdixEPXoqLXcrRCp2LHk9dCksbS5yb3RhdGlvblgmJk1hdGguYWJzKG0ucm90YXRpb25YKStNYXRoLmFicyhtLnJvdGF0aW9uKT4zNTkuOSYmKG0ucm90YXRpb25YPW0ucm90YXRpb249MCxtLnJvdGF0aW9uWT0xODAtbS5yb3RhdGlvblkpLG0uc2NhbGVYPShNYXRoLnNxcnQoeCp4K3kqeSkqcCsuNXwwKS9wLG0uc2NhbGVZPShNYXRoLnNxcnQoQypDK0cqRykqcCsuNXwwKS9wLG0uc2NhbGVaPShNYXRoLnNxcnQoRCpEK0gqSCkqcCsuNXwwKS9wLG0ucm90YXRpb25YfHxtLnJvdGF0aW9uWT9tLnNrZXdYPTA6KG0uc2tld1g9Qnx8Qz9NYXRoLmF0YW4yKEIsQykqTCttLnJvdGF0aW9uOm0uc2tld1h8fDAsTWF0aC5hYnMobS5za2V3WCk+OTAmJk1hdGguYWJzKG0uc2tld1gpPDI3MCYmKG4/KG0uc2NhbGVYKj0tMSxtLnNrZXdYKz1tLnJvdGF0aW9uPD0wPzE4MDotMTgwLG0ucm90YXRpb24rPW0ucm90YXRpb248PTA/MTgwOi0xODApOihtLnNjYWxlWSo9LTEsbS5za2V3WCs9bS5za2V3WDw9MD8xODA6LTE4MCkpKSxtLnBlcnNwZWN0aXZlPU0/MS8oMD5NPy1NOk0pOjAsbS54PUksbS55PUosbS56PUssbS5zdmcmJihtLngtPW0ueE9yaWdpbi0obS54T3JpZ2luKngtbS55T3JpZ2luKkIpLG0ueS09bS55T3JpZ2luLShtLnlPcmlnaW4qeS1tLnhPcmlnaW4qQykpfWVsc2UgaWYoIUVhfHxlfHwhZi5sZW5ndGh8fG0ueCE9PWZbNF18fG0ueSE9PWZbNV18fCFtLnJvdGF0aW9uWCYmIW0ucm90YXRpb25ZKXt2YXIgTz1mLmxlbmd0aD49NixQPU8/ZlswXToxLFE9ZlsxXXx8MCxSPWZbMl18fDAsUz1PP2ZbM106MTttLng9Zls0XXx8MCxtLnk9Zls1XXx8MCxpPU1hdGguc3FydChQKlArUSpRKSxqPU1hdGguc3FydChTKlMrUipSKSxrPVB8fFE/TWF0aC5hdGFuMihRLFApKkw6bS5yb3RhdGlvbnx8MCxsPVJ8fFM/TWF0aC5hdGFuMihSLFMpKkwrazptLnNrZXdYfHwwLE1hdGguYWJzKGwpPjkwJiZNYXRoLmFicyhsKTwyNzAmJihuPyhpKj0tMSxsKz0wPj1rPzE4MDotMTgwLGsrPTA+PWs/MTgwOi0xODApOihqKj0tMSxsKz0wPj1sPzE4MDotMTgwKSksbS5zY2FsZVg9aSxtLnNjYWxlWT1qLG0ucm90YXRpb249ayxtLnNrZXdYPWwsRWEmJihtLnJvdGF0aW9uWD1tLnJvdGF0aW9uWT1tLno9MCxtLnBlcnNwZWN0aXZlPXIsbS5zY2FsZVo9MSksbS5zdmcmJihtLngtPW0ueE9yaWdpbi0obS54T3JpZ2luKlArbS55T3JpZ2luKlIpLG0ueS09bS55T3JpZ2luLShtLnhPcmlnaW4qUSttLnlPcmlnaW4qUykpfW0uek9yaWdpbj1xO2ZvcihoIGluIG0pbVtoXTxvJiZtW2hdPi1vJiYobVtoXT0wKX1yZXR1cm4gZCYmKGEuX2dzVHJhbnNmb3JtPW0sbS5zdmcmJih6YSYmYS5zdHlsZVtCYV0/Yi5kZWxheWVkQ2FsbCguMDAxLGZ1bmN0aW9uKCl7VGEoYS5zdHlsZSxCYSl9KTohemEmJmEuZ2V0QXR0cmlidXRlKCJ0cmFuc2Zvcm0iKSYmYi5kZWxheWVkQ2FsbCguMDAxLGZ1bmN0aW9uKCl7YS5yZW1vdmVBdHRyaWJ1dGUoInRyYW5zZm9ybSIpfSkpKSxtfSxRYT1mdW5jdGlvbihhKXt2YXIgYixjLGQ9dGhpcy5kYXRhLGU9LWQucm90YXRpb24qSyxmPWUrZC5za2V3WCpLLGc9MWU1LGg9KE1hdGguY29zKGUpKmQuc2NhbGVYKmd8MCkvZyxpPShNYXRoLnNpbihlKSpkLnNjYWxlWCpnfDApL2csaj0oTWF0aC5zaW4oZikqLWQuc2NhbGVZKmd8MCkvZyxrPShNYXRoLmNvcyhmKSpkLnNjYWxlWSpnfDApL2csbD10aGlzLnQuc3R5bGUsbT10aGlzLnQuY3VycmVudFN0eWxlO2lmKG0pe2M9aSxpPS1qLGo9LWMsYj1tLmZpbHRlcixsLmZpbHRlcj0iIjt2YXIgbixvLHE9dGhpcy50Lm9mZnNldFdpZHRoLHI9dGhpcy50Lm9mZnNldEhlaWdodCxzPSJhYnNvbHV0ZSIhPT1tLnBvc2l0aW9uLHQ9InByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5NYXRyaXgoTTExPSIraCsiLCBNMTI9IitpKyIsIE0yMT0iK2orIiwgTTIyPSIrayx1PWQueCtxKmQueFBlcmNlbnQvMTAwLHY9ZC55K3IqZC55UGVyY2VudC8xMDA7aWYobnVsbCE9ZC5veCYmKG49KGQub3hwP3EqZC5veCouMDE6ZC5veCktcS8yLG89KGQub3lwP3IqZC5veSouMDE6ZC5veSktci8yLHUrPW4tKG4qaCtvKmkpLHYrPW8tKG4qaitvKmspKSxzPyhuPXEvMixvPXIvMix0Kz0iLCBEeD0iKyhuLShuKmgrbyppKSt1KSsiLCBEeT0iKyhvLShuKmorbyprKSt2KSsiKSIpOnQrPSIsIHNpemluZ01ldGhvZD0nYXV0byBleHBhbmQnKSIsLTEhPT1iLmluZGV4T2YoIkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0Lk1hdHJpeCgiKT9sLmZpbHRlcj1iLnJlcGxhY2UoSCx0KTpsLmZpbHRlcj10KyIgIitiLCgwPT09YXx8MT09PWEpJiYxPT09aCYmMD09PWkmJjA9PT1qJiYxPT09ayYmKHMmJi0xPT09dC5pbmRleE9mKCJEeD0wLCBEeT0wIil8fHgudGVzdChiKSYmMTAwIT09cGFyc2VGbG9hdChSZWdFeHAuJDEpfHwtMT09PWIuaW5kZXhPZihiLmluZGV4T2YoIkFscGhhIikpJiZsLnJlbW92ZUF0dHJpYnV0ZSgiZmlsdGVyIikpLCFzKXt2YXIgeSx6LEEsQj04PnA/MTotMTtmb3Iobj1kLmllT2Zmc2V0WHx8MCxvPWQuaWVPZmZzZXRZfHwwLGQuaWVPZmZzZXRYPU1hdGgucm91bmQoKHEtKCgwPmg/LWg6aCkqcSsoMD5pPy1pOmkpKnIpKS8yK3UpLGQuaWVPZmZzZXRZPU1hdGgucm91bmQoKHItKCgwPms/LWs6aykqcisoMD5qPy1qOmopKnEpKS8yK3YpLHZhPTA7ND52YTt2YSsrKXo9ZWFbdmFdLHk9bVt6XSxjPS0xIT09eS5pbmRleE9mKCJweCIpP3BhcnNlRmxvYXQoeSk6Xyh0aGlzLnQseixwYXJzZUZsb2F0KHkpLHkucmVwbGFjZSh3LCIiKSl8fDAsQT1jIT09ZFt6XT8yPnZhPy1kLmllT2Zmc2V0WDotZC5pZU9mZnNldFk6Mj52YT9uLWQuaWVPZmZzZXRYOm8tZC5pZU9mZnNldFksbFt6XT0oZFt6XT1NYXRoLnJvdW5kKGMtQSooMD09PXZhfHwyPT09dmE/MTpCKSkpKyJweCJ9fX0sUmE9Ui5zZXQzRFRyYW5zZm9ybVJhdGlvPVIuc2V0VHJhbnNmb3JtUmF0aW89ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZixnLGgsaSxqLGssbCxtLG8scCxxLHIscyx0LHUsdix3LHgseSx6PXRoaXMuZGF0YSxBPXRoaXMudC5zdHlsZSxCPXoucm90YXRpb24sQz16LnJvdGF0aW9uWCxEPXoucm90YXRpb25ZLEU9ei5zY2FsZVgsRj16LnNjYWxlWSxHPXouc2NhbGVaLEg9ei54LEk9ei55LEo9ei56LEw9ei5zdmcsTT16LnBlcnNwZWN0aXZlLE49ei5mb3JjZTNEO2lmKCgoMT09PWF8fDA9PT1hKSYmImF1dG8iPT09TiYmKHRoaXMudHdlZW4uX3RvdGFsVGltZT09PXRoaXMudHdlZW4uX3RvdGFsRHVyYXRpb258fCF0aGlzLnR3ZWVuLl90b3RhbFRpbWUpfHwhTikmJiFKJiYhTSYmIUQmJiFDJiYxPT09R3x8emEmJkx8fCFFYSlyZXR1cm4gdm9pZChCfHx6LnNrZXdYfHxMPyhCKj1LLHg9ei5za2V3WCpLLHk9MWU1LGI9TWF0aC5jb3MoQikqRSxlPU1hdGguc2luKEIpKkUsYz1NYXRoLnNpbihCLXgpKi1GLGY9TWF0aC5jb3MoQi14KSpGLHgmJiJzaW1wbGUiPT09ei5za2V3VHlwZSYmKHM9TWF0aC50YW4oeC16LnNrZXdZKkspLHM9TWF0aC5zcXJ0KDErcypzKSxjKj1zLGYqPXMsei5za2V3WSYmKHM9TWF0aC50YW4oei5za2V3WSpLKSxzPU1hdGguc3FydCgxK3MqcyksYio9cyxlKj1zKSksTCYmKEgrPXoueE9yaWdpbi0oei54T3JpZ2luKmIrei55T3JpZ2luKmMpK3oueE9mZnNldCxJKz16LnlPcmlnaW4tKHoueE9yaWdpbiplK3oueU9yaWdpbipmKSt6LnlPZmZzZXQsemEmJih6LnhQZXJjZW50fHx6LnlQZXJjZW50KSYmKHA9dGhpcy50LmdldEJCb3goKSxIKz0uMDEqei54UGVyY2VudCpwLndpZHRoLEkrPS4wMSp6LnlQZXJjZW50KnAuaGVpZ2h0KSxwPTFlLTYscD5IJiZIPi1wJiYoSD0wKSxwPkkmJkk+LXAmJihJPTApKSx1PShiKnl8MCkveSsiLCIrKGUqeXwwKS95KyIsIisoYyp5fDApL3krIiwiKyhmKnl8MCkveSsiLCIrSCsiLCIrSSsiKSIsTCYmemE/dGhpcy50LnNldEF0dHJpYnV0ZSgidHJhbnNmb3JtIiwibWF0cml4KCIrdSk6QVtCYV09KHoueFBlcmNlbnR8fHoueVBlcmNlbnQ/InRyYW5zbGF0ZSgiK3oueFBlcmNlbnQrIiUsIit6LnlQZXJjZW50KyIlKSBtYXRyaXgoIjoibWF0cml4KCIpK3UpOkFbQmFdPSh6LnhQZXJjZW50fHx6LnlQZXJjZW50PyJ0cmFuc2xhdGUoIit6LnhQZXJjZW50KyIlLCIrei55UGVyY2VudCsiJSkgbWF0cml4KCI6Im1hdHJpeCgiKStFKyIsMCwwLCIrRisiLCIrSCsiLCIrSSsiKSIpO2lmKG4mJihwPTFlLTQscD5FJiZFPi1wJiYoRT1HPTJlLTUpLHA+RiYmRj4tcCYmKEY9Rz0yZS01KSwhTXx8ei56fHx6LnJvdGF0aW9uWHx8ei5yb3RhdGlvbll8fChNPTApKSxCfHx6LnNrZXdYKUIqPUsscT1iPU1hdGguY29zKEIpLHI9ZT1NYXRoLnNpbihCKSx6LnNrZXdYJiYoQi09ei5za2V3WCpLLHE9TWF0aC5jb3MoQikscj1NYXRoLnNpbihCKSwic2ltcGxlIj09PXouc2tld1R5cGUmJihzPU1hdGgudGFuKCh6LnNrZXdYLXouc2tld1kpKkspLHM9TWF0aC5zcXJ0KDErcypzKSxxKj1zLHIqPXMsei5za2V3WSYmKHM9TWF0aC50YW4oei5za2V3WSpLKSxzPU1hdGguc3FydCgxK3MqcyksYio9cyxlKj1zKSkpLGM9LXIsZj1xO2Vsc2V7aWYoIShEfHxDfHwxIT09R3x8TXx8TCkpcmV0dXJuIHZvaWQoQVtCYV09KHoueFBlcmNlbnR8fHoueVBlcmNlbnQ/InRyYW5zbGF0ZSgiK3oueFBlcmNlbnQrIiUsIit6LnlQZXJjZW50KyIlKSB0cmFuc2xhdGUzZCgiOiJ0cmFuc2xhdGUzZCgiKStIKyJweCwiK0krInB4LCIrSisicHgpIisoMSE9PUV8fDEhPT1GPyIgc2NhbGUoIitFKyIsIitGKyIpIjoiIikpO2I9Zj0xLGM9ZT0wfWo9MSxkPWc9aD1pPWs9bD0wLG09TT8tMS9NOjAsbz16LnpPcmlnaW4scD0xZS02LHY9IiwiLHc9IjAiLEI9RCpLLEImJihxPU1hdGguY29zKEIpLHI9TWF0aC5zaW4oQiksaD0tcixrPW0qLXIsZD1iKnIsZz1lKnIsaj1xLG0qPXEsYio9cSxlKj1xKSxCPUMqSyxCJiYocT1NYXRoLmNvcyhCKSxyPU1hdGguc2luKEIpLHM9YypxK2Qqcix0PWYqcStnKnIsaT1qKnIsbD1tKnIsZD1jKi1yK2QqcSxnPWYqLXIrZypxLGoqPXEsbSo9cSxjPXMsZj10KSwxIT09RyYmKGQqPUcsZyo9RyxqKj1HLG0qPUcpLDEhPT1GJiYoYyo9RixmKj1GLGkqPUYsbCo9RiksMSE9PUUmJihiKj1FLGUqPUUsaCo9RSxrKj1FKSwob3x8TCkmJihvJiYoSCs9ZCotbyxJKz1nKi1vLEorPWoqLW8rbyksTCYmKEgrPXoueE9yaWdpbi0oei54T3JpZ2luKmIrei55T3JpZ2luKmMpK3oueE9mZnNldCxJKz16LnlPcmlnaW4tKHoueE9yaWdpbiplK3oueU9yaWdpbipmKSt6LnlPZmZzZXQpLHA+SCYmSD4tcCYmKEg9dykscD5JJiZJPi1wJiYoST13KSxwPkomJko+LXAmJihKPTApKSx1PXoueFBlcmNlbnR8fHoueVBlcmNlbnQ/InRyYW5zbGF0ZSgiK3oueFBlcmNlbnQrIiUsIit6LnlQZXJjZW50KyIlKSBtYXRyaXgzZCgiOiJtYXRyaXgzZCgiLHUrPShwPmImJmI+LXA/dzpiKSt2KyhwPmUmJmU+LXA/dzplKSt2KyhwPmgmJmg+LXA/dzpoKSx1Kz12KyhwPmsmJms+LXA/dzprKSt2KyhwPmMmJmM+LXA/dzpjKSt2KyhwPmYmJmY+LXA/dzpmKSxDfHxEfHwxIT09Rz8odSs9disocD5pJiZpPi1wP3c6aSkrdisocD5sJiZsPi1wP3c6bCkrdisocD5kJiZkPi1wP3c6ZCksdSs9disocD5nJiZnPi1wP3c6ZykrdisocD5qJiZqPi1wP3c6aikrdisocD5tJiZtPi1wP3c6bSkrdik6dSs9IiwwLDAsMCwwLDEsMCwiLHUrPUgrditJK3YrSit2KyhNPzErLUovTToxKSsiKSIsQVtCYV09dX07aj1GYS5wcm90b3R5cGUsai54PWoueT1qLno9ai5za2V3WD1qLnNrZXdZPWoucm90YXRpb249ai5yb3RhdGlvblg9ai5yb3RhdGlvblk9ai56T3JpZ2luPWoueFBlcmNlbnQ9ai55UGVyY2VudD1qLnhPZmZzZXQ9ai55T2Zmc2V0PTAsai5zY2FsZVg9ai5zY2FsZVk9ai5zY2FsZVo9MSx4YSgidHJhbnNmb3JtLHNjYWxlLHNjYWxlWCxzY2FsZVksc2NhbGVaLHgseSx6LHJvdGF0aW9uLHJvdGF0aW9uWCxyb3RhdGlvblkscm90YXRpb25aLHNrZXdYLHNrZXdZLHNob3J0Um90YXRpb24sc2hvcnRSb3RhdGlvblgsc2hvcnRSb3RhdGlvblksc2hvcnRSb3RhdGlvblosdHJhbnNmb3JtT3JpZ2luLHN2Z09yaWdpbix0cmFuc2Zvcm1QZXJzcGVjdGl2ZSxkaXJlY3Rpb25hbFJvdGF0aW9uLHBhcnNlVHJhbnNmb3JtLGZvcmNlM0Qsc2tld1R5cGUseFBlcmNlbnQseVBlcmNlbnQsc21vb3RoT3JpZ2luIix7cGFyc2VyOmZ1bmN0aW9uKGEsYixjLGQsZixoLGkpe2lmKGQuX2xhc3RQYXJzZWRUcmFuc2Zvcm09PT1pKXJldHVybiBmO2QuX2xhc3RQYXJzZWRUcmFuc2Zvcm09aTt2YXIgajsiZnVuY3Rpb24iPT10eXBlb2YgaVtjXSYmKGo9aVtjXSxpW2NdPWIpO3ZhciBrLGwsbSxuLG8scCxzLHQsdSx2PWEuX2dzVHJhbnNmb3JtLHc9YS5zdHlsZSx4PTFlLTYseT1BYS5sZW5ndGgsej1pLEE9e30sQj0idHJhbnNmb3JtT3JpZ2luIixDPVBhKGEsZSwhMCx6LnBhcnNlVHJhbnNmb3JtKSxEPXoudHJhbnNmb3JtJiYoImZ1bmN0aW9uIj09dHlwZW9mIHoudHJhbnNmb3JtP3oudHJhbnNmb3JtKHIscSk6ei50cmFuc2Zvcm0pO2lmKGQuX3RyYW5zZm9ybT1DLEQmJiJzdHJpbmciPT10eXBlb2YgRCYmQmEpbD1QLnN0eWxlLGxbQmFdPUQsbC5kaXNwbGF5PSJibG9jayIsbC5wb3NpdGlvbj0iYWJzb2x1dGUiLE4uYm9keS5hcHBlbmRDaGlsZChQKSxrPVBhKFAsbnVsbCwhMSksQy5zdmcmJihwPUMueE9yaWdpbixzPUMueU9yaWdpbixrLngtPUMueE9mZnNldCxrLnktPUMueU9mZnNldCwoei50cmFuc2Zvcm1PcmlnaW58fHouc3ZnT3JpZ2luKSYmKEQ9e30sS2EoYSxnYSh6LnRyYW5zZm9ybU9yaWdpbiksRCx6LnN2Z09yaWdpbix6LnNtb290aE9yaWdpbiwhMCkscD1ELnhPcmlnaW4scz1ELnlPcmlnaW4say54LT1ELnhPZmZzZXQtQy54T2Zmc2V0LGsueS09RC55T2Zmc2V0LUMueU9mZnNldCksKHB8fHMpJiYodD1PYShQLCEwKSxrLngtPXAtKHAqdFswXStzKnRbMl0pLGsueS09cy0ocCp0WzFdK3MqdFszXSkpKSxOLmJvZHkucmVtb3ZlQ2hpbGQoUCksay5wZXJzcGVjdGl2ZXx8KGsucGVyc3BlY3RpdmU9Qy5wZXJzcGVjdGl2ZSksbnVsbCE9ei54UGVyY2VudCYmKGsueFBlcmNlbnQ9aWEoei54UGVyY2VudCxDLnhQZXJjZW50KSksbnVsbCE9ei55UGVyY2VudCYmKGsueVBlcmNlbnQ9aWEoei55UGVyY2VudCxDLnlQZXJjZW50KSk7ZWxzZSBpZigib2JqZWN0Ij09dHlwZW9mIHope2lmKGs9e3NjYWxlWDppYShudWxsIT16LnNjYWxlWD96LnNjYWxlWDp6LnNjYWxlLEMuc2NhbGVYKSxzY2FsZVk6aWEobnVsbCE9ei5zY2FsZVk/ei5zY2FsZVk6ei5zY2FsZSxDLnNjYWxlWSksc2NhbGVaOmlhKHouc2NhbGVaLEMuc2NhbGVaKSx4OmlhKHoueCxDLngpLHk6aWEoei55LEMueSksejppYSh6LnosQy56KSx4UGVyY2VudDppYSh6LnhQZXJjZW50LEMueFBlcmNlbnQpLHlQZXJjZW50OmlhKHoueVBlcmNlbnQsQy55UGVyY2VudCkscGVyc3BlY3RpdmU6aWEoei50cmFuc2Zvcm1QZXJzcGVjdGl2ZSxDLnBlcnNwZWN0aXZlKX0sbz16LmRpcmVjdGlvbmFsUm90YXRpb24sbnVsbCE9bylpZigib2JqZWN0Ij09dHlwZW9mIG8pZm9yKGwgaW4gbyl6W2xdPW9bbF07ZWxzZSB6LnJvdGF0aW9uPW87InN0cmluZyI9PXR5cGVvZiB6LngmJi0xIT09ei54LmluZGV4T2YoIiUiKSYmKGsueD0wLGsueFBlcmNlbnQ9aWEoei54LEMueFBlcmNlbnQpKSwic3RyaW5nIj09dHlwZW9mIHoueSYmLTEhPT16LnkuaW5kZXhPZigiJSIpJiYoay55PTAsay55UGVyY2VudD1pYSh6LnksQy55UGVyY2VudCkpLGsucm90YXRpb249amEoInJvdGF0aW9uImluIHo/ei5yb3RhdGlvbjoic2hvcnRSb3RhdGlvbiJpbiB6P3ouc2hvcnRSb3RhdGlvbisiX3Nob3J0Ijoicm90YXRpb25aImluIHo/ei5yb3RhdGlvblo6Qy5yb3RhdGlvbi1DLnNrZXdZLEMucm90YXRpb24tQy5za2V3WSwicm90YXRpb24iLEEpLEVhJiYoay5yb3RhdGlvblg9amEoInJvdGF0aW9uWCJpbiB6P3oucm90YXRpb25YOiJzaG9ydFJvdGF0aW9uWCJpbiB6P3ouc2hvcnRSb3RhdGlvblgrIl9zaG9ydCI6Qy5yb3RhdGlvblh8fDAsQy5yb3RhdGlvblgsInJvdGF0aW9uWCIsQSksay5yb3RhdGlvblk9amEoInJvdGF0aW9uWSJpbiB6P3oucm90YXRpb25ZOiJzaG9ydFJvdGF0aW9uWSJpbiB6P3ouc2hvcnRSb3RhdGlvblkrIl9zaG9ydCI6Qy5yb3RhdGlvbll8fDAsQy5yb3RhdGlvblksInJvdGF0aW9uWSIsQSkpLGsuc2tld1g9amEoei5za2V3WCxDLnNrZXdYLUMuc2tld1kpLChrLnNrZXdZPWphKHouc2tld1ksQy5za2V3WSkpJiYoay5za2V3WCs9ay5za2V3WSxrLnJvdGF0aW9uKz1rLnNrZXdZKX1mb3IoRWEmJm51bGwhPXouZm9yY2UzRCYmKEMuZm9yY2UzRD16LmZvcmNlM0Qsbj0hMCksQy5za2V3VHlwZT16LnNrZXdUeXBlfHxDLnNrZXdUeXBlfHxnLmRlZmF1bHRTa2V3VHlwZSxtPUMuZm9yY2UzRHx8Qy56fHxDLnJvdGF0aW9uWHx8Qy5yb3RhdGlvbll8fGsuenx8ay5yb3RhdGlvblh8fGsucm90YXRpb25ZfHxrLnBlcnNwZWN0aXZlLG18fG51bGw9PXouc2NhbGV8fChrLnNjYWxlWj0xKTstLXk+LTE7KXU9QWFbeV0sRD1rW3VdLUNbdV0sKEQ+eHx8LXg+RHx8bnVsbCE9elt1XXx8bnVsbCE9TVt1XSkmJihuPSEwLGY9bmV3IHNhKEMsdSxDW3VdLEQsZiksdSBpbiBBJiYoZi5lPUFbdV0pLGYueHMwPTAsZi5wbHVnaW49aCxkLl9vdmVyd3JpdGVQcm9wcy5wdXNoKGYubikpO3JldHVybiBEPXoudHJhbnNmb3JtT3JpZ2luLEMuc3ZnJiYoRHx8ei5zdmdPcmlnaW4pJiYocD1DLnhPZmZzZXQscz1DLnlPZmZzZXQsS2EoYSxnYShEKSxrLHouc3ZnT3JpZ2luLHouc21vb3RoT3JpZ2luKSxmPXRhKEMsInhPcmlnaW4iLCh2P0M6aykueE9yaWdpbixrLnhPcmlnaW4sZixCKSxmPXRhKEMsInlPcmlnaW4iLCh2P0M6aykueU9yaWdpbixrLnlPcmlnaW4sZixCKSwocCE9PUMueE9mZnNldHx8cyE9PUMueU9mZnNldCkmJihmPXRhKEMsInhPZmZzZXQiLHY/cDpDLnhPZmZzZXQsQy54T2Zmc2V0LGYsQiksZj10YShDLCJ5T2Zmc2V0Iix2P3M6Qy55T2Zmc2V0LEMueU9mZnNldCxmLEIpKSxEPXphP251bGw6IjBweCAwcHgiKSwoRHx8RWEmJm0mJkMuek9yaWdpbikmJihCYT8obj0hMCx1PURhLEQ9KER8fCQoYSx1LGUsITEsIjUwJSA1MCUiKSkrIiIsZj1uZXcgc2Eodyx1LDAsMCxmLC0xLEIpLGYuYj13W3VdLGYucGx1Z2luPWgsRWE/KGw9Qy56T3JpZ2luLEQ9RC5zcGxpdCgiICIpLEMuek9yaWdpbj0oRC5sZW5ndGg+MiYmKDA9PT1sfHwiMHB4IiE9PURbMl0pP3BhcnNlRmxvYXQoRFsyXSk6bCl8fDAsZi54czA9Zi5lPURbMF0rIiAiKyhEWzFdfHwiNTAlIikrIiAwcHgiLGY9bmV3IHNhKEMsInpPcmlnaW4iLDAsMCxmLC0xLGYubiksZi5iPWwsZi54czA9Zi5lPUMuek9yaWdpbik6Zi54czA9Zi5lPUQpOmdhKEQrIiIsQykpLG4mJihkLl90cmFuc2Zvcm1UeXBlPUMuc3ZnJiZ6YXx8IW0mJjMhPT10aGlzLl90cmFuc2Zvcm1UeXBlPzI6MyksaiYmKGlbY109aiksZn0scHJlZml4OiEwfSkseGEoImJveFNoYWRvdyIse2RlZmF1bHRWYWx1ZToiMHB4IDBweCAwcHggMHB4ICM5OTkiLHByZWZpeDohMCxjb2xvcjohMCxtdWx0aTohMCxrZXl3b3JkOiJpbnNldCJ9KSx4YSgiYm9yZGVyUmFkaXVzIix7ZGVmYXVsdFZhbHVlOiIwcHgiLHBhcnNlcjpmdW5jdGlvbihhLGIsYyxmLGcsaCl7Yj10aGlzLmZvcm1hdChiKTt2YXIgaSxqLGssbCxtLG4sbyxwLHEscixzLHQsdSx2LHcseCx5PVsiYm9yZGVyVG9wTGVmdFJhZGl1cyIsImJvcmRlclRvcFJpZ2h0UmFkaXVzIiwiYm9yZGVyQm90dG9tUmlnaHRSYWRpdXMiLCJib3JkZXJCb3R0b21MZWZ0UmFkaXVzIl0sej1hLnN0eWxlO2ZvcihxPXBhcnNlRmxvYXQoYS5vZmZzZXRXaWR0aCkscj1wYXJzZUZsb2F0KGEub2Zmc2V0SGVpZ2h0KSxpPWIuc3BsaXQoIiAiKSxqPTA7ajx5Lmxlbmd0aDtqKyspdGhpcy5wLmluZGV4T2YoImJvcmRlciIpJiYoeVtqXT1ZKHlbal0pKSxtPWw9JChhLHlbal0sZSwhMSwiMHB4IiksLTEhPT1tLmluZGV4T2YoIiAiKSYmKGw9bS5zcGxpdCgiICIpLG09bFswXSxsPWxbMV0pLG49az1pW2pdLG89cGFyc2VGbG9hdChtKSx0PW0uc3Vic3RyKChvKyIiKS5sZW5ndGgpLHU9Ij0iPT09bi5jaGFyQXQoMSksdT8ocD1wYXJzZUludChuLmNoYXJBdCgwKSsiMSIsMTApLG49bi5zdWJzdHIoMikscCo9cGFyc2VGbG9hdChuKSxzPW4uc3Vic3RyKChwKyIiKS5sZW5ndGgtKDA+cD8xOjApKXx8IiIpOihwPXBhcnNlRmxvYXQobikscz1uLnN1YnN0cigocCsiIikubGVuZ3RoKSksIiI9PT1zJiYocz1kW2NdfHx0KSxzIT09dCYmKHY9XyhhLCJib3JkZXJMZWZ0IixvLHQpLHc9XyhhLCJib3JkZXJUb3AiLG8sdCksIiUiPT09cz8obT12L3EqMTAwKyIlIixsPXcvcioxMDArIiUiKToiZW0iPT09cz8oeD1fKGEsImJvcmRlckxlZnQiLDEsImVtIiksbT12L3grImVtIixsPXcveCsiZW0iKToobT12KyJweCIsbD13KyJweCIpLHUmJihuPXBhcnNlRmxvYXQobSkrcCtzLGs9cGFyc2VGbG9hdChsKStwK3MpKSxnPXVhKHoseVtqXSxtKyIgIitsLG4rIiAiK2ssITEsIjBweCIsZyk7cmV0dXJuIGd9LHByZWZpeDohMCxmb3JtYXR0ZXI6cGEoIjBweCAwcHggMHB4IDBweCIsITEsITApfSkseGEoImJvcmRlckJvdHRvbUxlZnRSYWRpdXMsYm9yZGVyQm90dG9tUmlnaHRSYWRpdXMsYm9yZGVyVG9wTGVmdFJhZGl1cyxib3JkZXJUb3BSaWdodFJhZGl1cyIse2RlZmF1bHRWYWx1ZToiMHB4IixwYXJzZXI6ZnVuY3Rpb24oYSxiLGMsZCxmLGcpe3JldHVybiB1YShhLnN0eWxlLGMsdGhpcy5mb3JtYXQoJChhLGMsZSwhMSwiMHB4IDBweCIpKSx0aGlzLmZvcm1hdChiKSwhMSwiMHB4IixmKX0scHJlZml4OiEwLGZvcm1hdHRlcjpwYSgiMHB4IDBweCIsITEsITApfSkseGEoImJhY2tncm91bmRQb3NpdGlvbiIse2RlZmF1bHRWYWx1ZToiMCAwIixwYXJzZXI6ZnVuY3Rpb24oYSxiLGMsZCxmLGcpe3ZhciBoLGksaixrLGwsbSxuPSJiYWNrZ3JvdW5kLXBvc2l0aW9uIixvPWV8fFooYSxudWxsKSxxPXRoaXMuZm9ybWF0KChvP3A/by5nZXRQcm9wZXJ0eVZhbHVlKG4rIi14IikrIiAiK28uZ2V0UHJvcGVydHlWYWx1ZShuKyIteSIpOm8uZ2V0UHJvcGVydHlWYWx1ZShuKTphLmN1cnJlbnRTdHlsZS5iYWNrZ3JvdW5kUG9zaXRpb25YKyIgIithLmN1cnJlbnRTdHlsZS5iYWNrZ3JvdW5kUG9zaXRpb25ZKXx8IjAgMCIpLHI9dGhpcy5mb3JtYXQoYik7aWYoLTEhPT1xLmluZGV4T2YoIiUiKSE9KC0xIT09ci5pbmRleE9mKCIlIikpJiZyLnNwbGl0KCIsIikubGVuZ3RoPDImJihtPSQoYSwiYmFja2dyb3VuZEltYWdlIikucmVwbGFjZShELCIiKSxtJiYibm9uZSIhPT1tKSl7Zm9yKGg9cS5zcGxpdCgiICIpLGk9ci5zcGxpdCgiICIpLFEuc2V0QXR0cmlidXRlKCJzcmMiLG0pLGo9MjstLWo+LTE7KXE9aFtqXSxrPS0xIT09cS5pbmRleE9mKCIlIiksayE9PSgtMSE9PWlbal0uaW5kZXhPZigiJSIpKSYmKGw9MD09PWo/YS5vZmZzZXRXaWR0aC1RLndpZHRoOmEub2Zmc2V0SGVpZ2h0LVEuaGVpZ2h0LGhbal09az9wYXJzZUZsb2F0KHEpLzEwMCpsKyJweCI6cGFyc2VGbG9hdChxKS9sKjEwMCsiJSIpO3E9aC5qb2luKCIgIil9cmV0dXJuIHRoaXMucGFyc2VDb21wbGV4KGEuc3R5bGUscSxyLGYsZyl9LGZvcm1hdHRlcjpnYX0pLHhhKCJiYWNrZ3JvdW5kU2l6ZSIse2RlZmF1bHRWYWx1ZToiMCAwIixmb3JtYXR0ZXI6ZnVuY3Rpb24oYSl7cmV0dXJuIGErPSIiLGdhKC0xPT09YS5pbmRleE9mKCIgIik/YSsiICIrYTphKX19KSx4YSgicGVyc3BlY3RpdmUiLHtkZWZhdWx0VmFsdWU6IjBweCIscHJlZml4OiEwfSkseGEoInBlcnNwZWN0aXZlT3JpZ2luIix7ZGVmYXVsdFZhbHVlOiI1MCUgNTAlIixwcmVmaXg6ITB9KSx4YSgidHJhbnNmb3JtU3R5bGUiLHtwcmVmaXg6ITB9KSx4YSgiYmFja2ZhY2VWaXNpYmlsaXR5Iix7cHJlZml4OiEwfSkseGEoInVzZXJTZWxlY3QiLHtwcmVmaXg6ITB9KSx4YSgibWFyZ2luIix7cGFyc2VyOnFhKCJtYXJnaW5Ub3AsbWFyZ2luUmlnaHQsbWFyZ2luQm90dG9tLG1hcmdpbkxlZnQiKX0pLHhhKCJwYWRkaW5nIix7cGFyc2VyOnFhKCJwYWRkaW5nVG9wLHBhZGRpbmdSaWdodCxwYWRkaW5nQm90dG9tLHBhZGRpbmdMZWZ0Iil9KSx4YSgiY2xpcCIse2RlZmF1bHRWYWx1ZToicmVjdCgwcHgsMHB4LDBweCwwcHgpIixwYXJzZXI6ZnVuY3Rpb24oYSxiLGMsZCxmLGcpe3ZhciBoLGksajtyZXR1cm4gOT5wPyhpPWEuY3VycmVudFN0eWxlLGo9OD5wPyIgIjoiLCIsaD0icmVjdCgiK2kuY2xpcFRvcCtqK2kuY2xpcFJpZ2h0K2oraS5jbGlwQm90dG9tK2oraS5jbGlwTGVmdCsiKSIsYj10aGlzLmZvcm1hdChiKS5zcGxpdCgiLCIpLmpvaW4oaikpOihoPXRoaXMuZm9ybWF0KCQoYSx0aGlzLnAsZSwhMSx0aGlzLmRmbHQpKSxiPXRoaXMuZm9ybWF0KGIpKSx0aGlzLnBhcnNlQ29tcGxleChhLnN0eWxlLGgsYixmLGcpfX0pLHhhKCJ0ZXh0U2hhZG93Iix7ZGVmYXVsdFZhbHVlOiIwcHggMHB4IDBweCAjOTk5Iixjb2xvcjohMCxtdWx0aTohMH0pLHhhKCJhdXRvUm91bmQsc3RyaWN0VW5pdHMiLHtwYXJzZXI6ZnVuY3Rpb24oYSxiLGMsZCxlKXtyZXR1cm4gZX19KSx4YSgiYm9yZGVyIix7ZGVmYXVsdFZhbHVlOiIwcHggc29saWQgIzAwMCIscGFyc2VyOmZ1bmN0aW9uKGEsYixjLGQsZixnKXt2YXIgaD0kKGEsImJvcmRlclRvcFdpZHRoIixlLCExLCIwcHgiKSxpPXRoaXMuZm9ybWF0KGIpLnNwbGl0KCIgIiksaj1pWzBdLnJlcGxhY2UodywiIik7cmV0dXJuInB4IiE9PWomJihoPXBhcnNlRmxvYXQoaCkvXyhhLCJib3JkZXJUb3BXaWR0aCIsMSxqKStqKSx0aGlzLnBhcnNlQ29tcGxleChhLnN0eWxlLHRoaXMuZm9ybWF0KGgrIiAiKyQoYSwiYm9yZGVyVG9wU3R5bGUiLGUsITEsInNvbGlkIikrIiAiKyQoYSwiYm9yZGVyVG9wQ29sb3IiLGUsITEsIiMwMDAiKSksaS5qb2luKCIgIiksZixnKX0sY29sb3I6ITAsZm9ybWF0dGVyOmZ1bmN0aW9uKGEpe3ZhciBiPWEuc3BsaXQoIiAiKTtyZXR1cm4gYlswXSsiICIrKGJbMV18fCJzb2xpZCIpKyIgIisoYS5tYXRjaChvYSl8fFsiIzAwMCJdKVswXX19KSx4YSgiYm9yZGVyV2lkdGgiLHsNCnBhcnNlcjpxYSgiYm9yZGVyVG9wV2lkdGgsYm9yZGVyUmlnaHRXaWR0aCxib3JkZXJCb3R0b21XaWR0aCxib3JkZXJMZWZ0V2lkdGgiKX0pLHhhKCJmbG9hdCxjc3NGbG9hdCxzdHlsZUZsb2F0Iix7cGFyc2VyOmZ1bmN0aW9uKGEsYixjLGQsZSxmKXt2YXIgZz1hLnN0eWxlLGg9ImNzc0Zsb2F0ImluIGc/ImNzc0Zsb2F0Ijoic3R5bGVGbG9hdCI7cmV0dXJuIG5ldyBzYShnLGgsMCwwLGUsLTEsYywhMSwwLGdbaF0sYil9fSk7dmFyIFNhPWZ1bmN0aW9uKGEpe3ZhciBiLGM9dGhpcy50LGQ9Yy5maWx0ZXJ8fCQodGhpcy5kYXRhLCJmaWx0ZXIiKXx8IiIsZT10aGlzLnMrdGhpcy5jKmF8MDsxMDA9PT1lJiYoLTE9PT1kLmluZGV4T2YoImF0cml4KCIpJiYtMT09PWQuaW5kZXhPZigicmFkaWVudCgiKSYmLTE9PT1kLmluZGV4T2YoIm9hZGVyKCIpPyhjLnJlbW92ZUF0dHJpYnV0ZSgiZmlsdGVyIiksYj0hJCh0aGlzLmRhdGEsImZpbHRlciIpKTooYy5maWx0ZXI9ZC5yZXBsYWNlKHosIiIpLGI9ITApKSxifHwodGhpcy54bjEmJihjLmZpbHRlcj1kPWR8fCJhbHBoYShvcGFjaXR5PSIrZSsiKSIpLC0xPT09ZC5pbmRleE9mKCJwYWNpdHkiKT8wPT09ZSYmdGhpcy54bjF8fChjLmZpbHRlcj1kKyIgYWxwaGEob3BhY2l0eT0iK2UrIikiKTpjLmZpbHRlcj1kLnJlcGxhY2UoeCwib3BhY2l0eT0iK2UpKX07eGEoIm9wYWNpdHksYWxwaGEsYXV0b0FscGhhIix7ZGVmYXVsdFZhbHVlOiIxIixwYXJzZXI6ZnVuY3Rpb24oYSxiLGMsZCxmLGcpe3ZhciBoPXBhcnNlRmxvYXQoJChhLCJvcGFjaXR5IixlLCExLCIxIikpLGk9YS5zdHlsZSxqPSJhdXRvQWxwaGEiPT09YztyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGImJiI9Ij09PWIuY2hhckF0KDEpJiYoYj0oIi0iPT09Yi5jaGFyQXQoMCk/LTE6MSkqcGFyc2VGbG9hdChiLnN1YnN0cigyKSkraCksaiYmMT09PWgmJiJoaWRkZW4iPT09JChhLCJ2aXNpYmlsaXR5IixlKSYmMCE9PWImJihoPTApLFQ/Zj1uZXcgc2EoaSwib3BhY2l0eSIsaCxiLWgsZik6KGY9bmV3IHNhKGksIm9wYWNpdHkiLDEwMCpoLDEwMCooYi1oKSxmKSxmLnhuMT1qPzE6MCxpLnpvb209MSxmLnR5cGU9MixmLmI9ImFscGhhKG9wYWNpdHk9IitmLnMrIikiLGYuZT0iYWxwaGEob3BhY2l0eT0iKyhmLnMrZi5jKSsiKSIsZi5kYXRhPWEsZi5wbHVnaW49ZyxmLnNldFJhdGlvPVNhKSxqJiYoZj1uZXcgc2EoaSwidmlzaWJpbGl0eSIsMCwwLGYsLTEsbnVsbCwhMSwwLDAhPT1oPyJpbmhlcml0IjoiaGlkZGVuIiwwPT09Yj8iaGlkZGVuIjoiaW5oZXJpdCIpLGYueHMwPSJpbmhlcml0IixkLl9vdmVyd3JpdGVQcm9wcy5wdXNoKGYubiksZC5fb3ZlcndyaXRlUHJvcHMucHVzaChjKSksZn19KTt2YXIgVGE9ZnVuY3Rpb24oYSxiKXtiJiYoYS5yZW1vdmVQcm9wZXJ0eT8oKCJtcyI9PT1iLnN1YnN0cigwLDIpfHwid2Via2l0Ij09PWIuc3Vic3RyKDAsNikpJiYoYj0iLSIrYiksYS5yZW1vdmVQcm9wZXJ0eShiLnJlcGxhY2UoQiwiLSQxIikudG9Mb3dlckNhc2UoKSkpOmEucmVtb3ZlQXR0cmlidXRlKGIpKX0sVWE9ZnVuY3Rpb24oYSl7aWYodGhpcy50Ll9nc0NsYXNzUFQ9dGhpcywxPT09YXx8MD09PWEpe3RoaXMudC5zZXRBdHRyaWJ1dGUoImNsYXNzIiwwPT09YT90aGlzLmI6dGhpcy5lKTtmb3IodmFyIGI9dGhpcy5kYXRhLGM9dGhpcy50LnN0eWxlO2I7KWIudj9jW2IucF09Yi52OlRhKGMsYi5wKSxiPWIuX25leHQ7MT09PWEmJnRoaXMudC5fZ3NDbGFzc1BUPT09dGhpcyYmKHRoaXMudC5fZ3NDbGFzc1BUPW51bGwpfWVsc2UgdGhpcy50LmdldEF0dHJpYnV0ZSgiY2xhc3MiKSE9PXRoaXMuZSYmdGhpcy50LnNldEF0dHJpYnV0ZSgiY2xhc3MiLHRoaXMuZSl9O3hhKCJjbGFzc05hbWUiLHtwYXJzZXI6ZnVuY3Rpb24oYSxiLGQsZixnLGgsaSl7dmFyIGosayxsLG0sbixvPWEuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIixwPWEuc3R5bGUuY3NzVGV4dDtpZihnPWYuX2NsYXNzTmFtZVBUPW5ldyBzYShhLGQsMCwwLGcsMiksZy5zZXRSYXRpbz1VYSxnLnByPS0xMSxjPSEwLGcuYj1vLGs9YmEoYSxlKSxsPWEuX2dzQ2xhc3NQVCl7Zm9yKG09e30sbj1sLmRhdGE7bjspbVtuLnBdPTEsbj1uLl9uZXh0O2wuc2V0UmF0aW8oMSl9cmV0dXJuIGEuX2dzQ2xhc3NQVD1nLGcuZT0iPSIhPT1iLmNoYXJBdCgxKT9iOm8ucmVwbGFjZShuZXcgUmVnRXhwKCIoPzpcXHN8XikiK2Iuc3Vic3RyKDIpKyIoPyFbXFx3LV0pIiksIiIpKygiKyI9PT1iLmNoYXJBdCgwKT8iICIrYi5zdWJzdHIoMik6IiIpLGEuc2V0QXR0cmlidXRlKCJjbGFzcyIsZy5lKSxqPWNhKGEsayxiYShhKSxpLG0pLGEuc2V0QXR0cmlidXRlKCJjbGFzcyIsbyksZy5kYXRhPWouZmlyc3RNUFQsYS5zdHlsZS5jc3NUZXh0PXAsZz1nLnhmaXJzdD1mLnBhcnNlKGEsai5kaWZzLGcsaCl9fSk7dmFyIFZhPWZ1bmN0aW9uKGEpe2lmKCgxPT09YXx8MD09PWEpJiZ0aGlzLmRhdGEuX3RvdGFsVGltZT09PXRoaXMuZGF0YS5fdG90YWxEdXJhdGlvbiYmImlzRnJvbVN0YXJ0IiE9PXRoaXMuZGF0YS5kYXRhKXt2YXIgYixjLGQsZSxmLGc9dGhpcy50LnN0eWxlLGg9aS50cmFuc2Zvcm0ucGFyc2U7aWYoImFsbCI9PT10aGlzLmUpZy5jc3NUZXh0PSIiLGU9ITA7ZWxzZSBmb3IoYj10aGlzLmUuc3BsaXQoIiAiKS5qb2luKCIiKS5zcGxpdCgiLCIpLGQ9Yi5sZW5ndGg7LS1kPi0xOyljPWJbZF0saVtjXSYmKGlbY10ucGFyc2U9PT1oP2U9ITA6Yz0idHJhbnNmb3JtT3JpZ2luIj09PWM/RGE6aVtjXS5wKSxUYShnLGMpO2UmJihUYShnLEJhKSxmPXRoaXMudC5fZ3NUcmFuc2Zvcm0sZiYmKGYuc3ZnJiYodGhpcy50LnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1zdmctb3JpZ2luIiksdGhpcy50LnJlbW92ZUF0dHJpYnV0ZSgidHJhbnNmb3JtIikpLGRlbGV0ZSB0aGlzLnQuX2dzVHJhbnNmb3JtKSl9fTtmb3IoeGEoImNsZWFyUHJvcHMiLHtwYXJzZXI6ZnVuY3Rpb24oYSxiLGQsZSxmKXtyZXR1cm4gZj1uZXcgc2EoYSxkLDAsMCxmLDIpLGYuc2V0UmF0aW89VmEsZi5lPWIsZi5wcj0tMTAsZi5kYXRhPWUuX3R3ZWVuLGM9ITAsZn19KSxqPSJiZXppZXIsdGhyb3dQcm9wcyxwaHlzaWNzUHJvcHMscGh5c2ljczJEIi5zcGxpdCgiLCIpLHZhPWoubGVuZ3RoO3ZhLS07KXlhKGpbdmFdKTtqPWcucHJvdG90eXBlLGouX2ZpcnN0UFQ9ai5fbGFzdFBhcnNlZFRyYW5zZm9ybT1qLl90cmFuc2Zvcm09bnVsbCxqLl9vbkluaXRUd2Vlbj1mdW5jdGlvbihhLGIsaCxqKXtpZighYS5ub2RlVHlwZSlyZXR1cm4hMTt0aGlzLl90YXJnZXQ9cT1hLHRoaXMuX3R3ZWVuPWgsdGhpcy5fdmFycz1iLHI9aixrPWIuYXV0b1JvdW5kLGM9ITEsZD1iLnN1ZmZpeE1hcHx8Zy5zdWZmaXhNYXAsZT1aKGEsIiIpLGY9dGhpcy5fb3ZlcndyaXRlUHJvcHM7dmFyIG4scCxzLHQsdSx2LHcseCx6LEE9YS5zdHlsZTtpZihsJiYiIj09PUEuekluZGV4JiYobj0kKGEsInpJbmRleCIsZSksKCJhdXRvIj09PW58fCIiPT09bikmJnRoaXMuX2FkZExhenlTZXQoQSwiekluZGV4IiwwKSksInN0cmluZyI9PXR5cGVvZiBiJiYodD1BLmNzc1RleHQsbj1iYShhLGUpLEEuY3NzVGV4dD10KyI7IitiLG49Y2EoYSxuLGJhKGEpKS5kaWZzLCFUJiZ5LnRlc3QoYikmJihuLm9wYWNpdHk9cGFyc2VGbG9hdChSZWdFeHAuJDEpKSxiPW4sQS5jc3NUZXh0PXQpLGIuY2xhc3NOYW1lP3RoaXMuX2ZpcnN0UFQ9cD1pLmNsYXNzTmFtZS5wYXJzZShhLGIuY2xhc3NOYW1lLCJjbGFzc05hbWUiLHRoaXMsbnVsbCxudWxsLGIpOnRoaXMuX2ZpcnN0UFQ9cD10aGlzLnBhcnNlKGEsYixudWxsKSx0aGlzLl90cmFuc2Zvcm1UeXBlKXtmb3Ioej0zPT09dGhpcy5fdHJhbnNmb3JtVHlwZSxCYT9tJiYobD0hMCwiIj09PUEuekluZGV4JiYodz0kKGEsInpJbmRleCIsZSksKCJhdXRvIj09PXd8fCIiPT09dykmJnRoaXMuX2FkZExhenlTZXQoQSwiekluZGV4IiwwKSksbyYmdGhpcy5fYWRkTGF6eVNldChBLCJXZWJraXRCYWNrZmFjZVZpc2liaWxpdHkiLHRoaXMuX3ZhcnMuV2Via2l0QmFja2ZhY2VWaXNpYmlsaXR5fHwoej8idmlzaWJsZSI6ImhpZGRlbiIpKSk6QS56b29tPTEscz1wO3MmJnMuX25leHQ7KXM9cy5fbmV4dDt4PW5ldyBzYShhLCJ0cmFuc2Zvcm0iLDAsMCxudWxsLDIpLHRoaXMuX2xpbmtDU1NQKHgsbnVsbCxzKSx4LnNldFJhdGlvPUJhP1JhOlFhLHguZGF0YT10aGlzLl90cmFuc2Zvcm18fFBhKGEsZSwhMCkseC50d2Vlbj1oLHgucHI9LTEsZi5wb3AoKX1pZihjKXtmb3IoO3A7KXtmb3Iodj1wLl9uZXh0LHM9dDtzJiZzLnByPnAucHI7KXM9cy5fbmV4dDsocC5fcHJldj1zP3MuX3ByZXY6dSk/cC5fcHJldi5fbmV4dD1wOnQ9cCwocC5fbmV4dD1zKT9zLl9wcmV2PXA6dT1wLHA9dn10aGlzLl9maXJzdFBUPXR9cmV0dXJuITB9LGoucGFyc2U9ZnVuY3Rpb24oYSxiLGMsZil7dmFyIGcsaCxqLGwsbSxuLG8scCxzLHQsdT1hLnN0eWxlO2ZvcihnIGluIGIpbj1iW2ddLCJmdW5jdGlvbiI9PXR5cGVvZiBuJiYobj1uKHIscSkpLGg9aVtnXSxoP2M9aC5wYXJzZShhLG4sZyx0aGlzLGMsZixiKToobT0kKGEsZyxlKSsiIixzPSJzdHJpbmciPT10eXBlb2YgbiwiY29sb3IiPT09Z3x8ImZpbGwiPT09Z3x8InN0cm9rZSI9PT1nfHwtMSE9PWcuaW5kZXhPZigiQ29sb3IiKXx8cyYmQS50ZXN0KG4pPyhzfHwobj1tYShuKSxuPShuLmxlbmd0aD4zPyJyZ2JhKCI6InJnYigiKStuLmpvaW4oIiwiKSsiKSIpLGM9dWEodSxnLG0sbiwhMCwidHJhbnNwYXJlbnQiLGMsMCxmKSk6cyYmSi50ZXN0KG4pP2M9dWEodSxnLG0sbiwhMCxudWxsLGMsMCxmKTooaj1wYXJzZUZsb2F0KG0pLG89anx8MD09PWo/bS5zdWJzdHIoKGorIiIpLmxlbmd0aCk6IiIsKCIiPT09bXx8ImF1dG8iPT09bSkmJigid2lkdGgiPT09Z3x8ImhlaWdodCI9PT1nPyhqPWZhKGEsZyxlKSxvPSJweCIpOiJsZWZ0Ij09PWd8fCJ0b3AiPT09Zz8oaj1hYShhLGcsZSksbz0icHgiKTooaj0ib3BhY2l0eSIhPT1nPzA6MSxvPSIiKSksdD1zJiYiPSI9PT1uLmNoYXJBdCgxKSx0PyhsPXBhcnNlSW50KG4uY2hhckF0KDApKyIxIiwxMCksbj1uLnN1YnN0cigyKSxsKj1wYXJzZUZsb2F0KG4pLHA9bi5yZXBsYWNlKHcsIiIpKToobD1wYXJzZUZsb2F0KG4pLHA9cz9uLnJlcGxhY2UodywiIik6IiIpLCIiPT09cCYmKHA9ZyBpbiBkP2RbZ106byksbj1sfHwwPT09bD8odD9sK2o6bCkrcDpiW2ddLG8hPT1wJiYiIiE9PXAmJihsfHwwPT09bCkmJmomJihqPV8oYSxnLGosbyksIiUiPT09cD8oai89XyhhLGcsMTAwLCIlIikvMTAwLGIuc3RyaWN0VW5pdHMhPT0hMCYmKG09aisiJSIpKToiZW0iPT09cHx8InJlbSI9PT1wfHwidnciPT09cHx8InZoIj09PXA/ai89XyhhLGcsMSxwKToicHgiIT09cCYmKGw9XyhhLGcsbCxwKSxwPSJweCIpLHQmJihsfHwwPT09bCkmJihuPWwraitwKSksdCYmKGwrPWopLCFqJiYwIT09anx8IWwmJjAhPT1sP3ZvaWQgMCE9PXVbZ10mJihufHxuKyIiIT0iTmFOIiYmbnVsbCE9bik/KGM9bmV3IHNhKHUsZyxsfHxqfHwwLDAsYywtMSxnLCExLDAsbSxuKSxjLnhzMD0ibm9uZSIhPT1ufHwiZGlzcGxheSIhPT1nJiYtMT09PWcuaW5kZXhPZigiU3R5bGUiKT9uOm0pOlYoImludmFsaWQgIitnKyIgdHdlZW4gdmFsdWU6ICIrYltnXSk6KGM9bmV3IHNhKHUsZyxqLGwtaixjLDAsZyxrIT09ITEmJigicHgiPT09cHx8InpJbmRleCI9PT1nKSwwLG0sbiksYy54czA9cCkpKSxmJiZjJiYhYy5wbHVnaW4mJihjLnBsdWdpbj1mKTtyZXR1cm4gY30sai5zZXRSYXRpbz1mdW5jdGlvbihhKXt2YXIgYixjLGQsZT10aGlzLl9maXJzdFBULGY9MWUtNjtpZigxIT09YXx8dGhpcy5fdHdlZW4uX3RpbWUhPT10aGlzLl90d2Vlbi5fZHVyYXRpb24mJjAhPT10aGlzLl90d2Vlbi5fdGltZSlpZihhfHx0aGlzLl90d2Vlbi5fdGltZSE9PXRoaXMuX3R3ZWVuLl9kdXJhdGlvbiYmMCE9PXRoaXMuX3R3ZWVuLl90aW1lfHx0aGlzLl90d2Vlbi5fcmF3UHJldlRpbWU9PT0tMWUtNilmb3IoO2U7KXtpZihiPWUuYyphK2UucyxlLnI/Yj1NYXRoLnJvdW5kKGIpOmY+YiYmYj4tZiYmKGI9MCksZS50eXBlKWlmKDE9PT1lLnR5cGUpaWYoZD1lLmwsMj09PWQpZS50W2UucF09ZS54czArYitlLnhzMStlLnhuMStlLnhzMjtlbHNlIGlmKDM9PT1kKWUudFtlLnBdPWUueHMwK2IrZS54czErZS54bjErZS54czIrZS54bjIrZS54czM7ZWxzZSBpZig0PT09ZCllLnRbZS5wXT1lLnhzMCtiK2UueHMxK2UueG4xK2UueHMyK2UueG4yK2UueHMzK2UueG4zK2UueHM0O2Vsc2UgaWYoNT09PWQpZS50W2UucF09ZS54czArYitlLnhzMStlLnhuMStlLnhzMitlLnhuMitlLnhzMytlLnhuMytlLnhzNCtlLnhuNCtlLnhzNTtlbHNle2ZvcihjPWUueHMwK2IrZS54czEsZD0xO2Q8ZS5sO2QrKyljKz1lWyJ4biIrZF0rZVsieHMiKyhkKzEpXTtlLnRbZS5wXT1jfWVsc2UtMT09PWUudHlwZT9lLnRbZS5wXT1lLnhzMDplLnNldFJhdGlvJiZlLnNldFJhdGlvKGEpO2Vsc2UgZS50W2UucF09YitlLnhzMDtlPWUuX25leHR9ZWxzZSBmb3IoO2U7KTIhPT1lLnR5cGU/ZS50W2UucF09ZS5iOmUuc2V0UmF0aW8oYSksZT1lLl9uZXh0O2Vsc2UgZm9yKDtlOyl7aWYoMiE9PWUudHlwZSlpZihlLnImJi0xIT09ZS50eXBlKWlmKGI9TWF0aC5yb3VuZChlLnMrZS5jKSxlLnR5cGUpe2lmKDE9PT1lLnR5cGUpe2ZvcihkPWUubCxjPWUueHMwK2IrZS54czEsZD0xO2Q8ZS5sO2QrKyljKz1lWyJ4biIrZF0rZVsieHMiKyhkKzEpXTtlLnRbZS5wXT1jfX1lbHNlIGUudFtlLnBdPWIrZS54czA7ZWxzZSBlLnRbZS5wXT1lLmU7ZWxzZSBlLnNldFJhdGlvKGEpO2U9ZS5fbmV4dH19LGouX2VuYWJsZVRyYW5zZm9ybXM9ZnVuY3Rpb24oYSl7dGhpcy5fdHJhbnNmb3JtPXRoaXMuX3RyYW5zZm9ybXx8UGEodGhpcy5fdGFyZ2V0LGUsITApLHRoaXMuX3RyYW5zZm9ybVR5cGU9dGhpcy5fdHJhbnNmb3JtLnN2ZyYmemF8fCFhJiYzIT09dGhpcy5fdHJhbnNmb3JtVHlwZT8yOjN9O3ZhciBXYT1mdW5jdGlvbihhKXt0aGlzLnRbdGhpcy5wXT10aGlzLmUsdGhpcy5kYXRhLl9saW5rQ1NTUCh0aGlzLHRoaXMuX25leHQsbnVsbCwhMCl9O2ouX2FkZExhenlTZXQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMuX2ZpcnN0UFQ9bmV3IHNhKGEsYiwwLDAsdGhpcy5fZmlyc3RQVCwyKTtkLmU9YyxkLnNldFJhdGlvPVdhLGQuZGF0YT10aGlzfSxqLl9saW5rQ1NTUD1mdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4gYSYmKGImJihiLl9wcmV2PWEpLGEuX25leHQmJihhLl9uZXh0Ll9wcmV2PWEuX3ByZXYpLGEuX3ByZXY/YS5fcHJldi5fbmV4dD1hLl9uZXh0OnRoaXMuX2ZpcnN0UFQ9PT1hJiYodGhpcy5fZmlyc3RQVD1hLl9uZXh0LGQ9ITApLGM/Yy5fbmV4dD1hOmR8fG51bGwhPT10aGlzLl9maXJzdFBUfHwodGhpcy5fZmlyc3RQVD1hKSxhLl9uZXh0PWIsYS5fcHJldj1jKSxhfSxqLl9tb2Q9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXRoaXMuX2ZpcnN0UFQ7YjspImZ1bmN0aW9uIj09dHlwZW9mIGFbYi5wXSYmYVtiLnBdPT09TWF0aC5yb3VuZCYmKGIucj0xKSxiPWIuX25leHR9LGouX2tpbGw9ZnVuY3Rpb24oYil7dmFyIGMsZCxlLGY9YjtpZihiLmF1dG9BbHBoYXx8Yi5hbHBoYSl7Zj17fTtmb3IoZCBpbiBiKWZbZF09YltkXTtmLm9wYWNpdHk9MSxmLmF1dG9BbHBoYSYmKGYudmlzaWJpbGl0eT0xKX1mb3IoYi5jbGFzc05hbWUmJihjPXRoaXMuX2NsYXNzTmFtZVBUKSYmKGU9Yy54Zmlyc3QsZSYmZS5fcHJldj90aGlzLl9saW5rQ1NTUChlLl9wcmV2LGMuX25leHQsZS5fcHJldi5fcHJldik6ZT09PXRoaXMuX2ZpcnN0UFQmJih0aGlzLl9maXJzdFBUPWMuX25leHQpLGMuX25leHQmJnRoaXMuX2xpbmtDU1NQKGMuX25leHQsYy5fbmV4dC5fbmV4dCxlLl9wcmV2KSx0aGlzLl9jbGFzc05hbWVQVD1udWxsKSxjPXRoaXMuX2ZpcnN0UFQ7YzspYy5wbHVnaW4mJmMucGx1Z2luIT09ZCYmYy5wbHVnaW4uX2tpbGwmJihjLnBsdWdpbi5fa2lsbChiKSxkPWMucGx1Z2luKSxjPWMuX25leHQ7cmV0dXJuIGEucHJvdG90eXBlLl9raWxsLmNhbGwodGhpcyxmKX07dmFyIFhhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlLGYsZztpZihhLnNsaWNlKWZvcihlPWEubGVuZ3RoOy0tZT4tMTspWGEoYVtlXSxiLGMpO2Vsc2UgZm9yKGQ9YS5jaGlsZE5vZGVzLGU9ZC5sZW5ndGg7LS1lPi0xOylmPWRbZV0sZz1mLnR5cGUsZi5zdHlsZSYmKGIucHVzaChiYShmKSksYyYmYy5wdXNoKGYpKSwxIT09ZyYmOSE9PWcmJjExIT09Z3x8IWYuY2hpbGROb2Rlcy5sZW5ndGh8fFhhKGYsYixjKX07cmV0dXJuIGcuY2FzY2FkZVRvPWZ1bmN0aW9uKGEsYyxkKXt2YXIgZSxmLGcsaCxpPWIudG8oYSxjLGQpLGo9W2ldLGs9W10sbD1bXSxtPVtdLG49Yi5faW50ZXJuYWxzLnJlc2VydmVkUHJvcHM7Zm9yKGE9aS5fdGFyZ2V0c3x8aS50YXJnZXQsWGEoYSxrLG0pLGkucmVuZGVyKGMsITAsITApLFhhKGEsbCksaS5yZW5kZXIoMCwhMCwhMCksaS5fZW5hYmxlZCghMCksZT1tLmxlbmd0aDstLWU+LTE7KWlmKGY9Y2EobVtlXSxrW2VdLGxbZV0pLGYuZmlyc3RNUFQpe2Y9Zi5kaWZzO2ZvcihnIGluIGQpbltnXSYmKGZbZ109ZFtnXSk7aD17fTtmb3IoZyBpbiBmKWhbZ109a1tlXVtnXTtqLnB1c2goYi5mcm9tVG8obVtlXSxjLGgsZikpfXJldHVybiBqfSxhLmFjdGl2YXRlKFtnXSksZ30sITApfSksX2dzU2NvcGUuX2dzRGVmaW5lJiZfZ3NTY29wZS5fZ3NRdWV1ZS5wb3AoKSgpLGZ1bmN0aW9uKGEpeyJ1c2Ugc3RyaWN0Ijt2YXIgYj1mdW5jdGlvbigpe3JldHVybihfZ3NTY29wZS5HcmVlblNvY2tHbG9iYWxzfHxfZ3NTY29wZSlbYV19OyJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKFsiVHdlZW5MaXRlIl0sYik6InVuZGVmaW5lZCIhPXR5cGVvZiBtb2R1bGUmJm1vZHVsZS5leHBvcnRzJiYocmVxdWlyZSgiLi4vVHdlZW5MaXRlLmpzIiksbW9kdWxlLmV4cG9ydHM9YigpKX0oIkNTU1BsdWdpbiIpOw0KDQovKiBTUExJVCBURVhUIFVUSUwgKi8NCi8qIQ0KICogVkVSU0lPTjogMC40LjANCiAqIERBVEU6IDIwMTYtMDctMDkNCiAqIFVQREFURVMgQU5EIERPQ1MgQVQ6IGh0dHA6Ly9ncmVlbnNvY2suY29tDQogKg0KICogQGxpY2Vuc2UgQ29weXJpZ2h0IChjKSAyMDA4LTIwMTYsIEdyZWVuU29jay4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIFNwbGl0VGV4dCBpcyBhIENsdWIgR3JlZW5Tb2NrIG1lbWJlcnNoaXAgYmVuZWZpdDsgWW91IG11c3QgaGF2ZSBhIHZhbGlkIG1lbWJlcnNoaXAgdG8gdXNlDQogKiB0aGlzIGNvZGUgd2l0aG91dCB2aW9sYXRpbmcgdGhlIHRlcm1zIG9mIHVzZS4gVmlzaXQgaHR0cDovL2dyZWVuc29jay5jb20vY2x1Yi8gdG8gc2lnbiB1cCBvciBnZXQgbW9yZSBkZXRhaWxzLg0KICogVGhpcyB3b3JrIGlzIHN1YmplY3QgdG8gdGhlIHNvZnR3YXJlIGFncmVlbWVudCB0aGF0IHdhcyBpc3N1ZWQgd2l0aCB5b3VyIG1lbWJlcnNoaXAuDQogKiANCiAqIEBhdXRob3I6IEphY2sgRG95bGUsIGphY2tAZ3JlZW5zb2NrLmNvbQ0KICovDQp2YXIgX2dzU2NvcGU9InVuZGVmaW5lZCIhPXR5cGVvZiBtb2R1bGUmJm1vZHVsZS5leHBvcnRzJiYidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6dGhpc3x8d2luZG93OyFmdW5jdGlvbihhKXsidXNlIHN0cmljdCI7dmFyIGI9YS5HcmVlblNvY2tHbG9iYWxzfHxhLGM9ZnVuY3Rpb24oYSl7dmFyIGMsZD1hLnNwbGl0KCIuIiksZT1iO2ZvcihjPTA7YzxkLmxlbmd0aDtjKyspZVtkW2NdXT1lPWVbZFtjXV18fHt9O3JldHVybiBlfSxkPWMoImNvbS5ncmVlbnNvY2sudXRpbHMiKSxlPWZ1bmN0aW9uKGEpe3ZhciBiPWEubm9kZVR5cGUsYz0iIjtpZigxPT09Ynx8OT09PWJ8fDExPT09Yil7aWYoInN0cmluZyI9PXR5cGVvZiBhLnRleHRDb250ZW50KXJldHVybiBhLnRleHRDb250ZW50O2ZvcihhPWEuZmlyc3RDaGlsZDthO2E9YS5uZXh0U2libGluZyljKz1lKGEpfWVsc2UgaWYoMz09PWJ8fDQ9PT1iKXJldHVybiBhLm5vZGVWYWx1ZTtyZXR1cm4gY30sZj1kb2N1bWVudCxnPWYuZGVmYXVsdFZpZXc/Zi5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlOmZ1bmN0aW9uKCl7fSxoPS8oW0EtWl0pL2csaT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZTtyZXR1cm4oYz1jfHxnKGEsbnVsbCkpPyhhPWMuZ2V0UHJvcGVydHlWYWx1ZShiLnJlcGxhY2UoaCwiLSQxIikudG9Mb3dlckNhc2UoKSksZT1hfHxjLmxlbmd0aD9hOmNbYl0pOmEuY3VycmVudFN0eWxlJiYoYz1hLmN1cnJlbnRTdHlsZSxlPWNbYl0pLGQ/ZTpwYXJzZUludChlLDEwKXx8MH0saj1mdW5jdGlvbihhKXtyZXR1cm4gYS5sZW5ndGgmJmFbMF0mJihhWzBdLm5vZGVUeXBlJiZhWzBdLnN0eWxlJiYhYS5ub2RlVHlwZXx8YVswXS5sZW5ndGgmJmFbMF1bMF0pPyEwOiExfSxrPWZ1bmN0aW9uKGEpe3ZhciBiLGMsZCxlPVtdLGY9YS5sZW5ndGg7Zm9yKGI9MDtmPmI7YisrKWlmKGM9YVtiXSxqKGMpKWZvcihkPWMubGVuZ3RoLGQ9MDtkPGMubGVuZ3RoO2QrKyllLnB1c2goY1tkXSk7ZWxzZSBlLnB1c2goYyk7cmV0dXJuIGV9LGw9Lyg/OlxyfFxufFxzXHN8XHRcdCkvZyxtPSIpZWVmZWMzMDMwNzlhZDE3NDA1YyIsbj0vKD86PGJyPnw8YnJcLz58PGJyIFwvPikvZ2ksbz1mLmFsbCYmIWYuYWRkRXZlbnRMaXN0ZW5lcixwPSIgc3R5bGU9J3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrOyIrKG8/IipkaXNwbGF5OmlubGluZTsqem9vbToxOyciOiInIikscT1mdW5jdGlvbihhLGIpe2E9YXx8IiI7dmFyIGM9LTEhPT1hLmluZGV4T2YoIisrIiksZD0xO3JldHVybiBjJiYoYT1hLnNwbGl0KCIrKyIpLmpvaW4oIiIpKSxmdW5jdGlvbigpe3JldHVybiI8IitiK3ArKGE/IiBjbGFzcz0nIithKyhjP2QrKzoiIikrIic+IjoiPiIpfX0scj1kLlNwbGl0VGV4dD1iLlNwbGl0VGV4dD1mdW5jdGlvbihhLGIpe2lmKCJzdHJpbmciPT10eXBlb2YgYSYmKGE9ci5zZWxlY3RvcihhKSksIWEpdGhyb3ciY2Fubm90IHNwbGl0IGEgbnVsbCBlbGVtZW50LiI7dGhpcy5lbGVtZW50cz1qKGEpP2soYSk6W2FdLHRoaXMuY2hhcnM9W10sdGhpcy53b3Jkcz1bXSx0aGlzLmxpbmVzPVtdLHRoaXMuX29yaWdpbmFscz1bXSx0aGlzLnZhcnM9Ynx8e30sdGhpcy5zcGxpdChiKX0scz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5ub2RlVHlwZTtpZigxPT09ZHx8OT09PWR8fDExPT09ZClmb3IoYT1hLmZpcnN0Q2hpbGQ7YTthPWEubmV4dFNpYmxpbmcpcyhhLGIsYyk7ZWxzZSgzPT09ZHx8ND09PWQpJiYoYS5ub2RlVmFsdWU9YS5ub2RlVmFsdWUuc3BsaXQoYikuam9pbihjKSl9LHQ9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9Yi5sZW5ndGg7LS1jPi0xOylhLnB1c2goYltjXSl9LHU9ZnVuY3Rpb24oYSxiLGMsZCxoKXtuLnRlc3QoYS5pbm5lckhUTUwpJiYoYS5pbm5lckhUTUw9YS5pbm5lckhUTUwucmVwbGFjZShuLG0pKTt2YXIgaixrLG8scCxyLHUsdix3LHgseSx6LEEsQixDLEQ9ZShhKSxFPWIuc3Bhbj8ic3BhbiI6ImRpdiIsRj1iLnR5cGV8fGIuc3BsaXR8fCJjaGFycyx3b3JkcyxsaW5lcyIsRz0tMSE9PUYuaW5kZXhPZigibGluZXMiKT9bXTpudWxsLEg9LTEhPT1GLmluZGV4T2YoIndvcmRzIiksST0tMSE9PUYuaW5kZXhPZigiY2hhcnMiKSxKPSJhYnNvbHV0ZSI9PT1iLnBvc2l0aW9ufHxiLmFic29sdXRlPT09ITAsSz1iLndvcmREZWxpbWl0ZXJ8fCIgIixMPSIgIiE9PUs/IiI6Sj8iJiMxNzM7ICI6IiAiLE09LTk5OSxOPWcoYSksTz1pKGEsInBhZGRpbmdMZWZ0IixOKSxQPWkoYSwiYm9yZGVyQm90dG9tV2lkdGgiLE4pK2koYSwiYm9yZGVyVG9wV2lkdGgiLE4pLFE9aShhLCJib3JkZXJMZWZ0V2lkdGgiLE4pK2koYSwiYm9yZGVyUmlnaHRXaWR0aCIsTiksUj1pKGEsInBhZGRpbmdUb3AiLE4pK2koYSwicGFkZGluZ0JvdHRvbSIsTiksUz1pKGEsInBhZGRpbmdMZWZ0IixOKStpKGEsInBhZGRpbmdSaWdodCIsTiksVD1pKGEsInRleHRBbGlnbiIsTiwhMCksVT0uMippKGEsImZvbnRTaXplIiksVj1hLmNsaWVudEhlaWdodCxXPWEuY2xpZW50V2lkdGgsWD1iLnNwYW4/Ijwvc3Bhbj4iOiI8L2Rpdj4iLFk9cShiLndvcmRzQ2xhc3MsRSksWj1xKGIuY2hhcnNDbGFzcyxFKSwkPS0xIT09KGIubGluZXNDbGFzc3x8IiIpLmluZGV4T2YoIisrIiksXz1iLmxpbmVzQ2xhc3MsYWE9LTEhPT1ELmluZGV4T2YoIjwiKSxiYT0hMCxjYT1bXSxkYT1bXSxlYT1bXTtmb3IoIWIucmVkdWNlV2hpdGVTcGFjZSE9ITEmJihEPUQucmVwbGFjZShsLCIiKSksJCYmKF89Xy5zcGxpdCgiKysiKS5qb2luKCIiKSksYWEmJihEPUQuc3BsaXQoIjwiKS5qb2luKCJ7e0xUfX0iKSksaj1ELmxlbmd0aCxwPVkoKSxyPTA7aj5yO3IrKylpZih2PUQuY2hhckF0KHIpLCIpIj09PXYmJkQuc3Vic3RyKHIsMjApPT09bSlwKz0oYmE/WDoiIikrIjxCUi8+IixiYT0hMSxyIT09ai0yMCYmRC5zdWJzdHIocisyMCwyMCkhPT1tJiYocCs9IiAiK1koKSxiYT0hMCkscis9MTk7ZWxzZSBpZih2PT09SyYmRC5jaGFyQXQoci0xKSE9PUsmJnIhPT1qLTEmJkQuc3Vic3RyKHItMjAsMjApIT09bSl7Zm9yKHArPWJhP1g6IiIsYmE9ITE7RC5jaGFyQXQocisxKT09PUs7KXArPUwscisrOygiKSIhPT1ELmNoYXJBdChyKzEpfHxELnN1YnN0cihyKzEsMjApIT09bSkmJihwKz1MK1koKSxiYT0hMCl9ZWxzZSJ7Ij09PXYmJiJ7e0xUfX0iPT09RC5zdWJzdHIociw2KT8ocCs9ST9aKCkrInt7TFR9fTwvIitFKyI+Ijoie3tMVH19IixyKz01KTpwKz1JJiYiICIhPT12P1ooKSt2KyI8LyIrRSsiPiI6djtmb3IoYS5pbm5lckhUTUw9cCsoYmE/WDoiIiksYWEmJnMoYSwie3tMVH19IiwiPCIpLHU9YS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLGo9dS5sZW5ndGgsdz1bXSxyPTA7aj5yO3IrKyl3W3JdPXVbcl07aWYoR3x8Silmb3Iocj0wO2o+cjtyKyspeD13W3JdLG89eC5wYXJlbnROb2RlPT09YSwob3x8Snx8SSYmIUgpJiYoeT14Lm9mZnNldFRvcCxHJiZvJiZNYXRoLmFicyh5LU0pPlUmJiJCUiIhPT14Lm5vZGVOYW1lJiYoaz1bXSxHLnB1c2goayksTT15KSxKJiYoeC5feD14Lm9mZnNldExlZnQseC5feT15LHguX3c9eC5vZmZzZXRXaWR0aCx4Ll9oPXgub2Zmc2V0SGVpZ2h0KSxHJiYoSCE9PW8mJkl8fChrLnB1c2goeCkseC5feC09TyksbyYmciYmKHdbci0xXS5fd29yZEVuZD0hMCksIkJSIj09PXgubm9kZU5hbWUmJngubmV4dFNpYmxpbmcmJiJCUiI9PT14Lm5leHRTaWJsaW5nLm5vZGVOYW1lJiZHLnB1c2goW10pKSk7Zm9yKHI9MDtqPnI7cisrKXg9d1tyXSxvPXgucGFyZW50Tm9kZT09PWEsIkJSIiE9PXgubm9kZU5hbWU/KEomJihBPXguc3R5bGUsSHx8b3x8KHguX3grPXgucGFyZW50Tm9kZS5feCx4Ll95Kz14LnBhcmVudE5vZGUuX3kpLEEubGVmdD14Ll94KyJweCIsQS50b3A9eC5feSsicHgiLEEucG9zaXRpb249ImFic29sdXRlIixBLmRpc3BsYXk9ImJsb2NrIixBLndpZHRoPXguX3crMSsicHgiLEEuaGVpZ2h0PXguX2grInB4IiksSD9vJiYiIiE9PXguaW5uZXJIVE1MP2RhLnB1c2goeCk6SSYmY2EucHVzaCh4KTpvPyhhLnJlbW92ZUNoaWxkKHgpLHcuc3BsaWNlKHItLSwxKSxqLS0pOiFvJiZJJiYoeT0hRyYmIUomJngubmV4dFNpYmxpbmcsYS5hcHBlbmRDaGlsZCh4KSx5fHxhLmFwcGVuZENoaWxkKGYuY3JlYXRlVGV4dE5vZGUoIiAiKSksY2EucHVzaCh4KSkpOkd8fEo/KGEucmVtb3ZlQ2hpbGQoeCksdy5zcGxpY2Uoci0tLDEpLGotLSk6SHx8YS5hcHBlbmRDaGlsZCh4KTtpZihHKXtmb3IoSiYmKHo9Zi5jcmVhdGVFbGVtZW50KEUpLGEuYXBwZW5kQ2hpbGQoeiksQj16Lm9mZnNldFdpZHRoKyJweCIseT16Lm9mZnNldFBhcmVudD09PWE/MDphLm9mZnNldExlZnQsYS5yZW1vdmVDaGlsZCh6KSksQT1hLnN0eWxlLmNzc1RleHQsYS5zdHlsZS5jc3NUZXh0PSJkaXNwbGF5Om5vbmU7IjthLmZpcnN0Q2hpbGQ7KWEucmVtb3ZlQ2hpbGQoYS5maXJzdENoaWxkKTtmb3IoQz0iICI9PT1LJiYoIUp8fCFIJiYhSSkscj0wO3I8Ry5sZW5ndGg7cisrKXtmb3Ioaz1HW3JdLHo9Zi5jcmVhdGVFbGVtZW50KEUpLHouc3R5bGUuY3NzVGV4dD0iZGlzcGxheTpibG9jazt0ZXh0LWFsaWduOiIrVCsiO3Bvc2l0aW9uOiIrKEo/ImFic29sdXRlOyI6InJlbGF0aXZlOyIpLF8mJih6LmNsYXNzTmFtZT1fKygkP3IrMToiIikpLGVhLnB1c2goeiksaj1rLmxlbmd0aCx1PTA7aj51O3UrKykiQlIiIT09a1t1XS5ub2RlTmFtZSYmKHg9a1t1XSx6LmFwcGVuZENoaWxkKHgpLEMmJih4Ll93b3JkRW5kfHxIKSYmei5hcHBlbmRDaGlsZChmLmNyZWF0ZVRleHROb2RlKCIgIikpLEomJigwPT09dSYmKHouc3R5bGUudG9wPXguX3krInB4Iix6LnN0eWxlLmxlZnQ9Tyt5KyJweCIpLHguc3R5bGUudG9wPSIwcHgiLHkmJih4LnN0eWxlLmxlZnQ9eC5feC15KyJweCIpKSk7MD09PWomJih6LmlubmVySFRNTD0iJm5ic3A7IiksSHx8SXx8KHouaW5uZXJIVE1MPWUoeikuc3BsaXQoU3RyaW5nLmZyb21DaGFyQ29kZSgxNjApKS5qb2luKCIgIikpLEomJih6LnN0eWxlLndpZHRoPUIsei5zdHlsZS5oZWlnaHQ9eC5faCsicHgiKSxhLmFwcGVuZENoaWxkKHopfWEuc3R5bGUuY3NzVGV4dD1BfUomJihWPmEuY2xpZW50SGVpZ2h0JiYoYS5zdHlsZS5oZWlnaHQ9Vi1SKyJweCIsYS5jbGllbnRIZWlnaHQ8ViYmKGEuc3R5bGUuaGVpZ2h0PVYrUCsicHgiKSksVz5hLmNsaWVudFdpZHRoJiYoYS5zdHlsZS53aWR0aD1XLVMrInB4IixhLmNsaWVudFdpZHRoPFcmJihhLnN0eWxlLndpZHRoPVcrUSsicHgiKSkpLHQoYyxjYSksdChkLGRhKSx0KGgsZWEpfSx2PXIucHJvdG90eXBlO3Yuc3BsaXQ9ZnVuY3Rpb24oYSl7dGhpcy5pc1NwbGl0JiZ0aGlzLnJldmVydCgpLHRoaXMudmFycz1hfHx0aGlzLnZhcnMsdGhpcy5fb3JpZ2luYWxzLmxlbmd0aD10aGlzLmNoYXJzLmxlbmd0aD10aGlzLndvcmRzLmxlbmd0aD10aGlzLmxpbmVzLmxlbmd0aD0wO2Zvcih2YXIgYj10aGlzLmVsZW1lbnRzLmxlbmd0aDstLWI+LTE7KXRoaXMuX29yaWdpbmFsc1tiXT10aGlzLmVsZW1lbnRzW2JdLmlubmVySFRNTCx1KHRoaXMuZWxlbWVudHNbYl0sdGhpcy52YXJzLHRoaXMuY2hhcnMsdGhpcy53b3Jkcyx0aGlzLmxpbmVzKTtyZXR1cm4gdGhpcy5jaGFycy5yZXZlcnNlKCksdGhpcy53b3Jkcy5yZXZlcnNlKCksdGhpcy5saW5lcy5yZXZlcnNlKCksdGhpcy5pc1NwbGl0PSEwLHRoaXN9LHYucmV2ZXJ0PWZ1bmN0aW9uKCl7aWYoIXRoaXMuX29yaWdpbmFscyl0aHJvdyJyZXZlcnQoKSBjYWxsIHdhc24ndCBzY29wZWQgcHJvcGVybHkuIjtmb3IodmFyIGE9dGhpcy5fb3JpZ2luYWxzLmxlbmd0aDstLWE+LTE7KXRoaXMuZWxlbWVudHNbYV0uaW5uZXJIVE1MPXRoaXMuX29yaWdpbmFsc1thXTtyZXR1cm4gdGhpcy5jaGFycz1bXSx0aGlzLndvcmRzPVtdLHRoaXMubGluZXM9W10sdGhpcy5pc1NwbGl0PSExLHRoaXN9LHIuc2VsZWN0b3I9YS4kfHxhLmpRdWVyeXx8ZnVuY3Rpb24oYil7dmFyIGM9YS4kfHxhLmpRdWVyeTtyZXR1cm4gYz8oci5zZWxlY3Rvcj1jLGMoYikpOiJ1bmRlZmluZWQiPT10eXBlb2YgZG9jdW1lbnQ/Yjpkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoYik6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIiMiPT09Yi5jaGFyQXQoMCk/Yi5zdWJzdHIoMSk6Yil9LHIudmVyc2lvbj0iMC40LjAifShfZ3NTY29wZSksZnVuY3Rpb24oYSl7InVzZSBzdHJpY3QiO3ZhciBiPWZ1bmN0aW9uKCl7cmV0dXJuKF9nc1Njb3BlLkdyZWVuU29ja0dsb2JhbHN8fF9nc1Njb3BlKVthXX07ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoW10sYik6InVuZGVmaW5lZCIhPXR5cGVvZiBtb2R1bGUmJm1vZHVsZS5leHBvcnRzJiYobW9kdWxlLmV4cG9ydHM9YigpKX0oIlNwbGl0VGV4dCIpOw0KDQp0cnl7DQoJd2luZG93LkdyZWVuU29ja0dsb2JhbHMgPSBudWxsOw0KCXdpbmRvdy5fZ3NRdWV1ZSA9IG51bGw7DQoJd2luZG93Ll9nc0RlZmluZSA9IG51bGw7DQoNCglkZWxldGUod2luZG93LkdyZWVuU29ja0dsb2JhbHMpOw0KCWRlbGV0ZSh3aW5kb3cuX2dzUXVldWUpOw0KCWRlbGV0ZSh3aW5kb3cuX2dzRGVmaW5lKTsJDQogICB9IGNhdGNoKGUpIHt9DQoNCnRyeXsNCgl3aW5kb3cuR3JlZW5Tb2NrR2xvYmFscyA9IG9sZGdzOw0KCXdpbmRvdy5fZ3NRdWV1ZSA9IG9sZGdzX3F1ZXVlOw0KCX0gY2F0Y2goZSkge30NCg0KaWYgKHdpbmRvdy50cGxvZ3M9PXRydWUpDQoJdHJ5IHsNCgkJY29uc29sZS5ncm91cEVuZCgpOw0KCX0gY2F0Y2goZSkge30NCg0KKGZ1bmN0aW9uKGUsdCl7DQoJCWUud2FpdEZvckltYWdlcz17aGFzSW1hZ2VQcm9wZXJ0aWVzOlsiYmFja2dyb3VuZEltYWdlIiwibGlzdFN0eWxlSW1hZ2UiLCJib3JkZXJJbWFnZSIsImJvcmRlckNvcm5lckltYWdlIl19O2UuZXhwclsiOiJdLnVuY2FjaGVkPWZ1bmN0aW9uKHQpe3ZhciBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpO24uc3JjPXQuc3JjO3JldHVybiBlKHQpLmlzKCdpbWdbc3JjIT0iIl0nKSYmIW4uY29tcGxldGV9O2UuZm4ud2FpdEZvckltYWdlcz1mdW5jdGlvbih0LG4scil7aWYoZS5pc1BsYWluT2JqZWN0KGFyZ3VtZW50c1swXSkpe249dC5lYWNoO3I9dC53YWl0Rm9yQWxsO3Q9dC5maW5pc2hlZH10PXR8fGUubm9vcDtuPW58fGUubm9vcDtyPSEhcjtpZighZS5pc0Z1bmN0aW9uKHQpfHwhZS5pc0Z1bmN0aW9uKG4pKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJBbiBpbnZhbGlkIGNhbGxiYWNrIHdhcyBzdXBwbGllZC4iKX1yZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGk9ZSh0aGlzKSxzPVtdO2lmKHIpe3ZhciBvPWUud2FpdEZvckltYWdlcy5oYXNJbWFnZVByb3BlcnRpZXN8fFtdLHU9L3VybFwoKFsnIl0/KSguKj8pXDFcKS9nO2kuZmluZCgiKiIpLmVhY2goZnVuY3Rpb24oKXt2YXIgdD1lKHRoaXMpO2lmKHQuaXMoImltZzp1bmNhY2hlZCIpKXtzLnB1c2goe3NyYzp0LmF0dHIoInNyYyIpLGVsZW1lbnQ6dFswXX0pfWUuZWFjaChvLGZ1bmN0aW9uKGUsbil7dmFyIHI9dC5jc3Mobik7aWYoIXIpe3JldHVybiB0cnVlfXZhciBpO3doaWxlKGk9dS5leGVjKHIpKXtzLnB1c2goe3NyYzppWzJdLGVsZW1lbnQ6dFswXX0pfX0pfSl9ZWxzZXtpLmZpbmQoImltZzp1bmNhY2hlZCIpLmVhY2goZnVuY3Rpb24oKXtzLnB1c2goe3NyYzp0aGlzLnNyYyxlbGVtZW50OnRoaXN9KX0pfXZhciBmPXMubGVuZ3RoLGw9MDtpZihmPT0wKXt0LmNhbGwoaVswXSl9ZS5lYWNoKHMsZnVuY3Rpb24ocixzKXt2YXIgbz1uZXcgSW1hZ2U7ZShvKS5iaW5kKCJsb2FkIGVycm9yIixmdW5jdGlvbihlKXtsKys7bi5jYWxsKHMuZWxlbWVudCxsLGYsZS50eXBlPT0ibG9hZCIpO2lmKGw9PWYpe3QuY2FsbChpWzBdKTtyZXR1cm4gZmFsc2V9fSk7by5zcmM9cy5zcmN9KX0pfTsJCQ0KfSkoalF1ZXJ5KQ0K"}},"time_used":16516,"timings":{"blocked":14604,"dns":0,"connect":0,"send":0,"wait":1096,"receive":816,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/js/jquery-3.2.1.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.286Z","timestamp":1785143908286,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /js/jquery-3.2.1.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:41 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"15283-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 30138\r\nKeep-Alive: timeout=5, max=98\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":86659,"size_decoded":30508,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (32058)","md5":"c9f5aeeca3ad37bf2aa006139b935f0a","sha1":"1055018c28ab41087ef9ccefe411606893dabea2","sha256":"87083882cc6015984eb0411a99d3981817f5dc5c90ba24f0940420c5548d82de","sha512":"dcff2b5c2b8625d3593a7531ff4ddcd633939cc9f7acfeb79c18a9e6038fdaa99487960075502f159d44f902d965b0b5aed32b41bfa66a1dc07d85b5d5152b58","ssdeep":"1536:YNhEyjjTikEJO4edXXe9J578go6MWX2xkj8e4c4j2ll2AckaXEP6n15HZ+FhFcQ7:uxc2yjx4j2uX/kcQDU8Cu9","tlshash":"4483e6d9b2c67062977730b950bf410bb17a98dab44c8c60f158d9d47eb8a8d907bf2c","first_seen":"2023-03-07T01:02:00Z","last_seen":"2026-08-11T08:00:30.424198Z","times_seen":99355,"resource_available":true,"data":"LyohIGpRdWVyeSB2My4yLjEgfCAoYykgSlMgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzIHwganF1ZXJ5Lm9yZy9saWNlbnNlICovCiFmdW5jdGlvbihhLGIpeyJ1c2Ugc3RyaWN0Ijsib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmIm9iamVjdCI9PXR5cGVvZiBtb2R1bGUuZXhwb3J0cz9tb2R1bGUuZXhwb3J0cz1hLmRvY3VtZW50P2IoYSwhMCk6ZnVuY3Rpb24oYSl7aWYoIWEuZG9jdW1lbnQpdGhyb3cgbmV3IEVycm9yKCJqUXVlcnkgcmVxdWlyZXMgYSB3aW5kb3cgd2l0aCBhIGRvY3VtZW50Iik7cmV0dXJuIGIoYSl9OmIoYSl9KCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzp0aGlzLGZ1bmN0aW9uKGEsYil7InVzZSBzdHJpY3QiO3ZhciBjPVtdLGQ9YS5kb2N1bWVudCxlPU9iamVjdC5nZXRQcm90b3R5cGVPZixmPWMuc2xpY2UsZz1jLmNvbmNhdCxoPWMucHVzaCxpPWMuaW5kZXhPZixqPXt9LGs9ai50b1N0cmluZyxsPWouaGFzT3duUHJvcGVydHksbT1sLnRvU3RyaW5nLG49bS5jYWxsKE9iamVjdCksbz17fTtmdW5jdGlvbiBwKGEsYil7Yj1ifHxkO3ZhciBjPWIuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7Yy50ZXh0PWEsYi5oZWFkLmFwcGVuZENoaWxkKGMpLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYyl9dmFyIHE9IjMuMi4xIixyPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyByLmZuLmluaXQoYSxiKX0scz0vXltcc1x1RkVGRlx4QTBdK3xbXHNcdUZFRkZceEEwXSskL2csdD0vXi1tcy0vLHU9Ly0oW2Etel0pL2csdj1mdW5jdGlvbihhLGIpe3JldHVybiBiLnRvVXBwZXJDYXNlKCl9O3IuZm49ci5wcm90b3R5cGU9e2pxdWVyeTpxLGNvbnN0cnVjdG9yOnIsbGVuZ3RoOjAsdG9BcnJheTpmdW5jdGlvbigpe3JldHVybiBmLmNhbGwodGhpcyl9LGdldDpmdW5jdGlvbihhKXtyZXR1cm4gbnVsbD09YT9mLmNhbGwodGhpcyk6YTwwP3RoaXNbYSt0aGlzLmxlbmd0aF06dGhpc1thXX0scHVzaFN0YWNrOmZ1bmN0aW9uKGEpe3ZhciBiPXIubWVyZ2UodGhpcy5jb25zdHJ1Y3RvcigpLGEpO3JldHVybiBiLnByZXZPYmplY3Q9dGhpcyxifSxlYWNoOmZ1bmN0aW9uKGEpe3JldHVybiByLmVhY2godGhpcyxhKX0sbWFwOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnB1c2hTdGFjayhyLm1hcCh0aGlzLGZ1bmN0aW9uKGIsYyl7cmV0dXJuIGEuY2FsbChiLGMsYil9KSl9LHNsaWNlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKGYuYXBwbHkodGhpcyxhcmd1bWVudHMpKX0sZmlyc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcSgwKX0sbGFzdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKC0xKX0sZXE6ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5sZW5ndGgsYz0rYSsoYTwwP2I6MCk7cmV0dXJuIHRoaXMucHVzaFN0YWNrKGM+PTAmJmM8Yj9bdGhpc1tjXV06W10pfSxlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wcmV2T2JqZWN0fHx0aGlzLmNvbnN0cnVjdG9yKCl9LHB1c2g6aCxzb3J0OmMuc29ydCxzcGxpY2U6Yy5zcGxpY2V9LHIuZXh0ZW5kPXIuZm4uZXh0ZW5kPWZ1bmN0aW9uKCl7dmFyIGEsYixjLGQsZSxmLGc9YXJndW1lbnRzWzBdfHx7fSxoPTEsaT1hcmd1bWVudHMubGVuZ3RoLGo9ITE7Zm9yKCJib29sZWFuIj09dHlwZW9mIGcmJihqPWcsZz1hcmd1bWVudHNbaF18fHt9LGgrKyksIm9iamVjdCI9PXR5cGVvZiBnfHxyLmlzRnVuY3Rpb24oZyl8fChnPXt9KSxoPT09aSYmKGc9dGhpcyxoLS0pO2g8aTtoKyspaWYobnVsbCE9KGE9YXJndW1lbnRzW2hdKSlmb3IoYiBpbiBhKWM9Z1tiXSxkPWFbYl0sZyE9PWQmJihqJiZkJiYoci5pc1BsYWluT2JqZWN0KGQpfHwoZT1BcnJheS5pc0FycmF5KGQpKSk/KGU/KGU9ITEsZj1jJiZBcnJheS5pc0FycmF5KGMpP2M6W10pOmY9YyYmci5pc1BsYWluT2JqZWN0KGMpP2M6e30sZ1tiXT1yLmV4dGVuZChqLGYsZCkpOnZvaWQgMCE9PWQmJihnW2JdPWQpKTtyZXR1cm4gZ30sci5leHRlbmQoe2V4cGFuZG86ImpRdWVyeSIrKHErTWF0aC5yYW5kb20oKSkucmVwbGFjZSgvXEQvZywiIiksaXNSZWFkeTohMCxlcnJvcjpmdW5jdGlvbihhKXt0aHJvdyBuZXcgRXJyb3IoYSl9LG5vb3A6ZnVuY3Rpb24oKXt9LGlzRnVuY3Rpb246ZnVuY3Rpb24oYSl7cmV0dXJuImZ1bmN0aW9uIj09PXIudHlwZShhKX0saXNXaW5kb3c6ZnVuY3Rpb24oYSl7cmV0dXJuIG51bGwhPWEmJmE9PT1hLndpbmRvd30saXNOdW1lcmljOmZ1bmN0aW9uKGEpe3ZhciBiPXIudHlwZShhKTtyZXR1cm4oIm51bWJlciI9PT1ifHwic3RyaW5nIj09PWIpJiYhaXNOYU4oYS1wYXJzZUZsb2F0KGEpKX0saXNQbGFpbk9iamVjdDpmdW5jdGlvbihhKXt2YXIgYixjO3JldHVybiEoIWF8fCJbb2JqZWN0IE9iamVjdF0iIT09ay5jYWxsKGEpKSYmKCEoYj1lKGEpKXx8KGM9bC5jYWxsKGIsImNvbnN0cnVjdG9yIikmJmIuY29uc3RydWN0b3IsImZ1bmN0aW9uIj09dHlwZW9mIGMmJm0uY2FsbChjKT09PW4pKX0saXNFbXB0eU9iamVjdDpmdW5jdGlvbihhKXt2YXIgYjtmb3IoYiBpbiBhKXJldHVybiExO3JldHVybiEwfSx0eXBlOmZ1bmN0aW9uKGEpe3JldHVybiBudWxsPT1hP2ErIiI6Im9iamVjdCI9PXR5cGVvZiBhfHwiZnVuY3Rpb24iPT10eXBlb2YgYT9qW2suY2FsbChhKV18fCJvYmplY3QiOnR5cGVvZiBhfSxnbG9iYWxFdmFsOmZ1bmN0aW9uKGEpe3AoYSl9LGNhbWVsQ2FzZTpmdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKHQsIm1zLSIpLnJlcGxhY2UodSx2KX0sZWFjaDpmdW5jdGlvbihhLGIpe3ZhciBjLGQ9MDtpZih3KGEpKXtmb3IoYz1hLmxlbmd0aDtkPGM7ZCsrKWlmKGIuY2FsbChhW2RdLGQsYVtkXSk9PT0hMSlicmVha31lbHNlIGZvcihkIGluIGEpaWYoYi5jYWxsKGFbZF0sZCxhW2RdKT09PSExKWJyZWFrO3JldHVybiBhfSx0cmltOmZ1bmN0aW9uKGEpe3JldHVybiBudWxsPT1hPyIiOihhKyIiKS5yZXBsYWNlKHMsIiIpfSxtYWtlQXJyYXk6ZnVuY3Rpb24oYSxiKXt2YXIgYz1ifHxbXTtyZXR1cm4gbnVsbCE9YSYmKHcoT2JqZWN0KGEpKT9yLm1lcmdlKGMsInN0cmluZyI9PXR5cGVvZiBhP1thXTphKTpoLmNhbGwoYyxhKSksY30saW5BcnJheTpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIG51bGw9PWI/LTE6aS5jYWxsKGIsYSxjKX0sbWVyZ2U6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9K2IubGVuZ3RoLGQ9MCxlPWEubGVuZ3RoO2Q8YztkKyspYVtlKytdPWJbZF07cmV0dXJuIGEubGVuZ3RoPWUsYX0sZ3JlcDpmdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkLGU9W10sZj0wLGc9YS5sZW5ndGgsaD0hYztmPGc7ZisrKWQ9IWIoYVtmXSxmKSxkIT09aCYmZS5wdXNoKGFbZl0pO3JldHVybiBlfSxtYXA6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZj0wLGg9W107aWYodyhhKSlmb3IoZD1hLmxlbmd0aDtmPGQ7ZisrKWU9YihhW2ZdLGYsYyksbnVsbCE9ZSYmaC5wdXNoKGUpO2Vsc2UgZm9yKGYgaW4gYSllPWIoYVtmXSxmLGMpLG51bGwhPWUmJmgucHVzaChlKTtyZXR1cm4gZy5hcHBseShbXSxoKX0sZ3VpZDoxLHByb3h5OmZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlO2lmKCJzdHJpbmciPT10eXBlb2YgYiYmKGM9YVtiXSxiPWEsYT1jKSxyLmlzRnVuY3Rpb24oYSkpcmV0dXJuIGQ9Zi5jYWxsKGFyZ3VtZW50cywyKSxlPWZ1bmN0aW9uKCl7cmV0dXJuIGEuYXBwbHkoYnx8dGhpcyxkLmNvbmNhdChmLmNhbGwoYXJndW1lbnRzKSkpfSxlLmd1aWQ9YS5ndWlkPWEuZ3VpZHx8ci5ndWlkKyssZX0sbm93OkRhdGUubm93LHN1cHBvcnQ6b30pLCJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJihyLmZuW1N5bWJvbC5pdGVyYXRvcl09Y1tTeW1ib2wuaXRlcmF0b3JdKSxyLmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QgRXJyb3IgU3ltYm9sIi5zcGxpdCgiICIpLGZ1bmN0aW9uKGEsYil7alsiW29iamVjdCAiK2IrIl0iXT1iLnRvTG93ZXJDYXNlKCl9KTtmdW5jdGlvbiB3KGEpe3ZhciBiPSEhYSYmImxlbmd0aCJpbiBhJiZhLmxlbmd0aCxjPXIudHlwZShhKTtyZXR1cm4iZnVuY3Rpb24iIT09YyYmIXIuaXNXaW5kb3coYSkmJigiYXJyYXkiPT09Y3x8MD09PWJ8fCJudW1iZXIiPT10eXBlb2YgYiYmYj4wJiZiLTEgaW4gYSl9dmFyIHg9ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZixnLGgsaSxqLGssbCxtLG4sbyxwLHEscixzLHQsdT0ic2l6emxlIisxKm5ldyBEYXRlLHY9YS5kb2N1bWVudCx3PTAseD0wLHk9aGEoKSx6PWhhKCksQT1oYSgpLEI9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYT09PWImJihsPSEwKSwwfSxDPXt9Lmhhc093blByb3BlcnR5LEQ9W10sRT1ELnBvcCxGPUQucHVzaCxHPUQucHVzaCxIPUQuc2xpY2UsST1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wLGQ9YS5sZW5ndGg7YzxkO2MrKylpZihhW2NdPT09YilyZXR1cm4gYztyZXR1cm4tMX0sSj0iY2hlY2tlZHxzZWxlY3RlZHxhc3luY3xhdXRvZm9jdXN8YXV0b3BsYXl8Y29udHJvbHN8ZGVmZXJ8ZGlzYWJsZWR8aGlkZGVufGlzbWFwfGxvb3B8bXVsdGlwbGV8b3BlbnxyZWFkb25seXxyZXF1aXJlZHxzY29wZWQiLEs9IltcXHgyMFxcdFxcclxcblxcZl0iLEw9Iig/OlxcXFwufFtcXHctXXxbXlwwLVxceGEwXSkrIixNPSJcXFsiK0srIiooIitMKyIpKD86IitLKyIqKFsqXiR8IX5dPz0pIitLKyIqKD86JygoPzpcXFxcLnxbXlxcXFwnXSkqKSd8XCIoKD86XFxcXC58W15cXFxcXCJdKSopXCJ8KCIrTCsiKSl8KSIrSysiKlxcXSIsTj0iOigiK0wrIikoPzpcXCgoKCcoKD86XFxcXC58W15cXFxcJ10pKiknfFwiKCg/OlxcXFwufFteXFxcXFwiXSkqKVwiKXwoKD86XFxcXC58W15cXFxcKClbXFxdXXwiK00rIikqKXwuKilcXCl8KSIsTz1uZXcgUmVnRXhwKEsrIisiLCJnIiksUD1uZXcgUmVnRXhwKCJeIitLKyIrfCgoPzpefFteXFxcXF0pKD86XFxcXC4pKikiK0srIiskIiwiZyIpLFE9bmV3IFJlZ0V4cCgiXiIrSysiKiwiK0srIioiKSxSPW5ldyBSZWdFeHAoIl4iK0srIiooWz4rfl18IitLKyIpIitLKyIqIiksUz1uZXcgUmVnRXhwKCI9IitLKyIqKFteXFxdJ1wiXSo/KSIrSysiKlxcXSIsImciKSxUPW5ldyBSZWdFeHAoTiksVT1uZXcgUmVnRXhwKCJeIitMKyIkIiksVj17SUQ6bmV3IFJlZ0V4cCgiXiMoIitMKyIpIiksQ0xBU1M6bmV3IFJlZ0V4cCgiXlxcLigiK0wrIikiKSxUQUc6bmV3IFJlZ0V4cCgiXigiK0wrInxbKl0pIiksQVRUUjpuZXcgUmVnRXhwKCJeIitNKSxQU0VVRE86bmV3IFJlZ0V4cCgiXiIrTiksQ0hJTEQ6bmV3IFJlZ0V4cCgiXjoob25seXxmaXJzdHxsYXN0fG50aHxudGgtbGFzdCktKGNoaWxkfG9mLXR5cGUpKD86XFwoIitLKyIqKGV2ZW58b2RkfCgoWystXXwpKFxcZCopbnwpIitLKyIqKD86KFsrLV18KSIrSysiKihcXGQrKXwpKSIrSysiKlxcKXwpIiwiaSIpLGJvb2w6bmV3IFJlZ0V4cCgiXig/OiIrSisiKSQiLCJpIiksbmVlZHNDb250ZXh0Om5ldyBSZWdFeHAoIl4iK0srIipbPit+XXw6KGV2ZW58b2RkfGVxfGd0fGx0fG50aHxmaXJzdHxsYXN0KSg/OlxcKCIrSysiKigoPzotXFxkKT9cXGQqKSIrSysiKlxcKXwpKD89W14tXXwkKSIsImkiKX0sVz0vXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b24pJC9pLFg9L15oXGQkL2ksWT0vXltee10rXHtccypcW25hdGl2ZSBcdy8sWj0vXig/OiMoW1x3LV0rKXwoXHcrKXxcLihbXHctXSspKSQvLCQ9L1srfl0vLF89bmV3IFJlZ0V4cCgiXFxcXChbXFxkYS1mXXsxLDZ9IitLKyI/fCgiK0srIil8LikiLCJpZyIpLGFhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0iMHgiK2ItNjU1MzY7cmV0dXJuIGQhPT1kfHxjP2I6ZDwwP1N0cmluZy5mcm9tQ2hhckNvZGUoZCs2NTUzNik6U3RyaW5nLmZyb21DaGFyQ29kZShkPj4xMHw1NTI5NiwxMDIzJmR8NTYzMjApfSxiYT0vKFtcMC1ceDFmXHg3Zl18Xi0/XGQpfF4tJHxbXlwwLVx4MWZceDdmLVx1RkZGRlx3LV0vZyxjYT1mdW5jdGlvbihhLGIpe3JldHVybiBiPyJcMCI9PT1hPyJcdWZmZmQiOmEuc2xpY2UoMCwtMSkrIlxcIithLmNoYXJDb2RlQXQoYS5sZW5ndGgtMSkudG9TdHJpbmcoMTYpKyIgIjoiXFwiK2F9LGRhPWZ1bmN0aW9uKCl7bSgpfSxlYT10YShmdW5jdGlvbihhKXtyZXR1cm4gYS5kaXNhYmxlZD09PSEwJiYoImZvcm0iaW4gYXx8ImxhYmVsImluIGEpfSx7ZGlyOiJwYXJlbnROb2RlIixuZXh0OiJsZWdlbmQifSk7dHJ5e0cuYXBwbHkoRD1ILmNhbGwodi5jaGlsZE5vZGVzKSx2LmNoaWxkTm9kZXMpLERbdi5jaGlsZE5vZGVzLmxlbmd0aF0ubm9kZVR5cGV9Y2F0Y2goZmEpe0c9e2FwcGx5OkQubGVuZ3RoP2Z1bmN0aW9uKGEsYil7Ri5hcHBseShhLEguY2FsbChiKSl9OmZ1bmN0aW9uKGEsYil7dmFyIGM9YS5sZW5ndGgsZD0wO3doaWxlKGFbYysrXT1iW2QrK10pO2EubGVuZ3RoPWMtMX19fWZ1bmN0aW9uIGdhKGEsYixkLGUpe3ZhciBmLGgsaixrLGwsbyxyLHM9YiYmYi5vd25lckRvY3VtZW50LHc9Yj9iLm5vZGVUeXBlOjk7aWYoZD1kfHxbXSwic3RyaW5nIiE9dHlwZW9mIGF8fCFhfHwxIT09dyYmOSE9PXcmJjExIT09dylyZXR1cm4gZDtpZighZSYmKChiP2Iub3duZXJEb2N1bWVudHx8Yjp2KSE9PW4mJm0oYiksYj1ifHxuLHApKXtpZigxMSE9PXcmJihsPVouZXhlYyhhKSkpaWYoZj1sWzFdKXtpZig5PT09dyl7aWYoIShqPWIuZ2V0RWxlbWVudEJ5SWQoZikpKXJldHVybiBkO2lmKGouaWQ9PT1mKXJldHVybiBkLnB1c2goaiksZH1lbHNlIGlmKHMmJihqPXMuZ2V0RWxlbWVudEJ5SWQoZikpJiZ0KGIsaikmJmouaWQ9PT1mKXJldHVybiBkLnB1c2goaiksZH1lbHNle2lmKGxbMl0pcmV0dXJuIEcuYXBwbHkoZCxiLmdldEVsZW1lbnRzQnlUYWdOYW1lKGEpKSxkO2lmKChmPWxbM10pJiZjLmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJmIuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSlyZXR1cm4gRy5hcHBseShkLGIuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShmKSksZH1pZihjLnFzYSYmIUFbYSsiICJdJiYoIXF8fCFxLnRlc3QoYSkpKXtpZigxIT09dylzPWIscj1hO2Vsc2UgaWYoIm9iamVjdCIhPT1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpeyhrPWIuZ2V0QXR0cmlidXRlKCJpZCIpKT9rPWsucmVwbGFjZShiYSxjYSk6Yi5zZXRBdHRyaWJ1dGUoImlkIixrPXUpLG89ZyhhKSxoPW8ubGVuZ3RoO3doaWxlKGgtLSlvW2hdPSIjIitrKyIgIitzYShvW2hdKTtyPW8uam9pbigiLCIpLHM9JC50ZXN0KGEpJiZxYShiLnBhcmVudE5vZGUpfHxifWlmKHIpdHJ5e3JldHVybiBHLmFwcGx5KGQscy5xdWVyeVNlbGVjdG9yQWxsKHIpKSxkfWNhdGNoKHgpe31maW5hbGx5e2s9PT11JiZiLnJlbW92ZUF0dHJpYnV0ZSgiaWQiKX19fXJldHVybiBpKGEucmVwbGFjZShQLCIkMSIpLGIsZCxlKX1mdW5jdGlvbiBoYSgpe3ZhciBhPVtdO2Z1bmN0aW9uIGIoYyxlKXtyZXR1cm4gYS5wdXNoKGMrIiAiKT5kLmNhY2hlTGVuZ3RoJiZkZWxldGUgYlthLnNoaWZ0KCldLGJbYysiICJdPWV9cmV0dXJuIGJ9ZnVuY3Rpb24gaWEoYSl7cmV0dXJuIGFbdV09ITAsYX1mdW5jdGlvbiBqYShhKXt2YXIgYj1uLmNyZWF0ZUVsZW1lbnQoImZpZWxkc2V0Iik7dHJ5e3JldHVybiEhYShiKX1jYXRjaChjKXtyZXR1cm4hMX1maW5hbGx5e2IucGFyZW50Tm9kZSYmYi5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGIpLGI9bnVsbH19ZnVuY3Rpb24ga2EoYSxiKXt2YXIgYz1hLnNwbGl0KCJ8IiksZT1jLmxlbmd0aDt3aGlsZShlLS0pZC5hdHRySGFuZGxlW2NbZV1dPWJ9ZnVuY3Rpb24gbGEoYSxiKXt2YXIgYz1iJiZhLGQ9YyYmMT09PWEubm9kZVR5cGUmJjE9PT1iLm5vZGVUeXBlJiZhLnNvdXJjZUluZGV4LWIuc291cmNlSW5kZXg7aWYoZClyZXR1cm4gZDtpZihjKXdoaWxlKGM9Yy5uZXh0U2libGluZylpZihjPT09YilyZXR1cm4tMTtyZXR1cm4gYT8xOi0xfWZ1bmN0aW9uIG1hKGEpe3JldHVybiBmdW5jdGlvbihiKXt2YXIgYz1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PWMmJmIudHlwZT09PWF9fWZ1bmN0aW9uIG5hKGEpe3JldHVybiBmdW5jdGlvbihiKXt2YXIgYz1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuKCJpbnB1dCI9PT1jfHwiYnV0dG9uIj09PWMpJiZiLnR5cGU9PT1hfX1mdW5jdGlvbiBvYShhKXtyZXR1cm4gZnVuY3Rpb24oYil7cmV0dXJuImZvcm0iaW4gYj9iLnBhcmVudE5vZGUmJmIuZGlzYWJsZWQ9PT0hMT8ibGFiZWwiaW4gYj8ibGFiZWwiaW4gYi5wYXJlbnROb2RlP2IucGFyZW50Tm9kZS5kaXNhYmxlZD09PWE6Yi5kaXNhYmxlZD09PWE6Yi5pc0Rpc2FibGVkPT09YXx8Yi5pc0Rpc2FibGVkIT09IWEmJmVhKGIpPT09YTpiLmRpc2FibGVkPT09YToibGFiZWwiaW4gYiYmYi5kaXNhYmxlZD09PWF9fWZ1bmN0aW9uIHBhKGEpe3JldHVybiBpYShmdW5jdGlvbihiKXtyZXR1cm4gYj0rYixpYShmdW5jdGlvbihjLGQpe3ZhciBlLGY9YShbXSxjLmxlbmd0aCxiKSxnPWYubGVuZ3RoO3doaWxlKGctLSljW2U9ZltnXV0mJihjW2VdPSEoZFtlXT1jW2VdKSl9KX0pfWZ1bmN0aW9uIHFhKGEpe3JldHVybiBhJiYidW5kZWZpbmVkIiE9dHlwZW9mIGEuZ2V0RWxlbWVudHNCeVRhZ05hbWUmJmF9Yz1nYS5zdXBwb3J0PXt9LGY9Z2EuaXNYTUw9ZnVuY3Rpb24oYSl7dmFyIGI9YSYmKGEub3duZXJEb2N1bWVudHx8YSkuZG9jdW1lbnRFbGVtZW50O3JldHVybiEhYiYmIkhUTUwiIT09Yi5ub2RlTmFtZX0sbT1nYS5zZXREb2N1bWVudD1mdW5jdGlvbihhKXt2YXIgYixlLGc9YT9hLm93bmVyRG9jdW1lbnR8fGE6djtyZXR1cm4gZyE9PW4mJjk9PT1nLm5vZGVUeXBlJiZnLmRvY3VtZW50RWxlbWVudD8obj1nLG89bi5kb2N1bWVudEVsZW1lbnQscD0hZihuKSx2IT09biYmKGU9bi5kZWZhdWx0VmlldykmJmUudG9wIT09ZSYmKGUuYWRkRXZlbnRMaXN0ZW5lcj9lLmFkZEV2ZW50TGlzdGVuZXIoInVubG9hZCIsZGEsITEpOmUuYXR0YWNoRXZlbnQmJmUuYXR0YWNoRXZlbnQoIm9udW5sb2FkIixkYSkpLGMuYXR0cmlidXRlcz1qYShmdW5jdGlvbihhKXtyZXR1cm4gYS5jbGFzc05hbWU9ImkiLCFhLmdldEF0dHJpYnV0ZSgiY2xhc3NOYW1lIil9KSxjLmdldEVsZW1lbnRzQnlUYWdOYW1lPWphKGZ1bmN0aW9uKGEpe3JldHVybiBhLmFwcGVuZENoaWxkKG4uY3JlYXRlQ29tbWVudCgiIikpLCFhLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikubGVuZ3RofSksYy5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lPVkudGVzdChuLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpLGMuZ2V0QnlJZD1qYShmdW5jdGlvbihhKXtyZXR1cm4gby5hcHBlbmRDaGlsZChhKS5pZD11LCFuLmdldEVsZW1lbnRzQnlOYW1lfHwhbi5nZXRFbGVtZW50c0J5TmFtZSh1KS5sZW5ndGh9KSxjLmdldEJ5SWQ/KGQuZmlsdGVyLklEPWZ1bmN0aW9uKGEpe3ZhciBiPWEucmVwbGFjZShfLGFhKTtyZXR1cm4gZnVuY3Rpb24oYSl7cmV0dXJuIGEuZ2V0QXR0cmlidXRlKCJpZCIpPT09Yn19LGQuZmluZC5JRD1mdW5jdGlvbihhLGIpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgYi5nZXRFbGVtZW50QnlJZCYmcCl7dmFyIGM9Yi5nZXRFbGVtZW50QnlJZChhKTtyZXR1cm4gYz9bY106W119fSk6KGQuZmlsdGVyLklEPWZ1bmN0aW9uKGEpe3ZhciBiPWEucmVwbGFjZShfLGFhKTtyZXR1cm4gZnVuY3Rpb24oYSl7dmFyIGM9InVuZGVmaW5lZCIhPXR5cGVvZiBhLmdldEF0dHJpYnV0ZU5vZGUmJmEuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gYyYmYy52YWx1ZT09PWJ9fSxkLmZpbmQuSUQ9ZnVuY3Rpb24oYSxiKXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIGIuZ2V0RWxlbWVudEJ5SWQmJnApe3ZhciBjLGQsZSxmPWIuZ2V0RWxlbWVudEJ5SWQoYSk7aWYoZil7aWYoYz1mLmdldEF0dHJpYnV0ZU5vZGUoImlkIiksYyYmYy52YWx1ZT09PWEpcmV0dXJuW2ZdO2U9Yi5nZXRFbGVtZW50c0J5TmFtZShhKSxkPTA7d2hpbGUoZj1lW2QrK10paWYoYz1mLmdldEF0dHJpYnV0ZU5vZGUoImlkIiksYyYmYy52YWx1ZT09PWEpcmV0dXJuW2ZdfXJldHVybltdfX0pLGQuZmluZC5UQUc9Yy5nZXRFbGVtZW50c0J5VGFnTmFtZT9mdW5jdGlvbihhLGIpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgYi5nZXRFbGVtZW50c0J5VGFnTmFtZT9iLmdldEVsZW1lbnRzQnlUYWdOYW1lKGEpOmMucXNhP2IucXVlcnlTZWxlY3RvckFsbChhKTp2b2lkIDB9OmZ1bmN0aW9uKGEsYil7dmFyIGMsZD1bXSxlPTAsZj1iLmdldEVsZW1lbnRzQnlUYWdOYW1lKGEpO2lmKCIqIj09PWEpe3doaWxlKGM9ZltlKytdKTE9PT1jLm5vZGVUeXBlJiZkLnB1c2goYyk7cmV0dXJuIGR9cmV0dXJuIGZ9LGQuZmluZC5DTEFTUz1jLmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJmZ1bmN0aW9uKGEsYil7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBiLmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJnApcmV0dXJuIGIuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShhKX0scj1bXSxxPVtdLChjLnFzYT1ZLnRlc3Qobi5xdWVyeVNlbGVjdG9yQWxsKSkmJihqYShmdW5jdGlvbihhKXtvLmFwcGVuZENoaWxkKGEpLmlubmVySFRNTD0iPGEgaWQ9JyIrdSsiJz48L2E+PHNlbGVjdCBpZD0nIit1KyItXHJcXCcgbXNhbGxvd2NhcHR1cmU9Jyc+PG9wdGlvbiBzZWxlY3RlZD0nJz48L29wdGlvbj48L3NlbGVjdD4iLGEucXVlcnlTZWxlY3RvckFsbCgiW21zYWxsb3djYXB0dXJlXj0nJ10iKS5sZW5ndGgmJnEucHVzaCgiWypeJF09IitLKyIqKD86Jyd8XCJcIikiKSxhLnF1ZXJ5U2VsZWN0b3JBbGwoIltzZWxlY3RlZF0iKS5sZW5ndGh8fHEucHVzaCgiXFxbIitLKyIqKD86dmFsdWV8IitKKyIpIiksYS5xdWVyeVNlbGVjdG9yQWxsKCJbaWR+PSIrdSsiLV0iKS5sZW5ndGh8fHEucHVzaCgifj0iKSxhLnF1ZXJ5U2VsZWN0b3JBbGwoIjpjaGVja2VkIikubGVuZ3RofHxxLnB1c2goIjpjaGVja2VkIiksYS5xdWVyeVNlbGVjdG9yQWxsKCJhIyIrdSsiKyoiKS5sZW5ndGh8fHEucHVzaCgiLiMuK1srfl0iKX0pLGphKGZ1bmN0aW9uKGEpe2EuaW5uZXJIVE1MPSI8YSBocmVmPScnIGRpc2FibGVkPSdkaXNhYmxlZCc+PC9hPjxzZWxlY3QgZGlzYWJsZWQ9J2Rpc2FibGVkJz48b3B0aW9uLz48L3NlbGVjdD4iO3ZhciBiPW4uY3JlYXRlRWxlbWVudCgiaW5wdXQiKTtiLnNldEF0dHJpYnV0ZSgidHlwZSIsImhpZGRlbiIpLGEuYXBwZW5kQ2hpbGQoYikuc2V0QXR0cmlidXRlKCJuYW1lIiwiRCIpLGEucXVlcnlTZWxlY3RvckFsbCgiW25hbWU9ZF0iKS5sZW5ndGgmJnEucHVzaCgibmFtZSIrSysiKlsqXiR8IX5dPz0iKSwyIT09YS5xdWVyeVNlbGVjdG9yQWxsKCI6ZW5hYmxlZCIpLmxlbmd0aCYmcS5wdXNoKCI6ZW5hYmxlZCIsIjpkaXNhYmxlZCIpLG8uYXBwZW5kQ2hpbGQoYSkuZGlzYWJsZWQ9ITAsMiE9PWEucXVlcnlTZWxlY3RvckFsbCgiOmRpc2FibGVkIikubGVuZ3RoJiZxLnB1c2goIjplbmFibGVkIiwiOmRpc2FibGVkIiksYS5xdWVyeVNlbGVjdG9yQWxsKCIqLDp4IikscS5wdXNoKCIsLio6Iil9KSksKGMubWF0Y2hlc1NlbGVjdG9yPVkudGVzdChzPW8ubWF0Y2hlc3x8by53ZWJraXRNYXRjaGVzU2VsZWN0b3J8fG8ubW96TWF0Y2hlc1NlbGVjdG9yfHxvLm9NYXRjaGVzU2VsZWN0b3J8fG8ubXNNYXRjaGVzU2VsZWN0b3IpKSYmamEoZnVuY3Rpb24oYSl7Yy5kaXNjb25uZWN0ZWRNYXRjaD1zLmNhbGwoYSwiKiIpLHMuY2FsbChhLCJbcyE9JyddOngiKSxyLnB1c2goIiE9IixOKX0pLHE9cS5sZW5ndGgmJm5ldyBSZWdFeHAocS5qb2luKCJ8IikpLHI9ci5sZW5ndGgmJm5ldyBSZWdFeHAoci5qb2luKCJ8IikpLGI9WS50ZXN0KG8uY29tcGFyZURvY3VtZW50UG9zaXRpb24pLHQ9Ynx8WS50ZXN0KG8uY29udGFpbnMpP2Z1bmN0aW9uKGEsYil7dmFyIGM9OT09PWEubm9kZVR5cGU/YS5kb2N1bWVudEVsZW1lbnQ6YSxkPWImJmIucGFyZW50Tm9kZTtyZXR1cm4gYT09PWR8fCEoIWR8fDEhPT1kLm5vZGVUeXBlfHwhKGMuY29udGFpbnM/Yy5jb250YWlucyhkKTphLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uJiYxNiZhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGQpKSl9OmZ1bmN0aW9uKGEsYil7aWYoYil3aGlsZShiPWIucGFyZW50Tm9kZSlpZihiPT09YSlyZXR1cm4hMDtyZXR1cm4hMX0sQj1iP2Z1bmN0aW9uKGEsYil7aWYoYT09PWIpcmV0dXJuIGw9ITAsMDt2YXIgZD0hYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi0hYi5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjtyZXR1cm4gZD9kOihkPShhLm93bmVyRG9jdW1lbnR8fGEpPT09KGIub3duZXJEb2N1bWVudHx8Yik/YS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihiKToxLDEmZHx8IWMuc29ydERldGFjaGVkJiZiLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGEpPT09ZD9hPT09bnx8YS5vd25lckRvY3VtZW50PT09diYmdCh2LGEpPy0xOmI9PT1ufHxiLm93bmVyRG9jdW1lbnQ9PT12JiZ0KHYsYik/MTprP0koayxhKS1JKGssYik6MDo0JmQ/LTE6MSl9OmZ1bmN0aW9uKGEsYil7aWYoYT09PWIpcmV0dXJuIGw9ITAsMDt2YXIgYyxkPTAsZT1hLnBhcmVudE5vZGUsZj1iLnBhcmVudE5vZGUsZz1bYV0saD1bYl07aWYoIWV8fCFmKXJldHVybiBhPT09bj8tMTpiPT09bj8xOmU/LTE6Zj8xOms/SShrLGEpLUkoayxiKTowO2lmKGU9PT1mKXJldHVybiBsYShhLGIpO2M9YTt3aGlsZShjPWMucGFyZW50Tm9kZSlnLnVuc2hpZnQoYyk7Yz1iO3doaWxlKGM9Yy5wYXJlbnROb2RlKWgudW5zaGlmdChjKTt3aGlsZShnW2RdPT09aFtkXSlkKys7cmV0dXJuIGQ/bGEoZ1tkXSxoW2RdKTpnW2RdPT09dj8tMTpoW2RdPT09dj8xOjB9LG4pOm59LGdhLm1hdGNoZXM9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gZ2EoYSxudWxsLG51bGwsYil9LGdhLm1hdGNoZXNTZWxlY3Rvcj1mdW5jdGlvbihhLGIpe2lmKChhLm93bmVyRG9jdW1lbnR8fGEpIT09biYmbShhKSxiPWIucmVwbGFjZShTLCI9JyQxJ10iKSxjLm1hdGNoZXNTZWxlY3RvciYmcCYmIUFbYisiICJdJiYoIXJ8fCFyLnRlc3QoYikpJiYoIXF8fCFxLnRlc3QoYikpKXRyeXt2YXIgZD1zLmNhbGwoYSxiKTtpZihkfHxjLmRpc2Nvbm5lY3RlZE1hdGNofHxhLmRvY3VtZW50JiYxMSE9PWEuZG9jdW1lbnQubm9kZVR5cGUpcmV0dXJuIGR9Y2F0Y2goZSl7fXJldHVybiBnYShiLG4sbnVsbCxbYV0pLmxlbmd0aD4wfSxnYS5jb250YWlucz1mdW5jdGlvbihhLGIpe3JldHVybihhLm93bmVyRG9jdW1lbnR8fGEpIT09biYmbShhKSx0KGEsYil9LGdhLmF0dHI9ZnVuY3Rpb24oYSxiKXsoYS5vd25lckRvY3VtZW50fHxhKSE9PW4mJm0oYSk7dmFyIGU9ZC5hdHRySGFuZGxlW2IudG9Mb3dlckNhc2UoKV0sZj1lJiZDLmNhbGwoZC5hdHRySGFuZGxlLGIudG9Mb3dlckNhc2UoKSk/ZShhLGIsIXApOnZvaWQgMDtyZXR1cm4gdm9pZCAwIT09Zj9mOmMuYXR0cmlidXRlc3x8IXA/YS5nZXRBdHRyaWJ1dGUoYik6KGY9YS5nZXRBdHRyaWJ1dGVOb2RlKGIpKSYmZi5zcGVjaWZpZWQ/Zi52YWx1ZTpudWxsfSxnYS5lc2NhcGU9ZnVuY3Rpb24oYSl7cmV0dXJuKGErIiIpLnJlcGxhY2UoYmEsY2EpfSxnYS5lcnJvcj1mdW5jdGlvbihhKXt0aHJvdyBuZXcgRXJyb3IoIlN5bnRheCBlcnJvciwgdW5yZWNvZ25pemVkIGV4cHJlc3Npb246ICIrYSl9LGdhLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oYSl7dmFyIGIsZD1bXSxlPTAsZj0wO2lmKGw9IWMuZGV0ZWN0RHVwbGljYXRlcyxrPSFjLnNvcnRTdGFibGUmJmEuc2xpY2UoMCksYS5zb3J0KEIpLGwpe3doaWxlKGI9YVtmKytdKWI9PT1hW2ZdJiYoZT1kLnB1c2goZikpO3doaWxlKGUtLSlhLnNwbGljZShkW2VdLDEpfXJldHVybiBrPW51bGwsYX0sZT1nYS5nZXRUZXh0PWZ1bmN0aW9uKGEpe3ZhciBiLGM9IiIsZD0wLGY9YS5ub2RlVHlwZTtpZihmKXtpZigxPT09Znx8OT09PWZ8fDExPT09Zil7aWYoInN0cmluZyI9PXR5cGVvZiBhLnRleHRDb250ZW50KXJldHVybiBhLnRleHRDb250ZW50O2ZvcihhPWEuZmlyc3RDaGlsZDthO2E9YS5uZXh0U2libGluZyljKz1lKGEpfWVsc2UgaWYoMz09PWZ8fDQ9PT1mKXJldHVybiBhLm5vZGVWYWx1ZX1lbHNlIHdoaWxlKGI9YVtkKytdKWMrPWUoYik7cmV0dXJuIGN9LGQ9Z2Euc2VsZWN0b3JzPXtjYWNoZUxlbmd0aDo1MCxjcmVhdGVQc2V1ZG86aWEsbWF0Y2g6VixhdHRySGFuZGxlOnt9LGZpbmQ6e30scmVsYXRpdmU6eyI+Ijp7ZGlyOiJwYXJlbnROb2RlIixmaXJzdDohMH0sIiAiOntkaXI6InBhcmVudE5vZGUifSwiKyI6e2RpcjoicHJldmlvdXNTaWJsaW5nIixmaXJzdDohMH0sIn4iOntkaXI6InByZXZpb3VzU2libGluZyJ9fSxwcmVGaWx0ZXI6e0FUVFI6ZnVuY3Rpb24oYSl7cmV0dXJuIGFbMV09YVsxXS5yZXBsYWNlKF8sYWEpLGFbM109KGFbM118fGFbNF18fGFbNV18fCIiKS5yZXBsYWNlKF8sYWEpLCJ+PSI9PT1hWzJdJiYoYVszXT0iICIrYVszXSsiICIpLGEuc2xpY2UoMCw0KX0sQ0hJTEQ6ZnVuY3Rpb24oYSl7cmV0dXJuIGFbMV09YVsxXS50b0xvd2VyQ2FzZSgpLCJudGgiPT09YVsxXS5zbGljZSgwLDMpPyhhWzNdfHxnYS5lcnJvcihhWzBdKSxhWzRdPSsoYVs0XT9hWzVdKyhhWzZdfHwxKToyKigiZXZlbiI9PT1hWzNdfHwib2RkIj09PWFbM10pKSxhWzVdPSsoYVs3XSthWzhdfHwib2RkIj09PWFbM10pKTphWzNdJiZnYS5lcnJvcihhWzBdKSxhfSxQU0VVRE86ZnVuY3Rpb24oYSl7dmFyIGIsYz0hYVs2XSYmYVsyXTtyZXR1cm4gVi5DSElMRC50ZXN0KGFbMF0pP251bGw6KGFbM10/YVsyXT1hWzRdfHxhWzVdfHwiIjpjJiZULnRlc3QoYykmJihiPWcoYywhMCkpJiYoYj1jLmluZGV4T2YoIikiLGMubGVuZ3RoLWIpLWMubGVuZ3RoKSYmKGFbMF09YVswXS5zbGljZSgwLGIpLGFbMl09Yy5zbGljZSgwLGIpKSxhLnNsaWNlKDAsMykpfX0sZmlsdGVyOntUQUc6ZnVuY3Rpb24oYSl7dmFyIGI9YS5yZXBsYWNlKF8sYWEpLnRvTG93ZXJDYXNlKCk7cmV0dXJuIioiPT09YT9mdW5jdGlvbigpe3JldHVybiEwfTpmdW5jdGlvbihhKXtyZXR1cm4gYS5ub2RlTmFtZSYmYS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09Yn19LENMQVNTOmZ1bmN0aW9uKGEpe3ZhciBiPXlbYSsiICJdO3JldHVybiBifHwoYj1uZXcgUmVnRXhwKCIoXnwiK0srIikiK2ErIigiK0srInwkKSIpKSYmeShhLGZ1bmN0aW9uKGEpe3JldHVybiBiLnRlc3QoInN0cmluZyI9PXR5cGVvZiBhLmNsYXNzTmFtZSYmYS5jbGFzc05hbWV8fCJ1bmRlZmluZWQiIT10eXBlb2YgYS5nZXRBdHRyaWJ1dGUmJmEuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIil9KX0sQVRUUjpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQpe3ZhciBlPWdhLmF0dHIoZCxhKTtyZXR1cm4gbnVsbD09ZT8iIT0iPT09YjohYnx8KGUrPSIiLCI9Ij09PWI/ZT09PWM6IiE9Ij09PWI/ZSE9PWM6Il49Ij09PWI/YyYmMD09PWUuaW5kZXhPZihjKToiKj0iPT09Yj9jJiZlLmluZGV4T2YoYyk+LTE6IiQ9Ij09PWI/YyYmZS5zbGljZSgtYy5sZW5ndGgpPT09Yzoifj0iPT09Yj8oIiAiK2UucmVwbGFjZShPLCIgIikrIiAiKS5pbmRleE9mKGMpPi0xOiJ8PSI9PT1iJiYoZT09PWN8fGUuc2xpY2UoMCxjLmxlbmd0aCsxKT09PWMrIi0iKSl9fSxDSElMRDpmdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSJudGgiIT09YS5zbGljZSgwLDMpLGc9Imxhc3QiIT09YS5zbGljZSgtNCksaD0ib2YtdHlwZSI9PT1iO3JldHVybiAxPT09ZCYmMD09PWU/ZnVuY3Rpb24oYSl7cmV0dXJuISFhLnBhcmVudE5vZGV9OmZ1bmN0aW9uKGIsYyxpKXt2YXIgaixrLGwsbSxuLG8scD1mIT09Zz8ibmV4dFNpYmxpbmciOiJwcmV2aW91c1NpYmxpbmciLHE9Yi5wYXJlbnROb2RlLHI9aCYmYi5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLHM9IWkmJiFoLHQ9ITE7aWYocSl7aWYoZil7d2hpbGUocCl7bT1iO3doaWxlKG09bVtwXSlpZihoP20ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXI6MT09PW0ubm9kZVR5cGUpcmV0dXJuITE7bz1wPSJvbmx5Ij09PWEmJiFvJiYibmV4dFNpYmxpbmcifXJldHVybiEwfWlmKG89W2c/cS5maXJzdENoaWxkOnEubGFzdENoaWxkXSxnJiZzKXttPXEsbD1tW3VdfHwobVt1XT17fSksaz1sW20udW5pcXVlSURdfHwobFttLnVuaXF1ZUlEXT17fSksaj1rW2FdfHxbXSxuPWpbMF09PT13JiZqWzFdLHQ9biYmalsyXSxtPW4mJnEuY2hpbGROb2Rlc1tuXTt3aGlsZShtPSsrbiYmbSYmbVtwXXx8KHQ9bj0wKXx8by5wb3AoKSlpZigxPT09bS5ub2RlVHlwZSYmKyt0JiZtPT09Yil7a1thXT1bdyxuLHRdO2JyZWFrfX1lbHNlIGlmKHMmJihtPWIsbD1tW3VdfHwobVt1XT17fSksaz1sW20udW5pcXVlSURdfHwobFttLnVuaXF1ZUlEXT17fSksaj1rW2FdfHxbXSxuPWpbMF09PT13JiZqWzFdLHQ9biksdD09PSExKXdoaWxlKG09KytuJiZtJiZtW3BdfHwodD1uPTApfHxvLnBvcCgpKWlmKChoP20ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXI6MT09PW0ubm9kZVR5cGUpJiYrK3QmJihzJiYobD1tW3VdfHwobVt1XT17fSksaz1sW20udW5pcXVlSURdfHwobFttLnVuaXF1ZUlEXT17fSksa1thXT1bdyx0XSksbT09PWIpKWJyZWFrO3JldHVybiB0LT1lLHQ9PT1kfHx0JWQ9PT0wJiZ0L2Q+PTB9fX0sUFNFVURPOmZ1bmN0aW9uKGEsYil7dmFyIGMsZT1kLnBzZXVkb3NbYV18fGQuc2V0RmlsdGVyc1thLnRvTG93ZXJDYXNlKCldfHxnYS5lcnJvcigidW5zdXBwb3J0ZWQgcHNldWRvOiAiK2EpO3JldHVybiBlW3VdP2UoYik6ZS5sZW5ndGg+MT8oYz1bYSxhLCIiLGJdLGQuc2V0RmlsdGVycy5oYXNPd25Qcm9wZXJ0eShhLnRvTG93ZXJDYXNlKCkpP2lhKGZ1bmN0aW9uKGEsYyl7dmFyIGQsZj1lKGEsYiksZz1mLmxlbmd0aDt3aGlsZShnLS0pZD1JKGEsZltnXSksYVtkXT0hKGNbZF09ZltnXSl9KTpmdW5jdGlvbihhKXtyZXR1cm4gZShhLDAsYyl9KTplfX0scHNldWRvczp7bm90OmlhKGZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM9W10sZD1oKGEucmVwbGFjZShQLCIkMSIpKTtyZXR1cm4gZFt1XT9pYShmdW5jdGlvbihhLGIsYyxlKXt2YXIgZixnPWQoYSxudWxsLGUsW10pLGg9YS5sZW5ndGg7d2hpbGUoaC0tKShmPWdbaF0pJiYoYVtoXT0hKGJbaF09ZikpfSk6ZnVuY3Rpb24oYSxlLGYpe3JldHVybiBiWzBdPWEsZChiLG51bGwsZixjKSxiWzBdPW51bGwsIWMucG9wKCl9fSksaGFzOmlhKGZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXtyZXR1cm4gZ2EoYSxiKS5sZW5ndGg+MH19KSxjb250YWluczppYShmdW5jdGlvbihhKXtyZXR1cm4gYT1hLnJlcGxhY2UoXyxhYSksZnVuY3Rpb24oYil7cmV0dXJuKGIudGV4dENvbnRlbnR8fGIuaW5uZXJUZXh0fHxlKGIpKS5pbmRleE9mKGEpPi0xfX0pLGxhbmc6aWEoZnVuY3Rpb24oYSl7cmV0dXJuIFUudGVzdChhfHwiIil8fGdhLmVycm9yKCJ1bnN1cHBvcnRlZCBsYW5nOiAiK2EpLGE9YS5yZXBsYWNlKF8sYWEpLnRvTG93ZXJDYXNlKCksZnVuY3Rpb24oYil7dmFyIGM7ZG8gaWYoYz1wP2IubGFuZzpiLmdldEF0dHJpYnV0ZSgieG1sOmxhbmciKXx8Yi5nZXRBdHRyaWJ1dGUoImxhbmciKSlyZXR1cm4gYz1jLnRvTG93ZXJDYXNlKCksYz09PWF8fDA9PT1jLmluZGV4T2YoYSsiLSIpO3doaWxlKChiPWIucGFyZW50Tm9kZSkmJjE9PT1iLm5vZGVUeXBlKTtyZXR1cm4hMX19KSx0YXJnZXQ6ZnVuY3Rpb24oYil7dmFyIGM9YS5sb2NhdGlvbiYmYS5sb2NhdGlvbi5oYXNoO3JldHVybiBjJiZjLnNsaWNlKDEpPT09Yi5pZH0scm9vdDpmdW5jdGlvbihhKXtyZXR1cm4gYT09PW99LGZvY3VzOmZ1bmN0aW9uKGEpe3JldHVybiBhPT09bi5hY3RpdmVFbGVtZW50JiYoIW4uaGFzRm9jdXN8fG4uaGFzRm9jdXMoKSkmJiEhKGEudHlwZXx8YS5ocmVmfHx+YS50YWJJbmRleCl9LGVuYWJsZWQ6b2EoITEpLGRpc2FibGVkOm9hKCEwKSxjaGVja2VkOmZ1bmN0aW9uKGEpe3ZhciBiPWEubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4iaW5wdXQiPT09YiYmISFhLmNoZWNrZWR8fCJvcHRpb24iPT09YiYmISFhLnNlbGVjdGVkfSxzZWxlY3RlZDpmdW5jdGlvbihhKXtyZXR1cm4gYS5wYXJlbnROb2RlJiZhLnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCxhLnNlbGVjdGVkPT09ITB9LGVtcHR5OmZ1bmN0aW9uKGEpe2ZvcihhPWEuZmlyc3RDaGlsZDthO2E9YS5uZXh0U2libGluZylpZihhLm5vZGVUeXBlPDYpcmV0dXJuITE7cmV0dXJuITB9LHBhcmVudDpmdW5jdGlvbihhKXtyZXR1cm4hZC5wc2V1ZG9zLmVtcHR5KGEpfSxoZWFkZXI6ZnVuY3Rpb24oYSl7cmV0dXJuIFgudGVzdChhLm5vZGVOYW1lKX0saW5wdXQ6ZnVuY3Rpb24oYSl7cmV0dXJuIFcudGVzdChhLm5vZGVOYW1lKX0sYnV0dG9uOmZ1bmN0aW9uKGEpe3ZhciBiPWEubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4iaW5wdXQiPT09YiYmImJ1dHRvbiI9PT1hLnR5cGV8fCJidXR0b24iPT09Yn0sdGV4dDpmdW5jdGlvbihhKXt2YXIgYjtyZXR1cm4iaW5wdXQiPT09YS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpJiYidGV4dCI9PT1hLnR5cGUmJihudWxsPT0oYj1hLmdldEF0dHJpYnV0ZSgidHlwZSIpKXx8InRleHQiPT09Yi50b0xvd2VyQ2FzZSgpKX0sZmlyc3Q6cGEoZnVuY3Rpb24oKXtyZXR1cm5bMF19KSxsYXN0OnBhKGZ1bmN0aW9uKGEsYil7cmV0dXJuW2ItMV19KSxlcTpwYShmdW5jdGlvbihhLGIsYyl7cmV0dXJuW2M8MD9jK2I6Y119KSxldmVuOnBhKGZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiO2MrPTIpYS5wdXNoKGMpO3JldHVybiBhfSksb2RkOnBhKGZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTE7YzxiO2MrPTIpYS5wdXNoKGMpO3JldHVybiBhfSksbHQ6cGEoZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD1jPDA/YytiOmM7LS1kPj0wOylhLnB1c2goZCk7cmV0dXJuIGF9KSxndDpwYShmdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPWM8MD9jK2I6YzsrK2Q8YjspYS5wdXNoKGQpO3JldHVybiBhfSl9fSxkLnBzZXVkb3MubnRoPWQucHNldWRvcy5lcTtmb3IoYiBpbntyYWRpbzohMCxjaGVja2JveDohMCxmaWxlOiEwLHBhc3N3b3JkOiEwLGltYWdlOiEwfSlkLnBzZXVkb3NbYl09bWEoYik7Zm9yKGIgaW57c3VibWl0OiEwLHJlc2V0OiEwfSlkLnBzZXVkb3NbYl09bmEoYik7ZnVuY3Rpb24gcmEoKXt9cmEucHJvdG90eXBlPWQuZmlsdGVycz1kLnBzZXVkb3MsZC5zZXRGaWx0ZXJzPW5ldyByYSxnPWdhLnRva2VuaXplPWZ1bmN0aW9uKGEsYil7dmFyIGMsZSxmLGcsaCxpLGosaz16W2ErIiAiXTtpZihrKXJldHVybiBiPzA6ay5zbGljZSgwKTtoPWEsaT1bXSxqPWQucHJlRmlsdGVyO3doaWxlKGgpe2MmJiEoZT1RLmV4ZWMoaCkpfHwoZSYmKGg9aC5zbGljZShlWzBdLmxlbmd0aCl8fGgpLGkucHVzaChmPVtdKSksYz0hMSwoZT1SLmV4ZWMoaCkpJiYoYz1lLnNoaWZ0KCksZi5wdXNoKHt2YWx1ZTpjLHR5cGU6ZVswXS5yZXBsYWNlKFAsIiAiKX0pLGg9aC5zbGljZShjLmxlbmd0aCkpO2ZvcihnIGluIGQuZmlsdGVyKSEoZT1WW2ddLmV4ZWMoaCkpfHxqW2ddJiYhKGU9altnXShlKSl8fChjPWUuc2hpZnQoKSxmLnB1c2goe3ZhbHVlOmMsdHlwZTpnLG1hdGNoZXM6ZX0pLGg9aC5zbGljZShjLmxlbmd0aCkpO2lmKCFjKWJyZWFrfXJldHVybiBiP2gubGVuZ3RoOmg/Z2EuZXJyb3IoYSk6eihhLGkpLnNsaWNlKDApfTtmdW5jdGlvbiBzYShhKXtmb3IodmFyIGI9MCxjPWEubGVuZ3RoLGQ9IiI7YjxjO2IrKylkKz1hW2JdLnZhbHVlO3JldHVybiBkfWZ1bmN0aW9uIHRhKGEsYixjKXt2YXIgZD1iLmRpcixlPWIubmV4dCxmPWV8fGQsZz1jJiYicGFyZW50Tm9kZSI9PT1mLGg9eCsrO3JldHVybiBiLmZpcnN0P2Z1bmN0aW9uKGIsYyxlKXt3aGlsZShiPWJbZF0paWYoMT09PWIubm9kZVR5cGV8fGcpcmV0dXJuIGEoYixjLGUpO3JldHVybiExfTpmdW5jdGlvbihiLGMsaSl7dmFyIGosayxsLG09W3csaF07aWYoaSl7d2hpbGUoYj1iW2RdKWlmKCgxPT09Yi5ub2RlVHlwZXx8ZykmJmEoYixjLGkpKXJldHVybiEwfWVsc2Ugd2hpbGUoYj1iW2RdKWlmKDE9PT1iLm5vZGVUeXBlfHxnKWlmKGw9Ylt1XXx8KGJbdV09e30pLGs9bFtiLnVuaXF1ZUlEXXx8KGxbYi51bmlxdWVJRF09e30pLGUmJmU9PT1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpYj1iW2RdfHxiO2Vsc2V7aWYoKGo9a1tmXSkmJmpbMF09PT13JiZqWzFdPT09aClyZXR1cm4gbVsyXT1qWzJdO2lmKGtbZl09bSxtWzJdPWEoYixjLGkpKXJldHVybiEwfXJldHVybiExfX1mdW5jdGlvbiB1YShhKXtyZXR1cm4gYS5sZW5ndGg+MT9mdW5jdGlvbihiLGMsZCl7dmFyIGU9YS5sZW5ndGg7d2hpbGUoZS0tKWlmKCFhW2VdKGIsYyxkKSlyZXR1cm4hMTtyZXR1cm4hMH06YVswXX1mdW5jdGlvbiB2YShhLGIsYyl7Zm9yKHZhciBkPTAsZT1iLmxlbmd0aDtkPGU7ZCsrKWdhKGEsYltkXSxjKTtyZXR1cm4gY31mdW5jdGlvbiB3YShhLGIsYyxkLGUpe2Zvcih2YXIgZixnPVtdLGg9MCxpPWEubGVuZ3RoLGo9bnVsbCE9YjtoPGk7aCsrKShmPWFbaF0pJiYoYyYmIWMoZixkLGUpfHwoZy5wdXNoKGYpLGomJmIucHVzaChoKSkpO3JldHVybiBnfWZ1bmN0aW9uIHhhKGEsYixjLGQsZSxmKXtyZXR1cm4gZCYmIWRbdV0mJihkPXhhKGQpKSxlJiYhZVt1XSYmKGU9eGEoZSxmKSksaWEoZnVuY3Rpb24oZixnLGgsaSl7dmFyIGosayxsLG09W10sbj1bXSxvPWcubGVuZ3RoLHA9Znx8dmEoYnx8IioiLGgubm9kZVR5cGU/W2hdOmgsW10pLHE9IWF8fCFmJiZiP3A6d2EocCxtLGEsaCxpKSxyPWM/ZXx8KGY/YTpvfHxkKT9bXTpnOnE7aWYoYyYmYyhxLHIsaCxpKSxkKXtqPXdhKHIsbiksZChqLFtdLGgsaSksaz1qLmxlbmd0aDt3aGlsZShrLS0pKGw9altrXSkmJihyW25ba11dPSEocVtuW2tdXT1sKSl9aWYoZil7aWYoZXx8YSl7aWYoZSl7aj1bXSxrPXIubGVuZ3RoO3doaWxlKGstLSkobD1yW2tdKSYmai5wdXNoKHFba109bCk7ZShudWxsLHI9W10saixpKX1rPXIubGVuZ3RoO3doaWxlKGstLSkobD1yW2tdKSYmKGo9ZT9JKGYsbCk6bVtrXSk+LTEmJihmW2pdPSEoZ1tqXT1sKSl9fWVsc2Ugcj13YShyPT09Zz9yLnNwbGljZShvLHIubGVuZ3RoKTpyKSxlP2UobnVsbCxnLHIsaSk6Ry5hcHBseShnLHIpfSl9ZnVuY3Rpb24geWEoYSl7Zm9yKHZhciBiLGMsZSxmPWEubGVuZ3RoLGc9ZC5yZWxhdGl2ZVthWzBdLnR5cGVdLGg9Z3x8ZC5yZWxhdGl2ZVsiICJdLGk9Zz8xOjAsaz10YShmdW5jdGlvbihhKXtyZXR1cm4gYT09PWJ9LGgsITApLGw9dGEoZnVuY3Rpb24oYSl7cmV0dXJuIEkoYixhKT4tMX0saCwhMCksbT1bZnVuY3Rpb24oYSxjLGQpe3ZhciBlPSFnJiYoZHx8YyE9PWopfHwoKGI9Yykubm9kZVR5cGU/ayhhLGMsZCk6bChhLGMsZCkpO3JldHVybiBiPW51bGwsZX1dO2k8ZjtpKyspaWYoYz1kLnJlbGF0aXZlW2FbaV0udHlwZV0pbT1bdGEodWEobSksYyldO2Vsc2V7aWYoYz1kLmZpbHRlclthW2ldLnR5cGVdLmFwcGx5KG51bGwsYVtpXS5tYXRjaGVzKSxjW3VdKXtmb3IoZT0rK2k7ZTxmO2UrKylpZihkLnJlbGF0aXZlW2FbZV0udHlwZV0pYnJlYWs7cmV0dXJuIHhhKGk+MSYmdWEobSksaT4xJiZzYShhLnNsaWNlKDAsaS0xKS5jb25jYXQoe3ZhbHVlOiIgIj09PWFbaS0yXS50eXBlPyIqIjoiIn0pKS5yZXBsYWNlKFAsIiQxIiksYyxpPGUmJnlhKGEuc2xpY2UoaSxlKSksZTxmJiZ5YShhPWEuc2xpY2UoZSkpLGU8ZiYmc2EoYSkpfW0ucHVzaChjKX1yZXR1cm4gdWEobSl9ZnVuY3Rpb24gemEoYSxiKXt2YXIgYz1iLmxlbmd0aD4wLGU9YS5sZW5ndGg+MCxmPWZ1bmN0aW9uKGYsZyxoLGksayl7dmFyIGwsbyxxLHI9MCxzPSIwIix0PWYmJltdLHU9W10sdj1qLHg9Znx8ZSYmZC5maW5kLlRBRygiKiIsaykseT13Kz1udWxsPT12PzE6TWF0aC5yYW5kb20oKXx8LjEsej14Lmxlbmd0aDtmb3IoayYmKGo9Zz09PW58fGd8fGspO3MhPT16JiZudWxsIT0obD14W3NdKTtzKyspe2lmKGUmJmwpe289MCxnfHxsLm93bmVyRG9jdW1lbnQ9PT1ufHwobShsKSxoPSFwKTt3aGlsZShxPWFbbysrXSlpZihxKGwsZ3x8bixoKSl7aS5wdXNoKGwpO2JyZWFrfWsmJih3PXkpfWMmJigobD0hcSYmbCkmJnItLSxmJiZ0LnB1c2gobCkpfWlmKHIrPXMsYyYmcyE9PXIpe289MDt3aGlsZShxPWJbbysrXSlxKHQsdSxnLGgpO2lmKGYpe2lmKHI+MCl3aGlsZShzLS0pdFtzXXx8dVtzXXx8KHVbc109RS5jYWxsKGkpKTt1PXdhKHUpfUcuYXBwbHkoaSx1KSxrJiYhZiYmdS5sZW5ndGg+MCYmcitiLmxlbmd0aD4xJiZnYS51bmlxdWVTb3J0KGkpfXJldHVybiBrJiYodz15LGo9diksdH07cmV0dXJuIGM/aWEoZik6Zn1yZXR1cm4gaD1nYS5jb21waWxlPWZ1bmN0aW9uKGEsYil7dmFyIGMsZD1bXSxlPVtdLGY9QVthKyIgIl07aWYoIWYpe2J8fChiPWcoYSkpLGM9Yi5sZW5ndGg7d2hpbGUoYy0tKWY9eWEoYltjXSksZlt1XT9kLnB1c2goZik6ZS5wdXNoKGYpO2Y9QShhLHphKGUsZCkpLGYuc2VsZWN0b3I9YX1yZXR1cm4gZn0saT1nYS5zZWxlY3Q9ZnVuY3Rpb24oYSxiLGMsZSl7dmFyIGYsaSxqLGssbCxtPSJmdW5jdGlvbiI9PXR5cGVvZiBhJiZhLG49IWUmJmcoYT1tLnNlbGVjdG9yfHxhKTtpZihjPWN8fFtdLDE9PT1uLmxlbmd0aCl7aWYoaT1uWzBdPW5bMF0uc2xpY2UoMCksaS5sZW5ndGg+MiYmIklEIj09PShqPWlbMF0pLnR5cGUmJjk9PT1iLm5vZGVUeXBlJiZwJiZkLnJlbGF0aXZlW2lbMV0udHlwZV0pe2lmKGI9KGQuZmluZC5JRChqLm1hdGNoZXNbMF0ucmVwbGFjZShfLGFhKSxiKXx8W10pWzBdLCFiKXJldHVybiBjO20mJihiPWIucGFyZW50Tm9kZSksYT1hLnNsaWNlKGkuc2hpZnQoKS52YWx1ZS5sZW5ndGgpfWY9Vi5uZWVkc0NvbnRleHQudGVzdChhKT8wOmkubGVuZ3RoO3doaWxlKGYtLSl7aWYoaj1pW2ZdLGQucmVsYXRpdmVbaz1qLnR5cGVdKWJyZWFrO2lmKChsPWQuZmluZFtrXSkmJihlPWwoai5tYXRjaGVzWzBdLnJlcGxhY2UoXyxhYSksJC50ZXN0KGlbMF0udHlwZSkmJnFhKGIucGFyZW50Tm9kZSl8fGIpKSl7aWYoaS5zcGxpY2UoZiwxKSxhPWUubGVuZ3RoJiZzYShpKSwhYSlyZXR1cm4gRy5hcHBseShjLGUpLGM7YnJlYWt9fX1yZXR1cm4obXx8aChhLG4pKShlLGIsIXAsYywhYnx8JC50ZXN0KGEpJiZxYShiLnBhcmVudE5vZGUpfHxiKSxjfSxjLnNvcnRTdGFibGU9dS5zcGxpdCgiIikuc29ydChCKS5qb2luKCIiKT09PXUsYy5kZXRlY3REdXBsaWNhdGVzPSEhbCxtKCksYy5zb3J0RGV0YWNoZWQ9amEoZnVuY3Rpb24oYSl7cmV0dXJuIDEmYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihuLmNyZWF0ZUVsZW1lbnQoImZpZWxkc2V0IikpfSksamEoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaW5uZXJIVE1MPSI8YSBocmVmPScjJz48L2E+IiwiIyI9PT1hLmZpcnN0Q2hpbGQuZ2V0QXR0cmlidXRlKCJocmVmIil9KXx8a2EoInR5cGV8aHJlZnxoZWlnaHR8d2lkdGgiLGZ1bmN0aW9uKGEsYixjKXtpZighYylyZXR1cm4gYS5nZXRBdHRyaWJ1dGUoYiwidHlwZSI9PT1iLnRvTG93ZXJDYXNlKCk/MToyKX0pLGMuYXR0cmlidXRlcyYmamEoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaW5uZXJIVE1MPSI8aW5wdXQvPiIsYS5maXJzdENoaWxkLnNldEF0dHJpYnV0ZSgidmFsdWUiLCIiKSwiIj09PWEuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUoInZhbHVlIil9KXx8a2EoInZhbHVlIixmdW5jdGlvbihhLGIsYyl7aWYoIWMmJiJpbnB1dCI9PT1hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpcmV0dXJuIGEuZGVmYXVsdFZhbHVlfSksamEoZnVuY3Rpb24oYSl7cmV0dXJuIG51bGw9PWEuZ2V0QXR0cmlidXRlKCJkaXNhYmxlZCIpfSl8fGthKEosZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2lmKCFjKXJldHVybiBhW2JdPT09ITA/Yi50b0xvd2VyQ2FzZSgpOihkPWEuZ2V0QXR0cmlidXRlTm9kZShiKSkmJmQuc3BlY2lmaWVkP2QudmFsdWU6bnVsbH0pLGdhfShhKTtyLmZpbmQ9eCxyLmV4cHI9eC5zZWxlY3RvcnMsci5leHByWyI6Il09ci5leHByLnBzZXVkb3Msci51bmlxdWVTb3J0PXIudW5pcXVlPXgudW5pcXVlU29ydCxyLnRleHQ9eC5nZXRUZXh0LHIuaXNYTUxEb2M9eC5pc1hNTCxyLmNvbnRhaW5zPXguY29udGFpbnMsci5lc2NhcGVTZWxlY3Rvcj14LmVzY2FwZTt2YXIgeT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W10sZT12b2lkIDAhPT1jO3doaWxlKChhPWFbYl0pJiY5IT09YS5ub2RlVHlwZSlpZigxPT09YS5ub2RlVHlwZSl7aWYoZSYmcihhKS5pcyhjKSlicmVhaztkLnB1c2goYSl9cmV0dXJuIGR9LHo9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9W107YTthPWEubmV4dFNpYmxpbmcpMT09PWEubm9kZVR5cGUmJmEhPT1iJiZjLnB1c2goYSk7cmV0dXJuIGN9LEE9ci5leHByLm1hdGNoLm5lZWRzQ29udGV4dDtmdW5jdGlvbiBCKGEsYil7cmV0dXJuIGEubm9kZU5hbWUmJmEubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PWIudG9Mb3dlckNhc2UoKX12YXIgQz0vXjwoW2Etel1bXlwvXDA+Olx4MjBcdFxyXG5cZl0qKVtceDIwXHRcclxuXGZdKlwvPz4oPzo8XC9cMT58KSQvaSxEPS9eLlteOiNcW1wuLF0qJC87ZnVuY3Rpb24gRShhLGIsYyl7cmV0dXJuIHIuaXNGdW5jdGlvbihiKT9yLmdyZXAoYSxmdW5jdGlvbihhLGQpe3JldHVybiEhYi5jYWxsKGEsZCxhKSE9PWN9KTpiLm5vZGVUeXBlP3IuZ3JlcChhLGZ1bmN0aW9uKGEpe3JldHVybiBhPT09YiE9PWN9KToic3RyaW5nIiE9dHlwZW9mIGI/ci5ncmVwKGEsZnVuY3Rpb24oYSl7cmV0dXJuIGkuY2FsbChiLGEpPi0xIT09Y30pOkQudGVzdChiKT9yLmZpbHRlcihiLGEsYyk6KGI9ci5maWx0ZXIoYixhKSxyLmdyZXAoYSxmdW5jdGlvbihhKXtyZXR1cm4gaS5jYWxsKGIsYSk+LTEhPT1jJiYxPT09YS5ub2RlVHlwZX0pKX1yLmZpbHRlcj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YlswXTtyZXR1cm4gYyYmKGE9Ijpub3QoIithKyIpIiksMT09PWIubGVuZ3RoJiYxPT09ZC5ub2RlVHlwZT9yLmZpbmQubWF0Y2hlc1NlbGVjdG9yKGQsYSk/W2RdOltdOnIuZmluZC5tYXRjaGVzKGEsci5ncmVwKGIsZnVuY3Rpb24oYSl7cmV0dXJuIDE9PT1hLm5vZGVUeXBlfSkpfSxyLmZuLmV4dGVuZCh7ZmluZDpmdW5jdGlvbihhKXt2YXIgYixjLGQ9dGhpcy5sZW5ndGgsZT10aGlzO2lmKCJzdHJpbmciIT10eXBlb2YgYSlyZXR1cm4gdGhpcy5wdXNoU3RhY2socihhKS5maWx0ZXIoZnVuY3Rpb24oKXtmb3IoYj0wO2I8ZDtiKyspaWYoci5jb250YWlucyhlW2JdLHRoaXMpKXJldHVybiEwfSkpO2ZvcihjPXRoaXMucHVzaFN0YWNrKFtdKSxiPTA7YjxkO2IrKylyLmZpbmQoYSxlW2JdLGMpO3JldHVybiBkPjE/ci51bmlxdWVTb3J0KGMpOmN9LGZpbHRlcjpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soRSh0aGlzLGF8fFtdLCExKSl9LG5vdDpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soRSh0aGlzLGF8fFtdLCEwKSl9LGlzOmZ1bmN0aW9uKGEpe3JldHVybiEhRSh0aGlzLCJzdHJpbmciPT10eXBlb2YgYSYmQS50ZXN0KGEpP3IoYSk6YXx8W10sITEpLmxlbmd0aH19KTt2YXIgRixHPS9eKD86XHMqKDxbXHdcV10rPilbXj5dKnwjKFtcdy1dKykpJC8sSD1yLmZuLmluaXQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBlLGY7aWYoIWEpcmV0dXJuIHRoaXM7aWYoYz1jfHxGLCJzdHJpbmciPT10eXBlb2YgYSl7aWYoZT0iPCI9PT1hWzBdJiYiPiI9PT1hW2EubGVuZ3RoLTFdJiZhLmxlbmd0aD49Mz9bbnVsbCxhLG51bGxdOkcuZXhlYyhhKSwhZXx8IWVbMV0mJmIpcmV0dXJuIWJ8fGIuanF1ZXJ5PyhifHxjKS5maW5kKGEpOnRoaXMuY29uc3RydWN0b3IoYikuZmluZChhKTtpZihlWzFdKXtpZihiPWIgaW5zdGFuY2VvZiByP2JbMF06YixyLm1lcmdlKHRoaXMsci5wYXJzZUhUTUwoZVsxXSxiJiZiLm5vZGVUeXBlP2Iub3duZXJEb2N1bWVudHx8YjpkLCEwKSksQy50ZXN0KGVbMV0pJiZyLmlzUGxhaW5PYmplY3QoYikpZm9yKGUgaW4gYilyLmlzRnVuY3Rpb24odGhpc1tlXSk/dGhpc1tlXShiW2VdKTp0aGlzLmF0dHIoZSxiW2VdKTtyZXR1cm4gdGhpc31yZXR1cm4gZj1kLmdldEVsZW1lbnRCeUlkKGVbMl0pLGYmJih0aGlzWzBdPWYsdGhpcy5sZW5ndGg9MSksdGhpc31yZXR1cm4gYS5ub2RlVHlwZT8odGhpc1swXT1hLHRoaXMubGVuZ3RoPTEsdGhpcyk6ci5pc0Z1bmN0aW9uKGEpP3ZvaWQgMCE9PWMucmVhZHk/Yy5yZWFkeShhKTphKHIpOnIubWFrZUFycmF5KGEsdGhpcyl9O0gucHJvdG90eXBlPXIuZm4sRj1yKGQpO3ZhciBJPS9eKD86cGFyZW50c3xwcmV2KD86VW50aWx8QWxsKSkvLEo9e2NoaWxkcmVuOiEwLGNvbnRlbnRzOiEwLG5leHQ6ITAscHJldjohMH07ci5mbi5leHRlbmQoe2hhczpmdW5jdGlvbihhKXt2YXIgYj1yKGEsdGhpcyksYz1iLmxlbmd0aDtyZXR1cm4gdGhpcy5maWx0ZXIoZnVuY3Rpb24oKXtmb3IodmFyIGE9MDthPGM7YSsrKWlmKHIuY29udGFpbnModGhpcyxiW2FdKSlyZXR1cm4hMH0pfSxjbG9zZXN0OmZ1bmN0aW9uKGEsYil7dmFyIGMsZD0wLGU9dGhpcy5sZW5ndGgsZj1bXSxnPSJzdHJpbmciIT10eXBlb2YgYSYmcihhKTtpZighQS50ZXN0KGEpKWZvcig7ZDxlO2QrKylmb3IoYz10aGlzW2RdO2MmJmMhPT1iO2M9Yy5wYXJlbnROb2RlKWlmKGMubm9kZVR5cGU8MTEmJihnP2cuaW5kZXgoYyk+LTE6MT09PWMubm9kZVR5cGUmJnIuZmluZC5tYXRjaGVzU2VsZWN0b3IoYyxhKSkpe2YucHVzaChjKTticmVha31yZXR1cm4gdGhpcy5wdXNoU3RhY2soZi5sZW5ndGg+MT9yLnVuaXF1ZVNvcnQoZik6Zil9LGluZGV4OmZ1bmN0aW9uKGEpe3JldHVybiBhPyJzdHJpbmciPT10eXBlb2YgYT9pLmNhbGwocihhKSx0aGlzWzBdKTppLmNhbGwodGhpcyxhLmpxdWVyeT9hWzBdOmEpOnRoaXNbMF0mJnRoaXNbMF0ucGFyZW50Tm9kZT90aGlzLmZpcnN0KCkucHJldkFsbCgpLmxlbmd0aDotMX0sYWRkOmZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMucHVzaFN0YWNrKHIudW5pcXVlU29ydChyLm1lcmdlKHRoaXMuZ2V0KCkscihhLGIpKSkpfSxhZGRCYWNrOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmFkZChudWxsPT1hP3RoaXMucHJldk9iamVjdDp0aGlzLnByZXZPYmplY3QuZmlsdGVyKGEpKX19KTtmdW5jdGlvbiBLKGEsYil7d2hpbGUoKGE9YVtiXSkmJjEhPT1hLm5vZGVUeXBlKTtyZXR1cm4gYX1yLmVhY2goe3BhcmVudDpmdW5jdGlvbihhKXt2YXIgYj1hLnBhcmVudE5vZGU7cmV0dXJuIGImJjExIT09Yi5ub2RlVHlwZT9iOm51bGx9LHBhcmVudHM6ZnVuY3Rpb24oYSl7cmV0dXJuIHkoYSwicGFyZW50Tm9kZSIpfSxwYXJlbnRzVW50aWw6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiB5KGEsInBhcmVudE5vZGUiLGMpfSxuZXh0OmZ1bmN0aW9uKGEpe3JldHVybiBLKGEsIm5leHRTaWJsaW5nIil9LHByZXY6ZnVuY3Rpb24oYSl7cmV0dXJuIEsoYSwicHJldmlvdXNTaWJsaW5nIil9LG5leHRBbGw6ZnVuY3Rpb24oYSl7cmV0dXJuIHkoYSwibmV4dFNpYmxpbmciKX0scHJldkFsbDpmdW5jdGlvbihhKXtyZXR1cm4geShhLCJwcmV2aW91c1NpYmxpbmciKX0sbmV4dFVudGlsOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4geShhLCJuZXh0U2libGluZyIsYyl9LHByZXZVbnRpbDpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIHkoYSwicHJldmlvdXNTaWJsaW5nIixjKX0sc2libGluZ3M6ZnVuY3Rpb24oYSl7cmV0dXJuIHooKGEucGFyZW50Tm9kZXx8e30pLmZpcnN0Q2hpbGQsYSl9LGNoaWxkcmVuOmZ1bmN0aW9uKGEpe3JldHVybiB6KGEuZmlyc3RDaGlsZCl9LGNvbnRlbnRzOmZ1bmN0aW9uKGEpe3JldHVybiBCKGEsImlmcmFtZSIpP2EuY29udGVudERvY3VtZW50OihCKGEsInRlbXBsYXRlIikmJihhPWEuY29udGVudHx8YSksci5tZXJnZShbXSxhLmNoaWxkTm9kZXMpKX19LGZ1bmN0aW9uKGEsYil7ci5mblthXT1mdW5jdGlvbihjLGQpe3ZhciBlPXIubWFwKHRoaXMsYixjKTtyZXR1cm4iVW50aWwiIT09YS5zbGljZSgtNSkmJihkPWMpLGQmJiJzdHJpbmciPT10eXBlb2YgZCYmKGU9ci5maWx0ZXIoZCxlKSksdGhpcy5sZW5ndGg+MSYmKEpbYV18fHIudW5pcXVlU29ydChlKSxJLnRlc3QoYSkmJmUucmV2ZXJzZSgpKSx0aGlzLnB1c2hTdGFjayhlKX19KTt2YXIgTD0vW15ceDIwXHRcclxuXGZdKy9nO2Z1bmN0aW9uIE0oYSl7dmFyIGI9e307cmV0dXJuIHIuZWFjaChhLm1hdGNoKEwpfHxbXSxmdW5jdGlvbihhLGMpe2JbY109ITB9KSxifXIuQ2FsbGJhY2tzPWZ1bmN0aW9uKGEpe2E9InN0cmluZyI9PXR5cGVvZiBhP00oYSk6ci5leHRlbmQoe30sYSk7dmFyIGIsYyxkLGUsZj1bXSxnPVtdLGg9LTEsaT1mdW5jdGlvbigpe2ZvcihlPWV8fGEub25jZSxkPWI9ITA7Zy5sZW5ndGg7aD0tMSl7Yz1nLnNoaWZ0KCk7d2hpbGUoKytoPGYubGVuZ3RoKWZbaF0uYXBwbHkoY1swXSxjWzFdKT09PSExJiZhLnN0b3BPbkZhbHNlJiYoaD1mLmxlbmd0aCxjPSExKX1hLm1lbW9yeXx8KGM9ITEpLGI9ITEsZSYmKGY9Yz9bXToiIil9LGo9e2FkZDpmdW5jdGlvbigpe3JldHVybiBmJiYoYyYmIWImJihoPWYubGVuZ3RoLTEsZy5wdXNoKGMpKSxmdW5jdGlvbiBkKGIpe3IuZWFjaChiLGZ1bmN0aW9uKGIsYyl7ci5pc0Z1bmN0aW9uKGMpP2EudW5pcXVlJiZqLmhhcyhjKXx8Zi5wdXNoKGMpOmMmJmMubGVuZ3RoJiYic3RyaW5nIiE9PXIudHlwZShjKSYmZChjKX0pfShhcmd1bWVudHMpLGMmJiFiJiZpKCkpLHRoaXN9LHJlbW92ZTpmdW5jdGlvbigpe3JldHVybiByLmVhY2goYXJndW1lbnRzLGZ1bmN0aW9uKGEsYil7dmFyIGM7d2hpbGUoKGM9ci5pbkFycmF5KGIsZixjKSk+LTEpZi5zcGxpY2UoYywxKSxjPD1oJiZoLS19KSx0aGlzfSxoYXM6ZnVuY3Rpb24oYSl7cmV0dXJuIGE/ci5pbkFycmF5KGEsZik+LTE6Zi5sZW5ndGg+MH0sZW1wdHk6ZnVuY3Rpb24oKXtyZXR1cm4gZiYmKGY9W10pLHRoaXN9LGRpc2FibGU6ZnVuY3Rpb24oKXtyZXR1cm4gZT1nPVtdLGY9Yz0iIix0aGlzfSxkaXNhYmxlZDpmdW5jdGlvbigpe3JldHVybiFmfSxsb2NrOmZ1bmN0aW9uKCl7cmV0dXJuIGU9Zz1bXSxjfHxifHwoZj1jPSIiKSx0aGlzfSxsb2NrZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hIWV9LGZpcmVXaXRoOmZ1bmN0aW9uKGEsYyl7cmV0dXJuIGV8fChjPWN8fFtdLGM9W2EsYy5zbGljZT9jLnNsaWNlKCk6Y10sZy5wdXNoKGMpLGJ8fGkoKSksdGhpc30sZmlyZTpmdW5jdGlvbigpe3JldHVybiBqLmZpcmVXaXRoKHRoaXMsYXJndW1lbnRzKSx0aGlzfSxmaXJlZDpmdW5jdGlvbigpe3JldHVybiEhZH19O3JldHVybiBqfTtmdW5jdGlvbiBOKGEpe3JldHVybiBhfWZ1bmN0aW9uIE8oYSl7dGhyb3cgYX1mdW5jdGlvbiBQKGEsYixjLGQpe3ZhciBlO3RyeXthJiZyLmlzRnVuY3Rpb24oZT1hLnByb21pc2UpP2UuY2FsbChhKS5kb25lKGIpLmZhaWwoYyk6YSYmci5pc0Z1bmN0aW9uKGU9YS50aGVuKT9lLmNhbGwoYSxiLGMpOmIuYXBwbHkodm9pZCAwLFthXS5zbGljZShkKSl9Y2F0Y2goYSl7Yy5hcHBseSh2b2lkIDAsW2FdKX19ci5leHRlbmQoe0RlZmVycmVkOmZ1bmN0aW9uKGIpe3ZhciBjPVtbIm5vdGlmeSIsInByb2dyZXNzIixyLkNhbGxiYWNrcygibWVtb3J5Iiksci5DYWxsYmFja3MoIm1lbW9yeSIpLDJdLFsicmVzb2x2ZSIsImRvbmUiLHIuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLHIuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLDAsInJlc29sdmVkIl0sWyJyZWplY3QiLCJmYWlsIixyLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSxyLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwxLCJyZWplY3RlZCJdXSxkPSJwZW5kaW5nIixlPXtzdGF0ZTpmdW5jdGlvbigpe3JldHVybiBkfSxhbHdheXM6ZnVuY3Rpb24oKXtyZXR1cm4gZi5kb25lKGFyZ3VtZW50cykuZmFpbChhcmd1bWVudHMpLHRoaXN9LCJjYXRjaCI6ZnVuY3Rpb24oYSl7cmV0dXJuIGUudGhlbihudWxsLGEpfSxwaXBlOmZ1bmN0aW9uKCl7dmFyIGE9YXJndW1lbnRzO3JldHVybiByLkRlZmVycmVkKGZ1bmN0aW9uKGIpe3IuZWFjaChjLGZ1bmN0aW9uKGMsZCl7dmFyIGU9ci5pc0Z1bmN0aW9uKGFbZFs0XV0pJiZhW2RbNF1dO2ZbZFsxXV0oZnVuY3Rpb24oKXt2YXIgYT1lJiZlLmFwcGx5KHRoaXMsYXJndW1lbnRzKTthJiZyLmlzRnVuY3Rpb24oYS5wcm9taXNlKT9hLnByb21pc2UoKS5wcm9ncmVzcyhiLm5vdGlmeSkuZG9uZShiLnJlc29sdmUpLmZhaWwoYi5yZWplY3QpOmJbZFswXSsiV2l0aCJdKHRoaXMsZT9bYV06YXJndW1lbnRzKX0pfSksYT1udWxsfSkucHJvbWlzZSgpfSx0aGVuOmZ1bmN0aW9uKGIsZCxlKXt2YXIgZj0wO2Z1bmN0aW9uIGcoYixjLGQsZSl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGg9dGhpcyxpPWFyZ3VtZW50cyxqPWZ1bmN0aW9uKCl7dmFyIGEsajtpZighKGI8Zikpe2lmKGE9ZC5hcHBseShoLGkpLGE9PT1jLnByb21pc2UoKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJUaGVuYWJsZSBzZWxmLXJlc29sdXRpb24iKTtqPWEmJigib2JqZWN0Ij09dHlwZW9mIGF8fCJmdW5jdGlvbiI9PXR5cGVvZiBhKSYmYS50aGVuLHIuaXNGdW5jdGlvbihqKT9lP2ouY2FsbChhLGcoZixjLE4sZSksZyhmLGMsTyxlKSk6KGYrKyxqLmNhbGwoYSxnKGYsYyxOLGUpLGcoZixjLE8sZSksZyhmLGMsTixjLm5vdGlmeVdpdGgpKSk6KGQhPT1OJiYoaD12b2lkIDAsaT1bYV0pLChlfHxjLnJlc29sdmVXaXRoKShoLGkpKX19LGs9ZT9qOmZ1bmN0aW9uKCl7dHJ5e2ooKX1jYXRjaChhKXtyLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2smJnIuRGVmZXJyZWQuZXhjZXB0aW9uSG9vayhhLGsuc3RhY2tUcmFjZSksYisxPj1mJiYoZCE9PU8mJihoPXZvaWQgMCxpPVthXSksYy5yZWplY3RXaXRoKGgsaSkpfX07Yj9rKCk6KHIuRGVmZXJyZWQuZ2V0U3RhY2tIb29rJiYoay5zdGFja1RyYWNlPXIuRGVmZXJyZWQuZ2V0U3RhY2tIb29rKCkpLGEuc2V0VGltZW91dChrKSl9fXJldHVybiByLkRlZmVycmVkKGZ1bmN0aW9uKGEpe2NbMF1bM10uYWRkKGcoMCxhLHIuaXNGdW5jdGlvbihlKT9lOk4sYS5ub3RpZnlXaXRoKSksY1sxXVszXS5hZGQoZygwLGEsci5pc0Z1bmN0aW9uKGIpP2I6TikpLGNbMl1bM10uYWRkKGcoMCxhLHIuaXNGdW5jdGlvbihkKT9kOk8pKX0pLnByb21pc2UoKX0scHJvbWlzZTpmdW5jdGlvbihhKXtyZXR1cm4gbnVsbCE9YT9yLmV4dGVuZChhLGUpOmV9fSxmPXt9O3JldHVybiByLmVhY2goYyxmdW5jdGlvbihhLGIpe3ZhciBnPWJbMl0saD1iWzVdO2VbYlsxXV09Zy5hZGQsaCYmZy5hZGQoZnVuY3Rpb24oKXtkPWh9LGNbMy1hXVsyXS5kaXNhYmxlLGNbMF1bMl0ubG9jayksZy5hZGQoYlszXS5maXJlKSxmW2JbMF1dPWZ1bmN0aW9uKCl7cmV0dXJuIGZbYlswXSsiV2l0aCJdKHRoaXM9PT1mP3ZvaWQgMDp0aGlzLGFyZ3VtZW50cyksdGhpc30sZltiWzBdKyJXaXRoIl09Zy5maXJlV2l0aH0pLGUucHJvbWlzZShmKSxiJiZiLmNhbGwoZixmKSxmfSx3aGVuOmZ1bmN0aW9uKGEpe3ZhciBiPWFyZ3VtZW50cy5sZW5ndGgsYz1iLGQ9QXJyYXkoYyksZT1mLmNhbGwoYXJndW1lbnRzKSxnPXIuRGVmZXJyZWQoKSxoPWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihjKXtkW2FdPXRoaXMsZVthXT1hcmd1bWVudHMubGVuZ3RoPjE/Zi5jYWxsKGFyZ3VtZW50cyk6YywtLWJ8fGcucmVzb2x2ZVdpdGgoZCxlKX19O2lmKGI8PTEmJihQKGEsZy5kb25lKGgoYykpLnJlc29sdmUsZy5yZWplY3QsIWIpLCJwZW5kaW5nIj09PWcuc3RhdGUoKXx8ci5pc0Z1bmN0aW9uKGVbY10mJmVbY10udGhlbikpKXJldHVybiBnLnRoZW4oKTt3aGlsZShjLS0pUChlW2NdLGgoYyksZy5yZWplY3QpO3JldHVybiBnLnByb21pc2UoKX19KTt2YXIgUT0vXihFdmFsfEludGVybmFsfFJhbmdlfFJlZmVyZW5jZXxTeW50YXh8VHlwZXxVUkkpRXJyb3IkLztyLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2s9ZnVuY3Rpb24oYixjKXthLmNvbnNvbGUmJmEuY29uc29sZS53YXJuJiZiJiZRLnRlc3QoYi5uYW1lKSYmYS5jb25zb2xlLndhcm4oImpRdWVyeS5EZWZlcnJlZCBleGNlcHRpb246ICIrYi5tZXNzYWdlLGIuc3RhY2ssYyl9LHIucmVhZHlFeGNlcHRpb249ZnVuY3Rpb24oYil7YS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgYn0pfTt2YXIgUj1yLkRlZmVycmVkKCk7ci5mbi5yZWFkeT1mdW5jdGlvbihhKXtyZXR1cm4gUi50aGVuKGEpWyJjYXRjaCJdKGZ1bmN0aW9uKGEpe3IucmVhZHlFeGNlcHRpb24oYSl9KSx0aGlzfSxyLmV4dGVuZCh7aXNSZWFkeTohMSxyZWFkeVdhaXQ6MSxyZWFkeTpmdW5jdGlvbihhKXsoYT09PSEwPy0tci5yZWFkeVdhaXQ6ci5pc1JlYWR5KXx8KHIuaXNSZWFkeT0hMCxhIT09ITAmJi0tci5yZWFkeVdhaXQ+MHx8Ui5yZXNvbHZlV2l0aChkLFtyXSkpfX0pLHIucmVhZHkudGhlbj1SLnRoZW47ZnVuY3Rpb24gUygpe2QucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsUyksCmEucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsUyksci5yZWFkeSgpfSJjb21wbGV0ZSI9PT1kLnJlYWR5U3RhdGV8fCJsb2FkaW5nIiE9PWQucmVhZHlTdGF0ZSYmIWQuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsP2Euc2V0VGltZW91dChyLnJlYWR5KTooZC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixTKSxhLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLFMpKTt2YXIgVD1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt2YXIgaD0wLGk9YS5sZW5ndGgsaj1udWxsPT1jO2lmKCJvYmplY3QiPT09ci50eXBlKGMpKXtlPSEwO2ZvcihoIGluIGMpVChhLGIsaCxjW2hdLCEwLGYsZyl9ZWxzZSBpZih2b2lkIDAhPT1kJiYoZT0hMCxyLmlzRnVuY3Rpb24oZCl8fChnPSEwKSxqJiYoZz8oYi5jYWxsKGEsZCksYj1udWxsKTooaj1iLGI9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBqLmNhbGwocihhKSxjKX0pKSxiKSlmb3IoO2g8aTtoKyspYihhW2hdLGMsZz9kOmQuY2FsbChhW2hdLGgsYihhW2hdLGMpKSk7cmV0dXJuIGU/YTpqP2IuY2FsbChhKTppP2IoYVswXSxjKTpmfSxVPWZ1bmN0aW9uKGEpe3JldHVybiAxPT09YS5ub2RlVHlwZXx8OT09PWEubm9kZVR5cGV8fCErYS5ub2RlVHlwZX07ZnVuY3Rpb24gVigpe3RoaXMuZXhwYW5kbz1yLmV4cGFuZG8rVi51aWQrK31WLnVpZD0xLFYucHJvdG90eXBlPXtjYWNoZTpmdW5jdGlvbihhKXt2YXIgYj1hW3RoaXMuZXhwYW5kb107cmV0dXJuIGJ8fChiPXt9LFUoYSkmJihhLm5vZGVUeXBlP2FbdGhpcy5leHBhbmRvXT1iOk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLHRoaXMuZXhwYW5kbyx7dmFsdWU6Yixjb25maWd1cmFibGU6ITB9KSkpLGJ9LHNldDpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZT10aGlzLmNhY2hlKGEpO2lmKCJzdHJpbmciPT10eXBlb2YgYillW3IuY2FtZWxDYXNlKGIpXT1jO2Vsc2UgZm9yKGQgaW4gYillW3IuY2FtZWxDYXNlKGQpXT1iW2RdO3JldHVybiBlfSxnZXQ6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdm9pZCAwPT09Yj90aGlzLmNhY2hlKGEpOmFbdGhpcy5leHBhbmRvXSYmYVt0aGlzLmV4cGFuZG9dW3IuY2FtZWxDYXNlKGIpXX0sYWNjZXNzOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gdm9pZCAwPT09Ynx8YiYmInN0cmluZyI9PXR5cGVvZiBiJiZ2b2lkIDA9PT1jP3RoaXMuZ2V0KGEsYik6KHRoaXMuc2V0KGEsYixjKSx2b2lkIDAhPT1jP2M6Yil9LHJlbW92ZTpmdW5jdGlvbihhLGIpe3ZhciBjLGQ9YVt0aGlzLmV4cGFuZG9dO2lmKHZvaWQgMCE9PWQpe2lmKHZvaWQgMCE9PWIpe0FycmF5LmlzQXJyYXkoYik/Yj1iLm1hcChyLmNhbWVsQ2FzZSk6KGI9ci5jYW1lbENhc2UoYiksYj1iIGluIGQ/W2JdOmIubWF0Y2goTCl8fFtdKSxjPWIubGVuZ3RoO3doaWxlKGMtLSlkZWxldGUgZFtiW2NdXX0odm9pZCAwPT09Ynx8ci5pc0VtcHR5T2JqZWN0KGQpKSYmKGEubm9kZVR5cGU/YVt0aGlzLmV4cGFuZG9dPXZvaWQgMDpkZWxldGUgYVt0aGlzLmV4cGFuZG9dKX19LGhhc0RhdGE6ZnVuY3Rpb24oYSl7dmFyIGI9YVt0aGlzLmV4cGFuZG9dO3JldHVybiB2b2lkIDAhPT1iJiYhci5pc0VtcHR5T2JqZWN0KGIpfX07dmFyIFc9bmV3IFYsWD1uZXcgVixZPS9eKD86XHtbXHdcV10qXH18XFtbXHdcV10qXF0pJC8sWj0vW0EtWl0vZztmdW5jdGlvbiAkKGEpe3JldHVybiJ0cnVlIj09PWF8fCJmYWxzZSIhPT1hJiYoIm51bGwiPT09YT9udWxsOmE9PT0rYSsiIj8rYTpZLnRlc3QoYSk/SlNPTi5wYXJzZShhKTphKX1mdW5jdGlvbiBfKGEsYixjKXt2YXIgZDtpZih2b2lkIDA9PT1jJiYxPT09YS5ub2RlVHlwZSlpZihkPSJkYXRhLSIrYi5yZXBsYWNlKFosIi0kJiIpLnRvTG93ZXJDYXNlKCksYz1hLmdldEF0dHJpYnV0ZShkKSwic3RyaW5nIj09dHlwZW9mIGMpe3RyeXtjPSQoYyl9Y2F0Y2goZSl7fVguc2V0KGEsYixjKX1lbHNlIGM9dm9pZCAwO3JldHVybiBjfXIuZXh0ZW5kKHtoYXNEYXRhOmZ1bmN0aW9uKGEpe3JldHVybiBYLmhhc0RhdGEoYSl8fFcuaGFzRGF0YShhKX0sZGF0YTpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIFguYWNjZXNzKGEsYixjKX0scmVtb3ZlRGF0YTpmdW5jdGlvbihhLGIpe1gucmVtb3ZlKGEsYil9LF9kYXRhOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gVy5hY2Nlc3MoYSxiLGMpfSxfcmVtb3ZlRGF0YTpmdW5jdGlvbihhLGIpe1cucmVtb3ZlKGEsYil9fSksci5mbi5leHRlbmQoe2RhdGE6ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZj10aGlzWzBdLGc9ZiYmZi5hdHRyaWJ1dGVzO2lmKHZvaWQgMD09PWEpe2lmKHRoaXMubGVuZ3RoJiYoZT1YLmdldChmKSwxPT09Zi5ub2RlVHlwZSYmIVcuZ2V0KGYsImhhc0RhdGFBdHRycyIpKSl7Yz1nLmxlbmd0aDt3aGlsZShjLS0pZ1tjXSYmKGQ9Z1tjXS5uYW1lLDA9PT1kLmluZGV4T2YoImRhdGEtIikmJihkPXIuY2FtZWxDYXNlKGQuc2xpY2UoNSkpLF8oZixkLGVbZF0pKSk7Vy5zZXQoZiwiaGFzRGF0YUF0dHJzIiwhMCl9cmV0dXJuIGV9cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBhP3RoaXMuZWFjaChmdW5jdGlvbigpe1guc2V0KHRoaXMsYSl9KTpUKHRoaXMsZnVuY3Rpb24oYil7dmFyIGM7aWYoZiYmdm9pZCAwPT09Yil7aWYoYz1YLmdldChmLGEpLHZvaWQgMCE9PWMpcmV0dXJuIGM7aWYoYz1fKGYsYSksdm9pZCAwIT09YylyZXR1cm4gY31lbHNlIHRoaXMuZWFjaChmdW5jdGlvbigpe1guc2V0KHRoaXMsYSxiKX0pfSxudWxsLGIsYXJndW1lbnRzLmxlbmd0aD4xLG51bGwsITApfSxyZW1vdmVEYXRhOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtYLnJlbW92ZSh0aGlzLGEpfSl9fSksci5leHRlbmQoe3F1ZXVlOmZ1bmN0aW9uKGEsYixjKXt2YXIgZDtpZihhKXJldHVybiBiPShifHwiZngiKSsicXVldWUiLGQ9Vy5nZXQoYSxiKSxjJiYoIWR8fEFycmF5LmlzQXJyYXkoYyk/ZD1XLmFjY2VzcyhhLGIsci5tYWtlQXJyYXkoYykpOmQucHVzaChjKSksZHx8W119LGRlcXVldWU6ZnVuY3Rpb24oYSxiKXtiPWJ8fCJmeCI7dmFyIGM9ci5xdWV1ZShhLGIpLGQ9Yy5sZW5ndGgsZT1jLnNoaWZ0KCksZj1yLl9xdWV1ZUhvb2tzKGEsYiksZz1mdW5jdGlvbigpe3IuZGVxdWV1ZShhLGIpfTsiaW5wcm9ncmVzcyI9PT1lJiYoZT1jLnNoaWZ0KCksZC0tKSxlJiYoImZ4Ij09PWImJmMudW5zaGlmdCgiaW5wcm9ncmVzcyIpLGRlbGV0ZSBmLnN0b3AsZS5jYWxsKGEsZyxmKSksIWQmJmYmJmYuZW1wdHkuZmlyZSgpfSxfcXVldWVIb29rczpmdW5jdGlvbihhLGIpe3ZhciBjPWIrInF1ZXVlSG9va3MiO3JldHVybiBXLmdldChhLGMpfHxXLmFjY2VzcyhhLGMse2VtcHR5OnIuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLmFkZChmdW5jdGlvbigpe1cucmVtb3ZlKGEsW2IrInF1ZXVlIixjXSl9KX0pfX0pLHIuZm4uZXh0ZW5kKHtxdWV1ZTpmdW5jdGlvbihhLGIpe3ZhciBjPTI7cmV0dXJuInN0cmluZyIhPXR5cGVvZiBhJiYoYj1hLGE9ImZ4IixjLS0pLGFyZ3VtZW50cy5sZW5ndGg8Yz9yLnF1ZXVlKHRoaXNbMF0sYSk6dm9pZCAwPT09Yj90aGlzOnRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBjPXIucXVldWUodGhpcyxhLGIpO3IuX3F1ZXVlSG9va3ModGhpcyxhKSwiZngiPT09YSYmImlucHJvZ3Jlc3MiIT09Y1swXSYmci5kZXF1ZXVlKHRoaXMsYSl9KX0sZGVxdWV1ZTpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ci5kZXF1ZXVlKHRoaXMsYSl9KX0sY2xlYXJRdWV1ZTpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5xdWV1ZShhfHwiZngiLFtdKX0scHJvbWlzZTpmdW5jdGlvbihhLGIpe3ZhciBjLGQ9MSxlPXIuRGVmZXJyZWQoKSxmPXRoaXMsZz10aGlzLmxlbmd0aCxoPWZ1bmN0aW9uKCl7LS1kfHxlLnJlc29sdmVXaXRoKGYsW2ZdKX07InN0cmluZyIhPXR5cGVvZiBhJiYoYj1hLGE9dm9pZCAwKSxhPWF8fCJmeCI7d2hpbGUoZy0tKWM9Vy5nZXQoZltnXSxhKyJxdWV1ZUhvb2tzIiksYyYmYy5lbXB0eSYmKGQrKyxjLmVtcHR5LmFkZChoKSk7cmV0dXJuIGgoKSxlLnByb21pc2UoYil9fSk7dmFyIGFhPS9bKy1dPyg/OlxkKlwufClcZCsoPzpbZUVdWystXT9cZCt8KS8uc291cmNlLGJhPW5ldyBSZWdFeHAoIl4oPzooWystXSk9fCkoIithYSsiKShbYS16JV0qKSQiLCJpIiksY2E9WyJUb3AiLCJSaWdodCIsIkJvdHRvbSIsIkxlZnQiXSxkYT1mdW5jdGlvbihhLGIpe3JldHVybiBhPWJ8fGEsIm5vbmUiPT09YS5zdHlsZS5kaXNwbGF5fHwiIj09PWEuc3R5bGUuZGlzcGxheSYmci5jb250YWlucyhhLm93bmVyRG9jdW1lbnQsYSkmJiJub25lIj09PXIuY3NzKGEsImRpc3BsYXkiKX0sZWE9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGUsZixnPXt9O2ZvcihmIGluIGIpZ1tmXT1hLnN0eWxlW2ZdLGEuc3R5bGVbZl09YltmXTtlPWMuYXBwbHkoYSxkfHxbXSk7Zm9yKGYgaW4gYilhLnN0eWxlW2ZdPWdbZl07cmV0dXJuIGV9O2Z1bmN0aW9uIGZhKGEsYixjLGQpe3ZhciBlLGY9MSxnPTIwLGg9ZD9mdW5jdGlvbigpe3JldHVybiBkLmN1cigpfTpmdW5jdGlvbigpe3JldHVybiByLmNzcyhhLGIsIiIpfSxpPWgoKSxqPWMmJmNbM118fChyLmNzc051bWJlcltiXT8iIjoicHgiKSxrPShyLmNzc051bWJlcltiXXx8InB4IiE9PWomJitpKSYmYmEuZXhlYyhyLmNzcyhhLGIpKTtpZihrJiZrWzNdIT09ail7aj1qfHxrWzNdLGM9Y3x8W10saz0raXx8MTtkbyBmPWZ8fCIuNSIsay89ZixyLnN0eWxlKGEsYixrK2opO3doaWxlKGYhPT0oZj1oKCkvaSkmJjEhPT1mJiYtLWcpfXJldHVybiBjJiYoaz0ra3x8K2l8fDAsZT1jWzFdP2srKGNbMV0rMSkqY1syXTorY1syXSxkJiYoZC51bml0PWosZC5zdGFydD1rLGQuZW5kPWUpKSxlfXZhciBnYT17fTtmdW5jdGlvbiBoYShhKXt2YXIgYixjPWEub3duZXJEb2N1bWVudCxkPWEubm9kZU5hbWUsZT1nYVtkXTtyZXR1cm4gZT9lOihiPWMuYm9keS5hcHBlbmRDaGlsZChjLmNyZWF0ZUVsZW1lbnQoZCkpLGU9ci5jc3MoYiwiZGlzcGxheSIpLGIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChiKSwibm9uZSI9PT1lJiYoZT0iYmxvY2siKSxnYVtkXT1lLGUpfWZ1bmN0aW9uIGlhKGEsYil7Zm9yKHZhciBjLGQsZT1bXSxmPTAsZz1hLmxlbmd0aDtmPGc7ZisrKWQ9YVtmXSxkLnN0eWxlJiYoYz1kLnN0eWxlLmRpc3BsYXksYj8oIm5vbmUiPT09YyYmKGVbZl09Vy5nZXQoZCwiZGlzcGxheSIpfHxudWxsLGVbZl18fChkLnN0eWxlLmRpc3BsYXk9IiIpKSwiIj09PWQuc3R5bGUuZGlzcGxheSYmZGEoZCkmJihlW2ZdPWhhKGQpKSk6Im5vbmUiIT09YyYmKGVbZl09Im5vbmUiLFcuc2V0KGQsImRpc3BsYXkiLGMpKSk7Zm9yKGY9MDtmPGc7ZisrKW51bGwhPWVbZl0mJihhW2ZdLnN0eWxlLmRpc3BsYXk9ZVtmXSk7cmV0dXJuIGF9ci5mbi5leHRlbmQoe3Nob3c6ZnVuY3Rpb24oKXtyZXR1cm4gaWEodGhpcywhMCl9LGhpZGU6ZnVuY3Rpb24oKXtyZXR1cm4gaWEodGhpcyl9LHRvZ2dsZTpmdW5jdGlvbihhKXtyZXR1cm4iYm9vbGVhbiI9PXR5cGVvZiBhP2E/dGhpcy5zaG93KCk6dGhpcy5oaWRlKCk6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZGEodGhpcyk/cih0aGlzKS5zaG93KCk6cih0aGlzKS5oaWRlKCl9KX19KTt2YXIgamE9L14oPzpjaGVja2JveHxyYWRpbykkL2ksa2E9LzwoW2Etel1bXlwvXDA+XHgyMFx0XHJcblxmXSspL2ksbGE9L14kfFwvKD86amF2YXxlY21hKXNjcmlwdC9pLG1hPXtvcHRpb246WzEsIjxzZWxlY3QgbXVsdGlwbGU9J211bHRpcGxlJz4iLCI8L3NlbGVjdD4iXSx0aGVhZDpbMSwiPHRhYmxlPiIsIjwvdGFibGU+Il0sY29sOlsyLCI8dGFibGU+PGNvbGdyb3VwPiIsIjwvY29sZ3JvdXA+PC90YWJsZT4iXSx0cjpbMiwiPHRhYmxlPjx0Ym9keT4iLCI8L3Rib2R5PjwvdGFibGU+Il0sdGQ6WzMsIjx0YWJsZT48dGJvZHk+PHRyPiIsIjwvdHI+PC90Ym9keT48L3RhYmxlPiJdLF9kZWZhdWx0OlswLCIiLCIiXX07bWEub3B0Z3JvdXA9bWEub3B0aW9uLG1hLnRib2R5PW1hLnRmb290PW1hLmNvbGdyb3VwPW1hLmNhcHRpb249bWEudGhlYWQsbWEudGg9bWEudGQ7ZnVuY3Rpb24gbmEoYSxiKXt2YXIgYztyZXR1cm4gYz0idW5kZWZpbmVkIiE9dHlwZW9mIGEuZ2V0RWxlbWVudHNCeVRhZ05hbWU/YS5nZXRFbGVtZW50c0J5VGFnTmFtZShifHwiKiIpOiJ1bmRlZmluZWQiIT10eXBlb2YgYS5xdWVyeVNlbGVjdG9yQWxsP2EucXVlcnlTZWxlY3RvckFsbChifHwiKiIpOltdLHZvaWQgMD09PWJ8fGImJkIoYSxiKT9yLm1lcmdlKFthXSxjKTpjfWZ1bmN0aW9uIG9hKGEsYil7Zm9yKHZhciBjPTAsZD1hLmxlbmd0aDtjPGQ7YysrKVcuc2V0KGFbY10sImdsb2JhbEV2YWwiLCFifHxXLmdldChiW2NdLCJnbG9iYWxFdmFsIikpfXZhciBwYT0vPHwmIz9cdys7LztmdW5jdGlvbiBxYShhLGIsYyxkLGUpe2Zvcih2YXIgZixnLGgsaSxqLGssbD1iLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxtPVtdLG49MCxvPWEubGVuZ3RoO248bztuKyspaWYoZj1hW25dLGZ8fDA9PT1mKWlmKCJvYmplY3QiPT09ci50eXBlKGYpKXIubWVyZ2UobSxmLm5vZGVUeXBlP1tmXTpmKTtlbHNlIGlmKHBhLnRlc3QoZikpe2c9Z3x8bC5hcHBlbmRDaGlsZChiLmNyZWF0ZUVsZW1lbnQoImRpdiIpKSxoPShrYS5leGVjKGYpfHxbIiIsIiJdKVsxXS50b0xvd2VyQ2FzZSgpLGk9bWFbaF18fG1hLl9kZWZhdWx0LGcuaW5uZXJIVE1MPWlbMV0rci5odG1sUHJlZmlsdGVyKGYpK2lbMl0saz1pWzBdO3doaWxlKGstLSlnPWcubGFzdENoaWxkO3IubWVyZ2UobSxnLmNoaWxkTm9kZXMpLGc9bC5maXJzdENoaWxkLGcudGV4dENvbnRlbnQ9IiJ9ZWxzZSBtLnB1c2goYi5jcmVhdGVUZXh0Tm9kZShmKSk7bC50ZXh0Q29udGVudD0iIixuPTA7d2hpbGUoZj1tW24rK10paWYoZCYmci5pbkFycmF5KGYsZCk+LTEpZSYmZS5wdXNoKGYpO2Vsc2UgaWYoaj1yLmNvbnRhaW5zKGYub3duZXJEb2N1bWVudCxmKSxnPW5hKGwuYXBwZW5kQ2hpbGQoZiksInNjcmlwdCIpLGomJm9hKGcpLGMpe2s9MDt3aGlsZShmPWdbaysrXSlsYS50ZXN0KGYudHlwZXx8IiIpJiZjLnB1c2goZil9cmV0dXJuIGx9IWZ1bmN0aW9uKCl7dmFyIGE9ZC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksYj1hLmFwcGVuZENoaWxkKGQuY3JlYXRlRWxlbWVudCgiZGl2IikpLGM9ZC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpO2Muc2V0QXR0cmlidXRlKCJ0eXBlIiwicmFkaW8iKSxjLnNldEF0dHJpYnV0ZSgiY2hlY2tlZCIsImNoZWNrZWQiKSxjLnNldEF0dHJpYnV0ZSgibmFtZSIsInQiKSxiLmFwcGVuZENoaWxkKGMpLG8uY2hlY2tDbG9uZT1iLmNsb25lTm9kZSghMCkuY2xvbmVOb2RlKCEwKS5sYXN0Q2hpbGQuY2hlY2tlZCxiLmlubmVySFRNTD0iPHRleHRhcmVhPng8L3RleHRhcmVhPiIsby5ub0Nsb25lQ2hlY2tlZD0hIWIuY2xvbmVOb2RlKCEwKS5sYXN0Q2hpbGQuZGVmYXVsdFZhbHVlfSgpO3ZhciByYT1kLmRvY3VtZW50RWxlbWVudCxzYT0vXmtleS8sdGE9L14oPzptb3VzZXxwb2ludGVyfGNvbnRleHRtZW51fGRyYWd8ZHJvcCl8Y2xpY2svLHVhPS9eKFteLl0qKSg/OlwuKC4rKXwpLztmdW5jdGlvbiB2YSgpe3JldHVybiEwfWZ1bmN0aW9uIHdhKCl7cmV0dXJuITF9ZnVuY3Rpb24geGEoKXt0cnl7cmV0dXJuIGQuYWN0aXZlRWxlbWVudH1jYXRjaChhKXt9fWZ1bmN0aW9uIHlhKGEsYixjLGQsZSxmKXt2YXIgZyxoO2lmKCJvYmplY3QiPT10eXBlb2YgYil7InN0cmluZyIhPXR5cGVvZiBjJiYoZD1kfHxjLGM9dm9pZCAwKTtmb3IoaCBpbiBiKXlhKGEsaCxjLGQsYltoXSxmKTtyZXR1cm4gYX1pZihudWxsPT1kJiZudWxsPT1lPyhlPWMsZD1jPXZvaWQgMCk6bnVsbD09ZSYmKCJzdHJpbmciPT10eXBlb2YgYz8oZT1kLGQ9dm9pZCAwKTooZT1kLGQ9YyxjPXZvaWQgMCkpLGU9PT0hMSllPXdhO2Vsc2UgaWYoIWUpcmV0dXJuIGE7cmV0dXJuIDE9PT1mJiYoZz1lLGU9ZnVuY3Rpb24oYSl7cmV0dXJuIHIoKS5vZmYoYSksZy5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LGUuZ3VpZD1nLmd1aWR8fChnLmd1aWQ9ci5ndWlkKyspKSxhLmVhY2goZnVuY3Rpb24oKXtyLmV2ZW50LmFkZCh0aGlzLGIsZSxkLGMpfSl9ci5ldmVudD17Z2xvYmFsOnt9LGFkZDpmdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmLGcsaCxpLGosayxsLG0sbixvLHAscT1XLmdldChhKTtpZihxKXtjLmhhbmRsZXImJihmPWMsYz1mLmhhbmRsZXIsZT1mLnNlbGVjdG9yKSxlJiZyLmZpbmQubWF0Y2hlc1NlbGVjdG9yKHJhLGUpLGMuZ3VpZHx8KGMuZ3VpZD1yLmd1aWQrKyksKGk9cS5ldmVudHMpfHwoaT1xLmV2ZW50cz17fSksKGc9cS5oYW5kbGUpfHwoZz1xLmhhbmRsZT1mdW5jdGlvbihiKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIHImJnIuZXZlbnQudHJpZ2dlcmVkIT09Yi50eXBlP3IuZXZlbnQuZGlzcGF0Y2guYXBwbHkoYSxhcmd1bWVudHMpOnZvaWQgMH0pLGI9KGJ8fCIiKS5tYXRjaChMKXx8WyIiXSxqPWIubGVuZ3RoO3doaWxlKGotLSloPXVhLmV4ZWMoYltqXSl8fFtdLG49cD1oWzFdLG89KGhbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxuJiYobD1yLmV2ZW50LnNwZWNpYWxbbl18fHt9LG49KGU/bC5kZWxlZ2F0ZVR5cGU6bC5iaW5kVHlwZSl8fG4sbD1yLmV2ZW50LnNwZWNpYWxbbl18fHt9LGs9ci5leHRlbmQoe3R5cGU6bixvcmlnVHlwZTpwLGRhdGE6ZCxoYW5kbGVyOmMsZ3VpZDpjLmd1aWQsc2VsZWN0b3I6ZSxuZWVkc0NvbnRleHQ6ZSYmci5leHByLm1hdGNoLm5lZWRzQ29udGV4dC50ZXN0KGUpLG5hbWVzcGFjZTpvLmpvaW4oIi4iKX0sZiksKG09aVtuXSl8fChtPWlbbl09W10sbS5kZWxlZ2F0ZUNvdW50PTAsbC5zZXR1cCYmbC5zZXR1cC5jYWxsKGEsZCxvLGcpIT09ITF8fGEuYWRkRXZlbnRMaXN0ZW5lciYmYS5hZGRFdmVudExpc3RlbmVyKG4sZykpLGwuYWRkJiYobC5hZGQuY2FsbChhLGspLGsuaGFuZGxlci5ndWlkfHwoay5oYW5kbGVyLmd1aWQ9Yy5ndWlkKSksZT9tLnNwbGljZShtLmRlbGVnYXRlQ291bnQrKywwLGspOm0ucHVzaChrKSxyLmV2ZW50Lmdsb2JhbFtuXT0hMCl9fSxyZW1vdmU6ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZixnLGgsaSxqLGssbCxtLG4sbyxwLHE9Vy5oYXNEYXRhKGEpJiZXLmdldChhKTtpZihxJiYoaT1xLmV2ZW50cykpe2I9KGJ8fCIiKS5tYXRjaChMKXx8WyIiXSxqPWIubGVuZ3RoO3doaWxlKGotLSlpZihoPXVhLmV4ZWMoYltqXSl8fFtdLG49cD1oWzFdLG89KGhbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxuKXtsPXIuZXZlbnQuc3BlY2lhbFtuXXx8e30sbj0oZD9sLmRlbGVnYXRlVHlwZTpsLmJpbmRUeXBlKXx8bixtPWlbbl18fFtdLGg9aFsyXSYmbmV3IFJlZ0V4cCgiKF58XFwuKSIrby5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKSxnPWY9bS5sZW5ndGg7d2hpbGUoZi0tKWs9bVtmXSwhZSYmcCE9PWsub3JpZ1R5cGV8fGMmJmMuZ3VpZCE9PWsuZ3VpZHx8aCYmIWgudGVzdChrLm5hbWVzcGFjZSl8fGQmJmQhPT1rLnNlbGVjdG9yJiYoIioqIiE9PWR8fCFrLnNlbGVjdG9yKXx8KG0uc3BsaWNlKGYsMSksay5zZWxlY3RvciYmbS5kZWxlZ2F0ZUNvdW50LS0sbC5yZW1vdmUmJmwucmVtb3ZlLmNhbGwoYSxrKSk7ZyYmIW0ubGVuZ3RoJiYobC50ZWFyZG93biYmbC50ZWFyZG93bi5jYWxsKGEsbyxxLmhhbmRsZSkhPT0hMXx8ci5yZW1vdmVFdmVudChhLG4scS5oYW5kbGUpLGRlbGV0ZSBpW25dKX1lbHNlIGZvcihuIGluIGkpci5ldmVudC5yZW1vdmUoYSxuK2Jbal0sYyxkLCEwKTtyLmlzRW1wdHlPYmplY3QoaSkmJlcucmVtb3ZlKGEsImhhbmRsZSBldmVudHMiKX19LGRpc3BhdGNoOmZ1bmN0aW9uKGEpe3ZhciBiPXIuZXZlbnQuZml4KGEpLGMsZCxlLGYsZyxoLGk9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgpLGo9KFcuZ2V0KHRoaXMsImV2ZW50cyIpfHx7fSlbYi50eXBlXXx8W10saz1yLmV2ZW50LnNwZWNpYWxbYi50eXBlXXx8e307Zm9yKGlbMF09YixjPTE7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKylpW2NdPWFyZ3VtZW50c1tjXTtpZihiLmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWsucHJlRGlzcGF0Y2h8fGsucHJlRGlzcGF0Y2guY2FsbCh0aGlzLGIpIT09ITEpe2g9ci5ldmVudC5oYW5kbGVycy5jYWxsKHRoaXMsYixqKSxjPTA7d2hpbGUoKGY9aFtjKytdKSYmIWIuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSl7Yi5jdXJyZW50VGFyZ2V0PWYuZWxlbSxkPTA7d2hpbGUoKGc9Zi5oYW5kbGVyc1tkKytdKSYmIWIuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKSliLnJuYW1lc3BhY2UmJiFiLnJuYW1lc3BhY2UudGVzdChnLm5hbWVzcGFjZSl8fChiLmhhbmRsZU9iaj1nLGIuZGF0YT1nLmRhdGEsZT0oKHIuZXZlbnQuc3BlY2lhbFtnLm9yaWdUeXBlXXx8e30pLmhhbmRsZXx8Zy5oYW5kbGVyKS5hcHBseShmLmVsZW0saSksdm9pZCAwIT09ZSYmKGIucmVzdWx0PWUpPT09ITEmJihiLnByZXZlbnREZWZhdWx0KCksYi5zdG9wUHJvcGFnYXRpb24oKSkpfXJldHVybiBrLnBvc3REaXNwYXRjaCYmay5wb3N0RGlzcGF0Y2guY2FsbCh0aGlzLGIpLGIucmVzdWx0fX0saGFuZGxlcnM6ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZixnLGg9W10saT1iLmRlbGVnYXRlQ291bnQsaj1hLnRhcmdldDtpZihpJiZqLm5vZGVUeXBlJiYhKCJjbGljayI9PT1hLnR5cGUmJmEuYnV0dG9uPj0xKSlmb3IoO2ohPT10aGlzO2o9ai5wYXJlbnROb2RlfHx0aGlzKWlmKDE9PT1qLm5vZGVUeXBlJiYoImNsaWNrIiE9PWEudHlwZXx8ai5kaXNhYmxlZCE9PSEwKSl7Zm9yKGY9W10sZz17fSxjPTA7YzxpO2MrKylkPWJbY10sZT1kLnNlbGVjdG9yKyIgIix2b2lkIDA9PT1nW2VdJiYoZ1tlXT1kLm5lZWRzQ29udGV4dD9yKGUsdGhpcykuaW5kZXgoaik+LTE6ci5maW5kKGUsdGhpcyxudWxsLFtqXSkubGVuZ3RoKSxnW2VdJiZmLnB1c2goZCk7Zi5sZW5ndGgmJmgucHVzaCh7ZWxlbTpqLGhhbmRsZXJzOmZ9KX1yZXR1cm4gaj10aGlzLGk8Yi5sZW5ndGgmJmgucHVzaCh7ZWxlbTpqLGhhbmRsZXJzOmIuc2xpY2UoaSl9KSxofSxhZGRQcm9wOmZ1bmN0aW9uKGEsYil7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIuRXZlbnQucHJvdG90eXBlLGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLGdldDpyLmlzRnVuY3Rpb24oYik/ZnVuY3Rpb24oKXtpZih0aGlzLm9yaWdpbmFsRXZlbnQpcmV0dXJuIGIodGhpcy5vcmlnaW5hbEV2ZW50KX06ZnVuY3Rpb24oKXtpZih0aGlzLm9yaWdpbmFsRXZlbnQpcmV0dXJuIHRoaXMub3JpZ2luYWxFdmVudFthXX0sc2V0OmZ1bmN0aW9uKGIpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmJ9KX19KX0sZml4OmZ1bmN0aW9uKGEpe3JldHVybiBhW3IuZXhwYW5kb10/YTpuZXcgci5FdmVudChhKX0sc3BlY2lhbDp7bG9hZDp7bm9CdWJibGU6ITB9LGZvY3VzOnt0cmlnZ2VyOmZ1bmN0aW9uKCl7aWYodGhpcyE9PXhhKCkmJnRoaXMuZm9jdXMpcmV0dXJuIHRoaXMuZm9jdXMoKSwhMX0sZGVsZWdhdGVUeXBlOiJmb2N1c2luIn0sYmx1cjp7dHJpZ2dlcjpmdW5jdGlvbigpe2lmKHRoaXM9PT14YSgpJiZ0aGlzLmJsdXIpcmV0dXJuIHRoaXMuYmx1cigpLCExfSxkZWxlZ2F0ZVR5cGU6ImZvY3Vzb3V0In0sY2xpY2s6e3RyaWdnZXI6ZnVuY3Rpb24oKXtpZigiY2hlY2tib3giPT09dGhpcy50eXBlJiZ0aGlzLmNsaWNrJiZCKHRoaXMsImlucHV0IikpcmV0dXJuIHRoaXMuY2xpY2soKSwhMX0sX2RlZmF1bHQ6ZnVuY3Rpb24oYSl7cmV0dXJuIEIoYS50YXJnZXQsImEiKX19LGJlZm9yZXVubG9hZDp7cG9zdERpc3BhdGNoOmZ1bmN0aW9uKGEpe3ZvaWQgMCE9PWEucmVzdWx0JiZhLm9yaWdpbmFsRXZlbnQmJihhLm9yaWdpbmFsRXZlbnQucmV0dXJuVmFsdWU9YS5yZXN1bHQpfX19fSxyLnJlbW92ZUV2ZW50PWZ1bmN0aW9uKGEsYixjKXthLnJlbW92ZUV2ZW50TGlzdGVuZXImJmEucmVtb3ZlRXZlbnRMaXN0ZW5lcihiLGMpfSxyLkV2ZW50PWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMgaW5zdGFuY2VvZiByLkV2ZW50PyhhJiZhLnR5cGU/KHRoaXMub3JpZ2luYWxFdmVudD1hLHRoaXMudHlwZT1hLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9YS5kZWZhdWx0UHJldmVudGVkfHx2b2lkIDA9PT1hLmRlZmF1bHRQcmV2ZW50ZWQmJmEucmV0dXJuVmFsdWU9PT0hMT92YTp3YSx0aGlzLnRhcmdldD1hLnRhcmdldCYmMz09PWEudGFyZ2V0Lm5vZGVUeXBlP2EudGFyZ2V0LnBhcmVudE5vZGU6YS50YXJnZXQsdGhpcy5jdXJyZW50VGFyZ2V0PWEuY3VycmVudFRhcmdldCx0aGlzLnJlbGF0ZWRUYXJnZXQ9YS5yZWxhdGVkVGFyZ2V0KTp0aGlzLnR5cGU9YSxiJiZyLmV4dGVuZCh0aGlzLGIpLHRoaXMudGltZVN0YW1wPWEmJmEudGltZVN0YW1wfHxyLm5vdygpLHZvaWQodGhpc1tyLmV4cGFuZG9dPSEwKSk6bmV3IHIuRXZlbnQoYSxiKX0sci5FdmVudC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOnIuRXZlbnQsaXNEZWZhdWx0UHJldmVudGVkOndhLGlzUHJvcGFnYXRpb25TdG9wcGVkOndhLGlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOndhLGlzU2ltdWxhdGVkOiExLHByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5vcmlnaW5hbEV2ZW50O3RoaXMuaXNEZWZhdWx0UHJldmVudGVkPXZhLGEmJiF0aGlzLmlzU2ltdWxhdGVkJiZhLnByZXZlbnREZWZhdWx0KCl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBhPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPXZhLGEmJiF0aGlzLmlzU2ltdWxhdGVkJiZhLnN0b3BQcm9wYWdhdGlvbigpfSxzdG9wSW1tZWRpYXRlUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt2YXIgYT10aGlzLm9yaWdpbmFsRXZlbnQ7dGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD12YSxhJiYhdGhpcy5pc1NpbXVsYXRlZCYmYS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSx0aGlzLnN0b3BQcm9wYWdhdGlvbigpfX0sci5lYWNoKHthbHRLZXk6ITAsYnViYmxlczohMCxjYW5jZWxhYmxlOiEwLGNoYW5nZWRUb3VjaGVzOiEwLGN0cmxLZXk6ITAsZGV0YWlsOiEwLGV2ZW50UGhhc2U6ITAsbWV0YUtleTohMCxwYWdlWDohMCxwYWdlWTohMCxzaGlmdEtleTohMCx2aWV3OiEwLCJjaGFyIjohMCxjaGFyQ29kZTohMCxrZXk6ITAsa2V5Q29kZTohMCxidXR0b246ITAsYnV0dG9uczohMCxjbGllbnRYOiEwLGNsaWVudFk6ITAsb2Zmc2V0WDohMCxvZmZzZXRZOiEwLHBvaW50ZXJJZDohMCxwb2ludGVyVHlwZTohMCxzY3JlZW5YOiEwLHNjcmVlblk6ITAsdGFyZ2V0VG91Y2hlczohMCx0b0VsZW1lbnQ6ITAsdG91Y2hlczohMCx3aGljaDpmdW5jdGlvbihhKXt2YXIgYj1hLmJ1dHRvbjtyZXR1cm4gbnVsbD09YS53aGljaCYmc2EudGVzdChhLnR5cGUpP251bGwhPWEuY2hhckNvZGU/YS5jaGFyQ29kZTphLmtleUNvZGU6IWEud2hpY2gmJnZvaWQgMCE9PWImJnRhLnRlc3QoYS50eXBlKT8xJmI/MToyJmI/Mzo0JmI/MjowOmEud2hpY2h9fSxyLmV2ZW50LmFkZFByb3ApLHIuZWFjaCh7bW91c2VlbnRlcjoibW91c2VvdmVyIixtb3VzZWxlYXZlOiJtb3VzZW91dCIscG9pbnRlcmVudGVyOiJwb2ludGVyb3ZlciIscG9pbnRlcmxlYXZlOiJwb2ludGVyb3V0In0sZnVuY3Rpb24oYSxiKXtyLmV2ZW50LnNwZWNpYWxbYV09e2RlbGVnYXRlVHlwZTpiLGJpbmRUeXBlOmIsaGFuZGxlOmZ1bmN0aW9uKGEpe3ZhciBjLGQ9dGhpcyxlPWEucmVsYXRlZFRhcmdldCxmPWEuaGFuZGxlT2JqO3JldHVybiBlJiYoZT09PWR8fHIuY29udGFpbnMoZCxlKSl8fChhLnR5cGU9Zi5vcmlnVHlwZSxjPWYuaGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyksYS50eXBlPWIpLGN9fX0pLHIuZm4uZXh0ZW5kKHtvbjpmdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4geWEodGhpcyxhLGIsYyxkKX0sb25lOmZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiB5YSh0aGlzLGEsYixjLGQsMSl9LG9mZjpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZTtpZihhJiZhLnByZXZlbnREZWZhdWx0JiZhLmhhbmRsZU9iailyZXR1cm4gZD1hLmhhbmRsZU9iaixyKGEuZGVsZWdhdGVUYXJnZXQpLm9mZihkLm5hbWVzcGFjZT9kLm9yaWdUeXBlKyIuIitkLm5hbWVzcGFjZTpkLm9yaWdUeXBlLGQuc2VsZWN0b3IsZC5oYW5kbGVyKSx0aGlzO2lmKCJvYmplY3QiPT10eXBlb2YgYSl7Zm9yKGUgaW4gYSl0aGlzLm9mZihlLGIsYVtlXSk7cmV0dXJuIHRoaXN9cmV0dXJuIGIhPT0hMSYmImZ1bmN0aW9uIiE9dHlwZW9mIGJ8fChjPWIsYj12b2lkIDApLGM9PT0hMSYmKGM9d2EpLHRoaXMuZWFjaChmdW5jdGlvbigpe3IuZXZlbnQucmVtb3ZlKHRoaXMsYSxjLGIpfSl9fSk7dmFyIHphPS88KD8hYXJlYXxicnxjb2x8ZW1iZWR8aHJ8aW1nfGlucHV0fGxpbmt8bWV0YXxwYXJhbSkoKFthLXpdW15cL1wwPlx4MjBcdFxyXG5cZl0qKVtePl0qKVwvPi9naSxBYT0vPHNjcmlwdHw8c3R5bGV8PGxpbmsvaSxCYT0vY2hlY2tlZFxzKig/OltePV18PVxzKi5jaGVja2VkLikvaSxDYT0vXnRydWVcLyguKikvLERhPS9eXHMqPCEoPzpcW0NEQVRBXFt8LS0pfCg/OlxdXF18LS0pPlxzKiQvZztmdW5jdGlvbiBFYShhLGIpe3JldHVybiBCKGEsInRhYmxlIikmJkIoMTEhPT1iLm5vZGVUeXBlP2I6Yi5maXJzdENoaWxkLCJ0ciIpP3IoIj50Ym9keSIsYSlbMF18fGE6YX1mdW5jdGlvbiBGYShhKXtyZXR1cm4gYS50eXBlPShudWxsIT09YS5nZXRBdHRyaWJ1dGUoInR5cGUiKSkrIi8iK2EudHlwZSxhfWZ1bmN0aW9uIEdhKGEpe3ZhciBiPUNhLmV4ZWMoYS50eXBlKTtyZXR1cm4gYj9hLnR5cGU9YlsxXTphLnJlbW92ZUF0dHJpYnV0ZSgidHlwZSIpLGF9ZnVuY3Rpb24gSGEoYSxiKXt2YXIgYyxkLGUsZixnLGgsaSxqO2lmKDE9PT1iLm5vZGVUeXBlKXtpZihXLmhhc0RhdGEoYSkmJihmPVcuYWNjZXNzKGEpLGc9Vy5zZXQoYixmKSxqPWYuZXZlbnRzKSl7ZGVsZXRlIGcuaGFuZGxlLGcuZXZlbnRzPXt9O2ZvcihlIGluIGopZm9yKGM9MCxkPWpbZV0ubGVuZ3RoO2M8ZDtjKyspci5ldmVudC5hZGQoYixlLGpbZV1bY10pfVguaGFzRGF0YShhKSYmKGg9WC5hY2Nlc3MoYSksaT1yLmV4dGVuZCh7fSxoKSxYLnNldChiLGkpKX19ZnVuY3Rpb24gSWEoYSxiKXt2YXIgYz1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7ImlucHV0Ij09PWMmJmphLnRlc3QoYS50eXBlKT9iLmNoZWNrZWQ9YS5jaGVja2VkOiJpbnB1dCIhPT1jJiYidGV4dGFyZWEiIT09Y3x8KGIuZGVmYXVsdFZhbHVlPWEuZGVmYXVsdFZhbHVlKX1mdW5jdGlvbiBKYShhLGIsYyxkKXtiPWcuYXBwbHkoW10sYik7dmFyIGUsZixoLGksaixrLGw9MCxtPWEubGVuZ3RoLG49bS0xLHE9YlswXSxzPXIuaXNGdW5jdGlvbihxKTtpZihzfHxtPjEmJiJzdHJpbmciPT10eXBlb2YgcSYmIW8uY2hlY2tDbG9uZSYmQmEudGVzdChxKSlyZXR1cm4gYS5lYWNoKGZ1bmN0aW9uKGUpe3ZhciBmPWEuZXEoZSk7cyYmKGJbMF09cS5jYWxsKHRoaXMsZSxmLmh0bWwoKSkpLEphKGYsYixjLGQpfSk7aWYobSYmKGU9cWEoYixhWzBdLm93bmVyRG9jdW1lbnQsITEsYSxkKSxmPWUuZmlyc3RDaGlsZCwxPT09ZS5jaGlsZE5vZGVzLmxlbmd0aCYmKGU9ZiksZnx8ZCkpe2ZvcihoPXIubWFwKG5hKGUsInNjcmlwdCIpLEZhKSxpPWgubGVuZ3RoO2w8bTtsKyspaj1lLGwhPT1uJiYoaj1yLmNsb25lKGosITAsITApLGkmJnIubWVyZ2UoaCxuYShqLCJzY3JpcHQiKSkpLGMuY2FsbChhW2xdLGosbCk7aWYoaSlmb3Ioaz1oW2gubGVuZ3RoLTFdLm93bmVyRG9jdW1lbnQsci5tYXAoaCxHYSksbD0wO2w8aTtsKyspaj1oW2xdLGxhLnRlc3Qoai50eXBlfHwiIikmJiFXLmFjY2VzcyhqLCJnbG9iYWxFdmFsIikmJnIuY29udGFpbnMoayxqKSYmKGouc3JjP3IuX2V2YWxVcmwmJnIuX2V2YWxVcmwoai5zcmMpOnAoai50ZXh0Q29udGVudC5yZXBsYWNlKERhLCIiKSxrKSl9cmV0dXJuIGF9ZnVuY3Rpb24gS2EoYSxiLGMpe2Zvcih2YXIgZCxlPWI/ci5maWx0ZXIoYixhKTphLGY9MDtudWxsIT0oZD1lW2ZdKTtmKyspY3x8MSE9PWQubm9kZVR5cGV8fHIuY2xlYW5EYXRhKG5hKGQpKSxkLnBhcmVudE5vZGUmJihjJiZyLmNvbnRhaW5zKGQub3duZXJEb2N1bWVudCxkKSYmb2EobmEoZCwic2NyaXB0IikpLGQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChkKSk7cmV0dXJuIGF9ci5leHRlbmQoe2h0bWxQcmVmaWx0ZXI6ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZSh6YSwiPCQxPjwvJDI+Iil9LGNsb25lOmZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlLGYsZyxoPWEuY2xvbmVOb2RlKCEwKSxpPXIuY29udGFpbnMoYS5vd25lckRvY3VtZW50LGEpO2lmKCEoby5ub0Nsb25lQ2hlY2tlZHx8MSE9PWEubm9kZVR5cGUmJjExIT09YS5ub2RlVHlwZXx8ci5pc1hNTERvYyhhKSkpZm9yKGc9bmEoaCksZj1uYShhKSxkPTAsZT1mLmxlbmd0aDtkPGU7ZCsrKUlhKGZbZF0sZ1tkXSk7aWYoYilpZihjKWZvcihmPWZ8fG5hKGEpLGc9Z3x8bmEoaCksZD0wLGU9Zi5sZW5ndGg7ZDxlO2QrKylIYShmW2RdLGdbZF0pO2Vsc2UgSGEoYSxoKTtyZXR1cm4gZz1uYShoLCJzY3JpcHQiKSxnLmxlbmd0aD4wJiZvYShnLCFpJiZuYShhLCJzY3JpcHQiKSksaH0sY2xlYW5EYXRhOmZ1bmN0aW9uKGEpe2Zvcih2YXIgYixjLGQsZT1yLmV2ZW50LnNwZWNpYWwsZj0wO3ZvaWQgMCE9PShjPWFbZl0pO2YrKylpZihVKGMpKXtpZihiPWNbVy5leHBhbmRvXSl7aWYoYi5ldmVudHMpZm9yKGQgaW4gYi5ldmVudHMpZVtkXT9yLmV2ZW50LnJlbW92ZShjLGQpOnIucmVtb3ZlRXZlbnQoYyxkLGIuaGFuZGxlKTtjW1cuZXhwYW5kb109dm9pZCAwfWNbWC5leHBhbmRvXSYmKGNbWC5leHBhbmRvXT12b2lkIDApfX19KSxyLmZuLmV4dGVuZCh7ZGV0YWNoOmZ1bmN0aW9uKGEpe3JldHVybiBLYSh0aGlzLGEsITApfSxyZW1vdmU6ZnVuY3Rpb24oYSl7cmV0dXJuIEthKHRoaXMsYSl9LHRleHQ6ZnVuY3Rpb24oYSl7cmV0dXJuIFQodGhpcyxmdW5jdGlvbihhKXtyZXR1cm4gdm9pZCAwPT09YT9yLnRleHQodGhpcyk6dGhpcy5lbXB0eSgpLmVhY2goZnVuY3Rpb24oKXsxIT09dGhpcy5ub2RlVHlwZSYmMTEhPT10aGlzLm5vZGVUeXBlJiY5IT09dGhpcy5ub2RlVHlwZXx8KHRoaXMudGV4dENvbnRlbnQ9YSl9KX0sbnVsbCxhLGFyZ3VtZW50cy5sZW5ndGgpfSxhcHBlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gSmEodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oYSl7aWYoMT09PXRoaXMubm9kZVR5cGV8fDExPT09dGhpcy5ub2RlVHlwZXx8OT09PXRoaXMubm9kZVR5cGUpe3ZhciBiPUVhKHRoaXMsYSk7Yi5hcHBlbmRDaGlsZChhKX19KX0scHJlcGVuZDpmdW5jdGlvbigpe3JldHVybiBKYSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihhKXtpZigxPT09dGhpcy5ub2RlVHlwZXx8MTE9PT10aGlzLm5vZGVUeXBlfHw5PT09dGhpcy5ub2RlVHlwZSl7dmFyIGI9RWEodGhpcyxhKTtiLmluc2VydEJlZm9yZShhLGIuZmlyc3RDaGlsZCl9fSl9LGJlZm9yZTpmdW5jdGlvbigpe3JldHVybiBKYSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihhKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSx0aGlzKX0pfSxhZnRlcjpmdW5jdGlvbigpe3JldHVybiBKYSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihhKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSx0aGlzLm5leHRTaWJsaW5nKX0pfSxlbXB0eTpmdW5jdGlvbigpe2Zvcih2YXIgYSxiPTA7bnVsbCE9KGE9dGhpc1tiXSk7YisrKTE9PT1hLm5vZGVUeXBlJiYoci5jbGVhbkRhdGEobmEoYSwhMSkpLGEudGV4dENvbnRlbnQ9IiIpO3JldHVybiB0aGlzfSxjbG9uZTpmdW5jdGlvbihhLGIpe3JldHVybiBhPW51bGwhPWEmJmEsYj1udWxsPT1iP2E6Yix0aGlzLm1hcChmdW5jdGlvbigpe3JldHVybiByLmNsb25lKHRoaXMsYSxiKX0pfSxodG1sOmZ1bmN0aW9uKGEpe3JldHVybiBUKHRoaXMsZnVuY3Rpb24oYSl7dmFyIGI9dGhpc1swXXx8e30sYz0wLGQ9dGhpcy5sZW5ndGg7aWYodm9pZCAwPT09YSYmMT09PWIubm9kZVR5cGUpcmV0dXJuIGIuaW5uZXJIVE1MO2lmKCJzdHJpbmciPT10eXBlb2YgYSYmIUFhLnRlc3QoYSkmJiFtYVsoa2EuZXhlYyhhKXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKV0pe2E9ci5odG1sUHJlZmlsdGVyKGEpO3RyeXtmb3IoO2M8ZDtjKyspYj10aGlzW2NdfHx7fSwxPT09Yi5ub2RlVHlwZSYmKHIuY2xlYW5EYXRhKG5hKGIsITEpKSxiLmlubmVySFRNTD1hKTtiPTB9Y2F0Y2goZSl7fX1iJiZ0aGlzLmVtcHR5KCkuYXBwZW5kKGEpfSxudWxsLGEsYXJndW1lbnRzLmxlbmd0aCl9LHJlcGxhY2VXaXRoOmZ1bmN0aW9uKCl7dmFyIGE9W107cmV0dXJuIEphKHRoaXMsYXJndW1lbnRzLGZ1bmN0aW9uKGIpe3ZhciBjPXRoaXMucGFyZW50Tm9kZTtyLmluQXJyYXkodGhpcyxhKTwwJiYoci5jbGVhbkRhdGEobmEodGhpcykpLGMmJmMucmVwbGFjZUNoaWxkKGIsdGhpcykpfSxhKX19KSxyLmVhY2goe2FwcGVuZFRvOiJhcHBlbmQiLHByZXBlbmRUbzoicHJlcGVuZCIsaW5zZXJ0QmVmb3JlOiJiZWZvcmUiLGluc2VydEFmdGVyOiJhZnRlciIscmVwbGFjZUFsbDoicmVwbGFjZVdpdGgifSxmdW5jdGlvbihhLGIpe3IuZm5bYV09ZnVuY3Rpb24oYSl7Zm9yKHZhciBjLGQ9W10sZT1yKGEpLGY9ZS5sZW5ndGgtMSxnPTA7Zzw9ZjtnKyspYz1nPT09Zj90aGlzOnRoaXMuY2xvbmUoITApLHIoZVtnXSlbYl0oYyksaC5hcHBseShkLGMuZ2V0KCkpO3JldHVybiB0aGlzLnB1c2hTdGFjayhkKX19KTt2YXIgTGE9L15tYXJnaW4vLE1hPW5ldyBSZWdFeHAoIl4oIithYSsiKSg/IXB4KVthLXolXSskIiwiaSIpLE5hPWZ1bmN0aW9uKGIpe3ZhciBjPWIub3duZXJEb2N1bWVudC5kZWZhdWx0VmlldztyZXR1cm4gYyYmYy5vcGVuZXJ8fChjPWEpLGMuZ2V0Q29tcHV0ZWRTdHlsZShiKX07IWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYigpe2lmKGkpe2kuc3R5bGUuY3NzVGV4dD0iYm94LXNpemluZzpib3JkZXItYm94O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luOmF1dG87Ym9yZGVyOjFweDtwYWRkaW5nOjFweDt0b3A6MSU7d2lkdGg6NTAlIixpLmlubmVySFRNTD0iIixyYS5hcHBlbmRDaGlsZChoKTt2YXIgYj1hLmdldENvbXB1dGVkU3R5bGUoaSk7Yz0iMSUiIT09Yi50b3AsZz0iMnB4Ij09PWIubWFyZ2luTGVmdCxlPSI0cHgiPT09Yi53aWR0aCxpLnN0eWxlLm1hcmdpblJpZ2h0PSI1MCUiLGY9IjRweCI9PT1iLm1hcmdpblJpZ2h0LHJhLnJlbW92ZUNoaWxkKGgpLGk9bnVsbH19dmFyIGMsZSxmLGcsaD1kLmNyZWF0ZUVsZW1lbnQoImRpdiIpLGk9ZC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLnN0eWxlJiYoaS5zdHlsZS5iYWNrZ3JvdW5kQ2xpcD0iY29udGVudC1ib3giLGkuY2xvbmVOb2RlKCEwKS5zdHlsZS5iYWNrZ3JvdW5kQ2xpcD0iIixvLmNsZWFyQ2xvbmVTdHlsZT0iY29udGVudC1ib3giPT09aS5zdHlsZS5iYWNrZ3JvdW5kQ2xpcCxoLnN0eWxlLmNzc1RleHQ9ImJvcmRlcjowO3dpZHRoOjhweDtoZWlnaHQ6MDt0b3A6MDtsZWZ0Oi05OTk5cHg7cGFkZGluZzowO21hcmdpbi10b3A6MXB4O3Bvc2l0aW9uOmFic29sdXRlIixoLmFwcGVuZENoaWxkKGkpLHIuZXh0ZW5kKG8se3BpeGVsUG9zaXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gYigpLGN9LGJveFNpemluZ1JlbGlhYmxlOmZ1bmN0aW9uKCl7cmV0dXJuIGIoKSxlfSxwaXhlbE1hcmdpblJpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuIGIoKSxmfSxyZWxpYWJsZU1hcmdpbkxlZnQ6ZnVuY3Rpb24oKXtyZXR1cm4gYigpLGd9fSkpfSgpO2Z1bmN0aW9uIE9hKGEsYixjKXt2YXIgZCxlLGYsZyxoPWEuc3R5bGU7cmV0dXJuIGM9Y3x8TmEoYSksYyYmKGc9Yy5nZXRQcm9wZXJ0eVZhbHVlKGIpfHxjW2JdLCIiIT09Z3x8ci5jb250YWlucyhhLm93bmVyRG9jdW1lbnQsYSl8fChnPXIuc3R5bGUoYSxiKSksIW8ucGl4ZWxNYXJnaW5SaWdodCgpJiZNYS50ZXN0KGcpJiZMYS50ZXN0KGIpJiYoZD1oLndpZHRoLGU9aC5taW5XaWR0aCxmPWgubWF4V2lkdGgsaC5taW5XaWR0aD1oLm1heFdpZHRoPWgud2lkdGg9ZyxnPWMud2lkdGgsaC53aWR0aD1kLGgubWluV2lkdGg9ZSxoLm1heFdpZHRoPWYpKSx2b2lkIDAhPT1nP2crIiI6Z31mdW5jdGlvbiBQYShhLGIpe3JldHVybntnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gYSgpP3ZvaWQgZGVsZXRlIHRoaXMuZ2V0Oih0aGlzLmdldD1iKS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fX12YXIgUWE9L14obm9uZXx0YWJsZSg/IS1jW2VhXSkuKykvLFJhPS9eLS0vLFNhPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHZpc2liaWxpdHk6ImhpZGRlbiIsZGlzcGxheToiYmxvY2sifSxUYT17bGV0dGVyU3BhY2luZzoiMCIsZm9udFdlaWdodDoiNDAwIn0sVWE9WyJXZWJraXQiLCJNb3oiLCJtcyJdLFZhPWQuY3JlYXRlRWxlbWVudCgiZGl2Iikuc3R5bGU7ZnVuY3Rpb24gV2EoYSl7aWYoYSBpbiBWYSlyZXR1cm4gYTt2YXIgYj1hWzBdLnRvVXBwZXJDYXNlKCkrYS5zbGljZSgxKSxjPVVhLmxlbmd0aDt3aGlsZShjLS0paWYoYT1VYVtjXStiLGEgaW4gVmEpcmV0dXJuIGF9ZnVuY3Rpb24gWGEoYSl7dmFyIGI9ci5jc3NQcm9wc1thXTtyZXR1cm4gYnx8KGI9ci5jc3NQcm9wc1thXT1XYShhKXx8YSksYn1mdW5jdGlvbiBZYShhLGIsYyl7dmFyIGQ9YmEuZXhlYyhiKTtyZXR1cm4gZD9NYXRoLm1heCgwLGRbMl0tKGN8fDApKSsoZFszXXx8InB4Iik6Yn1mdW5jdGlvbiBaYShhLGIsYyxkLGUpe3ZhciBmLGc9MDtmb3IoZj1jPT09KGQ/ImJvcmRlciI6ImNvbnRlbnQiKT80OiJ3aWR0aCI9PT1iPzE6MDtmPDQ7Zis9MikibWFyZ2luIj09PWMmJihnKz1yLmNzcyhhLGMrY2FbZl0sITAsZSkpLGQ/KCJjb250ZW50Ij09PWMmJihnLT1yLmNzcyhhLCJwYWRkaW5nIitjYVtmXSwhMCxlKSksIm1hcmdpbiIhPT1jJiYoZy09ci5jc3MoYSwiYm9yZGVyIitjYVtmXSsiV2lkdGgiLCEwLGUpKSk6KGcrPXIuY3NzKGEsInBhZGRpbmciK2NhW2ZdLCEwLGUpLCJwYWRkaW5nIiE9PWMmJihnKz1yLmNzcyhhLCJib3JkZXIiK2NhW2ZdKyJXaWR0aCIsITAsZSkpKTtyZXR1cm4gZ31mdW5jdGlvbiAkYShhLGIsYyl7dmFyIGQsZT1OYShhKSxmPU9hKGEsYixlKSxnPSJib3JkZXItYm94Ij09PXIuY3NzKGEsImJveFNpemluZyIsITEsZSk7cmV0dXJuIE1hLnRlc3QoZik/ZjooZD1nJiYoby5ib3hTaXppbmdSZWxpYWJsZSgpfHxmPT09YS5zdHlsZVtiXSksImF1dG8iPT09ZiYmKGY9YVsib2Zmc2V0IitiWzBdLnRvVXBwZXJDYXNlKCkrYi5zbGljZSgxKV0pLGY9cGFyc2VGbG9hdChmKXx8MCxmK1phKGEsYixjfHwoZz8iYm9yZGVyIjoiY29udGVudCIpLGQsZSkrInB4Iil9ci5leHRlbmQoe2Nzc0hvb2tzOntvcGFjaXR5OntnZXQ6ZnVuY3Rpb24oYSxiKXtpZihiKXt2YXIgYz1PYShhLCJvcGFjaXR5Iik7cmV0dXJuIiI9PT1jPyIxIjpjfX19fSxjc3NOdW1iZXI6e2FuaW1hdGlvbkl0ZXJhdGlvbkNvdW50OiEwLGNvbHVtbkNvdW50OiEwLGZpbGxPcGFjaXR5OiEwLGZsZXhHcm93OiEwLGZsZXhTaHJpbms6ITAsZm9udFdlaWdodDohMCxsaW5lSGVpZ2h0OiEwLG9wYWNpdHk6ITAsb3JkZXI6ITAsb3JwaGFuczohMCx3aWRvd3M6ITAsekluZGV4OiEwLHpvb206ITB9LGNzc1Byb3BzOnsiZmxvYXQiOiJjc3NGbG9hdCJ9LHN0eWxlOmZ1bmN0aW9uKGEsYixjLGQpe2lmKGEmJjMhPT1hLm5vZGVUeXBlJiY4IT09YS5ub2RlVHlwZSYmYS5zdHlsZSl7dmFyIGUsZixnLGg9ci5jYW1lbENhc2UoYiksaT1SYS50ZXN0KGIpLGo9YS5zdHlsZTtyZXR1cm4gaXx8KGI9WGEoaCkpLGc9ci5jc3NIb29rc1tiXXx8ci5jc3NIb29rc1toXSx2b2lkIDA9PT1jP2cmJiJnZXQiaW4gZyYmdm9pZCAwIT09KGU9Zy5nZXQoYSwhMSxkKSk/ZTpqW2JdOihmPXR5cGVvZiBjLCJzdHJpbmciPT09ZiYmKGU9YmEuZXhlYyhjKSkmJmVbMV0mJihjPWZhKGEsYixlKSxmPSJudW1iZXIiKSxudWxsIT1jJiZjPT09YyYmKCJudW1iZXIiPT09ZiYmKGMrPWUmJmVbM118fChyLmNzc051bWJlcltoXT8iIjoicHgiKSksby5jbGVhckNsb25lU3R5bGV8fCIiIT09Y3x8MCE9PWIuaW5kZXhPZigiYmFja2dyb3VuZCIpfHwoaltiXT0iaW5oZXJpdCIpLGcmJiJzZXQiaW4gZyYmdm9pZCAwPT09KGM9Zy5zZXQoYSxjLGQpKXx8KGk/ai5zZXRQcm9wZXJ0eShiLGMpOmpbYl09YykpLHZvaWQgMCl9fSxjc3M6ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGUsZixnLGg9ci5jYW1lbENhc2UoYiksaT1SYS50ZXN0KGIpO3JldHVybiBpfHwoYj1YYShoKSksZz1yLmNzc0hvb2tzW2JdfHxyLmNzc0hvb2tzW2hdLGcmJiJnZXQiaW4gZyYmKGU9Zy5nZXQoYSwhMCxjKSksdm9pZCAwPT09ZSYmKGU9T2EoYSxiLGQpKSwibm9ybWFsIj09PWUmJmIgaW4gVGEmJihlPVRhW2JdKSwiIj09PWN8fGM/KGY9cGFyc2VGbG9hdChlKSxjPT09ITB8fGlzRmluaXRlKGYpP2Z8fDA6ZSk6ZX19KSxyLmVhY2goWyJoZWlnaHQiLCJ3aWR0aCJdLGZ1bmN0aW9uKGEsYil7ci5jc3NIb29rc1tiXT17Z2V0OmZ1bmN0aW9uKGEsYyxkKXtpZihjKXJldHVybiFRYS50ZXN0KHIuY3NzKGEsImRpc3BsYXkiKSl8fGEuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgmJmEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg/JGEoYSxiLGQpOmVhKGEsU2EsZnVuY3Rpb24oKXtyZXR1cm4gJGEoYSxiLGQpfSl9LHNldDpmdW5jdGlvbihhLGMsZCl7dmFyIGUsZj1kJiZOYShhKSxnPWQmJlphKGEsYixkLCJib3JkZXItYm94Ij09PXIuY3NzKGEsImJveFNpemluZyIsITEsZiksZik7cmV0dXJuIGcmJihlPWJhLmV4ZWMoYykpJiYicHgiIT09KGVbM118fCJweCIpJiYoYS5zdHlsZVtiXT1jLGM9ci5jc3MoYSxiKSksWWEoYSxjLGcpfX19KSxyLmNzc0hvb2tzLm1hcmdpbkxlZnQ9UGEoby5yZWxpYWJsZU1hcmdpbkxlZnQsZnVuY3Rpb24oYSxiKXtpZihiKXJldHVybihwYXJzZUZsb2F0KE9hKGEsIm1hcmdpbkxlZnQiKSl8fGEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdC1lYShhLHttYXJnaW5MZWZ0OjB9LGZ1bmN0aW9uKCl7cmV0dXJuIGEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdH0pKSsicHgifSksci5lYWNoKHttYXJnaW46IiIscGFkZGluZzoiIixib3JkZXI6IldpZHRoIn0sZnVuY3Rpb24oYSxiKXtyLmNzc0hvb2tzW2ErYl09e2V4cGFuZDpmdW5jdGlvbihjKXtmb3IodmFyIGQ9MCxlPXt9LGY9InN0cmluZyI9PXR5cGVvZiBjP2Muc3BsaXQoIiAiKTpbY107ZDw0O2QrKyllW2ErY2FbZF0rYl09ZltkXXx8ZltkLTJdfHxmWzBdO3JldHVybiBlfX0sTGEudGVzdChhKXx8KHIuY3NzSG9va3NbYStiXS5zZXQ9WWEpfSksci5mbi5leHRlbmQoe2NzczpmdW5jdGlvbihhLGIpe3JldHVybiBUKHRoaXMsZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZj17fSxnPTA7aWYoQXJyYXkuaXNBcnJheShiKSl7Zm9yKGQ9TmEoYSksZT1iLmxlbmd0aDtnPGU7ZysrKWZbYltnXV09ci5jc3MoYSxiW2ddLCExLGQpO3JldHVybiBmfXJldHVybiB2b2lkIDAhPT1jP3Iuc3R5bGUoYSxiLGMpOnIuY3NzKGEsYil9LGEsYixhcmd1bWVudHMubGVuZ3RoPjEpfX0pO2Z1bmN0aW9uIF9hKGEsYixjLGQsZSl7cmV0dXJuIG5ldyBfYS5wcm90b3R5cGUuaW5pdChhLGIsYyxkLGUpfXIuVHdlZW49X2EsX2EucHJvdG90eXBlPXtjb25zdHJ1Y3RvcjpfYSxpbml0OmZ1bmN0aW9uKGEsYixjLGQsZSxmKXt0aGlzLmVsZW09YSx0aGlzLnByb3A9Yyx0aGlzLmVhc2luZz1lfHxyLmVhc2luZy5fZGVmYXVsdCx0aGlzLm9wdGlvbnM9Yix0aGlzLnN0YXJ0PXRoaXMubm93PXRoaXMuY3VyKCksdGhpcy5lbmQ9ZCx0aGlzLnVuaXQ9Znx8KHIuY3NzTnVtYmVyW2NdPyIiOiJweCIpfSxjdXI6ZnVuY3Rpb24oKXt2YXIgYT1fYS5wcm9wSG9va3NbdGhpcy5wcm9wXTtyZXR1cm4gYSYmYS5nZXQ/YS5nZXQodGhpcyk6X2EucHJvcEhvb2tzLl9kZWZhdWx0LmdldCh0aGlzKX0scnVuOmZ1bmN0aW9uKGEpe3ZhciBiLGM9X2EucHJvcEhvb2tzW3RoaXMucHJvcF07cmV0dXJuIHRoaXMub3B0aW9ucy5kdXJhdGlvbj90aGlzLnBvcz1iPXIuZWFzaW5nW3RoaXMuZWFzaW5nXShhLHRoaXMub3B0aW9ucy5kdXJhdGlvbiphLDAsMSx0aGlzLm9wdGlvbnMuZHVyYXRpb24pOnRoaXMucG9zPWI9YSx0aGlzLm5vdz0odGhpcy5lbmQtdGhpcy5zdGFydCkqYit0aGlzLnN0YXJ0LHRoaXMub3B0aW9ucy5zdGVwJiZ0aGlzLm9wdGlvbnMuc3RlcC5jYWxsKHRoaXMuZWxlbSx0aGlzLm5vdyx0aGlzKSxjJiZjLnNldD9jLnNldCh0aGlzKTpfYS5wcm9wSG9va3MuX2RlZmF1bHQuc2V0KHRoaXMpLHRoaXN9fSxfYS5wcm90b3R5cGUuaW5pdC5wcm90b3R5cGU9X2EucHJvdG90eXBlLF9hLnByb3BIb29rcz17X2RlZmF1bHQ6e2dldDpmdW5jdGlvbihhKXt2YXIgYjtyZXR1cm4gMSE9PWEuZWxlbS5ub2RlVHlwZXx8bnVsbCE9YS5lbGVtW2EucHJvcF0mJm51bGw9PWEuZWxlbS5zdHlsZVthLnByb3BdP2EuZWxlbVthLnByb3BdOihiPXIuY3NzKGEuZWxlbSxhLnByb3AsIiIpLGImJiJhdXRvIiE9PWI/YjowKX0sc2V0OmZ1bmN0aW9uKGEpe3IuZnguc3RlcFthLnByb3BdP3IuZnguc3RlcFthLnByb3BdKGEpOjEhPT1hLmVsZW0ubm9kZVR5cGV8fG51bGw9PWEuZWxlbS5zdHlsZVtyLmNzc1Byb3BzW2EucHJvcF1dJiYhci5jc3NIb29rc1thLnByb3BdP2EuZWxlbVthLnByb3BdPWEubm93OnIuc3R5bGUoYS5lbGVtLGEucHJvcCxhLm5vdythLnVuaXQpfX19LF9hLnByb3BIb29rcy5zY3JvbGxUb3A9X2EucHJvcEhvb2tzLnNjcm9sbExlZnQ9e3NldDpmdW5jdGlvbihhKXthLmVsZW0ubm9kZVR5cGUmJmEuZWxlbS5wYXJlbnROb2RlJiYoYS5lbGVtW2EucHJvcF09YS5ub3cpfX0sci5lYXNpbmc9e2xpbmVhcjpmdW5jdGlvbihhKXtyZXR1cm4gYX0sc3dpbmc6ZnVuY3Rpb24oYSl7cmV0dXJuLjUtTWF0aC5jb3MoYSpNYXRoLlBJKS8yfSxfZGVmYXVsdDoic3dpbmcifSxyLmZ4PV9hLnByb3RvdHlwZS5pbml0LHIuZnguc3RlcD17fTt2YXIgYWIsYmIsY2I9L14oPzp0b2dnbGV8c2hvd3xoaWRlKSQvLGRiPS9xdWV1ZUhvb2tzJC87ZnVuY3Rpb24gZWIoKXtiYiYmKGQuaGlkZGVuPT09ITEmJmEucmVxdWVzdEFuaW1hdGlvbkZyYW1lP2EucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGViKTphLnNldFRpbWVvdXQoZWIsci5meC5pbnRlcnZhbCksci5meC50aWNrKCkpfWZ1bmN0aW9uIGZiKCl7cmV0dXJuIGEuc2V0VGltZW91dChmdW5jdGlvbigpe2FiPXZvaWQgMH0pLGFiPXIubm93KCl9ZnVuY3Rpb24gZ2IoYSxiKXt2YXIgYyxkPTAsZT17aGVpZ2h0OmF9O2ZvcihiPWI/MTowO2Q8NDtkKz0yLWIpYz1jYVtkXSxlWyJtYXJnaW4iK2NdPWVbInBhZGRpbmciK2NdPWE7cmV0dXJuIGImJihlLm9wYWNpdHk9ZS53aWR0aD1hKSxlfWZ1bmN0aW9uIGhiKGEsYixjKXtmb3IodmFyIGQsZT0oa2IudHdlZW5lcnNbYl18fFtdKS5jb25jYXQoa2IudHdlZW5lcnNbIioiXSksZj0wLGc9ZS5sZW5ndGg7ZjxnO2YrKylpZihkPWVbZl0uY2FsbChjLGIsYSkpcmV0dXJuIGR9ZnVuY3Rpb24gaWIoYSxiLGMpe3ZhciBkLGUsZixnLGgsaSxqLGssbD0id2lkdGgiaW4gYnx8ImhlaWdodCJpbiBiLG09dGhpcyxuPXt9LG89YS5zdHlsZSxwPWEubm9kZVR5cGUmJmRhKGEpLHE9Vy5nZXQoYSwiZnhzaG93Iik7Yy5xdWV1ZXx8KGc9ci5fcXVldWVIb29rcyhhLCJmeCIpLG51bGw9PWcudW5xdWV1ZWQmJihnLnVucXVldWVkPTAsaD1nLmVtcHR5LmZpcmUsZy5lbXB0eS5maXJlPWZ1bmN0aW9uKCl7Zy51bnF1ZXVlZHx8aCgpfSksZy51bnF1ZXVlZCsrLG0uYWx3YXlzKGZ1bmN0aW9uKCl7bS5hbHdheXMoZnVuY3Rpb24oKXtnLnVucXVldWVkLS0sci5xdWV1ZShhLCJmeCIpLmxlbmd0aHx8Zy5lbXB0eS5maXJlKCl9KX0pKTtmb3IoZCBpbiBiKWlmKGU9YltkXSxjYi50ZXN0KGUpKXtpZihkZWxldGUgYltkXSxmPWZ8fCJ0b2dnbGUiPT09ZSxlPT09KHA/ImhpZGUiOiJzaG93Iikpe2lmKCJzaG93IiE9PWV8fCFxfHx2b2lkIDA9PT1xW2RdKWNvbnRpbnVlO3A9ITB9bltkXT1xJiZxW2RdfHxyLnN0eWxlKGEsZCl9aWYoaT0hci5pc0VtcHR5T2JqZWN0KGIpLGl8fCFyLmlzRW1wdHlPYmplY3Qobikpe2wmJjE9PT1hLm5vZGVUeXBlJiYoYy5vdmVyZmxvdz1bby5vdmVyZmxvdyxvLm92ZXJmbG93WCxvLm92ZXJmbG93WV0saj1xJiZxLmRpc3BsYXksbnVsbD09aiYmKGo9Vy5nZXQoYSwiZGlzcGxheSIpKSxrPXIuY3NzKGEsImRpc3BsYXkiKSwibm9uZSI9PT1rJiYoaj9rPWo6KGlhKFthXSwhMCksaj1hLnN0eWxlLmRpc3BsYXl8fGosaz1yLmNzcyhhLCJkaXNwbGF5IiksaWEoW2FdKSkpLCgiaW5saW5lIj09PWt8fCJpbmxpbmUtYmxvY2siPT09ayYmbnVsbCE9aikmJiJub25lIj09PXIuY3NzKGEsImZsb2F0IikmJihpfHwobS5kb25lKGZ1bmN0aW9uKCl7by5kaXNwbGF5PWp9KSxudWxsPT1qJiYoaz1vLmRpc3BsYXksaj0ibm9uZSI9PT1rPyIiOmspKSxvLmRpc3BsYXk9ImlubGluZS1ibG9jayIpKSxjLm92ZXJmbG93JiYoby5vdmVyZmxvdz0iaGlkZGVuIixtLmFsd2F5cyhmdW5jdGlvbigpe28ub3ZlcmZsb3c9Yy5vdmVyZmxvd1swXSxvLm92ZXJmbG93WD1jLm92ZXJmbG93WzFdLG8ub3ZlcmZsb3dZPWMub3ZlcmZsb3dbMl19KSksaT0hMTtmb3IoZCBpbiBuKWl8fChxPyJoaWRkZW4iaW4gcSYmKHA9cS5oaWRkZW4pOnE9Vy5hY2Nlc3MoYSwiZnhzaG93Iix7ZGlzcGxheTpqfSksZiYmKHEuaGlkZGVuPSFwKSxwJiZpYShbYV0sITApLG0uZG9uZShmdW5jdGlvbigpe3B8fGlhKFthXSksVy5yZW1vdmUoYSwiZnhzaG93Iik7Zm9yKGQgaW4gbilyLnN0eWxlKGEsZCxuW2RdKX0pKSxpPWhiKHA/cVtkXTowLGQsbSksZCBpbiBxfHwocVtkXT1pLnN0YXJ0LHAmJihpLmVuZD1pLnN0YXJ0LGkuc3RhcnQ9MCkpfX1mdW5jdGlvbiBqYihhLGIpe3ZhciBjLGQsZSxmLGc7Zm9yKGMgaW4gYSlpZihkPXIuY2FtZWxDYXNlKGMpLGU9YltkXSxmPWFbY10sQXJyYXkuaXNBcnJheShmKSYmKGU9ZlsxXSxmPWFbY109ZlswXSksYyE9PWQmJihhW2RdPWYsZGVsZXRlIGFbY10pLGc9ci5jc3NIb29rc1tkXSxnJiYiZXhwYW5kImluIGcpe2Y9Zy5leHBhbmQoZiksZGVsZXRlIGFbZF07Zm9yKGMgaW4gZiljIGluIGF8fChhW2NdPWZbY10sYltjXT1lKX1lbHNlIGJbZF09ZX1mdW5jdGlvbiBrYihhLGIsYyl7dmFyIGQsZSxmPTAsZz1rYi5wcmVmaWx0ZXJzLmxlbmd0aCxoPXIuRGVmZXJyZWQoKS5hbHdheXMoZnVuY3Rpb24oKXtkZWxldGUgaS5lbGVtfSksaT1mdW5jdGlvbigpe2lmKGUpcmV0dXJuITE7Zm9yKHZhciBiPWFifHxmYigpLGM9TWF0aC5tYXgoMCxqLnN0YXJ0VGltZStqLmR1cmF0aW9uLWIpLGQ9Yy9qLmR1cmF0aW9ufHwwLGY9MS1kLGc9MCxpPWoudHdlZW5zLmxlbmd0aDtnPGk7ZysrKWoudHdlZW5zW2ddLnJ1bihmKTtyZXR1cm4gaC5ub3RpZnlXaXRoKGEsW2osZixjXSksZjwxJiZpP2M6KGl8fGgubm90aWZ5V2l0aChhLFtqLDEsMF0pLGgucmVzb2x2ZVdpdGgoYSxbal0pLCExKX0saj1oLnByb21pc2Uoe2VsZW06YSxwcm9wczpyLmV4dGVuZCh7fSxiKSxvcHRzOnIuZXh0ZW5kKCEwLHtzcGVjaWFsRWFzaW5nOnt9LGVhc2luZzpyLmVhc2luZy5fZGVmYXVsdH0sYyksb3JpZ2luYWxQcm9wZXJ0aWVzOmIsb3JpZ2luYWxPcHRpb25zOmMsc3RhcnRUaW1lOmFifHxmYigpLGR1cmF0aW9uOmMuZHVyYXRpb24sdHdlZW5zOltdLGNyZWF0ZVR3ZWVuOmZ1bmN0aW9uKGIsYyl7dmFyIGQ9ci5Ud2VlbihhLGoub3B0cyxiLGMsai5vcHRzLnNwZWNpYWxFYXNpbmdbYl18fGoub3B0cy5lYXNpbmcpO3JldHVybiBqLnR3ZWVucy5wdXNoKGQpLGR9LHN0b3A6ZnVuY3Rpb24oYil7dmFyIGM9MCxkPWI/ai50d2VlbnMubGVuZ3RoOjA7aWYoZSlyZXR1cm4gdGhpcztmb3IoZT0hMDtjPGQ7YysrKWoudHdlZW5zW2NdLnJ1bigxKTtyZXR1cm4gYj8oaC5ub3RpZnlXaXRoKGEsW2osMSwwXSksaC5yZXNvbHZlV2l0aChhLFtqLGJdKSk6aC5yZWplY3RXaXRoKGEsW2osYl0pLHRoaXN9fSksaz1qLnByb3BzO2ZvcihqYihrLGoub3B0cy5zcGVjaWFsRWFzaW5nKTtmPGc7ZisrKWlmKGQ9a2IucHJlZmlsdGVyc1tmXS5jYWxsKGosYSxrLGoub3B0cykpcmV0dXJuIHIuaXNGdW5jdGlvbihkLnN0b3ApJiYoci5fcXVldWVIb29rcyhqLmVsZW0sai5vcHRzLnF1ZXVlKS5zdG9wPXIucHJveHkoZC5zdG9wLGQpKSxkO3JldHVybiByLm1hcChrLGhiLGopLHIuaXNGdW5jdGlvbihqLm9wdHMuc3RhcnQpJiZqLm9wdHMuc3RhcnQuY2FsbChhLGopLGoucHJvZ3Jlc3Moai5vcHRzLnByb2dyZXNzKS5kb25lKGoub3B0cy5kb25lLGoub3B0cy5jb21wbGV0ZSkuZmFpbChqLm9wdHMuZmFpbCkuYWx3YXlzKGoub3B0cy5hbHdheXMpLHIuZngudGltZXIoci5leHRlbmQoaSx7ZWxlbTphLGFuaW06aixxdWV1ZTpqLm9wdHMucXVldWV9KSksan1yLkFuaW1hdGlvbj1yLmV4dGVuZChrYix7dHdlZW5lcnM6eyIqIjpbZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLmNyZWF0ZVR3ZWVuKGEsYik7cmV0dXJuIGZhKGMuZWxlbSxhLGJhLmV4ZWMoYiksYyksY31dfSx0d2VlbmVyOmZ1bmN0aW9uKGEsYil7ci5pc0Z1bmN0aW9uKGEpPyhiPWEsYT1bIioiXSk6YT1hLm1hdGNoKEwpO2Zvcih2YXIgYyxkPTAsZT1hLmxlbmd0aDtkPGU7ZCsrKWM9YVtkXSxrYi50d2VlbmVyc1tjXT1rYi50d2VlbmVyc1tjXXx8W10sa2IudHdlZW5lcnNbY10udW5zaGlmdChiKX0scHJlZmlsdGVyczpbaWJdLHByZWZpbHRlcjpmdW5jdGlvbihhLGIpe2I/a2IucHJlZmlsdGVycy51bnNoaWZ0KGEpOmtiLnByZWZpbHRlcnMucHVzaChhKX19KSxyLnNwZWVkPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hJiYib2JqZWN0Ij09dHlwZW9mIGE/ci5leHRlbmQoe30sYSk6e2NvbXBsZXRlOmN8fCFjJiZifHxyLmlzRnVuY3Rpb24oYSkmJmEsZHVyYXRpb246YSxlYXNpbmc6YyYmYnx8YiYmIXIuaXNGdW5jdGlvbihiKSYmYn07cmV0dXJuIHIuZngub2ZmP2QuZHVyYXRpb249MDoibnVtYmVyIiE9dHlwZW9mIGQuZHVyYXRpb24mJihkLmR1cmF0aW9uIGluIHIuZnguc3BlZWRzP2QuZHVyYXRpb249ci5meC5zcGVlZHNbZC5kdXJhdGlvbl06ZC5kdXJhdGlvbj1yLmZ4LnNwZWVkcy5fZGVmYXVsdCksbnVsbCE9ZC5xdWV1ZSYmZC5xdWV1ZSE9PSEwfHwoZC5xdWV1ZT0iZngiKSxkLm9sZD1kLmNvbXBsZXRlLGQuY29tcGxldGU9ZnVuY3Rpb24oKXtyLmlzRnVuY3Rpb24oZC5vbGQpJiZkLm9sZC5jYWxsKHRoaXMpLGQucXVldWUmJnIuZGVxdWV1ZSh0aGlzLGQucXVldWUpfSxkfSxyLmZuLmV4dGVuZCh7ZmFkZVRvOmZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiB0aGlzLmZpbHRlcihkYSkuY3NzKCJvcGFjaXR5IiwwKS5zaG93KCkuZW5kKCkuYW5pbWF0ZSh7b3BhY2l0eTpifSxhLGMsZCl9LGFuaW1hdGU6ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ci5pc0VtcHR5T2JqZWN0KGEpLGY9ci5zcGVlZChiLGMsZCksZz1mdW5jdGlvbigpe3ZhciBiPWtiKHRoaXMsci5leHRlbmQoe30sYSksZik7KGV8fFcuZ2V0KHRoaXMsImZpbmlzaCIpKSYmYi5zdG9wKCEwKX07cmV0dXJuIGcuZmluaXNoPWcsZXx8Zi5xdWV1ZT09PSExP3RoaXMuZWFjaChnKTp0aGlzLnF1ZXVlKGYucXVldWUsZyl9LHN0b3A6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWZ1bmN0aW9uKGEpe3ZhciBiPWEuc3RvcDtkZWxldGUgYS5zdG9wLGIoYyl9O3JldHVybiJzdHJpbmciIT10eXBlb2YgYSYmKGM9YixiPWEsYT12b2lkIDApLGImJmEhPT0hMSYmdGhpcy5xdWV1ZShhfHwiZngiLFtdKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgYj0hMCxlPW51bGwhPWEmJmErInF1ZXVlSG9va3MiLGY9ci50aW1lcnMsZz1XLmdldCh0aGlzKTtpZihlKWdbZV0mJmdbZV0uc3RvcCYmZChnW2VdKTtlbHNlIGZvcihlIGluIGcpZ1tlXSYmZ1tlXS5zdG9wJiZkYi50ZXN0KGUpJiZkKGdbZV0pO2ZvcihlPWYubGVuZ3RoO2UtLTspZltlXS5lbGVtIT09dGhpc3x8bnVsbCE9YSYmZltlXS5xdWV1ZSE9PWF8fChmW2VdLmFuaW0uc3RvcChjKSxiPSExLGYuc3BsaWNlKGUsMSkpOyFiJiZjfHxyLmRlcXVldWUodGhpcyxhKX0pfSxmaW5pc2g6ZnVuY3Rpb24oYSl7cmV0dXJuIGEhPT0hMSYmKGE9YXx8ImZ4IiksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGIsYz1XLmdldCh0aGlzKSxkPWNbYSsicXVldWUiXSxlPWNbYSsicXVldWVIb29rcyJdLGY9ci50aW1lcnMsZz1kP2QubGVuZ3RoOjA7Zm9yKGMuZmluaXNoPSEwLHIucXVldWUodGhpcyxhLFtdKSxlJiZlLnN0b3AmJmUuc3RvcC5jYWxsKHRoaXMsITApLGI9Zi5sZW5ndGg7Yi0tOylmW2JdLmVsZW09PT10aGlzJiZmW2JdLnF1ZXVlPT09YSYmKGZbYl0uYW5pbS5zdG9wKCEwKSxmLnNwbGljZShiLDEpKTtmb3IoYj0wO2I8ZztiKyspZFtiXSYmZFtiXS5maW5pc2gmJmRbYl0uZmluaXNoLmNhbGwodGhpcyk7ZGVsZXRlIGMuZmluaXNofSl9fSksci5lYWNoKFsidG9nZ2xlIiwic2hvdyIsImhpZGUiXSxmdW5jdGlvbihhLGIpe3ZhciBjPXIuZm5bYl07ci5mbltiXT1mdW5jdGlvbihhLGQsZSl7cmV0dXJuIG51bGw9PWF8fCJib29sZWFuIj09dHlwZW9mIGE/Yy5hcHBseSh0aGlzLGFyZ3VtZW50cyk6dGhpcy5hbmltYXRlKGdiKGIsITApLGEsZCxlKX19KSxyLmVhY2goe3NsaWRlRG93bjpnYigic2hvdyIpLHNsaWRlVXA6Z2IoImhpZGUiKSxzbGlkZVRvZ2dsZTpnYigidG9nZ2xlIiksZmFkZUluOntvcGFjaXR5OiJzaG93In0sZmFkZU91dDp7b3BhY2l0eToiaGlkZSJ9LGZhZGVUb2dnbGU6e29wYWNpdHk6InRvZ2dsZSJ9fSxmdW5jdGlvbihhLGIpe3IuZm5bYV09ZnVuY3Rpb24oYSxjLGQpe3JldHVybiB0aGlzLmFuaW1hdGUoYixhLGMsZCl9fSksci50aW1lcnM9W10sci5meC50aWNrPWZ1bmN0aW9uKCl7dmFyIGEsYj0wLGM9ci50aW1lcnM7Zm9yKGFiPXIubm93KCk7YjxjLmxlbmd0aDtiKyspYT1jW2JdLGEoKXx8Y1tiXSE9PWF8fGMuc3BsaWNlKGItLSwxKTtjLmxlbmd0aHx8ci5meC5zdG9wKCksYWI9dm9pZCAwfSxyLmZ4LnRpbWVyPWZ1bmN0aW9uKGEpe3IudGltZXJzLnB1c2goYSksci5meC5zdGFydCgpfSxyLmZ4LmludGVydmFsPTEzLHIuZnguc3RhcnQ9ZnVuY3Rpb24oKXtiYnx8KGJiPSEwLGViKCkpfSxyLmZ4LnN0b3A9ZnVuY3Rpb24oKXtiYj1udWxsfSxyLmZ4LnNwZWVkcz17c2xvdzo2MDAsZmFzdDoyMDAsX2RlZmF1bHQ6NDAwfSxyLmZuLmRlbGF5PWZ1bmN0aW9uKGIsYyl7cmV0dXJuIGI9ci5meD9yLmZ4LnNwZWVkc1tiXXx8YjpiLGM9Y3x8ImZ4Iix0aGlzLnF1ZXVlKGMsZnVuY3Rpb24oYyxkKXt2YXIgZT1hLnNldFRpbWVvdXQoYyxiKTtkLnN0b3A9ZnVuY3Rpb24oKXthLmNsZWFyVGltZW91dChlKX19KX0sZnVuY3Rpb24oKXt2YXIgYT1kLmNyZWF0ZUVsZW1lbnQoImlucHV0IiksYj1kLmNyZWF0ZUVsZW1lbnQoInNlbGVjdCIpLGM9Yi5hcHBlbmRDaGlsZChkLmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpKTthLnR5cGU9ImNoZWNrYm94IixvLmNoZWNrT249IiIhPT1hLnZhbHVlLG8ub3B0U2VsZWN0ZWQ9Yy5zZWxlY3RlZCxhPWQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSxhLnZhbHVlPSJ0IixhLnR5cGU9InJhZGlvIixvLnJhZGlvVmFsdWU9InQiPT09YS52YWx1ZX0oKTt2YXIgbGIsbWI9ci5leHByLmF0dHJIYW5kbGU7ci5mbi5leHRlbmQoe2F0dHI6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gVCh0aGlzLHIuYXR0cixhLGIsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ci5yZW1vdmVBdHRyKHRoaXMsYSl9KX19KSxyLmV4dGVuZCh7YXR0cjpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZSxmPWEubm9kZVR5cGU7aWYoMyE9PWYmJjghPT1mJiYyIT09ZilyZXR1cm4idW5kZWZpbmVkIj09dHlwZW9mIGEuZ2V0QXR0cmlidXRlP3IucHJvcChhLGIsYyk6KDE9PT1mJiZyLmlzWE1MRG9jKGEpfHwoZT1yLmF0dHJIb29rc1tiLnRvTG93ZXJDYXNlKCldfHwoci5leHByLm1hdGNoLmJvb2wudGVzdChiKT9sYjp2b2lkIDApKSx2b2lkIDAhPT1jP251bGw9PT1jP3ZvaWQgci5yZW1vdmVBdHRyKGEsYik6ZSYmInNldCJpbiBlJiZ2b2lkIDAhPT0oZD1lLnNldChhLGMsYikpP2Q6KGEuc2V0QXR0cmlidXRlKGIsYysiIiksYyk6ZSYmImdldCJpbiBlJiZudWxsIT09KGQ9ZS5nZXQoYSxiKSk/ZDooZD1yLmZpbmQuYXR0cihhLGIpLApudWxsPT1kP3ZvaWQgMDpkKSl9LGF0dHJIb29rczp7dHlwZTp7c2V0OmZ1bmN0aW9uKGEsYil7aWYoIW8ucmFkaW9WYWx1ZSYmInJhZGlvIj09PWImJkIoYSwiaW5wdXQiKSl7dmFyIGM9YS52YWx1ZTtyZXR1cm4gYS5zZXRBdHRyaWJ1dGUoInR5cGUiLGIpLGMmJihhLnZhbHVlPWMpLGJ9fX19LHJlbW92ZUF0dHI6ZnVuY3Rpb24oYSxiKXt2YXIgYyxkPTAsZT1iJiZiLm1hdGNoKEwpO2lmKGUmJjE9PT1hLm5vZGVUeXBlKXdoaWxlKGM9ZVtkKytdKWEucmVtb3ZlQXR0cmlidXRlKGMpfX0pLGxiPXtzZXQ6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBiPT09ITE/ci5yZW1vdmVBdHRyKGEsYyk6YS5zZXRBdHRyaWJ1dGUoYyxjKSxjfX0sci5lYWNoKHIuZXhwci5tYXRjaC5ib29sLnNvdXJjZS5tYXRjaCgvXHcrL2cpLGZ1bmN0aW9uKGEsYil7dmFyIGM9bWJbYl18fHIuZmluZC5hdHRyO21iW2JdPWZ1bmN0aW9uKGEsYixkKXt2YXIgZSxmLGc9Yi50b0xvd2VyQ2FzZSgpO3JldHVybiBkfHwoZj1tYltnXSxtYltnXT1lLGU9bnVsbCE9YyhhLGIsZCk/ZzpudWxsLG1iW2ddPWYpLGV9fSk7dmFyIG5iPS9eKD86aW5wdXR8c2VsZWN0fHRleHRhcmVhfGJ1dHRvbikkL2ksb2I9L14oPzphfGFyZWEpJC9pO3IuZm4uZXh0ZW5kKHtwcm9wOmZ1bmN0aW9uKGEsYil7cmV0dXJuIFQodGhpcyxyLnByb3AsYSxiLGFyZ3VtZW50cy5sZW5ndGg+MSl9LHJlbW92ZVByb3A6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe2RlbGV0ZSB0aGlzW3IucHJvcEZpeFthXXx8YV19KX19KSxyLmV4dGVuZCh7cHJvcDpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZSxmPWEubm9kZVR5cGU7aWYoMyE9PWYmJjghPT1mJiYyIT09ZilyZXR1cm4gMT09PWYmJnIuaXNYTUxEb2MoYSl8fChiPXIucHJvcEZpeFtiXXx8YixlPXIucHJvcEhvb2tzW2JdKSx2b2lkIDAhPT1jP2UmJiJzZXQiaW4gZSYmdm9pZCAwIT09KGQ9ZS5zZXQoYSxjLGIpKT9kOmFbYl09YzplJiYiZ2V0ImluIGUmJm51bGwhPT0oZD1lLmdldChhLGIpKT9kOmFbYl19LHByb3BIb29rczp7dGFiSW5kZXg6e2dldDpmdW5jdGlvbihhKXt2YXIgYj1yLmZpbmQuYXR0cihhLCJ0YWJpbmRleCIpO3JldHVybiBiP3BhcnNlSW50KGIsMTApOm5iLnRlc3QoYS5ub2RlTmFtZSl8fG9iLnRlc3QoYS5ub2RlTmFtZSkmJmEuaHJlZj8wOi0xfX19LHByb3BGaXg6eyJmb3IiOiJodG1sRm9yIiwiY2xhc3MiOiJjbGFzc05hbWUifX0pLG8ub3B0U2VsZWN0ZWR8fChyLnByb3BIb29rcy5zZWxlY3RlZD17Z2V0OmZ1bmN0aW9uKGEpe3ZhciBiPWEucGFyZW50Tm9kZTtyZXR1cm4gYiYmYi5wYXJlbnROb2RlJiZiLnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCxudWxsfSxzZXQ6ZnVuY3Rpb24oYSl7dmFyIGI9YS5wYXJlbnROb2RlO2ImJihiLnNlbGVjdGVkSW5kZXgsYi5wYXJlbnROb2RlJiZiLnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCl9fSksci5lYWNoKFsidGFiSW5kZXgiLCJyZWFkT25seSIsIm1heExlbmd0aCIsImNlbGxTcGFjaW5nIiwiY2VsbFBhZGRpbmciLCJyb3dTcGFuIiwiY29sU3BhbiIsInVzZU1hcCIsImZyYW1lQm9yZGVyIiwiY29udGVudEVkaXRhYmxlIl0sZnVuY3Rpb24oKXtyLnByb3BGaXhbdGhpcy50b0xvd2VyQ2FzZSgpXT10aGlzfSk7ZnVuY3Rpb24gcGIoYSl7dmFyIGI9YS5tYXRjaChMKXx8W107cmV0dXJuIGIuam9pbigiICIpfWZ1bmN0aW9uIHFiKGEpe3JldHVybiBhLmdldEF0dHJpYnV0ZSYmYS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIifXIuZm4uZXh0ZW5kKHthZGRDbGFzczpmdW5jdGlvbihhKXt2YXIgYixjLGQsZSxmLGcsaCxpPTA7aWYoci5pc0Z1bmN0aW9uKGEpKXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oYil7cih0aGlzKS5hZGRDbGFzcyhhLmNhbGwodGhpcyxiLHFiKHRoaXMpKSl9KTtpZigic3RyaW5nIj09dHlwZW9mIGEmJmEpe2I9YS5tYXRjaChMKXx8W107d2hpbGUoYz10aGlzW2krK10paWYoZT1xYihjKSxkPTE9PT1jLm5vZGVUeXBlJiYiICIrcGIoZSkrIiAiKXtnPTA7d2hpbGUoZj1iW2crK10pZC5pbmRleE9mKCIgIitmKyIgIik8MCYmKGQrPWYrIiAiKTtoPXBiKGQpLGUhPT1oJiZjLnNldEF0dHJpYnV0ZSgiY2xhc3MiLGgpfX1yZXR1cm4gdGhpc30scmVtb3ZlQ2xhc3M6ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZixnLGgsaT0wO2lmKHIuaXNGdW5jdGlvbihhKSlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKGIpe3IodGhpcykucmVtb3ZlQ2xhc3MoYS5jYWxsKHRoaXMsYixxYih0aGlzKSkpfSk7aWYoIWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMuYXR0cigiY2xhc3MiLCIiKTtpZigic3RyaW5nIj09dHlwZW9mIGEmJmEpe2I9YS5tYXRjaChMKXx8W107d2hpbGUoYz10aGlzW2krK10paWYoZT1xYihjKSxkPTE9PT1jLm5vZGVUeXBlJiYiICIrcGIoZSkrIiAiKXtnPTA7d2hpbGUoZj1iW2crK10pd2hpbGUoZC5pbmRleE9mKCIgIitmKyIgIik+LTEpZD1kLnJlcGxhY2UoIiAiK2YrIiAiLCIgIik7aD1wYihkKSxlIT09aCYmYy5zZXRBdHRyaWJ1dGUoImNsYXNzIixoKX19cmV0dXJuIHRoaXN9LHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGEsYil7dmFyIGM9dHlwZW9mIGE7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgYiYmInN0cmluZyI9PT1jP2I/dGhpcy5hZGRDbGFzcyhhKTp0aGlzLnJlbW92ZUNsYXNzKGEpOnIuaXNGdW5jdGlvbihhKT90aGlzLmVhY2goZnVuY3Rpb24oYyl7cih0aGlzKS50b2dnbGVDbGFzcyhhLmNhbGwodGhpcyxjLHFiKHRoaXMpLGIpLGIpfSk6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGIsZCxlLGY7aWYoInN0cmluZyI9PT1jKXtkPTAsZT1yKHRoaXMpLGY9YS5tYXRjaChMKXx8W107d2hpbGUoYj1mW2QrK10pZS5oYXNDbGFzcyhiKT9lLnJlbW92ZUNsYXNzKGIpOmUuYWRkQ2xhc3MoYil9ZWxzZSB2b2lkIDAhPT1hJiYiYm9vbGVhbiIhPT1jfHwoYj1xYih0aGlzKSxiJiZXLnNldCh0aGlzLCJfX2NsYXNzTmFtZV9fIixiKSx0aGlzLnNldEF0dHJpYnV0ZSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIixifHxhPT09ITE/IiI6Vy5nZXQodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIikpfSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGEpe3ZhciBiLGMsZD0wO2I9IiAiK2ErIiAiO3doaWxlKGM9dGhpc1tkKytdKWlmKDE9PT1jLm5vZGVUeXBlJiYoIiAiK3BiKHFiKGMpKSsiICIpLmluZGV4T2YoYik+LTEpcmV0dXJuITA7cmV0dXJuITF9fSk7dmFyIHJiPS9cci9nO3IuZm4uZXh0ZW5kKHt2YWw6ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGU9dGhpc1swXTt7aWYoYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gZD1yLmlzRnVuY3Rpb24oYSksdGhpcy5lYWNoKGZ1bmN0aW9uKGMpe3ZhciBlOzE9PT10aGlzLm5vZGVUeXBlJiYoZT1kP2EuY2FsbCh0aGlzLGMscih0aGlzKS52YWwoKSk6YSxudWxsPT1lP2U9IiI6Im51bWJlciI9PXR5cGVvZiBlP2UrPSIiOkFycmF5LmlzQXJyYXkoZSkmJihlPXIubWFwKGUsZnVuY3Rpb24oYSl7cmV0dXJuIG51bGw9PWE/IiI6YSsiIn0pKSxiPXIudmFsSG9va3NbdGhpcy50eXBlXXx8ci52YWxIb29rc1t0aGlzLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCldLGImJiJzZXQiaW4gYiYmdm9pZCAwIT09Yi5zZXQodGhpcyxlLCJ2YWx1ZSIpfHwodGhpcy52YWx1ZT1lKSl9KTtpZihlKXJldHVybiBiPXIudmFsSG9va3NbZS50eXBlXXx8ci52YWxIb29rc1tlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCldLGImJiJnZXQiaW4gYiYmdm9pZCAwIT09KGM9Yi5nZXQoZSwidmFsdWUiKSk/YzooYz1lLnZhbHVlLCJzdHJpbmciPT10eXBlb2YgYz9jLnJlcGxhY2UocmIsIiIpOm51bGw9PWM/IiI6Yyl9fX0pLHIuZXh0ZW5kKHt2YWxIb29rczp7b3B0aW9uOntnZXQ6ZnVuY3Rpb24oYSl7dmFyIGI9ci5maW5kLmF0dHIoYSwidmFsdWUiKTtyZXR1cm4gbnVsbCE9Yj9iOnBiKHIudGV4dChhKSl9fSxzZWxlY3Q6e2dldDpmdW5jdGlvbihhKXt2YXIgYixjLGQsZT1hLm9wdGlvbnMsZj1hLnNlbGVjdGVkSW5kZXgsZz0ic2VsZWN0LW9uZSI9PT1hLnR5cGUsaD1nP251bGw6W10saT1nP2YrMTplLmxlbmd0aDtmb3IoZD1mPDA/aTpnP2Y6MDtkPGk7ZCsrKWlmKGM9ZVtkXSwoYy5zZWxlY3RlZHx8ZD09PWYpJiYhYy5kaXNhYmxlZCYmKCFjLnBhcmVudE5vZGUuZGlzYWJsZWR8fCFCKGMucGFyZW50Tm9kZSwib3B0Z3JvdXAiKSkpe2lmKGI9cihjKS52YWwoKSxnKXJldHVybiBiO2gucHVzaChiKX1yZXR1cm4gaH0sc2V0OmZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlPWEub3B0aW9ucyxmPXIubWFrZUFycmF5KGIpLGc9ZS5sZW5ndGg7d2hpbGUoZy0tKWQ9ZVtnXSwoZC5zZWxlY3RlZD1yLmluQXJyYXkoci52YWxIb29rcy5vcHRpb24uZ2V0KGQpLGYpPi0xKSYmKGM9ITApO3JldHVybiBjfHwoYS5zZWxlY3RlZEluZGV4PS0xKSxmfX19fSksci5lYWNoKFsicmFkaW8iLCJjaGVja2JveCJdLGZ1bmN0aW9uKCl7ci52YWxIb29rc1t0aGlzXT17c2V0OmZ1bmN0aW9uKGEsYil7aWYoQXJyYXkuaXNBcnJheShiKSlyZXR1cm4gYS5jaGVja2VkPXIuaW5BcnJheShyKGEpLnZhbCgpLGIpPi0xfX0sby5jaGVja09ufHwoci52YWxIb29rc1t0aGlzXS5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIG51bGw9PT1hLmdldEF0dHJpYnV0ZSgidmFsdWUiKT8ib24iOmEudmFsdWV9KX0pO3ZhciBzYj0vXig/OmZvY3VzaW5mb2N1c3xmb2N1c291dGJsdXIpJC87ci5leHRlbmQoci5ldmVudCx7dHJpZ2dlcjpmdW5jdGlvbihiLGMsZSxmKXt2YXIgZyxoLGksaixrLG0sbixvPVtlfHxkXSxwPWwuY2FsbChiLCJ0eXBlIik/Yi50eXBlOmIscT1sLmNhbGwoYiwibmFtZXNwYWNlIik/Yi5uYW1lc3BhY2Uuc3BsaXQoIi4iKTpbXTtpZihoPWk9ZT1lfHxkLDMhPT1lLm5vZGVUeXBlJiY4IT09ZS5ub2RlVHlwZSYmIXNiLnRlc3QocCtyLmV2ZW50LnRyaWdnZXJlZCkmJihwLmluZGV4T2YoIi4iKT4tMSYmKHE9cC5zcGxpdCgiLiIpLHA9cS5zaGlmdCgpLHEuc29ydCgpKSxrPXAuaW5kZXhPZigiOiIpPDAmJiJvbiIrcCxiPWJbci5leHBhbmRvXT9iOm5ldyByLkV2ZW50KHAsIm9iamVjdCI9PXR5cGVvZiBiJiZiKSxiLmlzVHJpZ2dlcj1mPzI6MyxiLm5hbWVzcGFjZT1xLmpvaW4oIi4iKSxiLnJuYW1lc3BhY2U9Yi5uYW1lc3BhY2U/bmV3IFJlZ0V4cCgiKF58XFwuKSIrcS5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKTpudWxsLGIucmVzdWx0PXZvaWQgMCxiLnRhcmdldHx8KGIudGFyZ2V0PWUpLGM9bnVsbD09Yz9bYl06ci5tYWtlQXJyYXkoYyxbYl0pLG49ci5ldmVudC5zcGVjaWFsW3BdfHx7fSxmfHwhbi50cmlnZ2VyfHxuLnRyaWdnZXIuYXBwbHkoZSxjKSE9PSExKSl7aWYoIWYmJiFuLm5vQnViYmxlJiYhci5pc1dpbmRvdyhlKSl7Zm9yKGo9bi5kZWxlZ2F0ZVR5cGV8fHAsc2IudGVzdChqK3ApfHwoaD1oLnBhcmVudE5vZGUpO2g7aD1oLnBhcmVudE5vZGUpby5wdXNoKGgpLGk9aDtpPT09KGUub3duZXJEb2N1bWVudHx8ZCkmJm8ucHVzaChpLmRlZmF1bHRWaWV3fHxpLnBhcmVudFdpbmRvd3x8YSl9Zz0wO3doaWxlKChoPW9bZysrXSkmJiFiLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpYi50eXBlPWc+MT9qOm4uYmluZFR5cGV8fHAsbT0oVy5nZXQoaCwiZXZlbnRzIil8fHt9KVtiLnR5cGVdJiZXLmdldChoLCJoYW5kbGUiKSxtJiZtLmFwcGx5KGgsYyksbT1rJiZoW2tdLG0mJm0uYXBwbHkmJlUoaCkmJihiLnJlc3VsdD1tLmFwcGx5KGgsYyksYi5yZXN1bHQ9PT0hMSYmYi5wcmV2ZW50RGVmYXVsdCgpKTtyZXR1cm4gYi50eXBlPXAsZnx8Yi5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8bi5fZGVmYXVsdCYmbi5fZGVmYXVsdC5hcHBseShvLnBvcCgpLGMpIT09ITF8fCFVKGUpfHxrJiZyLmlzRnVuY3Rpb24oZVtwXSkmJiFyLmlzV2luZG93KGUpJiYoaT1lW2tdLGkmJihlW2tdPW51bGwpLHIuZXZlbnQudHJpZ2dlcmVkPXAsZVtwXSgpLHIuZXZlbnQudHJpZ2dlcmVkPXZvaWQgMCxpJiYoZVtrXT1pKSksYi5yZXN1bHR9fSxzaW11bGF0ZTpmdW5jdGlvbihhLGIsYyl7dmFyIGQ9ci5leHRlbmQobmV3IHIuRXZlbnQsYyx7dHlwZTphLGlzU2ltdWxhdGVkOiEwfSk7ci5ldmVudC50cmlnZ2VyKGQsbnVsbCxiKX19KSxyLmZuLmV4dGVuZCh7dHJpZ2dlcjpmdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtyLmV2ZW50LnRyaWdnZXIoYSxiLHRoaXMpfSl9LHRyaWdnZXJIYW5kbGVyOmZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpc1swXTtpZihjKXJldHVybiByLmV2ZW50LnRyaWdnZXIoYSxiLGMsITApfX0pLHIuZWFjaCgiYmx1ciBmb2N1cyBmb2N1c2luIGZvY3Vzb3V0IHJlc2l6ZSBzY3JvbGwgY2xpY2sgZGJsY2xpY2sgbW91c2Vkb3duIG1vdXNldXAgbW91c2Vtb3ZlIG1vdXNlb3ZlciBtb3VzZW91dCBtb3VzZWVudGVyIG1vdXNlbGVhdmUgY2hhbmdlIHNlbGVjdCBzdWJtaXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBjb250ZXh0bWVudSIuc3BsaXQoIiAiKSxmdW5jdGlvbihhLGIpe3IuZm5bYl09ZnVuY3Rpb24oYSxjKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD4wP3RoaXMub24oYixudWxsLGEsYyk6dGhpcy50cmlnZ2VyKGIpfX0pLHIuZm4uZXh0ZW5kKHtob3ZlcjpmdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLm1vdXNlZW50ZXIoYSkubW91c2VsZWF2ZShifHxhKX19KSxvLmZvY3VzaW49Im9uZm9jdXNpbiJpbiBhLG8uZm9jdXNpbnx8ci5lYWNoKHtmb2N1czoiZm9jdXNpbiIsYmx1cjoiZm9jdXNvdXQifSxmdW5jdGlvbihhLGIpe3ZhciBjPWZ1bmN0aW9uKGEpe3IuZXZlbnQuc2ltdWxhdGUoYixhLnRhcmdldCxyLmV2ZW50LmZpeChhKSl9O3IuZXZlbnQuc3BlY2lhbFtiXT17c2V0dXA6ZnVuY3Rpb24oKXt2YXIgZD10aGlzLm93bmVyRG9jdW1lbnR8fHRoaXMsZT1XLmFjY2VzcyhkLGIpO2V8fGQuYWRkRXZlbnRMaXN0ZW5lcihhLGMsITApLFcuYWNjZXNzKGQsYiwoZXx8MCkrMSl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7dmFyIGQ9dGhpcy5vd25lckRvY3VtZW50fHx0aGlzLGU9Vy5hY2Nlc3MoZCxiKS0xO2U/Vy5hY2Nlc3MoZCxiLGUpOihkLnJlbW92ZUV2ZW50TGlzdGVuZXIoYSxjLCEwKSxXLnJlbW92ZShkLGIpKX19fSk7dmFyIHRiPWEubG9jYXRpb24sdWI9ci5ub3coKSx2Yj0vXD8vO3IucGFyc2VYTUw9ZnVuY3Rpb24oYil7dmFyIGM7aWYoIWJ8fCJzdHJpbmciIT10eXBlb2YgYilyZXR1cm4gbnVsbDt0cnl7Yz0obmV3IGEuRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcoYiwidGV4dC94bWwiKX1jYXRjaChkKXtjPXZvaWQgMH1yZXR1cm4gYyYmIWMuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInBhcnNlcmVycm9yIikubGVuZ3RofHxyLmVycm9yKCJJbnZhbGlkIFhNTDogIitiKSxjfTt2YXIgd2I9L1xbXF0kLyx4Yj0vXHI/XG4vZyx5Yj0vXig/OnN1Ym1pdHxidXR0b258aW1hZ2V8cmVzZXR8ZmlsZSkkL2ksemI9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8a2V5Z2VuKS9pO2Z1bmN0aW9uIEFiKGEsYixjLGQpe3ZhciBlO2lmKEFycmF5LmlzQXJyYXkoYikpci5lYWNoKGIsZnVuY3Rpb24oYixlKXtjfHx3Yi50ZXN0KGEpP2QoYSxlKTpBYihhKyJbIisoIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT1lP2I6IiIpKyJdIixlLGMsZCl9KTtlbHNlIGlmKGN8fCJvYmplY3QiIT09ci50eXBlKGIpKWQoYSxiKTtlbHNlIGZvcihlIGluIGIpQWIoYSsiWyIrZSsiXSIsYltlXSxjLGQpfXIucGFyYW09ZnVuY3Rpb24oYSxiKXt2YXIgYyxkPVtdLGU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1yLmlzRnVuY3Rpb24oYik/YigpOmI7ZFtkLmxlbmd0aF09ZW5jb2RlVVJJQ29tcG9uZW50KGEpKyI9IitlbmNvZGVVUklDb21wb25lbnQobnVsbD09Yz8iIjpjKX07aWYoQXJyYXkuaXNBcnJheShhKXx8YS5qcXVlcnkmJiFyLmlzUGxhaW5PYmplY3QoYSkpci5lYWNoKGEsZnVuY3Rpb24oKXtlKHRoaXMubmFtZSx0aGlzLnZhbHVlKX0pO2Vsc2UgZm9yKGMgaW4gYSlBYihjLGFbY10sYixlKTtyZXR1cm4gZC5qb2luKCImIil9LHIuZm4uZXh0ZW5kKHtzZXJpYWxpemU6ZnVuY3Rpb24oKXtyZXR1cm4gci5wYXJhbSh0aGlzLnNlcmlhbGl6ZUFycmF5KCkpfSxzZXJpYWxpemVBcnJheTpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcChmdW5jdGlvbigpe3ZhciBhPXIucHJvcCh0aGlzLCJlbGVtZW50cyIpO3JldHVybiBhP3IubWFrZUFycmF5KGEpOnRoaXN9KS5maWx0ZXIoZnVuY3Rpb24oKXt2YXIgYT10aGlzLnR5cGU7cmV0dXJuIHRoaXMubmFtZSYmIXIodGhpcykuaXMoIjpkaXNhYmxlZCIpJiZ6Yi50ZXN0KHRoaXMubm9kZU5hbWUpJiYheWIudGVzdChhKSYmKHRoaXMuY2hlY2tlZHx8IWphLnRlc3QoYSkpfSkubWFwKGZ1bmN0aW9uKGEsYil7dmFyIGM9cih0aGlzKS52YWwoKTtyZXR1cm4gbnVsbD09Yz9udWxsOkFycmF5LmlzQXJyYXkoYyk/ci5tYXAoYyxmdW5jdGlvbihhKXtyZXR1cm57bmFtZTpiLm5hbWUsdmFsdWU6YS5yZXBsYWNlKHhiLCJcclxuIil9fSk6e25hbWU6Yi5uYW1lLHZhbHVlOmMucmVwbGFjZSh4YiwiXHJcbiIpfX0pLmdldCgpfX0pO3ZhciBCYj0vJTIwL2csQ2I9LyMuKiQvLERiPS8oWz8mXSlfPVteJl0qLyxFYj0vXiguKj8pOlsgXHRdKihbXlxyXG5dKikkL2dtLEZiPS9eKD86YWJvdXR8YXBwfGFwcC1zdG9yYWdlfC4rLWV4dGVuc2lvbnxmaWxlfHJlc3x3aWRnZXQpOiQvLEdiPS9eKD86R0VUfEhFQUQpJC8sSGI9L15cL1wvLyxJYj17fSxKYj17fSxLYj0iKi8iLmNvbmNhdCgiKiIpLExiPWQuY3JlYXRlRWxlbWVudCgiYSIpO0xiLmhyZWY9dGIuaHJlZjtmdW5jdGlvbiBNYihhKXtyZXR1cm4gZnVuY3Rpb24oYixjKXsic3RyaW5nIiE9dHlwZW9mIGImJihjPWIsYj0iKiIpO3ZhciBkLGU9MCxmPWIudG9Mb3dlckNhc2UoKS5tYXRjaChMKXx8W107aWYoci5pc0Z1bmN0aW9uKGMpKXdoaWxlKGQ9ZltlKytdKSIrIj09PWRbMF0/KGQ9ZC5zbGljZSgxKXx8IioiLChhW2RdPWFbZF18fFtdKS51bnNoaWZ0KGMpKTooYVtkXT1hW2RdfHxbXSkucHVzaChjKX19ZnVuY3Rpb24gTmIoYSxiLGMsZCl7dmFyIGU9e30sZj1hPT09SmI7ZnVuY3Rpb24gZyhoKXt2YXIgaTtyZXR1cm4gZVtoXT0hMCxyLmVhY2goYVtoXXx8W10sZnVuY3Rpb24oYSxoKXt2YXIgaj1oKGIsYyxkKTtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGp8fGZ8fGVbal0/Zj8hKGk9aik6dm9pZCAwOihiLmRhdGFUeXBlcy51bnNoaWZ0KGopLGcoaiksITEpfSksaX1yZXR1cm4gZyhiLmRhdGFUeXBlc1swXSl8fCFlWyIqIl0mJmcoIioiKX1mdW5jdGlvbiBPYihhLGIpe3ZhciBjLGQsZT1yLmFqYXhTZXR0aW5ncy5mbGF0T3B0aW9uc3x8e307Zm9yKGMgaW4gYil2b2lkIDAhPT1iW2NdJiYoKGVbY10/YTpkfHwoZD17fSkpW2NdPWJbY10pO3JldHVybiBkJiZyLmV4dGVuZCghMCxhLGQpLGF9ZnVuY3Rpb24gUGIoYSxiLGMpe3ZhciBkLGUsZixnLGg9YS5jb250ZW50cyxpPWEuZGF0YVR5cGVzO3doaWxlKCIqIj09PWlbMF0paS5zaGlmdCgpLHZvaWQgMD09PWQmJihkPWEubWltZVR5cGV8fGIuZ2V0UmVzcG9uc2VIZWFkZXIoIkNvbnRlbnQtVHlwZSIpKTtpZihkKWZvcihlIGluIGgpaWYoaFtlXSYmaFtlXS50ZXN0KGQpKXtpLnVuc2hpZnQoZSk7YnJlYWt9aWYoaVswXWluIGMpZj1pWzBdO2Vsc2V7Zm9yKGUgaW4gYyl7aWYoIWlbMF18fGEuY29udmVydGVyc1tlKyIgIitpWzBdXSl7Zj1lO2JyZWFrfWd8fChnPWUpfWY9Znx8Z31pZihmKXJldHVybiBmIT09aVswXSYmaS51bnNoaWZ0KGYpLGNbZl19ZnVuY3Rpb24gUWIoYSxiLGMsZCl7dmFyIGUsZixnLGgsaSxqPXt9LGs9YS5kYXRhVHlwZXMuc2xpY2UoKTtpZihrWzFdKWZvcihnIGluIGEuY29udmVydGVycylqW2cudG9Mb3dlckNhc2UoKV09YS5jb252ZXJ0ZXJzW2ddO2Y9ay5zaGlmdCgpO3doaWxlKGYpaWYoYS5yZXNwb25zZUZpZWxkc1tmXSYmKGNbYS5yZXNwb25zZUZpZWxkc1tmXV09YiksIWkmJmQmJmEuZGF0YUZpbHRlciYmKGI9YS5kYXRhRmlsdGVyKGIsYS5kYXRhVHlwZSkpLGk9ZixmPWsuc2hpZnQoKSlpZigiKiI9PT1mKWY9aTtlbHNlIGlmKCIqIiE9PWkmJmkhPT1mKXtpZihnPWpbaSsiICIrZl18fGpbIiogIitmXSwhZylmb3IoZSBpbiBqKWlmKGg9ZS5zcGxpdCgiICIpLGhbMV09PT1mJiYoZz1qW2krIiAiK2hbMF1dfHxqWyIqICIraFswXV0pKXtnPT09ITA/Zz1qW2VdOmpbZV0hPT0hMCYmKGY9aFswXSxrLnVuc2hpZnQoaFsxXSkpO2JyZWFrfWlmKGchPT0hMClpZihnJiZhWyJ0aHJvd3MiXSliPWcoYik7ZWxzZSB0cnl7Yj1nKGIpfWNhdGNoKGwpe3JldHVybntzdGF0ZToicGFyc2VyZXJyb3IiLGVycm9yOmc/bDoiTm8gY29udmVyc2lvbiBmcm9tICIraSsiIHRvICIrZn19fXJldHVybntzdGF0ZToic3VjY2VzcyIsZGF0YTpifX1yLmV4dGVuZCh7YWN0aXZlOjAsbGFzdE1vZGlmaWVkOnt9LGV0YWc6e30sYWpheFNldHRpbmdzOnt1cmw6dGIuaHJlZix0eXBlOiJHRVQiLGlzTG9jYWw6RmIudGVzdCh0Yi5wcm90b2NvbCksZ2xvYmFsOiEwLHByb2Nlc3NEYXRhOiEwLGFzeW5jOiEwLGNvbnRlbnRUeXBlOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7IGNoYXJzZXQ9VVRGLTgiLGFjY2VwdHM6eyIqIjpLYix0ZXh0OiJ0ZXh0L3BsYWluIixodG1sOiJ0ZXh0L2h0bWwiLHhtbDoiYXBwbGljYXRpb24veG1sLCB0ZXh0L3htbCIsanNvbjoiYXBwbGljYXRpb24vanNvbiwgdGV4dC9qYXZhc2NyaXB0In0sY29udGVudHM6e3htbDovXGJ4bWxcYi8saHRtbDovXGJodG1sLyxqc29uOi9cYmpzb25cYi99LHJlc3BvbnNlRmllbGRzOnt4bWw6InJlc3BvbnNlWE1MIix0ZXh0OiJyZXNwb25zZVRleHQiLGpzb246InJlc3BvbnNlSlNPTiJ9LGNvbnZlcnRlcnM6eyIqIHRleHQiOlN0cmluZywidGV4dCBodG1sIjohMCwidGV4dCBqc29uIjpKU09OLnBhcnNlLCJ0ZXh0IHhtbCI6ci5wYXJzZVhNTH0sZmxhdE9wdGlvbnM6e3VybDohMCxjb250ZXh0OiEwfX0sYWpheFNldHVwOmZ1bmN0aW9uKGEsYil7cmV0dXJuIGI/T2IoT2IoYSxyLmFqYXhTZXR0aW5ncyksYik6T2Ioci5hamF4U2V0dGluZ3MsYSl9LGFqYXhQcmVmaWx0ZXI6TWIoSWIpLGFqYXhUcmFuc3BvcnQ6TWIoSmIpLGFqYXg6ZnVuY3Rpb24oYixjKXsib2JqZWN0Ij09dHlwZW9mIGImJihjPWIsYj12b2lkIDApLGM9Y3x8e307dmFyIGUsZixnLGgsaSxqLGssbCxtLG4sbz1yLmFqYXhTZXR1cCh7fSxjKSxwPW8uY29udGV4dHx8byxxPW8uY29udGV4dCYmKHAubm9kZVR5cGV8fHAuanF1ZXJ5KT9yKHApOnIuZXZlbnQscz1yLkRlZmVycmVkKCksdD1yLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSx1PW8uc3RhdHVzQ29kZXx8e30sdj17fSx3PXt9LHg9ImNhbmNlbGVkIix5PXtyZWFkeVN0YXRlOjAsZ2V0UmVzcG9uc2VIZWFkZXI6ZnVuY3Rpb24oYSl7dmFyIGI7aWYoayl7aWYoIWgpe2g9e307d2hpbGUoYj1FYi5leGVjKGcpKWhbYlsxXS50b0xvd2VyQ2FzZSgpXT1iWzJdfWI9aFthLnRvTG93ZXJDYXNlKCldfXJldHVybiBudWxsPT1iP251bGw6Yn0sZ2V0QWxsUmVzcG9uc2VIZWFkZXJzOmZ1bmN0aW9uKCl7cmV0dXJuIGs/ZzpudWxsfSxzZXRSZXF1ZXN0SGVhZGVyOmZ1bmN0aW9uKGEsYil7cmV0dXJuIG51bGw9PWsmJihhPXdbYS50b0xvd2VyQ2FzZSgpXT13W2EudG9Mb3dlckNhc2UoKV18fGEsdlthXT1iKSx0aGlzfSxvdmVycmlkZU1pbWVUeXBlOmZ1bmN0aW9uKGEpe3JldHVybiBudWxsPT1rJiYoby5taW1lVHlwZT1hKSx0aGlzfSxzdGF0dXNDb2RlOmZ1bmN0aW9uKGEpe3ZhciBiO2lmKGEpaWYoayl5LmFsd2F5cyhhW3kuc3RhdHVzXSk7ZWxzZSBmb3IoYiBpbiBhKXVbYl09W3VbYl0sYVtiXV07cmV0dXJuIHRoaXN9LGFib3J0OmZ1bmN0aW9uKGEpe3ZhciBiPWF8fHg7cmV0dXJuIGUmJmUuYWJvcnQoYiksQSgwLGIpLHRoaXN9fTtpZihzLnByb21pc2UoeSksby51cmw9KChifHxvLnVybHx8dGIuaHJlZikrIiIpLnJlcGxhY2UoSGIsdGIucHJvdG9jb2wrIi8vIiksby50eXBlPWMubWV0aG9kfHxjLnR5cGV8fG8ubWV0aG9kfHxvLnR5cGUsby5kYXRhVHlwZXM9KG8uZGF0YVR5cGV8fCIqIikudG9Mb3dlckNhc2UoKS5tYXRjaChMKXx8WyIiXSxudWxsPT1vLmNyb3NzRG9tYWluKXtqPWQuY3JlYXRlRWxlbWVudCgiYSIpO3RyeXtqLmhyZWY9by51cmwsai5ocmVmPWouaHJlZixvLmNyb3NzRG9tYWluPUxiLnByb3RvY29sKyIvLyIrTGIuaG9zdCE9ai5wcm90b2NvbCsiLy8iK2ouaG9zdH1jYXRjaCh6KXtvLmNyb3NzRG9tYWluPSEwfX1pZihvLmRhdGEmJm8ucHJvY2Vzc0RhdGEmJiJzdHJpbmciIT10eXBlb2Ygby5kYXRhJiYoby5kYXRhPXIucGFyYW0oby5kYXRhLG8udHJhZGl0aW9uYWwpKSxOYihJYixvLGMseSksaylyZXR1cm4geTtsPXIuZXZlbnQmJm8uZ2xvYmFsLGwmJjA9PT1yLmFjdGl2ZSsrJiZyLmV2ZW50LnRyaWdnZXIoImFqYXhTdGFydCIpLG8udHlwZT1vLnR5cGUudG9VcHBlckNhc2UoKSxvLmhhc0NvbnRlbnQ9IUdiLnRlc3Qoby50eXBlKSxmPW8udXJsLnJlcGxhY2UoQ2IsIiIpLG8uaGFzQ29udGVudD9vLmRhdGEmJm8ucHJvY2Vzc0RhdGEmJjA9PT0oby5jb250ZW50VHlwZXx8IiIpLmluZGV4T2YoImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpJiYoby5kYXRhPW8uZGF0YS5yZXBsYWNlKEJiLCIrIikpOihuPW8udXJsLnNsaWNlKGYubGVuZ3RoKSxvLmRhdGEmJihmKz0odmIudGVzdChmKT8iJiI6Ij8iKStvLmRhdGEsZGVsZXRlIG8uZGF0YSksby5jYWNoZT09PSExJiYoZj1mLnJlcGxhY2UoRGIsIiQxIiksbj0odmIudGVzdChmKT8iJiI6Ij8iKSsiXz0iK3ViKysgK24pLG8udXJsPWYrbiksby5pZk1vZGlmaWVkJiYoci5sYXN0TW9kaWZpZWRbZl0mJnkuc2V0UmVxdWVzdEhlYWRlcigiSWYtTW9kaWZpZWQtU2luY2UiLHIubGFzdE1vZGlmaWVkW2ZdKSxyLmV0YWdbZl0mJnkuc2V0UmVxdWVzdEhlYWRlcigiSWYtTm9uZS1NYXRjaCIsci5ldGFnW2ZdKSksKG8uZGF0YSYmby5oYXNDb250ZW50JiZvLmNvbnRlbnRUeXBlIT09ITF8fGMuY29udGVudFR5cGUpJiZ5LnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtVHlwZSIsby5jb250ZW50VHlwZSkseS5zZXRSZXF1ZXN0SGVhZGVyKCJBY2NlcHQiLG8uZGF0YVR5cGVzWzBdJiZvLmFjY2VwdHNbby5kYXRhVHlwZXNbMF1dP28uYWNjZXB0c1tvLmRhdGFUeXBlc1swXV0rKCIqIiE9PW8uZGF0YVR5cGVzWzBdPyIsICIrS2IrIjsgcT0wLjAxIjoiIik6by5hY2NlcHRzWyIqIl0pO2ZvcihtIGluIG8uaGVhZGVycyl5LnNldFJlcXVlc3RIZWFkZXIobSxvLmhlYWRlcnNbbV0pO2lmKG8uYmVmb3JlU2VuZCYmKG8uYmVmb3JlU2VuZC5jYWxsKHAseSxvKT09PSExfHxrKSlyZXR1cm4geS5hYm9ydCgpO2lmKHg9ImFib3J0Iix0LmFkZChvLmNvbXBsZXRlKSx5LmRvbmUoby5zdWNjZXNzKSx5LmZhaWwoby5lcnJvciksZT1OYihKYixvLGMseSkpe2lmKHkucmVhZHlTdGF0ZT0xLGwmJnEudHJpZ2dlcigiYWpheFNlbmQiLFt5LG9dKSxrKXJldHVybiB5O28uYXN5bmMmJm8udGltZW91dD4wJiYoaT1hLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt5LmFib3J0KCJ0aW1lb3V0Iil9LG8udGltZW91dCkpO3RyeXtrPSExLGUuc2VuZCh2LEEpfWNhdGNoKHope2lmKGspdGhyb3cgejtBKC0xLHopfX1lbHNlIEEoLTEsIk5vIFRyYW5zcG9ydCIpO2Z1bmN0aW9uIEEoYixjLGQsaCl7dmFyIGosbSxuLHYsdyx4PWM7a3x8KGs9ITAsaSYmYS5jbGVhclRpbWVvdXQoaSksZT12b2lkIDAsZz1ofHwiIix5LnJlYWR5U3RhdGU9Yj4wPzQ6MCxqPWI+PTIwMCYmYjwzMDB8fDMwND09PWIsZCYmKHY9UGIobyx5LGQpKSx2PVFiKG8sdix5LGopLGo/KG8uaWZNb2RpZmllZCYmKHc9eS5nZXRSZXNwb25zZUhlYWRlcigiTGFzdC1Nb2RpZmllZCIpLHcmJihyLmxhc3RNb2RpZmllZFtmXT13KSx3PXkuZ2V0UmVzcG9uc2VIZWFkZXIoImV0YWciKSx3JiYoci5ldGFnW2ZdPXcpKSwyMDQ9PT1ifHwiSEVBRCI9PT1vLnR5cGU/eD0ibm9jb250ZW50IjozMDQ9PT1iP3g9Im5vdG1vZGlmaWVkIjooeD12LnN0YXRlLG09di5kYXRhLG49di5lcnJvcixqPSFuKSk6KG49eCwhYiYmeHx8KHg9ImVycm9yIixiPDAmJihiPTApKSkseS5zdGF0dXM9Yix5LnN0YXR1c1RleHQ9KGN8fHgpKyIiLGo/cy5yZXNvbHZlV2l0aChwLFttLHgseV0pOnMucmVqZWN0V2l0aChwLFt5LHgsbl0pLHkuc3RhdHVzQ29kZSh1KSx1PXZvaWQgMCxsJiZxLnRyaWdnZXIoaj8iYWpheFN1Y2Nlc3MiOiJhamF4RXJyb3IiLFt5LG8saj9tOm5dKSx0LmZpcmVXaXRoKHAsW3kseF0pLGwmJihxLnRyaWdnZXIoImFqYXhDb21wbGV0ZSIsW3ksb10pLC0tci5hY3RpdmV8fHIuZXZlbnQudHJpZ2dlcigiYWpheFN0b3AiKSkpfXJldHVybiB5fSxnZXRKU09OOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gci5nZXQoYSxiLGMsImpzb24iKX0sZ2V0U2NyaXB0OmZ1bmN0aW9uKGEsYil7cmV0dXJuIHIuZ2V0KGEsdm9pZCAwLGIsInNjcmlwdCIpfX0pLHIuZWFjaChbImdldCIsInBvc3QiXSxmdW5jdGlvbihhLGIpe3JbYl09ZnVuY3Rpb24oYSxjLGQsZSl7cmV0dXJuIHIuaXNGdW5jdGlvbihjKSYmKGU9ZXx8ZCxkPWMsYz12b2lkIDApLHIuYWpheChyLmV4dGVuZCh7dXJsOmEsdHlwZTpiLGRhdGFUeXBlOmUsZGF0YTpjLHN1Y2Nlc3M6ZH0sci5pc1BsYWluT2JqZWN0KGEpJiZhKSl9fSksci5fZXZhbFVybD1mdW5jdGlvbihhKXtyZXR1cm4gci5hamF4KHt1cmw6YSx0eXBlOiJHRVQiLGRhdGFUeXBlOiJzY3JpcHQiLGNhY2hlOiEwLGFzeW5jOiExLGdsb2JhbDohMSwidGhyb3dzIjohMH0pfSxyLmZuLmV4dGVuZCh7d3JhcEFsbDpmdW5jdGlvbihhKXt2YXIgYjtyZXR1cm4gdGhpc1swXSYmKHIuaXNGdW5jdGlvbihhKSYmKGE9YS5jYWxsKHRoaXNbMF0pKSxiPXIoYSx0aGlzWzBdLm93bmVyRG9jdW1lbnQpLmVxKDApLmNsb25lKCEwKSx0aGlzWzBdLnBhcmVudE5vZGUmJmIuaW5zZXJ0QmVmb3JlKHRoaXNbMF0pLGIubWFwKGZ1bmN0aW9uKCl7dmFyIGE9dGhpczt3aGlsZShhLmZpcnN0RWxlbWVudENoaWxkKWE9YS5maXJzdEVsZW1lbnRDaGlsZDtyZXR1cm4gYX0pLmFwcGVuZCh0aGlzKSksdGhpc30sd3JhcElubmVyOmZ1bmN0aW9uKGEpe3JldHVybiByLmlzRnVuY3Rpb24oYSk/dGhpcy5lYWNoKGZ1bmN0aW9uKGIpe3IodGhpcykud3JhcElubmVyKGEuY2FsbCh0aGlzLGIpKX0pOnRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBiPXIodGhpcyksYz1iLmNvbnRlbnRzKCk7Yy5sZW5ndGg/Yy53cmFwQWxsKGEpOmIuYXBwZW5kKGEpfSl9LHdyYXA6ZnVuY3Rpb24oYSl7dmFyIGI9ci5pc0Z1bmN0aW9uKGEpO3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oYyl7cih0aGlzKS53cmFwQWxsKGI/YS5jYWxsKHRoaXMsYyk6YSl9KX0sdW53cmFwOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnBhcmVudChhKS5ub3QoImJvZHkiKS5lYWNoKGZ1bmN0aW9uKCl7cih0aGlzKS5yZXBsYWNlV2l0aCh0aGlzLmNoaWxkTm9kZXMpfSksdGhpc319KSxyLmV4cHIucHNldWRvcy5oaWRkZW49ZnVuY3Rpb24oYSl7cmV0dXJuIXIuZXhwci5wc2V1ZG9zLnZpc2libGUoYSl9LHIuZXhwci5wc2V1ZG9zLnZpc2libGU9ZnVuY3Rpb24oYSl7cmV0dXJuISEoYS5vZmZzZXRXaWR0aHx8YS5vZmZzZXRIZWlnaHR8fGEuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgpfSxyLmFqYXhTZXR0aW5ncy54aHI9ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG5ldyBhLlhNTEh0dHBSZXF1ZXN0fWNhdGNoKGIpe319O3ZhciBSYj17MDoyMDAsMTIyMzoyMDR9LFNiPXIuYWpheFNldHRpbmdzLnhocigpO28uY29ycz0hIVNiJiYid2l0aENyZWRlbnRpYWxzImluIFNiLG8uYWpheD1TYj0hIVNiLHIuYWpheFRyYW5zcG9ydChmdW5jdGlvbihiKXt2YXIgYyxkO2lmKG8uY29yc3x8U2ImJiFiLmNyb3NzRG9tYWluKXJldHVybntzZW5kOmZ1bmN0aW9uKGUsZil7dmFyIGcsaD1iLnhocigpO2lmKGgub3BlbihiLnR5cGUsYi51cmwsYi5hc3luYyxiLnVzZXJuYW1lLGIucGFzc3dvcmQpLGIueGhyRmllbGRzKWZvcihnIGluIGIueGhyRmllbGRzKWhbZ109Yi54aHJGaWVsZHNbZ107Yi5taW1lVHlwZSYmaC5vdmVycmlkZU1pbWVUeXBlJiZoLm92ZXJyaWRlTWltZVR5cGUoYi5taW1lVHlwZSksYi5jcm9zc0RvbWFpbnx8ZVsiWC1SZXF1ZXN0ZWQtV2l0aCJdfHwoZVsiWC1SZXF1ZXN0ZWQtV2l0aCJdPSJYTUxIdHRwUmVxdWVzdCIpO2ZvcihnIGluIGUpaC5zZXRSZXF1ZXN0SGVhZGVyKGcsZVtnXSk7Yz1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oKXtjJiYoYz1kPWgub25sb2FkPWgub25lcnJvcj1oLm9uYWJvcnQ9aC5vbnJlYWR5c3RhdGVjaGFuZ2U9bnVsbCwiYWJvcnQiPT09YT9oLmFib3J0KCk6ImVycm9yIj09PWE/Im51bWJlciIhPXR5cGVvZiBoLnN0YXR1cz9mKDAsImVycm9yIik6ZihoLnN0YXR1cyxoLnN0YXR1c1RleHQpOmYoUmJbaC5zdGF0dXNdfHxoLnN0YXR1cyxoLnN0YXR1c1RleHQsInRleHQiIT09KGgucmVzcG9uc2VUeXBlfHwidGV4dCIpfHwic3RyaW5nIiE9dHlwZW9mIGgucmVzcG9uc2VUZXh0P3tiaW5hcnk6aC5yZXNwb25zZX06e3RleHQ6aC5yZXNwb25zZVRleHR9LGguZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCkpKX19LGgub25sb2FkPWMoKSxkPWgub25lcnJvcj1jKCJlcnJvciIpLHZvaWQgMCE9PWgub25hYm9ydD9oLm9uYWJvcnQ9ZDpoLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PT1oLnJlYWR5U3RhdGUmJmEuc2V0VGltZW91dChmdW5jdGlvbigpe2MmJmQoKX0pfSxjPWMoImFib3J0Iik7dHJ5e2guc2VuZChiLmhhc0NvbnRlbnQmJmIuZGF0YXx8bnVsbCl9Y2F0Y2goaSl7aWYoYyl0aHJvdyBpfX0sYWJvcnQ6ZnVuY3Rpb24oKXtjJiZjKCl9fX0pLHIuYWpheFByZWZpbHRlcihmdW5jdGlvbihhKXthLmNyb3NzRG9tYWluJiYoYS5jb250ZW50cy5zY3JpcHQ9ITEpfSksci5hamF4U2V0dXAoe2FjY2VwdHM6e3NjcmlwdDoidGV4dC9qYXZhc2NyaXB0LCBhcHBsaWNhdGlvbi9qYXZhc2NyaXB0LCBhcHBsaWNhdGlvbi9lY21hc2NyaXB0LCBhcHBsaWNhdGlvbi94LWVjbWFzY3JpcHQifSxjb250ZW50czp7c2NyaXB0Oi9cYig/OmphdmF8ZWNtYSlzY3JpcHRcYi99LGNvbnZlcnRlcnM6eyJ0ZXh0IHNjcmlwdCI6ZnVuY3Rpb24oYSl7cmV0dXJuIHIuZ2xvYmFsRXZhbChhKSxhfX19KSxyLmFqYXhQcmVmaWx0ZXIoInNjcmlwdCIsZnVuY3Rpb24oYSl7dm9pZCAwPT09YS5jYWNoZSYmKGEuY2FjaGU9ITEpLGEuY3Jvc3NEb21haW4mJihhLnR5cGU9IkdFVCIpfSksci5hamF4VHJhbnNwb3J0KCJzY3JpcHQiLGZ1bmN0aW9uKGEpe2lmKGEuY3Jvc3NEb21haW4pe3ZhciBiLGM7cmV0dXJue3NlbmQ6ZnVuY3Rpb24oZSxmKXtiPXIoIjxzY3JpcHQ+IikucHJvcCh7Y2hhcnNldDphLnNjcmlwdENoYXJzZXQsc3JjOmEudXJsfSkub24oImxvYWQgZXJyb3IiLGM9ZnVuY3Rpb24oYSl7Yi5yZW1vdmUoKSxjPW51bGwsYSYmZigiZXJyb3IiPT09YS50eXBlPzQwNDoyMDAsYS50eXBlKX0pLGQuaGVhZC5hcHBlbmRDaGlsZChiWzBdKX0sYWJvcnQ6ZnVuY3Rpb24oKXtjJiZjKCl9fX19KTt2YXIgVGI9W10sVWI9Lyg9KVw/KD89JnwkKXxcP1w/LztyLmFqYXhTZXR1cCh7anNvbnA6ImNhbGxiYWNrIixqc29ucENhbGxiYWNrOmZ1bmN0aW9uKCl7dmFyIGE9VGIucG9wKCl8fHIuZXhwYW5kbysiXyIrdWIrKztyZXR1cm4gdGhpc1thXT0hMCxhfX0pLHIuYWpheFByZWZpbHRlcigianNvbiBqc29ucCIsZnVuY3Rpb24oYixjLGQpe3ZhciBlLGYsZyxoPWIuanNvbnAhPT0hMSYmKFViLnRlc3QoYi51cmwpPyJ1cmwiOiJzdHJpbmciPT10eXBlb2YgYi5kYXRhJiYwPT09KGIuY29udGVudFR5cGV8fCIiKS5pbmRleE9mKCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKSYmVWIudGVzdChiLmRhdGEpJiYiZGF0YSIpO2lmKGh8fCJqc29ucCI9PT1iLmRhdGFUeXBlc1swXSlyZXR1cm4gZT1iLmpzb25wQ2FsbGJhY2s9ci5pc0Z1bmN0aW9uKGIuanNvbnBDYWxsYmFjayk/Yi5qc29ucENhbGxiYWNrKCk6Yi5qc29ucENhbGxiYWNrLGg/YltoXT1iW2hdLnJlcGxhY2UoVWIsIiQxIitlKTpiLmpzb25wIT09ITEmJihiLnVybCs9KHZiLnRlc3QoYi51cmwpPyImIjoiPyIpK2IuanNvbnArIj0iK2UpLGIuY29udmVydGVyc1sic2NyaXB0IGpzb24iXT1mdW5jdGlvbigpe3JldHVybiBnfHxyLmVycm9yKGUrIiB3YXMgbm90IGNhbGxlZCIpLGdbMF19LGIuZGF0YVR5cGVzWzBdPSJqc29uIixmPWFbZV0sYVtlXT1mdW5jdGlvbigpe2c9YXJndW1lbnRzfSxkLmFsd2F5cyhmdW5jdGlvbigpe3ZvaWQgMD09PWY/cihhKS5yZW1vdmVQcm9wKGUpOmFbZV09ZixiW2VdJiYoYi5qc29ucENhbGxiYWNrPWMuanNvbnBDYWxsYmFjayxUYi5wdXNoKGUpKSxnJiZyLmlzRnVuY3Rpb24oZikmJmYoZ1swXSksZz1mPXZvaWQgMH0pLCJzY3JpcHQifSksby5jcmVhdGVIVE1MRG9jdW1lbnQ9ZnVuY3Rpb24oKXt2YXIgYT1kLmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVudCgiIikuYm9keTtyZXR1cm4gYS5pbm5lckhUTUw9Ijxmb3JtPjwvZm9ybT48Zm9ybT48L2Zvcm0+IiwyPT09YS5jaGlsZE5vZGVzLmxlbmd0aH0oKSxyLnBhcnNlSFRNTD1mdW5jdGlvbihhLGIsYyl7aWYoInN0cmluZyIhPXR5cGVvZiBhKXJldHVybltdOyJib29sZWFuIj09dHlwZW9mIGImJihjPWIsYj0hMSk7dmFyIGUsZixnO3JldHVybiBifHwoby5jcmVhdGVIVE1MRG9jdW1lbnQ/KGI9ZC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpLGU9Yi5jcmVhdGVFbGVtZW50KCJiYXNlIiksZS5ocmVmPWQubG9jYXRpb24uaHJlZixiLmhlYWQuYXBwZW5kQ2hpbGQoZSkpOmI9ZCksZj1DLmV4ZWMoYSksZz0hYyYmW10sZj9bYi5jcmVhdGVFbGVtZW50KGZbMV0pXTooZj1xYShbYV0sYixnKSxnJiZnLmxlbmd0aCYmcihnKS5yZW1vdmUoKSxyLm1lcmdlKFtdLGYuY2hpbGROb2RlcykpfSxyLmZuLmxvYWQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZixnPXRoaXMsaD1hLmluZGV4T2YoIiAiKTtyZXR1cm4gaD4tMSYmKGQ9cGIoYS5zbGljZShoKSksYT1hLnNsaWNlKDAsaCkpLHIuaXNGdW5jdGlvbihiKT8oYz1iLGI9dm9pZCAwKTpiJiYib2JqZWN0Ij09dHlwZW9mIGImJihlPSJQT1NUIiksZy5sZW5ndGg+MCYmci5hamF4KHt1cmw6YSx0eXBlOmV8fCJHRVQiLGRhdGFUeXBlOiJodG1sIixkYXRhOmJ9KS5kb25lKGZ1bmN0aW9uKGEpe2Y9YXJndW1lbnRzLGcuaHRtbChkP3IoIjxkaXY+IikuYXBwZW5kKHIucGFyc2VIVE1MKGEpKS5maW5kKGQpOmEpfSkuYWx3YXlzKGMmJmZ1bmN0aW9uKGEsYil7Zy5lYWNoKGZ1bmN0aW9uKCl7Yy5hcHBseSh0aGlzLGZ8fFthLnJlc3BvbnNlVGV4dCxiLGFdKX0pfSksdGhpc30sci5lYWNoKFsiYWpheFN0YXJ0IiwiYWpheFN0b3AiLCJhamF4Q29tcGxldGUiLCJhamF4RXJyb3IiLCJhamF4U3VjY2VzcyIsImFqYXhTZW5kIl0sZnVuY3Rpb24oYSxiKXtyLmZuW2JdPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm9uKGIsYSl9fSksci5leHByLnBzZXVkb3MuYW5pbWF0ZWQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHIuZ3JlcChyLnRpbWVycyxmdW5jdGlvbihiKXtyZXR1cm4gYT09PWIuZWxlbX0pLmxlbmd0aH0sci5vZmZzZXQ9e3NldE9mZnNldDpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZSxmLGcsaCxpLGosaz1yLmNzcyhhLCJwb3NpdGlvbiIpLGw9cihhKSxtPXt9OyJzdGF0aWMiPT09ayYmKGEuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIiksaD1sLm9mZnNldCgpLGY9ci5jc3MoYSwidG9wIiksaT1yLmNzcyhhLCJsZWZ0Iiksaj0oImFic29sdXRlIj09PWt8fCJmaXhlZCI9PT1rKSYmKGYraSkuaW5kZXhPZigiYXV0byIpPi0xLGo/KGQ9bC5wb3NpdGlvbigpLGc9ZC50b3AsZT1kLmxlZnQpOihnPXBhcnNlRmxvYXQoZil8fDAsZT1wYXJzZUZsb2F0KGkpfHwwKSxyLmlzRnVuY3Rpb24oYikmJihiPWIuY2FsbChhLGMsci5leHRlbmQoe30saCkpKSxudWxsIT1iLnRvcCYmKG0udG9wPWIudG9wLWgudG9wK2cpLG51bGwhPWIubGVmdCYmKG0ubGVmdD1iLmxlZnQtaC5sZWZ0K2UpLCJ1c2luZyJpbiBiP2IudXNpbmcuY2FsbChhLG0pOmwuY3NzKG0pfX0sci5mbi5leHRlbmQoe29mZnNldDpmdW5jdGlvbihhKXtpZihhcmd1bWVudHMubGVuZ3RoKXJldHVybiB2b2lkIDA9PT1hP3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKGIpe3Iub2Zmc2V0LnNldE9mZnNldCh0aGlzLGEsYil9KTt2YXIgYixjLGQsZSxmPXRoaXNbMF07aWYoZilyZXR1cm4gZi5nZXRDbGllbnRSZWN0cygpLmxlbmd0aD8oZD1mLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGI9Zi5vd25lckRvY3VtZW50LGM9Yi5kb2N1bWVudEVsZW1lbnQsZT1iLmRlZmF1bHRWaWV3LHt0b3A6ZC50b3ArZS5wYWdlWU9mZnNldC1jLmNsaWVudFRvcCxsZWZ0OmQubGVmdCtlLnBhZ2VYT2Zmc2V0LWMuY2xpZW50TGVmdH0pOnt0b3A6MCxsZWZ0OjB9fSxwb3NpdGlvbjpmdW5jdGlvbigpe2lmKHRoaXNbMF0pe3ZhciBhLGIsYz10aGlzWzBdLGQ9e3RvcDowLGxlZnQ6MH07cmV0dXJuImZpeGVkIj09PXIuY3NzKGMsInBvc2l0aW9uIik/Yj1jLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOihhPXRoaXMub2Zmc2V0UGFyZW50KCksYj10aGlzLm9mZnNldCgpLEIoYVswXSwiaHRtbCIpfHwoZD1hLm9mZnNldCgpKSxkPXt0b3A6ZC50b3Arci5jc3MoYVswXSwiYm9yZGVyVG9wV2lkdGgiLCEwKSxsZWZ0OmQubGVmdCtyLmNzcyhhWzBdLCJib3JkZXJMZWZ0V2lkdGgiLCEwKX0pLHt0b3A6Yi50b3AtZC50b3Atci5jc3MoYywibWFyZ2luVG9wIiwhMCksbGVmdDpiLmxlZnQtZC5sZWZ0LXIuY3NzKGMsIm1hcmdpbkxlZnQiLCEwKX19fSxvZmZzZXRQYXJlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXt2YXIgYT10aGlzLm9mZnNldFBhcmVudDt3aGlsZShhJiYic3RhdGljIj09PXIuY3NzKGEsInBvc2l0aW9uIikpYT1hLm9mZnNldFBhcmVudDtyZXR1cm4gYXx8cmF9KX19KSxyLmVhY2goe3Njcm9sbExlZnQ6InBhZ2VYT2Zmc2V0IixzY3JvbGxUb3A6InBhZ2VZT2Zmc2V0In0sZnVuY3Rpb24oYSxiKXt2YXIgYz0icGFnZVlPZmZzZXQiPT09YjtyLmZuW2FdPWZ1bmN0aW9uKGQpe3JldHVybiBUKHRoaXMsZnVuY3Rpb24oYSxkLGUpe3ZhciBmO3JldHVybiByLmlzV2luZG93KGEpP2Y9YTo5PT09YS5ub2RlVHlwZSYmKGY9YS5kZWZhdWx0Vmlldyksdm9pZCAwPT09ZT9mP2ZbYl06YVtkXTp2b2lkKGY/Zi5zY3JvbGxUbyhjP2YucGFnZVhPZmZzZXQ6ZSxjP2U6Zi5wYWdlWU9mZnNldCk6YVtkXT1lKX0sYSxkLGFyZ3VtZW50cy5sZW5ndGgpfX0pLHIuZWFjaChbInRvcCIsImxlZnQiXSxmdW5jdGlvbihhLGIpe3IuY3NzSG9va3NbYl09UGEoby5waXhlbFBvc2l0aW9uLGZ1bmN0aW9uKGEsYyl7aWYoYylyZXR1cm4gYz1PYShhLGIpLE1hLnRlc3QoYyk/cihhKS5wb3NpdGlvbigpW2JdKyJweCI6Y30pfSksci5lYWNoKHtIZWlnaHQ6ImhlaWdodCIsV2lkdGg6IndpZHRoIn0sZnVuY3Rpb24oYSxiKXtyLmVhY2goe3BhZGRpbmc6ImlubmVyIithLGNvbnRlbnQ6YiwiIjoib3V0ZXIiK2F9LGZ1bmN0aW9uKGMsZCl7ci5mbltkXT1mdW5jdGlvbihlLGYpe3ZhciBnPWFyZ3VtZW50cy5sZW5ndGgmJihjfHwiYm9vbGVhbiIhPXR5cGVvZiBlKSxoPWN8fChlPT09ITB8fGY9PT0hMD8ibWFyZ2luIjoiYm9yZGVyIik7cmV0dXJuIFQodGhpcyxmdW5jdGlvbihiLGMsZSl7dmFyIGY7cmV0dXJuIHIuaXNXaW5kb3coYik/MD09PWQuaW5kZXhPZigib3V0ZXIiKT9iWyJpbm5lciIrYV06Yi5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnRbImNsaWVudCIrYV06OT09PWIubm9kZVR5cGU/KGY9Yi5kb2N1bWVudEVsZW1lbnQsTWF0aC5tYXgoYi5ib2R5WyJzY3JvbGwiK2FdLGZbInNjcm9sbCIrYV0sYi5ib2R5WyJvZmZzZXQiK2FdLGZbIm9mZnNldCIrYV0sZlsiY2xpZW50IithXSkpOnZvaWQgMD09PWU/ci5jc3MoYixjLGgpOnIuc3R5bGUoYixjLGUsaCl9LGIsZz9lOnZvaWQgMCxnKX19KX0pLHIuZm4uZXh0ZW5kKHtiaW5kOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gdGhpcy5vbihhLG51bGwsYixjKX0sdW5iaW5kOmZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMub2ZmKGEsbnVsbCxiKX0sZGVsZWdhdGU6ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIHRoaXMub24oYixhLGMsZCl9LHVuZGVsZWdhdGU6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiAxPT09YXJndW1lbnRzLmxlbmd0aD90aGlzLm9mZihhLCIqKiIpOnRoaXMub2ZmKGIsYXx8IioqIixjKX19KSxyLmhvbGRSZWFkeT1mdW5jdGlvbihhKXthP3IucmVhZHlXYWl0Kys6ci5yZWFkeSghMCl9LHIuaXNBcnJheT1BcnJheS5pc0FycmF5LHIucGFyc2VKU09OPUpTT04ucGFyc2Usci5ub2RlTmFtZT1CLCJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQmJmRlZmluZSgianF1ZXJ5IixbXSxmdW5jdGlvbigpe3JldHVybiByfSk7dmFyIFZiPWEualF1ZXJ5LFdiPWEuJDtyZXR1cm4gci5ub0NvbmZsaWN0PWZ1bmN0aW9uKGIpe3JldHVybiBhLiQ9PT1yJiYoYS4kPVdiKSxiJiZhLmpRdWVyeT09PXImJihhLmpRdWVyeT1WYikscn0sYnx8KGEualF1ZXJ5PWEuJD1yKSxyfSk7Cg=="}},"time_used":14632,"timings":{"blocked":12106,"dns":0,"connect":0,"send":0,"wait":1220,"receive":1306,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/js/bootstrap.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.288Z","timestamp":1785143908288,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /js/bootstrap.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:41 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"c584-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 13085\r\nKeep-Alive: timeout=5, max=99\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":50564,"size_decoded":13454,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (50277)","md5":"46b549bdc90920f18a911f186b9dd75c","sha1":"3c639c4af5c036a6ee364215bd12c0b12937827d","sha256":"1886bc561dec7c44a7541d82377ad81a40ff32496f32ad259884f0790c44d6a5","sha512":"52748c7290675d5f033f334d4903e54972c1c9475378c768710e4dcc96c01533bc2ea2876cfe0ffe0bdcdefb7560dc476630eae4c9c3e26e75b8401feba3f1cd","ssdeep":"1536:3ViA8N5LRjEKCNEuDGVzdPANQaxaQ50gOavCIZq7Vt4I0wKcKaX:3A5nRIarr7T","tlshash":"a433b60a725478a246cfa435917f410bf33b2859a90b816cf96998ed2f7cd483267f7c","first_seen":"2023-03-07T01:16:27Z","last_seen":"2026-08-10T18:10:39.448164Z","times_seen":2755,"resource_available":true,"data":"LyohCiAgKiBCb290c3RyYXAgdjQuMC4wLWJldGEuMiAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tKQogICogQ29weXJpZ2h0IDIwMTEtMjAxNyBUaGUgQm9vdHN0cmFwIEF1dGhvcnMgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ncmFwaHMvY29udHJpYnV0b3JzKQogICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSkKICAqLwp2YXIgYm9vdHN0cmFwPWZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSh0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsaS5rZXksaSl9fWU9ZSYmZS5oYXNPd25Qcm9wZXJ0eSgiZGVmYXVsdCIpP2UuZGVmYXVsdDplLG49biYmbi5oYXNPd25Qcm9wZXJ0eSgiZGVmYXVsdCIpP24uZGVmYXVsdDpuO3ZhciBzPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCh0KXtyZXR1cm57fS50b1N0cmluZy5jYWxsKHQpLm1hdGNoKC9ccyhbYS16QS1aXSspLylbMV0udG9Mb3dlckNhc2UoKX1mdW5jdGlvbiBuKCl7cmV0dXJue2JpbmRUeXBlOnIuZW5kLGRlbGVnYXRlVHlwZTpyLmVuZCxoYW5kbGU6ZnVuY3Rpb24odCl7aWYoZSh0LnRhcmdldCkuaXModGhpcykpcmV0dXJuIHQuaGFuZGxlT2JqLmhhbmRsZXIuYXBwbHkodGhpcyxhcmd1bWVudHMpfX19ZnVuY3Rpb24gaSgpe2lmKHdpbmRvdy5RVW5pdClyZXR1cm4hMTt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJib290c3RyYXAiKTtmb3IodmFyIGUgaW4gbylpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuc3R5bGVbZV0pcmV0dXJue2VuZDpvW2VdfTtyZXR1cm4hMX1mdW5jdGlvbiBzKHQpe3ZhciBuPXRoaXMsaT0hMTtyZXR1cm4gZSh0aGlzKS5vbmUoYS5UUkFOU0lUSU9OX0VORCxmdW5jdGlvbigpe2k9ITB9KSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aXx8YS50cmlnZ2VyVHJhbnNpdGlvbkVuZChuKX0sdCksdGhpc312YXIgcj0hMSxvPXtXZWJraXRUcmFuc2l0aW9uOiJ3ZWJraXRUcmFuc2l0aW9uRW5kIixNb3pUcmFuc2l0aW9uOiJ0cmFuc2l0aW9uZW5kIixPVHJhbnNpdGlvbjoib1RyYW5zaXRpb25FbmQgb3RyYW5zaXRpb25lbmQiLHRyYW5zaXRpb246InRyYW5zaXRpb25lbmQifSxhPXtUUkFOU0lUSU9OX0VORDoiYnNUcmFuc2l0aW9uRW5kIixnZXRVSUQ6ZnVuY3Rpb24odCl7ZG97dCs9fn4oMWU2Kk1hdGgucmFuZG9tKCkpfXdoaWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHQpKTtyZXR1cm4gdH0sZ2V0U2VsZWN0b3JGcm9tRWxlbWVudDpmdW5jdGlvbih0KXt2YXIgbj10LmdldEF0dHJpYnV0ZSgiZGF0YS10YXJnZXQiKTtuJiYiIyIhPT1ufHwobj10LmdldEF0dHJpYnV0ZSgiaHJlZiIpfHwiIik7dHJ5e3JldHVybiBlKGRvY3VtZW50KS5maW5kKG4pLmxlbmd0aD4wP246bnVsbH1jYXRjaCh0KXtyZXR1cm4gbnVsbH19LHJlZmxvdzpmdW5jdGlvbih0KXtyZXR1cm4gdC5vZmZzZXRIZWlnaHR9LHRyaWdnZXJUcmFuc2l0aW9uRW5kOmZ1bmN0aW9uKHQpe2UodCkudHJpZ2dlcihyLmVuZCl9LHN1cHBvcnRzVHJhbnNpdGlvbkVuZDpmdW5jdGlvbigpe3JldHVybiBCb29sZWFuKHIpfSxpc0VsZW1lbnQ6ZnVuY3Rpb24odCl7cmV0dXJuKHRbMF18fHQpLm5vZGVUeXBlfSx0eXBlQ2hlY2tDb25maWc6ZnVuY3Rpb24oZSxuLGkpe2Zvcih2YXIgcyBpbiBpKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChpLHMpKXt2YXIgcj1pW3NdLG89bltzXSxsPW8mJmEuaXNFbGVtZW50KG8pPyJlbGVtZW50Ijp0KG8pO2lmKCFuZXcgUmVnRXhwKHIpLnRlc3QobCkpdGhyb3cgbmV3IEVycm9yKGUudG9VcHBlckNhc2UoKSsnOiBPcHRpb24gIicrcysnIiBwcm92aWRlZCB0eXBlICInK2wrJyIgYnV0IGV4cGVjdGVkIHR5cGUgIicrcisnIi4nKX19fTtyZXR1cm4gcj1pKCksZS5mbi5lbXVsYXRlVHJhbnNpdGlvbkVuZD1zLGEuc3VwcG9ydHNUcmFuc2l0aW9uRW5kKCkmJihlLmV2ZW50LnNwZWNpYWxbYS5UUkFOU0lUSU9OX0VORF09bigpKSxhfSgpLHI9ZnVuY3Rpb24odCxlLG4pe3JldHVybiBlJiZpKHQucHJvdG90eXBlLGUpLG4mJmkodCxuKSx0fSxvPWZ1bmN0aW9uKHQsZSl7dC5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShlLnByb3RvdHlwZSksdC5wcm90b3R5cGUuY29uc3RydWN0b3I9dCx0Ll9fcHJvdG9fXz1lfSxhPWZ1bmN0aW9uKCl7dmFyIHQ9ImFsZXJ0IixuPWUuZm5bdF0saT17Q0xPU0U6ImNsb3NlLmJzLmFsZXJ0IixDTE9TRUQ6ImNsb3NlZC5icy5hbGVydCIsQ0xJQ0tfREFUQV9BUEk6ImNsaWNrLmJzLmFsZXJ0LmRhdGEtYXBpIn0sbz17QUxFUlQ6ImFsZXJ0IixGQURFOiJmYWRlIixTSE9XOiJzaG93In0sYT1mdW5jdGlvbigpe2Z1bmN0aW9uIHQodCl7dGhpcy5fZWxlbWVudD10fXZhciBuPXQucHJvdG90eXBlO3JldHVybiBuLmNsb3NlPWZ1bmN0aW9uKHQpe3Q9dHx8dGhpcy5fZWxlbWVudDt2YXIgZT10aGlzLl9nZXRSb290RWxlbWVudCh0KTt0aGlzLl90cmlnZ2VyQ2xvc2VFdmVudChlKS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8dGhpcy5fcmVtb3ZlRWxlbWVudChlKX0sbi5kaXNwb3NlPWZ1bmN0aW9uKCl7ZS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsImJzLmFsZXJ0IiksdGhpcy5fZWxlbWVudD1udWxsfSxuLl9nZXRSb290RWxlbWVudD1mdW5jdGlvbih0KXt2YXIgbj1zLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodCksaT0hMTtyZXR1cm4gbiYmKGk9ZShuKVswXSksaXx8KGk9ZSh0KS5jbG9zZXN0KCIuIitvLkFMRVJUKVswXSksaX0sbi5fdHJpZ2dlckNsb3NlRXZlbnQ9ZnVuY3Rpb24odCl7dmFyIG49ZS5FdmVudChpLkNMT1NFKTtyZXR1cm4gZSh0KS50cmlnZ2VyKG4pLG59LG4uX3JlbW92ZUVsZW1lbnQ9ZnVuY3Rpb24odCl7dmFyIG49dGhpcztlKHQpLnJlbW92ZUNsYXNzKG8uU0hPVykscy5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSYmZSh0KS5oYXNDbGFzcyhvLkZBREUpP2UodCkub25lKHMuVFJBTlNJVElPTl9FTkQsZnVuY3Rpb24oZSl7cmV0dXJuIG4uX2Rlc3Ryb3lFbGVtZW50KHQsZSl9KS5lbXVsYXRlVHJhbnNpdGlvbkVuZCgxNTApOnRoaXMuX2Rlc3Ryb3lFbGVtZW50KHQpfSxuLl9kZXN0cm95RWxlbWVudD1mdW5jdGlvbih0KXtlKHQpLmRldGFjaCgpLnRyaWdnZXIoaS5DTE9TRUQpLnJlbW92ZSgpfSx0Ll9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBpPWUodGhpcykscz1pLmRhdGEoImJzLmFsZXJ0Iik7c3x8KHM9bmV3IHQodGhpcyksaS5kYXRhKCJicy5hbGVydCIscykpLCJjbG9zZSI9PT1uJiZzW25dKHRoaXMpfSl9LHQuX2hhbmRsZURpc21pc3M9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2UmJmUucHJldmVudERlZmF1bHQoKSx0LmNsb3NlKHRoaXMpfX0scih0LG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjAuMC1iZXRhLjIifX1dKSx0fSgpO3JldHVybiBlKGRvY3VtZW50KS5vbihpLkNMSUNLX0RBVEFfQVBJLHtESVNNSVNTOidbZGF0YS1kaXNtaXNzPSJhbGVydCJdJ30uRElTTUlTUyxhLl9oYW5kbGVEaXNtaXNzKG5ldyBhKSksZS5mblt0XT1hLl9qUXVlcnlJbnRlcmZhY2UsZS5mblt0XS5Db25zdHJ1Y3Rvcj1hLGUuZm5bdF0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBlLmZuW3RdPW4sYS5falF1ZXJ5SW50ZXJmYWNlfSxhfSgpLGw9ZnVuY3Rpb24oKXt2YXIgdD0iYnV0dG9uIixuPWUuZm5bdF0saT17QUNUSVZFOiJhY3RpdmUiLEJVVFRPTjoiYnRuIixGT0NVUzoiZm9jdXMifSxzPXtEQVRBX1RPR0dMRV9DQVJST1Q6J1tkYXRhLXRvZ2dsZV49ImJ1dHRvbiJdJyxEQVRBX1RPR0dMRTonW2RhdGEtdG9nZ2xlPSJidXR0b25zIl0nLElOUFVUOiJpbnB1dCIsQUNUSVZFOiIuYWN0aXZlIixCVVRUT046Ii5idG4ifSxvPXtDTElDS19EQVRBX0FQSToiY2xpY2suYnMuYnV0dG9uLmRhdGEtYXBpIixGT0NVU19CTFVSX0RBVEFfQVBJOiJmb2N1cy5icy5idXR0b24uZGF0YS1hcGkgYmx1ci5icy5idXR0b24uZGF0YS1hcGkifSxhPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCh0KXt0aGlzLl9lbGVtZW50PXR9dmFyIG49dC5wcm90b3R5cGU7cmV0dXJuIG4udG9nZ2xlPWZ1bmN0aW9uKCl7dmFyIHQ9ITAsbj0hMCxyPWUodGhpcy5fZWxlbWVudCkuY2xvc2VzdChzLkRBVEFfVE9HR0xFKVswXTtpZihyKXt2YXIgbz1lKHRoaXMuX2VsZW1lbnQpLmZpbmQocy5JTlBVVClbMF07aWYobyl7aWYoInJhZGlvIj09PW8udHlwZSlpZihvLmNoZWNrZWQmJmUodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoaS5BQ1RJVkUpKXQ9ITE7ZWxzZXt2YXIgYT1lKHIpLmZpbmQocy5BQ1RJVkUpWzBdO2EmJmUoYSkucmVtb3ZlQ2xhc3MoaS5BQ1RJVkUpfWlmKHQpe2lmKG8uaGFzQXR0cmlidXRlKCJkaXNhYmxlZCIpfHxyLmhhc0F0dHJpYnV0ZSgiZGlzYWJsZWQiKXx8by5jbGFzc0xpc3QuY29udGFpbnMoImRpc2FibGVkIil8fHIuY2xhc3NMaXN0LmNvbnRhaW5zKCJkaXNhYmxlZCIpKXJldHVybjtvLmNoZWNrZWQ9IWUodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoaS5BQ1RJVkUpLGUobykudHJpZ2dlcigiY2hhbmdlIil9by5mb2N1cygpLG49ITF9fW4mJnRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiLCFlKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGkuQUNUSVZFKSksdCYmZSh0aGlzLl9lbGVtZW50KS50b2dnbGVDbGFzcyhpLkFDVElWRSl9LG4uZGlzcG9zZT1mdW5jdGlvbigpe2UucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LCJicy5idXR0b24iKSx0aGlzLl9lbGVtZW50PW51bGx9LHQuX2pRdWVyeUludGVyZmFjZT1mdW5jdGlvbihuKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGk9ZSh0aGlzKS5kYXRhKCJicy5idXR0b24iKTtpfHwoaT1uZXcgdCh0aGlzKSxlKHRoaXMpLmRhdGEoImJzLmJ1dHRvbiIsaSkpLCJ0b2dnbGUiPT09biYmaVtuXSgpfSl9LHIodCxudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC4wLjAtYmV0YS4yIn19XSksdH0oKTtyZXR1cm4gZShkb2N1bWVudCkub24oby5DTElDS19EQVRBX0FQSSxzLkRBVEFfVE9HR0xFX0NBUlJPVCxmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCk7dmFyIG49dC50YXJnZXQ7ZShuKS5oYXNDbGFzcyhpLkJVVFRPTil8fChuPWUobikuY2xvc2VzdChzLkJVVFRPTikpLGEuX2pRdWVyeUludGVyZmFjZS5jYWxsKGUobiksInRvZ2dsZSIpfSkub24oby5GT0NVU19CTFVSX0RBVEFfQVBJLHMuREFUQV9UT0dHTEVfQ0FSUk9ULGZ1bmN0aW9uKHQpe3ZhciBuPWUodC50YXJnZXQpLmNsb3Nlc3Qocy5CVVRUT04pWzBdO2UobikudG9nZ2xlQ2xhc3MoaS5GT0NVUywvXmZvY3VzKGluKT8kLy50ZXN0KHQudHlwZSkpfSksZS5mblt0XT1hLl9qUXVlcnlJbnRlcmZhY2UsZS5mblt0XS5Db25zdHJ1Y3Rvcj1hLGUuZm5bdF0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBlLmZuW3RdPW4sYS5falF1ZXJ5SW50ZXJmYWNlfSxhfSgpLGg9ZnVuY3Rpb24oKXt2YXIgdD0iY2Fyb3VzZWwiLG49ImJzLmNhcm91c2VsIixpPSIuIituLG89ZS5mblt0XSxhPXtpbnRlcnZhbDo1ZTMsa2V5Ym9hcmQ6ITAsc2xpZGU6ITEscGF1c2U6ImhvdmVyIix3cmFwOiEwfSxsPXtpbnRlcnZhbDoiKG51bWJlcnxib29sZWFuKSIsa2V5Ym9hcmQ6ImJvb2xlYW4iLHNsaWRlOiIoYm9vbGVhbnxzdHJpbmcpIixwYXVzZToiKHN0cmluZ3xib29sZWFuKSIsd3JhcDoiYm9vbGVhbiJ9LGg9e05FWFQ6Im5leHQiLFBSRVY6InByZXYiLExFRlQ6ImxlZnQiLFJJR0hUOiJyaWdodCJ9LGM9e1NMSURFOiJzbGlkZSIraSxTTElEOiJzbGlkIitpLEtFWURPV046ImtleWRvd24iK2ksTU9VU0VFTlRFUjoibW91c2VlbnRlciIraSxNT1VTRUxFQVZFOiJtb3VzZWxlYXZlIitpLFRPVUNIRU5EOiJ0b3VjaGVuZCIraSxMT0FEX0RBVEFfQVBJOiJsb2FkLmJzLmNhcm91c2VsLmRhdGEtYXBpIixDTElDS19EQVRBX0FQSToiY2xpY2suYnMuY2Fyb3VzZWwuZGF0YS1hcGkifSx1PXtDQVJPVVNFTDoiY2Fyb3VzZWwiLEFDVElWRToiYWN0aXZlIixTTElERToic2xpZGUiLFJJR0hUOiJjYXJvdXNlbC1pdGVtLXJpZ2h0IixMRUZUOiJjYXJvdXNlbC1pdGVtLWxlZnQiLE5FWFQ6ImNhcm91c2VsLWl0ZW0tbmV4dCIsUFJFVjoiY2Fyb3VzZWwtaXRlbS1wcmV2IixJVEVNOiJjYXJvdXNlbC1pdGVtIn0sZD17QUNUSVZFOiIuYWN0aXZlIixBQ1RJVkVfSVRFTToiLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIixJVEVNOiIuY2Fyb3VzZWwtaXRlbSIsTkVYVF9QUkVWOiIuY2Fyb3VzZWwtaXRlbS1uZXh0LCAuY2Fyb3VzZWwtaXRlbS1wcmV2IixJTkRJQ0FUT1JTOiIuY2Fyb3VzZWwtaW5kaWNhdG9ycyIsREFUQV9TTElERToiW2RhdGEtc2xpZGVdLCBbZGF0YS1zbGlkZS10b10iLERBVEFfUklERTonW2RhdGEtcmlkZT0iY2Fyb3VzZWwiXSd9LGY9ZnVuY3Rpb24oKXtmdW5jdGlvbiBvKHQsbil7dGhpcy5faXRlbXM9bnVsbCx0aGlzLl9pbnRlcnZhbD1udWxsLHRoaXMuX2FjdGl2ZUVsZW1lbnQ9bnVsbCx0aGlzLl9pc1BhdXNlZD0hMSx0aGlzLl9pc1NsaWRpbmc9ITEsdGhpcy50b3VjaFRpbWVvdXQ9bnVsbCx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKG4pLHRoaXMuX2VsZW1lbnQ9ZSh0KVswXSx0aGlzLl9pbmRpY2F0b3JzRWxlbWVudD1lKHRoaXMuX2VsZW1lbnQpLmZpbmQoZC5JTkRJQ0FUT1JTKVswXSx0aGlzLl9hZGRFdmVudExpc3RlbmVycygpfXZhciBmPW8ucHJvdG90eXBlO3JldHVybiBmLm5leHQ9ZnVuY3Rpb24oKXt0aGlzLl9pc1NsaWRpbmd8fHRoaXMuX3NsaWRlKGguTkVYVCl9LGYubmV4dFdoZW5WaXNpYmxlPWZ1bmN0aW9uKCl7IWRvY3VtZW50LmhpZGRlbiYmZSh0aGlzLl9lbGVtZW50KS5pcygiOnZpc2libGUiKSYmImhpZGRlbiIhPT1lKHRoaXMuX2VsZW1lbnQpLmNzcygidmlzaWJpbGl0eSIpJiZ0aGlzLm5leHQoKX0sZi5wcmV2PWZ1bmN0aW9uKCl7dGhpcy5faXNTbGlkaW5nfHx0aGlzLl9zbGlkZShoLlBSRVYpfSxmLnBhdXNlPWZ1bmN0aW9uKHQpe3R8fCh0aGlzLl9pc1BhdXNlZD0hMCksZSh0aGlzLl9lbGVtZW50KS5maW5kKGQuTkVYVF9QUkVWKVswXSYmcy5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSYmKHMudHJpZ2dlclRyYW5zaXRpb25FbmQodGhpcy5fZWxlbWVudCksdGhpcy5jeWNsZSghMCkpLGNsZWFySW50ZXJ2YWwodGhpcy5faW50ZXJ2YWwpLHRoaXMuX2ludGVydmFsPW51bGx9LGYuY3ljbGU9ZnVuY3Rpb24odCl7dHx8KHRoaXMuX2lzUGF1c2VkPSExKSx0aGlzLl9pbnRlcnZhbCYmKGNsZWFySW50ZXJ2YWwodGhpcy5faW50ZXJ2YWwpLHRoaXMuX2ludGVydmFsPW51bGwpLHRoaXMuX2NvbmZpZy5pbnRlcnZhbCYmIXRoaXMuX2lzUGF1c2VkJiYodGhpcy5faW50ZXJ2YWw9c2V0SW50ZXJ2YWwoKGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT90aGlzLm5leHRXaGVuVmlzaWJsZTp0aGlzLm5leHQpLmJpbmQodGhpcyksdGhpcy5fY29uZmlnLmludGVydmFsKSl9LGYudG89ZnVuY3Rpb24odCl7dmFyIG49dGhpczt0aGlzLl9hY3RpdmVFbGVtZW50PWUodGhpcy5fZWxlbWVudCkuZmluZChkLkFDVElWRV9JVEVNKVswXTt2YXIgaT10aGlzLl9nZXRJdGVtSW5kZXgodGhpcy5fYWN0aXZlRWxlbWVudCk7aWYoISh0PnRoaXMuX2l0ZW1zLmxlbmd0aC0xfHx0PDApKWlmKHRoaXMuX2lzU2xpZGluZyllKHRoaXMuX2VsZW1lbnQpLm9uZShjLlNMSUQsZnVuY3Rpb24oKXtyZXR1cm4gbi50byh0KX0pO2Vsc2V7aWYoaT09PXQpcmV0dXJuIHRoaXMucGF1c2UoKSx2b2lkIHRoaXMuY3ljbGUoKTt2YXIgcz10Pmk/aC5ORVhUOmguUFJFVjt0aGlzLl9zbGlkZShzLHRoaXMuX2l0ZW1zW3RdKX19LGYuZGlzcG9zZT1mdW5jdGlvbigpe2UodGhpcy5fZWxlbWVudCkub2ZmKGkpLGUucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LG4pLHRoaXMuX2l0ZW1zPW51bGwsdGhpcy5fY29uZmlnPW51bGwsdGhpcy5fZWxlbWVudD1udWxsLHRoaXMuX2ludGVydmFsPW51bGwsdGhpcy5faXNQYXVzZWQ9bnVsbCx0aGlzLl9pc1NsaWRpbmc9bnVsbCx0aGlzLl9hY3RpdmVFbGVtZW50PW51bGwsdGhpcy5faW5kaWNhdG9yc0VsZW1lbnQ9bnVsbH0sZi5fZ2V0Q29uZmlnPWZ1bmN0aW9uKG4pe3JldHVybiBuPWUuZXh0ZW5kKHt9LGEsbikscy50eXBlQ2hlY2tDb25maWcodCxuLGwpLG59LGYuX2FkZEV2ZW50TGlzdGVuZXJzPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLl9jb25maWcua2V5Ym9hcmQmJmUodGhpcy5fZWxlbWVudCkub24oYy5LRVlET1dOLGZ1bmN0aW9uKGUpe3JldHVybiB0Ll9rZXlkb3duKGUpfSksImhvdmVyIj09PXRoaXMuX2NvbmZpZy5wYXVzZSYmKGUodGhpcy5fZWxlbWVudCkub24oYy5NT1VTRUVOVEVSLGZ1bmN0aW9uKGUpe3JldHVybiB0LnBhdXNlKGUpfSkub24oYy5NT1VTRUxFQVZFLGZ1bmN0aW9uKGUpe3JldHVybiB0LmN5Y2xlKGUpfSksIm9udG91Y2hzdGFydCJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJmUodGhpcy5fZWxlbWVudCkub24oYy5UT1VDSEVORCxmdW5jdGlvbigpe3QucGF1c2UoKSx0LnRvdWNoVGltZW91dCYmY2xlYXJUaW1lb3V0KHQudG91Y2hUaW1lb3V0KSx0LnRvdWNoVGltZW91dD1zZXRUaW1lb3V0KGZ1bmN0aW9uKGUpe3JldHVybiB0LmN5Y2xlKGUpfSw1MDArdC5fY29uZmlnLmludGVydmFsKX0pKX0sZi5fa2V5ZG93bj1mdW5jdGlvbih0KXtpZighL2lucHV0fHRleHRhcmVhL2kudGVzdCh0LnRhcmdldC50YWdOYW1lKSlzd2l0Y2godC53aGljaCl7Y2FzZSAzNzp0LnByZXZlbnREZWZhdWx0KCksdGhpcy5wcmV2KCk7YnJlYWs7Y2FzZSAzOTp0LnByZXZlbnREZWZhdWx0KCksdGhpcy5uZXh0KCk7YnJlYWs7ZGVmYXVsdDpyZXR1cm59fSxmLl9nZXRJdGVtSW5kZXg9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2l0ZW1zPWUubWFrZUFycmF5KGUodCkucGFyZW50KCkuZmluZChkLklURU0pKSx0aGlzLl9pdGVtcy5pbmRleE9mKHQpfSxmLl9nZXRJdGVtQnlEaXJlY3Rpb249ZnVuY3Rpb24odCxlKXt2YXIgbj10PT09aC5ORVhULGk9dD09PWguUFJFVixzPXRoaXMuX2dldEl0ZW1JbmRleChlKSxyPXRoaXMuX2l0ZW1zLmxlbmd0aC0xO2lmKChpJiYwPT09c3x8biYmcz09PXIpJiYhdGhpcy5fY29uZmlnLndyYXApcmV0dXJuIGU7dmFyIG89KHMrKHQ9PT1oLlBSRVY/LTE6MSkpJXRoaXMuX2l0ZW1zLmxlbmd0aDtyZXR1cm4tMT09PW8/dGhpcy5faXRlbXNbdGhpcy5faXRlbXMubGVuZ3RoLTFdOnRoaXMuX2l0ZW1zW29dfSxmLl90cmlnZ2VyU2xpZGVFdmVudD1mdW5jdGlvbih0LG4pe3ZhciBpPXRoaXMuX2dldEl0ZW1JbmRleCh0KSxzPXRoaXMuX2dldEl0ZW1JbmRleChlKHRoaXMuX2VsZW1lbnQpLmZpbmQoZC5BQ1RJVkVfSVRFTSlbMF0pLHI9ZS5FdmVudChjLlNMSURFLHtyZWxhdGVkVGFyZ2V0OnQsZGlyZWN0aW9uOm4sZnJvbTpzLHRvOml9KTtyZXR1cm4gZSh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKHIpLHJ9LGYuX3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQ9ZnVuY3Rpb24odCl7aWYodGhpcy5faW5kaWNhdG9yc0VsZW1lbnQpe2UodGhpcy5faW5kaWNhdG9yc0VsZW1lbnQpLmZpbmQoZC5BQ1RJVkUpLnJlbW92ZUNsYXNzKHUuQUNUSVZFKTt2YXIgbj10aGlzLl9pbmRpY2F0b3JzRWxlbWVudC5jaGlsZHJlblt0aGlzLl9nZXRJdGVtSW5kZXgodCldO24mJmUobikuYWRkQ2xhc3ModS5BQ1RJVkUpfX0sZi5fc2xpZGU9ZnVuY3Rpb24odCxuKXt2YXIgaSxyLG8sYT10aGlzLGw9ZSh0aGlzLl9lbGVtZW50KS5maW5kKGQuQUNUSVZFX0lURU0pWzBdLGY9dGhpcy5fZ2V0SXRlbUluZGV4KGwpLF89bnx8bCYmdGhpcy5fZ2V0SXRlbUJ5RGlyZWN0aW9uKHQsbCksZz10aGlzLl9nZXRJdGVtSW5kZXgoXyksbT1Cb29sZWFuKHRoaXMuX2ludGVydmFsKTtpZih0PT09aC5ORVhUPyhpPXUuTEVGVCxyPXUuTkVYVCxvPWguTEVGVCk6KGk9dS5SSUdIVCxyPXUuUFJFVixvPWguUklHSFQpLF8mJmUoXykuaGFzQ2xhc3ModS5BQ1RJVkUpKXRoaXMuX2lzU2xpZGluZz0hMTtlbHNlIGlmKCF0aGlzLl90cmlnZ2VyU2xpZGVFdmVudChfLG8pLmlzRGVmYXVsdFByZXZlbnRlZCgpJiZsJiZfKXt0aGlzLl9pc1NsaWRpbmc9ITAsbSYmdGhpcy5wYXVzZSgpLHRoaXMuX3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQoXyk7dmFyIHA9ZS5FdmVudChjLlNMSUQse3JlbGF0ZWRUYXJnZXQ6XyxkaXJlY3Rpb246byxmcm9tOmYsdG86Z30pO3Muc3VwcG9ydHNUcmFuc2l0aW9uRW5kKCkmJmUodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3ModS5TTElERSk/KGUoXykuYWRkQ2xhc3Mocikscy5yZWZsb3coXyksZShsKS5hZGRDbGFzcyhpKSxlKF8pLmFkZENsYXNzKGkpLGUobCkub25lKHMuVFJBTlNJVElPTl9FTkQsZnVuY3Rpb24oKXtlKF8pLnJlbW92ZUNsYXNzKGkrIiAiK3IpLmFkZENsYXNzKHUuQUNUSVZFKSxlKGwpLnJlbW92ZUNsYXNzKHUuQUNUSVZFKyIgIityKyIgIitpKSxhLl9pc1NsaWRpbmc9ITEsc2V0VGltZW91dChmdW5jdGlvbigpe3JldHVybiBlKGEuX2VsZW1lbnQpLnRyaWdnZXIocCl9LDApfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQoNjAwKSk6KGUobCkucmVtb3ZlQ2xhc3ModS5BQ1RJVkUpLGUoXykuYWRkQ2xhc3ModS5BQ1RJVkUpLHRoaXMuX2lzU2xpZGluZz0hMSxlKHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIocCkpLG0mJnRoaXMuY3ljbGUoKX19LG8uX2pRdWVyeUludGVyZmFjZT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGk9ZSh0aGlzKS5kYXRhKG4pLHM9ZS5leHRlbmQoe30sYSxlKHRoaXMpLmRhdGEoKSk7Im9iamVjdCI9PXR5cGVvZiB0JiZlLmV4dGVuZChzLHQpO3ZhciByPSJzdHJpbmciPT10eXBlb2YgdD90OnMuc2xpZGU7aWYoaXx8KGk9bmV3IG8odGhpcyxzKSxlKHRoaXMpLmRhdGEobixpKSksIm51bWJlciI9PXR5cGVvZiB0KWkudG8odCk7ZWxzZSBpZigic3RyaW5nIj09dHlwZW9mIHIpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgaVtyXSl0aHJvdyBuZXcgRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytyKyciJyk7aVtyXSgpfWVsc2Ugcy5pbnRlcnZhbCYmKGkucGF1c2UoKSxpLmN5Y2xlKCkpfSl9LG8uX2RhdGFBcGlDbGlja0hhbmRsZXI9ZnVuY3Rpb24odCl7dmFyIGk9cy5nZXRTZWxlY3RvckZyb21FbGVtZW50KHRoaXMpO2lmKGkpe3ZhciByPWUoaSlbMF07aWYociYmZShyKS5oYXNDbGFzcyh1LkNBUk9VU0VMKSl7dmFyIGE9ZS5leHRlbmQoe30sZShyKS5kYXRhKCksZSh0aGlzKS5kYXRhKCkpLGw9dGhpcy5nZXRBdHRyaWJ1dGUoImRhdGEtc2xpZGUtdG8iKTtsJiYoYS5pbnRlcnZhbD0hMSksby5falF1ZXJ5SW50ZXJmYWNlLmNhbGwoZShyKSxhKSxsJiZlKHIpLmRhdGEobikudG8obCksdC5wcmV2ZW50RGVmYXVsdCgpfX19LHIobyxudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC4wLjAtYmV0YS4yIn19LHtrZXk6IkRlZmF1bHQiLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX1dKSxvfSgpO3JldHVybiBlKGRvY3VtZW50KS5vbihjLkNMSUNLX0RBVEFfQVBJLGQuREFUQV9TTElERSxmLl9kYXRhQXBpQ2xpY2tIYW5kbGVyKSxlKHdpbmRvdykub24oYy5MT0FEX0RBVEFfQVBJLGZ1bmN0aW9uKCl7ZShkLkRBVEFfUklERSkuZWFjaChmdW5jdGlvbigpe3ZhciB0PWUodGhpcyk7Zi5falF1ZXJ5SW50ZXJmYWNlLmNhbGwodCx0LmRhdGEoKSl9KX0pLGUuZm5bdF09Zi5falF1ZXJ5SW50ZXJmYWNlLGUuZm5bdF0uQ29uc3RydWN0b3I9ZixlLmZuW3RdLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gZS5mblt0XT1vLGYuX2pRdWVyeUludGVyZmFjZX0sZn0oKSxjPWZ1bmN0aW9uKCl7dmFyIHQ9ImNvbGxhcHNlIixuPSJicy5jb2xsYXBzZSIsaT1lLmZuW3RdLG89e3RvZ2dsZTohMCxwYXJlbnQ6IiJ9LGE9e3RvZ2dsZToiYm9vbGVhbiIscGFyZW50OiIoc3RyaW5nfGVsZW1lbnQpIn0sbD17U0hPVzoic2hvdy5icy5jb2xsYXBzZSIsU0hPV046InNob3duLmJzLmNvbGxhcHNlIixISURFOiJoaWRlLmJzLmNvbGxhcHNlIixISURERU46ImhpZGRlbi5icy5jb2xsYXBzZSIsQ0xJQ0tfREFUQV9BUEk6ImNsaWNrLmJzLmNvbGxhcHNlLmRhdGEtYXBpIn0saD17U0hPVzoic2hvdyIsQ09MTEFQU0U6ImNvbGxhcHNlIixDT0xMQVBTSU5HOiJjb2xsYXBzaW5nIixDT0xMQVBTRUQ6ImNvbGxhcHNlZCJ9LGM9e1dJRFRIOiJ3aWR0aCIsSEVJR0hUOiJoZWlnaHQifSx1PXtBQ1RJVkVTOiIuc2hvdywgLmNvbGxhcHNpbmciLERBVEFfVE9HR0xFOidbZGF0YS10b2dnbGU9ImNvbGxhcHNlIl0nfSxkPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gaSh0LG4pe3RoaXMuX2lzVHJhbnNpdGlvbmluZz0hMSx0aGlzLl9lbGVtZW50PXQsdGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyhuKSx0aGlzLl90cmlnZ2VyQXJyYXk9ZS5tYWtlQXJyYXkoZSgnW2RhdGEtdG9nZ2xlPSJjb2xsYXBzZSJdW2hyZWY9IiMnK3QuaWQrJyJdLFtkYXRhLXRvZ2dsZT0iY29sbGFwc2UiXVtkYXRhLXRhcmdldD0iIycrdC5pZCsnIl0nKSk7Zm9yKHZhciBpPWUodS5EQVRBX1RPR0dMRSkscj0wO3I8aS5sZW5ndGg7cisrKXt2YXIgbz1pW3JdLGE9cy5nZXRTZWxlY3RvckZyb21FbGVtZW50KG8pO251bGwhPT1hJiZlKGEpLmZpbHRlcih0KS5sZW5ndGg+MCYmdGhpcy5fdHJpZ2dlckFycmF5LnB1c2gobyl9dGhpcy5fcGFyZW50PXRoaXMuX2NvbmZpZy5wYXJlbnQ/dGhpcy5fZ2V0UGFyZW50KCk6bnVsbCx0aGlzLl9jb25maWcucGFyZW50fHx0aGlzLl9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3ModGhpcy5fZWxlbWVudCx0aGlzLl90cmlnZ2VyQXJyYXkpLHRoaXMuX2NvbmZpZy50b2dnbGUmJnRoaXMudG9nZ2xlKCl9dmFyIGQ9aS5wcm90b3R5cGU7cmV0dXJuIGQudG9nZ2xlPWZ1bmN0aW9uKCl7ZSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhoLlNIT1cpP3RoaXMuaGlkZSgpOnRoaXMuc2hvdygpfSxkLnNob3c9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO2lmKCF0aGlzLl9pc1RyYW5zaXRpb25pbmcmJiFlKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGguU0hPVykpe3ZhciByLG87aWYodGhpcy5fcGFyZW50JiYoKHI9ZS5tYWtlQXJyYXkoZSh0aGlzLl9wYXJlbnQpLmNoaWxkcmVuKCkuY2hpbGRyZW4odS5BQ1RJVkVTKSkpLmxlbmd0aHx8KHI9bnVsbCkpLCEociYmKG89ZShyKS5kYXRhKG4pKSYmby5faXNUcmFuc2l0aW9uaW5nKSl7dmFyIGE9ZS5FdmVudChsLlNIT1cpO2lmKGUodGhpcy5fZWxlbWVudCkudHJpZ2dlcihhKSwhYS5pc0RlZmF1bHRQcmV2ZW50ZWQoKSl7ciYmKGkuX2pRdWVyeUludGVyZmFjZS5jYWxsKGUociksImhpZGUiKSxvfHxlKHIpLmRhdGEobixudWxsKSk7dmFyIGM9dGhpcy5fZ2V0RGltZW5zaW9uKCk7ZSh0aGlzLl9lbGVtZW50KS5yZW1vdmVDbGFzcyhoLkNPTExBUFNFKS5hZGRDbGFzcyhoLkNPTExBUFNJTkcpLHRoaXMuX2VsZW1lbnQuc3R5bGVbY109MCx0aGlzLl90cmlnZ2VyQXJyYXkubGVuZ3RoJiZlKHRoaXMuX3RyaWdnZXJBcnJheSkucmVtb3ZlQ2xhc3MoaC5DT0xMQVBTRUQpLmF0dHIoImFyaWEtZXhwYW5kZWQiLCEwKSx0aGlzLnNldFRyYW5zaXRpb25pbmcoITApO3ZhciBkPWZ1bmN0aW9uKCl7ZSh0Ll9lbGVtZW50KS5yZW1vdmVDbGFzcyhoLkNPTExBUFNJTkcpLmFkZENsYXNzKGguQ09MTEFQU0UpLmFkZENsYXNzKGguU0hPVyksdC5fZWxlbWVudC5zdHlsZVtjXT0iIix0LnNldFRyYW5zaXRpb25pbmcoITEpLGUodC5fZWxlbWVudCkudHJpZ2dlcihsLlNIT1dOKX07aWYocy5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSl7dmFyIGY9InNjcm9sbCIrKGNbMF0udG9VcHBlckNhc2UoKStjLnNsaWNlKDEpKTtlKHRoaXMuX2VsZW1lbnQpLm9uZShzLlRSQU5TSVRJT05fRU5ELGQpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKDYwMCksdGhpcy5fZWxlbWVudC5zdHlsZVtjXT10aGlzLl9lbGVtZW50W2ZdKyJweCJ9ZWxzZSBkKCl9fX19LGQuaGlkZT1mdW5jdGlvbigpe3ZhciB0PXRoaXM7aWYoIXRoaXMuX2lzVHJhbnNpdGlvbmluZyYmZSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhoLlNIT1cpKXt2YXIgbj1lLkV2ZW50KGwuSElERSk7aWYoZSh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKG4pLCFuLmlzRGVmYXVsdFByZXZlbnRlZCgpKXt2YXIgaT10aGlzLl9nZXREaW1lbnNpb24oKTtpZih0aGlzLl9lbGVtZW50LnN0eWxlW2ldPXRoaXMuX2VsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClbaV0rInB4IixzLnJlZmxvdyh0aGlzLl9lbGVtZW50KSxlKHRoaXMuX2VsZW1lbnQpLmFkZENsYXNzKGguQ09MTEFQU0lORykucmVtb3ZlQ2xhc3MoaC5DT0xMQVBTRSkucmVtb3ZlQ2xhc3MoaC5TSE9XKSx0aGlzLl90cmlnZ2VyQXJyYXkubGVuZ3RoKWZvcih2YXIgcj0wO3I8dGhpcy5fdHJpZ2dlckFycmF5Lmxlbmd0aDtyKyspe3ZhciBvPXRoaXMuX3RyaWdnZXJBcnJheVtyXSxhPXMuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudChvKTtudWxsIT09YSYmKGUoYSkuaGFzQ2xhc3MoaC5TSE9XKXx8ZShvKS5hZGRDbGFzcyhoLkNPTExBUFNFRCkuYXR0cigiYXJpYS1leHBhbmRlZCIsITEpKX10aGlzLnNldFRyYW5zaXRpb25pbmcoITApO3ZhciBjPWZ1bmN0aW9uKCl7dC5zZXRUcmFuc2l0aW9uaW5nKCExKSxlKHQuX2VsZW1lbnQpLnJlbW92ZUNsYXNzKGguQ09MTEFQU0lORykuYWRkQ2xhc3MoaC5DT0xMQVBTRSkudHJpZ2dlcihsLkhJRERFTil9O3RoaXMuX2VsZW1lbnQuc3R5bGVbaV09IiIscy5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKT9lKHRoaXMuX2VsZW1lbnQpLm9uZShzLlRSQU5TSVRJT05fRU5ELGMpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKDYwMCk6YygpfX19LGQuc2V0VHJhbnNpdGlvbmluZz1mdW5jdGlvbih0KXt0aGlzLl9pc1RyYW5zaXRpb25pbmc9dH0sZC5kaXNwb3NlPWZ1bmN0aW9uKCl7ZS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsbiksdGhpcy5fY29uZmlnPW51bGwsdGhpcy5fcGFyZW50PW51bGwsdGhpcy5fZWxlbWVudD1udWxsLHRoaXMuX3RyaWdnZXJBcnJheT1udWxsLHRoaXMuX2lzVHJhbnNpdGlvbmluZz1udWxsfSxkLl9nZXRDb25maWc9ZnVuY3Rpb24obil7cmV0dXJuIG49ZS5leHRlbmQoe30sbyxuKSxuLnRvZ2dsZT1Cb29sZWFuKG4udG9nZ2xlKSxzLnR5cGVDaGVja0NvbmZpZyh0LG4sYSksbn0sZC5fZ2V0RGltZW5zaW9uPWZ1bmN0aW9uKCl7cmV0dXJuIGUodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoYy5XSURUSCk/Yy5XSURUSDpjLkhFSUdIVH0sZC5fZ2V0UGFyZW50PWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxuPW51bGw7cy5pc0VsZW1lbnQodGhpcy5fY29uZmlnLnBhcmVudCk/KG49dGhpcy5fY29uZmlnLnBhcmVudCwidW5kZWZpbmVkIiE9dHlwZW9mIHRoaXMuX2NvbmZpZy5wYXJlbnQuanF1ZXJ5JiYobj10aGlzLl9jb25maWcucGFyZW50WzBdKSk6bj1lKHRoaXMuX2NvbmZpZy5wYXJlbnQpWzBdO3ZhciByPSdbZGF0YS10b2dnbGU9ImNvbGxhcHNlIl1bZGF0YS1wYXJlbnQ9IicrdGhpcy5fY29uZmlnLnBhcmVudCsnIl0nO3JldHVybiBlKG4pLmZpbmQocikuZWFjaChmdW5jdGlvbihlLG4pe3QuX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyhpLl9nZXRUYXJnZXRGcm9tRWxlbWVudChuKSxbbl0pfSksbn0sZC5fYWRkQXJpYUFuZENvbGxhcHNlZENsYXNzPWZ1bmN0aW9uKHQsbil7aWYodCl7dmFyIGk9ZSh0KS5oYXNDbGFzcyhoLlNIT1cpO24ubGVuZ3RoJiZlKG4pLnRvZ2dsZUNsYXNzKGguQ09MTEFQU0VELCFpKS5hdHRyKCJhcmlhLWV4cGFuZGVkIixpKX19LGkuX2dldFRhcmdldEZyb21FbGVtZW50PWZ1bmN0aW9uKHQpe3ZhciBuPXMuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCh0KTtyZXR1cm4gbj9lKG4pWzBdOm51bGx9LGkuX2pRdWVyeUludGVyZmFjZT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIHM9ZSh0aGlzKSxyPXMuZGF0YShuKSxhPWUuZXh0ZW5kKHt9LG8scy5kYXRhKCksIm9iamVjdCI9PXR5cGVvZiB0JiZ0KTtpZighciYmYS50b2dnbGUmJi9zaG93fGhpZGUvLnRlc3QodCkmJihhLnRvZ2dsZT0hMSkscnx8KHI9bmV3IGkodGhpcyxhKSxzLmRhdGEobixyKSksInN0cmluZyI9PXR5cGVvZiB0KXtpZigidW5kZWZpbmVkIj09dHlwZW9mIHJbdF0pdGhyb3cgbmV3IEVycm9yKCdObyBtZXRob2QgbmFtZWQgIicrdCsnIicpO3JbdF0oKX19KX0scihpLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjAuMC1iZXRhLjIifX0se2tleToiRGVmYXVsdCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG99fV0pLGl9KCk7cmV0dXJuIGUoZG9jdW1lbnQpLm9uKGwuQ0xJQ0tfREFUQV9BUEksdS5EQVRBX1RPR0dMRSxmdW5jdGlvbih0KXsiQSI9PT10LmN1cnJlbnRUYXJnZXQudGFnTmFtZSYmdC5wcmV2ZW50RGVmYXVsdCgpO3ZhciBpPWUodGhpcykscj1zLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodGhpcyk7ZShyKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIHQ9ZSh0aGlzKSxzPXQuZGF0YShuKT8idG9nZ2xlIjppLmRhdGEoKTtkLl9qUXVlcnlJbnRlcmZhY2UuY2FsbCh0LHMpfSl9KSxlLmZuW3RdPWQuX2pRdWVyeUludGVyZmFjZSxlLmZuW3RdLkNvbnN0cnVjdG9yPWQsZS5mblt0XS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGUuZm5bdF09aSxkLl9qUXVlcnlJbnRlcmZhY2V9LGR9KCksdT1mdW5jdGlvbigpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2Ygbil0aHJvdyBuZXcgRXJyb3IoIkJvb3RzdHJhcCBkcm9wZG93biByZXF1aXJlIFBvcHBlci5qcyAoaHR0cHM6Ly9wb3BwZXIuanMub3JnKSIpO3ZhciB0PSJkcm9wZG93biIsaT0iYnMuZHJvcGRvd24iLG89Ii4iK2ksYT1lLmZuW3RdLGw9bmV3IFJlZ0V4cCgiMzh8NDB8MjciKSxoPXtISURFOiJoaWRlIitvLEhJRERFTjoiaGlkZGVuIitvLFNIT1c6InNob3ciK28sU0hPV046InNob3duIitvLENMSUNLOiJjbGljayIrbyxDTElDS19EQVRBX0FQSToiY2xpY2suYnMuZHJvcGRvd24uZGF0YS1hcGkiLEtFWURPV05fREFUQV9BUEk6ImtleWRvd24uYnMuZHJvcGRvd24uZGF0YS1hcGkiLEtFWVVQX0RBVEFfQVBJOiJrZXl1cC5icy5kcm9wZG93bi5kYXRhLWFwaSJ9LGM9e0RJU0FCTEVEOiJkaXNhYmxlZCIsU0hPVzoic2hvdyIsRFJPUFVQOiJkcm9wdXAiLE1FTlVSSUdIVDoiZHJvcGRvd24tbWVudS1yaWdodCIsTUVOVUxFRlQ6ImRyb3Bkb3duLW1lbnUtbGVmdCJ9LHU9e0RBVEFfVE9HR0xFOidbZGF0YS10b2dnbGU9ImRyb3Bkb3duIl0nLEZPUk1fQ0hJTEQ6Ii5kcm9wZG93biBmb3JtIixNRU5VOiIuZHJvcGRvd24tbWVudSIsTkFWQkFSX05BVjoiLm5hdmJhci1uYXYiLFZJU0lCTEVfSVRFTVM6Ii5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtOm5vdCguZGlzYWJsZWQpIn0sZD17VE9QOiJ0b3Atc3RhcnQiLFRPUEVORDoidG9wLWVuZCIsQk9UVE9NOiJib3R0b20tc3RhcnQiLEJPVFRPTUVORDoiYm90dG9tLWVuZCJ9LGY9e29mZnNldDowLGZsaXA6ITB9LF89e29mZnNldDoiKG51bWJlcnxzdHJpbmd8ZnVuY3Rpb24pIixmbGlwOiJib29sZWFuIn0sZz1mdW5jdGlvbigpe2Z1bmN0aW9uIGEodCxlKXt0aGlzLl9lbGVtZW50PXQsdGhpcy5fcG9wcGVyPW51bGwsdGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyhlKSx0aGlzLl9tZW51PXRoaXMuX2dldE1lbnVFbGVtZW50KCksdGhpcy5faW5OYXZiYXI9dGhpcy5fZGV0ZWN0TmF2YmFyKCksdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKX12YXIgZz1hLnByb3RvdHlwZTtyZXR1cm4gZy50b2dnbGU9ZnVuY3Rpb24oKXtpZighdGhpcy5fZWxlbWVudC5kaXNhYmxlZCYmIWUodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoYy5ESVNBQkxFRCkpe3ZhciB0PWEuX2dldFBhcmVudEZyb21FbGVtZW50KHRoaXMuX2VsZW1lbnQpLGk9ZSh0aGlzLl9tZW51KS5oYXNDbGFzcyhjLlNIT1cpO2lmKGEuX2NsZWFyTWVudXMoKSwhaSl7dmFyIHM9e3JlbGF0ZWRUYXJnZXQ6dGhpcy5fZWxlbWVudH0scj1lLkV2ZW50KGguU0hPVyxzKTtpZihlKHQpLnRyaWdnZXIociksIXIuaXNEZWZhdWx0UHJldmVudGVkKCkpe3ZhciBvPXRoaXMuX2VsZW1lbnQ7ZSh0KS5oYXNDbGFzcyhjLkRST1BVUCkmJihlKHRoaXMuX21lbnUpLmhhc0NsYXNzKGMuTUVOVUxFRlQpfHxlKHRoaXMuX21lbnUpLmhhc0NsYXNzKGMuTUVOVVJJR0hUKSkmJihvPXQpLHRoaXMuX3BvcHBlcj1uZXcgbihvLHRoaXMuX21lbnUsdGhpcy5fZ2V0UG9wcGVyQ29uZmlnKCkpLCJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiYhZSh0KS5jbG9zZXN0KHUuTkFWQkFSX05BVikubGVuZ3RoJiZlKCJib2R5IikuY2hpbGRyZW4oKS5vbigibW91c2VvdmVyIixudWxsLGUubm9vcCksdGhpcy5fZWxlbWVudC5mb2N1cygpLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwhMCksZSh0aGlzLl9tZW51KS50b2dnbGVDbGFzcyhjLlNIT1cpLGUodCkudG9nZ2xlQ2xhc3MoYy5TSE9XKS50cmlnZ2VyKGUuRXZlbnQoaC5TSE9XTixzKSl9fX19LGcuZGlzcG9zZT1mdW5jdGlvbigpe2UucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LGkpLGUodGhpcy5fZWxlbWVudCkub2ZmKG8pLHRoaXMuX2VsZW1lbnQ9bnVsbCx0aGlzLl9tZW51PW51bGwsbnVsbCE9PXRoaXMuX3BvcHBlciYmdGhpcy5fcG9wcGVyLmRlc3Ryb3koKSx0aGlzLl9wb3BwZXI9bnVsbH0sZy51cGRhdGU9ZnVuY3Rpb24oKXt0aGlzLl9pbk5hdmJhcj10aGlzLl9kZXRlY3ROYXZiYXIoKSxudWxsIT09dGhpcy5fcG9wcGVyJiZ0aGlzLl9wb3BwZXIuc2NoZWR1bGVVcGRhdGUoKX0sZy5fYWRkRXZlbnRMaXN0ZW5lcnM9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO2UodGhpcy5fZWxlbWVudCkub24oaC5DTElDSyxmdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSx0LnRvZ2dsZSgpfSl9LGcuX2dldENvbmZpZz1mdW5jdGlvbihuKXtyZXR1cm4gbj1lLmV4dGVuZCh7fSx0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHQsZSh0aGlzLl9lbGVtZW50KS5kYXRhKCksbikscy50eXBlQ2hlY2tDb25maWcodCxuLHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFR5cGUpLG59LGcuX2dldE1lbnVFbGVtZW50PWZ1bmN0aW9uKCl7aWYoIXRoaXMuX21lbnUpe3ZhciB0PWEuX2dldFBhcmVudEZyb21FbGVtZW50KHRoaXMuX2VsZW1lbnQpO3RoaXMuX21lbnU9ZSh0KS5maW5kKHUuTUVOVSlbMF19cmV0dXJuIHRoaXMuX21lbnV9LGcuX2dldFBsYWNlbWVudD1mdW5jdGlvbigpe3ZhciB0PWUodGhpcy5fZWxlbWVudCkucGFyZW50KCksbj1kLkJPVFRPTTtyZXR1cm4gdC5oYXNDbGFzcyhjLkRST1BVUCk/KG49ZC5UT1AsZSh0aGlzLl9tZW51KS5oYXNDbGFzcyhjLk1FTlVSSUdIVCkmJihuPWQuVE9QRU5EKSk6ZSh0aGlzLl9tZW51KS5oYXNDbGFzcyhjLk1FTlVSSUdIVCkmJihuPWQuQk9UVE9NRU5EKSxufSxnLl9kZXRlY3ROYXZiYXI9ZnVuY3Rpb24oKXtyZXR1cm4gZSh0aGlzLl9lbGVtZW50KS5jbG9zZXN0KCIubmF2YmFyIikubGVuZ3RoPjB9LGcuX2dldFBvcHBlckNvbmZpZz1mdW5jdGlvbigpe3ZhciB0PXRoaXMsbj17fTsiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fY29uZmlnLm9mZnNldD9uLmZuPWZ1bmN0aW9uKG4pe3JldHVybiBuLm9mZnNldHM9ZS5leHRlbmQoe30sbi5vZmZzZXRzLHQuX2NvbmZpZy5vZmZzZXQobi5vZmZzZXRzKXx8e30pLG59Om4ub2Zmc2V0PXRoaXMuX2NvbmZpZy5vZmZzZXQ7dmFyIGk9e3BsYWNlbWVudDp0aGlzLl9nZXRQbGFjZW1lbnQoKSxtb2RpZmllcnM6e29mZnNldDpuLGZsaXA6e2VuYWJsZWQ6dGhpcy5fY29uZmlnLmZsaXB9fX07cmV0dXJuIHRoaXMuX2luTmF2YmFyJiYoaS5tb2RpZmllcnMuYXBwbHlTdHlsZT17ZW5hYmxlZDohdGhpcy5faW5OYXZiYXJ9KSxpfSxhLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBuPWUodGhpcykuZGF0YShpKSxzPSJvYmplY3QiPT10eXBlb2YgdD90Om51bGw7aWYobnx8KG49bmV3IGEodGhpcyxzKSxlKHRoaXMpLmRhdGEoaSxuKSksInN0cmluZyI9PXR5cGVvZiB0KXtpZigidW5kZWZpbmVkIj09dHlwZW9mIG5bdF0pdGhyb3cgbmV3IEVycm9yKCdObyBtZXRob2QgbmFtZWQgIicrdCsnIicpO25bdF0oKX19KX0sYS5fY2xlYXJNZW51cz1mdW5jdGlvbih0KXtpZighdHx8MyE9PXQud2hpY2gmJigia2V5dXAiIT09dC50eXBlfHw5PT09dC53aGljaCkpZm9yKHZhciBuPWUubWFrZUFycmF5KGUodS5EQVRBX1RPR0dMRSkpLHM9MDtzPG4ubGVuZ3RoO3MrKyl7dmFyIHI9YS5fZ2V0UGFyZW50RnJvbUVsZW1lbnQobltzXSksbz1lKG5bc10pLmRhdGEoaSksbD17cmVsYXRlZFRhcmdldDpuW3NdfTtpZihvKXt2YXIgZD1vLl9tZW51O2lmKGUocikuaGFzQ2xhc3MoYy5TSE9XKSYmISh0JiYoImNsaWNrIj09PXQudHlwZSYmL2lucHV0fHRleHRhcmVhL2kudGVzdCh0LnRhcmdldC50YWdOYW1lKXx8ImtleXVwIj09PXQudHlwZSYmOT09PXQud2hpY2gpJiZlLmNvbnRhaW5zKHIsdC50YXJnZXQpKSl7dmFyIGY9ZS5FdmVudChoLkhJREUsbCk7ZShyKS50cmlnZ2VyKGYpLGYuaXNEZWZhdWx0UHJldmVudGVkKCl8fCgib250b3VjaHN0YXJ0ImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmZSgiYm9keSIpLmNoaWxkcmVuKCkub2ZmKCJtb3VzZW92ZXIiLG51bGwsZS5ub29wKSxuW3NdLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsImZhbHNlIiksZShkKS5yZW1vdmVDbGFzcyhjLlNIT1cpLGUocikucmVtb3ZlQ2xhc3MoYy5TSE9XKS50cmlnZ2VyKGUuRXZlbnQoaC5ISURERU4sbCkpKX19fX0sYS5fZ2V0UGFyZW50RnJvbUVsZW1lbnQ9ZnVuY3Rpb24odCl7dmFyIG4saT1zLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodCk7cmV0dXJuIGkmJihuPWUoaSlbMF0pLG58fHQucGFyZW50Tm9kZX0sYS5fZGF0YUFwaUtleWRvd25IYW5kbGVyPWZ1bmN0aW9uKHQpe2lmKCEoIWwudGVzdCh0LndoaWNoKXx8L2J1dHRvbi9pLnRlc3QodC50YXJnZXQudGFnTmFtZSkmJjMyPT09dC53aGljaHx8L2lucHV0fHRleHRhcmVhL2kudGVzdCh0LnRhcmdldC50YWdOYW1lKXx8KHQucHJldmVudERlZmF1bHQoKSx0LnN0b3BQcm9wYWdhdGlvbigpLHRoaXMuZGlzYWJsZWR8fGUodGhpcykuaGFzQ2xhc3MoYy5ESVNBQkxFRCkpKSl7dmFyIG49YS5fZ2V0UGFyZW50RnJvbUVsZW1lbnQodGhpcyksaT1lKG4pLmhhc0NsYXNzKGMuU0hPVyk7aWYoKGl8fDI3PT09dC53aGljaCYmMzI9PT10LndoaWNoKSYmKCFpfHwyNyE9PXQud2hpY2gmJjMyIT09dC53aGljaCkpe3ZhciBzPWUobikuZmluZCh1LlZJU0lCTEVfSVRFTVMpLmdldCgpO2lmKHMubGVuZ3RoKXt2YXIgcj1zLmluZGV4T2YodC50YXJnZXQpOzM4PT09dC53aGljaCYmcj4wJiZyLS0sNDA9PT10LndoaWNoJiZyPHMubGVuZ3RoLTEmJnIrKyxyPDAmJihyPTApLHNbcl0uZm9jdXMoKX19ZWxzZXtpZigyNz09PXQud2hpY2gpe3ZhciBvPWUobikuZmluZCh1LkRBVEFfVE9HR0xFKVswXTtlKG8pLnRyaWdnZXIoImZvY3VzIil9ZSh0aGlzKS50cmlnZ2VyKCJjbGljayIpfX19LHIoYSxudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC4wLjAtYmV0YS4yIn19LHtrZXk6IkRlZmF1bHQiLGdldDpmdW5jdGlvbigpe3JldHVybiBmfX0se2tleToiRGVmYXVsdFR5cGUiLGdldDpmdW5jdGlvbigpe3JldHVybiBffX1dKSxhfSgpO3JldHVybiBlKGRvY3VtZW50KS5vbihoLktFWURPV05fREFUQV9BUEksdS5EQVRBX1RPR0dMRSxnLl9kYXRhQXBpS2V5ZG93bkhhbmRsZXIpLm9uKGguS0VZRE9XTl9EQVRBX0FQSSx1Lk1FTlUsZy5fZGF0YUFwaUtleWRvd25IYW5kbGVyKS5vbihoLkNMSUNLX0RBVEFfQVBJKyIgIitoLktFWVVQX0RBVEFfQVBJLGcuX2NsZWFyTWVudXMpLm9uKGguQ0xJQ0tfREFUQV9BUEksdS5EQVRBX1RPR0dMRSxmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCksdC5zdG9wUHJvcGFnYXRpb24oKSxnLl9qUXVlcnlJbnRlcmZhY2UuY2FsbChlKHRoaXMpLCJ0b2dnbGUiKX0pLm9uKGguQ0xJQ0tfREFUQV9BUEksdS5GT1JNX0NISUxELGZ1bmN0aW9uKHQpe3Quc3RvcFByb3BhZ2F0aW9uKCl9KSxlLmZuW3RdPWcuX2pRdWVyeUludGVyZmFjZSxlLmZuW3RdLkNvbnN0cnVjdG9yPWcsZS5mblt0XS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGUuZm5bdF09YSxnLl9qUXVlcnlJbnRlcmZhY2V9LGd9KCksZD1mdW5jdGlvbigpe3ZhciB0PSJtb2RhbCIsbj0iLmJzLm1vZGFsIixpPWUuZm5bdF0sbz17YmFja2Ryb3A6ITAsa2V5Ym9hcmQ6ITAsZm9jdXM6ITAsc2hvdzohMH0sYT17YmFja2Ryb3A6Iihib29sZWFufHN0cmluZykiLGtleWJvYXJkOiJib29sZWFuIixmb2N1czoiYm9vbGVhbiIsc2hvdzoiYm9vbGVhbiJ9LGw9e0hJREU6ImhpZGUuYnMubW9kYWwiLEhJRERFTjoiaGlkZGVuLmJzLm1vZGFsIixTSE9XOiJzaG93LmJzLm1vZGFsIixTSE9XTjoic2hvd24uYnMubW9kYWwiLEZPQ1VTSU46ImZvY3VzaW4uYnMubW9kYWwiLFJFU0laRToicmVzaXplLmJzLm1vZGFsIixDTElDS19ESVNNSVNTOiJjbGljay5kaXNtaXNzLmJzLm1vZGFsIixLRVlET1dOX0RJU01JU1M6ImtleWRvd24uZGlzbWlzcy5icy5tb2RhbCIsTU9VU0VVUF9ESVNNSVNTOiJtb3VzZXVwLmRpc21pc3MuYnMubW9kYWwiLE1PVVNFRE9XTl9ESVNNSVNTOiJtb3VzZWRvd24uZGlzbWlzcy5icy5tb2RhbCIsQ0xJQ0tfREFUQV9BUEk6ImNsaWNrLmJzLm1vZGFsLmRhdGEtYXBpIn0saD17U0NST0xMQkFSX01FQVNVUkVSOiJtb2RhbC1zY3JvbGxiYXItbWVhc3VyZSIsQkFDS0RST1A6Im1vZGFsLWJhY2tkcm9wIixPUEVOOiJtb2RhbC1vcGVuIixGQURFOiJmYWRlIixTSE9XOiJzaG93In0sYz17RElBTE9HOiIubW9kYWwtZGlhbG9nIixEQVRBX1RPR0dMRTonW2RhdGEtdG9nZ2xlPSJtb2RhbCJdJyxEQVRBX0RJU01JU1M6J1tkYXRhLWRpc21pc3M9Im1vZGFsIl0nLEZJWEVEX0NPTlRFTlQ6Ii5maXhlZC10b3AsIC5maXhlZC1ib3R0b20sIC5pcy1maXhlZCwgLnN0aWNreS10b3AiLFNUSUNLWV9DT05URU5UOiIuc3RpY2t5LXRvcCIsTkFWQkFSX1RPR0dMRVI6Ii5uYXZiYXItdG9nZ2xlciJ9LHU9ZnVuY3Rpb24oKXtmdW5jdGlvbiBpKHQsbil7dGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyhuKSx0aGlzLl9lbGVtZW50PXQsdGhpcy5fZGlhbG9nPWUodCkuZmluZChjLkRJQUxPRylbMF0sdGhpcy5fYmFja2Ryb3A9bnVsbCx0aGlzLl9pc1Nob3duPSExLHRoaXMuX2lzQm9keU92ZXJmbG93aW5nPSExLHRoaXMuX2lnbm9yZUJhY2tkcm9wQ2xpY2s9ITEsdGhpcy5fb3JpZ2luYWxCb2R5UGFkZGluZz0wLHRoaXMuX3Njcm9sbGJhcldpZHRoPTB9dmFyIHU9aS5wcm90b3R5cGU7cmV0dXJuIHUudG9nZ2xlPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9pc1Nob3duP3RoaXMuaGlkZSgpOnRoaXMuc2hvdyh0KX0sdS5zaG93PWZ1bmN0aW9uKHQpe3ZhciBuPXRoaXM7aWYoIXRoaXMuX2lzVHJhbnNpdGlvbmluZyYmIXRoaXMuX2lzU2hvd24pe3Muc3VwcG9ydHNUcmFuc2l0aW9uRW5kKCkmJmUodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoaC5GQURFKSYmKHRoaXMuX2lzVHJhbnNpdGlvbmluZz0hMCk7dmFyIGk9ZS5FdmVudChsLlNIT1cse3JlbGF0ZWRUYXJnZXQ6dH0pO2UodGhpcy5fZWxlbWVudCkudHJpZ2dlcihpKSx0aGlzLl9pc1Nob3dufHxpLmlzRGVmYXVsdFByZXZlbnRlZCgpfHwodGhpcy5faXNTaG93bj0hMCx0aGlzLl9jaGVja1Njcm9sbGJhcigpLHRoaXMuX3NldFNjcm9sbGJhcigpLHRoaXMuX2FkanVzdERpYWxvZygpLGUoZG9jdW1lbnQuYm9keSkuYWRkQ2xhc3MoaC5PUEVOKSx0aGlzLl9zZXRFc2NhcGVFdmVudCgpLHRoaXMuX3NldFJlc2l6ZUV2ZW50KCksZSh0aGlzLl9lbGVtZW50KS5vbihsLkNMSUNLX0RJU01JU1MsYy5EQVRBX0RJU01JU1MsZnVuY3Rpb24odCl7cmV0dXJuIG4uaGlkZSh0KX0pLGUodGhpcy5fZGlhbG9nKS5vbihsLk1PVVNFRE9XTl9ESVNNSVNTLGZ1bmN0aW9uKCl7ZShuLl9lbGVtZW50KS5vbmUobC5NT1VTRVVQX0RJU01JU1MsZnVuY3Rpb24odCl7ZSh0LnRhcmdldCkuaXMobi5fZWxlbWVudCkmJihuLl9pZ25vcmVCYWNrZHJvcENsaWNrPSEwKX0pfSksdGhpcy5fc2hvd0JhY2tkcm9wKGZ1bmN0aW9uKCl7cmV0dXJuIG4uX3Nob3dFbGVtZW50KHQpfSkpfX0sdS5oaWRlPWZ1bmN0aW9uKHQpe3ZhciBuPXRoaXM7aWYodCYmdC5wcmV2ZW50RGVmYXVsdCgpLCF0aGlzLl9pc1RyYW5zaXRpb25pbmcmJnRoaXMuX2lzU2hvd24pe3ZhciBpPWUuRXZlbnQobC5ISURFKTtpZihlKHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIoaSksdGhpcy5faXNTaG93biYmIWkuaXNEZWZhdWx0UHJldmVudGVkKCkpe3RoaXMuX2lzU2hvd249ITE7dmFyIHI9cy5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSYmZSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhoLkZBREUpO3ImJih0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITApLHRoaXMuX3NldEVzY2FwZUV2ZW50KCksdGhpcy5fc2V0UmVzaXplRXZlbnQoKSxlKGRvY3VtZW50KS5vZmYobC5GT0NVU0lOKSxlKHRoaXMuX2VsZW1lbnQpLnJlbW92ZUNsYXNzKGguU0hPVyksZSh0aGlzLl9lbGVtZW50KS5vZmYobC5DTElDS19ESVNNSVNTKSxlKHRoaXMuX2RpYWxvZykub2ZmKGwuTU9VU0VET1dOX0RJU01JU1MpLHI/ZSh0aGlzLl9lbGVtZW50KS5vbmUocy5UUkFOU0lUSU9OX0VORCxmdW5jdGlvbih0KXtyZXR1cm4gbi5faGlkZU1vZGFsKHQpfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQoMzAwKTp0aGlzLl9oaWRlTW9kYWwoKX19fSx1LmRpc3Bvc2U9ZnVuY3Rpb24oKXtlLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCwiYnMubW9kYWwiKSxlKHdpbmRvdyxkb2N1bWVudCx0aGlzLl9lbGVtZW50LHRoaXMuX2JhY2tkcm9wKS5vZmYobiksdGhpcy5fY29uZmlnPW51bGwsdGhpcy5fZWxlbWVudD1udWxsLHRoaXMuX2RpYWxvZz1udWxsLHRoaXMuX2JhY2tkcm9wPW51bGwsdGhpcy5faXNTaG93bj1udWxsLHRoaXMuX2lzQm9keU92ZXJmbG93aW5nPW51bGwsdGhpcy5faWdub3JlQmFja2Ryb3BDbGljaz1udWxsLHRoaXMuX3Njcm9sbGJhcldpZHRoPW51bGx9LHUuaGFuZGxlVXBkYXRlPWZ1bmN0aW9uKCl7dGhpcy5fYWRqdXN0RGlhbG9nKCl9LHUuX2dldENvbmZpZz1mdW5jdGlvbihuKXtyZXR1cm4gbj1lLmV4dGVuZCh7fSxvLG4pLHMudHlwZUNoZWNrQ29uZmlnKHQsbixhKSxufSx1Ll9zaG93RWxlbWVudD1mdW5jdGlvbih0KXt2YXIgbj10aGlzLGk9cy5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSYmZSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhoLkZBREUpO3RoaXMuX2VsZW1lbnQucGFyZW50Tm9kZSYmdGhpcy5fZWxlbWVudC5wYXJlbnROb2RlLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREV8fGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGhpcy5fZWxlbWVudCksdGhpcy5fZWxlbWVudC5zdHlsZS5kaXNwbGF5PSJibG9jayIsdGhpcy5fZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiksdGhpcy5fZWxlbWVudC5zY3JvbGxUb3A9MCxpJiZzLnJlZmxvdyh0aGlzLl9lbGVtZW50KSxlKHRoaXMuX2VsZW1lbnQpLmFkZENsYXNzKGguU0hPVyksdGhpcy5fY29uZmlnLmZvY3VzJiZ0aGlzLl9lbmZvcmNlRm9jdXMoKTt2YXIgcj1lLkV2ZW50KGwuU0hPV04se3JlbGF0ZWRUYXJnZXQ6dH0pLG89ZnVuY3Rpb24oKXtuLl9jb25maWcuZm9jdXMmJm4uX2VsZW1lbnQuZm9jdXMoKSxuLl9pc1RyYW5zaXRpb25pbmc9ITEsZShuLl9lbGVtZW50KS50cmlnZ2VyKHIpfTtpP2UodGhpcy5fZGlhbG9nKS5vbmUocy5UUkFOU0lUSU9OX0VORCxvKS5lbXVsYXRlVHJhbnNpdGlvbkVuZCgzMDApOm8oKX0sdS5fZW5mb3JjZUZvY3VzPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztlKGRvY3VtZW50KS5vZmYobC5GT0NVU0lOKS5vbihsLkZPQ1VTSU4sZnVuY3Rpb24obil7ZG9jdW1lbnQ9PT1uLnRhcmdldHx8dC5fZWxlbWVudD09PW4udGFyZ2V0fHxlKHQuX2VsZW1lbnQpLmhhcyhuLnRhcmdldCkubGVuZ3RofHx0Ll9lbGVtZW50LmZvY3VzKCl9KX0sdS5fc2V0RXNjYXBlRXZlbnQ9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuX2lzU2hvd24mJnRoaXMuX2NvbmZpZy5rZXlib2FyZD9lKHRoaXMuX2VsZW1lbnQpLm9uKGwuS0VZRE9XTl9ESVNNSVNTLGZ1bmN0aW9uKGUpezI3PT09ZS53aGljaCYmKGUucHJldmVudERlZmF1bHQoKSx0LmhpZGUoKSl9KTp0aGlzLl9pc1Nob3dufHxlKHRoaXMuX2VsZW1lbnQpLm9mZihsLktFWURPV05fRElTTUlTUyl9LHUuX3NldFJlc2l6ZUV2ZW50PWZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLl9pc1Nob3duP2Uod2luZG93KS5vbihsLlJFU0laRSxmdW5jdGlvbihlKXtyZXR1cm4gdC5oYW5kbGVVcGRhdGUoZSl9KTplKHdpbmRvdykub2ZmKGwuUkVTSVpFKX0sdS5faGlkZU1vZGFsPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXk9Im5vbmUiLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsITApLHRoaXMuX2lzVHJhbnNpdGlvbmluZz0hMSx0aGlzLl9zaG93QmFja2Ryb3AoZnVuY3Rpb24oKXtlKGRvY3VtZW50LmJvZHkpLnJlbW92ZUNsYXNzKGguT1BFTiksdC5fcmVzZXRBZGp1c3RtZW50cygpLHQuX3Jlc2V0U2Nyb2xsYmFyKCksZSh0Ll9lbGVtZW50KS50cmlnZ2VyKGwuSElEREVOKX0pfSx1Ll9yZW1vdmVCYWNrZHJvcD1mdW5jdGlvbigpe3RoaXMuX2JhY2tkcm9wJiYoZSh0aGlzLl9iYWNrZHJvcCkucmVtb3ZlKCksdGhpcy5fYmFja2Ryb3A9bnVsbCl9LHUuX3Nob3dCYWNrZHJvcD1mdW5jdGlvbih0KXt2YXIgbj10aGlzLGk9ZSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhoLkZBREUpP2guRkFERToiIjtpZih0aGlzLl9pc1Nob3duJiZ0aGlzLl9jb25maWcuYmFja2Ryb3Ape3ZhciByPXMuc3VwcG9ydHNUcmFuc2l0aW9uRW5kKCkmJmk7aWYodGhpcy5fYmFja2Ryb3A9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5fYmFja2Ryb3AuY2xhc3NOYW1lPWguQkFDS0RST1AsaSYmZSh0aGlzLl9iYWNrZHJvcCkuYWRkQ2xhc3MoaSksZSh0aGlzLl9iYWNrZHJvcCkuYXBwZW5kVG8oZG9jdW1lbnQuYm9keSksZSh0aGlzLl9lbGVtZW50KS5vbihsLkNMSUNLX0RJU01JU1MsZnVuY3Rpb24odCl7bi5faWdub3JlQmFja2Ryb3BDbGljaz9uLl9pZ25vcmVCYWNrZHJvcENsaWNrPSExOnQudGFyZ2V0PT09dC5jdXJyZW50VGFyZ2V0JiYoInN0YXRpYyI9PT1uLl9jb25maWcuYmFja2Ryb3A/bi5fZWxlbWVudC5mb2N1cygpOm4uaGlkZSgpKX0pLHImJnMucmVmbG93KHRoaXMuX2JhY2tkcm9wKSxlKHRoaXMuX2JhY2tkcm9wKS5hZGRDbGFzcyhoLlNIT1cpLCF0KXJldHVybjtpZighcilyZXR1cm4gdm9pZCB0KCk7ZSh0aGlzLl9iYWNrZHJvcCkub25lKHMuVFJBTlNJVElPTl9FTkQsdCkuZW11bGF0ZVRyYW5zaXRpb25FbmQoMTUwKX1lbHNlIGlmKCF0aGlzLl9pc1Nob3duJiZ0aGlzLl9iYWNrZHJvcCl7ZSh0aGlzLl9iYWNrZHJvcCkucmVtb3ZlQ2xhc3MoaC5TSE9XKTt2YXIgbz1mdW5jdGlvbigpe24uX3JlbW92ZUJhY2tkcm9wKCksdCYmdCgpfTtzLnN1cHBvcnRzVHJhbnNpdGlvbkVuZCgpJiZlKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGguRkFERSk/ZSh0aGlzLl9iYWNrZHJvcCkub25lKHMuVFJBTlNJVElPTl9FTkQsbykuZW11bGF0ZVRyYW5zaXRpb25FbmQoMTUwKTpvKCl9ZWxzZSB0JiZ0KCl9LHUuX2FkanVzdERpYWxvZz1mdW5jdGlvbigpe3ZhciB0PXRoaXMuX2VsZW1lbnQuc2Nyb2xsSGVpZ2h0PmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7IXRoaXMuX2lzQm9keU92ZXJmbG93aW5nJiZ0JiYodGhpcy5fZWxlbWVudC5zdHlsZS5wYWRkaW5nTGVmdD10aGlzLl9zY3JvbGxiYXJXaWR0aCsicHgiKSx0aGlzLl9pc0JvZHlPdmVyZmxvd2luZyYmIXQmJih0aGlzLl9lbGVtZW50LnN0eWxlLnBhZGRpbmdSaWdodD10aGlzLl9zY3JvbGxiYXJXaWR0aCsicHgiKX0sdS5fcmVzZXRBZGp1c3RtZW50cz1mdW5jdGlvbigpe3RoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ0xlZnQ9IiIsdGhpcy5fZWxlbWVudC5zdHlsZS5wYWRkaW5nUmlnaHQ9IiJ9LHUuX2NoZWNrU2Nyb2xsYmFyPWZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuYm9keS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0aGlzLl9pc0JvZHlPdmVyZmxvd2luZz10LmxlZnQrdC5yaWdodDx3aW5kb3cuaW5uZXJXaWR0aCx0aGlzLl9zY3JvbGxiYXJXaWR0aD10aGlzLl9nZXRTY3JvbGxiYXJXaWR0aCgpfSx1Ll9zZXRTY3JvbGxiYXI9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO2lmKHRoaXMuX2lzQm9keU92ZXJmbG93aW5nKXtlKGMuRklYRURfQ09OVEVOVCkuZWFjaChmdW5jdGlvbihuLGkpe3ZhciBzPWUoaSlbMF0uc3R5bGUucGFkZGluZ1JpZ2h0LHI9ZShpKS5jc3MoInBhZGRpbmctcmlnaHQiKTtlKGkpLmRhdGEoInBhZGRpbmctcmlnaHQiLHMpLmNzcygicGFkZGluZy1yaWdodCIscGFyc2VGbG9hdChyKSt0Ll9zY3JvbGxiYXJXaWR0aCsicHgiKX0pLGUoYy5TVElDS1lfQ09OVEVOVCkuZWFjaChmdW5jdGlvbihuLGkpe3ZhciBzPWUoaSlbMF0uc3R5bGUubWFyZ2luUmlnaHQscj1lKGkpLmNzcygibWFyZ2luLXJpZ2h0Iik7ZShpKS5kYXRhKCJtYXJnaW4tcmlnaHQiLHMpLmNzcygibWFyZ2luLXJpZ2h0IixwYXJzZUZsb2F0KHIpLXQuX3Njcm9sbGJhcldpZHRoKyJweCIpfSksZShjLk5BVkJBUl9UT0dHTEVSKS5lYWNoKGZ1bmN0aW9uKG4saSl7dmFyIHM9ZShpKVswXS5zdHlsZS5tYXJnaW5SaWdodCxyPWUoaSkuY3NzKCJtYXJnaW4tcmlnaHQiKTtlKGkpLmRhdGEoIm1hcmdpbi1yaWdodCIscykuY3NzKCJtYXJnaW4tcmlnaHQiLHBhcnNlRmxvYXQocikrdC5fc2Nyb2xsYmFyV2lkdGgrInB4Iil9KTt2YXIgbj1kb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodCxpPWUoImJvZHkiKS5jc3MoInBhZGRpbmctcmlnaHQiKTtlKCJib2R5IikuZGF0YSgicGFkZGluZy1yaWdodCIsbikuY3NzKCJwYWRkaW5nLXJpZ2h0IixwYXJzZUZsb2F0KGkpK3RoaXMuX3Njcm9sbGJhcldpZHRoKyJweCIpfX0sdS5fcmVzZXRTY3JvbGxiYXI9ZnVuY3Rpb24oKXtlKGMuRklYRURfQ09OVEVOVCkuZWFjaChmdW5jdGlvbih0LG4pe3ZhciBpPWUobikuZGF0YSgicGFkZGluZy1yaWdodCIpOyJ1bmRlZmluZWQiIT10eXBlb2YgaSYmZShuKS5jc3MoInBhZGRpbmctcmlnaHQiLGkpLnJlbW92ZURhdGEoInBhZGRpbmctcmlnaHQiKX0pLGUoYy5TVElDS1lfQ09OVEVOVCsiLCAiK2MuTkFWQkFSX1RPR0dMRVIpLmVhY2goZnVuY3Rpb24odCxuKXt2YXIgaT1lKG4pLmRhdGEoIm1hcmdpbi1yaWdodCIpOyJ1bmRlZmluZWQiIT10eXBlb2YgaSYmZShuKS5jc3MoIm1hcmdpbi1yaWdodCIsaSkucmVtb3ZlRGF0YSgibWFyZ2luLXJpZ2h0Iil9KTt2YXIgdD1lKCJib2R5IikuZGF0YSgicGFkZGluZy1yaWdodCIpOyJ1bmRlZmluZWQiIT10eXBlb2YgdCYmZSgiYm9keSIpLmNzcygicGFkZGluZy1yaWdodCIsdCkucmVtb3ZlRGF0YSgicGFkZGluZy1yaWdodCIpfSx1Ll9nZXRTY3JvbGxiYXJXaWR0aD1mdW5jdGlvbigpe3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuY2xhc3NOYW1lPWguU0NST0xMQkFSX01FQVNVUkVSLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodCk7dmFyIGU9dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aC10LmNsaWVudFdpZHRoO3JldHVybiBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHQpLGV9LGkuX2pRdWVyeUludGVyZmFjZT1mdW5jdGlvbih0LG4pe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgcz1lKHRoaXMpLmRhdGEoImJzLm1vZGFsIikscj1lLmV4dGVuZCh7fSxpLkRlZmF1bHQsZSh0aGlzKS5kYXRhKCksIm9iamVjdCI9PXR5cGVvZiB0JiZ0KTtpZihzfHwocz1uZXcgaSh0aGlzLHIpLGUodGhpcykuZGF0YSgiYnMubW9kYWwiLHMpKSwic3RyaW5nIj09dHlwZW9mIHQpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2Ygc1t0XSl0aHJvdyBuZXcgRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJyt0KyciJyk7c1t0XShuKX1lbHNlIHIuc2hvdyYmcy5zaG93KG4pfSl9LHIoaSxudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC4wLjAtYmV0YS4yIn19LHtrZXk6IkRlZmF1bHQiLGdldDpmdW5jdGlvbigpe3JldHVybiBvfX1dKSxpfSgpO3JldHVybiBlKGRvY3VtZW50KS5vbihsLkNMSUNLX0RBVEFfQVBJLGMuREFUQV9UT0dHTEUsZnVuY3Rpb24odCl7dmFyIG4saT10aGlzLHI9cy5nZXRTZWxlY3RvckZyb21FbGVtZW50KHRoaXMpO3ImJihuPWUocilbMF0pO3ZhciBvPWUobikuZGF0YSgiYnMubW9kYWwiKT8idG9nZ2xlIjplLmV4dGVuZCh7fSxlKG4pLmRhdGEoKSxlKHRoaXMpLmRhdGEoKSk7IkEiIT09dGhpcy50YWdOYW1lJiYiQVJFQSIhPT10aGlzLnRhZ05hbWV8fHQucHJldmVudERlZmF1bHQoKTt2YXIgYT1lKG4pLm9uZShsLlNIT1csZnVuY3Rpb24odCl7dC5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8YS5vbmUobC5ISURERU4sZnVuY3Rpb24oKXtlKGkpLmlzKCI6dmlzaWJsZSIpJiZpLmZvY3VzKCl9KX0pO3UuX2pRdWVyeUludGVyZmFjZS5jYWxsKGUobiksbyx0aGlzKX0pLGUuZm5bdF09dS5falF1ZXJ5SW50ZXJmYWNlLGUuZm5bdF0uQ29uc3RydWN0b3I9dSxlLmZuW3RdLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gZS5mblt0XT1pLHUuX2pRdWVyeUludGVyZmFjZX0sdX0oKSxmPWZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBuKXRocm93IG5ldyBFcnJvcigiQm9vdHN0cmFwIHRvb2x0aXBzIHJlcXVpcmUgUG9wcGVyLmpzIChodHRwczovL3BvcHBlci5qcy5vcmcpIik7dmFyIHQ9InRvb2x0aXAiLGk9Ii5icy50b29sdGlwIixvPWUuZm5bdF0sYT1uZXcgUmVnRXhwKCIoXnxcXHMpYnMtdG9vbHRpcFxcUysiLCJnIiksbD17YW5pbWF0aW9uOiJib29sZWFuIix0ZW1wbGF0ZToic3RyaW5nIix0aXRsZToiKHN0cmluZ3xlbGVtZW50fGZ1bmN0aW9uKSIsdHJpZ2dlcjoic3RyaW5nIixkZWxheToiKG51bWJlcnxvYmplY3QpIixodG1sOiJib29sZWFuIixzZWxlY3RvcjoiKHN0cmluZ3xib29sZWFuKSIscGxhY2VtZW50OiIoc3RyaW5nfGZ1bmN0aW9uKSIsb2Zmc2V0OiIobnVtYmVyfHN0cmluZykiLGNvbnRhaW5lcjoiKHN0cmluZ3xlbGVtZW50fGJvb2xlYW4pIixmYWxsYmFja1BsYWNlbWVudDoiKHN0cmluZ3xhcnJheSkifSxoPXtBVVRPOiJhdXRvIixUT1A6InRvcCIsUklHSFQ6InJpZ2h0IixCT1RUT006ImJvdHRvbSIsTEVGVDoibGVmdCJ9LGM9e2FuaW1hdGlvbjohMCx0ZW1wbGF0ZTonPGRpdiBjbGFzcz0idG9vbHRpcCIgcm9sZT0idG9vbHRpcCI+PGRpdiBjbGFzcz0iYXJyb3ciPjwvZGl2PjxkaXYgY2xhc3M9InRvb2x0aXAtaW5uZXIiPjwvZGl2PjwvZGl2PicsdHJpZ2dlcjoiaG92ZXIgZm9jdXMiLHRpdGxlOiIiLGRlbGF5OjAsaHRtbDohMSxzZWxlY3RvcjohMSxwbGFjZW1lbnQ6InRvcCIsb2Zmc2V0OjAsY29udGFpbmVyOiExLGZhbGxiYWNrUGxhY2VtZW50OiJmbGlwIn0sdT17U0hPVzoic2hvdyIsT1VUOiJvdXQifSxkPXtISURFOiJoaWRlIitpLEhJRERFTjoiaGlkZGVuIitpLFNIT1c6InNob3ciK2ksU0hPV046InNob3duIitpLElOU0VSVEVEOiJpbnNlcnRlZCIraSxDTElDSzoiY2xpY2siK2ksRk9DVVNJTjoiZm9jdXNpbiIraSxGT0NVU09VVDoiZm9jdXNvdXQiK2ksTU9VU0VFTlRFUjoibW91c2VlbnRlciIraSxNT1VTRUxFQVZFOiJtb3VzZWxlYXZlIitpfSxmPXtGQURFOiJmYWRlIixTSE9XOiJzaG93In0sXz17VE9PTFRJUDoiLnRvb2x0aXAiLFRPT0xUSVBfSU5ORVI6Ii50b29sdGlwLWlubmVyIixBUlJPVzoiLmFycm93In0sZz17SE9WRVI6ImhvdmVyIixGT0NVUzoiZm9jdXMiLENMSUNLOiJjbGljayIsTUFOVUFMOiJtYW51YWwifSxtPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gbyh0LGUpe3RoaXMuX2lzRW5hYmxlZD0hMCx0aGlzLl90aW1lb3V0PTAsdGhpcy5faG92ZXJTdGF0ZT0iIix0aGlzLl9hY3RpdmVUcmlnZ2VyPXt9LHRoaXMuX3BvcHBlcj1udWxsLHRoaXMuZWxlbWVudD10LHRoaXMuY29uZmlnPXRoaXMuX2dldENvbmZpZyhlKSx0aGlzLnRpcD1udWxsLHRoaXMuX3NldExpc3RlbmVycygpfXZhciBtPW8ucHJvdG90eXBlO3JldHVybiBtLmVuYWJsZT1mdW5jdGlvbigpe3RoaXMuX2lzRW5hYmxlZD0hMH0sbS5kaXNhYmxlPWZ1bmN0aW9uKCl7dGhpcy5faXNFbmFibGVkPSExfSxtLnRvZ2dsZUVuYWJsZWQ9ZnVuY3Rpb24oKXt0aGlzLl9pc0VuYWJsZWQ9IXRoaXMuX2lzRW5hYmxlZH0sbS50b2dnbGU9ZnVuY3Rpb24odCl7aWYodGhpcy5faXNFbmFibGVkKWlmKHQpe3ZhciBuPXRoaXMuY29uc3RydWN0b3IuREFUQV9LRVksaT1lKHQuY3VycmVudFRhcmdldCkuZGF0YShuKTtpfHwoaT1uZXcgdGhpcy5jb25zdHJ1Y3Rvcih0LmN1cnJlbnRUYXJnZXQsdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksZSh0LmN1cnJlbnRUYXJnZXQpLmRhdGEobixpKSksaS5fYWN0aXZlVHJpZ2dlci5jbGljaz0haS5fYWN0aXZlVHJpZ2dlci5jbGljayxpLl9pc1dpdGhBY3RpdmVUcmlnZ2VyKCk/aS5fZW50ZXIobnVsbCxpKTppLl9sZWF2ZShudWxsLGkpfWVsc2V7aWYoZSh0aGlzLmdldFRpcEVsZW1lbnQoKSkuaGFzQ2xhc3MoZi5TSE9XKSlyZXR1cm4gdm9pZCB0aGlzLl9sZWF2ZShudWxsLHRoaXMpO3RoaXMuX2VudGVyKG51bGwsdGhpcyl9fSxtLmRpc3Bvc2U9ZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQodGhpcy5fdGltZW91dCksZS5yZW1vdmVEYXRhKHRoaXMuZWxlbWVudCx0aGlzLmNvbnN0cnVjdG9yLkRBVEFfS0VZKSxlKHRoaXMuZWxlbWVudCkub2ZmKHRoaXMuY29uc3RydWN0b3IuRVZFTlRfS0VZKSxlKHRoaXMuZWxlbWVudCkuY2xvc2VzdCgiLm1vZGFsIikub2ZmKCJoaWRlLmJzLm1vZGFsIiksdGhpcy50aXAmJmUodGhpcy50aXApLnJlbW92ZSgpLHRoaXMuX2lzRW5hYmxlZD1udWxsLHRoaXMuX3RpbWVvdXQ9bnVsbCx0aGlzLl9ob3ZlclN0YXRlPW51bGwsdGhpcy5fYWN0aXZlVHJpZ2dlcj1udWxsLG51bGwhPT10aGlzLl9wb3BwZXImJnRoaXMuX3BvcHBlci5kZXN0cm95KCksdGhpcy5fcG9wcGVyPW51bGwsdGhpcy5lbGVtZW50PW51bGwsdGhpcy5jb25maWc9bnVsbCx0aGlzLnRpcD1udWxsfSxtLnNob3c9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO2lmKCJub25lIj09PWUodGhpcy5lbGVtZW50KS5jc3MoImRpc3BsYXkiKSl0aHJvdyBuZXcgRXJyb3IoIlBsZWFzZSB1c2Ugc2hvdyBvbiB2aXNpYmxlIGVsZW1lbnRzIik7dmFyIGk9ZS5FdmVudCh0aGlzLmNvbnN0cnVjdG9yLkV2ZW50LlNIT1cpO2lmKHRoaXMuaXNXaXRoQ29udGVudCgpJiZ0aGlzLl9pc0VuYWJsZWQpe2UodGhpcy5lbGVtZW50KS50cmlnZ2VyKGkpO3ZhciByPWUuY29udGFpbnModGhpcy5lbGVtZW50Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHRoaXMuZWxlbWVudCk7aWYoaS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8IXIpcmV0dXJuO3ZhciBhPXRoaXMuZ2V0VGlwRWxlbWVudCgpLGw9cy5nZXRVSUQodGhpcy5jb25zdHJ1Y3Rvci5OQU1FKTthLnNldEF0dHJpYnV0ZSgiaWQiLGwpLHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtZGVzY3JpYmVkYnkiLGwpLHRoaXMuc2V0Q29udGVudCgpLHRoaXMuY29uZmlnLmFuaW1hdGlvbiYmZShhKS5hZGRDbGFzcyhmLkZBREUpO3ZhciBoPSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLmNvbmZpZy5wbGFjZW1lbnQ/dGhpcy5jb25maWcucGxhY2VtZW50LmNhbGwodGhpcyxhLHRoaXMuZWxlbWVudCk6dGhpcy5jb25maWcucGxhY2VtZW50LGM9dGhpcy5fZ2V0QXR0YWNobWVudChoKTt0aGlzLmFkZEF0dGFjaG1lbnRDbGFzcyhjKTt2YXIgZD0hMT09PXRoaXMuY29uZmlnLmNvbnRhaW5lcj9kb2N1bWVudC5ib2R5OmUodGhpcy5jb25maWcuY29udGFpbmVyKTtlKGEpLmRhdGEodGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWSx0aGlzKSxlLmNvbnRhaW5zKHRoaXMuZWxlbWVudC5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCx0aGlzLnRpcCl8fGUoYSkuYXBwZW5kVG8oZCksZSh0aGlzLmVsZW1lbnQpLnRyaWdnZXIodGhpcy5jb25zdHJ1Y3Rvci5FdmVudC5JTlNFUlRFRCksdGhpcy5fcG9wcGVyPW5ldyBuKHRoaXMuZWxlbWVudCxhLHtwbGFjZW1lbnQ6Yyxtb2RpZmllcnM6e29mZnNldDp7b2Zmc2V0OnRoaXMuY29uZmlnLm9mZnNldH0sZmxpcDp7YmVoYXZpb3I6dGhpcy5jb25maWcuZmFsbGJhY2tQbGFjZW1lbnR9LGFycm93OntlbGVtZW50Ol8uQVJST1d9fSxvbkNyZWF0ZTpmdW5jdGlvbihlKXtlLm9yaWdpbmFsUGxhY2VtZW50IT09ZS5wbGFjZW1lbnQmJnQuX2hhbmRsZVBvcHBlclBsYWNlbWVudENoYW5nZShlKX0sb25VcGRhdGU6ZnVuY3Rpb24oZSl7dC5faGFuZGxlUG9wcGVyUGxhY2VtZW50Q2hhbmdlKGUpfX0pLGUoYSkuYWRkQ2xhc3MoZi5TSE9XKSwib250b3VjaHN0YXJ0ImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmZSgiYm9keSIpLmNoaWxkcmVuKCkub24oIm1vdXNlb3ZlciIsbnVsbCxlLm5vb3ApO3ZhciBnPWZ1bmN0aW9uKCl7dC5jb25maWcuYW5pbWF0aW9uJiZ0Ll9maXhUcmFuc2l0aW9uKCk7dmFyIG49dC5faG92ZXJTdGF0ZTt0Ll9ob3ZlclN0YXRlPW51bGwsZSh0LmVsZW1lbnQpLnRyaWdnZXIodC5jb25zdHJ1Y3Rvci5FdmVudC5TSE9XTiksbj09PXUuT1VUJiZ0Ll9sZWF2ZShudWxsLHQpfTtzLnN1cHBvcnRzVHJhbnNpdGlvbkVuZCgpJiZlKHRoaXMudGlwKS5oYXNDbGFzcyhmLkZBREUpP2UodGhpcy50aXApLm9uZShzLlRSQU5TSVRJT05fRU5ELGcpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKG8uX1RSQU5TSVRJT05fRFVSQVRJT04pOmcoKX19LG0uaGlkZT1mdW5jdGlvbih0KXt2YXIgbj10aGlzLGk9dGhpcy5nZXRUaXBFbGVtZW50KCkscj1lLkV2ZW50KHRoaXMuY29uc3RydWN0b3IuRXZlbnQuSElERSksbz1mdW5jdGlvbigpe24uX2hvdmVyU3RhdGUhPT11LlNIT1cmJmkucGFyZW50Tm9kZSYmaS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGkpLG4uX2NsZWFuVGlwQ2xhc3MoKSxuLmVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5IiksZShuLmVsZW1lbnQpLnRyaWdnZXIobi5jb25zdHJ1Y3Rvci5FdmVudC5ISURERU4pLG51bGwhPT1uLl9wb3BwZXImJm4uX3BvcHBlci5kZXN0cm95KCksdCYmdCgpfTtlKHRoaXMuZWxlbWVudCkudHJpZ2dlcihyKSxyLmlzRGVmYXVsdFByZXZlbnRlZCgpfHwoZShpKS5yZW1vdmVDbGFzcyhmLlNIT1cpLCJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiZlKCJib2R5IikuY2hpbGRyZW4oKS5vZmYoIm1vdXNlb3ZlciIsbnVsbCxlLm5vb3ApLHRoaXMuX2FjdGl2ZVRyaWdnZXJbZy5DTElDS109ITEsdGhpcy5fYWN0aXZlVHJpZ2dlcltnLkZPQ1VTXT0hMSx0aGlzLl9hY3RpdmVUcmlnZ2VyW2cuSE9WRVJdPSExLHMuc3VwcG9ydHNUcmFuc2l0aW9uRW5kKCkmJmUodGhpcy50aXApLmhhc0NsYXNzKGYuRkFERSk/ZShpKS5vbmUocy5UUkFOU0lUSU9OX0VORCxvKS5lbXVsYXRlVHJhbnNpdGlvbkVuZCgxNTApOm8oKSx0aGlzLl9ob3ZlclN0YXRlPSIiKX0sbS51cGRhdGU9ZnVuY3Rpb24oKXtudWxsIT09dGhpcy5fcG9wcGVyJiZ0aGlzLl9wb3BwZXIuc2NoZWR1bGVVcGRhdGUoKX0sbS5pc1dpdGhDb250ZW50PWZ1bmN0aW9uKCl7cmV0dXJuIEJvb2xlYW4odGhpcy5nZXRUaXRsZSgpKX0sbS5hZGRBdHRhY2htZW50Q2xhc3M9ZnVuY3Rpb24odCl7ZSh0aGlzLmdldFRpcEVsZW1lbnQoKSkuYWRkQ2xhc3MoImJzLXRvb2x0aXAtIit0KX0sbS5nZXRUaXBFbGVtZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudGlwPXRoaXMudGlwfHxlKHRoaXMuY29uZmlnLnRlbXBsYXRlKVswXSx0aGlzLnRpcH0sbS5zZXRDb250ZW50PWZ1bmN0aW9uKCl7dmFyIHQ9ZSh0aGlzLmdldFRpcEVsZW1lbnQoKSk7dGhpcy5zZXRFbGVtZW50Q29udGVudCh0LmZpbmQoXy5UT09MVElQX0lOTkVSKSx0aGlzLmdldFRpdGxlKCkpLHQucmVtb3ZlQ2xhc3MoZi5GQURFKyIgIitmLlNIT1cpfSxtLnNldEVsZW1lbnRDb250ZW50PWZ1bmN0aW9uKHQsbil7dmFyIGk9dGhpcy5jb25maWcuaHRtbDsib2JqZWN0Ij09dHlwZW9mIG4mJihuLm5vZGVUeXBlfHxuLmpxdWVyeSk/aT9lKG4pLnBhcmVudCgpLmlzKHQpfHx0LmVtcHR5KCkuYXBwZW5kKG4pOnQudGV4dChlKG4pLnRleHQoKSk6dFtpPyJodG1sIjoidGV4dCJdKG4pfSxtLmdldFRpdGxlPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1vcmlnaW5hbC10aXRsZSIpO3JldHVybiB0fHwodD0iZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5jb25maWcudGl0bGU/dGhpcy5jb25maWcudGl0bGUuY2FsbCh0aGlzLmVsZW1lbnQpOnRoaXMuY29uZmlnLnRpdGxlKSx0fSxtLl9nZXRBdHRhY2htZW50PWZ1bmN0aW9uKHQpe3JldHVybiBoW3QudG9VcHBlckNhc2UoKV19LG0uX3NldExpc3RlbmVycz1mdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy5jb25maWcudHJpZ2dlci5zcGxpdCgiICIpLmZvckVhY2goZnVuY3Rpb24obil7aWYoImNsaWNrIj09PW4pZSh0LmVsZW1lbnQpLm9uKHQuY29uc3RydWN0b3IuRXZlbnQuQ0xJQ0ssdC5jb25maWcuc2VsZWN0b3IsZnVuY3Rpb24oZSl7cmV0dXJuIHQudG9nZ2xlKGUpfSk7ZWxzZSBpZihuIT09Zy5NQU5VQUwpe3ZhciBpPW49PT1nLkhPVkVSP3QuY29uc3RydWN0b3IuRXZlbnQuTU9VU0VFTlRFUjp0LmNvbnN0cnVjdG9yLkV2ZW50LkZPQ1VTSU4scz1uPT09Zy5IT1ZFUj90LmNvbnN0cnVjdG9yLkV2ZW50Lk1PVVNFTEVBVkU6dC5jb25zdHJ1Y3Rvci5FdmVudC5GT0NVU09VVDtlKHQuZWxlbWVudCkub24oaSx0LmNvbmZpZy5zZWxlY3RvcixmdW5jdGlvbihlKXtyZXR1cm4gdC5fZW50ZXIoZSl9KS5vbihzLHQuY29uZmlnLnNlbGVjdG9yLGZ1bmN0aW9uKGUpe3JldHVybiB0Ll9sZWF2ZShlKX0pfWUodC5lbGVtZW50KS5jbG9zZXN0KCIubW9kYWwiKS5vbigiaGlkZS5icy5tb2RhbCIsZnVuY3Rpb24oKXtyZXR1cm4gdC5oaWRlKCl9KX0pLHRoaXMuY29uZmlnLnNlbGVjdG9yP3RoaXMuY29uZmlnPWUuZXh0ZW5kKHt9LHRoaXMuY29uZmlnLHt0cmlnZ2VyOiJtYW51YWwiLHNlbGVjdG9yOiIifSk6dGhpcy5fZml4VGl0bGUoKX0sbS5fZml4VGl0bGU9ZnVuY3Rpb24oKXt2YXIgdD10eXBlb2YgdGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1vcmlnaW5hbC10aXRsZSIpOyh0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJ0aXRsZSIpfHwic3RyaW5nIiE9PXQpJiYodGhpcy5lbGVtZW50LnNldEF0dHJpYnV0ZSgiZGF0YS1vcmlnaW5hbC10aXRsZSIsdGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgidGl0bGUiKXx8IiIpLHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiIikpfSxtLl9lbnRlcj1mdW5jdGlvbih0LG4pe3ZhciBpPXRoaXMuY29uc3RydWN0b3IuREFUQV9LRVk7KG49bnx8ZSh0LmN1cnJlbnRUYXJnZXQpLmRhdGEoaSkpfHwobj1uZXcgdGhpcy5jb25zdHJ1Y3Rvcih0LmN1cnJlbnRUYXJnZXQsdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksZSh0LmN1cnJlbnRUYXJnZXQpLmRhdGEoaSxuKSksdCYmKG4uX2FjdGl2ZVRyaWdnZXJbImZvY3VzaW4iPT09dC50eXBlP2cuRk9DVVM6Zy5IT1ZFUl09ITApLGUobi5nZXRUaXBFbGVtZW50KCkpLmhhc0NsYXNzKGYuU0hPVyl8fG4uX2hvdmVyU3RhdGU9PT11LlNIT1c/bi5faG92ZXJTdGF0ZT11LlNIT1c6KGNsZWFyVGltZW91dChuLl90aW1lb3V0KSxuLl9ob3ZlclN0YXRlPXUuU0hPVyxuLmNvbmZpZy5kZWxheSYmbi5jb25maWcuZGVsYXkuc2hvdz9uLl90aW1lb3V0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtuLl9ob3ZlclN0YXRlPT09dS5TSE9XJiZuLnNob3coKX0sbi5jb25maWcuZGVsYXkuc2hvdyk6bi5zaG93KCkpfSxtLl9sZWF2ZT1mdW5jdGlvbih0LG4pe3ZhciBpPXRoaXMuY29uc3RydWN0b3IuREFUQV9LRVk7KG49bnx8ZSh0LmN1cnJlbnRUYXJnZXQpLmRhdGEoaSkpfHwobj1uZXcgdGhpcy5jb25zdHJ1Y3Rvcih0LmN1cnJlbnRUYXJnZXQsdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksZSh0LmN1cnJlbnRUYXJnZXQpLmRhdGEoaSxuKSksdCYmKG4uX2FjdGl2ZVRyaWdnZXJbImZvY3Vzb3V0Ij09PXQudHlwZT9nLkZPQ1VTOmcuSE9WRVJdPSExKSxuLl9pc1dpdGhBY3RpdmVUcmlnZ2VyKCl8fChjbGVhclRpbWVvdXQobi5fdGltZW91dCksbi5faG92ZXJTdGF0ZT11Lk9VVCxuLmNvbmZpZy5kZWxheSYmbi5jb25maWcuZGVsYXkuaGlkZT9uLl90aW1lb3V0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtuLl9ob3ZlclN0YXRlPT09dS5PVVQmJm4uaGlkZSgpfSxuLmNvbmZpZy5kZWxheS5oaWRlKTpuLmhpZGUoKSl9LG0uX2lzV2l0aEFjdGl2ZVRyaWdnZXI9ZnVuY3Rpb24oKXtmb3IodmFyIHQgaW4gdGhpcy5fYWN0aXZlVHJpZ2dlcilpZih0aGlzLl9hY3RpdmVUcmlnZ2VyW3RdKXJldHVybiEwO3JldHVybiExfSxtLl9nZXRDb25maWc9ZnVuY3Rpb24obil7cmV0dXJuIm51bWJlciI9PXR5cGVvZihuPWUuZXh0ZW5kKHt9LHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdCxlKHRoaXMuZWxlbWVudCkuZGF0YSgpLG4pKS5kZWxheSYmKG4uZGVsYXk9e3Nob3c6bi5kZWxheSxoaWRlOm4uZGVsYXl9KSwibnVtYmVyIj09dHlwZW9mIG4udGl0bGUmJihuLnRpdGxlPW4udGl0bGUudG9TdHJpbmcoKSksIm51bWJlciI9PXR5cGVvZiBuLmNvbnRlbnQmJihuLmNvbnRlbnQ9bi5jb250ZW50LnRvU3RyaW5nKCkpLHMudHlwZUNoZWNrQ29uZmlnKHQsbix0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHRUeXBlKSxufSxtLl9nZXREZWxlZ2F0ZUNvbmZpZz1mdW5jdGlvbigpe3ZhciB0PXt9O2lmKHRoaXMuY29uZmlnKWZvcih2YXIgZSBpbiB0aGlzLmNvbmZpZyl0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHRbZV0hPT10aGlzLmNvbmZpZ1tlXSYmKHRbZV09dGhpcy5jb25maWdbZV0pO3JldHVybiB0fSxtLl9jbGVhblRpcENsYXNzPWZ1bmN0aW9uKCl7dmFyIHQ9ZSh0aGlzLmdldFRpcEVsZW1lbnQoKSksbj10LmF0dHIoImNsYXNzIikubWF0Y2goYSk7bnVsbCE9PW4mJm4ubGVuZ3RoPjAmJnQucmVtb3ZlQ2xhc3Mobi5qb2luKCIiKSl9LG0uX2hhbmRsZVBvcHBlclBsYWNlbWVudENoYW5nZT1mdW5jdGlvbih0KXt0aGlzLl9jbGVhblRpcENsYXNzKCksdGhpcy5hZGRBdHRhY2htZW50Q2xhc3ModGhpcy5fZ2V0QXR0YWNobWVudCh0LnBsYWNlbWVudCkpfSxtLl9maXhUcmFuc2l0aW9uPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5nZXRUaXBFbGVtZW50KCksbj10aGlzLmNvbmZpZy5hbmltYXRpb247bnVsbD09PXQuZ2V0QXR0cmlidXRlKCJ4LXBsYWNlbWVudCIpJiYoZSh0KS5yZW1vdmVDbGFzcyhmLkZBREUpLHRoaXMuY29uZmlnLmFuaW1hdGlvbj0hMSx0aGlzLmhpZGUoKSx0aGlzLnNob3coKSx0aGlzLmNvbmZpZy5hbmltYXRpb249bil9LG8uX2pRdWVyeUludGVyZmFjZT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIG49ZSh0aGlzKS5kYXRhKCJicy50b29sdGlwIiksaT0ib2JqZWN0Ij09dHlwZW9mIHQmJnQ7aWYoKG58fCEvZGlzcG9zZXxoaWRlLy50ZXN0KHQpKSYmKG58fChuPW5ldyBvKHRoaXMsaSksZSh0aGlzKS5kYXRhKCJicy50b29sdGlwIixuKSksInN0cmluZyI9PXR5cGVvZiB0KSl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBuW3RdKXRocm93IG5ldyBFcnJvcignTm8gbWV0aG9kIG5hbWVkICInK3QrJyInKTtuW3RdKCl9fSl9LHIobyxudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC4wLjAtYmV0YS4yIn19LHtrZXk6IkRlZmF1bHQiLGdldDpmdW5jdGlvbigpe3JldHVybiBjfX0se2tleToiTkFNRSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHR9fSx7a2V5OiJEQVRBX0tFWSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuImJzLnRvb2x0aXAifX0se2tleToiRXZlbnQiLGdldDpmdW5jdGlvbigpe3JldHVybiBkfX0se2tleToiRVZFTlRfS0VZIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gaX19LHtrZXk6IkRlZmF1bHRUeXBlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbH19XSksb30oKTtyZXR1cm4gZS5mblt0XT1tLl9qUXVlcnlJbnRlcmZhY2UsZS5mblt0XS5Db25zdHJ1Y3Rvcj1tLGUuZm5bdF0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBlLmZuW3RdPW8sbS5falF1ZXJ5SW50ZXJmYWNlfSxtfSgpLF89ZnVuY3Rpb24oKXt2YXIgdD0icG9wb3ZlciIsbj0iLmJzLnBvcG92ZXIiLGk9ZS5mblt0XSxzPW5ldyBSZWdFeHAoIihefFxccylicy1wb3BvdmVyXFxTKyIsImciKSxhPWUuZXh0ZW5kKHt9LGYuRGVmYXVsdCx7cGxhY2VtZW50OiJyaWdodCIsdHJpZ2dlcjoiY2xpY2siLGNvbnRlbnQ6IiIsdGVtcGxhdGU6JzxkaXYgY2xhc3M9InBvcG92ZXIiIHJvbGU9InRvb2x0aXAiPjxkaXYgY2xhc3M9ImFycm93Ij48L2Rpdj48aDMgY2xhc3M9InBvcG92ZXItaGVhZGVyIj48L2gzPjxkaXYgY2xhc3M9InBvcG92ZXItYm9keSI+PC9kaXY+PC9kaXY+J30pLGw9ZS5leHRlbmQoe30sZi5EZWZhdWx0VHlwZSx7Y29udGVudDoiKHN0cmluZ3xlbGVtZW50fGZ1bmN0aW9uKSJ9KSxoPXtGQURFOiJmYWRlIixTSE9XOiJzaG93In0sYz17VElUTEU6Ii5wb3BvdmVyLWhlYWRlciIsQ09OVEVOVDoiLnBvcG92ZXItYm9keSJ9LHU9e0hJREU6ImhpZGUiK24sSElEREVOOiJoaWRkZW4iK24sU0hPVzoic2hvdyIrbixTSE9XTjoic2hvd24iK24sSU5TRVJURUQ6Imluc2VydGVkIituLENMSUNLOiJjbGljayIrbixGT0NVU0lOOiJmb2N1c2luIituLEZPQ1VTT1VUOiJmb2N1c291dCIrbixNT1VTRUVOVEVSOiJtb3VzZWVudGVyIituLE1PVVNFTEVBVkU6Im1vdXNlbGVhdmUiK259LGQ9ZnVuY3Rpb24oaSl7ZnVuY3Rpb24gZCgpe3JldHVybiBpLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8dGhpc31vKGQsaSk7dmFyIGY9ZC5wcm90b3R5cGU7cmV0dXJuIGYuaXNXaXRoQ29udGVudD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdldFRpdGxlKCl8fHRoaXMuX2dldENvbnRlbnQoKX0sZi5hZGRBdHRhY2htZW50Q2xhc3M9ZnVuY3Rpb24odCl7ZSh0aGlzLmdldFRpcEVsZW1lbnQoKSkuYWRkQ2xhc3MoImJzLXBvcG92ZXItIit0KX0sZi5nZXRUaXBFbGVtZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudGlwPXRoaXMudGlwfHxlKHRoaXMuY29uZmlnLnRlbXBsYXRlKVswXSx0aGlzLnRpcH0sZi5zZXRDb250ZW50PWZ1bmN0aW9uKCl7dmFyIHQ9ZSh0aGlzLmdldFRpcEVsZW1lbnQoKSk7dGhpcy5zZXRFbGVtZW50Q29udGVudCh0LmZpbmQoYy5USVRMRSksdGhpcy5nZXRUaXRsZSgpKSx0aGlzLnNldEVsZW1lbnRDb250ZW50KHQuZmluZChjLkNPTlRFTlQpLHRoaXMuX2dldENvbnRlbnQoKSksdC5yZW1vdmVDbGFzcyhoLkZBREUrIiAiK2guU0hPVyl9LGYuX2dldENvbnRlbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1jb250ZW50Iil8fCgiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5jb25maWcuY29udGVudD90aGlzLmNvbmZpZy5jb250ZW50LmNhbGwodGhpcy5lbGVtZW50KTp0aGlzLmNvbmZpZy5jb250ZW50KX0sZi5fY2xlYW5UaXBDbGFzcz1mdW5jdGlvbigpe3ZhciB0PWUodGhpcy5nZXRUaXBFbGVtZW50KCkpLG49dC5hdHRyKCJjbGFzcyIpLm1hdGNoKHMpO251bGwhPT1uJiZuLmxlbmd0aD4wJiZ0LnJlbW92ZUNsYXNzKG4uam9pbigiIikpfSxkLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBuPWUodGhpcykuZGF0YSgiYnMucG9wb3ZlciIpLGk9Im9iamVjdCI9PXR5cGVvZiB0P3Q6bnVsbDtpZigobnx8IS9kZXN0cm95fGhpZGUvLnRlc3QodCkpJiYobnx8KG49bmV3IGQodGhpcyxpKSxlKHRoaXMpLmRhdGEoImJzLnBvcG92ZXIiLG4pKSwic3RyaW5nIj09dHlwZW9mIHQpKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIG5bdF0pdGhyb3cgbmV3IEVycm9yKCdObyBtZXRob2QgbmFtZWQgIicrdCsnIicpO25bdF0oKX19KX0scihkLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjAuMC1iZXRhLjIifX0se2tleToiRGVmYXVsdCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9fSx7a2V5OiJOQU1FIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdH19LHtrZXk6IkRBVEFfS0VZIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iYnMucG9wb3ZlciJ9fSx7a2V5OiJFdmVudCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHV9fSx7a2V5OiJFVkVOVF9LRVkiLGdldDpmdW5jdGlvbigpe3JldHVybiBufX0se2tleToiRGVmYXVsdFR5cGUiLGdldDpmdW5jdGlvbigpe3JldHVybiBsfX1dKSxkfShmKTtyZXR1cm4gZS5mblt0XT1kLl9qUXVlcnlJbnRlcmZhY2UsZS5mblt0XS5Db25zdHJ1Y3Rvcj1kLGUuZm5bdF0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBlLmZuW3RdPWksZC5falF1ZXJ5SW50ZXJmYWNlfSxkfSgpLGc9ZnVuY3Rpb24oKXt2YXIgdD0ic2Nyb2xsc3B5IixuPWUuZm5bdF0saT17b2Zmc2V0OjEwLG1ldGhvZDoiYXV0byIsdGFyZ2V0OiIifSxvPXtvZmZzZXQ6Im51bWJlciIsbWV0aG9kOiJzdHJpbmciLHRhcmdldDoiKHN0cmluZ3xlbGVtZW50KSJ9LGE9e0FDVElWQVRFOiJhY3RpdmF0ZS5icy5zY3JvbGxzcHkiLFNDUk9MTDoic2Nyb2xsLmJzLnNjcm9sbHNweSIsTE9BRF9EQVRBX0FQSToibG9hZC5icy5zY3JvbGxzcHkuZGF0YS1hcGkifSxsPXtEUk9QRE9XTl9JVEVNOiJkcm9wZG93bi1pdGVtIixEUk9QRE9XTl9NRU5VOiJkcm9wZG93bi1tZW51IixBQ1RJVkU6ImFjdGl2ZSJ9LGg9e0RBVEFfU1BZOidbZGF0YS1zcHk9InNjcm9sbCJdJyxBQ1RJVkU6Ii5hY3RpdmUiLE5BVl9MSVNUX0dST1VQOiIubmF2LCAubGlzdC1ncm91cCIsTkFWX0xJTktTOiIubmF2LWxpbmsiLE5BVl9JVEVNUzoiLm5hdi1pdGVtIixMSVNUX0lURU1TOiIubGlzdC1ncm91cC1pdGVtIixEUk9QRE9XTjoiLmRyb3Bkb3duIixEUk9QRE9XTl9JVEVNUzoiLmRyb3Bkb3duLWl0ZW0iLERST1BET1dOX1RPR0dMRToiLmRyb3Bkb3duLXRvZ2dsZSJ9LGM9e09GRlNFVDoib2Zmc2V0IixQT1NJVElPTjoicG9zaXRpb24ifSx1PWZ1bmN0aW9uKCl7ZnVuY3Rpb24gbih0LG4pe3ZhciBpPXRoaXM7dGhpcy5fZWxlbWVudD10LHRoaXMuX3Njcm9sbEVsZW1lbnQ9IkJPRFkiPT09dC50YWdOYW1lP3dpbmRvdzp0LHRoaXMuX2NvbmZpZz10aGlzLl9nZXRDb25maWcobiksdGhpcy5fc2VsZWN0b3I9dGhpcy5fY29uZmlnLnRhcmdldCsiICIraC5OQVZfTElOS1MrIiwiK3RoaXMuX2NvbmZpZy50YXJnZXQrIiAiK2guTElTVF9JVEVNUysiLCIrdGhpcy5fY29uZmlnLnRhcmdldCsiICIraC5EUk9QRE9XTl9JVEVNUyx0aGlzLl9vZmZzZXRzPVtdLHRoaXMuX3RhcmdldHM9W10sdGhpcy5fYWN0aXZlVGFyZ2V0PW51bGwsdGhpcy5fc2Nyb2xsSGVpZ2h0PTAsZSh0aGlzLl9zY3JvbGxFbGVtZW50KS5vbihhLlNDUk9MTCxmdW5jdGlvbih0KXtyZXR1cm4gaS5fcHJvY2Vzcyh0KX0pLHRoaXMucmVmcmVzaCgpLHRoaXMuX3Byb2Nlc3MoKX12YXIgdT1uLnByb3RvdHlwZTtyZXR1cm4gdS5yZWZyZXNoPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxuPXRoaXMuX3Njcm9sbEVsZW1lbnQhPT10aGlzLl9zY3JvbGxFbGVtZW50LndpbmRvdz9jLlBPU0lUSU9OOmMuT0ZGU0VULGk9ImF1dG8iPT09dGhpcy5fY29uZmlnLm1ldGhvZD9uOnRoaXMuX2NvbmZpZy5tZXRob2Qscj1pPT09Yy5QT1NJVElPTj90aGlzLl9nZXRTY3JvbGxUb3AoKTowO3RoaXMuX29mZnNldHM9W10sdGhpcy5fdGFyZ2V0cz1bXSx0aGlzLl9zY3JvbGxIZWlnaHQ9dGhpcy5fZ2V0U2Nyb2xsSGVpZ2h0KCksZS5tYWtlQXJyYXkoZSh0aGlzLl9zZWxlY3RvcikpLm1hcChmdW5jdGlvbih0KXt2YXIgbixvPXMuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCh0KTtpZihvJiYobj1lKG8pWzBdKSxuKXt2YXIgYT1uLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2lmKGEud2lkdGh8fGEuaGVpZ2h0KXJldHVybltlKG4pW2ldKCkudG9wK3Isb119cmV0dXJuIG51bGx9KS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIHR9KS5zb3J0KGZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRbMF0tZVswXX0pLmZvckVhY2goZnVuY3Rpb24oZSl7dC5fb2Zmc2V0cy5wdXNoKGVbMF0pLHQuX3RhcmdldHMucHVzaChlWzFdKX0pfSx1LmRpc3Bvc2U9ZnVuY3Rpb24oKXtlLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCwiYnMuc2Nyb2xsc3B5IiksZSh0aGlzLl9zY3JvbGxFbGVtZW50KS5vZmYoIi5icy5zY3JvbGxzcHkiKSx0aGlzLl9lbGVtZW50PW51bGwsdGhpcy5fc2Nyb2xsRWxlbWVudD1udWxsLHRoaXMuX2NvbmZpZz1udWxsLHRoaXMuX3NlbGVjdG9yPW51bGwsdGhpcy5fb2Zmc2V0cz1udWxsLHRoaXMuX3RhcmdldHM9bnVsbCx0aGlzLl9hY3RpdmVUYXJnZXQ9bnVsbCx0aGlzLl9zY3JvbGxIZWlnaHQ9bnVsbH0sdS5fZ2V0Q29uZmlnPWZ1bmN0aW9uKG4pe2lmKCJzdHJpbmciIT10eXBlb2Yobj1lLmV4dGVuZCh7fSxpLG4pKS50YXJnZXQpe3ZhciByPWUobi50YXJnZXQpLmF0dHIoImlkIik7cnx8KHI9cy5nZXRVSUQodCksZShuLnRhcmdldCkuYXR0cigiaWQiLHIpKSxuLnRhcmdldD0iIyIrcn1yZXR1cm4gcy50eXBlQ2hlY2tDb25maWcodCxuLG8pLG59LHUuX2dldFNjcm9sbFRvcD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9zY3JvbGxFbGVtZW50PT09d2luZG93P3RoaXMuX3Njcm9sbEVsZW1lbnQucGFnZVlPZmZzZXQ6dGhpcy5fc2Nyb2xsRWxlbWVudC5zY3JvbGxUb3B9LHUuX2dldFNjcm9sbEhlaWdodD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9zY3JvbGxFbGVtZW50LnNjcm9sbEhlaWdodHx8TWF0aC5tYXgoZG9jdW1lbnQuYm9keS5zY3JvbGxIZWlnaHQsZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbEhlaWdodCl9LHUuX2dldE9mZnNldEhlaWdodD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9zY3JvbGxFbGVtZW50PT09d2luZG93P3dpbmRvdy5pbm5lckhlaWdodDp0aGlzLl9zY3JvbGxFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodH0sdS5fcHJvY2Vzcz1mdW5jdGlvbigpe3ZhciB0PXRoaXMuX2dldFNjcm9sbFRvcCgpK3RoaXMuX2NvbmZpZy5vZmZzZXQsZT10aGlzLl9nZXRTY3JvbGxIZWlnaHQoKSxuPXRoaXMuX2NvbmZpZy5vZmZzZXQrZS10aGlzLl9nZXRPZmZzZXRIZWlnaHQoKTtpZih0aGlzLl9zY3JvbGxIZWlnaHQhPT1lJiZ0aGlzLnJlZnJlc2goKSx0Pj1uKXt2YXIgaT10aGlzLl90YXJnZXRzW3RoaXMuX3RhcmdldHMubGVuZ3RoLTFdO3RoaXMuX2FjdGl2ZVRhcmdldCE9PWkmJnRoaXMuX2FjdGl2YXRlKGkpfWVsc2V7aWYodGhpcy5fYWN0aXZlVGFyZ2V0JiZ0PHRoaXMuX29mZnNldHNbMF0mJnRoaXMuX29mZnNldHNbMF0+MClyZXR1cm4gdGhpcy5fYWN0aXZlVGFyZ2V0PW51bGwsdm9pZCB0aGlzLl9jbGVhcigpO2Zvcih2YXIgcz10aGlzLl9vZmZzZXRzLmxlbmd0aDtzLS07KXRoaXMuX2FjdGl2ZVRhcmdldCE9PXRoaXMuX3RhcmdldHNbc10mJnQ+PXRoaXMuX29mZnNldHNbc10mJigidW5kZWZpbmVkIj09dHlwZW9mIHRoaXMuX29mZnNldHNbcysxXXx8dDx0aGlzLl9vZmZzZXRzW3MrMV0pJiZ0aGlzLl9hY3RpdmF0ZSh0aGlzLl90YXJnZXRzW3NdKX19LHUuX2FjdGl2YXRlPWZ1bmN0aW9uKHQpe3RoaXMuX2FjdGl2ZVRhcmdldD10LHRoaXMuX2NsZWFyKCk7dmFyIG49dGhpcy5fc2VsZWN0b3Iuc3BsaXQoIiwiKTtuPW4ubWFwKGZ1bmN0aW9uKGUpe3JldHVybiBlKydbZGF0YS10YXJnZXQ9IicrdCsnIl0sJytlKydbaHJlZj0iJyt0KyciXSd9KTt2YXIgaT1lKG4uam9pbigiLCIpKTtpLmhhc0NsYXNzKGwuRFJPUERPV05fSVRFTSk/KGkuY2xvc2VzdChoLkRST1BET1dOKS5maW5kKGguRFJPUERPV05fVE9HR0xFKS5hZGRDbGFzcyhsLkFDVElWRSksaS5hZGRDbGFzcyhsLkFDVElWRSkpOihpLmFkZENsYXNzKGwuQUNUSVZFKSxpLnBhcmVudHMoaC5OQVZfTElTVF9HUk9VUCkucHJldihoLk5BVl9MSU5LUysiLCAiK2guTElTVF9JVEVNUykuYWRkQ2xhc3MobC5BQ1RJVkUpLGkucGFyZW50cyhoLk5BVl9MSVNUX0dST1VQKS5wcmV2KGguTkFWX0lURU1TKS5jaGlsZHJlbihoLk5BVl9MSU5LUykuYWRkQ2xhc3MobC5BQ1RJVkUpKSxlKHRoaXMuX3Njcm9sbEVsZW1lbnQpLnRyaWdnZXIoYS5BQ1RJVkFURSx7cmVsYXRlZFRhcmdldDp0fSl9LHUuX2NsZWFyPWZ1bmN0aW9uKCl7ZSh0aGlzLl9zZWxlY3RvcikuZmlsdGVyKGguQUNUSVZFKS5yZW1vdmVDbGFzcyhsLkFDVElWRSl9LG4uX2pRdWVyeUludGVyZmFjZT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGk9ZSh0aGlzKS5kYXRhKCJicy5zY3JvbGxzcHkiKSxzPSJvYmplY3QiPT10eXBlb2YgdCYmdDtpZihpfHwoaT1uZXcgbih0aGlzLHMpLGUodGhpcykuZGF0YSgiYnMuc2Nyb2xsc3B5IixpKSksInN0cmluZyI9PXR5cGVvZiB0KXtpZigidW5kZWZpbmVkIj09dHlwZW9mIGlbdF0pdGhyb3cgbmV3IEVycm9yKCdObyBtZXRob2QgbmFtZWQgIicrdCsnIicpO2lbdF0oKX19KX0scihuLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjAuMC1iZXRhLjIifX0se2tleToiRGVmYXVsdCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGl9fV0pLG59KCk7cmV0dXJuIGUod2luZG93KS5vbihhLkxPQURfREFUQV9BUEksZnVuY3Rpb24oKXtmb3IodmFyIHQ9ZS5tYWtlQXJyYXkoZShoLkRBVEFfU1BZKSksbj10Lmxlbmd0aDtuLS07KXt2YXIgaT1lKHRbbl0pO3UuX2pRdWVyeUludGVyZmFjZS5jYWxsKGksaS5kYXRhKCkpfX0pLGUuZm5bdF09dS5falF1ZXJ5SW50ZXJmYWNlLGUuZm5bdF0uQ29uc3RydWN0b3I9dSxlLmZuW3RdLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gZS5mblt0XT1uLHUuX2pRdWVyeUludGVyZmFjZX0sdX0oKSxtPWZ1bmN0aW9uKCl7dmFyIHQ9ZS5mbi50YWIsbj17SElERToiaGlkZS5icy50YWIiLEhJRERFTjoiaGlkZGVuLmJzLnRhYiIsU0hPVzoic2hvdy5icy50YWIiLFNIT1dOOiJzaG93bi5icy50YWIiLENMSUNLX0RBVEFfQVBJOiJjbGljay5icy50YWIuZGF0YS1hcGkifSxpPXtEUk9QRE9XTl9NRU5VOiJkcm9wZG93bi1tZW51IixBQ1RJVkU6ImFjdGl2ZSIsRElTQUJMRUQ6ImRpc2FibGVkIixGQURFOiJmYWRlIixTSE9XOiJzaG93In0sbz17RFJPUERPV046Ii5kcm9wZG93biIsTkFWX0xJU1RfR1JPVVA6Ii5uYXYsIC5saXN0LWdyb3VwIixBQ1RJVkU6Ii5hY3RpdmUiLEFDVElWRV9VTDoiPiBsaSA+IC5hY3RpdmUiLERBVEFfVE9HR0xFOidbZGF0YS10b2dnbGU9InRhYiJdLCBbZGF0YS10b2dnbGU9InBpbGwiXSwgW2RhdGEtdG9nZ2xlPSJsaXN0Il0nLERST1BET1dOX1RPR0dMRToiLmRyb3Bkb3duLXRvZ2dsZSIsRFJPUERPV05fQUNUSVZFX0NISUxEOiI+IC5kcm9wZG93bi1tZW51IC5hY3RpdmUifSxhPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCh0KXt0aGlzLl9lbGVtZW50PXR9dmFyIGE9dC5wcm90b3R5cGU7cmV0dXJuIGEuc2hvdz1mdW5jdGlvbigpe3ZhciB0PXRoaXM7aWYoISh0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUmJnRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZS5ub2RlVHlwZT09PU5vZGUuRUxFTUVOVF9OT0RFJiZlKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGkuQUNUSVZFKXx8ZSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhpLkRJU0FCTEVEKSkpe3ZhciByLGEsbD1lKHRoaXMuX2VsZW1lbnQpLmNsb3Nlc3Qoby5OQVZfTElTVF9HUk9VUClbMF0saD1zLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7aWYobCl7dmFyIGM9IlVMIj09PWwubm9kZU5hbWU/by5BQ1RJVkVfVUw6by5BQ1RJVkU7YT1lLm1ha2VBcnJheShlKGwpLmZpbmQoYykpLGE9YVthLmxlbmd0aC0xXX12YXIgdT1lLkV2ZW50KG4uSElERSx7cmVsYXRlZFRhcmdldDp0aGlzLl9lbGVtZW50fSksZD1lLkV2ZW50KG4uU0hPVyx7cmVsYXRlZFRhcmdldDphfSk7aWYoYSYmZShhKS50cmlnZ2VyKHUpLGUodGhpcy5fZWxlbWVudCkudHJpZ2dlcihkKSwhZC5pc0RlZmF1bHRQcmV2ZW50ZWQoKSYmIXUuaXNEZWZhdWx0UHJldmVudGVkKCkpe2gmJihyPWUoaClbMF0pLHRoaXMuX2FjdGl2YXRlKHRoaXMuX2VsZW1lbnQsbCk7dmFyIGY9ZnVuY3Rpb24oKXt2YXIgaT1lLkV2ZW50KG4uSElEREVOLHtyZWxhdGVkVGFyZ2V0OnQuX2VsZW1lbnR9KSxzPWUuRXZlbnQobi5TSE9XTix7cmVsYXRlZFRhcmdldDphfSk7ZShhKS50cmlnZ2VyKGkpLGUodC5fZWxlbWVudCkudHJpZ2dlcihzKX07cj90aGlzLl9hY3RpdmF0ZShyLHIucGFyZW50Tm9kZSxmKTpmKCl9fX0sYS5kaXNwb3NlPWZ1bmN0aW9uKCl7ZS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsImJzLnRhYiIpLHRoaXMuX2VsZW1lbnQ9bnVsbH0sYS5fYWN0aXZhdGU9ZnVuY3Rpb24odCxuLHIpe3ZhciBhLGw9dGhpcyxoPShhPSJVTCI9PT1uLm5vZGVOYW1lP2UobikuZmluZChvLkFDVElWRV9VTCk6ZShuKS5jaGlsZHJlbihvLkFDVElWRSkpWzBdLGM9ciYmcy5zdXBwb3J0c1RyYW5zaXRpb25FbmQoKSYmaCYmZShoKS5oYXNDbGFzcyhpLkZBREUpLHU9ZnVuY3Rpb24oKXtyZXR1cm4gbC5fdHJhbnNpdGlvbkNvbXBsZXRlKHQsaCxjLHIpfTtoJiZjP2UoaCkub25lKHMuVFJBTlNJVElPTl9FTkQsdSkuZW11bGF0ZVRyYW5zaXRpb25FbmQoMTUwKTp1KCksaCYmZShoKS5yZW1vdmVDbGFzcyhpLlNIT1cpfSxhLl90cmFuc2l0aW9uQ29tcGxldGU9ZnVuY3Rpb24odCxuLHIsYSl7aWYobil7ZShuKS5yZW1vdmVDbGFzcyhpLkFDVElWRSk7dmFyIGw9ZShuLnBhcmVudE5vZGUpLmZpbmQoby5EUk9QRE9XTl9BQ1RJVkVfQ0hJTEQpWzBdO2wmJmUobCkucmVtb3ZlQ2xhc3MoaS5BQ1RJVkUpLCJ0YWIiPT09bi5nZXRBdHRyaWJ1dGUoInJvbGUiKSYmbi5zZXRBdHRyaWJ1dGUoImFyaWEtc2VsZWN0ZWQiLCExKX1pZihlKHQpLmFkZENsYXNzKGkuQUNUSVZFKSwidGFiIj09PXQuZ2V0QXR0cmlidXRlKCJyb2xlIikmJnQuc2V0QXR0cmlidXRlKCJhcmlhLXNlbGVjdGVkIiwhMCkscj8ocy5yZWZsb3codCksZSh0KS5hZGRDbGFzcyhpLlNIT1cpKTplKHQpLnJlbW92ZUNsYXNzKGkuRkFERSksdC5wYXJlbnROb2RlJiZlKHQucGFyZW50Tm9kZSkuaGFzQ2xhc3MoaS5EUk9QRE9XTl9NRU5VKSl7dmFyIGg9ZSh0KS5jbG9zZXN0KG8uRFJPUERPV04pWzBdO2gmJmUoaCkuZmluZChvLkRST1BET1dOX1RPR0dMRSkuYWRkQ2xhc3MoaS5BQ1RJVkUpLHQuc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwhMCl9YSYmYSgpfSx0Ll9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBpPWUodGhpcykscz1pLmRhdGEoImJzLnRhYiIpO2lmKHN8fChzPW5ldyB0KHRoaXMpLGkuZGF0YSgiYnMudGFiIixzKSksInN0cmluZyI9PXR5cGVvZiBuKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIHNbbl0pdGhyb3cgbmV3IEVycm9yKCdObyBtZXRob2QgbmFtZWQgIicrbisnIicpO3Nbbl0oKX19KX0scih0LG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjAuMC1iZXRhLjIifX1dKSx0fSgpO3JldHVybiBlKGRvY3VtZW50KS5vbihuLkNMSUNLX0RBVEFfQVBJLG8uREFUQV9UT0dHTEUsZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpLGEuX2pRdWVyeUludGVyZmFjZS5jYWxsKGUodGhpcyksInNob3ciKX0pLGUuZm4udGFiPWEuX2pRdWVyeUludGVyZmFjZSxlLmZuLnRhYi5Db25zdHJ1Y3Rvcj1hLGUuZm4udGFiLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gZS5mbi50YWI9dCxhLl9qUXVlcnlJbnRlcmZhY2V9LGF9KCk7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBlKXRocm93IG5ldyBFcnJvcigiQm9vdHN0cmFwJ3MgSmF2YVNjcmlwdCByZXF1aXJlcyBqUXVlcnkuIGpRdWVyeSBtdXN0IGJlIGluY2x1ZGVkIGJlZm9yZSBCb290c3RyYXAncyBKYXZhU2NyaXB0LiIpO3ZhciB0PWUuZm4uanF1ZXJ5LnNwbGl0KCIgIilbMF0uc3BsaXQoIi4iKTtpZih0WzBdPDImJnRbMV08OXx8MT09PXRbMF0mJjk9PT10WzFdJiZ0WzJdPDF8fHRbMF0+PTQpdGhyb3cgbmV3IEVycm9yKCJCb290c3RyYXAncyBKYXZhU2NyaXB0IHJlcXVpcmVzIGF0IGxlYXN0IGpRdWVyeSB2MS45LjEgYnV0IGxlc3MgdGhhbiB2NC4wLjAiKX0oKSx0LlV0aWw9cyx0LkFsZXJ0PWEsdC5CdXR0b249bCx0LkNhcm91c2VsPWgsdC5Db2xsYXBzZT1jLHQuRHJvcGRvd249dSx0Lk1vZGFsPWQsdC5Qb3BvdmVyPV8sdC5TY3JvbGxzcHk9Zyx0LlRhYj1tLHQuVG9vbHRpcD1mLHR9KHt9LCQsUG9wcGVyKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9Ym9vdHN0cmFwLm1pbi5qcy5tYXA="}},"time_used":14638,"timings":{"blocked":12110,"dns":0,"connect":0,"send":0,"wait":1221,"receive":1307,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/latest-blog/blog2.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.347Z","timestamp":1785143908347,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/latest-blog/blog2.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z1xlFQ.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://scromegatrade.com/","date":"2026-07-27T09:18:46.376Z","timestamp":1785143926376,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z1xlFQ.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://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.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: 7748\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 03:05:43 GMT\r\nexpires: Fri, 23 Jul 2027 03:05:43 GMT\r\ncache-control: public, max-age=31536000\r\nage: 367983\r\nlast-modified: Mon, 15 Sep 2025 16:36:26 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":7748,"size_decoded":8560,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 7748, version 1.0","md5":"a09f2fccfee35b7247b08a1a266f0328","sha1":"0da2d17e738f46d2a09e6fb7969da451719a9820","sha256":"cd36de204aca2d5fa263a731f7c20009b5e3d754ba1f1e03c33e93a48f3e7446","sha512":"5e3f9a298003b84250ec6801e08ad2a4ff8845d4c3e13ea61bec37da24d26ede13b436257882124cc0c27e9a323ba92e7d23c6ad3f48a7b75535f5ed98813a0e","ssdeep":"96:0g6vAF/FXh6MmoI56TEwosGU/DbVF/QBT1gaHEYT6u/w3hXLbJPAS772+6haAftj:zp6x6TYpoDYBJg8TRkbJPAS/2+CzQa7","tlshash":"f3f19de65d1e5e8980f0102f6f6efce767950d88141dadf9a9e72f884c6ba1b04c90cd","first_seen":"2023-04-05T13:48:05Z","last_seen":"2026-08-11T07:53:50.587234Z","times_seen":275218,"resource_available":true,"data":"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"}},"time_used":60,"timings":{"blocked":-1,"dns":3,"connect":29,"send":0,"wait":25,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/jqery-nice-selector/css/nice-select.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.089Z","timestamp":1785143908089,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/jqery-nice-selector/css/nice-select.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:38 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"fa7-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 1057\r\nKeep-Alive: timeout=5, max=100\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":4007,"size_decoded":1418,"mime_type":"text/css","magic":"ASCII text","md5":"a7ace323b9fc8a831a6e64feb23fa0b9","sha1":"9317ad29306bc72eb3fa92981be8141fcd394e7c","sha256":"c13280e79f74109c5e3854822c0f0c972d0a57245c95b0b3762f9788bd918f8d","sha512":"b87b828a0726bf70724ea050404c278175a4ec4fcd68f60ff821609699173e74506d2b9b26610436087e8ad44361b595d1f519994cfb7c3ffe24375e4050f9f8","ssdeep":"","tlshash":"2781e2779b530141642a876fafd62b582339c003b826cdacbbdd960b8f0d5dc94e6747","first_seen":"2023-04-05T04:47:26Z","last_seen":"2026-08-11T08:01:13.636552Z","times_seen":4222,"resource_available":false,"data":"Lm5pY2Utc2VsZWN0IHsKICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OwogIGJhY2tncm91bmQtY29sb3I6ICNmZmY7CiAgYm9yZGVyLXJhZGl1czogNXB4OwogIGJvcmRlcjogc29saWQgMXB4ICNlOGU4ZTg7CiAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICBjbGVhcjogYm90aDsKICBjdXJzb3I6IHBvaW50ZXI7CiAgZGlzcGxheTogYmxvY2s7CiAgZmxvYXQ6IGxlZnQ7CiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7CiAgZm9udC1zaXplOiAxNHB4OwogIGZvbnQtd2VpZ2h0OiBub3JtYWw7CiAgaGVpZ2h0OiA0MnB4OwogIGxpbmUtaGVpZ2h0OiA0MHB4OwogIG91dGxpbmU6IG5vbmU7CiAgcGFkZGluZy1sZWZ0OiAxOHB4OwogIHBhZGRpbmctcmlnaHQ6IDMwcHg7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OwogIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OwogIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTsKICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lOwogICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICB3aWR0aDogYXV0bzsgfQogIC5uaWNlLXNlbGVjdDpob3ZlciB7CiAgICBib3JkZXItY29sb3I6ICNkYmRiZGI7IH0KICAubmljZS1zZWxlY3Q6YWN0aXZlLCAubmljZS1zZWxlY3Qub3BlbiwgLm5pY2Utc2VsZWN0OmZvY3VzIHsKICAgIGJvcmRlci1jb2xvcjogIzk5OTsgfQogIC5uaWNlLXNlbGVjdDphZnRlciB7CiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzk5OTsKICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICM5OTk7CiAgICBjb250ZW50OiAnJzsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgaGVpZ2h0OiA1cHg7CiAgICBtYXJnaW4tdG9wOiAtNHB4OwogICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICByaWdodDogMTJweDsKICAgIHRvcDogNTAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA2NiUgNjYlOwogICAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA2NiUgNjYlOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA2NiUgNjYlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7CiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7CiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7CiAgICB3aWR0aDogNXB4OyB9CiAgLm5pY2Utc2VsZWN0Lm9wZW46YWZ0ZXIgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTsKICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOyB9CiAgLm5pY2Utc2VsZWN0Lm9wZW4gLmxpc3QgewogICAgb3BhY2l0eTogMTsKICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZVkoMCk7CiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVZKDApOyB9CiAgLm5pY2Utc2VsZWN0LmRpc2FibGVkIHsKICAgIGJvcmRlci1jb2xvcjogI2VkZWRlZDsKICAgIGNvbG9yOiAjOTk5OwogICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH0KICAgIC5uaWNlLXNlbGVjdC5kaXNhYmxlZDphZnRlciB7CiAgICAgIGJvcmRlci1jb2xvcjogI2NjY2NjYzsgfQogIC5uaWNlLXNlbGVjdC53aWRlIHsKICAgIHdpZHRoOiAxMDAlOyB9CiAgICAubmljZS1zZWxlY3Qud2lkZSAubGlzdCB7CiAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDsKICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDsgfQogIC5uaWNlLXNlbGVjdC5yaWdodCB7CiAgICBmbG9hdDogcmlnaHQ7IH0KICAgIC5uaWNlLXNlbGVjdC5yaWdodCAubGlzdCB7CiAgICAgIGxlZnQ6IGF1dG87CiAgICAgIHJpZ2h0OiAwOyB9CiAgLm5pY2Utc2VsZWN0LnNtYWxsIHsKICAgIGZvbnQtc2l6ZTogMTJweDsKICAgIGhlaWdodDogMzZweDsKICAgIGxpbmUtaGVpZ2h0OiAzNHB4OyB9CiAgICAubmljZS1zZWxlY3Quc21hbGw6YWZ0ZXIgewogICAgICBoZWlnaHQ6IDRweDsKICAgICAgd2lkdGg6IDRweDsgfQogICAgLm5pY2Utc2VsZWN0LnNtYWxsIC5vcHRpb24gewogICAgICBsaW5lLWhlaWdodDogMzRweDsKICAgICAgbWluLWhlaWdodDogMzRweDsgfQogIC5uaWNlLXNlbGVjdCAubGlzdCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogICAgYm9yZGVyLXJhZGl1czogNXB4OwogICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoNjgsIDY4LCA2OCwgMC4xMSk7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgbWFyZ2luLXRvcDogNHB4OwogICAgb3BhY2l0eTogMDsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICBwYWRkaW5nOiAwOwogICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDEwMCU7CiAgICBsZWZ0OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsKICAgICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDA7CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNzUpIHRyYW5zbGF0ZVkoLTIxcHgpOwogICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNzUpIHRyYW5zbGF0ZVkoLTIxcHgpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpIHRyYW5zbGF0ZVkoLTIxcHgpOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC41LCAwLCAwLCAxLjI1KSwgb3BhY2l0eSAwLjE1cyBlYXNlLW91dDsKICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjUsIDAsIDAsIDEuMjUpLCBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0OwogICAgei1pbmRleDogOTsgfQogICAgLm5pY2Utc2VsZWN0IC5saXN0OmhvdmVyIC5vcHRpb246bm90KDpob3ZlcikgewogICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9CiAgLm5pY2Utc2VsZWN0IC5vcHRpb24gewogICAgY3Vyc29yOiBwb2ludGVyOwogICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgIGxpbmUtaGVpZ2h0OiA0MHB4OwogICAgbGlzdC1zdHlsZTogbm9uZTsKICAgIG1pbi1oZWlnaHQ6IDQwcHg7CiAgICBvdXRsaW5lOiBub25lOwogICAgcGFkZGluZy1sZWZ0OiAxOHB4OwogICAgcGFkZGluZy1yaWdodDogMjlweDsKICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzOwogICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7IH0KICAgIC5uaWNlLXNlbGVjdCAub3B0aW9uOmhvdmVyLCAubmljZS1zZWxlY3QgLm9wdGlvbi5mb2N1cywgLm5pY2Utc2VsZWN0IC5vcHRpb24uc2VsZWN0ZWQuZm9jdXMgewogICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2OyB9CiAgICAubmljZS1zZWxlY3QgLm9wdGlvbi5zZWxlY3RlZCB7CiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9CiAgICAubmljZS1zZWxlY3QgLm9wdGlvbi5kaXNhYmxlZCB7CiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwogICAgICBjb2xvcjogIzk5OTsKICAgICAgY3Vyc29yOiBkZWZhdWx0OyB9Cgoubm8tY3NzcG9pbnRlcmV2ZW50cyAubmljZS1zZWxlY3QgLmxpc3QgewogIGRpc3BsYXk6IG5vbmU7IH0KCi5uby1jc3Nwb2ludGVyZXZlbnRzIC5uaWNlLXNlbGVjdC5vcGVuIC5saXN0IHsKICBkaXNwbGF5OiBibG9jazsgfQo="}},"time_used":10162,"timings":{"blocked":-1,"dns":0,"connect":2137,"send":0,"wait":1218,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/slider/slider-bg1.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.325Z","timestamp":1785143908325,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/slider/slider-bg1.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/tZOSQBP946Q","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.472Z","timestamp":1785143926472,"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.com","organization":""},"issuer":{"commonName":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:25 GMT","end":"Mon, 21 Sep 2026 08:37:24 GMT"},"fingerprint":{"sha1":"D9:DA:81:30:78:3E:9C:6B:5F:9D:18:52:0E:BE:6D:52:2F:FB:33:E0","sha256":"EA:E2:2D:87:EC:9C:D6:51:9D:59:E4:13:35:3B:97:14:E3:DA:58:2D:1C:69:19:41:54:94:25:C3:94:17:F3:0C"}}},"request":{"raw":"GET /embed/tZOSQBP946Q HTTP/1.1\r\nHost: www.youtube.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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6\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: text/html; charset=utf-8\r\nx-content-type-options: nosniff\r\ncontent-security-policy: script-src 'unsafe-eval' 'self' 'unsafe-inline' https://www.google.com https://apis.google.com https://ssl.gstatic.com https://www.gstatic.com https://www.googletagmanager.com https://www.google-analytics.com https://*.youtube.com https://*.google.com https://*.gstatic.com https://youtube.com https://www.youtube.com https://google.com https://*.doubleclick.net https://*.googleapis.com https://www.googleadservices.com https://tpc.googlesyndication.com https://www.youtubekids.com https://www.youtube-nocookie.com https://www.youtubeeducation.com https://www-onepick-opensocial.googleusercontent.com;report-uri https://csp.withgoogle.com/csp/youtube_main/allowlist, base-uri 'self';object-src 'none';script-src 'nonce-dc_zfWiaHTmVIsIgkCFz4g' 'unsafe-inline' 'strict-dynamic' https: http: 'unsafe-eval';report-uri https://csp.withgoogle.com/csp/youtube_main/strict, require-trusted-types-for 'script'\r\ncache-control: no-cache, no-store, max-age=0, must-revalidate\r\npragma: no-cache\r\nexpires: Mon, 01 Jan 1990 00:00:00 GMT\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\np3p: CP=\"This is not a P3P policy! See http://support.google.com/accounts/answer/151657?hl=en for more info.\"\r\nstrict-transport-security: max-age=31536000\r\nreport-to: {\"group\":\"youtube_main\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/youtube_main\"}]},{\"group\":\"youtube_main-connectionallowlist\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/youtube_main/connectionallowlist\"}]}\r\norigin-trial: AmhMBR6zCLzDDxpW+HfpP67BqwIknWnyMOXOQGfzYswFmJe+fgaI6XZgAzcxOrzNtP7hEDsOo1jdjFnVr2IdxQ4AAAB4eyJvcmlnaW4iOiJodHRwczovL3lvdXR1YmUuY29tOjQ0MyIsImZlYXR1cmUiOiJXZWJWaWV3WFJlcXVlc3RlZFdpdGhEZXByZWNhdGlvbiIsImV4cGlyeSI6MTc1ODA2NzE5OSwiaXNTdWJkb21haW4iOnRydWV9, AiDEBptUfVeO93q48VdVMe/ubupazdAl8AaHP+NBzdnW8quUcHdzJUyGSfrmtpKJu7EOvwRp9ug2rEo3XU+WMAMAAAB2eyJvcmlnaW4iOiJodHRwczovL3lvdXR1YmUuY29tOjQ0MyIsImZlYXR1cmUiOiJEZXZpY2VCb3VuZFNlc3Npb25DcmVkZW50aWFsczIiLCJleHBpcnkiOjE3NzQzMTA0MDAsImlzU3ViZG9tYWluIjp0cnVlfQ==\r\ncross-origin-embedder-policy-report-only: require-corp; report-to=\"youtube_main\"\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"youtube_main\"\r\npermissions-policy: ch-ua-arch=*, ch-ua-bitness=*, ch-ua-full-version=*, ch-ua-full-version-list=*, ch-ua-model=*, ch-ua-wow64=*, ch-ua-form-factors=*, ch-ua-platform=*, ch-ua-platform-version=*\r\ncontent-encoding: br\r\nserver: ESF\r\nx-xss-protection: 0\r\nset-cookie: __Secure-YNID=20.YT=HJHEAMDOg21BtS27Beq3zWzqjV-7dYCK59j527uPmgsSWq48pSqj22Ql_kBAc9XJGuGK18LTy4_uYmPEHuwRNVtOl3H_-_fLs1iXS-9r6U33RKrPmu7iH8eEIUAtVV4emXhJ8HqqcyLKfu_YE5QJLQ-DGnQpHV7wSZDaw_AeQXomTEiAS11OZ8rNPU_Exo9GUw1HLaQh9Uu4vU-S5FAaTtoQAm-UcgX0vyggliPYW2bUtx09PpJqxohHHZ6nv77zzKufFcSZR1HKrCPoITOfiCwwol7j6OB-6oFj2yL4VkxFQRI-wnySC3rZpBH_hG9L037fQ1iCbaMOjhRV9XO-SQ; expires=Sat, 23-Jan-2027 09:18:46 GMT; path=/; domain=.youtube.com; Secure; HttpOnly; SameSite=none\nYSC=tV5tUXVf6rM; Domain=.youtube.com; Path=/; Secure; HttpOnly; SameSite=none\n__Secure-YEC=; Domain=.youtube.com; Expires=Tue, 31-Oct-2023 09:18:46 GMT; Path=/; Secure; HttpOnly; SameSite=lax\nVISITOR_INFO1_LIVE=aOb2A5cME_o; Domain=.youtube.com; Expires=Sat, 23-Jan-2027 09:18:46 GMT; Path=/; Secure; HttpOnly; SameSite=none\nVISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgTw%3D%3D; Domain=.youtube.com; Expires=Sat, 23-Jan-2027 09:18:46 GMT; Path=/; Secure; HttpOnly; SameSite=none\n__Secure-ROLLOUT_TOKEN=CKiX56v_3fm7NxCc_fOsw_KVAxic_fOsw_KVAw%3D%3D; Domain=youtube.com; Expires=Sat, 23-Jan-2027 09:18:46 GMT; Path=/; Secure; HttpOnly; SameSite=none; Partitioned\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":141448,"size_decoded":59951,"mime_type":"text/html; charset=utf-8","magic":"HTML document, ASCII text, with very long lines (52128)","md5":"f8fc82f99d36810171d64ec5f788a253","sha1":"b35fa46b94e398fd28088a21efa0fdd6fa56029b","sha256":"f1e54d28b2826b08270c5b808aa5e5ada1600231c2f038faf1c1337eebd5fdb5","sha512":"68a59f21b60f1cc75553163f3ca07c54bd513496697995431c8ce5e6430aaaeaec82330ed88253ed7471847655b882bf0ec0396cbdaa2112256df944d7f4576f","ssdeep":"1536:rRQYLjMFJYVM6bB9zhcpeo43UEwgMAEw2+EecP5Bg:SmjuYzge0EwgM+pEecBBg","tlshash":"ccd30a250818a876c5939947eeb9ff3e9ca8023907c995adbcbbd75c01dc6520eaf413","first_seen":"2026-07-27T09:19:08.416286Z","last_seen":"2026-07-27T09:19:08.416286Z","times_seen":1,"resource_available":false,"data":"PCFET0NUWVBFIGh0bWw+PGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIiBkYXRhLWNhc3QtYXBpLWVuYWJsZWQ9InRydWUiPjxoZWFkPjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+PHNjcmlwdCBub25jZT0iZGNfemZXaWFIVG1WSXNJZ2tDRno0ZyI+aWYgKCd1bmRlZmluZWQnID09IHR5cGVvZiBTeW1ib2wgfHwgJ3VuZGVmaW5lZCcgPT0gdHlwZW9mIFN5bWJvbC5pdGVyYXRvcikge2RlbGV0ZSBBcnJheS5wcm90b3R5cGUuZW50cmllczt9PC9zY3JpcHQ+PHN0eWxlIG5hbWU9Ind3dy1yb2JvdG8iIG5vbmNlPSI5b1BqM3NDZzktTFVPNVV3b25lZnFnIj5AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNHVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswNDYwLTA1MkYsVSsxQzgwLTFDOEEsVSsyMEI0LFUrMkRFMC0yREZGLFUrQTY0MC1BNjlGLFUrRkUyRS1GRTJGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNpVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzAxLFUrMDQwMC0wNDVGLFUrMDQ5MC0wNDkxLFUrMDRCMC0wNEIxLFUrMjExNjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzQ1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMUYwMC0xRkZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTMtVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzcwLTAzNzcsVSswMzdBLTAzN0YsVSswMzg0LTAzOEEsVSswMzhDLFUrMDM4RS0wM0ExLFUrMDNBMy0wM0ZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYXdDVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzAyLTAzMDMsVSswMzA1LFUrMDMwNy0wMzA4LFUrMDMxMCxVKzAzMTIsVSswMzE1LFUrMDMxQSxVKzAzMjYtMDMyNyxVKzAzMkMsVSswMzJGLTAzMzAsVSswMzMyLTAzMzMsVSswMzM4LFUrMDMzQSxVKzAzNDYsVSswMzRELFUrMDM5MS0wM0ExLFUrMDNBMy0wM0E5LFUrMDNCMS0wM0M5LFUrMDNEMSxVKzAzRDUtMDNENixVKzAzRjAtMDNGMSxVKzAzRjQtMDNGNSxVKzIwMTYtMjAxNyxVKzIwMzQtMjAzOCxVKzIwM0MsVSsyMDQwLFUrMjA0MyxVKzIwNDcsVSsyMDUwLFUrMjA1NyxVKzIwNUYsVSsyMDcwLTIwNzEsVSsyMDc0LTIwOEUsVSsyMDkwLTIwOUMsVSsyMEQwLTIwREMsVSsyMEUxLFUrMjBFNS0yMEVGLFUrMjEwMC0yMTEyLFUrMjExNC0yMTE1LFUrMjExNy0yMTIxLFUrMjEyMy0yMTRGLFUrMjE5MCxVKzIxOTIsVSsyMTk0LTIxQUUsVSsyMUIwLTIxRTUsVSsyMUYxLTIxRjIsVSsyMUY0LTIyMTEsVSsyMjEzLTIyMTQsVSsyMjE2LTIyRkYsVSsyMzA4LTIzMEIsVSsyMzEwLFUrMjMxOSxVKzIzMUMtMjMyMSxVKzIzMzYtMjM3QSxVKzIzN0MsVSsyMzk1LFUrMjM5Qi0yM0I3LFUrMjNEMCxVKzIzREMtMjNFMSxVKzI0NzQtMjQ3NSxVKzI1QUYsVSsyNUIzLFUrMjVCNyxVKzI1QkQsVSsyNUMxLFUrMjVDQSxVKzI1Q0MsVSsyNUZCLFUrMjY2RC0yNjZGLFUrMjdDMC0yN0ZGLFUrMjkwMC0yQUZGLFUrMkIwRS0yQjExLFUrMkIzMC0yQjRDLFUrMkJGRSxVKzMwMzAsVStGRjVCLFUrRkY1RCxVKzFENDAwLTFEN0ZGLFUrMUVFMDAtMUVFRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1heEtVQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAwMDEtMDAwQyxVKzAwMEUtMDAxRixVKzAwN0YtMDA5RixVKzIwREQtMjBFMCxVKzIwRTItMjBFNCxVKzIxNTAtMjE4RixVKzIxOTAsVSsyMTkyLFUrMjE5NC0yMTk5LFUrMjFBRixVKzIxRTYtMjFGMCxVKzIxRjMsVSsyMjE4LTIyMTksVSsyMjk5LFUrMjJDNC0yMkM2LFUrMjMwMC0yNDNGLFUrMjQ0MC0yNDRBLFUrMjQ2MC0yNEZGLFUrMjVBMC0yN0JGLFUrMjgwMC0yOEZGLFUrMjkyMS0yOTIyLFUrMjk4MSxVKzI5QkYsVSsyOUVCLFUrMkIwMC0yQkZGLFUrNERDMC00REZGLFUrRkZGOS1GRkZCLFUrMTAxNDAtMTAxOEUsVSsxMDE5MC0xMDE5QyxVKzEwMUEwLFUrMTAxRDAtMTAxRkQsVSsxMDJFMC0xMDJGQixVKzEwRTYwLTEwRTdFLFUrMUQyQzAtMUQyRDMsVSsxRDJFMC0xRDM3RixVKzFGMDAwLTFGMEZGLFUrMUYxMDAtMUYxQUQsVSsxRjFFNi0xRjFGRixVKzFGMzBELTFGMzBGLFUrMUYzMTUsVSsxRjMxQyxVKzFGMzFFLFUrMUYzMjAtMUYzMkMsVSsxRjMzNixVKzFGMzc4LFUrMUYzN0QsVSsxRjM4MixVKzFGMzkzLTFGMzlGLFUrMUYzQTctMUYzQTgsVSsxRjNBQy0xRjNBRixVKzFGM0MyLFUrMUYzQzQtMUYzQzYsVSsxRjNDQS0xRjNDRSxVKzFGM0Q0LTFGM0UwLFUrMUYzRUQsVSsxRjNGMS0xRjNGMyxVKzFGM0Y1LTFGM0Y3LFUrMUY0MDgsVSsxRjQxNSxVKzFGNDFGLFUrMUY0MjYsVSsxRjQzRixVKzFGNDQxLTFGNDQyLFUrMUY0NDQsVSsxRjQ0Ni0xRjQ0OSxVKzFGNDRDLTFGNDRFLFUrMUY0NTMsVSsxRjQ2QSxVKzFGNDdELFUrMUY0QTMsVSsxRjRCMCxVKzFGNEIzLFUrMUY0QjksVSsxRjRCQixVKzFGNEJGLFUrMUY0QzgtMUY0Q0IsVSsxRjRENixVKzFGNERBLFUrMUY0REYsVSsxRjRFMy0xRjRFNixVKzFGNEVBLTFGNEVELFUrMUY0RjcsVSsxRjRGOS0xRjRGQixVKzFGNEZELTFGNEZFLFUrMUY1MDMsVSsxRjUwNy0xRjUwQixVKzFGNTBELFUrMUY1MTItMUY1MTMsVSsxRjUzRS0xRjU0QSxVKzFGNTRGLTFGNUZBLFUrMUY2MTAsVSsxRjY1MC0xRjY3RixVKzFGNjg3LFUrMUY2OEQsVSsxRjY5MSxVKzFGNjk0LFUrMUY2OTgsVSsxRjZBRCxVKzFGNkIyLFUrMUY2QjktMUY2QkEsVSsxRjZCQyxVKzFGNkM2LTFGNkNGLFUrMUY2RDMtMUY2RDcsVSsxRjZFMC0xRjZFQSxVKzFGNkYwLTFGNkYzLFUrMUY2RjctMUY2RkMsVSsxRjcwMC0xRjdGRixVKzFGODAwLTFGODBCLFUrMUY4MTAtMUY4NDcsVSsxRjg1MC0xRjg1OSxVKzFGODYwLTFGODg3LFUrMUY4OTAtMUY4QUQsVSsxRjhCMC0xRjhCQixVKzFGOEMwLTFGOEMxLFUrMUY5MDAtMUY5MEIsVSsxRjkzQixVKzFGOTQ2LFUrMUY5ODQsVSsxRjk5NixVKzFGOUU5LFUrMUZBMDAtMUZBNkYsVSsxRkE3MC0xRkE3QyxVKzFGQTgwLTFGQTg5LFUrMUZBOEYtMUZBQzYsVSsxRkFDRS0xRkFEQyxVKzFGQURGLTFGQUU5LFUrMUZBRjAtMUZBRjgsVSsxRkIwMC0xRkJGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzT1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDEwMi0wMTAzLFUrMDExMC0wMTExLFUrMDEyOC0wMTI5LFUrMDE2OC0wMTY5LFUrMDFBMC0wMUExLFUrMDFBRi0wMUIwLFUrMDMwMC0wMzAxLFUrMDMwMy0wMzA0LFUrMDMwOC0wMzA5LFUrMDMyMyxVKzAzMjksVSsxRUEwLTFFRjksVSsyMEFCO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNLVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMTAwLTAyQkEsVSswMkJELTAyQzUsVSswMkM3LTAyQ0MsVSswMkNFLTAyRDcsVSswMkRELTAyRkYsVSswMzA0LFUrMDMwOCxVKzAzMjksVSsxRDAwLTFEQkYsVSsxRTAwLTFFOUYsVSsxRUYyLTFFRkYsVSsyMDIwLFUrMjBBMC0yMEFCLFUrMjBBRC0yMEMwLFUrMjExMyxVKzJDNjAtMkM3RixVK0E3MjAtQTdGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzeVVCQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAwMDAtMDBGRixVKzAxMzEsVSswMTUyLTAxNTMsVSswMkJCLTAyQkMsVSswMkM2LFUrMDJEQSxVKzAyREMsVSswMzA0LFUrMDMwOCxVKzAzMjksVSsyMDAwLTIwNkYsVSsyMEFDLFUrMjEyMixVKzIxOTEsVSsyMTkzLFUrMjIxMixVKzIyMTUsVStGRUZGLFUrRkZGRDt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzR1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDQ2MC0wNTJGLFUrMUM4MC0xQzhBLFUrMjBCNCxVKzJERTAtMkRGRixVK0E2NDAtQTY5RixVK0ZFMkUtRkUyRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzaVVCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDMwMSxVKzA0MDAtMDQ1RixVKzA0OTAtMDQ5MSxVKzA0QjAtMDRCMSxVKzIxMTY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM0NVQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzFGMDAtMUZGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzLVVCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDM3MC0wMzc3LFUrMDM3QS0wMzdGLFUrMDM4NC0wMzhBLFUrMDM4QyxVKzAzOEUtMDNBMSxVKzAzQTMtMDNGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWF3Q1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDMwMi0wMzAzLFUrMDMwNSxVKzAzMDctMDMwOCxVKzAzMTAsVSswMzEyLFUrMDMxNSxVKzAzMUEsVSswMzI2LTAzMjcsVSswMzJDLFUrMDMyRi0wMzMwLFUrMDMzMi0wMzMzLFUrMDMzOCxVKzAzM0EsVSswMzQ2LFUrMDM0RCxVKzAzOTEtMDNBMSxVKzAzQTMtMDNBOSxVKzAzQjEtMDNDOSxVKzAzRDEsVSswM0Q1LTAzRDYsVSswM0YwLTAzRjEsVSswM0Y0LTAzRjUsVSsyMDE2LTIwMTcsVSsyMDM0LTIwMzgsVSsyMDNDLFUrMjA0MCxVKzIwNDMsVSsyMDQ3LFUrMjA1MCxVKzIwNTcsVSsyMDVGLFUrMjA3MC0yMDcxLFUrMjA3NC0yMDhFLFUrMjA5MC0yMDlDLFUrMjBEMC0yMERDLFUrMjBFMSxVKzIwRTUtMjBFRixVKzIxMDAtMjExMixVKzIxMTQtMjExNSxVKzIxMTctMjEyMSxVKzIxMjMtMjE0RixVKzIxOTAsVSsyMTkyLFUrMjE5NC0yMUFFLFUrMjFCMC0yMUU1LFUrMjFGMS0yMUYyLFUrMjFGNC0yMjExLFUrMjIxMy0yMjE0LFUrMjIxNi0yMkZGLFUrMjMwOC0yMzBCLFUrMjMxMCxVKzIzMTksVSsyMzFDLTIzMjEsVSsyMzM2LTIzN0EsVSsyMzdDLFUrMjM5NSxVKzIzOUItMjNCNyxVKzIzRDAsVSsyM0RDLTIzRTEsVSsyNDc0LTI0NzUsVSsyNUFGLFUrMjVCMyxVKzI1QjcsVSsyNUJELFUrMjVDMSxVKzI1Q0EsVSsyNUNDLFUrMjVGQixVKzI2NkQtMjY2RixVKzI3QzAtMjdGRixVKzI5MDAtMkFGRixVKzJCMEUtMkIxMSxVKzJCMzAtMkI0QyxVKzJCRkUsVSszMDMwLFUrRkY1QixVK0ZGNUQsVSsxRDQwMC0xRDdGRixVKzFFRTAwLTFFRUZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjUwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYXhLVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMDAxLTAwMEMsVSswMDBFLTAwMUYsVSswMDdGLTAwOUYsVSsyMERELTIwRTAsVSsyMEUyLTIwRTQsVSsyMTUwLTIxOEYsVSsyMTkwLFUrMjE5MixVKzIxOTQtMjE5OSxVKzIxQUYsVSsyMUU2LTIxRjAsVSsyMUYzLFUrMjIxOC0yMjE5LFUrMjI5OSxVKzIyQzQtMjJDNixVKzIzMDAtMjQzRixVKzI0NDAtMjQ0QSxVKzI0NjAtMjRGRixVKzI1QTAtMjdCRixVKzI4MDAtMjhGRixVKzI5MjEtMjkyMixVKzI5ODEsVSsyOUJGLFUrMjlFQixVKzJCMDAtMkJGRixVKzREQzAtNERGRixVK0ZGRjktRkZGQixVKzEwMTQwLTEwMThFLFUrMTAxOTAtMTAxOUMsVSsxMDFBMCxVKzEwMUQwLTEwMUZELFUrMTAyRTAtMTAyRkIsVSsxMEU2MC0xMEU3RSxVKzFEMkMwLTFEMkQzLFUrMUQyRTAtMUQzN0YsVSsxRjAwMC0xRjBGRixVKzFGMTAwLTFGMUFELFUrMUYxRTYtMUYxRkYsVSsxRjMwRC0xRjMwRixVKzFGMzE1LFUrMUYzMUMsVSsxRjMxRSxVKzFGMzIwLTFGMzJDLFUrMUYzMzYsVSsxRjM3OCxVKzFGMzdELFUrMUYzODIsVSsxRjM5My0xRjM5RixVKzFGM0E3LTFGM0E4LFUrMUYzQUMtMUYzQUYsVSsxRjNDMixVKzFGM0M0LTFGM0M2LFUrMUYzQ0EtMUYzQ0UsVSsxRjNENC0xRjNFMCxVKzFGM0VELFUrMUYzRjEtMUYzRjMsVSsxRjNGNS0xRjNGNyxVKzFGNDA4LFUrMUY0MTUsVSsxRjQxRixVKzFGNDI2LFUrMUY0M0YsVSsxRjQ0MS0xRjQ0MixVKzFGNDQ0LFUrMUY0NDYtMUY0NDksVSsxRjQ0Qy0xRjQ0RSxVKzFGNDUzLFUrMUY0NkEsVSsxRjQ3RCxVKzFGNEEzLFUrMUY0QjAsVSsxRjRCMyxVKzFGNEI5LFUrMUY0QkIsVSsxRjRCRixVKzFGNEM4LTFGNENCLFUrMUY0RDYsVSsxRjREQSxVKzFGNERGLFUrMUY0RTMtMUY0RTYsVSsxRjRFQS0xRjRFRCxVKzFGNEY3LFUrMUY0RjktMUY0RkIsVSsxRjRGRC0xRjRGRSxVKzFGNTAzLFUrMUY1MDctMUY1MEIsVSsxRjUwRCxVKzFGNTEyLTFGNTEzLFUrMUY1M0UtMUY1NEEsVSsxRjU0Ri0xRjVGQSxVKzFGNjEwLFUrMUY2NTAtMUY2N0YsVSsxRjY4NyxVKzFGNjhELFUrMUY2OTEsVSsxRjY5NCxVKzFGNjk4LFUrMUY2QUQsVSsxRjZCMixVKzFGNkI5LTFGNkJBLFUrMUY2QkMsVSsxRjZDNi0xRjZDRixVKzFGNkQzLTFGNkQ3LFUrMUY2RTAtMUY2RUEsVSsxRjZGMC0xRjZGMyxVKzFGNkY3LTFGNkZDLFUrMUY3MDAtMUY3RkYsVSsxRjgwMC0xRjgwQixVKzFGODEwLTFGODQ3LFUrMUY4NTAtMUY4NTksVSsxRjg2MC0xRjg4NyxVKzFGODkwLTFGOEFELFUrMUY4QjAtMUY4QkIsVSsxRjhDMC0xRjhDMSxVKzFGOTAwLTFGOTBCLFUrMUY5M0IsVSsxRjk0NixVKzFGOTg0LFUrMUY5OTYsVSsxRjlFOSxVKzFGQTAwLTFGQTZGLFUrMUZBNzAtMUZBN0MsVSsxRkE4MC0xRkE4OSxVKzFGQThGLTFGQUM2LFUrMUZBQ0UtMUZBREMsVSsxRkFERi0xRkFFOSxVKzFGQUYwLTFGQUY4LFUrMUZCMDAtMUZCRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM09VQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAxMDItMDEwMyxVKzAxMTAtMDExMSxVKzAxMjgtMDEyOSxVKzAxNjgtMDE2OSxVKzAxQTAtMDFBMSxVKzAxQUYtMDFCMCxVKzAzMDAtMDMwMSxVKzAzMDMtMDMwNCxVKzAzMDgtMDMwOSxVKzAzMjMsVSswMzI5LFUrMUVBMC0xRUY5LFUrMjBBQjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzS1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDEwMC0wMkJBLFUrMDJCRC0wMkM1LFUrMDJDNy0wMkNDLFUrMDJDRS0wMkQ3LFUrMDJERC0wMkZGLFUrMDMwNCxVKzAzMDgsVSswMzI5LFUrMUQwMC0xREJGLFUrMUUwMC0xRTlGLFUrMUVGMi0xRUZGLFUrMjAyMCxVKzIwQTAtMjBBQixVKzIwQUQtMjBDMCxVKzIxMTMsVSsyQzYwLTJDN0YsVStBNzIwLUE3RkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM3lVQkEud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMDAwLTAwRkYsVSswMTMxLFUrMDE1Mi0wMTUzLFUrMDJCQi0wMkJDLFUrMDJDNixVKzAyREEsVSswMkRDLFUrMDMwNCxVKzAzMDgsVSswMzI5LFUrMjAwMC0yMDZGLFUrMjBBQyxVKzIxMjIsVSsyMTkxLFUrMjE5MyxVKzIyMTIsVSsyMjE1LFUrRkVGRixVK0ZGRkQ7fTwvc3R5bGU+PHNjcmlwdCBuYW1lPSJ3d3ctcm9ib3RvIiBub25jZT0iZGNfemZXaWFIVG1WSXNJZ2tDRno0ZyI+aWYgKGRvY3VtZW50LmZvbnRzICYmIGRvY3VtZW50LmZvbnRzLmxvYWQpIHtkb2N1bWVudC5mb250cy5sb2FkKCI0MDAgMTBwdCBSb2JvdG8iLCAiRSIpOyBkb2N1bWVudC5mb250cy5sb2FkKCI1MDAgMTBwdCBSb2JvdG8iLCAiRSIpO308L3NjcmlwdD48bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9zL3BsYXllci83YTc5NjljMi93d3ctcGxheWVyLmNzcyIgbmFtZT0id3d3LXBsYXllciIgbm9uY2U9IjlvUGozc0NnOS1MVU81VXdvbmVmcWciPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL3MvXy95dGVtYmVkcy9fL3NzL2s9eXRlbWJlZHMuYmFzZS5OeG5pdXVaRVRady5MLkY0Lk8vYW09QUFBQWdBL2Q9MS9icj0xL3JzPUFHS015d0d4NHR4aEZKaGNydXRLWXNmUG1TNG1GYzZvSlEvbT1yb290LGJhc2UiIG5hbWU9ImVtYmVkLXVpIiBub25jZT0iOW9QajNzQ2c5LUxVTzVVd29uZWZxZyI+PHN0eWxlIG5vbmNlPSI5b1BqM3NDZzktTFVPNVV3b25lZnFnIj5odG1sIHtvdmVyZmxvdzogaGlkZGVuO31ib2R5IHtmb250OiAxMnB4IFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGNvbG9yOiAjZmZmOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogYWJzb2x1dGU7IG1hcmdpbjogMDsgcGFkZGluZzogMDt9I3BsYXllciB7d2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTt9aDEge3RleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICNmZmY7fWgzIHttYXJnaW4tdG9wOiA2cHg7IG1hcmdpbi1ib3R0b206IDNweDt9LnBsYXllci11bmF2YWlsYWJsZSB7cG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IHBhZGRpbmc6IDI1cHg7IGZvbnQtc2l6ZTogMTNweDsgYmFja2dyb3VuZDogdXJsKC9pbWcvbWVoNy5wbmcpIDUwJSA2NSUgbm8tcmVwZWF0O30ucGxheWVyLXVuYXZhaWxhYmxlIC5tZXNzYWdlIHt0ZXh0LWFsaWduOiBsZWZ0OyBtYXJnaW46IDAgLTVweCAxNXB4OyBwYWRkaW5nOiAwIDVweCAxNHB4OyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzg4ODsgZm9udC1zaXplOiAxOXB4OyBmb250LXdlaWdodDogbm9ybWFsO30ucGxheWVyLXVuYXZhaWxhYmxlIGEge2NvbG9yOiAjMTY3YWM2OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7fTwvc3R5bGU+PHNjcmlwdCBub25jZT0iZGNfemZXaWFIVG1WSXNJZ2tDRno0ZyI+dmFyIHl0Y3NpPXtndDpmdW5jdGlvbihuKXtuPShufHwiIikrImRhdGFfIjtyZXR1cm4geXRjc2lbbl18fCh5dGNzaVtuXT17dGljazp7fSxpbmZvOnt9LGdlbDp7cHJlTG9nZ2VkR2VsSW5mb3M6W119fSl9LG5vdzp3aW5kb3cucGVyZm9ybWFuY2UmJndpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcmJndpbmRvdy5wZXJmb3JtYW5jZS5ub3cmJndpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0P2Z1bmN0aW9uKCl7cmV0dXJuIHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0K3dpbmRvdy5wZXJmb3JtYW5jZS5ub3coKX06ZnVuY3Rpb24oKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX0sdGljazpmdW5jdGlvbihsLHQsbil7dmFyIHRpY2tzPXl0Y3NpLmd0KG4pLnRpY2s7dmFyIHY9dHx8eXRjc2kubm93KCk7aWYodGlja3NbbF0pe3RpY2tzWyJfIitsXT10aWNrc1siXyIrbF18fFt0aWNrc1tsXV07dGlja3NbIl8iK2xdLnB1c2godil9dGlja3NbbF09CnZ9LGluZm86ZnVuY3Rpb24oayx2LG4pe3l0Y3NpLmd0KG4pLmluZm9ba109dn0saW5mb0dlbDpmdW5jdGlvbihwLG4pe3l0Y3NpLmd0KG4pLmdlbC5wcmVMb2dnZWRHZWxJbmZvcy5wdXNoKHApfSxzZXRTdGFydDpmdW5jdGlvbih0LG4pe3l0Y3NpLnRpY2soIl9zdGFydCIsdCxuKX19OwooZnVuY3Rpb24odyxkKXtmdW5jdGlvbiBpc0dlY2tvKCl7aWYoIXcubmF2aWdhdG9yKXJldHVybiBmYWxzZTt0cnl7aWYody5uYXZpZ2F0b3IudXNlckFnZW50RGF0YSYmdy5uYXZpZ2F0b3IudXNlckFnZW50RGF0YS5icmFuZHMmJncubmF2aWdhdG9yLnVzZXJBZ2VudERhdGEuYnJhbmRzLmxlbmd0aCl7dmFyIGJyYW5kcz13Lm5hdmlnYXRvci51c2VyQWdlbnREYXRhLmJyYW5kczt2YXIgaT0wO2Zvcig7aTxicmFuZHMubGVuZ3RoO2krKylpZihicmFuZHNbaV0mJmJyYW5kc1tpXS5icmFuZD09PSJGaXJlZm94IilyZXR1cm4gdHJ1ZTtyZXR1cm4gZmFsc2V9fWNhdGNoKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBlO30pfWlmKCF3Lm5hdmlnYXRvci51c2VyQWdlbnQpcmV0dXJuIGZhbHNlO3ZhciB1YT13Lm5hdmlnYXRvci51c2VyQWdlbnQ7cmV0dXJuIHVhLmluZGV4T2YoIkdlY2tvIik+MCYmdWEudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKTwwJiZ1YS5pbmRleE9mKCJFZGdlIik8CjAmJnVhLmluZGV4T2YoIlRyaWRlbnQiKTwwJiZ1YS5pbmRleE9mKCJNU0lFIik8MH15dGNzaS5zZXRTdGFydCh3LnBlcmZvcm1hbmNlP3cucGVyZm9ybWFuY2UudGltaW5nLnJlc3BvbnNlU3RhcnQ6bnVsbCk7dmFyIGlzUHJlcmVuZGVyPShkLnZpc2liaWxpdHlTdGF0ZXx8ZC53ZWJraXRWaXNpYmlsaXR5U3RhdGUpPT0icHJlcmVuZGVyIjt2YXIgdk5hbWU9IWQudmlzaWJpbGl0eVN0YXRlJiZkLndlYmtpdFZpc2liaWxpdHlTdGF0ZT8id2Via2l0dmlzaWJpbGl0eWNoYW5nZSI6InZpc2liaWxpdHljaGFuZ2UiO2lmKGlzUHJlcmVuZGVyKXt2YXIgc3RhcnRUaWNrPWZ1bmN0aW9uKCl7eXRjc2kuc2V0U3RhcnQoKTtkLnJlbW92ZUV2ZW50TGlzdGVuZXIodk5hbWUsc3RhcnRUaWNrKX07ZC5hZGRFdmVudExpc3RlbmVyKHZOYW1lLHN0YXJ0VGljayxmYWxzZSl9aWYoZC5hZGRFdmVudExpc3RlbmVyKWQuYWRkRXZlbnRMaXN0ZW5lcih2TmFtZSxmdW5jdGlvbigpe3l0Y3NpLnRpY2soInZjIil9LApmYWxzZSk7aWYoaXNHZWNrbygpKXt2YXIgaXNIaWRkZW49KGQudmlzaWJpbGl0eVN0YXRlfHxkLndlYmtpdFZpc2liaWxpdHlTdGF0ZSk9PSJoaWRkZW4iO2lmKGlzSGlkZGVuKXl0Y3NpLnRpY2soInZjIil9dmFyIHNsdD1mdW5jdGlvbihlbCx0KXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIG49eXRjc2kubm93KCk7ZWwubG9hZFRpbWU9bjtpZihlbC5zbHQpZWwuc2x0KCl9LHQpfTt3Ll9feXRSSUw9ZnVuY3Rpb24oZWwpe2lmKCFlbC5nZXRBdHRyaWJ1dGUoImRhdGEtdGh1bWIiKSlpZih3LnJlcXVlc3RBbmltYXRpb25GcmFtZSl3LnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3NsdChlbCwwKX0pO2Vsc2Ugc2x0KGVsLDE2KX19KSh3aW5kb3csZG9jdW1lbnQpOwo8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJkY196ZldpYUhUbVZJc0lna0NGejRnIj52YXIgeXRjZmc9e2Q6ZnVuY3Rpb24oKXtyZXR1cm4gd2luZG93Lnl0JiZ5dC5jb25maWdffHx5dGNmZy5kYXRhX3x8KHl0Y2ZnLmRhdGFfPXt9KX0sZ2V0OmZ1bmN0aW9uKGssbyl7cmV0dXJuIGsgaW4geXRjZmcuZCgpP3l0Y2ZnLmQoKVtrXTpvfSxzZXQ6ZnVuY3Rpb24oKXt2YXIgYT1hcmd1bWVudHM7aWYoYS5sZW5ndGg+MSl5dGNmZy5kKClbYVswXV09YVsxXTtlbHNle3ZhciBrO2ZvcihrIGluIGFbMF0peXRjZmcuZCgpW2tdPWFbMF1ba119fX07Cnl0Y2ZnLnNldCh7IkNMSUVOVF9DQU5BUllfU1RBVEUiOiJub25lIiwiREVWSUNFIjoiY2JyXHUwMDNkRmlyZWZveFx1MDAyNmNicnZlclx1MDAzZDEzNC4wXHUwMDI2Y2VuZ1x1MDAzZEdlY2tvXHUwMDI2Y2VuZ3Zlclx1MDAzZDEzNC4wXHUwMDI2Y29zXHUwMDNkV2luZG93c1x1MDAyNmNvc3Zlclx1MDAzZDEwLjBcdTAwMjZjcGxhdGZvcm1cdTAwM2RERVNLVE9QIiwiRVZFTlRfSUQiOiJkaUpuYXBYY0g4YU9qTmdQd2VPRklRIiwiRVhQRVJJTUVOVF9GTEFHUyI6eyJhYl9kZXRfYXBtIjp0cnVlLCJhYl9kZXRfZWxfaCI6dHJ1ZSwiYWJfZmtfc2tfY2wiOnRydWUsImFjdGlvbl9jb21wYW5pb25fY2VudGVyX2FsaWduX2Rlc2NyaXB0aW9uIjp0cnVlLCJhbGxvd19za2lwX25ldHdvcmtsZXNzIjp0cnVlLCJhbHdheXNfc2VuZF9hbmRfd3JpdGUiOnRydWUsImF0dF93ZWJfcmVjb3JkX21ldHJpY3MiOnRydWUsImF0dG11c2kiOnRydWUsImMzX2VuYWJsZV9idXR0b25faW1wcmVzc2lvbl9sb2dnaW5nIjp0cnVlLCJjM193YXRjaF9wYWdlX2NvbXBvbmVudCI6dHJ1ZSwiY2FuY2VsX3BlbmRpbmdfbmF2cyI6dHJ1ZSwiY2xpZW50X3VpX2VuYWJsZV9tdWx0aV90cmFja19hdWRpb19vbl93ZWJfZW1iZWRkZWRfcGxheWVyIjp0cnVlLCJjb25maWdfYWdlX3JlcG9ydF9raWxsc3dpdGNoIjp0cnVlLCJjb3dfb3B0aW1pemVfaWRvbV9jb21wYXQiOnRydWUsImNzaV9vbl9nZWwiOnRydWUsImRlZHVwcGluZ19zZXJ2ZXJfdmUiOnRydWUsImRlbGhpX213ZWJfY29sb3JmdWxfc2QiOnRydWUsImRlbGhpX213ZWJfY29sb3JmdWxfc2RfdjIiOnRydWUsImRlcHJlY2F0ZV9wYWlyX3NlcnZsZXRfZW5hYmxlZCI6dHJ1ZSwiZGVza3RvcF9zcGFya2xlc19saWdodF9jdGFfYnV0dG9uIjp0cnVlLCJkaXNhYmxlX2NoaWxkX25vZGVfYXV0b19mb3JtYXR0ZWRfc3RyaW5ncyI6dHJ1ZSwiZGlzYWJsZV9sb2dfdG9fdmlzaXRvcl9sYXllciI6dHJ1ZSwiZGlzYWJsZV9taW5pX2FwcF9jb250YWluZXJfd2ViX3ZpZXdfaW5zZXRzIjp0cnVlLCJkaXNhYmxlX3BhY2ZfbG9nZ2luZ19mb3JfbWVtb3J5X2xpbWl0ZWRfdHYiOnRydWUsImRpc2FibGVfc2NoZWR1bGVyX3JlcXVlc3RJZGxlQ2FsbGJhY2siOnRydWUsImVtYmVkc19kZXNrdG9mZl9ub25tb2JpbGVfZWxpZ2libGUiOnRydWUsImVtYmVkc19kZXNrdG9mZl9ub25tb2JpbGVfZW5hYmxlZCI6dHJ1ZSwiZW1iZWRzX2Rlc2t0b2ZmX3NhdmVfdXNlcl92b2x1bWUiOnRydWUsImVtYmVkc19kZXNrdG9wX2VuYWJsZV92b2x1bWVfc2xpZGVyIjp0cnVlLCJlbWJlZHNfZW5hYmxlX2NoYW5uZWxfc3Vic2NyaWJlX2RlcHJlY2F0aW9uIjp0cnVlLCJlbWJlZHNfZW5hYmxlX2RlbGF5X2NvbnRyb2xzX2hpZGUiOnRydWUsImVtYmVkc19lbmFibGVfZWlkX2VuZm9yY2VtZW50X2Zvcl95b3V0dWJlIjp0cnVlLCJlbWJlZHNfZW5hYmxlX2VtYzNkc19wZnAiOnRydWUsImVtYmVkc19tdXRlZF9hdXRvcGxheV9zb3VuZF9maXgiOnRydWUsImVtYmVkc19zZXJ2ZV9lczZfY2xpZW50Ijp0cnVlLCJlbWJlZHNfd2ViX3VwZGF0ZWRfc2hvcnRzX2RlZmluaXRpb25fZml4Ijp0cnVlLCJlbmFibGVfYTExeV9mb2N1c19maXhfZm9yX21hY19wYW5lbF9vbl9kZXNrdG9wIjp0cnVlLCJlbmFibGVfYWNjZXNzX2NvZGVfc2VydmljZV9ycGMiOnRydWUsImVuYWJsZV9hY3RpdmVfdmlld19kaXNwbGF5X2FkX3JlbmRlcmVyX3dlYl9ob21lIjp0cnVlLCJlbmFibGVfYWlfc2VhcmNoX2lubmVydHViZV9tMF9maXhlcyI6dHJ1ZSwiZW5hYmxlX2FuZHJvaWRfd2ViX3ZpZXdfdG9wX2luc2V0c19idWdmaXgiOnRydWUsImVuYWJsZV9hdHRlbnRpb25fbG9nZ2luZ19tZWFzdXJlX29uX3Nob3duIjp0cnVlLCJlbmFibGVfYXVfdTE2X3ZlcmlmeV9hZ2VfcGFnZSI6dHJ1ZSwiZW5hYmxlX2F1dG9tb3RpdmVfZm9ybV9mYWN0b3JfY2hlY2siOnRydWUsImVuYWJsZV9jbGllbnRfc2xpX2xvZ2dpbmciOnRydWUsImVuYWJsZV9jbGllbnRfc3RyZWFtel93ZWIiOnRydWUsImVuYWJsZV9jbGllbnRfdmVfc3BlYyI6dHJ1ZSwiZW5hYmxlX2Nsb3VkX3NhdmVfZXJyb3JfcG9wdXBfYWZ0ZXJfcmV0cnkiOnRydWUsImVuYWJsZV9jdXN0b21fc2NydWJiZXJfdjIiOnRydWUsImVuYWJsZV9kYWlfc2RmX2g1X3ByZXJvbGwiOnRydWUsImVuYWJsZV9kYXRhc3luY19pZF9oZWFkZXJfaW5fd2ViX3Zzc19waW5ncyI6dHJ1ZSwiZW5hYmxlX2RlZmF1bHRfbW9ub19jdGFfbWlncmF0aW9uX3dlYl9jbGllbnQiOnRydWUsImVuYWJsZV9kb2NrZWRfY2hhdF9tZXNzYWdlcyI6dHJ1ZSwiZW5hYmxlX2Ryb3Bfc2hhZG93X2V4cGVyaW1lbnQiOnRydWUsImVuYWJsZV9lbWJlZHNfbmV3X2NhcHRpb25fbGFuZ3VhZ2VfcGlja2VyIjp0cnVlLCJlbmFibGVfZW5kZW1pY19oaWdoX2Njdl9zbWVhcmluZ19oNSI6dHJ1ZSwiZW5hYmxlX2VudGl0eV9zdG9yZV9mcm9tX2RlcGVuZGVuY3lfaW5qZWN0aW9uIjp0cnVlLCJlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2giOnRydWUsImVuYWJsZV9pbmxpbmVfbXV0ZWRfcGxheWJhY2tfb25fd2ViX3NlYXJjaF9mb3JfdmRjIjp0cnVlLCJlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2hfZm9yX3ZkY2IiOnRydWUsImVuYWJsZV9sb2dnaW5nX2ZpcnN0X3VzZXJfYWN0aW9uX2FmdGVyX2dhbWVfcmVhZHkiOnRydWUsImVuYWJsZV9sdGNfcGFyYW1fZmV0Y2hfZnJvbV9pbm5lcnR1YmUiOnRydWUsImVuYWJsZV9tMF9sb2dnaW5nX2ZpeGVzIjp0cnVlLCJlbmFibGVfbWVudV9yZW5kZXJlcl9idXR0b25faW5fbXdlYl9oY2xyIjp0cnVlLCJlbmFibGVfbWluaV9hcHBfY29tbWFuZF9oYW5kbGVyX213ZWJfZml4Ijp0cnVlLCJlbmFibGVfbWluaV9ndWlkZV9kb3dubG9hZHNfaXRlbSI6dHJ1ZSwiZW5hYmxlX21peGVkX2RpcmVjdGlvbl9mb3JtYXR0ZWRfc3RyaW5ncyI6dHJ1ZSwiZW5hYmxlX213ZWJfYXVkaW9fdHJhY2tfcGlja2VyIjp0cnVlLCJlbmFibGVfbXdlYl9rZXlib2FyZF9zaG9ydGN1dHMiOnRydWUsImVuYWJsZV9uYW1lc19oYW5kbGVzX2FjY291bnRfc3dpdGNoZXIiOnRydWUsImVuYWJsZV9uYXRpdmVfYnJpZGdlX3ZpZXdfc2F2ZWRfcGxheWFibGVzIjp0cnVlLCJlbmFibGVfbmV0d29ya19yZXF1ZXN0X2xvZ2dpbmdfb25fZ2FtZV9ldmVudHMiOnRydWUsImVuYWJsZV9uZXdfcGFpZF9wcm9kdWN0X3BsYWNlbWVudCI6dHJ1ZSwiZW5hYmxlX29wZW5faW5fbmV3X3RhYl9pY29uX2Zvcl9zaG9ydF9kcl9mb3JfZGVza3RvcF9zZWFyY2giOnRydWUsImVuYWJsZV9vcGVuX3l0X2NvbnRlbnQiOnRydWUsImVuYWJsZV9vcmlnaW5fcXVlcnlfcGFyYW1ldGVyX2J1Z2ZpeCI6dHJ1ZSwiZW5hYmxlX3BhdXNlX2Fkc19vbl95dHZfaHRtbDUiOnRydWUsImVuYWJsZV9wYXltZW50c19wdXJjaGFzZV9tYW5hZ2VyIjp0cnVlLCJlbmFibGVfcGRwX2ljb25fcHJlZmV0Y2giOnRydWUsImVuYWJsZV9wbGFjZV9waXZvdF91cmwiOnRydWUsImVuYWJsZV9wbGF5YWJsZV9jb250YWluZXJfc2F2ZV9idXR0b24iOnRydWUsImVuYWJsZV9wbGF5YWJsZV9lbnRpdHlfc2F2ZV9tZW51X2l0ZW0iOnRydWUsImVuYWJsZV9wdGNfaG9tZV9sb2NhdGlvbl9vbl93ZWIiOnRydWUsImVuYWJsZV9wdl9zY3JlZW5fbW9kZXJuX3RleHQiOnRydWUsImVuYWJsZV9ydGFfbWFuYWdlciI6dHJ1ZSwiZW5hYmxlX3NjcmVlbl9tYW5hZ2VyX2xheWVyX3NlcGFyYXRpb24iOnRydWUsImVuYWJsZV9zZGZfY29tcGFuaW9uX2g1Ijp0cnVlLCJlbmFibGVfc2RmX2RhaV9oNV9taWRyb2xsIjp0cnVlLCJlbmFibGVfc2RmX2g1X2VuZGVtaWNfbWlkX3Bvc3Rfcm9sbCI6dHJ1ZSwiZW5hYmxlX3NkZl9vbl9oNV91bnBsdWdnZWRfdm9kX21pZHJvbGwiOnRydWUsImVuYWJsZV9zZGZfc2hvcnRzX3BsYXllcl9ieXRlc19oNSI6dHJ1ZSwiZW5hYmxlX3NlbmRpbmdfdW53cmFwcGVkX2dhbWVfYXVkaW9fYXNfc2VyaWFsaXplZF9tZXRhZGF0YSI6dHJ1ZSwiZW5hYmxlX3NldF92aWRlb19pZF9pbl9zaG9ydHNfbG9ja3VwX3ZpZXdfbW9kZWwiOnRydWUsImVuYWJsZV9zZnZfZWZmZWN0X3Bpdm90X3VybCI6dHJ1ZSwiZW5hYmxlX3Nob3J0c19uZXdfY2Fyb3VzZWwiOnRydWUsImVuYWJsZV9za2lwX2FkX2d1aWRhbmNlX3Byb21wdCI6dHJ1ZSwiZW5hYmxlX3NraXBwYWJsZV9hZHNfZm9yX3VucGx1Z2dlZF9hZF9wb2QiOnRydWUsImVuYWJsZV9zbWVhcmluZ19leHBhbnNpb25fZGFpIjp0cnVlLCJlbmFibGVfc3VwZXhfbXdlYl9kZW1vX3dlYmZlIjp0cnVlLCJlbmFibGVfdGltZV9vdXRfbWVzc2FnZXMiOnRydWUsImVuYWJsZV90aW1lbGluZV92aWV3X21vZGVybl90cmFuc2NyaXB0X2ZlIjp0cnVlLCJlbmFibGVfdmlkZW9fZGlzcGxheV9jb21wYWN0X2J1dHRvbl9ncm91cF9mb3JfZGVza3RvcF9zZWFyY2giOnRydWUsImVuYWJsZV93ZWJfZGVsaGlfaWNvbnMiOnRydWUsImVuYWJsZV93ZWJfaG9tZV90b3BfbGFuZHNjYXBlX2ltYWdlX2xheW91dF9sZXZlbF9jbGljayI6dHJ1ZSwiZW5hYmxlX3dlYl9zaG9ydHNfYXVkaW9fdHJhY2siOnRydWUsImVuYWJsZV93ZWJfdGllcmVkX2dlbCI6dHJ1ZSwiZW5hYmxlX3dpbmRvd19jb25zdHJhaW5lZF9idXlfZmxvd19kaWFsb2ciOnRydWUsImVuYWJsZV93aXpfcXVldWVfZWZmZWN0X2FuZF9vbl9pbml0X2luaXRpYWxfcnVucyI6dHJ1ZSwiZW5hYmxlX3lwY19zcGlubmVycyI6dHJ1ZSwiZW5hYmxlX3l0X2F0YV9pZnJhbWVfYXV0aHVzZXIiOnRydWUsImV4cG9ydF9uZXR3b3JrbGVzc19vcHRpb25zIjp0cnVlLCJleHBvcnRfcGxheWVyX3ZlcnNpb25fdG9feXRjb25maWciOnRydWUsImZpbGxfc2luZ2xlX3ZpZGVvX3dpdGhfbm90aWZ5X3RvX2xhc3IiOnRydWUsImZpeF9hZHNfdHJhY2tpbmdfZm9yX3N3Zl9jb25maWdfZGVwcmVjYXRpb25fbXdlYiI6dHJ1ZSwiaDVfY29tcGFuaW9uX2VuYWJsZV9hZGNwbl9tYWNyb19zdWJzdGl0dXRpb25fZm9yX2NsaWNrX3BpbmdzIjp0cnVlLCJoNV9pbnBsYXllcl9lbmFibGVfYWRjcG5fbWFjcm9fc3Vic3RpdHV0aW9uX2Zvcl9jbGlja19waW5ncyI6dHJ1ZSwiaDVfcmVzZXRfY2FjaGVfYW5kX2ZpbHRlcl9iZWZvcmVfdXBkYXRlX21hc3RoZWFkIjp0cnVlLCJoaWRlX2NoYW5uZWxfY3JlYXRpb25fdGl0bGVfZm9yX213ZWIiOnRydWUsImhpZ2hfY2N2X2NsaWVudF9zaWRlX2NhY2hpbmdfaDUiOnRydWUsImh0bWw1X2xvZ190cmlnZ2VyX2V2ZW50c193aXRoX2RlYnVnX2RhdGEiOnRydWUsImh0bWw1X3NzZGFpX2VuYWJsZV9tZWRpYV9lbmRfY3VlX3JhbmdlIjp0cnVlLCJpZGJfaW1tZWRpYXRlX2NvbW1pdCI6dHJ1ZSwiaWxfYXR0YWNoX2NhY2hlX2xpbWl0Ijp0cnVlLCJpbF91c2Vfdmlld19tb2RlbF9sb2dnaW5nX2NvbnRleHQiOnRydWUsImlzX2Jyb3dzZXJfc3VwcG9ydF9mb3Jfd2ViY2FtX3N0cmVhbWluZyI6dHJ1ZSwianNvbl9jb25kZW5zZWRfcmVzcG9uc2UiOnRydWUsImtldmxhcl9maWx0ZXJfdW5rbm93bl9zb3VyY2UiOnRydWUsImtldmxhcl9nZWxfZXJyb3Jfcm91dGluZyI6dHJ1ZSwia2V2bGFyX3RyaW1fcGxheWVyX2JlaGF2aW9yIjp0cnVlLCJrZXZsYXJfd2F0Y2hfY2luZW1hdGljcyI6dHJ1ZSwibGltaXRfeXRjc2lfZGVidWdfYXJyYXlfc2l6ZSI6dHJ1ZSwibGl2ZV9jaGF0X2VuYWJsZV9ydGFfbWFuYWdlciI6dHJ1ZSwibG9nX2NsaWNrX3dpdGhfbGF5ZXJfZnJvbV9lbGVtZW50X2luX2NvbW1hbmRfaGFuZGxlciI6dHJ1ZSwibWF3X2VuYWJsZV9uZXR3b3JrX21hY2hpbmUiOnRydWUsIm1keF9lbmFibGVfcHJpdmFjeV9kaXNjbG9zdXJlX3VpIjp0cnVlLCJtZHhfbG9hZF9jYXN0X2FwaV9ib290c3RyYXBfc2NyaXB0Ijp0cnVlLCJtZWRpdW1fcHJvZ3Jlc3NfYmFyX21vZGlmaWNhdGlvbiI6dHJ1ZSwibW9iaWxlX2FjY291bnRfbWVudV9yZWZyZXNoIjp0cnVlLCJtd2ViX2FjY291bnRfbGlua2luZ19ub2FwcCI6dHJ1ZSwibXdlYl9hbGxvd19tb2Rlcm5fc2VhcmNoX3N1Z2dlc3RfYmVoYXZpb3IiOnRydWUsIm13ZWJfYW5pbWF0ZWRfYWN0aW9ucyI6dHJ1ZSwibXdlYl9hcHBfdXBzZWxsX2J1dHRvbl9kaXJlY3RfdG9fYXBwIjp0cnVlLCJtd2ViX2JhZGdlX3NoYXBlX2RlZnJhZyI6dHJ1ZSwibXdlYl9jM19hcHBfcHJvbW9fZW5hYmxlX3JlZmVycmluZ19hcHAiOnRydWUsIm13ZWJfYzNfZW5hYmxlX2FkYXB0aXZlX3NpZ25hbHMiOnRydWUsIm13ZWJfYzNfbGlicmFyeV9wYWdlX2VuYWJsZV9yZWNlbnRfc2hlbGYiOnRydWUsIm13ZWJfYzNfbWVudV9zaWduYWxzX3JlbmRlciI6dHJ1ZSwibXdlYl9jM19yZW1vdmVfd2ViX25hdmlnYXRpb25fZW5kcG9pbnRfZGF0YSI6dHJ1ZSwibXdlYl9jM190b2FzdF91c2Vfd2l6X3JlYWN0aXZlX3JlbmRlciI6dHJ1ZSwibXdlYl9jM191c2VfY2Fub25pY2FsX2Zyb21fcGxheWVyX3Jlc3BvbnNlIjp0cnVlLCJtd2ViX2NhcnZlX291dF9pb3NfYXBwX3N0b3JlX3JlZGlyZWN0Ijp0cnVlLCJtd2ViX2NhcnZlX291dF90ZXJtc19wYWdlcyI6dHJ1ZSwibXdlYl9jaW5lbWF0aWNfd2F0Y2giOnRydWUsIm13ZWJfY29tbWFuZF9oYW5kbGVyIjp0cnVlLCJtd2ViX2RlYnVnX3N0aWNreV9zZXR0aW5ncyI6dHJ1ZSwibXdlYl9kZWxheV93YXRjaF9pbml0aWFsX2RhdGEiOnRydWUsIm13ZWJfZGlzYWJsZV9zZWFyY2hiYXJfc2Nyb2xsIjp0cnVlLCJtd2ViX2VuYWJsZV9jbGlja190b19wbGF5X3BhdXNlIjp0cnVlLCJtd2ViX2VuYWJsZV9jb2xvcmZ1bF9haV9zdW1tYXJ5Ijp0cnVlLCJtd2ViX2VuYWJsZV9keW5hbWljX2RvdWJsZV90YXBfdG9fbGlrZSI6dHJ1ZSwibXdlYl9lbmFibGVfZmluZV9zY3J1YmJpbmdfZm9yX3JlY3MiOnRydWUsIm13ZWJfZW5hYmxlX2tldG9fYmF0Y2hfcGxheWVyX2Z1bGxzY3JlZW4iOnRydWUsIm13ZWJfZW5hYmxlX2tldG9fYmF0Y2hfcGxheWVyX3Byb2dyZXNzX2JhciI6dHJ1ZSwibXdlYl9lbmFibGVfa2V0b19iYXRjaF9wbGF5ZXJfdG9vbHRpcHMiOnRydWUsIm13ZWJfZW5hYmxlX2tldG9fY29udGVudCI6dHJ1ZSwibXdlYl9lbmFibGVfbG9ja3VwX3ZpZXdfbW9kZWxfZm9yX3VjcCI6dHJ1ZSwibXdlYl9lbmFibGVfbWl4X3BhbmVsX3RpdGxlX21ldGFkYXRhIjp0cnVlLCJtd2ViX2VuYWJsZV9tb3JlX2NodW5rcyI6dHJ1ZSwibXdlYl9lbmFibGVfbW9yZV9kcmF3ZXIiOnRydWUsIm13ZWJfZW5hYmxlX29wdGlvbmFsX2Z1bGxzY3JlZW5fbGFuZHNjYXBlX2xvY2tpbmciOnRydWUsIm13ZWJfZW5hYmxlX292ZXJsYXlfdG91Y2hfbWFuYWdlciI6dHJ1ZSwibXdlYl9lbmFibGVfcG9ydHJhaXRfZnVsbHNjcmVlbl9hY3Rpb25zIjp0cnVlLCJtd2ViX2VuYWJsZV9wcmVtaXVtX2NhcnZlX291dF9maXgiOnRydWUsIm13ZWJfZW5hYmxlX3JlZnJlc2hfZGV0ZWN0aW9uIjp0cnVlLCJtd2ViX2VuYWJsZV9zZWFyY2hfaW1wIjp0cnVlLCJtd2ViX2VuYWJsZV9zaG9ydHNfdmlkZW9fcHJlbG9hZCI6dHJ1ZSwibXdlYl9lbmFibGVfdHdvX2xpbmVfdGl0bGVfb25fc2hvcnRzIjp0cnVlLCJtd2ViX2VuYWJsZV92YXJpc3BlZWRfY29udHJvbGxlciI6dHJ1ZSwibXdlYl9lbmFibGVfdmlkZW9fbG9vcF90b2dnbGUiOnRydWUsIm13ZWJfZW5hYmxlX3dhdGNoX2ZlZWRfaW5maW5pdGVfc2Nyb2xsIjp0cnVlLCJtd2ViX2ZpeF9jb2xkX2xvYWRfcmVzcG9uc2VfYWN0aW9ucyI6dHJ1ZSwibXdlYl9maXhfbW9uaXRvcl92aXNpYmlsaXR5X2FmdGVyX3JlbmRlciI6dHJ1ZSwibXdlYl9mb3JjZV9pb3NfZmFsbGJhY2tfdG9fbmF0aXZlX2NvbnRyb2wiOnRydWUsIm13ZWJfZnBfYXV0b19mdWxsc2NyZWVuIjp0cnVlLCJtd2ViX2ZwX2VuYWJsZV9zaG9ydHNfc3dpcGVfbG9nZ2luZyI6dHJ1ZSwibXdlYl9mdWxsc2NyZWVuX2NvbnRyb2xzIjp0cnVlLCJtd2ViX2Z1bGxzY3JlZW5fY29udHJvbHNfYWN0aW9uX2J1dHRvbnMiOnRydWUsIm13ZWJfZnVsbHNjcmVlbl93YXRjaF9zeXN0ZW0iOnRydWUsIm13ZWJfZnVsbHlfcmVhY3RpdmVfY2IiOnRydWUsIm13ZWJfaG9tZV9yZWFjdGl2ZV9zaG9ydHMiOnRydWUsIm13ZWJfaW5uZXJ0dWJlX3NlYXJjaF9jb21tYW5kIjp0cnVlLCJtd2ViX2thaW9zX2VuYWJsZV9hdXRvcGxheV9zd2l0Y2hfdmlld19tb2RlbCI6dHJ1ZSwibXdlYl9sYW5nX2luX2h0bWwiOnRydWUsIm13ZWJfbGlrZV9idXR0b25fc3luY2VkX3dpdGhfZW50aXRpZXMiOnRydWUsIm13ZWJfbG9nb191c2VfaG9tZV9wYWdlX3ZlIjp0cnVlLCJtd2ViX2xvbmdfcHJlc3Nfc3BlZWR1cF92aWJyYXRpb24iOnRydWUsIm13ZWJfbmF0aXZlX2NvbnRyb2xfaW5fZmF1eF9mdWxsc2NyZWVuX3NoYXJlZCI6dHJ1ZSwibXdlYl9wbGF5ZXJfY29udHJvbF9vbl9ob3ZlciI6dHJ1ZSwibXdlYl9wbGF5ZXJfZGVsaGlfZHR0cyI6dHJ1ZSwibXdlYl9wbGF5ZXJfc2hvd19wcmV2aW91c19uZXh0X2J1dHRvbnNfaW5fcGxheWxpc3QiOnRydWUsIm13ZWJfcGxheWVyX3NraXBfbm9fb3Bfc3RhdGVfY2hhbmdlcyI6dHJ1ZSwibXdlYl9wbGF5ZXJfdXNlcl9zZWxlY3Rfbm9uZSI6dHJ1ZSwibXdlYl9wbGF5bGlzdF9lbmdhZ2VtZW50X3BhbmVsIjp0cnVlLCJtd2ViX3Byb2dyZXNzX2Jhcl9zZWVrX29uX21vdXNlX2NsaWNrIjp0cnVlLCJtd2ViX3Byb3BhZ2F0ZV9wbGF5ZXJfbGlua19jbGlja3MiOnRydWUsIm13ZWJfcHVsbF8yX2Z1bGwiOnRydWUsIm13ZWJfcHVsbF8yX2Z1bGxfZW5hYmxlX3RvdWNoX2hhbmRsZXJzIjp0cnVlLCJtd2ViX3NjaGVkdWxlX3dhcm1fd2F0Y2hfcmVzcG9uc2UiOnRydWUsIm13ZWJfc2VhcmNoYm94X2xlZ2FjeV9uYXZpZ2F0aW9uIjp0cnVlLCJtd2ViX3NlZV9mZXdlcl9zaG9ydHMiOnRydWUsIm13ZWJfc2hvcnRzX2NvbW1lbnRzX3BhbmVsX2lkX2NoYW5nZSI6dHJ1ZSwibXdlYl9zaG9ydHNfZWFybHlfY29udGludWF0aW9uIjp0cnVlLCJtd2ViX3Nob3J0c19lbmFibGVfbG9uZ19wcmVzc19zcGVlZHVwIjp0cnVlLCJtd2ViX3Nob3J0c19vdmVybGF5X2RlcHJlY2F0ZV9rYWlvc19sYXlvdXQiOnRydWUsIm13ZWJfc2hvd19zaWduX2luX2J1dHRvbl9mcm9tX2hlYWRlciI6dHJ1ZSwibXdlYl91c2VfbWljcm9mb3JtYXRfdGl0bGVfZm9yX3Bvc3RzIjp0cnVlLCJtd2ViX3VzZV9zZXJ2ZXJfdXJsX29uX3N0YXJ0dXAiOnRydWUsIm13ZWJfd2F0Y2hfY2FwdGlvbnNfZW5hYmxlX2F1dG9fdHJhbnNsYXRlIjp0cnVlLCJtd2ViX3dhdGNoX2NhcHRpb25zX3NldF9kZWZhdWx0X3NpemUiOnRydWUsIm13ZWJfd2F0Y2hfZGVsaGlfcGxheWVyIjp0cnVlLCJtd2ViX3dhdGNoX3N0b3Bfc2NoZWR1bGVyX29uX3BsYXllcl9yZXNwb25zZSI6dHJ1ZSwibXdlYl93YXRjaGZlZWRfYmlnX3RodW1ibmFpbHMiOnRydWUsIm13ZWJfeXRfc2VhcmNoYm94Ijp0cnVlLCJuZXR3b3JrbGVzc19sb2dnaW5nIjp0cnVlLCJub19jbGllbnRfdmVfYXR0YWNoX3VubGVzc19zaG93biI6dHJ1ZSwicGFnZWlkX2FzX2hlYWRlcl93ZWIiOnRydWUsInBsYXllcl9jb250cm9sc19hdXRvbmF2X2ZpeCI6dHJ1ZSwicGxheWVyX2NvbnRyb2xzX3NraXBfZG91YmxlX3NpZ25hbF91cGRhdGUiOnRydWUsInBsYXllcl9jb250cm9sc191c2VfcGxheWVyX2FwaV9jb250ZXh0Ijp0cnVlLCJwbGF5ZXJfY29udHJvbHNfdm9sdW1lX2NvbnRyb2xzX3VzZV9wbGF5ZXJfcHJvcHMiOnRydWUsInBvbHltZXJfYmFkX2J1aWxkX2xhYmVscyI6dHJ1ZSwicG9seW1lcl92ZXJpZml5X2FwcF9zdGF0ZSI6dHJ1ZSwicW9lX3NlbmRfYW5kX3dyaXRlIjp0cnVlLCJyZW1vdmVfY2hldnJvbl9mcm9tX2FkX2Rpc2Nsb3N1cmVfYmFubmVyX2g1Ijp0cnVlLCJyZW1vdmVfbWFzdGhlYWRfY2hhbm5lbF9iYW5uZXJfb25fcmVmcmVzaCI6dHJ1ZSwicmVtb3ZlX3Nsb3RfaWRfZXhpdGVkX3RyaWdnZXJfZm9yX2RhaV9pbl9wbGF5ZXJfc2xvdF9leHBpcmUiOnRydWUsInJvc2NhcyI6dHJ1ZSwic2VydmljZV93b3JrZXJfZW5hYmxlZCI6dHJ1ZSwic2VydmljZV93b3JrZXJfcHVzaF9lbmFibGVkIjp0cnVlLCJzZXJ2aWNlX3dvcmtlcl9wdXNoX2hvbWVfcGFnZV9wcm9tcHQiOnRydWUsInNlcnZpY2Vfd29ya2VyX3B1c2hfd2F0Y2hfcGFnZV9wcm9tcHQiOnRydWUsInNoZWxsX2xvYWRfZ2NmIjp0cnVlLCJzaG9ydGVuX2luaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXQiOnRydWUsInNob3J0c19lbmFibGVfcmVlbF9jYXJvdXNlbCI6dHJ1ZSwic2hvdWxkX3VzZV95dF92b2ljZV9lbmRwb2ludF9pbl9rYWlvcyI6dHJ1ZSwic21hcnRlcl92ZV9kZWR1cHBpbmciOnRydWUsInN0b3BfaGFuZGxpbmdfY2xpY2tfZm9yX25vbl9yZW5kZXJpbmdfb3ZlcmxheV9sYXlvdXQiOnRydWUsInN1cHByZXNzX2Vycm9yXzIwNF9sb2dnaW5nIjp0cnVlLCJzeW5jZWRfcGFuZWxfc2Nyb2xsaW5nX2NvbnRyb2xsZXIiOnRydWUsInRvb2x0aXBfcmVmYWN0b3JfZm9yX2hvdGtleSI6dHJ1ZSwidXNlX2V2ZW50X3RpbWVfbXNfaGVhZGVyIjp0cnVlLCJ1c2VfZmlmb19mb3JfbmV0d29ya2xlc3MiOnRydWUsInVzZV9yZXF1ZXN0X3RpbWVfbXNfaGVhZGVyIjp0cnVlLCJ1c2Vfc2Vzc2lvbl9iYXNlZF9zYW1wbGluZyI6dHJ1ZSwidXNlX3RodW1ibmFpbF9vdmVybGF5X3RpbWVfc3RhdHVzX3JlbmRlcmVyX2Zvcl9saXZlX2JhZGdlIjp0cnVlLCJ2c3NfZmluYWxfcGluZ19zZW5kX2FuZF93cml0ZSI6dHJ1ZSwidnNzX3BsYXliYWNrX3VzZV9zZW5kX2FuZF93cml0ZSI6dHJ1ZSwid2F0Y2hfcHVic3ViX3JlZmFjdG9yIjp0cnVlLCJ3ZWJfYWRhcHRpdmVfcmVwZWF0X2FzZSI6dHJ1ZSwid2ViX2Fsd2F5c19sb2FkX2NoYXRfc3VwcG9ydCI6dHJ1ZSwid2ViX2FwaV91cmwiOnRydWUsIndlYl9hdHRlbnRpb25fbG9nZ2luZ19lbmFibGVkIjp0cnVlLCJ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfZXhwb3J0X3RvX2dlbCI6dHJ1ZSwid2ViX2F0dHJpYnV0ZWRfc3RyaW5nX2RlZXBfZXF1YWxfYnVnZml4Ijp0cnVlLCJ3ZWJfYXV0b25hdl9hbGxvd19vZmZfYnlfZGVmYXVsdCI6dHJ1ZSwid2ViX2J1dHRvbl9vcl9hbmNob3JfbGlzdF9pdGVtIjp0cnVlLCJ3ZWJfYnV0dG9uX3ZpZXdfbW9kZWxfbm9uX251bGxpc2hfZGF0YSI6dHJ1ZSwid2ViX2J1dHRvbl92bV9yZWZhY3Rvcl9kaXNhYmxlZCI6dHJ1ZSwid2ViX2MzX2xvZ19hcHBfaW5pdF9maW5pc2giOnRydWUsIndlYl9jb21tZW50X3BhbmVsX2Vhc3lfZXhwYW5kIjp0cnVlLCJ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkIjp0cnVlLCJ3ZWJfZGVkdXBlX3ZlX2dyYWZ0aW5nIjp0cnVlLCJ3ZWJfZGlzYWJsZV9iYWNrZHJvcF9maWx0ZXIiOnRydWUsIndlYl9kaXNhYmxlX2NoaXBfdmlld19tb2RlbF9tdXRhdGlvbiI6dHJ1ZSwid2ViX2VuYWJsZV9hYl9yc3BfY2wiOnRydWUsIndlYl9lbmFibGVfYWRfYnV0dG9uX3N0eWxlX292ZXJyaWRlIjp0cnVlLCJ3ZWJfZW5hYmxlX2Fza19kaXNjbGFpbWVyX3VwZGF0ZSI6dHJ1ZSwid2ViX2VuYWJsZV9jYW5vbmljYWxfdXJsX21hbmFnZXIiOnRydWUsIndlYl9lbmFibGVfY291cnNlX2ljb25fdXBkYXRlIjp0cnVlLCJ3ZWJfZW5hYmxlX2VudGl0eV91cHNlcnRfb25fdXBkYXRlIjp0cnVlLCJ3ZWJfZW5hYmxlX2Vycm9yXzIwNCI6dHJ1ZSwid2ViX2VuYWJsZV9sYXp5X2NzcyI6dHJ1ZSwid2ViX2VuYWJsZV90aHVtYm5haWxfb3ZlcmxheV9hbGlnbm1lbnQiOnRydWUsIndlYl9nY2ZfaGFzaGVzX2lubmVydHViZSI6dHJ1ZSwid2ViX2dlbF90aW1lb3V0X2NhcCI6dHJ1ZSwid2ViX2hpZGVfeW91cl9kYXRhX29uX2F1dG9tb3RpdmUiOnRydWUsIndlYl9pbXBfZW5hYmxlX2NzaV9zdGFydF90aWNrIjp0cnVlLCJ3ZWJfaW1wX2VuYWJsZV9jc2lfdGltZXIiOnRydWUsIndlYl9tb25vbWVyX3dlYl9jb21wb25lbnRfd3JhcHBlcl9oYW5kbGVfZXJyb3JzIjp0cnVlLCJ3ZWJfbm9uX25hdmlnYXRpbmdfYXRhZyI6dHJ1ZSwid2ViX3BhcmVudF90YXJnZXRfZm9yX3NoZWV0cyI6dHJ1ZSwid2ViX3BlcnNpc3Rfc2VydmVyX2F1dG9uYXZfc3RhdGVfb25fY2xpZW50Ijp0cnVlLCJ3ZWJfcGxheWJhY2tfYXNzb2NpYXRlZF92ZSI6dHJ1ZSwid2ViX3BsYXllcl91cGRhdGVkX2VudHJ5cG9pbnQiOnRydWUsIndlYl9wcmVmZXRjaF9wcmVsb2FkX3ZpZGVvIjp0cnVlLCJ3ZWJfcHJvZ3Jlc3NfYmFyX2RyYWdnYWJsZSI6dHJ1ZSwid2ViX3Byb3BhZ2F0ZV92aXNpYmlsaXR5X3RvX2FwcGxpY2F0aW9uX3N0YXRlIjp0cnVlLCJ3ZWJfcmVtb3ZlX3NuYWNrYmFyX2FjdGlvbnMiOnRydWUsIndlYl9zZWN0aW9uX2xpc3RfcmVuZGVyZXJfd3JhcHBlZF9jb250ZW50cyI6dHJ1ZSwid2ViX3Nob3J0c19hdWRpb190cmFja19waWNrZXIiOnRydWUsIndlYl9zaG9ydHNfZW5hYmxlX3JlbW92ZV9zZWFyY2hfcGl2b3RfYmFja19idXR0b24iOnRydWUsIndlYl9zaG9ydHNfd25fc2hlbGZfaGVhZGVyX3R1bmluZyI6dHJ1ZSwid2ViX3VuaWZpZWRfZmV0Y2giOnRydWUsIndlYl91cGRhdGVfcGFuZWxfdmlzaWJpbGl0eV9sb2dnaW5nX2ZpeCI6dHJ1ZSwid2ViX3dhdGNoX2NvbnRyb2xzX3N0YXRlX3NpZ25hbHMiOnRydWUsIndlYmZlX213ZWJfd2F0Y2hfbWljcm9kYXRhIjp0cnVlLCJ3ZWJmZV93YXRjaF9zaG9ydHNfY2Fub25pY2FsX3VybF9maXgiOnRydWUsIndlYnBvX2V4aXRfb25fbmV0X2VyciI6dHJ1ZSwid2l6X2RpZmZfb3ZlcndyaXRhYmxlIjp0cnVlLCJ3aXpfd3JhcHBlcl9jYWxsYmFja19wcm9wc19maXgiOnRydWUsInd1Z19uZXR3b3JraW5nX2d6aXBfcmVxdWVzdCI6dHJ1ZSwiSDVfYXN5bmNfbG9nZ2luZ19kZWxheV9tcyI6MzAwMDAuMCwiYXV0b3BsYXlfcGF1c2VfYnlfbGFjdF9zYW1wbGluZ19mcmFjdGlvbiI6MC4wLCJjaW5lbWF0aWNfd2F0Y2hfZWZmZWN0X29wYWNpdHkiOjAuNCwibG9nX3dpbmRvd19vbmVycm9yX2ZyYWN0aW9uIjowLjEsInNwZWVkbWFzdGVyX3BsYXliYWNrX3JhdGUiOjIuMCwid2ViX2F0dGVudGlvbl9sb2dnaW5nX3Njcm9sbF90aHJvdHRsZSI6NTAwLjAsIndlYl9kZWFkX2NvZGVfZGV0ZWN0b3Jfc2FtcGxpbmdfcmF0ZSI6MC4wLCJ3ZWJfbG9hZF9wcmVkaWN0aW9uX3RocmVzaG9sZCI6MC4zLCJ3ZWJfbmF2aWdhdGlvbl9wcmVkaWN0aW9uX3RocmVzaG9sZCI6MC4xLCJ3ZWJfcGJqX2xvZ193YXJuaW5nX3JhdGUiOjAuMCwid2ViX3N5c3RlbV9oZWFsdGhfZnJhY3Rpb24iOjAuMDEsInl0aWRiX3RyYW5zYWN0aW9uX2VuZGVkX2V2ZW50X3JhdGVfbGltaXQiOjAuMDIsImF0dF9pbml0X2RlbGF5Ijo1MDAsImF1dG9wbGF5X3BhdXNlX2J5X2xhY3Rfc2VjIjowLCJib3RndWFyZF9hc3luY19zbmFwc2hvdF90aW1lb3V0X21zIjozMDAwLCJjaGVja19uYXZpZ2F0b3JfYWNjdXJhY3lfdGltZW91dF9tcyI6MCwiY2luZW1hdGljX3dhdGNoX2Nzc19maWx0ZXJfYmx1cl9zdHJlbmd0aCI6NDAsImNpbmVtYXRpY193YXRjaF9mYWRlX291dF9kdXJhdGlvbiI6NTAwLCJjbG9zZV93ZWJ2aWV3X2RlbGF5X21zIjoxMDAsImNsb3VkX3NhdmVfZ2FtZV9kYXRhX3JhdGVfbGltaXRfbXMiOjMwMDAsImNvbXByZXNzaW9uX2Rpc2FibGVfcG9pbnQiOjEwLCJjdXN0b21fYWN0aXZlX3ZpZXdfdG9zX3RpbWVvdXRfbXMiOjM2MDAwMDAsImVtYmVkc193aWRnZXRfcG9sbF9pbnRlcnZhbF9tcyI6MCwiZW5kZW1pY19oaWdoX2Njdl9zbWVhcmluZ19tYXhfd2luZG93X3NlY29uZHMiOjYwLCJnZWxfbWluX2JhdGNoX3NpemUiOjMsImdlbF9xdWV1ZV90aW1lb3V0X21heF9tcyI6NjAwMDAsImdldF9hc3luY190aW1lb3V0X21zIjo2MDAwMCwiaHRtbDVfYnl0ZXJhdGVfc29mdF9jYXAiOjAsImluaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXQiOjIwMDAsIm1heF9ib2R5X3NpemVfdG9fY29tcHJlc3MiOjUwMDAwMCwibWF4X3ByZWZldGNoX3dpbmRvd19zZWNfZm9yX2xpdmVzdHJlYW1fb3B0aW1pemF0aW9uIjoxMCwibWluX3ByZWZldGNoX29mZnNldF9zZWNfZm9yX2xpdmVzdHJlYW1fb3B0aW1pemF0aW9uIjoyMCwibWluaV9hcHBfY29udGFpbmVyX2lmcmFtZV9zcmNfdXBkYXRlX2RlbGF5X21zIjowLCJtdWx0aXBsZV9wcmV2aWV3X25ld3NfZHVyYXRpb25fdGltZSI6MTEwMDAsIm13ZWJfYzNfdG9hc3RfZHVyYXRpb25fbXMiOjUwMDAsIm13ZWJfZGVlcF9saW5rX2ZhbGxiYWNrX3RpbWVvdXRfbXMiOjEwMDAwLCJtd2ViX2RlbGF5X3Jlc3BvbnNlX3JlY2VpdmVkX2FjdGlvbnMiOjEwMCwibXdlYl9kd2VsbF9kZWxheV9tcyI6NTAwLCJtd2ViX2ZwX2RwYWRfcmF0ZV9saW1pdF9tcyI6MCwibXdlYl9mcF9kcGFkX3dhdGNoX3RpdGxlX2NsYW1wX2xpbmVzIjowLCJtd2ViX2hpc3RvcnlfbWFuYWdlcl9jYWNoZV9zaXplIjoxMDAsIm13ZWJfaW9zX2Z1bGxzY3JlZW5fcGxheWJhY2tfdHJhbnNpdGlvbl9kZWxheV9tcyI6NTAwLCJtd2ViX2lvc19mdWxsc2NyZWVuX3N5c3RlbV9wYXVzZV9lcGlsc29uX21zIjowLCJtd2ViX292ZXJyaWRlX3Jlc3BvbnNlX3N0b3JlX2V4cGlyYXRpb25fbXMiOjAsIm13ZWJfc2hvcnRzX2Vhcmx5X2NvbnRpbnVhdGlvbl90cmlnZ2VyX3RocmVzaG9sZCI6NCwibXdlYl9zaG9ydHNfbnVtYmVyX29mX3RodW1ibmFpbHNfc2hvd24iOjIsIm13ZWJfdzJ3X21heF9hZ2Vfc2Vjb25kcyI6MCwibXdlYl93YXRjaF9jYXB0aW9uc19kZWZhdWx0X3NpemUiOjIsIm5lb25fZGFya19sYXVuY2hfZ3JhZGllbnRfY291bnQiOjAsIm5ldHdvcmtfcG9sbGluZ19pbnRlcnZhbCI6MzAwMDAsInBsYXlfcGluZ19pbnRlcnZhbF9tcyI6MTAwMDAsInNlbmRfY29uZmlnX2hhc2hfdGltZXIiOjAsInNlcnZpY2Vfd29ya2VyX3B1c2hfbG9nZ2VkX291dF9wcm9tcHRfd2F0Y2hlcyI6LTEsInNlcnZpY2Vfd29ya2VyX3B1c2hfcHJvbXB0X2NhcCI6LTEsInNlcnZpY2Vfd29ya2VyX3B1c2hfcHJvbXB0X2RlbGF5X21pY3Jvc2Vjb25kcyI6Mzg4ODAwMDAwMDAwMCwic2hvd19taW5pX2FwcF9hZF93ZWJfcmVndWxhcl9mcmVxdWVuY3lfY2FwX21zIjoyNDAwMDAsInNob3dfbWluaV9hcHBfYWRfd2ViX3Jld2FyZGVkX2ZyZXF1ZW5jeV9jYXBfbXMiOjAsInNsb3dfY29tcHJlc3Npb25zX2JlZm9yZV9hYmFuZG9uX2NvdW50Ijo0LCJzcGVlZG1hc3Rlcl9jYW5jZWxsYXRpb25fbW92ZW1lbnRfZHAiOjEwLCJzcGVlZG1hc3Rlcl90b3VjaF9hY3RpdmF0aW9uX21zIjo1MDAsIndlYl9haV9zZWFyY2hfcm9sbG91dF92ZXJzaW9uIjoxLCJ3ZWJfZm9yZWdyb3VuZF9oZWFydGJlYXRfaW50ZXJ2YWxfbXMiOjI4MDAwLCJ3ZWJfZ2VsX2RlYm91bmNlX21zIjoxMDAwMCwid2ViX2xvZ2dpbmdfbWF4X2JhdGNoIjoxMDAsIndlYl9tYXhfdHJhY2luZ19ldmVudHMiOjUwLCJ3ZWJfc2Vzc2lvbl9yZXBsYXlfbW91c2Vtb3ZlX2ludGVydmFsIjowLCJ3ZWJfc2Vzc2lvbl9yZXBsYXlfc2Nyb2xsX2ludGVydmFsIjowLCJ3ZWJfc2Vzc2lvbl9yZXBsYXlfc2VuZF9hZnRlcl90aW1lb3V0IjowLCJ3ZWJfdHJhY2luZ19zZXNzaW9uX3JlcGxheSI6MCwid2lsX2ljb25fbWF4X2NvbmN1cnJlbnRfZmV0Y2hlcyI6OTk5OSwieXRjc2lfZGVidWdfbWF4X3NpemUiOjEwMCwieXRpZGJfcmVtYWtlX2RiX3JldHJpZXMiOjEsInl0aWRiX3Jlb3Blbl9kYl9yZXRyaWVzIjowLCJXZWJDbGllbnRSZWxlYXNlUHJvY2Vzc0NyaXRpY2FsX195b3V0dWJlX2VtYmVkc19jbGllbnRfdmVyc2lvbl9vdmVycmlkZSI6IiIsIldlYkNsaWVudFJlbGVhc2VQcm9jZXNzQ3JpdGljYWxfX3lvdXR1YmVfZW1iZWRzX3dlYl9jbGllbnRfdmVyc2lvbl9vdmVycmlkZSI6IiIsImRlYnVnX2ZvcmNlZF9pbnRlcm5hbGNvdW50cnljb2RlIjoiIiwiZW5hYmxlX3dlYl9tZWRpYV9zZXJ2aWNlIjoiRElTQUJMRUQiLCJpbF9wYXlsb2FkX3NjcmFwaW5nIjoiIiwibGl2ZV9jaGF0X3VuaWNvZGVfZW1vamlfanNvbl91cmwiOiJodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9lbW9qaXMvZW1vamlzLXN2Zy05Lmpzb24iLCJtd2ViX2RlZXBfbGlua19mZWF0dXJlX3RhZ19zdWZmaXgiOiI1MTgzMTYxNSIsIm13ZWJfZW5hYmxlX3Nob3J0c19pbm5lcnR1YmVfcGxheWVyX3ByZWZldGNoX3RyaWdnZXIiOiJOT05FIiwibXdlYl9mcF9kcGFkIjoiaG9tZSxzZWFyY2gsYnJvd3NlLGNoYW5uZWwsY3JlYXRlX2NoYW5uZWwsZXhwZXJpbWVudHMsc2V0dGluZ3MsdHJlbmRpbmcsb29wcyw0MDQscGFpZF9tZW1iZXJzaGlwcyxzcG9uc29yc2hpcCxwcmVtaXVtLHNob3J0cyIsIm13ZWJfZnBfZHBhZF9saW5lYXJfbmF2aWdhdGlvbiI6IiIsIm13ZWJfZnBfZHBhZF9saW5lYXJfbmF2aWdhdGlvbl92aXNpdG9yIjoiIiwibXdlYl9mcF9kcGFkX3Zpc2l0b3IiOiIiLCJtd2ViX3ByZWxvYWRfdmlkZW9fYnlfcGxheWVyX3ZhcnMiOiIiLCJwbGFjZV9waXZvdF90cmlnZ2VyaW5nX2NvbnRhaW5lcl9hbHRlcm5hdGUiOiIiLCJwbGFjZV9waXZvdF90cmlnZ2VyaW5nX2NvdW50ZXJmYWN0dWFsX2NvbnRhaW5lcl9hbHRlcm5hdGUiOiIiLCJzZXJ2aWNlX3dvcmtlcl9wdXNoX2ZvcmNlX25vdGlmaWNhdGlvbl9wcm9tcHRfdGFnIjoiMSIsInNlcnZpY2Vfd29ya2VyX3Njb3BlIjoiLyIsInN1Z2dlc3RfZXhwX3N0ciI6IiIsIndlYl9jbGllbnRfdmVyc2lvbl9vdmVycmlkZSI6IiIsImVuZGVtaWNfaGlnaF9jY3Zfc21lYXJpbmdfYWxsb3dlZF92aWRlb19pZHMiOlsiT0psd0lkb0Z6OUEiLCJBcktiQXgxSy0yVSIsIm1fZGhNU3ZVQ0ljIiwiQzFEaHBKMDdadUUiLCJOcTJ3WWxXRnVjZyIsIkpDN2YzRVVEYXF3IiwidnIzWHlWQ1I0VDAiLCJnQ05lRFdDSTB2byIsImtCVHVkbTRnZU1zIiwiRnhzZlZYNkIxTWsiLCJ5bFlKU0JVZ2FNQSIsIlZXaFE2eHNwblNjIiwiUkhVYXVNY1lsWDAiLCJjYjEyS21NTURKQSIsIldKeEVqX2hycFNnIiwiZXVoWS10bWc5eDgiLCJUbElWSTJFVzdSMCIsIk1JTmZ2T1g0QnpJIiwieUhtUFd6a2hjWjgiLCJwM3cxdk85WHYyNCIsIlZsYUNucDFmeEk4IiwiLU9mQTA0QkQ0R0EiLCIxb2RZM0lZc05ubyIsIndpVFRyVnFSVkR3IiwiRGZtMnJCLW5ROVkiLCJRbTFGdHo4bFZuSSIsIjlpdEF4cV9TR0RNIiwieUZJM3dwWHk0ekEiLCJQeTVKWVpYSnZ6byIsImI0dEU1YUtodGxnIiwiNUpEeGpzQVZhR2siLCJlVW1mR1BhenVFTSIsIlc4blRocTYyVmI0IiwiVkxqdlMzdWZsWGMiLCJCZmRMS3ZKQk1fYyIsIndlTFhkd1ZqU3hzIiwiMkphLXVQT2t6N0kiLCJBOVFCVkZFWXhPUSIsImstWkZRa2tIVWZjIiwid3V1MEQyMEFacUkiLCJfSHZpU3lDN3pTVSIsIl9feE96X1EzcVI0IiwidzJzQjg3akxFMUkiLCI4clRURU1kTWg4USIsIi1rNm1wZ214ZXJVIiwiOTdja25ySnlMV2ciLCIyRkl0Vnl4TE5OYyIsIm90bnhmY3NHRS1ZIiwiczl4TDFEcEJzZlEiLCJ3ZkFHQlZnVXJybyIsIm5YSDZUeFEtc2k4IiwiV2lJMVhnX25FdTgiLCIzZmxhc0dWVXJDQSIsImVEWV9IZTkybGNVIiwiYTQ3Y2tYS1pqeEkiLCJJNldSWGVLWks2NCIsIlQ5SjVEcVAyREt3IiwiS3RrX0kwcFVwRzgiLCJlUTJjekdxT0NQZyIsImhMbVU0OWhtWjRjIiwiN2Y3TWdhTUU3U2MiLCJRQjVCTmRCRnVqRSIsIkFHaHRNVV9maTcwIiwicDJSYVFVUlJBd0EiLCJtel9fRU1ZcFdQdyIsIjZqaEx1U1FWSXhVIiwickM4M3ZfdXVJcW8iLCI2RGFHZEpSX2VMZyIsImNtNDN1WGpmdlpZIiwiWTFKc1BwbTJibVEiLCJ6MDk3alB5S2VlbyIsIlRZVlpXVVRqa3gwIiwiVkhhQXZlbmZURGsiLCJ0djlPVV81UTBwUSIsIjZvS0N2em02SG1nIiwiQkVGVUVSaFQwbjAiLCJ1VE4tZXUwLU9YRSIsImhiYXByaFI3elRvIiwiMkNWMFYtb01ORk0iLCJ1OGRTT0tvTkpwMCIsIkg4TXFxd21Gc3hZIiwiSXNra21OUEpkVWsiLCJYOUhfRXpwREdYUSJdLCJrZXZsYXJfY29tbWFuZF9oYW5kbGVyX2NvbW1hbmRfYmFubGlzdCI6W10sIm1pbmlfYXBwX2lkc193aXRob3V0X2dhbWVfcmVhZHkiOlsiVWdreEhIdHNhazFTQzhtUkdITVpld2M0SHplQVkzeWhQUG1KIiwiVWdreDdPZ3pGcUU2el81TXRmNFlzb3RHZlFOSUkxREZfUkJtIl0sIndlYl9vcF9zaWduYWxfdHlwZV9iYW5saXN0IjpbXSwid2ViX3RyYWNpbmdfZW5hYmxlZF9zcGFucyI6WyJldmVudCIsImNvbW1hbmQiXX0sIkdBUElfSElOVF9QQVJBTVMiOiJtOy9fL3Njcy9hYmMtc3RhdGljL18vanMva1x1MDAzZGdhcGkuZ2FwaS5lbi41NF9IRHZlT3RrUS5PL2RcdTAwM2QxL3JzXHUwMDNkQUhwT29vOVF1Zk9kUFlUUmtiVEphZFRXNnNtc3hsV0xNdy9tXHUwMDNkX19mZWF0dXJlc19fIiwiR0FQSV9IT1NUIjoiaHR0cHM6Ly9hcGlzLmdvb2dsZS5jb20iLCJHQVBJX0xPQ0FMRSI6ImVuX1VTIiwiR0wiOiJOTyIsIkhMIjoiZW4iLCJIVE1MX0RJUiI6Imx0ciIsIkhUTUxfTEFORyI6ImVuIiwiSU5ORVJUVUJFX0FQSV9LRVkiOiJBSXphU3lBT19GSjJTbHFVOFE0U1RFSExHQ2lsd19ZOV8xMXFjVzgiLCJJTk5FUlRVQkVfQVBJX1ZFUlNJT04iOiJ2MSIsIklOTkVSVFVCRV9DTElFTlRfTkFNRSI6IldFQl9FTUJFRERFRF9QTEFZRVIiLCJJTk5FUlRVQkVfQ0xJRU5UX1ZFUlNJT04iOiIyLjIwMjYwNzI0LjAxLjAwIiwiSU5ORVJUVUJFX0NPTlRFWFQiOnsiY2xpZW50Ijp7ImhsIjoiZW4iLCJnbCI6Ik5PIiwicmVtb3RlSG9zdCI6IjE5NS42NC4xMTguMTUyIiwiZGV2aWNlTWFrZSI6IiIsImRldmljZU1vZGVsIjoiIiwidmlzaXRvckRhdGEiOiJDZ3RoVDJJeVFUVmpUVVZmYnlqMnhKelRCaklvQ2dKT1R4SWlFaDRTSEFzTURnOFFFUklURkJVV0Z4Z1pHaHNjSFI0ZklDRWlJeVFsSmljZ1QyTGZBZ3JjQWpJd0xsbFVQVWhLU0VWQlRVUlBaekl4UW5SVE1qZENaWEV6ZWxkNmNXcFdMVGRrV1VOTE5UbHFOVEkzZFZCdFozTlRWM0UwT0hCVGNXb3lNbEZzWDJ0Q1FXTTVXRXBIZFVkTE1UaE1WSGswWDNWWmJWQkZTSFYzVWs1V2RFOXNNMGhmTFY5bVRITXhhVmhUTFRseU5sVXpNMUpMY2xCdGRUZHBTRGhsUlVsVlFYUldWalJsYlZob1NqaEljWEZqZVV4TFpuVmZXVVUxVVVwTVVTMUVSMjVSY0VoV04zZFRXa1JoZDE5QlpWRlliMjFVUldsQlV6RXhUMW80Y2s1UVZWOUZlRzg1UjFWM01VaE1ZVkZvT1ZWMU5IWlZMVk0xUmtGaFZIUnZVVUZ0TFZWaloxZ3dkbmxuWjJ4cFVGbFhNbUpWZEhnd09WQndTbkY0YjJoSVNGbzJiblkzTjNwNlMzVm1SbU5UV2xJeFNFdHlRMUJ2U1ZSUFptbERkM2R2YkRkcU5rOUNMVFp2Um1veWVVdzBWbXQ0UmxGU1NTMTNibmxUUXpOeVduQkNTRjlvUnpsTU1ETTNabEV4YVVOaVlVMVBhbWhTVmpsWVR5MVRVUSUzRCUzRCIsInVzZXJBZ2VudCI6Ik1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQ7IHJ2OjEzNC4wKSBHZWNrby8yMDEwMDEwMSBGaXJlZm94LzEzNC4wLGd6aXAoZ2ZlKSIsImNsaWVudE5hbWUiOiJXRUJfRU1CRURERURfUExBWUVSIiwiY2xpZW50VmVyc2lvbiI6IjIuMjAyNjA3MjQuMDEuMDAiLCJvc05hbWUiOiJXaW5kb3dzIiwib3NWZXJzaW9uIjoiMTAuMCIsIm9yaWdpbmFsVXJsIjoiaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvdFpPU1FCUDk0NlEiLCJwbGF0Zm9ybSI6IkRFU0tUT1AiLCJjbGllbnRGb3JtRmFjdG9yIjoiVU5LTk9XTl9GT1JNX0ZBQ1RPUiIsImNvbmZpZ0luZm8iOnsiYXBwSW5zdGFsbERhdGEiOiJDUGJFbk5NR0VQbnkwUndRcEtuUkhCQ3JrZEVjRUlITnpod1FpSkRSSEJEZzZ0RWNFSmJ2MFJ3UV9MTE9IQkRNMzY0RkVJdjN6eHdROXF1d0JSRHAtTkVjRU1HUDBCd1F2Wm13QlJDS2g3Z2lFT0NDZ0JNUXZZcXdCUkRtNjlFY0VLV08waHdRdU9UT0hCQ1pqYkVGRUk2UTBSd1F0X2lBRXhEZXZNNGNFSW13emh3UTJ2Zk9IQkNkMExBRkVJYmhnQk1ReXZ1QUV4Q0o1TkVjRUw2RTBSd1F1UERSSEJEeHROQWNFSl9QZ0JNUUFCREo5b0FURUp6WjBSd1E4Wnl3QlJEM3hJQVRFT19lMFJ3UXZiYXVCUkN1MXM4Y0VJZXN6aHdROXZmUkhCRGd0OUVjRUx5azBCd1FnNGU0SWhDZGhyZ2lFTE9kX3hJUThfbUFFeXBrUTBGTlUxSlNWa2N0V25FdFJFeHBWVVZ3VVVOdVFUYzFSbGhoU1VaTGFsWkVPR2RFUkV4TlREVkJZVE5DY1VjMk5sRnplVzlMZDBWQk5VTjFRVjl6YlhSMVVVYzFTVlZZTUUxM1IzaEtTVVo1ZWpOR1NqbHVWa0prZDNNMU1GbGtRbmM5UFRBQSJ9LCJicm93c2VyTmFtZSI6IkZpcmVmb3giLCJicm93c2VyVmVyc2lvbiI6IjEzNC4wIiwiYWNjZXB0SGVhZGVyIjoidGV4dC9odG1sLGFwcGxpY2F0aW9uL3hodG1sK3htbCxhcHBsaWNhdGlvbi94bWw7cVx1MDAzZDAuOSwqLyo7cVx1MDAzZDAuOCIsImRldmljZUV4cGVyaW1lbnRJZCI6IkNoeE9lbGt5VG5wRmVrNUVZelJOYWsxNlRWUm5lVTVVYXpWTlp6MDlFUGJFbk5NR0dQYkVuTk1HIiwicm9sbG91dFRva2VuIjoiQ0tpWDU2dl8zZm03TnhDY19mT3N3X0tWQXhpY19mT3N3X0tWQXclM0QlM0QifSwidXNlciI6eyJsb2NrZWRTYWZldHlNb2RlIjpmYWxzZX0sInJlcXVlc3QiOnsidXNlU3NsIjp0cnVlfSwiY2xpY2tUcmFja2luZyI6eyJjbGlja1RyYWNraW5nUGFyYW1zIjoiSWhNSWxlL3pyTVB5bFFNVlJnY0RCUjNCY1NFRSJ9LCJ0aGlyZFBhcnR5Ijp7ImVtYmVkZGVkUGxheWVyQ29udGV4dCI6eyJlbWJlZGRlZFBsYXllckVuY3J5cHRlZENvbnRleHQiOiJBQ21ibEJWWS1WTHR5UFp3WlBwSm5JTFY3b3dNdnBFWGVuRG9mNS1zbnFLY3pNNEpSQW9NQnIzVld4UGo4VllWRjlQYzI4eW55S25hNzJrenBJU2JQODNHNzFta3BObHAxNDhvcXhTTEczSnU1MkoyX0pGNUFZM0JFUmxzS2tNRHFNUkN3ZyIsImFuY2VzdG9yT3JpZ2luc1N1cHBvcnRlZCI6ZmFsc2V9fX0sIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9OQU1FIjo1NiwiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX1ZFUlNJT04iOiIyLjIwMjYwNzI0LjAxLjAwIiwiSU5ORVJUVUJFX0NPTlRFWFRfR0wiOiJOTyIsIklOTkVSVFVCRV9DT05URVhUX0hMIjoiZW4iLCJMQVRFU1RfRUNBVENIRVJfU0VSVklDRV9UUkFDS0lOR19QQVJBTVMiOnsiY2xpZW50Lm5hbWUiOiJXRUJfRU1CRURERURfUExBWUVSIiwiY2xpZW50LmpzZmVhdCI6IjIwMjEifSwiTE9HR0VEX0lOIjpmYWxzZSwiUEFHRV9CVUlMRF9MQUJFTCI6InlvdXR1YmUuZW1iZWRzLndlYl8yMDI2MDcyNF8wMV9SQzAwIiwiUEFHRV9DTCI6OTUzMjA2MDEwLCJzY2hlZHVsZXIiOnsidXNlUmFmIjpmYWxzZX0sIlNFUlZFUl9OQU1FIjoiV2ViRkUiLCJWSVNJVE9SX0RBVEEiOiJDZ3RoVDJJeVFUVmpUVVZmYnlqMnhKelRCaklvQ2dKT1R4SWlFaDRTSEFzTURnOFFFUklURkJVV0Z4Z1pHaHNjSFI0ZklDRWlJeVFsSmljZ1QyTGZBZ3JjQWpJd0xsbFVQVWhLU0VWQlRVUlBaekl4UW5SVE1qZENaWEV6ZWxkNmNXcFdMVGRrV1VOTE5UbHFOVEkzZFZCdFozTlRWM0UwT0hCVGNXb3lNbEZzWDJ0Q1FXTTVXRXBIZFVkTE1UaE1WSGswWDNWWmJWQkZTSFYzVWs1V2RFOXNNMGhmTFY5bVRITXhhVmhUTFRseU5sVXpNMUpMY2xCdGRUZHBTRGhsUlVsVlFYUldWalJsYlZob1NqaEljWEZqZVV4TFpuVmZXVVUxVVVwTVVTMUVSMjVSY0VoV04zZFRXa1JoZDE5QlpWRlliMjFVUldsQlV6RXhUMW80Y2s1UVZWOUZlRzg1UjFWM01VaE1ZVkZvT1ZWMU5IWlZMVk0xUmtGaFZIUnZVVUZ0TFZWaloxZ3dkbmxuWjJ4cFVGbFhNbUpWZEhnd09WQndTbkY0YjJoSVNGbzJiblkzTjNwNlMzVm1SbU5UV2xJeFNFdHlRMUJ2U1ZSUFptbERkM2R2YkRkcU5rOUNMVFp2Um1veWVVdzBWbXQ0UmxGU1NTMTNibmxUUXpOeVduQkNTRjlvUnpsTU1ETTNabEV4YVVOaVlVMVBhbWhTVmpsWVR5MVRVUSUzRCUzRCIsIldFQl9QTEFZRVJfQ09OVEVYVF9DT05GSUdTIjp7IldFQl9QTEFZRVJfQ09OVEVYVF9DT05GSUdfSURfRU1CRURERURfUExBWUVSIjp7InJvb3RFbGVtZW50SWQiOiJtb3ZpZV9wbGF5ZXIiLCJqc1VybCI6Ii9zL3BsYXllci83YTc5NjljMi9wbGF5ZXJfZW1iZWRfZXM2LnZmbHNldC9lbl9VUy9iYXNlLmpzIiwiY3NzVXJsIjoiL3MvcGxheWVyLzdhNzk2OWMyL3d3dy1wbGF5ZXIuY3NzIiwiY29udGV4dElkIjoiV0VCX1BMQVlFUl9DT05URVhUX0NPTkZJR19JRF9FTUJFRERFRF9QTEFZRVIiLCJldmVudExhYmVsIjoiZW1iZWRkZWQiLCJjb250ZW50UmVnaW9uIjoiTk8iLCJobCI6ImVuX1VTIiwiaG9zdExhbmd1YWdlIjoiZW4iLCJpbm5lcnR1YmVBcGlLZXkiOiJBSXphU3lBT19GSjJTbHFVOFE0U1RFSExHQ2lsd19ZOV8xMXFjVzgiLCJpbm5lcnR1YmVBcGlWZXJzaW9uIjoidjEiLCJpbm5lcnR1YmVDb250ZXh0Q2xpZW50VmVyc2lvbiI6IjIuMjAyNjA3MjQuMDEuMDAiLCJkZXZpY2UiOnsiYnJhbmQiOiIiLCJtb2RlbCI6IiIsImJyb3dzZXIiOiJGaXJlZm94IiwiYnJvd3NlclZlcnNpb24iOiIxMzQuMCIsIm9zIjoiV2luZG93cyIsIm9zVmVyc2lvbiI6IjEwLjAiLCJwbGF0Zm9ybSI6IkRFU0tUT1AiLCJpbnRlcmZhY2VOYW1lIjoiV0VCX0VNQkVEREVEX1BMQVlFUiIsImludGVyZmFjZVZlcnNpb24iOiIyLjIwMjYwNzI0LjAxLjAwIn0sInNlcmlhbGl6ZWRFeHBlcmltZW50SWRzIjoiMjQwMDQ2NDQsNTEwNjM2NDMsNTEwOTgyOTksNTExNDYwMTUsNTEyMjI5NzMsNTEzNDA2NjIsNTEzNDk5MTQsNTEzNTMzOTMsNTEzNjY0MjMsNTEzODk2MjksNTE0NTgxNzYsNTE0OTAzMzEsNTE1MDU0MzYsNTE1MzA0OTUsNTE1MzQ2NjksNTE1NjUxMTUsNTE1ODM4MjEsNTE2MDUyNTgsNTE2MDk4MjksNTE2MTk0OTksNTE2MzgyNzAsNTE2Mzg5MzIsNTE2NDU1NTIsNTE2NDgzMzYsNTE2NzIxNjIsNTE2ODE2NjIsNTE2ODM1MDIsNTE3MDE2MTUsNTE3MDc2MjAsNTE3MjkyMTgsNTE3NDIzNzcsNTE3OTg5MjgsNTE4MDMxMjcsNTE4MzMyNDEsNTE4NDI0MjIsNTE4NTc4MzgsNTE4NTc5MjAsNTE4ODc4ODAsNTE4OTU0MDQsNTE4OTU3NzEsNTE5MDE0MzcsNTE5MDI2MDUsNTE5MDI5NzcsNTE5MTA3MzYsNTE5MjcxODgsNTE5MjczNjAsNTE5MzYyMjgsNTE5Mzk3MDMsNTE5NDUwNTYsNTE5NTY1MTgsNTE5NTc0NDYsNTE5NTk2OTQsNTE5NTk4MDksNTE5NTk4ODAsNTE5NTk5NjcsNTE5NzE3NzYsNTE5ODQ4MjcsNTE5ODU1ODMsNTE5OTcxODYsNTIwMDI4MDUsNTIwMTYxMzYsNTIwMjAwMzIsNTIwMjA1MDAsNTIwMjQyMTcsNTIwMjYxOTQsNTIwMjY4MTQsNTIwMjcwOTksNTIwMjc3NTEsNTIwMjc3NTMsNTIwMjgwMjUsNTIwMzMwNzIsNTIwMzU2NDQsNTIwMzY5MzksNTIwNDMyMjcsNTIwNDc2ODUsNTIwNDc2ODcsNTIwNDc2OTAsNTIwNjM2NzcsNTIwNjQxMzUsNTIwNjU1OTAsNTIwNzM5NjEsNTIwNzU0OTYsNTIwNzU5MjIsNTIwNzY3MDUsNTIwOTIwODYiLCJzZXJpYWxpemVkRXhwZXJpbWVudEZsYWdzIjoiSDVfYXN5bmNfbG9nZ2luZ19kZWxheV9tc1x1MDAzZDMwMDAwLjBcdTAwMjZhMTF5X2g1X2Fzc29jaWF0ZV9zdXJ2ZXlfcXVlc3Rpb25cdTAwM2R0cnVlXHUwMDI2YWJfZGV0X2FwbVx1MDAzZHRydWVcdTAwMjZhYl9kZXRfZWxfaFx1MDAzZHRydWVcdTAwMjZhYl9ma19za19jbFx1MDAzZHRydWVcdTAwMjZhY3Rpb25fY29tcGFuaW9uX2NlbnRlcl9hbGlnbl9kZXNjcmlwdGlvblx1MDAzZHRydWVcdTAwMjZhZF9wb2RfZGlzYWJsZV9jb21wYW5pb25fcGVyc2lzdF9hZHNfcXVhbGl0eVx1MDAzZHRydWVcdTAwMjZhbGxvd19hdXRvaGlkZV9vbl9wYXVzZWRfdmlkZW9zXHUwMDNkdHJ1ZVx1MDAyNmFsbG93X2RybV9vdmVycmlkZVx1MDAzZHRydWVcdTAwMjZhbGxvd19saXZlX2F1dG9wbGF5XHUwMDNkdHJ1ZVx1MDAyNmFsbG93X3BvbHRlcmd1c3RfYXV0b3BsYXlcdTAwM2R0cnVlXHUwMDI2YWxsb3dfc2tpcF9uZXR3b3JrbGVzc1x1MDAzZHRydWVcdTAwMjZhbGxvd192cDlfMTA4MHBfbXFfZW5jXHUwMDNkdHJ1ZVx1MDAyNmFsd2F5c19jYWNoZV9yZWRpcmVjdF9lbmRwb2ludFx1MDAzZHRydWVcdTAwMjZhbHdheXNfc2VuZF9hbmRfd3JpdGVcdTAwM2R0cnVlXHUwMDI2YW5ub3RhdGlvbl9tb2R1bGVfdmFzdF9jYXJkc19sb2FkX2xvZ2dpbmdfZnJhY3Rpb25cdTAwM2QwLjBcdTAwMjZhc3NpZ25fZHJtX2ZhbWlseV9ieV9mb3JtYXRcdTAwM2R0cnVlXHUwMDI2YXR0X3dlYl9yZWNvcmRfbWV0cmljc1x1MDAzZHRydWVcdTAwMjZhdHRhY2hfZXhwZXJpbWVudF9wcm9wYWdhdGlvbl9jb250ZXh0X3RvX2NvbmZpZ1x1MDAzZHRydWVcdTAwMjZhdHRtdXNpXHUwMDNkdHJ1ZVx1MDAyNmF1dG9wbGF5X3RpbWVcdTAwM2QxMDAwMFx1MDAyNmF1dG9wbGF5X3RpbWVfZm9yX2Z1bGxzY3JlZW5cdTAwM2QtMVx1MDAyNmF1dG9wbGF5X3RpbWVfZm9yX211c2ljX2NvbnRlbnRcdTAwM2QtMVx1MDAyNmJnX3ZtX3JlaW5pdF90aHJlc2hvbGRcdTAwM2Q3MjAwMDAwXHUwMDI2YmxvY2tfdHZodG1sNV9zaW1wbHlfZW1iZWRkZWRcdTAwM2R0cnVlXHUwMDI2YmxvY2tlZF9wYWNrYWdlc19mb3Jfc3BzXHUwMDNkW11cdTAwMjZib3RndWFyZF9hc3luY19zbmFwc2hvdF90aW1lb3V0X21zXHUwMDNkMzAwMFx1MDAyNmJ5cGFzc19saWNlbnNlX2NoZWNrX2Zvcl9pbmxpbmVfbXV0ZWRcdTAwM2R0cnVlXHUwMDI2Y2FwdGlvbnNfdXJsX2FkZF9laVx1MDAzZHRydWVcdTAwMjZjaGVja19uYXZpZ2F0b3JfYWNjdXJhY3lfdGltZW91dF9tc1x1MDAzZDBcdTAwMjZjaGVja19wbGF5YWJpbGl0eV9zdGF0dXNfaW5fZmlsbGVyc1x1MDAzZHRydWVcdTAwMjZjbGllbnRfdWlfZW5hYmxlX211bHRpX3RyYWNrX2F1ZGlvX29uX3dlYl9lbWJlZGRlZF9wbGF5ZXJcdTAwM2R0cnVlXHUwMDI2Y29tcHJlc3Npb25fZGlzYWJsZV9wb2ludFx1MDAzZDEwXHUwMDI2Y293X29wdGltaXplX2lkb21fY29tcGF0XHUwMDNkdHJ1ZVx1MDAyNmNzaV9vbl9nZWxcdTAwM2R0cnVlXHUwMDI2Y3VzdG9tX2FjdGl2ZV92aWV3X3Rvc190aW1lb3V0X21zXHUwMDNkMzYwMDAwMFx1MDAyNmRhc2hfbWFuaWZlc3RfdmVyc2lvblx1MDAzZDVcdTAwMjZkZWJ1Z19iYW5kYWlkX2hvc3RuYW1lXHUwMDNkXHUwMDI2ZGVidWdfYmFuZGFpZF9wb3J0XHUwMDNkMFx1MDAyNmRlYnVnX3NoZXJsb2dfdXNlcm5hbWVcdTAwM2RcdTAwMjZkZWR1cHBpbmdfc2VydmVyX3ZlXHUwMDNkdHJ1ZVx1MDAyNmRlbGhpX2Zhc3RfZm9sbG93X2F1dG9uYXZfdG9nZ2xlXHUwMDNkdHJ1ZVx1MDAyNmRlbGhpX21vZGVybl9wbGF5ZXJfZGVmYXVsdF90aHVtYm5haWxfcGVyY2VudGFnZVx1MDAzZDAuMFx1MDAyNmRlbGhpX21vZGVybl9wbGF5ZXJfZmFzdGVyX2F1dG9oaWRlX2RlbGF5X21zXHUwMDNkMjAwMFx1MDAyNmRlbGhpX21vZGVybl9wbGF5ZXJfcGF1c2VfdGh1bWJuYWlsX3BlcmNlbnRhZ2VcdTAwM2QwLjZcdTAwMjZkZWxoaV9tb2Rlcm5fd2ViX3BsYXllcl9ibGVuZGluZ19tb2RlXHUwMDNkXHUwMDI2ZGVsaGlfbW9kZXJuX3dlYl9wbGF5ZXJfZGlzYWJsZV9mcm9zdGVkX2dsYXNzXHUwMDNkdHJ1ZVx1MDAyNmRlbGhpX21vZGVybl93ZWJfcGxheWVyX2hvcml6b250YWxfdm9sdW1lX2NvbnRyb2xzXHUwMDNkdHJ1ZVx1MDAyNmRlbGhpX21vZGVybl93ZWJfcGxheWVyX2xoc192b2x1bWVfY29udHJvbHNcdTAwM2R0cnVlXHUwMDI2ZGVsaGlfbW9kZXJuX3dlYl9wbGF5ZXJfcmVzcG9uc2l2ZV9jb21wYWN0X2NvbnRyb2xzX3RocmVzaG9sZFx1MDAzZDBcdTAwMjZkZXByZWNhdGVfY2FwdGlvbnNfdHJhY2tfY291bnRfZGlzcGxheVx1MDAzZHRydWVcdTAwMjZkZXByZWNhdGVfZGVsYXlfcGluZ1x1MDAzZHRydWVcdTAwMjZkZXByZWNhdGVfcGFpcl9zZXJ2bGV0X2VuYWJsZWRcdTAwM2R0cnVlXHUwMDI2ZGVza3RvcF9zcGFya2xlc19saWdodF9jdGFfYnV0dG9uXHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfYXYxX3NldHRpbmdcdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV9jaGlsZF9ub2RlX2F1dG9fZm9ybWF0dGVkX3N0cmluZ3NcdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV9saWZhX2luXzJrXzRrXHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfbG9nX3RvX3Zpc2l0b3JfbGF5ZXJcdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV9wYWNmX2xvZ2dpbmdfZm9yX21lbW9yeV9saW1pdGVkX3R2XHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfcmVkdWNlZF9mdWxsc2NyZWVuX2F1dG9wbGF5X2NvdW50ZG93bl9mb3JfbWlub3JzXHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfcmVlbF9pdGVtX3dhdGNoX2Zvcm1hdF9maWx0ZXJpbmdcdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV90b3VjaF9ldmVudHNfb25fc2tpcF9idXR0b25cdTAwM2R0cnVlXHUwMDI2ZHVyYXRpb25fYmVmb3JlX3BhdXNlX2FkX2JyZWFrX21zX2Zvcl9zeXN0ZW1fcGF1c2VcdTAwM2Q1MDAwXHUwMDI2ZWRnZV9lbmNyeXB0aW9uX2ZpbGxfcHJpbWFyeV9rZXlfdmVyc2lvblx1MDAzZHRydWVcdTAwMjZlbWJlZHNfZGVza3RvZmZfZW5hYmxlX2Fkc190b3BfYmFyXHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19kZXNrdG9wX2VuYWJsZV92b2x1bWVfc2xpZGVyXHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19lbmFibGVfY2hhbm5lbF9zdWJzY3JpYmVfZGVwcmVjYXRpb25cdTAwM2R0cnVlXHUwMDI2ZW1iZWRzX2VuYWJsZV9lbWJlZF9jb25maWdfZm9yX211dGVkX2F1dG9wbGF5XHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19lbmFibGVfaW5uZXJ0dWJlX3N0b3JlXHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19lbmFibGVfbW92ZV9zZXRfY2VudGVyX2Nyb3BfdG9fcHVibGljXHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19lbmFibGVfcGVyX3ZpZGVvX2VtYmVkX2NvbmZpZ1x1MDAzZHRydWVcdTAwMjZlbWJlZHNfd2ViX2xpdGVfbW9kZVx1MDAzZDFcdTAwMjZlbmFibGVfYTExeV9mb2N1c19maXhfZm9yX21hY19wYW5lbF9vbl9kZXNrdG9wXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hYmFuZG9uX3BpbmdfZm9yX3NzZGFpXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hY2Nlc3NfY29kZV9zZXJ2aWNlX3JwY1x1MDAzZHRydWVcdTAwMjZlbmFibGVfYWNpX29uX2xyX2ZlZWRzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hY3RpdmVfdmlld19kaXNwbGF5X2FkX3JlbmRlcmVyX3dlYl9ob21lXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hY3RpdmVfdmlld19scl9zaG9ydHNfdmlkZW9cdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FjdGl2ZV92aWV3X3dlYl9zaG9ydHNfdmlkZW9cdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FkX2Nwbl9tYWNyb19zdWJzdGl0dXRpb25fZm9yX2NsaWNrX3BpbmdzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hZF9kaXNjbG9zdXJlX2Jhbm5lcl9hMTF5X2ZpeFx1MDAzZHRydWVcdTAwMjZlbmFibGVfYW50aXNjcmFwaW5nX3dlYl9wbGF5ZXJfZXhwaXJlZFx1MDAzZHRydWVcdTAwMjZlbmFibGVfYXBwX3Byb21vX2VuZGNhcF9lbWxfb25fdGFibGV0XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hdHRlbnRpb25fbG9nZ2luZ19tZWFzdXJlX29uX3Nob3duXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hdV91MTZfdmVyaWZ5X2FnZV9wYWdlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hdXRvbW90aXZlX2Zvcm1fZmFjdG9yX2NoZWNrXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9iYXRjaGVkX2Nyb3NzX2RldmljZV9waW5nc19pbl9nZWxfZmFub3V0XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jYXBhYmlsaXR5X2Zvcm1hdF9maWx0ZXJfaW5fd2F0Y2hfc2VydmVyXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jYXN0X2Zvcl93ZWJfdW5wbHVnZ2VkXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jZW50ZXJlZF9jYXB0aW9uX2Zvcl90dmZpbG1fdmlkZW9cdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2NpcGhlcl9mb3JfbWFuaWZlc3RfdXJsc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfY2xlYW51cF9tYXN0aGVhZF9hdXRvcGxheV9oYWNrX2ZpeFx1MDAzZHRydWVcdTAwMjZlbmFibGVfY2xpZW50X3BhZ2VfaWRfaGVhZGVyX2Zvcl9maXJzdF9wYXJ0eV9waW5nc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfY2xpZW50X3NsaV9sb2dnaW5nXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jbGllbnRfdmVfc3BlY1x1MDAzZHRydWVcdTAwMjZlbmFibGVfY3RhX2Jhbm5lcl9vbl91bnBsdWdnZWRfbHJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2N1c3RvbV9wbGF5aGVhZF9wYXJzaW5nXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jdXN0b21fc2NydWJiZXJfdjJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2RhaV9zZGZfaDVfcHJlcm9sbFx1MDAzZHRydWVcdTAwMjZlbmFibGVfZGF0YXN5bmNfaWRfaGVhZGVyX2luX3dlYl92c3NfcGluZ3NcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2RlZmF1bHRfbW9ub19jdGFfbWlncmF0aW9uX3dlYl9jbGllbnRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2RzYV9hZF9iYWRnZV9mb3JfYWN0aW9uX2VuZGNhcF9vbl9hbmRyb2lkXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9kc2FfYWRfYmFkZ2VfZm9yX2FjdGlvbl9lbmRjYXBfb25faW9zXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9lbmRlbWljX2hpZ2hfY2N2X3NtZWFyaW5nX2g1XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9lbnRpdHlfc3RvcmVfZnJvbV9kZXBlbmRlbmN5X2luamVjdGlvblx1MDAzZHRydWVcdTAwMjZlbmFibGVfZXJyb3JfY29ycmVjdGlvbnNfaW5mb2NhcmRfd2ViX2NsaWVudFx1MDAzZHRydWVcdTAwMjZlbmFibGVfZXJyb3JfY29ycmVjdGlvbnNfaW5mb2NhcmRzX2ljb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9nZXRfcmVtaW5kZXJfYnV0dG9uX29uX3dlYlx1MDAzZHRydWVcdTAwMjZlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2hcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2lubGluZV9tdXRlZF9wbGF5YmFja19vbl93ZWJfc2VhcmNoX2Zvcl92ZGNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2lubGluZV9tdXRlZF9wbGF5YmFja19vbl93ZWJfc2VhcmNoX2Zvcl92ZGNiXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9sdGNfcGFyYW1fZmV0Y2hfZnJvbV9pbm5lcnR1YmVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX21peGVkX2RpcmVjdGlvbl9mb3JtYXR0ZWRfc3RyaW5nc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfbW9kZXJuX3NraXBfYnV0dG9uX29uX3dlYlx1MDAzZHRydWVcdTAwMjZlbmFibGVfbXdlYl9hdWRpb190cmFja19waWNrZXJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX213ZWJfa2V5Ym9hcmRfc2hvcnRjdXRzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9uZXdfcGFpZF9wcm9kdWN0X3BsYWNlbWVudFx1MDAzZHRydWVcdTAwMjZlbmFibGVfb3Blbl9pbl9uZXdfdGFiX2ljb25fZm9yX3Nob3J0X2RyX2Zvcl9kZXNrdG9wX3NlYXJjaFx1MDAzZHRydWVcdTAwMjZlbmFibGVfb3V0X29mX3N0b2NrX3RleHRfYWxsX3N1cmZhY2VzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wYWlkX2NvbnRlbnRfb3ZlcmxheV9idWdmaXhcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3BhdXNlX2Fkc19vbl95dHZfaHRtbDVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3BsYXllcl9jYXB0aW9uc19wZXJzaXN0ZW5jZV9zdGF0ZV9tYWNoaW5lXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wb19kZWNvcmF0aW9uX29mX2ZvcmNlZF90cmFja3NcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3BvbGljeV9iYXNlZF9ocWFfZmlsdGVyX2luX3dhdGNoX3NlcnZlclx1MDAzZHRydWVcdTAwMjZlbmFibGVfcHJvZ3Jlc19jb21tYW5kc19scl9mZWVkc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfcHJvZ3Jlc3NfY29tbWFuZHNfZWxfZGFpXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wcm9ncmVzc19jb21tYW5kc19scl9zaG9ydHNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3B1Ymxpc2hpbmdfcmVnaW9uX3BhcmFtX2luX3N1c1x1MDAzZHRydWVcdTAwMjZlbmFibGVfcHZfc2NyZWVuX21vZGVybl90ZXh0XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9ycHJfdG9rZW5fb25fbHRsX2xvb2t1cFx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2NyZWVuX21hbmFnZXJfbGF5ZXJfc2VwYXJhdGlvblx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2RmX2NvbXBhbmlvbl9oNVx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2RmX2RhaV9oNV9taWRyb2xsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZGZfaDVfZW5kZW1pY19taWRfcG9zdF9yb2xsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZGZfb25faDVfdW5wbHVnZ2VkX3ZvZF9taWRyb2xsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZGZfc2hvcnRzX3BsYXllcl9ieXRlc19oNVx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2VydmVyX2RyaXZlbl9hYnJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NlcnZlcl9kcml2ZW5fYWJyX2Zvcl9iYWNrZ3JvdW5kYWJsZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2VydmVyX2RyaXZlbl9hYnJfdXJsX2dlbmVyYXRpb25cdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NlcnZlcl9kcml2ZW5fcmVhZGFoZWFkXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9za2lwX2FkX2d1aWRhbmNlX3Byb21wdFx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2tpcF90b19uZXh0X21lc3NhZ2luZ1x1MDAzZHRydWVcdTAwMjZlbmFibGVfc2tpcHBhYmxlX2Fkc19mb3JfdW5wbHVnZ2VkX2FkX3BvZFx1MDAzZHRydWVcdTAwMjZlbmFibGVfc21hcnRfc2tpcF9wbGF5ZXJfY29udHJvbHNfc2hvd25fb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zbWFydF9za2lwX3BsYXllcl9jb250cm9sc19zaG93bl9vbl93ZWJfaW5jcmVhc2VkX3RyaWdnZXJpbmdfc2Vuc2l0aXZpdHlcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NtYXJ0X3NraXBfc3BlZWRtYXN0ZXJfb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zbWVhcmluZ19leHBhbnNpb25fZGFpXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zcGxpdF9zY3JlZW5fYWRfYmFzZWxpbmVfZXhwZXJpZW5jZV9lbmRlbWljX2xpdmVfaDVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3N1YmZyYWdtZW50ZWRfY2FwdGlvbl9maWx0ZXJpbmdcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3N1cGV4X213ZWJfZGVtb193ZWJmZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfdG9fY2FsbF9wbGF5cmVhZHlfYmFja2VuZF9kaXJlY3RseVx1MDAzZHRydWVcdTAwMjZlbmFibGVfdW5pZmllZF9hY3Rpb25fZW5kY2FwX29uX3dlYlx1MDAzZHRydWVcdTAwMjZlbmFibGVfdmVub21fbm90aWZpY2F0aW9uX2NhY2hlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV92aWRlb19kaXNwbGF5X2NvbXBhY3RfYnV0dG9uX2dyb3VwX2Zvcl9kZXNrdG9wX3NlYXJjaFx1MDAzZHRydWVcdTAwMjZlbmFibGVfdm9pY2VfYm9vc3RfZmVhdHVyZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfdnA5X2FwcGxldHY1X29uX3NlcnZlclx1MDAzZHRydWVcdTAwMjZlbmFibGVfd2ViX2RlbGhpX2ljb25zXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfaG9tZV90b3BfbGFuZHNjYXBlX2ltYWdlX2xheW91dF9sZXZlbF9jbGlja1x1MDAzZHRydWVcdTAwMjZlbmFibGVfd2ViX21lZGlhX3Nlc3Npb25fbWV0YWRhdGFfZml4XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfcHJlbWl1bV92YXJpc3BlZWRfdXBzZWxsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfc2hvcnRzX2F1ZGlvX3RyYWNrXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfdGllcmVkX2dlbFx1MDAzZHRydWVcdTAwMjZlbmFibGVfd2l6X3F1ZXVlX2VmZmVjdF9hbmRfb25faW5pdF9pbml0aWFsX3J1bnNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3l0X2F0YV9pZnJhbWVfYXV0aHVzZXJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3l0dl9jc2RhaV92cDlcdTAwM2R0cnVlXHUwMDI2ZW5kZW1pY19oaWdoX2Njdl9zbWVhcmluZ19hbGxvd2VkX3ZpZGVvX2lkc1x1MDAzZFtPSmx3SWRvRno5QSwgQXJLYkF4MUstMlUsIG1fZGhNU3ZVQ0ljLCBDMURocEowN1p1RSwgTnEyd1lsV0Z1Y2csIEpDN2YzRVVEYXF3LCB2cjNYeVZDUjRUMCwgZ0NOZURXQ0kwdm8sIGtCVHVkbTRnZU1zLCBGeHNmVlg2QjFNaywgeWxZSlNCVWdhTUEsIFZXaFE2eHNwblNjLCBSSFVhdU1jWWxYMCwgY2IxMkttTU1ESkEsIFdKeEVqX2hycFNnLCBldWhZLXRtZzl4OCwgVGxJVkkyRVc3UjAsIE1JTmZ2T1g0QnpJLCB5SG1QV3praGNaOCwgcDN3MXZPOVh2MjQsIFZsYUNucDFmeEk4LCAtT2ZBMDRCRDRHQSwgMW9kWTNJWXNObm8sIHdpVFRyVnFSVkR3LCBEZm0yckItblE5WSwgUW0xRnR6OGxWbkksIDlpdEF4cV9TR0RNLCB5Rkkzd3BYeTR6QSwgUHk1SllaWEp2em8sIGI0dEU1YUtodGxnLCA1SkR4anNBVmFHaywgZVVtZkdQYXp1RU0sIFc4blRocTYyVmI0LCBWTGp2UzN1ZmxYYywgQmZkTEt2SkJNX2MsIHdlTFhkd1ZqU3hzLCAySmEtdVBPa3o3SSwgQTlRQlZGRVl4T1EsIGstWkZRa2tIVWZjLCB3dXUwRDIwQVpxSSwgX0h2aVN5Qzd6U1UsIF9feE96X1EzcVI0LCB3MnNCODdqTEUxSSwgOHJUVEVNZE1oOFEsIC1rNm1wZ214ZXJVLCA5N2NrbnJKeUxXZywgMkZJdFZ5eExOTmMsIG90bnhmY3NHRS1ZLCBzOXhMMURwQnNmUSwgd2ZBR0JWZ1Vycm8sIG5YSDZUeFEtc2k4LCBXaUkxWGdfbkV1OCwgM2ZsYXNHVlVyQ0EsIGVEWV9IZTkybGNVLCBhNDdja1hLWmp4SSwgSTZXUlhlS1pLNjQsIFQ5SjVEcVAyREt3LCBLdGtfSTBwVXBHOCwgZVEyY3pHcU9DUGcsIGhMbVU0OWhtWjRjLCA3ZjdNZ2FNRTdTYywgUUI1Qk5kQkZ1akUsIEFHaHRNVV9maTcwLCBwMlJhUVVSUkF3QSwgbXpfX0VNWXBXUHcsIDZqaEx1U1FWSXhVLCByQzgzdl91dUlxbywgNkRhR2RKUl9lTGcsIGNtNDN1WGpmdlpZLCBZMUpzUHBtMmJtUSwgejA5N2pQeUtlZW8sIFRZVlpXVVRqa3gwLCBWSGFBdmVuZlREaywgdHY5T1VfNVEwcFEsIDZvS0N2em02SG1nLCBCRUZVRVJoVDBuMCwgdVROLWV1MC1PWEUsIGhiYXByaFI3elRvLCAyQ1YwVi1vTU5GTSwgdThkU09Lb05KcDAsIEg4TXFxd21Gc3hZLCBJc2trbU5QSmRVaywgWDlIX0V6cERHWFFdXHUwMDI2ZW5kZW1pY19oaWdoX2Njdl9zbWVhcmluZ19tYXhfd2luZG93X3NlY29uZHNcdTAwM2Q2MFx1MDAyNmV4cGFuZF9tZWRpYXRla19kZW55bGlzdF90b19hbGxfbGl2ZV92cDlfaW5fYmFja2VuZF9leHBlcmltZW50XHUwMDNkW11cdTAwMjZleHBvcnRfbmV0d29ya2xlc3Nfb3B0aW9uc1x1MDAzZHRydWVcdTAwMjZleHBvcnRfcGxheWVyX3ZlcnNpb25fdG9feXRjb25maWdcdTAwM2R0cnVlXHUwMDI2ZmlsbF9hZHNfdXN0cmVhbWVyX2NvbmZpZ1x1MDAzZHRydWVcdTAwMjZmaWxsX2xpdmVfcmVxdWVzdF9jb25maWdfaW5fdXN0cmVhbWVyX2NvbmZpZ1x1MDAzZHRydWVcdTAwMjZmaWxsX3NpbmdsZV92aWRlb193aXRoX25vdGlmeV90b19sYXNyXHUwMDNkdHJ1ZVx1MDAyNmZpbHRlcl92Yl93aXRob3V0X25vbl92Yl9lcXVpdmFsZW50c1x1MDAzZHRydWVcdTAwMjZmaWx0ZXJfdnA5X2Zvcl9saXZlX2RhaVx1MDAzZHRydWVcdTAwMjZmaXhfYWRfbWluaXBsYXllcl9jb250cm9sc19yZW5kZXJpbmdcdTAwM2R0cnVlXHUwMDI2Zml4X2Fkc190cmFja2luZ19mb3Jfc3dmX2NvbmZpZ19kZXByZWNhdGlvbl9td2ViXHUwMDNkdHJ1ZVx1MDAyNmZpeF9oNV90b2dnbGVfYnV0dG9uX2ExMXlcdTAwM2R0cnVlXHUwMDI2Zml4X3N1cnZleV9jb2xvcl9jb250cmFzdF9vbl9kZXN0b3BcdTAwM2R0cnVlXHUwMDI2ZnJlc2NhX3BvbGxpbmdfZGVsYXlfb3ZlcnJpZGVcdTAwM2QwXHUwMDI2Z2FiX3JldHVybl9zYWJyX3NzZGFpX2NvbmZpZ1x1MDAzZHRydWVcdTAwMjZnZWxfbWluX2JhdGNoX3NpemVcdTAwM2QzXHUwMDI2Z2VsX3F1ZXVlX3RpbWVvdXRfbWF4X21zXHUwMDNkNjAwMDBcdTAwMjZndmlfY2hhbm5lbF9jbGllbnRfc2NyZWVuXHUwMDNkdHJ1ZVx1MDAyNmg1X2NvbXBhbmlvbl9lbmFibGVfYWRjcG5fbWFjcm9fc3Vic3RpdHV0aW9uX2Zvcl9jbGlja19waW5nc1x1MDAzZHRydWVcdTAwMjZoNV9lbmFibGVfYWRfbWJzXHUwMDNkdHJ1ZVx1MDAyNmg1X2lucGxheWVyX2VuYWJsZV9hZGNwbl9tYWNyb19zdWJzdGl0dXRpb25fZm9yX2NsaWNrX3BpbmdzXHUwMDNkdHJ1ZVx1MDAyNmg1X3Jlc2V0X2NhY2hlX2FuZF9maWx0ZXJfYmVmb3JlX3VwZGF0ZV9tYXN0aGVhZFx1MDAzZHRydWVcdTAwMjZoNV96ZXJvX2R1cmF0aW9uX2N1ZV9yYW5nZV9mb3JfZGlic1x1MDAzZHRydWVcdTAwMjZoZnJfZHJvcHBlZF9mcmFtZXJhdGVfZmFsbGJhY2tfdGhyZXNob2xkXHUwMDNkMFx1MDAyNmhpZ2hfY2N2X2NsaWVudF9zaWRlX2NhY2hpbmdfaDVcdTAwM2R0cnVlXHUwMDI2aGxzX3VzZV9uZXdfY29kZWNzX3N0cmluZ19hcGlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfYWRfdGltZW91dF9tc1x1MDAzZDBcdTAwMjZodG1sNV9hZGFwdGF0aW9uX3N0ZXBfY291bnRcdTAwM2QwXHUwMDI2aHRtbDVfYWRzX3ByZXJvbGxfbG9ja190aW1lb3V0X2RlbGF5X21zXHUwMDNkMTUwMDBcdTAwMjZodG1sNV9hbGxvd19tdWx0aXZpZXdfdGlsZV9wcmVsb2FkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2FsbG93X3ByZWxvYWRpbmdfd2l0aF9pZGxlX29ubHlfbmV0d29ya19mb3Jfc2Ficlx1MDAzZHRydWVcdTAwMjZodG1sNV9hbGxvd192aWRlb19rZXlmcmFtZV93aXRob3V0X2F1ZGlvXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2FwcGx5X2NvbnN0cmFpbnRzX2luX2NsaWVudF9mb3Jfc2Ficlx1MDAzZHRydWVcdTAwMjZodG1sNV9hcHBseV9taW5fZmFpbHVyZXNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfYXBwbHlfc3RhcnRfdGltZV93aXRoaW5fYWRzX2Zvcl9zc2RhaV90cmFuc2l0aW9uc1x1MDAzZHRydWVcdTAwMjZodG1sNV9hdHJfZGlzYWJsZV9mb3JjZV9mYWxsYmFja1x1MDAzZHRydWVcdTAwMjZodG1sNV9hdHRfcGxheWJhY2tfdGltZW91dF9tc1x1MDAzZDMwMDAwXHUwMDI2aHRtbDVfYXR0YWNoX251bV9yYW5kb21fYnl0ZXNfdG9fYmFuZGFpZFx1MDAzZDBcdTAwMjZodG1sNV9hdHRhY2hfcG9fdG9rZW5fdG9fYmFuZGFpZFx1MDAzZHRydWVcdTAwMjZodG1sNV9hdXRvbmF2X2NhcF9pZGxlX3NlY3NcdTAwM2QwXHUwMDI2aHRtbDVfYXV0b25hdl9xdWFsaXR5X2NhcFx1MDAzZDcyMFx1MDAyNmh0bWw1X2F1dG9wbGF5X2RlZmF1bHRfcXVhbGl0eV9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfYXV4aWxpYXJ5X2VzdGltYXRlX3dlaWdodFx1MDAzZDAuMFx1MDAyNmh0bWw1X2F2MV9vcmRpbmFsX2NhcFx1MDAzZDBcdTAwMjZodG1sNV9iYW5kYWlkX2F0dGFjaF9jb250ZW50X3BvX3Rva2VuXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Jsb2NrX3BpcF9zYWZhcmlfZGVsYXlcdTAwM2QwXHUwMDI2aHRtbDVfYnlwYXNzX2NvbnRlbnRpb25fc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X2J5dGVyYXRlX3NvZnRfY2FwXHUwMDNkMFx1MDAyNmh0bWw1X2NoZWNrX2Zvcl9pZGxlX25ldHdvcmtfaW50ZXJ2YWxfbXNcdTAwM2QxMDAwXHUwMDI2aHRtbDVfY2hpcHNldF9zb2Z0X2NhcFx1MDAzZDgxOTJcdTAwMjZodG1sNV9jbGFtcF9pbnZhbGlkX3NlZWtfdG9fbWluX3NlZWthYmxlX3RpbWVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfY29uc3VtZV9hbGxfYnVmZmVyZWRfYnl0ZXNfb25lX3BvbGxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfY29udGludW91c19nb29kcHV0X3Byb2JlX2ludGVydmFsX21zXHUwMDNkMFx1MDAyNmh0bWw1X2Q2ZGU0X2Nsb3VkX3Byb2plY3RfbnVtYmVyXHUwMDNkODY4NjE4Njc2OTUyXHUwMDI2aHRtbDVfZGVidWdfZGF0YV9sb2dfcHJvYmFiaWxpdHlcdTAwM2QwLjBcdTAwMjZodG1sNV9kZWNvZGVfdG9fdGV4dHVyZV9jYXBcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGVmYXVsdF9hZF9nYWluXHUwMDNkMC41XHUwMDI2aHRtbDVfZGVmYXVsdF9hdjFfdGhyZXNob2xkXHUwMDNkMFx1MDAyNmh0bWw1X2RlZmF1bHRfcXVhbGl0eV9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfZGVmZXJfZmV0Y2hfYXR0X21zXHUwMDNkMFx1MDAyNmh0bWw1X2RlbGF5ZWRfcmV0cnlfY291bnRcdTAwM2QxXHUwMDI2aHRtbDVfZGVsYXllZF9yZXRyeV9kZWxheV9tc1x1MDAzZDUwMDBcdTAwMjZodG1sNV9kZXByZWNhdGVfYWRzZXJ2aWNlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2RlcHJlY2F0ZV9tYW5pZmVzdGZ1bF9mYWxsYmFja1x1MDAzZHRydWVcdTAwMjZodG1sNV9kZXByZWNhdGVfdmlkZW9fdGFnX3Bvb2xcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGVza3RvcF92cjE4MF9hbGxvd19wYW5uaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2RmX2Rvd25ncmFkZV90aHJlc2hcdTAwM2QwLjZcdTAwMjZodG1sNV9kaXNhYmxlX2JhbmR3aWR0aF9jb2ZhY3RvcnNfZm9yX3NhYnJfbGl2ZVx1MDAzZHRydWVcdTAwMjZodG1sNV9kaXNhYmxlX2NsaWVudF9hdXRvbmF2X2NhcF9mb3Jfb25lc2llXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc2FibGVfbG9vcF9yYW5nZV9mb3Jfc2hvcnRzX2Fkc1x1MDAzZHRydWVcdTAwMjZodG1sNV9kaXNhYmxlX25vbl9jb250aWd1b3VzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc2FibGVfcGVha19zaGF2ZV9mb3Jfb25lc2llXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc2FibGVfdXN0cmVhbWVyX2NvbnN0cmFpbnRfZm9yX3NhYnJcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGlzYWJsZV93ZWJfc2FmYXJpX2RhaVx1MDAzZHRydWVcdTAwMjZodG1sNV9kaXNwbGF5ZWRfZnJhbWVfcmF0ZV9kb3duZ3JhZGVfdGhyZXNob2xkXHUwMDNkNDVcdTAwMjZodG1sNV9kcm1fYnl0ZXJhdGVfc29mdF9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfZHJtX2NoZWNrX2FsbF9rZXlfZXJyb3Jfc3RhdGVzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2RybV9jcGlfbGljZW5zZV9rZXlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZHJtX2xpdmVfYnl0ZXJhdGVfc29mdF9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfZWFybHlfbWVkaWFfZm9yX3NoYXJwZXJfc2hvcnRzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9hYzNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2F1ZGlvX3RyYWNrX3N0aWNraW5lc3NcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2F1ZGlvX3RyYWNrX3N0aWNraW5lc3NfcGhhc2VfdHdvXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9jYXB0aW9uX2NoYW5nZXNfZm9yX21vc2FpY1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfY29tcG9zaXRlX2VtYmFyZ29cdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2Q2ZGU0XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9kNmRlNF9jb2xkX3N0YXJ0X2FuZF9lcnJvclx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfZDZkZTRfaWRsZV9wcmlvcml0eV9qb2JcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2RyY1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfZHJjX3RvZ2dsZV9hcGlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2VhYzNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2VtYmVkZGVkX3BsYXllcl92aXNpYmlsaXR5X3NpZ25hbHNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX29kdWNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3NhYnJfZm9ybWF0X3NlbGVjdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2Ficl9mcm9tX3dhdGNoX3NlcnZlclx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2Ficl9ob3N0X2ZhbGxiYWNrXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9zYWJyX29uX3l0X2VtYmVkc1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2Ficl92b2Rfc3RyZWFtaW5nX3hoclx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2VydmVyX2RyaXZlbl9yZXF1ZXN0X2NhbmNlbGxhdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc3BzX3JldHJ5X2JhY2tvZmZfbWV0YWRhdGFfcmVxdWVzdHNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3NzZGFpX3RyYW5zaXRpb25fd2l0aF9vbmx5X2VudGVyX2N1ZXJhbmdlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV90cmlnZ2VyaW5nX2N1ZXBvaW50X2Zvcl9zbG90XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV90dm9zX2Rhc2hcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3R2b3NfZW5jcnlwdGVkX3ZwOVx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmNvdXJhZ2VfYXJyYXlfY29hbGVzY2luZ1x1MDAzZHRydWVcdTAwMjZodG1sNV9maWxsX2RlZmF1bHRfbW9zYWljX2F1ZGlvX3RyYWNrX2lkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2ZpeGVkX21lZGlhX2R1cmF0aW9uX2Zvcl9yZXF1ZXN0XHUwMDNkMFx1MDAyNmh0bWw1X2ZsdXNoX2luZGV4X29uX3VwZGF0ZWRfdGltZXN0YW1wX29mZnNldFx1MDAzZHRydWVcdTAwMjZodG1sNV9mb3JjZV9zYWJyX2Zyb21fd2F0Y2hfc2VydmVyX2Zvcl9kZnNzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2ZvcndhcmRfY2xpY2tfdHJhY2tpbmdfcGFyYW1zX29uX3JlbG9hZFx1MDAzZHRydWVcdTAwMjZodG1sNV9nYXBsZXNzX2FkX2F1dG9wbGF5X29uX3ZpZGVvX3RvX2FkX29ubHlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2FwbGVzc19lbmRlZF90cmFuc2l0aW9uX2J1ZmZlcl9tc1x1MDAzZDIwMFx1MDAyNmh0bWw1X2dhcGxlc3NfaGFuZG9mZl9jbG9zZV9lbmRfbG9uZ19yZWJ1ZmZlcl9jZmxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2FwbGVzc19oYW5kb2ZmX2Nsb3NlX2VuZF9sb25nX3JlYnVmZmVyX2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X2dhcGxlc3NfbG9vcF9zZWVrX29mZnNldF9pbl9taWxsaVx1MDAzZDBcdTAwMjZodG1sNV9nYXBsZXNzX3Nsb3dfc2Vla19jZmxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2FwbGVzc19zbG93X3NlZWtfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfZ2FwbGVzc19zbG93X3N0YXJ0X2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X2dlbmVyYXRlX2NvbnRlbnRfcG9fdG9rZW5cdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2VuZXJhdGVfc2Vzc2lvbl9wb190b2tlblx1MDAzZHRydWVcdTAwMjZodG1sNV9nbF9mcHNfdGhyZXNob2xkXHUwMDNkMFx1MDAyNmh0bWw1X2hhcmRfY2FwX21heF92ZXJ0aWNhbF9yZXNvbHV0aW9uX2Zvcl9zaG9ydHNcdTAwM2QwXHUwMDI2aHRtbDVfaGRjcF9wcm9iaW5nX3N0cmVhbV91cmxcdTAwM2RcdTAwMjZodG1sNV9oZWFkX21pc3Nfc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X2hmcl9xdWFsaXR5X2NhcFx1MDAzZDBcdTAwMjZodG1sNV9oaWRlX3VuYXZhaWxhYmxlX3N1YnRpdGxlc19idXR0b25cdTAwM2R0cnVlXHUwMDI2aHRtbDVfaGlnaF9yZXNfbG9nZ2luZ19wZXJjZW50XHUwMDNkMC4wMVx1MDAyNmh0bWw1X2hpZ2hfcmVzX3NlZWtfbG9nZ2luZ1x1MDAzZHRydWVcdTAwMjZodG1sNV9ob3BlbGVzc19zZWNzXHUwMDNkMFx1MDAyNmh0bWw1X2h1bGlfc3NkYWlfdXNlX3BsYXliYWNrX3N0YXRlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2lkbGVfcmF0ZV9saW1pdF9tc1x1MDAzZDBcdTAwMjZodG1sNV9pZ25vcmVfcGFydGlhbF9zZWdtZW50X2Zyb21fbGl2ZV9yZWFkYWhlYWRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfaWdub3JlX3NhYnJzZWVrX2R1cmluZ19hZHNraXBcdTAwM2R0cnVlXHUwMDI2aHRtbDVfaW5uZXJ0dWJlX2hlYXJ0YmVhdHNfZm9yX2ZhaXJwbGF5XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2lubmVydHViZV9oZWFydGJlYXRzX2Zvcl93aWRldmluZVx1MDAzZHRydWVcdTAwMjZodG1sNV9qdW1ib19tb2JpbGVfc3Vic2VnbWVudF9yZWFkYWhlYWRfdGFyZ2V0XHUwMDNkMy4wXHUwMDI2aHRtbDVfanVtYm9fdWxsX25vbnN0cmVhbWluZ19tZmZhX21zXHUwMDNkNDAwMFx1MDAyNmh0bWw1X2p1bWJvX3VsbF9zdWJzZWdtZW50X3JlYWRhaGVhZF90YXJnZXRcdTAwM2QxLjNcdTAwMjZodG1sNV9rYWJ1a2lfZHJtX2xpdmVfNTFfZGVmYXVsdF9vZmZcdTAwM2R0cnVlXHUwMDI2aHRtbDVfbGljZW5zZV9jb25zdHJhaW50X2RlbGF5XHUwMDNkNTAwMFx1MDAyNmh0bWw1X2xpdmVfYWJyX2hlYWRfbWlzc19mcmFjdGlvblx1MDAzZDAuMFx1MDAyNmh0bWw1X2xpdmVfYWJyX3JlcHJlZGljdF9mcmFjdGlvblx1MDAzZDAuMFx1MDAyNmh0bWw1X2xpdmVfY2h1bmtfcmVhZGFoZWFkX3Byb3hpbWFfb3ZlcnJpZGVcdTAwM2QwXHUwMDI2aHRtbDVfbGl2ZV9sb3dfbGF0ZW5jeV9iYW5kd2lkdGhfd2luZG93XHUwMDNkMC4wXHUwMDI2aHRtbDVfbGl2ZV9ub3JtYWxfbGF0ZW5jeV9iYW5kd2lkdGhfd2luZG93XHUwMDNkMC4wXHUwMDI2aHRtbDVfbGl2ZV9xdWFsaXR5X2NhcFx1MDAzZDBcdTAwMjZodG1sNV9saXZlX3VsdHJhX2xvd19sYXRlbmN5X2JhbmR3aWR0aF93aW5kb3dcdTAwM2QwLjBcdTAwMjZodG1sNV9saXZlbmVzc19kcmlmdF9jaHVua19vdmVycmlkZVx1MDAzZDBcdTAwMjZodG1sNV9saXZlbmVzc19kcmlmdF9wcm94aW1hX292ZXJyaWRlXHUwMDNkMFx1MDAyNmh0bWw1X2xvZ19hdWRpb19hYnJcdTAwM2R0cnVlXHUwMDI2aHRtbDVfbG9nX2V4cGVyaW1lbnRfaWRfZnJvbV9wbGF5ZXJfcmVzcG9uc2VfdG9fY3RtcFx1MDAzZFx1MDAyNmh0bWw1X2xvZ19maXJzdF9zc2RhaV9yZXF1ZXN0c19raWxsc3dpdGNoXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2xvZ19yZWJ1ZmZlcl9ldmVudHNcdTAwM2Q1XHUwMDI2aHRtbDVfbG9nX3NhYnJfbWFsZm9ybWVkX2NvbmZpZ19wcm90b19zaGFyZWRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfbG9nX3RyaWdnZXJfZXZlbnRzX3dpdGhfZGVidWdfZGF0YVx1MDAzZHRydWVcdTAwMjZodG1sNV9sb2dfdnNzX2V4dHJhX2xyX2NwYXJhbXNfZnJlcVx1MDAzZFx1MDAyNmh0bWw1X2xvbmdfcmVidWZmZXJfamlnZ2xlX2NtdF9kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV9sb25nX3JlYnVmZmVyX3RocmVzaG9sZF9tc1x1MDAzZDMwMDAwXHUwMDI2aHRtbDVfbWFuaWZlc3RsZXNzX3ZwOV9vdGZcdTAwM2R0cnVlXHUwMDI2aHRtbDVfbWF4X2J1ZmZlcl9oZWFsdGhfZm9yX2Rvd25ncmFkZV9wcm9wXHUwMDNkMC4wXHUwMDI2aHRtbDVfbWF4X2J1ZmZlcl9oZWFsdGhfZm9yX2Rvd25ncmFkZV9zZWNzXHUwMDNkMC4wXHUwMDI2aHRtbDVfbWF4X2J5dGVyYXRlXHUwMDNkMFx1MDAyNmh0bWw1X21heF9kaXNjb250aW51aXR5X3Jld3JpdGVfY291bnRcdTAwM2QwXHUwMDI2aHRtbDVfbWF4X2RyaWZ0X3Blcl90cmFja19zZWNzXHUwMDNkMC4wXHUwMDI2aHRtbDVfbWF4X2hlYWRtX2Zvcl9zdHJlYW1pbmdfeGhyXHUwMDNkMFx1MDAyNmh0bWw1X21heF9saXZlX2R2cl93aW5kb3dfcGx1c19tYXJnaW5fc2Vjc1x1MDAzZDQ2ODAwLjBcdTAwMjZodG1sNV9tYXhfcXVhbGl0eV9zZWxfdXBncmFkZVx1MDAzZDBcdTAwMjZodG1sNV9tYXhfcmVkaXJlY3RfcmVzcG9uc2VfbGVuZ3RoXHUwMDNkODE5Mlx1MDAyNmh0bWw1X21heF9zZWxlY3RhYmxlX3F1YWxpdHlfb3JkaW5hbFx1MDAzZDBcdTAwMjZodG1sNV9tYXhfdmVydGljYWxfcmVzb2x1dGlvblx1MDAzZDBcdTAwMjZodG1sNV9tYXhpbXVtX3JlYWRhaGVhZF9zZWNvbmRzXHUwMDNkMC4wXHUwMDI2aHRtbDVfbWVkaWFfZnVsbHNjcmVlblx1MDAzZHRydWVcdTAwMjZodG1sNV9tZWRpYV90aW1lX3dlaWdodF9wcm9wXHUwMDNkMC4wXHUwMDI2aHRtbDVfbWZjX21heF9xdWV1ZV9sZW5ndGhcdTAwM2QxXHUwMDI2aHRtbDVfbWZjX21pbl9idWZmZXJfaGVhbHRoXHUwMDNkMFx1MDAyNmh0bWw1X21mY19zZWNzX2xlZnRfdG9fc3RhcnRfcHJlbG9hZFx1MDAzZDBcdTAwMjZodG1sNV9taW5fZmFpbHVyZXNfdG9fZGVsYXlfcmV0cnlcdTAwM2QzXHUwMDI2aHRtbDVfbWluX21lZGlhX2R1cmF0aW9uX2Zvcl9hcHBlbmRfcHJvcFx1MDAzZDAuMFx1MDAyNmh0bWw1X21pbl9tZWRpYV9kdXJhdGlvbl9mb3JfY2Ficl9zbGljZVx1MDAzZDAuMDFcdTAwMjZodG1sNV9taW5fcGxheWJhY2tfYWR2YW5jZV9mb3Jfc3RlYWR5X3N0YXRlX3NlY3NcdTAwM2QwXHUwMDI2aHRtbDVfbWluX3F1YWxpdHlfb3JkaW5hbFx1MDAzZDBcdTAwMjZodG1sNV9taW5fcmVhZGJlaGluZF9jYXBfc2Vjc1x1MDAzZDYwXHUwMDI2aHRtbDVfbWluX3JlYWRiZWhpbmRfc2Vjc1x1MDAzZDBcdTAwMjZodG1sNV9taW5fc2Vjb25kc19iZXR3ZWVuX2Zvcm1hdF9zZWxlY3Rpb25zXHUwMDNkMC4wXHUwMDI2aHRtbDVfbWluX3NlbGVjdGFibGVfcXVhbGl0eV9vcmRpbmFsXHUwMDNkMFx1MDAyNmh0bWw1X21pbl9zdGFydHVwX2J1ZmZlcmVkX21lZGlhX2R1cmF0aW9uX2Zvcl9saXZlX3NlY3NcdTAwM2QwLjBcdTAwMjZodG1sNV9taW5fc3RhcnR1cF9idWZmZXJlZF9tZWRpYV9kdXJhdGlvbl9zZWNzXHUwMDNkMS4yXHUwMDI2aHRtbDVfbWluX3N0YXJ0dXBfZHVyYXRpb25fbGl2ZV9zZWNzXHUwMDNkMC4yNVx1MDAyNmh0bWw1X21pbl91bmRlcnJ1bl9idWZmZXJlZF9wcmVfc3RlYWR5X3N0YXRlX21zXHUwMDNkMFx1MDAyNmh0bWw1X21pbl91cGdyYWRlX2hlYWx0aF9zZWNzXHUwMDNkMC4wXHUwMDI2aHRtbDVfbWluaW11bV9yZWFkYWhlYWRfc2Vjb25kc1x1MDAzZDAuMFx1MDAyNmh0bWw1X21vY2tfY29udGVudF9iaW5kaW5nX2Zvcl9zZXNzaW9uX3Rva2VuXHUwMDNkXHUwMDI2aHRtbDVfbW92ZV9kaXNhYmxlX2FpcnBsYXlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfbm9fcGxhY2Vob2xkZXJfcm9sbGJhY2tzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X25vbl9vbmVzaWVfYXR0YWNoX3BvX3Rva2VuXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X29mZmxpbmVfZG93bmxvYWRfdGltZW91dF9yZXRyeV9saW1pdFx1MDAzZDRcdTAwMjZodG1sNV9vZmZsaW5lX2ZhaWx1cmVfcmV0cnlfbGltaXRcdTAwM2QyXHUwMDI2aHRtbDVfb2ZmbGluZV9wbGF5YmFja19wb3NpdGlvbl9zeW5jXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X29mZmxpbmVfcHJldmVudF9yZWRvd25sb2FkX2Rvd25sb2FkZWRfdmlkZW9cdTAwM2R0cnVlXHUwMDI2aHRtbDVfb25lc2llX2F1ZGlvX29ubHlfcGxheWJhY2tcdTAwM2R0cnVlXHUwMDI2aHRtbDVfb25lc2llX2NoZWNrX3RpbWVvdXRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfb25lc2llX2RlZmVyX2NvbnRlbnRfbG9hZGVyX21zXHUwMDNkMFx1MDAyNmh0bWw1X29uZXNpZV9saXZlX3R0bF9zZWNzXHUwMDNkOFx1MDAyNmh0bWw1X29uZXNpZV9wcmV3YXJtX2ludGVydmFsX21zXHUwMDNkMFx1MDAyNmh0bWw1X29uZXNpZV9wcmV3YXJtX21heF9sYWN0X21zXHUwMDNkMFx1MDAyNmh0bWw1X29uZXNpZV9yZWRpcmVjdG9yX3RpbWVvdXRfbXNcdTAwM2QwXHUwMDI2aHRtbDVfb25lc2llX3NlbmRfc3RyZWFtZXJfY29udGV4dFx1MDAzZHRydWVcdTAwMjZodG1sNV9vdmVycmlkZV9taWNyb19kaXNjb250aW51aXRpZXNfdGhyZXNob2xkX21zXHUwMDNkLTFcdTAwMjZodG1sNV9wYWNlZF9wb2xsX21pbl9oZWFsdGhfbXNcdTAwM2QwXHUwMDI2aHRtbDVfcGFjZWRfcG9sbF9tc1x1MDAzZDBcdTAwMjZodG1sNV9wYXVzZV9vbl9ub25mb3JlZ3JvdW5kX3BsYXRmb3JtX2Vycm9yc1x1MDAzZHRydWVcdTAwMjZodG1sNV9wZWFrX3NoYXZlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3BlcmZfY2FwX292ZXJyaWRlX3N0aWNreVx1MDAzZHRydWVcdTAwMjZodG1sNV9wZXJmb3JtYW5jZV9jYXBfZmxvb3JcdTAwM2QzNjBcdTAwMjZodG1sNV9wZXJzZXJ2ZV9hdjFfcGVyZl9jYXBcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcGljdHVyZV9pbl9waWN0dXJlX2xvZ2dpbmdfb25yZXNpemVfcmF0aW9cdTAwM2QwLjBcdTAwMjZodG1sNV9wbGF0Zm9ybV9tYXhfYnVmZmVyX2hlYWx0aF9vdmVyc2VuZF9kdXJhdGlvbl9zZWNzXHUwMDNkMC4wXHUwMDI2aHRtbDVfcGxhdGZvcm1fbWluaW11bV9yZWFkYWhlYWRfc2Vjb25kc1x1MDAzZDAuMFx1MDAyNmh0bWw1X3BsYXRmb3JtX3doaXRlbGlzdGVkX2Zvcl9mcmFtZV9hY2N1cmF0ZV9zZWVrc1x1MDAzZHRydWVcdTAwMjZodG1sNV9wbGF5ZXJfYXR0X2luaXRpYWxfZGVsYXlfbXNcdTAwM2QzMDAwXHUwMDI2aHRtbDVfcGxheWVyX2F0dF9yZXRyeV9kZWxheV9tc1x1MDAzZDE1MDBcdTAwMjZodG1sNV9wbGF5ZXJfYXV0b25hdl9sb2dnaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3BsYXllcl9lczZcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcGxheWVyX21pbl9idWlsZF9jbFx1MDAzZC0xXHUwMDI2aHRtbDVfcGxheWVyX3ByZWxvYWRfYWRfZml4XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3Bvc3RfaW50ZXJydXB0X3JlYWRhaGVhZFx1MDAzZDIwXHUwMDI2aHRtbDVfcHJlZmVyX2xhbmd1YWdlX292ZXJfY29kZWNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcHJlZmVyX3NlcnZlcl9id2UzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3ByZWxvYWRfYmVmb3JlX2luaXRpYWxfc2Vla193aXRoX3NhYnJcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcHJlbG9hZF93YWl0X3RpbWVfc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X3ByZXZlbnRfbW9iaWxlX2JhY2tncm91bmRfcGxheV9vbl9ldmVudF9zaGFyZWRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcHJvYmVfcHJpbWFyeV9kZWxheV9iYXNlX21zXHUwMDNkMFx1MDAyNmh0bWw1X3Byb2Nlc3NfYWxsX2VuY3J5cHRlZF9ldmVudHNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcW9lX3Byb3RvX21vY2tfbGVuZ3RoXHUwMDNkMFx1MDAyNmh0bWw1X3F1ZXJ5X3N3X3NlY3VyZV9jcnlwdG9fZm9yX2FuZHJvaWRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmFuZG9tX3BsYXliYWNrX2NhcFx1MDAzZDBcdTAwMjZodG1sNV9yZWNvcmRfaXNfb2ZmbGluZV9vbl9wbGF5YmFja19hdHRlbXB0X3N0YXJ0XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JlY29yZF91bXBfdGltaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JlbG9hZF9ieV9rYWJ1a2lfYXBwXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JlbW92ZV9jb21tYW5kX3RyaWdnZXJlZF9jb21wYW5pb25zXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JlbW92ZV9ub3Rfc2VydmFibGVfY2hlY2tfa2lsbHN3aXRjaFx1MDAzZHRydWVcdTAwMjZodG1sNV9yZXBvcnRfZmF0YWxfZHJtX3Jlc3RyaWN0ZWRfZXJyb3Jfa2lsbHN3aXRjaFx1MDAzZHRydWVcdTAwMjZodG1sNV9yZXBvcnRfc2xvd19hZHNfYXNfZXJyb3JcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVwcmVkaWN0X2ludGVydmFsX21zXHUwMDNkMFx1MDAyNmh0bWw1X3JlcXVlc3Rfb25seV9oZHJfb3Jfc2RyX2tleXNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVxdWVzdF9zaXplX21heF9rYlx1MDAzZDBcdTAwMjZodG1sNV9yZXF1ZXN0X3NpemVfbWluX2tiXHUwMDNkMFx1MDAyNmh0bWw1X3Jlc2Vla19hZnRlcl90aW1lX2p1bXBfY2ZsXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3Jlc2Vla19hZnRlcl90aW1lX2p1bXBfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfcmVzZXRfYmFja29mZl9vbl91c2VyX3NlZWtcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVzb3VyY2VfYmFkX3N0YXR1c19kZWxheV9zY2FsaW5nXHUwMDNkMS41XHUwMDI2aHRtbDVfcmVzdHJpY3Rfc3RyZWFtaW5nX3hocl9vbl9zcWxlc3NfcmVxdWVzdHNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmV0cnlfZG93bmxvYWRzX2Zvcl9leHBpcmF0aW9uXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JldHJ5X29uX2RybV9rZXlfZXJyb3JcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmV0cnlfb25fZHJtX3VuYXZhaWxhYmxlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JldHJ5X3F1b3RhX2V4Y2VlZGVkX3ZpYV9zZWVrXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JldHVybl9wbGF5YmFja19pZl9hbHJlYWR5X3ByZWxvYWRlZFx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX2VuYWJsZV9zZXJ2ZXJfeHRhZ19zZWxlY3Rpb25cdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9mZXRjaF9vbl9pZGxlX25ldHdvcmtfcHJlbG9hZGVkX3BsYXllcnNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9mb3JjZV9tYXhfbmV0d29ya19pbnRlcnJ1cHRpb25fZHVyYXRpb25fbXNcdTAwM2QwXHUwMDI2aHRtbDVfc2Ficl9saXZlX2xvd19sYXRlbmN5X3N0cmVhbWluZ194aHJcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9saXZlX25vcm1hbF9sYXRlbmN5X3N0cmVhbWluZ194aHJcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9saXZlX3RpbWluZ1x1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX2xpdmVfdWx0cmFfbG93X2xhdGVuY3lfc3RyZWFtaW5nX3hoclx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX2xvZ19zZXJ2ZXJfeHRhZ19zZWxlY3Rpb25fb25lc2llX21pc21hdGNoXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfbWluX21lZGlhX2J5dGVzX2ZhY3Rvcl90b19hcHBlbmRfZm9yX3N0cmVhbVx1MDAzZDAuMFx1MDAyNmh0bWw1X3NhYnJfbm9uX3N0cmVhbWluZ194aHJfcmVxdWVzdF9jYW5jZWxsYXRpb25fdGltZW91dF9tc1x1MDAzZDBcdTAwMjZodG1sNV9zYWJyX25vbl9zdHJlYW1pbmdfeGhyX3RpbWVvdXRfcmV0cnlfbGltaXRcdTAwM2QwXHUwMDI2aHRtbDVfc2Ficl9yZXBvcnRfcGFydGlhbF9zZWdtZW50X2VzdGltYXRlZF9kdXJhdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX3JlcG9ydF9yZXF1ZXN0X2NhbmNlbGxhdGlvbl9pbmZvXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfcmVxdWVzdF9saW1pdF9wZXJfcGVyaW9kXHUwMDNkMjBcdTAwMjZodG1sNV9zYWJyX3JlcXVlc3Rfb25fY29uc3RyYWludFx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX3NlZWtfbm9fc2hpZnRfdG9sZXJhbmNlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfc2tpcF9jbGllbnRfYXVkaW9faW5pdF9zZWxlY3Rpb25cdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9zdWNjZXNzZnVsX3Byb2JlX3RpbWVvdXRfbXNcdTAwM2QwXHUwMDI2aHRtbDVfc2Ficl91Z2Nfdm9kX3dlYl9lbWJlZGRlZF9jbGllbnRfZGVmYXVsdF9iYW5kd2lkdGhfb25faXBob25lXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfdW51c2VkX2Jsb2F0X3NpemVfYnl0ZXNcdTAwM2QwXHUwMDI2aHRtbDVfc2Ftc3VuZ19rYW50X2xpbWl0X21heF9iaXRyYXRlXHUwMDNkMFx1MDAyNmh0bWw1X3NlZWtfamlnZ2xlX2NtdF9kZWxheV9tc1x1MDAzZDgwMDBcdTAwMjZodG1sNV9zZWVrX25ld19lbGVtX2RlbGF5X21zXHUwMDNkMTIwMDBcdTAwMjZodG1sNV9zZWVrX25ld19lbGVtX3Nob3J0c19kZWxheV9tc1x1MDAzZDIwMDBcdTAwMjZodG1sNV9zZWVrX25ld19tZWRpYV9lbGVtZW50X3Nob3J0c19yZXVzZV9jZmxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Vla19uZXdfbWVkaWFfZWxlbWVudF9zaG9ydHNfcmV1c2VfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfc2Vla19uZXdfbWVkaWFfc291cmNlX3Nob3J0c19yZXVzZV9jZmxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Vla19uZXdfbWVkaWFfc291cmNlX3Nob3J0c19yZXVzZV9kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV9zZWVrX3NldF9jbXRfZGVsYXlfbXNcdTAwM2QyMDAwXHUwMDI2aHRtbDVfc2Vla190aW1lb3V0X2RlbGF5X21zXHUwMDNkMjAwMDBcdTAwMjZodG1sNV9zZW5kX2N1ZXBvaW50X2lkX2luX2FkX2JyZWFrX3JlcXVlc3RcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2VuZF9zZXJpYWxpemVkX29uZV90aW1lX3FvZV9jb250ZXh0X2RhdGFcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2VydmVfc3RhcnRfc2Vjb25kc19zZWVrX2Zvcl9wb3N0X2xpdmVfc2Ficlx1MDAzZHRydWVcdTAwMjZodG1sNV9zZXJ2ZXJfc3RpdGNoZWRfZGFpX2RlY29yYXRlZF91cmxfcmV0cnlfbGltaXRcdTAwM2Q1XHUwMDI2aHRtbDVfc2Vzc2lvbl9wb190b2tlbl9pbnRlcnZhbF90aW1lX21zXHUwMDNkOTAwMDAwXHUwMDI2aHRtbDVfc2V0X3ZpZGVvX2lkX2FzX2V4cGVjdGVkX2NvbnRlbnRfYmluZGluZ1x1MDAzZHRydWVcdTAwMjZodG1sNV9zaG9ydHNfZ2FwbGVzc19hZF9zbG93X3N0YXJ0X2NmbFx1MDAzZHRydWVcdTAwMjZodG1sNV9zaG9ydHNfZ2FwbGVzc19hZF9zbG93X3N0YXJ0X2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X3Nob3J0c19nYXBsZXNzX25leHRfYnVmZmVyX2luX3NlY29uZHNcdTAwM2QwXHUwMDI2aHRtbDVfc2hvcnRzX2dhcGxlc3Nfbm9fZ2xsYXRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2hvcnRzX2dhcGxlc3Nfc2xvd19zdGFydF9kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV9zaG93X2RyY190b2dnbGVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2ltcGxpZmllZF9iYWNrdXBfdGltZW91dF9zYWJyX2xpdmVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2tpcF9lbXB0eV9wb190b2tlblx1MDAzZHRydWVcdTAwMjZodG1sNV9za2lwX3Nsb3dfYWRfZGVsYXlfbXNcdTAwM2QxNTAwMFx1MDAyNmh0bWw1X3Nsb3dfc3RhcnRfbm9fbWVkaWFfc291cmNlX2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X3Nsb3dfc3RhcnRfdGltZW91dF9kZWxheV9tc1x1MDAzZDIwMDAwXHUwMDI2aHRtbDVfc3NkYWlfZW5hYmxlX21lZGlhX2VuZF9jdWVfcmFuZ2VcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc3NkYWlfZmFpbHVyZV9yZXRyeV9saW1pdFx1MDAzZDBcdTAwMjZodG1sNV9zc2RhaV9sb2dfbWlzc2luZ19hZF9jb25maWdfcmVhc29uXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3N0YWxsX2ZhY3Rvclx1MDAzZDAuMFx1MDAyNmh0bWw1X3N0YXRlZnVsX2F1ZGlvX25vcm1hbGl6YXRpb25cdTAwM2R0cnVlXHUwMDI2aHRtbDVfc3RpY2t5X2R1cmF0aW9uX21vc1x1MDAzZDBcdTAwMjZodG1sNV9zdG9yZV94aHJfaGVhZGVyc19yZWFkYWJsZVx1MDAzZHRydWVcdTAwMjZodG1sNV9zdHJlYW1pbmdfcmVzaWxpZW5jZVx1MDAzZHRydWVcdTAwMjZodG1sNV9zdHJlYW1pbmdfeGhyX3RpbWVfYmFzZWRfY29uc29saWRhdGlvbl9tc1x1MDAzZC0xXHUwMDI2aHRtbDVfc3Vic2VnbWVudF9yZWFkYWhlYWRfbG9hZF9zcGVlZF9jaGVja19pbnRlcnZhbFx1MDAzZDAuNVx1MDAyNmh0bWw1X3N1YnNlZ21lbnRfcmVhZGFoZWFkX21pbl9idWZmZXJfaGVhbHRoX3NlY3NcdTAwM2QwLjI1XHUwMDI2aHRtbDVfc3Vic2VnbWVudF9yZWFkYWhlYWRfbWluX2J1ZmZlcl9oZWFsdGhfc2Vjc19vbl90aW1lb3V0XHUwMDNkMC4xXHUwMDI2aHRtbDVfc3Vic2VnbWVudF9yZWFkYWhlYWRfbWluX2xvYWRfc3BlZWRcdTAwM2QxLjVcdTAwMjZodG1sNV9zdWJzZWdtZW50X3JlYWRhaGVhZF9zZWVrX2xhdGVuY3lfZnVkZ2VcdTAwM2QwLjVcdTAwMjZodG1sNV9zdWJzZWdtZW50X3JlYWRhaGVhZF90YXJnZXRfYnVmZmVyX2hlYWx0aF9zZWNzXHUwMDNkMC41XHUwMDI2aHRtbDVfc3Vic2VnbWVudF9yZWFkYWhlYWRfdGltZW91dF9zZWNzXHUwMDNkMi4wXHUwMDI2aHRtbDVfdHJhY2tfb3ZlcnNob290XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3RyYW5zZmVyX3Byb2Nlc3NpbmdfbG9nc19pbnRlcnZhbFx1MDAzZDEwMDBcdTAwMjZodG1sNV90cmlnZ2VyX2xvYWRlcl93aGVuX2lkbGVfbmV0d29ya1x1MDAzZHRydWVcdTAwMjZodG1sNV91Z2NfbGl2ZV9hdWRpb181MVx1MDAzZHRydWVcdTAwMjZodG1sNV91Z2Nfdm9kX2F1ZGlvXzUxXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VucmVwb3J0ZWRfc2Vla19yZXNlZWtfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfdXBkYXRlX3RpbWVfb25fc2Vla2VkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV9kYXRlX25vd19mb3JfbG9jYWxfc3RvcmFnZVx1MDAzZHRydWVcdTAwMjZodG1sNV91c2VfaW5pdF9zZWxlY3RlZF9hdWRpb1x1MDAzZHRydWVcdTAwMjZodG1sNV91c2Vfbm9uX2FjdGl2ZV9icm9hZGNhc3RfZm9yX3Bvc3RfbGl2ZVx1MDAzZHRydWVcdTAwMjZodG1sNV91c2VfcG9zdF9mb3JfbWVkaWFcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX3NoYXJlZF9vd2xfaW5zdGFuY2VcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX3VtcFx1MDAzZHRydWVcdTAwMjZodG1sNV91c2VfdW1wX3JlcXVlc3Rfc2xpY2VyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV91bXBfdGltaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV92aWRlb19xdWFsaXR5X2NhcF9mb3JfdXN0cmVhbWVyX2NvbnN0cmFpbnRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX3ZpZGVvX3RyYW5zaXRpb25fZW5kcG9pbnRfaGVhcnRiZWF0XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3ZpZGVvX3RiZF9taW5fa2JcdTAwM2QwXHUwMDI2aHRtbDVfdmlld3BvcnRfdW5kZXJzZW5kX21heGltdW1cdTAwM2QwLjBcdTAwMjZodG1sNV92b2x1bWVfc2xpZGVyX3Rvb2x0aXBcdTAwM2R0cnVlXHUwMDI2aHRtbDVfd2ViX3BvX2V4cGVyaW1lbnRfaWRzXHUwMDNkW11cdTAwMjZodG1sNV93ZWJfcG9fcmVxdWVzdF9rZXlcdTAwM2RcdTAwMjZodG1sNV93ZWJfcG9fdG9rZW5fZGlzYWJsZV9jYWNoaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3dlYnBvX2lkbGVfcHJpb3JpdHlfam9iXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3dlYnBvX2thaW9zX2RlZmVyX3RpbWVvdXRfbXNcdTAwM2QwXHUwMDI2aHRtbDVfd29mZmxlX3Jlc3VtZVx1MDAzZHRydWVcdTAwMjZodG1sNV93b3JrYXJvdW5kX2RlbGF5X3RyaWdnZXJcdTAwM2R0cnVlXHUwMDI2aWRiX2ltbWVkaWF0ZV9jb21taXRcdTAwM2R0cnVlXHUwMDI2aWdub3JlX292ZXJsYXBwaW5nX2N1ZV9wb2ludHNfb25fZW5kZW1pY19saXZlX2h0bWw1XHUwMDNkdHJ1ZVx1MDAyNmlsX2F0dGFjaF9jYWNoZV9saW1pdFx1MDAzZHRydWVcdTAwMjZpbF9wYXlsb2FkX3NjcmFwaW5nXHUwMDNkXHUwMDI2aWxfdXNlX3ZpZXdfbW9kZWxfbG9nZ2luZ19jb250ZXh0XHUwMDNkdHJ1ZVx1MDAyNmluaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXRcdTAwM2QyMDAwXHUwMDI2aW5qZWN0ZWRfbGljZW5zZV9oYW5kbGVyX2Vycm9yX2NvZGVcdTAwM2QwXHUwMDI2aW5qZWN0ZWRfbGljZW5zZV9oYW5kbGVyX2xpY2Vuc2Vfc3RhdHVzXHUwMDNkMFx1MDAyNmlvc19hbmRfYW5kcm9pZF9mcmVzY2FfcG9sbGluZ19kZWxheV9vdmVycmlkZVx1MDAzZDBcdTAwMjZpdGRybV9hbHdheXNfdXNlX3dpZGV2aW5lX3Nka1x1MDAzZHRydWVcdTAwMjZpdGRybV9kaXNhYmxlX2V4dGVybmFsX2tleV9yb3RhdGlvbl9zeXN0ZW1faWRzXHUwMDNkW11cdTAwMjZpdGRybV9lbmFibGVfcmV2b2NhdGlvbl9yZXBvcnRpbmdcdTAwM2R0cnVlXHUwMDI2aXRkcm1faW5qZWN0ZWRfbGljZW5zZV9zZXJ2aWNlX2Vycm9yX2NvZGVcdTAwM2QwXHUwMDI2aXRkcm1fc2V0X3NhYnJfbGljZW5zZV9jb25zdHJhaW50XHUwMDNkdHJ1ZVx1MDAyNml0ZHJtX3VzZV9mYWlycGxheV9zZGtcdTAwM2R0cnVlXHUwMDI2aXRkcm1fdXNlX3dpZGV2aW5lX3Nka19mb3JfcHJlbWl1bV9jb250ZW50XHUwMDNkdHJ1ZVx1MDAyNml0ZHJtX3dpZGV2aW5lX2hhcmRlbmVkX3ZtcF9tb2RlXHUwMDNkbG9nXHUwMDI2anNvbl9jb25kZW5zZWRfcmVzcG9uc2VcdTAwM2R0cnVlXHUwMDI2a2V2bGFyX2NvbW1hbmRfaGFuZGxlcl9jb21tYW5kX2Jhbmxpc3RcdTAwM2RbXVx1MDAyNmtldmxhcl9kZWxoaV9tb2Rlcm5fd2ViX2VuZHNjcmVlbl9pZGVhbF90aWxlX3dpZHRoX3BlcmNlbnRhZ2VcdTAwM2QwLjI3XHUwMDI2a2V2bGFyX2RlbGhpX21vZGVybl93ZWJfZW5kc2NyZWVuX21heF9yb3dzXHUwMDNkMlx1MDAyNmtldmxhcl9kZWxoaV9tb2Rlcm5fd2ViX2VuZHNjcmVlbl9tYXhfd2lkdGhcdTAwM2Q1MDBcdTAwMjZrZXZsYXJfZGVsaGlfbW9kZXJuX3dlYl9lbmRzY3JlZW5fbWluX3dpZHRoXHUwMDNkMjAwXHUwMDI2a2V2bGFyX2dlbF9lcnJvcl9yb3V0aW5nXHUwMDNkdHJ1ZVx1MDAyNmtldmxhcl9taW5pcGxheWVyX2V4cGFuZF90b3BcdTAwM2R0cnVlXHUwMDI2a2V2bGFyX21pbmlwbGF5ZXJfcGxheV9wYXVzZV9vbl9zY3JpbVx1MDAzZHRydWVcdTAwMjZrZXZsYXJfcGxheWJhY2tfYXNzb2NpYXRlZF9xdWV1ZVx1MDAzZHRydWVcdTAwMjZsYXVuY2hfbGljZW5zZV9zZXJ2aWNlX2FsbF9vdHRfdmlkZW9zX2F1dG9tYXRpY19mYWlsX29wZW5cdTAwM2R0cnVlXHUwMDI2bGltaXRfeXRjc2lfZGVidWdfYXJyYXlfc2l6ZVx1MDAzZHRydWVcdTAwMjZsaXZlX2NoYXRfZW5hYmxlX3J0YV9tYW5hZ2VyXHUwMDNkdHJ1ZVx1MDAyNmxpdmVfY2h1bmtfcmVhZGFoZWFkXHUwMDNkM1x1MDAyNmxvZ19jbGlja193aXRoX2xheWVyX2Zyb21fZWxlbWVudF9pbl9jb21tYW5kX2hhbmRsZXJcdTAwM2R0cnVlXHUwMDI2bG9nX3dpbmRvd19vbmVycm9yX2ZyYWN0aW9uXHUwMDNkMC4xXHUwMDI2bWFuaWZlc3RsZXNzX3Bvc3RfbGl2ZVx1MDAzZHRydWVcdTAwMjZtYW5pZmVzdGxlc3NfcG9zdF9saXZlX3VmcGhcdTAwM2R0cnVlXHUwMDI2bWF4X2JvZHlfc2l6ZV90b19jb21wcmVzc1x1MDAzZDUwMDAwMFx1MDAyNm1heF9jZGZlX3F1YWxpdHlfb3JkaW5hbFx1MDAzZDBcdTAwMjZtYXhfcHJlZmV0Y2hfd2luZG93X3NlY19mb3JfbGl2ZXN0cmVhbV9vcHRpbWl6YXRpb25cdTAwM2QxMFx1MDAyNm1heF9yZXNvbHV0aW9uX2Zvcl93aGl0ZV9ub2lzZVx1MDAzZDM2MFx1MDAyNm1keF9lbmFibGVfcHJpdmFjeV9kaXNjbG9zdXJlX3VpXHUwMDNkdHJ1ZVx1MDAyNm1keF9sb2FkX2Nhc3RfYXBpX2Jvb3RzdHJhcF9zY3JpcHRcdTAwM2R0cnVlXHUwMDI2bWluX3ByZWZldGNoX29mZnNldF9zZWNfZm9yX2xpdmVzdHJlYW1fb3B0aW1pemF0aW9uXHUwMDNkMjBcdTAwMjZtdGFfZHJjX211dHVhbF9leGNsdXNpb25fcmVtb3ZhbFx1MDAzZHRydWVcdTAwMjZtdXNpY19lbmFibGVfc2hhcmVkX2F1ZGlvX3RpZXJfbG9naWNcdTAwM2R0cnVlXHUwMDI2bXdlYl9hY2NvdW50X2xpbmtpbmdfbm9hcHBcdTAwM2R0cnVlXHUwMDI2bXdlYl9kZWJ1Z19zdGlja3lfc2V0dGluZ3NcdTAwM2R0cnVlXHUwMDI2bXdlYl9lbmFibGVfY2xpY2tfdG9fcGxheV9wYXVzZVx1MDAzZHRydWVcdTAwMjZtd2ViX2VuYWJsZV9maW5lX3NjcnViYmluZ19mb3JfcmVjc1x1MDAzZHRydWVcdTAwMjZtd2ViX2VuYWJsZV9tb3JlX2NodW5rc1x1MDAzZHRydWVcdTAwMjZtd2ViX25hdGl2ZV9jb250cm9sX2luX2ZhdXhfZnVsbHNjcmVlbl9zaGFyZWRcdTAwM2R0cnVlXHUwMDI2bXdlYl9wbGF5ZXJfY29udHJvbF9vbl9ob3Zlclx1MDAzZHRydWVcdTAwMjZtd2ViX3Byb2dyZXNzX2Jhcl9zZWVrX29uX21vdXNlX2NsaWNrXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfc2hvcnRzX2NvbW1lbnRzX3BhbmVsX2lkX2NoYW5nZVx1MDAzZHRydWVcdTAwMjZtd2ViX3VzZV9taWNyb2Zvcm1hdF90aXRsZV9mb3JfcG9zdHNcdTAwM2R0cnVlXHUwMDI2bmV0d29ya19wb2xsaW5nX2ludGVydmFsXHUwMDNkMzAwMDBcdTAwMjZuZXR3b3JrbGVzc19sb2dnaW5nXHUwMDNkdHJ1ZVx1MDAyNm5ld19jb2RlY3Nfc3RyaW5nX2FwaV91c2VzX2xlZ2FjeV9zdHlsZVx1MDAzZHRydWVcdTAwMjZub19jbGllbnRfdmVfYXR0YWNoX3VubGVzc19zaG93blx1MDAzZHRydWVcdTAwMjZub19maWxsZXJfdmlkZW9fZm9yX3NzYV9wbGF5YmFja3NcdTAwM2R0cnVlXHUwMDI2b3ZlcnJpZGVfZHJtX3JlcXVpcmVkX3BsYXliYWNrX3BvbGljeV9jaGFubmVsc1x1MDAzZFtdXHUwMDI2cGFnZWlkX2FzX2hlYWRlcl93ZWJcdTAwM2R0cnVlXHUwMDI2cGxheWVyX2Fkc19zZXRfYWRmb3JtYXRfb25fY2xpZW50XHUwMDNkdHJ1ZVx1MDAyNnBsYXllcl9ib290c3RyYXBfbWV0aG9kXHUwMDNkdHJ1ZVx1MDAyNnBsYXllcl9jb250cm9sc191c2VfcGxheWVyX2FwaV9jb250ZXh0XHUwMDNkdHJ1ZVx1MDAyNnBsYXllcl9jb250cm9sc192b2x1bWVfY29udHJvbHNfdXNlX3BsYXllcl9wcm9wc1x1MDAzZHRydWVcdTAwMjZwbGF5ZXJfZGVzdHJveV9vbGRfdmVyc2lvblx1MDAzZHRydWVcdTAwMjZwbGF5ZXJfZW5hYmxlX3BsYXliYWNrX3BsYXlsaXN0X2NoYW5nZVx1MDAzZHRydWVcdTAwMjZwbGF5ZXJfbmV3X2luZm9fY2FyZF9mb3JtYXRcdTAwM2R0cnVlXHUwMDI2cGxheWVyX3VuZGVybGF5X21pbl9wbGF5ZXJfd2lkdGhcdTAwM2Q3NjguMFx1MDAyNnBsYXllcl91bmRlcmxheV92aWRlb193aWR0aF9mcmFjdGlvblx1MDAzZDAuNlx1MDAyNnBsYXllcl93ZWJfY2FuYXJ5X3N0YWdlXHUwMDNkMFx1MDAyNnBsYXlyZWFkeV9maXJzdF9wbGF5X2V4cGlyYXRpb25cdTAwM2QtMVx1MDAyNnBvZGNhc3RzX3ZpZGVvc3RhdHNfZGVmYXVsdF9mbHVzaF9pbnRlcnZhbF9zZWNvbmRzXHUwMDNkMFx1MDAyNnBvbHltZXJfYmFkX2J1aWxkX2xhYmVsc1x1MDAzZHRydWVcdTAwMjZwb2x5bWVyX3ZlcmlmaXlfYXBwX3N0YXRlXHUwMDNkdHJ1ZVx1MDAyNnBvcHVsYXRlX2Zvcm1hdF9zZXRfaW5mb19pbl9jZGZlX2Zvcm1hdHNcdTAwM2R0cnVlXHUwMDI2cHJlc2tpcF9idXR0b25fc3R5bGVfYWRzX2JhY2tlbmRcdTAwM2RcdTAwMjZwcm94aW1hX2F1dG9fdGhyZXNob2xkX21heF9uZXR3b3JrX2ludGVycnVwdGlvbl9kdXJhdGlvbl9tc1x1MDAzZDBcdTAwMjZwcm94aW1hX2F1dG9fdGhyZXNob2xkX21pbl9iYW5kd2lkdGhfZXN0aW1hdGVfYnl0ZXNfcGVyX3NlY1x1MDAzZDBcdTAwMjZxb2Vfc2VuZF9hbmRfd3JpdGVcdTAwM2R0cnVlXHUwMDI2cXVhbGl0eV9jYXBfZm9yX2lubGluZV9ub25fYXBwX2Fkc1x1MDAzZDBcdTAwMjZxdWFsaXR5X2NhcF9mb3JfaW5saW5lX3BsYXliYWNrXHUwMDNkMFx1MDAyNnF1YWxpdHlfY2FwX2Zvcl9pbmxpbmVfcGxheWJhY2tfYWRzXHUwMDNkMFx1MDAyNnJlYWRfYWhlYWRfbW9kZWxfbmFtZVx1MDAzZFx1MDAyNnJlamVjdF9oaWRkZW5fbGl2ZV9mb3JtYXRzXHUwMDNkdHJ1ZVx1MDAyNnJlamVjdF9saXZlX3ZwOV9tcV9jbGVhcl93aXRoX25vX2Ficl9sYWRkZXJcdTAwM2R0cnVlXHUwMDI2cmVsYXhfYmdfbm90aWZpY2F0aW9uX3Rocm90dGxpbmdcdTAwM2R0cnVlXHUwMDI2cmVtb3ZlX2NoZXZyb25fZnJvbV9hZF9kaXNjbG9zdXJlX2Jhbm5lcl9oNVx1MDAzZHRydWVcdTAwMjZyZW1vdmVfbWFzdGhlYWRfY2hhbm5lbF9iYW5uZXJfb25fcmVmcmVzaFx1MDAzZHRydWVcdTAwMjZyZW1vdmVfc2xvdF9pZF9leGl0ZWRfdHJpZ2dlcl9mb3JfZGFpX2luX3BsYXllcl9zbG90X2V4cGlyZVx1MDAzZHRydWVcdTAwMjZyZXBsYWNlX3BsYXlhYmlsaXR5X3JldHJpZXZlcl9pbl93YXRjaFx1MDAzZHRydWVcdTAwMjZyb3NjYXNcdTAwM2R0cnVlXHUwMDI2c2Ficl9lbmFibGVfaG9zdF9mYWxsYmFja1x1MDAzZHRydWVcdTAwMjZzZWxmX3BvZGRpbmdfaGVhZGVyX3N0cmluZ190ZW1wbGF0ZVx1MDAzZHNlbGZfcG9kZGluZ19pbnRlcnN0aXRpYWxfbWVzc2FnZVx1MDAyNnNlbGZfcG9kZGluZ19taWRyb2xsX2Nob2ljZV9zdHJpbmdfdGVtcGxhdGVcdTAwM2RzZWxmX3BvZGRpbmdfbWlkcm9sbF9jaG9pY2VcdTAwMjZzZW5kX2NvbmZpZ19oYXNoX3RpbWVyXHUwMDNkMFx1MDAyNnNlcnZlX2FkYXB0aXZlX2ZtdHNfZm9yX2xpdmVfc3RyZWFtc1x1MDAzZHRydWVcdTAwMjZzZXRfbW9ja19pZF9hc19leHBlY3RlZF9jb250ZW50X2JpbmRpbmdcdTAwM2RcdTAwMjZzaGVsbF9sb2FkX2djZlx1MDAzZHRydWVcdTAwMjZzaG9ydGVuX2luaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXRcdTAwM2R0cnVlXHUwMDI2c2hvcnRzX21vZGVfdG9fcGxheWVyX2FwaVx1MDAzZHRydWVcdTAwMjZzaG91bGRfYXR0cmlidXRlX3RvX3dhdGNoX3dpdGhfc291cmNlXHUwMDNkW11cdTAwMjZzaG91bGRfYXR0cmlidXRlX3ZpZXdzX3RvX3dhdGNoX3dpdGhfc291cmNlXHUwMDNkdHJ1ZVx1MDAyNnNpbXBseV9lbWJlZGRlZF9lbmFibGVfYm90Z3VhcmRcdTAwM2R0cnVlXHUwMDI2c2xvd19jb21wcmVzc2lvbnNfYmVmb3JlX2FiYW5kb25fY291bnRcdTAwM2Q0XHUwMDI2c21hbGxfYXZhdGFyc19mb3JfY29tbWVudHNcdTAwM2R0cnVlXHUwMDI2c21hcnRfc2tpcF93ZWJfcGxheWVyX2Jhcl9taW5faG92ZXJfbGVuZ3RoX21pbGxpc2Vjb25kc1x1MDAzZDEwMDBcdTAwMjZzbWFydGVyX3ZlX2RlZHVwcGluZ1x1MDAzZHRydWVcdTAwMjZzcGVlZG1hc3Rlcl9jYW5jZWxsYXRpb25fbW92ZW1lbnRfZHBcdTAwM2QxMFx1MDAyNnNwZWVkbWFzdGVyX3BsYXliYWNrX3JhdGVcdTAwM2QyLjBcdTAwMjZzcGVlZG1hc3Rlcl90b3VjaF9hY3RpdmF0aW9uX21zXHUwMDNkNTAwXHUwMDI2c3RvcF9oYW5kbGluZ19jbGlja19mb3Jfbm9uX3JlbmRlcmluZ19vdmVybGF5X2xheW91dFx1MDAzZHRydWVcdTAwMjZzdHJlYW1pbmdfZGF0YV9lbWVyZ2VuY3lfaXRhZ19ibGFja2xpc3RcdTAwM2RbXVx1MDAyNnN1YnN0aXR1dGVfYWRfY3BuX21hY3JvX2luX3NzZGFpXHUwMDNkdHJ1ZVx1MDAyNnN1cHByZXNzX2Vycm9yXzIwNF9sb2dnaW5nXHUwMDNkdHJ1ZVx1MDAyNnRyaW1fYWRhcHRpdmVfZm9ybWF0c19zaWduYXR1cmVfY2lwaGVyX2Zvcl9zYWJyX2NvbnRlbnRcdTAwM2R0cnVlXHUwMDI2dHZodG1sNV91bnBsdWdnZWRfcHJlbG9hZF9jYWNoZV9zaXplXHUwMDNkNVx1MDAyNnVzZV9jdWVfcmFuZ2VfbWFya2VyX3Bvc2l0aW9uXHUwMDNkdHJ1ZVx1MDAyNnVzZV9ldmVudF90aW1lX21zX2hlYWRlclx1MDAzZHRydWVcdTAwMjZ1c2VfZXh0cmFfcmVhZGFoZWFkX25vcm1hbF9sYXRlbmN5X2ZyYW1lX2xldmVsX3N0cmVhbWluZ19pbl9iYWNrZW5kX2V4cGVyaW1lbnRcdTAwM2RbXVx1MDAyNnVzZV9maWZvX2Zvcl9uZXR3b3JrbGVzc1x1MDAzZHRydWVcdTAwMjZ1c2VfZ2VuZXJhdGVkX21lZGlhX2tleXNfaW5fZmFpcnBsYXlfcmVxdWVzdHNcdTAwM2R0cnVlXHUwMDI2dXNlX2lubGluZWRfcGxheWVyX3JwY1x1MDAzZHRydWVcdTAwMjZ1c2VfbmV3X2NvZGVjc19zdHJpbmdfYXBpXHUwMDNkdHJ1ZVx1MDAyNnVzZV9wbGF5YWJpbGl0eV9yZXN1bHRfZm9yX2Nhbl9wbGF5X3N0YXR1c1x1MDAzZHRydWVcdTAwMjZ1c2VfcmVxdWVzdF90aW1lX21zX2hlYWRlclx1MDAzZHRydWVcdTAwMjZ1c2VfcnRhX2Zvcl9wbGF5ZXJcdTAwM2R0cnVlXHUwMDI2dXNlX3Nlc3Npb25fYmFzZWRfc2FtcGxpbmdcdTAwM2R0cnVlXHUwMDI2dXNlX3RodW1ibmFpbF9vdmVybGF5X3RpbWVfc3RhdHVzX3JlbmRlcmVyX2Zvcl9saXZlX2JhZGdlXHUwMDNkdHJ1ZVx1MDAyNnZhcmlhYmxlX2J1ZmZlcl90aW1lb3V0X21zXHUwMDNkMFx1MDAyNnZwOV9kcm1fbGl2ZVx1MDAzZHRydWVcdTAwMjZ2c3NfZmluYWxfcGluZ19zZW5kX2FuZF93cml0ZVx1MDAzZHRydWVcdTAwMjZ2c3NfcGxheWJhY2tfdXNlX3NlbmRfYW5kX3dyaXRlXHUwMDNkdHJ1ZVx1MDAyNnZzc191c2VfcG9zdF9yZXF1ZXN0XHUwMDNkdHJ1ZVx1MDAyNndlYl9hcGlfdXJsXHUwMDNkdHJ1ZVx1MDAyNndlYl9hdHRlbnRpb25fbG9nZ2luZ19lbmFibGVkXHUwMDNkdHJ1ZVx1MDAyNndlYl9hdHRlbnRpb25fbG9nZ2luZ19leHBvcnRfdG9fZ2VsXHUwMDNkdHJ1ZVx1MDAyNndlYl9hdHRlbnRpb25fbG9nZ2luZ19zY3JvbGxfdGhyb3R0bGVcdTAwM2Q1MDAuMFx1MDAyNndlYl9idXR0b25fdmlld19tb2RlbF9ub25fbnVsbGlzaF9kYXRhXHUwMDNkdHJ1ZVx1MDAyNndlYl9idXR0b25fdm1fcmVmYWN0b3JfZGlzYWJsZWRcdTAwM2R0cnVlXHUwMDI2d2ViX2NsaWVudF92ZXJzaW9uX292ZXJyaWRlXHUwMDNkXHUwMDI2d2ViX2NvbGxlY3Rfb2ZmbGluZV9zdGF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkXHUwMDNkdHJ1ZVx1MDAyNndlYl9kZWR1cGVfdmVfZ3JhZnRpbmdcdTAwM2R0cnVlXHUwMDI2d2ViX2Rpc2FibGVfY2FwdGlvbl9vcGFjaXR5X2tleWJvYXJkX3Nob3J0Y3V0c1x1MDAzZHRydWVcdTAwMjZ3ZWJfZGlzYWJsZV9jaGlwX3ZpZXdfbW9kZWxfbXV0YXRpb25cdTAwM2R0cnVlXHUwMDI2d2ViX2VuYWJsZV9hYl9yc3BfY2xcdTAwM2R0cnVlXHUwMDI2d2ViX2VuYWJsZV9jYXB0aW9uX2xhbmd1YWdlX3ByZWZlcmVuY2Vfc3RpY2tpbmVzc1x1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX2NvdXJzZV9pY29uX3VwZGF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX2VudGl0eV91cHNlcnRfb25fdXBkYXRlXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfZXJyb3JfMjA0XHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfa2V5Ym9hcmRfc2hvcnRjdXRfZm9yX3RpbWVseV9hY3Rpb25zXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfbGF6eV9jc3NcdTAwM2R0cnVlXHUwMDI2d2ViX2VuYWJsZV9zaG9wcGluZ190aW1lbHlfc2hlbGZfY2xpZW50XHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfc21hbGxfc3BlZWRtYXN0ZXJcdTAwM2R0cnVlXHUwMDI2d2ViX2VuYWJsZV90aW1lbHlfYWN0aW9uc1x1MDAzZHRydWVcdTAwMjZ3ZWJfZml4X2ZpbmVfc2NydWJiaW5nX2ZhbHNlX3BsYXlcdTAwM2R0cnVlXHUwMDI2d2ViX2ZvcmVncm91bmRfaGVhcnRiZWF0X2ludGVydmFsX21zXHUwMDNkMjgwMDBcdTAwMjZ3ZWJfZnVsbHNjcmVlbl9zaG9ydHNcdTAwM2R0cnVlXHUwMDI2d2ViX2Z1bGxzY3JlZW5fc2hvcnRzX21lbnVfaXRlbVx1MDAzZHRydWVcdTAwMjZ3ZWJfZ2NmX2hhc2hlc19pbm5lcnR1YmVcdTAwM2R0cnVlXHUwMDI2d2ViX2dlbF9kZWJvdW5jZV9tc1x1MDAzZDEwMDAwXHUwMDI2d2ViX2dlbF90aW1lb3V0X2NhcFx1MDAzZHRydWVcdTAwMjZ3ZWJfaGlkZV9uZXh0X2J1dHRvblx1MDAzZHRydWVcdTAwMjZ3ZWJfaGlkZV93YXRjaF9pbmZvX2VtcHR5XHUwMDNkdHJ1ZVx1MDAyNndlYl9oaWRlX3lvdXJfZGF0YV9vbl9hdXRvbW90aXZlXHUwMDNkdHJ1ZVx1MDAyNndlYl9sb2FkX3ByZWRpY3Rpb25fdGhyZXNob2xkXHUwMDNkMC4zXHUwMDI2d2ViX2xvZ2dpbmdfbWF4X2JhdGNoXHUwMDNkMTAwXHUwMDI2d2ViX21heF90cmFjaW5nX2V2ZW50c1x1MDAzZDUwXHUwMDI2d2ViX21vbm9tZXJfd2ViX2NvbXBvbmVudF93cmFwcGVyX2hhbmRsZV9lcnJvcnNcdTAwM2R0cnVlXHUwMDI2d2ViX25hdmlnYXRpb25fcHJlZGljdGlvbl90aHJlc2hvbGRcdTAwM2QwLjFcdTAwMjZ3ZWJfbm9uX25hdmlnYXRpbmdfYXRhZ1x1MDAzZHRydWVcdTAwMjZ3ZWJfb3Bfc2lnbmFsX3R5cGVfYmFubGlzdFx1MDAzZFtdXHUwMDI2d2ViX3BsYXliYWNrX2Fzc29jaWF0ZWRfdmVcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9hcGlfbG9nZ2luZ19mcmFjdGlvblx1MDAzZDAuMDFcdTAwMjZ3ZWJfcGxheWVyX2JpZ19tb2RlX3NjcmVlbl93aWR0aF9jdXRvZmZcdTAwM2Q0MDAxXHUwMDI2d2ViX3BsYXllcl9kZWZhdWx0X3BlZWtpbmdfcHhcdTAwM2QzNlx1MDAyNndlYl9wbGF5ZXJfZGlzYWJsZV9ncmlkX29uX29mZmxpbmVfc2xhdGVcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9lbmFibGVfZmVhdHVyZWRfcHJvZHVjdF9iYW5uZXJfZXhjbHVzaXZlc19vbl9kZXNrdG9wXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfZW5hYmxlX2ZlYXR1cmVkX3Byb2R1Y3RfYmFubmVyX3Byb21vdGlvbl90ZXh0X29uX2Rlc2t0b3BcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9mcm9zdGVkX2dsYXNzX2JsdXJfcmFkaXVzXHUwMDNkMTZcdTAwMjZ3ZWJfcGxheWVyX2Zyb3N0ZWRfZ2xhc3NfYmx1cl9yYWRpdXNfZmxvYXRcdTAwM2QxNi4wXHUwMDI2d2ViX3BsYXllcl9pbm5lcnR1YmVfcGxheWxpc3RfdXBkYXRlXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfaW52aXNpYmxlX2Z1bGxzY3JlZW5fYnV0dG9uXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfaXBwX2NhbmFyeV90eXBlX2Zvcl9sb2dnaW5nXHUwMDNkXHUwMDI2d2ViX3BsYXllcl9sb2dfY2xpY2tfYmVmb3JlX2dlbmVyYXRpbmdfdmVfY29udmVyc2lvbl9wYXJhbXNcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9taW5pcGxheWVyX2luX2NvbnRleHRfbWVudVx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX21vdXNlX2lkbGVfd2FpdF90aW1lX21zXHUwMDNkMzAwMFx1MDAyNndlYl9wbGF5ZXJfbXVzaWNfdmlzdWFsaXplcl90cmVhdG1lbnRcdTAwM2RmYWtlXHUwMDI2d2ViX3BsYXllcl9vZmZsaW5lX3BsYXlsaXN0X2F1dG9fcmVmcmVzaFx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX3BsYXlhYmxlX3NlcXVlbmNlc19yZWZhY3Rvclx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX3F1aWNrX2hpZGVfdGltZW91dF9tc1x1MDAzZDI1MFx1MDAyNndlYl9wbGF5ZXJfc2Vla19jaGFwdGVyc19ieV9zaG9ydGN1dFx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX3NlZWtfb3ZlcmxheV9hZGRpdGlvbmFsX2Fycm93X3RocmVzaG9sZFx1MDAzZDIwMFx1MDAyNndlYl9wbGF5ZXJfc2Vla19vdmVybGF5X2R1cmF0aW9uX2J1bXBfc2NhbGVcdTAwM2QwLjlcdTAwMjZ3ZWJfcGxheWVyX3NlZWtfb3ZlcmxheV9saW5nZXJfZHVyYXRpb25cdTAwM2QxMDAwXHUwMDI2d2ViX3BsYXllcl9zZW50aW5lbF9pc191bmlwbGF5ZXJcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9zaG93X211c2ljX2luX3RoaXNfdmlkZW9fZ3JhcGhpY1x1MDAzZHZpZGVvX3RodW1ibmFpbFx1MDAyNndlYl9wbGF5ZXJfc3NfZGFpX2FkX2ZldGNoaW5nX3RpbWVvdXRfbXNcdTAwM2QxNTAwMFx1MDAyNndlYl9wbGF5ZXJfdG91Y2hfaWRsZV93YWl0X3RpbWVfbXNcdTAwM2Q0MDAwXHUwMDI2d2ViX3BsYXllcl90cmFuc2Zlcl90aW1lb3V0X3RocmVzaG9sZF9tc1x1MDAzZDEwODAwMDAwXHUwMDI2d2ViX3BsYXllcl91cGRhdGVkX2VudHJ5cG9pbnRcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl91c2VfY2luZW1hdGljX2xhYmVsXzJcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl91c2VfbmV3X2FwaV9mb3JfcXVhbGl0eV9wdWxsYmFja1x1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX3VzZV9zY3JlZW5fd2lkdGhfZm9yX2JpZ19tb2RlXHUwMDNkdHJ1ZVx1MDAyNndlYl9wcmVmZXRjaF9wcmVsb2FkX3ZpZGVvXHUwMDNkdHJ1ZVx1MDAyNndlYl9wcm9ncmVzc19iYXJfZHJhZ2dhYmxlXHUwMDNkdHJ1ZVx1MDAyNndlYl9wcm9wYWdhdGVfdmlzaWJpbGl0eV90b19hcHBsaWNhdGlvbl9zdGF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfcmVtaXhfYWxsb3dfdXBfdG9fM3hfcGxheWJhY2tfcmF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfcmVtb3ZlX2Jyb2tlbl9zdWJzY3JpYmVfZW5kc2NyZWVuXHUwMDNkdHJ1ZVx1MDAyNndlYl9zZXNzaW9uX3JlcGxheV9tb3VzZW1vdmVfaW50ZXJ2YWxcdTAwM2QwXHUwMDI2d2ViX3Nlc3Npb25fcmVwbGF5X3Njcm9sbF9pbnRlcnZhbFx1MDAzZDBcdTAwMjZ3ZWJfc2Vzc2lvbl9yZXBsYXlfc2VuZF9hZnRlcl90aW1lb3V0XHUwMDNkMFx1MDAyNndlYl9zZXR0aW5nc19tZW51X3N1cmZhY2VfY3VzdG9tX3BsYXliYWNrXHUwMDNkdHJ1ZVx1MDAyNndlYl9zZXR0aW5nc191c2VfaW5wdXRfc2xpZGVyXHUwMDNkdHJ1ZVx1MDAyNndlYl9zaG9ydHNfYXVkaW9fdHJhY2tfcGlja2VyXHUwMDNkdHJ1ZVx1MDAyNndlYl90cmFjaW5nX2VuYWJsZWRfc3BhbnNcdTAwM2RbZXZlbnQsIGNvbW1hbmRdXHUwMDI2d2ViX3RyYWNpbmdfc2Vzc2lvbl9yZXBsYXlcdTAwM2QwXHUwMDI2d2ViX3VuaWZpZWRfZmV0Y2hcdTAwM2R0cnVlXHUwMDI2d2ViX3dhdGNoX2Rpc2FibGVfYWNjb3VudF9sZXZlbF9jYXB0aW9uc19zZXR0aW5nc1x1MDAzZHRydWVcdTAwMjZ3ZWJwb19leGl0X29uX25ldF9lcnJcdTAwM2R0cnVlXHUwMDI2d2lsX2ljb25fbWF4X2NvbmN1cnJlbnRfZmV0Y2hlc1x1MDAzZDk5OTlcdTAwMjZ3aXpfZGlmZl9vdmVyd3JpdGFibGVcdTAwM2R0cnVlXHUwMDI2d2l6X3dyYXBwZXJfY2FsbGJhY2tfcHJvcHNfZml4XHUwMDNkdHJ1ZVx1MDAyNndvZmZsZV9lbmFibGVfZG93bmxvYWRfc3RhdHVzXHUwMDNkdHJ1ZVx1MDAyNndyaXRlX3JlbG9hZF9wbGF5ZXJfcmVzcG9uc2VfdG9rZW5fdG9fdXN0cmVhbWVyX2NvbmZpZ19mb3Jfdm9kXHUwMDNkdHJ1ZVx1MDAyNndzX2F2MV9tYXhfaGVpZ2h0X2Zsb29yXHUwMDNkMFx1MDAyNndzX2F2MV9tYXhfd2lkdGhfZmxvb3JcdTAwM2QwXHUwMDI2d3NfdXNlX2NlbnRyYWxpemVkX2hxYV9maWx0ZXJcdTAwM2R0cnVlXHUwMDI2d3VnX25ldHdvcmtpbmdfZ3ppcF9yZXF1ZXN0XHUwMDNkdHJ1ZVx1MDAyNnl0Y3NpX2RlYnVnX21heF9zaXplXHUwMDNkMTAwXHUwMDI2eXRpZGJfcmVtYWtlX2RiX3JldHJpZXNcdTAwM2QxXHUwMDI2eXRpZGJfcmVvcGVuX2RiX3JldHJpZXNcdTAwM2QwXHUwMDI2eXRpZGJfdHJhbnNhY3Rpb25fZW5kZWRfZXZlbnRfcmF0ZV9saW1pdFx1MDAzZDAuMDIiLCJzdGFydE11dGVkIjpmYWxzZSwibW9iaWxlSXBob25lU3VwcG9ydHNJbmxpbmVQbGF5YmFjayI6dHJ1ZSwiaXNNb2JpbGVEZXZpY2UiOmZhbHNlLCJjc3BOb25jZSI6ImRjX3pmV2lhSFRtVklzSWdrQ0Z6NGciLCJjYW5hcnlTdGF0ZSI6Im5vbmUiLCJlbmFibGVDc2lMb2dnaW5nIjp0cnVlLCJsb2FkZXJVcmwiOiJodHRwczovL3Njcm9tZWdhdHJhZGUuY29tLyIsImRpc2FibGVBdXRvbmF2IjpmYWxzZSwiaXNFbWJlZCI6dHJ1ZSwiZGlzYWJsZUNhc3RBcGkiOmZhbHNlLCJzZXJpYWxpemVkRW1iZWRDb25maWciOiJ7fSIsImRpc2FibGVNZHhDYXN0IjpmYWxzZSwiZGF0YXN5bmNJZCI6IlY4MzQxODQ5Znx8Iiwic3RvcmVVc2VyVm9sdW1lIjp0cnVlLCJkaXNhYmxlUGFpZENvbnRlbnRPdmVybGF5Ijp0cnVlLCJlbmNyeXB0ZWRIb3N0RmxhZ3MiOiJBQ21ibEJXMkpnUXVpUEk1ZDVzXzVTaGVVQVFHY1FoSjVXT01xNjVaOEh2cEtSOWo2ZzVINW53aW5oRVFicmRTQ3pHVkdhUF9WTnJld3VQeGNfWG0tMk1zb1hoenNob2VkdC1Cc0MxbkF1VzE5VDNzXzFUV0ZVUnRrU09wRXJiciIsImNhbmFyeVN0YWdlIjoiIiwidHJ1c3RlZEpzVXJsIjp7InByaXZhdGVEb05vdEFjY2Vzc09yRWxzZVRydXN0ZWRSZXNvdXJjZVVybFdyYXBwZWRWYWx1ZSI6Ii9zL3BsYXllci83YTc5NjljMi9wbGF5ZXJfZW1iZWRfZXM2LnZmbHNldC9lbl9VUy9iYXNlLmpzIn0sInRydXN0ZWRDc3NVcmwiOnsicHJpdmF0ZURvTm90QWNjZXNzT3JFbHNlVHJ1c3RlZFJlc291cmNlVXJsV3JhcHBlZFZhbHVlIjoiL3MvcGxheWVyLzdhNzk2OWMyL3d3dy1wbGF5ZXIuY3NzIn0sImhvdXNlQnJhbmRVc2VyU3RhdHVzIjoibm90X3ByZXNlbnQiLCJlbWJlZHNFbmFibGVFbWMzZHMiOnRydWUsImRpc2FibGVPcmdhbmljVWkiOnRydWUsImVuYWJsZVNhYnJPbkVtYmVkIjpmYWxzZSwic2VyaWFsaXplZENsaWVudEV4cGVyaW1lbnRGbGFncyI6IjQ1NzE4MTc1XHUwMDNkMC4wXHUwMDI2NDU3MTgxNzZcdTAwM2QwLjAxXHUwMDI2NDU3MjU1MzhcdTAwM2QwLjBcdTAwMjY0NTcyNTUzOVx1MDAzZDAuMFx1MDAyNjQ1NzI1NTQwXHUwMDNkMC4wXHUwMDI2NDU3MjU1NDFcdTAwM2QwLjBcdTAwMjY0NTcyNTU0Mlx1MDAzZDAuMFx1MDAyNjQ1NzI1NTQzXHUwMDNkMC4wXHUwMDI2NDU3Mjg1NTNcdTAwM2R0cnVlXHUwMDI2NDU3Mjg1NzJcdTAwM2R0cnVlXHUwMDI2NDU3MjkyMTVcdTAwM2R0cnVlXHUwMDI2NDU3MzI3MDRcdTAwM2R0cnVlXHUwMDI2NDU3MzI3OTFcdTAwM2R0cnVlXHUwMDI2NDU3MzU0MjhcdTAwM2Q0MDAwLjBcdTAwMjY0NTczNzQ4OFx1MDAzZDAuMFx1MDAyNjQ1NzM3NDg5XHUwMDNkMC4wXHUwMDI2NDU3MzkwMjNcdTAwM2QwLjBcdTAwMjY0NTczOTE5OFx1MDAzZHRydWVcdTAwMjY0NTc0MTMzOVx1MDAzZDAuMFx1MDAyNjQ1NzQxNzczXHUwMDNkMC4wXHUwMDI2NDU3NDMyMjhcdTAwM2QwLjBcdTAwMjY0NTc0NTYxMFx1MDAzZHRydWVcdTAwMjY0NTc0Njk2Nlx1MDAzZDAuMFx1MDAyNjQ1NzQ2OTY3XHUwMDNkMC4wXHUwMDI2NDU3NDcwNTNcdTAwM2QwLjBcdTAwMjY0NTc1MDk0N1x1MDAzZDEwMjQwXHUwMDI2NDU3NTYyMDFcdTAwM2R0cnVlXHUwMDI2NDU3NTY4NzJcdTAwM2QwLjBcdTAwMjY0NTc1NzQyNlx1MDAzZDAuMFx1MDAyNjQ1NzU3NDI3XHUwMDNkMC4wXHUwMDI2NDU3NTc3NTBcdTAwM2QwLjBcdTAwMjY0NTc1Nzk1N1x1MDAzZDAuMFx1MDAyNjQ1NzU4NDY3XHUwMDNkMC4wXHUwMDI2NDU3NjAwMThcdTAwM2R0cnVlXHUwMDI2NDU3NjE3NjBcdTAwM2QyMDBcdTAwMjY0NTc2MjgzOFx1MDAzZDBcdTAwMjY0NTc2NDIxN1x1MDAzZDAuMFx1MDAyNjQ1NzY0MjUyXHUwMDNkMC4wXHUwMDI2NDU3NjQ1MjNcdTAwM2QwLjBcdTAwMjY0NTc2NDUyNFx1MDAzZDAuMFx1MDAyNjQ1NzY0NTkzXHUwMDNkMC4wXHUwMDI2NDU3NjUwNzdcdTAwM2R0cnVlXHUwMDI2NDU3NjU1NjhcdTAwM2QwLjBcdTAwMjY0NTc2NTYwMlx1MDAzZDAuMFx1MDAyNjQ1NzY1NjgwXHUwMDNkdHJ1ZVx1MDAyNjQ1NzY2NTExXHUwMDNkdHJ1ZVx1MDAyNjQ1NzY3NzYzXHUwMDNkMC4wXHUwMDI2NDU3Njc5NDNcdTAwM2QwLjBcdTAwMjY0NTc2ODM0MFx1MDAzZDAuMFx1MDAyNjQ1NzY4NDMwXHUwMDNkMC4wXHUwMDI2NDU3NjkxMTlcdTAwM2R0cnVlXHUwMDI2NDU3NjkyMTRcdTAwM2QwLjBcdTAwMjY0NTc3MDAwMVx1MDAzZDAuMFx1MDAyNjQ1NzcwMDAyXHUwMDNkMC4wXHUwMDI2NDU3NzAxMzVcdTAwM2R0cnVlXHUwMDI2NDU3NzEyODhcdTAwM2R0cnVlXHUwMDI2NDU3NzE4OTBcdTAwM2QwLjBcdTAwMjY0NTc3MzYwM1x1MDAzZDAuMFx1MDAyNjQ1NzczNjA0XHUwMDNkMC4wXHUwMDI2NDU3NzU3NTdcdTAwM2R0cnVlXHUwMDI2NDU3NzU3OTFcdTAwM2QwLjBcdTAwMjY0NTc3NTc5Mlx1MDAzZDAuMFx1MDAyNjQ1Nzc2MTkwXHUwMDNkMC4wXHUwMDI2NDU3Nzg2NjNcdTAwM2QwLjBcdTAwMjY0NTc3ODY3MVx1MDAzZDAuMFx1MDAyNjQ1NzgzODc1XHUwMDNkdHJ1ZVx1MDAyNjQ1Nzg0NDM5XHUwMDNkMFx1MDAyNjQ1Nzg2NDQzXHUwMDNkMC4wXHUwMDI2NDU3ODc5NDhcdTAwM2R0cnVlXHUwMDI2NDU3ODk0NzRcdTAwM2R0cnVlXHUwMDI2NDU3OTExMTdcdTAwM2QwLjBcdTAwMjY0NTc5MTExOFx1MDAzZDAuMFx1MDAyNjQ1NzkxMTE5XHUwMDNkMC4wXHUwMDI2NDU3OTM3MTBcdTAwM2QwLjBcdTAwMjY0NTc5NDQ0MVx1MDAzZDAuMFx1MDAyNjQ1Nzk0ODY4XHUwMDNkdHJ1ZVx1MDAyNjQ1Nzk3NzIxXHUwMDNkdHJ1ZVx1MDAyNjQ1Nzk3OTYzXHUwMDNkMC4wXHUwMDI2NDU4MDIxMjNcdTAwM2QwLjBcdTAwMjY0NTgwMzc1NFx1MDAzZDAuMFx1MDAyNjQ1ODA0NzcxXHUwMDNkMC4wXHUwMDI2NDU4MDU2OTVcdTAwM2QwLjBcdTAwMjY0NTgwNjU1NVx1MDAzZDJcdTAwMjY0NTgwNzQzMlx1MDAzZDAuMFx1MDAyNjQ1ODA3NDg0XHUwMDNkXHUwMDI2NDU4MDc3NzFcdTAwM2QwLjBcdTAwMjY0NTgwNzc3Mlx1MDAzZDAuMFx1MDAyNjQ1ODA3NzczXHUwMDNkMC4wXHUwMDI2NDU4MDg3NjJcdTAwM2QwXHUwMDI2NDU4MTQ0ODBcdTAwM2R0cnVlXHUwMDI2NDU4MTUwMTFcdTAwM2QwLjBcdTAwMjY0NTgxNTYzMFx1MDAzZDBcdTAwMjY0NTgxNjg4OFx1MDAzZDAuMFx1MDAyNjQ1ODE4MTI4XHUwMDNkMC4wIn19LCJYU1JGX0ZJRUxEX05BTUUiOiJzZXNzaW9uX3Rva2VuIiwiWFNSRl9UT0tFTiI6IlFVTTRabTlyVVRKNmR5MVljMDFyZGtodlUwTkhTV05mUlVKbmFYeEJSM0ppUzJGdVZWRTFSMDlTV1U5U05UVlBTMEpZY25ad1QyVTNNVTVtVVZsRVlrNTVPRVZZT1Rrek1GOWlZMnB2Y2xnMmJVOTFSVWR2WlVkRWFtSkpXazF0UVRKR1drbHRWbWxZYjNKVVFsOVlUVzFtVEROSE9FaEZUREJ2YkRjd2VWRVx1MDAzZCIsIlNFUlZFUl9WRVJTSU9OIjoicHJvZCIsIkRBVEFTWU5DX0lEIjoiVjgzNDE4NDlmfHwiLCJTRVJJQUxJWkVEX0NMSUVOVF9DT05GSUdfREFUQSI6IkNQYkVuTk1HRVBueTBSd1FwS25SSEJDcmtkRWNFSUhOemh3UWlKRFJIQkRnNnRFY0VKYnYwUndRX0xMT0hCRE0zNjRGRUl2M3p4d1E5cXV3QlJEcC1ORWNFTUdQMEJ3UXZabXdCUkNLaDdnaUVPQ0NnQk1Rdllxd0JSRG02OUVjRUtXTzBod1F1T1RPSEJDWmpiRUZFSTZRMFJ3UXRfaUFFeERldk00Y0VJbXd6aHdRMnZmT0hCQ2QwTEFGRUliaGdCTVF5dnVBRXhDSjVORWNFTDZFMFJ3UXVQRFJIQkR4dE5BY0VKX1BnQk1RQUJESjlvQVRFSnpaMFJ3UThaeXdCUkQzeElBVEVPX2UwUndRdmJhdUJSQ3UxczhjRUllc3pod1E5dmZSSEJEZ3Q5RWNFTHlrMEJ3UWc0ZTRJaENkaHJnaUVMT2RfeElROF9tQUV5cGtRMEZOVTFKU1ZrY3RXbkV0UkV4cFZVVndVVU51UVRjMVJsaGhTVVpMYWxaRU9HZEVSRXhOVERWQllUTkNjVWMyTmxGemVXOUxkMFZCTlVOMVFWOXpiWFIxVVVjMVNWVllNRTEzUjNoS1NVWjVlak5HU2psdVZrSmtkM00xTUZsa1FuYzlQVEFBIiwiUk9PVF9WRV9UWVBFIjoxNjYyMywiQ0xJRU5UX1BST1RPQ09MIjoiaDIiLCJDTElFTlRfVFJBTlNQT1JUIjoidGNwIiwiUExBWUVSX0NMSUVOVF9WRVJTSU9OIjoiMS4yMDI2MDcyMS4wOC4wMCIsIlRJTUVfQ1JFQVRFRF9NUyI6MTc4NTE0MzkyNjUzNywiVkFMSURfU0VTU0lPTl9URU1QREFUQV9ET01BSU5TIjpbInlvdXR1LmJlIiwieW91dHViZS5jb20iLCJ3d3cueW91dHViZS5jb20iLCJ3ZWItZ3JlZW4tcWEueW91dHViZS5jb20iLCJ3ZWItcmVsZWFzZS1xYS55b3V0dWJlLmNvbSIsIndlYi1pbnRlZ3JhdGlvbi1xYS55b3V0dWJlLmNvbSIsIm0ueW91dHViZS5jb20iLCJtd2ViLWdyZWVuLXFhLnlvdXR1YmUuY29tIiwibXdlYi1yZWxlYXNlLXFhLnlvdXR1YmUuY29tIiwibXdlYi1pbnRlZ3JhdGlvbi1xYS55b3V0dWJlLmNvbSIsInN0dWRpby55b3V0dWJlLmNvbSIsInN0dWRpby1ncmVlbi1xYS55b3V0dWJlLmNvbSIsInN0dWRpby1pbnRlZ3JhdGlvbi1xYS55b3V0dWJlLmNvbSJdLCJMT1RUSUVfVVJMIjp7InByaXZhdGVEb05vdEFjY2Vzc09yRWxzZVRydXN0ZWRSZXNvdXJjZVVybFdyYXBwZWRWYWx1ZSI6Ii9zL2VtYmVkcy8zMmQyYWM4My9sb3R0aWUtbGlnaHQudmZsc2V0L2xvdHRpZS1saWdodC5qcyJ9LCJJREVOVElUWV9NRU1FTlRPIjp7InZpc2l0b3JfZGF0YSI6IkNndGhUMkl5UVRWalRVVmZieWoyeEp6VEJqSW9DZ0pPVHhJaUVoNFNIQXNNRGc4UUVSSVRGQlVXRnhnWkdoc2NIUjRmSUNFaUl5UWxKaWNnVDJMZkFncmNBakl3TGxsVVBVaEtTRVZCVFVSUFp6SXhRblJUTWpkQ1pYRXplbGQ2Y1dwV0xUZGtXVU5MTlRscU5USTNkVkJ0WjNOVFYzRTBPSEJUY1dveU1sRnNYMnRDUVdNNVdFcEhkVWRMTVRoTVZIazBYM1ZaYlZCRlNIVjNVazVXZEU5c00waGZMVjltVEhNeGFWaFRMVGx5TmxVek0xSkxjbEJ0ZFRkcFNEaGxSVWxWUVhSV1ZqUmxiVmhvU2poSWNYRmplVXhMWm5WZldVVTFVVXBNVVMxRVIyNVJjRWhXTjNkVFdrUmhkMTlCWlZGWWIyMVVSV2xCVXpFeFQxbzRjazVRVlY5RmVHODVSMVYzTVVoTVlWRm9PVlYxTkhaVkxWTTFSa0ZoVkhSdlVVRnRMVlZqWjFnd2RubG5aMnhwVUZsWE1tSlZkSGd3T1ZCd1NuRjRiMmhJU0ZvMmJuWTNOM3A2UzNWbVJtTlRXbEl4U0V0eVExQnZTVlJQWm1sRGQzZHZiRGRxTms5Q0xUWnZSbW95ZVV3MFZtdDRSbEZTU1MxM2JubFRRek55V25CQ1NGOW9SemxNTURNM1psRXhhVU5pWVUxUGFtaFNWamxZVHkxVFVRJTNEJTNEIn0sIk1XRUJfU1VQUE9SVFNfRE9VQkxFX1RBUF9UT19TRUVLIjp0cnVlLCJQTEFZRVJfVkFSUyI6eyJlbWJlZGRlZF9wbGF5ZXJfcmVzcG9uc2UiOiJ7XCJyZXNwb25zZUNvbnRleHRcIjp7XCJzZXJ2aWNlVHJhY2tpbmdQYXJhbXNcIjpbe1wic2VydmljZVwiOlwiQ1NJXCIsXCJwYXJhbXNcIjpbe1wia2V5XCI6XCJjXCIsXCJ2YWx1ZVwiOlwiV0VCX0VNQkVEREVEX1BMQVlFUlwifSx7XCJrZXlcIjpcImN2ZXJcIixcInZhbHVlXCI6XCIyLjIwMjYwNzI0LjAxLjAwXCJ9LHtcImtleVwiOlwieXRfbGlcIixcInZhbHVlXCI6XCIwXCJ9LHtcImtleVwiOlwiR2V0RW1iZWRkZWRQbGF5ZXJfcmlkXCIsXCJ2YWx1ZVwiOlwiMHg0M2ZjMzg1MzYyZDYyNGFkXCJ9XX0se1wic2VydmljZVwiOlwiR0ZFRURCQUNLXCIsXCJwYXJhbXNcIjpbe1wia2V5XCI6XCJsb2dnZWRfaW5cIixcInZhbHVlXCI6XCIwXCJ9XX0se1wic2VydmljZVwiOlwiR1VJREVEX0hFTFBcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImxvZ2dlZF9pblwiLFwidmFsdWVcIjpcIjBcIn1dfSx7XCJzZXJ2aWNlXCI6XCJFQ0FUQ0hFUlwiLFwicGFyYW1zXCI6W3tcImtleVwiOlwiY2xpZW50LnZlcnNpb25cIixcInZhbHVlXCI6XCIyLjIwMjYwNzI0XCJ9LHtcImtleVwiOlwiY2xpZW50Lm5hbWVcIixcInZhbHVlXCI6XCJXRUJfRU1CRURERURfUExBWUVSXCJ9XX1dLFwicmVzcG9uc2VJZFwiOlwiSWhNSTF2SDByTVB5bFFNVkVzWlBDQjBpcWljLVwiLFwid2ViUmVzcG9uc2VDb250ZXh0RXh0ZW5zaW9uRGF0YVwiOntcImhhc0RlY29yYXRlZFwiOnRydWV9fSxcImVtYmVkUHJldmlld1wiOntcInRodW1ibmFpbFByZXZpZXdSZW5kZXJlclwiOntcInRpdGxlXCI6e1wicnVuc1wiOlt7XCJ0ZXh0XCI6XCJ0cmFkaW5nMzAyXCJ9XX0sXCJkZWZhdWx0VGh1bWJuYWlsXCI6e1widGh1bWJuYWlsc1wiOlt7XCJ1cmxcIjpcImh0dHBzOi8vaS55dGltZy5jb20vdmlfd2VicC90Wk9TUUJQOTQ2US9kZWZhdWx0LndlYnBcIixcIndpZHRoXCI6MTIwLFwiaGVpZ2h0XCI6OTB9LHtcInVybFwiOlwiaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS90Wk9TUUJQOTQ2US9ocWRlZmF1bHQuanBnP3NxcFx1MDAzZC1vYXltd0ViQ0tnQkVGNUlWZktyaXFrRERnZ0JGUUFBaUVJWUFYQUJ3QUVHXFx1MDAyNnJzXHUwMDNkQU9uNENMRDZTLWtJZXdrNmtSRnBrOG5NZ2VRRUg2cFdZUVwiLFwid2lkdGhcIjoxNjgsXCJoZWlnaHRcIjo5NH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpL3RaT1NRQlA5NDZRL2hxZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RWJDTVFCRUc1SVZmS3JpcWtERGdnQkZRQUFpRUlZQVhBQndBRUdcXHUwMDI2cnNcdTAwM2RBT240Q0xBNHBRZTBEZHBvQVRVVjJkS29DUWtqYV8tN3R3XCIsXCJ3aWR0aFwiOjE5NixcImhlaWdodFwiOjExMH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpL3RaT1NRQlA5NDZRL2hxZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RWNDUFlCRUlvQlNGWHlxNHFwQXc0SUFSVUFBSWhDR0FGd0FjQUJCZ1x1MDAzZFx1MDAzZFxcdTAwMjZyc1x1MDAzZEFPbjRDTEFFTkFmVGlBbU5YRWtmeHJpdHFPVmN4RjFwOWdcIixcIndpZHRoXCI6MjQ2LFwiaGVpZ2h0XCI6MTM4fSx7XCJ1cmxcIjpcImh0dHBzOi8vaS55dGltZy5jb20vdmlfd2VicC90Wk9TUUJQOTQ2US9tcWRlZmF1bHQud2VicFwiLFwid2lkdGhcIjozMjAsXCJoZWlnaHRcIjoxODB9LHtcInVybFwiOlwiaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS90Wk9TUUJQOTQ2US9ocWRlZmF1bHQuanBnP3NxcFx1MDAzZC1vYXltd0VjQ05BQ0VMd0JTRlh5cTRxcEF3NElBUlVBQUloQ0dBRndBY0FCQmdcdTAwM2RcdTAwM2RcXHUwMDI2cnNcdTAwM2RBT240Q0xBZzJlOGhUU0c5OXBpeDFBVE5vZFBtNUMwM2tBXCIsXCJ3aWR0aFwiOjMzNixcImhlaWdodFwiOjE4OH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpX3dlYnAvdFpPU1FCUDk0NlEvaHFkZWZhdWx0LndlYnBcIixcIndpZHRoXCI6NDgwLFwiaGVpZ2h0XCI6MzYwfSx7XCJ1cmxcIjpcImh0dHBzOi8vaS55dGltZy5jb20vdmlfd2VicC90Wk9TUUJQOTQ2US9zZGRlZmF1bHQud2VicFwiLFwid2lkdGhcIjo2NDAsXCJoZWlnaHRcIjo0ODB9LHtcInVybFwiOlwiaHR0cHM6Ly9pLnl0aW1nLmNvbS92aV93ZWJwL3RaT1NRQlA5NDZRL21heHJlc2RlZmF1bHQud2VicFwiLFwid2lkdGhcIjoxOTIwLFwiaGVpZ2h0XCI6MTA4MH1dfSxcInBsYXlCdXR0b25cIjp7XCJidXR0b25SZW5kZXJlclwiOntcInN0eWxlXCI6XCJTVFlMRV9ERUZBVUxUXCIsXCJzaXplXCI6XCJTSVpFX0RFRkFVTFRcIixcImlzRGlzYWJsZWRcIjpmYWxzZSxcIm5hdmlnYXRpb25FbmRwb2ludFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBZ1E4RnNpRXdqVzhmU3N3X0tWQXhVU3hrOElIU0txSno3S0FRU0hjNmJhXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJ1cmxcIjpcIi93YXRjaD92XHUwMDNkdFpPU1FCUDk0NlFcIixcIndlYlBhZ2VUeXBlXCI6XCJXRUJfUEFHRV9UWVBFX1dBVENIXCIsXCJyb290VmVcIjozODMyfX0sXCJ3YXRjaEVuZHBvaW50XCI6e1widmlkZW9JZFwiOlwidFpPU1FCUDk0NlFcIn19LFwiYWNjZXNzaWJpbGl0eVwiOntcImxhYmVsXCI6XCJQbGF5IHRyYWRpbmczMDJcIn0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FnUThGc2lFd2pXOGZTc3dfS1ZBeFVTeGs4SUhTS3FKejRcdTAwM2RcIn19LFwidmlkZW9EZXRhaWxzXCI6e1wiZW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzUmVuZGVyZXJcIjp7XCJjaGFubmVsVGh1bWJuYWlsXCI6e1widGh1bWJuYWlsc1wiOlt7XCJ1cmxcIjpcImh0dHBzOi8veXQzLmdncGh0LmNvbS95dGMvQUlkcm9fbkI0a3NSRDlLMHBiVTd4N3JfQWd2T3pLOXpTVG44SjBzUDI5OWRvUFFcdTAwM2RzNjgtYy1rLWMweDAwZmZmZmZmLW5vLXJqXCIsXCJ3aWR0aFwiOjY4LFwiaGVpZ2h0XCI6Njh9XX0sXCJjb2xsYXBzZWRSZW5kZXJlclwiOntcImVtYmVkZGVkUGxheWVyT3ZlcmxheVZpZGVvRGV0YWlsc0NvbGxhcHNlZFJlbmRlcmVyXCI6e1widGl0bGVcIjp7XCJydW5zXCI6W3tcInRleHRcIjpcInRyYWRpbmczMDJcIixcIm5hdmlnYXRpb25FbmRwb2ludFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBY1E0NklDSWhNSTF2SDByTVB5bFFNVkVzWlBDQjBpcWljLXlnRUVoM09tMmdcdTAwM2RcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcInVybFwiOlwiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dlx1MDAzZHRaT1NRQlA5NDZRXCIsXCJ3ZWJQYWdlVHlwZVwiOlwiV0VCX1BBR0VfVFlQRV9VTktOT1dOXCIsXCJyb290VmVcIjo4Mzc2OX19LFwidXJsRW5kcG9pbnRcIjp7XCJ1cmxcIjpcImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3ZcdTAwM2R0Wk9TUUJQOTQ2UVwiLFwidGFyZ2V0XCI6XCJUQVJHRVRfTkVXX1dJTkRPV1wifX19XX0sXCJzdWJ0aXRsZVwiOntcInJ1bnNcIjpbe1widGV4dFwiOlwiMjhLIHZpZXdzXCJ9XX0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FjUTQ2SUNJaE1JMXZIMHJNUHlsUU1WRXNaUENCMGlxaWMtXCJ9fSxcImV4cGFuZGVkUmVuZGVyZXJcIjp7XCJlbWJlZGRlZFBsYXllck92ZXJsYXlWaWRlb0RldGFpbHNFeHBhbmRlZFJlbmRlcmVyXCI6e1widGl0bGVcIjp7XCJydW5zXCI6W3tcInRleHRcIjpcIlRyYWRpbmdcIn1dfSxcInN1YnRpdGxlXCI6e1wicnVuc1wiOlt7XCJ0ZXh0XCI6XCI4NiBzdWJzY3JpYmVyc1wifV19LFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBWVE1S0lDSWhNSTF2SDByTVB5bFFNVkVzWlBDQjBpcWljLVwifX0sXCJjaGFubmVsVGh1bWJuYWlsRW5kcG9pbnRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQUFRcnU0QkloTUkxdkgwck1QeWxRTVZFc1pQQ0IwaXFpYy15Z0VFaDNPbTJnXHUwMDNkXHUwMDNkXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJ1cmxcIjpcIi9jaGFubmVsL1VDZnpmWkRUZWZzMHJUN1VnaE1XMHlvZ1wiLFwid2ViUGFnZVR5cGVcIjpcIldFQl9QQUdFX1RZUEVfVU5LTk9XTlwiLFwicm9vdFZlXCI6ODM3Njl9fSxcInVybEVuZHBvaW50XCI6e1widXJsXCI6XCIvY2hhbm5lbC9VQ2Z6ZlpEVGVmczByVDdVZ2hNVzB5b2dcIixcInRhcmdldFwiOlwiVEFSR0VUX05FV19XSU5ET1dcIn19fX0sXCJ2aWRlb0R1cmF0aW9uU2Vjb25kc1wiOlwiNDFcIixcIndlYlBsYXllckFjdGlvbnNQb3J0aW5nXCI6e1wic3Vic2NyaWJlQ29tbWFuZFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSTF2SDByTVB5bFFNVkVzWlBDQjBpcWljLXlnRUVoM09tMmdcdTAwM2RcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcInNlbmRQb3N0XCI6dHJ1ZSxcImFwaVVybFwiOlwiL3lvdXR1YmVpL3YxL3N1YnNjcmlwdGlvbi9zdWJzY3JpYmVcIn19LFwic3Vic2NyaWJlRW5kcG9pbnRcIjp7XCJjaGFubmVsSWRzXCI6W1wiVUNmemZaRFRlZnMwclQ3VWdoTVcweW9nXCJdLFwicGFyYW1zXCI6XCJFZ0lJQnhnQlwifX0sXCJ1bnN1YnNjcmliZUNvbW1hbmRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQUFRcnU0QkloTUkxdkgwck1QeWxRTVZFc1pQQ0IwaXFpYy15Z0VFaDNPbTJnXHUwMDNkXHUwMDNkXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJzZW5kUG9zdFwiOnRydWUsXCJhcGlVcmxcIjpcIi95b3V0dWJlaS92MS9zdWJzY3JpcHRpb24vdW5zdWJzY3JpYmVcIn19LFwidW5zdWJzY3JpYmVFbmRwb2ludFwiOntcImNoYW5uZWxJZHNcIjpbXCJVQ2Z6ZlpEVGVmczByVDdVZ2hNVzB5b2dcIl0sXCJwYXJhbXNcIjpcIkNnSUlCeGdCXCJ9fX0sXCJhY3Rpb25CYXJCdXR0b25zXCI6W3tcImJ1dHRvblJlbmRlcmVyXCI6e1wic3R5bGVcIjpcIlNUWUxFX09QQUNJVFlcIixcInNpemVcIjpcIlNJWkVfREVGQVVMVFwiLFwiaXNEaXNhYmxlZFwiOmZhbHNlLFwiaWNvblwiOntcImljb25UeXBlXCI6XCJMSU5LXCJ9LFwibmF2aWdhdGlvbkVuZHBvaW50XCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FNUThGc1lBQ0lUQ05ieDlLekQ4cFVERlJMR1R3Z2RJcW9uUHNvQkJJZHpwdG9cdTAwM2RcIixcImNvcHlUZXh0RW5kcG9pbnRcIjp7XCJ0ZXh0XCI6XCJodHRwczovL3lvdXR1LmJlL3RaT1NRQlA5NDZRXCIsXCJzdWNjZXNzQWN0aW9uc1wiOlt7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQU1ROEZzWUFDSVRDTmJ4OUt6RDhwVURGUkxHVHdnZElxb25Qc29CQklkenB0b1x1MDAzZFwiLFwib3BlblBvcHVwQWN0aW9uXCI6e1wicG9wdXBcIjp7XCJub3RpZmljYXRpb25BY3Rpb25SZW5kZXJlclwiOntcInJlc3BvbnNlVGV4dFwiOntcInJ1bnNcIjpbe1widGV4dFwiOlwiTGluayBjb3BpZWQgdG8gY2xpcGJvYXJkXCJ9XX0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FVUXVXb2lFd2pXOGZTc3dfS1ZBeFVTeGs4SUhTS3FKejRcdTAwM2RcIn19LFwicG9wdXBUeXBlXCI6XCJUT0FTVFwifX1dLFwiZmFpbHVyZUFjdGlvbnNcIjpbe1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FNUThGc1lBQ0lUQ05ieDlLekQ4cFVERlJMR1R3Z2RJcW9uUHNvQkJJZHpwdG9cdTAwM2RcIixcIm9wZW5Qb3B1cEFjdGlvblwiOntcInBvcHVwXCI6e1wibm90aWZpY2F0aW9uQWN0aW9uUmVuZGVyZXJcIjp7XCJyZXNwb25zZVRleHRcIjp7XCJydW5zXCI6W3tcInRleHRcIjpcIlVuYWJsZSB0byBjb3B5IGxpbmsgdG8gY2xpcGJvYXJkXCJ9XX0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FRUXVXb2lFd2pXOGZTc3dfS1ZBeFVTeGs4SUhTS3FKejRcdTAwM2RcIn19LFwicG9wdXBUeXBlXCI6XCJUT0FTVFwifX1dfX0sXCJhY2Nlc3NpYmlsaXR5XCI6e1wibGFiZWxcIjpcIkNvcHkgbGlua1wifSxcInRyYWNraW5nUGFyYW1zXCI6XCJDQU1ROEZzWUFDSVRDTmJ4OUt6RDhwVURGUkxHVHdnZElxb25QZ1x1MDAzZFx1MDAzZFwifX1dLFwicXVpY2tBY3Rpb25zQmFyXCI6e1wicXVpY2tBY3Rpb25zVmlld01vZGVsXCI6e1wid2F0Y2hPbllvdXR1YmVCdXR0b25cIjp7XCJ3YXRjaE9uWW91dHViZUJ1dHRvblZpZXdNb2RlbFwiOntcIndhdGNoT25ZdExhYmVsQnV0dG9uXCI6e1wiYnV0dG9uVmlld01vZGVsXCI6e1wib25UYXBcIjp7XCJpbm5lcnR1YmVDb21tYW5kXCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FJUXl2TUZJaE1JMXZIMHJNUHlsUU1WRXNaUENCMGlxaWMteWdFRWgzT20yZ1x1MDAzZFx1MDAzZFwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1widXJsXCI6XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92XHUwMDNkdFpPU1FCUDk0NlFcIixcIndlYlBhZ2VUeXBlXCI6XCJXRUJfUEFHRV9UWVBFX1VOS05PV05cIixcInJvb3RWZVwiOjgzNzY5fX0sXCJ1cmxFbmRwb2ludFwiOntcInVybFwiOlwiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dlx1MDAzZHRaT1NRQlA5NDZRXCIsXCJ0YXJnZXRcIjpcIlRBUkdFVF9ORVdfV0lORE9XXCJ9fX0sXCJhY2Nlc3NpYmlsaXR5VGV4dFwiOlwiV2F0Y2ggb24gWW91VHViZVwiLFwic3R5bGVcIjpcIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX09WRVJMQVlfREFSS1wiLFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBSVF5dk1GSWhNSTF2SDByTVB5bFFNVkVzWlBDQjBpcWljLVwiLFwidHlwZVwiOlwiQlVUVE9OX1ZJRVdfTU9ERUxfVFlQRV9URVhUXCIsXCJidXR0b25TaXplXCI6XCJCVVRUT05fVklFV19NT0RFTF9TSVpFX0xBUkdFXCIsXCJ0aXRsZUZvcm1hdHRlZFwiOntcImNvbnRlbnRcIjpcIldhdGNoIG9uXCIsXCJzdHlsZVJ1bnNcIjpbe1wid2VpZ2h0TGFiZWxcIjpcIkZPTlRfV0VJR0hUX1RISU5cIn1dLFwiYXR0YWNobWVudFJ1bnNcIjpbe1wic3RhcnRJbmRleFwiOjgsXCJsZW5ndGhcIjowLFwiZWxlbWVudFwiOntcInR5cGVcIjp7XCJpbWFnZVR5cGVcIjp7XCJpbWFnZVwiOntcInNvdXJjZXNcIjpbe1wiY2xpZW50UmVzb3VyY2VcIjp7XCJpbWFnZU5hbWVcIjpcIndhdGVybWFya1wifX1dfX19LFwicHJvcGVydGllc1wiOntcImxheW91dFByb3BlcnRpZXNcIjp7XCJoZWlnaHRcIjp7XCJ2YWx1ZVwiOjIwLFwidW5pdFwiOlwiRElNRU5TSU9OX1VOSVRfUE9JTlRcIn0sXCJ3aWR0aFwiOntcInZhbHVlXCI6OTAsXCJ1bml0XCI6XCJESU1FTlNJT05fVU5JVF9QT0lOVFwifSxcIm1hcmdpblwiOntcImxlZnRcIjp7XCJ2YWx1ZVwiOjV9fX19fSxcImFsaWdubWVudFwiOlwiQUxJR05NRU5UX1ZFUlRJQ0FMX0NFTlRFUlwifV19fX0sXCJ5dExvZ29Pbmx5QnV0dG9uXCI6e1wiYnV0dG9uVmlld01vZGVsXCI6e1wib25UYXBcIjp7XCJpbm5lcnR1YmVDb21tYW5kXCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FFUTF0Y0VJaE1JMXZIMHJNUHlsUU1WRXNaUENCMGlxaWMteWdFRWgzT20yZ1x1MDAzZFx1MDAzZFwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1widXJsXCI6XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92XHUwMDNkdFpPU1FCUDk0NlFcIixcIndlYlBhZ2VUeXBlXCI6XCJXRUJfUEFHRV9UWVBFX1VOS05PV05cIixcInJvb3RWZVwiOjgzNzY5fX0sXCJ1cmxFbmRwb2ludFwiOntcInVybFwiOlwiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dlx1MDAzZHRaT1NRQlA5NDZRXCIsXCJ0YXJnZXRcIjpcIlRBUkdFVF9ORVdfV0lORE9XXCJ9fX0sXCJhY2Nlc3NpYmlsaXR5VGV4dFwiOlwiV2F0Y2ggb24gWW91VHViZVwiLFwic3R5bGVcIjpcIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX01PTk9cIixcInRyYWNraW5nUGFyYW1zXCI6XCJDQUVRMXRjRUloTUkxdkgwck1QeWxRTVZFc1pQQ0IwaXFpYy1cIixcInR5cGVcIjpcIkJVVFRPTl9WSUVXX01PREVMX1RZUEVfVEVYVFwiLFwiYnV0dG9uU2l6ZVwiOlwiQlVUVE9OX1ZJRVdfTU9ERUxfU0laRV9DT01QQUNUXCIsXCJ0aXRsZUZvcm1hdHRlZFwiOntcImNvbnRlbnRcIjpcIiBcIixcImF0dGFjaG1lbnRSdW5zXCI6W3tcInN0YXJ0SW5kZXhcIjowLFwibGVuZ3RoXCI6MCxcImVsZW1lbnRcIjp7XCJ0eXBlXCI6e1wiaW1hZ2VUeXBlXCI6e1wiaW1hZ2VcIjp7XCJzb3VyY2VzXCI6W3tcImNsaWVudFJlc291cmNlXCI6e1wiaW1hZ2VOYW1lXCI6XCJ3YXRlcm1hcmtcIn19XX19fSxcInByb3BlcnRpZXNcIjp7XCJsYXlvdXRQcm9wZXJ0aWVzXCI6e1wiaGVpZ2h0XCI6e1widmFsdWVcIjoyMCxcInVuaXRcIjpcIkRJTUVOU0lPTl9VTklUX1BPSU5UXCJ9LFwid2lkdGhcIjp7XCJ2YWx1ZVwiOjkwLFwidW5pdFwiOlwiRElNRU5TSU9OX1VOSVRfUE9JTlRcIn0sXCJtYXJnaW5cIjp7XCJsZWZ0XCI6e1widmFsdWVcIjo1fX19fX0sXCJhbGlnbm1lbnRcIjpcIkFMSUdOTUVOVF9WRVJUSUNBTF9DRU5URVJcIn1dfX19fX19fX19LFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSTF2SDByTVB5bFFNVkVzWlBDQjBpcWljLXlnRUVoM09tMmdcdTAwM2RcdTAwM2RcIixcInBlcm1pc3Npb25zXCI6e1wiYWxsb3dJbWFNb25ldGl6YXRpb25cIjpmYWxzZSxcImFsbG93UGZwVW5icmFuZGVkXCI6ZmFsc2V9LFwidmlkZW9GbGFnc1wiOntcInBsYXlhYmxlSW5FbWJlZFwiOnRydWUsXCJpc0NyYXdsYWJsZVwiOnRydWV9LFwicHJldmlld1BsYXlhYmlsaXR5U3RhdHVzXCI6e1wic3RhdHVzXCI6XCJPS1wiLFwicGxheWFibGVJbkVtYmVkXCI6dHJ1ZSxcImNvbnRleHRQYXJhbXNcIjpcIlEwRkpVMEZuWjBFXHUwMDNkXCJ9LFwiZW1iZWRkZWRQbGF5ZXJNb2RlXCI6XCJFTUJFRERFRF9QTEFZRVJfTU9ERV9ERUZBVUxUXCIsXCJlbWJlZGRlZFBsYXllckNvbmZpZ1wiOntcImVtYmVkZGVkUGxheWVyTW9kZVwiOlwiRU1CRURERURfUExBWUVSX01PREVfREVGQVVMVFwiLFwiZW1iZWRkZWRQbGF5ZXJGbGFnc1wiOnt9fSxcImVtYmVkZGVkUGxheWVyQ29udGV4dFwiOntcImVtYmVkZGVkUGxheWVyRW5jcnlwdGVkQ29udGV4dFwiOlwiQUNtYmxCVlktVkx0eVBad1pQcEpuSUxWN293TXZwRVhlbkRvZjUtc25xS2N6TTRKUkFvTUJyM1ZXeFBqOFZZVkY5UGMyOHlueUtuYTcya3pwSVNiUDgzRzcxbWtwTmxwMTQ4b3F4U0xHM0p1NTJKMl9KRjVBWTNCRVJsc0trTURxTVJDd2dcIixcImFuY2VzdG9yT3JpZ2luc1N1cHBvcnRlZFwiOmZhbHNlfX0iLCJ2aWRlb19pZCI6InRaT1NRQlA5NDZRIiwicmVzb2x2ZV91cmxfcmVzcG9uc2UiOiJ7XCJyZXNwb25zZUNvbnRleHRcIjp7XCJzZXJ2aWNlVHJhY2tpbmdQYXJhbXNcIjpbe1wic2VydmljZVwiOlwiQ1NJXCIsXCJwYXJhbXNcIjpbe1wia2V5XCI6XCJjXCIsXCJ2YWx1ZVwiOlwiV0VCX0VNQkVEREVEX1BMQVlFUlwifSx7XCJrZXlcIjpcImN2ZXJcIixcInZhbHVlXCI6XCIyLjIwMjYwNzI0LjAxLjAwXCJ9LHtcImtleVwiOlwieXRfbGlcIixcInZhbHVlXCI6XCIwXCJ9LHtcImtleVwiOlwiUmVzb2x2ZVVybF9yaWRcIixcInZhbHVlXCI6XCIweDQzZmMzODUzNjJkNjI0YWRcIn1dfSx7XCJzZXJ2aWNlXCI6XCJHRkVFREJBQ0tcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImxvZ2dlZF9pblwiLFwidmFsdWVcIjpcIjBcIn1dfSx7XCJzZXJ2aWNlXCI6XCJHVUlERURfSEVMUFwiLFwicGFyYW1zXCI6W3tcImtleVwiOlwibG9nZ2VkX2luXCIsXCJ2YWx1ZVwiOlwiMFwifV19LHtcInNlcnZpY2VcIjpcIkVDQVRDSEVSXCIsXCJwYXJhbXNcIjpbe1wia2V5XCI6XCJjbGllbnQudmVyc2lvblwiLFwidmFsdWVcIjpcIjIuMjAyNjA3MjRcIn0se1wia2V5XCI6XCJjbGllbnQubmFtZVwiLFwidmFsdWVcIjpcIldFQl9FTUJFRERFRF9QTEFZRVJcIn1dfV0sXCJyZXNwb25zZUlkXCI6XCJJaE1JOWN2MHJNUHlsUU1WNmN0UENCMVA1Q1lyXCIsXCJ3ZWJSZXNwb25zZUNvbnRleHRFeHRlbnNpb25EYXRhXCI6e1wiaGFzRGVjb3JhdGVkXCI6dHJ1ZX19LFwiZW5kcG9pbnRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJJaE1JOWN2MHJNUHlsUU1WNmN0UENCMVA1Q1lyTWdobGVIUmxjbTVoYk1vQkJJZHpwdG9cdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOnt9fX0ifSwiUE9TVF9NRVNTQUdFX09SSUdJTiI6IioiLCJWSURFT19JRCI6InRaT1NRQlA5NDZRIiwiRE9NQUlOX0FETUlOX1NUQVRFIjoiIn0pO3dpbmRvdy55dGNmZy5vYmZ1c2NhdGVkRGF0YV8gPSBbXTs8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJkY196ZldpYUhUbVZJc0lna0NGejRnIj53aW5kb3cueXRBdFAgPSBuZXcgUHJvbWlzZShyZXMgPT4gd2luZG93Lnl0QXROID0gcmVzKTsgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRlbnRMb2FkZWQnLCAoKSA9PiB7d2luZG93Lnl0QXROKCk7IGRlbGV0ZSB3aW5kb3cueXRBdE47fSk7PC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iZGNfemZXaWFIVG1WSXNJZ2tDRno0ZyI+d2luZG93Lnl0ZXJyPXdpbmRvdy55dGVycnx8dHJ1ZTt3aW5kb3cudW5oYW5kbGVkRXJyb3JNZXNzYWdlcz17fTsKd2luZG93Lm9uZXJyb3I9ZnVuY3Rpb24obXNnLHVybCxsaW5lLG9wdF9jb2x1bW5OdW1iZXIsb3B0X2Vycm9yKXt2YXIgZXJyO2lmKG9wdF9lcnJvcillcnI9b3B0X2Vycm9yO2Vsc2V7ZXJyPW5ldyBFcnJvcjtlcnIubWVzc2FnZT1tc2c7ZXJyLmZpbGVOYW1lPXVybDtlcnIubGluZU51bWJlcj1saW5lO2lmKCFpc05hTihvcHRfY29sdW1uTnVtYmVyKSllcnJbImNvbHVtbk51bWJlciJdPW9wdF9jb2x1bW5OdW1iZXJ9dmFyIG1lc3NhZ2U9U3RyaW5nKGVyci5tZXNzYWdlKTtpZighZXJyLm1lc3NhZ2V8fG1lc3NhZ2UgaW4gd2luZG93LnVuaGFuZGxlZEVycm9yTWVzc2FnZXMpcmV0dXJuO3dpbmRvdy51bmhhbmRsZWRFcnJvck1lc3NhZ2VzW21lc3NhZ2VdPXRydWU7dmFyIGltZz1uZXcgSW1hZ2U7d2luZG93LmVtZXJnZW5jeVRpbWVvdXRJbWc9aW1nO2ltZy5vbmxvYWQ9aW1nLm9uZXJyb3I9ZnVuY3Rpb24oKXtkZWxldGUgd2luZG93LmVtZXJnZW5jeVRpbWVvdXRJbWd9O3ZhciB2YWx1ZXM9CnsiY2xpZW50Lm5hbWUiOnl0Y2ZnLmdldCgiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX05BTUUiKSwiY2xpZW50LnZlcnNpb24iOnl0Y2ZnLmdldCgiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX1ZFUlNJT04iKSwibXNnIjptZXNzYWdlLCJ0eXBlIjoiVW5oYW5kbGVkV2luZG93IitlcnIubmFtZSwiZmlsZSI6ZXJyLmZpbGVOYW1lLCJsaW5lIjplcnIubGluZU51bWJlciwic3RhY2siOihlcnIuc3RhY2t8fCIiKS5zdWJzdHIoMCw1MDApfTt2YXIgcGFydHM9W3l0Y2ZnLmdldCgiRU1FUkdFTkNZX0JBU0VfVVJMIiwiL2Vycm9yXzIwND90PWpzZXJyb3ImbGV2ZWw9RVJST1IiKV07dmFyIGtleTtmb3Ioa2V5IGluIHZhbHVlcyl7dmFyIHZhbHVlPXZhbHVlc1trZXldO2lmKHZhbHVlKXBhcnRzLnB1c2goa2V5KyI9IitlbmNvZGVVUklDb21wb25lbnQodmFsdWUpKX1pbWcuc3JjPXBhcnRzLmpvaW4oIiYiKX07Cjwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9ImRjX3pmV2lhSFRtVklzSWdrQ0Z6NGciPnZhciB5dGVyciA9IHl0ZXJyIHx8IHRydWU7PC9zY3JpcHQ+PHNjcmlwdCBkYXRhLWlkPSJfZ2QiIG5vbmNlPSJkY196ZldpYUhUbVZJc0lna0NGejRnIj53aW5kb3cuV0laX2dsb2JhbF9kYXRhID0geyJBZlk4SGYiOmZhbHNlLCJGTDFhbiI6ZmFsc2UsIkhpUHNiYiI6MCwiTVVFNk5lIjoieW91dHViZV93ZWIiLCJNdUpXamQiOmZhbHNlLCJVVUZhV2MiOiIlLkAubnVsbCwxMDAwLDJdIiwiY2ZiMmgiOiJ5b3V0dWJlLndlYi1mcm9udC1lbmQtY3JpdGljYWxfMjAyNjA3MjIuMDFfcDAiLCJmUER4d2QiOltdLCJoc0ZMVCI6IiUuQC5udWxsLDEwLDNdIiwiaUN6aEZjIjpmYWxzZSwiblF5QUUiOnt9LCJveE4zbmIiOnsiMSI6ZmFsc2UsIjAiOmZhbHNlLCI2MTA0MDEzMDEiOmZhbHNlLCI4OTk1ODg0MzciOmZhbHNlLCI3NzI2NTc3NjgiOnRydWUsIjUxMzY1OTUyMyI6ZmFsc2UsIjU2ODMzMzk0NSI6dHJ1ZSwiMTMzMTc2MTQwMyI6dHJ1ZSwiNjUxMTc1ODI4IjpmYWxzZSwiNzIyNzY0NTQyIjpmYWxzZSwiNzQ4NDAyMTQ1IjpmYWxzZSwiNzQ4NDAyMTQ2IjpmYWxzZSwiNzQ4NDAyMTQ3Ijp0cnVlLCIxNjAyNjEzMTg1IjpmYWxzZSwiODYxMzc3NzIzIjpmYWxzZSwiODYxMzc3NzI0IjpmYWxzZSwiODY5MzM2OTAzIjpmYWxzZSwiODgyNjc0NTA3IjpmYWxzZSwiODY5MzM2OTA0IjpmYWxzZSwiODY5MzM2OTA1IjpmYWxzZSwiMjgzOTUzMTU1IjpmYWxzZSwiOTE5NDQ0ODI0IjpmYWxzZSwiOTMxNDY4MDQ3IjpmYWxzZSwiOTI4ODc1Mzk4IjpmYWxzZSwiNjgzNzQ5MjAxIjpmYWxzZX0sInU0ZzdyIjoiJS5ALm51bGwsMSwzXSIsInhuSTlQIjpmYWxzZSwieHdBZkUiOnRydWUsInlGbnhyZiI6MjQ4Nn07PC9zY3JpcHQ+PHRpdGxlPllvdVR1YmU8L3RpdGxlPjxsaW5rIHJlbD0iY2Fub25pY2FsIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PXRaT1NRQlA5NDZRIj48L2hlYWQ+PGJvZHkgY2xhc3M9ImRhdGUtMjAyNjA3MjcgZW5fVVMgbHRyICBzaXRlLWNlbnRlci1hbGlnbmVkIHNpdGUtYXMtZ2lhbnQtY2FyZCBnZWNrbyBnZWNrby0xMzQiIGRpcj0ibHRyIj48ZGl2IGlkPSJwbGF5ZXIiPjwvZGl2PjxzY3JpcHQgbm9uY2U9ImRjX3pmV2lhSFRtVklzSWdrQ0Z6NGciPnZhciBzZXRNZXNzYWdlPWZ1bmN0aW9uKG1zZyl7aWYod2luZG93Lnl0JiZ5dC5zZXRNc2cpeXQuc2V0TXNnKG1zZyk7ZWxzZXt3aW5kb3cueXRjZmc9d2luZG93Lnl0Y2ZnfHx7fTt5dGNmZy5tc2dzPW1zZ319OwpzZXRNZXNzYWdlKHsiQUNDT1VOVF9MQUJFTCI6IkFjY291bnQiLCJBQ1RfT05fVEhJU19DT01NRU5UIjoiQWN0IG9uIHRoaXMgY29tbWVudCIsIkFERF9UT19EUk9QRE9XTl9MQUJFTCI6IkFkZCB0byBwbGF5bGlzdCIsIkFEX0JBREdFX0hJTlQiOiJBZHZlcnRpc2VtZW50IiwiQURfQkFER0VfVEVYVCI6IkFEIiwiQUxMX0NIQU5ORUxTX0xBQkVMIjoiQWxsIGNoYW5uZWxzIiwiQU1CSUVOVF9NT0RFIjoiQW1iaWVudCBtb2RlIiwiQU1CSUVOVF9NT0RFX09GRiI6IkFtYmllbnQgbW9kZSBvZmYiLCJBTUJJRU5UX01PREVfT04iOiJBbWJpZW50IG1vZGUgb24iLCJBTkRST0lEX0RFUFJFQ0FUSU9OX01FU1NBR0VfQk9EWSI6IlBsZWFzZSB1cGRhdGUgeW91ciBkZXZpY2UgdG8gQW5kcm9pZCA0LjAgYmVmb3JlIE9jdCAyMiwgMjAyMCB0byBrZWVwIHVzaW5nIFlvdVR1YmUgd2l0aG91dCBpbnRlcnJ1cHRpb25zLiIsIkFORFJPSURfREVQUkVDQVRJT05fTUVTU0FHRV9IRUFERVIiOiJZb3VUdWJlIHdpbGwgbm8gbG9uZ2VyIGJlIHN1cHBvcnRlZCBvbiB5b3VyIGRldmljZSBhZnRlciAyMDIwLTEwLTIyIiwiQVBQX1VQU0VMTF9TVUJUSVRMRSI6IlVwbG9hZCwgc2F2ZSwgYW5kIGNvbW1lbnQgb24gdmlkZW9zIHdpdGggdGhlIFlvdVR1YmUgYXBwIiwiQVBQX1VQU0VMTF9USVRMRSI6IlN3aXRjaCB0byB0aGUgYXBwIGZvciBhIGJldHRlciB2aWV3aW5nIGV4cGVyaWVuY2UiLCJBVURJT19UUkFDSyI6IkF1ZGlvIFRyYWNrIiwiQVVUT05BVl9UT0dHTEUiOiJBdXRvcGxheSIsIkFVVE9QTEFZX0lOX1RFTl9TRUNPTkRTIjoiTmV4dCB2aWRlbyB3aWxsIGJlIHBsYXllZCBpbiB0ZW4gc2Vjb25kcyIsIkFVVE9QTEFZX1BBVVNFRCI6IkF1dG9wbGF5IGlzIHBhdXNlZCIsIkFVVE9QTEFZX1BMQVlfTk9XIjoiUGxheSBub3ciLCJBVVRPUExBWV9VUF9ORVhUX0lOIjoiVXAgbmV4dCBpbiBzZWNvbmRzX3BsYWNlaG9sZGVyIiwiQVVUT19UUkFOU0xBVEUiOiJBdXRvLXRyYW5zbGF0ZSIsIkFVVE9fWk9PTSI6IkF1dG8gem9vbSIsIkJBQ0siOiJCYWNrIiwiQlJBTkRFRF9TSUdOX0lOX0RJQUxPR19ERVNDUklQVElPTiI6IkFjY2VzcyBhbGwgZmVhdHVyZXMgYW5kIGdldCBhIHNlYW1sZXNzIGV4cGVyaWVuY2UiLCJDQU5DRUwiOiJDYW5jZWwiLCJDSEFOTkVMX1NXSVRDSEVSX0xBQkVMIjoiU3dpdGNoIGFjY291bnQiLCJDSEFSQUNURVJfTElNSVQiOiJVc2UgZmV3ZXIgdGhhbiAkbnVtYmVyIGNoYXJhY3RlcnMiLCJDTE9TRSI6IkNsb3NlIiwiQ0xPU0VEX0NBUFRJT05TX0RJU0FCTEVEIjoiTm8gY2FwdGlvbnMgYXJlIGF2YWlsYWJsZSBmb3IgdGhpcyB2aWRlbyIsIkNMT1NFRF9DQVBUSU9OU19PRkYiOiJTdWJ0aXRsZXMvQ0MgdHVybmVkIG9mZiIsIkNMT1NFRF9DQVBUSU9OU19PTiI6IlN1YnRpdGxlcy9DQyB0dXJuZWQgb24iLCJDTE9TRURfQ0FQVElPTlNfT05fTEFOR1VBR0UiOiJTdWJ0aXRsZXMvQ0MgdHVybmVkIG9uIChsYW5ndWFnZV9wbGFjZWhvbGRlcikiLCJDTE9TRV9TRUFSQ0hfTEFCRUwiOiJDbG9zZSBzZWFyY2giLCJDTE9TRV9TRVRUSU5HU19MQUJFTCI6IkNsb3NlIFNldHRpbmdzIiwiQ09NTUVOVEJPWF9QT1NUIjoiUG9zdCIsIkNPTU1FTlRfTU9EQUxfQ09OVEVOVCI6IlBsZWFzZSBzaWduIGluIHRvIGFjdCBvbiB0aGlzIGNvbW1lbnQuIiwiQ09ORklSTV9PSyI6Ik9LIiwiQ09OTkVDVF9UT19USEVfSU5URVJORVQiOiJDb25uZWN0IHRvIHRoZSBpbnRlcm5ldCIsIkNPUElFRF9UT19DTElQQk9BUkQiOiJDb3BpZWQgdG8gY2xpcGJvYXJkIiwiQ09QWSI6IkNvcHkiLCJDT1BZX0RFQlVHX0lORk8iOiJDb3B5IERlYnVnIEluZm8iLCJDT1BZX0VNQkVEX0NPREUiOiJDb3B5IGVtYmVkIGNvZGUiLCJDT1BZX0xJTktfTEFCRUwiOiJDb3B5IGxpbmsiLCJDT1BZX1ZJREVPX1VSTCI6IkNvcHkgdmlkZW8gVVJMIiwiQ09QWV9WSURFT19VUkxfQVRfQ1VSUkVOVF9USU1FIjoiQ29weSB2aWRlbyBVUkwgYXQgY3VycmVudCB0aW1lIiwiQ1JFQVRFX0NIQU5ORUxfVElUTEUiOiJDcmVhdGUgY2hhbm5lbCIsIkRFTEVURV9GUk9NX0RPV05MT0FEUyI6IkRlbGV0ZSBmcm9tIGRvd25sb2FkcyIsIkRJQUxPRyI6IkRpYWxvZyIsIkRNQV9DT05TRU5UX0NPTkZJUk1BVElPTiI6IllvdXIgY2hvaWNlIHdpbGwgdGFrZSBlZmZlY3Qgb24gTWFyY2ggNiwgMjAyNC4gWW91IGNhbiBjaGFuZ2UgeW91ciBjaG9pY2VzIGFueXRpbWUgaW4geW91ciBHb29nbGUgQWNjb3VudC4iLCJETUFfQ09OU0VOVF9DT05GSVJNQVRJT04yIjoiWW91ciBjaG9pY2VzIGhhdmUgYmVlbiBzYXZlZC4gWW91IGNhbiBjaGFuZ2UgeW91ciBjaG9pY2VzIGFueXRpbWUgaW4geW91ciBHb29nbGUgQWNjb3VudC4iLCJETUFfQ09OU0VOVF9HRU5FUkFMX0VSUk9SIjoiU29tZXRoaW5nIHdlbnQgd3Jvbmcgd2hpbGUgbG9hZGluZyIsIkRNQV9DT05TRU5UX1JFQ09SRF9FUlJPUiI6IlNvbWV0aGluZyB3ZW50IHdyb25nIGFuZCB5b3VyIGNob2ljZXMgd2VyZSBub3Qgc2F2ZWQiLCJET05FIjoiRG9uZSIsIkRPV05MT0FEIjoiRG93bmxvYWQiLCJGQUlMRURfQ09QWV9FUlJPUl9NRVNTQUdFIjoiQ29weSBpcyBub3Qgc3VwcG9ydGVkIG9uIHRoZSBkZXZpY2UsIGZhaWxlZCB0byBjb3B5LiIsIkZMQUdfQ09ORklSTSI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBmbGFnIHRoaXMgdmlkZW8/IiwiRkxBR19DT05URU5UIjoiU2lnbiBpbiB0byBmbGFnIGl0LiIsIkZMQUdfTEFCRUwiOiJGbGFnIGFzIGluYXBwcm9wcmlhdGUiLCJGTEFHX1RJVExFIjoiSW5hcHByb3ByaWF0ZSB2aWRlbz8iLCJGVUxMU0NSRUVOX0dFTkVSSUNfRVJST1IiOiJGdWxsIHNjcmVlbiBpcyB1bmF2YWlsYWJsZS4iLCJHT09HTEVfQ09NUEFOWSI6IllvdVR1YmUsIGEgR29vZ2xlIGNvbXBhbnkiLCJISURFX0FMRVJUIjoiSGlkZSB0aGlzIGFsZXJ0IiwiSElERV9QTEFZRVJfQ09OVFJPTFMiOiJIaWRlIHBsYXllciBjb250cm9scyIsIkhJREVfUExBWUxJU1RfVklERU9TIjoiSGlkZSBwbGF5bGlzdCB2aWRlb3MiLCJISURFX1NFQVJDSF9GSUxURVJTX0xBQkVMIjoiSGlkZSBzZWFyY2ggZmlsdGVycyIsIkhPTUUiOiJIb21lIiwiSU5WQUxJRF9SRVNQT05TRV9SRUNFSVZFRCI6IkludmFsaWQgcmVzcG9uc2UgcmVjZWl2ZWQuIiwiTEVBVkVfQV9DT01NRU5UX1RJVExFIjoiTGVhdmUgYSBjb21tZW50PyIsIkxJQlJBUlkiOiJMaWJyYXJ5IiwiTElLRV9DT1VOVF9URVhUIjp7ImNhc2UwIjoiTm8gbGlrZXMiLCJjYXNlMSI6IjEgbGlrZSIsIm90aGVyIjoiIyBsaWtlcyJ9LCJMSUtFX0NPVU5UX1RFWFRfTEFCRUwiOiJ7XCJjYXNlMFwiOiBcIk5vIHBlb3BsZSBoYXZlIGxpa2VkIHRoaXMgdmlkZW8uXCIsIFwiY2FzZTFcIjogXCIxIHBlcnNvbiBoYXMgbGlrZWQgdGhpcyB2aWRlby5cIiwgXCJvdGhlclwiOiBcIiMgcGVvcGxlIGhhdmUgbGlrZWQgdGhpcyB2aWRlby5cIn0iLCJMSVNURU5JTkciOiJMaXN0ZW5pbmcuLi4iLCJMT0FESU5HIjoiTG9hZGluZy4uLiIsIkxPTkdfUFJFU1NfTUlDX1RPX1NQRUFLIjoiTG9uZyBwcmVzcyBtaWNfaWNvbl9wbGFjZWhvbGRlciB0byBzcGVhayIsIkxPT1AiOiJMb29wIiwiTUVOVV9ERVNLVE9QIjoiRGVza3RvcCIsIk1FTlVfRVhJVCI6IkV4aXQiLCJNRU5VX0ZFRURCQUNLIjoiRmVlZGJhY2siLCJNRU5VX0hFTFAiOiJIZWxwIiwiTUVOVV9JTVBSRVNTVU0iOiJJbXByaW50IiwiTUVOVV9QTEFZRVJfU0VUVElOR1MiOiJQbGF5YmFjayBTZXR0aW5ncyIsIk1FTlVfUkVQT1JUX0FfUFJPQkxFTSI6IlJlcG9ydCBhIHByb2JsZW0gd2l0aCBZb3VUdWJlIiwiTUVOVV9TRU5EX0ZFRURCQUNLIjoiU2VuZCBmZWVkYmFjayIsIk1FTlVfU0VUVElOR1MiOiJTZXR0aW5ncyIsIk1FTlVfU0lHTl9JTiI6IlNpZ24gSW4iLCJNRU5VX1RFUk1TIjoiUHJpdmFjeSBcdTAwMjYgVGVybXMiLCJNRU5VX1RJVExFIjoiTWVudSIsIk1FTlVfWU9VUl9EQVRBIjoiWW91ciBkYXRhIGluIFlvdVR1YmUiLCJNRVRBREFUQV9TVUJUSVRMRV9DSEFOTkVMX05BTUVfTEFCRUwiOiJVcGxvYWRlZCBieSAke2NoYW5uZWxfbmFtZV9wbGFjZWhvbGRlcn0uIiwiTU1HX0NPTkZJUk1BVElPTiI6IllvdXIgY2hvaWNlIGhhcyBiZWVuIHNhdmVkLiBZb3UgY2FuIGNoYW5nZSB0aGlzIHNldHRpbmcgYW55dGltZSBpbiBNeSBBZCBDZW50ZXIuIiwiTU1HX0NPTlNFTlRfUkVDT1JEX0VSUk9SIjoiU29tZXRoaW5nIHdlbnQgd3JvbmcgYW5kIHlvdXIgY2hvaWNlIHdhcyBub3Qgc2F2ZWQiLCJNT1JFIjoiTW9yZSIsIk1PUkVfSU5GTyI6Ik1vcmUgaW5mbyIsIk1PUkVfTE9XRVJDQVNFIjoibW9yZSIsIk1PUkVfT1BUSU9OUyI6Ik1vcmUgb3B0aW9ucyIsIk1PUkVfVklERU9TIjoiTW9yZSB2aWRlb3MiLCJNT1JFX1ZJREVPU19DTE9TRV9CVVRUT05fQVJJQV9MQUJFTCI6IkhpZGUgbW9yZSB2aWRlb3MiLCJNT1JFX1ZJREVPU19GUk9NX0NIQU5ORUwiOiJNb3JlIHZpZGVvcyBmcm9tICRjaGFubmVsX25hbWVfcGxhY2Vob2xkZXIiLCJNT1JFX1ZJREVPU19ORVhUX0JVVFRPTl9BUklBX0xBQkVMIjoiTmV4dCB2aWRlb3MiLCJNT1JFX1ZJREVPU19QUkVWSU9VU19CVVRUT05fQVJJQV9MQUJFTCI6IlByZXZpb3VzIHZpZGVvcyIsIk1VVEVfVk9MVU1FIjoiTXV0ZSIsIk5FV19QTEFZTElTVCI6Ik5ldyBwbGF5bGlzdCIsIk5FWFRfVklERU8iOiJOZXh0IHZpZGVvIiwiTk9USUZJQ0FUSU9OX0VSUk9SX01FU1NBR0UiOiJTb21ldGhpbmcgd2VudCB3cm9uZywgcGxlYXNlIHRyeSBhZ2Fpbi4iLCJOT1RfRk9VTkRfQ1RBIjoiQnJvd3NlIFZpZGVvcyIsIk5PVF9GT1VORF9NRVNTQUdFIjoiUGxlYXNlIHNlYXJjaCBmb3Igc29tZXRoaW5nIGVsc2UsIG9yIGJyb3dzZSB5b3VyIEhvbWUgZmVlZC4iLCJOT1RfRk9VTkRfVElUTEUiOiJUaGlzIHBhZ2UgaXNuXHUwMDI3dCBhdmFpbGFibGUiLCJOT19ET1dOTE9BRFMiOiJObyBkb3dubG9hZHMiLCJOT19NSUNfSU5QVVQiOiJEaWRuXHUwMDI3dCBoZWFyIHRoYXQuIFRyeSBzcGVha2luZyBhZ2Fpbi4iLCJPRkZMSU5FX0NIRUNLX0NPTk5FQ1RJT04iOiJZb3VcdTAwMjdyZSBvZmZsaW5lLiBDaGVjayB5b3VyIGNvbm5lY3Rpb24uIiwiT09QU19NRVNTQUdFIjoiT29wcyEgU29tZXRoaW5nIHdlbnQgd3JvbmcuIiwiT1BFTl9BUFAiOiJPcGVuIEFwcCIsIk9QRU5fWU9VVFVCRSI6Ik9wZW4gdGhlIGFwcCIsIk9QRU5fWU9VVFVCRV9BUFAiOiJPcGVuIFlvdVR1YmUgYXBwIiwiUEFVU0UiOiJQYXVzZSIsIlBMQVkiOiJQbGF5IiwiUExBWUJBQ0tfU1BFRURfWCI6IiR7c3BlZWRfcmF0ZV9wbGFjZWhvbGRlcn14IiwiUExBWUVSX0NBUFRJT04iOiJDYXB0aW9ucyIsIlBMQVlFUl9DQVBUSU9OX09GRiI6Ik9mZiIsIlBMQVlFUl9DQVBUSU9OX09OIjoiT24iLCJQTEFZRVJfRE9VQkxFX1NQRUVEX1VTRVJfRURVIjoiMngiLCJQTEFZRVJfRE9VQkxFX1RBUF9UT19TRUVLIjoiRG91YmxlIHRhcCBsZWZ0IG9yIHJpZ2h0IHRvIHNraXAgMTAgc2Vjb25kcyIsIlBMQVlFUl9ET1VCTEVfVEFQX1RPX1NIT1dfT1JfSElERV9QTEFZRVJfQ09OVFJPTFMiOiJEb3VibGUgdGFwIHRvIHNob3cgb3IgaGlkZSBwbGF5ZXIgY29udHJvbHMiLCJQTEFZRVJfRVhJVF9GVUxMU0NSRUVOIjoiRXhpdCBmdWxsIHNjcmVlbiIsIlBMQVlFUl9GQVNURk9SV0FSRF9TRUNPTkRTIjoiRmFzdCBmb3J3YXJkICRzZWNvbmRzX3BsYWNlaG9sZGVyIHNlY29uZHMiLCJQTEFZRVJfRlVMTFNDUkVFTiI6IkVudGVyIGZ1bGwgc2NyZWVuIiwiUExBWUVSX0xJVkVfTEFCRUwiOiJMaXZlIiwiUExBWUVSX0xJVkVfTk9XIjoiTGl2ZSBub3ciLCJQTEFZRVJfTUlOSU1JWkUiOiJNaW5pbWl6ZSIsIlBMQVlFUl9ORVhUIjoiTmV4dCB2aWRlbyIsIlBMQVlFUl9QQVVTRSI6IlBhdXNlIHZpZGVvIiwiUExBWUVSX1BMQVkiOiJQbGF5IHZpZGVvIiwiUExBWUVSX1BSRU1JRVJFX0xBQkVMIjoiUHJlbWllcmUiLCJQTEFZRVJfUFJFVklPVVMiOiJQcmV2aW91cyB2aWRlbyIsIlBMQVlFUl9QUk9HUkVTU19CQVIiOiJTZWVrIHNsaWRlciIsIlBMQVlFUl9RVUFMSVRZIjoiUXVhbGl0eSIsIlBMQVlFUl9RVUFMSVRZX0FVVE8iOiJBdXRvIiwiUExBWUVSX1JFUExBWSI6IlJlcGxheSBWaWRlbyIsIlBMQVlFUl9SRVdJTkRfU0VDT05EUyI6IlJld2luZCAkc2Vjb25kc19wbGFjZWhvbGRlciBzZWNvbmRzIiwiUExBWUVSX1NFQ09ORFMiOiIkc2Vjb25kc19wbGFjZWhvbGRlciBzZWNvbmRzIiwiUExBWUVSX1NQRUVEIjoiU3BlZWQiLCJQTEFZRVJfU1BFRURVUF9VU0VSX0VEVSI6IlBsYXlpbmcgYXQgc3BlZWRfcmF0ZV9wbGFjZWhvbGRlcnggc3BlZWQiLCJQTEFZRVJfU1BFRURfREVDUkVBU0UiOiJEZWNyZWFzZSBwbGF5YmFjayBzcGVlZCIsIlBMQVlFUl9TUEVFRF9JTkNSRUFTRSI6IkluY3JlYXNlIHBsYXliYWNrIHNwZWVkIiwiUExBWUVSX1NQRUVEX05PUk1BTCI6Ik5vcm1hbCIsIlBMQVlFUl9TUEVFRF9SRUNFTlQiOiJSZWNlbnQiLCJQTEFZRVJfVElNRV9EVVJBVElPTiI6IlRpbWUgZHVyYXRpb24iLCJQTEFZRVJfVElNRV9FTEFQU0VEIjoiVGltZSBlbGFwc2VkIiwiUExBWUVSX1RJTUVfRk9STUFUVEVEIjp7ImNhc2UwIjoiJHttaW51dGVzfSBtaW51dGVzIGFuZCAke3NlY29uZHN9IHNlY29uZHMiLCJjYXNlMSI6IjEgaG91ciwgJHttaW51dGVzfSBtaW51dGVzIGFuZCAke3NlY29uZHN9IHNlY29uZHMiLCJvdGhlciI6IiMgaG91cnMsICR7bWludXRlc30gbWludXRlcyBhbmQgJHtzZWNvbmRzfSBzZWNvbmRzIn0sIlBMQVlMSVNUX0NVUlJFTlRfVklERU9fSU5ERVgiOiIke2N1cnJlbnRfdmlkZW9faW5kZXh9IG9mICR7bGFzdF9pbmRleH0uIiwiUExBWUxJU1RfREVTQ1JJUFRJT05fSU5WQUxJRF9DSEFSQUNURVJTIjoiUGxheWxpc3QgZGVzY3JpcHRpb24gY2FuXHUwMDI3dCB1c2UgXHUwMDNjIG9yIFx1MDAzZSIsIlBMQVlMSVNUX01JWF9ERVRBSUxFRF9MT05HX0JZTElORSI6Ik1peGVzIGFyZSBwbGF5bGlzdHMgWW91VHViZSBtYWtlcyBmb3IgeW91IiwiUExBWUxJU1RfTkFNRV9JTlZBTElEX0NIQVJBQ1RFUlMiOiJQbGF5bGlzdCB0aXRsZSBjYW5cdTAwMjd0IHVzZSBcdTAwM2Mgb3IgXHUwMDNlIiwiUExBWUxJU1RfTkFNRV9NSVNTSU5HIjoiUGxheWxpc3QgdGl0bGUgcmVxdWlyZWQuIiwiUExBWUxJU1RfTkFNRV9UT09fTE9ORyI6IlBsYXlsaXN0IHRpdGxlIGlzIHRvbyBsb25nLiIsIlBMQVlMSVNUX1BBTkVMX0VORF9PRl9QTEFZTElTVCI6IkVuZCBvZiBQbGF5bGlzdCIsIlBMQVlMSVNUX1BBTkVMX05FWFQiOiJOZXh0OiIsIlBMQVlMSVNUX1BBTkVMX1VOTElTVEVEX1BMQVlMSVNUIjoiVW5saXN0ZWQgUGxheWxpc3QiLCJQTEFZTElTVF9URVhUX0lOUFVUX0NIQVJfQ09VTlQiOiJjdXJyZW50X2NvdW50X3BsYWNlaG9sZGVyIG9mIG1heF9jb3VudF9wbGFjZWhvbGRlciBjaGFyYWN0ZXJzIHVzZWQiLCJQTEFZX0FMTCI6IlBsYXkgYWxsIiwiUExFQVNFX0ZJWF9FUlJPUlMiOiJQbGVhc2UgZml4IGVycm9ycyBhbmQgdHJ5IGFnYWluLiIsIlBSRU1JVU1fQkFER0VfTEFCRUwiOiJQcmVtaXVtIiwiUFJFVklPVVNfVklERU8iOiJQcmV2aW91cyB2aWRlbyIsIlBSSVZBQ1lfUE9MSUNZIjoiUHJpdmFjeSBQb2xpY3kiLCJSRUxPQUQiOiJSZWxvYWQiLCJSRVBMSUVTX1NIT1dfTU9SRSI6IlNob3cgbW9yZSByZXBsaWVzIiwiUkVRVUlSRURfTEFCRUwiOiJSZXF1aXJlZCIsIlNBVkVfUExBWUxJU1QiOiJTYXZlIiwiU0NSVUJfU0xJREVfVVNFUl9FRFUiOiJTbGlkZSBsZWZ0IG9yIHJpZ2h0IHRvIHNlZWsiLCJTRUFSQ0giOiJTZWFyY2giLCJTRUFSQ0hfQVBQRU5EX0xBQkVMIjoiQXBwZW5kIHN1Z2dlc3Rpb24gdG8gc2VhcmNoIGZpZWxkIiwiU0VBUkNIX0NIQU5ORUwiOiJTZWFyY2ggY2hhbm5lbCIsIlNFQVJDSF9DTEVBUl9MQUJFTCI6IkNsZWFyIGN1cnJlbnQgc2VhcmNoIHRleHQiLCJTRUFSQ0hfRU5USVRZX1NVR0dFU1RJT05fQUxCVU0iOiJBbGJ1bSBieSAke2FydGlzdH0iLCJTRUFSQ0hfRU5USVRZX1NVR0dFU1RJT05fQUxCVU1fTk9fQVJUSVNUIjoiQWxidW0iLCJTRUFSQ0hfRU5USVRZX1NVR0dFU1RJT05fTU9WSUUiOiJNb3ZpZSIsIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9TT05HIjoiU29uZyBieSAke2FydGlzdH0iLCJTRUFSQ0hfRU5USVRZX1NVR0dFU1RJT05fU09OR19OT19BUlRJU1QiOiJTb25nIiwiU0VBUkNIX0VOVElUWV9TVUdHRVNUSU9OX1RWX1NIT1ciOiJUViBzaG93IiwiU0VBUkNIX0ZJTFRFUlNfTEFCRUwiOiJTZWFyY2ggZmlsdGVycyIsIlNFQVJDSF9MQUJFTCI6IlNlYXJjaCBZb3VUdWJlIiwiU0VBUkNIX1BQUF9QTEFDRUhPTERFUl9URVhUIjoiU2VhcmNoIHBhaWQgcHJvZHVjdCBwbGFjZW1lbnQgdmlkZW9zIiwiU0VFS19TTElERVIiOiJTZWVrIHNsaWRlciIsIlNFVFRJTkdTX0xBQkVMIjoiU2V0dGluZ3MiLCJTRVRUSU5HU19NSUNfUEVSTUlTU0lPTiI6IlBsZWFzZSBhbGxvdyBtaWNyb3Bob25lIHBlcm1pc3Npb24gaW4gZGV2aWNlIHNldHRpbmdzLiIsIlNFVF9QTEFZQkFDS19TUEVFRF9YIjoiJHtzcGVlZF9yYXRlX3BsYWNlaG9sZGVyfXggc3BlZWQiLCJTSE9SVFNfVEFCX0xBQkVMIjoiU2hvcnRzIiwiU0hPV19MRVNTIjoiU2hvdyBsZXNzIiwiU0hPV19NT1JFIjoiU2hvdyBtb3JlIiwiU0hPV19QTEFZRVJfQ09OVFJPTFMiOiJTaG93IHBsYXllciBjb250cm9scyIsIlNIT1dfUExBWUxJU1RfVklERU9TIjoiU2hvdyBwbGF5bGlzdCB2aWRlb3MiLCJTSE9XX1NFQVJDSF9GSUxURVJTX0xBQkVMIjoiU2hvdyBzZWFyY2ggZmlsdGVycyIsIlNJR05fSU5fTEFCRUwiOiJTaWduIGluIiwiU0lHTl9JTl9PTl9XRUIiOiJTaWduIGluIG9uIHdlYiIsIlNUQUJMRV9WT0xVTUUiOiJTdGFibGUgdm9sdW1lIiwiU1RBQkxFX1ZPTFVNRV9PRkYiOiJTdGFibGUgdm9sdW1lIG9mZiIsIlNUQUJMRV9WT0xVTUVfT04iOiJTdGFibGUgdm9sdW1lIG9uIiwiU1RBVFNfRk9SX05FUkRTIjoiU3RhdHMgRm9yIE5lcmRzIiwiU1VHR0VTVElPTl9ESVNNSVNTRURfTEFCRUwiOiJTdWdnZXN0aW9uIFJlbW92ZWQiLCJTVUdHRVNUSU9OX0RJU01JU1NfSU5fU0VUVElOR1NfTEFCRUwiOiJSZW1vdmUgaW4gc2V0dGluZ3MiLCJTVUdHRVNUSU9OX0RJU01JU1NfTEFCRUwiOiJSZW1vdmUiLCJTVUdHRVNUSU9OX05FV19WSURFT1NfVEVYVCI6Ik5ldyB2aWRlb3MiLCJTVUdHRVNUSU9OX1RIVU1CTkFJTF9BVFRSSUJVVElPTl9ESUFMT0dfQlVUVE9OX0xBQkVMIjoiVmlzaXQgc291cmNlIiwiU1VHR0VTVElPTl9USFVNQk5BSUxfQVRUUklCVVRJT05fRElBTE9HX0RFU0NSSVBUSU9OIjoiVmlzaXQgaW1hZ2Ugc291cmNlIHdlYnNpdGU/IiwiU1VHR0VTVElPTl9USFVNQk5BSUxfQVRUUklCVVRJT05fRElBTE9HX1RJVExFIjoiSW1hZ2Ugc291cmNlIiwiU1VHR0VTVElPTl9USFVNQk5BSUxfQVRUUklCVVRJT05fTEFCRUwiOiJWaWV3IGltYWdlIHNvdXJjZSIsIlNVR0dFU1RJT05fVEhVTUJOQUlMX0xBQkVMIjoiSW1hZ2UgZm9yIHN1Z2dlc3Rpb24iLCJURVJNU19PRl9TRVJWSUNFIjoiVGVybXMgb2YgU2VydmljZSIsIlRJTUVTVEFNUF9NSU5VVEVTIjoidGltZXN0YW1wIG1pbnV0ZXMgcmVxdWlyZWQiLCJUSU1FU1RBTVBfU0VDT05EUyI6InRpbWVzdGFtcCBzZWNvbmRzIHJlcXVpcmVkIiwiVE9HR0xFX09GRiI6Ik9mZiIsIlRPR0dMRV9PTiI6Ik9uIiwiVFJFTkRJTkciOiJUcmVuZGluZyIsIlRST1VCTEVTSE9PVF9QTEFZQkFDS19JU1NVRSI6IlRyb3VibGVzaG9vdCBwbGF5YmFjayBpc3N1ZSIsIlRSWV9BR0FJTl9MQVRFUiI6IlNvbWV0aGluZyB3ZW50IHdyb25nLiBQbGVhc2UgdHJ5IGFnYWluIGxhdGVyLiIsIlRSWV9BR0FJTl9NSUNfUEVSTUlTU0lPTiI6IlBsZWFzZSB0cnkgYWdhaW4gYW5kIGFsbG93IG1pY3JvcGhvbmUgcGVybWlzc2lvbi4iLCJUVVJOX09GRl9BVVRPUExBWV9DT05GSVJNX0JVVFRPTl9USVRMRSI6IlR1cm4gb2ZmIiwiVFVSTl9PRkZfQVVUT1BMQVlfRElBTE9HX0RFU0NSSVBUSU9OIjoiV2hlbiBhdXRvcGxheSBpcyBvZmYsIGEgc3VnZ2VzdGVkIHZpZGVvIHdpbGwgbm90IGF1dG9tYXRpY2FsbHkgcGxheSBuZXh0IiwiVFVSTl9PRkZfQVVUT1BMQVlfRElBTE9HX1RJVExFIjoiVHVybiBvZmYgYXV0b3BsYXk/IiwiVU5NVVRFX1ZPTFVNRSI6IlVubXV0ZSIsIlZJREVPUyI6Int2aWRlb3MscGx1cmFsLCBcdTAwM2QwezAgdmlkZW9zfVx1MDAzZDF7MSB2aWRlb31vdGhlcnsjIHZpZGVvc319IiwiVklERU9fTElOS19MQUJFTCI6IlZpZGVvIGxpbmsiLCJXQVRDSEVEIjoiV2F0Y2hlZCIsIl9fbGFuZ19fIjoiZW4ifSk7PC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iZGNfemZXaWFIVG1WSXNJZ2tDRno0ZyI+dmFyIF9GX2Nzc1Jvd0tleSA9ICd5dGVtYmVkcy5iYXNlLk54bml1dVpFVFp3LkwuRjQuTyc7IHZhciBfRl9jb21iaW5lZFNpZ25hdHVyZSA9ICdBR0tNeXdIVTZxSE5pdG5zNVhxWUVLLTJ5eVVFYUdPVmtRJzs8L3NjcmlwdD48c2NyaXB0IHNyYz0iL3MvXy95dGVtYmVkcy9fL2pzL2s9eXRlbWJlZHMuYmFzZS5lbl9VUy5fODhUd3l5SEtIcy4yMDIxLk8vYW09QUFBQWdBL2Q9MS9leGNtPWJhc2Uscm9vdC9icj0xL3JzPUFHS015d0V1MlRRVXpkU0YwQWNzRkJNVXJGcXl1cktsdXcvbT1yb290LGJhc2UiIG5hbWU9ImVtYmVkX2NsaWVudCIgaWQ9ImJhc2UtanMiIG5vbmNlPSJkY196ZldpYUhUbVZJc0lna0NGejRnIj48L3NjcmlwdD48c2NyaXB0IHNyYz0iL3MvcGxheWVyLzdhNzk2OWMyL3BsYXllcl9lbWJlZF9lczYudmZsc2V0L2VuX1VTL2Jhc2UuanMiIG5hbWU9InBsYXllci9iYXNlIiBub25jZT0iZGNfemZXaWFIVG1WSXNJZ2tDRno0ZyI+PC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iZGNfemZXaWFIVG1WSXNJZ2tDRno0ZyI+d3JpdGVFbWJlZCgpOzwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9ImRjX3pmV2lhSFRtVklzSWdrQ0Z6NGciPihmdW5jdGlvbigpIHtpZiAod2luZG93Lnl0QXROKSB7d2luZG93Lnl0QXROKHsnUic6ICdceDdiXHgyMnJlc3BvbnNlQ29udGV4dFx4MjI6XHg3Ylx4MjJzZXJ2aWNlVHJhY2tpbmdQYXJhbXNceDIyOlx4NWJceDdiXHgyMnNlcnZpY2VceDIyOlx4MjJDU0lceDIyLFx4MjJwYXJhbXNceDIyOlx4NWJceDdiXHgyMmtleVx4MjI6XHgyMmNceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMldFQl9FTUJFRERFRF9QTEFZRVJceDIyXHg3ZCxceDdiXHgyMmtleVx4MjI6XHgyMmN2ZXJceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMjIuMjAyNjA3MjQuMDEuMDBceDIyXHg3ZCxceDdiXHgyMmtleVx4MjI6XHgyMnl0X2xpXHgyMixceDIydmFsdWVceDIyOlx4MjIwXHgyMlx4N2QsXHg3Ylx4MjJrZXlceDIyOlx4MjJHZXRBdHRlc3RhdGlvbkNoYWxsZW5nZV9yaWRceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMjB4NDNmYzM4NTM2MmQ2MjRhZFx4MjJceDdkXHg1ZFx4N2QsXHg3Ylx4MjJzZXJ2aWNlXHgyMjpceDIyR0ZFRURCQUNLXHgyMixceDIycGFyYW1zXHgyMjpceDViXHg3Ylx4MjJrZXlceDIyOlx4MjJsb2dnZWRfaW5ceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMjBceDIyXHg3ZFx4NWRceDdkLFx4N2JceDIyc2VydmljZVx4MjI6XHgyMkdVSURFRF9IRUxQXHgyMixceDIycGFyYW1zXHgyMjpceDViXHg3Ylx4MjJrZXlceDIyOlx4MjJsb2dnZWRfaW5ceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMjBceDIyXHg3ZFx4NWRceDdkLFx4N2JceDIyc2VydmljZVx4MjI6XHgyMkVDQVRDSEVSXHgyMixceDIycGFyYW1zXHgyMjpceDViXHg3Ylx4MjJrZXlceDIyOlx4MjJjbGllbnQudmVyc2lvblx4MjIsXHgyMnZhbHVlXHgyMjpceDIyMi4yMDI2MDcyNFx4MjJceDdkLFx4N2JceDIya2V5XHgyMjpceDIyY2xpZW50Lm5hbWVceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMldFQl9FTUJFRERFRF9QTEFZRVJceDIyXHg3ZFx4NWRceDdkXHg1ZCxceDIycmVzcG9uc2VJZFx4MjI6XHgyMkloTUk4cl8xck1QeWxRTVZrOHBQQ0IzQjd5LUJceDIyLFx4MjJ3ZWJSZXNwb25zZUNvbnRleHRFeHRlbnNpb25EYXRhXHgyMjpceDdiXHgyMmhhc0RlY29yYXRlZFx4MjI6dHJ1ZVx4N2RceDdkLFx4MjJjaGFsbGVuZ2VceDIyOlx4MjJhXHgzZDZcXHUwMDI2YTJceDNkMTBcXHUwMDI2Y1x4M2QxNzg1MTQzOTI2XFx1MDAyNmRceDNkNTZcXHUwMDI2dFx4M2QyMTYwMFxcdTAwMjZjMWFceDNkMVxcdTAwMjZjNmFceDNkMVxcdTAwMjZjNmJceDNkMVxcdTAwMjZoaFx4M2RpSkp6a1RnSV9TUmcxejhGWGxUNHlQSlRIX2FqemdPNDNmRW9rUkxHdFowXHgyMixceDIyYmdDaGFsbGVuZ2VceDIyOlx4N2JceDIyaW50ZXJwcmV0ZXJVcmxceDIyOlx4N2JceDIycHJpdmF0ZURvTm90QWNjZXNzT3JFbHNlVHJ1c3RlZFJlc291cmNlVXJsV3JhcHBlZFZhbHVlXHgyMjpceDIyXC9cL3d3dy5nb29nbGUuY29tXC9qc1wvdGhcLy1rS1pZWGJZTDF6S2RkVldpUnBLUUFzLUZGcm1YaV82VWtjbWhGbFlMb3MuanNceDIyXHg3ZCxceDIyaW50ZXJwcmV0ZXJIYXNoXHgyMjpceDIyLWtLWllYYllMMXpLZGRWV2lScEtRQXMtRkZybVhpXzZVa2NtaEZsWUxvc1x4MjIsXHgyMnByb2dyYW1ceDIyOlx4MjJscnZySUJSdHFFM1NvTzVyM2YxWlcrd0J2eGJcL0JiK0pHdE1XdVVSTmduaVFycjNrWFFNRGpZYnBXdldsMXplVzlDOVFHOTZ6bnRLYjR3ODBpOFhsVzF2QmV6UWE5akdpcHdOYTRnelR3OG11dVBJRTFvMEtpdzhXbkR0c1lUS1UwNUY1YVJxamNhZ1dyVFljc2MrSXFBVDlWRFU2YXJXbjlUbkZIc0VwN0xpWDJiMytoMjVSc25ObW9UZnArM0t6TmczYTVUUUR5SXpxcG81RzlybnA1SVNETkdzTFwvVUJGQytLczdaU05JZ1pCV01TU1ZWQ24zcUx4WVo2RHMyQlZxeURWWTFMQm9pbW5PWUx2QWZlZnhKMTRGR0NOeVlEM2RrVjduTlpRb2UrOWRlMWQ4TTlMRkR5MDRncFBcLzlpZUg3MFVmeUtrYW5Lc1ZuaXFqb3o4NVhBWWMzbHJLeWlmY1ZoNFd6WnJQSERFTWpIUlpVNW0rTlh1dkt3SnZ3S0Q3ZmlnRzk1U0NEUnIxYmY3TndBTVhNKzRzYTB5YTYydlYrXC80WmlTUjF0N0dWXC9YWWlFWnRoNXJ1RU5QR0R4dHZJVGt0Wld1VlViTFpPa2c4ZUFpUDR4OXBJN1UwMkF6cG94ZWJcL1pCeVNSN1A4MmhQYTByMkNBZklWZnJUSEU0NlZ0OE8rN2N3XC9xK0Y1ZytSM1wvNmEweWpQSTI5eU9rXC9vd3c5NWNNem8wZEk5K2dCcWV0RkZwRmlFVkVOVlQyVG9JU3RjK0pzWk4ySnNtVkxlQ0N1am9TTEREZ0tCbWRvSjlcL2k5UG93UHVWdXNxRHorNmpEUXdOdWNNUE51NGVCajBcLzBkb2hTd1JseTQwaEtpeTNMRlhUeVd4dXpUTnhnZ1lkWjFlM3lha1JqVzJMMU1sMytSdFQzcE80bTREVXNTczJUeDVuRzhoc3dDYVZNakVKRnR1MjlreFE3YytYTUNCek1WZHkxU1dRcEpHS1QraEpaUTg5a1NTZno4RnBcL08wZjZqU3JFZk9CWHdiVUJXQUN2M0RCSWhybzJacWg0RFZcL0JLTmVOU0FZZEYrNnpPNEtZaG50dmFld2F3VGNOZWY4Qm1GZlo3YTNCUlwvS0lnRVROTnpPbCsyUlJUM04wZ05VNE1XOFdDdElTZFg1emt1bXlrMkxKYldaV3NONGZURTE0cVFDVmg4TzJcLzVsK2MwRVlQY1JINkdQSGhXSUFRdDJONVdHYVUzb3FJQ2pjVWg1cmttMUpxSXIyUE0xeGRVeVFCTDV2RGVieGhUZDNhVVwvS1dndGpMdjJ5WWJLVlhsa3R3SDFLVVFjeWlJS1c5dXFXNFNudDZrUG15Yk8ybXE3UDd6bUNEdDlBQ2FaUFdBWW5jekFvaVd1QjRLZUNQZUg2QkkycytsM0x0T2RDRVRGU2NONVlpZ1ZlaXZ4TkRZaUVhYWRLNFdaVm83R1YwbEtrSUVJZTlQd3VZR09NOEZFZERCTWRUQ3dUVkVDVHFib251NlQzeWg2Sm9CcnJKV1pZU2doemVvazVWaUlNK1NUb2tiWGpoR3FtVzN4NklXU1JMbm1VbE8wV2J2MG03MWdiQlp4bHNEQXkwbFJXbXVYSFhSdmJqckMxUm9VZkdJZ2ZwSmNRRG1SenZcL2VBd1BCY0JYZjA1enVoeWJVM1BcL1N0akVMalRUZk93QXk1UjdGQngrSHI1XC9JRVwvbXlkc2Y4SWNZUktBdWtlY0NqdUxMdWlqaDVKS09RMXQrTmtVdm52UDFMZmpWRnVQNzJ3OE8xTWJMRWdNSWJ5QklWSG9cL0RJSitHK01WSFwvaUdydWhQWHBvaTBHOW53TGE0QlNkbFZXcGVKc1FXb1wvN3BZR3FpM254dDJtQ1dPbFVJcXhTWGxCTGFGNkpjaG1xVWZEN3BiaVJhWEFTckpiNERNSEdNa21kTVpnOGVPVmdJbUw3eU5uU1lYSWFWY3h1Z0xpWGhUU2dSaHZcL2I5VkZHZzV6aE1aR1wvMkFyXC9LdkU3S2RIYUpzT3ZkczdXZkNacUhpZVpiZkdpeUNDWXc5dVVnRGJDXC8zQ0prK0RcL2d3bXJlK2gycjRBTHNsdjI2VUpPZUJkM2g4b1Awd29MMUlnVnl6TEdPZmpMUUkxaUQwV0kzMFZFaHgxb0gycGRpdzBOdXdUTXBPR1BRM3YyUHRmR0JuQloxakZMSDBaYnhPdldPNUVBaU0zXC9IQmZCS0J2M1wvSGttaVhwZWJPY1wvcFBRRms1cFE1QlR3S0gzd0ErWGErakF6VVdUUjVLMVdoYkFWdFNtOWE3YVpaZmtUZ2E2K290anMxN1lpdU9ZWWtmS1NkeW1PTFBvcG9hcDF0QTFVc1IxMHlRRklKalJoVlRkQUlKR1VCSEFkOE5MVTNKT1ExVkNOUG56QWxwQk9hSUN3RDJQNjhZTVRnU0JVbUFhZjlOWTFWUnhmNFhuZDNaUkN6aytocm5FdjBkclg5YnZHbUMxZzh3dVMybTB6TUdldVBKY2xKeGplc0NSa3BHNTgxdDdTRURZSFU2QVZUNURCWUpaT3pGTTJtRHg3a2M1WitGb1ZDRHVZV0krdFdOK2RydXROeFdYK0RLZnBxWWlQNzByN0p0WVV2VDRtVTB0OXdxTm9FQjBPNHV5XC8xRENpYTVTNDArZHBhNEVNYmhzYmFSSVppZlwvZEZFN1NUd1UwcWtnamlrXC9JWVN5ZWFON1JxWVFYc1hwWlV1aW44VCtjZlJ5ZWJ4SG5kRG5oR0pkU2NGaFwvZDlQaGVBS1wvNEhZb2F3MWdTYWJUdERhUXZGcWRKaFdJck1ZXC9TcE1sbkRKcWVySVZqT21ZMUEyNFRyNW5hOEhRTTJDVlNROGlmRDJhVTdjYmVKR0ZcL1crTCtKVndacTRQNWsxdDh1R0VBbkxMcmI4dEV6dVNjcnluU29LZ0tNR3dqNUk0VUU2NUQyeEtROGszQTJ3VmNOXC9vVm5sdkd3VmFWcGI0R0dOMEo4WUo1UW5uMlMwRFczY1haQWtsalBBUklRcWdhcG9UNVpwd0FCakdiUWxNSTI3OXl1Qk40cHJjM0JhZVFaY2F4bzVQYnhZZXpFVE1Bb1VwMjRGT1JPUnRJdmNub041Z3pkb25nNXgxZVNXaGMrZVM0VU44c0FIZmpsTUE2MzZrTk1uZjNCeEdWKzJRdlRnbmQzU3crZEhyemdFYlhcL1c0S2hLMnVUbVhBUkVDVTI3RHZOTjFwQ2VGUHpHOUU3Q2l6NnRHWksyTTVndnpkZUR0QVBLWnYrMktoamtzNUlvYUthTndyS3E3SXNvYjVpSmV3c3dtTWxKRDZtR0VPeEMwQzdydnl1OHlVeFwvRUxxMmd5SDVid1wvK21BZUhQelNvTUpKbmM5K0xmZ0d5dTE2MFRtQ2FET2lqbXZ2ZHhIRkpJWUtBTUNrUEpKZ1drelYwb2FrZHdVQVhZeFV0MDJhV0tkeUZ5ZEJLVmZHNlpzVjdmNlZpQXBNb3VFUjZlZGM3M3JRM3BROVBYaU50ZmRWOURwdnAxc0ZVMWJLWW9VbDJUTDRpQVwvVExiVTI2clpvN1ZzZktQWHBqU1dCVW1zMEZaUWcyZ0hZR253bjM1V2tmeUMwVFc4Y0RPbUlsQ3dsVEhGWDE4andkdGFkMUJOUkFqOUJ5NVR2ZTgybHJLdE5XZHpidGxrQzdBT0daUTV2ZUR5UVBwMW1ObkhRN0dWSmtINmNaM0NvbWRnZFRtdkhYNlhGZGdDcmY0SnBpQzVcL2U3TXhtZmt4dmpCMjl2SXJVTDNcLzlrVUxTSVFXMFRJVitpRGRJdVYwT2JRWHBab245a2FLOFV0UThqSURCcmNHaWNZQ0g3OWNUT2lmNUNsaTRRUzFXeTRkUTN3VlYzaUpXQXlRd0dDY0F2NzFxaU5WN0ZMRWc5WUxuemg2ZGNEd3phbm0zd1JjXC9taXArRWJRQWwyVUIxeW56a3BUSG9rRUo0SkQwRFVUS1o2VjByT3d4OGpYWHVORVFid2lqM20zb2VSbUNWd2psYWpUTVhPUGpuXC9RVTVteG5ET3RxeVNcL25vUVwva3pGQnRvbkRPSUxnXC9HaXRrWTh3TnVYVlVhXC9TZWcrZmEyVCtwUzk3RXFWSHViWjF4a1Q3R1Vnbm1URXo4YitlbG9JYVwvRzdpMkV1Z21Id29EN0g3cXg1Z2d3S1ptOWtSWVVuZjEzUXk3NjZxN0p4RGU3cEN1N1I0QVY2SlFDMmFNTkF4aUFwV2hZTTdyWXBEUVp3Z3JONndCXC9iTjl6YlhZWlhBcnpQdFhHaGFGb1RYMitcL0NOQlcwSlVRVlg5cm9JYkVYSlF3eFozWXhJQzRvWm1wVEF1SmFzMFRVV2FOZmxzMWF5YVBJajBDMzhXQkRXajVBcGhiM0FuZmR5SnpcL0dzRWpuUmpyc0h4bGJBMVNSU29SQmpoYlRPQVBXeDBtRisycURiS1Z6a3dobHpwdWc0QllWV25EUlZkcVAxQkpTRzZCWExhXC9kdFRwQmxzNXF3eHpmMHVqb0ozNGIxb05qc1wvK2doRlRIQnRqM0FHUXhGRXFPM2lVOVZsbTlPczBFUGpqZUZxQzF3cGU5RFpicHBNYXp1OUliMUVCNjdSTytLVGp4Wnl1TE5BblhPemJ3VDJ5dmlITkZXanFYUlZuSmcwUnFzNmF2OVNoekNFeGtNN2piTU9QT0YwTjhPTmJPWHlXa2xMNmhcLzJpcUlRNDh6SUhzaUFVeUJqa0FreFlhVWNiQkdrbW10SHRBMFEwanFSS2kxWjVVME5hSVdFblRpVjEwYWU4eDAycTh5ejI4UUtjTEFHZndORU5lVU1FdXo4RFNxWnFoSnY5OHZtRndrZGlxN2ZWUDQ3ZDFBazYrajVEbEFEVHZZcmI4cGJlZFR1d3BwOWlVS1JLdGZGNXpCbk9oSEFzUlR2dEJwWm5nZ3hyVEMyOXR4c3lPY2ZyYitGREQzZXBOQUYxRzRheE9kYmkxYlNucVdsSFRHbVZSdndKbnhaK1h5KzJZQ1FLWUF6Q29kZXZhR3ZZR3RcL043ZkJTdWsxSWFKWjZ1c0Q5M2RcL29OUTNRbXU1eUUySXdmaG1NRUU4MUZhVUJDeE1lTWdHVGRBZEFFeVpnZkdSUkR2NDNtaGlpWENCZm1ocyt1bEVoXC9MZkNKUllMQTVZeDQwandtM3J3a0pMQjE3NHpyV1B2R3lGRkdTUzNcL21YK1lsVjN5d0JQelFBKzhHY1BTa0VVRFRsSU5tbFMwK0FkdDNqb2JmQ0ZiTnJTTDN5WnpHV0tPRFwvVlgydmxcL0VWcDdkNDNrZlVDVVhXZktEaXRhSjBVSzRDM2VGb1JaK3FDSXNDeUdjcEo0MzBJeTN2djk1VkVFajNrOUlFN09aZEN6cjJzaVhcL0QybjBSd1FWSjlaM2I2K2FiUjNCQjRUaFwvVUxwVkRvWEtyT241Nzc1YmNrbjNzaEs4XC90eWx6VEF6TXVmYnc0dkRVYW9Xb0I4eGdxWndTUE1XVG9mTmE1RzhlSVJJWnBHMUs3alNUZnkrXC92WWFDcVlxOHJDUHRoN1VVeng0MkVZRXZnK2J6N2RvVkQ0XC9PZDhlSWJWMXN3clwvUVNzM1JcL0ZcL1QrNk5BeENPQzkzbVwvbEJlY1BtN0JYcDBqZ2dNemFpNzFYQVZQa1Nxbm5jVmN2ems4b3FMTU96ajR0eE9ibEdManpTWjJlUWRMWm1GOEU1UFVSaGRLNVVmYUdNY29HUW9XRE96cUhKbUdkZ01XVk5DOGhoaVc4U1lhUjRUQTh1cUpWN21ZaURCM0hGVGhSNWFYVnlkM2FraTY4V2t0TWd2dmh6UHBhOTdDZ3QrSW5zWXBxYmRtUjU5VW5aTjhYK3dZSzBoT3l4dVdxV1I0d2VSY2hJYWZsbWs2SzZNXC8yYWZleXpTaisrb3RNdEZcL01pR3dQOG9WTHE0SHFoMHl5NlNvdEMwb1JJN1J6ZGVHZVlEQmFKXC9iK0pXejh6dUFyS0lNUUVaNXZwcStERlZvMGhaS2RNR1lPRDZEckJ3dmxLOTVBYTVvZHF5MG1WR2VocXB4ZnJWck91QjgxZjZQOVREZWRKVWlEYkp2b25LRXVhRmxPV2FBSWt2WjJOdE5kQzBCVjUwWEc0SyttVFJKejE3YTg0T0w5eVRTVEhJRmZBXC9FN1pGTGNWa0pDT1dZbStmS3dXcEFWVHcxTmdPRVQxb29GOURTdkxSTThmSTZMMDRjcmdyWVwvQStPK2dvVFF3TTY5a05YK3Bnbit3enBNMHJ0OGFKTE42XC80aWtvRW5mb3ZucFFwQ0s5TUVnV29XZ2pSQUVLbG9ad3hWMkZxRmk1N0t6M05oaG9EQm8weTc5dldiZUs4SnRHN3l4VTZYamZEdFRDNkN5Z0RxWjFLd0diT2lLSWhrWXl0T1hvaXdtK2V0SmVMaVFQa0RRSE5lWHNQeVlzMDhnd2dmdlNFVHBZR2dxYjVxbHgzeFFmTjI2RkV0VnBmMnVxdTlCdFN5dFpyM2NNcUJOa0dMdXRvdXJUSHpicUJ2Y0V3S0Y2dVVBRUlQNWxHRlZuc3Y1d1U2cFwvdmZ1aDFJMzdcL1wvUzJIdnVyQXcrdmhFNVZISU1zZmx2WHh3YmNnUWhsRlJhamtjdHRKZUpDY0hYVHRMQktSbXN4UUJOR1paT1pTVVd6TXBVeVBnMVUrTm1sUjEyQTYrWE81a1lOcWlIazJEVk9ubGc2SWtveFNEWFlWV0RRbWZxRnpYWjJ2T3hNWTNxVVUySUZCXC9zTHFIcklEcEpkWkFcL3JEZkUyTExWd2t0eGFSdk5xQUxJbTl5TG9Vd3U0ek5WXC9kVzBpbjRBVmJtT3lkN3F2Mm5McEJ3SDdvdDhDam1UaHF0bTZuajdlVjF5cjRwTEVoMlVRazBYQ3gzSkhhUWJjOFZQbWtTZVwvbUFSbmdISTBsaXNtZXZ0MEljWnEzKzNLRG02bnJsY3RPdHBXajNlSE52SUlzdXFyeUxBeVpcL3lBWU9jQ0FCSnhNUVhLQkltYWJUSGhVNGhrR0MxSnArSlNWRjlSSGRoeVE3NzZkSzNEdmpRRkRPbmJoKzR4YWt3V2JBTDNzS3RucDdJUEU0VlpWWUxCemdkNWxNZWR1NnprY2NpQ25VQW1JdUxxRnIzMTEyZXhETTVUQVVLMUdPUUE5ekNlQU8wSU9KVno3d1UyTG16RGNKR0VIYU8wRUg2R2FRSEQ3a0crdFwveUZWMFNTck9uMW5ZR1kwb3JOZENMc0VtelE2VXVFd1IzS1RyeHNCQjA3Z2t1NGw0d0tMaEhKUm12QWJaQVNxUTRXMTludkM0S0hHMkFSUDlpS2F5TXlYcVwvdmtsWkQyMll6ZnRSXC9EdHYwekRBUmhRTStiazRGNzNlMXZIUWdmblBXOFBVUlhnNnRRcFpIZ3Qxb0RMWVpabGJFV09pR3pWSjkzQlJPbkR5NThWOE5pVWVVK2FEQmUxRFZ3T1U4QVEwdjcxNUpHM0dTc0Z4VDc2a1REcmxtemxmRk1NVFg0aUFudEUweVRlMU5JXC9vUGJINzU5MUdQblwvVkkzVjlSWEF1XC9JRTQxSDRCTTVvN0dROFwvOWFySEVobGdhbWRWaktQQ1ZnOWxGNURCTkNvM0dGTXJQd1NGMGsyaDY5bThaVnJHUTZabWlOUzZpamV4WjArT0UyS1wvV1Zsc29SUVIyK2tDTVo0YkZSTXFEVXVwNGx2b1wvXC9MVUswcHk1TnZ3MnFJRFhjNWY4bTVXVCtWNnJoMSs4c0s2NjdvWFlyU04rbjRWeVhMT2NFbE1KaTJrQ1c1STlCWlNGYlQyVHA2NXVjbzg2bWo1Y3Y2cnM5Umt6ZElrVktEWUc1bTJBRllNSkx6cjNaVTFka25VSGRRTDk2UlY0R1FGMk1oTzZNM04rSkxFcGtmRWtwSVhYQnJTbzI2dExEZDJFMHdXK0R5UzhYWnRsUFQ0WnlobUpkcGM1Mm9BVGhZNDN2NFpRNEpwSW5hWk1kRmdoWm5VUXQ2WDJsQmlZYjlleFhYUnRrMWN1dWI4bk9oRjdqd0tEZWNcL2ZWN0szSjc4TjI2cGRtaDJiUVRVeXJZMEhnUUQyUU9CRzk4TytwRlNWbmtYNGR6dHM2XC9vOHA4ZWRvWlFPZkNHd3htM1wvdGpNdjBFbmpaXC9hTlJXeUJrVWFwRUVpb2FkdEE1TnpuT0J5MWZwS1wvVTJ3TW5Rc2ZuTkhCWktVMHZQWFBJUWpVamQ2XC91bkkxVVFXRHloVGE5bm5MWnVNNEVqR0J4YkFXYzhYZjh2SnpRXC9uV1hZZ2lZUlBpR015WTBSNW1PNEdORjY2VUFQVjJRSTRlQjNXZ3RqOWlWdjBqcnRHdXlMWE1KOUt0ZFV2SkhuV1lSbll5VTIyWm5KU3pcL1B6ZSs2QWlCSE5aRzdDQ3FJeTF0OTVtckhFa3lNcXM1RURJTENxTXNyeVg1aEZEM2FtUVY3N2pSRHpvU243VWVlUjVRRVFqeXFvN1gxcHo2S3RCZ0xNVVY5c3JYMUdwK1hNNmIwN2c5Y1wvcEZtQjNaSEdUdjdpUnl1cTk0ZzNQXC9NZDkxT3dCRmNiYWhJV1ZVbURHMVdFVURaUW1QM1JCcmZ5aXMySWJcLzJjaUJHUlpiZEJ1ZjdBcUdZZlpKNVYwanM1SGlTVDRJUm9HNGFhRnA3a2V6amJcL3Fsc2lOejUyOXphS0U0V0MxcFlDcUpiQ3ZabEFrOEdKWVlqSG42K1o0ZEhJM1NaZkV3aDZRbkhleXRcLzJWQUUzS3dHM1wvY1p2bWZrXC9RYnl2eDB0TVdaYWI3YVdFWTJoU2hKUzJrclZRZ0VYN3ZXa1ViZEtQZm5seXNpS1Zpd2MxcEtBMVhSQmpxNHdzMXhxSExrV0FhbVRHK2JBaVFLc2tMa2MwQVZKeHJ3c2xndDVmbEg2V3g3blVyQjBcLzBwNlFcL2lqaDEyZWRtanBHVGZRd3crbFZQMFwvaUNmTG9INnVjeFF5d3dDQVhUZFwvMll6cVNBUUZhMXl5bWphTmw3N2xcL1VLREh4Q2JhaTl0UjFrSzdwTTFmVkxRN0R4OTlzRzhiMHNMNkFGcGo0eEVUUElBK1o0K1ZjODUzMGhJVmVsNDZlanVlV2VkN1hpK3czZlJGc3VBalZDdlJGQzBOeG0zNUU3XC9PWitscHgrMjA4NzY5ZW9vK1dBOG1RMjZnRkwwbXpBVG5lNUdYN20rbFdcL2xcL3E2QTQ4TFg4RTVCbHBLMnBpZlJDWnR2RE9xSlJLbEVRNFZhc29pMEd4UXdnRHBVbmJha3k3ckRqYU1ZcHplb043VFBkaXJreVZsRjlYanhTWVNZMnM2VzNIRmhYVG1kVVZuemQyRGVXaWN2UktcL2RVNzZPU0NjOTB6cVE2c3NZNDYxYzV1TmtDWnpWY0hJVVA4VzFrOXdjbGdBcUhvUVJVRU5Wckc2aHAwdEtCbWlcL2lKaHdGWllxSDFLeXFjdXlyTDZVSjZnNlcxM2FVU2EwWEI2ak5nOU8rNStnVnRpXC9aQ0xNTWJwampvRWJBNjhxb2JPYUw4YlVyNTh1SmZXXC9UMWRSN2FYNndETUVjRTlaRjFkR2lOWjZBYzIxT0xDZVRrcXN2OTF6ZTlUdWFLSWZpUjZvdjRKazE2SXU4SnRZQytVRng2OWthMW8xNGQ1VE81REl1THNMUXlCUTJcLys2UmpkWGt4Rzlid3ZDRm1NQ2pHdG9mZmc2R0ZXMlVNalwvcWEzT3FiZE9HSCtKVEFpY21MUkpIckFYMytDemxRZkFkMGlWRmNqeWVWc2lENWxKMmM1QWdSRzByZzd5MTZKU0xEYTVJTXorREZSRHlJOFJacTVIeUp6RG1tVUtvUmFVRllSUXVWZU1IVm1pRmZzZUxiSkhxY3F3aXE4UUJTc1VNYkZCVUJnWG5pUklKT1Q5RVRQbVY4bDBLbDl3TzFqZzRyd0hKRW02K1RUWU95TmZmaFNtMXUrN1N0S3NidDI0KzQ3MGNnOE4yZUVWWGpvZndUUWRzZFdoRXNCcCtRVUt2VXZnNkVoM3dsXC9VSE1EYXFTMzZuOE0ycEVmM2hDTEo2SzROc1h3NmZjXC9HNHFENm1QV01UMmxGRlZDb3NpRUpJNW5FcWhBOFA4K1lLZUx4Wm45RVJneGJvbTNWUE1ndUd2NTVIVDdaZlhqZUxLWGRJd0J1NmFyUW13Y1NIY0NndVVOZWFudHA4OHRXam9weE5TWUZEdFd1dU5PdUdNRVc4Y1B3ZGhWMUVaZXlQWkx1Z2h4N1RKNVdpV1RqVnNSdUJWNWlaTVRGaXpDenZlVGxOaWZnMHJpc2pNeDFIY2dmcForQjM1Y3ZTWnIrUzdZYVBuS0orcTMrMzViakVKbGE0UTZGMlhsbWwzaG51ZzJwUEJoK21ySFFuQlVcL2ZCTDdIZWNuT1RTcjBZU0xFZ29EblRYRmNaNm1rZFZVMlBQWkthaStka0VcLytSSHozdDcyS0pWSDNPbGNSMWNsdm80UU1qTWhwY3pVeWRVSCtWRlVEcTBLQ1BRVmIyUjVnMGZVRWpOYVIyN21RMGVoYzI4MVh4Y3FqNTJtNmhFcG1xekJScEIyMnk0K21Nb2lLY3o0ODQra3ltcWt1VlNiWEV1ZE9rUUE5UTdQam1sd0JwXC9OblRlNExZdjRoTTNnb1wvc2JOV0NVUW5MQVdkMW93RXFPcXVZbEhMVUdzNFpPUVVmb0wwVjlSRjBPcG5JUnVQcHZkVUF1dlZaVjNuTTVaNE9STG9RT3VqTVFoUjI0ZllQVzMwR3h5b0pyd3djbDFKUmhGOFArSGRPekJoWlNjWWluMXdJdnM5RTFseEk4WUc2MUkxS2NLVitPUlZMRFdnQ085anVMZDMyXC85bmpQWWU3SW4rc3dOY1A0TFwvWEo1b3BPbzhMUU44MW5tUnVjRnBpXC9hMUFNTlhaaDJ3NndZWHF6TzlXQUMwM0l6TGdHd1I1aklVeHdcL2ZVRUJBUm13d0tjMjlSVEwrRjgwUVE3MFowbWF0RngyT0N3VzdLYUpmR01YcTdkTkM3VHZnZUV3QVZNM1NzODJrS2ViZTFMZUt3SVczaHV5dVo2dGNBOG9tY1REcWpocTl2blhMMTZ4dmdvd2x4a0lcL3c1MHdMU2l0RzBWb0dUTVFwNDBkcmF1QUp0b1lhd3VacWV0OUZvWTJNTURCaDNMTVh5WERcL2I3SEpKV0RGUTd0clhwZ1lZNXgxbmk0aTZaNDBXRVFWRjdNYk9cL01PTmRoM0xERHV3VUpBRlRVRkdoYUVXQVAwWnRrYjBmQ1cxTGpZN0MzSDU2MlYyK1VXRFlNVExBcFNkZ1hxZnBKYmdqRjZiN1ZHSzUzXC91UjV2Y09UQ01NeGtibVdSVm9reDRzZGtJcmNqeFZaaENaTmhXVkU5Y24zZGkwUlhiTVRpR25cL3VINnpkUkhNekRsY1BzdGU3Wm9nK2JHeldnK094a24xQk0reXFwTCtVanNVZk9qQ3pvMkN3SU5QWTViXC91STA3Q1wvXC80TFkrQkFGTnFpa1hsWHplTzY2Y1dDZlBQU2dCcWJyM3d3cGR3VWg4K2dPUWtRa0VBWHVJbTRaZ2lqbFgrb0NDQXRYYmR0dXloK1E5bTlmQnRoWEJEUjFJYjJKTmdxMldLbjFINGVFWW1JaVhNNHVRS3BPMDZ3TzVMUThuUWtmYmp1SnZESFhjcXlsZVIzMHRjYm9MTHh1cGErVVwveXNqaUw1bXUycWNjRit6RW5NOEYrUGFseGJJRUdEb1o4dHJZQm5XdUowV1RqRXhxUGl1anF4WXhLVnVRZVpMRHR4ZFBrUlg1UDB6ZzFHWmo5SmR2SHprT0VSaGh6NW1uNGhFb1hvaEJMY1JHOTBcL1RsbGI3MDFXWVpvTzVpS05hXC81UFF3ZmVXeWFLMVFzUWh3MWtNSkx6VitpSjdCTW9JN09YVjRTc28raVVoMU5Sajd5K3JxS0xuVDFwYUtCaFhlY1dWOUMxdDZUeXB3OWNFYXJoYUlpM3hjZ0xCRXRleTJcLzZpbzhKRjRJeXJ3VXFqOUhjT29yWnNZSEZiXC9tNXBCemRpTk0rb1wvZEV5dEF2WStXK1RmR3h3OWxaWnlTVDArS3lhMlM4eGJpUUxOcGJ6b3h0SW5YU2ZITEVtOTBcL0pxUGNJM0k2dVFrVzhEWXFqZXpcL0JORFFTZ1RyN0xtRHV6Y0N4U3ZadFB3TXRrUnBDMGFMblZ3Y0NZc3dcL0tkXC9QVlU1ajAwYmNhQVVVSXhDWkZyUHdxOStOYlA3UG9RR3AwbTJTUlhrV2JCRVdtUFY5TWN2OFg2RUNKU3NCQmt1U2dcL1huT0FQZnJxTDFpUHNwaWlQR0JwU1pub01DTDB3djNwV2ExRlwvZ3ZadWdWZkJEUUo4bzREMk51alNxZnhTb3FyVzJhMzZzcENES2xsTWRqcXNFazlOd2FCdjJDc1hIN2c4Y1BtT3pkVnpGaytMbXFMZmJBY3lmQlVYZUVFUEY1SGNaMithbnBMU3libWtTSWx3Y3UyVDNKUSthamoxZjRiaWVuM1FRZld5VXdkQ3dONEg5UjlqVUdJSEtTRjhOeTVPQ25qRjBlc2kwQjlXWFpaenhvQ29TUGFGUDRKd241QVhtWVNJVThYNmVJRVwveDVTbUVJYXZOdzdKTEJvQTdFWlBTVTE2dmxpbEV3QU1ZRXNKejFHb2NudGlmcEQ0RnRrVThjUmdham1VaVBjR3YweVFPdFI4VFwvbkd2ZktDTms2QzFvQ3FEdlVvK3dXanZoVFp5R3FQZW5RRDI1akZibUtNbTc4QUNNT253cUV3ZklKZUxhUXVVMDFVcWEwWkRYazdaRXN3azBteEpDRnRDOWlURTd1c2dvUmRLb3B5S010enJlNFN1a3pHMVpxTFg3bVhKbnZQc3pndk9wTDNoZ1BhQzYzREFFc01zQkR6cjdZUVRKdU9IV29OOW94ZmV3WThEOWVqc0RrNEV6T205N2JGTXZBZGR2VWZNbXZvaERQV2JuUmt0UDZranY2b2ZTSVwvVDJQak5FeGdBa2t6bmwxM3lSRGtZUW1wU0ZkMVlkdmtGeGNiT3RHTmwxZFZWbDBMQm1jeDVIMFd2ZUZ0WHJ3NTNuZTBCazQwem12SXlTRVZmdU80aGR3WUVNNGZxYzBpdWZ4S2RtUjF3ejd5eUdHUXJyRGs3XC9UVUV3NndBMk0zYmRmTXE2eGtJWWxEaDZCWFZMc1hHeTAya2JpQlh0dzE5QTkzQ2FlbSs1UXg3cGt6TU1lQjhEZ0NocUMzZEZ5WVAwSEFvMWlvWkNpa1wvRHdvOFdVb2IrNUR3bFlyODBlNDdrYkhqUFwvTmY5aHRnZm5cL1hFQ3B3ZkdCYVRPYmE2VEt3VzRTMUV6akhaTVptQ005UnBuc1JxazVkcjA0YzRpVzJ2WFBOQVUzYlwvSG9ZTFpZaWQ5QmdhcCtvTVIwMkt1Z3NXK2ZoMGluNGRhSnlodnZsQ0dLRldyNlFLWmtEcnFwTkxvVlVUdURqb2Nxa0FQTmI5RnZKUDUzQ2dpczRXVVhTSzJqeERJaWlVdTh4OGNyNHlsWnlqa2RTbVh5akZDWVd0S0J4bnArTEFTVHFWXC9iY1NZTGxlUG1FR1Z4dlZcL3JzTk5BSm5YY0JxQld5RmJMMjE1UHIxNVVFRWx2SStDdjdEb2NZczQzU2srYndvKytPWm90MlBLTHBOSDUyWHY1THluV2pwXC9OYmNSRU9iRkVDcTA2U0tqTUg1YkZvZ0hSb3dZXC9cL0czMHhmMzE0bDN2dnNSNGRpY3h4dlwvYkNOdHd6QVZUZ1RWbkJoVHZlZVp6cmppdzVXVHhtQnh3alZpU0pESE9QaTlaME1sSEdWdnhOQnlqRWt3cXlVVmtwWTRvZTI3eEpMOXMwelVzMldUZnVUejhcLzFHQ3dsanhidXFzVzNRV2tDY0VrTHRcL2FQM091VHZQVVwvVE4rWXJ2XC9lUFpTUFdqRnNJQ2hzUm5BZm1Db1BKSlozbG9cL0llRk5uU3Y5UjhSTkE0T3h1S01xM2wxemd0NjBpbW02K3BQNVVaeUJ4aU42dlwvdXRtRHgrbXJRK1ZqTnlrUXNialN0Nk9tSWJQaXVOREFaZnJuUGlNMFFVS0VWVXAzQkFyUTZnUlR5OThzZnV2WXNPb1JcLzhDbkZaMkw0WGZuVUNCYjVzQ2dhYndYTFVHYkRpTlFKejdQbXgzRUtZTHVDT1NhbWo5ZnpSc1N1SnZxTFdzXC92NFB4dzUrdGxJczdFUStyZW05a0JaRFZrUW5kakFaRDdOcXZMbG1DSjFWcnlZMXF5ZFwvaTNcL212MlpWR2xuQjFiZlRkRGszZ0JIUVJ3TytvSmE2Q1BheFVcL21KUFdmclB5NkpoYnR4Z2toZko3eTVtSkJURGZ6V0FISnBEXC9DY3FXcWpRNnVvUkR3OGU1S0lySkpnMGY5bERXRmlcL00wdWJCXC9qcFlVNmN0OTRoTjZjZmZRWVN1MTlzV1puZ0ZkU2gxN1I1WkxPQ2plRW1PQ1hXTks5N3UwWVFxMnJwUEhycEpsaUtJcXh6enQ5dUdtcUtlTTJaeG5vaytGXC9ia0JXUGZZR1JIXC9Hb3FzMTBBQTJKdXdvcXpYNWNiRjJObElpYzNWQ2FvVDZPK2Q4UElmODV5c0I2OTJ6WVFHdVVjcTdtVUJ1Umd1MkJiZXpqUlB0QVpjUk12NGg1RmZRR01QV1I2YUFRMFlNaG5VZ0RjanFsVytXeUVNeloyc3AxUnNwK1JBaW1INHVQeFRSeTJCXC8rWVRCd0xGdEdoeWpKdEJTNkhHY2N6TVo5cXc3aWlPditsbWZNczcrZUtpamR6N0JBb2JDV2tsZmZEZHBTSFVQMlFhSzkwOEVJXC94UHJiY0ZmYzBVRitpOWVQeGRLU2ZWS3BQYWdmbXQxK0k5bG4rYWNRXC9jaUpzVzJmY3pYckdza1ZCM2FCU2QzS2NEMzhyODR5OXRsZVVaVWg4c2JkYWtSaHBuYnJHWGVqcERYc2lNcVA1SkQ0cTg5b0NnZ0JvVWFta2R4YlwveEs1VmFJM0NMMzVTZWZVTHZxTkhFaUZTd3h2MWJGOTN3MlRSTHdib3VjMlkxNVVxdXFSOE9RWStRYUpuQmlpaWVJYVg5QnJ0cDRYZDJtY05ZME5ITDl3NUlzM2VhMlUrTk5XUWVhZWh0a0d5OE0xeThLeFV6RWVqdWtUeEo1ck5FU3I3R2pBWUFjRnp5M3dWRDd6aDFNYjdUdk84R2dDWHVPd2djaVVsNW5acVBxTGprMDFRNUVxMWtKYUozT1wvWGtSdVBlZ0N2TGt0cFluVDBlejUwdnp0QlhFSWUrdmtaR3QzcEhtWjQxMGx2cDFMMG5QVmhRZDN3b0pkdXlVN1lzMGE4TkN0RWlnUWhIUERZWG13RW83S1ZqOG1kQm9qQTlFY2pRdHduZk9nRGRlQWZkUUk1YmJJY3d3bGhUclhTb2MwczZ0VEVFVHBwNEdtSFRuTHg2U2NNNjg1ZnN1RE50QzhwUERUbE5tbzIzWHRBUjNrMWRSXC9ROVBcLzV5WlNSTER3XC9Kd3ViUEQ0M1NMejZGMDZpbHBPUlY2N1YwMDk5YW9kNFNDXC9qZ3UzcmlnVk5BVTA5aVUxc1p3YU12b2NmK3FlTGlpM2tpdTloMGFRd1VQWXJvanlnaXNxUnpPbXY0SlV1bmxqMXBtYklFSE5jSVZpckNyT3cyYkdYM3FsVkRhRmNiWVdRXC9PeGJQRHp3SStHdFhSVVcwQm9kZHM3eGc3QllqZlhSVG1yRWE4R1NVS1M5cnBlcllkcGJraHc4XC9Qa0E1SHRLOW9ZSHcreTRvK2d3djhiRGdBM3JKTTZ4NG93MWxNTXBrZXFlR3VhcFdpaXd6d3VQNitMc0pUTzVTOWhXTWx1STV2UFRMc0lCeW5FbncyMUpcL29vVW5QQnZTajFvdnEya1wvZVJEKzg1VjBnSk9uUnpJQWpXK2Z3Y21iVTBzVWF5bEJaUjgzQmhUK2NRWU5Ib1wvQXFFTkZibG5MdnE0Y0ZNWXZ2RmxtN2hZVFFTVTl2QThtSEN6Z0EySzBONmJ3QUY0M29HNFdJMDZ6VEJDYWR5bkdTQ3UxdXQxR25WdmNsQ04ySStzYThvdGlBaThxbEUzMVBQTjVwQnR6T2lnYXByZDNIaGFqb1FYV0tKV20wa3lpUkRYekkxVGdzNWN0N2tKUzNyZXc0S0ZhSDhkd3Q2b05mQktaTUxWcGJBY1ltbVJiZVFYbTFPcngxcVNPQzBnaU51T1wvaHEzekxCWHBCMUh6VGxjWSt4emE5SjdBYmM3cENMMUtcL1hta01ZXC8zNXpHMEhhK3FwT1MwMFBKMnUyQWxBV1NNeEQxYW1FdlFxMHJEa09GOWxZcllEUFdzMkdGU2VtMG82UmRRRUZ3STR0bnB0R0F1RWgxUFF6dUdtTGw1QVJIcXJRVUJJK3V5V1RXUERLVjY1S1wvSStRUGY0SVBaTTV6cTZkVGQxbTBUbDhpUHZVT2NWcDBtdGJneFZnZWJ5ZEJWZ0tRZjFYVVUxazdtV04xOGlBcGFCT3ZzSjlaeEZxNDQ3ZE9TbWowc3g2QnE4WUU2eTViaXBwRzJFZ2F2b1llekMweENWakx1c1NtdTRrcGU0WEVHQ3dFTVhvNThxS004YnhsRk02VXV3NnE0TGV3Y052K3hnOUdQZmxUaFBVYUxXemlRUnhCM2ZKanBVd21kOWpSdVlnSkxPVXhTYXRrTm5ybGhVVlRVeFwvbHpKclwvaUxRT21VU1wvUDBJdmU3S2hybGhreUpYUWhSZ3FyQThhcXV5eUNRY2owQ1JkelNRZUZvb0JEUU1YK01qeUVKNW11MFhLdFVxT28xTkNEZVd1SFFmTDdKVG13TVZoVWgzb2tFRVVrb1N1ekJJaGRMRExUZCtcL3BnYjJMSDk1M1E2SXV1aTFSamNEOXpwZHdSREZ4enFrYTJ0bE9wdVlrcW9rbEhoenJNdUw2QTRNMmcxNFpVc0VmZ1pESXBxZHFIcnloVFQxN0NUcTEzSVJubDhuM2hiZ3Uya0xnTDd2YzkrdnN0cnpNdWVab0puNWpuR1FKT1hiSVZOdUd1UHZiZlBna1FcL3pDWjcyOTc3Y1hOYVwvbUNHMU5kQk5tRSs0Z0FXblpaTTlPeE5uK1d6RGlYbVpVNGkrNVwvcEM1TmU0WGF2YlRcLzZaXC9WdTVEeHhBK1lNM3BiczFteUJ5eEVUcGJvRXExNGJ3K2pRQ0JrWVJOWHJsaThxdGpzXC9rN2w5Z3JOT3B5ZHQzbWg5S1pYMFVBSGZ2K0ZQMEpmc0pXaUhsTWlEbEVvOUNXYXFEcEV0U2NaNlpUcXVuVkJLRjBMdTBHaHNEeHRpTHdJaktZOWpKdndSNmdzZ2pKM2pNMUIwWUpIdkFvOHloSWFmSEN1cUxzZHF4U3dJb2xHazljSFRrbXhFZVwvZFJTR09pMFF5Ujc2b1hHcHFsclRXMStRbEJrZVV2M1BUZXd5WHFXSW91UklkZjR1M3YxYXVcL0xYOFRkak1CYmZscFwvZnRieTA2NTV3WGc4dFN3MFpXMGJRMWRqRXJTYjA4ek1VcSt6RTN4aUcyXC8wY3ZOY3p2cUhleE1NM0REeFg2YkJQR2owaXRocnhQVVc4YXBaazlmeDgxZkZwTjgxSWNoSHRWRUJcL1A3QXZ3Z244Z040R1Y5SUVrRkVNNFFIOXdcL0tXdkVkRlZURlFvZUt3NmxKdGI1K1IwZ2tCZTNobWtDT1wvMmlSeGIyNUVEYnhYcjJMYUhId000dVlxbCswU015UEpsWmNoOGg1b1lRWjJBanlBVVI3dE5Zd2UzcFRKR3hVRXl4TmNQbWtUNzVVTXBydlh6UUVVcFVJb1B4R2FkeGJweFc3Q1U5RndCeVRrWGxhN1lTMmpjaUFyWWRBUU9TcUVqZEpKVnY0OFcxY0ZxZ2hWUmxIbEJTRFcrSTE4ZFhyRU51bVFQRGZSMnZiZEhcL3JtQjd4eXF5bTVJcXV6emFUWjFGNjhEbzExVjZZUXNQMlVXQURmSEJORzRhdjNsdzFyaTB1XC8rbml6WnBhWitCZktiSEJnV1pRNXJJSWcxbGkwcWxabzltaVhNSWhINVZuZUJ6Z3RHM3puNG4rbUJqdUlFQXI4VnYzNkxQVTFIcHRQT0tVZ3RwUnBBV1lVSlwvVnlodmdBVXRYMXFyQk5kU0hZa01HbVFGUGxsaHBGQmw1MUhNK1h5VjhWT0dac0pPTERDcHNWUldwMXEzSjJMdjVCcFhvYlRGTHJQTVBDajFJTEZZSU1tTWlrYTl3MlUyXC9zWWRQY0x3MG11SDZseFVYVUhmb2lqRDBXaGY3SjVFbUdxdGNlblVcL096SlBKRDMwZWxZWDNBV3R5YUtsejlzd2l1UHZySFZ3OUtudU5vWmxmbmFXQVZLZGNCd09iRXM1SnRBa09TNVVWRTRQbTdvTVZia0pIN0I0NnJCdFwvQ1ZKajBLWkM3U0Vqa0RtXC9YMGViUXlVc2RibDR4eGZ1Y0xndFNJcjRhR3FwTGRKdHV5Y3pHNVVUazh1NTBySjIyTzA2R1lRTkgxXC82N2V5QVgybWJDUWdRd1JuSG5vSDZzRDYyZDMxNkNcL2twdVlRZGNvVnBaUXowUHl5UFJoXC92MmtvY3E5cmlqREtYTzNkTVVwVDd2eGZZNDRTVW90bXBJNzVTU1d5Y1RSeWJEK3NwbmtGUFBsV2N5SmppMURmNWdtaEVuXC9WaHZSTmJYd3c2UjVqVDNzWkxUQlwvOGlJRVd6ajQ3UXVaNktHWDJ2WTNiVlwvKzlyK1BEYnhQZWpMMWo1cXNvZUo5RHJlUVY0UStVdTIrUjIwbW1RUHlUWHF3WmpwR2JTc2l5M2cxekdiQUpkcGpTVDBaeGxZXC9tQ2RWeG5Va05DK0JMcm9YZGlhSEozbmY0dVdOVVlSN2lmUFBNVDhpZEtna2ZBYm1YZ1VoaHZ1YW41RnJ4dThiaWc5VXFxcitqMEZEbXZtMEhCbmpVTkNNWU5DeWNJeUhYc28xQmppdjE0R09tWlRiTHZBUmptditBb1Q3XC9cL1BiQkk0SGtwZjhQRG5qTXRDRzZsb0tzS0dhK1wvU1M5YTJYaDNZd0cwc3lNNjVNZFVOWWpwWUg5aVE4UXZxMWF3d010dnhlaUR4eG9maHZSMkNGcER0XC9NKzMwaUZRa1NWTG5CeDV4ZFR0ZUhuOG9wdW9cL1kxYWRSd2hybmJIK3orRDIyV0YxcndkQmQ2Rzg1S3JhN0xLR3ZFcTNrWDN1Qm1jWm5DQXJwQm9Geml2NXlKUU5OcmtpTldManhRWk10R2tUZVwvc3ZWSDBCY1d4QnA3WWpwRDM2a2c1WXExQWtPSHY1U3l3SjhZeW5mQ3Q1RDFWS0ZRTzBMVzMwU1BZWVBRdHFYZFNxamhJUjJNc3RvWjJaUlhHeFNGWlFvT2NxMDJDY0dlSFVxMjFDWEJRWVJ5SVRWNkQxc3Z3cTZ6VHRmSTAwUWc4eEJZWENHNkJSUEtieWVtSzhXNlwvcWVBTlRwOFFqQU93b1FtMXVyZHl1b25TU1pYckE4TXlzeEJWQzNQNzE4NkFualJYZmEwUUJpYUN0c0hVRWhkR25MeTczOEpibTJcL0cxQ2h3Sm9rNDVxcjFvSTd4TkJNWUZJSHlZXC9WR2cwa0lkdkV2TExVV1hPSTVJendxcytxRllBbVFDbEIzR25IbTVOUnhcLzM1cXZqWk9HT0UydmFOWFwvbldIQXE3TWRNRWdzV1R3c0tRSnBUbXNZbXhBSW43c1VjVmtZdzBuejd0N2Vyc212SmltMSs5TmxuY0JOcE5aemhkWGo0MTdVR2tSbmFyT3Z1U29iT1wvVmptb0N4U0hIZlwvRTBwZ2x5WXBQWUdQUWVadkpzUytPcGVTWEVKVVp6cCtBWVA3OVwvajRqNjRmVm9TM3RHTU4zT0NMQUc2QXJYRmNMVjU0eG9JYTdKNERGUklHWXFHeXY4VUJOTEZTbnlEcWh6SlBoa3ozdEJcLzFPUGhiNDEzT3BUNmJzWFwvSXBGTE5NeUw4U1F4SldWV3h2M1c1SUFPRlpnQUQxa01aZ25yTVFLU3J0ZndxQ2VCblRZZTk4cGNqU2h0NHhZS1BLeUZZY1hISXN1K3VkSzF4b3R2MTFIOGVYS1JpcndxUXJyR1ZVeXAwZWp2clkzRlZBbkZGUDlGNHZ2bE56REVyMHh6aUVrY09uS2NsSVN1bEo2S2dBYVhCN0FnNDFHK0RTSWJOOTF5OXRhbUU3TSs2eTh5amdtWXhUWXc0ajNBUDcwWUptRURvb2xiOFdxOXAzTWVZZnk2dTNvdHhXazRNXC9TbkdhWW1jNnBLWWNTbjRhMTNMVVVuY2l4XC9PSXZRQ1JLcldpZTlnMElzWEMxYnJWSTdVQUxvZEJYbkVvdGNCbW5XUjYyenFjVWxEeWVydlp3d3JLck9DYzZDYzJWN2loWE42SWN3UVpNU0hUTDZuaW1CdFZBUXdlaFRGYmxsVzVkZHozaThLeFFIOWNISFVKMkMxejZaQ3drdXI1Z1BLbzhpTGwzSjBxa3hkUDFpbHg3ZnJWeVAxSGs0MW1JK24rMHNMQjBXd0lJQ0FMMmViakwzYk1CRVBidzZHR1NhQW9uSVJjWVFcL1wvSlJKQWpWbDFVQzhzdlo2YXNmNm5ISkZMM0FpMm1PcWk3XC82dEVoNzEwc0xhXC9cL1dCb2RsRDR6bFVjTStydVNXRDByS1p2OG1uK1BIWEt1K1lNNkJ4Umd4aWY3aWlZRzJlYWZFY3N6XC90dTJEUjVsT2FMY1wvZFdUQkdva3d3aEV2MU9rNnhHa0s3Wmk2TlVoa3NVZ1BsXC9zeWtZVlhoUGJzZWpcL1hpdUZHSjRlYlQ4XC9MVXhqbkdKNmxyU3RwUG1SZEU1a1U3bUlvaVlsRmprYWRCblwvZkpoclJOc0pLY0hXYUdjZmlBSVR2Wm0rR3pNcXFIdllJYUl6U3Y2SjE0VmRcL2pkRDZsY1lhMFhlVDhHZUJSeldIQk9YaUZVWGowRVwvZmJ6NG9VR3orN05WUjZNVE9MVU9kakk5Sit1d1Z6SkFTYWpBMVNKN0pSbTEyMXFnaFVVYWtCMUoxc0NtSFlJT01HRnQrS1FMejdWa2VlY2FpcERZQmQ3c2dTNGs2eFhYcTBJRTh3N2F0dFhpSkFEaG9zdDFObXBWZWF1NGlYcWYrdGc5TzI2RkdONVgxNEc0TndWcXJyOGZ2eGNKQ0VpQVZYWjhqUUFBdTF0TStiQ1RHOUlPbDhBbHM5WnVtMVA5UnVSQXFlT0p1SXlwSmc0dWRIb2RpU2pmTDMyZGpCM1VxcjJOUks1VlliRFwvSHdcL0toTXJITmY1OVJWbXo2RUJMcHg2WVZzUFJXYTl6UVRCcFdueFNKWmh4Zmg5endOcjY3bkc5MEswMGJ3OVR1K00xR0xGK2xnc2o5OUdtWFFYMVBqVXFqbXN2UEZGZUZRaG9sNVFMRG41YklGa3VcLzNBWklxR0FvQzZyWmxyNzNNTHRIdlBnbGR2ZzhkaktnTDVpU2t5VGVJTUZwUUFzTlVBRHBPTWljd1NJMHJwaHVmVHJuZ0xjYXlob0lRZ1BLeE1jeFpBTjdLNzMzSlY4RDZETW5rdEI5emlcL1FRNU1lazVyamVVRG0ydE5yMHR2ek96cDlxaEVTN0t0S1BwV0Zja0NCeXpDVDZUT040UFB5dkJTTVJnRGVWVUZvUEdZVkhqWUxwMTdXYzRXY2l2bVRuTXdyaWZmXC9wVE00QjdNY1hVcFZuTCtmUVhGMjBOV3ZKeUNDUllEbFJnZCtYQ3lVcWpSbHBaVGdyWUp2OUJudDgza01ndnFhaWErRzRZRlwvMGNVZjRoV2dlUGdGUEkwMEx1YXZ2MGVqNGtERlhCSVczRXZyN1AwWURlU3FnV1QxT0lES1licU9HVlpUMlZRV1RWNHF4cnVBWkZDVmJNV2ZcLzFId28zc1A3YldjUHQ1YkVBSEJTY2FRWjl5K2dhZGhnQkUreFdJNHl1NnFIQVBwZmpaQlMyS2t6NFp4WVpZRE1mdCtJVWlTc1RlSU1DVG82ZEhHajlmeldRZkZvR2FpdFd4K1VORzVXaGUyVTNlanIxejZZbnVuXC9ZdHk1Znd5VENXWXYrOXZaR1RZMittQ2pyVHFyWHNcLzRUVFRkd0kwb3FueEtLNWlCNU5vMjJ4dktYKytBRkpjcGdrWVV4aTI5XC9NdlliS0J5WlwvYlVDekNtUnhuR1J4T1ZcL2RqZnVNMmNtbno0VlwvR2FOS05rSk5PWDM0TGtDakVTTW5uSHdSd0QxSDVMc2ptXC9RNU9VQlg3T016alJRUXNkWU16Z0o4UmNrTWJhczJwazNOXC94RFRYXC9uVU9BRENkSTI2a3N1SEtTTFgyaDhYQU9LREZGbzhkbWRDUSszQnFucFExUTIwQ3pQZ1ZxUmhlZWQwbEFnRlNqeHNwR0M2SUpXREhNVEIwQU9xV1wvdnd4cFRrengwSDY3VEQxc1hxQnpkWXZxM0FlRHl0ZnpPXC9EdmZkTTdSU0tGQmRYVGVMV1hYWk9uQXh6ZFg1eVVWckM1eXhxdFBSd3oycGJCVjBSbTNIRDJ2VHVYMDhtaHdDNDk2dUhJZUhIZDVwYXdKSk9oSnVlM0s0MTk5KzBHeEh3UVFlN3I5b0czVms3ZXAzY0NSa2ZaRWt4ODlyY2NMZmR4WlZNSVVFZUZDN0ErMlptZUVQVnZnbmdzM3lcLzB0NXUzTmNJOTNvRlprZ0puYzJZSktFM3R4ZlwvZGZmR2tGQXNheWpGcGxibnp5akVnUXdMZDJHS1p3c3pIXC90aW96S2tyRVJIY2tuNDZvdzg0cUdTQUUrcUNHQUxKSkZ4K0l5dERMb3JuWEtzXC9ac3ZHNmVOWW90emFTVjhBK09kXC9HOVU1T2RoN0MrWEpHSTZTU2J6Z2hqYUdST3VHc25pWE1xXC83NjZnQ05CdWU1V3BMUDI0dGZ2ZDBucjJmQThraFF2T21XaFBiN3EwaXl2bDZGVHN6eXZXbkNwaUJnek51MlI4dDRcL1JzYllrd1NhMWhVTFdFK3NOVldqXC8ydmFHeXpiRmE4eFpWSFhnZDdYRzYxTWtFYjFmanFoVEFldTFwbUl1XC8rc2NYTVlTNGtOXC9wTTk1NitjcTB0Vk5yMkVtVFc3OEo1MEZMNHdjalgwa1NWdlV4VktcLytyQTlHcGs2aGwzeHNGaGJXbnp6aVVwNnBOdGk1STN1OUVRUDFiZXFkRnprZVN5WUl3N3NBamtQcGlzTnJpSFRwanVmQzdocGN3QVZmQUF5cW5rUUU3ZkJPOGxCcG4zdXgwS0x4TEFlNHIwa0Z2TWpnMVFNUmNCQmczK3FCbTJvNXQ4WEJvRjhiS1hYbkVYZGRFdWRLenlEaGU2VGl6elBqMHJFQUg3YXhUUWkrV1RNMVdPUWdxUUx3dkYxc2VrZXUwREQ2dDhVaFgybUh2WGIxaXJLMUN0NW1rNVpTbEdPMUx3aVBoNXROdnFxazlFdkNtSHdzWFBnaUNJN05JcTRHV1JZZHFwNCs3TTQ1ZVQzNmRKajl0NlV6TStGTTg3ZjVXV2tRbmVXYjlKWHZJajlDeDh2RXp4N0dcLzk5NDVzdHpsZFlRd2lkTTFrenhTb1FMMTgwSVUyaGpQWTFPcUF3bUNkU2VCVjM2dGJyTkZscVpPVTVDVm5VdWVEOENrd2FydFFJSlRKU1RXamUzcTl4Uk5OUXc3dDlCOGRvRFUxaUFkclRRKzFpUXMyNm9xTUtaR1wvYzI5VVBqV1JmMVJUZE1qZ1RVZ0drZkh1Z3BlWHAzNXNTT0ZiN1FPXC9BVkpaZGQ2MDBVV0RKQnMzM2xnVUZxNlRrTXU4ZUl3Wk10K01heFczT3EzeUF2aWNld2JaXC9rcUY5T001WG5McTlyQVliUFZqeDJRNjFvQlZSNHp6K1RGZUk0TkdGOHp1UFVKam9BQVMrTUViRDF5UHh2SEhOeDFIYVdBTmZNS0JvSW1vOVRqVnZrdTNZR0haRGpLeFB6WWVWTGhQXC9yZGhwUlpjamJWMnJSaTloWjdEYW5oc09IVmVuOVhpOCtKTEFNTXRCOGZkRlwvTDdQSitqZVwvYjV1ejcrQnJEK3FIUFpLejNqZ0VHZGU1QnFnZkxUbnN5TzN5TmtkS2lXNk5BanBDV0hwRStPZndKWUVHVkhmQ3E4UzRaUVcxN1wvMVptTjRpOEtCcGRGUTRPYTh2RXJXczVaZGFYNzlmY1FmalFRdEdDOXhMTFwvRHlNQzB6SmZGS0oyUVNsbUhwZnBqem9PeGJMY00zNFNTTVNVUGFTMTdNQllKUFFiNzE3UFVpRERZaFRpOGdObW5ISXpRM29IZVc5TjZpWW5LWGJoQ3V0SXVoalhoelYwNnBzSThHUndSR2JJSVpqWUNNWUtCR3p5eTR2MzBlM1BxcmV5S1JqSFQ5dHFYVnFld1A3R3RzZktCUnRCNUczb1hoNnJCVFlqVDNPR3dZdFNmVUQwQkxcL015SGxFSmsxWUFnQ09LRFpnN25JTXF4ZVwvZ3hIU2tWYktmTVVVMG1wVnFDMncwQ2t5SVJwbXliT2lYTXowU1lHM2RpV0ZjXC9iaHE0ODY4K3JGZ0N5K250ZFZCRlRHQTFaVUZCeWxheXk2cEQyK3NnRWVhMWhVS2tVaE9UNmJVSWhRRTY3ZXRTaTZPOVE0dnNiVXVFU2hXUXdFMkd2MzBXNitQR1dmWTBOVGNKUisrZFpES3pZUjFPMzdKR25pYzUzalVDc1Q0V0Z0SEwydkpITlwvaUxGMDJ0QlFzYW8wbGZKcUlGdEM0a1dsb1JhZEFhSDZZWU43UjdoUHgzWXBLTW51Y2dqTkVFQkZpNDlwR01WbGhKSW5MSHEwcWxFcDdTbFpnSXJVOHQ0K3E1VTNsNFZmaldNdlZXT0Z6S05ycythcFJvMUNWNExZMVhtOEUxeHgrckNwNUdBNmlBYko0RDRHcHdQWDRGd1NqUERqVjV2UUtpQ3ViTmZRUURHM3JaR0ZlSUQ4M21WSUdnbGxEMmdwQTY5d2NWVGlsV0FWMnRQQXBZQnFSRXBISmEwSTBYXC9WT0U5YVZmbldDdjA2SFFRaFJqNFIydEZhRytTZFlqV21wVkpaaWozMjY1c3RLT3BLMWdiZTUzN2NrR25tWndEZWJVblNKR29nUkhiVkxlVmxHVUNzNm9JY0JRM2RMZTRlVHhNNWM5UU9Ga2NkMlRrY0xzaVNqdmRsQUZzdnBLTSsrNlh1bXFlQXpJQjMwWGZsTmJ1YWo3UDRtOUFWWUNvUHdLOE1ocmVWbTBhcldlNW5KcFBTM05peWFMcGxmWG1SckY4Ukg5MEVzRElcL0lCdm1qeXpDVW51S2lxNXRXMHdtcXhaVUUrSzJcL242Y0dwamNLdEg3NkxGOWNGXC83aEdFV1EwZkNDa3RRZlphMVNrRGsraUNCcTRjSkdzWWhHdEF5YlFoMVJwdTB2OWRxZ3Zac1hnRGFrVWJUMU5CYVlUdjhRYWdqZ1RoaXUzdWJYcmtTbndGS2MrMSt5aWhVc1ByaFZyR25EbHVaa1FRcStxZmZ0Y1wvNWJQQytGdjdSVkljamN0QWNSd0p4dXhnNVwvelNUMVVzUFVYZE1iMHA5Nmx5ZGF6dXpEbmVTNlpPV2dLTUJKVk40aExLTU1XNlltZHluSGJYR0dIYkpVOVMrbUZcL1Z2VFB4R3FXbmliK21abXFac2E3UCtUbWZWRzUzdlYxUlV3TktjWFlMTkxEWG1MRkExVkQxblMxN2ZCXC85d2l2b2c4U0lOdW5BVnFrVFowQkpDclFKWTJGVHhwb1dETWJsUTI3Q0h0bDlXS3ZJZzR5eTg2a25VZ0FCWml2RGhSTnd4YUZhODJPNU93ekthSjNRVGFpWEZjUm9CXC9qY21CbHYrNU9jc1VzTWIremhDSytCbUV4dVwvekxGSFh6aVl2SlZSeDVod0VQTG5za3RqZEd5anBrTFk3RnFhUXlhdjN0UjRZVEdXaEl0UVlLM2xuQ1VCbFQyYmRjaG9Rd3l2MlNoOGxscHRKeERLT3ZDMmRGWGZibW5hZTJENzhKMXVLbGhTMlg5dGJpMytTTFZvamgxbDI5Mm9jWU8zZ1BZT24zWndOUHFRVGxOSXZnbXdjRmZpSkR5YlFsTVRod3RyblNyeUZjMWc2TWhaNWJjV3JNajRGdHpSV05xU1NWRGJJVzBaeUtRc1djY1wvRkR4ZUNoNXBWYVpEaUxTOUxwK3JtUXgwM2MzaDZaQjdNdm90K2xGUUFJcnhmUjBidDBMMDN6T0RQODFzdXJHSW10RjljbzRQY2ZraXYwbWJBbUdRcmtUbGJVUDZWNGZmdHNMa3VlWlNaS2t2bmMwYUNaVWZadGY1SFlGRU53OU5ma3RsdktSTXVRUGlKQkRBbURFbzh6a2x4MjN2SUd0NTQ4RDBkb1l2amdWQ0pwNHQ2RFFVdk5wZkNpc2ZIZXE2SkJSSmc0aXFOOHR4Q0NVWTNldXNkSk5sNFh2SU5lRWJCc0swMkNOWTIxcVwvWVNUMytDTzNXc1VkdkFzWnk0cGRtK3lLTTBMQU5iT201eldXdVAzODE1dXhWTWl2c0h5YlN1NW16QTJMeGZ6U3FPNEVRTlZ3aGNiRUVHZU9CVEYwdUsrYXRwUzVhR0k0dDJEeXJKbThQQ0U4NnA3S3BlWTNqQTNEcTZoN3BLNU9pMG13QW5UNDJTMUs2U3JydGpmcmVWaXdWRGVXcFlsS2U0ejBYdlFTUWIyUkFxV0NyWnljRmFPMkZDelJtT2VuVUN1Z1E4YXVuaWRBeE90NUVyazBXdVNleFI0UUlZWUswVndOeGtiQTNyNVI1U3dQM1N1OXViZU9hMEFtZDJsUjVPbHpRWlNkaTVwQUlESmhhaUZDMGRwdFlNUU5FZHpIVml0T3hqaWJUWEZEbEozeVE5RDFTNFFMdDl4K0JEWFErUTdGMmRGR3FaVXVlSGREMFNub0NNc00rRXZiS24ySGsyT2QyUE5WZFJxbkE4dHpmVjM4ZjJBZjNqNGI2bW9UXC9leVlyNHZmT0JpQ2o5QitLTXF0NmVlS0ZuOVNhNDA3VGlSUndJUXlCcWdEak5Db0JwbEZWaks4Wm02NFlWeXlodWg0V2xMNUxKWDA2WTA2d2FLR1krcFpSQTd6OFNNbzFaVmhEUlR5OWNsRmpFQnhsR3RIMjNyXC9rRzd0bmJhRkEwZ0YxanBOSnJ1SUwrTm11YWhpcmliN1J0TVAxR0Q3QTJmMlJkUGhZczNoUkFwSDZzdHc2cTV2YW5sNXBPc3pmSHdmYVVmRGh0QVVnTDlGcXJMU3pwaGRxSTZWT1h0Y1B0SUFFVVlSS3hva0VkQ1RTWFhVOEtxb1Jnd05QaEh1QnNlWEkwRU5oQ045VUY5UFQwQ0hpdWltdHByTHdWMXo3aDM1M2FKamN4VklQd25tdVZmMjY2SHB1NnVOdmNuamZcL0NCa3o3WlwvVXRpUkM2YTdBYm1DSDBJT0pTeUVXYlNuc3MyNnhUZmY5VEdHTnBKRjBIbWJcL3BoOTV1Z3VuQnlKaExYd2FxYklYclZ5b3ZhaGxPSHl5QVJVNGlUVXlXWUlpZUVLb1I3cGF3Q1k2MWhkR1FOK01xMkkyc0FcL3lvOHFROE9pdWdXdUw0cG1oSGhOXC9TeVZRWnhObCt4T1RZOUIrUWcwN01mUGxwZzBxeVMwV1R6a2JMalQ4WU5wUjdwRFJvenpSRU00VHdrMDA4aWdPNlhiY0tUQUZQTGtpZUl0cnFvVEtNRjdETmxLdzhnalowKzl3R0NhSnZhcCs1ZTV3OUlDb05ObjhRQll0dzFOYzJsZVZabnk4SXNCY0R4ajNBOGtnNUpQK2t4enZYYTNIcjZ2TnQxYlRSQmpGS3lUWElSZGhkTk1Valk1NFwvOVwvNmRWZnpGejFHSUVMbFlZWWx3QnBFRm1pXC9nZ1pKWGgrVlkwTU9rTUdhbUI5NjY0UHNNTFZxd1RrTU83OFhyV3p1dEVvTjBxcDBzNnVRQWk5dWRncWFMMzREaEoxNStaZlA2QndnUFN6ZGlnRFpYaG1yN3dnWnZscGJ6WG9nOGZBbXhjTzkzQzdqenVISUdhQno2RGR2T0l0RkVwbmdkaWJLQXI5NGZaSnZcL2tEM1lWSHJsRUFMZzZmUHJwN2szUHdaS0lZamIrcFU5NFBnNStRbTVCMXYrM2tJdytGSW13RVZXbXZ0WjgrUFRBV0tRTXlZN2FNM1hIU0lTdGk4cEFEY2hudXlDWTUrelZiZGQ1WHlZb0NxSjNmMFgxUlFkUjhyY014ekszbTUyR21HZk9TY0NHdjZBSHVRWEpmRmFIOXlDTzI0cjFrcmxQSlJBeUF4d2RmRFJlaTdtSWNKeUE5aTBLM0hncm9CV3B1SFNVdk1HekhiWGllWkF3NmZYZ3FadVZrdk8xK3VkUnNmNzY4djB5bGlielhUMldGOEZzWHBXT0dzQloxOEF6Rm16MUVzN0RSZ1NEXC83YXdjcDBET2QzTTlocjJHcG12WDZMdDA2ZkJRNkVxMXVPVnBBbUMrdzZEWm1iZ0R0bW5oSG1MY0xWQVB5bFZRd3paT3lcL3dZVzYwM3JWZmZ2OFcrZXFSaU9ER2lWczRPXC9KYTNtZWM1bEVpaFREemFHRVpPbGZnbkJTK3dRMzhlQVlEb0IzNnFkeElLSmtQWjNcLzhvUmpRMU1CVG0zalMzZHo3Rlp4OTVSYU9cL2NSWGlcL2JcL1BhdkNLTUlsTmk0cHZNaTk4OHJPcDNmakJLMkZaVHhoNkpTSk9ybE44MUhaS1wvNkZcL1pwWW9xUDRiOGZjalBBZGFHXC9OSHpyb0xcL29nRkdpV21rWFhpVEU0ZXdMOUY3RnJzYURlZ2F5UkJJZmVZdUVQcEMrZitWOUtCb1o0UEk1N2hraGNaZ0NiT0xWZm5JRU9Zblhoem5OMFVUcVozTTFxcExMMW1zNEhwaGQzUnA5NUhBMnR4TWl1Y05nbUl4UkFmYTJPdHRcL1wvOGdLRkh5WWxRcUxsb1JRcDQ4MVhhTzJvQjBYMm1SZ2dXbzloZExUYWxRYWdsOHppNHUwelRmSk9lcStqRG1iT1J3bnlVSHd6Ymp4dnNVMFhVUHpuQnBUc0pSMm5tK3loOEdNQkpWK1RlZXh5MVpFYVlcL3BIaHRsNXVXYnpwemJPbG9OTUJvVEpyY1wveXBCS2N2RlB3allwS2xmYUVXeXRRWjFJa1dCY1k0ZFBDVGM5N3hJQ242eGZXejFKMmYrY2FNd3Fzc3M1cFJYTVRcLzhxZnk2d3RjRXJSUWM1am9nczRXRGxLcFRsSFpBRFNVaGMyQlQrSmFEVEp6Z0k4ZGoxeXlaUFVHV1J1OGlTcnhWc0drYzhDOFF3OW9MNUVhSFhiQlg1WWVCak5TVEdNYVJvclRcL2tjcGxcL1lIdEtDTkpQbWFFSzZQNUZzTXBxM2JyZ2h2U2g5UE5XNlV0Slp4VktpNEd5SXR3MjdLVDRIaUhwS1RFZXEwTGFXMmFybENzSjZuYUpUZE9iU2J5b1BtMGJSTjJBTlBrWmI0cCtmWUpPN1UybDc2aTl2UitKNWNtV3dMcFpLblpzUSszSDlxd3VZcmJacThIdUdOcURRN0RXdmhMcCtRYXpNOFozRUF4dzk1WUxrUXNDSitvMHBWUzhsXC9sUlM5d0ZIVExlZDBQd2tIbTVIblhMSVwvcUkwSWpldmlFbWlGSTdHelFWVmZiRVArMHhFdUxUQnl4TEhTRVwvVXFqSitIREVDU0dRc0tpWEVSTkFnZERxRVE4ZTFNQ3pwVDZwUnJXT1R3djQzWlVrODMrV3NDcFRXV3g5WTBYa051WnZscHR3Zkt2UWYzeE5lMUdaZHVkS1JJR0VLT0lUd0FDemtET3NvVDBcL3hZRitUNEFGZXc1aUlpRHBNOEdNVUV6dEJJUW5KYUxGVngzZUJ0K2JQY2EyUEY0NmFlRUxxb1hGZWdOMVhNU3NpWWxiN29RTUZjMjZQZUZLTWdFUHpWalpsNXlHU25kd2VnNWVyVzBYWTJTYWVuenpCMVQxZGpBWUd6dUF6SjVuRVFtQjhYUmttQjZmbDJrd1FkVFJxTUh1d05jOFVkSFk4T0dLdW9ubVZlcE05cmNQXC9FOEs4ak9OTFNFZ0pcL2tiNENURDluczJTYTN6bWRBWFA4VWNBWWJ0bXpIRFVYdHpDZ044RitqR0V2QWJlekJUYko1d1RNNWJlbHhWV05peng4dGJ0a0ZrOEZjODNwWHVCRE9mMWs3R2U1STMwUUUwbEo5U21jTThZRFRZOW5GSDI0MFl5QVY0bDBaN2NRZUt1N0lTWU9hbXU2cHVrbWlvT0oxOG91QXQ2YThkMVdPKytOaU93WlIrcjAxQmErQ2RCMlhnQis4WnpHMTIzSU1MWVFyYldqUFFqWkR1VmlERUVFU09EQmJ4WktadXpteTZxT0ZsSnB2TVdnXC9LZFZYem1Kdm5ETkkrRzYrQ2dMeUlXbEZxVWNudW5HdWFxejlFdjBpSWJxVkpNNTM2NDVMdHcxenVBUEJ6N3ZFUjY4U2M0Rm9YSFpoeGlpK3h3VVRwc3FYT2FaRWFVVkdldzhmTm9xSEM4VlY1cWs0MkI2UElFTndGXC9KN25uU3Brblwvb0c2N0VJMU5KQVJ6Zis3TGwxZGtMR1ZISFNoMkdwbXQ2WkZQTVRWZmJtV3JRcWV0SnVuM0ZJcnRDZm1wWFkraytPY0ZBV1Z4dmZhXC8rcENQaHFJUWVoXC9PaVd6d1hralFcL3ZtcDdsV2dcL3BzTHdldmJ5cGhxa2FvdjMzalwvUTM5NjNDRUE3cHlSSmlEb3VuZ2Z4bE1LOVd5OU81cFQrVHlkK2NSdU9iV2thdTdwK1N3Rkhoa1I0eVp1XC8rdVYzY01CWFRJb0I2R05PaWh1NHZKbGt5MDFpVFYwZEZobXVhclFxSGJZVEJqQ3JpbU1xMmxxVm1uYVRUa09acEdBejRLMExscjN2UFVlaEtHWk44bEtHdzZXZ0pZbHZNdVpicDJMYVhGakhxdll4dkpWUjh3SVVQYXlTVUhtU1J6WWNEVjIxb0N1Z3daMjFaTGJrbVdIcXlGRG1wKzNuczc4UEFoWXZ3TmFCZ0swekMxaWhWcERlUW91RjNnU1wvbm00eU1JRGMrekczS2ZIR0RtXC9HY1BKSGQ1czVKcFhkWGFyVDdNQTArczNuQzZxMXFXcVF5WW1SV21lWlFIdDR2VTdDa1VYRldIY3VkYTZQWTlBOHREQWNKMlBMOU1wd0p6d1JGQkdVeStoYVZtN0tSMjVvNWtIWHRKa2JnZnY1ZHZXbkowcGdLTFwvbnczdFR1N0h0M0tqYTVlTVpUQjhPZUM0STRKZjFOdGh3UGdDeWpocjBERFRTbGhrcVpFV0dVMWVFNCtGSFwvMHZOZzFFWXFNeWFaK1wvZU8wOW85bEV0NVdFNWRDdmxvVVlMQWtvWklqVDZQbkhhTEZzNGI3Y1hJY3I3U0N1Z0RuU1AwRnA0ZWZRczRwUGRSUXMrTTRJXC8zNEN0cjNGajRQQnN1WmlMY1FobVVtM3BzcWpuWE1BazM0Y3dIeG9BT3RoVmJcLzdHWUpZSUxcL0VMK3Z3MFpMUmNxTis3eElWQ0d2S01TWE9ZRUhIS1dHQVJlWWNJS2NTdDVPWW5kSW5JXC9VSDNQQlFxMmdPWkpZOUk4RHZsb2F4YWdndm11N1ZIT1VDWlhkVFV1VEdnWThDcVpNenZ5dU80TUNibFBsNW0zeGtEU3oraXRMNzRDQXdJUnp2eExFV1cra1V0VGtMNElBVkszUjZGSWRIaDB6VGE4WnUxTUY2U0JDQkZzdCtocXhPbGxiREI1dXF3MmgranVBSzlWQXNVYkpKYmY2QURBcmc1V1BQRkluUnJBTmlMNkg2bzlcL3o5aG8xTXhJVVBLTlNVY3pVMDgwZEZORjlXbEttSUdSWnU3K2NcLzlnQm1XbGh4Q0krS2VUYnZMYlM3WmJSV1JEcTdLc3JPREI1cGZRRVJHVXN4N2duXC84UFR6OVllbCtNVjRUcHFhbk1oVnFHUkRcLzhnUGlFa0VLdXdBaGQzenZNcExXbDV0WnlHblwvSFFrVHUzOHZ6d21ydnQzUmNCc2NFZFcwRG9EeisxNlwvT2NMWjE5XC9rVStxcGZQWXRNQnJFRTljcG45VUVNTlMyQ3dpNTVRNjI4WFF0SmJEZVVqNlh2M3greG41dlhHRnN1XC93SUJEbUxBQ1Z0cWxSNVBoV25kYjJONmpvSUdYVlM5RUZhbTJ6QUdSMmNaN3RBTFZqcjZKZExHVnZ0V1h2Z0R6T3dQekVIZnpzd2J0djdxVjVcL0k0STNtYzFoQk81bWZpd3ZBYmY1QlRVeCt6dUlWZDhCS204TmxHaVVxdjlJTVRCeHEzbVE2eW1kMlwvUkFybnY1QXNSN1l3cHpnN201RVZoa3ppdzIwVlcxMjFjbUlINW84UlNqdzVkY1BkemFZV3YzYlBBdzNLRkxya3FUMFRFdVBpdmdcL0JwVHVaNnRpcnZVMERGcWV0MDlyWXRPQjFldnVhQXdLSzBidkZrYjdzamZacTc0K25kK0grNWxIZ0xkTzJhdHFzSGxmVGk5QmNyNnpnZHhzTEtCb0lidzZ6NjV6YlRLZ0E5aG1SOSs5d1VwTmxnZlNvbVwvWVwvV2twXC9rQ0N1ckZDT2E0T0tmWlNkUTdIXC9Yd1VFQ1wvb1ZMTWJUSkxWdVNseU04TmtTbVBPdHFVUUZNSE5Ld240RVFyVG4waHFEZ3luTHpoanF5c2hVNXVLek9HNEhPdmJGV2o2YnVkVmVcL0tHNEF6eWt4WWt0dFpmQWU0ZGlzblBZZDJSeHJENURKSnpqXC8xcUY4QTJjWXRPdE1qNjFRZERVOHp0YTZEdEtCNEpVNlRhV3pOUFl3bnFQNVJcL0FTcFRRb0FYdFZkZ1ozakJ4S0ZnbjFZMExGMmJuT21WendaMjdYanNsR29ENzFpTjljUllPMVBZR1FzQVhocTY4UElaaFE2OWdlZFpvY01VME1ReStyTWFNRXZKU3V0cGkrZTZHOHVqSVhiNnpudGJWeHRNeDIyNmF1M0VXT0FNRVRrVjAyMkJyak41VXcySHp1dXhHOU5ETmc5K1M3bWhxeHV5Q1lWWGtrTlFRbXNUdTRFVHorUndlWGJINDI4TUh5ekYrNW13ejZZek5GcXVOYmhMN3hhK2VURU9PbEc2WE1zcndjUkpqUlNhQ2tcL1l0SkF4MWJGXC91MkJaVlF2WjRSY05KTE9KQVhzOU51VUZkaDhqb1dpWFo3TDFJbzh2SjRmY0htdGZtRTV3ZzluTXp1azd6cE5leDVCangrOUpjXC9keG5FQnBYMjFyZ1owbXoreXIwME9ZXC9lZmpSVlRhMHNUU1RSRGRZK2ZNSnpQQkV6QThGQkJOU3FnU0hcL2UxUnk3bHBGdENEMDJqYVRLK1RPZVQ2YWFDUFc2K0pTYkhXNFQ5VFF0TFlMVGprdTIzZ0NaaHVYNVM5WVhoc1RHWndPbFwvcXFEQlRHOGl4OXRrRHlFQnBMT1NCZU5FYk0zRHZiWG5cL09CXC9jdXU2TmVBZmoybzB1WW5WNGNQM3ZDYnY2WktqT2ZiMHY4RTIrc0FcLzVaNHQwYVwvSm5FOGZIS2JOdmk4alAyZ0F1V2x3ek5IMko4K3grbW02UFp4ckVYcERDU1d6emx5SGo2XC8wbnlrdno3dk9Rd1wvNTRcL3dkMkQ0SmdlQzR0QVNla3RpXC9ZM2xnRjdZbTZsSGlTSDByaVd2MlwvczFqaWZvZk5SSUxqQnVUbkpiM1lRXC9HSmxxZk1DaUVCMzRPU3hxOWR2YVZlczU1eW04RjRBN3dOODZvbFwvbGZwNWhFRE9tK2NGOHFOTmxqOTFpWVFMUERwbEpzd0Uyd2pLVXYrWlVnTGU1WlBLTEQ0T2hsZnZcL1dnU016RWdJS2xxNGVkRjNiNllDZ1J2a1RaSjFPaFYwQUlPV2NqT2tsZFh1d3hUaHVcL0swTkJ0aUJNNXBkN1wvTkZObWNCR25kSUY0dkhnWkx6ZFFQenZTUUhXVHFCYkc5czY1eklYcnRwMllFRWxsZXYyUHUrcGkrcUJXbVV2Q0d2QU1KcjlvbDNEWGY2TUNDM0xEb29pTTI5MmJxN3BHeTFmVXFzU0lvamxEUW51cjhuR0REYjlSalQzSlF5cTd1Vjd3bGMxUFFzamdcL0ZxOXlcL0ZxMHRXRW1ITXpHdDBtME5qUE84U0FIbzVIcmhYSTVQeUFGTlY4V05xT1pCRXloTkc2dEZBWVBUbFFUUlpJTnlHUGZOZHF2UFZ2a1N2dTExUDdpS1hFTlBJS3NIUjQ1NVNKOXY5QUZxalFQV3p5cUNiVHZXT0RFTW96T09pMlhpOWtSQlRmd0k5eFQwUXZ3UVpVb0s1UDdlemZoeU5Bb3hNS3E2eUtybGJtaWZNRGlITWJjd0xFblQySVQyTmk5S2FBNlhneWNFUjlmdHJjUWpoSXVZQ2x5NkNIbUZwNm1JMEdHbkpuK3Fzd2xJcThcL2tJeFlmajh6eVVFU2VIQjJORmVHbWRHZTZlTXp5aXY0TDY1ZThGWFwvc0VaRkhPT3hrQ0xWXC9uTzNKaTFiY0JUaGNkTzI3dHh5clE1R29OY0hId3k2MjdpdUpoNDBoTXRqOE5SZjFzZkk4TXRHYWIweUU1ckxsT3hvbHNsdVRaeDFwblJ4TXorMU42YmdPaExYT0ZpOXd2K1h4S1A0REwrS3hTSVNJN0F0Mlc3MGJjWDE1RzdjUmdmM0lIWkhhWG1Lais0NWtwTVc1YWxFNGdiVkpUaXpGQjZMbnUxbG5MaUhJWUU0VkV1RUdTZ1o0STNneDlOOXdtQ1NuTFRCbUVnbkNYRnlTSm1MallQcDJqRGtBTUZkXC93MEFBYUdobVdNOXNiVllGVjFPK0pFdXhFVmNvUFwvdHhIWktZS2tjOGlQcUc1SjdiN1pWOGZFRnVhaURkMjV6M1JJd3VHQnZGWnFDTXNia2locUVhTVl3dmFJNXgwWE4rTDVHTDVEZWF0MVFXWnRsOFNtRDJtbEJTTWk5OWE2S2U2QVhcLzBwOGNDYTFmUXhac0xOM2RJeFZwVjBiREJweFdqUUpQbjlqZUkwMm1kTm9nMnlPZEZreWF6ME8wNW00Zm4rcHdIYVltOHhOS1NLRldxdUkxMTNnYXVpNFBXZEt2THhMck5VaHY2YWNHdW1XeTJ2cUlaQnR0d04xWElZN0JXRG9abUxqNDJoVXJ6Wmxtc0pYa3NOYlY0ZFlmMjVDRVZmcU8yU1hDVjdlRGMyXC96MTB6V0JSVDlkNWduSU9CTUN0aG5kZTZ4ZlhHa0pvaXNCUnZcL0JjcmtmNFFaRE1ZNXhteHN5MXJcL3BMdWlNWWVmQ2ZXVzJNNlZQU3RlK0dsNVE5cXRVcHcrSUtEUE9jTlpUTnF3SHg1YW45WnpNcTR1cUoyWWFQZ29Wb25cL1JcLzU3SXhCM0V0QUlYQjkxaFBRRDJsaGs2ZFIyMERKV2JQUCtHXC80NkVMS2RIYXZxMVl3VStaSDN4TjVZMVVMWGNNUzlIV2sxZXY1cjN5aUxFSVlVRE0wYXZMUlVaSExGSW5vMFFjZTQySjZxRVwvR09tRnUzMkFsMGp5cm02b3BVRkFvRjdFdW9FSVBXNkVkckFsSE5HVGNcL1wvYUQ0MjdcL2lNd2o1TSsxRVY1bWtzU3hVclZNYlFYZm5RR0hZMUxpeEtLN0ZZSWJDZW5wczNjMThIXC96Z1ROYVJ0eUlzNnBFN0ViZk1ZNEZDbFVmV0Via1JISFVZT3c4MlJ4R3dQNUdHaldNc3BYR21GTHFIYnZWdkFZMGd4ZVFrQ0lZbUQ0eUlYZXlYMU1uRm9ud3FaWnV5UlRtSUdJTWd0dzN4aUNsR3ROajJZTXpvQVpmSkFhb3RmMHNPcmJObkl6dG5tY3JBUWNnVzhid1NGcFhqckdMSDhDYnNsMkRYT1ZPVTVQVEpRU1d6SDN5Rk84V1RHVTVtR0xJWnNHd2hIcjhndW8yejZuSlk3ejU4TlM5Q29TQjhsRWVoMTcrOGdHKzBnQW85Y3h5RHhuc0FaZkNoSmNXY1V3N2pTajYyMUlLYVpuSzlPWXo3c3FNXC82T05kTEJya2IxSHNJUGxVbUJvcW5IOUZlWTZiN0pvMUpjbzhLeXBlQUpZM1g2RlVDeWhnQkVjelY5UDk0ZXE5RFByT3piUFc3dnlnazFVWlBOemFkUzBWaFdyM2NUTXRHU0Q2OVFMR0poSDFQaEpZZDQzMlFXRW5VVWxoYllGMjdjUENXYm1FRjNldVBIOWdnQ3ZnRU05RVNZWkh5dTNCT29TVUw3ZHZ2dGVmZ1VhR1Jra1ZzS0xKdkJqRU0rOEkzMlJ3VHErWjlKMWhtaCtMaVFJVnRuZUdvc0ZmbDNJQ3M5SFJxbHVJODRuZUdUd3dOR3owdGpqOURvd1M0b1VmaVBteGVDV1drcFJRZ1pCdFZ6M29ubGQzSWhBK2lMNTBTRTkrTHJmSW40U3VBdmpaSzIxZ045RzBQWFhZUTkyWHVGQU1ON0xxejROSHkwNDJ5QTVcL0JXYTd1Vjl5Z1JSSWhCdG9EN1ZiMTZJMGprTlFyXC9veDNrWUJQMXhFeW9Id1dpTVdqcGZId2IwUk5DRGFkajdQMXBXQjNnOEJVYzB3emFsdEJ2UVUxNWdcL1VYNndpRG5PT05HV0hpT1JWaWdnQlBqK0JTdGZ5UFBSN3l2eHppOWo3U1F4Umh3ZUd5ZUVmOEdSbGppYXlPekNNN2VOdG1LTndZSm83bDRUN3dOd0w0b1ZUV3IyVG50ODhwc3VJZ2wzTUxEcFZlbUxjOEJQSDZpZDVleGpmeDNmTytFbHgydlFxRnRlZk5FOTBkUUJNRWpFR3owNjh5V1MrcDBxZEJsZVNxdStrQkxDenBTRmV0RzJMZCsxR2RwVVd6dWdmdTFDOEptbVhmaFRTV2N2REJUMnJyZWhwdjlBQlBPbzlIc21yeTVzQ0tmNDdtVkNkeTFLdDFrZkdEMktYeU5LS0N6UjlvbmZPV29GMTllQVwvdWM2RkFaQzdKZVRkSmtuRHNvQnRQbldZU252dU1obU9oNlBaMFwvWENMdVgrbWRJTmtNd1YzdWpYdGdsVVo2OXhxVTJzVHhDeWZnOE9OZTBNS09NOHNQUlRNMmlyOEdqaDJKS3NuRFIrN1NFcVR2MGkyaXNqWXQ4QTdzMUtDeGp0bFVcL3dQUUkxU1VFUmxGTllTSUtwMmxSbis2UTQ4XC9oT3F5N3ExaFdNTnlwTm1UVUdjNDJMeEpqTFpNWHJvMldKYlJFb2NlS2hHTEU2bEV3THBxeW9kVytFOCtzdXBneDhFOUllNHlVZEZxZThZMUlvMmFuYTE3REh2MlNrYWxmOWpRZ0x4M0tvcEJaU2kwemo1NVpycFlRb3ZsS2JMVHo4UzVKSW1nTkdHTHZNRW9YRXZDNkIrZk1MVzRkNW5iVWd0V1hOUlNJTHRnYmdNK2NGWmU4cVRoRUxNTUUxM2Vpa281cnljeDdiZmF2VXZWbFZVSDdSYThxa3h5bkZjTDVONlUyWnpaSlVxRTF4UVpTZnpXVUF2RnhTVDJYajRIMlZBXC83RmVFVVdEMUQzbUtqUEJHRTVucjAzUitEYytOVEdvcjkreDMwQ3ZiZ3BuNWxWUldwcER6TitJeU1UNGwrNVZ0SThPOWV3N2JzUnVaNHNQallqU3FlN0xXUGRrcFBESmUxOFwvMVZcL1UwVGhWY0JZcThpTVFYSlhYVll1SEJDbWwwc3RoSnowa0Rpc1RZa2wwNlVKcGh4Vk9IWXpUd3BJU2QxaEV5RXdybkkwR2lBcjBLUkNzT3QwdjNRSVhlT2lJaXoycDdkR3NxXC8xcDc5bkN4VWwrY05uYzhOXC80XC9HXC9JSjNhNDBKUXJsRUFvRURCQTM3eUNoWUxaelFTTDdOcHU2cFoyU3pJMEMraFF2Q2k4WVZUd1ZXbXFUYkNaRUZWT2VVWDJaVmd0amkxRkhMXC8zXC9QQTVHdkRTU2VCSWpCSCs3RHBcL0JENkM2REorUXpwTmJxRG5TRHhMbjN1SGt1Tk1QNFF1Q1lodDM0TmlETTE0bzJHdW5KSnExVkJkMmRIR1o1SEE5eHIrdTdUek5tNTNGTmlKTGdzTXJqVlwvYm1xVmt5Sk9UWnRnM2xVMVwvdHREOVhxZ25SMVVOVDdiR2dGbFREeEEzd3l6V25pOUVwMUFYVzNcL1JiXC9adzMxZ0pYdUcwaE1yZU5QNWI1SGE5OFJEQWdkWEVRV1NNaG43bTJid21CZ2hUV1JPRTA1SEQ0aWwrYTRiZ3Z3SThcL2xRem9BNjlZRUtnU3l5Rk9ZQmgxUjUzb0wyV3pWVldpbkhhbDRYc0JMXC9SNTk0R1FFaWwxVm0yOGVXSlwveWhiMmh3RENlRm1Jak9ISEN3YzBpelNMVVk3SGJzRmtwWjBWVkFNQnQrSGV1TlBlSFJCbG9YK0U5WW05eTRVUHkwREdZT20yUXNPNWNcL2FDaTZTSmluV3pSSjFuVm5aSTFzN3hJNFBtelNGY3Jad1U4R2thK2lWc09PcmVJdHNtSjNjenFXZXpjYU1rZVo2U2k3R3BoaHJ0Z08rQXJuNEdLd3JlSGNueTFMTlgyQ1N2TUtjTDFyNE83YWRpM1pWS3pjOThlYnBQMEpKdEdMYVwvcnR5VjhzcEFTdkEraTFic0h4cks1ODRQdG5MeHM4U2JvXC9yMzd4blZxSW9HOWk1VHcxS3NucnArdG1qS0VDSXI3ZVphWkw3WGpRSGs4eVVrVU41XC9XVCtjQzNjMnRSbjVUQ2FTK1wvRVNKU1wvUGdwbnNZY0daY2tpZW9GZFdBd2lxc0g2Z01Gck9kMCs5QXltYUZnbVRWaktuaXpNUUFJQkdwY1RrM1pteE1UczdteGg0cGt5bmJOZ2FCa1EzVmFoN2tCZlZSam5VVTJpOUt5R2FIZlNYMENKZFg5NCtoNldoUEtjenAydjVXbHFKZW40U0NqUkRKNGpBZXRXUTFRdFNQK3ZQK0RUZ3NOM1FXUTcwRWE3WEg1ZUxYU21PbUwzdzM3c2U5Szh6TGUrMlpIN1IrNXdKZFRLdmF0aXpuYmJmOXJVVnJpN2RMYWFIa1UwNW1WWFNQRjJiY2xubXBNblRNeW5GZis1TVwvYmNoYm82VWJoUE5YcFl4UVJKWHp5d2xNVUcrTTlwVXVOSklUMWZFdE1XM0hnSWdWOGZvbFJveWJaZmtsU1htOFFtZTdBRnExeTI2YlVjbWcxT3RSa1RFNGsxZHR4RVF4XC8yXC9NaGwwMVI5dG1sVmgwaFwvbmhoMHVGbGFDNVwvM21JSHVUTThaaExqeGdVbllWMGZHWXJlRUI0TEFOZzhtVjdiZ25WVjBxSjZIV0JYWkJYV3RtYU1IVjdGeTVSNEluZE5nRGpTemNjXC9iUjdORXNEZE8raXJjZ251d3Y0b2N4RkhJaEczMGtQR0U5UjdJclU3MmZkRlwvS2dNZHF2WTVjaitnS2pOQkdcL2s1WTNNU2E2eG1kT2ZzK3RJdk43VGxxa3pabGpEK3VlcnkxOUVLbmVRbGhGcnphRVl2RHZDaDV6R1wvVSt5cDcwRFJhRUR2YjNsV0YwRU12RWZ1emY3ZHRkckdLNnRoRFI3MTZzQVRLUE5NVDhcL3lGclhNY01qQkpMb250RGQ4dVczc0NxeUp6R21SMG9tVFwvSU9OUG1LZklZXC9YbkFtdE1kblhVTXJuUXpBWU85Rjg0ZUhrODdFU2crdjR5V1NFKzVPclJXZzcrK2hla25ScVFib05sME5uRTBqREdmWU80SmphZlJ4MmVnbjRGREI3OTR6XC9HaXpsTW1salJVT3J0VG9CS2d2RUNKYWNodkxSdE54SE5HRURoQ3dqb0FnaG15elpmYkE5VGo0TE9JU1JXUFRxTE1lMWZaTWdrS29uamJPMFRIamx5RTlvbUFvY1FnTGF6akZpMWVOUyt6NUxJcWJ1dWlpTUsyNWZtRUxYYkwwVmFNNENueHJuUW0wT08wY0xhWnl2c2wzb3J3Y0ZaN2E2Nm9sMGJLZ1RjalRCdlFkYm4wbXpZVFRzQjZ0S1NnNVwvb1hIVWxYWHAzZzdzK2s5Nnd1SzhWVm9XWVhyMXVjdFlFdDB4MkFNZTZMNEx4b1wvVWtza0NYU1wvYnhHbWxCelwvcjRiRFd0RTNqdjdiYU5IbW5GTHg1a24xd0RWNGFQd2JxbTVsU216cE16dDlqUDU3VGdldGYzeFE3WHYzVW5CcXZGeExmMCtETGZ0MkNoVHNndms3QzRsN3lVbnBJMFRPMlZJcmVzTmhhakFHSjdVZ1huWlwvclBYOXVvU2QwRmc0SGJOeVg0M1pXRUMxZVVGSXFUdUJiSitWbm5qbjJISENDeEVmUmhjb212a1RxU2c4M0xaMVNUZjJZUGx0UlFta3BhTlRXOER6d2V6NnFFQ3ZmK0VIZnhvcnJiMGd1Y1BuSU03aTNuVGdmRHZISkJCRlpPandiTXlmQ0V3R2dva05INkd5cjZTcjdNOHlWVHI4ZVd2QlZDR25XODVMWXlLNDRCUHFcLytZNFRDdmVrRG1VanVUWnFuZTNZc05YckRxTFFYMktHNTMyS3B3NE5BcFN1Zkh0NXREempPeEJ1dzI3R01Eb29pbHhrRTd4NzlicEJBXC9IeWFZYjZ3T045UWpnQWN0OGwrZ1wvN2l0TXZoUm1zTlZLaEdIbER6RXpaRUJaTTYrVmZwbXIyMFwvWUFPbmFmS29Tb0NVd0M0TE93TmpGb2NEZXFPQXI0Y0c5NlwvMkMrNStOQlRlVnBQQzRJcmtsSXg5dE9cL1wvR29hUHFcL1JnMUJjMDRpY0xMNTE2eGpocWJJNWtJeWIzT3FhXC84Y0Z2UjRtUGx5M1RBTEswdDJ5V0xWajBmTmxtRGo3a2FLbk52ZSsweFR1eTVudDJ2b2dudjNlWCtJbEQxS2V6S0V1S2JhbkRhMGJZT3ZwY05NY0UzYnZnU0dpdWJrWFh2WWo4c3BRMWREVGFrXC9Md25sSHJYOVBXMTJlVkloM29zUVwvcVd0VzN4NGN2cUY0ZFNQd3kxODdYQnVYaitQNGtyc3ZMSUo0VUp1QWxJY1R1VjBxXC9POHphNGN2eFRRd3VBSGlWUXhlbERzUTBVRWhZKzNuQk0xVGtqXC9TZzNrNnpcL0VEZVRXUEhmdVwvQmlhZEczaFhXQlJpdmpCdnoweElMYTgxUlVlVm9kN2ZMcEh1U0k2MnkrYkhaTmVUZ3dwVjZvTWE3ZjZaXC9PQTM2a1F4cFJ2NDU1NFZWWlwvSVU2YUZWSzhwWlVUZWVHZExOckNST1Z1elZpaHhvV2MyTUhTU2d5dkJQMVFWWHdFejNtUUtnaTlhRW8rVjFFejZEYmlacUppZ1RkaE1Sb01GNUlLMUtxUjZwZkh4WnJ6SE9Ycnpzd1ByN1I3bjJPR09hVFVUcXh0Vlg0VW5xTXBcL2o2ZVZTcmUzNzFYSWdlUlgrWktrM3hXZWlZSmg2RkNXZDJGbFJnWEF0bE1FK1dxckpWNDE5dXpcL1B0cUhMRTdyVDBRZUlpUjVhdnhtbDZWRThTK0VMbHBObkVyZXpKd3pWTW0wSDR6bnJHVTIrZXJtM091bDZ4SUR0R3R5TU9RdW45Z3ZTZXE4QTlUcm1HdzhGUkFUR2VuanY1amdNcGhRRDErZ3JNVnBOXC9QdGxcL3ZSUjAxdVMydGM5aWZmSEp1YVViRVlcL2RraVl2eTZSWFdqZExjcHVSb1N0VlNnNm1hK1hXNmRxR1hXdVJzdlJwdFh0WmcrWmdqVFQxTHdXcFczZUJKbmMrSzNrYVVnUzYyc2FBRWt4UDhcL0dNZTAwd0dtbjZMQms1eDNobXZOMTFvMXlETHplbmcrVHJ6RUpvSWZqcExEbzRSc296K01YeXRjVXdcL1ZtdzZremhIbHNUcmpxdThwQjVsUXhlK0pHc1wvZ3dSVHIwakNcLzVJaW9BVWVpc0FnOFRhenVkYnJPcjh1YSthZnphaG8yT0I3MEJEaFhFWEZ4aDJjWVB3eUE5V1FVY2JSbjQ4ZUtjbzVRODNvUzhSM3lMV015R2N6bE5aWHlqMFk1VFJmZFBOd1oyY2FpcU5ac0VpZ1ZSaGdCbmpXSGVPTU5rdHlZWmdzWTdcLytjQ05SZUZDUUNBTGxpVDMrRk9xUTg1XC9LSTlaKzRBQ2xOS1YwNUlyUmhkZ2REQ1JzcGh4enQ3R2R6WWdKaVVYRlE3Um1CRFYwNExHbmNUaUs2YkZOWFY2azhHZllFN0F2ZjRLa1lJZU1sNzQ4WlF3cG5YdUxDbkdxYTluV0RQRHIrWWJsS3FjcmVJWkdWc2lGOTBsWDJJaWVBbjhrXC9MXC9KNGJJTHJIcTJhY1pOcmlwXC90WkRldTRCSHg2OU1CNlRYb2RUeDRxckJqTDU0N0dNSTNYRm5MMU5ZdkpIMU5mdEpUMFliYkRkcGkrcVpmOUlDR09mdkFWTnUyWG1Sa3JCdkhLZWNiYjVBSlwvZFlYMzJ5N1FvOTJkSytraGplUlFhOHZXaGl3VkZJdGl5UW5cL2I0cmx1RE1jTWZjYlJvME5JelJ5WnhTbnZjXC9aRXM1MTlyKzdFazdzOUpBNEtia3BkWHM2M0xFdklRY1h4dDJrXC83b09xWXNNQlpLdWUySGd2dVdKK3dZUHRrWGVoNllZNlRqeGJKaW9TeDZoTkRoV0IxQ1pqVmh0OUF2NDBSSmV4RUo5Uk5tMmRHWkFXMFF0VUVnd0NaWmFkT3VrTUVWWFFMUVBlU2JZRXo1SmZXcGlcL0kyelc4UHIzN01WUVhHMnAzQ2lJOGtJcTREYTlYZ2F5OXUyZzZ1a2NLeHdRNjNXMXVpclB2bDBaZ1wvTHBsRmRTdGNuT0RGTXJ5TzZnbCtuem14Y1Nud29UaVFISW9WaGlLYVwvemtLdEhuOERRRk5panFBcVFYRFU4d3lYMElYOUx5R2NlUG5vd1FpaW5lR1E2elhKU28wOHBGbjU0Nzh2TmV3d3RndGpzaWtKNWorV1BJVHY0bTZlSVlQdTBKTVpiQmZpT1dPbmYwc08rekFtelpOS3VTVXB6SnZRYzNPQTMrbEVyc3BjeHB3c1RTUWlrUzRhdzR2ck9XbjdpRHdKT2l1UG1leWRuNWlMT0ZnQVU3UlBwalJjSVZhUEtzT29ENkFFSFFPcXZzNXdSeWU5aGh5Z0hIak52ekhvcXV1Y1FDZSt0UGdcL2h1b1BWRjY2WmtBRXQ4dlRHdEdTQ1BCTTNyeTJIaDU2cDNDRFwvQUFMTkZCbnB2UzdEeTJoXC9CTDl2VDFXSmF5S0wwN0Y4OEJnc3hIY2Vka0RmOXhMVzhmSWNrNk92c0pKYjIyWStSOG1Pa2xJdmpcL2VjeFhvdGdnRU4zRThYc015QXNwN2RqUmFGTU15WHJSeVRGUmhYNjlHcHBhanZIUEJST0NGSmZcL1ZVbUVmVTQzQWNuYjBDOUlaWnNDOGdVR3Z4NWFBY2lFRE9hQTFySW13dG92SUY2NWZqaDBVRHBlazBsYlh6ZlZQMldrQ1JUd1lOTFdOd0phRko1TWJ5Z01VOGUzZDJlS0lITjF5ckJJNVVtSVZSZXB0MW9RVE1DaEx1djZMeVhpWXEwekN1Y1hnQ0pvNjdKU1lSdGFNSnNoRGJOcFpUUVE1Z291Q0lmUm9ycHk4NVZ2R0tYZStOOTdNM09ubjdTUHJWa2Q5M05JQm9HS0ZyUEtDcG9ZVzlQQzNhcW1ZSWIrbHFlUmdwOXg2NGxYc3BZcDZ1TURrYllXM054ZGozYkdLRkhvNzVIT3JVR3hKXC81MWFGVnRGWWtQd1FSSnJkbmsrclhGZWVzZUVnTFFKQTBQR0VncmNyblhINlg5cEo4R3FkUzg2RytYRVwvNFNXT2tSV1wvV0NhTnQ2SEk0MmFoMTlFbTNzVlBJd1ErYk4rTXpXeEQ0VzdUSjVvYSs2clBuVDROMlNhMERDNjFwalNwbEVlaTAwb3J0QjBWak9rUHdERFJyWjl5YmhBUXhDUGpCN2dzTWg0amhMNnZVdHB0b2RHdTJKV2o2am10KytvSFRlMDl1ME1mXC9FZ1doOWdOT2xBeVRpYTRSaTlvS2NibXBZcEF1WXBneEpLdVZpK3N1OTBTc0hVQVdqYnVRaUZvQ0ZpZXFmbjBXTTlOb0dYQnF5dmt0K1pHT1N0Zm93VFBZU2ZyOWR6b2NGdVFzTmZyaGN1M01HMjcrS1lta0tTanZWYW53bE9RcDVHTU1DUTV5T3Aza29ieXRMU1orR2tpT2dQd3RXWHVETnA2OVJUVHFjcW1HNmV6ZEt3dzBiTFhLWXE5YXJcL1wvczZOTWt5U3dEZE9xZWtWXC9OVlVSSlpZZHhrUlRTXC9wWjhDUTFvb1ZEaldENjN2bzJHV1cwZnlFUVJWbjJwUEpoMUd0NzYrdnp4NnZpNll1UThleTVnWnhYdVgxS2I2TkZ3VjErcmVxZVRGSmxyb0NXcVhNWkhmWDQwWm4xWlJGRWxVSFwvWjlyN2dHRm93UElkc3hmWnlIaU9BVW90Tjl0b3JpUXdrc2J3NXR4QmxRYWhSRFZhNXdpK1B1K3g3Z2NzcXhuVVFvRUFGU1diVG1DM0praHBjSnFPcHoyaXpZXC9VYzlkRHBHem5mbUJ2ZllGMWI4U0duN29jRnRpa1wvU1BCWEhCbUc1RW13ZVhzMHNyQlptNGNwbWNVNDdxdjdmUk9iRFNYWVBNTjJLNnpTTWZoNTBmaFVwZHVEOURTK2lINTN2WE12dFk2N0V0TlV3U2FJam4wZm1UU0Y1UFRcL3dPT083Sk8wVW5waEdGc055bDZPc0owekVhMktud1Z2KzNhalVRNVwvdHF3KzZyemtCVGJ3SFlPbTY2dlVuUjU5RTJzUHV6d2RWQ25cL0liVVpkN200ODBJZ0loTlU5MW1TYXVuQm9SRmdlT2dFZEw4WjVoQjdCNzVBK1lac0tQWWxwckJHR1d5dmV2UHc0cEpralgwTFI0bnR6Z0FpbGZYb0tNNWpBZmRma2JNR3B1U1dhVHlyZkhWaGtBV2doQm5IYjArN2R3cEc3VUM2XC95c2FlN0FmSWttSDZLYmhZeEVvSHJGZ0ZOeUxrRjJqWllPYWNjcU12QjVDdVBmbisybmJKOHlLUExvYnZXeElYeE91R292Y3lqVGV1WmYwdkh3TjRvVFZwR0pwVmVUdndPUFB3RFwvQ2p2V21FV1FmTXVBeEdKTUg1ZFwvb1wvUG5FSVozM1wvSExzMDFqZFBxZVVhREpFMzJYNFFaWWp6NzhYQWtwamMyRWlYZ1NVTDNqSThJN1NUMUlaZXpLbFVxa21tdElBN0p5UnJTMm01N1cwdFdPWlRCd0lveDdnXC8wRVpvSm0ySDhZYlp2Z2dwcnZQZWd3SnBXRWlESFNobXdOVUtVeWhcL1Noa1U2emFxakp6OVZQb1FFV0g3TlplVHhhQUVKMCttK3dyd2FCZW5GQnJxQ3ZPMTJGVmcwQUpEN3ptK3NEbk14dXRlMmFBVTBLOEVmV2lFYUZDNGJCSWtucjhNRmVuVWFrZGdrbGFZeGo4ZUYrUmZKejJHT1dxSTNyOFZ0UGdHcXRuRjFTTnptdDJjRXFRNTlHWnpWK1JReFwvNVNLRTIyemxYam9NQStVSTB2T1I1azJGOFlDQ3JuZFhcL3pXc3VsNTloSUpUV0JQeWdmVVB0NG5idGI4blhlTGlGSjRobGVuQ0plMHZLb1VcL2xFMCtlQ1FLYnNOakp3OVRWRHdNQVdCbkZ3eUpRTXlORW1ZOXlZOElwQ081clg5R0o4N1FsNjF4ZGJFWDJHbEk1ZlA5TFp5UUpwN2hYN1hlWkxuNGdOQ1l4d2pZcUh5Y09WZDI3U0hGeWErREZzRkttbHB4bDdUVm5aWlFSN2JSbDFVKzFZVVhXMUtmWWs0dWZTNFpiaXJHT2djNDZsdVJIZ3k2RlBqMTI3U0tvZE1ITzBvYXM2T0RyUmV3Q0h1ZkpyUEdlMnpDdzZlM2JSM0txb1VhS2d4bnB0TmJVZFY3NjEya2RDZU9jcnphTnViUXdaazV0NHJ0dVo4ZEJPV2xoSGsxazNRaURJS2xyS3BqSjB5akVlaXpRNUxjcm9XOG1nVTZObnZIS2M4dGM2SUpWUmFUNG03eU9SU0w0WEpiV0NZY3FNblFtd0R5dTJaZk1ETHE0YzA1N1dxUkQreVVxZDRuNFVvUThJTGVMR1o0eGdUSFJjRm9sNlBNWEE5XC9vWmdEb2puZGtLbk1TWGY3SnJPR3ZiSUd3eVhlcWhQK3A4d3VKQmR2SEVYWjVyanlqcWlQMEFYY0J3T2dZT0VZT21tU1N2SVAzcklUQ3Z4Z2VoQ3pUMmFpVG5pOEFBV3FTeUZPMTdLWTA4UnFuWGZWb3paalNlbGlNNmZLelJzVXRYWEdLVWYxc2l2NHdMQm5rNlE4WGdIXC83WUV2WDRTSjNGNEphYVQ5VXRUTkFkQlh5c2hTdVhvZnk0amo1bUNkMSt3XHgzZFx4M2RceDIyLFx4MjJnbG9iYWxOYW1lXHgyMjpceDIydHJheXJpZGVceDIyLFx4MjJjbGllbnRFeHBlcmltZW50c1N0YXRlQmxvYlx4MjI6XHgyMlx4NWJudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLFx4NWJceDVkLFx4NWJceDVkXHg1ZFx4MjJceDdkXHg3ZCcsJ1QnOiAnQVNBRkFVSWxuUmdKLWFhRFh1VHJORnRBZDh5eXYwNnhDdTM1OWNaM21vc3lGSkhUa2FsUWh0ZEROWnJQUFItc29uWmtCYlVvVEZrRFU4ajBjbzFsU1oyS0tBXHgzZFx4M2QnLH0pO319KSgpOzwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9ImRjX3pmV2lhSFRtVklzSWdrQ0Z6NGciPmlmICh3aW5kb3cueXRjc2kpIHt5dGNzaS5pbmZvR2VsKHtzZXJ2ZXJUaW1lTXM6ICA0My4wIH0sICcnKTt9PC9zY3JpcHQ+PG5vc2NyaXB0PjxkaXYgY2xhc3M9InBsYXllci11bmF2YWlsYWJsZSI+PGgxIGNsYXNzPSJtZXNzYWdlIj5BbiBlcnJvciBvY2N1cnJlZC48L2gxPjxkaXYgY2xhc3M9InN1Ym1lc3NhZ2UiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3Y9dFpPU1FCUDk0NlEiIHRhcmdldD0iX2JsYW5rIj5Ucnkgd2F0Y2hpbmcgdGhpcyB2aWRlbyBvbiB3d3cueW91dHViZS5jb208L2E+LCBvciBlbmFibGUgSmF2YVNjcmlwdCBpZiBpdCBpcyBkaXNhYmxlZCBpbiB5b3VyIGJyb3dzZXIuPC9kaXY+PC9kaXY+PC9ub3NjcmlwdD48L2JvZHk+PC9odG1sPg=="}},"time_used":94,"timings":{"blocked":0,"dns":1,"connect":8,"send":0,"wait":60,"receive":0,"ssl":25},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/owl-carousel/assets/owl.carousel.min.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.088Z","timestamp":1785143908088,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/owl-carousel/assets/owl.carousel.min.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:32 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"b79-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 910\r\nKeep-Alive: timeout=5, max=98\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":2937,"size_decoded":1269,"mime_type":"text/css","magic":"ASCII text, with very long lines (2847)","md5":"af7d4c3b501e3aacfc3218a0d888a09e","sha1":"415671bc6294e03ecb1b19fb7163cd4eff5ed2ea","sha256":"0002603afcb0c43a1e3e03fe7ab01365df485770bc0988b2433ec5ebadd23372","sha512":"e713a6ec1cf75ce57b3fcdd8c66d253bf6bb311a794564c26e4576eb0e3bd02fe910e099b7047e952847991a3cc4a383e7143bbba8f765576615f32a1af64741","ssdeep":"","tlshash":"a851ace4314b215f480f832219d85e87293ecd52d8260a9a92bbd718479ae2d113ffcf","first_seen":"2023-04-07T17:06:37Z","last_seen":"2026-08-10T04:59:12.478992Z","times_seen":2539,"resource_available":false,"data":"LyoqCiAqIE93bCBDYXJvdXNlbCB2Mi4yLjEKICogQ29weXJpZ2h0IDIwMTMtMjAxNyBEYXZpZCBEZXV0c2NoCiAqIExpY2Vuc2VkIHVuZGVyICAoKQogKi8KLm93bC1jYXJvdXNlbCwub3dsLWNhcm91c2VsIC5vd2wtaXRlbXstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7cG9zaXRpb246cmVsYXRpdmV9Lm93bC1jYXJvdXNlbHtkaXNwbGF5Om5vbmU7d2lkdGg6MTAwJTt6LWluZGV4OjF9Lm93bC1jYXJvdXNlbCAub3dsLXN0YWdle3Bvc2l0aW9uOnJlbGF0aXZlOy1tcy10b3VjaC1hY3Rpb246cGFuLVk7LW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbn0ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXJ7Y29udGVudDoiLiI7ZGlzcGxheTpibG9jaztjbGVhcjpib3RoO3Zpc2liaWxpdHk6aGlkZGVuO2xpbmUtaGVpZ2h0OjA7aGVpZ2h0OjB9Lm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVye3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCl9Lm93bC1jYXJvdXNlbCAub3dsLWl0ZW0sLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXJ7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuOy1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7LW1vei10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApfS5vd2wtY2Fyb3VzZWwgLm93bC1pdGVte21pbi1oZWlnaHQ6MXB4O2Zsb2F0OmxlZnQ7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LXRvdWNoLWNhbGxvdXQ6bm9uZX0ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWd7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlfS5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzLmRpc2FibGVkLC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYuZGlzYWJsZWR7ZGlzcGxheTpub25lfS5uby1qcyAub3dsLWNhcm91c2VsLC5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZHtkaXNwbGF5OmJsb2NrfS5vd2wtY2Fyb3VzZWwgLm93bC1kb3QsLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLXByZXZ7Y3Vyc29yOnBvaW50ZXI7Y3Vyc29yOmhhbmQ7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1raHRtbC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5vd2wtY2Fyb3VzZWwub3dsLWxvYWRpbmd7b3BhY2l0eTowO2Rpc3BsYXk6YmxvY2t9Lm93bC1jYXJvdXNlbC5vd2wtaGlkZGVue29wYWNpdHk6MH0ub3dsLWNhcm91c2VsLm93bC1yZWZyZXNoIC5vd2wtaXRlbXt2aXNpYmlsaXR5OmhpZGRlbn0ub3dsLWNhcm91c2VsLm93bC1kcmFnIC5vd2wtaXRlbXstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9Lm93bC1jYXJvdXNlbC5vd2wtZ3JhYntjdXJzb3I6bW92ZTtjdXJzb3I6Z3JhYn0ub3dsLWNhcm91c2VsLm93bC1ydGx7ZGlyZWN0aW9uOnJ0bH0ub3dsLWNhcm91c2VsLm93bC1ydGwgLm93bC1pdGVte2Zsb2F0OnJpZ2h0fS5vd2wtY2Fyb3VzZWwgLmFuaW1hdGVke2FuaW1hdGlvbi1kdXJhdGlvbjoxczthbmltYXRpb24tZmlsbC1tb2RlOmJvdGh9Lm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLWlue3otaW5kZXg6MH0ub3dsLWNhcm91c2VsIC5vd2wtYW5pbWF0ZWQtb3V0e3otaW5kZXg6MX0ub3dsLWNhcm91c2VsIC5mYWRlT3V0e2FuaW1hdGlvbi1uYW1lOmZhZGVPdXR9QGtleWZyYW1lcyBmYWRlT3V0ezAle29wYWNpdHk6MX0xMDAle29wYWNpdHk6MH19Lm93bC1oZWlnaHR7dHJhbnNpdGlvbjpoZWlnaHQgLjVzIGVhc2UtaW4tb3V0fS5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eXtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC40cyBlYXNlfS5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIGltZy5vd2wtbGF6eXt0cmFuc2Zvcm0tc3R5bGU6cHJlc2VydmUtM2R9Lm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXdyYXBwZXJ7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDojMDAwfS5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb257cG9zaXRpb246YWJzb2x1dGU7aGVpZ2h0OjgwcHg7d2lkdGg6ODBweDtsZWZ0OjUwJTt0b3A6NTAlO21hcmdpbi1sZWZ0Oi00MHB4O21hcmdpbi10b3A6LTQwcHg7YmFja2dyb3VuZDp1cmwob3dsLnZpZGVvLnBsYXkuaHRtbCkgbm8tcmVwZWF0O2N1cnNvcjpwb2ludGVyO3otaW5kZXg6MTstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBlYXNlfS5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb246aG92ZXJ7LW1zLXRyYW5zZm9ybTpzY2FsZSgxLjMsMS4zKTt0cmFuc2Zvcm06c2NhbGUoMS4zLDEuMyl9Lm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24sLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby10bntkaXNwbGF5Om5vbmV9Lm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXRue29wYWNpdHk6MDtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb250YWluO3RyYW5zaXRpb246b3BhY2l0eSAuNHMgZWFzZX0ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tZnJhbWV7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9"}},"time_used":4760,"timings":{"blocked":-1,"dns":0,"connect":2136,"send":0,"wait":2637,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrJJfecg.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://scromegatrade.com/","date":"2026-07-27T09:18:46.460Z","timestamp":1785143926460,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/poppins/v24/pxiEyp8kv8JHgFVrJJfecg.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://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.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: 7884\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 02:57:12 GMT\r\nexpires: Fri, 23 Jul 2027 02:57:12 GMT\r\ncache-control: public, max-age=31536000\r\nage: 368494\r\nlast-modified: Mon, 15 Sep 2025 16:34:42 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":7884,"size_decoded":8696,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 7884, version 1.0","md5":"9212f6f9860f9fc6c69b02fedf6db8c3","sha1":"ac6d71b4d5fdd2b3dabc9a06ff6c001e4251da0b","sha256":"7d93459d86585bfcdbb7e0376056226adb25821ee54b96236fe2123e9560929f","sha512":"67317495f4b53e20a9f31c034e456e6c37f387dffb2c092caa5159bc441cfcadd02749ffe5bbed1d580d5300a59e48a767ef2c6d9978b474f84c1a2cd095c126","ssdeep":"192:xLFDbKO9E3rS3JWBRO/J601FSS5ZUbik3Zy2f0:pd9J5W501otlI","tlshash":"c3f1ae4eb3f2cd1be40982e53a0fc90b1c578272681fd772d067a22517893bc8db2c81","first_seen":"2023-04-05T15:35:34Z","last_seen":"2026-08-11T07:58:03.018691Z","times_seen":390312,"resource_available":false,"data":"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"}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/media/83afe278b6a6bb3c-s.p.3a6ba036.woff2","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.686Z","timestamp":1785143926686,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/media/83afe278b6a6bb3c-s.p.3a6ba036.woff2 HTTP/1.1\r\nHost: coinlib.io\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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: 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/3 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\nage: 3824508\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"83afe278b6a6bb3c-s.p.3a6ba036.woff2\"\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: font/woff2\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\netag: \"65850a373e258f1c897a2b3d75eb74de\"\r\nlast-modified: Sat, 13 Jun 2026 02:56:57 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/media/83afe278b6a6bb3c-s.p.3a6ba036.woff2\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::6llhh-1781319417508-42ed70ceb10a\r\nx-xss-protection: 1; mode=block\r\nserver-timing: cfExtPri\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=aVRwa3tcqaHqHi4hpE1tFjBcZITupbDqg58hfi1dq%2BTY1uM%2B1KqT5lDRrJaFeJ8TQRJAe5jzgVufrTGmafyudiLT9aAC7MqHaPoXtTO9CvWhm7goftwGwxESTrx%2B\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npriority: u=2,i=?0\r\ncf-ray: a21a8f05c9140b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 48432\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]},{"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"]},{"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":48432,"size_decoded":50503,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 48432, version 1.0","md5":"65850a373e258f1c897a2b3d75eb74de","sha1":"1dc044f4824fd5af6bfed67fee48be70fa069f3f","sha256":"c940764593d0fe5d596be327ca7558855e018039fb78509aa21921fd3644c3e4","sha512":"df2683f3dd9724de589451a47bc608c9925d54b874ad97b733dd465ef41f9db75e9e31604762415c2fc1433d050e45fdefc6ecd7ecadf58d1243d9ca5f4bf74b","ssdeep":"768:3IkDHBYoX5Pi4JxTGz9CDR0s1ROSsA8mF77YNt7wFhVq9oN2WfpdqWjBA:tNYoX53xTl/R8W77YNtUFrWoUWvdA","tlshash":"56230251f5f8624a7fc3003fbc317bd862909fe5996ee5d91288f30225611dd29ee017","first_seen":"2025-05-30T12:57:00.85385Z","last_seen":"2026-08-11T07:56:21.980757Z","times_seen":89336,"resource_available":false,"data":"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"}},"time_used":13,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":5,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/js/custom.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.309Z","timestamp":1785143908309,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /js/custom.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:45 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"3cf2-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 2707\r\nKeep-Alive: timeout=5, max=94\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":15602,"size_decoded":3075,"mime_type":"text/javascript","magic":"Generic INItialization configuration []","md5":"d05d9c35b680e11a53e531cd193e866b","sha1":"a9ccbad8cbbffc651ee94b1e28adaaf7f04162db","sha256":"8481eb0e8d6e470de4633d8c4b519a2b42711990e10f85ea4deb281a444a82e3","sha512":"9c4e2f5b9aa60e0db641bef2d51787c56ad3baff2f69345177b61e9893cfd2ff2b979c6a3e46baadb9bdefe5b28975c780b6004d6bffce0cd252bf435edf74ab","ssdeep":"96:2qp146JMg2xq3o02LOqJrwOfK4e80U5AIRQAeykIGxYkRj/Esv:X14YMzsY0sOq6OR0/0aVIG5J/l","tlshash":"b9621f19ec60146b017be33a5bb94204fd65432f82819a13bdbc82bc1fb675a658dfdc","first_seen":"2025-10-06T17:20:26.982181Z","last_seen":"2026-07-27T09:20:18.342191Z","times_seen":9,"resource_available":true,"data":"OyhmdW5jdGlvbigkKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIA0KICAgIHZhciBuYXZfb2Zmc2V0X3RvcCA9ICQoJ2hlYWRlcicpLmhlaWdodCgpICsgMTAwOyANCiAgICANCiAgICAvLyogTmF2YmFyIEZpeGVkICANCiAgICBmdW5jdGlvbiBuYXZiYXJGaXhlZCgpew0KICAgICAgICBpZiAoICQoJ2hlYWRlcicpLmxlbmd0aCApeyANCiAgICAgICAgICAgICQod2luZG93KS5zY3JvbGwoZnVuY3Rpb24oKSB7DQogICAgICAgICAgICAgICAgdmFyIHNjcm9sbCA9ICQod2luZG93KS5zY3JvbGxUb3AoKTsgICANCiAgICAgICAgICAgICAgICBpZiAoc2Nyb2xsID49IG5hdl9vZmZzZXRfdG9wKSB7DQogICAgICAgICAgICAgICAgICAgICQoImhlYWRlciIpLmFkZENsYXNzKCJuYXZiYXJfZml4ZWQiKTsNCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICAkKCJoZWFkZXIiKS5yZW1vdmVDbGFzcygibmF2YmFyX2ZpeGVkIik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQogICAgICAgIH07DQogICAgfTsNCiAgICBuYXZiYXJGaXhlZCgpOw0KICAgIA0KICAgIC8qLS0tLS0tLSBzZWFyY2ggZm9ybSBqcyAtLS0tLS0tKi8NCiAgICAkKCcuc2VhcmNoX2Ryb3Bkb3duIGEnKS5vbignY2xpY2snLCBmdW5jdGlvbigpew0KICAgICAgICBpZiggJCh0aGlzKS5wYXJlbnQoKS5oYXNDbGFzcygnb3BlbicpICl7DQogICAgICAgICAgICAkKHRoaXMpLnBhcmVudCgpLnJlbW92ZUNsYXNzKCdvcGVuJykNCiAgICAgICAgfQ0KICAgICAgICBlbHNlew0KICAgICAgICAgICAgJCh0aGlzKS5wYXJlbnQoKS5hZGRDbGFzcygnb3BlbicpDQogICAgICAgICAgICAkKCcub2ZmY2FudmFzX2Nsb3NlcicpLmFkZENsYXNzKCdzaG93JykNCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gZmFsc2UNCiAgICB9KTsNCiAgICANCiAgICANCiAgICAvKiBNYWluIFNsaWRlciBqcyAqLw0KICAgIGZ1bmN0aW9uIG1haW5fc2xpZGVyKCl7DQogICAgICAgIGlmICggJCgnI21haW5fc2xpZGVyJykubGVuZ3RoICl7DQogICAgICAgICAgICAkKCIjbWFpbl9zbGlkZXIiKS5yZXZvbHV0aW9uKHsNCiAgICAgICAgICAgICAgICBzbGlkZXJUeXBlOiJzdGFuZGFyZCIsDQogICAgICAgICAgICAgICAgc2xpZGVyTGF5b3V0OiJmdWxsd2lkdGgiLA0KICAgICAgICAgICAgICAgIGRpc2FibGVQcm9ncmVzc0Jhcjoib24iLA0KICAgICAgICAgICAgICAgIGRvdHRlZE92ZXJsYXk6Im5vbmUiLA0KICAgICAgICAgICAgICAgIGRlbGF5OjUwMDAsDQogICAgICAgICAgICAgICAgbmF2aWdhdGlvbjogew0KICAgICAgICAgICAgICAgICAgICB0b3VjaDp7DQoJCQkJCQl0b3VjaGVuYWJsZWQ6Im9uIg0KCQkJCQl9LA0KICAgICAgICAgICAgICAgICAgICBhcnJvd3M6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiJ6ZXVzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZTp0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgaGlkZV9vbm1vYmlsZTp0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgaGlkZV91bmRlcjo3ODAsDQogICAgICAgICAgICAgICAgICAgICAgICBoaWRlX29ubGVhdmU6dHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfZGVsYXk6MjAwLA0KICAgICAgICAgICAgICAgICAgICAgICAgaGlkZV9kZWxheV9tb2JpbGU6MTIwMCwNCiAgICAgICAgICAgICAgICAgICAgICAgIHRtcDonPGRpdiBjbGFzcz0idHAtdGl0bGUtd3JhcCI+ICAJPGRpdiBjbGFzcz0idHAtYXJyLWltZ2hvbGRlciI+PC9kaXY+IDwvZGl2PicsDQogICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaF9hbGlnbjogImxlZnQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZfYWxpZ246ICJjZW50ZXIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfb2Zmc2V0OiAxNSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2X29mZnNldDogMA0KICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaF9hbGlnbjogInJpZ2h0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2X2FsaWduOiAiY2VudGVyIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoX29mZnNldDogMTUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgdl9vZmZzZXQ6IDANCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgcmVzcG9uc2l2ZUxldmVsczpbMTI0MCwxMTk5LDk5MSw3NjcsNTc2XSwNCiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5TGV2ZWxzOlsxMjQwLDExOTksOTkxLDc2Nyw1NzZdLA0KICAgICAgICAgICAgICAgIGdyaWR3aWR0aDpbMTE3MCw5NjAsNzAwLDUwMCwyOTBdLA0KICAgICAgICAgICAgICAgIGdyaWRoZWlnaHQ6Wzg0MCw4MDAsODAwLDcwMCw2NTBdLA0KICAgICAgICAgICAgICAgIGxhenlUeXBlOiJub25lIiwNCiAgICAgICAgICAgICAgICBwYXJhbGxheDogew0KICAgICAgICAgICAgICAgICAgICB0eXBlOiJtb3VzZSIsDQogICAgICAgICAgICAgICAgICAgIG9yaWdvOiJzbGlkZXJjZW50ZXIiLA0KICAgICAgICAgICAgICAgICAgICBzcGVlZDoyMDAwLA0KICAgICAgICAgICAgICAgICAgICBzcGVlZGJnOjAsDQogICAgICAgICAgICAgICAgICAgIHNwZWVkbHM6MCwNCiAgICAgICAgICAgICAgICAgICAgbGV2ZWxzOlsyLDMsNCw1LDYsNywxMiwxNiwxMCw1MCw0Nyw0OCw0OSw1MCw1MSw1NV0sDQogICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICBzaGFkb3c6MCwNCiAgICAgICAgICAgICAgICBzcGlubmVyOiJ0cnVlIiwNCiAgICAgICAgICAgICAgICBzdG9wTG9vcDoidHJ1ZSIsDQogICAgICAgICAgICAgICAgc3RvcEFmdGVyTG9vcHM6LTEsDQogICAgICAgICAgICAgICAgc3RvcEF0U2xpZGU6LTEsDQogICAgICAgICAgICAgICAgc2h1ZmZsZToiZmFsc2UiLA0KICAgICAgICAgICAgICAgIGF1dG9IZWlnaHQ6Im9mZiIsDQogICAgICAgICAgICAgICAgaGlkZVRodW1ic09uTW9iaWxlOiJvZmYiLA0KICAgICAgICAgICAgICAgIGhpZGVTbGlkZXJBdExpbWl0OjAsDQogICAgICAgICAgICAgICAgaGlkZUNhcHRpb25BdExpbWl0OjAsDQogICAgICAgICAgICAgICAgaGlkZUFsbENhcHRpb25BdExpbG1pdDowLA0KICAgICAgICAgICAgICAgIHN0YXJ0V2l0aFNsaWRlOjAsDQogICAgICAgICAgICAgICAgZGVidWdNb2RlOmZhbHNlLA0KICAgICAgICAgICAgICAgIGZhbGxiYWNrczogew0KICAgICAgICAgICAgICAgICAgICBzaW1wbGlmeUFsbDoib2ZmIiwNCiAgICAgICAgICAgICAgICAgICAgbmV4dFNsaWRlT25XaW5kb3dGb2N1czoib2ZmIiwNCiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZUZvY3VzTGlzdGVuZXI6ZmFsc2UsDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSkNCiAgICAgICAgfQ0KICAgIH07DQogICAgbWFpbl9zbGlkZXIoKTsNCiAgICANCiAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KICAgIC8qICBjbGllbnQgU2xpZGVyDQogICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCiAgICBmdW5jdGlvbiBjbGllbnRfc2xpZGVycygpew0KICAgICAgICBpZiAoICQoJy5jbGllbnRzX3NsaWRlcicpLmxlbmd0aCApew0KICAgICAgICAgICAgJCgnLmNsaWVudHNfc2xpZGVyJykub3dsQ2Fyb3VzZWwoew0KICAgICAgICAgICAgICAgIGxvb3A6dHJ1ZSwNCiAgICAgICAgICAgICAgICBtYXJnaW46IDMwLA0KICAgICAgICAgICAgICAgIGl0ZW1zOiA1LA0KICAgICAgICAgICAgICAgIG5hdjpmYWxzZSwNCiAgICAgICAgICAgICAgICBhdXRvcGxheTogdHJ1ZSwNCiAgICAgICAgICAgICAgICBzbWFydFNwZWVkOiAxNTAwLA0KICAgICAgICAgICAgICAgIGRvdHM6ZmFsc2UsDQogICAgICAgICAgICAgICAgcmVzcG9uc2l2ZUNsYXNzOiB0cnVlLA0KICAgICAgICAgICAgICAgIHJlc3BvbnNpdmU6IHsNCiAgICAgICAgICAgICAgICAgICAgMDogew0KICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IDEsDQogICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgIDQ4MDogew0KICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IDIsDQogICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgIDcwMDogew0KICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IDQsDQogICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgIDk5Mjogew0KICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IDUsDQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KQ0KICAgICAgICB9DQogICAgfQ0KICAgIGNsaWVudF9zbGlkZXJzKCk7DQogICAgDQogICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCiAgICAvKiAgZm9ydW0gU2xpZGVyDQogICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCiAgICBmdW5jdGlvbiBmb3J1bV9zbGlkZXJzKCl7DQogICAgICAgIGlmICggJCgnLmZvcnVtc19zbGlkZXInKS5sZW5ndGggKXsNCiAgICAgICAgICAgICQoJy5mb3J1bXNfc2xpZGVyJykub3dsQ2Fyb3VzZWwoew0KICAgICAgICAgICAgICAgIGxvb3A6dHJ1ZSwNCiAgICAgICAgICAgICAgICBtYXJnaW46IDMwLA0KICAgICAgICAgICAgICAgIGl0ZW1zOiA0LA0KICAgICAgICAgICAgICAgIG5hdjpmYWxzZSwNCiAgICAgICAgICAgICAgICBhdXRvcGxheTogdHJ1ZSwNCiAgICAgICAgICAgICAgICBzbWFydFNwZWVkOiAxNTAwLA0KICAgICAgICAgICAgICAgIGRvdHM6dHJ1ZSwNCiAgICAgICAgICAgICAgICByZXNwb25zaXZlQ2xhc3M6IHRydWUsDQogICAgICAgICAgICAgICAgcmVzcG9uc2l2ZTogew0KICAgICAgICAgICAgICAgICAgICAwOiB7DQogICAgICAgICAgICAgICAgICAgICAgICBpdGVtczogMSwNCiAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgNDgwOiB7DQogICAgICAgICAgICAgICAgICAgICAgICBpdGVtczogMiwNCiAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgNzAwOiB7DQogICAgICAgICAgICAgICAgICAgICAgICBpdGVtczogMywNCiAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgOTkyOiB7DQogICAgICAgICAgICAgICAgICAgICAgICBpdGVtczogNCwNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pDQogICAgICAgIH0NCiAgICB9DQogICAgZm9ydW1fc2xpZGVycygpOw0KICAgIA0KICAgIA0KICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQogICAgLyogIHRlc3RpbW9uaWFsX3NsaWRlcg0KICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQogICAgZnVuY3Rpb24gdGVzdGltb25pYWxfc2xpZGVycygpew0KICAgICAgICBpZiAoICQoJy50ZXN0aW1vbmlhbF9zbGlkZXInKS5sZW5ndGggKXsNCiAgICAgICAgICAgICQoJy50ZXN0aW1vbmlhbF9zbGlkZXInKS5vd2xDYXJvdXNlbCh7DQogICAgICAgICAgICAgICAgbG9vcDp0cnVlLA0KICAgICAgICAgICAgICAgIG1hcmdpbjogMzAsDQogICAgICAgICAgICAgICAgaXRlbXM6IDIsDQogICAgICAgICAgICAgICAgbmF2OmZhbHNlLA0KICAgICAgICAgICAgICAgIGF1dG9wbGF5OiB0cnVlLA0KICAgICAgICAgICAgICAgIHNtYXJ0U3BlZWQ6IDE1MDAsDQogICAgICAgICAgICAgICAgZG90czp0cnVlLA0KICAgICAgICAgICAgICAgIHJlc3BvbnNpdmVDbGFzczogdHJ1ZSwNCiAgICAgICAgICAgICAgICByZXNwb25zaXZlOiB7DQogICAgICAgICAgICAgICAgICAgIDA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zOiAxLA0KICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICA3MDA6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zOiAxLA0KICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICA5OTE6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zOiAyLA0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSkNCiAgICAgICAgfQ0KICAgIH0NCiAgICB0ZXN0aW1vbmlhbF9zbGlkZXJzKCk7DQogICAgDQogICAgLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCgluaWNlIHNlbGVjdG9yIGpzDQoJPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8NCiAgICBmdW5jdGlvbiBzZWxlY3Rvcl9uaWNlKCl7DQogICAgICAgICQoJ3NlbGVjdCcpLm5pY2VTZWxlY3QoKTsNCiAgICB9DQogICAgc2VsZWN0b3JfbmljZSgpOw0KICAgIA0KICAgIA0KICAgIC8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQoJdmlkZW8tcG9wDQoJPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8NCiAgICAkKCcudmlkZW8tcG9wJykubWFnbmlmaWNQb3B1cCh7DQogICAgICAgIGRpc2FibGVPbjogNzAwLA0KICAgICAgICB0eXBlOiAnaWZyYW1lJywNCiAgICAgICAgbWFpbkNsYXNzOiAnbWZwLWZhZGUnLA0KICAgICAgICByZW1vdmFsRGVsYXk6IDE2MCwNCiAgICAgICAgcHJlbG9hZGVyOiBmYWxzZSwNCiAgICAgICAgZml4ZWRDb250ZW50UG9zOiBmYWxzZQ0KICAgIH0pOw0KICAgIA0KICAgIA0KICAgIC8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQoJVGlja2VyDQoJPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8NCgkkKCcjdGlja2VyJykubWFycXVlZSh7DQoJCXBhdXNlT25Ib3ZlcjogdHJ1ZSwNCgkJZHVwbGljYXRlZDogdHJ1ZSwNCgkJZHVyYXRpb246IDE4MDAwLA0KCQlnYXA6IDAsDQoJCXN0YXJ0VmlzaWJsZTogdHJ1ZQ0KCX0pOw0KICAgIA0KICAgIC8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQoJQ2xvY2sgVGltZXINCgk9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLw0KICAgIHZhciBjbG9jazsNCiAgICBpZigkKCIuY2xvY2siKS5sZW5ndGggPiAwKSB7DQogICAgICAgIC8vIEdyYWIgdGhlIGN1cnJlbnQgZGF0ZQ0KICAgICAgICB2YXIgY3VycmVudERhdGUgPSBuZXcgRGF0ZSgpOw0KDQogICAgICAgIC8vIFNldCBzb21lIGRhdGUgaW4gdGhlIHBhc3QuIEluIHRoaXMgY2FzZSwgaXQncyBhbHdheXMgYmVlbiBzaW5jZSBKYW4gMQ0KICAgICAgICB2YXIgcGFzdERhdGUgID0gbmV3IERhdGUoY3VycmVudERhdGUuZ2V0RnVsbFllYXIoKSwgMCwgMSk7DQoNCiAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBkaWZmZXJlbmNlIGluIHNlY29uZHMgYmV0d2VlbiB0aGUgZnV0dXJlIGFuZCBjdXJyZW50IGRhdGUNCiAgICAgICAgdmFyIGRpZmYgPSBjdXJyZW50RGF0ZS5nZXRUaW1lKCkgLyAxMDAwIC0gcGFzdERhdGUuZ2V0VGltZSgpIC8gMTAwMDsNCg0KICAgICAgICAvLyBJbnN0YW50aWF0ZSBhIGNvdXRkb3duIEZsaXBDbG9jaw0KICAgICAgICBjbG9jayA9ICQoJy5jbG9jaycpLkZsaXBDbG9jayhkaWZmLCB7DQogICAgICAgICAgICBjbG9ja0ZhY2U6ICdEYWlseUNvdW50ZXInDQogICAgICAgIH0pOw0KICAgIH07DQogICAgDQogICAgDQogICAgLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCgltYXJrZXQgZGF0YSBqcw0KCT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovDQogICAgKGZ1bmN0aW9uKGIsaSx0LEMsTyxJLE4pIHsNCiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLGZ1bmN0aW9uKCkgew0KICAgICAgICAgIGlmKGIuZ2V0RWxlbWVudEJ5SWQoQykpcmV0dXJuOw0KICAgICAgICAgIEk9Yi5jcmVhdGVFbGVtZW50KGkpLE49Yi5nZXRFbGVtZW50c0J5VGFnTmFtZShpKVswXTsNCiAgICAgICAgICBJLnNyYz10O0kuaWQ9QztOLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKEksIE4pOw0KICAgICAgICB9LGZhbHNlKQ0KICAgIH0pKGRvY3VtZW50LCdzY3JpcHQnLCdodHRwczovL3dpZGdldHMuYml0Y29pbi5jb20vd2lkZ2V0LmpzJywnYnRjd2RndCcpOw0KICAgIA0KICAgIChmdW5jdGlvbihkLCBzLCBpZCkgew0KICAgICAgIHZhciBqcywgcGpzID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZShzKVswXTsgaWYgKGQuZ2V0RWxlbWVudEJ5SWQoaWQpKSByZXR1cm47IGpzID0gZC5jcmVhdGVFbGVtZW50KHMpOyBqcy5pZCA9IGlkOyBqcy5zcmMgPSAiLy93d3cudGlja2NvdW50ZXIuY29tL3N0YXRpYy9qcy9sb2FkZXIuanMiOyBwanMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoanMsIHBqcyk7IA0KICAgfShkb2N1bWVudCwgInNjcmlwdCIsICJ0aWNrY291bnRlci1zZGsiKSk7DQogICAgDQogICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCiAgICAvKiAgR29vZ2xlIG1hcCBqcw0KICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQogICAgDQogICAgaWYgKCAkKCcjbWFwQm94JykubGVuZ3RoICl7DQogICAgICAgIHZhciAkbGF0ID0gJCgnI21hcEJveCcpLmRhdGEoJ2xhdCcpOw0KICAgICAgICB2YXIgJGxvbiA9ICQoJyNtYXBCb3gnKS5kYXRhKCdsb24nKTsNCiAgICAgICAgdmFyICR6b29tID0gJCgnI21hcEJveCcpLmRhdGEoJ3pvb20nKTsNCiAgICAgICAgdmFyICRtYXJrZXIgPSAkKCcjbWFwQm94JykuZGF0YSgnbWFya2VyJyk7DQogICAgICAgIHZhciAkaW5mbyA9ICQoJyNtYXBCb3gnKS5kYXRhKCdpbmZvJyk7DQogICAgICAgIHZhciAkbWFya2VyTGF0ID0gJCgnI21hcEJveCcpLmRhdGEoJ21sYXQnKTsNCiAgICAgICAgdmFyICRtYXJrZXJMb24gPSAkKCcjbWFwQm94JykuZGF0YSgnbWxvbicpOw0KICAgICAgICB2YXIgbWFwID0gbmV3IEdNYXBzKHsNCiAgICAgICAgZWw6ICcjbWFwQm94JywNCiAgICAgICAgbGF0OiAkbGF0LA0KICAgICAgICBsbmc6ICRsb24sDQogICAgICAgIHNjcm9sbHdoZWVsOiBmYWxzZSwNCiAgICAgICAgc2NhbGVDb250cm9sOiB0cnVlLA0KICAgICAgICBzdHJlZXRWaWV3Q29udHJvbDogZmFsc2UsDQogICAgICAgIHBhbkNvbnRyb2w6IHRydWUsDQogICAgICAgIGRpc2FibGVEb3VibGVDbGlja1pvb206IHRydWUsDQogICAgICAgIG1hcFR5cGVDb250cm9sOiBmYWxzZSwNCiAgICAgICAgem9vbTogJHpvb20sDQogICAgICAgICAgICBzdHlsZXM6IFsNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICJmZWF0dXJlVHlwZSI6ICJ3YXRlciIsDQogICAgICAgICAgICAgICAgICAgICJlbGVtZW50VHlwZSI6ICJnZW9tZXRyeS5maWxsIiwNCiAgICAgICAgICAgICAgICAgICAgInN0eWxlcnMiOiBbDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbG9yIjogIiNkY2RmZTYiDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgImZlYXR1cmVUeXBlIjogInRyYW5zaXQiLA0KICAgICAgICAgICAgICAgICAgICAic3R5bGVycyI6IFsNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29sb3IiOiAiIzgwODA4MCINCiAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgInZpc2liaWxpdHkiOiAib2ZmIg0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBdDQogICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICJmZWF0dXJlVHlwZSI6ICJyb2FkLmhpZ2h3YXkiLA0KICAgICAgICAgICAgICAgICAgICAiZWxlbWVudFR5cGUiOiAiZ2VvbWV0cnkuc3Ryb2tlIiwNCiAgICAgICAgICAgICAgICAgICAgInN0eWxlcnMiOiBbDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgInZpc2liaWxpdHkiOiAib24iDQogICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb2xvciI6ICIjZGNkZmU2Ig0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBdDQogICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICJmZWF0dXJlVHlwZSI6ICJyb2FkLmhpZ2h3YXkiLA0KICAgICAgICAgICAgICAgICAgICAiZWxlbWVudFR5cGUiOiAiZ2VvbWV0cnkuZmlsbCIsDQogICAgICAgICAgICAgICAgICAgICJzdHlsZXJzIjogWw0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb2xvciI6ICIjZmZmZmZmIg0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBdDQogICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICJmZWF0dXJlVHlwZSI6ICJyb2FkLmxvY2FsIiwNCiAgICAgICAgICAgICAgICAgICAgImVsZW1lbnRUeXBlIjogImdlb21ldHJ5LmZpbGwiLA0KICAgICAgICAgICAgICAgICAgICAic3R5bGVycyI6IFsNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJpbGl0eSI6ICJvbiINCiAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbG9yIjogIiNmZmZmZmYiDQogICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ3ZWlnaHQiOiAxLjgNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgXQ0KICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAiZmVhdHVyZVR5cGUiOiAicm9hZC5sb2NhbCIsDQogICAgICAgICAgICAgICAgICAgICJlbGVtZW50VHlwZSI6ICJnZW9tZXRyeS5zdHJva2UiLA0KICAgICAgICAgICAgICAgICAgICAic3R5bGVycyI6IFsNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29sb3IiOiAiI2Q3ZDdkNyINCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgXQ0KICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAiZmVhdHVyZVR5cGUiOiAicG9pIiwNCiAgICAgICAgICAgICAgICAgICAgImVsZW1lbnRUeXBlIjogImdlb21ldHJ5LmZpbGwiLA0KICAgICAgICAgICAgICAgICAgICAic3R5bGVycyI6IFsNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJpbGl0eSI6ICJvbiINCiAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbG9yIjogIiNlYmViZWIiDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgImZlYXR1cmVUeXBlIjogImFkbWluaXN0cmF0aXZlIiwNCiAgICAgICAgICAgICAgICAgICAgImVsZW1lbnRUeXBlIjogImdlb21ldHJ5IiwNCiAgICAgICAgICAgICAgICAgICAgInN0eWxlcnMiOiBbDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbG9yIjogIiNhN2E3YTciDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgImZlYXR1cmVUeXBlIjogInJvYWQuYXJ0ZXJpYWwiLA0KICAgICAgICAgICAgICAgICAgICAiZWxlbWVudFR5cGUiOiAiZ2VvbWV0cnkuZmlsbCIsDQogICAgICAgICAgICAgICAgICAgICJzdHlsZXJzIjogWw0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb2xvciI6ICIjZmZmZmZmIg0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBdDQogICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICJmZWF0dXJlVHlwZSI6ICJyb2FkLmFydGVyaWFsIiwNCiAgICAgICAgICAgICAgICAgICAgImVsZW1lbnRUeXBlIjogImdlb21ldHJ5LmZpbGwiLA0KICAgICAgICAgICAgICAgICAgICAic3R5bGVycyI6IFsNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29sb3IiOiAiI2ZmZmZmZiINCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgXQ0KICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAiZmVhdHVyZVR5cGUiOiAibGFuZHNjYXBlIiwNCiAgICAgICAgICAgICAgICAgICAgImVsZW1lbnRUeXBlIjogImdlb21ldHJ5LmZpbGwiLA0KICAgICAgICAgICAgICAgICAgICAic3R5bGVycyI6IFsNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJpbGl0eSI6ICJvbiINCiAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbG9yIjogIiNlZmVmZWYiDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgImZlYXR1cmVUeXBlIjogInJvYWQiLA0KICAgICAgICAgICAgICAgICAgICAiZWxlbWVudFR5cGUiOiAibGFiZWxzLnRleHQuZmlsbCIsDQogICAgICAgICAgICAgICAgICAgICJzdHlsZXJzIjogWw0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb2xvciI6ICIjNjk2OTY5Ig0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBdDQogICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICJmZWF0dXJlVHlwZSI6ICJhZG1pbmlzdHJhdGl2ZSIsDQogICAgICAgICAgICAgICAgICAgICJlbGVtZW50VHlwZSI6ICJsYWJlbHMudGV4dC5maWxsIiwNCiAgICAgICAgICAgICAgICAgICAgInN0eWxlcnMiOiBbDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgInZpc2liaWxpdHkiOiAib24iDQogICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb2xvciI6ICIjNzM3MzczIg0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBdDQogICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICJmZWF0dXJlVHlwZSI6ICJwb2kiLA0KICAgICAgICAgICAgICAgICAgICAiZWxlbWVudFR5cGUiOiAibGFiZWxzLmljb24iLA0KICAgICAgICAgICAgICAgICAgICAic3R5bGVycyI6IFsNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJpbGl0eSI6ICJvZmYiDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgImZlYXR1cmVUeXBlIjogInBvaSIsDQogICAgICAgICAgICAgICAgICAgICJlbGVtZW50VHlwZSI6ICJsYWJlbHMiLA0KICAgICAgICAgICAgICAgICAgICAic3R5bGVycyI6IFsNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJpbGl0eSI6ICJvZmYiDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgImZlYXR1cmVUeXBlIjogInJvYWQuYXJ0ZXJpYWwiLA0KICAgICAgICAgICAgICAgICAgICAiZWxlbWVudFR5cGUiOiAiZ2VvbWV0cnkuc3Ryb2tlIiwNCiAgICAgICAgICAgICAgICAgICAgInN0eWxlcnMiOiBbDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbG9yIjogIiNkNmQ2ZDYiDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgImZlYXR1cmVUeXBlIjogInJvYWQiLA0KICAgICAgICAgICAgICAgICAgICAiZWxlbWVudFR5cGUiOiAibGFiZWxzLmljb24iLA0KICAgICAgICAgICAgICAgICAgICAic3R5bGVycyI6IFsNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJpbGl0eSI6ICJvZmYiDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgIHt9LA0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgImZlYXR1cmVUeXBlIjogInBvaSIsDQogICAgICAgICAgICAgICAgICAgICJlbGVtZW50VHlwZSI6ICJnZW9tZXRyeS5maWxsIiwNCiAgICAgICAgICAgICAgICAgICAgInN0eWxlcnMiOiBbDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbG9yIjogIiNkYWRhZGEiDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICBdDQogICAgICAgIH0pOw0KICAgIH0NCn0pKGpRdWVyeSk="}},"time_used":17531,"timings":{"blocked":16537,"dns":0,"connect":0,"send":0,"wait":994,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/css/settings.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.091Z","timestamp":1785143908091,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/css/settings.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:38 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"73fb-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 7031\r\nKeep-Alive: timeout=5, max=100\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":29691,"size_decoded":7393,"mime_type":"text/css","magic":"ASCII text, with very long lines (29318), with CRLF line terminators","md5":"d821d257b61e71a588615b18c854a256","sha1":"98f387b2afa43985ca16d8f447adf01719ed7efd","sha256":"e1461d228fa04343a56d4c43371a142fc4d9a7c579d0cd02866cf554acca3044","sha512":"57fc45f3325c407de11ae46232a89ebbde3fdbe1c703b93a30014ffd3b8e16e2ce7fc58f650c03ad17cdf8f7ab1baa13500d97b020982b86487a3261b1a08108","ssdeep":"384:ATx/Mjw4rLT4ILX8sSeUiOWC7G7C5+TU1Zz80id48fq:AdMrLTPX8sSeFOWCy7wmU1h8D28C","tlshash":"d0d2db70f98975f877a7c22563c0b7adf02ad122e6520d6ef02f72f986d3086446e658","first_seen":"2025-10-06T17:20:26.918721Z","last_seen":"2026-07-27T09:20:18.437783Z","times_seen":11,"resource_available":false,"data":"LyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQotCVJldm9sdXRpb24gU2xpZGVyIDUuMCBEZWZhdWx0IFN0eWxlIFNldHRpbmdzIC0NCg0KU2NyZWVuIFN0eWxlc2hlZXQNCg0KdmVyc2lvbjogICAJNS4zLjENCmRhdGU6ICAgICAgCTA3LzEyLzE1DQphdXRob3I6CQl0aGVtZXB1bmNoDQplbWFpbDogICAgIAlpbmZvQHRoZW1lcHVuY2guY29tDQp3ZWJzaXRlOiAgIAlodHRwOi8vd3d3LnRoZW1lcHVuY2guY29tDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCiNkZWJ1bmdjb250cm9sbHMsLmRlYnVndGltZWxpbmV7d2lkdGg6MTAwJTtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnJldl9jb2x1bW4sLnJldl9jb2x1bW4gLnRwLXBhcmFsbGF4LXdyYXAsLnRwLXN2Zy1sYXllciBzdmd7dmVydGljYWwtYWxpZ246dG9wfSNkZWJ1bmdjb250cm9sbHN7ei1pbmRleDoxMDAwMDA7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjA7aGVpZ2h0OmF1dG87YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC42KTtwYWRkaW5nOjEwcHh9LmRlYnVndGltZWxpbmV7aGVpZ2h0OjEwcHg7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLWJvdHRvbTozcHg7ZGlzcGxheTpub25lO3doaXRlLXNwYWNlOm5vd3JhcH0uZGVidWd0aW1lbGluZTpob3ZlcntoZWlnaHQ6MTVweH0udGhlX3RpbWVsaW5lX3Rlc3RlcntiYWNrZ3JvdW5kOiNlNzRjM2M7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO2hlaWdodDoxMDAlO3dpZHRoOjB9LmRlYnVndGltZWxpbmUudGxfc2xpZGUgLnRoZV90aW1lbGluZV90ZXN0ZXJ7YmFja2dyb3VuZDojZjM5YzEyfS5kZWJ1Z3RpbWVsaW5lLnRsX2ZyYW1lIC50aGVfdGltZWxpbmVfdGVzdGVye2JhY2tncm91bmQ6IzM0OThkYn0uZGVidWd0aW1saW5lX3R4dHtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXNpemU6N3B4O3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MTBweDt0b3A6MDt3aGl0ZS1zcGFjZTpub3dyYXA7bGluZS1oZWlnaHQ6MTBweH0ucnRse2RpcmVjdGlvbjpydGx9QGZvbnQtZmFjZXtmb250LWZhbWlseTpyZXZpY29ucztzcmM6dXJsKC4uL2ZvbnRzL3Jldmljb25zL3Jldmljb25zOTBjNjkwYzY5MGM2LmVvdD81NTEwODg4KTtzcmM6dXJsKC4uL2ZvbnRzL3Jldmljb25zL3Jldmljb25zOTBjNjkwYzY5MGM2LmVvdD81NTEwODg4I2llZml4KSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksdXJsKC4uL2ZvbnRzL3Jldmljb25zL3Jldmljb25zOTBjNjkwYzY5MGM2LndvZmY/NTUxMDg4OCkgZm9ybWF0KCd3b2ZmJyksdXJsKC4uL2ZvbnRzL3Jldmljb25zL3Jldmljb25zOTBjNjkwYzY5MGM2LnR0Zj81NTEwODg4KSBmb3JtYXQoJ3RydWV0eXBlJyksdXJsKC4uL2ZvbnRzL3Jldmljb25zL3Jldmljb25zOTBjNjkwYzY5MGM2LnN2Zz81NTEwODg4I3Jldmljb25zKSBmb3JtYXQoJ3N2ZycpO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0eWxlOm5vcm1hbH1bY2xhc3MqPSIgcmV2aWNvbi0iXTpiZWZvcmUsW2NsYXNzXj1yZXZpY29uLV06YmVmb3Jle2ZvbnQtZmFtaWx5OnJldmljb25zO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtzcGVhazpub25lO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3dpZHRoOjFlbTttYXJnaW4tcmlnaHQ6LjJlbTt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXZhcmlhbnQ6bm9ybWFsO3RleHQtdHJhbnNmb3JtOm5vbmU7bGluZS1oZWlnaHQ6MWVtO21hcmdpbi1sZWZ0Oi4yZW19LnJldmljb24tc2VhcmNoLTE6YmVmb3Jle2NvbnRlbnQ6J1xlODAyJ30ucmV2aWNvbi1wZW5jaWwtMTpiZWZvcmV7Y29udGVudDonXGU4MzEnfS5yZXZpY29uLXBpY3R1cmUtMTpiZWZvcmV7Y29udGVudDonXGU4MDMnfS5yZXZpY29uLWNhbmNlbDpiZWZvcmV7Y29udGVudDonXGU4MGEnfS5yZXZpY29uLWluZm8tY2lyY2xlZDpiZWZvcmV7Y29udGVudDonXGU4MGYnfS5yZXZpY29uLXRyYXNoOmJlZm9yZXtjb250ZW50OidcZTgwMSd9LnJldmljb24tbGVmdC1kaXI6YmVmb3Jle2NvbnRlbnQ6J1xlODE3J30ucmV2aWNvbi1yaWdodC1kaXI6YmVmb3Jle2NvbnRlbnQ6J1xlODE4J30ucmV2aWNvbi1kb3duLW9wZW46YmVmb3Jle2NvbnRlbnQ6J1xlODNiJ30ucmV2aWNvbi1sZWZ0LW9wZW46YmVmb3Jle2NvbnRlbnQ6J1xlODE5J30ucmV2aWNvbi1yaWdodC1vcGVuOmJlZm9yZXtjb250ZW50OidcZTgxYSd9LnJldmljb24tYW5nbGUtbGVmdDpiZWZvcmV7Y29udGVudDonXGU4MjAnfS5yZXZpY29uLWFuZ2xlLXJpZ2h0OmJlZm9yZXtjb250ZW50OidcZTgxZCd9LnJldmljb24tbGVmdC1iaWc6YmVmb3Jle2NvbnRlbnQ6J1xlODFmJ30ucmV2aWNvbi1yaWdodC1iaWc6YmVmb3Jle2NvbnRlbnQ6J1xlODFlJ30ucmV2aWNvbi1tYWdpYzpiZWZvcmV7Y29udGVudDonXGU4MDcnfS5yZXZpY29uLXBpY3R1cmU6YmVmb3Jle2NvbnRlbnQ6J1xlODAwJ30ucmV2aWNvbi1leHBvcnQ6YmVmb3Jle2NvbnRlbnQ6J1xlODBiJ30ucmV2aWNvbi1jb2c6YmVmb3Jle2NvbnRlbnQ6J1xlODMyJ30ucmV2aWNvbi1sb2dpbjpiZWZvcmV7Y29udGVudDonXGU4MzMnfS5yZXZpY29uLWxvZ291dDpiZWZvcmV7Y29udGVudDonXGU4MzQnfS5yZXZpY29uLXZpZGVvOmJlZm9yZXtjb250ZW50OidcZTgwNSd9LnJldmljb24tYXJyb3ctY29tYm86YmVmb3Jle2NvbnRlbnQ6J1xlODI3J30ucmV2aWNvbi1sZWZ0LW9wZW4tMTpiZWZvcmV7Y29udGVudDonXGU4MmEnfS5yZXZpY29uLXJpZ2h0LW9wZW4tMTpiZWZvcmV7Y29udGVudDonXGU4MmInfS5yZXZpY29uLWxlZnQtb3Blbi1taW5pOmJlZm9yZXtjb250ZW50OidcZTgyMid9LnJldmljb24tcmlnaHQtb3Blbi1taW5pOmJlZm9yZXtjb250ZW50OidcZTgyMyd9LnJldmljb24tbGVmdC1vcGVuLWJpZzpiZWZvcmV7Y29udGVudDonXGU4MjQnfS5yZXZpY29uLXJpZ2h0LW9wZW4tYmlnOmJlZm9yZXtjb250ZW50OidcZTgyNSd9LnJldmljb24tbGVmdDpiZWZvcmV7Y29udGVudDonXGU4MzYnfS5yZXZpY29uLXJpZ2h0OmJlZm9yZXtjb250ZW50OidcZTgyNid9LnJldmljb24tY2N3OmJlZm9yZXtjb250ZW50OidcZTgwOCd9LnJldmljb24tYXJyb3dzLWNjdzpiZWZvcmV7Y29udGVudDonXGU4MDYnfS5yZXZpY29uLXBhbGV0dGU6YmVmb3Jle2NvbnRlbnQ6J1xlODI5J30ucmV2aWNvbi1saXN0LWFkZDpiZWZvcmV7Y29udGVudDonXGU4MGMnfS5yZXZpY29uLWRvYzpiZWZvcmV7Y29udGVudDonXGU4MDknfS5yZXZpY29uLWxlZnQtb3Blbi1vdXRsaW5lOmJlZm9yZXtjb250ZW50OidcZTgyZSd9LnJldmljb24tbGVmdC1vcGVuLTI6YmVmb3Jle2NvbnRlbnQ6J1xlODJjJ30ucmV2aWNvbi1yaWdodC1vcGVuLW91dGxpbmU6YmVmb3Jle2NvbnRlbnQ6J1xlODJmJ30ucmV2aWNvbi1yaWdodC1vcGVuLTI6YmVmb3Jle2NvbnRlbnQ6J1xlODJkJ30ucmV2aWNvbi1lcXVhbGl6ZXI6YmVmb3Jle2NvbnRlbnQ6J1xlODNhJ30ucmV2aWNvbi1sYXllcnMtYWx0OmJlZm9yZXtjb250ZW50OidcZTgwNCd9LnJldmljb24tcG9wdXA6YmVmb3Jle2NvbnRlbnQ6J1xlODI4J30ucmV2X3NsaWRlcl93cmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MDt3aWR0aDoxMDAlfS5yZXZfc2xpZGVye3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OnZpc2libGV9LmVudHJ5LWNvbnRlbnQgLnJldl9zbGlkZXIgYSwucmV2X3NsaWRlciBhe2JveC1zaGFkb3c6bm9uZX0udHAtb3ZlcmZsb3ctaGlkZGVue292ZXJmbG93OmhpZGRlbiFpbXBvcnRhbnR9Lmdyb3VwX292X2hpZGRlbntvdmVyZmxvdzpoaWRkZW59LnJldl9zbGlkZXIgaW1nLC50cC1zaW1wbGVyZXNwb25zaXZlIGltZ3ttYXgtd2lkdGg6bm9uZSFpbXBvcnRhbnQ7dHJhbnNpdGlvbjpub25lO21hcmdpbjowO3BhZGRpbmc6MDtib3JkZXI6bm9uZX0ucmV2X3NsaWRlciAubm8tc2xpZGVzLXRleHR7Zm9udC13ZWlnaHQ6NzAwO3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmctdG9wOjgwcHh9LnJldl9zbGlkZXI+dWwsLnJldl9zbGlkZXI+dWw+bGksLnJldl9zbGlkZXI+dWw+bGk6YmVmb3JlLC5yZXZfc2xpZGVyX3dyYXBwZXI+dWwsLnRwLXJldnNsaWRlci1tYWludWw+bGksLnRwLXJldnNsaWRlci1tYWludWw+bGk6YmVmb3JlLC50cC1zaW1wbGVyZXNwb25zaXZlPnVsLC50cC1zaW1wbGVyZXNwb25zaXZlPnVsPmxpLC50cC1zaW1wbGVyZXNwb25zaXZlPnVsPmxpOmJlZm9yZXtsaXN0LXN0eWxlOm5vbmUhaW1wb3J0YW50O3Bvc2l0aW9uOmFic29sdXRlO21hcmdpbjowIWltcG9ydGFudDtwYWRkaW5nOjAhaW1wb3J0YW50O292ZXJmbG93LXg6dmlzaWJsZTtvdmVyZmxvdy15OnZpc2libGU7YmFja2dyb3VuZC1pbWFnZTpub25lO2JhY2tncm91bmQtcG9zaXRpb246MCAwO3RleHQtaW5kZW50OjA7dG9wOjA7bGVmdDowfS5yZXZfc2xpZGVyPnVsPmxpLC5yZXZfc2xpZGVyPnVsPmxpOmJlZm9yZSwudHAtcmV2c2xpZGVyLW1haW51bD5saSwudHAtcmV2c2xpZGVyLW1haW51bD5saTpiZWZvcmUsLnRwLXNpbXBsZXJlc3BvbnNpdmU+dWw+bGksLnRwLXNpbXBsZXJlc3BvbnNpdmU+dWw+bGk6YmVmb3Jle3Zpc2liaWxpdHk6aGlkZGVufS50cC1yZXZzbGlkZXItbWFpbnVsLC50cC1yZXZzbGlkZXItc2xpZGVzbGl7cGFkZGluZzowIWltcG9ydGFudDttYXJnaW46MCFpbXBvcnRhbnQ7bGlzdC1zdHlsZTpub25lIWltcG9ydGFudH0uZnVsbHNjcmVlbi1jb250YWluZXIsLmZ1bGx3aWR0aGJhbm5lci1jb250YWluZXJ7cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlfS5yZXZfc2xpZGVyIGxpLnRwLXJldnNsaWRlci1zbGlkZXNsaXtwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnR9LnRwLWNhcHRpb24gLnJzLXVudG9nZ2xlZC1jb250ZW50e2Rpc3BsYXk6YmxvY2t9LnRwLWNhcHRpb24gLnJzLXRvZ2dsZWQtY29udGVudHtkaXNwbGF5Om5vbmV9LnJzLXRvZ2dsZS1jb250ZW50LWFjdGl2ZS50cC1jYXB0aW9uIC5ycy10b2dnbGVkLWNvbnRlbnR7ZGlzcGxheTpibG9ja30ucnMtdG9nZ2xlLWNvbnRlbnQtYWN0aXZlLnRwLWNhcHRpb24gLnJzLXVudG9nZ2xlZC1jb250ZW50e2Rpc3BsYXk6bm9uZX0ucmV2X3NsaWRlciAuY2FwdGlvbiwucmV2X3NsaWRlciAudHAtY2FwdGlvbntwb3NpdGlvbjpyZWxhdGl2ZTt2aXNpYmlsaXR5OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7ZGlzcGxheTpibG9jazstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkIWltcG9ydGFudDt6LWluZGV4OjF9LnJldl9zbGlkZXIgLmNhcHRpb24sLnJldl9zbGlkZXIgLnRwLWNhcHRpb24sLnRwLXNpbXBsZXJlc3BvbnNpdmUgaW1ney1tb3otdXNlci1zZWxlY3Q6bm9uZTsta2h0bWwtdXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW8tdXNlci1zZWxlY3Q6bm9uZX0ucmV2X3NsaWRlciAudHAtbWFzay13cmFwIC50cC1jYXB0aW9uLC5yZXZfc2xpZGVyIC50cC1tYXNrLXdyYXAgOmxhc3QtY2hpbGQsLndwYl90ZXh0X2NvbHVtbiAucmV2X3NsaWRlciAudHAtbWFzay13cmFwIC50cC1jYXB0aW9uLC53cGJfdGV4dF9jb2x1bW4gLnJldl9zbGlkZXIgLnRwLW1hc2std3JhcCA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LnRwLXN2Zy1sYXllciBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZX0udHAtY2Fyb3VzZWwtd3JhcHBlcntjdXJzb3I6dXJsKG9wZW5oYW5kLmh0bWwpLG1vdmV9LnRwLWNhcm91c2VsLXdyYXBwZXIuZHJhZ2dlZHtjdXJzb3I6dXJsKGNsb3NlZGhhbmQuaHRtbCksbW92ZX0udHBfaW5uZXJfcGFkZGluZ3tib3gtc2l6aW5nOmJvcmRlci1ib3g7bWF4LWhlaWdodDpub25lIWltcG9ydGFudH0udHAtY2FwdGlvbi50cC1sYXllci1zZWxlY3RhYmxley1tb3otdXNlci1zZWxlY3Q6YWxsOy1raHRtbC11c2VyLXNlbGVjdDphbGw7LXdlYmtpdC11c2VyLXNlbGVjdDphbGw7LW8tdXNlci1zZWxlY3Q6YWxsfS50cC1jYXB0aW9uLnRwLWhpZGRlbi1jYXB0aW9uLC50cC1mb3JjZW5vdHZpc2libGUsLnRwLWhpZGUtcmV2c2xpZGVyLC50cC1wYXJhbGxheC13cmFwLnRwLWhpZGRlbi1jYXB0aW9ue3Zpc2liaWxpdHk6aGlkZGVuIWltcG9ydGFudDtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5yZXZfc2xpZGVyIGF1ZGlvLC5yZXZfc2xpZGVyIGVtYmVkLC5yZXZfc2xpZGVyIGlmcmFtZSwucmV2X3NsaWRlciBvYmplY3QsLnJldl9zbGlkZXIgdmlkZW97bWF4LXdpZHRoOm5vbmUhaW1wb3J0YW50fS50cC1lbGVtZW50LWJhY2tncm91bmR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDowfS5yZXZfcm93X3pvbmV7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTtsZWZ0OjA7Ym94LXNpemluZzpib3JkZXItYm94O21pbi1oZWlnaHQ6NTBweDtmb250LXNpemU6MH0ucmV2X2NvbHVtbl9pbm5lciwucmV2X3NsaWRlciAudHAtY2FwdGlvbi5yZXZfcm93e3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCUhaW1wb3J0YW50O2JveC1zaXppbmc6Ym9yZGVyLWJveH0ucmV2X3Jvd196b25lX3RvcHt0b3A6MH0ucmV2X3Jvd196b25lX21pZGRsZXt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS5yZXZfcm93X3pvbmVfYm90dG9te2JvdHRvbTowfS5yZXZfc2xpZGVyIC50cC1jYXB0aW9uLnJldl9yb3d7ZGlzcGxheTp0YWJsZTt0YWJsZS1sYXlvdXQ6Zml4ZWQ7dmVydGljYWwtYWxpZ246dG9wO2hlaWdodDphdXRvIWltcG9ydGFudDtmb250LXNpemU6MH0ucmV2X2NvbHVtbntkaXNwbGF5OnRhYmxlLWNlbGw7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OmF1dG87Ym94LXNpemluZzpib3JkZXItYm94O2ZvbnQtc2l6ZTowfS5yZXZfY29sdW1uX2lubmVye2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OmF1dG8haW1wb3J0YW50O3doaXRlLXNwYWNlOm5vcm1hbCFpbXBvcnRhbnR9LnJldl9jb2x1bW5fYmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7ei1pbmRleDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kLWNsaXA6Y29udGVudC1ib3g7Ym9yZGVyOjAgc29saWQgdHJhbnNwYXJlbnR9LnRwLWNhcHRpb24gLmJhY2tjb3JuZXIsLnRwLWNhcHRpb24gLmJhY2tjb3JuZXJ0b3AsLnRwLWNhcHRpb24gLmZyb250Y29ybmVyLC50cC1jYXB0aW9uIC5mcm9udGNvcm5lcnRvcHtoZWlnaHQ6MDt0b3A6MDt3aWR0aDowO3Bvc2l0aW9uOmFic29sdXRlfS5yZXZfY29sdW1uX2lubmVyIC50cC1sb29wLXdyYXAsLnJldl9jb2x1bW5faW5uZXIgLnRwLW1hc2std3JhcCwucmV2X2NvbHVtbl9pbm5lciAudHAtcGFyYWxsYXgtd3JhcHt0ZXh0LWFsaWduOmluaGVyaXR9LnJldl9jb2x1bW5faW5uZXIgLnRwLW1hc2std3JhcHtkaXNwbGF5OmlubGluZS1ibG9ja30ucmV2X2NvbHVtbl9pbm5lciAudHAtcGFyYWxsYXgtd3JhcCwucmV2X2NvbHVtbl9pbm5lciAudHAtcGFyYWxsYXgtd3JhcCAudHAtbG9vcC13cmFwLC5yZXZfY29sdW1uX2lubmVyIC50cC1wYXJhbGxheC13cmFwIC50cC1tYXNrLXdyYXB7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O2xlZnQ6YXV0byFpbXBvcnRhbnQ7dG9wOmF1dG8haW1wb3J0YW50O2xpbmUtaGVpZ2h0OjB9LnRwLXZpZGVvLXBsYXktYnV0dG9uLC50cC12aWRlby1wbGF5LWJ1dHRvbiBpe2xpbmUtaGVpZ2h0OjUwcHghaW1wb3J0YW50O3ZlcnRpY2FsLWFsaWduOnRvcDt0ZXh0LWFsaWduOmNlbnRlcn0ucmV2X2NvbHVtbl9pbm5lciAucmV2X2xheWVyX2luX2NvbHVtbiwucmV2X2NvbHVtbl9pbm5lciAudHAtcGFyYWxsYXgtd3JhcCwucmV2X2NvbHVtbl9pbm5lciAudHAtcGFyYWxsYXgtd3JhcCAudHAtbG9vcC13cmFwLC5yZXZfY29sdW1uX2lubmVyIC50cC1wYXJhbGxheC13cmFwIC50cC1tYXNrLXdyYXB7dmVydGljYWwtYWxpZ246dG9wfS5yZXZfYnJlYWtfY29sdW1uc3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0ucmV2X2JyZWFrX2NvbHVtbnMgLnRwLXBhcmFsbGF4LXdyYXAucmV2X2NvbHVtbntkaXNwbGF5OmJsb2NrIWltcG9ydGFudDt3aWR0aDoxMDAlIWltcG9ydGFudH0uZnVsbHdpZHRoYmFubmVyLWNvbnRhaW5lcntvdmVyZmxvdzpoaWRkZW59LmZ1bGx3aWR0aGJhbm5lci1jb250YWluZXIgLmZ1bGx3aWR0aGFiYW5uZXJ7d2lkdGg6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZX0udHAtc3RhdGljLWxheWVyc3twb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjEwMTt0b3A6MDtsZWZ0OjB9LnRwLWNhcHRpb24gLmZyb250Y29ybmVye2JvcmRlci1sZWZ0OjQwcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJpZ2h0OjAgc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXRvcDo0MHB4IHNvbGlkICMwMEE4RkY7bGVmdDotNDBweH0udHAtY2FwdGlvbiAuYmFja2Nvcm5lcntib3JkZXItbGVmdDowIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodDo0MHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206NDBweCBzb2xpZCAjMDBBOEZGO3JpZ2h0OjB9LnRwLWNhcHRpb24gLmZyb250Y29ybmVydG9we2JvcmRlci1sZWZ0OjQwcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJpZ2h0OjAgc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTo0MHB4IHNvbGlkICMwMEE4RkY7bGVmdDotNDBweH0udHAtY2FwdGlvbiAuYmFja2Nvcm5lcnRvcHtib3JkZXItbGVmdDowIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodDo0MHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6NDBweCBzb2xpZCAjMDBBOEZGO3JpZ2h0OjB9LnRwLWxheWVyLWlubmVyLXJvdGF0aW9ue3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudH1pbWcudHAtc2xpZGVyLWFsdGVybmF0aXZlLWltYWdle3dpZHRoOjEwMCU7aGVpZ2h0OmF1dG99LmNhcHRpb24uZnVsbHNjcmVlbnZpZGVvLC5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyLC50cC1jYXB0aW9uLmNvdmVyc2NyZWVudmlkZW8sLnRwLWNhcHRpb24uZnVsbHNjcmVlbnZpZGVve3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7dG9wOjA7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlfS5ub0ZpbHRlckNsYXNze2ZpbHRlcjpub25lIWltcG9ydGFudH0ucnMtYmFja2dyb3VuZC12aWRlby1sYXllcnt2aXNpYmlsaXR5OmhpZGRlbjt6LWluZGV4OjB9LmNhcHRpb24uZnVsbHNjcmVlbnZpZGVvIGF1ZGlvLC5jYXB0aW9uLmZ1bGxzY3JlZW52aWRlbyBpZnJhbWUsLmNhcHRpb24uZnVsbHNjcmVlbnZpZGVvIHZpZGVvLC50cC1jYXB0aW9uLmZ1bGxzY3JlZW52aWRlbyBpZnJhbWUsLnRwLWNhcHRpb24uZnVsbHNjcmVlbnZpZGVvIGlmcmFtZSBhdWRpbywudHAtY2FwdGlvbi5mdWxsc2NyZWVudmlkZW8gaWZyYW1lIHZpZGVve3dpZHRoOjEwMCUhaW1wb3J0YW50O2hlaWdodDoxMDAlIWltcG9ydGFudDtkaXNwbGF5Om5vbmV9LmZ1bGxjb3ZlcmVkdmlkZW8gYXVkaW8sLmZ1bGxzY3JlZW52aWRlbyBhdWRpbyAuZnVsbGNvdmVyZWR2aWRlbyB2aWRlbywuZnVsbHNjcmVlbnZpZGVvIHZpZGVve2JhY2tncm91bmQ6IzAwMH0uZnVsbGNvdmVyZWR2aWRlbyAudHAtcG9zdGVye2JhY2tncm91bmQtcG9zaXRpb246Y2VudGVyIGNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0b3A6MDtsZWZ0OjB9LnZpZGVvaXNwbGF5aW5nIC5odG1sNXZpZCAudHAtcG9zdGVye2Rpc3BsYXk6bm9uZX0udHAtdmlkZW8tcGxheS1idXR0b257YmFja2dyb3VuZDojMDAwO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMyk7Ym9yZGVyLXJhZGl1czo1cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTtjb2xvcjojRkZGO21hcmdpbi10b3A6LTI1cHg7bWFyZ2luLWxlZnQ6LTI1cHg7Y3Vyc29yOnBvaW50ZXI7d2lkdGg6NTBweDtoZWlnaHQ6NTBweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTppbmxpbmUtYmxvY2s7ei1pbmRleDo0O29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2Utb3V0IWltcG9ydGFudH0udHAtYXVkaW8taHRtbDUgLnRwLXZpZGVvLXBsYXktYnV0dG9uLC50cC1oaWRkZW5hdWRpb3tkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS50cC1jYXB0aW9uIC5odG1sNXZpZHt3aWR0aDoxMDAlIWltcG9ydGFudDtoZWlnaHQ6MTAwJSFpbXBvcnRhbnR9LnRwLXZpZGVvLXBsYXktYnV0dG9uIGl7d2lkdGg6NTBweDtoZWlnaHQ6NTBweDtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6NDBweCFpbXBvcnRhbnR9LnJzLWZ1bGx2aWRlby1jb3ZlciwudHAtZG90dGVkb3ZlcmxheSwudHAtc2hhZG93Y292ZXJ7aGVpZ2h0OjEwMCU7dG9wOjA7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlfS50cC1jYXB0aW9uOmhvdmVyIC50cC12aWRlby1wbGF5LWJ1dHRvbntvcGFjaXR5OjE7ZGlzcGxheTpibG9ja30udHAtY2FwdGlvbiAudHAtcmV2c3RvcHtkaXNwbGF5Om5vbmU7Ym9yZGVyLWxlZnQ6NXB4IHNvbGlkICNmZmYhaW1wb3J0YW50O2JvcmRlci1yaWdodDo1cHggc29saWQgI2ZmZiFpbXBvcnRhbnQ7bWFyZ2luLXRvcDoxNXB4IWltcG9ydGFudDtsaW5lLWhlaWdodDoyMHB4IWltcG9ydGFudDt2ZXJ0aWNhbC1hbGlnbjp0b3A7Zm9udC1zaXplOjI1cHghaW1wb3J0YW50fS50cC1zZWVrLWJhciwudHAtdmlkZW8tYnV0dG9uLC50cC12b2x1bWUtYmFye291dGxpbmU6MDtsaW5lLWhlaWdodDoxMnB4O21hcmdpbjowO2N1cnNvcjpwb2ludGVyfS52aWRlb2lzcGxheWluZyAucmV2aWNvbi1yaWdodC1kaXJ7ZGlzcGxheTpub25lfS52aWRlb2lzcGxheWluZyAudHAtcmV2c3RvcHtkaXNwbGF5OmlubGluZS1ibG9ja30udmlkZW9pc3BsYXlpbmcgLnRwLXZpZGVvLXBsYXktYnV0dG9ue2Rpc3BsYXk6bm9uZX0uZnVsbGNvdmVyZWR2aWRlbyAudHAtdmlkZW8tcGxheS1idXR0b257ZGlzcGxheTpub25lIWltcG9ydGFudH0uZnVsbHNjcmVlbnZpZGVvIC5mdWxsc2NyZWVudmlkZW8gYXVkaW8sLmZ1bGxzY3JlZW52aWRlbyAuZnVsbHNjcmVlbnZpZGVvIHZpZGVve29iamVjdC1maXQ6Y29udGFpbiFpbXBvcnRhbnR9LmZ1bGxzY3JlZW52aWRlbyAuZnVsbGNvdmVyZWR2aWRlbyBhdWRpbywuZnVsbHNjcmVlbnZpZGVvIC5mdWxsY292ZXJlZHZpZGVvIHZpZGVve29iamVjdC1maXQ6Y292ZXIhaW1wb3J0YW50fS50cC12aWRlby1jb250cm9sc3twb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtwYWRkaW5nOjVweDtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcztiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIzAwMCAxMyUsIzMyMzIzMiAxMDAlKTtkaXNwbGF5OnRhYmxlO21heC13aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbjtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnJldi1idG4ucmV2LWhpZGRlbmljb24gaSwucmV2LWJ0bi5yZXYtd2l0aGljb24gaXt0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1vdXQhaW1wb3J0YW50O2ZvbnQtc2l6ZToxNXB4fS50cC1jYXB0aW9uOmhvdmVyIC50cC12aWRlby1jb250cm9sc3tvcGFjaXR5Oi45fS50cC12aWRlby1idXR0b257YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC41KTtib3JkZXI6MDtib3JkZXItcmFkaXVzOjNweDtmb250LXNpemU6MTJweDtjb2xvcjojZmZmO3BhZGRpbmc6MH0udHAtdmlkZW8tYnV0dG9uOmhvdmVye2N1cnNvcjpwb2ludGVyfS50cC12aWRlby1idXR0b24td3JhcCwudHAtdmlkZW8tc2Vlay1iYXItd3JhcCwudHAtdmlkZW8tdm9sLWJhci13cmFwe3BhZGRpbmc6MCA1cHg7ZGlzcGxheTp0YWJsZS1jZWxsO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0udHAtdmlkZW8tc2Vlay1iYXItd3JhcHt3aWR0aDo4MCV9LnRwLXZpZGVvLXZvbC1iYXItd3JhcHt3aWR0aDoyMCV9LnRwLXNlZWstYmFyLC50cC12b2x1bWUtYmFye3dpZHRoOjEwMCU7cGFkZGluZzowfS5ycy1mdWxsdmlkZW8tY292ZXJ7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOjAgMDt6LWluZGV4OjV9LmRpc2FibGVkX2xjIC50cC12aWRlby1wbGF5LWJ1dHRvbiwucnMtYmFja2dyb3VuZC12aWRlby1sYXllciBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scywucnMtYmFja2dyb3VuZC12aWRlby1sYXllciB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scywucnMtYmFja2dyb3VuZC12aWRlby1sYXllciB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1zdGFydC1wbGF5YmFjay1idXR0b257ZGlzcGxheTpub25lIWltcG9ydGFudH0udHAtYXVkaW8taHRtbDUgLnRwLXZpZGVvLWNvbnRyb2xze29wYWNpdHk6MSFpbXBvcnRhbnQ7dmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudH0udHAtZG90dGVkb3ZlcmxheXtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQ7d2lkdGg6MTAwJTt6LWluZGV4OjN9LnRwLWRvdHRlZG92ZXJsYXkudHdveHR3b3tiYWNrZ3JvdW5kOnVybCguLi9hc3NldHMvZ3JpZHRpbGUucG5nKX0udHAtZG90dGVkb3ZlcmxheS50d294dHdvd2hpdGV7YmFja2dyb3VuZDp1cmwoLi4vYXNzZXRzL2dyaWR0aWxlX3doaXRlLnBuZyl9LnRwLWRvdHRlZG92ZXJsYXkudGhyZWV4dGhyZWV7YmFja2dyb3VuZDp1cmwoLi4vYXNzZXRzL2dyaWR0aWxlXzN4My5wbmcpfS50cC1kb3R0ZWRvdmVybGF5LnRocmVleHRocmVld2hpdGV7YmFja2dyb3VuZDp1cmwoLi4vYXNzZXRzL2dyaWR0aWxlXzN4M193aGl0ZS5wbmcpfS50cC1zaGFkb3djb3Zlcnt3aWR0aDoxMDAlO2JhY2tncm91bmQ6I2ZmZjt6LWluZGV4Oi0xfS50cC1zaGFkb3cxe2JveC1zaGFkb3c6MCAxMHB4IDZweCAtNnB4IHJnYmEoMCwwLDAsLjgpfS50cC1zaGFkb3cyOmFmdGVyLC50cC1zaGFkb3cyOmJlZm9yZSwudHAtc2hhZG93MzpiZWZvcmUsLnRwLXNoYWRvdzQ6YWZ0ZXJ7ei1pbmRleDotMjtwb3NpdGlvbjphYnNvbHV0ZTtjb250ZW50OiIiO2JvdHRvbToxMHB4O2xlZnQ6MTBweDt3aWR0aDo1MCU7dG9wOjg1JTttYXgtd2lkdGg6MzAwcHg7YmFja2dyb3VuZDowIDA7Ym94LXNoYWRvdzowIDE1cHggMTBweCByZ2JhKDAsMCwwLC44KTt0cmFuc2Zvcm06cm90YXRlKC0zZGVnKX0udHAtc2hhZG93MjphZnRlciwudHAtc2hhZG93NDphZnRlcnt0cmFuc2Zvcm06cm90YXRlKDNkZWcpO3JpZ2h0OjEwcHg7bGVmdDphdXRvfS50cC1zaGFkb3c1e3Bvc2l0aW9uOnJlbGF0aXZlO2JveC1zaGFkb3c6MCAxcHggNHB4IHJnYmEoMCwwLDAsLjMpLDAgMCA0MHB4IHJnYmEoMCwwLDAsLjEpIGluc2V0fS50cC1zaGFkb3c1OmFmdGVyLC50cC1zaGFkb3c1OmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6LTI7Ym94LXNoYWRvdzowIDAgMjVweCAwIHJnYmEoMCwwLDAsLjYpO3RvcDozMCU7Ym90dG9tOjA7bGVmdDoyMHB4O3JpZ2h0OjIwcHg7Ym9yZGVyLXJhZGl1czoxMDBweC8yMHB4fS50cC1idXR0b257cGFkZGluZzo2cHggMTNweCA1cHg7Ym9yZGVyLXJhZGl1czozcHg7aGVpZ2h0OjMwcHg7Y3Vyc29yOnBvaW50ZXI7Y29sb3I6I2ZmZiFpbXBvcnRhbnQ7dGV4dC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjYpIWltcG9ydGFudDtmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDo0NXB4IWltcG9ydGFudDtmb250LWZhbWlseTphcmlhbCxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzotMXB4O3RleHQtZGVjb3JhdGlvbjpub25lfS50cC1idXR0b24uYmlne2NvbG9yOiNmZmY7dGV4dC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjYpO2ZvbnQtd2VpZ2h0OjcwMDtwYWRkaW5nOjlweCAyMHB4O2ZvbnQtc2l6ZToxOXB4O2xpbmUtaGVpZ2h0OjU3cHghaW1wb3J0YW50fS5wdXJjaGFzZTpob3ZlciwudHAtYnV0dG9uLmJpZzpob3ZlciwudHAtYnV0dG9uOmhvdmVye2JhY2tncm91bmQtcG9zaXRpb246Ym90dG9tLDE1cHggMTFweH0ucHVyY2hhc2UuZ3JlZW4sLnB1cmNoYXNlOmhvdmVyLmdyZWVuLC50cC1idXR0b24uZ3JlZW4sLnRwLWJ1dHRvbjpob3Zlci5ncmVlbntiYWNrZ3JvdW5kLWNvbG9yOiMyMWExMTc7Ym94LXNoYWRvdzowIDNweCAwIDAgIzEwNGQwYn0ucHVyY2hhc2UuYmx1ZSwucHVyY2hhc2U6aG92ZXIuYmx1ZSwudHAtYnV0dG9uLmJsdWUsLnRwLWJ1dHRvbjpob3Zlci5ibHVle2JhY2tncm91bmQtY29sb3I6IzFkNzhjYjtib3gtc2hhZG93OjAgM3B4IDAgMCAjMGYzZTY4fS5wdXJjaGFzZS5yZWQsLnB1cmNoYXNlOmhvdmVyLnJlZCwudHAtYnV0dG9uLnJlZCwudHAtYnV0dG9uOmhvdmVyLnJlZHtiYWNrZ3JvdW5kLWNvbG9yOiNjYjFkMWQ7Ym94LXNoYWRvdzowIDNweCAwIDAgIzdjMTIxMn0ucHVyY2hhc2Uub3JhbmdlLC5wdXJjaGFzZTpob3Zlci5vcmFuZ2UsLnRwLWJ1dHRvbi5vcmFuZ2UsLnRwLWJ1dHRvbjpob3Zlci5vcmFuZ2V7YmFja2dyb3VuZC1jb2xvcjojZjcwO2JveC1zaGFkb3c6MCAzcHggMCAwICNhMzRjMDB9LnB1cmNoYXNlLmRhcmtncmV5LC5wdXJjaGFzZTpob3Zlci5kYXJrZ3JleSwudHAtYnV0dG9uLmRhcmtncmV5LC50cC1idXR0b24uZ3JleSwudHAtYnV0dG9uOmhvdmVyLmRhcmtncmV5LC50cC1idXR0b246aG92ZXIuZ3JleXtiYWNrZ3JvdW5kLWNvbG9yOiM1NTU7Ym94LXNoYWRvdzowIDNweCAwIDAgIzIyMn0ucHVyY2hhc2UubGlnaHRncmV5LC5wdXJjaGFzZTpob3Zlci5saWdodGdyZXksLnRwLWJ1dHRvbi5saWdodGdyZXksLnRwLWJ1dHRvbjpob3Zlci5saWdodGdyZXl7YmFja2dyb3VuZC1jb2xvcjojODg4O2JveC1zaGFkb3c6MCAzcHggMCAwICM1NTV9LnJldi1idG4sLnJldi1idG46dmlzaXRlZHtvdXRsaW5lOjAhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnQ7dGV4dC1kZWNvcmF0aW9uOm5vbmUhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjQ0cHg7Zm9udC1zaXplOjE3cHg7Zm9udC13ZWlnaHQ6NTAwO3BhZGRpbmc6MTJweCAzNXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtmb250LWZhbWlseTpSb2JvdG8sc2Fucy1zZXJpZjtjdXJzb3I6cG9pbnRlcn0ucmV2LWJ0bi5yZXYtdXBwZXJjYXNlLC5yZXYtYnRuLnJldi11cHBlcmNhc2U6dmlzaXRlZHt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bGV0dGVyLXNwYWNpbmc6MXB4O2ZvbnQtc2l6ZToxNXB4O2ZvbnQtd2VpZ2h0OjkwMH0ucmV2LWJ0bi5yZXYtd2l0aGljb24gaXtmb250LXdlaWdodDo0MDA7cG9zaXRpb246cmVsYXRpdmU7dG9wOjA7bWFyZ2luLWxlZnQ6MTBweCFpbXBvcnRhbnR9LnJldi1idG4ucmV2LWhpZGRlbmljb24gaXtmb250LXdlaWdodDo0MDA7cG9zaXRpb246cmVsYXRpdmU7dG9wOjA7b3BhY2l0eTowO21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O3dpZHRoOjAhaW1wb3J0YW50fS5yZXYtYnRuLnJldi1oaWRkZW5pY29uOmhvdmVyIGl7b3BhY2l0eToxIWltcG9ydGFudDttYXJnaW4tbGVmdDoxMHB4IWltcG9ydGFudDt3aWR0aDphdXRvIWltcG9ydGFudH0ucmV2LWJ0bi5yZXYtbWVkaXVtLC5yZXYtYnRuLnJldi1tZWRpdW06dmlzaXRlZHtsaW5lLWhlaWdodDozNnB4O2ZvbnQtc2l6ZToxNHB4O3BhZGRpbmc6MTBweCAzMHB4fS5yZXYtYnRuLnJldi1tZWRpdW0ucmV2LWhpZGRlbmljb24gaSwucmV2LWJ0bi5yZXYtbWVkaXVtLnJldi13aXRoaWNvbiBpe2ZvbnQtc2l6ZToxNHB4O3RvcDowfS5yZXYtYnRuLnJldi1zbWFsbCwucmV2LWJ0bi5yZXYtc21hbGw6dmlzaXRlZHtsaW5lLWhlaWdodDoyOHB4O2ZvbnQtc2l6ZToxMnB4O3BhZGRpbmc6N3B4IDIwcHh9LnJldi1idG4ucmV2LXNtYWxsLnJldi1oaWRkZW5pY29uIGksLnJldi1idG4ucmV2LXNtYWxsLnJldi13aXRoaWNvbiBpe2ZvbnQtc2l6ZToxMnB4O3RvcDowfS5yZXYtbWF4cm91bmR7Ym9yZGVyLXJhZGl1czozMHB4fS5yZXYtbWlucm91bmR7Ym9yZGVyLXJhZGl1czozcHh9LnJldi1idXJnZXJ7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6NjBweDtoZWlnaHQ6NjBweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzoyMnB4IDAgMCAxNHB4O2JvcmRlci1yYWRpdXM6NTAlO2JvcmRlcjoxcHggc29saWQgcmdiYSg1MSw1MSw1MSwuMjUpOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcn0ucmV2LWJ1cmdlciBzcGFue2Rpc3BsYXk6YmxvY2s7d2lkdGg6MzBweDtoZWlnaHQ6M3B4O2JhY2tncm91bmQ6IzMzMzt0cmFuc2l0aW9uOi43cztwb2ludGVyLWV2ZW50czpub25lO3RyYW5zZm9ybS1zdHlsZTpmbGF0IWltcG9ydGFudH0ucmV2LWJ1cmdlci5yZXZiLXdoaXRlIHNwYW4sLnJldi1idXJnZXIucmV2Yi13aGl0ZW5vYm9yZGVyIHNwYW57YmFja2dyb3VuZDojZmZmfS5yZXYtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDIpe21hcmdpbjozcHggMH0jZGlhbG9nX2FkZGJ1dHRvbiAucmV2LWJ1cmdlcjpob3ZlciA6Zmlyc3QtY2hpbGQsLm9wZW4gLnJldi1idXJnZXIgOmZpcnN0LWNoaWxkLC5vcGVuLnJldi1idXJnZXIgOmZpcnN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGVZKDZweCkgcm90YXRlKC00NWRlZyl9I2RpYWxvZ19hZGRidXR0b24gLnJldi1idXJnZXI6aG92ZXIgOm50aC1jaGlsZCgyKSwub3BlbiAucmV2LWJ1cmdlciA6bnRoLWNoaWxkKDIpLC5vcGVuLnJldi1idXJnZXIgOm50aC1jaGlsZCgyKXt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7b3BhY2l0eTowfSNkaWFsb2dfYWRkYnV0dG9uIC5yZXYtYnVyZ2VyOmhvdmVyIDpsYXN0LWNoaWxkLC5vcGVuIC5yZXYtYnVyZ2VyIDpsYXN0LWNoaWxkLC5vcGVuLnJldi1idXJnZXIgOmxhc3QtY2hpbGR7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTZweCkgcm90YXRlKC0xMzVkZWcpfS5yZXYtYnVyZ2VyLnJldmItd2hpdGV7Ym9yZGVyOjJweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yKX0ucmV2LWJ1cmdlci5yZXZiLWRhcmtub2JvcmRlciwucmV2LWJ1cmdlci5yZXZiLXdoaXRlbm9ib3JkZXJ7Ym9yZGVyOjB9LnJldi1idXJnZXIucmV2Yi1kYXJrbm9ib3JkZXIgc3BhbntiYWNrZ3JvdW5kOiMzMzN9LnJldi1idXJnZXIucmV2Yi13aGl0ZWZ1bGx7YmFja2dyb3VuZDojZmZmO2JvcmRlcjpub25lfS5yZXYtYnVyZ2VyLnJldmItd2hpdGVmdWxsIHNwYW57YmFja2dyb3VuZDojMzMzfS5yZXYtYnVyZ2VyLnJldmItZGFya2Z1bGx7YmFja2dyb3VuZDojMzMzO2JvcmRlcjpub25lfS5yZXYtYnVyZ2VyLnJldmItZGFya2Z1bGwgc3BhbiwucmV2LXNjcm9sbC1idG4ucmV2cy1mdWxsd2hpdGV7YmFja2dyb3VuZDojZmZmfUBrZXlmcmFtZXMgcmV2LWFuaS1tb3VzZXswJXtvcGFjaXR5OjE7dG9wOjI5JX0xNSV7b3BhY2l0eToxO3RvcDo1MCV9NTAle29wYWNpdHk6MDt0b3A6NTAlfTEwMCV7b3BhY2l0eTowO3RvcDoyOSV9fS5yZXYtc2Nyb2xsLWJ0bntkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjA7cmlnaHQ6MDt0ZXh0LWFsaWduOmNlbnRlcjtjdXJzb3I6cG9pbnRlcjt3aWR0aDozNXB4O2hlaWdodDo1NXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6M3B4IHNvbGlkICNmZmY7Ym9yZGVyLXJhZGl1czoyM3B4fS5yZXYtc2Nyb2xsLWJ0bj4qe2Rpc3BsYXk6aW5saW5lLWJsb2NrO2xpbmUtaGVpZ2h0OjE4cHg7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOiNmZmY7Zm9udC1mYW1pbHk6cHJveGltYS1ub3ZhLCJIZWx2ZXRpY2EgTmV1ZSIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7bGV0dGVyLXNwYWNpbmc6MnB4fS5yZXYtc2Nyb2xsLWJ0bj4uYWN0aXZlLC5yZXYtc2Nyb2xsLWJ0bj46Zm9jdXMsLnJldi1zY3JvbGwtYnRuPjpob3Zlcntjb2xvcjojZmZmfS5yZXYtc2Nyb2xsLWJ0bj4uYWN0aXZlLC5yZXYtc2Nyb2xsLWJ0bj46YWN0aXZlLC5yZXYtc2Nyb2xsLWJ0bj46Zm9jdXMsLnJldi1zY3JvbGwtYnRuPjpob3ZlcntvcGFjaXR5Oi44fS5yZXYtc2Nyb2xsLWJ0bi5yZXZzLWZ1bGx3aGl0ZSBzcGFue2JhY2tncm91bmQ6IzMzM30ucmV2LXNjcm9sbC1idG4ucmV2cy1mdWxsZGFya3tiYWNrZ3JvdW5kOiMzMzM7Ym9yZGVyOm5vbmV9LnJldi1zY3JvbGwtYnRuLnJldnMtZnVsbGRhcmsgc3BhbiwudHAtYnVsbGV0e2JhY2tncm91bmQ6I2ZmZn0ucmV2LXNjcm9sbC1idG4gc3Bhbntwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmJsb2NrO3RvcDoyOSU7bGVmdDo1MCU7d2lkdGg6OHB4O2hlaWdodDo4cHg7bWFyZ2luOi00cHggMCAwIC00cHg7YmFja2dyb3VuZDojZmZmO2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjpyZXYtYW5pLW1vdXNlIDIuNXMgbGluZWFyIGluZmluaXRlfS5yZXYtc2Nyb2xsLWJ0bi5yZXZzLWRhcmt7Ym9yZGVyLWNvbG9yOiMzMzN9LnJldi1zY3JvbGwtYnRuLnJldnMtZGFyayBzcGFue2JhY2tncm91bmQ6IzMzM30ucmV2LWNvbnRyb2wtYnRue3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3otaW5kZXg6NTtjb2xvcjojRkZGO2ZvbnQtc2l6ZToyMHB4O2xpbmUtaGVpZ2h0OjYwcHg7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtZmFtaWx5OlJhbGV3YXk7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dGV4dC1hbGlnbjpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjojMDAwO2JvcmRlci1yYWRpdXM6NTBweDt0ZXh0LXNoYWRvdzpub25lO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNSk7d2lkdGg6NjBweDtoZWlnaHQ6NjBweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXJ9LnJldi1jYnV0dG9uLWRhcmstc3IsLnJldi1jYnV0dG9uLWxpZ2h0LXNye2JvcmRlci1yYWRpdXM6M3B4fS5yZXYtY2J1dHRvbi1saWdodCwucmV2LWNidXR0b24tbGlnaHQtc3J7Y29sb3I6IzMzMztiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjc1KX0ucmV2LXNidXR0b257bGluZS1oZWlnaHQ6MzdweDt3aWR0aDozN3B4O2hlaWdodDozN3B4fS5yZXYtc2J1dHRvbi1ibHVle2JhY2tncm91bmQtY29sb3I6IzNCNTk5OH0ucmV2LXNidXR0b24tbGlnaHRibHVle2JhY2tncm91bmQtY29sb3I6IzAwQTBEMX0ucmV2LXNidXR0b24tcmVke2JhY2tncm91bmQtY29sb3I6I0RENEIzOX0udHAtYmFubmVydGltZXJ7dmlzaWJpbGl0eTpoaWRkZW47d2lkdGg6MTAwJTtoZWlnaHQ6NXB4O2JhY2tncm91bmQ6IzAwMDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjE1KTtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjIwMDt0b3A6MH0udHAtYmFubmVydGltZXIudHAtYm90dG9te3RvcDphdXRvO2JvdHRvbTowIWltcG9ydGFudDtoZWlnaHQ6NXB4fS50cC1jYXB0aW9uIGltZ3tiYWNrZ3JvdW5kOjAgMDstbXMtZmlsdGVyOiJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0jMDBGRkZGRkYsZW5kQ29sb3JzdHI9IzAwRkZGRkZGKSI7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSMwMEZGRkZGRiwgZW5kQ29sb3JzdHI9IzAwRkZGRkZGKTt6b29tOjF9LmNhcHRpb24uc2xpZGVsaW5rIGEgZGl2LC50cC1jYXB0aW9uLnNsaWRlbGluayBhIGRpdnt3aWR0aDozMDAwcHg7aGVpZ2h0OjE1MDBweDtiYWNrZ3JvdW5kOnVybCguLi9hc3NldHMvY29sb3JlZGJnLnBuZyl9LnRwLWNhcHRpb24uc2xpZGVsaW5rIGEgc3BhbntiYWNrZ3JvdW5kOnVybCguLi9hc3NldHMvY29sb3JlZGJnLnBuZyl9LnRwLWxvYWRlci5zcGlubmVyMCwudHAtbG9hZGVyLnNwaW5uZXI1e2JhY2tncm91bmQtaW1hZ2U6dXJsKC4uL2Fzc2V0cy9sb2FkZXIuZ2lmKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXR9LnRwLXNoYXBle3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LnRwLWNhcHRpb24gLnJzLXN0YXJyaW5ne2Rpc3BsYXk6aW5saW5lLWJsb2NrfS50cC1jYXB0aW9uIC5ycy1zdGFycmluZyAuc3Rhci1yYXRpbmd7ZmxvYXQ6bm9uZTtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjp0b3A7Y29sb3I6I0ZGQzMyMSFpbXBvcnRhbnR9LnRwLWNhcHRpb24gLnJzLXN0YXJyaW5nIC5zdGFyLXJhdGluZywudHAtY2FwdGlvbiAucnMtc3RhcnJpbmctcGFnZSAuc3Rhci1yYXRpbmd7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjFlbTt3aWR0aDo1LjRlbTtmb250LWZhbWlseTpzdGFyO2ZvbnQtc2l6ZToxZW0haW1wb3J0YW50fS50cC1sb2FkZXIuc3Bpbm5lcjAsLnRwLWxvYWRlci5zcGlubmVyMXt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O21hcmdpbi10b3A6LTIwcHg7bWFyZ2luLWxlZnQ6LTIwcHg7YW5pbWF0aW9uOnRwLXJvdGF0ZXBsYW5lIDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1yYWRpdXM6M3B4O2JveC1zaGFkb3c6MCAwIDIwcHggMCByZ2JhKDAsMCwwLC4xNSl9LnRwLWNhcHRpb24gLnJzLXN0YXJyaW5nIC5zdGFyLXJhdGluZzpiZWZvcmUsLnRwLWNhcHRpb24gLnJzLXN0YXJyaW5nLXBhZ2UgLnN0YXItcmF0aW5nOmJlZm9yZXtjb250ZW50OiJcNzNcNzNcNzNcNzNcNzMiO2NvbG9yOiNFMERBREY7ZmxvYXQ6bGVmdDt0b3A6MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGV9LnRwLWNhcHRpb24gLnJzLXN0YXJyaW5nIC5zdGFyLXJhdGluZyBzcGFue292ZXJmbG93OmhpZGRlbjtmbG9hdDpsZWZ0O3RvcDowO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtwYWRkaW5nLXRvcDoxLjVlbTtmb250LXNpemU6MWVtIWltcG9ydGFudH0udHAtY2FwdGlvbiAucnMtc3RhcnJpbmcgLnN0YXItcmF0aW5nIHNwYW46YmVmb3Jle2NvbnRlbnQ6Ilw1M1w1M1w1M1w1M1w1MyI7dG9wOjA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowfS50cC1sb2FkZXJ7dG9wOjUwJTtsZWZ0OjUwJTt6LWluZGV4OjEwMDAwO3Bvc2l0aW9uOmFic29sdXRlfS50cC1sb2FkZXIuc3Bpbm5lcjB7YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIgY2VudGVyfS50cC1sb2FkZXIuc3Bpbm5lcjV7YmFja2dyb3VuZC1wb3NpdGlvbjoxMHB4IDEwcHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO21hcmdpbjotMjJweDt3aWR0aDo0NHB4O2hlaWdodDo0NHB4O2JvcmRlci1yYWRpdXM6M3B4fUBrZXlmcmFtZXMgdHAtcm90YXRlcGxhbmV7MCV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVYKDApIHJvdGF0ZVkoMCl9NTAle3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgtMTgwLjFkZWcpIHJvdGF0ZVkoMCl9MTAwJXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoLTE4MGRlZykgcm90YXRlWSgtMTc5LjlkZWcpfX0udHAtbG9hZGVyLnNwaW5uZXIye3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7bWFyZ2luLXRvcDotMjBweDttYXJnaW4tbGVmdDotMjBweDtiYWNrZ3JvdW5kLWNvbG9yOnJlZDtib3gtc2hhZG93OjAgMCAyMHB4IDAgcmdiYSgwLDAsMCwuMTUpO2JvcmRlci1yYWRpdXM6MTAwJTthbmltYXRpb246dHAtc2NhbGVvdXQgMXMgaW5maW5pdGUgZWFzZS1pbi1vdXR9QGtleWZyYW1lcyB0cC1zY2FsZW91dHswJXt0cmFuc2Zvcm06c2NhbGUoMCl9MTAwJXt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eTowfX0udHAtbG9hZGVyLnNwaW5uZXIze21hcmdpbjotOXB4IDAgMCAtMzVweDt3aWR0aDo3MHB4O3RleHQtYWxpZ246Y2VudGVyfS50cC1sb2FkZXIuc3Bpbm5lcjMgLmJvdW5jZTEsLnRwLWxvYWRlci5zcGlubmVyMyAuYm91bmNlMiwudHAtbG9hZGVyLnNwaW5uZXIzIC5ib3VuY2Uze3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JveC1zaGFkb3c6MCAwIDIwcHggMCByZ2JhKDAsMCwwLC4xNSk7Ym9yZGVyLXJhZGl1czoxMDAlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2FuaW1hdGlvbjp0cC1ib3VuY2VkZWxheSAxLjRzIGluZmluaXRlIGVhc2UtaW4tb3V0O2FuaW1hdGlvbi1maWxsLW1vZGU6Ym90aH0udHAtbG9hZGVyLnNwaW5uZXIzIC5ib3VuY2Uxe2FuaW1hdGlvbi1kZWxheTotLjMyc30udHAtbG9hZGVyLnNwaW5uZXIzIC5ib3VuY2Uye2FuaW1hdGlvbi1kZWxheTotLjE2c31Aa2V5ZnJhbWVzIHRwLWJvdW5jZWRlbGF5ezAlLDEwMCUsODAle3RyYW5zZm9ybTpzY2FsZSgwKX00MCV7dHJhbnNmb3JtOnNjYWxlKDEpfX0udHAtbG9hZGVyLnNwaW5uZXI0e21hcmdpbjotMjBweCAwIDAgLTIwcHg7d2lkdGg6NDBweDtoZWlnaHQ6NDBweDt0ZXh0LWFsaWduOmNlbnRlcjthbmltYXRpb246dHAtcm90YXRlIDJzIGluZmluaXRlIGxpbmVhcn0udHAtbG9hZGVyLnNwaW5uZXI0IC5kb3QxLC50cC1sb2FkZXIuc3Bpbm5lcjQgLmRvdDJ7d2lkdGg6NjAlO2hlaWdodDo2MCU7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1yYWRpdXM6MTAwJTthbmltYXRpb246dHAtYm91bmNlIDJzIGluZmluaXRlIGVhc2UtaW4tb3V0O2JveC1zaGFkb3c6MCAwIDIwcHggMCByZ2JhKDAsMCwwLC4xNSl9LnRwLWxvYWRlci5zcGlubmVyNCAuZG90Mnt0b3A6YXV0bztib3R0b206MDthbmltYXRpb24tZGVsYXk6LTFzfUBrZXlmcmFtZXMgdHAtcm90YXRlezEwMCV7dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX1Aa2V5ZnJhbWVzIHRwLWJvdW5jZXswJSwxMDAle3RyYW5zZm9ybTpzY2FsZSgwKX01MCV7dHJhbnNmb3JtOnNjYWxlKDEpfX0udHAtYnVsbGV0cy5uYXZiYXIsLnRwLXRhYnMubmF2YmFyLC50cC10aHVtYnMubmF2YmFye2JvcmRlcjpub25lO21pbi1oZWlnaHQ6MDttYXJnaW46MDtib3JkZXItcmFkaXVzOjB9LnRwLWJ1bGxldHMsLnRwLXRhYnMsLnRwLXRodW1ic3twb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmJsb2NrO3otaW5kZXg6MTAwMDt0b3A6MDtsZWZ0OjB9LnRwLXRhYiwudHAtdGh1bWJ7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7b3BhY2l0eTouNTtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnRwLWFyci1pbWdob2xkZXIsLnRwLXRhYi1pbWFnZSwudHAtdGh1bWItaW1hZ2UsLnRwLXZpZGVvcG9zdGVye2JhY2tncm91bmQtcG9zaXRpb246Y2VudGVyIGNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MH0udHAtdGFiLnNlbGVjdGVkLC50cC10YWI6aG92ZXIsLnRwLXRodW1iLnNlbGVjdGVkLC50cC10aHVtYjpob3ZlcntvcGFjaXR5OjF9LnRwLXRhYi1tYXNrLC50cC10aHVtYi1tYXNre2JveC1zaXppbmc6Ym9yZGVyLWJveCFpbXBvcnRhbnR9LnRwLXRhYnMsLnRwLXRodW1ic3tib3gtc2l6aW5nOmNvbnRlbnQtYm94IWltcG9ydGFudH0udHAtYnVsbGV0e3dpZHRoOjE1cHg7aGVpZ2h0OjE1cHg7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC4zKTtjdXJzb3I6cG9pbnRlcn0udHAtYnVsbGV0LnNlbGVjdGVkLC50cC1idWxsZXQ6aG92ZXJ7YmFja2dyb3VuZDojZmZmfS50cGFycm93c3tjdXJzb3I6cG9pbnRlcjtiYWNrZ3JvdW5kOiMwMDA7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC41KTt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6YmxvY2s7ei1pbmRleDoxMDAwfS50cGFycm93czpob3ZlcntiYWNrZ3JvdW5kOiMwMDB9LnRwYXJyb3dzOmJlZm9yZXtmb250LWZhbWlseTpyZXZpY29ucztmb250LXNpemU6MTVweDtjb2xvcjojZmZmO2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6NDBweDt0ZXh0LWFsaWduOmNlbnRlcn0uaGdpbmZvLC5oZ2xheWVyaW5mb3tmb250LXNpemU6MTJweDtmb250LXdlaWdodDo2MDB9LnRwYXJyb3dzLnRwLWxlZnRhcnJvdzpiZWZvcmV7Y29udGVudDonXGU4MjQnfS50cGFycm93cy50cC1yaWdodGFycm93OmJlZm9yZXtjb250ZW50OidcZTgyNSd9Ym9keS5ydGwgLnRwLWtiaW1ne2xlZnQ6MCFpbXBvcnRhbnR9LmRkZHdyYXBwZXJzaGFkb3d7Ym94LXNoYWRvdzowIDQ1cHggMTAwcHggcmdiYSgwLDAsMCwuNCl9LmhnbGF5ZXJpbmZve3Bvc2l0aW9uOmZpeGVkO2JvdHRvbTowO2xlZnQ6MDtjb2xvcjojRkZGO2xpbmUtaGVpZ2h0OjIwcHg7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC43NSk7cGFkZGluZzo1cHggMTBweDt6LWluZGV4OjIwMDA7d2hpdGUtc3BhY2U6bm9ybWFsfS5oZWxwZ3JpZCwuaGdpbmZve3Bvc2l0aW9uOmFic29sdXRlfS5oZ2luZm97dG9wOi0ycHg7bGVmdDotMnB4O2NvbG9yOiNlNzRjM2M7YmFja2dyb3VuZDojMDAwO3BhZGRpbmc6MnB4IDVweH0uaW5kZWJ1Z21vZGUgLnRwLWNhcHRpb246aG92ZXJ7Ym9yZGVyOjFweCBkYXNoZWQgI2MwMzkyYiFpbXBvcnRhbnR9LmhlbHBncmlke2JvcmRlcjoycHggZGFzaGVkICNjMDM5MmI7dG9wOjA7bGVmdDowO3otaW5kZXg6MH0jcmV2c2xpZGVybG9nbG9nbG9ne3BhZGRpbmc6MTVweDtjb2xvcjojZmZmO3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDt3aWR0aDoyMDBweDtoZWlnaHQ6MTUwcHg7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC43KTt6LWluZGV4OjEwMDAwMDtmb250LXNpemU6MTBweDtvdmVyZmxvdzpzY3JvbGx9LmFkZW57ZmlsdGVyOmh1ZS1yb3RhdGUoLTIwZGVnKSBjb250cmFzdCguOSkgc2F0dXJhdGUoLjg1KSBicmlnaHRuZXNzKDEuMil9LmFkZW46OmFmdGVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LHJnYmEoNjYsMTAsMTQsLjIpLHRyYW5zcGFyZW50KTttaXgtYmxlbmQtbW9kZTpkYXJrZW59LnBlcnBldHVhOjphZnRlciwucmV5ZXM6OmFmdGVye21peC1ibGVuZC1tb2RlOnNvZnQtbGlnaHQ7b3BhY2l0eTouNX0uaW5rd2VsbHtmaWx0ZXI6c2VwaWEoLjMpIGNvbnRyYXN0KDEuMSkgYnJpZ2h0bmVzcygxLjEpIGdyYXlzY2FsZSgxKX0ucGVycGV0dWE6OmFmdGVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwjMDA1YjlhLCNlNmMxM2QpfS5yZXllc3tmaWx0ZXI6c2VwaWEoLjIyKSBicmlnaHRuZXNzKDEuMSkgY29udHJhc3QoLjg1KSBzYXR1cmF0ZSguNzUpfS5yZXllczo6YWZ0ZXJ7YmFja2dyb3VuZDojZWZjZGFkfS5naW5naGFte2ZpbHRlcjpicmlnaHRuZXNzKDEuMDUpIGh1ZS1yb3RhdGUoLTEwZGVnKX0uZ2luZ2hhbTo6YWZ0ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQscmdiYSg2NiwxMCwxNCwuMiksdHJhbnNwYXJlbnQpO21peC1ibGVuZC1tb2RlOmRhcmtlbn0udG9hc3RlcntmaWx0ZXI6Y29udHJhc3QoMS41KSBicmlnaHRuZXNzKC45KX0udG9hc3Rlcjo6YWZ0ZXJ7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCM4MDRlMGYsIzNiMDAzYik7bWl4LWJsZW5kLW1vZGU6c2NyZWVufS53YWxkZW57ZmlsdGVyOmJyaWdodG5lc3MoMS4xKSBodWUtcm90YXRlKC0xMGRlZykgc2VwaWEoLjMpIHNhdHVyYXRlKDEuNil9LndhbGRlbjo6YWZ0ZXJ7YmFja2dyb3VuZDojMDRjO21peC1ibGVuZC1tb2RlOnNjcmVlbjtvcGFjaXR5Oi4zfS5odWRzb257ZmlsdGVyOmJyaWdodG5lc3MoMS4yKSBjb250cmFzdCguOSkgc2F0dXJhdGUoMS4xKX0uaHVkc29uOjphZnRlcntiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUsI2E2YjFmZiA1MCUsIzM0MjEzNCk7bWl4LWJsZW5kLW1vZGU6bXVsdGlwbHk7b3BhY2l0eTouNX0uZWFybHliaXJke2ZpbHRlcjpjb250cmFzdCguOSkgc2VwaWEoLjIpfS5lYXJseWJpcmQ6OmFmdGVye2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSwjZDBiYThlIDIwJSwjMzYwMzA5IDg1JSwjMWQwMjEwIDEwMCUpO21peC1ibGVuZC1tb2RlOm92ZXJsYXl9Lm1heWZhaXJ7ZmlsdGVyOmNvbnRyYXN0KDEuMSkgc2F0dXJhdGUoMS4xKX0ubWF5ZmFpcjo6YWZ0ZXJ7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDQwJSA0MCUscmdiYSgyNTUsMjU1LDI1NSwuOCkscmdiYSgyNTUsMjAwLDIwMCwuNiksIzExMSA2MCUpO21peC1ibGVuZC1tb2RlOm92ZXJsYXk7b3BhY2l0eTouNH0ubG9maXtmaWx0ZXI6c2F0dXJhdGUoMS4xKSBjb250cmFzdCgxLjUpfS5sb2ZpOjphZnRlcntiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUsdHJhbnNwYXJlbnQgNzAlLCMyMjIgMTUwJSk7bWl4LWJsZW5kLW1vZGU6bXVsdGlwbHl9Ll8xOTc3e2ZpbHRlcjpjb250cmFzdCgxLjEpIGJyaWdodG5lc3MoMS4xKSBzYXR1cmF0ZSgxLjMpfS5fMTk3NzphZnRlcntiYWNrZ3JvdW5kOnJnYmEoMjQzLDEwNiwxODgsLjMpO21peC1ibGVuZC1tb2RlOnNjcmVlbn0uYnJvb2tseW57ZmlsdGVyOmNvbnRyYXN0KC45KSBicmlnaHRuZXNzKDEuMSl9LmJyb29rbHluOjphZnRlcntiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUscmdiYSgxNjgsMjIzLDE5MywuNCkgNzAlLCNjNGI3YzgpO21peC1ibGVuZC1tb2RlOm92ZXJsYXl9Lnhwcm8ye2ZpbHRlcjpzZXBpYSguMyl9Lnhwcm8yOjphZnRlcntiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUsI2U2ZTdlMCA0MCUscmdiYSg0Myw0MiwxNjEsLjYpIDExMCUpO21peC1ibGVuZC1tb2RlOmNvbG9yLWJ1cm59Lm5hc2h2aWxsZXtmaWx0ZXI6c2VwaWEoLjIpIGNvbnRyYXN0KDEuMikgYnJpZ2h0bmVzcygxLjA1KSBzYXR1cmF0ZSgxLjIpfS5uYXNodmlsbGU6OmFmdGVye2JhY2tncm91bmQ6cmdiYSgwLDcwLDE1MCwuNCk7bWl4LWJsZW5kLW1vZGU6bGlnaHRlbn0ubmFzaHZpbGxlOjpiZWZvcmV7YmFja2dyb3VuZDpyZ2JhKDI0NywxNzYsMTUzLC41Nik7bWl4LWJsZW5kLW1vZGU6ZGFya2VufS5sYXJre2ZpbHRlcjpjb250cmFzdCguOSl9Lmxhcms6OmFmdGVye2JhY2tncm91bmQ6cmdiYSgyNDIsMjQyLDI0MiwuOCk7bWl4LWJsZW5kLW1vZGU6ZGFya2VufS5sYXJrOjpiZWZvcmV7YmFja2dyb3VuZDojMjIyNTNmO21peC1ibGVuZC1tb2RlOmNvbG9yLWRvZGdlfS5tb29ue2ZpbHRlcjpncmF5c2NhbGUoMSkgY29udHJhc3QoMS4xKSBicmlnaHRuZXNzKDEuMSl9Lm1vb246OmJlZm9yZXtiYWNrZ3JvdW5kOiNhMGEwYTA7bWl4LWJsZW5kLW1vZGU6c29mdC1saWdodH0ubW9vbjo6YWZ0ZXJ7YmFja2dyb3VuZDojMzgzODM4O21peC1ibGVuZC1tb2RlOmxpZ2h0ZW59LmNsYXJlbmRvbntmaWx0ZXI6Y29udHJhc3QoMS4yKSBzYXR1cmF0ZSgxLjM1KX0uY2xhcmVuZG9uOmJlZm9yZXtiYWNrZ3JvdW5kOnJnYmEoMTI3LDE4NywyMjcsLjIpO21peC1ibGVuZC1tb2RlOm92ZXJsYXl9LndpbGxvd3tmaWx0ZXI6Z3JheXNjYWxlKC41KSBjb250cmFzdCguOTUpIGJyaWdodG5lc3MoLjkpfS53aWxsb3c6OmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnJhZGlhbC1ncmFkaWVudCg0MCUsY2lyY2xlLCNkNGE5YWYgNTUlLCMwMDAgMTUwJSk7bWl4LWJsZW5kLW1vZGU6b3ZlcmxheX0ud2lsbG93OjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNkOGNkY2I7bWl4LWJsZW5kLW1vZGU6Y29sb3J9LnJpc2V7ZmlsdGVyOmJyaWdodG5lc3MoMS4wNSkgc2VwaWEoLjIpIGNvbnRyYXN0KC45KSBzYXR1cmF0ZSguOSl9LnJpc2U6OmFmdGVye2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSxyZ2JhKDIzMiwxOTcsMTUyLC44KSx0cmFuc3BhcmVudCA5MCUpO21peC1ibGVuZC1tb2RlOm92ZXJsYXk7b3BhY2l0eTouNn0ucmlzZTo6YmVmb3Jle2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSxyZ2JhKDIzNiwyMDUsMTY5LC4xNSkgNTUlLHJnYmEoNTAsMzAsNywuNCkpO21peC1ibGVuZC1tb2RlOm11bHRpcGx5fS5fMTk3NzphZnRlciwuXzE5Nzc6YmVmb3JlLC5hZGVuOmFmdGVyLC5hZGVuOmJlZm9yZSwuYnJvb2tseW46YWZ0ZXIsLmJyb29rbHluOmJlZm9yZSwuY2xhcmVuZG9uOmFmdGVyLC5jbGFyZW5kb246YmVmb3JlLC5lYXJseWJpcmQ6YWZ0ZXIsLmVhcmx5YmlyZDpiZWZvcmUsLmdpbmdoYW06YWZ0ZXIsLmdpbmdoYW06YmVmb3JlLC5odWRzb246YWZ0ZXIsLmh1ZHNvbjpiZWZvcmUsLmlua3dlbGw6YWZ0ZXIsLmlua3dlbGw6YmVmb3JlLC5sYXJrOmFmdGVyLC5sYXJrOmJlZm9yZSwubG9maTphZnRlciwubG9maTpiZWZvcmUsLm1heWZhaXI6YWZ0ZXIsLm1heWZhaXI6YmVmb3JlLC5tb29uOmFmdGVyLC5tb29uOmJlZm9yZSwubmFzaHZpbGxlOmFmdGVyLC5uYXNodmlsbGU6YmVmb3JlLC5wZXJwZXR1YTphZnRlciwucGVycGV0dWE6YmVmb3JlLC5yZXllczphZnRlciwucmV5ZXM6YmVmb3JlLC5yaXNlOmFmdGVyLC5yaXNlOmJlZm9yZSwuc2x1bWJlcjphZnRlciwuc2x1bWJlcjpiZWZvcmUsLnRvYXN0ZXI6YWZ0ZXIsLnRvYXN0ZXI6YmVmb3JlLC53YWxkZW46YWZ0ZXIsLndhbGRlbjpiZWZvcmUsLndpbGxvdzphZnRlciwud2lsbG93OmJlZm9yZSwueHBybzI6YWZ0ZXIsLnhwcm8yOmJlZm9yZXtjb250ZW50OicnO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTt0b3A6MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cG9pbnRlci1ldmVudHM6bm9uZX0uXzE5NzcsLmFkZW4sLmJyb29rbHluLC5jbGFyZW5kb24sLmVhcmx5YmlyZCwuZ2luZ2hhbSwuaHVkc29uLC5pbmt3ZWxsLC5sYXJrLC5sb2ZpLC5tYXlmYWlyLC5tb29uLC5uYXNodmlsbGUsLnBlcnBldHVhLC5yZXllcywucmlzZSwuc2x1bWJlciwudG9hc3Rlciwud2FsZGVuLC53aWxsb3csLnhwcm8ye3Bvc2l0aW9uOnJlbGF0aXZlfS5fMTk3NyBpbWcsLmFkZW4gaW1nLC5icm9va2x5biBpbWcsLmNsYXJlbmRvbiBpbWcsLmVhcmx5YmlyZCBpbWcsLmdpbmdoYW0gaW1nLC5odWRzb24gaW1nLC5pbmt3ZWxsIGltZywubGFyayBpbWcsLmxvZmkgaW1nLC5tYXlmYWlyIGltZywubW9vbiBpbWcsLm5hc2h2aWxsZSBpbWcsLnBlcnBldHVhIGltZywucmV5ZXMgaW1nLC5yaXNlIGltZywuc2x1bWJlciBpbWcsLnRvYXN0ZXIgaW1nLC53YWxkZW4gaW1nLC53aWxsb3cgaW1nLC54cHJvMiBpbWd7d2lkdGg6MTAwJTt6LWluZGV4OjF9Ll8xOTc3OmJlZm9yZSwuYWRlbjpiZWZvcmUsLmJyb29rbHluOmJlZm9yZSwuY2xhcmVuZG9uOmJlZm9yZSwuZWFybHliaXJkOmJlZm9yZSwuZ2luZ2hhbTpiZWZvcmUsLmh1ZHNvbjpiZWZvcmUsLmlua3dlbGw6YmVmb3JlLC5sYXJrOmJlZm9yZSwubG9maTpiZWZvcmUsLm1heWZhaXI6YmVmb3JlLC5tb29uOmJlZm9yZSwubmFzaHZpbGxlOmJlZm9yZSwucGVycGV0dWE6YmVmb3JlLC5yZXllczpiZWZvcmUsLnJpc2U6YmVmb3JlLC5zbHVtYmVyOmJlZm9yZSwudG9hc3RlcjpiZWZvcmUsLndhbGRlbjpiZWZvcmUsLndpbGxvdzpiZWZvcmUsLnhwcm8yOmJlZm9yZXt6LWluZGV4OjJ9Ll8xOTc3OmFmdGVyLC5hZGVuOmFmdGVyLC5icm9va2x5bjphZnRlciwuY2xhcmVuZG9uOmFmdGVyLC5lYXJseWJpcmQ6YWZ0ZXIsLmdpbmdoYW06YWZ0ZXIsLmh1ZHNvbjphZnRlciwuaW5rd2VsbDphZnRlciwubGFyazphZnRlciwubG9maTphZnRlciwubWF5ZmFpcjphZnRlciwubW9vbjphZnRlciwubmFzaHZpbGxlOmFmdGVyLC5wZXJwZXR1YTphZnRlciwucmV5ZXM6YWZ0ZXIsLnJpc2U6YWZ0ZXIsLnNsdW1iZXI6YWZ0ZXIsLnRvYXN0ZXI6YWZ0ZXIsLndhbGRlbjphZnRlciwud2lsbG93OmFmdGVyLC54cHJvMjphZnRlcnt6LWluZGV4OjN9LnNsdW1iZXJ7ZmlsdGVyOnNhdHVyYXRlKC42NikgYnJpZ2h0bmVzcygxLjA1KX0uc2x1bWJlcjo6YWZ0ZXJ7YmFja2dyb3VuZDpyZ2JhKDEyNSwxMDUsMjQsLjUpO21peC1ibGVuZC1tb2RlOnNvZnQtbGlnaHR9LnNsdW1iZXI6OmJlZm9yZXtiYWNrZ3JvdW5kOnJnYmEoNjksNDEsMTIsLjQpO21peC1ibGVuZC1tb2RlOmxpZ2h0ZW59"}},"time_used":10950,"timings":{"blocked":8733,"dns":0,"connect":0,"send":0,"wait":2217,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"api.coingecko.com/api/v3/coins/markets?vs_currency=usd\u0026ids=bitcoin,eos,ethereum,litecoin,ripple,usdtez\u0026locale=en","fqdn":"api.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.628Z","timestamp":1785143926628,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /api/v3/coins/markets?vs_currency=usd\u0026ids=bitcoin,eos,ethereum,litecoin,ripple,usdtez\u0026locale=en HTTP/1.1\r\nHost: api.coingecko.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\nReferer: https://scromegatrade.com/\r\nOrigin: https://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\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-11T07:57:31.65745Z","times_seen":17832625,"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":"coinlib.io/_next/static/chunks/9df3b67b6061ea9e.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.689Z","timestamp":1785143926689,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/9df3b67b6061ea9e.js HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\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: same-origin\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\naccess-control-allow-origin: *\r\nage: 7755332\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"9df3b67b6061ea9e.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com https://vitals.vercel-insights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\netag: W/\"c678a91c2c6476c2f4253bbb2f68861b\"\r\nlast-modified: Tue, 28 Apr 2026 14:50:57 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/9df3b67b6061ea9e.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::qglf9-1777388594160-6b3c36de26cf\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=%2FUbxoIgyEj3IMb%2B%2FRv6iyd7QgFuqAws465Y3HfYIVItEz1D3M8vpaJy0HUvVpJlocqyxHCDvZ1lTD01jR0D5kS%2B7LfGapiMKIL9rf%2BssEiL24TC6VTUZgJyxkBCm\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21a8f05c9160b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\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"]},{"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"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":33297,"size_decoded":9773,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (19585)","md5":"c678a91c2c6476c2f4253bbb2f68861b","sha1":"69b7933df2474b5a89bafec3ed00c63e7a38fd6c","sha256":"ee32b6de09c560980545699191b3ba6ebd9847bba1e07b95f5a5ddf359bfc353","sha512":"f3ae2a1ace9a1a1c354782702e328db28abd4864d69e33e7e6e72cc82ce93e5142093752a6b82a5d21f62e953ed27f5101956c00407e5d2d9527eb36435d1584","ssdeep":"384:EjUDGGRCRvBrTfIVZ/X+0o3NkOG4+Z47auBSwTNGFJl:4vB/8Z/X+0o3KZzZ47auJG","tlshash":"dce2c7b572d5faa2139340f0c83f2017f2784c7521ac7460a7e4cc9b765888da6bafd9","first_seen":"2026-02-04T14:24:19.872146Z","last_seen":"2026-08-11T04:47:30.044519Z","times_seen":2295,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDQxMDYyLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJJbnZhcmlhbnRFcnJvciIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7Y2xhc3MgbiBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKGUsdCl7c3VwZXIoYEludmFyaWFudDogJHtlLmVuZHNXaXRoKCIuIik/ZTplKyIuIn0gVGhpcyBpcyBhIGJ1ZyBpbiBOZXh0LmpzLmAsdCksdGhpcy5uYW1lPSJJbnZhcmlhbnRFcnJvciJ9fX0sODQwODIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0JhaWxvdXRUb0NTUkVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LGlzQmFpbG91dFRvQ1NSRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gdX19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbz0iQkFJTE9VVF9UT19DTElFTlRfU0lERV9SRU5ERVJJTkciO2NsYXNzIGkgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihlKXtzdXBlcihgQmFpbCBvdXQgdG8gY2xpZW50LXNpZGUgcmVuZGVyaW5nOiAke2V9YCksdGhpcy5yZWFzb249ZSx0aGlzLmRpZ2VzdD1vfX1mdW5jdGlvbiB1KGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJiJkaWdlc3QiaW4gZSYmZS5kaWdlc3Q9PT1vfX0sNTMxMzMsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0hUVFBBY2Nlc3NFcnJvclN0YXR1czpmdW5jdGlvbigpe3JldHVybiBvfSxIVFRQX0VSUk9SX0ZBTExCQUNLX0VSUk9SX0NPREU6ZnVuY3Rpb24oKXtyZXR1cm4gdX0sZ2V0QWNjZXNzRmFsbGJhY2tFcnJvclR5cGVCeVN0YXR1czpmdW5jdGlvbigpe3JldHVybiBkfSxnZXRBY2Nlc3NGYWxsYmFja0hUVFBTdGF0dXM6ZnVuY3Rpb24oKXtyZXR1cm4gY30saXNIVFRQQWNjZXNzRmFsbGJhY2tFcnJvcjpmdW5jdGlvbigpe3JldHVybiBzfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBvPXtOT1RfRk9VTkQ6NDA0LEZPUkJJRERFTjo0MDMsVU5BVVRIT1JJWkVEOjQwMX0saT1uZXcgU2V0KE9iamVjdC52YWx1ZXMobykpLHU9Ik5FWFRfSFRUUF9FUlJPUl9GQUxMQkFDSyI7ZnVuY3Rpb24gcyhlKXtpZigib2JqZWN0IiE9dHlwZW9mIGV8fG51bGw9PT1lfHwhKCJkaWdlc3QiaW4gZSl8fCJzdHJpbmciIT10eXBlb2YgZS5kaWdlc3QpcmV0dXJuITE7bGV0W3Qscl09ZS5kaWdlc3Quc3BsaXQoIjsiKTtyZXR1cm4gdD09PXUmJmkuaGFzKE51bWJlcihyKSl9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gTnVtYmVyKGUuZGlnZXN0LnNwbGl0KCI7IilbMV0pfWZ1bmN0aW9uIGQoZSl7c3dpdGNoKGUpe2Nhc2UgNDAxOnJldHVybiJ1bmF1dGhvcml6ZWQiO2Nhc2UgNDAzOnJldHVybiJmb3JiaWRkZW4iO2Nhc2UgNDA0OnJldHVybiJub3QtZm91bmQiO2RlZmF1bHQ6cmV0dXJufX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw0OTg0MywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiaXNOZXh0Um91dGVyRXJyb3IiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBvfX0pO2xldCBuPWUucig1MzEzMyksYT1lLnIoOTA4NjIpO2Z1bmN0aW9uIG8oZSl7cmV0dXJuKDAsYS5pc1JlZGlyZWN0RXJyb3IpKGUpfHwoMCxuLmlzSFRUUEFjY2Vzc0ZhbGxiYWNrRXJyb3IpKGUpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDM5Mjc1LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJSZWFkb25seVVSTFNlYXJjaFBhcmFtcyIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9fSk7Y2xhc3MgbiBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKCl7c3VwZXIoIk1ldGhvZCB1bmF2YWlsYWJsZSBvbiBgUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXNgLiBSZWFkIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL2FwcC9hcGktcmVmZXJlbmNlL2Z1bmN0aW9ucy91c2Utc2VhcmNoLXBhcmFtcyN1cGRhdGluZy1zZWFyY2hwYXJhbXMiKX19Y2xhc3MgYSBleHRlbmRzIFVSTFNlYXJjaFBhcmFtc3thcHBlbmQoKXt0aHJvdyBuZXcgbn1kZWxldGUoKXt0aHJvdyBuZXcgbn1zZXQoKXt0aHJvdyBuZXcgbn1zb3J0KCl7dGhyb3cgbmV3IG59fSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDMxODk5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtOYXZpZ2F0aW9uUHJvbWlzZXNDb250ZXh0OmZ1bmN0aW9uKCl7cmV0dXJuIGR9LFBhdGhQYXJhbXNDb250ZXh0OmZ1bmN0aW9uKCl7cmV0dXJuIGN9LFBhdGhuYW1lQ29udGV4dDpmdW5jdGlvbigpe3JldHVybiBzfSxSZWFkb25seVVSTFNlYXJjaFBhcmFtczpmdW5jdGlvbigpe3JldHVybiBpLlJlYWRvbmx5VVJMU2VhcmNoUGFyYW1zfSxTZWFyY2hQYXJhbXNDb250ZXh0OmZ1bmN0aW9uKCl7cmV0dXJuIHV9LGNyZWF0ZURldlRvb2xzSW5zdHJ1bWVudGVkUHJvbWlzZTpmdW5jdGlvbigpe3JldHVybiBsfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBvPWUucig3NTIwMSksaT1lLnIoMzkyNzUpLHU9KDAsby5jcmVhdGVDb250ZXh0KShudWxsKSxzPSgwLG8uY3JlYXRlQ29udGV4dCkobnVsbCksYz0oMCxvLmNyZWF0ZUNvbnRleHQpKG51bGwpLGQ9KDAsby5jcmVhdGVDb250ZXh0KShudWxsKTtmdW5jdGlvbiBsKGUsdCl7bGV0IHI9UHJvbWlzZS5yZXNvbHZlKHQpO3JldHVybiByLnN0YXR1cz0iZnVsZmlsbGVkIixyLnZhbHVlPXQsci5kaXNwbGF5TmFtZT1gJHtlfSAoU1NSKWAscn19LDMzOSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwid29ya1VuaXRBc3luY1N0b3JhZ2VJbnN0YW5jZSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7bGV0IG49KDAsZS5yKDQ5MjExKS5jcmVhdGVBc3luY0xvY2FsU3RvcmFnZSkoKX0sMTI5NjUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2dldENhY2hlU2lnbmFsOmZ1bmN0aW9uKCl7cmV0dXJuIHl9LGdldERyYWZ0TW9kZVByb3ZpZGVyRm9yQ2FjaGVTY29wZTpmdW5jdGlvbigpe3JldHVybiBtfSxnZXRIbXJSZWZyZXNoSGFzaDpmdW5jdGlvbigpe3JldHVybiBmfSxnZXRQcmVyZW5kZXJSZXN1bWVEYXRhQ2FjaGU6ZnVuY3Rpb24oKXtyZXR1cm4gZH0sZ2V0UmVuZGVyUmVzdW1lRGF0YUNhY2hlOmZ1bmN0aW9uKCl7cmV0dXJuIGx9LGdldFJ1bnRpbWVTdGFnZVByb21pc2U6ZnVuY3Rpb24oKXtyZXR1cm4gYn0sZ2V0U2VydmVyQ29tcG9uZW50c0htckNhY2hlOmZ1bmN0aW9uKCl7cmV0dXJuIGh9LGlzSG1yUmVmcmVzaDpmdW5jdGlvbigpe3JldHVybiBwfSx0aHJvd0Zvck1pc3NpbmdSZXF1ZXN0U3RvcmU6ZnVuY3Rpb24oKXtyZXR1cm4gc30sdGhyb3dJbnZhcmlhbnRGb3JNaXNzaW5nU3RvcmU6ZnVuY3Rpb24oKXtyZXR1cm4gY30sd29ya1VuaXRBc3luY1N0b3JhZ2U6ZnVuY3Rpb24oKXtyZXR1cm4gby53b3JrVW5pdEFzeW5jU3RvcmFnZUluc3RhbmNlfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBvPWUucigzMzkpLGk9ZS5yKDM0NjQxKSx1PWUucig0MTA2Mik7ZnVuY3Rpb24gcyhlKXt0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoYFxgJHtlfVxgIHdhcyBjYWxsZWQgb3V0c2lkZSBhIHJlcXVlc3Qgc2NvcGUuIFJlYWQgbW9yZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvbmV4dC1keW5hbWljLWFwaS13cm9uZy1jb250ZXh0YCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkUyNTEiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9ZnVuY3Rpb24gYygpe3Rocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgdS5JbnZhcmlhbnRFcnJvcigiRXhwZWN0ZWQgd29ya1VuaXRBc3luY1N0b3JhZ2UgdG8gaGF2ZSBhIHN0b3JlLiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNjk2IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfWZ1bmN0aW9uIGQoZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJwcmVyZW5kZXIiOmNhc2UicHJlcmVuZGVyLXJ1bnRpbWUiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItY2xpZW50IjpyZXR1cm4gZS5wcmVyZW5kZXJSZXN1bWVEYXRhQ2FjaGU7Y2FzZSJyZXF1ZXN0IjppZihlLnByZXJlbmRlclJlc3VtZURhdGFDYWNoZSlyZXR1cm4gZS5wcmVyZW5kZXJSZXN1bWVEYXRhQ2FjaGU7Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnJldHVybiBudWxsO2RlZmF1bHQ6cmV0dXJuIGV9fWZ1bmN0aW9uIGwoZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJyZXF1ZXN0IjpjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6Y2FzZSJwcmVyZW5kZXItY2xpZW50IjppZihlLnJlbmRlclJlc3VtZURhdGFDYWNoZSlyZXR1cm4gZS5yZW5kZXJSZXN1bWVEYXRhQ2FjaGU7Y2FzZSJwcmVyZW5kZXItcHByIjpyZXR1cm4gZS5wcmVyZW5kZXJSZXN1bWVEYXRhQ2FjaGU/P251bGw7Y2FzZSJjYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpjYXNlInVuc3RhYmxlLWNhY2hlIjpjYXNlInByZXJlbmRlci1sZWdhY3kiOnJldHVybiBudWxsO2RlZmF1bHQ6cmV0dXJuIGV9fWZ1bmN0aW9uIGYoZSx0KXtpZihlLmRldilzd2l0Y2godC50eXBlKXtjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1ydW50aW1lIjpyZXR1cm4gdC5obXJSZWZyZXNoSGFzaDtjYXNlInJlcXVlc3QiOnZhciByO3JldHVybiBudWxsPT0ocj10LmNvb2tpZXMuZ2V0KGkuTkVYVF9ITVJfUkVGUkVTSF9IQVNIX0NPT0tJRSkpP3ZvaWQgMDpyLnZhbHVlfX1mdW5jdGlvbiBwKGUsdCl7aWYoZS5kZXYpc3dpdGNoKHQudHlwZSl7Y2FzZSJjYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpjYXNlInJlcXVlc3QiOnJldHVybiB0LmlzSG1yUmVmcmVzaD8/ITF9cmV0dXJuITF9ZnVuY3Rpb24gaChlLHQpe2lmKGUuZGV2KXN3aXRjaCh0LnR5cGUpe2Nhc2UiY2FjaGUiOmNhc2UicHJpdmF0ZS1jYWNoZSI6Y2FzZSJyZXF1ZXN0IjpyZXR1cm4gdC5zZXJ2ZXJDb21wb25lbnRzSG1yQ2FjaGV9fWZ1bmN0aW9uIG0oZSx0KXtpZihlLmlzRHJhZnRNb2RlKXN3aXRjaCh0LnR5cGUpe2Nhc2UiY2FjaGUiOmNhc2UicHJpdmF0ZS1jYWNoZSI6Y2FzZSJ1bnN0YWJsZS1jYWNoZSI6Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6Y2FzZSJyZXF1ZXN0IjpyZXR1cm4gdC5kcmFmdE1vZGV9fWZ1bmN0aW9uIHkoZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJwcmVyZW5kZXIiOmNhc2UicHJlcmVuZGVyLWNsaWVudCI6Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6cmV0dXJuIGUuY2FjaGVTaWduYWw7Y2FzZSJyZXF1ZXN0IjppZihlLmNhY2hlU2lnbmFsKXJldHVybiBlLmNhY2hlU2lnbmFsO2Nhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnJldHVybiBudWxsO2RlZmF1bHQ6cmV0dXJuIGV9fWZ1bmN0aW9uIGIoZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpyZXR1cm4gZS5ydW50aW1lU3RhZ2VQcm9taXNlO2Nhc2UicHJlcmVuZGVyIjpjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpjYXNlInJlcXVlc3QiOmNhc2UiY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOnJldHVybiBudWxsO2RlZmF1bHQ6cmV0dXJuIGV9fX0sMTg0NjIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e1NlcnZlckluc2VydGVkSFRNTENvbnRleHQ6ZnVuY3Rpb24oKXtyZXR1cm4gaX0sdXNlU2VydmVySW5zZXJ0ZWRIVE1MOmZ1bmN0aW9uKCl7cmV0dXJuIHV9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89ZS5yKDQ0MDY2KS5fKGUucig3NTIwMSkpLGk9by5kZWZhdWx0LmNyZWF0ZUNvbnRleHQobnVsbCk7ZnVuY3Rpb24gdShlKXtsZXQgdD0oMCxvLnVzZUNvbnRleHQpKGkpO3QmJnQoZSl9fSw2NTk5NSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwibm90Rm91bmQiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBvfX0pO2xldCBuPWUucig1MzEzMyksYT1gJHtuLkhUVFBfRVJST1JfRkFMTEJBQ0tfRVJST1JfQ09ERX07NDA0YDtmdW5jdGlvbiBvKCl7bGV0IGU9T2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGEpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMzk0IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3Rocm93IGUuZGlnZXN0PWEsZX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwxNzc2MiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oKXt0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoImBmb3JiaWRkZW4oKWAgaXMgZXhwZXJpbWVudGFsIGFuZCBvbmx5IGFsbG93ZWQgdG8gYmUgZW5hYmxlZCB3aGVuIGBleHBlcmltZW50YWwuYXV0aEludGVycnVwdHNgIGlzIGVuYWJsZWQuIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU0ODgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSl9T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJmb3JiaWRkZW4iLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBufX0pLGUucig1MzEzMykuSFRUUF9FUlJPUl9GQUxMQkFDS19FUlJPUl9DT0RFLCgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDc5NTM5LChlLHQscik9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbigpe3Rocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiYHVuYXV0aG9yaXplZCgpYCBpcyBleHBlcmltZW50YWwgYW5kIG9ubHkgYWxsb3dlZCB0byBiZSB1c2VkIHdoZW4gYGV4cGVyaW1lbnRhbC5hdXRoSW50ZXJydXB0c2AgaXMgZW5hYmxlZC4iKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTQxMSIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KX1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInVuYXV0aG9yaXplZCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSksZS5yKDUzMTMzKS5IVFRQX0VSUk9SX0ZBTExCQUNLX0VSUk9SX0NPREUsKCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMTg3ODIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInVuc3RhYmxlX3JldGhyb3ciLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiBlKHQpe2lmKCgwLGEuaXNOZXh0Um91dGVyRXJyb3IpKHQpfHwoMCxuLmlzQmFpbG91dFRvQ1NSRXJyb3IpKHQpKXRocm93IHQ7dCBpbnN0YW5jZW9mIEVycm9yJiYiY2F1c2UiaW4gdCYmZSh0LmNhdXNlKX19fSk7bGV0IG49ZS5yKDg0MDgyKSxhPWUucig0OTg0Myk7KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMTU1MDgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2lzSGFuZ2luZ1Byb21pc2VSZWplY3Rpb25FcnJvcjpmdW5jdGlvbigpe3JldHVybiBvfSxtYWtlRGV2dG9vbHNJT0F3YXJlUHJvbWlzZTpmdW5jdGlvbigpe3JldHVybiBsfSxtYWtlSGFuZ2luZ1Byb21pc2U6ZnVuY3Rpb24oKXtyZXR1cm4gY319O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtmdW5jdGlvbiBvKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJiJkaWdlc3QiaW4gZSYmZS5kaWdlc3Q9PT1pfWxldCBpPSJIQU5HSU5HX1BST01JU0VfUkVKRUNUSU9OIjtjbGFzcyB1IGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoZSx0KXtzdXBlcihgRHVyaW5nIHByZXJlbmRlcmluZywgJHt0fSByZWplY3RzIHdoZW4gdGhlIHByZXJlbmRlciBpcyBjb21wbGV0ZS4gVHlwaWNhbGx5IHRoZXNlIGVycm9ycyBhcmUgaGFuZGxlZCBieSBSZWFjdCBidXQgaWYgeW91IG1vdmUgJHt0fSB0byBhIGRpZmZlcmVudCBjb250ZXh0IGJ5IHVzaW5nIFxgc2V0VGltZW91dFxgLCBcYGFmdGVyXGAsIG9yIHNpbWlsYXIgZnVuY3Rpb25zIHlvdSBtYXkgb2JzZXJ2ZSB0aGlzIGVycm9yIGFuZCB5b3Ugc2hvdWxkIGhhbmRsZSBpdCBpbiB0aGF0IGNvbnRleHQuIFRoaXMgb2NjdXJyZWQgYXQgcm91dGUgIiR7ZX0iLmApLHRoaXMucm91dGU9ZSx0aGlzLmV4cHJlc3Npb249dCx0aGlzLmRpZ2VzdD1pfX1sZXQgcz1uZXcgV2Vha01hcDtmdW5jdGlvbiBjKGUsdCxyKXtpZihlLmFib3J0ZWQpcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyB1KHQscikpO3tsZXQgbj1uZXcgUHJvbWlzZSgobixhKT0+e2xldCBvPWEuYmluZChudWxsLG5ldyB1KHQscikpLGk9cy5nZXQoZSk7aWYoaSlpLnB1c2gobyk7ZWxzZXtsZXQgdD1bb107cy5zZXQoZSx0KSxlLmFkZEV2ZW50TGlzdGVuZXIoImFib3J0IiwoKT0+e2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSsrKXRbZV0oKX0se29uY2U6ITB9KX19KTtyZXR1cm4gbi5jYXRjaChkKSxufX1mdW5jdGlvbiBkKCl7fWZ1bmN0aW9uIGwoZSx0LHIpe3JldHVybiB0LnN0YWdlZFJlbmRlcmluZz90LnN0YWdlZFJlbmRlcmluZy5kZWxheVVudGlsU3RhZ2Uocix2b2lkIDAsZSk6bmV3IFByb21pc2UodD0+e3NldFRpbWVvdXQoKCk9Pnt0KGUpfSwwKX0pfX0sMTc1NTYsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImlzUG9zdHBvbmUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPVN5bWJvbC5mb3IoInJlYWN0LnBvc3Rwb25lIik7ZnVuY3Rpb24gYShlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiZlLiQkdHlwZW9mPT09bn19LDkzMjEzLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtEeW5hbWljU2VydmVyRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gaX0saXNEeW5hbWljU2VydmVyRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gdX19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbz0iRFlOQU1JQ19TRVJWRVJfVVNBR0UiO2NsYXNzIGkgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihlKXtzdXBlcihgRHluYW1pYyBzZXJ2ZXIgdXNhZ2U6ICR7ZX1gKSx0aGlzLmRlc2NyaXB0aW9uPWUsdGhpcy5kaWdlc3Q9b319ZnVuY3Rpb24gdShlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiYiZGlnZXN0ImluIGUmJiJzdHJpbmciPT10eXBlb2YgZS5kaWdlc3QmJmUuZGlnZXN0PT09b30oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwxNjQzMiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17U3RhdGljR2VuQmFpbG91dEVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LGlzU3RhdGljR2VuQmFpbG91dEVycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIHV9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89Ik5FWFRfU1RBVElDX0dFTl9CQUlMT1VUIjtjbGFzcyBpIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoLi4uZSl7c3VwZXIoLi4uZSksdGhpcy5jb2RlPW99fWZ1bmN0aW9uIHUoZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmImNvZGUiaW4gZSYmZS5jb2RlPT09b30oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw1MzQ1OSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17TUVUQURBVEFfQk9VTkRBUllfTkFNRTpmdW5jdGlvbigpe3JldHVybiBvfSxPVVRMRVRfQk9VTkRBUllfTkFNRTpmdW5jdGlvbigpe3JldHVybiB1fSxST09UX0xBWU9VVF9CT1VOREFSWV9OQU1FOmZ1bmN0aW9uKCl7cmV0dXJuIHN9LFZJRVdQT1JUX0JPVU5EQVJZX05BTUU6ZnVuY3Rpb24oKXtyZXR1cm4gaX19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbz0iX19uZXh0X21ldGFkYXRhX2JvdW5kYXJ5X18iLGk9Il9fbmV4dF92aWV3cG9ydF9ib3VuZGFyeV9fIix1PSJfX25leHRfb3V0bGV0X2JvdW5kYXJ5X18iLHM9Il9fbmV4dF9yb290X2xheW91dF9ib3VuZGFyeV9fIn0sMjQzODYsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj1lLmkoODI2MzcpO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgYT17YXRMZWFzdE9uZVRhc2s6ZnVuY3Rpb24oKXtyZXR1cm4gc30sc2NoZWR1bGVJbW1lZGlhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gdX0sc2NoZWR1bGVPbk5leHRUaWNrOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LHdhaXRBdExlYXN0T25lUmVhY3RSZW5kZXJUYXNrOmZ1bmN0aW9uKCl7cmV0dXJuIGN9fTtmb3IodmFyIG8gaW4gYSlPYmplY3QuZGVmaW5lUHJvcGVydHkocixvLHtlbnVtZXJhYmxlOiEwLGdldDphW29dfSk7bGV0IGk9ZT0+e1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PntuLmRlZmF1bHQubmV4dFRpY2soZSl9KX0sdT1lPT57c2V0SW1tZWRpYXRlKGUpfTtmdW5jdGlvbiBzKCl7cmV0dXJuIG5ldyBQcm9taXNlKGU9PnUoZSkpfWZ1bmN0aW9uIGMoKXtyZXR1cm4gbmV3IFByb21pc2UoZT0+c2V0SW1tZWRpYXRlKGUpKX19LDY3NzgxLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuLGEsbz17UG9zdHBvbmU6ZnVuY3Rpb24oKXtyZXR1cm4gan0sUHJlbHVkZVN0YXRlOmZ1bmN0aW9uKCl7cmV0dXJuIFp9LGFib3J0QW5kVGhyb3dPblN5bmNocm9ub3VzUmVxdWVzdERhdGFBY2Nlc3M6ZnVuY3Rpb24oKXtyZXR1cm4gU30sYWJvcnRPblN5bmNocm9ub3VzUGxhdGZvcm1JT0FjY2VzczpmdW5jdGlvbigpe3JldHVybiBQfSxhY2Nlc3NlZER5bmFtaWNEYXRhOmZ1bmN0aW9uKCl7cmV0dXJuIE59LGFubm90YXRlRHluYW1pY0FjY2VzczpmdW5jdGlvbigpe3JldHVybiBCfSxjb25zdW1lRHluYW1pY0FjY2VzczpmdW5jdGlvbigpe3JldHVybiBJfSxjcmVhdGVEeW5hbWljVHJhY2tpbmdTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBnfSxjcmVhdGVEeW5hbWljVmFsaWRhdGlvblN0YXRlOmZ1bmN0aW9uKCl7cmV0dXJuIF99LGNyZWF0ZUhhbmdpbmdJbnB1dEFib3J0U2lnbmFsOmZ1bmN0aW9uKCl7cmV0dXJuICR9LGNyZWF0ZVJlbmRlckluQnJvd3NlckFib3J0U2lnbmFsOmZ1bmN0aW9uKCl7cmV0dXJuIEx9LGRlbGF5VW50aWxSdW50aW1lU3RhZ2U6ZnVuY3Rpb24oKXtyZXR1cm4gZXJ9LGZvcm1hdER5bmFtaWNBUElBY2Nlc3NlczpmdW5jdGlvbigpe3JldHVybiBVfSxnZXRGaXJzdER5bmFtaWNSZWFzb246ZnVuY3Rpb24oKXtyZXR1cm4gRX0sZ2V0U3RhdGljU2hlbGxEaXNhbGxvd2VkRHluYW1pY1JlYXNvbnM6ZnVuY3Rpb24oKXtyZXR1cm4gZXR9LGlzRHluYW1pY1Bvc3Rwb25lOmZ1bmN0aW9uKCl7cmV0dXJuIHh9LGlzUHJlcmVuZGVySW50ZXJydXB0ZWRFcnJvcjpmdW5jdGlvbigpe3JldHVybiBrfSxsb2dEaXNhbGxvd2VkRHluYW1pY0Vycm9yOmZ1bmN0aW9uKCl7cmV0dXJuIFF9LG1hcmtDdXJyZW50U2NvcGVBc0R5bmFtaWM6ZnVuY3Rpb24oKXtyZXR1cm4gUn0scG9zdHBvbmVXaXRoVHJhY2tpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gRH0sdGhyb3dJZkRpc2FsbG93ZWREeW5hbWljOmZ1bmN0aW9uKCl7cmV0dXJuIGVlfSx0aHJvd1RvSW50ZXJydXB0U3RhdGljR2VuZXJhdGlvbjpmdW5jdGlvbigpe3JldHVybiB2fSx0cmFja0FsbG93ZWREeW5hbWljQWNjZXNzOmZ1bmN0aW9uKCl7cmV0dXJuIFl9LHRyYWNrRHluYW1pY0RhdGFJbkR5bmFtaWNSZW5kZXI6ZnVuY3Rpb24oKXtyZXR1cm4gT30sdHJhY2tEeW5hbWljSG9sZUluUnVudGltZVNoZWxsOmZ1bmN0aW9uKCl7cmV0dXJuIFZ9LHRyYWNrRHluYW1pY0hvbGVJblN0YXRpY1NoZWxsOmZ1bmN0aW9uKCl7cmV0dXJuIEt9LHVzZUR5bmFtaWNSb3V0ZVBhcmFtczpmdW5jdGlvbigpe3JldHVybiBIfSx1c2VEeW5hbWljU2VhcmNoUGFyYW1zOmZ1bmN0aW9uKCl7cmV0dXJuIFh9fTtmb3IodmFyIGkgaW4gbylPYmplY3QuZGVmaW5lUHJvcGVydHkocixpLHtlbnVtZXJhYmxlOiEwLGdldDpvW2ldfSk7bGV0IHU9KG49ZS5yKDc1MjAxKSkmJm4uX19lc01vZHVsZT9uOntkZWZhdWx0Om59LHM9ZS5yKDkzMjEzKSxjPWUucigxNjQzMiksZD1lLnIoMTI5NjUpLGw9ZS5yKDg5NzkxKSxmPWUucigxNTUwOCkscD1lLnIoNTM0NTkpLGg9ZS5yKDI0Mzg2KSxtPWUucig4NDA4MikseT1lLnIoNDEwNjIpLGI9ImZ1bmN0aW9uIj09dHlwZW9mIHUuZGVmYXVsdC51bnN0YWJsZV9wb3N0cG9uZTtmdW5jdGlvbiBnKGUpe3JldHVybntpc0RlYnVnRHluYW1pY0FjY2Vzc2VzOmUsZHluYW1pY0FjY2Vzc2VzOltdLHN5bmNEeW5hbWljRXJyb3JXaXRoU3RhY2s6bnVsbH19ZnVuY3Rpb24gXygpe3JldHVybntoYXNTdXNwZW5zZUFib3ZlQm9keTohMSxoYXNEeW5hbWljTWV0YWRhdGE6ITEsZHluYW1pY01ldGFkYXRhOm51bGwsaGFzRHluYW1pY1ZpZXdwb3J0OiExLGhhc0FsbG93ZWREeW5hbWljOiExLGR5bmFtaWNFcnJvcnM6W119fWZ1bmN0aW9uIEUoZSl7dmFyIHQ7cmV0dXJuIG51bGw9PSh0PWUuZHluYW1pY0FjY2Vzc2VzWzBdKT92b2lkIDA6dC5leHByZXNzaW9ufWZ1bmN0aW9uIFIoZSx0LHIpe2lmKHQpc3dpdGNoKHQudHlwZSl7Y2FzZSJjYWNoZSI6Y2FzZSJ1bnN0YWJsZS1jYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpyZXR1cm59aWYoIWUuZm9yY2VEeW5hbWljJiYhZS5mb3JjZVN0YXRpYyl7aWYoZS5keW5hbWljU2hvdWxkRXJyb3IpdGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyBjLlN0YXRpY0dlbkJhaWxvdXRFcnJvcihgUm91dGUgJHtlLnJvdXRlfSB3aXRoIFxgZHluYW1pYyA9ICJlcnJvciJcYCBjb3VsZG4ndCBiZSByZW5kZXJlZCBzdGF0aWNhbGx5IGJlY2F1c2UgaXQgdXNlZCBcYCR7cn1cYC4gU2VlIG1vcmUgaW5mbyBoZXJlOiBodHRwczovL25leHRqcy5vcmcvZG9jcy9hcHAvYnVpbGRpbmcteW91ci1hcHBsaWNhdGlvbi9yZW5kZXJpbmcvc3RhdGljLWFuZC1keW5hbWljI2R5bmFtaWMtcmVuZGVyaW5nYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU1NTMiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7aWYodClzd2l0Y2godC50eXBlKXtjYXNlInByZXJlbmRlci1wcHIiOnJldHVybiBEKGUucm91dGUscix0LmR5bmFtaWNUcmFja2luZyk7Y2FzZSJwcmVyZW5kZXItbGVnYWN5Ijp0LnJldmFsaWRhdGU9MDtsZXQgbj1PYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHMuRHluYW1pY1NlcnZlckVycm9yKGBSb3V0ZSAke2Uucm91dGV9IGNvdWxkbid0IGJlIHJlbmRlcmVkIHN0YXRpY2FsbHkgYmVjYXVzZSBpdCB1c2VkICR7cn0uIFNlZSBtb3JlIGluZm8gaGVyZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvZHluYW1pYy1zZXJ2ZXItZXJyb3JgKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTU1MCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTt0aHJvdyBlLmR5bmFtaWNVc2FnZURlc2NyaXB0aW9uPXIsZS5keW5hbWljVXNhZ2VTdGFjaz1uLnN0YWNrLG59fX1mdW5jdGlvbiB2KGUsdCxyKXtsZXQgbj1PYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHMuRHluYW1pY1NlcnZlckVycm9yKGBSb3V0ZSAke3Qucm91dGV9IGNvdWxkbid0IGJlIHJlbmRlcmVkIHN0YXRpY2FsbHkgYmVjYXVzZSBpdCB1c2VkIFxgJHtlfVxgLiBTZWUgbW9yZSBpbmZvIGhlcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL2R5bmFtaWMtc2VydmVyLWVycm9yYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU1NTgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7dGhyb3cgci5yZXZhbGlkYXRlPTAsdC5keW5hbWljVXNhZ2VEZXNjcmlwdGlvbj1lLHQuZHluYW1pY1VzYWdlU3RhY2s9bi5zdGFjayxufWZ1bmN0aW9uIE8oZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJjYWNoZSI6Y2FzZSJ1bnN0YWJsZS1jYWNoZSI6Y2FzZSJwcml2YXRlLWNhY2hlIjpyZXR1cm59fWZ1bmN0aW9uIHcoZSx0LHIpe2xldCBuPUMoYFJvdXRlICR7ZX0gbmVlZHMgdG8gYmFpbCBvdXQgb2YgcHJlcmVuZGVyaW5nIGF0IHRoaXMgcG9pbnQgYmVjYXVzZSBpdCB1c2VkICR7dH0uYCk7ci5jb250cm9sbGVyLmFib3J0KG4pO2xldCBhPXIuZHluYW1pY1RyYWNraW5nO2EmJmEuZHluYW1pY0FjY2Vzc2VzLnB1c2goe3N0YWNrOmEuaXNEZWJ1Z0R5bmFtaWNBY2Nlc3Nlcz9FcnJvcigpLnN0YWNrOnZvaWQgMCxleHByZXNzaW9uOnR9KX1mdW5jdGlvbiBQKGUsdCxyLG4pe2xldCBhPW4uZHluYW1pY1RyYWNraW5nO3coZSx0LG4pLGEmJm51bGw9PT1hLnN5bmNEeW5hbWljRXJyb3JXaXRoU3RhY2smJihhLnN5bmNEeW5hbWljRXJyb3JXaXRoU3RhY2s9cil9ZnVuY3Rpb24gUyhlLHQscixuKXtpZighMT09PW4uY29udHJvbGxlci5zaWduYWwuYWJvcnRlZCl7dyhlLHQsbik7bGV0IGE9bi5keW5hbWljVHJhY2tpbmc7YSYmbnVsbD09PWEuc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjayYmKGEuc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjaz1yKX10aHJvdyBDKGBSb3V0ZSAke2V9IG5lZWRzIHRvIGJhaWwgb3V0IG9mIHByZXJlbmRlcmluZyBhdCB0aGlzIHBvaW50IGJlY2F1c2UgaXQgdXNlZCAke3R9LmApfWZ1bmN0aW9uIGooe3JlYXNvbjplLHJvdXRlOnR9KXtsZXQgcj1kLndvcmtVbml0QXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7RCh0LGUsciYmInByZXJlbmRlci1wcHIiPT09ci50eXBlP3IuZHluYW1pY1RyYWNraW5nOm51bGwpfWZ1bmN0aW9uIEQoZSx0LHIpeyhmdW5jdGlvbigpe2lmKCFiKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiSW52YXJpYW50OiBSZWFjdC51bnN0YWJsZV9wb3N0cG9uZSBpcyBub3QgZGVmaW5lZC4gVGhpcyBzdWdnZXN0cyB0aGUgd3JvbmcgdmVyc2lvbiBvZiBSZWFjdCB3YXMgbG9hZGVkLiBUaGlzIGlzIGEgYnVnIGluIE5leHQuanMiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTIyNCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KX0pKCksciYmci5keW5hbWljQWNjZXNzZXMucHVzaCh7c3RhY2s6ci5pc0RlYnVnRHluYW1pY0FjY2Vzc2VzP0Vycm9yKCkuc3RhY2s6dm9pZCAwLGV4cHJlc3Npb246dH0pLHUuZGVmYXVsdC51bnN0YWJsZV9wb3N0cG9uZShUKGUsdCkpfWZ1bmN0aW9uIFQoZSx0KXtyZXR1cm5gUm91dGUgJHtlfSBuZWVkcyB0byBiYWlsIG91dCBvZiBwcmVyZW5kZXJpbmcgYXQgdGhpcyBwb2ludCBiZWNhdXNlIGl0IHVzZWQgJHt0fS4gUmVhY3QgdGhyb3dzIHRoaXMgc3BlY2lhbCBvYmplY3QgdG8gaW5kaWNhdGUgd2hlcmUuIEl0IHNob3VsZCBub3QgYmUgY2F1Z2h0IGJ5IHlvdXIgb3duIHRyeS9jYXRjaC4gTGVhcm4gbW9yZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvcHByLWNhdWdodC1lcnJvcmB9ZnVuY3Rpb24geChlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiYic3RyaW5nIj09dHlwZW9mIGUubWVzc2FnZSYmQShlLm1lc3NhZ2UpfWZ1bmN0aW9uIEEoZSl7cmV0dXJuIGUuaW5jbHVkZXMoIm5lZWRzIHRvIGJhaWwgb3V0IG9mIHByZXJlbmRlcmluZyBhdCB0aGlzIHBvaW50IGJlY2F1c2UgaXQgdXNlZCIpJiZlLmluY2x1ZGVzKCJMZWFybiBtb3JlOiBodHRwczovL25leHRqcy5vcmcvZG9jcy9tZXNzYWdlcy9wcHItY2F1Z2h0LWVycm9yIil9aWYoITE9PT1BKFQoIiUlJSIsIl5eXiIpKSl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIkludmFyaWFudDogaXNEeW5hbWljUG9zdHBvbmUgbWlzaWRlbnRpZmllZCBhIHBvc3Rwb25lIHJlYXNvbi4gVGhpcyBpcyBhIGJ1ZyBpbiBOZXh0LmpzIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkUyOTYiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7bGV0IE09Ik5FWFRfUFJFUkVOREVSX0lOVEVSUlVQVEVEIjtmdW5jdGlvbiBDKGUpe2xldCB0PU9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcihlKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTM5NCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtyZXR1cm4gdC5kaWdlc3Q9TSx0fWZ1bmN0aW9uIGsoZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmZS5kaWdlc3Q9PT1NJiYibmFtZSJpbiBlJiYibWVzc2FnZSJpbiBlJiZlIGluc3RhbmNlb2YgRXJyb3J9ZnVuY3Rpb24gTihlKXtyZXR1cm4gZS5sZW5ndGg+MH1mdW5jdGlvbiBJKGUsdCl7cmV0dXJuIGUuZHluYW1pY0FjY2Vzc2VzLnB1c2goLi4udC5keW5hbWljQWNjZXNzZXMpLGUuZHluYW1pY0FjY2Vzc2VzfWZ1bmN0aW9uIFUoZSl7cmV0dXJuIGUuZmlsdGVyKGU9PiJzdHJpbmciPT10eXBlb2YgZS5zdGFjayYmZS5zdGFjay5sZW5ndGg+MCkubWFwKCh7ZXhwcmVzc2lvbjplLHN0YWNrOnR9KT0+KHQ9dC5zcGxpdCgiXG4iKS5zbGljZSg0KS5maWx0ZXIoZT0+IShlLmluY2x1ZGVzKCJub2RlX21vZHVsZXMvbmV4dC8iKXx8ZS5pbmNsdWRlcygiICg8YW5vbnltb3VzPikiKXx8ZS5pbmNsdWRlcygiIChub2RlOiIpKSkuam9pbigiXG4iKSxgRHluYW1pYyBBUEkgVXNhZ2UgRGVidWcgLSAke2V9Ogoke3R9YCkpfWZ1bmN0aW9uIEwoKXtsZXQgZT1uZXcgQWJvcnRDb250cm9sbGVyO3JldHVybiBlLmFib3J0KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgbS5CYWlsb3V0VG9DU1JFcnJvcigiUmVuZGVyIGluIEJyb3dzZXIiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTcyMSIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSksZS5zaWduYWx9ZnVuY3Rpb24gJChlKXtzd2l0Y2goZS50eXBlKXtjYXNlInByZXJlbmRlciI6Y2FzZSJwcmVyZW5kZXItcnVudGltZSI6bGV0IHQ9bmV3IEFib3J0Q29udHJvbGxlcjtpZihlLmNhY2hlU2lnbmFsKWUuY2FjaGVTaWduYWwuaW5wdXRSZWFkeSgpLnRoZW4oKCk9Pnt0LmFib3J0KCl9KTtlbHNle2xldCByPSgwLGQuZ2V0UnVudGltZVN0YWdlUHJvbWlzZSkoZSk7cj9yLnRoZW4oKCk9PigwLGguc2NoZWR1bGVPbk5leHRUaWNrKSgoKT0+dC5hYm9ydCgpKSk6KDAsaC5zY2hlZHVsZU9uTmV4dFRpY2spKCgpPT50LmFib3J0KCkpfXJldHVybiB0LnNpZ25hbDtjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyLXBwciI6Y2FzZSJwcmVyZW5kZXItbGVnYWN5IjpjYXNlInJlcXVlc3QiOmNhc2UiY2FjaGUiOmNhc2UicHJpdmF0ZS1jYWNoZSI6Y2FzZSJ1bnN0YWJsZS1jYWNoZSI6cmV0dXJufX1mdW5jdGlvbiBCKGUsdCl7bGV0IHI9dC5keW5hbWljVHJhY2tpbmc7ciYmci5keW5hbWljQWNjZXNzZXMucHVzaCh7c3RhY2s6ci5pc0RlYnVnRHluYW1pY0FjY2Vzc2VzP0Vycm9yKCkuc3RhY2s6dm9pZCAwLGV4cHJlc3Npb246ZX0pfWZ1bmN0aW9uIEgoZSl7bGV0IHQ9bC53b3JrQXN5bmNTdG9yYWdlLmdldFN0b3JlKCkscj1kLndvcmtVbml0QXN5bmNTdG9yYWdlLmdldFN0b3JlKCk7aWYodCYmcilzd2l0Y2goci50eXBlKXtjYXNlInByZXJlbmRlci1jbGllbnQiOmNhc2UicHJlcmVuZGVyIjp7bGV0IG49ci5mYWxsYmFja1JvdXRlUGFyYW1zO24mJm4uc2l6ZT4wJiZ1LmRlZmF1bHQudXNlKCgwLGYubWFrZUhhbmdpbmdQcm9taXNlKShyLnJlbmRlclNpZ25hbCx0LnJvdXRlLGUpKTticmVha31jYXNlInByZXJlbmRlci1wcHIiOntsZXQgbj1yLmZhbGxiYWNrUm91dGVQYXJhbXM7aWYobiYmbi5zaXplPjApcmV0dXJuIEQodC5yb3V0ZSxlLHIuZHluYW1pY1RyYWNraW5nKTticmVha31jYXNlInByZXJlbmRlci1ydW50aW1lIjp0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IHkuSW52YXJpYW50RXJyb3IoYFxgJHtlfVxgIHdhcyBjYWxsZWQgZHVyaW5nIGEgcnVudGltZSBwcmVyZW5kZXIuIE5leHQuanMgc2hvdWxkIGJlIHByZXZlbnRpbmcgJHtlfSBmcm9tIGJlaW5nIGluY2x1ZGVkIGluIHNlcnZlciBjb21wb25lbnRzIHN0YXRpY2FsbHksIGJ1dCBkaWQgbm90IGluIHRoaXMgY2FzZS5gKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTc3MSIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtjYXNlImNhY2hlIjpjYXNlInByaXZhdGUtY2FjaGUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgeS5JbnZhcmlhbnRFcnJvcihgXGAke2V9XGAgd2FzIGNhbGxlZCBpbnNpZGUgYSBjYWNoZSBzY29wZS4gTmV4dC5qcyBzaG91bGQgYmUgcHJldmVudGluZyAke2V9IGZyb20gYmVpbmcgaW5jbHVkZWQgaW4gc2VydmVyIGNvbXBvbmVudHMgc3RhdGljYWxseSwgYnV0IGRpZCBub3QgaW4gdGhpcyBjYXNlLmApLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNzQ1IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfX1mdW5jdGlvbiBYKGUpe2xldCB0PWwud29ya0FzeW5jU3RvcmFnZS5nZXRTdG9yZSgpLHI9ZC53b3JrVW5pdEFzeW5jU3RvcmFnZS5nZXRTdG9yZSgpO2lmKHQpc3dpdGNoKCFyJiYoMCxkLnRocm93Rm9yTWlzc2luZ1JlcXVlc3RTdG9yZSkoZSksci50eXBlKXtjYXNlInByZXJlbmRlci1jbGllbnQiOnUuZGVmYXVsdC51c2UoKDAsZi5tYWtlSGFuZ2luZ1Byb21pc2UpKHIucmVuZGVyU2lnbmFsLHQucm91dGUsZSkpO2JyZWFrO2Nhc2UicHJlcmVuZGVyLWxlZ2FjeSI6Y2FzZSJwcmVyZW5kZXItcHByIjppZih0LmZvcmNlU3RhdGljKXJldHVybjt0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3IG0uQmFpbG91dFRvQ1NSRXJyb3IoZSksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkUzOTQiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJwcmVyZW5kZXIiOmNhc2UicHJlcmVuZGVyLXJ1bnRpbWUiOnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgeS5JbnZhcmlhbnRFcnJvcihgXGAke2V9XGAgd2FzIGNhbGxlZCBmcm9tIGEgU2VydmVyIENvbXBvbmVudC4gTmV4dC5qcyBzaG91bGQgYmUgcHJldmVudGluZyAke2V9IGZyb20gYmVpbmcgaW5jbHVkZWQgaW4gc2VydmVyIGNvbXBvbmVudHMgc3RhdGljYWxseSwgYnV0IGRpZCBub3QgaW4gdGhpcyBjYXNlLmApLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNzk1IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO2Nhc2UiY2FjaGUiOmNhc2UidW5zdGFibGUtY2FjaGUiOmNhc2UicHJpdmF0ZS1jYWNoZSI6dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyB5LkludmFyaWFudEVycm9yKGBcYCR7ZX1cYCB3YXMgY2FsbGVkIGluc2lkZSBhIGNhY2hlIHNjb3BlLiBOZXh0LmpzIHNob3VsZCBiZSBwcmV2ZW50aW5nICR7ZX0gZnJvbSBiZWluZyBpbmNsdWRlZCBpbiBzZXJ2ZXIgY29tcG9uZW50cyBzdGF0aWNhbGx5LCBidXQgZGlkIG5vdCBpbiB0aGlzIGNhc2UuYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3NDUiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7Y2FzZSJyZXF1ZXN0IjpyZXR1cm59fWxldCBGPS9cblxzK2F0IFN1c3BlbnNlIFwoPGFub255bW91cz5cKS8sVz1SZWdFeHAoYFxcblxccythdCBTdXNwZW5zZSBcXCg8YW5vbnltb3VzPlxcKSg/Oig/IVxcblxccythdCAoPzpib2R5fGRpdnxtYWlufHNlY3Rpb258YXJ0aWNsZXxhc2lkZXxoZWFkZXJ8Zm9vdGVyfG5hdnxmb3JtfHB8c3BhbnxoMXxoMnxoM3xoNHxoNXxoNikgXFwoPGFub255bW91cz5cXCkpW1xcc1xcU10pKj9cXG5cXHMrYXQgJHtwLlJPT1RfTEFZT1VUX0JPVU5EQVJZX05BTUV9IFxcKFteXFxuXSpcXClgKSxxPVJlZ0V4cChgXFxuXFxzK2F0ICR7cC5NRVRBREFUQV9CT1VOREFSWV9OQU1FfVtcXG5cXHNdYCksRz1SZWdFeHAoYFxcblxccythdCAke3AuVklFV1BPUlRfQk9VTkRBUllfTkFNRX1bXFxuXFxzXWApLHo9UmVnRXhwKGBcXG5cXHMrYXQgJHtwLk9VVExFVF9CT1VOREFSWV9OQU1FfVtcXG5cXHNdYCk7ZnVuY3Rpb24gWShlLHQscixuKXtpZighei50ZXN0KHQpKXtpZihxLnRlc3QodCkpe3IuaGFzRHluYW1pY01ldGFkYXRhPSEwO3JldHVybn1pZihHLnRlc3QodCkpe3IuaGFzRHluYW1pY1ZpZXdwb3J0PSEwO3JldHVybn1pZihXLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITAsci5oYXNTdXNwZW5zZUFib3ZlQm9keT0hMDtyZXR1cm59ZWxzZSBpZihGLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITA7cmV0dXJufWVsc2V7aWYobi5zeW5jRHluYW1pY0Vycm9yV2l0aFN0YWNrKXJldHVybiB2b2lkIHIuZHluYW1pY0Vycm9ycy5wdXNoKG4uc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjayk7bGV0IGE9SihgUm91dGUgIiR7ZS5yb3V0ZX0iOiBVbmNhY2hlZCBkYXRhIHdhcyBhY2Nlc3NlZCBvdXRzaWRlIG9mIDxTdXNwZW5zZT4uIFRoaXMgZGVsYXlzIHRoZSBlbnRpcmUgcGFnZSBmcm9tIHJlbmRlcmluZywgcmVzdWx0aW5nIGluIGEgc2xvdyB1c2VyIGV4cGVyaWVuY2UuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL2Jsb2NraW5nLXJvdXRlYCx0KTtyZXR1cm4gdm9pZCByLmR5bmFtaWNFcnJvcnMucHVzaChhKX19fWZ1bmN0aW9uIFYoZSx0LHIsbil7aWYoIXoudGVzdCh0KSl7aWYocS50ZXN0KHQpKXtyLmR5bmFtaWNNZXRhZGF0YT1KKGBSb3V0ZSAiJHtlLnJvdXRlfSI6IFVuY2FjaGVkIGRhdGEgb3IgXGBjb25uZWN0aW9uKClcYCB3YXMgYWNjZXNzZWQgaW5zaWRlIFxgZ2VuZXJhdGVNZXRhZGF0YVxgLiBFeGNlcHQgZm9yIHRoaXMgaW5zdGFuY2UsIHRoZSBwYWdlIHdvdWxkIGhhdmUgYmVlbiBlbnRpcmVseSBwcmVyZW5kZXJhYmxlIHdoaWNoIG1heSBoYXZlIGJlZW4gdGhlIGludGVuZGVkIGJlaGF2aW9yLiBTZWUgbW9yZSBpbmZvIGhlcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL25leHQtcHJlcmVuZGVyLWR5bmFtaWMtbWV0YWRhdGFgLHQpO3JldHVybn1pZihHLnRlc3QodCkpe2xldCBuPUooYFJvdXRlICIke2Uucm91dGV9IjogVW5jYWNoZWQgZGF0YSBvciBcYGNvbm5lY3Rpb24oKVxgIHdhcyBhY2Nlc3NlZCBpbnNpZGUgXGBnZW5lcmF0ZVZpZXdwb3J0XGAuIFRoaXMgZGVsYXlzIHRoZSBlbnRpcmUgcGFnZSBmcm9tIHJlbmRlcmluZywgcmVzdWx0aW5nIGluIGEgc2xvdyB1c2VyIGV4cGVyaWVuY2UuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL25leHQtcHJlcmVuZGVyLWR5bmFtaWMtdmlld3BvcnRgLHQpO3IuZHluYW1pY0Vycm9ycy5wdXNoKG4pO3JldHVybn1pZihXLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITAsci5oYXNTdXNwZW5zZUFib3ZlQm9keT0hMDtyZXR1cm59ZWxzZSBpZihGLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITA7cmV0dXJufWVsc2V7aWYobi5zeW5jRHluYW1pY0Vycm9yV2l0aFN0YWNrKXJldHVybiB2b2lkIHIuZHluYW1pY0Vycm9ycy5wdXNoKG4uc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjayk7bGV0IGE9SihgUm91dGUgIiR7ZS5yb3V0ZX0iOiBVbmNhY2hlZCBkYXRhIG9yIFxgY29ubmVjdGlvbigpXGAgd2FzIGFjY2Vzc2VkIG91dHNpZGUgb2YgXGA8U3VzcGVuc2U+XGAuIFRoaXMgZGVsYXlzIHRoZSBlbnRpcmUgcGFnZSBmcm9tIHJlbmRlcmluZywgcmVzdWx0aW5nIGluIGEgc2xvdyB1c2VyIGV4cGVyaWVuY2UuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL2Jsb2NraW5nLXJvdXRlYCx0KTtyZXR1cm4gdm9pZCByLmR5bmFtaWNFcnJvcnMucHVzaChhKX19fWZ1bmN0aW9uIEsoZSx0LHIsbil7aWYoIXoudGVzdCh0KSl7aWYocS50ZXN0KHQpKXtyLmR5bmFtaWNNZXRhZGF0YT1KKGBSb3V0ZSAiJHtlLnJvdXRlfSI6IFJ1bnRpbWUgZGF0YSBzdWNoIGFzIFxgY29va2llcygpXGAsIFxgaGVhZGVycygpXGAsIFxgcGFyYW1zXGAsIG9yIFxgc2VhcmNoUGFyYW1zXGAgd2FzIGFjY2Vzc2VkIGluc2lkZSBcYGdlbmVyYXRlTWV0YWRhdGFcYCBvciB5b3UgaGF2ZSBmaWxlLWJhc2VkIG1ldGFkYXRhIHN1Y2ggYXMgaWNvbnMgdGhhdCBkZXBlbmQgb24gZHluYW1pYyBwYXJhbXMgc2VnbWVudHMuIEV4Y2VwdCBmb3IgdGhpcyBpbnN0YW5jZSwgdGhlIHBhZ2Ugd291bGQgaGF2ZSBiZWVuIGVudGlyZWx5IHByZXJlbmRlcmFibGUgd2hpY2ggbWF5IGhhdmUgYmVlbiB0aGUgaW50ZW5kZWQgYmVoYXZpb3IuIFNlZSBtb3JlIGluZm8gaGVyZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvbmV4dC1wcmVyZW5kZXItZHluYW1pYy1tZXRhZGF0YWAsdCk7cmV0dXJufWlmKEcudGVzdCh0KSl7bGV0IG49SihgUm91dGUgIiR7ZS5yb3V0ZX0iOiBSdW50aW1lIGRhdGEgc3VjaCBhcyBcYGNvb2tpZXMoKVxgLCBcYGhlYWRlcnMoKVxgLCBcYHBhcmFtc1xgLCBvciBcYHNlYXJjaFBhcmFtc1xgIHdhcyBhY2Nlc3NlZCBpbnNpZGUgXGBnZW5lcmF0ZVZpZXdwb3J0XGAuIFRoaXMgZGVsYXlzIHRoZSBlbnRpcmUgcGFnZSBmcm9tIHJlbmRlcmluZywgcmVzdWx0aW5nIGluIGEgc2xvdyB1c2VyIGV4cGVyaWVuY2UuIExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL25leHQtcHJlcmVuZGVyLWR5bmFtaWMtdmlld3BvcnRgLHQpO3IuZHluYW1pY0Vycm9ycy5wdXNoKG4pO3JldHVybn1pZihXLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITAsci5oYXNTdXNwZW5zZUFib3ZlQm9keT0hMDtyZXR1cm59ZWxzZSBpZihGLnRlc3QodCkpe3IuaGFzQWxsb3dlZER5bmFtaWM9ITA7cmV0dXJufWVsc2V7aWYobi5zeW5jRHluYW1pY0Vycm9yV2l0aFN0YWNrKXJldHVybiB2b2lkIHIuZHluYW1pY0Vycm9ycy5wdXNoKG4uc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjayk7bGV0IGE9SihgUm91dGUgIiR7ZS5yb3V0ZX0iOiBSdW50aW1lIGRhdGEgc3VjaCBhcyBcYGNvb2tpZXMoKVxgLCBcYGhlYWRlcnMoKVxgLCBcYHBhcmFtc1xgLCBvciBcYHNlYXJjaFBhcmFtc1xgIHdhcyBhY2Nlc3NlZCBvdXRzaWRlIG9mIFxgPFN1c3BlbnNlPlxgLiBUaGlzIGRlbGF5cyB0aGUgZW50aXJlIHBhZ2UgZnJvbSByZW5kZXJpbmcsIHJlc3VsdGluZyBpbiBhIHNsb3cgdXNlciBleHBlcmllbmNlLiBMZWFybiBtb3JlOiBodHRwczovL25leHRqcy5vcmcvZG9jcy9tZXNzYWdlcy9ibG9ja2luZy1yb3V0ZWAsdCk7cmV0dXJuIHZvaWQgci5keW5hbWljRXJyb3JzLnB1c2goYSl9fX1mdW5jdGlvbiBKKGUsdCl7bGV0IHI9T2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGUpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMzk0IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3JldHVybiByLnN0YWNrPXIubmFtZSsiOiAiK2UrdCxyfXZhciBaPSgoYT17fSlbYS5GdWxsPTBdPSJGdWxsIixhW2EuRW1wdHk9MV09IkVtcHR5IixhW2EuRXJyb3JlZD0yXT0iRXJyb3JlZCIsYSk7ZnVuY3Rpb24gUShlLHQpe2NvbnNvbGUuZXJyb3IodCksZS5kZXZ8fChlLmhhc1JlYWRhYmxlRXJyb3JTdGFja3M/Y29uc29sZS5lcnJvcihgVG8gZ2V0IGEgbW9yZSBkZXRhaWxlZCBzdGFjayB0cmFjZSBhbmQgcGlucG9pbnQgdGhlIGlzc3VlLCBzdGFydCB0aGUgYXBwIGluIGRldmVsb3BtZW50IG1vZGUgYnkgcnVubmluZyBcYG5leHQgZGV2XGAsIHRoZW4gb3BlbiAiJHtlLnJvdXRlfSIgaW4geW91ciBicm93c2VyIHRvIGludmVzdGlnYXRlIHRoZSBlcnJvci5gKTpjb25zb2xlLmVycm9yKGBUbyBnZXQgYSBtb3JlIGRldGFpbGVkIHN0YWNrIHRyYWNlIGFuZCBwaW5wb2ludCB0aGUgaXNzdWUsIHRyeSBvbmUgb2YgdGhlIGZvbGxvd2luZzoKICAtIFN0YXJ0IHRoZSBhcHAgaW4gZGV2ZWxvcG1lbnQgbW9kZSBieSBydW5uaW5nIFxgbmV4dCBkZXZcYCwgdGhlbiBvcGVuICIke2Uucm91dGV9IiBpbiB5b3VyIGJyb3dzZXIgdG8gaW52ZXN0aWdhdGUgdGhlIGVycm9yLgogIC0gUmVydW4gdGhlIHByb2R1Y3Rpb24gYnVpbGQgd2l0aCBcYG5leHQgYnVpbGQgLS1kZWJ1Zy1wcmVyZW5kZXJcYCB0byBnZW5lcmF0ZSBiZXR0ZXIgc3RhY2sgdHJhY2VzLmApKX1mdW5jdGlvbiBlZShlLHQscixuKXtpZihuLnN5bmNEeW5hbWljRXJyb3JXaXRoU3RhY2spdGhyb3cgUShlLG4uc3luY0R5bmFtaWNFcnJvcldpdGhTdGFjayksbmV3IGMuU3RhdGljR2VuQmFpbG91dEVycm9yO2lmKDAhPT10KXtpZihyLmhhc1N1c3BlbnNlQWJvdmVCb2R5KXJldHVybjtsZXQgbj1yLmR5bmFtaWNFcnJvcnM7aWYobi5sZW5ndGg+MCl7Zm9yKGxldCB0PTA7dDxuLmxlbmd0aDt0KyspUShlLG5bdF0pO3Rocm93IG5ldyBjLlN0YXRpY0dlbkJhaWxvdXRFcnJvcn1pZihyLmhhc0R5bmFtaWNWaWV3cG9ydCl0aHJvdyBjb25zb2xlLmVycm9yKGBSb3V0ZSAiJHtlLnJvdXRlfSIgaGFzIGEgXGBnZW5lcmF0ZVZpZXdwb3J0XGAgdGhhdCBkZXBlbmRzIG9uIFJlcXVlc3QgZGF0YSAoXGBjb29raWVzKClcYCwgZXRjLi4uKSBvciB1bmNhY2hlZCBleHRlcm5hbCBkYXRhIChcYGZldGNoKC4uLilcYCwgZXRjLi4uKSB3aXRob3V0IGV4cGxpY2l0bHkgYWxsb3dpbmcgZnVsbHkgZHluYW1pYyByZW5kZXJpbmcuIFNlZSBtb3JlIGluZm8gaGVyZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvbmV4dC1wcmVyZW5kZXItZHluYW1pYy12aWV3cG9ydGApLG5ldyBjLlN0YXRpY0dlbkJhaWxvdXRFcnJvcjtpZigxPT09dCl0aHJvdyBjb25zb2xlLmVycm9yKGBSb3V0ZSAiJHtlLnJvdXRlfSIgZGlkIG5vdCBwcm9kdWNlIGEgc3RhdGljIHNoZWxsIGFuZCBOZXh0LmpzIHdhcyB1bmFibGUgdG8gZGV0ZXJtaW5lIGEgcmVhc29uLiBUaGlzIGlzIGEgYnVnIGluIE5leHQuanMuYCksbmV3IGMuU3RhdGljR2VuQmFpbG91dEVycm9yfWVsc2UgaWYoITE9PT1yLmhhc0FsbG93ZWREeW5hbWljJiZyLmhhc0R5bmFtaWNNZXRhZGF0YSl0aHJvdyBjb25zb2xlLmVycm9yKGBSb3V0ZSAiJHtlLnJvdXRlfSIgaGFzIGEgXGBnZW5lcmF0ZU1ldGFkYXRhXGAgdGhhdCBkZXBlbmRzIG9uIFJlcXVlc3QgZGF0YSAoXGBjb29raWVzKClcYCwgZXRjLi4uKSBvciB1bmNhY2hlZCBleHRlcm5hbCBkYXRhIChcYGZldGNoKC4uLilcYCwgZXRjLi4uKSB3aGVuIHRoZSByZXN0IG9mIHRoZSByb3V0ZSBkb2VzIG5vdC4gU2VlIG1vcmUgaW5mbyBoZXJlOiBodHRwczovL25leHRqcy5vcmcvZG9jcy9tZXNzYWdlcy9uZXh0LXByZXJlbmRlci1keW5hbWljLW1ldGFkYXRhYCksbmV3IGMuU3RhdGljR2VuQmFpbG91dEVycm9yfWZ1bmN0aW9uIGV0KGUsdCxyKXtpZihyLmhhc1N1c3BlbnNlQWJvdmVCb2R5KXJldHVybltdO2lmKDAhPT10KXtsZXQgbj1yLmR5bmFtaWNFcnJvcnM7aWYobi5sZW5ndGg+MClyZXR1cm4gbjtpZigxPT09dClyZXR1cm5bT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ldyB5LkludmFyaWFudEVycm9yKGBSb3V0ZSAiJHtlLnJvdXRlfSIgZGlkIG5vdCBwcm9kdWNlIGEgc3RhdGljIHNoZWxsIGFuZCBOZXh0LmpzIHdhcyB1bmFibGUgdG8gZGV0ZXJtaW5lIGEgcmVhc29uLmApLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFOTM2IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pXX1lbHNlIGlmKCExPT09ci5oYXNBbGxvd2VkRHluYW1pYyYmMD09PXIuZHluYW1pY0Vycm9ycy5sZW5ndGgmJnIuZHluYW1pY01ldGFkYXRhKXJldHVybltyLmR5bmFtaWNNZXRhZGF0YV07cmV0dXJuW119ZnVuY3Rpb24gZXIoZSx0KXtyZXR1cm4gZS5ydW50aW1lU3RhZ2VQcm9taXNlP2UucnVudGltZVN0YWdlUHJvbWlzZS50aGVuKCgpPT50KTp0fX0sNTIzMDUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInVuc3RhYmxlX3JldGhyb3ciLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiBlKHQpe2lmKCgwLGkuaXNOZXh0Um91dGVyRXJyb3IpKHQpfHwoMCxvLmlzQmFpbG91dFRvQ1NSRXJyb3IpKHQpfHwoMCxzLmlzRHluYW1pY1NlcnZlckVycm9yKSh0KXx8KDAsdS5pc0R5bmFtaWNQb3N0cG9uZSkodCl8fCgwLGEuaXNQb3N0cG9uZSkodCl8fCgwLG4uaXNIYW5naW5nUHJvbWlzZVJlamVjdGlvbkVycm9yKSh0KXx8KDAsdS5pc1ByZXJlbmRlckludGVycnVwdGVkRXJyb3IpKHQpKXRocm93IHQ7dCBpbnN0YW5jZW9mIEVycm9yJiYiY2F1c2UiaW4gdCYmZSh0LmNhdXNlKX19fSk7bGV0IG49ZS5yKDE1NTA4KSxhPWUucigxNzU1Niksbz1lLnIoODQwODIpLGk9ZS5yKDQ5ODQzKSx1PWUucig2Nzc4MSkscz1lLnIoOTMyMTMpOygiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDYyOTU5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJ1bnN0YWJsZV9yZXRocm93Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj0idSI8dHlwZW9mIHdpbmRvdz9lLnIoNTIzMDUpLnVuc3RhYmxlX3JldGhyb3c6ZS5yKDE4NzgyKS51bnN0YWJsZV9yZXRocm93OygiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDMyNTIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e1JlYWRvbmx5VVJMU2VhcmNoUGFyYW1zOmZ1bmN0aW9uKCl7cmV0dXJuIG8uUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXN9LFJlZGlyZWN0VHlwZTpmdW5jdGlvbigpe3JldHVybiB1LlJlZGlyZWN0VHlwZX0sZm9yYmlkZGVuOmZ1bmN0aW9uKCl7cmV0dXJuIGMuZm9yYmlkZGVufSxub3RGb3VuZDpmdW5jdGlvbigpe3JldHVybiBzLm5vdEZvdW5kfSxwZXJtYW5lbnRSZWRpcmVjdDpmdW5jdGlvbigpe3JldHVybiBpLnBlcm1hbmVudFJlZGlyZWN0fSxyZWRpcmVjdDpmdW5jdGlvbigpe3JldHVybiBpLnJlZGlyZWN0fSx1bmF1dGhvcml6ZWQ6ZnVuY3Rpb24oKXtyZXR1cm4gZC51bmF1dGhvcml6ZWR9LHVuc3RhYmxlX2lzVW5yZWNvZ25pemVkQWN0aW9uRXJyb3I6ZnVuY3Rpb24oKXtyZXR1cm4gZn0sdW5zdGFibGVfcmV0aHJvdzpmdW5jdGlvbigpe3JldHVybiBsLnVuc3RhYmxlX3JldGhyb3d9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89ZS5yKDM5Mjc1KSxpPWUucig0MTcyMSksdT1lLnIoOTA4NjIpLHM9ZS5yKDY1OTk1KSxjPWUucigxNzc2MiksZD1lLnIoNzk1MzkpLGw9ZS5yKDYyOTU5KTtmdW5jdGlvbiBmKCl7dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKCJgdW5zdGFibGVfaXNVbnJlY29nbml6ZWRBY3Rpb25FcnJvcmAgY2FuIG9ubHkgYmUgdXNlZCBvbiB0aGUgY2xpZW50LiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNzc2IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDI4OTk1LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtSZWFkb25seVVSTFNlYXJjaFBhcmFtczpmdW5jdGlvbigpe3JldHVybiB1LlJlYWRvbmx5VVJMU2VhcmNoUGFyYW1zfSxSZWRpcmVjdFR5cGU6ZnVuY3Rpb24oKXtyZXR1cm4gbC5SZWRpcmVjdFR5cGV9LFNlcnZlckluc2VydGVkSFRNTENvbnRleHQ6ZnVuY3Rpb24oKXtyZXR1cm4gYy5TZXJ2ZXJJbnNlcnRlZEhUTUxDb250ZXh0fSxmb3JiaWRkZW46ZnVuY3Rpb24oKXtyZXR1cm4gbC5mb3JiaWRkZW59LG5vdEZvdW5kOmZ1bmN0aW9uKCl7cmV0dXJuIGwubm90Rm91bmR9LHBlcm1hbmVudFJlZGlyZWN0OmZ1bmN0aW9uKCl7cmV0dXJuIGwucGVybWFuZW50UmVkaXJlY3R9LHJlZGlyZWN0OmZ1bmN0aW9uKCl7cmV0dXJuIGwucmVkaXJlY3R9LHVuYXV0aG9yaXplZDpmdW5jdGlvbigpe3JldHVybiBsLnVuYXV0aG9yaXplZH0sdW5zdGFibGVfaXNVbnJlY29nbml6ZWRBY3Rpb25FcnJvcjpmdW5jdGlvbigpe3JldHVybiBkLnVuc3RhYmxlX2lzVW5yZWNvZ25pemVkQWN0aW9uRXJyb3J9LHVuc3RhYmxlX3JldGhyb3c6ZnVuY3Rpb24oKXtyZXR1cm4gbC51bnN0YWJsZV9yZXRocm93fSx1c2VQYXJhbXM6ZnVuY3Rpb24oKXtyZXR1cm4gYn0sdXNlUGF0aG5hbWU6ZnVuY3Rpb24oKXtyZXR1cm4gbX0sdXNlUm91dGVyOmZ1bmN0aW9uKCl7cmV0dXJuIHl9LHVzZVNlYXJjaFBhcmFtczpmdW5jdGlvbigpe3JldHVybiBofSx1c2VTZWxlY3RlZExheW91dFNlZ21lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gX30sdXNlU2VsZWN0ZWRMYXlvdXRTZWdtZW50czpmdW5jdGlvbigpe3JldHVybiBnfSx1c2VTZXJ2ZXJJbnNlcnRlZEhUTUw6ZnVuY3Rpb24oKXtyZXR1cm4gYy51c2VTZXJ2ZXJJbnNlcnRlZEhUTUx9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IG89ZS5yKDQ0MDY2KS5fKGUucig3NTIwMSkpLGk9ZS5yKDE2ODcyKSx1PWUucigzMTg5OSkscz1lLnIoMjc0NTQpLGM9ZS5yKDE4NDYyKSxkPWUucig3NTA1MSksbD1lLnIoMzI1MiksZj0idSI8dHlwZW9mIHdpbmRvdz9lLnIoNjc3ODEpLnVzZUR5bmFtaWNSb3V0ZVBhcmFtczp2b2lkIDAscD0idSI8dHlwZW9mIHdpbmRvdz9lLnIoNjc3ODEpLnVzZUR5bmFtaWNTZWFyY2hQYXJhbXM6dm9pZCAwO2Z1bmN0aW9uIGgoKXtwPy4oInVzZVNlYXJjaFBhcmFtcygpIik7bGV0IGU9KDAsby51c2VDb250ZXh0KSh1LlNlYXJjaFBhcmFtc0NvbnRleHQpO3JldHVybigwLG8udXNlTWVtbykoKCk9PmU/bmV3IHUuUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXMoZSk6bnVsbCxbZV0pfWZ1bmN0aW9uIG0oKXtyZXR1cm4gZj8uKCJ1c2VQYXRobmFtZSgpIiksKDAsby51c2VDb250ZXh0KSh1LlBhdGhuYW1lQ29udGV4dCl9ZnVuY3Rpb24geSgpe2xldCBlPSgwLG8udXNlQ29udGV4dCkoaS5BcHBSb3V0ZXJDb250ZXh0KTtpZihudWxsPT09ZSl0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoImludmFyaWFudCBleHBlY3RlZCBhcHAgcm91dGVyIHRvIGJlIG1vdW50ZWQiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTIzOCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtyZXR1cm4gZX1mdW5jdGlvbiBiKCl7cmV0dXJuIGY/LigidXNlUGFyYW1zKCkiKSwoMCxvLnVzZUNvbnRleHQpKHUuUGF0aFBhcmFtc0NvbnRleHQpfWZ1bmN0aW9uIGcoZT0iY2hpbGRyZW4iKXtmPy4oInVzZVNlbGVjdGVkTGF5b3V0U2VnbWVudHMoKSIpO2xldCB0PSgwLG8udXNlQ29udGV4dCkoaS5MYXlvdXRSb3V0ZXJDb250ZXh0KTtyZXR1cm4gdD8oMCxzLmdldFNlbGVjdGVkTGF5b3V0U2VnbWVudFBhdGgpKHQucGFyZW50VHJlZSxlKTpudWxsfWZ1bmN0aW9uIF8oZT0iY2hpbGRyZW4iKXtmPy4oInVzZVNlbGVjdGVkTGF5b3V0U2VnbWVudCgpIiksKDAsby51c2VDb250ZXh0KSh1Lk5hdmlnYXRpb25Qcm9taXNlc0NvbnRleHQpO2xldCB0PWcoZSk7cmV0dXJuKDAscy5jb21wdXRlU2VsZWN0ZWRMYXlvdXRTZWdtZW50KSh0LGUpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9XSk7"}},"time_used":10,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/_next/static/chunks/800e836146d6e7eb.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.702Z","timestamp":1785143926702,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/800e836146d6e7eb.js HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\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: same-origin\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\naccess-control-allow-origin: *\r\nage: 4122282\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"800e836146d6e7eb.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://auth.coinlib.io https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\netag: W/\"7b2a7348e5acf7f61cd01b2152c769a6\"\r\nlast-modified: Tue, 09 Jun 2026 16:12:41 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/800e836146d6e7eb.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::dmlt9-1781021643910-30bb6f3b3b82\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=gYZ4OWvQKZOOKHbvzOetqIyk3zriLn1qFHLUIoAM6htN7kgc6fo1wYxggnRv0mKN%2FEeSD%2FdxW1EKc%2F7yJ%2FjQcVQO%2FSDtBuPw7oWAE2KhShzVIRf87w9Ou5gY4Tg5\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21a8f05e91e0b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\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"]},{"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"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":19477,"size_decoded":7486,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (16974)","md5":"7b2a7348e5acf7f61cd01b2152c769a6","sha1":"1cc03a4809684838384744113d8a0e0093a62a3a","sha256":"c5bd83f87b5a8d38fee5230c1078de1f65ac83476cd29e8f5a41d63ea9bd22c5","sha512":"56b9d74b6b4d8a6f1e9909cb88c18e6c784c6bbab10d877a936f334ec5056d8720d20c2443e241c3064f536853f3ffa4578c1c8b3ab391ce8d671256a83a0ef3","ssdeep":"192:c0/B5NGI4y5Zzlqrvd2bcQFCx4zN2M15hNeSd4e+MQCC8h/PzM+kyhtTliuR3dQ5:cOq8bcj+Jz57b4e+MQCL2+k+Nll3dwA4","tlshash":"b492b81056143788f5b78289915fc40c302f2a4caf0e85b5bbbcac666b544e73a6ffd6","first_seen":"2026-06-09T20:30:37.829522Z","last_seen":"2026-08-06T12:32:43.342266Z","times_seen":1772,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDI0NjAxLChlLHQsaSk9Pnt0LmV4cG9ydHM9ZS5yKDI4OTk1KX0sNzkyOTQsZT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgdD1lLmkoOTgxMzQpLGk9ZS5pKDI0NjAxKSxuPWUuaSg3NTIwMSkscz1lLmkoNzUxNTcpO2Z1bmN0aW9uIG8oe3RoZW1lOmUsY250OmksZ3JhcGg6byxwcmVmQ29pbklkOmx9KXtsZXRbYyxkXT0oMCxuLnVzZVN0YXRlKShbXSksW2gsZl09KDAsbi51c2VTdGF0ZSkoe2NvZGU6IlVTRCIsc3ltYm9sOiIkIixyYXRlOjF9KSxbbSxwXT0oMCxuLnVzZVN0YXRlKSghMCk7KDAsbi51c2VFZmZlY3QpKCgpPT57bGV0IGU9bmV3IFVSTFNlYXJjaFBhcmFtcyh7dG9wOlN0cmluZyhpKX0pO2wmJmUuc2V0KCJwcmVmX2NvaW5faWQiLGwpLGZldGNoKGAvYXBpL3YxL3dpZGdldD8ke2V9YCkudGhlbihlPT5lLmpzb24oKSkudGhlbihlPT57ZS5kYXRhJiZkKGUuZGF0YSksZS5jdXJyZW5jeSYmZihlLmN1cnJlbmN5KX0pLmNhdGNoKCgpPT57fSkuZmluYWxseSgoKT0+cCghMSkpfSxbaSxsXSk7bGV0IGc9ImRhcmsiPT09ZSx4PWc/IiMxQjIwMzAiOiIjZmZmZmZmIix5PWc/IiNlNWU3ZWIiOiIjMWYyOTM3Iix1PWc/IiM5Y2EzYWYiOiIjNmI3MjgwIixiPWc/IiMzNzQxNTEiOiIjZTVlN2ViIixqPWc/IiMxZjI5MzciOiIjZjNmNGY2IixTPSIjMjJjNTVlIix2PSIjZWY0NDQ0IjtyZXR1cm4gbT8oMCx0LmpzeCkoImRpdiIse3N0eWxlOntiYWNrZ3JvdW5kOngsY29sb3I6eSxwYWRkaW5nOjIwLGZvbnRGYW1pbHk6InN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZiIsZm9udFNpemU6MTN9LGNoaWxkcmVuOiJMb2FkaW5nLi4uIn0pOigwLHQuanN4cykoImRpdiIse3N0eWxlOntiYWNrZ3JvdW5kOngsY29sb3I6eSxmb250RmFtaWx5OiJzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIHNhbnMtc2VyaWYiLGZvbnRTaXplOjEzLG92ZXJmbG93OiJhdXRvIixoZWlnaHQ6IjEwMCUifSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJzdHlsZSIse2NoaWxkcmVuOmAKICAgICAgICAuZnZ3LWhpZGUtc20geyB9CiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7CiAgICAgICAgICAuZnZ3LWhpZGUtc20geyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0KICAgICAgICAgIC5mdnctcmFuayB7IHdpZHRoOiAyMHB4ICFpbXBvcnRhbnQ7IG1hcmdpbi1yaWdodDogNHB4ICFpbXBvcnRhbnQ7IH0KICAgICAgICAgIC5mdnctcHJpY2UgeyB3aWR0aDogODBweCAhaW1wb3J0YW50OyB9CiAgICAgICAgICAuZnZ3LXJvdyB7IHBhZGRpbmc6IDZweCA4cHggIWltcG9ydGFudDsgfQogICAgICAgIH0KICAgICAgYH0pLCgwLHQuanN4cykoImRpdiIse2NsYXNzTmFtZToiZnZ3LXJvdyIsc3R5bGU6e2Rpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciIscGFkZGluZzoiOHB4IDEycHgiLGJhY2tncm91bmQ6Zz8iIzExMTgyNyI6IiNmOWZhZmIiLGJvcmRlckJvdHRvbTpgMXB4IHNvbGlkICR7Yn1gLGZvbnRXZWlnaHQ6NjAwfSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctcmFuayIsc3R5bGU6e3dpZHRoOjMwLHRleHRBbGlnbjoicmlnaHQiLG1hcmdpblJpZ2h0OjgsY29sb3I6dSxmb250U2l6ZToxMX0sY2hpbGRyZW46IiMifSksKDAsdC5qc3gpKCJzcGFuIix7c3R5bGU6e2ZsZXg6MX0sY2hpbGRyZW46Ik5hbWUifSksKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctcHJpY2UiLHN0eWxlOnt3aWR0aDoxMDAsdGV4dEFsaWduOiJyaWdodCJ9LGNoaWxkcmVuOiJQcmljZSJ9KSwoMCx0LmpzeCkoInNwYW4iLHtjbGFzc05hbWU6ImZ2dy1oaWRlLXNtIixzdHlsZTp7d2lkdGg6MTAwLHRleHRBbGlnbjoicmlnaHQifSxjaGlsZHJlbjoiTWFya2V0IENhcCJ9KSwoMCx0LmpzeCkoInNwYW4iLHtjbGFzc05hbWU6ImZ2dy1oaWRlLXNtIixzdHlsZTp7d2lkdGg6OTAsdGV4dEFsaWduOiJyaWdodCJ9LGNoaWxkcmVuOiJWb2x1bWUgMjRoIn0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOnt3aWR0aDo3MCx0ZXh0QWxpZ246InJpZ2h0In0sY2hpbGRyZW46IjI0aCAlIn0pLG8mJigwLHQuanN4KSgic3BhbiIse2NsYXNzTmFtZToiZnZ3LWhpZGUtc20iLHN0eWxlOnt3aWR0aDo4MCx0ZXh0QWxpZ246InJpZ2h0IixwYWRkaW5nTGVmdDoxMn0sY2hpbGRyZW46IjdkIn0pXX0pLGMubWFwKGU9Pnt2YXIgaSxuO2xldCBsPWUucGVyY2VudF9jaGFuZ2VfMjRoPj0wO3JldHVybigwLHQuanN4cykoImEiLHtocmVmOmBodHRwczovL2NvaW5saWIuaW8keygwLHMuY29pblVybCkoZS5zeW1ib2wsZS5uYW1lKX1gLHRhcmdldDoiX2JsYW5rIixyZWw6Im5vb3BlbmVyIG5vcmVmZXJyZXIiLGNsYXNzTmFtZToiZnZ3LXJvdyIsc3R5bGU6e2Rpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciIscGFkZGluZzoiNnB4IDEycHgiLGJvcmRlckJvdHRvbTpgMXB4IHNvbGlkICR7Yn1gLHRleHREZWNvcmF0aW9uOiJub25lIixjb2xvcjp5LHRyYW5zaXRpb246ImJhY2tncm91bmQgMC4xNXMifSxvbk1vdXNlRW50ZXI6ZT0+ZS5jdXJyZW50VGFyZ2V0LnN0eWxlLmJhY2tncm91bmQ9aixvbk1vdXNlTGVhdmU6ZT0+ZS5jdXJyZW50VGFyZ2V0LnN0eWxlLmJhY2tncm91bmQ9InRyYW5zcGFyZW50IixjaGlsZHJlbjpbKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctcmFuayIsc3R5bGU6e3dpZHRoOjMwLHRleHRBbGlnbjoicmlnaHQiLG1hcmdpblJpZ2h0OjgsY29sb3I6dSxmb250U2l6ZToxMX0sY2hpbGRyZW46ZS5yYW5rfSksKDAsdC5qc3gpKCJpbWciLHtzcmM6ZS5pbWFnZSxhbHQ6ZS5uYW1lLHdpZHRoOjE4LGhlaWdodDoxOCxzdHlsZTp7Ym9yZGVyUmFkaXVzOiI1MCUiLG1hcmdpblJpZ2h0OjZ9fSksKDAsdC5qc3gpKCJzcGFuIix7c3R5bGU6e2ZvbnRXZWlnaHQ6NTAwLG1hcmdpblJpZ2h0OjR9LGNoaWxkcmVuOmUubmFtZX0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOntjb2xvcjp1LGZvbnRTaXplOjExfSxjaGlsZHJlbjplLnN5bWJvbH0pLCgwLHQuanN4KSgic3BhbiIse2NsYXNzTmFtZToiZnZ3LXByaWNlIixzdHlsZTp7d2lkdGg6MTAwLHRleHRBbGlnbjoicmlnaHQiLG1hcmdpbkxlZnQ6ImF1dG8iLGZvbnRGYW1pbHk6Im1vbm9zcGFjZSJ9LGNoaWxkcmVuOihpPWUucHJpY2VfdXNkKmgucmF0ZSxuPWguc3ltYm9sLGk+PTE/bitpLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czoyfSk6bitpLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czo2fSkpfSksKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctaGlkZS1zbSIsc3R5bGU6e3dpZHRoOjEwMCx0ZXh0QWxpZ246InJpZ2h0Iixmb250RmFtaWx5OiJtb25vc3BhY2UiLGZvbnRTaXplOjExfSxjaGlsZHJlbjphKGUubWFya2V0X2NhcCpoLnJhdGUsaC5zeW1ib2wpfSksKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctaGlkZS1zbSIsc3R5bGU6e3dpZHRoOjkwLHRleHRBbGlnbjoicmlnaHQiLGZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsZm9udFNpemU6MTF9LGNoaWxkcmVuOmEoZS52b2x1bWVfMjRoKmgucmF0ZSxoLnN5bWJvbCl9KSwoMCx0LmpzeHMpKCJzcGFuIix7c3R5bGU6e3dpZHRoOjcwLHRleHRBbGlnbjoicmlnaHQiLGZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsZm9udFdlaWdodDo1MDAsY29sb3I6bD9TOnZ9LGNoaWxkcmVuOltsPyIrIjoiIixlLnBlcmNlbnRfY2hhbmdlXzI0aD8udG9GaXhlZCgyKSwiJSJdfSksbyYmKDAsdC5qc3gpKCJzcGFuIix7Y2xhc3NOYW1lOiJmdnctaGlkZS1zbSIsc3R5bGU6e3dpZHRoOjgwLHRleHRBbGlnbjoicmlnaHQiLHBhZGRpbmdMZWZ0OjEyfSxjaGlsZHJlbjooMCx0LmpzeCkocix7Y29pbjplLGNvbG9yOmw/Uzp2fSl9KV19LGUuaWQpfSksKDAsdC5qc3gpKCJkaXYiLHtzdHlsZTp7cGFkZGluZzoiNHB4IDEycHgiLGZvbnRTaXplOjEwLGNvbG9yOnUsdGV4dEFsaWduOiJyaWdodCJ9LGNoaWxkcmVuOigwLHQuanN4KSgiYSIse2hyZWY6Imh0dHBzOi8vY29pbmxpYi5pbyIsdGFyZ2V0OiJfYmxhbmsiLHJlbDoibm9vcGVuZXIgbm9yZWZlcnJlciIsc3R5bGU6e2NvbG9yOnUsdGV4dERlY29yYXRpb246Im5vbmUifSxjaGlsZHJlbjoiUG93ZXJlZCBieSBDb2lubGliIn0pfSldfSl9ZnVuY3Rpb24gcih7Y29pbjplLGNvbG9yOml9KXtsZXQgbixzPWUuc3BhcmtsaW5lXzdkJiZlLnNwYXJrbGluZV83ZC5sZW5ndGg+PTI/ZS5zcGFya2xpbmVfN2Q6bnVsbDtpZihzKW49cztlbHNle2xldCB0PWUucHJpY2VfdXNkLGk9dC8oMStlLnBlcmNlbnRfY2hhbmdlXzI0aC8xMDApO249W107Zm9yKGxldCBlPTA7ZTw9NjtlKyspe2xldCBzPWUvNjtuLnB1c2goaSsodC1pKSpzKy4wMSp0Kk1hdGguc2luKHMqTWF0aC5QSSoyKSl9fWxldCBvPU1hdGgubWluKC4uLm4pLHI9TWF0aC5tYXgoLi4ubiktb3x8MSxhPTcwLyhuLmxlbmd0aC0xKSxsPW4ubWFwKChlLHQpPT5gJHsodCphKS50b0ZpeGVkKDIpfSwkeygyNi0oZS1vKS9yKjI0KS50b0ZpeGVkKDIpfWApLGM9YE0gJHtsLmpvaW4oIiBMICIpfWAsZD1gJHtjfSBMIDcwLjAwLDI4IEwgMCwyOCBaYCxoPWBzcGFyay1ncmFkLSR7ZS5pZH1gO3JldHVybigwLHQuanN4cykoInN2ZyIse3dpZHRoOjcwLGhlaWdodDoyOCx2aWV3Qm94OiIwIDAgNzAgMjgiLHByZXNlcnZlQXNwZWN0UmF0aW86Im5vbmUiLGNoaWxkcmVuOlsoMCx0LmpzeCkoImRlZnMiLHtjaGlsZHJlbjooMCx0LmpzeHMpKCJsaW5lYXJHcmFkaWVudCIse2lkOmgseDE6IjAiLHkxOiIwIix4MjoiMCIseTI6IjEiLGNoaWxkcmVuOlsoMCx0LmpzeCkoInN0b3AiLHtvZmZzZXQ6IjAlIixzdG9wQ29sb3I6aSxzdG9wT3BhY2l0eToiMC4yNSJ9KSwoMCx0LmpzeCkoInN0b3AiLHtvZmZzZXQ6IjEwMCUiLHN0b3BDb2xvcjppLHN0b3BPcGFjaXR5OiIwIn0pXX0pfSksKDAsdC5qc3gpKCJwYXRoIix7ZDpkLGZpbGw6YHVybCgjJHtofSlgLHN0cm9rZToibm9uZSJ9KSwoMCx0LmpzeCkoInBhdGgiLHtkOmMsZmlsbDoibm9uZSIsc3Ryb2tlOmksc3Ryb2tlV2lkdGg6MSxzdHJva2VMaW5lam9pbjoicm91bmQiLHN0cm9rZUxpbmVjYXA6InJvdW5kIn0pXX0pfWZ1bmN0aW9uIGEoZSx0KXtyZXR1cm4gZT49MWUxMj90KyhlLzFlMTIpLnRvRml4ZWQoMikrIlQiOmU+PTFlOT90KyhlLzFlOSkudG9GaXhlZCgyKSsiQiI6ZT49MWU2P3QrKGUvMWU2KS50b0ZpeGVkKDIpKyJNIjplPj0xZTM/dCsoZS8xZTMpLnRvRml4ZWQoMikrIksiOnQrZS50b0ZpeGVkKDIpfWZ1bmN0aW9uIGwoe3RoZW1lOmUsY29pbklkOmkscHJlZkNvaW5JZDpzfSl7bGV0W28scl09KDAsbi51c2VTdGF0ZSkobnVsbCksW2EsbF09KDAsbi51c2VTdGF0ZSkoe2NvZGU6IlVTRCIsc3ltYm9sOiIkIixyYXRlOjF9KSxbZCxoXT0oMCxuLnVzZVN0YXRlKShbXSksW2YsbV09KDAsbi51c2VTdGF0ZSkoNyksW3AsZ109KDAsbi51c2VTdGF0ZSkoITApLHg9KDAsbi51c2VSZWYpKG51bGwpLFt5LHVdPSgwLG4udXNlU3RhdGUpKG51bGwpOygwLG4udXNlRWZmZWN0KSgoKT0+e2xldCBlPW5ldyBVUkxTZWFyY2hQYXJhbXM7aT9lLnNldCgibGVnYWN5X2lkIixpKTplLnNldCgic3ltYm9sIiwiQlRDIikscyYmZS5zZXQoInByZWZfY29pbl9pZCIscyksZmV0Y2goYC9hcGkvdjEvd2lkZ2V0PyR7ZX1gKS50aGVuKGU9PmUuanNvbigpKS50aGVuKGU9PntlLmRhdGE/KHUoZS5kYXRhLnNsdWc/PyJiaXRjb2luIikscihlLmRhdGEpKTp1KCJiaXRjb2luIiksZS5jdXJyZW5jeSYmbChlLmN1cnJlbmN5KX0pLmNhdGNoKCgpPT51KCJiaXRjb2luIikpfSxbaSxzXSksKDAsbi51c2VFZmZlY3QpKCgpPT57eSYmKGcoITApLChhc3luYygpPT57bGV0IGU9YXdhaXQgZmV0Y2goYC9hcGkvdjEvY29pbnMvJHt5fS9jaGFydD9kYXlzPSR7Zn1gKS50aGVuKGU9PmUuanNvbigpKS5jYXRjaCgoKT0+bnVsbCk7ZT8uZGF0YT8ucHJpY2VzJiZoKGUuZGF0YS5wcmljZXMpLGcoITEpfSkoKSl9LFt5LGZdKSwoMCxuLnVzZUVmZmVjdCkoKCk9PntpZigheC5jdXJyZW50fHxkLmxlbmd0aDwyKXJldHVybjtsZXQgdD14LmN1cnJlbnQsaT10LmdldENvbnRleHQoIjJkIik7aWYoIWkpcmV0dXJuO2xldCBuPXdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvfHwxLHM9dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0LndpZHRoPXMud2lkdGgqbix0LmhlaWdodD1zLmhlaWdodCpuLGkuc2NhbGUobixuKTtsZXQgbz1zLndpZHRoLHI9cy5oZWlnaHQsbD0iZGFyayI9PT1lO2kuZmlsbFN0eWxlPWw/IiMxQjIwMzAiOiIjZmZmZmZmIixpLmZpbGxSZWN0KDAsMCxvLHIpO2xldCBoPW8tNjAtMTAsbT1yLTEwLTMwLHA9YS5yYXRlLGc9ZC5tYXAoZT0+ZVsxXSpwKSx5PU1hdGgubWluKC4uLmcpLHU9TWF0aC5tYXgoLi4uZyksYj11LXl8fDE7aS5zdHJva2VTdHlsZT1sPyIjMzc0MTUxIjoiI2U1ZTdlYiIsaS5saW5lV2lkdGg9LjU7Zm9yKGxldCBlPTA7ZTw9NDtlKyspe2xldCB0PTEwK20vNCplO2kuYmVnaW5QYXRoKCksaS5tb3ZlVG8oNjAsdCksaS5saW5lVG8oby0xMCx0KSxpLnN0cm9rZSgpO2xldCBuPXUtYi80KmU7aS5maWxsU3R5bGU9bD8iIzljYTNhZiI6IiM2YjcyODAiLGkuZm9udD0iMTBweCBzeXN0ZW0tdWksIHNhbnMtc2VyaWYiLGkudGV4dEFsaWduPSJyaWdodCIsaS5maWxsVGV4dChjKG4sYS5zeW1ib2wpLDU1LHQrMyl9bGV0IGo9ZFswXVswXSxTPWRbZC5sZW5ndGgtMV1bMF07aS5maWxsU3R5bGU9bD8iIzljYTNhZiI6IiM2YjcyODAiLGkudGV4dEFsaWduPSJjZW50ZXIiO2ZvcihsZXQgZT0wO2U8PTQ7ZSsrKXtsZXQgdD1qKyhTLWopLzQqZSxuPTYwK2gvNCplLHM9bmV3IERhdGUodCk7aS5maWxsVGV4dChmPD0xP3MudG9Mb2NhbGVUaW1lU3RyaW5nKCJlbiIse2hvdXI6IjItZGlnaXQiLG1pbnV0ZToiMi1kaWdpdCJ9KTpzLnRvTG9jYWxlRGF0ZVN0cmluZygiZW4iLHttb250aDoic2hvcnQiLGRheToibnVtZXJpYyJ9KSxuLHItOCl9bGV0IHY9Z1tnLmxlbmd0aC0xXT49Z1swXTtpLnN0cm9rZVN0eWxlPXY/IiMyMmM1NWUiOiIjZWY0NDQ0IixpLmxpbmVXaWR0aD0yLGkuYmVnaW5QYXRoKCksZC5mb3JFYWNoKChbZV0sdCk9PntsZXQgbj02MCsoZS1qKS8oUy1qKSpoLHM9MTArKDEtKGdbdF0teSkvYikqbTswPT09dD9pLm1vdmVUbyhuLHMpOmkubGluZVRvKG4scyl9KSxpLnN0cm9rZSgpO2xldCBfPWkuY3JlYXRlTGluZWFyR3JhZGllbnQoMCwxMCwwLDEwK20pO18uYWRkQ29sb3JTdG9wKDAsdj8icmdiYSgzNCwxOTcsOTQsMC4xNSkiOiJyZ2JhKDIzOSw2OCw2OCwwLjE1KSIpLF8uYWRkQ29sb3JTdG9wKDEsdj8icmdiYSgzNCwxOTcsOTQsMCkiOiJyZ2JhKDIzOSw2OCw2OCwwKSIpLGkuZmlsbFN0eWxlPV8saS5saW5lVG8oNjAraCwxMCttKSxpLmxpbmVUbyg2MCwxMCttKSxpLmNsb3NlUGF0aCgpLGkuZmlsbCgpfSxbZCxlLGFdKTtsZXQgYj0iZGFyayI9PT1lLGo9Yj8iI2U1ZTdlYiI6IiMxZjI5MzciLFM9Yj8iIzljYTNhZiI6IiM2YjcyODAiLHY9Yj8iIzM3NDE1MSI6IiNlNWU3ZWIiO3JldHVybigwLHQuanN4cykoImRpdiIse3N0eWxlOntiYWNrZ3JvdW5kOmI/IiMxQjIwMzAiOiIjZmZmZmZmIixjb2xvcjpqLGZvbnRGYW1pbHk6InN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZiIsaGVpZ2h0OiIxMDAlIixkaXNwbGF5OiJmbGV4IixmbGV4RGlyZWN0aW9uOiJjb2x1bW4ifSxjaGlsZHJlbjpbbyYmKDAsdC5qc3hzKSgiZGl2Iix7c3R5bGU6e2Rpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciIscGFkZGluZzoiMTBweCAxMnB4Iixib3JkZXJCb3R0b206YDFweCBzb2xpZCAke3Z9YCxnYXA6OH0sY2hpbGRyZW46WygwLHQuanN4KSgiaW1nIix7c3JjOm8uaW1hZ2UsYWx0Om8ubmFtZSx3aWR0aDoyNCxoZWlnaHQ6MjQsc3R5bGU6e2JvcmRlclJhZGl1czoiNTAlIn19KSwoMCx0LmpzeCkoInNwYW4iLHtzdHlsZTp7Zm9udFdlaWdodDo2MDAsZm9udFNpemU6MTV9LGNoaWxkcmVuOm8ubmFtZX0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOntjb2xvcjpTLGZvbnRTaXplOjEyfSxjaGlsZHJlbjpvLnN5bWJvbH0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOnttYXJnaW5MZWZ0OiJhdXRvIixmb250RmFtaWx5OiJtb25vc3BhY2UiLGZvbnRXZWlnaHQ6NjAwLGZvbnRTaXplOjE2fSxjaGlsZHJlbjpjKG8ucHJpY2VfdXNkKmEucmF0ZSxhLnN5bWJvbCl9KSwoMCx0LmpzeHMpKCJzcGFuIix7c3R5bGU6e2ZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsZm9udFNpemU6MTMsZm9udFdlaWdodDo1MDAsY29sb3I6by5wZXJjZW50X2NoYW5nZV8yNGg+PTA/IiMyMmM1NWUiOiIjZWY0NDQ0In0sY2hpbGRyZW46W28ucGVyY2VudF9jaGFuZ2VfMjRoPj0wPyIrIjoiIixvLnBlcmNlbnRfY2hhbmdlXzI0aD8udG9GaXhlZCgyKSwiJSJdfSldfSksKDAsdC5qc3gpKCJkaXYiLHtzdHlsZTp7ZGlzcGxheToiZmxleCIsZ2FwOjQscGFkZGluZzoiNnB4IDEycHgiLGJvcmRlckJvdHRvbTpgMXB4IHNvbGlkICR7dn1gfSxjaGlsZHJlbjpbMSw3LDMwLDkwLDM2NV0ubWFwKGU9PigwLHQuanN4KSgiYnV0dG9uIix7b25DbGljazooKT0+bShlKSxzdHlsZTp7cGFkZGluZzoiMnB4IDhweCIsZm9udFNpemU6MTEsZm9udFdlaWdodDpmPT09ZT82MDA6NDAwLGJhY2tncm91bmQ6Zj09PWU/Yj8iIzM3NDE1MSI6IiNlNWU3ZWIiOiJ0cmFuc3BhcmVudCIsY29sb3I6Zj09PWU/ajpTLGJvcmRlcjoibm9uZSIsYm9yZGVyUmFkaXVzOjQsY3Vyc29yOiJwb2ludGVyIn0sY2hpbGRyZW46MT09PWU/IjI0SCI6Nz09PWU/IjdEIjozMD09PWU/IjFNIjo5MD09PWU/IjNNIjoiMVkifSxlKSl9KSwoMCx0LmpzeCkoImRpdiIse3N0eWxlOntmbGV4OjEscGFkZGluZzoiOHB4IDAiLG1pbkhlaWdodDowfSxjaGlsZHJlbjpwPygwLHQuanN4KSgiZGl2Iix7c3R5bGU6e2Rpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciIsanVzdGlmeUNvbnRlbnQ6ImNlbnRlciIsaGVpZ2h0OiIxMDAlIixjb2xvcjpTLGZvbnRTaXplOjEzfSxjaGlsZHJlbjoiTG9hZGluZyBjaGFydC4uLiJ9KTooMCx0LmpzeCkoImNhbnZhcyIse3JlZjp4LHN0eWxlOnt3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIn19KX0pLCgwLHQuanN4KSgiZGl2Iix7c3R5bGU6e3BhZGRpbmc6IjRweCAxMnB4Iixmb250U2l6ZToxMCxjb2xvcjpTLHRleHRBbGlnbjoicmlnaHQiLGJvcmRlclRvcDpgMXB4IHNvbGlkICR7dn1gfSxjaGlsZHJlbjooMCx0LmpzeCkoImEiLHtocmVmOiJodHRwczovL2NvaW5saWIuaW8iLHRhcmdldDoiX2JsYW5rIixyZWw6Im5vb3BlbmVyIG5vcmVmZXJyZXIiLHN0eWxlOntjb2xvcjpTLHRleHREZWNvcmF0aW9uOiJub25lIn0sY2hpbGRyZW46IlBvd2VyZWQgYnkgQ29pbmxpYiJ9KX0pXX0pfWZ1bmN0aW9uIGMoZSx0KXtyZXR1cm4gZT49MT90K2UudG9Mb2NhbGVTdHJpbmcoImVuLVVTIix7bWluaW11bUZyYWN0aW9uRGlnaXRzOjIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjJ9KTp0K2UudG9Mb2NhbGVTdHJpbmcoImVuLVVTIix7bWluaW11bUZyYWN0aW9uRGlnaXRzOjIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjZ9KX1mdW5jdGlvbiBkKHt0aGVtZTplLGNvaW5JZDppLHByZWZDb2luSWQ6c30pe3ZhciBvLHI7bGV0W2EsbF09KDAsbi51c2VTdGF0ZSkobnVsbCksW2MsZF09KDAsbi51c2VTdGF0ZSkoe2NvZGU6IlVTRCIsc3ltYm9sOiIkIixyYXRlOjF9KSxbZixtXT0oMCxuLnVzZVN0YXRlKSghMCk7KDAsbi51c2VFZmZlY3QpKCgpPT57bGV0IGU9bmV3IFVSTFNlYXJjaFBhcmFtcztpP2Uuc2V0KCJsZWdhY3lfaWQiLGkpOmUuc2V0KCJzeW1ib2wiLCJCVEMiKSxzJiZlLnNldCgicHJlZl9jb2luX2lkIixzKSxmZXRjaChgL2FwaS92MS93aWRnZXQ/JHtlfWApLnRoZW4oZT0+ZS5qc29uKCkpLnRoZW4oZT0+e2UuZGF0YSYmbChlLmRhdGEpLGUuY3VycmVuY3kmJmQoZS5jdXJyZW5jeSl9KS5jYXRjaCgoKT0+e30pLmZpbmFsbHkoKCk9Pm0oITEpKX0sW2ksc10pO2xldCBwPSJkYXJrIj09PWUsZz1wPyIjMUIyMDMwIjoiI2ZmZmZmZiIseD1wPyIjZTVlN2ViIjoiIzFmMjkzNyIseT1wPyIjOWNhM2FmIjoiIzZiNzI4MCIsdT0iIzIyYzU1ZSIsYj0iI2VmNDQ0NCI7aWYoZnx8IWEpcmV0dXJuKDAsdC5qc3gpKCJkaXYiLHtzdHlsZTp7YmFja2dyb3VuZDpnLGNvbG9yOngscGFkZGluZzoxNixmb250RmFtaWx5OiJzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIHNhbnMtc2VyaWYiLGZvbnRTaXplOjEzfSxjaGlsZHJlbjoiTG9hZGluZy4uLiJ9KTtsZXQgaj1hLnBlcmNlbnRfY2hhbmdlXzI0aD49MDtyZXR1cm4oMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7YmFja2dyb3VuZDpnLGNvbG9yOngsZm9udEZhbWlseToic3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmIixwYWRkaW5nOiIxMHB4IDEycHgiLGhlaWdodDoiMTAwJSIsYm94U2l6aW5nOiJib3JkZXItYm94In0sY2hpbGRyZW46WygwLHQuanN4cykoImRpdiIse3N0eWxlOntkaXNwbGF5OiJmbGV4IixhbGlnbkl0ZW1zOiJjZW50ZXIiLGdhcDo2LG1hcmdpbkJvdHRvbTo4fSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJpbWciLHtzcmM6YS5pbWFnZSxhbHQ6YS5uYW1lLHdpZHRoOjI4LGhlaWdodDoyOCxzdHlsZTp7Ym9yZGVyUmFkaXVzOiI1MCUifX0pLCgwLHQuanN4cykoImRpdiIse2NoaWxkcmVuOlsoMCx0LmpzeCkoImRpdiIse3N0eWxlOntmb250V2VpZ2h0OjYwMCxmb250U2l6ZToxNCxsaW5lSGVpZ2h0OjEuMn0sY2hpbGRyZW46YS5uYW1lfSksKDAsdC5qc3hzKSgiZGl2Iix7c3R5bGU6e2NvbG9yOnksZm9udFNpemU6MTB9LGNoaWxkcmVuOlthLnN5bWJvbCwiIMK3IFJhbmsgIyIsYS5yYW5rXX0pXX0pXX0pLCgwLHQuanN4cykoImRpdiIse3N0eWxlOnttYXJnaW5Cb3R0b206OH0sY2hpbGRyZW46WygwLHQuanN4KSgiZGl2Iix7c3R5bGU6e2ZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsZm9udFdlaWdodDo3MDAsZm9udFNpemU6MjAsbGluZUhlaWdodDoxLjJ9LGNoaWxkcmVuOihvPWEucHJpY2VfdXNkKmMucmF0ZSxyPWMuc3ltYm9sLG8+PTE/citvLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czoyfSk6citvLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czo2fSkpfSksKDAsdC5qc3hzKSgic3BhbiIse3N0eWxlOntmb250RmFtaWx5OiJtb25vc3BhY2UiLGZvbnRTaXplOjEzLGZvbnRXZWlnaHQ6NTAwLGNvbG9yOmo/dTpifSxjaGlsZHJlbjpbaj8iKyI6IiIsYS5wZXJjZW50X2NoYW5nZV8yNGg/LnRvRml4ZWQoMiksIiUiXX0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOntjb2xvcjp5LGZvbnRTaXplOjEwLG1hcmdpbkxlZnQ6M30sY2hpbGRyZW46IjI0aCJ9KV19KSwoMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7Ym9yZGVyVG9wOmAxcHggc29saWQgJHtwPyIjMzc0MTUxIjoiI2U1ZTdlYiJ9YCxwYWRkaW5nVG9wOjYsZm9udFNpemU6MTF9LGNoaWxkcmVuOlsoMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7ZGlzcGxheToiZmxleCIsanVzdGlmeUNvbnRlbnQ6InNwYWNlLWJldHdlZW4iLG1hcmdpbkJvdHRvbTozfSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJzcGFuIix7c3R5bGU6e2NvbG9yOnl9LGNoaWxkcmVuOiJNYXJrZXQgQ2FwIn0pLCgwLHQuanN4KSgic3BhbiIse3N0eWxlOntmb250RmFtaWx5OiJtb25vc3BhY2UifSxjaGlsZHJlbjpoKGEubWFya2V0X2NhcCpjLnJhdGUsYy5zeW1ib2wpfSldfSksKDAsdC5qc3hzKSgiZGl2Iix7c3R5bGU6e2Rpc3BsYXk6ImZsZXgiLGp1c3RpZnlDb250ZW50OiJzcGFjZS1iZXR3ZWVuIixtYXJnaW5Cb3R0b206M30sY2hpbGRyZW46WygwLHQuanN4KSgic3BhbiIse3N0eWxlOntjb2xvcjp5fSxjaGlsZHJlbjoiVm9sdW1lIDI0aCJ9KSwoMCx0LmpzeCkoInNwYW4iLHtzdHlsZTp7Zm9udEZhbWlseToibW9ub3NwYWNlIn0sY2hpbGRyZW46aChhLnZvbHVtZV8yNGgqYy5yYXRlLGMuc3ltYm9sKX0pXX0pLCgwLHQuanN4cykoImRpdiIse3N0eWxlOntkaXNwbGF5OiJmbGV4IixqdXN0aWZ5Q29udGVudDoic3BhY2UtYmV0d2VlbiIsbWFyZ2luQm90dG9tOjN9LGNoaWxkcmVuOlsoMCx0LmpzeCkoInNwYW4iLHtzdHlsZTp7Y29sb3I6eX0sY2hpbGRyZW46IkNoYW5nZSAxaCJ9KSwoMCx0LmpzeHMpKCJzcGFuIix7c3R5bGU6e2ZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsY29sb3I6KGEucGVyY2VudF9jaGFuZ2VfMWg/PzApPj0wP3U6Yn0sY2hpbGRyZW46WyhhLnBlcmNlbnRfY2hhbmdlXzFoPz8wKT49MD8iKyI6IiIsKGEucGVyY2VudF9jaGFuZ2VfMWg/PzApLnRvRml4ZWQoMiksIiUiXX0pXX0pLCgwLHQuanN4cykoImRpdiIse3N0eWxlOntkaXNwbGF5OiJmbGV4IixqdXN0aWZ5Q29udGVudDoic3BhY2UtYmV0d2VlbiJ9LGNoaWxkcmVuOlsoMCx0LmpzeCkoInNwYW4iLHtzdHlsZTp7Y29sb3I6eX0sY2hpbGRyZW46IkNoYW5nZSA3ZCJ9KSwoMCx0LmpzeHMpKCJzcGFuIix7c3R5bGU6e2ZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsY29sb3I6KGEucGVyY2VudF9jaGFuZ2VfN2Q/PzApPj0wP3U6Yn0sY2hpbGRyZW46WyhhLnBlcmNlbnRfY2hhbmdlXzdkPz8wKT49MD8iKyI6IiIsKGEucGVyY2VudF9jaGFuZ2VfN2Q/PzApLnRvRml4ZWQoMiksIiUiXX0pXX0pXX0pXX0pfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4gZT49MWUxMj90KyhlLzFlMTIpLnRvRml4ZWQoMikrIlQiOmU+PTFlOT90KyhlLzFlOSkudG9GaXhlZCgyKSsiQiI6ZT49MWU2P3QrKGUvMWU2KS50b0ZpeGVkKDIpKyJNIjplPj0xZTM/dCsoZS8xZTMpLnRvRml4ZWQoMikrIksiOnQrZS50b0ZpeGVkKDIpfWZ1bmN0aW9uIGYoe3RoZW1lOmV9KXtsZXRbaSxzXT0oMCxuLnVzZVN0YXRlKShbXSksW28scl09KDAsbi51c2VTdGF0ZSkoIkJUQyIpLFthLGxdPSgwLG4udXNlU3RhdGUpKCJVU0QiKSxbYyxkXT0oMCxuLnVzZVN0YXRlKSgiMSIpLFtoLGZdPSgwLG4udXNlU3RhdGUpKCIiKSxbcCxnXT0oMCxuLnVzZVN0YXRlKSghMCk7KDAsbi51c2VFZmZlY3QpKCgpPT57ZmV0Y2goIi9hcGkvdjEvd2lkZ2V0P3RvcD01MCIpLnRoZW4oZT0+ZS5qc29uKCkpLnRoZW4oZT0+e2UuZGF0YSYmcyhlLmRhdGEpfSkuY2F0Y2goKCk9Pnt9KS5maW5hbGx5KCgpPT5nKCExKSl9LFtdKTtsZXQgeD0oMCxuLnVzZUNhbGxiYWNrKSgoKT0+e2xldCBlPXBhcnNlRmxvYXQoYyl8fDA7aWYoIlVTRCI9PT1hKXtsZXQgdD1pLmZpbmQoZT0+ZS5zeW1ib2w9PT1vKTt0JiZmKG0oZSp0LnByaWNlX3VzZCkpfWVsc2UgaWYoIlVTRCI9PT1vKXtsZXQgdD1pLmZpbmQoZT0+ZS5zeW1ib2w9PT1hKTt0JiZ0LnByaWNlX3VzZD4wJiZmKG0oZS90LnByaWNlX3VzZCkpfWVsc2V7bGV0IHQ9aS5maW5kKGU9PmUuc3ltYm9sPT09byksbj1pLmZpbmQoZT0+ZS5zeW1ib2w9PT1hKTt0JiZuJiZuLnByaWNlX3VzZD4wJiZmKG0oZSp0LnByaWNlX3VzZC9uLnByaWNlX3VzZCkpfX0sW2MsbyxhLGldKTsoMCxuLnVzZUVmZmVjdCkoKCk9PntpLmxlbmd0aD4wJiZ4KCl9LFtpLHhdKTtsZXQgeT0iZGFyayI9PT1lLHU9eT8iIzFCMjAzMCI6IiNmZmZmZmYiLGI9eT8iI2U1ZTdlYiI6IiMxZjI5MzciLGo9eT8iIzljYTNhZiI6IiM2YjcyODAiLFM9eT8iIzM3NDE1MSI6IiNlNWU3ZWIiLHY9eT8iIzExMTgyNyI6IiNmOWZhZmIiLF89eT8iIzM3NDE1MSI6IiNlNWU3ZWIiLHc9e3dpZHRoOiIxMDAlIixwYWRkaW5nOiI2cHggOHB4Iixmb250U2l6ZToxMixiYWNrZ3JvdW5kOnYsY29sb3I6Yixib3JkZXI6YDFweCBzb2xpZCAke1N9YCxib3JkZXJSYWRpdXM6NSxvdXRsaW5lOiJub25lIixhcHBlYXJhbmNlOiJhdXRvIn0saz17d2lkdGg6IjEwMCUiLHBhZGRpbmc6IjZweCA4cHgiLGZvbnRTaXplOjEzLGZvbnRGYW1pbHk6Im1vbm9zcGFjZSIsYmFja2dyb3VuZDp2LGNvbG9yOmIsYm9yZGVyOmAxcHggc29saWQgJHtTfWAsYm9yZGVyUmFkaXVzOjUsb3V0bGluZToibm9uZSIsYm94U2l6aW5nOiJib3JkZXItYm94In07aWYocClyZXR1cm4oMCx0LmpzeCkoImRpdiIse3N0eWxlOntiYWNrZ3JvdW5kOnUsY29sb3I6YixwYWRkaW5nOjE2LGZvbnRGYW1pbHk6InN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZiIsZm9udFNpemU6MTN9LGNoaWxkcmVuOiJMb2FkaW5nLi4uIn0pO2xldCBGPVt7c3ltYm9sOiJVU0QiLG5hbWU6IlVTIERvbGxhciJ9LC4uLmkubWFwKGU9Pih7c3ltYm9sOmUuc3ltYm9sLG5hbWU6ZS5uYW1lfSkpXTtyZXR1cm4oMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7YmFja2dyb3VuZDp1LGNvbG9yOmIsZm9udEZhbWlseToic3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmIixwYWRkaW5nOiIxMHB4IDEycHgiLGhlaWdodDoiMTAwJSIsYm94U2l6aW5nOiJib3JkZXItYm94IixkaXNwbGF5OiJmbGV4IixmbGV4RGlyZWN0aW9uOiJjb2x1bW4ifSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJkaXYiLHtzdHlsZTp7Zm9udFdlaWdodDo2MDAsZm9udFNpemU6MTMsbWFyZ2luQm90dG9tOjEwLHRleHRBbGlnbjoiY2VudGVyIn0sY2hpbGRyZW46IkNyeXB0b2N1cnJlbmN5IENvbnZlcnRlciJ9KSwoMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7bWFyZ2luQm90dG9tOjh9LGNoaWxkcmVuOlsoMCx0LmpzeCkoImxhYmVsIix7c3R5bGU6e2Rpc3BsYXk6ImJsb2NrIixmb250U2l6ZToxMCxjb2xvcjpqLG1hcmdpbkJvdHRvbTozfSxjaGlsZHJlbjoiRnJvbSJ9KSwoMCx0LmpzeCkoInNlbGVjdCIse3ZhbHVlOm8sb25DaGFuZ2U6ZT0+cihlLnRhcmdldC52YWx1ZSksc3R5bGU6dyxjaGlsZHJlbjpGLm1hcChlPT4oMCx0LmpzeHMpKCJvcHRpb24iLHt2YWx1ZTplLnN5bWJvbCxjaGlsZHJlbjpbZS5zeW1ib2wsIiAtICIsZS5uYW1lXX0sYGZyb20tJHtlLnN5bWJvbH1gKSl9KSwoMCx0LmpzeCkoImlucHV0Iix7dHlwZToibnVtYmVyIix2YWx1ZTpjLG9uQ2hhbmdlOmU9PmQoZS50YXJnZXQudmFsdWUpLHN0eWxlOnsuLi5rLG1hcmdpblRvcDo0fSxwbGFjZWhvbGRlcjoiQW1vdW50In0pXX0pLCgwLHQuanN4KSgiZGl2Iix7c3R5bGU6e3RleHRBbGlnbjoiY2VudGVyIixtYXJnaW5Cb3R0b206OH0sY2hpbGRyZW46KDAsdC5qc3gpKCJidXR0b24iLHtvbkNsaWNrOigpPT57cihhKSxsKG8pfSxzdHlsZTp7YmFja2dyb3VuZDpfLGJvcmRlcjoibm9uZSIsYm9yZGVyUmFkaXVzOiI1MCUiLHdpZHRoOjI4LGhlaWdodDoyOCxmb250U2l6ZToxNCxjdXJzb3I6InBvaW50ZXIiLGNvbG9yOmIsbGluZUhlaWdodDoiMjhweCJ9LGNoaWxkcmVuOiLih4UifSl9KSwoMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7bWFyZ2luQm90dG9tOjEwfSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJsYWJlbCIse3N0eWxlOntkaXNwbGF5OiJibG9jayIsZm9udFNpemU6MTAsY29sb3I6aixtYXJnaW5Cb3R0b206M30sY2hpbGRyZW46IlRvIn0pLCgwLHQuanN4KSgic2VsZWN0Iix7dmFsdWU6YSxvbkNoYW5nZTplPT5sKGUudGFyZ2V0LnZhbHVlKSxzdHlsZTp3LGNoaWxkcmVuOkYubWFwKGU9PigwLHQuanN4cykoIm9wdGlvbiIse3ZhbHVlOmUuc3ltYm9sLGNoaWxkcmVuOltlLnN5bWJvbCwiIC0gIixlLm5hbWVdfSxgdG8tJHtlLnN5bWJvbH1gKSl9KSwoMCx0LmpzeCkoImRpdiIse3N0eWxlOnsuLi5rLG1hcmdpblRvcDo0LG1pbkhlaWdodDoxNixiYWNrZ3JvdW5kOl99LGNoaWxkcmVuOmh8fCIwLjAwIn0pXX0pLCgwLHQuanN4KSgiYnV0dG9uIix7b25DbGljazp4LHN0eWxlOnt3aWR0aDoiMTAwJSIscGFkZGluZzoiOHB4Iixmb250U2l6ZToxMyxmb250V2VpZ2h0OjYwMCxiYWNrZ3JvdW5kOiIjM2I4MmY2Iixjb2xvcjoiI2ZmZiIsYm9yZGVyOiJub25lIixib3JkZXJSYWRpdXM6NixjdXJzb3I6InBvaW50ZXIifSxjaGlsZHJlbjoiQ29udmVydCJ9KV19KX1mdW5jdGlvbiBtKGUpe3JldHVybiBlPj0xP2UudG9Mb2NhbGVTdHJpbmcoImVuLVVTIix7bWluaW11bUZyYWN0aW9uRGlnaXRzOjIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjJ9KTplPj0uMDAxP2UudG9Mb2NhbGVTdHJpbmcoImVuLVVTIix7bWluaW11bUZyYWN0aW9uRGlnaXRzOjIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjZ9KTplLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czo4fSl9ZnVuY3Rpb24gcCh7dGhlbWU6ZSxwcmVmQ29pbklkOmksaW52ZXJ0SG92ZXI6b30pe2xldFtyLGFdPSgwLG4udXNlU3RhdGUpKFtdKSxbbCxjXT0oMCxuLnVzZVN0YXRlKSh7Y29kZToiVVNEIixzeW1ib2w6IiQiLHJhdGU6MX0pLFtkLGhdPSgwLG4udXNlU3RhdGUpKCEwKSxmPSgwLG4udXNlUmVmKShudWxsKSxbbSxwXT0oMCxuLnVzZVN0YXRlKSghMSk7KDAsbi51c2VFZmZlY3QpKCgpPT57bGV0IGU9bmV3IFVSTFNlYXJjaFBhcmFtcyh7dG9wOiI1MCIsc3BhcmtsaW5lOiIwIn0pO2kmJmUuc2V0KCJwcmVmX2NvaW5faWQiLGkpLGZldGNoKGAvYXBpL3YxL3dpZGdldD8ke2V9YCkudGhlbihlPT5lLmpzb24oKSkudGhlbihlPT57ZS5kYXRhJiZhKGUuZGF0YSksZS5jdXJyZW5jeSYmYyhlLmN1cnJlbmN5KX0pLmNhdGNoKCgpPT57fSkuZmluYWxseSgoKT0+aCghMSkpfSxbaV0pO2xldCBnPSJkYXJrIj09PWUseD1nPyIjMUIyMDMwIjoiI2ZmZmZmZiIseT1nPyIjZTVlN2ViIjoiIzFmMjkzNyI7aWYoZClyZXR1cm4oMCx0LmpzeCkoImRpdiIse3N0eWxlOntiYWNrZ3JvdW5kOngsY29sb3I6eSxoZWlnaHQ6IjEwMCUiLGRpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciIscGFkZGluZzoiMCAxMnB4Iixmb250U2l6ZToxMixmb250RmFtaWx5OiJzeXN0ZW0tdWksIHNhbnMtc2VyaWYifSxjaGlsZHJlbjoiTG9hZGluZy4uLiJ9KTtsZXQgdT1bLi4uciwuLi5yXTtyZXR1cm4oMCx0LmpzeHMpKCJkaXYiLHtzdHlsZTp7YmFja2dyb3VuZDp4LGNvbG9yOnksZm9udEZhbWlseToic3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmIixoZWlnaHQ6IjEwMHZoIixvdmVyZmxvdzoiaGlkZGVuIixwb3NpdGlvbjoicmVsYXRpdmUiLGRpc3BsYXk6ImZsZXgiLGFsaWduSXRlbXM6ImNlbnRlciJ9LG9uTW91c2VFbnRlcjooKT0+cCghMCksb25Nb3VzZUxlYXZlOigpPT5wKCExKSxjaGlsZHJlbjpbKDAsdC5qc3gpKCJkaXYiLHtyZWY6ZixzdHlsZTp7ZGlzcGxheToiZmxleCIsYWxpZ25JdGVtczoiY2VudGVyIixnYXA6MjQsd2hpdGVTcGFjZToibm93cmFwIixoZWlnaHQ6IjEwMCUiLHBhZGRpbmdMZWZ0OjEyLGFuaW1hdGlvbjooInllcyI9PT1vP206IW0pPyJ3aWRnZXQtbWFycXVlZSAxMjBzIGxpbmVhciBpbmZpbml0ZSI6Im5vbmUifSxjaGlsZHJlbjp1Lm1hcCgoZSxpKT0+e3ZhciBuLG87bGV0IHI9ZS5wZXJjZW50X2NoYW5nZV8yNGg+PTA7cmV0dXJuKDAsdC5qc3hzKSgiYSIse2hyZWY6YGh0dHBzOi8vY29pbmxpYi5pbyR7KDAscy5jb2luVXJsKShlLnN5bWJvbCxlLm5hbWUpfWAsdGFyZ2V0OiJfYmxhbmsiLHJlbDoibm9vcGVuZXIgbm9yZWZlcnJlciIsc3R5bGU6e2Rpc3BsYXk6ImlubGluZS1mbGV4IixhbGlnbkl0ZW1zOiJjZW50ZXIiLGdhcDo1LGZvbnRTaXplOjEzLHRleHREZWNvcmF0aW9uOiJub25lIixjb2xvcjp5LGZsZXhTaHJpbms6MH0sY2hpbGRyZW46WygwLHQuanN4KSgiaW1nIix7c3JjOmUuaW1hZ2UsYWx0OmUubmFtZSx3aWR0aDoxNixoZWlnaHQ6MTYsc3R5bGU6e2JvcmRlclJhZGl1czoiNTAlIn19KSwoMCx0LmpzeCkoInNwYW4iLHtzdHlsZTp7Zm9udFdlaWdodDo1MDB9LGNoaWxkcmVuOmUuc3ltYm9sfSksKDAsdC5qc3gpKCJzcGFuIix7c3R5bGU6e2ZvbnRGYW1pbHk6Im1vbm9zcGFjZSJ9LGNoaWxkcmVuOihuPWUucHJpY2VfdXNkKmwucmF0ZSxvPWwuc3ltYm9sLG4+PTE/bytuLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czoyfSk6bytuLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse21pbmltdW1GcmFjdGlvbkRpZ2l0czoyLG1heGltdW1GcmFjdGlvbkRpZ2l0czo2fSkpfSksKDAsdC5qc3hzKSgic3BhbiIse3N0eWxlOntmb250RmFtaWx5OiJtb25vc3BhY2UiLGZvbnRXZWlnaHQ6NTAwLGNvbG9yOnI/IiMyMmM1NWUiOiIjZWY0NDQ0Iixmb250U2l6ZToxMn0sY2hpbGRyZW46W3I/IisiOiIiLGUucGVyY2VudF9jaGFuZ2VfMjRoPy50b0ZpeGVkKDIpLCIlIl19KV19LGAke2Uuc3ltYm9sfS0ke2l9YCl9KX0pLCgwLHQuanN4KSgic3R5bGUiLHtjaGlsZHJlbjpgCiAgICAgICAgQGtleWZyYW1lcyB3aWRnZXQtbWFycXVlZSB7CiAgICAgICAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfQogICAgICAgICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfQogICAgICAgIH0KICAgICAgYH0pXX0pfWZ1bmN0aW9uIGcoe3R5cGU6ZSxwYXJhbXM6aX0pe2xldCBuLHM9aS50aGVtZT8/ImRhcmsiLHI9ImRhcmsiPT09cz8iIzFCMjAzMCI6IiNmZmZmZmYiO3N3aXRjaChlKXtjYXNlImZ1bGxfdjIiOm49KDAsdC5qc3gpKG8se3RoZW1lOnMsY250OnBhcnNlSW50KGkuY250Pz8iNiIsMTApLGdyYXBoOiJubyIhPT1pLmdyYXBoLHByZWZDb2luSWQ6aS5wcmVmX2NvaW5faWR9KTticmVhaztjYXNlImNoYXJ0IjpuPSgwLHQuanN4KShsLHt0aGVtZTpzLGNvaW5JZDppLmNvaW5faWQscHJlZkNvaW5JZDppLnByZWZfY29pbl9pZH0pO2JyZWFrO2Nhc2Uic2luZ2xlX3YyIjpuPSgwLHQuanN4KShkLHt0aGVtZTpzLGNvaW5JZDppLmNvaW5faWQscHJlZkNvaW5JZDppLnByZWZfY29pbl9pZH0pO2JyZWFrO2Nhc2UiY29udmVydGVyIjpuPSgwLHQuanN4KShmLHt0aGVtZTpzfSk7YnJlYWs7Y2FzZSJob3Jpem9udGFsX3YyIjpuPSgwLHQuanN4KShwLHt0aGVtZTpzLHByZWZDb2luSWQ6aS5wcmVmX2NvaW5faWQsaW52ZXJ0SG92ZXI6aS5pbnZlcnRfaG92ZXJ9KTticmVhaztkZWZhdWx0Om49KDAsdC5qc3hzKSgiZGl2Iix7c3R5bGU6e3BhZGRpbmc6MTYsZm9udFNpemU6MTMsZm9udEZhbWlseToic3lzdGVtLXVpLCBzYW5zLXNlcmlmIn0sY2hpbGRyZW46WyJVbmtub3duIHdpZGdldCB0eXBlOiAiLGVdfSl9cmV0dXJuKDAsdC5qc3gpKCJkaXYiLHtzdHlsZTp7YmFja2dyb3VuZDpyLG1pbkhlaWdodDoiMTAwdmgifSxjaGlsZHJlbjpufSl9ZnVuY3Rpb24geCh7dHlwZTplfSl7bGV0IG49KDAsaS51c2VTZWFyY2hQYXJhbXMpKCkscz17fTtuLmZvckVhY2goKGUsdCk9PntzW3RdPWV9KTtsZXQgbz1lPz9zLnR5cGU/PyJmdWxsX3YyIjtyZXR1cm4oMCx0LmpzeCkoZyx7dHlwZTpvLHBhcmFtczpzfSl9ZS5zKFsiV2lkZ2V0Q2xpZW50IiwoKT0+eF0sNzkyOTQpfV0pOw=="}},"time_used":7,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coin-images.coingecko.com/coins/images/44/large/xrp-symbol-white-128.png?1696501442","fqdn":"coin-images.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"104.21.63.32","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.799Z","timestamp":1785143926799,"http_version":"HTTP/3","security_state":"","security_info":null,"request":{"raw":"GET /coins/images/44/large/xrp-symbol-white-128.png?1696501442 HTTP/1.1\r\nHost: coin-images.coingecko.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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\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":"HTTP/3 200 \r\nx-amz-id-2: LhtraOG7O4UusfqU2hQ4IeHSHd5E+50CaXu/khwf7tzERv9LBjLjPZMC3vkJWnsQMXox5GWSzdFtfdy5sDGIo5d7Zgu9A1rp\r\nx-amz-request-id: 5X2HY92B73H4G8W0\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\nx-amz-replication-status: COMPLETED\r\nlast-modified: Wed, 29 May 2024 02:58:49 GMT\r\netag: \"8c9a8c477f324c88cead49db9a5fc1a2\"\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: dvTdjQhaHPc3d2gEiPjuvrzI.pMVPEqU\r\naccept-ranges: bytes\r\ncontent-type: image/png\r\nserver-timing: cfExtPri\r\nserver: cloudflare\r\nage: 5933\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Dynswa0Bw3lwQ8qliwd9JxM8riQZys5eNYINzYdIVg9RrOPdB%2BOL%2Fydx%2BUUNw%2FyklQpuXMOQ2650mZq0mXz6z%2Bco5wVi4pMmEvDqhA2T3AwuuVVYJzfln%2BGOvej1euOTTm2XC43plDmd66jc\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npriority: u=4,i\r\ncf-ray: a21a8f0698dc56c1-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 12328\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"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"]},{"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":"image/png","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-11T07:57:31.65745Z","times_seen":17832625,"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":"scromegatrade.com/image/slider/slider-3.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.328Z","timestamp":1785143908328,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/slider/slider-3.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/js/ajax/libs/jquery/1.11.3/jquery.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.276Z","timestamp":1785143908276,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /js/ajax/libs/jquery/1.11.3/jquery.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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 302 Found\r\nDate: Mon, 27 Jul 2026 09:18:40 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLocation: https://scromegatrade.com/Error\r\nContent-Length: 215\r\nKeep-Alive: timeout=5, max=99\r\nConnection: Keep-Alive\r\nContent-Type: text/html; charset=iso-8859-1\r\n\r\n","headers":null,"cookies":null,"status_code":"302","status_text":"Found","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":0,"size_decoded":0,"mime_type":"text/html; charset=UTF-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-11T07:57:31.65745Z","times_seen":17832625,"resource_available":true,"data":null}},"time_used":12135,"timings":{"blocked":10941,"dns":0,"connect":0,"send":0,"wait":1194,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"widgets.coingecko.com/coingecko-coin-price-marquee-widget.js","fqdn":"widgets.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"104.18.5.118","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.284Z","timestamp":1785143908284,"http_version":"HTTP/3","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":"coingecko.com","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Thu, 25 Jun 2026 14:12:31 GMT","end":"Wed, 23 Sep 2026 14:12:30 GMT"},"fingerprint":{"sha1":"79:92:C9:C4:9C:3B:8E:38:3D:B4:5C:FA:23:B7:32:6D:E5:6E:21:4C","sha256":"9F:04:05:47:D7:AB:A2:ED:CE:9E:40:05:15:CB:1D:E0:9F:A7:BB:C0:DC:EC:A2:90:53:EC:F5:8E:57:D6:62:B0"}}},"request":{"raw":"GET /coingecko-coin-price-marquee-widget.js HTTP/1.1\r\nHost: widgets.coingecko.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://scromegatrade.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/3 200 \r\ndate: Mon, 27 Jul 2026 09:18:28 GMT\r\ncontent-type: application/javascript\r\nx-amz-id-2: qdG2E7yuprzpD92tmuQTHsg9WLeSp2GAwFbdpwF/9TG6OqrOcrw49t0xAy9Ru0CuvBXrKO3HxYfGer2Z34j64aw/9qIl8DZg\r\nx-amz-request-id: VXPQAT8JR3CV0BYQ\r\nx-amz-replication-status: COMPLETED\r\nlast-modified: Fri, 03 Jul 2026 04:41:16 GMT\r\nvary: accept-encoding\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: pUfu3vFk32PoX9Yh9wO6PBDW1nhUzKSO\r\nserver: cloudflare\r\npriority: u=3,i=?0\r\nage: 43960\r\nexpires: Tue, 28 Jul 2026 09:18:28 GMT\r\ncache-control: public, max-age=86400\r\ncf-cache-status: HIT\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nspeculation-rules: \"/cdn-cgi/speculation\"\r\netag: W/\"c943d4422dad6300bbaf689c2211180f\"\r\ncontent-encoding: br\r\ncf-ray: a21a8e92f989569c-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\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"]},{"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"]},{"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":230974,"size_decoded":69893,"mime_type":"application/javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (36129)","md5":"c943d4422dad6300bbaf689c2211180f","sha1":"4cf78792b3a9dddc6f2ee8219bbfdd213194f144","sha256":"d8d3d9a390c75f612142118d3281d85b95cb50e84c2f6d9438daa83efa8e2437","sha512":"c5516ee60fdc9e900036dec072c7c2de8d01dcfce22fc901048697428c43604ea8dd8d907abda960ce8aae5201ec7f649300af511c8bcccac469a9541f0d9d4f","ssdeep":"3072:/uPfvYNJshGWDSBttCWINmVZrnPodE5rUzpI4Oz:XYBctCo2c4Oz","tlshash":"bc34198eb6c0f19947b693e9605f394ba77d28fc68884380e972f4e5587e05c6132f6c","first_seen":"2026-07-05T23:38:03.171209Z","last_seen":"2026-08-10T19:29:21.29417Z","times_seen":326,"resource_available":true,"data":"KGZ1bmN0aW9uKGUpe3ZhciB0PXt9O2Z1bmN0aW9uIG4ocil7aWYodFtyXSlyZXR1cm4gdFtyXS5leHBvcnRzO3ZhciBpPXRbcl09e2k6cixsOiExLGV4cG9ydHM6e319O3JldHVybiBlW3JdLmNhbGwoaS5leHBvcnRzLGksaS5leHBvcnRzLG4pLGkubD0hMCxpLmV4cG9ydHN9bi5tPWUsbi5jPXQsbi5kPWZ1bmN0aW9uKGUsdCxyKXtuLm8oZSx0KXx8T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7ZW51bWVyYWJsZTohMCxnZXQ6cn0pfSxuLnI9ZnVuY3Rpb24oZSl7InVuZGVmaW5lZCIhPT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9LG4udD1mdW5jdGlvbihlLHQpe2lmKDEmdCYmKGU9bihlKSksOCZ0KXJldHVybiBlO2lmKDQmdCYmIm9iamVjdCI9PT10eXBlb2YgZSYmZSYmZS5fX2VzTW9kdWxlKXJldHVybiBlO3ZhciByPU9iamVjdC5jcmVhdGUobnVsbCk7aWYobi5yKHIpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCx2YWx1ZTplfSksMiZ0JiYic3RyaW5nIiE9dHlwZW9mIGUpZm9yKHZhciBpIGluIGUpbi5kKHIsaSxmdW5jdGlvbih0KXtyZXR1cm4gZVt0XX0uYmluZChudWxsLGkpKTtyZXR1cm4gcn0sbi5uPWZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuX19lc01vZHVsZT9mdW5jdGlvbigpe3JldHVybiBlWyJkZWZhdWx0Il19OmZ1bmN0aW9uKCl7cmV0dXJuIGV9O3JldHVybiBuLmQodCwiYSIsdCksdH0sbi5vPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpfSxuLnA9Ii8iLG4obi5zPTIwKX0pKHsiMDE0YiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCJlNTNkIiksaT1uKCIwN2UzIiksYT1uKCI4ZTYwIiksbz1uKCI2M2I2IiksYz1uKCI5MTM4Iikscz1uKCJlYmZkIikuS0VZLHA9bigiMjk0YyIpLGw9bigiZGJkYiIpLHU9bigiNDVmMiIpLGQ9bigiNjJhMCIpLF89bigiNTE2OCIpLG09bigiY2NiOSIpLGY9bigiNjcxOCIpLGg9bigiNDdlZSIpLHY9bigiOTAwMyIpLHk9bigiZTRhZSIpLGc9bigiZjc3MiIpLHc9bigiMjQxZSIpLGI9bigiMzZjMyIpLGs9bigiMWJjMyIpLHg9bigiYWViZCIpLEM9bigiYTE1OSIpLFM9bigiMDM5NSIpLFA9bigiYmYwYiIpLGo9bigiOWFhOSIpLE89bigiZDlmNiIpLEE9bigiYzNhMSIpLEU9UC5mLFQ9Ty5mLEQ9Uy5mLHo9ci5TeW1ib2wsTT1yLkpTT04sJD1NJiZNLnN0cmluZ2lmeSxOPSJwcm90b3R5cGUiLEk9XygiX2hpZGRlbiIpLEY9XygidG9QcmltaXRpdmUiKSxMPXt9LnByb3BlcnR5SXNFbnVtZXJhYmxlLFI9bCgic3ltYm9sLXJlZ2lzdHJ5IiksVj1sKCJzeW1ib2xzIiksVT1sKCJvcC1zeW1ib2xzIiksSD1PYmplY3RbTl0sRz0iZnVuY3Rpb24iPT10eXBlb2YgeiYmISFqLmYsSz1yLlFPYmplY3QsQj0hS3x8IUtbTl18fCFLW05dLmZpbmRDaGlsZCxxPWEmJnAoKGZ1bmN0aW9uKCl7cmV0dXJuIDchPUMoVCh7fSwiYSIse2dldDpmdW5jdGlvbigpe3JldHVybiBUKHRoaXMsImEiLHt2YWx1ZTo3fSkuYX19KSkuYX0pKT9mdW5jdGlvbihlLHQsbil7dmFyIHI9RShILHQpO3ImJmRlbGV0ZSBIW3RdLFQoZSx0LG4pLHImJmUhPT1IJiZUKEgsdCxyKX06VCxKPWZ1bmN0aW9uKGUpe3ZhciB0PVZbZV09Qyh6W05dKTtyZXR1cm4gdC5faz1lLHR9LFc9RyYmInN5bWJvbCI9PXR5cGVvZiB6Lml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiJzeW1ib2wiPT10eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiB6fSxYPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZT09PUgmJlgoVSx0LG4pLHkoZSksdD1rKHQsITApLHkobiksaShWLHQpPyhuLmVudW1lcmFibGU/KGkoZSxJKSYmZVtJXVt0XSYmKGVbSV1bdF09ITEpLG49QyhuLHtlbnVtZXJhYmxlOngoMCwhMSl9KSk6KGkoZSxJKXx8VChlLEkseCgxLHt9KSksZVtJXVt0XT0hMCkscShlLHQsbikpOlQoZSx0LG4pfSxaPWZ1bmN0aW9uKGUsdCl7eShlKTt2YXIgbixyPWgodD1iKHQpKSxpPTAsYT1yLmxlbmd0aDt3aGlsZShhPmkpWChlLG49cltpKytdLHRbbl0pO3JldHVybiBlfSxZPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/QyhlKTpaKEMoZSksdCl9LFE9ZnVuY3Rpb24oZSl7dmFyIHQ9TC5jYWxsKHRoaXMsZT1rKGUsITApKTtyZXR1cm4hKHRoaXM9PT1IJiZpKFYsZSkmJiFpKFUsZSkpJiYoISh0fHwhaSh0aGlzLGUpfHwhaShWLGUpfHxpKHRoaXMsSSkmJnRoaXNbSV1bZV0pfHx0KX0sZWU9ZnVuY3Rpb24oZSx0KXtpZihlPWIoZSksdD1rKHQsITApLGUhPT1IfHwhaShWLHQpfHxpKFUsdCkpe3ZhciBuPUUoZSx0KTtyZXR1cm4hbnx8IWkoVix0KXx8aShlLEkpJiZlW0ldW3RdfHwobi5lbnVtZXJhYmxlPSEwKSxufX0sdGU9ZnVuY3Rpb24oZSl7dmFyIHQsbj1EKGIoZSkpLHI9W10sYT0wO3doaWxlKG4ubGVuZ3RoPmEpaShWLHQ9blthKytdKXx8dD09SXx8dD09c3x8ci5wdXNoKHQpO3JldHVybiByfSxuZT1mdW5jdGlvbihlKXt2YXIgdCxuPWU9PT1ILHI9RChuP1U6YihlKSksYT1bXSxvPTA7d2hpbGUoci5sZW5ndGg+bykhaShWLHQ9cltvKytdKXx8biYmIWkoSCx0KXx8YS5wdXNoKFZbdF0pO3JldHVybiBhfTtHfHwoej1mdW5jdGlvbigpe2lmKHRoaXMgaW5zdGFuY2VvZiB6KXRocm93IFR5cGVFcnJvcigiU3ltYm9sIGlzIG5vdCBhIGNvbnN0cnVjdG9yISIpO3ZhciBlPWQoYXJndW1lbnRzLmxlbmd0aD4wP2FyZ3VtZW50c1swXTp2b2lkIDApLHQ9ZnVuY3Rpb24obil7dGhpcz09PUgmJnQuY2FsbChVLG4pLGkodGhpcyxJKSYmaSh0aGlzW0ldLGUpJiYodGhpc1tJXVtlXT0hMSkscSh0aGlzLGUseCgxLG4pKX07cmV0dXJuIGEmJkImJnEoSCxlLHtjb25maWd1cmFibGU6ITAsc2V0OnR9KSxKKGUpfSxjKHpbTl0sInRvU3RyaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fa30pKSxQLmY9ZWUsTy5mPVgsbigiNmFiZiIpLmY9Uy5mPXRlLG4oIjM1NWQiKS5mPVEsai5mPW5lLGEmJiFuKCJiOGUzIikmJmMoSCwicHJvcGVydHlJc0VudW1lcmFibGUiLFEsITApLG0uZj1mdW5jdGlvbihlKXtyZXR1cm4gSihfKGUpKX0pLG8oby5HK28uVytvLkYqIUcse1N5bWJvbDp6fSk7Zm9yKHZhciByZT0iaGFzSW5zdGFuY2UsaXNDb25jYXRTcHJlYWRhYmxlLGl0ZXJhdG9yLG1hdGNoLHJlcGxhY2Usc2VhcmNoLHNwZWNpZXMsc3BsaXQsdG9QcmltaXRpdmUsdG9TdHJpbmdUYWcsdW5zY29wYWJsZXMiLnNwbGl0KCIsIiksaWU9MDtyZS5sZW5ndGg+aWU7KV8ocmVbaWUrK10pO2Zvcih2YXIgYWU9QShfLnN0b3JlKSxvZT0wO2FlLmxlbmd0aD5vZTspZihhZVtvZSsrXSk7byhvLlMrby5GKiFHLCJTeW1ib2wiLHtmb3I6ZnVuY3Rpb24oZSl7cmV0dXJuIGkoUixlKz0iIik/UltlXTpSW2VdPXooZSl9LGtleUZvcjpmdW5jdGlvbihlKXtpZighVyhlKSl0aHJvdyBUeXBlRXJyb3IoZSsiIGlzIG5vdCBhIHN5bWJvbCEiKTtmb3IodmFyIHQgaW4gUilpZihSW3RdPT09ZSlyZXR1cm4gdH0sdXNlU2V0dGVyOmZ1bmN0aW9uKCl7Qj0hMH0sdXNlU2ltcGxlOmZ1bmN0aW9uKCl7Qj0hMX19KSxvKG8uUytvLkYqIUcsIk9iamVjdCIse2NyZWF0ZTpZLGRlZmluZVByb3BlcnR5OlgsZGVmaW5lUHJvcGVydGllczpaLGdldE93blByb3BlcnR5RGVzY3JpcHRvcjplZSxnZXRPd25Qcm9wZXJ0eU5hbWVzOnRlLGdldE93blByb3BlcnR5U3ltYm9sczpuZX0pO3ZhciBjZT1wKChmdW5jdGlvbigpe2ouZigxKX0pKTtvKG8uUytvLkYqY2UsIk9iamVjdCIse2dldE93blByb3BlcnR5U3ltYm9sczpmdW5jdGlvbihlKXtyZXR1cm4gai5mKHcoZSkpfX0pLE0mJm8oby5TK28uRiooIUd8fHAoKGZ1bmN0aW9uKCl7dmFyIGU9eigpO3JldHVybiJbbnVsbF0iIT0kKFtlXSl8fCJ7fSIhPSQoe2E6ZX0pfHwie30iIT0kKE9iamVjdChlKSl9KSkpLCJKU09OIix7c3RyaW5naWZ5OmZ1bmN0aW9uKGUpe3ZhciB0LG4scj1bZV0saT0xO3doaWxlKGFyZ3VtZW50cy5sZW5ndGg+aSlyLnB1c2goYXJndW1lbnRzW2krK10pO2lmKG49dD1yWzFdLChnKHQpfHx2b2lkIDAhPT1lKSYmIVcoZSkpcmV0dXJuIHYodCl8fCh0PWZ1bmN0aW9uKGUsdCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIG4mJih0PW4uY2FsbCh0aGlzLGUsdCkpLCFXKHQpKXJldHVybiB0fSksclsxXT10LCQuYXBwbHkoTSxyKX19KSx6W05dW0ZdfHxuKCIzNWU4IikoeltOXSxGLHpbTl0udmFsdWVPZiksdSh6LCJTeW1ib2wiKSx1KE1hdGgsIk1hdGgiLCEwKSx1KHIuSlNPTiwiSlNPTiIsITApfSwiMDFmOSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCIyZDAwIiksaT1uKCI1Y2ExIiksYT1uKCIyYWJhIiksbz1uKCIzMmU5IiksYz1uKCI4NGYyIikscz1uKCI0MWEwIikscD1uKCI3ZjIwIiksbD1uKCIzOGZkIiksdT1uKCIyYjRjIikoIml0ZXJhdG9yIiksZD0hKFtdLmtleXMmJiJuZXh0ImluW10ua2V5cygpKSxfPSJAQGl0ZXJhdG9yIixtPSJrZXlzIixmPSJ2YWx1ZXMiLGg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuLHYseSxnLHcpe3Mobix0LHYpO3ZhciBiLGsseCxDPWZ1bmN0aW9uKGUpe2lmKCFkJiZlIGluIE8pcmV0dXJuIE9bZV07c3dpdGNoKGUpe2Nhc2UgbTpyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4odGhpcyxlKX07Y2FzZSBmOnJldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgbih0aGlzLGUpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4odGhpcyxlKX19LFM9dCsiIEl0ZXJhdG9yIixQPXk9PWYsaj0hMSxPPWUucHJvdG90eXBlLEE9T1t1XXx8T1tfXXx8eSYmT1t5XSxFPUF8fEMoeSksVD15P1A/QygiZW50cmllcyIpOkU6dm9pZCAwLEQ9IkFycmF5Ij09dCYmTy5lbnRyaWVzfHxBO2lmKEQmJih4PWwoRC5jYWxsKG5ldyBlKSkseCE9PU9iamVjdC5wcm90b3R5cGUmJngubmV4dCYmKHAoeCxTLCEwKSxyfHwiZnVuY3Rpb24iPT10eXBlb2YgeFt1XXx8byh4LHUsaCkpKSxQJiZBJiZBLm5hbWUhPT1mJiYoaj0hMCxFPWZ1bmN0aW9uKCl7cmV0dXJuIEEuY2FsbCh0aGlzKX0pLHImJiF3fHwhZCYmIWomJk9bdV18fG8oTyx1LEUpLGNbdF09RSxjW1NdPWgseSlpZihiPXt2YWx1ZXM6UD9FOkMoZiksa2V5czpnP0U6QyhtKSxlbnRyaWVzOlR9LHcpZm9yKGsgaW4gYilrIGluIE98fGEoTyxrLGJba10pO2Vsc2UgaShpLlAraS5GKihkfHxqKSx0LGIpO3JldHVybiBifX0sIjAyZjQiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI0NTg4IiksaT1uKCJiZTEzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0LG4pe3ZhciBhLG8sYz1TdHJpbmcoaSh0KSkscz1yKG4pLHA9Yy5sZW5ndGg7cmV0dXJuIHM8MHx8cz49cD9lPyIiOnZvaWQgMDooYT1jLmNoYXJDb2RlQXQocyksYTw1NTI5Nnx8YT41NjMxOXx8cysxPT09cHx8KG89Yy5jaGFyQ29kZUF0KHMrMSkpPDU2MzIwfHxvPjU3MzQzP2U/Yy5jaGFyQXQocyk6YTplP2Muc2xpY2UocyxzKzIpOm8tNTYzMjArKGEtNTUyOTY8PDEwKSs2NTUzNil9fX0sIjAzOTAiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiMDJmNCIpKCEwKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB0KyhuP3IoZSx0KS5sZW5ndGg6MSl9fSwiMDM5NSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjM2YzMiKSxpPW4oIjZhYmYiKS5mLGE9e30udG9TdHJpbmcsbz0ib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmd2luZG93JiZPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcz9PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh3aW5kb3cpOltdLGM9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybiBpKGUpfWNhdGNoKHQpe3JldHVybiBvLnNsaWNlKCl9fTtlLmV4cG9ydHMuZj1mdW5jdGlvbihlKXtyZXR1cm4gbyYmIltvYmplY3QgV2luZG93XSI9PWEuY2FsbChlKT9jKGUpOmkocihlKSl9fSwiMDQyMyI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IuaZguS+oee3j+mhjeODqeODs+OCryIsIm1jYXAiOiLmmYLkvqHnt4/poY0iLCIyNGhfdm9sdW1lIjoiMjTmmYLplpPps6XosrTml48iLCIyNGhfaGlnaF9sb3ciOiIyNOaZgumWkyDmnIDpq5jlgKQv5pyA5a6J5YCkIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH3jgavjgojjgovmj5DkvpsiLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IuS7ruaDs+mAmuiyqOS+oeagvOOBruavlOi8gyIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiLku67mg7PpgJrosqjmmYLkvqHnt4/poY3jga7mr5TovIMifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR944Gr44KI44KL5o+Q5L6bIn0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjRI5pyA6auY5YCkIiwiMjRoX2xvdyI6IjI0SOacgOWuieWApCIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW5944Gu5L6h5qC844OB44Oj44O844OI44KS6KaL44KLIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH3jgavjgojjgovmj5DkvpsifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfeOBq+OCiOOCi+aPkOS+myJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR944Gr44KI44KL5o+Q5L6bIn0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR944Gr44KI44KL5o+Q5L6bIn0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0SOacgOmrmOWApCIsIjI0aF9sb3ciOiIyNEjmnIDlronlgKQiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufeOBruS+oeagvOODgeODo+ODvOODiOOCkuimi+OCiyIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR944Gr44KI44KL5o+Q5L6bIn0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufeOBruS+oeagvOODgeODo+ODvOODiOOCkuimi+OCiyIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR944Gr44KI44KL5o+Q5L6bIn0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiLku67mg7PpgJrosqjjg4fjg7zjgr/kuIDopqciLCJzdWJ0aXRsZSI6IijmmYLkvqHnt4/poY3kuIrkvY0le3RvcH0pIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH3jgavjgojjgovmj5DkvpsifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLlhY3osqzkuovpoIU6IOOBk+OBruODhOODvOODq+OBr+OCqOODs+OCv+ODvOODhuOCpOODoeODs+ODiOOCkuebrueahOOBqOOBl+OBpuaPkOS+m+OBleOCjOOBpuOBiuOCiuOAgeiyoeWLmeeahOOBquWKqeiogOOCkuaIkOOBmeOCguOBruOBp+OBr+OBguOCiuOBvuOBm+OCk+OAgiIsInNwaW4iOiLjgrnjg5Tjg7MiLCJhdmFpbGFibGVfY29pbnMiOiLliKnnlKjlj6/og73jgarjgrPjgqTjg7MifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiJDb2luR2Vja28g5L6h5qC844Ki44OD44OX44OH44O844OIIiwidG90YWxfbWNhcCI6IuaZguS+oee3j+mhjeWQiOioiCIsIjI0aF92b2wiOiIyNEjlj5blvJXpq5giLCJkb20iOiLljaDmnInnjocifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoi5Y+W5byV5omAIiwicGFpciI6IumAmuiyqOODmuOCoiIsInByaWNlIjoi5L6h5qC8Iiwidm9sdW1lIjoi5Y+W5byV6auYIiwidHJ1c3Rfc2NvcmUiOiLjg4jjg6njgrnjg4jjgrnjgrPjgqIiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi5L6h5qC844OB44Oj44O844OI44KS6KaL44KLIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH3jgavjgojjgovmj5DkvpsiLCJ2aWV3X2FsbCI6IuOBmeOBueOBpuOBriAle2NvaW59IOODnuODvOOCseODg+ODiOOCkuihqOekuiJ9fScpfSwiMDU2YyI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6Iue4veW4guWAvOaOkuWQjSIsIm1jYXAiOiLnuL3luILlgLwiLCIyNGhfdm9sdW1lIjoiMjQg5bCP5pmC5Lqk5piT6YePIiwiMjRoX2hpZ2hfbG93IjoiMjQg5bCP5pmC6auY5YO5L+S9juWDuSJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmj5DkvpsiLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IuWKoOWvhuiyqOW5o+WMr+eOh+avlOi8gyIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiLliqDlr4bosqjluaPluILlgLzmr5TovIMifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmj5DkvpsifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCDlsI/mmYLpq5jlg7kiLCIyNGhfbG93IjoiMjQg5bCP5pmC5L2O5YO5Iiwidmlld19wcmljZV9jaGFydCI6IuafpeeciyAle2NvaW59IOeahOWMr+eOh+WcluihqCIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmj5DkvpsifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5o+Q5L6bIn0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IueUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOaPkOS+myJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5o+Q5L6bIn0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0IOWwj+aZgumrmOWDuSIsIjI0aF9sb3ciOiIyNCDlsI/mmYLkvY7lg7kiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi5p+l55yLICV7Y29pbn0g55qE5Yyv546H5ZyW6KGoIiwicG93ZXJlZF9ieSI6IueUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOaPkOS+myJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IuafpeeciyAle2NvaW59IOeahOWMr+eOh+i1sOWLouWcliIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmj5DkvpsifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IuWKoOWvhuiyqOW5o+aoueeLgOWcliIsInN1YnRpdGxlIjoiKOW4guWAvOWJjSAle3RvcH0g5ZCNKSIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmj5DkvpsifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLlhY3osqzogbLmmI7vvJrmraTlt6Xlhbflg4XkvpvlqJvmqILkuYvnlKjvvIzkuI3mp4vmiJDosqHli5nlu7rorbDjgIIiLCJzcGluIjoiU3BpbiIsImF2YWlsYWJsZV9jb2lucyI6IuWPr+eUqOiyqOW5oyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyDljK/njofmm7TmlrAiLCJ0b3RhbF9tY2FwIjoi57i95biC5YC8IiwiMjRoX3ZvbCI6IjI0IOWwj+aZguS6pOaYk+mHjyIsImRvbSI6IuW4guS9lOeOhyJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLkuqTmmJPlubPlj7AiLCJwYWlyIjoi5bCNIiwicHJpY2UiOiLlg7nmoLwiLCJ2b2x1bWUiOiLkuqTmmJPph48iLCJ0cnVzdF9zY29yZSI6IuS/oeS7u+WIhuaVuCIsInZpZXdfcHJpY2VfY2hhcnQiOiLmn6XnnIvljK/njofotbDli6LlnJYiLCJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5o+Q5L6bIiwidmlld19hbGwiOiLmn6XnnIvmiYDmnIkgJXtjb2lufSDluILloLQifX0nKX0sIjA3ZTMiOmZ1bmN0aW9uKGUsdCl7dmFyIG49e30uaGFzT3duUHJvcGVydHk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG4uY2FsbChlLHQpfX0sIjA4MjUiOmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJDbGFzc2lmaWNhIGNhcC4gZGkgbWVyY2F0byIsIm1jYXAiOiJDYXAuIGRpIG1lcmNhdG8iLCIyNGhfdm9sdW1lIjoiVm9sdW1lIGluIDI0IG9yZSIsIjI0aF9oaWdoX2xvdyI6Ik1heC9taW4gaW4gMjQgb3JlIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiQ29uZnJvbnRvIHByZXp6aSBkZWxsZSBjcmlwdG8iLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiQ29uZnJvbnRvIGRpIGNhcGl0YWxpenphemlvbmUgZGkgbWVyY2F0byBkZWxsZSBjcmlwdG8ifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiJNYXNzaW1vIGluIDI0IG9yZSIsIjI0aF9sb3ciOiJNaW5pbW8gaW4gMjQgb3JlIiwidmlld19wcmljZV9jaGFydCI6IlZpc3VhbGl6emEgZ3JhZmljbyBwcmV6emkgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6Ik1hc3NpbW8gaW4gMjQgb3JlIiwiMjRoX2xvdyI6Ik1pbmltbyBpbiAyNCBvcmUiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmlzdWFsaXp6YSBncmFmaWNvIHByZXp6aSAle2NvaW59IiwicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZpc3VhbGl6emEgZ3JhZmljbyBwcmV6emkgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6Ik1hcHBhIGFkIGFsYmVybyBkZWxsZSBjcmlwdG92YWx1dGUiLCJzdWJ0aXRsZSI6IihWYWx1dGUgdG9wICV7dG9wfSBwZXIgY2FwaXRhbGl6emF6aW9uZSBkaSBtZXJjYXRvKSIsInBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiJEaXNjbGFpbWVyOiBRdWVzdGkgc3RydW1lbnRpIHNvbm8gYSBzY29wbyBkaSBpbnRyYXR0ZW5pbWVudG8gZSBub24gY29zdGl0dWlzY29ubyB1bmEgY29uc3VsZW56YSBmaW5hbnppYXJpYS4iLCJzcGluIjoiU3BpbiIsImF2YWlsYWJsZV9jb2lucyI6IlZhbHV0ZSBEaXNwb25pYmlsaSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkFnZ2lvcm5hbWVudG8gcHJlenppIENvaW5HZWNrbyIsInRvdGFsX21jYXAiOiJDYXAuIGRpIG1lcmNhdG8gdG90YWxlIiwiMjRoX3ZvbCI6IlZvbHVtZSBpbiAyNCBvcmUiLCJkb20iOiJEb20ifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiRXhjaGFuZ2UiLCJwYWlyIjoiQ29wcGlhIiwicHJpY2UiOiJQcmV6em8iLCJ2b2x1bWUiOiJWb2x1bWUiLCJ0cnVzdF9zY29yZSI6IlB1bnRlZ2dpbyBkaSBmaWR1Y2lhIiwidmlld19wcmljZV9jaGFydCI6IlZpc3VhbGl6emEgZ3JhZmljbyBwcmV6emkiLCJwb3dlcmVkX2J5IjoiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWaXN1YWxpenphIHR1dHRpIGkgbWVyY2F0aSAle2NvaW59In19Jyl9LCIwYTQ5IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiOWI0MyIpLGk9bigiNjI2YSIpLGE9bigiNGJmOCIpLG89bigiOWRlZiIpLGM9bigiY2QxYyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuPTE9PWUscz0yPT1lLHA9Mz09ZSxsPTQ9PWUsdT02PT1lLGQ9NT09ZXx8dSxfPXR8fGM7cmV0dXJuIGZ1bmN0aW9uKHQsYyxtKXtmb3IodmFyIGYsaCx2PWEodCkseT1pKHYpLGc9cihjLG0sMyksdz1vKHkubGVuZ3RoKSxiPTAsaz1uP18odCx3KTpzP18odCwwKTp2b2lkIDA7dz5iO2IrKylpZigoZHx8YiBpbiB5KSYmKGY9eVtiXSxoPWcoZixiLHYpLGUpKWlmKG4pa1tiXT1oO2Vsc2UgaWYoaClzd2l0Y2goZSl7Y2FzZSAzOnJldHVybiEwO2Nhc2UgNTpyZXR1cm4gZjtjYXNlIDY6cmV0dXJuIGI7Y2FzZSAyOmsucHVzaChmKX1lbHNlIGlmKGwpcmV0dXJuITE7cmV0dXJuIHU/LTE6cHx8bD9sOmt9fX0sIjBiZmIiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiY2I3YyIpO2UuZXhwb3J0cz1mdW5jdGlvbigpe3ZhciBlPXIodGhpcyksdD0iIjtyZXR1cm4gZS5nbG9iYWwmJih0Kz0iZyIpLGUuaWdub3JlQ2FzZSYmKHQrPSJpIiksZS5tdWx0aWxpbmUmJih0Kz0ibSIpLGUudW5pY29kZSYmKHQrPSJ1IiksZS5zdGlja3kmJih0Kz0ieSIpLHR9fSwiMGQ1OCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImNlMTAiKSxpPW4oImUxMWUiKTtlLmV4cG9ydHM9T2JqZWN0LmtleXN8fGZ1bmN0aW9uKGUpe3JldHVybiByKGUsaSl9fSwiMGY3YyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCI2ODhlIik7ZS5leHBvcnRzPUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kfHxyfSwiMGZjOSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjNhMzgiKSxpPU1hdGgubWF4LGE9TWF0aC5taW47ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9cihlKSxlPDA/aShlK3QsMCk6YShlLHQpfX0sMTE1MzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjgzYzIiKSxpPXIoIiVTdHJpbmclIiksYT1yKCIlVHlwZUVycm9yJSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZigic3ltYm9sIj09PXR5cGVvZiBlKXRocm93IG5ldyBhKCJDYW5ub3QgY29udmVydCBhIFN5bWJvbCB2YWx1ZSB0byBhIHN0cmluZyIpO3JldHVybiBpKGUpfX0sMTE2OTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMmQ5NSIpO2UuZXhwb3J0cz1BcnJheS5pc0FycmF5fHxmdW5jdGlvbihlKXtyZXR1cm4iQXJyYXkiPT1yKGUpfX0sIjExZTkiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI1MmE3IiksaT1uKCI0NjMwIiksYT1uKCI2ODIxIiksbz1uKCI2YTk5IiksYz1uKCI2OWE4Iikscz1uKCJjNjlhIikscD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yO3QuZj1uKCI5ZTFlIik/cDpmdW5jdGlvbihlLHQpe2lmKGU9YShlKSx0PW8odCwhMCkscyl0cnl7cmV0dXJuIHAoZSx0KX1jYXRjaChuKXt9aWYoYyhlLHQpKXJldHVybiBpKCFyLmYuY2FsbChlLHQpLGVbdF0pfX0sMTQ5NTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiODZjYyIpLGk9bigiY2I3YyIpLGE9bigiMGQ1OCIpO2UuZXhwb3J0cz1uKCI5ZTFlIik/T2JqZWN0LmRlZmluZVByb3BlcnRpZXM6ZnVuY3Rpb24oZSx0KXtpKGUpO3ZhciBuLG89YSh0KSxjPW8ubGVuZ3RoLHM9MDt3aGlsZShjPnMpci5mKGUsbj1vW3MrK10sdFtuXSk7cmV0dXJuIGV9fSwxNjU0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiNzFjMSIpKCEwKTtuKCIzMGYxIikoU3RyaW5nLCJTdHJpbmciLChmdW5jdGlvbihlKXt0aGlzLl90PVN0cmluZyhlKSx0aGlzLl9pPTB9KSwoZnVuY3Rpb24oKXt2YXIgZSx0PXRoaXMuX3Qsbj10aGlzLl9pO3JldHVybiBuPj10Lmxlbmd0aD97dmFsdWU6dm9pZCAwLGRvbmU6ITB9OihlPXIodCxuKSx0aGlzLl9pKz1lLmxlbmd0aCx7dmFsdWU6ZSxkb25lOiExfSl9KSl9LDE2OTE6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ImNvbnN0cnVjdG9yLGhhc093blByb3BlcnR5LGlzUHJvdG90eXBlT2YscHJvcGVydHlJc0VudW1lcmFibGUsdG9Mb2NhbGVTdHJpbmcsdG9TdHJpbmcsdmFsdWVPZiIuc3BsaXQoIiwiKX0sIjFiN2YiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiNTYyZSIpLGk9IuKAiyI7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZy5wcm90b3R5cGUudHJpbSYmaS50cmltKCk9PT1pP1N0cmluZy5wcm90b3R5cGUudHJpbTpyfX0sIjFiYzMiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJmNzcyIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7aWYoIXIoZSkpcmV0dXJuIGU7dmFyIG4saTtpZih0JiYiZnVuY3Rpb24iPT10eXBlb2Yobj1lLnRvU3RyaW5nKSYmIXIoaT1uLmNhbGwoZSkpKXJldHVybiBpO2lmKCJmdW5jdGlvbiI9PXR5cGVvZihuPWUudmFsdWVPZikmJiFyKGk9bi5jYWxsKGUpKSlyZXR1cm4gaTtpZighdCYmImZ1bmN0aW9uIj09dHlwZW9mKG49ZS50b1N0cmluZykmJiFyKGk9bi5jYWxsKGUpKSlyZXR1cm4gaTt0aHJvdyBUeXBlRXJyb3IoIkNhbid0IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2ZSB2YWx1ZSIpfX0sIjFlYzkiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJmNzcyIiksaT1uKCJlNTNkIikuZG9jdW1lbnQsYT1yKGkpJiZyKGkuY3JlYXRlRWxlbWVudCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBhP2kuY3JlYXRlRWxlbWVudChlKTp7fX19LDIwOmZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9bigiNWMyMiIpfSwiMjEwYyI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IlBlcmluZ2thdCBLYXAgUGFzYXIiLCJtY2FwIjoiS2FwaXRhbGlzYXNpIFBhc2FyIiwiMjRoX3ZvbHVtZSI6IlZvbHVtZSAyNEoiLCIyNGhfaGlnaF9sb3ciOiJUaW5nZ2kvUmVuZGFoIDI0SiJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEaWR1a3VuZyBvbGVoICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IlBlcmJhbmRpbmdhbiBIYXJnYSBLcmlwdG8iLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiUGVyYmFuZGluZ2FuIEthcCBQYWFyIEtyaXB0byJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0SiBUaW5nZ2kiLCIyNGhfbG93IjoiMjRKIFJlbmRhaCIsInZpZXdfcHJpY2VfY2hhcnQiOiJMaWhhdCBHcmFmaWsgSGFyZ2EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJEaWR1a3VuZyBvbGVoICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRGlkdWt1bmcgb2xlaCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRGlkdWt1bmcgb2xlaCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0SiBUaW5nZ2kiLCIyNGhfbG93IjoiMjRKIFJlbmRhaCIsInZpZXdfcHJpY2VfY2hhcnQiOiJMaWhhdCBHcmFmaWsgSGFyZ2EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJEaWR1a3VuZyBvbGVoICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJMaWhhdCBHcmFmaWsgSGFyZ2EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJEaWR1a3VuZyBvbGVoICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IlBldGEgUG9ob24gQ3J5cHRvY3VycmVuY3kiLCJzdWJ0aXRsZSI6Iigle3RvcH0gVGVyYXRhcyBCZXJkYXNhcmthbiBLYXAgUGFzYXIpIiwicG93ZXJlZF9ieSI6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IlNhbmdrYWxhbjogQWxhdCBpbmkgYmVyZnVuZ3NpIHNlYmFnYWkgaGlidXJhbiBkYW4gYnVrYW4gbWVydXBha2FuIHNhcmFuIGtldWFuZ2FuLiIsInNwaW4iOiJQdXRhciIsImF2YWlsYWJsZV9jb2lucyI6IktvaW4geWFuZyBUZXJzZWRpYSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IlBlbWJhcnVhbiBIYXJnYSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiVG90YWwgS2FwIFAiLCIyNGhfdm9sIjoiVm9sdW1lIDI0SiIsImRvbSI6IkRvbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJCdXJzYSIsInBhaXIiOiJQYXNhbmdhbiIsInByaWNlIjoiSGFyZ2EiLCJ2b2x1bWUiOiJWb2x1bWUiLCJ0cnVzdF9zY29yZSI6IlNrb3IgS2VwZXJjYXlhYW4iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiTGloYXQgR3JhZmlrIEhhcmdhIiwicG93ZXJlZF9ieSI6IkRpZHVrdW5nIG9sZWggJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiTGloYXQgc2VtdWEgcGFzYXIgJXtjb2lufSJ9fScpfSwiMjE0ZiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCJiMGM1Iik7dmFyIHI9bigiMmFiYSIpLGk9bigiMzJlOSIpLGE9bigiNzllNSIpLG89bigiYmUxMyIpLGM9bigiMmI0YyIpLHM9bigiNTIwYSIpLHA9Yygic3BlY2llcyIpLGw9IWEoKGZ1bmN0aW9uKCl7dmFyIGU9Ly4vO3JldHVybiBlLmV4ZWM9ZnVuY3Rpb24oKXt2YXIgZT1bXTtyZXR1cm4gZS5ncm91cHM9e2E6IjcifSxlfSwiNyIhPT0iIi5yZXBsYWNlKGUsIiQ8YT4iKX0pKSx1PWZ1bmN0aW9uKCl7dmFyIGU9Lyg/OikvLHQ9ZS5leGVjO2UuZXhlYz1mdW5jdGlvbigpe3JldHVybiB0LmFwcGx5KHRoaXMsYXJndW1lbnRzKX07dmFyIG49ImFiIi5zcGxpdChlKTtyZXR1cm4gMj09PW4ubGVuZ3RoJiYiYSI9PT1uWzBdJiYiYiI9PT1uWzFdfSgpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7dmFyIGQ9YyhlKSxfPSFhKChmdW5jdGlvbigpe3ZhciB0PXt9O3JldHVybiB0W2RdPWZ1bmN0aW9uKCl7cmV0dXJuIDd9LDchPSIiW2VdKHQpfSkpLG09Xz8hYSgoZnVuY3Rpb24oKXt2YXIgdD0hMSxuPS9hLztyZXR1cm4gbi5leGVjPWZ1bmN0aW9uKCl7cmV0dXJuIHQ9ITAsbnVsbH0sInNwbGl0Ij09PWUmJihuLmNvbnN0cnVjdG9yPXt9LG4uY29uc3RydWN0b3JbcF09ZnVuY3Rpb24oKXtyZXR1cm4gbn0pLG5bZF0oIiIpLCF0fSkpOnZvaWQgMDtpZighX3x8IW18fCJyZXBsYWNlIj09PWUmJiFsfHwic3BsaXQiPT09ZSYmIXUpe3ZhciBmPS8uL1tkXSxoPW4obyxkLCIiW2VdLChmdW5jdGlvbihlLHQsbixyLGkpe3JldHVybiB0LmV4ZWM9PT1zP18mJiFpP3tkb25lOiEwLHZhbHVlOmYuY2FsbCh0LG4scil9Ontkb25lOiEwLHZhbHVlOmUuY2FsbChuLHQscil9Ontkb25lOiExfX0pKSx2PWhbMF0seT1oWzFdO3IoU3RyaW5nLnByb3RvdHlwZSxlLHYpLGkoUmVnRXhwLnByb3RvdHlwZSxkLDI9PXQ/ZnVuY3Rpb24oZSx0KXtyZXR1cm4geS5jYWxsKGUsdGhpcyx0KX06ZnVuY3Rpb24oZSl7cmV0dXJuIHkuY2FsbChlLHRoaXMpfSl9fX0sIjIxYWEiOmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJSYW5nbGlzdGUgZWZ0ZXIgbWFya2Vkc3bDpnJkaSIsIm1jYXAiOiJNYXJrZWRzdsOmcmRpIiwiMjRoX3ZvbHVtZSI6IjI0dCB2b2x1bWVuIiwiMjRoX2hpZ2hfbG93IjoiMjR0IGjDuGovbGF2In0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRyZXZldCBhZiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJTYW1tZW5saWduaW5nIGFmIGtyeXB0b2t1cnMiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiU2FtbWVubGlnbmluZyBhZiBrcnlwdG9tYXJrZWRzdsOmcmRpIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRHJldmV0IGFmICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNHQgaMO4aiIsIjI0aF9sb3ciOiIyNHQgbGF2Iiwidmlld19wcmljZV9jaGFydCI6IlZpcyBrdXJzZGlhZ3JhbSBmb3IgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJEcmV2ZXQgYWYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcmV2ZXQgYWYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcmV2ZXQgYWYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRHJldmV0IGFmICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjR0IGjDuGoiLCIyNGhfbG93IjoiMjR0IGxhdiIsInZpZXdfcHJpY2VfY2hhcnQiOiJWaXMga3Vyc2RpYWdyYW0gZm9yICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiRHJldmV0IGFmICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJWaXMga3Vyc2RpYWdyYW0gZm9yICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiRHJldmV0IGFmICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6Ik92ZXJzaWd0IG92ZXIga3J5cHRvdmFsdXRhZXIiLCJzdWJ0aXRsZSI6IihUb3AgJXt0b3B9IHVkIGZyYSBtYXJrZWRzdsOmcmRpKSIsInBvd2VyZWRfYnkiOiJEcmV2ZXQgYWYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IkFuc3ZhcnNmcmFza3JpdmVsc2U6IERpc3NlIHbDpnJrdMO4amVyIGZ1bmdlcmVyIHNvbSB1bmRlcmhvbGRuaW5nIG9nIHVkZ8O4ciBpa2tlIGZpbmFuc2llbCByw6VkZ2l2bmluZy4iLCJzcGluIjoiS2FzdCIsImF2YWlsYWJsZV9jb2lucyI6IlRpbGfDpm5nZWxpZ2UgY29pbnMifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiJDb2luR2Vja28ga3Vyc29wZGF0ZXJpbmciLCJ0b3RhbF9tY2FwIjoiTWFya2Vkc3bDpnJkaSBpIGFsdCIsIjI0aF92b2wiOiIyNHQgdm9sdW1lbiIsImRvbSI6IkRvbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJCw7hycyIsInBhaXIiOiJQYXIiLCJwcmljZSI6IlByaXMiLCJ2b2x1bWUiOiJWb2x1bWVuIiwidHJ1c3Rfc2NvcmUiOiJUaWxsaWRzc2NvcmUiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmlzIGt1cnNkaWFncmFtIiwicG93ZXJlZF9ieSI6IkRyZXZldCBhZiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWaXMgYWxsZSAle2NvaW59LW1hcmtlZGVyIn19Jyl9LCIyMWQwIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPUZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZyxpPS9eXHMqY2xhc3NcYi8sYT1mdW5jdGlvbihlKXt0cnl7dmFyIHQ9ci5jYWxsKGUpO3JldHVybiBpLnRlc3QodCl9Y2F0Y2gobil7cmV0dXJuITF9fSxvPWZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4hYShlKSYmKHIuY2FsbChlKSwhMCl9Y2F0Y2godCl7cmV0dXJuITF9fSxjPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcscz0iW29iamVjdCBGdW5jdGlvbl0iLHA9IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIixsPSJmdW5jdGlvbiI9PT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09PXR5cGVvZiBTeW1ib2wudG9TdHJpbmdUYWc7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKCFlKXJldHVybiExO2lmKCJmdW5jdGlvbiIhPT10eXBlb2YgZSYmIm9iamVjdCIhPT10eXBlb2YgZSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT09dHlwZW9mIGUmJiFlLnByb3RvdHlwZSlyZXR1cm4hMDtpZihsKXJldHVybiBvKGUpO2lmKGEoZSkpcmV0dXJuITE7dmFyIHQ9Yy5jYWxsKGUpO3JldHVybiB0PT09c3x8dD09PXB9fSwiMjMwZSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQzZjQiKSxpPW4oIjc3MjYiKS5kb2N1bWVudCxhPXIoaSkmJnIoaS5jcmVhdGVFbGVtZW50KTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGE/aS5jcmVhdGVFbGVtZW50KGUpOnt9fX0sIjIzYzYiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIyZDk1IiksaT1uKCIyYjRjIikoInRvU3RyaW5nVGFnIiksYT0iQXJndW1lbnRzIj09cihmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHN9KCkpLG89ZnVuY3Rpb24oZSx0KXt0cnl7cmV0dXJuIGVbdF19Y2F0Y2gobil7fX07ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0LG4sYztyZXR1cm4gdm9pZCAwPT09ZT8iVW5kZWZpbmVkIjpudWxsPT09ZT8iTnVsbCI6InN0cmluZyI9PXR5cGVvZihuPW8odD1PYmplY3QoZSksaSkpP246YT9yKHQpOiJPYmplY3QiPT0oYz1yKHQpKSYmImZ1bmN0aW9uIj09dHlwZW9mIHQuY2FsbGVlPyJBcmd1bWVudHMiOmN9fSwiMjQxZSI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjI1ZWIiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdChyKGUpKX19LCIyNGZiIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSx0KXt2YXIgbj1lWzFdfHwiIixyPWVbM107aWYoIXIpcmV0dXJuIG47aWYodCYmImZ1bmN0aW9uIj09PXR5cGVvZiBidG9hKXt2YXIgYT1pKHIpLG89ci5zb3VyY2VzLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIi8qIyBzb3VyY2VVUkw9IityLnNvdXJjZVJvb3QrZSsiICovIn0pKTtyZXR1cm5bbl0uY29uY2F0KG8pLmNvbmNhdChbYV0pLmpvaW4oIlxuIil9cmV0dXJuW25dLmpvaW4oIlxuIil9ZnVuY3Rpb24gaShlKXt2YXIgdD1idG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShlKSkpKSxuPSJzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwiK3Q7cmV0dXJuIi8qIyAiK24rIiAqLyJ9ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PVtdO3JldHVybiB0LnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWFwKChmdW5jdGlvbih0KXt2YXIgbj1yKHQsZSk7cmV0dXJuIHRbMl0/IkBtZWRpYSAiK3RbMl0rInsiK24rIn0iOm59KSkuam9pbigiIil9LHQuaT1mdW5jdGlvbihlLG4peyJzdHJpbmciPT09dHlwZW9mIGUmJihlPVtbbnVsbCxlLCIiXV0pO2Zvcih2YXIgcj17fSxpPTA7aTx0aGlzLmxlbmd0aDtpKyspe3ZhciBhPXRoaXNbaV1bMF07bnVsbCE9YSYmKHJbYV09ITApfWZvcihpPTA7aTxlLmxlbmd0aDtpKyspe3ZhciBvPWVbaV07bnVsbCE9b1swXSYmcltvWzBdXXx8KG4mJiFvWzJdP29bMl09bjpuJiYob1syXT0iKCIrb1syXSsiKSBhbmQgKCIrbisiKSIpLHQucHVzaChvKSl9fSx0fX0sIjI1ZWIiOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKHZvaWQgMD09ZSl0aHJvdyBUeXBlRXJyb3IoIkNhbid0IGNhbGwgbWV0aG9kIG9uICAiK2UpO3JldHVybiBlfX0sMjg3NzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSx0LG4scixpLGEsbyxjKXt2YXIgcyxwPSJmdW5jdGlvbiI9PT10eXBlb2YgZT9lLm9wdGlvbnM6ZTtpZih0JiYocC5yZW5kZXI9dCxwLnN0YXRpY1JlbmRlckZucz1uLHAuX2NvbXBpbGVkPSEwKSxyJiYocC5mdW5jdGlvbmFsPSEwKSxhJiYocC5fc2NvcGVJZD0iZGF0YS12LSIrYSksbz8ocz1mdW5jdGlvbihlKXtlPWV8fHRoaXMuJHZub2RlJiZ0aGlzLiR2bm9kZS5zc3JDb250ZXh0fHx0aGlzLnBhcmVudCYmdGhpcy5wYXJlbnQuJHZub2RlJiZ0aGlzLnBhcmVudC4kdm5vZGUuc3NyQ29udGV4dCxlfHwidW5kZWZpbmVkIj09PXR5cGVvZiBfX1ZVRV9TU1JfQ09OVEVYVF9ffHwoZT1fX1ZVRV9TU1JfQ09OVEVYVF9fKSxpJiZpLmNhbGwodGhpcyxlKSxlJiZlLl9yZWdpc3RlcmVkQ29tcG9uZW50cyYmZS5fcmVnaXN0ZXJlZENvbXBvbmVudHMuYWRkKG8pfSxwLl9zc3JSZWdpc3Rlcj1zKTppJiYocz1jP2Z1bmN0aW9uKCl7aS5jYWxsKHRoaXMsdGhpcy4kcm9vdC4kb3B0aW9ucy5zaGFkb3dSb290KX06aSkscylpZihwLmZ1bmN0aW9uYWwpe3AuX2luamVjdFN0eWxlcz1zO3ZhciBsPXAucmVuZGVyO3AucmVuZGVyPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHMuY2FsbCh0KSxsKGUsdCl9fWVsc2V7dmFyIHU9cC5iZWZvcmVDcmVhdGU7cC5iZWZvcmVDcmVhdGU9dT9bXS5jb25jYXQodSxzKTpbc119cmV0dXJue2V4cG9ydHM6ZSxvcHRpb25zOnB9fW4uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKX0sIjI4OGEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiZDAyNCIpLGk9bigiZmE0ZSIpLGE9bigiYTBkMyIpLG89bigiY2E5ZiIpLGM9ZnVuY3Rpb24oZSl7aSghMSxlKX0scz1TdHJpbmcucHJvdG90eXBlLnJlcGxhY2UscD1TdHJpbmcucHJvdG90eXBlLnNwbGl0LGw9Inx8fHwiLHU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZSUxMDtyZXR1cm4gMTEhPT1lJiYxPT09dD8wOjI8PXQmJnQ8PTQmJiEoZT49MTImJmU8PTE0KT8xOjJ9LGQ9e2FyYWJpYzpmdW5jdGlvbihlKXtpZihlPDMpcmV0dXJuIGU7dmFyIHQ9ZSUxMDA7cmV0dXJuIHQ+PTMmJnQ8PTEwPzM6dD49MTE/NDo1fSxib3NuaWFuX3NlcmJpYW46dSxjaGluZXNlOmZ1bmN0aW9uKCl7cmV0dXJuIDB9LGNyb2F0aWFuOnUsZnJlbmNoOmZ1bmN0aW9uKGUpe3JldHVybiBlPjE/MTowfSxnZXJtYW46ZnVuY3Rpb24oZSl7cmV0dXJuIDEhPT1lPzE6MH0scnVzc2lhbjp1LGxpdGh1YW5pYW46ZnVuY3Rpb24oZSl7cmV0dXJuIGUlMTA9PT0xJiZlJTEwMCE9PTExPzA6ZSUxMD49MiYmZSUxMDw9OSYmKGUlMTAwPDExfHxlJTEwMD4xOSk/MToyfSxjemVjaDpmdW5jdGlvbihlKXtyZXR1cm4gMT09PWU/MDplPj0yJiZlPD00PzE6Mn0scG9saXNoOmZ1bmN0aW9uKGUpe2lmKDE9PT1lKXJldHVybiAwO3ZhciB0PWUlMTA7cmV0dXJuIDI8PXQmJnQ8PTQmJihlJTEwMDwxMHx8ZSUxMDA+PTIwKT8xOjJ9LGljZWxhbmRpYzpmdW5jdGlvbihlKXtyZXR1cm4gZSUxMCE9PTF8fGUlMTAwPT09MTE/MTowfSxzbG92ZW5pYW46ZnVuY3Rpb24oZSl7dmFyIHQ9ZSUxMDA7cmV0dXJuIDE9PT10PzA6Mj09PXQ/MTozPT09dHx8ND09PXQ/MjozfX0sXz17YXJhYmljOlsiYXIiXSxib3NuaWFuX3NlcmJpYW46WyJicy1MYXRuLUJBIiwiYnMtQ3lybC1CQSIsInNybC1SUyIsInNyLVJTIl0sY2hpbmVzZTpbImlkIiwiaWQtSUQiLCJqYSIsImtvIiwia28tS1IiLCJsbyIsIm1zIiwidGgiLCJ0aC1USCIsInpoIl0sY3JvYXRpYW46WyJociIsImhyLUhSIl0sZ2VybWFuOlsiZmEiLCJkYSIsImRlIiwiZW4iLCJlcyIsImZpIiwiZWwiLCJoZSIsImhpLUlOIiwiaHUiLCJodS1IVSIsIml0IiwibmwiLCJubyIsInB0Iiwic3YiLCJ0ciJdLGZyZW5jaDpbImZyIiwidGwiLCJwdC1iciJdLHJ1c3NpYW46WyJydSIsInJ1LVJVIl0sbGl0aHVhbmlhbjpbImx0Il0sY3plY2g6WyJjcyIsImNzLUNaIiwic2siXSxwb2xpc2g6WyJwbCJdLGljZWxhbmRpYzpbImlzIl0sc2xvdmVuaWFuOlsic2wtU0wiXX07ZnVuY3Rpb24gbShlKXt2YXIgdD17fTtyZXR1cm4gcihlLChmdW5jdGlvbihlLG4pe3IoZSwoZnVuY3Rpb24oZSl7dFtlXT1ufSkpfSkpLHR9ZnVuY3Rpb24gZihlKXt2YXIgdD1tKF8pO3JldHVybiB0W2VdfHx0W3AuY2FsbChlLC8tLywxKVswXV18fHQuZW59ZnVuY3Rpb24gaChlLHQpe3JldHVybiBkW2YoZSldKHQpfWZ1bmN0aW9uIHYoZSl7cmV0dXJuIGUucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xdXFxdL2csIlxcJCYiKX1mdW5jdGlvbiB5KGUpe3ZhciB0PWUmJmUucHJlZml4fHwiJXsiLG49ZSYmZS5zdWZmaXh8fCJ9IjtpZih0PT09bHx8bj09PWwpdGhyb3cgbmV3IFJhbmdlRXJyb3IoJyInK2wrJyIgdG9rZW4gaXMgcmVzZXJ2ZWQgZm9yIHBsdXJhbGl6YXRpb24nKTtyZXR1cm4gbmV3IFJlZ0V4cCh2KHQpKyIoLio/KSIrdihuKSwiZyIpfXZhciBnPS9cJC9nLHc9IiQkIixiPS8lXHsoLio/KVx9L2c7ZnVuY3Rpb24gayhlLHQsbixyKXtpZigic3RyaW5nIiE9PXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoIlBvbHlnbG90LnRyYW5zZm9ybVBocmFzZSBleHBlY3RzIGFyZ3VtZW50ICMxIHRvIGJlIHN0cmluZyIpO2lmKG51bGw9PXQpcmV0dXJuIGU7dmFyIGk9ZSxjPXJ8fGIsdT0ibnVtYmVyIj09PXR5cGVvZiB0P3tzbWFydF9jb3VudDp0fTp0O2lmKG51bGwhPXUuc21hcnRfY291bnQmJmkpe3ZhciBkPXAuY2FsbChpLGwpO2k9byhkW2gobnx8ImVuIix1LnNtYXJ0X2NvdW50KV18fGRbMF0pfXJldHVybiBpPXMuY2FsbChpLGMsKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGEodSx0KSYmbnVsbCE9dVt0XT9zLmNhbGwodVt0XSxnLHcpOmV9KSksaX1mdW5jdGlvbiB4KGUpe3ZhciB0PWV8fHt9O3RoaXMucGhyYXNlcz17fSx0aGlzLmV4dGVuZCh0LnBocmFzZXN8fHt9KSx0aGlzLmN1cnJlbnRMb2NhbGU9dC5sb2NhbGV8fCJlbiI7dmFyIG49dC5hbGxvd01pc3Npbmc/azpudWxsO3RoaXMub25NaXNzaW5nS2V5PSJmdW5jdGlvbiI9PT10eXBlb2YgdC5vbk1pc3NpbmdLZXk/dC5vbk1pc3NpbmdLZXk6bix0aGlzLndhcm49dC53YXJufHxjLHRoaXMudG9rZW5SZWdleD15KHQuaW50ZXJwb2xhdGlvbil9eC5wcm90b3R5cGUubG9jYWxlPWZ1bmN0aW9uKGUpe3JldHVybiBlJiYodGhpcy5jdXJyZW50TG9jYWxlPWUpLHRoaXMuY3VycmVudExvY2FsZX0seC5wcm90b3R5cGUuZXh0ZW5kPWZ1bmN0aW9uKGUsdCl7cihlLChmdW5jdGlvbihlLG4pe3ZhciByPXQ/dCsiLiIrbjpuOyJvYmplY3QiPT09dHlwZW9mIGU/dGhpcy5leHRlbmQoZSxyKTp0aGlzLnBocmFzZXNbcl09ZX0pLHRoaXMpfSx4LnByb3RvdHlwZS51bnNldD1mdW5jdGlvbihlLHQpeyJzdHJpbmciPT09dHlwZW9mIGU/ZGVsZXRlIHRoaXMucGhyYXNlc1tlXTpyKGUsKGZ1bmN0aW9uKGUsbil7dmFyIHI9dD90KyIuIituOm47Im9iamVjdCI9PT10eXBlb2YgZT90aGlzLnVuc2V0KGUscik6ZGVsZXRlIHRoaXMucGhyYXNlc1tyXX0pLHRoaXMpfSx4LnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXMucGhyYXNlcz17fX0seC5wcm90b3R5cGUucmVwbGFjZT1mdW5jdGlvbihlKXt0aGlzLmNsZWFyKCksdGhpcy5leHRlbmQoZSl9LHgucHJvdG90eXBlLnQ9ZnVuY3Rpb24oZSx0KXt2YXIgbixyLGk9bnVsbD09dD97fTp0O2lmKCJzdHJpbmciPT09dHlwZW9mIHRoaXMucGhyYXNlc1tlXSluPXRoaXMucGhyYXNlc1tlXTtlbHNlIGlmKCJzdHJpbmciPT09dHlwZW9mIGkuXyluPWkuXztlbHNlIGlmKHRoaXMub25NaXNzaW5nS2V5KXt2YXIgYT10aGlzLm9uTWlzc2luZ0tleTtyPWEoZSxpLHRoaXMuY3VycmVudExvY2FsZSx0aGlzLnRva2VuUmVnZXgpfWVsc2UgdGhpcy53YXJuKCdNaXNzaW5nIHRyYW5zbGF0aW9uIGZvciBrZXk6ICInK2UrJyInKSxyPWU7cmV0dXJuInN0cmluZyI9PT10eXBlb2YgbiYmKHI9ayhuLGksdGhpcy5jdXJyZW50TG9jYWxlLHRoaXMudG9rZW5SZWdleCkpLHJ9LHgucHJvdG90eXBlLmhhcz1mdW5jdGlvbihlKXtyZXR1cm4gYSh0aGlzLnBocmFzZXMsZSl9LHgudHJhbnNmb3JtUGhyYXNlPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gayhlLHQsbil9LGUuZXhwb3J0cz14fSwiMjhhNSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCJhYWUzIiksaT1uKCJjYjdjIiksYT1uKCJlYmQ2Iiksbz1uKCIwMzkwIiksYz1uKCI5ZGVmIikscz1uKCI1ZjFiIikscD1uKCI1MjBhIiksbD1uKCI3OWU1IiksdT1NYXRoLm1pbixkPVtdLnB1c2gsXz0ic3BsaXQiLG09Imxlbmd0aCIsZj0ibGFzdEluZGV4IixoPTQyOTQ5NjcyOTUsdj0hbCgoZnVuY3Rpb24oKXtSZWdFeHAoaCwieSIpfSkpO24oIjIxNGYiKSgic3BsaXQiLDIsKGZ1bmN0aW9uKGUsdCxuLGwpe3ZhciB5O3JldHVybiB5PSJjIj09ImFiYmMiW19dKC8oYikqLylbMV18fDQhPSJ0ZXN0IltfXSgvKD86KS8sLTEpW21dfHwyIT0iYWIiW19dKC8oPzphYikqLylbbV18fDQhPSIuIltfXSgvKC4/KSguPykvKVttXXx8Ii4iW19dKC8oKSgpLylbbV0+MXx8IiJbX10oLy4/LylbbV0/ZnVuY3Rpb24oZSx0KXt2YXIgaT1TdHJpbmcodGhpcyk7aWYodm9pZCAwPT09ZSYmMD09PXQpcmV0dXJuW107aWYoIXIoZSkpcmV0dXJuIG4uY2FsbChpLGUsdCk7dmFyIGEsbyxjLHM9W10sbD0oZS5pZ25vcmVDYXNlPyJpIjoiIikrKGUubXVsdGlsaW5lPyJtIjoiIikrKGUudW5pY29kZT8idSI6IiIpKyhlLnN0aWNreT8ieSI6IiIpLHU9MCxfPXZvaWQgMD09PXQ/aDp0Pj4+MCx2PW5ldyBSZWdFeHAoZS5zb3VyY2UsbCsiZyIpO3doaWxlKGE9cC5jYWxsKHYsaSkpe2lmKG89dltmXSxvPnUmJihzLnB1c2goaS5zbGljZSh1LGEuaW5kZXgpKSxhW21dPjEmJmEuaW5kZXg8aVttXSYmZC5hcHBseShzLGEuc2xpY2UoMSkpLGM9YVswXVttXSx1PW8sc1ttXT49XykpYnJlYWs7dltmXT09PWEuaW5kZXgmJnZbZl0rK31yZXR1cm4gdT09PWlbbV0/IWMmJnYudGVzdCgiIil8fHMucHVzaCgiIik6cy5wdXNoKGkuc2xpY2UodSkpLHNbbV0+Xz9zLnNsaWNlKDAsXyk6c306IjAiW19dKHZvaWQgMCwwKVttXT9mdW5jdGlvbihlLHQpe3JldHVybiB2b2lkIDA9PT1lJiYwPT09dD9bXTpuLmNhbGwodGhpcyxlLHQpfTpuLFtmdW5jdGlvbihuLHIpe3ZhciBpPWUodGhpcyksYT12b2lkIDA9PW4/dm9pZCAwOm5bdF07cmV0dXJuIHZvaWQgMCE9PWE/YS5jYWxsKG4saSxyKTp5LmNhbGwoU3RyaW5nKGkpLG4scil9LGZ1bmN0aW9uKGUsdCl7dmFyIHI9bCh5LGUsdGhpcyx0LHkhPT1uKTtpZihyLmRvbmUpcmV0dXJuIHIudmFsdWU7dmFyIHA9aShlKSxkPVN0cmluZyh0aGlzKSxfPWEocCxSZWdFeHApLG09cC51bmljb2RlLGY9KHAuaWdub3JlQ2FzZT8iaSI6IiIpKyhwLm11bHRpbGluZT8ibSI6IiIpKyhwLnVuaWNvZGU/InUiOiIiKSsodj8ieSI6ImciKSxnPW5ldyBfKHY/cDoiXig/OiIrcC5zb3VyY2UrIikiLGYpLHc9dm9pZCAwPT09dD9oOnQ+Pj4wO2lmKDA9PT13KXJldHVybltdO2lmKDA9PT1kLmxlbmd0aClyZXR1cm4gbnVsbD09PXMoZyxkKT9bZF06W107dmFyIGI9MCxrPTAseD1bXTt3aGlsZShrPGQubGVuZ3RoKXtnLmxhc3RJbmRleD12P2s6MDt2YXIgQyxTPXMoZyx2P2Q6ZC5zbGljZShrKSk7aWYobnVsbD09PVN8fChDPXUoYyhnLmxhc3RJbmRleCsodj8wOmspKSxkLmxlbmd0aCkpPT09YilrPW8oZCxrLG0pO2Vsc2V7aWYoeC5wdXNoKGQuc2xpY2UoYixrKSkseC5sZW5ndGg9PT13KXJldHVybiB4O2Zvcih2YXIgUD0xO1A8PVMubGVuZ3RoLTE7UCsrKWlmKHgucHVzaChTW1BdKSx4Lmxlbmd0aD09PXcpcmV0dXJuIHg7az1iPUN9fXJldHVybiB4LnB1c2goZC5zbGljZShiKSkseH1dfSkpfSwiMjk0YyI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybiEhZSgpfWNhdGNoKHQpe3JldHVybiEwfX19LCIyYWJhIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNzcyNiIpLGk9bigiMzJlOSIpLGE9bigiNjlhOCIpLG89bigiY2E1YSIpKCJzcmMiKSxjPW4oImZhNWIiKSxzPSJ0b1N0cmluZyIscD0oIiIrYykuc3BsaXQocyk7bigiODM3OCIpLmluc3BlY3RTb3VyY2U9ZnVuY3Rpb24oZSl7cmV0dXJuIGMuY2FsbChlKX0sKGUuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixjKXt2YXIgcz0iZnVuY3Rpb24iPT10eXBlb2YgbjtzJiYoYShuLCJuYW1lIil8fGkobiwibmFtZSIsdCkpLGVbdF0hPT1uJiYocyYmKGEobixvKXx8aShuLG8sZVt0XT8iIitlW3RdOnAuam9pbihTdHJpbmcodCkpKSksZT09PXI/ZVt0XT1uOmM/ZVt0XT9lW3RdPW46aShlLHQsbik6KGRlbGV0ZSBlW3RdLGkoZSx0LG4pKSl9KShGdW5jdGlvbi5wcm90b3R5cGUscywoZnVuY3Rpb24oKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdGhpcyYmdGhpc1tvXXx8Yy5jYWxsKHRoaXMpfSkpfSwiMmFlYiI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImNiN2MiKSxpPW4oIjE0OTUiKSxhPW4oImUxMWUiKSxvPW4oIjYxM2IiKSgiSUVfUFJPVE8iKSxjPWZ1bmN0aW9uKCl7fSxzPSJwcm90b3R5cGUiLHA9ZnVuY3Rpb24oKXt2YXIgZSx0PW4oIjIzMGUiKSgiaWZyYW1lIikscj1hLmxlbmd0aCxpPSI8IixvPSI+Ijt0LnN0eWxlLmRpc3BsYXk9Im5vbmUiLG4oImZhYjIiKS5hcHBlbmRDaGlsZCh0KSx0LnNyYz0iamF2YXNjcmlwdDoiLGU9dC5jb250ZW50V2luZG93LmRvY3VtZW50LGUub3BlbigpLGUud3JpdGUoaSsic2NyaXB0IitvKyJkb2N1bWVudC5GPU9iamVjdCIraSsiL3NjcmlwdCIrbyksZS5jbG9zZSgpLHA9ZS5GO3doaWxlKHItLSlkZWxldGUgcFtzXVthW3JdXTtyZXR1cm4gcCgpfTtlLmV4cG9ydHM9T2JqZWN0LmNyZWF0ZXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtyZXR1cm4gbnVsbCE9PWU/KGNbc109cihlKSxuPW5ldyBjLGNbc109bnVsbCxuW29dPWUpOm49cCgpLHZvaWQgMD09PXQ/bjppKG4sdCl9fSwiMmIwZSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjsoZnVuY3Rpb24oZSl7Ci8qIQogKiBWdWUuanMgdjIuNS4yMQogKiAoYykgMjAxNC0yMDE4IEV2YW4gWW91CiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4KICovCnZhciBuPU9iamVjdC5mcmVlemUoe30pO2Z1bmN0aW9uIHIoZSl7cmV0dXJuIHZvaWQgMD09PWV8fG51bGw9PT1lfWZ1bmN0aW9uIGkoZSl7cmV0dXJuIHZvaWQgMCE9PWUmJm51bGwhPT1lfWZ1bmN0aW9uIGEoZSl7cmV0dXJuITA9PT1lfWZ1bmN0aW9uIG8oZSl7cmV0dXJuITE9PT1lfWZ1bmN0aW9uIGMoZSl7cmV0dXJuInN0cmluZyI9PT10eXBlb2YgZXx8Im51bWJlciI9PT10eXBlb2YgZXx8InN5bWJvbCI9PT10eXBlb2YgZXx8ImJvb2xlYW4iPT09dHlwZW9mIGV9ZnVuY3Rpb24gcyhlKXtyZXR1cm4gbnVsbCE9PWUmJiJvYmplY3QiPT09dHlwZW9mIGV9dmFyIHA9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztmdW5jdGlvbiBsKGUpe3JldHVybiJbb2JqZWN0IE9iamVjdF0iPT09cC5jYWxsKGUpfWZ1bmN0aW9uIHUoZSl7cmV0dXJuIltvYmplY3QgUmVnRXhwXSI9PT1wLmNhbGwoZSl9ZnVuY3Rpb24gZChlKXt2YXIgdD1wYXJzZUZsb2F0KFN0cmluZyhlKSk7cmV0dXJuIHQ+PTAmJk1hdGguZmxvb3IodCk9PT10JiZpc0Zpbml0ZShlKX1mdW5jdGlvbiBfKGUpe3JldHVybiBudWxsPT1lPyIiOiJvYmplY3QiPT09dHlwZW9mIGU/SlNPTi5zdHJpbmdpZnkoZSxudWxsLDIpOlN0cmluZyhlKX1mdW5jdGlvbiBtKGUpe3ZhciB0PXBhcnNlRmxvYXQoZSk7cmV0dXJuIGlzTmFOKHQpP2U6dH1mdW5jdGlvbiBmKGUsdCl7Zm9yKHZhciBuPU9iamVjdC5jcmVhdGUobnVsbCkscj1lLnNwbGl0KCIsIiksaT0wO2k8ci5sZW5ndGg7aSsrKW5bcltpXV09ITA7cmV0dXJuIHQ/ZnVuY3Rpb24oZSl7cmV0dXJuIG5bZS50b0xvd2VyQ2FzZSgpXX06ZnVuY3Rpb24oZSl7cmV0dXJuIG5bZV19fWYoInNsb3QsY29tcG9uZW50IiwhMCk7dmFyIGg9Zigia2V5LHJlZixzbG90LHNsb3Qtc2NvcGUsaXMiKTtmdW5jdGlvbiB2KGUsdCl7aWYoZS5sZW5ndGgpe3ZhciBuPWUuaW5kZXhPZih0KTtpZihuPi0xKXJldHVybiBlLnNwbGljZShuLDEpfX12YXIgeT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2Z1bmN0aW9uIGcoZSx0KXtyZXR1cm4geS5jYWxsKGUsdCl9ZnVuY3Rpb24gdyhlKXt2YXIgdD1PYmplY3QuY3JlYXRlKG51bGwpO3JldHVybiBmdW5jdGlvbihuKXt2YXIgcj10W25dO3JldHVybiByfHwodFtuXT1lKG4pKX19dmFyIGI9Ly0oXHcpL2csaz13KChmdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKGIsKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ/dC50b1VwcGVyQ2FzZSgpOiIifSkpfSkpLHg9dygoZnVuY3Rpb24oZSl7cmV0dXJuIGUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrZS5zbGljZSgxKX0pKSxDPS9cQihbQS1aXSkvZyxTPXcoKGZ1bmN0aW9uKGUpe3JldHVybiBlLnJlcGxhY2UoQywiLSQxIikudG9Mb3dlckNhc2UoKX0pKTtmdW5jdGlvbiBQKGUsdCl7ZnVuY3Rpb24gbihuKXt2YXIgcj1hcmd1bWVudHMubGVuZ3RoO3JldHVybiByP3I+MT9lLmFwcGx5KHQsYXJndW1lbnRzKTplLmNhbGwodCxuKTplLmNhbGwodCl9cmV0dXJuIG4uX2xlbmd0aD1lLmxlbmd0aCxufWZ1bmN0aW9uIGooZSx0KXtyZXR1cm4gZS5iaW5kKHQpfXZhciBPPUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kP2o6UDtmdW5jdGlvbiBBKGUsdCl7dD10fHwwO3ZhciBuPWUubGVuZ3RoLXQscj1uZXcgQXJyYXkobik7d2hpbGUobi0tKXJbbl09ZVtuK3RdO3JldHVybiByfWZ1bmN0aW9uIEUoZSx0KXtmb3IodmFyIG4gaW4gdCllW25dPXRbbl07cmV0dXJuIGV9ZnVuY3Rpb24gVChlKXtmb3IodmFyIHQ9e30sbj0wO248ZS5sZW5ndGg7bisrKWVbbl0mJkUodCxlW25dKTtyZXR1cm4gdH1mdW5jdGlvbiBEKGUsdCxuKXt9dmFyIHo9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiExfSxNPWZ1bmN0aW9uKGUpe3JldHVybiBlfTtmdW5jdGlvbiAkKGUsdCl7aWYoZT09PXQpcmV0dXJuITA7dmFyIG49cyhlKSxyPXModCk7aWYoIW58fCFyKXJldHVybiFuJiYhciYmU3RyaW5nKGUpPT09U3RyaW5nKHQpO3RyeXt2YXIgaT1BcnJheS5pc0FycmF5KGUpLGE9QXJyYXkuaXNBcnJheSh0KTtpZihpJiZhKXJldHVybiBlLmxlbmd0aD09PXQubGVuZ3RoJiZlLmV2ZXJ5KChmdW5jdGlvbihlLG4pe3JldHVybiAkKGUsdFtuXSl9KSk7aWYoZSBpbnN0YW5jZW9mIERhdGUmJnQgaW5zdGFuY2VvZiBEYXRlKXJldHVybiBlLmdldFRpbWUoKT09PXQuZ2V0VGltZSgpO2lmKGl8fGEpcmV0dXJuITE7dmFyIG89T2JqZWN0LmtleXMoZSksYz1PYmplY3Qua2V5cyh0KTtyZXR1cm4gby5sZW5ndGg9PT1jLmxlbmd0aCYmby5ldmVyeSgoZnVuY3Rpb24obil7cmV0dXJuICQoZVtuXSx0W25dKX0pKX1jYXRjaChwKXtyZXR1cm4hMX19ZnVuY3Rpb24gTihlLHQpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKWlmKCQoZVtuXSx0KSlyZXR1cm4gbjtyZXR1cm4tMX1mdW5jdGlvbiBJKGUpe3ZhciB0PSExO3JldHVybiBmdW5jdGlvbigpe3R8fCh0PSEwLGUuYXBwbHkodGhpcyxhcmd1bWVudHMpKX19dmFyIEY9ImRhdGEtc2VydmVyLXJlbmRlcmVkIixMPVsiY29tcG9uZW50IiwiZGlyZWN0aXZlIiwiZmlsdGVyIl0sUj1bImJlZm9yZUNyZWF0ZSIsImNyZWF0ZWQiLCJiZWZvcmVNb3VudCIsIm1vdW50ZWQiLCJiZWZvcmVVcGRhdGUiLCJ1cGRhdGVkIiwiYmVmb3JlRGVzdHJveSIsImRlc3Ryb3llZCIsImFjdGl2YXRlZCIsImRlYWN0aXZhdGVkIiwiZXJyb3JDYXB0dXJlZCJdLFY9e29wdGlvbk1lcmdlU3RyYXRlZ2llczpPYmplY3QuY3JlYXRlKG51bGwpLHNpbGVudDohMSxwcm9kdWN0aW9uVGlwOiExLGRldnRvb2xzOiExLHBlcmZvcm1hbmNlOiExLGVycm9ySGFuZGxlcjpudWxsLHdhcm5IYW5kbGVyOm51bGwsaWdub3JlZEVsZW1lbnRzOltdLGtleUNvZGVzOk9iamVjdC5jcmVhdGUobnVsbCksaXNSZXNlcnZlZFRhZzp6LGlzUmVzZXJ2ZWRBdHRyOnosaXNVbmtub3duRWxlbWVudDp6LGdldFRhZ05hbWVzcGFjZTpELHBhcnNlUGxhdGZvcm1UYWdOYW1lOk0sbXVzdFVzZVByb3A6eixhc3luYzohMCxfbGlmZWN5Y2xlSG9va3M6Un07ZnVuY3Rpb24gVShlKXt2YXIgdD0oZSsiIikuY2hhckNvZGVBdCgwKTtyZXR1cm4gMzY9PT10fHw5NT09PXR9ZnVuY3Rpb24gSChlLHQsbixyKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHt2YWx1ZTpuLGVudW1lcmFibGU6ISFyLHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH0pfXZhciBHPS9bXlx3LiRdLztmdW5jdGlvbiBLKGUpe2lmKCFHLnRlc3QoZSkpe3ZhciB0PWUuc3BsaXQoIi4iKTtyZXR1cm4gZnVuY3Rpb24oZSl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe2lmKCFlKXJldHVybjtlPWVbdFtuXV19cmV0dXJuIGV9fX12YXIgQixxPSJfX3Byb3RvX18iaW57fSxKPSJ1bmRlZmluZWQiIT09dHlwZW9mIHdpbmRvdyxXPSJ1bmRlZmluZWQiIT09dHlwZW9mIFdYRW52aXJvbm1lbnQmJiEhV1hFbnZpcm9ubWVudC5wbGF0Zm9ybSxYPVcmJldYRW52aXJvbm1lbnQucGxhdGZvcm0udG9Mb3dlckNhc2UoKSxaPUomJndpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCksWT1aJiYvbXNpZXx0cmlkZW50Ly50ZXN0KFopLFE9WiYmWi5pbmRleE9mKCJtc2llIDkuMCIpPjAsZWU9WiYmWi5pbmRleE9mKCJlZGdlLyIpPjAsdGU9KFomJlouaW5kZXhPZigiYW5kcm9pZCIpLFomJi9pcGhvbmV8aXBhZHxpcG9kfGlvcy8udGVzdChaKXx8ImlvcyI9PT1YKSxuZT0oWiYmL2Nocm9tZVwvXGQrLy50ZXN0KFopLHt9LndhdGNoKSxyZT0hMTtpZihKKXRyeXt2YXIgaWU9e307T2JqZWN0LmRlZmluZVByb3BlcnR5KGllLCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7cmU9ITB9fSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QtcGFzc2l2ZSIsbnVsbCxpZSl9Y2F0Y2gob28pe312YXIgYWU9ZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCAwPT09QiYmKEI9IUomJiFXJiYidW5kZWZpbmVkIiE9PXR5cGVvZiBlJiYoZVsicHJvY2VzcyJdJiYic2VydmVyIj09PWVbInByb2Nlc3MiXS5lbnYuVlVFX0VOVikpLEJ9LG9lPUomJndpbmRvdy5fX1ZVRV9ERVZUT09MU19HTE9CQUxfSE9PS19fO2Z1bmN0aW9uIGNlKGUpe3JldHVybiJmdW5jdGlvbiI9PT10eXBlb2YgZSYmL25hdGl2ZSBjb2RlLy50ZXN0KGUudG9TdHJpbmcoKSl9dmFyIHNlLHBlPSJ1bmRlZmluZWQiIT09dHlwZW9mIFN5bWJvbCYmY2UoU3ltYm9sKSYmInVuZGVmaW5lZCIhPT10eXBlb2YgUmVmbGVjdCYmY2UoUmVmbGVjdC5vd25LZXlzKTtzZT0idW5kZWZpbmVkIiE9PXR5cGVvZiBTZXQmJmNlKFNldCk/U2V0OmZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSgpe3RoaXMuc2V0PU9iamVjdC5jcmVhdGUobnVsbCl9cmV0dXJuIGUucHJvdG90eXBlLmhhcz1mdW5jdGlvbihlKXtyZXR1cm4hMD09PXRoaXMuc2V0W2VdfSxlLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oZSl7dGhpcy5zZXRbZV09ITB9LGUucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5zZXQ9T2JqZWN0LmNyZWF0ZShudWxsKX0sZX0oKTt2YXIgbGU9RCx1ZT0wLGRlPWZ1bmN0aW9uKCl7dGhpcy5pZD11ZSsrLHRoaXMuc3Vicz1bXX07ZGUucHJvdG90eXBlLmFkZFN1Yj1mdW5jdGlvbihlKXt0aGlzLnN1YnMucHVzaChlKX0sZGUucHJvdG90eXBlLnJlbW92ZVN1Yj1mdW5jdGlvbihlKXt2KHRoaXMuc3VicyxlKX0sZGUucHJvdG90eXBlLmRlcGVuZD1mdW5jdGlvbigpe2RlLnRhcmdldCYmZGUudGFyZ2V0LmFkZERlcCh0aGlzKX0sZGUucHJvdG90eXBlLm5vdGlmeT1mdW5jdGlvbigpe3ZhciBlPXRoaXMuc3Vicy5zbGljZSgpO2Zvcih2YXIgdD0wLG49ZS5sZW5ndGg7dDxuO3QrKyllW3RdLnVwZGF0ZSgpfSxkZS50YXJnZXQ9bnVsbDt2YXIgX2U9W107ZnVuY3Rpb24gbWUoZSl7X2UucHVzaChlKSxkZS50YXJnZXQ9ZX1mdW5jdGlvbiBmZSgpe19lLnBvcCgpLGRlLnRhcmdldD1fZVtfZS5sZW5ndGgtMV19dmFyIGhlPWZ1bmN0aW9uKGUsdCxuLHIsaSxhLG8sYyl7dGhpcy50YWc9ZSx0aGlzLmRhdGE9dCx0aGlzLmNoaWxkcmVuPW4sdGhpcy50ZXh0PXIsdGhpcy5lbG09aSx0aGlzLm5zPXZvaWQgMCx0aGlzLmNvbnRleHQ9YSx0aGlzLmZuQ29udGV4dD12b2lkIDAsdGhpcy5mbk9wdGlvbnM9dm9pZCAwLHRoaXMuZm5TY29wZUlkPXZvaWQgMCx0aGlzLmtleT10JiZ0LmtleSx0aGlzLmNvbXBvbmVudE9wdGlvbnM9byx0aGlzLmNvbXBvbmVudEluc3RhbmNlPXZvaWQgMCx0aGlzLnBhcmVudD12b2lkIDAsdGhpcy5yYXc9ITEsdGhpcy5pc1N0YXRpYz0hMSx0aGlzLmlzUm9vdEluc2VydD0hMCx0aGlzLmlzQ29tbWVudD0hMSx0aGlzLmlzQ2xvbmVkPSExLHRoaXMuaXNPbmNlPSExLHRoaXMuYXN5bmNGYWN0b3J5PWMsdGhpcy5hc3luY01ldGE9dm9pZCAwLHRoaXMuaXNBc3luY1BsYWNlaG9sZGVyPSExfSx2ZT17Y2hpbGQ6e2NvbmZpZ3VyYWJsZTohMH19O3ZlLmNoaWxkLmdldD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbXBvbmVudEluc3RhbmNlfSxPYmplY3QuZGVmaW5lUHJvcGVydGllcyhoZS5wcm90b3R5cGUsdmUpO3ZhciB5ZT1mdW5jdGlvbihlKXt2b2lkIDA9PT1lJiYoZT0iIik7dmFyIHQ9bmV3IGhlO3JldHVybiB0LnRleHQ9ZSx0LmlzQ29tbWVudD0hMCx0fTtmdW5jdGlvbiBnZShlKXtyZXR1cm4gbmV3IGhlKHZvaWQgMCx2b2lkIDAsdm9pZCAwLFN0cmluZyhlKSl9ZnVuY3Rpb24gd2UoZSl7dmFyIHQ9bmV3IGhlKGUudGFnLGUuZGF0YSxlLmNoaWxkcmVuJiZlLmNoaWxkcmVuLnNsaWNlKCksZS50ZXh0LGUuZWxtLGUuY29udGV4dCxlLmNvbXBvbmVudE9wdGlvbnMsZS5hc3luY0ZhY3RvcnkpO3JldHVybiB0Lm5zPWUubnMsdC5pc1N0YXRpYz1lLmlzU3RhdGljLHQua2V5PWUua2V5LHQuaXNDb21tZW50PWUuaXNDb21tZW50LHQuZm5Db250ZXh0PWUuZm5Db250ZXh0LHQuZm5PcHRpb25zPWUuZm5PcHRpb25zLHQuZm5TY29wZUlkPWUuZm5TY29wZUlkLHQuYXN5bmNNZXRhPWUuYXN5bmNNZXRhLHQuaXNDbG9uZWQ9ITAsdH12YXIgYmU9QXJyYXkucHJvdG90eXBlLGtlPU9iamVjdC5jcmVhdGUoYmUpLHhlPVsicHVzaCIsInBvcCIsInNoaWZ0IiwidW5zaGlmdCIsInNwbGljZSIsInNvcnQiLCJyZXZlcnNlIl07eGUuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIHQ9YmVbZV07SChrZSxlLChmdW5jdGlvbigpe3ZhciBuPVtdLHI9YXJndW1lbnRzLmxlbmd0aDt3aGlsZShyLS0pbltyXT1hcmd1bWVudHNbcl07dmFyIGksYT10LmFwcGx5KHRoaXMsbiksbz10aGlzLl9fb2JfXztzd2l0Y2goZSl7Y2FzZSJwdXNoIjpjYXNlInVuc2hpZnQiOmk9bjticmVhaztjYXNlInNwbGljZSI6aT1uLnNsaWNlKDIpO2JyZWFrfXJldHVybiBpJiZvLm9ic2VydmVBcnJheShpKSxvLmRlcC5ub3RpZnkoKSxhfSkpfSkpO3ZhciBDZT1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhrZSksU2U9ITA7ZnVuY3Rpb24gUGUoZSl7U2U9ZX12YXIgamU9ZnVuY3Rpb24oZSl7dGhpcy52YWx1ZT1lLHRoaXMuZGVwPW5ldyBkZSx0aGlzLnZtQ291bnQ9MCxIKGUsIl9fb2JfXyIsdGhpcyksQXJyYXkuaXNBcnJheShlKT8ocT9PZShlLGtlKTpBZShlLGtlLENlKSx0aGlzLm9ic2VydmVBcnJheShlKSk6dGhpcy53YWxrKGUpfTtmdW5jdGlvbiBPZShlLHQpe2UuX19wcm90b19fPXR9ZnVuY3Rpb24gQWUoZSx0LG4pe2Zvcih2YXIgcj0wLGk9bi5sZW5ndGg7cjxpO3IrKyl7dmFyIGE9bltyXTtIKGUsYSx0W2FdKX19ZnVuY3Rpb24gRWUoZSx0KXt2YXIgbjtpZihzKGUpJiYhKGUgaW5zdGFuY2VvZiBoZSkpcmV0dXJuIGcoZSwiX19vYl9fIikmJmUuX19vYl9fIGluc3RhbmNlb2YgamU/bj1lLl9fb2JfXzpTZSYmIWFlKCkmJihBcnJheS5pc0FycmF5KGUpfHxsKGUpKSYmT2JqZWN0LmlzRXh0ZW5zaWJsZShlKSYmIWUuX2lzVnVlJiYobj1uZXcgamUoZSkpLHQmJm4mJm4udm1Db3VudCsrLG59ZnVuY3Rpb24gVGUoZSx0LG4scixpKXt2YXIgYT1uZXcgZGUsbz1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsdCk7aWYoIW98fCExIT09by5jb25maWd1cmFibGUpe3ZhciBjPW8mJm8uZ2V0LHM9byYmby5zZXQ7YyYmIXN8fDIhPT1hcmd1bWVudHMubGVuZ3RofHwobj1lW3RdKTt2YXIgcD0haSYmRWUobik7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7dmFyIHQ9Yz9jLmNhbGwoZSk6bjtyZXR1cm4gZGUudGFyZ2V0JiYoYS5kZXBlbmQoKSxwJiYocC5kZXAuZGVwZW5kKCksQXJyYXkuaXNBcnJheSh0KSYmTWUodCkpKSx0fSxzZXQ6ZnVuY3Rpb24odCl7dmFyIHI9Yz9jLmNhbGwoZSk6bjt0PT09cnx8dCE9PXQmJnIhPT1yfHxjJiYhc3x8KHM/cy5jYWxsKGUsdCk6bj10LHA9IWkmJkVlKHQpLGEubm90aWZ5KCkpfX0pfX1mdW5jdGlvbiBEZShlLHQsbil7aWYoQXJyYXkuaXNBcnJheShlKSYmZCh0KSlyZXR1cm4gZS5sZW5ndGg9TWF0aC5tYXgoZS5sZW5ndGgsdCksZS5zcGxpY2UodCwxLG4pLG47aWYodCBpbiBlJiYhKHQgaW4gT2JqZWN0LnByb3RvdHlwZSkpcmV0dXJuIGVbdF09bixuO3ZhciByPWUuX19vYl9fO3JldHVybiBlLl9pc1Z1ZXx8ciYmci52bUNvdW50P246cj8oVGUoci52YWx1ZSx0LG4pLHIuZGVwLm5vdGlmeSgpLG4pOihlW3RdPW4sbil9ZnVuY3Rpb24gemUoZSx0KXtpZihBcnJheS5pc0FycmF5KGUpJiZkKHQpKWUuc3BsaWNlKHQsMSk7ZWxzZXt2YXIgbj1lLl9fb2JfXztlLl9pc1Z1ZXx8biYmbi52bUNvdW50fHxnKGUsdCkmJihkZWxldGUgZVt0XSxuJiZuLmRlcC5ub3RpZnkoKSl9fWZ1bmN0aW9uIE1lKGUpe2Zvcih2YXIgdD12b2lkIDAsbj0wLHI9ZS5sZW5ndGg7bjxyO24rKyl0PWVbbl0sdCYmdC5fX29iX18mJnQuX19vYl9fLmRlcC5kZXBlbmQoKSxBcnJheS5pc0FycmF5KHQpJiZNZSh0KX1qZS5wcm90b3R5cGUud2Fsaz1mdW5jdGlvbihlKXtmb3IodmFyIHQ9T2JqZWN0LmtleXMoZSksbj0wO248dC5sZW5ndGg7bisrKVRlKGUsdFtuXSl9LGplLnByb3RvdHlwZS5vYnNlcnZlQXJyYXk9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTAsbj1lLmxlbmd0aDt0PG47dCsrKUVlKGVbdF0pfTt2YXIgJGU9Vi5vcHRpb25NZXJnZVN0cmF0ZWdpZXM7ZnVuY3Rpb24gTmUoZSx0KXtpZighdClyZXR1cm4gZTtmb3IodmFyIG4scixpLGE9T2JqZWN0LmtleXModCksbz0wO288YS5sZW5ndGg7bysrKW49YVtvXSxyPWVbbl0saT10W25dLGcoZSxuKT9yIT09aSYmbChyKSYmbChpKSYmTmUocixpKTpEZShlLG4saSk7cmV0dXJuIGV9ZnVuY3Rpb24gSWUoZSx0LG4pe3JldHVybiBuP2Z1bmN0aW9uKCl7dmFyIHI9ImZ1bmN0aW9uIj09PXR5cGVvZiB0P3QuY2FsbChuLG4pOnQsaT0iZnVuY3Rpb24iPT09dHlwZW9mIGU/ZS5jYWxsKG4sbik6ZTtyZXR1cm4gcj9OZShyLGkpOml9OnQ/ZT9mdW5jdGlvbigpe3JldHVybiBOZSgiZnVuY3Rpb24iPT09dHlwZW9mIHQ/dC5jYWxsKHRoaXMsdGhpcyk6dCwiZnVuY3Rpb24iPT09dHlwZW9mIGU/ZS5jYWxsKHRoaXMsdGhpcyk6ZSl9OnQ6ZX1mdW5jdGlvbiBGZShlLHQpe3JldHVybiB0P2U/ZS5jb25jYXQodCk6QXJyYXkuaXNBcnJheSh0KT90Olt0XTplfWZ1bmN0aW9uIExlKGUsdCxuLHIpe3ZhciBpPU9iamVjdC5jcmVhdGUoZXx8bnVsbCk7cmV0dXJuIHQ/RShpLHQpOml9JGUuZGF0YT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIG4/SWUoZSx0LG4pOnQmJiJmdW5jdGlvbiIhPT10eXBlb2YgdD9lOkllKGUsdCl9LFIuZm9yRWFjaCgoZnVuY3Rpb24oZSl7JGVbZV09RmV9KSksTC5mb3JFYWNoKChmdW5jdGlvbihlKXskZVtlKyJzIl09TGV9KSksJGUud2F0Y2g9ZnVuY3Rpb24oZSx0LG4scil7aWYoZT09PW5lJiYoZT12b2lkIDApLHQ9PT1uZSYmKHQ9dm9pZCAwKSwhdClyZXR1cm4gT2JqZWN0LmNyZWF0ZShlfHxudWxsKTtpZighZSlyZXR1cm4gdDt2YXIgaT17fTtmb3IodmFyIGEgaW4gRShpLGUpLHQpe3ZhciBvPWlbYV0sYz10W2FdO28mJiFBcnJheS5pc0FycmF5KG8pJiYobz1bb10pLGlbYV09bz9vLmNvbmNhdChjKTpBcnJheS5pc0FycmF5KGMpP2M6W2NdfXJldHVybiBpfSwkZS5wcm9wcz0kZS5tZXRob2RzPSRlLmluamVjdD0kZS5jb21wdXRlZD1mdW5jdGlvbihlLHQsbixyKXtpZighZSlyZXR1cm4gdDt2YXIgaT1PYmplY3QuY3JlYXRlKG51bGwpO3JldHVybiBFKGksZSksdCYmRShpLHQpLGl9LCRlLnByb3ZpZGU9SWU7dmFyIFJlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/ZTp0fTtmdW5jdGlvbiBWZShlLHQpe3ZhciBuPWUucHJvcHM7aWYobil7dmFyIHIsaSxhLG89e307aWYoQXJyYXkuaXNBcnJheShuKSl7cj1uLmxlbmd0aDt3aGlsZShyLS0paT1uW3JdLCJzdHJpbmciPT09dHlwZW9mIGkmJihhPWsoaSksb1thXT17dHlwZTpudWxsfSl9ZWxzZSBpZihsKG4pKWZvcih2YXIgYyBpbiBuKWk9bltjXSxhPWsoYyksb1thXT1sKGkpP2k6e3R5cGU6aX07ZWxzZSAwO2UucHJvcHM9b319ZnVuY3Rpb24gVWUoZSx0KXt2YXIgbj1lLmluamVjdDtpZihuKXt2YXIgcj1lLmluamVjdD17fTtpZihBcnJheS5pc0FycmF5KG4pKWZvcih2YXIgaT0wO2k8bi5sZW5ndGg7aSsrKXJbbltpXV09e2Zyb206bltpXX07ZWxzZSBpZihsKG4pKWZvcih2YXIgYSBpbiBuKXt2YXIgbz1uW2FdO3JbYV09bChvKT9FKHtmcm9tOmF9LG8pOntmcm9tOm99fWVsc2UgMH19ZnVuY3Rpb24gSGUoZSl7dmFyIHQ9ZS5kaXJlY3RpdmVzO2lmKHQpZm9yKHZhciBuIGluIHQpe3ZhciByPXRbbl07ImZ1bmN0aW9uIj09PXR5cGVvZiByJiYodFtuXT17YmluZDpyLHVwZGF0ZTpyfSl9fWZ1bmN0aW9uIEdlKGUsdCxuKXtpZigiZnVuY3Rpb24iPT09dHlwZW9mIHQmJih0PXQub3B0aW9ucyksVmUodCxuKSxVZSh0LG4pLEhlKHQpLCF0Ll9iYXNlJiYodC5leHRlbmRzJiYoZT1HZShlLHQuZXh0ZW5kcyxuKSksdC5taXhpbnMpKWZvcih2YXIgcj0wLGk9dC5taXhpbnMubGVuZ3RoO3I8aTtyKyspZT1HZShlLHQubWl4aW5zW3JdLG4pO3ZhciBhLG89e307Zm9yKGEgaW4gZSljKGEpO2ZvcihhIGluIHQpZyhlLGEpfHxjKGEpO2Z1bmN0aW9uIGMocil7dmFyIGk9JGVbcl18fFJlO29bcl09aShlW3JdLHRbcl0sbixyKX1yZXR1cm4gb31mdW5jdGlvbiBLZShlLHQsbixyKXtpZigic3RyaW5nIj09PXR5cGVvZiBuKXt2YXIgaT1lW3RdO2lmKGcoaSxuKSlyZXR1cm4gaVtuXTt2YXIgYT1rKG4pO2lmKGcoaSxhKSlyZXR1cm4gaVthXTt2YXIgbz14KGEpO2lmKGcoaSxvKSlyZXR1cm4gaVtvXTt2YXIgYz1pW25dfHxpW2FdfHxpW29dO3JldHVybiBjfX1mdW5jdGlvbiBCZShlLHQsbixyKXt2YXIgaT10W2VdLGE9IWcobixlKSxvPW5bZV0sYz1YZShCb29sZWFuLGkudHlwZSk7aWYoYz4tMSlpZihhJiYhZyhpLCJkZWZhdWx0Iikpbz0hMTtlbHNlIGlmKCIiPT09b3x8bz09PVMoZSkpe3ZhciBzPVhlKFN0cmluZyxpLnR5cGUpOyhzPDB8fGM8cykmJihvPSEwKX1pZih2b2lkIDA9PT1vKXtvPXFlKHIsaSxlKTt2YXIgcD1TZTtQZSghMCksRWUobyksUGUocCl9cmV0dXJuIG99ZnVuY3Rpb24gcWUoZSx0LG4pe2lmKGcodCwiZGVmYXVsdCIpKXt2YXIgcj10LmRlZmF1bHQ7cmV0dXJuIGUmJmUuJG9wdGlvbnMucHJvcHNEYXRhJiZ2b2lkIDA9PT1lLiRvcHRpb25zLnByb3BzRGF0YVtuXSYmdm9pZCAwIT09ZS5fcHJvcHNbbl0/ZS5fcHJvcHNbbl06ImZ1bmN0aW9uIj09PXR5cGVvZiByJiYiRnVuY3Rpb24iIT09SmUodC50eXBlKT9yLmNhbGwoZSk6cn19ZnVuY3Rpb24gSmUoZSl7dmFyIHQ9ZSYmZS50b1N0cmluZygpLm1hdGNoKC9eXHMqZnVuY3Rpb24gKFx3KykvKTtyZXR1cm4gdD90WzFdOiIifWZ1bmN0aW9uIFdlKGUsdCl7cmV0dXJuIEplKGUpPT09SmUodCl9ZnVuY3Rpb24gWGUoZSx0KXtpZighQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gV2UodCxlKT8wOi0xO2Zvcih2YXIgbj0wLHI9dC5sZW5ndGg7bjxyO24rKylpZihXZSh0W25dLGUpKXJldHVybiBuO3JldHVybi0xfWZ1bmN0aW9uIFplKGUsdCxuKXtpZih0KXt2YXIgcj10O3doaWxlKHI9ci4kcGFyZW50KXt2YXIgaT1yLiRvcHRpb25zLmVycm9yQ2FwdHVyZWQ7aWYoaSlmb3IodmFyIGE9MDthPGkubGVuZ3RoO2ErKyl0cnl7dmFyIG89ITE9PT1pW2FdLmNhbGwocixlLHQsbik7aWYobylyZXR1cm59Y2F0Y2gob28pe1llKG9vLHIsImVycm9yQ2FwdHVyZWQgaG9vayIpfX19WWUoZSx0LG4pfWZ1bmN0aW9uIFllKGUsdCxuKXtpZihWLmVycm9ySGFuZGxlcil0cnl7cmV0dXJuIFYuZXJyb3JIYW5kbGVyLmNhbGwobnVsbCxlLHQsbil9Y2F0Y2gob28pe1FlKG9vLG51bGwsImNvbmZpZy5lcnJvckhhbmRsZXIiKX1RZShlLHQsbil9ZnVuY3Rpb24gUWUoZSx0LG4pe2lmKCFKJiYhV3x8InVuZGVmaW5lZCI9PT10eXBlb2YgY29uc29sZSl0aHJvdyBlO2NvbnNvbGUuZXJyb3IoZSl9dmFyIGV0LHR0LG50PVtdLHJ0PSExO2Z1bmN0aW9uIGl0KCl7cnQ9ITE7dmFyIGU9bnQuc2xpY2UoMCk7bnQubGVuZ3RoPTA7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0KyspZVt0XSgpfXZhciBhdD0hMTtpZigidW5kZWZpbmVkIiE9PXR5cGVvZiBzZXRJbW1lZGlhdGUmJmNlKHNldEltbWVkaWF0ZSkpdHQ9ZnVuY3Rpb24oKXtzZXRJbW1lZGlhdGUoaXQpfTtlbHNlIGlmKCJ1bmRlZmluZWQiPT09dHlwZW9mIE1lc3NhZ2VDaGFubmVsfHwhY2UoTWVzc2FnZUNoYW5uZWwpJiYiW29iamVjdCBNZXNzYWdlQ2hhbm5lbENvbnN0cnVjdG9yXSIhPT1NZXNzYWdlQ2hhbm5lbC50b1N0cmluZygpKXR0PWZ1bmN0aW9uKCl7c2V0VGltZW91dChpdCwwKX07ZWxzZXt2YXIgb3Q9bmV3IE1lc3NhZ2VDaGFubmVsLGN0PW90LnBvcnQyO290LnBvcnQxLm9ubWVzc2FnZT1pdCx0dD1mdW5jdGlvbigpe2N0LnBvc3RNZXNzYWdlKDEpfX1pZigidW5kZWZpbmVkIiE9PXR5cGVvZiBQcm9taXNlJiZjZShQcm9taXNlKSl7dmFyIHN0PVByb21pc2UucmVzb2x2ZSgpO2V0PWZ1bmN0aW9uKCl7c3QudGhlbihpdCksdGUmJnNldFRpbWVvdXQoRCl9fWVsc2UgZXQ9dHQ7ZnVuY3Rpb24gcHQoZSl7cmV0dXJuIGUuX3dpdGhUYXNrfHwoZS5fd2l0aFRhc2s9ZnVuY3Rpb24oKXthdD0hMDt0cnl7cmV0dXJuIGUuYXBwbHkobnVsbCxhcmd1bWVudHMpfWZpbmFsbHl7YXQ9ITF9fSl9ZnVuY3Rpb24gbHQoZSx0KXt2YXIgbjtpZihudC5wdXNoKChmdW5jdGlvbigpe2lmKGUpdHJ5e2UuY2FsbCh0KX1jYXRjaChvbyl7WmUob28sdCwibmV4dFRpY2siKX1lbHNlIG4mJm4odCl9KSkscnR8fChydD0hMCxhdD90dCgpOmV0KCkpLCFlJiYidW5kZWZpbmVkIiE9PXR5cGVvZiBQcm9taXNlKXJldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24oZSl7bj1lfSkpfXZhciB1dD1uZXcgc2U7ZnVuY3Rpb24gZHQoZSl7X3QoZSx1dCksdXQuY2xlYXIoKX1mdW5jdGlvbiBfdChlLHQpe3ZhciBuLHIsaT1BcnJheS5pc0FycmF5KGUpO2lmKCEoIWkmJiFzKGUpfHxPYmplY3QuaXNGcm96ZW4oZSl8fGUgaW5zdGFuY2VvZiBoZSkpe2lmKGUuX19vYl9fKXt2YXIgYT1lLl9fb2JfXy5kZXAuaWQ7aWYodC5oYXMoYSkpcmV0dXJuO3QuYWRkKGEpfWlmKGkpe249ZS5sZW5ndGg7d2hpbGUobi0tKV90KGVbbl0sdCl9ZWxzZXtyPU9iamVjdC5rZXlzKGUpLG49ci5sZW5ndGg7d2hpbGUobi0tKV90KGVbcltuXV0sdCl9fX12YXIgbXQsZnQ9dygoZnVuY3Rpb24oZSl7dmFyIHQ9IiYiPT09ZS5jaGFyQXQoMCk7ZT10P2Uuc2xpY2UoMSk6ZTt2YXIgbj0ifiI9PT1lLmNoYXJBdCgwKTtlPW4/ZS5zbGljZSgxKTplO3ZhciByPSIhIj09PWUuY2hhckF0KDApO3JldHVybiBlPXI/ZS5zbGljZSgxKTplLHtuYW1lOmUsb25jZTpuLGNhcHR1cmU6cixwYXNzaXZlOnR9fSkpO2Z1bmN0aW9uIGh0KGUpe2Z1bmN0aW9uIHQoKXt2YXIgZT1hcmd1bWVudHMsbj10LmZucztpZighQXJyYXkuaXNBcnJheShuKSlyZXR1cm4gbi5hcHBseShudWxsLGFyZ3VtZW50cyk7Zm9yKHZhciByPW4uc2xpY2UoKSxpPTA7aTxyLmxlbmd0aDtpKyspcltpXS5hcHBseShudWxsLGUpfXJldHVybiB0LmZucz1lLHR9ZnVuY3Rpb24gdnQoZSx0LG4saSxvLGMpe3ZhciBzLHAsbCx1O2ZvcihzIGluIGUpcD1lW3NdLGw9dFtzXSx1PWZ0KHMpLHIocCl8fChyKGwpPyhyKHAuZm5zKSYmKHA9ZVtzXT1odChwKSksYSh1Lm9uY2UpJiYocD1lW3NdPW8odS5uYW1lLHAsdS5jYXB0dXJlKSksbih1Lm5hbWUscCx1LmNhcHR1cmUsdS5wYXNzaXZlLHUucGFyYW1zKSk6cCE9PWwmJihsLmZucz1wLGVbc109bCkpO2ZvcihzIGluIHQpcihlW3NdKSYmKHU9ZnQocyksaSh1Lm5hbWUsdFtzXSx1LmNhcHR1cmUpKX1mdW5jdGlvbiB5dChlLHQsbil7dmFyIG87ZSBpbnN0YW5jZW9mIGhlJiYoZT1lLmRhdGEuaG9va3x8KGUuZGF0YS5ob29rPXt9KSk7dmFyIGM9ZVt0XTtmdW5jdGlvbiBzKCl7bi5hcHBseSh0aGlzLGFyZ3VtZW50cyksdihvLmZucyxzKX1yKGMpP289aHQoW3NdKTppKGMuZm5zKSYmYShjLm1lcmdlZCk/KG89YyxvLmZucy5wdXNoKHMpKTpvPWh0KFtjLHNdKSxvLm1lcmdlZD0hMCxlW3RdPW99ZnVuY3Rpb24gZ3QoZSx0LG4pe3ZhciBhPXQub3B0aW9ucy5wcm9wcztpZighcihhKSl7dmFyIG89e30sYz1lLmF0dHJzLHM9ZS5wcm9wcztpZihpKGMpfHxpKHMpKWZvcih2YXIgcCBpbiBhKXt2YXIgbD1TKHApO3d0KG8scyxwLGwsITApfHx3dChvLGMscCxsLCExKX1yZXR1cm4gb319ZnVuY3Rpb24gd3QoZSx0LG4scixhKXtpZihpKHQpKXtpZihnKHQsbikpcmV0dXJuIGVbbl09dFtuXSxhfHxkZWxldGUgdFtuXSwhMDtpZihnKHQscikpcmV0dXJuIGVbbl09dFtyXSxhfHxkZWxldGUgdFtyXSwhMH1yZXR1cm4hMX1mdW5jdGlvbiBidChlKXtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKylpZihBcnJheS5pc0FycmF5KGVbdF0pKXJldHVybiBBcnJheS5wcm90b3R5cGUuY29uY2F0LmFwcGx5KFtdLGUpO3JldHVybiBlfWZ1bmN0aW9uIGt0KGUpe3JldHVybiBjKGUpP1tnZShlKV06QXJyYXkuaXNBcnJheShlKT9DdChlKTp2b2lkIDB9ZnVuY3Rpb24geHQoZSl7cmV0dXJuIGkoZSkmJmkoZS50ZXh0KSYmbyhlLmlzQ29tbWVudCl9ZnVuY3Rpb24gQ3QoZSx0KXt2YXIgbixvLHMscCxsPVtdO2ZvcihuPTA7bjxlLmxlbmd0aDtuKyspbz1lW25dLHIobyl8fCJib29sZWFuIj09PXR5cGVvZiBvfHwocz1sLmxlbmd0aC0xLHA9bFtzXSxBcnJheS5pc0FycmF5KG8pP28ubGVuZ3RoPjAmJihvPUN0KG8sKHR8fCIiKSsiXyIrbikseHQob1swXSkmJnh0KHApJiYobFtzXT1nZShwLnRleHQrb1swXS50ZXh0KSxvLnNoaWZ0KCkpLGwucHVzaC5hcHBseShsLG8pKTpjKG8pP3h0KHApP2xbc109Z2UocC50ZXh0K28pOiIiIT09byYmbC5wdXNoKGdlKG8pKTp4dChvKSYmeHQocCk/bFtzXT1nZShwLnRleHQrby50ZXh0KTooYShlLl9pc1ZMaXN0KSYmaShvLnRhZykmJnIoby5rZXkpJiZpKHQpJiYoby5rZXk9Il9fdmxpc3QiK3QrIl8iK24rIl9fIiksbC5wdXNoKG8pKSk7cmV0dXJuIGx9ZnVuY3Rpb24gU3QoZSx0KXtyZXR1cm4oZS5fX2VzTW9kdWxlfHxwZSYmIk1vZHVsZSI9PT1lW1N5bWJvbC50b1N0cmluZ1RhZ10pJiYoZT1lLmRlZmF1bHQpLHMoZSk/dC5leHRlbmQoZSk6ZX1mdW5jdGlvbiBQdChlLHQsbixyLGkpe3ZhciBhPXllKCk7cmV0dXJuIGEuYXN5bmNGYWN0b3J5PWUsYS5hc3luY01ldGE9e2RhdGE6dCxjb250ZXh0Om4sY2hpbGRyZW46cix0YWc6aX0sYX1mdW5jdGlvbiBqdChlLHQsbil7aWYoYShlLmVycm9yKSYmaShlLmVycm9yQ29tcCkpcmV0dXJuIGUuZXJyb3JDb21wO2lmKGkoZS5yZXNvbHZlZCkpcmV0dXJuIGUucmVzb2x2ZWQ7aWYoYShlLmxvYWRpbmcpJiZpKGUubG9hZGluZ0NvbXApKXJldHVybiBlLmxvYWRpbmdDb21wO2lmKCFpKGUuY29udGV4dHMpKXt2YXIgbz1lLmNvbnRleHRzPVtuXSxjPSEwLHA9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTAsbj1vLmxlbmd0aDt0PG47dCsrKW9bdF0uJGZvcmNlVXBkYXRlKCk7ZSYmKG8ubGVuZ3RoPTApfSxsPUkoKGZ1bmN0aW9uKG4pe2UucmVzb2x2ZWQ9U3Qobix0KSxjfHxwKCEwKX0pKSx1PUkoKGZ1bmN0aW9uKHQpe2koZS5lcnJvckNvbXApJiYoZS5lcnJvcj0hMCxwKCEwKSl9KSksZD1lKGwsdSk7cmV0dXJuIHMoZCkmJigiZnVuY3Rpb24iPT09dHlwZW9mIGQudGhlbj9yKGUucmVzb2x2ZWQpJiZkLnRoZW4obCx1KTppKGQuY29tcG9uZW50KSYmImZ1bmN0aW9uIj09PXR5cGVvZiBkLmNvbXBvbmVudC50aGVuJiYoZC5jb21wb25lbnQudGhlbihsLHUpLGkoZC5lcnJvcikmJihlLmVycm9yQ29tcD1TdChkLmVycm9yLHQpKSxpKGQubG9hZGluZykmJihlLmxvYWRpbmdDb21wPVN0KGQubG9hZGluZyx0KSwwPT09ZC5kZWxheT9lLmxvYWRpbmc9ITA6c2V0VGltZW91dCgoZnVuY3Rpb24oKXtyKGUucmVzb2x2ZWQpJiZyKGUuZXJyb3IpJiYoZS5sb2FkaW5nPSEwLHAoITEpKX0pLGQuZGVsYXl8fDIwMCkpLGkoZC50aW1lb3V0KSYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXtyKGUucmVzb2x2ZWQpJiZ1KG51bGwpfSksZC50aW1lb3V0KSkpLGM9ITEsZS5sb2FkaW5nP2UubG9hZGluZ0NvbXA6ZS5yZXNvbHZlZH1lLmNvbnRleHRzLnB1c2gobil9ZnVuY3Rpb24gT3QoZSl7cmV0dXJuIGUuaXNDb21tZW50JiZlLmFzeW5jRmFjdG9yeX1mdW5jdGlvbiBBdChlKXtpZihBcnJheS5pc0FycmF5KGUpKWZvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgbj1lW3RdO2lmKGkobikmJihpKG4uY29tcG9uZW50T3B0aW9ucyl8fE90KG4pKSlyZXR1cm4gbn19ZnVuY3Rpb24gRXQoZSl7ZS5fZXZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCksZS5faGFzSG9va0V2ZW50PSExO3ZhciB0PWUuJG9wdGlvbnMuX3BhcmVudExpc3RlbmVyczt0JiZNdChlLHQpfWZ1bmN0aW9uIFR0KGUsdCl7bXQuJG9uKGUsdCl9ZnVuY3Rpb24gRHQoZSx0KXttdC4kb2ZmKGUsdCl9ZnVuY3Rpb24genQoZSx0KXt2YXIgbj1tdDtyZXR1cm4gZnVuY3Rpb24gcigpe3ZhciBpPXQuYXBwbHkobnVsbCxhcmd1bWVudHMpO251bGwhPT1pJiZuLiRvZmYoZSxyKX19ZnVuY3Rpb24gTXQoZSx0LG4pe210PWUsdnQodCxufHx7fSxUdCxEdCx6dCxlKSxtdD12b2lkIDB9ZnVuY3Rpb24gJHQoZSl7dmFyIHQ9L15ob29rOi87ZS5wcm90b3R5cGUuJG9uPWZ1bmN0aW9uKGUsbil7dmFyIHI9dGhpcztpZihBcnJheS5pc0FycmF5KGUpKWZvcih2YXIgaT0wLGE9ZS5sZW5ndGg7aTxhO2krKylyLiRvbihlW2ldLG4pO2Vsc2Uoci5fZXZlbnRzW2VdfHwoci5fZXZlbnRzW2VdPVtdKSkucHVzaChuKSx0LnRlc3QoZSkmJihyLl9oYXNIb29rRXZlbnQ9ITApO3JldHVybiByfSxlLnByb3RvdHlwZS4kb25jZT1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXM7ZnVuY3Rpb24gcigpe24uJG9mZihlLHIpLHQuYXBwbHkobixhcmd1bWVudHMpfXJldHVybiByLmZuPXQsbi4kb24oZSxyKSxufSxlLnByb3RvdHlwZS4kb2ZmPWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztpZighYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gbi5fZXZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCksbjtpZihBcnJheS5pc0FycmF5KGUpKXtmb3IodmFyIHI9MCxpPWUubGVuZ3RoO3I8aTtyKyspbi4kb2ZmKGVbcl0sdCk7cmV0dXJuIG59dmFyIGE9bi5fZXZlbnRzW2VdO2lmKCFhKXJldHVybiBuO2lmKCF0KXJldHVybiBuLl9ldmVudHNbZV09bnVsbCxuO2lmKHQpe3ZhciBvLGM9YS5sZW5ndGg7d2hpbGUoYy0tKWlmKG89YVtjXSxvPT09dHx8by5mbj09PXQpe2Euc3BsaWNlKGMsMSk7YnJlYWt9fXJldHVybiBufSxlLnByb3RvdHlwZS4kZW1pdD1mdW5jdGlvbihlKXt2YXIgdD10aGlzLG49dC5fZXZlbnRzW2VdO2lmKG4pe249bi5sZW5ndGg+MT9BKG4pOm47Zm9yKHZhciByPUEoYXJndW1lbnRzLDEpLGk9MCxhPW4ubGVuZ3RoO2k8YTtpKyspdHJ5e25baV0uYXBwbHkodCxyKX1jYXRjaChvbyl7WmUob28sdCwnZXZlbnQgaGFuZGxlciBmb3IgIicrZSsnIicpfX1yZXR1cm4gdH19ZnVuY3Rpb24gTnQoZSx0KXt2YXIgbj17fTtpZighZSlyZXR1cm4gbjtmb3IodmFyIHI9MCxpPWUubGVuZ3RoO3I8aTtyKyspe3ZhciBhPWVbcl0sbz1hLmRhdGE7aWYobyYmby5hdHRycyYmby5hdHRycy5zbG90JiZkZWxldGUgby5hdHRycy5zbG90LGEuY29udGV4dCE9PXQmJmEuZm5Db250ZXh0IT09dHx8IW98fG51bGw9PW8uc2xvdCkobi5kZWZhdWx0fHwobi5kZWZhdWx0PVtdKSkucHVzaChhKTtlbHNle3ZhciBjPW8uc2xvdCxzPW5bY118fChuW2NdPVtdKTsidGVtcGxhdGUiPT09YS50YWc/cy5wdXNoLmFwcGx5KHMsYS5jaGlsZHJlbnx8W10pOnMucHVzaChhKX19Zm9yKHZhciBwIGluIG4pbltwXS5ldmVyeShJdCkmJmRlbGV0ZSBuW3BdO3JldHVybiBufWZ1bmN0aW9uIEl0KGUpe3JldHVybiBlLmlzQ29tbWVudCYmIWUuYXN5bmNGYWN0b3J5fHwiICI9PT1lLnRleHR9ZnVuY3Rpb24gRnQoZSx0KXt0PXR8fHt9O2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKUFycmF5LmlzQXJyYXkoZVtuXSk/RnQoZVtuXSx0KTp0W2Vbbl0ua2V5XT1lW25dLmZuO3JldHVybiB0fXZhciBMdD1udWxsO2Z1bmN0aW9uIFJ0KGUpe3ZhciB0PUx0O3JldHVybiBMdD1lLGZ1bmN0aW9uKCl7THQ9dH19ZnVuY3Rpb24gVnQoZSl7dmFyIHQ9ZS4kb3B0aW9ucyxuPXQucGFyZW50O2lmKG4mJiF0LmFic3RyYWN0KXt3aGlsZShuLiRvcHRpb25zLmFic3RyYWN0JiZuLiRwYXJlbnQpbj1uLiRwYXJlbnQ7bi4kY2hpbGRyZW4ucHVzaChlKX1lLiRwYXJlbnQ9bixlLiRyb290PW4/bi4kcm9vdDplLGUuJGNoaWxkcmVuPVtdLGUuJHJlZnM9e30sZS5fd2F0Y2hlcj1udWxsLGUuX2luYWN0aXZlPW51bGwsZS5fZGlyZWN0SW5hY3RpdmU9ITEsZS5faXNNb3VudGVkPSExLGUuX2lzRGVzdHJveWVkPSExLGUuX2lzQmVpbmdEZXN0cm95ZWQ9ITF9ZnVuY3Rpb24gVXQoZSl7ZS5wcm90b3R5cGUuX3VwZGF0ZT1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMscj1uLiRlbCxpPW4uX3Zub2RlLGE9UnQobik7bi5fdm5vZGU9ZSxuLiRlbD1pP24uX19wYXRjaF9fKGksZSk6bi5fX3BhdGNoX18obi4kZWwsZSx0LCExKSxhKCksciYmKHIuX192dWVfXz1udWxsKSxuLiRlbCYmKG4uJGVsLl9fdnVlX189biksbi4kdm5vZGUmJm4uJHBhcmVudCYmbi4kdm5vZGU9PT1uLiRwYXJlbnQuX3Zub2RlJiYobi4kcGFyZW50LiRlbD1uLiRlbCl9LGUucHJvdG90eXBlLiRmb3JjZVVwZGF0ZT1mdW5jdGlvbigpe3ZhciBlPXRoaXM7ZS5fd2F0Y2hlciYmZS5fd2F0Y2hlci51cGRhdGUoKX0sZS5wcm90b3R5cGUuJGRlc3Ryb3k9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2lmKCFlLl9pc0JlaW5nRGVzdHJveWVkKXtKdChlLCJiZWZvcmVEZXN0cm95IiksZS5faXNCZWluZ0Rlc3Ryb3llZD0hMDt2YXIgdD1lLiRwYXJlbnQ7IXR8fHQuX2lzQmVpbmdEZXN0cm95ZWR8fGUuJG9wdGlvbnMuYWJzdHJhY3R8fHYodC4kY2hpbGRyZW4sZSksZS5fd2F0Y2hlciYmZS5fd2F0Y2hlci50ZWFyZG93bigpO3ZhciBuPWUuX3dhdGNoZXJzLmxlbmd0aDt3aGlsZShuLS0pZS5fd2F0Y2hlcnNbbl0udGVhcmRvd24oKTtlLl9kYXRhLl9fb2JfXyYmZS5fZGF0YS5fX29iX18udm1Db3VudC0tLGUuX2lzRGVzdHJveWVkPSEwLGUuX19wYXRjaF9fKGUuX3Zub2RlLG51bGwpLEp0KGUsImRlc3Ryb3llZCIpLGUuJG9mZigpLGUuJGVsJiYoZS4kZWwuX192dWVfXz1udWxsKSxlLiR2bm9kZSYmKGUuJHZub2RlLnBhcmVudD1udWxsKX19fWZ1bmN0aW9uIEh0KGUsdCxuKXt2YXIgcjtyZXR1cm4gZS4kZWw9dCxlLiRvcHRpb25zLnJlbmRlcnx8KGUuJG9wdGlvbnMucmVuZGVyPXllKSxKdChlLCJiZWZvcmVNb3VudCIpLHI9ZnVuY3Rpb24oKXtlLl91cGRhdGUoZS5fcmVuZGVyKCksbil9LG5ldyBwbihlLHIsRCx7YmVmb3JlOmZ1bmN0aW9uKCl7ZS5faXNNb3VudGVkJiYhZS5faXNEZXN0cm95ZWQmJkp0KGUsImJlZm9yZVVwZGF0ZSIpfX0sITApLG49ITEsbnVsbD09ZS4kdm5vZGUmJihlLl9pc01vdW50ZWQ9ITAsSnQoZSwibW91bnRlZCIpKSxlfWZ1bmN0aW9uIEd0KGUsdCxyLGksYSl7dmFyIG89ISEoYXx8ZS4kb3B0aW9ucy5fcmVuZGVyQ2hpbGRyZW58fGkuZGF0YS5zY29wZWRTbG90c3x8ZS4kc2NvcGVkU2xvdHMhPT1uKTtpZihlLiRvcHRpb25zLl9wYXJlbnRWbm9kZT1pLGUuJHZub2RlPWksZS5fdm5vZGUmJihlLl92bm9kZS5wYXJlbnQ9aSksZS4kb3B0aW9ucy5fcmVuZGVyQ2hpbGRyZW49YSxlLiRhdHRycz1pLmRhdGEuYXR0cnN8fG4sZS4kbGlzdGVuZXJzPXJ8fG4sdCYmZS4kb3B0aW9ucy5wcm9wcyl7UGUoITEpO2Zvcih2YXIgYz1lLl9wcm9wcyxzPWUuJG9wdGlvbnMuX3Byb3BLZXlzfHxbXSxwPTA7cDxzLmxlbmd0aDtwKyspe3ZhciBsPXNbcF0sdT1lLiRvcHRpb25zLnByb3BzO2NbbF09QmUobCx1LHQsZSl9UGUoITApLGUuJG9wdGlvbnMucHJvcHNEYXRhPXR9cj1yfHxuO3ZhciBkPWUuJG9wdGlvbnMuX3BhcmVudExpc3RlbmVycztlLiRvcHRpb25zLl9wYXJlbnRMaXN0ZW5lcnM9cixNdChlLHIsZCksbyYmKGUuJHNsb3RzPU50KGEsaS5jb250ZXh0KSxlLiRmb3JjZVVwZGF0ZSgpKX1mdW5jdGlvbiBLdChlKXt3aGlsZShlJiYoZT1lLiRwYXJlbnQpKWlmKGUuX2luYWN0aXZlKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEJ0KGUsdCl7aWYodCl7aWYoZS5fZGlyZWN0SW5hY3RpdmU9ITEsS3QoZSkpcmV0dXJufWVsc2UgaWYoZS5fZGlyZWN0SW5hY3RpdmUpcmV0dXJuO2lmKGUuX2luYWN0aXZlfHxudWxsPT09ZS5faW5hY3RpdmUpe2UuX2luYWN0aXZlPSExO2Zvcih2YXIgbj0wO248ZS4kY2hpbGRyZW4ubGVuZ3RoO24rKylCdChlLiRjaGlsZHJlbltuXSk7SnQoZSwiYWN0aXZhdGVkIil9fWZ1bmN0aW9uIHF0KGUsdCl7aWYoKCF0fHwoZS5fZGlyZWN0SW5hY3RpdmU9ITAsIUt0KGUpKSkmJiFlLl9pbmFjdGl2ZSl7ZS5faW5hY3RpdmU9ITA7Zm9yKHZhciBuPTA7bjxlLiRjaGlsZHJlbi5sZW5ndGg7bisrKXF0KGUuJGNoaWxkcmVuW25dKTtKdChlLCJkZWFjdGl2YXRlZCIpfX1mdW5jdGlvbiBKdChlLHQpe21lKCk7dmFyIG49ZS4kb3B0aW9uc1t0XTtpZihuKWZvcih2YXIgcj0wLGk9bi5sZW5ndGg7cjxpO3IrKyl0cnl7bltyXS5jYWxsKGUpfWNhdGNoKG9vKXtaZShvbyxlLHQrIiBob29rIil9ZS5faGFzSG9va0V2ZW50JiZlLiRlbWl0KCJob29rOiIrdCksZmUoKX12YXIgV3Q9W10sWHQ9W10sWnQ9e30sWXQ9ITEsUXQ9ITEsZW49MDtmdW5jdGlvbiB0bigpe2VuPVd0Lmxlbmd0aD1YdC5sZW5ndGg9MCxadD17fSxZdD1RdD0hMX1mdW5jdGlvbiBubigpe3ZhciBlLHQ7Zm9yKFF0PSEwLFd0LnNvcnQoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUuaWQtdC5pZH0pKSxlbj0wO2VuPFd0Lmxlbmd0aDtlbisrKWU9V3RbZW5dLGUuYmVmb3JlJiZlLmJlZm9yZSgpLHQ9ZS5pZCxadFt0XT1udWxsLGUucnVuKCk7dmFyIG49WHQuc2xpY2UoKSxyPVd0LnNsaWNlKCk7dG4oKSxvbihuKSxybihyKSxvZSYmVi5kZXZ0b29scyYmb2UuZW1pdCgiZmx1c2giKX1mdW5jdGlvbiBybihlKXt2YXIgdD1lLmxlbmd0aDt3aGlsZSh0LS0pe3ZhciBuPWVbdF0scj1uLnZtO3IuX3dhdGNoZXI9PT1uJiZyLl9pc01vdW50ZWQmJiFyLl9pc0Rlc3Ryb3llZCYmSnQociwidXBkYXRlZCIpfX1mdW5jdGlvbiBhbihlKXtlLl9pbmFjdGl2ZT0hMSxYdC5wdXNoKGUpfWZ1bmN0aW9uIG9uKGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0uX2luYWN0aXZlPSEwLEJ0KGVbdF0sITApfWZ1bmN0aW9uIGNuKGUpe3ZhciB0PWUuaWQ7aWYobnVsbD09WnRbdF0pe2lmKFp0W3RdPSEwLFF0KXt2YXIgbj1XdC5sZW5ndGgtMTt3aGlsZShuPmVuJiZXdFtuXS5pZD5lLmlkKW4tLTtXdC5zcGxpY2UobisxLDAsZSl9ZWxzZSBXdC5wdXNoKGUpO1l0fHwoWXQ9ITAsbHQobm4pKX19dmFyIHNuPTAscG49ZnVuY3Rpb24oZSx0LG4scixpKXt0aGlzLnZtPWUsaSYmKGUuX3dhdGNoZXI9dGhpcyksZS5fd2F0Y2hlcnMucHVzaCh0aGlzKSxyPyh0aGlzLmRlZXA9ISFyLmRlZXAsdGhpcy51c2VyPSEhci51c2VyLHRoaXMubGF6eT0hIXIubGF6eSx0aGlzLnN5bmM9ISFyLnN5bmMsdGhpcy5iZWZvcmU9ci5iZWZvcmUpOnRoaXMuZGVlcD10aGlzLnVzZXI9dGhpcy5sYXp5PXRoaXMuc3luYz0hMSx0aGlzLmNiPW4sdGhpcy5pZD0rK3NuLHRoaXMuYWN0aXZlPSEwLHRoaXMuZGlydHk9dGhpcy5sYXp5LHRoaXMuZGVwcz1bXSx0aGlzLm5ld0RlcHM9W10sdGhpcy5kZXBJZHM9bmV3IHNlLHRoaXMubmV3RGVwSWRzPW5ldyBzZSx0aGlzLmV4cHJlc3Npb249IiIsImZ1bmN0aW9uIj09PXR5cGVvZiB0P3RoaXMuZ2V0dGVyPXQ6KHRoaXMuZ2V0dGVyPUsodCksdGhpcy5nZXR0ZXJ8fCh0aGlzLmdldHRlcj1EKSksdGhpcy52YWx1ZT10aGlzLmxhenk/dm9pZCAwOnRoaXMuZ2V0KCl9O3BuLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXt2YXIgZTttZSh0aGlzKTt2YXIgdD10aGlzLnZtO3RyeXtlPXRoaXMuZ2V0dGVyLmNhbGwodCx0KX1jYXRjaChvbyl7aWYoIXRoaXMudXNlcil0aHJvdyBvbztaZShvbyx0LCdnZXR0ZXIgZm9yIHdhdGNoZXIgIicrdGhpcy5leHByZXNzaW9uKyciJyl9ZmluYWxseXt0aGlzLmRlZXAmJmR0KGUpLGZlKCksdGhpcy5jbGVhbnVwRGVwcygpfXJldHVybiBlfSxwbi5wcm90b3R5cGUuYWRkRGVwPWZ1bmN0aW9uKGUpe3ZhciB0PWUuaWQ7dGhpcy5uZXdEZXBJZHMuaGFzKHQpfHwodGhpcy5uZXdEZXBJZHMuYWRkKHQpLHRoaXMubmV3RGVwcy5wdXNoKGUpLHRoaXMuZGVwSWRzLmhhcyh0KXx8ZS5hZGRTdWIodGhpcykpfSxwbi5wcm90b3R5cGUuY2xlYW51cERlcHM9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLmRlcHMubGVuZ3RoO3doaWxlKGUtLSl7dmFyIHQ9dGhpcy5kZXBzW2VdO3RoaXMubmV3RGVwSWRzLmhhcyh0LmlkKXx8dC5yZW1vdmVTdWIodGhpcyl9dmFyIG49dGhpcy5kZXBJZHM7dGhpcy5kZXBJZHM9dGhpcy5uZXdEZXBJZHMsdGhpcy5uZXdEZXBJZHM9bix0aGlzLm5ld0RlcElkcy5jbGVhcigpLG49dGhpcy5kZXBzLHRoaXMuZGVwcz10aGlzLm5ld0RlcHMsdGhpcy5uZXdEZXBzPW4sdGhpcy5uZXdEZXBzLmxlbmd0aD0wfSxwbi5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKCl7dGhpcy5sYXp5P3RoaXMuZGlydHk9ITA6dGhpcy5zeW5jP3RoaXMucnVuKCk6Y24odGhpcyl9LHBuLnByb3RvdHlwZS5ydW49ZnVuY3Rpb24oKXtpZih0aGlzLmFjdGl2ZSl7dmFyIGU9dGhpcy5nZXQoKTtpZihlIT09dGhpcy52YWx1ZXx8cyhlKXx8dGhpcy5kZWVwKXt2YXIgdD10aGlzLnZhbHVlO2lmKHRoaXMudmFsdWU9ZSx0aGlzLnVzZXIpdHJ5e3RoaXMuY2IuY2FsbCh0aGlzLnZtLGUsdCl9Y2F0Y2gob28pe1plKG9vLHRoaXMudm0sJ2NhbGxiYWNrIGZvciB3YXRjaGVyICInK3RoaXMuZXhwcmVzc2lvbisnIicpfWVsc2UgdGhpcy5jYi5jYWxsKHRoaXMudm0sZSx0KX19fSxwbi5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXRoaXMuZ2V0KCksdGhpcy5kaXJ0eT0hMX0scG4ucHJvdG90eXBlLmRlcGVuZD1mdW5jdGlvbigpe3ZhciBlPXRoaXMuZGVwcy5sZW5ndGg7d2hpbGUoZS0tKXRoaXMuZGVwc1tlXS5kZXBlbmQoKX0scG4ucHJvdG90eXBlLnRlYXJkb3duPWZ1bmN0aW9uKCl7aWYodGhpcy5hY3RpdmUpe3RoaXMudm0uX2lzQmVpbmdEZXN0cm95ZWR8fHYodGhpcy52bS5fd2F0Y2hlcnMsdGhpcyk7dmFyIGU9dGhpcy5kZXBzLmxlbmd0aDt3aGlsZShlLS0pdGhpcy5kZXBzW2VdLnJlbW92ZVN1Yih0aGlzKTt0aGlzLmFjdGl2ZT0hMX19O3ZhciBsbj17ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsZ2V0OkQsc2V0OkR9O2Z1bmN0aW9uIHVuKGUsdCxuKXtsbi5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc1t0XVtuXX0sbG4uc2V0PWZ1bmN0aW9uKGUpe3RoaXNbdF1bbl09ZX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsbixsbil9ZnVuY3Rpb24gZG4oZSl7ZS5fd2F0Y2hlcnM9W107dmFyIHQ9ZS4kb3B0aW9uczt0LnByb3BzJiZfbihlLHQucHJvcHMpLHQubWV0aG9kcyYmYm4oZSx0Lm1ldGhvZHMpLHQuZGF0YT9tbihlKTpFZShlLl9kYXRhPXt9LCEwKSx0LmNvbXB1dGVkJiZ2bihlLHQuY29tcHV0ZWQpLHQud2F0Y2gmJnQud2F0Y2ghPT1uZSYma24oZSx0LndhdGNoKX1mdW5jdGlvbiBfbihlLHQpe3ZhciBuPWUuJG9wdGlvbnMucHJvcHNEYXRhfHx7fSxyPWUuX3Byb3BzPXt9LGk9ZS4kb3B0aW9ucy5fcHJvcEtleXM9W10sYT0hZS4kcGFyZW50O2F8fFBlKCExKTt2YXIgbz1mdW5jdGlvbihhKXtpLnB1c2goYSk7dmFyIG89QmUoYSx0LG4sZSk7VGUocixhLG8pLGEgaW4gZXx8dW4oZSwiX3Byb3BzIixhKX07Zm9yKHZhciBjIGluIHQpbyhjKTtQZSghMCl9ZnVuY3Rpb24gbW4oZSl7dmFyIHQ9ZS4kb3B0aW9ucy5kYXRhO3Q9ZS5fZGF0YT0iZnVuY3Rpb24iPT09dHlwZW9mIHQ/Zm4odCxlKTp0fHx7fSxsKHQpfHwodD17fSk7dmFyIG49T2JqZWN0LmtleXModCkscj1lLiRvcHRpb25zLnByb3BzLGk9KGUuJG9wdGlvbnMubWV0aG9kcyxuLmxlbmd0aCk7d2hpbGUoaS0tKXt2YXIgYT1uW2ldOzAsciYmZyhyLGEpfHxVKGEpfHx1bihlLCJfZGF0YSIsYSl9RWUodCwhMCl9ZnVuY3Rpb24gZm4oZSx0KXttZSgpO3RyeXtyZXR1cm4gZS5jYWxsKHQsdCl9Y2F0Y2gob28pe3JldHVybiBaZShvbyx0LCJkYXRhKCkiKSx7fX1maW5hbGx5e2ZlKCl9fXZhciBobj17bGF6eTohMH07ZnVuY3Rpb24gdm4oZSx0KXt2YXIgbj1lLl9jb21wdXRlZFdhdGNoZXJzPU9iamVjdC5jcmVhdGUobnVsbCkscj1hZSgpO2Zvcih2YXIgaSBpbiB0KXt2YXIgYT10W2ldLG89ImZ1bmN0aW9uIj09PXR5cGVvZiBhP2E6YS5nZXQ7MCxyfHwobltpXT1uZXcgcG4oZSxvfHxELEQsaG4pKSxpIGluIGV8fHluKGUsaSxhKX19ZnVuY3Rpb24geW4oZSx0LG4pe3ZhciByPSFhZSgpOyJmdW5jdGlvbiI9PT10eXBlb2Ygbj8obG4uZ2V0PXI/Z24odCk6d24obiksbG4uc2V0PUQpOihsbi5nZXQ9bi5nZXQ/ciYmITEhPT1uLmNhY2hlP2duKHQpOnduKG4uZ2V0KTpELGxuLnNldD1uLnNldHx8RCksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCxsbil9ZnVuY3Rpb24gZ24oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fY29tcHV0ZWRXYXRjaGVycyYmdGhpcy5fY29tcHV0ZWRXYXRjaGVyc1tlXTtpZih0KXJldHVybiB0LmRpcnR5JiZ0LmV2YWx1YXRlKCksZGUudGFyZ2V0JiZ0LmRlcGVuZCgpLHQudmFsdWV9fWZ1bmN0aW9uIHduKGUpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBlLmNhbGwodGhpcyx0aGlzKX19ZnVuY3Rpb24gYm4oZSx0KXtlLiRvcHRpb25zLnByb3BzO2Zvcih2YXIgbiBpbiB0KWVbbl09ImZ1bmN0aW9uIiE9PXR5cGVvZiB0W25dP0Q6Tyh0W25dLGUpfWZ1bmN0aW9uIGtuKGUsdCl7Zm9yKHZhciBuIGluIHQpe3ZhciByPXRbbl07aWYoQXJyYXkuaXNBcnJheShyKSlmb3IodmFyIGk9MDtpPHIubGVuZ3RoO2krKyl4bihlLG4scltpXSk7ZWxzZSB4bihlLG4scil9fWZ1bmN0aW9uIHhuKGUsdCxuLHIpe3JldHVybiBsKG4pJiYocj1uLG49bi5oYW5kbGVyKSwic3RyaW5nIj09PXR5cGVvZiBuJiYobj1lW25dKSxlLiR3YXRjaCh0LG4scil9ZnVuY3Rpb24gQ24oZSl7dmFyIHQ9e2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kYXRhfX0sbj17Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3Byb3BzfX07T2JqZWN0LmRlZmluZVByb3BlcnR5KGUucHJvdG90eXBlLCIkZGF0YSIsdCksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUucHJvdG90eXBlLCIkcHJvcHMiLG4pLGUucHJvdG90eXBlLiRzZXQ9RGUsZS5wcm90b3R5cGUuJGRlbGV0ZT16ZSxlLnByb3RvdHlwZS4kd2F0Y2g9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXRoaXM7aWYobCh0KSlyZXR1cm4geG4ocixlLHQsbik7bj1ufHx7fSxuLnVzZXI9ITA7dmFyIGk9bmV3IHBuKHIsZSx0LG4pO2lmKG4uaW1tZWRpYXRlKXRyeXt0LmNhbGwocixpLnZhbHVlKX1jYXRjaChhKXtaZShhLHIsJ2NhbGxiYWNrIGZvciBpbW1lZGlhdGUgd2F0Y2hlciAiJytpLmV4cHJlc3Npb24rJyInKX1yZXR1cm4gZnVuY3Rpb24oKXtpLnRlYXJkb3duKCl9fX1mdW5jdGlvbiBTbihlKXt2YXIgdD1lLiRvcHRpb25zLnByb3ZpZGU7dCYmKGUuX3Byb3ZpZGVkPSJmdW5jdGlvbiI9PT10eXBlb2YgdD90LmNhbGwoZSk6dCl9ZnVuY3Rpb24gUG4oZSl7dmFyIHQ9am4oZS4kb3B0aW9ucy5pbmplY3QsZSk7dCYmKFBlKCExKSxPYmplY3Qua2V5cyh0KS5mb3JFYWNoKChmdW5jdGlvbihuKXtUZShlLG4sdFtuXSl9KSksUGUoITApKX1mdW5jdGlvbiBqbihlLHQpe2lmKGUpe2Zvcih2YXIgbj1PYmplY3QuY3JlYXRlKG51bGwpLHI9cGU/UmVmbGVjdC5vd25LZXlzKGUpLmZpbHRlcigoZnVuY3Rpb24odCl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSx0KS5lbnVtZXJhYmxlfSkpOk9iamVjdC5rZXlzKGUpLGk9MDtpPHIubGVuZ3RoO2krKyl7dmFyIGE9cltpXSxvPWVbYV0uZnJvbSxjPXQ7d2hpbGUoYyl7aWYoYy5fcHJvdmlkZWQmJmcoYy5fcHJvdmlkZWQsbykpe25bYV09Yy5fcHJvdmlkZWRbb107YnJlYWt9Yz1jLiRwYXJlbnR9aWYoIWMpaWYoImRlZmF1bHQiaW4gZVthXSl7dmFyIHM9ZVthXS5kZWZhdWx0O25bYV09ImZ1bmN0aW9uIj09PXR5cGVvZiBzP3MuY2FsbCh0KTpzfWVsc2UgMH1yZXR1cm4gbn19ZnVuY3Rpb24gT24oZSx0KXt2YXIgbixyLGEsbyxjO2lmKEFycmF5LmlzQXJyYXkoZSl8fCJzdHJpbmciPT09dHlwZW9mIGUpZm9yKG49bmV3IEFycmF5KGUubGVuZ3RoKSxyPTAsYT1lLmxlbmd0aDtyPGE7cisrKW5bcl09dChlW3JdLHIpO2Vsc2UgaWYoIm51bWJlciI9PT10eXBlb2YgZSlmb3Iobj1uZXcgQXJyYXkoZSkscj0wO3I8ZTtyKyspbltyXT10KHIrMSxyKTtlbHNlIGlmKHMoZSkpZm9yKG89T2JqZWN0LmtleXMoZSksbj1uZXcgQXJyYXkoby5sZW5ndGgpLHI9MCxhPW8ubGVuZ3RoO3I8YTtyKyspYz1vW3JdLG5bcl09dChlW2NdLGMscik7cmV0dXJuIGkobil8fChuPVtdKSxuLl9pc1ZMaXN0PSEwLG59ZnVuY3Rpb24gQW4oZSx0LG4scil7dmFyIGksYT10aGlzLiRzY29wZWRTbG90c1tlXTthPyhuPW58fHt9LHImJihuPUUoRSh7fSxyKSxuKSksaT1hKG4pfHx0KTppPXRoaXMuJHNsb3RzW2VdfHx0O3ZhciBvPW4mJm4uc2xvdDtyZXR1cm4gbz90aGlzLiRjcmVhdGVFbGVtZW50KCJ0ZW1wbGF0ZSIse3Nsb3Q6b30saSk6aX1mdW5jdGlvbiBFbihlKXtyZXR1cm4gS2UodGhpcy4kb3B0aW9ucywiZmlsdGVycyIsZSwhMCl8fE19ZnVuY3Rpb24gVG4oZSx0KXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT8tMT09PWUuaW5kZXhPZih0KTplIT09dH1mdW5jdGlvbiBEbihlLHQsbixyLGkpe3ZhciBhPVYua2V5Q29kZXNbdF18fG47cmV0dXJuIGkmJnImJiFWLmtleUNvZGVzW3RdP1RuKGkscik6YT9UbihhLGUpOnI/UyhyKSE9PXQ6dm9pZCAwfWZ1bmN0aW9uIHpuKGUsdCxuLHIsaSl7aWYobilpZihzKG4pKXt2YXIgYTtBcnJheS5pc0FycmF5KG4pJiYobj1UKG4pKTt2YXIgbz1mdW5jdGlvbihvKXtpZigiY2xhc3MiPT09b3x8InN0eWxlIj09PW98fGgobykpYT1lO2Vsc2V7dmFyIGM9ZS5hdHRycyYmZS5hdHRycy50eXBlO2E9cnx8Vi5tdXN0VXNlUHJvcCh0LGMsbyk/ZS5kb21Qcm9wc3x8KGUuZG9tUHJvcHM9e30pOmUuYXR0cnN8fChlLmF0dHJzPXt9KX12YXIgcz1rKG8pO2lmKCEobyBpbiBhKSYmIShzIGluIGEpJiYoYVtvXT1uW29dLGkpKXt2YXIgcD1lLm9ufHwoZS5vbj17fSk7cFsidXBkYXRlOiIrc109ZnVuY3Rpb24oZSl7bltvXT1lfX19O2Zvcih2YXIgYyBpbiBuKW8oYyl9ZWxzZTtyZXR1cm4gZX1mdW5jdGlvbiBNbihlLHQpe3ZhciBuPXRoaXMuX3N0YXRpY1RyZWVzfHwodGhpcy5fc3RhdGljVHJlZXM9W10pLHI9bltlXTtyZXR1cm4gciYmIXQ/cjoocj1uW2VdPXRoaXMuJG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zW2VdLmNhbGwodGhpcy5fcmVuZGVyUHJveHksbnVsbCx0aGlzKSxObihyLCJfX3N0YXRpY19fIitlLCExKSxyKX1mdW5jdGlvbiAkbihlLHQsbil7cmV0dXJuIE5uKGUsIl9fb25jZV9fIit0KyhuPyJfIituOiIiKSwhMCksZX1mdW5jdGlvbiBObihlLHQsbil7aWYoQXJyYXkuaXNBcnJheShlKSlmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrKyllW3JdJiYic3RyaW5nIiE9PXR5cGVvZiBlW3JdJiZJbihlW3JdLHQrIl8iK3Isbik7ZWxzZSBJbihlLHQsbil9ZnVuY3Rpb24gSW4oZSx0LG4pe2UuaXNTdGF0aWM9ITAsZS5rZXk9dCxlLmlzT25jZT1ufWZ1bmN0aW9uIEZuKGUsdCl7aWYodClpZihsKHQpKXt2YXIgbj1lLm9uPWUub24/RSh7fSxlLm9uKTp7fTtmb3IodmFyIHIgaW4gdCl7dmFyIGk9bltyXSxhPXRbcl07bltyXT1pP1tdLmNvbmNhdChpLGEpOmF9fWVsc2U7cmV0dXJuIGV9ZnVuY3Rpb24gTG4oZSl7ZS5fbz0kbixlLl9uPW0sZS5fcz1fLGUuX2w9T24sZS5fdD1BbixlLl9xPSQsZS5faT1OLGUuX209TW4sZS5fZj1FbixlLl9rPURuLGUuX2I9em4sZS5fdj1nZSxlLl9lPXllLGUuX3U9RnQsZS5fZz1Gbn1mdW5jdGlvbiBSbihlLHQscixpLG8pe3ZhciBjLHM9by5vcHRpb25zO2coaSwiX3VpZCIpPyhjPU9iamVjdC5jcmVhdGUoaSksYy5fb3JpZ2luYWw9aSk6KGM9aSxpPWkuX29yaWdpbmFsKTt2YXIgcD1hKHMuX2NvbXBpbGVkKSxsPSFwO3RoaXMuZGF0YT1lLHRoaXMucHJvcHM9dCx0aGlzLmNoaWxkcmVuPXIsdGhpcy5wYXJlbnQ9aSx0aGlzLmxpc3RlbmVycz1lLm9ufHxuLHRoaXMuaW5qZWN0aW9ucz1qbihzLmluamVjdCxpKSx0aGlzLnNsb3RzPWZ1bmN0aW9uKCl7cmV0dXJuIE50KHIsaSl9LHAmJih0aGlzLiRvcHRpb25zPXMsdGhpcy4kc2xvdHM9dGhpcy5zbG90cygpLHRoaXMuJHNjb3BlZFNsb3RzPWUuc2NvcGVkU2xvdHN8fG4pLHMuX3Njb3BlSWQ/dGhpcy5fYz1mdW5jdGlvbihlLHQsbixyKXt2YXIgYT1RbihjLGUsdCxuLHIsbCk7cmV0dXJuIGEmJiFBcnJheS5pc0FycmF5KGEpJiYoYS5mblNjb3BlSWQ9cy5fc2NvcGVJZCxhLmZuQ29udGV4dD1pKSxhfTp0aGlzLl9jPWZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBRbihjLGUsdCxuLHIsbCl9fWZ1bmN0aW9uIFZuKGUsdCxyLGEsbyl7dmFyIGM9ZS5vcHRpb25zLHM9e30scD1jLnByb3BzO2lmKGkocCkpZm9yKHZhciBsIGluIHApc1tsXT1CZShsLHAsdHx8bik7ZWxzZSBpKHIuYXR0cnMpJiZIbihzLHIuYXR0cnMpLGkoci5wcm9wcykmJkhuKHMsci5wcm9wcyk7dmFyIHU9bmV3IFJuKHIscyxvLGEsZSksZD1jLnJlbmRlci5jYWxsKG51bGwsdS5fYyx1KTtpZihkIGluc3RhbmNlb2YgaGUpcmV0dXJuIFVuKGQscix1LnBhcmVudCxjLHUpO2lmKEFycmF5LmlzQXJyYXkoZCkpe2Zvcih2YXIgXz1rdChkKXx8W10sbT1uZXcgQXJyYXkoXy5sZW5ndGgpLGY9MDtmPF8ubGVuZ3RoO2YrKyltW2ZdPVVuKF9bZl0scix1LnBhcmVudCxjLHUpO3JldHVybiBtfX1mdW5jdGlvbiBVbihlLHQsbixyLGkpe3ZhciBhPXdlKGUpO3JldHVybiBhLmZuQ29udGV4dD1uLGEuZm5PcHRpb25zPXIsdC5zbG90JiYoKGEuZGF0YXx8KGEuZGF0YT17fSkpLnNsb3Q9dC5zbG90KSxhfWZ1bmN0aW9uIEhuKGUsdCl7Zm9yKHZhciBuIGluIHQpZVtrKG4pXT10W25dfUxuKFJuLnByb3RvdHlwZSk7dmFyIEduPXtpbml0OmZ1bmN0aW9uKGUsdCl7aWYoZS5jb21wb25lbnRJbnN0YW5jZSYmIWUuY29tcG9uZW50SW5zdGFuY2UuX2lzRGVzdHJveWVkJiZlLmRhdGEua2VlcEFsaXZlKXt2YXIgbj1lO0duLnByZXBhdGNoKG4sbil9ZWxzZXt2YXIgcj1lLmNvbXBvbmVudEluc3RhbmNlPXFuKGUsTHQpO3IuJG1vdW50KHQ/ZS5lbG06dm9pZCAwLHQpfX0scHJlcGF0Y2g6ZnVuY3Rpb24oZSx0KXt2YXIgbj10LmNvbXBvbmVudE9wdGlvbnMscj10LmNvbXBvbmVudEluc3RhbmNlPWUuY29tcG9uZW50SW5zdGFuY2U7R3QocixuLnByb3BzRGF0YSxuLmxpc3RlbmVycyx0LG4uY2hpbGRyZW4pfSxpbnNlcnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5jb250ZXh0LG49ZS5jb21wb25lbnRJbnN0YW5jZTtuLl9pc01vdW50ZWR8fChuLl9pc01vdW50ZWQ9ITAsSnQobiwibW91bnRlZCIpKSxlLmRhdGEua2VlcEFsaXZlJiYodC5faXNNb3VudGVkP2FuKG4pOkJ0KG4sITApKX0sZGVzdHJveTpmdW5jdGlvbihlKXt2YXIgdD1lLmNvbXBvbmVudEluc3RhbmNlO3QuX2lzRGVzdHJveWVkfHwoZS5kYXRhLmtlZXBBbGl2ZT9xdCh0LCEwKTp0LiRkZXN0cm95KCkpfX0sS249T2JqZWN0LmtleXMoR24pO2Z1bmN0aW9uIEJuKGUsdCxuLG8sYyl7aWYoIXIoZSkpe3ZhciBwPW4uJG9wdGlvbnMuX2Jhc2U7aWYocyhlKSYmKGU9cC5leHRlbmQoZSkpLCJmdW5jdGlvbiI9PT10eXBlb2YgZSl7dmFyIGw7aWYocihlLmNpZCkmJihsPWUsZT1qdChsLHAsbiksdm9pZCAwPT09ZSkpcmV0dXJuIFB0KGwsdCxuLG8sYyk7dD10fHx7fSxzcihlKSxpKHQubW9kZWwpJiZYbihlLm9wdGlvbnMsdCk7dmFyIHU9Z3QodCxlLGMpO2lmKGEoZS5vcHRpb25zLmZ1bmN0aW9uYWwpKXJldHVybiBWbihlLHUsdCxuLG8pO3ZhciBkPXQub247aWYodC5vbj10Lm5hdGl2ZU9uLGEoZS5vcHRpb25zLmFic3RyYWN0KSl7dmFyIF89dC5zbG90O3Q9e30sXyYmKHQuc2xvdD1fKX1Kbih0KTt2YXIgbT1lLm9wdGlvbnMubmFtZXx8YyxmPW5ldyBoZSgidnVlLWNvbXBvbmVudC0iK2UuY2lkKyhtPyItIittOiIiKSx0LHZvaWQgMCx2b2lkIDAsdm9pZCAwLG4se0N0b3I6ZSxwcm9wc0RhdGE6dSxsaXN0ZW5lcnM6ZCx0YWc6YyxjaGlsZHJlbjpvfSxsKTtyZXR1cm4gZn19fWZ1bmN0aW9uIHFuKGUsdCl7dmFyIG49e19pc0NvbXBvbmVudDohMCxfcGFyZW50Vm5vZGU6ZSxwYXJlbnQ6dH0scj1lLmRhdGEuaW5saW5lVGVtcGxhdGU7cmV0dXJuIGkocikmJihuLnJlbmRlcj1yLnJlbmRlcixuLnN0YXRpY1JlbmRlckZucz1yLnN0YXRpY1JlbmRlckZucyksbmV3IGUuY29tcG9uZW50T3B0aW9ucy5DdG9yKG4pfWZ1bmN0aW9uIEpuKGUpe2Zvcih2YXIgdD1lLmhvb2t8fChlLmhvb2s9e30pLG49MDtuPEtuLmxlbmd0aDtuKyspe3ZhciByPUtuW25dLGk9dFtyXSxhPUduW3JdO2k9PT1hfHxpJiZpLl9tZXJnZWR8fCh0W3JdPWk/V24oYSxpKTphKX19ZnVuY3Rpb24gV24oZSx0KXt2YXIgbj1mdW5jdGlvbihuLHIpe2UobixyKSx0KG4scil9O3JldHVybiBuLl9tZXJnZWQ9ITAsbn1mdW5jdGlvbiBYbihlLHQpe3ZhciBuPWUubW9kZWwmJmUubW9kZWwucHJvcHx8InZhbHVlIixyPWUubW9kZWwmJmUubW9kZWwuZXZlbnR8fCJpbnB1dCI7KHQucHJvcHN8fCh0LnByb3BzPXt9KSlbbl09dC5tb2RlbC52YWx1ZTt2YXIgYT10Lm9ufHwodC5vbj17fSksbz1hW3JdLGM9dC5tb2RlbC5jYWxsYmFjaztpKG8pPyhBcnJheS5pc0FycmF5KG8pPy0xPT09by5pbmRleE9mKGMpOm8hPT1jKSYmKGFbcl09W2NdLmNvbmNhdChvKSk6YVtyXT1jfXZhciBabj0xLFluPTI7ZnVuY3Rpb24gUW4oZSx0LG4scixpLG8pe3JldHVybihBcnJheS5pc0FycmF5KG4pfHxjKG4pKSYmKGk9cixyPW4sbj12b2lkIDApLGEobykmJihpPVluKSxlcihlLHQsbixyLGkpfWZ1bmN0aW9uIGVyKGUsdCxuLHIsYSl7aWYoaShuKSYmaShuLl9fb2JfXykpcmV0dXJuIHllKCk7aWYoaShuKSYmaShuLmlzKSYmKHQ9bi5pcyksIXQpcmV0dXJuIHllKCk7dmFyIG8sYyxzOyhBcnJheS5pc0FycmF5KHIpJiYiZnVuY3Rpb24iPT09dHlwZW9mIHJbMF0mJihuPW58fHt9LG4uc2NvcGVkU2xvdHM9e2RlZmF1bHQ6clswXX0sci5sZW5ndGg9MCksYT09PVluP3I9a3Qocik6YT09PVpuJiYocj1idChyKSksInN0cmluZyI9PT10eXBlb2YgdCk/KGM9ZS4kdm5vZGUmJmUuJHZub2RlLm5zfHxWLmdldFRhZ05hbWVzcGFjZSh0KSxvPVYuaXNSZXNlcnZlZFRhZyh0KT9uZXcgaGUoVi5wYXJzZVBsYXRmb3JtVGFnTmFtZSh0KSxuLHIsdm9pZCAwLHZvaWQgMCxlKTpuJiZuLnByZXx8IWkocz1LZShlLiRvcHRpb25zLCJjb21wb25lbnRzIix0KSk/bmV3IGhlKHQsbixyLHZvaWQgMCx2b2lkIDAsZSk6Qm4ocyxuLGUscix0KSk6bz1Cbih0LG4sZSxyKTtyZXR1cm4gQXJyYXkuaXNBcnJheShvKT9vOmkobyk/KGkoYykmJnRyKG8sYyksaShuKSYmbnIobiksbyk6eWUoKX1mdW5jdGlvbiB0cihlLHQsbil7aWYoZS5ucz10LCJmb3JlaWduT2JqZWN0Ij09PWUudGFnJiYodD12b2lkIDAsbj0hMCksaShlLmNoaWxkcmVuKSlmb3IodmFyIG89MCxjPWUuY2hpbGRyZW4ubGVuZ3RoO288YztvKyspe3ZhciBzPWUuY2hpbGRyZW5bb107aShzLnRhZykmJihyKHMubnMpfHxhKG4pJiYic3ZnIiE9PXMudGFnKSYmdHIocyx0LG4pfX1mdW5jdGlvbiBucihlKXtzKGUuc3R5bGUpJiZkdChlLnN0eWxlKSxzKGUuY2xhc3MpJiZkdChlLmNsYXNzKX1mdW5jdGlvbiBycihlKXtlLl92bm9kZT1udWxsLGUuX3N0YXRpY1RyZWVzPW51bGw7dmFyIHQ9ZS4kb3B0aW9ucyxyPWUuJHZub2RlPXQuX3BhcmVudFZub2RlLGk9ciYmci5jb250ZXh0O2UuJHNsb3RzPU50KHQuX3JlbmRlckNoaWxkcmVuLGkpLGUuJHNjb3BlZFNsb3RzPW4sZS5fYz1mdW5jdGlvbih0LG4scixpKXtyZXR1cm4gUW4oZSx0LG4scixpLCExKX0sZS4kY3JlYXRlRWxlbWVudD1mdW5jdGlvbih0LG4scixpKXtyZXR1cm4gUW4oZSx0LG4scixpLCEwKX07dmFyIGE9ciYmci5kYXRhO1RlKGUsIiRhdHRycyIsYSYmYS5hdHRyc3x8bixudWxsLCEwKSxUZShlLCIkbGlzdGVuZXJzIix0Ll9wYXJlbnRMaXN0ZW5lcnN8fG4sbnVsbCwhMCl9ZnVuY3Rpb24gaXIoZSl7TG4oZS5wcm90b3R5cGUpLGUucHJvdG90eXBlLiRuZXh0VGljaz1mdW5jdGlvbihlKXtyZXR1cm4gbHQoZSx0aGlzKX0sZS5wcm90b3R5cGUuX3JlbmRlcj1mdW5jdGlvbigpe3ZhciBlLHQ9dGhpcyxyPXQuJG9wdGlvbnMsaT1yLnJlbmRlcixhPXIuX3BhcmVudFZub2RlO2EmJih0LiRzY29wZWRTbG90cz1hLmRhdGEuc2NvcGVkU2xvdHN8fG4pLHQuJHZub2RlPWE7dHJ5e2U9aS5jYWxsKHQuX3JlbmRlclByb3h5LHQuJGNyZWF0ZUVsZW1lbnQpfWNhdGNoKG9vKXtaZShvbyx0LCJyZW5kZXIiKSxlPXQuX3Zub2RlfXJldHVybiBlIGluc3RhbmNlb2YgaGV8fChlPXllKCkpLGUucGFyZW50PWEsZX19dmFyIGFyPTA7ZnVuY3Rpb24gb3IoZSl7ZS5wcm90b3R5cGUuX2luaXQ9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczt0Ll91aWQ9YXIrKyx0Ll9pc1Z1ZT0hMCxlJiZlLl9pc0NvbXBvbmVudD9jcih0LGUpOnQuJG9wdGlvbnM9R2Uoc3IodC5jb25zdHJ1Y3RvciksZXx8e30sdCksdC5fcmVuZGVyUHJveHk9dCx0Ll9zZWxmPXQsVnQodCksRXQodCkscnIodCksSnQodCwiYmVmb3JlQ3JlYXRlIiksUG4odCksZG4odCksU24odCksSnQodCwiY3JlYXRlZCIpLHQuJG9wdGlvbnMuZWwmJnQuJG1vdW50KHQuJG9wdGlvbnMuZWwpfX1mdW5jdGlvbiBjcihlLHQpe3ZhciBuPWUuJG9wdGlvbnM9T2JqZWN0LmNyZWF0ZShlLmNvbnN0cnVjdG9yLm9wdGlvbnMpLHI9dC5fcGFyZW50Vm5vZGU7bi5wYXJlbnQ9dC5wYXJlbnQsbi5fcGFyZW50Vm5vZGU9cjt2YXIgaT1yLmNvbXBvbmVudE9wdGlvbnM7bi5wcm9wc0RhdGE9aS5wcm9wc0RhdGEsbi5fcGFyZW50TGlzdGVuZXJzPWkubGlzdGVuZXJzLG4uX3JlbmRlckNoaWxkcmVuPWkuY2hpbGRyZW4sbi5fY29tcG9uZW50VGFnPWkudGFnLHQucmVuZGVyJiYobi5yZW5kZXI9dC5yZW5kZXIsbi5zdGF0aWNSZW5kZXJGbnM9dC5zdGF0aWNSZW5kZXJGbnMpfWZ1bmN0aW9uIHNyKGUpe3ZhciB0PWUub3B0aW9ucztpZihlLnN1cGVyKXt2YXIgbj1zcihlLnN1cGVyKSxyPWUuc3VwZXJPcHRpb25zO2lmKG4hPT1yKXtlLnN1cGVyT3B0aW9ucz1uO3ZhciBpPXByKGUpO2kmJkUoZS5leHRlbmRPcHRpb25zLGkpLHQ9ZS5vcHRpb25zPUdlKG4sZS5leHRlbmRPcHRpb25zKSx0Lm5hbWUmJih0LmNvbXBvbmVudHNbdC5uYW1lXT1lKX19cmV0dXJuIHR9ZnVuY3Rpb24gcHIoZSl7dmFyIHQsbj1lLm9wdGlvbnMscj1lLmV4dGVuZE9wdGlvbnMsaT1lLnNlYWxlZE9wdGlvbnM7Zm9yKHZhciBhIGluIG4pblthXSE9PWlbYV0mJih0fHwodD17fSksdFthXT1scihuW2FdLHJbYV0saVthXSkpO3JldHVybiB0fWZ1bmN0aW9uIGxyKGUsdCxuKXtpZihBcnJheS5pc0FycmF5KGUpKXt2YXIgcj1bXTtuPUFycmF5LmlzQXJyYXkobik/bjpbbl0sdD1BcnJheS5pc0FycmF5KHQpP3Q6W3RdO2Zvcih2YXIgaT0wO2k8ZS5sZW5ndGg7aSsrKSh0LmluZGV4T2YoZVtpXSk+PTB8fG4uaW5kZXhPZihlW2ldKTwwKSYmci5wdXNoKGVbaV0pO3JldHVybiByfXJldHVybiBlfWZ1bmN0aW9uIHVyKGUpe3RoaXMuX2luaXQoZSl9ZnVuY3Rpb24gZHIoZSl7ZS51c2U9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5faW5zdGFsbGVkUGx1Z2luc3x8KHRoaXMuX2luc3RhbGxlZFBsdWdpbnM9W10pO2lmKHQuaW5kZXhPZihlKT4tMSlyZXR1cm4gdGhpczt2YXIgbj1BKGFyZ3VtZW50cywxKTtyZXR1cm4gbi51bnNoaWZ0KHRoaXMpLCJmdW5jdGlvbiI9PT10eXBlb2YgZS5pbnN0YWxsP2UuaW5zdGFsbC5hcHBseShlLG4pOiJmdW5jdGlvbiI9PT10eXBlb2YgZSYmZS5hcHBseShudWxsLG4pLHQucHVzaChlKSx0aGlzfX1mdW5jdGlvbiBfcihlKXtlLm1peGluPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLm9wdGlvbnM9R2UodGhpcy5vcHRpb25zLGUpLHRoaXN9fWZ1bmN0aW9uIG1yKGUpe2UuY2lkPTA7dmFyIHQ9MTtlLmV4dGVuZD1mdW5jdGlvbihlKXtlPWV8fHt9O3ZhciBuPXRoaXMscj1uLmNpZCxpPWUuX0N0b3J8fChlLl9DdG9yPXt9KTtpZihpW3JdKXJldHVybiBpW3JdO3ZhciBhPWUubmFtZXx8bi5vcHRpb25zLm5hbWU7dmFyIG89ZnVuY3Rpb24oZSl7dGhpcy5faW5pdChlKX07cmV0dXJuIG8ucHJvdG90eXBlPU9iamVjdC5jcmVhdGUobi5wcm90b3R5cGUpLG8ucHJvdG90eXBlLmNvbnN0cnVjdG9yPW8sby5jaWQ9dCsrLG8ub3B0aW9ucz1HZShuLm9wdGlvbnMsZSksb1sic3VwZXIiXT1uLG8ub3B0aW9ucy5wcm9wcyYmZnIobyksby5vcHRpb25zLmNvbXB1dGVkJiZocihvKSxvLmV4dGVuZD1uLmV4dGVuZCxvLm1peGluPW4ubWl4aW4sby51c2U9bi51c2UsTC5mb3JFYWNoKChmdW5jdGlvbihlKXtvW2VdPW5bZV19KSksYSYmKG8ub3B0aW9ucy5jb21wb25lbnRzW2FdPW8pLG8uc3VwZXJPcHRpb25zPW4ub3B0aW9ucyxvLmV4dGVuZE9wdGlvbnM9ZSxvLnNlYWxlZE9wdGlvbnM9RSh7fSxvLm9wdGlvbnMpLGlbcl09byxvfX1mdW5jdGlvbiBmcihlKXt2YXIgdD1lLm9wdGlvbnMucHJvcHM7Zm9yKHZhciBuIGluIHQpdW4oZS5wcm90b3R5cGUsIl9wcm9wcyIsbil9ZnVuY3Rpb24gaHIoZSl7dmFyIHQ9ZS5vcHRpb25zLmNvbXB1dGVkO2Zvcih2YXIgbiBpbiB0KXluKGUucHJvdG90eXBlLG4sdFtuXSl9ZnVuY3Rpb24gdnIoZSl7TC5mb3JFYWNoKChmdW5jdGlvbih0KXtlW3RdPWZ1bmN0aW9uKGUsbil7cmV0dXJuIG4/KCJjb21wb25lbnQiPT09dCYmbChuKSYmKG4ubmFtZT1uLm5hbWV8fGUsbj10aGlzLm9wdGlvbnMuX2Jhc2UuZXh0ZW5kKG4pKSwiZGlyZWN0aXZlIj09PXQmJiJmdW5jdGlvbiI9PT10eXBlb2YgbiYmKG49e2JpbmQ6bix1cGRhdGU6bn0pLHRoaXMub3B0aW9uc1t0KyJzIl1bZV09bixuKTp0aGlzLm9wdGlvbnNbdCsicyJdW2VdfX0pKX1mdW5jdGlvbiB5cihlKXtyZXR1cm4gZSYmKGUuQ3Rvci5vcHRpb25zLm5hbWV8fGUudGFnKX1mdW5jdGlvbiBncihlLHQpe3JldHVybiBBcnJheS5pc0FycmF5KGUpP2UuaW5kZXhPZih0KT4tMToic3RyaW5nIj09PXR5cGVvZiBlP2Uuc3BsaXQoIiwiKS5pbmRleE9mKHQpPi0xOiEhdShlKSYmZS50ZXN0KHQpfWZ1bmN0aW9uIHdyKGUsdCl7dmFyIG49ZS5jYWNoZSxyPWUua2V5cyxpPWUuX3Zub2RlO2Zvcih2YXIgYSBpbiBuKXt2YXIgbz1uW2FdO2lmKG8pe3ZhciBjPXlyKG8uY29tcG9uZW50T3B0aW9ucyk7YyYmIXQoYykmJmJyKG4sYSxyLGkpfX19ZnVuY3Rpb24gYnIoZSx0LG4scil7dmFyIGk9ZVt0XTshaXx8ciYmaS50YWc9PT1yLnRhZ3x8aS5jb21wb25lbnRJbnN0YW5jZS4kZGVzdHJveSgpLGVbdF09bnVsbCx2KG4sdCl9b3IodXIpLENuKHVyKSwkdCh1ciksVXQodXIpLGlyKHVyKTt2YXIga3I9W1N0cmluZyxSZWdFeHAsQXJyYXldLHhyPXtuYW1lOiJrZWVwLWFsaXZlIixhYnN0cmFjdDohMCxwcm9wczp7aW5jbHVkZTprcixleGNsdWRlOmtyLG1heDpbU3RyaW5nLE51bWJlcl19LGNyZWF0ZWQ6ZnVuY3Rpb24oKXt0aGlzLmNhY2hlPU9iamVjdC5jcmVhdGUobnVsbCksdGhpcy5rZXlzPVtdfSxkZXN0cm95ZWQ6ZnVuY3Rpb24oKXtmb3IodmFyIGUgaW4gdGhpcy5jYWNoZSlicih0aGlzLmNhY2hlLGUsdGhpcy5rZXlzKX0sbW91bnRlZDpmdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy4kd2F0Y2goImluY2x1ZGUiLChmdW5jdGlvbih0KXt3cihlLChmdW5jdGlvbihlKXtyZXR1cm4gZ3IodCxlKX0pKX0pKSx0aGlzLiR3YXRjaCgiZXhjbHVkZSIsKGZ1bmN0aW9uKHQpe3dyKGUsKGZ1bmN0aW9uKGUpe3JldHVybiFncih0LGUpfSkpfSkpfSxyZW5kZXI6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLiRzbG90cy5kZWZhdWx0LHQ9QXQoZSksbj10JiZ0LmNvbXBvbmVudE9wdGlvbnM7aWYobil7dmFyIHI9eXIobiksaT10aGlzLGE9aS5pbmNsdWRlLG89aS5leGNsdWRlO2lmKGEmJighcnx8IWdyKGEscikpfHxvJiZyJiZncihvLHIpKXJldHVybiB0O3ZhciBjPXRoaXMscz1jLmNhY2hlLHA9Yy5rZXlzLGw9bnVsbD09dC5rZXk/bi5DdG9yLmNpZCsobi50YWc/Ijo6IituLnRhZzoiIik6dC5rZXk7c1tsXT8odC5jb21wb25lbnRJbnN0YW5jZT1zW2xdLmNvbXBvbmVudEluc3RhbmNlLHYocCxsKSxwLnB1c2gobCkpOihzW2xdPXQscC5wdXNoKGwpLHRoaXMubWF4JiZwLmxlbmd0aD5wYXJzZUludCh0aGlzLm1heCkmJmJyKHMscFswXSxwLHRoaXMuX3Zub2RlKSksdC5kYXRhLmtlZXBBbGl2ZT0hMH1yZXR1cm4gdHx8ZSYmZVswXX19LENyPXtLZWVwQWxpdmU6eHJ9O2Z1bmN0aW9uIFNyKGUpe3ZhciB0PXtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gVn19O09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJjb25maWciLHQpLGUudXRpbD17d2FybjpsZSxleHRlbmQ6RSxtZXJnZU9wdGlvbnM6R2UsZGVmaW5lUmVhY3RpdmU6VGV9LGUuc2V0PURlLGUuZGVsZXRlPXplLGUubmV4dFRpY2s9bHQsZS5vcHRpb25zPU9iamVjdC5jcmVhdGUobnVsbCksTC5mb3JFYWNoKChmdW5jdGlvbih0KXtlLm9wdGlvbnNbdCsicyJdPU9iamVjdC5jcmVhdGUobnVsbCl9KSksZS5vcHRpb25zLl9iYXNlPWUsRShlLm9wdGlvbnMuY29tcG9uZW50cyxDciksZHIoZSksX3IoZSksbXIoZSksdnIoZSl9U3IodXIpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh1ci5wcm90b3R5cGUsIiRpc1NlcnZlciIse2dldDphZX0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh1ci5wcm90b3R5cGUsIiRzc3JDb250ZXh0Iix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJHZub2RlJiZ0aGlzLiR2bm9kZS5zc3JDb250ZXh0fX0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh1ciwiRnVuY3Rpb25hbFJlbmRlckNvbnRleHQiLHt2YWx1ZTpSbn0pLHVyLnZlcnNpb249IjIuNS4yMSI7dmFyIFByPWYoInN0eWxlLGNsYXNzIiksanI9ZigiaW5wdXQsdGV4dGFyZWEsb3B0aW9uLHNlbGVjdCxwcm9ncmVzcyIpLE9yPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4idmFsdWUiPT09biYmanIoZSkmJiJidXR0b24iIT09dHx8InNlbGVjdGVkIj09PW4mJiJvcHRpb24iPT09ZXx8ImNoZWNrZWQiPT09biYmImlucHV0Ij09PWV8fCJtdXRlZCI9PT1uJiYidmlkZW8iPT09ZX0sQXI9ZigiY29udGVudGVkaXRhYmxlLGRyYWdnYWJsZSxzcGVsbGNoZWNrIiksRXI9ZigiYWxsb3dmdWxsc2NyZWVuLGFzeW5jLGF1dG9mb2N1cyxhdXRvcGxheSxjaGVja2VkLGNvbXBhY3QsY29udHJvbHMsZGVjbGFyZSxkZWZhdWx0LGRlZmF1bHRjaGVja2VkLGRlZmF1bHRtdXRlZCxkZWZhdWx0c2VsZWN0ZWQsZGVmZXIsZGlzYWJsZWQsZW5hYmxlZCxmb3Jtbm92YWxpZGF0ZSxoaWRkZW4saW5kZXRlcm1pbmF0ZSxpbmVydCxpc21hcCxpdGVtc2NvcGUsbG9vcCxtdWx0aXBsZSxtdXRlZCxub2hyZWYsbm9yZXNpemUsbm9zaGFkZSxub3ZhbGlkYXRlLG5vd3JhcCxvcGVuLHBhdXNlb25leGl0LHJlYWRvbmx5LHJlcXVpcmVkLHJldmVyc2VkLHNjb3BlZCxzZWFtbGVzcyxzZWxlY3RlZCxzb3J0YWJsZSx0cmFuc2xhdGUsdHJ1ZXNwZWVkLHR5cGVtdXN0bWF0Y2gsdmlzaWJsZSIpLFRyPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIixEcj1mdW5jdGlvbihlKXtyZXR1cm4iOiI9PT1lLmNoYXJBdCg1KSYmInhsaW5rIj09PWUuc2xpY2UoMCw1KX0senI9ZnVuY3Rpb24oZSl7cmV0dXJuIERyKGUpP2Uuc2xpY2UoNixlLmxlbmd0aCk6IiJ9LE1yPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lfHwhMT09PWV9O2Z1bmN0aW9uICRyKGUpe3ZhciB0PWUuZGF0YSxuPWUscj1lO3doaWxlKGkoci5jb21wb25lbnRJbnN0YW5jZSkpcj1yLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZSxyJiZyLmRhdGEmJih0PU5yKHIuZGF0YSx0KSk7d2hpbGUoaShuPW4ucGFyZW50KSluJiZuLmRhdGEmJih0PU5yKHQsbi5kYXRhKSk7cmV0dXJuIElyKHQuc3RhdGljQ2xhc3MsdC5jbGFzcyl9ZnVuY3Rpb24gTnIoZSx0KXtyZXR1cm57c3RhdGljQ2xhc3M6RnIoZS5zdGF0aWNDbGFzcyx0LnN0YXRpY0NsYXNzKSxjbGFzczppKGUuY2xhc3MpP1tlLmNsYXNzLHQuY2xhc3NdOnQuY2xhc3N9fWZ1bmN0aW9uIElyKGUsdCl7cmV0dXJuIGkoZSl8fGkodCk/RnIoZSxMcih0KSk6IiJ9ZnVuY3Rpb24gRnIoZSx0KXtyZXR1cm4gZT90P2UrIiAiK3Q6ZTp0fHwiIn1mdW5jdGlvbiBMcihlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9ScihlKTpzKGUpP1ZyKGUpOiJzdHJpbmciPT09dHlwZW9mIGU/ZToiIn1mdW5jdGlvbiBScihlKXtmb3IodmFyIHQsbj0iIixyPTAsYT1lLmxlbmd0aDtyPGE7cisrKWkodD1McihlW3JdKSkmJiIiIT09dCYmKG4mJihuKz0iICIpLG4rPXQpO3JldHVybiBufWZ1bmN0aW9uIFZyKGUpe3ZhciB0PSIiO2Zvcih2YXIgbiBpbiBlKWVbbl0mJih0JiYodCs9IiAiKSx0Kz1uKTtyZXR1cm4gdH12YXIgVXI9e3N2ZzoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLG1hdGg6Imh0dHA6Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUwifSxIcj1mKCJodG1sLGJvZHksYmFzZSxoZWFkLGxpbmssbWV0YSxzdHlsZSx0aXRsZSxhZGRyZXNzLGFydGljbGUsYXNpZGUsZm9vdGVyLGhlYWRlcixoMSxoMixoMyxoNCxoNSxoNixoZ3JvdXAsbmF2LHNlY3Rpb24sZGl2LGRkLGRsLGR0LGZpZ2NhcHRpb24sZmlndXJlLHBpY3R1cmUsaHIsaW1nLGxpLG1haW4sb2wscCxwcmUsdWwsYSxiLGFiYnIsYmRpLGJkbyxicixjaXRlLGNvZGUsZGF0YSxkZm4sZW0saSxrYmQsbWFyayxxLHJwLHJ0LHJ0YyxydWJ5LHMsc2FtcCxzbWFsbCxzcGFuLHN0cm9uZyxzdWIsc3VwLHRpbWUsdSx2YXIsd2JyLGFyZWEsYXVkaW8sbWFwLHRyYWNrLHZpZGVvLGVtYmVkLG9iamVjdCxwYXJhbSxzb3VyY2UsY2FudmFzLHNjcmlwdCxub3NjcmlwdCxkZWwsaW5zLGNhcHRpb24sY29sLGNvbGdyb3VwLHRhYmxlLHRoZWFkLHRib2R5LHRkLHRoLHRyLGJ1dHRvbixkYXRhbGlzdCxmaWVsZHNldCxmb3JtLGlucHV0LGxhYmVsLGxlZ2VuZCxtZXRlcixvcHRncm91cCxvcHRpb24sb3V0cHV0LHByb2dyZXNzLHNlbGVjdCx0ZXh0YXJlYSxkZXRhaWxzLGRpYWxvZyxtZW51LG1lbnVpdGVtLHN1bW1hcnksY29udGVudCxlbGVtZW50LHNoYWRvdyx0ZW1wbGF0ZSxibG9ja3F1b3RlLGlmcmFtZSx0Zm9vdCIpLEdyPWYoInN2ZyxhbmltYXRlLGNpcmNsZSxjbGlwcGF0aCxjdXJzb3IsZGVmcyxkZXNjLGVsbGlwc2UsZmlsdGVyLGZvbnQtZmFjZSxmb3JlaWduT2JqZWN0LGcsZ2x5cGgsaW1hZ2UsbGluZSxtYXJrZXIsbWFzayxtaXNzaW5nLWdseXBoLHBhdGgscGF0dGVybixwb2x5Z29uLHBvbHlsaW5lLHJlY3Qsc3dpdGNoLHN5bWJvbCx0ZXh0LHRleHRwYXRoLHRzcGFuLHVzZSx2aWV3IiwhMCksS3I9ZnVuY3Rpb24oZSl7cmV0dXJuIEhyKGUpfHxHcihlKX07ZnVuY3Rpb24gQnIoZSl7cmV0dXJuIEdyKGUpPyJzdmciOiJtYXRoIj09PWU/Im1hdGgiOnZvaWQgMH12YXIgcXI9T2JqZWN0LmNyZWF0ZShudWxsKTtmdW5jdGlvbiBKcihlKXtpZighSilyZXR1cm4hMDtpZihLcihlKSlyZXR1cm4hMTtpZihlPWUudG9Mb3dlckNhc2UoKSxudWxsIT1xcltlXSlyZXR1cm4gcXJbZV07dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChlKTtyZXR1cm4gZS5pbmRleE9mKCItIik+LTE/cXJbZV09dC5jb25zdHJ1Y3Rvcj09PXdpbmRvdy5IVE1MVW5rbm93bkVsZW1lbnR8fHQuY29uc3RydWN0b3I9PT13aW5kb3cuSFRNTEVsZW1lbnQ6cXJbZV09L0hUTUxVbmtub3duRWxlbWVudC8udGVzdCh0LnRvU3RyaW5nKCkpfXZhciBXcj1mKCJ0ZXh0LG51bWJlcixwYXNzd29yZCxzZWFyY2gsZW1haWwsdGVsLHVybCIpO2Z1bmN0aW9uIFhyKGUpe2lmKCJzdHJpbmciPT09dHlwZW9mIGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoZSk7cmV0dXJuIHR8fGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpfXJldHVybiBlfWZ1bmN0aW9uIFpyKGUsdCl7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChlKTtyZXR1cm4ic2VsZWN0IiE9PWU/bjoodC5kYXRhJiZ0LmRhdGEuYXR0cnMmJnZvaWQgMCE9PXQuZGF0YS5hdHRycy5tdWx0aXBsZSYmbi5zZXRBdHRyaWJ1dGUoIm11bHRpcGxlIiwibXVsdGlwbGUiKSxuKX1mdW5jdGlvbiBZcihlLHQpe3JldHVybiBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoVXJbZV0sdCl9ZnVuY3Rpb24gUXIoZSl7cmV0dXJuIGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGUpfWZ1bmN0aW9uIGVpKGUpe3JldHVybiBkb2N1bWVudC5jcmVhdGVDb21tZW50KGUpfWZ1bmN0aW9uIHRpKGUsdCxuKXtlLmluc2VydEJlZm9yZSh0LG4pfWZ1bmN0aW9uIG5pKGUsdCl7ZS5yZW1vdmVDaGlsZCh0KX1mdW5jdGlvbiByaShlLHQpe2UuYXBwZW5kQ2hpbGQodCl9ZnVuY3Rpb24gaWkoZSl7cmV0dXJuIGUucGFyZW50Tm9kZX1mdW5jdGlvbiBhaShlKXtyZXR1cm4gZS5uZXh0U2libGluZ31mdW5jdGlvbiBvaShlKXtyZXR1cm4gZS50YWdOYW1lfWZ1bmN0aW9uIGNpKGUsdCl7ZS50ZXh0Q29udGVudD10fWZ1bmN0aW9uIHNpKGUsdCl7ZS5zZXRBdHRyaWJ1dGUodCwiIil9dmFyIHBpPU9iamVjdC5mcmVlemUoe2NyZWF0ZUVsZW1lbnQ6WnIsY3JlYXRlRWxlbWVudE5TOllyLGNyZWF0ZVRleHROb2RlOlFyLGNyZWF0ZUNvbW1lbnQ6ZWksaW5zZXJ0QmVmb3JlOnRpLHJlbW92ZUNoaWxkOm5pLGFwcGVuZENoaWxkOnJpLHBhcmVudE5vZGU6aWksbmV4dFNpYmxpbmc6YWksdGFnTmFtZTpvaSxzZXRUZXh0Q29udGVudDpjaSxzZXRTdHlsZVNjb3BlOnNpfSksbGk9e2NyZWF0ZTpmdW5jdGlvbihlLHQpe3VpKHQpfSx1cGRhdGU6ZnVuY3Rpb24oZSx0KXtlLmRhdGEucmVmIT09dC5kYXRhLnJlZiYmKHVpKGUsITApLHVpKHQpKX0sZGVzdHJveTpmdW5jdGlvbihlKXt1aShlLCEwKX19O2Z1bmN0aW9uIHVpKGUsdCl7dmFyIG49ZS5kYXRhLnJlZjtpZihpKG4pKXt2YXIgcj1lLmNvbnRleHQsYT1lLmNvbXBvbmVudEluc3RhbmNlfHxlLmVsbSxvPXIuJHJlZnM7dD9BcnJheS5pc0FycmF5KG9bbl0pP3Yob1tuXSxhKTpvW25dPT09YSYmKG9bbl09dm9pZCAwKTplLmRhdGEucmVmSW5Gb3I/QXJyYXkuaXNBcnJheShvW25dKT9vW25dLmluZGV4T2YoYSk8MCYmb1tuXS5wdXNoKGEpOm9bbl09W2FdOm9bbl09YX19dmFyIGRpPW5ldyBoZSgiIix7fSxbXSksX2k9WyJjcmVhdGUiLCJhY3RpdmF0ZSIsInVwZGF0ZSIsInJlbW92ZSIsImRlc3Ryb3kiXTtmdW5jdGlvbiBtaShlLHQpe3JldHVybiBlLmtleT09PXQua2V5JiYoZS50YWc9PT10LnRhZyYmZS5pc0NvbW1lbnQ9PT10LmlzQ29tbWVudCYmaShlLmRhdGEpPT09aSh0LmRhdGEpJiZmaShlLHQpfHxhKGUuaXNBc3luY1BsYWNlaG9sZGVyKSYmZS5hc3luY0ZhY3Rvcnk9PT10LmFzeW5jRmFjdG9yeSYmcih0LmFzeW5jRmFjdG9yeS5lcnJvcikpfWZ1bmN0aW9uIGZpKGUsdCl7aWYoImlucHV0IiE9PWUudGFnKXJldHVybiEwO3ZhciBuLHI9aShuPWUuZGF0YSkmJmkobj1uLmF0dHJzKSYmbi50eXBlLGE9aShuPXQuZGF0YSkmJmkobj1uLmF0dHJzKSYmbi50eXBlO3JldHVybiByPT09YXx8V3IocikmJldyKGEpfWZ1bmN0aW9uIGhpKGUsdCxuKXt2YXIgcixhLG89e307Zm9yKHI9dDtyPD1uOysrcilhPWVbcl0ua2V5LGkoYSkmJihvW2FdPXIpO3JldHVybiBvfWZ1bmN0aW9uIHZpKGUpe3ZhciB0LG4sbz17fSxzPWUubW9kdWxlcyxwPWUubm9kZU9wcztmb3IodD0wO3Q8X2kubGVuZ3RoOysrdClmb3Iob1tfaVt0XV09W10sbj0wO248cy5sZW5ndGg7KytuKWkoc1tuXVtfaVt0XV0pJiZvW19pW3RdXS5wdXNoKHNbbl1bX2lbdF1dKTtmdW5jdGlvbiBsKGUpe3JldHVybiBuZXcgaGUocC50YWdOYW1lKGUpLnRvTG93ZXJDYXNlKCkse30sW10sdm9pZCAwLGUpfWZ1bmN0aW9uIHUoZSx0KXtmdW5jdGlvbiBuKCl7MD09PS0tbi5saXN0ZW5lcnMmJmQoZSl9cmV0dXJuIG4ubGlzdGVuZXJzPXQsbn1mdW5jdGlvbiBkKGUpe3ZhciB0PXAucGFyZW50Tm9kZShlKTtpKHQpJiZwLnJlbW92ZUNoaWxkKHQsZSl9ZnVuY3Rpb24gXyhlLHQsbixyLG8sYyxzKXtpZihpKGUuZWxtKSYmaShjKSYmKGU9Y1tzXT13ZShlKSksZS5pc1Jvb3RJbnNlcnQ9IW8sIW0oZSx0LG4scikpe3ZhciBsPWUuZGF0YSx1PWUuY2hpbGRyZW4sZD1lLnRhZztpKGQpPyhlLmVsbT1lLm5zP3AuY3JlYXRlRWxlbWVudE5TKGUubnMsZCk6cC5jcmVhdGVFbGVtZW50KGQsZSksayhlKSxnKGUsdSx0KSxpKGwpJiZiKGUsdCkseShuLGUuZWxtLHIpKTphKGUuaXNDb21tZW50KT8oZS5lbG09cC5jcmVhdGVDb21tZW50KGUudGV4dCkseShuLGUuZWxtLHIpKTooZS5lbG09cC5jcmVhdGVUZXh0Tm9kZShlLnRleHQpLHkobixlLmVsbSxyKSl9fWZ1bmN0aW9uIG0oZSx0LG4scil7dmFyIG89ZS5kYXRhO2lmKGkobykpe3ZhciBjPWkoZS5jb21wb25lbnRJbnN0YW5jZSkmJm8ua2VlcEFsaXZlO2lmKGkobz1vLmhvb2spJiZpKG89by5pbml0KSYmbyhlLCExKSxpKGUuY29tcG9uZW50SW5zdGFuY2UpKXJldHVybiBoKGUsdCkseShuLGUuZWxtLHIpLGEoYykmJnYoZSx0LG4sciksITB9fWZ1bmN0aW9uIGgoZSx0KXtpKGUuZGF0YS5wZW5kaW5nSW5zZXJ0KSYmKHQucHVzaC5hcHBseSh0LGUuZGF0YS5wZW5kaW5nSW5zZXJ0KSxlLmRhdGEucGVuZGluZ0luc2VydD1udWxsKSxlLmVsbT1lLmNvbXBvbmVudEluc3RhbmNlLiRlbCx3KGUpPyhiKGUsdCksayhlKSk6KHVpKGUpLHQucHVzaChlKSl9ZnVuY3Rpb24gdihlLHQsbixyKXt2YXIgYSxjPWU7d2hpbGUoYy5jb21wb25lbnRJbnN0YW5jZSlpZihjPWMuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlLGkoYT1jLmRhdGEpJiZpKGE9YS50cmFuc2l0aW9uKSl7Zm9yKGE9MDthPG8uYWN0aXZhdGUubGVuZ3RoOysrYSlvLmFjdGl2YXRlW2FdKGRpLGMpO3QucHVzaChjKTticmVha315KG4sZS5lbG0scil9ZnVuY3Rpb24geShlLHQsbil7aShlKSYmKGkobik/cC5wYXJlbnROb2RlKG4pPT09ZSYmcC5pbnNlcnRCZWZvcmUoZSx0LG4pOnAuYXBwZW5kQ2hpbGQoZSx0KSl9ZnVuY3Rpb24gZyhlLHQsbil7aWYoQXJyYXkuaXNBcnJheSh0KSl7MDtmb3IodmFyIHI9MDtyPHQubGVuZ3RoOysrcilfKHRbcl0sbixlLmVsbSxudWxsLCEwLHQscil9ZWxzZSBjKGUudGV4dCkmJnAuYXBwZW5kQ2hpbGQoZS5lbG0scC5jcmVhdGVUZXh0Tm9kZShTdHJpbmcoZS50ZXh0KSkpfWZ1bmN0aW9uIHcoZSl7d2hpbGUoZS5jb21wb25lbnRJbnN0YW5jZSllPWUuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlO3JldHVybiBpKGUudGFnKX1mdW5jdGlvbiBiKGUsbil7Zm9yKHZhciByPTA7cjxvLmNyZWF0ZS5sZW5ndGg7KytyKW8uY3JlYXRlW3JdKGRpLGUpO3Q9ZS5kYXRhLmhvb2ssaSh0KSYmKGkodC5jcmVhdGUpJiZ0LmNyZWF0ZShkaSxlKSxpKHQuaW5zZXJ0KSYmbi5wdXNoKGUpKX1mdW5jdGlvbiBrKGUpe3ZhciB0O2lmKGkodD1lLmZuU2NvcGVJZCkpcC5zZXRTdHlsZVNjb3BlKGUuZWxtLHQpO2Vsc2V7dmFyIG49ZTt3aGlsZShuKWkodD1uLmNvbnRleHQpJiZpKHQ9dC4kb3B0aW9ucy5fc2NvcGVJZCkmJnAuc2V0U3R5bGVTY29wZShlLmVsbSx0KSxuPW4ucGFyZW50fWkodD1MdCkmJnQhPT1lLmNvbnRleHQmJnQhPT1lLmZuQ29udGV4dCYmaSh0PXQuJG9wdGlvbnMuX3Njb3BlSWQpJiZwLnNldFN0eWxlU2NvcGUoZS5lbG0sdCl9ZnVuY3Rpb24geChlLHQsbixyLGksYSl7Zm9yKDtyPD1pOysrcilfKG5bcl0sYSxlLHQsITEsbixyKX1mdW5jdGlvbiBDKGUpe3ZhciB0LG4scj1lLmRhdGE7aWYoaShyKSlmb3IoaSh0PXIuaG9vaykmJmkodD10LmRlc3Ryb3kpJiZ0KGUpLHQ9MDt0PG8uZGVzdHJveS5sZW5ndGg7Kyt0KW8uZGVzdHJveVt0XShlKTtpZihpKHQ9ZS5jaGlsZHJlbikpZm9yKG49MDtuPGUuY2hpbGRyZW4ubGVuZ3RoOysrbilDKGUuY2hpbGRyZW5bbl0pfWZ1bmN0aW9uIFMoZSx0LG4scil7Zm9yKDtuPD1yOysrbil7dmFyIGE9dFtuXTtpKGEpJiYoaShhLnRhZyk/KFAoYSksQyhhKSk6ZChhLmVsbSkpfX1mdW5jdGlvbiBQKGUsdCl7aWYoaSh0KXx8aShlLmRhdGEpKXt2YXIgbixyPW8ucmVtb3ZlLmxlbmd0aCsxO2ZvcihpKHQpP3QubGlzdGVuZXJzKz1yOnQ9dShlLmVsbSxyKSxpKG49ZS5jb21wb25lbnRJbnN0YW5jZSkmJmkobj1uLl92bm9kZSkmJmkobi5kYXRhKSYmUChuLHQpLG49MDtuPG8ucmVtb3ZlLmxlbmd0aDsrK24pby5yZW1vdmVbbl0oZSx0KTtpKG49ZS5kYXRhLmhvb2spJiZpKG49bi5yZW1vdmUpP24oZSx0KTp0KCl9ZWxzZSBkKGUuZWxtKX1mdW5jdGlvbiBqKGUsdCxuLGEsbyl7dmFyIGMscyxsLHUsZD0wLG09MCxmPXQubGVuZ3RoLTEsaD10WzBdLHY9dFtmXSx5PW4ubGVuZ3RoLTEsZz1uWzBdLHc9blt5XSxiPSFvO3doaWxlKGQ8PWYmJm08PXkpcihoKT9oPXRbKytkXTpyKHYpP3Y9dFstLWZdOm1pKGgsZyk/KEEoaCxnLGEsbixtKSxoPXRbKytkXSxnPW5bKyttXSk6bWkodix3KT8oQSh2LHcsYSxuLHkpLHY9dFstLWZdLHc9blstLXldKTptaShoLHcpPyhBKGgsdyxhLG4seSksYiYmcC5pbnNlcnRCZWZvcmUoZSxoLmVsbSxwLm5leHRTaWJsaW5nKHYuZWxtKSksaD10WysrZF0sdz1uWy0teV0pOm1pKHYsZyk/KEEodixnLGEsbixtKSxiJiZwLmluc2VydEJlZm9yZShlLHYuZWxtLGguZWxtKSx2PXRbLS1mXSxnPW5bKyttXSk6KHIoYykmJihjPWhpKHQsZCxmKSkscz1pKGcua2V5KT9jW2cua2V5XTpPKGcsdCxkLGYpLHIocyk/XyhnLGEsZSxoLmVsbSwhMSxuLG0pOihsPXRbc10sbWkobCxnKT8oQShsLGcsYSxuLG0pLHRbc109dm9pZCAwLGImJnAuaW5zZXJ0QmVmb3JlKGUsbC5lbG0saC5lbG0pKTpfKGcsYSxlLGguZWxtLCExLG4sbSkpLGc9blsrK21dKTtkPmY/KHU9cihuW3krMV0pP251bGw6blt5KzFdLmVsbSx4KGUsdSxuLG0seSxhKSk6bT55JiZTKGUsdCxkLGYpfWZ1bmN0aW9uIE8oZSx0LG4scil7Zm9yKHZhciBhPW47YTxyO2ErKyl7dmFyIG89dFthXTtpZihpKG8pJiZtaShlLG8pKXJldHVybiBhfX1mdW5jdGlvbiBBKGUsdCxuLGMscyxsKXtpZihlIT09dCl7aSh0LmVsbSkmJmkoYykmJih0PWNbc109d2UodCkpO3ZhciB1PXQuZWxtPWUuZWxtO2lmKGEoZS5pc0FzeW5jUGxhY2Vob2xkZXIpKWkodC5hc3luY0ZhY3RvcnkucmVzb2x2ZWQpP0QoZS5lbG0sdCxuKTp0LmlzQXN5bmNQbGFjZWhvbGRlcj0hMDtlbHNlIGlmKGEodC5pc1N0YXRpYykmJmEoZS5pc1N0YXRpYykmJnQua2V5PT09ZS5rZXkmJihhKHQuaXNDbG9uZWQpfHxhKHQuaXNPbmNlKSkpdC5jb21wb25lbnRJbnN0YW5jZT1lLmNvbXBvbmVudEluc3RhbmNlO2Vsc2V7dmFyIGQsXz10LmRhdGE7aShfKSYmaShkPV8uaG9vaykmJmkoZD1kLnByZXBhdGNoKSYmZChlLHQpO3ZhciBtPWUuY2hpbGRyZW4sZj10LmNoaWxkcmVuO2lmKGkoXykmJncodCkpe2ZvcihkPTA7ZDxvLnVwZGF0ZS5sZW5ndGg7KytkKW8udXBkYXRlW2RdKGUsdCk7aShkPV8uaG9vaykmJmkoZD1kLnVwZGF0ZSkmJmQoZSx0KX1yKHQudGV4dCk/aShtKSYmaShmKT9tIT09ZiYmaih1LG0sZixuLGwpOmkoZik/KGkoZS50ZXh0KSYmcC5zZXRUZXh0Q29udGVudCh1LCIiKSx4KHUsbnVsbCxmLDAsZi5sZW5ndGgtMSxuKSk6aShtKT9TKHUsbSwwLG0ubGVuZ3RoLTEpOmkoZS50ZXh0KSYmcC5zZXRUZXh0Q29udGVudCh1LCIiKTplLnRleHQhPT10LnRleHQmJnAuc2V0VGV4dENvbnRlbnQodSx0LnRleHQpLGkoXykmJmkoZD1fLmhvb2spJiZpKGQ9ZC5wb3N0cGF0Y2gpJiZkKGUsdCl9fX1mdW5jdGlvbiBFKGUsdCxuKXtpZihhKG4pJiZpKGUucGFyZW50KSllLnBhcmVudC5kYXRhLnBlbmRpbmdJbnNlcnQ9dDtlbHNlIGZvcih2YXIgcj0wO3I8dC5sZW5ndGg7KytyKXRbcl0uZGF0YS5ob29rLmluc2VydCh0W3JdKX12YXIgVD1mKCJhdHRycyxjbGFzcyxzdGF0aWNDbGFzcyxzdGF0aWNTdHlsZSxrZXkiKTtmdW5jdGlvbiBEKGUsdCxuLHIpe3ZhciBvLGM9dC50YWcscz10LmRhdGEscD10LmNoaWxkcmVuO2lmKHI9cnx8cyYmcy5wcmUsdC5lbG09ZSxhKHQuaXNDb21tZW50KSYmaSh0LmFzeW5jRmFjdG9yeSkpcmV0dXJuIHQuaXNBc3luY1BsYWNlaG9sZGVyPSEwLCEwO2lmKGkocykmJihpKG89cy5ob29rKSYmaShvPW8uaW5pdCkmJm8odCwhMCksaShvPXQuY29tcG9uZW50SW5zdGFuY2UpKSlyZXR1cm4gaCh0LG4pLCEwO2lmKGkoYykpe2lmKGkocCkpaWYoZS5oYXNDaGlsZE5vZGVzKCkpaWYoaShvPXMpJiZpKG89by5kb21Qcm9wcykmJmkobz1vLmlubmVySFRNTCkpe2lmKG8hPT1lLmlubmVySFRNTClyZXR1cm4hMX1lbHNle2Zvcih2YXIgbD0hMCx1PWUuZmlyc3RDaGlsZCxkPTA7ZDxwLmxlbmd0aDtkKyspe2lmKCF1fHwhRCh1LHBbZF0sbixyKSl7bD0hMTticmVha311PXUubmV4dFNpYmxpbmd9aWYoIWx8fHUpcmV0dXJuITF9ZWxzZSBnKHQscCxuKTtpZihpKHMpKXt2YXIgXz0hMTtmb3IodmFyIG0gaW4gcylpZighVChtKSl7Xz0hMCxiKHQsbik7YnJlYWt9IV8mJnNbImNsYXNzIl0mJmR0KHNbImNsYXNzIl0pfX1lbHNlIGUuZGF0YSE9PXQudGV4dCYmKGUuZGF0YT10LnRleHQpO3JldHVybiEwfXJldHVybiBmdW5jdGlvbihlLHQsbixjKXtpZighcih0KSl7dmFyIHM9ITEsdT1bXTtpZihyKGUpKXM9ITAsXyh0LHUpO2Vsc2V7dmFyIGQ9aShlLm5vZGVUeXBlKTtpZighZCYmbWkoZSx0KSlBKGUsdCx1LG51bGwsbnVsbCxjKTtlbHNle2lmKGQpe2lmKDE9PT1lLm5vZGVUeXBlJiZlLmhhc0F0dHJpYnV0ZShGKSYmKGUucmVtb3ZlQXR0cmlidXRlKEYpLG49ITApLGEobikmJkQoZSx0LHUpKXJldHVybiBFKHQsdSwhMCksZTtlPWwoZSl9dmFyIG09ZS5lbG0sZj1wLnBhcmVudE5vZGUobSk7aWYoXyh0LHUsbS5fbGVhdmVDYj9udWxsOmYscC5uZXh0U2libGluZyhtKSksaSh0LnBhcmVudCkpe3ZhciBoPXQucGFyZW50LHY9dyh0KTt3aGlsZShoKXtmb3IodmFyIHk9MDt5PG8uZGVzdHJveS5sZW5ndGg7Kyt5KW8uZGVzdHJveVt5XShoKTtpZihoLmVsbT10LmVsbSx2KXtmb3IodmFyIGc9MDtnPG8uY3JlYXRlLmxlbmd0aDsrK2cpby5jcmVhdGVbZ10oZGksaCk7dmFyIGI9aC5kYXRhLmhvb2suaW5zZXJ0O2lmKGIubWVyZ2VkKWZvcih2YXIgaz0xO2s8Yi5mbnMubGVuZ3RoO2srKyliLmZuc1trXSgpfWVsc2UgdWkoaCk7aD1oLnBhcmVudH19aShmKT9TKGYsW2VdLDAsMCk6aShlLnRhZykmJkMoZSl9fXJldHVybiBFKHQsdSxzKSx0LmVsbX1pKGUpJiZDKGUpfX12YXIgeWk9e2NyZWF0ZTpnaSx1cGRhdGU6Z2ksZGVzdHJveTpmdW5jdGlvbihlKXtnaShlLGRpKX19O2Z1bmN0aW9uIGdpKGUsdCl7KGUuZGF0YS5kaXJlY3RpdmVzfHx0LmRhdGEuZGlyZWN0aXZlcykmJndpKGUsdCl9ZnVuY3Rpb24gd2koZSx0KXt2YXIgbixyLGksYT1lPT09ZGksbz10PT09ZGksYz1raShlLmRhdGEuZGlyZWN0aXZlcyxlLmNvbnRleHQpLHM9a2kodC5kYXRhLmRpcmVjdGl2ZXMsdC5jb250ZXh0KSxwPVtdLGw9W107Zm9yKG4gaW4gcylyPWNbbl0saT1zW25dLHI/KGkub2xkVmFsdWU9ci52YWx1ZSxDaShpLCJ1cGRhdGUiLHQsZSksaS5kZWYmJmkuZGVmLmNvbXBvbmVudFVwZGF0ZWQmJmwucHVzaChpKSk6KENpKGksImJpbmQiLHQsZSksaS5kZWYmJmkuZGVmLmluc2VydGVkJiZwLnB1c2goaSkpO2lmKHAubGVuZ3RoKXt2YXIgdT1mdW5jdGlvbigpe2Zvcih2YXIgbj0wO248cC5sZW5ndGg7bisrKUNpKHBbbl0sImluc2VydGVkIix0LGUpfTthP3l0KHQsImluc2VydCIsdSk6dSgpfWlmKGwubGVuZ3RoJiZ5dCh0LCJwb3N0cGF0Y2giLChmdW5jdGlvbigpe2Zvcih2YXIgbj0wO248bC5sZW5ndGg7bisrKUNpKGxbbl0sImNvbXBvbmVudFVwZGF0ZWQiLHQsZSl9KSksIWEpZm9yKG4gaW4gYylzW25dfHxDaShjW25dLCJ1bmJpbmQiLGUsZSxvKX12YXIgYmk9T2JqZWN0LmNyZWF0ZShudWxsKTtmdW5jdGlvbiBraShlLHQpe3ZhciBuLHIsaT1PYmplY3QuY3JlYXRlKG51bGwpO2lmKCFlKXJldHVybiBpO2ZvcihuPTA7bjxlLmxlbmd0aDtuKyspcj1lW25dLHIubW9kaWZpZXJzfHwoci5tb2RpZmllcnM9YmkpLGlbeGkocildPXIsci5kZWY9S2UodC4kb3B0aW9ucywiZGlyZWN0aXZlcyIsci5uYW1lLCEwKTtyZXR1cm4gaX1mdW5jdGlvbiB4aShlKXtyZXR1cm4gZS5yYXdOYW1lfHxlLm5hbWUrIi4iK09iamVjdC5rZXlzKGUubW9kaWZpZXJzfHx7fSkuam9pbigiLiIpfWZ1bmN0aW9uIENpKGUsdCxuLHIsaSl7dmFyIGE9ZS5kZWYmJmUuZGVmW3RdO2lmKGEpdHJ5e2Eobi5lbG0sZSxuLHIsaSl9Y2F0Y2gob28pe1plKG9vLG4uY29udGV4dCwiZGlyZWN0aXZlICIrZS5uYW1lKyIgIit0KyIgaG9vayIpfX12YXIgU2k9W2xpLHlpXTtmdW5jdGlvbiBQaShlLHQpe3ZhciBuPXQuY29tcG9uZW50T3B0aW9ucztpZigoIWkobil8fCExIT09bi5DdG9yLm9wdGlvbnMuaW5oZXJpdEF0dHJzKSYmKCFyKGUuZGF0YS5hdHRycyl8fCFyKHQuZGF0YS5hdHRycykpKXt2YXIgYSxvLGMscz10LmVsbSxwPWUuZGF0YS5hdHRyc3x8e30sbD10LmRhdGEuYXR0cnN8fHt9O2ZvcihhIGluIGkobC5fX29iX18pJiYobD10LmRhdGEuYXR0cnM9RSh7fSxsKSksbClvPWxbYV0sYz1wW2FdLGMhPT1vJiZqaShzLGEsbyk7Zm9yKGEgaW4oWXx8ZWUpJiZsLnZhbHVlIT09cC52YWx1ZSYmamkocywidmFsdWUiLGwudmFsdWUpLHApcihsW2FdKSYmKERyKGEpP3MucmVtb3ZlQXR0cmlidXRlTlMoVHIsenIoYSkpOkFyKGEpfHxzLnJlbW92ZUF0dHJpYnV0ZShhKSl9fWZ1bmN0aW9uIGppKGUsdCxuKXtlLnRhZ05hbWUuaW5kZXhPZigiLSIpPi0xP09pKGUsdCxuKTpFcih0KT9NcihuKT9lLnJlbW92ZUF0dHJpYnV0ZSh0KToobj0iYWxsb3dmdWxsc2NyZWVuIj09PXQmJiJFTUJFRCI9PT1lLnRhZ05hbWU/InRydWUiOnQsZS5zZXRBdHRyaWJ1dGUodCxuKSk6QXIodCk/ZS5zZXRBdHRyaWJ1dGUodCxNcihuKXx8ImZhbHNlIj09PW4/ImZhbHNlIjoidHJ1ZSIpOkRyKHQpP01yKG4pP2UucmVtb3ZlQXR0cmlidXRlTlMoVHIsenIodCkpOmUuc2V0QXR0cmlidXRlTlMoVHIsdCxuKTpPaShlLHQsbil9ZnVuY3Rpb24gT2koZSx0LG4pe2lmKE1yKG4pKWUucmVtb3ZlQXR0cmlidXRlKHQpO2Vsc2V7aWYoWSYmIVEmJigiVEVYVEFSRUEiPT09ZS50YWdOYW1lfHwiSU5QVVQiPT09ZS50YWdOYW1lKSYmInBsYWNlaG9sZGVyIj09PXQmJiFlLl9faWVwaCl7dmFyIHI9ZnVuY3Rpb24odCl7dC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSxlLnJlbW92ZUV2ZW50TGlzdGVuZXIoImlucHV0IixyKX07ZS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsciksZS5fX2llcGg9ITB9ZS5zZXRBdHRyaWJ1dGUodCxuKX19dmFyIEFpPXtjcmVhdGU6UGksdXBkYXRlOlBpfTtmdW5jdGlvbiBFaShlLHQpe3ZhciBuPXQuZWxtLGE9dC5kYXRhLG89ZS5kYXRhO2lmKCEocihhLnN0YXRpY0NsYXNzKSYmcihhLmNsYXNzKSYmKHIobyl8fHIoby5zdGF0aWNDbGFzcykmJnIoby5jbGFzcykpKSl7dmFyIGM9JHIodCkscz1uLl90cmFuc2l0aW9uQ2xhc3NlcztpKHMpJiYoYz1GcihjLExyKHMpKSksYyE9PW4uX3ByZXZDbGFzcyYmKG4uc2V0QXR0cmlidXRlKCJjbGFzcyIsYyksbi5fcHJldkNsYXNzPWMpfX12YXIgVGksRGk9e2NyZWF0ZTpFaSx1cGRhdGU6RWl9LHppPSJfX3IiLE1pPSJfX2MiO2Z1bmN0aW9uICRpKGUpe2lmKGkoZVt6aV0pKXt2YXIgdD1ZPyJjaGFuZ2UiOiJpbnB1dCI7ZVt0XT1bXS5jb25jYXQoZVt6aV0sZVt0XXx8W10pLGRlbGV0ZSBlW3ppXX1pKGVbTWldKSYmKGUuY2hhbmdlPVtdLmNvbmNhdChlW01pXSxlLmNoYW5nZXx8W10pLGRlbGV0ZSBlW01pXSl9ZnVuY3Rpb24gTmkoZSx0LG4pe3ZhciByPVRpO3JldHVybiBmdW5jdGlvbiBpKCl7dmFyIGE9dC5hcHBseShudWxsLGFyZ3VtZW50cyk7bnVsbCE9PWEmJkZpKGUsaSxuLHIpfX1mdW5jdGlvbiBJaShlLHQsbixyKXt0PXB0KHQpLFRpLmFkZEV2ZW50TGlzdGVuZXIoZSx0LHJlP3tjYXB0dXJlOm4scGFzc2l2ZTpyfTpuKX1mdW5jdGlvbiBGaShlLHQsbixyKXsocnx8VGkpLnJlbW92ZUV2ZW50TGlzdGVuZXIoZSx0Ll93aXRoVGFza3x8dCxuKX1mdW5jdGlvbiBMaShlLHQpe2lmKCFyKGUuZGF0YS5vbil8fCFyKHQuZGF0YS5vbikpe3ZhciBuPXQuZGF0YS5vbnx8e30saT1lLmRhdGEub258fHt9O1RpPXQuZWxtLCRpKG4pLHZ0KG4saSxJaSxGaSxOaSx0LmNvbnRleHQpLFRpPXZvaWQgMH19dmFyIFJpPXtjcmVhdGU6TGksdXBkYXRlOkxpfTtmdW5jdGlvbiBWaShlLHQpe2lmKCFyKGUuZGF0YS5kb21Qcm9wcyl8fCFyKHQuZGF0YS5kb21Qcm9wcykpe3ZhciBuLGEsbz10LmVsbSxjPWUuZGF0YS5kb21Qcm9wc3x8e30scz10LmRhdGEuZG9tUHJvcHN8fHt9O2ZvcihuIGluIGkocy5fX29iX18pJiYocz10LmRhdGEuZG9tUHJvcHM9RSh7fSxzKSksYylyKHNbbl0pJiYob1tuXT0iIik7Zm9yKG4gaW4gcyl7aWYoYT1zW25dLCJ0ZXh0Q29udGVudCI9PT1ufHwiaW5uZXJIVE1MIj09PW4pe2lmKHQuY2hpbGRyZW4mJih0LmNoaWxkcmVuLmxlbmd0aD0wKSxhPT09Y1tuXSljb250aW51ZTsxPT09by5jaGlsZE5vZGVzLmxlbmd0aCYmby5yZW1vdmVDaGlsZChvLmNoaWxkTm9kZXNbMF0pfWlmKCJ2YWx1ZSI9PT1uKXtvLl92YWx1ZT1hO3ZhciBwPXIoYSk/IiI6U3RyaW5nKGEpO1VpKG8scCkmJihvLnZhbHVlPXApfWVsc2Ugb1tuXT1hfX19ZnVuY3Rpb24gVWkoZSx0KXtyZXR1cm4hZS5jb21wb3NpbmcmJigiT1BUSU9OIj09PWUudGFnTmFtZXx8SGkoZSx0KXx8R2koZSx0KSl9ZnVuY3Rpb24gSGkoZSx0KXt2YXIgbj0hMDt0cnl7bj1kb2N1bWVudC5hY3RpdmVFbGVtZW50IT09ZX1jYXRjaChvbyl7fXJldHVybiBuJiZlLnZhbHVlIT09dH1mdW5jdGlvbiBHaShlLHQpe3ZhciBuPWUudmFsdWUscj1lLl92TW9kaWZpZXJzO2lmKGkocikpe2lmKHIubGF6eSlyZXR1cm4hMTtpZihyLm51bWJlcilyZXR1cm4gbShuKSE9PW0odCk7aWYoci50cmltKXJldHVybiBuLnRyaW0oKSE9PXQudHJpbSgpfXJldHVybiBuIT09dH12YXIgS2k9e2NyZWF0ZTpWaSx1cGRhdGU6Vml9LEJpPXcoKGZ1bmN0aW9uKGUpe3ZhciB0PXt9LG49LzsoPyFbXihdKlwpKS9nLHI9LzooLispLztyZXR1cm4gZS5zcGxpdChuKS5mb3JFYWNoKChmdW5jdGlvbihlKXtpZihlKXt2YXIgbj1lLnNwbGl0KHIpO24ubGVuZ3RoPjEmJih0W25bMF0udHJpbSgpXT1uWzFdLnRyaW0oKSl9fSkpLHR9KSk7ZnVuY3Rpb24gcWkoZSl7dmFyIHQ9SmkoZS5zdHlsZSk7cmV0dXJuIGUuc3RhdGljU3R5bGU/RShlLnN0YXRpY1N0eWxlLHQpOnR9ZnVuY3Rpb24gSmkoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/VChlKToic3RyaW5nIj09PXR5cGVvZiBlP0JpKGUpOmV9ZnVuY3Rpb24gV2koZSx0KXt2YXIgbixyPXt9O2lmKHQpe3ZhciBpPWU7d2hpbGUoaS5jb21wb25lbnRJbnN0YW5jZSlpPWkuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlLGkmJmkuZGF0YSYmKG49cWkoaS5kYXRhKSkmJkUocixuKX0obj1xaShlLmRhdGEpKSYmRShyLG4pO3ZhciBhPWU7d2hpbGUoYT1hLnBhcmVudClhLmRhdGEmJihuPXFpKGEuZGF0YSkpJiZFKHIsbik7cmV0dXJuIHJ9dmFyIFhpLFppPS9eLS0vLFlpPS9ccyohaW1wb3J0YW50JC8sUWk9ZnVuY3Rpb24oZSx0LG4pe2lmKFppLnRlc3QodCkpZS5zdHlsZS5zZXRQcm9wZXJ0eSh0LG4pO2Vsc2UgaWYoWWkudGVzdChuKSllLnN0eWxlLnNldFByb3BlcnR5KHQsbi5yZXBsYWNlKFlpLCIiKSwiaW1wb3J0YW50Iik7ZWxzZXt2YXIgcj10YSh0KTtpZihBcnJheS5pc0FycmF5KG4pKWZvcih2YXIgaT0wLGE9bi5sZW5ndGg7aTxhO2krKyllLnN0eWxlW3JdPW5baV07ZWxzZSBlLnN0eWxlW3JdPW59fSxlYT1bIldlYmtpdCIsIk1veiIsIm1zIl0sdGE9dygoZnVuY3Rpb24oZSl7aWYoWGk9WGl8fGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlLGU9ayhlKSwiZmlsdGVyIiE9PWUmJmUgaW4gWGkpcmV0dXJuIGU7Zm9yKHZhciB0PWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrZS5zbGljZSgxKSxuPTA7bjxlYS5sZW5ndGg7bisrKXt2YXIgcj1lYVtuXSt0O2lmKHIgaW4gWGkpcmV0dXJuIHJ9fSkpO2Z1bmN0aW9uIG5hKGUsdCl7dmFyIG49dC5kYXRhLGE9ZS5kYXRhO2lmKCEocihuLnN0YXRpY1N0eWxlKSYmcihuLnN0eWxlKSYmcihhLnN0YXRpY1N0eWxlKSYmcihhLnN0eWxlKSkpe3ZhciBvLGMscz10LmVsbSxwPWEuc3RhdGljU3R5bGUsbD1hLm5vcm1hbGl6ZWRTdHlsZXx8YS5zdHlsZXx8e30sdT1wfHxsLGQ9SmkodC5kYXRhLnN0eWxlKXx8e307dC5kYXRhLm5vcm1hbGl6ZWRTdHlsZT1pKGQuX19vYl9fKT9FKHt9LGQpOmQ7dmFyIF89V2kodCwhMCk7Zm9yKGMgaW4gdSlyKF9bY10pJiZRaShzLGMsIiIpO2ZvcihjIGluIF8pbz1fW2NdLG8hPT11W2NdJiZRaShzLGMsbnVsbD09bz8iIjpvKX19dmFyIHJhPXtjcmVhdGU6bmEsdXBkYXRlOm5hfSxpYT0vXHMrLztmdW5jdGlvbiBhYShlLHQpe2lmKHQmJih0PXQudHJpbSgpKSlpZihlLmNsYXNzTGlzdCl0LmluZGV4T2YoIiAiKT4tMT90LnNwbGl0KGlhKS5mb3JFYWNoKChmdW5jdGlvbih0KXtyZXR1cm4gZS5jbGFzc0xpc3QuYWRkKHQpfSkpOmUuY2xhc3NMaXN0LmFkZCh0KTtlbHNle3ZhciBuPSIgIisoZS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIiKSsiICI7bi5pbmRleE9mKCIgIit0KyIgIik8MCYmZS5zZXRBdHRyaWJ1dGUoImNsYXNzIiwobit0KS50cmltKCkpfX1mdW5jdGlvbiBvYShlLHQpe2lmKHQmJih0PXQudHJpbSgpKSlpZihlLmNsYXNzTGlzdCl0LmluZGV4T2YoIiAiKT4tMT90LnNwbGl0KGlhKS5mb3JFYWNoKChmdW5jdGlvbih0KXtyZXR1cm4gZS5jbGFzc0xpc3QucmVtb3ZlKHQpfSkpOmUuY2xhc3NMaXN0LnJlbW92ZSh0KSxlLmNsYXNzTGlzdC5sZW5ndGh8fGUucmVtb3ZlQXR0cmlidXRlKCJjbGFzcyIpO2Vsc2V7dmFyIG49IiAiKyhlLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiIpKyIgIixyPSIgIit0KyIgIjt3aGlsZShuLmluZGV4T2Yocik+PTApbj1uLnJlcGxhY2UociwiICIpO249bi50cmltKCksbj9lLnNldEF0dHJpYnV0ZSgiY2xhc3MiLG4pOmUucmVtb3ZlQXR0cmlidXRlKCJjbGFzcyIpfX1mdW5jdGlvbiBjYShlKXtpZihlKXtpZigib2JqZWN0Ij09PXR5cGVvZiBlKXt2YXIgdD17fTtyZXR1cm4hMSE9PWUuY3NzJiZFKHQsc2EoZS5uYW1lfHwidiIpKSxFKHQsZSksdH1yZXR1cm4ic3RyaW5nIj09PXR5cGVvZiBlP3NhKGUpOnZvaWQgMH19dmFyIHNhPXcoKGZ1bmN0aW9uKGUpe3JldHVybntlbnRlckNsYXNzOmUrIi1lbnRlciIsZW50ZXJUb0NsYXNzOmUrIi1lbnRlci10byIsZW50ZXJBY3RpdmVDbGFzczplKyItZW50ZXItYWN0aXZlIixsZWF2ZUNsYXNzOmUrIi1sZWF2ZSIsbGVhdmVUb0NsYXNzOmUrIi1sZWF2ZS10byIsbGVhdmVBY3RpdmVDbGFzczplKyItbGVhdmUtYWN0aXZlIn19KSkscGE9SiYmIVEsbGE9InRyYW5zaXRpb24iLHVhPSJhbmltYXRpb24iLGRhPSJ0cmFuc2l0aW9uIixfYT0idHJhbnNpdGlvbmVuZCIsbWE9ImFuaW1hdGlvbiIsZmE9ImFuaW1hdGlvbmVuZCI7cGEmJih2b2lkIDA9PT13aW5kb3cub250cmFuc2l0aW9uZW5kJiZ2b2lkIDAhPT13aW5kb3cub253ZWJraXR0cmFuc2l0aW9uZW5kJiYoZGE9IldlYmtpdFRyYW5zaXRpb24iLF9hPSJ3ZWJraXRUcmFuc2l0aW9uRW5kIiksdm9pZCAwPT09d2luZG93Lm9uYW5pbWF0aW9uZW5kJiZ2b2lkIDAhPT13aW5kb3cub253ZWJraXRhbmltYXRpb25lbmQmJihtYT0iV2Via2l0QW5pbWF0aW9uIixmYT0id2Via2l0QW5pbWF0aW9uRW5kIikpO3ZhciBoYT1KP3dpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWU/d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZS5iaW5kKHdpbmRvdyk6c2V0VGltZW91dDpmdW5jdGlvbihlKXtyZXR1cm4gZSgpfTtmdW5jdGlvbiB2YShlKXtoYSgoZnVuY3Rpb24oKXtoYShlKX0pKX1mdW5jdGlvbiB5YShlLHQpe3ZhciBuPWUuX3RyYW5zaXRpb25DbGFzc2VzfHwoZS5fdHJhbnNpdGlvbkNsYXNzZXM9W10pO24uaW5kZXhPZih0KTwwJiYobi5wdXNoKHQpLGFhKGUsdCkpfWZ1bmN0aW9uIGdhKGUsdCl7ZS5fdHJhbnNpdGlvbkNsYXNzZXMmJnYoZS5fdHJhbnNpdGlvbkNsYXNzZXMsdCksb2EoZSx0KX1mdW5jdGlvbiB3YShlLHQsbil7dmFyIHI9a2EoZSx0KSxpPXIudHlwZSxhPXIudGltZW91dCxvPXIucHJvcENvdW50O2lmKCFpKXJldHVybiBuKCk7dmFyIGM9aT09PWxhP19hOmZhLHM9MCxwPWZ1bmN0aW9uKCl7ZS5yZW1vdmVFdmVudExpc3RlbmVyKGMsbCksbigpfSxsPWZ1bmN0aW9uKHQpe3QudGFyZ2V0PT09ZSYmKytzPj1vJiZwKCl9O3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7czxvJiZwKCl9KSxhKzEpLGUuYWRkRXZlbnRMaXN0ZW5lcihjLGwpfXZhciBiYT0vXGIodHJhbnNmb3JtfGFsbCkoLHwkKS87ZnVuY3Rpb24ga2EoZSx0KXt2YXIgbixyPXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGUpLGk9KHJbZGErIkRlbGF5Il18fCIiKS5zcGxpdCgiLCAiKSxhPShyW2RhKyJEdXJhdGlvbiJdfHwiIikuc3BsaXQoIiwgIiksbz14YShpLGEpLGM9KHJbbWErIkRlbGF5Il18fCIiKS5zcGxpdCgiLCAiKSxzPShyW21hKyJEdXJhdGlvbiJdfHwiIikuc3BsaXQoIiwgIikscD14YShjLHMpLGw9MCx1PTA7dD09PWxhP28+MCYmKG49bGEsbD1vLHU9YS5sZW5ndGgpOnQ9PT11YT9wPjAmJihuPXVhLGw9cCx1PXMubGVuZ3RoKToobD1NYXRoLm1heChvLHApLG49bD4wP28+cD9sYTp1YTpudWxsLHU9bj9uPT09bGE/YS5sZW5ndGg6cy5sZW5ndGg6MCk7dmFyIGQ9bj09PWxhJiZiYS50ZXN0KHJbZGErIlByb3BlcnR5Il0pO3JldHVybnt0eXBlOm4sdGltZW91dDpsLHByb3BDb3VudDp1LGhhc1RyYW5zZm9ybTpkfX1mdW5jdGlvbiB4YShlLHQpe3doaWxlKGUubGVuZ3RoPHQubGVuZ3RoKWU9ZS5jb25jYXQoZSk7cmV0dXJuIE1hdGgubWF4LmFwcGx5KG51bGwsdC5tYXAoKGZ1bmN0aW9uKHQsbil7cmV0dXJuIENhKHQpK0NhKGVbbl0pfSkpKX1mdW5jdGlvbiBDYShlKXtyZXR1cm4gMWUzKk51bWJlcihlLnNsaWNlKDAsLTEpLnJlcGxhY2UoIiwiLCIuIikpfWZ1bmN0aW9uIFNhKGUsdCl7dmFyIG49ZS5lbG07aShuLl9sZWF2ZUNiKSYmKG4uX2xlYXZlQ2IuY2FuY2VsbGVkPSEwLG4uX2xlYXZlQ2IoKSk7dmFyIGE9Y2EoZS5kYXRhLnRyYW5zaXRpb24pO2lmKCFyKGEpJiYhaShuLl9lbnRlckNiKSYmMT09PW4ubm9kZVR5cGUpe3ZhciBvPWEuY3NzLGM9YS50eXBlLHA9YS5lbnRlckNsYXNzLGw9YS5lbnRlclRvQ2xhc3MsdT1hLmVudGVyQWN0aXZlQ2xhc3MsZD1hLmFwcGVhckNsYXNzLF89YS5hcHBlYXJUb0NsYXNzLGY9YS5hcHBlYXJBY3RpdmVDbGFzcyxoPWEuYmVmb3JlRW50ZXIsdj1hLmVudGVyLHk9YS5hZnRlckVudGVyLGc9YS5lbnRlckNhbmNlbGxlZCx3PWEuYmVmb3JlQXBwZWFyLGI9YS5hcHBlYXIsaz1hLmFmdGVyQXBwZWFyLHg9YS5hcHBlYXJDYW5jZWxsZWQsQz1hLmR1cmF0aW9uLFM9THQsUD1MdC4kdm5vZGU7d2hpbGUoUCYmUC5wYXJlbnQpUD1QLnBhcmVudCxTPVAuY29udGV4dDt2YXIgaj0hUy5faXNNb3VudGVkfHwhZS5pc1Jvb3RJbnNlcnQ7aWYoIWp8fGJ8fCIiPT09Yil7dmFyIE89aiYmZD9kOnAsQT1qJiZmP2Y6dSxFPWomJl8/XzpsLFQ9aiYmd3x8aCxEPWomJiJmdW5jdGlvbiI9PT10eXBlb2YgYj9iOnYsej1qJiZrfHx5LE09aiYmeHx8ZywkPW0ocyhDKT9DLmVudGVyOkMpOzA7dmFyIE49ITEhPT1vJiYhUSxGPU9hKEQpLEw9bi5fZW50ZXJDYj1JKChmdW5jdGlvbigpe04mJihnYShuLEUpLGdhKG4sQSkpLEwuY2FuY2VsbGVkPyhOJiZnYShuLE8pLE0mJk0obikpOnomJnoobiksbi5fZW50ZXJDYj1udWxsfSkpO2UuZGF0YS5zaG93fHx5dChlLCJpbnNlcnQiLChmdW5jdGlvbigpe3ZhciB0PW4ucGFyZW50Tm9kZSxyPXQmJnQuX3BlbmRpbmcmJnQuX3BlbmRpbmdbZS5rZXldO3ImJnIudGFnPT09ZS50YWcmJnIuZWxtLl9sZWF2ZUNiJiZyLmVsbS5fbGVhdmVDYigpLEQmJkQobixMKX0pKSxUJiZUKG4pLE4mJih5YShuLE8pLHlhKG4sQSksdmEoKGZ1bmN0aW9uKCl7Z2EobixPKSxMLmNhbmNlbGxlZHx8KHlhKG4sRSksRnx8KGphKCQpP3NldFRpbWVvdXQoTCwkKTp3YShuLGMsTCkpKX0pKSksZS5kYXRhLnNob3cmJih0JiZ0KCksRCYmRChuLEwpKSxOfHxGfHxMKCl9fX1mdW5jdGlvbiBQYShlLHQpe3ZhciBuPWUuZWxtO2kobi5fZW50ZXJDYikmJihuLl9lbnRlckNiLmNhbmNlbGxlZD0hMCxuLl9lbnRlckNiKCkpO3ZhciBhPWNhKGUuZGF0YS50cmFuc2l0aW9uKTtpZihyKGEpfHwxIT09bi5ub2RlVHlwZSlyZXR1cm4gdCgpO2lmKCFpKG4uX2xlYXZlQ2IpKXt2YXIgbz1hLmNzcyxjPWEudHlwZSxwPWEubGVhdmVDbGFzcyxsPWEubGVhdmVUb0NsYXNzLHU9YS5sZWF2ZUFjdGl2ZUNsYXNzLGQ9YS5iZWZvcmVMZWF2ZSxfPWEubGVhdmUsZj1hLmFmdGVyTGVhdmUsaD1hLmxlYXZlQ2FuY2VsbGVkLHY9YS5kZWxheUxlYXZlLHk9YS5kdXJhdGlvbixnPSExIT09byYmIVEsdz1PYShfKSxiPW0ocyh5KT95LmxlYXZlOnkpOzA7dmFyIGs9bi5fbGVhdmVDYj1JKChmdW5jdGlvbigpe24ucGFyZW50Tm9kZSYmbi5wYXJlbnROb2RlLl9wZW5kaW5nJiYobi5wYXJlbnROb2RlLl9wZW5kaW5nW2Uua2V5XT1udWxsKSxnJiYoZ2EobixsKSxnYShuLHUpKSxrLmNhbmNlbGxlZD8oZyYmZ2EobixwKSxoJiZoKG4pKToodCgpLGYmJmYobikpLG4uX2xlYXZlQ2I9bnVsbH0pKTt2P3YoeCk6eCgpfWZ1bmN0aW9uIHgoKXtrLmNhbmNlbGxlZHx8KCFlLmRhdGEuc2hvdyYmbi5wYXJlbnROb2RlJiYoKG4ucGFyZW50Tm9kZS5fcGVuZGluZ3x8KG4ucGFyZW50Tm9kZS5fcGVuZGluZz17fSkpW2Uua2V5XT1lKSxkJiZkKG4pLGcmJih5YShuLHApLHlhKG4sdSksdmEoKGZ1bmN0aW9uKCl7Z2EobixwKSxrLmNhbmNlbGxlZHx8KHlhKG4sbCksd3x8KGphKGIpP3NldFRpbWVvdXQoayxiKTp3YShuLGMsaykpKX0pKSksXyYmXyhuLGspLGd8fHd8fGsoKSl9fWZ1bmN0aW9uIGphKGUpe3JldHVybiJudW1iZXIiPT09dHlwZW9mIGUmJiFpc05hTihlKX1mdW5jdGlvbiBPYShlKXtpZihyKGUpKXJldHVybiExO3ZhciB0PWUuZm5zO3JldHVybiBpKHQpP09hKEFycmF5LmlzQXJyYXkodCk/dFswXTp0KTooZS5fbGVuZ3RofHxlLmxlbmd0aCk+MX1mdW5jdGlvbiBBYShlLHQpeyEwIT09dC5kYXRhLnNob3cmJlNhKHQpfXZhciBFYT1KP3tjcmVhdGU6QWEsYWN0aXZhdGU6QWEscmVtb3ZlOmZ1bmN0aW9uKGUsdCl7ITAhPT1lLmRhdGEuc2hvdz9QYShlLHQpOnQoKX19Ont9LFRhPVtBaSxEaSxSaSxLaSxyYSxFYV0sRGE9VGEuY29uY2F0KFNpKSx6YT12aSh7bm9kZU9wczpwaSxtb2R1bGVzOkRhfSk7USYmZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VsZWN0aW9uY2hhbmdlIiwoZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5hY3RpdmVFbGVtZW50O2UmJmUudm1vZGVsJiZWYShlLCJpbnB1dCIpfSkpO3ZhciBNYT17aW5zZXJ0ZWQ6ZnVuY3Rpb24oZSx0LG4scil7InNlbGVjdCI9PT1uLnRhZz8oci5lbG0mJiFyLmVsbS5fdk9wdGlvbnM/eXQobiwicG9zdHBhdGNoIiwoZnVuY3Rpb24oKXtNYS5jb21wb25lbnRVcGRhdGVkKGUsdCxuKX0pKTokYShlLHQsbi5jb250ZXh0KSxlLl92T3B0aW9ucz1bXS5tYXAuY2FsbChlLm9wdGlvbnMsRmEpKTooInRleHRhcmVhIj09PW4udGFnfHxXcihlLnR5cGUpKSYmKGUuX3ZNb2RpZmllcnM9dC5tb2RpZmllcnMsdC5tb2RpZmllcnMubGF6eXx8KGUuYWRkRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25zdGFydCIsTGEpLGUuYWRkRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25lbmQiLFJhKSxlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsUmEpLFEmJihlLnZtb2RlbD0hMCkpKX0sY29tcG9uZW50VXBkYXRlZDpmdW5jdGlvbihlLHQsbil7aWYoInNlbGVjdCI9PT1uLnRhZyl7JGEoZSx0LG4uY29udGV4dCk7dmFyIHI9ZS5fdk9wdGlvbnMsaT1lLl92T3B0aW9ucz1bXS5tYXAuY2FsbChlLm9wdGlvbnMsRmEpO2lmKGkuc29tZSgoZnVuY3Rpb24oZSx0KXtyZXR1cm4hJChlLHJbdF0pfSkpKXt2YXIgYT1lLm11bHRpcGxlP3QudmFsdWUuc29tZSgoZnVuY3Rpb24oZSl7cmV0dXJuIElhKGUsaSl9KSk6dC52YWx1ZSE9PXQub2xkVmFsdWUmJklhKHQudmFsdWUsaSk7YSYmVmEoZSwiY2hhbmdlIil9fX19O2Z1bmN0aW9uICRhKGUsdCxuKXtOYShlLHQsbiksKFl8fGVlKSYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXtOYShlLHQsbil9KSwwKX1mdW5jdGlvbiBOYShlLHQsbil7dmFyIHI9dC52YWx1ZSxpPWUubXVsdGlwbGU7aWYoIWl8fEFycmF5LmlzQXJyYXkocikpe2Zvcih2YXIgYSxvLGM9MCxzPWUub3B0aW9ucy5sZW5ndGg7YzxzO2MrKylpZihvPWUub3B0aW9uc1tjXSxpKWE9TihyLEZhKG8pKT4tMSxvLnNlbGVjdGVkIT09YSYmKG8uc2VsZWN0ZWQ9YSk7ZWxzZSBpZigkKEZhKG8pLHIpKXJldHVybiB2b2lkKGUuc2VsZWN0ZWRJbmRleCE9PWMmJihlLnNlbGVjdGVkSW5kZXg9YykpO2l8fChlLnNlbGVjdGVkSW5kZXg9LTEpfX1mdW5jdGlvbiBJYShlLHQpe3JldHVybiB0LmV2ZXJ5KChmdW5jdGlvbih0KXtyZXR1cm4hJCh0LGUpfSkpfWZ1bmN0aW9uIEZhKGUpe3JldHVybiJfdmFsdWUiaW4gZT9lLl92YWx1ZTplLnZhbHVlfWZ1bmN0aW9uIExhKGUpe2UudGFyZ2V0LmNvbXBvc2luZz0hMH1mdW5jdGlvbiBSYShlKXtlLnRhcmdldC5jb21wb3NpbmcmJihlLnRhcmdldC5jb21wb3Npbmc9ITEsVmEoZS50YXJnZXQsImlucHV0IikpfWZ1bmN0aW9uIFZhKGUsdCl7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkhUTUxFdmVudHMiKTtuLmluaXRFdmVudCh0LCEwLCEwKSxlLmRpc3BhdGNoRXZlbnQobil9ZnVuY3Rpb24gVWEoZSl7cmV0dXJuIWUuY29tcG9uZW50SW5zdGFuY2V8fGUuZGF0YSYmZS5kYXRhLnRyYW5zaXRpb24/ZTpVYShlLmNvbXBvbmVudEluc3RhbmNlLl92bm9kZSl9dmFyIEhhPXtiaW5kOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj10LnZhbHVlO249VWEobik7dmFyIGk9bi5kYXRhJiZuLmRhdGEudHJhbnNpdGlvbixhPWUuX192T3JpZ2luYWxEaXNwbGF5PSJub25lIj09PWUuc3R5bGUuZGlzcGxheT8iIjplLnN0eWxlLmRpc3BsYXk7ciYmaT8obi5kYXRhLnNob3c9ITAsU2EobiwoZnVuY3Rpb24oKXtlLnN0eWxlLmRpc3BsYXk9YX0pKSk6ZS5zdHlsZS5kaXNwbGF5PXI/YToibm9uZSJ9LHVwZGF0ZTpmdW5jdGlvbihlLHQsbil7dmFyIHI9dC52YWx1ZSxpPXQub2xkVmFsdWU7aWYoIXIhPT0haSl7bj1VYShuKTt2YXIgYT1uLmRhdGEmJm4uZGF0YS50cmFuc2l0aW9uO2E/KG4uZGF0YS5zaG93PSEwLHI/U2EobiwoZnVuY3Rpb24oKXtlLnN0eWxlLmRpc3BsYXk9ZS5fX3ZPcmlnaW5hbERpc3BsYXl9KSk6UGEobiwoZnVuY3Rpb24oKXtlLnN0eWxlLmRpc3BsYXk9Im5vbmUifSkpKTplLnN0eWxlLmRpc3BsYXk9cj9lLl9fdk9yaWdpbmFsRGlzcGxheToibm9uZSJ9fSx1bmJpbmQ6ZnVuY3Rpb24oZSx0LG4scixpKXtpfHwoZS5zdHlsZS5kaXNwbGF5PWUuX192T3JpZ2luYWxEaXNwbGF5KX19LEdhPXttb2RlbDpNYSxzaG93OkhhfSxLYT17bmFtZTpTdHJpbmcsYXBwZWFyOkJvb2xlYW4sY3NzOkJvb2xlYW4sbW9kZTpTdHJpbmcsdHlwZTpTdHJpbmcsZW50ZXJDbGFzczpTdHJpbmcsbGVhdmVDbGFzczpTdHJpbmcsZW50ZXJUb0NsYXNzOlN0cmluZyxsZWF2ZVRvQ2xhc3M6U3RyaW5nLGVudGVyQWN0aXZlQ2xhc3M6U3RyaW5nLGxlYXZlQWN0aXZlQ2xhc3M6U3RyaW5nLGFwcGVhckNsYXNzOlN0cmluZyxhcHBlYXJBY3RpdmVDbGFzczpTdHJpbmcsYXBwZWFyVG9DbGFzczpTdHJpbmcsZHVyYXRpb246W051bWJlcixTdHJpbmcsT2JqZWN0XX07ZnVuY3Rpb24gQmEoZSl7dmFyIHQ9ZSYmZS5jb21wb25lbnRPcHRpb25zO3JldHVybiB0JiZ0LkN0b3Iub3B0aW9ucy5hYnN0cmFjdD9CYShBdCh0LmNoaWxkcmVuKSk6ZX1mdW5jdGlvbiBxYShlKXt2YXIgdD17fSxuPWUuJG9wdGlvbnM7Zm9yKHZhciByIGluIG4ucHJvcHNEYXRhKXRbcl09ZVtyXTt2YXIgaT1uLl9wYXJlbnRMaXN0ZW5lcnM7Zm9yKHZhciBhIGluIGkpdFtrKGEpXT1pW2FdO3JldHVybiB0fWZ1bmN0aW9uIEphKGUsdCl7aWYoL1xkLWtlZXAtYWxpdmUkLy50ZXN0KHQudGFnKSlyZXR1cm4gZSgia2VlcC1hbGl2ZSIse3Byb3BzOnQuY29tcG9uZW50T3B0aW9ucy5wcm9wc0RhdGF9KX1mdW5jdGlvbiBXYShlKXt3aGlsZShlPWUucGFyZW50KWlmKGUuZGF0YS50cmFuc2l0aW9uKXJldHVybiEwfWZ1bmN0aW9uIFhhKGUsdCl7cmV0dXJuIHQua2V5PT09ZS5rZXkmJnQudGFnPT09ZS50YWd9dmFyIFphPWZ1bmN0aW9uKGUpe3JldHVybiBlLnRhZ3x8T3QoZSl9LFlhPWZ1bmN0aW9uKGUpe3JldHVybiJzaG93Ij09PWUubmFtZX0sUWE9e25hbWU6InRyYW5zaXRpb24iLHByb3BzOkthLGFic3RyYWN0OiEwLHJlbmRlcjpmdW5jdGlvbihlKXt2YXIgdD10aGlzLG49dGhpcy4kc2xvdHMuZGVmYXVsdDtpZihuJiYobj1uLmZpbHRlcihaYSksbi5sZW5ndGgpKXswO3ZhciByPXRoaXMubW9kZTswO3ZhciBpPW5bMF07aWYoV2EodGhpcy4kdm5vZGUpKXJldHVybiBpO3ZhciBhPUJhKGkpO2lmKCFhKXJldHVybiBpO2lmKHRoaXMuX2xlYXZpbmcpcmV0dXJuIEphKGUsaSk7dmFyIG89Il9fdHJhbnNpdGlvbi0iK3RoaXMuX3VpZCsiLSI7YS5rZXk9bnVsbD09YS5rZXk/YS5pc0NvbW1lbnQ/bysiY29tbWVudCI6bythLnRhZzpjKGEua2V5KT8wPT09U3RyaW5nKGEua2V5KS5pbmRleE9mKG8pP2Eua2V5Om8rYS5rZXk6YS5rZXk7dmFyIHM9KGEuZGF0YXx8KGEuZGF0YT17fSkpLnRyYW5zaXRpb249cWEodGhpcykscD10aGlzLl92bm9kZSxsPUJhKHApO2lmKGEuZGF0YS5kaXJlY3RpdmVzJiZhLmRhdGEuZGlyZWN0aXZlcy5zb21lKFlhKSYmKGEuZGF0YS5zaG93PSEwKSxsJiZsLmRhdGEmJiFYYShhLGwpJiYhT3QobCkmJighbC5jb21wb25lbnRJbnN0YW5jZXx8IWwuY29tcG9uZW50SW5zdGFuY2UuX3Zub2RlLmlzQ29tbWVudCkpe3ZhciB1PWwuZGF0YS50cmFuc2l0aW9uPUUoe30scyk7aWYoIm91dC1pbiI9PT1yKXJldHVybiB0aGlzLl9sZWF2aW5nPSEwLHl0KHUsImFmdGVyTGVhdmUiLChmdW5jdGlvbigpe3QuX2xlYXZpbmc9ITEsdC4kZm9yY2VVcGRhdGUoKX0pKSxKYShlLGkpO2lmKCJpbi1vdXQiPT09cil7aWYoT3QoYSkpcmV0dXJuIHA7dmFyIGQsXz1mdW5jdGlvbigpe2QoKX07eXQocywiYWZ0ZXJFbnRlciIsXykseXQocywiZW50ZXJDYW5jZWxsZWQiLF8pLHl0KHUsImRlbGF5TGVhdmUiLChmdW5jdGlvbihlKXtkPWV9KSl9fXJldHVybiBpfX19LGVvPUUoe3RhZzpTdHJpbmcsbW92ZUNsYXNzOlN0cmluZ30sS2EpO2RlbGV0ZSBlby5tb2RlO3ZhciB0bz17cHJvcHM6ZW8sYmVmb3JlTW91bnQ6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9dGhpcy5fdXBkYXRlO3RoaXMuX3VwZGF0ZT1mdW5jdGlvbihuLHIpe3ZhciBpPVJ0KGUpO2UuX19wYXRjaF9fKGUuX3Zub2RlLGUua2VwdCwhMSwhMCksZS5fdm5vZGU9ZS5rZXB0LGkoKSx0LmNhbGwoZSxuLHIpfX0scmVuZGVyOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD10aGlzLnRhZ3x8dGhpcy4kdm5vZGUuZGF0YS50YWd8fCJzcGFuIixuPU9iamVjdC5jcmVhdGUobnVsbCkscj10aGlzLnByZXZDaGlsZHJlbj10aGlzLmNoaWxkcmVuLGk9dGhpcy4kc2xvdHMuZGVmYXVsdHx8W10sYT10aGlzLmNoaWxkcmVuPVtdLG89cWEodGhpcyksYz0wO2M8aS5sZW5ndGg7YysrKXt2YXIgcz1pW2NdO2lmKHMudGFnKWlmKG51bGwhPXMua2V5JiYwIT09U3RyaW5nKHMua2V5KS5pbmRleE9mKCJfX3ZsaXN0IikpYS5wdXNoKHMpLG5bcy5rZXldPXMsKHMuZGF0YXx8KHMuZGF0YT17fSkpLnRyYW5zaXRpb249bztlbHNlO31pZihyKXtmb3IodmFyIHA9W10sbD1bXSx1PTA7dTxyLmxlbmd0aDt1Kyspe3ZhciBkPXJbdV07ZC5kYXRhLnRyYW5zaXRpb249byxkLmRhdGEucG9zPWQuZWxtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLG5bZC5rZXldP3AucHVzaChkKTpsLnB1c2goZCl9dGhpcy5rZXB0PWUodCxudWxsLHApLHRoaXMucmVtb3ZlZD1sfXJldHVybiBlKHQsbnVsbCxhKX0sdXBkYXRlZDpmdW5jdGlvbigpe3ZhciBlPXRoaXMucHJldkNoaWxkcmVuLHQ9dGhpcy5tb3ZlQ2xhc3N8fCh0aGlzLm5hbWV8fCJ2IikrIi1tb3ZlIjtlLmxlbmd0aCYmdGhpcy5oYXNNb3ZlKGVbMF0uZWxtLHQpJiYoZS5mb3JFYWNoKG5vKSxlLmZvckVhY2gocm8pLGUuZm9yRWFjaChpbyksdGhpcy5fcmVmbG93PWRvY3VtZW50LmJvZHkub2Zmc2V0SGVpZ2h0LGUuZm9yRWFjaCgoZnVuY3Rpb24oZSl7aWYoZS5kYXRhLm1vdmVkKXt2YXIgbj1lLmVsbSxyPW4uc3R5bGU7eWEobix0KSxyLnRyYW5zZm9ybT1yLldlYmtpdFRyYW5zZm9ybT1yLnRyYW5zaXRpb25EdXJhdGlvbj0iIixuLmFkZEV2ZW50TGlzdGVuZXIoX2Esbi5fbW92ZUNiPWZ1bmN0aW9uIGUocil7ciYmci50YXJnZXQhPT1ufHxyJiYhL3RyYW5zZm9ybSQvLnRlc3Qoci5wcm9wZXJ0eU5hbWUpfHwobi5yZW1vdmVFdmVudExpc3RlbmVyKF9hLGUpLG4uX21vdmVDYj1udWxsLGdhKG4sdCkpfSl9fSkpKX0sbWV0aG9kczp7aGFzTW92ZTpmdW5jdGlvbihlLHQpe2lmKCFwYSlyZXR1cm4hMTtpZih0aGlzLl9oYXNNb3ZlKXJldHVybiB0aGlzLl9oYXNNb3ZlO3ZhciBuPWUuY2xvbmVOb2RlKCk7ZS5fdHJhbnNpdGlvbkNsYXNzZXMmJmUuX3RyYW5zaXRpb25DbGFzc2VzLmZvckVhY2goKGZ1bmN0aW9uKGUpe29hKG4sZSl9KSksYWEobix0KSxuLnN0eWxlLmRpc3BsYXk9Im5vbmUiLHRoaXMuJGVsLmFwcGVuZENoaWxkKG4pO3ZhciByPWthKG4pO3JldHVybiB0aGlzLiRlbC5yZW1vdmVDaGlsZChuKSx0aGlzLl9oYXNNb3ZlPXIuaGFzVHJhbnNmb3JtfX19O2Z1bmN0aW9uIG5vKGUpe2UuZWxtLl9tb3ZlQ2ImJmUuZWxtLl9tb3ZlQ2IoKSxlLmVsbS5fZW50ZXJDYiYmZS5lbG0uX2VudGVyQ2IoKX1mdW5jdGlvbiBybyhlKXtlLmRhdGEubmV3UG9zPWUuZWxtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpfWZ1bmN0aW9uIGlvKGUpe3ZhciB0PWUuZGF0YS5wb3Msbj1lLmRhdGEubmV3UG9zLHI9dC5sZWZ0LW4ubGVmdCxpPXQudG9wLW4udG9wO2lmKHJ8fGkpe2UuZGF0YS5tb3ZlZD0hMDt2YXIgYT1lLmVsbS5zdHlsZTthLnRyYW5zZm9ybT1hLldlYmtpdFRyYW5zZm9ybT0idHJhbnNsYXRlKCIrcisicHgsIitpKyJweCkiLGEudHJhbnNpdGlvbkR1cmF0aW9uPSIwcyJ9fXZhciBhbz17VHJhbnNpdGlvbjpRYSxUcmFuc2l0aW9uR3JvdXA6dG99O3VyLmNvbmZpZy5tdXN0VXNlUHJvcD1Pcix1ci5jb25maWcuaXNSZXNlcnZlZFRhZz1Lcix1ci5jb25maWcuaXNSZXNlcnZlZEF0dHI9UHIsdXIuY29uZmlnLmdldFRhZ05hbWVzcGFjZT1Ccix1ci5jb25maWcuaXNVbmtub3duRWxlbWVudD1KcixFKHVyLm9wdGlvbnMuZGlyZWN0aXZlcyxHYSksRSh1ci5vcHRpb25zLmNvbXBvbmVudHMsYW8pLHVyLnByb3RvdHlwZS5fX3BhdGNoX189Sj96YTpELHVyLnByb3RvdHlwZS4kbW91bnQ9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZT1lJiZKP1hyKGUpOnZvaWQgMCxIdCh0aGlzLGUsdCl9LEomJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7Vi5kZXZ0b29scyYmb2UmJm9lLmVtaXQoImluaXQiLHVyKX0pLDApLHRbImEiXT11cn0pLmNhbGwodGhpcyxuKCJjOGJhIikpfSwiMmI0YyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjU1MzciKSgid2tzIiksaT1uKCJjYTVhIiksYT1uKCI3NzI2IikuU3ltYm9sLG89ImZ1bmN0aW9uIj09dHlwZW9mIGEsYz1lLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHJbZV18fChyW2VdPW8mJmFbZV18fChvP2E6aSkoIlN5bWJvbC4iK2UpKX07Yy5zdG9yZT1yfSwiMmQwMCI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ITF9LCIyZDk1IjpmdW5jdGlvbihlLHQpe3ZhciBuPXt9LnRvU3RyaW5nO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbi5jYWxsKGUpLnNsaWNlKDgsLTEpfX0sIjJmNmQiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpO24oIjdmN2YiKTt2YXIgcj17Y3JlYXRlZDpmdW5jdGlvbigpe2NvbnNvbGUud2FybigiWyIuY29uY2F0KHRoaXMuJG9wdGlvbnMubmFtZSwiXSBUaGlzIHdpZGdldCBpcyBkZXByZWNhdGVkIGFuZCBpcyBubyBsb25nZXIgbWFpbnRhaW5lZC4gUGxlYXNlIHZpc2l0IGh0dHBzOi8vd3d3LmNvaW5nZWNrby5jb20vd2lkZ2V0cyB0byBnZXQgdGhlIG5ldyB2ZXJzaW9uIG9mIHRoaXMgd2lkZ2V0LCB3aGljaCBmZWF0dXJlcyBhIG5ldyBkZXNpZ24gYW5kIGJldHRlciBwZXJmb3JtYW5jZSEiKSl9fX0sIjMwZjEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiYjhlMyIpLGk9bigiNjNiNiIpLGE9bigiOTEzOCIpLG89bigiMzVlOCIpLGM9bigiNDgxYiIpLHM9bigiOGY2MCIpLHA9bigiNDVmMiIpLGw9bigiNTNlMiIpLHU9bigiNTE2OCIpKCJpdGVyYXRvciIpLGQ9IShbXS5rZXlzJiYibmV4dCJpbltdLmtleXMoKSksXz0iQEBpdGVyYXRvciIsbT0ia2V5cyIsZj0idmFsdWVzIixoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9O2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbix2LHksZyx3KXtzKG4sdCx2KTt2YXIgYixrLHgsQz1mdW5jdGlvbihlKXtpZighZCYmZSBpbiBPKXJldHVybiBPW2VdO3N3aXRjaChlKXtjYXNlIG06cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBuKHRoaXMsZSl9O2Nhc2UgZjpyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4odGhpcyxlKX19cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBuKHRoaXMsZSl9fSxTPXQrIiBJdGVyYXRvciIsUD15PT1mLGo9ITEsTz1lLnByb3RvdHlwZSxBPU9bdV18fE9bX118fHkmJk9beV0sRT1BfHxDKHkpLFQ9eT9QP0MoImVudHJpZXMiKTpFOnZvaWQgMCxEPSJBcnJheSI9PXQmJk8uZW50cmllc3x8QTtpZihEJiYoeD1sKEQuY2FsbChuZXcgZSkpLHghPT1PYmplY3QucHJvdG90eXBlJiZ4Lm5leHQmJihwKHgsUywhMCkscnx8ImZ1bmN0aW9uIj09dHlwZW9mIHhbdV18fG8oeCx1LGgpKSksUCYmQSYmQS5uYW1lIT09ZiYmKGo9ITAsRT1mdW5jdGlvbigpe3JldHVybiBBLmNhbGwodGhpcyl9KSxyJiYhd3x8IWQmJiFqJiZPW3VdfHxvKE8sdSxFKSxjW3RdPUUsY1tTXT1oLHkpaWYoYj17dmFsdWVzOlA/RTpDKGYpLGtleXM6Zz9FOkMobSksZW50cmllczpUfSx3KWZvcihrIGluIGIpayBpbiBPfHxhKE8sayxiW2tdKTtlbHNlIGkoaS5QK2kuRiooZHx8aiksdCxiKTtyZXR1cm4gYn19LCIzMmU5IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiODZjYyIpLGk9bigiNDYzMCIpO2UuZXhwb3J0cz1uKCI5ZTFlIik/ZnVuY3Rpb24oZSx0LG4pe3JldHVybiByLmYoZSx0LGkoMSxuKSl9OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZVt0XT1uLGV9fSwiMzJmYyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImU1M2QiKS5kb2N1bWVudDtlLmV4cG9ydHM9ciYmci5kb2N1bWVudEVsZW1lbnR9LCIzMzVjIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNmI0YyIpO2UuZXhwb3J0cz1PYmplY3QoInoiKS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgwKT9PYmplY3Q6ZnVuY3Rpb24oZSl7cmV0dXJuIlN0cmluZyI9PXIoZSk/ZS5zcGxpdCgiIik6T2JqZWN0KGUpfX0sMzUwNDpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoi5oC75biC5YC85o6S5ZCNIiwibWNhcCI6IuaAu+W4guWAvCIsIjI0aF92b2x1bWUiOiIyNCDlsI/ml7bkuqTmmJPph48iLCIyNGhfaGlnaF9sb3ciOiIyNOWwj+aXtumrmC/kvY4ifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5pSv5oyBIiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLliqDlr4bku7fmoLzmr5TovoMiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoi5Yqg5a+G6LSn5biB5biC5YC85q+U6L6DIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5pSv5oyBIn0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjQg5bCP5pe25pyA6auY5Lu35qC8IiwiMjRoX2xvdyI6IjI0IOWwj+aXtuacgOS9juS7t+agvCIsInZpZXdfcHJpY2VfY2hhcnQiOiLmn6XnnIsgJXtjb2lufSDku7fmoLzotbDlir/lm74iLCJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5pSv5oyBIn0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IueUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOaUr+aMgSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmlK/mjIEifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IueUsSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOaUr+aMgSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCDlsI/ml7bmnIDpq5jku7fmoLwiLCIyNGhfbG93IjoiMjQg5bCP5pe25pyA5L2O5Lu35qC8Iiwidmlld19wcmljZV9jaGFydCI6IuafpeeciyAle2NvaW59IOS7t+agvOi1sOWKv+WbviIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmlK/mjIEifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiLmn6XnnIsgJXtjb2lufSDku7fmoLzotbDlir/lm74iLCJwb3dlcmVkX2J5Ijoi55SxICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g5pSv5oyBIn0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiLliqDlr4botKfluIHmoJHlnovlm74iLCJzdWJ0aXRsZSI6Iu+8iOW4guWAvOaOkuWQjeWJjSV7dG9wfe+8iSIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmlK/mjIEifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLlhY3otKPlo7DmmI7vvJrmraTlt6Xlhbfku4XnlKjkuo7lqLHkuZDnm67nmoTvvIzkuI3mnoTmiJDku7vkvZXph5Hono3lu7rorq7jgIIiLCJzcGluIjoiU3BpbiIsImF2YWlsYWJsZV9jb2lucyI6IuWPr+eUqOS7o+W4gSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyDku7fmoLzmm7TmlrAiLCJ0b3RhbF9tY2FwIjoi5oC75biC5YC8IiwiMjRoX3ZvbCI6IjI05bCP5pe25Lqk5piT6YePIiwiZG9tIjoi5biC5Y2g546HIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IuS6pOaYk+aJgCIsInBhaXIiOiLotKfluIHnu4TlkIgiLCJwcmljZSI6IuS7t+agvCIsInZvbHVtZSI6IuS6pOaYk+mHjyIsInRydXN0X3Njb3JlIjoi5L+h55So6K+E5YiGIiwidmlld19wcmljZV9jaGFydCI6Iuafpeeci+S7t+agvOi1sOWKv+WbviIsInBvd2VyZWRfYnkiOiLnlLEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDmlK/mjIEiLCJ2aWV3X2FsbCI6Iuafpeeci+aJgOaciSAle2NvaW59IOW4guWcuiJ9fScpfSwiMzU1ZCI6ZnVuY3Rpb24oZSx0KXt0LmY9e30ucHJvcGVydHlJc0VudW1lcmFibGV9LCIzNWU4IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDlmNiIpLGk9bigiYWViZCIpO2UuZXhwb3J0cz1uKCI4ZTYwIik/ZnVuY3Rpb24oZSx0LG4pe3JldHVybiByLmYoZSx0LGkoMSxuKSl9OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZVt0XT1uLGV9fSwiMzZjMyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjMzNWMiKSxpPW4oIjI1ZWIiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHIoaShlKSl9fSwzODQ2OmZ1bmN0aW9uKGUsdCxuKXtuKCI5ZTFlIikmJiJnIiE9Ly4vZy5mbGFncyYmbigiODZjYyIpLmYoUmVnRXhwLnByb3RvdHlwZSwiZmxhZ3MiLHtjb25maWd1cmFibGU6ITAsZ2V0Om4oIjBiZmIiKX0pfSwiMzhmZCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjY5YTgiKSxpPW4oIjRiZjgiKSxhPW4oIjYxM2IiKSgiSUVfUFJPVE8iKSxvPU9iamVjdC5wcm90b3R5cGU7ZS5leHBvcnRzPU9iamVjdC5nZXRQcm90b3R5cGVPZnx8ZnVuY3Rpb24oZSl7cmV0dXJuIGU9aShlKSxyKGUsYSk/ZVthXToiZnVuY3Rpb24iPT10eXBlb2YgZS5jb25zdHJ1Y3RvciYmZSBpbnN0YW5jZW9mIGUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5wcm90b3R5cGU6ZSBpbnN0YW5jZW9mIE9iamVjdD9vOm51bGx9fSwiM2EzOCI6ZnVuY3Rpb24oZSx0KXt2YXIgbj1NYXRoLmNlaWwscj1NYXRoLmZsb29yO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gaXNOYU4oZT0rZSk/MDooZT4wP3I6bikoZSl9fSwiM2RhOSI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IlBvcmFkaWUgdHJob3ZlaiBrYXBpdGFsaXrDoWNpZSIsIm1jYXAiOiJUcmhvdsOhIGthcGl0YWxpesOhY2lhIiwiMjRoX3ZvbHVtZSI6Ik9iamVtIHphIDI0SCIsIjI0aF9oaWdoX2xvdyI6IjI0SCB2eXNva8OhL27DrXprYSJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb2jDocWIYW7DqSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJQb3Jvdm5hbmllIGNpZW4ga3J5cHRvbWllbiIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiJQb3Jvdm5hbmllIHRyaG92ZWoga2FwaXRhbGl6w6FjaWUga3J5cHRvbWllbiJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvaMOhxYhhbsOpICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNEggdnlzb2vDoSIsIjI0aF9sb3ciOiIyNEggbsOtemthIiwidmlld19wcmljZV9jaGFydCI6IlpvYnJhemnFpSBjZW5vdsO9IGdyYWYgcHJlICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiUG9ow6HFiGFuw6kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb2jDocWIYW7DqSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvaMOhxYhhbsOpICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvaMOhxYhhbsOpICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjRIIHZ5c29rw6EiLCIyNGhfbG93IjoiMjRIIG7DrXprYSIsInZpZXdfcHJpY2VfY2hhcnQiOiJab2JyYXppxaUgY2Vub3bDvSBncmFmIHByZSAle2NvaW59IiwicG93ZXJlZF9ieSI6IlBvaMOhxYhhbsOpICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJab2JyYXppxaUgY2Vub3bDvSBncmFmIHByZSAle2NvaW59IiwicG93ZXJlZF9ieSI6IlBvaMOhxYhhbsOpICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6Ik1hcGEga3J5cHRvbWllbiIsInN1YnRpdGxlIjoiKFRvcCAle3RvcH0gcG9kxL5hIHRyaG92ZWoga2FwKSIsInBvd2VyZWRfYnkiOiJQb2jDocWIYW7DqSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiWnJpZWtudXRpZSBzYSB6b2Rwb3ZlZG5vc3RpOiBUZW50byBuw6FzdHJvaiBzbMO6xb5pYSBuYSB6w6FiYXZ1IGEgbmVwcmVkc3RhdnVqw7ogZmluYW7EjW7DqSBwb3JhZGVuc3R2by4iLCJzcGluIjoiVG/EjWnFpSIsImF2YWlsYWJsZV9jb2lucyI6IkRvc3R1cG7DqSBjb2lueSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkFrdHVhbGl6w6FjaWEgY2VueSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiQ2Vsa292w6EgdHJoLiBrYXAuIiwiMjRoX3ZvbCI6Ik9iamVtIHphIDI0aCIsImRvbSI6IkRvbWluYW5jaWEifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiQnVyemEiLCJwYWlyIjoiUMOhciIsInByaWNlIjoiQ2VuYSIsInZvbHVtZSI6Ik9iamVtIiwidHJ1c3Rfc2NvcmUiOiJTa8OzcmUgZMO0dmVyeWhvZG5vc3RpIiwidmlld19wcmljZV9jaGFydCI6IlpvYnJhemnFpSBjZW5vdsO9IGdyYWYiLCJwb3dlcmVkX2J5IjoiUG9ow6HFiGFuw6kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiWm9icmF6acWlIHbFoWV0a3kgdHJoeSAle2NvaW59In19Jyl9LCI0MWEwIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjJhZWIiKSxpPW4oIjQ2MzAiKSxhPW4oIjdmMjAiKSxvPXt9O24oIjMyZTkiKShvLG4oIjJiNGMiKSgiaXRlcmF0b3IiKSwoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKSxlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe2UucHJvdG90eXBlPXIobyx7bmV4dDppKDEsbil9KSxhKGUsdCsiIEl0ZXJhdG9yIil9fSwiNDU2ZCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjRiZjgiKSxpPW4oIjBkNTgiKTtuKCI1ZWRhIikoImtleXMiLChmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gaShyKGUpKX19KSl9LDQ1ODg6ZnVuY3Rpb24oZSx0KXt2YXIgbj1NYXRoLmNlaWwscj1NYXRoLmZsb29yO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gaXNOYU4oZT0rZSk/MDooZT4wP3I6bikoZSl9fSwiNDVmMiI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQ5ZjYiKS5mLGk9bigiMDdlMyIpLGE9bigiNTE2OCIpKCJ0b1N0cmluZ1RhZyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7ZSYmIWkoZT1uP2U6ZS5wcm90b3R5cGUsYSkmJnIoZSxhLHtjb25maWd1cmFibGU6ITAsdmFsdWU6dH0pfX0sNDYwMTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjgzYzIiKSxpPXIoIiVUeXBlRXJyb3IlIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7aWYobnVsbD09ZSl0aHJvdyBuZXcgaSh0fHwiQ2Fubm90IGNhbGwgbWV0aG9kIG9uICIrZSk7cmV0dXJuIGV9fSw0NjMwOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJue2VudW1lcmFibGU6ISgxJmUpLGNvbmZpZ3VyYWJsZTohKDImZSksd3JpdGFibGU6ISg0JmUpLHZhbHVlOnR9fX0sIjQ3ZWUiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJjM2ExIiksaT1uKCI5YWE5IiksYT1uKCIzNTVkIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PXIoZSksbj1pLmY7aWYobil7dmFyIG8sYz1uKGUpLHM9YS5mLHA9MDt3aGlsZShjLmxlbmd0aD5wKXMuY2FsbChlLG89Y1twKytdKSYmdC5wdXNoKG8pfXJldHVybiB0fX0sIjQ4MWIiOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPXt9fSwiNGJmOCI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImJlMTMiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdChyKGUpKX19LCI0YzViIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiQsO2cnN2w6RyZGVzcmFua25pbmciLCJtY2FwIjoiQsO2cnN2w6RyZGUiLCIyNGhfdm9sdW1lIjoiVm9seW0gMjQgaCIsIjI0aF9oaWdoX2xvdyI6IjI0SCBow7Znc3QvbMOkZ3N0YSJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJKw6RtZsO2cmVsc2UgYXYga3J5cHRvcHJpc2VyIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IkrDpG1mw7ZyZWxzZSBhdiBrcnlwdG9iw7Zyc3bDpHJkZSJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRyaXZzIGF2ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCBoIGjDtmdzdGEiLCIyNGhfbG93IjoiMjRoIGzDpGdzdGEiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmlzYSBwcmlzbGlzdGEgZsO2ciAle2NvaW59IiwicG93ZXJlZF9ieSI6IkRyaXZzIGF2ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRHJpdnMgYXYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0IGggaMO2Z3N0YSIsIjI0aF9sb3ciOiIyNGggbMOkZ3N0YSIsInZpZXdfcHJpY2VfY2hhcnQiOiJWaXNhIHByaXNsaXN0YSBmw7ZyICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiRHJpdnMgYXYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZpc2EgcHJpc2xpc3RhIGbDtnIgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJUcsOkZGthcnRhIMO2dmVyIGtyeXB0b3ZhbHV0b3IiLCJzdWJ0aXRsZSI6Iigle3RvcH0gaSB0b3BwIGVmdGVyIGLDtnJzdsOkcmRlKSIsInBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiT2JzISBEZXNzYSB2ZXJrdHlnIGZ1bmdlcmFyIHNvbSB1bmRlcmjDpWxsbmluZyBvY2ggdXRnw7ZyIGludGUgZmluYW5zaWVsbCByw6VkZ2l2bmluZy4iLCJzcGluIjoiU251cnJhIiwiYXZhaWxhYmxlX2NvaW5zIjoiVGlsbGfDpG5nbGlnYSBteW50In0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiUHJpc3VwcGRhdGVyaW5nIGhvcyBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiVG90YWx0IGLDtnJzdsOkcmRlIiwiMjRoX3ZvbCI6IlZvbHltIDI0IGgiLCJkb20iOiJEb20ifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiSGFuZGVsIiwicGFpciI6IlBhciIsInByaWNlIjoiUHJpcyIsInZvbHVtZSI6IlZvbHltIiwidHJ1c3Rfc2NvcmUiOiJGw7ZydHJvZW5kZWJldHlnIiwidmlld19wcmljZV9jaGFydCI6IlZpc2EgcHJpc3RhYmVsbCIsInBvd2VyZWRfYnkiOiJEcml2cyBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWaXNhIGFsbGEgJXtjb2lufS1tYXJrbmFkZXIifX0nKX0sIjRkMDEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiMGY3YyIpLGk9bigiODNjMiIpLGE9aSgiJUZ1bmN0aW9uJSIpLG89YS5hcHBseSxjPWEuY2FsbDtlLmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4gci5hcHBseShjLGFyZ3VtZW50cyl9LGUuZXhwb3J0cy5hcHBseT1mdW5jdGlvbigpe3JldHVybiByLmFwcGx5KG8sYXJndW1lbnRzKX19LCI0ZTczIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiS2FwaXRhbGl6w6FjacOzcyByYW5nIiwibWNhcCI6IlBpYWNpIGthcGl0YWxpesOhY2nDsyIsIjI0aF92b2x1bWUiOiIyNCDDs3LDoXMgZm9yZ2Fsb20iLCIyNGhfaGlnaF9sb3ciOiIyNCDDs3LDoXMgbWF4aW11bS9taW5pbXVtIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkEoeikgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSBqw7N2b2x0w6Fiw7NsIiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJLcmlwdG/DoXJmb2x5YW1vayDDtnNzemVoYXNvbmzDrXTDoXNhIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IktyaXB0b3BpYWNpIGthcGl0YWxpesOhY2nDsyDDtnNzemVoYXNvbmzDrXTDoXNhIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQSh6KSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IGrDs3ZvbHTDoWLDs2wifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCDDs3LDoXMgbWF4aW11bSIsIjI0aF9sb3ciOiIyNCDDs3LDoXMgbWluaW11bSIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59LcOhcmZvbHlhbWRpYWdyYW0gbWVndGVraW50w6lzZSIsInBvd2VyZWRfYnkiOiJBKHopICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gasOzdm9sdMOhYsOzbCJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJBKHopICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gasOzdm9sdMOhYsOzbCJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJBKHopICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gasOzdm9sdMOhYsOzbCJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQSh6KSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IGrDs3ZvbHTDoWLDs2wifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjQgw7Nyw6FzIG1heGltdW0iLCIyNGhfbG93IjoiMjQgw7Nyw6FzIG1pbmltdW0iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufS3DoXJmb2x5YW1kaWFncmFtIG1lZ3Rla2ludMOpc2UiLCJwb3dlcmVkX2J5IjoiQSh6KSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IGrDs3ZvbHTDoWLDs2wifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59LcOhcmZvbHlhbWRpYWdyYW0gbWVndGVraW50w6lzZSIsInBvd2VyZWRfYnkiOiJBKHopICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gasOzdm9sdMOhYsOzbCJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoiS3JpcHRvZGV2aXrDoWsgZmFzdHJ1a3TDunJhLXTDqXJrw6lwZSIsInN1YnRpdGxlIjoiKEVsc8WRICV7dG9wfSBrYXBpdGFsaXrDoWNpw7MgYWxhcGrDoW4pIiwicG93ZXJlZF9ieSI6IkEoeikgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSBqw7N2b2x0w6Fiw7NsIn0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiRmVsZWzFkXNzw6lnaSBueWlsYXRrb3phdDogZXogYXogY3NhayBlc3prw7Z6IHN6w7NyYWtvenRhdMOhc3JhIHN6b2xnw6FsLCBuZW0gbWluxZFzw7xsIHDDqW56w7xneWkgdGFuw6Fjc2Fkw6FzbmFrLiIsInNwaW4iOiJQw7ZyZ2V0w6lzIiwiYXZhaWxhYmxlX2NvaW5zIjoiRWzDqXJoZXTFkSDDqXJtw6lrIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiQ29pbkdlY2tvLcOhcmZvbHlhbWZyaXNzw610w6lzIiwidG90YWxfbWNhcCI6IlRlbGplcyBwLiBrYXAuIiwiMjRoX3ZvbCI6IjI0IMOzcsOhcyBmb3JnYWxvbSIsImRvbSI6IkRvbWluYW5jaWEifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiVMWRenNkZSIsInBhaXIiOiJEZXZpemFww6FyIiwicHJpY2UiOiLDgXJmb2x5YW0iLCJ2b2x1bWUiOiJGb3JnYWxvbSIsInRydXN0X3Njb3JlIjoiTWVnYsOtemhhdMOzc8OhZ2kgcG9udHN6w6FtIiwidmlld19wcmljZV9jaGFydCI6IsOBcmZvbHlhbWRpYWdyYW0gbWVndGVraW50w6lzZSIsInBvd2VyZWRfYnkiOiJBKHopICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gasOzdm9sdMOhYsOzbCIsInZpZXdfYWxsIjoiw5Zzc3plcyAle2NvaW59LXBpYWMgbWVndGVraW50w6lzZSJ9fScpfSwiNTBlZCI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm57dmFsdWU6dCxkb25lOiEhZX19fSw1MTY4OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkYmRiIikoIndrcyIpLGk9bigiNjJhMCIpLGE9bigiZTUzZCIpLlN5bWJvbCxvPSJmdW5jdGlvbiI9PXR5cGVvZiBhLGM9ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiByW2VdfHwocltlXT1vJiZhW2VdfHwobz9hOmkpKCJTeW1ib2wuIitlKSl9O2Muc3RvcmU9cn0sIjUyMGEiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiMGJmYiIpLGk9UmVnRXhwLnByb3RvdHlwZS5leGVjLGE9U3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlLG89aSxjPSJsYXN0SW5kZXgiLHM9ZnVuY3Rpb24oKXt2YXIgZT0vYS8sdD0vYiovZztyZXR1cm4gaS5jYWxsKGUsImEiKSxpLmNhbGwodCwiYSIpLDAhPT1lW2NdfHwwIT09dFtjXX0oKSxwPXZvaWQgMCE9PS8oKT8/Ly5leGVjKCIiKVsxXSxsPXN8fHA7bCYmKG89ZnVuY3Rpb24oZSl7dmFyIHQsbixvLGwsdT10aGlzO3JldHVybiBwJiYobj1uZXcgUmVnRXhwKCJeIit1LnNvdXJjZSsiJCg/IVxccykiLHIuY2FsbCh1KSkpLHMmJih0PXVbY10pLG89aS5jYWxsKHUsZSkscyYmbyYmKHVbY109dS5nbG9iYWw/by5pbmRleCtvWzBdLmxlbmd0aDp0KSxwJiZvJiZvLmxlbmd0aD4xJiZhLmNhbGwob1swXSxuLChmdW5jdGlvbigpe2ZvcihsPTE7bDxhcmd1bWVudHMubGVuZ3RoLTI7bCsrKXZvaWQgMD09PWFyZ3VtZW50c1tsXSYmKG9bbF09dm9pZCAwKX0pKSxvfSksZS5leHBvcnRzPW99LCI1MmE3IjpmdW5jdGlvbihlLHQpe3QuZj17fS5wcm9wZXJ0eUlzRW51bWVyYWJsZX0sNTMwOTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKTt2YXIgcj17Y3VzdG9tRWxlbWVudDp7c3JjOiJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9kb2N1bWVudC1yZWdpc3Rlci1lbGVtZW50LzEuMTEuMS9kb2N1bWVudC1yZWdpc3Rlci1lbGVtZW50LmpzIixpbnRlZ3JpdHk6InNoYTM4NC16QTZWNGNoWUZHZ3NlemgxeUFRenVzMlZOVWN5VHlHSTNOTzdMNXBFaUU4QU9YdjNFQytPUzJDLy83MlZVNk1nIn0sZmV0Y2g6e3NyYzoiaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvZmV0Y2gvMi4wLjQvZmV0Y2gubWluLmpzIixpbnRlZ3JpdHk6InNoYTM4NC0ya2t1cXdTQ0Z6ZTF5N1VjQWVqVUg2d3QyTXBRNG5hYSsreldQMFN4eVVDL2pud3E5MVNBZmUxNFJBcnVYdG5WIn0sY3NzdmFyOntzcmM6Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vY3NzLXZhcnMtcG9ueWZpbGxAMS4xNi4yIixpbnRlZ3JpdHk6InNoYTM4NC00c1ZWc3RHQVg1RUVIUXp4c2ZmMDVDZWRZNDZVVmpYT01jVTVlbHU5NHZ6dEc1Yk8yVlNBcTY5RDFaUEdQTDVFIn0sY29uZmV0dGk6e3NyYzoiaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9jYW52YXMtY29uZmV0dGlAMS45LjMvZGlzdC9jb25mZXR0aS5icm93c2VyLm1pbi5qcyIsaW50ZWdyaXR5OiJzaGEzODQtR3ZKMjRPN0Jwbjd6TG5rVHpLRndhUE8wVWN6MG5uSlJra24yeFMwK1NaOHZ1Q01Zbi9QakMvaCtXSWVobkdTTSJ9fX0sIjUzZTIiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIwN2UzIiksaT1uKCIyNDFlIiksYT1uKCI1NTU5IikoIklFX1BST1RPIiksbz1PYmplY3QucHJvdG90eXBlO2UuZXhwb3J0cz1PYmplY3QuZ2V0UHJvdG90eXBlT2Z8fGZ1bmN0aW9uKGUpe3JldHVybiBlPWkoZSkscihlLGEpP2VbYV06ImZ1bmN0aW9uIj09dHlwZW9mIGUuY29uc3RydWN0b3ImJmUgaW5zdGFuY2VvZiBlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IucHJvdG90eXBlOmUgaW5zdGFuY2VvZiBPYmplY3Q/bzpudWxsfX0sNTUzNzpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiODM3OCIpLGk9bigiNzcyNiIpLGE9Il9fY29yZS1qc19zaGFyZWRfXyIsbz1pW2FdfHwoaVthXT17fSk7KGUuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybiBvW2VdfHwob1tlXT12b2lkIDAhPT10P3Q6e30pfSkoInZlcnNpb25zIixbXSkucHVzaCh7dmVyc2lvbjpyLnZlcnNpb24sbW9kZTpuKCIyZDAwIik/InB1cmUiOiJnbG9iYWwiLGNvcHlyaWdodDoiwqkgMjAxOSBEZW5pcyBQdXNoa2FyZXYgKHpsb2lyb2NrLnJ1KSJ9KX0sNTU1OTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZGJkYiIpKCJrZXlzIiksaT1uKCI2MmEwIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiByW2VdfHwocltlXT1pKGUpKX19LCI1NjJlIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjQ2MDEiKSxpPW4oIjExNTMiKSxhPW4oIjhhYjUiKSxvPWEoIlN0cmluZy5wcm90b3R5cGUucmVwbGFjZSIpLGM9L15bXHgwOVx4MEFceDBCXHgwQ1x4MERceDIwXHhBMFx1MTY4MFx1MTgwRVx1MjAwMFx1MjAwMVx1MjAwMlx1MjAwM1x1MjAwNFx1MjAwNVx1MjAwNlx1MjAwN1x1MjAwOFx1MjAwOVx1MjAwQVx1MjAyRlx1MjA1Rlx1MzAwMFx1MjAyOFx1MjAyOVx1RkVGRl0rLyxzPS9bXHgwOVx4MEFceDBCXHgwQ1x4MERceDIwXHhBMFx1MTY4MFx1MTgwRVx1MjAwMFx1MjAwMVx1MjAwMlx1MjAwM1x1MjAwNFx1MjAwNVx1MjAwNlx1MjAwN1x1MjAwOFx1MjAwOVx1MjAwQVx1MjAyRlx1MjA1Rlx1MzAwMFx1MjAyOFx1MjAyOVx1RkVGRl0rJC87ZS5leHBvcnRzPWZ1bmN0aW9uKCl7dmFyIGU9aShyKHRoaXMpKTtyZXR1cm4gbyhvKGUsYywiIikscywiIil9fSw1NzU0OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJNYXJra2luYS1hcnZvbiBzaWphIiwibWNhcCI6Ik1hcmtraW5hLWFydm8iLCIyNGhfdm9sdW1lIjoiMjR0IHZvbHl5bWkiLCIyNGhfaGlnaF9sb3ciOiIyNHQga29ya2VpbiAvIGFsaW4gaGludGEifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUGFsdmVsdW4gdGFyam9hYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJLcnlwdG9qZW4gaGlubmFudmVydGFpbHUiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiS3J5cHRvamVuIG1hcmtraW5hLWFydm9qZW4gdmVydGFpbHUifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQYWx2ZWx1biB0YXJqb2FhICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNHQgS29ya2VpbiIsIjI0aF9sb3ciOiIyNHQgQWxoYWlzaW4iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiTsOkeXTDpCBrb2xpa29uICV7Y29pbn0gaGludGFrYWF2aW8iLCJwb3dlcmVkX2J5IjoiUGFsdmVsdW4gdGFyam9hYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBhbHZlbHVuIHRhcmpvYWEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQYWx2ZWx1biB0YXJqb2FhICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBhbHZlbHVuIHRhcmpvYWEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNHQgS29ya2VpbiIsIjI0aF9sb3ciOiIyNHQgQWxoYWlzaW4iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiTsOkeXTDpCBrb2xpa29uICV7Y29pbn0gaGludGFrYWF2aW8iLCJwb3dlcmVkX2J5IjoiUGFsdmVsdW4gdGFyam9hYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0IjoiTsOkeXTDpCBrb2xpa29uICV7Y29pbn0gaGludGFrYWF2aW8iLCJwb3dlcmVkX2J5IjoiUGFsdmVsdW4gdGFyam9hYSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJLcnlwdG92YWx1dXR0b2plbiBwdXVrYWF2aW8iLCJzdWJ0aXRsZSI6IihQYXJoYWF0ICV7dG9wfSBtYXJra2luYS1hcnZvbiBtdWthYW4pIiwicG93ZXJlZF9ieSI6IlBhbHZlbHVuIHRhcmpvYWEgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IlZhc3R1dXZhcGF1c2xhdXNla2U6IFTDpG3DpCB0ecO2a2FsdSBvbiB0YXJrb2l0ZXR0dSB2aWloZGVrw6R5dHTDtsO2biwgamEgc2VuIHNpc8OkbHTDtiBlaSBvbGUgdGFsb3VkZWxsaXN0YSBuZXV2b250YWEuIiwic3BpbiI6IlB5w7Zyw6R5dMOkIiwiYXZhaWxhYmxlX2NvaW5zIjoiU2FhdGF2aWxsYSBvbGV2YXQga29saWtvdCJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyBoaW5uYW5ww6Rpdml0eXMiLCJ0b3RhbF9tY2FwIjoiS29rb25haXNtYXJra2luYS1hcnZvIiwiMjRoX3ZvbCI6IjI0IHR1bm5pbiB2b2x5eW1pIiwiZG9tIjoiRG9taW5hbnNzaSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJLcnlwdG9ww7Zyc3NpIiwicGFpciI6IlBhcmkiLCJwcmljZSI6IkhpbnRhIiwidm9sdW1lIjoiVm9seXltaSIsInRydXN0X3Njb3JlIjoiVHJ1c3QgU2NvcmUiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiTsOkeXTDpCBoaW50YWthYXZpbyIsInBvd2VyZWRfYnkiOiJQYWx2ZWx1biB0YXJqb2FhICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6Ik7DpHl0w6Qga2Fpa2tpICV7Y29pbn0gbWFya2tpbmF0In19Jyl9LCI1ODRhIjpmdW5jdGlvbihlLHQpe3ZhciBuPWUuZXhwb3J0cz17dmVyc2lvbjoiMi42LjExIn07Im51bWJlciI9PXR5cGVvZiBfX2UmJihfX2U9bil9LCI1YjRlIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMzZjMyIpLGk9bigiYjQ0NyIpLGE9bigiMGZjOSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24odCxuLG8pe3ZhciBjLHM9cih0KSxwPWkocy5sZW5ndGgpLGw9YShvLHApO2lmKGUmJm4hPW4pe3doaWxlKHA+bClpZihjPXNbbCsrXSxjIT1jKXJldHVybiEwfWVsc2UgZm9yKDtwPmw7bCsrKWlmKChlfHxsIGluIHMpJiZzW2xdPT09bilyZXR1cm4gZXx8bHx8MDtyZXR1cm4hZSYmLTF9fX0sIjVjMjIiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5yKHQpO24oIjZiNTQiKTt2YXIgcj1uKCIyYjBlIiksaT1uKCJjODk0IiksYT1uKCI1MzA5Iiksbz1uKCJhZjE0IiksYz1uKCJjNjQ5Iikscz1uKCJkYTY4IikscD1uKCI2MWRhIiksbD1uLm4ocCk7clsiYSJdLnVzZShpWyJhIl0pO3ZhciB1PWZ1bmN0aW9uKCl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOntzaGFkb3c6ITF9O3JbImEiXS5jdXN0b21FbGVtZW50KCJjb2luZ2Vja28tY29pbi1wcmljZS1tYXJxdWVlLXdpZGdldCIsc1siYSJdLHtzaGFkb3c6ZS5zaGFkb3csc2hhZG93Q3NzOmwuYS50b1N0cmluZygpLGNvbm5lY3RlZENhbGxiYWNrOmZ1bmN0aW9uKCl7aWYoIWUuc2hhZG93KXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3QuaW5uZXJIVE1MPWwuYS50b1N0cmluZygpLGRvY3VtZW50LmhlYWQuYXBwZW5kKHQpfX19KX07T2JqZWN0KG9bImEiXSkoKT91KHtzaGFkb3c6ITB9KTpPYmplY3QoY1siYyJdKShbYVsiYSJdLmN1c3RvbUVsZW1lbnQsYVsiYSJdLmZldGNoLGFbImEiXS5jc3N2YXJdKS50aGVuKChmdW5jdGlvbigpe3JldHVybiB1KHtzaGFkb3c6ITF9KX0pKX0sIjVjYTEiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI3NzI2IiksaT1uKCI4Mzc4IiksYT1uKCIzMmU5Iiksbz1uKCIyYWJhIiksYz1uKCI5YjQzIikscz0icHJvdG90eXBlIixwPWZ1bmN0aW9uKGUsdCxuKXt2YXIgbCx1LGQsXyxtPWUmcC5GLGY9ZSZwLkcsaD1lJnAuUyx2PWUmcC5QLHk9ZSZwLkIsZz1mP3I6aD9yW3RdfHwoclt0XT17fSk6KHJbdF18fHt9KVtzXSx3PWY/aTppW3RdfHwoaVt0XT17fSksYj13W3NdfHwod1tzXT17fSk7Zm9yKGwgaW4gZiYmKG49dCksbil1PSFtJiZnJiZ2b2lkIDAhPT1nW2xdLGQ9KHU/ZzpuKVtsXSxfPXkmJnU/YyhkLHIpOnYmJiJmdW5jdGlvbiI9PXR5cGVvZiBkP2MoRnVuY3Rpb24uY2FsbCxkKTpkLGcmJm8oZyxsLGQsZSZwLlUpLHdbbF0hPWQmJmEodyxsLF8pLHYmJmJbbF0hPWQmJihiW2xdPWQpfTtyLmNvcmU9aSxwLkY9MSxwLkc9MixwLlM9NCxwLlA9OCxwLkI9MTYscC5XPTMyLHAuVT02NCxwLlI9MTI4LGUuZXhwb3J0cz1wfSwiNWQ1OCI6ZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKCJkOGQ2Iil9LCI1ZDY3IjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiQ2xhc3NpZmljYcOnw6NvIGRhIGNhcGl0YWxpemHDp8OjbyBkZSBtZXJjYWRvIiwibWNhcCI6IkNhcGl0YWxpemHDp8OjbyBkZSBtZXJjYWRvIiwiMjRoX3ZvbHVtZSI6IlZvbHVtZSBlbSAyNCBIIiwiMjRoX2hpZ2hfbG93IjoiMjRIIEFsdGEvQmFpeGEifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiRGVzZW52b2x2aWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJDb21wYXJhw6fDo28gZGUgUHJlw6dvcyBkZSBDcmlwdG8iLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiQ29tcGFyYcOnw6NvIGRlIENhcGl0YWxpemHDp8OjbyBkZSBNZXJjYWRvIGRlIENyaXB0byJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRlc2Vudm9sdmlkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6IkFsdGEgZGUgMjQgaCIsIjI0aF9sb3ciOiJCYWl4YSBkZSAyNCBoIiwidmlld19wcmljZV9jaGFydCI6IlZlciBHcsOhZmljbyBkZSBQcmXDp29zICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiRGVzZW52b2x2aWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRlc2Vudm9sdmlkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEZXNlbnZvbHZpZG8gcG9yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRlc2Vudm9sdmlkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiJBbHRhIGRlIDI0IGgiLCIyNGhfbG93IjoiQmFpeGEgZGUgMjQgaCIsInZpZXdfcHJpY2VfY2hhcnQiOiJWZXIgR3LDoWZpY28gZGUgUHJlw6dvcyAle2NvaW59IiwicG93ZXJlZF9ieSI6IkRlc2Vudm9sdmlkbyBwb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZlciBHcsOhZmljbyBkZSBQcmXDp29zICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiRGVzZW52b2x2aWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJNYXBhIGRlIMOhcnZvcmUgZGUgY3JpcHRvbW9lZGFzIiwic3VidGl0bGUiOiIoUHJpbmNpcGFpcyAle3RvcH0gTW9lZGFzIHBvciBDYXBpdGFsaXphw6fDo28gZGUgTWVyY2FkbykiLCJwb3dlcmVkX2J5IjoiRGVzZW52b2x2aWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiQXRlbsOnw6NvOiBFc3RhcyBmZXJyYW1lbnRhcyBzw6NvIHBhcmEgZmlucyBkZSBlbnRyZXRlbmltZW50byBlIG7Do28gY29uc3RpdHVlbSBjb25zZWxob3MgZmluYW5jZWlyb3MuIiwic3BpbiI6IkdpcmFyIiwiYXZhaWxhYmxlX2NvaW5zIjoiTW9lZGFzIERpc3BvbsOtdmVpcyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkF0dWFsaXphw6fDo28gZG8gUHJlw6dvcyBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiQ2FwaXRhbGl6YcOnw6NvIFRvdGFsIGRlIE1lcmNhZG8iLCIyNGhfdm9sIjoiVm9sdW1lIGVtIDI0IGgiLCJkb20iOiJEb20ifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiQ8OibWJpbyIsInBhaXIiOiJQYXIiLCJwcmljZSI6IlByZcOnbyIsInZvbHVtZSI6IlZvbHVtZSIsInRydXN0X3Njb3JlIjoiUGxhY2FyIGRlIENvbmZpYW7Dp2EiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmVyIEdyw6FmaWNvIGRlIFByZcOnb3MiLCJwb3dlcmVkX2J5IjoiRGVzZW52b2x2aWRvIHBvciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWZXIgdG9kb3Mgb3MgbWVyY2Fkb3MgJXtjb2lufSJ9fScpfSwiNWRiYyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQzZjQiKSxpPW4oIjhiOTciKS5zZXQ7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXt2YXIgYSxvPXQuY29uc3RydWN0b3I7cmV0dXJuIG8hPT1uJiYiZnVuY3Rpb24iPT10eXBlb2YgbyYmKGE9by5wcm90b3R5cGUpIT09bi5wcm90b3R5cGUmJnIoYSkmJmkmJmkoZSxhKSxlfX0sIjVkZjIiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI1Y2ExIiksaT1uKCJkNzUyIik7cihyLlMrci5GKihOdW1iZXIucGFyc2VGbG9hdCE9aSksIk51bWJlciIse3BhcnNlRmxvYXQ6aX0pfSwiNWRmMyI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCIwMmY0IikoITApO24oIjAxZjkiKShTdHJpbmcsIlN0cmluZyIsKGZ1bmN0aW9uKGUpe3RoaXMuX3Q9U3RyaW5nKGUpLHRoaXMuX2k9MH0pLChmdW5jdGlvbigpe3ZhciBlLHQ9dGhpcy5fdCxuPXRoaXMuX2k7cmV0dXJuIG4+PXQubGVuZ3RoP3t2YWx1ZTp2b2lkIDAsZG9uZTohMH06KGU9cih0LG4pLHRoaXMuX2krPWUubGVuZ3RoLHt2YWx1ZTplLGRvbmU6ITF9KX0pKX0sIjVlZGEiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI1Y2ExIiksaT1uKCI4Mzc4IiksYT1uKCI3OWU1Iik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dmFyIG49KGkuT2JqZWN0fHx7fSlbZV18fE9iamVjdFtlXSxvPXt9O29bZV09dChuKSxyKHIuUytyLkYqYSgoZnVuY3Rpb24oKXtuKDEpfSkpLCJPYmplY3QiLG8pfX0sIjVmMWIiOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiMjNjNiIpLGk9UmVnRXhwLnByb3RvdHlwZS5leGVjO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuPWUuZXhlYztpZigiZnVuY3Rpb24iPT09dHlwZW9mIG4pe3ZhciBhPW4uY2FsbChlLHQpO2lmKCJvYmplY3QiIT09dHlwZW9mIGEpdGhyb3cgbmV3IFR5cGVFcnJvcigiUmVnRXhwIGV4ZWMgbWV0aG9kIHJldHVybmVkIHNvbWV0aGluZyBvdGhlciB0aGFuIGFuIE9iamVjdCBvciBudWxsIik7cmV0dXJuIGF9aWYoIlJlZ0V4cCIhPT1yKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIlJlZ0V4cCNleGVjIGNhbGxlZCBvbiBpbmNvbXBhdGlibGUgcmVjZWl2ZXIiKTtyZXR1cm4gaS5jYWxsKGUsdCl9fSw2MDQ1OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJSaW5rb3Mga2FwaXRhbGl6YWNpam9zIHJlaXRpbmdhcyIsIm1jYXAiOiJSaW5rb3Mga2FwaXRhbGl6YWNpamEiLCIyNGhfdm9sdW1lIjoiMjQgdmFsLiBhcGltdGlzIiwiMjRoX2hpZ2hfbG93IjoiQXVrxaHEjWlhdXNpYSAvIG1hxb5pYXVzaWEgcGVyIDI0IHZhbC4ifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoixK5kaWVndGEgcGFnYWwgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiS3JpcHRvdmFsaXV0xbMga2FpbsWzIHBhbHlnaW5pbWFzIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IktyaXB0b3ZhbGl1dMWzIHJpbmtvcyB0YWxwb3MgcGFseWdpbmltYXMifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLErmRpZWd0YSBwYWdhbCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiRGlkxb5pYXVzaWEgcGVyIDI0IHZhbC4iLCIyNGhfbG93Ijoixb1lbWlhdXNpYSBwZXIgMjQgdmFsLiIsInZpZXdfcHJpY2VfY2hhcnQiOiJQZXLFvmnFq3LEl3RpICV7Y29pbn0gS2FpbsWzIGRpYWdyYW1hIiwicG93ZXJlZF9ieSI6IsSuZGllZ3RhIHBhZ2FsICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoixK5kaWVndGEgcGFnYWwgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLErmRpZWd0YSBwYWdhbCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLErmRpZWd0YSBwYWdhbCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IkRpZMW+aWF1c2lhIHBlciAyNCB2YWwuIiwiMjRoX2xvdyI6IsW9ZW1pYXVzaWEgcGVyIDI0IHZhbC4iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiUGVyxb5pxatyxJd0aSAle2NvaW59IEthaW7FsyBkaWFncmFtYSIsInBvd2VyZWRfYnkiOiLErmRpZWd0YSBwYWdhbCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0IjoiUGVyxb5pxatyxJd0aSAle2NvaW59IEthaW7FsyBkaWFncmFtYSIsInBvd2VyZWRfYnkiOiLErmRpZWd0YSBwYWdhbCAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJLcmlwdG92YWxpdXTFsyBtZWRpcyIsInN1YnRpdGxlIjoiKFBvcHVsaWFyaWF1c2lvcyAgJXt0b3B9IHBhZ2FsIHJpbmtvcyBrYXBpdGFsaXphY2lqxIUpIiwicG93ZXJlZF9ieSI6IsSuZGllZ3RhIHBhZ2FsICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiJBdHNha29teWLEl3MgYXByaWJvamltYXM6IMWgaWUgxK9yYW5raWFpIHNraXJ0aSBwcmFtb2dhaSBpciBuxJdyYSBmaW5hbnNpbsSXcyBrb25zdWx0YWNpam9zLiIsInNwaW4iOiJTdWt0aSIsImF2YWlsYWJsZV9jb2lucyI6IlByaWVpbmFtb3MgbW9uZXRvcyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyBLYWluxbMgQXRuYXVqaW5pbWFzIiwidG90YWxfbWNhcCI6IkJlbmRyYSBNIHJpYmEiLCIyNGhfdm9sIjoiQXBpbXRpcyBwZXIgMjQgdmFsLiIsImRvbSI6IkRvbWluYXZpbWFzIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IktlaXR5a2xhIiwicGFpciI6IlBvcmEiLCJwcmljZSI6IkthaW5hIiwidm9sdW1lIjoiQXBpbXRpcyIsInRydXN0X3Njb3JlIjoiUGFzaXRpa8SXamltbyBiYWxhcyIsInZpZXdfcHJpY2VfY2hhcnQiOiJQZXLFvmnFq3LEl3RpIEthaW7FsyBkaWFncmFtxIUiLCJwb3dlcmVkX2J5IjoixK5kaWVndGEgcGFnYWwgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiUGVyxb5pxatyxJd0aSB2aXNhcyAle2NvaW59IHJpbmthcyJ9fScpfSwiNjEzYiI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjU1MzciKSgia2V5cyIpLGk9bigiY2E1YSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gcltlXXx8KHJbZV09aShlKSl9fSwiNjFkYSI6ZnVuY3Rpb24oZSx0LG4pe3Q9ZS5leHBvcnRzPW4oIjI0ZmIiKSghMSksdC5pKG4oIjc1ZmMiKSwiIiksdC5wdXNoKFtlLmksIi5jZy1jb250YWluZXIge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG4gIGNvbG9yOiAjNGM0YzRjO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgZm9udC1zaXplOiAxMnB4O1xuXG4gIG1pbi13aWR0aDogMzAwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4uY2ctY29udGFpbmVyW2RhdGEtbG9hZGluZ10gLmNnLXdpZGdldCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jZy1jb2luLXJvdzpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTQxLCAxOTgsIDcxLCAwLjIpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4uY2ctZXZlbi1yb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmZmY4O1xufVxuLmNnLWFycm93LXVwIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICM0Yjg4MDA7XG59XG5cbi5jZy1hcnJvdy1kb3duIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICNhMTFiMGE7XG59XG5cbi5jZy1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTQxLCAxOTgsIDcxLCAwLjEpO1xufVxuXG4uY2ctd2lkZ2V0IHNlbGVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItY29sb3I6IHJnYigxNDEsIDE5OCwgNzEpO1xufVxuLmNnLXdpZGdldCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzRjNGM0Yztcbn1cbi5jZy13aWRnZXQgYTpob3ZlciB7XG4gIGNvbG9yOiAjNGM0YzRjO1xufVxuXG4uY2ctY29pbi1yb3cgaW1nIHtcbiAgd2lkdGg6IDIycHg7XG59XG5cbi5jZy1tYXJxdWVlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNnLW1hcnF1ZWUtY29udGVudC0xIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDAlOyAvKiBzaG93IHRoZSBtYXJxdWVlIGp1c3Qgb3V0c2lkZSB0aGUgcGFyYWdyYXBoICovXG4gIGFuaW1hdGlvbjogbWFycXVlZSAzMHMgbGluZWFyIGluZmluaXRlO1xufVxuLmNnLW1hcnF1ZWUtY29udGVudC1sb25nIHtcbiAgYW5pbWF0aW9uOiBtYXJxdWVlIDEwMHMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uY2ctbWFycXVlZS1jb250ZW50LTIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMCU7IC8qIHNob3cgdGhlIG1hcnF1ZWUganVzdCBvdXRzaWRlIHRoZSBwYXJhZ3JhcGggKi9cbiAgYW5pbWF0aW9uOiBtYXJxdWVlMiAzMHMgbGluZWFyIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIG1hcnF1ZWUge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbWFycXVlZTIge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG4iLCIiXSl9LCI2MjZhIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMmQ5NSIpO2UuZXhwb3J0cz1PYmplY3QoInoiKS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgwKT9PYmplY3Q6ZnVuY3Rpb24oZSl7cmV0dXJuIlN0cmluZyI9PXIoZSk/ZS5zcGxpdCgiIik6T2JqZWN0KGUpfX0sIjYyYTAiOmZ1bmN0aW9uKGUsdCl7dmFyIG49MCxyPU1hdGgucmFuZG9tKCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiJTeW1ib2woIi5jb25jYXQodm9pZCAwPT09ZT8iIjplLCIpXyIsKCsrbityKS50b1N0cmluZygzNikpfX0sIjYyZWEiOmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiLQoNC10LnRgtC40L3QsyDRgNC40L3QutC+0LLQvtGXINC60LDQv9GW0YLQsNC70ZbQt9Cw0YbRltGXIiwibWNhcCI6ItCg0LjQvdC60L7QstCwINC60LDQv9GW0YLQsNC70ZbQt9Cw0YbRltGPIiwiMjRoX3ZvbHVtZSI6ItCe0LHRgdGP0LMg0LfQsCAyNCDQs9C+0LTQuNC90LgiLCIyNGhfaGlnaF9sb3ciOiLQnNCw0LrRgS4v0LzRltC9LiDQt9CwIDI0INCz0L7QtNC40L3QuCJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLQn9GA0LDRhtGO0ZQg0L3QsCDQv9C70LDRgtGE0L7RgNC80ZYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoi0J/QvtGA0ZbQstC90Y/QvdC90Y8g0YbRltC9INC60YDQuNC/0YLQvtCy0LDQu9GO0YIiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoi0J/QvtGA0ZbQstC90Y/QvdC90Y8g0YDQuNC90LrQvtCy0L7RlyDQutCw0L/RltGC0LDQu9GW0LfQsNGG0ZbRlyDQutGA0LjQv9GC0L7QstCw0LvRjtGCIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/RgNCw0YbRjtGUINC90LAg0L/Qu9Cw0YLRhNC+0YDQvNGWICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiLQnNCw0LrRgdC40LzRg9C8INC30LAgMjQg0LPQvtC00LjQvdC4IiwiMjRoX2xvdyI6ItCc0ZbQvdGW0LzRg9C8INC30LAgMjQg0LPQvtC00LjQvdC4Iiwidmlld19wcmljZV9jaGFydCI6ItCf0LXRgNC10LPQu9GP0L3Rg9GC0Lgg0LPRgNCw0YTRltC6INGG0ZbQvdC4ICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi0J/RgNCw0YbRjtGUINC90LAg0L/Qu9Cw0YLRhNC+0YDQvNGWICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/RgNCw0YbRjtGUINC90LAg0L/Qu9Cw0YLRhNC+0YDQvNGWICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/RgNCw0YbRjtGUINC90LAg0L/Qu9Cw0YLRhNC+0YDQvNGWICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6ItCf0YDQsNGG0Y7RlCDQvdCwINC/0LvQsNGC0YTQvtGA0LzRliAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6ItCc0LDQutGB0LjQvNGD0Lwg0LfQsCAyNCDQs9C+0LTQuNC90LgiLCIyNGhfbG93Ijoi0JzRltC90ZbQvNGD0Lwg0LfQsCAyNCDQs9C+0LTQuNC90LgiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi0J/QtdGA0LXQs9C70Y/QvdGD0YLQuCDQs9GA0LDRhNGW0Log0YbRltC90LggJXtjb2lufSIsInBvd2VyZWRfYnkiOiLQn9GA0LDRhtGO0ZQg0L3QsCDQv9C70LDRgtGE0L7RgNC80ZYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6ItCf0LXRgNC10LPQu9GP0L3Rg9GC0Lgg0LPRgNCw0YTRltC6INGG0ZbQvdC4ICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi0J/RgNCw0YbRjtGUINC90LAg0L/Qu9Cw0YLRhNC+0YDQvNGWICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6ItCa0LDRgNGC0LAg0LTQtdGA0LXQstCwINC60YDQuNC/0YLQvtCy0LDQu9GO0YLQuCIsInN1YnRpdGxlIjoiKNCa0YDQsNGJ0ZYgJXt0b3B9INC30LAg0YDQuNC90LrQvtCy0L7RjiDQutCw0L/RltGC0LDQu9GW0LfQsNGG0ZbRlNGOKSIsInBvd2VyZWRfYnkiOiLQn9GA0LDRhtGO0ZQg0L3QsCDQv9C70LDRgtGE0L7RgNC80ZYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6ItCS0ZbQtNC80L7QstCwINCy0ZbQtCDQstGW0LTQv9C+0LLRltC00LDQu9GM0L3QvtGB0YLRljog0KbRliDRltC90YHRgtGA0YPQvNC10L3RgtC4INC00LDQvdGWINGP0Log0YDQvtC30LLQsNC20LDQu9GM0L3RliDQuSDQvdC1INGUINGE0ZbQvdCw0L3RgdC+0LLQuNC80Lgg0YDQtdC60L7QvNC10L3QtNCw0YbRltGP0LzQuC4iLCJzcGluIjoi0KHQv9GW0L0iLCJhdmFpbGFibGVfY29pbnMiOiLQlNC+0YHRgtGD0L/QvdGWINC80L7QvdC10YLQuCJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6ItCe0L3QvtCy0LvQtdC90L3RjyDRhtGW0L3QuCBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoi0JfQsNCz0LDQu9GM0L3QsCDRgNC40L0uINC60LDQvy4iLCIyNGhfdm9sIjoi0J7QsdGB0Y/QsyDRgtC+0YDQs9GW0LIg0LfQsCAyNCDQs9C+0LTQuNC90LgiLCJkb20iOiLQlNC+0LzRltC90YPQstCw0L3QvdGPIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6ItCR0ZbRgNC20LAiLCJwYWlyIjoi0J/QsNGA0LAiLCJwcmljZSI6ItCm0ZbQvdCwIiwidm9sdW1lIjoi0J7QsdGB0Y/QsyIsInRydXN0X3Njb3JlIjoi0J/QvtC60LDQt9C90LjQuiDQvdCw0LTRltC50L3QvtGB0YLRliIsInZpZXdfcHJpY2VfY2hhcnQiOiLQn9C10YDQtdCz0LvRj9C90YPRgtC4INCz0YDQsNGE0ZbQuiDRhtGW0L3QuCIsInBvd2VyZWRfYnkiOiLQn9GA0LDRhtGO0ZQg0L3QsCDQv9C70LDRgtGE0L7RgNC80ZYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoi0J/QtdGA0LXQs9C70Y/QvdGD0YLQuCDQstGB0ZYg0YDQuNC90LrQuCAle2NvaW59In19Jyl9LCI2M2I2IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZTUzZCIpLGk9bigiNTg0YSIpLGE9bigiZDg2NCIpLG89bigiMzVlOCIpLGM9bigiMDdlMyIpLHM9InByb3RvdHlwZSIscD1mdW5jdGlvbihlLHQsbil7dmFyIGwsdSxkLF89ZSZwLkYsbT1lJnAuRyxmPWUmcC5TLGg9ZSZwLlAsdj1lJnAuQix5PWUmcC5XLGc9bT9pOmlbdF18fChpW3RdPXt9KSx3PWdbc10sYj1tP3I6Zj9yW3RdOihyW3RdfHx7fSlbc107Zm9yKGwgaW4gbSYmKG49dCksbil1PSFfJiZiJiZ2b2lkIDAhPT1iW2xdLHUmJmMoZyxsKXx8KGQ9dT9iW2xdOm5bbF0sZ1tsXT1tJiYiZnVuY3Rpb24iIT10eXBlb2YgYltsXT9uW2xdOnYmJnU/YShkLHIpOnkmJmJbbF09PWQ/ZnVuY3Rpb24oZSl7dmFyIHQ9ZnVuY3Rpb24odCxuLHIpe2lmKHRoaXMgaW5zdGFuY2VvZiBlKXtzd2l0Y2goYXJndW1lbnRzLmxlbmd0aCl7Y2FzZSAwOnJldHVybiBuZXcgZTtjYXNlIDE6cmV0dXJuIG5ldyBlKHQpO2Nhc2UgMjpyZXR1cm4gbmV3IGUodCxuKX1yZXR1cm4gbmV3IGUodCxuLHIpfXJldHVybiBlLmFwcGx5KHRoaXMsYXJndW1lbnRzKX07cmV0dXJuIHRbc109ZVtzXSx0fShkKTpoJiYiZnVuY3Rpb24iPT10eXBlb2YgZD9hKEZ1bmN0aW9uLmNhbGwsZCk6ZCxoJiYoKGcudmlydHVhbHx8KGcudmlydHVhbD17fSkpW2xdPWQsZSZwLlImJncmJiF3W2xdJiZvKHcsbCxkKSkpfTtwLkY9MSxwLkc9MixwLlM9NCxwLlA9OCxwLkI9MTYscC5XPTMyLHAuVT02NCxwLlI9MTI4LGUuZXhwb3J0cz1wfSw2NzE4OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJlNTNkIiksaT1uKCI1ODRhIiksYT1uKCJiOGUzIiksbz1uKCJjY2I5IiksYz1uKCJkOWY2IikuZjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9aS5TeW1ib2x8fChpLlN5bWJvbD1hP3t9OnIuU3ltYm9sfHx7fSk7Il8iPT1lLmNoYXJBdCgwKXx8ZSBpbiB0fHxjKHQsZSx7dmFsdWU6by5mKGUpfSl9fSwiNjdiYiI6ZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKCJmOTIxIil9LDY4MjE6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjYyNmEiKSxpPW4oImJlMTMiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHIoaShlKSl9fSwiNjg4ZSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj0iRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQgY2FsbGVkIG9uIGluY29tcGF0aWJsZSAiLGk9QXJyYXkucHJvdG90eXBlLnNsaWNlLGE9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxvPSJbb2JqZWN0IEZ1bmN0aW9uXSI7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7aWYoImZ1bmN0aW9uIiE9PXR5cGVvZiB0fHxhLmNhbGwodCkhPT1vKXRocm93IG5ldyBUeXBlRXJyb3Iocit0KTtmb3IodmFyIG4sYz1pLmNhbGwoYXJndW1lbnRzLDEpLHM9ZnVuY3Rpb24oKXtpZih0aGlzIGluc3RhbmNlb2Ygbil7dmFyIHI9dC5hcHBseSh0aGlzLGMuY29uY2F0KGkuY2FsbChhcmd1bWVudHMpKSk7cmV0dXJuIE9iamVjdChyKT09PXI/cjp0aGlzfXJldHVybiB0LmFwcGx5KGUsYy5jb25jYXQoaS5jYWxsKGFyZ3VtZW50cykpKX0scD1NYXRoLm1heCgwLHQubGVuZ3RoLWMubGVuZ3RoKSxsPVtdLHU9MDt1PHA7dSsrKWwucHVzaCgiJCIrdSk7aWYobj1GdW5jdGlvbigiYmluZGVyIiwicmV0dXJuIGZ1bmN0aW9uICgiK2wuam9pbigiLCIpKyIpeyByZXR1cm4gYmluZGVyLmFwcGx5KHRoaXMsYXJndW1lbnRzKTsgfSIpKHMpLHQucHJvdG90eXBlKXt2YXIgZD1mdW5jdGlvbigpe307ZC5wcm90b3R5cGU9dC5wcm90b3R5cGUsbi5wcm90b3R5cGU9bmV3IGQsZC5wcm90b3R5cGU9bnVsbH1yZXR1cm4gbn19LCI2OWE4IjpmdW5jdGlvbihlLHQpe3ZhciBuPXt9Lmhhc093blByb3BlcnR5O2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybiBuLmNhbGwoZSx0KX19LCI2OWQzIjpmdW5jdGlvbihlLHQsbil7bigiNjcxOCIpKCJhc3luY0l0ZXJhdG9yIil9LCI2YTk5IjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDNmNCIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKCFyKGUpKXJldHVybiBlO3ZhciBuLGk7aWYodCYmImZ1bmN0aW9uIj09dHlwZW9mKG49ZS50b1N0cmluZykmJiFyKGk9bi5jYWxsKGUpKSlyZXR1cm4gaTtpZigiZnVuY3Rpb24iPT10eXBlb2Yobj1lLnZhbHVlT2YpJiYhcihpPW4uY2FsbChlKSkpcmV0dXJuIGk7aWYoIXQmJiJmdW5jdGlvbiI9PXR5cGVvZihuPWUudG9TdHJpbmcpJiYhcihpPW4uY2FsbChlKSkpcmV0dXJuIGk7dGhyb3cgVHlwZUVycm9yKCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWUiKX19LCI2YWJmIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZTZmMyIpLGk9bigiMTY5MSIpLmNvbmNhdCgibGVuZ3RoIiwicHJvdG90eXBlIik7dC5mPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzfHxmdW5jdGlvbihlKXtyZXR1cm4gcihlLGkpfX0sIjZiNGMiOmZ1bmN0aW9uKGUsdCl7dmFyIG49e30udG9TdHJpbmc7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBuLmNhbGwoZSkuc2xpY2UoOCwtMSl9fSwiNmI1NCI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuKCIzODQ2Iik7dmFyIHI9bigiY2I3YyIpLGk9bigiMGJmYiIpLGE9bigiOWUxZSIpLG89InRvU3RyaW5nIixjPS8uL1tvXSxzPWZ1bmN0aW9uKGUpe24oIjJhYmEiKShSZWdFeHAucHJvdG90eXBlLG8sZSwhMCl9O24oIjc5ZTUiKSgoZnVuY3Rpb24oKXtyZXR1cm4iL2EvYiIhPWMuY2FsbCh7c291cmNlOiJhIixmbGFnczoiYiJ9KX0pKT9zKChmdW5jdGlvbigpe3ZhciBlPXIodGhpcyk7cmV0dXJuIi8iLmNvbmNhdChlLnNvdXJjZSwiLyIsImZsYWdzImluIGU/ZS5mbGFnczohYSYmZSBpbnN0YW5jZW9mIFJlZ0V4cD9pLmNhbGwoZSk6dm9pZCAwKX0pKTpjLm5hbWUhPW8mJnMoKGZ1bmN0aW9uKCl7cmV0dXJuIGMuY2FsbCh0aGlzKX0pKX0sIjZjMWMiOmZ1bmN0aW9uKGUsdCxuKXtuKCJjMzY3Iik7Zm9yKHZhciByPW4oImU1M2QiKSxpPW4oIjM1ZTgiKSxhPW4oIjQ4MWIiKSxvPW4oIjUxNjgiKSgidG9TdHJpbmdUYWciKSxjPSJDU1NSdWxlTGlzdCxDU1NTdHlsZURlY2xhcmF0aW9uLENTU1ZhbHVlTGlzdCxDbGllbnRSZWN0TGlzdCxET01SZWN0TGlzdCxET01TdHJpbmdMaXN0LERPTVRva2VuTGlzdCxEYXRhVHJhbnNmZXJJdGVtTGlzdCxGaWxlTGlzdCxIVE1MQWxsQ29sbGVjdGlvbixIVE1MQ29sbGVjdGlvbixIVE1MRm9ybUVsZW1lbnQsSFRNTFNlbGVjdEVsZW1lbnQsTWVkaWFMaXN0LE1pbWVUeXBlQXJyYXksTmFtZWROb2RlTWFwLE5vZGVMaXN0LFBhaW50UmVxdWVzdExpc3QsUGx1Z2luLFBsdWdpbkFycmF5LFNWR0xlbmd0aExpc3QsU1ZHTnVtYmVyTGlzdCxTVkdQYXRoU2VnTGlzdCxTVkdQb2ludExpc3QsU1ZHU3RyaW5nTGlzdCxTVkdUcmFuc2Zvcm1MaXN0LFNvdXJjZUJ1ZmZlckxpc3QsU3R5bGVTaGVldExpc3QsVGV4dFRyYWNrQ3VlTGlzdCxUZXh0VHJhY2tMaXN0LFRvdWNoTGlzdCIuc3BsaXQoIiwiKSxzPTA7czxjLmxlbmd0aDtzKyspe3ZhciBwPWNbc10sbD1yW3BdLHU9bCYmbC5wcm90b3R5cGU7dSYmIXVbb10mJmkodSxvLHApLGFbcF09YS5BcnJheX19LCI2Y2UyIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiTWFya3RrYXBpdGFsaXNpZXJ1bmdzcmFuZyIsIm1jYXAiOiJNYXJrdGthcGl0YWxpc2llcnVuZyIsIjI0aF92b2x1bWUiOiIyNC1TdHVuZGVuIFZvbHVtZW4iLCIyNGhfaGlnaF9sb3ciOiIyNC1TdHVuZGVuLUhvY2gvLVRpZWYifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJLcnlwdG8tS3Vyc3ZlcmdsZWljaCIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiJLcnlwdG8tTWFya3RrYXBpdGFsaXNpZXJ1bmdzdmVyZ2xlaWNoIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjQtU3R1bmRlbi1Ib2NoIiwiMjRoX2xvdyI6IjI0LVN0dW5kZW4tVGllZiIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IEt1cnNkaWFncmFtbSBhbnplaWdlbiIsInBvd2VyZWRfYnkiOiJVbnRlcnN0w7x0enQgdm9uICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlVudGVyc3TDvHR6dCB2b24gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0LVN0dW5kZW4tSG9jaCIsIjI0aF9sb3ciOiIyNC1TdHVuZGVuLVRpZWYiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufSBLdXJzZGlhZ3JhbW0gYW56ZWlnZW4iLCJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufSBLdXJzZGlhZ3JhbW0gYW56ZWlnZW4iLCJwb3dlcmVkX2J5IjoiVW50ZXJzdMO8dHp0IHZvbiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJLcnlwdG93w6RocnVuZ3MtVHJlZS1NYXAiLCJzdWJ0aXRsZSI6IihUb3AtJXt0b3B9IG5hY2ggTWFya3RrYXBpdGFsaXNpZXJ1bmcpIiwicG93ZXJlZF9ieSI6IlVudGVyc3TDvHR6dCB2b24gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IkRpc2NsYWltZXI6IERpZXNlIFdlcmt6ZXVnZSBkaWVuZW4gYWxzIFVudGVyaGFsdHVuZyB1bmQgc3RlbGxlbiBrZWluZSBmaW5hbnppZWxsZSBCZXJhdHVuZyBkYXIuIiwic3BpbiI6IkRyZWhlbiIsImF2YWlsYWJsZV9jb2lucyI6IlZlcmbDvGdiYXJlIENvaW5zIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiQ29pbkdlY2tvIEt1cnNha3R1YWxpc2llcnVuZyIsInRvdGFsX21jYXAiOiJNYXJrdGthcGl0YWxpc2llcnVuZyBpbnNnZXNhbXQiLCIyNGhfdm9sIjoiMjQtU3R1bmRlbi1Wb2x1bWVuIiwiZG9tIjoiRG9taW5hbnoifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiQsO2cnNlIiwicGFpciI6IlBhYXIiLCJwcmljZSI6Ikt1cnMiLCJ2b2x1bWUiOiJWb2x1bWVuIiwidHJ1c3Rfc2NvcmUiOiJWZXJ0cmF1ZW5zd2VydCIsInZpZXdfcHJpY2VfY2hhcnQiOiIgS3Vyc2RpYWdyYW1tIGFuemVpZ2VuIiwicG93ZXJlZF9ieSI6IlVudGVyc3TDvHR6dCB2b24gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiQWxsZSAle2NvaW59LU3DpHJrdGUgYW56ZWlnZW4ifX0nKX0sIjcxYzEiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIzYTM4IiksaT1uKCIyNWViIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0LG4pe3ZhciBhLG8sYz1TdHJpbmcoaSh0KSkscz1yKG4pLHA9Yy5sZW5ndGg7cmV0dXJuIHM8MHx8cz49cD9lPyIiOnZvaWQgMDooYT1jLmNoYXJDb2RlQXQocyksYTw1NTI5Nnx8YT41NjMxOXx8cysxPT09cHx8KG89Yy5jaGFyQ29kZUF0KHMrMSkpPDU2MzIwfHxvPjU3MzQzP2U/Yy5jaGFyQXQocyk6YTplP2Muc2xpY2UocyxzKzIpOm8tNTYzMjArKGEtNTUyOTY8PDEwKSs2NTUzNil9fX0sNzUxNDpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjVjYTEiKSxpPW4oIjBhNDkiKSg1KSxhPSJmaW5kIixvPSEwO2EgaW5bXSYmQXJyYXkoMSlbYV0oKGZ1bmN0aW9uKCl7bz0hMX0pKSxyKHIuUCtyLkYqbywiQXJyYXkiLHtmaW5kOmZ1bmN0aW9uKGUpe3JldHVybiBpKHRoaXMsZSxhcmd1bWVudHMubGVuZ3RoPjE/YXJndW1lbnRzWzFdOnZvaWQgMCl9fSksbigiOWM2YyIpKGEpfSwiNzVmYyI6ZnVuY3Rpb24oZSx0LG4pe3Q9ZS5leHBvcnRzPW4oIjI0ZmIiKSghMSksdC5wdXNoKFtlLmksIi5jZy1kZWZhdWx0IHtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgc2Vnb2UgdWksIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYsXG4gICAgYXBwbGUgY29sb3IgZW1vamksIHNlZ29lIHVpIGVtb2ppLCBzZWdvZSB1aSBzeW1ib2w7XG59XG4uY2ctYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uY2ctY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmNnLXByaW1hcnktY29sb3Ige1xuICBjb2xvcjogIzhkYzY0NyAhaW1wb3J0YW50O1xufVxuLmNnLXByaW1hcnktY29sb3ItZGFyayB7XG4gIGNvbG9yOiAjNGI4ODAwICFpbXBvcnRhbnQ7XG59XG4uY2ctcmVkLWNvbG9yLWRhcmsge1xuICBjb2xvcjogI2MyMjIwZCAhaW1wb3J0YW50O1xufVxuLmNnLXJlZC1jb2xvciB7XG4gIGNvbG9yOiAjZmY2MTRkICFpbXBvcnRhbnQ7XG59XG4uY2ctMnhzIHtcbiAgZm9udC1zaXplOiA4LjhweDsgLyogMC41NXJlbTsgKi9cbn1cbi5jZy14cyB7XG4gIGZvbnQtc2l6ZTogMTAuNHB4OyAvKiAwLjY1cmVtICovXG59XG4uY2ctc20ge1xuICBmb250LXNpemU6IDEyLjhweDsgLyogMC44cmVtICovXG59XG4uY2ctbm9ybWFsIHtcbiAgZm9udC1zaXplOiAxMy42cHg7IC8qIDAuODVyZW0gKi9cbn1cbi5jZy1iYXNlIHtcbiAgZm9udC1zaXplOiAxNnB4OyAvKiAxNnB4ICovXG59XG4uY2ctbWVkaXVtIHtcbiAgZm9udC1zaXplOiAxOS4ycHg7IC8qIDEuMnJlbSAqL1xufVxuLmNnLWxnIHtcbiAgZm9udC1zaXplOiAyNHB4OyAvKiAxLjVyZW0gKi9cbn1cbi5jZy14bCB7XG4gIGZvbnQtc2l6ZTogMzAuNHB4OyAvKiAxLjlyZW0gKi9cbn1cbi5jZy1jYXAge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbi5jZy1uby11bmRlcmxpbmUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uY2ctbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmNnLW0tMCB7XG4gIG1hcmdpbjogMDtcbn1cbi5jZy1tLTEge1xuICBtYXJnaW46IDRweDtcbn1cbi5jZy1tLTIge1xuICBtYXJnaW46IDhweDtcbn1cbi5jZy1tdC0xIHtcbiAgbWFyZ2luLXRvcDogNHB4O1xufVxuLmNnLW1iLTEge1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG59XG4uY2ctbWwtMSB7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG59XG4uY2ctbXItMSB7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuLmNnLW10LTIge1xuICBtYXJnaW4tdG9wOiA4cHg7XG59XG4uY2ctbWwtMiB7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG59XG4uY2ctbXItMiB7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuLmNnLW1iLTIge1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG4uY2ctbXgtMSB7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuLmNnLW15LTEge1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cbi5jZy1teC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG4uY2ctbXktMiB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuLmNnLW15LTUge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uY2ctcC0xIHtcbiAgcGFkZGluZzogNHB4O1xufVxuLmNnLXAtMiB7XG4gIHBhZGRpbmc6IDhweDtcbn1cbi5jZy1wLTMge1xuICBwYWRkaW5nOiAxMnB4O1xufVxuLmNnLXAtNCB7XG4gIHBhZGRpbmc6IDE2cHg7XG59XG4uY2ctcHQtMSB7XG4gIHBhZGRpbmctdG9wOiA0cHg7XG59XG4uY2ctcGItMSB7XG4gIHBhZGRpbmctYm90dG9tOiA0cHg7XG59XG4uY2ctcHQtMiB7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG59XG4uY2ctcGItMiB7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG59XG4uY2ctcHQtMyB7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xufVxuLmNnLXBiLTMge1xuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbn1cbi5jZy1weS0xIHtcbiAgcGFkZGluZy10b3A6IDRweDtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbn1cbi5jZy1weC0xIHtcbiAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDRweDtcbn1cbi5jZy1weS0yIHtcbiAgcGFkZGluZy10b3A6IDhweDtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbn1cbi5jZy1weC0yIHtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbn1cbi5jZy1weS0zIHtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xufVxuLmNnLXB4LTMge1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG59XG4uY2ctcHgtNCB7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cbi5jZy1weS00IHtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xufVxuLmNnLXB5LTUge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG4uY2ctcHItMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDRweDtcbn1cbi5jZy1wci0yIHtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xufVxuXG4uY2ctZmxleCB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbn1cbi5jZy1mbGV4LXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4uY2ctZmxleC1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uY2ctaXRlbXMtc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0cmV0Y2g7XG59XG4uY2ctaXRlbXMtc3RhcnQge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5jZy1pdGVtcy1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmNnLWl0ZW1zLWVuZCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cbi5jZy1pdGVtcy1iYXNlbGluZSB7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbn1cblxuLmNnLWp1c3RpZnktc3RhcnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4uY2ctanVzdGlmeS1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5jZy1qdXN0aWZ5LWVuZCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4uY2ctanVzdGlmeS1iZXR3ZWVuIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuLmNnLWp1c3RpZnktYXJvdW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG59XG5cbi5jZy1zZWxmLWF1dG8ge1xuICBhbGlnbi1zZWxmOiBhdXRvO1xufVxuLmNnLXNlbGYtc3RhcnQge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuLmNnLXNlbGYtY2VudGVyIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuLmNnLXNlbGYtZW5kIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG59XG4uY2ctc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLmNnLXJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNnLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmNnLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCIiXSl9LDc2MTg6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGN9KSk7dmFyIHI9bigiNWQ1OCIpLGk9bi5uKHIpLGE9bigiNjdiYiIpLG89bi5uKGEpO2Z1bmN0aW9uIGMoZSl7cmV0dXJuIGM9ImZ1bmN0aW9uIj09PXR5cGVvZiBvLmEmJiJzeW1ib2wiPT09dHlwZW9mIGkuYT9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT09dHlwZW9mIG8uYSYmZS5jb25zdHJ1Y3Rvcj09PW8uYSYmZSE9PW8uYS5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIGV9LGMoZSl9fSwiNzY1ZCI6ZnVuY3Rpb24oZSx0LG4pe24oIjY3MTgiKSgib2JzZXJ2YWJsZSIpfSw3NzA0OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiLQn9C+0LfQuNGG0LjRjyDQsiDRgNC10LnRgtC40L3Qs9C1INC/0L4g0YDRi9C90L7Rh9C90L7QuSDQutCw0L/QuNGC0LDQu9C40LfQsNGG0LjQuCIsIm1jYXAiOiLQoNGL0L3QvtGH0L3QsNGPINC60LDQv9C40YLQsNC70LjQt9Cw0YbQuNGPIiwiMjRoX3ZvbHVtZSI6ItCe0LHRitC10Lwg0LfQsCAyNCDRh9Cw0YHQsCIsIjI0aF9oaWdoX2xvdyI6ItCc0LDQutGBLi/QvNC40L0uINC30LAgMjQg0YfQsNGB0LAifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/RgNC4INC/0L7QtNC00LXRgNC20LrQtSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLQodGA0LDQstC90LXQvdC40LUg0YbQtdC9INC60YDQuNC/0YLQvtCy0LDQu9GO0YIiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoi0KHRgNCw0LLQvdC10L3QuNC1INGA0YvQvdC+0YfQvdC+0Lkg0LrQsNC/0LjRgtCw0LvQuNC30LDRhtC40Lgg0LrRgNC40L/RgtC+0LLQsNC70Y7RgiJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6ItCf0YDQuCDQv9C+0LTQtNC10YDQttC60LUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6ItCc0LDQutGBLiDQt9CwIDI0INGH0LDRgdCwIiwiMjRoX2xvdyI6ItCc0LjQvS4g0LfQsCAyNMKg0YfQsNGB0LAiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi0J/QvtGB0LzQvtGC0YDQtdGC0Ywg0LPRgNCw0YTQuNC6INGG0LXQvSAle2NvaW59IiwicG93ZXJlZF9ieSI6ItCf0YDQuCDQv9C+0LTQtNC10YDQttC60LUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLQn9GA0Lgg0L/QvtC00LTQtdGA0LbQutC1ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/RgNC4INC/0L7QtNC00LXRgNC20LrQtSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLQn9GA0Lgg0L/QvtC00LTQtdGA0LbQutC1ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoi0JzQsNC60YEuINC30LAgMjTCoNGH0LDRgdCwIiwiMjRoX2xvdyI6ItCc0LjQvS4g0LfQsCAyNMKg0YfQsNGB0LAiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi0J/QvtGB0LzQvtGC0YDQtdGC0Ywg0LPRgNCw0YTQuNC6INGG0LXQvSAle2NvaW59IiwicG93ZXJlZF9ieSI6ItCf0YDQuCDQv9C+0LTQtNC10YDQttC60LUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6ItCf0L7RgdC80L7RgtGA0LXRgtGMINCz0YDQsNGE0LjQuiDRhtC10L0gJXtjb2lufSIsInBvd2VyZWRfYnkiOiLQn9GA0Lgg0L/QvtC00LTQtdGA0LbQutC1ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6ItCa0LDRgNGC0LAg0LTQtdGA0LXQstCwINC60YDQuNC/0YLQvtCy0LDQu9GO0YIiLCJzdWJ0aXRsZSI6IijQm9GD0YfRiNC40LUg0LzQvtC90LXRgtGLICV7dG9wfSDQv9C+INGA0YvQvdC+0YfQvdC+0Lkg0LrQsNC/0LjRgtCw0LvQuNC30LDRhtC40LgpIiwicG93ZXJlZF9ieSI6ItCf0YDQuCDQv9C+0LTQtNC10YDQttC60LUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6ItCe0YLQutCw0Lcg0L7RgiDQvtGC0LLQtdGC0YHRgtCy0LXQvdC90L7RgdGC0Lg6INCt0YLQuCDQuNC90YHRgtGA0YPQvNC10L3RgtGLINC00LDQvdGLINCyINC60LDRh9C10YHRgtCy0LUg0YDQsNC30LLQu9C10LrQsNGC0LXQu9GM0L3Ri9GFINC4INC90LUg0Y/QstC70Y/RjtGC0YHRjyDRhNC40L3QsNC90YHQvtCy0YvQvNC4INGA0LXQutC+0LzQtdC90LTQsNGG0LjRj9C80LguIiwic3BpbiI6ItCh0L/QuNC9IiwiYXZhaWxhYmxlX2NvaW5zIjoi0JTQvtGB0YLRg9C/0L3Ri9C1INC80L7QvdC10YLRiyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6ItCe0LHQvdC+0LLQu9C10L3QuNC1INGG0LXQvdGLIENvaW5HZWNrbyIsInRvdGFsX21jYXAiOiLQoNGL0L0u0LrQsNC/LiDQstGB0LXQs9C+IiwiMjRoX3ZvbCI6ItCe0LHRitC10Lwg0YLQvtGA0LPQvtCyINC30LAgMjQg0YfQsNGB0LAiLCJkb20iOiLQlNC+0LzQuNC90LjRgNC+0LLQsNC90LjQtSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLQkdC40YDQttCwIiwicGFpciI6ItCf0LDRgNCwIiwicHJpY2UiOiLQptC10L3QsCIsInZvbHVtZSI6ItCe0LHQvtGA0L7RgiIsInRydXN0X3Njb3JlIjoi0J/QvtC60LDQt9Cw0YLQtdC70Ywg0L3QsNC00LXQttC90L7RgdGC0LgiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi0J/QvtGB0LzQvtGC0YDQtdGC0Ywg0LPRgNCw0YTQuNC6INGG0LXQvSIsInBvd2VyZWRfYnkiOiLQn9GA0Lgg0L/QvtC00LTQtdGA0LbQutC1ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6ItCf0L7RgdC80L7RgtGA0LXRgtGMINCy0YHQtSDRgNGL0L3QutC4ICV7Y29pbn0ifX0nKX0sNzcyNjpmdW5jdGlvbihlLHQpe3ZhciBuPWUuZXhwb3J0cz0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmd2luZG93Lk1hdGg9PU1hdGg/d2luZG93OiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZi5NYXRoPT1NYXRoP3NlbGY6RnVuY3Rpb24oInJldHVybiB0aGlzIikoKTsibnVtYmVyIj09dHlwZW9mIF9fZyYmKF9fZz1uKX0sIjc3ZjEiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI0NTg4IiksaT1NYXRoLm1heCxhPU1hdGgubWluO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybiBlPXIoZSksZTwwP2koZSt0LDApOmEoZSx0KX19LCI3OTRiIjpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPSFuKCI4ZTYwIikmJiFuKCIyOTRjIikoKGZ1bmN0aW9uKCl7cmV0dXJuIDchPU9iamVjdC5kZWZpbmVQcm9wZXJ0eShuKCIxZWM5IikoImRpdiIpLCJhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSkuYX0pKX0sIjc5YWEiOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IFR5cGVFcnJvcihlKyIgaXMgbm90IGEgZnVuY3Rpb24hIik7cmV0dXJuIGV9fSwiNzllNSI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybiEhZSgpfWNhdGNoKHQpe3JldHVybiEwfX19LCI3YTAzIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoi4KSu4KS+4KSw4KWN4KSV4KWH4KSfIOCkleCliOCkqiDgpLDgpYjgpILgpJUiLCJtY2FwIjoi4KSu4KS+4KSw4KWN4KSV4KWH4KSfIOCkleCliOCkqiIsIjI0aF92b2x1bWUiOiIyNOCkmOCkgiDgpJXgpL4g4KS14KS+4KSy4KWN4KSv4KWC4KSuIiwiMjRoX2hpZ2hfbG93IjoiMjTgpJjgpIIg4KSV4KS+IOCkueCkvuCkiC/gpLLgpYsifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDgpKbgpY3gpLXgpL7gpLDgpL4g4KS44KSC4KSa4KS+4KSy4KS/4KSkIiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLgpJXgpY3gpLDgpL/gpKrgpY3gpJ/gpYsg4KSq4KWN4KSw4KS+4KSH4KS4IOCkleClgCDgpKTgpYHgpLLgpKjgpL4iLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoi4KSV4KWN4KSw4KS/4KSq4KWN4KSf4KWLIOCkruCkvuCksOCljeCkleClh+CknyDgpJXgpYjgpKog4KSV4KWAIOCkpOClgeCksuCkqOCkviJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g4KSm4KWN4KS14KS+4KSw4KS+IOCkuOCkguCkmuCkvuCksuCkv+CkpCJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6IjI04KSY4KSCIOCkleCkviDgpLngpL7gpIgiLCIyNGhfbG93IjoiMjTgpJjgpIIg4KSV4KS+IOCksuCliyIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IOCkleCkviDgpKrgpY3gpLDgpL7gpIfgpLgg4KSa4KS+4KSw4KWN4KSfIOCkpuClh+CkluClh+CkgiIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOCkpuCljeCkteCkvuCksOCkviDgpLjgpILgpJrgpL7gpLLgpL/gpKQifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDgpKbgpY3gpLXgpL7gpLDgpL4g4KS44KSC4KSa4KS+4KSy4KS/4KSkIn0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g4KSm4KWN4KS14KS+4KSw4KS+IOCkuOCkguCkmuCkvuCksuCkv+CkpCJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDgpKbgpY3gpLXgpL7gpLDgpL4g4KS44KSC4KSa4KS+4KSy4KS/4KSkIn0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI04KSY4KSCIOCkleCkviDgpLngpL7gpIgiLCIyNGhfbG93IjoiMjTgpJjgpIIg4KSV4KS+IOCksuCliyIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IOCkleCkviDgpKrgpY3gpLDgpL7gpIfgpLgg4KSa4KS+4KSw4KWN4KSfIOCkpuClh+CkluClh+CkgiIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOCkpuCljeCkteCkvuCksOCkviDgpLjgpILgpJrgpL7gpLLgpL/gpKQifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IOCkleCkviDgpKrgpY3gpLDgpL7gpIfgpLgg4KSa4KS+4KSw4KWN4KSfIOCkpuClh+CkluClh+CkgiIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOCkpuCljeCkteCkvuCksOCkviDgpLjgpILgpJrgpL7gpLLgpL/gpKQifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IuCkleCljeCksOCkv+CkquCljeCkn+Cli+CkleCksOCkguCkuOClgCDgpJ/gpY3gpLDgpYAg4KSu4KWI4KSqIiwic3VidGl0bGUiOiIo4KSu4KS+4KSw4KWN4KSV4KWH4KSfIOCkleCliOCkqiDgpJXgpYcg4KSG4KSn4KS+4KSwIOCkquCksCDgpJ/gpYngpKogJXt0b3B9KSIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOCkpuCljeCkteCkvuCksOCkviDgpLjgpILgpJrgpL7gpLLgpL/gpKQifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLgpKHgpL/gpLjgpY3gpJXgpY3gpLLgpYfgpK7gpLA6IOCkr+CkuSDgpK7gpKjgpYvgpLDgpILgpJzgpKgg4KSV4KSw4KSo4KWHIOCkleClhyDgpLLgpL/gpI8g4KSV4KS+4KSuIOCkleCksOCkpOCkviDgpLngpYgg4KSU4KSwIOCkh+CkuOCkruClh+CkgiDgpJXgpYvgpIgg4KSG4KSw4KWN4KSl4KS/4KSVIOCkuOCksuCkvuCkuSDgpKjgpLngpYDgpIIg4KSm4KWAIOCknOCkvuCkpOClgCDgpLngpYjgpaQiLCJzcGluIjoi4KS44KWN4KSq4KS/4KSoIOCkleCksOClh+CkgiIsImF2YWlsYWJsZV9jb2lucyI6IuCkruCljOCknOClguCkpiDgpJXgpYngpIfgpKgifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiJDb2luR2Vja28g4KSq4KWN4KSw4KS+4KSH4KS4IOCkheCkquCkoeClh+CknyIsInRvdGFsX21jYXAiOiLgpJXgpYHgpLIg4KSu4KS+4KSw4KWN4KSV4KWH4KSfIOCkleCliOCkqiIsIjI0aF92b2wiOiIyNOCkmOCkguCkn+ClhyDgpJXgpL4g4KS14KS+4KSy4KWN4KSv4KWC4KSuIiwiZG9tIjoi4KS14KSw4KWN4KSa4KS44KWN4KS1In0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IuCkj+CkleCljeCkuOCkmuClh+CkguCknCIsInBhaXIiOiLgpKrgpYfgpK/gpLAiLCJwcmljZSI6IuCkquCljeCksOCkvuCkh+CkuCIsInZvbHVtZSI6IuCkteCkvuCksuCljeCkr+ClguCkriIsInRydXN0X3Njb3JlIjoi4KSf4KWN4KSw4KS44KWN4KSfIOCkuOCljeCkleCli+CksCIsInZpZXdfcHJpY2VfY2hhcnQiOiLgpKrgpY3gpLDgpL7gpIfgpLgg4KSa4KS+4KSw4KWN4KSfIOCkpuClh+CkleClh+CkgiIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOCkpuCljeCkteCkvuCksOCkviDgpLjgpILgpJrgpL7gpLLgpL/gpKQiLCJ2aWV3X2FsbCI6IuCkuOCkreClgCAle2NvaW59IOCkruCkvuCksOCljeCkleClh+Ckn+Cli+CkgiDgpJXgpYsg4KSm4KWH4KSW4KWH4KSCIn19Jyl9LCI3ZGFiIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF9KSk7bigiYWM2YSIpLG4oIjQ1NmQiKTt2YXIgcj17QlRDOiEwLEVUSDohMCxVU0Q6ITAsQUVEOiEwLEFSUzohMCxBVUQ6ITAsQlJMOiEwLENBRDohMCxDSEY6ITAsQ0xQOiEwLENOWTohMCxDWks6ITAsREtLOiEwLEVVUjohMCxHQlA6ITAsSEtEOiEwLEhVRjohMCxJRFI6ITAsSUxTOiEwLElOUjohMCxKUFk6ITAsS1JXOiEwLEtXRDohMCxMS1I6ITAsTVhOOiEwLE1ZUjohMCxOT0s6ITAsTlpEOiEwLFBIUDohMCxQS1I6ITAsUExOOiEwLFJVQjohMCxTQVI6ITAsU0VLOiEwLFNHRDohMCxUSEI6ITAsVFJZOiEwLFRXRDohMCxaQVI6ITB9O2Z1bmN0aW9uIGkoKXtyZXR1cm4gT2JqZWN0LmtleXMocil9dmFyIGE9WyJBRUQiLCJBUlMiLCJBVUQiLCJCQ0giLCJCRFQiLCJCSEQiLCJCSVRTIiwiQk1EIiwiQk5CIiwiQlJMIiwiQlRDIiwiQ0FEIiwiQ0hGIiwiQ0xQIiwiQ05ZIiwiQ1pLIiwiREtLIiwiRE9UIiwiRU9TIiwiRVRIIiwiRVVSIiwiR0JQIiwiR0VMIiwiSEtEIiwiSFVGIiwiSURSIiwiSUxTIiwiSU5SIiwiSlBZIiwiS1JXIiwiS1dEIiwiTElOSyIsIkxLUiIsIkxUQyIsIk1NSyIsIk1YTiIsIk1ZUiIsIk5HTiIsIk5PSyIsIk5aRCIsIlBIUCIsIlBLUiIsIlBMTiIsIlJVQiIsIlNBUiIsIlNBVFMiLCJTRUsiLCJTR0QiLCJUSEIiLCJUUlkiLCJUV0QiLCJVQUgiLCJVU0QiLCJWRUYiLCJWTkQiLCJYQUciLCJYQVUiLCJYRFIiLCJYTE0iLCJYUlAiLCJZRkkiLCJaQVIiXX0sIjdlOTAiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkOWY2IiksaT1uKCJlNGFlIiksYT1uKCJjM2ExIik7ZS5leHBvcnRzPW4oIjhlNjAiKT9PYmplY3QuZGVmaW5lUHJvcGVydGllczpmdW5jdGlvbihlLHQpe2koZSk7dmFyIG4sbz1hKHQpLGM9by5sZW5ndGgscz0wO3doaWxlKGM+cylyLmYoZSxuPW9bcysrXSx0W25dKTtyZXR1cm4gZX19LCI3ZjIwIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiODZjYyIpLmYsaT1uKCI2OWE4IiksYT1uKCIyYjRjIikoInRvU3RyaW5nVGFnIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXtlJiYhaShlPW4/ZTplLnByb3RvdHlwZSxhKSYmcihlLGEse2NvbmZpZ3VyYWJsZTohMCx2YWx1ZTp0fSl9fSwiN2Y3ZiI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjg2Y2MiKS5mLGk9RnVuY3Rpb24ucHJvdG90eXBlLGE9L15ccypmdW5jdGlvbiAoW14gKF0qKS8sbz0ibmFtZSI7byBpbiBpfHxuKCI5ZTFlIikmJnIoaSxvLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7dHJ5e3JldHVybigiIit0aGlzKS5tYXRjaChhKVsxXX1jYXRjaChlKXtyZXR1cm4iIn19fSl9LDgzNzg6ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmV4cG9ydHM9e3ZlcnNpb246IjIuNi4xMSJ9OyJudW1iZXIiPT10eXBlb2YgX19lJiYoX19lPW4pfSwiODNjMiI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcixpPVR5cGVFcnJvcixhPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7aWYoYSl0cnl7YSh7fSwiIil9Y2F0Y2goUyl7YT1udWxsfXZhciBvLGMscyxwPWZ1bmN0aW9uKCl7dGhyb3cgbmV3IGl9LGw9YT9mdW5jdGlvbigpe3RyeXtyZXR1cm4gYXJndW1lbnRzLmNhbGxlZSxwfWNhdGNoKGUpe3RyeXtyZXR1cm4gYShhcmd1bWVudHMsImNhbGxlZSIpLmdldH1jYXRjaCh0KXtyZXR1cm4gcH19fSgpOnAsdT1uKCI5ZDNjIikoKSxkPU9iamVjdC5nZXRQcm90b3R5cGVPZnx8ZnVuY3Rpb24oZSl7cmV0dXJuIGUuX19wcm90b19ffSxfPW8/ZChvKTpyLG09Yz9jLmNvbnN0cnVjdG9yOnIsZj1zP2Qocyk6cixoPXM/cygpOnIsdj0idW5kZWZpbmVkIj09PXR5cGVvZiBVaW50OEFycmF5P3I6ZChVaW50OEFycmF5KSx5PXsiJUFycmF5JSI6QXJyYXksIiVBcnJheUJ1ZmZlciUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEFycmF5QnVmZmVyP3I6QXJyYXlCdWZmZXIsIiVBcnJheUJ1ZmZlclByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEFycmF5QnVmZmVyP3I6QXJyYXlCdWZmZXIucHJvdG90eXBlLCIlQXJyYXlJdGVyYXRvclByb3RvdHlwZSUiOnU/ZChbXVtTeW1ib2wuaXRlcmF0b3JdKCkpOnIsIiVBcnJheVByb3RvdHlwZSUiOkFycmF5LnByb3RvdHlwZSwiJUFycmF5UHJvdG9fZW50cmllcyUiOkFycmF5LnByb3RvdHlwZS5lbnRyaWVzLCIlQXJyYXlQcm90b19mb3JFYWNoJSI6QXJyYXkucHJvdG90eXBlLmZvckVhY2gsIiVBcnJheVByb3RvX2tleXMlIjpBcnJheS5wcm90b3R5cGUua2V5cywiJUFycmF5UHJvdG9fdmFsdWVzJSI6QXJyYXkucHJvdG90eXBlLnZhbHVlcywiJUFzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlwZSUiOnIsIiVBc3luY0Z1bmN0aW9uJSI6bSwiJUFzeW5jRnVuY3Rpb25Qcm90b3R5cGUlIjptP20ucHJvdG90eXBlOnIsIiVBc3luY0dlbmVyYXRvciUiOnM/ZChoKTpyLCIlQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiUiOmYsIiVBc3luY0dlbmVyYXRvclByb3RvdHlwZSUiOmY/Zi5wcm90b3R5cGU6ciwiJUFzeW5jSXRlcmF0b3JQcm90b3R5cGUlIjpoJiZ1JiZTeW1ib2wuYXN5bmNJdGVyYXRvcj9oW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpOnIsIiVBdG9taWNzJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgQXRvbWljcz9yOkF0b21pY3MsIiVCb29sZWFuJSI6Qm9vbGVhbiwiJUJvb2xlYW5Qcm90b3R5cGUlIjpCb29sZWFuLnByb3RvdHlwZSwiJURhdGFWaWV3JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgRGF0YVZpZXc/cjpEYXRhVmlldywiJURhdGFWaWV3UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgRGF0YVZpZXc/cjpEYXRhVmlldy5wcm90b3R5cGUsIiVEYXRlJSI6RGF0ZSwiJURhdGVQcm90b3R5cGUlIjpEYXRlLnByb3RvdHlwZSwiJWRlY29kZVVSSSUiOmRlY29kZVVSSSwiJWRlY29kZVVSSUNvbXBvbmVudCUiOmRlY29kZVVSSUNvbXBvbmVudCwiJWVuY29kZVVSSSUiOmVuY29kZVVSSSwiJWVuY29kZVVSSUNvbXBvbmVudCUiOmVuY29kZVVSSUNvbXBvbmVudCwiJUVycm9yJSI6RXJyb3IsIiVFcnJvclByb3RvdHlwZSUiOkVycm9yLnByb3RvdHlwZSwiJWV2YWwlIjpldmFsLCIlRXZhbEVycm9yJSI6RXZhbEVycm9yLCIlRXZhbEVycm9yUHJvdG90eXBlJSI6RXZhbEVycm9yLnByb3RvdHlwZSwiJUZsb2F0MzJBcnJheSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEZsb2F0MzJBcnJheT9yOkZsb2F0MzJBcnJheSwiJUZsb2F0MzJBcnJheVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEZsb2F0MzJBcnJheT9yOkZsb2F0MzJBcnJheS5wcm90b3R5cGUsIiVGbG9hdDY0QXJyYXklIjoidW5kZWZpbmVkIj09PXR5cGVvZiBGbG9hdDY0QXJyYXk/cjpGbG9hdDY0QXJyYXksIiVGbG9hdDY0QXJyYXlQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBGbG9hdDY0QXJyYXk/cjpGbG9hdDY0QXJyYXkucHJvdG90eXBlLCIlRnVuY3Rpb24lIjpGdW5jdGlvbiwiJUZ1bmN0aW9uUHJvdG90eXBlJSI6RnVuY3Rpb24ucHJvdG90eXBlLCIlR2VuZXJhdG9yJSI6bz9kKG8oKSk6ciwiJUdlbmVyYXRvckZ1bmN0aW9uJSI6XywiJUdlbmVyYXRvclByb3RvdHlwZSUiOl8/Xy5wcm90b3R5cGU6ciwiJUludDhBcnJheSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEludDhBcnJheT9yOkludDhBcnJheSwiJUludDhBcnJheVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIEludDhBcnJheT9yOkludDhBcnJheS5wcm90b3R5cGUsIiVJbnQxNkFycmF5JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgSW50MTZBcnJheT9yOkludDE2QXJyYXksIiVJbnQxNkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgSW50MTZBcnJheT9yOkludDhBcnJheS5wcm90b3R5cGUsIiVJbnQzMkFycmF5JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgSW50MzJBcnJheT9yOkludDMyQXJyYXksIiVJbnQzMkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgSW50MzJBcnJheT9yOkludDMyQXJyYXkucHJvdG90eXBlLCIlaXNGaW5pdGUlIjppc0Zpbml0ZSwiJWlzTmFOJSI6aXNOYU4sIiVJdGVyYXRvclByb3RvdHlwZSUiOnU/ZChkKFtdW1N5bWJvbC5pdGVyYXRvcl0oKSkpOnIsIiVKU09OJSI6Im9iamVjdCI9PT10eXBlb2YgSlNPTj9KU09OOnIsIiVKU09OUGFyc2UlIjoib2JqZWN0Ij09PXR5cGVvZiBKU09OP0pTT04ucGFyc2U6ciwiJU1hcCUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIE1hcD9yOk1hcCwiJU1hcEl0ZXJhdG9yUHJvdG90eXBlJSI6InVuZGVmaW5lZCIhPT10eXBlb2YgTWFwJiZ1P2QoKG5ldyBNYXApW1N5bWJvbC5pdGVyYXRvcl0oKSk6ciwiJU1hcFByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIE1hcD9yOk1hcC5wcm90b3R5cGUsIiVNYXRoJSI6TWF0aCwiJU51bWJlciUiOk51bWJlciwiJU51bWJlclByb3RvdHlwZSUiOk51bWJlci5wcm90b3R5cGUsIiVPYmplY3QlIjpPYmplY3QsIiVPYmplY3RQcm90b3R5cGUlIjpPYmplY3QucHJvdG90eXBlLCIlT2JqUHJvdG9fdG9TdHJpbmclIjpPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLCIlT2JqUHJvdG9fdmFsdWVPZiUiOk9iamVjdC5wcm90b3R5cGUudmFsdWVPZiwiJXBhcnNlRmxvYXQlIjpwYXJzZUZsb2F0LCIlcGFyc2VJbnQlIjpwYXJzZUludCwiJVByb21pc2UlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBQcm9taXNlP3I6UHJvbWlzZSwiJVByb21pc2VQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBQcm9taXNlP3I6UHJvbWlzZS5wcm90b3R5cGUsIiVQcm9taXNlUHJvdG9fdGhlbiUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb21pc2U/cjpQcm9taXNlLnByb3RvdHlwZS50aGVuLCIlUHJvbWlzZV9hbGwlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBQcm9taXNlP3I6UHJvbWlzZS5hbGwsIiVQcm9taXNlX3JlamVjdCUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb21pc2U/cjpQcm9taXNlLnJlamVjdCwiJVByb21pc2VfcmVzb2x2ZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb21pc2U/cjpQcm9taXNlLnJlc29sdmUsIiVQcm94eSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFByb3h5P3I6UHJveHksIiVSYW5nZUVycm9yJSI6UmFuZ2VFcnJvciwiJVJhbmdlRXJyb3JQcm90b3R5cGUlIjpSYW5nZUVycm9yLnByb3RvdHlwZSwiJVJlZmVyZW5jZUVycm9yJSI6UmVmZXJlbmNlRXJyb3IsIiVSZWZlcmVuY2VFcnJvclByb3RvdHlwZSUiOlJlZmVyZW5jZUVycm9yLnByb3RvdHlwZSwiJVJlZmxlY3QlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBSZWZsZWN0P3I6UmVmbGVjdCwiJVJlZ0V4cCUiOlJlZ0V4cCwiJVJlZ0V4cFByb3RvdHlwZSUiOlJlZ0V4cC5wcm90b3R5cGUsIiVTZXQlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBTZXQ/cjpTZXQsIiVTZXRJdGVyYXRvclByb3RvdHlwZSUiOiJ1bmRlZmluZWQiIT09dHlwZW9mIFNldCYmdT9kKChuZXcgU2V0KVtTeW1ib2wuaXRlcmF0b3JdKCkpOnIsIiVTZXRQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBTZXQ/cjpTZXQucHJvdG90eXBlLCIlU2hhcmVkQXJyYXlCdWZmZXIlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBTaGFyZWRBcnJheUJ1ZmZlcj9yOlNoYXJlZEFycmF5QnVmZmVyLCIlU2hhcmVkQXJyYXlCdWZmZXJQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBTaGFyZWRBcnJheUJ1ZmZlcj9yOlNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZSwiJVN0cmluZyUiOlN0cmluZywiJVN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlJSI6dT9kKCIiW1N5bWJvbC5pdGVyYXRvcl0oKSk6ciwiJVN0cmluZ1Byb3RvdHlwZSUiOlN0cmluZy5wcm90b3R5cGUsIiVTeW1ib2wlIjp1P1N5bWJvbDpyLCIlU3ltYm9sUHJvdG90eXBlJSI6dT9TeW1ib2wucHJvdG90eXBlOnIsIiVTeW50YXhFcnJvciUiOlN5bnRheEVycm9yLCIlU3ludGF4RXJyb3JQcm90b3R5cGUlIjpTeW50YXhFcnJvci5wcm90b3R5cGUsIiVUaHJvd1R5cGVFcnJvciUiOmwsIiVUeXBlZEFycmF5JSI6diwiJVR5cGVkQXJyYXlQcm90b3R5cGUlIjp2P3YucHJvdG90eXBlOnIsIiVUeXBlRXJyb3IlIjppLCIlVHlwZUVycm9yUHJvdG90eXBlJSI6aS5wcm90b3R5cGUsIiVVaW50OEFycmF5JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgVWludDhBcnJheT9yOlVpbnQ4QXJyYXksIiVVaW50OEFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgVWludDhBcnJheT9yOlVpbnQ4QXJyYXkucHJvdG90eXBlLCIlVWludDhDbGFtcGVkQXJyYXklIjoidW5kZWZpbmVkIj09PXR5cGVvZiBVaW50OENsYW1wZWRBcnJheT9yOlVpbnQ4Q2xhbXBlZEFycmF5LCIlVWludDhDbGFtcGVkQXJyYXlQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBVaW50OENsYW1wZWRBcnJheT9yOlVpbnQ4Q2xhbXBlZEFycmF5LnByb3RvdHlwZSwiJVVpbnQxNkFycmF5JSI6InVuZGVmaW5lZCI9PT10eXBlb2YgVWludDE2QXJyYXk/cjpVaW50MTZBcnJheSwiJVVpbnQxNkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PT10eXBlb2YgVWludDE2QXJyYXk/cjpVaW50MTZBcnJheS5wcm90b3R5cGUsIiVVaW50MzJBcnJheSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFVpbnQzMkFycmF5P3I6VWludDMyQXJyYXksIiVVaW50MzJBcnJheVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFVpbnQzMkFycmF5P3I6VWludDMyQXJyYXkucHJvdG90eXBlLCIlVVJJRXJyb3IlIjpVUklFcnJvciwiJVVSSUVycm9yUHJvdG90eXBlJSI6VVJJRXJyb3IucHJvdG90eXBlLCIlV2Vha01hcCUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFdlYWtNYXA/cjpXZWFrTWFwLCIlV2Vha01hcFByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT09dHlwZW9mIFdlYWtNYXA/cjpXZWFrTWFwLnByb3RvdHlwZSwiJVdlYWtTZXQlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBXZWFrU2V0P3I6V2Vha1NldCwiJVdlYWtTZXRQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09PXR5cGVvZiBXZWFrU2V0P3I6V2Vha1NldC5wcm90b3R5cGV9LGc9bigiMGY3YyIpLHc9Zy5jYWxsKEZ1bmN0aW9uLmNhbGwsU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlKSxiPS9bXiUuW1xdXSt8XFsoPzooLT9cZCsoPzpcLlxkKyk/KXwoWyInXSkoKD86KD8hXDIpW15cXF18XFwuKSo/KVwyKVxdfCg/PSg/OlwufFxbXF0pKD86XC58XFtcXXwlJCkpL2csaz0vXFwoXFwpPy9nLHg9ZnVuY3Rpb24oZSl7dmFyIHQ9W107cmV0dXJuIHcoZSxiLChmdW5jdGlvbihlLG4scixpKXt0W3QubGVuZ3RoXT1yP3coaSxrLCIkMSIpOm58fGV9KSksdH0sQz1mdW5jdGlvbihlLHQpe2lmKCEoZSBpbiB5KSl0aHJvdyBuZXcgU3ludGF4RXJyb3IoImludHJpbnNpYyAiK2UrIiBkb2VzIG5vdCBleGlzdCEiKTtpZigidW5kZWZpbmVkIj09PXR5cGVvZiB5W2VdJiYhdCl0aHJvdyBuZXcgaSgiaW50cmluc2ljICIrZSsiIGV4aXN0cywgYnV0IGlzIG5vdCBhdmFpbGFibGUuIFBsZWFzZSBmaWxlIGFuIGlzc3VlISIpO3JldHVybiB5W2VdfTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZigic3RyaW5nIiE9PXR5cGVvZiBlfHwwPT09ZS5sZW5ndGgpdGhyb3cgbmV3IFR5cGVFcnJvcigiaW50cmluc2ljIG5hbWUgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmciKTtpZihhcmd1bWVudHMubGVuZ3RoPjEmJiJib29sZWFuIiE9PXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoJyJhbGxvd01pc3NpbmciIGFyZ3VtZW50IG11c3QgYmUgYSBib29sZWFuJyk7Zm9yKHZhciBuPXgoZSkscj1DKCIlIisobi5sZW5ndGg+MD9uWzBdOiIiKSsiJSIsdCksbz0xO288bi5sZW5ndGg7bys9MSlpZihudWxsIT1yKWlmKGEmJm8rMT49bi5sZW5ndGgpe3ZhciBjPWEocixuW29dKTtpZighdCYmIShuW29daW4gcikpdGhyb3cgbmV3IGkoImJhc2UgaW50cmluc2ljIGZvciAiK2UrIiBleGlzdHMsIGJ1dCB0aGUgcHJvcGVydHkgaXMgbm90IGF2YWlsYWJsZS4iKTtyPWM/Yy5nZXR8fGMudmFsdWU6cltuW29dXX1lbHNlIHI9cltuW29dXTtyZXR1cm4gcn19LDg0MzY6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oKXt9fSwiODRmMiI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9e319LDg2ODA6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IuC4reC4seC4meC4lOC4seC4muC4oeC4ueC4peC4hOC5iOC4suC4leC4suC4oeC4o+C4suC4hOC4suC4leC4peC4suC4lCIsIm1jYXAiOiLguKHguLnguKXguITguYjguLLguJXguLLguKHguKPguLLguITguLLguJXguKXguLLguJQiLCIyNGhfdm9sdW1lIjoi4Lib4Lij4Li04Lih4Liy4LiTIDI0IOC4iuC4seC5iOC4p+C5guC4oeC4hyIsIjI0aF9oaWdoX2xvdyI6IuC4quC4ueC4hyAvIOC4leC5iOC4syAyNCDguIrguKEuIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IuC4guC4seC4muC5gOC4hOC4peC4t+C5iOC4reC4meC5guC4lOC4oiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLguIHguLLguKPguYDguJvguKPguLXguKLguJrguYDguJfguLXguKLguJrguKPguLLguITguLLguITguKPguLTguJvguYLguJUiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoi4LiB4Liy4Lij4LmA4Lib4Lij4Li14Lii4Lia4LmA4LiX4Li14Lii4Lia4Lih4Li54Lil4LiE4LmI4Liy4LiV4Lil4Liy4LiU4LiE4Lij4Li04Lib4LmC4LiVIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi4LiC4Lix4Lia4LmA4LiE4Lil4Li34LmI4Lit4LiZ4LmC4LiU4LiiICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCDguIrguKEuIOC4quC4ueC4h+C4quC4uOC4lCIsIjI0aF9sb3ciOiIyNCDguIrguKEuIOC4leC5iOC4s+C4quC4uOC4lCIsInZpZXdfcHJpY2VfY2hhcnQiOiLguJTguLnguIHguKPguLLguJ/guKPguLLguITguLIgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguYLguJTguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguYLguJTguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguYLguJTguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi4LiC4Lix4Lia4LmA4LiE4Lil4Li34LmI4Lit4LiZ4LmC4LiU4LiiICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjQg4LiK4LihLiDguKrguLnguIfguKrguLjguJQiLCIyNGhfbG93IjoiMjQg4LiK4LihLiDguJXguYjguLPguKrguLjguJQiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi4LiU4Li54LiB4Lij4Liy4Lif4Lij4Liy4LiE4LiyICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi4LiC4Lix4Lia4LmA4LiE4Lil4Li34LmI4Lit4LiZ4LmC4LiU4LiiICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiLguJTguLnguIHguKPguLLguJ/guKPguLLguITguLIgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguYLguJTguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoi4LmB4Lic4LiZ4LiX4Li14LmI4Lij4Li54Lib4LiV4LmJ4LiZ4LmE4Lih4LmJIENyeXB0b2N1cnJlbmN5Iiwic3VidGl0bGUiOiIoJXt0b3B9IOC4quC4ueC4h+C4quC4uOC4lOC4leC4suC4oeC4oeC4ueC4peC4hOC5iOC4suC4leC4peC4suC4lCkiLCJwb3dlcmVkX2J5Ijoi4LiC4Lix4Lia4LmA4LiE4Lil4Li34LmI4Lit4LiZ4LmC4LiU4LiiICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLguILguYnguK3guIjguLPguIHguLHguJTguITguKfguLLguKHguKPguLHguJrguJzguLTguJTguIrguK3guJo6IOC5gOC4hOC4o+C4t+C5iOC4reC4h+C4oeC4t+C4reC4meC4teC5ieC4l+C4s+C4q+C4meC5ieC4suC4l+C4teC5iOC5gOC4m+C5h+C4meC4hOC4p+C4suC4oeC4muC4seC4meC5gOC4l+C4tOC4h+C5geC4peC4sOC5hOC4oeC5iOC5g+C4iuC5iOC4hOC4s+C5geC4meC4sOC4meC4s+C4l+C4suC4h+C4geC4suC4o+C5gOC4h+C4tOC4mSIsInNwaW4iOiLguKvguKHguLjguJkiLCJhdmFpbGFibGVfY29pbnMiOiLguYDguKvguKPguLXguKLguI3guJfguLXguYjguKHguLXguK3guKLguLnguYgifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiLguK3guLHguJ7guYDguJTguJfguKPguLLguITguLIgQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6IuC4hOC4p+C4suC4oeC4iOC4uOC4l+C4seC5ieC4h+C4q+C4oeC4lOC4guC4reC4hyBNIiwiMjRoX3ZvbCI6IuC4m+C4o+C4tOC4oeC4suC4kyAyNCDguIrguKEuIiwiZG9tIjoi4LiB4Liy4Lij4LiE4Lij4Lit4LiH4Liq4LmI4Lin4LiZ4LmB4Lia4LmI4LiH4LmD4LiZ4LiV4Lil4Liy4LiUIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IuC4leC4peC4suC4lOC5geC4peC4geC5gOC4m+C4peC4teC5iOC4ouC4mSIsInBhaXIiOiLguITguLnguYgiLCJwcmljZSI6IuC4o+C4suC4hOC4siIsInZvbHVtZSI6IuC4m+C4o+C4tOC4oeC4suC4kyIsInRydXN0X3Njb3JlIjoi4LiE4Liw4LmB4LiZ4LiZ4LiE4Lin4Liy4Lih4LiZ4LmI4Liy4LmA4LiK4Li34LmI4Lit4LiW4Li34LitIiwidmlld19wcmljZV9jaGFydCI6IuC4lOC4ueC4geC4o+C4suC4n+C4o+C4suC4hOC4siIsInBvd2VyZWRfYnkiOiLguILguLHguJrguYDguITguKXguLfguYjguK3guJnguYLguJTguKIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoi4LiU4Li54LiV4Lil4Liy4LiUICV7Y29pbn0g4LiX4Lix4LmJ4LiH4Lir4Lih4LiUIn19Jyl9LCI4NmNjIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiY2I3YyIpLGk9bigiYzY5YSIpLGE9bigiNmE5OSIpLG89T2JqZWN0LmRlZmluZVByb3BlcnR5O3QuZj1uKCI5ZTFlIik/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKGUsdCxuKXtpZihyKGUpLHQ9YSh0LCEwKSxyKG4pLGkpdHJ5e3JldHVybiBvKGUsdCxuKX1jYXRjaChjKXt9aWYoImdldCJpbiBufHwic2V0ImluIG4pdGhyb3cgVHlwZUVycm9yKCJBY2Nlc3NvcnMgbm90IHN1cHBvcnRlZCEiKTtyZXR1cm4idmFsdWUiaW4gbiYmKGVbdF09bi52YWx1ZSksZX19LCI4OWIyIjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiT2NlbmEgd2cuIGthcGl0YWxpemFjamkgcnlua3UiLCJtY2FwIjoiS2FwaXRhbGl6YWNqYSByeW5rb3dhIiwiMjRoX3ZvbHVtZSI6IldvbHVtZW4g4oCTIDI0IGdvZHouIiwiMjRoX2hpZ2hfbG93IjoiMjQgaCDigJMgbWFrcy4vbWluLiJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJPYnPFgnVnaXdhbmUgcHJ6ZXogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiUG9yw7N3bmFuaWUga3Vyc3Uga3J5cHRvIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IlBvcsOzd25hbmllIGthcGl0YWxpemFjamkgcnlua293ZWoga3J5cHRvIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiT2JzxYJ1Z2l3YW5lIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNCBnb2R6LiDigJMgd3lzb2tvIiwiMjRoX2xvdyI6IjI0IGdvZHouIOKAkyBuaXNrbyIsInZpZXdfcHJpY2VfY2hhcnQiOiJXecWbd2lldGwgd3lrcmVzIGt1cnN1ICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiT2JzxYJ1Z2l3YW5lIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiT2JzxYJ1Z2l3YW5lIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiT2JzxYJ1Z2l3YW5lIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6Ik9ic8WCdWdpd2FuZSBwcnpleiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0IGdvZHouIOKAkyB3eXNva28iLCIyNGhfbG93IjoiMjQgZ29kei4g4oCTIG5pc2tvIiwidmlld19wcmljZV9jaGFydCI6Ild5xZt3aWV0bCB3eWtyZXMga3Vyc3UgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJPYnPFgnVnaXdhbmUgcHJ6ZXogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6Ild5xZt3aWV0bCB3eWtyZXMga3Vyc3UgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJPYnPFgnVnaXdhbmUgcHJ6ZXogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoiRHJ6ZXdvIGtyeXB0b3dhbHV0Iiwic3VidGl0bGUiOiIoVG9wICV7dG9wfSB3ZWTFgnVnIGthcGl0YWxpemFjamkgcnlua293ZWopIiwicG93ZXJlZF9ieSI6Ik9ic8WCdWdpd2FuZSBwcnpleiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiT8Wbd2lhZGN6ZW5pZTogTmFyesSZZHppYSB0ZSBzxYJ1xbzEhSByb3pyeXdjZSBpIG5pZSBzdGFub3dpxIUgcG9yYWR5IGZpbmFuc293ZWouIiwic3BpbiI6Ilpha3LEmcSHIiwiYXZhaWxhYmxlX2NvaW5zIjoiRG9zdMSZcG5lIHdhbHV0eSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkFrdHVhbGl6YWNqYSBrdXJzdSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiQ2HFgmtvd2l0YSBrYXBpdGFsaXphY2phIHJ5bmtvd2EiLCIyNGhfdm9sIjoiV29sdW1lbiDigJMgMjQgZ29kei4iLCJkb20iOiJEb21pbmFjamEifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiR2llxYJkYSIsInBhaXIiOiJQYXJhIiwicHJpY2UiOiJLdXJzIiwidm9sdW1lIjoiV29sdW1lbiIsInRydXN0X3Njb3JlIjoiV3NrYcW6bmlrIHphdWZhbmlhIiwidmlld19wcmljZV9jaGFydCI6Ild5xZt3aWV0bCB3eWtyZXMga3Vyc3UiLCJwb3dlcmVkX2J5IjoiT2JzxYJ1Z2l3YW5lIHByemV6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6IlpvYmFjeiB3c3p5c3RraWUgcnlua2kgJXtjb2lufSJ9fScpfSwiOGFiNSI6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCI4M2MyIiksaT1uKCI0ZDAxIiksYT1pKHIoIlN0cmluZy5wcm90b3R5cGUuaW5kZXhPZiIpKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbj1yKGUsISF0KTtyZXR1cm4iZnVuY3Rpb24iPT09dHlwZW9mIG4mJmEoZSwiLnByb3RvdHlwZS4iKT9pKG4pOm59fSwiOGI5NyI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImQzZjQiKSxpPW4oImNiN2MiKSxhPWZ1bmN0aW9uKGUsdCl7aWYoaShlKSwhcih0KSYmbnVsbCE9PXQpdGhyb3cgVHlwZUVycm9yKHQrIjogY2FuJ3Qgc2V0IGFzIHByb3RvdHlwZSEiKX07ZS5leHBvcnRzPXtzZXQ6T2JqZWN0LnNldFByb3RvdHlwZU9mfHwoIl9fcHJvdG9fXyJpbnt9P2Z1bmN0aW9uKGUsdCxyKXt0cnl7cj1uKCI5YjQzIikoRnVuY3Rpb24uY2FsbCxuKCIxMWU5IikuZihPYmplY3QucHJvdG90eXBlLCJfX3Byb3RvX18iKS5zZXQsMikscihlLFtdKSx0PSEoZSBpbnN0YW5jZW9mIEFycmF5KX1jYXRjaChpKXt0PSEwfXJldHVybiBmdW5jdGlvbihlLG4pe3JldHVybiBhKGUsbiksdD9lLl9fcHJvdG9fXz1uOnIoZSxuKSxlfX0oe30sITEpOnZvaWQgMCksY2hlY2s6YX19LCI4ZTYwIjpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPSFuKCIyOTRjIikoKGZ1bmN0aW9uKCl7cmV0dXJuIDchPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwiYSIse2dldDpmdW5jdGlvbigpe3JldHVybiA3fX0pLmF9KSl9LCI4ZjYwIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImExNTkiKSxpPW4oImFlYmQiKSxhPW4oIjQ1ZjIiKSxvPXt9O24oIjM1ZTgiKShvLG4oIjUxNjgiKSgiaXRlcmF0b3IiKSwoZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pKSxlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe2UucHJvdG90eXBlPXIobyx7bmV4dDppKDEsbil9KSxhKGUsdCsiIEl0ZXJhdG9yIil9fSw5MDAzOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI2YjRjIik7ZS5leHBvcnRzPUFycmF5LmlzQXJyYXl8fGZ1bmN0aW9uKGUpe3JldHVybiJBcnJheSI9PXIoZSl9fSw5MDkzOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJjZTEwIiksaT1uKCJlMTFlIikuY29uY2F0KCJsZW5ndGgiLCJwcm90b3R5cGUiKTt0LmY9T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXN8fGZ1bmN0aW9uKGUpe3JldHVybiByKGUsaSl9fSw5MTM4OmZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9bigiMzVlOCIpfSwiOTJkNyI6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IlJhbmcgcHJlbWEgdHLFvmnFoW5vaiBrYXBpdC4iLCJtY2FwIjoiVHLFvmnFoW5hIGthcGl0LiIsIjI0aF92b2x1bWUiOiJWb2x1bWVuIHUgMjQgaCIsIjI0aF9oaWdoX2xvdyI6IlZpc29rYS9uaXNrYSB1IDI0IGgifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUG9rcmXEh2UgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiVXNwb3JlZGJhIGNpamVuZSBrcmlwdG92YWx1dGEiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiVXNwb3JlZGJhIHRyxb5pxaFuZSBrYXBpdGFsaXphY2lqZSBrcmlwdG92YWx1dGEifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb2tyZcSHZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiVmlzb2thIHUgMjQgaCIsIjI0aF9sb3ciOiJOaXNrYSB1IDI0IGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiUHJpa2HFvmkgZ3JhZmlrb24gY2lqZW5lICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiUG9rcmXEh2UgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb2tyZcSHZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBva3JlxIdlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBva3JlxIdlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiVmlzb2thIHUgMjQgaCIsIjI0aF9sb3ciOiJOaXNrYSB1IDI0IGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiUHJpa2HFvmkgZ3JhZmlrb24gY2lqZW5lICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiUG9rcmXEh2UgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlByaWthxb5pIGdyYWZpa29uIGNpamVuZSAle2NvaW59IiwicG93ZXJlZF9ieSI6IlBva3JlxIdlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IkthcnRhIHNhIHN0YWJsb20ga3JpcHRvdmFsdXRhIiwic3VidGl0bGUiOiIoTmFqdmXEh2loICV7dG9wfSBwcmVtYSB0csW+acWhbm9qIGthcGl0YWxpemFjaWppKSIsInBvd2VyZWRfYnkiOiJQb2tyZcSHZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiSXpqYXZhIG8gb2RyaWNhbmp1IG9kZ292b3Jub3N0aTogb3ZpIGFsYXRpIHphYmF2bm9nIHN1IGthcmFrdGVyYSBpIG5lIHByZWRzdGF2bGphanUgZmluYW5jaWpza2kgc2F2amV0LiIsInNwaW4iOiJTcGluIiwiYXZhaWxhYmxlX2NvaW5zIjoiRG9zdHVwbmkgbm92xI1pxIdpIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiQcW+dXJpcmFuamUgY2lqZW5lIG5hIHBsYXRmb3JtaSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiVWt1cG5hIHRyxb4uIGthcGl0YWxpemFjaWphIiwiMjRoX3ZvbCI6IlZvbHVtZW4gdSAyNCBoIiwiZG9tIjoiRG9taW5hbnRub3N0In0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IkJ1cnphIiwicGFpciI6IlBhciIsInByaWNlIjoiQ2lqZW5hIiwidm9sdW1lIjoiVm9sdW1lbiIsInRydXN0X3Njb3JlIjoiT2NqZW5hIHBvdXpkYW5vc3RpIiwidmlld19wcmljZV9jaGFydCI6IlByaWthxb5pIGdyYWZpa29uIGNpamVuZSIsInBvd2VyZWRfYnkiOiJQb2tyZcSHZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJQcmlrYcW+aSBzdmEgdHLFvmnFoXRhIHphICV7Y29pbn0ifX0nKX0sOTU0MjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiUmFuZyBjYXBpdGFsaXphcmUgbGEgYnVyc8SDIiwibWNhcCI6IkNhcGl0YWxpemFyZSBsYSBidXJzxIMiLCIyNGhfdm9sdW1lIjoiVm9sdW0gw65uIHVsdGltZWxlIDI0IG9yZSIsIjI0aF9oaWdoX2xvdyI6Ik1heGltL01pbmltIMOubiAyNGgifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiU3VzyJtpbnV0IGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IkNvbXBhcmFyZWEgcHJlyJt1cmlsb3IgQ3JpcHRvIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IkNvbXBhcmFyZSBjYXBpdGFsaXphcmVhIGxhIGJ1cnNhIGNyaXB0byJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlN1c8ibaW51dCBkZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTWF4aW0gw65uIHVsdGltZWxlIDI0IG9yZSIsIjI0aF9sb3ciOiJNaW5pbSDDrm4gdWx0aW1lbGUgMjQgb3JlIiwidmlld19wcmljZV9jaGFydCI6IlZlemkgZ3JhZmljdWwgZGUgcHJlyJt1cmkgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJTdXPIm2ludXQgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJTdXPIm2ludXQgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJTdXPIm2ludXQgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiU3VzyJtpbnV0IGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTWF4aW0gw65uIHVsdGltZWxlIDI0IG9yZSIsIjI0aF9sb3ciOiJNaW5pbSDDrm4gdWx0aW1lbGUgMjQgb3JlIiwidmlld19wcmljZV9jaGFydCI6IlZlemkgZ3JhZmljdWwgZGUgcHJlyJt1cmkgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJTdXPIm2ludXQgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZlemkgZ3JhZmljdWwgZGUgcHJlyJt1cmkgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJTdXPIm2ludXQgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoiSGFydGEgYXJib3Jlc2NlbnTEgyBhIGNyaXB0b21vbmVkZWxvciIsInN1YnRpdGxlIjoiKFRvcCAle3RvcH0gZHVwxIMgY2FwaXRhbGl6YXJlYSBidXJzaWVyxIMpIiwicG93ZXJlZF9ieSI6IlN1c8ibaW51dCBkZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiQXZlcnRpc21lbnQ6IEFjZXN0IGluc3RydW1lbnQgZXN0ZSBwZW50cnUgZGl2ZXJ0aXNtZW50IMiZaSBudSBhcmUgcm9sdWwgZGUgY29uc2lsaWVyZSBmaW5hbmNpYXLEgy4iLCJzcGluIjoiUm90aXJlIiwiYXZhaWxhYmxlX2NvaW5zIjoiTW9uZWRlIGRpc3BvbmliaWxlIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiQWN0dWFsaXphcmUgUHJlyJsgQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6IlRvdGFsIGNhcGl0YWxpemFyZSBsYSBidXJzxIMiLCIyNGhfdm9sIjoiVm9sdW0gw65uIHVsdGltZWxlIDI0IG9yZSIsImRvbSI6IkRvbWluYcibaWUifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoiU2NoaW1iIiwicGFpciI6IlBlcmVjaGUiLCJwcmljZSI6IlByZcibIiwidm9sdW1lIjoiVm9sdW0iLCJ0cnVzdF9zY29yZSI6IlNjb3IgZGUgw65uY3JlZGVyZSIsInZpZXdfcHJpY2VfY2hhcnQiOiJWZXppIGdyYWZpY3VsIGRlIHByZcibdXJpIiwicG93ZXJlZF9ieSI6IlN1c8ibaW51dCBkZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWZXppIHRvYXRlIHBpZcibZWxlICV7Y29pbn0ifX0nKX0sIjlhYTkiOmZ1bmN0aW9uKGUsdCl7dC5mPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHN9LCI5YjQzIjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDhlOCIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7aWYocihlKSx2b2lkIDA9PT10KXJldHVybiBlO3N3aXRjaChuKXtjYXNlIDE6cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiBlLmNhbGwodCxuKX07Y2FzZSAyOnJldHVybiBmdW5jdGlvbihuLHIpe3JldHVybiBlLmNhbGwodCxuLHIpfTtjYXNlIDM6cmV0dXJuIGZ1bmN0aW9uKG4scixpKXtyZXR1cm4gZS5jYWxsKHQsbixyLGkpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseSh0LGFyZ3VtZW50cyl9fX0sIjljNmMiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCIyYjRjIikoInVuc2NvcGFibGVzIiksaT1BcnJheS5wcm90b3R5cGU7dm9pZCAwPT1pW3JdJiZuKCIzMmU5IikoaSxyLHt9KSxlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aVtyXVtlXT0hMH19LCI5ZDNjIjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiOyhmdW5jdGlvbih0KXt2YXIgcj10LlN5bWJvbCxpPW4oImQ2ZGEiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4iZnVuY3Rpb24iPT09dHlwZW9mIHImJigiZnVuY3Rpb24iPT09dHlwZW9mIFN5bWJvbCYmKCJzeW1ib2wiPT09dHlwZW9mIHIoImZvbyIpJiYoInN5bWJvbCI9PT10eXBlb2YgU3ltYm9sKCJiYXIiKSYmaSgpKSkpfX0pLmNhbGwodGhpcyxuKCJjOGJhIikpfSwiOWRlZiI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjQ1ODgiKSxpPU1hdGgubWluO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gZT4wP2kocihlKSw5MDA3MTk5MjU0NzQwOTkxKTowfX0sIjllMWUiOmZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9IW4oIjc5ZTUiKSgoZnVuY3Rpb24oKXtyZXR1cm4gNyE9T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSkuYX0pKX0sYTBkMzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjBmN2MiKTtlLmV4cG9ydHM9ci5jYWxsKEZ1bmN0aW9uLmNhbGwsT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSl9LGExNTk6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImU0YWUiKSxpPW4oIjdlOTAiKSxhPW4oIjE2OTEiKSxvPW4oIjU1NTkiKSgiSUVfUFJPVE8iKSxjPWZ1bmN0aW9uKCl7fSxzPSJwcm90b3R5cGUiLHA9ZnVuY3Rpb24oKXt2YXIgZSx0PW4oIjFlYzkiKSgiaWZyYW1lIikscj1hLmxlbmd0aCxpPSI8IixvPSI+Ijt0LnN0eWxlLmRpc3BsYXk9Im5vbmUiLG4oIjMyZmMiKS5hcHBlbmRDaGlsZCh0KSx0LnNyYz0iamF2YXNjcmlwdDoiLGU9dC5jb250ZW50V2luZG93LmRvY3VtZW50LGUub3BlbigpLGUud3JpdGUoaSsic2NyaXB0IitvKyJkb2N1bWVudC5GPU9iamVjdCIraSsiL3NjcmlwdCIrbyksZS5jbG9zZSgpLHA9ZS5GO3doaWxlKHItLSlkZWxldGUgcFtzXVthW3JdXTtyZXR1cm4gcCgpfTtlLmV4cG9ydHM9T2JqZWN0LmNyZWF0ZXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtyZXR1cm4gbnVsbCE9PWU/KGNbc109cihlKSxuPW5ldyBjLGNbc109bnVsbCxuW29dPWUpOm49cCgpLHZvaWQgMD09PXQ/bjppKG4sdCl9fSxhMzA2OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJDbGFzaWZpY2FjacOzbiBkZSBjYXBpdGFsaXphY2nDs24gZGUgbWVyY2FkbyIsIm1jYXAiOiJDYXAuIGRlIG1lcmNhZG8iLCIyNGhfdm9sdW1lIjoiMjRIIFZvbHVtZW4iLCIyNGhfaGlnaF9sb3ciOiJNw6F4aW1vL23DrW5pbW8gZW4gMjTCoGgifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IkNvbXBhcmFjacOzbiBkZSBwcmVjaW9zIGRlIGNyaXB0b21vbmVkYXMiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiQ29tcGFyYWNpw7NuIGRlIGxhIGNhcGl0YWxpemFjacOzbiBkZWwgbWVyY2FkbyBkZSBjcmlwdG9tb25lZGFzIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiJNw6F4aW1vIGVuIDI0IGgiLCIyNGhfbG93IjoiTcOtbmltbyBlbiAyNCBoIiwidmlld19wcmljZV9jaGFydCI6IlZlciBncsOhZmljbyBkZSBwcmVjaW9zIGRlICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkNvbiB0ZWNub2xvZ8OtYSBkZSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6Ik3DoXhpbW8gZW4gMjQgaCIsIjI0aF9sb3ciOiJNw61uaW1vIGVuIDI0IGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmVyIGdyw6FmaWNvIGRlIHByZWNpb3MgZGUgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJDb24gdGVjbm9sb2fDrWEgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZlciBncsOhZmljbyBkZSBwcmVjaW9zIGRlICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6Ik1hcGEgZGUgw6FyYm9sIGRlIGNyaXB0b21vbmVkYXMiLCJzdWJ0aXRsZSI6IihQcmluY2lwYWxlcyAle3RvcH0gc2Vnw7puIGxhIGNhcGl0YWxpemFjacOzbiBkZSBtZXJjYWRvKSIsInBvd2VyZWRfYnkiOiJDb24gdGVjbm9sb2fDrWEgZGUgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IkRlc2NhcmdvIGRlIHJlc3BvbnNhYmlsaWRhZDogZXN0YXMgaGVycmFtaWVudGFzIHRpZW5lbiBmaW5lcyBpbmZvcm1hdGl2b3MgeSBubyBjb25zdGl0dXllbiBhc2Vzb3JhbWllbnRvIGZpbmFuY2llcm8uIiwic3BpbiI6IkdpcmFyIiwiYXZhaWxhYmxlX2NvaW5zIjoiTW9uZWRhcyBkaXNwb25pYmxlcyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkFjdHVhbGl6YWNpw7NuIGRlIHByZWNpbyBkZSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiQ2FwIE0gdG90YWwiLCIyNGhfdm9sIjoiVm9sdW1lbiBlbiAyNMKgaCIsImRvbSI6IkRvbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJJbnRlcmNhbWJpb3MiLCJwYWlyIjoiUGFyIiwicHJpY2UiOiJQcmVjaW8iLCJ2b2x1bWUiOiJWb2x1bWVuIiwidHJ1c3Rfc2NvcmUiOiJQdW50dWFjacOzbiBkZSBjb25maWFuemEiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmVyIGdyw6FmaWNvIGRlIHByZWNpb3MiLCJwb3dlcmVkX2J5IjoiQ29uIHRlY25vbG9nw61hIGRlICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6IlZlciB0b2RvcyBsb3MgbWVyY2Fkb3MgZGUgJXtjb2lufSJ9fScpfSxhNDgxOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiY2I3YyIpLGk9bigiNGJmOCIpLGE9bigiOWRlZiIpLG89bigiNDU4OCIpLGM9bigiMDM5MCIpLHM9bigiNWYxYiIpLHA9TWF0aC5tYXgsbD1NYXRoLm1pbix1PU1hdGguZmxvb3IsZD0vXCQoWyQmYCddfFxkXGQ/fDxbXj5dKj4pL2csXz0vXCQoWyQmYCddfFxkXGQ/KS9nLG09ZnVuY3Rpb24oZSl7cmV0dXJuIHZvaWQgMD09PWU/ZTpTdHJpbmcoZSl9O24oIjIxNGYiKSgicmVwbGFjZSIsMiwoZnVuY3Rpb24oZSx0LG4sZil7cmV0dXJuW2Z1bmN0aW9uKHIsaSl7dmFyIGE9ZSh0aGlzKSxvPXZvaWQgMD09cj92b2lkIDA6clt0XTtyZXR1cm4gdm9pZCAwIT09bz9vLmNhbGwocixhLGkpOm4uY2FsbChTdHJpbmcoYSkscixpKX0sZnVuY3Rpb24oZSx0KXt2YXIgaT1mKG4sZSx0aGlzLHQpO2lmKGkuZG9uZSlyZXR1cm4gaS52YWx1ZTt2YXIgdT1yKGUpLGQ9U3RyaW5nKHRoaXMpLF89ImZ1bmN0aW9uIj09PXR5cGVvZiB0O198fCh0PVN0cmluZyh0KSk7dmFyIHY9dS5nbG9iYWw7aWYodil7dmFyIHk9dS51bmljb2RlO3UubGFzdEluZGV4PTB9dmFyIGc9W107d2hpbGUoMSl7dmFyIHc9cyh1LGQpO2lmKG51bGw9PT13KWJyZWFrO2lmKGcucHVzaCh3KSwhdilicmVhazt2YXIgYj1TdHJpbmcod1swXSk7IiI9PT1iJiYodS5sYXN0SW5kZXg9YyhkLGEodS5sYXN0SW5kZXgpLHkpKX1mb3IodmFyIGs9IiIseD0wLEM9MDtDPGcubGVuZ3RoO0MrKyl7dz1nW0NdO2Zvcih2YXIgUz1TdHJpbmcod1swXSksUD1wKGwobyh3LmluZGV4KSxkLmxlbmd0aCksMCksaj1bXSxPPTE7Tzx3Lmxlbmd0aDtPKyspai5wdXNoKG0od1tPXSkpO3ZhciBBPXcuZ3JvdXBzO2lmKF8pe3ZhciBFPVtTXS5jb25jYXQoaixQLGQpO3ZvaWQgMCE9PUEmJkUucHVzaChBKTt2YXIgVD1TdHJpbmcodC5hcHBseSh2b2lkIDAsRSkpfWVsc2UgVD1oKFMsZCxQLGosQSx0KTtQPj14JiYoays9ZC5zbGljZSh4LFApK1QseD1QK1MubGVuZ3RoKX1yZXR1cm4gaytkLnNsaWNlKHgpfV07ZnVuY3Rpb24gaChlLHQscixhLG8sYyl7dmFyIHM9citlLmxlbmd0aCxwPWEubGVuZ3RoLGw9XztyZXR1cm4gdm9pZCAwIT09byYmKG89aShvKSxsPWQpLG4uY2FsbChjLGwsKGZ1bmN0aW9uKG4saSl7dmFyIGM7c3dpdGNoKGkuY2hhckF0KDApKXtjYXNlIiQiOnJldHVybiIkIjtjYXNlIiYiOnJldHVybiBlO2Nhc2UiYCI6cmV0dXJuIHQuc2xpY2UoMCxyKTtjYXNlIiciOnJldHVybiB0LnNsaWNlKHMpO2Nhc2UiPCI6Yz1vW2kuc2xpY2UoMSwtMSldO2JyZWFrO2RlZmF1bHQ6dmFyIGw9K2k7aWYoMD09PWwpcmV0dXJuIG47aWYobD5wKXt2YXIgZD11KGwvMTApO3JldHVybiAwPT09ZD9uOmQ8PXA/dm9pZCAwPT09YVtkLTFdP2kuY2hhckF0KDEpOmFbZC0xXStpLmNoYXJBdCgxKTpufWM9YVtsLTFdfXJldHVybiB2b2lkIDA9PT1jPyIiOmN9KSl9fSkpfSxhNjI1OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNvaW5fZGV0YWlscyI6eyJtY2FwX3JhbmsiOiJSYW5nb3JkZSBtYXJrdGthcGl0YWxpc2F0aWUiLCJtY2FwIjoiTWFya3RrYXAuIiwiMjRoX3ZvbHVtZSI6IjI0VSB2b2x1bWUiLCIyNGhfaGlnaF9sb3ciOiIyNC11dXJzIGhvb2cvbGFhZyJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJNb2dlbGlqayBnZW1hYWt0IGRvb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiVmVyZ2VsaWpraW5nIHZhbiBjcnlwdG9wcmlqemVuIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IlZlcmdlbGlqa2luZyB2YW4gY3J5cHRvbWFya3RrYXBpdGFsaXNhdGllcyJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6Ik1vZ2VsaWprIGdlbWFha3QgZG9vciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjRVIGhvb2ciLCIyNGhfbG93IjoiMjRVIGxhYWciLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiS29lcnNncmFmaWVrIHZhbiAle2NvaW59IGJla2lqa2VuIiwicG93ZXJlZF9ieSI6Ik1vZ2VsaWprIGdlbWFha3QgZG9vciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6Ik1vZ2VsaWprIGdlbWFha3QgZG9vciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6Ik1vZ2VsaWprIGdlbWFha3QgZG9vciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJNb2dlbGlqayBnZW1hYWt0IGRvb3IgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNFUgaG9vZyIsIjI0aF9sb3ciOiIyNFUgbGFhZyIsInZpZXdfcHJpY2VfY2hhcnQiOiJLb2Vyc2dyYWZpZWsgdmFuICV7Y29pbn0gYmVraWprZW4iLCJwb3dlcmVkX2J5IjoiTW9nZWxpamsgZ2VtYWFrdCBkb29yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJLb2Vyc2dyYWZpZWsgdmFuICV7Y29pbn0gYmVraWprZW4iLCJwb3dlcmVkX2J5IjoiTW9nZWxpamsgZ2VtYWFrdCBkb29yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IkJvb21rYWFydCBjcnlwdG9jdXJyZW5jeVwncyIsInN1YnRpdGxlIjoiKFRvcCAle3RvcH0gbXVudGVuIG9wIG1hcmt0a2FwaXRhbGlzYXRpZSkiLCJwb3dlcmVkX2J5IjoiTW9nZWxpamsgZ2VtYWFrdCBkb29yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiJEaXNjbGFpbWVyOiBEZXplIHRvb2xzIHppam4gYmVkb2VsZCBhbHMgZW50ZXJ0YWlubWVudCBlbiB2b3JtZW4gZ2VlbiBmaW5hbmNpZWVsIGFkdmllcy4iLCJzcGluIjoiRHJhYWllbiIsImF2YWlsYWJsZV9jb2lucyI6IkJlc2NoaWtiYXJlIG11bnRlbiJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyBwcmlqc3VwZGF0ZSIsInRvdGFsX21jYXAiOiJUb3RhbGUgbWFya3RrYXBpdGFsaXNhdGllIiwiMjRoX3ZvbCI6IjI0aCBWb2x1bWUiLCJkb20iOiJEb21pbmFudGllIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IkJldXJzIiwicGFpciI6IlBhYXIiLCJwcmljZSI6IlByaWpzIiwidm9sdW1lIjoiVm9sdW1lIiwidHJ1c3Rfc2NvcmUiOiJUcnVzdCBTY29yZSIsInZpZXdfcHJpY2VfY2hhcnQiOiJLb2Vyc2dyYWZpZWsgYmVraWprZW4iLCJwb3dlcmVkX2J5IjoiTW9nZWxpamsgZ2VtYWFrdCBkb29yICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6IkJla2lqayBhbGxlICV7Y29pbn0tbWFya3RlbiJ9fScpfSxhYTc3OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI1Y2ExIiksaT1uKCJiZTEzIiksYT1uKCI3OWU1Iiksbz1uKCJmZGVmIiksYz0iWyIrbysiXSIscz0i4oCLwoUiLHA9UmVnRXhwKCJeIitjK2MrIioiKSxsPVJlZ0V4cChjK2MrIiokIiksdT1mdW5jdGlvbihlLHQsbil7dmFyIGk9e30sYz1hKChmdW5jdGlvbigpe3JldHVybiEhb1tlXSgpfHxzW2VdKCkhPXN9KSkscD1pW2VdPWM/dChkKTpvW2VdO24mJihpW25dPXApLHIoci5QK3IuRipjLCJTdHJpbmciLGkpfSxkPXUudHJpbT1mdW5jdGlvbihlLHQpe3JldHVybiBlPVN0cmluZyhpKGUpKSwxJnQmJihlPWUucmVwbGFjZShwLCIiKSksMiZ0JiYoZT1lLnJlcGxhY2UobCwiIikpLGV9O2UuZXhwb3J0cz11fSxhYWUzOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJkM2Y0IiksaT1uKCIyZDk1IiksYT1uKCIyYjRjIikoIm1hdGNoIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiByKGUpJiYodm9pZCAwIT09KHQ9ZVthXSk/ISF0OiJSZWdFeHAiPT1pKGUpKX19LGFjNmE6ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj1uKCJjYWRmIiksaT1uKCIwZDU4IiksYT1uKCIyYWJhIiksbz1uKCI3NzI2IiksYz1uKCIzMmU5Iikscz1uKCI4NGYyIikscD1uKCIyYjRjIiksbD1wKCJpdGVyYXRvciIpLHU9cCgidG9TdHJpbmdUYWciKSxkPXMuQXJyYXksXz17Q1NTUnVsZUxpc3Q6ITAsQ1NTU3R5bGVEZWNsYXJhdGlvbjohMSxDU1NWYWx1ZUxpc3Q6ITEsQ2xpZW50UmVjdExpc3Q6ITEsRE9NUmVjdExpc3Q6ITEsRE9NU3RyaW5nTGlzdDohMSxET01Ub2tlbkxpc3Q6ITAsRGF0YVRyYW5zZmVySXRlbUxpc3Q6ITEsRmlsZUxpc3Q6ITEsSFRNTEFsbENvbGxlY3Rpb246ITEsSFRNTENvbGxlY3Rpb246ITEsSFRNTEZvcm1FbGVtZW50OiExLEhUTUxTZWxlY3RFbGVtZW50OiExLE1lZGlhTGlzdDohMCxNaW1lVHlwZUFycmF5OiExLE5hbWVkTm9kZU1hcDohMSxOb2RlTGlzdDohMCxQYWludFJlcXVlc3RMaXN0OiExLFBsdWdpbjohMSxQbHVnaW5BcnJheTohMSxTVkdMZW5ndGhMaXN0OiExLFNWR051bWJlckxpc3Q6ITEsU1ZHUGF0aFNlZ0xpc3Q6ITEsU1ZHUG9pbnRMaXN0OiExLFNWR1N0cmluZ0xpc3Q6ITEsU1ZHVHJhbnNmb3JtTGlzdDohMSxTb3VyY2VCdWZmZXJMaXN0OiExLFN0eWxlU2hlZXRMaXN0OiEwLFRleHRUcmFja0N1ZUxpc3Q6ITEsVGV4dFRyYWNrTGlzdDohMSxUb3VjaExpc3Q6ITF9LG09aShfKSxmPTA7ZjxtLmxlbmd0aDtmKyspe3ZhciBoLHY9bVtmXSx5PV9bdl0sZz1vW3ZdLHc9ZyYmZy5wcm90b3R5cGU7aWYodyYmKHdbbF18fGModyxsLGQpLHdbdV18fGModyx1LHYpLHNbdl09ZCx5KSlmb3IoaCBpbiByKXdbaF18fGEodyxoLHJbaF0sITApfX0sYWNlZDpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiWOG6v3AgaOG6oW5nIFbhu5FuIGjDs2EgdGjhu4sgdHLGsOG7nW5nIiwibWNhcCI6Ilbhu5FuIGjDs2EgdGjhu4sgdHLGsOG7nW5nIiwiMjRoX3ZvbHVtZSI6Ikto4buRaSBsxrDhu6NuZyB0cm9uZyAyNGgiLCIyNGhfaGlnaF9sb3ciOiJN4bupYyBjYW8gbmjhuqV0L3Ro4bqlcCBuaOG6pXQgdHJvbmcgMjQgZ2nhu50ifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoixJDGsOG7o2MgaOG7lyB0cuG7oyBi4bufaSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJTbyBzw6FuaCBnacOhIHRp4buBbiBtw6MgaMOzYSIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiJTbyBzw6FuaCBnacOhIHRy4buLIHbhu5FuIGjDs2EgdGjhu4sgdHLGsOG7nW5nIGPhu6dhIHRp4buBbiBtw6MgaMOzYSJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IsSQxrDhu6NjIGjhu5cgdHLhu6MgYuG7n2kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6IkNhbyB0cm9uZyAyNEgiLCIyNGhfbG93IjoiVGjhuqVwIHRyb25nIDI0SCIsInZpZXdfcHJpY2VfY2hhcnQiOiJYZW0gYmnhu4N1IMSR4buTIGdpw6EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoixJDGsOG7o2MgaOG7lyB0cuG7oyBi4bufaSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IsSQxrDhu6NjIGjhu5cgdHLhu6MgYuG7n2kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoixJDGsOG7o2MgaOG7lyB0cuG7oyBi4bufaSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IkNhbyB0cm9uZyAyNEgiLCIyNGhfbG93IjoiVGjhuqVwIHRyb25nIDI0SCIsInZpZXdfcHJpY2VfY2hhcnQiOiJYZW0gYmnhu4N1IMSR4buTIGdpw6EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJYZW0gYmnhu4N1IMSR4buTIGdpw6EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IlPGoSDEkeG7kyBjw6J5IFRp4buBbiBtw6MgaMOzYSIsInN1YnRpdGxlIjoiKCV7dG9wfSBow6BuZyDEkeG6p3UgdGhlbyBnacOhIHRy4buLIHbhu5FuIGjDs2EgdGjhu4sgdHLGsOG7nW5nKSIsInBvd2VyZWRfYnkiOiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiJUdXnDqm4gYuG7kSBtaeG7hW4gdHLhu6sgdHLDoWNoIG5oaeG7h206IEPDtG5nIGPhu6UgbsOgeSDEkcaw4bujYyBkw7luZyBjaG8gbeG7pWMgxJHDrWNoIGdp4bqjaSB0csOtIHbDoCBraMO0bmcgY+G6pXUgdGjDoG5oIHRow7RuZyB0aW4gdMawIHbhuqVuIHTDoGkgY2jDrW5oLiIsInNwaW4iOiLEkOG7k25nIFNwaW4iLCJhdmFpbGFibGVfY29pbnMiOiJUaeG7gW4g4bqjbyBraOG6oyBk4bulbmcifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiJD4bqtcCBuaOG6rXQgZ2nDoSB0csOqbiBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiVOG7lW5nIGdpw6EgdHLhu4sgduG7kW4gaMOzYSB0aOG7iyB0csaw4budbmciLCIyNGhfdm9sIjoiS2jhu5FpIGzGsOG7o25nIGdpYW8gZOG7i2NoIHRyb25nIDI0IGdp4budIiwiZG9tIjoixq91IHRo4bq/In0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IlPDoG4gZ2lhbyBk4buLY2giLCJwYWlyIjoiQ+G6t3AiLCJwcmljZSI6Ikdpw6EiLCJ2b2x1bWUiOiJLaOG7kWkgbMaw4bujbmciLCJ0cnVzdF9zY29yZSI6IsSQaeG7g20gdGluIGPhuq15Iiwidmlld19wcmljZV9jaGFydCI6IlhlbSBiaeG7g3UgxJHhu5MgZ2nDoSIsInBvd2VyZWRfYnkiOiLEkMaw4bujYyBo4buXIHRy4bujIGLhu59pICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJ2aWV3X2FsbCI6IlhlbSB04bqldCBj4bqjIGPDoWMgdGjhu4sgdHLGsOG7nW5nICV7Y29pbn0ifX0nKX0sYWViZDpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybntlbnVtZXJhYmxlOiEoMSZlKSxjb25maWd1cmFibGU6ISgyJmUpLHdyaXRhYmxlOiEoNCZlKSx2YWx1ZTp0fX19LGFmMDg6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6Itiq2LXZhtmK2YEg2KfZhNmC2YrZhdipINin2YTYs9mI2YLZitipIiwibWNhcCI6Itin2YTZgtmK2YXYqSDYp9mE2LPZiNmC2YrYqSAiLCIyNGhfdm9sdW1lIjoi2K3YrNmFINin2YTYqtiv2KfZiNmEINi52YTZiSDZhdiv2KfYsSAyNCDYs9in2LnYqSIsIjI0aF9oaWdoX2xvdyI6Itin2LHYqtmB2KfYuS/Yp9mG2K7Zgdin2LYg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6ItmF2K/YudmI2YUg2YXZhiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLZhdmC2KfYsdmG2Kkg2LPYudixINin2YTYudmF2YTYp9iqINin2YTZhdi02YHYsdipIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6ItmF2YLYp9ix2YbYqSDYp9mE2YLZitmF2Kkg2KfZhNiz2YjZgtmK2Kkg2YTZhNi52YXZhNin2Kog2KfZhNmF2LTZgdix2KkifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLZhdiv2LnZiNmFINmF2YYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6ItmF2LHYqtmB2Lkg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIiwiMjRoX2xvdyI6ItmF2YbYrtmB2LYg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIiwidmlld19wcmljZV9jaGFydCI6Iti52LHYtiDYp9mE2LHYs9mFINin2YTYqNmK2KfZhtmKINmE2LPYudixICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi2YXYr9i52YjZhSDZhdmGICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi2YXYr9i52YjZhSDZhdmGICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi2YXYr9i52YjZhSDZhdmGICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6ItmF2K/YudmI2YUg2YXZhiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6ItmF2LHYqtmB2Lkg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIiwiMjRoX2xvdyI6ItmF2YbYrtmB2LYg2LnZhNmJINmF2K/Yp9ixIDI0INiz2KfYudipIiwidmlld19wcmljZV9jaGFydCI6Iti52LHYtiAle2NvaW59INin2YTYsdiz2YUg2KfZhNio2YrYp9mG2Yog2YTZhNiz2LnYsSIsInBvd2VyZWRfYnkiOiLZhdiv2LnZiNmFINmF2YYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6Iti52LHYtiAle2NvaW59INin2YTYsdiz2YUg2KfZhNio2YrYp9mG2Yog2YTZhNiz2LnYsSIsInBvd2VyZWRfYnkiOiLZhdiv2LnZiNmFINmF2YYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoi2K7YsdmK2LfYqSDYtNis2LHYqSDYp9mE2LnZhdmE2KfYqiDYp9mE2YXYtNmB2LHYqSIsInN1YnRpdGxlIjoiKNij2YHYttmEICV7dG9wfSDZiNmB2YLZi9inINmE2YTZgtmK2YXYqSDYp9mE2LPZiNmC2YrYqSkiLCJwb3dlcmVkX2J5Ijoi2YXYr9i52YjZhSDZhdmGICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLYpdiu2YTYp9ihINin2YTZhdiz2KTZiNmE2YrYqTog2KrYs9iq2K7Yr9mFINmH2LDZhyDYp9mE2KPYr9mI2KfYqiDZg9ij2K/ZiNin2Kog2KrYsdmB2YrZh9mK2Kkg2YjZhNinINiq2LTZg9mR2YQg2YXYtNmI2LHYqSDZhdin2YTZitipLiIsInNwaW4iOiLYr9mI2LHYp9mGIiwiYXZhaWxhYmxlX2NvaW5zIjoi2LnZhdmE2KfYqiDZhdiq2KfYrdipIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoi2KrYrdiv2YrYqyDYs9i52LEgQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6Itil2KzZhdin2YTZiiDYp9mE2YLZitmF2Kkg2KfZhNiz2YjZgtmK2KkiLCIyNGhfdm9sIjoi2KfZhNit2KzZhSDYudmE2Ykg2YXYr9in2LEgMjQg2LPYp9i52KkiLCJkb20iOiLYp9mE2YfZitmF2YbYqSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLYqNmI2LHYtdipIiwicGFpciI6Itiy2YjYrCIsInByaWNlIjoi2KfZhNiz2LnYsSIsInZvbHVtZSI6Itin2YTYrdis2YUiLCJ0cnVzdF9zY29yZSI6ItmG2YLYp9i3INin2YTYq9mC2KkgVHJ1c3QgU2NvcmUiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi2LnYsdi2INin2YTYsdiz2YUg2KfZhNio2YrYp9mG2Yog2YTZhNiz2LnYsSIsInBvd2VyZWRfYnkiOiLZhdiv2LnZiNmFINmF2YYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoi2LnYsdi2INis2YXZiti5INij2LPZiNin2YIgJXtjb2lufSJ9fScpfSxhZjE0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiByfSkpO24oIjc2MTgiKTtmdW5jdGlvbiByKCl7cmV0dXJuIG51bGwhPWRvY3VtZW50LmhlYWQuYXR0YWNoU2hhZG93JiZudWxsIT13aW5kb3cuY3VzdG9tRWxlbWVudHMmJm51bGwhPXdpbmRvdy5mZXRjaH19LGIwYzU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCI1MjBhIik7bigiNWNhMSIpKHt0YXJnZXQ6IlJlZ0V4cCIscHJvdG86ITAsZm9yY2VkOnIhPT0vLi8uZXhlY30se2V4ZWM6cn0pfSxiM2ZkOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiZjM2NyIpLGk9bigiMWI3ZiIpO2UuZXhwb3J0cz1mdW5jdGlvbigpe3ZhciBlPWkoKTtyZXR1cm4gcihTdHJpbmcucHJvdG90eXBlLHt0cmltOmV9LHt0cmltOmZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZy5wcm90b3R5cGUudHJpbSE9PWV9fSksZX19LGI0NDc6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjNhMzgiKSxpPU1hdGgubWluO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gZT4wP2kocihlKSw5MDA3MTk5MjU0NzQwOTkxKTowfX0sYjhlMzpmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz0hMH0sYmE4ZDpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoi15PXqNeS16og16nXldeV15kg16nXldenIiwibWNhcCI6Itep15XXldeZINep15XXpyIsIjI0aF92b2x1bWUiOiLXoNek15cg157XodeX16gg15EtMjQg16nXoteV16oiLCIyNGhfaGlnaF9sb3ciOiLXqdeZ15Av16nXpNecINeRLTI0INep16LXldeqIn0sImNvaW5fY29tcGFyZV9jaGFydF93aWRnZXQiOnsicG93ZXJlZF9ieSI6Itee15XXpNei15wg16LXnCDXmdeT15kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoi15TXqdeV15XXkNeqINee15fXmdeo15kg157XmNeR16LXldeqINen16jXmdek15jXlSIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiLXlNep15XXldeQ16og16nXldeV15kg16nXldenINep15wg157XmNeR16LXldeqINen16jXmdek15jXlSJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6Itee15XXpNei15wg16LXnCDXmdeT15kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6Itep15nXkCDXkS0yNCDXqdei15XXqiIsIjI0aF9sb3ciOiLXqdek15wg15EtMjQg16nXoteV16oiLCJ2aWV3X3ByaWNlX2NoYXJ0Ijoi15TXpteSINeQ16og15jXkdec16og15TXnteX15nXqNeZ150g16nXnCAle2NvaW59IiwicG93ZXJlZF9ieSI6Itee15XXpNei15wg16LXnCDXmdeT15kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLXnteV16TXotecINei15wg15nXk9eZICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi157Xldek16LXnCDXotecINeZ15PXmSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLXnteV16TXotecINei15wg15nXk9eZICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoi16nXmdeQINeRLTI0INep16LXldeqIiwiMjRoX2xvdyI6Itep16TXnCDXkS0yNCDXqdei15XXqiIsInZpZXdfcHJpY2VfY2hhcnQiOiLXlNem15Ig15DXqiDXmNeR15zXqiDXlNee15fXmdeo15nXnSDXqdecICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi157Xldek16LXnCDXotecINeZ15PXmSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0Ijoi15TXpteSINeQ16og15jXkdec16og15TXnteX15nXqNeZ150g16nXnCAle2NvaW59IiwicG93ZXJlZF9ieSI6Itee15XXpNei15wg16LXnCDXmdeT15kgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoi157XpNeqINeU16LXpSDXqdecINee15jXkdei15XXqiDXp9eo15nXpNeY15UiLCJzdWJ0aXRsZSI6Iigle3RvcH0g157XldeR15nXnNeZ150g15zXpNeZINep15XXldeZINep15XXpykiLCJwb3dlcmVkX2J5Ijoi157Xldek16LXnCDXotecINeZ15PXmSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoi15vXqteRINeV15nXqteV16g6INeb15zXmdedINeQ15zXlSDXntep157XqdeZ150g15zXpteV16jXmiDXkdeZ15PXldeoINeV15DXmdeg150g157XlNeV15XXmdedINeZ15nXoteV16Ug16TXmdeg16DXodeZLiIsInNwaW4iOiLXodeV15HXkSIsImF2YWlsYWJsZV9jb2lucyI6Itee15jXkdei15XXqiDXltee15nXoNeZ150ifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiLXoteT15vXldefINee15fXmdeo15kgQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6Itep15XXldeZINep15XXpyDXm9eV15zXnCIsIjI0aF92b2wiOiLXoNek15cg15EtMjQg16nXoteV16oiLCJkb20iOiLXk9eV157Xmdeg16DXmNeZ15XXqiJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLXkdeV16jXodeUIiwicGFpciI6Item157XkyIsInByaWNlIjoi157Xl9eZ16jXnteX15nXqCIsInZvbHVtZSI6Iteg16TXlyIsInRydXN0X3Njb3JlIjoi16bXmdeV158g15DXnteZ16DXldeqIiwidmlld19wcmljZV9jaGFydCI6IteU16bXkiDXmNeR15zXqiDXnteX15nXqNeZ150iLCJwb3dlcmVkX2J5Ijoi157Xldek16LXnCDXotecINeZ15PXmSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiLXlNem15Ig15DXqiDXm9ecINeU16nXldeV16fXmdedINep15wgJXtjb2lufSJ9fScpfSxiZTEzOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKHZvaWQgMD09ZSl0aHJvdyBUeXBlRXJyb3IoIkNhbid0IGNhbGwgbWV0aG9kIG9uICAiK2UpO3JldHVybiBlfX0sYmYwYjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMzU1ZCIpLGk9bigiYWViZCIpLGE9bigiMzZjMyIpLG89bigiMWJjMyIpLGM9bigiMDdlMyIpLHM9bigiNzk0YiIpLHA9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcjt0LmY9bigiOGU2MCIpP3A6ZnVuY3Rpb24oZSx0KXtpZihlPWEoZSksdD1vKHQsITApLHMpdHJ5e3JldHVybiBwKGUsdCl9Y2F0Y2gobil7fWlmKGMoZSx0KSlyZXR1cm4gaSghci5mLmNhbGwoZSx0KSxlW3RdKX19LGJmMGY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIEx9KSk7dmFyIHI9bigiNzYxOCIpLGk9bigiYWYwOCIpLGE9bigiZGNkMCIpLG89bigiYzY4NiIpLGM9bigiMjFhYSIpLHM9bigiNmNlMiIpLHA9bigiZjE4NCIpLGw9bigiZWRkNCIpLHU9bigiYTMwNiIpLGQ9bigiNTc1NCIpLF89bigiZjY5MyIpLG09bigiYmE4ZCIpLGY9bigiN2EwMyIpLGg9bigiOTJkNyIpLHY9bigiNGU3MyIpLHk9bigiMjEwYyIpLGc9bigiMDgyNSIpLHc9bigiMDQyMyIpLGI9bigiZGQxMSIpLGs9bigiNjA0NSIpLHg9bigiYTYyNSIpLEM9bigiZjk0NyIpLFM9bigiODliMiIpLFA9bigiNWQ2NyIpLGo9bigiOTU0MiIpLE89bigiNzcwNCIpLEE9bigiM2RhOSIpLEU9bigiZDM0YSIpLFQ9bigiNGM1YiIpLEQ9bigiODY4MCIpLHo9bigiZmZlYiIpLE09bigiNjJlYSIpLCQ9bigiYWNlZCIpLE49bigiMzUwNCIpLEk9bigiMDU2YyIpLEY9e2FyOmksYmc6YSxjczpvLGRhOmMsZGU6cyxlbDpwLGVuOmwsZXM6dSxmaTpkLGZyOl8saGU6bSxoaTpmLGhyOmgsaHU6dixpZDp5LGl0OmcsamE6dyxrbzpiLGx0Omssbmw6eCxubzpDLHBsOlMscHQ6UCxybzpqLHJ1Ok8sc2s6QSxzbDpFLHN2OlQsdGg6RCx0cjp6LHVrOk0sdmk6JCx6aDpOLCJ6aC10dyI6SX07ZnVuY3Rpb24gTChlKXt2YXIgdD1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06ImVuIjtyZXR1cm4gUihGW2VdLEZbdF0pfWZ1bmN0aW9uIFIoZSx0KXt2YXIgbj1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHQpKTtmb3IodmFyIGkgaW4gbil7dmFyIGE9ZVtpXSxvPW5baV07aWYoYSYmbylpZigib2JqZWN0Ij09PU9iamVjdChyWyJhIl0pKGEpJiYib2JqZWN0Ij09PU9iamVjdChyWyJhIl0pKG8pKWZvcih2YXIgYyBpbiBlW2ldKW5baV1bY109ZVtpXVtjXTtlbHNlIG5baV09ZVtpXX1yZXR1cm4gbn10WyJhIl09Rn0sYzFlMjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oIjJiMGUiKSxpPW4oIjI4OGEiKSxhPW4ubihpKSxvPW4oImJmMGYiKSxjPWZ1bmN0aW9uKCl7cmV0dXJuIHJbImEiXS5taXhpbih7ZGF0YTpmdW5jdGlvbigpe3JldHVybntwb2x5Z2xvdDpuZXcgYS5hKHtwaHJhc2VzOk9iamVjdChvWyJiIl0pKCJlbiIpfSl9fSxtZXRob2RzOntyZWxvYWRMb2NhbGU6ZnVuY3Rpb24oKXtpZih2b2lkIDAhPT10aGlzLmxvY2FsZSl7aWYoIW9bImEiXVt0aGlzLmxvY2FsZV0pdGhyb3cgbmV3IEVycm9yKCJMb2NhbGUgbm90IHN1cHBvcnRlZCBieSB3aWRnZXQuIENvbnRhY3Qgc3VwcG9ydEBjb2luZ2Vja28uY29tIGZvciBoZWxwLiIpO3RoaXMucG9seWdsb3Q9bmV3IGEuYSh7cGhyYXNlczpPYmplY3Qob1siYiJdKSh0aGlzLmxvY2FsZSwiZW4iKX0pfX19LHdhdGNoOntsb2NhbGU6ZnVuY3Rpb24oKXt0aGlzLnJlbG9hZExvY2FsZSgpfX0sY3JlYXRlZDpmdW5jdGlvbigpe3RoaXMucmVsb2FkTG9jYWxlKCl9fSl9O3RbImEiXT1jfSxjMjA3OmZ1bmN0aW9uKGUsdCl7fSxjMzY2OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI2ODIxIiksaT1uKCI5ZGVmIiksYT1uKCI3N2YxIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0LG4sbyl7dmFyIGMscz1yKHQpLHA9aShzLmxlbmd0aCksbD1hKG8scCk7aWYoZSYmbiE9bil7d2hpbGUocD5sKWlmKGM9c1tsKytdLGMhPWMpcmV0dXJuITB9ZWxzZSBmb3IoO3A+bDtsKyspaWYoKGV8fGwgaW4gcykmJnNbbF09PT1uKXJldHVybiBlfHxsfHwwO3JldHVybiFlJiYtMX19fSxjMzY3OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiODQzNiIpLGk9bigiNTBlZCIpLGE9bigiNDgxYiIpLG89bigiMzZjMyIpO2UuZXhwb3J0cz1uKCIzMGYxIikoQXJyYXksIkFycmF5IiwoZnVuY3Rpb24oZSx0KXt0aGlzLl90PW8oZSksdGhpcy5faT0wLHRoaXMuX2s9dH0pLChmdW5jdGlvbigpe3ZhciBlPXRoaXMuX3QsdD10aGlzLl9rLG49dGhpcy5faSsrO3JldHVybiFlfHxuPj1lLmxlbmd0aD8odGhpcy5fdD12b2lkIDAsaSgxKSk6aSgwLCJrZXlzIj09dD9uOiJ2YWx1ZXMiPT10P2Vbbl06W24sZVtuXV0pfSksInZhbHVlcyIpLGEuQXJndW1lbnRzPWEuQXJyYXkscigia2V5cyIpLHIoInZhbHVlcyIpLHIoImVudHJpZXMiKX0sYzNhMTpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZTZmMyIpLGk9bigiMTY5MSIpO2UuZXhwb3J0cz1PYmplY3Qua2V5c3x8ZnVuY3Rpb24oZSl7cmV0dXJuIHIoZSxpKX19LGM1ZjY6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCI3NzI2IiksaT1uKCI2OWE4IiksYT1uKCIyZDk1Iiksbz1uKCI1ZGJjIiksYz1uKCI2YTk5Iikscz1uKCI3OWU1IikscD1uKCI5MDkzIikuZixsPW4oIjExZTkiKS5mLHU9bigiODZjYyIpLmYsZD1uKCJhYTc3IikudHJpbSxfPSJOdW1iZXIiLG09cltfXSxmPW0saD1tLnByb3RvdHlwZSx2PWEobigiMmFlYiIpKGgpKT09Xyx5PSJ0cmltImluIFN0cmluZy5wcm90b3R5cGUsZz1mdW5jdGlvbihlKXt2YXIgdD1jKGUsITEpO2lmKCJzdHJpbmciPT10eXBlb2YgdCYmdC5sZW5ndGg+Mil7dD15P3QudHJpbSgpOmQodCwzKTt2YXIgbixyLGksYT10LmNoYXJDb2RlQXQoMCk7aWYoNDM9PT1hfHw0NT09PWEpe2lmKG49dC5jaGFyQ29kZUF0KDIpLDg4PT09bnx8MTIwPT09bilyZXR1cm4gTmFOfWVsc2UgaWYoNDg9PT1hKXtzd2l0Y2godC5jaGFyQ29kZUF0KDEpKXtjYXNlIDY2OmNhc2UgOTg6cj0yLGk9NDk7YnJlYWs7Y2FzZSA3OTpjYXNlIDExMTpyPTgsaT01NTticmVhaztkZWZhdWx0OnJldHVybit0fWZvcih2YXIgbyxzPXQuc2xpY2UoMikscD0wLGw9cy5sZW5ndGg7cDxsO3ArKylpZihvPXMuY2hhckNvZGVBdChwKSxvPDQ4fHxvPmkpcmV0dXJuIE5hTjtyZXR1cm4gcGFyc2VJbnQocyxyKX19cmV0dXJuK3R9O2lmKCFtKCIgMG8xIil8fCFtKCIwYjEiKXx8bSgiKzB4MSIpKXttPWZ1bmN0aW9uKGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg8MT8wOmUsbj10aGlzO3JldHVybiBuIGluc3RhbmNlb2YgbSYmKHY/cygoZnVuY3Rpb24oKXtoLnZhbHVlT2YuY2FsbChuKX0pKTphKG4pIT1fKT9vKG5ldyBmKGcodCkpLG4sbSk6Zyh0KX07Zm9yKHZhciB3LGI9bigiOWUxZSIpP3AoZik6Ik1BWF9WQUxVRSxNSU5fVkFMVUUsTmFOLE5FR0FUSVZFX0lORklOSVRZLFBPU0lUSVZFX0lORklOSVRZLEVQU0lMT04saXNGaW5pdGUsaXNJbnRlZ2VyLGlzTmFOLGlzU2FmZUludGVnZXIsTUFYX1NBRkVfSU5URUdFUixNSU5fU0FGRV9JTlRFR0VSLHBhcnNlRmxvYXQscGFyc2VJbnQsaXNJbnRlZ2VyIi5zcGxpdCgiLCIpLGs9MDtiLmxlbmd0aD5rO2srKylpKGYsdz1iW2tdKSYmIWkobSx3KSYmdShtLHcsbChmLHcpKTttLnByb3RvdHlwZT1oLGguY29uc3RydWN0b3I9bSxuKCIyYWJhIikocixfLG0pfX0sYzY0OTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJjIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKSxuLmQodCwiYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF9KSksbi5kKHQsImEiLChmdW5jdGlvbigpe3JldHVybiBvfSkpO24oImE0ODEiKSxuKCI1ZGYzIiksbigiYWM2YSIpO2Z1bmN0aW9uIHIoZSl7dmFyIHQ9W107cmV0dXJuIGUuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dC5wdXNoKG5ldyBQcm9taXNlKChmdW5jdGlvbih0LG4pe2koZSx0LG4pfSkpKX0pKSxQcm9taXNlLmFsbCh0KX1mdW5jdGlvbiBpKGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpmdW5jdGlvbigpe30sbj1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06ZnVuY3Rpb24oKXt9LHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7ci5zcmM9ZS5zcmMsci5jcm9zc09yaWdpbj0iYW5vbnltb3VzIixyLmludGVncml0eT1lLmludGVncml0eSxyLm9ubG9hZD10LHIub25lcnJvcj1mdW5jdGlvbigpe24obmV3IEVycm9yKCJGYWlsZWQgdG8gbG9hZCBzY3JpcHQgIitlLnNyYykpfSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHIpfWZ1bmN0aW9uIGEoZSx0LG4pe3ZhciByO3JldHVybiBmdW5jdGlvbigpe3ZhciBpPXRoaXMsYT1hcmd1bWVudHMsbz1mdW5jdGlvbigpe3I9bnVsbCxufHxlLmFwcGx5KGksYSl9LGM9biYmIXI7Y2xlYXJUaW1lb3V0KHIpLHI9c2V0VGltZW91dChvLHQpLGMmJmUuYXBwbHkoaSxhKX19ZnVuY3Rpb24gbyhlKXt2YXIgdD1bXS5zbGljZSxuPTE8PWFyZ3VtZW50cy5sZW5ndGg/dC5jYWxsKGFyZ3VtZW50cywwKTpbXSxyPS8oXnxbXHNcbl18PFtBLVphLXpdKlwvPz4pKCg/Omh0dHBzP3xmdHApOlwvXC9bXC1BLVowLTkrXHUwMDI2XHUyMDE5QCNcLyU/PSgpfl98ITosLjtdKltcLUEtWjAtOStcdTAwMjZAI1wvJT1+KClffF0pL2dpO3JldHVybiBuLmxlbmd0aD4wP2UucmVwbGFjZShyLChmdW5jdGlvbihlLHQsbil7dmFyIHI9JzxhIGhyZWY9IicrbisnIiBjbGFzcz0iY2ctcHJpbWFyeS1jb2xvci1kYXJrIGNnLW5vLXVuZGVybGluZSIgdGFyZ2V0PSJfYmxhbmsiPicrbisiPC9hPiI7cmV0dXJuIiIrdCtyfSkpOmUucmVwbGFjZShyLCckMTxhIGNsYXNzPSJjZy1wcmltYXJ5LWNvbG9yLWRhcmsgY2ctbm8tdW5kZXJsaW5lIiB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iJDIiPiQyPC9hPicpfX0sYzY4NjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiUG/FmWFkw60gcG9kbGUgdHLFvm7DrSBrYXBpdGFsaXphY2UiLCJtY2FwIjoiVHLFvm7DrSBrYXBpdGFsaXphY2UiLCIyNGhfdm9sdW1lIjoiT2JqZW0gemEgMjQgaG9kLiIsIjI0aF9oaWdoX2xvdyI6Ik5lanZ5xaHFocOtL25lam5pxb7FocOtIHphIDI0IGhvZC4ifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVnl1xb7DrXbDoSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJTcm92bsOhbsOtIGNlbiBrcnlwdG9txJtuIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IlNyb3Zuw6Fuw60ga2FwaXRhbGl6YWNlIGtyeXB0byB0cmh1In0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVnl1xb7DrXbDoSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTmVqdnnFocWhw60gemEgMjQgaG9kLiIsIjI0aF9sb3ciOiJOZWpuacW+xaHDrSB6YSAyNCBob2QuIiwidmlld19wcmljZV9jaGFydCI6IlpvYnJheml0IGNlbm92w70gZ3JhZiAle2NvaW59IiwicG93ZXJlZF9ieSI6IlZ5dcW+w612w6EgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJWeXXFvsOtdsOhICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVnl1xb7DrXbDoSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJWeXXFvsOtdsOhICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTmVqdnnFocWhw60gemEgMjQgaG9kLiIsIjI0aF9sb3ciOiJOZWpuacW+xaHDrSB6YSAyNCBob2QuIiwidmlld19wcmljZV9jaGFydCI6IlpvYnJheml0IGNlbm92w70gZ3JhZiAle2NvaW59IiwicG93ZXJlZF9ieSI6IlZ5dcW+w612w6EgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlpvYnJheml0IGNlbm92w70gZ3JhZiAle2NvaW59IiwicG93ZXJlZF9ieSI6IlZ5dcW+w612w6EgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoiU3Ryb21vdsOhIG1hcGEga3J5cHRvbcSbbiIsInN1YnRpdGxlIjoiKE5laiAle3RvcH0gcG9kbGUgdHLFvm7DrSBrYXBpdGFsaXphY2UpIiwicG93ZXJlZF9ieSI6IlZ5dcW+w612w6EgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6Ik9kbcOtdG51dMOtIG9kcG92xJtkbm9zdGk6IHR5dG8gbsOhc3Ryb2plIHNsb3XFvsOtIHBybyB6w6FiYXZ1IGEgbmVwxZllZHN0YXZ1asOtIGZvcm11IGZpbmFuxI1uw61obyBwb3JhZGVuc3R2w60uIiwic3BpbiI6IlJvenRvxI1pdCIsImF2YWlsYWJsZV9jb2lucyI6IkRvc3R1cG7DqSBtaW5jZSJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkFrdHVhbGl6YWNlIGNlbnkgQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6IkNlbGtvdsOhIHRyxb5uw60ga2FwLiIsIjI0aF92b2wiOiJPYmplbSAoMjQgaC4pIiwiZG9tIjoiRG9tIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IkJ1cnphIiwicGFpciI6IlDDoXIiLCJwcmljZSI6IkNlbmEiLCJ2b2x1bWUiOiJPYmplbSIsInRydXN0X3Njb3JlIjoiU2vDs3JlIGTFr3bEm3J5aG9kbm9zdGkiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiWm9icmF6aXQgY2Vub3bDvSBncmFmIiwicG93ZXJlZF9ieSI6IlZ5dcW+w612w6EgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiWm9icmF6aXQgdsWhZWNobnkgdHJoeSBwcm8gJXtjb2lufSJ9fScpfSxjNjlhOmZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9IW4oIjllMWUiKSYmIW4oIjc5ZTUiKSgoZnVuY3Rpb24oKXtyZXR1cm4gNyE9T2JqZWN0LmRlZmluZVByb3BlcnR5KG4oIjIzMGUiKSgiZGl2IiksImEiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gN319KS5hfSkpfSxjODk0OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7Ci8qKgogICogdnVlLWN1c3RvbS1lbGVtZW50IHYzLjIuNgogICogKGMpIDIwMTggS2Fyb2wgRmFiamHFhGN6dWsKICAqIEBsaWNlbnNlIE1JVAogICovZnVuY3Rpb24gcihlLHQpe3JldHVybiBlLl9fcHJvdG9fXz10LGV9T2JqZWN0LnNldFByb3RvdHlwZU9mPU9iamVjdC5zZXRQcm90b3R5cGVPZnx8cjtyLmJpbmQoT2JqZWN0KTtmdW5jdGlvbiBpKCl7cmV0dXJuInVuZGVmaW5lZCIhPT10eXBlb2YgU3ltYm9sJiYidW5kZWZpbmVkIiE9PXR5cGVvZiBSZWZsZWN0JiYidW5kZWZpbmVkIiE9PXR5cGVvZiBQcm94eSYmIU9iamVjdC5pc1NlYWxlZChQcm94eSl9dmFyIGE9aSgpLG89ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUsdCl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciByPXRbbl07ci5lbnVtZXJhYmxlPXIuZW51bWVyYWJsZXx8ITEsci5jb25maWd1cmFibGU9ITAsInZhbHVlImluIHImJihyLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxyLmtleSxyKX19cmV0dXJuIGZ1bmN0aW9uKHQsbixyKXtyZXR1cm4gbiYmZSh0LnByb3RvdHlwZSxuKSxyJiZlKHQsciksdH19KCk7ZnVuY3Rpb24gYyhlLHQpe2lmKCEoZSBpbnN0YW5jZW9mIHQpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfWZ1bmN0aW9uIHMoZSx0KXtpZighZSl0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoInRoaXMgaGFzbid0IGJlZW4gaW5pdGlhbGlzZWQgLSBzdXBlcigpIGhhc24ndCBiZWVuIGNhbGxlZCIpO3JldHVybiF0fHwib2JqZWN0IiE9PXR5cGVvZiB0JiYiZnVuY3Rpb24iIT09dHlwZW9mIHQ/ZTp0fWZ1bmN0aW9uIHAoZSx0KXtpZigiZnVuY3Rpb24iIT09dHlwZW9mIHQmJm51bGwhPT10KXRocm93IG5ldyBUeXBlRXJyb3IoIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uLCBub3QgIit0eXBlb2YgdCk7ZS5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZSh0JiZ0LnByb3RvdHlwZSx7Y29uc3RydWN0b3I6e3ZhbHVlOmUsZW51bWVyYWJsZTohMSx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9fSksdCYmKE9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YoZSx0KTplLl9fcHJvdG9fXz10KX1mdW5jdGlvbiBsKCl7cmV0dXJuIFJlZmxlY3QuY29uc3RydWN0KEhUTUxFbGVtZW50LFtdLHRoaXMuX19wcm90b19fLmNvbnN0cnVjdG9yKX1mdW5jdGlvbiB1KGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fTtpZigidW5kZWZpbmVkIiE9PXR5cGVvZiBjdXN0b21FbGVtZW50cyl7aWYoYSl7dmFyIG49ZnVuY3Rpb24oZSl7ZnVuY3Rpb24gbihlKXt2YXIgdDtjKHRoaXMsbik7dmFyIHI9cyh0aGlzLChuLl9fcHJvdG9fX3x8T2JqZWN0LmdldFByb3RvdHlwZU9mKG4pKS5jYWxsKHRoaXMpKSxhPWU/SFRNTEVsZW1lbnQuY2FsbChlKTpyO3JldHVybiBpLmNhbGwoYSksdD1hLHMocix0KX1yZXR1cm4gcChuLGUpLG8obixudWxsLFt7a2V5OiJvYnNlcnZlZEF0dHJpYnV0ZXMiLGdldDpmdW5jdGlvbigpe3JldHVybiB0Lm9ic2VydmVkQXR0cmlidXRlc3x8W119fV0pLG59KGwpO3JldHVybiBuLnByb3RvdHlwZS5jb25uZWN0ZWRDYWxsYmFjaz11LG4ucHJvdG90eXBlLmRpc2Nvbm5lY3RlZENhbGxiYWNrPWQsbi5wcm90b3R5cGUuYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrPV8sbShlLG4pLG59dmFyIHI9ZnVuY3Rpb24oZSl7dmFyIHQ9ZT9IVE1MRWxlbWVudC5jYWxsKGUpOnRoaXM7cmV0dXJuIGkuY2FsbCh0KSx0fTtyZXR1cm4gci5vYnNlcnZlZEF0dHJpYnV0ZXM9dC5vYnNlcnZlZEF0dHJpYnV0ZXN8fFtdLHIucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlLHtjb25zdHJ1Y3Rvcjp7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnJ9fSksci5wcm90b3R5cGUuY29ubmVjdGVkQ2FsbGJhY2s9dSxyLnByb3RvdHlwZS5kaXNjb25uZWN0ZWRDYWxsYmFjaz1kLHIucHJvdG90eXBlLmF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjaz1fLG0oZSxyKSxyfWZ1bmN0aW9uIGkoKXshMD09PXQuc2hhZG93JiZIVE1MRWxlbWVudC5wcm90b3R5cGUuYXR0YWNoU2hhZG93JiZ0aGlzLmF0dGFjaFNoYWRvdyh7bW9kZToib3BlbiJ9KSwiZnVuY3Rpb24iPT09dHlwZW9mIHQuY29uc3RydWN0b3JDYWxsYmFjayYmdC5jb25zdHJ1Y3RvckNhbGxiYWNrLmNhbGwodGhpcyl9ZnVuY3Rpb24gdSgpeyJmdW5jdGlvbiI9PT10eXBlb2YgdC5jb25uZWN0ZWRDYWxsYmFjayYmdC5jb25uZWN0ZWRDYWxsYmFjay5jYWxsKHRoaXMpfWZ1bmN0aW9uIGQoKXsiZnVuY3Rpb24iPT09dHlwZW9mIHQuZGlzY29ubmVjdGVkQ2FsbGJhY2smJnQuZGlzY29ubmVjdGVkQ2FsbGJhY2suY2FsbCh0aGlzKX1mdW5jdGlvbiBfKGUsbixyKXsiZnVuY3Rpb24iPT09dHlwZW9mIHQuYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrJiZ0LmF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjay5jYWxsKHRoaXMsZSxuLHIpfWZ1bmN0aW9uIG0oZSx0KXt2YXIgbj1jdXN0b21FbGVtZW50cy5nZXQoZSk7cmV0dXJuInVuZGVmaW5lZCIhPT10eXBlb2Ygbj9uOmN1c3RvbUVsZW1lbnRzLmRlZmluZShlLHQpfX1PYmplY3Quc2V0UHJvdG90eXBlT2YobC5wcm90b3R5cGUsSFRNTEVsZW1lbnQucHJvdG90eXBlKSxPYmplY3Quc2V0UHJvdG90eXBlT2YobCxIVE1MRWxlbWVudCk7dmFyIGQ9Ly0oXHcpL2csXz1mdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKGQsKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ/dC50b1VwcGVyQ2FzZSgpOiIifSkpfSxtPS8oW14tXSkoW0EtWl0pL2csZj1mdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKG0sIiQxLSQyIikucmVwbGFjZShtLCIkMS0kMiIpLnRvTG93ZXJDYXNlKCl9O2Z1bmN0aW9uIGgoZSl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjAsbj1lLmxlbmd0aC10LHI9bmV3IEFycmF5KG4pO3doaWxlKG4tLSlyW25dPWVbbit0XTtyZXR1cm4gcn12YXIgdj0iZnVuY3Rpb24iPT09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJiJmdW5jdGlvbiI9PT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX07ZnVuY3Rpb24geShlLHQpe3ZhciBuPWUscj1bInRydWUiLCJmYWxzZSJdLmluZGV4T2YoZSk+LTEsaT1wYXJzZUZsb2F0KG4sMTApLGE9IWlzTmFOKGkpJiZpc0Zpbml0ZShuKSYmInN0cmluZyI9PT10eXBlb2YgbiYmIW4ubWF0Y2goL14wK1teLl1cZCokL2cpO3JldHVybiB0JiZ0IT09Qm9vbGVhbiYmKCJ1bmRlZmluZWQiPT09dHlwZW9mIG4/InVuZGVmaW5lZCI6dihuKSkhPT10P249dChlKTpyfHx0PT09Qm9vbGVhbj9uPSIiPT09bnx8InRydWUiPT09bjphJiYobj1pKSxufWZ1bmN0aW9uIGcoZSx0KXtpZihlJiZlLmxlbmd0aCllLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBuPV8oZSk7LTE9PT10LmNhbWVsQ2FzZS5pbmRleE9mKG4pJiZ0LmNhbWVsQ2FzZS5wdXNoKG4pfSkpO2Vsc2UgaWYoZSYmIm9iamVjdCI9PT0oInVuZGVmaW5lZCI9PT10eXBlb2YgZT8idW5kZWZpbmVkIjp2KGUpKSlmb3IodmFyIG4gaW4gZSl7dmFyIHI9XyhuKTstMT09PXQuY2FtZWxDYXNlLmluZGV4T2YocikmJnQuY2FtZWxDYXNlLnB1c2gociksZVtyXSYmZVtyXS50eXBlJiYodC50eXBlc1tuXT1bXS5jb25jYXQoZVtyXS50eXBlKVswXSl9fWZ1bmN0aW9uIHcoKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sdD17Y2FtZWxDYXNlOltdLGh5cGhlbmF0ZTpbXSx0eXBlczp7fX07aWYoZS5taXhpbnMmJmUubWl4aW5zLmZvckVhY2goKGZ1bmN0aW9uKGUpe2coZS5wcm9wcyx0KX0pKSxlLmV4dGVuZHMmJmUuZXh0ZW5kcy5wcm9wcyl7dmFyIG49ZS5leHRlbmRzLnByb3BzO2cobix0KX1yZXR1cm4gZyhlLnByb3BzLHQpLHQuY2FtZWxDYXNlLmZvckVhY2goKGZ1bmN0aW9uKGUpe3QuaHlwaGVuYXRlLnB1c2goZihlKSl9KSksdH1mdW5jdGlvbiBiKGUsdCl7dC5jYW1lbENhc2UuZm9yRWFjaCgoZnVuY3Rpb24obixyKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fW25dfSxzZXQ6ZnVuY3Rpb24oZSl7aWYoIm9iamVjdCIhPT0oInVuZGVmaW5lZCI9PT10eXBlb2YgZT8idW5kZWZpbmVkIjp2KGUpKSYmImZ1bmN0aW9uIiE9PXR5cGVvZiBlfHwhdGhpcy5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fKXt2YXIgbj10LnR5cGVzW3QuY2FtZWxDYXNlW3JdXTt0aGlzLnNldEF0dHJpYnV0ZSh0Lmh5cGhlbmF0ZVtyXSx5KGUsbikpfWVsc2V7dmFyIGk9dC5jYW1lbENhc2Vbcl07dGhpcy5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fW2ldPWV9fX0pfSkpfWZ1bmN0aW9uIGsoZSx0LG4pe3ZhciByPXQucHJvcHNEYXRhfHx7fTtyZXR1cm4gbi5oeXBoZW5hdGUuZm9yRWFjaCgoZnVuY3Rpb24odCxpKXt2YXIgYT1uLmNhbWVsQ2FzZVtpXSxvPWUuYXR0cmlidXRlc1t0XXx8ZVthXSxjPW51bGw7bi50eXBlc1thXSYmKGM9bi50eXBlc1thXSksbyBpbnN0YW5jZW9mIEF0dHI/clthXT15KG8udmFsdWUsYyk6InVuZGVmaW5lZCIhPT10eXBlb2YgbyYmKHJbYV09byl9KSkscn1mdW5jdGlvbiB4KGUpe3ZhciB0PXt9O3JldHVybiBoKGUuYXR0cmlidXRlcykuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dFsidnVlLXNsb3QiPT09ZS5ub2RlTmFtZT8ic2xvdCI6ZS5ub2RlTmFtZV09ZS5ub2RlVmFsdWV9KSksdH1mdW5jdGlvbiBDKGUpe2lmKGUuY2hpbGROb2Rlcy5sZW5ndGgpcmV0dXJuIGUuY2hpbGROb2RlcztpZihlLmNvbnRlbnQmJmUuY29udGVudC5jaGlsZE5vZGVzJiZlLmNvbnRlbnQuY2hpbGROb2Rlcy5sZW5ndGgpcmV0dXJuIGUuY29udGVudC5jaGlsZE5vZGVzO3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiB0LmlubmVySFRNTD1lLmlubmVySFRNTCx0LmNoaWxkTm9kZXN9ZnVuY3Rpb24gUyhlLHQsbil7dmFyIHI9Qyh0KSxpPWgocikubWFwKChmdW5jdGlvbih0KXtyZXR1cm4iI3RleHQiPT09dC5ub2RlTmFtZT90Lm5vZGVWYWx1ZTplKHQudGFnTmFtZSx7YXR0cnM6eCh0KSxkb21Qcm9wczp7aW5uZXJIVE1MOnQuaW5uZXJIVE1MfX0pfSkpO3JldHVybiBuLnNsb3Q9dC5pZCxlKCJ0ZW1wbGF0ZSIsbixpKX1mdW5jdGlvbiBQKCl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOltdLHQ9YXJndW1lbnRzWzFdLG49W107cmV0dXJuIGgoZSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7aWYoIiN0ZXh0Ij09PWUubm9kZU5hbWUpZS5ub2RlVmFsdWUudHJpbSgpJiZuLnB1c2godCgic3BhbiIsZS5ub2RlVmFsdWUpKTtlbHNlIGlmKCIjY29tbWVudCIhPT1lLm5vZGVOYW1lKXt2YXIgcj14KGUpLGk9e2F0dHJzOnIsZG9tUHJvcHM6e2lubmVySFRNTDoiIj09PWUuaW5uZXJIVE1MP2UuaW5uZXJUZXh0OmUuaW5uZXJIVE1MfX07ci5zbG90JiYoaS5zbG90PXIuc2xvdCxyLnNsb3Q9dm9pZCAwKTt2YXIgYT0iVEVNUExBVEUiPT09ZS50YWdOYW1lP1ModCxlLGkpOnQoZS50YWdOYW1lLGkpO24ucHVzaChhKX19KSksbn1mdW5jdGlvbiBqKGUsdCl7dmFyIG49e2J1YmJsZXM6ITEsY2FuY2VsYWJsZTohMSxkZXRhaWw6dH0scj12b2lkIDA7cmV0dXJuImZ1bmN0aW9uIj09PXR5cGVvZiB3aW5kb3cuQ3VzdG9tRXZlbnQ/cj1uZXcgQ3VzdG9tRXZlbnQoZSxuKToocj1kb2N1bWVudC5jcmVhdGVFdmVudCgiQ3VzdG9tRXZlbnQiKSxyLmluaXRDdXN0b21FdmVudChlLG4uYnViYmxlcyxuLmNhbmNlbGFibGUsbi5kZXRhaWwpKSxyfWZ1bmN0aW9uIE8oZSx0KXtmb3IodmFyIG49YXJndW1lbnRzLmxlbmd0aCxyPUFycmF5KG4+Mj9uLTI6MCksaT0yO2k8bjtpKyspcltpLTJdPWFyZ3VtZW50c1tpXTt2YXIgYT1qKHQsW10uY29uY2F0KHIpKTtlLmRpc3BhdGNoRXZlbnQoYSl9ZnVuY3Rpb24gQShlLHQsbixyLGkpe2lmKCFlLl9fdnVlX2N1c3RvbV9lbGVtZW50X18pe3ZhciBhPWZ1bmN0aW9uKCl7dGhpcy4kZW1pdD1mdW5jdGlvbigpe2Zvcih2YXIgdCxuPWFyZ3VtZW50cy5sZW5ndGgscj1BcnJheShuKSxpPTA7aTxuO2krKylyW2ldPWFyZ3VtZW50c1tpXTtPLmFwcGx5KHZvaWQgMCxbZV0uY29uY2F0KHIpKSx0aGlzLl9fcHJvdG9fXyYmKHQ9dGhpcy5fX3Byb3RvX18uJGVtaXQpLmNhbGwuYXBwbHkodCxbdGhpc10uY29uY2F0KHIpKX19LG89dC51dGlsLmV4dGVuZCh7fSxuKSxjPWsoZSxvLHIpLHM9dC52ZXJzaW9uJiZwYXJzZUludCh0LnZlcnNpb24uc3BsaXQoIi4iKVswXSwxMCl8fDA7aWYoby5iZWZvcmVDcmVhdGU9W10uY29uY2F0KG8uYmVmb3JlQ3JlYXRlfHxbXSxhKSxvLl9jb21waWxlZCl7dmFyIHA9e307by5fQ3RvciYmKHA9T2JqZWN0LnZhbHVlcyhvLl9DdG9yKVswXS5vcHRpb25zKSxwLmJlZm9yZUNyZWF0ZT1vLmJlZm9yZUNyZWF0ZX12YXIgbD12b2lkIDA7aWYocz49Mil7dmFyIHU9ZS5jbG9uZU5vZGUoITApLmNoaWxkTm9kZXM7bD17cHJvcHNEYXRhOmMscHJvcHM6ci5jYW1lbENhc2UsY29tcHV0ZWQ6e3JlYWN0aXZlUHJvcHM6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9e307cmV0dXJuIHIuY2FtZWxDYXNlLmZvckVhY2goKGZ1bmN0aW9uKG4peyJ1bmRlZmluZWQiIT09dHlwZW9mIGVbbl0mJih0W25dPWVbbl0pfSkpLHR9fSxyZW5kZXI6ZnVuY3Rpb24oZSl7dmFyIHQ9e3Byb3BzOnRoaXMucmVhY3RpdmVQcm9wc307cmV0dXJuIGUobyx0LFAodSxlKSl9fX1lbHNlIGlmKDE9PT1zKWw9byxsLnByb3BzRGF0YT1jO2Vsc2V7bD1vO3ZhciBkPXt9O09iamVjdC5rZXlzKGMpLmZvckVhY2goKGZ1bmN0aW9uKGUpe2RbZV09e2RlZmF1bHQ6Y1tlXX19KSksbC5wcm9wcz1kfXZhciBfPXM+PTI/IjxkaXY+PC9kaXY+IjooIjxkaXY+IitlLmlubmVySFRNTCsiPC9kaXY+IikucmVwbGFjZSgvdnVlLXNsb3Q9L2csInNsb3Q9Iik7aWYoaS5zaGFkb3cmJmUuc2hhZG93Um9vdD8oZS5zaGFkb3dSb290LmlubmVySFRNTD1fLGwuZWw9ZS5zaGFkb3dSb290LmNoaWxkcmVuWzBdKTooZS5pbm5lckhUTUw9XyxsLmVsPWUuY2hpbGRyZW5bMF0pLGIoZSxyKSwiZnVuY3Rpb24iPT09dHlwZW9mIGkuYmVmb3JlQ3JlYXRlVnVlSW5zdGFuY2UmJihsPWkuYmVmb3JlQ3JlYXRlVnVlSW5zdGFuY2UobCl8fGwpLGUuX192dWVfY3VzdG9tX2VsZW1lbnRfXz1uZXcgdChsKSxlLl9fdnVlX2N1c3RvbV9lbGVtZW50X3Byb3BzX189cixlLmdldFZ1ZUluc3RhbmNlPWZ1bmN0aW9uKCl7cmV0dXJuIGUuX192dWVfY3VzdG9tX2VsZW1lbnRfXy4kY2hpbGRyZW5bMF19LGkuc2hhZG93JiZpLnNoYWRvd0NzcyYmZS5zaGFkb3dSb290KXt2YXIgbT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO20udHlwZT0idGV4dC9jc3MiLG0uYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoaS5zaGFkb3dDc3MpKSxlLnNoYWRvd1Jvb3QuYXBwZW5kQ2hpbGQobSl9ZS5yZW1vdmVBdHRyaWJ1dGUoInZjZS1jbG9hayIpLGUuc2V0QXR0cmlidXRlKCJ2Y2UtcmVhZHkiLCIiKSxPKGUsInZjZS1yZWFkeSIpfX1mdW5jdGlvbiBFKGUpe2UuY3VzdG9tRWxlbWVudD1mdW5jdGlvbih0LG4pe3ZhciByPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7fSxpPSJmdW5jdGlvbiI9PT10eXBlb2YgbixhPWkmJntwcm9wczpyLnByb3BzfHxbXX0sbz13KGk/YTpuKSxjPXUodCx7Y29uc3RydWN0b3JDYWxsYmFjazpmdW5jdGlvbigpeyJmdW5jdGlvbiI9PT10eXBlb2Ygci5jb25zdHJ1Y3RvckNhbGxiYWNrJiZyLmNvbnN0cnVjdG9yQ2FsbGJhY2suY2FsbCh0aGlzKX0sY29ubmVjdGVkQ2FsbGJhY2s6ZnVuY3Rpb24oKXt2YXIgYT10aGlzLGM9aSYmbigpLHM9YyYmYy50aGVuJiYiZnVuY3Rpb24iPT09dHlwZW9mIGMudGhlbjtpZigiZnVuY3Rpb24iPT09dHlwZW9mIHIuY29ubmVjdGVkQ2FsbGJhY2smJnIuY29ubmVjdGVkQ2FsbGJhY2suY2FsbCh0aGlzKSxpJiYhcyl0aHJvdyBuZXcgRXJyb3IoIkFzeW5jIGNvbXBvbmVudCAiK3QrIiBkbyBub3QgcmV0dXJucyBQcm9taXNlIik7dGhpcy5fX2RldGFjaGVkX198fChzP2MudGhlbigoZnVuY3Rpb24odCl7dmFyIG49dyh0KTtBKGEsZSx0LG4sciksImZ1bmN0aW9uIj09PXR5cGVvZiByLnZ1ZUluc3RhbmNlQ3JlYXRlZENhbGxiYWNrJiZyLnZ1ZUluc3RhbmNlQ3JlYXRlZENhbGxiYWNrLmNhbGwoYSl9KSk6KEEodGhpcyxlLG4sbyxyKSwiZnVuY3Rpb24iPT09dHlwZW9mIHIudnVlSW5zdGFuY2VDcmVhdGVkQ2FsbGJhY2smJnIudnVlSW5zdGFuY2VDcmVhdGVkQ2FsbGJhY2suY2FsbCh0aGlzKSkpLHRoaXMuX19kZXRhY2hlZF9fPSExfSxkaXNjb25uZWN0ZWRDYWxsYmFjazpmdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5fX2RldGFjaGVkX189ITAsImZ1bmN0aW9uIj09PXR5cGVvZiByLmRpc2Nvbm5lY3RlZENhbGxiYWNrJiZyLmRpc2Nvbm5lY3RlZENhbGxiYWNrLmNhbGwodGhpcyksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtlLl9fZGV0YWNoZWRfXyYmZS5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fJiYoZS5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fLiRkZXN0cm95KCEwKSxkZWxldGUgZS5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fLGRlbGV0ZSBlLl9fdnVlX2N1c3RvbV9lbGVtZW50X3Byb3BzX18pfSksci5kZXN0cm95VGltZW91dHx8M2UzKX0sYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrOmZ1bmN0aW9uKGUsdCxuKXtpZih0aGlzLl9fdnVlX2N1c3RvbV9lbGVtZW50X18mJiJ1bmRlZmluZWQiIT09dHlwZW9mIG4pe3ZhciBpPV8oZSk7ImZ1bmN0aW9uIj09PXR5cGVvZiByLmF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayYmci5hdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2suY2FsbCh0aGlzLGUsdCxuKTt2YXIgYT10aGlzLl9fdnVlX2N1c3RvbV9lbGVtZW50X3Byb3BzX18udHlwZXNbaV07dGhpcy5fX3Z1ZV9jdXN0b21fZWxlbWVudF9fW2ldPXkobixhKX19LG9ic2VydmVkQXR0cmlidXRlczpvLmh5cGhlbmF0ZSxzaGFkb3c6ISFyLnNoYWRvdyYmISFIVE1MRWxlbWVudC5wcm90b3R5cGUuYXR0YWNoU2hhZG93fSk7cmV0dXJuIGN9fSJ1bmRlZmluZWQiIT09dHlwZW9mIHdpbmRvdyYmd2luZG93LlZ1ZSYmKHdpbmRvdy5WdWUudXNlKEUpLEUuaW5zdGFsbGVkJiYoRS5pbnN0YWxsZWQ9ITEpKSx0WyJhIl09RX0sYzhiYTpmdW5jdGlvbihlLHQpe3ZhciBuO249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30oKTt0cnl7bj1ufHxuZXcgRnVuY3Rpb24oInJldHVybiB0aGlzIikoKX1jYXRjaChyKXsib2JqZWN0Ij09PXR5cGVvZiB3aW5kb3cmJihuPXdpbmRvdyl9ZS5leHBvcnRzPW59LGNhNWE6ZnVuY3Rpb24oZSx0KXt2YXIgbj0wLHI9TWF0aC5yYW5kb20oKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIlN5bWJvbCgiLmNvbmNhdCh2b2lkIDA9PT1lPyIiOmUsIilfIiwoKytuK3IpLnRvU3RyaW5nKDM2KSl9fSxjYTlmOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiNGQwMSIpLGk9bigiZjM2NyIpLGE9bigiNTYyZSIpLG89bigiMWI3ZiIpLGM9bigiYjNmZCIpLHM9cihvKCkpO2kocyx7Z2V0UG9seWZpbGw6byxpbXBsZW1lbnRhdGlvbjphLHNoaW06Y30pLGUuZXhwb3J0cz1zfSxjYWRmOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9bigiOWM2YyIpLGk9bigiZDUzYiIpLGE9bigiODRmMiIpLG89bigiNjgyMSIpO2UuZXhwb3J0cz1uKCIwMWY5IikoQXJyYXksIkFycmF5IiwoZnVuY3Rpb24oZSx0KXt0aGlzLl90PW8oZSksdGhpcy5faT0wLHRoaXMuX2s9dH0pLChmdW5jdGlvbigpe3ZhciBlPXRoaXMuX3QsdD10aGlzLl9rLG49dGhpcy5faSsrO3JldHVybiFlfHxuPj1lLmxlbmd0aD8odGhpcy5fdD12b2lkIDAsaSgxKSk6aSgwLCJrZXlzIj09dD9uOiJ2YWx1ZXMiPT10P2Vbbl06W24sZVtuXV0pfSksInZhbHVlcyIpLGEuQXJndW1lbnRzPWEuQXJyYXkscigia2V5cyIpLHIoInZhbHVlcyIpLHIoImVudHJpZXMiKX0sY2I3YzpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDNmNCIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZighcihlKSl0aHJvdyBUeXBlRXJyb3IoZSsiIGlzIG5vdCBhbiBvYmplY3QhIik7cmV0dXJuIGV9fSxjY2I5OmZ1bmN0aW9uKGUsdCxuKXt0LmY9bigiNTE2OCIpfSxjZDFjOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCJlODUzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG5ldyhyKGUpKSh0KX19LGNlMTA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjY5YTgiKSxpPW4oIjY4MjEiKSxhPW4oImMzNjYiKSghMSksbz1uKCI2MTNiIikoIklFX1BST1RPIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dmFyIG4sYz1pKGUpLHM9MCxwPVtdO2ZvcihuIGluIGMpbiE9byYmcihjLG4pJiZwLnB1c2gobik7d2hpbGUodC5sZW5ndGg+cylyKGMsbj10W3MrK10pJiYofmEocCxuKXx8cC5wdXNoKG4pKTtyZXR1cm4gcH19LGQwMjQ6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1uKCIyMWQwIiksaT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLGE9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxvPWZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9MCxpPWUubGVuZ3RoO3I8aTtyKyspYS5jYWxsKGUscikmJihudWxsPT1uP3QoZVtyXSxyLGUpOnQuY2FsbChuLGVbcl0scixlKSl9LGM9ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj0wLGk9ZS5sZW5ndGg7cjxpO3IrKyludWxsPT1uP3QoZS5jaGFyQXQocikscixlKTp0LmNhbGwobixlLmNoYXJBdChyKSxyLGUpfSxzPWZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHIgaW4gZSlhLmNhbGwoZSxyKSYmKG51bGw9PW4/dChlW3JdLHIsZSk6dC5jYWxsKG4sZVtyXSxyLGUpKX0scD1mdW5jdGlvbihlLHQsbil7aWYoIXIodCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiaXRlcmF0b3IgbXVzdCBiZSBhIGZ1bmN0aW9uIik7dmFyIGE7YXJndW1lbnRzLmxlbmd0aD49MyYmKGE9biksIltvYmplY3QgQXJyYXldIj09PWkuY2FsbChlKT9vKGUsdCxhKToic3RyaW5nIj09PXR5cGVvZiBlP2MoZSx0LGEpOnMoZSx0LGEpfTtlLmV4cG9ydHM9cH0sZDM0YTpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiUmFuZyB0csW+bmUga2FwaXRhbGl6YWNpamUiLCJtY2FwIjoiVHLFvm5hIGthcGl0YWxpemFjaWphIiwiMjRoX3ZvbHVtZSI6Ik9ic2VnIHYgMjQgaCIsIjI0aF9oaWdoX2xvdyI6Ik5hanYuL25ham0uIHYgMjQgaCJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiUHJpbWVyamF2YSBjZW4ga3JpcHRvdmFsdXQiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiUHJpbWVyamF2YSB0csW+bmUga2FwaXRhbGl6YWNpamUga3JpcHRvdmFsdXQifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6Ik5hanYuIHYgMjQgaCIsIjI0aF9sb3ciOiJOYWptLiB2IDI0IGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiT2dsZWQgZ3JhZmlrb25hIGtvdmFuY2EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiVXBvcmFibGphIHRlaG5vbG9naWpvICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTmFqdi4gdiAyNCBoIiwiMjRoX2xvdyI6Ik5ham0uIHYgMjQgaCIsInZpZXdfcHJpY2VfY2hhcnQiOiJPZ2xlZCBncmFmaWtvbmEga292YW5jYSAle2NvaW59IiwicG93ZXJlZF9ieSI6IlVwb3JhYmxqYSB0ZWhub2xvZ2lqbyAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fY29udmVydGVyX3dpZGdldCI6eyJ2aWV3X3ByaWNlX2NoYXJ0IjoiT2dsZWQgZ3JhZmlrb25hIGtvdmFuY2EgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJVcG9yYWJsamEgdGVobm9sb2dpam8gJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoiRHJldmVzbmkgcG9nbGVkIGtyaXB0b3ZhbHV0Iiwic3VidGl0bGUiOiIoVG9wICV7dG9wfSBwbyB0csW+bmkga2FwaXRhbGl6YWNpamkpIiwicG93ZXJlZF9ieSI6IlVwb3JhYmxqYSB0ZWhub2xvZ2lqbyAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiSXpqYXZhIG8gb21laml0dmkgb2Rnb3Zvcm5vc3RpOiBUYSBvcm9kamEgc28gbmFtZW5qZW5hIHJhenZlZHJpbHUgaW4gbmUgcHJlZHN0YXZsamFqbyBmaW5hbsSNbmVnYSBzdmV0b3ZhbmphLiIsInNwaW4iOiJaYXZydGkiLCJhdmFpbGFibGVfY29pbnMiOiJSYXpwb2xvxb5saml2aSBrb3ZhbmNpIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiUG9zb2RvYml0ZXYgY2VuZSBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiU2t1cC4gdHIuIGthcC4iLCIyNGhfdm9sIjoiT2JzZWcgdHJnb3ZhbmphIHYgMjQgaCIsImRvbSI6IkRvbWluYW50bm9zdCJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJCb3J6YSIsInBhaXIiOiJQYXIiLCJwcmljZSI6IkNlbmEiLCJ2b2x1bWUiOiJPYnNlZyIsInRydXN0X3Njb3JlIjoiT2NlbmEgemF1cGFuamEiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiT2dsZWQgY2VuaWthIiwicG93ZXJlZF9ieSI6IlVwb3JhYmxqYSB0ZWhub2xvZ2lqbyAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJPZ2xlZCB2c2VoIHRyZ292IGtvdmFuY2EgJXtjb2lufSJ9fScpfSxkM2Y0OmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiJvYmplY3QiPT09dHlwZW9mIGU/bnVsbCE9PWU6ImZ1bmN0aW9uIj09PXR5cGVvZiBlfX0sZDRhYjpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PXIuY2FsbChlKSxuPSJbb2JqZWN0IEFyZ3VtZW50c10iPT09dDtyZXR1cm4gbnx8KG49IltvYmplY3QgQXJyYXldIiE9PXQmJm51bGwhPT1lJiYib2JqZWN0Ij09PXR5cGVvZiBlJiYibnVtYmVyIj09PXR5cGVvZiBlLmxlbmd0aCYmZS5sZW5ndGg+PTAmJiJbb2JqZWN0IEZ1bmN0aW9uXSI9PT1yLmNhbGwoZS5jYWxsZWUpKSxufX0sZDUyNTpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoKXtyZXR1cm57dW5zdWJzY3JpYmU6ZnVuY3Rpb24oKXt9fX1uLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSl9LGQ1M2I6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm57dmFsdWU6dCxkb25lOiEhZX19fSxkNmM3OmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxpPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcsYT1BcnJheS5wcm90b3R5cGUuc2xpY2Usbz1uKCJkNGFiIiksYz1PYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLHM9IWMuY2FsbCh7dG9TdHJpbmc6bnVsbH0sInRvU3RyaW5nIikscD1jLmNhbGwoKGZ1bmN0aW9uKCl7fSksInByb3RvdHlwZSIpLGw9WyJ0b1N0cmluZyIsInRvTG9jYWxlU3RyaW5nIiwidmFsdWVPZiIsImhhc093blByb3BlcnR5IiwiaXNQcm90b3R5cGVPZiIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwiY29uc3RydWN0b3IiXSx1PWZ1bmN0aW9uKGUpe3ZhciB0PWUuY29uc3RydWN0b3I7cmV0dXJuIHQmJnQucHJvdG90eXBlPT09ZX0sZD17JGFwcGxpY2F0aW9uQ2FjaGU6ITAsJGNvbnNvbGU6ITAsJGV4dGVybmFsOiEwLCRmcmFtZTohMCwkZnJhbWVFbGVtZW50OiEwLCRmcmFtZXM6ITAsJGlubmVySGVpZ2h0OiEwLCRpbm5lcldpZHRoOiEwLCRvdXRlckhlaWdodDohMCwkb3V0ZXJXaWR0aDohMCwkcGFnZVhPZmZzZXQ6ITAsJHBhZ2VZT2Zmc2V0OiEwLCRwYXJlbnQ6ITAsJHNjcm9sbExlZnQ6ITAsJHNjcm9sbFRvcDohMCwkc2Nyb2xsWDohMCwkc2Nyb2xsWTohMCwkc2VsZjohMCwkd2Via2l0SW5kZXhlZERCOiEwLCR3ZWJraXRTdG9yYWdlSW5mbzohMCwkd2luZG93OiEwfSxfPWZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCI9PT10eXBlb2Ygd2luZG93KXJldHVybiExO2Zvcih2YXIgZSBpbiB3aW5kb3cpdHJ5e2lmKCFkWyIkIitlXSYmci5jYWxsKHdpbmRvdyxlKSYmbnVsbCE9PXdpbmRvd1tlXSYmIm9iamVjdCI9PT10eXBlb2Ygd2luZG93W2VdKXRyeXt1KHdpbmRvd1tlXSl9Y2F0Y2godCl7cmV0dXJuITB9fWNhdGNoKHQpe3JldHVybiEwfXJldHVybiExfSgpLG09ZnVuY3Rpb24oZSl7aWYoInVuZGVmaW5lZCI9PT10eXBlb2Ygd2luZG93fHwhXylyZXR1cm4gdShlKTt0cnl7cmV0dXJuIHUoZSl9Y2F0Y2godCl7cmV0dXJuITF9fSxmPWZ1bmN0aW9uKGUpe3ZhciB0PW51bGwhPT1lJiYib2JqZWN0Ij09PXR5cGVvZiBlLG49IltvYmplY3QgRnVuY3Rpb25dIj09PWkuY2FsbChlKSxhPW8oZSksYz10JiYiW29iamVjdCBTdHJpbmddIj09PWkuY2FsbChlKSx1PVtdO2lmKCF0JiYhbiYmIWEpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0LmtleXMgY2FsbGVkIG9uIGEgbm9uLW9iamVjdCIpO3ZhciBkPXAmJm47aWYoYyYmZS5sZW5ndGg+MCYmIXIuY2FsbChlLDApKWZvcih2YXIgXz0wO188ZS5sZW5ndGg7KytfKXUucHVzaChTdHJpbmcoXykpO2lmKGEmJmUubGVuZ3RoPjApZm9yKHZhciBmPTA7ZjxlLmxlbmd0aDsrK2YpdS5wdXNoKFN0cmluZyhmKSk7ZWxzZSBmb3IodmFyIGggaW4gZSlkJiYicHJvdG90eXBlIj09PWh8fCFyLmNhbGwoZSxoKXx8dS5wdXNoKFN0cmluZyhoKSk7aWYocylmb3IodmFyIHY9bShlKSx5PTA7eTxsLmxlbmd0aDsrK3kpdiYmImNvbnN0cnVjdG9yIj09PWxbeV18fCFyLmNhbGwoZSxsW3ldKXx8dS5wdXNoKGxbeV0pO3JldHVybiB1fTtmLnNoaW09ZnVuY3Rpb24oKXtpZihPYmplY3Qua2V5cyl7dmFyIGU9ZnVuY3Rpb24oKXtyZXR1cm4gMj09PShPYmplY3Qua2V5cyhhcmd1bWVudHMpfHwiIikubGVuZ3RofSgxLDIpO2lmKCFlKXt2YXIgdD1PYmplY3Qua2V5cztPYmplY3Qua2V5cz1mdW5jdGlvbihlKXtyZXR1cm4gbyhlKT90KGEuY2FsbChlKSk6dChlKX19fWVsc2UgT2JqZWN0LmtleXM9ZjtyZXR1cm4gT2JqZWN0LmtleXN8fGZ9LGUuZXhwb3J0cz1mfSxkNmRhOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7aWYoImZ1bmN0aW9uIiE9PXR5cGVvZiBTeW1ib2x8fCJmdW5jdGlvbiIhPT10eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scylyZXR1cm4hMTtpZigic3ltYm9sIj09PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3IpcmV0dXJuITA7dmFyIGU9e30sdD1TeW1ib2woInRlc3QiKSxuPU9iamVjdCh0KTtpZigic3RyaW5nIj09PXR5cGVvZiB0KXJldHVybiExO2lmKCJbb2JqZWN0IFN5bWJvbF0iIT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpKXJldHVybiExO2lmKCJbb2JqZWN0IFN5bWJvbF0iIT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG4pKXJldHVybiExO3ZhciByPTQyO2Zvcih0IGluIGVbdF09cixlKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PT10eXBlb2YgT2JqZWN0LmtleXMmJjAhPT1PYmplY3Qua2V5cyhlKS5sZW5ndGgpcmV0dXJuITE7aWYoImZ1bmN0aW9uIj09PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyYmMCE9PU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGUpLmxlbmd0aClyZXR1cm4hMTt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGUpO2lmKDEhPT1pLmxlbmd0aHx8aVswXSE9PXQpcmV0dXJuITE7aWYoIU9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLHQpKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PT10eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcil7dmFyIGE9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHQpO2lmKGEudmFsdWUhPT1yfHwhMCE9PWEuZW51bWVyYWJsZSlyZXR1cm4hMX1yZXR1cm4hMH19LGQ3NTI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjc3MjYiKS5wYXJzZUZsb2F0LGk9bigiYWE3NyIpLnRyaW07ZS5leHBvcnRzPTEvcihuKCJmZGVmIikrIi0wIikhPT0tMS8wP2Z1bmN0aW9uKGUpe3ZhciB0PWkoU3RyaW5nKGUpLDMpLG49cih0KTtyZXR1cm4gMD09PW4mJiItIj09dC5jaGFyQXQoMCk/LTA6bn06cn0sZDg2NDpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiNzlhYSIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7aWYocihlKSx2b2lkIDA9PT10KXJldHVybiBlO3N3aXRjaChuKXtjYXNlIDE6cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiBlLmNhbGwodCxuKX07Y2FzZSAyOnJldHVybiBmdW5jdGlvbihuLHIpe3JldHVybiBlLmNhbGwodCxuLHIpfTtjYXNlIDM6cmV0dXJuIGZ1bmN0aW9uKG4scixpKXtyZXR1cm4gZS5jYWxsKHQsbixyLGkpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseSh0LGFyZ3VtZW50cyl9fX0sZDhkNjpmdW5jdGlvbihlLHQsbil7bigiMTY1NCIpLG4oIjZjMWMiKSxlLmV4cG9ydHM9bigiY2NiOSIpLmYoIml0ZXJhdG9yIil9LGQ4ZTg6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUpdGhyb3cgVHlwZUVycm9yKGUrIiBpcyBub3QgYSBmdW5jdGlvbiEiKTtyZXR1cm4gZX19LGQ5ZjY6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImU0YWUiKSxpPW4oIjc5NGIiKSxhPW4oIjFiYzMiKSxvPU9iamVjdC5kZWZpbmVQcm9wZXJ0eTt0LmY9bigiOGU2MCIpP09iamVjdC5kZWZpbmVQcm9wZXJ0eTpmdW5jdGlvbihlLHQsbil7aWYocihlKSx0PWEodCwhMCkscihuKSxpKXRyeXtyZXR1cm4gbyhlLHQsbil9Y2F0Y2goYyl7fWlmKCJnZXQiaW4gbnx8InNldCJpbiBuKXRocm93IFR5cGVFcnJvcigiQWNjZXNzb3JzIG5vdCBzdXBwb3J0ZWQhIik7cmV0dXJuInZhbHVlImluIG4mJihlW3RdPW4udmFsdWUpLGV9fSxkYTMwOmZ1bmN0aW9uKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlKXtyZXR1cm4gZS5wYXJlbnRFbGVtZW50fHxlLmdldFJvb3ROb2RlKCkuaG9zdH1uLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSl9LGRhNjg6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj1mdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lLiRjcmVhdGVFbGVtZW50LG49ZS5fc2VsZi5fY3x8dDtyZXR1cm4gbigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLWNvbnRhaW5lciIsY2xhc3M6ZS5jb250YWluZXJDbGFzcyxzdHlsZTplLmNvbnRhaW5lclN0eWxlLGF0dHJzOnsiZGF0YS1sb2FkaW5nIjplLmxvYWRpbmd9fSxbZS5sb2FkaW5nP24oImRpdiIse3N0YXRpY0NsYXNzOiJjZy1wLTMgY2ctYmFzZSJ9LFtlLl92KCJMb2FkaW5nIHdpZGdldC4uLiIpXSk6bigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLXdpZGdldCJ9LFtuKCJkaXYiLHtzdGF0aWNDbGFzczoiY2ctbWFycXVlZSIsc3R5bGU6e2JhY2tncm91bmRDb2xvcjplLmJhY2tncm91bmRDb2xvcn19LGUuX2woMiwoZnVuY3Rpb24odCl7cmV0dXJuIG4oInNwYW4iLHtrZXk6dCxjbGFzczpbImNnLW1hcnF1ZWUtY29udGVudC0iK3QsZS5jb2lucy5sZW5ndGg+MjU/ImNnLW1hcnF1ZWUtY29udGVudC1sb25nIjoiIl19LFtuKCJkaXYiLHtzdGF0aWNDbGFzczoiY2ctZmxleCBjZy1mbGV4LXJvdyJ9LFtlLl9sKGUuY29pbnMsKGZ1bmN0aW9uKHQpe3JldHVybiBuKCJhIix7a2V5OnQuaWQsc3RhdGljQ2xhc3M6ImNnLXB5LTIgY2ctcHgtMyBjZy1mbGV4IGNnLWNvaW4tcm93IGNnLXNtIixzdHlsZTp7Y29sb3I6ZS5mb250Q29sb3J9LGF0dHJzOntocmVmOmUubGlua1RvQ29pbk92ZXJ2aWV3KHQuaWQpLHRhcmdldDoiX2JsYW5rIn19LFtuKCJkaXYiLHtzdGF0aWNDbGFzczoiY2ctZmxleCBjZy1pdGVtcy1jZW50ZXIifSxbbigiaW1nIix7c3RhdGljQ2xhc3M6ImNnLW1yLTIiLGF0dHJzOntzcmM6dC5pbWFnZX19KSxuKCJzcGFuIixbbigic3BhbiIse3N0YXRpY0NsYXNzOiJjZy1ib2xkIn0sW2UuX3YoZS5fcyh0Lm5hbWUpKV0pLGUuX3YoIiAoIitlLl9zKHQuc3ltYm9sLnRvVXBwZXJDYXNlKCkpKyIpXG4gICAgICAgICAgICAgICIpXSldKSxlLmxvYWRpbmdQcmljZT9lLl9lKCk6bigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLW1sLTIgY2ctZmxleCBjZy1qdXN0aWZ5LWVuZCBjZy1pdGVtcy1jZW50ZXIiLGNsYXNzOmUuaXNOZWdhdGl2ZSh0LnByaWNlX2NoYW5nZV9wZXJjZW50YWdlXzI0aCk/ImNnLXJlZC1jb2xvci1kYXJrIjoiY2ctcHJpbWFyeS1jb2xvci1kYXJrIn0sW24oImRpdiIsW24oInNwYW4iLHtzdGF0aWNDbGFzczoiY2ctYm9sZCIsY2xhc3M6ZS5wcmljaW5nSGlnaGxpZ2h0Q2xhc3Nlc1t0LmlkXX0sW2UuX3YoIlxuICAgICAgICAgICAgICAgICAgIitlLl9zKGUuZm9ybWF0Q3VycmVuY3kodC5jdXJyZW50X3ByaWNlKSkrIlxuICAgICAgICAgICAgICAgICIpXSksbigic3BhbiIsW2UuX3YoIigiK2UuX3MoZS5mb3JtYXRQZXJjZW50YWdlKHQucHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoKSkrIikiKV0pXSksbigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLW1sLTIiLGNsYXNzOmUuaXNOZWdhdGl2ZSh0LnByaWNlX2NoYW5nZV9wZXJjZW50YWdlXzI0aCk/ImNnLWFycm93LWRvd24iOiJjZy1hcnJvdy11cCJ9KV0pXSl9KSksbigiZGl2Iix7c3RhdGljQ2xhc3M6ImNnLWZsZXggY2ctaXRlbXMtY2VudGVyIn0sW24oImEiLHtzdGF0aWNDbGFzczoiY2ctYm9sZCBjZy1zbSBjZy1weC0zIixkb21Qcm9wczp7aW5uZXJIVE1MOmUuX3MoZS5wb3dlcmVkQnlDb2luR2Vja28pfX0pXSldLDIpXSl9KSksMCldKV0pfSxpPVtdLGE9KG4oIjc1MTQiKSxuKCI1ZGYyIiksbigiYWM2YSIpLG4oIjI4YTUiKSxuKCJjNWY2IiksbigiMmIwZSIpKSxvPW4oIjdkYWIiKSxjPW4oImRhMzAiKSxzPW4oImU4YmEiKSxwPW4oImQ1MjUiKSxsPW4oImMxZTIiKSx1PW4oIjJmNmQiKSxkPXtuYW1lOiJDb2luZ2Vja29Db2luUHJpY2VNYXJxdWVlV2lkZ2V0IixtaXhpbnM6W09iamVjdChsWyJhIl0pKCksdVsiYSJdXSxwcm9wczp7Y29pbklkczp7dHlwZTpTdHJpbmcsZGVmYXVsdDoiYml0Y29pbixldGhlcmV1bSxlb3MscmlwcGxlLGxpdGVjb2luLHRyb24sbmVvLG1vbmVybyJ9LGN1cnJlbmN5Ont0eXBlOlN0cmluZyxkZWZhdWx0OiJ1c2QifSxsb2NhbGU6e3R5cGU6U3RyaW5nLGRlZmF1bHQ6ImVuIn0sd2lkdGg6e3R5cGU6TnVtYmVyLGRlZmF1bHQ6MH0sYmFja2dyb3VuZENvbG9yOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIjZmZmZmZmIn0sZm9udENvbG9yOnt0eXBlOlN0cmluZyxkZWZhdWx0OiIjNGM0YzRjIn19LGRhdGE6ZnVuY3Rpb24oKXtyZXR1cm57bG9hZGluZzohMCxwb2x5Z2xvdDp7fSxhcGlEYXRhOltdLGNvbnRhaW5lckNsYXNzOiJsYXJnZSIsbG9hZGluZ1ByaWNlOiExLHByaWNpbmdIaWdobGlnaHRDbGFzc2VzOnt9fX0sY29tcHV0ZWQ6e21hcnF1ZWVDbGFzczpmdW5jdGlvbigpe3JldHVybnthY3RpdmU6ITAsInRleHQtZGFuZ2VyIjohMX19LGN1cnJlbmN5Q29kZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLmN1cnJlbmN5LnRvTG93ZXJDYXNlKCl9LHNhbml0aXplZENvaW5JZHM6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLmNvaW5JZHMuc3BsaXQoIiwiKS5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiBlLnRyaW0oKX0pKSx0PVtdLG49e307cmV0dXJuIGUuZm9yRWFjaCgoZnVuY3Rpb24oZSl7bltlXXx8dC5wdXNoKGUpLG5bZV09ZX0pKSx0fSxjb2luczpmdW5jdGlvbigpe2lmKCEodGhpcy5hcGlEYXRhLmxlbmd0aD4wKSlyZXR1cm5bXTt2YXIgZT17fTtyZXR1cm4gdGhpcy5hcGlEYXRhLmZvckVhY2goKGZ1bmN0aW9uKHQpe2VbdC5pZF09dH0pKSx0aGlzLnNhbml0aXplZENvaW5JZHMubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gZVt0XX0pKX0scG93ZXJlZEJ5Q29pbkdlY2tvOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucG9seWdsb3QudCgiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldC5wb3dlcmVkX2J5Iix7bmFtZToiQ29pbkdlY2tvIixuYW1lX3N0YXJ0Oic8YSBjbGFzcz0iY2ctcHJpbWFyeS1jb2xvci1kYXJrIGNnLW5vLXVuZGVybGluZSIgaHJlZj0iaHR0cHM6Ly93d3cuY29pbmdlY2tvLmNvbS8nLmNvbmNhdCh0aGlzLmxvY2FsZSwiPyIpLmNvbmNhdCh0aGlzLnV0bVBhcmFtcyh0aGlzLnNhbml0aXplZENvaW5JZHMuam9pbigpKSwnIiB0YXJnZXQ9Il9ibGFuayI+JyksbmFtZV9lbmQ6IjwvYT4ifSl9LGNvbnRhaW5lclN0eWxlOmZ1bmN0aW9uKCl7cmV0dXJue3dpZHRoOjA9PT10aGlzLndpZHRoPyIxMDAlIjoiIi5jb25jYXQodGhpcy53aWR0aCwicHgiKSxiYWNrZ3JvdW5kQ29sb3I6dGhpcy5iYWNrZ3JvdW5kQ29sb3J9fX0sbWV0aG9kczp7Y3VycmVuY3lDaGFuZ2VkOmZ1bmN0aW9uKGUpe09iamVjdChjWyJhIl0pKHRoaXMuJGVsKS5zZXRBdHRyaWJ1dGUoImN1cnJlbmN5IixlLnRhcmdldC52YWx1ZS50b0xvd2VyQ2FzZSgpKX0sZm9ybWF0Q3VycmVuY3k6ZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdChzWyJmb3JtYXRDdXJyZW5jeSJdKShlLHRoaXMuY3VycmVuY3lDb2RlLHRoaXMubG9jYWxlKX0sZm9ybWF0UGVyY2VudGFnZTpmdW5jdGlvbihlKXt2YXIgdD1OdW1iZXIucGFyc2VGbG9hdChlKTtyZXR1cm4iIi5jb25jYXQodC50b0ZpeGVkKDIpLCIlIil9LGZldGNoRGF0YTpmdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sbj10LmNvaW5SZWxvYWQscj12b2lkIDAhPT1uJiZuLGk9dC5jdXJyZW5jeVJlbG9hZCxhPXZvaWQgMCE9PWkmJmk7cj90aGlzLmxvYWRpbmc9ITA6YSYmKHRoaXMubG9hZGluZ1ByaWNlPSEwKSxmZXRjaCgiaHR0cHM6Ly9hcGkuY29pbmdlY2tvLmNvbS9hcGkvdjMvY29pbnMvbWFya2V0cz92c19jdXJyZW5jeT0iLmNvbmNhdCh0aGlzLmN1cnJlbmN5Q29kZSwiJmlkcz0iKS5jb25jYXQodGhpcy5zYW5pdGl6ZWRDb2luSWRzLmpvaW4oIiwiKSwiJmxvY2FsZT0iKS5jb25jYXQodGhpcy5sb2NhbGUpKS50aGVuKChmdW5jdGlvbihlKXtyZXR1cm4gZS5qc29uKCl9KSkudGhlbigoZnVuY3Rpb24odCl7dCYmKGUuYXBpRGF0YT10LGUubG9hZGluZz0hMSxlLmxvYWRpbmdQcmljZT0hMSl9KSl9LGlzTmVnYXRpdmU6ZnVuY3Rpb24oZSl7cmV0dXJuIE51bWJlci5wYXJzZUZsb2F0KGUpPDB9LGxpbmtUb0NvaW5PdmVydmlldzpmdW5jdGlvbihlKXtyZXR1cm4iaHR0cHM6Ly93d3cuY29pbmdlY2tvLmNvbS9yZXNvdXJjZV9yZWRpcmVjdD9sb2NhbGU9Ii5jb25jYXQodGhpcy5sb2NhbGUsIiZyb3V0ZT1jb2lucy8iKS5jb25jYXQoZSwiJiIpLmNvbmNhdCh0aGlzLnV0bVBhcmFtcyhlKSl9LHV0bVBhcmFtczpmdW5jdGlvbihlKXtyZXR1cm4idXRtX3NvdXJjZT0iLmNvbmNhdCh3aW5kb3cubG9jYXRpb24uaG9zdCwiJnV0bV9tZWRpdW09Y29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCZ1dG1fY29udGVudD0iKS5jb25jYXQoZSl9LGxpc3RlbkZvclByaWNlQ2hhbmdlczpmdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5jb2luRGF0YUxpc3RlbmVyJiZ0aGlzLmNvaW5EYXRhTGlzdGVuZXIudW5zdWJzY3JpYmUoKSx0aGlzLmNvaW5EYXRhTGlzdGVuZXI9T2JqZWN0KHBbImEiXSkodGhpcy5zYW5pdGl6ZWRDb2luSWRzLChmdW5jdGlvbih0KXt2YXIgbj1lLmFwaURhdGEuZmluZCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUuaWQ9PT10LmN9KSk7aWYobil7dmFyIHI9bi5jdXJyZW50X3ByaWNlLGk9dC5wW2UuY3VycmVuY3lDb2RlXTtlLmZvcm1hdEN1cnJlbmN5KHIpIT09ZS5mb3JtYXRDdXJyZW5jeShpKSYmKHBhcnNlRmxvYXQocik8PXBhcnNlRmxvYXQoaSk/ZS5oaWdobGlnaHRQcmljaW5nKG4uaWQsImNnLXByaW1hcnktY29sb3IiKTplLmhpZ2hsaWdodFByaWNpbmcobi5pZCwiY2ctcmVkLWNvbG9yIikpLG4uY3VycmVudF9wcmljZT10LnBbZS5jdXJyZW5jeUNvZGVdLG4ucHJpY2VfY2hhbmdlX3BlcmNlbnRhZ2VfMjRoPXQuZVtlLmN1cnJlbmN5Q29kZV19fSkpfSxoaWdobGlnaHRQcmljaW5nOmZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpczthWyJhIl0uc2V0KHRoaXMucHJpY2luZ0hpZ2hsaWdodENsYXNzZXMsZSx0KSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe2FbImEiXS5zZXQobi5wcmljaW5nSGlnaGxpZ2h0Q2xhc3NlcyxlLG51bGwpfSksMWUzKX0sc3VwcG9ydGVkQ3VycmVuY2llczpvWyJiIl19LHdhdGNoOntjb2luSWRzOmZ1bmN0aW9uKCl7dGhpcy5mZXRjaERhdGEoe2NvaW5SZWxvYWQ6ITB9KSx0aGlzLmxpc3RlbkZvclByaWNlQ2hhbmdlcygpLHRoaXMucHJpY2luZ0hpZ2hsaWdodENsYXNzZXM9e319LGN1cnJlbmN5OmZ1bmN0aW9uKCl7dGhpcy5mZXRjaERhdGEoe2N1cnJlbmN5UmVsb2FkOiEwfSl9LGxvY2FsZTpmdW5jdGlvbigpe3RoaXMuZmV0Y2hEYXRhKCl9fSxjcmVhdGVkOmZ1bmN0aW9uKCl7dGhpcy5mZXRjaERhdGEoKSx0aGlzLmxpc3RlbkZvclByaWNlQ2hhbmdlcygpfSxtb3VudGVkOmZ1bmN0aW9uKCl7fSxkZXN0cm95ZWQ6ZnVuY3Rpb24oKXt0aGlzLmNvaW5EYXRhTGlzdGVuZXImJnRoaXMuY29pbkRhdGFMaXN0ZW5lci51bnN1YnNjcmliZSgpfX0sXz1kLG09bigiMjg3NyIpLGY9T2JqZWN0KG1bImEiXSkoXyxyLGksITEsbnVsbCxudWxsLG51bGwpO3RbImEiXT1mLmV4cG9ydHN9LGRiZGI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjU4NGEiKSxpPW4oImU1M2QiKSxhPSJfX2NvcmUtanNfc2hhcmVkX18iLG89aVthXXx8KGlbYV09e30pOyhlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gb1tlXXx8KG9bZV09dm9pZCAwIT09dD90Ont9KX0pKCJ2ZXJzaW9ucyIsW10pLnB1c2goe3ZlcnNpb246ci52ZXJzaW9uLG1vZGU6bigiYjhlMyIpPyJwdXJlIjoiZ2xvYmFsIixjb3B5cmlnaHQ6IsKpIDIwMTkgRGVuaXMgUHVzaGthcmV2ICh6bG9pcm9jay5ydSkifSl9LGRjZDA6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6ItCg0LXQudGC0LjQvdCzINC/0L4g0L/QsNC30LDRgNC90LAg0LrQsNC/0LjRgtCw0LvQuNC30LDRhtC40Y8iLCJtY2FwIjoi0J/QsNC30LDRgNC90LAg0LrQsNC/0LjRgtCw0LvQuNC30LDRhtC40Y8iLCIyNGhfdm9sdW1lIjoi0J7QsdC10Lwg0LfQsCAyNCDRhy4iLCIyNGhfaGlnaF9sb3ciOiLQndCw0Lkt0LLQuNGB0L7QutCwL9C90LDQuS3QvdC40YHQutCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCAyNCDRhy4ifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoi0KHRgNCw0LLQvdC10L3QuNC1INC90LAg0YbQtdC90LjRgtC1INC90LAg0LrRgNC40L/RgtC+0LLQsNC70YPRgtC40YLQtSIsImNyeXB0b19tYXJrZXRfY2FwX2NvbXBhcmlzb24iOiLQodGA0LDQstC90LXQvdC40LUg0L3QsCDQv9Cw0LfQsNGA0L3QsNGC0LAg0LrQsNC/0LjRgtCw0LvQuNC30LDRhtC40Y8g0L3QsCDQutGA0LjQv9GC0L7QstCw0LvRg9GC0LjRgtC1In0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6ItCd0LDQuS3QstC40YHQvtC60LAg0YHRgtC+0LnQvdC+0YHRgiDQt9CwIDI0INGHLiIsIjI0aF9sb3ciOiLQndCw0Lkt0L3QuNGB0LrQsCDRgdGC0L7QudC90L7RgdGCINC30LAgMjQg0YcuIiwidmlld19wcmljZV9jaGFydCI6ItCf0YDQtdCz0LvQtdC0INC90LAg0LPRgNCw0YTQuNC60LDRgtCwINC90LAg0YbQtdC90LjRgtC1INC90LAgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLQn9C+0LTQtNGK0YDQttCwINGB0LUg0L7RgiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6ItCf0L7QtNC00YrRgNC20LAg0YHQtSDQvtGCICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiLQndCw0Lkt0LLQuNGB0L7QutCwINGB0YLQvtC50L3QvtGB0YIg0LfQsCAyNCDRhy4iLCIyNGhfbG93Ijoi0J3QsNC5LdC90LjRgdC60LAg0YHRgtC+0LnQvdC+0YHRgiDQt9CwIDI0INGHLiIsInZpZXdfcHJpY2VfY2hhcnQiOiLQn9GA0LXQs9C70LXQtCDQvdCwINCz0YDQsNGE0LjQutCw0YLQsCDQvdCwINGG0LXQvdC40YLQtSDQvdCwICV7Y29pbn0iLCJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6ItCf0YDQtdCz0LvQtdC0INC90LAg0LPRgNCw0YTQuNC60LDRgtCwINC90LAg0YbQtdC90LjRgtC1INC90LAgJXtjb2lufSIsInBvd2VyZWRfYnkiOiLQn9C+0LTQtNGK0YDQttCwINGB0LUg0L7RgiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiLQlNGK0YDQstC+0LLQuNC00L3QsCDQutCw0YDRgtCwINC90LAg0LrRgNC40L/RgtC+0LLQsNC70YPRgtC40YLQtSIsInN1YnRpdGxlIjoiKNCi0L7QvyAle3RvcH0g0L/QviDQv9Cw0LfQsNGA0L3QsCDQutCw0L/QuNGC0LDQu9C40LfQsNGG0LjRjykiLCJwb3dlcmVkX2J5Ijoi0J/QvtC00LTRitGA0LbQsCDRgdC1INC+0YIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6ItCe0YLQutCw0Lcg0L7RgiDQvtGC0LPQvtCy0L7RgNC90L7RgdGCOiDQotC10LfQuCDQuNC90YHRgtGA0YPQvNC10L3RgtC4INGB0LAg0LfQsCDRgNCw0LfQstC70LXRh9C10L3QuNC1INC4INC90LUg0L/RgNC10LTRgdGC0LDQstC70Y/QstCw0YIg0YTQuNC90LDQvdGB0L7QsiDRgdGK0LLQtdGCLiIsInNwaW4iOiLQn9C70LDRgtGE0L7RgNC80LAgU3BpbiIsImF2YWlsYWJsZV9jb2lucyI6ItCd0LDQu9C40YfQvdC4INCy0LDQu9GD0YLQuCJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6ItCQ0LrRgtGD0LDQu9C40LfQuNGA0LDQvdC1INC90LAg0YbQtdC90LjRgtC1INCyIENvaW5HZWNrbyIsInRvdGFsX21jYXAiOiLQntCx0YnQsCDQv9Cw0LfQsNGA0L3QsCDQutCw0L/QuNGC0LDQu9C40LfQsNGG0LjRjyIsIjI0aF92b2wiOiLQntCx0LXQvCDQt9CwIDI0INGHLiIsImRvbSI6ItCU0L7QvC4ifSwiY29pbl9tYXJrZXRfdGlja2VyX2xpc3Rfd2lkZ2V0Ijp7ImV4Y2hhbmdlIjoi0JHQvtGA0YHQsCIsInBhaXIiOiLQlNCy0L7QudC60LAiLCJwcmljZSI6ItCm0LXQvdCwIiwidm9sdW1lIjoi0J7QsdC10LwiLCJ0cnVzdF9zY29yZSI6ItCg0LXQt9GD0LvRgtCw0YIg0LfQsCDQtNC+0LLQtdGA0LjQtSIsInZpZXdfcHJpY2VfY2hhcnQiOiLQn9GA0LXQs9C70LXQtCDQvdCwINCz0YDQsNGE0LjQutCw0YLQsCDQvdCwINGG0LXQvdC40YLQtSIsInBvd2VyZWRfYnkiOiLQn9C+0LTQtNGK0YDQttCwINGB0LUg0L7RgiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiLQn9GA0LXQs9C70LXQtCDQvdCwINCy0YHQuNGH0LrQuCDQv9Cw0LfQsNGA0Lgg0LfQsCAle2NvaW59In19Jyl9LGRkMTE6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IuyLnOqwgOy0neyVoSDsiJzsnIQiLCJtY2FwIjoi7Iuc6rCA7LSd7JWhIiwiMjRoX3ZvbHVtZSI6IjI07Iuc6rCEIOuzvOulqCIsIjI0aF9oaWdoX2xvdyI6IjI07Iuc6rCEIOqzoOqwgC/soIDqsIAifSwiY29pbl9jb21wYXJlX2NoYXJ0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UiLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IuyVlO2YuO2ZlO2PkCDqsIDqsqkg67mE6rWQIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IuyVlO2YuO2ZlO2PkCDsi5zqsIDstJ3slaEg67mE6rWQIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNOyLnOqwhCDqs6DqsIAiLCIyNGhfbG93IjoiMjTsi5zqsIQg7KCA6rCAIiwidmlld19wcmljZV9jaGFydCI6IiV7Y29pbn0g6rCA6rKpIOywqO2KuCDsobDtmowiLCJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UifSwiYmVhbV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0g7KCc6rO1In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI07Iuc6rCEIOqzoOqwgCIsIjI0aF9sb3ciOiIyNOyLnOqwhCDsoIDqsIAiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiJXtjb2lufSDqsIDqsqkg7LCo7Yq4IOyhsO2ajCIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOygnOqztSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IiV7Y29pbn0g6rCA6rKpIOywqO2KuCDsobDtmowiLCJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSDsoJzqs7UifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IuyVlO2YuO2ZlO2PkCDrgpjrrLTsp4Drj4QiLCJzdWJ0aXRsZSI6Iijsi5zqsIDstJ3slaEg6riw7KSAIOyDgeychCAle3RvcH0g7L2U7J24KSIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOygnOqztSJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IuqzoOyngCDsgqztla06IOuzuCDrj4TqtazripQg7J6s66+466Gc66eMIO2ZnOyaqe2VoCDsiJgg7J6I7Iq164uI64ukLCDquIjsnLXsoIHsnbgg7J6Q66y47J20IOyVhOuLmeuLiOuLpC4iLCJzcGluIjoi7ZqM7KCEIiwiYXZhaWxhYmxlX2NvaW5zIjoi7IKs7JqpIOqwgOuKpSDsvZTsnbgifSwiY29pbl9kYWlseV9wcmljZV93aWRnZXQiOnsidGl0bGUiOiJDb2luR2Vja28g6rCA6rKpIOyXheuNsOydtO2KuCIsInRvdGFsX21jYXAiOiLstJ0g7Iuc6rCA7LSd7JWhIiwiMjRoX3ZvbCI6IjI07Iuc6rCEIOqxsOuemOufiSIsImRvbSI6IuyngOuwsOugpSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLqsbDrnpjshowiLCJwYWlyIjoi7IyNIiwicHJpY2UiOiLsi5zshLgiLCJ2b2x1bWUiOiLqsbDrnpjrn4kiLCJ0cnVzdF9zY29yZSI6IuyLoOuisOyngOyImCIsInZpZXdfcHJpY2VfY2hhcnQiOiLqsIDqsqkg7LCo7Yq4IOyhsO2ajCIsInBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IOygnOqztSIsInZpZXdfYWxsIjoi7KCE7LK0ICV7Y29pbn0g66eI7LyTIOyhsO2ajCJ9fScpfSxlMTFlOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPSJjb25zdHJ1Y3RvcixoYXNPd25Qcm9wZXJ0eSxpc1Byb3RvdHlwZU9mLHByb3BlcnR5SXNFbnVtZXJhYmxlLHRvTG9jYWxlU3RyaW5nLHRvU3RyaW5nLHZhbHVlT2YiLnNwbGl0KCIsIil9LGU0YWU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oImY3NzIiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYoIXIoZSkpdGhyb3cgVHlwZUVycm9yKGUrIiBpcyBub3QgYW4gb2JqZWN0ISIpO3JldHVybiBlfX0sZTUzZDpmdW5jdGlvbihlLHQpe3ZhciBuPWUuZXhwb3J0cz0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmd2luZG93Lk1hdGg9PU1hdGg/d2luZG93OiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZi5NYXRoPT1NYXRoP3NlbGY6RnVuY3Rpb24oInJldHVybiB0aGlzIikoKTsibnVtYmVyIj09dHlwZW9mIF9fZyYmKF9fZz1uKX0sZTZmMzpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiMDdlMyIpLGk9bigiMzZjMyIpLGE9bigiNWI0ZSIpKCExKSxvPW4oIjU1NTkiKSgiSUVfUFJPVE8iKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt2YXIgbixjPWkoZSkscz0wLHA9W107Zm9yKG4gaW4gYyluIT1vJiZyKGMsbikmJnAucHVzaChuKTt3aGlsZSh0Lmxlbmd0aD5zKXIoYyxuPXRbcysrXSkmJih+YShwLG4pfHxwLnB1c2gobikpO3JldHVybiBwfX0sZTg1MzpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiZDNmNCIpLGk9bigiMTE2OSIpLGE9bigiMmI0YyIpKCJzcGVjaWVzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiBpKGUpJiYodD1lLmNvbnN0cnVjdG9yLCJmdW5jdGlvbiIhPXR5cGVvZiB0fHx0IT09QXJyYXkmJiFpKHQucHJvdG90eXBlKXx8KHQ9dm9pZCAwKSxyKHQpJiYodD10W2FdLG51bGw9PT10JiYodD12b2lkIDApKSksdm9pZCAwPT09dD9BcnJheTp0fX0sZThiYTpmdW5jdGlvbihlLHQsbil7KGZ1bmN0aW9uKGUsbil7bih0KX0pKDAsKGZ1bmN0aW9uKGUpeyJ1c2Ugc3RyaWN0Ijtjb25zdCB0PXtCVEM6IuKCvyIsRVRIOiLOniIsVVNEOiIkIixDQUQ6IkMkIixHQlA6IsKjIixFVVI6IuKCrCIsQ0hGOiJGci4iLFNFSzoia3IiLEpQWToiwqUiLENOWToiwqUiLElOUjoi4oK5IixSVUI6IuKCvSIsQVVEOiJBJCIsSEtEOiJISyQiLFNHRDoiUyQiLFRXRDoiTlQkIixCUkw6IlIkIixLUlc6IuKCqSIsWkFSOiJSIixNWVI6IlJNIixJRFI6IlJwIixOWkQ6Ik5aJCIsTVhOOiJNWCQiLFBIUDoi4oKxIixES0s6ImtyLiIsUExOOiJ6xYIiLEFFRDoiREgiLEFSUzoiJCIsQ0xQOiJDTFAiLENaSzoiS8SNIixIVUY6IkZ0IixJTFM6IuKCqiIsS1dEOiJLRCIsTEtSOiJScyIsTk9LOiJrciIsUEtSOiLigqgiLFNBUjoiU1IiLFRIQjoi4Li/IixUUlk6IuKCuiIsWEFVOiJYQVUiLFhBRzoiWEFHIixYRFI6IlhEUiJ9LG49e01ZUjp7bG9jYXRpb246e3N0YXJ0OiEwfSxmb3JMb2NhbGVzOntlbjohMH19LFNHRDp7bG9jYXRpb246e3N0YXJ0OiEwfSxmb3JMb2NhbGVzOntlbjohMH19LFBIUDp7bG9jYXRpb246e3N0YXJ0OiEwfSxmb3JMb2NhbGVzOntlbjohMH19LEJUQzp7bG9jYXRpb246e3N0YXJ0OiEwfSxmb3JMb2NhbGVzOntlbjohMH19LEVUSDp7bG9jYXRpb246e3N0YXJ0OiEwfSxmb3JMb2NhbGVzOntlbjohMH19fTtmdW5jdGlvbiByKCl7cmV0dXJuISgib2JqZWN0IiE9dHlwZW9mIEludGx8fCFJbnRsfHwiZnVuY3Rpb24iIT10eXBlb2YgSW50bC5OdW1iZXJGb3JtYXQpfWZ1bmN0aW9uIGkoZSl7cmV0dXJuIkJUQyI9PT1lfHwiRVRIIj09PWV9ZnVuY3Rpb24gYShlKXtyZXR1cm4gaShlKXx8bnVsbD09dFtlXX1mdW5jdGlvbiBvKGUsdCl7Y29uc3Qgbj1uZXcgUmVnRXhwKGAoXFwufCwpKDB7JHt0KzF9LH0pKD89WzEtOV0/KWApO3JldHVybiBlLnJlcGxhY2UobiwodCxuLHIpPT5gJHtufTA8c3ViIHRpdGxlPSIke2V9Ij4ke3IubGVuZ3RofTwvc3ViPmApfWZ1bmN0aW9uIGMoZSxyPSJlbiIsaSl7InVuZGVmaW5lZCIhPT10eXBlb2YgaSYmKGU9byhlLGkpKTtjb25zdCBhPWUubWF0Y2goL15bQS1aXXszfVxzPy8pO2lmKG51bGwhPWEpe2NvbnN0IGk9YVswXS50cmltKCksbz1uW2ldO3JldHVybiBvJiZvLmxvY2F0aW9uLnN0YXJ0JiZvLmZvckxvY2FsZXNbcl0/ZS5yZXBsYWNlKGFbMF0sdFtpXSk6ZX1jb25zdCBjPWUubWF0Y2goL1tBLVpdezN9JC8pO2lmKG51bGwhPWMpe2NvbnN0IGk9Y1swXSxhPW5baV07cmV0dXJuIGEmJmEubG9jYXRpb24uZW5kJiZhLmZvckxvY2FsZXNbcl0/ZS5yZXBsYWNlKGksdFtpXSk6ZX1yZXR1cm4gZX1mdW5jdGlvbiBzKGUsdCxuLHIpe3RyeXtjb25zdCBpPXtzdHlsZToiY3VycmVuY3kiLGN1cnJlbmN5OmUsY3VycmVuY3lEaXNwbGF5OiJzeW1ib2wifTtyZXR1cm4gdm9pZCAwIT09bj8oaS5taW5pbXVtRnJhY3Rpb25EaWdpdHM9bixpLm1heGltdW1GcmFjdGlvbkRpZ2l0cz1uKTp2b2lkIDAhPT1yJiYoaS5tYXhpbXVtU2lnbmlmaWNhbnREaWdpdHM9ciksbmV3IEludGwuTnVtYmVyRm9ybWF0KHQsaSl9Y2F0Y2goaSl7cmV0dXJuIHAoZSx0LG4pfX1mdW5jdGlvbiBwKGUsdCxuPTIpe3JldHVybiBlPWUudG9VcHBlckNhc2UoKSxuPjI/e2Zvcm1hdDp0PT5hKGUpP2Ake3QudG9GaXhlZChuKX0gJHtlfWA6YCR7ZX0gJHt0LnRvRml4ZWQobil9YH06e2Zvcm1hdDpuPT5hKGUpP2Ake24udG9Mb2NhbGVTdHJpbmcodCl9ICR7ZX1gOmAke2V9ICR7bi50b0xvY2FsZVN0cmluZyh0KX1gfX1mdW5jdGlvbiBsKGUsdCl7aWYoIXIoKSlyZXR1cm4gcChlLHQsMCk7bGV0IG49e3N0eWxlOiJkZWNpbWFsIixub3RhdGlvbjoiY29tcGFjdCIsbWluaW11bUZyYWN0aW9uRGlnaXRzOjAsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjN9O3JldHVybiBhKGUpJiYhaShlKXx8KG4uc3R5bGU9ImN1cnJlbmN5IixuLmN1cnJlbmN5PWUpLG5ldyBJbnRsLk51bWJlckZvcm1hdCh0LG4pfWZ1bmN0aW9uIHUoZSx0LG4sbyl7Y29uc3QgYz1yKCksbD1jJiYoIWEoZSl8fGkoZSkpO3JldHVybiBsP3MoZSx0LG4sbyk6cChlLHQsbil9bGV0IGQsXyxtLGYsaCx2LHksZyx3LGIsayx4LEM9e307ZnVuY3Rpb24gUygpe0M9e319ZnVuY3Rpb24gUChlLHQpe2NvbnN0IG49YCR7ZX0tJHt0fWAscj1DW25dO209cj9yLmN1cnJlbmN5Rm9ybWF0dGVyTm9ybWFsOnUoZSx0KSxmPXI/ci5jdXJyZW5jeUZvcm1hdHRlck5vRGVjaW1hbDp1KGUsdCwwKSxoPXI/ci5jdXJyZW5jeUZvcm1hdHRlck1lZGl1bTp1KGUsdCwzKSx2PXI/ci5jdXJyZW5jeUZvcm1hdHRlclR3b0RlY2ltYWw6dShlLHQsMikseT1yP3IuY3VycmVuY3lGb3JtYXR0ZXJTbWFsbDp1KGUsdCw2KSxnPXI/ci5jdXJyZW5jeUZvcm1hdHRlclZlcnlTbWFsbDp1KGUsdCw4KSx3PXI/ci5jdXJyZW5jeUZvcm1hdHRlclZlcnlWZXJ5U21hbGw6dShlLHQsMTIpLGI9cj9yLmN1cnJlbmN5Rm9ybWF0dGVyMTVEUDp1KGUsdCwxNSksaz1yP3IuY3VycmVuY3lGb3JtYXR0ZXIxOERQOnUoZSx0LDE4KSx4PXI/ci5jdXJyZW5jeUZvcm1hdHRlckFiYnJldmlhdGVkOmwoZSx0KSxudWxsPT1yJiYoQ1tuXT17fSxDW25dLmN1cnJlbmN5Rm9ybWF0dGVyTm9ybWFsPW0sQ1tuXS5jdXJyZW5jeUZvcm1hdHRlck5vRGVjaW1hbD1mLENbbl0uY3VycmVuY3lGb3JtYXR0ZXJNZWRpdW09aCxDW25dLmN1cnJlbmN5Rm9ybWF0dGVyVHdvRGVjaW1hbD12LENbbl0uY3VycmVuY3lGb3JtYXR0ZXJTbWFsbD15LENbbl0uY3VycmVuY3lGb3JtYXR0ZXJWZXJ5U21hbGw9ZyxDW25dLmN1cnJlbmN5Rm9ybWF0dGVyVmVyeVZlcnlTbWFsbD13LENbbl0uY3VycmVuY3lGb3JtYXR0ZXIxNURQPWIsQ1tuXS5jdXJyZW5jeUZvcm1hdHRlcjE4RFA9ayxDW25dLmN1cnJlbmN5Rm9ybWF0dGVyQWJicmV2aWF0ZWQ9eCl9Y29uc3Qgaj01MCxPPTFlMyxBPTFlNTtmdW5jdGlvbiBFKGUsdCxuPSJlbiIscj0hMSxvPSExLHM9ITEpe3Q9dC50b1VwcGVyQ2FzZSgpO2xldCBwPXZvaWQgMDtpZihkPT09dCYmXz09bnx8KGQ9dCxfPW4sUCh0LG4pKSxzKXtsZXQgcj14LmZvcm1hdChlKTtyZXR1cm4gYSh0KSYmIWkodCkmJihyPWAke3J9ICR7dH1gKSxjKHIsbil9aWYoITA9PT1vJiZlPjEwMClyZXR1cm4gYyhmLmZvcm1hdChlKSxuKTtpZigib2JqZWN0Ij09PXR5cGVvZiBvJiZudWxsIT09byl7aWYocil7bGV0IHQ9by5oYXNPd25Qcm9wZXJ0eSgiZGVjaW1hbFBsYWNlcyIpP2UudG9GaXhlZChvLmRlY2ltYWxQbGFjZXMpOmU7cmV0dXJuYCR7cGFyc2VGbG9hdCh0KS50b1ByZWNpc2lvbihvLnNpZ25pZmljYW50RmlndXJlcykvMX1gfWlmKG8uaGFzT3duUHJvcGVydHkoIm1heGltdW1EZWNpbWFsVHJhaWxpbmdaZXJvZXMiKSYmKHA9by5tYXhpbXVtRGVjaW1hbFRyYWlsaW5nWmVyb2VzKSxvLmhhc093blByb3BlcnR5KCJkZWNpbWFsUGxhY2VzIikmJm8uaGFzT3duUHJvcGVydHkoInNpZ25pZmljYW50RmlndXJlcyIpKXtjb25zdCByPXUodCxuLHZvaWQgMCxvLnNpZ25pZmljYW50RmlndXJlcyk7cmV0dXJuIGMoci5mb3JtYXQoTnVtYmVyLnBhcnNlRmxvYXQoZS50b0ZpeGVkKG8uZGVjaW1hbFBsYWNlcykpKSxuLHApfWlmKG8uaGFzT3duUHJvcGVydHkoImRlY2ltYWxQbGFjZXMiKXx8by5oYXNPd25Qcm9wZXJ0eSgic2lnbmlmaWNhbnRGaWd1cmVzIikpe2NvbnN0IHI9dSh0LG4sby5kZWNpbWFsUGxhY2VzLG8uc2lnbmlmaWNhbnRGaWd1cmVzKTtyZXR1cm4gYyhyLmZvcm1hdChlKSxuLHApfX1pZighYSh0KSl7Y29uc3QgaT1NYXRoLmFicyhlKTtyZXR1cm4gcj9pPDFlLTEyP2UudG9GaXhlZCgxOCk6aTwxZS05P2UudG9GaXhlZCgxNSk6aTwxZS02P2UudG9GaXhlZCgxMik6aTwuMDAxP2UudG9GaXhlZCg4KTppPDE/ZS50b0ZpeGVkKDYpOmUudG9GaXhlZCgyKTowPT09aT9jKG0uZm9ybWF0KGUpLG4scCk6aTwxZS0xMj9jKGsuZm9ybWF0KGUpLG4scCk6aTwxZS05P2MoYi5mb3JtYXQoZSksbixwKTppPDFlLTY/Yyh3LmZvcm1hdChlKSxuLHApOmk8LjA1P2MoZy5mb3JtYXQoZSksbixwKTppPDE/Yyh5LmZvcm1hdChlKSxuLHApOiJKUFkiPT09dCYmaTwxMDA/Yyh2LmZvcm1hdChlKSxuLHApOmMoaT5BP2YuZm9ybWF0KGUpOm0uZm9ybWF0KGUpLG4pfXtsZXQgdD1wYXJzZUZsb2F0KGUpO2lmKHIpcmV0dXJuIDA9PT1lP3QudG9GaXhlZCgyKTp0LnRvUHJlY2lzaW9uKDgpO2lmKDA9PT1lKXJldHVybiBjKG0uZm9ybWF0KGUpLG4scCk7aWYodD49TylyZXR1cm4gYyhmLmZvcm1hdChlKSxuKTtpZih0Pj1qJiZ0PE8pcmV0dXJuIGMoaC5mb3JtYXQoZSksbixwKTtpZih0Pj0xJiZ0PGopcmV0dXJuIGMoeS5mb3JtYXQoZSksbixwKTtpZih0Pj0xZS02JiZ0PDEpcmV0dXJuIGMoZy5mb3JtYXQoZSksbixwKTtpZih0Pj0xZS05JiZ0PDFlLTYpcmV0dXJuIGMody5mb3JtYXQoZSksbixwKTtpZih0Pj0xZS0xMiYmdDwxZS05KXJldHVybiBjKGIuZm9ybWF0KGUpLG4scCk7aWYodDwxZS0xMilyZXR1cm4gYyhrLmZvcm1hdChlKSxuLHApfX1lLmNsZWFyQ2FjaGU9UyxlLmZvcm1hdEN1cnJlbmN5PUUsZS5pc0NyeXB0bz1hLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KX0pKX0sZWJkNjpmdW5jdGlvbihlLHQsbil7dmFyIHI9bigiY2I3YyIpLGk9bigiZDhlOCIpLGE9bigiMmI0YyIpKCJzcGVjaWVzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dmFyIG4sbz1yKGUpLmNvbnN0cnVjdG9yO3JldHVybiB2b2lkIDA9PT1vfHx2b2lkIDA9PShuPXIobylbYV0pP3Q6aShuKX19LGViZmQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oIjYyYTAiKSgibWV0YSIpLGk9bigiZjc3MiIpLGE9bigiMDdlMyIpLG89bigiZDlmNiIpLmYsYz0wLHM9T2JqZWN0LmlzRXh0ZW5zaWJsZXx8ZnVuY3Rpb24oKXtyZXR1cm4hMH0scD0hbigiMjk0YyIpKChmdW5jdGlvbigpe3JldHVybiBzKE9iamVjdC5wcmV2ZW50RXh0ZW5zaW9ucyh7fSkpfSkpLGw9ZnVuY3Rpb24oZSl7byhlLHIse3ZhbHVlOntpOiJPIisgKytjLHc6e319fSl9LHU9ZnVuY3Rpb24oZSx0KXtpZighaShlKSlyZXR1cm4ic3ltYm9sIj09dHlwZW9mIGU/ZTooInN0cmluZyI9PXR5cGVvZiBlPyJTIjoiUCIpK2U7aWYoIWEoZSxyKSl7aWYoIXMoZSkpcmV0dXJuIkYiO2lmKCF0KXJldHVybiJFIjtsKGUpfXJldHVybiBlW3JdLml9LGQ9ZnVuY3Rpb24oZSx0KXtpZighYShlLHIpKXtpZighcyhlKSlyZXR1cm4hMDtpZighdClyZXR1cm4hMTtsKGUpfXJldHVybiBlW3JdLnd9LF89ZnVuY3Rpb24oZSl7cmV0dXJuIHAmJm0uTkVFRCYmcyhlKSYmIWEoZSxyKSYmbChlKSxlfSxtPWUuZXhwb3J0cz17S0VZOnIsTkVFRDohMSxmYXN0S2V5OnUsZ2V0V2VhazpkLG9uRnJlZXplOl99fSxlZGQ0OmZ1bmN0aW9uKGUpe2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImFwaV9lcnJvciI6IkNhblwndCBjb25uZWN0IHRvIENvaW5HZWNrbyBBUEkuIFBsZWFzZSB0cnkgYWdhaW4gbGF0ZXIuIiwicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkiLCJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiTWFya2V0IENhcCBSYW5rIiwibWNhcCI6Ik1hcmtldCBDYXAiLCIyNGhfdm9sdW1lIjoiMjRoIFZvbHVtZSIsIjI0aF9oaWdoX2xvdyI6IjI0aCBIaWdoL0xvdyJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0iLCJjcnlwdG9fcHJpY2VfY29tcGFyaXNvbiI6IkNyeXB0byBQcmljZSBDb21wYXJpc29uIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IkNyeXB0byBNYXJrZXQgQ2FwIENvbXBhcmlzb24ifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9jaGFydF93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNEggSGlnaCIsIjI0aF9sb3ciOiIyNEggTG93Iiwidmlld19wcmljZV9jaGFydCI6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIsInBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUG93ZXJlZCBieSAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0SCBIaWdoIiwiMjRoX2xvdyI6IjI0SCBMb3ciLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVmlldyAle2NvaW59IFByaWNlIENoYXJ0IiwicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZpZXcgJXtjb2lufSBQcmljZSBDaGFydCIsInBvd2VyZWRfYnkiOiJQb3dlcmVkIGJ5ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IkNyeXB0b2N1cnJlbmNpZXMgVHJlZSBNYXAiLCJzdWJ0aXRsZSI6IihUb3AgJXt0b3B9IGJ5IE1hcmtldCBDYXApIiwicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInByaWNlIjoiUHJpY2UiLCJtYXJrZXRfY2FwIjoiTWFya2V0IENhcCIsIjI0aF9jaGFuZ2UiOiIyNGggQ2hhbmdlIn0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJyYW5kb21fY29pbl9nZW5lcmF0b3IiOiJSYW5kb20gQ29pbiBHZW5lcmF0b3IiLCJjb2luc19mcm9tIjoiY29pbnMgZnJvbSIsImRpc2NsYWltZXIiOiJEaXNjbGFpbWVyOiBUaGlzIHRvb2wgaXMgY3JlYXRlZCBmb3IgZW50ZXJ0YWlubWVudCBwdXJwb3NlcyBhbmQgZG9lcyBub3QgY29uc3RpdHV0ZSBmaW5hbmNpYWwgYWR2aWNlLiIsInNwaW4iOiJTcGluIiwiYXZhaWxhYmxlX2NvaW5zIjoiQXZhaWxhYmxlIENvaW5zIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoiQ29pbkdlY2tvIFByaWNlIFVwZGF0ZSIsInRvdGFsX21jYXAiOiJUb3RhbCBNIGNhcCIsIjI0aF92b2wiOiIyNGggVm9sdW1lIiwiZG9tIjoiRG9tIn0sImNvaW5fbWFya2V0X3RpY2tlcl9saXN0X3dpZGdldCI6eyJleGNoYW5nZSI6IkV4Y2hhbmdlIiwicGFpciI6IlBhaXIiLCJwcmljZSI6IlByaWNlIiwidm9sdW1lIjoiVm9sdW1lIiwidHJ1c3Rfc2NvcmUiOiJUcnVzdCBTY29yZSIsInZpZXdfcHJpY2VfY2hhcnQiOiJWaWV3IFByaWNlIENoYXJ0IiwicG93ZXJlZF9ieSI6IlBvd2VyZWQgYnkgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiVmlldyBhbGwgJXtjb2lufSBtYXJrZXRzIn19Jyl9LGYxODQ6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6Is6azrHPhM6sz4TOsc6+zrcgzrrOtc+GzrHOu86xzrnOv8+Azr/Or863z4POt8+CIiwibWNhcCI6Is6azrXPhs6xzrvOsc65zr/PgM6/zq/Ot8+DzrciLCIyNGhfdm9sdW1lIjoizozOs866zr/PgiAyNCDPic+Bz47OvSIsIjI0aF9oaWdoX2xvdyI6Is6lz4jOt867z4zPgi/Op86xzrzOt867z4zPgiAyNCDPic+Bz47OvSJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLOoM6xz4HOrc+HzrXPhM6xzrkgzrHPgM+MOiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiLOo8+NzrPOus+BzrnPg863IM+EzrnOvM+Ozr0gzrrPgc+Fz4DPhM6/zr3Ov868zrnPg868zqzPhM+Jzr0iLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoizqPPjc6zzrrPgc65z4POtyDOus61z4bOsc67zrHOuc6/z4DOv86vzrfPg863z4IgzrrPgc+Fz4DPhM6/zr3Ov868zrnPg868zqzPhM+Jzr0ifSwiY29pbl9wcmljZV9zdGF0aWNfaGVhZGxpbmVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiLOoM6xz4HOrc+HzrXPhM6xzrkgzrHPgM+MOiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoizqXPiM63zrvPjM+CIDI0IM+Jz4HPjs69IiwiMjRoX2xvdyI6Is6nzrHOvM63zrvPjM+CIDI0IM+Jz4HPjs69Iiwidmlld19wcmljZV9jaGFydCI6Is6gz4HOv86yzr/Ou86uIM6zz4HOsc+Gzq7OvM6xz4TOv8+CIM+EzrnOvM+Ozr0gJXtjb2lufSIsInBvd2VyZWRfYnkiOiLOoM6xz4HOrc+HzrXPhM6xzrkgzrHPgM+MOiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6Is6gzrHPgc6tz4fOtc+EzrHOuSDOsc+Az4w6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9saXN0X3dpZGdldCI6eyJwb3dlcmVkX2J5IjoizqDOsc+Bzq3Ph861z4TOsc65IM6xz4DPjDogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoizqDOsc+Bzq3Ph861z4TOsc65IM6xz4DPjDogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiLOpc+IzrfOu8+Mz4IgMjQgz4nPgc+Ozr0iLCIyNGhfbG93IjoizqfOsc68zrfOu8+Mz4IgMjQgz4nPgc+Ozr0iLCJ2aWV3X3ByaWNlX2NoYXJ0IjoizqDPgc6/zrLOv867zq4gzrPPgc6xz4bOrs68zrHPhM6/z4Igz4TOuc68z47OvSAle2NvaW59IiwicG93ZXJlZF9ieSI6Is6gzrHPgc6tz4fOtc+EzrHOuSDOsc+Az4w6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiLOoM+Bzr/Oss6/zrvOriDOs8+BzrHPhs6uzrzOsc+Ezr/PgiDPhM65zrzPjs69ICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoizqDOsc+Bzq3Ph861z4TOsc65IM6xz4DPjDogJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2hlYXRtYXBfd2lkZ2V0Ijp7InRpdGxlIjoizpPPgc6sz4bOt868zrEgdHJlZW1hcCDOus+Bz4XPgM+Ezr/Ovc6/zrzOuc+DzrzOrM+Ez4nOvSIsInN1YnRpdGxlIjoiKM6azr/Pgc+Fz4bOsc6vzrEgJXt0b3B9IM66zrHPhM6sIM66zrXPhs6xzrvOsc65zr/PgM6/zq/Ot8+DzrcpIiwicG93ZXJlZF9ieSI6Is6gzrHPgc6tz4fOtc+EzrHOuSDOsc+Az4w6ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiLOkc+Azr/PgM6/zq/Ot8+DzrcgzrXPhc64z4XOvc+Ozr06IM6Rz4XPhM6sIM+EzrEgzrXPgc6zzrHOu861zq/OsSDPh8+BzrfPg865zrzOv8+Azr/Ouc6/z43Ovc+EzrHOuSDOs865zrEgzrvPjM6zzr/Phc+CIM+Iz4XPh86xzrPPic6zzq/Osc+CIM66zrHOuSDOtM61zr0gzrHPgM6/z4TOtc67zr/Pjc69IM+Hz4HOt868zrHPhM6/zr/Ouc66zr/Ovc6/zrzOuc66zq3PgiDPg8+FzrzOss6/z4XOu86tz4IuIiwic3BpbiI6IlNwaW4iLCJhdmFpbGFibGVfY29pbnMiOiLOlM65zrHOuM6tz4POuc68zrEgzr3Ov868zq/Pg868zrHPhM6xIn0sImNvaW5fZGFpbHlfcHJpY2Vfd2lkZ2V0Ijp7InRpdGxlIjoizpXOvc63zrzOrc+Bz4nPg863IM+EzrnOvM+Ozr0gzrHPgM+MIM+Ezr8gQ29pbkdlY2tvIiwidG90YWxfbWNhcCI6Is6jz4XOvc6/zrvOuc66zq4gzrrOtc+GzrHOu86xzrnOv8+Azr/Or863z4POtyIsIjI0aF92b2wiOiLOjM6zzrrOv8+CIM+EzrnPgiDPhM61zrvOtc+Fz4TOsc6vzrXPgiAyNCDPjs+BzrXPgiIsImRvbSI6Is6az4XPgc65zrHPgc+Hzq/OsSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiLOkc69z4TOsc67zrvOsc66z4TOrs+BzrnOvyIsInBhaXIiOiLOls61z43Os86/z4IiLCJwcmljZSI6Is6kzrnOvM6uIiwidm9sdW1lIjoizozOs866zr/PgiIsInRydXN0X3Njb3JlIjoiVHJ1c3QgU2NvcmUiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoizqDPgc6/zrLOv867zq4gzrPPgc6xz4bOrs68zrHPhM6/z4Igz4TOuc68z47OvSIsInBvd2VyZWRfYnkiOiLOoM6xz4HOrc+HzrXPhM6xzrkgzrHPgM+MOiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiLOoM+Bzr/Oss6/zrvOriDPjM67z4nOvSDPhM+Jzr0gzrHOs86/z4HPjs69ICV7Y29pbn0ifX0nKX0sZjM2NzpmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO3ZhciByPW4oImQ2YzciKSxpPSJmdW5jdGlvbiI9PT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09PXR5cGVvZiBTeW1ib2woImZvbyIpLGE9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxvPUFycmF5LnByb3RvdHlwZS5jb25jYXQsYz1PYmplY3QuZGVmaW5lUHJvcGVydHkscz1mdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT09dHlwZW9mIGUmJiJbb2JqZWN0IEZ1bmN0aW9uXSI9PT1hLmNhbGwoZSl9LHA9ZnVuY3Rpb24oKXt2YXIgZT17fTt0cnl7Zm9yKHZhciB0IGluIGMoZSwieCIse2VudW1lcmFibGU6ITEsdmFsdWU6ZX0pLGUpcmV0dXJuITE7cmV0dXJuIGUueD09PWV9Y2F0Y2gobil7cmV0dXJuITF9fSxsPWMmJnAoKSx1PWZ1bmN0aW9uKGUsdCxuLHIpeyghKHQgaW4gZSl8fHMocikmJnIoKSkmJihsP2MoZSx0LHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMSx2YWx1ZTpuLHdyaXRhYmxlOiEwfSk6ZVt0XT1uKX0sZD1mdW5jdGlvbihlLHQpe3ZhciBuPWFyZ3VtZW50cy5sZW5ndGg+Mj9hcmd1bWVudHNbMl06e30sYT1yKHQpO2kmJihhPW8uY2FsbChhLE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCkpKTtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrPTEpdShlLGFbY10sdFthW2NdXSxuW2FbY11dKX07ZC5zdXBwb3J0c0Rlc2NyaXB0b3JzPSEhbCxlLmV4cG9ydHM9ZH0sZjY5MzpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiQ2xhc3NlbWVudCIsIm1jYXAiOiJDYXBpdGFsaXNhdGlvbiBib3Vyc2nDqHJlIiwiMjRoX3ZvbHVtZSI6IlZvbHVtZSBzdXIgMjTCoGgiLCIyNGhfaGlnaF9sb3ciOiIyNEggSGF1dCAvIEJhcyJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiQ29tcGFyYWlzb24gQ291cnMgQ3J5cHRvbW9ubmFpZXMiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiQ29tcGFyYWlzb24gQ2FwaXRhbGlzYXRpb25zIENyeXB0byJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IlByb3Bvc8OpIHBhciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTGUgcGx1cyDDqWxldsOpIHN1ciAyNMKgaCIsIjI0aF9sb3ciOiJMZSBwbHVzIGJhcyBzdXIgMjTCoGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVm9pciBsZSBHcmFwaGlxdWUgZGUgQ291cnMgZGUgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3ByaWNlX21hcnF1ZWVfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJiZWFtX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiUHJvcG9zw6kgcGFyICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl90aWNrZXJfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiTGUgcGx1cyDDqWxldsOpIHN1ciAyNMKgaCIsIjI0aF9sb3ciOiJMZSBwbHVzIGJhcyBzdXIgMjTCoGgiLCJ2aWV3X3ByaWNlX2NoYXJ0IjoiVm9pciBsZSBHcmFwaGlxdWUgZGUgQ291cnMgZGUgJXtjb2lufSIsInBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX2NvbnZlcnRlcl93aWRnZXQiOnsidmlld19wcmljZV9jaGFydCI6IlZvaXIgbGUgR3JhcGhpcXVlIGRlIENvdXJzIGRlICV7Y29pbn0iLCJwb3dlcmVkX2J5IjoiUHJvcG9zw6kgcGFyICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IkRpYWdyYW1tZSBkZXMgY3J5cHRvLW1vbm5haWVzIiwic3VidGl0bGUiOiIoVG9wICV7dG9wfSBwYXIgQ2FwaXRhbGlzYXRpb24pIiwicG93ZXJlZF9ieSI6IlByb3Bvc8OpIHBhciAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sInJhbmRvbV9jb2luX3dpZGdldCI6eyJkaXNjbGFpbWVyIjoiQXZlcnRpc3NlbWVudCA6IENlcyBvdXRpbHMgc2VydmVudCBkZSBkaXZlcnRpc3NlbWVudCBldCBuZSBjb25zdGl0dWVudCBwYXMgZGVzIGNvbnNlaWxzIGZpbmFuY2llcnMuIiwic3BpbiI6IlRvdXJuZXIiLCJhdmFpbGFibGVfY29pbnMiOiJNb25uYWllcyBEaXNwb25pYmxlcyJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6Ik1pc2Ugw6AgSm91ciBDb3VycyBDb2luR2Vja28iLCJ0b3RhbF9tY2FwIjoiVG90YWwgQ2FwaXRhbGlzYXRpb24iLCIyNGhfdm9sIjoiVm9sdW1lIHN1ciAyNMKgaCIsImRvbSI6IkRvbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJQbGF0ZS1mb3JtZSBkXCfDqWNoYW5nZSIsInBhaXIiOiJQYWlyZSIsInByaWNlIjoiQ291cnMiLCJ2b2x1bWUiOiJWb2x1bWUiLCJ0cnVzdF9zY29yZSI6IlNjb3JlIGRlIGNvbmZpYW5jZSIsInZpZXdfcHJpY2VfY2hhcnQiOiJWb2lyIEdyYXBoaXF1ZSBDb3VycyIsInBvd2VyZWRfYnkiOiJQcm9wb3PDqSBwYXIgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsInZpZXdfYWxsIjoiVm9pciB0b3VzIGxlcyBtYXJjaMOpcyAle2NvaW59In19Jyl9LGY3NzI6ZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIm9iamVjdCI9PT10eXBlb2YgZT9udWxsIT09ZToiZnVuY3Rpb24iPT09dHlwZW9mIGV9fSxmOTIxOmZ1bmN0aW9uKGUsdCxuKXtuKCIwMTRiIiksbigiYzIwNyIpLG4oIjY5ZDMiKSxuKCI3NjVkIiksZS5leHBvcnRzPW4oIjU4NGEiKS5TeW1ib2x9LGY5NDc6ZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29pbl9kZXRhaWxzIjp7Im1jYXBfcmFuayI6IlJhbmdlcmluZyBldHRlciBtYXJrZWRzdmVyZGkiLCJtY2FwIjoiTWFya2Vkc3ZlcmRpIiwiMjRoX3ZvbHVtZSI6IjI0LXRpbWVycyBWb2x1bSIsIjI0aF9oaWdoX2xvdyI6IjI0LXRpbWVycyBIw7h5L0xhdiJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcmV2ZXQgYXYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSIsImNyeXB0b19wcmljZV9jb21wYXJpc29uIjoiS3J5cHRvcHJpcyBzYW1tZW5saWduaW5nIiwiY3J5cHRvX21hcmtldF9jYXBfY29tcGFyaXNvbiI6IktyeXB0byBtYXJrZWRzdmVyZGkgc2FtbWVubGlnbmluZyJ9LCJjb2luX3ByaWNlX3N0YXRpY19oZWFkbGluZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfY2hhcnRfd2lkZ2V0Ijp7IjI0aF9oaWdoIjoiMjQtdGltZXJzIGjDuHkiLCIyNGhfbG93IjoiMjQtdGltZXJzIGxhdiIsInZpZXdfcHJpY2VfY2hhcnQiOiJTZSAle2NvaW59IHByaXNkaWFncmFtIiwicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fcHJpY2VfbWFycXVlZV93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5fbGlzdF93aWRnZXQiOnsicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiJEcmV2ZXQgYXYgJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSJ9LCJjb2luX3RpY2tlcl93aWRnZXQiOnsiMjRoX2hpZ2giOiIyNC10aW1lcnMgaMO4eSIsIjI0aF9sb3ciOiIyNC10aW1lcnMgbGF2Iiwidmlld19wcmljZV9jaGFydCI6IlNlICV7Y29pbn0gcHJpc2RpYWdyYW0iLCJwb3dlcmVkX2J5IjoiRHJldmV0IGF2ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiJTZSAle2NvaW59IHByaXNkaWFncmFtIiwicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9In0sImNvaW5faGVhdG1hcF93aWRnZXQiOnsidGl0bGUiOiJUcmVkaWFncmFtIGZvciBrcnlwdG92YWx1dGFlciIsInN1YnRpdGxlIjoiKFRvcHAgJXt0b3B9IGV0dGVyIG1hcmtlZHN2ZXJkaSkiLCJwb3dlcmVkX2J5IjoiRHJldmV0IGF2ICV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0ifSwicmFuZG9tX2NvaW5fd2lkZ2V0Ijp7ImRpc2NsYWltZXIiOiJBbnN2YXJzZnJhc2tyaXZlbHNlOiBEZXR0ZSBlciB2ZXJrdMO4eSBzb20gdW5kZXJob2xkbmluZyBvZyB1dGdqw7hyIGlra2Ugw7hrb25vbWlza2UgcsOlZC4iLCJzcGluIjoiU251cnIiLCJhdmFpbGFibGVfY29pbnMiOiJUaWxnamVuZ2VsaWdlIG15bnRlciJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyBwcmlzb3BwZGF0ZXJpbmciLCJ0b3RhbF9tY2FwIjoiVG90YWwgTSBNYXJrZWRzdmVyZGkiLCIyNGhfdm9sIjoiMjR0IG9tc2V0bmluZyIsImRvbSI6IkRvbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJCw7hycyIsInBhaXIiOiJQYXIiLCJwcmljZSI6Ikt1cnMiLCJ2b2x1bWUiOiJPbXNldG5pbmciLCJ0cnVzdF9zY29yZSI6IlRydXN0LXBvZW5nc3VtIiwidmlld19wcmljZV9jaGFydCI6IlNlIHByaXNkaWFncmFtIiwicG93ZXJlZF9ieSI6IkRyZXZldCBhdiAle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9Iiwidmlld19hbGwiOiJWaXMgYWxsZSAle2NvaW59IG1hcmtlZGVyIn19Jyl9LGZhNGU6ZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj0hMSxpPWZ1bmN0aW9uKCl7fTtpZihyKXt2YXIgYT1mdW5jdGlvbihlLHQpe3ZhciBuPWFyZ3VtZW50cy5sZW5ndGg7dD1uZXcgQXJyYXkobj4xP24tMTowKTtmb3IodmFyIHI9MTtyPG47cisrKXRbci0xXT1hcmd1bWVudHNbcl07dmFyIGk9MCxhPSJXYXJuaW5nOiAiK2UucmVwbGFjZSgvJXMvZywoZnVuY3Rpb24oKXtyZXR1cm4gdFtpKytdfSkpOyJ1bmRlZmluZWQiIT09dHlwZW9mIGNvbnNvbGUmJmNvbnNvbGUuZXJyb3IoYSk7dHJ5e3Rocm93IG5ldyBFcnJvcihhKX1jYXRjaChvKXt9fTtpPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1hcmd1bWVudHMubGVuZ3RoO249bmV3IEFycmF5KHI+Mj9yLTI6MCk7Zm9yKHZhciBpPTI7aTxyO2krKyluW2ktMl09YXJndW1lbnRzW2ldO2lmKHZvaWQgMD09PXQpdGhyb3cgbmV3IEVycm9yKCJgd2FybmluZyhjb25kaXRpb24sIGZvcm1hdCwgLi4uYXJncylgIHJlcXVpcmVzIGEgd2FybmluZyBtZXNzYWdlIGFyZ3VtZW50Iik7ZXx8YS5hcHBseShudWxsLFt0XS5jb25jYXQobikpfX1lLmV4cG9ydHM9aX0sZmE1YjpmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPW4oIjU1MzciKSgibmF0aXZlLWZ1bmN0aW9uLXRvLXN0cmluZyIsRnVuY3Rpb24udG9TdHJpbmcpfSxmYWIyOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKCI3NzI2IikuZG9jdW1lbnQ7ZS5leHBvcnRzPXImJnIuZG9jdW1lbnRFbGVtZW50fSxmZGVmOmZ1bmN0aW9uKGUsdCl7ZS5leHBvcnRzPSJcdFxuXHZcZlxyIMKg4ZqA4aCO4oCA4oCB4oCC4oCD4oCE4oCF4oCG4oCH4oCI4oCJ4oCK4oCv4oGf44CAXHUyMDI4XHUyMDI5XHVmZWZmIn0sZmZlYjpmdW5jdGlvbihlKXtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2luX2RldGFpbHMiOnsibWNhcF9yYW5rIjoiUGl5YXNhIERlxJ9lcmkgU8SxcmFsYW1hc8SxIiwibWNhcCI6IlBpeWFzYSBEZcSfZXJpIiwiMjRoX3ZvbHVtZSI6IjI0IFNhYXRsaWsgSGFjaW0iLCIyNGhfaGlnaF9sb3ciOiIyNFNBIFnDvGtzZWsgLyBEw7zFn8O8ayJ9LCJjb2luX2NvbXBhcmVfY2hhcnRfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IHRhcmFmxLFuZGFuIGRlc3Rla2xlbm1la3RlZGlyIiwiY3J5cHRvX3ByaWNlX2NvbXBhcmlzb24iOiJLcmlwdG8gRml5YXQgS2FyxZ/EsWxhxZ90xLFybWFzxLEiLCJjcnlwdG9fbWFya2V0X2NhcF9jb21wYXJpc29uIjoiS3JpcHRvIFBpeWFzYSBEZcSfZXJpIEthcsWfxLFsYcWfdMSxcm1hc8SxIn0sImNvaW5fcHJpY2Vfc3RhdGljX2hlYWRsaW5lX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5tZWt0ZWRpciJ9LCJjb2luX3ByaWNlX2NoYXJ0X3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0UyBZw7xrc2VrIiwiMjRoX2xvdyI6IjI0UyBEw7zFn8O8ayIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IEZpeWF0IEdyYWZpxJ9pbmkgR8O2csO8bnTDvGxlIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gdGFyYWbEsW5kYW4gZGVzdGVrbGVubWVrdGVkaXIifSwiY29pbl9wcmljZV9tYXJxdWVlX3dpZGdldCI6eyJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5tZWt0ZWRpciJ9LCJjb2luX2xpc3Rfd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IHRhcmFmxLFuZGFuIGRlc3Rla2xlbm1la3RlZGlyIn0sImJlYW1fd2lkZ2V0Ijp7InBvd2VyZWRfYnkiOiIle25hbWVfc3RhcnR9JXtuYW1lfSV7bmFtZV9lbmR9IHRhcmFmxLFuZGFuIGRlc3Rla2xlbm1la3RlZGlyIn0sImNvaW5fdGlja2VyX3dpZGdldCI6eyIyNGhfaGlnaCI6IjI0UyBZw7xrc2VrIiwiMjRoX2xvdyI6IjI0UyBEw7zFn8O8ayIsInZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IEZpeWF0IEdyYWZpxJ9pbmkgR8O2csO8bnTDvGxlIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gdGFyYWbEsW5kYW4gZGVzdGVrbGVubWVrdGVkaXIifSwiY29pbl9jb252ZXJ0ZXJfd2lkZ2V0Ijp7InZpZXdfcHJpY2VfY2hhcnQiOiIle2NvaW59IEZpeWF0IEdyYWZpxJ9pbmkgR8O2csO8bnTDvGxlIiwicG93ZXJlZF9ieSI6IiV7bmFtZV9zdGFydH0le25hbWV9JXtuYW1lX2VuZH0gdGFyYWbEsW5kYW4gZGVzdGVrbGVubWVrdGVkaXIifSwiY29pbl9oZWF0bWFwX3dpZGdldCI6eyJ0aXRsZSI6IktyaXB0byBQYXJhIEHEn2FjxLEgSGFyaXRhc8SxIiwic3VidGl0bGUiOiIoUGl5YXNhIERlxJ9lcmluZSBHw7ZyZSBFbiDEsHlpICV7dG9wfSkiLCJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5tZWt0ZWRpciJ9LCJyYW5kb21fY29pbl93aWRnZXQiOnsiZGlzY2xhaW1lciI6IlNvcnVtbHVsdWsgUmVkZGk6IEJ1IGFyYcOnbGFyIGXEn2xlbmNlIGFtYcOnbMSxZMSxciB2ZSBmaW5hbnNhbCB0YXZzaXllIHRlxZ9raWwgZXRtZXouIiwic3BpbiI6IkTDtm5kw7xyIiwiYXZhaWxhYmxlX2NvaW5zIjoiTWV2Y3V0IENvaW5cJ2xlciJ9LCJjb2luX2RhaWx5X3ByaWNlX3dpZGdldCI6eyJ0aXRsZSI6IkNvaW5HZWNrbyBGaXlhdCBHw7xuY2VsbGVtZXNpIiwidG90YWxfbWNhcCI6IlRvcGxhbSBQIGRlxJ9lcmkiLCIyNGhfdm9sIjoiMjQgU2FhdGxpayBIYWNpbSIsImRvbSI6IkhrbSJ9LCJjb2luX21hcmtldF90aWNrZXJfbGlzdF93aWRnZXQiOnsiZXhjaGFuZ2UiOiJCb3JzYSIsInBhaXIiOiLDh2lmdCIsInByaWNlIjoiRml5YXQiLCJ2b2x1bWUiOiJIYWNpbSIsInRydXN0X3Njb3JlIjoiR8O8dmVuIFB1YW7EsSIsInZpZXdfcHJpY2VfY2hhcnQiOiIgRml5YXQgR3JhZmnEn2luaSBHw7Zyw7xudMO8bGUiLCJwb3dlcmVkX2J5IjoiJXtuYW1lX3N0YXJ0fSV7bmFtZX0le25hbWVfZW5kfSB0YXJhZsSxbmRhbiBkZXN0ZWtsZW5tZWt0ZWRpciIsInZpZXdfYWxsIjoiVMO8bSAle2NvaW59IHBpeWFzYWxhcsSxbsSxIGfDtnLDvG50w7xsZSJ9fScpfX0pOw=="}},"time_used":47,"timings":{"blocked":-1,"dns":5,"connect":22,"send":0,"wait":18,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/new/expertise2.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.340Z","timestamp":1785143908340,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/new/expertise2.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.googleapis.com/css?family=Open+Sans:300,400,600,700,900|Playfair+Display:400,700|Poppins:300,400,500,600,700|Lato:300,400,700|Montserrat:400,500|Lora:400,400i","fqdn":"fonts.googleapis.com","domain":"fonts.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.74","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:42.979Z","timestamp":1785143922979,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"upload.video.google.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:27 GMT","end":"Mon, 21 Sep 2026 08:39:26 GMT"},"fingerprint":{"sha1":"50:37:CF:61:33:A1:EE:47:D9:3D:A6:5E:07:BA:4C:FF:F7:25:9F:76","sha256":"7D:4D:21:06:63:E2:5E:F0:8C:59:8E:EB:B7:94:2B:81:70:11:D3:F4:C0:A0:81:A6:1B:E7:27:FD:56:10:1A:11"}}},"request":{"raw":"GET /css?family=Open+Sans:300,400,600,700,900|Playfair+Display:400,700|Poppins:300,400,500,600,700|Lato:300,400,700|Montserrat:400,500|Lora:400,400i HTTP/1.1\r\nHost: fonts.googleapis.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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.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":"HTTP/2 200 \r\ncontent-type: text/css; charset=utf-8\r\nvary: Sec-Fetch-Dest, Sec-Fetch-Mode, Sec-Fetch-Site\r\naccess-control-allow-origin: *\r\ntiming-allow-origin: *\r\nlink: \u003chttps://fonts.gstatic.com\u003e; rel=preconnect; crossorigin\r\nstrict-transport-security: max-age=31536000\r\nexpires: Mon, 27 Jul 2026 09:18:43 GMT\r\ndate: Mon, 27 Jul 2026 09:18:43 GMT\r\ncache-control: private, max-age=86400\r\ncross-origin-opener-policy: same-origin-allow-popups\r\ncross-origin-resource-policy: cross-origin\r\ncontent-encoding: gzip\r\nserver: ESF\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\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":47136,"size_decoded":3405,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1572)","md5":"c898c9d57e4f08157a911db0606bb0f2","sha1":"6bbbcf90507553b185426e25b228d22a7e1b2aa6","sha256":"afe7789fb7c69f6b343fb5e8ed3700126165a2cc60c4720f2c28dbf9ef2204b0","sha512":"2007894c365921b3bf0adac091c39af3914ea708c402fecb0802591272b77f73b5959adbaddf1603177286f3a89aad517cffa6fe59351d8504d0940dc74997b2","ssdeep":"768:zYxLT0WNNt6EosL3JbcAaYwV0lOabwm02I:qfPV790","tlshash":"492340a10427a40067831cd223ce7e35ee0fa2557044d035abfe5b9aeedbd6663b532d","first_seen":"2025-10-06T17:20:26.9454Z","last_seen":"2026-07-27T14:11:25.387229Z","times_seen":24,"resource_available":false,"data":"LyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTGF0byc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiAzMDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjI1L1M2dTl3NEJNVVRQSGg3VVNTd2FQR1JfcC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTGF0byc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiAzMDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjI1L1M2dTl3NEJNVVRQSGg3VVNTd2lQR1Eud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdMYXRvJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MjUvUzZ1eXc0Qk1VVFBIanhBd1hqZXUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ0xhdG8nOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YyNS9TNnV5dzRCTVVUUEhqeDR3WGcud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdMYXRvJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MjUvUzZ1OXc0Qk1VVFBIaDZVVlN3YVBHUl9wLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdMYXRvJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MjUvUzZ1OXc0Qk1VVFBIaDZVVlN3aVBHUS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGN5cmlsbGljLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ0xvcmEnOwogIGZvbnQtc3R5bGU6IGl0YWxpYzsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sb3JhL3YzNy8wUUk4TVgxRF9KT3VNd19oTGRPNlQyd1Y5S25XLU1vRm9xSjJuT2VaLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswNDYwLTA1MkYsIFUrMUM4MC0xQzhBLCBVKzIwQjQsIFUrMkRFMC0yREZGLCBVK0E2NDAtQTY5RiwgVStGRTJFLUZFMkY7Cn0KLyogY3lyaWxsaWMgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdMb3JhJzsKICBmb250LXN0eWxlOiBpdGFsaWM7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbG9yYS92MzcvMFFJOE1YMURfSk91TXdfaExkTzZUMndWOUtuVy1Nb0ZvcXQybk9lWi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDMwMSwgVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2Owp9Ci8qIG1hdGggKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdMb3JhJzsKICBmb250LXN0eWxlOiBpdGFsaWM7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbG9yYS92MzcvMFFJOE1YMURfSk91TXdfaExkTzZUMndWOUtuVy1Nb0ZvdE4ybk9lWi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDMwMi0wMzAzLCBVKzAzMDUsIFUrMDMwNy0wMzA4LCBVKzAzMTAsIFUrMDMxMiwgVSswMzE1LCBVKzAzMUEsIFUrMDMyNi0wMzI3LCBVKzAzMkMsIFUrMDMyRi0wMzMwLCBVKzAzMzItMDMzMywgVSswMzM4LCBVKzAzM0EsIFUrMDM0NiwgVSswMzRELCBVKzAzOTEtMDNBMSwgVSswM0EzLTAzQTksIFUrMDNCMS0wM0M5LCBVKzAzRDEsIFUrMDNENS0wM0Q2LCBVKzAzRjAtMDNGMSwgVSswM0Y0LTAzRjUsIFUrMjAxNi0yMDE3LCBVKzIwMzQtMjAzOCwgVSsyMDNDLCBVKzIwNDAsIFUrMjA0MywgVSsyMDQ3LCBVKzIwNTAsIFUrMjA1NywgVSsyMDVGLCBVKzIwNzAtMjA3MSwgVSsyMDc0LTIwOEUsIFUrMjA5MC0yMDlDLCBVKzIwRDAtMjBEQywgVSsyMEUxLCBVKzIwRTUtMjBFRiwgVSsyMTAwLTIxMTIsIFUrMjExNC0yMTE1LCBVKzIxMTctMjEyMSwgVSsyMTIzLTIxNEYsIFUrMjE5MCwgVSsyMTkyLCBVKzIxOTQtMjFBRSwgVSsyMUIwLTIxRTUsIFUrMjFGMS0yMUYyLCBVKzIxRjQtMjIxMSwgVSsyMjEzLTIyMTQsIFUrMjIxNi0yMkZGLCBVKzIzMDgtMjMwQiwgVSsyMzEwLCBVKzIzMTksIFUrMjMxQy0yMzIxLCBVKzIzMzYtMjM3QSwgVSsyMzdDLCBVKzIzOTUsIFUrMjM5Qi0yM0I3LCBVKzIzRDAsIFUrMjNEQy0yM0UxLCBVKzI0NzQtMjQ3NSwgVSsyNUFGLCBVKzI1QjMsIFUrMjVCNywgVSsyNUJELCBVKzI1QzEsIFUrMjVDQSwgVSsyNUNDLCBVKzI1RkIsIFUrMjY2RC0yNjZGLCBVKzI3QzAtMjdGRiwgVSsyOTAwLTJBRkYsIFUrMkIwRS0yQjExLCBVKzJCMzAtMkI0QywgVSsyQkZFLCBVKzMwMzAsIFUrRkY1QiwgVStGRjVELCBVKzFENDAwLTFEN0ZGLCBVKzFFRTAwLTFFRUZGOwp9Ci8qIHN5bWJvbHMgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdMb3JhJzsKICBmb250LXN0eWxlOiBpdGFsaWM7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbG9yYS92MzcvMFFJOE1YMURfSk91TXdfaExkTzZUMndWOUtuVy1Nb0Zvc0Yybk9lWi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMS0wMDBDLCBVKzAwMEUtMDAxRiwgVSswMDdGLTAwOUYsIFUrMjBERC0yMEUwLCBVKzIwRTItMjBFNCwgVSsyMTUwLTIxOEYsIFUrMjE5MCwgVSsyMTkyLCBVKzIxOTQtMjE5OSwgVSsyMUFGLCBVKzIxRTYtMjFGMCwgVSsyMUYzLCBVKzIyMTgtMjIxOSwgVSsyMjk5LCBVKzIyQzQtMjJDNiwgVSsyMzAwLTI0M0YsIFUrMjQ0MC0yNDRBLCBVKzI0NjAtMjRGRiwgVSsyNUEwLTI3QkYsIFUrMjgwMC0yOEZGLCBVKzI5MjEtMjkyMiwgVSsyOTgxLCBVKzI5QkYsIFUrMjlFQiwgVSsyQjAwLTJCRkYsIFUrNERDMC00REZGLCBVK0ZGRjktRkZGQiwgVSsxMDE0MC0xMDE4RSwgVSsxMDE5MC0xMDE5QywgVSsxMDFBMCwgVSsxMDFEMC0xMDFGRCwgVSsxMDJFMC0xMDJGQiwgVSsxMEU2MC0xMEU3RSwgVSsxRDJDMC0xRDJEMywgVSsxRDJFMC0xRDM3RiwgVSsxRjAwMC0xRjBGRiwgVSsxRjEwMC0xRjFBRCwgVSsxRjFFNi0xRjFGRiwgVSsxRjMwRC0xRjMwRiwgVSsxRjMxNSwgVSsxRjMxQywgVSsxRjMxRSwgVSsxRjMyMC0xRjMyQywgVSsxRjMzNiwgVSsxRjM3OCwgVSsxRjM3RCwgVSsxRjM4MiwgVSsxRjM5My0xRjM5RiwgVSsxRjNBNy0xRjNBOCwgVSsxRjNBQy0xRjNBRiwgVSsxRjNDMiwgVSsxRjNDNC0xRjNDNiwgVSsxRjNDQS0xRjNDRSwgVSsxRjNENC0xRjNFMCwgVSsxRjNFRCwgVSsxRjNGMS0xRjNGMywgVSsxRjNGNS0xRjNGNywgVSsxRjQwOCwgVSsxRjQxNSwgVSsxRjQxRiwgVSsxRjQyNiwgVSsxRjQzRiwgVSsxRjQ0MS0xRjQ0MiwgVSsxRjQ0NCwgVSsxRjQ0Ni0xRjQ0OSwgVSsxRjQ0Qy0xRjQ0RSwgVSsxRjQ1MywgVSsxRjQ2QSwgVSsxRjQ3RCwgVSsxRjRBMywgVSsxRjRCMCwgVSsxRjRCMywgVSsxRjRCOSwgVSsxRjRCQiwgVSsxRjRCRiwgVSsxRjRDOC0xRjRDQiwgVSsxRjRENiwgVSsxRjREQSwgVSsxRjRERiwgVSsxRjRFMy0xRjRFNiwgVSsxRjRFQS0xRjRFRCwgVSsxRjRGNywgVSsxRjRGOS0xRjRGQiwgVSsxRjRGRC0xRjRGRSwgVSsxRjUwMywgVSsxRjUwNy0xRjUwQiwgVSsxRjUwRCwgVSsxRjUxMi0xRjUxMywgVSsxRjUzRS0xRjU0QSwgVSsxRjU0Ri0xRjVGQSwgVSsxRjYxMCwgVSsxRjY1MC0xRjY3RiwgVSsxRjY4NywgVSsxRjY4RCwgVSsxRjY5MSwgVSsxRjY5NCwgVSsxRjY5OCwgVSsxRjZBRCwgVSsxRjZCMiwgVSsxRjZCOS0xRjZCQSwgVSsxRjZCQywgVSsxRjZDNi0xRjZDRiwgVSsxRjZEMy0xRjZENywgVSsxRjZFMC0xRjZFQSwgVSsxRjZGMC0xRjZGMywgVSsxRjZGNy0xRjZGQywgVSsxRjcwMC0xRjdGRiwgVSsxRjgwMC0xRjgwQiwgVSsxRjgxMC0xRjg0NywgVSsxRjg1MC0xRjg1OSwgVSsxRjg2MC0xRjg4NywgVSsxRjg5MC0xRjhBRCwgVSsxRjhCMC0xRjhCQiwgVSsxRjhDMC0xRjhDMSwgVSsxRjkwMC0xRjkwQiwgVSsxRjkzQiwgVSsxRjk0NiwgVSsxRjk4NCwgVSsxRjk5NiwgVSsxRjlFOSwgVSsxRkEwMC0xRkE2RiwgVSsxRkE3MC0xRkE3QywgVSsxRkE4MC0xRkE4OSwgVSsxRkE4Ri0xRkFDNiwgVSsxRkFDRS0xRkFEQywgVSsxRkFERi0xRkFFOSwgVSsxRkFGMC0xRkFGOCwgVSsxRkIwMC0xRkJGRjsKfQovKiB2aWV0bmFtZXNlICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTG9yYSc7CiAgZm9udC1zdHlsZTogaXRhbGljOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xvcmEvdjM3LzBRSThNWDFEX0pPdU13X2hMZE82VDJ3VjlLblctTW9Gb3FCMm5PZVoud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMDEyOC0wMTI5LCBVKzAxNjgtMDE2OSwgVSswMUEwLTAxQTEsIFUrMDFBRi0wMUIwLCBVKzAzMDAtMDMwMSwgVSswMzAzLTAzMDQsIFUrMDMwOC0wMzA5LCBVKzAzMjMsIFUrMDMyOSwgVSsxRUEwLTFFRjksIFUrMjBBQjsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdMb3JhJzsKICBmb250LXN0eWxlOiBpdGFsaWM7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbG9yYS92MzcvMFFJOE1YMURfSk91TXdfaExkTzZUMndWOUtuVy1Nb0ZvcUYybk9lWi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTG9yYSc7CiAgZm9udC1zdHlsZTogaXRhbGljOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xvcmEvdjM3LzBRSThNWDFEX0pPdU13X2hMZE82VDJ3VjlLblctTW9Gb3E5Mm5BLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0KLyogY3lyaWxsaWMtZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTG9yYSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xvcmEvdjM3LzBRSTZNWDFEX0pPdUdRYlQwZ3ZUSlBhNzg3d2V1eEpNa3ExdW1BLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswNDYwLTA1MkYsIFUrMUM4MC0xQzhBLCBVKzIwQjQsIFUrMkRFMC0yREZGLCBVK0E2NDAtQTY5RiwgVStGRTJFLUZFMkY7Cn0KLyogY3lyaWxsaWMgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdMb3JhJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbG9yYS92MzcvMFFJNk1YMURfSk91R1FiVDBndlRKUGE3ODd3ZXV4SkZrcTF1bUEud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAzMDEsIFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjsKfQovKiBtYXRoICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTG9yYSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xvcmEvdjM3LzBRSTZNWDFEX0pPdUdRYlQwZ3ZUSlBhNzg3d2V1eEk5a3ExdW1BLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAyLTAzMDMsIFUrMDMwNSwgVSswMzA3LTAzMDgsIFUrMDMxMCwgVSswMzEyLCBVKzAzMTUsIFUrMDMxQSwgVSswMzI2LTAzMjcsIFUrMDMyQywgVSswMzJGLTAzMzAsIFUrMDMzMi0wMzMzLCBVKzAzMzgsIFUrMDMzQSwgVSswMzQ2LCBVKzAzNEQsIFUrMDM5MS0wM0ExLCBVKzAzQTMtMDNBOSwgVSswM0IxLTAzQzksIFUrMDNEMSwgVSswM0Q1LTAzRDYsIFUrMDNGMC0wM0YxLCBVKzAzRjQtMDNGNSwgVSsyMDE2LTIwMTcsIFUrMjAzNC0yMDM4LCBVKzIwM0MsIFUrMjA0MCwgVSsyMDQzLCBVKzIwNDcsIFUrMjA1MCwgVSsyMDU3LCBVKzIwNUYsIFUrMjA3MC0yMDcxLCBVKzIwNzQtMjA4RSwgVSsyMDkwLTIwOUMsIFUrMjBEMC0yMERDLCBVKzIwRTEsIFUrMjBFNS0yMEVGLCBVKzIxMDAtMjExMiwgVSsyMTE0LTIxMTUsIFUrMjExNy0yMTIxLCBVKzIxMjMtMjE0RiwgVSsyMTkwLCBVKzIxOTIsIFUrMjE5NC0yMUFFLCBVKzIxQjAtMjFFNSwgVSsyMUYxLTIxRjIsIFUrMjFGNC0yMjExLCBVKzIyMTMtMjIxNCwgVSsyMjE2LTIyRkYsIFUrMjMwOC0yMzBCLCBVKzIzMTAsIFUrMjMxOSwgVSsyMzFDLTIzMjEsIFUrMjMzNi0yMzdBLCBVKzIzN0MsIFUrMjM5NSwgVSsyMzlCLTIzQjcsIFUrMjNEMCwgVSsyM0RDLTIzRTEsIFUrMjQ3NC0yNDc1LCBVKzI1QUYsIFUrMjVCMywgVSsyNUI3LCBVKzI1QkQsIFUrMjVDMSwgVSsyNUNBLCBVKzI1Q0MsIFUrMjVGQiwgVSsyNjZELTI2NkYsIFUrMjdDMC0yN0ZGLCBVKzI5MDAtMkFGRiwgVSsyQjBFLTJCMTEsIFUrMkIzMC0yQjRDLCBVKzJCRkUsIFUrMzAzMCwgVStGRjVCLCBVK0ZGNUQsIFUrMUQ0MDAtMUQ3RkYsIFUrMUVFMDAtMUVFRkY7Cn0KLyogc3ltYm9scyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ0xvcmEnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sb3JhL3YzNy8wUUk2TVgxRF9KT3VHUWJUMGd2VEpQYTc4N3dldXhJdmtxMXVtQS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMS0wMDBDLCBVKzAwMEUtMDAxRiwgVSswMDdGLTAwOUYsIFUrMjBERC0yMEUwLCBVKzIwRTItMjBFNCwgVSsyMTUwLTIxOEYsIFUrMjE5MCwgVSsyMTkyLCBVKzIxOTQtMjE5OSwgVSsyMUFGLCBVKzIxRTYtMjFGMCwgVSsyMUYzLCBVKzIyMTgtMjIxOSwgVSsyMjk5LCBVKzIyQzQtMjJDNiwgVSsyMzAwLTI0M0YsIFUrMjQ0MC0yNDRBLCBVKzI0NjAtMjRGRiwgVSsyNUEwLTI3QkYsIFUrMjgwMC0yOEZGLCBVKzI5MjEtMjkyMiwgVSsyOTgxLCBVKzI5QkYsIFUrMjlFQiwgVSsyQjAwLTJCRkYsIFUrNERDMC00REZGLCBVK0ZGRjktRkZGQiwgVSsxMDE0MC0xMDE4RSwgVSsxMDE5MC0xMDE5QywgVSsxMDFBMCwgVSsxMDFEMC0xMDFGRCwgVSsxMDJFMC0xMDJGQiwgVSsxMEU2MC0xMEU3RSwgVSsxRDJDMC0xRDJEMywgVSsxRDJFMC0xRDM3RiwgVSsxRjAwMC0xRjBGRiwgVSsxRjEwMC0xRjFBRCwgVSsxRjFFNi0xRjFGRiwgVSsxRjMwRC0xRjMwRiwgVSsxRjMxNSwgVSsxRjMxQywgVSsxRjMxRSwgVSsxRjMyMC0xRjMyQywgVSsxRjMzNiwgVSsxRjM3OCwgVSsxRjM3RCwgVSsxRjM4MiwgVSsxRjM5My0xRjM5RiwgVSsxRjNBNy0xRjNBOCwgVSsxRjNBQy0xRjNBRiwgVSsxRjNDMiwgVSsxRjNDNC0xRjNDNiwgVSsxRjNDQS0xRjNDRSwgVSsxRjNENC0xRjNFMCwgVSsxRjNFRCwgVSsxRjNGMS0xRjNGMywgVSsxRjNGNS0xRjNGNywgVSsxRjQwOCwgVSsxRjQxNSwgVSsxRjQxRiwgVSsxRjQyNiwgVSsxRjQzRiwgVSsxRjQ0MS0xRjQ0MiwgVSsxRjQ0NCwgVSsxRjQ0Ni0xRjQ0OSwgVSsxRjQ0Qy0xRjQ0RSwgVSsxRjQ1MywgVSsxRjQ2QSwgVSsxRjQ3RCwgVSsxRjRBMywgVSsxRjRCMCwgVSsxRjRCMywgVSsxRjRCOSwgVSsxRjRCQiwgVSsxRjRCRiwgVSsxRjRDOC0xRjRDQiwgVSsxRjRENiwgVSsxRjREQSwgVSsxRjRERiwgVSsxRjRFMy0xRjRFNiwgVSsxRjRFQS0xRjRFRCwgVSsxRjRGNywgVSsxRjRGOS0xRjRGQiwgVSsxRjRGRC0xRjRGRSwgVSsxRjUwMywgVSsxRjUwNy0xRjUwQiwgVSsxRjUwRCwgVSsxRjUxMi0xRjUxMywgVSsxRjUzRS0xRjU0QSwgVSsxRjU0Ri0xRjVGQSwgVSsxRjYxMCwgVSsxRjY1MC0xRjY3RiwgVSsxRjY4NywgVSsxRjY4RCwgVSsxRjY5MSwgVSsxRjY5NCwgVSsxRjY5OCwgVSsxRjZBRCwgVSsxRjZCMiwgVSsxRjZCOS0xRjZCQSwgVSsxRjZCQywgVSsxRjZDNi0xRjZDRiwgVSsxRjZEMy0xRjZENywgVSsxRjZFMC0xRjZFQSwgVSsxRjZGMC0xRjZGMywgVSsxRjZGNy0xRjZGQywgVSsxRjcwMC0xRjdGRiwgVSsxRjgwMC0xRjgwQiwgVSsxRjgxMC0xRjg0NywgVSsxRjg1MC0xRjg1OSwgVSsxRjg2MC0xRjg4NywgVSsxRjg5MC0xRjhBRCwgVSsxRjhCMC0xRjhCQiwgVSsxRjhDMC0xRjhDMSwgVSsxRjkwMC0xRjkwQiwgVSsxRjkzQiwgVSsxRjk0NiwgVSsxRjk4NCwgVSsxRjk5NiwgVSsxRjlFOSwgVSsxRkEwMC0xRkE2RiwgVSsxRkE3MC0xRkE3QywgVSsxRkE4MC0xRkE4OSwgVSsxRkE4Ri0xRkFDNiwgVSsxRkFDRS0xRkFEQywgVSsxRkFERi0xRkFFOSwgVSsxRkFGMC0xRkFGOCwgVSsxRkIwMC0xRkJGRjsKfQovKiB2aWV0bmFtZXNlICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTG9yYSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xvcmEvdjM3LzBRSTZNWDFEX0pPdUdRYlQwZ3ZUSlBhNzg3d2V1eEpPa3ExdW1BLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTG9yYSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xvcmEvdjM3LzBRSTZNWDFEX0pPdUdRYlQwZ3ZUSlBhNzg3d2V1eEpQa3ExdW1BLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdMb3JhJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbG9yYS92MzcvMFFJNk1YMURfSk91R1FiVDBndlRKUGE3ODd3ZXV4SkJrcTAud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBjeXJpbGxpYy1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5V1JoeXlUbjg5ZGRwUk9pLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswNDYwLTA1MkYsIFUrMUM4MC0xQzhBLCBVKzIwQjQsIFUrMkRFMC0yREZGLCBVK0E2NDAtQTY5RiwgVStGRTJFLUZFMkY7Cn0KLyogY3lyaWxsaWMgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5VzFoeXlUbjg5ZGRwUk9pLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAxLCBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7Cn0KLyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXWmh5eVRuODlkZHBST2kud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMDEyOC0wMTI5LCBVKzAxNjgtMDE2OSwgVSswMUEwLTAxQTEsIFUrMDFBRi0wMUIwLCBVKzAzMDAtMDMwMSwgVSswMzAzLTAzMDQsIFUrMDMwOC0wMzA5LCBVKzAzMjMsIFUrMDMyOSwgVSsxRUEwLTFFRjksIFUrMjBBQjsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5V2RoeXlUbjg5ZGRwUk9pLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5V2xoeXlUbjg5ZGRwUS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGN5cmlsbGljLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNTAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXUmh5eVRuODlkZHBST2kud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDOEEsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLCBVK0ZFMkUtRkUyRjsKfQovKiBjeXJpbGxpYyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNTAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXMWh5eVRuODlkZHBST2kud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAzMDEsIFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjsKfQovKiB2aWV0bmFtZXNlICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA1MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjMxL0pUVVNqSWcxX2k2dDhrQ0hLbTQ1OVdaaHl5VG44OWRkcFJPaS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSswMTI4LTAxMjksIFUrMDE2OC0wMTY5LCBVKzAxQTAtMDFBMSwgVSswMUFGLTAxQjAsIFUrMDMwMC0wMzAxLCBVKzAzMDMtMDMwNCwgVSswMzA4LTAzMDksIFUrMDMyMywgVSswMzI5LCBVKzFFQTAtMUVGOSwgVSsyMEFCOwp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNTAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXZGh5eVRuODlkZHBST2kud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNTAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXbGh5eVRuODlkZHBRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0KLyogY3lyaWxsaWMtZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDMwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUU0ttdTFhQi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4QSwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsIFUrRkUyRS1GRTJGOwp9Ci8qIGN5cmlsbGljICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDMwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUU3VtdTFhQi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDMwMSwgVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2Owp9Ci8qIGdyZWVrLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiAzMDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFNPbXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzFGMDAtMUZGRjsKfQovKiBncmVlayAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiAzMDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFN5bXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAzNzAtMDM3NywgVSswMzdBLTAzN0YsIFUrMDM4NC0wMzhBLCBVKzAzOEMsIFUrMDM4RS0wM0ExLCBVKzAzQTMtMDNGRjsKfQovKiBoZWJyZXcgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMzAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRTMm11MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzA3LTAzMDgsIFUrMDU5MC0wNUZGLCBVKzIwMEMtMjAxMCwgVSsyMEFBLCBVKzI1Q0MsIFUrRkIxRC1GQjRGOwp9Ci8qIG1hdGggKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMzAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRWT211MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAyLTAzMDMsIFUrMDMwNSwgVSswMzA3LTAzMDgsIFUrMDMxMCwgVSswMzEyLCBVKzAzMTUsIFUrMDMxQSwgVSswMzI2LTAzMjcsIFUrMDMyQywgVSswMzJGLTAzMzAsIFUrMDMzMi0wMzMzLCBVKzAzMzgsIFUrMDMzQSwgVSswMzQ2LCBVKzAzNEQsIFUrMDM5MS0wM0ExLCBVKzAzQTMtMDNBOSwgVSswM0IxLTAzQzksIFUrMDNEMSwgVSswM0Q1LTAzRDYsIFUrMDNGMC0wM0YxLCBVKzAzRjQtMDNGNSwgVSsyMDE2LTIwMTcsIFUrMjAzNC0yMDM4LCBVKzIwM0MsIFUrMjA0MCwgVSsyMDQzLCBVKzIwNDcsIFUrMjA1MCwgVSsyMDU3LCBVKzIwNUYsIFUrMjA3MC0yMDcxLCBVKzIwNzQtMjA4RSwgVSsyMDkwLTIwOUMsIFUrMjBEMC0yMERDLCBVKzIwRTEsIFUrMjBFNS0yMEVGLCBVKzIxMDAtMjExMiwgVSsyMTE0LTIxMTUsIFUrMjExNy0yMTIxLCBVKzIxMjMtMjE0RiwgVSsyMTkwLCBVKzIxOTIsIFUrMjE5NC0yMUFFLCBVKzIxQjAtMjFFNSwgVSsyMUYxLTIxRjIsIFUrMjFGNC0yMjExLCBVKzIyMTMtMjIxNCwgVSsyMjE2LTIyRkYsIFUrMjMwOC0yMzBCLCBVKzIzMTAsIFUrMjMxOSwgVSsyMzFDLTIzMjEsIFUrMjMzNi0yMzdBLCBVKzIzN0MsIFUrMjM5NSwgVSsyMzlCLTIzQjcsIFUrMjNEMCwgVSsyM0RDLTIzRTEsIFUrMjQ3NC0yNDc1LCBVKzI1QUYsIFUrMjVCMywgVSsyNUI3LCBVKzI1QkQsIFUrMjVDMSwgVSsyNUNBLCBVKzI1Q0MsIFUrMjVGQiwgVSsyNjZELTI2NkYsIFUrMjdDMC0yN0ZGLCBVKzI5MDAtMkFGRiwgVSsyQjBFLTJCMTEsIFUrMkIzMC0yQjRDLCBVKzJCRkUsIFUrMzAzMCwgVStGRjVCLCBVK0ZGNUQsIFUrMUQ0MDAtMUQ3RkYsIFUrMUVFMDAtMUVFRkY7Cn0KLyogc3ltYm9scyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiAzMDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFVHbXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDEtMDAwQywgVSswMDBFLTAwMUYsIFUrMDA3Ri0wMDlGLCBVKzIwREQtMjBFMCwgVSsyMEUyLTIwRTQsIFUrMjE1MC0yMThGLCBVKzIxOTAsIFUrMjE5MiwgVSsyMTk0LTIxOTksIFUrMjFBRiwgVSsyMUU2LTIxRjAsIFUrMjFGMywgVSsyMjE4LTIyMTksIFUrMjI5OSwgVSsyMkM0LTIyQzYsIFUrMjMwMC0yNDNGLCBVKzI0NDAtMjQ0QSwgVSsyNDYwLTI0RkYsIFUrMjVBMC0yN0JGLCBVKzI4MDAtMjhGRiwgVSsyOTIxLTI5MjIsIFUrMjk4MSwgVSsyOUJGLCBVKzI5RUIsIFUrMkIwMC0yQkZGLCBVKzREQzAtNERGRiwgVStGRkY5LUZGRkIsIFUrMTAxNDAtMTAxOEUsIFUrMTAxOTAtMTAxOUMsIFUrMTAxQTAsIFUrMTAxRDAtMTAxRkQsIFUrMTAyRTAtMTAyRkIsIFUrMTBFNjAtMTBFN0UsIFUrMUQyQzAtMUQyRDMsIFUrMUQyRTAtMUQzN0YsIFUrMUYwMDAtMUYwRkYsIFUrMUYxMDAtMUYxQUQsIFUrMUYxRTYtMUYxRkYsIFUrMUYzMEQtMUYzMEYsIFUrMUYzMTUsIFUrMUYzMUMsIFUrMUYzMUUsIFUrMUYzMjAtMUYzMkMsIFUrMUYzMzYsIFUrMUYzNzgsIFUrMUYzN0QsIFUrMUYzODIsIFUrMUYzOTMtMUYzOUYsIFUrMUYzQTctMUYzQTgsIFUrMUYzQUMtMUYzQUYsIFUrMUYzQzIsIFUrMUYzQzQtMUYzQzYsIFUrMUYzQ0EtMUYzQ0UsIFUrMUYzRDQtMUYzRTAsIFUrMUYzRUQsIFUrMUYzRjEtMUYzRjMsIFUrMUYzRjUtMUYzRjcsIFUrMUY0MDgsIFUrMUY0MTUsIFUrMUY0MUYsIFUrMUY0MjYsIFUrMUY0M0YsIFUrMUY0NDEtMUY0NDIsIFUrMUY0NDQsIFUrMUY0NDYtMUY0NDksIFUrMUY0NEMtMUY0NEUsIFUrMUY0NTMsIFUrMUY0NkEsIFUrMUY0N0QsIFUrMUY0QTMsIFUrMUY0QjAsIFUrMUY0QjMsIFUrMUY0QjksIFUrMUY0QkIsIFUrMUY0QkYsIFUrMUY0QzgtMUY0Q0IsIFUrMUY0RDYsIFUrMUY0REEsIFUrMUY0REYsIFUrMUY0RTMtMUY0RTYsIFUrMUY0RUEtMUY0RUQsIFUrMUY0RjcsIFUrMUY0RjktMUY0RkIsIFUrMUY0RkQtMUY0RkUsIFUrMUY1MDMsIFUrMUY1MDctMUY1MEIsIFUrMUY1MEQsIFUrMUY1MTItMUY1MTMsIFUrMUY1M0UtMUY1NEEsIFUrMUY1NEYtMUY1RkEsIFUrMUY2MTAsIFUrMUY2NTAtMUY2N0YsIFUrMUY2ODcsIFUrMUY2OEQsIFUrMUY2OTEsIFUrMUY2OTQsIFUrMUY2OTgsIFUrMUY2QUQsIFUrMUY2QjIsIFUrMUY2QjktMUY2QkEsIFUrMUY2QkMsIFUrMUY2QzYtMUY2Q0YsIFUrMUY2RDMtMUY2RDcsIFUrMUY2RTAtMUY2RUEsIFUrMUY2RjAtMUY2RjMsIFUrMUY2RjctMUY2RkMsIFUrMUY3MDAtMUY3RkYsIFUrMUY4MDAtMUY4MEIsIFUrMUY4MTAtMUY4NDcsIFUrMUY4NTAtMUY4NTksIFUrMUY4NjAtMUY4ODcsIFUrMUY4OTAtMUY4QUQsIFUrMUY4QjAtMUY4QkIsIFUrMUY4QzAtMUY4QzEsIFUrMUY5MDAtMUY5MEIsIFUrMUY5M0IsIFUrMUY5NDYsIFUrMUY5ODQsIFUrMUY5OTYsIFUrMUY5RTksIFUrMUZBMDAtMUZBNkYsIFUrMUZBNzAtMUZBN0MsIFUrMUZBODAtMUZBODksIFUrMUZBOEYtMUZBQzYsIFUrMUZBQ0UtMUZBREMsIFUrMUZBREYtMUZBRTksIFUrMUZBRjAtMUZBRjgsIFUrMUZCMDAtMUZCRkY7Cn0KLyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiAzMDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFNDbXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMDEyOC0wMTI5LCBVKzAxNjgtMDE2OSwgVSswMUEwLTAxQTEsIFUrMDFBRi0wMUIwLCBVKzAzMDAtMDMwMSwgVSswMzAzLTAzMDQsIFUrMDMwOC0wMzA5LCBVKzAzMjMsIFUrMDMyOSwgVSsxRUEwLTFFRjksIFUrMjBBQjsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMzAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRTR211MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMzAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRTLW11dy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGN5cmlsbGljLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFNLbXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDOEEsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLCBVK0ZFMkUtRkUyRjsKfQovKiBjeXJpbGxpYyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFN1bXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAzMDEsIFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjsKfQovKiBncmVlay1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRTT211MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSsxRjAwLTFGRkY7Cn0KLyogZ3JlZWsgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRTeW11MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzcwLTAzNzcsIFUrMDM3QS0wMzdGLCBVKzAzODQtMDM4QSwgVSswMzhDLCBVKzAzOEUtMDNBMSwgVSswM0EzLTAzRkY7Cn0KLyogaGVicmV3ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUUzJtdTFhQi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDMwNy0wMzA4LCBVKzA1OTAtMDVGRiwgVSsyMDBDLTIwMTAsIFUrMjBBQSwgVSsyNUNDLCBVK0ZCMUQtRkI0RjsKfQovKiBtYXRoICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUVk9tdTFhQi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDMwMi0wMzAzLCBVKzAzMDUsIFUrMDMwNy0wMzA4LCBVKzAzMTAsIFUrMDMxMiwgVSswMzE1LCBVKzAzMUEsIFUrMDMyNi0wMzI3LCBVKzAzMkMsIFUrMDMyRi0wMzMwLCBVKzAzMzItMDMzMywgVSswMzM4LCBVKzAzM0EsIFUrMDM0NiwgVSswMzRELCBVKzAzOTEtMDNBMSwgVSswM0EzLTAzQTksIFUrMDNCMS0wM0M5LCBVKzAzRDEsIFUrMDNENS0wM0Q2LCBVKzAzRjAtMDNGMSwgVSswM0Y0LTAzRjUsIFUrMjAxNi0yMDE3LCBVKzIwMzQtMjAzOCwgVSsyMDNDLCBVKzIwNDAsIFUrMjA0MywgVSsyMDQ3LCBVKzIwNTAsIFUrMjA1NywgVSsyMDVGLCBVKzIwNzAtMjA3MSwgVSsyMDc0LTIwOEUsIFUrMjA5MC0yMDlDLCBVKzIwRDAtMjBEQywgVSsyMEUxLCBVKzIwRTUtMjBFRiwgVSsyMTAwLTIxMTIsIFUrMjExNC0yMTE1LCBVKzIxMTctMjEyMSwgVSsyMTIzLTIxNEYsIFUrMjE5MCwgVSsyMTkyLCBVKzIxOTQtMjFBRSwgVSsyMUIwLTIxRTUsIFUrMjFGMS0yMUYyLCBVKzIxRjQtMjIxMSwgVSsyMjEzLTIyMTQsIFUrMjIxNi0yMkZGLCBVKzIzMDgtMjMwQiwgVSsyMzEwLCBVKzIzMTksIFUrMjMxQy0yMzIxLCBVKzIzMzYtMjM3QSwgVSsyMzdDLCBVKzIzOTUsIFUrMjM5Qi0yM0I3LCBVKzIzRDAsIFUrMjNEQy0yM0UxLCBVKzI0NzQtMjQ3NSwgVSsyNUFGLCBVKzI1QjMsIFUrMjVCNywgVSsyNUJELCBVKzI1QzEsIFUrMjVDQSwgVSsyNUNDLCBVKzI1RkIsIFUrMjY2RC0yNjZGLCBVKzI3QzAtMjdGRiwgVSsyOTAwLTJBRkYsIFUrMkIwRS0yQjExLCBVKzJCMzAtMkI0QywgVSsyQkZFLCBVKzMwMzAsIFUrRkY1QiwgVStGRjVELCBVKzFENDAwLTFEN0ZGLCBVKzFFRTAwLTFFRUZGOwp9Ci8qIHN5bWJvbHMgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRVR211MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAxLTAwMEMsIFUrMDAwRS0wMDFGLCBVKzAwN0YtMDA5RiwgVSsyMERELTIwRTAsIFUrMjBFMi0yMEU0LCBVKzIxNTAtMjE4RiwgVSsyMTkwLCBVKzIxOTIsIFUrMjE5NC0yMTk5LCBVKzIxQUYsIFUrMjFFNi0yMUYwLCBVKzIxRjMsIFUrMjIxOC0yMjE5LCBVKzIyOTksIFUrMjJDNC0yMkM2LCBVKzIzMDAtMjQzRiwgVSsyNDQwLTI0NEEsIFUrMjQ2MC0yNEZGLCBVKzI1QTAtMjdCRiwgVSsyODAwLTI4RkYsIFUrMjkyMS0yOTIyLCBVKzI5ODEsIFUrMjlCRiwgVSsyOUVCLCBVKzJCMDAtMkJGRiwgVSs0REMwLTRERkYsIFUrRkZGOS1GRkZCLCBVKzEwMTQwLTEwMThFLCBVKzEwMTkwLTEwMTlDLCBVKzEwMUEwLCBVKzEwMUQwLTEwMUZELCBVKzEwMkUwLTEwMkZCLCBVKzEwRTYwLTEwRTdFLCBVKzFEMkMwLTFEMkQzLCBVKzFEMkUwLTFEMzdGLCBVKzFGMDAwLTFGMEZGLCBVKzFGMTAwLTFGMUFELCBVKzFGMUU2LTFGMUZGLCBVKzFGMzBELTFGMzBGLCBVKzFGMzE1LCBVKzFGMzFDLCBVKzFGMzFFLCBVKzFGMzIwLTFGMzJDLCBVKzFGMzM2LCBVKzFGMzc4LCBVKzFGMzdELCBVKzFGMzgyLCBVKzFGMzkzLTFGMzlGLCBVKzFGM0E3LTFGM0E4LCBVKzFGM0FDLTFGM0FGLCBVKzFGM0MyLCBVKzFGM0M0LTFGM0M2LCBVKzFGM0NBLTFGM0NFLCBVKzFGM0Q0LTFGM0UwLCBVKzFGM0VELCBVKzFGM0YxLTFGM0YzLCBVKzFGM0Y1LTFGM0Y3LCBVKzFGNDA4LCBVKzFGNDE1LCBVKzFGNDFGLCBVKzFGNDI2LCBVKzFGNDNGLCBVKzFGNDQxLTFGNDQyLCBVKzFGNDQ0LCBVKzFGNDQ2LTFGNDQ5LCBVKzFGNDRDLTFGNDRFLCBVKzFGNDUzLCBVKzFGNDZBLCBVKzFGNDdELCBVKzFGNEEzLCBVKzFGNEIwLCBVKzFGNEIzLCBVKzFGNEI5LCBVKzFGNEJCLCBVKzFGNEJGLCBVKzFGNEM4LTFGNENCLCBVKzFGNEQ2LCBVKzFGNERBLCBVKzFGNERGLCBVKzFGNEUzLTFGNEU2LCBVKzFGNEVBLTFGNEVELCBVKzFGNEY3LCBVKzFGNEY5LTFGNEZCLCBVKzFGNEZELTFGNEZFLCBVKzFGNTAzLCBVKzFGNTA3LTFGNTBCLCBVKzFGNTBELCBVKzFGNTEyLTFGNTEzLCBVKzFGNTNFLTFGNTRBLCBVKzFGNTRGLTFGNUZBLCBVKzFGNjEwLCBVKzFGNjUwLTFGNjdGLCBVKzFGNjg3LCBVKzFGNjhELCBVKzFGNjkxLCBVKzFGNjk0LCBVKzFGNjk4LCBVKzFGNkFELCBVKzFGNkIyLCBVKzFGNkI5LTFGNkJBLCBVKzFGNkJDLCBVKzFGNkM2LTFGNkNGLCBVKzFGNkQzLTFGNkQ3LCBVKzFGNkUwLTFGNkVBLCBVKzFGNkYwLTFGNkYzLCBVKzFGNkY3LTFGNkZDLCBVKzFGNzAwLTFGN0ZGLCBVKzFGODAwLTFGODBCLCBVKzFGODEwLTFGODQ3LCBVKzFGODUwLTFGODU5LCBVKzFGODYwLTFGODg3LCBVKzFGODkwLTFGOEFELCBVKzFGOEIwLTFGOEJCLCBVKzFGOEMwLTFGOEMxLCBVKzFGOTAwLTFGOTBCLCBVKzFGOTNCLCBVKzFGOTQ2LCBVKzFGOTg0LCBVKzFGOTk2LCBVKzFGOUU5LCBVKzFGQTAwLTFGQTZGLCBVKzFGQTcwLTFGQTdDLCBVKzFGQTgwLTFGQTg5LCBVKzFGQThGLTFGQUM2LCBVKzFGQUNFLTFGQURDLCBVKzFGQURGLTFGQUU5LCBVKzFGQUYwLTFGQUY4LCBVKzFGQjAwLTFGQkZGOwp9Ci8qIHZpZXRuYW1lc2UgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRTQ211MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUU0dtdTFhQi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUUy1tdXcud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBjeXJpbGxpYy1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNjAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRTS211MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswNDYwLTA1MkYsIFUrMUM4MC0xQzhBLCBVKzIwQjQsIFUrMkRFMC0yREZGLCBVK0E2NDAtQTY5RiwgVStGRTJFLUZFMkY7Cn0KLyogY3lyaWxsaWMgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNjAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRTdW11MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAxLCBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7Cn0KLyogZ3JlZWstZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDYwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUU09tdTFhQi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMUYwMC0xRkZGOwp9Ci8qIGdyZWVrICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDYwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUU3ltdTFhQi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDM3MC0wMzc3LCBVKzAzN0EtMDM3RiwgVSswMzg0LTAzOEEsIFUrMDM4QywgVSswMzhFLTAzQTEsIFUrMDNBMy0wM0ZGOwp9Ci8qIGhlYnJldyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFMybXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAzMDctMDMwOCwgVSswNTkwLTA1RkYsIFUrMjAwQy0yMDEwLCBVKzIwQUEsIFUrMjVDQywgVStGQjFELUZCNEY7Cn0KLyogbWF0aCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFZPbXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAzMDItMDMwMywgVSswMzA1LCBVKzAzMDctMDMwOCwgVSswMzEwLCBVKzAzMTIsIFUrMDMxNSwgVSswMzFBLCBVKzAzMjYtMDMyNywgVSswMzJDLCBVKzAzMkYtMDMzMCwgVSswMzMyLTAzMzMsIFUrMDMzOCwgVSswMzNBLCBVKzAzNDYsIFUrMDM0RCwgVSswMzkxLTAzQTEsIFUrMDNBMy0wM0E5LCBVKzAzQjEtMDNDOSwgVSswM0QxLCBVKzAzRDUtMDNENiwgVSswM0YwLTAzRjEsIFUrMDNGNC0wM0Y1LCBVKzIwMTYtMjAxNywgVSsyMDM0LTIwMzgsIFUrMjAzQywgVSsyMDQwLCBVKzIwNDMsIFUrMjA0NywgVSsyMDUwLCBVKzIwNTcsIFUrMjA1RiwgVSsyMDcwLTIwNzEsIFUrMjA3NC0yMDhFLCBVKzIwOTAtMjA5QywgVSsyMEQwLTIwREMsIFUrMjBFMSwgVSsyMEU1LTIwRUYsIFUrMjEwMC0yMTEyLCBVKzIxMTQtMjExNSwgVSsyMTE3LTIxMjEsIFUrMjEyMy0yMTRGLCBVKzIxOTAsIFUrMjE5MiwgVSsyMTk0LTIxQUUsIFUrMjFCMC0yMUU1LCBVKzIxRjEtMjFGMiwgVSsyMUY0LTIyMTEsIFUrMjIxMy0yMjE0LCBVKzIyMTYtMjJGRiwgVSsyMzA4LTIzMEIsIFUrMjMxMCwgVSsyMzE5LCBVKzIzMUMtMjMyMSwgVSsyMzM2LTIzN0EsIFUrMjM3QywgVSsyMzk1LCBVKzIzOUItMjNCNywgVSsyM0QwLCBVKzIzREMtMjNFMSwgVSsyNDc0LTI0NzUsIFUrMjVBRiwgVSsyNUIzLCBVKzI1QjcsIFUrMjVCRCwgVSsyNUMxLCBVKzI1Q0EsIFUrMjVDQywgVSsyNUZCLCBVKzI2NkQtMjY2RiwgVSsyN0MwLTI3RkYsIFUrMjkwMC0yQUZGLCBVKzJCMEUtMkIxMSwgVSsyQjMwLTJCNEMsIFUrMkJGRSwgVSszMDMwLCBVK0ZGNUIsIFUrRkY1RCwgVSsxRDQwMC0xRDdGRiwgVSsxRUUwMC0xRUVGRjsKfQovKiBzeW1ib2xzICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDYwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUVUdtdTFhQi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMS0wMDBDLCBVKzAwMEUtMDAxRiwgVSswMDdGLTAwOUYsIFUrMjBERC0yMEUwLCBVKzIwRTItMjBFNCwgVSsyMTUwLTIxOEYsIFUrMjE5MCwgVSsyMTkyLCBVKzIxOTQtMjE5OSwgVSsyMUFGLCBVKzIxRTYtMjFGMCwgVSsyMUYzLCBVKzIyMTgtMjIxOSwgVSsyMjk5LCBVKzIyQzQtMjJDNiwgVSsyMzAwLTI0M0YsIFUrMjQ0MC0yNDRBLCBVKzI0NjAtMjRGRiwgVSsyNUEwLTI3QkYsIFUrMjgwMC0yOEZGLCBVKzI5MjEtMjkyMiwgVSsyOTgxLCBVKzI5QkYsIFUrMjlFQiwgVSsyQjAwLTJCRkYsIFUrNERDMC00REZGLCBVK0ZGRjktRkZGQiwgVSsxMDE0MC0xMDE4RSwgVSsxMDE5MC0xMDE5QywgVSsxMDFBMCwgVSsxMDFEMC0xMDFGRCwgVSsxMDJFMC0xMDJGQiwgVSsxMEU2MC0xMEU3RSwgVSsxRDJDMC0xRDJEMywgVSsxRDJFMC0xRDM3RiwgVSsxRjAwMC0xRjBGRiwgVSsxRjEwMC0xRjFBRCwgVSsxRjFFNi0xRjFGRiwgVSsxRjMwRC0xRjMwRiwgVSsxRjMxNSwgVSsxRjMxQywgVSsxRjMxRSwgVSsxRjMyMC0xRjMyQywgVSsxRjMzNiwgVSsxRjM3OCwgVSsxRjM3RCwgVSsxRjM4MiwgVSsxRjM5My0xRjM5RiwgVSsxRjNBNy0xRjNBOCwgVSsxRjNBQy0xRjNBRiwgVSsxRjNDMiwgVSsxRjNDNC0xRjNDNiwgVSsxRjNDQS0xRjNDRSwgVSsxRjNENC0xRjNFMCwgVSsxRjNFRCwgVSsxRjNGMS0xRjNGMywgVSsxRjNGNS0xRjNGNywgVSsxRjQwOCwgVSsxRjQxNSwgVSsxRjQxRiwgVSsxRjQyNiwgVSsxRjQzRiwgVSsxRjQ0MS0xRjQ0MiwgVSsxRjQ0NCwgVSsxRjQ0Ni0xRjQ0OSwgVSsxRjQ0Qy0xRjQ0RSwgVSsxRjQ1MywgVSsxRjQ2QSwgVSsxRjQ3RCwgVSsxRjRBMywgVSsxRjRCMCwgVSsxRjRCMywgVSsxRjRCOSwgVSsxRjRCQiwgVSsxRjRCRiwgVSsxRjRDOC0xRjRDQiwgVSsxRjRENiwgVSsxRjREQSwgVSsxRjRERiwgVSsxRjRFMy0xRjRFNiwgVSsxRjRFQS0xRjRFRCwgVSsxRjRGNywgVSsxRjRGOS0xRjRGQiwgVSsxRjRGRC0xRjRGRSwgVSsxRjUwMywgVSsxRjUwNy0xRjUwQiwgVSsxRjUwRCwgVSsxRjUxMi0xRjUxMywgVSsxRjUzRS0xRjU0QSwgVSsxRjU0Ri0xRjVGQSwgVSsxRjYxMCwgVSsxRjY1MC0xRjY3RiwgVSsxRjY4NywgVSsxRjY4RCwgVSsxRjY5MSwgVSsxRjY5NCwgVSsxRjY5OCwgVSsxRjZBRCwgVSsxRjZCMiwgVSsxRjZCOS0xRjZCQSwgVSsxRjZCQywgVSsxRjZDNi0xRjZDRiwgVSsxRjZEMy0xRjZENywgVSsxRjZFMC0xRjZFQSwgVSsxRjZGMC0xRjZGMywgVSsxRjZGNy0xRjZGQywgVSsxRjcwMC0xRjdGRiwgVSsxRjgwMC0xRjgwQiwgVSsxRjgxMC0xRjg0NywgVSsxRjg1MC0xRjg1OSwgVSsxRjg2MC0xRjg4NywgVSsxRjg5MC0xRjhBRCwgVSsxRjhCMC0xRjhCQiwgVSsxRjhDMC0xRjhDMSwgVSsxRjkwMC0xRjkwQiwgVSsxRjkzQiwgVSsxRjk0NiwgVSsxRjk4NCwgVSsxRjk5NiwgVSsxRjlFOSwgVSsxRkEwMC0xRkE2RiwgVSsxRkE3MC0xRkE3QywgVSsxRkE4MC0xRkE4OSwgVSsxRkE4Ri0xRkFDNiwgVSsxRkFDRS0xRkFEQywgVSsxRkFERi0xRkFFOSwgVSsxRkFGMC0xRkFGOCwgVSsxRkIwMC0xRkJGRjsKfQovKiB2aWV0bmFtZXNlICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDYwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUU0NtdTFhQi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSswMTI4LTAxMjksIFUrMDE2OC0wMTY5LCBVKzAxQTAtMDFBMSwgVSswMUFGLTAxQjAsIFUrMDMwMC0wMzAxLCBVKzAzMDMtMDMwNCwgVSswMzA4LTAzMDksIFUrMDMyMywgVSswMzI5LCBVKzFFQTAtMUVGOSwgVSsyMEFCOwp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFNHbXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFMtbXV3LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0KLyogY3lyaWxsaWMtZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUU0ttdTFhQi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4QSwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsIFUrRkUyRS1GRTJGOwp9Ci8qIGN5cmlsbGljICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBmb250LXN0cmV0Y2g6IDEwMCU7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL29wZW5zYW5zL3Y0NC9tZW12WWFHczEyNk1pWnBCQS1VdldiWDJ2Vm5YQmJPYmoyT1ZUU3VtdTFhQi53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDMwMSwgVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2Owp9Ci8qIGdyZWVrLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFNPbXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzFGMDAtMUZGRjsKfQovKiBncmVlayAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFN5bXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAzNzAtMDM3NywgVSswMzdBLTAzN0YsIFUrMDM4NC0wMzhBLCBVKzAzOEMsIFUrMDM4RS0wM0ExLCBVKzAzQTMtMDNGRjsKfQovKiBoZWJyZXcgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRTMm11MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzA3LTAzMDgsIFUrMDU5MC0wNUZGLCBVKzIwMEMtMjAxMCwgVSsyMEFBLCBVKzI1Q0MsIFUrRkIxRC1GQjRGOwp9Ci8qIG1hdGggKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRWT211MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAyLTAzMDMsIFUrMDMwNSwgVSswMzA3LTAzMDgsIFUrMDMxMCwgVSswMzEyLCBVKzAzMTUsIFUrMDMxQSwgVSswMzI2LTAzMjcsIFUrMDMyQywgVSswMzJGLTAzMzAsIFUrMDMzMi0wMzMzLCBVKzAzMzgsIFUrMDMzQSwgVSswMzQ2LCBVKzAzNEQsIFUrMDM5MS0wM0ExLCBVKzAzQTMtMDNBOSwgVSswM0IxLTAzQzksIFUrMDNEMSwgVSswM0Q1LTAzRDYsIFUrMDNGMC0wM0YxLCBVKzAzRjQtMDNGNSwgVSsyMDE2LTIwMTcsIFUrMjAzNC0yMDM4LCBVKzIwM0MsIFUrMjA0MCwgVSsyMDQzLCBVKzIwNDcsIFUrMjA1MCwgVSsyMDU3LCBVKzIwNUYsIFUrMjA3MC0yMDcxLCBVKzIwNzQtMjA4RSwgVSsyMDkwLTIwOUMsIFUrMjBEMC0yMERDLCBVKzIwRTEsIFUrMjBFNS0yMEVGLCBVKzIxMDAtMjExMiwgVSsyMTE0LTIxMTUsIFUrMjExNy0yMTIxLCBVKzIxMjMtMjE0RiwgVSsyMTkwLCBVKzIxOTIsIFUrMjE5NC0yMUFFLCBVKzIxQjAtMjFFNSwgVSsyMUYxLTIxRjIsIFUrMjFGNC0yMjExLCBVKzIyMTMtMjIxNCwgVSsyMjE2LTIyRkYsIFUrMjMwOC0yMzBCLCBVKzIzMTAsIFUrMjMxOSwgVSsyMzFDLTIzMjEsIFUrMjMzNi0yMzdBLCBVKzIzN0MsIFUrMjM5NSwgVSsyMzlCLTIzQjcsIFUrMjNEMCwgVSsyM0RDLTIzRTEsIFUrMjQ3NC0yNDc1LCBVKzI1QUYsIFUrMjVCMywgVSsyNUI3LCBVKzI1QkQsIFUrMjVDMSwgVSsyNUNBLCBVKzI1Q0MsIFUrMjVGQiwgVSsyNjZELTI2NkYsIFUrMjdDMC0yN0ZGLCBVKzI5MDAtMkFGRiwgVSsyQjBFLTJCMTEsIFUrMkIzMC0yQjRDLCBVKzJCRkUsIFUrMzAzMCwgVStGRjVCLCBVK0ZGNUQsIFUrMUQ0MDAtMUQ3RkYsIFUrMUVFMDAtMUVFRkY7Cn0KLyogc3ltYm9scyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFVHbXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDEtMDAwQywgVSswMDBFLTAwMUYsIFUrMDA3Ri0wMDlGLCBVKzIwREQtMjBFMCwgVSsyMEUyLTIwRTQsIFUrMjE1MC0yMThGLCBVKzIxOTAsIFUrMjE5MiwgVSsyMTk0LTIxOTksIFUrMjFBRiwgVSsyMUU2LTIxRjAsIFUrMjFGMywgVSsyMjE4LTIyMTksIFUrMjI5OSwgVSsyMkM0LTIyQzYsIFUrMjMwMC0yNDNGLCBVKzI0NDAtMjQ0QSwgVSsyNDYwLTI0RkYsIFUrMjVBMC0yN0JGLCBVKzI4MDAtMjhGRiwgVSsyOTIxLTI5MjIsIFUrMjk4MSwgVSsyOUJGLCBVKzI5RUIsIFUrMkIwMC0yQkZGLCBVKzREQzAtNERGRiwgVStGRkY5LUZGRkIsIFUrMTAxNDAtMTAxOEUsIFUrMTAxOTAtMTAxOUMsIFUrMTAxQTAsIFUrMTAxRDAtMTAxRkQsIFUrMTAyRTAtMTAyRkIsIFUrMTBFNjAtMTBFN0UsIFUrMUQyQzAtMUQyRDMsIFUrMUQyRTAtMUQzN0YsIFUrMUYwMDAtMUYwRkYsIFUrMUYxMDAtMUYxQUQsIFUrMUYxRTYtMUYxRkYsIFUrMUYzMEQtMUYzMEYsIFUrMUYzMTUsIFUrMUYzMUMsIFUrMUYzMUUsIFUrMUYzMjAtMUYzMkMsIFUrMUYzMzYsIFUrMUYzNzgsIFUrMUYzN0QsIFUrMUYzODIsIFUrMUYzOTMtMUYzOUYsIFUrMUYzQTctMUYzQTgsIFUrMUYzQUMtMUYzQUYsIFUrMUYzQzIsIFUrMUYzQzQtMUYzQzYsIFUrMUYzQ0EtMUYzQ0UsIFUrMUYzRDQtMUYzRTAsIFUrMUYzRUQsIFUrMUYzRjEtMUYzRjMsIFUrMUYzRjUtMUYzRjcsIFUrMUY0MDgsIFUrMUY0MTUsIFUrMUY0MUYsIFUrMUY0MjYsIFUrMUY0M0YsIFUrMUY0NDEtMUY0NDIsIFUrMUY0NDQsIFUrMUY0NDYtMUY0NDksIFUrMUY0NEMtMUY0NEUsIFUrMUY0NTMsIFUrMUY0NkEsIFUrMUY0N0QsIFUrMUY0QTMsIFUrMUY0QjAsIFUrMUY0QjMsIFUrMUY0QjksIFUrMUY0QkIsIFUrMUY0QkYsIFUrMUY0QzgtMUY0Q0IsIFUrMUY0RDYsIFUrMUY0REEsIFUrMUY0REYsIFUrMUY0RTMtMUY0RTYsIFUrMUY0RUEtMUY0RUQsIFUrMUY0RjcsIFUrMUY0RjktMUY0RkIsIFUrMUY0RkQtMUY0RkUsIFUrMUY1MDMsIFUrMUY1MDctMUY1MEIsIFUrMUY1MEQsIFUrMUY1MTItMUY1MTMsIFUrMUY1M0UtMUY1NEEsIFUrMUY1NEYtMUY1RkEsIFUrMUY2MTAsIFUrMUY2NTAtMUY2N0YsIFUrMUY2ODcsIFUrMUY2OEQsIFUrMUY2OTEsIFUrMUY2OTQsIFUrMUY2OTgsIFUrMUY2QUQsIFUrMUY2QjIsIFUrMUY2QjktMUY2QkEsIFUrMUY2QkMsIFUrMUY2QzYtMUY2Q0YsIFUrMUY2RDMtMUY2RDcsIFUrMUY2RTAtMUY2RUEsIFUrMUY2RjAtMUY2RjMsIFUrMUY2RjctMUY2RkMsIFUrMUY3MDAtMUY3RkYsIFUrMUY4MDAtMUY4MEIsIFUrMUY4MTAtMUY4NDcsIFUrMUY4NTAtMUY4NTksIFUrMUY4NjAtMUY4ODcsIFUrMUY4OTAtMUY4QUQsIFUrMUY4QjAtMUY4QkIsIFUrMUY4QzAtMUY4QzEsIFUrMUY5MDAtMUY5MEIsIFUrMUY5M0IsIFUrMUY5NDYsIFUrMUY5ODQsIFUrMUY5OTYsIFUrMUY5RTksIFUrMUZBMDAtMUZBNkYsIFUrMUZBNzAtMUZBN0MsIFUrMUZBODAtMUZBODksIFUrMUZBOEYtMUZBQzYsIFUrMUZBQ0UtMUZBREMsIFUrMUZBREYtMUZBRTksIFUrMUZBRjAtMUZBRjgsIFUrMUZCMDAtMUZCRkY7Cn0KLyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgZm9udC1zdHJldGNoOiAxMDAlOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9vcGVuc2Fucy92NDQvbWVtdllhR3MxMjZNaVpwQkEtVXZXYlgydlZuWEJiT2JqMk9WVFNDbXUxYUIud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMDEyOC0wMTI5LCBVKzAxNjgtMDE2OSwgVSswMUEwLTAxQTEsIFUrMDFBRi0wMUIwLCBVKzAzMDAtMDMwMSwgVSswMzAzLTAzMDQsIFUrMDMwOC0wMzA5LCBVKzAzMjMsIFUrMDMyOSwgVSsxRUEwLTFFRjksIFUrMjBBQjsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRTR211MWFCLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIGZvbnQtc3RyZXRjaDogMTAwJTsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvb3BlbnNhbnMvdjQ0L21lbXZZYUdzMTI2TWlacEJBLVV2V2JYMnZWblhCYk9iajJPVlRTLW11dy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGN5cmlsbGljICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUGxheWZhaXIgRGlzcGxheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BsYXlmYWlyZGlzcGxheS92NDAvbnVGaUQtdllTWnZpVllVYl9yajNpal9fYW5QWERUallnRkVfLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAxLCBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7Cn0KLyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wbGF5ZmFpcmRpc3BsYXkvdjQwL251RmlELXZZU1p2aVZZVWJfcmozaWpfX2FuUFhEVFBZZ0ZFXy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSswMTI4LTAxMjksIFUrMDE2OC0wMTY5LCBVKzAxQTAtMDFBMSwgVSswMUFGLTAxQjAsIFUrMDMwMC0wMzAxLCBVKzAzMDMtMDMwNCwgVSswMzA4LTAzMDksIFUrMDMyMywgVSswMzI5LCBVKzFFQTAtMUVGOSwgVSsyMEFCOwp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wbGF5ZmFpcmRpc3BsYXkvdjQwL251RmlELXZZU1p2aVZZVWJfcmozaWpfX2FuUFhEVExZZ0ZFXy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUGxheWZhaXIgRGlzcGxheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BsYXlmYWlyZGlzcGxheS92NDAvbnVGaUQtdllTWnZpVllVYl9yajNpal9fYW5QWERUellnQS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGN5cmlsbGljICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUGxheWZhaXIgRGlzcGxheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BsYXlmYWlyZGlzcGxheS92NDAvbnVGaUQtdllTWnZpVllVYl9yajNpal9fYW5QWERUallnRkVfLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAxLCBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7Cn0KLyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wbGF5ZmFpcmRpc3BsYXkvdjQwL251RmlELXZZU1p2aVZZVWJfcmozaWpfX2FuUFhEVFBZZ0ZFXy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSswMTI4LTAxMjksIFUrMDE2OC0wMTY5LCBVKzAxQTAtMDFBMSwgVSswMUFGLTAxQjAsIFUrMDMwMC0wMzAxLCBVKzAzMDMtMDMwNCwgVSswMzA4LTAzMDksIFUrMDMyMywgVSswMzI5LCBVKzFFQTAtMUVGOSwgVSsyMEFCOwp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wbGF5ZmFpcmRpc3BsYXkvdjQwL251RmlELXZZU1p2aVZZVWJfcmozaWpfX2FuUFhEVExZZ0ZFXy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUGxheWZhaXIgRGlzcGxheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BsYXlmYWlyZGlzcGxheS92NDAvbnVGaUQtdllTWnZpVllVYl9yajNpal9fYW5QWERUellnQS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGRldmFuYWdhcmkgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDMwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpQnlwOGt2OEpIZ0ZWckxEejhaMTFsRmMtSy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDkwMC0wOTdGLCBVKzFDRDAtMUNGOSwgVSsyMDBDLTIwMEQsIFUrMjBBOCwgVSsyMEI5LCBVKzIwRjAsIFUrMjVDQywgVStBODMwLUE4MzksIFUrQThFMC1BOEZGLCBVKzExQjAwLTExQjA5Owp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMzAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlCeXA4a3Y4SkhnRlZyTER6OFoxSmxGYy1LLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDMwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpQnlwOGt2OEpIZ0ZWckxEejhaMXhsRlEud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBkZXZhbmFnYXJpICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUV5cDhrdjhKSGdGVnJKSmJlY21ORS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDkwMC0wOTdGLCBVKzFDRDAtMUNGOSwgVSsyMDBDLTIwMEQsIFUrMjBBOCwgVSsyMEI5LCBVKzIwRjAsIFUrMjVDQywgVStBODMwLUE4MzksIFUrQThFMC1BOEZGLCBVKzExQjAwLTExQjA5Owp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlFeXA4a3Y4SkhnRlZySkpuZWNtTkUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlFeXA4a3Y4SkhnRlZySkpmZWNnLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0KLyogZGV2YW5hZ2FyaSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNTAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlCeXA4a3Y4SkhnRlZyTEdUOVoxMWxGYy1LLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswOTAwLTA5N0YsIFUrMUNEMC0xQ0Y5LCBVKzIwMEMtMjAwRCwgVSsyMEE4LCBVKzIwQjksIFUrMjBGMCwgVSsyNUNDLCBVK0E4MzAtQTgzOSwgVStBOEUwLUE4RkYsIFUrMTFCMDAtMTFCMDk7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA1MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUJ5cDhrdjhKSGdGVnJMR1Q5WjFKbEZjLUsud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNTAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlCeXA4a3Y4SkhnRlZyTEdUOVoxeGxGUS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGRldmFuYWdhcmkgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDYwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpQnlwOGt2OEpIZ0ZWckxFajZaMTFsRmMtSy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDkwMC0wOTdGLCBVKzFDRDAtMUNGOSwgVSsyMDBDLTIwMEQsIFUrMjBBOCwgVSsyMEI5LCBVKzIwRjAsIFUrMjVDQywgVStBODMwLUE4MzksIFUrQThFMC1BOEZGLCBVKzExQjAwLTExQjA5Owp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNjAwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlCeXA4a3Y4SkhnRlZyTEVqNloxSmxGYy1LLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDYwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpQnlwOGt2OEpIZ0ZWckxFajZaMXhsRlEud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBkZXZhbmFnYXJpICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUJ5cDhrdjhKSGdGVnJMQ3o3WjExbEZjLUsud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzA5MDAtMDk3RiwgVSsxQ0QwLTFDRjksIFUrMjAwQy0yMDBELCBVKzIwQTgsIFUrMjBCOSwgVSsyMEYwLCBVKzI1Q0MsIFUrQTgzMC1BODM5LCBVK0E4RTAtQThGRiwgVSsxMUIwMC0xMUIwOTsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpQnlwOGt2OEpIZ0ZWckxDejdaMUpsRmMtSy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUJ5cDhrdjhKSGdGVnJMQ3o3WjF4bEZRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0K"}},"time_used":87,"timings":{"blocked":-1,"dns":2,"connect":15,"send":0,"wait":36,"receive":0,"ssl":33},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/demo.php","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.474Z","timestamp":1785143926474,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /demo.php HTTP/1.1\r\nHost: scromegatrade.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\nReferer: https://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/slider/slider-2.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.336Z","timestamp":1785143908336,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/slider/slider-2.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/css/layers.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.093Z","timestamp":1785143908093,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/css/layers.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:46 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"23ca5-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 10779\r\nKeep-Alive: timeout=5, max=96\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":146597,"size_decoded":11142,"mime_type":"text/css","magic":"ASCII text, with CRLF line terminators","md5":"67b50bc0d49c4b80742a835113b03562","sha1":"29ce5433ed65387f6f6ef97159071e5987ae1599","sha256":"cc830234af8b0e2ac01ad515ff209c43b29ba78d5145505a1088b18beefd2ac9","sha512":"5991d613af7c17ff93728dff20841b8996f8ae8e0b34f891ea6066f76d836ca58140d2ef5774abaa7a6711dc8fef91acc221a0f12a2c55dca2702d01982478e4","ssdeep":"384:0jgGE3ZtaszFwt62cEGrmvNNRLv3A2qsbJNaNT8KiiOSGO2TK5NTXNG6IPXuuK2m:r3TreNNRIzGTTYIv+Yby","tlshash":"77e3ee61f90541c77073d91833729fc8eb690253ae078a35fbad23648f7d2acaa5179c","first_seen":"2023-04-11T01:29:53Z","last_seen":"2026-08-11T02:39:33.059278Z","times_seen":1714,"resource_available":false,"data":"LyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQotCVJldm9sdXRpb24gU2xpZGVyIDUuMCBMYXllciBTdHlsZSBTZXR0aW5ncyAtDQoNClNjcmVlbiBTdHlsZXNoZWV0DQoNCnZlcnNpb246ICAgCTUuMC4wDQpkYXRlOiAgICAgIAkxOC8wMy8xNQ0KYXV0aG9yOgkJdGhlbWVwdW5jaA0KZW1haWw6ICAgICAJaW5mb0B0aGVtZXB1bmNoLmNvbQ0Kd2Vic2l0ZTogICAJaHR0cDovL3d3dy50aGVtZXB1bmNoLmNvbQ0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQoqIHsNCiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94Ow0KICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQp9DQoNCi50cC1jYXB0aW9uLlR3aXR0ZXItQ29udGVudCBhLC50cC1jYXB0aW9uLlR3aXR0ZXItQ29udGVudCBhOnZpc2l0ZWQNCnsNCgljb2xvcjojMDA4NEI0IWltcG9ydGFudDsNCn0NCg0KLnRwLWNhcHRpb24uVHdpdHRlci1Db250ZW50IGE6aG92ZXINCnsNCgljb2xvcjojMDA4NEI0IWltcG9ydGFudDsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lIWltcG9ydGFudDsNCn0NCg0KLnRwLWNhcHRpb24ubWVkaXVtX2dyZXksLm1lZGl1bV9ncmV5DQp7DQoJYmFja2dyb3VuZC1jb2xvcjojODg4Ow0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiNmZmY7DQoJZm9udC1mYW1pbHk6QXJpYWw7DQoJZm9udC1zaXplOjIwcHg7DQoJZm9udC13ZWlnaHQ6NzAwOw0KCWxpbmUtaGVpZ2h0OjIwcHg7DQoJbWFyZ2luOjA7DQoJcGFkZGluZzoycHggNHB4Ow0KCXBvc2l0aW9uOmFic29sdXRlOw0KCXRleHQtc2hhZG93OjAgMnB4IDVweCByZ2JhKDAsMCwwLDAuNSk7DQoJd2hpdGUtc3BhY2U6bm93cmFwOw0KfQ0KDQoudHAtY2FwdGlvbi5zbWFsbF90ZXh0LC5zbWFsbF90ZXh0DQp7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseTpBcmlhbDsNCglmb250LXNpemU6MTRweDsNCglmb250LXdlaWdodDo3MDA7DQoJbGluZS1oZWlnaHQ6MjBweDsNCgltYXJnaW46MDsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCgl0ZXh0LXNoYWRvdzowIDJweCA1cHggcmdiYSgwLDAsMCwwLjUpOw0KCXdoaXRlLXNwYWNlOm5vd3JhcDsNCn0NCg0KLnRwLWNhcHRpb24ubWVkaXVtX3RleHQsLm1lZGl1bV90ZXh0DQp7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseTpBcmlhbDsNCglmb250LXNpemU6MjBweDsNCglmb250LXdlaWdodDo3MDA7DQoJbGluZS1oZWlnaHQ6MjBweDsNCgltYXJnaW46MDsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCgl0ZXh0LXNoYWRvdzowIDJweCA1cHggcmdiYSgwLDAsMCwwLjUpOw0KCXdoaXRlLXNwYWNlOm5vd3JhcDsNCn0NCg0KLnRwLWNhcHRpb24ubGFyZ2VfdGV4dCwubGFyZ2VfdGV4dA0Kew0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiNmZmY7DQoJZm9udC1mYW1pbHk6QXJpYWw7DQoJZm9udC1zaXplOjQwcHg7DQoJZm9udC13ZWlnaHQ6NzAwOw0KCWxpbmUtaGVpZ2h0OjQwcHg7DQoJbWFyZ2luOjA7DQoJcG9zaXRpb246YWJzb2x1dGU7DQoJdGV4dC1zaGFkb3c6MCAycHggNXB4IHJnYmEoMCwwLDAsMC41KTsNCgl3aGl0ZS1zcGFjZTpub3dyYXA7DQp9DQoNCi50cC1jYXB0aW9uLnZlcnlfbGFyZ2VfdGV4dCwudmVyeV9sYXJnZV90ZXh0DQp7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseTpBcmlhbDsNCglmb250LXNpemU6NjBweDsNCglmb250LXdlaWdodDo3MDA7DQoJbGV0dGVyLXNwYWNpbmc6LTJweDsNCglsaW5lLWhlaWdodDo2MHB4Ow0KCW1hcmdpbjowOw0KCXBvc2l0aW9uOmFic29sdXRlOw0KCXRleHQtc2hhZG93OjAgMnB4IDVweCByZ2JhKDAsMCwwLDAuNSk7DQoJd2hpdGUtc3BhY2U6bm93cmFwOw0KfQ0KDQoudHAtY2FwdGlvbi52ZXJ5X2JpZ193aGl0ZSwudmVyeV9iaWdfd2hpdGUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOiMwMDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseTpBcmlhbDsNCglmb250LXNpemU6NjBweDsNCglmb250LXdlaWdodDo4MDA7DQoJbGluZS1oZWlnaHQ6NjBweDsNCgltYXJnaW46MDsNCglwYWRkaW5nOjFweCA0cHggMDsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KCXdoaXRlLXNwYWNlOm5vd3JhcDsNCn0NCg0KLnRwLWNhcHRpb24udmVyeV9iaWdfYmxhY2ssLnZlcnlfYmlnX2JsYWNrDQp7DQoJYmFja2dyb3VuZC1jb2xvcjojZmZmOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiMwMDA7DQoJZm9udC1mYW1pbHk6QXJpYWw7DQoJZm9udC1zaXplOjYwcHg7DQoJZm9udC13ZWlnaHQ6NzAwOw0KCWxpbmUtaGVpZ2h0OjYwcHg7DQoJbWFyZ2luOjA7DQoJcGFkZGluZzoxcHggNHB4IDA7DQoJcG9zaXRpb246YWJzb2x1dGU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCgl3aGl0ZS1zcGFjZTpub3dyYXA7DQp9DQoNCi50cC1jYXB0aW9uLm1vZGVybl9tZWRpdW1fZmF0LC5tb2Rlcm5fbWVkaXVtX2ZhdA0Kew0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiMwMDA7DQoJZm9udC1mYW1pbHk6Ik9wZW4gU2FucyIsIHNhbnMtc2VyaWY7DQoJZm9udC1zaXplOjI0cHg7DQoJZm9udC13ZWlnaHQ6ODAwOw0KCWxpbmUtaGVpZ2h0OjIwcHg7DQoJbWFyZ2luOjA7DQoJcG9zaXRpb246YWJzb2x1dGU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCgl3aGl0ZS1zcGFjZTpub3dyYXA7DQp9DQoNCi50cC1jYXB0aW9uLm1vZGVybl9tZWRpdW1fZmF0X3doaXRlLC5tb2Rlcm5fbWVkaXVtX2ZhdF93aGl0ZQ0Kew0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiNmZmY7DQoJZm9udC1mYW1pbHk6Ik9wZW4gU2FucyIsIHNhbnMtc2VyaWY7DQoJZm9udC1zaXplOjI0cHg7DQoJZm9udC13ZWlnaHQ6ODAwOw0KCWxpbmUtaGVpZ2h0OjIwcHg7DQoJbWFyZ2luOjA7DQoJcG9zaXRpb246YWJzb2x1dGU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCgl3aGl0ZS1zcGFjZTpub3dyYXA7DQp9DQoNCi50cC1jYXB0aW9uLm1vZGVybl9tZWRpdW1fbGlnaHQsLm1vZGVybl9tZWRpdW1fbGlnaHQNCnsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjojMDAwOw0KCWZvbnQtZmFtaWx5OiJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOw0KCWZvbnQtc2l6ZToyNHB4Ow0KCWZvbnQtd2VpZ2h0OjMwMDsNCglsaW5lLWhlaWdodDoyMHB4Ow0KCW1hcmdpbjowOw0KCXBvc2l0aW9uOmFic29sdXRlOw0KCXRleHQtc2hhZG93Om5vbmU7DQoJd2hpdGUtc3BhY2U6bm93cmFwOw0KfQ0KDQoudHAtY2FwdGlvbi5tb2Rlcm5fYmlnX2JsdWViZywubW9kZXJuX2JpZ19ibHVlYmcNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOiM0ZTViNmM7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsNCglmb250LXNpemU6MzBweDsNCglmb250LXdlaWdodDo4MDA7DQoJbGV0dGVyLXNwYWNpbmc6MDsNCglsaW5lLWhlaWdodDozNnB4Ow0KCW1hcmdpbjowOw0KCXBhZGRpbmc6M3B4IDEwcHg7DQoJcG9zaXRpb246YWJzb2x1dGU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24ubW9kZXJuX2JpZ19yZWRiZywubW9kZXJuX2JpZ19yZWRiZw0Kew0KCWJhY2tncm91bmQtY29sb3I6I2RlNTQzZTsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjojZmZmOw0KCWZvbnQtZmFtaWx5OiJPcGVuIFNhbnMiLCBzYW5zLXNlcmlmOw0KCWZvbnQtc2l6ZTozMHB4Ow0KCWZvbnQtd2VpZ2h0OjMwMDsNCglsZXR0ZXItc3BhY2luZzowOw0KCWxpbmUtaGVpZ2h0OjM2cHg7DQoJbWFyZ2luOjA7DQoJcGFkZGluZzoxcHggMTBweCAzcHg7DQoJcG9zaXRpb246YWJzb2x1dGU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24ubW9kZXJuX3NtYWxsX3RleHRfZGFyaywubW9kZXJuX3NtYWxsX3RleHRfZGFyaw0Kew0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiM1NTU7DQoJZm9udC1mYW1pbHk6QXJpYWw7DQoJZm9udC1zaXplOjE0cHg7DQoJbGluZS1oZWlnaHQ6MjJweDsNCgltYXJnaW46MDsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KCXdoaXRlLXNwYWNlOm5vd3JhcDsNCn0NCg0KLnRwLWNhcHRpb24uYm94c2hhZG93LC5ib3hzaGFkb3cNCnsJCQ0KCWJveC1zaGFkb3c6MCAwIDIwcHggcmdiYSgwLDAsMCwwLjUpOw0KfQ0KDQoudHAtY2FwdGlvbi5ibGFjaywuYmxhY2sNCnsNCgljb2xvcjojMDAwOw0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLm5vc2hhZG93LC5ub3NoYWRvdw0Kew0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLnRoaW5oZWFkbGluZV9kYXJrLC50aGluaGVhZGxpbmVfZGFyaw0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJY29sb3I6cmdiYSgwLDAsMCwwLjg1KTsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIjsNCglmb250LXNpemU6MzBweDsNCglmb250LXdlaWdodDozMDA7DQoJbGluZS1oZWlnaHQ6MzBweDsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi50aGludGV4dF9kYXJrLC50aGludGV4dF9kYXJrDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCgljb2xvcjpyZ2JhKDAsMCwwLDAuODUpOw0KCWZvbnQtZmFtaWx5OiJPcGVuIFNhbnMiOw0KCWZvbnQtc2l6ZToxNnB4Ow0KCWZvbnQtd2VpZ2h0OjMwMDsNCglsaW5lLWhlaWdodDoyNnB4Ow0KCXBvc2l0aW9uOmFic29sdXRlOw0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLmxhcmdlYmxhY2tiZywubGFyZ2VibGFja2JnDQp7DQoJDQoJDQoJYmFja2dyb3VuZC1jb2xvcjojMDAwOw0KCWJvcmRlci1yYWRpdXM6MDsNCgljb2xvcjojZmZmOw0KCWZvbnQtZmFtaWx5OiJPcGVuIFNhbnMiOw0KCWZvbnQtc2l6ZTo1MHB4Ow0KCWZvbnQtd2VpZ2h0OjMwMDsNCglsaW5lLWhlaWdodDo3MHB4Ow0KCXBhZGRpbmc6MCAyMHB4Ow0KCXBvc2l0aW9uOmFic29sdXRlOw0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLmxhcmdlcGlua2JnLC5sYXJnZXBpbmtiZw0Kew0KCQ0KCQ0KCWJhY2tncm91bmQtY29sb3I6I2RiNDM2MDsNCglib3JkZXItcmFkaXVzOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIjsNCglmb250LXNpemU6NTBweDsNCglmb250LXdlaWdodDozMDA7DQoJbGluZS1oZWlnaHQ6NzBweDsNCglwYWRkaW5nOjAgMjBweDsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5sYXJnZXdoaXRlYmcsLmxhcmdld2hpdGViZw0Kew0KCQ0KCQ0KCWJhY2tncm91bmQtY29sb3I6I2ZmZjsNCglib3JkZXItcmFkaXVzOjA7DQoJY29sb3I6IzAwMDsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIjsNCglmb250LXNpemU6NTBweDsNCglmb250LXdlaWdodDozMDA7DQoJbGluZS1oZWlnaHQ6NzBweDsNCglwYWRkaW5nOjAgMjBweDsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5sYXJnZWdyZWVuYmcsLmxhcmdlZ3JlZW5iZw0Kew0KCQ0KCQ0KCWJhY2tncm91bmQtY29sb3I6IzY3YWU3MzsNCglib3JkZXItcmFkaXVzOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIjsNCglmb250LXNpemU6NTBweDsNCglmb250LXdlaWdodDozMDA7DQoJbGluZS1oZWlnaHQ6NzBweDsNCglwYWRkaW5nOjAgMjBweDsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5leGNlcnB0LC5leGNlcnB0DQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDEpOw0KCWJvcmRlci1jb2xvcjojZmZmOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiNmZmY7DQoJZm9udC1mYW1pbHk6QXJpYWw7DQoJZm9udC1zaXplOjM2cHg7DQoJZm9udC13ZWlnaHQ6NzAwOw0KCWhlaWdodDphdXRvOw0KCWxldHRlci1zcGFjaW5nOi0xLjVweDsNCglsaW5lLWhlaWdodDozNnB4Ow0KCW1hcmdpbjowOw0KCXBhZGRpbmc6MXB4IDRweCAwOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KCXRleHQtc2hhZG93Om5vbmU7DQoJd2hpdGUtc3BhY2U6bm9ybWFsIWltcG9ydGFudDsNCgl3aWR0aDoxNTBweDsNCn0NCg0KLnRwLWNhcHRpb24ubGFyZ2VfYm9sZF9ncmV5LC5sYXJnZV9ib2xkX2dyZXkNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjojZmZkNjU4Ow0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiM2NjY7DQoJZm9udC1mYW1pbHk6Ik9wZW4gU2FucyI7DQoJZm9udC1zaXplOjYwcHg7DQoJZm9udC13ZWlnaHQ6ODAwOw0KCWxpbmUtaGVpZ2h0OjYwcHg7DQoJbWFyZ2luOjA7DQoJcGFkZGluZzoxcHggNHB4IDA7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24ubWVkaXVtX3RoaW5fZ3JleSwubWVkaXVtX3RoaW5fZ3JleQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOiNmZmQ2NTg7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6IzY2NjsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIjsNCglmb250LXNpemU6MzRweDsNCglmb250LXdlaWdodDozMDA7DQoJbGluZS1oZWlnaHQ6MzBweDsNCgltYXJnaW46MDsNCglwYWRkaW5nOjFweCA0cHggMDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5zbWFsbF90aGluX2dyZXksLnNtYWxsX3RoaW5fZ3JleQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOiNmZmQ2NTg7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6Izc1NzU3NTsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIjsNCglmb250LXNpemU6MThweDsNCglmb250LXdlaWdodDozMDA7DQoJbGluZS1oZWlnaHQ6MjZweDsNCgltYXJnaW46MDsNCglwYWRkaW5nOjFweCA0cHggMDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5saWdodGdyZXlfZGl2aWRlciwubGlnaHRncmV5X2RpdmlkZXINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjM1LDIzNSwyMzUsMSk7DQoJYmFja2dyb3VuZC1wb3NpdGlvbjppbml0aWFsOw0KCWJhY2tncm91bmQtcmVwZWF0OmluaXRpYWw7DQoJYm9yZGVyLWNvbG9yOiMyMjI7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJaGVpZ2h0OjNweDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCgl3aWR0aDozNzBweDsNCn0NCg0KLnRwLWNhcHRpb24ubGFyZ2VfYm9sZF9kYXJrYmx1ZSwubGFyZ2VfYm9sZF9kYXJrYmx1ZQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOiNmZmQ2NTg7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6IzM0NDk1ZTsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIjsNCglmb250LXNpemU6NThweDsNCglmb250LXdlaWdodDo4MDA7DQoJbGluZS1oZWlnaHQ6NjBweDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24ubWVkaXVtX2JnX2RhcmtibHVlLC5tZWRpdW1fYmdfZGFya2JsdWUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOiMzNDQ5NWU7DQoJYm9yZGVyLWNvbG9yOiNmZmQ2NTg7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIjsNCglmb250LXNpemU6MjBweDsNCglmb250LXdlaWdodDo4MDA7DQoJbGluZS1oZWlnaHQ6MjBweDsNCglwYWRkaW5nOjEwcHg7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLm1lZGl1bV9ib2xkX3JlZCwubWVkaXVtX2JvbGRfcmVkDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6I2ZmZDY1ODsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjojZTMzYTBjOw0KCWZvbnQtZmFtaWx5OiJPcGVuIFNhbnMiOw0KCWZvbnQtc2l6ZToyNHB4Ow0KCWZvbnQtd2VpZ2h0OjgwMDsNCglsaW5lLWhlaWdodDozMHB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24ubWVkaXVtX2xpZ2h0X3JlZCwubWVkaXVtX2xpZ2h0X3JlZA0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOiNmZmQ2NTg7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2UzM2EwYzsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIjsNCglmb250LXNpemU6MjFweDsNCglmb250LXdlaWdodDozMDA7DQoJbGluZS1oZWlnaHQ6MjZweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLm1lZGl1bV9iZ19yZWQsLm1lZGl1bV9iZ19yZWQNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOiNlMzNhMGM7DQoJYm9yZGVyLWNvbG9yOiNmZmQ2NTg7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIjsNCglmb250LXNpemU6MjBweDsNCglmb250LXdlaWdodDo4MDA7DQoJbGluZS1oZWlnaHQ6MjBweDsNCglwYWRkaW5nOjEwcHg7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLm1lZGl1bV9ib2xkX29yYW5nZSwubWVkaXVtX2JvbGRfb3JhbmdlDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6I2ZmZDY1ODsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjojZjM5YzEyOw0KCWZvbnQtZmFtaWx5OiJPcGVuIFNhbnMiOw0KCWZvbnQtc2l6ZToyNHB4Ow0KCWZvbnQtd2VpZ2h0OjgwMDsNCglsaW5lLWhlaWdodDozMHB4Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5tZWRpdW1fYmdfb3JhbmdlLC5tZWRpdW1fYmdfb3JhbmdlDQp7DQoJYmFja2dyb3VuZC1jb2xvcjojZjM5YzEyOw0KCWJvcmRlci1jb2xvcjojZmZkNjU4Ow0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiNmZmY7DQoJZm9udC1mYW1pbHk6Ik9wZW4gU2FucyI7DQoJZm9udC1zaXplOjIwcHg7DQoJZm9udC13ZWlnaHQ6ODAwOw0KCWxpbmUtaGVpZ2h0OjIwcHg7DQoJcGFkZGluZzoxMHB4Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5ncmFzc2Zsb29yLC5ncmFzc2Zsb29yDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDE2MCwxNzksMTUxLDEpOw0KCWJvcmRlci1jb2xvcjojMjIyOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWhlaWdodDoxNTBweDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCgl3aWR0aDo0MDAwcHg7DQp9DQoNCi50cC1jYXB0aW9uLmxhcmdlX2JvbGRfd2hpdGUsLmxhcmdlX2JvbGRfd2hpdGUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjojZmZkNjU4Ow0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiNmZmY7DQoJZm9udC1mYW1pbHk6Ik9wZW4gU2FucyI7DQoJZm9udC1zaXplOjU4cHg7DQoJZm9udC13ZWlnaHQ6ODAwOw0KCWxpbmUtaGVpZ2h0OjYwcHg7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLm1lZGl1bV9saWdodF93aGl0ZSwubWVkaXVtX2xpZ2h0X3doaXRlDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6I2ZmZDY1ODsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjojZmZmOw0KCWZvbnQtZmFtaWx5OiJPcGVuIFNhbnMiOw0KCWZvbnQtc2l6ZTozMHB4Ow0KCWZvbnQtd2VpZ2h0OjMwMDsNCglsaW5lLWhlaWdodDozNnB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24ubWVkaXVtbGFyZ2VfbGlnaHRfd2hpdGUsLm1lZGl1bWxhcmdlX2xpZ2h0X3doaXRlDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6I2ZmZDY1ODsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjojZmZmOw0KCWZvbnQtZmFtaWx5OiJPcGVuIFNhbnMiOw0KCWZvbnQtc2l6ZTozNHB4Ow0KCWZvbnQtd2VpZ2h0OjMwMDsNCglsaW5lLWhlaWdodDo0MHB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24ubWVkaXVtbGFyZ2VfbGlnaHRfd2hpdGVfY2VudGVyLC5tZWRpdW1sYXJnZV9saWdodF93aGl0ZV9jZW50ZXINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjojZmZkNjU4Ow0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiNmZmY7DQoJZm9udC1mYW1pbHk6Ik9wZW4gU2FucyI7DQoJZm9udC1zaXplOjM0cHg7DQoJZm9udC13ZWlnaHQ6MzAwOw0KCWxpbmUtaGVpZ2h0OjQwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtYWxpZ246Y2VudGVyOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5tZWRpdW1fYmdfYXNiZXN0b3MsLm1lZGl1bV9iZ19hc2Jlc3Rvcw0Kew0KCWJhY2tncm91bmQtY29sb3I6IzdmOGM4ZDsNCglib3JkZXItY29sb3I6I2ZmZDY1ODsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjojZmZmOw0KCWZvbnQtZmFtaWx5OiJPcGVuIFNhbnMiOw0KCWZvbnQtc2l6ZToyMHB4Ow0KCWZvbnQtd2VpZ2h0OjgwMDsNCglsaW5lLWhlaWdodDoyMHB4Ow0KCXBhZGRpbmc6MTBweDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24ubWVkaXVtX2xpZ2h0X2JsYWNrLC5tZWRpdW1fbGlnaHRfYmxhY2sNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjojZmZkNjU4Ow0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiMwMDA7DQoJZm9udC1mYW1pbHk6Ik9wZW4gU2FucyI7DQoJZm9udC1zaXplOjMwcHg7DQoJZm9udC13ZWlnaHQ6MzAwOw0KCWxpbmUtaGVpZ2h0OjM2cHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5sYXJnZV9ib2xkX2JsYWNrLC5sYXJnZV9ib2xkX2JsYWNrDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6I2ZmZDY1ODsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjojMDAwOw0KCWZvbnQtZmFtaWx5OiJPcGVuIFNhbnMiOw0KCWZvbnQtc2l6ZTo1OHB4Ow0KCWZvbnQtd2VpZ2h0OjgwMDsNCglsaW5lLWhlaWdodDo2MHB4Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5tZWRpdW1sYXJnZV9saWdodF9kYXJrYmx1ZSwubWVkaXVtbGFyZ2VfbGlnaHRfZGFya2JsdWUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjojZmZkNjU4Ow0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiMzNDQ5NWU7DQoJZm9udC1mYW1pbHk6Ik9wZW4gU2FucyI7DQoJZm9udC1zaXplOjM0cHg7DQoJZm9udC13ZWlnaHQ6MzAwOw0KCWxpbmUtaGVpZ2h0OjQwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5zbWFsbF9saWdodF93aGl0ZSwuc21hbGxfbGlnaHRfd2hpdGUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjojZmZkNjU4Ow0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiNmZmY7DQoJZm9udC1mYW1pbHk6Ik9wZW4gU2FucyI7DQoJZm9udC1zaXplOjE3cHg7DQoJZm9udC13ZWlnaHQ6MzAwOw0KCWxpbmUtaGVpZ2h0OjI4cHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5yb3VuZGVkaW1hZ2UsLnJvdW5kZWRpbWFnZQ0Kew0KCWJvcmRlci1jb2xvcjojMjIyOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KfQ0KDQoudHAtY2FwdGlvbi5sYXJnZV9iZ19ibGFjaywubGFyZ2VfYmdfYmxhY2sNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOiMwMDA7DQoJYm9yZGVyLWNvbG9yOiNmZmQ2NTg7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseToiT3BlbiBTYW5zIjsNCglmb250LXNpemU6NDBweDsNCglmb250LXdlaWdodDo4MDA7DQoJbGluZS1oZWlnaHQ6NDBweDsNCglwYWRkaW5nOjEwcHggMjBweCAxNXB4Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5tZWRpdW13aGl0ZWJnLC5tZWRpdW13aGl0ZWJnDQp7DQoJYmFja2dyb3VuZC1jb2xvcjojZmZmOw0KCWJvcmRlci1jb2xvcjojMDAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiMwMDA7DQoJZm9udC1mYW1pbHk6Ik9wZW4gU2FucyI7DQoJZm9udC1zaXplOjMwcHg7DQoJZm9udC13ZWlnaHQ6MzAwOw0KCWxpbmUtaGVpZ2h0OjMwcHg7DQoJcGFkZGluZzo1cHggMTVweCAxMHB4Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLm1haW5jYXB0aW9uLC5tYWluY2FwdGlvbg0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOiMwMDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6IzIxMmE0MDsNCglmb250LWZhbWlseTpyb2JvdG87DQoJZm9udC1zaXplOjMzcHg7DQoJZm9udC13ZWlnaHQ6NTAwOw0KCWxpbmUtaGVpZ2h0OjQzcHg7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24ubWlhbWlfdGl0bGVfNjBweCwubWlhbWlfdGl0bGVfNjBweA0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOiMwMDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseToiU291cmNlIFNhbnMgUHJvIjsNCglmb250LXNpemU6NjBweDsNCglmb250LXdlaWdodDo3MDA7DQoJbGV0dGVyLXNwYWNpbmc6MXB4Ow0KCWxpbmUtaGVpZ2h0OjYwcHg7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24ubWlhbWlfc3VidGl0bGUsLm1pYW1pX3N1YnRpdGxlDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6IzAwMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNjUpOw0KCWZvbnQtZmFtaWx5OiJTb3VyY2UgU2FucyBQcm8iOw0KCWZvbnQtc2l6ZToxN3B4Ow0KCWZvbnQtd2VpZ2h0OjQwMDsNCglsZXR0ZXItc3BhY2luZzoycHg7DQoJbGluZS1oZWlnaHQ6MjRweDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5kaXZpZGVsaW5lMzBweCwuZGl2aWRlbGluZTMwcHgNCnsNCgliYWNrZ3JvdW5kOiNmZmY7DQoJYmFja2dyb3VuZC1jb2xvcjojZmZmOw0KCWJvcmRlci1jb2xvcjojMjIyOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWhlaWdodDoycHg7DQoJbWluLXdpZHRoOjMwcHg7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLk1pYW1pX25vc3R5bGUsLk1pYW1pX25vc3R5bGUNCnsNCglib3JkZXItY29sb3I6IzIyMjsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCn0NCg0KLnRwLWNhcHRpb24ubWlhbWlfY29udGVudF9saWdodCwubWlhbWlfY29udGVudF9saWdodA0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOiMwMDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseToiU291cmNlIFNhbnMgUHJvIjsNCglmb250LXNpemU6MjJweDsNCglmb250LXdlaWdodDo0MDA7DQoJbGV0dGVyLXNwYWNpbmc6MDsNCglsaW5lLWhlaWdodDoyOHB4Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLm1pYW1pX3RpdGxlXzYwcHhfZGFyaywubWlhbWlfdGl0bGVfNjBweF9kYXJrDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6IzAwMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjojMzMzOw0KCWZvbnQtZmFtaWx5OiJTb3VyY2UgU2FucyBQcm8iOw0KCWZvbnQtc2l6ZTo2MHB4Ow0KCWZvbnQtd2VpZ2h0OjcwMDsNCglsZXR0ZXItc3BhY2luZzoxcHg7DQoJbGluZS1oZWlnaHQ6NjBweDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5taWFtaV9jb250ZW50X2RhcmssLm1pYW1pX2NvbnRlbnRfZGFyaw0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOiMwMDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6IzY2NjsNCglmb250LWZhbWlseToiU291cmNlIFNhbnMgUHJvIjsNCglmb250LXNpemU6MjJweDsNCglmb250LXdlaWdodDo0MDA7DQoJbGV0dGVyLXNwYWNpbmc6MDsNCglsaW5lLWhlaWdodDoyOHB4Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLmRpdmlkZWxpbmUzMHB4X2RhcmssLmRpdmlkZWxpbmUzMHB4X2RhcmsNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOiMzMzM7DQoJYm9yZGVyLWNvbG9yOiMyMjI7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJaGVpZ2h0OjJweDsNCgltaW4td2lkdGg6MzBweDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uZWxsaXBzZTcwcHgsLmVsbGlwc2U3MHB4DQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTQ5MDIpOw0KCWJvcmRlci1jb2xvcjojMjIyOw0KCWJvcmRlci1yYWRpdXM6NTBweCA1MHB4IDUwcHggNTBweDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljdXJzb3I6cG9pbnRlcjsNCglsaW5lLWhlaWdodDoxcHg7DQoJbWluLWhlaWdodDo3MHB4Ow0KCW1pbi13aWR0aDo3MHB4Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5hcnJvd2ljb24sLmFycm93aWNvbg0Kew0KCWJvcmRlci1jb2xvcjojMjIyOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWxpbmUtaGVpZ2h0OjFweDsNCn0NCg0KLnRwLWNhcHRpb24uTWFya2VyRGlzcGxheSwuTWFya2VyRGlzcGxheQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOiMwMDA7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWZvbnQtZmFtaWx5OiJQZXJtYW5lbnQgTWFya2VyIjsNCglmb250LXN0eWxlOm5vcm1hbDsNCglwYWRkaW5nOjA7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uUmVzdGF1cmFudC1EaXNwbGF5LC5SZXN0YXVyYW50LURpc3BsYXkNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseTpSb2JvdG87DQoJZm9udC1zaXplOjEyMHB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjcwMDsNCglsaW5lLWhlaWdodDoxMjBweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlJlc3RhdXJhbnQtQ3Vyc2l2ZSwuUmVzdGF1cmFudC1DdXJzaXZlDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiNmZmY7DQoJZm9udC1mYW1pbHk6Ik5vdGhpbmcgeW91IGNvdWxkIGRvIjsNCglmb250LXNpemU6MzBweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo0MDA7DQoJbGV0dGVyLXNwYWNpbmc6MnB4Ow0KCWxpbmUtaGVpZ2h0OjMwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5SZXN0YXVyYW50LVNjcm9sbERvd25UZXh0LC5SZXN0YXVyYW50LVNjcm9sbERvd25UZXh0DQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOiNmZmY7DQoJZm9udC1mYW1pbHk6Um9ib3RvOw0KCWZvbnQtc2l6ZToxN3B4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjQwMDsNCglsZXR0ZXItc3BhY2luZzoycHg7DQoJbGluZS1oZWlnaHQ6MTdweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlJlc3RhdXJhbnQtRGVzY3JpcHRpb24sLlJlc3RhdXJhbnQtRGVzY3JpcHRpb24NCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6I2ZmZjsNCglmb250LWZhbWlseTpSb2JvdG87DQoJZm9udC1zaXplOjIwcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6MzAwOw0KCWxldHRlci1zcGFjaW5nOjNweDsNCglsaW5lLWhlaWdodDozMHB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uUmVzdGF1cmFudC1QcmljZSwuUmVzdGF1cmFudC1QcmljZQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjojZmZmOw0KCWZvbnQtZmFtaWx5OlJvYm90bzsNCglmb250LXNpemU6MzBweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDozMDA7DQoJbGV0dGVyLXNwYWNpbmc6M3B4Ow0KCWxpbmUtaGVpZ2h0OjMwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5SZXN0YXVyYW50LU1lbnVpdGVtLC5SZXN0YXVyYW50LU1lbnVpdGVtDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDEuMDApOw0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSb2JvdG87DQoJZm9udC1zaXplOjE3cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NDAwOw0KCWxldHRlci1zcGFjaW5nOjJweDsNCglsaW5lLWhlaWdodDoxN3B4Ow0KCXBhZGRpbmc6MTBweCAzMHB4Ow0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uRnVybml0dXJlLUxvZ29UZXh0LC5GdXJuaXR1cmUtTG9nb1RleHQNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyMzAsMjA3LDE2MywxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZToxNjBweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDozMDA7DQoJbGluZS1oZWlnaHQ6MTUwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLkZ1cm5pdHVyZS1QbHVzLC5GdXJuaXR1cmUtUGx1cw0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czozMHB4IDMwcHggMzBweCAzMHB4Ow0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWJveC1zaGFkb3c6cmdiYSgwLDAsMCwwLjEpIDAgMXB4IDNweDsNCgljb2xvcjpyZ2JhKDIzMCwyMDcsMTYzLDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjIwcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NDAwOw0KCWxpbmUtaGVpZ2h0OjIwcHg7DQoJcGFkZGluZzo2cHggN3B4IDRweDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5GdXJuaXR1cmUtVGl0bGUsLkZ1cm5pdHVyZS1UaXRsZQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDAsMCwwLDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjIwcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NzAwOw0KCWxldHRlci1zcGFjaW5nOjNweDsNCglsaW5lLWhlaWdodDoyMHB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCgl0ZXh0LXNoYWRvdzpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5GdXJuaXR1cmUtU3VidGl0bGUsLkZ1cm5pdHVyZS1TdWJ0aXRsZQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDAsMCwwLDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjE3cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6MzAwOw0KCWxpbmUtaGVpZ2h0OjIwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLkd5bS1EaXNwbGF5LC5HeW0tRGlzcGxheQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjgwcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6OTAwOw0KCWxpbmUtaGVpZ2h0OjcwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5HeW0tU3VibGluZSwuR3ltLVN1YmxpbmUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZTozMHB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjEwMDsNCglsZXR0ZXItc3BhY2luZzo1cHg7DQoJbGluZS1oZWlnaHQ6MzBweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLkd5bS1TbWFsbFRleHQsLkd5bS1TbWFsbFRleHQNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZToxN3B4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjMwMDsNCglsaW5lLWhlaWdodDoyMjsNCglwYWRkaW5nOjA7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uRmFzaGlvbi1TbWFsbFRleHQsLkZhc2hpb24tU21hbGxUZXh0DQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6MTJweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo2MDA7DQoJbGV0dGVyLXNwYWNpbmc6MnB4Ow0KCWxpbmUtaGVpZ2h0OjIwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5GYXNoaW9uLUJpZ0Rpc3BsYXksLkZhc2hpb24tQmlnRGlzcGxheQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDAsMCwwLDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjYwcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6OTAwOw0KCWxldHRlci1zcGFjaW5nOjJweDsNCglsaW5lLWhlaWdodDo2MHB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uRmFzaGlvbi1UZXh0QmxvY2ssLkZhc2hpb24tVGV4dEJsb2NrDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMCwwLDAsMS4wMCk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6MjBweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo0MDA7DQoJbGV0dGVyLXNwYWNpbmc6MnB4Ow0KCWxpbmUtaGVpZ2h0OjQwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5TcG9ydHMtRGlzcGxheSwuU3BvcnRzLURpc3BsYXkNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZToxMzBweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDoxMDA7DQoJbGV0dGVyLXNwYWNpbmc6MTNweDsNCglsaW5lLWhlaWdodDoxMzBweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlNwb3J0cy1EaXNwbGF5RmF0LC5TcG9ydHMtRGlzcGxheUZhdA0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjEzMHB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjkwMDsNCglsaW5lLWhlaWdodDoxMzBweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlNwb3J0cy1TdWJsaW5lLC5TcG9ydHMtU3VibGluZQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDAsMCwwLDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjMycHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NDAwOw0KCWxldHRlci1zcGFjaW5nOjRweDsNCglsaW5lLWhlaWdodDozMnB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uSW5zdGFncmFtLUNhcHRpb24sLkluc3RhZ3JhbS1DYXB0aW9uDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6Um9ib3RvOw0KCWZvbnQtc2l6ZToyMHB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjkwMDsNCglsaW5lLWhlaWdodDoyMHB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTmV3cy1UaXRsZSwuTmV3cy1UaXRsZQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OiJSb2JvdG8gU2xhYiI7DQoJZm9udC1zaXplOjcwcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NDAwOw0KCWxpbmUtaGVpZ2h0OjYwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5OZXdzLVN1YnRpdGxlLC5OZXdzLVN1YnRpdGxlDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDApOw0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseToiUm9ib3RvIFNsYWIiOw0KCWZvbnQtc2l6ZToxNXB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjMwMDsNCglsaW5lLWhlaWdodDoyNHB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTmV3cy1TdWJ0aXRsZTpob3ZlciwuTmV3cy1TdWJ0aXRsZTpob3Zlcg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwKTsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpzb2xpZDsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNjUpOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5QaG90b2dyYXBoeS1EaXNwbGF5LC5QaG90b2dyYXBoeS1EaXNwbGF5DQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6ODBweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDoxMDA7DQoJbGV0dGVyLXNwYWNpbmc6NXB4Ow0KCWxpbmUtaGVpZ2h0OjcwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5QaG90b2dyYXBoeS1TdWJsaW5lLC5QaG90b2dyYXBoeS1TdWJsaW5lDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMTE5LDExOSwxMTksMS4wMCk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6MjBweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDozMDA7DQoJbGV0dGVyLXNwYWNpbmc6M3B4Ow0KCWxpbmUtaGVpZ2h0OjMwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5QaG90b2dyYXBoeS1JbWFnZUhvdmVyLC5QaG90b2dyYXBoeS1JbWFnZUhvdmVyDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwKTsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LXNpemU6MjBweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo0MDA7DQoJbGluZS1oZWlnaHQ6MjI7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5QaG90b2dyYXBoeS1JbWFnZUhvdmVyOmhvdmVyLC5QaG90b2dyYXBoeS1JbWFnZUhvdmVyOmhvdmVyDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlBob3RvZ3JhcGh5LU1lbnVpdGVtLC5QaG90b2dyYXBoeS1NZW51aXRlbQ0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjY1KTsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6MjBweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDozMDA7DQoJbGV0dGVyLXNwYWNpbmc6MnB4Ow0KCWxpbmUtaGVpZ2h0OjIwcHg7DQoJcGFkZGluZzozcHggNXB4IDNweCA4cHg7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlBob3RvZ3JhcGh5LU1lbnVpdGVtOmhvdmVyLC5QaG90b2dyYXBoeS1NZW51aXRlbTpob3Zlcg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgwLDI1NSwyMjIsMC42NSk7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5QaG90b2dyYXBoeS1UZXh0YmxvY2ssLlBob3RvZ3JhcGh5LVRleHRibG9jaw0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjE3cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6MzAwOw0KCWxldHRlci1zcGFjaW5nOjJweDsNCglsaW5lLWhlaWdodDozMHB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uUGhvdG9ncmFwaHktU3VibGluZS0yLC5QaG90b2dyYXBoeS1TdWJsaW5lLTINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjM1KTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZToyMHB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjMwMDsNCglsZXR0ZXItc3BhY2luZzozcHg7DQoJbGluZS1oZWlnaHQ6MzBweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlBob3RvZ3JhcGh5LUltYWdlSG92ZXIyLC5QaG90b2dyYXBoeS1JbWFnZUhvdmVyMg0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMCk7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6QXJpYWw7DQoJZm9udC1zaXplOjIwcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NDAwOw0KCWxpbmUtaGVpZ2h0OjIyOw0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uUGhvdG9ncmFwaHktSW1hZ2VIb3ZlcjI6aG92ZXIsLlBob3RvZ3JhcGh5LUltYWdlSG92ZXIyOmhvdmVyDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLldlYlByb2R1Y3QtVGl0bGUsLldlYlByb2R1Y3QtVGl0bGUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSg1MSw1MSw1MSwxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZTo5MHB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjEwMDsNCglsaW5lLWhlaWdodDo5MHB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uV2ViUHJvZHVjdC1TdWJUaXRsZSwuV2ViUHJvZHVjdC1TdWJUaXRsZQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDE1MywxNTMsMTUzLDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjE1cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NDAwOw0KCWxpbmUtaGVpZ2h0OjIwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5XZWJQcm9kdWN0LUNvbnRlbnQsLldlYlByb2R1Y3QtQ29udGVudA0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDE1MywxNTMsMTUzLDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjE2cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NjAwOw0KCWxpbmUtaGVpZ2h0OjI0cHg7DQoJcGFkZGluZzowOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5XZWJQcm9kdWN0LU1lbnVpdGVtLC5XZWJQcm9kdWN0LU1lbnVpdGVtDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDUxLDUxLDUxLDEuMDApOw0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZToxNXB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjUwMDsNCglsZXR0ZXItc3BhY2luZzoycHg7DQoJbGluZS1oZWlnaHQ6MjBweDsNCglwYWRkaW5nOjNweCA1cHggM3B4IDhweDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLldlYlByb2R1Y3QtTWVudWl0ZW06aG92ZXIsLldlYlByb2R1Y3QtTWVudWl0ZW06aG92ZXINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDE1MywxNTMsMTUzLDEuMDApOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5XZWJQcm9kdWN0LVRpdGxlLUxpZ2h0LC5XZWJQcm9kdWN0LVRpdGxlLUxpZ2h0DQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6OTBweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDoxMDA7DQoJbGluZS1oZWlnaHQ6OTBweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5XZWJQcm9kdWN0LVN1YlRpdGxlLUxpZ2h0LC5XZWJQcm9kdWN0LVN1YlRpdGxlLUxpZ2h0DQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4zNSk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6MTVweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo0MDA7DQoJbGluZS1oZWlnaHQ6MjBweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5XZWJQcm9kdWN0LUNvbnRlbnQtTGlnaHQsLldlYlByb2R1Y3QtQ29udGVudC1MaWdodA0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNjUpOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjE2cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NjAwOw0KCWxpbmUtaGVpZ2h0OjI0cHg7DQoJcGFkZGluZzowOw0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uRmF0Um91bmRlZCwuRmF0Um91bmRlZA0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjUwKTsNCglib3JkZXItY29sb3I6cmdiYSgyMTEsMjExLDIxMSwxLjAwKTsNCglib3JkZXItcmFkaXVzOjUwcHggNTBweCA1MHB4IDUwcHg7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZTozMHB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjkwMDsNCglsaW5lLWhlaWdodDozMHB4Ow0KCXBhZGRpbmc6MjBweCAyMnB4IDIwcHggMjVweDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uRmF0Um91bmRlZDpob3ZlciwuRmF0Um91bmRlZDpob3Zlcg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwxLjAwKTsNCglib3JkZXItY29sb3I6cmdiYSgyMTEsMjExLDIxMSwxLjAwKTsNCglib3JkZXItcmFkaXVzOjUwcHggNTBweCA1MHB4IDUwcHg7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTm90R2VuZXJpYy1UaXRsZSwuTm90R2VuZXJpYy1UaXRsZQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjcwcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6ODAwOw0KCWxpbmUtaGVpZ2h0OjcwcHg7DQoJcGFkZGluZzoxMHB4IDA7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLk5vdEdlbmVyaWMtU3ViVGl0bGUsLk5vdEdlbmVyaWMtU3ViVGl0bGUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZToxM3B4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjUwMDsNCglsZXR0ZXItc3BhY2luZzo0cHg7DQoJbGluZS1oZWlnaHQ6MjBweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5Ob3RHZW5lcmljLUNhbGxUb0FjdGlvbiwuTm90R2VuZXJpYy1DYWxsVG9BY3Rpb24NCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMCk7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41MCk7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpzb2xpZDsNCglib3JkZXItd2lkdGg6MXB4Ow0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6MTRweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo1MDA7DQoJbGV0dGVyLXNwYWNpbmc6M3B4Ow0KCWxpbmUtaGVpZ2h0OjE0cHg7DQoJcGFkZGluZzoxMHB4IDMwcHg7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5Ob3RHZW5lcmljLUNhbGxUb0FjdGlvbjpob3ZlciwuTm90R2VuZXJpYy1DYWxsVG9BY3Rpb246aG92ZXINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjFweDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5Ob3RHZW5lcmljLUljb24sLk5vdEdlbmVyaWMtSWNvbg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwKTsNCglib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwKTsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6MzBweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo0MDA7DQoJbGV0dGVyLXNwYWNpbmc6M3B4Ow0KCWxpbmUtaGVpZ2h0OjMwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTm90R2VuZXJpYy1NZW51aXRlbSwuTm90R2VuZXJpYy1NZW51aXRlbQ0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwKTsNCglib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjE1KTsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDoxcHg7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZToxNHB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjUwMDsNCglsZXR0ZXItc3BhY2luZzozcHg7DQoJbGluZS1oZWlnaHQ6MTRweDsNCglwYWRkaW5nOjI3cHggMzBweDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLk5vdEdlbmVyaWMtTWVudWl0ZW06aG92ZXIsLk5vdEdlbmVyaWMtTWVudWl0ZW06aG92ZXINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMCk7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpzb2xpZDsNCglib3JkZXItd2lkdGg6MXB4Ow0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLk1hcmtlclN0eWxlLC5NYXJrZXJTdHlsZQ0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OiJQZXJtYW5lbnQgTWFya2VyIjsNCglmb250LXNpemU6MTdweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDoxMDA7DQoJbGluZS1oZWlnaHQ6MzBweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5HeW0tTWVudWl0ZW0sLkd5bS1NZW51aXRlbQ0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwxLjAwKTsNCglib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwKTsNCglib3JkZXItcmFkaXVzOjNweCAzcHggM3B4IDNweDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjJweDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjIwcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6MzAwOw0KCWxldHRlci1zcGFjaW5nOjJweDsNCglsaW5lLWhlaWdodDoyMHB4Ow0KCXBhZGRpbmc6M3B4IDVweCAzcHggOHB4Ow0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uR3ltLU1lbnVpdGVtOmhvdmVyLC5HeW0tTWVudWl0ZW06aG92ZXINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMS4wMCk7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4yNSk7DQoJYm9yZGVyLXJhZGl1czozcHggM3B4IDNweCAzcHg7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDoycHg7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTmV3c3BhcGVyLUJ1dHRvbiwuTmV3c3BhcGVyLUJ1dHRvbg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwKTsNCglib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjI1KTsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDoxcHg7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSb2JvdG87DQoJZm9udC1zaXplOjEzcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NzAwOw0KCWxldHRlci1zcGFjaW5nOjJweDsNCglsaW5lLWhlaWdodDoxN3B4Ow0KCXBhZGRpbmc6MTJweCAzNXB4Ow0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTmV3c3BhcGVyLUJ1dHRvbjpob3ZlciwuTmV3c3BhcGVyLUJ1dHRvbjpob3Zlcg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDoxcHg7DQoJY29sb3I6cmdiYSgwLDAsMCwxLjAwKTsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTmV3c3BhcGVyLVN1YnRpdGxlLC5OZXdzcGFwZXItU3VidGl0bGUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgxNjgsMjE2LDIzOCwxLjAwKTsNCglmb250LWZhbWlseTpSb2JvdG87DQoJZm9udC1zaXplOjE1cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6OTAwOw0KCWxpbmUtaGVpZ2h0OjIwcHg7DQoJcGFkZGluZzowOw0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTmV3c3BhcGVyLVRpdGxlLC5OZXdzcGFwZXItVGl0bGUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseToiUm9ib3RvIFNsYWIiOw0KCWZvbnQtc2l6ZTo1MHB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjQwMDsNCglsaW5lLWhlaWdodDo1NXB4Ow0KCXBhZGRpbmc6MCAwIDEwcHg7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5OZXdzcGFwZXItVGl0bGUtQ2VudGVyZWQsLk5ld3NwYXBlci1UaXRsZS1DZW50ZXJlZA0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OiJSb2JvdG8gU2xhYiI7DQoJZm9udC1zaXplOjUwcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NDAwOw0KCWxpbmUtaGVpZ2h0OjU1cHg7DQoJcGFkZGluZzowIDAgMTBweDsNCgl0ZXh0LWFsaWduOmNlbnRlcjsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uSGVyby1CdXR0b24sLkhlcm8tQnV0dG9uDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApOw0KCWJvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNTApOw0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjFweDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjE0cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NTAwOw0KCWxldHRlci1zcGFjaW5nOjNweDsNCglsaW5lLWhlaWdodDoxNHB4Ow0KCXBhZGRpbmc6MTBweCAzMHB4Ow0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uSGVyby1CdXR0b246aG92ZXIsLkhlcm8tQnV0dG9uOmhvdmVyDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWJvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjFweDsNCgljb2xvcjpyZ2JhKDAsMCwwLDEuMDApOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5WaWRlby1UaXRsZSwuVmlkZW8tVGl0bGUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMS4wMCk7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjMwcHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6OTAwOw0KCWxpbmUtaGVpZ2h0OjMwcHg7DQoJcGFkZGluZzo1cHg7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5WaWRlby1TdWJUaXRsZSwuVmlkZW8tU3ViVGl0bGUNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zNSk7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjEycHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NjAwOw0KCWxldHRlci1zcGFjaW5nOjJweDsNCglsaW5lLWhlaWdodDoxMnB4Ow0KCXBhZGRpbmc6NXB4Ow0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTm90R2VuZXJpYy1CdXR0b24sLk5vdEdlbmVyaWMtQnV0dG9uDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApOw0KCWJvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNTApOw0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjFweDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjE0cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NTAwOw0KCWxldHRlci1zcGFjaW5nOjNweDsNCglsaW5lLWhlaWdodDoxNHB4Ow0KCXBhZGRpbmc6MTBweCAzMHB4Ow0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTm90R2VuZXJpYy1CdXR0b246aG92ZXIsLk5vdEdlbmVyaWMtQnV0dG9uOmhvdmVyDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDoxcHg7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTm90R2VuZXJpYy1CaWdCdXR0b24sLk5vdEdlbmVyaWMtQmlnQnV0dG9uDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApOw0KCWJvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTUpOw0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjFweDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJhbGV3YXk7DQoJZm9udC1zaXplOjE0cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NTAwOw0KCWxldHRlci1zcGFjaW5nOjNweDsNCglsaW5lLWhlaWdodDoxNHB4Ow0KCXBhZGRpbmc6MjdweCAzMHB4Ow0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTm90R2VuZXJpYy1CaWdCdXR0b246aG92ZXIsLk5vdEdlbmVyaWMtQmlnQnV0dG9uOmhvdmVyDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApOw0KCWJvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjFweDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5XZWJQcm9kdWN0LUJ1dHRvbiwuV2ViUHJvZHVjdC1CdXR0b24NCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoNTEsNTEsNTEsMS4wMCk7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMS4wMCk7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDoycHg7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZToxNnB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjYwMDsNCglsZXR0ZXItc3BhY2luZzoxcHg7DQoJbGluZS1oZWlnaHQ6NDhweDsNCglwYWRkaW5nOjAgNDBweDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLldlYlByb2R1Y3QtQnV0dG9uOmhvdmVyLC5XZWJQcm9kdWN0LUJ1dHRvbjpob3Zlcg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglib3JkZXItY29sb3I6cmdiYSgwLDAsMCwxLjAwKTsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjJweDsNCgljb2xvcjpyZ2JhKDUxLDUxLDUxLDEuMDApOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5SZXN0YXVyYW50LUJ1dHRvbiwuUmVzdGF1cmFudC1CdXR0b24NCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMTAsMTAsMTAsMCk7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41MCk7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpzb2xpZDsNCglib3JkZXItd2lkdGg6MnB4Ow0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6Um9ib3RvOw0KCWZvbnQtc2l6ZToxN3B4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjUwMDsNCglsZXR0ZXItc3BhY2luZzozcHg7DQoJbGluZS1oZWlnaHQ6MTdweDsNCglwYWRkaW5nOjEycHggMzVweDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlJlc3RhdXJhbnQtQnV0dG9uOmhvdmVyLC5SZXN0YXVyYW50LUJ1dHRvbjpob3Zlcg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwKTsNCglib3JkZXItY29sb3I6cmdiYSgyNTUsMjI0LDEyOSwxLjAwKTsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDoycHg7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uR3ltLUJ1dHRvbiwuR3ltLUJ1dHRvbg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgxMzksMTkyLDM5LDEuMDApOw0KCWJvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDApOw0KCWJvcmRlci1yYWRpdXM6MzBweCAzMHB4IDMwcHggMzBweDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZToxNXB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjYwMDsNCglsZXR0ZXItc3BhY2luZzoxcHg7DQoJbGluZS1oZWlnaHQ6MTVweDsNCglwYWRkaW5nOjEzcHggMzVweDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLkd5bS1CdXR0b246aG92ZXIsLkd5bS1CdXR0b246aG92ZXINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMTE0LDE2OCwwLDEuMDApOw0KCWJvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDApOw0KCWJvcmRlci1yYWRpdXM6MzBweCAzMHB4IDMwcHggMzBweDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uR3ltLUJ1dHRvbi1MaWdodCwuR3ltLUJ1dHRvbi1MaWdodA0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4yNSk7DQoJYm9yZGVyLXJhZGl1czozMHB4IDMwcHggMzBweCAzMHB4Ow0KCWJvcmRlci1zdHlsZTpzb2xpZDsNCglib3JkZXItd2lkdGg6MnB4Ow0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6MTVweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo2MDA7DQoJbGluZS1oZWlnaHQ6MTVweDsNCglwYWRkaW5nOjEycHggMzVweDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLkd5bS1CdXR0b24tTGlnaHQ6aG92ZXIsLkd5bS1CdXR0b24tTGlnaHQ6aG92ZXINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMTE0LDE2OCwwLDApOw0KCWJvcmRlci1jb2xvcjpyZ2JhKDEzOSwxOTIsMzksMS4wMCk7DQoJYm9yZGVyLXJhZGl1czozMHB4IDMwcHggMzBweCAzMHB4Ow0KCWJvcmRlci1zdHlsZTpzb2xpZDsNCglib3JkZXItd2lkdGg6MnB4Ow0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlNwb3J0cy1CdXR0b24tTGlnaHQsLlNwb3J0cy1CdXR0b24tTGlnaHQNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMCk7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41MCk7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpzb2xpZDsNCglib3JkZXItd2lkdGg6MnB4Ow0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6MTdweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo2MDA7DQoJbGV0dGVyLXNwYWNpbmc6MnB4Ow0KCWxpbmUtaGVpZ2h0OjE3cHg7DQoJcGFkZGluZzoxMnB4IDM1cHg7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5TcG9ydHMtQnV0dG9uLUxpZ2h0OmhvdmVyLC5TcG9ydHMtQnV0dG9uLUxpZ2h0OmhvdmVyDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApOw0KCWJvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjJweDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5TcG9ydHMtQnV0dG9uLVJlZCwuU3BvcnRzLUJ1dHRvbi1SZWQNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjE5LDI4LDM0LDEuMDApOw0KCWJvcmRlci1jb2xvcjpyZ2JhKDIxOSwyOCwzNCwwKTsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDoycHg7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSYWxld2F5Ow0KCWZvbnQtc2l6ZToxN3B4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjYwMDsNCglsZXR0ZXItc3BhY2luZzoycHg7DQoJbGluZS1oZWlnaHQ6MTdweDsNCglwYWRkaW5nOjEycHggMzVweDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlNwb3J0cy1CdXR0b24tUmVkOmhvdmVyLC5TcG9ydHMtQnV0dG9uLVJlZDpob3Zlcg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwxLjAwKTsNCglib3JkZXItY29sb3I6cmdiYSgwLDAsMCwxLjAwKTsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDoycHg7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uUGhvdG9ncmFwaHktQnV0dG9uLC5QaG90b2dyYXBoeS1CdXR0b24NCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMCk7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4yNSk7DQoJYm9yZGVyLXJhZGl1czozMHB4IDMwcHggMzBweCAzMHB4Ow0KCWJvcmRlci1zdHlsZTpzb2xpZDsNCglib3JkZXItd2lkdGg6MXB4Ow0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6UmFsZXdheTsNCglmb250LXNpemU6MTVweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo2MDA7DQoJbGV0dGVyLXNwYWNpbmc6MXB4Ow0KCWxpbmUtaGVpZ2h0OjE1cHg7DQoJcGFkZGluZzoxM3B4IDM1cHg7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5QaG90b2dyYXBoeS1CdXR0b246aG92ZXIsLlBob3RvZ3JhcGh5LUJ1dHRvbjpob3Zlcg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwKTsNCglib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglib3JkZXItcmFkaXVzOjMwcHggMzBweCAzMHB4IDMwcHg7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDoxcHg7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uTmV3c3BhcGVyLUJ1dHRvbi0yLC5OZXdzcGFwZXItQnV0dG9uLTINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMCk7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41MCk7DQoJYm9yZGVyLXJhZGl1czozcHggM3B4IDNweCAzcHg7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDoycHg7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSb2JvdG87DQoJZm9udC1zaXplOjE1cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6OTAwOw0KCWxpbmUtaGVpZ2h0OjE1cHg7DQoJcGFkZGluZzoxMHB4IDMwcHg7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5OZXdzcGFwZXItQnV0dG9uLTI6aG92ZXIsLk5ld3NwYXBlci1CdXR0b24tMjpob3Zlcg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwKTsNCglib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglib3JkZXItcmFkaXVzOjNweCAzcHggM3B4IDNweDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjJweDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5GZWF0dXJlLVRvdXIsLkZlYXR1cmUtVG91cg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgxMzksMTkyLDM5LDEuMDApOw0KCWJvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDApOw0KCWJvcmRlci1yYWRpdXM6MzBweCAzMHB4IDMwcHggMzBweDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSb2JvdG87DQoJZm9udC1zaXplOjE3cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NzAwOw0KCWxpbmUtaGVpZ2h0OjE3cHg7DQoJcGFkZGluZzoxN3B4IDM1cHg7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5GZWF0dXJlLVRvdXI6aG92ZXIsLkZlYXR1cmUtVG91cjpob3Zlcg0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgxMTQsMTY4LDAsMS4wMCk7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMCk7DQoJYm9yZGVyLXJhZGl1czozMHB4IDMwcHggMzBweCAzMHB4Ow0KCWJvcmRlci1zdHlsZTpzb2xpZDsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5GZWF0dXJlLUV4YW1wbGVzLC5GZWF0dXJlLUV4YW1wbGVzDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6cmdiYSgzMyw0Miw2NCwwLjE1KTsNCglib3JkZXItcmFkaXVzOjMwcHggMzBweCAzMHB4IDMwcHg7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDoycHg7DQoJY29sb3I6cmdiYSgzMyw0Miw2NCwwLjUwKTsNCglmb250LWZhbWlseTpSb2JvdG87DQoJZm9udC1zaXplOjE3cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NzAwOw0KCWxpbmUtaGVpZ2h0OjE3cHg7DQoJcGFkZGluZzoxNXB4IDM1cHg7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5GZWF0dXJlLUV4YW1wbGVzOmhvdmVyLC5GZWF0dXJlLUV4YW1wbGVzOmhvdmVyDQp7DQoJYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItY29sb3I6cmdiYSgxMzksMTkyLDM5LDEuMDApOw0KCWJvcmRlci1yYWRpdXM6MzBweCAzMHB4IDMwcHggMzBweDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjJweDsNCgljb2xvcjpyZ2JhKDEzOSwxOTIsMzksMS4wMCk7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLnN1YmNhcHRpb24sLnN1YmNhcHRpb24NCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDEuMDApOw0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDExMSwxMjQsMTMwLDEuMDApOw0KCWZvbnQtZmFtaWx5OnJvYm90bzsNCglmb250LXNpemU6MTlweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo0MDA7DQoJbGluZS1oZWlnaHQ6MjRweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLm1lbnV0YWIsLm1lbnV0YWINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDEuMDApOw0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDQxLDQ2LDQ5LDEuMDApOw0KCWZvbnQtZmFtaWx5OnJvYm90bzsNCglmb250LXNpemU6MjVweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDozMDA7DQoJbGluZS1oZWlnaHQ6MzBweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLm1lbnV0YWI6aG92ZXIsLm1lbnV0YWI6aG92ZXINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyMTMsMCwwLDEuMDApOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5tYWluY29udGVudCwubWFpbmNvbnRlbnQNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDEuMDApOw0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDQxLDQ2LDQ5LDEuMDApOw0KCWZvbnQtZmFtaWx5OnJvYm90bzsNCglmb250LXNpemU6MjFweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDozMDA7DQoJbGluZS1oZWlnaHQ6MjZweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KCXRleHQtc2hhZG93Om5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLm1pbml0ZXh0LC5taW5pdGV4dA0Kew0KCWJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMS4wMCk7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMTg1LDE4NiwxODcsMS4wMCk7DQoJZm9udC1mYW1pbHk6cm9ib3RvOw0KCWZvbnQtc2l6ZToxNXB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjQwMDsNCglsaW5lLWhlaWdodDoyMHB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQoJdGV4dC1zaGFkb3c6bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uRmVhdHVyZS1CdXksLkZlYXR1cmUtQnV5DQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMTU0LDIzOCwxLjAwKTsNCglib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwKTsNCglib3JkZXItcmFkaXVzOjMwcHggMzBweCAzMHB4IDMwcHg7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJZm9udC1mYW1pbHk6Um9ib3RvOw0KCWZvbnQtc2l6ZToxN3B4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjcwMDsNCglsaW5lLWhlaWdodDoxN3B4Ow0KCXBhZGRpbmc6MTdweCAzNXB4Ow0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uRmVhdHVyZS1CdXk6aG92ZXIsLkZlYXR1cmUtQnV5OmhvdmVyDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMTMzLDIxNCwxLjAwKTsNCglib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwKTsNCglib3JkZXItcmFkaXVzOjMwcHggMzBweCAzMHB4IDMwcHg7DQoJYm9yZGVyLXN0eWxlOnNvbGlkOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMS4wMCk7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLkZlYXR1cmUtRXhhbXBsZXMtTGlnaHQsLkZlYXR1cmUtRXhhbXBsZXMtTGlnaHQNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTUpOw0KCWJvcmRlci1yYWRpdXM6MzBweCAzMHB4IDMwcHggMzBweDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjJweDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJvYm90bzsNCglmb250LXNpemU6MTdweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo3MDA7DQoJbGluZS1oZWlnaHQ6MTdweDsNCglwYWRkaW5nOjE1cHggMzVweDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLkZlYXR1cmUtRXhhbXBsZXMtTGlnaHQ6aG92ZXIsLkZlYXR1cmUtRXhhbXBsZXMtTGlnaHQ6aG92ZXINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWJvcmRlci1yYWRpdXM6MzBweCAzMHB4IDMwcHggMzBweDsNCglib3JkZXItc3R5bGU6c29saWQ7DQoJYm9yZGVyLXdpZHRoOjJweDsNCgljb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5GYWNlYm9vay1MaWtlcywuRmFjZWJvb2stTGlrZXMNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoNTksODksMTUzLDEuMDApOw0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjAgMCAwIDA7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglmb250LWZhbWlseTpSb2JvdG87DQoJZm9udC1zaXplOjE1cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NTAwOw0KCWxpbmUtaGVpZ2h0OjIycHg7DQoJcGFkZGluZzo1cHggMTVweDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlR3aXR0ZXItRmF2b3JpdGVzLC5Ud2l0dGVyLUZhdm9yaXRlcw0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwKTsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoMTM2LDE1MywxNjYsMS4wMCk7DQoJZm9udC1mYW1pbHk6Um9ib3RvOw0KCWZvbnQtc2l6ZToxNXB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjUwMDsNCglsaW5lLWhlaWdodDoyMnB4Ow0KCXBhZGRpbmc6MDsNCgl0ZXh0LWFsaWduOmxlZnQ7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQp9DQoNCi50cC1jYXB0aW9uLlR3aXR0ZXItTGluaywuVHdpdHRlci1MaW5rDQp7DQoJYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDEuMDApOw0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjMwcHggMzBweCAzMHB4IDMwcHg7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgxMzUsMTUzLDE2NSwxLjAwKTsNCglmb250LWZhbWlseTpSb2JvdG87DQoJZm9udC1zaXplOjE1cHg7DQoJZm9udC1zdHlsZTpub3JtYWw7DQoJZm9udC13ZWlnaHQ6NTAwOw0KCWxpbmUtaGVpZ2h0OjE1cHg7DQoJcGFkZGluZzoxMXB4IDExcHggOXB4Ow0KCXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uVHdpdHRlci1MaW5rOmhvdmVyLC5Ud2l0dGVyLUxpbms6aG92ZXINCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwxMzIsMTgwLDEuMDApOw0KCWJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCglib3JkZXItcmFkaXVzOjMwcHggMzBweCAzMHB4IDMwcHg7DQoJYm9yZGVyLXN0eWxlOm5vbmU7DQoJYm9yZGVyLXdpZHRoOjA7DQoJY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCn0NCg0KLnRwLWNhcHRpb24uVHdpdHRlci1SZXR3ZWV0LC5Ud2l0dGVyLVJldHdlZXQNCnsNCgliYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMCk7DQoJYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50Ow0KCWJvcmRlci1yYWRpdXM6MCAwIDAgMDsNCglib3JkZXItc3R5bGU6bm9uZTsNCglib3JkZXItd2lkdGg6MDsNCgljb2xvcjpyZ2JhKDEzNiwxNTMsMTY2LDEuMDApOw0KCWZvbnQtZmFtaWx5OlJvYm90bzsNCglmb250LXNpemU6MTVweDsNCglmb250LXN0eWxlOm5vcm1hbDsNCglmb250LXdlaWdodDo1MDA7DQoJbGluZS1oZWlnaHQ6MjJweDsNCglwYWRkaW5nOjA7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoudHAtY2FwdGlvbi5Ud2l0dGVyLUNvbnRlbnQsLlR3aXR0ZXItQ29udGVudA0Kew0KCWJhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwxLjAwKTsNCglib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJhZGl1czowIDAgMCAwOw0KCWJvcmRlci1zdHlsZTpub25lOw0KCWJvcmRlci13aWR0aDowOw0KCWNvbG9yOnJnYmEoNDEsNDcsNTEsMS4wMCk7DQoJZm9udC1mYW1pbHk6Um9ib3RvOw0KCWZvbnQtc2l6ZToyMHB4Ow0KCWZvbnQtc3R5bGU6bm9ybWFsOw0KCWZvbnQtd2VpZ2h0OjUwMDsNCglsaW5lLWhlaWdodDoyOHB4Ow0KCXBhZGRpbmc6MzBweCAzMHB4IDcwcHg7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtZGVjb3JhdGlvbjpub25lOw0KfQ0KDQoucmV2dHAtc2VhcmNoZm9ybSBpbnB1dFt0eXBlPSJ0ZXh0Il0sDQoucmV2dHAtc2VhcmNoZm9ybSBpbnB1dFt0eXBlPSJlbWFpbCJdLA0KLnJldnRwLWZvcm0gaW5wdXRbdHlwZT0idGV4dCJdLA0KLnJldnRwLWZvcm0gaW5wdXRbdHlwZT0iZW1haWwiXXsgCQ0KCWZvbnQtZmFtaWx5OiAiQXJpYWwiLCBzYW5zLXNlcmlmOw0KICAgIGZvbnQtc2l6ZTogMTVweDsNCiAgICBjb2xvcjogIzAwMDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOw0KICAgIGxpbmUtaGVpZ2h0OiA0NnB4Ow0KICAgIHBhZGRpbmc6IDAgMjBweDsNCiAgICBjdXJzb3I6IHRleHQ7DQogICAgYm9yZGVyOiAwOw0KICAgIHdpZHRoOiA0MDBweDsNCiAgICBtYXJnaW4tYm90dG9tOiAwcHg7DQogICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXM7DQogICAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXM7DQogICAgLW8tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzOw0KICAgIC1tcy10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXM7DQogICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzOw0KICAgIA0KICAgIA0KICAgIGJvcmRlci1yYWRpdXM6IDBweDsNCn0NCg0KDQoudHAtY2FwdGlvbi5CaWdCb2xkLVRpdGxlLA0KLkJpZ0JvbGQtVGl0bGUgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMTEwcHg7DQogICAgbGluZS1oZWlnaHQ6IDEwMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA4MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSYWxld2F5Ow0KICAgIHBhZGRpbmc6IDEwcHggMHB4IDEwcHggMDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQNCn0NCi50cC1jYXB0aW9uLkJpZ0JvbGQtU3ViVGl0bGUsDQouQmlnQm9sZC1TdWJUaXRsZSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41MCk7DQogICAgZm9udC1zaXplOiAxNXB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyNHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSYWxld2F5Ow0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgbGV0dGVyLXNwYWNpbmc6IDFweA0KfQ0KLnRwLWNhcHRpb24uQmlnQm9sZC1CdXR0b24sDQouQmlnQm9sZC1CdXR0b24gew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMTNweDsNCiAgICBsaW5lLWhlaWdodDogMTNweDsNCiAgICBmb250LXdlaWdodDogNTAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUmFsZXdheTsNCiAgICBwYWRkaW5nOiAxNXB4IDUwcHggMTVweCA1MHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOw0KICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUwKTsNCiAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgIGJvcmRlci13aWR0aDogMXB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMHB4IDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIGxldHRlci1zcGFjaW5nOiAxcHgNCn0NCi50cC1jYXB0aW9uLkJpZ0JvbGQtQnV0dG9uOmhvdmVyLA0KLkJpZ0JvbGQtQnV0dG9uOmhvdmVyIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4DQp9DQoudHAtY2FwdGlvbi5Gb29kQ2Fyb3VzZWwtQ29udGVudCwNCi5Gb29kQ2Fyb3VzZWwtQ29udGVudCB7DQogICAgY29sb3I6IHJnYmEoNDEsIDQ2LCA0OSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxN3B4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyOHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSYWxld2F5Ow0KICAgIHBhZGRpbmc6IDMwcHggMzBweCAzMHB4IDMwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDQxLCA0NiwgNDksIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQNCn0NCi50cC1jYXB0aW9uLkZvb2RDYXJvdXNlbC1CdXR0b24sDQouRm9vZENhcm91c2VsLUJ1dHRvbiB7DQogICAgY29sb3I6IHJnYmEoNDEsIDQ2LCA0OSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxM3B4Ow0KICAgIGxpbmUtaGVpZ2h0OiAxM3B4Ow0KICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSYWxld2F5Ow0KICAgIHBhZGRpbmc6IDE1cHggNzBweCAxNXB4IDUwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDQxLCA0NiwgNDksIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgbGV0dGVyLXNwYWNpbmc6IDFweA0KfQ0KLnRwLWNhcHRpb24uRm9vZENhcm91c2VsLUJ1dHRvbjpob3ZlciwNCi5Gb29kQ2Fyb3VzZWwtQnV0dG9uOmhvdmVyIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MSwgNDYsIDQ5LCAxLjAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoNDEsIDQ2LCA0OSwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHgNCn0NCi50cC1jYXB0aW9uLkZvb2RDYXJvdXNlbC1DbG9zZUJ1dHRvbiwNCi5Gb29kQ2Fyb3VzZWwtQ2xvc2VCdXR0b24gew0KICAgIGNvbG9yOiByZ2JhKDQxLCA0NiwgNDksIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMjBweDsNCiAgICBsaW5lLWhlaWdodDogMjBweDsNCiAgICBmb250LXdlaWdodDogNzAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUmFsZXdheTsNCiAgICBwYWRkaW5nOiAxNHB4IDE0cHggMTRweCAxNnB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOw0KICAgIGJvcmRlci1jb2xvcjogcmdiYSg0MSwgNDYsIDQ5LCAwKTsNCiAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgIGJvcmRlci13aWR0aDogMXB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMzBweCAzMHB4IDMwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBsZXR0ZXItc3BhY2luZzogMXB4DQp9DQoudHAtY2FwdGlvbi5Gb29kQ2Fyb3VzZWwtQ2xvc2VCdXR0b246aG92ZXIsDQouRm9vZENhcm91c2VsLUNsb3NlQnV0dG9uOmhvdmVyIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MSwgNDYsIDQ5LCAxLjAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoNDEsIDQ2LCA0OSwgMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICBib3JkZXItcmFkaXVzOiAzMHB4IDMwcHggMzBweCAzMHB4DQp9DQoudHAtY2FwdGlvbi5WaWRlby1TdWJUaXRsZSwNCi5WaWRlby1TdWJUaXRsZSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxMnB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAxMnB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA2MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSYWxld2F5Ow0KICAgIHBhZGRpbmc6IDVweCA1cHggNXB4IDVweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM1KTsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgbGV0dGVyLXNwYWNpbmc6IDJweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0DQp9DQoudHAtY2FwdGlvbi5WaWRlby1UaXRsZSwNCi5WaWRlby1UaXRsZSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAzMHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAzMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA5MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSYWxld2F5Ow0KICAgIHBhZGRpbmc6IDVweCA1cHggNXB4IDVweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uVHJhdmVsLUJpZ0NhcHRpb24sDQouVHJhdmVsLUJpZ0NhcHRpb24gew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogNTBweDsNCiAgICBsaW5lLWhlaWdodDogNTBweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQNCn0NCi50cC1jYXB0aW9uLlRyYXZlbC1TbWFsbENhcHRpb24sDQouVHJhdmVsLVNtYWxsQ2FwdGlvbiB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAyNXB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAzMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSb2JvdG87DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uVHJhdmVsLUNhbGxUb0FjdGlvbiwNCi5UcmF2ZWwtQ2FsbFRvQWN0aW9uIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDI1cHg7DQogICAgbGluZS1oZWlnaHQ6IDI1cHg7DQogICAgZm9udC13ZWlnaHQ6IDUwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IFJvYm90bzsNCiAgICBwYWRkaW5nOiAxMnB4IDIwcHggMTJweCAyMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpOw0KICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgIGJvcmRlci13aWR0aDogMnB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggNXB4IDVweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIGxldHRlci1zcGFjaW5nOiAxcHgNCn0NCi50cC1jYXB0aW9uLlRyYXZlbC1DYWxsVG9BY3Rpb246aG92ZXIsDQouVHJhdmVsLUNhbGxUb0FjdGlvbjpob3ZlciB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAycHg7DQogICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCA1cHggNXB4DQp9DQoNCg0KLnRwLWNhcHRpb24uUm90YXRpbmdXb3Jkcy1UaXRsZVdoaXRlLA0KLlJvdGF0aW5nV29yZHMtVGl0bGVXaGl0ZSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiA3MHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA3MHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA4MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSYWxld2F5Ow0KICAgIHBhZGRpbmc6IDBweCAwcHggMHB4IDA7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0DQp9DQoudHAtY2FwdGlvbi5Sb3RhdGluZ1dvcmRzLUJ1dHRvbiwNCi5Sb3RhdGluZ1dvcmRzLUJ1dHRvbiB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAyMHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSYWxld2F5Ow0KICAgIHBhZGRpbmc6IDIwcHggNTBweCAyMHB4IDUwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAycHg7DQogICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgbGV0dGVyLXNwYWNpbmc6IDNweA0KfQ0KLnRwLWNhcHRpb24uUm90YXRpbmdXb3Jkcy1CdXR0b246aG92ZXIsDQouUm90YXRpbmdXb3Jkcy1CdXR0b246aG92ZXIgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDJweDsNCiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHgNCn0NCi50cC1jYXB0aW9uLlJvdGF0aW5nV29yZHMtU21hbGxUZXh0LA0KLlJvdGF0aW5nV29yZHMtU21hbGxUZXh0IHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDE0cHg7DQogICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IFJhbGV3YXk7DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICB0ZXh0LXNoYWRvdzogbm9uZQ0KfQ0KDQoNCg0KDQoudHAtY2FwdGlvbi5Db250ZW50Wm9vbS1TbWFsbFRpdGxlLA0KLkNvbnRlbnRab29tLVNtYWxsVGl0bGUgew0KICAgIGNvbG9yOiByZ2JhKDQxLCA0NiwgNDksIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMzNweDsNCiAgICBsaW5lLWhlaWdodDogNDVweDsNCiAgICBmb250LXdlaWdodDogNjAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUmFsZXdheTsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0DQp9DQoudHAtY2FwdGlvbi5Db250ZW50Wm9vbS1TbWFsbFN1YnRpdGxlLA0KLkNvbnRlbnRab29tLVNtYWxsU3VidGl0bGUgew0KICAgIGNvbG9yOiByZ2JhKDExMSwgMTI0LCAxMzAsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICBsaW5lLWhlaWdodDogMjRweDsNCiAgICBmb250LXdlaWdodDogNjAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUmFsZXdheTsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0DQp9DQoudHAtY2FwdGlvbi5Db250ZW50Wm9vbS1TbWFsbEljb24sDQouQ29udGVudFpvb20tU21hbGxJY29uIHsNCiAgICBjb2xvcjogcmdiYSg0MSwgNDYsIDQ5LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDIwcHg7DQogICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IFJhbGV3YXk7DQogICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMTBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQNCn0NCi50cC1jYXB0aW9uLkNvbnRlbnRab29tLVNtYWxsSWNvbjpob3ZlciwNCi5Db250ZW50Wm9vbS1TbWFsbEljb246aG92ZXIgew0KICAgIGNvbG9yOiByZ2JhKDExMSwgMTI0LCAxMzAsIDEuMDApOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHgNCn0NCi50cC1jYXB0aW9uLkNvbnRlbnRab29tLURldGFpbFRpdGxlLA0KLkNvbnRlbnRab29tLURldGFpbFRpdGxlIHsNCiAgICBjb2xvcjogcmdiYSg0MSwgNDYsIDQ5LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDcwcHg7DQogICAgbGluZS1oZWlnaHQ6IDcwcHg7DQogICAgZm9udC13ZWlnaHQ6IDUwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IFJhbGV3YXk7DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uQ29udGVudFpvb20tRGV0YWlsU3ViVGl0bGUsDQouQ29udGVudFpvb20tRGV0YWlsU3ViVGl0bGUgew0KICAgIGNvbG9yOiByZ2JhKDExMSwgMTI0LCAxMzAsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICBsaW5lLWhlaWdodDogMjVweDsNCiAgICBmb250LXdlaWdodDogNTAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUmFsZXdheTsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0DQp9DQoudHAtY2FwdGlvbi5Db250ZW50Wm9vbS1EZXRhaWxDb250ZW50LA0KLkNvbnRlbnRab29tLURldGFpbENvbnRlbnQgew0KICAgIGNvbG9yOiByZ2JhKDExMSwgMTI0LCAxMzAsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMTdweDsNCiAgICBsaW5lLWhlaWdodDogMjhweDsNCiAgICBmb250LXdlaWdodDogNTAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUmFsZXdheTsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0DQp9DQoudHAtY2FwdGlvbi5Db250ZW50Wm9vbS1CdXR0b24sDQouQ29udGVudFpvb20tQnV0dG9uIHsNCiAgICBjb2xvcjogcmdiYSg0MSwgNDYsIDQ5LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDEzcHg7DQogICAgbGluZS1oZWlnaHQ6IDEzcHg7DQogICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IFJhbGV3YXk7DQogICAgcGFkZGluZzogMTVweCA1MHB4IDE1cHggNTBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoNDEsIDQ2LCA0OSwgMC41MCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBsZXR0ZXItc3BhY2luZzogMXB4DQp9DQoudHAtY2FwdGlvbi5Db250ZW50Wm9vbS1CdXR0b246aG92ZXIsDQouQ29udGVudFpvb20tQnV0dG9uOmhvdmVyIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MSwgNDYsIDQ5LCAxLjAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoNDEsIDQ2LCA0OSwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHgNCn0NCi50cC1jYXB0aW9uLkNvbnRlbnRab29tLUJ1dHRvbkNsb3NlLA0KLkNvbnRlbnRab29tLUJ1dHRvbkNsb3NlIHsNCiAgICBjb2xvcjogcmdiYSg0MSwgNDYsIDQ5LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDEzcHg7DQogICAgbGluZS1oZWlnaHQ6IDEzcHg7DQogICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IFJhbGV3YXk7DQogICAgcGFkZGluZzogMTRweCAxNHB4IDE0cHggMTZweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoNDEsIDQ2LCA0OSwgMC41MCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICBib3JkZXItcmFkaXVzOiAzMHB4IDMwcHggMzBweCAzMHB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgbGV0dGVyLXNwYWNpbmc6IDFweA0KfQ0KLnRwLWNhcHRpb24uQ29udGVudFpvb20tQnV0dG9uQ2xvc2U6aG92ZXIsDQouQ29udGVudFpvb20tQnV0dG9uQ2xvc2U6aG92ZXIgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQxLCA0NiwgNDksIDEuMDApOw0KICAgIGJvcmRlci1jb2xvcjogcmdiYSg0MSwgNDYsIDQ5LCAxLjAwKTsNCiAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgIGJvcmRlci13aWR0aDogMXB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMzBweCAzMHB4IDMwcHgNCn0NCi50cC1jYXB0aW9uLk5ld3NwYXBlci1UaXRsZSwNCi5OZXdzcGFwZXItVGl0bGUgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogNTBweDsNCiAgICBsaW5lLWhlaWdodDogNTVweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogIlJvYm90byBTbGFiIjsNCiAgICBwYWRkaW5nOiAwIDAgMTBweCAwOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uTmV3c3BhcGVyLVN1YnRpdGxlLA0KLk5ld3NwYXBlci1TdWJ0aXRsZSB7DQogICAgY29sb3I6IHJnYmEoMTY4LCAyMTYsIDIzOCwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxNXB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA5MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSb2JvdG87DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uTmV3c3BhcGVyLUJ1dHRvbiwNCi5OZXdzcGFwZXItQnV0dG9uIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDEzcHg7DQogICAgbGluZS1oZWlnaHQ6IDE3cHg7DQogICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IFJvYm90bzsNCiAgICBwYWRkaW5nOiAxMnB4IDM1cHggMTJweCAzNXB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOw0KICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTsNCiAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgIGJvcmRlci13aWR0aDogMXB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMHB4IDBweDsNCiAgICBsZXR0ZXItc3BhY2luZzogMnB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQNCn0NCi50cC1jYXB0aW9uLk5ld3NwYXBlci1CdXR0b246aG92ZXIsDQouTmV3c3BhcGVyLUJ1dHRvbjpob3ZlciB7DQogICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4DQp9DQoudHAtY2FwdGlvbi5ydHdoaXRlbWVkaXVtLA0KLnJ0d2hpdGVtZWRpdW0gew0KICAgIGZvbnQtc2l6ZTogMjJweDsNCiAgICBsaW5lLWhlaWdodDogMjZweDsNCiAgICBjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItY29sb3I6IHJnYigwLCAwLCAwKTsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgdGV4dC1zaGFkb3c6IG5vbmUNCn0NCg0KQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgew0KCS5yZXZ0cC1zZWFyY2hmb3JtIGlucHV0W3R5cGU9InRleHQiXSwNCgkucmV2dHAtc2VhcmNoZm9ybSBpbnB1dFt0eXBlPSJlbWFpbCJdLA0KCS5yZXZ0cC1mb3JtIGlucHV0W3R5cGU9InRleHQiXSwNCgkucmV2dHAtZm9ybSBpbnB1dFt0eXBlPSJlbWFpbCJdIHsgd2lkdGg6IDIwMHB4ICFpbXBvcnRhbnQ7IH0NCn0NCg0KLnJldnRwLXNlYXJjaGZvcm0gaW5wdXRbdHlwZT0ic3VibWl0Il0sDQoucmV2dHAtZm9ybSBpbnB1dFt0eXBlPSJzdWJtaXQiXSB7CQ0KCWZvbnQtZmFtaWx5OiAiQXJpYWwiLCBzYW5zLXNlcmlmOw0KICAgIGxpbmUtaGVpZ2h0OiA0NnB4Ow0KICAgIGxldHRlci1zcGFjaW5nOiAxcHg7DQogICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsNCiAgICBmb250LXNpemU6IDE1cHg7DQogICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICBwYWRkaW5nOiAwIDIwcHg7DQogICAgYm9yZGVyOiAwOw0KICAgIGJhY2tncm91bmQ6ICMwMDlhZWU7DQogICAgY29sb3I6ICNmZmY7DQogICAgDQogICAgDQogICAgYm9yZGVyLXJhZGl1czogMHB4Ow0KfQ0KDQoudHAtY2FwdGlvbi5Ud2l0dGVyLUNvbnRlbnQgYSwNCiAgICAudHAtY2FwdGlvbi5Ud2l0dGVyLUNvbnRlbnQgYTp2aXNpdGVkIHsNCiAgICAgICAgY29sb3I6ICMwMDg0QjQgIWltcG9ydGFudA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Ud2l0dGVyLUNvbnRlbnQgYTpob3ZlciB7DQogICAgICAgIGNvbG9yOiAjMDA4NEI0ICFpbXBvcnRhbnQ7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQNCiAgICB9DQogICAgLnRwLWNhcHRpb24uQ29uY2VwdC1UaXRsZSwNCiAgICAuQ29uY2VwdC1UaXRsZSB7DQogICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgICAgICBmb250LXNpemU6IDcwcHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiA3MHB4Ow0KICAgICAgICBmb250LXdlaWdodDogNzAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgIGZvbnQtZmFtaWx5OiAiUm9ib3RvIENvbmRlbnNlZCI7DQogICAgICAgIHBhZGRpbmc6IDBweCAwcHggMTBweCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMHB4IDBweDsNCiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDVweA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Db25jZXB0LVN1YlRpdGxlLA0KICAgIC5Db25jZXB0LVN1YlRpdGxlIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NSk7DQogICAgICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsNCiAgICAgICAgZm9udC1mYW1pbHk6ICIiUGxheWZhaXIgRGlzcGxheSIiOw0KICAgICAgICBwYWRkaW5nOiAwcHggMHB4IDEwcHggMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHgNCiAgICB9DQogICAgLnRwLWNhcHRpb24uQ29uY2VwdC1Db250ZW50LA0KICAgIC5Db25jZXB0LUNvbnRlbnQgew0KICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAyMHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMzBweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogIlJvYm90byBDb25kZW5zZWQiOw0KICAgICAgICBwYWRkaW5nOiAwcHggMHB4IDBweCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOw0KICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMHB4IDBweA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Db25jZXB0LU1vcmVCdG4sDQogICAgLkNvbmNlcHQtTW9yZUJ0biB7DQogICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgICAgICBmb250LXNpemU6IDMwcHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4Ow0KICAgICAgICBmb250LXdlaWdodDogMzAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgIGZvbnQtZmFtaWx5OiBSb2JvdG87DQogICAgICAgIHBhZGRpbmc6IDEwcHggOHB4IDdweCAxMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7DQogICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4IDUwcHggNTBweCA1MHB4Ow0KICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4Ow0KICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0DQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkNvbmNlcHQtTW9yZUJ0bjpob3ZlciwNCiAgICAuQ29uY2VwdC1Nb3JlQnRuOmhvdmVyIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweCA1MHB4IDUwcHggNTBweA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Db25jZXB0LUxlc3NCdG4sDQogICAgLkNvbmNlcHQtTGVzc0J0biB7DQogICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgICAgICBmb250LXNpemU6IDMwcHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4Ow0KICAgICAgICBmb250LXdlaWdodDogMzAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgIGZvbnQtZmFtaWx5OiBSb2JvdG87DQogICAgICAgIHBhZGRpbmc6IDEwcHggOHB4IDdweCAxMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHggNTBweCA1MHB4IDUwcHg7DQogICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7DQogICAgICAgIHRleHQtYWxpZ246IGxlZnQNCiAgICB9DQogICAgLnRwLWNhcHRpb24uQ29uY2VwdC1MZXNzQnRuOmhvdmVyLA0KICAgIC5Db25jZXB0LUxlc3NCdG46aG92ZXIgew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7DQogICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4IDUwcHggNTBweCA1MHB4DQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkNvbmNlcHQtU3ViVGl0bGUtRGFyaywNCiAgICAuQ29uY2VwdC1TdWJUaXRsZS1EYXJrIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42NSk7DQogICAgICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsNCiAgICAgICAgZm9udC1mYW1pbHk6ICJQbGF5ZmFpciBEaXNwbGF5IjsNCiAgICAgICAgcGFkZGluZzogMHB4IDBweCAxMHB4IDBweDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4DQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkNvbmNlcHQtVGl0bGUtRGFyaywNCiAgICAuQ29uY2VwdC1UaXRsZS1EYXJrIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogNzBweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDcwcHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6ICJSb2JvdG8gQ29uZGVuc2VkIjsNCiAgICAgICAgcGFkZGluZzogMHB4IDBweCAxMHB4IDBweDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHg7DQogICAgICAgIGxldHRlci1zcGFjaW5nOiA1cHgNCiAgICB9DQogICAgLnRwLWNhcHRpb24uQ29uY2VwdC1Nb3JlQnRuLURhcmssDQogICAgLkNvbmNlcHQtTW9yZUJ0bi1EYXJrIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMzBweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IFJvYm90bzsNCiAgICAgICAgcGFkZGluZzogMTBweCA4cHggN3B4IDEwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHggNTBweCA1MHB4IDUwcHg7DQogICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7DQogICAgICAgIHRleHQtYWxpZ246IGxlZnQNCiAgICB9DQogICAgLnRwLWNhcHRpb24uQ29uY2VwdC1Nb3JlQnRuLURhcms6aG92ZXIsDQogICAgLkNvbmNlcHQtTW9yZUJ0bi1EYXJrOmhvdmVyIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweCA1MHB4IDUwcHggNTBweA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Db25jZXB0LUNvbnRlbnQtRGFyaywNCiAgICAuQ29uY2VwdC1Db250ZW50LURhcmsgew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAyMHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMzBweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogIlJvYm90byBDb25kZW5zZWQiOw0KICAgICAgICBwYWRkaW5nOiAwcHggMHB4IDBweCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOw0KICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMHB4IDBweA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Db25jZXB0LU5vdGljZSwNCiAgICAuQ29uY2VwdC1Ob3RpY2Ugew0KICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAxNXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTVweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogIlJvYm90byBDb25kZW5zZWQiOw0KICAgICAgICBwYWRkaW5nOiAwcHggMHB4IDBweCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOw0KICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMHB4IDBweDsNCiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Db25jZXB0LUNvbnRlbnQgYSwNCiAgICAudHAtY2FwdGlvbi5Db25jZXB0LUNvbnRlbnQgYTp2aXNpdGVkIHsNCiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsNCiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmYgIWltcG9ydGFudDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50Ow0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Db25jZXB0LUNvbnRlbnQgYTpob3ZlciB7DQogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50Ow0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Db25jZXB0LUNvbnRlbnQtRGFyayBhLA0KICAgIC50cC1jYXB0aW9uLkNvbmNlcHQtQ29udGVudC1EYXJrIGE6dmlzaXRlZCB7DQogICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7DQogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwICFpbXBvcnRhbnQ7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDsNCiAgICB9DQogICAgLnRwLWNhcHRpb24uQ29uY2VwdC1Db250ZW50LURhcmsgYTpob3ZlciB7DQogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50Ow0KICAgIH0NCg0KICAgIC50cC1jYXB0aW9uLlR3aXR0ZXItQ29udGVudCBhLA0KICAgIC50cC1jYXB0aW9uLlR3aXR0ZXItQ29udGVudCBhOnZpc2l0ZWQgew0KICAgICAgICBjb2xvcjogIzAwODRCNCAhaW1wb3J0YW50DQogICAgfQ0KICAgIC50cC1jYXB0aW9uLlR3aXR0ZXItQ29udGVudCBhOmhvdmVyIHsNCiAgICAgICAgY29sb3I6ICMwMDg0QjQgIWltcG9ydGFudDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5DcmVhdGl2ZS1UaXRsZSwNCiAgICAuQ3JlYXRpdmUtVGl0bGUgew0KICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiA3MHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogNzBweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogIlBsYXlmYWlyIERpc3BsYXkiOw0KICAgICAgICBwYWRkaW5nOiAwcHggMHB4IDBweCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4DQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkNyZWF0aXZlLVN1YlRpdGxlLA0KICAgIC5DcmVhdGl2ZS1TdWJUaXRsZSB7DQogICAgICAgIGNvbG9yOiByZ2JhKDIwNSwgMTc2LCAxMzEsIDEuMDApOw0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4Ow0KICAgICAgICBmb250LXdlaWdodDogNDAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgIGZvbnQtZmFtaWx5OiBMYXRvOw0KICAgICAgICBwYWRkaW5nOiAwcHggMHB4IDBweCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4Ow0KICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4DQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkNyZWF0aXZlLUJ1dHRvbiwNCiAgICAuQ3JlYXRpdmUtQnV0dG9uIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMjA1LCAxNzYsIDEzMSwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMTNweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDEzcHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IExhdG87DQogICAgICAgIHBhZGRpbmc6IDE1cHggNTBweCAxNXB4IDUwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDIwNSwgMTc2LCAxMzEsIDAuMjUpOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4Ow0KICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4DQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkNyZWF0aXZlLUJ1dHRvbjpob3ZlciwNCiAgICAuQ3JlYXRpdmUtQnV0dG9uOmhvdmVyIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMjA1LCAxNzYsIDEzMSwgMS4wMCk7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDIwNSwgMTc2LCAxMzEsIDEuMDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4DQogICAgfQ0KDQoudHAtY2FwdGlvbi5zdWJjYXB0aW9uLA0KICAgIC5zdWJjYXB0aW9uIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMTExLCAxMjQsIDEzMCwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMTlweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IHJvYm90bzsNCiAgICAgICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGxlZnQNCiAgICB9DQogICAgLnRwLWNhcHRpb24uUmVkRG90LA0KICAgIC5SZWREb3Qgew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsgICAgICAgIA0KICAgICAgICBmb250LXdlaWdodDogNDAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7ICAgICAgICANCiAgICAgICAgcGFkZGluZzogMHB4IDBweCAwcHggMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjEzLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDVweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweCA1MHB4IDUwcHggNTBweA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5SZWREb3Q6aG92ZXIsDQogICAgLlJlZERvdDpob3ZlciB7DQogICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7DQogICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyMTMsIDAsIDAsIDEuMDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDVweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweCA1MHB4IDUwcHggNTBweA0KICAgIH0NCg0KICAgIC50cC1jYXB0aW9uLlNsaWRpbmdPdmVybGF5cy1UaXRsZSwNCiAgICAuU2xpZGluZ092ZXJsYXlzLVRpdGxlIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogNTBweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6ICJQbGF5ZmFpciBEaXNwbGF5IjsNCiAgICAgICAgcGFkZGluZzogMHB4IDBweCAwcHggMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHgNCiAgICB9DQogICAgLnRwLWNhcHRpb24uU2xpZGluZ092ZXJsYXlzLVRpdGxlLA0KICAgIC5TbGlkaW5nT3ZlcmxheXMtVGl0bGUgew0KICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiA1MHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogNTBweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogIlBsYXlmYWlyIERpc3BsYXkiOw0KICAgICAgICBwYWRkaW5nOiAwcHggMHB4IDBweCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMHB4IDBweA0KICAgIH0NCg0KICAgICAudHAtY2FwdGlvbi5Xb28tVGl0bGVMYXJnZSwNCiAgICAuV29vLVRpdGxlTGFyZ2Ugew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiA0MHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogNDBweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogIlBsYXlmYWlyIERpc3BsYXkiOw0KICAgICAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICANCiAgICB9DQogICAgLnRwLWNhcHRpb24uV29vLVJhdGluZywNCiAgICAuV29vLVJhdGluZyB7DQogICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgICAgICBmb250LXNpemU6IDE0cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4Ow0KICAgICAgICBmb250LXdlaWdodDogMzAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgIGZvbnQtZmFtaWx5OiBSb2JvdG87DQogICAgICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgICAgICANCiAgICB9DQogICAgLnRwLWNhcHRpb24uV29vLVN1YlRpdGxlLA0KICAgIC5Xb28tU3ViVGl0bGUgew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMThweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgICAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4Ow0KICAgICAgICANCiAgICB9DQogICAgLnRwLWNhcHRpb24uV29vLVByaWNlTGFyZ2UsDQogICAgLldvby1QcmljZUxhcmdlIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogNjBweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IFJvYm90bzsNCiAgICAgICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLldvby1Qcm9kdWN0SW5mbywNCiAgICAuV29vLVByb2R1Y3RJbmZvIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMTVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IFJvYm90bzsNCiAgICAgICAgcGFkZGluZzogMTJweCA3NXB4IDEycHggNTBweDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NCwgMjA3LCAxMTQsIDEuMDApOw0KICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgICAgIGJvcmRlci13aWR0aDogMXB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDRweCA0cHg7DQogICAgICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgICAgIA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Xb28tUHJvZHVjdEluZm86aG92ZXIsDQogICAgLldvby1Qcm9kdWN0SW5mbzpob3ZlciB7DQogICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQzLCAxNjgsIDcxLCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCA0cHggNHB4DQogICAgfQ0KICAgIC50cC1jYXB0aW9uLldvby1BZGRUb0NhcnQsDQogICAgLldvby1BZGRUb0NhcnQgew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAxNXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTVweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgICAgICBwYWRkaW5nOiAxMnB4IDM1cHggMTJweCAzNXB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU0LCAyMDcsIDExNCwgMS4wMCk7DQogICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggNHB4IDRweDsNCiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLldvby1BZGRUb0NhcnQ6aG92ZXIsDQogICAgLldvby1BZGRUb0NhcnQ6aG92ZXIgew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0MywgMTY4LCA3MSwgMS4wMCk7DQogICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggNHB4IDRweA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Xb28tVGl0bGVMYXJnZSwNCiAgICAuV29vLVRpdGxlTGFyZ2Ugew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiA0MHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogNDBweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogIlBsYXlmYWlyIERpc3BsYXkiOw0KICAgICAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICANCiAgICB9DQogICAgLnRwLWNhcHRpb24uV29vLVN1YlRpdGxlLA0KICAgIC5Xb28tU3ViVGl0bGUgew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAxOHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMThweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgICAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4Ow0KICAgICAgICANCiAgICB9DQogICAgLnRwLWNhcHRpb24uV29vLVByaWNlTGFyZ2UsDQogICAgLldvby1QcmljZUxhcmdlIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogNjBweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IFJvYm90bzsNCiAgICAgICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLldvby1Qcm9kdWN0SW5mbywNCiAgICAuV29vLVByb2R1Y3RJbmZvIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMTVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IFJvYm90bzsNCiAgICAgICAgcGFkZGluZzogMTJweCA3NXB4IDEycHggNTBweDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NCwgMjA3LCAxMTQsIDEuMDApOw0KICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgICAgIGJvcmRlci13aWR0aDogMXB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDRweCA0cHg7DQogICAgICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgICAgIA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5Xb28tUHJvZHVjdEluZm86aG92ZXIsDQogICAgLldvby1Qcm9kdWN0SW5mbzpob3ZlciB7DQogICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQzLCAxNjgsIDcxLCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCA0cHggNHB4DQogICAgfQ0KICAgIC50cC1jYXB0aW9uLldvby1BZGRUb0NhcnQsDQogICAgLldvby1BZGRUb0NhcnQgew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAxNXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMTVweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgICAgICBwYWRkaW5nOiAxMnB4IDM1cHggMTJweCAzNXB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU0LCAyMDcsIDExNCwgMS4wMCk7DQogICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggNHB4IDRweDsNCiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLldvby1BZGRUb0NhcnQ6aG92ZXIsDQogICAgLldvby1BZGRUb0NhcnQ6aG92ZXIgew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0MywgMTY4LCA3MSwgMS4wMCk7DQogICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggNHB4IDRweA0KICAgIH0NCg0KICAgIC50cC1jYXB0aW9uLkZ1bGxTY3JlZW4tVG9nZ2xlLA0KICAgIC5GdWxsU2NyZWVuLVRvZ2dsZSB7DQogICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgICAgICBmb250LXNpemU6IDIwcHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4Ow0KICAgICAgICBmb250LXdlaWdodDogNDAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgIGZvbnQtZmFtaWx5OiBSYWxld2F5Ow0KICAgICAgICBwYWRkaW5nOiAxMXB4IDhweCAxMXB4IDEycHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUwKTsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4Ow0KICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4Ow0KICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0DQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTY3JlZW4tVG9nZ2xlOmhvdmVyLA0KICAgIC5GdWxsU2NyZWVuLVRvZ2dsZTpob3ZlciB7DQogICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMHB4IDBweA0KICAgIH0NCg0KICAgIC50cC1jYXB0aW9uLkFnZW5jeS1UaXRsZSwNCi5BZ2VuY3ktVGl0bGUgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogNzBweDsNCiAgICBsaW5lLWhlaWdodDogNzBweDsNCiAgICBmb250LXdlaWdodDogOTAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogbGF0bzsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIGxldHRlci1zcGFjaW5nOiAxMHB4DQp9DQoudHAtY2FwdGlvbi5BZ2VuY3ktU3ViVGl0bGUsDQouQWdlbmN5LVN1YlRpdGxlIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDIwcHg7DQogICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBmb250LXN0eWxlOiBpdGFsaWM7DQogICAgZm9udC1mYW1pbHk6IEdlb3JnaWEsIHNlcmlmOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246IGNlbnRlcg0KfQ0KLnRwLWNhcHRpb24uQWdlbmN5LVBsYXlCdG4sDQouQWdlbmN5LVBsYXlCdG4gew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMzBweDsNCiAgICBsaW5lLWhlaWdodDogNzFweDsNCiAgICBmb250LXdlaWdodDogNTAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgIHBhZGRpbmc6IDBweCAwcHggMHB4IDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAycHg7DQogICAgYm9yZGVyLXJhZGl1czogMTAwcHggMTAwcHggMTAwcHggMTAwcHg7DQogICAgdGV4dC1hbGlnbjogY2VudGVyDQp9DQoudHAtY2FwdGlvbi5BZ2VuY3ktUGxheUJ0bjpob3ZlciwNCi5BZ2VuY3ktUGxheUJ0bjpob3ZlciB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgIGJvcmRlci13aWR0aDogMnB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4IDEwMHB4IDEwMHB4IDEwMHB4Ow0KICAgIGN1cnNvcjogcG9pbnRlcg0KfQ0KLnRwLWNhcHRpb24uQWdlbmN5LVNtYWxsVGV4dCwNCi5BZ2VuY3ktU21hbGxUZXh0IHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDEycHg7DQogICAgbGluZS1oZWlnaHQ6IDEycHg7DQogICAgZm9udC13ZWlnaHQ6IDkwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IGxhdG87DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBsZXR0ZXItc3BhY2luZzogNXB4DQp9DQoudHAtY2FwdGlvbi5BZ2VuY3ktU29jaWFsLA0KLkFnZW5jeS1Tb2NpYWwgew0KICAgIGNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICBsaW5lLWhlaWdodDogNTBweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogR2VvcmdpYSwgc2VyaWY7DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDJweDsNCiAgICBib3JkZXItcmFkaXVzOiAzMHB4IDMwcHggMzBweCAzMHB4Ow0KICAgIHRleHQtYWxpZ246IGNlbnRlcg0KfQ0KLnRwLWNhcHRpb24uQWdlbmN5LVNvY2lhbDpob3ZlciwNCi5BZ2VuY3ktU29jaWFsOmhvdmVyIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDJweDsNCiAgICBib3JkZXItcmFkaXVzOiAzMHB4IDMwcHggMzBweCAzMHB4Ow0KICAgIGN1cnNvcjogcG9pbnRlcg0KfQ0KLnRwLWNhcHRpb24uQWdlbmN5LUNsb3NlQnRuLA0KLkFnZW5jeS1DbG9zZUJ0biB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiA1MHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA1MHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSb2JvdG87DQogICAgcGFkZGluZzogMHB4IDBweCAwcHggMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4IDEwMHB4IDEwMHB4IDEwMHB4Ow0KICAgIHRleHQtYWxpZ246IGNlbnRlcg0KfQ0KLnRwLWNhcHRpb24uQWdlbmN5LUNsb3NlQnRuOmhvdmVyLA0KLkFnZW5jeS1DbG9zZUJ0bjpob3ZlciB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMTAwcHggMTAwcHggMTAwcHggMTAwcHg7DQogICAgY3Vyc29yOiBwb2ludGVyDQp9DQoNCi50cC1jYXB0aW9uLkRpbmluZy1UaXRsZSwNCi5EaW5pbmctVGl0bGUgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogNzBweDsNCiAgICBsaW5lLWhlaWdodDogNzBweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogR2VvcmdpYSwgc2VyaWY7DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBsZXR0ZXItc3BhY2luZzogMTBweA0KfQ0KLnRwLWNhcHRpb24uRGluaW5nLVN1YlRpdGxlLA0KLkRpbmluZy1TdWJUaXRsZSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAyMHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBHZW9yZ2lhLCBzZXJpZjsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0DQp9DQoudHAtY2FwdGlvbi5EaW5pbmctQnRuTGlnaHQsDQouRGluaW5nLUJ0bkxpZ2h0IHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUwKTsNCiAgICBmb250LXNpemU6IDE1cHg7DQogICAgbGluZS1oZWlnaHQ6IDE1cHg7DQogICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IExhdG87DQogICAgcGFkZGluZzogMTdweCA3M3B4IDE3cHggNTBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBsZXR0ZXItc3BhY2luZzogMnB4DQp9DQoudHAtY2FwdGlvbi5EaW5pbmctQnRuTGlnaHQ6aG92ZXIsDQouRGluaW5nLUJ0bkxpZ2h0OmhvdmVyIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHgNCn0NCi50cC1jYXB0aW9uLkRpbmluZy1Tb2NpYWwsDQouRGluaW5nLVNvY2lhbCB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAyNXB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA1MHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBHZW9yZ2lhLCBzZXJpZjsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTsNCiAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgIGJvcmRlci13aWR0aDogMXB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMzBweCAzMHB4IDMwcHg7DQogICAgdGV4dC1hbGlnbjogY2VudGVyDQp9DQoudHAtY2FwdGlvbi5EaW5pbmctU29jaWFsOmhvdmVyLA0KLkRpbmluZy1Tb2NpYWw6aG92ZXIgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICBib3JkZXItcmFkaXVzOiAzMHB4IDMwcHggMzBweCAzMHB4Ow0KICAgIGN1cnNvcjogcG9pbnRlcg0KfQ0KdHAtY2FwdGlvbi5UZWFtLVRodW1iLA0KLlRlYW0tVGh1bWIgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMjBweDsNCiAgICBsaW5lLWhlaWdodDogMjJweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogQXJpYWw7DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uVGVhbS1UaHVtYjpob3ZlciwNCi5UZWFtLVRodW1iOmhvdmVyIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIGN1cnNvcjogcG9pbnRlcg0KfQ0KLnRwLWNhcHRpb24uVGVhbS1OYW1lLA0KLlRlYW0tTmFtZSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiA3MHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA3MHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA5MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSb2JvdG87DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uVGVhbS1Qb3NpdGlvbiwNCi5UZWFtLVBvc2l0aW9uIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDMwcHg7DQogICAgbGluZS1oZWlnaHQ6IDMwcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IEdlb3JnaWEsIHNlcmlmOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQNCn0NCi50cC1jYXB0aW9uLlRlYW0tRGVzY3JpcHRpb24sDQouVGVhbS1EZXNjcmlwdGlvbiB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxOHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyOHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSb2JvdG87DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uVGVhbS1Tb2NpYWwsDQouVGVhbS1Tb2NpYWwgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogNTBweDsNCiAgICBsaW5lLWhlaWdodDogNTBweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogQXJpYWw7DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogY2VudGVyDQp9DQoudHAtY2FwdGlvbi5UZWFtLVNvY2lhbDpob3ZlciwNCi5UZWFtLVNvY2lhbDpob3ZlciB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMHB4IDBweDsNCiAgICBjdXJzb3I6IHBvaW50ZXINCn0NCg0KLnRwLWNhcHRpb24uVmlkZW9Db250cm9scy1QbGF5LA0KLlZpZGVvQ29udHJvbHMtUGxheSB7DQogICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgZm9udC1zaXplOiA1MHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAxMjBweDsNCiAgICBmb250LXdlaWdodDogNTAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgIHBhZGRpbmc6IDBweCAwcHggMHB4IDdweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAxMDBweCAxMDBweCAxMDBweCAxMDBweDsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXINCn0NCi50cC1jYXB0aW9uLlZpZGVvQ29udHJvbHMtUGxheTpob3ZlciwNCi5WaWRlb0NvbnRyb2xzLVBsYXk6aG92ZXIgew0KICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4IDEwMHB4IDEwMHB4IDEwMHB4Ow0KICAgIGN1cnNvcjogcG9pbnRlcg0KfQ0KLnRwLWNhcHRpb24uVmlkZW9QbGF5ZXItVGl0bGUsDQouVmlkZW9QbGF5ZXItVGl0bGUgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogNDBweDsNCiAgICBsaW5lLWhlaWdodDogNDBweDsNCiAgICBmb250LXdlaWdodDogOTAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIGxldHRlci1zcGFjaW5nOiAxMHB4DQp9DQoudHAtY2FwdGlvbi5WaWRlb1BsYXllci1TdWJUaXRsZSwNCi5WaWRlb1BsYXllci1TdWJUaXRsZSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAyMHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgZm9udC1zdHlsZTogaXRhbGljOw0KICAgIGZvbnQtZmFtaWx5OiBHZW9yZ2lhLCBzZXJpZjsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXINCn0NCi50cC1jYXB0aW9uLlZpZGVvUGxheWVyLVNvY2lhbCwNCi5WaWRlb1BsYXllci1Tb2NpYWwgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogNTBweDsNCiAgICBsaW5lLWhlaWdodDogNTBweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogQXJpYWw7DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogY2VudGVyDQp9DQoudHAtY2FwdGlvbi5WaWRlb1BsYXllci1Tb2NpYWw6aG92ZXIsDQouVmlkZW9QbGF5ZXItU29jaWFsOmhvdmVyIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4Ow0KICAgIGN1cnNvcjogcG9pbnRlcg0KfQ0KLnRwLWNhcHRpb24uVmlkZW9Db250cm9scy1NdXRlLA0KLlZpZGVvQ29udHJvbHMtTXV0ZSB7DQogICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgZm9udC1zaXplOiAyMHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA1MHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSb2JvdG87DQogICAgcGFkZGluZzogMHB4IDBweCAwcHggMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4IDEwMHB4IDEwMHB4IDEwMHB4Ow0KICAgIHRleHQtYWxpZ246IGNlbnRlcg0KfQ0KLnRwLWNhcHRpb24uVmlkZW9Db250cm9scy1NdXRlOmhvdmVyLA0KLlZpZGVvQ29udHJvbHMtTXV0ZTpob3ZlciB7DQogICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMTAwcHggMTAwcHggMTAwcHggMTAwcHg7DQogICAgY3Vyc29yOiBwb2ludGVyDQp9DQoudHAtY2FwdGlvbi5WaWRlb0NvbnRyb2xzLVBhdXNlLA0KLlZpZGVvQ29udHJvbHMtUGF1c2Ugew0KICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMjBweDsNCiAgICBsaW5lLWhlaWdodDogNTBweDsNCiAgICBmb250LXdlaWdodDogNTAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgIHBhZGRpbmc6IDBweCAwcHggMHB4IDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAxMDBweCAxMDBweCAxMDBweCAxMDBweDsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXINCn0NCi50cC1jYXB0aW9uLlZpZGVvQ29udHJvbHMtUGF1c2U6aG92ZXIsDQouVmlkZW9Db250cm9scy1QYXVzZTpob3ZlciB7DQogICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMTAwcHggMTAwcHggMTAwcHggMTAwcHg7DQogICAgY3Vyc29yOiBwb2ludGVyDQogfQ0KDQouc291bmRjbG91ZHdyYXBwZXIgaWZyYW1lIHsNCiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50DQp9DQoudHAtY2FwdGlvbi5TbGVla0xhbmRpbmctVGl0bGUsDQouU2xlZWtMYW5kaW5nLVRpdGxlIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDM1cHg7DQogICAgbGluZS1oZWlnaHQ6IDQwcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IExhdG87DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIGxldHRlci1zcGFjaW5nOiA1cHgNCn0NCi50cC1jYXB0aW9uLlNsZWVrTGFuZGluZy1CdXR0b25CRywNCi5TbGVla0xhbmRpbmctQnV0dG9uQkcgew0KICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgICAgICANCiAgICBmb250LXdlaWdodDogNzAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgICAgDQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMCk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCA1cHggNXB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQ7ICAgIA0KICAgIGJveC1zaGFkb3c6IGluc2V0IDBweCAycHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpDQp9DQoudHAtY2FwdGlvbi5TbGVla0xhbmRpbmctU21hbGxUaXRsZSwNCi5TbGVla0xhbmRpbmctU21hbGxUaXRsZSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxM3B4Ow0KICAgIGxpbmUtaGVpZ2h0OiA1MHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA5MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBMYXRvOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBsZXR0ZXItc3BhY2luZzogMnB4DQp9DQoudHAtY2FwdGlvbi5TbGVla0xhbmRpbmctQm90dG9tVGV4dCwNCi5TbGVla0xhbmRpbmctQm90dG9tVGV4dCB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxNXB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyNHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBMYXRvOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uU2xlZWtMYW5kaW5nLVNvY2lhbCwNCi5TbGVla0xhbmRpbmctU29jaWFsIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDIycHg7DQogICAgbGluZS1oZWlnaHQ6IDMwcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IEFyaWFsOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXINCn0NCi50cC1jYXB0aW9uLlNsZWVrTGFuZGluZy1Tb2NpYWw6aG92ZXIsDQouU2xlZWtMYW5kaW5nLVNvY2lhbDpob3ZlciB7DQogICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICBjdXJzb3I6IHBvaW50ZXINCn0NCiNyZXZfc2xpZGVyXzQyOV8xX3dyYXBwZXIgLnRwLWxvYWRlci5zcGlubmVyMiB7DQogICAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTU1NSAhaW1wb3J0YW50Ow0KfQ0KLnRwLWZhdCB7DQogICAgZm9udC13ZWlnaHQ6IDkwMCAhaW1wb3J0YW50Ow0KfQ0KDQoudHAtY2FwdGlvbi5Qb3N0U2xpZGVyLUNhdGVnb3J5LA0KLlBvc3RTbGlkZXItQ2F0ZWdvcnkgew0KICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMTVweDsNCiAgICBsaW5lLWhlaWdodDogMTVweDsNCiAgICBmb250LXdlaWdodDogMzAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIGxldHRlci1zcGFjaW5nOiAzcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uUG9zdFNsaWRlci1UaXRsZSwNCi5Qb3N0U2xpZGVyLVRpdGxlIHsNCiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICBmb250LXNpemU6IDQwcHg7DQogICAgbGluZS1oZWlnaHQ6IDQwcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6ICJQbGF5ZmFpciBEaXNwbGF5IjsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0DQp9DQoudHAtY2FwdGlvbi5Qb3N0U2xpZGVyLUNvbnRlbnQsDQouUG9zdFNsaWRlci1Db250ZW50IHsNCiAgICBjb2xvcjogcmdiYSgxMTksIDExOSwgMTE5LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDE1cHg7DQogICAgbGluZS1oZWlnaHQ6IDIzcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IFJvYm90bzsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0DQp9DQoudHAtY2FwdGlvbi5Qb3N0U2xpZGVyLUJ1dHRvbiwNCi5Qb3N0U2xpZGVyLUJ1dHRvbiB7DQogICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxNXB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA0MHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSb2JvdG87DQogICAgcGFkZGluZzogMXB4IDU2cHggMXB4IDMycHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQNCn0NCi50cC1jYXB0aW9uLlBvc3RTbGlkZXItQnV0dG9uOmhvdmVyLA0KLlBvc3RTbGlkZXItQnV0dG9uOmhvdmVyIHsNCiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzgsIDIzOCwgMjM4LCAxLjAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHg7DQogICAgY3Vyc29yOiBwb2ludGVyDQp9DQoNCi8qIG1lZGlhIHF1ZXJpZXMgKi8NCg0KQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge30gQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge30gLnRwLWNhcHRpb24uTGFuZGluZ1BhZ2UtVGl0bGUsDQouTGFuZGluZ1BhZ2UtVGl0bGUgew0KICAgIGNvbG9yOnJnYmEoMjU1LA0KICAgIDI1NSwNCiAgICAyNTUsDQogICAgMS4wMCk7DQogICAgZm9udC1zaXplOjcwcHg7DQogICAgbGluZS1oZWlnaHQ6ODBweDsNCiAgICBmb250LXdlaWdodDo5MDA7DQogICAgZm9udC1zdHlsZTpub3JtYWw7DQogICAgZm9udC1mYW1pbHk6TGF0bzsNCiAgICBwYWRkaW5nOjAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6bm9uZTsNCiAgICBib3JkZXItd2lkdGg6MHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6MCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246bGVmdDsNCiAgICBsZXR0ZXItc3BhY2luZzoxMHB4DQp9DQoudHAtY2FwdGlvbi5MYW5kaW5nUGFnZS1TdWJUaXRsZSwNCi5MYW5kaW5nUGFnZS1TdWJUaXRsZSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAyMHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAzMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgZm9udC1zdHlsZTogaXRhbGljOw0KICAgIGZvbnQtZmFtaWx5OiBHZW9yZ2lhLCBzZXJpZjsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0DQp9DQoudHAtY2FwdGlvbi5MYW5kaW5nUGFnZS1CdXR0b24sDQouTGFuZGluZ1BhZ2UtQnV0dG9uIHsNCiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICBmb250LXNpemU6IDE1cHg7DQogICAgbGluZS1oZWlnaHQ6IDU0cHg7DQogICAgZm9udC13ZWlnaHQ6IDUwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IFJvYm90bzsNCiAgICBwYWRkaW5nOiAwcHggMzVweCAwcHggMzVweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBsZXR0ZXItc3BhY2luZzogM3B4DQp9DQoudHAtY2FwdGlvbi5MYW5kaW5nUGFnZS1CdXR0b246aG92ZXIsDQouTGFuZGluZ1BhZ2UtQnV0dG9uOmhvdmVyIHsNCiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHg7DQogICAgY3Vyc29yOiBwb2ludGVyDQp9DQoudHAtY2FwdGlvbi5BcHAtQ29udGVudCBhLA0KLnRwLWNhcHRpb24uQXBwLUNvbnRlbnQgYTp2aXNpdGVkIHsNCiAgICBjb2xvcjogIzg5MTI0ZSAhaW1wb3J0YW50Ow0KICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50Ow0KICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7DQp9DQoudHAtY2FwdGlvbi5BcHAtQ29udGVudCBhOmhvdmVyIHsNCiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzg5MTI0ZSAhaW1wb3J0YW50Ow0KfQ0KLnRwLWNhcHRpb24uUm9ja0JhbmQtTG9nb1RleHQsDQouUm9ja0JhbmQtTG9nb1RleHQgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogNjBweDsNCiAgICBsaW5lLWhlaWdodDogNjBweDsNCiAgICBmb250LXdlaWdodDogNzAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogT3N3YWxkOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uVHdpdHRlci1Db250ZW50IGEsDQoudHAtY2FwdGlvbi5Ud2l0dGVyLUNvbnRlbnQgYTp2aXNpdGVkIHsNCiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7DQp9DQoudHAtY2FwdGlvbi5Ud2l0dGVyLUNvbnRlbnQgYTpob3ZlciB7DQogICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsNCn0NCi5zb3VuZGNsb3Vkd3JhcHBlciBpZnJhbWUgew0KICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQNCn0NCg0KLnRwLWNhcHRpb24uQWdlbmN5LUxvZ29UZXh0LA0KLkFnZW5jeS1Mb2dvVGV4dCB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxMnB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBMYXRvOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgbGV0dGVyLXNwYWNpbmc6IDFweA0KfQ0KLnRwLWNhcHRpb24uQ29taW5nU29vbi1IaWdobGlnaHQsDQouQ29taW5nU29vbi1IaWdobGlnaHQgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMjBweDsNCiAgICBsaW5lLWhlaWdodDogMzdweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICBwYWRkaW5nOiAwIDIwcHggM3B4IDIwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNTQsIDIzOCwgMS4wMCk7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246IGxlZnQNCn0NCi50cC1jYXB0aW9uLkNvbWluZ1Nvb24tQ291bnQsDQouQ29taW5nU29vbi1Db3VudCB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiA1MHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA1MHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA5MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBMYXRvOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogbGVmdA0KfQ0KLnRwLWNhcHRpb24uQ29taW5nU29vbi1Db3VudFVuaXQsDQouQ29taW5nU29vbi1Db3VudFVuaXQgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMjBweDsNCiAgICBsaW5lLWhlaWdodDogMjBweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogY2VudGVyDQp9DQoudHAtY2FwdGlvbi5Db21pbmdTb29uLU5vdGlmeU1lLA0KLkNvbWluZ1Nvb24tTm90aWZ5TWUgew0KICAgIGNvbG9yOiByZ2JhKDE2NCwgMTU3LCAxNDMsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMjdweDsNCiAgICBsaW5lLWhlaWdodDogMzVweDsNCiAgICBmb250LXdlaWdodDogNjAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogY2VudGVyDQp9DQoNCiNtY19lbWJlZF9zaWdudXAgaW5wdXQjbWNlLUVNQUlMIHsNCiAgICBmb250LWZhbWlseTogIkxhdG8iLCBzYW5zLXNlcmlmOw0KICAgIGZvbnQtc2l6ZTogMTVweDsNCiAgICBjb2xvcjogIzAwMDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOw0KICAgIGxpbmUtaGVpZ2h0OiA0NnB4Ow0KICAgIHBhZGRpbmc6IDAgMjBweDsNCiAgICBjdXJzb3I6IHRleHQ7DQogICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjsNCiAgICB3aWR0aDogNDAwcHg7DQogICAgbWFyZ2luLWJvdHRvbTogMHB4Ow0KICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzOw0KICAgIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzOw0KICAgIC1vLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41czsNCiAgICAtbXMtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzOw0KICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41czsNCiAgICANCiAgICANCiAgICBib3JkZXItcmFkaXVzOiAwcHg7DQp9DQojbWNfZW1iZWRfc2lnbnVwIGlucHV0I21jZS1FTUFJTFt0eXBlPSJlbWFpbCJdOmZvY3VzIHsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOw0KICAgIGJvcmRlcjogMXB4IHNvbGlkICM2NjY7DQogICAgYm9yZGVyLXJpZ2h0OiAwOw0KfQ0KI21jX2VtYmVkX3NpZ251cCBpbnB1dCNtYy1lbWJlZGRlZC1zdWJzY3JpYmUsDQojbWNfZW1iZWRfc2lnbnVwIGlucHV0I21jLWVtYmVkZGVkLXN1YnNjcmliZTpmb2N1cyB7DQogICAgZm9udC1mYW1pbHk6ICJMYXRvIiwgc2Fucy1zZXJpZjsNCiAgICBsaW5lLWhlaWdodDogNDZweDsNCiAgICBsZXR0ZXItc3BhY2luZzogMXB4Ow0KICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7DQogICAgZm9udC1zaXplOiAxM3B4Ow0KICAgIGZvbnQtd2VpZ2h0OiA5MDA7DQogICAgcGFkZGluZzogMCAyMHB4Ow0KICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDlhZWU7DQogICAgYmFja2dyb3VuZDogIzAwOWFlZTsNCiAgICBjb2xvcjogI2ZmZjsNCiAgICANCiAgICANCiAgICBib3JkZXItcmFkaXVzOiAwcHg7DQp9DQojbWNfZW1iZWRfc2lnbnVwIGlucHV0I21jLWVtYmVkZGVkLXN1YnNjcmliZTpob3ZlciB7DQogICAgYmFja2dyb3VuZDogIzAwODNkNDsNCn0NCkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHsNCiAgICAjbWNfZW1iZWRfc2lnbnVwIGlucHV0I21jZS1FTUFJTCB7DQogICAgICAgIHdpZHRoOiAyMDBweDsNCiAgICB9DQp9DQoudHAtY2FwdGlvbi5BZ2VuY3ktU21hbGxUaXRsZSwNCi5BZ2VuY3ktU21hbGxUaXRsZSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxNXB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMnB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBsYXRvOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgbGV0dGVyLXNwYWNpbmc6IDZweA0KfQ0KLnRwLWNhcHRpb24uQWdlbmN5LVNtYWxsQ29udGVudCwNCi5BZ2VuY3ktU21hbGxDb250ZW50IHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDE1cHg7DQogICAgbGluZS1oZWlnaHQ6IDI0cHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IGxhdG87DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246IGNlbnRlcg0KfQ0KLnRwLWNhcHRpb24uQWdlbmN5LVNtYWxsTGluaywNCi5BZ2VuY3ktU21hbGxMaW5rIHsNCiAgICBjb2xvcjogcmdiYSgyNDgsIDEyNCwgOSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxMnB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMnB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBsYXRvOw0KICAgIHBhZGRpbmc6IDAgMCAwcHggMDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgbGV0dGVyLXNwYWNpbmc6IDJweDsNCiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y4N2MwOSAhaW1wb3J0YW50DQp9DQoudHAtY2FwdGlvbi5BZ2VuY3ktU21hbGxMaW5rOmhvdmVyLA0KLkFnZW5jeS1TbWFsbExpbms6aG92ZXIgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgY3Vyc29yOiBwb2ludGVyDQp9DQoudHAtY2FwdGlvbi5BZ2VuY3ktTmF2QnV0dG9uLA0KLkFnZW5jeS1OYXZCdXR0b24gew0KICAgIGNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMTdweDsNCiAgICBsaW5lLWhlaWdodDogNTBweDsNCiAgICBmb250LXdlaWdodDogNTAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgIHBhZGRpbmc6IDBweCAwcHggMHB4IDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4Ow0KICAgIHRleHQtYWxpZ246IGNlbnRlcg0KfQ0KLnRwLWNhcHRpb24uQWdlbmN5LU5hdkJ1dHRvbjpob3ZlciwNCi5BZ2VuY3ktTmF2QnV0dG9uOmhvdmVyIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMS4wMCk7DQogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHg7DQogICAgY3Vyc29yOiBwb2ludGVyDQp9DQoudHAtY2FwdGlvbi5BZ2VuY3ktU21hbGxMaW5rR3JlZW4sDQouQWdlbmN5LVNtYWxsTGlua0dyZWVuIHsNCiAgICBjb2xvcjogcmdiYSgxMDksIDE3NywgMTU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDEycHg7DQogICAgbGluZS1oZWlnaHQ6IDIycHg7DQogICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IGxhdG87DQogICAgcGFkZGluZzogMCAwIDBweCAwOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICBsZXR0ZXItc3BhY2luZzogMnB4Ow0KICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNmRiMTliICFpbXBvcnRhbnQNCn0NCi50cC1jYXB0aW9uLkFnZW5jeS1TbWFsbExpbmtHcmVlbjpob3ZlciwNCi5BZ2VuY3ktU21hbGxMaW5rR3JlZW46aG92ZXIgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgY3Vyc29yOiBwb2ludGVyDQp9DQoudHAtY2FwdGlvbi5BZ2VuY3ktU21hbGxMaW5rQmx1ZSwNCi5BZ2VuY3ktU21hbGxMaW5rQmx1ZSB7DQogICAgY29sb3I6IHJnYmEoMTUzLCAxNTMsIDE1MywgMS4wMCk7DQogICAgZm9udC1zaXplOiAxMnB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMnB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBsYXRvOw0KICAgIHBhZGRpbmc6IDAgMCAwcHggMDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgbGV0dGVyLXNwYWNpbmc6IDJweDsNCiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk5OSAhaW1wb3J0YW50DQp9DQoudHAtY2FwdGlvbi5BZ2VuY3ktU21hbGxMaW5rQmx1ZTpob3ZlciwNCi5BZ2VuY3ktU21hbGxMaW5rQmx1ZTpob3ZlciB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICBjdXJzb3I6IHBvaW50ZXINCn0NCi50cC1jYXB0aW9uLkFnZW5jeS1Mb2dvVGV4dCwNCi5BZ2VuY3ktTG9nb1RleHQgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMTJweDsNCiAgICBsaW5lLWhlaWdodDogMjBweDsNCiAgICBmb250LXdlaWdodDogNDAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgIGxldHRlci1zcGFjaW5nOiAxcHgNCn0NCi50cC1jYXB0aW9uLkFnZW5jeS1BcnJvd1Rvb2x0aXAsDQouQWdlbmN5LUFycm93VG9vbHRpcCB7DQogICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxNXB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA0MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiAiUGVybWFuZW50IE1hcmtlciI7DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0DQp9DQoudHAtY2FwdGlvbi5BZ2VuY3ktU21hbGxTb2NpYWwsDQouQWdlbmN5LVNtYWxsU29jaWFsIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDMwcHg7DQogICAgbGluZS1oZWlnaHQ6IDMwcHg7DQogICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IEFyaWFsOw0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXINCn0NCi50cC1jYXB0aW9uLkFnZW5jeS1TbWFsbFNvY2lhbDpob3ZlciwNCi5BZ2VuY3ktU21hbGxTb2NpYWw6aG92ZXIgew0KICAgIGNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDEuMDApOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCAwcHg7DQogICAgY3Vyc29yOiBwb2ludGVyDQp9DQoudHAtY2FwdGlvbi5Ud2l0dGVyLUNvbnRlbnQgYSwNCi50cC1jYXB0aW9uLlR3aXR0ZXItQ29udGVudCBhOnZpc2l0ZWQgew0KICAgIGNvbG9yOiAjMDA4NEI0ICFpbXBvcnRhbnQNCn0NCi50cC1jYXB0aW9uLlR3aXR0ZXItQ29udGVudCBhOmhvdmVyIHsNCiAgICBjb2xvcjogIzAwODRCNCAhaW1wb3J0YW50Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQNCn0NCi50cC1jYXB0aW9uLkNyZWF0aXZlRnJvbnRQYWdlLUJ0biwNCi5DcmVhdGl2ZUZyb250UGFnZS1CdG4gew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgICBsaW5lLWhlaWdodDogNjBweDsNCiAgICBmb250LXdlaWdodDogOTAwOw0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgIHBhZGRpbmc6IDBweCA1MHB4IDBweCA1MHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTA0LCA5MiwgMS4wMCk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCA0cHggNHB4Ow0KICAgIGxldHRlci1zcGFjaW5nOiAycHgNCn0NCi50cC1jYXB0aW9uLkNyZWF0aXZlRnJvbnRQYWdlLUJ0bjpob3ZlciwNCi5DcmVhdGl2ZUZyb250UGFnZS1CdG46aG92ZXIgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpOw0KICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggNHB4IDRweDsNCiAgICBjdXJzb3I6IHBvaW50ZXINCn0NCi50cC1jYXB0aW9uLkNyZWF0aXZlRnJvbnRQYWdlLU1lbnUsDQouQ3JlYXRpdmVGcm9udFBhZ2UtTWVudSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiAxNHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAxNHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiByb2JvdG87DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICBsZXR0ZXItc3BhY2luZzogMnB4DQp9DQoudHAtZmxpcC1pbmRleCB7DQogICAgei1pbmRleDogMTAwMCAhaW1wb3J0YW50Ow0KfQ0KLnRwLWNhcHRpb24uVHdpdHRlci1Db250ZW50IGEsDQoudHAtY2FwdGlvbi5Ud2l0dGVyLUNvbnRlbnQgYTp2aXNpdGVkIHsNCiAgICBjb2xvcjogIzAwODRCNCAhaW1wb3J0YW50DQp9DQoudHAtY2FwdGlvbi5Ud2l0dGVyLUNvbnRlbnQgYTpob3ZlciB7DQogICAgY29sb3I6ICMwMDg0QjQgIWltcG9ydGFudDsNCiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50DQp9DQoudHAtY2FwdGlvbi5GdWxsU2NyZWVuTWVudS1DYXRlZ29yeSwNCi5GdWxsU2NyZWVuTWVudS1DYXRlZ29yeSB7DQogICAgY29sb3I6IHJnYmEoMTcsIDE3LCAxNywgMS4wMCk7DQogICAgZm9udC1zaXplOiAyMHB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBCZW5jaE5pbmU7DQogICAgcGFkZGluZzogMjFweCAzMHB4IDE2cHggMzBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTApOw0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICBsZXR0ZXItc3BhY2luZzogM3B4DQp9DQoudHAtY2FwdGlvbi5GdWxsU2NyZWVuTWVudS1UaXRsZSwNCi5GdWxsU2NyZWVuTWVudS1UaXRsZSB7DQogICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgZm9udC1zaXplOiA2NXB4Ow0KICAgIGxpbmUtaGVpZ2h0OiA3MHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA3MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBCZW5jaE5pbmU7DQogICAgcGFkZGluZzogMjFweCAzMHB4IDE2cHggMzBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE3LCAxNywgMTcsIDAuOTApOw0KICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweA0KfQ0KLnRwLWNhcHRpb24uVHdpdHRlci1Db250ZW50IGEsDQoudHAtY2FwdGlvbi5Ud2l0dGVyLUNvbnRlbnQgYTp2aXNpdGVkIHsNCiAgICBjb2xvcjogIzAwODRCNCAhaW1wb3J0YW50DQp9DQoudHAtY2FwdGlvbi5Ud2l0dGVyLUNvbnRlbnQgYTpob3ZlciB7DQogICAgY29sb3I6ICMwMDg0QjQgIWltcG9ydGFudDsNCiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50DQp9DQoudHAtY2FwdGlvbi5UZWNoSm91cm5hbC1CdXR0b24sDQouVGVjaEpvdXJuYWwtQnV0dG9uIHsNCiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxLjAwKTsNCiAgICBmb250LXNpemU6IDEzcHg7DQogICAgbGluZS1oZWlnaHQ6IDQwcHg7DQogICAgZm9udC13ZWlnaHQ6IDkwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IFJhbGV3YXk7DQogICAgcGFkZGluZzogMXB4IDMwcHggMXB4IDMwcHg7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMzgsIDAsIDI1NSwgMS4wMCk7DQogICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQ7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggMHB4Ow0KICAgIGxldHRlci1zcGFjaW5nOiAzcHgNCn0NCi50cC1jYXB0aW9uLlRlY2hKb3VybmFsLUJ1dHRvbjpob3ZlciwNCi5UZWNoSm91cm5hbC1CdXR0b246aG92ZXIgew0KICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDEuMDApOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAxLjAwKTsNCiAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMHB4IDBweDsNCiAgICBjdXJzb3I6IHBvaW50ZXINCn0NCi50cC1jYXB0aW9uLlRlY2hKb3VybmFsLUJpZywNCi5UZWNoSm91cm5hbC1CaWcgew0KICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEuMDApOw0KICAgIGZvbnQtc2l6ZTogMTIwcHg7DQogICAgbGluZS1oZWlnaHQ6IDEyMHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiA5MDA7DQogICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgIGZvbnQtZmFtaWx5OiBSYWxld2F5Ow0KICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgbGV0dGVyLXNwYWNpbmc6IDBweA0KfQ0KLnJldl9zbGlkZXIgew0KICAgIG92ZXJmbG93OiBoaWRkZW47DQp9DQouZWZmZWN0X2xheWVyIHsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgdG9wOiAwcHg7DQogICAgbGVmdDogMHB4Ow0KICAgIHdpZHRoOiAxMDAlOw0KICAgIGhlaWdodDogMTAwJTsNCn0NCg0KLnRwLWNhcHRpb24uVHdpdHRlci1Db250ZW50IGEsDQogICAgLnRwLWNhcHRpb24uVHdpdHRlci1Db250ZW50IGE6dmlzaXRlZCB7DQogICAgICAgIGNvbG9yOiAjMDA4NEI0ICFpbXBvcnRhbnQNCiAgICB9DQogICAgLnRwLWNhcHRpb24uVHdpdHRlci1Db250ZW50IGE6aG92ZXIgew0KICAgICAgICBjb2xvcjogIzAwODRCNCAhaW1wb3J0YW50Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50DQogICAgfQ0KICAgICNtZW51X2ZvcmNlZnVsbHdpZHRoIHsNCiAgICAgICAgei1pbmRleDogNTAwMDsNCiAgICAgICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7DQogICAgICAgIHRvcDogMHB4Ow0KICAgICAgICBsZWZ0OiAwcHg7DQogICAgICAgIHdpZHRoOiAxMDAlDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stVGl0bGUsDQogICAgLkZ1bGxTaXRlQmxvY2stVGl0bGUgew0KICAgICAgICBjb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiA1NXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogNjVweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICAgICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stU3ViVGl0bGUsDQogICAgLkZ1bGxTaXRlQmxvY2stU3ViVGl0bGUgew0KICAgICAgICBjb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAyNXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMzRweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICAgICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stTGluaywNCiAgICAuRnVsbFNpdGVCbG9jay1MaW5rIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMCwgMTUwLCAyNTUsIDEuMDApOw0KICAgICAgICBmb250LXNpemU6IDI1cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4Ow0KICAgICAgICBmb250LXdlaWdodDogMzAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgIGZvbnQtZmFtaWx5OiBMYXRvOw0KICAgICAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXINCiAgICB9DQogICAgLnRwLWNhcHRpb24uRnVsbFNpdGVCbG9jay1MaW5rOmhvdmVyLA0KICAgIC5GdWxsU2l0ZUJsb2NrLUxpbms6aG92ZXIgew0KICAgICAgICBjb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgICAgICBjdXJzb3I6IHBvaW50ZXINCiAgICB9DQogICAgLnRwLWNhcHRpb24uRnVsbFNpdGVCbG9jay1Eb3duQnV0dG9uLA0KICAgIC5GdWxsU2l0ZUJsb2NrLURvd25CdXR0b24gew0KICAgICAgICBjb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAyNXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMzJweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgICAgICBwYWRkaW5nOiAxcHggMXB4IDFweCAxcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDEuMDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweCAzMHB4IDMwcHggMzBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stRG93bkJ1dHRvbjpob3ZlciwNCiAgICAuRnVsbFNpdGVCbG9jay1Eb3duQnV0dG9uOmhvdmVyIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMCwgMTUwLCAyNTUsIDEuMDApOw0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMTUwLCAyNTUsIDEuMDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweCAzMHB4IDMwcHggMzBweDsNCiAgICAgICAgY3Vyc29yOiBwb2ludGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stVGl0bGUsDQogICAgLkZ1bGxTaXRlQmxvY2stVGl0bGUgew0KICAgICAgICBjb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiA1NXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogNjVweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICAgICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stU3ViVGl0bGUsDQogICAgLkZ1bGxTaXRlQmxvY2stU3ViVGl0bGUgew0KICAgICAgICBjb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAyNXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMzRweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICAgICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stTGluaywNCiAgICAuRnVsbFNpdGVCbG9jay1MaW5rIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMCwgMTUwLCAyNTUsIDEuMDApOw0KICAgICAgICBmb250LXNpemU6IDI1cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4Ow0KICAgICAgICBmb250LXdlaWdodDogMzAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgIGZvbnQtZmFtaWx5OiBMYXRvOw0KICAgICAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXINCiAgICB9DQogICAgLnRwLWNhcHRpb24uRnVsbFNpdGVCbG9jay1MaW5rOmhvdmVyLA0KICAgIC5GdWxsU2l0ZUJsb2NrLUxpbms6aG92ZXIgew0KICAgICAgICBjb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgICAgICBjdXJzb3I6IHBvaW50ZXINCiAgICB9DQogICAgLnRwLWNhcHRpb24uRnVsbFNpdGVCbG9jay1Eb3duQnV0dG9uLA0KICAgIC5GdWxsU2l0ZUJsb2NrLURvd25CdXR0b24gew0KICAgICAgICBjb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAyNXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMzJweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogUm9ib3RvOw0KICAgICAgICBwYWRkaW5nOiAxcHggMXB4IDFweCAxcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDEuMDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweCAzMHB4IDMwcHggMzBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stRG93bkJ1dHRvbjpob3ZlciwNCiAgICAuRnVsbFNpdGVCbG9jay1Eb3duQnV0dG9uOmhvdmVyIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMCwgMTUwLCAyNTUsIDEuMDApOw0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMTUwLCAyNTUsIDEuMDApOw0KICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkOw0KICAgICAgICBib3JkZXItd2lkdGg6IDFweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweCAzMHB4IDMwcHggMzBweDsNCiAgICAgICAgY3Vyc29yOiBwb2ludGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stVGl0bGUsDQogICAgLkZ1bGxTaXRlQmxvY2stVGl0bGUgew0KICAgICAgICBjb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiA1NXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogNjVweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICAgICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stU3ViVGl0bGUsDQogICAgLkZ1bGxTaXRlQmxvY2stU3ViVGl0bGUgew0KICAgICAgICBjb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAyNXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMzRweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICAgICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stRG93bkJ1dHRvbiwNCiAgICAuRnVsbFNpdGVCbG9jay1Eb3duQnV0dG9uIHsNCiAgICAgICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IFJvYm90bzsNCiAgICAgICAgcGFkZGluZzogMXB4IDFweCAxcHggMXB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMzBweCAzMHB4IDMwcHg7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLURvd25CdXR0b246aG92ZXIsDQogICAgLkZ1bGxTaXRlQmxvY2stRG93bkJ1dHRvbjpob3ZlciB7DQogICAgICAgIGNvbG9yOiByZ2JhKDAsIDE1MCwgMjU1LCAxLjAwKTsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDE1MCwgMjU1LCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMzBweCAzMHB4IDMwcHg7DQogICAgICAgIGN1cnNvcjogcG9pbnRlcg0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLVRpdGxlLA0KICAgIC5GdWxsU2l0ZUJsb2NrLVRpdGxlIHsNCiAgICAgICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogNTVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDY1cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IExhdG87DQogICAgICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLVN1YlRpdGxlLA0KICAgIC5GdWxsU2l0ZUJsb2NrLVN1YlRpdGxlIHsNCiAgICAgICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IExhdG87DQogICAgICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLUxpbmssDQogICAgLkZ1bGxTaXRlQmxvY2stTGluayB7DQogICAgICAgIGNvbG9yOiByZ2JhKDAsIDE1MCwgMjU1LCAxLjAwKTsNCiAgICAgICAgZm9udC1zaXplOiAyNXB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMjRweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICAgICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stTGluazpob3ZlciwNCiAgICAuRnVsbFNpdGVCbG9jay1MaW5rOmhvdmVyIHsNCiAgICAgICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMS4wMCk7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgY3Vyc29yOiBwb2ludGVyDQogICAgfQ0KICAgIC50cC1jYXB0aW9uLkZ1bGxTaXRlQmxvY2stRG93bkJ1dHRvbiwNCiAgICAuRnVsbFNpdGVCbG9jay1Eb3duQnV0dG9uIHsNCiAgICAgICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IFJvYm90bzsNCiAgICAgICAgcGFkZGluZzogMXB4IDFweCAxcHggMXB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMzBweCAzMHB4IDMwcHg7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLURvd25CdXR0b246aG92ZXIsDQogICAgLkZ1bGxTaXRlQmxvY2stRG93bkJ1dHRvbjpob3ZlciB7DQogICAgICAgIGNvbG9yOiByZ2JhKDAsIDE1MCwgMjU1LCAxLjAwKTsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDE1MCwgMjU1LCAxLjAwKTsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMzBweCAzMHB4IDMwcHg7DQogICAgICAgIGN1cnNvcjogcG9pbnRlcg0KICAgIH0NCiAgICAucmV2X3NsaWRlciB7DQogICAgICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgfQ0KICAgIC5lZmZlY3RfbGF5ZXIgew0KICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgIHRvcDogMHB4Ow0KICAgICAgICBsZWZ0OiAwcHg7DQogICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICBoZWlnaHQ6IDEwMCU7DQogICAgfQ0KICAgIC5neWdlcyAudHAtdGh1bWIgew0KICAgICAgICBvcGFjaXR5OiAxDQogICAgfQ0KICAgIC5neWdlcyAudHAtdGh1bWItaW1nLXdyYXAgew0KICAgICAgICBwYWRkaW5nOiAzcHg7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7DQogICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICAgICAgd2lkdGg6IDEwMCU7DQogICAgICAgIGhlaWdodDogMTAwJTsNCiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgICAgICBtYXJnaW46IDBweDsNCiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsNCiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7DQogICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7DQogICAgfQ0KICAgIC5neWdlcyAudHAtdGh1bWItaW1hZ2Ugew0KICAgICAgICBwYWRkaW5nOiAzcHg7DQogICAgICAgIGRpc3BsYXk6IGJsb2NrOw0KICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94Ow0KICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgNXB4IDVweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjUpOw0KICAgICAgICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI1KTsNCiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgNXB4IDVweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjUpOw0KICAgIH0NCiAgICAuZ3lnZXMgLnRwLXRodW1iOmhvdmVyIC50cC10aHVtYi1pbWctd3JhcCwNCiAgICAuZ3lnZXMgLnRwLXRodW1iLnNlbGVjdGVkIC50cC10aHVtYi1pbWctd3JhcCB7DQogICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAxMDAlKTsNCiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkpKTsNCiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDEwMCUpOw0KICAgICAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDEwMCUpOw0KICAgICAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAxMDAlKTsNCiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAxMDAlKTsNCiAgICB9DQogICAgLnRwLWNhcHRpb24uRnVsbFNpdGVCbG9jay1UaXRsZSwNCiAgICAuRnVsbFNpdGVCbG9jay1UaXRsZSB7DQogICAgICAgIGNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDEuMDApOw0KICAgICAgICBmb250LXNpemU6IDU1cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiA2NXB4Ow0KICAgICAgICBmb250LXdlaWdodDogMzAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgIGZvbnQtZmFtaWx5OiBMYXRvOw0KICAgICAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXINCiAgICB9DQogICAgLnRwLWNhcHRpb24uRnVsbFNpdGVCbG9jay1TdWJUaXRsZSwNCiAgICAuRnVsbFNpdGVCbG9jay1TdWJUaXRsZSB7DQogICAgICAgIGNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDEuMDApOw0KICAgICAgICBmb250LXNpemU6IDI1cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4Ow0KICAgICAgICBmb250LXdlaWdodDogMzAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgIGZvbnQtZmFtaWx5OiBMYXRvOw0KICAgICAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXINCiAgICB9DQogICAgLnRwLWNhcHRpb24uRnVsbFNpdGVCbG9jay1MaW5rLA0KICAgIC5GdWxsU2l0ZUJsb2NrLUxpbmsgew0KICAgICAgICBjb2xvcjogcmdiYSgwLCAxNTAsIDI1NSwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IExhdG87DQogICAgICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLUxpbms6aG92ZXIsDQogICAgLkZ1bGxTaXRlQmxvY2stTGluazpob3ZlciB7DQogICAgICAgIGNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDEuMDApOw0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgICAgIGN1cnNvcjogcG9pbnRlcg0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLVN1YlRpdGxlLA0KICAgIC5GdWxsU2l0ZUJsb2NrLVN1YlRpdGxlIHsNCiAgICAgICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IExhdG87DQogICAgICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLVN1YlRpdGxlLA0KICAgIC5GdWxsU2l0ZUJsb2NrLVN1YlRpdGxlIHsNCiAgICAgICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IExhdG87DQogICAgICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLUZvb3RlckxpbmssDQogICAgLkZ1bGxTaXRlQmxvY2stRm9vdGVyTGluayB7DQogICAgICAgIGNvbG9yOiByZ2JhKDg1LCA4NSwgODUsIDEuMDApOw0KICAgICAgICBmb250LXNpemU6IDE1cHg7DQogICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4Ow0KICAgICAgICBmb250LXdlaWdodDogMzAwOw0KICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgICAgIGZvbnQtZmFtaWx5OiBMYXRvOw0KICAgICAgICBwYWRkaW5nOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogbGVmdA0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLUZvb3Rlckxpbms6aG92ZXIsDQogICAgLkZ1bGxTaXRlQmxvY2stRm9vdGVyTGluazpob3ZlciB7DQogICAgICAgIGNvbG9yOiByZ2JhKDAsIDE1MCwgMjU1LCAxLjAwKTsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lOw0KICAgICAgICBib3JkZXItd2lkdGg6IDBweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgICAgICBjdXJzb3I6IHBvaW50ZXINCiAgICB9DQogICAgLmZiLXNoYXJlLWJ1dHRvbi5mYl9pZnJhbWVfd2lkZ2V0IGlmcmFtZSB7DQogICAgICAgIHdpZHRoOiAxMTVweCFpbXBvcnRhbnQ7DQogICAgfQ0KICAgICN0cC1zb2NpYWx3cmFwcGVyIHsNCiAgICAgICAgb3BhY2l0eTogMDsNCiAgICB9DQoNCiAgICAgICAgLnRwLWNhcHRpb24uVHdpdHRlci1Db250ZW50IGEsDQogICAgLnRwLWNhcHRpb24uVHdpdHRlci1Db250ZW50IGE6dmlzaXRlZCB7DQogICAgICAgIGNvbG9yOiAjMDA4NEI0ICFpbXBvcnRhbnQNCiAgICB9DQogICAgLnRwLWNhcHRpb24uVHdpdHRlci1Db250ZW50IGE6aG92ZXIgew0KICAgICAgICBjb2xvcjogIzAwODRCNCAhaW1wb3J0YW50Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50DQogICAgfQ0KICAgICNtZW51X2ZvcmNlZnVsbHdpZHRoIHsNCiAgICAgICAgei1pbmRleDogNTAwMDsNCiAgICAgICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7DQogICAgICAgIHRvcDogMHB4Ow0KICAgICAgICBsZWZ0OiAwcHg7DQogICAgICAgIHdpZHRoOiAxMDAlDQogICAgfQ0KICAgICN0cC1tZW51Ymcgew0KICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC43NSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7DQogICAgICAgIC8qIEZGMy42LTE1ICovDQogICAgICAgIA0KICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC43NSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7DQogICAgICAgIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovDQogICAgICAgIA0KICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpOw0KICAgICAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi8NCiAgICAgICAgDQogICAgICAgIGZpbHRlcjogcHJvZ2lkOiBEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nI2Q5MDAwMDAwJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAwMCcsIEdyYWRpZW50VHlwZT0wKTsNCiAgICAgICAgLyogSUU2LTkgKi8NCiAgICB9DQogICAgI21jX2VtYmVkX3NpZ251cCBpbnB1dFt0eXBlPSJlbWFpbCJdIHsNCiAgICAgICAgZm9udC1mYW1pbHk6ICJMYXRvIiwgc2Fucy1zZXJpZjsNCiAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICBmb250LXdlaWdodDogNDAwOw0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOw0KICAgICAgICBjb2xvcjogIzg4OCAhaW1wb3J0YW50Ow0KICAgICAgICBsaW5lLWhlaWdodDogNDZweDsNCiAgICAgICAgcGFkZGluZzogMCAyMHB4Ow0KICAgICAgICBjdXJzb3I6IHRleHQ7DQogICAgICAgIGJvcmRlcjogMDsNCiAgICAgICAgd2lkdGg6IDQwMHB4Ow0KICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7DQogICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzOw0KICAgICAgICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41czsNCiAgICAgICAgLW8tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzOw0KICAgICAgICAtbXMtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzOw0KICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXM7DQogICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4Ow0KICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDNweDsNCiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4Ow0KICAgIH0NCiAgICAjbWNfZW1iZWRfc2lnbnVwIGlucHV0W3R5cGU9ImVtYWlsIl06Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgew0KICAgICAgICBjb2xvcjogIzg4OCAhaW1wb3J0YW50Ow0KICAgIH0NCiAgICAjbWNfZW1iZWRfc2lnbnVwIGlucHV0W3R5cGU9ImVtYWlsIl06Oi1tb3otcGxhY2Vob2xkZXIgew0KICAgICAgICBjb2xvcjogIzg4OCAhaW1wb3J0YW50Ow0KICAgIH0NCiAgICAjbWNfZW1iZWRfc2lnbnVwIGlucHV0W3R5cGU9ImVtYWlsIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsNCiAgICAgICAgY29sb3I6ICM4ODggIWltcG9ydGFudDsNCiAgICB9DQogICAgI21jX2VtYmVkX3NpZ251cCBpbnB1dFt0eXBlPSJlbWFpbCJdOmZvY3VzIHsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsNCiAgICAgICAgY29sb3I6ICM0NTQ1NDU7DQogICAgfQ0KICAgICNtY19lbWJlZF9zaWdudXAgaW5wdXQjbWMtZW1iZWRkZWQtc3Vic2NyaWJlLA0KICAgICNtY19lbWJlZF9zaWdudXAgaW5wdXQjbWMtZW1iZWRkZWQtc3Vic2NyaWJlOmZvY3VzIHsNCiAgICAgICAgZm9udC1mYW1pbHk6ICJMYXRvIiwgc2Fucy1zZXJpZjsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7DQogICAgICAgIGZvbnQtc2l6ZTogMTZweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsNCiAgICAgICAgcGFkZGluZzogMCAzMHB4Ow0KICAgICAgICBib3JkZXI6IDA7DQogICAgICAgIGJhY2tncm91bmQ6ICNmMDQ1MzE7DQogICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lOw0KICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7DQogICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogM3B4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7DQogICAgfQ0KICAgICNtY19lbWJlZF9zaWdudXAgaW5wdXQjbWMtZW1iZWRkZWQtc3Vic2NyaWJlOmhvdmVyIHsNCiAgICAgICAgYmFja2dyb3VuZDogI2UwMzcyNzsNCiAgICB9DQogICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgew0KICAgICAgICAjbWNfZW1iZWRfc2lnbnVwIGlucHV0W3R5cGU9ImVtYWlsIl0gew0KICAgICAgICAgICAgd2lkdGg6IDI2MHB4Ow0KICAgICAgICB9DQogICAgfQ0KICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHsNCiAgICAgICAgI21jX2VtYmVkX3NpZ251cCBpbnB1dFt0eXBlPSJlbWFpbCJdIHsNCiAgICAgICAgICAgIHdpZHRoOiAxNjBweDsNCiAgICAgICAgfQ0KICAgIH0NCiAgICAjcmV2X3NsaWRlcl8xNjdfNiAudXJhbnVzLnRwYXJyb3dzIHsNCiAgICAgICAgd2lkdGg6IDUwcHg7DQogICAgICAgIGhlaWdodDogNTBweDsNCiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsNCiAgICB9DQogICAgI3Jldl9zbGlkZXJfMTY3XzYgLnVyYW51cy50cGFycm93czpiZWZvcmUgew0KICAgICAgICB3aWR0aDogNTBweDsNCiAgICAgICAgaGVpZ2h0OiA1MHB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogNTBweDsNCiAgICAgICAgZm9udC1zaXplOiA0MHB4Ow0KICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zczsNCiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zczsNCiAgICB9DQogICAgI3Jldl9zbGlkZXJfMTY3XzYgLnVyYW51cy50cGFycm93czpob3ZlcjpiZWZvcmUgew0KICAgICAgICBvcGFjaXR5OiAwLjc1Ow0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLVN1YlRpdGxlLA0KICAgIC5GdWxsU2l0ZUJsb2NrLVN1YlRpdGxlIHsNCiAgICAgICAgY29sb3I6IHJnYmEoNTEsIDUxLCA1MSwgMS4wMCk7DQogICAgICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7DQogICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICAgICAgZm9udC1mYW1pbHk6IExhdG87DQogICAgICAgIHBhZGRpbmc6IDAgMCAwIDBweDsNCiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHg7DQogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcg0KICAgIH0NCiAgICAudHAtY2FwdGlvbi5QYXJhbGxheFdlYnNpdGUtRm9vdGVySXRlbSwNCiAgICAuUGFyYWxsYXhXZWJzaXRlLUZvb3Rlckl0ZW0gew0KICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUwKTsNCiAgICAgICAgZm9udC1zaXplOiAxNnB4Ow0KICAgICAgICBsaW5lLWhlaWdodDogMjRweDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsNCiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsOw0KICAgICAgICBmb250LWZhbWlseTogTGF0bzsNCiAgICAgICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIHRleHQtYWxpZ246IGxlZnQ7DQogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgICAgIGJvcmRlci13aWR0aDogMHB4Ow0KICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwcHgNCiAgICB9DQogICAgLnRwLWNhcHRpb24uUGFyYWxsYXhXZWJzaXRlLUZvb3Rlckl0ZW06aG92ZXIsDQogICAgLlBhcmFsbGF4V2Vic2l0ZS1Gb290ZXJJdGVtOmhvdmVyIHsNCiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMS4wMCk7DQogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTsNCiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDBweDsNCiAgICAgICAgY3Vyc29yOiBwb2ludGVyDQogICAgfQ0KICAgIC5mYi1zaGFyZS1idXR0b24uZmJfaWZyYW1lX3dpZGdldCBpZnJhbWUgew0KICAgICAgICB3aWR0aDogMTE1cHghaW1wb3J0YW50Ow0KICAgIH0NCiAgICBpZnJhbWUudHdpdHRlci1zaGFyZS1idXR0b24gew0KICAgICAgICBkaXNwbGF5OiBub25lOw0KICAgIH0NCiAgICAuZmItc2hhcmUtYnV0dG9uLmZiX2lmcmFtZV93aWRnZXQgaWZyYW1lIHsNCiAgICAgICAgZGlzcGxheTogbm9uZTsNCiAgICB9DQoNCiAgICAudHAtY2FwdGlvbi5GdWxsU2l0ZUJsb2NrLUxpbmssIA0KICAgIC5GdWxsU2l0ZUJsb2NrLUxpbmsgew0KICAgIGNvbG9yOiByZ2JhKDAsMTUwLDI1NSwxLjAwKTsNCiAgICBmb250LXNpemU6IDI1cHg7DQogICAgbGluZS1oZWlnaHQ6IDI0cHg7DQogICAgZm9udC13ZWlnaHQ6IDMwMDsNCiAgICBmb250LXN0eWxlOiBub3JtYWw7DQogICAgZm9udC1mYW1pbHk6IExhdG87DQogICAgcGFkZGluZzogMCAwIDAgMHB4Ow0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7DQogICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsNCiAgICBib3JkZXItc3R5bGU6IG5vbmU7DQogICAgYm9yZGVyLXdpZHRoOiAwcHg7DQogICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMHB4Ow0KICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCn0="}},"time_used":17993,"timings":{"blocked":8740,"dns":0,"connect":0,"send":8812,"wait":441,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.actions.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.295Z","timestamp":1785143908295,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/js/extensions/revolution.extension.actions.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:44 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"22c5-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 2697\r\nKeep-Alive: timeout=5, max=96\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":8901,"size_decoded":3065,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (8665), with CRLF line terminators","md5":"e7290f8698d4a9b191be23fa8c4d38d1","sha1":"fb350ed56852cae5f988befb598e06402ad6006d","sha256":"3cd73ec04943a47c75c4e6a4b60f6597cf10144ce1877ca17229fcb4830e6f8e","sha512":"602d6e692d48585d12e212927b9a8772df5ba881fcd82c93e160121dad9335bb024d1f8d3cf22fa6bd0b4d0bbbb69831d89734e4c8af2ab9beb14fb59a9c2778","ssdeep":"192:lQHPaV+cME6uLnm8ZbYl+z1i2VJS/gwBVaNTm:lHn6ehi2Iz86","tlshash":"6502a542f1056cbf4467a5a9e83b02d2b171b59c6205aef4f067f5a86c3cb6204cb7ec","first_seen":"2023-03-07T12:11:48Z","last_seen":"2026-08-09T08:42:12.917812Z","times_seen":297,"resource_available":true,"data":"LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogKiBSRVZPTFVUSU9OIDUuMyBFWFRFTlNJT04gLSBBQ1RJT05TDQogKiBAdmVyc2lvbjogMi4wLjYgKDE1LjEyLjIwMTYpDQogKiBAcmVxdWlyZXMganF1ZXJ5LnRoZW1lcHVuY2gucmV2b2x1dGlvbi5qcw0KICogQGF1dGhvciBUaGVtZVB1bmNoDQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQohZnVuY3Rpb24oJCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGdldFNjcm9sbFJvb3QoKXt2YXIgZCxhPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxiPWRvY3VtZW50LmJvZHksYz0oInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cucGFnZVlPZmZzZXQ/d2luZG93LnBhZ2VZT2Zmc2V0Om51bGwpfHxiLnNjcm9sbFRvcHx8YS5zY3JvbGxUb3A7cmV0dXJuIGEuc2Nyb2xsVG9wPWIuc2Nyb2xsVG9wPWMrKGM+MCk/LTE6MSxkPWEuc2Nyb2xsVG9wIT09Yz9hOmIsZC5zY3JvbGxUb3A9YyxkfXZhciBfUj1qUXVlcnkuZm4ucmV2b2x1dGlvbixfSVNNPV9SLmlzX21vYmlsZSgpLGV4dGVuc2lvbj17YWxpYXM6IkFjdGlvbnMgTWluIEpTIixuYW1lOiJyZXZvbHV0aW9uLmV4dGVuc2lvbnMuYWN0aW9ucy5taW4uanMiLG1pbl9jb3JlOiI1LjMiLHZlcnNpb246IjIuMC42In07alF1ZXJ5LmV4dGVuZCghMCxfUix7Y2hlY2tBY3Rpb25zOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4ic3RvcCIhPT1fUi5jb21wYXJlX3ZlcnNpb24oZXh0ZW5zaW9uKS5jaGVjayYmdm9pZCBjaGVja0FjdGlvbnNfaW50ZXJuKGEsYixjKX19KTt2YXIgY2hlY2tBY3Rpb25zX2ludGVybj1mdW5jdGlvbihhLGIsYyl7YyYmalF1ZXJ5LmVhY2goYyxmdW5jdGlvbihjLGQpe2QuZGVsYXk9cGFyc2VJbnQoZC5kZWxheSwwKS8xZTMsYS5hZGRDbGFzcygidHAtd2l0aGFjdGlvbiIpLGIuZnVsbHNjcmVlbl9lc2NsaXN0ZW5lcnx8ImV4aXRmdWxsc2NyZWVuIiE9ZC5hY3Rpb24mJiJ0b2dnbGVmdWxsc2NyZWVuIiE9ZC5hY3Rpb258fChqUXVlcnkoZG9jdW1lbnQpLmtleXVwKGZ1bmN0aW9uKGIpezI3PT1iLmtleUNvZGUmJmpRdWVyeSgiI3JzLWdvLWZ1bGxzY3JlZW4iKS5sZW5ndGg+MCYmYS50cmlnZ2VyKGQuZXZlbnQpfSksYi5mdWxsc2NyZWVuX2VzY2xpc3RlbmVyPSEwKTt2YXIgZT0iYmFja2dyb3VuZHZpZGVvIj09ZC5sYXllcj9qUXVlcnkoIi5ycy1iYWNrZ3JvdW5kLXZpZGVvLWxheWVyIik6ImZpcnN0dmlkZW8iPT1kLmxheWVyP2pRdWVyeSgiLnRwLXJldnNsaWRlci1zbGlkZXNsaSIpLmZpbmQoIi50cC12aWRlb2xheWVyIik6alF1ZXJ5KCIjIitkLmxheWVyKTtzd2l0Y2goalF1ZXJ5LmluQXJyYXkoZC5hY3Rpb24sWyJ0b2dnbGVzbGlkZXIiLCJ0b2dnbGVfbXV0ZV92aWRlbyIsInRvZ2dsZV9nbG9iYWxfbXV0ZV92aWRlbyIsInRvZ2dsZWZ1bGxzY3JlZW4iXSkhPS0xJiZhLmRhdGEoInRvZ2dsZWxpc3RlbmVycyIsITApLGQuYWN0aW9uKXtjYXNlInRvZ2dsZXZpZGVvIjpqUXVlcnkuZWFjaChlLGZ1bmN0aW9uKGIsYyl7Yz1qUXVlcnkoYyk7dmFyIGQ9Yy5kYXRhKCJ2aWRlb3RvZ2dsZWRieSIpO3ZvaWQgMD09ZCYmKGQ9bmV3IEFycmF5KSxkLnB1c2goYSksYy5kYXRhKCJ2aWRlb3RvZ2dsZWRieSIsZCl9KTticmVhaztjYXNlInRvZ2dsZWxheWVyIjpqUXVlcnkuZWFjaChlLGZ1bmN0aW9uKGIsYyl7Yz1qUXVlcnkoYyk7dmFyIGU9Yy5kYXRhKCJsYXllcnRvZ2dsZWRieSIpO3ZvaWQgMD09ZSYmKGU9bmV3IEFycmF5KSxlLnB1c2goYSksYy5kYXRhKCJsYXllcnRvZ2dsZWRieSIsZSksYy5kYXRhKCJ0cmlnZ2VyZWRfc3RhcnRzdGF0dXMiLGQubGF5ZXJzdGF0dXMpfSk7YnJlYWs7Y2FzZSJ0b2dnbGVfbXV0ZV92aWRlbyI6alF1ZXJ5LmVhY2goZSxmdW5jdGlvbihiLGMpe2M9alF1ZXJ5KGMpO3ZhciBkPWMuZGF0YSgidmlkZW9tdXRldG9nZ2xlZGJ5Iik7dm9pZCAwPT1kJiYoZD1uZXcgQXJyYXkpLGQucHVzaChhKSxjLmRhdGEoInZpZGVvbXV0ZXRvZ2dsZWRieSIsZCl9KTticmVhaztjYXNlInRvZ2dsZV9nbG9iYWxfbXV0ZV92aWRlbyI6alF1ZXJ5LmVhY2goZSxmdW5jdGlvbihiLGMpe2M9alF1ZXJ5KGMpO3ZhciBkPWMuZGF0YSgidmlkZW9tdXRldG9nZ2xlZGJ5Iik7dm9pZCAwPT1kJiYoZD1uZXcgQXJyYXkpLGQucHVzaChhKSxjLmRhdGEoInZpZGVvbXV0ZXRvZ2dsZWRieSIsZCl9KTticmVhaztjYXNlInRvZ2dsZXNsaWRlciI6dm9pZCAwPT1iLnNsaWRlcnRvZ2dsZWRieSYmKGIuc2xpZGVydG9nZ2xlZGJ5PW5ldyBBcnJheSksYi5zbGlkZXJ0b2dnbGVkYnkucHVzaChhKTticmVhaztjYXNlInRvZ2dsZWZ1bGxzY3JlZW4iOnZvaWQgMD09Yi5mdWxsc2NyZWVudG9nZ2xlZGJ5JiYoYi5mdWxsc2NyZWVudG9nZ2xlZGJ5PW5ldyBBcnJheSksYi5mdWxsc2NyZWVudG9nZ2xlZGJ5LnB1c2goYSl9c3dpdGNoKGEub24oZC5ldmVudCxmdW5jdGlvbigpe2lmKCJjbGljayI9PT1kLmV2ZW50JiZhLmhhc0NsYXNzKCJ0cC10ZW1wb3JhcnlkaXNhYmxlZCIpKXJldHVybiExO3ZhciBjPSJiYWNrZ3JvdW5kdmlkZW8iPT1kLmxheWVyP2pRdWVyeSgiLmFjdGl2ZS1yZXZzbGlkZSAuc2xvdGhvbGRlciAucnMtYmFja2dyb3VuZC12aWRlby1sYXllciIpOiJmaXJzdHZpZGVvIj09ZC5sYXllcj9qUXVlcnkoIi5hY3RpdmUtcmV2c2xpZGUgLnRwLXZpZGVvbGF5ZXIiKS5maXJzdCgpOmpRdWVyeSgiIyIrZC5sYXllcik7aWYoInN0b3BsYXllciI9PWQuYWN0aW9ufHwidG9nZ2xlbGF5ZXIiPT1kLmFjdGlvbnx8InN0YXJ0bGF5ZXIiPT1kLmFjdGlvbil7aWYoYy5sZW5ndGg+MCl7dmFyIGU9Yy5kYXRhKCk7dm9pZCAwIT09ZS5jbGlja2VkX3RpbWVfc3RhbXAmJihuZXcgRGF0ZSkuZ2V0VGltZSgpLWUuY2xpY2tlZF90aW1lX3N0YW1wPjE1MCYmKGNsZWFyVGltZW91dChlLnRyaWdnZXJkZWxheUluKSxjbGVhclRpbWVvdXQoZS50cmlnZ2VyZGVsYXlPdXQpKSxlLmNsaWNrZWRfdGltZV9zdGFtcD0obmV3IERhdGUpLmdldFRpbWUoKSwic3RhcnRsYXllciI9PWQuYWN0aW9ufHwidG9nZ2xlbGF5ZXIiPT1kLmFjdGlvbiYmImluIiE9Yy5kYXRhKCJhbmltZGlyZWN0aW9uIik/KGUuYW5pbWRpcmVjdGlvbj0iaW4iLGUudHJpZ2dlcnN0YXRlPSJvbiIsX1IudG9nZ2xlU3RhdGUoZS5sYXllcnRvZ2dsZWRieSksX1IucGxheUFuaW1hdGlvbkZyYW1lJiYoY2xlYXJUaW1lb3V0KGUudHJpZ2dlcmRlbGF5SW4pLGUudHJpZ2dlcmRlbGF5SW49c2V0VGltZW91dChmdW5jdGlvbigpe19SLnBsYXlBbmltYXRpb25GcmFtZSh7Y2FwdGlvbjpjLG9wdDpiLGZyYW1lOiJmcmFtZV8wIix0cmlnZ2VyZGlyZWN0aW9uOiJpbiIsdHJpZ2dlcmZyYW1laW46ImZyYW1lXzAiLHRyaWdnZXJmcmFtZW91dDoiZnJhbWVfOTk5In0pfSwxZTMqZC5kZWxheSkpKTooInN0b3BsYXllciI9PWQuYWN0aW9ufHwidG9nZ2xlbGF5ZXIiPT1kLmFjdGlvbiYmIm91dCIhPWMuZGF0YSgiYW5pbWRpcmVjdGlvbiIpKSYmKGUuYW5pbWRpcmVjdGlvbj0ib3V0IixlLnRyaWdnZXJlZD0hMCxlLnRyaWdnZXJzdGF0ZT0ib2ZmIixfUi5zdG9wVmlkZW8mJl9SLnN0b3BWaWRlbyhjLGIpLF9SLnVuVG9nZ2xlU3RhdGUoZS5sYXllcnRvZ2dsZWRieSksX1IuZW5kTW92ZUNhcHRpb24mJihjbGVhclRpbWVvdXQoZS50cmlnZ2VyZGVsYXlPdXQpLGUudHJpZ2dlcmRlbGF5T3V0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtfUi5wbGF5QW5pbWF0aW9uRnJhbWUoe2NhcHRpb246YyxvcHQ6YixmcmFtZToiZnJhbWVfOTk5Iix0cmlnZ2VyZGlyZWN0aW9uOiJvdXQiLHRyaWdnZXJmcmFtZWluOiJmcmFtZV8wIix0cmlnZ2VyZnJhbWVvdXQ6ImZyYW1lXzk5OSJ9KX0sMWUzKmQuZGVsYXkpKSl9fWVsc2UhX0lTTXx8InBsYXl2aWRlbyIhPWQuYWN0aW9uJiYic3RvcHZpZGVvIiE9ZC5hY3Rpb24mJiJ0b2dnbGV2aWRlbyIhPWQuYWN0aW9uJiYibXV0ZXZpZGVvIiE9ZC5hY3Rpb24mJiJ1bm11dGV2aWRlbyIhPWQuYWN0aW9uJiYidG9nZ2xlX211dGVfdmlkZW8iIT1kLmFjdGlvbiYmInRvZ2dsZV9nbG9iYWxfbXV0ZV92aWRlbyIhPWQuYWN0aW9uPyhkLmRlbGF5PSJOYU4iPT09ZC5kZWxheXx8TmFOPT09ZC5kZWxheT8wOmQuZGVsYXkscHVuY2hncy5Ud2VlbkxpdGUuZGVsYXllZENhbGwoZC5kZWxheSxmdW5jdGlvbigpe2FjdGlvblN3aXRjaGVzKGMsYixkLGEpfSxbYyxiLGQsYV0pKTphY3Rpb25Td2l0Y2hlcyhjLGIsZCxhKX0pLGQuYWN0aW9uKXtjYXNlInRvZ2dsZWxheWVyIjpjYXNlInN0YXJ0bGF5ZXIiOmNhc2UicGxheWxheWVyIjpjYXNlInN0b3BsYXllciI6dmFyIGU9alF1ZXJ5KCIjIitkLmxheWVyKSxmPWUuZGF0YSgpO2UubGVuZ3RoPjAmJnZvaWQgMCE9PWYmJih2b2lkIDAhPT1mLmZyYW1lcyYmImJ5dHJpZ2dlciIhPWYuZnJhbWVzWzBdLmRlbGF5fHx2b2lkIDA9PT1mLmZyYW1lcyYmImJ5dHJpZ2dlciIhPT1mLnN0YXJ0KSYmKGYudHJpZ2dlcnN0YXRlPSJvbiIpfX0pfSxhY3Rpb25Td2l0Y2hlcz1mdW5jdGlvbih0bmMsb3B0LGEsX25jKXtzd2l0Y2goYS5hY3Rpb24pe2Nhc2Uic2Nyb2xsYmVsb3ciOmEuc3BlZWQ9dm9pZCAwIT09YS5zcGVlZD9hLnNwZWVkOjQwMCxhLmVhc2U9dm9pZCAwIT09YS5lYXNlP2EuZWFzZTpwdW5jaGdzLlBvd2VyMi5lYXNlT3V0LF9uYy5hZGRDbGFzcygidHAtc2Nyb2xsYmVsb3dzbGlkZXIiKSxfbmMuZGF0YSgic2Nyb2xsb2Zmc2V0IixhLm9mZnNldCksX25jLmRhdGEoInNjcm9sbGRlbGF5IixhLmRlbGF5KSxfbmMuZGF0YSgic2Nyb2xsc3BlZWQiLGEuc3BlZWQpLF9uYy5kYXRhKCJzY3JvbGxlYXNlIixhLmVhc2UpO3ZhciBvZmY9Z2V0T2ZmQ29udEgob3B0LmZ1bGxTY3JlZW5PZmZzZXRDb250YWluZXIpfHwwLGFvZj1wYXJzZUludChhLm9mZnNldCwwKXx8MDtvZmY9b2ZmLWFvZnx8MCxvcHQuc2Nyb2xsUm9vdD12b2lkIDA9PT1vcHQuc2Nyb2xsUm9vdD9nZXRTY3JvbGxSb290KCk6b3B0LnNjcm9sbFJvb3Q7dmFyIHNvYmo9e195Om9wdC5zY3JvbGxSb290LnNjcm9sbFRvcH07cHVuY2hncy5Ud2VlbkxpdGUudG8oc29iaixhLnNwZWVkLzFlMyx7X3k6b3B0LmMub2Zmc2V0KCkudG9wK2pRdWVyeShvcHQubGlbMF0pLmhlaWdodCgpLW9mZixlYXNlOmEuZWFzZSxvblVwZGF0ZTpmdW5jdGlvbigpe29wdC5zY3JvbGxSb290LnNjcm9sbFRvcD1zb2JqLl95fX0pO2JyZWFrO2Nhc2UiY2FsbGJhY2siOmV2YWwoYS5jYWxsYmFjayk7YnJlYWs7Y2FzZSJqdW1wdG9zbGlkZSI6c3dpdGNoKGEuc2xpZGUudG9Mb3dlckNhc2UoKSl7Y2FzZSIrMSI6Y2FzZSJuZXh0IjpvcHQuc2NfaW5kaWNhdG9yPSJhcnJvdyIsX1IuY2FsbGluZ05ld1NsaWRlKG9wdC5jLDEpO2JyZWFrO2Nhc2UicHJldmlvdXMiOmNhc2UicHJldiI6Y2FzZSItMSI6b3B0LnNjX2luZGljYXRvcj0iYXJyb3ciLF9SLmNhbGxpbmdOZXdTbGlkZShvcHQuYywtMSk7YnJlYWs7ZGVmYXVsdDp2YXIgdHM9alF1ZXJ5LmlzTnVtZXJpYyhhLnNsaWRlKT9wYXJzZUludChhLnNsaWRlLDApOmEuc2xpZGU7X1IuY2FsbGluZ05ld1NsaWRlKG9wdC5jLHRzKX1icmVhaztjYXNlInNpbXBsZWxpbmsiOndpbmRvdy5vcGVuKGEudXJsLGEudGFyZ2V0KTticmVhaztjYXNlInRvZ2dsZXNsaWRlciI6b3B0Lm5vbG9vcGFueW1vcmU9MCwicGxheWluZyI9PW9wdC5zbGlkZXJzdGF0dXM/KG9wdC5jLnJldnBhdXNlKCksb3B0LmZvcmNlcGF1c2VfdmlhdG9nZ2xlPSEwLF9SLnVuVG9nZ2xlU3RhdGUob3B0LnNsaWRlcnRvZ2dsZWRieSkpOihvcHQuZm9yY2VwYXVzZV92aWF0b2dnbGU9ITEsb3B0LmMucmV2cmVzdW1lKCksX1IudG9nZ2xlU3RhdGUob3B0LnNsaWRlcnRvZ2dsZWRieSkpO2JyZWFrO2Nhc2UicGF1c2VzbGlkZXIiOm9wdC5jLnJldnBhdXNlKCksX1IudW5Ub2dnbGVTdGF0ZShvcHQuc2xpZGVydG9nZ2xlZGJ5KTticmVhaztjYXNlInBsYXlzbGlkZXIiOm9wdC5ub2xvb3Bhbnltb3JlPTAsb3B0LmMucmV2cmVzdW1lKCksX1IudG9nZ2xlU3RhdGUob3B0LnNsaWRlcnRvZ2dsZWRieSk7YnJlYWs7Y2FzZSJwbGF5dmlkZW8iOnRuYy5sZW5ndGg+MCYmX1IucGxheVZpZGVvKHRuYyxvcHQpO2JyZWFrO2Nhc2Uic3RvcHZpZGVvIjp0bmMubGVuZ3RoPjAmJl9SLnN0b3BWaWRlbyYmX1Iuc3RvcFZpZGVvKHRuYyxvcHQpO2JyZWFrO2Nhc2UidG9nZ2xldmlkZW8iOnRuYy5sZW5ndGg+MCYmKF9SLmlzVmlkZW9QbGF5aW5nKHRuYyxvcHQpP19SLnN0b3BWaWRlbyYmX1Iuc3RvcFZpZGVvKHRuYyxvcHQpOl9SLnBsYXlWaWRlbyh0bmMsb3B0KSk7YnJlYWs7Y2FzZSJtdXRldmlkZW8iOnRuYy5sZW5ndGg+MCYmX1IubXV0ZVZpZGVvKHRuYyxvcHQpO2JyZWFrO2Nhc2UidW5tdXRldmlkZW8iOnRuYy5sZW5ndGg+MCYmX1IudW5NdXRlVmlkZW8mJl9SLnVuTXV0ZVZpZGVvKHRuYyxvcHQpO2JyZWFrO2Nhc2UidG9nZ2xlX211dGVfdmlkZW8iOnRuYy5sZW5ndGg+MCYmKF9SLmlzVmlkZW9NdXRlZCh0bmMsb3B0KT9fUi51bk11dGVWaWRlbyh0bmMsb3B0KTpfUi5tdXRlVmlkZW8mJl9SLm11dGVWaWRlbyh0bmMsb3B0KSksX25jLnRvZ2dsZUNsYXNzKCJycy10b2dnbGUtY29udGVudC1hY3RpdmUiKTticmVhaztjYXNlInRvZ2dsZV9nbG9iYWxfbXV0ZV92aWRlbyI6b3B0Lmdsb2JhbG11dGU9PT0hMD8ob3B0Lmdsb2JhbG11dGU9ITEsdm9pZCAwIT1vcHQucGxheWluZ3ZpZGVvcyYmb3B0LnBsYXlpbmd2aWRlb3MubGVuZ3RoPjAmJmpRdWVyeS5lYWNoKG9wdC5wbGF5aW5ndmlkZW9zLGZ1bmN0aW9uKGEsYil7X1IudW5NdXRlVmlkZW8mJl9SLnVuTXV0ZVZpZGVvKGIsb3B0KX0pKToob3B0Lmdsb2JhbG11dGU9ITAsdm9pZCAwIT1vcHQucGxheWluZ3ZpZGVvcyYmb3B0LnBsYXlpbmd2aWRlb3MubGVuZ3RoPjAmJmpRdWVyeS5lYWNoKG9wdC5wbGF5aW5ndmlkZW9zLGZ1bmN0aW9uKGEsYil7X1IubXV0ZVZpZGVvJiZfUi5tdXRlVmlkZW8oYixvcHQpfSkpLF9uYy50b2dnbGVDbGFzcygicnMtdG9nZ2xlLWNvbnRlbnQtYWN0aXZlIik7YnJlYWs7Y2FzZSJzaW11bGF0ZWNsaWNrIjp0bmMubGVuZ3RoPjAmJnRuYy5jbGljaygpO2JyZWFrO2Nhc2UidG9nZ2xlY2xhc3MiOnRuYy5sZW5ndGg+MCYmKHRuYy5oYXNDbGFzcyhhLmNsYXNzbmFtZSk/dG5jLnJlbW92ZUNsYXNzKGEuY2xhc3NuYW1lKTp0bmMuYWRkQ2xhc3MoYS5jbGFzc25hbWUpKTticmVhaztjYXNlImdvZnVsbHNjcmVlbiI6Y2FzZSJleGl0ZnVsbHNjcmVlbiI6Y2FzZSJ0b2dnbGVmdWxsc2NyZWVuIjppZihqUXVlcnkoIiNycy1nby1mdWxsc2NyZWVuIikubGVuZ3RoPjAmJigidG9nZ2xlZnVsbHNjcmVlbiI9PWEuYWN0aW9ufHwiZXhpdGZ1bGxzY3JlZW4iPT1hLmFjdGlvbikpe2pRdWVyeSgiI3JzLWdvLWZ1bGxzY3JlZW4iKS5hcHBlbmRUbyhqUXVlcnkoIiNycy13YXMtaGVyZSIpKTt2YXIgcGF3PW9wdC5jLmNsb3Nlc3QoIi5mb3JjZWZ1bGx3aWR0aF93cmFwcGVyX3RwX2Jhbm5lciIpLmxlbmd0aD4wP29wdC5jLmNsb3Nlc3QoIi5mb3JjZWZ1bGx3aWR0aF93cmFwcGVyX3RwX2Jhbm5lciIpOm9wdC5jLmNsb3Nlc3QoIi5yZXZfc2xpZGVyX3dyYXBwZXIiKTtwYXcudW53cmFwKCkscGF3LnVud3JhcCgpLG9wdC5taW5IZWlnaHQ9b3B0Lm9sZG1pbmhlaWdodCxvcHQuaW5mdWxsc2NyZWVubW9kZT0hMSxvcHQuYy5yZXZyZWRyYXcoKSx2b2lkIDAhPW9wdC5wbGF5aW5ndmlkZW9zJiZvcHQucGxheWluZ3ZpZGVvcy5sZW5ndGg+MCYmalF1ZXJ5LmVhY2gob3B0LnBsYXlpbmd2aWRlb3MsZnVuY3Rpb24oYSxiKXtfUi5wbGF5VmlkZW8oYixvcHQpfSksX1IudW5Ub2dnbGVTdGF0ZShvcHQuZnVsbHNjcmVlbnRvZ2dsZWRieSl9ZWxzZSBpZigwPT1qUXVlcnkoIiNycy1nby1mdWxsc2NyZWVuIikubGVuZ3RoJiYoInRvZ2dsZWZ1bGxzY3JlZW4iPT1hLmFjdGlvbnx8ImdvZnVsbHNjcmVlbiI9PWEuYWN0aW9uKSl7dmFyIHBhdz1vcHQuYy5jbG9zZXN0KCIuZm9yY2VmdWxsd2lkdGhfd3JhcHBlcl90cF9iYW5uZXIiKS5sZW5ndGg+MD9vcHQuYy5jbG9zZXN0KCIuZm9yY2VmdWxsd2lkdGhfd3JhcHBlcl90cF9iYW5uZXIiKTpvcHQuYy5jbG9zZXN0KCIucmV2X3NsaWRlcl93cmFwcGVyIik7cGF3LndyYXAoJzxkaXYgaWQ9InJzLXdhcy1oZXJlIj48ZGl2IGlkPSJycy1nby1mdWxsc2NyZWVuIj48L2Rpdj48L2Rpdj4nKTt2YXIgZ2Y9alF1ZXJ5KCIjcnMtZ28tZnVsbHNjcmVlbiIpO2dmLmFwcGVuZFRvKGpRdWVyeSgiYm9keSIpKSxnZi5jc3Moe3Bvc2l0aW9uOiJmaXhlZCIsd2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsdG9wOiIwcHgiLGxlZnQ6IjBweCIsekluZGV4OiI5OTk5OTk5IixiYWNrZ3JvdW5kOiIjZmZmZmZmIn0pLG9wdC5vbGRtaW5oZWlnaHQ9b3B0Lm1pbkhlaWdodCxvcHQubWluSGVpZ2h0PWpRdWVyeSh3aW5kb3cpLmhlaWdodCgpLG9wdC5pbmZ1bGxzY3JlZW5tb2RlPSEwLG9wdC5jLnJldnJlZHJhdygpLHZvaWQgMCE9b3B0LnBsYXlpbmd2aWRlb3MmJm9wdC5wbGF5aW5ndmlkZW9zLmxlbmd0aD4wJiZqUXVlcnkuZWFjaChvcHQucGxheWluZ3ZpZGVvcyxmdW5jdGlvbihhLGIpe19SLnBsYXlWaWRlbyhiLG9wdCl9KSxfUi50b2dnbGVTdGF0ZShvcHQuZnVsbHNjcmVlbnRvZ2dsZWRieSl9YnJlYWs7ZGVmYXVsdDp2YXIgb2JqPXt9O29iai5ldmVudD1hLG9iai5sYXllcj1fbmMsb3B0LmMudHJpZ2dlcigibGF5ZXJhY3Rpb24iLFtvYmpdKX19LGdldE9mZkNvbnRIPWZ1bmN0aW9uKGEpe2lmKHZvaWQgMD09YSlyZXR1cm4gMDtpZihhLnNwbGl0KCIsIikubGVuZ3RoPjEpe3ZhciBiPWEuc3BsaXQoIiwiKSxjPTA7cmV0dXJuIGImJmpRdWVyeS5lYWNoKGIsZnVuY3Rpb24oYSxiKXtqUXVlcnkoYikubGVuZ3RoPjAmJihjKz1qUXVlcnkoYikub3V0ZXJIZWlnaHQoITApKX0pLGN9cmV0dXJuIGpRdWVyeShhKS5oZWlnaHQoKX19KGpRdWVyeSk7"}},"time_used":15710,"timings":{"blocked":14635,"dns":0,"connect":0,"send":0,"wait":1075,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.navigation.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.300Z","timestamp":1785143908300,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/js/extensions/revolution.extension.navigation.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:44 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"65d7-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 7094\r\nKeep-Alive: timeout=5, max=96\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":26071,"size_decoded":7462,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (25832), with CRLF line terminators","md5":"adb7b96105b60b1bb1b77d1ae0659504","sha1":"ce42314dcb27947b3d5577ebc44dfc7fdca14d8e","sha256":"37cb4ed8291c673401c21aa0248f8a29e6b49a5c81de1ff5a5e9970d91808627","sha512":"2646fde0e737e918f30de9bca1d2e0e59d0132353c3a42b45b89bdb2290bd3862531a2942be8610c94dd68c3cede60938fc36633e75ccd2445d9753b85f59dc6","ssdeep":"384:AhOOxPBlfo3+X3KqcN12h+dotE7KTUzmFu7jaWIqUB7lR9O2E:AIOxo3+XJcN12h+dq7iopDE","tlshash":"f2c2b899769038ab9473667bc06a40b532728a357307ee6078efa6f0057ccd913e7e4c","first_seen":"2023-03-07T01:06:58Z","last_seen":"2026-08-09T08:42:12.842297Z","times_seen":700,"resource_available":true,"data":"LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogKiBSRVZPTFVUSU9OIDUuMiBFWFRFTlNJT04gLSBOQVZJR0FUSU9ODQogKiBAdmVyc2lvbjogMS4zLjIgKDI1LjEwLjIwMTYpDQogKiBAcmVxdWlyZXMganF1ZXJ5LnRoZW1lcHVuY2gucmV2b2x1dGlvbi5qcw0KICogQGF1dGhvciBUaGVtZVB1bmNoDQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQohZnVuY3Rpb24oYSl7InVzZSBzdHJpY3QiO3ZhciBiPWpRdWVyeS5mbi5yZXZvbHV0aW9uLGM9Yi5pc19tb2JpbGUoKSxkPXthbGlhczoiTmF2aWdhdGlvbiBNaW4gSlMiLG5hbWU6InJldm9sdXRpb24uZXh0ZW5zaW9ucy5uYXZpZ2F0aW9uLm1pbi5qcyIsbWluX2NvcmU6IjUuMyIsdmVyc2lvbjoiMS4zLjIifTtqUXVlcnkuZXh0ZW5kKCEwLGIse2hpZGVVbkhpZGVOYXY6ZnVuY3Rpb24oYSl7dmFyIGI9YS5jLndpZHRoKCksYz1hLm5hdmlnYXRpb24uYXJyb3dzLGQ9YS5uYXZpZ2F0aW9uLmJ1bGxldHMsZT1hLm5hdmlnYXRpb24udGh1bWJuYWlscyxmPWEubmF2aWdhdGlvbi50YWJzO20oYykmJnkoYS5jLmZpbmQoIi50cGFycm93cyIpLGMuaGlkZV91bmRlcixiLGMuaGlkZV9vdmVyKSxtKGQpJiZ5KGEuYy5maW5kKCIudHAtYnVsbGV0cyIpLGQuaGlkZV91bmRlcixiLGQuaGlkZV9vdmVyKSxtKGUpJiZ5KGEuYy5wYXJlbnQoKS5maW5kKCIudHAtdGh1bWJzIiksZS5oaWRlX3VuZGVyLGIsZS5oaWRlX292ZXIpLG0oZikmJnkoYS5jLnBhcmVudCgpLmZpbmQoIi50cC10YWJzIiksZi5oaWRlX3VuZGVyLGIsZi5oaWRlX292ZXIpLHgoYSl9LHJlc2l6ZVRodW1ic1RhYnM6ZnVuY3Rpb24oYSxiKXtpZihhLm5hdmlnYXRpb24mJmEubmF2aWdhdGlvbi50YWJzLmVuYWJsZXx8YS5uYXZpZ2F0aW9uJiZhLm5hdmlnYXRpb24udGh1bWJuYWlscy5lbmFibGUpe3ZhciBjPShqUXVlcnkod2luZG93KS53aWR0aCgpLTQ4MCkvNTAwLGQ9bmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlLGU9YS5uYXZpZ2F0aW9uLnRhYnMsZz1hLm5hdmlnYXRpb24udGh1bWJuYWlscyxoPWEubmF2aWdhdGlvbi5idWxsZXRzO2lmKGQucGF1c2UoKSxjPWM+MT8xOmM8MD8wOmMsbShlKSYmKGJ8fGUud2lkdGg+ZS5taW5fd2lkdGgpJiZmKGMsZCxhLmMsZSxhLnNsaWRlYW1vdW50LCJ0YWIiKSxtKGcpJiYoYnx8Zy53aWR0aD5nLm1pbl93aWR0aCkmJmYoYyxkLGEuYyxnLGEuc2xpZGVhbW91bnQsInRodW1iIiksbShoKSYmYil7dmFyIGk9YS5jLmZpbmQoIi50cC1idWxsZXRzIik7aS5maW5kKCIudHAtYnVsbGV0IikuZWFjaChmdW5jdGlvbihhKXt2YXIgYj1qUXVlcnkodGhpcyksYz1hKzEsZD1iLm91dGVyV2lkdGgoKStwYXJzZUludCh2b2lkIDA9PT1oLnNwYWNlPzA6aC5zcGFjZSwwKSxlPWIub3V0ZXJIZWlnaHQoKStwYXJzZUludCh2b2lkIDA9PT1oLnNwYWNlPzA6aC5zcGFjZSwwKTsidmVydGljYWwiPT09aC5kaXJlY3Rpb24/KGIuY3NzKHt0b3A6KGMtMSkqZSsicHgiLGxlZnQ6IjBweCJ9KSxpLmNzcyh7aGVpZ2h0OihjLTEpKmUrYi5vdXRlckhlaWdodCgpLHdpZHRoOmIub3V0ZXJXaWR0aCgpfSkpOihiLmNzcyh7bGVmdDooYy0xKSpkKyJweCIsdG9wOiIwcHgifSksaS5jc3Moe3dpZHRoOihjLTEpKmQrYi5vdXRlcldpZHRoKCksaGVpZ2h0OmIub3V0ZXJIZWlnaHQoKX0pKX0pfWQucGxheSgpLHgoYSl9cmV0dXJuITB9LHVwZGF0ZU5hdkluZGV4ZXM6ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gZChhKXtjLmZpbmQoYSkubGVuZ2h0PjAmJmMuZmluZChhKS5lYWNoKGZ1bmN0aW9uKGEpe2pRdWVyeSh0aGlzKS5kYXRhKCJsaWluZGV4IixhKX0pfXZhciBjPWEuYztkKCIudHAtdGFiIiksZCgiLnRwLWJ1bGxldCIpLGQoIi50cC10aHVtYiIpLGIucmVzaXplVGh1bWJzVGFicyhhLCEwKSxiLm1hbmFnZU5hdmlnYXRpb24oYSl9LG1hbmFnZU5hdmlnYXRpb246ZnVuY3Rpb24oYSl7dmFyIGM9Yi5nZXRIb3Jpem9udGFsT2Zmc2V0KGEuYy5wYXJlbnQoKSwibGVmdCIpLGQ9Yi5nZXRIb3Jpem9udGFsT2Zmc2V0KGEuYy5wYXJlbnQoKSwicmlnaHQiKTttKGEubmF2aWdhdGlvbi5idWxsZXRzKSYmKCJmdWxsc2NyZWVuIiE9YS5zbGlkZXJMYXlvdXQmJiJmdWxsd2lkdGgiIT1hLnNsaWRlckxheW91dCYmKGEubmF2aWdhdGlvbi5idWxsZXRzLmhfb2Zmc2V0X29sZD12b2lkIDA9PT1hLm5hdmlnYXRpb24uYnVsbGV0cy5oX29mZnNldF9vbGQ/YS5uYXZpZ2F0aW9uLmJ1bGxldHMuaF9vZmZzZXQ6YS5uYXZpZ2F0aW9uLmJ1bGxldHMuaF9vZmZzZXRfb2xkLGEubmF2aWdhdGlvbi5idWxsZXRzLmhfb2Zmc2V0PSJjZW50ZXIiPT09YS5uYXZpZ2F0aW9uLmJ1bGxldHMuaF9hbGlnbj9hLm5hdmlnYXRpb24uYnVsbGV0cy5oX29mZnNldF9vbGQrYy8yLWQvMjphLm5hdmlnYXRpb24uYnVsbGV0cy5oX29mZnNldF9vbGQrYy1kKSx0KGEuYy5maW5kKCIudHAtYnVsbGV0cyIpLGEubmF2aWdhdGlvbi5idWxsZXRzLGEpKSxtKGEubmF2aWdhdGlvbi50aHVtYm5haWxzKSYmdChhLmMucGFyZW50KCkuZmluZCgiLnRwLXRodW1icyIpLGEubmF2aWdhdGlvbi50aHVtYm5haWxzLGEpLG0oYS5uYXZpZ2F0aW9uLnRhYnMpJiZ0KGEuYy5wYXJlbnQoKS5maW5kKCIudHAtdGFicyIpLGEubmF2aWdhdGlvbi50YWJzLGEpLG0oYS5uYXZpZ2F0aW9uLmFycm93cykmJigiZnVsbHNjcmVlbiIhPWEuc2xpZGVyTGF5b3V0JiYiZnVsbHdpZHRoIiE9YS5zbGlkZXJMYXlvdXQmJihhLm5hdmlnYXRpb24uYXJyb3dzLmxlZnQuaF9vZmZzZXRfb2xkPXZvaWQgMD09PWEubmF2aWdhdGlvbi5hcnJvd3MubGVmdC5oX29mZnNldF9vbGQ/YS5uYXZpZ2F0aW9uLmFycm93cy5sZWZ0Lmhfb2Zmc2V0OmEubmF2aWdhdGlvbi5hcnJvd3MubGVmdC5oX29mZnNldF9vbGQsYS5uYXZpZ2F0aW9uLmFycm93cy5sZWZ0Lmhfb2Zmc2V0PSJyaWdodCI9PT1hLm5hdmlnYXRpb24uYXJyb3dzLmxlZnQuaF9hbGlnbj9hLm5hdmlnYXRpb24uYXJyb3dzLmxlZnQuaF9vZmZzZXRfb2xkK2Q6YS5uYXZpZ2F0aW9uLmFycm93cy5sZWZ0Lmhfb2Zmc2V0X29sZCtjLGEubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQuaF9vZmZzZXRfb2xkPXZvaWQgMD09PWEubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQuaF9vZmZzZXRfb2xkP2EubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQuaF9vZmZzZXQ6YS5uYXZpZ2F0aW9uLmFycm93cy5yaWdodC5oX29mZnNldF9vbGQsYS5uYXZpZ2F0aW9uLmFycm93cy5yaWdodC5oX29mZnNldD0icmlnaHQiPT09YS5uYXZpZ2F0aW9uLmFycm93cy5yaWdodC5oX2FsaWduP2EubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQuaF9vZmZzZXRfb2xkK2Q6YS5uYXZpZ2F0aW9uLmFycm93cy5yaWdodC5oX29mZnNldF9vbGQrYyksdChhLmMuZmluZCgiLnRwLWxlZnRhcnJvdy50cGFycm93cyIpLGEubmF2aWdhdGlvbi5hcnJvd3MubGVmdCxhKSx0KGEuYy5maW5kKCIudHAtcmlnaHRhcnJvdy50cGFycm93cyIpLGEubmF2aWdhdGlvbi5hcnJvd3MucmlnaHQsYSkpLG0oYS5uYXZpZ2F0aW9uLnRodW1ibmFpbHMpJiZlKGEuYy5wYXJlbnQoKS5maW5kKCIudHAtdGh1bWJzIiksYS5uYXZpZ2F0aW9uLnRodW1ibmFpbHMpLG0oYS5uYXZpZ2F0aW9uLnRhYnMpJiZlKGEuYy5wYXJlbnQoKS5maW5kKCIudHAtdGFicyIpLGEubmF2aWdhdGlvbi50YWJzKX0sY3JlYXRlTmF2aWdhdGlvbjpmdW5jdGlvbihhLGYpe2lmKCJzdG9wIj09PWIuY29tcGFyZV92ZXJzaW9uKGQpLmNoZWNrKXJldHVybiExO3ZhciBnPWEucGFyZW50KCksaj1mLm5hdmlnYXRpb24uYXJyb3dzLG49Zi5uYXZpZ2F0aW9uLmJ1bGxldHMscj1mLm5hdmlnYXRpb24udGh1bWJuYWlscyxzPWYubmF2aWdhdGlvbi50YWJzLHQ9bShqKSx2PW0obikseD1tKHIpLHk9bShzKTtoKGEsZiksaShhLGYpLHQmJnEoYSxqLGYpLGYubGkuZWFjaChmdW5jdGlvbihiKXt2YXIgYz1qUXVlcnkoZi5saVtmLmxpLmxlbmd0aC0xLWJdKSxkPWpRdWVyeSh0aGlzKTt2JiYoZi5uYXZpZ2F0aW9uLmJ1bGxldHMucnRsP3UoYSxuLGMsZik6dShhLG4sZCxmKSkseCYmKGYubmF2aWdhdGlvbi50aHVtYm5haWxzLnJ0bD93KGEscixjLCJ0cC10aHVtYiIsZik6dyhhLHIsZCwidHAtdGh1bWIiLGYpKSx5JiYoZi5uYXZpZ2F0aW9uLnRhYnMucnRsP3coYSxzLGMsInRwLXRhYiIsZik6dyhhLHMsZCwidHAtdGFiIixmKSl9KSxhLmJpbmQoInJldm9sdXRpb24uc2xpZGUub25hZnRlcnN3YXAgcmV2b2x1dGlvbi5uZXh0c2xpZGUud2FpdGluZyIsZnVuY3Rpb24oKXt2YXIgYj0wPT1hLmZpbmQoIi5uZXh0LXJldnNsaWRlIikubGVuZ3RoP2EuZmluZCgiLmFjdGl2ZS1yZXZzbGlkZSIpLmRhdGEoImluZGV4Iik6YS5maW5kKCIubmV4dC1yZXZzbGlkZSIpLmRhdGEoImluZGV4Iik7YS5maW5kKCIudHAtYnVsbGV0IikuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKTthLmRhdGEoImxpcmVmIik9PT1iP2EuYWRkQ2xhc3MoInNlbGVjdGVkIik6YS5yZW1vdmVDbGFzcygic2VsZWN0ZWQiKX0pLGcuZmluZCgiLnRwLXRodW1iLCAudHAtdGFiIikuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKTthLmRhdGEoImxpcmVmIik9PT1iPyhhLmFkZENsYXNzKCJzZWxlY3RlZCIpLGEuaGFzQ2xhc3MoInRwLXRhYiIpP2UoZy5maW5kKCIudHAtdGFicyIpLHMpOmUoZy5maW5kKCIudHAtdGh1bWJzIikscikpOmEucmVtb3ZlQ2xhc3MoInNlbGVjdGVkIil9KTt2YXIgYz0wLGQ9ITE7Zi50aHVtYnMmJmpRdWVyeS5lYWNoKGYudGh1bWJzLGZ1bmN0aW9uKGEsZSl7Yz1kPT09ITE/YTpjLGQ9ZS5pZD09PWJ8fGE9PT1ifHxkfSk7dmFyIGg9Yz4wP2MtMTpmLnNsaWRlYW1vdW50LTEsaT1jKzE9PWYuc2xpZGVhbW91bnQ/MDpjKzE7aWYoai5lbmFibGU9PT0hMCl7dmFyIGs9ai50bXA7aWYodm9pZCAwIT1mLnRodW1ic1toXSYmalF1ZXJ5LmVhY2goZi50aHVtYnNbaF0ucGFyYW1zLGZ1bmN0aW9uKGEsYil7az1rLnJlcGxhY2UoYi5mcm9tLGIudG8pfSksai5sZWZ0LmouaHRtbChrKSxrPWoudG1wLGk+Zi5zbGlkZWFtb3VudClyZXR1cm47alF1ZXJ5LmVhY2goZi50aHVtYnNbaV0ucGFyYW1zLGZ1bmN0aW9uKGEsYil7az1rLnJlcGxhY2UoYi5mcm9tLGIudG8pfSksai5yaWdodC5qLmh0bWwoaykscHVuY2hncy5Ud2VlbkxpdGUuc2V0KGoubGVmdC5qLmZpbmQoIi50cC1hcnItaW1naG9sZGVyIikse2JhY2tncm91bmRJbWFnZToidXJsKCIrZi50aHVtYnNbaF0uc3JjKyIpIn0pLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChqLnJpZ2h0LmouZmluZCgiLnRwLWFyci1pbWdob2xkZXIiKSx7YmFja2dyb3VuZEltYWdlOiJ1cmwoIitmLnRodW1ic1tpXS5zcmMrIikifSl9fSksbChqKSxsKG4pLGwociksbChzKSxnLm9uKCJtb3VzZWVudGVyIG1vdXNlbW92ZSIsZnVuY3Rpb24oKXtnLmhhc0NsYXNzKCJ0cC1tb3VzZW92ZXIiKXx8KGcuYWRkQ2xhc3MoInRwLW1vdXNlb3ZlciIpLHB1bmNoZ3MuVHdlZW5MaXRlLmtpbGxEZWxheWVkQ2FsbHNUbyhwKSx0JiZqLmhpZGVfb25sZWF2ZSYmcChnLmZpbmQoIi50cGFycm93cyIpLGosInNob3ciKSx2JiZuLmhpZGVfb25sZWF2ZSYmcChnLmZpbmQoIi50cC1idWxsZXRzIiksbiwic2hvdyIpLHgmJnIuaGlkZV9vbmxlYXZlJiZwKGcuZmluZCgiLnRwLXRodW1icyIpLHIsInNob3ciKSx5JiZzLmhpZGVfb25sZWF2ZSYmcChnLmZpbmQoIi50cC10YWJzIikscywic2hvdyIpLGMmJihnLnJlbW92ZUNsYXNzKCJ0cC1tb3VzZW92ZXIiKSxvKGEsZikpKX0pLGcub24oIm1vdXNlbGVhdmUiLGZ1bmN0aW9uKCl7Zy5yZW1vdmVDbGFzcygidHAtbW91c2VvdmVyIiksbyhhLGYpfSksdCYmai5oaWRlX29ubGVhdmUmJnAoZy5maW5kKCIudHBhcnJvd3MiKSxqLCJoaWRlIiwwKSx2JiZuLmhpZGVfb25sZWF2ZSYmcChnLmZpbmQoIi50cC1idWxsZXRzIiksbiwiaGlkZSIsMCkseCYmci5oaWRlX29ubGVhdmUmJnAoZy5maW5kKCIudHAtdGh1bWJzIiksciwiaGlkZSIsMCkseSYmcy5oaWRlX29ubGVhdmUmJnAoZy5maW5kKCIudHAtdGFicyIpLHMsImhpZGUiLDApLHgmJmsoZy5maW5kKCIudHAtdGh1bWJzIiksZikseSYmayhnLmZpbmQoIi50cC10YWJzIiksZiksImNhcm91c2VsIj09PWYuc2xpZGVyVHlwZSYmayhhLGYsITApLCJvbiI9PWYubmF2aWdhdGlvbi50b3VjaC50b3VjaGVuYWJsZWQmJmsoYSxmLCJzd2lwZWJhc2VkIil9fSk7dmFyIGU9ZnVuY3Rpb24oYSxiKXt2YXIgZD0oYS5oYXNDbGFzcygidHAtdGh1bWJzIik/Ii50cC10aHVtYnMiOiIudHAtdGFicyIsYS5oYXNDbGFzcygidHAtdGh1bWJzIik/Ii50cC10aHVtYi1tYXNrIjoiLnRwLXRhYi1tYXNrIiksZT1hLmhhc0NsYXNzKCJ0cC10aHVtYnMiKT8iLnRwLXRodW1icy1pbm5lci13cmFwcGVyIjoiLnRwLXRhYnMtaW5uZXItd3JhcHBlciIsZj1hLmhhc0NsYXNzKCJ0cC10aHVtYnMiKT8iLnRwLXRodW1iIjoiLnRwLXRhYiIsZz1hLmZpbmQoZCksaD1nLmZpbmQoZSksaT1iLmRpcmVjdGlvbixqPSJ2ZXJ0aWNhbCI9PT1pP2cuZmluZChmKS5maXJzdCgpLm91dGVySGVpZ2h0KCEwKStiLnNwYWNlOmcuZmluZChmKS5maXJzdCgpLm91dGVyV2lkdGgoITApK2Iuc3BhY2Usaz0idmVydGljYWwiPT09aT9nLmhlaWdodCgpOmcud2lkdGgoKSxsPXBhcnNlSW50KGcuZmluZChmKyIuc2VsZWN0ZWQiKS5kYXRhKCJsaWluZGV4IiksMCksbT1rL2osbj0idmVydGljYWwiPT09aT9nLmhlaWdodCgpOmcud2lkdGgoKSxvPTAtbCpqLHA9InZlcnRpY2FsIj09PWk/aC5oZWlnaHQoKTpoLndpZHRoKCkscT1vPDAtKHAtbik/MC0ocC1uKTpxPjA/MDpvLHI9aC5kYXRhKCJvZmZzZXQiKTttPjImJihxPW8tKHIraik8PTA/by0ocitqKTwwLWo/cjpxK2o6cSxxPW8taityK2s8aiYmbysoTWF0aC5yb3VuZChtKS0yKSpqPHI/bysoTWF0aC5yb3VuZChtKS0yKSpqOnEpLHE9cTwwLShwLW4pPzAtKHAtbik6cT4wPzA6cSwidmVydGljYWwiIT09aSYmZy53aWR0aCgpPj1oLndpZHRoKCkmJihxPTApLCJ2ZXJ0aWNhbCI9PT1pJiZnLmhlaWdodCgpPj1oLmhlaWdodCgpJiYocT0wKSxhLmhhc0NsYXNzKCJkcmFnZ2VkIil8fCgidmVydGljYWwiPT09aT9oLmRhdGEoInRtbW92ZSIscHVuY2hncy5Ud2VlbkxpdGUudG8oaCwuNSx7dG9wOnErInB4IixlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dH0pKTpoLmRhdGEoInRtbW92ZSIscHVuY2hncy5Ud2VlbkxpdGUudG8oaCwuNSx7bGVmdDpxKyJweCIsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXR9KSksaC5kYXRhKCJvZmZzZXQiLHEpKX0sZj1mdW5jdGlvbihhLGIsYyxkLGUsZil7dmFyIGc9Yy5wYXJlbnQoKS5maW5kKCIudHAtIitmKyJzIiksaD1nLmZpbmQoIi50cC0iK2YrInMtaW5uZXItd3JhcHBlciIpLGk9Zy5maW5kKCIudHAtIitmKyItbWFzayIpLGo9ZC53aWR0aCphPGQubWluX3dpZHRoP2QubWluX3dpZHRoOk1hdGgucm91bmQoZC53aWR0aCphKSxrPU1hdGgucm91bmQoai9kLndpZHRoKmQuaGVpZ2h0KSxsPSJ2ZXJ0aWNhbCI9PT1kLmRpcmVjdGlvbj9qOmoqZStkLnNwYWNlKihlLTEpLG09InZlcnRpY2FsIj09PWQuZGlyZWN0aW9uP2sqZStkLnNwYWNlKihlLTEpOmssbj0idmVydGljYWwiPT09ZC5kaXJlY3Rpb24/e3dpZHRoOmorInB4In06e2hlaWdodDprKyJweCJ9O2IuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChnLG4pKSxiLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaCx7d2lkdGg6bCsicHgiLGhlaWdodDptKyJweCJ9KSksYi5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGkse3dpZHRoOmwrInB4IixoZWlnaHQ6bSsicHgifSkpO3ZhciBvPWguZmluZCgiLnRwLSIrZik7cmV0dXJuIG8mJmpRdWVyeS5lYWNoKG8sZnVuY3Rpb24oYSxjKXsidmVydGljYWwiPT09ZC5kaXJlY3Rpb24/Yi5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGMse3RvcDphKihrK3BhcnNlSW50KHZvaWQgMD09PWQuc3BhY2U/MDpkLnNwYWNlLDApKSx3aWR0aDpqKyJweCIsaGVpZ2h0OmsrInB4In0pKToiaG9yaXpvbnRhbCI9PT1kLmRpcmVjdGlvbiYmYi5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGMse2xlZnQ6YSooaitwYXJzZUludCh2b2lkIDA9PT1kLnNwYWNlPzA6ZC5zcGFjZSwwKSksd2lkdGg6aisicHgiLGhlaWdodDprKyJweCJ9KSl9KSxifSxnPWZ1bmN0aW9uKGEpe3ZhciBiPTAsYz0wLGQ9MCxlPTAsZj0xLGc9MSxoPTE7cmV0dXJuImRldGFpbCJpbiBhJiYoYz1hLmRldGFpbCksIndoZWVsRGVsdGEiaW4gYSYmKGM9LWEud2hlZWxEZWx0YS8xMjApLCJ3aGVlbERlbHRhWSJpbiBhJiYoYz0tYS53aGVlbERlbHRhWS8xMjApLCJ3aGVlbERlbHRhWCJpbiBhJiYoYj0tYS53aGVlbERlbHRhWC8xMjApLCJheGlzImluIGEmJmEuYXhpcz09PWEuSE9SSVpPTlRBTF9BWElTJiYoYj1jLGM9MCksZD1iKmYsZT1jKmYsImRlbHRhWSJpbiBhJiYoZT1hLmRlbHRhWSksImRlbHRhWCJpbiBhJiYoZD1hLmRlbHRhWCksKGR8fGUpJiZhLmRlbHRhTW9kZSYmKDE9PWEuZGVsdGFNb2RlPyhkKj1nLGUqPWcpOihkKj1oLGUqPWgpKSxkJiYhYiYmKGI9ZDwxPy0xOjEpLGUmJiFjJiYoYz1lPDE/LTE6MSksZT1uYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9tb3ppbGxhL2kpPzEwKmU6ZSwoZT4zMDB8fGU8LTMwMCkmJihlLz0xMCkse3NwaW5YOmIsc3Bpblk6YyxwaXhlbFg6ZCxwaXhlbFk6ZX19LGg9ZnVuY3Rpb24oYSxjKXsib24iPT09Yy5uYXZpZ2F0aW9uLmtleWJvYXJkTmF2aWdhdGlvbiYmalF1ZXJ5KGRvY3VtZW50KS5rZXlkb3duKGZ1bmN0aW9uKGQpeygiaG9yaXpvbnRhbCI9PWMubmF2aWdhdGlvbi5rZXlib2FyZF9kaXJlY3Rpb24mJjM5PT1kLmtleUNvZGV8fCJ2ZXJ0aWNhbCI9PWMubmF2aWdhdGlvbi5rZXlib2FyZF9kaXJlY3Rpb24mJjQwPT1kLmtleUNvZGUpJiYoYy5zY19pbmRpY2F0b3I9ImFycm93IixjLnNjX2luZGljYXRvcl9kaXI9MCxiLmNhbGxpbmdOZXdTbGlkZShhLDEpKSwoImhvcml6b250YWwiPT1jLm5hdmlnYXRpb24ua2V5Ym9hcmRfZGlyZWN0aW9uJiYzNz09ZC5rZXlDb2RlfHwidmVydGljYWwiPT1jLm5hdmlnYXRpb24ua2V5Ym9hcmRfZGlyZWN0aW9uJiYzOD09ZC5rZXlDb2RlKSYmKGMuc2NfaW5kaWNhdG9yPSJhcnJvdyIsYy5zY19pbmRpY2F0b3JfZGlyPTEsYi5jYWxsaW5nTmV3U2xpZGUoYSwtMSkpfSl9LGk9ZnVuY3Rpb24oYSxjKXtpZigib24iPT09Yy5uYXZpZ2F0aW9uLm1vdXNlU2Nyb2xsTmF2aWdhdGlvbnx8ImNhcm91c2VsIj09PWMubmF2aWdhdGlvbi5tb3VzZVNjcm9sbE5hdmlnYXRpb24pe2MuaXNJRUVsZXZlbj0hIW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1RyaWRlbnQuKnJ2XDoxMVwuLyksYy5pc1NhZmFyaT0hIW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL3NhZmFyaS9pKSxjLmlzY2hyb21lPSEhbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvY2hyb21lL2kpO3ZhciBkPWMuaXNjaHJvbWU/LTQ5OmMuaXNJRUVsZXZlbnx8Yy5pc1NhZmFyaT8tOTpuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9tb3ppbGxhL2kpPy0yOTotNDksZT1jLmlzY2hyb21lPzQ5OmMuaXNJRUVsZXZlbnx8Yy5pc1NhZmFyaT85Om5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL21vemlsbGEvaSk/Mjk6NDk7YS5vbigibW91c2V3aGVlbCBET01Nb3VzZVNjcm9sbCIsZnVuY3Rpb24oZil7dmFyIGg9ZyhmLm9yaWdpbmFsRXZlbnQpLGk9YS5maW5kKCIudHAtcmV2c2xpZGVyLXNsaWRlc2xpLmFjdGl2ZS1yZXZzbGlkZSIpLmluZGV4KCksaj1hLmZpbmQoIi50cC1yZXZzbGlkZXItc2xpZGVzbGkucHJvY2Vzc2luZy1yZXZzbGlkZSIpLmluZGV4KCksaz1pIT0tMSYmMD09aXx8aiE9LTEmJjA9PWosbD1pIT0tMSYmaT09Yy5zbGlkZWFtb3VudC0xfHwxIT1qJiZqPT1jLnNsaWRlYW1vdW50LTEsbT0hMDsiY2Fyb3VzZWwiPT1jLm5hdmlnYXRpb24ubW91c2VTY3JvbGxOYXZpZ2F0aW9uJiYoaz1sPSExKSxqPT0tMT9oLnBpeGVsWTxkPyhrfHwoYy5zY19pbmRpY2F0b3I9ImFycm93IiwicmV2ZXJzZSIhPT1jLm5hdmlnYXRpb24ubW91c2VTY3JvbGxSZXZlcnNlJiYoYy5zY19pbmRpY2F0b3JfZGlyPTEsYi5jYWxsaW5nTmV3U2xpZGUoYSwtMSkpLG09ITEpLGx8fChjLnNjX2luZGljYXRvcj0iYXJyb3ciLCJyZXZlcnNlIj09PWMubmF2aWdhdGlvbi5tb3VzZVNjcm9sbFJldmVyc2UmJihjLnNjX2luZGljYXRvcl9kaXI9MCxiLmNhbGxpbmdOZXdTbGlkZShhLDEpKSxtPSExKSk6aC5waXhlbFk+ZSYmKGx8fChjLnNjX2luZGljYXRvcj0iYXJyb3ciLCJyZXZlcnNlIiE9PWMubmF2aWdhdGlvbi5tb3VzZVNjcm9sbFJldmVyc2UmJihjLnNjX2luZGljYXRvcl9kaXI9MCxiLmNhbGxpbmdOZXdTbGlkZShhLDEpKSxtPSExKSxrfHwoYy5zY19pbmRpY2F0b3I9ImFycm93IiwicmV2ZXJzZSI9PT1jLm5hdmlnYXRpb24ubW91c2VTY3JvbGxSZXZlcnNlJiYoYy5zY19pbmRpY2F0b3JfZGlyPTEsYi5jYWxsaW5nTmV3U2xpZGUoYSwtMSkpLG09ITEpKTptPSExO3ZhciBuPWMuYy5vZmZzZXQoKS50b3AtalF1ZXJ5KCJib2R5Iikuc2Nyb2xsVG9wKCksbz1uK2MuYy5oZWlnaHQoKTtyZXR1cm4iY2Fyb3VzZWwiIT1jLm5hdmlnYXRpb24ubW91c2VTY3JvbGxOYXZpZ2F0aW9uPygicmV2ZXJzZSIhPT1jLm5hdmlnYXRpb24ubW91c2VTY3JvbGxSZXZlcnNlJiYobj4wJiZoLnBpeGVsWT4wfHxvPGpRdWVyeSh3aW5kb3cpLmhlaWdodCgpJiZoLnBpeGVsWTwwKSYmKG09ITApLCJyZXZlcnNlIj09PWMubmF2aWdhdGlvbi5tb3VzZVNjcm9sbFJldmVyc2UmJihuPDAmJmgucGl4ZWxZPDB8fG8+alF1ZXJ5KHdpbmRvdykuaGVpZ2h0KCkmJmgucGl4ZWxZPjApJiYobT0hMCkpOm09ITEsMD09bT8oZi5wcmV2ZW50RGVmYXVsdChmKSwhMSk6dm9pZCAwfSl9fSxqPWZ1bmN0aW9uKGEsYixkKXtyZXR1cm4gYT1jP2pRdWVyeShkLnRhcmdldCkuY2xvc2VzdCgiLiIrYSkubGVuZ3RofHxqUXVlcnkoZC5zcmNFbGVtZW50KS5jbG9zZXN0KCIuIithKS5sZW5ndGg6alF1ZXJ5KGQudG9FbGVtZW50KS5jbG9zZXN0KCIuIithKS5sZW5ndGh8fGpRdWVyeShkLm9yaWdpbmFsVGFyZ2V0KS5jbG9zZXN0KCIuIithKS5sZW5ndGgsYT09PSEwfHwxPT09YT8xOjB9LGs9ZnVuY3Rpb24oYSxkLGUpe3ZhciBmPWQuY2Fyb3VzZWw7alF1ZXJ5KCIuYnVsbGV0LCAuYnVsbGV0cywgLnRwLWJ1bGxldHMsIC50cGFycm93cyIpLmFkZENsYXNzKCJub1N3aXBlIiksZi5MaW1pdD0iZW5kbGVzcyI7dmFyIGg9KGN8fCJGaXJlZm94Ij09PWIuZ2V0X2Jyb3dzZXIoKSxhKSxpPSJ2ZXJ0aWNhbCI9PT1kLm5hdmlnYXRpb24udGh1bWJuYWlscy5kaXJlY3Rpb258fCJ2ZXJ0aWNhbCI9PT1kLm5hdmlnYXRpb24udGFicy5kaXJlY3Rpb24/Im5vbmUiOiJ2ZXJ0aWNhbCIsaz1kLm5hdmlnYXRpb24udG91Y2guc3dpcGVfZGlyZWN0aW9ufHwiaG9yaXpvbnRhbCI7aT0ic3dpcGViYXNlZCI9PWUmJiJ2ZXJ0aWNhbCI9PWs/Im5vbmUiOmU/InZlcnRpY2FsIjppLGpRdWVyeS5mbi5zd2lwZXRwfHwoalF1ZXJ5LmZuLnN3aXBldHA9alF1ZXJ5LmZuLnN3aXBlKSxqUXVlcnkuZm4uc3dpcGV0cC5kZWZhdWx0cyYmalF1ZXJ5LmZuLnN3aXBldHAuZGVmYXVsdHMuZXhjbHVkZWRFbGVtZW50c3x8alF1ZXJ5LmZuLnN3aXBldHAuZGVmYXVsdHN8fChqUXVlcnkuZm4uc3dpcGV0cC5kZWZhdWx0cz1uZXcgT2JqZWN0KSxqUXVlcnkuZm4uc3dpcGV0cC5kZWZhdWx0cy5leGNsdWRlZEVsZW1lbnRzPSJsYWJlbCwgYnV0dG9uLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSwgLm5vU3dpcGUiLGguc3dpcGV0cCh7YWxsb3dQYWdlU2Nyb2xsOmksdHJpZ2dlck9uVG91Y2hMZWF2ZTohMCx0cmVzaG9sZDpkLm5hdmlnYXRpb24udG91Y2guc3dpcGVfdHJlc2hvbGQsZmluZ2VyczpkLm5hdmlnYXRpb24udG91Y2guc3dpcGVfbWluX3RvdWNoZXMsZXhjbHVkZUVsZW1lbnRzOmpRdWVyeS5mbi5zd2lwZXRwLmRlZmF1bHRzLmV4Y2x1ZGVkRWxlbWVudHMsc3dpcGVTdGF0dXM6ZnVuY3Rpb24oYyxlLGcsaCxpLGwsbSl7dmFyIG49aigicmV2X3NsaWRlcl93cmFwcGVyIixhLGMpLG89aigidHAtdGh1bWJzIixhLGMpLHA9aigidHAtdGFicyIsYSxjKSxxPWpRdWVyeSh0aGlzKS5hdHRyKCJjbGFzcyIpLHI9ISFxLm1hdGNoKC90cC10YWJzfHRwLXRodW1iL2dpKTtpZigiY2Fyb3VzZWwiPT09ZC5zbGlkZXJUeXBlJiYoKCJtb3ZlIj09PWV8fCJlbmQiPT09ZXx8ImNhbmNlbCI9PWUpJiZkLmRyYWdTdGFydGVkT3ZlclNsaWRlciYmIWQuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzJiYhZC5kcmFnU3RhcnRlZE92ZXJUYWJzfHwic3RhcnQiPT09ZSYmbj4wJiYwPT09byYmMD09PXApKXN3aXRjaChkLmRyYWdTdGFydGVkT3ZlclNsaWRlcj0hMCxoPWcmJmcubWF0Y2goL2xlZnR8dXAvZyk/TWF0aC5yb3VuZChoKi0xKTpoPU1hdGgucm91bmQoMSpoKSxlKXtjYXNlInN0YXJ0Ijp2b2lkIDAhPT1mLnBvc2l0aW9uYW5pbSYmKGYucG9zaXRpb25hbmltLmtpbGwoKSxmLnNsaWRlX2dsb2JhbG9mZnNldD0ib2ZmIj09PWYuaW5maW5pdHk/Zi5zbGlkZV9vZmZzZXQ6Yi5zaW1wKGYuc2xpZGVfb2Zmc2V0LGYubWF4d2lkdGgpKSxmLm92ZXJwdWxsPSJub25lIixmLndyYXAuYWRkQ2xhc3MoImRyYWdnZWQiKTticmVhaztjYXNlIm1vdmUiOmlmKGQuYy5maW5kKCIudHAtd2l0aGFjdGlvbiIpLmFkZENsYXNzKCJ0cC10ZW1wb3JhcnlkaXNhYmxlZCIpLGYuc2xpZGVfb2Zmc2V0PSJvZmYiPT09Zi5pbmZpbml0eT9mLnNsaWRlX2dsb2JhbG9mZnNldCtoOmIuc2ltcChmLnNsaWRlX2dsb2JhbG9mZnNldCtoLGYubWF4d2lkdGgpLCJvZmYiPT09Zi5pbmZpbml0eSl7dmFyIHM9ImNlbnRlciI9PT1mLmhvcml6b250YWxfYWxpZ24/KGYud3JhcHdpZHRoLzItZi5zbGlkZV93aWR0aC8yLWYuc2xpZGVfb2Zmc2V0KS9mLnNsaWRlX3dpZHRoOigwLWYuc2xpZGVfb2Zmc2V0KS9mLnNsaWRlX3dpZHRoOyJub25lIiE9PWYub3ZlcnB1bGwmJjAhPT1mLm92ZXJwdWxsfHwhKHM8MHx8cz5kLnNsaWRlYW1vdW50LTEpP3M+PTAmJnM8PWQuc2xpZGVhbW91bnQtMSYmKHM+PTAmJmg+Zi5vdmVycHVsbHx8czw9ZC5zbGlkZWFtb3VudC0xJiZoPGYub3ZlcnB1bGwpJiYoZi5vdmVycHVsbD0wKTpmLm92ZXJwdWxsPWgsZi5zbGlkZV9vZmZzZXQ9czwwP2Yuc2xpZGVfb2Zmc2V0KyhmLm92ZXJwdWxsLWgpLzEuMStNYXRoLnNxcnQoTWF0aC5hYnMoKGYub3ZlcnB1bGwtaCkvMS4xKSk6cz5kLnNsaWRlYW1vdW50LTE/Zi5zbGlkZV9vZmZzZXQrKGYub3ZlcnB1bGwtaCkvMS4xLU1hdGguc3FydChNYXRoLmFicygoZi5vdmVycHVsbC1oKS8xLjEpKTpmLnNsaWRlX29mZnNldH1iLm9yZ2FuaXNlQ2Fyb3VzZWwoZCxnLCEwLCEwKTticmVhaztjYXNlImVuZCI6Y2FzZSJjYW5jZWwiOmYuc2xpZGVfZ2xvYmFsb2Zmc2V0PWYuc2xpZGVfb2Zmc2V0LGYud3JhcC5yZW1vdmVDbGFzcygiZHJhZ2dlZCIpLGIuY2Fyb3VzZWxUb0V2YWxQb3NpdGlvbihkLGcpLGQuZHJhZ1N0YXJ0ZWRPdmVyU2xpZGVyPSExLGQuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzPSExLGQuZHJhZ1N0YXJ0ZWRPdmVyVGFicz0hMSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZC5jLmZpbmQoIi50cC13aXRoYWN0aW9uIikucmVtb3ZlQ2xhc3MoInRwLXRlbXBvcmFyeWRpc2FibGVkIil9LDE5KX1lbHNle2lmKCgibW92ZSIhPT1lJiYiZW5kIiE9PWUmJiJjYW5jZWwiIT1lfHxkLmRyYWdTdGFydGVkT3ZlclNsaWRlcnx8IWQuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzJiYhZC5kcmFnU3RhcnRlZE92ZXJUYWJzKSYmISgic3RhcnQiPT09ZSYmbj4wJiYobz4wfHxwPjApKSl7aWYoImVuZCI9PWUmJiFyKXtpZihkLnNjX2luZGljYXRvcj0iYXJyb3ciLCJob3Jpem9udGFsIj09ayYmImxlZnQiPT1nfHwidmVydGljYWwiPT1rJiYidXAiPT1nKXJldHVybiBkLnNjX2luZGljYXRvcl9kaXI9MCxiLmNhbGxpbmdOZXdTbGlkZShkLmMsMSksITE7aWYoImhvcml6b250YWwiPT1rJiYicmlnaHQiPT1nfHwidmVydGljYWwiPT1rJiYiZG93biI9PWcpcmV0dXJuIGQuc2NfaW5kaWNhdG9yX2Rpcj0xLGIuY2FsbGluZ05ld1NsaWRlKGQuYywtMSksITF9cmV0dXJuIGQuZHJhZ1N0YXJ0ZWRPdmVyU2xpZGVyPSExLGQuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzPSExLGQuZHJhZ1N0YXJ0ZWRPdmVyVGFicz0hMSwhMH1vPjAmJihkLmRyYWdTdGFydGVkT3ZlclRodW1icz0hMCkscD4wJiYoZC5kcmFnU3RhcnRlZE92ZXJUYWJzPSEwKTt2YXIgdD1kLmRyYWdTdGFydGVkT3ZlclRodW1icz8iLnRwLXRodW1icyI6Ii50cC10YWJzIix1PWQuZHJhZ1N0YXJ0ZWRPdmVyVGh1bWJzPyIudHAtdGh1bWItbWFzayI6Ii50cC10YWItbWFzayIsdj1kLmRyYWdTdGFydGVkT3ZlclRodW1icz8iLnRwLXRodW1icy1pbm5lci13cmFwcGVyIjoiLnRwLXRhYnMtaW5uZXItd3JhcHBlciIsdz1kLmRyYWdTdGFydGVkT3ZlclRodW1icz8iLnRwLXRodW1iIjoiLnRwLXRhYiIseD1kLmRyYWdTdGFydGVkT3ZlclRodW1icz9kLm5hdmlnYXRpb24udGh1bWJuYWlsczpkLm5hdmlnYXRpb24udGFicztoPWcmJmcubWF0Y2goL2xlZnR8dXAvZyk/TWF0aC5yb3VuZChoKi0xKTpoPU1hdGgucm91bmQoMSpoKTt2YXIgeT1hLnBhcmVudCgpLmZpbmQodSksej15LmZpbmQodiksQT14LmRpcmVjdGlvbixCPSJ2ZXJ0aWNhbCI9PT1BP3ouaGVpZ2h0KCk6ei53aWR0aCgpLEM9InZlcnRpY2FsIj09PUE/eS5oZWlnaHQoKTp5LndpZHRoKCksRD0idmVydGljYWwiPT09QT95LmZpbmQodykuZmlyc3QoKS5vdXRlckhlaWdodCghMCkreC5zcGFjZTp5LmZpbmQodykuZmlyc3QoKS5vdXRlcldpZHRoKCEwKSt4LnNwYWNlLEU9dm9pZCAwPT09ei5kYXRhKCJvZmZzZXQiKT8wOnBhcnNlSW50KHouZGF0YSgib2Zmc2V0IiksMCksRj0wO3N3aXRjaChlKXtjYXNlInN0YXJ0IjphLnBhcmVudCgpLmZpbmQodCkuYWRkQ2xhc3MoImRyYWdnZWQiKSxFPSJ2ZXJ0aWNhbCI9PT1BP3oucG9zaXRpb24oKS50b3A6ei5wb3NpdGlvbigpLmxlZnQsei5kYXRhKCJvZmZzZXQiLEUpLHouZGF0YSgidG1tb3ZlIikmJnouZGF0YSgidG1tb3ZlIikucGF1c2UoKTticmVhaztjYXNlIm1vdmUiOmlmKEI8PUMpcmV0dXJuITE7Rj1FK2gsRj1GPjA/Imhvcml6b250YWwiPT09QT9GLXoud2lkdGgoKSooRi96LndpZHRoKCkqRi96LndpZHRoKCkpOkYtei5oZWlnaHQoKSooRi96LmhlaWdodCgpKkYvei5oZWlnaHQoKSk6Rjt2YXIgRz0idmVydGljYWwiPT09QT8wLSh6LmhlaWdodCgpLXkuaGVpZ2h0KCkpOjAtKHoud2lkdGgoKS15LndpZHRoKCkpO0Y9RjxHPyJob3Jpem9udGFsIj09PUE/Rit6LndpZHRoKCkqKEYtRykvei53aWR0aCgpKihGLUcpL3oud2lkdGgoKTpGK3ouaGVpZ2h0KCkqKEYtRykvei5oZWlnaHQoKSooRi1HKS96LmhlaWdodCgpOkYsInZlcnRpY2FsIj09PUE/cHVuY2hncy5Ud2VlbkxpdGUuc2V0KHose3RvcDpGKyJweCJ9KTpwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoeix7bGVmdDpGKyJweCJ9KTticmVhaztjYXNlImVuZCI6Y2FzZSJjYW5jZWwiOmlmKHIpcmV0dXJuIEY9RStoLEY9InZlcnRpY2FsIj09PUE/RjwwLSh6LmhlaWdodCgpLXkuaGVpZ2h0KCkpPzAtKHouaGVpZ2h0KCkteS5oZWlnaHQoKSk6RjpGPDAtKHoud2lkdGgoKS15LndpZHRoKCkpPzAtKHoud2lkdGgoKS15LndpZHRoKCkpOkYsRj1GPjA/MDpGLEY9TWF0aC5hYnMoaCk+RC8xMD9oPD0wP01hdGguZmxvb3IoRi9EKSpEOk1hdGguY2VpbChGL0QpKkQ6aDwwP01hdGguY2VpbChGL0QpKkQ6TWF0aC5mbG9vcihGL0QpKkQsRj0idmVydGljYWwiPT09QT9GPDAtKHouaGVpZ2h0KCkteS5oZWlnaHQoKSk/MC0oei5oZWlnaHQoKS15LmhlaWdodCgpKTpGOkY8MC0oei53aWR0aCgpLXkud2lkdGgoKSk/MC0oei53aWR0aCgpLXkud2lkdGgoKSk6RixGPUY+MD8wOkYsInZlcnRpY2FsIj09PUE/cHVuY2hncy5Ud2VlbkxpdGUudG8oeiwuNSx7dG9wOkYrInB4IixlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VPdXR9KTpwdW5jaGdzLlR3ZWVuTGl0ZS50byh6LC41LHtsZWZ0OkYrInB4IixlYXNlOnB1bmNoZ3MuUG93ZXIzLmVhc2VPdXR9KSxGPUY/RjoidmVydGljYWwiPT09QT96LnBvc2l0aW9uKCkudG9wOnoucG9zaXRpb24oKS5sZWZ0LHouZGF0YSgib2Zmc2V0IixGKSx6LmRhdGEoImRpc3RhbmNlIixoKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZC5kcmFnU3RhcnRlZE92ZXJTbGlkZXI9ITEsZC5kcmFnU3RhcnRlZE92ZXJUaHVtYnM9ITEsZC5kcmFnU3RhcnRlZE92ZXJUYWJzPSExfSwxMDApLGEucGFyZW50KCkuZmluZCh0KS5yZW1vdmVDbGFzcygiZHJhZ2dlZCIpLCExfX19fSl9LGw9ZnVuY3Rpb24oYSl7YS5oaWRlX2RlbGF5PWpRdWVyeS5pc051bWVyaWMocGFyc2VJbnQoYS5oaWRlX2RlbGF5LDApKT9hLmhpZGVfZGVsYXkvMWUzOi4yLGEuaGlkZV9kZWxheV9tb2JpbGU9alF1ZXJ5LmlzTnVtZXJpYyhwYXJzZUludChhLmhpZGVfZGVsYXlfbW9iaWxlLDApKT9hLmhpZGVfZGVsYXlfbW9iaWxlLzFlMzouMn0sbT1mdW5jdGlvbihhKXtyZXR1cm4gYSYmYS5lbmFibGV9LG49ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEuZW5hYmxlJiZhLmhpZGVfb25sZWF2ZT09PSEwJiYodm9pZCAwPT09YS5wb3NpdGlvbnx8IWEucG9zaXRpb24ubWF0Y2goL291dGVyL2cpKX0sbz1mdW5jdGlvbihhLGIpe3ZhciBkPWEucGFyZW50KCk7bihiLm5hdmlnYXRpb24uYXJyb3dzKSYmcHVuY2hncy5Ud2VlbkxpdGUuZGVsYXllZENhbGwoYz9iLm5hdmlnYXRpb24uYXJyb3dzLmhpZGVfZGVsYXlfbW9iaWxlOmIubmF2aWdhdGlvbi5hcnJvd3MuaGlkZV9kZWxheSxwLFtkLmZpbmQoIi50cGFycm93cyIpLGIubmF2aWdhdGlvbi5hcnJvd3MsImhpZGUiXSksbihiLm5hdmlnYXRpb24uYnVsbGV0cykmJnB1bmNoZ3MuVHdlZW5MaXRlLmRlbGF5ZWRDYWxsKGM/Yi5uYXZpZ2F0aW9uLmJ1bGxldHMuaGlkZV9kZWxheV9tb2JpbGU6Yi5uYXZpZ2F0aW9uLmJ1bGxldHMuaGlkZV9kZWxheSxwLFtkLmZpbmQoIi50cC1idWxsZXRzIiksYi5uYXZpZ2F0aW9uLmJ1bGxldHMsImhpZGUiXSksbihiLm5hdmlnYXRpb24udGh1bWJuYWlscykmJnB1bmNoZ3MuVHdlZW5MaXRlLmRlbGF5ZWRDYWxsKGM/Yi5uYXZpZ2F0aW9uLnRodW1ibmFpbHMuaGlkZV9kZWxheV9tb2JpbGU6Yi5uYXZpZ2F0aW9uLnRodW1ibmFpbHMuaGlkZV9kZWxheSxwLFtkLmZpbmQoIi50cC10aHVtYnMiKSxiLm5hdmlnYXRpb24udGh1bWJuYWlscywiaGlkZSJdKSxuKGIubmF2aWdhdGlvbi50YWJzKSYmcHVuY2hncy5Ud2VlbkxpdGUuZGVsYXllZENhbGwoYz9iLm5hdmlnYXRpb24udGFicy5oaWRlX2RlbGF5X21vYmlsZTpiLm5hdmlnYXRpb24udGFicy5oaWRlX2RlbGF5LHAsW2QuZmluZCgiLnRwLXRhYnMiKSxiLm5hdmlnYXRpb24udGFicywiaGlkZSJdKX0scD1mdW5jdGlvbihhLGIsYyxkKXtzd2l0Y2goZD12b2lkIDA9PT1kPy41OmQsYyl7Y2FzZSJzaG93IjpwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLGQse2F1dG9BbHBoYToxLGVhc2U6cHVuY2hncy5Qb3dlcjMuZWFzZUluT3V0LG92ZXJ3cml0ZToiYXV0byJ9KTticmVhaztjYXNlImhpZGUiOnB1bmNoZ3MuVHdlZW5MaXRlLnRvKGEsZCx7YXV0b0FscGhhOjAsZWFzZTpwdW5jaGdzLlBvd2VyMy5lYXNlSW5PdSxvdmVyd3JpdGU6ImF1dG8ifSl9fSxxPWZ1bmN0aW9uKGEsYixjKXtiLnN0eWxlPXZvaWQgMD09PWIuc3R5bGU/IiI6Yi5zdHlsZSxiLmxlZnQuc3R5bGU9dm9pZCAwPT09Yi5sZWZ0LnN0eWxlPyIiOmIubGVmdC5zdHlsZSxiLnJpZ2h0LnN0eWxlPXZvaWQgMD09PWIucmlnaHQuc3R5bGU/IiI6Yi5yaWdodC5zdHlsZSwwPT09YS5maW5kKCIudHAtbGVmdGFycm93LnRwYXJyb3dzIikubGVuZ3RoJiZhLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtbGVmdGFycm93IHRwYXJyb3dzICcrYi5zdHlsZSsiICIrYi5sZWZ0LnN0eWxlKyciPicrYi50bXArIjwvZGl2PiIpLDA9PT1hLmZpbmQoIi50cC1yaWdodGFycm93LnRwYXJyb3dzIikubGVuZ3RoJiZhLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtcmlnaHRhcnJvdyB0cGFycm93cyAnK2Iuc3R5bGUrIiAiK2IucmlnaHQuc3R5bGUrJyI+JytiLnRtcCsiPC9kaXY+Iik7dmFyIGQ9YS5maW5kKCIudHAtbGVmdGFycm93LnRwYXJyb3dzIiksZT1hLmZpbmQoIi50cC1yaWdodGFycm93LnRwYXJyb3dzIik7Yi5ydGw/KGQuY2xpY2soZnVuY3Rpb24oKXtjLnNjX2luZGljYXRvcj0iYXJyb3ciLGMuc2NfaW5kaWNhdG9yX2Rpcj0wLGEucmV2bmV4dCgpfSksZS5jbGljayhmdW5jdGlvbigpe2Muc2NfaW5kaWNhdG9yPSJhcnJvdyIsYy5zY19pbmRpY2F0b3JfZGlyPTEsYS5yZXZwcmV2KCl9KSk6KGUuY2xpY2soZnVuY3Rpb24oKXtjLnNjX2luZGljYXRvcj0iYXJyb3ciLGMuc2NfaW5kaWNhdG9yX2Rpcj0wLGEucmV2bmV4dCgpfSksZC5jbGljayhmdW5jdGlvbigpe2Muc2NfaW5kaWNhdG9yPSJhcnJvdyIsYy5zY19pbmRpY2F0b3JfZGlyPTEsYS5yZXZwcmV2KCl9KSksYi5yaWdodC5qPWEuZmluZCgiLnRwLXJpZ2h0YXJyb3cudHBhcnJvd3MiKSxiLmxlZnQuaj1hLmZpbmQoIi50cC1sZWZ0YXJyb3cudHBhcnJvd3MiKSxiLnBhZGRpbmdfdG9wPXBhcnNlSW50KGMuY2Fyb3VzZWwucGFkZGluZ190b3B8fDAsMCksYi5wYWRkaW5nX2JvdHRvbT1wYXJzZUludChjLmNhcm91c2VsLnBhZGRpbmdfYm90dG9tfHwwLDApLHQoZCxiLmxlZnQsYyksdChlLGIucmlnaHQsYyksYi5sZWZ0Lm9wdD1jLGIucmlnaHQub3B0PWMsIm91dGVyLWxlZnQiIT1iLnBvc2l0aW9uJiYib3V0ZXItcmlnaHQiIT1iLnBvc2l0aW9ufHwoYy5vdXRlcm5hdj0hMCl9LHI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEub3V0ZXJIZWlnaHQoITApLGY9KGEub3V0ZXJXaWR0aCghMCksdm9pZCAwPT1iLm9wdD8wOjA9PWMuY29uaD9jLmhlaWdodDpjLmNvbmgpLGc9ImxheWVyZ3JpZCI9PWIuY29udGFpbmVyPyJmdWxsc2NyZWVuIj09Yy5zbGlkZXJMYXlvdXQ/Yy5oZWlnaHQvMi1jLmdyaWRoZWlnaHRbYy5jdXJXaW5SYW5nZV0qYy5iaC8yOiJvbiI9PWMuYXV0b0hlaWdodHx8dm9pZCAwIT1jLm1pbkhlaWdodCYmYy5taW5IZWlnaHQ+MD9mLzItYy5ncmlkaGVpZ2h0W2MuY3VyV2luUmFuZ2VdKmMuYmgvMjowOjAsaD0idG9wIj09PWIudl9hbGlnbj97dG9wOiIwcHgiLHk6TWF0aC5yb3VuZChiLnZfb2Zmc2V0K2cpKyJweCJ9OiJjZW50ZXIiPT09Yi52X2FsaWduP3t0b3A6IjUwJSIseTpNYXRoLnJvdW5kKDAtZC8yK2Iudl9vZmZzZXQpKyJweCJ9Ont0b3A6IjEwMCUiLHk6TWF0aC5yb3VuZCgwLShkK2Iudl9vZmZzZXQrZykpKyJweCJ9O2EuaGFzQ2xhc3MoIm91dGVyLWJvdHRvbSIpfHxwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYSxoKX0scz1mdW5jdGlvbihhLGIsYyl7dmFyIGU9KGEub3V0ZXJIZWlnaHQoITApLGEub3V0ZXJXaWR0aCghMCkpLGY9ImxheWVyZ3JpZCI9PWIuY29udGFpbmVyPyJjYXJvdXNlbCI9PT1jLnNsaWRlclR5cGU/MDpjLndpZHRoLzItYy5ncmlkd2lkdGhbYy5jdXJXaW5SYW5nZV0qYy5idy8yOjAsZz0ibGVmdCI9PT1iLmhfYWxpZ24/e2xlZnQ6IjBweCIseDpNYXRoLnJvdW5kKGIuaF9vZmZzZXQrZikrInB4In06ImNlbnRlciI9PT1iLmhfYWxpZ24/e2xlZnQ6IjUwJSIseDpNYXRoLnJvdW5kKDAtZS8yK2IuaF9vZmZzZXQpKyJweCJ9OntsZWZ0OiIxMDAlIix4Ok1hdGgucm91bmQoMC0oZStiLmhfb2Zmc2V0K2YpKSsicHgifTtwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYSxnKX0sdD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5jbG9zZXN0KCIudHAtc2ltcGxlcmVzcG9uc2l2ZSIpLmxlbmd0aD4wP2EuY2xvc2VzdCgiLnRwLXNpbXBsZXJlc3BvbnNpdmUiKTphLmNsb3Nlc3QoIi50cC1yZXZzbGlkZXItbWFpbnVsIikubGVuZ3RoPjA/YS5jbG9zZXN0KCIudHAtcmV2c2xpZGVyLW1haW51bCIpOmEuY2xvc2VzdCgiLnJldl9zbGlkZXJfd3JhcHBlciIpLmxlbmd0aD4wP2EuY2xvc2VzdCgiLnJldl9zbGlkZXJfd3JhcHBlciIpOmEucGFyZW50KCkuZmluZCgiLnRwLXJldnNsaWRlci1tYWludWwiKSxlPWQud2lkdGgoKSxmPWQuaGVpZ2h0KCk7aWYocihhLGIsYykscyhhLGIsYyksIm91dGVyLWxlZnQiIT09Yi5wb3NpdGlvbnx8ImZ1bGx3aWR0aCIhPWIuc2xpZGVyTGF5b3V0JiYiZnVsbHNjcmVlbiIhPWIuc2xpZGVyTGF5b3V0PyJvdXRlci1yaWdodCIhPT1iLnBvc2l0aW9ufHwiZnVsbHdpZHRoIiE9Yi5zbGlkZXJMYXlvdXQmJiJmdWxsc2NyZWVuIiE9Yi5zbGlkZXJMYXlvdXR8fHB1bmNoZ3MuVHdlZW5MaXRlLnNldChhLHtyaWdodDowLWEub3V0ZXJXaWR0aCgpKyJweCIseDpiLmhfb2Zmc2V0KyJweCJ9KTpwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYSx7bGVmdDowLWEub3V0ZXJXaWR0aCgpKyJweCIseDpiLmhfb2Zmc2V0KyJweCJ9KSxhLmhhc0NsYXNzKCJ0cC10aHVtYnMiKXx8YS5oYXNDbGFzcygidHAtdGFicyIpKXt2YXIgZz1hLmRhdGEoIndyX3BhZGRpbmciKSxoPWEuZGF0YSgibWF4dyIpLGk9YS5kYXRhKCJtYXhoIiksaj1hLmhhc0NsYXNzKCJ0cC10aHVtYnMiKT9hLmZpbmQoIi50cC10aHVtYi1tYXNrIik6YS5maW5kKCIudHAtdGFiLW1hc2siKSxrPXBhcnNlSW50KGIucGFkZGluZ190b3B8fDAsMCksbD1wYXJzZUludChiLnBhZGRpbmdfYm90dG9tfHwwLDApO2g+ZSYmIm91dGVyLWxlZnQiIT09Yi5wb3NpdGlvbiYmIm91dGVyLXJpZ2h0IiE9PWIucG9zaXRpb24/KHB1bmNoZ3MuVHdlZW5MaXRlLnNldChhLHtsZWZ0OiIwcHgiLHg6MCxtYXhXaWR0aDplLTIqZysicHgifSkscHVuY2hncy5Ud2VlbkxpdGUuc2V0KGose21heFdpZHRoOmUtMipnKyJweCJ9KSk6KHB1bmNoZ3MuVHdlZW5MaXRlLnNldChhLHttYXhXaWR0aDpoKyJweCJ9KSxwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaix7bWF4V2lkdGg6aCsicHgifSkpLGkrMipnPmYmJiJvdXRlci1ib3R0b20iIT09Yi5wb3NpdGlvbiYmIm91dGVyLXRvcCIhPT1iLnBvc2l0aW9uPyhwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYSx7dG9wOiIwcHgiLHk6MCxtYXhIZWlnaHQ6aytsKyhmLTIqZykrInB4In0pLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChqLHttYXhIZWlnaHQ6aytsKyhmLTIqZykrInB4In0pKToocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGEse21heEhlaWdodDppKyJweCJ9KSxwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaix7bWF4SGVpZ2h0OmkrInB4In0pKSwib3V0ZXItbGVmdCIhPT1iLnBvc2l0aW9uJiYib3V0ZXItcmlnaHQiIT09Yi5wb3NpdGlvbiYmKGs9MCxsPTApLGIuc3Bhbj09PSEwJiYidmVydGljYWwiPT09Yi5kaXJlY3Rpb24/KHB1bmNoZ3MuVHdlZW5MaXRlLnNldChhLHttYXhIZWlnaHQ6aytsKyhmLTIqZykrInB4IixoZWlnaHQ6aytsKyhmLTIqZykrInB4Iix0b3A6MC1rLHk6MH0pLHIoaixiLGMpKTpiLnNwYW49PT0hMCYmImhvcml6b250YWwiPT09Yi5kaXJlY3Rpb24mJihwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoYSx7bWF4V2lkdGg6IjEwMCUiLHdpZHRoOmUtMipnKyJweCIsbGVmdDowLHg6MH0pLHMoaixiLGMpKX19LHU9ZnVuY3Rpb24oYSxiLGMsZCl7MD09PWEuZmluZCgiLnRwLWJ1bGxldHMiKS5sZW5ndGgmJihiLnN0eWxlPXZvaWQgMD09PWIuc3R5bGU/IiI6Yi5zdHlsZSxhLmFwcGVuZCgnPGRpdiBjbGFzcz0idHAtYnVsbGV0cyAnK2Iuc3R5bGUrIiAiK2IuZGlyZWN0aW9uKyciPjwvZGl2PicpKTt2YXIgZT1hLmZpbmQoIi50cC1idWxsZXRzIiksZj1jLmRhdGEoImluZGV4IiksZz1iLnRtcDtqUXVlcnkuZWFjaChkLnRodW1ic1tjLmluZGV4KCldLnBhcmFtcyxmdW5jdGlvbihhLGIpe2c9Zy5yZXBsYWNlKGIuZnJvbSxiLnRvKX0pLGUuYXBwZW5kKCc8ZGl2IGNsYXNzPSJqdXN0YWRkZWRidWxsZXQgdHAtYnVsbGV0Ij4nK2crIjwvZGl2PiIpO3ZhciBoPWEuZmluZCgiLmp1c3RhZGRlZGJ1bGxldCIpLGk9YS5maW5kKCIudHAtYnVsbGV0IikubGVuZ3RoLGo9aC5vdXRlcldpZHRoKCkrcGFyc2VJbnQodm9pZCAwPT09Yi5zcGFjZT8wOmIuc3BhY2UsMCksaz1oLm91dGVySGVpZ2h0KCkrcGFyc2VJbnQodm9pZCAwPT09Yi5zcGFjZT8wOmIuc3BhY2UsMCk7InZlcnRpY2FsIj09PWIuZGlyZWN0aW9uPyhoLmNzcyh7dG9wOihpLTEpKmsrInB4IixsZWZ0OiIwcHgifSksZS5jc3Moe2hlaWdodDooaS0xKSprK2gub3V0ZXJIZWlnaHQoKSx3aWR0aDpoLm91dGVyV2lkdGgoKX0pKTooaC5jc3Moe2xlZnQ6KGktMSkqaisicHgiLHRvcDoiMHB4In0pLGUuY3NzKHt3aWR0aDooaS0xKSpqK2gub3V0ZXJXaWR0aCgpLGhlaWdodDpoLm91dGVySGVpZ2h0KCl9KSksaC5maW5kKCIudHAtYnVsbGV0LWltYWdlIikuY3NzKHtiYWNrZ3JvdW5kSW1hZ2U6InVybCgiK2QudGh1bWJzW2MuaW5kZXgoKV0uc3JjKyIpIn0pLGguZGF0YSgibGlyZWYiLGYpLGguY2xpY2soZnVuY3Rpb24oKXtkLnNjX2luZGljYXRvcj0iYnVsbGV0IixhLnJldmNhbGxzbGlkZXdpdGhpZChmKSxhLmZpbmQoIi50cC1idWxsZXQiKS5yZW1vdmVDbGFzcygic2VsZWN0ZWQiKSxqUXVlcnkodGhpcykuYWRkQ2xhc3MoInNlbGVjdGVkIil9KSxoLnJlbW92ZUNsYXNzKCJqdXN0YWRkZWRidWxsZXQiKSxiLnBhZGRpbmdfdG9wPXBhcnNlSW50KGQuY2Fyb3VzZWwucGFkZGluZ190b3B8fDAsMCksYi5wYWRkaW5nX2JvdHRvbT1wYXJzZUludChkLmNhcm91c2VsLnBhZGRpbmdfYm90dG9tfHwwLDApLGIub3B0PWQsIm91dGVyLWxlZnQiIT1iLnBvc2l0aW9uJiYib3V0ZXItcmlnaHQiIT1iLnBvc2l0aW9ufHwoZC5vdXRlcm5hdj0hMCksZS5hZGRDbGFzcygibmF2LXBvcy1ob3ItIitiLmhfYWxpZ24pLGUuYWRkQ2xhc3MoIm5hdi1wb3MtdmVyLSIrYi52X2FsaWduKSxlLmFkZENsYXNzKCJuYXYtZGlyLSIrYi5kaXJlY3Rpb24pLHQoZSxiLGQpfSx2PWZ1bmN0aW9uKGEsYil7Yj1wYXJzZUZsb2F0KGIpLGE9YS5yZXBsYWNlKCIjIiwiIik7dmFyIGM9cGFyc2VJbnQoYS5zdWJzdHJpbmcoMCwyKSwxNiksZD1wYXJzZUludChhLnN1YnN0cmluZygyLDQpLDE2KSxlPXBhcnNlSW50KGEuc3Vic3RyaW5nKDQsNiksMTYpLGY9InJnYmEoIitjKyIsIitkKyIsIitlKyIsIitiKyIpIjtyZXR1cm4gZn0sdz1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSJ0cC10aHVtYiI9PT1kPyIudHAtdGh1bWJzIjoiLnRwLXRhYnMiLGc9InRwLXRodW1iIj09PWQ/Ii50cC10aHVtYi1tYXNrIjoiLnRwLXRhYi1tYXNrIixoPSJ0cC10aHVtYiI9PT1kPyIudHAtdGh1bWJzLWlubmVyLXdyYXBwZXIiOiIudHAtdGFicy1pbm5lci13cmFwcGVyIixpPSJ0cC10aHVtYiI9PT1kPyIudHAtdGh1bWIiOiIudHAtdGFiIixqPSJ0cC10aHVtYiI9PT1kPyIudHAtdGh1bWItaW1hZ2UiOiIudHAtdGFiLWltYWdlIjtpZihiLnZpc2libGVBbW91bnQ9Yi52aXNpYmxlQW1vdW50PmUuc2xpZGVhbW91bnQ/ZS5zbGlkZWFtb3VudDpiLnZpc2libGVBbW91bnQsYi5zbGlkZXJMYXlvdXQ9ZS5zbGlkZXJMYXlvdXQsMD09PWEucGFyZW50KCkuZmluZChmKS5sZW5ndGgpe2Iuc3R5bGU9dm9pZCAwPT09Yi5zdHlsZT8iIjpiLnN0eWxlO3ZhciBrPWIuc3Bhbj09PSEwPyJ0cC1zcGFuLXdyYXBwZXIiOiIiLGw9JzxkaXYgY2xhc3M9IicrZCsicyAiK2srIiAiK2IucG9zaXRpb24rIiAiK2Iuc3R5bGUrJyI+PGRpdiBjbGFzcz0iJytkKyctbWFzayI+PGRpdiBjbGFzcz0iJytkKydzLWlubmVyLXdyYXBwZXIiIHN0eWxlPSJwb3NpdGlvbjpyZWxhdGl2ZTsiPjwvZGl2PjwvZGl2PjwvZGl2Pic7Im91dGVyLXRvcCI9PT1iLnBvc2l0aW9uP2EucGFyZW50KCkucHJlcGVuZChsKToib3V0ZXItYm90dG9tIj09PWIucG9zaXRpb24/YS5hZnRlcihsKTphLmFwcGVuZChsKSxiLnBhZGRpbmdfdG9wPXBhcnNlSW50KGUuY2Fyb3VzZWwucGFkZGluZ190b3B8fDAsMCksYi5wYWRkaW5nX2JvdHRvbT1wYXJzZUludChlLmNhcm91c2VsLnBhZGRpbmdfYm90dG9tfHwwLDApLCJvdXRlci1sZWZ0IiE9Yi5wb3NpdGlvbiYmIm91dGVyLXJpZ2h0IiE9Yi5wb3NpdGlvbnx8KGUub3V0ZXJuYXY9ITApfXZhciBtPWMuZGF0YSgiaW5kZXgiKSxuPWEucGFyZW50KCkuZmluZChmKSxvPW4uZmluZChnKSxwPW8uZmluZChoKSxxPSJob3Jpem9udGFsIj09PWIuZGlyZWN0aW9uP2Iud2lkdGgqYi52aXNpYmxlQW1vdW50K2Iuc3BhY2UqKGIudmlzaWJsZUFtb3VudC0xKTpiLndpZHRoLHI9Imhvcml6b250YWwiPT09Yi5kaXJlY3Rpb24/Yi5oZWlnaHQ6Yi5oZWlnaHQqYi52aXNpYmxlQW1vdW50K2Iuc3BhY2UqKGIudmlzaWJsZUFtb3VudC0xKSxzPWIudG1wO2pRdWVyeS5lYWNoKGUudGh1bWJzW2MuaW5kZXgoKV0ucGFyYW1zLGZ1bmN0aW9uKGEsYil7cz1zLnJlcGxhY2UoYi5mcm9tLGIudG8pfSkscC5hcHBlbmQoJzxkaXYgZGF0YS1saWluZGV4PSInK2MuaW5kZXgoKSsnIiBkYXRhLWxpcmVmPSInK20rJyIgY2xhc3M9Imp1c3RhZGRlZHRodW1iICcrZCsnIiBzdHlsZT0id2lkdGg6JytiLndpZHRoKyJweDtoZWlnaHQ6IitiLmhlaWdodCsncHg7Ij4nK3MrIjwvZGl2PiIpO3ZhciB1PW4uZmluZCgiLmp1c3RhZGRlZHRodW1iIiksdz1uLmZpbmQoaSkubGVuZ3RoLHg9dS5vdXRlcldpZHRoKCkrcGFyc2VJbnQodm9pZCAwPT09Yi5zcGFjZT8wOmIuc3BhY2UsMCkseT11Lm91dGVySGVpZ2h0KCkrcGFyc2VJbnQodm9pZCAwPT09Yi5zcGFjZT8wOmIuc3BhY2UsMCk7dS5maW5kKGopLmNzcyh7YmFja2dyb3VuZEltYWdlOiJ1cmwoIitlLnRodW1ic1tjLmluZGV4KCldLnNyYysiKSJ9KSwidmVydGljYWwiPT09Yi5kaXJlY3Rpb24/KHUuY3NzKHt0b3A6KHctMSkqeSsicHgiLGxlZnQ6IjBweCJ9KSxwLmNzcyh7aGVpZ2h0Oih3LTEpKnkrdS5vdXRlckhlaWdodCgpLHdpZHRoOnUub3V0ZXJXaWR0aCgpfSkpOih1LmNzcyh7bGVmdDoody0xKSp4KyJweCIsdG9wOiIwcHgifSkscC5jc3Moe3dpZHRoOih3LTEpKngrdS5vdXRlcldpZHRoKCksaGVpZ2h0OnUub3V0ZXJIZWlnaHQoKX0pKSxuLmRhdGEoIm1heHciLHEpLG4uZGF0YSgibWF4aCIsciksbi5kYXRhKCJ3cl9wYWRkaW5nIixiLndyYXBwZXJfcGFkZGluZyk7dmFyIHo9Im91dGVyLXRvcCI9PT1iLnBvc2l0aW9ufHwib3V0ZXItYm90dG9tIj09PWIucG9zaXRpb24/InJlbGF0aXZlIjoiYWJzb2x1dGUiOyJvdXRlci10b3AiIT09Yi5wb3NpdGlvbiYmIm91dGVyLWJvdHRvbSIhPT1iLnBvc2l0aW9ufHwiY2VudGVyIiE9PWIuaF9hbGlnbj8iMCI6ImF1dG8iO28uY3NzKHttYXhXaWR0aDpxKyJweCIsbWF4SGVpZ2h0OnIrInB4IixvdmVyZmxvdzoiaGlkZGVuIixwb3NpdGlvbjoicmVsYXRpdmUifSksbi5jc3Moe21heFdpZHRoOnErInB4IixtYXhIZWlnaHQ6cisicHgiLG92ZXJmbG93OiJ2aXNpYmxlIixwb3NpdGlvbjp6LGJhY2tncm91bmQ6dihiLndyYXBwZXJfY29sb3IsYi53cmFwcGVyX29wYWNpdHkpLHBhZGRpbmc6Yi53cmFwcGVyX3BhZGRpbmcrInB4Iixib3hTaXppbmc6ImNvbnRldC1ib3gifSksdS5jbGljayhmdW5jdGlvbigpe2Uuc2NfaW5kaWNhdG9yPSJidWxsZXQiO3ZhciBiPWEucGFyZW50KCkuZmluZChoKS5kYXRhKCJkaXN0YW5jZSIpO2I9dm9pZCAwPT09Yj8wOmIsTWF0aC5hYnMoYik8MTAmJihhLnJldmNhbGxzbGlkZXdpdGhpZChtKSxhLnBhcmVudCgpLmZpbmQoZikucmVtb3ZlQ2xhc3MoInNlbGVjdGVkIiksalF1ZXJ5KHRoaXMpLmFkZENsYXNzKCJzZWxlY3RlZCIpKX0pLHUucmVtb3ZlQ2xhc3MoImp1c3RhZGRlZHRodW1iIiksYi5vcHQ9ZSxuLmFkZENsYXNzKCJuYXYtcG9zLWhvci0iK2IuaF9hbGlnbiksbi5hZGRDbGFzcygibmF2LXBvcy12ZXItIitiLnZfYWxpZ24pLG4uYWRkQ2xhc3MoIm5hdi1kaXItIitiLmRpcmVjdGlvbiksdChuLGIsZSl9LHg9ZnVuY3Rpb24oYSl7dmFyIGI9YS5jLnBhcmVudCgpLmZpbmQoIi5vdXRlci10b3AiKSxjPWEuYy5wYXJlbnQoKS5maW5kKCIub3V0ZXItYm90dG9tIik7YS50b3Bfb3V0ZXI9Yi5oYXNDbGFzcygidHAtZm9yY2Vub3R2aXNpYmxlIik/MDpiLm91dGVySGVpZ2h0KCl8fDAsYS5ib3R0b21fb3V0ZXI9Yy5oYXNDbGFzcygidHAtZm9yY2Vub3R2aXNpYmxlIik/MDpjLm91dGVySGVpZ2h0KCl8fDB9LHk9ZnVuY3Rpb24oYSxiLGMsZCl7Yj5jfHxjPmQ/YS5hZGRDbGFzcygidHAtZm9yY2Vub3R2aXNpYmxlIik6YS5yZW1vdmVDbGFzcygidHAtZm9yY2Vub3R2aXNpYmxlIil9fShqUXVlcnkpOw=="}},"time_used":16534,"timings":{"blocked":15707,"dns":0,"connect":0,"send":0,"wait":827,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/converter-js/stream.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.305Z","timestamp":1785143908305,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/converter-js/stream.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:45 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"cb9-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 1157\r\nKeep-Alive: timeout=5, max=97\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":3257,"size_decoded":1524,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text","md5":"15a5727b27e7155ff3a49529b225388f","sha1":"21ca5b47e10f76176f147e189377dff2f40b9c59","sha256":"fb68484b59a89be00b33d1dd8ab6bdfee5a678acf8f28c90c5273f5678e6c191","sha512":"c0a14a89840a841a01b4ab3c187f057cb78109876f207704aa8a96f2c49f1cfba132b76644830dd58689214c63bfbd19a3cc91908bad1643e4115571f92f7ecb","ssdeep":"","tlshash":"7d619694a9f8211147f730780d9b7600736ae16b891e85887dcc87e04b763add52bff9","first_seen":"2025-03-10T16:31:43.155109Z","last_seen":"2026-08-06T06:09:10.713546Z","times_seen":39,"resource_available":true,"data":"Lyogc3RyZWFtLmpzIAoKICBXZWJTb2NrZXQgZmVlZCBjb25uZWN0aW9uIGFuZCBldmVudCBkaXNwYXRjaGVyLgoKKi8KCi8vIEZlZWQgVVJMCnZhciBVUkwgPSAnd3NzOi8vaW5kZXguYml0Y29pbi5jb20vd3MnCgpmdW5jdGlvbiBTdHJlYW0oKSB7CiAgLy8gUmVnaXN0ZXJlZCBoYW5kbGVycwogIHRoaXMuY2FsbGJhY2tzID0ge30KICAvLyBMYXN0IGRpc3BhdGNoIG1lc3NhZ2UKICB0aGlzLmxhc3QgPSB7fQogIC8vIEtub3duIHN1YnNjcmlwdGlvbnMKICB0aGlzLnN1YnNjcmlwdGlvbnMgPSB7fQogIC8vIFdlYlNvY2tldCBjb25uZWN0aW9uCiAgdGhpcy5zb2NrZXQgPSBudWxsCn0KClN0cmVhbS5wcm90b3R5cGUucmVnaXN0ZXIgPSBmdW5jdGlvbihpdGVtLCBjYikgewogIGlmKCF0aGlzLmNhbGxiYWNrcy5oYXNPd25Qcm9wZXJ0eShpdGVtKSkKICAgIHRoaXMuY2FsbGJhY2tzW2l0ZW1dID0gW10KICBpZih0eXBlb2YgY2IgPT09ICdmdW5jdGlvbicpIHsKICAgIC8vIFN0b3JlIGNhbGxiYWNrIGZ1bmN0aW9uIGFzIGhhbmRsZXIgZm9yICdpdGVtJwogICAgdGhpcy5jYWxsYmFja3NbaXRlbV0ucHVzaChjYikKICAgIC8vIElmIGFuICdpdGVtJyB3YXMgZGlzcGF0Y2hlZCBwcmV2aW91c2x5LCB0cmlnZ2VyIGltbWVkaWF0ZWx5CiAgICBpZih0aGlzLmxhc3RbaXRlbV0pIHsKICAgICAgdHJ5IHsKICAgICAgICBjYih0aGlzLmxhc3RbaXRlbV0pCiAgICAgIH0gY2F0Y2goZSkge30KICAgIH0KICB9Cn0KClN0cmVhbS5wcm90b3R5cGUuc3Vic2NyaWJlID0gZnVuY3Rpb24oY2hhbm5lbCkgewogIC8vIEF2b2lkIGRvdWJsZS1zdWJzY3JpYmUKICBpZih0aGlzLnN1YnNjcmlwdGlvbnNbY2hhbm5lbF0pCiAgICByZXR1cm4KICB0aGlzLmRvU3Vic2NyaWJlKGNoYW5uZWwpCiAgdGhpcy5zdWJzY3JpcHRpb25zW2NoYW5uZWxdID0gKG5ldyBEYXRlKCkpLmdldFRpbWUoKQp9CgpTdHJlYW0ucHJvdG90eXBlLmRvU3Vic2NyaWJlID0gZnVuY3Rpb24oY2hhbm5lbCkgewogIHRyeSB7CiAgICB0aGlzLnNvY2tldC5zZW5kKHRoaXMuc3Vic2NyaWJlTWVzc2FnZShjaGFubmVsKSkKICB9IGNhdGNoKGUpIHt9Cn0KClN0cmVhbS5wcm90b3R5cGUuc3Vic2NyaWJlTWVzc2FnZSA9IGZ1bmN0aW9uKGNoYW5uZWwpIHsKICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoewogICAgb3A6ICdzdWJzY3JpYmUnLAogICAgY2hhbm5lbDogY2hhbm5lbAogIH0pCn0KClN0cmVhbS5wcm90b3R5cGUuZGlzcGF0Y2ggPSBmdW5jdGlvbihpdGVtLCBkYXRhKSB7CiAgLy8gU3RvcmUgdGhpcyBhcyB0aGUgbGFzdCBkaXNwYXRjaCBmb3IgJ2l0ZW0nCiAgdGhpcy5sYXN0W2l0ZW1dID0gZGF0YQogIC8vIENoZWNrIGlmIHRoZXJlIGFyZSBhbnkgY2FsbGJhY2tzIHJlZ2lzdGVyZWQgZm9yICdpdGVtJwogIGlmKCF0aGlzLmNhbGxiYWNrcy5oYXNPd25Qcm9wZXJ0eShpdGVtKSkKICAgIHJldHVybgogIC8vIFRyaWdnZXIgYWxsIGhhbmRsZXJzCiAgZm9yKHZhciBpPTA7IGk8dGhpcy5jYWxsYmFja3NbaXRlbV0ubGVuZ3RoOyBpKyspIHsKICAgIHRyeSB7CiAgICAgIHRoaXMuY2FsbGJhY2tzW2l0ZW1dW2ldKGRhdGEpCiAgICB9IGNhdGNoKGUpIHt9CiAgfQp9CgpTdHJlYW0ucHJvdG90eXBlLmNvbm5lY3QgPSBmdW5jdGlvbigpIHsKICBpZih0aGlzLnNvY2tldCAhPT0gbnVsbCkKICAgIHJldHVybgogIHRyeSB7CiAgICB0aGlzLnNvY2tldCA9IG5ldyBXZWJTb2NrZXQoVVJMKQoKICAgIHRoaXMuc29ja2V0Lm9ub3BlbiA9IHRoaXMub25PcGVuLmJpbmQodGhpcykKICAgIHRoaXMuc29ja2V0Lm9uY2xvc2UgPSB0aGlzLm9uQ2xvc2UuYmluZCh0aGlzKQogICAgdGhpcy5zb2NrZXQub25tZXNzYWdlID0gdGhpcy5vbk1lc3NhZ2UuYmluZCh0aGlzKQogIH0gY2F0Y2goZSkge30KfQoKU3RyZWFtLnByb3RvdHlwZS5yZWNvbm5lY3QgPSBmdW5jdGlvbigpIHsKICB0cnkgewogICAgaWYodGhpcy5zb2NrZXQucmVhZHlTdGF0ZSAhPSBXZWJTb2NrZXQuQ0xPU0VEKQogICAgICB0aGlzLnNvY2tldC5jbG9zZSgpCiAgfSBjYXRjaChlKSB7fQogIHRoaXMuc29ja2V0ID0gbnVsbAogIC8vIEluaXRpYXRlIG5ldyBjb25uZWN0aW9uIGluIDE1LTMwIHNlY29uZHMKICB3aW5kb3cuc2V0VGltZW91dCh0aGlzLmNvbm5lY3QuYmluZCh0aGlzKSwgKDE1ICsgMTUqTWF0aC5yYW5kb20oKSkqMTAwMCkKfQoKU3RyZWFtLnByb3RvdHlwZS5vbk9wZW4gPSBmdW5jdGlvbigpIHsKICAvLyBJZiB3ZSBoYXZlIHN1YnNjcmlwdGlvbnMgYWxyZWFkeSwgc2VuZCB0aG9zZSB0byB0aGUgc2VydmVyCiAgZm9yKHZhciBjaGFuIGluIHRoaXMuc3Vic2NyaXB0aW9ucykgewogICAgaWYoIXRoaXMuc3Vic2NyaXB0aW9uc1tjaGFuXSkKICAgICAgY29udGludWUKICAgIHRoaXMuZG9TdWJzY3JpYmUoY2hhbikKICB9Cn0KClN0cmVhbS5wcm90b3R5cGUub25DbG9zZSA9IGZ1bmN0aW9uKCkgewogIHRoaXMucmVjb25uZWN0KCkKfQoKU3RyZWFtLnByb3RvdHlwZS5vbk1lc3NhZ2UgPSBmdW5jdGlvbihldmVudCkgewogIHRyeSB7CiAgICB2YXIgb2JqID0gSlNPTi5wYXJzZShldmVudC5kYXRhKQogICAgLyogRXhwZWN0IG9iaiB0byBoYXZlIGZvcm0gCiAgICAgIHsKICAgICAgICBvcDogJ29wLXR5cGUnLAogICAgICAgIGRhdGE6IDxzb21lIGRhdGE+CiAgICAgIH0gCiAgICAqLwogICAgaWYob2JqLmhhc093blByb3BlcnR5KCdvcCcpICYmIG9iai5oYXNPd25Qcm9wZXJ0eSgnZGF0YScpKSB7CiAgICAgIHRoaXMuZGlzcGF0Y2gob2JqLm9wLCBvYmouZGF0YSkKICAgIH0KICB9IGNhdGNoKGUpIHt9Cn0KCi8vIFN0YXJ0IHVwIGFuZCBjaGVjayBmb3IgZ2xvYmFsIG9iamVjdAp2YXIgZ2xvYmFsTmFtZSA9ICdCaXRjb2luQ29tU3RyZWFtJwoKaWYoIShnbG9iYWxOYW1lIGluIHdpbmRvdyAmJiB3aW5kb3cuaGFzT3duUHJvcGVydHkoZ2xvYmFsTmFtZSkpKSB7CiAgd2luZG93W2dsb2JhbE5hbWVdID0gbmV3IFN0cmVhbSgpCn0KCmZ1bmN0aW9uIHJlZ2lzdGVyKGl0ZW0sIGNiKSB7CiAgd2luZG93W2dsb2JhbE5hbWVdLnJlZ2lzdGVyKGl0ZW0sIGNiKQogIC8vIE9uIHRoZSBmaXJzdCBjYWxsIHRvIHJlZ2lzdGVyLCB3ZSBjb25uZWN0LiBObyB3YXN0ZWQgY29ubmVjdGlvbiBpZiAKICAvLyBubyBoYW5kbGVycyByZWdpc3RlcmVkCiAgd2luZG93W2dsb2JhbE5hbWVdLmNvbm5lY3QoKQp9CgpmdW5jdGlvbiBzdWJzY3JpYmUoY2hhbm5lbCkgewogIHdpbmRvd1tnbG9iYWxOYW1lXS5zdWJzY3JpYmUoY2hhbm5lbCkKfQo="}},"time_used":17513,"timings":{"blocked":16516,"dns":0,"connect":0,"send":0,"wait":997,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"upload.wikimedia.org/wikipedia/commons/6/6b/WhatsApp.svg","fqdn":"upload.wikimedia.org","domain":"wikimedia.org","tld":"org"},"ip":{"addr":"185.15.59.240","port":443,"asn":14907,"as":"WIKIMEDIA","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.320Z","timestamp":1785143908320,"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":"upload.wikimedia.org","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Fri, 12 Jun 2026 05:24:58 GMT","end":"Thu, 10 Sep 2026 05:24:57 GMT"},"fingerprint":{"sha1":"5B:35:4A:25:C6:4D:17:23:8B:63:A3:F7:CE:52:1B:B7:22:06:BF:1B","sha256":"FE:D1:85:EF:B6:D0:7E:42:4F:F4:62:C9:8C:A3:BA:2C:88:5E:47:EB:9A:03:3D:30:4B:E3:63:FF:11:AD:F6:0D"}}},"request":{"raw":"GET /wikipedia/commons/6/6b/WhatsApp.svg HTTP/1.1\r\nHost: upload.wikimedia.org\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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\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/2 200 \r\ndate: Sun, 26 Jul 2026 10:05:32 GMT\r\nserver: ATS/9.2.13\r\netag: W/4025a2c2826def311c3b73dfa38a9b20\r\ncontent-type: image/svg+xml\r\nx-object-meta-sha1base36: qag4572nwx19x1y7zian641jyclf2pf\r\nlast-modified: Mon, 28 Feb 2022 22:39:04 GMT\r\nx-ratelimit-limit: 10000, 10000;w=1\r\nx-ratelimit-remaining: 9999\r\nx-ratelimit-reset: 1\r\ncontent-encoding: gzip\r\nage: 83594\r\naccept-ranges: bytes\r\nx-cache: cp3077 hit, cp3077 hit/118831\r\nx-cache-status: hit-front\r\nserver-timing: cache;desc=\"hit-front\", host;desc=\"cp3077\"\r\nstrict-transport-security: max-age=106384710; includeSubDomains; preload\r\nreport-to: { \"group\": \"wm_nel\", \"max_age\": 604800, \"endpoints\": [{ \"url\": \"https://intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error\u0026schema_uri=/w3c/reportingapi/network_error/1.0.0\" }] }\r\nnel: { \"report_to\": \"wm_nel\", \"max_age\": 604800, \"failure_fraction\": 0.05, \"success_fraction\": 0.0}\r\nx-client-ip: 195.64.118.152\r\nx-content-type-options: nosniff\r\naccess-control-allow-origin: *\r\naccess-control-expose-headers: Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache\r\ntiming-allow-origin: *\r\nreporting-endpoints: csp_endpoint=\"https://commons.wikimedia.org/w/api.php?reportonly=1\u0026source=image\u0026action=cspreport\u0026format=json\"\r\ncontent-security-policy-report-only: default-src 'none'; script-src 'none'; style-src 'unsafe-inline' data:; font-src data:; img-src data: https://upload.wikimedia.org/favicon.ico; connect-src https://upload.wikimedia.org/favicon.ico; media-src data: 'self'; object-src 'none'; worker-src 'none'; manifest-src 'none'; base-uri 'none'; form-action 'none'; frame-ancestors 'none'; report-uri https://commons.wikimedia.org/w/api.php?reportonly=1\u0026source=image\u0026action=cspreport\u0026format=json; report-to csp_endpoint\r\nset-cookie: WMF-Uniq=gJ8OZZqPtmMl-BSooqR6SQOqAAAAAFvdrTJG096140g4KAnNY6kvfCXNDlN9QKeb;Domain=upload.wikimedia.org;Path=/;HttpOnly;secure;SameSite=None;Expires=Tue, 27 Jul 2027 00:00:00 GMT\r\ncontent-length: 1057\r\nx-request-id: 26a0ec50-6d4e-4509-8bd4-97ab72e0f0f0\r\nx-analytics: \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"]},{"name":"Apache Traffic Server:9.2.13","description":"Apache Traffic Server is an open-source caching and proxying server that serves as an HTTP/1.1 and HTTP/2 reverse proxy with caching capabilities, load balancing, request routing, SSL termination, and support for advanced HTTP features.","website":"https://trafficserver.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:traffic_server:*:*:*:*:*:*:*:*","icon":"Apache Traffic Server.svg","categories":["Web servers"]}],"data":{"size":2501,"size_decoded":3129,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"4025a2c2826def311c3b73dfa38a9b20","sha1":"e110e162c96cb014763e841bad3615da27348073","sha256":"dd6a4db2c394ca11aa8ab087369f2f50a12e6f874e49db7b1d5609d0a8fb28ca","sha512":"a40b02ab07e917b0070c7f1e0587a0f8753e157a218296f9ec2d2e06e273657ab82d831d494de839730546e3473ced9f0516175f755d313189528811bc4f4c60","ssdeep":"","tlshash":"695189e5b7ecf17dd8a787ecca31686c131e159e72278d98c24dee00c492d4d954c8d1","first_seen":"2023-07-13T00:36:46Z","last_seen":"2026-08-11T06:47:18.863895Z","times_seen":2293,"resource_available":false,"data":"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNzUuMjE2IDE3NS41NTIiPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYiIgeDE9Ijg1LjkxNSIgeDI9Ijg2LjUzNSIgeTE9IjMyLjU2NyIgeTI9IjEzNy4wOTIiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiM1N2QxNjMiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMyM2IzM2EiLz48L2xpbmVhckdyYWRpZW50PjxmaWx0ZXIgaWQ9ImEiIHdpZHRoPSIxLjExNSIgaGVpZ2h0PSIxLjExNCIgeD0iLS4wNTciIHk9Ii0uMDU3IiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjMuNTMxIi8+PC9maWx0ZXI+PC9kZWZzPjxwYXRoIGZpbGw9IiNiM2IzYjMiIGQ9Im01NC41MzIgMTM4LjQ1IDIuMjM1IDEuMzI0YzkuMzg3IDUuNTcxIDIwLjE1IDguNTE4IDMxLjEyNiA4LjUyM2guMDIzYzMzLjcwNyAwIDYxLjEzOS0yNy40MjYgNjEuMTUzLTYxLjEzNS4wMDYtMTYuMzM1LTYuMzQ5LTMxLjY5Ni0xNy44OTUtNDMuMjUxQTYwLjc1IDYwLjc1IDAgMCAwIDg3Ljk0IDI1Ljk4M2MtMzMuNzMzIDAtNjEuMTY2IDI3LjQyMy02MS4xNzggNjEuMTNhNjAuOTggNjAuOTggMCAwIDAgOS4zNDkgMzIuNTM1bDEuNDU1IDIuMzEyLTYuMTc5IDIyLjU1OHptLTQwLjgxMSAyMy41NDRMMjQuMTYgMTIzLjg4Yy02LjQzOC0xMS4xNTQtOS44MjUtMjMuODA4LTkuODIxLTM2Ljc3Mi4wMTctNDAuNTU2IDMzLjAyMS03My41NSA3My41NzgtNzMuNTUgMTkuNjgxLjAxIDM4LjE1NCA3LjY2OSA1Mi4wNDcgMjEuNTcyczIxLjUzNyAzMi4zODMgMjEuNTMgNTIuMDM3Yy0uMDE4IDQwLjU1My0zMy4wMjcgNzMuNTUzLTczLjU3OCA3My41NTNoLS4wMzJjLTEyLjMxMy0uMDA1LTI0LjQxMi0zLjA5NC0zNS4xNTktOC45NTR6bTAgMCIgZmlsdGVyPSJ1cmwoI2EpIi8+PHBhdGggZmlsbD0iI2ZmZiIgZD0ibTEyLjk2NiAxNjEuMjM4IDEwLjQzOS0zOC4xMTRhNzMuNDIgNzMuNDIgMCAwIDEtOS44MjEtMzYuNzcyYy4wMTctNDAuNTU2IDMzLjAyMS03My41NSA3My41NzgtNzMuNTUgMTkuNjgxLjAxIDM4LjE1NCA3LjY2OSA1Mi4wNDcgMjEuNTcyczIxLjUzNyAzMi4zODMgMjEuNTMgNTIuMDM3Yy0uMDE4IDQwLjU1My0zMy4wMjcgNzMuNTUzLTczLjU3OCA3My41NTNoLS4wMzJjLTEyLjMxMy0uMDA1LTI0LjQxMi0zLjA5NC0zNS4xNTktOC45NTR6Ii8+PHBhdGggZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudDE3ODApIiBkPSJNODcuMTg0IDI1LjIyN2MtMzMuNzMzIDAtNjEuMTY2IDI3LjQyMy02MS4xNzggNjEuMTNhNjAuOTggNjAuOTggMCAwIDAgOS4zNDkgMzIuNTM1bDEuNDU1IDIuMzEyLTYuMTc5IDIyLjU1OSAyMy4xNDYtNi4wNjkgMi4yMzUgMS4zMjRjOS4zODcgNS41NzEgMjAuMTUgOC41MTggMzEuMTI2IDguNTI0aC4wMjNjMzMuNzA3IDAgNjEuMTQtMjcuNDI2IDYxLjE1My02MS4xMzVhNjAuNzUgNjAuNzUgMCAwIDAtMTcuODk1LTQzLjI1MSA2MC43NSA2MC43NSAwIDAgMC00My4yMzUtMTcuOTI5eiIvPjxwYXRoIGZpbGw9InVybCgjYikiIGQ9Ik04Ny4xODQgMjUuMjI3Yy0zMy43MzMgMC02MS4xNjYgMjcuNDIzLTYxLjE3OCA2MS4xM2E2MC45OCA2MC45OCAwIDAgMCA5LjM0OSAzMi41MzVsMS40NTUgMi4zMTMtNi4xNzkgMjIuNTU4IDIzLjE0Ni02LjA2OSAyLjIzNSAxLjMyNGM5LjM4NyA1LjU3MSAyMC4xNSA4LjUxNyAzMS4xMjYgOC41MjNoLjAyM2MzMy43MDcgMCA2MS4xNC0yNy40MjYgNjEuMTUzLTYxLjEzNWE2MC43NSA2MC43NSAwIDAgMC0xNy44OTUtNDMuMjUxIDYwLjc1IDYwLjc1IDAgMCAwLTQzLjIzNS0xNy45Mjh6Ii8+PHBhdGggZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNNjguNzcyIDU1LjYwM2MtMS4zNzgtMy4wNjEtMi44MjgtMy4xMjMtNC4xMzctMy4xNzZsLTMuNTI0LS4wNDNjLTEuMjI2IDAtMy4yMTguNDYtNC45MDIgMi4zcy02LjQzNSA2LjI4Ny02LjQzNSAxNS4zMzIgNi41ODggMTcuNzg1IDcuNTA2IDE5LjAxMyAxMi43MTggMjAuMzgxIDMxLjQwNSAyNy43NWMxNS41MjkgNi4xMjQgMTguNjg5IDQuOTA2IDIyLjA2MSA0LjZzMTAuODc3LTQuNDQ3IDEyLjQwOC04Ljc0IDEuNTMyLTcuOTcxIDEuMDczLTguNzQtMS42ODUtMS4yMjYtMy41MjUtMi4xNDYtMTAuODc3LTUuMzY3LTEyLjU2Mi01Ljk4MS0yLjkxLS45MTktNC4xMzcuOTIxLTQuNzQ2IDUuOTc5LTUuODE5IDcuMjA2LTIuMTQ0IDEuMzgxLTMuOTg0LjQ2Mi03Ljc2LTIuODYxLTE0Ljc4NC05LjEyNGMtNS40NjUtNC44NzMtOS4xNTQtMTAuODkxLTEwLjIyOC0xMi43M3MtLjExNC0yLjgzNS44MDgtMy43NTFjLjgyNS0uODI0IDEuODM4LTIuMTQ3IDIuNzU5LTMuMjJzMS4yMjQtMS44NCAxLjgzNi0zLjA2NS4zMDctMi4zMDEtLjE1My0zLjIyLTQuMDMyLTEwLjAxMS01LjY2Ni0xMy42NDciLz48L3N2Zz4="}},"time_used":18027,"timings":{"blocked":17948,"dns":0,"connect":18,"send":0,"wait":19,"receive":0,"ssl":42},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/flaticon/Flaticon.woff","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.547Z","timestamp":1785143926547,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/flaticon/Flaticon.woff HTTP/1.1\r\nHost: scromegatrade.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\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/vendors/flaticon/flaticon.css\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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":"HTTP/1.1 200 OK\r\nDate: Mon, 27 Jul 2026 09:18:46 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"29a8-63ccd444b1f00\"\r\nAccept-Ranges: bytes\r\nContent-Length: 10664\r\nVary: User-Agent\r\nKeep-Alive: timeout=5, max=92\r\nConnection: Keep-Alive\r\nContent-Type: font/woff\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":10664,"size_decoded":10982,"mime_type":"font/woff","magic":"Web Open Font Format, TrueType, length 10664, version 0.0","md5":"fe4b25fd03c68efe461af57d390fcab0","sha1":"4c742da39500c7b924ec6b41fe89c0472a785213","sha256":"85334121261242de360579282116719ea81061cc741a74ce3e7787bc8d9e146c","sha512":"f92055c1b2afbaba19db31755dedf700939cf91789da9f99832bd00ef9e8a4318f0795e8010a995882fb5323ba4fc8f0c15d1fc04a3de1990f8a3e44a903cfe2","ssdeep":"192:KyVtEF5YXPyWsa2HMIqud9VMRaRtH+VCyvBGn2O2l6hc8p8QzHsglA3uQY2sHUM:KOtEFCftk7vd99ACWfir1Hl2wlb","tlshash":"0f22bf09bb41e64da152965c58f48fd328f040e841aec5e50901f957129f0b9ff7bee6","first_seen":"2023-11-05T05:29:39Z","last_seen":"2026-08-09T04:41:07.797966Z","times_seen":119,"resource_available":false,"data":"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"}},"time_used":209,"timings":{"blocked":7,"dns":0,"connect":0,"send":0,"wait":202,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.smartsuppchat.com/loader.js?","fqdn":"www.smartsuppchat.com","domain":"smartsuppchat.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.673Z","timestamp":1785143926673,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /loader.js? HTTP/1.1\r\nHost: www.smartsuppchat.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://scromegatrade.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-11T07:57:31.65745Z","times_seen":17832625,"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":"coinlib.io/_next/static/chunks/480cde08b8bfd5ce.js","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"104.21.64.148","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.690Z","timestamp":1785143926690,"http_version":"HTTP/3","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":"coinlib.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Wed, 22 Jul 2026 08:03:31 GMT","end":"Tue, 20 Oct 2026 09:03:20 GMT"},"fingerprint":{"sha1":"C6:CB:55:AC:C8:0C:E7:35:B1:E0:C2:0F:D5:68:9B:BC:7B:3F:A5:90","sha256":"B5:2C:EC:C1:28:4E:9C:F6:B2:A7:13:AE:48:38:B0:FC:D0:88:AC:B9:A1:F2:7A:26:95:B6:31:94:E0:EA:BD:4E"}}},"request":{"raw":"GET /_next/static/chunks/480cde08b8bfd5ce.js HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\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: same-origin\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\naccess-control-allow-origin: *\r\nage: 7110299\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-disposition: inline; filename=\"480cde08b8bfd5ce.js\"\r\ncontent-encoding: br\r\ncontent-security-policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com https://www.google-analytics.com https://static.cloudflareinsights.com https://va.vercel-scripts.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https: http:; font-src 'self'; connect-src 'self' https://yxarttakdttxyamscerx.supabase.co https://*.supabase.co https://www.google-analytics.com https://*.google-analytics.com https://analytics.google.com https://*.analytics.google.com https://cloudflareinsights.com https://*.cloudflareinsights.com https://vitals.vercel-insights.com; base-uri 'self'; form-action 'self'; frame-ancestors 'none'\r\ncontent-type: application/javascript; charset=utf-8\r\ndate: Mon, 27 Jul 2026 09:18:46 GMT\r\netag: W/\"2197ad79def7e68e0db5210279b81a88\"\r\nlast-modified: Tue, 28 Apr 2026 14:50:57 GMT\r\npermissions-policy: camera=(), microphone=(), geolocation=()\r\nreferrer-policy: strict-origin-when-cross-origin\r\nserver: cloudflare\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nx-frame-options: DENY\r\nx-matched-path: /_next/static/chunks/480cde08b8bfd5ce.js\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::m49ll-1777388594165-c9ac0a174814\r\nx-xss-protection: 1; mode=block\r\npriority: u=3,i=?0\r\ncf-cache-status: HIT\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=c0ON3WdOOG4rDgC1fitvYOJZV0lU%2FxqNMGEkwGJXzf2pMIS6aVRXfZTmhPvJtW85Ue6xaqz%2FSh4pWf0xIMl9DlA7%2BinJxxh%2ByjdIZwfqKba7AOkec%2FmbCykYU4Pt\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21a8f05d9170b69-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\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"]},{"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"]},{"name":"Vercel","description":"Vercel is a cloud platform for static frontends and serverless functions.","website":"https://vercel.com","common_platform_enumeration":"","icon":"vercel.svg","categories":["PaaS"]}],"data":{"size":84456,"size_decoded":25530,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (65536), with no line terminators","md5":"2197ad79def7e68e0db5210279b81a88","sha1":"4a9572c96dc4b65a933f8494889a2d78f6bc8b3b","sha256":"0c61a398dcdf9a5d5a6a744855e7d95635c22711ee32b5af4a658fc6035de812","sha512":"1ed4b2613596da63a7fbbb97a8839e5ae8cf7a62d48b3f2818a3d7b510dde3fef57905aa4ce17843dcee71e3b9205f42c8e3b412427bddd975643af58c1b5979","ssdeep":"768:9Nf3ebiEpt8v84l+ayd9ar543m7dGwVBmOJ8SLBlbGJz5RBC8zogjPwNp9WxBbV3:yGY8AJ8pIOCSOvB9GW7H5sZzIxB","tlshash":"8883f8f931d1f88207ab44aac43f0002f32c5d77189e7864a3e5ddea716455da1f2faa","first_seen":"2026-04-28T18:06:46.282063Z","last_seen":"2026-08-11T04:47:30.054673Z","times_seen":2173,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDg1NTk0LChlLHQscik9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlLHQ9ITApe3JldHVybiBlLnBhdGhuYW1lK2Uuc2VhcmNoKyh0P2UuaGFzaDoiIil9T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJjcmVhdGVIcmVmRnJvbVVybCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSksKCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNTQzMjAsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIkhUTUxfTElNSVRFRF9CT1RfVUFfUkUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBufX0pO2xldCBuPS9bXHctXSstR29vZ2xlfEdvb2dsZS1bXHctXSt8Q2hyb21lLUxpZ2h0aG91c2V8U2x1cnB8RHVja0R1Y2tCb3R8YmFpZHVzcGlkZXJ8eWFuZGV4fHNvZ291fGJpdGx5Ym90fHR1bWJscnx2a1NoYXJlfHF1b3JhIGxpbmsgcHJldmlld3xyZWRkaXRib3R8aWFfYXJjaGl2ZXJ8QmluZ2JvdHxCaW5nUHJldmlld3xhcHBsZWJvdHxmYWNlYm9va2V4dGVybmFsaGl0fGZhY2Vib29rY2F0YWxvZ3xUd2l0dGVyYm90fExpbmtlZEluQm90fFNsYWNrYm90fERpc2NvcmRib3R8V2hhdHNBcHB8U2t5cGVVcmlQcmV2aWV3fFlldGl8Z29vZ2xld2VibGlnaHQvaX0sMzQ2NSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17SFRNTF9MSU1JVEVEX0JPVF9VQV9SRTpmdW5jdGlvbigpe3JldHVybiBsLkhUTUxfTElNSVRFRF9CT1RfVUFfUkV9LEhUTUxfTElNSVRFRF9CT1RfVUFfUkVfU1RSSU5HOmZ1bmN0aW9uKCl7cmV0dXJuIG99LGdldEJvdFR5cGU6ZnVuY3Rpb24oKXtyZXR1cm4gc30saXNCb3Q6ZnVuY3Rpb24oKXtyZXR1cm4gY319O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbD1lLnIoNTQzMjApLHU9L0dvb2dsZWJvdCg/IS0pfEdvb2dsZWJvdCQvaSxvPWwuSFRNTF9MSU1JVEVEX0JPVF9VQV9SRS5zb3VyY2U7ZnVuY3Rpb24gaShlKXtyZXR1cm4gbC5IVE1MX0xJTUlURURfQk9UX1VBX1JFLnRlc3QoZSl9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gdS50ZXN0KGUpfHxpKGUpfWZ1bmN0aW9uIHMoZSl7cmV0dXJuIHUudGVzdChlKT8iZG9tIjppKGUpPyJodG1sIjp2b2lkIDB9fSw4NTYxOSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSl7cmV0dXJuIGUuc3RhcnRzV2l0aCgiLyIpP2U6YC8ke2V9YH1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImVuc3VyZUxlYWRpbmdTbGFzaCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSl9LDkyMjI3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtub3JtYWxpemVBcHBQYXRoOmZ1bmN0aW9uKCl7cmV0dXJuIG99LG5vcm1hbGl6ZVJzY1VSTDpmdW5jdGlvbigpe3JldHVybiBpfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig4NTYxOSksdT1lLnIoMjc0NTQpO2Z1bmN0aW9uIG8oZSl7cmV0dXJuKDAsbC5lbnN1cmVMZWFkaW5nU2xhc2gpKGUuc3BsaXQoIi8iKS5yZWR1Y2UoKGUsdCxyLG4pPT4hdHx8KDAsdS5pc0dyb3VwU2VnbWVudCkodCl8fCJAIj09PXRbMF18fCgicGFnZSI9PT10fHwicm91dGUiPT09dCkmJnI9PT1uLmxlbmd0aC0xP2U6YCR7ZX0vJHt0fWAsIiIpKX1mdW5jdGlvbiBpKGUpe3JldHVybiBlLnJlcGxhY2UoL1wucnNjKCR8XD8pLywiJDEiKX19LDU0NjgyLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtJTlRFUkNFUFRJT05fUk9VVEVfTUFSS0VSUzpmdW5jdGlvbigpe3JldHVybiB1fSxleHRyYWN0SW50ZXJjZXB0aW9uUm91dGVJbmZvcm1hdGlvbjpmdW5jdGlvbigpe3JldHVybiBpfSxpc0ludGVyY2VwdGlvblJvdXRlQXBwUGF0aDpmdW5jdGlvbigpe3JldHVybiBvfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig5MjIyNyksdT1bIiguLikoLi4pIiwiKC4pIiwiKC4uKSIsIiguLi4pIl07ZnVuY3Rpb24gbyhlKXtyZXR1cm4gdm9pZCAwIT09ZS5zcGxpdCgiLyIpLmZpbmQoZT0+dS5maW5kKHQ9PmUuc3RhcnRzV2l0aCh0KSkpfWZ1bmN0aW9uIGkoZSl7bGV0IHQscixuO2ZvcihsZXQgYSBvZiBlLnNwbGl0KCIvIikpaWYocj11LmZpbmQoZT0+YS5zdGFydHNXaXRoKGUpKSl7W3Qsbl09ZS5zcGxpdChyLDIpO2JyZWFrfWlmKCF0fHwhcnx8IW4pdGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGBJbnZhbGlkIGludGVyY2VwdGlvbiByb3V0ZTogJHtlfS4gTXVzdCBiZSBpbiB0aGUgZm9ybWF0IC88aW50ZXJjZXB0aW5nIHJvdXRlPi8oLi58Li4ufC4uKSguLikvPGludGVyY2VwdGVkIHJvdXRlPmApLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMjY5IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO3N3aXRjaCh0PSgwLGwubm9ybWFsaXplQXBwUGF0aCkodCkscil7Y2FzZSIoLikiOm49Ii8iPT09dD9gLyR7bn1gOnQrIi8iK247YnJlYWs7Y2FzZSIoLi4pIjppZigiLyI9PT10KXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcihgSW52YWxpZCBpbnRlcmNlcHRpb24gcm91dGU6ICR7ZX0uIENhbm5vdCB1c2UgKC4uKSBtYXJrZXIgYXQgdGhlIHJvb3QgbGV2ZWwsIHVzZSAoLikgaW5zdGVhZC5gKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTIwNyIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtuPXQuc3BsaXQoIi8iKS5zbGljZSgwLC0xKS5jb25jYXQobikuam9pbigiLyIpO2JyZWFrO2Nhc2UiKC4uLikiOm49Ii8iK247YnJlYWs7Y2FzZSIoLi4pKC4uKSI6bGV0IGE9dC5zcGxpdCgiLyIpO2lmKGEubGVuZ3RoPD0yKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcihgSW52YWxpZCBpbnRlcmNlcHRpb24gcm91dGU6ICR7ZX0uIENhbm5vdCB1c2UgKC4uKSguLikgbWFya2VyIGF0IHRoZSByb290IGxldmVsIG9yIG9uZSBsZXZlbCB1cC5gKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTQ4NiIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtuPWEuc2xpY2UoMCwtMikuY29uY2F0KG4pLmpvaW4oIi8iKTticmVhaztkZWZhdWx0OnRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiSW52YXJpYW50OiB1bmV4cGVjdGVkIG1hcmtlciIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMTEyIixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfXJldHVybntpbnRlcmNlcHRpbmdSb3V0ZTp0LGludGVyY2VwdGVkUm91dGU6bn19fSw4OTYxNiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwibWF0Y2hTZWdtZW50Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KTtsZXQgbj0oZSx0KT0+InN0cmluZyI9PXR5cGVvZiBlPyJzdHJpbmciPT10eXBlb2YgdCYmZT09PXQ6InN0cmluZyIhPXR5cGVvZiB0JiZlWzBdPT09dFswXSYmZVsxXT09PXRbMV07KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMTgxNjcsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2NvbXB1dGVDaGFuZ2VkUGF0aDpmdW5jdGlvbigpe3JldHVybiBmfSxleHRyYWN0UGF0aEZyb21GbGlnaHRSb3V0ZXJTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBzfSxnZXRTZWxlY3RlZFBhcmFtczpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiBlKHQscj17fSl7Zm9yKGxldCBuIG9mIE9iamVjdC52YWx1ZXModFsxXSkpe2xldCB0PW5bMF0sYT1BcnJheS5pc0FycmF5KHQpLGw9YT90WzFdOnQ7IWx8fGwuc3RhcnRzV2l0aCh1LlBBR0VfU0VHTUVOVF9LRVkpfHwoYSYmKCJjIj09PXRbMl18fCJvYyI9PT10WzJdKT9yW3RbMF1dPXRbMV0uc3BsaXQoIi8iKTphJiYoclt0WzBdXT10WzFdKSxyPWUobixyKSl9cmV0dXJuIHJ9fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig1NDY4MiksdT1lLnIoMjc0NTQpLG89ZS5yKDg5NjE2KSxpPWU9PiJzdHJpbmciPT10eXBlb2YgZT8iY2hpbGRyZW4iPT09ZT8iIjplOmVbMV07ZnVuY3Rpb24gYyhlKXtyZXR1cm4gZS5yZWR1Y2UoKGUsdCk9PntsZXQgcjtyZXR1cm4iIj09PSh0PSIvIj09PShyPXQpWzBdP3Iuc2xpY2UoMSk6cil8fCgwLHUuaXNHcm91cFNlZ21lbnQpKHQpP2U6YCR7ZX0vJHt0fWB9LCIiKXx8Ii8ifWZ1bmN0aW9uIHMoZSl7bGV0IHQ9QXJyYXkuaXNBcnJheShlWzBdKT9lWzBdWzFdOmVbMF07aWYodD09PXUuREVGQVVMVF9TRUdNRU5UX0tFWXx8bC5JTlRFUkNFUFRJT05fUk9VVEVfTUFSS0VSUy5zb21lKGU9PnQuc3RhcnRzV2l0aChlKSkpcmV0dXJuO2lmKHQuc3RhcnRzV2l0aCh1LlBBR0VfU0VHTUVOVF9LRVkpKXJldHVybiIiO2xldCByPVtpKHQpXSxuPWVbMV0/P3t9LGE9bi5jaGlsZHJlbj9zKG4uY2hpbGRyZW4pOnZvaWQgMDtpZih2b2lkIDAhPT1hKXIucHVzaChhKTtlbHNlIGZvcihsZXRbZSx0XW9mIE9iamVjdC5lbnRyaWVzKG4pKXtpZigiY2hpbGRyZW4iPT09ZSljb250aW51ZTtsZXQgbj1zKHQpO3ZvaWQgMCE9PW4mJnIucHVzaChuKX1yZXR1cm4gYyhyKX1mdW5jdGlvbiBmKGUsdCl7bGV0IHI9ZnVuY3Rpb24gZSh0LHIpe2xldFtuLGFdPXQsW3UsY109cixmPWkobiksZD1pKHUpO2lmKGwuSU5URVJDRVBUSU9OX1JPVVRFX01BUktFUlMuc29tZShlPT5mLnN0YXJ0c1dpdGgoZSl8fGQuc3RhcnRzV2l0aChlKSkpcmV0dXJuIiI7aWYoISgwLG8ubWF0Y2hTZWdtZW50KShuLHUpKXJldHVybiBzKHIpPz8iIjtmb3IobGV0IHQgaW4gYSlpZihjW3RdKXtsZXQgcj1lKGFbdF0sY1t0XSk7aWYobnVsbCE9PXIpcmV0dXJuYCR7aSh1KX0vJHtyfWB9cmV0dXJuIG51bGx9KGUsdCk7cmV0dXJuIG51bGw9PXJ8fCIvIj09PXI/cjpjKHIuc3BsaXQoIi8iKSl9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNjMyNzgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImhhbmRsZU11dGFibGUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBsfX0pO2xldCBuPWUucigxODE2Nyk7ZnVuY3Rpb24gYShlKXtyZXR1cm4gdm9pZCAwIT09ZX1mdW5jdGlvbiBsKGUsdCl7bGV0IHI9dC5zaG91bGRTY3JvbGw/PyEwLGw9ZS5wcmV2aW91c05leHRVcmwsdT1lLm5leHRVcmw7aWYoYSh0LnBhdGNoZWRUcmVlKSl7bGV0IHI9KDAsbi5jb21wdXRlQ2hhbmdlZFBhdGgpKGUudHJlZSx0LnBhdGNoZWRUcmVlKTtyPyhsPXUsdT1yKTp1fHwodT1lLmNhbm9uaWNhbFVybCl9cmV0dXJue2Nhbm9uaWNhbFVybDp0LmNhbm9uaWNhbFVybD8/ZS5jYW5vbmljYWxVcmwscmVuZGVyZWRTZWFyY2g6dC5yZW5kZXJlZFNlYXJjaD8/ZS5yZW5kZXJlZFNlYXJjaCxwdXNoUmVmOntwZW5kaW5nUHVzaDphKHQucGVuZGluZ1B1c2gpP3QucGVuZGluZ1B1c2g6ZS5wdXNoUmVmLnBlbmRpbmdQdXNoLG1wYU5hdmlnYXRpb246YSh0Lm1wYU5hdmlnYXRpb24pP3QubXBhTmF2aWdhdGlvbjplLnB1c2hSZWYubXBhTmF2aWdhdGlvbixwcmVzZXJ2ZUN1c3RvbUhpc3RvcnlTdGF0ZTphKHQucHJlc2VydmVDdXN0b21IaXN0b3J5U3RhdGUpP3QucHJlc2VydmVDdXN0b21IaXN0b3J5U3RhdGU6ZS5wdXNoUmVmLnByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlfSxmb2N1c0FuZFNjcm9sbFJlZjp7YXBwbHk6ISFyJiYoISFhKHQ/LnNjcm9sbGFibGVTZWdtZW50cyl8fGUuZm9jdXNBbmRTY3JvbGxSZWYuYXBwbHkpLG9ubHlIYXNoQ2hhbmdlOnQub25seUhhc2hDaGFuZ2V8fCExLGhhc2hGcmFnbWVudDpyP3QuaGFzaEZyYWdtZW50JiYiIiE9PXQuaGFzaEZyYWdtZW50P2RlY29kZVVSSUNvbXBvbmVudCh0Lmhhc2hGcmFnbWVudC5zbGljZSgxKSk6ZS5mb2N1c0FuZFNjcm9sbFJlZi5oYXNoRnJhZ21lbnQ6bnVsbCxzZWdtZW50UGF0aHM6cj90Py5zY3JvbGxhYmxlU2VnbWVudHM/P2UuZm9jdXNBbmRTY3JvbGxSZWYuc2VnbWVudFBhdGhzOltdfSxjYWNoZTp0LmNhY2hlP3QuY2FjaGU6ZS5jYWNoZSx0cmVlOmEodC5wYXRjaGVkVHJlZSk/dC5wYXRjaGVkVHJlZTplLnRyZWUsbmV4dFVybDp1LHByZXZpb3VzTmV4dFVybDpsLGRlYnVnSW5mbzp0LmNvbGxlY3RlZERlYnVnSW5mbz8/bnVsbH19KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNDYyMTksKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0hFQURfUkVRVUVTVF9LRVk6ZnVuY3Rpb24oKXtyZXR1cm4gb30sUk9PVF9TRUdNRU5UX1JFUVVFU1RfS0VZOmZ1bmN0aW9uKCl7cmV0dXJuIHV9LGFwcGVuZFNlZ21lbnRSZXF1ZXN0S2V5UGFydDpmdW5jdGlvbigpe3JldHVybiBjfSxjb252ZXJ0U2VnbWVudFBhdGhUb1N0YXRpY0V4cG9ydEZpbGVuYW1lOmZ1bmN0aW9uKCl7cmV0dXJuIGR9LGNyZWF0ZVNlZ21lbnRSZXF1ZXN0S2V5UGFydDpmdW5jdGlvbigpe3JldHVybiBpfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucigyNzQ1NCksdT0iIixvPSIvX2hlYWQiO2Z1bmN0aW9uIGkoZSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlLnN0YXJ0c1dpdGgobC5QQUdFX1NFR01FTlRfS0VZKT9sLlBBR0VfU0VHTUVOVF9LRVk6Ii9fbm90LWZvdW5kIj09PWU/Il9ub3QtZm91bmQiOmYoZSk7bGV0IHQ9ZVswXTtyZXR1cm4iJCIrZVsyXSsiJCIrZih0KX1mdW5jdGlvbiBjKGUsdCxyKXtyZXR1cm4gZSsiLyIrKCJjaGlsZHJlbiI9PT10P3I6YEAke2YodCl9LyR7cn1gKX1sZXQgcz0vXlthLXpBLVowLTlcLV9AXSskLztmdW5jdGlvbiBmKGUpe3JldHVybiBzLnRlc3QoZSk/ZToiISIrYnRvYShlKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0rJC8sIiIpfWZ1bmN0aW9uIGQoZSl7cmV0dXJuYF9fbmV4dCR7ZS5yZXBsYWNlKC9cLy9nLCIuIil9LnR4dGB9fSw4ODA2MiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17ZG9lc1N0YXRpY1NlZ21lbnRBcHBlYXJJblVSTDpmdW5jdGlvbigpe3JldHVybiBmfSxnZXRDYWNoZUtleUZvckR5bmFtaWNQYXJhbTpmdW5jdGlvbigpe3JldHVybiBkfSxnZXRQYXJhbVZhbHVlRnJvbUNhY2hlS2V5OmZ1bmN0aW9uKCl7cmV0dXJuIHB9LGdldFJlbmRlcmVkUGF0aG5hbWU6ZnVuY3Rpb24oKXtyZXR1cm4gY30sZ2V0UmVuZGVyZWRTZWFyY2g6ZnVuY3Rpb24oKXtyZXR1cm4gaX0scGFyc2VEeW5hbWljUGFyYW1Gcm9tVVJMUGFydDpmdW5jdGlvbigpe3JldHVybiBzfSx1cmxTZWFyY2hQYXJhbXNUb1BhcnNlZFVybFF1ZXJ5OmZ1bmN0aW9uKCl7cmV0dXJuIHl9LHVybFRvVXJsV2l0aG91dEZsaWdodE1hcmtlcjpmdW5jdGlvbigpe3JldHVybiBofX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucigyNzQ1NCksdT1lLnIoNDYyMTkpLG89ZS5yKDM0NjQxKTtmdW5jdGlvbiBpKGUpe2xldCB0PWUuaGVhZGVycy5nZXQoby5ORVhUX1JFV1JJVFRFTl9RVUVSWV9IRUFERVIpO3JldHVybiBudWxsIT09dD8iIj09PXQ/IiI6Ij8iK3Q6aChuZXcgVVJMKGUudXJsKSkuc2VhcmNofWZ1bmN0aW9uIGMoZSl7cmV0dXJuIGUuaGVhZGVycy5nZXQoby5ORVhUX1JFV1JJVFRFTl9QQVRIX0hFQURFUik/P2gobmV3IFVSTChlLnVybCkpLnBhdGhuYW1lfWZ1bmN0aW9uIHMoZSx0LHIpe3N3aXRjaChlKXtjYXNlImMiOnJldHVybiByPHQubGVuZ3RoP3Quc2xpY2UocikubWFwKGU9PmVuY29kZVVSSUNvbXBvbmVudChlKSk6W107Y2FzZSJjaSguLikoLi4pIjpjYXNlImNpKC4pIjpjYXNlImNpKC4uKSI6Y2FzZSJjaSguLi4pIjp7bGV0IG49ZS5sZW5ndGgtMjtyZXR1cm4gcjx0Lmxlbmd0aD90LnNsaWNlKHIpLm1hcCgoZSx0KT0+MD09PXQ/ZW5jb2RlVVJJQ29tcG9uZW50KGUuc2xpY2UobikpOmVuY29kZVVSSUNvbXBvbmVudChlKSk6W119Y2FzZSJvYyI6cmV0dXJuIHI8dC5sZW5ndGg/dC5zbGljZShyKS5tYXAoZT0+ZW5jb2RlVVJJQ29tcG9uZW50KGUpKTpudWxsO2Nhc2UiZCI6aWYocj49dC5sZW5ndGgpcmV0dXJuIiI7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudCh0W3JdKTtjYXNlImRpKC4uKSguLikiOmNhc2UiZGkoLikiOmNhc2UiZGkoLi4pIjpjYXNlImRpKC4uLikiOntsZXQgbj1lLmxlbmd0aC0yO2lmKHI+PXQubGVuZ3RoKXJldHVybiIiO3JldHVybiBlbmNvZGVVUklDb21wb25lbnQodFtyXS5zbGljZShuKSl9ZGVmYXVsdDpyZXR1cm4iIn19ZnVuY3Rpb24gZihlKXtyZXR1cm4hKGU9PT11LlJPT1RfU0VHTUVOVF9SRVFVRVNUX0tFWXx8ZS5zdGFydHNXaXRoKGwuUEFHRV9TRUdNRU5UX0tFWSl8fCIoIj09PWVbMF0mJmUuZW5kc1dpdGgoIikiKSkmJmUhPT1sLkRFRkFVTFRfU0VHTUVOVF9LRVkmJiIvX25vdC1mb3VuZCIhPT1lfWZ1bmN0aW9uIGQoZSx0KXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/KDAsbC5hZGRTZWFyY2hQYXJhbXNJZlBhZ2VTZWdtZW50KShlLE9iamVjdC5mcm9tRW50cmllcyhuZXcgVVJMU2VhcmNoUGFyYW1zKHQpKSk6bnVsbD09PWU/IiI6ZS5qb2luKCIvIil9ZnVuY3Rpb24gaChlKXtsZXQgdD1uZXcgVVJMKGUpO3JldHVybiB0LnNlYXJjaFBhcmFtcy5kZWxldGUoby5ORVhUX1JTQ19VTklPTl9RVUVSWSksdH1mdW5jdGlvbiBwKGUsdCl7cmV0dXJuImMiPT09dHx8Im9jIj09PXQ/ZS5zcGxpdCgiLyIpOmV9ZnVuY3Rpb24geShlKXtsZXQgdD17fTtmb3IobGV0W3Isbl1vZiBlLmVudHJpZXMoKSl2b2lkIDA9PT10W3JdP3Rbcl09bjpBcnJheS5pc0FycmF5KHRbcl0pP3Rbcl0ucHVzaChuKTp0W3JdPVt0W3JdLG5dO3JldHVybiB0fSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDY3NjI4LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtjcmVhdGVJbml0aWFsUlNDUGF5bG9hZEZyb21GYWxsYmFja1ByZXJlbmRlcjpmdW5jdGlvbigpe3JldHVybiBjfSxnZXRGbGlnaHREYXRhUGFydHNGcm9tUGF0aDpmdW5jdGlvbigpe3JldHVybiBpfSxnZXROZXh0RmxpZ2h0U2VnbWVudFBhdGg6ZnVuY3Rpb24oKXtyZXR1cm4gc30sbm9ybWFsaXplRmxpZ2h0RGF0YTpmdW5jdGlvbigpe3JldHVybiBmfSxwcmVwYXJlRmxpZ2h0Um91dGVyU3RhdGVGb3JSZXF1ZXN0OmZ1bmN0aW9uKCl7cmV0dXJuIGR9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IGw9ZS5yKDI3NDU0KSx1PWUucig4ODA2Miksbz1lLnIoODU1OTQpO2Z1bmN0aW9uIGkoZSl7bGV0W3QscixuLGFdPWUuc2xpY2UoLTQpLGw9ZS5zbGljZSgwLC00KTtyZXR1cm57cGF0aFRvU2VnbWVudDpsLnNsaWNlKDAsLTEpLHNlZ21lbnRQYXRoOmwsc2VnbWVudDpsW2wubGVuZ3RoLTFdPz8iIix0cmVlOnQsc2VlZERhdGE6cixoZWFkOm4saXNIZWFkUGFydGlhbDphLGlzUm9vdFJlbmRlcjo0PT09ZS5sZW5ndGh9fWZ1bmN0aW9uIGMoZSx0KXtsZXQgcj0oMCx1LmdldFJlbmRlcmVkUGF0aG5hbWUpKGUpLG49KDAsdS5nZXRSZW5kZXJlZFNlYXJjaCkoZSksYT0oMCxvLmNyZWF0ZUhyZWZGcm9tVXJsKShuZXcgVVJMKGxvY2F0aW9uLmhyZWYpKSxsPXQuZlswXSxpPWxbMF07cmV0dXJue2I6dC5iLGM6YS5zcGxpdCgiLyIpLHE6bixpOnQuaSxmOltbZnVuY3Rpb24gZSh0LHIsbixhKXtsZXQgbCxvLGk9dFswXTtpZigic3RyaW5nIj09dHlwZW9mIGkpbD1pLG89KDAsdS5kb2VzU3RhdGljU2VnbWVudEFwcGVhckluVVJMKShpKTtlbHNle2xldCBlPWlbMF0sdD1pWzJdLGM9KDAsdS5wYXJzZUR5bmFtaWNQYXJhbUZyb21VUkxQYXJ0KSh0LG4sYSk7bD1bZSwoMCx1LmdldENhY2hlS2V5Rm9yRHluYW1pY1BhcmFtKShjLHIpLHRdLG89ITB9bGV0IGM9bz9hKzE6YSxzPXRbMV0sZj17fTtmb3IobGV0IHQgaW4gcyl7bGV0IGE9c1t0XTtmW3RdPWUoYSxyLG4sYyl9cmV0dXJuW2wsZixudWxsLHRbM10sdFs0XV19KGksbixyLnNwbGl0KCIvIikuZmlsdGVyKGU9PiIiIT09ZSksMCksbFsxXSxsWzJdLGxbMl1dXSxtOnQubSxHOnQuRyxTOnQuU319ZnVuY3Rpb24gcyhlKXtyZXR1cm4gZS5zbGljZSgyKX1mdW5jdGlvbiBmKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZT9lOmUubWFwKGU9PmkoZSkpfWZ1bmN0aW9uIGQoZSx0KXtyZXR1cm4gdD9lbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkoZSkpOmVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShmdW5jdGlvbiBlKHQpe3ZhciByLG47bGV0W2EsdSxvLGksYyxzXT10LGY9InN0cmluZyI9PXR5cGVvZihyPWEpJiZyLnN0YXJ0c1dpdGgobC5QQUdFX1NFR01FTlRfS0VZKyI/Iik/bC5QQUdFX1NFR01FTlRfS0VZOnIsZD17fTtmb3IobGV0W3Qscl1vZiBPYmplY3QuZW50cmllcyh1KSlkW3RdPWUocik7bGV0IGg9W2YsZCxudWxsLChuPWkpJiYicmVmcmVzaCIhPT1uP2k6bnVsbF07cmV0dXJuIHZvaWQgMCE9PWMmJihoWzRdPWMpLHZvaWQgMCE9PXMmJihoWzVdPXMpLGh9KGUpKSl9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNjE3MDYsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e2dldEFwcEJ1aWxkSWQ6ZnVuY3Rpb24oKXtyZXR1cm4gb30sc2V0QXBwQnVpbGRJZDpmdW5jdGlvbigpe3JldHVybiB1fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPSIiO2Z1bmN0aW9uIHUoZSl7bD1lfWZ1bmN0aW9uIG8oKXtyZXR1cm4gbH0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwyNzQxOCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17ZGpiMkhhc2g6ZnVuY3Rpb24oKXtyZXR1cm4gbH0saGV4SGFzaDpmdW5jdGlvbigpe3JldHVybiB1fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2Z1bmN0aW9uIGwoZSl7bGV0IHQ9NTM4MTtmb3IobGV0IHI9MDtyPGUubGVuZ3RoO3IrKyl0PSh0PDw1KSt0K2UuY2hhckNvZGVBdChyKXwwO3JldHVybiB0Pj4+MH1mdW5jdGlvbiB1KGUpe3JldHVybiBsKGUpLnRvU3RyaW5nKDM2KS5zbGljZSgwLDUpfX0sNjg4NDcsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImNvbXB1dGVDYWNoZUJ1c3RpbmdTZWFyY2hQYXJhbSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9fSk7bGV0IG49ZS5yKDI3NDE4KTtmdW5jdGlvbiBhKGUsdCxyLGEpe3JldHVybih2b2lkIDA9PT1lfHwiMCI9PT1lKSYmdm9pZCAwPT09dCYmdm9pZCAwPT09ciYmdm9pZCAwPT09YT8iIjooMCxuLmhleEhhc2gpKFtlfHwiMCIsdHx8IjAiLHJ8fCIwIixhfHwiMCJdLmpvaW4oIiwiKSl9fSw0MTMwMiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17c2V0Q2FjaGVCdXN0aW5nU2VhcmNoUGFyYW06ZnVuY3Rpb24oKXtyZXR1cm4gb30sc2V0Q2FjaGVCdXN0aW5nU2VhcmNoUGFyYW1XaXRoSGFzaDpmdW5jdGlvbigpe3JldHVybiBpfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig2ODg0NyksdT1lLnIoMzQ2NDEpLG89KGUsdCk9PntpKGUsKDAsbC5jb21wdXRlQ2FjaGVCdXN0aW5nU2VhcmNoUGFyYW0pKHRbdS5ORVhUX1JPVVRFUl9QUkVGRVRDSF9IRUFERVJdLHRbdS5ORVhUX1JPVVRFUl9TRUdNRU5UX1BSRUZFVENIX0hFQURFUl0sdFt1Lk5FWFRfUk9VVEVSX1NUQVRFX1RSRUVfSEVBREVSXSx0W3UuTkVYVF9VUkxdKSl9LGk9KGUsdCk9PntsZXQgcj1lLnNlYXJjaCxuPShyLnN0YXJ0c1dpdGgoIj8iKT9yLnNsaWNlKDEpOnIpLnNwbGl0KCImIikuZmlsdGVyKGU9PmUmJiFlLnN0YXJ0c1dpdGgoYCR7dS5ORVhUX1JTQ19VTklPTl9RVUVSWX09YCkpO3QubGVuZ3RoPjA/bi5wdXNoKGAke3UuTkVYVF9SU0NfVU5JT05fUVVFUll9PSR7dH1gKTpuLnB1c2goYCR7dS5ORVhUX1JTQ19VTklPTl9RVUVSWX1gKSxlLnNlYXJjaD1uLmxlbmd0aD9gPyR7bi5qb2luKCImIil9YDoiIn07KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMTEwNiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO2xldCBuO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgYT17Y3JlYXRlRmV0Y2g6ZnVuY3Rpb24oKXtyZXR1cm4gdn0sY3JlYXRlRnJvbU5leHRSZWFkYWJsZVN0cmVhbTpmdW5jdGlvbigpe3JldHVybiBFfSxmZXRjaFNlcnZlclJlc3BvbnNlOmZ1bmN0aW9uKCl7cmV0dXJuIFB9fTtmb3IodmFyIGwgaW4gYSlPYmplY3QuZGVmaW5lUHJvcGVydHkocixsLHtlbnVtZXJhYmxlOiEwLGdldDphW2xdfSk7bGV0IHU9ZS5yKDc1MDQ1KSxvPWUucigzNDY0MSksaT1lLnIoMzA5MzEpLGM9ZS5yKDg5NTk0KSxzPWUucig2NzYyOCksZj1lLnIoNjE3MDYpLGQ9ZS5yKDQxMzAyKSxoPWUucig4ODA2MikscD1lLnIoODg3NzQpLHk9dS5jcmVhdGVGcm9tUmVhZGFibGVTdHJlYW0sZz11LmNyZWF0ZUZyb21GZXRjaDtmdW5jdGlvbiBSKGUpe3JldHVybigwLGgudXJsVG9VcmxXaXRob3V0RmxpZ2h0TWFya2VyKShuZXcgVVJMKGUsbG9jYXRpb24ub3JpZ2luKSkudG9TdHJpbmcoKX1sZXQgXz0hMTthc3luYyBmdW5jdGlvbiBQKGUsdCl7bGV0e2ZsaWdodFJvdXRlclN0YXRlOnIsbmV4dFVybDpufT10LGE9e1tvLlJTQ19IRUFERVJdOiIxIixbby5ORVhUX1JPVVRFUl9TVEFURV9UUkVFX0hFQURFUl06KDAscy5wcmVwYXJlRmxpZ2h0Um91dGVyU3RhdGVGb3JSZXF1ZXN0KShyLHQuaXNIbXJSZWZyZXNoKX07biYmKGFbby5ORVhUX1VSTF09bik7dHJ5e2xldCB0PWF3YWl0IHYoZSxhLCJhdXRvIiwhMCkscj0oMCxoLnVybFRvVXJsV2l0aG91dEZsaWdodE1hcmtlcikobmV3IFVSTCh0LnVybCkpLG49dC5yZWRpcmVjdGVkP3I6ZSxsPXQuaGVhZGVycy5nZXQoImNvbnRlbnQtdHlwZSIpfHwiIix1PSEhdC5oZWFkZXJzLmdldCgidmFyeSIpPy5pbmNsdWRlcyhvLk5FWFRfVVJMKSxpPSEhdC5oZWFkZXJzLmdldChvLk5FWFRfRElEX1BPU1RQT05FX0hFQURFUiksYz10LmhlYWRlcnMuZ2V0KG8uTkVYVF9ST1VURVJfU1RBTEVfVElNRV9IRUFERVIpLGQ9bnVsbCE9PWM/MWUzKnBhcnNlSW50KGMsMTApOi0xO2lmKCFsLnN0YXJ0c1dpdGgoby5SU0NfQ09OVEVOVF9UWVBFX0hFQURFUil8fCF0Lm9rfHwhdC5ib2R5KXJldHVybiBlLmhhc2gmJihyLmhhc2g9ZS5oYXNoKSxSKHIudG9TdHJpbmcoKSk7bGV0IHA9dC5mbGlnaHRSZXNwb25zZTtpZihudWxsPT09cCl7bGV0IGUscj1pPyhlPXQuYm9keS5nZXRSZWFkZXIoKSxuZXcgUmVhZGFibGVTdHJlYW0oe2FzeW5jIHB1bGwodCl7Zm9yKDs7KXtsZXR7ZG9uZTpyLHZhbHVlOm59PWF3YWl0IGUucmVhZCgpO2lmKCFyKXt0LmVucXVldWUobik7Y29udGludWV9cmV0dXJufX19KSk6dC5ib2R5O3A9RShyLGEpfWxldCB5PWF3YWl0IHA7aWYoKDAsZi5nZXRBcHBCdWlsZElkKSgpIT09eS5iKXJldHVybiBSKHQudXJsKTtsZXQgZz0oMCxzLm5vcm1hbGl6ZUZsaWdodERhdGEpKHkuZik7aWYoInN0cmluZyI9PXR5cGVvZiBnKXJldHVybiBSKGcpO3JldHVybntmbGlnaHREYXRhOmcsY2Fub25pY2FsVXJsOm4scmVuZGVyZWRTZWFyY2g6KDAsaC5nZXRSZW5kZXJlZFNlYXJjaCkodCksY291bGRCZUludGVyY2VwdGVkOnUscHJlcmVuZGVyZWQ6eS5TLHBvc3Rwb25lZDppLHN0YWxlVGltZTpkLGRlYnVnSW5mbzpwLl9kZWJ1Z0luZm8/P251bGx9fWNhdGNoKHQpe3JldHVybiBffHxjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gZmV0Y2ggUlNDIHBheWxvYWQgZm9yICR7ZX0uIEZhbGxpbmcgYmFjayB0byBicm93c2VyIG5hdmlnYXRpb24uYCx0KSxlLnRvU3RyaW5nKCl9fWFzeW5jIGZ1bmN0aW9uIHYoZSx0LHIsYSxsKXt2YXIgdSxzO2xldCBmPSgwLHAuZ2V0RGVwbG95bWVudElkKSgpO2YmJih0WyJ4LWRlcGxveW1lbnQtaWQiXT1mKTtsZXQgaD1uZXcgVVJMKGUpOygwLGQuc2V0Q2FjaGVCdXN0aW5nU2VhcmNoUGFyYW0pKGgsdCk7bGV0IHk9ZmV0Y2goaCx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixoZWFkZXJzOnQscHJpb3JpdHk6cnx8dm9pZCAwLHNpZ25hbDpsfSksUj1hPyh1PXkscz10LGcodSx7Y2FsbFNlcnZlcjppLmNhbGxTZXJ2ZXIsZmluZFNvdXJjZU1hcFVSTDpjLmZpbmRTb3VyY2VNYXBVUkwsZGVidWdDaGFubmVsOm4mJm4ocyl9KSk6bnVsbCxfPWF3YWl0IHksUD1fLnJlZGlyZWN0ZWQsdj1uZXcgVVJMKF8udXJsLGgpO3JldHVybiB2LnNlYXJjaFBhcmFtcy5kZWxldGUoby5ORVhUX1JTQ19VTklPTl9RVUVSWSkse3VybDp2LmhyZWYscmVkaXJlY3RlZDpQLG9rOl8ub2ssaGVhZGVyczpfLmhlYWRlcnMsYm9keTpfLmJvZHksc3RhdHVzOl8uc3RhdHVzLGZsaWdodFJlc3BvbnNlOlJ9fWZ1bmN0aW9uIEUoZSx0KXtyZXR1cm4geShlLHtjYWxsU2VydmVyOmkuY2FsbFNlcnZlcixmaW5kU291cmNlTWFwVVJMOmMuZmluZFNvdXJjZU1hcFVSTCxkZWJ1Z0NoYW5uZWw6biYmbih0KX0pfSJ1Ij50eXBlb2Ygd2luZG93JiYod2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBhZ2VoaWRlIiwoKT0+e189ITB9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicGFnZXNob3ciLCgpPT57Xz0hMX0pKSwoImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw1Nzc3OCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiY3JlYXRlUm91dGVyQ2FjaGVLZXkiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPWUucigyNzQ1NCk7ZnVuY3Rpb24gYShlLHQ9ITEpe3JldHVybiBBcnJheS5pc0FycmF5KGUpP2Ake2VbMF19fCR7ZVsxXX18JHtlWzJdfWA6dCYmZS5zdGFydHNXaXRoKG4uUEFHRV9TRUdNRU5UX0tFWSk/bi5QQUdFX1NFR01FTlRfS0VZOmV9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMzczNjgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImlzTmF2aWdhdGluZ1RvTmV3Um9vdExheW91dCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uIGUodCxyKXtsZXQgbj10WzBdLGE9clswXTtpZihBcnJheS5pc0FycmF5KG4pJiZBcnJheS5pc0FycmF5KGEpKXtpZihuWzBdIT09YVswXXx8blsyXSE9PWFbMl0pcmV0dXJuITB9ZWxzZSBpZihuIT09YSlyZXR1cm4hMDtpZih0WzRdKXJldHVybiFyWzRdO2lmKHJbNF0pcmV0dXJuITA7bGV0IGw9T2JqZWN0LnZhbHVlcyh0WzFdKVswXSx1PU9iamVjdC52YWx1ZXMoclsxXSlbMF07cmV0dXJuIWx8fCF1fHxlKGwsdSl9fX0pLCgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDE4OTM5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuLGE9e0ZyZXNobmVzc1BvbGljeTpmdW5jdGlvbigpe3JldHVybiBnfSxjcmVhdGVJbml0aWFsQ2FjaGVOb2RlRm9ySHlkcmF0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIF99LGlzRGVmZXJyZWRSc2M6ZnVuY3Rpb24oKXtyZXR1cm4gTn0sc3Bhd25EeW5hbWljUmVxdWVzdHM6ZnVuY3Rpb24oKXtyZXR1cm4gan0sc3RhcnRQUFJOYXZpZ2F0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIFB9fTtmb3IodmFyIGwgaW4gYSlPYmplY3QuZGVmaW5lUHJvcGVydHkocixsLHtlbnVtZXJhYmxlOiEwLGdldDphW2xdfSk7bGV0IHU9ZS5yKDI3NDU0KSxvPWUucig4OTYxNiksaT1lLnIoODU1OTQpLGM9ZS5yKDU3Nzc4KSxzPWUucigxMTA2KSxmPWUucig5NDg3OSksZD1lLnIoNTk0MzApLGg9ZS5yKDM3MzY4KSxwPWUucig1NDAxMSkseT1lLnIoNjU0NjMpO3ZhciBnPSgobj17fSlbbi5EZWZhdWx0PTBdPSJEZWZhdWx0IixuW24uSHlkcmF0aW9uPTFdPSJIeWRyYXRpb24iLG5bbi5IaXN0b3J5VHJhdmVyc2FsPTJdPSJIaXN0b3J5VHJhdmVyc2FsIixuW24uUmVmcmVzaEFsbD0zXT0iUmVmcmVzaEFsbCIsbltuLkhNUlJlZnJlc2g9NF09IkhNUlJlZnJlc2giLG4pO2xldCBSPSgpPT57fTtmdW5jdGlvbiBfKGUsdCxyLG4pe3JldHVybiB2KGUsdCx2b2lkIDAsMSxyLG4sbnVsbCxudWxsLCExLG51bGwsbnVsbCwhMSx7c2Nyb2xsYWJsZVNlZ21lbnRzOm51bGwsc2VwYXJhdGVSZWZyZXNoVXJsczpudWxsfSkubm9kZX1mdW5jdGlvbiBQKGUsdCxyLG4sYSxsLHMsZixkLHAseSxnLFIpe3JldHVybiBmdW5jdGlvbiBlKHQscixuLGEsbCxzLGYsZCxwLHksZyxSLF8sUCxPLGosTSxBKXt2YXIgVSxDO2xldCBOLHcsRixJPWFbMF0sTD1sWzBdO2lmKCEoMCxvLm1hdGNoU2VnbWVudCkoTCxJKSlyZXR1cm4hZiYmKDAsaC5pc05hdmlnYXRpbmdUb05ld1Jvb3RMYXlvdXQpKGEsbCl8fEw9PT11Lk5PVF9GT1VORF9TRUdNRU5UX0tFWXx8bnVsbD09PVB8fG51bGw9PT1PP251bGw6dih0LGwsbixzLGQscCx5LGcsUixQLE8saixBKTtsZXQgRD1udWxsIT09TyYmbnVsbCE9PVA/UC5jb25jYXQoW08sTF0pOltdLHg9bFsxXSxrPWFbMV0sSD1udWxsIT09ZD9kWzFdOm51bGwsQj1udWxsIT09eT95WzFdOm51bGwsSz0hMD09PWxbNF0sVj1mfHxLLHE9dm9pZCAwIT09bj9uLnBhcmFsbGVsUm91dGVzOnZvaWQgMCxHPSExLHo9ITE7c3dpdGNoKHMpe2Nhc2UgMDpjYXNlIDI6Y2FzZSAxOkc9ITEsej0hMTticmVhaztjYXNlIDM6Y2FzZSA0Okc9ITAsej0hMH1sZXQgWD1uZXcgTWFwKEc/dm9pZCAwOnEpLFc9MD09PU9iamVjdC5rZXlzKHgpLmxlbmd0aDtpZih2b2lkIDA9PT1ufHx6fHxXJiZfKWlmKG51bGwhPT1kJiZudWxsIT09ZFswXSl7bGV0IGU9ZFswXSxyPWRbMl0sbj1udWxsPT09cDt3PVMoZSxyLCExLHAsbixXLFgsdCksRj1XJiZufWVsc2UgaWYobnVsbCE9PXkpe2xldCBlPXlbMF0scj15WzJdLG49eVszXTt3PVMoZSxyLG4sZyxSLFcsWCx0KSxGPW58fFcmJlJ9ZWxzZSB3PVQoWCxXLHQscyksRj0hMDtlbHNlIHc9YighMSxuLFgpLEY9ITE7bGV0IFk9bFsyXSwkPSJzdHJpbmciPT10eXBlb2YgWSYmInJlZnJlc2giPT09bFszXT9ZOk07RiYmbnVsbCE9PSQmJihVPUEsQz0kLG51bGw9PT0oTj1VLnNlcGFyYXRlUmVmcmVzaFVybHMpP1Uuc2VwYXJhdGVSZWZyZXNoVXJscz1uZXcgU2V0KFtDXSk6Ti5hZGQoQykpO2xldCBRPXt9LEo9bnVsbCxaPSExLGVlPXt9O2ZvcihsZXQgbiBpbiB4KXtsZXQgYT14W25dLGw9a1tuXTtpZih2b2lkIDA9PT1sKXJldHVybiBudWxsO2xldCBvPXZvaWQgMCE9PXE/cS5nZXQobik6dm9pZCAwLGY9bnVsbCE9PUg/SFtuXTpudWxsLGQ9bnVsbCE9PUI/QltuXTpudWxsLGg9YVswXSx5PXAsUD1nLHY9UjsyIT09cyYmaD09PXUuREVGQVVMVF9TRUdNRU5UX0tFWSYmKGg9KGE9ZnVuY3Rpb24oZSx0KXtsZXQgcjtyZXR1cm4icmVmcmVzaCI9PT10WzNdP3I9dDooKHI9RSh0LHRbMV0pKVsyXT0oMCxpLmNyZWF0ZUhyZWZGcm9tVXJsKShlKSxyWzNdPSJyZWZyZXNoIikscn0ocixsKSlbMF0sZj1udWxsLHk9bnVsbCxkPW51bGwsUD1udWxsLHY9ITEpO2xldCBtPSgwLGMuY3JlYXRlUm91dGVyQ2FjaGVLZXkpKGgpLGI9ZSh0LHIsdm9pZCAwIT09bz9vLmdldChtKTp2b2lkIDAsbCxhLHMsVixmPz9udWxsLHksZD8/bnVsbCxQLHYsXyxELG4sanx8RiwkLEEpO2lmKG51bGw9PT1iKXJldHVybiBudWxsO251bGw9PT1KJiYoSj1uZXcgTWFwKSxKLnNldChuLGIpO2xldCBTPWIubm9kZTtpZihudWxsIT09Uyl7bGV0IGU9bmV3IE1hcChHP3ZvaWQgMDpvKTtlLnNldChtLFMpLFguc2V0KG4sZSl9bGV0IFQ9Yi5yb3V0ZTtRW25dPVQ7bGV0IE89Yi5keW5hbWljUmVxdWVzdFRyZWU7bnVsbCE9PU8/KFo9ITAsZWVbbl09Tyk6ZWVbbl09VH1yZXR1cm57c3RhdHVzOishRixyb3V0ZTpFKGwsUSksbm9kZTp3LGR5bmFtaWNSZXF1ZXN0VHJlZTptKGwsZWUsRixaLGopLHJlZnJlc2hVcmw6JCxjaGlsZHJlbjpKfX0oZSx0LG51bGwhPT1yP3I6dm9pZCAwLG4sYSxsLCExLHMsZixkLHAseSxnLG51bGwsbnVsbCwhMSxudWxsLFIpfWZ1bmN0aW9uIHYoZSx0LHIsbixhLGwsdSxvLGkscyxmLGQsaCl7bGV0IHksZyxSPXRbMF0sXz1udWxsIT09ZiYmbnVsbCE9PXM/cy5jb25jYXQoW2YsUl0pOltdLFA9dFsxXSxPPW51bGwhPT11P3VbMV06bnVsbCxqPW51bGwhPT1hP2FbMV06bnVsbCxNPXZvaWQgMCE9PXI/ci5wYXJhbGxlbFJvdXRlczp2b2lkIDAsQT0hMSxVPSExLEM9ITE7c3dpdGNoKG4pe2Nhc2UgMDpBPSExLFU9dm9pZCAwPT09cnx8ZS1yLm5hdmlnYXRlZEF0Pj1wLkRZTkFNSUNfU1RBTEVUSU1FX01TLEM9ITE7YnJlYWs7Y2FzZSAxOlU9ITEsQT0hMSxDPSExO2JyZWFrO2Nhc2UgMjppZihVPSExLFU9ITEsdm9pZCAwIT09cil7bGV0IGU9ci5yc2M7Qz0hTihlKXx8InBlbmRpbmciIT09ZS5zdGF0dXN9ZWxzZSBDPSExO2JyZWFrO2Nhc2UgMzpjYXNlIDQ6VT0hMCxBPSEwLEM9ITF9bGV0IHc9bmV3IE1hcChBP3ZvaWQgMDpNKSxGPTA9PT1PYmplY3Qua2V5cyhQKS5sZW5ndGg7aWYoRiYmKG51bGw9PT1oLnNjcm9sbGFibGVTZWdtZW50cyYmKGguc2Nyb2xsYWJsZVNlZ21lbnRzPVtdKSxoLnNjcm9sbGFibGVTZWdtZW50cy5wdXNoKF8pKSxVfHx2b2lkIDA9PT1yKWlmKG51bGwhPT1hJiZudWxsIT09YVswXSl7bGV0IHQ9YVswXSxyPWFbMl0sdT1udWxsPT09bCYmMSE9PW47eT1TKHQsciwhMSxsLHUsRix3LGUpLGc9RiYmdX1lbHNlIGlmKDE9PT1uJiZGJiZudWxsIT09bCl5PVMobnVsbCxudWxsLCExLGwsITEsRix3LGUpLGc9ITE7ZWxzZSBpZigxIT09biYmbnVsbCE9PXUpe2xldCB0PXVbMF0scj11WzJdLG49dVszXTt5PVModCxyLG4sbyxpLEYsdyxlKSxnPW58fEYmJml9ZWxzZSB5PVQodyxGLGUsbiksZz0hMDtlbHNlIHk9YihDLHIsdyksZz0hMTtsZXQgST17fSxMPW51bGwsRD0hMSx4PXt9O2ZvcihsZXQgdCBpbiBQKXtsZXQgcj1QW3RdLGE9dm9pZCAwIT09TT9NLmdldCh0KTp2b2lkIDAsdT1udWxsIT09aj9qW3RdOm51bGwscz1udWxsIT09Tz9PW3RdOm51bGwsZj1yWzBdLHA9KDAsYy5jcmVhdGVSb3V0ZXJDYWNoZUtleSkoZikseT12KGUscix2b2lkIDAhPT1hP2EuZ2V0KHApOnZvaWQgMCxuLHU/P251bGwsbCxzPz9udWxsLG8saSxfLHQsZHx8ZyxoKTtudWxsPT09TCYmKEw9bmV3IE1hcCksTC5zZXQodCx5KTtsZXQgUj15Lm5vZGU7aWYobnVsbCE9PVIpe2xldCBlPW5ldyBNYXAoQT92b2lkIDA6YSk7ZS5zZXQocCxSKSx3LnNldCh0LGUpfWxldCBFPXkucm91dGU7SVt0XT1FO2xldCBtPXkuZHluYW1pY1JlcXVlc3RUcmVlO251bGwhPT1tPyhEPSEwLHhbdF09bSk6eFt0XT1FfXJldHVybntzdGF0dXM6KyFnLHJvdXRlOkUodCxJKSxub2RlOnksZHluYW1pY1JlcXVlc3RUcmVlOm0odCx4LGcsRCxkKSxyZWZyZXNoVXJsOm51bGwsY2hpbGRyZW46TH19ZnVuY3Rpb24gRShlLHQpe2xldCByPVtlWzBdLHRdO3JldHVybiAyIGluIGUmJihyWzJdPWVbMl0pLDMgaW4gZSYmKHJbM109ZVszXSksNCBpbiBlJiYocls0XT1lWzRdKSxyfWZ1bmN0aW9uIG0oZSx0LHIsbixhKXtsZXQgbD1udWxsO3JldHVybiByPyhsPUUoZSx0KSxhfHwobFszXT0icmVmZXRjaCIpKTpsPW4/RShlLHQpOm51bGwsbH1mdW5jdGlvbiBiKGUsdCxyKXtyZXR1cm57cnNjOnQucnNjLHByZWZldGNoUnNjOmU/bnVsbDp0LnByZWZldGNoUnNjLGhlYWQ6dC5oZWFkLHByZWZldGNoSGVhZDplP251bGw6dC5wcmVmZXRjaEhlYWQsbG9hZGluZzp0LmxvYWRpbmcscGFyYWxsZWxSb3V0ZXM6cixuYXZpZ2F0ZWRBdDp0Lm5hdmlnYXRlZEF0fX1mdW5jdGlvbiBTKGUsdCxyLG4sYSxsLHUsbyl7bGV0IGksYyxzLGY7cmV0dXJuIHI/KGM9ZSxpPXcoKSk6KGM9bnVsbCxpPWUpLGw/YT8ocz1uLGY9dygpKToocz1udWxsLGY9bik6KHM9bnVsbCxmPW51bGwpLHtyc2M6aSxwcmVmZXRjaFJzYzpjLGhlYWQ6ZixwcmVmZXRjaEhlYWQ6cyxsb2FkaW5nOnQscGFyYWxsZWxSb3V0ZXM6dSxuYXZpZ2F0ZWRBdDpvfX1mdW5jdGlvbiBUKGUsdCxyLG4pe2xldCBhPTE9PT1uO3JldHVybntyc2M6YT9udWxsOncoKSxwcmVmZXRjaFJzYzpudWxsLGhlYWQ6IWEmJnQ/dygpOm51bGwscHJlZmV0Y2hIZWFkOm51bGwsbG9hZGluZzphP251bGw6dygpLHBhcmFsbGVsUm91dGVzOmUsbmF2aWdhdGVkQXQ6cn19bGV0IE89ITE7ZnVuY3Rpb24gaihlLHQscixuLGEpe2xldCBsPWUuZHluYW1pY1JlcXVlc3RUcmVlO2lmKG51bGw9PT1sKXtPPSExO3JldHVybn1sZXQgdT1VKGUsbCx0LHIsbiksbz1hLnNlcGFyYXRlUmVmcmVzaFVybHMsYz1udWxsO2lmKG51bGwhPT1vKXtjPVtdO2xldCBhPSgwLGkuY3JlYXRlSHJlZkZyb21VcmwpKHQpO2ZvcihsZXQgdCBvZiBvKXQhPT1hJiZudWxsIT09bCYmYy5wdXNoKFUoZSxsLG5ldyBVUkwodCxsb2NhdGlvbi5vcmlnaW4pLHIsbikpfU0oZSxyLHUsYykudGhlbihSLFIpfWFzeW5jIGZ1bmN0aW9uIE0oZSx0LHIsbil7dmFyIGEsbDtsZXQgdT1hd2FpdCAoYT1yLGw9bixuZXcgUHJvbWlzZShlPT57bGV0IHQ9dD0+ezA9PT10LmV4aXRTdGF0dXM/MD09LS1uJiZlKDApOmUodC5leGl0U3RhdHVzKX0scj0oKT0+ZSgyKSxuPTE7YS50aGVuKHQsciksbnVsbCE9PWwmJihuKz1sLmxlbmd0aCxsLmZvckVhY2goZT0+ZS50aGVuKHQscikpKX0pKTtzd2l0Y2goMD09PXUmJih1PWZ1bmN0aW9uIGUodCxyLG4pe3ZhciBhLGwsdTtsZXQgbyxpLGMsczswPT09dC5zdGF0dXM/KHQuc3RhdHVzPTIsYT10Lm5vZGUsbD1yLHU9bixOKGk9YS5yc2MpJiYobnVsbD09PWw/aS5yZXNvbHZlKG51bGwsdSk6aS5yZWplY3QobCx1KSksTihjPWEubG9hZGluZykmJmMucmVzb2x2ZShudWxsLHUpLE4ocz1hLmhlYWQpJiZzLnJlc29sdmUobnVsbCx1KSxvPW51bGw9PT10LnJlZnJlc2hVcmw/MToyKTpvPTA7bGV0IGY9dC5jaGlsZHJlbjtpZihudWxsIT09Zilmb3IobGV0Wyx0XW9mIGYpe2xldCBhPWUodCxyLG4pO2E+byYmKG89YSl9cmV0dXJuIG99KGUsbnVsbCxudWxsKSksdSl7Y2FzZSAwOk89ITE7cmV0dXJuO2Nhc2UgMTp7bGV0IG49YXdhaXQgcjtBKCExLG4udXJsLHQsbi5zZWVkLGUucm91dGUpO3JldHVybn1jYXNlIDI6e2xldCBuPWF3YWl0IHI7QSghMCxuLnVybCx0LG4uc2VlZCxlLnJvdXRlKTtyZXR1cm59ZGVmYXVsdDpyZXR1cm4gdX19ZnVuY3Rpb24gQShlLHQscixuLGEpe2U9ZXx8TyxPPSEwO2xldCBsPXt0eXBlOmQuQUNUSU9OX1NFUlZFUl9QQVRDSCxwcmV2aW91c1RyZWU6YSx1cmw6dCxuZXh0VXJsOnIsc2VlZDpuLG1wYTplfTsoMCxmLmRpc3BhdGNoQXBwUm91dGVyQWN0aW9uKShsKX1hc3luYyBmdW5jdGlvbiBVKGUsdCxyLG4sYSl7dHJ5e2xldCBsPWF3YWl0ICgwLHMuZmV0Y2hTZXJ2ZXJSZXNwb25zZSkocix7ZmxpZ2h0Um91dGVyU3RhdGU6dCxuZXh0VXJsOm4saXNIbXJSZWZyZXNoOjQ9PT1hfSk7aWYoInN0cmluZyI9PXR5cGVvZiBsKXJldHVybntleGl0U3RhdHVzOjIsdXJsOm5ldyBVUkwobCxsb2NhdGlvbi5vcmlnaW4pLHNlZWQ6bnVsbH07bGV0IHU9KDAseS5jb252ZXJ0U2VydmVyUGF0Y2hUb0Z1bGxUcmVlKShlLnJvdXRlLGwuZmxpZ2h0RGF0YSxsLnJlbmRlcmVkU2VhcmNoKTtyZXR1cm57ZXhpdFN0YXR1czorISFmdW5jdGlvbiBlKHQscixuLGEsbCl7MD09PXQuc3RhdHVzJiZudWxsIT09biYmKHQuc3RhdHVzPTEsZnVuY3Rpb24oZSx0LHIsbil7bGV0IGE9ZS5yc2MsbD10WzBdO2lmKG51bGw9PT1sKXJldHVybjtudWxsPT09YT9lLnJzYz1sOk4oYSkmJmEucmVzb2x2ZShsLG4pO2xldCB1PWUubG9hZGluZztpZihOKHUpKXtsZXQgZT10WzJdO3UucmVzb2x2ZShlLG4pfWxldCBvPWUuaGVhZDtOKG8pJiZvLnJlc29sdmUocixuKX0odC5ub2RlLG4sYSxsKSk7bGV0IHU9dC5jaGlsZHJlbixpPXJbMV0sYz1udWxsIT09bj9uWzFdOm51bGwscz0hMTtpZihudWxsIT09dSlmb3IobGV0IHQgaW4gaSl7bGV0IHI9aVt0XSxuPW51bGwhPT1jP2NbdF06bnVsbCxmPXUuZ2V0KHQpO2lmKHZvaWQgMD09PWYpcz0hMDtlbHNle2xldCB0PWYucm91dGVbMF07KDAsby5tYXRjaFNlZ21lbnQpKHJbMF0sdCkmJm51bGwhPW4mJmUoZixyLG4sYSxsKSYmKHM9ITApfX1yZXR1cm4gc30oZSx1LnRyZWUsdS5kYXRhLHUuaGVhZCxsLmRlYnVnSW5mbyksdXJsOm5ldyBVUkwobC5jYW5vbmljYWxVcmwsbG9jYXRpb24ub3JpZ2luKSxzZWVkOnV9fWNhdGNoe3JldHVybntleGl0U3RhdHVzOjIsdXJsOnIsc2VlZDpudWxsfX19bGV0IEM9U3ltYm9sKCk7ZnVuY3Rpb24gTihlKXtyZXR1cm4gZSYmIm9iamVjdCI9PXR5cGVvZiBlJiZlLnRhZz09PUN9ZnVuY3Rpb24gdygpe2xldCBlLHQscj1bXSxuPW5ldyBQcm9taXNlKChyLG4pPT57ZT1yLHQ9bn0pO3JldHVybiBuLnN0YXR1cz0icGVuZGluZyIsbi5yZXNvbHZlPSh0LGEpPT57InBlbmRpbmciPT09bi5zdGF0dXMmJihuLnN0YXR1cz0iZnVsZmlsbGVkIixuLnZhbHVlPXQsbnVsbCE9PWEmJnIucHVzaC5hcHBseShyLGEpLGUodCkpfSxuLnJlamVjdD0oZSxhKT0+eyJwZW5kaW5nIj09PW4uc3RhdHVzJiYobi5zdGF0dXM9InJlamVjdGVkIixuLnJlYXNvbj1lLG51bGwhPT1hJiZyLnB1c2guYXBwbHkocixhKSx0KGUpKX0sbi50YWc9QyxuLl9kZWJ1Z0luZm89cixufSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDI0NDU3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJIYXNMb2FkaW5nQm91bmRhcnkiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO3ZhciBuLGE9KChuPXt9KVtuLlNlZ21lbnRIYXNMb2FkaW5nQm91bmRhcnk9MV09IlNlZ21lbnRIYXNMb2FkaW5nQm91bmRhcnkiLG5bbi5TdWJ0cmVlSGFzTG9hZGluZ0JvdW5kYXJ5PTJdPSJTdWJ0cmVlSGFzTG9hZGluZ0JvdW5kYXJ5IixuW24uU3VidHJlZUhhc05vTG9hZGluZ0JvdW5kYXJ5PTNdPSJTdWJ0cmVlSGFzTm9Mb2FkaW5nQm91bmRhcnkiLG4pfSw1MjQxMywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbixhLGwsdT17RmV0Y2hTdHJhdGVneTpmdW5jdGlvbigpe3JldHVybiBzfSxOYXZpZ2F0aW9uUmVzdWx0VGFnOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LFByZWZldGNoUHJpb3JpdHk6ZnVuY3Rpb24oKXtyZXR1cm4gY319O2Zvcih2YXIgbyBpbiB1KU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLG8se2VudW1lcmFibGU6ITAsZ2V0OnVbb119KTt2YXIgaT0oKG49e30pW24uTVBBPTBdPSJNUEEiLG5bbi5TdWNjZXNzPTFdPSJTdWNjZXNzIixuW24uTm9PcD0yXT0iTm9PcCIsbltuLkFzeW5jPTNdPSJBc3luYyIsbiksYz0oKGE9e30pW2EuSW50ZW50PTJdPSJJbnRlbnQiLGFbYS5EZWZhdWx0PTFdPSJEZWZhdWx0IixhW2EuQmFja2dyb3VuZD0wXT0iQmFja2dyb3VuZCIsYSkscz0oKGw9e30pW2wuTG9hZGluZ0JvdW5kYXJ5PTBdPSJMb2FkaW5nQm91bmRhcnkiLGxbbC5QUFI9MV09IlBQUiIsbFtsLlBQUlJ1bnRpbWU9Ml09IlBQUlJ1bnRpbWUiLGxbbC5GdWxsPTNdPSJGdWxsIixsKTsoImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw0MTg1MiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17ZGVsZXRlRnJvbUxydTpmdW5jdGlvbigpe3JldHVybiBmfSxscnVQdXQ6ZnVuY3Rpb24oKXtyZXR1cm4gY30sdXBkYXRlTHJ1U2l6ZTpmdW5jdGlvbigpe3JldHVybiBzfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig3NTc0NSksdT1udWxsLG89ITEsaT0wO2Z1bmN0aW9uIGMoZSl7aWYodT09PWUpcmV0dXJuO2xldCB0PWUucHJldixyPWUubmV4dDtpZihudWxsPT09cnx8bnVsbD09PXQ/KGkrPWUuc2l6ZSxkKCkpOih0Lm5leHQ9cixyLnByZXY9dCksbnVsbD09PXUpZS5wcmV2PWUsZS5uZXh0PWU7ZWxzZXtsZXQgdD11LnByZXY7ZS5wcmV2PXQsbnVsbCE9PXQmJih0Lm5leHQ9ZSksZS5uZXh0PXUsdS5wcmV2PWV9dT1lfWZ1bmN0aW9uIHMoZSx0KXtsZXQgcj1lLnNpemU7ZS5zaXplPXQsbnVsbCE9PWUubmV4dCYmKGk9aS1yK3QsZCgpKX1mdW5jdGlvbiBmKGUpe2xldCB0PWUubmV4dCxyPWUucHJldjtudWxsIT09dCYmbnVsbCE9PXImJihpLT1lLnNpemUsZS5uZXh0PW51bGwsZS5wcmV2PW51bGwsdT09PWU/dD09PXU/dT1udWxsOih1PXQsci5uZXh0PXQsdC5wcmV2PXIpOihyLm5leHQ9dCx0LnByZXY9cikpfWZ1bmN0aW9uIGQoKXtvfHxpPD0weDMyMDAwMDB8fChvPSEwLHAoaCkpfWZ1bmN0aW9uIGgoKXtvPSExO2Zvcig7aT4weDJkMDAwMDAmJm51bGwhPT11Oyl7bGV0IGU9dS5wcmV2O251bGwhPT1lJiYoMCxsLmRlbGV0ZU1hcEVudHJ5KShlKX19bGV0IHA9ImZ1bmN0aW9uIj09dHlwZW9mIHJlcXVlc3RJZGxlQ2FsbGJhY2s/cmVxdWVzdElkbGVDYWxsYmFjazplPT5zZXRUaW1lb3V0KGUsMCk7KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNzU3NDUsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0ZhbGxiYWNrOmZ1bmN0aW9uKCl7cmV0dXJuIHV9LGNyZWF0ZUNhY2hlTWFwOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LGRlbGV0ZUZyb21DYWNoZU1hcDpmdW5jdGlvbigpe3JldHVybiBofSxkZWxldGVNYXBFbnRyeTpmdW5jdGlvbigpe3JldHVybiBwfSxnZXRGcm9tQ2FjaGVNYXA6ZnVuY3Rpb24oKXtyZXR1cm4gY30saXNWYWx1ZUV4cGlyZWQ6ZnVuY3Rpb24oKXtyZXR1cm4gc30sc2V0SW5DYWNoZU1hcDpmdW5jdGlvbigpe3JldHVybiBmfSxzZXRTaXplSW5DYWNoZU1hcDpmdW5jdGlvbigpe3JldHVybiB5fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig0MTg1MiksdT17fSxvPXt9O2Z1bmN0aW9uIGkoKXtyZXR1cm57cGFyZW50Om51bGwsa2V5Om51bGwsdmFsdWU6bnVsbCxtYXA6bnVsbCxwcmV2Om51bGwsbmV4dDpudWxsLHNpemU6MH19ZnVuY3Rpb24gYyhlLHQscixuLGEpe2xldCBpPWZ1bmN0aW9uIGUodCxyLG4sYSxsLGkpe2xldCBjLGY7aWYobnVsbCE9PWEpYz1hLnZhbHVlLGY9YS5wYXJlbnQ7ZWxzZSBpZihsJiZpIT09byljPW8sZj1udWxsO2Vsc2UgcmV0dXJuIG51bGw9PT1uLnZhbHVlP246cyh0LHIsbi52YWx1ZSk/KHAobiksbnVsbCk6bjtsZXQgZD1uLm1hcDtpZihudWxsIT09ZCl7bGV0IG49ZC5nZXQoYyk7aWYodm9pZCAwIT09bil7bGV0IGE9ZSh0LHIsbixmLGwsYyk7aWYobnVsbCE9PWEpcmV0dXJuIGF9bGV0IGE9ZC5nZXQodSk7aWYodm9pZCAwIT09YSlyZXR1cm4gZSh0LHIsYSxmLGwsYyl9cmV0dXJuIG51bGx9KGUsdCxyLG4sYSwwKTtyZXR1cm4gbnVsbD09PWl8fG51bGw9PT1pLnZhbHVlP251bGw6KCgwLGwubHJ1UHV0KShpKSxpLnZhbHVlKX1mdW5jdGlvbiBzKGUsdCxyKXtyZXR1cm4gci5zdGFsZUF0PD1lfHxyLnZlcnNpb248dH1mdW5jdGlvbiBmKGUsdCxyLG4pe2xldCBhPWZ1bmN0aW9uKGUsdCxyKXtsZXQgbj1lLGE9dCxsPW51bGw7Zm9yKDs7KXtsZXQgZT1sO2lmKG51bGwhPT1hKWw9YS52YWx1ZSxhPWEucGFyZW50O2Vsc2UgaWYociYmZSE9PW8pe2lmKG51bGw9PT1uLnZhbHVlKXJldHVybiBuO2w9b31lbHNlIGJyZWFrO2xldCB0PW4ubWFwO2lmKG51bGwhPT10KXtsZXQgZT10LmdldChsKTtpZih2b2lkIDAhPT1lKXtuPWU7Y29udGludWV9fWVsc2UgdD1uZXcgTWFwLG4ubWFwPXQ7bGV0IHU9e3BhcmVudDpuLGtleTpsLHZhbHVlOm51bGwsbWFwOm51bGwscHJldjpudWxsLG5leHQ6bnVsbCxzaXplOjB9O3Quc2V0KGwsdSksbj11fXJldHVybiBufShlLHQsbik7ZChhLHIpLCgwLGwubHJ1UHV0KShhKSwoMCxsLnVwZGF0ZUxydVNpemUpKGEsci5zaXplKX1mdW5jdGlvbiBkKGUsdCl7bnVsbCE9PWUudmFsdWUmJihlLnZhbHVlLnJlZj1udWxsLGUudmFsdWU9bnVsbCk7bGV0IHI9dC5yZWY7ZS52YWx1ZT10LHQucmVmPWUsKDAsbC51cGRhdGVMcnVTaXplKShlLHQuc2l6ZSksbnVsbCE9PXImJnIhPT1lJiZyLnZhbHVlPT09dCYmcChyKX1mdW5jdGlvbiBoKGUpe2xldCB0PWUucmVmO251bGwhPT10JiYoZS5yZWY9bnVsbCxwKHQpKX1mdW5jdGlvbiBwKGUpe2UudmFsdWU9bnVsbCwoMCxsLmRlbGV0ZUZyb21McnUpKGUpO2xldCB0PWUubWFwO2lmKG51bGw9PT10KXtsZXQgdD1lLnBhcmVudCxyPWUua2V5O2Zvcig7bnVsbCE9PXQ7KXtsZXQgZT10Lm1hcDtpZihudWxsIT09ZSYmKGUuZGVsZXRlKHIpLDA9PT1lLnNpemUpJiYodC5tYXA9bnVsbCxudWxsPT09dC52YWx1ZSkpe3I9dC5rZXksdD10LnBhcmVudDtjb250aW51ZX1icmVha319ZWxzZXtsZXQgcj10LmdldChvKTt2b2lkIDAhPT1yJiZudWxsIT09ci52YWx1ZSYmZChlLHIudmFsdWUpfX1mdW5jdGlvbiB5KGUsdCl7bGV0IHI9ZS5yZWY7bnVsbCE9PXImJihlLnNpemU9dCwoMCxsLnVwZGF0ZUxydVNpemUpKHIsdCkpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDY1ODkzLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXthcHBlbmRMYXlvdXRWYXJ5UGF0aDpmdW5jdGlvbigpe3JldHVybiBzfSxjbG9uZVBhZ2VWYXJ5UGF0aFdpdGhOZXdTZWFyY2hQYXJhbXM6ZnVuY3Rpb24oKXtyZXR1cm4geX0sZmluYWxpemVMYXlvdXRWYXJ5UGF0aDpmdW5jdGlvbigpe3JldHVybiBmfSxmaW5hbGl6ZU1ldGFkYXRhVmFyeVBhdGg6ZnVuY3Rpb24oKXtyZXR1cm4gaH0sZmluYWxpemVQYWdlVmFyeVBhdGg6ZnVuY3Rpb24oKXtyZXR1cm4gZH0sZ2V0RnVsZmlsbGVkUm91dGVWYXJ5UGF0aDpmdW5jdGlvbigpe3JldHVybiBjfSxnZXRSb3V0ZVZhcnlQYXRoOmZ1bmN0aW9uKCl7cmV0dXJuIGl9LGdldFNlZ21lbnRWYXJ5UGF0aEZvclJlcXVlc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gcH19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbD1lLnIoNTI0MTMpLHU9ZS5yKDc1NzQ1KSxvPWUucig0NjIxOSk7ZnVuY3Rpb24gaShlLHQscil7cmV0dXJue3ZhbHVlOmUscGFyZW50Ont2YWx1ZTp0LHBhcmVudDp7dmFsdWU6cixwYXJlbnQ6bnVsbH19fX1mdW5jdGlvbiBjKGUsdCxyLG4pe3JldHVybnt2YWx1ZTplLHBhcmVudDp7dmFsdWU6dCxwYXJlbnQ6e3ZhbHVlOm4/cjp1LkZhbGxiYWNrLHBhcmVudDpudWxsfX19fWZ1bmN0aW9uIHMoZSx0KXtyZXR1cm57dmFsdWU6dCxwYXJlbnQ6ZX19ZnVuY3Rpb24gZihlLHQpe3JldHVybnt2YWx1ZTplLHBhcmVudDp0fX1mdW5jdGlvbiBkKGUsdCxyKXtyZXR1cm57dmFsdWU6ZSxwYXJlbnQ6e3ZhbHVlOnQscGFyZW50OnJ9fX1mdW5jdGlvbiBoKGUsdCxyKXtyZXR1cm57dmFsdWU6ZStvLkhFQURfUkVRVUVTVF9LRVkscGFyZW50Ont2YWx1ZTp0LHBhcmVudDpyfX19ZnVuY3Rpb24gcChlLHQpe2xldCByPXQudmFyeVBhdGg7aWYodC5pc1BhZ2UmJmUhPT1sLkZldGNoU3RyYXRlZ3kuRnVsbCYmZSE9PWwuRmV0Y2hTdHJhdGVneS5QUFJSdW50aW1lKXtsZXQgZT1yLnBhcmVudC5wYXJlbnQ7cmV0dXJue3ZhbHVlOnIudmFsdWUscGFyZW50Ont2YWx1ZTp1LkZhbGxiYWNrLHBhcmVudDplfX19cmV0dXJuIHJ9ZnVuY3Rpb24geShlLHQpe2xldCByPWUucGFyZW50O3JldHVybnt2YWx1ZTplLnZhbHVlLHBhcmVudDp7dmFsdWU6dCxwYXJlbnQ6ci5wYXJlbnR9fX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwxNjMxNiwoZSx0LHIpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSx0KXtsZXQgcj1uZXcgVVJMKGUpO3JldHVybntwYXRobmFtZTpyLnBhdGhuYW1lLHNlYXJjaDpyLnNlYXJjaCxuZXh0VXJsOnR9fU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiY3JlYXRlQ2FjaGVLZXkiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBufX0pLCgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDc1NzgwLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtjYW5jZWxQcmVmZXRjaFRhc2s6ZnVuY3Rpb24oKXtyZXR1cm4gRX0saXNQcmVmZXRjaFRhc2tEaXJ0eTpmdW5jdGlvbigpe3JldHVybiBifSxwaW5nUHJlZmV0Y2hUYXNrOmZ1bmN0aW9uKCl7cmV0dXJuIEF9LHJlc2NoZWR1bGVQcmVmZXRjaFRhc2s6ZnVuY3Rpb24oKXtyZXR1cm4gbX0sc2NoZWR1bGVQcmVmZXRjaFRhc2s6ZnVuY3Rpb24oKXtyZXR1cm4gdn0sc3RhcnRSZXZhbGlkYXRpb25Db29sZG93bjpmdW5jdGlvbigpe3JldHVybiBQfX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucigyNDQ1NyksdT1lLnIoODk2MTYpLG89ZS5yKDQ0NjY3KSxpPWUucig2NTg5MyksYz1lLnIoMTYzMTYpLHM9ZS5yKDUyNDEzKSxmPWUucigyNzQ1NCksZD0iZnVuY3Rpb24iPT10eXBlb2YgcXVldWVNaWNyb3Rhc2s/cXVldWVNaWNyb3Rhc2s6ZT0+UHJvbWlzZS5yZXNvbHZlKCkudGhlbihlKS5jYXRjaChlPT5zZXRUaW1lb3V0KCgpPT57dGhyb3cgZX0pKSxoPVtdLHA9MCx5PTAsZz0hMSxSPW51bGwsXz1udWxsO2Z1bmN0aW9uIFAoKXtudWxsIT09XyYmY2xlYXJUaW1lb3V0KF8pLF89c2V0VGltZW91dCgoKT0+e189bnVsbCxUKCl9LDMwMCl9ZnVuY3Rpb24gdihlLHQscixuLGEpe2xldCBsPXtrZXk6ZSx0cmVlQXRUaW1lT2ZQcmVmZXRjaDp0LGNhY2hlVmVyc2lvbjooMCxvLmdldEN1cnJlbnRDYWNoZVZlcnNpb24pKCkscHJpb3JpdHk6bixwaGFzZToxLGhhc0JhY2tncm91bmRXb3JrOiExLHNwYXduZWRSdW50aW1lUHJlZmV0Y2hlczpudWxsLGZldGNoU3RyYXRlZ3k6cixzb3J0SWQ6eSsrLGlzQ2FuY2VsZWQ6ITEsb25JbnZhbGlkYXRlOmEsX2hlYXBJbmRleDotMX07cmV0dXJuIFMobCksQihoLGwpLFQoKSxsfWZ1bmN0aW9uIEUoZSl7ZS5pc0NhbmNlbGVkPSEwLGZ1bmN0aW9uKGUsdCl7bGV0IHI9dC5faGVhcEluZGV4O2lmKC0xIT09ciYmKHQuX2hlYXBJbmRleD0tMSwwIT09ZS5sZW5ndGgpKXtsZXQgbj1lLnBvcCgpO24hPT10JiYoZVtyXT1uLG4uX2hlYXBJbmRleD1yLHooZSxuLHIpKX19KGgsZSl9ZnVuY3Rpb24gbShlLHQscixuKXtlLmlzQ2FuY2VsZWQ9ITEsZS5waGFzZT0xLGUuc29ydElkPXkrKyxlLnByaW9yaXR5PWU9PT1SP3MuUHJlZmV0Y2hQcmlvcml0eS5JbnRlbnQ6bixlLnRyZWVBdFRpbWVPZlByZWZldGNoPXQsZS5mZXRjaFN0cmF0ZWd5PXIsUyhlKSwtMSE9PWUuX2hlYXBJbmRleD9xKGgsZSk6QihoLGUpLFQoKX1mdW5jdGlvbiBiKGUsdCxyKXtsZXQgbj0oMCxvLmdldEN1cnJlbnRDYWNoZVZlcnNpb24pKCk7cmV0dXJuIGUuY2FjaGVWZXJzaW9uIT09bnx8ZS50cmVlQXRUaW1lT2ZQcmVmZXRjaCE9PXJ8fGUua2V5Lm5leHRVcmwhPT10fWZ1bmN0aW9uIFMoZSl7ZS5wcmlvcml0eT09PXMuUHJlZmV0Y2hQcmlvcml0eS5JbnRlbnQmJmUhPT1SJiYobnVsbCE9PVImJlIucHJpb3JpdHkhPT1zLlByZWZldGNoUHJpb3JpdHkuQmFja2dyb3VuZCYmKFIucHJpb3JpdHk9cy5QcmVmZXRjaFByaW9yaXR5LkRlZmF1bHQscShoLFIpKSxSPWUpfWZ1bmN0aW9uIFQoKXtnfHwoZz0hMCxkKFUpKX1mdW5jdGlvbiBPKGUpe3JldHVybiBudWxsPT09XyYmKGUucHJpb3JpdHk9PT1zLlByZWZldGNoUHJpb3JpdHkuSW50ZW50P3A8MTI6cDw0KX1mdW5jdGlvbiBqKGUpe3JldHVybiBwKyssZS50aGVuKGU9Pm51bGw9PT1lPyhNKCksbnVsbCk6KGUuY2xvc2VkLnRoZW4oTSksZS52YWx1ZSkpfWZ1bmN0aW9uIE0oKXtwLS0sVCgpfWZ1bmN0aW9uIEEoZSl7ZS5pc0NhbmNlbGVkfHwtMSE9PWUuX2hlYXBJbmRleHx8KEIoaCxlKSxUKCkpfWZ1bmN0aW9uIFUoKXtnPSExO2xldCBlPURhdGUubm93KCksdD1LKGgpO2Zvcig7bnVsbCE9PXQmJk8odCk7KXt0LmNhY2hlVmVyc2lvbj0oMCxvLmdldEN1cnJlbnRDYWNoZVZlcnNpb24pKCk7bGV0IHI9ZnVuY3Rpb24oZSx0KXtsZXQgcj10LmtleSxuPSgwLG8ucmVhZE9yQ3JlYXRlUm91dGVDYWNoZUVudHJ5KShlLHQsciksYT1mdW5jdGlvbihlLHQscil7c3dpdGNoKHIuc3RhdHVzKXtjYXNlIG8uRW50cnlTdGF0dXMuRW1wdHk6aigoMCxvLmZldGNoUm91dGVPbkNhY2hlTWlzcykocix0LHQua2V5KSksci5zdGFsZUF0PWUrNmU0LHIuc3RhdHVzPW8uRW50cnlTdGF0dXMuUGVuZGluZztjYXNlIG8uRW50cnlTdGF0dXMuUGVuZGluZzp7bGV0IGU9ci5ibG9ja2VkVGFza3M7cmV0dXJuIG51bGw9PT1lP3IuYmxvY2tlZFRhc2tzPW5ldyBTZXQoW3RdKTplLmFkZCh0KSwxfWNhc2Ugby5FbnRyeVN0YXR1cy5SZWplY3RlZDpicmVhaztjYXNlIG8uRW50cnlTdGF0dXMuRnVsZmlsbGVkOntpZigwIT09dC5waGFzZSlyZXR1cm4gMjtpZighTyh0KSlyZXR1cm4gMDtsZXQgaT1yLnRyZWUsYz10LmZldGNoU3RyYXRlZ3k9PT1zLkZldGNoU3RyYXRlZ3kuUFBSP3IuaXNQUFJFbmFibGVkP3MuRmV0Y2hTdHJhdGVneS5QUFI6cy5GZXRjaFN0cmF0ZWd5LkxvYWRpbmdCb3VuZGFyeTp0LmZldGNoU3RyYXRlZ3k7c3dpdGNoKGMpe2Nhc2Ugcy5GZXRjaFN0cmF0ZWd5LlBQUjp7dmFyIG4sYSx1O2lmKEYobj1lLGE9dCx1PXIsKDAsby5yZWFkT3JDcmVhdGVTZWdtZW50Q2FjaGVFbnRyeSkobixzLkZldGNoU3RyYXRlZ3kuUFBSLHUsdS5tZXRhZGF0YSksYS5rZXksdS5tZXRhZGF0YSksMD09PWZ1bmN0aW9uIGUodCxyLG4sYSxsKXtsZXQgdT0oMCxvLnJlYWRPckNyZWF0ZVNlZ21lbnRDYWNoZUVudHJ5KSh0LHIuZmV0Y2hTdHJhdGVneSxuLGwpO0YodCxyLG4sdSxyLmtleSxsKTtsZXQgaT1hWzFdLGM9bC5zbG90cztpZihudWxsIT09Yylmb3IobGV0IGEgaW4gYyl7aWYoIU8ocikpcmV0dXJuIDA7bGV0IGw9Y1thXSx1PWwuc2VnbWVudCxzPWlbYV0sZj1zPy5bMF07aWYoMD09PSh2b2lkIDAhPT1mJiZrKG4sdSxmKT9lKHQscixuLHMsbCk6ZnVuY3Rpb24gZSh0LHIsbixhKXtpZihhLmhhc1J1bnRpbWVQcmVmZXRjaClyZXR1cm4gbnVsbD09PXIuc3Bhd25lZFJ1bnRpbWVQcmVmZXRjaGVzP3Iuc3Bhd25lZFJ1bnRpbWVQcmVmZXRjaGVzPW5ldyBTZXQoW2EucmVxdWVzdEtleV0pOnIuc3Bhd25lZFJ1bnRpbWVQcmVmZXRjaGVzLmFkZChhLnJlcXVlc3RLZXkpLDI7bGV0IGw9KDAsby5yZWFkT3JDcmVhdGVTZWdtZW50Q2FjaGVFbnRyeSkodCxyLmZldGNoU3RyYXRlZ3ksbixhKTtpZihGKHQscixuLGwsci5rZXksYSksbnVsbCE9PWEuc2xvdHMpe2lmKCFPKHIpKXJldHVybiAwO2ZvcihsZXQgbCBpbiBhLnNsb3RzKWlmKDA9PT1lKHQscixuLGEuc2xvdHNbbF0pKXJldHVybiAwfXJldHVybiAyfSh0LHIsbixsKSkpcmV0dXJuIDB9cmV0dXJuIDJ9KGUsdCxyLHQudHJlZUF0VGltZU9mUHJlZmV0Y2gsaSkpcmV0dXJuIDA7bGV0IGw9dC5zcGF3bmVkUnVudGltZVByZWZldGNoZXM7aWYobnVsbCE9PWwpe2xldCBuPW5ldyBNYXA7TihlLHQscixuLHMuRmV0Y2hTdHJhdGVneS5QUFJSdW50aW1lKTtsZXQgYT1mdW5jdGlvbiBlKHQscixuLGEsbCx1KXtpZihsLmhhcyhhLnJlcXVlc3RLZXkpKXJldHVybiB3KHQscixuLGEsITEsdSxzLkZldGNoU3RyYXRlZ3kuUFBSUnVudGltZSk7bGV0IG89e30saT1hLnNsb3RzO2lmKG51bGwhPT1pKWZvcihsZXQgYSBpbiBpKXtsZXQgYz1pW2FdO29bYV09ZSh0LHIsbixjLGwsdSl9cmV0dXJuW2Euc2VnbWVudCxvLG51bGwsbnVsbF19KGUsdCxyLGksbCxuKTtuLnNpemU+MCYmaigoMCxvLmZldGNoU2VnbWVudFByZWZldGNoZXNVc2luZ0R5bmFtaWNSZXF1ZXN0KSh0LHIscy5GZXRjaFN0cmF0ZWd5LlBQUlJ1bnRpbWUsYSxuKSl9cmV0dXJuIDJ9Y2FzZSBzLkZldGNoU3RyYXRlZ3kuRnVsbDpjYXNlIHMuRmV0Y2hTdHJhdGVneS5QUFJSdW50aW1lOmNhc2Ugcy5GZXRjaFN0cmF0ZWd5LkxvYWRpbmdCb3VuZGFyeTp7bGV0IG49bmV3IE1hcDtOKGUsdCxyLG4sYyk7bGV0IGE9ZnVuY3Rpb24gZSh0LHIsbixhLHUsaSxjKXtsZXQgZj1hWzFdLGQ9dS5zbG90cyxoPXt9O2lmKG51bGwhPT1kKWZvcihsZXQgYSBpbiBkKXtsZXQgdT1kW2FdLHA9dS5zZWdtZW50LHk9ZlthXSxnPXk/LlswXTtpZih2b2lkIDAhPT1nJiZrKG4scCxnKSl7bGV0IGw9ZSh0LHIsbix5LHUsaSxjKTtoW2FdPWx9ZWxzZSBzd2l0Y2goYyl7Y2FzZSBzLkZldGNoU3RyYXRlZ3kuTG9hZGluZ0JvdW5kYXJ5OntsZXQgZT11Lmhhc0xvYWRpbmdCb3VuZGFyeSE9PWwuSGFzTG9hZGluZ0JvdW5kYXJ5LlN1YnRyZWVIYXNOb0xvYWRpbmdCb3VuZGFyeT9mdW5jdGlvbiBlKHQscixuLGEsdSxpKXtsZXQgYz1udWxsPT09dT8iaW5zaWRlLXNoYXJlZC1sYXlvdXQiOm51bGwsZj0oMCxvLnJlYWRPckNyZWF0ZVNlZ21lbnRDYWNoZUVudHJ5KSh0LHIuZmV0Y2hTdHJhdGVneSxuLGEpO3N3aXRjaChmLnN0YXR1cyl7Y2FzZSBvLkVudHJ5U3RhdHVzLkVtcHR5Omkuc2V0KGEucmVxdWVzdEtleSwoMCxvLnVwZ3JhZGVUb1BlbmRpbmdTZWdtZW50KShmLHMuRmV0Y2hTdHJhdGVneS5Mb2FkaW5nQm91bmRhcnkpKSwicmVmZXRjaCIhPT11JiYoYz11PSJyZWZldGNoIik7YnJlYWs7Y2FzZSBvLkVudHJ5U3RhdHVzLkZ1bGZpbGxlZDppZihhLmhhc0xvYWRpbmdCb3VuZGFyeT09PWwuSGFzTG9hZGluZ0JvdW5kYXJ5LlNlZ21lbnRIYXNMb2FkaW5nQm91bmRhcnkpcmV0dXJuKDAsby5jb252ZXJ0Um91dGVUcmVlVG9GbGlnaHRSb3V0ZXJTdGF0ZSkoYSk7Y2FzZSBvLkVudHJ5U3RhdHVzLlBlbmRpbmc6Y2FzZSBvLkVudHJ5U3RhdHVzLlJlamVjdGVkOn1sZXQgZD17fTtpZihudWxsIT09YS5zbG90cylmb3IobGV0IGwgaW4gYS5zbG90cyl7bGV0IG89YS5zbG90c1tsXTtkW2xdPWUodCxyLG4sbyx1LGkpfXJldHVyblthLnNlZ21lbnQsZCxudWxsLGMsYS5pc1Jvb3RMYXlvdXRdfSh0LHIsbix1LG51bGwsaSk6KDAsby5jb252ZXJ0Um91dGVUcmVlVG9GbGlnaHRSb3V0ZXJTdGF0ZSkodSk7aFthXT1lO2JyZWFrfWNhc2Ugcy5GZXRjaFN0cmF0ZWd5LlBQUlJ1bnRpbWU6e2xldCBlPXcodCxyLG4sdSwhMSxpLGMpO2hbYV09ZTticmVha31jYXNlIHMuRmV0Y2hTdHJhdGVneS5GdWxsOntsZXQgZT13KHQscixuLHUsITEsaSxjKTtoW2FdPWV9fX1yZXR1cm5bdS5zZWdtZW50LGgsbnVsbCxudWxsLHUuaXNSb290TGF5b3V0XX0oZSx0LHIsdC50cmVlQXRUaW1lT2ZQcmVmZXRjaCxpLG4sYyk7cmV0dXJuIG4uc2l6ZT4wJiZqKCgwLG8uZmV0Y2hTZWdtZW50UHJlZmV0Y2hlc1VzaW5nRHluYW1pY1JlcXVlc3QpKHQscixjLGEsbikpLDJ9fX19cmV0dXJuIDJ9KGUsdCxuKTtpZigwIT09YSYmIiIhPT1yLnNlYXJjaCl7bGV0IG49bmV3IFVSTChyLnBhdGhuYW1lLGxvY2F0aW9uLm9yaWdpbiksYT0oMCxjLmNyZWF0ZUNhY2hlS2V5KShuLmhyZWYsci5uZXh0VXJsKSxsPSgwLG8ucmVhZE9yQ3JlYXRlUm91dGVDYWNoZUVudHJ5KShlLHQsYSk7c3dpdGNoKGwuc3RhdHVzKXtjYXNlIG8uRW50cnlTdGF0dXMuRW1wdHk6Qyh0KSYmKGwuc3RhdHVzPW8uRW50cnlTdGF0dXMuUGVuZGluZyxqKCgwLG8uZmV0Y2hSb3V0ZU9uQ2FjaGVNaXNzKShsLHQsYSkpKTtjYXNlIG8uRW50cnlTdGF0dXMuUGVuZGluZzpjYXNlIG8uRW50cnlTdGF0dXMuRnVsZmlsbGVkOmNhc2Ugby5FbnRyeVN0YXR1cy5SZWplY3RlZDp9fXJldHVybiBhfShlLHQpLG49dC5oYXNCYWNrZ3JvdW5kV29yaztzd2l0Y2godC5oYXNCYWNrZ3JvdW5kV29yaz0hMSx0LnNwYXduZWRSdW50aW1lUHJlZmV0Y2hlcz1udWxsLHIpe2Nhc2UgMDpyZXR1cm47Y2FzZSAxOlYoaCksdD1LKGgpO2NvbnRpbnVlO2Nhc2UgMjoxPT09dC5waGFzZT8odC5waGFzZT0wLHEoaCx0KSk6bj8odC5wcmlvcml0eT1zLlByZWZldGNoUHJpb3JpdHkuQmFja2dyb3VuZCxxKGgsdCkpOlYoaCksdD1LKGgpO2NvbnRpbnVlfX19ZnVuY3Rpb24gQyhlKXtyZXR1cm4gZS5wcmlvcml0eT09PXMuUHJlZmV0Y2hQcmlvcml0eS5CYWNrZ3JvdW5kfHwoZS5oYXNCYWNrZ3JvdW5kV29yaz0hMCwhMSl9ZnVuY3Rpb24gTihlLHQscixuLGEpe3coZSx0LHIsci5tZXRhZGF0YSwhMSxuLGE9PT1zLkZldGNoU3RyYXRlZ3kuTG9hZGluZ0JvdW5kYXJ5P3MuRmV0Y2hTdHJhdGVneS5GdWxsOmEpfWZ1bmN0aW9uIHcoZSx0LHIsbixhLGwsdSl7bGV0IGk9KDAsby5yZWFkT3JDcmVhdGVTZWdtZW50Q2FjaGVFbnRyeSkoZSx1LHIsbiksYz1udWxsO3N3aXRjaChpLnN0YXR1cyl7Y2FzZSBvLkVudHJ5U3RhdHVzLkVtcHR5OmM9KDAsby51cGdyYWRlVG9QZW5kaW5nU2VnbWVudCkoaSx1KTticmVhaztjYXNlIG8uRW50cnlTdGF0dXMuRnVsZmlsbGVkOmkuaXNQYXJ0aWFsJiYoMCxvLmNhbk5ld0ZldGNoU3RyYXRlZ3lQcm92aWRlTW9yZUNvbnRlbnQpKGkuZmV0Y2hTdHJhdGVneSx1KSYmKGM9TChlLHIsbix1KSk7YnJlYWs7Y2FzZSBvLkVudHJ5U3RhdHVzLlBlbmRpbmc6Y2FzZSBvLkVudHJ5U3RhdHVzLlJlamVjdGVkOigwLG8uY2FuTmV3RmV0Y2hTdHJhdGVneVByb3ZpZGVNb3JlQ29udGVudCkoaS5mZXRjaFN0cmF0ZWd5LHUpJiYoYz1MKGUscixuLHUpKX1sZXQgcz17fTtpZihudWxsIT09bi5zbG90cylmb3IobGV0IG8gaW4gbi5zbG90cyl7bGV0IGk9bi5zbG90c1tvXTtzW29dPXcoZSx0LHIsaSxhfHxudWxsIT09YyxsLHUpfW51bGwhPT1jJiZsLnNldChuLnJlcXVlc3RLZXksYyk7bGV0IGY9YXx8bnVsbD09PWM/bnVsbDoicmVmZXRjaCI7cmV0dXJuW24uc2VnbWVudCxzLG51bGwsZixuLmlzUm9vdExheW91dF19ZnVuY3Rpb24gRihlLHQscixuLGEsbCl7c3dpdGNoKG4uc3RhdHVzKXtjYXNlIG8uRW50cnlTdGF0dXMuRW1wdHk6aigoMCxvLmZldGNoU2VnbWVudE9uQ2FjaGVNaXNzKShyLCgwLG8udXBncmFkZVRvUGVuZGluZ1NlZ21lbnQpKG4scy5GZXRjaFN0cmF0ZWd5LlBQUiksYSxsKSk7YnJlYWs7Y2FzZSBvLkVudHJ5U3RhdHVzLlBlbmRpbmc6c3dpdGNoKG4uZmV0Y2hTdHJhdGVneSl7Y2FzZSBzLkZldGNoU3RyYXRlZ3kuUFBSOmNhc2Ugcy5GZXRjaFN0cmF0ZWd5LlBQUlJ1bnRpbWU6Y2FzZSBzLkZldGNoU3RyYXRlZ3kuRnVsbDpicmVhaztjYXNlIHMuRmV0Y2hTdHJhdGVneS5Mb2FkaW5nQm91bmRhcnk6Qyh0KSYmSShlLHIsYSxsKTticmVhaztkZWZhdWx0Om4uZmV0Y2hTdHJhdGVneX1icmVhaztjYXNlIG8uRW50cnlTdGF0dXMuUmVqZWN0ZWQ6c3dpdGNoKG4uZmV0Y2hTdHJhdGVneSl7Y2FzZSBzLkZldGNoU3RyYXRlZ3kuUFBSOmNhc2Ugcy5GZXRjaFN0cmF0ZWd5LlBQUlJ1bnRpbWU6Y2FzZSBzLkZldGNoU3RyYXRlZ3kuRnVsbDpicmVhaztjYXNlIHMuRmV0Y2hTdHJhdGVneS5Mb2FkaW5nQm91bmRhcnk6SShlLHIsYSxsKTticmVhaztkZWZhdWx0Om4uZmV0Y2hTdHJhdGVneX1jYXNlIG8uRW50cnlTdGF0dXMuRnVsZmlsbGVkOn19ZnVuY3Rpb24gSShlLHQscixuKXtsZXQgYT0oMCxvLnJlYWRPckNyZWF0ZVJldmFsaWRhdGluZ1NlZ21lbnRFbnRyeSkoZSxzLkZldGNoU3RyYXRlZ3kuUFBSLHQsbik7c3dpdGNoKGEuc3RhdHVzKXtjYXNlIG8uRW50cnlTdGF0dXMuRW1wdHk6eChqKCgwLG8uZmV0Y2hTZWdtZW50T25DYWNoZU1pc3MpKHQsKDAsby51cGdyYWRlVG9QZW5kaW5nU2VnbWVudCkoYSxzLkZldGNoU3RyYXRlZ3kuUFBSKSxyLG4pKSwoMCxpLmdldFNlZ21lbnRWYXJ5UGF0aEZvclJlcXVlc3QpKHMuRmV0Y2hTdHJhdGVneS5QUFIsbikpO2Nhc2Ugby5FbnRyeVN0YXR1cy5QZW5kaW5nOmNhc2Ugby5FbnRyeVN0YXR1cy5GdWxmaWxsZWQ6Y2FzZSBvLkVudHJ5U3RhdHVzLlJlamVjdGVkOn19ZnVuY3Rpb24gTChlLHQscixuKXtsZXQgYT0oMCxvLnJlYWRPckNyZWF0ZVJldmFsaWRhdGluZ1NlZ21lbnRFbnRyeSkoZSxuLHQscik7aWYoYS5zdGF0dXM9PT1vLkVudHJ5U3RhdHVzLkVtcHR5KXtsZXQgZT0oMCxvLnVwZ3JhZGVUb1BlbmRpbmdTZWdtZW50KShhLG4pO3JldHVybiB4KCgwLG8ud2FpdEZvclNlZ21lbnRDYWNoZUVudHJ5KShlKSwoMCxpLmdldFNlZ21lbnRWYXJ5UGF0aEZvclJlcXVlc3QpKG4scikpLGV9aWYoKDAsby5jYW5OZXdGZXRjaFN0cmF0ZWd5UHJvdmlkZU1vcmVDb250ZW50KShhLmZldGNoU3RyYXRlZ3ksbikpe2xldCBlPSgwLG8ub3ZlcndyaXRlUmV2YWxpZGF0aW5nU2VnbWVudENhY2hlRW50cnkpKG4sdCxyKSxhPSgwLG8udXBncmFkZVRvUGVuZGluZ1NlZ21lbnQpKGUsbik7cmV0dXJuIHgoKDAsby53YWl0Rm9yU2VnbWVudENhY2hlRW50cnkpKGEpLCgwLGkuZ2V0U2VnbWVudFZhcnlQYXRoRm9yUmVxdWVzdCkobixyKSksYX1zd2l0Y2goYS5zdGF0dXMpe2Nhc2Ugby5FbnRyeVN0YXR1cy5QZW5kaW5nOmNhc2Ugby5FbnRyeVN0YXR1cy5GdWxmaWxsZWQ6Y2FzZSBvLkVudHJ5U3RhdHVzLlJlamVjdGVkOmRlZmF1bHQ6cmV0dXJuIG51bGx9fWxldCBEPSgpPT57fTtmdW5jdGlvbiB4KGUsdCl7ZS50aGVuKGU9PntudWxsIT09ZSYmKDAsby51cHNlcnRTZWdtZW50RW50cnkpKERhdGUubm93KCksdCxlKX0sRCl9ZnVuY3Rpb24gayhlLHQscil7cmV0dXJuIHI9PT1mLlBBR0VfU0VHTUVOVF9LRVk/dD09PSgwLGYuYWRkU2VhcmNoUGFyYW1zSWZQYWdlU2VnbWVudCkoZi5QQUdFX1NFR01FTlRfS0VZLE9iamVjdC5mcm9tRW50cmllcyhuZXcgVVJMU2VhcmNoUGFyYW1zKGUucmVuZGVyZWRTZWFyY2gpKSk6KDAsdS5tYXRjaFNlZ21lbnQpKHIsdCl9ZnVuY3Rpb24gSChlLHQpe2xldCByPXQucHJpb3JpdHktZS5wcmlvcml0eTtpZigwIT09cilyZXR1cm4gcjtsZXQgbj10LnBoYXNlLWUucGhhc2U7cmV0dXJuIDAhPT1uP246dC5zb3J0SWQtZS5zb3J0SWR9ZnVuY3Rpb24gQihlLHQpe2xldCByPWUubGVuZ3RoO2UucHVzaCh0KSx0Ll9oZWFwSW5kZXg9cixHKGUsdCxyKX1mdW5jdGlvbiBLKGUpe3JldHVybiAwPT09ZS5sZW5ndGg/bnVsbDplWzBdfWZ1bmN0aW9uIFYoZSl7aWYoMD09PWUubGVuZ3RoKXJldHVybiBudWxsO2xldCB0PWVbMF07dC5faGVhcEluZGV4PS0xO2xldCByPWUucG9wKCk7cmV0dXJuIHIhPT10JiYoZVswXT1yLHIuX2hlYXBJbmRleD0wLHooZSxyLDApKSx0fWZ1bmN0aW9uIHEoZSx0KXtsZXQgcj10Ll9oZWFwSW5kZXg7LTEhPT1yJiYoMD09PXI/eihlLHQsMCk6SChlW3ItMT4+PjFdLHQpPjA/RyhlLHQscik6eihlLHQscikpfWZ1bmN0aW9uIEcoZSx0LHIpe2xldCBuPXI7Zm9yKDtuPjA7KXtsZXQgcj1uLTE+Pj4xLGE9ZVtyXTtpZighKEgoYSx0KT4wKSlyZXR1cm47ZVtyXT10LHQuX2hlYXBJbmRleD1yLGVbbl09YSxhLl9oZWFwSW5kZXg9bixuPXJ9fWZ1bmN0aW9uIHooZSx0LHIpe2xldCBuPXIsYT1lLmxlbmd0aCxsPWE+Pj4xO2Zvcig7bjxsOyl7bGV0IHI9KG4rMSkqMi0xLGw9ZVtyXSx1PXIrMSxvPWVbdV07aWYoMD5IKGwsdCkpdTxhJiYwPkgobyxsKT8oZVtuXT1vLG8uX2hlYXBJbmRleD1uLGVbdV09dCx0Ll9oZWFwSW5kZXg9dSxuPXUpOihlW25dPWwsbC5faGVhcEluZGV4PW4sZVtyXT10LHQuX2hlYXBJbmRleD1yLG49cik7ZWxzZXtpZighKHU8YSYmMD5IKG8sdCkpKXJldHVybjtlW25dPW8sby5faGVhcEluZGV4PW4sZVt1XT10LHQuX2hlYXBJbmRleD11LG49dX19fSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDk4MDYzLChlLHQscik9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlKXtsZXQgdD1lLmluZGV4T2YoIiMiKSxyPWUuaW5kZXhPZigiPyIpLG49cj4tMSYmKHQ8MHx8cjx0KTtyZXR1cm4gbnx8dD4tMT97cGF0aG5hbWU6ZS5zdWJzdHJpbmcoMCxuP3I6dCkscXVlcnk6bj9lLnN1YnN0cmluZyhyLHQ+LTE/dDp2b2lkIDApOiIiLGhhc2g6dD4tMT9lLnNsaWNlKHQpOiIifTp7cGF0aG5hbWU6ZSxxdWVyeToiIixoYXNoOiIifX1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInBhcnNlUGF0aCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSl9LDkwNTgsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImFkZFBhdGhQcmVmaXgiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPWUucig5ODA2Myk7ZnVuY3Rpb24gYShlLHQpe2lmKCFlLnN0YXJ0c1dpdGgoIi8iKXx8IXQpcmV0dXJuIGU7bGV0e3BhdGhuYW1lOnIscXVlcnk6YSxoYXNoOmx9PSgwLG4ucGFyc2VQYXRoKShlKTtyZXR1cm5gJHt0fSR7cn0ke2F9JHtsfWB9fSw5ODk0NywoZSx0LHIpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSl7cmV0dXJuIGUucmVwbGFjZSgvXC8kLywiIil8fCIvIn1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInJlbW92ZVRyYWlsaW5nU2xhc2giLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBufX0pfSw2MTgwNywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwibm9ybWFsaXplUGF0aFRyYWlsaW5nU2xhc2giLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBsfX0pO2xldCBuPWUucig5ODk0NyksYT1lLnIoOTgwNjMpLGw9ZT0+e2lmKCFlLnN0YXJ0c1dpdGgoIi8iKSlyZXR1cm4gZTtsZXR7cGF0aG5hbWU6dCxxdWVyeTpyLGhhc2g6bH09KDAsYS5wYXJzZVBhdGgpKGUpO3JldHVybmAkeygwLG4ucmVtb3ZlVHJhaWxpbmdTbGFzaCkodCl9JHtyfSR7bH1gfTsoImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwxNDg1NywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiYWRkQmFzZVBhdGgiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBsfX0pO2xldCBuPWUucig5MDU4KSxhPWUucig2MTgwNyk7ZnVuY3Rpb24gbChlLHQpe3JldHVybigwLGEubm9ybWFsaXplUGF0aFRyYWlsaW5nU2xhc2gpKCgwLG4uYWRkUGF0aFByZWZpeCkoZSwiIikpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDI5MzYyLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtjcmVhdGVQcmVmZXRjaFVSTDpmdW5jdGlvbigpe3JldHVybiBpfSxpc0V4dGVybmFsVVJMOmZ1bmN0aW9uKCl7cmV0dXJuIG99fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IGw9ZS5yKDM0NjUpLHU9ZS5yKDE0ODU3KTtmdW5jdGlvbiBvKGUpe3JldHVybiBlLm9yaWdpbiE9PXdpbmRvdy5sb2NhdGlvbi5vcmlnaW59ZnVuY3Rpb24gaShlKXtsZXQgdDtpZigoMCxsLmlzQm90KSh3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudCkpcmV0dXJuIG51bGw7dHJ5e3Q9bmV3IFVSTCgoMCx1LmFkZEJhc2VQYXRoKShlKSx3aW5kb3cubG9jYXRpb24uaHJlZil9Y2F0Y2godCl7dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKGBDYW5ub3QgcHJlZmV0Y2ggJyR7ZX0nIGJlY2F1c2UgaXQgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIFVSTC5gKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTIzNCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KX1yZXR1cm4gbyh0KT9udWxsOnR9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sOTgyODMsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49e0lETEVfTElOS19TVEFUVVM6ZnVuY3Rpb24oKXtyZXR1cm4gZn0sUEVORElOR19MSU5LX1NUQVRVUzpmdW5jdGlvbigpe3JldHVybiBzfSxtb3VudEZvcm1JbnN0YW5jZTpmdW5jdGlvbigpe3JldHVybiB2fSxtb3VudExpbmtJbnN0YW5jZTpmdW5jdGlvbigpe3JldHVybiBQfSxvbkxpbmtWaXNpYmlsaXR5Q2hhbmdlZDpmdW5jdGlvbigpe3JldHVybiBtfSxvbk5hdmlnYXRpb25JbnRlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gYn0scGluZ1Zpc2libGVMaW5rczpmdW5jdGlvbigpe3JldHVybiBUfSxzZXRMaW5rRm9yQ3VycmVudE5hdmlnYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gZH0sdW5tb3VudExpbmtGb3JDdXJyZW50TmF2aWdhdGlvbjpmdW5jdGlvbigpe3JldHVybiBofSx1bm1vdW50UHJlZmV0Y2hhYmxlSW5zdGFuY2U6ZnVuY3Rpb24oKXtyZXR1cm4gRX19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbD1lLnIoNTI0MTMpLHU9ZS5yKDE2MzE2KSxvPWUucig3NTc4MCksaT1lLnIoNzUyMDEpLGM9bnVsbCxzPXtwZW5kaW5nOiEwfSxmPXtwZW5kaW5nOiExfTtmdW5jdGlvbiBkKGUpeygwLGkuc3RhcnRUcmFuc2l0aW9uKSgoKT0+e2M/LnNldE9wdGltaXN0aWNMaW5rU3RhdHVzKGYpLGU/LnNldE9wdGltaXN0aWNMaW5rU3RhdHVzKHMpLGM9ZX0pfWZ1bmN0aW9uIGgoZSl7Yz09PWUmJihjPW51bGwpfWxldCBwPSJmdW5jdGlvbiI9PXR5cGVvZiBXZWFrTWFwP25ldyBXZWFrTWFwOm5ldyBNYXAseT1uZXcgU2V0LGc9ImZ1bmN0aW9uIj09dHlwZW9mIEludGVyc2VjdGlvbk9ic2VydmVyP25ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihmdW5jdGlvbihlKXtmb3IobGV0IHQgb2YgZSl7bGV0IGU9dC5pbnRlcnNlY3Rpb25SYXRpbz4wO20odC50YXJnZXQsZSl9fSx7cm9vdE1hcmdpbjoiMjAwcHgifSk6bnVsbDtmdW5jdGlvbiBSKGUsdCl7dm9pZCAwIT09cC5nZXQoZSkmJkUoZSkscC5zZXQoZSx0KSxudWxsIT09ZyYmZy5vYnNlcnZlKGUpfWZ1bmN0aW9uIF8odCl7aWYoISgidSI+dHlwZW9mIHdpbmRvdykpcmV0dXJuIG51bGw7e2xldHtjcmVhdGVQcmVmZXRjaFVSTDpyfT1lLnIoMjkzNjIpO3RyeXtyZXR1cm4gcih0KX1jYXRjaHtyZXR1cm4oImZ1bmN0aW9uIj09dHlwZW9mIHJlcG9ydEVycm9yP3JlcG9ydEVycm9yOmNvbnNvbGUuZXJyb3IpKGBDYW5ub3QgcHJlZmV0Y2ggJyR7dH0nIGJlY2F1c2UgaXQgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIFVSTC5gKSxudWxsfX19ZnVuY3Rpb24gUChlLHQscixuLGEsbCl7aWYoYSl7bGV0IGE9Xyh0KTtpZihudWxsIT09YSl7bGV0IHQ9e3JvdXRlcjpyLGZldGNoU3RyYXRlZ3k6bixpc1Zpc2libGU6ITEscHJlZmV0Y2hUYXNrOm51bGwscHJlZmV0Y2hIcmVmOmEuaHJlZixzZXRPcHRpbWlzdGljTGlua1N0YXR1czpsfTtyZXR1cm4gUihlLHQpLHR9fXJldHVybntyb3V0ZXI6cixmZXRjaFN0cmF0ZWd5Om4saXNWaXNpYmxlOiExLHByZWZldGNoVGFzazpudWxsLHByZWZldGNoSHJlZjpudWxsLHNldE9wdGltaXN0aWNMaW5rU3RhdHVzOmx9fWZ1bmN0aW9uIHYoZSx0LHIsbil7bGV0IGE9Xyh0KTtudWxsPT09YXx8UihlLHtyb3V0ZXI6cixmZXRjaFN0cmF0ZWd5Om4saXNWaXNpYmxlOiExLHByZWZldGNoVGFzazpudWxsLHByZWZldGNoSHJlZjphLmhyZWYsc2V0T3B0aW1pc3RpY0xpbmtTdGF0dXM6bnVsbH0pfWZ1bmN0aW9uIEUoZSl7bGV0IHQ9cC5nZXQoZSk7aWYodm9pZCAwIT09dCl7cC5kZWxldGUoZSkseS5kZWxldGUodCk7bGV0IHI9dC5wcmVmZXRjaFRhc2s7bnVsbCE9PXImJigwLG8uY2FuY2VsUHJlZmV0Y2hUYXNrKShyKX1udWxsIT09ZyYmZy51bm9ic2VydmUoZSl9ZnVuY3Rpb24gbShlLHQpe2xldCByPXAuZ2V0KGUpO3ZvaWQgMCE9PXImJihyLmlzVmlzaWJsZT10LHQ/eS5hZGQocik6eS5kZWxldGUociksUyhyLGwuUHJlZmV0Y2hQcmlvcml0eS5EZWZhdWx0KSl9ZnVuY3Rpb24gYihlLHQpe2xldCByPXAuZ2V0KGUpO3ZvaWQgMCE9PXImJnZvaWQgMCE9PXImJlMocixsLlByZWZldGNoUHJpb3JpdHkuSW50ZW50KX1mdW5jdGlvbiBTKHQscil7aWYoInUiPnR5cGVvZiB3aW5kb3cpe2xldCBuPXQucHJlZmV0Y2hUYXNrO2lmKCF0LmlzVmlzaWJsZSl7bnVsbCE9PW4mJigwLG8uY2FuY2VsUHJlZmV0Y2hUYXNrKShuKTtyZXR1cm59bGV0e2dldEN1cnJlbnRBcHBSb3V0ZXJTdGF0ZTphfT1lLnIoODQzOTUpLGw9YSgpO2lmKG51bGwhPT1sKXtsZXQgZT1sLnRyZWU7aWYobnVsbD09PW4pe2xldCBuPWwubmV4dFVybCxhPSgwLHUuY3JlYXRlQ2FjaGVLZXkpKHQucHJlZmV0Y2hIcmVmLG4pO3QucHJlZmV0Y2hUYXNrPSgwLG8uc2NoZWR1bGVQcmVmZXRjaFRhc2spKGEsZSx0LmZldGNoU3RyYXRlZ3kscixudWxsKX1lbHNlKDAsby5yZXNjaGVkdWxlUHJlZmV0Y2hUYXNrKShuLGUsdC5mZXRjaFN0cmF0ZWd5LHIpfX19ZnVuY3Rpb24gVChlLHQpe2ZvcihsZXQgciBvZiB5KXtsZXQgbj1yLnByZWZldGNoVGFzaztpZihudWxsIT09biYmISgwLG8uaXNQcmVmZXRjaFRhc2tEaXJ0eSkobixlLHQpKWNvbnRpbnVlO251bGwhPT1uJiYoMCxvLmNhbmNlbFByZWZldGNoVGFzaykobik7bGV0IGE9KDAsdS5jcmVhdGVDYWNoZUtleSkoci5wcmVmZXRjaEhyZWYsZSk7ci5wcmVmZXRjaFRhc2s9KDAsby5zY2hlZHVsZVByZWZldGNoVGFzaykoYSx0LHIuZmV0Y2hTdHJhdGVneSxsLlByZWZldGNoUHJpb3JpdHkuRGVmYXVsdCxudWxsKX19KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNDA0NjEsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKCl7bGV0IGUsdCxyPW5ldyBQcm9taXNlKChyLG4pPT57ZT1yLHQ9bn0pO3JldHVybntyZXNvbHZlOmUscmVqZWN0OnQscHJvbWlzZTpyfX1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImNyZWF0ZVByb21pc2VXaXRoUmVzb2x2ZXJzIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KX0sNDQ2NjcsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG4sYT17RW50cnlTdGF0dXM6ZnVuY3Rpb24oKXtyZXR1cm4gU30sY2FuTmV3RmV0Y2hTdHJhdGVneVByb3ZpZGVNb3JlQ29udGVudDpmdW5jdGlvbigpe3JldHVybiBlYX0sY29udmVydFJvdXRlVHJlZVRvRmxpZ2h0Um91dGVyU3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24gZSh0KXtsZXQgcj17fTtpZihudWxsIT09dC5zbG90cylmb3IobGV0IG4gaW4gdC5zbG90cylyW25dPWUodC5zbG90c1tuXSk7cmV0dXJuW3Quc2VnbWVudCxyLG51bGwsbnVsbCx0LmlzUm9vdExheW91dF19fSxjcmVhdGVEZXRhY2hlZFNlZ21lbnRDYWNoZUVudHJ5OmZ1bmN0aW9uKCl7cmV0dXJuIFZ9LGZldGNoUm91dGVPbkNhY2hlTWlzczpmdW5jdGlvbigpe3JldHVybiAkfSxmZXRjaFNlZ21lbnRPbkNhY2hlTWlzczpmdW5jdGlvbigpe3JldHVybiBRfSxmZXRjaFNlZ21lbnRQcmVmZXRjaGVzVXNpbmdEeW5hbWljUmVxdWVzdDpmdW5jdGlvbigpe3JldHVybiBKfSxnZXRDdXJyZW50Q2FjaGVWZXJzaW9uOmZ1bmN0aW9uKCl7cmV0dXJuIFV9LGdldFN0YWxlVGltZU1zOmZ1bmN0aW9uKCl7cmV0dXJuIGJ9LG92ZXJ3cml0ZVJldmFsaWRhdGluZ1NlZ21lbnRDYWNoZUVudHJ5OmZ1bmN0aW9uKCl7cmV0dXJuIEJ9LHBpbmdJbnZhbGlkYXRpb25MaXN0ZW5lcnM6ZnVuY3Rpb24oKXtyZXR1cm4gTn0scmVhZE9yQ3JlYXRlUmV2YWxpZGF0aW5nU2VnbWVudEVudHJ5OmZ1bmN0aW9uKCl7cmV0dXJuIEh9LHJlYWRPckNyZWF0ZVJvdXRlQ2FjaGVFbnRyeTpmdW5jdGlvbigpe3JldHVybiBMfSxyZWFkT3JDcmVhdGVTZWdtZW50Q2FjaGVFbnRyeTpmdW5jdGlvbigpe3JldHVybiBrfSxyZWFkUm91dGVDYWNoZUVudHJ5OmZ1bmN0aW9uKCl7cmV0dXJuIHd9LHJlYWRTZWdtZW50Q2FjaGVFbnRyeTpmdW5jdGlvbigpe3JldHVybiBGfSxyZXF1ZXN0T3B0aW1pc3RpY1JvdXRlQ2FjaGVFbnRyeTpmdW5jdGlvbigpe3JldHVybiBEfSxyZXZhbGlkYXRlRW50aXJlQ2FjaGU6ZnVuY3Rpb24oKXtyZXR1cm4gQ30sdXBncmFkZVRvUGVuZGluZ1NlZ21lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gcX0sdXBzZXJ0U2VnbWVudEVudHJ5OmZ1bmN0aW9uKCl7cmV0dXJuIEt9LHdhaXRGb3JTZWdtZW50Q2FjaGVFbnRyeTpmdW5jdGlvbigpe3JldHVybiBJfX07Zm9yKHZhciBsIGluIGEpT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsbCx7ZW51bWVyYWJsZTohMCxnZXQ6YVtsXX0pO2xldCB1PWUucigyNDQ1Nyksbz1lLnIoMzQ2NDEpLGk9ZS5yKDExMDYpLGM9ZS5yKDc1NzgwKSxzPWUucig2NTg5MyksZj1lLnIoNjE3MDYpLGQ9ZS5yKDg1NTk0KSxoPWUucigxNjMxNikscD1lLnIoODgwNjIpLHk9ZS5yKDc1NzQ1KSxnPWUucig0NjIxOSksUj1lLnIoNjc2MjgpLF89ZS5yKDU0MDExKSxQPWUucig5ODI4Myksdj1lLnIoMjc0NTQpLEU9ZS5yKDUyNDEzKSxtPWUucig0MDQ2MSk7ZnVuY3Rpb24gYihlKXtyZXR1cm4gMWUzKk1hdGgubWF4KGUsMzApfXZhciBTPSgobj17fSlbbi5FbXB0eT0wXT0iRW1wdHkiLG5bbi5QZW5kaW5nPTFdPSJQZW5kaW5nIixuW24uRnVsZmlsbGVkPTJdPSJGdWxmaWxsZWQiLG5bbi5SZWplY3RlZD0zXT0iUmVqZWN0ZWQiLG4pO2xldCBUPVsiIix7fSxudWxsLCJtZXRhZGF0YS1vbmx5Il0sTz0oMCx5LmNyZWF0ZUNhY2hlTWFwKSgpLGo9KDAseS5jcmVhdGVDYWNoZU1hcCkoKSxNPW51bGwsQT0wO2Z1bmN0aW9uIFUoKXtyZXR1cm4gQX1mdW5jdGlvbiBDKGUsdCl7QSsrLCgwLGMuc3RhcnRSZXZhbGlkYXRpb25Db29sZG93bikoKSwoMCxQLnBpbmdWaXNpYmxlTGlua3MpKGUsdCksTihlLHQpfWZ1bmN0aW9uIE4oZSx0KXtpZihudWxsIT09TSl7bGV0IHI9TTtmb3IobGV0IG4gb2YoTT1udWxsLHIpKSgwLGMuaXNQcmVmZXRjaFRhc2tEaXJ0eSkobixlLHQpJiZmdW5jdGlvbihlKXtsZXQgdD1lLm9uSW52YWxpZGF0ZTtpZihudWxsIT09dCl7ZS5vbkludmFsaWRhdGU9bnVsbDt0cnl7dCgpfWNhdGNoKGUpeyJmdW5jdGlvbiI9PXR5cGVvZiByZXBvcnRFcnJvcj9yZXBvcnRFcnJvcihlKTpjb25zb2xlLmVycm9yKGUpfX19KG4pfX1mdW5jdGlvbiB3KGUsdCl7bGV0IHI9KDAscy5nZXRSb3V0ZVZhcnlQYXRoKSh0LnBhdGhuYW1lLHQuc2VhcmNoLHQubmV4dFVybCk7cmV0dXJuKDAseS5nZXRGcm9tQ2FjaGVNYXApKGUsQSxPLHIsITEpfWZ1bmN0aW9uIEYoZSx0KXtyZXR1cm4oMCx5LmdldEZyb21DYWNoZU1hcCkoZSxBLGosdCwhMSl9ZnVuY3Rpb24gSShlKXtsZXQgdD1lLnByb21pc2U7cmV0dXJuIG51bGw9PT10JiYodD1lLnByb21pc2U9KDAsbS5jcmVhdGVQcm9taXNlV2l0aFJlc29sdmVycykoKSksdC5wcm9taXNlfWZ1bmN0aW9uIEwoZSx0LHIpe251bGwhPT10Lm9uSW52YWxpZGF0ZSYmKG51bGw9PT1NP009bmV3IFNldChbdF0pOk0uYWRkKHQpKTtsZXQgbj13KGUscik7aWYobnVsbCE9PW4pcmV0dXJuIG47bGV0IGE9e2Nhbm9uaWNhbFVybDpudWxsLHN0YXR1czowLGJsb2NrZWRUYXNrczpudWxsLHRyZWU6bnVsbCxtZXRhZGF0YTpudWxsLGNvdWxkQmVJbnRlcmNlcHRlZDohMCxpc1BQUkVuYWJsZWQ6ITEscmVuZGVyZWRTZWFyY2g6bnVsbCxyZWY6bnVsbCxzaXplOjAsc3RhbGVBdDoxLzAsdmVyc2lvbjpBfSxsPSgwLHMuZ2V0Um91dGVWYXJ5UGF0aCkoci5wYXRobmFtZSxyLnNlYXJjaCxyLm5leHRVcmwpO3JldHVybigwLHkuc2V0SW5DYWNoZU1hcCkoTyxsLGEsITEpLGF9ZnVuY3Rpb24gRChlLHQscil7bGV0IG49dC5zZWFyY2g7aWYoIiI9PT1uKXJldHVybiBudWxsO2xldCBhPW5ldyBVUkwodCk7YS5zZWFyY2g9IiI7bGV0IGw9dyhlLCgwLGguY3JlYXRlQ2FjaGVLZXkpKGEuaHJlZixyKSk7aWYobnVsbD09PWx8fDIhPT1sLnN0YXR1cylyZXR1cm4gbnVsbDtsZXQgdT1uZXcgVVJMKGwuY2Fub25pY2FsVXJsLHQub3JpZ2luKSxvPSIiIT09dS5zZWFyY2g/dS5zZWFyY2g6bixpPSIiIT09bC5yZW5kZXJlZFNlYXJjaD9sLnJlbmRlcmVkU2VhcmNoOm4sYz1uZXcgVVJMKGwuY2Fub25pY2FsVXJsLGxvY2F0aW9uLm9yaWdpbik7cmV0dXJuIGMuc2VhcmNoPW8se2Nhbm9uaWNhbFVybDooMCxkLmNyZWF0ZUhyZWZGcm9tVXJsKShjKSxzdGF0dXM6MixibG9ja2VkVGFza3M6bnVsbCx0cmVlOngobC50cmVlLGkpLG1ldGFkYXRhOngobC5tZXRhZGF0YSxpKSxjb3VsZEJlSW50ZXJjZXB0ZWQ6bC5jb3VsZEJlSW50ZXJjZXB0ZWQsaXNQUFJFbmFibGVkOmwuaXNQUFJFbmFibGVkLHJlbmRlcmVkU2VhcmNoOmkscmVmOm51bGwsc2l6ZTowLHN0YWxlQXQ6bC5zdGFsZUF0LHZlcnNpb246bC52ZXJzaW9ufX1mdW5jdGlvbiB4KGUsdCl7bGV0IHI9bnVsbCxuPWUuc2xvdHM7aWYobnVsbCE9PW4pZm9yKGxldCBlIGluIHI9e30sbil7bGV0IGE9bltlXTtyW2VdPXgoYSx0KX1yZXR1cm4gZS5pc1BhZ2U/e3JlcXVlc3RLZXk6ZS5yZXF1ZXN0S2V5LHNlZ21lbnQ6ZS5zZWdtZW50LHZhcnlQYXRoOigwLHMuY2xvbmVQYWdlVmFyeVBhdGhXaXRoTmV3U2VhcmNoUGFyYW1zKShlLnZhcnlQYXRoLHQpLGlzUGFnZTohMCxzbG90czpyLGlzUm9vdExheW91dDplLmlzUm9vdExheW91dCxoYXNMb2FkaW5nQm91bmRhcnk6ZS5oYXNMb2FkaW5nQm91bmRhcnksaGFzUnVudGltZVByZWZldGNoOmUuaGFzUnVudGltZVByZWZldGNofTp7cmVxdWVzdEtleTplLnJlcXVlc3RLZXksc2VnbWVudDplLnNlZ21lbnQsdmFyeVBhdGg6ZS52YXJ5UGF0aCxpc1BhZ2U6ITEsc2xvdHM6cixpc1Jvb3RMYXlvdXQ6ZS5pc1Jvb3RMYXlvdXQsaGFzTG9hZGluZ0JvdW5kYXJ5OmUuaGFzTG9hZGluZ0JvdW5kYXJ5LGhhc1J1bnRpbWVQcmVmZXRjaDplLmhhc1J1bnRpbWVQcmVmZXRjaH19ZnVuY3Rpb24gayhlLHQscixuKXtsZXQgYT1GKGUsbi52YXJ5UGF0aCk7aWYobnVsbCE9PWEpcmV0dXJuIGE7bGV0IGw9KDAscy5nZXRTZWdtZW50VmFyeVBhdGhGb3JSZXF1ZXN0KSh0LG4pLHU9VihyLnN0YWxlQXQpO3JldHVybigwLHkuc2V0SW5DYWNoZU1hcCkoaixsLHUsITEpLHV9ZnVuY3Rpb24gSChlLHQscixuKXt2YXIgYTtsZXQgbD0oYT1uLnZhcnlQYXRoLCgwLHkuZ2V0RnJvbUNhY2hlTWFwKShlLEEsaixhLCEwKSk7aWYobnVsbCE9PWwpcmV0dXJuIGw7bGV0IHU9KDAscy5nZXRTZWdtZW50VmFyeVBhdGhGb3JSZXF1ZXN0KSh0LG4pLG89VihyLnN0YWxlQXQpO3JldHVybigwLHkuc2V0SW5DYWNoZU1hcCkoaix1LG8sITApLG99ZnVuY3Rpb24gQihlLHQscil7bGV0IG49KDAscy5nZXRTZWdtZW50VmFyeVBhdGhGb3JSZXF1ZXN0KShlLHIpLGE9Vih0LnN0YWxlQXQpO3JldHVybigwLHkuc2V0SW5DYWNoZU1hcCkoaixuLGEsITApLGF9ZnVuY3Rpb24gSyhlLHQscil7aWYoKDAseS5pc1ZhbHVlRXhwaXJlZCkoZSxBLHIpKXJldHVybiBudWxsO2xldCBuPUYoZSx0KTtpZihudWxsIT09bil7dmFyIGE7aWYoci5mZXRjaFN0cmF0ZWd5IT09bi5mZXRjaFN0cmF0ZWd5JiYoYT1uLmZldGNoU3RyYXRlZ3ksIShhPHIuZmV0Y2hTdHJhdGVneSkpfHwhbi5pc1BhcnRpYWwmJnIuaXNQYXJ0aWFsKXJldHVybiByLnN0YXR1cz0zLHIubG9hZGluZz1udWxsLHIucnNjPW51bGwsbnVsbDsoMCx5LmRlbGV0ZUZyb21DYWNoZU1hcCkobil9cmV0dXJuKDAseS5zZXRJbkNhY2hlTWFwKShqLHQsciwhMSkscn1mdW5jdGlvbiBWKGUpe3JldHVybntzdGF0dXM6MCxmZXRjaFN0cmF0ZWd5OkUuRmV0Y2hTdHJhdGVneS5QUFIscnNjOm51bGwsbG9hZGluZzpudWxsLGlzUGFydGlhbDohMCxwcm9taXNlOm51bGwscmVmOm51bGwsc2l6ZTowLHN0YWxlQXQ6ZSx2ZXJzaW9uOjB9fWZ1bmN0aW9uIHEoZSx0KXtyZXR1cm4gZS5zdGF0dXM9MSxlLmZldGNoU3RyYXRlZ3k9dCx0PT09RS5GZXRjaFN0cmF0ZWd5LkZ1bGwmJihlLmlzUGFydGlhbD0hMSksZS52ZXJzaW9uPUEsZX1mdW5jdGlvbiBHKGUpe2xldCB0PWUuYmxvY2tlZFRhc2tzO2lmKG51bGwhPT10KXtmb3IobGV0IGUgb2YgdCkoMCxjLnBpbmdQcmVmZXRjaFRhc2spKGUpO2UuYmxvY2tlZFRhc2tzPW51bGx9fWZ1bmN0aW9uIHooZSx0LHIsbixhLGwsbyxpKXtsZXQgYz17cmVxdWVzdEtleTpnLkhFQURfUkVRVUVTVF9LRVksc2VnbWVudDpnLkhFQURfUkVRVUVTVF9LRVksdmFyeVBhdGg6cixpc1BhZ2U6ITAsc2xvdHM6bnVsbCxpc1Jvb3RMYXlvdXQ6ITEsaGFzTG9hZGluZ0JvdW5kYXJ5OnUuSGFzTG9hZGluZ0JvdW5kYXJ5LlN1YnRyZWVIYXNOb0xvYWRpbmdCb3VuZGFyeSxoYXNSdW50aW1lUHJlZmV0Y2g6ITF9O3JldHVybiBlLnN0YXR1cz0yLGUudHJlZT10LGUubWV0YWRhdGE9YyxlLnN0YWxlQXQ9bixlLmNvdWxkQmVJbnRlcmNlcHRlZD1hLGUuY2Fub25pY2FsVXJsPWwsZS5yZW5kZXJlZFNlYXJjaD1vLGUuaXNQUFJFbmFibGVkPWksRyhlKSxlfWZ1bmN0aW9uIFgoZSx0LHIsbixhKXtyZXR1cm4gZS5zdGF0dXM9MixlLnJzYz10LGUubG9hZGluZz1yLGUuc3RhbGVBdD1uLGUuaXNQYXJ0aWFsPWEsbnVsbCE9PWUucHJvbWlzZSYmKGUucHJvbWlzZS5yZXNvbHZlKGUpLGUucHJvbWlzZT1udWxsKSxlfWZ1bmN0aW9uIFcoZSx0KXtlLnN0YXR1cz0zLGUuc3RhbGVBdD10LEcoZSl9ZnVuY3Rpb24gWShlLHQpe2Uuc3RhdHVzPTMsZS5zdGFsZUF0PXQsbnVsbCE9PWUucHJvbWlzZSYmKGUucHJvbWlzZS5yZXNvbHZlKG51bGwpLGUucHJvbWlzZT1udWxsKX1hc3luYyBmdW5jdGlvbiAkKGUsdCxyKXtsZXQgbj1yLnBhdGhuYW1lLGE9ci5zZWFyY2gsbD1yLm5leHRVcmwsYz17W28uUlNDX0hFQURFUl06IjEiLFtvLk5FWFRfUk9VVEVSX1BSRUZFVENIX0hFQURFUl06IjEiLFtvLk5FWFRfUk9VVEVSX1NFR01FTlRfUFJFRkVUQ0hfSEVBREVSXToiL190cmVlIn07bnVsbCE9PWwmJihjW28uTkVYVF9VUkxdPWwpO3RyeXtsZXQgcixoLFA9bmV3IFVSTChuK2EsbG9jYXRpb24ub3JpZ2luKTtpZihyPWF3YWl0IGVyKFAsYyksaD1udWxsIT09ciYmci5yZWRpcmVjdGVkP25ldyBVUkwoci51cmwpOlAsIXJ8fCFyLm9rfHwyMDQ9PT1yLnN0YXR1c3x8IXIuYm9keSlyZXR1cm4gVyhlLERhdGUubm93KCkrMWU0KSxudWxsO2xldCBTPSgwLGQuY3JlYXRlSHJlZkZyb21VcmwpKGgpLFQ9ci5oZWFkZXJzLmdldCgidmFyeSIpLGo9bnVsbCE9PVQmJlQuaW5jbHVkZXMoby5ORVhUX1VSTCksTT0oMCxtLmNyZWF0ZVByb21pc2VXaXRoUmVzb2x2ZXJzKSgpLEE9IjIiPT09ci5oZWFkZXJzLmdldChvLk5FWFRfRElEX1BPU1RQT05FX0hFQURFUik7aWYoQSl7bGV0IHQsbixhPWVuKHIuYm9keSxNLnJlc29sdmUsZnVuY3Rpb24odCl7KDAseS5zZXRTaXplSW5DYWNoZU1hcCkoZSx0KX0pLGw9YXdhaXQgKDAsaS5jcmVhdGVGcm9tTmV4dFJlYWRhYmxlU3RyZWFtKShhLGMpO2lmKGwuYnVpbGRJZCE9PSgwLGYuZ2V0QXBwQnVpbGRJZCkoKSlyZXR1cm4gVyhlLERhdGUubm93KCkrMWU0KSxudWxsO2xldCBvPSgwLHAuZ2V0UmVuZGVyZWRQYXRobmFtZSkociksZD0oMCxwLmdldFJlbmRlcmVkU2VhcmNoKShyKSxoPXttZXRhZGF0YVZhcnlQYXRoOm51bGx9LFI9KHQ9by5zcGxpdCgiLyIpLmZpbHRlcihlPT4iIiE9PWUpLG49Zy5ST09UX1NFR01FTlRfUkVRVUVTVF9LRVksZnVuY3Rpb24gZSh0LHIsbixhLGwsbyxpLGMpe2xldCBmLGQsaD1udWxsLHk9dC5zbG90cztpZihudWxsIT09eSlmb3IobGV0IHQgaW4gZj0hMSxkPSgwLHMuZmluYWxpemVMYXlvdXRWYXJ5UGF0aCkoYSxuKSxoPXt9LHkpe2xldCByLHUsZixkPXlbdF0sUj1kLm5hbWUsXz1kLnBhcmFtVHlwZSxQPWQucGFyYW1LZXk7aWYobnVsbCE9PV8pe2xldCBlPSgwLHAucGFyc2VEeW5hbWljUGFyYW1Gcm9tVVJMUGFydCkoXyxsLG8pLHQ9bnVsbCE9PVA/UDooMCxwLmdldENhY2hlS2V5Rm9yRHluYW1pY1BhcmFtKShlLCIiKTtmPSgwLHMuYXBwZW5kTGF5b3V0VmFyeVBhdGgpKG4sdCksdT1bUix0LF9dLHI9ITB9ZWxzZSBmPW4sdT1SLHI9KDAscC5kb2VzU3RhdGljU2VnbWVudEFwcGVhckluVVJMKShSKTtsZXQgdj1yP28rMTpvLEU9KDAsZy5jcmVhdGVTZWdtZW50UmVxdWVzdEtleVBhcnQpKHUpLG09KDAsZy5hcHBlbmRTZWdtZW50UmVxdWVzdEtleVBhcnQpKGEsdCxFKTtoW3RdPWUoZCx1LGYsbSxsLHYsaSxjKX1lbHNlIGEuZW5kc1dpdGgodi5QQUdFX1NFR01FTlRfS0VZKT8oZj0hMCxkPSgwLHMuZmluYWxpemVQYWdlVmFyeVBhdGgpKGEsaSxuKSxudWxsPT09Yy5tZXRhZGF0YVZhcnlQYXRoJiYoYy5tZXRhZGF0YVZhcnlQYXRoPSgwLHMuZmluYWxpemVNZXRhZGF0YVZhcnlQYXRoKShhLGksbikpKTooZj0hMSxkPSgwLHMuZmluYWxpemVMYXlvdXRWYXJ5UGF0aCkoYSxuKSk7cmV0dXJue3JlcXVlc3RLZXk6YSxzZWdtZW50OnIsdmFyeVBhdGg6ZCxpc1BhZ2U6ZixzbG90czpoLGlzUm9vdExheW91dDp0LmlzUm9vdExheW91dCxoYXNMb2FkaW5nQm91bmRhcnk6dS5IYXNMb2FkaW5nQm91bmRhcnkuU2VnbWVudEhhc0xvYWRpbmdCb3VuZGFyeSxoYXNSdW50aW1lUHJlZmV0Y2g6dC5oYXNSdW50aW1lUHJlZmV0Y2h9fShsLnRyZWUsbixudWxsLGcuUk9PVF9TRUdNRU5UX1JFUVVFU1RfS0VZLHQsMCxkLGgpKSxfPWgubWV0YWRhdGFWYXJ5UGF0aDtpZihudWxsPT09XylyZXR1cm4gVyhlLERhdGUubm93KCkrMWU0KSxudWxsO2xldCBQPWIobC5zdGFsZVRpbWUpO3ooZSxSLF8sRGF0ZS5ub3coKStQLGosUyxkLEEpfWVsc2V7bGV0IG49ZW4oci5ib2R5LE0ucmVzb2x2ZSxmdW5jdGlvbih0KXsoMCx5LnNldFNpemVJbkNhY2hlTWFwKShlLHQpfSksYT1hd2FpdCAoMCxpLmNyZWF0ZUZyb21OZXh0UmVhZGFibGVTdHJlYW0pKG4sYyk7aWYoYS5iIT09KDAsZi5nZXRBcHBCdWlsZElkKSgpKXJldHVybiBXKGUsRGF0ZS5ub3coKSsxZTQpLG51bGw7IWZ1bmN0aW9uKGUsdCxyLG4sYSxsLGksYyxmKXtsZXQgZD0oMCxwLmdldFJlbmRlcmVkU2VhcmNoKShuKSxoPSgwLFIubm9ybWFsaXplRmxpZ2h0RGF0YSkoYS5mKTtpZigic3RyaW5nIj09dHlwZW9mIGh8fDEhPT1oLmxlbmd0aClyZXR1cm4gVyhsLGUrMWU0KTtsZXQgeT1oWzBdO2lmKCF5LmlzUm9vdFJlbmRlcilyZXR1cm4gVyhsLGUrMWU0KTtsZXQgUD15LnRyZWUsRT0ibnVtYmVyIj09dHlwZW9mIGEucnA/LlsxXT9hLnJwWzFdOnBhcnNlSW50KG4uaGVhZGVycy5nZXQoby5ORVhUX1JPVVRFUl9TVEFMRV9USU1FX0hFQURFUik/PyIiLDEwKSxtPWlzTmFOKEUpP18uU1RBVElDX1NUQUxFVElNRV9NUzpiKEUpLFM9IjEiPT09bi5oZWFkZXJzLmdldChvLk5FWFRfRElEX1BPU1RQT05FX0hFQURFUiksVD17bWV0YWRhdGFWYXJ5UGF0aDpudWxsfSxPPWZ1bmN0aW9uIGUodCxyLG4sYSxsKXtsZXQgbyxpLGMsZixkPXRbMF07aWYoQXJyYXkuaXNBcnJheShkKSl7Yz0hMTtsZXQgZT1kWzFdO2k9KDAscy5hcHBlbmRMYXlvdXRWYXJ5UGF0aCkobixlKSxmPSgwLHMuZmluYWxpemVMYXlvdXRWYXJ5UGF0aCkocixpKSxvPWR9ZWxzZSBpPW4sci5lbmRzV2l0aCh2LlBBR0VfU0VHTUVOVF9LRVkpPyhjPSEwLG89di5QQUdFX1NFR01FTlRfS0VZLGY9KDAscy5maW5hbGl6ZVBhZ2VWYXJ5UGF0aCkocixhLGkpLG51bGw9PT1sLm1ldGFkYXRhVmFyeVBhdGgmJihsLm1ldGFkYXRhVmFyeVBhdGg9KDAscy5maW5hbGl6ZU1ldGFkYXRhVmFyeVBhdGgpKHIsYSxpKSkpOihjPSExLG89ZCxmPSgwLHMuZmluYWxpemVMYXlvdXRWYXJ5UGF0aCkocixpKSk7bGV0IGg9bnVsbCxwPXRbMV07Zm9yKGxldCB0IGluIHApe2xldCBuPXBbdF0sdT1uWzBdLG89KDAsZy5jcmVhdGVTZWdtZW50UmVxdWVzdEtleVBhcnQpKHUpLGM9ZShuLCgwLGcuYXBwZW5kU2VnbWVudFJlcXVlc3RLZXlQYXJ0KShyLHQsbyksaSxhLGwpO251bGw9PT1oP2g9e1t0XTpjfTpoW3RdPWN9cmV0dXJue3JlcXVlc3RLZXk6cixzZWdtZW50Om8sdmFyeVBhdGg6Zixpc1BhZ2U6YyxzbG90czpoLGlzUm9vdExheW91dDohMD09PXRbNF0saGFzTG9hZGluZ0JvdW5kYXJ5OnZvaWQgMCE9PXRbNV0/dFs1XTp1Lkhhc0xvYWRpbmdCb3VuZGFyeS5TdWJ0cmVlSGFzTm9Mb2FkaW5nQm91bmRhcnksaGFzUnVudGltZVByZWZldGNoOiExfX0oUCxnLlJPT1RfU0VHTUVOVF9SRVFVRVNUX0tFWSxudWxsLGQsVCksaj1ULm1ldGFkYXRhVmFyeVBhdGg7aWYobnVsbD09PWopcmV0dXJuIFcobCxlKzFlNCk7bGV0IE09eihsLE8saixlK20saSxjLGQsZik7ZWUoZSx0LHIsbixhLFMsTSxudWxsKX0oRGF0ZS5ub3coKSx0LEUuRmV0Y2hTdHJhdGVneS5Mb2FkaW5nQm91bmRhcnkscixhLGUsaixTLEEpfWlmKCFqKXtsZXQgdD0oMCxzLmdldEZ1bGZpbGxlZFJvdXRlVmFyeVBhdGgpKG4sYSxsLGopOygwLHkuc2V0SW5DYWNoZU1hcCkoTyx0LGUsITEpfXJldHVybnt2YWx1ZTpudWxsLGNsb3NlZDpNLnByb21pc2V9fWNhdGNoKHQpe3JldHVybiBXKGUsRGF0ZS5ub3coKSsxZTQpLG51bGx9fWFzeW5jIGZ1bmN0aW9uIFEoZSx0LHIsbil7bGV0IGE9bmV3IFVSTChlLmNhbm9uaWNhbFVybCxsb2NhdGlvbi5vcmlnaW4pLGw9ci5uZXh0VXJsLHU9bi5yZXF1ZXN0S2V5LGM9dT09PWcuUk9PVF9TRUdNRU5UX1JFUVVFU1RfS0VZPyIvX2luZGV4Ijp1LHM9e1tvLlJTQ19IRUFERVJdOiIxIixbby5ORVhUX1JPVVRFUl9QUkVGRVRDSF9IRUFERVJdOiIxIixbby5ORVhUX1JPVVRFUl9TRUdNRU5UX1BSRUZFVENIX0hFQURFUl06Y307bnVsbCE9PWwmJihzW28uTkVYVF9VUkxdPWwpO3RyeXtsZXQgcj1hd2FpdCBlcihhLHMpO2lmKCFyfHwhci5va3x8MjA0PT09ci5zdGF0dXN8fCIyIiE9PXIuaGVhZGVycy5nZXQoby5ORVhUX0RJRF9QT1NUUE9ORV9IRUFERVIpfHwhci5ib2R5KXJldHVybiBZKHQsRGF0ZS5ub3coKSsxZTQpLG51bGw7bGV0IG49KDAsbS5jcmVhdGVQcm9taXNlV2l0aFJlc29sdmVycykoKSxsPWVuKHIuYm9keSxuLnJlc29sdmUsZnVuY3Rpb24oZSl7KDAseS5zZXRTaXplSW5DYWNoZU1hcCkodCxlKX0pLHU9YXdhaXQgKDAsaS5jcmVhdGVGcm9tTmV4dFJlYWRhYmxlU3RyZWFtKShsLHMpO2lmKHUuYnVpbGRJZCE9PSgwLGYuZ2V0QXBwQnVpbGRJZCkoKSlyZXR1cm4gWSh0LERhdGUubm93KCkrMWU0KSxudWxsO3JldHVybnt2YWx1ZTpYKHQsdS5yc2MsdS5sb2FkaW5nLGUuc3RhbGVBdCx1LmlzUGFydGlhbCksY2xvc2VkOm4ucHJvbWlzZX19Y2F0Y2goZSl7cmV0dXJuIFkodCxEYXRlLm5vdygpKzFlNCksbnVsbH19YXN5bmMgZnVuY3Rpb24gSihlLHQscixuLGEpe2xldCBsPWUua2V5LHU9bmV3IFVSTCh0LmNhbm9uaWNhbFVybCxsb2NhdGlvbi5vcmlnaW4pLGM9bC5uZXh0VXJsOzE9PT1hLnNpemUmJmEuaGFzKHQubWV0YWRhdGEucmVxdWVzdEtleSkmJihuPVQpO2xldCBzPXtbby5SU0NfSEVBREVSXToiMSIsW28uTkVYVF9ST1VURVJfU1RBVEVfVFJFRV9IRUFERVJdOigwLFIucHJlcGFyZUZsaWdodFJvdXRlclN0YXRlRm9yUmVxdWVzdCkobil9O3N3aXRjaChudWxsIT09YyYmKHNbby5ORVhUX1VSTF09Yykscil7Y2FzZSBFLkZldGNoU3RyYXRlZ3kuRnVsbDpicmVhaztjYXNlIEUuRmV0Y2hTdHJhdGVneS5QUFJSdW50aW1lOnNbby5ORVhUX1JPVVRFUl9QUkVGRVRDSF9IRUFERVJdPSIyIjticmVhaztjYXNlIEUuRmV0Y2hTdHJhdGVneS5Mb2FkaW5nQm91bmRhcnk6c1tvLk5FWFRfUk9VVEVSX1BSRUZFVENIX0hFQURFUl09IjEifXRyeXtsZXQgbj1hd2FpdCBlcih1LHMpO2lmKCFufHwhbi5va3x8IW4uYm9keXx8KDAscC5nZXRSZW5kZXJlZFNlYXJjaCkobikhPT10LnJlbmRlcmVkU2VhcmNoKXJldHVybiBaKGEsRGF0ZS5ub3coKSsxZTQpLG51bGw7bGV0IGw9KDAsbS5jcmVhdGVQcm9taXNlV2l0aFJlc29sdmVycykoKSxvPW51bGwsYz1lbihuLmJvZHksbC5yZXNvbHZlLGZ1bmN0aW9uKGUpe2lmKG51bGw9PT1vKXJldHVybjtsZXQgdD1lL28ubGVuZ3RoO2ZvcihsZXQgZSBvZiBvKSgwLHkuc2V0U2l6ZUluQ2FjaGVNYXApKGUsdCl9KSxmPWF3YWl0ICgwLGkuY3JlYXRlRnJvbU5leHRSZWFkYWJsZVN0cmVhbSkoYyxzKSxkPXI9PT1FLkZldGNoU3RyYXRlZ3kuUFBSUnVudGltZSYmZi5ycD8uWzBdPT09ITA7cmV0dXJuIG89ZWUoRGF0ZS5ub3coKSxlLHIsbixmLGQsdCxhKSx7dmFsdWU6bnVsbCxjbG9zZWQ6bC5wcm9taXNlfX1jYXRjaChlKXtyZXR1cm4gWihhLERhdGUubm93KCkrMWU0KSxudWxsfX1mdW5jdGlvbiBaKGUsdCl7bGV0IHI9W107Zm9yKGxldCBuIG9mIGUudmFsdWVzKCkpMT09PW4uc3RhdHVzP1kobix0KToyPT09bi5zdGF0dXMmJnIucHVzaChuKTtyZXR1cm4gcn1mdW5jdGlvbiBlZShlLHQscixuLGEsbCx1LGkpe2lmKGEuYiE9PSgwLGYuZ2V0QXBwQnVpbGRJZCkoKSlyZXR1cm4gbnVsbCE9PWkmJlooaSxlKzFlNCksbnVsbDtsZXQgYz0oMCxSLm5vcm1hbGl6ZUZsaWdodERhdGEpKGEuZik7aWYoInN0cmluZyI9PXR5cGVvZiBjKXJldHVybiBudWxsO2xldCBzPSJudW1iZXIiPT10eXBlb2YgYS5ycD8uWzFdP2EucnBbMV06cGFyc2VJbnQobi5oZWFkZXJzLmdldChvLk5FWFRfUk9VVEVSX1NUQUxFX1RJTUVfSEVBREVSKT8/IiIsMTApLGQ9ZSsoaXNOYU4ocyk/Xy5TVEFUSUNfU1RBTEVUSU1FX01TOmIocykpO2ZvcihsZXQgbiBvZiBjKXtsZXQgYT1uLnNlZWREYXRhO2lmKG51bGwhPT1hKXtsZXQgbz1uLnNlZ21lbnRQYXRoLGM9dS50cmVlO2ZvcihsZXQgdD0wO3Q8by5sZW5ndGg7dCs9Mil7bGV0IHI9b1t0XTtpZihjPy5zbG90cz8uW3JdPT09dm9pZCAwKXJldHVybiBudWxsIT09aSYmWihpLGUrMWU0KSxudWxsO2M9Yy5zbG90c1tyXX0hZnVuY3Rpb24gZSh0LHIsbixhLGwsdSxvLGksYyl7bGV0IHM9b1swXTtldCh0LG4sYSxzLG9bMl0sbnVsbD09PXN8fGksdSxsLGMpO2xldCBmPWwuc2xvdHM7aWYobnVsbCE9PWYpe2xldCBsPW9bMV07Zm9yKGxldCBvIGluIGYpe2xldCBzPWZbb10sZD1sW29dO251bGwhPWQmJmUodCxyLG4sYSxzLHUsZCxpLGMpfX19KGUsdCxyLHUsYyxkLGEsbCxpKX1sZXQgbz1uLmhlYWQ7bnVsbCE9PW8mJmV0KGUscix1LG8sbnVsbCxuLmlzSGVhZFBhcnRpYWwsZCx1Lm1ldGFkYXRhLGkpfXJldHVybiBudWxsIT09aT9aKGksZSsxZTQpOm51bGx9ZnVuY3Rpb24gZXQoZSx0LHIsbixhLGwsdSxvLGkpe2xldCBjPW51bGwhPT1pP2kuZ2V0KG8ucmVxdWVzdEtleSk6dm9pZCAwO2lmKHZvaWQgMCE9PWMpWChjLG4sYSx1LGwpO2Vsc2V7bGV0IGk9ayhlLHQscixvKTtpZigwPT09aS5zdGF0dXMpWChxKGksdCksbixhLHUsbCk7ZWxzZXtsZXQgcj1YKHEoVih1KSx0KSxuLGEsdSxsKTtLKGUsKDAscy5nZXRTZWdtZW50VmFyeVBhdGhGb3JSZXF1ZXN0KSh0LG8pLHIpfX19YXN5bmMgZnVuY3Rpb24gZXIoZSx0KXtsZXQgcj1hd2FpdCAoMCxpLmNyZWF0ZUZldGNoKShlLHQsImxvdyIsITEpO2lmKCFyLm9rKXJldHVybiBudWxsO3tsZXQgZT1yLmhlYWRlcnMuZ2V0KCJjb250ZW50LXR5cGUiKTtpZighKGUmJmUuc3RhcnRzV2l0aChvLlJTQ19DT05URU5UX1RZUEVfSEVBREVSKSkpcmV0dXJuIG51bGx9cmV0dXJuIHJ9ZnVuY3Rpb24gZW4oZSx0LHIpe2xldCBuPTAsYT1lLmdldFJlYWRlcigpO3JldHVybiBuZXcgUmVhZGFibGVTdHJlYW0oe2FzeW5jIHB1bGwoZSl7Zm9yKDs7KXtsZXR7ZG9uZTpsLHZhbHVlOnV9PWF3YWl0IGEucmVhZCgpO2lmKCFsKXtlLmVucXVldWUodSkscihuKz11LmJ5dGVMZW5ndGgpO2NvbnRpbnVlfXQoKTtyZXR1cm59fX0pfWZ1bmN0aW9uIGVhKGUsdCl7cmV0dXJuIGU8dH0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw2NTQ2MywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17Y29udmVydFNlcnZlclBhdGNoVG9GdWxsVHJlZTpmdW5jdGlvbigpe3JldHVybiB2fSxuYXZpZ2F0ZTpmdW5jdGlvbigpe3JldHVybiBkfSxuYXZpZ2F0ZVRvU2VlZGVkUm91dGU6ZnVuY3Rpb24oKXtyZXR1cm4gaH19O2Zvcih2YXIgYSBpbiBuKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGEse2VudW1lcmFibGU6ITAsZ2V0Om5bYV19KTtsZXQgbD1lLnIoMTEwNiksdT1lLnIoMTg5MzkpLG89ZS5yKDg1NTk0KSxpPWUucig0NDY2NyksYz1lLnIoMTYzMTYpLHM9ZS5yKDI3NDU0KSxmPWUucig1MjQxMyk7ZnVuY3Rpb24gZChlLHQscixuLGEsbCx1LG8pe2xldCBzPURhdGUubm93KCksZD1lLmhyZWYsaD1kPT09dC5ocmVmLHk9KDAsYy5jcmVhdGVDYWNoZUtleSkoZCxhKSxfPSgwLGkucmVhZFJvdXRlQ2FjaGVFbnRyeSkocyx5KTtpZihudWxsIT09XyYmXy5zdGF0dXM9PT1pLkVudHJ5U3RhdHVzLkZ1bGZpbGxlZCl7bGV0IG89ZyhzLF8sXy50cmVlKSxpPW8uZmxpZ2h0Um91dGVyU3RhdGUsYz1vLnNlZWREYXRhLGY9UihzLF8pLGQ9Zi5yc2MseT1mLmlzUGFydGlhbCxQPV8uY2Fub25pY2FsVXJsK2UuaGFzaDtyZXR1cm4gcChzLGUsdCxhLGgscixuLGksYyxkLHksUCxfLnJlbmRlcmVkU2VhcmNoLGwsdSl9aWYobnVsbD09PV98fF8uc3RhdHVzIT09aS5FbnRyeVN0YXR1cy5SZWplY3RlZCl7bGV0IG89KDAsaS5yZXF1ZXN0T3B0aW1pc3RpY1JvdXRlQ2FjaGVFbnRyeSkocyxlLGEpO2lmKG51bGwhPT1vKXtsZXQgaT1nKHMsbyxvLnRyZWUpLGM9aS5mbGlnaHRSb3V0ZXJTdGF0ZSxmPWkuc2VlZERhdGEsZD1SKHMsbykseT1kLnJzYyxfPWQuaXNQYXJ0aWFsLFA9by5jYW5vbmljYWxVcmwrZS5oYXNoO3JldHVybiBwKHMsZSx0LGEsaCxyLG4sYyxmLHksXyxQLG8ucmVuZGVyZWRTZWFyY2gsbCx1KX19bGV0IHY9by5jb2xsZWN0ZWREZWJ1Z0luZm8/P1tdO3JldHVybiB2b2lkIDA9PT1vLmNvbGxlY3RlZERlYnVnSW5mbyYmKHY9by5jb2xsZWN0ZWREZWJ1Z0luZm89W10pLHt0YWc6Zi5OYXZpZ2F0aW9uUmVzdWx0VGFnLkFzeW5jLGRhdGE6UChzLGUsdCxhLHIsbixsLHUsdil9fWZ1bmN0aW9uIGgoZSx0LHIsbixhLGwsbyxpLGMscyl7bGV0IGQ9e3Njcm9sbGFibGVTZWdtZW50czpudWxsLHNlcGFyYXRlUmVmcmVzaFVybHM6bnVsbH0saD10LmhyZWY9PT1hLmhyZWYscD0oMCx1LnN0YXJ0UFBSTmF2aWdhdGlvbikoZSxhLGwsbyxuLnRyZWUsaSxuLmRhdGEsbi5oZWFkLG51bGwsbnVsbCwhMSxoLGQpO3JldHVybiBudWxsIT09cD8oKDAsdS5zcGF3bkR5bmFtaWNSZXF1ZXN0cykocCx0LGMsaSxkKSx5KHAscixuLnJlbmRlcmVkU2VhcmNoLGQuc2Nyb2xsYWJsZVNlZ21lbnRzLHMsdC5oYXNoKSk6e3RhZzpmLk5hdmlnYXRpb25SZXN1bHRUYWcuTVBBLGRhdGE6cn19ZnVuY3Rpb24gcChlLHQscixuLGEsbCxvLGksYyxzLGQsaCxwLGcsUil7bGV0IF89e3Njcm9sbGFibGVTZWdtZW50czpudWxsLHNlcGFyYXRlUmVmcmVzaFVybHM6bnVsbH0sUD0oMCx1LnN0YXJ0UFBSTmF2aWdhdGlvbikoZSxyLGwsbyxpLGcsbnVsbCxudWxsLGMscyxkLGEsXyk7cmV0dXJuIG51bGwhPT1QPygoMCx1LnNwYXduRHluYW1pY1JlcXVlc3RzKShQLHQsbixnLF8pLHkoUCxoLHAsXy5zY3JvbGxhYmxlU2VnbWVudHMsUix0Lmhhc2gpKTp7dGFnOmYuTmF2aWdhdGlvblJlc3VsdFRhZy5NUEEsZGF0YTpofX1mdW5jdGlvbiB5KGUsdCxyLG4sYSxsKXtyZXR1cm57dGFnOmYuTmF2aWdhdGlvblJlc3VsdFRhZy5TdWNjZXNzLGRhdGE6e2ZsaWdodFJvdXRlclN0YXRlOmUucm91dGUsY2FjaGVOb2RlOmUubm9kZSxjYW5vbmljYWxVcmw6dCxyZW5kZXJlZFNlYXJjaDpyLHNjcm9sbGFibGVTZWdtZW50czpuLHNob3VsZFNjcm9sbDphLGhhc2g6bH19fWZ1bmN0aW9uIGcoZSx0LHIpe2xldCBuPXt9LGE9e30sbD1yLnNsb3RzO2lmKG51bGwhPT1sKWZvcihsZXQgciBpbiBsKXtsZXQgdT1nKGUsdCxsW3JdKTtuW3JdPXUuZmxpZ2h0Um91dGVyU3RhdGUsYVtyXT11LnNlZWREYXRhfWxldCB1PW51bGwsbz1udWxsLGM9ITAsZj0oMCxpLnJlYWRTZWdtZW50Q2FjaGVFbnRyeSkoZSxyLnZhcnlQYXRoKTtpZihudWxsIT09Zilzd2l0Y2goZi5zdGF0dXMpe2Nhc2UgaS5FbnRyeVN0YXR1cy5GdWxmaWxsZWQ6dT1mLnJzYyxvPWYubG9hZGluZyxjPWYuaXNQYXJ0aWFsO2JyZWFrO2Nhc2UgaS5FbnRyeVN0YXR1cy5QZW5kaW5nOntsZXQgZT0oMCxpLndhaXRGb3JTZWdtZW50Q2FjaGVFbnRyeSkoZik7dT1lLnRoZW4oZT0+bnVsbCE9PWU/ZS5yc2M6bnVsbCksbz1lLnRoZW4oZT0+bnVsbCE9PWU/ZS5sb2FkaW5nOm51bGwpLGM9Zi5pc1BhcnRpYWx9Y2FzZSBpLkVudHJ5U3RhdHVzLkVtcHR5OmNhc2UgaS5FbnRyeVN0YXR1cy5SZWplY3RlZDp9cmV0dXJue2ZsaWdodFJvdXRlclN0YXRlOlsoMCxzLmFkZFNlYXJjaFBhcmFtc0lmUGFnZVNlZ21lbnQpKHIuc2VnbWVudCxPYmplY3QuZnJvbUVudHJpZXMobmV3IFVSTFNlYXJjaFBhcmFtcyh0LnJlbmRlcmVkU2VhcmNoKSkpLG4sbnVsbCxudWxsLHIuaXNSb290TGF5b3V0XSxzZWVkRGF0YTpbdSxhLG8sYywhMV19fWZ1bmN0aW9uIFIoZSx0KXtsZXQgcj1udWxsLG49ITAsYT0oMCxpLnJlYWRTZWdtZW50Q2FjaGVFbnRyeSkoZSx0Lm1ldGFkYXRhLnZhcnlQYXRoKTtpZihudWxsIT09YSlzd2l0Y2goYS5zdGF0dXMpe2Nhc2UgaS5FbnRyeVN0YXR1cy5GdWxmaWxsZWQ6cj1hLnJzYyxuPWEuaXNQYXJ0aWFsO2JyZWFrO2Nhc2UgaS5FbnRyeVN0YXR1cy5QZW5kaW5nOnI9KDAsaS53YWl0Rm9yU2VnbWVudENhY2hlRW50cnkpKGEpLnRoZW4oZT0+bnVsbCE9PWU/ZS5yc2M6bnVsbCksbj1hLmlzUGFydGlhbDtjYXNlIGkuRW50cnlTdGF0dXMuRW1wdHk6Y2FzZSBpLkVudHJ5U3RhdHVzLlJlamVjdGVkOn1yZXR1cm57cnNjOnIsaXNQYXJ0aWFsOm59fWxldCBfPVsiIix7fSxudWxsLCJyZWZldGNoIl07YXN5bmMgZnVuY3Rpb24gUChlLHQscixuLGEsaSxjLHMsZCl7bGV0IHA7c3dpdGNoKGMpe2Nhc2UgdS5GcmVzaG5lc3NQb2xpY3kuRGVmYXVsdDpjYXNlIHUuRnJlc2huZXNzUG9saWN5Lkhpc3RvcnlUcmF2ZXJzYWw6cD1pO2JyZWFrO2Nhc2UgdS5GcmVzaG5lc3NQb2xpY3kuSHlkcmF0aW9uOmNhc2UgdS5GcmVzaG5lc3NQb2xpY3kuUmVmcmVzaEFsbDpjYXNlIHUuRnJlc2huZXNzUG9saWN5LkhNUlJlZnJlc2g6cD1fO2JyZWFrO2RlZmF1bHQ6cD1pfWxldCB5PSgwLGwuZmV0Y2hTZXJ2ZXJSZXNwb25zZSkodCx7ZmxpZ2h0Um91dGVyU3RhdGU6cCxuZXh0VXJsOm59KSxnPWF3YWl0IHk7aWYoInN0cmluZyI9PXR5cGVvZiBnKXJldHVybnt0YWc6Zi5OYXZpZ2F0aW9uUmVzdWx0VGFnLk1QQSxkYXRhOmd9O2xldHtmbGlnaHREYXRhOlIsY2Fub25pY2FsVXJsOlAscmVuZGVyZWRTZWFyY2g6RSxkZWJ1Z0luZm86bX09ZztudWxsIT09bSYmZC5wdXNoKC4uLm0pO2xldCBiPXYoaSxSLEUpO3JldHVybiBoKGUsdCwoMCxvLmNyZWF0ZUhyZWZGcm9tVXJsKShQKSxiLHIsYSxpLGMsbixzKX1mdW5jdGlvbiB2KGUsdCxyKXtsZXQgbj1lLGE9bnVsbCxsPW51bGw7Zm9yKGxldHtzZWdtZW50UGF0aDplLHRyZWU6cixzZWVkRGF0YTp1LGhlYWQ6b31vZiB0KXtsZXQgdD1mdW5jdGlvbiBlKHQscixuLGEsbCx1KXtsZXQgbztpZih1PT09bC5sZW5ndGgpcmV0dXJue3RyZWU6bixkYXRhOmF9O2xldCBpPWxbdV0sYz10WzFdLHM9bnVsbCE9PXI/clsxXTpudWxsLGY9e30sZD17fTtmb3IobGV0IHQgaW4gYyl7bGV0IHI9Y1t0XSxvPW51bGwhPT1zP3NbdF0/P251bGw6bnVsbDtpZih0PT09aSl7bGV0IGk9ZShyLG8sbixhLGwsdSsyKTtmW3RdPWkudHJlZSxkW3RdPWkuZGF0YX1lbHNlIGZbdF09cixkW3RdPW99cmV0dXJuIG89W3RbMF0sZl0sMiBpbiB0JiYob1syXT10WzJdKSwzIGluIHQmJihvWzNdPXRbM10pLDQgaW4gdCYmKG9bNF09dFs0XSkse3RyZWU6byxkYXRhOltudWxsLGQsbnVsbCwhMCwhMV19fShuLGEscix1LGUsMCk7bj10LnRyZWUsYT10LmRhdGEsbD1vfXJldHVybnt0cmVlOm4sZGF0YTphLHJlbmRlcmVkU2VhcmNoOnIsaGVhZDpsfX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw1NDAxMSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17RFlOQU1JQ19TVEFMRVRJTUVfTVM6ZnVuY3Rpb24oKXtyZXR1cm4gZn0sU1RBVElDX1NUQUxFVElNRV9NUzpmdW5jdGlvbigpe3JldHVybiBkfSxnZW5lcmF0ZVNlZ21lbnRzRnJvbVBhdGNoOmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uIGUodCl7bGV0IHI9W10sW24sYV09dDtpZigwPT09T2JqZWN0LmtleXMoYSkubGVuZ3RoKXJldHVybltbbl1dO2ZvcihsZXRbdCxsXW9mIE9iamVjdC5lbnRyaWVzKGEpKWZvcihsZXQgYSBvZiBlKGwpKSIiPT09bj9yLnB1c2goW3QsLi4uYV0pOnIucHVzaChbbix0LC4uLmFdKTtyZXR1cm4gcn19LGhhbmRsZUV4dGVybmFsVXJsOmZ1bmN0aW9uKCl7cmV0dXJuIGh9LGhhbmRsZU5hdmlnYXRpb25SZXN1bHQ6ZnVuY3Rpb24oKXtyZXR1cm4gcH0sbmF2aWdhdGVSZWR1Y2VyOmZ1bmN0aW9uKCl7cmV0dXJuIHl9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IGw9ZS5yKDg1NTk0KSx1PWUucig2MzI3OCksbz1lLnIoNjU0NjMpLGk9ZS5yKDUyNDEzKSxjPWUucig0NDY2Nykscz1lLnIoMTg5MzkpLGY9MWUzKk51bWJlcigiMCIpLGQ9KDAsYy5nZXRTdGFsZVRpbWVNcykoTnVtYmVyKCIzMDAiKSk7ZnVuY3Rpb24gaChlLHQscixuKXtyZXR1cm4gdC5tcGFOYXZpZ2F0aW9uPSEwLHQuY2Fub25pY2FsVXJsPXIsdC5wZW5kaW5nUHVzaD1uLHQuc2Nyb2xsYWJsZVNlZ21lbnRzPXZvaWQgMCwoMCx1LmhhbmRsZU11dGFibGUpKGUsdCl9ZnVuY3Rpb24gcChlLHQscixuLGEpe3N3aXRjaChhLnRhZyl7Y2FzZSBpLk5hdmlnYXRpb25SZXN1bHRUYWcuTVBBOnJldHVybiBoKHQscixhLmRhdGEsbik7Y2FzZSBpLk5hdmlnYXRpb25SZXN1bHRUYWcuU3VjY2Vzczp7ci5jYWNoZT1hLmRhdGEuY2FjaGVOb2RlLHIucGF0Y2hlZFRyZWU9YS5kYXRhLmZsaWdodFJvdXRlclN0YXRlLHIucmVuZGVyZWRTZWFyY2g9YS5kYXRhLnJlbmRlcmVkU2VhcmNoLHIuY2Fub25pY2FsVXJsPWEuZGF0YS5jYW5vbmljYWxVcmwsci5zY3JvbGxhYmxlU2VnbWVudHM9YS5kYXRhLnNjcm9sbGFibGVTZWdtZW50cz8/dm9pZCAwLHIuc2hvdWxkU2Nyb2xsPWEuZGF0YS5zaG91bGRTY3JvbGwsci5oYXNoRnJhZ21lbnQ9YS5kYXRhLmhhc2g7bGV0IG49bmV3IFVSTCh0LmNhbm9uaWNhbFVybCxlKTtyZXR1cm4gZS5wYXRobmFtZT09PW4ucGF0aG5hbWUmJmUuc2VhcmNoPT09bi5zZWFyY2gmJmUuaGFzaCE9PW4uaGFzaCYmKHIub25seUhhc2hDaGFuZ2U9ITAsci5zaG91bGRTY3JvbGw9YS5kYXRhLnNob3VsZFNjcm9sbCxyLmhhc2hGcmFnbWVudD1lLmhhc2gsci5zY3JvbGxhYmxlU2VnbWVudHM9W10pLCgwLHUuaGFuZGxlTXV0YWJsZSkodCxyKX1jYXNlIGkuTmF2aWdhdGlvblJlc3VsdFRhZy5Bc3luYzpyZXR1cm4gYS5kYXRhLnRoZW4oYT0+cChlLHQscixuLGEpLCgpPT50KTtkZWZhdWx0OnJldHVybiB0fX1mdW5jdGlvbiB5KGUsdCl7bGV0e3VybDpyLGlzRXh0ZXJuYWxVcmw6bixuYXZpZ2F0ZVR5cGU6YSxzaG91bGRTY3JvbGw6dX09dCxpPXt9LGM9KDAsbC5jcmVhdGVIcmVmRnJvbVVybCkociksZj0icHVzaCI9PT1hO2lmKGkucHJlc2VydmVDdXN0b21IaXN0b3J5U3RhdGU9ITEsaS5wZW5kaW5nUHVzaD1mLG4pcmV0dXJuIGgoZSxpLHIudG9TdHJpbmcoKSxmKTtpZihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiX19uZXh0LXBhZ2UtcmVkaXJlY3QiKSlyZXR1cm4gaChlLGksYyxmKTtsZXQgZD1uZXcgVVJMKGUuY2Fub25pY2FsVXJsLGxvY2F0aW9uLm9yaWdpbikseT0oMCxvLm5hdmlnYXRlKShyLGQsZS5jYWNoZSxlLnRyZWUsZS5uZXh0VXJsLHMuRnJlc2huZXNzUG9saWN5LkRlZmF1bHQsdSxpKTtyZXR1cm4gcChyLGUsaSxmLHkpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDYxNzM5LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJoYXNJbnRlcmNlcHRpb25Sb3V0ZUluQ3VycmVudFRyZWUiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiBlKFt0LHJdKXtpZihBcnJheS5pc0FycmF5KHQpJiYoImRpKC4uKSguLikiPT09dFsyXXx8ImNpKC4uKSguLikiPT09dFsyXXx8ImRpKC4pIj09PXRbMl18fCJjaSguKSI9PT10WzJdfHwiZGkoLi4pIj09PXRbMl18fCJjaSguLikiPT09dFsyXXx8ImRpKC4uLikiPT09dFsyXXx8ImNpKC4uLikiPT09dFsyXSl8fCJzdHJpbmciPT10eXBlb2YgdCYmKDAsbi5pc0ludGVyY2VwdGlvblJvdXRlQXBwUGF0aCkodCkpcmV0dXJuITA7aWYocil7Zm9yKGxldCB0IGluIHIpaWYoZShyW3RdKSlyZXR1cm4hMH1yZXR1cm4hMX19fSk7bGV0IG49ZS5yKDU0NjgyKTsoImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSw3NzczMywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj17cmVmcmVzaER5bmFtaWNEYXRhOmZ1bmN0aW9uKCl7cmV0dXJuIGZ9LHJlZnJlc2hSZWR1Y2VyOmZ1bmN0aW9uKCl7cmV0dXJuIHN9fTtmb3IodmFyIGEgaW4gbilPYmplY3QuZGVmaW5lUHJvcGVydHkocixhLHtlbnVtZXJhYmxlOiEwLGdldDpuW2FdfSk7bGV0IGw9ZS5yKDU0MDExKSx1PWUucig2NTQ2Myksbz1lLnIoNDQ2NjcpLGk9ZS5yKDYxNzM5KSxjPWUucigxODkzOSk7ZnVuY3Rpb24gcyhlKXtsZXQgdD1lLm5leHRVcmwscj1lLnRyZWU7cmV0dXJuKDAsby5yZXZhbGlkYXRlRW50aXJlQ2FjaGUpKHQsciksZihlLGMuRnJlc2huZXNzUG9saWN5LlJlZnJlc2hBbGwpfWZ1bmN0aW9uIGYoZSx0KXtsZXQgcj1lLm5leHRVcmwsbj0oMCxpLmhhc0ludGVyY2VwdGlvblJvdXRlSW5DdXJyZW50VHJlZSkoZS50cmVlKT9lLnByZXZpb3VzTmV4dFVybHx8cjpudWxsLGE9ZS5jYW5vbmljYWxVcmwsbz1uZXcgVVJMKGEsbG9jYXRpb24ub3JpZ2luKSxjPWUudHJlZSxzPXt0cmVlOmUudHJlZSxyZW5kZXJlZFNlYXJjaDplLnJlbmRlcmVkU2VhcmNoLGRhdGE6bnVsbCxoZWFkOm51bGx9LGY9RGF0ZS5ub3coKSxkPSgwLHUubmF2aWdhdGVUb1NlZWRlZFJvdXRlKShmLG8sYSxzLG8sZS5jYWNoZSxjLHQsbiwhMCksaD17fTtyZXR1cm4gaC5wcmVzZXJ2ZUN1c3RvbUhpc3RvcnlTdGF0ZT0hMSwoMCxsLmhhbmRsZU5hdmlnYXRpb25SZXN1bHQpKG8sZSxoLCExLGQpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDYwNTUzLChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJzZXJ2ZXJQYXRjaFJlZHVjZXIiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBpfX0pO2xldCBuPWUucig4NTU5NCksYT1lLnIoNTQwMTEpLGw9ZS5yKDY1NDYzKSx1PWUucig3NzczMyksbz1lLnIoMTg5MzkpO2Z1bmN0aW9uIGkoZSx0KXtsZXQgcj17fTtyLnByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlPSExO2xldCBpPXQubXBhLGM9bmV3IFVSTCh0LnVybCxsb2NhdGlvbi5vcmlnaW4pLHM9dC5zZWVkO2lmKGl8fG51bGw9PT1zKXJldHVybigwLGEuaGFuZGxlRXh0ZXJuYWxVcmwpKGUscixjLmhyZWYsITEpO2xldCBmPW5ldyBVUkwoZS5jYW5vbmljYWxVcmwsbG9jYXRpb24ub3JpZ2luKTtpZih0LnByZXZpb3VzVHJlZSE9PWUudHJlZSlyZXR1cm4oMCx1LnJlZnJlc2hSZWR1Y2VyKShlKTtsZXQgZD0oMCxuLmNyZWF0ZUhyZWZGcm9tVXJsKShjKSxoPXQubmV4dFVybCxwPURhdGUubm93KCkseT0oMCxsLm5hdmlnYXRlVG9TZWVkZWRSb3V0ZSkocCxjLGQscyxmLGUuY2FjaGUsZS50cmVlLG8uRnJlc2huZXNzUG9saWN5LlJlZnJlc2hBbGwsaCwhMCk7cmV0dXJuKDAsYS5oYW5kbGVOYXZpZ2F0aW9uUmVzdWx0KShjLGUsciwhMSx5KX0oImZ1bmN0aW9uIj09dHlwZW9mIHIuZGVmYXVsdHx8Im9iamVjdCI9PXR5cGVvZiByLmRlZmF1bHQmJm51bGwhPT1yLmRlZmF1bHQpJiZ2b2lkIDA9PT1yLmRlZmF1bHQuX19lc01vZHVsZSYmKE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLmRlZmF1bHQsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5hc3NpZ24oci5kZWZhdWx0LHIpLHQuZXhwb3J0cz1yLmRlZmF1bHQpfSwzMjgzOCwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwicmVzdG9yZVJlZHVjZXIiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBvfX0pO2xldCBuPWUucig4NTU5NCksYT1lLnIoMTgxNjcpLGw9ZS5yKDE4OTM5KSx1PWUucig1NDAxMSk7ZnVuY3Rpb24gbyhlLHQpe2xldCByLG8saT10Lmhpc3RvcnlTdGF0ZTtpPyhyPWkudHJlZSxvPWkucmVuZGVyZWRTZWFyY2gpOihyPWUudHJlZSxvPWUucmVuZGVyZWRTZWFyY2gpO2xldCBjPW5ldyBVUkwoZS5jYW5vbmljYWxVcmwsbG9jYXRpb24ub3JpZ2luKSxzPXQudXJsLGY9KDAsbi5jcmVhdGVIcmVmRnJvbVVybCkocyksZD0oMCxhLmV4dHJhY3RQYXRoRnJvbUZsaWdodFJvdXRlclN0YXRlKShyKT8/cy5wYXRobmFtZSxoPURhdGUubm93KCkscD17c2Nyb2xsYWJsZVNlZ21lbnRzOm51bGwsc2VwYXJhdGVSZWZyZXNoVXJsczpudWxsfSx5PSgwLGwuc3RhcnRQUFJOYXZpZ2F0aW9uKShoLGMsZS5jYWNoZSxlLnRyZWUscixsLkZyZXNobmVzc1BvbGljeS5IaXN0b3J5VHJhdmVyc2FsLG51bGwsbnVsbCxudWxsLG51bGwsITEsITEscCk7cmV0dXJuIG51bGw9PT15PygwLHUuaGFuZGxlRXh0ZXJuYWxVcmwpKGUse3ByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlOiEwfSxmLCExKTooKDAsbC5zcGF3bkR5bmFtaWNSZXF1ZXN0cykoeSxzLGQsbC5GcmVzaG5lc3NQb2xpY3kuSGlzdG9yeVRyYXZlcnNhbCxwKSx7Y2Fub25pY2FsVXJsOmYscmVuZGVyZWRTZWFyY2g6byxwdXNoUmVmOntwZW5kaW5nUHVzaDohMSxtcGFOYXZpZ2F0aW9uOiExLHByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlOiEwfSxmb2N1c0FuZFNjcm9sbFJlZjplLmZvY3VzQW5kU2Nyb2xsUmVmLGNhY2hlOnkubm9kZSx0cmVlOnIsbmV4dFVybDpkLHByZXZpb3VzTmV4dFVybDpudWxsLGRlYnVnSW5mbzpudWxsfSl9KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sNTk2NjIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImhtclJlZnJlc2hSZWR1Y2VyIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbH19KTtsZXQgbj1lLnIoNzc3MzMpLGE9ZS5yKDE4OTM5KTtmdW5jdGlvbiBsKGUpe3JldHVybigwLG4ucmVmcmVzaER5bmFtaWNEYXRhKShlLGEuRnJlc2huZXNzUG9saWN5LkhNUlJlZnJlc2gpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDY4OTM0LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJhc3NpZ25Mb2NhdGlvbiIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9fSk7bGV0IG49ZS5yKDE0ODU3KTtmdW5jdGlvbiBhKGUsdCl7aWYoZS5zdGFydHNXaXRoKCIuIikpe2xldCByPXQub3JpZ2luK3QucGF0aG5hbWU7cmV0dXJuIG5ldyBVUkwoKHIuZW5kc1dpdGgoIi8iKT9yOnIrIi8iKStlKX1yZXR1cm4gbmV3IFVSTCgoMCxuLmFkZEJhc2VQYXRoKShlKSx0LmhyZWYpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDk5ODk2LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJwYXRoSGFzUHJlZml4Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gYX19KTtsZXQgbj1lLnIoOTgwNjMpO2Z1bmN0aW9uIGEoZSx0KXtpZigic3RyaW5nIiE9dHlwZW9mIGUpcmV0dXJuITE7bGV0e3BhdGhuYW1lOnJ9PSgwLG4ucGFyc2VQYXRoKShlKTtyZXR1cm4gcj09PXR8fHIuc3RhcnRzV2l0aCh0KyIvIil9fSwzODkzMywoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiaGFzQmFzZVBhdGgiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBhfX0pO2xldCBuPWUucig5OTg5Nik7ZnVuY3Rpb24gYShlKXtyZXR1cm4oMCxuLnBhdGhIYXNQcmVmaXgpKGUsIiIpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDI0MDQyLChlLHQscik9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihlKXtyZXR1cm4gZX1PYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInJlbW92ZUJhc2VQYXRoIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gbn19KSxlLnIoMzg5MzMpLCgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDgwOTI0LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtleHRyYWN0SW5mb0Zyb21TZXJ2ZXJSZWZlcmVuY2VJZDpmdW5jdGlvbigpe3JldHVybiBsfSxvbWl0VW51c2VkQXJnczpmdW5jdGlvbigpe3JldHVybiB1fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2Z1bmN0aW9uIGwoZSl7bGV0IHQ9cGFyc2VJbnQoZS5zbGljZSgwLDIpLDE2KSxyPXQ+PjEmNjMsbj1BcnJheSg2KTtmb3IobGV0IGU9MDtlPDY7ZSsrKXtsZXQgdD1yPj41LWUmMTtuW2VdPTE9PT10fXJldHVybnt0eXBlOjE9PSh0Pj43JjEpPyJ1c2UtY2FjaGUiOiJzZXJ2ZXItYWN0aW9uIix1c2VkQXJnczpuLGhhc1Jlc3RBcmdzOjE9PSgxJnQpfX1mdW5jdGlvbiB1KGUsdCl7bGV0IHI9QXJyYXkoZS5sZW5ndGgpO2ZvcihsZXQgbj0wO248ZS5sZW5ndGg7bisrKShuPDYmJnQudXNlZEFyZ3Nbbl18fG4+PTYmJnQuaGFzUmVzdEFyZ3MpJiYocltuXT1lW25dKTtyZXR1cm4gcn19LDc2ODQ0LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtBY3Rpb25EaWROb3RSZXZhbGlkYXRlOmZ1bmN0aW9uKCl7cmV0dXJuIGx9LEFjdGlvbkRpZFJldmFsaWRhdGVEeW5hbWljT25seTpmdW5jdGlvbigpe3JldHVybiBvfSxBY3Rpb25EaWRSZXZhbGlkYXRlU3RhdGljQW5kRHluYW1pYzpmdW5jdGlvbigpe3JldHVybiB1fX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPTAsdT0xLG89Mn0sNjcwMzMsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtsZXQgbjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInNlcnZlckFjdGlvblJlZHVjZXIiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBqfX0pO2xldCBhPWUucigzMDkzMSksbD1lLnIoODk1OTQpLHU9ZS5yKDM0NjQxKSxvPWUucig3NTA1MSksaT1lLnIoNzUwNDUpLGM9ZS5yKDY4OTM0KSxzPWUucig4NTU5NCksZj1lLnIoNTQwMTEpLGQ9ZS5yKDYxNzM5KSxoPWUucig2NzYyOCkscD1lLnIoNDE3MjEpLHk9ZS5yKDkwODYyKSxnPWUucigyNDA0MiksUj1lLnIoMzg5MzMpLF89ZS5yKDgwOTI0KSxQPWUucig0NDY2Nyksdj1lLnIoODg3NzQpLEU9ZS5yKDY1NDYzKSxtPWUucig3Njg0NCksYj1lLnIoMjkzNjIpLFM9ZS5yKDE4OTM5KSxUPWkuY3JlYXRlRnJvbUZldGNoO2FzeW5jIGZ1bmN0aW9uIE8oZSx0LHthY3Rpb25JZDpyLGFjdGlvbkFyZ3M6c30pe2xldCBmLGQscCxnLFIsUD0oMCxpLmNyZWF0ZVRlbXBvcmFyeVJlZmVyZW5jZVNldCkoKSxFPSgwLF8uZXh0cmFjdEluZm9Gcm9tU2VydmVyUmVmZXJlbmNlSWQpKHIpLGI9InVzZS1jYWNoZSI9PT1FLnR5cGU/KDAsXy5vbWl0VW51c2VkQXJncykocyxFKTpzLFM9YXdhaXQgKDAsaS5lbmNvZGVSZXBseSkoYix7dGVtcG9yYXJ5UmVmZXJlbmNlczpQfSksTz17QWNjZXB0OnUuUlNDX0NPTlRFTlRfVFlQRV9IRUFERVIsW3UuQUNUSU9OX0hFQURFUl06cixbdS5ORVhUX1JPVVRFUl9TVEFURV9UUkVFX0hFQURFUl06KDAsaC5wcmVwYXJlRmxpZ2h0Um91dGVyU3RhdGVGb3JSZXF1ZXN0KShlLnRyZWUpfSxqPSgwLHYuZ2V0RGVwbG95bWVudElkKSgpO2omJihPWyJ4LWRlcGxveW1lbnQtaWQiXT1qKSx0JiYoT1t1Lk5FWFRfVVJMXT10KTtsZXQgTT1hd2FpdCBmZXRjaChlLmNhbm9uaWNhbFVybCx7bWV0aG9kOiJQT1NUIixoZWFkZXJzOk8sYm9keTpTfSk7aWYoIjEiPT09TS5oZWFkZXJzLmdldCh1Lk5FWFRfQUNUSU9OX05PVF9GT1VORF9IRUFERVIpKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXcgby5VbnJlY29nbml6ZWRBY3Rpb25FcnJvcihgU2VydmVyIEFjdGlvbiAiJHtyfSIgd2FzIG5vdCBmb3VuZCBvbiB0aGUgc2VydmVyLiAKUmVhZCBtb3JlOiBodHRwczovL25leHRqcy5vcmcvZG9jcy9tZXNzYWdlcy9mYWlsZWQtdG8tZmluZC1zZXJ2ZXItYWN0aW9uYCksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU3MTUiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7bGV0IEE9TS5oZWFkZXJzLmdldCgieC1hY3Rpb24tcmVkaXJlY3QiKSxbVSxDXT1BPy5zcGxpdCgiOyIpfHxbXTtzd2l0Y2goQyl7Y2FzZSJwdXNoIjpmPXkuUmVkaXJlY3RUeXBlLnB1c2g7YnJlYWs7Y2FzZSJyZXBsYWNlIjpmPXkuUmVkaXJlY3RUeXBlLnJlcGxhY2U7YnJlYWs7ZGVmYXVsdDpmPXZvaWQgMH1sZXQgTj0hIU0uaGVhZGVycy5nZXQodS5ORVhUX0lTX1BSRVJFTkRFUl9IRUFERVIpLHc9bS5BY3Rpb25EaWROb3RSZXZhbGlkYXRlO3RyeXtsZXQgZT1NLmhlYWRlcnMuZ2V0KCJ4LWFjdGlvbi1yZXZhbGlkYXRlZCIpO2lmKGUpe2xldCB0PUpTT04ucGFyc2UoZSk7KHQ9PT1tLkFjdGlvbkRpZFJldmFsaWRhdGVTdGF0aWNBbmREeW5hbWljfHx0PT09bS5BY3Rpb25EaWRSZXZhbGlkYXRlRHluYW1pY09ubHkpJiYodz10KX19Y2F0Y2h7fWxldCBGPVU/KDAsYy5hc3NpZ25Mb2NhdGlvbikoVSxuZXcgVVJMKGUuY2Fub25pY2FsVXJsLHdpbmRvdy5sb2NhdGlvbi5ocmVmKSk6dm9pZCAwLEk9TS5oZWFkZXJzLmdldCgiY29udGVudC10eXBlIiksTD0hIShJJiZJLnN0YXJ0c1dpdGgodS5SU0NfQ09OVEVOVF9UWVBFX0hFQURFUikpO2lmKCFMJiYhRil0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoTS5zdGF0dXM+PTQwMCYmInRleHQvcGxhaW4iPT09ST9hd2FpdCBNLnRleHQoKToiQW4gdW5leHBlY3RlZCByZXNwb25zZSB3YXMgcmVjZWl2ZWQgZnJvbSB0aGUgc2VydmVyLiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMzk0IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pO2lmKEwpe2xldCBlPWF3YWl0IFQoUHJvbWlzZS5yZXNvbHZlKE0pLHtjYWxsU2VydmVyOmEuY2FsbFNlcnZlcixmaW5kU291cmNlTWFwVVJMOmwuZmluZFNvdXJjZU1hcFVSTCx0ZW1wb3JhcnlSZWZlcmVuY2VzOlAsZGVidWdDaGFubmVsOm4mJm4oTyl9KTtkPUY/dm9pZCAwOmUuYTtsZXQgdD0oMCxoLm5vcm1hbGl6ZUZsaWdodERhdGEpKGUuZik7IiIhPT10JiYocD10LGc9ZS5xLFI9ZS5pKX1lbHNlIGQ9dm9pZCAwLHA9dm9pZCAwLGc9dm9pZCAwLFI9dm9pZCAwO3JldHVybnthY3Rpb25SZXN1bHQ6ZCxhY3Rpb25GbGlnaHREYXRhOnAsYWN0aW9uRmxpZ2h0RGF0YVJlbmRlcmVkU2VhcmNoOmcsYWN0aW9uRmxpZ2h0RGF0YUNvdWxkQmVJbnRlcmNlcHRlZDpSLHJlZGlyZWN0TG9jYXRpb246RixyZWRpcmVjdFR5cGU6ZixyZXZhbGlkYXRpb25LaW5kOncsaXNQcmVyZW5kZXI6Tn19ZnVuY3Rpb24gaihlLHQpe2xldHtyZXNvbHZlOnIscmVqZWN0Om59PXQsYT17fTthLnByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlPSExO2xldCBsPShlLnByZXZpb3VzTmV4dFVybHx8ZS5uZXh0VXJsKSYmKDAsZC5oYXNJbnRlcmNlcHRpb25Sb3V0ZUluQ3VycmVudFRyZWUpKGUudHJlZSk/ZS5wcmV2aW91c05leHRVcmx8fGUubmV4dFVybDpudWxsO3JldHVybiBPKGUsbCx0KS50aGVuKGFzeW5jKHtyZXZhbGlkYXRpb25LaW5kOnUsYWN0aW9uUmVzdWx0Om8sYWN0aW9uRmxpZ2h0RGF0YTppLGFjdGlvbkZsaWdodERhdGFSZW5kZXJlZFNlYXJjaDpjLGFjdGlvbkZsaWdodERhdGFDb3VsZEJlSW50ZXJjZXB0ZWQ6ZCxyZWRpcmVjdExvY2F0aW9uOmgscmVkaXJlY3RUeXBlOnB9KT0+e3UhPT1tLkFjdGlvbkRpZE5vdFJldmFsaWRhdGUmJih0LmRpZFJldmFsaWRhdGU9ITAsdT09PW0uQWN0aW9uRGlkUmV2YWxpZGF0ZVN0YXRpY0FuZER5bmFtaWMmJigwLFAucmV2YWxpZGF0ZUVudGlyZUNhY2hlKShsLGUudHJlZSkpO2xldCBfPXAhPT15LlJlZGlyZWN0VHlwZS5yZXBsYWNlO2lmKGUucHVzaFJlZi5wZW5kaW5nUHVzaD1fLGEucGVuZGluZ1B1c2g9Xyx2b2lkIDAhPT1oKXtsZXQgdD1wfHx5LlJlZGlyZWN0VHlwZS5wdXNoO2lmKCgwLGIuaXNFeHRlcm5hbFVSTCkoaCkpe2xldCByPWguaHJlZjtyZXR1cm4gbihNKHIsdCkpLCgwLGYuaGFuZGxlRXh0ZXJuYWxVcmwpKGUsYSxyLF8pfXtsZXQgZT0oMCxzLmNyZWF0ZUhyZWZGcm9tVXJsKShoLCExKTtuKE0oKDAsUi5oYXNCYXNlUGF0aCkoZSk/KDAsZy5yZW1vdmVCYXNlUGF0aCkoZSk6ZSx0KSl9fWVsc2UgcihvKTtpZih2b2lkIDA9PT1oJiZ1PT09bS5BY3Rpb25EaWROb3RSZXZhbGlkYXRlJiZ2b2lkIDA9PT1pKXJldHVybiBlO2lmKHZvaWQgMD09PWkmJnZvaWQgMCE9PWgpcmV0dXJuKDAsZi5oYW5kbGVFeHRlcm5hbFVybCkoZSxhLGguaHJlZixfKTtpZigic3RyaW5nIj09dHlwZW9mIGkpcmV0dXJuKDAsZi5oYW5kbGVFeHRlcm5hbFVybCkoZSxhLGksXyk7bGV0IHY9bmV3IFVSTChlLmNhbm9uaWNhbFVybCxsb2NhdGlvbi5vcmlnaW4pLFQ9dm9pZCAwIT09aD9oOnYsTz1lLnRyZWUsaj11PT09bS5BY3Rpb25EaWROb3RSZXZhbGlkYXRlP1MuRnJlc2huZXNzUG9saWN5LkRlZmF1bHQ6Uy5GcmVzaG5lc3NQb2xpY3kuUmVmcmVzaEFsbDtpZih2b2lkIDAhPT1pKXtsZXQgdD1pWzBdO2lmKHZvaWQgMCE9PXQmJnQuaXNSb290UmVuZGVyJiZ2b2lkIDAhPT1jJiZ2b2lkIDAhPT1kKXtsZXQgcj0oMCxzLmNyZWF0ZUhyZWZGcm9tVXJsKShUKSxuPXt0cmVlOnQudHJlZSxyZW5kZXJlZFNlYXJjaDpjLGRhdGE6dC5zZWVkRGF0YSxoZWFkOnQuaGVhZH0sdT1EYXRlLm5vdygpLG89KDAsRS5uYXZpZ2F0ZVRvU2VlZGVkUm91dGUpKHUsVCxyLG4sdixlLmNhY2hlLE8saixsLCEwKTtyZXR1cm4oMCxmLmhhbmRsZU5hdmlnYXRpb25SZXN1bHQpKFQsZSxhLF8sbyl9fWxldCBBPSgwLEUubmF2aWdhdGUpKFQsdixlLmNhY2hlLE8sbCxqLCEwLGEpO3JldHVybigwLGYuaGFuZGxlTmF2aWdhdGlvblJlc3VsdCkoVCxlLGEsXyxBKX0sdD0+KG4odCksZSkpfWZ1bmN0aW9uIE0oZSx0KXtsZXQgcj0oMCxwLmdldFJlZGlyZWN0RXJyb3IpKGUsdCk7cmV0dXJuIHIuaGFuZGxlZD0hMCxyfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDY0MSwoZSx0LHIpPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwicmVkdWNlciIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHN9fSk7bGV0IG49ZS5yKDU5NDMwKSxhPWUucig1NDAxMSksbD1lLnIoNjA1NTMpLHU9ZS5yKDMyODM4KSxvPWUucig3NzczMyksaT1lLnIoNTk2NjIpLGM9ZS5yKDY3MDMzKSxzPSJ1Ijx0eXBlb2Ygd2luZG93P2Z1bmN0aW9uKGUsdCl7cmV0dXJuIGV9OmZ1bmN0aW9uKGUsdCl7c3dpdGNoKHQudHlwZSl7Y2FzZSBuLkFDVElPTl9OQVZJR0FURTpyZXR1cm4oMCxhLm5hdmlnYXRlUmVkdWNlcikoZSx0KTtjYXNlIG4uQUNUSU9OX1NFUlZFUl9QQVRDSDpyZXR1cm4oMCxsLnNlcnZlclBhdGNoUmVkdWNlcikoZSx0KTtjYXNlIG4uQUNUSU9OX1JFU1RPUkU6cmV0dXJuKDAsdS5yZXN0b3JlUmVkdWNlcikoZSx0KTtjYXNlIG4uQUNUSU9OX1JFRlJFU0g6cmV0dXJuKDAsby5yZWZyZXNoUmVkdWNlcikoZSk7Y2FzZSBuLkFDVElPTl9ITVJfUkVGUkVTSDpyZXR1cm4oMCxpLmhtclJlZnJlc2hSZWR1Y2VyKShlKTtjYXNlIG4uQUNUSU9OX1NFUlZFUl9BQ1RJT046cmV0dXJuKDAsYy5zZXJ2ZXJBY3Rpb25SZWR1Y2VyKShlLHQpO2RlZmF1bHQ6dGhyb3cgT2JqZWN0LmRlZmluZVByb3BlcnR5KEVycm9yKCJVbmtub3duIGFjdGlvbiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFMjk1IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfX07KCJmdW5jdGlvbiI9PXR5cGVvZiByLmRlZmF1bHR8fCJvYmplY3QiPT10eXBlb2Ygci5kZWZhdWx0JiZudWxsIT09ci5kZWZhdWx0KSYmdm9pZCAwPT09ci5kZWZhdWx0Ll9fZXNNb2R1bGUmJihPYmplY3QuZGVmaW5lUHJvcGVydHkoci5kZWZhdWx0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxPYmplY3QuYXNzaWduKHIuZGVmYXVsdCxyKSx0LmV4cG9ydHM9ci5kZWZhdWx0KX0sMzQwNTIsKGUsdCxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkociwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsInByZWZldGNoIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gb319KTtsZXQgbj1lLnIoMjkzNjIpLGE9ZS5yKDE2MzE2KSxsPWUucig3NTc4MCksdT1lLnIoNTI0MTMpO2Z1bmN0aW9uIG8oZSx0LHIsbyxpKXtsZXQgYz0oMCxuLmNyZWF0ZVByZWZldGNoVVJMKShlKTtpZihudWxsPT09YylyZXR1cm47bGV0IHM9KDAsYS5jcmVhdGVDYWNoZUtleSkoYy5ocmVmLHQpOygwLGwuc2NoZWR1bGVQcmVmZXRjaFRhc2spKHMscixvLHUuUHJlZmV0Y2hQcmlvcml0eS5EZWZhdWx0LGkpfSgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9LDg0Mzk1LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBuPXtjcmVhdGVNdXRhYmxlQWN0aW9uUXVldWU6ZnVuY3Rpb24oKXtyZXR1cm4gX30sZGlzcGF0Y2hOYXZpZ2F0ZUFjdGlvbjpmdW5jdGlvbigpe3JldHVybiBFfSxkaXNwYXRjaFRyYXZlcnNlQWN0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIG19LGdldEN1cnJlbnRBcHBSb3V0ZXJTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBQfSxwdWJsaWNBcHBSb3V0ZXJJbnN0YW5jZTpmdW5jdGlvbigpe3JldHVybiBifX07Zm9yKHZhciBhIGluIG4pT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsYSx7ZW51bWVyYWJsZTohMCxnZXQ6blthXX0pO2xldCBsPWUucig1OTQzMCksdT1lLnIoNjQxKSxvPWUucig3NTIwMSksaT1lLnIoOTE3NjgpLGM9ZS5yKDUyNDEzKSxzPWUucigzNDA1MiksZj1lLnIoOTQ4NzkpLGQ9ZS5yKDE0ODU3KSxoPWUucigyOTM2MikscD1lLnIoOTgyODMpO2Z1bmN0aW9uIHkoZSx0KXtudWxsIT09ZS5wZW5kaW5nPyhlLnBlbmRpbmc9ZS5wZW5kaW5nLm5leHQsbnVsbCE9PWUucGVuZGluZyYmZyh7YWN0aW9uUXVldWU6ZSxhY3Rpb246ZS5wZW5kaW5nLHNldFN0YXRlOnR9KSk6ZS5uZWVkc1JlZnJlc2gmJihlLm5lZWRzUmVmcmVzaD0hMSxlLmRpc3BhdGNoKHt0eXBlOmwuQUNUSU9OX1JFRlJFU0h9LHQpKX1hc3luYyBmdW5jdGlvbiBnKHthY3Rpb25RdWV1ZTplLGFjdGlvbjp0LHNldFN0YXRlOnJ9KXtsZXQgbj1lLnN0YXRlO2UucGVuZGluZz10O2xldCBhPXQucGF5bG9hZCx1PWUuYWN0aW9uKG4sYSk7ZnVuY3Rpb24gbyhuKXtpZih0LmRpc2NhcmRlZCl7dC5wYXlsb2FkLnR5cGU9PT1sLkFDVElPTl9TRVJWRVJfQUNUSU9OJiZ0LnBheWxvYWQuZGlkUmV2YWxpZGF0ZSYmKGUubmVlZHNSZWZyZXNoPSEwKSx5KGUscik7cmV0dXJufWUuc3RhdGU9bix5KGUsciksdC5yZXNvbHZlKG4pfSgwLGkuaXNUaGVuYWJsZSkodSk/dS50aGVuKG8sbj0+e3koZSxyKSx0LnJlamVjdChuKX0pOm8odSl9bGV0IFI9bnVsbDtmdW5jdGlvbiBfKGUsdCl7bGV0IHI9e3N0YXRlOmUsZGlzcGF0Y2g6KGUsdCk9PihmdW5jdGlvbihlLHQscil7bGV0IG49e3Jlc29sdmU6cixyZWplY3Q6KCk9Pnt9fTtpZih0LnR5cGUhPT1sLkFDVElPTl9SRVNUT1JFKXtsZXQgZT1uZXcgUHJvbWlzZSgoZSx0KT0+e249e3Jlc29sdmU6ZSxyZWplY3Q6dH19KTsoMCxvLnN0YXJ0VHJhbnNpdGlvbikoKCk9PntyKGUpfSl9bGV0IGE9e3BheWxvYWQ6dCxuZXh0Om51bGwscmVzb2x2ZTpuLnJlc29sdmUscmVqZWN0Om4ucmVqZWN0fTtudWxsPT09ZS5wZW5kaW5nPyhlLmxhc3Q9YSxnKHthY3Rpb25RdWV1ZTplLGFjdGlvbjphLHNldFN0YXRlOnJ9KSk6dC50eXBlPT09bC5BQ1RJT05fTkFWSUdBVEV8fHQudHlwZT09PWwuQUNUSU9OX1JFU1RPUkU/KGUucGVuZGluZy5kaXNjYXJkZWQ9ITAsYS5uZXh0PWUucGVuZGluZy5uZXh0LGcoe2FjdGlvblF1ZXVlOmUsYWN0aW9uOmEsc2V0U3RhdGU6cn0pKToobnVsbCE9PWUubGFzdCYmKGUubGFzdC5uZXh0PWEpLGUubGFzdD1hKX0pKHIsZSx0KSxhY3Rpb246YXN5bmMoZSx0KT0+KDAsdS5yZWR1Y2VyKShlLHQpLHBlbmRpbmc6bnVsbCxsYXN0Om51bGwsb25Sb3V0ZXJUcmFuc2l0aW9uU3RhcnQ6bnVsbCE9PXQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0Lm9uUm91dGVyVHJhbnNpdGlvblN0YXJ0P3Qub25Sb3V0ZXJUcmFuc2l0aW9uU3RhcnQ6bnVsbH07aWYoInUiPnR5cGVvZiB3aW5kb3cpe2lmKG51bGwhPT1SKXRocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiSW50ZXJuYWwgTmV4dC5qcyBFcnJvcjogY3JlYXRlTXV0YWJsZUFjdGlvblF1ZXVlIHdhcyBjYWxsZWQgbW9yZSB0aGFuIG9uY2UiKSwiX19ORVhUX0VSUk9SX0NPREUiLHt2YWx1ZToiRTYyNCIsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KTtSPXJ9cmV0dXJuIHJ9ZnVuY3Rpb24gUCgpe3JldHVybiBudWxsIT09Uj9SLnN0YXRlOm51bGx9ZnVuY3Rpb24gdigpe3JldHVybiBudWxsIT09Uj9SLm9uUm91dGVyVHJhbnNpdGlvblN0YXJ0Om51bGx9ZnVuY3Rpb24gRShlLHQscixuKXtsZXQgYT1uZXcgVVJMKCgwLGQuYWRkQmFzZVBhdGgpKGUpLGxvY2F0aW9uLmhyZWYpOygwLHAuc2V0TGlua0ZvckN1cnJlbnROYXZpZ2F0aW9uKShuKTtsZXQgdT12KCk7bnVsbCE9PXUmJnUoZSx0KSwoMCxmLmRpc3BhdGNoQXBwUm91dGVyQWN0aW9uKSh7dHlwZTpsLkFDVElPTl9OQVZJR0FURSx1cmw6YSxpc0V4dGVybmFsVXJsOigwLGguaXNFeHRlcm5hbFVSTCkoYSksbG9jYXRpb25TZWFyY2g6bG9jYXRpb24uc2VhcmNoLHNob3VsZFNjcm9sbDpyLG5hdmlnYXRlVHlwZTp0fSl9ZnVuY3Rpb24gbShlLHQpe2xldCByPXYoKTtudWxsIT09ciYmcihlLCJ0cmF2ZXJzZSIpLCgwLGYuZGlzcGF0Y2hBcHBSb3V0ZXJBY3Rpb24pKHt0eXBlOmwuQUNUSU9OX1JFU1RPUkUsdXJsOm5ldyBVUkwoZSksaGlzdG9yeVN0YXRlOnR9KX1sZXQgYj17YmFjazooKT0+d2luZG93Lmhpc3RvcnkuYmFjaygpLGZvcndhcmQ6KCk9PndpbmRvdy5oaXN0b3J5LmZvcndhcmQoKSxwcmVmZXRjaDooZSx0KT0+e2xldCByLG49ZnVuY3Rpb24oKXtpZihudWxsPT09Uil0aHJvdyBPYmplY3QuZGVmaW5lUHJvcGVydHkoRXJyb3IoIkludGVybmFsIE5leHQuanMgZXJyb3I6IFJvdXRlciBhY3Rpb24gZGlzcGF0Y2hlZCBiZWZvcmUgaW5pdGlhbGl6YXRpb24uIiksIl9fTkVYVF9FUlJPUl9DT0RFIix7dmFsdWU6IkU2NjgiLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSk7cmV0dXJuIFJ9KCk7c3dpdGNoKHQ/LmtpbmQ/P2wuUHJlZmV0Y2hLaW5kLkFVVE8pe2Nhc2UgbC5QcmVmZXRjaEtpbmQuQVVUTzpyPWMuRmV0Y2hTdHJhdGVneS5QUFI7YnJlYWs7Y2FzZSBsLlByZWZldGNoS2luZC5GVUxMOnI9Yy5GZXRjaFN0cmF0ZWd5LkZ1bGw7YnJlYWs7ZGVmYXVsdDpyPWMuRmV0Y2hTdHJhdGVneS5QUFJ9KDAscy5wcmVmZXRjaCkoZSxuLnN0YXRlLm5leHRVcmwsbi5zdGF0ZS50cmVlLHIsdD8ub25JbnZhbGlkYXRlPz9udWxsKX0scmVwbGFjZTooZSx0KT0+eygwLG8uc3RhcnRUcmFuc2l0aW9uKSgoKT0+e0UoZSwicmVwbGFjZSIsdD8uc2Nyb2xsPz8hMCxudWxsKX0pfSxwdXNoOihlLHQpPT57KDAsby5zdGFydFRyYW5zaXRpb24pKCgpPT57RShlLCJwdXNoIix0Py5zY3JvbGw/PyEwLG51bGwpfSl9LHJlZnJlc2g6KCk9PnsoMCxvLnN0YXJ0VHJhbnNpdGlvbikoKCk9PnsoMCxmLmRpc3BhdGNoQXBwUm91dGVyQWN0aW9uKSh7dHlwZTpsLkFDVElPTl9SRUZSRVNIfSl9KX0saG1yUmVmcmVzaDooKT0+e3Rocm93IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShFcnJvcigiaG1yUmVmcmVzaCBjYW4gb25seSBiZSB1c2VkIGluIGRldmVsb3BtZW50IG1vZGUuIFBsZWFzZSB1c2UgcmVmcmVzaCBpbnN0ZWFkLiIpLCJfX05FWFRfRVJST1JfQ09ERSIse3ZhbHVlOiJFNDg1IixlbnVtZXJhYmxlOiExLGNvbmZpZ3VyYWJsZTohMH0pfX07InUiPnR5cGVvZiB3aW5kb3cmJndpbmRvdy5uZXh0JiYod2luZG93Lm5leHQucm91dGVyPWIpLCgiZnVuY3Rpb24iPT10eXBlb2Ygci5kZWZhdWx0fHwib2JqZWN0Ij09dHlwZW9mIHIuZGVmYXVsdCYmbnVsbCE9PXIuZGVmYXVsdCkmJnZvaWQgMD09PXIuZGVmYXVsdC5fX2VzTW9kdWxlJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHIuZGVmYXVsdCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksT2JqZWN0LmFzc2lnbihyLmRlZmF1bHQsciksdC5leHBvcnRzPXIuZGVmYXVsdCl9XSk7"}},"time_used":10,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/particles/js/revolution.addon.particles.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.294Z","timestamp":1785143908294,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/particles/js/revolution.addon.particles.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:44 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"5f4e-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 6662\r\nKeep-Alive: timeout=5, max=97\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":24398,"size_decoded":7030,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (555), with CRLF line terminators","md5":"a72230ab29395197895e0c7fe291b7f4","sha1":"e15090aed23a5cc17145cafa5728e4fa4aab2d97","sha256":"f411b4c2a0c940f361d0634e6a065932d76a3815e411c4b02f4cab541ca97ae7","sha512":"535050f52eda479f0d182c53a52d72362dc0faf254c7ef7471f8b4c4ac9ef9955750780594c1ca86fbc1aa473be2843f0ad6dcda29fe3b85684a78ce720176cd","ssdeep":"384:H/XBzn8vtGfJo3R8QvvWnYOnSeRBNy9ISwsJ8NmDmCBFF8st9fDPG:H/xD8vtAoR8JZNy9ISLJ8Udt9fDPG","tlshash":"a1b2614da3f73db3379a73a44afcd153a7b048d12d8624f4fd2c02ae956998600ee674","first_seen":"2023-03-12T11:43:23Z","last_seen":"2026-07-27T09:20:18.355743Z","times_seen":43,"resource_available":true,"data":"LyoNCiAyMDE3IFRoZW1lUHVuY2gNCiBodHRwOi8vd3d3LnRoZW1lcHVuY2guY29tLw0KIEB2ZXJzaW9uICAgMS4wLjANCiovDQo7KGZ1bmN0aW9uKCl7ZnVuY3Rpb24gQihmLGspe2Zvcih2YXIgZyxtPWYubGVuZ3RoO20tLTspZz1mW21dLnJlcGxhY2UoIiMiLCIiKSxnPSJyZ2JhKCIrcGFyc2VJbnQoZy5zdWJzdHJpbmcoMCwyKSwxNikrIiwiK3BhcnNlSW50KGcuc3Vic3RyaW5nKDIsNCksMTYpKyIsIitwYXJzZUludChnLnN1YnN0cmluZyg0LDYpLDE2KSxnPWs/ZysoIiwiK2sudG9GaXhlZCgyKSsiKSIpOmcrIikiLGZbbV09ZztyZXR1cm4gZn1mdW5jdGlvbiB0KGYpe2Y9Zi5yZXBsYWNlKC9eIz8oW2EtZlxkXSkoW2EtZlxkXSkoW2EtZlxkXSkkL2ksZnVuY3Rpb24oZixnLG0sbCl7cmV0dXJuIGcrZyttK20rbCtsfSk7cmV0dXJuKGY9L14jPyhbYS1mXGRdezJ9KShbYS1mXGRdezJ9KShbYS1mXGRdezJ9KSQvaS5leGVjKGYpKT97cjpwYXJzZUludChmWzFdLDE2KSxnOnBhcnNlSW50KGZbMl0sMTYpLGI6cGFyc2VJbnQoZlszXSwxNil9Om51bGx9d2luZG93LlJzUGFydGljbGVzQWRkT249ZnVuY3Rpb24oZil7ZnVuY3Rpb24gayhhLA0KYil7Y2xlYXJUaW1lb3V0KHkpO2NsZWFyVGltZW91dChlKTt2YXIgYz1iP2IubmV4dHNsaWRlLmluZGV4KCkrMToxOyJmaXJzdCI9PT1wJiYocD0xKTsibGFzdCI9PT1uJiYobj1mLnJldm1heHNsaWRlKCkpO2M+PXAmJmM8PW4/KHU9Ii4iK3IrIi10cC1wYXJ0aWNsZXMtIitjLHY/d3x8cEpTRG9tUnNbeF0ucEpTLmZuLnZlbmRvcnMuZHJhdygpOih2PSEwLHg9cEpTRG9tUnMubGVuZ3RoLHBhcnRpY2xlc0pTUnModSxsLHIscSxmKSkseT1zZXRUaW1lb3V0KG0sMTAwKSx3PSEwKTp2JiYocnNwQ2FuY2VsQW5pbUZyYW1lKHBKU0RvbVJzW3hdLnBKUy5mbi5kcmF3QW5pbUZyYW1lKSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZChxKS5zdHlsZS5vcGFjaXR5PTAsdz0hMSk7enx8KHo9ITAsZi5vbigicmV2b2x1dGlvbi5zbGlkZS5vbmJlZm9yZXN3YXAiLGspKX1mdW5jdGlvbiBnKCl7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQocSkuc3R5bGUub3BhY2l0eT0xfWZ1bmN0aW9uIG0oKXt2YXIgYT0NCmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHEpLGI9ZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih1KTtBP2IuYXBwZW5kQ2hpbGQoYSk6QT0hMDthLnN0eWxlLnpJbmRleD1wYXJzZUludChiLmdldEF0dHJpYnV0ZSgiZGF0YS1wYXJ0aWNsZXMtaW5kZXgiKSwxMCk7ZT1zZXRUaW1lb3V0KGcsMjUwKX1pZihmKXt2YXIgbD1mWzBdLm9wdC5wYXJ0aWNsZXMscD1sLnN0YXJ0U2xpZGUsbj1sLmVuZFNsaWRlLGE9bC5wYXJ0aWNsZXMsYj1hLmxpbmVfbGlua2VkLGM9YS5zaGFwZSxkPWEuY29sb3IsaD1jLnN0cm9rZSxhPWgud2lkdGgscj1mWzBdLmlkLHosZSx5LHcseCx1LHYsQSxxO3E9cisiLXJzLXBhcnRpY2xlcyI7ZC52YWx1ZT1kLnZhbHVlLnNwbGl0KCIsIik7aC5jb2xvcj1hP0IoaC5jb2xvci5zcGxpdCgiLCIpLGgub3BhY2l0eSk6aC5jb2xvci5zcGxpdCgiLCIpO2Q9bC5pbnRlcmFjdGl2aXR5LmV2ZW50cy5vbmhvdmVyO2lmKGIuZW5hYmxlfHxkLmVuYWJsZSYmImdyYWIiPT09ZC5tb2RlKWZvcihiPQ0KYi5jb2xvcj1iLmNvbG9yLnNwbGl0KCIsIiksZD1iLmxlbmd0aDtkLS07KWJbZF09dChiW2RdKTsiaW1hZ2UiPT09Yy50eXBlJiYoYz1jLmltYWdlLGMuc3JjPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSJ7e3ZpZXdib3h9fSI+PHBhdGggZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSJ7e3N0cm9rZS1jb2xvcn19IiBzdHJva2Utd2lkdGg9Int7c3Ryb2tlLXdpZHRofX0iIGQ9IicrYy5zcmMrJyI+PC9wYXRoPjwvc3ZnPicsYT8oYj0yKmErMjQsYy5zcmM9Yy5zcmMucmVwbGFjZSgie3tzdHJva2Utd2lkdGh9fSIsYSkucmVwbGFjZSgie3t2aWV3Ym94fX0iLC1hKyIgIistYSsiICIrYisiICIrYikpOmMuc3JjPWMuc3JjLnJlcGxhY2UoInt7dmlld2JveH19IiwiMCAwIDI0IDI0IikucmVwbGFjZSgie3tzdHJva2Utd2lkdGh9fSIsMCkpO2Yub25lKCJyZXZvbHV0aW9uLnNsaWRlLm9ubG9hZGVkIixmdW5jdGlvbigpe3ZhciBhLA0KYj1sLnpJbmRleCxjPXIrIi10cC1wYXJ0aWNsZXMtIixkPWwuaW50ZXJhY3Rpdml0eS5ldmVudHMsZD1kLm9uaG92ZXIuZW5hYmxlfHxkLm9uY2xpY2suZW5hYmxlO2YuZmluZCgiLnRwLXJldnNsaWRlci1zbGlkZXNsaSIpLmVhY2goZnVuY3Rpb24oZSl7aWYoZCl7dmFyIGg9alF1ZXJ5KHRoaXMpO2guZmluZCgiLnNsaWRlbGluayIpLmxlbmd0aD8oYT0hMCwiYmFjayIhPT1oLmRhdGEoInNsaWRlaW5kZXgiKSYmKGI9OTk5KSx0aGlzLmNsYXNzTmFtZSs9IiBycy1wYXJ0aWNsZXMtc2xpZGVsaW5rIik6dGhpcy5jbGFzc05hbWUrPSIgcnMtcGFydGljbGVzLWludGVyYWN0aXZlIn10aGlzLmNsYXNzTmFtZT10aGlzLmNsYXNzTmFtZSsiICIrYysoZSsxKTt0aGlzLnNldEF0dHJpYnV0ZSgiZGF0YS1wYXJ0aWNsZXMtaW5kZXgiLGIpfSk7aWYoYSlqUXVlcnkoImJvZHkiKS5vZmYoImNsaWNrLnJzcGFydGljbGVzIikub24oImNsaWNrLnJzcGFydGljbGVzIiwiLnJzLXBhcnRpY2xlcy1jYW52YXMiLA0KZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcykucHJldigiLnRwLXBhcmFsbGF4LXdyYXAiKS5maW5kKCIuc2xpZGVsaW5rIGEiKTthLmxlbmd0aCYmKGFbMF0uaHJlZj8iX2JsYW5rIiE9PWFbMF0udGFyZ2V0P3dpbmRvdy5sb2NhdGlvbj1hWzBdLmhyZWY6d2luZG93Lm9wZW4oYVswXS5ocmVmKTphLmNsaWNrKCkpfSk7ayghMSwhMSl9KX19O3dpbmRvdy5Sc0Rlc3Ryb3lQYXJ0aWNsZXM9ZnVuY3Rpb24oZil7aWYocEpTRG9tUnMpaWYoZil7dmFyIGs9ZlswXS5pZCxnPXBKU0RvbVJzLmxlbmd0aDtmLm9mZigicmV2b2x1dGlvbi5zbGlkZS5vbmJlZm9yZXN3YXAgcmV2b2x1dGlvbi5zbGlkZS5vbmxvYWRlZCAucnNwYXJ0aWNsZXMiKTtmb3IoZj0wO2Y8ZztmKyspaWYoUEpTRG9tUnNbZl0udHBJZD09PWspe3BKU0RvbVJzW2ZdLnBKUy5mbi52ZW5kb3JzLmRlc3Ryb3lwSlMoKTtwSlNEb21Scy5zcGxpY2UoZiwxKTticmVha319ZWxzZSBmb3IoO3BKU0RvbVJzLmxlbmd0aDspalF1ZXJ5KCIjIisNClBKU0RvbVJzWzBdLnRwSWQpLm9mZigicmV2b2x1dGlvbi5zbGlkZS5vbmJlZm9yZXN3YXAgcmV2b2x1dGlvbi5zbGlkZS5vbmxvYWRlZCAucnNwYXJ0aWNsZXMiKSxwSlNEb21Sc1swXS5wSlMuZm4udmVuZG9ycy5kZXN0cm95cEpTKCkscEpTRG9tUnMuc2hpZnQoKX07dmFyIEM9ZnVuY3Rpb24oZixrLGcsbSxsKXtmdW5jdGlvbiBwKGIsYyxkLGgsZixnLGUsayl7aCE9ZiYmKGEudG1wLmJ1YmJsZV9kdXJhdGlvbl9lbmQ/dm9pZCAwIT1nJiYoYz1oKyhoLShlLWQqKGUtaCkvYS5pbnRlcmFjdGl2aXR5Lm1vZGVzLmJ1YmJsZS5kdXJhdGlvbikpLCJzaXplIj09ayYmKGIucmFkaXVzX2J1YmJsZT1jKSwib3BhY2l0eSI9PWsmJihiLm9wYWNpdHlfYnViYmxlPWMpKTpjPD1hLmludGVyYWN0aXZpdHkubW9kZXMuYnViYmxlLmRpc3RhbmNlPyh2b2lkIDAhPWc/ZzplKSE9aCYmKGM9ZS1kKihlLWgpL2EuaW50ZXJhY3Rpdml0eS5tb2Rlcy5idWJibGUuZHVyYXRpb24sInNpemUiPT1rJiYoYi5yYWRpdXNfYnViYmxlPQ0KYyksIm9wYWNpdHkiPT1rJiYoYi5vcGFjaXR5X2J1YmJsZT1jKSk6KCJzaXplIj09ayYmKGIucmFkaXVzX2J1YmJsZT12b2lkIDApLCJvcGFjaXR5Ij09ayYmKGIub3BhY2l0eV9idWJibGU9dm9pZCAwKSkpfWZ1bmN0aW9uIG4oKXtyZXR1cm4gdGhpcy5jb2xvci5yZ2I/InJnYmEoIit0aGlzLmNvbG9yLnJnYi5yKyIsIit0aGlzLmNvbG9yLnJnYi5nKyIsIit0aGlzLmNvbG9yLnJnYi5iKyIsIit0aGlzLm9wYWNpdHkudG9GaXhlZCgyKSsiKSI6ImhzbGEoIit0aGlzLmNvbG9yLmhzbC5oKyIsIit0aGlzLmNvbG9yLmhzbC5zKyIlLCIrdGhpcy5jb2xvci5oc2wubCsiJSwiK3RoaXMub3BhY2l0eS50b0ZpeGVkKDIpKyIpIn10aGlzLnRwSWQ9bTt2YXIgYT10aGlzLnBKUz17Y2FudmFzOntlbDpmLHc6Zi5vZmZzZXRXaWR0aCxoOmYub2Zmc2V0SGVpZ2h0fSxwYXJ0aWNsZXM6e251bWJlcjp7dmFsdWU6NDAwLGRlbnNpdHk6e2VuYWJsZTohMCx2YWx1ZV9hcmVhOjgwMH19LGNvbG9yOnt2YWx1ZToiI2ZmZiJ9LA0Kc2hhcGU6e3R5cGU6ImNpcmNsZSIsc3Ryb2tlOnt3aWR0aDowLGNvbG9yOiIjZmYwMDAwIn0scG9seWdvbjp7bmJfc2lkZXM6NX0saW1hZ2U6e3NyYzoiIix3aWR0aDoxMDAsaGVpZ2h0OjEwMH19LG9wYWNpdHk6e3ZhbHVlOjEscmFuZG9tOiExLG1pbjouMSxhbmltOntlbmFibGU6ITEsc3BlZWQ6MixvcGFjaXR5X21pbjowLHN5bmM6ITF9fSxzaXplOnt2YWx1ZToyMCxyYW5kb206ITEsbWluOjEsYW5pbTp7ZW5hYmxlOiExLHNwZWVkOjIwLHNpemVfbWluOjAsc3luYzohMX19LGxpbmVfbGlua2VkOntlbmFibGU6ITEsZGlzdGFuY2U6MTAwLGNvbG9yOiIjZmZmIixvcGFjaXR5OjEsd2lkdGg6MX0sbW92ZTp7ZW5hYmxlOiEwLHNwZWVkOjIsZGlyZWN0aW9uOiJub25lIixyYW5kb206ITEsbWluX3NwZWVkOjEsc3RyYWlnaHQ6ITEsb3V0X21vZGU6Im91dCIsYm91bmNlOiExLGF0dHJhY3Q6e2VuYWJsZTohMSxyb3RhdGVYOjNFMyxyb3RhdGVZOjNFM319LGFycmF5OltdfSxpbnRlcmFjdGl2aXR5OntkZXRlY3Rfb246ImNhbnZhcyIsDQpldmVudHM6e29uaG92ZXI6e2VuYWJsZTohMCxtb2RlOiJncmFiIn0sb25jbGljazp7ZW5hYmxlOiEwLG1vZGU6InB1c2gifSxyZXNpemU6ITB9LG1vZGVzOntncmFiOntkaXN0YW5jZToxMDAsbGluZV9saW5rZWQ6e29wYWNpdHk6MX19LGJ1YmJsZTp7ZGlzdGFuY2U6MjAwLHNpemU6ODAsZHVyYXRpb246LjR9LHJlcHVsc2U6e2Rpc3RhbmNlOjIwMCxkdXJhdGlvbjouNH0scHVzaDp7cGFydGljbGVzX25iOjR9LHJlbW92ZTp7cGFydGljbGVzX25iOjJ9fSxtb3VzZTp7fX0scmV0aW5hX2RldGVjdDohMSxvZmZzZXQ6bC5vZmZzZXQoKSxmbjp7aW50ZXJhY3Q6e30sbW9kZXM6e30sdmVuZG9yczp7fX0sdG1wOnt9fTtnJiZPYmplY3QuZGVlcEV4dGVuZChhLGcpO3RoaXMuc2l6ZV92YWx1ZT1hLnBhcnRpY2xlcy5zaXplLnZhbHVlO2EudG1wLm9iaj17c2l6ZV92YWx1ZTphLnBhcnRpY2xlcy5zaXplLnZhbHVlLHNpemVfYW5pbV9zcGVlZDphLnBhcnRpY2xlcy5zaXplLmFuaW0uc3BlZWQsDQptb3ZlX3NwZWVkOmEucGFydGljbGVzLm1vdmUuc3BlZWQsbGluZV9saW5rZWRfZGlzdGFuY2U6YS5wYXJ0aWNsZXMubGluZV9saW5rZWQuZGlzdGFuY2UsbGluZV9saW5rZWRfd2lkdGg6YS5wYXJ0aWNsZXMubGluZV9saW5rZWQud2lkdGgsbW9kZV9ncmFiX2Rpc3RhbmNlOmEuaW50ZXJhY3Rpdml0eS5tb2Rlcy5ncmFiLmRpc3RhbmNlLG1vZGVfYnViYmxlX2Rpc3RhbmNlOmEuaW50ZXJhY3Rpdml0eS5tb2Rlcy5idWJibGUuZGlzdGFuY2UsbW9kZV9idWJibGVfc2l6ZTphLmludGVyYWN0aXZpdHkubW9kZXMuYnViYmxlLnNpemUsbW9kZV9yZXB1bHNlX2Rpc3RhbmNlOmEuaW50ZXJhY3Rpdml0eS5tb2Rlcy5yZXB1bHNlLmRpc3RhbmNlfTthLnRtcC5jb3VudF9zdmc9MDthLmZuLnJldGluYUluaXQ9ZnVuY3Rpb24oKXthLnJldGluYV9kZXRlY3QmJjE8d2luZG93LmRldmljZVBpeGVsUmF0aW8/KGEuY2FudmFzLnB4cmF0aW89d2luZG93LmRldmljZVBpeGVsUmF0aW8sYS50bXAucmV0aW5hPQ0KITApOihhLmNhbnZhcy5weHJhdGlvPTEsYS50bXAucmV0aW5hPSExKTthLmNhbnZhcy53PWEuY2FudmFzLmVsLm9mZnNldFdpZHRoKmEuY2FudmFzLnB4cmF0aW87YS5jYW52YXMuaD1hLmNhbnZhcy5lbC5vZmZzZXRIZWlnaHQqYS5jYW52YXMucHhyYXRpbzthLnBhcnRpY2xlcy5zaXplLnZhbHVlPWEudG1wLm9iai5zaXplX3ZhbHVlKmEuY2FudmFzLnB4cmF0aW87YS5wYXJ0aWNsZXMuc2l6ZS5hbmltLnNwZWVkPWEudG1wLm9iai5zaXplX2FuaW1fc3BlZWQqYS5jYW52YXMucHhyYXRpbzthLnBhcnRpY2xlcy5tb3ZlLnNwZWVkPWEudG1wLm9iai5tb3ZlX3NwZWVkKmEuY2FudmFzLnB4cmF0aW87YS5wYXJ0aWNsZXMubGluZV9saW5rZWQuZGlzdGFuY2U9YS50bXAub2JqLmxpbmVfbGlua2VkX2Rpc3RhbmNlKmEuY2FudmFzLnB4cmF0aW87YS5pbnRlcmFjdGl2aXR5Lm1vZGVzLmdyYWIuZGlzdGFuY2U9YS50bXAub2JqLm1vZGVfZ3JhYl9kaXN0YW5jZSphLmNhbnZhcy5weHJhdGlvOw0KYS5pbnRlcmFjdGl2aXR5Lm1vZGVzLmJ1YmJsZS5kaXN0YW5jZT1hLnRtcC5vYmoubW9kZV9idWJibGVfZGlzdGFuY2UqYS5jYW52YXMucHhyYXRpbzthLnBhcnRpY2xlcy5saW5lX2xpbmtlZC53aWR0aD1hLnRtcC5vYmoubGluZV9saW5rZWRfd2lkdGgqYS5jYW52YXMucHhyYXRpbzthLmludGVyYWN0aXZpdHkubW9kZXMuYnViYmxlLnNpemU9YS50bXAub2JqLm1vZGVfYnViYmxlX3NpemUqYS5jYW52YXMucHhyYXRpbzthLmludGVyYWN0aXZpdHkubW9kZXMucmVwdWxzZS5kaXN0YW5jZT1hLnRtcC5vYmoubW9kZV9yZXB1bHNlX2Rpc3RhbmNlKmEuY2FudmFzLnB4cmF0aW99O2EuZm4uY2FudmFzSW5pdD1mdW5jdGlvbigpe2EuY2FudmFzLmN0eD1hLmNhbnZhcy5lbC5nZXRDb250ZXh0KCIyZCIpfTthLmZuLmNhbnZhc1NpemU9ZnVuY3Rpb24oKXthLmNhbnZhcy5lbC53aWR0aD1hLmNhbnZhcy53O2EuY2FudmFzLmVsLmhlaWdodD1hLmNhbnZhcy5oO2EmJmEuaW50ZXJhY3Rpdml0eS5ldmVudHMucmVzaXplJiYNCndpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLGZ1bmN0aW9uKCl7YS5pbnRlcmFjdGl2aXR5Lm9mZnNldD1sLm9mZnNldCgpO2EuY2FudmFzLnc9YS5jYW52YXMuZWwub2Zmc2V0V2lkdGg7YS5jYW52YXMuaD1hLmNhbnZhcy5lbC5vZmZzZXRIZWlnaHQ7YS50bXAucmV0aW5hJiYoYS5jYW52YXMudyo9YS5jYW52YXMucHhyYXRpbyxhLmNhbnZhcy5oKj1hLmNhbnZhcy5weHJhdGlvKTthLmNhbnZhcy5lbC53aWR0aD1hLmNhbnZhcy53O2EuY2FudmFzLmVsLmhlaWdodD1hLmNhbnZhcy5oO2EucGFydGljbGVzLm1vdmUuZW5hYmxlfHwoYS5mbi5wYXJ0aWNsZXNFbXB0eSgpLGEuZm4ucGFydGljbGVzQ3JlYXRlKCksYS5mbi5wYXJ0aWNsZXNEcmF3KCksYS5mbi52ZW5kb3JzLmRlbnNpdHlBdXRvUGFydGljbGVzKCkpO2EuZm4udmVuZG9ycy5kZW5zaXR5QXV0b1BhcnRpY2xlcygpfSl9O2EuZm4uY2FudmFzUGFpbnQ9ZnVuY3Rpb24oKXthLmNhbnZhcy5jdHguZmlsbFJlY3QoMCwNCjAsYS5jYW52YXMudyxhLmNhbnZhcy5oKX07YS5mbi5jYW52YXNDbGVhcj1mdW5jdGlvbigpe2EuY2FudmFzLmN0eC5jbGVhclJlY3QoMCwwLGEuY2FudmFzLncsYS5jYW52YXMuaCl9O2EuZm4ucGFydGljbGU9ZnVuY3Rpb24oYixjLGQpe2M9YS5wYXJ0aWNsZXMuc2l6ZS52YWx1ZTtpZihhLnBhcnRpY2xlcy5zaXplLnJhbmRvbSl7dmFyIGg9YS5wYXJ0aWNsZXMuc2l6ZS5taW47Yz1NYXRoLnJhbmRvbSgpKihjLWgpK2g7MD09PWMmJihjPTEpfXRoaXMub3NpemU9dGhpcy5yYWRpdXM9YzthLnBhcnRpY2xlcy5zaXplLmFuaW0uZW5hYmxlJiYodGhpcy5zaXplX3N0YXR1cz0hMSx0aGlzLnZzPWEucGFydGljbGVzLnNpemUuYW5pbS5zcGVlZC8xMDAsYS5wYXJ0aWNsZXMuc2l6ZS5hbmltLnN5bmN8fCh0aGlzLnZzKj1NYXRoLnJhbmRvbSgpKSk7dGhpcy54PWQ/ZC54Ok1hdGgucmFuZG9tKCkqYS5jYW52YXMudzt0aGlzLnk9ZD9kLnk6TWF0aC5yYW5kb20oKSphLmNhbnZhcy5oO3RoaXMueD4NCmEuY2FudmFzLnctMip0aGlzLnJhZGl1cz90aGlzLngtPXRoaXMucmFkaXVzOnRoaXMueDwyKnRoaXMucmFkaXVzJiYodGhpcy54Kz10aGlzLnJhZGl1cyk7dGhpcy55PmEuY2FudmFzLmgtMip0aGlzLnJhZGl1cz90aGlzLnktPXRoaXMucmFkaXVzOnRoaXMueTwyKnRoaXMucmFkaXVzJiYodGhpcy55Kz10aGlzLnJhZGl1cyk7YS5wYXJ0aWNsZXMubW92ZS5ib3VuY2UmJmEuZm4udmVuZG9ycy5jaGVja092ZXJsYXAodGhpcyxkKTtkPWEucGFydGljbGVzLm1vdmUuc3BlZWQ7Yz1hLnBhcnRpY2xlcy5tb3ZlLm1pbl9zcGVlZDthLnBhcnRpY2xlcy5tb3ZlLnJhbmRvbSYmKGQ9TWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpKihkLWMpK2MpLDE+ZCYmKGQ9MSkpO3RoaXMuc3BkPWQ7dGhpcy5jb2xvcj17fTsib2JqZWN0Ij09dHlwZW9mIGIudmFsdWU/Yi52YWx1ZSBpbnN0YW5jZW9mIEFycmF5P3RoaXMuY29sb3IucmdiPXQoYi52YWx1ZVtNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqYS5wYXJ0aWNsZXMuY29sb3IudmFsdWUubGVuZ3RoKV0pOg0KKHZvaWQgMCE9Yi52YWx1ZS5yJiZ2b2lkIDAhPWIudmFsdWUuZyYmdm9pZCAwIT1iLnZhbHVlLmImJih0aGlzLmNvbG9yLnJnYj17cjpiLnZhbHVlLnIsZzpiLnZhbHVlLmcsYjpiLnZhbHVlLmJ9KSx2b2lkIDAhPWIudmFsdWUuaCYmdm9pZCAwIT1iLnZhbHVlLnMmJnZvaWQgMCE9Yi52YWx1ZS5sJiYodGhpcy5jb2xvci5oc2w9e2g6Yi52YWx1ZS5oLHM6Yi52YWx1ZS5zLGw6Yi52YWx1ZS5sfSkpOiJyYW5kb20iPT1iLnZhbHVlP3RoaXMuY29sb3IucmdiPXtyOk1hdGguZmxvb3IoMjU2Kk1hdGgucmFuZG9tKCkpKzAsZzpNYXRoLmZsb29yKDI1NipNYXRoLnJhbmRvbSgpKSswLGI6TWF0aC5mbG9vcigyNTYqTWF0aC5yYW5kb20oKSkrMH06InN0cmluZyI9PXR5cGVvZiBiLnZhbHVlJiYodGhpcy5jb2xvcj1iLHRoaXMuY29sb3IucmdiPXQodGhpcy5jb2xvci52YWx1ZSkpO2I9YS5wYXJ0aWNsZXMuc2hhcGUuc3Ryb2tlLmNvbG9yO3RoaXMuc3Ryb2tlQ29sb3I9YltNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqDQpiLmxlbmd0aCldO2I9YS5wYXJ0aWNsZXMubGluZV9saW5rZWQuY29sb3I7dGhpcy5saW5lQ29sb3I9YltNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqYi5sZW5ndGgpXTtiPWEucGFydGljbGVzLm9wYWNpdHkudmFsdWU7ZD1hLnBhcnRpY2xlcy5vcGFjaXR5Lm1pbjthLnBhcnRpY2xlcy5vcGFjaXR5LnJhbmRvbSYmKGI9TWF0aC5yYW5kb20oKSooYi1kKStkKTt0aGlzLm9wYWNpdHk9dGhpcy5vcGM9YjthLnBhcnRpY2xlcy5vcGFjaXR5LmFuaW0uZW5hYmxlJiYodGhpcy5vcGFjaXR5X3N0YXR1cz0hMSx0aGlzLnZvPWEucGFydGljbGVzLm9wYWNpdHkuYW5pbS5zcGVlZC8xMDAsYS5wYXJ0aWNsZXMub3BhY2l0eS5hbmltLnN5bmN8fCh0aGlzLnZvKj1NYXRoLnJhbmRvbSgpKSk7c3dpdGNoKGEucGFydGljbGVzLm1vdmUuZGlyZWN0aW9uKXtjYXNlICJ0b3AiOmI9MDtkPS0xO2JyZWFrO2Nhc2UgInRvcC1yaWdodCI6Yj0uNTtkPS0uNTticmVhaztjYXNlICJyaWdodCI6Yj0xO2Q9LTA7DQpicmVhaztjYXNlICJib3R0b20tcmlnaHQiOmQ9Yj0uNTticmVhaztjYXNlICJib3R0b20iOmI9MDtkPTE7YnJlYWs7Y2FzZSAiYm90dG9tLWxlZnQiOmI9LS41O2Q9MTticmVhaztjYXNlICJsZWZ0IjpiPS0xO2Q9MDticmVhaztjYXNlICJ0b3AtbGVmdCI6ZD1iPS0uNTticmVhaztkZWZhdWx0OmQ9Yj0wfWEucGFydGljbGVzLm1vdmUuc3RyYWlnaHQ/KHRoaXMudng9Yix0aGlzLnZ5PWQpOih0aGlzLnZ4PWIrTWF0aC5yYW5kb20oKS0uNSx0aGlzLnZ5PWQrTWF0aC5yYW5kb20oKS0uNSk7dGhpcy52eF9pPXRoaXMudng7dGhpcy52eV9pPXRoaXMudnk7Yj1hLnBhcnRpY2xlcy5zaGFwZS50eXBlOyJvYmplY3QiPT10eXBlb2YgYj9iIGluc3RhbmNlb2YgQXJyYXkmJih0aGlzLnNoYXBlPWJbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKmIubGVuZ3RoKV0pOnRoaXMuc2hhcGU9YjsiaW1hZ2UiPT10aGlzLnNoYXBlJiYoYj1hLnBhcnRpY2xlcy5zaGFwZSx0aGlzLmltZz17c3JjOmIuaW1hZ2Uuc3JjLA0KcmF0aW86Yi5pbWFnZS53aWR0aC9iLmltYWdlLmhlaWdodH0sdGhpcy5pbWcucmF0aW98fCh0aGlzLmltZy5yYXRpbz0xKSwic3ZnIj09YS50bXAuaW1nX3R5cGUmJnZvaWQgMCE9YS50bXAuc291cmNlX3N2ZyYmKGEuZm4udmVuZG9ycy5jcmVhdGVTdmdJbWcodGhpcyksYS50bXAucHVzaGluZyYmKHRoaXMuaW1nLmxvYWRlZD0hMSkpKX07YS5mbi5wYXJ0aWNsZS5wcm90b3R5cGUuZHJhd1NWRz1mdW5jdGlvbihiLGMpe2EuY2FudmFzLmN0eC5kcmF3SW1hZ2UoYix0aGlzLngtYyx0aGlzLnktYywyKmMsMipjL3RoaXMuaW1nLnJhdGlvKX07YS5mbi5wYXJ0aWNsZS5wcm90b3R5cGUuZHJhdz1mdW5jdGlvbigpe3ZhciBiLGMsZDtjPXZvaWQgMCE9dGhpcy5yYWRpdXNfYnViYmxlP3RoaXMucmFkaXVzX2J1YmJsZTp0aGlzLnJhZGl1cztkPXZvaWQgMCE9dGhpcy5vcGFjaXR5X2J1YmJsZT90aGlzLm9wYWNpdHlfYnViYmxlOnRoaXMub3BhY2l0eTthLmNhbnZhcy5jdHguZmlsbFN0eWxlPQ0KdGhpcy5jb2xvci5yZ2I/InJnYmEoIit0aGlzLmNvbG9yLnJnYi5yKyIsIit0aGlzLmNvbG9yLnJnYi5nKyIsIit0aGlzLmNvbG9yLnJnYi5iKyIsIitkKyIpIjoiaHNsYSgiK3RoaXMuY29sb3IuaHNsLmgrIiwiK3RoaXMuY29sb3IuaHNsLnMrIiUsIit0aGlzLmNvbG9yLmhzbC5sKyIlLCIrZCsiKSI7YS5jYW52YXMuY3R4LmJlZ2luUGF0aCgpO3N3aXRjaCh0aGlzLnNoYXBlKXtjYXNlICJjaXJjbGUiOmEuY2FudmFzLmN0eC5hcmModGhpcy54LHRoaXMueSxjLDAsMipNYXRoLlBJLCExKTticmVhaztjYXNlICJlZGdlIjphLmNhbnZhcy5jdHgucmVjdCh0aGlzLngtYyx0aGlzLnktYywyKmMsMipjKTticmVhaztjYXNlICJ0cmlhbmdsZSI6YS5mbi52ZW5kb3JzLmRyYXdTaGFwZShhLmNhbnZhcy5jdHgsdGhpcy54LWMsdGhpcy55K2MvMS42NiwyKmMsMywyKTticmVhaztjYXNlICJwb2x5Z29uIjphLmZuLnZlbmRvcnMuZHJhd1NoYXBlKGEuY2FudmFzLmN0eCx0aGlzLngtYy8oYS5wYXJ0aWNsZXMuc2hhcGUucG9seWdvbi5uYl9zaWRlcy8NCjMuNSksdGhpcy55LWMvLjc2LDIuNjYqYy8oYS5wYXJ0aWNsZXMuc2hhcGUucG9seWdvbi5uYl9zaWRlcy8zKSxhLnBhcnRpY2xlcy5zaGFwZS5wb2x5Z29uLm5iX3NpZGVzLDEpO2JyZWFrO2Nhc2UgInN0YXIiOmEuZm4udmVuZG9ycy5kcmF3U2hhcGUoYS5jYW52YXMuY3R4LHRoaXMueC0yKmMvKGEucGFydGljbGVzLnNoYXBlLnBvbHlnb24ubmJfc2lkZXMvNCksdGhpcy55LWMvMS41Miw1LjMyKmMvKGEucGFydGljbGVzLnNoYXBlLnBvbHlnb24ubmJfc2lkZXMvMyksYS5wYXJ0aWNsZXMuc2hhcGUucG9seWdvbi5uYl9zaWRlcywyKTticmVhaztjYXNlICJpbWFnZSI6YS5jYW52YXMuY3R4Lmdsb2JhbEFscGhhPWQsKGI9InN2ZyI9PWEudG1wLmltZ190eXBlP3RoaXMuaW1nLm9iajphLnRtcC5pbWdfb2JqKSYmdGhpcy5kcmF3U1ZHKGIsYyksYS5jYW52YXMuY3R4Lmdsb2JhbEFscGhhPTEsYj0hMH1hLmNhbnZhcy5jdHguY2xvc2VQYXRoKCk7Ynx8KDA8YS5wYXJ0aWNsZXMuc2hhcGUuc3Ryb2tlLndpZHRoJiYNCihhLmNhbnZhcy5jdHguc3Ryb2tlU3R5bGU9dGhpcy5zdHJva2VDb2xvcixhLmNhbnZhcy5jdHgubGluZVdpZHRoPWEucGFydGljbGVzLnNoYXBlLnN0cm9rZS53aWR0aCxhLmNhbnZhcy5jdHguc3Ryb2tlKCkpLGEuY2FudmFzLmN0eC5maWxsKCkpfTthLmZuLnBhcnRpY2xlc0NyZWF0ZT1mdW5jdGlvbigpe2Zvcih2YXIgYj1hLnBhcnRpY2xlcy5udW1iZXIudmFsdWUsYz1hLnBhcnRpY2xlcy5hcnJheSxkPTA7ZDxiO2QrKyljW2MubGVuZ3RoXT1uZXcgYS5mbi5wYXJ0aWNsZShhLnBhcnRpY2xlcy5jb2xvcixhLnBhcnRpY2xlcy5vcGFjaXR5LnZhbHVlKX07YS5mbi5wYXJ0aWNsZXNVcGRhdGU9ZnVuY3Rpb24oKXtmb3IodmFyIGIsYyxkLGgsZj1hLnBhcnRpY2xlcy5hcnJheS5sZW5ndGgsZz0wO2c8ZjtnKyspe3ZhciBlPWEucGFydGljbGVzLmFycmF5W2ddO2EucGFydGljbGVzLm1vdmUuZW5hYmxlJiYoYj1lLnNwZC8yLGUueCs9ZS52eCpiLGUueSs9ZS52eSpiKTthLnBhcnRpY2xlcy5vcGFjaXR5LmFuaW0uZW5hYmxlJiYNCigxPT1lLm9wYWNpdHlfc3RhdHVzPyhlLm9wYWNpdHk+PWUub3BjJiYoZS5vcGFjaXR5X3N0YXR1cz0hMSksZS5vcGFjaXR5Kz1lLnZvKTooZS5vcGFjaXR5PD1hLnBhcnRpY2xlcy5vcGFjaXR5LmFuaW0ub3BhY2l0eV9taW4mJihlLm9wYWNpdHlfc3RhdHVzPSEwKSxlLm9wYWNpdHktPWUudm8pLDA+ZS5vcGFjaXR5JiYoZS5vcGFjaXR5PTApKTthLnBhcnRpY2xlcy5zaXplLmFuaW0uZW5hYmxlJiYoMT09ZS5zaXplX3N0YXR1cz8oZS5yYWRpdXM+PWEucGFydGljbGVzLnNpemUudmFsdWUmJihlLnNpemVfc3RhdHVzPSExKSxlLnJhZGl1cys9ZS52cyk6KGUucmFkaXVzPD1hLnBhcnRpY2xlcy5zaXplLmFuaW0uc2l6ZV9taW4mJihlLnNpemVfc3RhdHVzPSEwKSxlLnJhZGl1cy09ZS52cyksMD5lLnJhZGl1cyYmKGUucmFkaXVzPTApKTsiYm91bmNlIj09YS5wYXJ0aWNsZXMubW92ZS5vdXRfbW9kZT8oYj1lLnJhZGl1cyxjPWEuY2FudmFzLncsZD1lLnJhZGl1cyxoPWEuY2FudmFzLmgpOg0KKGI9LWUucmFkaXVzLGM9YS5jYW52YXMudytlLnJhZGl1cyxkPS1lLnJhZGl1cyxoPWEuY2FudmFzLmgrZS5yYWRpdXMpO2UueC1lLnJhZGl1cz5hLmNhbnZhcy53PyhlLng9YixlLnk9TWF0aC5yYW5kb20oKSphLmNhbnZhcy5oKTowPmUueCtlLnJhZGl1cyYmKGUueD1jLGUueT1NYXRoLnJhbmRvbSgpKmEuY2FudmFzLmgpO2UueS1lLnJhZGl1cz5hLmNhbnZhcy5oPyhlLnk9ZCxlLng9TWF0aC5yYW5kb20oKSphLmNhbnZhcy53KTowPmUueStlLnJhZGl1cyYmKGUueT1oLGUueD1NYXRoLnJhbmRvbSgpKmEuY2FudmFzLncpO3N3aXRjaChhLnBhcnRpY2xlcy5tb3ZlLm91dF9tb2RlKXtjYXNlICJib3VuY2UiOmUueCtlLnJhZGl1cz5hLmNhbnZhcy53P2Uudng9LWUudng6MD5lLngtZS5yYWRpdXMmJihlLnZ4PS1lLnZ4KSxlLnkrZS5yYWRpdXM+YS5jYW52YXMuaD9lLnZ5PS1lLnZ5OjA+ZS55LWUucmFkaXVzJiYoZS52eT0tZS52eSl9LTE8YS5pbnRlcmFjdGl2aXR5LmV2ZW50cy5vbmhvdmVyLm1vZGUuaW5kZXhPZigiZ3JhYiIpJiYNCmEuZm4ubW9kZXMuZ3JhYlBhcnRpY2xlKGUpOygtMTxhLmludGVyYWN0aXZpdHkuZXZlbnRzLm9uaG92ZXIubW9kZS5pbmRleE9mKCJidWJibGUiKXx8LTE8YS5pbnRlcmFjdGl2aXR5LmV2ZW50cy5vbmNsaWNrLm1vZGUuaW5kZXhPZigiYnViYmxlIikpJiZhLmZuLm1vZGVzLmJ1YmJsZVBhcnRpY2xlKGUpOygtMTxhLmludGVyYWN0aXZpdHkuZXZlbnRzLm9uaG92ZXIubW9kZS5pbmRleE9mKCJyZXB1bHNlIil8fC0xPGEuaW50ZXJhY3Rpdml0eS5ldmVudHMub25jbGljay5tb2RlLmluZGV4T2YoInJlcHVsc2UiKSkmJmEuZm4ubW9kZXMucmVwdWxzZVBhcnRpY2xlKGUpO2lmKGEucGFydGljbGVzLmxpbmVfbGlua2VkLmVuYWJsZXx8YS5wYXJ0aWNsZXMubW92ZS5hdHRyYWN0LmVuYWJsZSlmb3IoYj1hLnBhcnRpY2xlcy5hcnJheS5sZW5ndGgsYz1nKzE7YzxiO2MrKylkPWEucGFydGljbGVzLmFycmF5W2NdLGEucGFydGljbGVzLmxpbmVfbGlua2VkLmVuYWJsZSYmYS5mbi5pbnRlcmFjdC5saW5rUGFydGljbGVzKGUsDQpkKSxhLnBhcnRpY2xlcy5tb3ZlLmF0dHJhY3QuZW5hYmxlJiZhLmZuLmludGVyYWN0LmF0dHJhY3RQYXJ0aWNsZXMoZSxkKSxhLnBhcnRpY2xlcy5tb3ZlLmJvdW5jZSYmYS5mbi5pbnRlcmFjdC5ib3VuY2VQYXJ0aWNsZXMoZSxkKX19O2EuZm4ucGFydGljbGVzRHJhdz1mdW5jdGlvbigpe2EuY2FudmFzLmN0eC5jbGVhclJlY3QoMCwwLGEuY2FudmFzLncsYS5jYW52YXMuaCk7YS5mbi5wYXJ0aWNsZXNVcGRhdGUoKTtmb3IodmFyIGI9YS5wYXJ0aWNsZXMuYXJyYXkubGVuZ3RoLGM9MDtjPGI7YysrKWEucGFydGljbGVzLmFycmF5W2NdLmRyYXcoKX07YS5mbi5wYXJ0aWNsZXNFbXB0eT1mdW5jdGlvbigpe2EucGFydGljbGVzLmFycmF5PVtdfTthLmZuLnBhcnRpY2xlc1JlZnJlc2g9ZnVuY3Rpb24oKXtyc3BDYW5jZWxBbmltRnJhbWUoYS5mbi5jaGVja0FuaW1GcmFtZSk7cnNwQ2FuY2VsQW5pbUZyYW1lKGEuZm4uZHJhd0FuaW1GcmFtZSk7YS50bXAuc291cmNlX3N2Zz12b2lkIDA7DQphLnRtcC5pbWdfb2JqPXZvaWQgMDthLnRtcC5jb3VudF9zdmc9MDthLmZuLnBhcnRpY2xlc0VtcHR5KCk7YS5mbi5jYW52YXNDbGVhcigpO2EuZm4udmVuZG9ycy5zdGFydCgpfTthLmZuLmludGVyYWN0LmxpbmtQYXJ0aWNsZXM9ZnVuY3Rpb24oYixjKXt2YXIgZD1iLngtYy54LGg9Yi55LWMueSxkPU1hdGguc3FydChkKmQraCpoKTtkPD1hLnBhcnRpY2xlcy5saW5lX2xpbmtlZC5kaXN0YW5jZSYmKGQ9YS5wYXJ0aWNsZXMubGluZV9saW5rZWQub3BhY2l0eS1kLygxL2EucGFydGljbGVzLmxpbmVfbGlua2VkLm9wYWNpdHkpL2EucGFydGljbGVzLmxpbmVfbGlua2VkLmRpc3RhbmNlLDA8ZCYmKGg9Yi5saW5lQ29sb3IsYS5jYW52YXMuY3R4LnN0cm9rZVN0eWxlPSJyZ2JhKCIraC5yKyIsIitoLmcrIiwiK2guYisiLCIrZCsiKSIsYS5jYW52YXMuY3R4LmxpbmVXaWR0aD1hLnBhcnRpY2xlcy5saW5lX2xpbmtlZC53aWR0aCxhLmNhbnZhcy5jdHguYmVnaW5QYXRoKCksYS5jYW52YXMuY3R4Lm1vdmVUbyhiLngsDQpiLnkpLGEuY2FudmFzLmN0eC5saW5lVG8oYy54LGMueSksYS5jYW52YXMuY3R4LnN0cm9rZSgpLGEuY2FudmFzLmN0eC5jbG9zZVBhdGgoKSkpfTthLmZuLmludGVyYWN0LmF0dHJhY3RQYXJ0aWNsZXM9ZnVuY3Rpb24oYixjKXt2YXIgZD1iLngtYy54LGg9Yi55LWMueTtNYXRoLnNxcnQoZCpkK2gqaCk8PWEucGFydGljbGVzLmxpbmVfbGlua2VkLmRpc3RhbmNlJiYoZC89MUUzKmEucGFydGljbGVzLm1vdmUuYXR0cmFjdC5yb3RhdGVYLGgvPTFFMyphLnBhcnRpY2xlcy5tb3ZlLmF0dHJhY3Qucm90YXRlWSxiLnZ4LT1kLGIudnktPWgsYy52eCs9ZCxjLnZ5Kz1oKX07YS5mbi5pbnRlcmFjdC5ib3VuY2VQYXJ0aWNsZXM9ZnVuY3Rpb24oYSxjKXt2YXIgYj1hLngtYy54LGg9YS55LWMueTtNYXRoLnNxcnQoYipiK2gqaCk8PWEucmFkaXVzK2MucmFkaXVzJiYoYS52eD0tYS52eCxhLnZ5PS1hLnZ5LGMudng9LWMudngsYy52eT0tYy52eSl9O2EuZm4ubW9kZXMucHVzaFBhcnRpY2xlcz0NCmZ1bmN0aW9uKGIsYyl7Ynw9MDthLnRtcC5wdXNoaW5nPSEwO2Zvcih2YXIgZD0wO2Q8YjtkKyspYS5wYXJ0aWNsZXMuYXJyYXkucHVzaChuZXcgYS5mbi5wYXJ0aWNsZShhLnBhcnRpY2xlcy5jb2xvcixhLnBhcnRpY2xlcy5vcGFjaXR5LnZhbHVlLHt4OmM/Yy5wb3NfeDpNYXRoLnJhbmRvbSgpKmEuY2FudmFzLncseTpjP2MucG9zX3k6TWF0aC5yYW5kb20oKSphLmNhbnZhcy5ofSkpO2EucGFydGljbGVzLm1vdmUuZW5hYmxlfHxhLmZuLnBhcnRpY2xlc0RyYXcoKTthLnRtcC5wdXNoaW5nPSExfTthLmZuLm1vZGVzLnJlbW92ZVBhcnRpY2xlcz1mdW5jdGlvbihiKXthLnBhcnRpY2xlcy5hcnJheS5zcGxpY2UoMCxiKTthLnBhcnRpY2xlcy5tb3ZlLmVuYWJsZXx8YS5mbi5wYXJ0aWNsZXNEcmF3KCl9O2EuZm4ubW9kZXMuYnViYmxlUGFydGljbGU9ZnVuY3Rpb24oYil7aWYoYS5pbnRlcmFjdGl2aXR5LmV2ZW50cy5vbmhvdmVyLmVuYWJsZSYmLTE8YS5pbnRlcmFjdGl2aXR5LmV2ZW50cy5vbmhvdmVyLm1vZGUuaW5kZXhPZigiYnViYmxlIikpe3ZhciBjPQ0KYi54LWEuaW50ZXJhY3Rpdml0eS5tb3VzZS5wb3NfeCxkPWIueS1hLmludGVyYWN0aXZpdHkubW91c2UucG9zX3ksYz1NYXRoLnNxcnQoYypjK2QqZCksZD0xLWMvYS5pbnRlcmFjdGl2aXR5Lm1vZGVzLmJ1YmJsZS5kaXN0YW5jZTtjPD1hLmludGVyYWN0aXZpdHkubW9kZXMuYnViYmxlLmRpc3RhbmNlPzA8PWQmJiJtb3VzZW1vdmUiPT1hLmludGVyYWN0aXZpdHkuc3RhdHVzJiYoYS5pbnRlcmFjdGl2aXR5Lm1vZGVzLmJ1YmJsZS5zaXplIT1iLnJhZGl1cyYmKGEuaW50ZXJhY3Rpdml0eS5tb2Rlcy5idWJibGUuc2l6ZT5iLnJhZGl1cz8oYz1iLnJhZGl1cythLmludGVyYWN0aXZpdHkubW9kZXMuYnViYmxlLnNpemUqZCwwPD1jJiYoYi5yYWRpdXNfYnViYmxlPWMpKTooYz1iLnJhZGl1cy0oYi5yYWRpdXMtYS5pbnRlcmFjdGl2aXR5Lm1vZGVzLmJ1YmJsZS5zaXplKSpkLGIucmFkaXVzX2J1YmJsZT0wPGM/YzowKSksYS5pbnRlcmFjdGl2aXR5Lm1vZGVzLmJ1YmJsZS5vcGFjaXR5IT0NCmIub3BjJiYoYS5pbnRlcmFjdGl2aXR5Lm1vZGVzLmJ1YmJsZS5vcGFjaXR5PmIub3BjPyhjPWEuaW50ZXJhY3Rpdml0eS5tb2Rlcy5idWJibGUub3BhY2l0eSpkLGM+Yi5vcGFjaXR5JiZjPD1hLmludGVyYWN0aXZpdHkubW9kZXMuYnViYmxlLm9wYWNpdHkmJihiLm9wYWNpdHlfYnViYmxlPWMpKTooYz1iLm9wYWNpdHktKGIub3BjLWEuaW50ZXJhY3Rpdml0eS5tb2Rlcy5idWJibGUub3BhY2l0eSkqZCxjPGIub3BhY2l0eSYmYz49YS5pbnRlcmFjdGl2aXR5Lm1vZGVzLmJ1YmJsZS5vcGFjaXR5JiYoYi5vcGFjaXR5X2J1YmJsZT1jKSkpKTooYi5vcGFjaXR5X2J1YmJsZT1iLm9wYWNpdHksYi5yYWRpdXNfYnViYmxlPWIucmFkaXVzKTsibW91c2VsZWF2ZSI9PWEuaW50ZXJhY3Rpdml0eS5zdGF0dXMmJihiLm9wYWNpdHlfYnViYmxlPWIub3BhY2l0eSxiLnJhZGl1c19idWJibGU9Yi5yYWRpdXMpfWVsc2UgYS5pbnRlcmFjdGl2aXR5LmV2ZW50cy5vbmNsaWNrLmVuYWJsZSYmLTE8YS5pbnRlcmFjdGl2aXR5LmV2ZW50cy5vbmNsaWNrLm1vZGUuaW5kZXhPZigiYnViYmxlIikmJg0KKGEudG1wLmJ1YmJsZV9jbGlja2luZyYmKGM9Yi54LWEuaW50ZXJhY3Rpdml0eS5tb3VzZS5jbGlja19wb3NfeCxkPWIueS1hLmludGVyYWN0aXZpdHkubW91c2UuY2xpY2tfcG9zX3ksYz1NYXRoLnNxcnQoYypjK2QqZCksZD0oKG5ldyBEYXRlKS5nZXRUaW1lKCktYS5pbnRlcmFjdGl2aXR5Lm1vdXNlLmNsaWNrX3RpbWUpLzFFMyxkPmEuaW50ZXJhY3Rpdml0eS5tb2Rlcy5idWJibGUuZHVyYXRpb24mJihhLnRtcC5idWJibGVfZHVyYXRpb25fZW5kPSEwKSxkPjIqYS5pbnRlcmFjdGl2aXR5Lm1vZGVzLmJ1YmJsZS5kdXJhdGlvbiYmKGEudG1wLmJ1YmJsZV9jbGlja2luZz0hMSxhLnRtcC5idWJibGVfZHVyYXRpb25fZW5kPSExKSksYS50bXAuYnViYmxlX2NsaWNraW5nJiYocChiLGMsZCxhLmludGVyYWN0aXZpdHkubW9kZXMuYnViYmxlLnNpemUsYi5vc2l6ZSxiLnJhZGl1c19idWJibGUsYi5yYWRpdXMsInNpemUiKSxwKGIsYyxkLGEuaW50ZXJhY3Rpdml0eS5tb2Rlcy5idWJibGUub3BhY2l0eSwNCmIub3BjLGIub3BhY2l0eV9idWJibGUsYi5vcGFjaXR5LCJvcGFjaXR5IikpKX07YS5mbi5tb2Rlcy5yZXB1bHNlUGFydGljbGU9ZnVuY3Rpb24oYil7dmFyIGMsZDtpZihhLmludGVyYWN0aXZpdHkuZXZlbnRzLm9uaG92ZXIuZW5hYmxlJiYtMTxhLmludGVyYWN0aXZpdHkuZXZlbnRzLm9uaG92ZXIubW9kZS5pbmRleE9mKCJyZXB1bHNlIikmJiJtb3VzZW1vdmUiPT1hLmludGVyYWN0aXZpdHkuc3RhdHVzKXt2YXIgaD1iLngtYS5pbnRlcmFjdGl2aXR5Lm1vdXNlLnBvc194O2Q9Yi55LWEuaW50ZXJhY3Rpdml0eS5tb3VzZS5wb3NfeTt2YXIgZj1NYXRoLnNxcnQoaCpoK2QqZCk7Yz1hLmludGVyYWN0aXZpdHkubW9kZXMucmVwdWxzZS5kaXN0YW5jZTt2YXIgZz1NYXRoLm1pbihNYXRoLm1heCgxL2MqKC0xKk1hdGgucG93KGYvYywyKSsxKSpjKjEwMCwwKSw1MCk7Yz1iLngraC9mKmc7ZD1iLnkrZC9mKmc7ImJvdW5jZSI9PWEucGFydGljbGVzLm1vdmUub3V0X21vZGU/KDA8Yy1iLnJhZGl1cyYmDQpjK2IucmFkaXVzPGEuY2FudmFzLncmJihiLng9YyksMDxkLWIucmFkaXVzJiZkK2IucmFkaXVzPGEuY2FudmFzLmgmJihiLnk9ZCkpOihiLng9YyxiLnk9ZCl9ZWxzZSBhLmludGVyYWN0aXZpdHkuZXZlbnRzLm9uY2xpY2suZW5hYmxlJiYtMTxhLmludGVyYWN0aXZpdHkuZXZlbnRzLm9uY2xpY2subW9kZS5pbmRleE9mKCJyZXB1bHNlIikmJihhLnRtcC5yZXB1bHNlX2ZpbmlzaHx8KGEudG1wLnJlcHVsc2VfY291bnQrKyxhLnRtcC5yZXB1bHNlX2NvdW50PT1hLnBhcnRpY2xlcy5hcnJheS5sZW5ndGgmJihhLnRtcC5yZXB1bHNlX2ZpbmlzaD0hMCkpLGEudG1wLnJlcHVsc2VfY2xpY2tpbmc/KGM9TWF0aC5wb3coYS5pbnRlcmFjdGl2aXR5Lm1vZGVzLnJlcHVsc2UuZGlzdGFuY2UvNiwzKSxmPWEuaW50ZXJhY3Rpdml0eS5tb3VzZS5jbGlja19wb3NfeC1iLngsaD1hLmludGVyYWN0aXZpdHkubW91c2UuY2xpY2tfcG9zX3ktYi55LGc9ZipmK2gqaCxkPS1jL2cqMSxnPD1jJiYoYz0NCk1hdGguYXRhbjIoaCxmKSxiLnZ4PWQqTWF0aC5jb3MoYyksYi52eT1kKk1hdGguc2luKGMpLCJib3VuY2UiPT1hLnBhcnRpY2xlcy5tb3ZlLm91dF9tb2RlJiYoYz1iLngrYi52eCxkPWIueStiLnZ5LGMrYi5yYWRpdXM+YS5jYW52YXMudz9iLnZ4PS1iLnZ4OjA+Yy1iLnJhZGl1cyYmKGIudng9LWIudngpLGQrYi5yYWRpdXM+YS5jYW52YXMuaD9iLnZ5PS1iLnZ5OjA+ZC1iLnJhZGl1cyYmKGIudnk9LWIudnkpKSkpOjA9PWEudG1wLnJlcHVsc2VfY2xpY2tpbmcmJihiLnZ4PWIudnhfaSxiLnZ5PWIudnlfaSkpfTthLmZuLm1vZGVzLmdyYWJQYXJ0aWNsZT1mdW5jdGlvbihiKXtpZihhLmludGVyYWN0aXZpdHkuZXZlbnRzLm9uaG92ZXIuZW5hYmxlJiYibW91c2Vtb3ZlIj09YS5pbnRlcmFjdGl2aXR5LnN0YXR1cyl7dmFyIGM9Yi54LWEuaW50ZXJhY3Rpdml0eS5tb3VzZS5wb3NfeCxkPWIueS1hLmludGVyYWN0aXZpdHkubW91c2UucG9zX3ksYz1NYXRoLnNxcnQoYypjK2QqZCk7Yzw9DQphLmludGVyYWN0aXZpdHkubW9kZXMuZ3JhYi5kaXN0YW5jZSYmKGM9YS5pbnRlcmFjdGl2aXR5Lm1vZGVzLmdyYWIubGluZV9saW5rZWQub3BhY2l0eS1jLygxL2EuaW50ZXJhY3Rpdml0eS5tb2Rlcy5ncmFiLmxpbmVfbGlua2VkLm9wYWNpdHkpL2EuaW50ZXJhY3Rpdml0eS5tb2Rlcy5ncmFiLmRpc3RhbmNlLDA8YyYmKGQ9Yi5saW5lQ29sb3IsYS5jYW52YXMuY3R4LnN0cm9rZVN0eWxlPSJyZ2JhKCIrZC5yKyIsIitkLmcrIiwiK2QuYisiLCIrYysiKSIsYS5jYW52YXMuY3R4LmxpbmVXaWR0aD1hLnBhcnRpY2xlcy5saW5lX2xpbmtlZC53aWR0aCxhLmNhbnZhcy5jdHguYmVnaW5QYXRoKCksYS5jYW52YXMuY3R4Lm1vdmVUbyhiLngsYi55KSxhLmNhbnZhcy5jdHgubGluZVRvKGEuaW50ZXJhY3Rpdml0eS5tb3VzZS5wb3NfeCxhLmludGVyYWN0aXZpdHkubW91c2UucG9zX3kpLGEuY2FudmFzLmN0eC5zdHJva2UoKSxhLmNhbnZhcy5jdHguY2xvc2VQYXRoKCkpKX19O2EuZm4udmVuZG9ycy5ldmVudHNMaXN0ZW5lcnM9DQpmdW5jdGlvbigpe2EuaW50ZXJhY3Rpdml0eS5lbD0id2luZG93Ij09YS5pbnRlcmFjdGl2aXR5LmRldGVjdF9vbj93aW5kb3c6YS5jYW52YXMuZWw7aWYoYS5pbnRlcmFjdGl2aXR5LmV2ZW50cy5vbmhvdmVyLmVuYWJsZXx8YS5pbnRlcmFjdGl2aXR5LmV2ZW50cy5vbmNsaWNrLmVuYWJsZSlsLm9uKCJtb3VzZW1vdmUucnNwYXJ0aWNsZXMiLGZ1bmN0aW9uKGIpe2EuaW50ZXJhY3Rpdml0eS5tb3VzZS5wb3NfeD1iLnBhZ2VYLWEub2Zmc2V0LmxlZnQ7YS5pbnRlcmFjdGl2aXR5Lm1vdXNlLnBvc195PWIucGFnZVktYS5vZmZzZXQudG9wO2EuaW50ZXJhY3Rpdml0eS5zdGF0dXM9Im1vdXNlbW92ZSJ9KSxsWzBdLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGZ1bmN0aW9uKGIpe2EuaW50ZXJhY3Rpdml0eS5tb3VzZS5wb3NfeD1udWxsO2EuaW50ZXJhY3Rpdml0eS5tb3VzZS5wb3NfeT1udWxsO2EuaW50ZXJhY3Rpdml0eS5zdGF0dXM9Im1vdXNlbGVhdmUifSk7YS5pbnRlcmFjdGl2aXR5LmV2ZW50cy5vbmNsaWNrLmVuYWJsZSYmDQphLmludGVyYWN0aXZpdHkuZWwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7YS5pbnRlcmFjdGl2aXR5Lm1vdXNlLmNsaWNrX3Bvc194PWEuaW50ZXJhY3Rpdml0eS5tb3VzZS5wb3NfeDthLmludGVyYWN0aXZpdHkubW91c2UuY2xpY2tfcG9zX3k9YS5pbnRlcmFjdGl2aXR5Lm1vdXNlLnBvc195O2EuaW50ZXJhY3Rpdml0eS5tb3VzZS5jbGlja190aW1lPShuZXcgRGF0ZSkuZ2V0VGltZSgpO2lmKGEuaW50ZXJhY3Rpdml0eS5ldmVudHMub25jbGljay5lbmFibGUpc3dpdGNoKGEuaW50ZXJhY3Rpdml0eS5ldmVudHMub25jbGljay5tb2RlKXtjYXNlICJwdXNoIjphLnBhcnRpY2xlcy5tb3ZlLmVuYWJsZT9hLmZuLm1vZGVzLnB1c2hQYXJ0aWNsZXMoYS5pbnRlcmFjdGl2aXR5Lm1vZGVzLnB1c2gucGFydGljbGVzX25iLGEuaW50ZXJhY3Rpdml0eS5tb3VzZSk6MT09YS5pbnRlcmFjdGl2aXR5Lm1vZGVzLnB1c2gucGFydGljbGVzX25iP2EuZm4ubW9kZXMucHVzaFBhcnRpY2xlcyhhLmludGVyYWN0aXZpdHkubW9kZXMucHVzaC5wYXJ0aWNsZXNfbmIsDQphLmludGVyYWN0aXZpdHkubW91c2UpOjE8YS5pbnRlcmFjdGl2aXR5Lm1vZGVzLnB1c2gucGFydGljbGVzX25iJiZhLmZuLm1vZGVzLnB1c2hQYXJ0aWNsZXMoYS5pbnRlcmFjdGl2aXR5Lm1vZGVzLnB1c2gucGFydGljbGVzX25iKTticmVhaztjYXNlICJyZW1vdmUiOmEuZm4ubW9kZXMucmVtb3ZlUGFydGljbGVzKGEuaW50ZXJhY3Rpdml0eS5tb2Rlcy5yZW1vdmUucGFydGljbGVzX25iKTticmVhaztjYXNlICJidWJibGUiOmEudG1wLmJ1YmJsZV9jbGlja2luZz0hMDticmVhaztjYXNlICJyZXB1bHNlIjphLnRtcC5yZXB1bHNlX2NsaWNraW5nPSEwLGEudG1wLnJlcHVsc2VfY291bnQ9MCxhLnRtcC5yZXB1bHNlX2ZpbmlzaD0hMSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS50bXAucmVwdWxzZV9jbGlja2luZz0hMX0sMUUzKmEuaW50ZXJhY3Rpdml0eS5tb2Rlcy5yZXB1bHNlLmR1cmF0aW9uKX19KX07YS5mbi52ZW5kb3JzLmRlbnNpdHlBdXRvUGFydGljbGVzPWZ1bmN0aW9uKCl7aWYoYS5wYXJ0aWNsZXMubnVtYmVyLmRlbnNpdHkuZW5hYmxlKXt2YXIgYj0NCmEuY2FudmFzLmVsLndpZHRoKmEuY2FudmFzLmVsLmhlaWdodC8xRTM7YS50bXAucmV0aW5hJiYoYi89MiphLmNhbnZhcy5weHJhdGlvKTtiPWEucGFydGljbGVzLmFycmF5Lmxlbmd0aC1iKmEucGFydGljbGVzLm51bWJlci52YWx1ZS9hLnBhcnRpY2xlcy5udW1iZXIuZGVuc2l0eS52YWx1ZV9hcmVhOzA+Yj9hLmZuLm1vZGVzLnB1c2hQYXJ0aWNsZXMoTWF0aC5hYnMoYikpOmEuZm4ubW9kZXMucmVtb3ZlUGFydGljbGVzKGIpfX07YS5mbi52ZW5kb3JzLmNoZWNrT3ZlcmxhcD1mdW5jdGlvbihiLGMpe2Zvcih2YXIgZD1hLnBhcnRpY2xlcy5hcnJheS5sZW5ndGgsZj0wO2Y8ZDtmKyspe3ZhciBnPWEucGFydGljbGVzLmFycmF5W2ZdLGs9Yi54LWcueCxlPWIueS1nLnk7TWF0aC5zcXJ0KGsqaytlKmUpPD1iLnJhZGl1cytnLnJhZGl1cyYmKGIueD1jP2MueDpNYXRoLnJhbmRvbSgpKmEuY2FudmFzLncsYi55PWM/Yy55Ok1hdGgucmFuZG9tKCkqYS5jYW52YXMuaCxhLmZuLnZlbmRvcnMuY2hlY2tPdmVybGFwKGIpKX19Ow0KYS5mbi52ZW5kb3JzLmNyZWF0ZVN2Z0ltZz1mdW5jdGlvbihiKXt2YXIgYz1hLnRtcC5zb3VyY2Vfc3ZnLnJlcGxhY2UoLyMoWzAtOUEtRl17Myw2fSkvZ2ksbi5jYWxsKGIpKS5yZXBsYWNlKCJ7e3N0cm9rZS1jb2xvcn19IixiLnN0cm9rZUNvbG9yKSxkPW5ldyBJbWFnZSxjPSJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LCIrYnRvYShjKTtkLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGZ1bmN0aW9uKCl7Yi5pbWcub2JqPWQ7Yi5pbWcubG9hZGVkPSEwO2EudG1wLmNvdW50X3N2ZysrfSk7ZC5zcmM9Y307YS5mbi52ZW5kb3JzLmRlc3Ryb3lwSlM9ZnVuY3Rpb24oKXtjYW5jZWxBbmltYXRpb25GcmFtZShhLmZuLmRyYXdBbmltRnJhbWUpO2YucmVtb3ZlKCl9O2EuZm4udmVuZG9ycy5kcmF3U2hhcGU9ZnVuY3Rpb24oYSxjLGQsZixnLGspe3ZhciBiPWcqaztnLz1rO2c9TWF0aC5QSS0xODAqKGctMikvZypNYXRoLlBJLzE4MDthLnNhdmUoKTthLmJlZ2luUGF0aCgpO2EudHJhbnNsYXRlKGMsDQpkKTthLm1vdmVUbygwLDApO2ZvcihjPTA7YzxiO2MrKylhLmxpbmVUbyhmLDApLGEudHJhbnNsYXRlKGYsMCksYS5yb3RhdGUoZyk7YS5maWxsKCk7YS5yZXN0b3JlKCl9O2EuZm4udmVuZG9ycy5sb2FkSW1nPWZ1bmN0aW9uKGIsYyl7YS50bXAuc291cmNlX3N2Zz1jO2EuZm4udmVuZG9ycy5jaGVja0JlZm9yZURyYXcoKX07YS5mbi52ZW5kb3JzLmRyYXc9ZnVuY3Rpb24oKXsiaW1hZ2UiPT1hLnBhcnRpY2xlcy5zaGFwZS50eXBlPyJzdmciPT1hLnRtcC5pbWdfdHlwZT9hLnRtcC5jb3VudF9zdmc+PWEucGFydGljbGVzLm51bWJlci52YWx1ZT8oYS5mbi5wYXJ0aWNsZXNEcmF3KCksYS5wYXJ0aWNsZXMubW92ZS5lbmFibGU/YS5mbi5kcmF3QW5pbUZyYW1lPXJzcFJlcXVlc3RBbmltRnJhbWUoYS5mbi52ZW5kb3JzLmRyYXcpOnJzcENhbmNlbEFuaW1GcmFtZShhLmZuLmRyYXdBbmltRnJhbWUpKTphLnRtcC5pbWdfZXJyb3J8fChhLmZuLmRyYXdBbmltRnJhbWU9cnNwUmVxdWVzdEFuaW1GcmFtZShhLmZuLnZlbmRvcnMuZHJhdykpOg0Kdm9pZCAwIT1hLnRtcC5pbWdfb2JqPyhhLmZuLnBhcnRpY2xlc0RyYXcoKSxhLnBhcnRpY2xlcy5tb3ZlLmVuYWJsZT9hLmZuLmRyYXdBbmltRnJhbWU9cnNwUmVxdWVzdEFuaW1GcmFtZShhLmZuLnZlbmRvcnMuZHJhdyk6cnNwQ2FuY2VsQW5pbUZyYW1lKGEuZm4uZHJhd0FuaW1GcmFtZSkpOmEudG1wLmltZ19lcnJvcnx8KGEuZm4uZHJhd0FuaW1GcmFtZT1yc3BSZXF1ZXN0QW5pbUZyYW1lKGEuZm4udmVuZG9ycy5kcmF3KSk6KGEuZm4ucGFydGljbGVzRHJhdygpLGEucGFydGljbGVzLm1vdmUuZW5hYmxlP2EuZm4uZHJhd0FuaW1GcmFtZT1yc3BSZXF1ZXN0QW5pbUZyYW1lKGEuZm4udmVuZG9ycy5kcmF3KTpyc3BDYW5jZWxBbmltRnJhbWUoYS5mbi5kcmF3QW5pbUZyYW1lKSl9O2EuZm4udmVuZG9ycy5jaGVja0JlZm9yZURyYXc9ZnVuY3Rpb24oKXsiaW1hZ2UiPT1hLnBhcnRpY2xlcy5zaGFwZS50eXBlPyJzdmciPT1hLnRtcC5pbWdfdHlwZSYmdm9pZCAwPT1hLnRtcC5zb3VyY2Vfc3ZnPw0KYS50bXAuY2hlY2tBbmltRnJhbWU9cnNwUmVxdWVzdEFuaW1GcmFtZShjaGVjayk6KHJzcENhbmNlbEFuaW1GcmFtZShhLnRtcC5jaGVja0FuaW1GcmFtZSksYS50bXAuaW1nX2Vycm9yfHwoYS5mbi52ZW5kb3JzLmluaXQoKSxhLmZuLnZlbmRvcnMuZHJhdygpKSk6KGEuZm4udmVuZG9ycy5pbml0KCksYS5mbi52ZW5kb3JzLmRyYXcoKSl9O2EuZm4udmVuZG9ycy5pbml0PWZ1bmN0aW9uKCl7YS5mbi5yZXRpbmFJbml0KCk7YS5mbi5jYW52YXNJbml0KCk7YS5mbi5jYW52YXNTaXplKCk7YS5mbi5jYW52YXNQYWludCgpO2EuZm4ucGFydGljbGVzQ3JlYXRlKCk7YS5mbi52ZW5kb3JzLmRlbnNpdHlBdXRvUGFydGljbGVzKCl9O2EuZm4udmVuZG9ycy5zdGFydD1mdW5jdGlvbigpey0xPGEucGFydGljbGVzLnNoYXBlLnR5cGUuaW5kZXhPZigiaW1hZ2UiKT8oYS50bXAuaW1nX3R5cGU9InN2ZyIsYS5mbi52ZW5kb3JzLmxvYWRJbWcoYS50bXAuaW1nX3R5cGUsYS5wYXJ0aWNsZXMuc2hhcGUuaW1hZ2Uuc3JjKSk6DQphLmZuLnZlbmRvcnMuY2hlY2tCZWZvcmVEcmF3KCl9O2EuZm4udmVuZG9ycy5ldmVudHNMaXN0ZW5lcnMoKTthLmZuLnZlbmRvcnMuc3RhcnQoKX07T2JqZWN0LmRlZXBFeHRlbmQ9ZnVuY3Rpb24oZixrKXtmb3IodmFyIGcgaW4gaylrW2ddJiZrW2ddLmNvbnN0cnVjdG9yJiZrW2ddLmNvbnN0cnVjdG9yPT09T2JqZWN0PyhmW2ddPWZbZ118fHt9LGFyZ3VtZW50cy5jYWxsZWUoZltnXSxrW2ddKSk6ZltnXT1rW2ddO3JldHVybiBmfTt3aW5kb3cucnNwUmVxdWVzdEFuaW1GcmFtZT1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lfHx3aW5kb3cud2Via2l0UmVxdWVzdEFuaW1hdGlvbkZyYW1lfHx3aW5kb3cubW96UmVxdWVzdEFuaW1hdGlvbkZyYW1lfHx3aW5kb3cub1JlcXVlc3RBbmltYXRpb25GcmFtZXx8d2luZG93Lm1zUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxmdW5jdGlvbihmKXt3aW5kb3cuc2V0VGltZW91dChmLDFFMy82MCl9fSgpO3dpbmRvdy5yc3BDYW5jZWxBbmltRnJhbWU9DQp3aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWV8fHdpbmRvdy53ZWJraXRDYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHdpbmRvdy5tb3pDYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHdpbmRvdy5vQ2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHx3aW5kb3cubXNDYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fGNsZWFyVGltZW91dDt3aW5kb3cucEpTRG9tUnM9W107d2luZG93LnBhcnRpY2xlc0pTUnM9ZnVuY3Rpb24oZixrLGcsbSxsKXt2YXIgcD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGYpO251bGw9PXAmJmNvbnNvbGUubG9nKCJzbGlkZSB3aXRoIHBhcnRpY2xlcyByZW1vdmVkIGZyb20gRE9NIik7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIik7bi5jbGFzc05hbWU9InJzLXBhcnRpY2xlcy1jYW52YXMiO24uaWQ9bTtwLmFwcGVuZENoaWxkKG4pO3BKU0RvbVJzLnB1c2gobmV3IEMobixmLGssZyxsKSl9fSkoKTs="}},"time_used":15707,"timings":{"blocked":14632,"dns":0,"connect":0,"send":0,"wait":1075,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.slideanims.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.297Z","timestamp":1785143908297,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/js/extensions/revolution.extension.slideanims.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:44 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"6f02-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 6767\r\nKeep-Alive: timeout=5, max=98\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":28418,"size_decoded":7135,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (28168), with CRLF line terminators","md5":"4c8034d4830f59a65ef5921055a81840","sha1":"d55e6bd293ef939f32a440ca534ecfcf9185dad4","sha256":"f0c949d41d22c4659526d0f6a2189cf5c3372a9fe521a83ec266e06fecedd862","sha512":"f915968436d636ef5577933fab703b157e75db56cb5381091e8018462e5dc16173717393baf5d873568d22939b0399c447f98837eaf44d4f5e7b024a56e50c0b","ssdeep":"384:r1E6s5Onvzy40Islk/5E7063vCB41b0zoSFahq1i42s43AxgkNvr0dxucMd3J:kIslkxE77vAzo2kVwP","tlshash":"4ad2dbebaa665c6250432142c3b98d192138cd72fd23aeda33d690f506c305d36eafd6","first_seen":"2023-03-07T01:06:58Z","last_seen":"2026-08-09T08:42:12.864106Z","times_seen":816,"resource_available":true,"data":"LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICogUkVWT0xVVElPTiA1LjMgRVhURU5TSU9OIC0gU0xJREUgQU5JTUFUSU9OUw0KICogQHZlcnNpb246IDEuNiAoMTcuMTEuMjAxNikNCiAqIEByZXF1aXJlcyBqcXVlcnkudGhlbWVwdW5jaC5yZXZvbHV0aW9uLmpzDQogKiBAYXV0aG9yIFRoZW1lUHVuY2gNCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiFmdW5jdGlvbihhKXsidXNlIHN0cmljdCI7dmFyIGI9alF1ZXJ5LmZuLnJldm9sdXRpb24sYz17YWxpYXM6IlNsaWRlQW5pbWF0aW9ucyBNaW4gSlMiLG5hbWU6InJldm9sdXRpb24uZXh0ZW5zaW9ucy5zbGlkZWFuaW1zLm1pbi5qcyIsbWluX2NvcmU6IjUuMCIsdmVyc2lvbjoiMS42In07alF1ZXJ5LmV4dGVuZCghMCxiLHthbmltYXRlU2xpZGU6ZnVuY3Rpb24oYSxkLGUsZixoLGksaixrKXtyZXR1cm4ic3RvcCI9PT1iLmNvbXBhcmVfdmVyc2lvbihjKS5jaGVjaz9rOmcoYSxkLGUsZixoLGksaixrKX19KTt2YXIgZD1mdW5jdGlvbihhLGMsZCxlKXt2YXIgZj1hLGc9Zi5maW5kKCIuZGVmYXVsdGltZyIpLGg9Zy5kYXRhKCJtZWRpYWZpbHRlciIpLGk9Zi5kYXRhKCJ6b29tc3RhcnQiKSxqPWYuZGF0YSgicm90YXRpb25zdGFydCIpO3ZvaWQgMCE9Zy5kYXRhKCJjdXJyb3RhdGUiKSYmKGo9Zy5kYXRhKCJjdXJyb3RhdGUiKSksdm9pZCAwIT1nLmRhdGEoImN1cnNjYWxlIikmJiJib3giPT1lP2k9MTAwKmcuZGF0YSgiY3Vyc2NhbGUiKTp2b2lkIDAhPWcuZGF0YSgiY3Vyc2NhbGUiKSYmKGk9Zy5kYXRhKCJjdXJzY2FsZSIpKSxiLnNsb3RTaXplKGcsYyk7dmFyIGs9Zy5hdHRyKCJzcmMiKSxsPWcuY3NzKCJiYWNrZ3JvdW5kQ29sb3IiKSxtPWMud2lkdGgsbj1jLmhlaWdodCxvPWcuZGF0YSgiZnhvZiIpLHA9MDsib24iPT1jLmF1dG9IZWlnaHQmJihuPWMuYy5oZWlnaHQoKSksdm9pZCAwPT1vJiYobz0wKTt2YXIgcT0wLHI9Zy5kYXRhKCJiZ2ZpdCIpLHM9Zy5kYXRhKCJiZ3JlcGVhdCIpLHQ9Zy5kYXRhKCJiZ3Bvc2l0aW9uIik7c3dpdGNoKHZvaWQgMD09ciYmKHI9ImNvdmVyIiksdm9pZCAwPT1zJiYocz0ibm8tcmVwZWF0Iiksdm9pZCAwPT10JiYodD0iY2VudGVyIGNlbnRlciIpLGUpe2Nhc2UiYm94Ijpmb3IodmFyIHU9MCx2PTAsdz0wO3c8Yy5zbG90czt3Kyspe3Y9MDtmb3IodmFyIHg9MDt4PGMuc2xvdHM7eCsrKWYuYXBwZW5kKCc8ZGl2IGNsYXNzPSJzbG90IiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7dG9wOicrKHArdikrInB4O2xlZnQ6Iisobyt1KSsicHg7d2lkdGg6IitjLnNsb3R3KyJweDtoZWlnaHQ6IitjLnNsb3RoKydweDtvdmVyZmxvdzpoaWRkZW47Ij48ZGl2IGNsYXNzPSJzbG90c2xpZGUgJytoKyciIGRhdGEteD0iJyt1KyciIGRhdGEteT0iJyt2KyciIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MHB4O2xlZnQ6MHB4O3dpZHRoOicrYy5zbG90dysicHg7aGVpZ2h0OiIrYy5zbG90aCsncHg7b3ZlcmZsb3c6aGlkZGVuOyI+PGRpdiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7dG9wOicrKDAtdikrInB4O2xlZnQ6IisoMC11KSsicHg7d2lkdGg6IittKyJweDtoZWlnaHQ6IituKyJweDtiYWNrZ3JvdW5kLWNvbG9yOiIrbCsiO2JhY2tncm91bmQtaW1hZ2U6dXJsKCIraysiKTtiYWNrZ3JvdW5kLXJlcGVhdDoiK3MrIjtiYWNrZ3JvdW5kLXNpemU6IityKyI7YmFja2dyb3VuZC1wb3NpdGlvbjoiK3QrJzsiPjwvZGl2PjwvZGl2PjwvZGl2PicpLHYrPWMuc2xvdGgsdm9pZCAwIT1pJiZ2b2lkIDAhPWomJnB1bmNoZ3MuVHdlZW5MaXRlLnNldChmLmZpbmQoIi5zbG90IikubGFzdCgpLHtyb3RhdGlvblo6an0pO3UrPWMuc2xvdHd9YnJlYWs7Y2FzZSJ2ZXJ0aWNhbCI6Y2FzZSJob3Jpem9udGFsIjppZigiaG9yaXpvbnRhbCI9PWUpe2lmKCFkKXZhciBxPTAtYy5zbG90dztmb3IodmFyIHg9MDt4PGMuc2xvdHM7eCsrKWYuYXBwZW5kKCc8ZGl2IGNsYXNzPSJzbG90IiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7dG9wOicrKDArcCkrInB4O2xlZnQ6Iisobyt4KmMuc2xvdHcpKyJweDtvdmVyZmxvdzpoaWRkZW47d2lkdGg6IisoYy5zbG90dysuMykrInB4O2hlaWdodDoiK24rJ3B4Ij48ZGl2IGNsYXNzPSJzbG90c2xpZGUgJytoKyciIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MHB4O2xlZnQ6JytxKyJweDt3aWR0aDoiKyhjLnNsb3R3Ky42KSsicHg7aGVpZ2h0OiIrbisncHg7b3ZlcmZsb3c6aGlkZGVuOyI+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjonK2wrIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MHB4O2xlZnQ6IisoMC14KmMuc2xvdHcpKyJweDt3aWR0aDoiK20rInB4O2hlaWdodDoiK24rInB4O2JhY2tncm91bmQtaW1hZ2U6dXJsKCIraysiKTtiYWNrZ3JvdW5kLXJlcGVhdDoiK3MrIjtiYWNrZ3JvdW5kLXNpemU6IityKyI7YmFja2dyb3VuZC1wb3NpdGlvbjoiK3QrJzsiPjwvZGl2PjwvZGl2PjwvZGl2PicpLHZvaWQgMCE9aSYmdm9pZCAwIT1qJiZwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZi5maW5kKCIuc2xvdCIpLmxhc3QoKSx7cm90YXRpb25aOmp9KX1lbHNle2lmKCFkKXZhciBxPTAtYy5zbG90aDtmb3IodmFyIHg9MDt4PGMuc2xvdHMrMjt4KyspZi5hcHBlbmQoJzxkaXYgY2xhc3M9InNsb3QiIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTt0b3A6JysocCt4KmMuc2xvdGgpKyJweDtsZWZ0OiIrbysicHg7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOiIrbSsicHg7aGVpZ2h0OiIrYy5zbG90aCsncHgiPjxkaXYgY2xhc3M9InNsb3RzbGlkZSAnK2grJyIgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO3RvcDonK3ErInB4O2xlZnQ6MHB4O3dpZHRoOiIrbSsicHg7aGVpZ2h0OiIrYy5zbG90aCsncHg7b3ZlcmZsb3c6aGlkZGVuOyI+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjonK2wrIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6IisoMC14KmMuc2xvdGgpKyJweDtsZWZ0OjBweDt3aWR0aDoiK20rInB4O2hlaWdodDoiK24rInB4O2JhY2tncm91bmQtaW1hZ2U6dXJsKCIraysiKTtiYWNrZ3JvdW5kLXJlcGVhdDoiK3MrIjtiYWNrZ3JvdW5kLXNpemU6IityKyI7YmFja2dyb3VuZC1wb3NpdGlvbjoiK3QrJzsiPjwvZGl2PjwvZGl2PjwvZGl2PicpLHZvaWQgMCE9aSYmdm9pZCAwIT1qJiZwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZi5maW5kKCIuc2xvdCIpLmxhc3QoKSx7cm90YXRpb25aOmp9KX19fSxlPWZ1bmN0aW9uKGEsYixjLGQpe2Z1bmN0aW9uIHkoKXtqUXVlcnkuZWFjaCh2LGZ1bmN0aW9uKGEsYyl7Y1swXSE9YiYmY1s4XSE9Ynx8KHE9Y1sxXSxyPWNbMl0scz10KSx0Kz0xfSl9dmFyIGU9YVswXS5vcHQsZj1wdW5jaGdzLlBvd2VyMS5lYXNlSW4sZz1wdW5jaGdzLlBvd2VyMS5lYXNlT3V0LGg9cHVuY2hncy5Qb3dlcjEuZWFzZUluT3V0LGk9cHVuY2hncy5Qb3dlcjIuZWFzZUluLGo9cHVuY2hncy5Qb3dlcjIuZWFzZU91dCxrPXB1bmNoZ3MuUG93ZXIyLmVhc2VJbk91dCxtPShwdW5jaGdzLlBvd2VyMy5lYXNlSW4scHVuY2hncy5Qb3dlcjMuZWFzZU91dCksbj1wdW5jaGdzLlBvd2VyMy5lYXNlSW5PdXQsbz1bMCwxLDIsMyw0LDUsNiw3LDgsOSwxMCwxMSwxMiwxMywxNCwxNSwyOCwyOSwzMCwzMSwzMiwzMywzNCwzNSwzNiwzNywzOCwzOSw0MCw0MSw0Miw0Myw0NCw0NV0scD1bMTYsMTcsMTgsMTksMjAsMjEsMjIsMjMsMjQsMjUsMjddLHE9MCxyPTEscz0wLHQ9MCx2PShuZXcgQXJyYXksW1siYm94c2xpZGUiLDAsMSwxMCwwLCJib3giLCExLG51bGwsMCxnLGcsNTAwLDZdLFsiYm94ZmFkZSIsMSwwLDEwLDAsImJveCIsITEsbnVsbCwxLGgsaCw3MDAsNV0sWyJzbG90c2xpZGUtaG9yaXpvbnRhbCIsMiwwLDAsMjAwLCJob3Jpem9udGFsIiwhMCwhMSwyLGssayw3MDAsM10sWyJzbG90c2xpZGUtdmVydGljYWwiLDMsMCwwLDIwMCwidmVydGljYWwiLCEwLCExLDMsayxrLDcwMCwzXSxbImN1cnRhaW4tMSIsNCwzLDAsMCwiaG9yaXpvbnRhbCIsITAsITAsNCxnLGcsMzAwLDVdLFsiY3VydGFpbi0yIiw1LDMsMCwwLCJob3Jpem9udGFsIiwhMCwhMCw1LGcsZywzMDAsNV0sWyJjdXJ0YWluLTMiLDYsMywyNSwwLCJob3Jpem9udGFsIiwhMCwhMCw2LGcsZywzMDAsNV0sWyJzbG90em9vbS1ob3Jpem9udGFsIiw3LDAsMCw0MDAsImhvcml6b250YWwiLCEwLCEwLDcsZyxnLDMwMCw3XSxbInNsb3R6b29tLXZlcnRpY2FsIiw4LDAsMCwwLCJ2ZXJ0aWNhbCIsITAsITAsOCxqLGosNTAwLDhdLFsic2xvdGZhZGUtaG9yaXpvbnRhbCIsOSwwLDAsMWUzLCJob3Jpem9udGFsIiwhMCxudWxsLDksaixqLDJlMywxMF0sWyJzbG90ZmFkZS12ZXJ0aWNhbCIsMTAsMCwwLDFlMywidmVydGljYWwiLCEwLG51bGwsMTAsaixqLDJlMywxMF0sWyJmYWRlIiwxMSwwLDEsMzAwLCJob3Jpem9udGFsIiwhMCxudWxsLDExLGssaywxZTMsMV0sWyJjcm9zc2ZhZGUiLDExLDEsMSwzMDAsImhvcml6b250YWwiLCEwLG51bGwsMTEsayxrLDFlMywxXSxbImZhZGV0aHJvdWdoZGFyayIsMTEsMiwxLDMwMCwiaG9yaXpvbnRhbCIsITAsbnVsbCwxMSxrLGssMWUzLDFdLFsiZmFkZXRocm91Z2hsaWdodCIsMTEsMywxLDMwMCwiaG9yaXpvbnRhbCIsITAsbnVsbCwxMSxrLGssMWUzLDFdLFsiZmFkZXRocm91Z2h0cmFuc3BhcmVudCIsMTEsNCwxLDMwMCwiaG9yaXpvbnRhbCIsITAsbnVsbCwxMSxrLGssMWUzLDFdLFsic2xpZGVsZWZ0IiwxMiwwLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMTIsbixuLDFlMywxXSxbInNsaWRldXAiLDEzLDAsMSwwLCJob3Jpem9udGFsIiwhMCwhMCwxMyxuLG4sMWUzLDFdLFsic2xpZGVkb3duIiwxNCwwLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMTQsbixuLDFlMywxXSxbInNsaWRlcmlnaHQiLDE1LDAsMSwwLCJob3Jpem9udGFsIiwhMCwhMCwxNSxuLG4sMWUzLDFdLFsic2xpZGVvdmVybGVmdCIsMTIsNywxLDAsImhvcml6b250YWwiLCEwLCEwLDEyLG4sbiwxZTMsMV0sWyJzbGlkZW92ZXJ1cCIsMTMsNywxLDAsImhvcml6b250YWwiLCEwLCEwLDEzLG4sbiwxZTMsMV0sWyJzbGlkZW92ZXJkb3duIiwxNCw3LDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMTQsbixuLDFlMywxXSxbInNsaWRlb3ZlcnJpZ2h0IiwxNSw3LDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMTUsbixuLDFlMywxXSxbInNsaWRlcmVtb3ZlbGVmdCIsMTIsOCwxLDAsImhvcml6b250YWwiLCEwLCEwLDEyLG4sbiwxZTMsMV0sWyJzbGlkZXJlbW92ZXVwIiwxMyw4LDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMTMsbixuLDFlMywxXSxbInNsaWRlcmVtb3ZlZG93biIsMTQsOCwxLDAsImhvcml6b250YWwiLCEwLCEwLDE0LG4sbiwxZTMsMV0sWyJzbGlkZXJlbW92ZXJpZ2h0IiwxNSw4LDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMTUsbixuLDFlMywxXSxbInBhcGVyY3V0IiwxNiwwLDAsNjAwLCIiLG51bGwsbnVsbCwxNixuLG4sMWUzLDJdLFsiM2RjdXJ0YWluLWhvcml6b250YWwiLDE3LDAsMjAsMTAwLCJ2ZXJ0aWNhbCIsITEsITAsMTcsaCxoLDUwMCw3XSxbIjNkY3VydGFpbi12ZXJ0aWNhbCIsMTgsMCwxMCwxMDAsImhvcml6b250YWwiLCExLCEwLDE4LGgsaCw1MDAsNV0sWyJjdWJpYyIsMTksMCwyMCw2MDAsImhvcml6b250YWwiLCExLCEwLDE5LG4sbiw1MDAsMV0sWyJjdWJlIiwxOSwwLDIwLDYwMCwiaG9yaXpvbnRhbCIsITEsITAsMjAsbixuLDUwMCwxXSxbImZseWluIiwyMCwwLDQsNjAwLCJ2ZXJ0aWNhbCIsITEsITAsMjEsbSxuLDUwMCwxXSxbInR1cm5vZmYiLDIxLDAsMSw1MDAsImhvcml6b250YWwiLCExLCEwLDIyLG4sbiw1MDAsMV0sWyJpbmN1YmUiLDIyLDAsMjAsMjAwLCJob3Jpem9udGFsIiwhMSwhMCwyMyxrLGssNTAwLDFdLFsiY3ViaWMtaG9yaXpvbnRhbCIsMjMsMCwyMCw1MDAsInZlcnRpY2FsIiwhMSwhMCwyNCxqLGosNTAwLDFdLFsiY3ViZS1ob3Jpem9udGFsIiwyMywwLDIwLDUwMCwidmVydGljYWwiLCExLCEwLDI1LGosaiw1MDAsMV0sWyJpbmN1YmUtaG9yaXpvbnRhbCIsMjQsMCwyMCw1MDAsInZlcnRpY2FsIiwhMSwhMCwyNixrLGssNTAwLDFdLFsidHVybm9mZi12ZXJ0aWNhbCIsMjUsMCwxLDIwMCwiaG9yaXpvbnRhbCIsITEsITAsMjcsayxrLDUwMCwxXSxbImZhZGVmcm9tcmlnaHQiLDE0LDEsMSwwLCJob3Jpem9udGFsIiwhMCwhMCwyOCxrLGssMWUzLDFdLFsiZmFkZWZyb21sZWZ0IiwxNSwxLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMjksayxrLDFlMywxXSxbImZhZGVmcm9tdG9wIiwxNCwxLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMzAsayxrLDFlMywxXSxbImZhZGVmcm9tYm90dG9tIiwxMywxLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMzEsayxrLDFlMywxXSxbImZhZGV0b2xlZnRmYWRlZnJvbXJpZ2h0IiwxMiwyLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMzIsayxrLDFlMywxXSxbImZhZGV0b3JpZ2h0ZmFkZWZyb21sZWZ0IiwxNSwyLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMzMsayxrLDFlMywxXSxbImZhZGV0b2JvdHRvbWZhZGVmcm9tdG9wIiwxNCwyLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMzQsayxrLDFlMywxXSxbImZhZGV0b3RvcGZhZGVmcm9tYm90dG9tIiwxMywyLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsMzUsayxrLDFlMywxXSxbInBhcmFsbGF4dG9yaWdodCIsMTUsMywxLDAsImhvcml6b250YWwiLCEwLCEwLDM2LGssaSwxNTAwLDFdLFsicGFyYWxsYXh0b2xlZnQiLDEyLDMsMSwwLCJob3Jpem9udGFsIiwhMCwhMCwzNyxrLGksMTUwMCwxXSxbInBhcmFsbGF4dG90b3AiLDE0LDMsMSwwLCJob3Jpem9udGFsIiwhMCwhMCwzOCxrLGYsMTUwMCwxXSxbInBhcmFsbGF4dG9ib3R0b20iLDEzLDMsMSwwLCJob3Jpem9udGFsIiwhMCwhMCwzOSxrLGYsMTUwMCwxXSxbInNjYWxlZG93bmZyb21yaWdodCIsMTIsNCwxLDAsImhvcml6b250YWwiLCEwLCEwLDQwLGssaSwxZTMsMV0sWyJzY2FsZWRvd25mcm9tbGVmdCIsMTUsNCwxLDAsImhvcml6b250YWwiLCEwLCEwLDQxLGssaSwxZTMsMV0sWyJzY2FsZWRvd25mcm9tdG9wIiwxNCw0LDEsMCwiaG9yaXpvbnRhbCIsITAsITAsNDIsayxpLDFlMywxXSxbInNjYWxlZG93bmZyb21ib3R0b20iLDEzLDQsMSwwLCJob3Jpem9udGFsIiwhMCwhMCw0MyxrLGksMWUzLDFdLFsiem9vbW91dCIsMTMsNSwxLDAsImhvcml6b250YWwiLCEwLCEwLDQ0LGssaSwxZTMsMV0sWyJ6b29taW4iLDEzLDYsMSwwLCJob3Jpem9udGFsIiwhMCwhMCw0NSxrLGksMWUzLDFdLFsic2xpZGluZ292ZXJsYXl1cCIsMjcsMCwxLDAsImhvcml6b250YWwiLCEwLCEwLDQ3LGgsZywyZTMsMV0sWyJzbGlkaW5nb3ZlcmxheWRvd24iLDI4LDAsMSwwLCJob3Jpem9udGFsIiwhMCwhMCw0OCxoLGcsMmUzLDFdLFsic2xpZGluZ292ZXJsYXlyaWdodCIsMzAsMCwxLDAsImhvcml6b250YWwiLCEwLCEwLDQ5LGgsZywyZTMsMV0sWyJzbGlkaW5nb3ZlcmxheWxlZnQiLDI5LDAsMSwwLCJob3Jpem9udGFsIiwhMCwhMCw1MCxoLGcsMmUzLDFdLFsicGFyYWxsYXhjaXJjbGVzdXAiLDMxLDAsMSwwLCJob3Jpem9udGFsIiwhMCwhMCw1MSxrLGYsMTUwMCwxXSxbInBhcmFsbGF4Y2lyY2xlc2Rvd24iLDMyLDAsMSwwLCJob3Jpem9udGFsIiwhMCwhMCw1MixrLGYsMTUwMCwxXSxbInBhcmFsbGF4Y2lyY2xlc3JpZ2h0IiwzMywwLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsNTMsayxmLDE1MDAsMV0sWyJwYXJhbGxheGNpcmNsZXNsZWZ0IiwzNCwwLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsNTQsayxmLDE1MDAsMV0sWyJub3RyYW5zaXRpb24iLDI2LDAsMSwwLCJob3Jpem9udGFsIiwhMCxudWxsLDQ2LGssaSwxZTMsMV0sWyJwYXJhbGxheHJpZ2h0IiwxNSwzLDEsMCwiaG9yaXpvbnRhbCIsITAsITAsNTUsayxpLDE1MDAsMV0sWyJwYXJhbGxheGxlZnQiLDEyLDMsMSwwLCJob3Jpem9udGFsIiwhMCwhMCw1NixrLGksMTUwMCwxXSxbInBhcmFsbGF4dXAiLDE0LDMsMSwwLCJob3Jpem9udGFsIiwhMCwhMCw1NyxrLGYsMTUwMCwxXSxbInBhcmFsbGF4ZG93biIsMTMsMywxLDAsImhvcml6b250YWwiLCEwLCEwLDU4LGssZiwxNTAwLDFdXSk7ZS5kdXJpbmdzbGlkZWNoYW5nZT0hMCxlLnRlc3Rhbmltcz0hMSwxPT1lLnRlc3RhbmltcyYmKGUubmV4dHRlc3R0cmFuc2Zvcm09dm9pZCAwPT09ZS5uZXh0dGVzdHRyYW5zZm9ybT8zNDplLm5leHR0ZXN0dHJhbnNmb3JtKzEsZS5uZXh0dGVzdHRyYW5zZm9ybT1lLm5leHR0ZXN0dHJhbnNmb3JtPjcwPzA6ZS5uZXh0dGVzdHRyYW5zZm9ybSxiPXZbZS5uZXh0dGVzdHRyYW5zZm9ybV1bMF0sY29uc29sZS5sb2coYisiICAiK2UubmV4dHRlc3R0cmFuc2Zvcm0rIiAgIit2W2UubmV4dHRlc3R0cmFuc2Zvcm1dWzFdKyIgICIrdltlLm5leHR0ZXN0dHJhbnNmb3JtXVsyXSkpLGpRdWVyeS5lYWNoKFsicGFyYWxsYXhjaXJjbGVzIiwic2xpZGluZ292ZXJsYXkiLCJzbGlkZSIsInNsaWRlb3ZlciIsInNsaWRlcmVtb3ZlIiwicGFyYWxsYXgiLCJwYXJyYWxheHRvIl0sZnVuY3Rpb24oYSxjKXtiPT1jKyJob3Jpem9udGFsIiYmKGI9MSE9ZD9jKyJsZWZ0IjpjKyJyaWdodCIpLGI9PWMrInZlcnRpY2FsIiYmKGI9MSE9ZD9jKyJ1cCI6YysiZG93biIpfSksInJhbmRvbSI9PWImJihiPU1hdGgucm91bmQoTWF0aC5yYW5kb20oKSp2Lmxlbmd0aC0xKSxiPnYubGVuZ3RoLTEmJihiPXYubGVuZ3RoLTEpKSwicmFuZG9tLXN0YXRpYyI9PWImJihiPU1hdGgucm91bmQoTWF0aC5yYW5kb20oKSpvLmxlbmd0aC0xKSxiPm8ubGVuZ3RoLTEmJihiPW8ubGVuZ3RoLTEpLGI9b1tiXSksInJhbmRvbS1wcmVtaXVtIj09YiYmKGI9TWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpKnAubGVuZ3RoLTEpLGI+cC5sZW5ndGgtMSYmKGI9cC5sZW5ndGgtMSksYj1wW2JdKTt2YXIgdz1bMTIsMTMsMTQsMTUsMTYsMjgsMjksMzAsMzEsMzIsMzMsMzQsMzUsMzYsMzcsMzgsMzksNDAsNDEsNDIsNDMsNDQsNDVdO2lmKDE9PWUuaXNKb29tbGEmJnZvaWQgMCE9d2luZG93Lk1vb1Rvb2xzJiZ3LmluZGV4T2YoYikhPS0xKXt2YXIgeD1NYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkqKHAubGVuZ3RoLTIpKSsxO3g+cC5sZW5ndGgtMSYmKHg9cC5sZW5ndGgtMSksMD09eCYmKHg9MSksYj1wW3hdfXkoKSxxPjMwJiYocT0zMCkscTwwJiYocT0wKTt2YXIgej1uZXcgT2JqZWN0O3JldHVybiB6Lm5leHR0cmFucz1xLHouU1RBPXZbc10sei5zcGVjaWFscz1yLHp9LGY9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdm9pZCAwPT1ifHxqUXVlcnkuaXNOdW1lcmljKGEpP2E6dm9pZCAwPT1hP2E6YS5zcGxpdCgiLCIpW2JdfSxnPWZ1bmN0aW9uKGEsYixjLGcsaCxpLGosayl7ZnVuY3Rpb24gVihhLGIsYyxkLGUpe3ZhciBmPWEuZmluZCgiLnNsb3QiKSxnPTYsaD1bMiwxLjIsLjksLjcsLjU1LC40Ml0saj1hLndpZHRoKCksbD1hLmhlaWdodCgpO2Yud3JhcCgnPGRpdiBjbGFzcz0ic2xvdC1jaXJjbGUtd3JhcHBlciIgc3R5bGU9Im92ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXI6MXB4IHNvbGlkICNmZmYiPjwvZGl2PicpO2Zvcih2YXIgbj0wO248ZztuKyspZi5wYXJlbnQoKS5jbG9uZSghMSkuYXBwZW5kVG8oaSk7YS5maW5kKCIuc2xvdC1jaXJjbGUtd3JhcHBlciIpLmVhY2goZnVuY3Rpb24oYSl7aWYoYTxnKXt2YXIgZD1qUXVlcnkodGhpcyksZj1kLmZpbmQoIi5zbG90IiksaT1qPmw/aFthXSpqOmhbYV0qbCxtPWksbj0wKyhtLzItai8yKSxvPTArKGkvMi1sLzIpLHA9MCE9YT8iNTAlIjoiMCIscT0zMT09Yz9sLzItaS8yOjMyPT1jP2wvMi1pLzI6bC8yLWkvMixyPTMzPT1jP2ovMi1tLzI6MzQ9PWM/ai1tOmovMi1tLzIscz17c2NhbGU6MSx0cmFuc2Zvcm1PcmlnbzoiNTAlIDUwJSIsd2lkdGg6bSsicHgiLGhlaWdodDppKyJweCIsdG9wOnErInB4IixsZWZ0OnIrInB4Iixib3JkZXJSYWRpdXM6cH0sdD17c2NhbGU6MSx0b3A6bC8yLWkvMixsZWZ0OmovMi1tLzIsZWFzZTplfSx1PTMxPT1jP286MzI9PWM/bzpvLHY9MzM9PWM/bjozND09Yz9uK2ovMjpuLHc9e3dpZHRoOmosaGVpZ2h0OmwsYXV0b0FscGhhOjEsdG9wOnUrInB4Iixwb3NpdGlvbjoiYWJzb2x1dGUiLGxlZnQ6disicHgifSx4PXt0b3A6bysicHgiLGxlZnQ6bisicHgiLGVhc2U6ZX0seT1iLHo9MDtrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oZCx5LHMsdCkseiksay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGYseSx3LHgpLHopLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhkLC4wMDEse2F1dG9BbHBoYTowfSx7YXV0b0FscGhhOjF9KSwwKX19KX12YXIgbD1jWzBdLm9wdCxtPWguaW5kZXgoKSxuPWcuaW5kZXgoKSxvPW48bT8xOjA7ImFycm93Ij09bC5zY19pbmRpY2F0b3ImJihvPWwuc2NfaW5kaWNhdG9yX2Rpcik7dmFyIHA9ZShjLGIsaSxvKSxxPXAuU1RBLHI9cC5zcGVjaWFscyxhPXAubmV4dHRyYW5zOyJvbiI9PWkuZGF0YSgia2VuYnVybnMiKSYmKGE9MTEpO3ZhciBzPWcuZGF0YSgibmV4dHRyYW5zaWQiKXx8MCx0PWYoZy5kYXRhKCJtYXN0ZXJzcGVlZCIpLHMpO3Q9ImRlZmF1bHQiPT09dD9xWzExXToicmFuZG9tIj09PXQ/TWF0aC5yb3VuZCgxZTMqTWF0aC5yYW5kb20oKSszMDApOnZvaWQgMCE9dD9wYXJzZUludCh0LDApOnFbMTFdLHQ9dD5sLmRlbGF5P2wuZGVsYXk6dCx0Kz1xWzRdLGwuc2xvdHM9ZihnLmRhdGEoInNsb3RhbW91bnQiKSxzKSxsLnNsb3RzPXZvaWQgMD09bC5zbG90c3x8ImRlZmF1bHQiPT1sLnNsb3RzP3FbMTJdOiJyYW5kb20iPT1sLnNsb3RzP01hdGgucm91bmQoMTIqTWF0aC5yYW5kb20oKSs0KTpsLnNsb3RzLGwuc2xvdHM9bC5zbG90czwxPyJib3hzbGlkZSI9PWI/TWF0aC5yb3VuZCg2Kk1hdGgucmFuZG9tKCkrMyk6ImZseWluIj09Yj9NYXRoLnJvdW5kKDQqTWF0aC5yYW5kb20oKSsxKTpsLnNsb3RzOmwuc2xvdHMsbC5zbG90cz0oND09YXx8NT09YXx8Nj09YSkmJmwuc2xvdHM8Mz8zOmwuc2xvdHMsbC5zbG90cz0wIT1xWzNdP01hdGgubWluKGwuc2xvdHMscVszXSk6bC5zbG90cyxsLnNsb3RzPTk9PWE/bC53aWR0aC9sLnNsb3RzOjEwPT1hP2wuaGVpZ2h0L2wuc2xvdHM6bC5zbG90cyxsLnJvdGF0ZT1mKGcuZGF0YSgicm90YXRlIikscyksbC5yb3RhdGU9dm9pZCAwPT1sLnJvdGF0ZXx8ImRlZmF1bHQiPT1sLnJvdGF0ZT8wOjk5OT09bC5yb3RhdGV8fCJyYW5kb20iPT1sLnJvdGF0ZT9NYXRoLnJvdW5kKDM2MCpNYXRoLnJhbmRvbSgpKTpsLnJvdGF0ZSxsLnJvdGF0ZT0halF1ZXJ5LnN1cHBvcnQudHJhbnNpdGlvbnx8bC5pZXx8bC5pZTk/MDpsLnJvdGF0ZSwxMSE9YSYmKG51bGwhPXFbN10mJmQoaixsLHFbN10scVs1XSksbnVsbCE9cVs2XSYmZChpLGwscVs2XSxxWzVdKSksay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGkuZmluZCgiLmRlZmF1bHR2aWQiKSx7eTowLHg6MCx0b3A6MCxsZWZ0OjAsc2NhbGU6MX0pLDApLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChqLmZpbmQoIi5kZWZhdWx0dmlkIikse3k6MCx4OjAsdG9wOjAsbGVmdDowLHNjYWxlOjF9KSwwKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5maW5kKCIuZGVmYXVsdHZpZCIpLHt5OiIrMCUiLHg6IiswJSJ9KSwwKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoai5maW5kKCIuZGVmYXVsdHZpZCIpLHt5OiIrMCUiLHg6IiswJSJ9KSwwKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaSx7YXV0b0FscGhhOjEseToiKzAlIix4OiIrMCUifSksMCksay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGose2F1dG9BbHBoYToxLHk6IiswJSIseDoiKzAlIn0pLDApLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChpLnBhcmVudCgpLHtiYWNrZ3JvdW5kQ29sb3I6InRyYW5zcGFyZW50In0pLDApLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChqLnBhcmVudCgpLHtiYWNrZ3JvdW5kQ29sb3I6InRyYW5zcGFyZW50In0pLDApO3ZhciB1PWYoZy5kYXRhKCJlYXNlaW4iKSxzKSx2PWYoZy5kYXRhKCJlYXNlb3V0Iikscyk7aWYodT0iZGVmYXVsdCI9PT11P3FbOV18fHB1bmNoZ3MuUG93ZXIyLmVhc2VJbk91dDp1fHxxWzldfHxwdW5jaGdzLlBvd2VyMi5lYXNlSW5PdXQsdj0iZGVmYXVsdCI9PT12P3FbMTBdfHxwdW5jaGdzLlBvd2VyMi5lYXNlSW5PdXQ6dnx8cVsxMF18fHB1bmNoZ3MuUG93ZXIyLmVhc2VJbk91dCwwPT1hKXt2YXIgdz1NYXRoLmNlaWwobC5oZWlnaHQvbC5zbG90aCkseD0wO2kuZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24oYSl7dmFyIGI9alF1ZXJ5KHRoaXMpO3grPTEseD09dyYmKHg9MCksay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbShiLHQvNjAwLHtvcGFjaXR5OjAsdG9wOjAtbC5zbG90aCxsZWZ0OjAtbC5zbG90dyxyb3RhdGlvbjpsLnJvdGF0ZSxmb3JjZTNEOiJhdXRvIixlYXNlOnV9KSwoMTUqYSszMCp4KS8xNTAwKX0pfWlmKDE9PWEpe3ZhciB5LHo9MDtpLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKGEpe3ZhciBiPWpRdWVyeSh0aGlzKSxjPU1hdGgucmFuZG9tKCkqdCszMDAsZD01MDAqTWF0aC5yYW5kb20oKSsyMDA7YytkPnkmJih5PWQrZCx6PWEpLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb20oYixjLzFlMyx7YXV0b0FscGhhOjAsZm9yY2UzRDoiYXV0byIscm90YXRpb246bC5yb3RhdGUsZWFzZTp1fSksZC8xZTMpfSl9aWYoMj09YSl7dmFyIEE9bmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlO2ouZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyk7QS5hZGQocHVuY2hncy5Ud2VlbkxpdGUudG8oYSx0LzFlMyx7bGVmdDpsLnNsb3R3LGVhc2U6dSxmb3JjZTNEOiJhdXRvIixyb3RhdGlvbjowLWwucm90YXRlfSksMCksay5hZGQoQSwwKX0pLGkuZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyk7QS5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbShhLHQvMWUzLHtsZWZ0OjAtbC5zbG90dyxlYXNlOnUsZm9yY2UzRDoiYXV0byIscm90YXRpb246bC5yb3RhdGV9KSwwKSxrLmFkZChBLDApfSl9aWYoMz09YSl7dmFyIEE9bmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlO2ouZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24oKXt2YXIgYT1qUXVlcnkodGhpcyk7QS5hZGQocHVuY2hncy5Ud2VlbkxpdGUudG8oYSx0LzFlMyx7dG9wOmwuc2xvdGgsZWFzZTp1LHJvdGF0aW9uOmwucm90YXRlLGZvcmNlM0Q6ImF1dG8iLHRyYW5zZm9ybVBlcnNwZWN0aXZlOjYwMH0pLDApLGsuYWRkKEEsMCl9KSxpLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGE9alF1ZXJ5KHRoaXMpO0EuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb20oYSx0LzFlMyx7dG9wOjAtbC5zbG90aCxyb3RhdGlvbjpsLnJvdGF0ZSxlYXNlOnYsZm9yY2UzRDoiYXV0byIsdHJhbnNmb3JtUGVyc3BlY3RpdmU6NjAwfSksMCksay5hZGQoQSwwKX0pfWlmKDQ9PWF8fDU9PWEpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXtqLmZpbmQoIi5kZWZhdWx0aW1nIikuY3NzKHtvcGFjaXR5OjB9KX0sMTAwKTt2YXIgQj10LzFlMyxBPW5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZTtqLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKGIpe3ZhciBjPWpRdWVyeSh0aGlzKSxkPWIqQi9sLnNsb3RzOzU9PWEmJihkPShsLnNsb3RzLWItMSkqQi9sLnNsb3RzLzEuNSksQS5hZGQocHVuY2hncy5Ud2VlbkxpdGUudG8oYywzKkIse3RyYW5zZm9ybVBlcnNwZWN0aXZlOjYwMCxmb3JjZTNEOiJhdXRvIix0b3A6MCtsLmhlaWdodCxvcGFjaXR5Oi41LHJvdGF0aW9uOmwucm90YXRlLGVhc2U6dSxkZWxheTpkfSksMCksay5hZGQoQSwwKX0pLGkuZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24oYil7dmFyIGM9alF1ZXJ5KHRoaXMpLGQ9YipCL2wuc2xvdHM7NT09YSYmKGQ9KGwuc2xvdHMtYi0xKSpCL2wuc2xvdHMvMS41KSxBLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tKGMsMypCLHt0b3A6MC1sLmhlaWdodCxvcGFjaXR5Oi41LHJvdGF0aW9uOmwucm90YXRlLGZvcmNlM0Q6ImF1dG8iLGVhc2U6cHVuY2hncy5lbyxkZWxheTpkfSksMCksay5hZGQoQSwwKX0pfWlmKDY9PWEpe2wuc2xvdHM8MiYmKGwuc2xvdHM9MiksbC5zbG90cyUyJiYobC5zbG90cz1sLnNsb3RzKzEpO3ZhciBBPW5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ai5maW5kKCIuZGVmYXVsdGltZyIpLmNzcyh7b3BhY2l0eTowfSl9LDEwMCksai5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbihhKXt2YXIgYj1qUXVlcnkodGhpcyk7aWYoYSsxPGwuc2xvdHMvMil2YXIgYz05MCooYSsyKTtlbHNlIHZhciBjPTkwKigyK2wuc2xvdHMtYSk7QS5hZGQocHVuY2hncy5Ud2VlbkxpdGUudG8oYiwodCtjKS8xZTMse3RvcDowK2wuaGVpZ2h0LG9wYWNpdHk6MSxmb3JjZTNEOiJhdXRvIixyb3RhdGlvbjpsLnJvdGF0ZSxlYXNlOnV9KSwwKSxrLmFkZChBLDApfSksaS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbihhKXt2YXIgYj1qUXVlcnkodGhpcyk7aWYoYSsxPGwuc2xvdHMvMil2YXIgYz05MCooYSsyKTtlbHNlIHZhciBjPTkwKigyK2wuc2xvdHMtYSk7QS5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbShiLCh0K2MpLzFlMyx7dG9wOjAtbC5oZWlnaHQsb3BhY2l0eToxLGZvcmNlM0Q6ImF1dG8iLHJvdGF0aW9uOmwucm90YXRlLGVhc2U6dn0pLDApLGsuYWRkKEEsMCl9KX1pZig3PT1hKXt0PTIqdCx0PmwuZGVsYXkmJih0PWwuZGVsYXkpO3ZhciBBPW5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ai5maW5kKCIuZGVmYXVsdGltZyIpLmNzcyh7b3BhY2l0eTowfSl9LDEwMCksai5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbigpe3ZhciBhPWpRdWVyeSh0aGlzKS5maW5kKCJkaXYiKTtBLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS50byhhLHQvMWUzLHtsZWZ0OjAtbC5zbG90dy8yKyJweCIsdG9wOjAtbC5oZWlnaHQvMisicHgiLHdpZHRoOjIqbC5zbG90dysicHgiLGhlaWdodDoyKmwuaGVpZ2h0KyJweCIsb3BhY2l0eTowLHJvdGF0aW9uOmwucm90YXRlLGZvcmNlM0Q6ImF1dG8iLGVhc2U6dX0pLDApLGsuYWRkKEEsMCl9KSxpLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKGEpe3ZhciBiPWpRdWVyeSh0aGlzKS5maW5kKCJkaXYiKTtBLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYix0LzFlMyx7bGVmdDowLHRvcDowLG9wYWNpdHk6MCx0cmFuc2Zvcm1QZXJzcGVjdGl2ZTo2MDB9LHtsZWZ0OjAtYSpsLnNsb3R3KyJweCIsZWFzZTp2LGZvcmNlM0Q6ImF1dG8iLHRvcDoiMHB4Iix3aWR0aDpsLndpZHRoLGhlaWdodDpsLmhlaWdodCxvcGFjaXR5OjEscm90YXRpb246MCxkZWxheTouMX0pLDApLGsuYWRkKEEsMCl9KX1pZig4PT1hKXt0PTMqdCx0PmwuZGVsYXkmJih0PWwuZGVsYXkpO3ZhciBBPW5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZTtqLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGE9alF1ZXJ5KHRoaXMpLmZpbmQoImRpdiIpO0EuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGEsdC8xZTMse2xlZnQ6MC1sLndpZHRoLzIrInB4Iix0b3A6MC1sLnNsb3RoLzIrInB4Iix3aWR0aDoyKmwud2lkdGgrInB4IixoZWlnaHQ6MipsLnNsb3RoKyJweCIsZm9yY2UzRDoiYXV0byIsZWFzZTp1LG9wYWNpdHk6MCxyb3RhdGlvbjpsLnJvdGF0ZX0pLDApLGsuYWRkKEEsMCl9KSxpLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKGEpe3ZhciBiPWpRdWVyeSh0aGlzKS5maW5kKCJkaXYiKTtBLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYix0LzFlMyx7bGVmdDowLHRvcDowLG9wYWNpdHk6MCxmb3JjZTNEOiJhdXRvIn0se2xlZnQ6IjBweCIsdG9wOjAtYSpsLnNsb3RoKyJweCIsd2lkdGg6aS5maW5kKCIuZGVmYXVsdGltZyIpLmRhdGEoIm5ld3ciKSsicHgiLGhlaWdodDppLmZpbmQoIi5kZWZhdWx0aW1nIikuZGF0YSgibmV3aCIpKyJweCIsb3BhY2l0eToxLGVhc2U6dixyb3RhdGlvbjowfSksMCksay5hZGQoQSwwKX0pfWlmKDk9PWF8fDEwPT1hKXt2YXIgRD0wO2kuZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24oYSl7dmFyIGI9alF1ZXJ5KHRoaXMpO0QrKyxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYix0LzJlMyx7YXV0b0FscGhhOjAsZm9yY2UzRDoiYXV0byIsdHJhbnNmb3JtUGVyc3BlY3RpdmU6NjAwfSx7YXV0b0FscGhhOjEsZWFzZTp1LGRlbGF5OmEqbC5zbG90cy8xMDAvMmUzfSksMCl9KX1pZigyNz09YXx8Mjg9PWF8fDI5PT1hfHwzMD09YSl7dmFyIEU9aS5maW5kKCIuc2xvdCIpLEY9Mjc9PWF8fDI4PT1hPzE6MixHPTI3PT1hfHwyOT09YT8iLTEwMCUiOiIrMTAwJSIsSD0yNz09YXx8Mjk9PWE/IisxMDAlIjoiLTEwMCUiLEk9Mjc9PWF8fDI5PT1hPyItODAlIjoiODAlIixKPTI3PT1hfHwyOT09YT8iKzgwJSI6Ii04MCUiLEs9Mjc9PWF8fDI5PT1hPyIrMTAlIjoiLTEwJSIsTD17b3ZlcndyaXRlOiJhbGwifSxNPXthdXRvQWxwaGE6MCx6SW5kZXg6MSxmb3JjZTNEOiJhdXRvIixlYXNlOnV9LE49e3Bvc2l0aW9uOiJpbmhlcml0IixhdXRvQWxwaGE6MCxvdmVyd3JpdGU6ImFsbCIsekluZGV4OjF9LE89e2F1dG9BbHBoYToxLGZvcmNlM0Q6ImF1dG8iLGVhc2U6dn0sUD17b3ZlcndyaXRlOiJhbGwiLHpJbmRleDoyLG9wYWNpdHk6MSxhdXRvQWxwaGE6MX0sUT17YXV0b0FscGhhOjEsZm9yY2UzRDoiYXV0byIsb3ZlcndyaXRlOiJhbGwiLGVhc2U6dX0sUj17b3ZlcndyaXRlOiJhbGwiLHpJbmRleDoyLGF1dG9BbHBoYToxfSxTPXthdXRvQWxwaGE6MSxmb3JjZTNEOiJhdXRvIixlYXNlOnV9LFQ9MT09Rj8ieSI6IngiO0xbVF09IjBweCIsTVtUXT1HLE5bVF09SyxPW1RdPSIwJSIsUFtUXT1ILFFbVF09RyxSW1RdPUksU1tUXT1KLEUuYXBwZW5kKCc8c3BhbiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNik7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MHB4O2xlZnQ6MHB4O2Rpc3BsYXk6YmxvY2s7ei1pbmRleDoyIj48L3NwYW4+Jyksay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGosdC8xZTMsTCxNKSwwKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oaS5maW5kKCIuZGVmYXVsdGltZyIpLHQvMmUzLE4sTyksdC8yZTMpLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhFLHQvMWUzLFAsUSksMCksay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKEUuZmluZCgiLnNsb3RzbGlkZSBkaXYiKSx0LzFlMyxSLFMpLDApfWlmKDMxPT1hfHwzMj09YXx8MzM9PWF8fDM0PT1hKXt0PTZlMyx1PXB1bmNoZ3MuUG93ZXIzLmVhc2VJbk91dDt2YXIgVT10LzFlMzttYXM9VS1VLzUsX250PWEsZnk9MzE9PV9udD8iKzEwMCUiOjMyPT1fbnQ/Ii0xMDAlIjoiMCUiLGZ4PTMzPT1fbnQ/IisxMDAlIjozND09X250PyItMTAwJSI6IjAlIix0eT0zMT09X250PyItMTAwJSI6MzI9PV9udD8iKzEwMCUiOiIwJSIsdHg9MzM9PV9udD8iLTEwMCUiOjM0PT1fbnQ/IisxMDAlIjoiMCUiLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhqLFUtLjIqVSx7eTowLHg6MH0se3k6dHkseDp0eCxlYXNlOnZ9KSwuMipVKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oaSxVLHt5OmZ5LHg6Znh9LHt5OiIwJSIseDoiMCUiLGVhc2U6dX0pLDApLGkuZmluZCgiLnNsb3QiKS5yZW1vdmUoKSxpLmZpbmQoIi5kZWZhdWx0aW1nIikuY2xvbmUoKS5hcHBlbmRUbyhpKS5hZGRDbGFzcygic2xvdCIpLFYoaSxVLF9udCwiaW4iLHUpfWlmKDExPT1hKXtyPjQmJihyPTApO3ZhciBEPTAsVz0yPT1yPyIjMDAwMDAwIjozPT1yPyIjZmZmZmZmIjoidHJhbnNwYXJlbnQiO3N3aXRjaChyKXtjYXNlIDA6ay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGksdC8xZTMse2F1dG9BbHBoYTowfSx7YXV0b0FscGhhOjEsZm9yY2UzRDoiYXV0byIsZWFzZTp1fSksMCk7YnJlYWs7Y2FzZSAxOmsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhpLHQvMWUzLHthdXRvQWxwaGE6MH0se2F1dG9BbHBoYToxLGZvcmNlM0Q6ImF1dG8iLGVhc2U6dX0pLDApLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhqLHQvMWUzLHthdXRvQWxwaGE6MX0se2F1dG9BbHBoYTowLGZvcmNlM0Q6ImF1dG8iLGVhc2U6dX0pLDApO2JyZWFrO2Nhc2UgMjpjYXNlIDM6Y2FzZSA0OmsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChqLnBhcmVudCgpLHtiYWNrZ3JvdW5kQ29sb3I6Vyxmb3JjZTNEOiJhdXRvIn0pLDApLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChpLnBhcmVudCgpLHtiYWNrZ3JvdW5kQ29sb3I6InRyYW5zcGFyZW50Iixmb3JjZTNEOiJhdXRvIn0pLDApLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGosdC8yZTMse2F1dG9BbHBoYTowLGZvcmNlM0Q6ImF1dG8iLGVhc2U6dX0pLDApLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhpLHQvMmUzLHthdXRvQWxwaGE6MH0se2F1dG9BbHBoYToxLGZvcmNlM0Q6ImF1dG8iLGVhc2U6dX0pLHQvMmUzKX1rLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaS5maW5kKCIuZGVmYXVsdGltZyIpLHthdXRvQWxwaGE6MX0pLDApLGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChqLmZpbmQoImRlZmF1bHRpbWciKSx7YXV0b0FscGhhOjF9KSwwKX1pZigyNj09YSl7dmFyIEQ9MDt0PTAsay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGksdC8xZTMse2F1dG9BbHBoYTowfSx7YXV0b0FscGhhOjEsZm9yY2UzRDoiYXV0byIsZWFzZTp1fSksMCksay5hZGQocHVuY2hncy5Ud2VlbkxpdGUudG8oaix0LzFlMyx7YXV0b0FscGhhOjAsZm9yY2UzRDoiYXV0byIsZWFzZTp1fSksMCksay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGkuZmluZCgiLmRlZmF1bHRpbWciKSx7YXV0b0FscGhhOjF9KSwwKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoai5maW5kKCJkZWZhdWx0aW1nIikse2F1dG9BbHBoYToxfSksMCl9aWYoMTI9PWF8fDEzPT1hfHwxND09YXx8MTU9PWEpe3Q9dCx0PmwuZGVsYXkmJih0PWwuZGVsYXkpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoai5maW5kKCIuZGVmYXVsdGltZyIpLHthdXRvQWxwaGE6MH0pfSwxMDApO3ZhciBYPWwud2lkdGgsWT1sLmhlaWdodCxaPWkuZmluZCgiLnNsb3RzbGlkZSwgLmRlZmF1bHR2aWQiKSwkPTAsXz0wLGFhPTEsYmE9MSxjYT0xLGRhPXQvMWUzLGVhPWRhOyJmdWxsd2lkdGgiIT1sLnNsaWRlckxheW91dCYmImZ1bGxzY3JlZW4iIT1sLnNsaWRlckxheW91dHx8KFg9Wi53aWR0aCgpLFk9Wi5oZWlnaHQoKSksMTI9PWE/JD1YOjE1PT1hPyQ9MC1YOjEzPT1hP189WToxND09YSYmKF89MC1ZKSwxPT1yJiYoYWE9MCksMj09ciYmKGFhPTApLDM9PXImJihkYT10LzEzMDApLDQhPXImJjUhPXJ8fChiYT0uNiksNj09ciYmKGJhPTEuNCksNSE9ciYmNiE9cnx8KGNhPTEuNCxhYT0wLFg9MCxZPTAsJD0wLF89MCksNj09ciYmKGNhPS42KTs3PT1yJiYoWD0wLFk9MCk7dmFyIGdhPWkuZmluZCgiLnNsb3RzbGlkZSIpLGhhPWouZmluZCgiLnNsb3RzbGlkZSwgLmRlZmF1bHR2aWQiKTtpZihrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaCx7ekluZGV4OjE1fSksMCksay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGcse3pJbmRleDoyMH0pLDApLDg9PXI/KGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChoLHt6SW5kZXg6MjB9KSwwKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZyx7ekluZGV4OjE1fSksMCksay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGdhLHtsZWZ0OjAsdG9wOjAsc2NhbGU6MSxvcGFjaXR5OjEscm90YXRpb246MCxlYXNlOnUsZm9yY2UzRDoiYXV0byJ9KSwwKSk6ay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbShnYSxkYSx7bGVmdDokLHRvcDpfLHNjYWxlOmNhLG9wYWNpdHk6YWEscm90YXRpb246bC5yb3RhdGUsZWFzZTp1LGZvcmNlM0Q6ImF1dG8ifSksMCksNCE9ciYmNSE9cnx8KFg9MCxZPTApLDEhPXIpc3dpdGNoKGEpe2Nhc2UgMTI6ay5hZGQocHVuY2hncy5Ud2VlbkxpdGUudG8oaGEsZWEse2xlZnQ6MC1YKyJweCIsZm9yY2UzRDoiYXV0byIsc2NhbGU6YmEsb3BhY2l0eTphYSxyb3RhdGlvbjpsLnJvdGF0ZSxlYXNlOnZ9KSwwKTticmVhaztjYXNlIDE1OmsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGhhLGVhLHtsZWZ0OlgrInB4Iixmb3JjZTNEOiJhdXRvIixzY2FsZTpiYSxvcGFjaXR5OmFhLHJvdGF0aW9uOmwucm90YXRlLGVhc2U6dn0pLDApO2JyZWFrO2Nhc2UgMTM6ay5hZGQocHVuY2hncy5Ud2VlbkxpdGUudG8oaGEsZWEse3RvcDowLVkrInB4Iixmb3JjZTNEOiJhdXRvIixzY2FsZTpiYSxvcGFjaXR5OmFhLHJvdGF0aW9uOmwucm90YXRlLGVhc2U6dn0pLDApO2JyZWFrO2Nhc2UgMTQ6ay5hZGQocHVuY2hncy5Ud2VlbkxpdGUudG8oaGEsZWEse3RvcDpZKyJweCIsZm9yY2UzRDoiYXV0byIsc2NhbGU6YmEsb3BhY2l0eTphYSxyb3RhdGlvbjpsLnJvdGF0ZSxlYXNlOnZ9KSwwKX19aWYoMTY9PWEpe3ZhciBBPW5ldyBwdW5jaGdzLlRpbWVsaW5lTGl0ZTtrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaCx7cG9zaXRpb246ImFic29sdXRlIiwiei1pbmRleCI6MjB9KSwwKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZyx7cG9zaXRpb246ImFic29sdXRlIiwiei1pbmRleCI6MTV9KSwwKSxoLndyYXBJbm5lcignPGRpdiBjbGFzcz0idHAtaGFsZi1vbmUiIHN0eWxlPSJwb3NpdGlvbjpyZWxhdGl2ZTsgd2lkdGg6MTAwJTtoZWlnaHQ6MTAwJSI+PC9kaXY+JyksaC5maW5kKCIudHAtaGFsZi1vbmUiKS5jbG9uZSghMCkuYXBwZW5kVG8oaCkuYWRkQ2xhc3MoInRwLWhhbGYtdHdvIiksaC5maW5kKCIudHAtaGFsZi10d28iKS5yZW1vdmVDbGFzcygidHAtaGFsZi1vbmUiKTt2YXIgWD1sLndpZHRoLFk9bC5oZWlnaHQ7Im9uIj09bC5hdXRvSGVpZ2h0JiYoWT1jLmhlaWdodCgpKSxoLmZpbmQoIi50cC1oYWxmLW9uZSAuZGVmYXVsdGltZyIpLndyYXAoJzxkaXYgY2xhc3M9InRwLXBhcGVyY3V0IiBzdHlsZT0id2lkdGg6JytYKyJweDtoZWlnaHQ6IitZKydweDsiPjwvZGl2PicpLGguZmluZCgiLnRwLWhhbGYtdHdvIC5kZWZhdWx0aW1nIikud3JhcCgnPGRpdiBjbGFzcz0idHAtcGFwZXJjdXQiIHN0eWxlPSJ3aWR0aDonK1grInB4O2hlaWdodDoiK1krJ3B4OyI+PC9kaXY+JyksaC5maW5kKCIudHAtaGFsZi10d28gLmRlZmF1bHRpbWciKS5jc3Moe3Bvc2l0aW9uOiJhYnNvbHV0ZSIsdG9wOiItNTAlIn0pLGguZmluZCgiLnRwLWhhbGYtdHdvIC50cC1jYXB0aW9uIikud3JhcEFsbCgnPGRpdiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7dG9wOi01MCU7bGVmdDowcHg7Ij48L2Rpdj4nKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaC5maW5kKCIudHAtaGFsZi10d28iKSx7d2lkdGg6WCxoZWlnaHQ6WSxvdmVyZmxvdzoiaGlkZGVuIix6SW5kZXg6MTUscG9zaXRpb246ImFic29sdXRlIix0b3A6WS8yLGxlZnQ6IjBweCIsdHJhbnNmb3JtUGVyc3BlY3RpdmU6NjAwLHRyYW5zZm9ybU9yaWdpbjoiY2VudGVyIGJvdHRvbSJ9KSwwKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaC5maW5kKCIudHAtaGFsZi1vbmUiKSx7d2lkdGg6WCxoZWlnaHQ6WS8yLG92ZXJmbG93OiJ2aXNpYmxlIix6SW5kZXg6MTAscG9zaXRpb246ImFic29sdXRlIix0b3A6IjBweCIsbGVmdDoiMHB4Iix0cmFuc2Zvcm1QZXJzcGVjdGl2ZTo2MDAsdHJhbnNmb3JtT3JpZ2luOiJjZW50ZXIgdG9wIn0pLDApO3ZhciBqYT0oaC5maW5kKCIuZGVmYXVsdGltZyIpLE1hdGgucm91bmQoMjAqTWF0aC5yYW5kb20oKS0xMCkpLGthPU1hdGgucm91bmQoMjAqTWF0aC5yYW5kb20oKS0xMCksbGE9TWF0aC5yb3VuZCgyMCpNYXRoLnJhbmRvbSgpLTEwKSxtYT0uNCpNYXRoLnJhbmRvbSgpLS4yLG5hPS40Kk1hdGgucmFuZG9tKCktLjIsb2E9MSpNYXRoLnJhbmRvbSgpKzEscGE9MSpNYXRoLnJhbmRvbSgpKzEscWE9LjMqTWF0aC5yYW5kb20oKSsuMztrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaC5maW5kKCIudHAtaGFsZi1vbmUiKSx7b3ZlcmZsb3c6ImhpZGRlbiJ9KSwwKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oaC5maW5kKCIudHAtaGFsZi1vbmUiKSx0LzgwMCx7d2lkdGg6WCxoZWlnaHQ6WS8yLHBvc2l0aW9uOiJhYnNvbHV0ZSIsdG9wOiIwcHgiLGxlZnQ6IjBweCIsZm9yY2UzRDoiYXV0byIsdHJhbnNmb3JtT3JpZ2luOiJjZW50ZXIgdG9wIn0se3NjYWxlOm9hLHJvdGF0aW9uOmphLHk6MC1ZLVkvNCxhdXRvQWxwaGE6MCxlYXNlOnV9KSwwKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oaC5maW5kKCIudHAtaGFsZi10d28iKSx0LzgwMCx7d2lkdGg6WCxoZWlnaHQ6WSxvdmVyZmxvdzoiaGlkZGVuIixwb3NpdGlvbjoiYWJzb2x1dGUiLHRvcDpZLzIsbGVmdDoiMHB4Iixmb3JjZTNEOiJhdXRvIix0cmFuc2Zvcm1PcmlnaW46ImNlbnRlciBib3R0b20ifSx7c2NhbGU6cGEscm90YXRpb246a2EseTpZK1kvNCxlYXNlOnUsYXV0b0FscGhhOjAsb25Db21wbGV0ZTpmdW5jdGlvbigpe3B1bmNoZ3MuVHdlZW5MaXRlLnNldChoLHtwb3NpdGlvbjoiYWJzb2x1dGUiLCJ6LWluZGV4IjoxNX0pLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChnLHtwb3NpdGlvbjoiYWJzb2x1dGUiLCJ6LWluZGV4IjoyMH0pLGguZmluZCgiLnRwLWhhbGYtb25lIikubGVuZ3RoPjAmJihoLmZpbmQoIi50cC1oYWxmLW9uZSAuZGVmYXVsdGltZyIpLnVud3JhcCgpLGguZmluZCgiLnRwLWhhbGYtb25lIC5zbG90aG9sZGVyIikudW53cmFwKCkpLGguZmluZCgiLnRwLWhhbGYtdHdvIikucmVtb3ZlKCl9fSksMCksQS5hZGQocHVuY2hncy5Ud2VlbkxpdGUuc2V0KGkuZmluZCgiLmRlZmF1bHRpbWciKSx7YXV0b0FscGhhOjF9KSwwKSxudWxsIT1oLmh0bWwoKSYmay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGcsKHQtMjAwKS8xZTMse3NjYWxlOnFhLHg6bC53aWR0aC80Km1hLHk6WS80Km5hLHJvdGF0aW9uOmxhLGZvcmNlM0Q6ImF1dG8iLHRyYW5zZm9ybU9yaWdpbjoiY2VudGVyIGNlbnRlciIsZWFzZTp2fSx7YXV0b0FscGhhOjEsc2NhbGU6MSx4OjAseTowLHJvdGF0aW9uOjB9KSwwKSxrLmFkZChBLDApfWlmKDE3PT1hJiZpLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKGEpe3ZhciBiPWpRdWVyeSh0aGlzKTtrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYix0LzgwMCx7b3BhY2l0eTowLHJvdGF0aW9uWTowLHNjYWxlOi45LHJvdGF0aW9uWDotMTEwLGZvcmNlM0Q6ImF1dG8iLHRyYW5zZm9ybVBlcnNwZWN0aXZlOjYwMCx0cmFuc2Zvcm1PcmlnaW46ImNlbnRlciBjZW50ZXIifSx7b3BhY2l0eToxLHRvcDowLGxlZnQ6MCxzY2FsZToxLHJvdGF0aW9uOjAscm90YXRpb25YOjAsZm9yY2UzRDoiYXV0byIscm90YXRpb25ZOjAsZWFzZTp1LGRlbGF5Oi4wNiphfSksMCl9KSwxOD09YSYmaS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbihhKXt2YXIgYj1qUXVlcnkodGhpcyk7ay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGIsdC81MDAse2F1dG9BbHBoYTowLHJvdGF0aW9uWToxMTAsc2NhbGU6Ljkscm90YXRpb25YOjEwLGZvcmNlM0Q6ImF1dG8iLHRyYW5zZm9ybVBlcnNwZWN0aXZlOjYwMCx0cmFuc2Zvcm1PcmlnaW46ImNlbnRlciBjZW50ZXIifSx7YXV0b0FscGhhOjEsdG9wOjAsbGVmdDowLHNjYWxlOjEscm90YXRpb246MCxyb3RhdGlvblg6MCxmb3JjZTNEOiJhdXRvIixyb3RhdGlvblk6MCxlYXNlOnUsZGVsYXk6LjA2KmF9KSwwKX0pLDE5PT1hfHwyMj09YSl7dmFyIEE9bmV3IHB1bmNoZ3MuVGltZWxpbmVMaXRlO2suYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnNldChoLHt6SW5kZXg6MjB9KSwwKSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoZyx7ekluZGV4OjIwfSksMCksc2V0VGltZW91dChmdW5jdGlvbigpe2ouZmluZCgiLmRlZmF1bHRpbWciKS5jc3Moe29wYWNpdHk6MH0pfSwxMDApO3ZhciByYT05MCxhYT0xLHNhPSJjZW50ZXIgY2VudGVyICI7MT09byYmKHJhPS05MCksMTk9PWE/KHNhPXNhKyItIitsLmhlaWdodC8yLGFhPTApOnNhKz1sLmhlaWdodC8yLHB1bmNoZ3MuVHdlZW5MaXRlLnNldChjLHt0cmFuc2Zvcm1TdHlsZToiZmxhdCIsYmFja2ZhY2VWaXNpYmlsaXR5OiJoaWRkZW4iLHRyYW5zZm9ybVBlcnNwZWN0aXZlOjYwMH0pLGkuZmluZCgiLnNsb3RzbGlkZSIpLmVhY2goZnVuY3Rpb24oYSl7dmFyIGI9alF1ZXJ5KHRoaXMpO0EuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhiLHQvMWUzLHt0cmFuc2Zvcm1TdHlsZToiZmxhdCIsYmFja2ZhY2VWaXNpYmlsaXR5OiJoaWRkZW4iLGxlZnQ6MCxyb3RhdGlvblk6bC5yb3RhdGUsejoxMCx0b3A6MCxzY2FsZToxLGZvcmNlM0Q6ImF1dG8iLHRyYW5zZm9ybVBlcnNwZWN0aXZlOjYwMCx0cmFuc2Zvcm1PcmlnaW46c2Escm90YXRpb25YOnJhfSx7bGVmdDowLHJvdGF0aW9uWTowLHRvcDowLHo6MCxzY2FsZToxLGZvcmNlM0Q6ImF1dG8iLHJvdGF0aW9uWDowLGRlbGF5OjUwKmEvMWUzLGVhc2U6dX0pLDApLEEuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLnRvKGIsLjEse2F1dG9BbHBoYToxLGRlbGF5OjUwKmEvMWUzfSksMCksay5hZGQoQSl9KSxqLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKGEpe3ZhciBiPWpRdWVyeSh0aGlzKSxjPS05MDsxPT1vJiYoYz05MCksQS5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGIsdC8xZTMse3RyYW5zZm9ybVN0eWxlOiJmbGF0IixiYWNrZmFjZVZpc2liaWxpdHk6ImhpZGRlbiIsYXV0b0FscGhhOjEscm90YXRpb25ZOjAsdG9wOjAsejowLHNjYWxlOjEsZm9yY2UzRDoiYXV0byIsdHJhbnNmb3JtUGVyc3BlY3RpdmU6NjAwLHRyYW5zZm9ybU9yaWdpbjpzYSxyb3RhdGlvblg6MH0se2F1dG9BbHBoYToxLHJvdGF0aW9uWTpsLnJvdGF0ZSx0b3A6MCx6OjEwLHNjYWxlOjEscm90YXRpb25YOmMsZGVsYXk6NTAqYS8xZTMsZm9yY2UzRDoiYXV0byIsZWFzZTp2fSksMCksay5hZGQoQSl9KSxrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5zZXQoaCx7ekluZGV4OjE4fSksMCl9aWYoMjA9PWEpe2lmKHNldFRpbWVvdXQoZnVuY3Rpb24oKXtqLmZpbmQoIi5kZWZhdWx0aW1nIikuY3NzKHtvcGFjaXR5OjB9KX0sMTAwKSwxPT1vKXZhciB0YT0tbC53aWR0aCxyYT04MCxzYT0iMjAlIDcwJSAtIitsLmhlaWdodC8yO2Vsc2UgdmFyIHRhPWwud2lkdGgscmE9LTgwLHNhPSI4MCUgNzAlIC0iK2wuaGVpZ2h0LzI7aS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbihhKXt2YXIgYj1qUXVlcnkodGhpcyksYz01MCphLzFlMztrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYix0LzFlMyx7bGVmdDp0YSxyb3RhdGlvblg6NDAsejotNjAwLG9wYWNpdHk6YWEsdG9wOjAsc2NhbGU6MSxmb3JjZTNEOiJhdXRvIix0cmFuc2Zvcm1QZXJzcGVjdGl2ZTo2MDAsdHJhbnNmb3JtT3JpZ2luOnNhLHRyYW5zZm9ybVN0eWxlOiJmbGF0Iixyb3RhdGlvblk6cmF9LHtsZWZ0OjAscm90YXRpb25YOjAsb3BhY2l0eToxLHRvcDowLHo6MCxzY2FsZToxLHJvdGF0aW9uWTowLGRlbGF5OmMsZWFzZTp1fSksMCl9KSxqLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKGEpe3ZhciBiPWpRdWVyeSh0aGlzKSxjPTUwKmEvMWUzO2lmKGM9YT4wP2MrdC85ZTM6MCwxIT1vKXZhciBkPS1sLndpZHRoLzIsZT0zMCxmPSIyMCUgNzAlIC0iK2wuaGVpZ2h0LzI7ZWxzZSB2YXIgZD1sLndpZHRoLzIsZT0tMzAsZj0iODAlIDcwJSAtIitsLmhlaWdodC8yO3Y9cHVuY2hncy5Qb3dlcjIuZWFzZUluT3V0LGsuYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhiLHQvMWUzLHtvcGFjaXR5OjEscm90YXRpb25YOjAsdG9wOjAsejowLHNjYWxlOjEsbGVmdDowLGZvcmNlM0Q6ImF1dG8iLHRyYW5zZm9ybVBlcnNwZWN0aXZlOjYwMCx0cmFuc2Zvcm1PcmlnaW46Zix0cmFuc2Zvcm1TdHlsZToiZmxhdCIscm90YXRpb25ZOjB9LHtvcGFjaXR5OjEscm90YXRpb25YOjIwLHRvcDowLHo6LTYwMCxsZWZ0OmQsZm9yY2UzRDoiYXV0byIscm90YXRpb25ZOmUsZGVsYXk6YyxlYXNlOnZ9KSwwKX0pfWlmKDIxPT1hfHwyNT09YSl7c2V0VGltZW91dChmdW5jdGlvbigpe2ouZmluZCgiLmRlZmF1bHRpbWciKS5jc3Moe29wYWNpdHk6MH0pfSwxMDApO3ZhciByYT05MCx0YT0tbC53aWR0aCx1YT0tcmE7aWYoMT09bylpZigyNT09YSl7dmFyIHNhPSJjZW50ZXIgdG9wIDAiO3JhPWwucm90YXRlfWVsc2V7dmFyIHNhPSJsZWZ0IGNlbnRlciAwIjt1YT1sLnJvdGF0ZX1lbHNlIGlmKHRhPWwud2lkdGgscmE9LTkwLDI1PT1hKXt2YXIgc2E9ImNlbnRlciBib3R0b20gMCI7dWE9LXJhLHJhPWwucm90YXRlfWVsc2V7dmFyIHNhPSJyaWdodCBjZW50ZXIgMCI7dWE9bC5yb3RhdGV9aS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbihhKXt2YXIgYj1qUXVlcnkodGhpcyksYz10LzEuNS8zO2suYWRkKHB1bmNoZ3MuVHdlZW5MaXRlLmZyb21UbyhiLDIqYy8xZTMse2xlZnQ6MCx0cmFuc2Zvcm1TdHlsZToiZmxhdCIscm90YXRpb25YOnVhLHo6MCxhdXRvQWxwaGE6MCx0b3A6MCxzY2FsZToxLGZvcmNlM0Q6ImF1dG8iLHRyYW5zZm9ybVBlcnNwZWN0aXZlOjEyMDAsdHJhbnNmb3JtT3JpZ2luOnNhLHJvdGF0aW9uWTpyYX0se2xlZnQ6MCxyb3RhdGlvblg6MCx0b3A6MCx6OjAsYXV0b0FscGhhOjEsc2NhbGU6MSxyb3RhdGlvblk6MCxmb3JjZTNEOiJhdXRvIixkZWxheTpjLzFlMyxlYXNlOnV9KSwwKX0pLDEhPW8/KHRhPS1sLndpZHRoLHJhPTkwLDI1PT1hPyhzYT0iY2VudGVyIHRvcCAwIix1YT0tcmEscmE9bC5yb3RhdGUpOihzYT0ibGVmdCBjZW50ZXIgMCIsdWE9bC5yb3RhdGUpKToodGE9bC53aWR0aCxyYT0tOTAsMjU9PWE/KHNhPSJjZW50ZXIgYm90dG9tIDAiLHVhPS1yYSxyYT1sLnJvdGF0ZSk6KHNhPSJyaWdodCBjZW50ZXIgMCIsdWE9bC5yb3RhdGUpKSxqLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKGEpe3ZhciBiPWpRdWVyeSh0aGlzKTtrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYix0LzFlMyx7bGVmdDowLHRyYW5zZm9ybVN0eWxlOiJmbGF0Iixyb3RhdGlvblg6MCx6OjAsYXV0b0FscGhhOjEsdG9wOjAsc2NhbGU6MSxmb3JjZTNEOiJhdXRvIix0cmFuc2Zvcm1QZXJzcGVjdGl2ZToxMjAwLHRyYW5zZm9ybU9yaWdpbjpzYSxyb3RhdGlvblk6MH0se2xlZnQ6MCxyb3RhdGlvblg6dWEsdG9wOjAsejowLGF1dG9BbHBoYToxLGZvcmNlM0Q6ImF1dG8iLHNjYWxlOjEscm90YXRpb25ZOnJhLGVhc2U6dn0pLDApfSl9aWYoMjM9PWF8fDI0PT1hKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ai5maW5kKCIuZGVmYXVsdGltZyIpLmNzcyh7b3BhY2l0eTowfSl9LDEwMCk7dmFyIHJhPS05MCxhYT0xLHZhPTA7aWYoMT09byYmKHJhPTkwKSwyMz09YSl7dmFyIHNhPSJjZW50ZXIgY2VudGVyIC0iK2wud2lkdGgvMjthYT0wfWVsc2UgdmFyIHNhPSJjZW50ZXIgY2VudGVyICIrbC53aWR0aC8yO3B1bmNoZ3MuVHdlZW5MaXRlLnNldChjLHt0cmFuc2Zvcm1TdHlsZToicHJlc2VydmUtM2QiLGJhY2tmYWNlVmlzaWJpbGl0eToiaGlkZGVuIixwZXJzcGVjdGl2ZToyNTAwfSksaS5maW5kKCIuc2xvdHNsaWRlIikuZWFjaChmdW5jdGlvbihhKXt2YXIgYj1qUXVlcnkodGhpcyk7ay5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKGIsdC8xZTMse2xlZnQ6dmEscm90YXRpb25YOmwucm90YXRlLGZvcmNlM0Q6ImF1dG8iLG9wYWNpdHk6YWEsdG9wOjAsc2NhbGU6MSx0cmFuc2Zvcm1QZXJzcGVjdGl2ZToxMjAwLHRyYW5zZm9ybU9yaWdpbjpzYSxyb3RhdGlvblk6cmF9LHtsZWZ0OjAscm90YXRpb25YOjAsYXV0b0FscGhhOjEsdG9wOjAsejowLHNjYWxlOjEscm90YXRpb25ZOjAsZGVsYXk6NTAqYS81MDAsZWFzZTp1fSksMCl9KSxyYT05MCwxPT1vJiYocmE9LTkwKSxqLmZpbmQoIi5zbG90c2xpZGUiKS5lYWNoKGZ1bmN0aW9uKGIpe3ZhciBjPWpRdWVyeSh0aGlzKTtrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYyx0LzFlMyx7bGVmdDowLHJvdGF0aW9uWDowLHRvcDowLHo6MCxzY2FsZToxLGZvcmNlM0Q6ImF1dG8iLHRyYW5zZm9ybVN0eWxlOiJmbGF0Iix0cmFuc2Zvcm1QZXJzcGVjdGl2ZToxMjAwLHRyYW5zZm9ybU9yaWdpbjpzYSxyb3RhdGlvblk6MH0se2xlZnQ6dmEscm90YXRpb25YOmwucm90YXRlLHRvcDowLHNjYWxlOjEscm90YXRpb25ZOnJhLGRlbGF5OjUwKmIvNTAwLGVhc2U6dn0pLDApLDIzPT1hJiZrLmFkZChwdW5jaGdzLlR3ZWVuTGl0ZS5mcm9tVG8oYyx0LzJlMyx7YXV0b0FscGhhOjF9LHthdXRvQWxwaGE6MCxkZWxheTo1MCpiLzUwMCt0LzNlMyxlYXNlOnZ9KSwwKX0pfXJldHVybiBrfX0oalF1ZXJ5KTs="}},"time_used":16516,"timings":{"blocked":15694,"dns":0,"connect":0,"send":0,"wait":822,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/body-bg-new.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.338Z","timestamp":1785143908338,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/body-bg-new.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/new/about_laptop.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.339Z","timestamp":1785143908339,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/new/about_laptop.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/api/v1/widget?top=50","fqdn":"coinlib.io","domain":"coinlib.io","tld":"io"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://coinlib.io/widget?type=converter\u0026theme=light","date":"2026-07-27T09:18:46.805Z","timestamp":1785143926805,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /api/v1/widget?top=50 HTTP/1.1\r\nHost: coinlib.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\nReferer: https://coinlib.io/widget?type=converter\u0026theme=light\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4\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-11T07:57:31.65745Z","times_seen":17832625,"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":"scromegatrade.com/image/slider/bitcoin-img.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.334Z","timestamp":1785143908334,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/slider/bitcoin-img.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/lora/v37/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-MoFoq92nA.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://scromegatrade.com/","date":"2026-07-27T09:18:46.458Z","timestamp":1785143926458,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/lora/v37/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-MoFoq92nA.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://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.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: 22756\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Sun, 26 Jul 2026 16:05:34 GMT\r\nexpires: Mon, 26 Jul 2027 16:05:34 GMT\r\ncache-control: public, max-age=31536000\r\nage: 61992\r\nlast-modified: Wed, 10 Sep 2025 17:08:09 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":22756,"size_decoded":23568,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 22756, version 1.0","md5":"e7ae818b8c7b4293b009a38e2e7445bf","sha1":"0b8439376c14d27d2645e84b9ed6247d3efa8eb4","sha256":"723cc14fe86bc9fadb2f5f34efb421d246edb240a18d2a7828d2edc041d79996","sha512":"5d65689fc72c46ece6213d8317b39d5ad413c123d0024cd69c29bc30614aa62291443724e860388aa336625b8a57acab8dcc3d6e534d0a237f61f23073766e58","ssdeep":"384:5lVvlEP/TwdMfJEXENxavhx02AZfzbuUKKhjExQViEJU27SIA3j7Iqsxcqz:tvuPEIJLxavhIZfhKKZEzEJtK7Fsxcqz","tlshash":"8ba2e198d9b979e1da92bf335d650de106bc9e838b0c98fde8216b351321060d97cb6c","first_seen":"2025-09-14T20:30:46.257995Z","last_seen":"2026-08-11T01:47:16.245381Z","times_seen":1095,"resource_available":false,"data":"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"}},"time_used":17,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/latest-blog/arrow.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.519Z","timestamp":1785143926519,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/latest-blog/arrow.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/css/style.css\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/s/_/ytembeds/_/ss/k=ytembeds.base.NxniuuZETZw.L.F4.O/am=AAAAgA/d=1/br=1/rs=AGKMywGx4txhFJhcrutKYsfPmS4mFc6oJQ/m=root,base","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://www.youtube.com/embed/tZOSQBP946Q","date":"2026-07-27T09:18:46.683Z","timestamp":1785143926683,"http_version":"HTTP/3","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.com","organization":""},"issuer":{"commonName":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:25 GMT","end":"Mon, 21 Sep 2026 08:37:24 GMT"},"fingerprint":{"sha1":"D9:DA:81:30:78:3E:9C:6B:5F:9D:18:52:0E:BE:6D:52:2F:FB:33:E0","sha256":"EA:E2:2D:87:EC:9C:D6:51:9D:59:E4:13:35:3B:97:14:E3:DA:58:2D:1C:69:19:41:54:94:25:C3:94:17:F3:0C"}}},"request":{"raw":"GET /s/_/ytembeds/_/ss/k=ytembeds.base.NxniuuZETZw.L.F4.O/am=AAAAgA/d=1/br=1/rs=AGKMywGx4txhFJhcrutKYsfPmS4mFc6oJQ/m=root,base HTTP/1.1\r\nHost: www.youtube.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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.youtube.com/embed/tZOSQBP946Q\r\nCookie: __Secure-YNID=20.YT=HJHEAMDOg21BtS27Beq3zWzqjV-7dYCK59j527uPmgsSWq48pSqj22Ql_kBAc9XJGuGK18LTy4_uYmPEHuwRNVtOl3H_-_fLs1iXS-9r6U33RKrPmu7iH8eEIUAtVV4emXhJ8HqqcyLKfu_YE5QJLQ-DGnQpHV7wSZDaw_AeQXomTEiAS11OZ8rNPU_Exo9GUw1HLaQh9Uu4vU-S5FAaTtoQAm-UcgX0vyggliPYW2bUtx09PpJqxohHHZ6nv77zzKufFcSZR1HKrCPoITOfiCwwol7j6OB-6oFj2yL4VkxFQRI-wnySC3rZpBH_hG9L037fQ1iCbaMOjhRV9XO-SQ; YSC=tV5tUXVf6rM; VISITOR_INFO1_LIVE=aOb2A5cME_o; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgTw%3D%3D; __Secure-ROLLOUT_TOKEN=CKiX56v_3fm7NxCc_fOsw_KVAxic_fOsw_KVAw%3D%3D\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/3 200 \r\naccept-ranges: bytes\r\ncontent-security-policy: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/youtube-main-app-web-scs-key\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"youtube-main-app-web-scs-key\"\r\nreport-to: {\"group\":\"youtube-main-app-web-scs-key\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/youtube-main-app-web-scs-key\"}]}\r\ntiming-allow-origin: *youtube.com\r\ncontent-length: 0\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Fri, 24 Jul 2026 13:04:24 GMT\r\nexpires: Sat, 24 Jul 2027 13:04:24 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Fri, 24 Jul 2026 05:09:16 GMT\r\ncontent-type: text/css; charset=UTF-8\r\nage: 245662\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":857,"mime_type":"text/css; charset=UTF-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-11T07:57:31.65745Z","times_seen":17832625,"resource_available":true,"data":""}},"time_used":13,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":13,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/s/player/7a7969c2/player_embed_es6.vflset/en_US/base.js","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.150.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://www.youtube.com/embed/tZOSQBP946Q","date":"2026-07-27T09:18:46.686Z","timestamp":1785143926686,"http_version":"HTTP/3","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.com","organization":""},"issuer":{"commonName":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:25 GMT","end":"Mon, 21 Sep 2026 08:37:24 GMT"},"fingerprint":{"sha1":"D9:DA:81:30:78:3E:9C:6B:5F:9D:18:52:0E:BE:6D:52:2F:FB:33:E0","sha256":"EA:E2:2D:87:EC:9C:D6:51:9D:59:E4:13:35:3B:97:14:E3:DA:58:2D:1C:69:19:41:54:94:25:C3:94:17:F3:0C"}}},"request":{"raw":"GET /s/player/7a7969c2/player_embed_es6.vflset/en_US/base.js HTTP/1.1\r\nHost: www.youtube.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://www.youtube.com/embed/tZOSQBP946Q\r\nCookie: __Secure-YNID=20.YT=HJHEAMDOg21BtS27Beq3zWzqjV-7dYCK59j527uPmgsSWq48pSqj22Ql_kBAc9XJGuGK18LTy4_uYmPEHuwRNVtOl3H_-_fLs1iXS-9r6U33RKrPmu7iH8eEIUAtVV4emXhJ8HqqcyLKfu_YE5QJLQ-DGnQpHV7wSZDaw_AeQXomTEiAS11OZ8rNPU_Exo9GUw1HLaQh9Uu4vU-S5FAaTtoQAm-UcgX0vyggliPYW2bUtx09PpJqxohHHZ6nv77zzKufFcSZR1HKrCPoITOfiCwwol7j6OB-6oFj2yL4VkxFQRI-wnySC3rZpBH_hG9L037fQ1iCbaMOjhRV9XO-SQ; YSC=tV5tUXVf6rM; VISITOR_INFO1_LIVE=aOb2A5cME_o; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgTw%3D%3D; __Secure-ROLLOUT_TOKEN=CKiX56v_3fm7NxCc_fOsw_KVAxic_fOsw_KVAw%3D%3D\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/3 200 \r\naccept-ranges: bytes\r\ncontent-encoding: br\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"youtube\"\r\nreport-to: {\"group\":\"youtube\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/youtube\"}]}\r\ncontent-length: 475313\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 00:08:44 GMT\r\nexpires: Fri, 23 Jul 2027 00:08:44 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Wed, 22 Jul 2026 04:34:15 GMT\r\ncontent-type: text/javascript\r\nvary: Accept-Encoding, Origin\r\nage: 378602\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":1597230,"size_decoded":476001,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (787)","md5":"ef473a4d0528fc7651d726fa43900068","sha1":"3b0d807a63c3244fc3fedeac020c2e81106185e1","sha256":"360a9b05bfc89caf69f220ef2473c20d1657318e21c4e0ffdab81e238b42dc61","sha512":"590afd923ebf8ce8da8def22bdf6149595740d96360cbf541954f52366a31fd5e3d3e6d8dd973044383f2cbad84c18f9f67ff69bf04c3dc6891b35b3eb29bb90","ssdeep":"24576:JddEUuuYnFCL4xFUnYNmJYqJNI5Dt/yV2hD4kf:fdhuuYnFCL4MVJBJO5DtKV2hdf","tlshash":"7e255b9977f2b46343a3f0e0286f018ab17f591454ccd46cb9a9e5f42da090e917bfac","first_seen":"2026-07-22T15:37:53.752532Z","last_seen":"2026-07-27T16:06:30.195204Z","times_seen":1773,"resource_available":false,"data":"dmFyIF95dF9wbGF5ZXI9e307KGZ1bmN0aW9uKGcpe3ZhciB3aW5kb3c9dGhpczsvKgoKIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwovKgoKIENvcHlyaWdodCBHb29nbGUgTExDCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwovKgoKIChUaGUgTUlUIExpY2Vuc2UpCgogQ29weXJpZ2h0IChDKSAyMDE0IGJ5IFZpdGFseSBQdXpyaW4KCiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5CiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbAogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbAogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KCiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOCiBUSEUgU09GVFdBUkUuCgogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIFBvcnRlZCBmcm9tIHpsaWIsIHdoaWNoIGlzIHVuZGVyIHRoZSBmb2xsb3dpbmcgbGljZW5zZQogaHR0cHM6Ly9naXRodWIuY29tL21hZGxlci96bGliL2Jsb2IvbWFzdGVyL3psaWIuaAoKIHpsaWIuaCAtLSBpbnRlcmZhY2Ugb2YgdGhlICd6bGliJyBnZW5lcmFsIHB1cnBvc2UgY29tcHJlc3Npb24gbGlicmFyeQogICB2ZXJzaW9uIDEuMi44LCBBcHJpbCAyOHRoLCAyMDEzCiAgIENvcHlyaWdodCAoQykgMTk5NS0yMDEzIEplYW4tbG91cCBHYWlsbHkgYW5kIE1hcmsgQWRsZXIKICAgVGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCAnYXMtaXMnLCB3aXRob3V0IGFueSBleHByZXNzIG9yIGltcGxpZWQKICAgd2FycmFudHkuICBJbiBubyBldmVudCB3aWxsIHRoZSBhdXRob3JzIGJlIGhlbGQgbGlhYmxlIGZvciBhbnkgZGFtYWdlcwogICBhcmlzaW5nIGZyb20gdGhlIHVzZSBvZiB0aGlzIHNvZnR3YXJlLgogICBQZXJtaXNzaW9uIGlzIGdyYW50ZWQgdG8gYW55b25lIHRvIHVzZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkgcHVycG9zZSwKICAgaW5jbHVkaW5nIGNvbW1lcmNpYWwgYXBwbGljYXRpb25zLCBhbmQgdG8gYWx0ZXIgaXQgYW5kIHJlZGlzdHJpYnV0ZSBpdAogICBmcmVlbHksIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyByZXN0cmljdGlvbnM6CiAgIDEuIFRoZSBvcmlnaW4gb2YgdGhpcyBzb2Z0d2FyZSBtdXN0IG5vdCBiZSBtaXNyZXByZXNlbnRlZDsgeW91IG11c3Qgbm90CiAgICAgIGNsYWltIHRoYXQgeW91IHdyb3RlIHRoZSBvcmlnaW5hbCBzb2Z0d2FyZS4gSWYgeW91IHVzZSB0aGlzIHNvZnR3YXJlCiAgICAgIGluIGEgcHJvZHVjdCwgYW4gYWNrbm93bGVkZ21lbnQgaW4gdGhlIHByb2R1Y3QgZG9jdW1lbnRhdGlvbiB3b3VsZCBiZQogICAgICBhcHByZWNpYXRlZCBidXQgaXMgbm90IHJlcXVpcmVkLgogICAyLiBBbHRlcmVkIHNvdXJjZSB2ZXJzaW9ucyBtdXN0IGJlIHBsYWlubHkgbWFya2VkIGFzIHN1Y2gsIGFuZCBtdXN0IG5vdCBiZQogICAgICBtaXNyZXByZXNlbnRlZCBhcyBiZWluZyB0aGUgb3JpZ2luYWwgc29mdHdhcmUuCiAgIDMuIFRoaXMgbm90aWNlIG1heSBub3QgYmUgcmVtb3ZlZCBvciBhbHRlcmVkIGZyb20gYW55IHNvdXJjZSBkaXN0cmlidXRpb24uCiAgIEplYW4tbG91cCBHYWlsbHkgICAgICAgIE1hcmsgQWRsZXIKICAgamxvdXBAZ3ppcC5vcmcgICAgICAgICAgbWFkbGVyQGFsdW1uaS5jYWx0ZWNoLmVkdQogICBUaGUgZGF0YSBmb3JtYXQgdXNlZCBieSB0aGUgemxpYiBsaWJyYXJ5IGlzIGRlc2NyaWJlZCBieSBSRkNzIChSZXF1ZXN0IGZvcgogICBDb21tZW50cykgMTk1MCB0byAxOTUyIGluIHRoZSBmaWxlcyBodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmMxOTUwCiAgICh6bGliIGZvcm1hdCksIHJmYzE5NTEgKGRlZmxhdGUgZm9ybWF0KSBhbmQgcmZjMTk1MiAoZ3ppcCBmb3JtYXQpLgoqLwovKgoKIENvcHlyaWdodCAyMDE1LXByZXNlbnQgRGFuIEFicmFtb3YKIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVQKKi8KJ3VzZSBzdHJpY3QnO3ZhciBJPSd0b1N0cmluZztOO2Ntbz10ZDtzcGxpY2U7MTk3MC0wMS0wMVQxMTo0NTo0MS4wMDArMTE6NDU7bGVuZ3RoO21hdGNoOy87Y2xvbmU7WDtjYWxsO3Rocm93O2Ntbztqb2luO2Fzc2lnbjsvdmlkZW9wbGF5YmFjaztodHRwOi8vbG9jYWw7SjtpbmRleE9mO3d3dy55b3V0dWJlLmNvbTtzcDs7cHVzaDtzbGljZTtHRztyZXZlcnNlO3NjaGVtZTtcXC5nb29nbGV2aWRlb1xcLmNvbSQ7cGF0aDt1cmw7L2luaXRwbGF5YmFjaztuO3BsYXllcmZhbGxiYWNrO2dldDtzZXQ7c3RhcnRzV2l0aDtzcGxpdDs9O2ZhbGxiYWNrX2NvdW50O1c7MTtWO3k3O3Vuc2hpZnQ7cnI7dW5kZWZpbmVkO3BvcDssO2luZGV4Lm0zdTg7Jjtmcm9tQ2hhckNvZGU7V3NsWmtDWm96bFlyNkVCME43LV93OF87cnI/WzEtOV0uKlxcLmNcXC55b3V0dWJlXFwuY29tJDsxOTcwLTAxLTAxVDAyOjMwOjMxLjAwMCswMjozMDslM0Q7RWw7XFwuYTFcXC5nb29nbGV2aWRlb1xcLmNvbSQ7bGV0O0VJO3M7Zm9yRWFjaDt5SXkxUGEyOzE5NjktMTItMzFUMTc6MDA6MzcuMDAwLTA3OjAwO2xvY2FsO2Zvcjt5b3V0dWJlLnBsYXllci53ZWJfMjAyNjA3MjFfMDhfUkMwMDsvZmlsZS9pbmRleC5tM3U4OywiIns7Oi8vO1VudHJ1c3RlZCBVUkw7ZnZpcDthMS5nb29nbGV2aWRlby5jb207V0Q7aHR0cHM6Ly9sb2NhbDttbjsvLztmaWxlO3NpZ25hdHVyZUNpcGhlcjsvYXBpL21hbmlmZXN0O2Ntbz1wZjtyO3JlcGxhY2U7cmVkaXJlY3Rvci5nb29nbGV2aWRlby5jb207LCx9L1wnO3hpJy5zcGxpdCgiOyIpLApXWixuMncsaGksazIsdjJDLGVVLE5pLHB0LEFpLGhNaSxFdyx1eCxkcix4aU0semIsbHgsTFMxLFZqLGVNcixENCxrMyx4MyxneixxVSxKRixTaixtYyxLYixPTSxxd3QsR2JpLFYyLERlLGFNLHRVaCx2NCxucCwkaXgsaEEscmliLHhsLGUxLFhNLHFoLEc1LHNULHBwLEkxaSxTd2gsSkEsUzEsQUEsbVcsS3AsUDQsWmUseUcsVDUsS1MxLFJQLE90aSxadFosbjAsVWl3LFcyLERYLGJwLGtLLGg0LHlpdCx4SyxMMCwkSyxzQSxOeCxwMCxZSyxTdSx1aGgsemgsbHAsbzIsVUEsek0yLEMwLE14LFFsLFZsLFIyLGMyLG41LFc5LHY5LGtVLGhfLEw1LFhELHEzLE4zLHA1LEg5LGY1LFlVLEkwLFNYLG0wLEs1LE9fLFpCLFVfLEVfLHU0LEM1LEI5LG8wLHo5LEZELGpDaCxDeE0sYTAsbkcsRlMyLFdILGJXLGh2LHh2LGVXLGdnLHdaQyxHeix0dixWVVMscmcsTkUsWXYscEcsbjMyLFNXLEp2LFdjcixiYlosT0ssbV8sUEgsWlIsVUsseWcsS0csaVcsRUssb3osdVcsQ0csZGcsbFcsRkYsTUUsUnosClFnLGNILEQyLGJhLHZXLGF6LFdXLG5uLGhTLHg5LGVFLGdlLHFILFhfLFZHLHRTLCQ5LHJlLHNWLGpXLE5ILGFQLHBuLFk5LEhXLEpTLElZLEFTLEtuLFBXLHkxLHVhLG9ZLGs0MixaMixpYSx6JCxsYSxDbixqRSxGXyx3ZSxNSCxRMSxhWSxEOSxiRyxrbSx4bSxMaCx4VWosWHQsWW0sSHksSjMsSXgsU0MsQTMsbTQsS2gsT3MseW0sRXMsaUcsUHksdUcsb3gsZEcsVFMsQ2gsd0csTWYsUngsakMsVm0sYXgsbjgsWE1pLGczVSxiNixrbixoOSxMOCxxTU0sZTYsWGYsc2YsTlkscDgsSjksSV8sSzgsdGpVLHU2LG9fLHNNMixkUSxOenIsenYsbDYsVHYsajYsQzgsQk8sd1EsUl8sY08sV3gsdngsa3ksaEsscWMsWFp4LEFLLG9oLHVrLE1jLHdtLGZULHBNeCxZTXgsbkssdkwsREQsSGJTLEpGWixMSyxJNFMsZWcsZ0QsQUZaLG1VdyxTTVMsS2NoLFBfaSxaYmgsVVViLHJGdCxQTywkVU0sRzcseUZaLGVYLFhULEUzdCxpYlUsJEUsckQsTjUsbzNiLEhMLGZLLEpILElXLEFILEtLLGRVcixTZywKeTcsRTIsWkQsekJ0LE8yLG1oLGRELGw0aixUenIsak1oLHE4LCRHLHBxLFlHLFNPLGdwLEJ6aSxKJCxISixmcSxLcSxDXzEsRXUsdWUsbzUsRmNiLGRwLHozLHdNUyxsZSxUMyxqTyxSQmIsQkosRjEsd3AsUU1VLFY4LFI1LG5WLFE4LGE1LFczLERvLFZqdCx2MyxubDEsV1dyLGJwTSxibixMVix2bHIsZyQsazVaLHRxLFg2LGhIUyx4aGIsTFcyLGVIaCxnbGgsc2wsSDMsRzVoLHJBYixzUDIsTlR0LHA0aSwkaGgsdDFVLEpxLG1JLElpLFlUVSxPbCxQMyxabyx5aSxFbCxmZWIsSkF3LElldyxtaHcsU1RyLG9pLGQkLGxuLHpILEtXVSxCMyxQZjIsam0sT3BpLE12LHckLHlBMSxFbGksaXByLHVNWixSaSxuVyx6SGksVFRyLHZZLGtxLHhxLFhtLHF0LHQxLE50LHNqLENmMSxGV1osdzRyLFlxLEoxLElzLEhZLGZXLFYxVSxBMSxTUyxtRyxLVyxPaixaYSxQWSxjQVUsYWVoLG5LaSx5TixFaixpcix1cixscixvcyx6TixiMHgsZGgsVE4sQ1csalMsV3hoLHZLYixCWSxGbSx3aCxNdCxScyxRTiwKVk4sY1ksYXMsbl8sV0ssaEN4LERpLGJILHZLLGt0LHh4aixMeGksZUNVLGdLdCxYZCxZWSxoYSx4dCxMXyxxdyxzMncsclgsTldoLFl0LEhLLElGLFNBLEFhLG1hLHlLLHAyaix1SCxZQTEsbEgsVEssSDBpLGpBLENfLEJLLEo0cix3WCxNdyxSRixRSyxWSyxJWDEsY0ssYUYsbmUsV1MsRFEsYkMsa2oseGosTGUsZXYsdGsscjcscyQsTjYscGUsWWosSFMsZmUsSmssSVMsU3YsVSQsRSQsaUMsdUMsQTR4LG9TLGQ3LGxDLFRCLGp2LHc3LE02LFJTLFF0LGFTLG53LFdWLG14aixLeFUsREUsTzBpLFBwMSx2VixYJCxxTixVeGoseTQyLCRmLE5OLHB3LGZ3LFlmLEpyLG15LGkwYixQVixPdCxaRSx5Rix1dyxkMixDdyxVdCxUVzIsYUUsY1YsVzAsRHIsdjAsa1QsYmIsaHkseFQsQ3BNLGc4LEJXaixYbixxWCx3MjIsdHksTXVDLFJDVSxRMmksajJaLGFYQyxuVXcsSUssQXksSyQsZ1osWnIsVXoseUgsRXosaWIsb0sselEsbGIsVFEsQyQsQjAsRm4sUkssVkgsYzAsbnksV0IsREksYk8sdkIsCmtSLEx5LGhPLGI1dCxnSixlXyxHMSx0TywkUixOMCx2VTEsc1AscHksazlpLEFPLG1ZLEt5LFVQLHl4LGlPLGhxaCxkSix6MSxUMSxqXyxCQix3SixSOSxNMCxhOSxiUSxrdSxMRixlRixnMCxYcSwkdSxlcTEsZ1VyLHBGLFl1LE5MLEhOLFg5VSxKYyxJZyxTRixBYyxPUixaeSxVUixLRix5YyxFUix1USx0WFUsJDN4LHMwcixkMCxyX2osRzl3LHpuLE5aaSxpUSxvZyxINXgsbFEsVG4sakYsQ0YsRnEsdzAsZkJVLEpfMixJQmksY04sYWcsV3osRG0sU19aLEFfcixtM3csSzByLGI5LHZ6LFA0TSxrTyxoNyx4TyxMUCxlOSxnMyxVM3QscUIsaTVoLHVEeCwkTyxyMyx0Nyx5X3Isc0osTkIscFAsWU8sR28sRVVTLEh6LGZQLEo3LEk3LEE3LG1ULEtQLE9KLFB6LFRaaixabSxvNyxkMyxsOSxqMHgsRjBNLEJaaCx6byxGMyxWZCxNWFMsdzMsY3osbm0sYTcsRDUsYk0sV1UsUnEyLFEwUyxWWDIsY19aLGtRLGFCUyxudjIsV19DLERFeCxiR0MsdnZpLGt6aSxoSSx4USx4RXcsTF9pLGd2dyxldywKTG0sJFEscUt3LHNjLHBtLFlRLHRXdywkRXQsZm0sT2MsUFUsWjUseUosRWMsU3csVWMsaU0scnZoLHN6Uyx1TSx6VCxqdyxUVCxCVSxsTSxDbSxNYixhSSxuWCxOZ3csY1UsVkosZ0UsZVosdHAsJG8sckUsWUtqLGZSMixTS0MsSnZaLHM5LElSMSxOaixISSxwWCxJYixBcCxLWCxaQSxQSSxPOSxVOSxpeSx1eSxkRSxLXzIsT0d4LFBXMSxRUixNaixjSSxDWCxuVSxxMSxiUix2cyxrQSxUcCxzeSxwVSxpR2osS1UsRXZDLGpaLG1yLER2LGc0LE4xLGFiLEY0LEJJLHdFLFZSLHI0LHVSLG92LEV5LFRVLGp5LENVLENXaSxCcyxGUix3NCxNMSxCZ3Isd0hDLE1XdyxRNCxjcyxuNCxhdixXYSxRejEsVld4LGhQLGtCLG45dyx4QixnSyxMNCxlaSxXTlUsREh0LGhUUyxLNCxPYSxnOWksdWcsaWcsWFdqLFRxLHFWWixqaSxHJGosenEsQzR3LG9VLGxnLGRLLFBhLEZqLHRFeCwkSHQsd0ssTWcsUTUsTmUyLGFVLG5CLGtWLGhtLHBXTSxMQixnYixYQSxxUSxHdyx0bSwkVixZVlMscmIsZUwsc0gsCnBCLEhiLGZCLFlWLElMLEhucixmMmosT0gsWk0sRUgseXYsaSQsSlNyLHp3LGRiLEkyWix1JCxTVjEsakwsQ0IsQVN4LG1IMSxLTnQsQmIsRkEsb0wsVHcsUGF4LGNiLFdQLFZ2LGtELHhELGVrLHlTaCxFOWIsaW53LGRIaix1X3QsR1cscGwsSFAsZmwsSmUselRqLElqLEFlLG1FLFNrLEtsLFRlYixPbyxQUCxqWTEsWlksRk54LEJlUyxDYVUsTUV3LFVvLFZFMixsMmoseXEsRW8sY1MyLHFyLHRlLER3LHZHLGtNLGhSLHhNLExSLGU1LGdkLFhhLHFELEc2LHRSLCRNLHJkLHN4LGEyMixwUixKUixJdyxtayxLUixPeCxQRyxadyxVeCx5QSxFeCxpaCx1aCxvdyxkZCxUNixqNSxDUixCRyx3ZCxNRCxRQSxjRyxuZixXZSxERyxiQixubWgsVzRVLERmUyxrJCxYOCx0RSxiaDEsJCQsc2UsTmEscGYsa1NqLHhmUyxIZSxMNFosZWFVLGdtMixKRSxJOCxxc1UsQUUsR1N3LCRmaSxLZixyM1osT2UsbUwsc3hyLHRDaCxTWSxQZSxaRyxweXQsWXNNLEhodyxVZSxJOTIseVcsRWUsdUIsU3NaLGROLApuYyxXUSx5M3IsYjAsRW14LHg1LExjLGV0LG9tTSx0aixYeSxkZjIsRzAsJDUsemFpLGw5aSxUR2gscWUsdXQyLHJhLHNoLEhRLEJHTSxGNGIsZmMsSmosUmFTLGE5cixxNCxubjEsdFgsck0scGksWXosZmksSWYsbVUsUzIsaGp0LEFYLHhZYixLaSxPMyxlancsWnEsZ25aLFAkLExEWixpWixYT2IscWZTLHQ2QyxyOVMsR3ZVLHNfMixOUWksajIsQiQsSDhyLFFyLEo5YixmOEMsTTQsVnIsUmYsYyQsSThqLEE5UyxTZmosRkcsbVl3LFA2Uyx3TSx1Zk0sb25yLGRZTSxpOFUsRW4yLHk5dCx6ajEsYWYscE9pLGw4dCxZZmksVFFNLGpfVSxuNyxGRGIsQzZVLFduLEJRdyx3T1osUmpVLFFfMSxNNlUsbnl3LFdCaixhODIsa0Z3LGhzdyxWNnIsYzlNLExCVSx4Y2Isa2QsZXNqLGhzLGd5MSxHRkMsWHh0LHRwYixxMGIsJGN4LHhkLEw3LGVJLHJLcixzaFosZ1AsTm10LFhOLHB4aSxZMFUscUcsR0UsSFRaLGZsaixKS2osSWxqLHRzLFMwdyxBS3IsbWNyLEtCTSxPVGIsUGtDLFpUVSxVY2kseUtDLApFeTIsaVR4LHVMMixveWgsZGN0LHpzMSxsbHIsVG1yLGpoTSxDa3gsQm1qLHd4WixNcEMsclAsc24scDcsWWQsUnN4LEhuLGY3LFFodyxKcyxWcEMsSU8sQXMsbTUsSzcsWlUsVW4seXcsaUosYWx4LG9PLHpFLFRFLGdYLEM3LGhBaSxCbixlQSxGTixlQVosTUcsUk8sVncsZ0V3LERjLHZBLGtKLFhMUyx4SixlSixnRixYcCxxZCxOZCxJRGgsUzJiLFlKLEhLaSwkNXIsSlQsc1diLElyLHJGLCRKLHRnaCxHN1UscTJDLHRULGZnLHNELEhBLFBBLFpjLFVELHlMLEVELGkzLHUzLG9yLGRGLHpfLFRfLGpKLENnLEJBLEZwLHdGLFFMLFd3LFZMLGNBLHZ3LGt4LGFyLEtoMixMcyxnQSxHaixQSUMsWktaLFl4LHBzLFU1WiwkeCxyQSxzWSxOayxIdyxmcyxKWSxJQixTUCxtdCxBWSx5SHIsS3MsUHcsRUVaLE9ZLFpfLGlLVSxVWSx5ZixvRWksemosbEwsalAsVGosQncsRjUsd0EsTWssUWYsY3csbnosV18sREosZDV3LGJULHZfLGtOLHpBMixoSix4TixMeixleCxnayxYeCxsRHgsVEQxLEdQLHRKLAokTixPdixQXyxaSixVdix5cyxkayx6UCx3TFUsbFQsVFAsangsQ3osTWdNLFJBUyxRV00sVmdpLGNIaixhRFUsRngsTUksbkdTLERPLHZSLGhNLHhYLExNLGVHLFhaLHEkLEdpLHRNLCRYLHJ5LHNOLE4kLFlYLGZNLEpNLElkLFNHLFFQLE9OLG1GLEtnLE0zLFpPLFVOLHZHVSx5VCxrM3IsaTgsdTgsZHksaGdTLHppLGw4LFRpLGpHLHJrLENNLEJSLHg4aixGWixNJCxSZCxRVCxWVCxjUixhZCxuNixXRix2RixMS1UsTDYsZWcxLGU0LFhKaSxxeixxdWosRzNDLHRPWix0WixzNVUsTnBqLHBKYixJbyxZdWgsSHFoLGZ0WixHXyxmRHcsJGcsUzQsSzYsT2ssUEYsSiRVLEl0aSxaSCx5QyxBWixFayxBJGksaUEsdUEsb28sbTh0LHp4LFR4LGo0LEM2LEJGLEtLdCxGdixwNixWQyxPcXgsVThaLERLLHJIaSxKSHIsdlgsaHoseGgsTE4sZVQsZzEsRUdDLCRoLG9HdyxkOGksaXF0LHR6LHUxcixsdGIsTlYsemcyLHBOLFRwYixIWCxORFMsWTJTLE9ELFNKLENlVSxmTixKeix3SngsajVpLFNULG1WLApLTixBeixPZCxQWCxSZ1UsRWQsVk9yLGF0dCxpbyxuWUMsb24sekwsWHYsVEwsalQsQlgsRlYsUU0sY1gsbG8sYzksV0UsYmksdkUsaHUsTEUsdHUsWnFTLHZZaixmRSxKdSxTTSxBdSxWUCxLRSxMSUMsZUVpLE9tLFBFLGdZWix0bU0sWmYsWDNTLEdIdCxxbGgscnFaLHNpcixpaSx1aSxvQSxUbCxDRSx3YyxGQyxNRixSQSxZbHcsUW4sSFZ4LGZvaSxKcVosQXExLG12aixhQSxuTCxQbjEsWlZpLHlxMSxFWTEsaVYyLHU2UyxvWU0sekViLGxvaixrTCx4TCxMTCxlJCxnNix0eCxCJHgsdzNpLEdmLFJFaSwkTCxyNixRaTIsVm10LHNVLFZuLFdqLEhqLGZMLG1mLEVVLGlqLHVqLGQ2LHpmLG9RLGdxWixsaixYWWgscWpoLEdOaCxDTCxCaixGZSxKeCx3NixQMCxNcyxBSixSUSxReixOSSxWeixVdE0sY2oseTFoLEk0LGFRLG5BLGJGLFRmLGokLFN4LGhELEVxaCx4cCxLeixpV1MsdW10LG9xMSx6a1UsTEEsZTcsZ2wsWDIsZHQxLEdlLHRELCRwLHJsLEF4LE51LFlwLElULEFELGlULHB6LEtBLApPUyxQVCxUaGksY3F4LHBMLFpQLFVTLHlVLEVTLGlGLHVGLGxGLHplLGo3LGRsLE1TTSxDQSxCVCxGMix3bCxNdSxhVCxjVCxRc1MsbjIsVzcsVlNoLGtGLGhmLGMxQyx4RixMMixlQixiX0MsZ3YsWHoscXAsdGYsdnRDLGh4dyxmMixKZixJeSx4dzIsU0IsQWYsbVAsWiQsVUYseUUsRUYsaTUsenUsVHUsakIsQzIsQjcsTGF4LEZ6LHd2LE1wLFJ5LFFFLFZFLGM3LGF5LG52LGJZLFd1LERiLEdLdCxxSXcsdEFDLCR3aixyYVUsc0ZNLHZ1LGtzLE5YaCxlbixnVixZSTEsSF9VLHFXLFhyLHRCLGZpeCxyVixzYixOVyxwdixmdixZcyxKQixJNixKYWksSHUsWmIsVWIsRWIsbzYsU0laLHVZLEFhMixURCxsWSxtd3Isam4sQ3YsRnIsd1YsTVcsUWssVmssY3UsQ25pLEZJMSxhNixXcCxEeCxidSx2cCxrWixoVSx4WixMMyxlVixnQyxVd2IseWFqLGlfYixYdSx6eFMsakZNLFNWLENIaCxGYU0sd0tqLE1BTSxSeGosUUZ3LFZBUyxjYXQsYWlNLG5qMSxtZSxXJGosRDZ4LEszLE9HLGJlcixQcCwKdmp3LGg3Mix4NncsVUcsWngsTCQyLHlCLGl1LGU3YixnajEsWFNoLG9xLEdCYixya2osekkscSQyLCQ2aCxsdSxqVixzU3csTjdTLHBTUyxGdSxIZVUsd0MsUnEsSVExLFMkaCxtNncsSyRqLFZCLGNwLFBDMixhcSxaZXcsTXEsVTZDLGZRaCxPZWksQWtNLFc2LHlrcixFalosaWVpLHU5VSxvancsRGQsVDdiLGQ2cix6N1UsalNaLGJTLENDTSxsUWgsdjYseEMsTHIsZXEsa0MsQjdiLHdTVSxndSxGJHgsTXZTLFI3VSxWdnQsY2tqLFgwLGFRUyxuZngsRE4xLGJ3QyxxMixHWix0MCwkQyxRRXcsVkh4LGNyaCxEWDIsdmZ0LGtkVSxuVHcsV2paLGFFdyx2VFosSDYsSjQsZnIseWssbWksS3YsUHUsaVksS3IsSSQsaFpyLE80LHhYQyxMalUsUDYsQTAsbWQsWmQsZ1RDLFU0LEowLGc3LHlvLEU0LGlTLFNxLGtRdyxlWnQsdVMsWDB0LHF6aCxHUWIsdGRqLCRYMSxyeUMsTjhaLGR1LEprQyx6WixsUyxSNixLYTIscDBiLGpxLFZvLElyYixZemksZnJDLENyLEYwLG1YYixLamksTyRpLFokaSxQYlUsClVYWixhJCx5eXgsbkQsV2wsaSRTLEVUaixvVGosRGssdW5VLHZsLHpaaixscjIsVDhoLENidCxCOGksdzBiLGhnLGt3LEZqaixSWmgsTEQsVmR0LGVSLFFLeCx4dyxnaixYQixXWWgsblJ0LCR3LHFQLFl3LHZSdyxlU2osaFMxLExZMix4MEMsZkQsWEJ3LHFQaSxHMVMsdF9oLCQwYixyT2gsczlDLE5KaSxJayxwQngsWVBNLEh5VSxKT3csZkl0LElJYixKZyxBT00sU1IsY3laLFBsLFp5UyxpeWksdWtoLG9SdCxQT3QsRXEsdTEseXUsZDBiLFVxLGxJYixvayxaayxVMFosaTEseU9aLG0wTSxtdixqOUMsT3laLENPaixCSnQsVEpiLEZZQyx3QngsemMsTV93LFE5YixWXzIsUlNDLGNPdyxhSVosV1hoLERMYixrbnIsYkZqLHZ1TSxUYyxoUXgseEx0LExYcixndUMsalIsQ0QsWE5pLEJsLHFScixHbncsdEZ4LCRMQyxyYzIsc2d3LE4wUyxwTnQsWVJ3LEhGWixmeVUsSmNiLEl5dyxTUnQsQWNaLG1MMixLWFosT0ZDLFBRcixaRnQsVUwyLHljMixFdXQsaUZVLHVxdCxvdTIsZExpLHpRUyxseTIsClQwVSxqZ2gsQ1FDLEIwaixGWDIsTUZ4LFJRVSxWRlMsTVAsUXUsVnUsY2wsbk9NLG5DLFdUaCxEQmksYlBTLGFrLHZPMixheVosYm0saEQxLHhCaCxMVGIsdnIsa29yLE9iLGRWLFlDLFN6TSxjNixIJGgsUW8sQjYsd3UsUiQsZGoselMyLEVSUyxYemgscUoyLHQ5aCxrYywkQmkscjdoLGgyLGVEYixYYixIUGIsZm14LEo3aSxJbWkscW0sZ09DLEE3eCxzN3IsTjNDLHhjLExDLHB6aCxaUGosS1RpLE9QMixyUyxOMiwkYyxTSloseTdpLEVPaCxpUFMsbUJiLHUzeCxvT3gsZEJoLFQzaCxqN2osQzl4LHBDLEIzeCx3enIsRlR0LFJEaixRNzIsYzdyLFdnMixoOE0seGJqLEhyLG5RdyxKMixmQyxMZ3csZTh3LGJtaCxWOWksTTliLGdRdyxYVVMscWNVLEdUUyx0d00sckkxLFMwLCRiWixOb0Msc0lNLFljMSxwVWosbW4sQTIsSG1TLGY1eCxKSWIsSTUyLEtDLEFJTSxtYk0sS2d4LE9YLE9tMixQTWosUHIsWm1oLHlJcixpbXIsWlYsVVgseTMsaW0sdW0sRVgsRVFNLHVpaixvUTIsZGJTLHo4MiwKbDVVLGJBLG91LFRvaSxqSWosQ014LEJvdCxkUyxGZ2IselgsTXdoLGwxLFRYLGowLENDLEJyLEZiLHdTLFFJUyxWd00sY0lqLGE1cixSdSxXM1osRGoyLGJYdCxrcGksaHlpLGJKLHZ5TSx4amosTDN4LGV5aixYSVosYXUsV2QscTkxLG51LEQ3LGJWLHRaTSwkalosdmQscnB0LGNjWixNbSxWMyxoQyxIWDIsZkF0LEpwVSxJQWgsUzliLEFwaixtanQsSzNVLE9YMixlaCxncyxYSixQeUMscTksUjhDLFVqdyx0QyxHWSwkMCxFb2ksaVhTLHJzLHNCLHlwYixwdSx1NGIsWTAsb294LGZ1LFRFMixqYjIsSkMsRjNiLFNoLG1vLGRqcixNWjEsSGQsUnlpLFFidyxsQXQsVlppLHp5MSxhQXcsbkF4LGNwdCxQZCxaNyxMcjEsdkFqLHlhLGVwWixrVWksRDF0LGdBaSxXcmgsR1UxLFhzaSxVQix0eTIsYlVVLHI2dyx4MVUscHNyLEVCLEhVaSxmdmksWXlpLEl2aCxTeXIsU1BNLEdYLG9jLFA5VSxtMVUsSWMsbFYselksamgsQmQsRkosS3JiLHdzLFUxaSx5NlosRUFDLE05LFBSYixSYyxpVXQsQ3UsCmNkLG9BdCxRYSxWYSx1VixUWSx3c2ksTXl4LE9VaCxkcyxScFUsYnYsQTZqLGQxMixhdlosbkJDLFcxaSxiNHQsRGdDLHZCMixCNFUsUXZpLGhMWixMMWIseGdaLGVMaCxnQnIsWGFTLGtQLGg1LHFhVSxHcU0senBpLHRpUywkZ0MsTGEsclBoLHNVUyxlbCx4UCxwYU0sZzksWFksSDR0LGZwaSxKUE0sSXBDLFNhTSxZYVUsQVAyLG1naCxPNEMscVQsSzFVLEdHLFBneCxaNHgseVBqLEVCQyxVZzIsb0JyLGRndyxpNFUsdWp4LHpMWixscDIsalVVLFRLdyxSTHQsUVVaLENndCxCS0MsRjF3LHdhUyxNaWksVmliLHI5LHNyLCRQLE5ULGFweCxuVnIsV3F4LEpKLHBhLGJCeCx2VjIsa3d3LFlQLGZhLEg4LHhRdyxoYmosZ1ZoLEo1LFIwLFhiaCxJRyxxSDEsR3dVLHRMeCwkUXgscm1NLHNMYixOYmIsSEJ3LFlIaSxBNSxtQSxKbXgsS2EsU2wsZk0xLE9yLEtxcixQJEMsWkJqLFVRaSx5bWksRVZiLGlCUyxaVCxpdix1QXQsdXYsemJyLG9WMixEJCxURyxqbCxDYSxHdSxCOCxGWSxqTGosQyR3LAp3OSxSRyxRWSxGcU0sTVQsQmJoLFJieCxjbWIsVlksYU1VLG5EaixhRyxEclosVkxNLFdjLGJsWixuTyx2RDEsa1cxLGJzLHZjLHhydCxrSSxlMEMsZ0R4LExFcixYUGkscW8yLGhoLEdXYix0azEsTE8sZXMsZ2YsJHJNLHJlUyxzalMsTl9oLFlvQyx0aCxIbEMsJEksQWV0LHJmLG1yaixLRWgsUGRaLE9sTSxOSyxwTyxabGksRURqLEhjLFlJLHU3dCxkck0samp4LENkaixKaCxJZSxCX0Msc0YsZk8sRkVaLFNzLHdQMSxNa00sbVIsY2ViLHlSMSxHRCwkcyxlMCx6RCx5UyxCdSxFZyxpcyxUWixVZyxpUlosdXMsdWFVLG9NaCxkRGIselVoLHR2aSxNMixqd2osRncsQ2gxLE1LLGlwLGpzLEZraixjYyxDTyxuSixjUmIsVjVoLGx3WixXZixkZixUZGosbHMsbiRNLFdMcixEYXIsTTVpLHYkaCxodnIsZXZ0LGckUyxrcix2ZixYZWosYmwsREwseHIsTEwyLHFlaSwkYXIsdVJyLHJFUyxzOHIsWWVpLFhTLHBlVSx0YixOTncscTcsZkdTLEpFYixJR3csU2UxLEFFaSxyNSxaZncsc1osT2Z0LHlFMiwKRSRNLGlmQyxLTFosdThiLFlyLG8kVSx2NyxmSixKYixBYixQZixWUyx6djIsVVosbEd3LGo4MixDQlMseVosaWwsVWFoLHdlVSxNWU0sUnZaLFE4eCxWWXgsYUcxLFcydyxEZWIsb1gsY0VyLFZaLGswaix6QSxFWixoZDEsbngsTDJNLHhlcixXcSxERixiVSx2cSxlZFMsYVgsT1osQ0osbGwsVEEsQmYsbjVqLEZTLEtKLHVsLGRhdCxYUXgsRzBqLFNhLFFaLHR0dywkZVUseGkscmpqLHNhaSxoVixOYWIsa2ksZW8sWWhpLEhjdCxmNmg7V1o9ZnVuY3Rpb24obil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG50W25dLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19OwpnLkQxPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG50W25dPVd9OwpuMnc9ZnVuY3Rpb24obixXKXtpZihXKWZvcih2YXIgRD0wO0Q8dloubGVuZ3RoO0QrKylrMih2WltEXSsiQXJyYXkucHJvdG90eXBlLiIrbixXKX07CmhpPWZ1bmN0aW9uKG4sVyl7VyYmazIobixXKX07CmsyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9eDI7bj1uLnNwbGl0KCIuIik7Zm9yKHZhciBiPTA7YjxuLmxlbmd0aC0xO2IrKyl7dmFyIHY9bltiXTtpZighKHYgaW4gRCkpcmV0dXJuO0Q9RFt2XX1uPW5bbi5sZW5ndGgtMV07Yj1EW25dO1c9VyhiKTtXIT1iJiZXIT1udWxsJiZXU0MoRCxuLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6V30pfTsKdjJDPWZ1bmN0aW9uKG4sVyl7bi5wcm90b3R5cGU9RGl4KFcucHJvdG90eXBlKTtuLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1uO2J0UyhuLFcpO24uVEI9Vy5wcm90b3R5cGV9OwplVT1mdW5jdGlvbihuKXtuPU1hdGgudHJ1bmMobil8fDA7bjwwJiYobis9dGhpcy5sZW5ndGgpO2lmKCEobjwwfHxuPj10aGlzLmxlbmd0aCkpcmV0dXJuIHRoaXNbbl19OwpnLkdiPWZ1bmN0aW9uKG4sVyxEKXtuPW4uc3BsaXQoIi4iKTtEPUR8fGcucWk7Zm9yKHZhciBiO24ubGVuZ3RoJiYoYj1uLnNoaWZ0KCkpOyluLmxlbmd0aHx8Vz09PXZvaWQgMD9EW2JdJiZEW2JdIT09T2JqZWN0LnByb3RvdHlwZVtiXT9EPURbYl06RD1EW2JdPXt9OkRbYl09V307Ck5pPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5ycigiQ0xPU1VSRV9GTEFHUyIpO249RCYmRFtuXTtyZXR1cm4gbiE9bnVsbD9uOld9OwpnLnJyPWZ1bmN0aW9uKG4sVyl7bj1uLnNwbGl0KCIuIik7Vz1XfHxnLnFpO2Zvcih2YXIgRD0wO0Q8bi5sZW5ndGg7RCsrKWlmKFc9V1tuW0RdXSxXPT1udWxsKXJldHVybiBudWxsO3JldHVybiBXfTsKcHQ9ZnVuY3Rpb24obil7dmFyIFc9dHlwZW9mIG47cmV0dXJuIFchPSJvYmplY3QiP1c6bj9BcnJheS5pc0FycmF5KG4pPyJhcnJheSI6VzoibnVsbCJ9OwpnLlkyPWZ1bmN0aW9uKG4pe3ZhciBXPXB0KG4pO3JldHVybiBXPT0iYXJyYXkifHxXPT0ib2JqZWN0IiYmdHlwZW9mIG4ubGVuZ3RoPT0ibnVtYmVyIn07CmcuZnQ9ZnVuY3Rpb24obil7dmFyIFc9dHlwZW9mIG47cmV0dXJuIFc9PSJvYmplY3QiJiZuIT1udWxsfHxXPT0iZnVuY3Rpb24ifTsKQWk9ZnVuY3Rpb24obil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLFNVKSYmbltTVV18fChuW1NVXT0rK2tidCl9OwpoTWk9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuLmNhbGwuYXBwbHkobi5iaW5kLGFyZ3VtZW50cyl9OwpnLkt0PWZ1bmN0aW9uKG4sVyxEKXtnLkt0PWhNaTtyZXR1cm4gZy5LdC5hcHBseShudWxsLGFyZ3VtZW50cyl9OwpnLlBaPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpO3JldHVybiBmdW5jdGlvbigpe3ZhciBiPUQuc2xpY2UoKTtiLnB1c2guYXBwbHkoYixhcmd1bWVudHMpO3JldHVybiBuLmFwcGx5KHRoaXMsYil9fTsKZy5Vdz1mdW5jdGlvbigpe3JldHVybiBEYXRlLm5vdygpfTsKZy55aj1mdW5jdGlvbihuKXtnLkdiKCJ5dC5hYnVzZS5wbGF5ZXJBdHRMb2FkZXJSdW4iLG4pfTsKRXc9ZnVuY3Rpb24obil7cmV0dXJuIG59OwpnLml4PWZ1bmN0aW9uKG4sVyl7ZnVuY3Rpb24gRCgpe30KRC5wcm90b3R5cGU9Vy5wcm90b3R5cGU7bi5UQj1XLnByb3RvdHlwZTtuLnByb3RvdHlwZT1uZXcgRDtuLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1uO24uQU89ZnVuY3Rpb24oYix2LGspe2Zvcih2YXIgaD1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLHg9Mjt4PGFyZ3VtZW50cy5sZW5ndGg7eCsrKWhbeC0yXT1hcmd1bWVudHNbeF07cmV0dXJuIFcucHJvdG90eXBlW3ZdLmFwcGx5KGIsaCl9fTsKdXg9ZnVuY3Rpb24obiwuLi5XKXtXPVcuZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiYiKTtpZighVylyZXR1cm4gbjt2YXIgRD1uLm1hdGNoKC9bPyZdYWR1cmw9Lyk7cmV0dXJuIEQ/bi5zbGljZSgwLEQuaW5kZXgrMSkrVysiJiIrbi5zbGljZShELmluZGV4KzEpOm4rKG4uaW5kZXhPZigiPyIpPDA/Ij8iOiImIikrV307CmRyPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFc/IiYiK24rIj0iK2VuY29kZVVSSUNvbXBvbmVudChXKToiIn07CnhpTT1mdW5jdGlvbihuKXtuPW4uWDtpZighbilyZXR1cm4iIjt2YXIgVz1kcigidWFwIixuLnBsYXRmb3JtKStkcigidWFwdiIsbi5wbGF0Zm9ybVZlcnNpb24pK2RyKCJ1YWZ2IixuLnVhRnVsbFZlcnNpb24pK2RyKCJ1YWEiLG4uYXJjaGl0ZWN0dXJlKStkcigidWFtIixuLm1vZGVsKStkcigidWFiIixuLmJpdG5lc3MpO24uZnVsbFZlcnNpb25MaXN0JiYoVys9IiZ1YWZ2bD0iK2VuY29kZVVSSUNvbXBvbmVudChuLmZ1bGxWZXJzaW9uTGlzdC5tYXAoRD0+ZW5jb2RlVVJJQ29tcG9uZW50KEQuYnJhbmQpKyI7IitlbmNvZGVVUklDb21wb25lbnQoRC52ZXJzaW9uKSkuam9pbigifCIpKSk7Cm4ud293NjQhPW51bGwmJihXKz0iJnVhdz0iK051bWJlcihuLndvdzY0KSk7cmV0dXJuIFcuc2xpY2UoMSl9Owp6Yj1mdW5jdGlvbihuLFcpe2lmKFchPT1udWxsJiZXIT09dm9pZCAwKXtpZih0eXBlb2YgVyE9PSJvYmplY3QiJiZ0eXBlb2YgVyE9PSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkLiIpO2lmKEQ9PT12b2lkIDApe2lmKCFTeW1ib2wuZGlzcG9zZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJTeW1ib2wuZGlzcG9zZSBpcyBub3QgZGVmaW5lZC4iKTt2YXIgRD1XW1N5bWJvbC5kaXNwb3NlXX1pZih0eXBlb2YgRCE9PSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IG5vdCBkaXNwb3NhYmxlLiIpO24uc3RhY2sucHVzaCh7dmFsdWU6VyxkaXNwb3NlOkQsYXN5bmM6ITF9KX1yZXR1cm4gV307Cmx4PWZ1bmN0aW9uKG4pe2Z1bmN0aW9uIFcoayl7bi5lcnJvcj1uLmhhc0Vycm9yP25ldyBTdXBwcmVzc2VkRXJyb3IoayxuLmVycm9yLCJBbiBlcnJvciB3YXMgc3VwcHJlc3NlZCBkdXJpbmcgZGlzcG9zYWwuIik6aztuLmhhc0Vycm9yPSEwfQpmdW5jdGlvbiBEKCl7Zm9yKDtiPW4uc3RhY2sucG9wKCk7KXRyeXtpZighYi5hc3luYyYmdj09PTEpcmV0dXJuIHY9MCxuLnN0YWNrLnB1c2goYiksUHJvbWlzZS5yZXNvbHZlKCkudGhlbihEKTtpZihiLmRpc3Bvc2Upe3ZhciBrPWIuZGlzcG9zZS5jYWxsKGIudmFsdWUpO2lmKGIuYXN5bmMpcmV0dXJuIHZ8PTIsUHJvbWlzZS5yZXNvbHZlKGspLnRoZW4oRCxmdW5jdGlvbihoKXtXKGgpO3JldHVybiBEKCl9KX1lbHNlIHZ8PTF9Y2F0Y2goaCl7VyhoKX1pZih2PT09MSlyZXR1cm4gbi5oYXNFcnJvcj9Qcm9taXNlLnJlamVjdChuLmVycm9yKTpQcm9taXNlLnJlc29sdmUoKTsKaWYobi5oYXNFcnJvcil0aHJvdyBuLmVycm9yO30KdmFyIGIsdj0wO0QoKX07CmcuVGI9ZnVuY3Rpb24obixXKXtpZihFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSlFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLGcuVGIpO2Vsc2V7bGV0IEQ9RXJyb3IoKS5zdGFjaztEJiYodGhpcy5zdGFjaz1EKX1uJiYodGhpcy5tZXNzYWdlPVN0cmluZyhuKSk7VyE9PXZvaWQgMCYmKHRoaXMuY2F1c2U9Vyl9OwpMUzE9ZnVuY3Rpb24oKXt9OwpnLmpVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4ubGFzdEluZGV4T2YoVywwKT09MH07CmcuQlo9ZnVuY3Rpb24obixXKXt2YXIgRD1uLmxlbmd0aC1XLmxlbmd0aDtyZXR1cm4gRD49MCYmbi5pbmRleE9mKFcsRCk9PUR9OwpnLkZoPWZ1bmN0aW9uKG4pe3JldHVybi9eW1xzXHhhMF0qJC8udGVzdChuKX07Cmcud3I9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi50b0xvd2VyQ2FzZSgpLmluZGV4T2YoVy50b0xvd2VyQ2FzZSgpKSE9LTF9OwpnLmNaPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MDtuPVN0cmluZyhuKS50cmltKCkuc3BsaXQoIi4iKTtXPVN0cmluZyhXKS50cmltKCkuc3BsaXQoIi4iKTt2YXIgYj1NYXRoLm1heChuLmxlbmd0aCxXLmxlbmd0aCk7Zm9yKGxldCBoPTA7RD09MCYmaDxiO2grKyl7dmFyIHY9bltoXXx8IiIsaz1XW2hdfHwiIjtkb3t2PS8oXGQqKShcRCopKC4qKS8uZXhlYyh2KXx8WyIiLCIiLCIiLCIiXTtrPS8oXGQqKShcRCopKC4qKS8uZXhlYyhrKXx8WyIiLCIiLCIiLCIiXTtpZih2WzBdLmxlbmd0aD09MCYma1swXS5sZW5ndGg9PTApYnJlYWs7RD1Waih2WzFdLmxlbmd0aD09MD8wOnBhcnNlSW50KHZbMV0sMTApLGtbMV0ubGVuZ3RoPT0wPzA6cGFyc2VJbnQoa1sxXSwxMCkpfHxWaih2WzJdLmxlbmd0aD09MCxrWzJdLmxlbmd0aD09MCl8fFZqKHZbMl0sa1syXSk7dj12WzNdO2s9a1szXX13aGlsZShEPT0wKX1yZXR1cm4gRH07ClZqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG48Vz8tMTpuPlc/MTowfTsKZU1yPWZ1bmN0aW9uKCl7dmFyIG49bnVsbDtpZighbmIpcmV0dXJuIG47dHJ5e2xldCBXPUQ9PkQ7Cm49bmIuY3JlYXRlUG9saWN5KCJnb29nI2h0bWwiLHtjcmVhdGVIVE1MOlcsY3JlYXRlU2NyaXB0OlcsY3JlYXRlU2NyaXB0VVJMOld9KX1jYXRjaChXKXt9cmV0dXJuIG59OwpEND1mdW5jdGlvbigpe1dNPT09dm9pZCAwJiYoV009ZU1yKCkpO3JldHVybiBXTX07CmszPWZ1bmN0aW9uKG4pe3ZhciBXPUQ0KCk7bj1XP1cuY3JlYXRlU2NyaXB0VVJMKG4pOm47cmV0dXJuIG5ldyBiXyhuKX07CngzPWZ1bmN0aW9uKG4pe2lmKG4gaW5zdGFuY2VvZiBiXylyZXR1cm4gbi5OO3Rocm93IEVycm9yKCIiKTt9Owpnej1mdW5jdGlvbihuKXtpZihuIGluc3RhbmNlb2YgZy5lailyZXR1cm4gbi5OO3Rocm93IEVycm9yKCIiKTt9OwpxVT1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IFhJKFc9Plcuc3Vic3RyKDAsbi5sZW5ndGgrMSkudG9Mb3dlckNhc2UoKT09PW4rIjoiKX07CmcudEY9ZnVuY3Rpb24obixXPWcuRzQpe2lmKG4gaW5zdGFuY2VvZiBnLmVqKXJldHVybiBuO2ZvcihsZXQgRD0wO0Q8Vy5sZW5ndGg7KytEKXtsZXQgYj1XW0RdO2lmKGIgaW5zdGFuY2VvZiBYSSYmYi5PVihuKSlyZXR1cm4gbmV3IGcuZWoobil9fTsKZy5yej1mdW5jdGlvbihuKXtpZihnMmoudGVzdChuKSlyZXR1cm4gbn07Cmcuc009ZnVuY3Rpb24obil7cmV0dXJuIG4gaW5zdGFuY2VvZiBnLmVqP2d6KG4pOmcucnoobil9OwpnLk5VPWZ1bmN0aW9uKG4sVyl7Vz1nLnNNKFcpO1chPT12b2lkIDAmJihuLmhyZWY9Vyl9OwpnLnBiPWZ1bmN0aW9uKG4sVz1gdW5leHBlY3RlZCB2YWx1ZSAke259IWApe3Rocm93IEVycm9yKFcpO307CmcuSE09ZnVuY3Rpb24obil7dmFyIFc9RDQoKTtuPVc/Vy5jcmVhdGVIVE1MKG4pOm47cmV0dXJuIG5ldyBnLlkzKG4pfTsKZy5mYj1mdW5jdGlvbihuKXtpZihuIGluc3RhbmNlb2YgZy5ZMylyZXR1cm4gbi5OO3Rocm93IEVycm9yKCIiKTt9OwpKRj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9d2luZG93O249Zy5zTShuKTtyZXR1cm4gbiE9PXZvaWQgMD9iLm9wZW4obixXLEQpOm51bGx9OwpTaj1mdW5jdGlvbihuPWRvY3VtZW50KXtuPW4ucXVlcnlTZWxlY3Rvcj8uKCJzY3JpcHRbbm9uY2VdIik7cmV0dXJuIG49PW51bGw/IiI6bi5ub25jZXx8bi5nZXRBdHRyaWJ1dGUoIm5vbmNlIil8fCIifTsKbWM9ZnVuY3Rpb24obil7dmFyIFc9RDQoKTtuPVc/Vy5jcmVhdGVTY3JpcHQobik6bjtyZXR1cm4gbmV3IEFGKG4pfTsKS2I9ZnVuY3Rpb24obil7aWYobiBpbnN0YW5jZW9mIEFGKXJldHVybiBuLk47dGhyb3cgRXJyb3IoIiIpO307Ck9NPWZ1bmN0aW9uKG4pe3ZhciBXPVNqKG4ub3duZXJEb2N1bWVudCk7VyYmbi5zZXRBdHRyaWJ1dGUoIm5vbmNlIixXKX07CmcuUE09ZnVuY3Rpb24obixXKXtuLnNyYz14MyhXKTtPTShuKX07CnF3dD1mdW5jdGlvbihuKXt2YXIgVz0idHJ1ZSIudG9TdHJpbmcoKSxEPVtYWnhgZGF0YS1gXTtpZihELmxlbmd0aD09PTApdGhyb3cgRXJyb3IoIiIpO2lmKEQubWFwKGI9PntpZihiIGluc3RhbmNlb2YgWjQpYj1iLk47ZWxzZSB0aHJvdyBFcnJvcigiIik7cmV0dXJuIGJ9KS5ldmVyeShiPT4iZGF0YS1sb2FkZWQiLmluZGV4T2YoYikhPT0wKSl0aHJvdyBFcnJvcignQXR0cmlidXRlICJkYXRhLWxvYWRlZCIgZG9lcyBub3QgbWF0Y2ggYW55IG9mIHRoZSBhbGxvd2VkIHByZWZpeGVzLicpOwpuLnNldEF0dHJpYnV0ZSgiZGF0YS1sb2FkZWQiLFcpfTsKZy5VTT1mdW5jdGlvbihuKXtyZXR1cm4gbltuLmxlbmd0aC0xXX07CmcueTI9ZnVuY3Rpb24obixXKXtBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKG4sVyx2b2lkIDApfTsKZy5FTT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChuLFcsRCl9OwpnLmlfPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5tYXAuY2FsbChuLFcsdm9pZCAwKX07CmcudV89ZnVuY3Rpb24obixXLEQpe3JldHVybiBBcnJheS5wcm90b3R5cGUucmVkdWNlLmNhbGwobixXLEQpfTsKZy5vTT1mdW5jdGlvbihuLFcpe3JldHVybiBBcnJheS5wcm90b3R5cGUuc29tZS5jYWxsKG4sVyx2b2lkIDApfTsKZy5kej1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5ldmVyeS5jYWxsKG4sVyxEKX07CmcubF89ZnVuY3Rpb24obixXKXtXPWcuejQobixXKTtyZXR1cm4gVzwwP251bGw6dHlwZW9mIG49PT0ic3RyaW5nIj9uLmNoYXJBdChXKTpuW1ddfTsKZy56ND1mdW5jdGlvbihuLFcsRCl7dmFyIGI9bi5sZW5ndGgsdj10eXBlb2Ygbj09PSJzdHJpbmciP24uc3BsaXQoIiIpOm47Zm9yKGxldCBrPTA7azxiO2srKylpZihrIGluIHYmJlcuY2FsbChELHZba10sayxuKSlyZXR1cm4gaztyZXR1cm4tMX07CmcuVDQ9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4ubGVuZ3RoLHY9dHlwZW9mIG49PT0ic3RyaW5nIj9uLnNwbGl0KCIiKTpuO2ZvcigtLWI7Yj49MDtiLS0paWYoYiBpbiB2JiZXLmNhbGwoRCx2W2JdLGIsbikpcmV0dXJuIGI7cmV0dXJuLTF9OwpnLmpqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwobixXLHZvaWQgMCk+PTB9OwpnLkNiPWZ1bmN0aW9uKG4pe2lmKCFBcnJheS5pc0FycmF5KG4pKWZvcihsZXQgVz1uLmxlbmd0aC0xO1c+PTA7Vy0tKWRlbGV0ZSBuW1ddO24ubGVuZ3RoPTB9OwpnLkZJPWZ1bmN0aW9uKG4sVyl7Vz1BcnJheS5wcm90b3R5cGUuaW5kZXhPZi5jYWxsKG4sVyx2b2lkIDApO3ZhciBEOyhEPVc+PTApJiZnLkJNKG4sVyk7cmV0dXJuIER9OwpnLkJNPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChuLFcsMSkubGVuZ3RoPT0xfTsKR2JpPWZ1bmN0aW9uKG4sVyl7Vz1nLno0KG4sVyk7Vz49MCYmZy5CTShuLFcpfTsKZy53ej1mdW5jdGlvbihuKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSxhcmd1bWVudHMpfTsKZy5STT1mdW5jdGlvbihuKXt2YXIgVz1uLmxlbmd0aDtpZihXPjApe2xldCBEPUFycmF5KFcpO2ZvcihsZXQgYj0wO2I8VztiKyspRFtiXT1uW2JdO3JldHVybiBEfXJldHVybltdfTsKZy5RMj1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRD0xO0Q8YXJndW1lbnRzLmxlbmd0aDtEKyspe2xldCBiPWFyZ3VtZW50c1tEXTtpZihnLlkyKGIpKXtsZXQgdj1uLmxlbmd0aHx8MCxrPWIubGVuZ3RofHwwO24ubGVuZ3RoPXYraztmb3IobGV0IGg9MDtoPGs7aCsrKW5bditoXT1iW2hdfWVsc2Ugbi5wdXNoKGIpfX07CmcuY009ZnVuY3Rpb24obixXLEQsYil7QXJyYXkucHJvdG90eXBlLnNwbGljZS5hcHBseShuLFYyKGFyZ3VtZW50cywxKSl9OwpWMj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg8PTI/QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwobixXKTpBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChuLFcsRCl9OwpnLlc0PWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gYU0obixEfHxucCwhMSxXKX07CkRlPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGFNKG4sVywhMCl9OwphTT1mdW5jdGlvbihuLFcsRCxiKXtmb3IodmFyIHY9MCxrPW4ubGVuZ3RoLGg7djxrOyl7bGV0IHg9disoay12Pj4+MSksTDtEP0w9Vy5jYWxsKHZvaWQgMCxuW3hdLHgsbik6TD1XKGIsblt4XSk7TD4wP3Y9eCsxOihrPXgsaD0hTCl9cmV0dXJuIGg/djotdi0xfTsKZy5iZj1mdW5jdGlvbihuLFcpe24uc29ydChXfHxucCl9Owp0VWg9ZnVuY3Rpb24obixXKXt2YXIgRD1ucDtnLmJmKG4sZnVuY3Rpb24oYix2KXtyZXR1cm4gRChXKGIpLFcodikpfSl9Owp2ND1mdW5jdGlvbihuLFcsRCl7aWYoIWcuWTIobil8fCFnLlkyKFcpfHxuLmxlbmd0aCE9Vy5sZW5ndGgpcmV0dXJuITE7dmFyIGI9bi5sZW5ndGg7RD1EfHwkaXg7Zm9yKGxldCB2PTA7djxiO3YrKylpZighRChuW3ZdLFdbdl0pKXJldHVybiExO3JldHVybiEwfTsKbnA9ZnVuY3Rpb24obixXKXtyZXR1cm4gbj5XPzE6bjxXPy0xOjB9OwokaXg9ZnVuY3Rpb24obixXKXtyZXR1cm4gbj09PVd9OwpnLmtsPWZ1bmN0aW9uKG4sVyxEKXtEPWcuVzQobixXLEQpO0Q8MCYmZy5jTShuLC0oRCsxKSwwLFcpfTsKaEE9ZnVuY3Rpb24obixXKXtuLl9fY2xvc3VyZV9fZXJyb3JfX2NvbnRleHRfXzk4NDM4Mnx8KG4uX19jbG9zdXJlX19lcnJvcl9fY29udGV4dF9fOTg0MzgyPXt9KTtuLl9fY2xvc3VyZV9fZXJyb3JfX2NvbnRleHRfXzk4NDM4Mi5zZXZlcml0eT1XfTsKcmliPWZ1bmN0aW9uKG4pe3ZhciBXPWcucnIoIndpbmRvdy5sb2NhdGlvbi5ocmVmIik7bj09bnVsbCYmKG49J1Vua25vd24gRXJyb3Igb2YgdHlwZSAibnVsbC91bmRlZmluZWQiJyk7aWYodHlwZW9mIG49PT0ic3RyaW5nIilyZXR1cm57bWVzc2FnZTpuLG5hbWU6IlVua25vd24gZXJyb3IiLGxpbmVOdW1iZXI6Ik5vdCBhdmFpbGFibGUiLGZpbGVOYW1lOlcsc3RhY2s6Ik5vdCBhdmFpbGFibGUifTt2YXIgRD0hMTt0cnl7dmFyIGI9bi5saW5lTnVtYmVyfHxuLmxpbmV8fCJOb3QgYXZhaWxhYmxlIn1jYXRjaChrKXtiPSJOb3QgYXZhaWxhYmxlIixEPSEwfXRyeXt2YXIgdj1uLmZpbGVOYW1lfHxuLmZpbGVuYW1lfHxuLnNvdXJjZVVSTHx8Zy5xaS4kZ29vZ0RlYnVnRm5hbWV8fFd9Y2F0Y2goayl7dj0iTm90IGF2YWlsYWJsZSIsRD0hMH1XPXhsKG4pO2lmKCEoIUQmJm4ubGluZU51bWJlciYmbi5maWxlTmFtZSYmbi5zdGFjayYmbi5tZXNzYWdlJiZuLm5hbWUpKXtEPW4ubWVzc2FnZTsKaWYoRD09bnVsbCl7aWYobi5jb25zdHJ1Y3RvciYmbi5jb25zdHJ1Y3RvciBpbnN0YW5jZW9mIEZ1bmN0aW9uKXtpZihuLmNvbnN0cnVjdG9yLm5hbWUpRD1uLmNvbnN0cnVjdG9yLm5hbWU7ZWxzZSBpZihEPW4uY29uc3RydWN0b3IsTHBbRF0pRD1McFtEXTtlbHNle0Q9U3RyaW5nKEQpO2lmKCFMcFtEXSl7bGV0IGs9L2Z1bmN0aW9uXHMrKFteXChdKykvbS5leGVjKEQpO0xwW0RdPWs/a1sxXToiW0Fub255bW91c10ifUQ9THBbRF19RD0nVW5rbm93biBFcnJvciBvZiB0eXBlICInK0QrJyInfWVsc2UgRD0iVW5rbm93biBFcnJvciBvZiB1bmtub3duIHR5cGUiO3R5cGVvZiBuLnRvU3RyaW5nPT09ImZ1bmN0aW9uIiYmT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyE9PW4udG9TdHJpbmcmJihEKz0iOiAiK24udG9TdHJpbmcoKSl9cmV0dXJue21lc3NhZ2U6RCxuYW1lOm4ubmFtZXx8IlVua25vd25FcnJvciIsbGluZU51bWJlcjpiLGZpbGVOYW1lOnYsc3RhY2s6V3x8Ik5vdCBhdmFpbGFibGUifX1yZXR1cm57bWVzc2FnZTpuLm1lc3NhZ2UsCm5hbWU6bi5uYW1lLGxpbmVOdW1iZXI6bi5saW5lTnVtYmVyLGZpbGVOYW1lOm4uZmlsZU5hbWUsc3RhY2s6V319Owp4bD1mdW5jdGlvbihuLFcpe1d8fChXPXt9KTtXW2UxKG4pXT0hMDt2YXIgRD1uLnN0YWNrfHwiIixiPW4uY2F1c2U7YiYmIVdbZTEoYildJiYoRCs9IlxuQ2F1c2VkIGJ5OiAiLGIuc3RhY2smJmIuc3RhY2suaW5kZXhPZihiLnRvU3RyaW5nKCkpPT0wfHwoRCs9dHlwZW9mIGI9PT0ic3RyaW5nIj9iOmIubWVzc2FnZSsiXG4iKSxEKz14bChiLFcpKTtuPW4uZXJyb3JzO2lmKEFycmF5LmlzQXJyYXkobikpe2I9MTtsZXQgdjtmb3Iodj0wO3Y8bi5sZW5ndGgmJiEoYj40KTt2KyspV1tlMShuW3ZdKV18fChEKz0iXG5Jbm5lciBlcnJvciAiK2IrKyArIjogIixuW3ZdLnN0YWNrJiZuW3ZdLnN0YWNrLmluZGV4T2Yoblt2XS50b1N0cmluZygpKT09MHx8KEQrPXR5cGVvZiBuW3ZdPT09InN0cmluZyI/blt2XTpuW3ZdLm1lc3NhZ2UrIlxuIiksRCs9eGwoblt2XSxXKSk7djxuLmxlbmd0aCYmKEQrPSJcbi4uLiAiKyhuLmxlbmd0aC12KSsiIG1vcmUgaW5uZXIgZXJyb3JzIil9cmV0dXJuIER9OwplMT1mdW5jdGlvbihuKXt2YXIgVz0iIjt0eXBlb2Ygbi50b1N0cmluZz09PSJmdW5jdGlvbiImJihXPSIiK24pO3JldHVybiBXK24uc3RhY2t9OwpnLmdUPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gbi5wYXJzZUZyb21TdHJpbmcoZy5mYihXKSxEKX07ClhNPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG5ldyBXb3JrZXIoeDMobiksVyl9OwpxaD1mdW5jdGlvbihuKXtyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhuKSl9OwpHNT1mdW5jdGlvbihuKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KG4ucmVwbGFjZSgvXCsvZywiICIpKX07CmcudEE9ZnVuY3Rpb24obil7c0NoLnRlc3QobikmJihuLmluZGV4T2YoIiYiKSE9LTEmJihuPW4ucmVwbGFjZShOcmgsIiZhbXA7IikpLG4uaW5kZXhPZigiPCIpIT0tMSYmKG49bi5yZXBsYWNlKHBadywiJmx0OyIpKSxuLmluZGV4T2YoIj4iKSE9LTEmJihuPW4ucmVwbGFjZShZd2ksIiZndDsiKSksbi5pbmRleE9mKCciJykhPS0xJiYobj1uLnJlcGxhY2UoSHRVLCImcXVvdDsiKSksbi5pbmRleE9mKCInIikhPS0xJiYobj1uLnJlcGxhY2UoZjFTLCImIzM5OyIpKSxuLmluZGV4T2YoIlx4MDAiKSE9LTEmJihuPW4ucmVwbGFjZShKaVosIiYjMDsiKSkpO3JldHVybiBufTsKZy5yVD1mdW5jdGlvbihuKXtyZXR1cm4gbj09bnVsbD8iIjpTdHJpbmcobil9OwpzVD1mdW5jdGlvbihuKXt2YXIgVz0wO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7KytEKVc9MzEqVytuLmNoYXJDb2RlQXQoRCk+Pj4wO3JldHVybiBXfTsKZy5OaD1mdW5jdGlvbihuKXt2YXIgVz1OdW1iZXIobik7cmV0dXJuIFc9PTAmJmcuRmgobik/TmFOOld9OwpwcD1mdW5jdGlvbihuKXtyZXR1cm4gU3RyaW5nKG4pLnJlcGxhY2UoL1wtKFthLXpdKS9nLGZ1bmN0aW9uKFcsRCl7cmV0dXJuIEQudG9VcHBlckNhc2UoKX0pfTsKSTFpPWZ1bmN0aW9uKG4pe3JldHVybiBuLnJlcGxhY2UoUmVnRXhwKCIoXnxbXFxzXSspKFthLXpdKSIsImciKSxmdW5jdGlvbihXLEQsYil7cmV0dXJuIEQrYi50b1VwcGVyQ2FzZSgpfSl9OwpTd2g9ZnVuY3Rpb24obil7dmFyIFc9MTtuPW4uc3BsaXQoIjoiKTtmb3IodmFyIEQ9W107Vz4wJiZuLmxlbmd0aDspRC5wdXNoKG4uc2hpZnQoKSksVy0tO24ubGVuZ3RoJiZELnB1c2gobi5qb2luKCI6IikpO3JldHVybiBEfTsKZy5IND1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXt2YXIgeD0iIjtuJiYoeCs9bisiOiIpO0QmJih4Kz0iLy8iLFcmJih4Kz1XKyJAIikseCs9RCxiJiYoeCs9IjoiK2IpKTt2JiYoeCs9dik7ayYmKHgrPSI/IitrKTtoJiYoeCs9IiMiK2gpO3JldHVybiB4fTsKZy5mcD1mdW5jdGlvbihuKXtyZXR1cm4gbi5tYXRjaChBaXIpfTsKSkE9ZnVuY3Rpb24obil7cmV0dXJuIG4/ZGVjb2RlVVJJKG4pOm59OwpnLklQPWZ1bmN0aW9uKG4pe3JldHVybiBKQShnLmZwKG4pWzNdfHxudWxsKX07ClMxPWZ1bmN0aW9uKG4pe3JldHVybiBKQShnLmZwKG4pWzVdfHxudWxsKX07CkFBPWZ1bmN0aW9uKG4pe249Zy5mcChuKTtyZXR1cm4gZy5INChuWzFdLG5bMl0sblszXSxuWzRdKX07Cm1XPWZ1bmN0aW9uKG4pe249Zy5mcChuKTtyZXR1cm4gZy5INChudWxsLG51bGwsbnVsbCxudWxsLG5bNV0sbls2XSxuWzddKX07CktwPWZ1bmN0aW9uKG4pe3ZhciBXPW4uaW5kZXhPZigiIyIpO3JldHVybiBXPDA/bjpuLnNsaWNlKDAsVyl9OwpnLk9UPWZ1bmN0aW9uKG4sVyl7aWYobil7bj1uLnNwbGl0KCImIik7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspe2xldCBiPW5bRF0uaW5kZXhPZigiPSIpLHYsaz1udWxsO2I+PTA/KHY9bltEXS5zdWJzdHJpbmcoMCxiKSxrPW5bRF0uc3Vic3RyaW5nKGIrMSkpOnY9bltEXTtXKHYsaz9HNShrKToiIil9fX07ClA0PWZ1bmN0aW9uKG4sVyl7aWYoIVcpcmV0dXJuIG47dmFyIEQ9bi5pbmRleE9mKCIjIik7RDwwJiYoRD1uLmxlbmd0aCk7dmFyIGI9bi5pbmRleE9mKCI/Iik7aWYoYjwwfHxiPkQpe2I9RDt2YXIgdj0iIn1lbHNlIHY9bi5zdWJzdHJpbmcoYisxLEQpO249W24uc2xpY2UoMCxiKSx2LG4uc2xpY2UoRCldO0Q9blsxXTtuWzFdPVc/RD9EKyImIitXOlc6RDtyZXR1cm4gblswXSsoblsxXT8iPyIrblsxXToiIikrblsyXX07ClplPWZ1bmN0aW9uKG4sVyxEKXtpZihBcnJheS5pc0FycmF5KFcpKWZvcihsZXQgYj0wO2I8Vy5sZW5ndGg7YisrKVplKG4sU3RyaW5nKFdbYl0pLEQpO2Vsc2UgVyE9bnVsbCYmRC5wdXNoKG4rKFc9PT0iIj8iIjoiPSIrcWgoVykpKX07CnlHPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO2ZvcihsZXQgRCBpbiBuKVplKEQsbltEXSxXKTtyZXR1cm4gVy5qb2luKCImIil9OwpnLkVUPWZ1bmN0aW9uKG4sVyl7Vz15RyhXKTtyZXR1cm4gUDQobixXKX07CmcudWY9ZnVuY3Rpb24obixXLEQpe0Q9RCE9bnVsbD8iPSIrcWgoRCk6IiI7cmV0dXJuIFA0KG4sVytEKX07CmcuZFQ9ZnVuY3Rpb24obixXLEQsYil7Zm9yKHZhciB2PUQubGVuZ3RoOyhXPW4uaW5kZXhPZihELFcpKT49MCYmVzxiOyl7dmFyIGs9bi5jaGFyQ29kZUF0KFctMSk7aWYoaz09Mzh8fGs9PTYzKWlmKGs9bi5jaGFyQ29kZUF0KFcrdiksIWt8fGs9PTYxfHxrPT0zOHx8az09MzUpcmV0dXJuIFc7Vys9disxfXJldHVybi0xfTsKZy5sZj1mdW5jdGlvbihuLFcpe3ZhciBEPW4uc2VhcmNoKGcuejUpLGI9Zy5kVChuLDAsVyxEKTtpZihiPDApcmV0dXJuIG51bGw7dmFyIHY9bi5pbmRleE9mKCImIixiKTtpZih2PDB8fHY+RCl2PUQ7Yis9Vy5sZW5ndGgrMTtyZXR1cm4gRzUobi5zbGljZShiLHYhPT0tMT92OjApKX07ClQ1PWZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBEPW4uc2VhcmNoKGcuejUpLGI9MCx2LGs9W107KHY9Zy5kVChuLGIsVyxEKSk+PTA7KWsucHVzaChuLnN1YnN0cmluZyhiLHYpKSxiPU1hdGgubWluKG4uaW5kZXhPZigiJiIsdikrMXx8RCxEKTtrLnB1c2gobi5zbGljZShiKSk7cmV0dXJuIGsuam9pbigiIikucmVwbGFjZShtaTEsIiQxIil9OwpLUzE9ZnVuY3Rpb24obixXLEQpe3JldHVybiBnLnVmKFQ1KG4sVyksVyxEKX07CmcuQ3A9ZnVuY3Rpb24obil7biYmdHlwZW9mIG4uZGlzcG9zZT09ImZ1bmN0aW9uIiYmbi5kaXNwb3NlKCl9OwpnLkI0PWZ1bmN0aW9uKG4pe2ZvcihsZXQgVz0wLEQ9YXJndW1lbnRzLmxlbmd0aDtXPEQ7KytXKXtsZXQgYj1hcmd1bWVudHNbV107Zy5ZMihiKT9nLkI0LmFwcGx5KG51bGwsYik6Zy5DcChiKX19OwpnLkZNPWZ1bmN0aW9uKCl7dGhpcy5IRD10aGlzLkhEO3RoaXMuQlY9dGhpcy5CVn07CmcudT1mdW5jdGlvbihuLFcpe24uYWRkT25EaXNwb3NlQ2FsbGJhY2soZy5QWihnLkNwLFcpKX07CmcuTWg9ZnVuY3Rpb24obj0iYmV2YXNyc2ciKXtyZXR1cm4gbmV3IFByb21pc2UoVz0+e2lmKHdpbmRvdz09PXdpbmRvdy50b3ApdmFyIEQ9d2luZG93O2Vsc2V7dHJ5e0Q9ISF3aW5kb3c/LnRvcD8ubG9jYXRpb24uaHJlZiYmITF9Y2F0Y2godil7RD0hMH1EPUQ/d2luZG93OndpbmRvdy50b3B9dmFyIGI9RFtuXTtiPy5iZXZhc3JzP1cobmV3IHdUKGIuYmV2YXNycykpOihifHwoYj17bnFmYmVsOltdfSxEW25dPWIpLGIubnFmYmVsLnB1c2godj0+e1cobmV3IHdUKHYpKX0pKX0pfTsKUlA9ZnVuY3Rpb24obil7dmFyIFc9e2M6bi53XyxlOm4ueEMsbWM6bi5HcixtZTpuLkVSfTtuLmhHJiYoVy5jbz17YzpuLmhHLmFtLGE6bi5oRy5BQixzOm4uaEcucjN9KTtyZXR1cm4gV307Ck90aT1mdW5jdGlvbihuKXtuLkohPT12b2lkIDAmJihuLlcuZm9yRWFjaChXPT57bi5KPy5yZW1vdmVFdmVudExpc3RlbmVyKFcsbi5YKX0pLG4uSj12b2lkIDApfTsKWnRaPWFzeW5jIGZ1bmN0aW9uKG4pe2lmKCFuLk8xLndwYyl0aHJvdyBuZXcgUUcoMzAsIk5XQSIpO2lmKG4uTilyZXR1cm4gbi5OO3ZhciBXPWF3YWl0IG4uTzEud3BjKCk7bi5OPW5ldyBQeFMoVyk7cmV0dXJuIG4uTn07Cm4wPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO1ZHKG4sYzQsNikuZm9yRWFjaChEPT57YVAoRCwyKTw9NTMmJlcucHVzaChhUChELDEpKX0pOwpyZXR1cm4gV307ClVpdz1mdW5jdGlvbihuKXt2YXIgVz1bXTtWRyhuLGM0LDYpLmZvckVhY2goRD0+e2FQKEQsMik+NTMmJlcucHVzaChhUChELDEpKX0pOwpyZXR1cm4gV307ClcyPWZ1bmN0aW9uKG4pe24udGhlbigoKT0+e30sKCk9Pnt9KX07CkRYPWZ1bmN0aW9uKG4pe3JldHVybntmaWVsZFR5cGU6MixmaWVsZE5hbWU6bn19OwpicD1mdW5jdGlvbihuKXtyZXR1cm57ZmllbGRUeXBlOjMsZmllbGROYW1lOm59fTsKa0s9ZnVuY3Rpb24obil7cmV0dXJuKHYyfHwodjI9bmV3IFRleHRFbmNvZGVyKSkuZW5jb2RlKG4pfTsKaDQ9ZnVuY3Rpb24obil7Zy5xaS5zZXRUaW1lb3V0KCgpPT57dGhyb3cgbjt9LDApfTsKeWl0PWZ1bmN0aW9uKG4pe3JldHVybiBBcnJheS5wcm90b3R5cGUubWFwLmNhbGwobixmdW5jdGlvbihXKXtXPVcudG9TdHJpbmcoMTYpO3JldHVybiBXLmxlbmd0aD4xP1c6IjAiK1d9KS5qb2luKCIiKX07CnhLPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7RCs9MilXLnB1c2gocGFyc2VJbnQobi5zdWJzdHJpbmcoRCxEKzIpLDE2KSk7cmV0dXJuIFd9OwpMMD1mdW5jdGlvbihuKXt2YXIgVz1bXSxEPTA7Zm9yKGxldCBiPTA7YjxuLmxlbmd0aDtiKyspe2xldCB2PW4uY2hhckNvZGVBdChiKTt2PDEyOD9XW0QrK109djoodjwyMDQ4P1dbRCsrXT12Pj42fDE5MjooKHYmNjQ1MTIpPT01NTI5NiYmYisxPG4ubGVuZ3RoJiYobi5jaGFyQ29kZUF0KGIrMSkmNjQ1MTIpPT01NjMyMD8odj02NTUzNisoKHYmMTAyMyk8PDEwKSsobi5jaGFyQ29kZUF0KCsrYikmMTAyMyksV1tEKytdPXY+PjE4fDI0MCxXW0QrK109dj4+MTImNjN8MTI4KTpXW0QrK109dj4+MTJ8MjI0LFdbRCsrXT12Pj42JjYzfDEyOCksV1tEKytdPXYmNjN8MTI4KX1yZXR1cm4gV307CmcuWFE9ZnVuY3Rpb24oKXt2YXIgbj1nLnFpLm5hdmlnYXRvcjtyZXR1cm4gbiYmKG49bi51c2VyQWdlbnQpP246IiJ9OwokSz1mdW5jdGlvbihuKXtpZighZy5xeCYmIWcuR2h8fCFnLnQ0KXJldHVybiExO2ZvcihsZXQgVz0wO1c8Zy50NC5icmFuZHMubGVuZ3RoO1crKyl7bGV0IHticmFuZDpEfT1nLnQ0LmJyYW5kc1tXXTtpZihEJiZELmluZGV4T2YobikhPS0xKXJldHVybiEwfXJldHVybiExfTsKZy5yVz1mdW5jdGlvbihuKXtyZXR1cm4gZy5YUSgpLmluZGV4T2YobikhPS0xfTsKc0E9ZnVuY3Rpb24oKXtyZXR1cm4gZy5xeHx8Zy5HaD8hIWcudDQmJmcudDQuYnJhbmRzLmxlbmd0aD4wOiExfTsKTng9ZnVuY3Rpb24oKXtyZXR1cm4gc0EoKT8hMTpnLnJXKCJPcGVyYSIpfTsKcDA9ZnVuY3Rpb24oKXtyZXR1cm4gZy5yVygiRmlyZWZveCIpfHxnLnJXKCJGeGlPUyIpfTsKZy5IMj1mdW5jdGlvbigpe3JldHVybiBnLnJXKCJTYWZhcmkiKSYmIShZSygpfHwoc0EoKT8wOmcuclcoIkNvYXN0IikpfHxOeCgpfHwoc0EoKT8wOmcuclcoIkVkZ2UiKSl8fChzQSgpPyRLKCJNaWNyb3NvZnQgRWRnZSIpOmcuclcoIkVkZy8iKSl8fChzQSgpPyRLKCJPcGVyYSIpOmcuclcoIk9QUiIpKXx8cDAoKXx8Zy5yVygiU2lsayIpfHxnLnJXKCJBbmRyb2lkIikpfTsKWUs9ZnVuY3Rpb24oKXtyZXR1cm4gc0EoKT8kSygiQ2hyb21pdW0iKTooZy5yVygiQ2hyb21lIil8fGcuclcoIkNyaU9TIikpJiYhKHNBKCk/MDpnLnJXKCJFZGdlIikpfHxnLnJXKCJTaWxrIil9OwpnLmYwPWZ1bmN0aW9uKCl7cmV0dXJuIGcucXh8fGcuR2g/ISFnLnQ0JiYhIWcudDQucGxhdGZvcm06ITF9Owp2YXIgRTJVPWZ1bmN0aW9uKG4sVyxELGIsdil7cmV0dXJuIEo0W0lbMTBdXSh0aGlzLDI1LDE4NjYsbixXLEQsYix2KX07CmcuSTI9ZnVuY3Rpb24oKXtyZXR1cm4gZy5mMCgpP2cudDQucGxhdGZvcm09PT0iQW5kcm9pZCI6Zy5yVygiQW5kcm9pZCIpfTsKU3U9ZnVuY3Rpb24oKXtyZXR1cm4gZy5yVygiaVBob25lIikmJiFnLnJXKCJpUG9kIikmJiFnLnJXKCJpUGFkIil9OwpnLkE0PWZ1bmN0aW9uKCl7cmV0dXJuIFN1KCl8fGcuclcoImlQYWQiKXx8Zy5yVygiaVBvZCIpfTsKZy5teD1mdW5jdGlvbigpe3JldHVybiBnLmYwKCk/Zy50NC5wbGF0Zm9ybT09PSJtYWNPUyI6Zy5yVygiTWFjaW50b3NoIil9OwpnLkswPWZ1bmN0aW9uKCl7cmV0dXJuIGcuZjAoKT9nLnQ0LnBsYXRmb3JtPT09IldpbmRvd3MiOmcuclcoIldpbmRvd3MiKX07CmcuT0E9ZnVuY3Rpb24obil7Zy5PQVsiICJdKG4pO3JldHVybiBufTsKdWhoPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9aXR4O3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoRCxuKT9EW25dOkRbbl09VyhuKX07CmcuWlg9ZnVuY3Rpb24obil7cmV0dXJuIHVoaChuLGZ1bmN0aW9uKCl7cmV0dXJuIGcuY1ooUDIsbik+PTB9KX07CmcuRUE9ZnVuY3Rpb24obixXKXtXPT09dm9pZCAwJiYoVz0wKTtVQSgpO1c9eWxbV107Zm9yKHZhciBEPUFycmF5KE1hdGguZmxvb3Iobi5sZW5ndGgvMykpLGI9V1s2NF18fCIiLHY9MCxrPTA7djxuLmxlbmd0aC0yO3YrPTMpe3ZhciBoPW5bdl0seD1uW3YrMV0sTD1uW3YrMl0sZT1XW2g+PjJdO2g9V1soaCYzKTw8NHx4Pj40XTt4PVdbKHgmMTUpPDwyfEw+PjZdO0w9V1tMJjYzXTtEW2srK109IiIrZStoK3grTH1lPTA7TD1iO3N3aXRjaChuLmxlbmd0aC12KXtjYXNlIDI6ZT1uW3YrMV0sTD1XWyhlJjE1KTw8Ml18fGI7Y2FzZSAxOm49blt2XSxEW2tdPSIiK1dbbj4+Ml0rV1sobiYzKTw8NHxlPj40XStMK2J9cmV0dXJuIEQuam9pbigiIil9Owp2YXIgbzJqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGlwW0lbMTBdXSh0aGlzLDEsMTcwOCxuLFcpfTsKZy51cD1mdW5jdGlvbihuLFcsRCl7aWYoVyl7bGV0IGI9W10sdj0wO2ZvcihsZXQgaz0wO2s8bi5sZW5ndGg7aysrKXtsZXQgaD1uLmNoYXJDb2RlQXQoayk7aWYoaD4yNTUpe2xldCB4PUVycm9yKCJnby91bmljb2RlLXRvLWJ5dGUtZXJyb3IiKTtpZihEKXRocm93IHg7Ylt2KytdPWgmMjU1O2g+Pj04fWJbdisrXT1ofW49Zy5FQShiLFcpfWVsc2Ugbj1nLnFpLmJ0b2Eobik7cmV0dXJuIG59Owp6aD1mdW5jdGlvbihuKXt2YXIgVz1bXTtvMihuLGZ1bmN0aW9uKEQpe1cucHVzaChEKX0pOwpyZXR1cm4gV307CmxwPWZ1bmN0aW9uKG4pe3ZhciBXPW4ubGVuZ3RoLEQ9VyozLzQ7RCUzP0Q9TWF0aC5mbG9vcihEKToiPS4iLmluZGV4T2YobltXLTFdKSE9LTEmJihEPSI9LiIuaW5kZXhPZihuW1ctMl0pIT0tMT9ELTI6RC0xKTt2YXIgYj1uZXcgVWludDhBcnJheShEKSx2PTA7bzIobixmdW5jdGlvbihrKXtiW3YrK109a30pOwpyZXR1cm4gdiE9PUQ/Yi5zdWJhcnJheSgwLHYpOmJ9OwpvMj1mdW5jdGlvbihuLFcpe2Z1bmN0aW9uIEQodil7Zm9yKDtiPG4ubGVuZ3RoOyl7bGV0IGs9bi5jaGFyQXQoYisrKSxoPVRoW2tdO2lmKGghPW51bGwpcmV0dXJuIGg7aWYoIWcuRmgoaykpdGhyb3cgRXJyb3IoIlVua25vd24gYmFzZTY0IGVuY29kaW5nIGF0IGNoYXI6ICIrayk7fXJldHVybiB2fQpVQSgpO2Zvcih2YXIgYj0wOzspe2xldCB2PUQoLTEpLGs9RCgwKSxoPUQoNjQpLHg9RCg2NCk7aWYoeD09PTY0JiZ2PT09LTEpYnJlYWs7Vyh2PDwyfGs+PjQpO2ghPTY0JiYoVyhrPDw0JjI0MHxoPj4yKSx4IT02NCYmVyhoPDw2JjE5Mnx4KSl9fTsKVUE9ZnVuY3Rpb24oKXtpZighVGgpe1RoPXt9O3ZhciBuPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSIuc3BsaXQoIiIpLFc9WyIrLz0iLCIrLyIsIi1fPSIsIi1fLiIsIi1fIl07Zm9yKGxldCBEPTA7RDw1O0QrKyl7bGV0IGI9bi5jb25jYXQoV1tEXS5zcGxpdCgiIikpO3lsW0RdPWI7Zm9yKGxldCB2PTA7djxiLmxlbmd0aDt2Kyspe2xldCBrPWJbdl07VGhba109PT12b2lkIDAmJihUaFtrXT12KX19fX07CnpNMj1mdW5jdGlvbihuKXtyZXR1cm4gZGlVW25dfHwiIn07CkMwPWZ1bmN0aW9uKG4pe249anUudGVzdChuKT9uLnJlcGxhY2UoanUsek0yKTpuO249YXRvYihuKTt2YXIgVz1uZXcgVWludDhBcnJheShuLmxlbmd0aCk7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspV1tEXT1uLmNoYXJDb2RlQXQoRCk7cmV0dXJuIFd9OwpNeD1mdW5jdGlvbigpe3JldHVybiBCMnx8KEIyPW5ldyBGUShudWxsLHdXKSl9OwpRbD1mdW5jdGlvbihuKXtSMih3Vyk7dmFyIFc9bi5OO1c9Vz09bnVsbHx8VyE9bnVsbCYmVyBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk/Vzp0eXBlb2YgVz09PSJzdHJpbmciP0MwKFcpOm51bGw7cmV0dXJuIFc9PW51bGw/VzpuLk49V307ClZsPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgVWludDhBcnJheShRbChuKXx8MCl9OwpSMj1mdW5jdGlvbihuKXtpZihuIT09d1cpdGhyb3cgRXJyb3IoImlsbGVnYWwgZXh0ZXJuYWwgY2FsbGVyIik7fTsKYzI9ZnVuY3Rpb24obil7bj1FcnJvcihuKTtoQShuLCJ3YXJuaW5nIik7cmV0dXJuIG59OwpuNT1mdW5jdGlvbihuLFcpe2lmKG4hPW51bGwpe3ZhciBEPWEyPz8oYTI9e30pO3ZhciBiPURbbl18fDA7Yj49V3x8KERbbl09YisxLG49RXJyb3IoKSxoQShuLCJpbmNpZGVudCIpLGg0KG4pKX19OwpXOT1mdW5jdGlvbihuLFc9ITEpe3JldHVybiBXJiZTeW1ib2wuZm9yJiZuP1N5bWJvbC5mb3Iobik6biE9bnVsbD9TeW1ib2wobik6U3ltYm9sKCl9Owp2OT1mdW5jdGlvbihuLFcpe3JldHVybiBXPT09dm9pZCAwP24uTiE9PURCJiYhISgyJihuLmw5W2I0XXwwKSk6ISEoMiZXKSYmbi5OIT09REJ9OwprVT1mdW5jdGlvbihuLFcpe2lmKG4hPW51bGwpaWYodHlwZW9mIG49PT0ic3RyaW5nIiluPW4/bmV3IEZRKG4sd1cpOk14KCk7ZWxzZSBpZihuLmNvbnN0cnVjdG9yIT09RlEpaWYobiE9bnVsbCYmbiBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpbj1uLmxlbmd0aD9uZXcgRlEobmV3IFVpbnQ4QXJyYXkobiksd1cpOk14KCk7ZWxzZXtpZighVyl0aHJvdyBFcnJvcigpO249dm9pZCAwfXJldHVybiBufTsKaF89ZnVuY3Rpb24obixXLEQpe3ZhciBiPVcmMTI4PzA6LTEsdj1uLmxlbmd0aCxrO2lmKGs9ISF2KWs9blt2LTFdLGs9ayE9bnVsbCYmdHlwZW9mIGs9PT0ib2JqZWN0IiYmay5jb25zdHJ1Y3Rvcj09PU9iamVjdDt2YXIgaD12KyhrPy0xOjApO2ZvcihXPVcmMTI4PzE6MDtXPGg7VysrKUQoVy1iLG5bV10pO2lmKGspe249blt2LTFdO2ZvcihsZXQgeCBpbiBuKSFpc05hTih4KSYmRCgreCxuW3hdKX19OwpMNT1mdW5jdGlvbihuKXtyZXR1cm4gbiYxMjg/eFU6dm9pZCAwfTsKWEQ9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVdebjtpZihuLTY+PjM9PTIpeyhEW2JeNTE4XT49LShiXjU1MSl8fCgoMCxEW2JeNTE1XSkoRFtiXjUyMV0sRFtiXjYwOV0pLDApKSYmKDAsRFtiXjU2M10pKERbYl42MDldKTsoMCxEWzZdKSgpOygoMCxEW2JeNTMzXSkoRFtiXjU3NF0sRFtiXjU3Ml0pLERbYl41MzNdKShEW2JeNTM4XSxEW2JeNTcyXSk7dmFyIHY9W119aWYoKG4mMTIwKT09bil0aHJvdyBEO2lmKG4tNzw8MjxuJiYobi00fDMxKT49bil7Zm9yKHZhciBrPWJeMzE1NCxoPVtdOysray1oW0lbNV1dLShiXjMxMjIpOylzd2l0Y2goayl7Y2FzZSBiXjMxMzI6az1iXjMxNDk7ZGVmYXVsdDpoW0lbYl4zMDc2XV0oU3RyaW5nW0lbYl4zMTA0XV0oaykpO2Nhc2UgYl4zMTQ4OmNhc2UgYl4zMTQ5OmNhc2UgYl4zMTg2OmJyZWFrO2Nhc2UgYl4zMTc3OmstPWJeMzE2NjtjYXNlIGJeMzE1MDpjYXNlIGJeMzE1MTpjb250aW51ZTtjYXNlIGJeMzExMjprPWJeMzEzNDtjYXNlIGJeMzE0NTp9dj0KaH0obnw1Nik9PW4mJihlWChiXjQ1MDksYl4zNTE4LEQpLChrPURbSVsxXV1bSVtiXjQ0OTRdXXx8bnVsbCkmJihrPWdaKDIsYl4yMjE3LGssRCkpLHY9W10pO3JldHVybiB2fTsKcTM9ZnVuY3Rpb24obil7bi5URj0hMDtyZXR1cm4gbn07CmcuJFU9ZnVuY3Rpb24obil7aWYoKDAsZy5HOSkobikpe2lmKCEvXlxzKig/Oi0/WzEtOV1cZCp8MCk/XHMqJC8udGVzdChuKSl0aHJvdyBFcnJvcihTdHJpbmcobikpO31lbHNlIGlmKCgwLGcudF8pKG4pJiYhTnVtYmVyLmlzU2FmZUludGVnZXIobikpdGhyb3cgRXJyb3IoU3RyaW5nKG4pKTtyZXR1cm4gQmlnSW50KG4pfTsKTjM9ZnVuY3Rpb24obil7dmFyIFc9bj4+PjA7clo9VztzXz0obi1XKS80Mjk0OTY3Mjk2Pj4+MH07CnA1PWZ1bmN0aW9uKG4pe2lmKG48MCl7TjMoMC1uKTtuPXJaO3ZhciBXPXNfO1c9flc7bj9uPX5uKzE6Vys9MTtsZXQgW0QsYl09W24sV107clo9RD4+PjA7c189Yj4+PjB9ZWxzZSBOMyhuKX07Ckg5PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vyo0Mjk0OTY3Mjk2KyhuPj4+MCk7cmV0dXJuIE51bWJlci5pc1NhZmVJbnRlZ2VyKEQpP0Q6WVUobixXKX07CmY1PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGcuJFUoQmlnSW50LmFzVWludE4oNjQsKEJpZ0ludChXPj4+MCk8PEJpZ0ludCgzMikpK0JpZ0ludChuPj4+MCkpKX07CmcuSl89ZnVuY3Rpb24obixXKXtyZXR1cm4gZy4kVShCaWdJbnQuYXNJbnROKDY0LChCaWdJbnQuYXNVaW50TigzMixCaWdJbnQoVykpPDxCaWdJbnQoMzIpKStCaWdJbnQuYXNVaW50TigzMixCaWdJbnQobikpKSl9OwpZVT1mdW5jdGlvbihuLFcpe1c+Pj49MDtuPj4+PTA7dmFyIEQ7Vzw9MjA5NzE1MT9EPSIiKyg0Mjk0OTY3Mjk2Klcrbik6RD0iIisoQmlnSW50KFcpPDxCaWdJbnQoMzIpfEJpZ0ludChuKSk7cmV0dXJuIER9OwpJMD1mdW5jdGlvbigpe3ZhciBuPXJaLFc9c18sRDtXJjIxNDc0ODM2NDg/RD0iIisoQmlnSW50KFd8MCk8PEJpZ0ludCgzMil8QmlnSW50KG4+Pj4wKSk6RD1ZVShuLFcpO3JldHVybiBEfTsKU1g9ZnVuY3Rpb24obil7bi5sZW5ndGg8MTY/cDUoTnVtYmVyKG4pKToobj1CaWdJbnQobiksclo9TnVtYmVyKG4mQmlnSW50KDQyOTQ5NjcyOTUpKT4+PjAsc189TnVtYmVyKG4+PkJpZ0ludCgzMikmQmlnSW50KDQyOTQ5NjcyOTUpKSl9OwpnLkFfPWZ1bmN0aW9uKG4pe2lmKG4hPW51bGwmJnR5cGVvZiBuIT09Im51bWJlciIpdGhyb3cgRXJyb3IoYFZhbHVlIG9mIGZsb2F0L2RvdWJsZSBmaWVsZCBtdXN0IGJlIGEgbnVtYmVyLCBmb3VuZCAke3R5cGVvZiBufTogJHtufWApO3JldHVybiBufTsKbTA9ZnVuY3Rpb24obil7aWYobj09bnVsbHx8dHlwZW9mIG49PT0ibnVtYmVyIilyZXR1cm4gbjtpZihuPT09Ik5hTiJ8fG49PT0iSW5maW5pdHkifHxuPT09Ii1JbmZpbml0eSIpcmV0dXJuIE51bWJlcihuKX07Cks1PWZ1bmN0aW9uKG4pe3JldHVybiBuLmRpc3BsYXlOYW1lfHxuLm5hbWV8fCJ1bmtub3duIHR5cGUgbmFtZSJ9OwpPXz1mdW5jdGlvbihuKXtpZihuIT1udWxsJiZ0eXBlb2YgbiE9PSJib29sZWFuIil0aHJvdyBFcnJvcihgRXhwZWN0ZWQgYm9vbGVhbiBidXQgZ290ICR7cHQobil9OiAke259YCk7cmV0dXJuIG59OwpaQj1mdW5jdGlvbihuKXtzd2l0Y2godHlwZW9mIG4pe2Nhc2UgImJpZ2ludCI6cmV0dXJuITA7Y2FzZSAibnVtYmVyIjpyZXR1cm4gUDkobik7Y2FzZSAic3RyaW5nIjpyZXR1cm4gbDEyLnRlc3Qobik7ZGVmYXVsdDpyZXR1cm4hMX19OwpVXz1mdW5jdGlvbihuKXtpZih0eXBlb2YgbiE9PSJudW1iZXIiKXRocm93IGMyKCJpbnQzMiIpO2lmKCFQOShuKSl0aHJvdyBjMigiaW50MzIiKTtyZXR1cm4gbnwwfTsKZy55UD1mdW5jdGlvbihuKXtyZXR1cm4gbj09bnVsbD9uOlVfKG4pfTsKRV89ZnVuY3Rpb24obil7aWYobj09bnVsbClyZXR1cm4gbjtpZih0eXBlb2Ygbj09PSJzdHJpbmciJiZuKW49K247ZWxzZSBpZih0eXBlb2YgbiE9PSJudW1iZXIiKXJldHVybjtyZXR1cm4gUDkobik/bnwwOnZvaWQgMH07CnU0PWZ1bmN0aW9uKG4pe2lmKG49PW51bGwpcmV0dXJuIG47aWYodHlwZW9mIG49PT0ic3RyaW5nIiYmbiluPStuO2Vsc2UgaWYodHlwZW9mIG4hPT0ibnVtYmVyIilyZXR1cm47cmV0dXJuIFA5KG4pP24+Pj4wOnZvaWQgMH07CmcubDQ9ZnVuY3Rpb24obil7aWYobiE9bnVsbClhOntpZighWkIobikpdGhyb3cgYzIoImludDY0Iik7c3dpdGNoKHR5cGVvZiBuKXtjYXNlICJzdHJpbmciOm49bzAobik7YnJlYWsgYTtjYXNlICJiaWdpbnQiOm49Zy4kVShkWig2NCxuKSk7YnJlYWsgYTtkZWZhdWx0Om49ejkobil9fXJldHVybiBufTsKQzU9ZnVuY3Rpb24obil7WkIobik7bj1UOShuKTtpZighalgobikpe3A1KG4pO3ZhciBXPXJaLEQ9c187aWYobj1EJjIxNDc0ODM2NDgpVz1+VysxPj4+MCxEPX5EPj4+MCxXPT0wJiYoRD1EKzE+Pj4wKTtXPUg5KFcsRCk7bj10eXBlb2YgVz09PSJudW1iZXIiP24/LVc6VzpuPyItIitXOld9cmV0dXJuIG59OwpCOT1mdW5jdGlvbihuKXtaQihuKTt2YXIgVz1UOShOdW1iZXIobikpO2lmKGpYKFcpKXJldHVybiBTdHJpbmcoVyk7Vz1uLmluZGV4T2YoIi4iKTtXIT09LTEmJihuPW4uc3Vic3RyaW5nKDAsVykpO1c9bi5sZW5ndGg7KG5bMF09PT0iLSI/VzwyMHx8Vz09PTIwJiZuPD0iLTkyMjMzNzIwMzY4NTQ3NzU4MDgiOlc8MTl8fFc9PT0xOSYmbjw9IjkyMjMzNzIwMzY4NTQ3NzU4MDciKXx8KFNYKG4pLG49STAoKSk7cmV0dXJuIG59OwpvMD1mdW5jdGlvbihuKXt2YXIgVz1UOShOdW1iZXIobikpO2lmKGpYKFcpKXJldHVybiBnLiRVKFcpO1c9bi5pbmRleE9mKCIuIik7VyE9PS0xJiYobj1uLnN1YnN0cmluZygwLFcpKTtyZXR1cm4gZy4kVShkWig2NCxCaWdJbnQobikpKX07Cno5PWZ1bmN0aW9uKG4pe2pYKG4pP249Zy4kVShDNShuKSk6KFpCKG4pLG49VDkobiksalgobik/bj1TdHJpbmcobik6KHA1KG4pLG49STAoKSksbj1nLiRVKG4pKTtyZXR1cm4gbn07CkZEPWZ1bmN0aW9uKG4pe3ZhciBXPXR5cGVvZiBuO2lmKG49PW51bGwpcmV0dXJuIG47aWYoVz09PSJiaWdpbnQiKXJldHVybiBnLiRVKGRaKDY0LG4pKTtpZihaQihuKSlyZXR1cm4gVz09PSJzdHJpbmciP28wKG4pOno5KG4pfTsKakNoPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PVtdO2ZvcihsZXQgeCBvZiBEKXtpZigheC51cmwpY29udGludWU7RD1uZXcgZy53Wih4LnVybCwhMCk7aWYoeC5zKXt2YXIgaz1ELGg9eC5zcDtsZXQgTD1lWCg4Myw2NTU4LE0zKDE3LDQyNjMseC5zKSk7a1tJWzM0XV0oaCxSMCgyOSw4NzMyLEwpKX1mb3IobGV0IEwgb2YgT2JqZWN0LmtleXMoYikpRC5zZXQoTCxiW0xdKTtrPVFQKHgudHlwZSx4LnF1YWxpdHkseC5pdGFnLHgud2lkdGgseC5oZWlnaHQpO3YucHVzaChuZXcgVHJ3KGssRCkpfXJldHVybiBWUChuLlcsdixjOShuLFcpLCExKX07CkN4TT1mdW5jdGlvbihuKXtpZihuPT1udWxsKXJldHVybiBuO3ZhciBXPXR5cGVvZiBuO2lmKFc9PT0iYmlnaW50IilyZXR1cm4gU3RyaW5nKGRaKDY0LG4pKTtpZihaQihuKSl7aWYoVz09PSJzdHJpbmciKXJldHVybiBCOShuKTtpZihXPT09Im51bWJlciIpcmV0dXJuIEM1KG4pfX07CmEwPWZ1bmN0aW9uKG4pe2lmKG49PW51bGwpcmV0dXJuIG47dmFyIFc9dHlwZW9mIG47aWYoVz09PSJiaWdpbnQiKXJldHVybiBTdHJpbmcoQnJoKDY0LG4pKTtpZihaQihuKSl7aWYoVz09PSJzdHJpbmciKXJldHVybiBaQihuKSxXPVQ5KE51bWJlcihuKSksalgoVykmJlc+PTA/bj1TdHJpbmcoVyk6KFc9bi5pbmRleE9mKCIuIiksVyE9PS0xJiYobj1uLnN1YnN0cmluZygwLFcpKSxuWzBdPT09Ii0iP1c9ITE6KFc9bi5sZW5ndGgsVz1XPDIwPyEwOlc9PT0yMCYmbjw9IjE4NDQ2NzQ0MDczNzA5NTUxNjE1IiksV3x8KFNYKG4pLG49WVUoclosc18pKSksbjtpZihXPT09Im51bWJlciIpcmV0dXJuIFpCKG4pLG49VDkobiksbj49MCYmalgobil8fChwNShuKSxuPUg5KHJaLHNfKSksbn19OwpuRz1mdW5jdGlvbihuKXtpZihuPT1udWxsfHx0eXBlb2Ygbj09InN0cmluZyJ8fG4gaW5zdGFuY2VvZiBGUSlyZXR1cm4gbn07CkZTMj1mdW5jdGlvbihuKXtpZih0eXBlb2YgbiE9PSJzdHJpbmciKXRocm93IEVycm9yKCk7cmV0dXJuIG59OwpXSD1mdW5jdGlvbihuKXtpZihuIT1udWxsJiZ0eXBlb2YgbiE9PSJzdHJpbmciKXRocm93IEVycm9yKCk7cmV0dXJuIG59OwpnLkRSPWZ1bmN0aW9uKG4pe3JldHVybiBuPT1udWxsfHx0eXBlb2Ygbj09PSJzdHJpbmciP246dm9pZCAwfTsKYlc9ZnVuY3Rpb24obixXKXtpZighKG4gaW5zdGFuY2VvZiBXKSl0aHJvdyBFcnJvcihgRXhwZWN0ZWQgaW5zdGFuY2VvZiAke0s1KFcpfSBidXQgZ290ICR7biYmSzUobi5jb25zdHJ1Y3Rvcil9YCk7cmV0dXJuIG59Owpodj1mdW5jdGlvbihuLFcsRCl7aWYobiE9bnVsbCYmblt2SF09PT1rdilyZXR1cm4gbjtpZihBcnJheS5pc0FycmF5KG4pKXt2YXIgYj1uW2I0XXwwO0Q9YnxEJjMyfEQmMjtEIT09YiYmKG5bYjRdPUQpO3JldHVybiBuZXcgVyhuKX19Owp4dj1mdW5jdGlvbihuKXtyZXR1cm4gbn07CmVXPWZ1bmN0aW9uKG4pe3ZhciBXPUV3KExHKTtyZXR1cm4gVz9uW1ddOnZvaWQgMH07CmdnPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIGluIG4pIWlzTmFOKEQpJiZXKG4sK0QsbltEXSl9Owp3WkM9ZnVuY3Rpb24obil7dmFyIFc9bmV3IFhGO2dnKG4sKEQsYix2KT0+e1dbYl09Wy4uLnZdfSk7Clcuajc9bi5qNztyZXR1cm4gV307Ckd6PWZ1bmN0aW9uKG4sVyl7aWYoRXcocUUpJiZFdyhMRykmJnZvaWQgMD09PXFFKXtuPW4ubDk7dmFyIEQ9bltMR107aWYoRCYmKEQ9RC5qNykpdHJ5e0QobixXLE1VaSl9Y2F0Y2goYil7aDQoYil9fX07CnR2PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9RXcoTEcpO0QmJm5bRF0/LltXXSE9bnVsbCYmbjUoUk1iLDMpfTsKVlVTPWZ1bmN0aW9uKG4sVyl7VzwxMDB8fG41KFFDaSwxKX07CnJnPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PWIhPT12b2lkIDA7Yj0hIWI7dmFyIGs9RXcoTEcpLGg7IXYmJmsmJihoPW5ba10pJiZnZyhoLFZVUyk7az1bXTt2YXIgeD1uLmxlbmd0aDtoPTQyOTQ5NjcyOTU7dmFyIEw9ITEsZT0hIShXJjY0KSxHPWU/VyYxMjg/MDotMTp2b2lkIDA7aWYoIShXJjEpKXt2YXIgcj14JiZuW3gtMV07ciE9bnVsbCYmdHlwZW9mIHI9PT0ib2JqZWN0IiYmci5jb25zdHJ1Y3Rvcj09PU9iamVjdD8oeC0tLGg9eCk6cj12b2lkIDA7IWV8fFcmMTI4fHx2fHwoTD0hMCxoPSgkdj8/eHYpKGgtRyxHLG4scix2b2lkIDApK0cpfVc9dm9pZCAwO2Zvcih2YXIgTj0wO048eDtOKyspe2xldCBIPW5bTl07aWYoSCE9bnVsbCYmKEg9RChILGIpKSE9bnVsbClpZihlJiZOPj1oKXtsZXQgQT1OLUc7KFc/PyhXPXt9KSlbQV09SH1lbHNlIGtbTl09SH1pZihyKWZvcihsZXQgSCBpbiByKXt4PXJbSF07aWYoeD09bnVsbHx8KHg9RCh4LGIpKT09bnVsbCljb250aW51ZTtOPQorSDtsZXQgQTtlJiYhTnVtYmVyLmlzTmFOKE4pJiYoQT1OK0cpPGg/a1tBXT14OihXPz8oVz17fSkpW0hdPXh9VyYmKEw/ay5wdXNoKFcpOmtbaF09Vyk7diYmRXcoTEcpJiYobj1lVyhuKSkmJm4gaW5zdGFuY2VvZiBYRiYmKGtbTEddPXdaQyhuKSk7cmV0dXJuIGt9OwpORT1mdW5jdGlvbihuKXtzd2l0Y2godHlwZW9mIG4pe2Nhc2UgIm51bWJlciI6cmV0dXJuIE51bWJlci5pc0Zpbml0ZShuKT9uOiIiK247Y2FzZSAiYmlnaW50IjpyZXR1cm4gc0sobik/TnVtYmVyKG4pOiIiK247Y2FzZSAiYm9vbGVhbiI6cmV0dXJuIG4/MTowO2Nhc2UgIm9iamVjdCI6aWYoQXJyYXkuaXNBcnJheShuKSl7dmFyIFc9bltiNF18MDtyZXR1cm4gbi5sZW5ndGg9PT0wJiZXJjE/dm9pZCAwOnJnKG4sVyxORSl9aWYobiE9bnVsbCYmblt2SF09PT1rdilyZXR1cm4gcEcobik7aWYobiBpbnN0YW5jZW9mIEZRKXtXPW4uTjtpZihXPT1udWxsKW49IiI7ZWxzZSBpZih0eXBlb2YgVz09PSJzdHJpbmciKW49VztlbHNle2xldCBEPSIiLGI9MCx2PVcubGVuZ3RoLTEwMjQwO2Zvcig7Yjx2OylEKz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsVy5zdWJhcnJheShiLGIrPTEwMjQwKSk7RCs9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLGI/Vy5zdWJhcnJheShiKToKVyk7Vz1idG9hKEQpO249bi5OPVd9cmV0dXJuIG59cmV0dXJufXJldHVybiBufTsKWXY9ZnVuY3Rpb24obixXKXtpZihXKXskdj1XPT1udWxsfHxXPT09eHZ8fFdbY2lVXSE9PWExVT94djpXO3RyeXtyZXR1cm4gcEcobil9ZmluYWxseXskdj12b2lkIDB9fXJldHVybiBwRyhuKX07CnBHPWZ1bmN0aW9uKG4pe249bi5sOTtyZXR1cm4gcmcobixuW2I0XXwwLE5FKX07Cm4zMj1mdW5jdGlvbihuKXtzd2l0Y2godHlwZW9mIG4pe2Nhc2UgImJvb2xlYW4iOnJldHVybiBISHx8KEhIPVswLHZvaWQgMCwhMF0pO2Nhc2UgIm51bWJlciI6cmV0dXJuIG4+MD92b2lkIDA6bj09PTA/Zkd8fChmRz1bMCx2b2lkIDBdKTpbLW4sdm9pZCAwXTtjYXNlICJzdHJpbmciOnJldHVyblswLG5dO2Nhc2UgIm9iamVjdCI6cmV0dXJuIG59fTsKU1c9ZnVuY3Rpb24obixXKXtyZXR1cm4gSnYobixXWzBdLFdbMV0pfTsKSnY9ZnVuY3Rpb24obixXLEQsYj0wKXtpZihuPT1udWxsKXt2YXIgdj0zMjtEPyhuPVtEXSx2fD0xMjgpOm49W107VyYmKHY9diYtMTY3NjA4MzN8KFcmMTAyMyk8PDE0KX1lbHNle2lmKCFBcnJheS5pc0FycmF5KG4pKXRocm93IEVycm9yKCJuYXJyIik7dj1uW2I0XXwwO2lmKEF2JiYxJnYpdGhyb3cgRXJyb3IoInJmYXJyIik7MjA0OCZ2JiYhKDImdikmJldjcigpO2lmKHYmMjU2KXRocm93IEVycm9yKCJmYXJyIik7aWYodiY2NClyZXR1cm4odnxiKSE9PXYmJihuW2I0XT12fGIpLG47aWYoRCYmKHZ8PTEyOCxEIT09blswXSkpdGhyb3cgRXJyb3IoIm1pZCIpO2E6e0Q9bjt2fD02NDt2YXIgaz1ELmxlbmd0aDtpZihrKXt2YXIgaD1rLTE7bGV0IEw9RFtoXTtpZihMIT1udWxsJiZ0eXBlb2YgTD09PSJvYmplY3QiJiZMLmNvbnN0cnVjdG9yPT09T2JqZWN0KXtXPXYmMTI4PzA6LTE7aC09VztpZihoPj0xMDI0KXRocm93IEVycm9yKCJwdnRsbXQiKTtmb3IodmFyIHggaW4gTClpZihrPQoreCxrPGgpRFtrK1ddPUxbeF0sZGVsZXRlIExbeF07ZWxzZSBicmVhazt2PXYmLTE2NzYwODMzfChoJjEwMjMpPDwxNDticmVhayBhfX1pZihXKXt4PU1hdGgubWF4KFcsay0odiYxMjg/MDotMSkpO2lmKHg+MTAyNCl0aHJvdyBFcnJvcigic3B2dCIpO3Y9diYtMTY3NjA4MzN8KHgmMTAyMyk8PDE0fX19bltiNF09dnw2NHxiO3JldHVybiBufTsKV2NyPWZ1bmN0aW9uKCl7aWYoQXYpdGhyb3cgRXJyb3IoImNhcnIiKTtuNShEVWksNSl9OwpiYlo9ZnVuY3Rpb24obixXKXtpZih0eXBlb2YgbiE9PSJvYmplY3QiKXJldHVybiBuO2lmKEFycmF5LmlzQXJyYXkobikpe3ZhciBEPW5bYjRdfDA7bi5sZW5ndGg9PT0wJiZEJjE/bj12b2lkIDA6RCYyfHwoIVd8fDQwOTYmRHx8MTYmRD9uPW1fKG4sRCwhMSxXJiYhKEQmMTYpKToobltiNF18PTM0LEQmNCYmT2JqZWN0LmZyZWV6ZShuKSkpO3JldHVybiBufWlmKG4hPW51bGwmJm5bdkhdPT09a3YpcmV0dXJuIFc9bi5sOSxEPVdbYjRdfDAsdjkobixEKT9uOktHKG4sVyxEKT9PSyhuLFcpOm1fKFcsRCk7aWYobiBpbnN0YW5jZW9mIEZRKXJldHVybiBufTsKT0s9ZnVuY3Rpb24obixXLEQpe249bmV3IG4uY29uc3RydWN0b3IoVyk7RCYmKG4uTj1EQik7bi5YPURCO3JldHVybiBufTsKbV89ZnVuY3Rpb24obixXLEQsYil7Yj8/KGI9ISEoMzQmVykpO249cmcobixXLGJiWixiKTtiPTMyO0QmJihifD0yKTtXPVcmMTY3NjkyMTd8YjtuW2I0XT1XO3JldHVybiBufTsKUEg9ZnVuY3Rpb24obil7dmFyIFc9bi5sOSxEPVdbYjRdfDA7cmV0dXJuIHY5KG4sRCk/S0cobixXLEQpP09LKG4sVywhMCk6bmV3IG4uY29uc3RydWN0b3IobV8oVyxELCExKSk6bn07ClpSPWZ1bmN0aW9uKG4pe2lmKG4uTiE9PURCKXJldHVybiExO3ZhciBXPW4ubDk7Vz1tXyhXLFdbYjRdfDApO1dbYjRdfD0yMDQ4O24ubDk9VztuLk49dm9pZCAwO24uWD12b2lkIDA7cmV0dXJuITB9OwpVSz1mdW5jdGlvbihuKXtpZighWlIobikmJnY5KG4sbi5sOVtiNF18MCkpdGhyb3cgRXJyb3IoKTt9Owp5Zz1mdW5jdGlvbihuLFcpe1c9PT12b2lkIDAmJihXPW5bYjRdfDApO1cmMzImJiEoVyY0MDk2KSYmKG5bYjRdPVd8NDA5Nil9OwpLRz1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIEQmMj8hMDpEJjMyJiYhKEQmNDA5Nik/KFdbYjRdPUR8MixuLk49REIsITApOiExfTsKaVc9ZnVuY3Rpb24obixXLEQsYix2KXtPYmplY3QuaXNFeHRlbnNpYmxlKG4pO1c9RUsobi5sOSxXLEQsdik7aWYoVyE9PW51bGx8fGImJm4uWCE9PURCKXJldHVybiBXfTsKRUs9ZnVuY3Rpb24obixXLEQsYil7aWYoVz09PS0xKXJldHVybiBudWxsO3ZhciB2PVcrKEQ/MDotMSksaz1uLmxlbmd0aC0xO2lmKCEoazwxKyhEPzA6LTEpKSl7aWYodj49ayl7dmFyIGg9bltrXTtpZihoIT1udWxsJiZ0eXBlb2YgaD09PSJvYmplY3QiJiZoLmNvbnN0cnVjdG9yPT09T2JqZWN0KXtEPWhbV107dmFyIHg9ITB9ZWxzZSBpZih2PT09aylEPWg7ZWxzZSByZXR1cm59ZWxzZSBEPW5bdl07aWYoYiYmRCE9bnVsbCl7Yj1iKEQpO2lmKGI9PW51bGwpcmV0dXJuIGI7aWYoIU9iamVjdC5pcyhiLEQpKXJldHVybiB4P2hbV109YjpuW3ZdPWIsYn1yZXR1cm4gRH19Owpvej1mdW5jdGlvbihuLFcsRCxiKXtVSyhuKTt2YXIgdj1uLmw5O3VXKHYsdltiNF18MCxXLEQsYik7cmV0dXJuIG59Owp1Vz1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPUQrKHY/MDotMSksaD1uLmxlbmd0aC0xO2lmKGg+PTErKHY/MDotMSkmJms+PWgpe2xldCB4PW5baF07aWYoeCE9bnVsbCYmdHlwZW9mIHg9PT0ib2JqZWN0IiYmeC5jb25zdHJ1Y3Rvcj09PU9iamVjdClyZXR1cm4geFtEXT1iLFd9aWYoazw9aClyZXR1cm4gbltrXT1iLFc7YiE9PXZvaWQgMCYmKGg9KFc/PyhXPW5bYjRdfDApKT4+MTQmMTAyM3x8NTM2ODcwOTEyLEQ+PWg/YiE9bnVsbCYmKG5baCsodj8wOi0xKV09e1tEXTpifSk6bltrXT1iKTtyZXR1cm4gV307CmcuQkg9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1uLmw5LGg9a1tiNF18MDtiPXY5KG4saCk/MTpiO3Y9ISF2fHxiPT09MztiPT09MiYmWlIobikmJihrPW4ubDksaD1rW2I0XXwwKTtuPWRnKGssVyk7dmFyIHg9bj09PXp6Pzc6bltiNF18MCxMPWxXKHgsaCk7dmFyIGU9NCZMPyExOiEwO2lmKGUpezQmTCYmKG49Wy4uLm5dLHg9MCxMPWpXKEwsaCksaD11VyhrLGgsVyxuKSk7bGV0IEc9MCxyPTA7Zm9yKDtHPG4ubGVuZ3RoO0crKyl7bGV0IE49RChuW0ddKTtOIT1udWxsJiYobltyKytdPU4pfXI8RyYmKG4ubGVuZ3RoPXIpO0Q9KEx8NCkmLTUxMztMPUQmPS0xMDI1O0wmPS00MDk3fUwhPT14JiYobltiNF09TCwyJkwmJk9iamVjdC5mcmVlemUobikpO3JldHVybiBuPUNHKG4sTCxrLGgsVyx2b2lkIDAsYixlLHYpfTsKQ0c9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4LEwpe3ZhciBlPVc7aD09PTF8fChoIT09ND8wOjImV3x8ISgxNiZXKSYmMzImYik/RkYoVyl8fChXfD0hbi5sZW5ndGh8fHgmJiEoNDA5NiZXKXx8MzImYiYmISg0MDk2Jld8fDE2JlcpPzI6MjU2LFchPT1lJiYobltiNF09VyksT2JqZWN0LmZyZWV6ZShuKSk6KGg9PT0yJiZGRihXKSYmKG49Wy4uLm5dLGU9MCxXPWpXKFcsYiksYj11VyhELGIsdixuLGspKSxGRihXKXx8KEx8fChXfD0xNiksVyE9PWUmJihuW2I0XT1XKSkpOzImV3x8ISg0MDk2Jld8fDE2JlcpfHx5ZyhELGIpO3JldHVybiBufTsKZGc9ZnVuY3Rpb24obixXLEQpe249RUsobixXLEQpO3JldHVybiBBcnJheS5pc0FycmF5KG4pP246enp9OwpsVz1mdW5jdGlvbihuLFcpezImVyYmKG58PTIpO3JldHVybiBufDF9OwpGRj1mdW5jdGlvbihuKXtyZXR1cm4hISgyJm4pJiYhISg0Jm4pfHwhISgyNTYmbil9OwpNRT1mdW5jdGlvbihuKXtyZXR1cm4ga1UobiwhMCl9OwpSej1mdW5jdGlvbihuLFcpe249aVcobixXLHZvaWQgMCx2b2lkIDAsTUUpO3JldHVybiBuPT1udWxsP014KCk6bn07ClFnPWZ1bmN0aW9uKG4sVyxEKXtVSyhuKTt2YXIgYj1uLmw5LHY9YltiNF18MDtpZihXPT1udWxsKXJldHVybiB1VyhiLHYsMyksbjtpZighQXJyYXkuaXNBcnJheShXKSl0aHJvdyBjMigpO3ZhciBrPVc9PT16ej83OldbYjRdfDAsaD1rLHg9RkYoayksTD14fHxPYmplY3QuaXNGcm96ZW4oVyk7eHx8KGs9MCk7THx8KFc9Wy4uLlddLGg9MCxrPWpXKGssdiksTD0hMSk7a3w9NTt4PSg0Jms/NTEyJms/NTEyOjEwMjQmaz8xMDI0OjA6dm9pZCAwKT8/MTAyNDtrfD14O2ZvcihsZXQgZT0wO2U8Vy5sZW5ndGg7ZSsrKXtsZXQgRz1XW2VdLHI9RChHLHgpO09iamVjdC5pcyhHLHIpfHwoTCYmKFc9Wy4uLlddLGg9MCxrPWpXKGssdiksTD0hMSksV1tlXT1yKX1rIT09aCYmKEwmJihXPVsuLi5XXSxrPWpXKGssdikpLFdbYjRdPWspO3VXKGIsdiwzLFcpO3JldHVybiBufTsKZy5WZz1mdW5jdGlvbihuLFcsRCxiLHYpe1VLKG4pO3ZhciBrPW4ubDk7dVcoayxrW2I0XXwwLFcsKGI9PT0iMCI/TnVtYmVyKEQpPT09MDpEPT09Yik/dm9pZCAwOkQsdik7cmV0dXJuIG59OwpjSD1mdW5jdGlvbihuLFcsRCl7aWYoVyYyKXRocm93IEVycm9yKCk7dmFyIGI9TDUoVyksdj1kZyhuLEQsYiksaz12PT09eno/Nzp2W2I0XXwwLGg9bFcoayxXKTtpZigyJmh8fEZGKGgpfHwxNiZoKWg9PT1rfHxGRihoKXx8KHZbYjRdPWgpLHY9Wy4uLnZdLGs9MCxoPWpXKGgsVyksdVcobixXLEQsdixiKTtoJj0tMTM7aCE9PWsmJih2W2I0XT1oKTtyZXR1cm4gdn07CkQyPWZ1bmN0aW9uKG4sVyxELGIpe1VLKG4pO3ZhciB2PW4ubDksaz12W2I0XXwwO2lmKGI9PW51bGwpe2xldCBoPWF6KHYpO2lmKG5uKGgsdixrLEQpPT09VyloLnNldChELDApO2Vsc2UgcmV0dXJuIG59ZWxzZSBrPVdXKHYsayxELFcpO3VXKHYsayxXLGIpO3JldHVybiBufTsKYmE9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9bltiNF18MCxrPUw1KHYpO3Y9V1cobix2LEQsVyxrKTt1VyhuLHYsVyxiLGspfTsKdlc9ZnVuY3Rpb24obixXLEQpe249bi5sOTtyZXR1cm4gbm4oYXoobiksbix2b2lkIDAsVyk9PT1EP0Q6LTF9Owphej1mdW5jdGlvbihuKXtyZXR1cm4gbltrOV0/PyhuW2s5XT1uZXcgTWFwKX07CldXPWZ1bmN0aW9uKG4sVyxELGIsdil7Yj09PTB8fEQuaW5jbHVkZXMoYik7dmFyIGs9YXoobiksaD1ubihrLG4sVyxELHYpO2ghPT1iJiYoaCYmKFc9dVcobixXLGgsdm9pZCAwLHYpKSxrLnNldChELGIpKTtyZXR1cm4gV307Cm5uPWZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9bi5nZXQoYik7aWYoayE9bnVsbClyZXR1cm4gaztrPTA7Zm9yKGxldCBoPTA7aDxiLmxlbmd0aDtoKyspe2xldCB4PWJbaF07RUsoVyx4LHYpIT1udWxsJiYoayE9PTAmJihEPXVXKFcsRCxrLHZvaWQgMCx2KSksaz14KX1uLnNldChiLGspO3JldHVybiBrfTsKaFM9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW5bYjRdfDAsdj1MNShiKSxrPUVLKG4sRCx2KTtpZihrIT1udWxsJiZrW3ZIXT09PWt2KXtpZighdjkoaykpcmV0dXJuIFpSKGspLGsubDk7dmFyIGg9ay5sOX1lbHNlIEFycmF5LmlzQXJyYXkoaykmJihoPWspO2lmKGgpe2xldCB4PWhbYjRdfDA7eCYyJiYoaD1tXyhoLHgpKX1oPVNXKGgsVyk7aCE9PWsmJnVXKG4sYixELGgsdik7cmV0dXJuIGh9Owp4OT1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPSExO2I9RUsobixiLHYsaD0+e3ZhciB4PWh2KGgsRCxXKTtrPXghPT1oJiZ4IT1udWxsO3JldHVybiB4fSk7CmlmKGIhPW51bGwpcmV0dXJuIGsmJiF2OShiKSYmeWcobixXKSxifTsKZUU9ZnVuY3Rpb24obixXLEQsYil7bj1uLmw5OyhEPXg5KG4sbltiNF18MCxXLEQsYikpfHwoRD1XW0xuXSl8fChiPW5ldyBXLEQ9Yi5sOSxEW2I0XXw9MzQsRD1XW0xuXT1iKTtyZXR1cm4gRH07CmdlPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PW4ubDksaz12W2I0XXwwO1c9eDkodixrLFcsRCxiKTtpZihXPT1udWxsKXJldHVybiBXO2s9dltiNF18MDtpZighdjkobixrKSl7bGV0IGg9UEgoVyk7aCE9PVcmJihaUihuKSYmKHY9bi5sOSxrPXZbYjRdfDApLFc9aCxrPXVXKHYsayxELFcsYikseWcodixrKSl9cmV0dXJuIFd9OwpxSD1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj1uLmw5O3JldHVybiBYXyhuLHYsdltiNF18MCxXLEQsMSxiKX07ClhfPWZ1bmN0aW9uKG4sVyxELGIsdixrLGgseCxMKXt2YXIgZT12OShuLEQpO2s9ZT8xOms7eD0hIXh8fGs9PT0zO2U9TCYmIWU7KGs9PT0yfHxlKSYmWlIobikmJihXPW4ubDksRD1XW2I0XXwwKTtuPWRnKFcsdixoKTt2YXIgRz1uPT09eno/NzpuW2I0XXwwLHI9bFcoRyxEKTtpZihMPSEoNCZyKSl7dmFyIE49bixIPUQ7bGV0IEE9ISEoMiZyKTtBJiYoSHw9Mik7bGV0IHk9IUEsVD0hMCx6PTAsQz0wO2Zvcig7ejxOLmxlbmd0aDt6Kyspe2xldCBRPWh2KE5bel0sYixIKTtpZihRIGluc3RhbmNlb2YgYil7aWYoIUEpe2xldCBWPXY5KFEpO3kmJih5PSFWKTtUJiYoVD1WKX1OW0MrK109UX19Qzx6JiYoTi5sZW5ndGg9Qyk7cnw9NDtyPVQ/ciYtNDA5NzpyfDQwOTY7cj15P3J8ODpyJi05fXIhPT1HJiYobltiNF09ciwyJnImJk9iamVjdC5mcmVlemUobikpO2lmKGUmJiEoOCZyfHwhbi5sZW5ndGgmJihrPT09MXx8KGshPT00PzA6MiZyfHwhKDE2JnIpJiYzMiZEKSkpKXtGRihyKSYmKG49ClsuLi5uXSxyPWpXKHIsRCksRD11VyhXLEQsdixuLGgpKTtiPW47ZT1yO2ZvcihHPTA7RzxiLmxlbmd0aDtHKyspTj1iW0ddLHI9UEgoTiksTiE9PXImJihiW0ddPXIpO2V8PTg7cj1lPWIubGVuZ3RoP2V8NDA5NjplJi00MDk3O25bYjRdPXJ9cmV0dXJuIG49Q0cobixyLFcsRCx2LGgsayxMLHgpfTsKVkc9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4ubDk7cmV0dXJuIFhfKG4sYixiW2I0XXwwLFcsRCx2b2lkIDA9PT1HJD8yOjQsdm9pZCAwLCExLCEwKX07CnRTPWZ1bmN0aW9uKG4sVyl7biE9bnVsbD9iVyhuLFcpOm49dm9pZCAwO3JldHVybiBufTsKJDk9ZnVuY3Rpb24obixXLEQsYix2KXtiPXRTKGIsVyk7b3oobixELGIsdik7YiYmIXY5KGIpJiZ5ZyhuLmw5KTtyZXR1cm4gbn07CnJlPWZ1bmN0aW9uKG4sVyxELGIsdil7dj10Uyh2LFcpO0QyKG4sRCxiLHYpO3YmJiF2OSh2KSYmeWcobi5sOSk7cmV0dXJuIG59OwpzVj1mdW5jdGlvbihuLFcsRCxiKXtVSyhuKTt2YXIgdj1uLmw5LGs9dltiNF18MDtpZihiPT1udWxsKXJldHVybiB1Vyh2LGssRCksbjtpZighQXJyYXkuaXNBcnJheShiKSl0aHJvdyBjMigpO3ZhciBoPWI9PT16ej83OmJbYjRdfDAseD1oLEw9RkYoaCksZT1MfHxPYmplY3QuaXNGcm96ZW4oYiksRz0hMCxyPSEwO2ZvcihsZXQgSD0wO0g8Yi5sZW5ndGg7SCsrKXt2YXIgTj1iW0hdO2JXKE4sVyk7THx8KE49djkoTiksRyYmKEc9IU4pLHImJihyPU4pKX1MfHwoaD1HPzEzOjUsaD1yP2gmLTQwOTc6aHw0MDk2KTtlJiZoPT09eHx8KGI9Wy4uLmJdLHg9MCxoPWpXKGgsaykpO2ghPT14JiYoYltiNF09aCk7az11Vyh2LGssRCxiKTsyJmh8fCEoNDA5NiZofHwxNiZoKXx8eWcodixrKTtyZXR1cm4gbn07CmpXPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG49KDImVz9ufDI6biYtMykmLTI3M307Ck5IPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PWI7VUsobik7Yj1uLmw5O249WF8obixiLGJbYjRdfDAsRCxXLDIsdm9pZCAwLCEwKTt2PXYhPW51bGw/YlcodixEKTpuZXcgRDtuLnB1c2godik7Vz1EPW49PT16ej83Om5bYjRdfDA7KHY9djkodikpPyhEJj0tOSxuLmxlbmd0aD09PTEmJihEJj0tNDA5NykpOkR8PTQwOTY7RCE9PVcmJihuW2I0XT1EKTt2fHx5ZyhiKX07CmFQPWZ1bmN0aW9uKG4sVyxEPTApe3JldHVybiBFXyhpVyhuLFcpKT8/RH07CnBuPWZ1bmN0aW9uKG4sVyxEPXYzaSl7cmV0dXJuIGlXKG4sVyx2b2lkIDAsdm9pZCAwLEZEKT8/RH07Clk5PWZ1bmN0aW9uKG4sVyxEPSIiLGIpe3JldHVybiBnLkRSKGlXKG4sVyxiKSk/P0R9OwpIVz1mdW5jdGlvbihuLFcpe249aVcobixXKTtyZXR1cm4obj09bnVsbD9uOlA5KG4pP258MDp2b2lkIDApPz8wfTsKSlM9ZnVuY3Rpb24obixXKXtyZXR1cm4gZy5EUihpVyhuLFcsdm9pZCAwLGZuKSl9OwpJWT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIG96KG4sVyxnLmw0KEQpKX07CmcuU0U9ZnVuY3Rpb24obixXLEQpe3JldHVybiBveihuLFcsV0goRCkpfTsKQVM9ZnVuY3Rpb24obixXLEQsYil7cmV0dXJuIGcuVmcobixXLFdIKEQpLCIiLGIpfTsKS249ZnVuY3Rpb24obixXLEQpe2lmKEQhPW51bGwpe2lmKCFQOShEKSl0aHJvdyBjMigiZW51bSIpO0R8PTB9cmV0dXJuIG96KG4sVyxEKX07ClBXPWZ1bmN0aW9uKG4sVyl7aWYodHlwZW9mIG49PT0ic3RyaW5nIilyZXR1cm4gbmV3IE9WKEMwKG4pLFcpO2lmKEFycmF5LmlzQXJyYXkobikpcmV0dXJuIG5ldyBPVihuZXcgVWludDhBcnJheShuKSxXKTtpZihuLmNvbnN0cnVjdG9yPT09VWludDhBcnJheSlyZXR1cm4gbmV3IE9WKG4sITEpO2lmKG4uY29uc3RydWN0b3I9PT1BcnJheUJ1ZmZlcilyZXR1cm4gbj1uZXcgVWludDhBcnJheShuKSxuZXcgT1YobiwhMSk7aWYobi5jb25zdHJ1Y3Rvcj09PUZRKXJldHVybiBXPVFsKG4pfHxuZXcgVWludDhBcnJheSgwKSxuZXcgT1YoVywhMCxuKTtpZihuIGluc3RhbmNlb2YgVWludDhBcnJheSlyZXR1cm4gbj1uLmNvbnN0cnVjdG9yPT09VWludDhBcnJheT9uOm5ldyBVaW50OEFycmF5KG4uYnVmZmVyLG4uYnl0ZU9mZnNldCxuLmJ5dGVMZW5ndGgpLG5ldyBPVihuLCExKTt0aHJvdyBFcnJvcigpO307CmcuVVY9ZnVuY3Rpb24obixXKXt2YXIgRD0wLGI9MCx2PTAsaz1uLkosaD1uLk47ZG97dmFyIHg9a1toKytdO0R8PSh4JjEyNyk8PHY7dis9N313aGlsZSh2PDMyJiZ4JjEyOCk7aWYodj4zMilmb3IoYnw9KHgmMTI3KT4+NCx2PTM7djwzMiYmeCYxMjg7dis9Nyl4PWtbaCsrXSxifD0oeCYxMjcpPDx2O1oyKG4saCk7aWYoISh4JjEyOCkpcmV0dXJuIFcoRD4+PjAsYj4+PjApO3Rocm93IEVycm9yKCk7fTsKeTE9ZnVuY3Rpb24obil7Zm9yKHZhciBXPTAsRD1uLk4sYj1EKzEwLHY9bi5KO0Q8Yjspe2xldCBrPXZbRCsrXTtXfD1rO2lmKChrJjEyOCk9PT0wKXJldHVybiBaMihuLEQpLCEhKFcmMTI3KX10aHJvdyBFcnJvcigpO307CmcuRVY9ZnVuY3Rpb24obil7dmFyIFc9bi5KLEQ9bi5OLGI9V1tEKytdLHY9YiYxMjc7aWYoYiYxMjgmJihiPVdbRCsrXSx2fD0oYiYxMjcpPDw3LGImMTI4JiYoYj1XW0QrK10sdnw9KGImMTI3KTw8MTQsYiYxMjgmJihiPVdbRCsrXSx2fD0oYiYxMjcpPDwyMSxiJjEyOCYmKGI9V1tEKytdLHZ8PWI8PDI4LGImMTI4JiZXW0QrK10mMTI4JiZXW0QrK10mMTI4JiZXW0QrK10mMTI4JiZXW0QrK10mMTI4JiZXW0QrK10mMTI4KSkpKSl0aHJvdyBFcnJvcigpO1oyKG4sRCk7cmV0dXJuIHZ9Owp1YT1mdW5jdGlvbihuKXt2YXIgVz1uLkosRD1uLk4sYj1XW0QrMF0sdj1XW0QrMV0saz1XW0QrMl07Vz1XW0QrM107aWEobiw0KTtyZXR1cm4oYjw8MHx2PDw4fGs8PDE2fFc8PDI0KT4+PjB9OwpvWT1mdW5jdGlvbihuKXt2YXIgVz11YShuKTtuPXVhKG4pO3JldHVybiBmNShXLG4pfTsKZy5kZT1mdW5jdGlvbihuKXt2YXIgVz1uLmo7V3x8KFc9bi5KLFc9bi5qPW5ldyBEYXRhVmlldyhXLmJ1ZmZlcixXLmJ5dGVPZmZzZXQsVy5ieXRlTGVuZ3RoKSk7Vz1XLmdldEZsb2F0NjQobi5OLCEwKTtpYShuLDgpO3JldHVybiBXfTsKazQyPWZ1bmN0aW9uKG4pe3JldHVybiBnLkVWKG4pfTsKWjI9ZnVuY3Rpb24obixXKXtuLk49VztpZihXPm4uVyl0aHJvdyBFcnJvcigpO307CmlhPWZ1bmN0aW9uKG4sVyl7WjIobixuLk4rVyl9Owp6JD1mdW5jdGlvbihuLFcpe2lmKFc8MCl0aHJvdyBFcnJvcigpO3ZhciBEPW4uTjtXPUQrVztpZihXPm4uVyl0aHJvdyBFcnJvcigpO24uTj1XO3JldHVybiBEfTsKbGE9ZnVuY3Rpb24obixXKXtpZihXPT0wKXJldHVybiBNeCgpO3ZhciBEPXokKG4sVyk7bi5uXyYmbi5WP0Q9bi5KLnN1YmFycmF5KEQsRCtXKToobj1uLkosVz1EK1csRD1EPT09Vz9uZXcgVWludDhBcnJheSgwKTpuLnNsaWNlKEQsVykpO3JldHVybiBELmxlbmd0aD09MD9NeCgpOm5ldyBGUShELHdXKX07CkNuPWZ1bmN0aW9uKG4sVyxELGIpe2lmKFQkLmxlbmd0aCl7bGV0IHY9VCQucG9wKCk7akUodixiKTt2Lk4uaW5pdChuLFcsRCxiKTtyZXR1cm4gdn1yZXR1cm4gbmV3IGhCUyhuLFcsRCxiKX07CmpFPWZ1bmN0aW9uKG4se0diOlc9ITF9PXt9KXtuLkdiPVd9OwpGXz1mdW5jdGlvbihuKXt2YXIgVz1uLk47aWYoVy5OPT1XLlcpcmV0dXJuITE7bi5YPW4uTi5OO3ZhciBEPWcuRVYobi5OKT4+PjA7Vz1EPj4+MztEJj03O2lmKCEoRD49MCYmRDw9NSkpdGhyb3cgRXJyb3IoKTtpZihXPDEpdGhyb3cgRXJyb3IoKTtuLlc9VztuLko9RDtyZXR1cm4hMH07CndlPWZ1bmN0aW9uKG4pe3RyeXtzd2l0Y2gobi5KKXtjYXNlIDA6bi5KIT0wP3dlKG4pOnkxKG4uTik7YnJlYWs7Y2FzZSAxOmlhKG4uTiw4KTticmVhaztjYXNlIDI6aWYobi5KIT0yKXdlKG4pO2Vsc2V7dmFyIFc9Zy5FVihuLk4pPj4+MDtpYShuLk4sVyl9YnJlYWs7Y2FzZSA1OmlhKG4uTiw0KTticmVhaztjYXNlIDM6TUgoKTtsZXQgRD1uLlc7dHJ5e2Rve2lmKCFGXyhuKSl0aHJvdyBFcnJvcigpO2lmKG4uSj09NCl7aWYobi5XIT1EKXRocm93IEVycm9yKCk7YnJlYWt9d2Uobil9d2hpbGUoMSl9Y2F0Y2goYil7aWYoYiBpbnN0YW5jZW9mIFJhbmdlRXJyb3IpdGhyb3cgbmV3IFN5bnRheEVycm9yO3Rocm93IGI7fWZpbmFsbHl7Ulk+MCYmUlktLX1icmVhaztkZWZhdWx0OnRocm93IEVycm9yKCk7fX1jYXRjaChEKXtpZihEIGluc3RhbmNlb2YgUmFuZ2VFcnJvcil0aHJvdyBuZXcgU3ludGF4RXJyb3I7dGhyb3cgRDt9fTsKTUg9ZnVuY3Rpb24oKXtpZihSWT49MTAwKXRocm93IG5ldyBTeW50YXhFcnJvcjtSWSsrfTsKUTE9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uTi5XLHY9Zy5FVihuLk4pPj4+MDt2PW4uTi5OK3Y7dmFyIGs9di1iO2s8PTAmJihuLk4uVz12LEQoVyxuLHZvaWQgMCx2b2lkIDAsdm9pZCAwKSxrPXYtbi5OLk4pO2lmKGspdGhyb3cgRXJyb3IoKTtuLk4uTj12O24uTi5XPWJ9OwphWT1mdW5jdGlvbihuKXt2YXIgVz1nLkVWKG4uTik+Pj4wLEQ9bi5OO249eiQoRCxXKTt2YXIgYj1ELko7KEQ9VjEpfHwoRD1WMT1uZXcgVGV4dERlY29kZXIoInV0Zi04Iix7ZmF0YWw6ITB9KSk7Vz1uK1c7Yj1uPT09MCYmVz09PWIubGVuZ3RoP2I6Yi5zdWJhcnJheShuLFcpO3RyeXt2YXIgdj1ELmRlY29kZShiKX1jYXRjaChrKXtpZihjVz09PXZvaWQgMCl7dHJ5e0QuZGVjb2RlKG5ldyBVaW50OEFycmF5KFsxMjhdKSl9Y2F0Y2goaCl7fXRyeXtELmRlY29kZShuZXcgVWludDhBcnJheShbOTddKSksY1c9ITB9Y2F0Y2goaCl7Y1c9ITF9fSFjVyYmKFYxPXZvaWQgMCk7dGhyb3cgazt9cmV0dXJuIHZ9OwpEOT1mdW5jdGlvbihuKXt2YXIgVz1nLkVWKG4uTik+Pj4wO3JldHVybiBsYShuLk4sVyl9OwpiRz1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Zy5FVihuLk4pPj4+MDtmb3IoYj1uLk4uTitiO24uTi5OPGI7KUQucHVzaChXKG4uTikpfTsKa209ZnVuY3Rpb24obil7cmV0dXJuIG5ldyB2eShuJjQyOTQ5NjcyOTUsTWF0aC5mbG9vcihuLzQyOTQ5NjcyOTYpKX07CnhtPWZ1bmN0aW9uKG4pe2lmKCFuKXJldHVybiBoM3x8KGgzPW5ldyB2eSgwLDApKTtpZighL15cZCskLy50ZXN0KG4pKXJldHVybiBudWxsO1NYKG4pO3JldHVybiBuZXcgdnkoclosc18pfTsKTGg9ZnVuY3Rpb24obil7cmV0dXJuIG4uSj09PTA/bmV3IHZ5KDAsMSt+bi5OKTpuZXcgdnkofm4uSisxLH5uLk4pfTsKeFVqPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgZUMobiY0Mjk0OTY3Mjk1LE1hdGguZmxvb3Iobi80Mjk0OTY3Mjk2KSl9OwpYdD1mdW5jdGlvbihuKXtpZighbilyZXR1cm4gZ0d8fChnRz1uZXcgZUMoMCwwKSk7aWYoIS9eLT9cZCskLy50ZXN0KG4pKXJldHVybiBudWxsO1NYKG4pO3JldHVybiBuZXcgZUMoclosc18pfTsKWW09ZnVuY3Rpb24obixXLEQpe2lmKHR5cGVvZiBCaWdJbnQ2NEFycmF5IT09InVuZGVmaW5lZCIpcmV0dXJuIHFmfHwocWY9bmV3IEJpZ0ludDY0QXJyYXkoMSksR1M9bmV3IFVpbnQzMkFycmF5KHFmLmJ1ZmZlcikscWZbMF09QmlnSW50KDEpLHQzPUdTWzBdPT09MSkscWZbMF09bixuPXQzPzA6MSxuZXcgVyhHU1tuXSxHU1sxLW5dKTskbXx8KHJHPUJpZ0ludChOdW1iZXIuTUlOX1NBRkVfSU5URUdFUiksTmY9QmlnSW50KE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSxwaD1CaWdJbnQoNDI5NDk2NzI5NSksJG09QmlnSW50KDMyKSk7aWYobj49ckcmJm48PU5mKXJldHVybiBEKE51bWJlcihuKSk7bj1CaWdJbnQuYXNVaW50Tig2NCxuKTtyZXR1cm4gbmV3IFcoTnVtYmVyKG4mcGgpLE51bWJlcihuPj4kbSkpfTsKSHk9ZnVuY3Rpb24obixXLEQpe2Zvcig7RD4wfHxXPjEyNzspbi5OLnB1c2goVyYxMjd8MTI4KSxXPShXPj4+N3xEPDwyNSk+Pj4wLEQ+Pj49NztuLk4ucHVzaChXKX07CkozPWZ1bmN0aW9uKG4sVyl7bi5OLnB1c2goVz4+PjAmMjU1KTtuLk4ucHVzaChXPj4+OCYyNTUpO24uTi5wdXNoKFc+Pj4xNiYyNTUpO24uTi5wdXNoKFc+Pj4yNCYyNTUpfTsKSXg9ZnVuY3Rpb24obixXKXtmb3IoO1c+MTI3OyluLk4ucHVzaChXJjEyN3wxMjgpLFc+Pj49NztuLk4ucHVzaChXKX07ClNDPWZ1bmN0aW9uKG4sVyl7aWYoVz49MClJeChuLFcpO2Vsc2V7Zm9yKGxldCBEPTA7RDw5O0QrKyluLk4ucHVzaChXJjEyN3wxMjgpLFc+Pj03O24uTi5wdXNoKDEpfX07CkEzPWZ1bmN0aW9uKG4sVyl7Vy5sZW5ndGghPT0wJiYobi5XLnB1c2goVyksbi5KKz1XLmxlbmd0aCl9OwptND1mdW5jdGlvbihuLFcsRCl7SXgobi5OLFcqOCtEKX07CktoPWZ1bmN0aW9uKG4sVyl7bTQobixXLDIpO1c9bi5OLmVuZCgpO0EzKG4sVyk7Vy5wdXNoKG4uSik7cmV0dXJuIFd9OwpPcz1mdW5jdGlvbihuLFcpe3ZhciBEPVcucG9wKCk7Zm9yKEQ9bi5KK24uTi5sZW5ndGgoKS1EO0Q+MTI3OylXLnB1c2goRCYxMjd8MTI4KSxEPj4+PTcsbi5KKys7Vy5wdXNoKEQpO24uSisrfTsKeW09ZnVuY3Rpb24obixXLEQpe2lmKEQhPW51bGwpc3dpdGNoKFB5KEQpLG00KG4sVywxKSx0eXBlb2YgRCl7Y2FzZSAibnVtYmVyIjpuPW4uTjtOMyhEKTtKMyhuLHJaKTtKMyhuLHNfKTticmVhaztjYXNlICJiaWdpbnQiOkQ9WW0oRCx2eSxrbSk7bj1uLk47Vz1ELk47SjMobixELkopO0ozKG4sVyk7YnJlYWs7ZGVmYXVsdDpEPXhtKEQpLG49bi5OLFc9RC5OLEozKG4sRC5KKSxKMyhuLFcpfX07CkVzPWZ1bmN0aW9uKG4sVyxEKXtEIT1udWxsJiYoRD1wYXJzZUludChELDEwKSxtNChuLFcsMCksU0Mobi5OLEQpKX07CmlHPWZ1bmN0aW9uKG4sVyxEKXttNChuLFcsMik7SXgobi5OLEQubGVuZ3RoKTtBMyhuLG4uTi5lbmQoKSk7QTMobixEKX07ClB5PWZ1bmN0aW9uKG4pe3N3aXRjaCh0eXBlb2Ygbil7Y2FzZSAic3RyaW5nIjp4bShuKX19Owp1Rz1mdW5jdGlvbihuKXtzd2l0Y2godHlwZW9mIG4pe2Nhc2UgInN0cmluZyI6bi5sZW5ndGgmJm5bMF09PT0iLSI/eG0obi5zdWJzdHJpbmcoMSkpOnhtKG4pfX07Cm94PWZ1bmN0aW9uKCl7dmFyIG49Y2xhc3N7Y29uc3RydWN0b3IoKXt0aHJvdyBFcnJvcigpO319O09iamVjdC5zZXRQcm90b3R5cGVPZihuLG4ucHJvdG90eXBlKTtyZXR1cm4gbn07CmRHPWZ1bmN0aW9uKG4sVyl7aWYoVz09bnVsbHx8Vz09IiIpcmV0dXJuIG5ldyBuO1c9SlNPTi5wYXJzZShXKTtpZighQXJyYXkuaXNBcnJheShXKSl0aHJvdyBFcnJvcigiZG5hcnIiKTtXW2I0XXw9MzI7cmV0dXJuIG5ldyBuKFcpfTsKVFM9ZnVuY3Rpb24obixXKXtyZXR1cm4gbmV3IHpTKG4sVyxsRyl9OwpDaD1mdW5jdGlvbihuLFcsRCxiLHYpe1c9akMoVyxiKTtXIT1udWxsJiYoRD1LaChuLEQpLHYoVyxuKSxPcyhuLEQpKX07CndHPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PWJbbl07aWYodilyZXR1cm4gdjt2PXt9O3Yud2s9Yjt2LlJyPW4zMihiWzBdKTt2YXIgaz1iWzFdLGg9MTtrJiZrLmNvbnN0cnVjdG9yPT09T2JqZWN0JiYodi5leHRlbnNpb25zPWssaz1iWysraF0sdHlwZW9mIGs9PT0iZnVuY3Rpb24iJiYodi5kJD0hMCxCeT8/KEJ5PWspLEZ0Pz8oRnQ9YltoKzFdKSxrPWJbaCs9Ml0pKTtmb3IodmFyIHg9e307ayYmQXJyYXkuaXNBcnJheShrKSYmay5sZW5ndGgmJnR5cGVvZiBrWzBdPT09Im51bWJlciImJmtbMF0+MDspe2Zvcih2YXIgTD0wO0w8ay5sZW5ndGg7TCsrKXhba1tMXV09aztrPWJbKytoXX1mb3IoTD0xO2shPT12b2lkIDA7KXt0eXBlb2Ygaz09PSJudW1iZXIiJiYoTCs9ayxrPWJbKytoXSk7bGV0IHI7dmFyIGU9dm9pZCAwO2sgaW5zdGFuY2VvZiB6Uz9yPWs6KHI9TGN0LGgtLSk7aWYocj8uTil7az1iWysraF07ZT1iO3ZhciBHPWg7dHlwZW9mIGs9PT0iZnVuY3Rpb24iJiYoaz1rKCksCmVbR109ayk7ZT1rfWs9YlsrK2hdO0c9TCsxO3R5cGVvZiBrPT09Im51bWJlciImJms8MCYmKEctPWssaz1iWysraF0pO2Zvcig7TDxHO0wrKyl7bGV0IE49eFtMXTtlP0QodixMLHIsZSxOKTpXKHYsTCxyLE4pfX1yZXR1cm4gYltuXT12fTsKTWY9ZnVuY3Rpb24obil7cmV0dXJuIEFycmF5LmlzQXJyYXkobik/blswXWluc3RhbmNlb2YgelM/bjpbZUJ0LG5dOltuLHZvaWQgMF19OwpSeD1mdW5jdGlvbihuLFc9IiIsRD0iIil7bj1uZXcgZy53WihuLCEwKTtuLnNldCgiYWxyIiwieWVzIik7RCYmKEQ9ZVgoODQsNjU1MyxNMygxOCw0MjYwLEQpKSxuW0lbMzRdXShXLFIwKDEzLDg3MTYsRCkpKTtyZXR1cm4gbn07CmpDPWZ1bmN0aW9uKG4sVyl7aWYobiBpbnN0YW5jZW9mIGcuUW0pcmV0dXJuIG4ubDk7aWYoQXJyYXkuaXNBcnJheShuKSlyZXR1cm4gU1cobixXKX07ClZtPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PUQuY2o7bltXXT1iPyhrLGgseCk9PnYoayxoLHgsYik6dn07CmF4PWZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9RC5jaixoLHg7bltXXT0oTCxlLEcpPT5rKEwsZSxHLHh8fCh4PXdHKGN5LFZtLGF4LGIpLlJyKSxofHwoaD1uOChiKSksdil9OwpuOD1mdW5jdGlvbihuKXt2YXIgVz1uW1dPXTtpZihXIT1udWxsKXJldHVybiBXO3ZhciBEPXdHKGN5LFZtLGF4LG4pO1c9RC5kJD8oYix2KT0+QnkoYix2LEQpOihiLHYpPT57YTp7TUgoKTsKdHJ5e2Zvcig7Rl8odikmJnYuSiE9NDspe2xldCBOPXYuVyxIPURbTl07aWYoSD09bnVsbCl7bGV0IEE9RC5leHRlbnNpb25zO2lmKEEpe2xldCB5PUFbTl07aWYoeSl7bGV0IFQ9ZzNVKHkpO1QhPW51bGwmJihIPURbTl09VCl9fX1pZihIPT1udWxsfHwhSCh2LGIsTikpe3ZhciBrPXY7bGV0IEE9ay5YO3dlKGspO2lmKGsuR2IpdmFyIGg9dm9pZCAwO2Vsc2V7bGV0IHk9ay5OLk4tQTtrLk4uTj1BO2g9bGEoay5OLHkpfWs9dm9pZCAwO3ZhciB4PWIsTD1OLGU9aDtlJiYoKGs9eFtMR10/Pyh4W0xHXT1uZXcgWEYpKVtMXT8/KGtbTF09W10pKS5wdXNoKGUpfX1sZXQgcj1lVyhiKTtyJiYoci5qNz1ELndrW0Q4XSk7dmFyIEc9ITA7YnJlYWsgYX1jYXRjaChyKXtpZihyIGluc3RhbmNlb2YgUmFuZ2VFcnJvcil0aHJvdyBuZXcgU3ludGF4RXJyb3I7dGhyb3cgcjt9ZmluYWxseXtSWT4wJiZSWS0tfUc9dm9pZCAwfXJldHVybiBHfTsKbltXT109VztuW0Q4XT1YTWkuYmluZChuKTtyZXR1cm4gV307ClhNaT1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj10aGlzW2N5XSxrPXRoaXNbV09dLGg9U1codm9pZCAwLHYuUnIpLHg9ZVcobik7aWYoeCl7dmFyIEw9ITEsZT12LmV4dGVuc2lvbnM7aWYoZSl7dj0oRyxyLE4pPT57aWYoTi5sZW5ndGghPT0wKWlmKGVbcl0pZm9yKGxldCBIIG9mIE4pe0c9Q24oSCk7dHJ5e0w9ITAsayhoLEcpfWZpbmFsbHl7Ry5mcmVlKCl9fWVsc2UgYj8uKG4scixOKX07CmlmKFc9PW51bGwpZ2coeCx2KTtlbHNlIGlmKHghPW51bGwpe2xldCBHPXhbV107RyYmdih4LFcsRyl9aWYoTCl7bGV0IEc9bltiNF18MDtpZihHJjImJkcmMjA0OCYmIUQ/LkpTKXRocm93IEVycm9yKCk7bGV0IHI9TDUoRyksTj0oSCxBKT0+e2lmKEVLKG4sSCxyKSE9bnVsbClzd2l0Y2goRD8uaDQpe2Nhc2UgMTpyZXR1cm47ZGVmYXVsdDp0aHJvdyBFcnJvcigpO31BIT1udWxsJiYoRz11VyhuLEcsSCxBLHIpKTtkZWxldGUgeFtIXX07Clc9PW51bGw/aF8oaCxoW2I0XXwwLChILEEpPT57TihILEEpfSk6TihXLEVLKGgsVyxyKSl9fX19OwpnM1U9ZnVuY3Rpb24obil7bj1NZihuKTt2YXIgVz1uWzBdLmNqO2lmKG49blsxXSl7bGV0IEQ9bjgobiksYj13RyhjeSxWbSxheCxuKS5ScjtyZXR1cm4odixrLGgpPT5XKHYsayxoLGIsRCl9cmV0dXJuIFd9OwpiNj1mdW5jdGlvbihuLFcsRCl7bltXXT1ELlBqfTsKa249ZnVuY3Rpb24obixXLEQsYil7dmFyIHYsayxoPUQuUGo7bltXXT0oeCxMLGUpPT5oKHgsTCxlLGt8fChrPXdHKHZPLGI2LGtuLGIpLlJyKSx2fHwodj1oOShiKSkpfTsKaDk9ZnVuY3Rpb24obil7dmFyIFc9blt4bl07aWYoIVcpe2xldCBEPXdHKHZPLGI2LGtuLG4pO1c9KGIsdik9Pkw4KGIsdixEKTsKblt4bl09V31yZXR1cm4gV307Ckw4PWZ1bmN0aW9uKG4sVyxEKXtoXyhuLG5bYjRdfDAsKGIsdik9PntpZih2IT1udWxsKXt2YXIgaz1xTU0oRCxiKTtrP2soVyx2LGIpOmI8NTAwfHxuNShHNFMsMyl9fSk7CihuPWVXKG4pKSYmZ2cobiwoYix2LGspPT57QTMoVyxXLk4uZW5kKCkpO2ZvcihiPTA7YjxrLmxlbmd0aDtiKyspQTMoVyxRbChrW2JdKXx8bmV3IFVpbnQ4QXJyYXkoMCkpfSl9OwpxTU09ZnVuY3Rpb24obixXKXt2YXIgRD1uW1ddO2lmKEQpcmV0dXJuIEQ7aWYoRD1uLmV4dGVuc2lvbnMpaWYoRD1EW1ddKXtEPU1mKEQpO3ZhciBiPURbMF0uUGo7aWYoRD1EWzFdKXtsZXQgdj1oOShEKSxrPXdHKHZPLGI2LGtuLEQpLlJyO0Q9bi5kJD9GdChrLHYpOihoLHgsTCk9PmIoaCx4LEwsayx2KX1lbHNlIEQ9YjsKcmV0dXJuIG5bV109RH19OwplNj1mdW5jdGlvbihuLFcsRCl7aWYoQXJyYXkuaXNBcnJheShXKSl7dmFyIGI9V1tiNF18MDtpZihiJjQpcmV0dXJuIFc7Zm9yKHZhciB2PTAsaz0wO3Y8Vy5sZW5ndGg7disrKXtsZXQgaD1uKFdbdl0pO2ghPW51bGwmJihXW2srK109aCl9azx2JiYoVy5sZW5ndGg9ayk7bj1ifDE7RCYmKG49KG58NCkmLTE1MzcpO24hPT1iJiYoV1tiNF09bik7RCYmbiYyJiZPYmplY3QuZnJlZXplKFcpO3JldHVybiBXfX07CmcuZ1E9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuZXcgelMobixXLEQpfTsKWGY9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuZXcgelMobixXLEQpfTsKZy5xWT1mdW5jdGlvbihuLFcsRCl7dVcobixuW2I0XXwwLFcsRCxMNShuW2I0XXwwKSl9OwpnLnQ5PWZ1bmN0aW9uKG4sVyxEKXtXPW0wKFcpO1chPW51bGwmJihtNChuLEQsMSksbj1uLk4sRD1Hdnx8KEd2PW5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoOCkpKSxELnNldEZsb2F0NjQoMCwrVywhMCksclo9RC5nZXRVaW50MzIoMCwhMCksc189RC5nZXRVaW50MzIoNCwhMCksSjMobixyWiksSjMobixzXykpfTsKZy4kbj1mdW5jdGlvbihuLFcsRCl7Vz1DeE0oVyk7aWYoVyE9bnVsbCl7c3dpdGNoKHR5cGVvZiBXKXtjYXNlICJzdHJpbmciOlh0KFcpfWlmKFchPW51bGwpc3dpdGNoKG00KG4sRCwwKSx0eXBlb2YgVyl7Y2FzZSAibnVtYmVyIjpuPW4uTjtwNShXKTtIeShuLHJaLHNfKTticmVhaztjYXNlICJiaWdpbnQiOkQ9WW0oVyxlQyx4VWopO0h5KG4uTixELkosRC5OKTticmVhaztkZWZhdWx0OkQ9WHQoVyksSHkobi5OLEQuSixELk4pfX19OwpnLnJRPWZ1bmN0aW9uKG4sVyxEKXtXPUVfKFcpO1chPW51bGwmJlchPW51bGwmJihtNChuLEQsMCksU0Mobi5OLFcpKX07CnNmPWZ1bmN0aW9uKG4sVyxEKXtXPVc9PW51bGx8fHR5cGVvZiBXPT09ImJvb2xlYW4iP1c6dHlwZW9mIFc9PT0ibnVtYmVyIj8hIVc6dm9pZCAwO1chPW51bGwmJihtNChuLEQsMCksbi5OLk4ucHVzaChXPzE6MCkpfTsKTlk9ZnVuY3Rpb24obixXLEQpe1c9Zy5EUihXKTtXIT1udWxsJiZpRyhuLEQsa0soVykpfTsKcDg9ZnVuY3Rpb24obixXLEQsYix2KXtXPWpDKFcsYik7VyE9bnVsbCYmKEQ9S2gobixEKSx2KFcsbiksT3MobixEKSl9OwpKOT1mdW5jdGlvbihuLFcsRCl7aWYobi5KIT09MSlyZXR1cm4hMTtnLnFZKFcsRCxvWShuLk4pKTtyZXR1cm4hMH07CklfPWZ1bmN0aW9uKG4sVyl7cmV0dXJuKEQsYik9PnthOntsZXQgaz17aEI6ITB9O2ImJk9iamVjdC5hc3NpZ24oayxiKTtEPUNuKEQsdm9pZCAwLHZvaWQgMCxrKTt0cnl7bGV0IGg9bmV3IG4seD1oLmw5O244KFcpKHgsRCk7dmFyIHY9aDticmVhayBhfWNhdGNoKGgpe2lmKGggaW5zdGFuY2VvZiBSYW5nZUVycm9yKXRocm93IG5ldyBTeW50YXhFcnJvcjt0aHJvdyBoO31maW5hbGx5e0QuZnJlZSgpfXY9dm9pZCAwfXJldHVybiB2fX07CmcuQTk9ZnVuY3Rpb24obil7cmV0dXJuIFc9PlM2KFcsbil9OwpnLm1EPWZ1bmN0aW9uKG4pe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBTNih0aGlzLG4pfX07Cks4PWZ1bmN0aW9uKG4pe3JldHVybiBXPT5kRyhuLFcpfTsKdGpVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFFnKG4sVyxVXyl9Owp1Nj1mdW5jdGlvbihuKXt2YXIgVz1uZXcgZy5PZjtXPWcuU0UoVywxLG4uSik7dmFyIEQ9JFVNKG4pO1c9UWcoVyxELEZTMik7RD1bXTt2YXIgYj1bXTtmb3IodmFyIHYgb2Ygbi5OLmtleXMoKSliLnB1c2godi5zcGxpdCgiLCIpKTtmb3Iodj0wO3Y8Yi5sZW5ndGg7disrKXtsZXQgcj1iW3ZdO3ZhciBrPW4uVyxoPVBPKG4sLi4ucil8fFtdO2xldCBOPVtdO2Zvcih2YXIgeD0wO3g8aC5sZW5ndGg7eCsrKXt2YXIgTD1oW3hdLGU9TCYmTC5OO0w9bmV3IFo4O3N3aXRjaChrKXtjYXNlIDM6ZT1OdW1iZXIoZSk7TnVtYmVyLmlzRmluaXRlKGUpJiZEMihMLDEsVWYsZy5sNChlKSk7YnJlYWs7Y2FzZSAyOkQyKEwsMixVZixnLkFfKE51bWJlcihlKSkpfU4ucHVzaChMKX1mb3Ioaz0wO2s8Ti5sZW5ndGg7aysrKXt4PU5ba107aD1uZXcgeWU7aD0kOShoLFo4LDIseCk7eD1bXTtMPXJGdChuKTtmb3IoZT0wO2U8TC5sZW5ndGg7ZSsrKXt2YXIgRz1MW2VdO2xldCBIPXJbZV0sQT1uZXcgRWY7CnN3aXRjaChHKXtjYXNlIDM6RDIoQSwxLGk2LFdIKFN0cmluZyhIKSkpO2JyZWFrO2Nhc2UgMjpHPU51bWJlcihIKTtOdW1iZXIuaXNGaW5pdGUoRykmJkQyKEEsMixpNixnLnlQKEcpKTticmVhaztjYXNlIDE6RDIoQSwzLGk2LE9fKEg9PT0idHJ1ZSIpKX14LnB1c2goQSl9c1YoaCxFZiwxLHgpO0QucHVzaChoKX19c1YoVyx5ZSw0LEQpO3JldHVybiBXfTsKb189ZnVuY3Rpb24obil7aWYoIW4pcmV0dXJuIiI7aWYoL15hYm91dDooPzpibGFua3xzcmNkb2MpJC8udGVzdChuKSlyZXR1cm4gd2luZG93Lm9yaWdpbnx8IiI7bi5pbmRleE9mKCJibG9iOiIpPT09MCYmKG49bi5zdWJzdHJpbmcoNSkpO249bi5zcGxpdCgiIyIpWzBdLnNwbGl0KCI/IilbMF07bj1uLnRvTG93ZXJDYXNlKCk7bi5pbmRleE9mKCIvLyIpPT0wJiYobj13aW5kb3cubG9jYXRpb24ucHJvdG9jb2wrbik7L15bXHdcLV0qOlwvXC8vLnRlc3Qobil8fChuPXdpbmRvdy5sb2NhdGlvbi5ocmVmKTt2YXIgVz1uLnN1YnN0cmluZyhuLmluZGV4T2YoIjovLyIpKzMpLEQ9Vy5pbmRleE9mKCIvIik7RCE9LTEmJihXPVcuc3Vic3RyaW5nKDAsRCkpO0Q9bi5zdWJzdHJpbmcoMCxuLmluZGV4T2YoIjovLyIpKTtpZighRCl0aHJvdyBFcnJvcigiVVJJIGlzIG1pc3NpbmcgcHJvdG9jb2w6ICIrbik7aWYoRCE9PSJodHRwIiYmRCE9PSJodHRwcyImJkQhPT0iY2hyb21lLWV4dGVuc2lvbiImJgpEIT09Im1vei1leHRlbnNpb24iJiZEIT09ImZpbGUiJiZEIT09ImFuZHJvaWQtYXBwIiYmRCE9PSJjaHJvbWUtc2VhcmNoIiYmRCE9PSJjaHJvbWUtdW50cnVzdGVkIiYmRCE9PSJjaHJvbWUiJiZEIT09ImFwcCImJkQhPT0iZGV2dG9vbHMiKXRocm93IEVycm9yKCJJbnZhbGlkIFVSSSBzY2hlbWUgaW4gb3JpZ2luOiAiK0QpO249IiI7dmFyIGI9Vy5pbmRleE9mKCI6Iik7aWYoYiE9LTEpe3ZhciB2PVcuc3Vic3RyaW5nKGIrMSk7Vz1XLnN1YnN0cmluZygwLGIpO2lmKEQ9PT0iaHR0cCImJnYhPT0iODAifHxEPT09Imh0dHBzIiYmdiE9PSI0NDMiKW49IjoiK3Z9cmV0dXJuIEQrIjovLyIrVytufTsKc00yPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gbigpe3ZbMF09MTczMjU4NDE5Mzt2WzFdPTQwMjMyMzM0MTc7dlsyXT0yNTYyMzgzMTAyO3ZbM109MjcxNzMzODc4O3ZbNF09MzI4NTM3NzUyMDtHPWU9MH0KZnVuY3Rpb24gVyhyKXtmb3IodmFyIE49aCxIPTA7SDw2NDtIKz00KU5bSC80XT1yW0hdPDwyNHxyW0grMV08PDE2fHJbSCsyXTw8OHxyW0grM107Zm9yKEg9MTY7SDw4MDtIKyspcj1OW0gtM11eTltILThdXk5bSC0xNF1eTltILTE2XSxOW0hdPShyPDwxfHI+Pj4zMSkmNDI5NDk2NzI5NTtyPXZbMF07dmFyIEE9dlsxXSx5PXZbMl0sVD12WzNdLHo9dls0XTtmb3IoSD0wO0g8ODA7SCsrKXtpZihIPDQwKWlmKEg8MjApe3ZhciBDPVReQSYoeV5UKTt2YXIgUT0xNTE4NTAwMjQ5fWVsc2UgQz1BXnleVCxRPTE4NTk3NzUzOTM7ZWxzZSBIPDYwPyhDPUEmeXxUJihBfHkpLFE9MjQwMDk1OTcwOCk6KEM9QV55XlQsUT0zMzk1NDY5NzgyKTtDPSgocjw8NXxyPj4+MjcpJjQyOTQ5NjcyOTUpK0MreitRK05bSF0mNDI5NDk2NzI5NTt6PVQ7VD15O3k9KEE8PDMwfEE+Pj4yKSY0Mjk0OTY3Mjk1O0E9cjtyPUN9dlswXT12WzBdK3ImNDI5NDk2NzI5NTt2WzFdPXZbMV0rQSY0Mjk0OTY3Mjk1O3ZbMl09CnZbMl0reSY0Mjk0OTY3Mjk1O3ZbM109dlszXStUJjQyOTQ5NjcyOTU7dls0XT12WzRdK3omNDI5NDk2NzI5NX0KZnVuY3Rpb24gRChyLE4pe2lmKHR5cGVvZiByPT09InN0cmluZyIpe3I9dW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHIpKTtmb3IodmFyIEg9W10sQT0wLHk9ci5sZW5ndGg7QTx5OysrQSlILnB1c2goci5jaGFyQ29kZUF0KEEpKTtyPUh9Tnx8KE49ci5sZW5ndGgpO0g9MDtpZihlPT0wKWZvcig7SCs2NDxOOylXKHIuc2xpY2UoSCxIKzY0KSksSCs9NjQsRys9NjQ7Zm9yKDtIPE47KWlmKGtbZSsrXT1yW0grK10sRysrLGU9PTY0KWZvcihlPTAsVyhrKTtIKzY0PE47KVcoci5zbGljZShILEgrNjQpKSxIKz02NCxHKz02NH0KZnVuY3Rpb24gYigpe3ZhciByPVtdLE49Ryo4O2U8NTY/RCh4LDU2LWUpOkQoeCw2NC0oZS01NikpO2Zvcih2YXIgSD02MztIPj01NjtILS0pa1tIXT1OJjI1NSxOPj4+PTg7VyhrKTtmb3IoSD1OPTA7SDw1O0grKylmb3IodmFyIEE9MjQ7QT49MDtBLT04KXJbTisrXT12W0hdPj5BJjI1NTtyZXR1cm4gcn0KZm9yKHZhciB2PVtdLGs9W10saD1bXSx4PVsxMjhdLEw9MTtMPDY0OysrTCl4W0xdPTA7dmFyIGUsRztuKCk7cmV0dXJue3Jlc2V0Om4sdXBkYXRlOkQsZGlnZXN0OmIsSFU6ZnVuY3Rpb24oKXtmb3IodmFyIHI9YigpLE49IiIsSD0wO0g8ci5sZW5ndGg7SCsrKU4rPSIwMTIzNDU2Nzg5QUJDREVGIi5jaGFyQXQoTWF0aC5mbG9vcihyW0hdLzE2KSkrIjAxMjM0NTY3ODlBQkNERUYiLmNoYXJBdChyW0hdJTE2KTtyZXR1cm4gTn19fTsKZFE9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVN0cmluZyhnLnFpLmxvY2F0aW9uLmhyZWYpO3JldHVybiBiJiZuJiZXP1tXLE56cihvXyhiKSxuLER8fG51bGwpXS5qb2luKCIgIik6bnVsbH07Ck56cj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9W10sdj1bXTtpZigoQXJyYXkuaXNBcnJheShEKT8yOjEpPT0xKXJldHVybiB2PVtXLG5dLGcueTIoYixmdW5jdGlvbih4KXt2LnB1c2goeCl9KSx6dih2LmpvaW4oIiAiKSk7CnZhciBrPVtdLGg9W107Zy55MihELGZ1bmN0aW9uKHgpe2gucHVzaCh4LmtleSk7ay5wdXNoKHgudmFsdWUpfSk7CkQ9TWF0aC5mbG9vcigobmV3IERhdGUpLmdldFRpbWUoKS8xRTMpO3Y9ay5sZW5ndGg9PTA/W0QsVyxuXTpbay5qb2luKCI6IiksRCxXLG5dO2cueTIoYixmdW5jdGlvbih4KXt2LnB1c2goeCl9KTsKbj16dih2LmpvaW4oIiAiKSk7bj1bRCxuXTtoLmxlbmd0aD09MHx8bi5wdXNoKGguam9pbigiIikpO3JldHVybiBuLmpvaW4oIl8iKX07Cnp2PWZ1bmN0aW9uKG4pe3ZhciBXPXNNMigpO1cudXBkYXRlKG4pO3JldHVybiBXLkhVKCkudG9Mb3dlckNhc2UoKX07Cmw2PWZ1bmN0aW9uKG4pe3RoaXMuTj1ufHx7Y29va2llOiIifX07ClR2PWZ1bmN0aW9uKG4pe249KG4uTi5jb29raWV8fCIiKS5zcGxpdCgiOyIpO3ZhciBXPVtdLEQ9W107Zm9yKGxldCBrPTA7azxuLmxlbmd0aDtrKyspe3ZhciBiPW5ba10udHJpbSgpO3ZhciB2PWIuaW5kZXhPZigiPSIpO3Y9PS0xPyhXLnB1c2goIiIpLEQucHVzaChiKSk6KFcucHVzaChiLnN1YnN0cmluZygwLHYpKSxELnB1c2goYi5zdWJzdHJpbmcodisxKSkpfXJldHVybntrZXlzOlcsdmFsdWVzOkR9fTsKajY9ZnVuY3Rpb24oKXt2YXIgbj1nLnFpLl9fU0FQSVNJRHx8Zy5xaS5fX0FQSVNJRHx8Zy5xaS5fXzNQU0FQSVNJRHx8Zy5xaS5fXzFQU0FQSVNJRHx8Zy5xaS5fX09WRVJSSURFX1NJRDtpZihuKXJldHVybiEwO3R5cGVvZiBkb2N1bWVudCE9PSJ1bmRlZmluZWQiJiYobj1uZXcgbDYoZG9jdW1lbnQpLG49bi5nZXQoIlNBUElTSUQiKXx8bi5nZXQoIkFQSVNJRCIpfHxuLmdldCgiX19TZWN1cmUtM1BBUElTSUQiKXx8bi5nZXQoIl9fU2VjdXJlLTFQQVBJU0lEIikpO3JldHVybiEhbn07CkM4PWZ1bmN0aW9uKG4sVyxELGIpeyhuPWcucWlbbl0pfHx0eXBlb2YgZG9jdW1lbnQ9PT0idW5kZWZpbmVkInx8KG49KG5ldyBsNihkb2N1bWVudCkpLmdldChXKSk7cmV0dXJuIG4/ZFEobixELGIpOm51bGx9OwpCTz1mdW5jdGlvbihuKXt2YXIgVz1vXyhnLnFpPy5sb2NhdGlvbi5ocmVmKSxEPVtdO2lmKGo2KCkpe1c9Vy5pbmRleE9mKCJodHRwczoiKT09MHx8Vy5pbmRleE9mKCJjaHJvbWUtZXh0ZW5zaW9uOiIpPT0wfHxXLmluZGV4T2YoImNocm9tZS11bnRydXN0ZWQ6Ly9uZXctdGFiLXBhZ2UiKT09MHx8Vy5pbmRleE9mKCJtb3otZXh0ZW5zaW9uOiIpPT0wO3ZhciBiLHY9KGI9Vyk/Zy5xaS5fX1NBUElTSUQ6Zy5xaS5fX0FQSVNJRDt2fHx0eXBlb2YgZG9jdW1lbnQ9PT0idW5kZWZpbmVkInx8KHY9bmV3IGw2KGRvY3VtZW50KSx2PXYuZ2V0KGI/IlNBUElTSUQiOiJBUElTSUQiKXx8di5nZXQoIl9fU2VjdXJlLTNQQVBJU0lEIikpOyhiPXY/ZFEodixiPyJTQVBJU0lESEFTSCI6IkFQSVNJREhBU0giLG4pOm51bGwpJiZELnB1c2goYik7VyYmKChXPUM4KCJfXzFQU0FQSVNJRCIsIl9fU2VjdXJlLTFQQVBJU0lEIiwiU0FQSVNJRDFQSEFTSCIsbikpJiZELnB1c2goVyksKG49QzgoIl9fM1BTQVBJU0lEIiwKIl9fU2VjdXJlLTNQQVBJU0lEIiwiU0FQSVNJRDNQSEFTSCIsbikpJiZELnB1c2gobikpfXJldHVybiBELmxlbmd0aD09MD9udWxsOkQuam9pbigiICIpfTsKZy5GZj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIE1hdGgubWluKE1hdGgubWF4KG4sVyksRCl9Owp3UT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIG4rRCooVy1uKX07CmcuTVk9ZnVuY3Rpb24obixXKXt0aGlzLng9biE9PXZvaWQgMD9uOjA7dGhpcy55PVchPT12b2lkIDA/VzowfTsKUl89ZnVuY3Rpb24obixXKXtyZXR1cm4gbj09Vz8hMDpuJiZXP24ueD09Vy54JiZuLnk9PVcueTohMX07CmcuUWU9ZnVuY3Rpb24obixXKXt0aGlzLndpZHRoPW47dGhpcy5oZWlnaHQ9V307CmcuVmU9ZnVuY3Rpb24obixXKXtyZXR1cm4gbj09Vz8hMDpuJiZXP24ud2lkdGg9PVcud2lkdGgmJm4uaGVpZ2h0PT1XLmhlaWdodDohMX07CmNPPWZ1bmN0aW9uKG4pe3JldHVybiBuLndpZHRoKm4uaGVpZ2h0fTsKZy5hXz1mdW5jdGlvbihuLFcsRCl7Zm9yKGxldCBiIGluIG4pVy5jYWxsKEQsbltiXSxiLG4pfTsKZy5uVD1mdW5jdGlvbihuLFcpe3ZhciBEPXt9O2ZvcihsZXQgYiBpbiBuKVcuY2FsbCh2b2lkIDAsbltiXSxiLG4pJiYoRFtiXT1uW2JdKTtyZXR1cm4gRH07Cld4PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9e307Zm9yKGxldCBiIGluIG4pRFtiXT1XLmNhbGwodm9pZCAwLG5bYl0sYixuKTtyZXR1cm4gRH07CmcuRGw9ZnVuY3Rpb24obixXLEQpe2ZvcihsZXQgYiBpbiBuKWlmKFcuY2FsbChELG5bYl0sYixuKSlyZXR1cm4hMDtyZXR1cm4hMX07CmcuYms9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgaW4gbilpZighVy5jYWxsKHZvaWQgMCxuW0RdLEQsbikpcmV0dXJuITE7cmV0dXJuITB9Owp2eD1mdW5jdGlvbihuKXtmb3IobGV0IFcgaW4gbilyZXR1cm4gV307Cmt5PWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBpbiBuKXJldHVybiBuW1ddfTsKaEs9ZnVuY3Rpb24obil7dmFyIFc9W10sRD0wO2ZvcihsZXQgYiBpbiBuKVdbRCsrXT1uW2JdO3JldHVybiBXfTsKZy5MVD1mdW5jdGlvbihuKXt2YXIgVz1bXSxEPTA7Zm9yKGxldCBiIGluIG4pV1tEKytdPWI7cmV0dXJuIFd9OwpnLmVwPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4hPT1udWxsJiZXIGluIG59OwpnLmdtPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIGluIG4paWYobltEXT09VylyZXR1cm4hMDtyZXR1cm4hMX07CmcuWEw9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgaW4gbilpZihXLmNhbGwodm9pZCAwLG5bRF0sRCxuKSlyZXR1cm4gRH07CnFjPWZ1bmN0aW9uKG4sVyl7cmV0dXJuKFc9Zy5YTChuLFcpKSYmbltXXX07CmcuR0Y9ZnVuY3Rpb24obil7Zm9yKGxldCBXIGluIG4pcmV0dXJuITE7cmV0dXJuITB9OwpnLnRLPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBpbiBuKWRlbGV0ZSBuW1ddfTsKZy4keT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIG4hPT1udWxsJiZXIGluIG4/bltXXTpEfTsKZy5ybT1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRCBpbiBuKWlmKCEoRCBpbiBXKXx8bltEXSE9PVdbRF0pcmV0dXJuITE7Zm9yKGxldCBEIGluIFcpaWYoIShEIGluIG4pKXJldHVybiExO3JldHVybiEwfTsKZy5zMD1mdW5jdGlvbihuKXt2YXIgVz17fTtmb3IobGV0IEQgaW4gbilXW0RdPW5bRF07cmV0dXJuIFd9OwpnLk5jPWZ1bmN0aW9uKG4pe2lmKCFufHx0eXBlb2YgbiE9PSJvYmplY3QiKXJldHVybiBuO2lmKHR5cGVvZiBuLmNsb25lPT09ImZ1bmN0aW9uIilyZXR1cm4gbi5jbG9uZSgpO2lmKHR5cGVvZiBNYXAhPT0idW5kZWZpbmVkIiYmbiBpbnN0YW5jZW9mIE1hcClyZXR1cm4gbmV3IE1hcChuKTtpZih0eXBlb2YgU2V0IT09InVuZGVmaW5lZCImJm4gaW5zdGFuY2VvZiBTZXQpcmV0dXJuIG5ldyBTZXQobik7aWYobiBpbnN0YW5jZW9mIERhdGUpcmV0dXJuIG5ldyBEYXRlKG4uZ2V0VGltZSgpKTt2YXIgVz1BcnJheS5pc0FycmF5KG4pP1tdOnR5cGVvZiBBcnJheUJ1ZmZlciE9PSJmdW5jdGlvbiJ8fHR5cGVvZiBBcnJheUJ1ZmZlci5pc1ZpZXchPT0iZnVuY3Rpb24ifHwhQXJyYXlCdWZmZXIuaXNWaWV3KG4pfHxuIGluc3RhbmNlb2YgRGF0YVZpZXc/e306bmV3IG4uY29uc3RydWN0b3Iobi5sZW5ndGgpO2ZvcihsZXQgRCBpbiBuKVdbRF09Zy5OYyhuW0RdKTtyZXR1cm4gV307CmcuWXk9ZnVuY3Rpb24obixXKXtmb3IobGV0IHY9MTt2PGFyZ3VtZW50cy5sZW5ndGg7disrKXt2YXIgRD1hcmd1bWVudHNbdl07Zm9yKGIgaW4gRCluW2JdPURbYl07Zm9yKGxldCBrPTA7azxwVC5sZW5ndGg7aysrKXt2YXIgYj1wVFtrXTtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoRCxiKSYmKG5bYl09RFtiXSl9fX07ClhaeD1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IFo0KG5bMF0udG9Mb3dlckNhc2UoKSl9OwpnLkh4PWZ1bmN0aW9uKG4sLi4uVyl7aWYoVy5sZW5ndGg9PT0wKXJldHVybiBrMyhuWzBdKTt2YXIgRD1uWzBdO2ZvcihsZXQgYj0wO2I8Vy5sZW5ndGg7YisrKUQrPWVuY29kZVVSSUNvbXBvbmVudChXW2JdKStuW2IrMV07cmV0dXJuIGszKEQpfTsKZy5TcD1mdW5jdGlvbihuKXtyZXR1cm4gbj9uZXcgZlQoZy5KSyhuKSk6SWh8fChJaD1uZXcgZlQpfTsKQUs9ZnVuY3Rpb24obixXKXtyZXR1cm4gdHlwZW9mIFc9PT0ic3RyaW5nIj9uLmdldEVsZW1lbnRCeUlkKFcpOld9OwpnLktUPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9V3x8ZG9jdW1lbnQ7RC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lP249RC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKG4pWzBdOihEPWRvY3VtZW50LG49bj8oV3x8RCkucXVlcnlTZWxlY3RvcihuPyIuIituOiIiKTpnLm1CKEQsIioiLG4sVylbMF18fG51bGwpO3JldHVybiBufHxudWxsfTsKZy5tQj1mdW5jdGlvbihuLFcsRCxiKXtuPWJ8fG47cmV0dXJuKFc9VyYmVyE9IioiP1N0cmluZyhXKS50b1VwcGVyQ2FzZSgpOiIiKXx8RD9uLnF1ZXJ5U2VsZWN0b3JBbGwoVysoRD8iLiIrRDoiIikpOm4uZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKX07CmcuUHg9ZnVuY3Rpb24obixXKXtnLmFfKFcsZnVuY3Rpb24oRCxiKXtiPT0ic3R5bGUiP24uc3R5bGUuY3NzVGV4dD1EOmI9PSJjbGFzcyI/bi5jbGFzc05hbWU9RDpiPT0iZm9yIj9uLmh0bWxGb3I9RDpPMC5oYXNPd25Qcm9wZXJ0eShiKT9uLnNldEF0dHJpYnV0ZShPMFtiXSxEKTpnLmpVKGIsImFyaWEtIil8fGcualUoYiwiZGF0YS0iKT9uLnNldEF0dHJpYnV0ZShiLEQpOm5bYl09RH0pfTsKZy5FMD1mdW5jdGlvbihuKXt2YXIgVz1uLnNjcm9sbGluZ0VsZW1lbnQ/bi5zY3JvbGxpbmdFbGVtZW50OmcuWmx8fG4uY29tcGF0TW9kZSE9IkNTUzFDb21wYXQiP24uYm9keXx8bi5kb2N1bWVudEVsZW1lbnQ6bi5kb2N1bWVudEVsZW1lbnQ7bj1uLmRlZmF1bHRWaWV3O3JldHVybiBuZXcgZy5NWShuPy5wYWdlWE9mZnNldHx8Vy5zY3JvbGxMZWZ0LG4/LnBhZ2VZT2Zmc2V0fHxXLnNjcm9sbFRvcCl9OwpnLmlrPWZ1bmN0aW9uKG4pe3JldHVybiBuP24uZGVmYXVsdFZpZXc6d2luZG93fTsKZy5kbT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9YXJndW1lbnRzLHY9ZG9jdW1lbnQsaz1iWzFdLGg9dWsodixTdHJpbmcoYlswXSkpO2smJih0eXBlb2Ygaz09PSJzdHJpbmciP2guY2xhc3NOYW1lPWs6QXJyYXkuaXNBcnJheShrKT9oLmNsYXNzTmFtZT1rLmpvaW4oIiAiKTpnLlB4KGgsaykpO2IubGVuZ3RoPjImJm9oKHYsaCxiLDIpO3JldHVybiBofTsKb2g9ZnVuY3Rpb24obixXLEQsYil7ZnVuY3Rpb24gdihrKXtrJiZXLmFwcGVuZENoaWxkKHR5cGVvZiBrPT09InN0cmluZyI/bi5jcmVhdGVUZXh0Tm9kZShrKTprKX0KZm9yKDtiPEQubGVuZ3RoO2IrKyl7bGV0IGs9RFtiXTshZy5ZMihrKXx8Zy5mdChrKSYmay5ub2RlVHlwZT4wP3Yoayk6Zy55MihrJiZ0eXBlb2Ygay5sZW5ndGg9PSJudW1iZXIiJiZ0eXBlb2Ygay5pdGVtPT0iZnVuY3Rpb24iP2cuUk0oayk6ayx2KX19OwpnLnpGPWZ1bmN0aW9uKG4pe3JldHVybiB1ayhkb2N1bWVudCxuKX07CnVrPWZ1bmN0aW9uKG4sVyl7Vz1TdHJpbmcoVyk7bi5jb250ZW50VHlwZT09PSJhcHBsaWNhdGlvbi94aHRtbCt4bWwiJiYoVz1XLnRvTG93ZXJDYXNlKCkpO3JldHVybiBuLmNyZWF0ZUVsZW1lbnQoVyl9OwpnLmxrPWZ1bmN0aW9uKG4pe3JldHVybiBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShTdHJpbmcobikpfTsKZy5URj1mdW5jdGlvbihuKXtmb3IodmFyIFc7Vz1uLmZpcnN0Q2hpbGQ7KW4ucmVtb3ZlQ2hpbGQoVyl9OwpnLmpwPWZ1bmN0aW9uKG4sVyxEKXtuLmluc2VydEJlZm9yZShXLG4uY2hpbGROb2Rlc1tEXXx8bnVsbCl9OwpnLkNUPWZ1bmN0aW9uKG4pe3JldHVybiBuJiZuLnBhcmVudE5vZGU/bi5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG4pOm51bGx9OwpnLkJ4PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4mJlc/bj09V3x8bi5jb250YWlucyhXKTohMX07CmcuSks9ZnVuY3Rpb24obil7cmV0dXJuIG4ubm9kZVR5cGU9PTk/bjpuLm93bmVyRG9jdW1lbnR8fG4uZG9jdW1lbnR9OwpnLkZMPWZ1bmN0aW9uKG4sVyl7aWYoInRleHRDb250ZW50ImluIG4pbi50ZXh0Q29udGVudD1XO2Vsc2UgaWYobi5ub2RlVHlwZT09MyluLmRhdGE9U3RyaW5nKFcpO2Vsc2UgaWYobi5maXJzdENoaWxkJiZuLmZpcnN0Q2hpbGQubm9kZVR5cGU9PTMpe2Zvcig7bi5sYXN0Q2hpbGQhPW4uZmlyc3RDaGlsZDspbi5yZW1vdmVDaGlsZChuLmxhc3RDaGlsZCk7bi5maXJzdENoaWxkLmRhdGE9U3RyaW5nKFcpfWVsc2UgZy5URihuKSxuLmFwcGVuZENoaWxkKGcuSksobikuY3JlYXRlVGV4dE5vZGUoU3RyaW5nKFcpKSl9OwpNYz1mdW5jdGlvbihuKXtyZXR1cm4gbi50YWdOYW1lPT0iQSImJm4uaGFzQXR0cmlidXRlKCJocmVmIil8fG4udGFnTmFtZT09IklOUFVUInx8bi50YWdOYW1lPT0iVEVYVEFSRUEifHxuLnRhZ05hbWU9PSJTRUxFQ1QifHxuLnRhZ05hbWU9PSJCVVRUT04iPyFuLmRpc2FibGVkJiYoIW4uaGFzQXR0cmlidXRlKCJ0YWJpbmRleCIpfHx3bShuKSk6bi5oYXNBdHRyaWJ1dGUoInRhYmluZGV4IikmJndtKG4pfTsKd209ZnVuY3Rpb24obil7bj1uLnRhYkluZGV4O3JldHVybiB0eXBlb2Ygbj09PSJudW1iZXIiJiZuPj0wJiZuPDMyNzY4fTsKZy5SaD1mdW5jdGlvbihuLFcsRCl7biYmIUQmJihuPW4ucGFyZW50Tm9kZSk7Zm9yKEQ9MDtuOyl7aWYoVyhuKSlyZXR1cm4gbjtuPW4ucGFyZW50Tm9kZTtEKyt9cmV0dXJuIG51bGx9OwpmVD1mdW5jdGlvbihuKXt0aGlzLk49bnx8Zy5xaS5kb2N1bWVudHx8ZG9jdW1lbnR9OwpwTXg9ZnVuY3Rpb24obil7c1YoUVEsVlEsMSxuKX07CllNeD1mdW5jdGlvbihuLFc9Y3gpe2lmKCFhaCl7bj1uLm5hdmlnYXRvcj8udXNlckFnZW50RGF0YTtpZighbnx8dHlwZW9mIG4uZ2V0SGlnaEVudHJvcHlWYWx1ZXMhPT0iZnVuY3Rpb24ifHxuLmJyYW5kcyYmdHlwZW9mIG4uYnJhbmRzLm1hcCE9PSJmdW5jdGlvbiIpcmV0dXJuIFByb21pc2UucmVqZWN0KEVycm9yKCJVQUNIIHVuYXZhaWxhYmxlIikpO3BNeCgobi5icmFuZHN8fFtdKS5tYXAoYj0+e3ZhciB2PW5ldyBWUTt2PWcuU0UodiwxLGIuYnJhbmQpO3JldHVybiBnLlNFKHYsMixiLnZlcnNpb24pfSkpOwp0eXBlb2Ygbi5tb2JpbGU9PT0iYm9vbGVhbiImJm96KFFRLDIsT18obi5tb2JpbGUpKTthaD1uLmdldEhpZ2hFbnRyb3B5VmFsdWVzKFcpfXZhciBEPW5ldyBTZXQoVyk7cmV0dXJuIGFoLnRoZW4oYj0+e3ZhciB2PVFRLmNsb25lKCk7RC5oYXMoInBsYXRmb3JtIikmJmcuU0UodiwzLGIucGxhdGZvcm0pO0QuaGFzKCJwbGF0Zm9ybVZlcnNpb24iKSYmZy5TRSh2LDQsYi5wbGF0Zm9ybVZlcnNpb24pO0QuaGFzKCJhcmNoaXRlY3R1cmUiKSYmZy5TRSh2LDUsYi5hcmNoaXRlY3R1cmUpO0QuaGFzKCJtb2RlbCIpJiZnLlNFKHYsNixiLm1vZGVsKTtELmhhcygidWFGdWxsVmVyc2lvbiIpJiZnLlNFKHYsNyxiLnVhRnVsbFZlcnNpb24pO3JldHVybiB2LmJZKCl9KS5jYXRjaCgoKT0+UVEuYlkoKSl9OwpuSz1mdW5jdGlvbihuKXtyZXR1cm4gS24obiwxLDEpfTsKdkw9ZnVuY3Rpb24obixXKXskOShuLk4sV0wsMSxXKTtIVyhXLDEpfHxuSyhXKTtuLmdSfHwoVz1ERChuKSxZOShXLDUpfHxnLlNFKFcsNSxuLmxvY2FsZSkpO24udWFjaCYmKFc9REQobiksZ2UoVyxiSSw5KXx8JDkoVyxiSSw5LG4udWFjaCkpfTsKREQ9ZnVuY3Rpb24obil7dmFyIFc9Z2Uobi5OLFdMLDEpO1d8fChXPW5ldyBXTCx2TChuLFcpKTtuPVc7Vz1nZShuLGtFLDExKTtXfHwoVz1uZXcga0UsJDkobixrRSwxMSxXKSk7cmV0dXJuIFd9OwpIYlM9ZnVuY3Rpb24obixXKXtuLko9V307CkpGWj1mdW5jdGlvbihuKXt2YXIgVz1uLmdSP3ZvaWQgMDpnLmlrKCk7Vz9ZTXgoVyxjeCkudGhlbihEPT57bi51YWNoPWY0MihEPz8iW10iKTtEPUREKG4pOyQ5KEQsYkksOSxuLnVhY2gpO3JldHVybiEwfSkuY2F0Y2goKCk9PiExKTpQcm9taXNlLnJlc29sdmUoITEpfTsKZy5oSD1mdW5jdGlvbihuLFcsRCxiKXt0aGlzLlg9bjt0aGlzLmo9Vzt0aGlzLk49dGhpcy5XPW47dGhpcy5WPUR8fDA7dGhpcy5LPWJ8fDJ9OwpnLnhFPWZ1bmN0aW9uKG4pe24uTj1NYXRoLm1pbihuLmosbi5OKm4uSyk7bi5XPU1hdGgubWluKG4uaixuLk4rKG4uVj9NYXRoLnJvdW5kKG4uViooTWF0aC5yYW5kb20oKS0uNSkqMipuLk4pOjApKTtuLkorK307CkxLPWZ1bmN0aW9uKCl7cmV0dXJuImh0dHBzOi8vcGxheS5nb29nbGUuY29tL2xvZz9mb3JtYXQ9anNvbiZoYXNmYXN0PXRydWUifTsKSTRTPWZ1bmN0aW9uKG4sVyl7aWYoIW4uUyQpcmV0dXJuKCk9Pnt9Owp2YXIgRD0oKT0+e24uZmx1c2goKX07CnJldHVybiBXPygpPT57VygpLnRoZW4oRCl9OkR9OwplZz1mdW5jdGlvbihuKXtuLlcuaXNGaW5hbD0hMDtuLmZsdXNoKCk7bi5XLmlzRmluYWw9ITF9OwpnRD1mdW5jdGlvbihuKXtuLll8fChuLlk9TEsoKSk7dHJ5e3JldHVybihuZXcgVVJMKG4uWSkpLnRvU3RyaW5nKCl9Y2F0Y2goVyl7cmV0dXJuKG5ldyBVUkwobi5ZLGcuaWsoKS5sb2NhdGlvbi5vcmlnaW4pKS50b1N0cmluZygpfX07CkFGWj1mdW5jdGlvbihuKXtTTVMobiwoVyxEKT0+e1c9bmV3IFVSTChXKTtXLnNlYXJjaFBhcmFtcy5zZXQoImZvcm1hdCIsImpzb24iKTt2YXIgYj0hMTt0cnl7Yj1nLmlrKCkubmF2aWdhdG9yLnNlbmRCZWFjb24oVy50b1N0cmluZygpLEQuYlkoKSl9Y2F0Y2h7fWJ8fChuLkQ9ITEpO3JldHVybiBifSl9OwptVXc9ZnVuY3Rpb24obixXLEQ9bnVsbCxiPW4ud2l0aENyZWRlbnRpYWxzKXt2YXIgdj17fSxrPW5ldyBVUkwoZ0QobikpO0QmJih2LkF1dGhvcml6YXRpb249RCk7bi5zZXNzaW9uSW5kZXgmJih2WyJYLUdvb2ctQXV0aFVzZXIiXT1uLnNlc3Npb25JbmRleCxrLnNlYXJjaFBhcmFtcy5zZXQoImF1dGh1c2VyIixuLnNlc3Npb25JbmRleCkpO24ucGFnZUlkJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5KHYsIlgtR29vZy1QYWdlSWQiLHt2YWx1ZTpuLnBhZ2VJZH0pLGsuc2VhcmNoUGFyYW1zLnNldCgicGFnZUlkIixuLnBhZ2VJZCkpO3JldHVybnt1cmw6ay50b1N0cmluZygpLGJvZHk6VyxvJDoxLFpKOnYscmVxdWVzdFR5cGU6IlBPU1QiLHdpdGhDcmVkZW50aWFsczpiLHRpbWVvdXRNaWxsaXM6bi50aW1lb3V0TWlsbGlzfX07ClNNUz1mdW5jdGlvbihuLFcpe2lmKG4uTi5sZW5ndGghPT0wKXt2YXIgRD1uZXcgVVJMKGdEKG4pKTtELnNlYXJjaFBhcmFtcy5kZWxldGUoImZvcm1hdCIpO3ZhciBiPW4ubjEoKTtiJiZELnNlYXJjaFBhcmFtcy5zZXQoImF1dGgiLGIpO0Quc2VhcmNoUGFyYW1zLnNldCgiYXV0aHVzZXIiLG4uc2Vzc2lvbkluZGV4fHwiMCIpO2ZvcihiPTA7YjwxMCYmbi5OLmxlbmd0aDsrK2Ipe2xldCB2PW4uTi5zbGljZSgwLDMyKSxrPW4uVy5idWlsZCh2LG4uWCxuLlYsbi5QZyxuLmNKLG4uTyk7aWYoIVcoRC50b1N0cmluZygpLGspKXsrK24uVjticmVha31uLlg9MDtuLlY9MDtuLmNKPTA7bi5PPTA7bi5OPW4uTi5zbGljZSh2Lmxlbmd0aCl9bi5KLmVuYWJsZWQmJm4uSi5zdG9wKCl9fTsKS2NoPWZ1bmN0aW9uKG4sVyl7bi5idWlsZExhYmVsPVc7cmV0dXJuIG59OwpQX2k9ZnVuY3Rpb24obil7bi5uZXR3b3JrPW5ldyBPYjE7cmV0dXJuIG59OwpaYmg9ZnVuY3Rpb24obixXKXtuLk49V307ClVVYj1mdW5jdGlvbihuKXtuLko9ITA7cmV0dXJuIG59OwpyRnQ9ZnVuY3Rpb24obil7cmV0dXJuIG4uZmllbGRzLm1hcChXPT5XLmZpZWxkVHlwZSl9OwpQTz1mdW5jdGlvbihuLC4uLlcpe1c9WFQoLi4uVyk7cmV0dXJuIG4uTi5oYXMoVyk/bi5OLmdldChXKTp2b2lkIDB9OwokVU09ZnVuY3Rpb24obil7cmV0dXJuIG4uZmllbGRzLm1hcChXPT5XLmZpZWxkTmFtZSl9OwpHNz1mdW5jdGlvbihuLFcsLi4uRCl7RD1YVCguLi5EKTtuLk4uc2V0KEQsW25ldyBxNShXKV0pfTsKeUZaPWZ1bmN0aW9uKG4sVywuLi5EKXt2YXIgYj1QTyhuLC4uLkQpO2I/Yi5wdXNoKG5ldyBxNShXKSk6RzcobixXLC4uLkQpfTsKZVg9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9V15uO2lmKChuPj4xJjE2KTw1JiYobi0zJjExKT49OSYmRFtJWzE3XV0pdmFyIGs9UjAoOCw3NTQxLEQpO2lmKG4tMj4+ND09NCl7az12XjQ4NTA7Zm9yKHZhciBoPVtdOysray1oW0lbNV1dLSh2XjQ3NTQpOylzd2l0Y2goayl7Y2FzZSB2XjQ3NDQ6az12XjQ4MTg7Y29udGludWU7Y2FzZSB2XjQ4NDE6az12XjQ3NjY7YnJlYWs7Y2FzZSB2XjQ4NTE6az12XjQ3NjU7Y29udGludWU7Y2FzZSB2XjQ3NjQ6az12XjQ2NTE7Y2FzZSB2XjQ4MDk6ay09dl40NzQ0O2RlZmF1bHQ6aFtJW3ZeNDc3Ml1dKFN0cmluZ1tJW3ZeNDczNl1dKGspKX12YXIgeD1ofShuXjcwKT4+Mz09MiYmKGs9RFtJW3ZeNjYzM11dKElbdl42NjE2XSksdEhbSVt2XjY2NDddXShrLHZeNjYyMSksdEhbSVt2XjY2NDddXShrLDIpLHRIW0lbdl42NjEzXV0oayx2XjY2MzEpLHg9a1tJW3ZeNjU5Ml1dKElbdl42NjE2XSkpO248PDImMjd8fChlWCh2XjEzMzYsdl42NDI3LEQpLAprPU0zKHZeMTM4Nix2XjU1OTYsRFtJW3ZeMTM0OF1dKElbdl4xMzI3XSl8fElbdl4xMzkyXSlbSVt2XjEzNDVdXShJW3ZeMTM1NF0pLHg9RFtJW3ZeMTQwMV1dPT09SVt2XjEzODZdJiZrW0lbNV1dPjEmJiEha1sxXSk7KG48PDEmMTUpPT00JiZiW0lbNV1dIT0wJiYoRD0oRCViW0lbNV1dK2JbSVs1XV0pJWJbSVs1XV0sYltJWzNdXSgwLDEsYltJWzNdXShELDEsYlswXSlbMF0pKTtuLTM+PjM9PTImJih4PUQhPT1udWxsKTtyZXR1cm4geH07ClhUPWZ1bmN0aW9uKC4uLm4pe3JldHVybiBuP24uam9pbigiLCIpOiJrZXkifTsKRTN0PWZ1bmN0aW9uKG4sLi4uVyl7cmV0dXJuKG49UE8obiwuLi5XKSkmJm4ubGVuZ3RoP25bMF06dm9pZCAwfTsKaWJVPWZ1bmN0aW9uKG4sLi4uVyl7dmFyIEQ9MCxiPUUzdChuLC4uLlcpO2ImJihEPWIuTik7RzcobixEKzEsLi4uVyl9OwokRT1mdW5jdGlvbihuLFcpe3RoaXMudHlwZT1uO3RoaXMuY3VycmVudFRhcmdldD10aGlzLnRhcmdldD1XO3RoaXMuZGVmYXVsdFByZXZlbnRlZD10aGlzLko9ITF9OwpyRD1mdW5jdGlvbihuLFcpeyRFLmNhbGwodGhpcyxuP24udHlwZToiIik7dGhpcy5yZWxhdGVkVGFyZ2V0PXRoaXMuY3VycmVudFRhcmdldD10aGlzLnRhcmdldD1udWxsO3RoaXMuYnV0dG9uPXRoaXMuc2NyZWVuWT10aGlzLnNjcmVlblg9dGhpcy5jbGllbnRZPXRoaXMuY2xpZW50WD0wO3RoaXMua2V5PSIiO3RoaXMuY2hhckNvZGU9dGhpcy5rZXlDb2RlPTA7dGhpcy5tZXRhS2V5PXRoaXMuc2hpZnRLZXk9dGhpcy5hbHRLZXk9dGhpcy5jdHJsS2V5PSExO3RoaXMuc3RhdGU9bnVsbDt0aGlzLnBvaW50ZXJJZD0wO3RoaXMucG9pbnRlclR5cGU9IiI7dGhpcy5OPW51bGw7biYmdGhpcy5pbml0KG4sVyl9OwpONT1mdW5jdGlvbihuKXtyZXR1cm4hKCFufHwhbltzMl0pfTsKbzNiPWZ1bmN0aW9uKG4sVyxELGIsdil7dGhpcy5saXN0ZW5lcj1uO3RoaXMucHJveHk9bnVsbDt0aGlzLnNyYz1XO3RoaXMudHlwZT1EO3RoaXMuY2FwdHVyZT0hIWI7dGhpcy5oYW5kbGVyPXY7dGhpcy5rZXk9Kyt1SWg7dGhpcy51Nz10aGlzLnFfPSExfTsKSEw9ZnVuY3Rpb24obil7bi51Nz0hMDtuLmxpc3RlbmVyPW51bGw7bi5wcm94eT1udWxsO24uc3JjPW51bGw7bi5oYW5kbGVyPW51bGx9OwpmSz1mdW5jdGlvbihuKXt0aGlzLnNyYz1uO3RoaXMubGlzdGVuZXJzPXt9O3RoaXMuTj0wfTsKSkg9ZnVuY3Rpb24obixXKXt2YXIgRD1XLnR5cGU7RCBpbiBuLmxpc3RlbmVycyYmZy5GSShuLmxpc3RlbmVyc1tEXSxXKSYmKEhMKFcpLG4ubGlzdGVuZXJzW0RdLmxlbmd0aD09MCYmKGRlbGV0ZSBuLmxpc3RlbmVyc1tEXSxuLk4tLSkpfTsKSVc9ZnVuY3Rpb24obixXLEQsYil7Zm9yKGxldCB2PTA7djxuLmxlbmd0aDsrK3Ype2xldCBrPW5bdl07aWYoIWsudTcmJmsubGlzdGVuZXI9PVcmJmsuY2FwdHVyZT09ISFEJiZrLmhhbmRsZXI9PWIpcmV0dXJuIHZ9cmV0dXJuLTF9OwpBSD1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKGImJmIub25jZSlyZXR1cm4gU2cobixXLEQsYix2KTtpZihBcnJheS5pc0FycmF5KFcpKXtmb3IobGV0IGs9MDtrPFcubGVuZ3RoO2srKylBSChuLFdba10sRCxiLHYpO3JldHVybiBudWxsfUQ9bWgoRCk7cmV0dXJuIE41KG4pP24uU18oVyxELGcuZnQoYik/ISFiLmNhcHR1cmU6ISFiLHYpOktLKG4sVyxELCExLGIsdil9OwpLSz1mdW5jdGlvbihuLFcsRCxiLHYsayl7aWYoIVcpdGhyb3cgRXJyb3IoIkludmFsaWQgZXZlbnQgdHlwZSIpO3ZhciBoPWcuZnQodik/ISF2LmNhcHR1cmU6ISF2LHg9TzIobik7eHx8KG5bUExdPXg9bmV3IGZLKG4pKTtEPXguYWRkKFcsRCxiLGgsayk7aWYoRC5wcm94eSlyZXR1cm4gRDtiPWRVcigpO0QucHJveHk9YjtiLnNyYz1uO2IubGlzdGVuZXI9RDtpZihuLmFkZEV2ZW50TGlzdGVuZXIpdj09PXZvaWQgMCYmKHY9ITEpLG4uYWRkRXZlbnRMaXN0ZW5lcihXLnRvU3RyaW5nKCksYix2KTtlbHNlIGlmKG4uYXR0YWNoRXZlbnQpbi5hdHRhY2hFdmVudChaRChXLnRvU3RyaW5nKCkpLGIpO2Vsc2UgaWYobi5hZGRMaXN0ZW5lciYmbi5yZW1vdmVMaXN0ZW5lciluLmFkZExpc3RlbmVyKGIpO2Vsc2UgdGhyb3cgRXJyb3IoImFkZEV2ZW50TGlzdGVuZXIgYW5kIGF0dGFjaEV2ZW50IGFyZSB1bmF2YWlsYWJsZS4iKTtVMisrO3JldHVybiBEfTsKZFVyPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gbihEKXtyZXR1cm4gVy5jYWxsKG4uc3JjLG4ubGlzdGVuZXIsRCl9CnZhciBXPXpCdDtyZXR1cm4gbn07ClNnPWZ1bmN0aW9uKG4sVyxELGIsdil7aWYoQXJyYXkuaXNBcnJheShXKSl7Zm9yKGxldCBrPTA7azxXLmxlbmd0aDtrKyspU2cobixXW2tdLEQsYix2KTtyZXR1cm4gbnVsbH1EPW1oKEQpO3JldHVybiBONShuKT9uLmVGKFcsRCxnLmZ0KGIpPyEhYi5jYXB0dXJlOiEhYix2KTpLSyhuLFcsRCwhMCxiLHYpfTsKeTc9ZnVuY3Rpb24obixXLEQsYix2KXtpZihBcnJheS5pc0FycmF5KFcpKWZvcihsZXQgaz0wO2s8Vy5sZW5ndGg7aysrKXk3KG4sV1trXSxELGIsdik7ZWxzZSBiPWcuZnQoYik/ISFiLmNhcHR1cmU6ISFiLEQ9bWgoRCksTjUobik/bi53SChXLEQsYix2KTpuJiYobj1PMihuKSkmJihXPW4uc2MoVyxELGIsdikpJiZFMihXKX07CkUyPWZ1bmN0aW9uKG4pe2lmKHR5cGVvZiBuIT09Im51bWJlciImJm4mJiFuLnU3KXt2YXIgVz1uLnNyYztpZihONShXKSlKSChXLmRfLG4pO2Vsc2V7dmFyIEQ9bi50eXBlLGI9bi5wcm94eTtXLnJlbW92ZUV2ZW50TGlzdGVuZXI/Vy5yZW1vdmVFdmVudExpc3RlbmVyKEQsYixuLmNhcHR1cmUpOlcuZGV0YWNoRXZlbnQ/Vy5kZXRhY2hFdmVudChaRChEKSxiKTpXLmFkZExpc3RlbmVyJiZXLnJlbW92ZUxpc3RlbmVyJiZXLnJlbW92ZUxpc3RlbmVyKGIpO1UyLS07KEQ9TzIoVykpPyhKSChELG4pLEQuTj09MCYmKEQuc3JjPW51bGwsV1tQTF09bnVsbCkpOkhMKG4pfX19OwpaRD1mdW5jdGlvbihuKXtyZXR1cm4gbiBpbiBpST9pSVtuXTppSVtuXT0ib24iK259Owp6QnQ9ZnVuY3Rpb24obixXKXtpZihuLnU3KW49ITA7ZWxzZXtXPW5ldyByRChXLHRoaXMpO2xldCBEPW4ubGlzdGVuZXIsYj1uLmhhbmRsZXJ8fG4uc3JjO24ucV8mJkUyKG4pO249RC5jYWxsKGIsVyl9cmV0dXJuIG59OwpPMj1mdW5jdGlvbihuKXtuPW5bUExdO3JldHVybiBuIGluc3RhbmNlb2YgZks/bjpudWxsfTsKbWg9ZnVuY3Rpb24obil7aWYodHlwZW9mIG49PT0iZnVuY3Rpb24iKXJldHVybiBuO25bdUldfHwoblt1SV09ZnVuY3Rpb24oVyl7cmV0dXJuIG4uaGFuZGxlRXZlbnQoVyl9KTsKcmV0dXJuIG5bdUldfTsKZy5vVz1mdW5jdGlvbigpe2cuRk0uY2FsbCh0aGlzKTt0aGlzLmRfPW5ldyBmSyh0aGlzKTt0aGlzLkhkPXRoaXM7dGhpcy5sWj1udWxsfTsKZEQ9ZnVuY3Rpb24obixXLEQsYil7Vz1uLmRfLmxpc3RlbmVyc1tTdHJpbmcoVyldO2lmKCFXKXJldHVybiEwO1c9Vy5jb25jYXQoKTt2YXIgdj0hMDtmb3IobGV0IGs9MDtrPFcubGVuZ3RoOysrayl7bGV0IGg9V1trXTtpZihoJiYhaC51NyYmaC5jYXB0dXJlPT1EKXtsZXQgeD1oLmxpc3RlbmVyLEw9aC5oYW5kbGVyfHxoLnNyYztoLnFfJiZKSChuLmRfLGgpO3Y9eC5jYWxsKEwsYikhPT0hMSYmdn19cmV0dXJuIHYmJiFiLmRlZmF1bHRQcmV2ZW50ZWR9OwpnLlQ3PWZ1bmN0aW9uKG4pe249KDAsZy56Nykobik7bEl8fChsST1sNGooKSk7bEkobil9OwpsNGo9ZnVuY3Rpb24oKXtpZih0eXBlb2YgTWVzc2FnZUNoYW5uZWwhPT0idW5kZWZpbmVkIil7bGV0IG49bmV3IE1lc3NhZ2VDaGFubmVsLFc9e30sRD1XO24ucG9ydDEub25tZXNzYWdlPWZ1bmN0aW9uKCl7aWYoVy5uZXh0IT09dm9pZCAwKXtXPVcubmV4dDtsZXQgYj1XLmtBO1cua0E9bnVsbDtiKCl9fTsKcmV0dXJuIGZ1bmN0aW9uKGIpe0QubmV4dD17a0E6Yn07RD1ELm5leHQ7bi5wb3J0Mi5wb3N0TWVzc2FnZSgwKX19cmV0dXJuIGZ1bmN0aW9uKG4pe2cucWkuc2V0VGltZW91dChuLDApfX07ClR6cj1mdW5jdGlvbigpe2Zvcih2YXIgbjtuPWpnLnJlbW92ZSgpOyl7dHJ5e24uTi5jYWxsKG4uc2NvcGUpfWNhdGNoKFcpe2g0KFcpfUNLLnB1dChuKX1CTD0hMX07CmcuRlQ9ZnVuY3Rpb24oKXt9OwpqTWg9ZnVuY3Rpb24obil7dmFyIFc9V3x8MDtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbi5hcHBseSh0aGlzLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwLFcpKX19OwpnLndEPWZ1bmN0aW9uKG4pe3ZhciBXPSExLEQ7cmV0dXJuIGZ1bmN0aW9uKCl7V3x8KEQ9bigpLFc9ITApO3JldHVybiBEfX07CmcuWDE9ZnVuY3Rpb24obixXKXt0aGlzLk49MDt0aGlzLks9dm9pZCAwO3RoaXMuWD10aGlzLko9dGhpcy5XPW51bGw7dGhpcy5qPXRoaXMuVj0hMTtpZihuIT1nLkZUKXRyeXtsZXQgRD10aGlzO24uY2FsbChXLGZ1bmN0aW9uKGIpe2dwKEQsMixiKX0sZnVuY3Rpb24oYil7Z3AoRCwzLGIpfSl9Y2F0Y2goRCl7Z3AodGhpcywzLEQpfX07CnE4PWZ1bmN0aW9uKCl7dGhpcy5uZXh0PXRoaXMuY29udGV4dD10aGlzLko9dGhpcy5XPXRoaXMuTj1udWxsO3RoaXMuWD0hMX07CmcudCQ9ZnVuY3Rpb24obixXLEQpe3ZhciBiPUczLmdldCgpO2IuVz1uO2IuSj1XO2IuY29udGV4dD1EO3JldHVybiBifTsKJEc9ZnVuY3Rpb24obil7aWYobiBpbnN0YW5jZW9mIGcuWDEpcmV0dXJuIG47dmFyIFc9bmV3IGcuWDEoZy5GVCk7Z3AoVywyLG4pO3JldHVybiBXfTsKZy5ycD1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IGcuWDEoZnVuY3Rpb24oVyxEKXtEKG4pfSl9OwpwcT1mdW5jdGlvbihuLFcsRCxiKXtnLk44KG4sZy50JChXfHxnLkZULER8fG51bGwsYikpfTsKWUc9ZnVuY3Rpb24obixXKXtpZihuLk49PTApaWYobi5XKXt2YXIgRD1uLlc7aWYoRC5KKXt2YXIgYj0wLHY9bnVsbCxrPW51bGw7Zm9yKGxldCBoPUQuSjtoJiYoaC5YfHwoYisrLGguTj09biYmKHY9aCksISh2JiZiPjEpKSk7aD1oLm5leHQpdnx8KGs9aCk7diYmKEQuTj09MCYmYj09MT9ZRyhELFcpOihrPyhiPWssYi5uZXh0PT1ELlgmJihELlg9YiksYi5uZXh0PWIubmV4dC5uZXh0KTpISihEKSxmcShELHYsMyxXKSkpfW4uVz1udWxsfWVsc2UgZ3AobiwzLFcpfTsKZy5OOD1mdW5jdGlvbihuLFcpe24uSnx8bi5OIT0yJiZuLk4hPTN8fEokKG4pO24uWD9uLlgubmV4dD1XOm4uSj1XO24uWD1XfTsKU089ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9Zy50JChudWxsLG51bGwsbnVsbCk7di5OPW5ldyBnLlgxKGZ1bmN0aW9uKGssaCl7di5XPVc/ZnVuY3Rpb24oeCl7dHJ5e2xldCBMPVcuY2FsbChiLHgpO2soTCl9Y2F0Y2goTCl7aChMKX19Oms7CnYuSj1EP2Z1bmN0aW9uKHgpe3RyeXtsZXQgTD1ELmNhbGwoYix4KTtMPT09dm9pZCAwJiZ4IGluc3RhbmNlb2YgZy5JNT9oKHgpOmsoTCl9Y2F0Y2goTCl7aChMKX19Omh9KTsKdi5OLlc9bjtnLk44KG4sdik7cmV0dXJuIHYuTn07CmdwPWZ1bmN0aW9uKG4sVyxEKXtuLk49PTAmJihuPT09RCYmKFc9MyxEPW5ldyBUeXBlRXJyb3IoIlByb21pc2UgY2Fubm90IHJlc29sdmUgdG8gaXRzZWxmIikpLG4uTj0xLGcuQSQoRCxuLklRLG4uQVMsbil8fChuLks9RCxuLk49VyxuLlc9bnVsbCxKJChuKSxXIT0zfHxEIGluc3RhbmNlb2YgZy5JNXx8Q18xKG4sRCkpKX07CmcuQSQ9ZnVuY3Rpb24obixXLEQsYil7aWYobiBpbnN0YW5jZW9mIGcuWDEpcmV0dXJuIHBxKG4sVyxELGIpLCEwO2lmKG4pdHJ5e3ZhciB2PSEhbi4kZ29vZ19UaGVuYWJsZX1jYXRjaChrKXt2PSExfWVsc2Ugdj0hMTtpZih2KXJldHVybiBuLnRoZW4oVyxELGIpLCEwO2lmKGcuZnQobikpdHJ5e2xldCBrPW4udGhlbjtpZih0eXBlb2Ygaz09PSJmdW5jdGlvbiIpcmV0dXJuIEJ6aShuLGssVyxELGIpLCEwfWNhdGNoKGspe3JldHVybiBELmNhbGwoYixrKSwhMH1yZXR1cm4hMX07CkJ6aT1mdW5jdGlvbihuLFcsRCxiLHYpe2Z1bmN0aW9uIGsoTCl7eHx8KHg9ITAsYi5jYWxsKHYsTCkpfQpmdW5jdGlvbiBoKEwpe3h8fCh4PSEwLEQuY2FsbCh2LEwpKX0KdmFyIHg9ITE7dHJ5e1cuY2FsbChuLGgsayl9Y2F0Y2goTCl7ayhMKX19OwpKJD1mdW5jdGlvbihuKXtuLlZ8fChuLlY9ITAsZy5tSyhuLnlzLG4pKX07CkhKPWZ1bmN0aW9uKG4pe3ZhciBXPW51bGw7bi5KJiYoVz1uLkosbi5KPVcubmV4dCxXLm5leHQ9bnVsbCk7bi5KfHwobi5YPW51bGwpO3JldHVybiBXfTsKZnE9ZnVuY3Rpb24obixXLEQsYil7aWYoRD09MyYmVy5KJiYhVy5YKWZvcig7biYmbi5qO249bi5XKW4uaj0hMTtpZihXLk4pVy5OLlc9bnVsbCxLcShXLEQsYik7ZWxzZSB0cnl7Vy5YP1cuVy5jYWxsKFcuY29udGV4dCk6S3EoVyxELGIpfWNhdGNoKHYpe091LmNhbGwobnVsbCx2KX1HMy5wdXQoVyl9OwpLcT1mdW5jdGlvbihuLFcsRCl7Vz09Mj9uLlcuY2FsbChuLmNvbnRleHQsRCk6bi5KJiZuLkouY2FsbChuLmNvbnRleHQsRCl9OwpDXzE9ZnVuY3Rpb24obixXKXtuLmo9ITA7Zy5tSyhmdW5jdGlvbigpe24uaiYmT3UuY2FsbChudWxsLFcpfSl9OwpnLkk1PWZ1bmN0aW9uKG4pe2cuVGIuY2FsbCh0aGlzLG4pfTsKZy5QSj1mdW5jdGlvbihuLFcpe2cub1cuY2FsbCh0aGlzKTt0aGlzLmd0PW58fDE7dGhpcy5WNz1XfHxnLnFpO3RoaXMuaEU9KDAsZy5LdCkodGhpcy5SUSx0aGlzKTt0aGlzLmpiPWcuVXcoKX07CmcuWnQ9ZnVuY3Rpb24obixXLEQpe2lmKHR5cGVvZiBuPT09ImZ1bmN0aW9uIilEJiYobj0oMCxnLkt0KShuLEQpKTtlbHNlIGlmKG4mJnR5cGVvZiBuLmhhbmRsZUV2ZW50PT0iZnVuY3Rpb24iKW49KDAsZy5LdCkobi5oYW5kbGVFdmVudCxuKTtlbHNlIHRocm93IEVycm9yKCJJbnZhbGlkIGxpc3RlbmVyIGFyZ3VtZW50Iik7cmV0dXJuIE51bWJlcihXKT4yMTQ3NDgzNjQ3Py0xOmcucWkuc2V0VGltZW91dChuLFd8fDApfTsKZy5VdT1mdW5jdGlvbihuLFcpe3ZhciBEPW51bGw7cmV0dXJuKG5ldyBnLlgxKGZ1bmN0aW9uKGIsdil7RD1nLlp0KGZ1bmN0aW9uKCl7YihXKX0sbik7CkQ9PS0xJiZ2KEVycm9yKCJGYWlsZWQgdG8gc2NoZWR1bGUgdGltZXIuIikpfSkpLnNQKGZ1bmN0aW9uKGIpe2cucWkuY2xlYXJUaW1lb3V0KEQpOwp0aHJvdyBiO30pfTsKRXU9ZnVuY3Rpb24obixXLC4uLkQpe24uVy5oYXMoVyl8fG4uVy5zZXQoVyxuZXcgeTgoVyxEKSl9Owp1ZT1mdW5jdGlvbihuLFcsLi4uRCl7bi5XLmhhcyhXKXx8bi5XLnNldChXLG5ldyBpZShXLEQpKX07Cm81PWZ1bmN0aW9uKG4pe24uSi5lbmFibGVkfHxuLkouc3RhcnQoKTtuLlYrKztuLlY+PW4uWCYmbi5qKCl9OwpGY2I9ZnVuY3Rpb24obil7Zm9yKGxldCBXPTA7VzxuLmxlbmd0aDtXKyspbltXXS5jbGVhcigpfTsKZHA9ZnVuY3Rpb24obixXLC4uLkQpeyhXPW4uTihXKSkmJlcgaW5zdGFuY2VvZiBpZSYmKGliVShXLC4uLkQpLG81KG4pKX07CnozPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlIDIwMDpyZXR1cm4gMDtjYXNlIDQwMDpyZXR1cm4gMztjYXNlIDQwMTpyZXR1cm4gMTY7Y2FzZSA0MDM6cmV0dXJuIDc7Y2FzZSA0MDQ6cmV0dXJuIDU7Y2FzZSA0MDk6cmV0dXJuIDEwO2Nhc2UgNDEyOnJldHVybiA5O2Nhc2UgNDI5OnJldHVybiA4O2Nhc2UgNDk5OnJldHVybiAxO2Nhc2UgNTAwOnJldHVybiAyO2Nhc2UgNTAxOnJldHVybiAxMjtjYXNlIDUwMzpyZXR1cm4gMTQ7Y2FzZSA1MDQ6cmV0dXJuIDQ7ZGVmYXVsdDpyZXR1cm4gMn19Owp3TVM9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgMDpyZXR1cm4iT0siO2Nhc2UgMTpyZXR1cm4iQ0FOQ0VMTEVEIjtjYXNlIDI6cmV0dXJuIlVOS05PV04iO2Nhc2UgMzpyZXR1cm4iSU5WQUxJRF9BUkdVTUVOVCI7Y2FzZSA0OnJldHVybiJERUFETElORV9FWENFRURFRCI7Y2FzZSA1OnJldHVybiJOT1RfRk9VTkQiO2Nhc2UgNjpyZXR1cm4iQUxSRUFEWV9FWElTVFMiO2Nhc2UgNzpyZXR1cm4iUEVSTUlTU0lPTl9ERU5JRUQiO2Nhc2UgMTY6cmV0dXJuIlVOQVVUSEVOVElDQVRFRCI7Y2FzZSA4OnJldHVybiJSRVNPVVJDRV9FWEhBVVNURUQiO2Nhc2UgOTpyZXR1cm4iRkFJTEVEX1BSRUNPTkRJVElPTiI7Y2FzZSAxMDpyZXR1cm4iQUJPUlRFRCI7Y2FzZSAxMTpyZXR1cm4iT1VUX09GX1JBTkdFIjtjYXNlIDEyOnJldHVybiJVTklNUExFTUVOVEVEIjtjYXNlIDEzOnJldHVybiJJTlRFUk5BTCI7Y2FzZSAxNDpyZXR1cm4iVU5BVkFJTEFCTEUiO2Nhc2UgMTU6cmV0dXJuIkRBVEFfTE9TUyI7CmRlZmF1bHQ6cmV0dXJuIiJ9fTsKbGU9ZnVuY3Rpb24oKXt9OwpUMz1mdW5jdGlvbihuLFcsRCl7aWYoVz09bnVsbClELnB1c2goIm51bGwiKTtlbHNle2lmKHR5cGVvZiBXPT0ib2JqZWN0Iil7aWYoQXJyYXkuaXNBcnJheShXKSl7dmFyIGI9VztXPWIubGVuZ3RoO0QucHVzaCgiWyIpO3ZhciB2PSIiO2Zvcih2YXIgaz0wO2s8VztrKyspRC5wdXNoKHYpLFQzKG4sYltrXSxEKSx2PSIsIjtELnB1c2goIl0iKTtyZXR1cm59aWYoVyBpbnN0YW5jZW9mIFN0cmluZ3x8VyBpbnN0YW5jZW9mIE51bWJlcnx8VyBpbnN0YW5jZW9mIEJvb2xlYW4pVz1XLnZhbHVlT2YoKTtlbHNle0QucHVzaCgieyIpO3Y9IiI7Zm9yKGIgaW4gVylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoVyxiKSYmKGs9V1tiXSx0eXBlb2YgayE9ImZ1bmN0aW9uIiYmKEQucHVzaCh2KSxqTyhiLEQpLEQucHVzaCgiOiIpLFQzKG4sayxEKSx2PSIsIikpO0QucHVzaCgifSIpO3JldHVybn19c3dpdGNoKHR5cGVvZiBXKXtjYXNlICJzdHJpbmciOmpPKFcsRCk7YnJlYWs7CmNhc2UgIm51bWJlciI6RC5wdXNoKGlzRmluaXRlKFcpJiYhaXNOYU4oVyk/U3RyaW5nKFcpOiJudWxsIik7YnJlYWs7Y2FzZSAiYm9vbGVhbiI6RC5wdXNoKFN0cmluZyhXKSk7YnJlYWs7Y2FzZSAiZnVuY3Rpb24iOkQucHVzaCgibnVsbCIpO2JyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoIlVua25vd24gdHlwZTogIit0eXBlb2YgVyk7fX19OwpqTz1mdW5jdGlvbihuLFcpe1cucHVzaCgnIicsbi5yZXBsYWNlKE1qWixmdW5jdGlvbihEKXt2YXIgYj1DcVtEXTtifHwoYj0iXFx1IisoRC5jaGFyQ29kZUF0KDApfDY1NTM2KS50b1N0cmluZygxNikuc2xpY2UoMSksQ3FbRF09Yik7cmV0dXJuIGJ9KSwnIicpfTsKUkJiPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlIDA6cmV0dXJuIk5vIEVycm9yIjtjYXNlIDE6cmV0dXJuIkFjY2VzcyBkZW5pZWQgdG8gY29udGVudCBkb2N1bWVudCI7Y2FzZSAyOnJldHVybiJGaWxlIG5vdCBmb3VuZCI7Y2FzZSAzOnJldHVybiJGaXJlZm94IHNpbGVudGx5IGVycm9yZWQiO2Nhc2UgNDpyZXR1cm4iQXBwbGljYXRpb24gY3VzdG9tIGVycm9yIjtjYXNlIDU6cmV0dXJuIkFuIGV4Y2VwdGlvbiBvY2N1cnJlZCI7Y2FzZSA2OnJldHVybiJIdHRwIHJlc3BvbnNlIGF0IDQwMCBvciA1MDAgbGV2ZWwiO2Nhc2UgNzpyZXR1cm4iUmVxdWVzdCB3YXMgYWJvcnRlZCI7Y2FzZSA4OnJldHVybiJSZXF1ZXN0IHRpbWVkIG91dCI7Y2FzZSA5OnJldHVybiJUaGUgcmVzb3VyY2UgaXMgbm90IGF2YWlsYWJsZSBvZmZsaW5lIjtkZWZhdWx0OnJldHVybiJVbnJlY29nbml6ZWQgZXJyb3IgY29kZSJ9fTsKQko9ZnVuY3Rpb24oKXt9OwpGMT1mdW5jdGlvbigpe307CndwPWZ1bmN0aW9uKG4pe2cub1cuY2FsbCh0aGlzKTt0aGlzLmhlYWRlcnM9bmV3IE1hcDt0aGlzLlRDPW58fG51bGw7dGhpcy5KPSExO3RoaXMuTj1udWxsO3RoaXMuSz0iIjt0aGlzLlc9MDt0aGlzLmo9IiI7dGhpcy5YPXRoaXMudHc9dGhpcy5ZPXRoaXMuY0o9ITE7dGhpcy5EPTA7dGhpcy5WPW51bGw7dGhpcy5iZD0iIjt0aGlzLk89ITF9OwpRTVU9ZnVuY3Rpb24obixXLEQsYix2LGssaCl7dmFyIHg9bmV3IHdwO004LnB1c2goeCk7VyYmeC5TXygiY29tcGxldGUiLFcpO3guZUYoInJlYWR5Iix4LldVKTtrJiYoeC5EPU1hdGgubWF4KDAsaykpO2gmJih4Lk89aCk7eC5zZW5kKG4sRCxiLHYpfTsKVjg9ZnVuY3Rpb24obixXKXtuLko9ITE7bi5OJiYobi5YPSEwLG4uTi5hYm9ydCgpLG4uWD0hMSk7bi5qPVc7bi5XPTU7UjUobik7UTgobil9OwpSNT1mdW5jdGlvbihuKXtuLmNKfHwobi5jSj0hMCxuLmRpc3BhdGNoRXZlbnQoImNvbXBsZXRlIiksbi5kaXNwYXRjaEV2ZW50KCJlcnJvciIpKX07Cm5WPWZ1bmN0aW9uKG4pe2lmKG4uSiYmdHlwZW9mIGNKIT0idW5kZWZpbmVkIilpZihuLlkmJmE1KG4pPT00KXNldFRpbWVvdXQobi5OOC5iaW5kKG4pLDApO2Vsc2UgaWYobi5kaXNwYXRjaEV2ZW50KCJyZWFkeXN0YXRlY2hhbmdlIiksbi5pc0NvbXBsZXRlKCkpe24uZ2V0U3RhdHVzKCk7bi5KPSExO3RyeXtpZihuLmlzU3VjY2VzcygpKW4uZGlzcGF0Y2hFdmVudCgiY29tcGxldGUiKSxuLmRpc3BhdGNoRXZlbnQoInN1Y2Nlc3MiKTtlbHNle24uVz02O3RyeXt2YXIgVz1hNShuKT4yP24uTi5zdGF0dXNUZXh0OiIifWNhdGNoKEQpe1c9IiJ9bi5qPVcrIiBbIituLmdldFN0YXR1cygpKyJdIjtSNShuKX19ZmluYWxseXtROChuKX19fTsKUTg9ZnVuY3Rpb24obixXKXtpZihuLk4pe24uViYmKGNsZWFyVGltZW91dChuLlYpLG4uVj1udWxsKTtsZXQgRD1uLk47bi5OPW51bGw7V3x8bi5kaXNwYXRjaEV2ZW50KCJyZWFkeSIpO3RyeXtELm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsfWNhdGNoKGIpe319fTsKYTU9ZnVuY3Rpb24obil7cmV0dXJuIG4uTj9uLk4ucmVhZHlTdGF0ZTowfTsKVzM9ZnVuY3Rpb24obil7dHJ5e3JldHVybiBuLk4/bi5OLnJlc3BvbnNlVGV4dDoiIn1jYXRjaChXKXtyZXR1cm4iIn19OwpEbz1mdW5jdGlvbihuKXt0cnl7aWYoIW4uTilyZXR1cm4gbnVsbDtpZigicmVzcG9uc2UiaW4gbi5OKXJldHVybiBuLk4ucmVzcG9uc2U7c3dpdGNoKG4uYmQpe2Nhc2UgIiI6Y2FzZSAidGV4dCI6cmV0dXJuIG4uTi5yZXNwb25zZVRleHQ7Y2FzZSAiYXJyYXlidWZmZXIiOmlmKCJtb3pSZXNwb25zZUFycmF5QnVmZmVyImluIG4uTilyZXR1cm4gbi5OLm1velJlc3BvbnNlQXJyYXlCdWZmZXJ9cmV0dXJuIG51bGx9Y2F0Y2goVyl7cmV0dXJuIG51bGx9fTsKVmp0PWZ1bmN0aW9uKG4pe3ZhciBXPXt9O249KG4uTiYmYTUobik+PTI/bi5OLmdldEFsbFJlc3BvbnNlSGVhZGVycygpfHwiIjoiIikuc3BsaXQoIlxyXG4iKTtmb3IobGV0IGI9MDtiPG4ubGVuZ3RoO2IrKyl7aWYoZy5GaChuW2JdKSljb250aW51ZTt2YXIgRD1Td2gobltiXSk7bGV0IHY9RFswXTtEPURbMV07aWYodHlwZW9mIEQhPT0ic3RyaW5nIiljb250aW51ZTtEPUQudHJpbSgpO2xldCBrPVdbdl18fFtdO1dbdl09aztrLnB1c2goRCl9cmV0dXJuIFd4KFcsZnVuY3Rpb24oYil7cmV0dXJuIGIuam9pbigiLCAiKX0pfTsKdjM9ZnVuY3Rpb24obixXLEQpe3ZhciBiPWJuKCk7Vz1XKCk7bi5YKEQsYm4oKS1iKTtyZXR1cm4gV307Cm5sMT1mdW5jdGlvbihuLFcsRCxiKXtuPVVVYihQX2koS2NoKG5ldyBrWSxuKSkpLmtDKCk7Vy5sZW5ndGgmJlpiaChuLHRqVShuZXcgY0ZaLFcpKTtiIT09dm9pZCAwJiYobi5Saj1iKTt2YXIgdj1uZXcgYTRqKG4uYnVpbGQoKSk7Zy51KHYsbik7dmFyIGs9bmV3IGhxKHtmbHVzaChoKXt0cnl7di5mbHVzaChoKX1jYXRjaCh4KXtEKHgpfX19KTtrLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57c2V0VGltZW91dCgoKT0+e3RyeXtrLmooKX1maW5hbGx5e3YuZGlzcG9zZSgpfX0pfSk7CmsuWD0xRTU7ay5mbHVzaEludGVydmFsPTNFNDtrLkouc2V0SW50ZXJ2YWwoM0U0KTtyZXR1cm4ga307CldXcj1mdW5jdGlvbihuKXtpZihuLnRpbWVyPT09dm9pZCAwKXtsZXQgVz1NYXRoLm1heCgwLG4uTituLkotYm4oKSk7bi50aW1lcj1zZXRUaW1lb3V0KCgpPT57dHJ5e24uY2FsbGJhY2soKX1maW5hbGx5e24uTj1ibigpLG4udGltZXI9dm9pZCAwfX0sVyl9fTsKYnBNPWZ1bmN0aW9uKG4sVz1bXSl7cmV0dXJuIG5ldyBEaHgobixXKX07CmJuPWZ1bmN0aW9uKCl7cmV0dXJuIGdsb2JhbFRoaXMucGVyZm9ybWFuY2U/Lm5vdz8uKCk/P0RhdGUubm93KCl9OwpMVj1mdW5jdGlvbihuLFcpe2lmKG4uZGlzYWJsZSlyZXR1cm4gbmV3IHhZO1c9Vz9uMChXKTpbXTtyZXR1cm4gYnBNKHtWajpuLlZqLFJoOm4uSnAsTFQ6bi5SaSxSajpuLlJqLHREOm4udEQscm86bi5yb30sVyl9Owp2bHI9ZnVuY3Rpb24obil7aWYoIW4pcmV0dXJuIG51bGw7bj1KUyhuLDQpO3JldHVybiBuPT09bnVsbHx8bj09PXZvaWQgMD9udWxsOmszKG4pfTsKZyQ9ZnVuY3Rpb24oKXtlbS5pbnN0YW5jZXx8KGVtLmluc3RhbmNlPW5ldyBlbSk7cmV0dXJuIGVtLmluc3RhbmNlfTsKazVaPWZ1bmN0aW9uKG4sVyxELGIpe2lmKCFXJiYhRClyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7aWYoIWIpcmV0dXJuIFg2KFcsRCk7dmFyIHY7KHY9bi5KKVtiXXx8KHZbYl09bmV3IFByb21pc2UoKGssaCk9PntYNihXLEQpLnRoZW4oKCk9PntuLk49YjtrKCl9LHg9PntkZWxldGUgbi5KW2JdOwpoKHgpfSl9KSk7CnJldHVybiBuLkpbYl19Owp0cT1mdW5jdGlvbihuLFcpe3JldHVybiBrNVoobixnZShXLHF2LDEseFUpLGdlKFcsR0gsMix4VSksWTkoVywzLHZvaWQgMCx4VSkpfTsKWDY9ZnVuY3Rpb24obixXKXtyZXR1cm4gVz9oSFMoVyk6bj94aGIobik6UHJvbWlzZS5yZXNvbHZlKCl9OwpoSFM9ZnVuY3Rpb24obil7cmV0dXJuIG5ldyBQcm9taXNlKChXLEQpPT57dmFyIGI9Zy56RigiU0NSSVBUIiksdj12bHIobik7Zy5QTShiLHYpO2Iub25sb2FkPSgpPT57Zy5DVChiKTtXKCl9OwpiLm9uZXJyb3I9KCk9PntnLkNUKGIpO0QoRXJyb3IoIkVXTFMiKSl9OwooZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIkhFQUQiKVswXXx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5hcHBlbmRDaGlsZChiKX0pfTsKeGhiPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgUHJvbWlzZShXPT57dmFyIEQ9Zy56RigiU0NSSVBUIik7aWYobil7dmFyIGI9SlMobiw2KTtiPWI9PT1udWxsfHxiPT09dm9pZCAwP251bGw6bWMoYil9ZWxzZSBiPW51bGw7RC50ZXh0Q29udGVudD1LYihiKTtPTShEKTsoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIkhFQUQiKVswXXx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5hcHBlbmRDaGlsZChEKTtnLkNUKEQpO1coKX0pfTsKTFcyPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIEFTKG4sMSxXKX07CmVIaD1mdW5jdGlvbihuLFcpe3JldHVybiBBUyhuLDIsVyl9OwpnbGg9ZnVuY3Rpb24obixXKXtyZXR1cm4gQVMobiwzLFcpfTsKc2w9YXN5bmMgZnVuY3Rpb24obixXLEQsYix2KXtXPWdsaChlSGgoTFcyKG5ldyAkWSxuLnJlcXVlc3RLZXkpLFcpLEQpO0Q9bi5OKCk7bj1hd2FpdCBiLlYoImMiLG4ucmVxdWVzdEtleSx2LG4uY2xpZW50LmNyZWF0ZShXLEQpKTt2YXIgaz1WbChSeihuLDIpKTtpZihrLmxlbmd0aClyZXR1cm4gdjMoYiwoKT0+e3ZhciBoPW5ldyBVaW50OEFycmF5KGsubGVuZ3RoKTtmb3IodmFyIHg9MDt4PGsubGVuZ3RoO3grKyloW3hdPWtbeF0rOTc7aWYoZy5xaS5UZXh0RGVjb2RlciloPShuZXcgVGV4dERlY29kZXIpLmRlY29kZShoKTtlbHNlIGlmKGgubGVuZ3RoPD04MTkyKWg9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLGgpO2Vsc2V7eD0iIjtmb3IobGV0IEw9MDtMPGgubGVuZ3RoO0wrPTgxOTIpe2xldCBlPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGgsTCxMKzgxOTIpO3grPVN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxlKX1oPXh9cmV0dXJuIFg0WihoKX0sCiJVIik7CmI9Z2UobixyJCwxKTtpZighYil0aHJvdyBFcnJvcigiTWlzc2luZyBmaWVsZCIpO3JldHVybiBifTsKSDM9YXN5bmMgZnVuY3Rpb24obixXLEQsYil7dmFyIHY9bi5OKCk7dmFyIGs9bmV3IE52O2s9QVMoaywxLG4ucmVxdWVzdEtleSk7dmFyIGg9QVMoaywyLFcpO1c9RC5WO2s9bi5yZXF1ZXN0S2V5O249bi5jbGllbnQ7dj1ZWShuLk4sbi5KKyIvJHJwYy9nb29nbGUuaW50ZXJuYWwud2FhLnYxLldhYS9HZW5lcmF0ZUlUIixoLHZ8fHt9LHFUUyk7cmV0dXJuIFcuY2FsbChELCJnIixrLGIsdil9OwpHNWg9ZnVuY3Rpb24obixXLEQsYix2KXtyZXR1cm4gbiBpbnN0YW5jZW9mIGZWP3NsKG4sYix2LFcsRCk6c2wobixiLHYsbmV3IHhZLDApfTsKckFiPWFzeW5jIGZ1bmN0aW9uKG4sVyxELGI9ZyQoKSx2PVByb21pc2UucmVzb2x2ZSh2b2lkIDApLGspe2F3YWl0IDA7Zm9yKHZhciBoOzspe2xldCB4PW51bGw7aWYoaCl7SnEobiw3KTt0cnl7eD1hd2FpdCBJaShoLnNuYXBzaG90KHt9KSxrLmpkLCgpPT5Qcm9taXNlLnJlc29sdmUoIkU6Q1RPIikpfWNhdGNoKEcpe3g9IkU6VUNFIn19bGV0IEwsZT1uZXcgZy5oSChoP2sudzg6ay5DcSxrLm96LGsuZDgsay5BaSk7CmZvcihsZXQgRz0xO0c8PWsubWF4QXR0ZW1wdHM7RysrKXtpZihHIT09MSl7SnEobiwwKTtuLk49bmV3IFNtKGUuZ2V0VmFsdWUoKSxrLnVtLGsubmIpO2xldCByPWF3YWl0IG4uTi5wcm9taXNlO24uTj12b2lkIDA7cj09PTE/KEc9MSxlLnJlc2V0KCkpOmcueEUoZSl9dHJ5e2xldCByO0Q/cj1EOihKcShuLDUpLHI9YXdhaXQgSWkoRzVoKFcsbi5sb2dnZXIsRyxiLk4seCksay5ocCwoKT0+UHJvbWlzZS5yZWplY3QoRXJyb3IoIlJHRjpGZXRjaCB0aW1lZCBvdXQiKSkpKTsKSnEobiwzKTthd2FpdCBJaSh0cShiLHIpLGsuUVgsKCk9PlByb21pc2UucmVqZWN0KEVycm9yKCJEVFo6U2NyaXB0IHRpbWVkIG91dCIpKSk7CkpxKG4sOCk7YXdhaXQgdjtsZXQgTj1uZXcgQXEoe2NoYWxsZW5nZTpyLHgzOm4ub3B0aW9ucy54Myx3MzpuLm9wdGlvbnMudzN9KTthd2FpdCBJaShOLk92LGsucUssKCk9PlByb21pc2UucmVqZWN0KEVycm9yKCJRRUc6U2V0dXAgdGltZWQgb3V0IikpKTsKTD1OO2JyZWFrfWNhdGNoKHIpe24uaGFuZGxlRXJyb3IociksbUkobil9fWlmKG4ucU4oKSlicmVhaztMJiYoRD12b2lkIDAsdDFVKG4saCksaD1MLCRoaChuLEwpLG1JKG4pKTtKcShuLDIpO24uTj1uZXcgU20oay5GWixrLnVtLGsubmIpO24uaXNQYXVzZWQmJm4uTi5wYXVzZSgpO2F3YWl0IG4uTi5wcm9taXNlO24uTj12b2lkIDA7aWYobi5xTigpKWJyZWFrfWg/LmRpc3Bvc2UoKX07CnNQMj1mdW5jdGlvbihuKXtuLks9RXJyb3IoIkNhbmNlbGxlZCBieSBkaXNwb3NlIik7bi5qLnJlc29sdmUoKTtXMihuLlYucHJvbWlzZSk7bi5WLnJlamVjdChFcnJvcigiQ2FuY2VsbGVkIGJ5IGRpc3Bvc2UiKSk7bi5sb2dnZXIuZGlzcG9zZSgpO1Byb21pc2UuYWxsKG4uWCkudGhlbihhc3luYygpPT57bi5XPy5kaXNwb3NlKCk7bi5XPXZvaWQgMH0pOwpuLlg9W107bi5OPy5KKCk7VzIobi5KLnByb21pc2UpO24uSi5yZWplY3QoRXJyb3IoIkNhbmNlbGxlZCBieSBkaXNwb3NlIikpfTsKTlR0PWFzeW5jIGZ1bmN0aW9uKG4pe2lmKG4ucU4oKSl0aHJvdyBFcnJvcigiQWxyZWFkeSBkaXNwb3NlZCIpO24uTj8uSigpO2F3YWl0IG4uSi5wcm9taXNlfTsKcDRpPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5xSjtuLnFKPSgpPT57RCgpO1coKX19OwokaGg9ZnVuY3Rpb24obixXKXtuLnFOKCl8fChuLlc9VyxuLmxvZ2dlci51cGRhdGUoVy5RRCgpKSxuLmoucmVzb2x2ZSgpLG4uVi5yZXNvbHZlKHZvaWQgMCksbi5xSigpKX07CnQxVT1mdW5jdGlvbihuLFcpe1cmJihQcm9taXNlLmFsbChuLlgpLnRoZW4oKCk9PnZvaWQgVy5kaXNwb3NlKCkpLG4uWD1bXSl9OwpKcT1mdW5jdGlvbihuLFcpe24uWT1XO24ub3B0aW9ucy5mUD8uKFcpfTsKbUk9ZnVuY3Rpb24obil7bi5xTigpfHwobi5KLnJlc29sdmUoKSxuLko9bmV3IGcuS1YpfTsKSWk9ZnVuY3Rpb24obixXLEQpe3ZhciBiO0Q9KG5ldyBQcm9taXNlKHY9PntiPXNldFRpbWVvdXQodixXKX0pKS50aGVuKEQpOwpXMihEKTtyZXR1cm4gUHJvbWlzZS5yYWNlKFtuLmZpbmFsbHkoKCk9PnZvaWQgY2xlYXJUaW1lb3V0KGIpKSwKRF0pfTsKWVRVPWZ1bmN0aW9uKG4sVyl7bi5lbmRUaW1lTXM9RGF0ZS5ub3coKStXO24udGljaygpfTsKT2w9ZnVuY3Rpb24obil7bi5OJiYoY2xlYXJUaW1lb3V0KG4uTiksbi5OPW51bGwpfTsKUDM9ZnVuY3Rpb24obixXKXt0cnl7cmV0dXJuIGdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShuLFcpLCEwfWNhdGNoKEQpe3JldHVybiExfX07ClpvPWZ1bmN0aW9uKG4sVz0wLEQ9bi5sZW5ndGgsYil7dmFyIHY9MDtmb3IoYiYmKHY9Wm8oYikpO1c8RDtXKyspdj1IcGkoMzEsdikrKHR5cGVvZiBuPT09InN0cmluZyI/bi5jaGFyQ29kZUF0KFcpOm5bV10pfDA7cmV0dXJuIHZ9Owp5aT1mdW5jdGlvbihuKXt2YXIgW1csRF09W1pvKG4sMCxuLmxlbmd0aD4+MSxVbCksWm8obixuLmxlbmd0aD4+MSldO3JldHVybiBXLnRvU3RyaW5nKDE2KStELnRvU3RyaW5nKDE2KX07CkVsPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W1pvKFcsMCxXLmxlbmd0aD4+MSx2b2lkIDApLFpvKFcsVy5sZW5ndGg+PjEpXTtuPW5ldyBVaW50MzJBcnJheShuLmJ1ZmZlcik7Vz1uWzBdO3ZhciBbYix2XT1EO2ZvcihEPTE7RDxuLmxlbmd0aDtEKz0yKXt2YXIgaz1XLGg9RCx4PWIsTD12O2ZvcihsZXQgZT0wO2U8MjI7ZSsrKWg9aD4+Pjh8aDw8MjQsaCs9a3wwLGhePXgrMzgyOTMsaz1rPDwzfGs+Pj4yOSxrXj1oLEw9TD4+Pjh8TDw8MjQsTCs9eHwwLExePWUrMzgyOTMseD14PDwzfHg+Pj4yOSx4Xj1MO2s9W2ssaF07bltEXV49a1swXTtEKzE8bi5sZW5ndGgmJihuW0QrMV1ePWtbMV0pfX07CmZlYj1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPSg0LShVbC5sZW5ndGgrRC5sZW5ndGgpJTQpJTQsaD1uZXcgVWludDhBcnJheSg0K2srVWwubGVuZ3RoKzQrRC5sZW5ndGgpLHg9bmV3IERhdGFWaWV3KGguYnVmZmVyKSxMPTA7eC5zZXRVaW50MzIoTCxNYXRoLnJhbmRvbSgpKjQyOTQ5NjcyOTUpO0w9TCs0K2s7aC5zZXQoVWwsTCk7TCs9VWwubGVuZ3RoO3guc2V0VWludDMyKEwsdik7aC5zZXQoRCxMKzQpO0VsKGgsYik7cmV0dXJuIG4ucXAoVyxlPT52b2lkIGdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShlKSk/UDMoVyxnLkVBKGgpKT8icyI6InQiOiJpIn07CkpBdz1mdW5jdGlvbihuLFcpe3ZhciBEPWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShuKTtpZighRClyZXR1cm5bIm0iXTt0cnl7dmFyIGI9bHAoRCk7RWwoYixXKX1jYXRjaCh2KXtyZXR1cm4gZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKG4pLFsiYyJdfWZvcihXPTQ7Vzw3JiZiW1ddPT09MDspVysrO2ZvcihEPTA7RDxVbC5sZW5ndGg7RCsrKWlmKGJbVysrXSE9PVVsW0RdKXJldHVybiBnbG9iYWxUaGlzLnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0obiksWyJkIl07RD0obmV3IERhdGFWaWV3KGIuYnVmZmVyKSkuZ2V0VWludDMyKFcpO3JldHVybiBNYXRoLmZsb29yKERhdGUubm93KCkvMUUzKT49RD8oZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKG4pLFsiZSJdKTpbImEiLG5ldyBVaW50OEFycmF5KGIuYnVmZmVyLFcrNCldfTsKSWV3PWZ1bmN0aW9uKG4pe3ZhciBXPWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgiaVU1cS0hTzlAJCIpO2lmKCFXKXJldHVybiBuZXcgdW4obik7dmFyIEQ9Vy5zcGxpdCgiLCIpO2lmKEQubGVuZ3RoPDIpcmV0dXJuIGdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbSgiaVU1cS0hTzlAJCIpLG5ldyB1bihuKTtXPUQuc2xpY2UoMSk7Vy5sZW5ndGg9PT0xJiZXWzBdPT09IiImJihXPVtdKTtEPU51bWJlcihEWzBdKTtyZXR1cm4gaXNOYU4oRCl8fEQ8MHx8RD5XLmxlbmd0aD8oZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKCJpVTVxLSFPOUAkIiksbmV3IHVuKG4pKTpuZXcgdW4obixELFcpfTsKbWh3PWZ1bmN0aW9uKG4pe2Z1bmN0aW9uIFcoKXtELT1iO0QtPXY7RF49dj4+PjEzO2ItPXY7Yi09RDtiXj1EPDw4O3YtPUQ7di09Yjt2Xj1iPj4+MTM7RC09YjtELT12O0RePXY+Pj4xMjtiLT12O2ItPUQ7Yl49RDw8MTY7di09RDt2LT1iO3ZePWI+Pj41O0QtPWI7RC09djtEXj12Pj4+MztiLT12O2ItPUQ7Yl49RDw8MTA7di09RDt2LT1iO3ZePWI+Pj4xNX0Kbj1TVHIobik7Zm9yKHZhciBEPTI2NTQ0MzU3NjksYj0yNjU0NDM1NzY5LHY9MzE0MTU5MjY1LGs9bi5sZW5ndGgsaD1rLHg9MDtoPj0xMjtoLT0xMix4Kz0xMilEKz1vaShuLHgpLGIrPW9pKG4seCs0KSx2Kz1vaShuLHgrOCksVygpO3YrPWs7c3dpdGNoKGgpe2Nhc2UgMTE6dis9blt4KzEwXTw8MjQ7Y2FzZSAxMDp2Kz1uW3grOV08PDE2O2Nhc2UgOTp2Kz1uW3grOF08PDg7Y2FzZSA4OmIrPW5beCs3XTw8MjQ7Y2FzZSA3OmIrPW5beCs2XTw8MTY7Y2FzZSA2OmIrPW5beCs1XTw8ODtjYXNlIDU6Yis9blt4KzRdO2Nhc2UgNDpEKz1uW3grM108PDI0O2Nhc2UgMzpEKz1uW3grMl08PDE2O2Nhc2UgMjpEKz1uW3grMV08PDg7Y2FzZSAxOkQrPW5beCswXX1XKCk7cmV0dXJuIEFBUy50b1N0cmluZyh2KX07ClNUcj1mdW5jdGlvbihuKXt2YXIgVz1bXTtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKylXLnB1c2gobi5jaGFyQ29kZUF0KEQpKTtyZXR1cm4gV307Cm9pPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG5bVyswXSsobltXKzFdPDw4KSsobltXKzJdPDwxNikrKG5bVyszXTw8MjQpfTsKZCQ9ZnVuY3Rpb24obixXKXt2YXIgRD1zZXRUaW1lb3V0KCgpPT57bi5YLnJlc29sdmUoKX0sVyk7Cm4uYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgY2xlYXJUaW1lb3V0KEQpKX07CmxuPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9YCR7VyhuLmVycm9yLm1lc3NhZ2UpfToke1cobi5lcnJvci5zdGFjayl9YC5zdWJzdHJpbmcoMCwyMDQ4KTtXPUQubGVuZ3RoKzE7RD16SChEKTt2YXIgYj1uZXcgVWludDhBcnJheSg0K0QubGVuZ3RoKTtiLnNldChbNDIsVyYxMjd8MTI4LFc+Pjcsbi5lcnJvci5jb2RlXSk7Yi5zZXQoRCw0KTtyZXR1cm4gYn07CnpIPWZ1bmN0aW9uKG4pe3JldHVybiBnbG9iYWxUaGlzLlRleHRFbmNvZGVyPyhuZXcgVGV4dEVuY29kZXIpLmVuY29kZShuKTpMMChuKX07CktXVT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIG4gaW5zdGFuY2VvZiBmVj9IMyhuLEQsVywxKTpuLlpqKEQpfTsKQjM9YXN5bmMgZnVuY3Rpb24obil7dmFyIFc9dm9pZCAwO24uaisrO3ZhciBEPW5ldyBnLktWO24uTzEgaW5zdGFuY2VvZiBUSCYmbi5PMS5YLnB1c2goRC5wcm9taXNlKTtpZihuLlhsKXtsZXQgaz1uZXcgZy5LVjtzZXRUaW1lb3V0KCgpPT52b2lkIGsucmVzb2x2ZSgpKTsKYXdhaXQgay5wcm9taXNlfXZhciBiPW4ubG9nZ2VyLnNoYXJlKCk7dHJ5e24uc3RhdGU9NTtsZXQgaz1bXSxoPWF3YWl0IElpKG4uTzEuc25hcHNob3Qoe3dfOnt9LHRMOmt9KSxuLmtkLnJTLCgpPT5Qcm9taXNlLnJlamVjdChuZXcgUUcoMTUsIk1EQTpUaW1lb3V0IikpKTsKam0obiwiTURBOkRpc3Bvc2VkIik7bGV0IHg9a1swXTtuLnN0YXRlPTY7bGV0IEw9YXdhaXQgSWkoS1dVKG4uVWcsYixoKSxuLmtkLlhVLCgpPT5Qcm9taXNlLnJlamVjdChuZXcgUUcoMTAsIkJXQjpUaW1lb3V0IikpKTsKam0obiwiQldCOkRpc3Bvc2VkIik7bi5zdGF0ZT03O1c9djMoYiwoKT0+e3ZhciBlPU9waShuLEwsRCx4KTtlLlgucHJvbWlzZS50aGVuKCgpPT52b2lkIG4uVigpKTsKcmV0dXJuIGV9LCJpIil9Y2F0Y2goayl7Vz8uZGlzcG9zZSgpOwppZighbi5KKXtsZXQgaD1QZjIobixrKTtELnJlc29sdmUoKTt2YXIgdjtpZih2PW4uTzEgaW5zdGFuY2VvZiBUSCYmbi5qPDIpYTppZihrIGluc3RhbmNlb2YgUUcpdj1rLmNvZGUhPT0zMiYmay5jb2RlIT09MjAmJmsuY29kZSE9PTEwO2Vsc2V7aWYoayBpbnN0YW5jZW9mIENWKXN3aXRjaChrLmNvZGUpe2Nhc2UgMjpjYXNlIDEzOmNhc2UgMTQ6Y2FzZSA0OmJyZWFrO2RlZmF1bHQ6dj0hMTticmVhayBhfXY9ITB9aWYodil7bGV0IHg9c2V0VGltZW91dCgoKT0+dm9pZCBuLlYoKSwoMStNYXRoLnJhbmRvbSgpKi4yNSkqKG4uTj82RTQ6MUUzKSk7Cm4uYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgY2xlYXJUaW1lb3V0KHgpKTsKcmV0dXJufW4uSj1ofWIuSihuLk4/MTM6MTQpO24uWC5yZWplY3Qobi5KKTtyZXR1cm59ZmluYWxseXtiLmRpc3Bvc2UoKX1uLnN0YXRlPTg7bi5qPTA7bi5OPy5kaXNwb3NlKCk7bi5OPVc7bi5YLnJlc29sdmUoKX07ClBmMj1mdW5jdGlvbihuLFcpe2lmKCEoVyBpbnN0YW5jZW9mIFFHKSlpZihXIGluc3RhbmNlb2YgQ1Ype2xldCBEPUVycm9yKFcudG9TdHJpbmcoKSk7RC5zdGFjaz1XLnN0YWNrO1c9bmV3IFFHKDExLCJFQkg6RXJyb3IiLEQpfWVsc2UgVz1uZXcgUUcoMTIsIkJTTzpVbmtub3duIixXKTtyZXR1cm4gbi5yZXBvcnRFcnJvcihXKX07CmptPWZ1bmN0aW9uKG4sVyl7aWYobi5xTigpKXRocm93IG5ldyBRRyhuLk4/MjA6MzIsVyk7fTsKT3BpPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PSh1NChpVyhXLDIpKT8/MCkqMUUzO2lmKHY8PTApdGhyb3cgbmV3IFFHKDMxLCJUVE06SW52YWxpZCIpO2lmKFk5KFcsNCkpcmV0dXJuIG5ldyBacHQobi5sb2dnZXIsWTkoVyw0KSx2KTtpZighKHU0KGlXKFcsMykpPz8wKSlyZXR1cm4gbmV3IFVoaihuLmxvZ2dlcixWbChSeihXLDEpKSx2KTtpZighYil0aHJvdyBuZXcgUUcoNCwiUE1EOlVuZGVmaW5lZCIpO2I9YihWbChSeihXLDEpKSk7aWYodHlwZW9mIGIhPT0iZnVuY3Rpb24iKXRocm93IG5ldyBRRygxNiwiQVBGOkZhaWxlZCIpO24uSz1NYXRoLmZsb29yKChEYXRlLm5vdygpK3YpLzFFMyk7bj1uZXcgRjYobi5sb2dnZXIsYix1NChpVyhXLDMpKT8/MCx2KTtuLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT52b2lkIEQucmVzb2x2ZSgpKTsKcmV0dXJuIG59OwpNdj1mdW5jdGlvbihuLFcsRCl7dHJ5e2lmKG4ucU4oKSl0aHJvdyBuZXcgUUcoMjEsIkJOVDpkaXNwb3NlZCIpO2lmKCFuLk4mJm4uSil0aHJvdyBuLko7cmV0dXJuIHlBMShuLFcsRCk/P0VsaShuLFcsRCk/P2lwcihuLFcsRCl9Y2F0Y2goYil7aWYoIVcuRVIpdGhyb3cgdyQobixiKTtyZXR1cm4gdU1aKG4sRCxiKX19Owp3JD1mdW5jdGlvbihuLFcpe1c9VyBpbnN0YW5jZW9mIFFHP1c6bmV3IFFHKDUsIlRWRDplcnJvciIsVyk7cmV0dXJuIG4ucmVwb3J0RXJyb3IoVyl9Owp5QTE9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuLk4/LkZwKCgpPT5SaShuLFcpLEQsYj0+e2lmKG4uTiBpbnN0YW5jZW9mIEY2JiZXLmhHPy5yMyl0cnl7bi5jYWNoZT8uTihSaShuLFcpLGIsVy5oRy5hbSxuLkstMTIwKX1jYXRjaCh2KXtuLnJlcG9ydEVycm9yKG5ldyBRRygyNCwiRUxYOndyaXRlIix2KSl9fSl9OwpFbGk9ZnVuY3Rpb24obixXLEQpe2lmKFcuaEc/LkFCKXRyeXtsZXQgYj1uLmNhY2hlPy5KKFJpKG4sVyksVy5oRy5hbSk7cmV0dXJuIGI/RD92MyhuLmxvZ2dlciwoKT0+Zy5FQShiLDIpLCJhIik6Yjp2b2lkIDB9Y2F0Y2goYil7bi5yZXBvcnRFcnJvcihuZXcgUUcoMjMsIlJYTzpyZWFkIixiKSl9fTsKaXByPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj17c3RhY2s6W10sZXJyb3I6dm9pZCAwLGhhc0Vycm9yOiExfTt0cnl7aWYoIVcuR3IpdGhyb3cgbmV3IFFHKDI5LCJTREY6bm90cmVhZHkiKTtyZXR1cm4gemIoYixuZXcgUWkobi5sb2dnZXIsMCxuLnN0YXRlKSkuRnAoKCk9PlJpKG4sVyksRCl9Y2F0Y2godil7Yi5lcnJvcj12LGIuaGFzRXJyb3I9ITB9ZmluYWxseXtseChiKX19Owp1TVo9ZnVuY3Rpb24obixXLEQpe3ZhciBiPXtzdGFjazpbXSxlcnJvcjp2b2lkIDAsaGFzRXJyb3I6ITF9O3RyeXtsZXQgdj13JChuLEQpO3JldHVybiB6YihiLG5ldyBvbHcobi5sb2dnZXIsdikpLkZwKCgpPT5bXSxXKX1jYXRjaCh2KXtiLmVycm9yPXYsYi5oYXNFcnJvcj0hMH1maW5hbGx5e2x4KGIpfX07ClJpPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFcueEM/Vy54QzpXLndfP3YzKG4ubG9nZ2VyLCgpPT5XLnhDPXpIKFcud18pLCJjIik6W119OwpuVz1mdW5jdGlvbigpe3ZhciBuPTAsVztyZXR1cm4gRD0+e1d8fChXPW5ldyB4WSk7dmFyIGI9bmV3IFFpKFcsbiwxKSx2PWIuRnAoKCk9PnpIKEQpLCEwKTsKYi5kaXNwb3NlKCk7bisrO3JldHVybiB2fX07CmcuV1k9ZnVuY3Rpb24obixXKXtpZihuKWZvcihsZXQgRCBpbiBuKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLEQpJiZXKG5bRF0sRCxuKX07CnpIaT1mdW5jdGlvbigpe3ZhciBuPVtdO2cuV1koZGhaLFc9PntuLnB1c2goVyl9KTsKcmV0dXJuIG59OwpUVHI9ZnVuY3Rpb24oKXt2YXIgbj1nLkRhKCJJRlJBTUUiKSxXPXt9O2cueTIobGVTKCksRD0+e24uc2FuZGJveCYmbi5zYW5kYm94LnN1cHBvcnRzJiZuLnNhbmRib3guc3VwcG9ydHMoRCkmJihXW0RdPSEwKX0pOwpyZXR1cm4gV307CmcuRGE9ZnVuY3Rpb24obixXPWRvY3VtZW50KXtyZXR1cm4gVy5jcmVhdGVFbGVtZW50KFN0cmluZyhuKS50b0xvd2VyQ2FzZSgpKX07CmcuYnI9ZnVuY3Rpb24obixXLEQsYil7dGhpcy5sZWZ0PW47dGhpcy50b3A9Vzt0aGlzLndpZHRoPUQ7dGhpcy5oZWlnaHQ9Yn07CnZZPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG49PVc/ITA6biYmVz9uLmxlZnQ9PVcubGVmdCYmbi53aWR0aD09Vy53aWR0aCYmbi50b3A9PVcudG9wJiZuLmhlaWdodD09Vy5oZWlnaHQ6ITF9OwpnLmgxPWZ1bmN0aW9uKG4sVyxEKXtpZih0eXBlb2YgVz09PSJzdHJpbmciKWtxKG4sRCxXKTtlbHNlIGZvcihsZXQgYiBpbiBXKWtxKG4sV1tiXSxiKX07CmtxPWZ1bmN0aW9uKG4sVyxEKXsoRD14cShuLEQpKSYmKGpQQy50ZXN0KEQpP24uc3R5bGUuc2V0UHJvcGVydHkoRCxXKTpuLnN0eWxlW0RdPVcpfTsKeHE9ZnVuY3Rpb24obixXKXt2YXIgRD1MV1tXXTtpZighRCl7dmFyIGI9cHAoVyk7RD1iO24uc3R5bGVbYl09PT12b2lkIDAmJihiPShnLlpsPyJXZWJraXQiOmcuZVM/Ik1veiI6bnVsbCkrSTFpKGIpLG4uc3R5bGVbYl0hPT12b2lkIDAmJihEPWIpKTtMV1tXXT1EfXJldHVybiBEfTsKZy5naD1mdW5jdGlvbihuLFcpe3ZhciBEPW4uc3R5bGVbcHAoVyldO3JldHVybiB0eXBlb2YgRCE9PSJ1bmRlZmluZWQiP0Q6bi5zdHlsZVt4cShuLFcpXXx8IiJ9OwpYbT1mdW5jdGlvbihuLFcpe3ZhciBEPWcuSksobik7cmV0dXJuIEQuZGVmYXVsdFZpZXcmJkQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZSYmKG49RC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKG4sbnVsbCkpP25bV118fG4uZ2V0UHJvcGVydHlWYWx1ZShXKXx8IiI6IiJ9OwpxdD1mdW5jdGlvbihuKXt0cnl7cmV0dXJuIG4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9Y2F0Y2goVyl7cmV0dXJue2xlZnQ6MCx0b3A6MCxyaWdodDowLGJvdHRvbTowfX19OwpnLkdOPWZ1bmN0aW9uKG4pe3ZhciBXPWcuSksobiksRD1uZXcgZy5NWSgwLDApO2lmKG49PShXP2cuSksoVyk6ZG9jdW1lbnQpLmRvY3VtZW50RWxlbWVudClyZXR1cm4gRDtuPXF0KG4pO1c9Zy5TcChXKTtXPWcuRTAoVy5OKTtELng9bi5sZWZ0K1cueDtELnk9bi50b3ArVy55O3JldHVybiBEfTsKZy4kcT1mdW5jdGlvbihuLFcpe249dDEobik7Vz10MShXKTtyZXR1cm4gbmV3IGcuTVkobi54LVcueCxuLnktVy55KX07Cmcucmg9ZnVuY3Rpb24obil7bj1xdChuKTtyZXR1cm4gbmV3IGcuTVkobi5sZWZ0LG4udG9wKX07CnQxPWZ1bmN0aW9uKG4pe2lmKG4ubm9kZVR5cGU9PTEpcmV0dXJuIGcucmgobik7bj1uLmNoYW5nZWRUb3VjaGVzP24uY2hhbmdlZFRvdWNoZXNbMF06bjtyZXR1cm4gbmV3IGcuTVkobi5jbGllbnRYLG4uY2xpZW50WSl9OwpOdD1mdW5jdGlvbihuLFcpe2lmKFcgaW5zdGFuY2VvZiBnLlFlKXt2YXIgRD1XLmhlaWdodDtXPVcud2lkdGh9ZWxzZSB0aHJvdyBFcnJvcigibWlzc2luZyBoZWlnaHQgYXJndW1lbnQiKTtuLnN0eWxlLndpZHRoPXNqKFcsITApO24uc3R5bGUuaGVpZ2h0PXNqKEQsITApfTsKc2o9ZnVuY3Rpb24obixXKXt0eXBlb2Ygbj09Im51bWJlciImJihuPShXP01hdGgucm91bmQobik6bikrInB4Iik7cmV0dXJuIG59OwpnLnBXPWZ1bmN0aW9uKG4pe3ZhciBXPUNmMSxEOyhEPVhtKG4sImRpc3BsYXkiKSl8fChEPW4uY3VycmVudFN0eWxlP24uY3VycmVudFN0eWxlLmRpc3BsYXk6bnVsbCk7aWYoKER8fG4uc3R5bGUmJm4uc3R5bGUuZGlzcGxheSkhPSJub25lIilyZXR1cm4gVyhuKTtEPW4uc3R5bGU7dmFyIGI9RC5kaXNwbGF5LHY9RC52aXNpYmlsaXR5LGs9RC5wb3NpdGlvbjtELnZpc2liaWxpdHk9ImhpZGRlbiI7RC5wb3NpdGlvbj0iYWJzb2x1dGUiO0QuZGlzcGxheT0iaW5saW5lIjtuPVcobik7RC5kaXNwbGF5PWI7RC5wb3NpdGlvbj1rO0QudmlzaWJpbGl0eT12O3JldHVybiBufTsKQ2YxPWZ1bmN0aW9uKG4pe3ZhciBXPW4ub2Zmc2V0V2lkdGgsRD1uLm9mZnNldEhlaWdodCxiPWcuWmwmJiFXJiYhRDtyZXR1cm4oVz09PXZvaWQgMHx8YikmJm4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0PyhuPXF0KG4pLG5ldyBnLlFlKG4ucmlnaHQtbi5sZWZ0LG4uYm90dG9tLW4udG9wKSk6bmV3IGcuUWUoVyxEKX07CkZXWj1mdW5jdGlvbihuLFc9e30pe3JldHVybiBuZXcgQlR0KG4sVyl9Owp3NHI9ZnVuY3Rpb24obil7bi5WLnhWKCJkYXRhIixXPT57aWYoIjEiaW4gVyl7dmFyIEQ9V1siMSJdO2xldCBiO3RyeXtiPW4uSyhEKX1jYXRjaCh2KXtZcShuLG5ldyBDVigxMyxgRXJyb3Igd2hlbiBkZXNlcmlhbGl6aW5nIHJlc3BvbnNlIGRhdGE7IGVycm9yOiAke3Z9LCByZXNwb25zZTogJHtEfWApKX1iJiZIWShuLGIpfWlmKCIyImluIFcpZm9yKFc9ZlcobixXWyIyIl0pLEQ9MDtEPG4uai5sZW5ndGg7RCsrKW4ualtEXShXKX0pOwpuLlYueFYoImVuZCIsKCk9PntKMShuLElzKG4pKTtmb3IobGV0IFc9MDtXPG4uVy5sZW5ndGg7VysrKW4uV1tXXSgpfSk7Cm4uVi54VigiZXJyb3IiLCgpPT57aWYobi5OLmxlbmd0aCE9PTApe3ZhciBXPW4ueGhyLlc7VyE9PTB8fG4ueGhyLmlzU3VjY2VzcygpfHwoVz02KTt2YXIgRD0tMTtzd2l0Y2goVyl7Y2FzZSAwOnZhciBiPTI7YnJlYWs7Y2FzZSA3OmI9MTA7YnJlYWs7Y2FzZSA4OmI9NDticmVhaztjYXNlIDY6RD1uLnhoci5nZXRTdGF0dXMoKTtiPXozKEQpO2JyZWFrO2RlZmF1bHQ6Yj0xNH1KMShuLElzKG4pKTtXPVJCYihXKSsiLCBlcnJvcjogIituLnhoci5nZXRMYXN0RXJyb3IoKTtEIT09LTEmJihXKz1gLCBodHRwIHN0YXR1cyBjb2RlOiAke0R9YCk7WXEobixuZXcgQ1YoYixXKSl9fSl9OwpZcT1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRD0wO0Q8bi5OLmxlbmd0aDtEKyspbi5OW0RdKFcpfTsKSjE9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQ9MDtEPG4uWC5sZW5ndGg7RCsrKW4uWFtEXShXKX07CklzPWZ1bmN0aW9uKG4pe3ZhciBXPXt9LEQ9Vmp0KG4ueGhyKTtPYmplY3Qua2V5cyhEKS5mb3JFYWNoKGI9PntXW2JdPURbYl19KTsKcmV0dXJuIFd9OwpIWT1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRD0wO0Q8bi5KLmxlbmd0aDtEKyspbi5KW0RdKFcpfTsKZlc9ZnVuY3Rpb24obixXKXt2YXIgRD0yLGI9e307dHJ5e2xldCBrO2s9TTFiKFcpO0Q9YVAoaywxKTt2YXIgdj1rLmdldE1lc3NhZ2UoKTtWRyhrLFJIaSwzKS5sZW5ndGgmJihiWyJncnBjLXdlYi1zdGF0dXMtZGV0YWlscy1iaW4iXT1XKX1jYXRjaChrKXtuLnhociYmbi54aHIuZ2V0U3RhdHVzKCk9PT00MDQ/KEQ9NSx2PSJOb3QgRm91bmQ6ICIrU3RyaW5nKG4ueGhyLkspKTooRD0xNCx2PWBVbmFibGUgdG8gcGFyc2UgUnBjU3RhdHVzOiAke2t9YCl9cmV0dXJue2NvZGU6RCxkZXRhaWxzOnYsbWV0YWRhdGE6Yn19OwpWMVU9ZnVuY3Rpb24obixXKXt2YXIgRD1uZXcgUVBTO0FIKG4ueGhyLCJjb21wbGV0ZSIsKCk9PntpZihuLnhoci5pc1N1Y2Nlc3MoKSl7dmFyIGI9VzMobi54aHIpO2lmKFcmJm4ueGhyLmdldFJlc3BvbnNlSGVhZGVyKCJDb250ZW50LVR5cGUiKT09PSJ0ZXh0L3BsYWluIil7aWYoIWF0b2IpdGhyb3cgRXJyb3IoIkNhbm5vdCBkZWNvZGUgQmFzZTY0IHJlc3BvbnNlIik7Yj1hdG9iKGIpfXRyeXt2YXIgdj1uLksoYil9Y2F0Y2goaCl7WXEobixTUyhuZXcgQ1YoMTMsYEVycm9yIHdoZW4gZGVzZXJpYWxpemluZyByZXNwb25zZSBkYXRhOyBlcnJvcjogJHtofSwgcmVzcG9uc2U6ICR7Yn1gKSxEKSk7cmV0dXJufWI9ejMobi54aHIuZ2V0U3RhdHVzKCkpO0oxKG4sSXMobikpO2I9PT0wP0hZKG4sdik6WXEobixTUyhuZXcgQ1YoYiwiWGhyIHN1Y2NlZWRlZCBidXQgdGhlIHN0YXR1cyBjb2RlIGlzIG5vdCAyMDAiKSxEKSl9ZWxzZXtiPVczKG4ueGhyKTtsZXQgaDt2PUlzKG4pO2lmKGIpe3ZhciBrPQpmVyhuLGIpO2I9ay5jb2RlO2g9ay5kZXRhaWxzO2s9ay5tZXRhZGF0YX1lbHNlIGI9MixoPWBScGMgZmFpbGVkIGR1ZSB0byB4aHIgZXJyb3IuIHVyaTogJHtTdHJpbmcobi54aHIuSyl9LCBlcnJvciBjb2RlOiAke24ueGhyLld9LCBlcnJvcjogJHtuLnhoci5nZXRMYXN0RXJyb3IoKX1gLGs9djtKMShuLHYpO1lxKG4sU1MobmV3IENWKGIsaCxrKSxEKSl9fSl9OwpBMT1mdW5jdGlvbihuLFcpe1c9bi5pbmRleE9mKFcpO1c+LTEmJm4uc3BsaWNlKFcsMSl9OwpTUz1mdW5jdGlvbihuLFcpe1cuc3RhY2smJihuLnN0YWNrKz0iXG4iK1cuc3RhY2spO3JldHVybiBufTsKbUc9ZnVuY3Rpb24obil7dGhpcy5YPW4uWTZ8fG51bGw7dGhpcy5XPW4uWUJ8fCExO3RoaXMuSj12b2lkIDB9OwpLVz1mdW5jdGlvbihuLFcpe2cub1cuY2FsbCh0aGlzKTt0aGlzLnR3PW47dGhpcy5WPVc7dGhpcy5qPXZvaWQgMDt0aGlzLnN0YXR1cz10aGlzLnJlYWR5U3RhdGU9MDt0aGlzLnJlc3BvbnNlVHlwZT10aGlzLnJlc3BvbnNlVGV4dD10aGlzLnJlc3BvbnNlPXRoaXMuc3RhdHVzVGV4dD0iIjt0aGlzLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsO3RoaXMuRD1uZXcgSGVhZGVyczt0aGlzLko9bnVsbDt0aGlzLmNKPSJHRVQiO3RoaXMuTz0iIjt0aGlzLk49ITE7dGhpcy5LPXRoaXMuVz10aGlzLlg9bnVsbDt0aGlzLlk9bmV3IEFib3J0Q29udHJvbGxlcn07Ck9qPWZ1bmN0aW9uKG4pe24uVy5yZWFkKCkudGhlbihuLmxFLmJpbmQobikpLmNhdGNoKG4uRFAuYmluZChuKSl9OwpaYT1mdW5jdGlvbihuKXtuLnJlYWR5U3RhdGU9NDtuLlg9bnVsbDtuLlc9bnVsbDtuLks9bnVsbDtQWShuKX07ClBZPWZ1bmN0aW9uKG4pe24ub25yZWFkeXN0YXRlY2hhbmdlJiZuLm9ucmVhZHlzdGF0ZWNoYW5nZS5jYWxsKG4pfTsKY0FVPWZ1bmN0aW9uKG4pe2lmKG4uejcmJnR5cGVvZiBuLno3PT0iZnVuY3Rpb24iKXJldHVybiBuLno3KCk7aWYodHlwZW9mIE1hcCE9PSJ1bmRlZmluZWQiJiZuIGluc3RhbmNlb2YgTWFwfHx0eXBlb2YgU2V0IT09InVuZGVmaW5lZCImJm4gaW5zdGFuY2VvZiBTZXQpcmV0dXJuIEFycmF5LmZyb20obi52YWx1ZXMoKSk7aWYodHlwZW9mIG49PT0ic3RyaW5nIilyZXR1cm4gbi5zcGxpdCgiIik7aWYoZy5ZMihuKSl7bGV0IFc9W10sRD1uLmxlbmd0aDtmb3IobGV0IGI9MDtiPEQ7YisrKVcucHVzaChuW2JdKTtyZXR1cm4gV31yZXR1cm4gaEsobil9OwphZWg9ZnVuY3Rpb24obil7aWYobi51QiYmdHlwZW9mIG4udUI9PSJmdW5jdGlvbiIpcmV0dXJuIG4udUIoKTtpZighbi56N3x8dHlwZW9mIG4uejchPSJmdW5jdGlvbiIpe2lmKHR5cGVvZiBNYXAhPT0idW5kZWZpbmVkIiYmbiBpbnN0YW5jZW9mIE1hcClyZXR1cm4gQXJyYXkuZnJvbShuLmtleXMoKSk7aWYoISh0eXBlb2YgU2V0IT09InVuZGVmaW5lZCImJm4gaW5zdGFuY2VvZiBTZXQpKXtpZihnLlkyKG4pfHx0eXBlb2Ygbj09PSJzdHJpbmciKXtsZXQgVz1bXTtuPW4ubGVuZ3RoO2ZvcihsZXQgRD0wO0Q8bjtEKyspVy5wdXNoKEQpO3JldHVybiBXfXJldHVybiBnLkxUKG4pfX19OwpuS2k9ZnVuY3Rpb24obixXLEQpe2lmKG4uZm9yRWFjaCYmdHlwZW9mIG4uZm9yRWFjaD09ImZ1bmN0aW9uIiluLmZvckVhY2goVyxEKTtlbHNlIGlmKGcuWTIobil8fHR5cGVvZiBuPT09InN0cmluZyIpQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChuLFcsRCk7ZWxzZXtsZXQgYj1hZWgobiksdj1jQVUobiksaz12Lmxlbmd0aDtmb3IobGV0IGg9MDtoPGs7aCsrKVcuY2FsbChELHZbaF0sYiYmYltoXSxuKX19OwpnLlVqPWZ1bmN0aW9uKG4pe3RoaXMuTj10aGlzLlk9dGhpcy5YPSIiO3RoaXMuVj1udWxsO3RoaXMuaj10aGlzLko9IiI7dGhpcy5LPSExO3ZhciBXO24gaW5zdGFuY2VvZiBnLlVqPyh0aGlzLks9bi5LLHlOKHRoaXMsbi5YKSx0aGlzLlk9bi5ZLEVqKHRoaXMsbi5OKSxpcih0aGlzLG4uViksdGhpcy5KPW4uSix1cih0aGlzLG4uVy5jbG9uZSgpKSx0aGlzLmo9bi5qKTpuJiYoVz1nLmZwKFN0cmluZyhuKSkpPyh0aGlzLks9ITEseU4odGhpcyxXWzFdfHwiIiwhMCksdGhpcy5ZPW9zKFdbMl18fCIiKSxFaih0aGlzLFdbM118fCIiLCEwKSxpcih0aGlzLFdbNF0pLHRoaXMuSj1vcyhXWzVdfHwiIiwhMCksdXIodGhpcyxXWzZdfHwiIiwhMCksdGhpcy5qPW9zKFdbN118fCIiKSk6KHRoaXMuSz0hMSx0aGlzLlc9bmV3IGRoKG51bGwsdGhpcy5LKSl9Owp5Tj1mdW5jdGlvbihuLFcsRCl7bi5YPUQ/b3MoVywhMCk6VztuLlgmJihuLlg9bi5YLnJlcGxhY2UoLzokLywiIikpfTsKRWo9ZnVuY3Rpb24obixXLEQpe24uTj1EP29zKFcsITApOld9Owppcj1mdW5jdGlvbihuLFcpe2lmKFcpe1c9TnVtYmVyKFcpO2lmKGlzTmFOKFcpfHxXPDApdGhyb3cgRXJyb3IoIkJhZCBwb3J0IG51bWJlciAiK1cpO24uVj1XfWVsc2Ugbi5WPW51bGx9Owp1cj1mdW5jdGlvbihuLFcsRCl7VyBpbnN0YW5jZW9mIGRoPyhuLlc9VyxXeGgobi5XLG4uSykpOihEfHwoVz16TihXLER4UykpLG4uVz1uZXcgZGgoVyxuLkspKX07CmxyPWZ1bmN0aW9uKG4pe3JldHVybiBuIGluc3RhbmNlb2YgZy5Vaj9uLmNsb25lKCk6bmV3IGcuVWoobil9Owpvcz1mdW5jdGlvbihuLFcpe3JldHVybiBuP1c/ZGVjb2RlVVJJKG4ucmVwbGFjZSgvJTI1L2csIiUyNTI1IikpOmRlY29kZVVSSUNvbXBvbmVudChuKToiIn07CnpOPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gdHlwZW9mIG49PT0ic3RyaW5nIj8obj1lbmNvZGVVUkkobikucmVwbGFjZShXLGIweCksRCYmKG49bi5yZXBsYWNlKC8lMjUoWzAtOWEtZkEtRl17Mn0pL2csIiUkMSIpKSxuKTpudWxsfTsKYjB4PWZ1bmN0aW9uKG4pe249bi5jaGFyQ29kZUF0KDApO3JldHVybiIlIisobj4+NCYxNSkudG9TdHJpbmcoMTYpKyhuJjE1KS50b1N0cmluZygxNil9OwpkaD1mdW5jdGlvbihuLFcpe3RoaXMuSj10aGlzLk49bnVsbDt0aGlzLlc9bnx8bnVsbDt0aGlzLlg9ISFXfTsKVE49ZnVuY3Rpb24obil7bi5OfHwobi5OPW5ldyBNYXAsbi5KPTAsbi5XJiZnLk9UKG4uVyxmdW5jdGlvbihXLEQpe24uYWRkKEc1KFcpLEQpfSkpfTsKQ1c9ZnVuY3Rpb24obixXKXtUTihuKTtXPWpTKG4sVyk7cmV0dXJuIG4uTi5oYXMoVyl9OwpqUz1mdW5jdGlvbihuLFcpe1c9U3RyaW5nKFcpO24uWCYmKFc9Vy50b0xvd2VyQ2FzZSgpKTtyZXR1cm4gV307Cld4aD1mdW5jdGlvbihuLFcpe1cmJiFuLlgmJihUTihuKSxuLlc9bnVsbCxuLk4uZm9yRWFjaChmdW5jdGlvbihELGIpe3ZhciB2PWIudG9Mb3dlckNhc2UoKTtiIT12JiYodGhpcy5yZW1vdmUoYiksdGhpcy5yZW1vdmUodiksRC5sZW5ndGg+MCYmKHRoaXMuVz1udWxsLHRoaXMuTi5zZXQoalModGhpcyx2KSxnLlJNKEQpKSx0aGlzLko9dGhpcy5KK0QubGVuZ3RoKSl9LG4pKTsKbi5YPVd9Owp2S2I9ZnVuY3Rpb24obil7dmFyIFc9IiI7Zy5hXyhuLGZ1bmN0aW9uKEQsYil7Vys9YjtXKz0iOiI7Vys9RDtXKz0iXHJcbiJ9KTsKcmV0dXJuIFd9OwpCWT1mdW5jdGlvbihuKXtnLkZNLmNhbGwodGhpcyk7dGhpcy5KPW47dGhpcy5OPXt9fTsKRm09ZnVuY3Rpb24obixXLEQsYix2LGspe2lmKEFycmF5LmlzQXJyYXkoRCkpZm9yKGxldCBoPTA7aDxELmxlbmd0aDtoKyspRm0obixXLERbaF0sYix2LGspO2Vsc2V7Vz1TZyhXLEQsYnx8bi5oYW5kbGVFdmVudCx2LGt8fG4uSnx8bik7aWYoIVcpcmV0dXJuIG47bi5OW1cua2V5XT1XfXJldHVybiBufTsKd2g9ZnVuY3Rpb24obixXLEQpe24uVz0hMTt0aHJvdyBFcnJvcigiVGhlIHN0cmVhbSBpcyBicm9rZW4gQCIrbi5KKyIuIEVycm9yOiAiK0QrIi4gV2l0aCBpbnB1dDpcbiIrVyk7fTsKTXQ9ZnVuY3Rpb24oKXt0aGlzLlY9bnVsbDt0aGlzLks9W107dGhpcy5YPXRoaXMuSj10aGlzLlc9dGhpcy5OPXRoaXMuRD0wO3RoaXMuaj1udWxsO3RoaXMuWT0wfTsKUnM9ZnVuY3Rpb24obixXLEQsYil7bi5OPTM7bi5WPSJUaGUgc3RyZWFtIGlzIGJyb2tlbiBAIituLkQrIi8iK0QrIi4gRXJyb3I6ICIrYisiLiBXaXRoIGlucHV0OlxuIitXO3Rocm93IEVycm9yKG4uVik7fTsKUU49ZnVuY3Rpb24oKXt0aGlzLk49bnVsbDt0aGlzLko9MDt0aGlzLlc9bmV3IGtoUzt0aGlzLlg9bmV3IE10fTsKVk49ZnVuY3Rpb24obixXLEQpe24uTj0iVGhlIHN0cmVhbSBpcyBicm9rZW4gQCIrbi5KKyIuIEVycm9yOiAiK0QrIi4gV2l0aCBpbnB1dDpcbiIrVzt0aHJvdyBFcnJvcihuLk4pO307CmNZPWZ1bmN0aW9uKG4pe3JldHVybiBuPT0iXHIifHxuPT0iXG4ifHxuPT0iICJ8fG49PSJcdCJ9Owphcz1mdW5jdGlvbihuKXt0aGlzLkQ9bnVsbDt0aGlzLlY9W107dGhpcy5YPSIiO3RoaXMuY0o9W107dGhpcy5XPXRoaXMuSj0wO3RoaXMuSz0hMTt0aGlzLlk9MDt0aGlzLnR3PS9bXFwiXS9nO3RoaXMuTj10aGlzLmo9MDt0aGlzLk89ISghbnx8IW4uWkgpfTsKbl89ZnVuY3Rpb24obixXLEQpe24uaj0zO24uRD0iVGhlIHN0cmVhbSBpcyBicm9rZW4gQCIrbi5XKyIvIitEKyIuIFdpdGggaW5wdXQ6XG4iK1c7dGhyb3cgRXJyb3Iobi5EKTt9OwpXSz1mdW5jdGlvbigpe3RoaXMuaj10aGlzLlc9bnVsbDt0aGlzLko9dGhpcy5OPTA7dGhpcy5YPVtdO3RoaXMuVj0hMX07CmhDeD1mdW5jdGlvbihuKXt2YXIgVz1uLk4/bi5OLmdldFJlc3BvbnNlSGVhZGVyKCJDb250ZW50LVR5cGUiKTpudWxsO2lmKCFXKXJldHVybiBudWxsO1c9Vy50b0xvd2VyQ2FzZSgpO3JldHVybiBXLnN0YXJ0c1dpdGgoImFwcGxpY2F0aW9uL2pzb24iKT9XLnN0YXJ0c1dpdGgoImFwcGxpY2F0aW9uL2pzb24rcHJvdG9idWYiKT9uZXcgV0s6bmV3IGFzOlcuc3RhcnRzV2l0aCgiYXBwbGljYXRpb24veC1wcm90b2J1ZiIpPyhuPW4uTj9uLk4uZ2V0UmVzcG9uc2VIZWFkZXIoIkNvbnRlbnQtVHJhbnNmZXItRW5jb2RpbmciKTpudWxsKT9uLnRvTG93ZXJDYXNlKCk9PSJiYXNlNjQiP25ldyBRTjpudWxsOm5ldyBNdDpudWxsfTsKRGk9ZnVuY3Rpb24obixXKXtuLmohPVcmJihuLmo9VyxuLksmJm4uSygpKX07CmJIPWZ1bmN0aW9uKG4pe24uWS5UaSgpO2lmKG4uTil7bGV0IFc9bi5OO24uTj1udWxsO1cuYWJvcnQoKTtXLmRpc3Bvc2UoKX19Owp2Sz1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7RCsrKXtsZXQgYj1uW0RdO1cuZm9yRWFjaChmdW5jdGlvbih2KXt0cnl7dihiKX1jYXRjaChrKXt9fSl9fTsKa3Q9ZnVuY3Rpb24obixXKXt2YXIgRD1uLkpbV107RCYmRC5mb3JFYWNoKGZ1bmN0aW9uKGIpe3RyeXtiKCl9Y2F0Y2godil7fX0pOwooRD1uLk5bV10pJiZELmZvckVhY2goZnVuY3Rpb24oYil7YigpfSk7Cm4uTltXXT1bXX07Cnh4aj1mdW5jdGlvbihuLFcpe3JldHVybiBXLnJlZHVjZSgoRCxiKT0+dj0+Yi5pbnRlcmNlcHQodixEKSxuKX07Ckx4aT1mdW5jdGlvbihuLFcpe3JldHVybiBXLnJlZHVjZSgoRCxiKT0+dj0+Yi5pbnRlcmNlcHQodixEKSxuKX07CmVDVT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Vy5sMCx2PVcuZ2V0TWV0YWRhdGEoKSxrPWhhKG4sITApO249eHQobix2LGssRCtiLmdldE5hbWUoKSk7RD1MXyhrLGIuVywhMSk7VjFVKEQsdlsiWC1Hb29nLUVuY29kZS1SZXNwb25zZS1JZi1FeGVjdXRhYmxlIl09PT0iYmFzZTY0Iik7Vz1iLk4oVy5mdik7ay5zZW5kKG4sIlBPU1QiLFcpO3JldHVybiBEfTsKZ0t0PWZ1bmN0aW9uKG4sVyxELGIsdixrPXt9KXt2YXIgaD1XLnN1YnN0cmluZygwLFcubGVuZ3RoLXYubmFtZS5sZW5ndGgpLHg9az8uc2lnbmFsO3JldHVybiBMeGkoTD0+bmV3IFByb21pc2UoKGUsRyk9PntpZih4Py5hYm9ydGVkKXtsZXQgSD1uZXcgQ1YoMSwiQWJvcnRlZCIpO0guY2F1c2U9eC5yZWFzb247RyhIKX1lbHNle3ZhciByPXt9LE49ZUNVKG4sTCxoKTtOLnhWKCJlcnJvciIsSD0+dm9pZCBHKEgpKTsKTi54VigibWV0YWRhdGEiLEg9PntyPUh9KTsKTi54VigiZGF0YSIsSD0+e2UoRldaKEgscikpfSk7CngmJnguYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLCgpPT57Ti5jYW5jZWwoKTt2YXIgSD1uZXcgQ1YoMSwiQWJvcnRlZCIpO0guY2F1c2U9eC5yZWFzb247RyhIKX0pfX0pLG4uRk4pLmNhbGwobix2LkooRCxiKSkudGhlbihMPT5MLlB6KX07ClhkPWZ1bmN0aW9uKG4sVz0hMSl7ZVgoMjgsNzIzMSxuKTtpZihuW0lbMjhdXSE9PUlbMTVdKXt2YXIgRD1uW0lbOF1dKCk7RFtJWzM0XV0oSVszMl0sSVs0MF0pO3JldHVybiBEfXZhciBiPW5bSVs3Ml1dKCk7RD1uZXcgZy5VaihiKTt2YXIgdj1uW0lbMzNdXShJWzcwXSksaz1NMygxNiw0MjYyLG5bSVszM11dKElbNzRdKXx8SVsyMV0pW0lbMzZdXShJWzQ3XSk7aWYodiYmayYma1tJWzVdXT4xJiZrWzFdKXJldHVybiBiPUQuTixuPWJbSVs4MV1dKC9eW14uXSovLElbMjFdKSxFaihELGAke2JbSVsxOF1dKElbNDRdKT09PTA/SVs0NF06SVs4MF19JHt2fS0tLSR7a1sxXX0ke259YCksRD1uZXcgZy53WihEW0lbMF1dKCkpLERbSVszNF1dKElbMzhdLElbNDBdKSxEO2lmKFcpcmV0dXJuIEQ9bltJWzhdXSgpLERbSVszNF1dKElbMzhdLElbNDBdKSxEO3Y9RC5OW0lbNl1dKElbNTZdKTtELk5bSVs2XV0oSVsyN10pPyhFaihELElbODJdKSxiPURbSVswXV0oKSk6RC5OW0lbNl1dKElbNTJdKT8KKEVqKEQsSVsxOV0pLGI9RFtJWzBdXSgpKTooRD1lQShiKSxnWChEKSYmKGI9RCkpO0Q9bmV3IGcud1ooYik7RFtJWzM0XV0oSVs3OV0sSVs0MF0pO3YmJkRbSVszNF1dKElbMl0sSVs3MV0pO3JldHVybiBEfTsKWVk9ZnVuY3Rpb24obixXLEQsYix2LGs9e30pe3JldHVybiBnS3QobixXLEQsYix2LGspfTsKaGE9ZnVuY3Rpb24obixXKXtXPW4uTiYmIVc7cmV0dXJuIG4uU258fFc/bmV3IHdwKG5ldyBtRyh7WTY6bi5TbixZQjpXfSkpOm5ldyB3cH07Cnh0PWZ1bmN0aW9uKG4sVyxELGIpe1dbIkNvbnRlbnQtVHlwZSJdPSJhcHBsaWNhdGlvbi9qc29uK3Byb3RvYnVmIjtXWyJYLVVzZXItQWdlbnQiXT0iZ3JwYy13ZWItamF2YXNjcmlwdC8wLjEiO3ZhciB2PVcuQXV0aG9yaXphdGlvbjtpZih2JiZYMnIuaGFzKHYuc3BsaXQoIiAiKVswXSl8fG4ud2l0aENyZWRlbnRpYWxzKUQuTz0hMDtpZihuLllPKW49YixnLkdGKFcpP2I9bjooVz12S2IoVyksdHlwZW9mIG49PT0ic3RyaW5nIj9iPWcudWYobixxaCgiJGh0dHBIZWFkZXJzIiksVyk6KG4uVy5zZXQoIiRodHRwSGVhZGVycyIsVyksYj1uKSk7ZWxzZSBmb3IobGV0IGsgb2YgT2JqZWN0LmtleXMoVykpRC5oZWFkZXJzLnNldChrLFdba10pO3JldHVybiBifTsKTF89ZnVuY3Rpb24obixXLEQpe2lmKEQpe24uaXNBY3RpdmUoKTtEPW5ldyBxQXQobik7dmFyIGI9bmV3IEdoaShEKX1yZXR1cm4gbmV3IHR1MSh7eGhyOm4sTUU6Yn0sVyl9Owpxdz1mdW5jdGlvbigpe3RoaXMuTj1uZXcgJHhoO3RoaXMuSj0iaHR0cHM6Ly9qbm4tcGEuZ29vZ2xlYXBpcy5jb20iLnJlcGxhY2UoL1wvKyQvLCIiKX07CmcuR0s9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5yZXBsYWNlKHI0MixmdW5jdGlvbihELGIpe3RyeXtsZXQgdj1nLiR5KFcsYik7aWYodj09bnVsbHx8di50b1N0cmluZygpPT1udWxsKXJldHVybiBEO3Y9di50b1N0cmluZygpO2lmKHY9PSIifHwhZy5GaChnLnJUKHYpKSlyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KHYpLnJlcGxhY2UoLyUyQy9nLCIsIil9Y2F0Y2godil7fXJldHVybiBEfSl9OwpzMnc9ZnVuY3Rpb24oKXt2YXIgbj10YTskdC5pbnN0YW5jZXx8KCR0Lmluc3RhbmNlPW5ldyAkdChuKSk7cmV0dXJuICR0Lmluc3RhbmNlfTsKclg9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5XP24uVzpuLlc9bmV3IFByb21pc2UoYXN5bmMgRD0+e3ZhciBiPXdpbmRvdy5BYm9ydENvbnRyb2xsZXI/bmV3IHdpbmRvdy5BYm9ydENvbnRyb2xsZXI6dm9pZCAwLHY9Yj8uc2lnbmFsLGs9ITE7dHJ5e2ImJihuLk49bi5BJC5MUygoKT0+e2IuYWJvcnQoKX0sV3x8MkU0KSksYXdhaXQgZmV0Y2goIi9nZW5lcmF0ZV8yMDQiLHttZXRob2Q6IkhFQUQiLApzaWduYWw6dn0pLGs9ITB9Y2F0Y2h7az0hMX1maW5hbGx5e24uVz12b2lkIDAsbi5OJiYobi5BJC5zTyhuLk4pLG4uTj0wKSxrIT09bi5pc09ubGluZSYmKG4uaXNPbmxpbmU9ayxuLmlzT25saW5lP24uZGlzcGF0Y2hFdmVudCgibmV0d29ya3N0YXR1cy1vbmxpbmUiKTpuLmRpc3BhdGNoRXZlbnQoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIpKSxEKGspfX0pfTsKTldoPWZ1bmN0aW9uKG4pe24uTj09PS0xJiYobi5OPW4uZGF0YS5yZWR1Y2UoKFcsRCxiKT0+VysoRD8yKipiOjApLDApKTsKcmV0dXJuIG4uTn07Cmcuc0k9ZnVuY3Rpb24obixXLEQ9ITEpe2lmKG4mJlchPT1udWxsJiZXIT1XLnRvcCl7aWYoIVcudG9wKXJldHVybiBuZXcgZy5RZSgtMTIyNDU5MzMsLTEyMjQ1OTMzKTtXPVcudG9wfXRyeXtpZihEKXZhciBiPShuZXcgZy5RZShXLmlubmVyV2lkdGgsVy5pbm5lckhlaWdodCkpLnJvdW5kKCk7ZWxzZXtsZXQgdj0oV3x8d2luZG93KS5kb2N1bWVudCxrPXYuY29tcGF0TW9kZT09IkNTUzFDb21wYXQiP3YuZG9jdW1lbnRFbGVtZW50OnYuYm9keTtiPShuZXcgZy5RZShrLmNsaWVudFdpZHRoLGsuY2xpZW50SGVpZ2h0KSkucm91bmQoKX1yZXR1cm4gYn1jYXRjaCh2KXtyZXR1cm4gbmV3IGcuUWUoLTEyMjQ1OTMzLC0xMjI0NTkzMyl9fTsKZy5Odz1mdW5jdGlvbihuKXtyZXR1cm4gbi5wcmVyZW5kZXJpbmc/Mzp7dmlzaWJsZToxLGhpZGRlbjoyLHByZXJlbmRlcjozLHByZXZpZXc6NCx1bmxvYWRlZDo1LCIiOjB9W24udmlzaWJpbGl0eVN0YXRlfHxuLndlYmtpdFZpc2liaWxpdHlTdGF0ZXx8bi5tb3pWaXNpYmlsaXR5U3RhdGV8fCIiXT8/MH07CmcucF89ZnVuY3Rpb24obixXLEQpe2cuRk0uY2FsbCh0aGlzKTt0aGlzLk49bnVsbDt0aGlzLlg9ITE7dGhpcy5WPW47dGhpcy5qPUQ7dGhpcy5KPVd8fHdpbmRvdzt0aGlzLlc9KDAsZy5LdCkodGhpcy5PdCx0aGlzKX07Cll0PWZ1bmN0aW9uKG4pe249bi5KO3JldHVybiBuLnJlcXVlc3RBbmltYXRpb25GcmFtZXx8bi53ZWJraXRSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fG4ubW96UmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxuLm9SZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fG4ubXNSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fG51bGx9OwpISz1mdW5jdGlvbihuKXtuPW4uSjtyZXR1cm4gbi5jYW5jZWxBbmltYXRpb25GcmFtZXx8bi5jYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fG4ud2Via2l0Q2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxuLm1vekNhbmNlbFJlcXVlc3RBbmltYXRpb25GcmFtZXx8bi5vQ2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxuLm1zQ2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxudWxsfTsKZy5mXz1mdW5jdGlvbihuLFcsRCl7Zy5GTS5jYWxsKHRoaXMpO3RoaXMuTj1uO3RoaXMuZ3Q9V3x8MDt0aGlzLko9RDt0aGlzLlc9KDAsZy5LdCkodGhpcy5pJCx0aGlzKX07CmcuSmE9ZnVuY3Rpb24obixXKXtuLmlzQWN0aXZlKCl8fG4uc3RhcnQoVyl9OwpJRj1mdW5jdGlvbihuKXtuLlo2PWcuWnQoKCk9PntuLlo2PW51bGw7bi5OJiYhbi5KJiYobi5OPSExLElGKG4pKX0sbi5ndCk7CnZhciBXPW4uVztuLlc9bnVsbDtuLlguYXBwbHkobnVsbCxXKX07ClNBPWZ1bmN0aW9uKG4pe3JldHVybiB0eXBlb2Ygbi5jbGFzc05hbWU9PSJzdHJpbmciP24uY2xhc3NOYW1lOm4uZ2V0QXR0cmlidXRlJiZuLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiJ9OwpBYT1mdW5jdGlvbihuKXtyZXR1cm4gbi5jbGFzc0xpc3Q/bi5jbGFzc0xpc3Q6U0EobikubWF0Y2goL1xTKy9nKXx8W119OwptYT1mdW5jdGlvbihuLFcpe3R5cGVvZiBuLmNsYXNzTmFtZT09InN0cmluZyI/bi5jbGFzc05hbWU9VzpuLnNldEF0dHJpYnV0ZSYmbi5zZXRBdHRyaWJ1dGUoImNsYXNzIixXKX07CmcuS189ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5jbGFzc0xpc3Q/bi5jbGFzc0xpc3QuY29udGFpbnMoVyk6Zy5qaihBYShuKSxXKX07CmcuVUk9ZnVuY3Rpb24obixXKXtpZihuLmNsYXNzTGlzdCluLmNsYXNzTGlzdC5hZGQoVyk7ZWxzZSBpZighZy5LXyhuLFcpKXtsZXQgRD1TQShuKTttYShuLEQrKEQubGVuZ3RoPjA/IiAiK1c6VykpfX07CnlLPWZ1bmN0aW9uKG4sVyl7aWYobi5jbGFzc0xpc3QpQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChXLGZ1bmN0aW9uKGIpe2cuVUkobixiKX0pOwplbHNle3ZhciBEPXt9O0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoQWEobiksZnVuY3Rpb24oYil7RFtiXT0hMH0pOwpBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKFcsZnVuY3Rpb24oYil7RFtiXT0hMH0pOwpXPSIiO2ZvcihsZXQgYiBpbiBEKVcrPVcubGVuZ3RoPjA/IiAiK2I6YjttYShuLFcpfX07CmcuRUk9ZnVuY3Rpb24obixXKXtuLmNsYXNzTGlzdD9uLmNsYXNzTGlzdC5yZW1vdmUoVyk6Zy5LXyhuLFcpJiZtYShuLEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChBYShuKSxmdW5jdGlvbihEKXtyZXR1cm4gRCE9V30pLmpvaW4oIiAiKSl9OwpwMmo9ZnVuY3Rpb24obixXKXtuLmNsYXNzTGlzdD9BcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKFcsZnVuY3Rpb24oRCl7Zy5FSShuLEQpfSk6bWEobixBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoQWEobiksZnVuY3Rpb24oRCl7cmV0dXJuIWcuamooVyxEKX0pLmpvaW4oIiAiKSl9OwpnLmlIPWZ1bmN0aW9uKG4sVyxEKXtEP2cuVUkobixXKTpnLkVJKG4sVyl9Owp1SD1mdW5jdGlvbigpe307CllBMT1mdW5jdGlvbihuKXtpZihuIGluc3RhbmNlb2Ygb0Z8fG4gaW5zdGFuY2VvZiBkWHx8biBpbnN0YW5jZW9mIHpLKXJldHVybiBuO2lmKHR5cGVvZiBuLm5leHQ9PSJmdW5jdGlvbiIpcmV0dXJuIG5ldyBvRigoKT0+bik7CmlmKHR5cGVvZiBuW1N5bWJvbC5pdGVyYXRvcl09PSJmdW5jdGlvbiIpcmV0dXJuIG5ldyBvRigoKT0+bltTeW1ib2wuaXRlcmF0b3JdKCkpOwppZih0eXBlb2Ygbi5ncT09ImZ1bmN0aW9uIilyZXR1cm4gbmV3IG9GKCgpPT5uLmdxKCkpOwp0aHJvdyBFcnJvcigiTm90IGFuIGl0ZXJhdG9yIG9yIGl0ZXJhYmxlLiIpO307CmxIPWZ1bmN0aW9uKG4sVyxELGIsdixrLGgseCl7dGhpcy5OPW47dGhpcy5LPVc7dGhpcy5XPUQ7dGhpcy5qPWI7dGhpcy5YPXY7dGhpcy5WPWs7dGhpcy5KPWg7dGhpcy5ZPXh9OwpUSz1mdW5jdGlvbihuLFcpe2lmKFc9PTApcmV0dXJuIG4uTjtpZihXPT0xKXJldHVybiBuLko7dmFyIEQ9d1Eobi5OLG4uVyxXKSxiPXdRKG4uVyxuLlgsVyk7bj13UShuLlgsbi5KLFcpO0Q9d1EoRCxiLFcpO2I9d1EoYixuLFcpO3JldHVybiB3UShELGIsVyl9OwpIMGk9ZnVuY3Rpb24obixXKXt2YXIgRD0oVy1uLk4pLyhuLkotbi5OKTtpZihEPD0wKXJldHVybiAwO2lmKEQ+PTEpcmV0dXJuIDE7dmFyIGI9MCx2PTEsaz0wO2Zvcih2YXIgaD0wO2g8ODtoKyspe2s9VEsobixEKTtsZXQgeD0oVEsobixEKzFFLTYpLWspLzFFLTY7aWYoTWF0aC5hYnMoay1XKTwxRS02KXJldHVybiBEO2lmKE1hdGguYWJzKHgpPDFFLTYpYnJlYWs7ZWxzZSBrPFc/Yj1EOnY9RCxELT0oay1XKS94fWZvcihoPTA7TWF0aC5hYnMoay1XKT4xRS02JiZoPDg7aCsrKWs8Vz8oYj1ELEQ9KEQrdikvMik6KHY9RCxEPShEK2IpLzIpLGs9VEsobixEKTtyZXR1cm4gRH07CmpBPWZ1bmN0aW9uKG4pe3JldHVybihuPW4uZXhlYyhnLlhRKCkpKT9uWzFdOiIifTsKQ189ZnVuY3Rpb24obil7cmV0dXJuIGcuY1ooZlgyLG4pPj0wfTsKQks9ZnVuY3Rpb24obil7Zy5GTS5jYWxsKHRoaXMpO3RoaXMuVj0xO3RoaXMuVz1bXTt0aGlzLlg9MDt0aGlzLk49W107dGhpcy5KPXt9O3RoaXMuSz0hIW59OwpKNHI9ZnVuY3Rpb24obixXLEQpe2cubUsoZnVuY3Rpb24oKXtuLmFwcGx5KFcsRCl9KX07CmcuRmQ9ZnVuY3Rpb24obil7dGhpcy5OPW59Owp3WD1mdW5jdGlvbihuKXt0aGlzLk49bn07Ck13PWZ1bmN0aW9uKG4pe3RoaXMuZGF0YT1ufTsKUkY9ZnVuY3Rpb24obil7cmV0dXJuIG49PT12b2lkIDB8fG4gaW5zdGFuY2VvZiBNdz9uOm5ldyBNdyhuKX07ClFLPWZ1bmN0aW9uKG4pe3RoaXMuTj1ufTsKVks9ZnVuY3Rpb24obil7dGhpcy5OPW59OwpJWDE9ZnVuY3Rpb24oKXt9OwpjSz1mdW5jdGlvbigpe307CmFGPWZ1bmN0aW9uKG4pe3RoaXMuTj1uO3RoaXMuSj1udWxsfTsKbmU9ZnVuY3Rpb24obil7aWYobi5OPT1udWxsKXRocm93IEVycm9yKCJTdG9yYWdlIG1lY2hhbmlzbTogU3RvcmFnZSB1bmF2YWlsYWJsZSIpO24uaXNBdmFpbGFibGUoKXx8aDQoRXJyb3IoIlN0b3JhZ2UgbWVjaGFuaXNtOiBTdG9yYWdlIHVuYXZhaWxhYmxlIikpfTsKV1M9ZnVuY3Rpb24oKXt2YXIgbj1udWxsO3RyeXtuPWcucWkubG9jYWxTdG9yYWdlfHxudWxsfWNhdGNoKFcpe31hRi5jYWxsKHRoaXMsbil9OwpEUT1mdW5jdGlvbigpe3ZhciBuPW51bGw7dHJ5e249Zy5xaS5zZXNzaW9uU3RvcmFnZXx8bnVsbH1jYXRjaChXKXt9YUYuY2FsbCh0aGlzLG4pfTsKYkM9ZnVuY3Rpb24obixXKXt0aGlzLko9bjt0aGlzLk49VysiOjoifTsKZy52Uz1mdW5jdGlvbihuKXt2YXIgVz1uZXcgV1M7cmV0dXJuIFcuaXNBdmFpbGFibGUoKT9uP25ldyBiQyhXLG4pOlc6bnVsbH07CmtqPWZ1bmN0aW9uKG4sVyl7dGhpcy5OPW47dGhpcy5KPVd9Owp4aj1mdW5jdGlvbihuKXt2YXIgVyxELGI9bi5sZW5ndGgsdj0wO2ZvcihXPTA7VzxiO1crKyl7dmFyIGs9bi5jaGFyQ29kZUF0KFcpO2lmKChrJjY0NTEyKT09PTU1Mjk2JiZXKzE8Yil7dmFyIGg9bi5jaGFyQ29kZUF0KFcrMSk7KGgmNjQ1MTIpPT09NTYzMjAmJihrPTY1NTM2KyhrLTU1Mjk2PDwxMCkrKGgtNTYzMjApLFcrKyl9dis9azwxMjg/MTprPDIwNDg/MjprPDY1NTM2PzM6NH12YXIgeD1uZXcgaGsuT20odik7Zm9yKFc9RD0wO0Q8djtXKyspaz1uLmNoYXJDb2RlQXQoVyksKGsmNjQ1MTIpPT09NTUyOTYmJlcrMTxiJiYoaD1uLmNoYXJDb2RlQXQoVysxKSwoaCY2NDUxMik9PT01NjMyMCYmKGs9NjU1MzYrKGstNTUyOTY8PDEwKSsoaC01NjMyMCksVysrKSksazwxMjg/eFtEKytdPWs6KGs8MjA0OD94W0QrK109MTkyfGs+Pj42OihrPDY1NTM2P3hbRCsrXT0yMjR8az4+PjEyOih4W0QrK109MjQwfGs+Pj4xOCx4W0QrK109MTI4fGs+Pj4xMiY2MykseFtEKytdPTEyOHxrPj4+CjYmNjMpLHhbRCsrXT0xMjh8ayY2Myk7cmV0dXJuIHh9OwpMZT1mdW5jdGlvbihuKXtmb3IodmFyIFc9bi5sZW5ndGg7LS1XPj0wOyluW1ddPTB9Owpldj1mdW5jdGlvbihuLFcsRCxiLHYpe3RoaXMua089bjt0aGlzLmJFPVc7dGhpcy50cD1EO3RoaXMuYXo9Yjt0aGlzLnVIPXY7dGhpcy5aZD1uJiZuLmxlbmd0aH07CnZhciBTQTE9ZnVuY3Rpb24obil7cmV0dXJuIGc3W0lbMTBdXSh0aGlzLDI1LDYzMjIsbil9Owp0az1mdW5jdGlvbihuLFcpe3RoaXMuTTA9bjt0aGlzLnJPPTA7dGhpcy5BWj1XfTsKcjc9ZnVuY3Rpb24obixXKXtuLkZCW24ucGVuZGluZysrXT1XJjI1NTtuLkZCW24ucGVuZGluZysrXT1XPj4+OCYyNTV9OwpzJD1mdW5jdGlvbihuLFcsRCl7bi5ZSD4xNi1EPyhuLlJKfD1XPDxuLllIJjY1NTM1LHI3KG4sbi5SSiksbi5SSj1XPj4xNi1uLllILG4uWUgrPUQtMTYpOihuLlJKfD1XPDxuLllIJjY1NTM1LG4uWUgrPUQpfTsKTjY9ZnVuY3Rpb24obixXLEQpe3MkKG4sRFtXKjJdLERbVyoyKzFdKX07CnBlPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MDtkbyBEfD1uJjEsbj4+Pj0xLEQ8PD0xO3doaWxlKC0tVz4wKTtyZXR1cm4gRD4+PjF9OwpZaj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9QXJyYXkoMTYpLHY9MCxrO2ZvcihrPTE7azw9MTU7aysrKWJba109dj12K0Rbay0xXTw8MTtmb3IoRD0wO0Q8PVc7RCsrKXY9bltEKjIrMV0sdiE9PTAmJihuW0QqMl09cGUoYlt2XSsrLHYpKX07CkhTPWZ1bmN0aW9uKG4pe3ZhciBXO2ZvcihXPTA7VzwyODY7VysrKW4ua0dbVyoyXT0wO2ZvcihXPTA7VzwzMDtXKyspbi5sZltXKjJdPTA7Zm9yKFc9MDtXPDE5O1crKyluLndoW1cqMl09MDtuLmtHWzUxMl09MTtuLlhSPW4uVHY9MDtuLndYPW4ubWF0Y2hlcz0wfTsKZmU9ZnVuY3Rpb24obil7bi5ZSD44P3I3KG4sbi5SSik6bi5ZSD4wJiYobi5GQltuLnBlbmRpbmcrK109bi5SSik7bi5SSj0wO24uWUg9MH07CkprPWZ1bmN0aW9uKG4sVyxEKXtmZShuKTtyNyhuLEQpO3I3KG4sfkQpO2hrLlA3KG4uRkIsbi53aW5kb3csVyxELG4ucGVuZGluZyk7bi5wZW5kaW5nKz1EfTsKSVM9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9VyoyLGs9RCoyO3JldHVybiBuW3ZdPG5ba118fG5bdl09PT1uW2tdJiZiW1ddPD1iW0RdfTsKU3Y9ZnVuY3Rpb24obixXLEQpe2Zvcih2YXIgYj1uLmhlYXBbRF0sdj1EPDwxO3Y8PW4uVW47KXt2PG4uVW4mJklTKFcsbi5oZWFwW3YrMV0sbi5oZWFwW3ZdLG4uZGVwdGgpJiZ2Kys7aWYoSVMoVyxiLG4uaGVhcFt2XSxuLmRlcHRoKSlicmVhaztuLmhlYXBbRF09bi5oZWFwW3ZdO0Q9djt2PDw9MX1uLmhlYXBbRF09Yn07ClUkPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj0wO2lmKG4ud1ghPT0wKXtkb3t2YXIgdj1uLkZCW24uQTgrYioyXTw8OHxuLkZCW24uQTgrYioyKzFdO3ZhciBrPW4uRkJbbi50YStiXTtiKys7aWYodj09PTApTjYobixrLFcpO2Vsc2V7dmFyIGg9QWtba107TjYobixoKzI1NisxLFcpO3ZhciB4PW0kW2hdO3ghPT0wJiYoay09S2VbaF0scyQobixrLHgpKTt2LS07aD12PDI1Nj9PJFt2XTpPJFsyNTYrKHY+Pj43KV07TjYobixoLEQpO3g9UFNbaF07eCE9PTAmJih2LT1aUVtoXSxzJChuLHYseCkpfX13aGlsZShiPG4ud1gpfU42KG4sMjU2LFcpfTsKRSQ9ZnVuY3Rpb24obixXKXt2YXIgRD1XLk0wLGI9Vy5BWi5rTyx2PVcuQVouWmQsaz1XLkFaLmF6LGgseD0tMTtuLlVuPTA7bi5PND01NzM7Zm9yKGg9MDtoPGs7aCsrKURbaCoyXSE9PTA/KG4uaGVhcFsrK24uVW5dPXg9aCxuLmRlcHRoW2hdPTApOkRbaCoyKzFdPTA7Zm9yKDtuLlVuPDI7KXt2YXIgTD1uLmhlYXBbKytuLlVuXT14PDI/Kyt4OjA7RFtMKjJdPTE7bi5kZXB0aFtMXT0wO24uWFItLTt2JiYobi5Udi09YltMKjIrMV0pfVcuck89eDtmb3IoaD1uLlVuPj4xO2g+PTE7aC0tKVN2KG4sRCxoKTtMPWs7ZG8gaD1uLmhlYXBbMV0sbi5oZWFwWzFdPW4uaGVhcFtuLlVuLS1dLFN2KG4sRCwxKSxiPW4uaGVhcFsxXSxuLmhlYXBbLS1uLk80XT1oLG4uaGVhcFstLW4uTzRdPWIsRFtMKjJdPURbaCoyXStEW2IqMl0sbi5kZXB0aFtMXT0obi5kZXB0aFtoXT49bi5kZXB0aFtiXT9uLmRlcHRoW2hdOm4uZGVwdGhbYl0pKzEsRFtoKjIrMV09RFtiKjIrMV09TCxuLmhlYXBbMV09TCsrLApTdihuLEQsMSk7d2hpbGUobi5Vbj49Mik7bi5oZWFwWy0tbi5PNF09bi5oZWFwWzFdO2g9Vy5NMDtMPVcuck87Yj1XLkFaLmtPO3Y9Vy5BWi5aZDtrPVcuQVouYkU7dmFyIGU9Vy5BWi50cCxHPVcuQVoudUgscixOPTA7Zm9yKHI9MDtyPD0xNTtyKyspbi5WbltyXT0wO2hbbi5oZWFwW24uTzRdKjIrMV09MDtmb3IoVz1uLk80KzE7Vzw1NzM7VysrKXt2YXIgSD1uLmhlYXBbV107cj1oW2hbSCoyKzFdKjIrMV0rMTtyPkcmJihyPUcsTisrKTtoW0gqMisxXT1yO2lmKCEoSD5MKSl7bi5WbltyXSsrO3ZhciBBPTA7SD49ZSYmKEE9a1tILWVdKTt2YXIgeT1oW0gqMl07bi5YUis9eSoocitBKTt2JiYobi5Udis9eSooYltIKjIrMV0rQSkpfX1pZihOIT09MCl7ZG97Zm9yKHI9Ry0xO24uVm5bcl09PT0wOylyLS07bi5WbltyXS0tO24uVm5bcisxXSs9MjtuLlZuW0ddLS07Ti09Mn13aGlsZShOPjApO2ZvcihyPUc7ciE9PTA7ci0tKWZvcihIPW4uVm5bcl07SCE9PTA7KWI9bi5oZWFwWy0tV10sCmI+THx8KGhbYioyKzFdIT09ciYmKG4uWFIrPShyLWhbYioyKzFdKSpoW2IqMl0saFtiKjIrMV09ciksSC0tKX1ZaihELHgsbi5Wbil9OwppQz1mdW5jdGlvbihuLFcsRCl7dmFyIGIsdj0tMSxrPVdbMV0saD0wLHg9NyxMPTQ7az09PTAmJih4PTEzOCxMPTMpO1dbKEQrMSkqMisxXT02NTUzNTtmb3IoYj0wO2I8PUQ7YisrKXt2YXIgZT1rO2s9V1soYisxKSoyKzFdOysraDx4JiZlPT09a3x8KGg8TD9uLndoW2UqMl0rPWg6ZSE9PTA/KGUhPT12JiZuLndoW2UqMl0rKyxuLndoWzMyXSsrKTpoPD0xMD9uLndoWzM0XSsrOm4ud2hbMzZdKyssaD0wLHY9ZSxrPT09MD8oeD0xMzgsTD0zKTplPT09az8oeD02LEw9Myk6KHg9NyxMPTQpKX19Owp1Qz1mdW5jdGlvbihuLFcsRCl7dmFyIGIsdj0tMSxrPVdbMV0saD0wLHg9NyxMPTQ7az09PTAmJih4PTEzOCxMPTMpO2ZvcihiPTA7Yjw9RDtiKyspe3ZhciBlPWs7az1XWyhiKzEpKjIrMV07aWYoISgrK2g8eCYmZT09PWspKXtpZihoPEwpe2RvIE42KG4sZSxuLndoKTt3aGlsZSgtLWghPT0wKX1lbHNlIGUhPT0wPyhlIT09diYmKE42KG4sZSxuLndoKSxoLS0pLE42KG4sMTYsbi53aCkscyQobixoLTMsMikpOmg8PTEwPyhONihuLDE3LG4ud2gpLHMkKG4saC0zLDMpKTooTjYobiwxOCxuLndoKSxzJChuLGgtMTEsNykpO2g9MDt2PWU7az09PTA/KHg9MTM4LEw9Myk6ZT09PWs/KHg9NixMPTMpOih4PTcsTD00KX19fTsKQTR4PWZ1bmN0aW9uKG4pe3ZhciBXPTQwOTM2MjQ0NDcsRDtmb3IoRD0wO0Q8PTMxO0QrKyxXPj4+PTEpaWYoVyYxJiZuLmtHW0QqMl0hPT0wKXJldHVybiAwO2lmKG4ua0dbMThdIT09MHx8bi5rR1syMF0hPT0wfHxuLmtHWzI2XSE9PTApcmV0dXJuIDE7Zm9yKEQ9MzI7RDwyNTY7RCsrKWlmKG4ua0dbRCoyXSE9PTApcmV0dXJuIDE7cmV0dXJuIDB9OwpvUz1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj1XXm47aWYoIShuKzQmNykpe0Q9KEQlYltJWzVdXStiW0lbNV1dKSViW0lbNV1dO3ZhciBrPWJbMF07YlswXT1iW0RdO2JbRF09azt2YXIgaD1bRF19KG4rOSY1KT09MSYmYltJWzNdXShiW0lbNV1dLDAsRCk7cmV0dXJuIGh9OwpkNz1mdW5jdGlvbihuLFcsRCl7bi5GQltuLkE4K24ud1gqMl09Vz4+PjgmMjU1O24uRkJbbi5BOCtuLndYKjIrMV09VyYyNTU7bi5GQltuLnRhK24ud1hdPUQmMjU1O24ud1grKztXPT09MD9uLmtHW0QqMl0rKzoobi5tYXRjaGVzKyssVy0tLG4ua0dbKEFrW0RdKzI1NisxKSoyXSsrLG4ubGZbKFc8MjU2P08kW1ddOk8kWzI1NisoVz4+PjcpXSkqMl0rKyk7cmV0dXJuIG4ud1g9PT1uLktYLTF9OwpsQz1mdW5jdGlvbihuLFcpe24ubXNnPXpCW1ddO3JldHVybiBXfTsKVEI9ZnVuY3Rpb24obil7Zm9yKHZhciBXPW4ubGVuZ3RoOy0tVz49MDspbltXXT0wfTsKanY9ZnVuY3Rpb24obil7dmFyIFc9bi5zdGF0ZSxEPVcucGVuZGluZztEPm4udVImJihEPW4udVIpO0QhPT0wJiYoaGsuUDcobi5vdXRwdXQsVy5GQixXLmhSLEQsbi51Zyksbi51Zys9RCxXLmhSKz1ELG4udEIrPUQsbi51Ui09RCxXLnBlbmRpbmctPUQsVy5wZW5kaW5nPT09MCYmKFcuaFI9MCkpfTsKdzc9ZnVuY3Rpb24obixXKXt2YXIgRD1uLk9LPj0wP24uT0s6LTEsYj1uLnFzLW4uT0ssdj0wO2lmKG4ubGV2ZWw+MCl7bi5UUi5xUz09PTImJihuLlRSLnFTPUE0eChuKSk7RSQobixuLlFmKTtFJChuLG4uYVMpO2lDKG4sbi5rRyxuLlFmLnJPKTtpQyhuLG4ubGYsbi5hUy5yTyk7RSQobixuLm1NKTtmb3Iodj0xODt2Pj0zJiZuLndoW0NlW3ZdKjIrMV09PT0wO3YtLSk7bi5YUis9MyoodisxKSs1KzUrNDt2YXIgaz1uLlhSKzMrNz4+PjM7dmFyIGg9bi5UdiszKzc+Pj4zO2g8PWsmJihrPWgpfWVsc2Ugaz1oPWIrNTtpZihiKzQ8PWsmJkQhPT0tMSlzJChuLFc/MTowLDMpLEprKG4sRCxiKTtlbHNlIGlmKG4uc3RyYXRlZ3k9PT00fHxoPT09aylzJChuLDIrKFc/MTowKSwzKSxVJChuLEJTLEY5KTtlbHNle3MkKG4sNCsoVz8xOjApLDMpO0Q9bi5RZi5yTysxO2I9bi5hUy5yTysxO3YrPTE7cyQobixELTI1Nyw1KTtzJChuLGItMSw1KTtzJChuLHYtNCw0KTtmb3Ioaz0wO2s8djtrKyspcyQobiwKbi53aFtDZVtrXSoyKzFdLDMpO3VDKG4sbi5rRyxELTEpO3VDKG4sbi5sZixiLTEpO1UkKG4sbi5rRyxuLmxmKX1IUyhuKTtXJiZmZShuKTtuLk9LPW4ucXM7anYobi5UUil9OwpNNj1mdW5jdGlvbihuLFcpe24uRkJbbi5wZW5kaW5nKytdPVd9OwpSUz1mdW5jdGlvbihuLFcpe24uRkJbbi5wZW5kaW5nKytdPVc+Pj44JjI1NTtuLkZCW24ucGVuZGluZysrXT1XJjI1NX07ClF0PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5lYixiPW4ucXMsdj1uLlRhLGs9bi5PUixoPW4ucXM+bi54ci0yNjI/bi5xcy0obi54ci0yNjIpOjAseD1uLndpbmRvdyxMPW4ueWUsZT1uLlJULEc9bi5xcysyNTgscj14W2Irdi0xXSxOPXhbYit2XTtuLlRhPj1uLnIkJiYoRD4+PTIpO2s+bi5HVyYmKGs9bi5HVyk7ZG97dmFyIEg9VztpZih4W0grdl09PT1OJiZ4W0grdi0xXT09PXImJnhbSF09PT14W2JdJiZ4WysrSF09PT14W2IrMV0pe2IrPTI7Zm9yKEgrKzt4WysrYl09PT14WysrSF0mJnhbKytiXT09PXhbKytIXSYmeFsrK2JdPT09eFsrK0hdJiZ4WysrYl09PT14WysrSF0mJnhbKytiXT09PXhbKytIXSYmeFsrK2JdPT09eFsrK0hdJiZ4WysrYl09PT14WysrSF0mJnhbKytiXT09PXhbKytIXSYmYjxHOyk7SD0yNTgtKEctYik7Yj1HLTI1ODtpZihIPnYpe24uUVo9Vzt2PUg7aWYoSD49aylicmVhaztyPXhbYit2LTFdO049eFtiK3ZdfX19d2hpbGUoKFc9ZVtXJkxdKT5oJiYtLUQhPT0KMCk7cmV0dXJuIHY8PW4uR1c/djpuLkdXfTsKYVM9ZnVuY3Rpb24obil7dmFyIFc9bi54cixEO2Rve3ZhciBiPW4uYlgtbi5HVy1uLnFzO2lmKG4ucXM+PVcrKFctMjYyKSl7aGsuUDcobi53aW5kb3csbi53aW5kb3csVyxXLDApO24uUVotPVc7bi5xcy09VztuLk9LLT1XO3ZhciB2PUQ9bi5BeTtkb3t2YXIgaz1uLmhlYWRbLS12XTtuLmhlYWRbdl09az49Vz9rLVc6MH13aGlsZSgtLUQpO3Y9RD1XO2RvIGs9bi5SVFstLXZdLG4uUlRbdl09az49Vz9rLVc6MDt3aGlsZSgtLUQpO2IrPVd9aWYobi5UUi5CQT09PTApYnJlYWs7dj1uLlRSO0Q9bi53aW5kb3c7az1uLnFzK24uR1c7dmFyIGg9di5CQTtoPmImJihoPWIpO2g9PT0wP0Q9MDoodi5CQS09aCxoay5QNyhELHYuaW5wdXQsdi5VWixoLGspLHYuc3RhdGUud3JhcD09PTE/di5nST1WdCh2LmdJLEQsaCxrKTp2LnN0YXRlLndyYXA9PT0yJiYodi5nST1jUyh2LmdJLEQsaCxrKSksdi5VWis9aCx2LkVtKz1oLEQ9aCk7bi5HVys9RDtpZihuLkdXK24ucXA+PTMpZm9yKGI9bi5xcy1uLnFwLApuLnBBPW4ud2luZG93W2JdLG4ucEE9KG4ucEE8PG4uSGNebi53aW5kb3dbYisxXSkmbi5sQjtuLnFwJiYhKG4ucEE9KG4ucEE8PG4uSGNebi53aW5kb3dbYiszLTFdKSZuLmxCLG4uUlRbYiZuLnllXT1uLmhlYWRbbi5wQV0sbi5oZWFkW24ucEFdPWIsYisrLG4ucXAtLSxuLkdXK24ucXA8Myk7KTt9d2hpbGUobi5HVzwyNjImJm4uVFIuQkEhPT0wKX07Cm53PWZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBEOzspe2lmKG4uR1c8MjYyKXthUyhuKTtpZihuLkdXPDI2MiYmVz09PTApcmV0dXJuIDE7aWYobi5HVz09PTApYnJlYWt9RD0wO24uR1c+PTMmJihuLnBBPShuLnBBPDxuLkhjXm4ud2luZG93W24ucXMrMy0xXSkmbi5sQixEPW4uUlRbbi5xcyZuLnllXT1uLmhlYWRbbi5wQV0sbi5oZWFkW24ucEFdPW4ucXMpO0QhPT0wJiZuLnFzLUQ8PW4ueHItMjYyJiYobi5mQT1RdChuLEQpKTtpZihuLmZBPj0zKWlmKEQ9ZDcobixuLnFzLW4uUVosbi5mQS0zKSxuLkdXLT1uLmZBLG4uZkE8PW4uUmImJm4uR1c+PTMpe24uZkEtLTtkbyBuLnFzKyssbi5wQT0obi5wQTw8bi5IY15uLndpbmRvd1tuLnFzKzMtMV0pJm4ubEIsbi5SVFtuLnFzJm4ueWVdPW4uaGVhZFtuLnBBXSxuLmhlYWRbbi5wQV09bi5xczt3aGlsZSgtLW4uZkEhPT0wKTtuLnFzKyt9ZWxzZSBuLnFzKz1uLmZBLG4uZkE9MCxuLnBBPW4ud2luZG93W24ucXNdLG4ucEE9KG4ucEE8PG4uSGNeCm4ud2luZG93W24ucXMrMV0pJm4ubEI7ZWxzZSBEPWQ3KG4sMCxuLndpbmRvd1tuLnFzXSksbi5HVy0tLG4ucXMrKztpZihEJiYodzcobiwhMSksbi5UUi51Uj09PTApKXJldHVybiAxfW4ucXA9bi5xczwyP24ucXM6MjtyZXR1cm4gVz09PTQ/KHc3KG4sITApLG4uVFIudVI9PT0wPzM6NCk6bi53WCYmKHc3KG4sITEpLG4uVFIudVI9PT0wKT8xOjJ9OwpXVj1mdW5jdGlvbihuLFcpe2Zvcih2YXIgRCxiOzspe2lmKG4uR1c8MjYyKXthUyhuKTtpZihuLkdXPDI2MiYmVz09PTApcmV0dXJuIDE7aWYobi5HVz09PTApYnJlYWt9RD0wO24uR1c+PTMmJihuLnBBPShuLnBBPDxuLkhjXm4ud2luZG93W24ucXMrMy0xXSkmbi5sQixEPW4uUlRbbi5xcyZuLnllXT1uLmhlYWRbbi5wQV0sbi5oZWFkW24ucEFdPW4ucXMpO24uVGE9bi5mQTtuLkx2PW4uUVo7bi5mQT0yO0QhPT0wJiZuLlRhPG4uUmImJm4ucXMtRDw9bi54ci0yNjImJihuLmZBPVF0KG4sRCksbi5mQTw9NSYmKG4uc3RyYXRlZ3k9PT0xfHxuLmZBPT09MyYmbi5xcy1uLlFaPjQwOTYpJiYobi5mQT0yKSk7aWYobi5UYT49MyYmbi5mQTw9bi5UYSl7Yj1uLnFzK24uR1ctMztEPWQ3KG4sbi5xcy0xLW4uTHYsbi5UYS0zKTtuLkdXLT1uLlRhLTE7bi5UYS09Mjtkbysrbi5xczw9YiYmKG4ucEE9KG4ucEE8PG4uSGNebi53aW5kb3dbbi5xcyszLTFdKSZuLmxCLG4uUlRbbi5xcyZuLnllXT0Kbi5oZWFkW24ucEFdLG4uaGVhZFtuLnBBXT1uLnFzKTt3aGlsZSgtLW4uVGEhPT0wKTtuLlJGPTA7bi5mQT0yO24ucXMrKztpZihEJiYodzcobiwhMSksbi5UUi51Uj09PTApKXJldHVybiAxfWVsc2UgaWYobi5SRil7aWYoKEQ9ZDcobiwwLG4ud2luZG93W24ucXMtMV0pKSYmdzcobiwhMSksbi5xcysrLG4uR1ctLSxuLlRSLnVSPT09MClyZXR1cm4gMX1lbHNlIG4uUkY9MSxuLnFzKyssbi5HVy0tfW4uUkYmJihkNyhuLDAsbi53aW5kb3dbbi5xcy0xXSksbi5SRj0wKTtuLnFwPW4ucXM8Mj9uLnFzOjI7cmV0dXJuIFc9PT00Pyh3NyhuLCEwKSxuLlRSLnVSPT09MD8zOjQpOm4ud1gmJih3NyhuLCExKSxuLlRSLnVSPT09MCk/MToyfTsKbXhqPWZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBELGIsdixrPW4ud2luZG93Ozspe2lmKG4uR1c8PTI1OCl7YVMobik7aWYobi5HVzw9MjU4JiZXPT09MClyZXR1cm4gMTtpZihuLkdXPT09MClicmVha31uLmZBPTA7aWYobi5HVz49MyYmbi5xcz4wJiYoYj1uLnFzLTEsRD1rW2JdLEQ9PT1rWysrYl0mJkQ9PT1rWysrYl0mJkQ9PT1rWysrYl0pKXtmb3Iodj1uLnFzKzI1ODtEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZEPT09a1srK2JdJiZiPHY7KTtuLmZBPTI1OC0odi1iKTtuLmZBPm4uR1cmJihuLmZBPW4uR1cpfW4uZkE+PTM/KEQ9ZDcobiwxLG4uZkEtMyksbi5HVy09bi5mQSxuLnFzKz1uLmZBLG4uZkE9MCk6KEQ9ZDcobiwwLG4ud2luZG93W24ucXNdKSxuLkdXLS0sbi5xcysrKTtpZihEJiYodzcobiwhMSksbi5UUi51Uj09PTApKXJldHVybiAxfW4ucXA9MDtyZXR1cm4gVz09PQo0Pyh3NyhuLCEwKSxuLlRSLnVSPT09MD8zOjQpOm4ud1gmJih3NyhuLCExKSxuLlRSLnVSPT09MCk/MToyfTsKS3hVPWZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBEOzspe2lmKG4uR1c9PT0wJiYoYVMobiksbi5HVz09PTApKXtpZihXPT09MClyZXR1cm4gMTticmVha31uLmZBPTA7RD1kNyhuLDAsbi53aW5kb3dbbi5xc10pO24uR1ctLTtuLnFzKys7aWYoRCYmKHc3KG4sITEpLG4uVFIudVI9PT0wKSlyZXR1cm4gMX1uLnFwPTA7cmV0dXJuIFc9PT00Pyh3NyhuLCEwKSxuLlRSLnVSPT09MD8zOjQpOm4ud1gmJih3NyhuLCExKSxuLlRSLnVSPT09MCk/MToyfTsKREU9ZnVuY3Rpb24obixXLEQsYix2KXt0aGlzLm5rPW47dGhpcy5ZOD1XO3RoaXMuRWs9RDt0aGlzLlNSPWI7dGhpcy5mdW5jPXZ9OwpPMGk9ZnVuY3Rpb24oKXt0aGlzLlRSPW51bGw7dGhpcy5zdGF0dXM9MDt0aGlzLkZCPW51bGw7dGhpcy53cmFwPXRoaXMucGVuZGluZz10aGlzLmhSPXRoaXMueXY9MDt0aGlzLkZRPW51bGw7dGhpcy5HST0wO3RoaXMubWV0aG9kPTg7dGhpcy5obz0tMTt0aGlzLnllPXRoaXMuclo9dGhpcy54cj0wO3RoaXMud2luZG93PW51bGw7dGhpcy5iWD0wO3RoaXMuaGVhZD10aGlzLlJUPW51bGw7dGhpcy5PUj10aGlzLnIkPXRoaXMuc3RyYXRlZ3k9dGhpcy5sZXZlbD10aGlzLlJiPXRoaXMuZWI9dGhpcy5UYT10aGlzLkdXPXRoaXMuUVo9dGhpcy5xcz10aGlzLlJGPXRoaXMuTHY9dGhpcy5mQT10aGlzLk9LPXRoaXMuSGM9dGhpcy5sQj10aGlzLll2PXRoaXMuQXk9dGhpcy5wQT0wO3RoaXMua0c9bmV3IGhrLm1LKDExNDYpO3RoaXMubGY9bmV3IGhrLm1LKDEyMik7dGhpcy53aD1uZXcgaGsubUsoNzgpO1RCKHRoaXMua0cpO1RCKHRoaXMubGYpO1RCKHRoaXMud2gpO3RoaXMubU09dGhpcy5hUz0KdGhpcy5RZj1udWxsO3RoaXMuVm49bmV3IGhrLm1LKDE2KTt0aGlzLmhlYXA9bmV3IGhrLm1LKDU3Myk7VEIodGhpcy5oZWFwKTt0aGlzLk80PXRoaXMuVW49MDt0aGlzLmRlcHRoPW5ldyBoay5tSyg1NzMpO1RCKHRoaXMuZGVwdGgpO3RoaXMuWUg9dGhpcy5SSj10aGlzLnFwPXRoaXMubWF0Y2hlcz10aGlzLlR2PXRoaXMuWFI9dGhpcy5BOD10aGlzLndYPXRoaXMuS1g9dGhpcy50YT0wfTsKUHAxPWZ1bmN0aW9uKG4sVyl7aWYoIW58fCFuLnN0YXRlfHxXPjV8fFc8MClyZXR1cm4gbj9sQyhuLC0yKTotMjt2YXIgRD1uLnN0YXRlO2lmKCFuLm91dHB1dHx8IW4uaW5wdXQmJm4uQkEhPT0wfHxELnN0YXR1cz09PTY2NiYmVyE9PTQpcmV0dXJuIGxDKG4sbi51Uj09PTA/LTU6LTIpO0QuVFI9bjt2YXIgYj1ELmhvO0QuaG89VztpZihELnN0YXR1cz09PTQyKWlmKEQud3JhcD09PTIpbi5nST0wLE02KEQsMzEpLE02KEQsMTM5KSxNNihELDgpLEQuRlE/KE02KEQsKEQuRlEudGV4dD8xOjApKyhELkZRLnZMPzI6MCkrKEQuRlEuZXh0cmE/NDowKSsoRC5GUS5uYW1lPzg6MCkrKEQuRlEuY29tbWVudD8xNjowKSksTTYoRCxELkZRLnRpbWUmMjU1KSxNNihELEQuRlEudGltZT4+OCYyNTUpLE02KEQsRC5GUS50aW1lPj4xNiYyNTUpLE02KEQsRC5GUS50aW1lPj4yNCYyNTUpLE02KEQsRC5sZXZlbD09PTk/MjpELnN0cmF0ZWd5Pj0yfHxELmxldmVsPDI/NDowKSxNNihELEQuRlEub3MmCjI1NSksRC5GUS5leHRyYSYmRC5GUS5leHRyYS5sZW5ndGgmJihNNihELEQuRlEuZXh0cmEubGVuZ3RoJjI1NSksTTYoRCxELkZRLmV4dHJhLmxlbmd0aD4+OCYyNTUpKSxELkZRLnZMJiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLDApKSxELkdJPTAsRC5zdGF0dXM9NjkpOihNNihELDApLE02KEQsMCksTTYoRCwwKSxNNihELDApLE02KEQsMCksTTYoRCxELmxldmVsPT09OT8yOkQuc3RyYXRlZ3k+PTJ8fEQubGV2ZWw8Mj80OjApLE02KEQsMyksRC5zdGF0dXM9MTEzKTtlbHNle3ZhciB2PTgrKEQuclotODw8NCk8PDg7dnw9KEQuc3RyYXRlZ3k+PTJ8fEQubGV2ZWw8Mj8wOkQubGV2ZWw8Nj8xOkQubGV2ZWw9PT02PzI6Myk8PDY7RC5xcyE9PTAmJih2fD0zMik7RC5zdGF0dXM9MTEzO1JTKEQsdisoMzEtdiUzMSkpO0QucXMhPT0wJiYoUlMoRCxuLmdJPj4+MTYpLFJTKEQsbi5nSSY2NTUzNSkpO24uZ0k9MX1pZihELnN0YXR1cz09PTY5KWlmKEQuRlEuZXh0cmEpe2Zvcih2PQpELnBlbmRpbmc7RC5HSTwoRC5GUS5leHRyYS5sZW5ndGgmNjU1MzUpJiYoRC5wZW5kaW5nIT09RC55dnx8KEQuRlEudkwmJkQucGVuZGluZz52JiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLXYsdikpLGp2KG4pLHY9RC5wZW5kaW5nLEQucGVuZGluZyE9PUQueXYpKTspTTYoRCxELkZRLmV4dHJhW0QuR0ldJjI1NSksRC5HSSsrO0QuRlEudkwmJkQucGVuZGluZz52JiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLXYsdikpO0QuR0k9PT1ELkZRLmV4dHJhLmxlbmd0aCYmKEQuR0k9MCxELnN0YXR1cz03Myl9ZWxzZSBELnN0YXR1cz03MztpZihELnN0YXR1cz09PTczKWlmKEQuRlEubmFtZSl7dj1ELnBlbmRpbmc7ZG97aWYoRC5wZW5kaW5nPT09RC55diYmKEQuRlEudkwmJkQucGVuZGluZz52JiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLXYsdikpLGp2KG4pLHY9RC5wZW5kaW5nLEQucGVuZGluZz09PUQueXYpKXt2YXIgaz0xO2JyZWFrfWs9RC5HSTxELkZRLm5hbWUubGVuZ3RoPwpELkZRLm5hbWUuY2hhckNvZGVBdChELkdJKyspJjI1NTowO002KEQsayl9d2hpbGUoayE9PTApO0QuRlEudkwmJkQucGVuZGluZz52JiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLXYsdikpO2s9PT0wJiYoRC5HST0wLEQuc3RhdHVzPTkxKX1lbHNlIEQuc3RhdHVzPTkxO2lmKEQuc3RhdHVzPT09OTEpaWYoRC5GUS5jb21tZW50KXt2PUQucGVuZGluZztkb3tpZihELnBlbmRpbmc9PT1ELnl2JiYoRC5GUS52TCYmRC5wZW5kaW5nPnYmJihuLmdJPWNTKG4uZ0ksRC5GQixELnBlbmRpbmctdix2KSksanYobiksdj1ELnBlbmRpbmcsRC5wZW5kaW5nPT09RC55dikpe2s9MTticmVha31rPUQuR0k8RC5GUS5jb21tZW50Lmxlbmd0aD9ELkZRLmNvbW1lbnQuY2hhckNvZGVBdChELkdJKyspJjI1NTowO002KEQsayl9d2hpbGUoayE9PTApO0QuRlEudkwmJkQucGVuZGluZz52JiYobi5nST1jUyhuLmdJLEQuRkIsRC5wZW5kaW5nLXYsdikpO2s9PT0wJiYoRC5zdGF0dXM9MTAzKX1lbHNlIEQuc3RhdHVzPQoxMDM7RC5zdGF0dXM9PT0xMDMmJihELkZRLnZMPyhELnBlbmRpbmcrMj5ELnl2JiZqdihuKSxELnBlbmRpbmcrMjw9RC55diYmKE02KEQsbi5nSSYyNTUpLE02KEQsbi5nST4+OCYyNTUpLG4uZ0k9MCxELnN0YXR1cz0xMTMpKTpELnN0YXR1cz0xMTMpO2lmKEQucGVuZGluZyE9PTApe2lmKGp2KG4pLG4udVI9PT0wKXJldHVybiBELmhvPS0xLDB9ZWxzZSBpZihuLkJBPT09MCYmKFc8PDEpLShXPjQ/OTowKTw9KGI8PDEpLShiPjQ/OTowKSYmVyE9PTQpcmV0dXJuIGxDKG4sLTUpO2lmKEQuc3RhdHVzPT09NjY2JiZuLkJBIT09MClyZXR1cm4gbEMobiwtNSk7aWYobi5CQSE9PTB8fEQuR1chPT0wfHxXIT09MCYmRC5zdGF0dXMhPT02NjYpe2I9RC5zdHJhdGVneT09PTI/S3hVKEQsVyk6RC5zdHJhdGVneT09PTM/bXhqKEQsVyk6YndbRC5sZXZlbF0uZnVuYyhELFcpO2lmKGI9PT0zfHxiPT09NClELnN0YXR1cz02NjY7aWYoYj09PTF8fGI9PT0zKXJldHVybiBuLnVSPT09MCYmKEQuaG89Ci0xKSwwO2lmKGI9PT0yJiYoVz09PTE/KHMkKEQsMiwzKSxONihELDI1NixCUyksRC5ZSD09PTE2PyhyNyhELEQuUkopLEQuUko9MCxELllIPTApOkQuWUg+PTgmJihELkZCW0QucGVuZGluZysrXT1ELlJKJjI1NSxELlJKPj49OCxELllILT04KSk6VyE9PTUmJihzJChELDAsMyksSmsoRCwwLDApLFc9PT0zJiYoVEIoRC5oZWFkKSxELkdXPT09MCYmKEQucXM9MCxELk9LPTAsRC5xcD0wKSkpLGp2KG4pLG4udVI9PT0wKSlyZXR1cm4gRC5obz0tMSwwfWlmKFchPT00KXJldHVybiAwO2lmKEQud3JhcDw9MClyZXR1cm4gMTtELndyYXA9PT0yPyhNNihELG4uZ0kmMjU1KSxNNihELG4uZ0k+PjgmMjU1KSxNNihELG4uZ0k+PjE2JjI1NSksTTYoRCxuLmdJPj4yNCYyNTUpLE02KEQsbi5FbSYyNTUpLE02KEQsbi5FbT4+OCYyNTUpLE02KEQsbi5FbT4+MTYmMjU1KSxNNihELG4uRW0+PjI0JjI1NSkpOihSUyhELG4uZ0k+Pj4xNiksUlMoRCxuLmdJJjY1NTM1KSk7anYobik7RC53cmFwPjAmJgooRC53cmFwPS1ELndyYXApO3JldHVybiBELnBlbmRpbmchPT0wPzA6MX07CnZWPWZ1bmN0aW9uKG4pe2lmKCEodGhpcyBpbnN0YW5jZW9mIHZWKSlyZXR1cm4gbmV3IHZWKG4pO249dGhpcy5vcHRpb25zPWhrLmFzc2lnbih7bGV2ZWw6LTEsbWV0aG9kOjgsY2h1bmtTaXplOjE2Mzg0LHRnOjE1LEJrOjgsc3RyYXRlZ3k6MCx0bzoiIn0sbnx8e30pO24ucmF3JiZuLnRnPjA/bi50Zz0tbi50ZzpuLkJUJiZuLnRnPjAmJm4udGc8MTYmJihuLnRnKz0xNik7dGhpcy5lcnI9MDt0aGlzLm1zZz0iIjt0aGlzLmVuZGVkPSExO3RoaXMuY2h1bmtzPVtdO3RoaXMuVFI9bmV3IGtmO3RoaXMuVFIudVI9MDt2YXIgVz10aGlzLlRSO3ZhciBEPW4ubGV2ZWwsYj1uLm1ldGhvZCx2PW4udGcsaz1uLkJrLGg9bi5zdHJhdGVneTtpZihXKXt2YXIgeD0xO0Q9PT0tMSYmKEQ9Nik7djwwPyh4PTAsdj0tdik6dj4xNSYmKHg9Mix2LT0xNik7aWYoazwxfHxrPjl8fGIhPT04fHx2PDh8fHY+MTV8fEQ8MHx8RD45fHxoPDB8fGg+NClXPWxDKFcsLTIpO2Vsc2V7dj09PTgmJih2PTkpO3ZhciBMPQpuZXcgTzBpO1cuc3RhdGU9TDtMLlRSPVc7TC53cmFwPXg7TC5GUT1udWxsO0wuclo9djtMLnhyPTE8PEwuclo7TC55ZT1MLnhyLTE7TC5Zdj1rKzc7TC5BeT0xPDxMLll2O0wubEI9TC5BeS0xO0wuSGM9fn4oKEwuWXYrMy0xKS8zKTtMLndpbmRvdz1uZXcgaGsuT20oTC54cioyKTtMLmhlYWQ9bmV3IGhrLm1LKEwuQXkpO0wuUlQ9bmV3IGhrLm1LKEwueHIpO0wuS1g9MTw8ays2O0wueXY9TC5LWCo0O0wuRkI9bmV3IGhrLk9tKEwueXYpO0wuQTg9MSpMLktYO0wudGE9MypMLktYO0wubGV2ZWw9RDtMLnN0cmF0ZWd5PWg7TC5tZXRob2Q9YjtpZihXJiZXLnN0YXRlKXtXLkVtPVcudEI9MDtXLnFTPTI7RD1XLnN0YXRlO0QucGVuZGluZz0wO0QuaFI9MDtELndyYXA8MCYmKEQud3JhcD0tRC53cmFwKTtELnN0YXR1cz1ELndyYXA/NDI6MTEzO1cuZ0k9RC53cmFwPT09Mj8wOjE7RC5obz0wO2lmKCFocil7Yj1BcnJheSgxNik7Zm9yKGs9aD0wO2s8Mjg7aysrKWZvcihLZVtrXT1oLHY9MDt2PAoxPDxtJFtrXTt2KyspQWtbaCsrXT1rO0FrW2gtMV09aztmb3Ioaz1oPTA7azwxNjtrKyspZm9yKFpRW2tdPWgsdj0wO3Y8MTw8UFNba107disrKU8kW2grK109aztmb3IoaD4+PTc7azwzMDtrKyspZm9yKFpRW2tdPWg8PDcsdj0wO3Y8MTw8UFNba10tNzt2KyspTyRbMjU2K2grK109aztmb3Iodj0wO3Y8PTE1O3YrKyliW3ZdPTA7Zm9yKHY9MDt2PD0xNDM7KUJTW3YqMisxXT04LHYrKyxiWzhdKys7Zm9yKDt2PD0yNTU7KUJTW3YqMisxXT05LHYrKyxiWzldKys7Zm9yKDt2PD0yNzk7KUJTW3YqMisxXT03LHYrKyxiWzddKys7Zm9yKDt2PD0yODc7KUJTW3YqMisxXT04LHYrKyxiWzhdKys7WWooQlMsMjg3LGIpO2Zvcih2PTA7djwzMDt2KyspRjlbdioyKzFdPTUsRjlbdioyXT1wZSh2LDUpO3hmPW5ldyBldihCUyxtJCwyNTcsMjg2LDE1KTtMdz1uZXcgZXYoRjksUFMsMCwzMCwxNSk7ZUg9bmV3IGV2KFtdLFowdywwLDE5LDcpO2hyPSEwfUQuUWY9bmV3IHRrKEQua0cseGYpO0QuYVM9Cm5ldyB0ayhELmxmLEx3KTtELm1NPW5ldyB0ayhELndoLGVIKTtELlJKPTA7RC5ZSD0wO0hTKEQpO0Q9MH1lbHNlIEQ9bEMoVywtMik7RD09PTAmJihXPVcuc3RhdGUsVy5iWD0yKlcueHIsVEIoVy5oZWFkKSxXLlJiPWJ3W1cubGV2ZWxdLlk4LFcuciQ9YndbVy5sZXZlbF0ubmssVy5PUj1id1tXLmxldmVsXS5FayxXLmViPWJ3W1cubGV2ZWxdLlNSLFcucXM9MCxXLk9LPTAsVy5HVz0wLFcucXA9MCxXLmZBPVcuVGE9MixXLlJGPTAsVy5wQT0wKTtXPUR9fWVsc2UgVz0tMjtpZihXIT09MCl0aHJvdyBFcnJvcih6QltXXSk7bi5oZWFkZXImJihXPXRoaXMuVFIpJiZXLnN0YXRlJiZXLnN0YXRlLndyYXA9PT0yJiYoVy5zdGF0ZS5GUT1uLmhlYWRlcik7aWYobi5Dbyl7dmFyIGU7dHlwZW9mIG4uQ289PT0ic3RyaW5nIj9lPXhqKG4uQ28pOmcyLmNhbGwobi5Dbyk9PT0iW29iamVjdCBBcnJheUJ1ZmZlcl0iP2U9bmV3IFVpbnQ4QXJyYXkobi5Dbyk6ZT1uLkNvO249dGhpcy5UUjtrPWU7aD0Kay5sZW5ndGg7aWYobiYmbi5zdGF0ZSlpZihlPW4uc3RhdGUsVz1lLndyYXAsVz09PTJ8fFc9PT0xJiZlLnN0YXR1cyE9PTQyfHxlLkdXKVc9LTI7ZWxzZXtXPT09MSYmKG4uZ0k9VnQobi5nSSxrLGgsMCkpO2Uud3JhcD0wO2g+PWUueHImJihXPT09MCYmKFRCKGUuaGVhZCksZS5xcz0wLGUuT0s9MCxlLnFwPTApLEQ9bmV3IGhrLk9tKGUueHIpLGhrLlA3KEQsayxoLWUueHIsZS54ciwwKSxrPUQsaD1lLnhyKTtEPW4uQkE7Yj1uLlVaO3Y9bi5pbnB1dDtuLkJBPWg7bi5VWj0wO24uaW5wdXQ9aztmb3IoYVMoZSk7ZS5HVz49Mzspe2s9ZS5xcztoPWUuR1ctMjtkbyBlLnBBPShlLnBBPDxlLkhjXmUud2luZG93W2srMy0xXSkmZS5sQixlLlJUW2smZS55ZV09ZS5oZWFkW2UucEFdLGUuaGVhZFtlLnBBXT1rLGsrKzt3aGlsZSgtLWgpO2UucXM9aztlLkdXPTI7YVMoZSl9ZS5xcys9ZS5HVztlLk9LPWUucXM7ZS5xcD1lLkdXO2UuR1c9MDtlLmZBPWUuVGE9MjtlLlJGPTA7bi5VWj1iO24uaW5wdXQ9CnY7bi5CQT1EO2Uud3JhcD1XO1c9MH1lbHNlIFc9LTI7aWYoVyE9PTApdGhyb3cgRXJyb3IoekJbV10pO3RoaXMuWGg9ITB9fTsKWCQ9ZnVuY3Rpb24obil7dmFyIFc9V3x8e307Vy5CVD0hMDtXPW5ldyB2VihXKTtXLnB1c2gobiwhMCk7aWYoVy5lcnIpdGhyb3cgVy5tc2d8fHpCW1cuZXJyXTtyZXR1cm4gVy5yZXN1bHR9OwpxTj1mdW5jdGlvbiguLi5uKXtyZXR1cm4gbi5sZW5ndGg9PT0wP1c9Plc6bi5sZW5ndGg9PT0xP25bMF06bi5yZWR1Y2UoKFcsRCk9PiguLi5iKT0+VyhEKC4uLmIpKSl9OwpVeGo9ZnVuY3Rpb24oKXt2YXIgbj1bXTtyZXR1cm4gVz0+KEQsYik9PntEPVcoRCxiKTt2YXIgdj0oKT0+e3Rocm93IEVycm9yKCJEaXNwYXRjaGluZyB3aGlsZSBjb25zdHJ1Y3RpbmcgeW91ciBtaWRkbGV3YXJlIGlzIG5vdCBhbGxvd2VkLiBPdGhlciBtaWRkbGV3YXJlIHdvdWxkIG5vdCBiZSBhcHBsaWVkIHRvIHRoaXMgZGlzcGF0Y2guIik7fSxrPXtnZXRTdGF0ZTpELmdldFN0YXRlLApkaXNwYXRjaDooaCwuLi54KT0+dihoLC4uLngpfTsKYj1uLm1hcChoPT5oKGspKTsKdj1xTiguLi5iKShELmRpc3BhdGNoKTtyZXR1cm57Li4uRCxkaXNwYXRjaDp2fX19Owp5NDI9ZnVuY3Rpb24obil7T2JqZWN0LmtleXMobikuZm9yRWFjaChXPT57dmFyIEQ9bltXXTtpZih0eXBlb2YgRCh2b2lkIDAse3R5cGU6R2R9KT09PSJ1bmRlZmluZWQiKXRocm93IEVycm9yKGBUaGUgc2xpY2UgcmVkdWNlciBmb3Iga2V5ICIke1d9IiByZXR1cm5lZCB1bmRlZmluZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uLiBJZiB0aGUgc3RhdGUgcGFzc2VkIHRvIHRoZSByZWR1Y2VyIGlzIHVuZGVmaW5lZCwgeW91IG11c3QgZXhwbGljaXRseSByZXR1cm4gdGhlIGluaXRpYWwgc3RhdGUuIFRoZSBpbml0aWFsIHN0YXRlIG1heSBub3QgYmUgdW5kZWZpbmVkLiBJZiB5b3UgZG9uJ3Qgd2FudCB0byBzZXQgYSB2YWx1ZSBmb3IgdGhpcyByZWR1Y2VyLCB5b3UgY2FuIHVzZSBudWxsIGluc3RlYWQgb2YgdW5kZWZpbmVkLmApO2lmKHR5cGVvZiBEKHZvaWQgMCx7dHlwZTpgQEByZWR1eC9QUk9CRV9VTktOT1dOX0FDVElPTiR7dHIoKX1gfSk9PT0idW5kZWZpbmVkIil0aHJvdyBFcnJvcihgVGhlIHNsaWNlIHJlZHVjZXIgZm9yIGtleSAiJHtXfSIgcmV0dXJuZWQgdW5kZWZpbmVkIHdoZW4gcHJvYmVkIHdpdGggYSByYW5kb20gdHlwZS4gRG9uJ3QgdHJ5IHRvIGhhbmRsZSAnJHtHZH0nIG9yIG90aGVyIGFjdGlvbnMgaW4gInJlZHV4LyoiIG5hbWVzcGFjZS4gVGhleSBhcmUgY29uc2lkZXJlZCBwcml2YXRlLiBJbnN0ZWFkLCB5b3UgbXVzdCByZXR1cm4gdGhlIGN1cnJlbnQgc3RhdGUgZm9yIGFueSB1bmtub3duIGFjdGlvbnMsIHVubGVzcyBpdCBpcyB1bmRlZmluZWQsIGluIHdoaWNoIGNhc2UgeW91IG11c3QgcmV0dXJuIHRoZSBpbml0aWFsIHN0YXRlLCByZWdhcmRsZXNzIG9mIHRoZSBhY3Rpb24gdHlwZS4gVGhlIGluaXRpYWwgc3RhdGUgbWF5IG5vdCBiZSB1bmRlZmluZWQsIGJ1dCBjYW4gYmUgbnVsbC5gKTsKfSl9OwokZj1mdW5jdGlvbihuLFcsRCl7ZnVuY3Rpb24gYigpe2lmKEcpdGhyb3cgRXJyb3IoIllvdSBtYXkgbm90IGNhbGwgc3RvcmUuZ2V0U3RhdGUoKSB3aGlsZSB0aGUgcmVkdWNlciBpcyBleGVjdXRpbmcuIFRoZSByZWR1Y2VyIGhhcyBhbHJlYWR5IHJlY2VpdmVkIHRoZSBzdGF0ZSBhcyBhbiBhcmd1bWVudC4gUGFzcyBpdCBkb3duIGZyb20gdGhlIHRvcCByZWR1Y2VyIGluc3RlYWQgb2YgcmVhZGluZyBpdCBmcm9tIHRoZSBzdG9yZS4iKTtyZXR1cm4geH0KZnVuY3Rpb24gdihOKXtpZih0eXBlb2YgTiE9PSJmdW5jdGlvbiIpdGhyb3cgRXJyb3IoYEV4cGVjdGVkIHRoZSBsaXN0ZW5lciB0byBiZSBhIGZ1bmN0aW9uLiBJbnN0ZWFkLCByZWNlaXZlZDogJyR7dHlwZW9mIE59J2ApO2lmKEcpdGhyb3cgRXJyb3IoIllvdSBtYXkgbm90IGNhbGwgc3RvcmUuc3Vic2NyaWJlKCkgd2hpbGUgdGhlIHJlZHVjZXIgaXMgZXhlY3V0aW5nLiBJZiB5b3Ugd291bGQgbGlrZSB0byBiZSBub3RpZmllZCBhZnRlciB0aGUgc3RvcmUgaGFzIGJlZW4gdXBkYXRlZCwgc3Vic2NyaWJlIGZyb20gYSBjb21wb25lbnQgYW5kIGludm9rZSBzdG9yZS5nZXRTdGF0ZSgpIGluIHRoZSBjYWxsYmFjayB0byBhY2Nlc3MgdGhlIGxhdGVzdCBzdGF0ZS4gU2VlIGh0dHBzOi8vcmVkdXguanMub3JnL2FwaS9zdG9yZSNzdWJzY3JpYmVsaXN0ZW5lciBmb3IgbW9yZSBkZXRhaWxzLiIpO3ZhciBIPSEwO2U9PT1MJiYoZT1MLnNsaWNlKCkpO2UucHVzaChOKTtyZXR1cm4gZnVuY3Rpb24oKXtpZihIKXtpZihHKXRocm93IEVycm9yKCJZb3UgbWF5IG5vdCB1bnN1YnNjcmliZSBmcm9tIGEgc3RvcmUgbGlzdGVuZXIgd2hpbGUgdGhlIHJlZHVjZXIgaXMgZXhlY3V0aW5nLiBTZWUgaHR0cHM6Ly9yZWR1eC5qcy5vcmcvYXBpL3N0b3JlI3N1YnNjcmliZWxpc3RlbmVyIGZvciBtb3JlIGRldGFpbHMuIik7Ckg9ITE7ZT09PUwmJihlPUwuc2xpY2UoKSk7ZS5zcGxpY2UoZS5pbmRleE9mKE4pLDEpO0w9bnVsbH19fQpmdW5jdGlvbiBrKE4pe2lmKHR5cGVvZiBOIT09Im9iamVjdCJ8fE49PT1udWxsKXZhciBIPSExO2Vsc2V7Zm9yKEg9TjtPYmplY3QuZ2V0UHJvdG90eXBlT2YoSCkhPT1udWxsOylIPU9iamVjdC5nZXRQcm90b3R5cGVPZihIKTtIPU9iamVjdC5nZXRQcm90b3R5cGVPZihOKT09PUh9aWYoIUgpdGhyb3cgRXJyb3IoYEFjdGlvbnMgbXVzdCBiZSBwbGFpbiBvYmplY3RzLiBJbnN0ZWFkLCB0aGUgYWN0dWFsIHR5cGUgd2FzOiAnJHt0eXBlb2YgTn0nLiBZb3UgbWF5IG5lZWQgdG8gYWRkIG1pZGRsZXdhcmUgdG8geW91ciBzdG9yZSBzZXR1cCB0byBoYW5kbGUgZGlzcGF0Y2hpbmcgb3RoZXIgdmFsdWVzLCBzdWNoIGFzICdyZWR1eC10aHVuaycgdG8gaGFuZGxlIGRpc3BhdGNoaW5nIGZ1bmN0aW9ucy4gU2VlIGh0dHBzOi8vcmVkdXguanMub3JnL3R1dG9yaWFscy9mdW5kYW1lbnRhbHMvcGFydC00LXN0b3JlI21pZGRsZXdhcmUgYW5kIGh0dHBzOi8vcmVkdXguanMub3JnL3R1dG9yaWFscy9mdW5kYW1lbnRhbHMvcGFydC02LWFzeW5jLWxvZ2ljI3VzaW5nLXRoZS1yZWR1eC10aHVuay1taWRkbGV3YXJlIGZvciBleGFtcGxlcy5gKTsKaWYodHlwZW9mIE4udHlwZT09PSJ1bmRlZmluZWQiKXRocm93IEVycm9yKCdBY3Rpb25zIG1heSBub3QgaGF2ZSBhbiB1bmRlZmluZWQgInR5cGUiIHByb3BlcnR5LiBZb3UgbWF5IGhhdmUgbWlzc3BlbGxlZCBhbiBhY3Rpb24gdHlwZSBzdHJpbmcgY29uc3RhbnQuJyk7aWYoRyl0aHJvdyBFcnJvcigiUmVkdWNlcnMgbWF5IG5vdCBkaXNwYXRjaCBhY3Rpb25zLiIpO3RyeXtHPSEwLHg9aCh4LE4pfWZpbmFsbHl7Rz0hMX1IPUw9ZTtmb3IobGV0IEE9MDtBPEgubGVuZ3RoO0ErKykoMCxIW0FdKSgpO3JldHVybiBOfQppZih0eXBlb2YgVz09PSJmdW5jdGlvbiImJnR5cGVvZiBEPT09ImZ1bmN0aW9uInx8dHlwZW9mIEQ9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgYXJndW1lbnRzWzNdPT09ImZ1bmN0aW9uIil0aHJvdyBFcnJvcigiSXQgbG9va3MgbGlrZSB5b3UgYXJlIHBhc3Npbmcgc2V2ZXJhbCBzdG9yZSBlbmhhbmNlcnMgdG8gY3JlYXRlU3RvcmUoKS4gVGhpcyBpcyBub3Qgc3VwcG9ydGVkLiBJbnN0ZWFkLCBjb21wb3NlIHRoZW0gdG9nZXRoZXIgdG8gYSBzaW5nbGUgZnVuY3Rpb24uIFNlZSBodHRwczovL3JlZHV4LmpzLm9yZy90dXRvcmlhbHMvZnVuZGFtZW50YWxzL3BhcnQtNC1zdG9yZSNjcmVhdGluZy1hLXN0b3JlLXdpdGgtZW5oYW5jZXJzIGZvciBhbiBleGFtcGxlLiIpO3R5cGVvZiBXPT09ImZ1bmN0aW9uIiYmdHlwZW9mIEQ9PT0idW5kZWZpbmVkIiYmKEQ9VyxXPXZvaWQgMCk7aWYodHlwZW9mIEQhPT0idW5kZWZpbmVkIil7aWYodHlwZW9mIEQhPT0iZnVuY3Rpb24iKXRocm93IEVycm9yKGBFeHBlY3RlZCB0aGUgZW5oYW5jZXIgdG8gYmUgYSBmdW5jdGlvbi4gSW5zdGVhZCwgcmVjZWl2ZWQ6ICcke3R5cGVvZiBEfSdgKTsKcmV0dXJuIEQoJGYpKG4sVyl9aWYodHlwZW9mIG4hPT0iZnVuY3Rpb24iKXRocm93IEVycm9yKGBFeHBlY3RlZCB0aGUgcm9vdCByZWR1Y2VyIHRvIGJlIGEgZnVuY3Rpb24uIEluc3RlYWQsIHJlY2VpdmVkOiAnJHt0eXBlb2Ygbn0nYCk7dmFyIGg9bix4PVcsTD1bXSxlPUwsRz0hMTtrKHt0eXBlOkdkfSk7dmFyIHI9e2Rpc3BhdGNoOmssc3Vic2NyaWJlOnYsZ2V0U3RhdGU6YixyZXBsYWNlUmVkdWNlcjpmdW5jdGlvbihOKXtpZih0eXBlb2YgTiE9PSJmdW5jdGlvbiIpdGhyb3cgRXJyb3IoYEV4cGVjdGVkIHRoZSBuZXh0UmVkdWNlciB0byBiZSBhIGZ1bmN0aW9uLiBJbnN0ZWFkLCByZWNlaXZlZDogJyR7dHlwZW9mIE59YCk7aD1OO2soe3R5cGU6RUtDfSk7cmV0dXJuIHJ9LApbcjJdOmZ1bmN0aW9uKCl7cmV0dXJue3N1YnNjcmliZShOKXtmdW5jdGlvbiBIKCl7Ti5uZXh0JiZOLm5leHQoYigpKX0KaWYodHlwZW9mIE4hPT0ib2JqZWN0Inx8Tj09PW51bGwpdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgdGhlIG9ic2VydmVyIHRvIGJlIGFuIG9iamVjdC4gSW5zdGVhZCwgcmVjZWl2ZWQ6ICcke3R5cGVvZiBOfSdgKTtIKCk7cmV0dXJue3Vuc3Vic2NyaWJlOnYoSCl9fSxbcjJdKCl7cmV0dXJuIHRoaXN9fX19OwpyZXR1cm4gcn07Ck5OPWZ1bmN0aW9uKG4pe3JldHVybiBuPyhuPW4ucHJpdmF0ZURvTm90QWNjZXNzT3JFbHNlU2FmZVNjcmlwdFdyYXBwZWRWYWx1ZSk/bWMobik6bnVsbDpudWxsfTsKcHc9ZnVuY3Rpb24obil7cmV0dXJuIG4/KG49bi5wcml2YXRlRG9Ob3RBY2Nlc3NPckVsc2VUcnVzdGVkUmVzb3VyY2VVcmxXcmFwcGVkVmFsdWUpP2szKG4pOm51bGw6bnVsbH07CmcuSFY9ZnVuY3Rpb24obil7bj1ZZihuKTtyZXR1cm4gZy5ITShuKX07CmZ3PWZ1bmN0aW9uKG4pe249WWYobik7cmV0dXJuIGszKG4pfTsKWWY9ZnVuY3Rpb24obil7cmV0dXJuIG49PT1udWxsPyJudWxsIjpuPT09dm9pZCAwPyJ1bmRlZmluZWQiOm59OwpKcj1mdW5jdGlvbigpe3JldHVybiBnLnJyKCJ5dC5hZHMuYmlzY290dGkubGFzdElkXyIpfHwiIn07CmcuU0g9ZnVuY3Rpb24oLi4ubil7bj1hcmd1bWVudHM7dmFyIFc9SUU7bi5sZW5ndGg+MT9XW25bMF1dPW5bMV06bi5sZW5ndGg9PT0xJiZPYmplY3QuYXNzaWduKFcsblswXSl9OwpnLkFyPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4gaW4gSUU/SUVbbl06V307Cm15PWZ1bmN0aW9uKG4pe3ZhciBXPUlFLkVYUEVSSU1FTlRfRkxBR1M7cmV0dXJuIFc/V1tuXTp2b2lkIDB9OwppMGI9ZnVuY3Rpb24obil7S3cuZm9yRWFjaChXPT5XKG4pKX07ClBWPWZ1bmN0aW9uKG4pe3JldHVybiBuJiZ3aW5kb3cueXRlcnI/ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG4uYXBwbHkodGhpcyxhcmd1bWVudHMpfWNhdGNoKFcpe090KFcpfX06bn07Ck90PWZ1bmN0aW9uKG4pe3ZhciBXPWcucnIoInl0LmxvZ2dpbmcuZXJyb3JzLmxvZyIpO1c/VyhuLCJFUlJPUiIsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCk6KFc9Zy5BcigiRVJST1JTIixbXSksVy5wdXNoKFtuLCJFUlJPUiIsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMF0pLGcuU0goIkVSUk9SUyIsVykpO2kwYihuKX07ClpFPWZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9Zy5ycigieXQubG9nZ2luZy5lcnJvcnMubG9nIik7az9rKG4sIldBUk5JTkciLFcsRCxiLHZvaWQgMCx2KTooaz1nLkFyKCJFUlJPUlMiLFtdKSxrLnB1c2goW24sIldBUk5JTkciLFcsRCxiLHZvaWQgMCx2XSksZy5TSCgiRVJST1JTIixrKSl9Owp5Rj1mdW5jdGlvbihuLFcpe1c9bi5zcGxpdChXKTt2YXIgRD17fTtmb3IobGV0IGs9MCxoPVcubGVuZ3RoO2s8aDtrKyspe2xldCB4PVdba10uc3BsaXQoIj0iKTtpZih4Lmxlbmd0aD09PTEmJnhbMF18fHgubGVuZ3RoPT09Mil0cnl7bGV0IEw9VXQoeFswXXx8IiIpLGU9VXQoeFsxXXx8IiIpO2lmKEwgaW4gRCl7bGV0IEc9RFtMXTtBcnJheS5pc0FycmF5KEcpP2cuUTIoRyxlKTpEW0xdPVtHLGVdfWVsc2UgRFtMXT1lfWNhdGNoKEwpe3ZhciBiPUwsdj14WzBdO2xldCBlPVN0cmluZyh5Rik7Yi5hcmdzPVt7a2V5OnYsdmFsdWU6eFsxXSxxdWVyeTpuLG1ldGhvZDp1UWg9PT1lPyJ1bmNoYW5nZWQiOmV9XTtvS2kuaGFzT3duUHJvcGVydHkodil8fFpFKGIpfX1yZXR1cm4gRH07CmcuRXQ9ZnVuY3Rpb24obil7dmFyIFc9W107Zy5hXyhuLChELGIpPT57dmFyIHY9cWgoYik7Zy55MihBcnJheS5pc0FycmF5KEQpP0Q6W0RdLGs9PntrPT0iIj9XLnB1c2godik6Vy5wdXNoKGAke3Z9PSR7cWgoayl9YCl9KX0pOwpyZXR1cm4gVy5qb2luKCImIil9OwpnLml3PWZ1bmN0aW9uKG4pe24uY2hhckF0KDApPT09Ij8iJiYobj1uLnN1YnN0cmluZygxKSk7cmV0dXJuIHlGKG4sIiYiKX07CnV3PWZ1bmN0aW9uKG4pe3JldHVybiBuLnNwbGl0KCIsIikubWFwKFc9PmcuaXcoVykpfTsKZy5vRT1mdW5jdGlvbihuKXtyZXR1cm4gbi5pbmRleE9mKCI/IikhPT0tMT8obj0obnx8IiIpLnNwbGl0KCIjIilbMF0sbj1uLnNwbGl0KCI/IiwyKSxnLml3KG4ubGVuZ3RoPjE/blsxXTpuWzBdKSk6e319OwpnLnpkPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGQyKG4sV3x8e30sITApfTsKZy5sdz1mdW5jdGlvbihuLFcpe3JldHVybiBkMihuLFd8fHt9LCExKX07CmQyPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLnNwbGl0KCIjIiwyKTtuPWJbMF07Yj1iLmxlbmd0aD4xPyIjIitiWzFdOiIiO3ZhciB2PW4uc3BsaXQoIj8iLDIpO249dlswXTt2PWcuaXcodlsxXXx8IiIpO2ZvcihsZXQgayBpbiBXKWlmKER8fCFnLmVwKHYsaykpdltrXT1XW2tdO3JldHVybiBnLkVUKG4sdikrYn07CmcuVGQ9ZnVuY3Rpb24obil7aWYoIVcpdmFyIFc9d2luZG93LmxvY2F0aW9uLmhyZWY7dmFyIEQ9Zy5mcChuKVsxXXx8bnVsbCxiPWcuSVAobik7RCYmYj8obj1nLmZwKG4pLFc9Zy5mcChXKSxuPW5bM109PVdbM10mJm5bMV09PVdbMV0mJm5bNF09PVdbNF0pOm49Yj9nLklQKFcpPT09YiYmKE51bWJlcihnLmZwKFcpWzRdfHxudWxsKXx8bnVsbCk9PT0oTnVtYmVyKGcuZnAobilbNF18fG51bGwpfHxudWxsKTohMDtyZXR1cm4gbn07Cmcuakg9ZnVuY3Rpb24obil7bnx8KG49ZG9jdW1lbnQubG9jYXRpb24uaHJlZik7bj1nLmZwKG4pWzFdfHxudWxsO3JldHVybiBuIT09bnVsbCYmbj09PSJodHRwcyJ9OwpnLkJWPWZ1bmN0aW9uKG4pe249Q3cobik7cmV0dXJuIG49PT1udWxsPyExOm5bMF09PT0iY29tIiYmblsxXS5tYXRjaCgvXnlvdXR1YmUoPzpraWRzfC1ub2Nvb2tpZSk/JC8pPyEwOiExfTsKZy5GJD1mdW5jdGlvbihuKXtuPUN3KG4pO3JldHVybiBuPT09bnVsbD8hMTpuWzFdPT09Imdvb2dsZSI/ITA6blsyXT09PSJnb29nbGUiP25bMF09PT0iYXUiJiZuWzFdPT09ImNvbSI/ITA6blswXT09PSJ1ayImJm5bMV09PT0iY28iPyEwOiExOiExfTsKQ3c9ZnVuY3Rpb24obil7bj1nLklQKG4pO3JldHVybiBuIT09bnVsbD9uLnNwbGl0KCIuIikucmV2ZXJzZSgpOm51bGx9OwpVdD1mdW5jdGlvbihuKXtyZXR1cm4gbiYmbi5tYXRjaChkeGkpP246RzUobil9OwpnLk1OPWZ1bmN0aW9uKG4pe2E6e2xldCBEO3RyeXtEPW4uTi50b3AubG9jYXRpb24uaHJlZn1jYXRjaChiKXtuPTI7YnJlYWsgYX1uPUQ/RD09PW4uSi5sb2NhdGlvbi5ocmVmPzA6MToyfW49e2R0OnpDdyxmbGFzaDoiMCIsZnJtOm59O3RyeXtuLnVfdHo9LShuZXcgRGF0ZSkuZ2V0VGltZXpvbmVPZmZzZXQoKTt0cnl7dmFyIFc9Zy53Mi5oaXN0b3J5Lmxlbmd0aH1jYXRjaChEKXtXPTB9bi51X2hpcz1XO24udV9oPWcudzIuc2NyZWVuPy5oZWlnaHQ7bi51X3c9Zy53Mi5zY3JlZW4/LndpZHRoO24udV9haD1nLncyLnNjcmVlbj8uYXZhaWxIZWlnaHQ7bi51X2F3PWcudzIuc2NyZWVuPy5hdmFpbFdpZHRoO24udV9jZD1nLncyLnNjcmVlbj8uY29sb3JEZXB0aH1jYXRjaChEKXt9cmV0dXJuIG59OwpnLlFGPWZ1bmN0aW9uKG49SnIoKSl7dmFyIFc9Zy5SRSxEPU9iamVjdCxiPUQuYXNzaWduLHY9Zy5NTihXKTt2YXIgaz1XLk47dHJ5e3ZhciBoPWsuc2NyZWVuWDt2YXIgeD1rLnNjcmVlbll9Y2F0Y2goVCl7fXRyeXt2YXIgTD1rLm91dGVyV2lkdGg7dmFyIGU9ay5vdXRlckhlaWdodH1jYXRjaChUKXt9dHJ5e3ZhciBHPWsuaW5uZXJXaWR0aDt2YXIgcj1rLmlubmVySGVpZ2h0fWNhdGNoKFQpe310cnl7dmFyIE49ay5zY3JlZW5MZWZ0O3ZhciBIPWsuc2NyZWVuVG9wfWNhdGNoKFQpe310cnl7Rz1rLmlubmVyV2lkdGgscj1rLmlubmVySGVpZ2h0fWNhdGNoKFQpe310cnl7dmFyIEE9ay5zY3JlZW4uYXZhaWxXaWR0aDt2YXIgeT1rLnNjcmVlbi5hdmFpbFRvcH1jYXRjaChUKXt9az1bTixILGgseCxBLHksTCxlLEcscl07aD1nLnNJKCExLFcuTi50b3ApO3g9bmV3IGxYcjsiU1ZHRWxlbWVudCJpbiBnLnFpJiYiY3JlYXRlRWxlbWVudE5TImluIGcucWkuZG9jdW1lbnQmJnguc2V0KDApOwpMPVRUcigpO0xbImFsbG93LXRvcC1uYXZpZ2F0aW9uLWJ5LXVzZXItYWN0aXZhdGlvbiJdJiZ4LnNldCgxKTtMWyJhbGxvdy1wb3B1cHMtdG8tZXNjYXBlLXNhbmRib3giXSYmeC5zZXQoMik7Zy5xaS5jcnlwdG8mJmcucWkuY3J5cHRvLnN1YnRsZSYmeC5zZXQoMyk7IlRleHREZWNvZGVyImluIGcucWkmJiJUZXh0RW5jb2RlciJpbiBnLnFpJiZ4LnNldCg0KTtXPXtiYzpOV2goeCksYmloOmguaGVpZ2h0LGJpdzpoLndpZHRoLGJyZGltOmsuam9pbigpLHZpczpnLk53KFcuSiksd2dsOiEhZy53Mi5XZWJHTFJlbmRlcmluZ0NvbnRleHR9O0Q9Yi5jYWxsKEQsdixXKTtELmNhX3R5cGU9ImltYWdlIjtuJiYoRC5iaWQ9bik7cmV0dXJuIER9OwpUVzI9ZnVuY3Rpb24oKXtpZighVkYpcmV0dXJuIG51bGw7dmFyIG49VkYoKTtyZXR1cm4ib3BlbiJpbiBuP246bnVsbH07CmFFPWZ1bmN0aW9uKG4pe3N3aXRjaChjVihuKSl7Y2FzZSAyMDA6Y2FzZSAyMDE6Y2FzZSAyMDI6Y2FzZSAyMDM6Y2FzZSAyMDQ6Y2FzZSAyMDU6Y2FzZSAyMDY6Y2FzZSAzMDQ6cmV0dXJuITA7ZGVmYXVsdDpyZXR1cm4hMX19OwpjVj1mdW5jdGlvbihuKXtyZXR1cm4gbiYmInN0YXR1cyJpbiBuP24uc3RhdHVzOi0xfTsKZy5uJD1mdW5jdGlvbihuLFcpe3R5cGVvZiBuPT09ImZ1bmN0aW9uIiYmKG49UFYobikpO3JldHVybiB3aW5kb3cuc2V0VGltZW91dChuLFcpfTsKVzA9ZnVuY3Rpb24obixXKXt0eXBlb2Ygbj09PSJmdW5jdGlvbiImJihuPVBWKG4pKTtyZXR1cm4gd2luZG93LnNldEludGVydmFsKG4sVyl9OwpEcj1mdW5jdGlvbihuKXt3aW5kb3cuY2xlYXJJbnRlcnZhbChuKX07CmcubD1mdW5jdGlvbihuLFcpe249YmIobixXKTtyZXR1cm4gdHlwZW9mIG49PT0ic3RyaW5nIiYmbj09PSJmYWxzZSI/ITE6ISFufTsKdjA9ZnVuY3Rpb24obixXKXtyZXR1cm4gTnVtYmVyKGJiKG4sVyl8fDApfTsKa1Q9ZnVuY3Rpb24oKXtyZXR1cm4gZy5BcigiRVhQRVJJTUVOVFNfVE9LRU4iLCIiKX07CmJiPWZ1bmN0aW9uKG4sVyl7bj1nLkFyKCJFWFBFUklNRU5UX0ZMQUdTIix7fSlbbl07cmV0dXJuIG4hPT12b2lkIDA/bjpXfTsKaHk9ZnVuY3Rpb24oKXt2YXIgbj1bXSxXPWcuQXIoIkVYUEVSSU1FTlRTX0ZPUkNFRF9GTEFHUyIse30pO2Zvcih2YXIgRCBvZiBPYmplY3Qua2V5cyhXKSluLnB1c2goe2tleTpELHZhbHVlOlN0cmluZyhXW0RdKX0pO0Q9Zy5BcigiRVhQRVJJTUVOVF9GTEFHUyIse30pO2ZvcihsZXQgYiBvZiBPYmplY3Qua2V5cyhEKSliLnN0YXJ0c1dpdGgoImZvcmNlXyIpJiZXW2JdPT09dm9pZCAwJiZuLnB1c2goe2tleTpiLHZhbHVlOlN0cmluZyhEW2JdKX0pO3JldHVybiBufTsKeFQ9ZnVuY3Rpb24obixXLEQ9IkdFVCIsYj0iIix2LGssaCx4PSExLEwpe3ZhciBlPVRXMigpO2lmKCFlKXJldHVybiBudWxsO3ZhciBHPSgpPT57KGUmJiJyZWFkeVN0YXRlImluIGU/ZS5yZWFkeVN0YXRlOjApPT09NCYmVyYmUFYoVykoZSl9Owoib25sb2FkZW5kImluIGU/ZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkZW5kIixHLCExKTplLm9ucmVhZHlzdGF0ZWNoYW5nZT1HO2cubCgiZGVidWdfZm9yd2FyZF93ZWJfcXVlcnlfcGFyYW1ldGVycyIpJiYobj1qMloobikpO2Uub3BlbihELG4sITApO2smJihlLnJlc3BvbnNlVHlwZT1rKTtoJiYoZS53aXRoQ3JlZGVudGlhbHM9ITApO0Q9RD09PSJQT1NUIiYmKHdpbmRvdy5Gb3JtRGF0YT09PXZvaWQgMHx8IShiIGluc3RhbmNlb2YgRm9ybURhdGEpKTtpZih2PUNwTShuLHYpKWZvcihsZXQgciBpbiB2KWUuc2V0UmVxdWVzdEhlYWRlcihyLHZbcl0pLCJjb250ZW50LXR5cGUiPT09ci50b0xvd2VyQ2FzZSgpJiYoRD0hMSk7RCYmZS5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKTtMJiYib25wcm9ncmVzcyJpbiBlJiYoZS5vbnByb2dyZXNzPSgpPT57TChlLnJlc3BvbnNlVGV4dCl9KTsKaWYoeCYmInNldEF0dHJpYnV0aW9uUmVwb3J0aW5nImluIFhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZSl7bj17ZXZlbnRTb3VyY2VFbGlnaWJsZTohMCx0cmlnZ2VyRWxpZ2libGU6ITF9O3RyeXtlLnNldEF0dHJpYnV0aW9uUmVwb3J0aW5nKG4pfWNhdGNoKHIpe1pFKHIpfX1lLnNlbmQoYik7cmV0dXJuIGV9OwpDcE09ZnVuY3Rpb24obixXPXt9KXt2YXIgRD1nLlRkKG4pLGI9Zy5BcigiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIiksdj1nLmwoIndlYl9hamF4X2lnbm9yZV9nbG9iYWxfaGVhZGVyc19pZl9zZXQiKTtmb3IobGV0IHggaW4gTCQpe2xldCBMPWcuQXIoTCRbeF0pLGU9eD09PSJYLUdvb2ctQXV0aFVzZXIifHx4PT09IlgtR29vZy1QYWdlSWQiO3ghPT0iWC1Hb29nLVZpc2l0b3ItSWQifHxMfHwoTD1nLkFyKCJWSVNJVE9SX0RBVEEiKSk7dmFyIGs7aWYoIShrPSFMKSl7aWYoIShrPUR8fChnLklQKG4pPyExOiEwKSkpe2s9bjt2YXIgaDtpZihoPWcubCgiYWRkX2F1dGhfaGVhZGVyc190b19yZW1hcmtldGluZ19nb29nbGVfZG90X2NvbV9waW5nIikmJng9PT0iQXV0aG9yaXphdGlvbiImJihiPT09IlRWSFRNTDUifHxiPT09IlRWSFRNTDVfVU5QTFVHR0VEInx8Yj09PSJUVkhUTUw1X1NJTVBMWSIpJiZnLkYkKGspKWs9UzEoayl8fCIiLGs9ay5zcGxpdCgiLyIpLGs9Ii8iKyhrLmxlbmd0aD4KMT9rWzFdOiIiKSxoPWs9PT0iL3BhZ2VhZCI7az1oPyEwOiExfWs9IWt9a3x8diYmV1t4XSE9PXZvaWQgMHx8Yj09PSJUVkhUTUw1X1VOUExVR0dFRCImJmV8fChXW3hdPUwpfSJYLUdvb2ctRU9NLVZpc2l0b3ItSWQiaW4gVyYmIlgtR29vZy1WaXNpdG9yLUlkImluIFcmJmRlbGV0ZSBXWyJYLUdvb2ctVmlzaXRvci1JZCJdO2lmKER8fCFnLklQKG4pKVdbIlgtWW91VHViZS1VdGMtT2Zmc2V0Il09U3RyaW5nKC0obmV3IERhdGUpLmdldFRpbWV6b25lT2Zmc2V0KCkpO2lmKER8fCFnLklQKG4pKXtsZXQgeDt0cnl7eD0obmV3IEludGwuRGF0ZVRpbWVGb3JtYXQpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lfWNhdGNoe314JiYoV1siWC1Zb3VUdWJlLVRpbWUtWm9uZSJdPXgpfWRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJ5b3V0dWJlZWR1Y2F0aW9uLmNvbSIpfHwhRCYmZy5JUChuKXx8KFdbIlgtWW91VHViZS1BZC1TaWduYWxzIl09Zy5FdChnLlFGKCkpKTtyZXR1cm4gV307Cmc4PWZ1bmN0aW9uKG4sVyl7Vy5tZXRob2Q9IlBPU1QiO1cucG9zdFBhcmFtc3x8KFcucG9zdFBhcmFtcz17fSk7cmV0dXJuIGcuZWQobixXKX07CkJXaj1mdW5jdGlvbihuLFcpe2lmKHdpbmRvdy5mZXRjaCYmVy5mb3JtYXQhPT0iWE1MIil7dmFyIEQ9e21ldGhvZDpXLm1ldGhvZHx8IkdFVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn07Vy5oZWFkZXJzJiYoRC5oZWFkZXJzPVcuaGVhZGVycyk7Vy5wcmlvcml0eSYmKEQucHJpb3JpdHk9Vy5wcmlvcml0eSk7bj1YbihuLFcpO3ZhciBiPXFYKG4sVyk7YiYmKEQuYm9keT1iKTtXLndpdGhDcmVkZW50aWFscyYmKEQuY3JlZGVudGlhbHM9ImluY2x1ZGUiKTt2YXIgdj1XLmNvbnRleHR8fGcucWksaz0hMSxoO2ZldGNoKG4sRCkudGhlbih4PT57aWYoIWspe2s9ITA7aCYmd2luZG93LmNsZWFyVGltZW91dChoKTt2YXIgTD14Lm9rLGU9Rz0+e0c9R3x8e307TD9XLm9uU3VjY2VzcyYmVy5vblN1Y2Nlc3MuY2FsbCh2LEcseCk6Vy5vbkVycm9yJiZXLm9uRXJyb3IuY2FsbCh2LEcseCk7Vy5vbkZpbmlzaCYmVy5vbkZpbmlzaC5jYWxsKHYsRyx4KX07CihXLmZvcm1hdHx8IkpTT04iKT09PSJKU09OIiYmKEx8fHguc3RhdHVzPj00MDAmJnguc3RhdHVzPDUwMCk/eC5qc29uKCkudGhlbihlLCgpPT57ZShudWxsKX0pOmUobnVsbCl9fSkuY2F0Y2goKCk9PntXLm9uRXJyb3ImJlcub25FcnJvci5jYWxsKHYse30se30pfSk7Cm49Vy50aW1lb3V0fHwwO1cub25GZXRjaFRpbWVvdXQmJm4+MCYmKGg9Zy5uJCgoKT0+e2t8fChrPSEwLHdpbmRvdy5jbGVhclRpbWVvdXQoaCksVy5vbkZldGNoVGltZW91dC5jYWxsKFcuY29udGV4dHx8Zy5xaSkpfSxuKSl9ZWxzZSBnLmVkKG4sVyl9OwpnLmVkPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vy5mb3JtYXR8fCJKU09OIjtuPVhuKG4sVyk7dmFyIGI9cVgobixXKSx2PSExLGs9RngxKG4seD0+e2lmKCF2KXt2PSEwO2gmJndpbmRvdy5jbGVhclRpbWVvdXQoaCk7dmFyIEw9YUUoeCksZT1udWxsLEc9NDAwPD14LnN0YXR1cyYmeC5zdGF0dXM8NTAwLHI9NTAwPD14LnN0YXR1cyYmeC5zdGF0dXM8NjAwO2lmKEx8fEd8fHIpZT13MjIobixELHgsVy5jb252ZXJ0VG9TYWZlSHRtbCk7TCYmKEw9TXVDKEQseCxlKSk7ZT1lfHx7fTtHPVcuY29udGV4dHx8Zy5xaTtMP1cub25TdWNjZXNzJiZXLm9uU3VjY2Vzcy5jYWxsKEcseCxlKTpXLm9uRXJyb3ImJlcub25FcnJvci5jYWxsKEcseCxlKTtXLm9uRmluaXNoJiZXLm9uRmluaXNoLmNhbGwoRyx4LGUpfX0sVy5tZXRob2QsYixXLmhlYWRlcnMsVy5yZXNwb25zZVR5cGUsVy53aXRoQ3JlZGVudGlhbHMsITEsVy5vblByb2dyZXNzKTsKYj1XLnRpbWVvdXR8fDA7aWYoVy5vblRpbWVvdXQmJmI+MCl7bGV0IHg9Vy5vblRpbWVvdXQ7dmFyIGg9Zy5uJCgoKT0+e3Z8fCh2PSEwLGsuYWJvcnQoKSx3aW5kb3cuY2xlYXJUaW1lb3V0KGgpLHguY2FsbChXLmNvbnRleHR8fGcucWksaykpfSxiKX1yZXR1cm4ga307ClhuPWZ1bmN0aW9uKG4sVyl7Vy5pbmNsdWRlRG9tYWluJiYobj1kb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbCsiLy8iK2RvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKyhkb2N1bWVudC5sb2NhdGlvbi5wb3J0PyI6Iitkb2N1bWVudC5sb2NhdGlvbi5wb3J0OiIiKStuKTt2YXIgRD1nLkFyKCJYU1JGX0ZJRUxEX05BTUUiKTtpZihXPVcudXJsUGFyYW1zKVdbRF0mJmRlbGV0ZSBXW0RdLG49Zy56ZChuLFcpO3JldHVybiBufTsKcVg9ZnVuY3Rpb24obixXKXt2YXIgRD1nLkFyKCJYU1JGX0ZJRUxEX05BTUUiKSxiPWcuQXIoIlhTUkZfVE9LRU4iKSx2PVcucG9zdEJvZHl8fCIiLGs9Vy5wb3N0UGFyYW1zLGg9Zy5BcigiWFNSRl9GSUVMRF9OQU1FIikseDtXLmhlYWRlcnMmJih4PVcuaGVhZGVyc1siQ29udGVudC1UeXBlIl0pO1cuZXhjbHVkZVhzcmZ8fGcuSVAobikmJiFXLndpdGhDcmVkZW50aWFscyYmZy5JUChuKSE9PWRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lfHxXLm1ldGhvZCE9PSJQT1NUInx8eCYmeCE9PSJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQifHxXLnBvc3RQYXJhbXMmJlcucG9zdFBhcmFtc1toXXx8KGt8fChrPXt9KSxrW0RdPWIpO2smJnR5cGVvZiB2PT09InN0cmluZyImJih2PWcuaXcodiksZy5ZeSh2LGspLHY9Vy5wb3N0Qm9keUZvcm1hdCYmVy5wb3N0Qm9keUZvcm1hdD09PSJKU09OIj9KU09OLnN0cmluZ2lmeSh2KTp5Ryh2KSk7az12fHxrJiYhZy5HRihrKTshR1EmJgprJiZXLm1ldGhvZCE9PSJQT1NUIiYmKEdRPSEwLE90KEVycm9yKCJBSkFYIHJlcXVlc3Qgd2l0aCBwb3N0RGF0YSBzaG91bGQgdXNlIFBPU1QiKSkpO3JldHVybiB2fTsKdzIyPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PW51bGw7c3dpdGNoKFcpe2Nhc2UgIkpTT04iOmxldCBrO3RyeXtrPUQucmVzcG9uc2VUZXh0fWNhdGNoKGgpe3Rocm93IGI9RXJyb3IoIkVycm9yIHJlYWRpbmcgcmVzcG9uc2VUZXh0IiksYi5wYXJhbXM9bixaRShiKSxoO31uPUQuZ2V0UmVzcG9uc2VIZWFkZXIoIkNvbnRlbnQtVHlwZSIpfHwiIjtpZihrJiZuLmluZGV4T2YoImpzb24iKT49MCl7ay5zdWJzdHJpbmcoMCw1KT09PSIpXX0nXG4iJiYoaz1rLnN1YnN0cmluZyg1KSk7dHJ5e3Y9SlNPTi5wYXJzZShrKX1jYXRjaChoKXt9fWJyZWFrO2Nhc2UgIlhNTCI6aWYobj0obj1ELnJlc3BvbnNlWE1MKT9SQ1Uobik6bnVsbCl2PXt9LGcueTIobi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLGg9Pnt2W2gudGFnTmFtZV09UTJpKGgpfSl9YiYmdHkodik7CnJldHVybiB2fTsKdHk9ZnVuY3Rpb24obil7aWYoZy5mdChuKSlmb3IobGV0IFcgaW4gbilXPT09Imh0bWxfY29udGVudCJ8fGcuQlooVywiX2h0bWwiKT9uW1ddPWcuSE0obltXXSk6dHkobltXXSl9OwpNdUM9ZnVuY3Rpb24obixXLEQpe2lmKFcmJlcuc3RhdHVzPT09MjA0KXJldHVybiEwO3N3aXRjaChuKXtjYXNlICJKU09OIjpyZXR1cm4hIUQ7Y2FzZSAiWE1MIjpyZXR1cm4gTnVtYmVyKEQmJkQucmV0dXJuX2NvZGUpPT09MDtjYXNlICJSQVciOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuISFEfX07ClJDVT1mdW5jdGlvbihuKXtyZXR1cm4gbj8obj0oInJlc3BvbnNlWE1MImluIG4/bi5yZXNwb25zZVhNTDpuKS5nZXRFbGVtZW50c0J5VGFnTmFtZSgicm9vdCIpKSYmbi5sZW5ndGg+MD9uWzBdOm51bGw6bnVsbH07ClEyaT1mdW5jdGlvbihuKXt2YXIgVz0iIjtnLnkyKG4uY2hpbGROb2RlcyxEPT57Vys9RC5ub2RlVmFsdWV9KTsKcmV0dXJuIFd9OwpqMlo9ZnVuY3Rpb24obil7dmFyIFc9d2luZG93LmxvY2F0aW9uLnNlYXJjaCxEPWcuSVAobik7Zy5sKCJkZWJ1Z19oYW5kbGVfcmVsYXRpdmVfdXJsX2Zvcl9xdWVyeV9mb3J3YXJkX2tpbGxzd2l0Y2giKXx8IUQmJmcuVGQobikmJihEPWRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKTt2YXIgYj1TMShuKTtiPShEPUQmJihELmVuZHNXaXRoKCJ5b3V0dWJlLmNvbSIpfHxELmVuZHNXaXRoKCJ5b3V0dWJlLW5vY29va2llLmNvbSIpKSkmJmImJmIuc3RhcnRzV2l0aCgiL2FwaS8iKTtpZighRHx8YilyZXR1cm4gbjt2YXIgdj1nLml3KFcpLGs9e307Zy55MihWdWIsaD0+e3ZbaF0mJihrW2hdPXZbaF0pfSk7CnJldHVybiBnLmx3KG4sayl9OwpnLnI4PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5zMChXKSxiO3JldHVybihuZXcgZy5YMSgodixrKT0+e0Qub25TdWNjZXNzPWg9PnthRShoKT92KG5ldyBjNFUoaCkpOmsobmV3IGcuJFQoYFJlcXVlc3QgZmFpbGVkLCBzdGF0dXM9JHtjVihoKX1gLCJuZXQuYmFkc3RhdHVzIixoKSl9OwpELm9uRXJyb3I9aD0+e2sobmV3IGcuJFQoIlVua25vd24gcmVxdWVzdCBlcnJvciIsIm5ldC51bmtub3duIixoKSl9OwpELm9uVGltZW91dD1oPT57ayhuZXcgZy4kVCgiUmVxdWVzdCB0aW1lZCBvdXQiLCJuZXQudGltZW91dCIsaCkpfTsKYj1nLmVkKG4sRCl9KSkuc1Aodj0+e3YgaW5zdGFuY2VvZiBnLkk1JiZiPy5hYm9ydCgpOwpyZXR1cm4gZy5ycCh2KX0pfTsKZy5zej1mdW5jdGlvbihuLFcsRCxiLHY9LTEsayl7dmFyIGg9TD0+bmV3IGcuWDEoZT0+e3NldFRpbWVvdXQoZSxMKX0pLHg9KEwsZSxHKT0+TC5zUChyPT57aWYoZTw9MHx8Y1Yoci54aHIpPT09NDAzKXJldHVybiBnLnJwKG5ldyBnLiRUKCJSZXF1ZXN0IHJldHJpZWQgdG9vIG1hbnkgdGltZXMiLCJuZXQucmV0cnlleGhhdXN0ZWQiLHIueGhyKSk7CnZhciBOPU1hdGgucG93KDIsRC1lKzEpKkcsSD12PjA/TWF0aC5taW4odixOKTpOO3JldHVybiBoKEcpLnRoZW4oKCk9PntrJiZrKHIsZS0xKTtyZXR1cm4geChnLnI4KG4sVyksZS0xLEgpfSl9KTsKcmV0dXJuIHgoZy5yOChuLFcpLEQtMSxiKX07CmFYQz1mdW5jdGlvbihuLFc9bnVsbCl7bi5XPTI7bi5KPVd9OwpuVXc9ZnVuY3Rpb24obixXPW51bGwpe24uVz0xO24uSj1XfTsKZy5wJD1mdW5jdGlvbihuPW51bGwpe3ZhciBXPW5ldyBOWDthWEMoVyxuKTtyZXR1cm4gV307CmcuSDA9ZnVuY3Rpb24obj1udWxsKXt2YXIgVz1uZXcgTlg7blV3KFcsbik7cmV0dXJuIFd9OwpJSz1mdW5jdGlvbihuLFcsRCxiPSJ5b3V0dWJlLmNvbSIsdj0hMSl7ZiR8fEp5LnNldCgiIituLFcse256OkQscGF0aDoiLyIsZG9tYWluOmIsc2VjdXJlOnZ9KX07CmcuU2Q9ZnVuY3Rpb24obil7aWYoIWYkKXJldHVybiBKeS5nZXQoIiIrbix2b2lkIDApfTsKQXk9ZnVuY3Rpb24obixXPSIvIixEPSJ5b3V0dWJlLmNvbSIpe2YkfHxKeS5yZW1vdmUoIiIrbixXLEQpfTsKZy5taj1mdW5jdGlvbigpe2lmKCFKeS5pc0VuYWJsZWQoKSlyZXR1cm4hMTtpZighSnkuaXNFbXB0eSgpKXJldHVybiEwO0p5LnNldCgiVEVTVENPT0tJRVNFTkFCTEVEIiwiMSIse256OjYwfSk7aWYoSnkuZ2V0KCJURVNUQ09PS0lFU0VOQUJMRUQiKSE9PSIxIilyZXR1cm4hMTtKeS5yZW1vdmUoIlRFU1RDT09LSUVTRU5BQkxFRCIpO3JldHVybiEwfTsKZy53PWZ1bmN0aW9uKG4sVyl7aWYobilyZXR1cm4gbltXLm5hbWVdfTsKSyQ9ZnVuY3Rpb24obil7dmFyIFc9Zy5BcigiSU5ORVJUVUJFX0hPU1RfT1ZFUlJJREUiKTtXJiYobj1TdHJpbmcoVykrU3RyaW5nKG1XKG4pKSk7cmV0dXJuIG59OwpnWj1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj1XXm47dmFyIGs7KG4tNSYxMyk9PTEmJihrPURbSVsxN11dP0RbSVsxN11dW0lbMzVdXShJWzYzXSk6RFtJWzI2XV09PT1JWzYzXSk7aWYoKG4+PjEmNyk9PTEpe3ZhciBoPVAwKHZeNjQ0MCx2XjEzODcsRCk7YltJW3ZeNjQyNF1dKElbdl42NDM3XSxoKTtrPVtdfShuJjEzKT09biYmYltJWzVdXSE9MCYmKGg9b1MoNCw3NjI0LEQsYiksRD1oWzBdKTtyZXR1cm4ga307ClpyPWZ1bmN0aW9uKG4pe3ZhciBXPXt9O2cubCgianNvbl9jb25kZW5zZWRfcmVzcG9uc2UiKSYmKFcucHJldHR5UHJpbnQ9ImZhbHNlIik7cmV0dXJuIG49Zy5sdyhuLFcpfTsKVXo9ZnVuY3Rpb24obixXPSJQT1NUIil7bj17bWV0aG9kOlcsbW9kZTpnLlRkKG4pPyJzYW1lLW9yaWdpbiI6ImNvcnMiLGNyZWRlbnRpYWxzOmcuVGQobik/InNhbWUtb3JpZ2luIjoiaW5jbHVkZSJ9O1c9e307dmFyIEQ9e307Zm9yKGxldCBiIG9mIE9iamVjdC5rZXlzKFcpKVdbYl0mJihEW2JdPVdbYl0pO09iamVjdC5rZXlzKEQpLmxlbmd0aD4wJiYobi5oZWFkZXJzPUQpO3JldHVybiBufTsKeUg9ZnVuY3Rpb24obixXPXt9KXtyZXR1cm5gc2VydmljZToke259LyR7T2JqZWN0LmtleXMoVykuc29ydCgpLm1hcChEPT5EKyI6IitXW0RdKS5qb2luKCIvIil9YH07CkV6PWZ1bmN0aW9uKCl7dmFyIG49L0Nocm9tZVwvKFxkKykvLmV4ZWMoZy5YUSgpKTtyZXR1cm4gbj9wYXJzZUZsb2F0KG5bMV0pOk5hTn07CmliPWZ1bmN0aW9uKCl7dmFyIG49L1xzQ29iYWx0XC8oXFMrKVxzLy5leGVjKGcuWFEoKSk7aWYoIW4pcmV0dXJuIE5hTjt2YXIgVz1bXTtmb3IobGV0IEQgb2YgblsxXS5zcGxpdCgiLiIpKW49cGFyc2VJbnQoRCwxMCksbj49MCYmVy5wdXNoKG4pO3JldHVybiBwYXJzZUZsb2F0KFcuam9pbigiLiIpKX07Cm9LPWZ1bmN0aW9uKCl7cmV0dXJuIGcudWIoImFuZHJvaWQiKSYmZy51YigiY2hyb21lIikmJiEoZy51YigidHJpZGVudC8iKXx8Zy51YigiZWRnZS8iKSkmJiFnLnViKCJjb2JhbHQiKX07CmcuZDg9ZnVuY3Rpb24oKXtyZXR1cm4gZy51YigiY29iYWx0Iil9Owp6UT1mdW5jdGlvbigpe3JldHVybiBnLnViKCJjb2JhbHQiKSYmZy51YigiYXBwbGV0diIpfTsKbGI9ZnVuY3Rpb24oKXtyZXR1cm4gZy51YigiKHBzMzsgbGVhbmJhY2sgc2hlbGwpIil8fGcudWIoInBzMyIpJiZnLmQ4KCl9OwpUUT1mdW5jdGlvbigpe3JldHVybiBnLnViKCIocHM0OyBsZWFuYmFjayBzaGVsbCkiKXx8Zy51YigicHM0IikmJmcuZDgoKX07CmcuamQ9ZnVuY3Rpb24oKXtyZXR1cm4gZy5kOCgpJiYoZy51YigicHM0IHZyIil8fGcudWIoInBzNCBwcm8gdnIiKSl9OwpDJD1mdW5jdGlvbigpe3ZhciBuPS9XZWJLaXRcLyhbMC05XSspLy5leGVjKGcuWFEoKSk7cmV0dXJuISEobiYmcGFyc2VJbnQoblsxXSwxMCk+PTYwMCl9OwpCMD1mdW5jdGlvbigpe3ZhciBuPS9XZWJLaXRcLyhbMC05XSspLy5leGVjKGcuWFEoKSk7cmV0dXJuISEobiYmcGFyc2VJbnQoblsxXSwxMCk+PTYwMil9OwpGbj1mdW5jdGlvbigpe3JldHVybiBnLnViKCJpZW1vYmlsZSIpfHxnLnViKCJ3aW5kb3dzIHBob25lIikmJmcudWIoImVkZ2UiKX07ClJLPWZ1bmN0aW9uKCl7cmV0dXJuKHc4fHxNWCkmJmcudWIoImFwcGxld2Via2l0IikmJiFnLnViKCJ2ZXJzaW9uIikmJighZy51Yigic2FmYXJpIil8fGcudWIoImdzYS8iKSl9OwpWSD1mdW5jdGlvbigpe3JldHVybiBnLlFIJiZnLnViKCJ2ZXJzaW9uLyIpfTsKYzA9ZnVuY3Rpb24oKXtyZXR1cm4gZy51Yigic21hcnQtdHYiKSYmZy51Yigic2Ftc3VuZyIpfTsKZy51Yj1mdW5jdGlvbihuKXt2YXIgVz1nLlhRKCk7cmV0dXJuIFc/Vy50b0xvd2VyQ2FzZSgpLmluZGV4T2Yobik+PTA6ITF9OwpnLmFLPWZ1bmN0aW9uKCl7cmV0dXJuIGo2KCl8fFJLKCl8fFZIKCk/ITA6Zy5BcigiRU9NX1ZJU0lUT1JfREFUQSIpPyExOiEwfTsKbnk9ZnVuY3Rpb24obixXKXtyZXR1cm4gVz09PXZvaWQgMHx8Vz09PW51bGw/bjpXPT09IjEifHxXPT09ITB8fFc9PT0xfHxXPT09IlRydWUiPyEwOiExfTsKV0I9ZnVuY3Rpb24obixXLEQpe2ZvcihsZXQgYiBpbiBEKWlmKERbYl09PVcpcmV0dXJuIERbYl07cmV0dXJuIG59OwpEST1mdW5jdGlvbihuLFcpe3JldHVybiBXPT09dm9pZCAwfHxXPT09bnVsbD9uOk51bWJlcihXKX07CmJPPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFc9PT12b2lkIDB8fFc9PT1udWxsP246Vy50b1N0cmluZygpfTsKdkI9ZnVuY3Rpb24obixXKXtpZihXKXtpZihuPT09ImZ1bGx3aWR0aCIpcmV0dXJuIEluZmluaXR5O2lmKG49PT0iZnVsbGhlaWdodCIpcmV0dXJuIDB9cmV0dXJuIG4mJihXPW4ubWF0Y2goVzAxKSkmJihuPU51bWJlcihXWzJdKSxXPU51bWJlcihXWzFdKSwhaXNOYU4obikmJiFpc05hTihXKSYmbj4wKT9XL246TmFOfTsKa1I9ZnVuY3Rpb24obil7dmFyIFc9bi5kb2NpZHx8bi52aWRlb19pZHx8bi52aWRlb0lkfHxuLmlkO2lmKFcpcmV0dXJuIFc7Vz1uLnJhd19wbGF5ZXJfcmVzcG9uc2U7V3x8KG49bi5wbGF5ZXJfcmVzcG9uc2UpJiYoVz1KU09OLnBhcnNlKG4pKTtyZXR1cm4gVyYmVy52aWRlb0RldGFpbHMmJlcudmlkZW9EZXRhaWxzLnZpZGVvSWR8fG51bGx9OwpnLnhSPWZ1bmN0aW9uKG4pe3JldHVybiBoTyhuLCExKT09PSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRkwifTsKTHk9ZnVuY3Rpb24obil7cmV0dXJuIG49PT0iRU1CRURERURfUExBWUVSX0xJVEVfTU9ERV9GSVhFRF9QTEFZQkFDS19MSU1JVCJ8fG49PT0iRU1CRURERURfUExBWUVSX0xJVEVfTU9ERV9EWU5BTUlDX1BMQVlCQUNLX0xJTUlUIj8hMDohMX07CmhPPWZ1bmN0aW9uKG4sVz0hMSl7Vz1XPyJFTUJFRERFRF9QTEFZRVJfTU9ERV9ERUZBVUxUIjoiRU1CRURERURfUExBWUVSX01PREVfVU5LTk9XTiI7d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLmluY2x1ZGVzKCJ5b3V0dWJlZWR1Y2F0aW9uLmNvbSIpJiYoVz0iRU1CRURERURfUExBWUVSX01PREVfUEZMIik7dmFyIEQ9bi5yYXdfZW1iZWRkZWRfcGxheWVyX3Jlc3BvbnNlO2lmKCFEJiYobj1uLmVtYmVkZGVkX3BsYXllcl9yZXNwb25zZSkpdHJ5e0Q9SlNPTi5wYXJzZShuKX1jYXRjaChiKXtyZXR1cm4gV31yZXR1cm4gRD9XQihXLEQuZW1iZWRkZWRQbGF5ZXJNb2RlLEQzMSk6V307CmI1dD1mdW5jdGlvbihuKXtuJiYobi5kYXRhc2V0P24uZGF0YXNldFtlXygpXT0idHJ1ZSI6cXd0KG4pKX07CmdKPWZ1bmN0aW9uKG4pe3JldHVybiBuP24uZGF0YXNldD9uLmRhdGFzZXRbZV8oKV06bi5nZXRBdHRyaWJ1dGUoImRhdGEtbG9hZGVkIik6bnVsbH07CmVfPWZ1bmN0aW9uKCl7cmV0dXJuIFhrLmxvYWRlZHx8KFhrLmxvYWRlZD0ibG9hZGVkIi5yZXBsYWNlKC9cLShbYS16XSkvZywobixXKT0+Vy50b1VwcGVyQ2FzZSgpKSl9OwpHMT1mdW5jdGlvbigpe3ZhciBuPWRvY3VtZW50O2lmKCJ2aXNpYmlsaXR5U3RhdGUiaW4gbilyZXR1cm4gbi52aXNpYmlsaXR5U3RhdGU7dmFyIFc9cTArIlZpc2liaWxpdHlTdGF0ZSI7aWYoVyBpbiBuKXJldHVybiBuW1ddfTsKdE89ZnVuY3Rpb24obixXKXt2YXIgRDtnLm9NKG4sYj0+e0Q9V1tiXTtyZXR1cm4hIUR9KTsKcmV0dXJuIER9OwokUj1mdW5jdGlvbihuKXtpZihuLnJlcXVlc3RGdWxsc2NyZWVuKW49bi5yZXF1ZXN0RnVsbHNjcmVlbih2b2lkIDApO2Vsc2UgaWYobi53ZWJraXRSZXF1ZXN0RnVsbHNjcmVlbiluPW4ud2Via2l0UmVxdWVzdEZ1bGxzY3JlZW4oKTtlbHNlIGlmKG4ubW96UmVxdWVzdEZ1bGxTY3JlZW4pbj1uLm1velJlcXVlc3RGdWxsU2NyZWVuKCk7ZWxzZSBpZihuLm1zUmVxdWVzdEZ1bGxzY3JlZW4pbj1uLm1zUmVxdWVzdEZ1bGxzY3JlZW4oKTtlbHNlIGlmKG4ud2Via2l0RW50ZXJGdWxsc2NyZWVuKW49bi53ZWJraXRFbnRlckZ1bGxzY3JlZW4oKTtlbHNlIHJldHVybiBQcm9taXNlLnJlamVjdChFcnJvcigiRnVsbHNjcmVlbiBBUEkgdW5hdmFpbGFibGUiKSk7cmV0dXJuIG4gaW5zdGFuY2VvZiBQcm9taXNlP246UHJvbWlzZS5yZXNvbHZlKCl9OwpOMD1mdW5jdGlvbihuKXt2YXIgVztnLnJKKCk/c1AoKT09biYmKFc9ZG9jdW1lbnQpOlc9bjtyZXR1cm4gVyYmKG49dE8oWyJleGl0RnVsbHNjcmVlbiIsIndlYmtpdEV4aXRGdWxsc2NyZWVuIiwibW96Q2FuY2VsRnVsbFNjcmVlbiIsIm1zRXhpdEZ1bGxzY3JlZW4iXSxXKSk/KFc9bi5jYWxsKFcpLFcgaW5zdGFuY2VvZiBQcm9taXNlP1c6UHJvbWlzZS5yZXNvbHZlKCkpOlByb21pc2UucmVzb2x2ZSgpfTsKdlUxPWZ1bmN0aW9uKG4pe3JldHVybiBnLmxfKFsiZnVsbHNjcmVlbmNoYW5nZSIsIndlYmtpdGZ1bGxzY3JlZW5jaGFuZ2UiLCJtb3pmdWxsc2NyZWVuY2hhbmdlIiwiTVNGdWxsc2NyZWVuQ2hhbmdlIl0sVz0+YG9uJHtXLnRvTG93ZXJDYXNlKCl9YGluIG4pfTsKZy5ySj1mdW5jdGlvbigpe3JldHVybiEhdE8oWyJmdWxsc2NyZWVuRW5hYmxlZCIsIndlYmtpdEZ1bGxzY3JlZW5FbmFibGVkIiwibW96RnVsbFNjcmVlbkVuYWJsZWQiLCJtc0Z1bGxzY3JlZW5FbmFibGVkIl0sZG9jdW1lbnQpfTsKc1A9ZnVuY3Rpb24obj0hMSl7dmFyIFc9dE8oWyJmdWxsc2NyZWVuRWxlbWVudCIsIndlYmtpdEZ1bGxzY3JlZW5FbGVtZW50IiwibW96RnVsbFNjcmVlbkVsZW1lbnQiLCJtc0Z1bGxzY3JlZW5FbGVtZW50Il0sZG9jdW1lbnQpO2lmKG4pZm9yKDtXJiZXLnNoYWRvd1Jvb3Q7KVc9Vy5zaGFkb3dSb290LmZ1bGxzY3JlZW5FbGVtZW50O3JldHVybiBXP1c6bnVsbH07CnB5PWZ1bmN0aW9uKG4pe2lmKGRvY3VtZW50LmJvZHkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl7bGV0IFc9ZG9jdW1lbnQuYm9keS5zY3JvbGxUb3ArZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcDtuLk49bi5jbGllbnRYKyhkb2N1bWVudC5ib2R5LnNjcm9sbExlZnQrZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQpO24uSj1uLmNsaWVudFkrV319OwprOWk9ZnVuY3Rpb24obixXLEQsYj17fSl7bi5hZGRFdmVudExpc3RlbmVyJiYoVyE9Im1vdXNlZW50ZXIifHwib25tb3VzZWVudGVyImluIGRvY3VtZW50P1chPSJtb3VzZWxlYXZlInx8Im9ubW91c2VlbnRlciJpbiBkb2N1bWVudD9XPT0ibW91c2V3aGVlbCImJiJNb3pCb3hTaXppbmciaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlJiYoVz0iTW96TW91c2VQaXhlbFNjcm9sbCIpOlc9Im1vdXNlb3V0IjpXPSJtb3VzZW92ZXIiKTtyZXR1cm4gZy5YTChnLllSLHY9Pnt2YXIgaz10eXBlb2Ygdls0XT09PSJib29sZWFuIiYmdls0XT09ISFiLGg9Zy5mdCh2WzRdKSYmZy5mdChiKSYmZy5ybSh2WzRdLGIpO3JldHVybiEhdi5sZW5ndGgmJnZbMF09PW4mJnZbMV09PVcmJnZbMl09PUQmJihrfHxoKX0pfTsKZy5JOT1mdW5jdGlvbihuLFcsRCxiPXt9KXtpZighbnx8IW4uYWRkRXZlbnRMaXN0ZW5lciYmIW4uYXR0YWNoRXZlbnQpcmV0dXJuIiI7dmFyIHY9azlpKG4sVyxELGIpO2lmKHYpcmV0dXJuIHY7dj0rK0hCLmNvdW50KyIiO3ZhciBrPSEoVyE9Im1vdXNlZW50ZXIiJiZXIT0ibW91c2VsZWF2ZSJ8fCFuLmFkZEV2ZW50TGlzdGVuZXJ8fCJvbm1vdXNlZW50ZXIiaW4gZG9jdW1lbnQpO3ZhciBoPWs/eD0+e3g9bmV3IGZ5KHgpO2lmKCFnLlJoKHgucmVsYXRlZFRhcmdldCxMPT5MPT1uLCEwKSlyZXR1cm4geC5jdXJyZW50VGFyZ2V0PW4seC50eXBlPVcsRC5jYWxsKG4seCl9Ong9Pnt4PW5ldyBmeSh4KTsKeC5jdXJyZW50VGFyZ2V0PW47cmV0dXJuIEQuY2FsbChuLHgpfTsKaD1QVihoKTtuLmFkZEV2ZW50TGlzdGVuZXI/KFc9PSJtb3VzZWVudGVyIiYmaz9XPSJtb3VzZW92ZXIiOlc9PSJtb3VzZWxlYXZlIiYmaz9XPSJtb3VzZW91dCI6Vz09Im1vdXNld2hlZWwiJiYiTW96Qm94U2l6aW5nImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZSYmKFc9Ik1vek1vdXNlUGl4ZWxTY3JvbGwiKSxKTygpfHx0eXBlb2YgYj09PSJib29sZWFuIj9uLmFkZEV2ZW50TGlzdGVuZXIoVyxoLGIpOm4uYWRkRXZlbnRMaXN0ZW5lcihXLGgsISFiLmNhcHR1cmUpKTpuLmF0dGFjaEV2ZW50KGBvbiR7V31gLGgpO2cuWVJbdl09W24sVyxELGgsYl07cmV0dXJuIHZ9OwpnLlNfPWZ1bmN0aW9uKG4pe24mJih0eXBlb2Ygbj09InN0cmluZyImJihuPVtuXSksZy55MihuLFc9PntpZihXIGluIGcuWVIpe3ZhciBEPWcuWVJbV107bGV0IGI9RFswXSx2PURbMV0saz1EWzNdO0Q9RFs0XTtiLnJlbW92ZUV2ZW50TGlzdGVuZXI/Sk8oKXx8dHlwZW9mIEQ9PT0iYm9vbGVhbiI/Yi5yZW1vdmVFdmVudExpc3RlbmVyKHYsayxEKTpiLnJlbW92ZUV2ZW50TGlzdGVuZXIodixrLCEhRC5jYXB0dXJlKTpiLmRldGFjaEV2ZW50JiZiLmRldGFjaEV2ZW50KGBvbiR7dn1gLGspO2RlbGV0ZSBnLllSW1ddfX0pKX07CkFPPWZ1bmN0aW9uKG4pe249bnx8d2luZG93LmV2ZW50O3ZhciBXO24uY29tcG9zZWRQYXRoJiZ0eXBlb2Ygbi5jb21wb3NlZFBhdGg9PT0iZnVuY3Rpb24iP1c9bi5jb21wb3NlZFBhdGgoKTpXPW4ucGF0aDtXJiZXLmxlbmd0aD9uPVdbMF06KG49bnx8d2luZG93LmV2ZW50LG49bi50YXJnZXR8fG4uc3JjRWxlbWVudCxuLm5vZGVUeXBlPT0zJiYobj1uLnBhcmVudE5vZGUpKTtyZXR1cm4gbn07Cm1ZPWZ1bmN0aW9uKG4pe3RoaXMuSz1uO3RoaXMuTj1udWxsO3RoaXMuWD0wO3RoaXMuVj1udWxsO3RoaXMuaj0wO3RoaXMuSj1bXTtmb3Iobj0wO248NDtuKyspdGhpcy5KLnB1c2goMCk7dGhpcy5XPTA7dGhpcy5jSj1nLkk5KHdpbmRvdywibW91c2Vtb3ZlIiwoMCxnLkt0KSh0aGlzLkQsdGhpcykpO3RoaXMuWT1XMCgoMCxnLkt0KSh0aGlzLk8sdGhpcyksMjUpfTsKS3k9ZnVuY3Rpb24obixXLEQsYil7Zm9yKGxldCB2PTA7djxELmxlbmd0aDt2Kyspbi5OTihXLERbdl0sYil9OwpnLlBCPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1EJiZEPjA/RDowO0Q9Yj9EYXRlLm5vdygpK2IqMUUzOjA7aWYoKGI9Yj9PUC5CcCgpOk9QLnFiKCkpJiZ3aW5kb3cuSlNPTil7dHlwZW9mIFchPT0ic3RyaW5nIiYmKFc9SlNPTi5zdHJpbmdpZnkoVyx2b2lkIDApKTt0cnl7Yi5zZXQobixXLEQpfWNhdGNoKHYpe2IucmVtb3ZlKG4pfX19OwpnLlpJPWZ1bmN0aW9uKG4pe3ZhciBXPU9QLnFiKCksRD1PUC5CcCgpO2lmKCFXJiYhRHx8IXdpbmRvdy5KU09OKXJldHVybiBudWxsO3RyeXt2YXIgYj1XLmdldChuKX1jYXRjaCh2KXt9aWYodHlwZW9mIGIhPT0ic3RyaW5nIil0cnl7Yj1ELmdldChuKX1jYXRjaCh2KXt9aWYodHlwZW9mIGIhPT0ic3RyaW5nIilyZXR1cm4gbnVsbDt0cnl7Yj1KU09OLnBhcnNlKGIsdm9pZCAwKX1jYXRjaCh2KXt9cmV0dXJuIGJ9OwpVUD1mdW5jdGlvbigpe3ZhciBuPU9QLkJwKCk7aWYobiYmKG49bi5NRCgieXQtcGxheWVyLXF1YWxpdHkiKSkpcmV0dXJuIG4uY3JlYXRpb259Owp5eD1mdW5jdGlvbigpe2lmKCFnLnFpLm1hdGNoTWVkaWEpcmV0dXJuIldFQl9ESVNQTEFZX01PREVfVU5LTk9XTiI7dHJ5e3JldHVybiBnLnFpLm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IHN0YW5kYWxvbmUpIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9TVEFOREFMT05FIjpnLnFpLm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IG1pbmltYWwtdWkpIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9NSU5JTUFMX1VJIjpnLnFpLm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IGZ1bGxzY3JlZW4pIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9GVUxMU0NSRUVOIjpnLnFpLm1hdGNoTWVkaWEoIihkaXNwbGF5LW1vZGU6IGJyb3dzZXIpIikubWF0Y2hlcz8iV0VCX0RJU1BMQVlfTU9ERV9CUk9XU0VSIjoiV0VCX0RJU1BMQVlfTU9ERV9VTktOT1dOIn1jYXRjaChuKXtyZXR1cm4iV0VCX0RJU1BMQVlfTU9ERV9VTktOT1dOIn19OwppTz1mdW5jdGlvbigpe0VQLmluc3RhbmNlfHwoRVAuaW5zdGFuY2U9bmV3IEVQKTtyZXR1cm4gRVAuaW5zdGFuY2V9OwpocWg9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgIkRFU0tUT1AiOnJldHVybiAxO2Nhc2UgIlVOS05PV05fUExBVEZPUk0iOnJldHVybiAwO2Nhc2UgIlRWIjpyZXR1cm4gMjtjYXNlICJHQU1FX0NPTlNPTEUiOnJldHVybiAzO2Nhc2UgIk1PQklMRSI6cmV0dXJuIDQ7Y2FzZSAiVEFCTEVUIjpyZXR1cm4gNX19OwpnLm85PWZ1bmN0aW9uKCl7dU98fCh1Tz1uZXcgeDNiKTtyZXR1cm4gdU99OwpkSj1mdW5jdGlvbihuKXtpZigvXmYoWzEtOV1bMC05XSopJC8udGVzdChuKSl0aHJvdyBFcnJvcihgRXhwZWN0ZWRSZWdleE1hdGNoOiAke259YCk7fTsKejE9ZnVuY3Rpb24obil7aWYoIS9eXHcrJC8udGVzdChuKSl0aHJvdyBFcnJvcihgRXhwZWN0ZWRSZWdleE1pc21hdGNoOiAke259YCk7fTsKVDE9ZnVuY3Rpb24obil7bj1sT1tuXSE9PXZvaWQgMD9sT1tuXS50b1N0cmluZygpOm51bGw7cmV0dXJuIG4hPW51bGwmJi9eW0EtRmEtZjAtOV0rJC8udGVzdChuKT9wYXJzZUludChuLDE2KTpudWxsfTsKal89ZnVuY3Rpb24oKXt2YXIgbj1nLnFpLm5hdmlnYXRvcjtyZXR1cm4gbj9uLmNvbm5lY3Rpb246dm9pZCAwfTsKQkI9ZnVuY3Rpb24oKXt2YXIgbj1qXygpO2lmKG4pe3ZhciBXPUN5W24udHlwZXx8InVua25vd24iXXx8IkNPTk5fVU5LTk9XTiI7bj1DeVtuLmVmZmVjdGl2ZVR5cGV8fCJ1bmtub3duIl18fCJDT05OX1VOS05PV04iO1c9PT0iQ09OTl9DRUxMVUxBUl9VTktOT1dOIiYmbiE9PSJDT05OX1VOS05PV04iJiYoVz1uKTtpZihXIT09IkNPTk5fVU5LTk9XTiIpcmV0dXJuIFc7aWYobiE9PSJDT05OX1VOS05PV04iKXJldHVybiBufX07CndKPWZ1bmN0aW9uKCl7dmFyIG49al8oKTtpZihuPy5lZmZlY3RpdmVUeXBlKXJldHVybiBGay5oYXNPd25Qcm9wZXJ0eShuLmVmZmVjdGl2ZVR5cGUpP0ZrW24uZWZmZWN0aXZlVHlwZV06IkVGRkVDVElWRV9DT05ORUNUSU9OX1RZUEVfVU5LTk9XTiJ9OwpSOT1mdW5jdGlvbigpe3RyeXtyZXR1cm4gTTAoKSwhMH1jYXRjaChuKXtyZXR1cm4hMX19OwpNMD1mdW5jdGlvbigpe2lmKGcuQXIoIkRBVEFTWU5DX0lEIikhPT12b2lkIDApcmV0dXJuIGcuQXIoIkRBVEFTWU5DX0lEIik7dGhyb3cgbmV3IGcuUXgoIkRhdGFzeW5jIElEIG5vdCBzZXQiLCJ1bmtub3duIik7fTsKZy5jQj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIGcuVngoMCxXLDAsRCl9OwphOT1mdW5jdGlvbihuKXt2YXIgVz1nLnJyKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuYWRkSW1tZWRpYXRlSm9iIik7Vz9XKG4pOm4oKX07CmcuRHk9ZnVuY3Rpb24oKXtXTi5pbnN0YW5jZXx8KFdOLmluc3RhbmNlPW5ldyBXTik7cmV0dXJuIFdOLmluc3RhbmNlfTsKZy5WeD1mdW5jdGlvbihuLFcsRCxiKXtiIT09dm9pZCAwJiZOdW1iZXIuaXNOYU4oTnVtYmVyKGIpKSYmKGI9dm9pZCAwKTtyZXR1cm4obj1nLnJyKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuYWRkSm9iIikpP24oVyxELGIpOmI9PT12b2lkIDA/KFcoKSxOYU4pOmcubiQoVyxifHwwKX07CmJRPWZ1bmN0aW9uKG4pe3ZhciBXPWcucnIoInl0LnNjaGVkdWxlci5pbnN0YW5jZS5zZXRQcmlvcml0eVRocmVzaG9sZCIpO1cmJlcobil9OwprdT1mdW5jdGlvbigpe3JldHVybiB2TigpPy5nZXQoIkxBU1RfUkVTVUxUX0VOVFJZX0tFWSIsITApfTsKTEY9ZnVuY3Rpb24obil7aGN8fCh4dS5wdXNoKHt0eXBlOiJFUlJPUiIscGF5bG9hZDpufSkseHUubGVuZ3RoPjEwJiZ4dS5zaGlmdCgpKX07CmVGPWZ1bmN0aW9uKG4sVyl7aGN8fCh4dS5wdXNoKHt0eXBlOiJFVkVOVCIsZXZlbnRUeXBlOm4scGF5bG9hZDpXfSkseHUubGVuZ3RoPjEwJiZ4dS5zaGlmdCgpKX07CmcwPWZ1bmN0aW9uKG4pe2lmKG4uaW5kZXhPZigiOiIpPj0wKXRocm93IEVycm9yKCJEYXRhYmFzZSBuYW1lIGNhbm5vdCBjb250YWluICc6JyIpO307ClhxPWZ1bmN0aW9uKG4pe3JldHVybiBuLnN1YnN0cigwLG4uaW5kZXhPZigiOiIpKXx8bn07CiR1PWZ1bmN0aW9uKG4sVyxELGIpe1c9WHEoVyk7dmFyIHY9biBpbnN0YW5jZW9mIEVycm9yP246RXJyb3IoYFVuZXhwZWN0ZWQgZXJyb3I6ICR7bn1gKTtpZih2IGluc3RhbmNlb2YgcUwpcmV0dXJuIHY7bj17b2JqZWN0U3RvcmVOYW1lczpELGRiTmFtZTpXLGRiVmVyc2lvbjpifTtpZih2Lm5hbWU9PT0iUXVvdGFFeGNlZWRlZEVycm9yIilyZXR1cm4gbmV3IHFMKCJRVU9UQV9FWENFRURFRCIsbik7aWYoZy5HbiYmdi5uYW1lPT09IlVua25vd25FcnJvciIpcmV0dXJuIG5ldyBxTCgiUVVPVEFfTUFZQkVfRVhDRUVERUQiLG4pO2lmKHYgaW5zdGFuY2VvZiB0YylyZXR1cm4gbmV3IHFMKCJNSVNTSU5HX0lOREVYIix7Li4ubixvYmplY3RTdG9yZTp2Lm9iamVjdFN0b3JlLGluZGV4OnYuaW5kZXh9KTtpZih2Lm5hbWU9PT0iSW52YWxpZFN0YXRlRXJyb3IiJiZMMGkuc29tZShrPT52Lm1lc3NhZ2UuaW5jbHVkZXMoaykpKXJldHVybiBuZXcgcUwoIkVYRUNVVEVfVFJBTlNBQ1RJT05fT05fQ0xPU0VEX0RCIiwKbik7CmlmKHYubmFtZT09PSJBYm9ydEVycm9yIilyZXR1cm4gbmV3IHFMKCJVTktOT1dOX0FCT1JUIixuLHYubWVzc2FnZSk7di5hcmdzPVt7Li4ubixuYW1lOiJJZGJFcnJvciIsYTc6di5uYW1lfV07di5sZXZlbD0iV0FSTklORyI7cmV0dXJuIHZ9OwpnLnIwPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1rdSgpO3JldHVybiBuZXcgcUwoIklEQl9OT1RfU1VQUE9SVEVEIix7Y29udGV4dDp7Y2FsbGVyOm4scHVibGljTmFtZTpXLHZlcnNpb246RCxoYXNTdWNjZWVkZWRPbmNlOmI/Lmhhc1N1Y2NlZWRlZE9uY2V9fSl9OwplcTE9ZnVuY3Rpb24obil7aWYoIW4pdGhyb3cgRXJyb3IoKTt0aHJvdyBuO307CmdVcj1mdW5jdGlvbihuKXtyZXR1cm4gbn07CnBGPWZ1bmN0aW9uKG4sVyxELGIsdil7dHJ5e2lmKG4uc3RhdGUuc3RhdHVzIT09IkZVTEZJTExFRCIpdGhyb3cgRXJyb3IoImNhbGxpbmcgaGFuZGxlUmVzb2x2ZSBiZWZvcmUgdGhlIHByb21pc2UgaXMgZnVsZmlsbGVkLiIpO2xldCBrPUQobi5zdGF0ZS52YWx1ZSk7ayBpbnN0YW5jZW9mIHNSP05MKG4sVyxrLGIsdik6YihrKX1jYXRjaChrKXt2KGspfX07Cll1PWZ1bmN0aW9uKG4sVyxELGIsdil7dHJ5e2lmKG4uc3RhdGUuc3RhdHVzIT09IlJFSkVDVEVEIil0aHJvdyBFcnJvcigiY2FsbGluZyBoYW5kbGVSZWplY3QgYmVmb3JlIHRoZSBwcm9taXNlIGlzIHJlamVjdGVkLiIpO2xldCBrPUQobi5zdGF0ZS5yZWFzb24pO2sgaW5zdGFuY2VvZiBzUj9OTChuLFcsayxiLHYpOmIoayl9Y2F0Y2goayl7dihrKX19OwpOTD1mdW5jdGlvbihuLFcsRCxiLHYpe1c9PT1EP3YobmV3IFR5cGVFcnJvcigiQ2lyY3VsYXIgcHJvbWlzZSBjaGFpbiBkZXRlY3RlZC4iKSk6RC50aGVuKGs9PntrIGluc3RhbmNlb2Ygc1I/TkwobixXLGssYix2KTpiKGspfSxrPT57dihrKX0pfTsKSE49ZnVuY3Rpb24obixXLEQpe3ZhciBiPSgpPT57dHJ5e24ucmVtb3ZlRXZlbnRMaXN0ZW5lcigic3VjY2VzcyIsdiksbi5yZW1vdmVFdmVudExpc3RlbmVyKCJlcnJvciIsayl9Y2F0Y2h7fX0sdj0oKT0+e1cobi5yZXN1bHQpOwpiKCl9LGs9KCk9PntEKG4uZXJyb3IpOwpiKCl9OwpuLmFkZEV2ZW50TGlzdGVuZXIoInN1Y2Nlc3MiLHYpO24uYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGspfTsKWDlVPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgUHJvbWlzZSgoVyxEKT0+e0hOKG4sVyxEKX0pfTsKSmM9ZnVuY3Rpb24obil7cmV0dXJuIG5ldyBzUihuZXcgZkYoKFcsRCk9PntITihuLFcsRCl9KSl9OwpJZz1mdW5jdGlvbihuLFcpe3JldHVybiBuZXcgc1IobmV3IGZGKChELGIpPT57dmFyIHY9KCk9Pnt2YXIgaz1uP1cobik6bnVsbDtrP2sudGhlbihoPT57bj1oO3YoKX0sYik6RCgpfTsKdigpfSkpfTsKU0Y9ZnVuY3Rpb24obil7cmV0dXJuIEpjKG4pLnRoZW4oVz0+Vz9uZXcgcV8yKG4sVyk6bnVsbCl9OwpBYz1mdW5jdGlvbigpe3JldHVybiBnLmwoImlkYl9pbW1lZGlhdGVfY29tbWl0Iil9OwpPUj1hc3luYyBmdW5jdGlvbihuLFcsRCxiKXt2YXIgdj17bW9kZToicmVhZG9ubHkiLEdROiExLHRhZzoiSURCX1RSQU5TQUNUSU9OX1RBR19VTktOT1dOIn07dHlwZW9mIEQ9PT0ic3RyaW5nIj92Lm1vZGU9RDpPYmplY3QuYXNzaWduKHYsRCk7bi50cmFuc2FjdGlvbkNvdW50Kys7RD12LkdRPzM6MTtmb3IodmFyIGs9MCxoOyFoOyl7aysrO2xldCBHPU1hdGgucm91bmQoKDAsZy5SKSgpKTt0cnl7dmFyIHg9bi5OLnRyYW5zYWN0aW9uKFcsdi5tb2RlKSxMPWIsZT0hIXYuY29tbWl0O2xldCByPW5ldyBtWCh4KSxOPWF3YWl0IEc5dyhyLEwsZSksSD1NYXRoLnJvdW5kKCgwLGcuUikoKSk7S0YobixHLEgsayx2b2lkIDAsVy5qb2luKCksdik7cmV0dXJuIE59Y2F0Y2gocil7TD1NYXRoLnJvdW5kKCgwLGcuUikoKSk7bGV0IE49JHUocixuLk4ubmFtZSxXLmpvaW4oKSxuLk4udmVyc2lvbik7aWYoTiBpbnN0YW5jZW9mIHFMJiYhTi5OfHxrPj1EKUtGKG4sRyxMLGssTixXLmpvaW4oKSwKdiksaD1OfX1yZXR1cm4gUHJvbWlzZS5yZWplY3QoaCl9OwpaeT1mdW5jdGlvbihuLFcsRCl7bj1uLk4uY3JlYXRlT2JqZWN0U3RvcmUoVyxEKTtyZXR1cm4gbmV3IFBOKG4pfTsKVVI9ZnVuY3Rpb24obixXKXtuLk4ub2JqZWN0U3RvcmVOYW1lcy5jb250YWlucyhXKSYmbi5OLmRlbGV0ZU9iamVjdFN0b3JlKFcpfTsKS0Y9ZnVuY3Rpb24obixXLEQsYix2LGssaCl7Vz1ELVc7dj8odiBpbnN0YW5jZW9mIHFMJiYodi50eXBlPT09IlFVT1RBX0VYQ0VFREVEInx8di50eXBlPT09IlFVT1RBX01BWUJFX0VYQ0VFREVEIikmJmVGKCJRVU9UQV9FWENFRURFRCIse2RiTmFtZTpYcShuLk4ubmFtZSksb2JqZWN0U3RvcmVOYW1lczprLHRyYW5zYWN0aW9uQ291bnQ6bi50cmFuc2FjdGlvbkNvdW50LHRyYW5zYWN0aW9uTW9kZTpoLm1vZGV9KSx2IGluc3RhbmNlb2YgcUwmJnYudHlwZT09PSJVTktOT1dOX0FCT1JUIiYmKEQtPW4uVyxEPDAmJkQ+PTIxNDc0ODM2NDgmJihEPTApLGVGKCJUUkFOU0FDVElPTl9VTkVYUEVDVEVETFlfQUJPUlRFRCIse29iamVjdFN0b3JlTmFtZXM6ayx0cmFuc2FjdGlvbkR1cmF0aW9uOlcsdHJhbnNhY3Rpb25Db3VudDpuLnRyYW5zYWN0aW9uQ291bnQsZGJEdXJhdGlvbjpEfSksbi5KPSEwKSx5YyhuLCExLGIsayxXLGgudGFnKSxMRih2KSk6eWMobiwhMCxiLGssVyxoLnRhZyl9Owp5Yz1mdW5jdGlvbihuLFcsRCxiLHYsaz0iSURCX1RSQU5TQUNUSU9OX1RBR19VTktOT1dOIil7ZUYoIlRSQU5TQUNUSU9OX0VOREVEIix7b2JqZWN0U3RvcmVOYW1lczpiLGNvbm5lY3Rpb25IYXNVbmtub3duQWJvcnRlZFRyYW5zYWN0aW9uOm4uSixkdXJhdGlvbjp2LGlzU3VjY2Vzc2Z1bDpXLHRyeUNvdW50OkQsdGFnOmt9KX07CkVSPWZ1bmN0aW9uKG4sVyxEKXtuLk4uY3JlYXRlSW5kZXgoVyxELHt1bmlxdWU6ITF9KX07CnVRPWZ1bmN0aW9uKG4sVyxEKXtuPW4uTi5vcGVuQ3Vyc29yKFcucXVlcnksVy5kaXJlY3Rpb24pO3JldHVybiBpUShuKS50aGVuKGI9PklnKGIsRCkpfTsKdFhVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIHVRKG4se3F1ZXJ5Old9LEQ9PkQuZGVsZXRlKCkudGhlbigoKT0+b2coRCkpKS50aGVuKCgpPT57fSl9OwokM3g9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVtdO3JldHVybiB1UShuLHtxdWVyeTpXfSx2PT57aWYoIShEIT09dm9pZCAwJiZiLmxlbmd0aD49RCkpcmV0dXJuIGIucHVzaCh2LmdldFZhbHVlKCkpLG9nKHYpfSkudGhlbigoKT0+Yil9OwpzMHI9ZnVuY3Rpb24obil7dmFyIFc9W107cmV0dXJuIHJfaihuLEQ9PntXLnB1c2goRC5jdXJzb3IucHJpbWFyeUtleSk7RC5jdXJzb3IuY29udGludWUodm9pZCAwKTtyZXR1cm4gU0YoRC5yZXF1ZXN0KX0pLnRoZW4oKCk9PlcpfTsKZDA9ZnVuY3Rpb24obil7cmV0dXJuImdldEFsbEtleXMiaW4gSURCT2JqZWN0U3RvcmUucHJvdG90eXBlP0pjKG4uTi5nZXRBbGxLZXlzKHZvaWQgMCx2b2lkIDApKTpzMHIobil9OwpyX2o9ZnVuY3Rpb24obixXKXt2YXIgRD17cXVlcnk6dm9pZCAwfSxiPUQucXVlcnk7RD1ELmRpcmVjdGlvbjtuPSJvcGVuS2V5Q3Vyc29yImluIElEQk9iamVjdFN0b3JlLnByb3RvdHlwZT9uLk4ub3BlbktleUN1cnNvcihiLEQpOm4uTi5vcGVuQ3Vyc29yKGIsRCk7cmV0dXJuIFNGKG4pLnRoZW4odj0+SWcodixXKSl9OwpHOXc9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW5ldyBQcm9taXNlKCh2LGspPT57dHJ5e2xldCBoPVcobik7RCYmbi5jb21taXQoKTtoLnRoZW4oeD0+e3YoeCl9KS5jYXRjaChrKX1jYXRjaChoKXtrKGgpLG4uYWJvcnQoKX19KTsKcmV0dXJuIFByb21pc2UuYWxsKFtiLG4uZG9uZV0pLnRoZW4oKFt2XSk9PnYpfTsKem49ZnVuY3Rpb24obixXLEQpe3ZhciB7cXVlcnk6Yj1udWxsLGRpcmVjdGlvbjp2PSJuZXh0In09VztuPW4uTi5vcGVuQ3Vyc29yKGIsdik7cmV0dXJuIGlRKG4pLnRoZW4oaz0+SWcoayxEKSl9OwpOWmk9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVtdO3JldHVybiB6bihuLHtxdWVyeTpXfSx2PT57aWYoIShEIT09dm9pZCAwJiZiLmxlbmd0aD49RCkpcmV0dXJuIGIucHVzaCh2LmdldFZhbHVlKCkpLG9nKHYpfSkudGhlbigoKT0+Yil9OwppUT1mdW5jdGlvbihuKXtyZXR1cm4gSmMobikudGhlbihXPT5XP25ldyBwOXgobixXKTpudWxsKX07Cm9nPWZ1bmN0aW9uKG4pe24uY3Vyc29yLmNvbnRpbnVlKHZvaWQgMCk7cmV0dXJuIGlRKG4ucmVxdWVzdCl9OwpINXg9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuZXcgUHJvbWlzZSgoYix2KT0+e3ZhciBrPVchPT12b2lkIDA/c2VsZi5pbmRleGVkREIub3BlbihuLFcpOnNlbGYuaW5kZXhlZERCLm9wZW4obik7dmFyIGg9RC5ibG9ja2VkLHg9RC5ibG9ja2luZyxMPUQuQnosZT1ELnVwZ3JhZGUsRz1ELmNsb3NlZCxyLE49KCk9PntyfHwocj1uZXcgWV9yKGsucmVzdWx0LHtjbG9zZWQ6R30pKTtyZXR1cm4gcn07CmsuYWRkRXZlbnRMaXN0ZW5lcigidXBncmFkZW5lZWRlZCIsSD0+e3RyeXtpZihILm5ld1ZlcnNpb249PT1udWxsKXRocm93IEVycm9yKCJJbnZhcmlhbnQ6IG5ld1ZlcnNpb24gb24gSURiVmVyc2lvbkNoYW5nZUV2ZW50IGlzIG51bGwiKTtpZihrLnRyYW5zYWN0aW9uPT09bnVsbCl0aHJvdyBFcnJvcigiSW52YXJpYW50OiB0cmFuc2FjdGlvbiBvbiBJRGJPcGVuRGJSZXF1ZXN0IGlzIG51bGwiKTtILmRhdGFMb3NzJiZILmRhdGFMb3NzIT09Im5vbmUiJiZlRigiSURCX0RBVEFfQ09SUlVQVEVEIix7cmVhc29uOkguZGF0YUxvc3NNZXNzYWdlfHwidW5rbm93biByZWFzb24iLGRiTmFtZTpYcShuKX0pO2xldCBBPU4oKSx5PW5ldyBtWChrLnRyYW5zYWN0aW9uKTtlJiZlKEEsVD0+SC5vbGRWZXJzaW9uPFQmJkgubmV3VmVyc2lvbj49VCx5KTsKeS5kb25lLmNhdGNoKFQ9Pnt2KFQpfSl9Y2F0Y2goQSl7dihBKX19KTsKay5hZGRFdmVudExpc3RlbmVyKCJzdWNjZXNzIiwoKT0+e3ZhciBIPWsucmVzdWx0O3gmJkguYWRkRXZlbnRMaXN0ZW5lcigidmVyc2lvbmNoYW5nZSIsKCk9Pnt4KE4oKSl9KTsKSC5hZGRFdmVudExpc3RlbmVyKCJjbG9zZSIsKCk9PntlRigiSURCX1VORVhQRUNURURMWV9DTE9TRUQiLHtkYk5hbWU6WHEobiksZGJWZXJzaW9uOkgudmVyc2lvbn0pO0wmJkwoKX0pOwpiKE4oKSl9KTsKay5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsKCk9Pnt2KGsuZXJyb3IpfSk7CmgmJmsuYWRkRXZlbnRMaXN0ZW5lcigiYmxvY2tlZCIsKCk9PntoKCl9KX0pfTsKbFE9ZnVuY3Rpb24obixXLEQ9e30pe3JldHVybiBINXgobixXLEQpfTsKVG49YXN5bmMgZnVuY3Rpb24obixXPXt9KXt0cnl7bGV0IEQ9c2VsZi5pbmRleGVkREIuZGVsZXRlRGF0YWJhc2UobiksYj1XLmJsb2NrZWQ7YiYmRC5hZGRFdmVudExpc3RlbmVyKCJibG9ja2VkIiwoKT0+e2IoKX0pOwphd2FpdCBYOVUoRCl9Y2F0Y2goRCl7dGhyb3cgJHUoRCxuLCIiLC0xKTt9fTsKakY9ZnVuY3Rpb24obixXKXtyZXR1cm4gbmV3IHFMKCJJTkNPTVBBVElCTEVfREJfVkVSU0lPTiIse2RiTmFtZTpuLm5hbWUsb2xkVmVyc2lvbjpuLm9wdGlvbnMudmVyc2lvbixuZXdWZXJzaW9uOld9KX07CkNGPWZ1bmN0aW9uKG4sVyl7aWYoIVcpdGhyb3cgZy5yMCgib3BlbldpdGhUb2tlbiIsWHEobi5uYW1lKSk7cmV0dXJuIG4ub3BlbigpfTsKRnE9YXN5bmMgZnVuY3Rpb24obixXKXtyZXR1cm4gT1IoYXdhaXQgQ0YoQk4sVyksWyJkYXRhYmFzZXMiXSx7R1E6ITAsbW9kZToicmVhZHdyaXRlIn0sRD0+e3ZhciBiPUQub2JqZWN0U3RvcmUoImRhdGFiYXNlcyIpO3JldHVybiBiLmdldChuLmFjdHVhbE5hbWUpLnRoZW4odj0+e2lmKHY/bi5hY3R1YWxOYW1lIT09di5hY3R1YWxOYW1lfHxuLnB1YmxpY05hbWUhPT12LnB1YmxpY05hbWV8fG4udXNlcklkZW50aWZpZXIhPT12LnVzZXJJZGVudGlmaWVyOjEpcmV0dXJuIGIucHV0KG4pLnRoZW4oKCk9Pnt9KX0pfSl9Owp3MD1hc3luYyBmdW5jdGlvbihuLFcpe3JldHVybiBuPyhhd2FpdCBDRihCTixXKSkuZGVsZXRlKCJkYXRhYmFzZXMiLG4pOnZvaWQgMH07CmZCVT1hc3luYyBmdW5jdGlvbihuLFcpe3ZhciBEPVtdO1c9YXdhaXQgQ0YoQk4sVyk7YXdhaXQgT1IoVyxbImRhdGFiYXNlcyJdLHtHUTohMCxtb2RlOiJyZWFkb25seSJ9LGI9PntELmxlbmd0aD0wO3JldHVybiB1UShiLm9iamVjdFN0b3JlKCJkYXRhYmFzZXMiKSx7fSx2PT57bih2LmdldFZhbHVlKCkpJiZELnB1c2godi5nZXRWYWx1ZSgpKTtyZXR1cm4gb2codil9KX0pOwpyZXR1cm4gRH07CkpfMj1mdW5jdGlvbihuLFcpe3JldHVybiBmQlUoRD0+RC5wdWJsaWNOYW1lPT09biYmRC51c2VySWRlbnRpZmllciE9PXZvaWQgMCxXKX07CklCaT1hc3luYyBmdW5jdGlvbigpe2lmKGt1KCk/Lmhhc1N1Y2NlZWRlZE9uY2UpcmV0dXJuITA7dmFyIG47aWYoIShuPWcuTUwmJkMkKCkmJiFCMCgpfHxnLlJnKSl7dHJ5e249c2VsZjt2YXIgVz0hIShuLmluZGV4ZWREQiYmbi5JREJJbmRleCYmbi5JREJLZXlSYW5nZSYmbi5JREJPYmplY3RTdG9yZSl9Y2F0Y2goRCl7Vz0hMX1uPSFXfWlmKG58fCEoIklEQlRyYW5zYWN0aW9uImluIHNlbGYmJiJvYmplY3RTdG9yZU5hbWVzImluIElEQlRyYW5zYWN0aW9uLnByb3RvdHlwZSkpcmV0dXJuITE7dHJ5e3JldHVybiBhd2FpdCBGcSh7YWN0dWFsTmFtZToieXQtaWRiLXRlc3QtZG8tbm90LXVzZSIscHVibGljTmFtZToieXQtaWRiLXRlc3QtZG8tbm90LXVzZSIsdXNlcklkZW50aWZpZXI6dm9pZCAwfSxRYyksYXdhaXQgdzAoInl0LWlkYi10ZXN0LWRvLW5vdC11c2UiLFFjKSwhMH1jYXRjaChEKXtyZXR1cm4hMX19OwpjTj1mdW5jdGlvbigpe2lmKFZjIT09dm9pZCAwKXJldHVybiBWYztoYz0hMDtyZXR1cm4gVmM9SUJpKCkudGhlbihuPT57aGM9ITE7aWYodk4oKT8uSigpKXt2YXIgVz17aGFzU3VjY2VlZGVkT25jZTprdSgpPy5oYXNTdWNjZWVkZWRPbmNlfHxufTt2TigpPy5zZXQoIkxBU1RfUkVTVUxUX0VOVFJZX0tFWSIsVywyNTkyRTMsITApfXJldHVybiBufSl9OwphZz1mdW5jdGlvbigpe3JldHVybiBnLnJyKCJ5dGdsb2JhbC5pZGJUb2tlbl8iKXx8dm9pZCAwfTsKZy5uUD1mdW5jdGlvbigpe3ZhciBuPWFnKCk7cmV0dXJuIG4/UHJvbWlzZS5yZXNvbHZlKG4pOmNOKCkudGhlbihXPT57Vz8oZy5HYigieXRnbG9iYWwuaWRiVG9rZW5fIixRYyksVz1RYyk6Vz12b2lkIDA7cmV0dXJuIFd9KX07Cld6PWZ1bmN0aW9uKG4pe2lmKCFSOSgpKXRocm93IG49bmV3IHFMKCJBVVRIX0lOVkFMSUQiLHtkYk5hbWU6bn0pLExGKG4pLG47dmFyIFc9TTAoKTtyZXR1cm57YWN0dWFsTmFtZTpgJHtufToke1d9YCxwdWJsaWNOYW1lOm4sdXNlcklkZW50aWZpZXI6V319OwpEbT1hc3luYyBmdW5jdGlvbihuLFcsRCxiKXt2YXIgdj1FcnJvcigpLnN0YWNrPz8iIixrPWF3YWl0IGcublAoKTtpZighayl0aHJvdyBXPWcucjAoIm9wZW5EYkltcGwiLG4sVyksZy5sKCJ5dGlkYl9hc3luY19zdGFja19raWxsc3dpdGNoIil8fChXLnN0YWNrPWAke1cuc3RhY2t9XG4ke3Yuc3Vic3RyaW5nKHYuaW5kZXhPZigiXG4iKSsxKX1gKSxMRihXKSxXO2cwKG4pO3Y9RD97YWN0dWFsTmFtZTpuLHB1YmxpY05hbWU6bix1c2VySWRlbnRpZmllcjp2b2lkIDB9Old6KG4pO3RyeXtyZXR1cm4gYXdhaXQgRnEodixrKSxhd2FpdCBsUSh2LmFjdHVhbE5hbWUsVyxiKX1jYXRjaChoKXt0cnl7YXdhaXQgdzAodi5hY3R1YWxOYW1lLGspfWNhdGNoe310aHJvdyBoO319OwpTX1o9ZnVuY3Rpb24obixXLEQ9e30pe3JldHVybiBEbShuLFcsITEsRCl9OwpBX3I9ZnVuY3Rpb24obixXLEQ9e30pe3JldHVybiBEbShuLFcsITAsRCl9OwptM3c9YXN5bmMgZnVuY3Rpb24obixXPXt9KXt2YXIgRD1hd2FpdCBnLm5QKCk7RCYmKGcwKG4pLG49V3oobiksYXdhaXQgVG4obi5hY3R1YWxOYW1lLFcpLGF3YWl0IHcwKG4uYWN0dWFsTmFtZSxEKSl9OwpLMHI9ZnVuY3Rpb24obixXLEQpe249bi5tYXAoYXN5bmMgYj0+e2F3YWl0IFRuKGIuYWN0dWFsTmFtZSxXKTthd2FpdCB3MChiLmFjdHVhbE5hbWUsRCl9KTsKcmV0dXJuIFByb21pc2UuYWxsKG4pLnRoZW4oKCk9Pnt9KX07CmI5PWFzeW5jIGZ1bmN0aW9uKG4pe3ZhciBXPXt9LEQ9YXdhaXQgZy5uUCgpO0QmJihnMChuKSxuPWF3YWl0IEpfMihuLEQpLGF3YWl0IEswcihuLFcsRCkpfTsKdno9YXN5bmMgZnVuY3Rpb24obixXPXt9KXt2YXIgRD1hd2FpdCBnLm5QKCk7RCYmKGcwKG4pLGF3YWl0IFRuKG4sVyksYXdhaXQgdzAobixEKSl9OwpQNE09ZnVuY3Rpb24obixXKXt2YXIgRDtyZXR1cm4oKT0+e0R8fChEPW5ldyBPNXQobixXKSk7cmV0dXJuIER9fTsKa089ZnVuY3Rpb24obixXKXtyZXR1cm4gUDRNKG4sVyl9OwpoNz1mdW5jdGlvbihuKXtyZXR1cm4gQ0YoWjVDKCksbil9Owp4Tz1hc3luYyBmdW5jdGlvbihuLFcsRCxiKXtuPXtjb25maWc6bixoYXNoRGF0YTpXLHRpbWVzdGFtcDpiIT09dm9pZCAwP2I6KDAsZy5SKSgpfTtEPWF3YWl0IGg3KEQpO2F3YWl0IEQuY2xlYXIoImhvdENvbmZpZ1N0b3JlIik7cmV0dXJuIGF3YWl0IEQucHV0KCJob3RDb25maWdTdG9yZSIsbil9OwpMUD1hc3luYyBmdW5jdGlvbihuLFcsRCxiLHYpe249e2NvbmZpZzpuLGhhc2hEYXRhOlcsY29uZmlnRGF0YTpELHRpbWVzdGFtcDp2IT09dm9pZCAwP3Y6KDAsZy5SKSgpfTtiPWF3YWl0IGg3KGIpO2F3YWl0IGIuY2xlYXIoImNvbGRDb25maWdTdG9yZSIpO3JldHVybiBhd2FpdCBiLnB1dCgiY29sZENvbmZpZ1N0b3JlIixuKX07CmU5PWFzeW5jIGZ1bmN0aW9uKG4pe249YXdhaXQgaDcobik7dmFyIFc9dm9pZCAwO2F3YWl0IE9SKG4sWyJjb2xkQ29uZmlnU3RvcmUiXSx7bW9kZToicmVhZHdyaXRlIixHUTohMH0sRD0+em4oRC5vYmplY3RTdG9yZSgiY29sZENvbmZpZ1N0b3JlIikuaW5kZXgoImNvbGRUaW1lc3RhbXBJbmRleCIpLHtkaXJlY3Rpb246InByZXYifSxiPT57Vz1iLmdldFZhbHVlKCl9KSk7CnJldHVybiBXfTsKZzM9YXN5bmMgZnVuY3Rpb24obil7bj1hd2FpdCBoNyhuKTt2YXIgVz12b2lkIDA7YXdhaXQgT1IobixbImhvdENvbmZpZ1N0b3JlIl0se21vZGU6InJlYWR3cml0ZSIsR1E6ITB9LEQ9PnpuKEQub2JqZWN0U3RvcmUoImhvdENvbmZpZ1N0b3JlIikuaW5kZXgoImhvdFRpbWVzdGFtcEluZGV4Iikse2RpcmVjdGlvbjoicHJldiJ9LGI9PntXPWIuZ2V0VmFsdWUoKX0pKTsKcmV0dXJuIFd9OwpVM3Q9YXN5bmMgZnVuY3Rpb24oKXthd2FpdCBiOSgieXRHY2ZDb25maWciKX07CnFCPWZ1bmN0aW9uKCl7aWYoIWcuWDMuaW5zdGFuY2Upe2xldCBuPW5ldyBnLlgzO2cuWDMuaW5zdGFuY2U9bn1yZXR1cm4gZy5YMy5pbnN0YW5jZX07Cmk1aD1mdW5jdGlvbihuKXtpZighbi5KfHwhbi5OKXtpZighYWcoKSl7bGV0IFc9Zy5yMCgic2NoZWR1bGVHZXRDb25maWdzIik7WkUoVyl9bi5YfHwobi5YPXRhLkxTKGFzeW5jKCk9Pnt0cnl7YXdhaXQgeV9yKG4pfWNhdGNoe310cnl7YXdhaXQgRVVTKG4pfWNhdGNoe31uLlgmJihuLlg9MCl9LDEwMCkpfX07CnVEeD1hc3luYyBmdW5jdGlvbihuKXtpZihnLmwoInN0YXJ0X2NsaWVudF9nY2YiKXx8Zy5sKCJkZWxldGVfZ2NmX2NvbmZpZ19kYiIpKWcubCgic3RhcnRfY2xpZW50X2djZiIpJiYoYXdhaXQgZy5uUCgpJiZSOSgpJiYhZy5sKCJkZWxldGVfZ2NmX2NvbmZpZ19kYiIpPyhuLlY9ITAsaTVoKG4pKTooR28obiksdDcobikpKSxnLmwoImRlbGV0ZV9nY2ZfY29uZmlnX2RiIikmJmF3YWl0IFUzdCgpfTsKJE89ZnVuY3Rpb24oKXtyZXR1cm4gZy5ycigieXQuZ2NmLmNvbmZpZy5ob3RDb25maWdHcm91cCIpfTsKdmFyIG9Vaj1mdW5jdGlvbihuLFcpe3JldHVybiBlWFtJWzEwXV0odGhpcywxMCw3MTI2LG4sVyl9OwpyMz1mdW5jdGlvbihuLFcpe24uSj1XO2cuR2IoInl0LmdjZi5jb25maWcuaG90Q29uZmlnR3JvdXAiLG4uSnx8bnVsbCl9Owp0Nz1mdW5jdGlvbihuKXtyMyhuLGcuQXIoIlJBV19IT1RfQ09ORklHX0dST1VQIikpO24uVyhnLkFyKCJTRVJJQUxJWkVEX0hPVF9IQVNIX0RBVEEiKSl9Owp5X3I9YXN5bmMgZnVuY3Rpb24obil7aWYobi5KKXJldHVybiAkTygpO2lmKCFuLlYpcmV0dXJuIG49Zy5yMCgiZ2V0SG90Q29uZmlnIElEQiBub3QgaW5pdGlhbGl6ZWQiKSxaRShuKSxQcm9taXNlLnJlamVjdChuKTt2YXIgVz1hZygpLEQ9Zy5BcigiVElNRV9DUkVBVEVEX01TIik7aWYoVyl7dmFyIGI9YXdhaXQgZzMoVyk7aWYoYiYmYi50aW1lc3RhbXA+RClyZXR1cm4gcjMobixiLmNvbmZpZyksbi5XKGIuaGFzaERhdGEpLCRPKCl9ZWxzZSBiPWcucjAoImdldEhvdENvbmZpZyB0b2tlbiBlcnJvciIpLFpFKGIpO3Q3KG4pO1cmJm4uSiYmbi5ob3RIYXNoRGF0YSYmYXdhaXQgeE8obi5KLG4uaG90SGFzaERhdGEsVyxEKTtyZXR1cm4gbi5KPyRPKCk6KG49bmV3IGcuUXgoIkNvbmZpZyBub3QgYXZhaWxhYmxlIGluIHl0Q29uZmlnIiksWkUobiksUHJvbWlzZS5yZWplY3QobikpfTsKc0o9ZnVuY3Rpb24oKXtyZXR1cm4gZy5ycigieXQuZ2NmLmNvbmZpZy5jb2xkQ29uZmlnR3JvdXAiKX07Ck5CPWZ1bmN0aW9uKG4sVyl7bi5OPVc7Zy5HYigieXQuZ2NmLmNvbmZpZy5jb2xkQ29uZmlnR3JvdXAiLG4uTnx8bnVsbCl9OwpwUD1mdW5jdGlvbihuLFcpe24uY29uZmlnRGF0YT1XO2cuR2IoInl0LmdjZi5jb25maWcuY29sZENvbmZpZ0RhdGEiLG4uY29uZmlnRGF0YXx8bnVsbCl9OwpZTz1mdW5jdGlvbihuLFcpe24uY29sZEhhc2hEYXRhPVc7Zy5HYigieXQuZ2NmLmNvbmZpZy5jb2xkSGFzaERhdGEiLG4uY29sZEhhc2hEYXRhfHxudWxsKX07CkdvPWZ1bmN0aW9uKG4pe05CKG4sZy5BcigiUkFXX0NPTERfQ09ORklHX0dST1VQIikpO1lPKG4sZy5BcigiU0VSSUFMSVpFRF9DT0xEX0hBU0hfREFUQSIpKTtwUChuLG4uTj8uY29uZmlnRGF0YSl9OwpFVVM9YXN5bmMgZnVuY3Rpb24obil7aWYobi5OKXJldHVybiBzSigpO2lmKCFuLlYpcmV0dXJuIG49Zy5yMCgiZ2V0Q29sZENvbmZpZyBJREIgbm90IGluaXRpYWxpemVkIiksWkUobiksUHJvbWlzZS5yZWplY3Qobik7dmFyIFc9YWcoKSxEPWcuQXIoIlRJTUVfQ1JFQVRFRF9NUyIpO2lmKFcpe3ZhciBiPWF3YWl0IGU5KFcpO2lmKGImJmIudGltZXN0YW1wPkQpcmV0dXJuIE5CKG4sYi5jb25maWcpLHBQKG4sYi5jb25maWdEYXRhKSxZTyhuLGIuaGFzaERhdGEpLHNKKCl9ZWxzZSBiPWcucjAoImdldENvbGRDb25maWciKSxaRShiKTtHbyhuKTtXJiZuLk4mJm4uY29sZEhhc2hEYXRhJiZuLmNvbmZpZ0RhdGEmJmF3YWl0IExQKG4uTixuLmNvbGRIYXNoRGF0YSxuLmNvbmZpZ0RhdGEsVyxEKTtyZXR1cm4gbi5OP3NKKCk6KG49bmV3IGcuUXgoIkNvbmZpZyBub3QgYXZhaWxhYmxlIGluIHl0Q29uZmlnIiksWkUobiksUHJvbWlzZS5yZWplY3QobikpfTsKSHo9YXN5bmMgZnVuY3Rpb24obixXLEQpe2lmKGcubCgic3RhcnRfY2xpZW50X2djZiIpKXtEJiZyMyhuLEQpO24uVyhXKTtsZXQgYj1hZygpO2ImJihEfHwoRD0oYXdhaXQgZzMoYikpPy5jb25maWcpLGF3YWl0IHhPKEQsVyxiKSk7aWYoRCl7bj1uLks7Zm9yKGxldCB2IG9mIG4uTil2KEQpfX19OwpmUD1hc3luYyBmdW5jdGlvbihuLFcsRCl7Zy5sKCJzdGFydF9jbGllbnRfZ2NmIikmJihZTyhuLFcpLG49YWcoKSkmJihEfHwoRD0oYXdhaXQgZTkobikpPy5jb25maWcpLEQmJmF3YWl0IExQKEQsVyxELmNvbmZpZ0RhdGEsbikpfTsKSjc9ZnVuY3Rpb24oKXt2YXIgbj1xQigpLFc9KDAsZy5SKSgpLW4uajtpZighKG4uaiE9PTAmJlc8djAoInNlbmRfY29uZmlnX2hhc2hfdGltZXIiKSkpe1c9Zy5ycigieXQuZ2NmLmNvbmZpZy5jb2xkQ29uZmlnRGF0YSIpO3ZhciBEPWcucnIoInl0LmdjZi5jb25maWcuaG90SGFzaERhdGEiKSxiPWcucnIoInl0LmdjZi5jb25maWcuY29sZEhhc2hEYXRhIik7VyYmRCYmYiYmKG4uaj0oMCxnLlIpKCkpO3JldHVybntjb2xkQ29uZmlnRGF0YTpXLGhvdEhhc2hEYXRhOkQsY29sZEhhc2hEYXRhOmJ9fX07Ckk3PWZ1bmN0aW9uKCl7cmV0dXJuIklOTkVSVFVCRV9BUElfS0VZImluIElFJiYiSU5ORVJUVUJFX0FQSV9WRVJTSU9OImluIElFfTsKZy5TOT1mdW5jdGlvbigpe3JldHVybntpbm5lcnR1YmVBcGlLZXk6Zy5BcigiSU5ORVJUVUJFX0FQSV9LRVkiKSxpbm5lcnR1YmVBcGlWZXJzaW9uOmcuQXIoIklOTkVSVFVCRV9BUElfVkVSU0lPTiIpLGNSOmcuQXIoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9DT05GSUdfSU5GTyIpLEcwOmcuQXIoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9OQU1FIiwiV0VCIiksRmQ6Zy5BcigiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX05BTUUiLDEpLGlubmVydHViZUNvbnRleHRDbGllbnRWZXJzaW9uOmcuQXIoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9WRVJTSU9OIiksTWI6Zy5BcigiSU5ORVJUVUJFX0NPTlRFWFRfSEwiKSxFRTpnLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9HTCIpLHY2OmcuQXIoIklOTkVSVFVCRV9IT1NUX09WRVJSSURFIil8fCIiLE9zOiEhZy5BcigiSU5ORVJUVUJFX1VTRV9USElSRF9QQVJUWV9BVVRIIiwhMSksT0Q6ISFnLkFyKCJJTk5FUlRVQkVfT01JVF9BUElfS0VZX1dIRU5fQVVUSF9IRUFERVJfSVNfUFJFU0VOVCIsCiExKSxhcHBJbnN0YWxsRGF0YTpnLkFyKCJTRVJJQUxJWkVEX0NMSUVOVF9DT05GSUdfREFUQSIpfX07CmcuVUo9ZnVuY3Rpb24obil7dmFyIFc9e2NsaWVudDp7aGw6bi5NYixnbDpuLkVFLGNsaWVudE5hbWU6bi5HMCxjbGllbnRWZXJzaW9uOm4uaW5uZXJ0dWJlQ29udGV4dENsaWVudFZlcnNpb24sY29uZmlnSW5mbzpuLmNSfX07bmF2aWdhdG9yLnVzZXJBZ2VudCYmKFcuY2xpZW50LnVzZXJBZ2VudD1TdHJpbmcobmF2aWdhdG9yLnVzZXJBZ2VudCkpO3ZhciBEPWcucWkuZGV2aWNlUGl4ZWxSYXRpbztEJiZEIT0xJiYoVy5jbGllbnQuc2NyZWVuRGVuc2l0eUZsb2F0PVN0cmluZyhEKSk7RD1rVCgpO0QhPT0iIiYmKFcuY2xpZW50LmV4cGVyaW1lbnRzVG9rZW49RCk7RD1oeSgpO0QubGVuZ3RoPjAmJihXLnJlcXVlc3Q9e2ludGVybmFsRXhwZXJpbWVudEZsYWdzOkR9KTtBNyhuLHZvaWQgMCxXKTttVCh2b2lkIDAsVyk7S1Aodm9pZCAwLFcpO09KKG4sdm9pZCAwLFcpO1B6KHZvaWQgMCxXKTtnLmwoInN0YXJ0X2NsaWVudF9nY2YiKSYmWm0odm9pZCAwLFcpO2cuQXIoIkRFTEVHQVRFRF9TRVNTSU9OX0lEIikmJgohZy5sKCJwYWdlaWRfYXNfaGVhZGVyX3dlYiIpJiYoVy51c2VyPXtvbkJlaGFsZk9mVXNlcjpnLkFyKCJERUxFR0FURURfU0VTU0lPTl9JRCIpfSk7IWcubCgiZmlsbF9kZWxlZ2F0ZV9jb250ZXh0X2luX2dlbF9raWxsc3dpdGNoIikmJihuPWcuQXIoIklOTkVSVFVCRV9DT05URVhUX1NFUklBTElaRURfREVMRUdBVElPTl9DT05URVhUIikpJiYoVy51c2VyPXsuLi5XLnVzZXIsc2VyaWFsaXplZERlbGVnYXRpb25Db250ZXh0Om59KTtuPWcuQXIoIklOTkVSVFVCRV9DT05URVhUIik7Zy5sKCJlbmFibGVfcGVyc2lzdGVudF9kZXZpY2VfdG9rZW4iKSYmbj8uY2xpZW50Py5yb2xsb3V0VG9rZW4mJihXLmNsaWVudC5yb2xsb3V0VG9rZW49bj8uY2xpZW50Py5yb2xsb3V0VG9rZW4pO249T2JqZWN0O0Q9bi5hc3NpZ247dmFyIGI9Vy5jbGllbnQsdj1nLkFyKCJERVZJQ0UiLCIiKSxrPXt9O2ZvcihsZXQgW2gseF1vZiBPYmplY3QuZW50cmllcyhnLml3KHYpKSl2PWgsdj09PSJjYnJhbmQiPwprLmRldmljZU1ha2U9eDp2PT09ImNtb2RlbCI/ay5kZXZpY2VNb2RlbD14OnY9PT0iY2JyIj9rLmJyb3dzZXJOYW1lPXg6dj09PSJjYnJ2ZXIiP2suYnJvd3NlclZlcnNpb249eDp2PT09ImNvcyI/ay5vc05hbWU9eDp2PT09ImNvc3ZlciI/ay5vc1ZlcnNpb249eDp2PT09ImNwbGF0Zm9ybSImJihrLnBsYXRmb3JtPXgpO1cuY2xpZW50PUQuY2FsbChuLGIsayk7Zy5sKCJ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfZW5hYmxlZCIpJiYoVy5jbGllbnQud2luZG93V2lkdGhQb2ludHM9d2luZG93LmlubmVyV2lkdGgsVy5jbGllbnQud2luZG93SGVpZ2h0UG9pbnRzPXdpbmRvdy5pbm5lckhlaWdodCk7cmV0dXJuIFd9OwpBNz1mdW5jdGlvbihuLFcsRCl7bj1uLkcwO2lmKG49PT0iV0VCInx8bj09PSJNV0VCInx8bj09PTF8fG49PT0yKVc/KEQ9Z2UoVyx5ZCw5Nil8fG5ldyB5ZCxuPXl4KCksbj1PYmplY3Qua2V5cyhkM2opLmluZGV4T2Yobiksbj1uPT09LTE/bnVsbDpuLG4hPT1udWxsJiZLbihELDMsbiksJDkoVyx5ZCw5NixEKSk6RCYmKEQuY2xpZW50Lm1haW5BcHBXZWJJbmZvPUQuY2xpZW50Lm1haW5BcHBXZWJJbmZvPz97fSxELmNsaWVudC5tYWluQXBwV2ViSW5mby53ZWJEaXNwbGF5TW9kZT15eCgpKX07Cm1UPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5ycigieXQuZW1iZWRkZWRfcGxheWVyLmVtYmVkX3VybCIpO0QmJihuPyhXPWdlKG4sRUosNyl8fG5ldyBFSixnLlNFKFcsNCxEKSwkOShuLEVKLDcsVykpOlcmJihXLnRoaXJkUGFydHk9e2VtYmVkVXJsOkR9KSl9OwpLUD1mdW5jdGlvbihuLFcpe2lmKGcubCgid2ViX2xvZ19tZW1vcnlfdG90YWxfa2J5dGVzIikmJmcucWkubmF2aWdhdG9yPy5kZXZpY2VNZW1vcnkpe2xldCBEPWcucWkubmF2aWdhdG9yPy5kZXZpY2VNZW1vcnk7bj9veihuLDk1LGcubDQoRCoxRTYpKTpXJiYoVy5jbGllbnQubWVtb3J5VG90YWxLYnl0ZXM9YCR7RCoxRTZ9YCl9fTsKT0o9ZnVuY3Rpb24obixXLEQpe24uYXBwSW5zdGFsbERhdGEmJihXPyhEPWdlKFcsaTksNjIpPz9uZXcgaTksZy5TRShELDYsbi5hcHBJbnN0YWxsRGF0YSksJDkoVyxpOSw2MixEKSk6RCYmKEQuY2xpZW50LmNvbmZpZ0luZm89RC5jbGllbnQuY29uZmlnSW5mb3x8e30sRC5jbGllbnQuY29uZmlnSW5mby5hcHBJbnN0YWxsRGF0YT1uLmFwcEluc3RhbGxEYXRhKSl9OwpQej1mdW5jdGlvbihuLFcpe3ZhciBEPUJCKCk7RCYmKG4/S24obiw2MSx6cXdbRF0pOlcmJihXLmNsaWVudC5jb25uZWN0aW9uVHlwZT1EKSk7Zy5sKCJ3ZWJfbG9nX2VmZmVjdGl2ZV9jb25uZWN0aW9uX3R5cGUiKSYmKEQ9d0ooKSkmJihuP0tuKG4sOTQsbEJyW0RdKTpXJiYoVy5jbGllbnQuZWZmZWN0aXZlQ29ubmVjdGlvblR5cGU9RCkpfTsKVFpqPWZ1bmN0aW9uKG4sVyxEPXt9KXt2YXIgYj17fTtnLkFyKCJFT01fVklTSVRPUl9EQVRBIik/Yj17IlgtR29vZy1FT00tVmlzaXRvci1JZCI6Zy5BcigiRU9NX1ZJU0lUT1JfREFUQSIpfTpiPXsiWC1Hb29nLVZpc2l0b3ItSWQiOkQudmlzaXRvckRhdGF8fGcuQXIoIlZJU0lUT1JfREFUQSIsIiIpfTtpZihXJiZXLmluY2x1ZGVzKCJ3d3cueW91dHViZS1ub2Nvb2tpZS5jb20iKSlyZXR1cm4gYjtXPUQuUDF8fGcuQXIoIkFVVEhPUklaQVRJT04iKTtXfHwobj9XPWBCZWFyZXIgJHtnLnJyKCJnYXBpLmF1dGguZ2V0VG9rZW4iKSgpLmFjY2Vzc190b2tlbn1gOihuPWlPKCkuYWoodTkpLGcubCgicGFnZWlkX2FzX2hlYWRlcl93ZWIiKXx8ZGVsZXRlIG5bIlgtR29vZy1QYWdlSWQiXSxiPXsuLi5iLC4uLm59KSk7VyYmKGIuQXV0aG9yaXphdGlvbj1XKTtyZXR1cm4gYn07ClptPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9SjcoKTtpZihEKXt2YXIgYj1ELmNvbGRDb25maWdEYXRhLHY9RC5jb2xkSGFzaERhdGE7RD1ELmhvdEhhc2hEYXRhO24/KFc9Z2UobixpOSw2Mik/P25ldyBpOSxiPWcuU0UoVywxLGIpLGcuU0UoYiwzLHYpLlcoRCksJDkobixpOSw2MixXKSk6VyYmKFcuY2xpZW50LmNvbmZpZ0luZm89Vy5jbGllbnQuY29uZmlnSW5mb3x8e30sYiYmKFcuY2xpZW50LmNvbmZpZ0luZm8uY29sZENvbmZpZ0RhdGE9YiksdiYmKFcuY2xpZW50LmNvbmZpZ0luZm8uY29sZEhhc2hEYXRhPXYpLEQmJihXLmNsaWVudC5jb25maWdJbmZvLmhvdEhhc2hEYXRhPUQpKX19OwpvNz1mdW5jdGlvbihuKXt0aGlzLnZlcnNpb249MTt0aGlzLmFyZ3M9bn07CmQzPWZ1bmN0aW9uKG4sVyl7dGhpcy50b3BpYz1uO3RoaXMuTj1XfTsKbDk9ZnVuY3Rpb24obixXKXt2YXIgRD16bygpO0QmJkQucHVibGlzaC5jYWxsKEQsbi50b1N0cmluZygpLG4sVyl9OwpqMHg9ZnVuY3Rpb24obil7dmFyIFc9VG8sRD16bygpO2lmKCFEKXJldHVybiAwO3ZhciBiPUQuc3Vic2NyaWJlKFcudG9TdHJpbmcoKSwodixrKT0+e3ZhciBoPWcucnIoInl0UHVic3ViMlB1YnN1YjJTa2lwU3ViS2V5Iik7aCYmaD09Ynx8KGg9KCk9PntpZihqOVtiXSl0cnl7aWYoayYmVyBpbnN0YW5jZW9mIGQzJiZXIT12KXRyeXt7dmFyIHg9Vy5OLEw9aztpZighTC5hcmdzfHwhTC52ZXJzaW9uKXRocm93IEVycm9yKCJ5dC5wdWJzdWIyLkRhdGEuZGVzZXJpYWxpemUoKTogc2VyaWFsaXplZERhdGEgaXMgaW5jb21wbGV0ZS4iKTtsZXQgZTt0cnl7aWYoIXguQ2Ipe2xldCBHPW5ldyB4O3guQ2I9Ry52ZXJzaW9ufWU9eC5DYn1jYXRjaChHKXt9aWYoIWV8fEwudmVyc2lvbiE9ZSl0aHJvdyBFcnJvcigieXQucHVic3ViMi5EYXRhLmRlc2VyaWFsaXplKCk6IHNlcmlhbGl6ZWREYXRhIHZlcnNpb24gaXMgaW5jb21wYXRpYmxlLiIpO3RyeXtrPVJlZmxlY3QuY29uc3RydWN0KHgsZy5STShMLmFyZ3MpKX1jYXRjaChHKXt0aHJvdyBHLm1lc3NhZ2U9CiJ5dC5wdWJzdWIyLkRhdGEuZGVzZXJpYWxpemUoKTogIitHLm1lc3NhZ2UsRzt9fX1jYXRjaChlKXt0aHJvdyBlLm1lc3NhZ2U9Inl0LnB1YnN1YjIucHVic3ViMiBjcm9zcy1iaW5hcnkgY29udmVyc2lvbiBlcnJvciBmb3IgIitXLnRvU3RyaW5nKCkrIjogIitlLm1lc3NhZ2UsZTt9bi5jYWxsKHdpbmRvdyxrKX1jYXRjaChlKXtPdChlKX19LENQW1cudG9TdHJpbmcoKV0/Zy5ycigieXQuc2NoZWR1bGVyLmluc3RhbmNlIik/dGEuTFMoaCk6Zy5uJChoLDApOmgoKSl9KTsKajlbYl09ITA7QnpbVy50b1N0cmluZygpXXx8KEJ6W1cudG9TdHJpbmcoKV09W10pO0J6W1cudG9TdHJpbmcoKV0ucHVzaChiKTtyZXR1cm4gYn07CkYwTT1mdW5jdGlvbigpe3ZhciBuPUM0dyxXPWoweChmdW5jdGlvbihEKXtuLmFwcGx5KHZvaWQgMCxhcmd1bWVudHMpO0JaaChXKX0pOwpyZXR1cm4gV307CkJaaD1mdW5jdGlvbihuKXt2YXIgVz16bygpO1cmJih0eXBlb2Ygbj09PSJudW1iZXIiJiYobj1bbl0pLGcueTIobixEPT57Vy51bnN1YnNjcmliZUJ5S2V5KEQpO2RlbGV0ZSBqOVtEXX0pKX07CnpvPWZ1bmN0aW9uKCl7cmV0dXJuIGcucnIoInl0UHVic3ViMlB1YnN1YjJJbnN0YW5jZSIpfTsKRjM9ZnVuY3Rpb24obixXLEQ9e3NhbXBsZVJhdGU6LjF9KXtNYXRoLnJhbmRvbSgpPE1hdGgubWluKC4wMixELnNhbXBsZVJhdGUvMTAwKSYmbDkoIm1ldGFfbG9nZ2luZ19jc2lfZXZlbnQiLHt0aW1lck5hbWU6bix0aW1lbGluZURhdGE6V30pfTsKVmQ9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9e3N0YXJ0VGltZTooMCxnLlIpKCksdGlja3M6e30saW5mb3M6e319O3RyeXtsZXQgaD13MyhXKTtpZihoPT1udWxsfHwhKGg+TUJ8fGg8UjcpKXt2YXIgaz1YJChRZChXKSk7bGV0IHg9KDAsZy5SKSgpO3YudGlja3MuZ2VsYz14O3c5aisrO2cubCgiZ2VsX2NvbXByZXNzaW9uX2NzaV9raWxsc3dpdGNoIil8fCFnLmwoImxvZ19nZWxfY29tcHJlc3Npb25fbGF0ZW5jeSIpJiYhZy5sKCJsb2dfZ2VsX2NvbXByZXNzaW9uX2xhdGVuY3lfbHIiKXx8RjMoImdlbF9jb21wcmVzc2lvbiIsdix7c2FtcGxlUmF0ZTouMX0pO0QuaGVhZGVyc3x8KEQuaGVhZGVycz17fSk7RC5oZWFkZXJzWyJDb250ZW50LUVuY29kaW5nIl09Imd6aXAiO0QucG9zdEJvZHk9aztELnBvc3RQYXJhbXM9dm9pZCAwfWIobixEKX1jYXRjaChoKXtaRShoKSxiKG4sRCl9fTsKTVhTPWZ1bmN0aW9uKG4peygwLGcuUikoKTtpZighbi5ib2R5KXJldHVybiBuO3RyeXtsZXQgVz10eXBlb2Ygbi5ib2R5PT09InN0cmluZyI/bi5ib2R5OkpTT04uc3RyaW5naWZ5KG4uYm9keSksRD1XO2lmKHR5cGVvZiBXPT09InN0cmluZyIpe2xldCBiPXczKFcpO2lmKGIhPW51bGwmJihiPk1CfHxiPFI3KSlyZXR1cm4gbjtEPVgkKFFkKFcpKTsoMCxnLlIpKCl9bi5oZWFkZXJzPXsiQ29udGVudC1FbmNvZGluZyI6Imd6aXAiLC4uLihuLmhlYWRlcnN8fHt9KX07bi5ib2R5PUQ7cmV0dXJuIG59Y2F0Y2goVyl7cmV0dXJuIFpFKFcpLG59fTsKdzM9ZnVuY3Rpb24obil7dHJ5e3JldHVybihuZXcgQmxvYihuLnNwbGl0KCIiKSkpLnNpemV9Y2F0Y2goVyl7cmV0dXJuIFpFKFcpLG51bGx9fTsKY3o9ZnVuY3Rpb24obil7cmV0dXJuISFuLllXfHxuLld2fTsKbm09ZnVuY3Rpb24obil7Y3oobikmJiFuLk5oJiYobi5OPSEwLG4uQ3ImJk1hdGgucmFuZG9tKCk8PW4uS3ImJm4uZ0UudGkobi5ZVyksYTcobiksbi55Ry5XRygpJiZuLlcoKSxuLnlHLlNfKG4udVosbi5XLmJpbmQobikpLG4ueUcuU18obi5OQSxuLlguYmluZChuKSkpfTsKYTc9ZnVuY3Rpb24obil7aWYoIWN6KG4pKXRocm93IEVycm9yKCJJbmRleGVkREIgaXMgbm90IHN1cHBvcnRlZDogcmV0cnlRdWV1ZWRSZXF1ZXN0cyIpO24uZ0UuaTQoIlFVRVVFRCIsbi5ZVykudGhlbihXPT57VyYmIVdVKG4sVyxuLlo0KT9uLkEkLkxTKGFzeW5jKCk9PntXLmlkIT09dm9pZCAwJiZhd2FpdCBuLmdFLmhZKFcuaWQsbi5ZVyk7YTcobil9KTpuLnlHLldHKCkmJm4uVygpfSl9OwpENT1hc3luYyBmdW5jdGlvbihuLFcpe2lmKCFjeihuKSl0aHJvdyBFcnJvcigiSW5kZXhlZERCIGlzIG5vdCBzdXBwb3J0ZWQ6IGltbWVkaWF0ZVNlbmQiKTtXLmlkIT09dm9pZCAwJiYoYXdhaXQgbi5nRS5LNihXLmlkLG4uWVcpfHxuLkYyKEVycm9yKCJUaGUgcmVxdWVzdCBjYW5ub3QgYmUgZm91bmQgaW4gdGhlIGRhdGFiYXNlLiIpKSk7V1UobixXLG4uR3kpPyhXLnNraXBSZXRyeXx8KFc9UnEyKG4sVykpLFcmJihXLnNraXBSZXRyeSYmVy5pZCE9PXZvaWQgMCYmYXdhaXQgbi5nRS5UTShXLmlkLG4uWVcpLG4uTG0oVy51cmwsVy5vcHRpb25zLCEhVy5za2lwUmV0cnkpKSk6KG4uRjIoRXJyb3IoIk5ldHdvcmtsZXNzIExvZ2dpbmc6IFN0b3JlZCBsb2dzIHJlcXVlc3QgZXhwaXJlZCBhZ2UgbGltaXQiKSksVy5pZCE9PXZvaWQgMCYmYXdhaXQgbi5nRS5UTShXLmlkLG4uWVcpKX07CmJNPWZ1bmN0aW9uKG4sVyl7bi5oTCYmIW4ueUcuV0coKT9uLmhMKFcpOm4uaGFuZGxlRXJyb3IoVyl9OwpXVT1mdW5jdGlvbihuLFcsRCl7Vz1XLnRpbWVzdGFtcDtyZXR1cm4gbi5ub3coKS1XPj1EPyExOiEwfTsKUnEyPWZ1bmN0aW9uKG4sVyl7aWYoIWN6KG4pKXRocm93IEVycm9yKCJJbmRleGVkREIgaXMgbm90IHN1cHBvcnRlZDogdXBkYXRlUmVxdWVzdEhhbmRsZXJzIik7dmFyIEQ9Vy5vcHRpb25zLm9uRXJyb3I/Vy5vcHRpb25zLm9uRXJyb3I6KCk9Pnt9OwpXLm9wdGlvbnMub25FcnJvcj1hc3luYyh2LGspPT57dmFyIGg9UTBTKGspLHg9VlgyKGspO3gmJm4uRXEmJm4uRXEoIndlYl9lbmFibGVfZXJyb3JfMjA0IikmJm4uaGFuZGxlRXJyb3IoRXJyb3IoIlJlcXVlc3QgZmFpbGVkIGR1ZSB0byBjb21wcmVzc2lvbiIpLFcudXJsLGspO2lmKG4uRXEmJm4uRXEoIm53bF9jb25zaWRlcl9lcnJvcl9jb2RlIikmJmh8fG4uRXEmJiFuLkVxKCJud2xfY29uc2lkZXJfZXJyb3JfY29kZSIpJiZuLnBvdGVudGlhbEVzZkVycm9yQ291bnRlcjw9bi5IRilpZihuLnlHLmhKJiZhd2FpdCBuLnlHLmhKKCksIW4ueUcuV0coKSl7RCh2LGspO24uRXEmJm4uRXEoIm53bF9jb25zaWRlcl9lcnJvcl9jb2RlIikmJlc/LmlkIT09dm9pZCAwJiZhd2FpdCBuLmdFLmhZKFcuaWQsbi5ZVywhMSk7cmV0dXJufW4uRXEmJm4uRXEoIm53bF9jb25zaWRlcl9lcnJvcl9jb2RlIikmJiFoJiZuLnBvdGVudGlhbEVzZkVycm9yQ291bnRlcj5uLkhGfHwobi5wb3RlbnRpYWxFc2ZFcnJvckNvdW50ZXIrKywKVz8uaWQhPT12b2lkIDAmJihXLnNlbmRDb3VudDxuLkExPyhhd2FpdCBuLmdFLmhZKFcuaWQsbi5ZVywhMCx4PyExOnZvaWQgMCksbi5BJC5MUygoKT0+e24ueUcuV0coKSYmbi5XKCl9LG4uSVApKTphd2FpdCBuLmdFLlRNKFcuaWQsbi5ZVykpLEQodixrKSl9Owp2YXIgYj1XLm9wdGlvbnMub25TdWNjZXNzP1cub3B0aW9ucy5vblN1Y2Nlc3M6KCk9Pnt9OwpXLm9wdGlvbnMub25TdWNjZXNzPWFzeW5jKHYsayk9PntXPy5pZCE9PXZvaWQgMCYmYXdhaXQgbi5nRS5UTShXLmlkLG4uWVcpO24ueUcubGMmJm4uRXEmJm4uRXEoInZzc19uZXR3b3JrX2hpbnQiKSYmbi55Ry5sYyghMCk7Yih2LGspfTsKcmV0dXJuIFd9OwpRMFM9ZnVuY3Rpb24obil7cmV0dXJuKG49bj8uZXJyb3I/LmNvZGUpJiZuPj00MDAmJm48PTU5OT8hMTohMH07ClZYMj1mdW5jdGlvbihuKXtuPW4/LmVycm9yPy5jb2RlO3JldHVybiEobiE9PTQwMCYmbiE9PTQxNSl9OwpjX1o9ZnVuY3Rpb24oKXtpZih2VSlyZXR1cm4gdlUoKTt2VT1rTygiTG9nc0RhdGFiYXNlVjIiLHtLYzp7TG9nc1JlcXVlc3RzU3RvcmU6e3Z4OjJ9fSxzaGFyZWQ6ITEsdXBncmFkZShuLFcsRCl7VygyKSYmWnkobiwiTG9nc1JlcXVlc3RzU3RvcmUiLHtrZXlQYXRoOiJpZCIsYXV0b0luY3JlbWVudDohMH0pO1coMyk7Vyg1KSYmKEQ9RC5vYmplY3RTdG9yZSgiTG9nc1JlcXVlc3RzU3RvcmUiKSxELk4uaW5kZXhOYW1lcy5jb250YWlucygibmV3UmVxdWVzdCIpJiZELk4uZGVsZXRlSW5kZXgoIm5ld1JlcXVlc3QiKSxFUihELCJuZXdSZXF1ZXN0VjIiLFsic3RhdHVzIiwiaW50ZXJmYWNlIiwidGltZXN0YW1wIl0pKTtXKDcpJiZVUihuLCJzYXBpc2lkIik7Vyg5KSYmVVIobiwiU1dIZWFsdGhMb2ciKX0sdmVyc2lvbjo5fSk7cmV0dXJuIHZVKCl9OwprUT1mdW5jdGlvbihuKXtyZXR1cm4gQ0YoY19aKCksbil9OwphQlM9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD17c3RhcnRUaW1lOigwLGcuUikoKSxpbmZvczp7dHJhbnNhY3Rpb25UeXBlOiJZVF9JREJfVFJBTlNBQ1RJT05fVFlQRV9XUklURSJ9LHRpY2tzOnt9fTtXPWF3YWl0IGtRKFcpO249ey4uLm4sb3B0aW9uczpKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KG4ub3B0aW9ucykpLGludGVyZmFjZTpnLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsMCl9O249YXdhaXQgVy5wdXQoIkxvZ3NSZXF1ZXN0c1N0b3JlIixuKTtELnRpY2tzLnRjPSgwLGcuUikoKTtoSShEKTtyZXR1cm4gbn07Cm52Mj1hc3luYyBmdW5jdGlvbihuLFcpe3ZhciBEPXtzdGFydFRpbWU6KDAsZy5SKSgpLGluZm9zOnt0cmFuc2FjdGlvblR5cGU6IllUX0lEQl9UUkFOU0FDVElPTl9UWVBFX1JFQUQifSx0aWNrczp7fX07Vz1hd2FpdCBrUShXKTt2YXIgYj1nLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsMCksdj1bbixiLDBdO2I9W24sYiwoMCxnLlIpKCldO3ZhciBrPUlEQktleVJhbmdlLmJvdW5kKHYsYiksaD0icHJldiI7Zy5sKCJ1c2VfZmlmb19mb3JfbmV0d29ya2xlc3MiKSYmKGg9Im5leHQiKTt2YXIgeD12b2lkIDA7dj1uPT09Ik5FVyI/InJlYWR3cml0ZSI6InJlYWRvbmx5IjtnLmwoInVzZV9yZWFkb25seV9mb3JfZ2V0X21vc3RfcmVjZW50X2J5X3N0YXR1c19raWxsc3dpdGNoIikmJih2PSJyZWFkd3JpdGUiKTthd2FpdCBPUihXLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZTp2LEdROiEwfSxMPT56bihMLm9iamVjdFN0b3JlKCJMb2dzUmVxdWVzdHNTdG9yZSIpLmluZGV4KCJuZXdSZXF1ZXN0VjIiKSwKe3F1ZXJ5OmssZGlyZWN0aW9uOmh9LGU9PntlLmdldFZhbHVlKCkmJih4PWUuZ2V0VmFsdWUoKSxuPT09Ik5FVyImJih4LnN0YXR1cz0iUVVFVUVEIixlLnVwZGF0ZSh4KSkpfSkpOwpELnRpY2tzLnRjPSgwLGcuUikoKTtoSShEKTtyZXR1cm4geH07CldfQz1hc3luYyBmdW5jdGlvbihuLFcpe3JldHVybiBPUihhd2FpdCBrUShXKSxbIkxvZ3NSZXF1ZXN0c1N0b3JlIl0se21vZGU6InJlYWR3cml0ZSIsR1E6ITB9LEQ9Pnt2YXIgYj1ELm9iamVjdFN0b3JlKCJMb2dzUmVxdWVzdHNTdG9yZSIpO3JldHVybiBiLmdldChuKS50aGVuKHY9PntpZih2KXJldHVybiB2LnN0YXR1cz0iUVVFVUVEIixiLnB1dCh2KS50aGVuKCgpPT52KX0pfSl9OwpERXg9YXN5bmMgZnVuY3Rpb24obixXLEQ9ITAsYil7cmV0dXJuIE9SKGF3YWl0IGtRKFcpLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZToicmVhZHdyaXRlIixHUTohMH0sdj0+e3ZhciBrPXYub2JqZWN0U3RvcmUoIkxvZ3NSZXF1ZXN0c1N0b3JlIik7cmV0dXJuIGsuZ2V0KG4pLnRoZW4oaD0+aD8oaC5zdGF0dXM9Ik5FVyIsRCYmKGguc2VuZENvdW50Kz0xKSxiIT09dm9pZCAwJiYoaC5vcHRpb25zLmNvbXByZXNzPWIpLGsucHV0KGgpLnRoZW4oKCk9PmgpKTpzUi5yZXNvbHZlKHZvaWQgMCkpfSl9OwpiR0M9YXN5bmMgZnVuY3Rpb24obixXKXtyZXR1cm4oYXdhaXQga1EoVykpLmRlbGV0ZSgiTG9nc1JlcXVlc3RzU3RvcmUiLG4pfTsKdnZpPWFzeW5jIGZ1bmN0aW9uKG4pe249YXdhaXQga1Eobik7dmFyIFc9KDAsZy5SKSgpLTI1OTJFNjthd2FpdCBPUihuLFsiTG9nc1JlcXVlc3RzU3RvcmUiXSx7bW9kZToicmVhZHdyaXRlIixHUTohMH0sRD0+dVEoRC5vYmplY3RTdG9yZSgiTG9nc1JlcXVlc3RzU3RvcmUiKSx7fSxiPT57aWYoYi5nZXRWYWx1ZSgpLnRpbWVzdGFtcDw9VylyZXR1cm4gYi5kZWxldGUoKS50aGVuKCgpPT5vZyhiKSl9KSl9Owpremk9YXN5bmMgZnVuY3Rpb24oKXthd2FpdCBiOSgiTG9nc0RhdGFiYXNlVjIiKX07CmhJPWZ1bmN0aW9uKG4pe2cubCgibndsX2NzaV9raWxsc3dpdGNoIil8fEYzKCJuZXR3b3JrbGVzc19wZXJmb3JtYW5jZSIsbix7c2FtcGxlUmF0ZToxfSl9Owp4UT1mdW5jdGlvbihuKXtyZXR1cm4gQ0YoaF94KCksbil9Owp4RXc9YXN5bmMgZnVuY3Rpb24obil7bj1hd2FpdCB4UShuKTt2YXIgVz0oMCxnLlIpKCktMjU5MkU2O2F3YWl0IE9SKG4sWyJTV0hlYWx0aExvZyJdLHttb2RlOiJyZWFkd3JpdGUiLEdROiEwfSxEPT51UShELm9iamVjdFN0b3JlKCJTV0hlYWx0aExvZyIpLHt9LGI9PntpZihiLmdldFZhbHVlKCkudGltZXN0YW1wPD1XKXJldHVybiBiLmRlbGV0ZSgpLnRoZW4oKCk9Pm9nKGIpKX0pKX07CkxfaT1hc3luYyBmdW5jdGlvbihuKXthd2FpdCAoYXdhaXQgeFEobikpLmNsZWFyKCJTV0hlYWx0aExvZyIpfTsKZy5nbz1mdW5jdGlvbihuLFcsRCxiLHY9IiIsaz0hMSxoPSExKXtpZihuKWlmKEQmJiFnLmQ4KCkpWkUobmV3IGcuUXgoIkxlZ2FjeSByZWZlcnJlci1zY3J1YmJlZCBwaW5nIGRldGVjdGVkIikpLG4mJkxtKG4sdm9pZCAwLHtzY3J1YlJlZmVycmVyOiEwfSk7ZWxzZSBpZih2KXhUKG4sVywiUE9TVCIsdixiKTtlbHNlIGlmKGcuQXIoIlVTRV9ORVRfQUpBWF9GT1JfUElOR19UUkFOU1BPUlQiLCExKXx8Ynx8aCl4VChuLFcsIkdFVCIsIiIsYix2b2lkIDAsayxoKTtlbHNle2I6e3RyeXtjOnt2YXIgeD1uZXcgZV93KHt1cmw6bn0pO2lmKHguTi5kc2g9PT0iMSIpdmFyIEw9bnVsbDtlbHNle3ZhciBlPXguTi5hZTtpZihlPT09IjEiKXtsZXQgcj14Lk4uYWR1cmw7aWYocil0cnl7TD17dmVyc2lvbjozLFViOmRlY29kZVVSSUNvbXBvbmVudChyKSxERzp1eCh4LkosImFjdD0xIiwicmk9MSIseGlNKHgpKX07YnJlYWsgY31jYXRjaChOKXt9fUw9ZT09PSIyIj97dmVyc2lvbjo0LFViOnV4KHguSiwKImRjdD0xIiwic3VpZD0iK3guVywicmk9MSIpLERHOnV4KHguSiwiYWN0PTEiLCJyaT0xIiwic3VpZD0iK3guVyl9Om51bGx9fWlmKEwpe2xldCByPVMxKG4pO3ZhciBHPSEoIXJ8fCFyLmVuZHNXaXRoKCIvYWNsayIpfHxnLmxmKG4sInJpIikhPT0iMSIpO2JyZWFrIGJ9fWNhdGNoKHIpe31HPSExfUc/ZXcobik/KFcmJlcoKSxEPSEwKTpEPSExOkQ9ITE7RHx8TG0obixXKX19Owpndnc9ZnVuY3Rpb24obixXPSIiKXtldyhuLFcpfHxnLmdvKG4sdm9pZCAwLHZvaWQgMCx2b2lkIDAsVyl9Owpldz1mdW5jdGlvbihuLFc9IiIpe3RyeXtpZih3aW5kb3cubmF2aWdhdG9yJiZ3aW5kb3cubmF2aWdhdG9yLnNlbmRCZWFjb24mJndpbmRvdy5uYXZpZ2F0b3Iuc2VuZEJlYWNvbihuLFcpKXJldHVybiEwfWNhdGNoKEQpe31yZXR1cm4hMX07CkxtPWZ1bmN0aW9uKG4sVyxEPXt9KXt2YXIgYj1uZXcgSW1hZ2Usdj0iIitYSHcrKztYaVt2XT1iO2Iub25sb2FkPWIub25lcnJvcj0oKT0+e1cmJlhpW3ZdJiZXKCk7ZGVsZXRlIFhpW3ZdfTsKRC5zY3J1YlJlZmVycmVyJiYoYi5yZWZlcnJlclBvbGljeT0ibm8tcmVmZXJyZXIiKTtiLnNyYz1ufTsKZy5xYj1mdW5jdGlvbihuKXtyZXR1cm4gZG9jdW1lbnQuZmVhdHVyZVBvbGljeT8uYWxsb3dlZEZlYXR1cmVzKCkuaW5jbHVkZXMoImF0dHJpYnV0aW9uLXJlcG9ydGluZyIpP24rIiZuaXM9NiI6bisiJm5pcz01In07CiRRPWZ1bmN0aW9uKCl7R1R8fChHVD1uZXcgdEkoInl0Lm9mZmxpbmUiKSk7cmV0dXJuIEdUfTsKcUt3PWZ1bmN0aW9uKG4pe2lmKGcubCgib2ZmbGluZV9lcnJvcl9oYW5kbGluZyIpKXt2YXIgVz0kUSgpLmdldCgiZXJyb3JzIiwhMCl8fHt9O1dbbi5tZXNzYWdlXT17bmFtZTpuLm5hbWUsc3RhY2s6bi5zdGFja307bi5sZXZlbCYmKFdbbi5tZXNzYWdlXS5sZXZlbD1uLmxldmVsKTskUSgpLnNldCgiZXJyb3JzIixXLDI1OTJFMywhMCl9fTsKc2M9ZnVuY3Rpb24oKXtpZighcm8uaW5zdGFuY2Upe2xldCBuPWcucnIoInl0Lm5ldHdvcmtSZXF1ZXN0TW9uaXRvci5pbnN0YW5jZSIpfHxuZXcgcm87Zy5HYigieXQubmV0d29ya1JlcXVlc3RNb25pdG9yLmluc3RhbmNlIixuKTtyby5pbnN0YW5jZT1ufXJldHVybiByby5pbnN0YW5jZX07CnBtPWZ1bmN0aW9uKCl7aWYoIU5iLmluc3RhbmNlKXtsZXQgbj1nLnJyKCJ5dC5uZXR3b3JrU3RhdHVzTWFuYWdlci5pbnN0YW5jZSIpfHxuZXcgTmI7Zy5HYigieXQubmV0d29ya1N0YXR1c01hbmFnZXIuaW5zdGFuY2UiLG4pO05iLmluc3RhbmNlPW59cmV0dXJuIE5iLmluc3RhbmNlfTsKWVE9ZnVuY3Rpb24obixXKXtuLnJhdGVMaW1pdD9uLk4/KHRhLnNPKG4uWCksbi5YPXRhLkxTKCgpPT57bi5XIT09VyYmKG4uZGlzcGF0Y2hFdmVudChXKSxuLlc9VyxuLk49KDAsZy5SKSgpKX0sbi5yYXRlTGltaXQtKCgwLGcuUikoKS1uLk4pKSk6KG4uZGlzcGF0Y2hFdmVudChXKSxuLlc9VyxuLk49KDAsZy5SKSgpKTpuLmRpc3BhdGNoRXZlbnQoVyl9OwpnLkhVPWZ1bmN0aW9uKCl7dmFyIG49Zy5ycigieXQubmV0d29ya2xlc3NSZXF1ZXN0Q29udHJvbGxlci5pbnN0YW5jZSIpO258fChuPW5ldyBHemgsZy5HYigieXQubmV0d29ya2xlc3NSZXF1ZXN0Q29udHJvbGxlci5pbnN0YW5jZSIsbiksZy5sKCJuZXR3b3JrbGVzc19sb2dnaW5nIikmJmcublAoKS50aGVuKFc9PntuLllXPVc7bm0obik7bi5qLnJlc29sdmUoKTtuLkNyJiZNYXRoLnJhbmRvbSgpPD1uLktyJiZuLllXJiZ4RXcobi5ZVyk7Zy5sKCJuZXR3b3JrbGVzc19pbW1lZGlhdGVseV9kcm9wX3N3X2hlYWx0aF9zdG9yZSIpJiZ0V3cobil9KSk7CnJldHVybiBufTsKdFd3PWFzeW5jIGZ1bmN0aW9uKG4pe2lmKCFuLllXKXRocm93IGcucjAoImNsZWFyU1dIZWFsdGhMb2dzRGIiKTtMX2kobi5ZVykuY2F0Y2goVz0+e24uaGFuZGxlRXJyb3IoVyl9KX07CiRFdD1mdW5jdGlvbihuLFcsRCl7Vz1nLmwoIndlYl9mcF92aWFfanNwYiIpP09iamVjdC5hc3NpZ24oe30sVyk6VztnLmwoInVzZV9yZXF1ZXN0X3RpbWVfbXNfaGVhZGVyIik/Vy5oZWFkZXJzJiZnLlRkKG4pJiYoVy5oZWFkZXJzWyJYLUdvb2ctUmVxdWVzdC1UaW1lIl09SlNPTi5zdHJpbmdpZnkoTWF0aC5yb3VuZCgoMCxnLlIpKCkpKSk6Vy5wb3N0UGFyYW1zPy5yZXF1ZXN0VGltZU1zJiYoVy5wb3N0UGFyYW1zLnJlcXVlc3RUaW1lTXM9TWF0aC5yb3VuZCgoMCxnLlIpKCkpKTtEJiZPYmplY3Qua2V5cyhXKS5sZW5ndGg9PT0wP2cuZ28obik6Vy5jb21wcmVzcz9XLnBvc3RCb2R5Pyh0eXBlb2YgVy5wb3N0Qm9keSE9PSJzdHJpbmciJiYoVy5wb3N0Qm9keT1KU09OLnN0cmluZ2lmeShXLnBvc3RCb2R5KSksVmQobixXLnBvc3RCb2R5LFcsZy5lZCkpOlZkKG4sSlNPTi5zdHJpbmdpZnkoVy5wb3N0UGFyYW1zKSxXLGc4KTpnLmVkKG4sVyl9OwpmbT1mdW5jdGlvbihuLFcpe2cubCgidXNlX2V2ZW50X3RpbWVfbXNfaGVhZGVyIikmJmcuVGQobikmJihXLmhlYWRlcnN8fChXLmhlYWRlcnM9e30pLFcuaGVhZGVyc1siWC1Hb29nLUV2ZW50LVRpbWUiXT1KU09OLnN0cmluZ2lmeShNYXRoLnJvdW5kKCgwLGcuUikoKSkpKTtyZXR1cm4gV307CmcuSUk9ZnVuY3Rpb24obixXLEQsYil7IWcuQXIoIlZJU0lUT1JfREFUQSIpJiZXIT09InZpc2l0b3JfaWQiJiZNYXRoLnJhbmRvbSgpPC4wMSYmWkUobmV3IGcuUXgoIk1pc3NpbmcgVklTSVRPUl9EQVRBIHdoZW4gc2VuZGluZyBpbm5lcnR1YmUgcmVxdWVzdC4iLFcsRCxiKSk7aWYoIW4uaXNSZWFkeSgpKXRocm93IG49bmV3IGcuUXgoImlubmVydHViZSB4aHJjbGllbnQgbm90IHJlYWR5IixXLEQsYiksT3Qobiksbjt2YXIgdj17aGVhZGVyczpiLmhlYWRlcnN8fHt9LG1ldGhvZDoiUE9TVCIscG9zdFBhcmFtczpELHBvc3RCb2R5OmIucG9zdEJvZHkscG9zdEJvZHlGb3JtYXQ6Yi5wb3N0Qm9keUZvcm1hdHx8IkpTT04iLG9uVGltZW91dDooKT0+e2Iub25UaW1lb3V0KCl9LApvbkZldGNoVGltZW91dDpiLm9uVGltZW91dCxvblN1Y2Nlc3M6KGUsRyk9PntpZihiLm9uU3VjY2VzcyliLm9uU3VjY2VzcyhHKX0sCm9uRmV0Y2hTdWNjZXNzOmU9PntpZihiLm9uU3VjY2VzcyliLm9uU3VjY2VzcyhlKX0sCm9uUHJvZ3Jlc3M6ZT0+e2lmKGIub25Qcm9ncmVzcyliLm9uUHJvZ3Jlc3MoZSl9LApvbkVycm9yOihlLEcpPT57aWYoYi5vbkVycm9yKWIub25FcnJvcihHKX0sCm9uRmV0Y2hFcnJvcjplPT57aWYoYi5vbkVycm9yKWIub25FcnJvcihlKX0sCnRpbWVvdXQ6Yi50aW1lb3V0LHdpdGhDcmVkZW50aWFsczohMCxjb21wcmVzczpiLmNvbXByZXNzfTt2LmhlYWRlcnNbIkNvbnRlbnQtVHlwZSJdfHwodi5oZWFkZXJzWyJDb250ZW50LVR5cGUiXT0iYXBwbGljYXRpb24vanNvbiIpO0Q9IiI7dmFyIGs9bi5jb25maWdfLnY2O2smJihEPWspO2s9bi5jb25maWdfLk9zfHwhMTt2YXIgaD1UWmooayxELGIpO09iamVjdC5hc3NpZ24odi5oZWFkZXJzLGgpO3YuaGVhZGVycy5BdXRob3JpemF0aW9uJiYhRCYmayYmKHYuaGVhZGVyc1sieC1vcmlnaW4iXT13aW5kb3cubG9jYXRpb24ub3JpZ2luKTt2YXIgeD1nLnpkKGAke0R9JHtgL3lvdXR1YmVpLyR7bi5jb25maWdfLmlubmVydHViZUFwaVZlcnNpb259LyR7V31gfWAse2FsdDoianNvbiJ9KSxMPShlPSExKT0+e3RyeXtpZihlJiZiLnJldHJ5JiYhYi5uZXR3b3JrbGVzc09wdGlvbnMuYnlwYXNzTmV0d29ya2xlc3Mpdi5tZXRob2Q9IlBPU1QiLGIubmV0d29ya2xlc3NPcHRpb25zLndyaXRlVGhlblNlbmQ/CmcuSFUoKS53cml0ZVRoZW5TZW5kKHgsdik6Zy5IVSgpLnNlbmRBbmRXcml0ZSh4LHYpO2Vsc2UgaWYoYi5jb21wcmVzcylpZih2LnBvc3RCb2R5KXtsZXQgRz12LnBvc3RCb2R5O3R5cGVvZiBHIT09InN0cmluZyImJihHPUpTT04uc3RyaW5naWZ5KHYucG9zdEJvZHkpKTtWZCh4LEcsdixnLmVkKX1lbHNlIFZkKHgsSlNPTi5zdHJpbmdpZnkodi5wb3N0UGFyYW1zKSx2LGc4KTtlbHNlIGc4KHgsdil9Y2F0Y2goRyl7aWYoRy5uYW1lPT09IkludmFsaWRBY2Nlc3NFcnJvciIpWkUoRXJyb3IoIkFuIGV4dGVuc2lvbiBpcyBibG9ja2luZyBuZXR3b3JrIHJlcXVlc3QuIikpO2Vsc2UgdGhyb3cgRzt9fTsKZy5ycigieXROZXR3b3JrbGVzc0xvZ2dpbmdJbml0aWFsaXphdGlvbk9wdGlvbnMiKSYmSkkuaXNOd2xJbml0aWFsaXplZD9jTigpLnRoZW4oZT0+e0woZSl9KTpMKCExKX07Ck9jPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1TdygpO2lmKGImJlcpe2xldCB2PWIuc3Vic2NyaWJlKG4sZnVuY3Rpb24oKXt2YXIgaz1hcmd1bWVudHMsaD0oKT0+e0FJW3ZdJiZXLmFwcGx5JiZ0eXBlb2YgVy5hcHBseT09ImZ1bmN0aW9uIiYmVy5hcHBseShEfHx3aW5kb3csayl9Owp0cnl7bWdbbl0/aCgpOmcubiQoaCwwKX1jYXRjaCh4KXtPdCh4KX19LEQpOwpBSVt2XT0hMDtLbVtuXXx8KEttW25dPVtdKTtLbVtuXS5wdXNoKHYpO3JldHVybiB2fXJldHVybiAwfTsKUFU9ZnVuY3Rpb24obil7dmFyIFc9U3coKTtXJiYodHlwZW9mIG49PT0ibnVtYmVyIj9uPVtuXTp0eXBlb2Ygbj09PSJzdHJpbmciJiYobj1bcGFyc2VJbnQobiwxMCldKSxnLnkyKG4sRD0+e1cudW5zdWJzY3JpYmVCeUtleShEKTtkZWxldGUgQUlbRF19KSl9OwpaNT1mdW5jdGlvbihuLFcpe3ZhciBEPVN3KCk7cmV0dXJuIEQ/RC5wdWJsaXNoLmFwcGx5KEQsYXJndW1lbnRzKTohMX07CnlKPWZ1bmN0aW9uKG4pe3ZhciBXPVN3KCk7aWYoVylpZihXLmNsZWFyKG4pLG4pVWMobik7ZWxzZSBmb3IobGV0IEQgaW4gS20pVWMoRCl9OwpFYz1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPVdebjtpZighKG4tNj4+Mykpe2VYKGteMjk5MCxrXjYwMjksRCk7dmFyIGg9RFtJW2teMjk4Nl1dKyhEW0lba14yOTg2XV0/SVtrXjMwNjBdOklba14zMDY3XSkrRFtJW2teMjk2N11dK0RbSVtrXjI5ODhdXTtpZihQMChrXjMwNDUsa140NjE4LEQpKXtsZXQgTD1bXTtnLmFfKERbSVsxXV0sKEcscik9PntHIT09bnVsbCYmTFtJW2teMjk4Ml1dKGAke3J9PSR7R31gKX0pOwpsZXQgZT1MW0lba14zMDA1XV0oSVtrXjI5NDVdKTtoKz1gPyR7ZX1gfXZhciB4PWh9KG4rMl43KTxuJiYobi01fDIzKT49biYmKGI9PT1JW2teNjU4OV0mJigoaD12W0lba142NTYzXV0oSVtrXjY1NDhdKSk+PTA/KGI9YGNtbz0ke3ZbSVtrXjY1NjZdXSgwLGgpfWAsdj12W0lba142NTY2XV0oaCsxKSk6KGg9dltJW2teNjU2M11dKElba142NTM1XSkpPj0wJiYoYj1gY21vPSR7dltJW2teNjU2Nl1dKDAsaCl9YCx2PXZbSVtrXjY1NjZdXShoKzMpKSksRFtiXT12KTtyZXR1cm4geH07ClN3PWZ1bmN0aW9uKCl7cmV0dXJuIGcucWkueXRQdWJzdWJQdWJzdWJJbnN0YW5jZX07ClVjPWZ1bmN0aW9uKG4pe0ttW25dJiYobj1LbVtuXSxnLnkyKG4sVz0+e0FJW1ddJiZkZWxldGUgQUlbV119KSxuLmxlbmd0aD0wKX07CmlNPWZ1bmN0aW9uKG4sVyxEPW51bGwpe3J2aChuLFcsRCl9Owpydmg9ZnVuY3Rpb24obixXLEQ9bnVsbCl7dmFyIGI9dU0odHlwZW9mIG49PT0ic3RyaW5nIj9uOm4udG9TdHJpbmcoKSksdj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChiKSxrPXYmJmdKKHYpLGg9diYmIWs7az9XJiZXKCk6KFcmJihrPU9jKGIsVyksVz1gJHtBaShXKX1gLG9JW1ddPWspLGh8fCh2PXN6UyhuLGIsKCk9PntnSih2KXx8KGI1dCh2KSxaNShiKSxnLm4kKCgpPT57eUooYil9LDApKX0sRCkpKX07CnN6Uz1mdW5jdGlvbihuLFcsRCxiPW51bGwpe3ZhciB2PWcuekYoIlNDUklQVCIpO3YuaWQ9Vzt2Lm9ubG9hZD0oKT0+e0QmJnNldFRpbWVvdXQoRCwwKX07CnYub25yZWFkeXN0YXRlY2hhbmdlPSgpPT57c3dpdGNoKHYucmVhZHlTdGF0ZSl7Y2FzZSAibG9hZGVkIjpjYXNlICJjb21wbGV0ZSI6di5vbmxvYWQoKX19OwpiJiZ2LnNldEF0dHJpYnV0ZSgibm9uY2UiLGIpO2cuUE0odix0eXBlb2Ygbj09PSJzdHJpbmciP2Z3KG4pOm4pO249ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZG9jdW1lbnQuYm9keTtuLmluc2VydEJlZm9yZSh2LG4uZmlyc3RDaGlsZCk7cmV0dXJuIHZ9Owp1TT1mdW5jdGlvbihuKXt2YXIgVz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7Zy5OVShXLG4pO249Vy5ocmVmLnJlcGxhY2UoL15bYS16QS1aXSs6XC9cLy8sIi8vIik7cmV0dXJuYGpzLSR7c1Qobil9YH07CnpUPWZ1bmN0aW9uKG4sVyl7aWYobj09PVcpbj0hMDtlbHNlIGlmKEFycmF5LmlzQXJyYXkobikmJkFycmF5LmlzQXJyYXkoVykpbj12NChuLFcselQpO2Vsc2UgaWYoZy5mdChuKSYmZy5mdChXKSlhOmlmKGcuTFQobikubGVuZ3RoIT1nLkxUKFcpLmxlbmd0aCluPSExO2Vsc2V7Zm9yKGxldCBEIGluIG4paWYoIXpUKG5bRF0sV1tEXSkpe249ITE7YnJlYWsgYX1uPSEwfWVsc2Ugbj0hMTtyZXR1cm4gbn07Cmp3PWZ1bmN0aW9uKG4sLi4uVyl7aWYoIWxNKG4pfHxXLnNvbWUoRD0+IWxNKEQpKSl0aHJvdyBFcnJvcigiT25seSBvYmplY3RzIG1heSBiZSBtZXJnZWQuIik7CmZvcihsZXQgRCBvZiBXKVRUKG4sRCl9OwpUVD1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRCBpbiBXKWlmKGxNKFdbRF0pKXtpZihEIGluIG4mJiFsTShuW0RdKSl0aHJvdyBFcnJvcigiQ2Fubm90IG1lcmdlIGFuIG9iamVjdCBpbnRvIGEgbm9uLW9iamVjdC4iKTtEIGluIG58fChuW0RdPXt9KTtUVChuW0RdLFdbRF0pfWVsc2UgaWYoQ20oV1tEXSkpe2lmKEQgaW4gbiYmIUNtKG5bRF0pKXRocm93IEVycm9yKCJDYW5ub3QgbWVyZ2UgYW4gYXJyYXkgaW50byBhIG5vbi1hcnJheS4iKTtEIGluIG58fChuW0RdPVtdKTtCVShuW0RdLFdbRF0pfWVsc2UgbltEXT1XW0RdO3JldHVybiBufTsKQlU9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgb2YgVylsTShEKT9uLnB1c2goVFQoe30sRCkpOkNtKEQpP24ucHVzaChCVShbXSxEKSk6bi5wdXNoKEQpO3JldHVybiBufTsKbE09ZnVuY3Rpb24obil7cmV0dXJuIHR5cGVvZiBuPT09Im9iamVjdCImJiFBcnJheS5pc0FycmF5KG4pfTsKQ209ZnVuY3Rpb24obil7cmV0dXJuIHR5cGVvZiBuPT09Im9iamVjdCImJkFycmF5LmlzQXJyYXkobil9OwpnLkZpPWZ1bmN0aW9uKG49ITEpe2cuRk0uY2FsbCh0aGlzKTt0aGlzLlkkPW5ldyBCSyhuKTtnLnUodGhpcyx0aGlzLlkkKX07Ck1iPWZ1bmN0aW9uKG4pe2lmKHdpbmRvdy5jcnlwdG8mJndpbmRvdy5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKXRyeXt2YXIgVz1BcnJheShuKSxEPW5ldyBVaW50OEFycmF5KG4pO3dpbmRvdy5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKEQpO2Zvcih2YXIgYj0wO2I8Vy5sZW5ndGg7YisrKVdbYl09RFtiXTtyZXR1cm4gV31jYXRjaCh2KXt9Vz1BcnJheShuKTtmb3IoRD0wO0Q8bjtEKyspe2I9RGF0ZS5ub3coKTtmb3IobGV0IHY9MDt2PGIlMjM7disrKVdbRF09TWF0aC5yYW5kb20oKTtXW0RdPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyNTYpfWlmKHdvKWZvcihEPTEsYj0wO2I8d28ubGVuZ3RoO2IrKylXW0Qlbl1ePVdbKEQtMSklbl0vNF53by5jaGFyQ29kZUF0KGIpLEQrKztyZXR1cm4gV307CmcuUkk9ZnVuY3Rpb24obil7bj1NYihuKTt2YXIgVz1bXTtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKylXLnB1c2goIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LV8iLmNoYXJBdChuW0RdJjYzKSk7cmV0dXJuIFcuam9pbigiIil9OwpnLlFKPWZ1bmN0aW9uKCl7cmV0dXJuIGcuaV8oTWIoMTYpLG49PihuJjE1KS50b1N0cmluZygxNikpLmpvaW4oIiIpfTsKYUk9ZnVuY3Rpb24oKXsoe0NQOlc9ITEsTTY6bj0hMH09e30pO3ZhciBuLFc7aWYoZy5ycigiX2xhY3QiLHdpbmRvdyk9PW51bGwpe3ZhciBEPXBhcnNlSW50KGcuQXIoIkxBQ1QiKSwxMCk7RD1pc0Zpbml0ZShEKT9EYXRlLm5vdygpLU1hdGgubWF4KEQsMCk6LTE7Zy5HYigiX2xhY3QiLEQsd2luZG93KTtnLkdiKCJfZmFjdCIsRCx3aW5kb3cpO0Q9PS0xJiZWSigpO05ndyhXLG4pO25ldyBtWSgoKT0+e2NVKCJtb3VzZSIsMTAwKX0pfX07Cm5YPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bmV3IGcud1ooVyk7KFc9RC5nZXQoInJlcV9pZCIpKSYmbi5zZXQoInJlcV9pZCIsVyk7Zy5hXyhuLk4sKGIsdik9PntEWyJzZXQiXSh2LG51bGwpfSk7CnJldHVybiBEfTsKTmd3PWZ1bmN0aW9uKG49ITEsVz0hMCl7dmFyIEQ9d2luZG93O2cuSTkoRC5kb2N1bWVudCwia2V5ZG93biIsVkopO2cuSTkoRC5kb2N1bWVudCwia2V5dXAiLFZKKTtnLkk5KEQuZG9jdW1lbnQsIm1vdXNlZG93biIsVkopO2cuSTkoRC5kb2N1bWVudCwibW91c2V1cCIsVkopO24/Zy5JOShELCJ0b3VjaG1vdmUiLCgpPT57Y1UoInRvdWNobW92ZSIsMjAwKX0se3Bhc3NpdmU6ITB9KTooZy5JOShELCJyZXNpemUiLCgpPT57Y1UoInJlc2l6ZSIsMjAwKX0pLFcmJmcuSTkoRCwic2Nyb2xsIiwoKT0+e2NVKCJzY3JvbGwiLDIwMCl9KSk7CmcuSTkoRC5kb2N1bWVudCwidG91Y2hzdGFydCIsVkose3Bhc3NpdmU6ITB9KTtnLkk5KEQuZG9jdW1lbnQsInRvdWNoZW5kIixWSix7cGFzc2l2ZTohMH0pfTsKY1U9ZnVuY3Rpb24obixXKXtieVtuXXx8KGJ5W25dPSEwLHRhLkxTKCgpPT57VkooKTtieVtuXT0hMX0sVykpfTsKVko9ZnVuY3Rpb24oKXtnLnJyKCJfbGFjdCIsd2luZG93KT09bnVsbCYmKGFJKCksZy5ycigiX2xhY3QiLHdpbmRvdykpO3ZhciBuPURhdGUubm93KCk7Zy5HYigiX2xhY3QiLG4sd2luZG93KTtnLnJyKCJfZmFjdCIsd2luZG93KT09LTEmJmcuR2IoIl9mYWN0IixuLHdpbmRvdyk7KG49Zy5ycigieXRnbG9iYWwueXRVdGlsQWN0aXZpdHlDYWxsYmFja18iKSkmJm4oKX07Cmcudkk9ZnVuY3Rpb24oKXt2YXIgbj1nLnJyKCJfbGFjdCIsd2luZG93KTtyZXR1cm4gbj09bnVsbD8tMTpNYXRoLm1heChEYXRlLm5vdygpLW4sMCl9OwpnLmhwPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcga28obil9OwpnLnhvPWZ1bmN0aW9uKG4sVyl7bi5KLnNldChXLk5ILFcpO3ZhciBEPW4uVy5nZXQoVy5OSCk7aWYoRCl0cnl7RC5RNChuLnJlc29sdmUoVy5OSCkpfWNhdGNoKGIpe0QuSlkoYil9fTsKZ0U9ZnVuY3Rpb24obixXLEQsYj0hMSl7aWYoRC5pbmRleE9mKFcpPi0xKXRocm93IEVycm9yKGBEZXBzIGN5Y2xlIGZvcjogJHtXfWApO2lmKG4uTi5oYXMoVykpcmV0dXJuIG4uTi5nZXQoVyk7aWYoIW4uSi5oYXMoVykpe2lmKGIpcmV0dXJuO3Rocm93IEVycm9yKGBObyBwcm92aWRlciBmb3I6ICR7V31gKTt9Yj1uLkouZ2V0KFcpO0QucHVzaChXKTtpZihiLlBmIT09dm9pZCAwKXZhciB2PWIuUGY7ZWxzZSBpZihiLlJjKXY9YltnLkxYXT9lWihuLGJbZy5MWF0sRCk6W10sdj1iLlJjKC4uLnYpO2Vsc2UgaWYoYi5ZTCl7dj1iLllMO2xldCBrPXZbZy5MWF0/ZVoobix2W2cuTFhdLEQpOltdO3Y9bmV3IHYoLi4uayl9ZWxzZSB0aHJvdyBFcnJvcihgQ291bGQgbm90IHJlc29sdmUgcHJvdmlkZXJzIGZvcjogJHtXfWApO0QucG9wKCk7Yi5wbnx8bi5OLnNldChXLHYpO3JldHVybiB2fTsKZVo9ZnVuY3Rpb24obixXLEQpe3JldHVybiBXP1cubWFwKGI9PmIgaW5zdGFuY2VvZiBrbz9nRShuLGIua2V5LEQsITApOmdFKG4sYixEKSk6W119OwpnLnFqPWZ1bmN0aW9uKCl7WDR8fChYND1uZXcgcEhyKTtyZXR1cm4gWDR9Owp0cD1mdW5jdGlvbigpe3JldHVybiJoNXZjYyJpbiBHcCYmR3AuaDV2Y2MudHJhY2VFdmVudD8udHJhY2VCZWdpbiYmR3AuaDV2Y2MudHJhY2VFdmVudD8udHJhY2VFbmQ/MToicGVyZm9ybWFuY2UiaW4gR3AmJkdwLnBlcmZvcm1hbmNlLm1hcmsmJkdwLnBlcmZvcm1hbmNlLm1lYXN1cmU/MjowfTsKJG89ZnVuY3Rpb24obil7dmFyIFc9dHAoKTtzd2l0Y2goVyl7Y2FzZSAxOkdwLmg1dmNjLnRyYWNlRXZlbnQudHJhY2VCZWdpbigiWVRMUiIsbik7YnJlYWs7Y2FzZSAyOkdwLnBlcmZvcm1hbmNlLm1hcmsoYCR7bn0tc3RhcnRgKTticmVhaztjYXNlIDA6YnJlYWs7ZGVmYXVsdDpnLnBiKFcsInVua25vd24gdHJhY2UgdHlwZSIpfX07CnJFPWZ1bmN0aW9uKG4pe3ZhciBXPXRwKCk7c3dpdGNoKFcpe2Nhc2UgMTpHcC5oNXZjYy50cmFjZUV2ZW50LnRyYWNlRW5kKCJZVExSIixuKTticmVhaztjYXNlIDI6Vz1gJHtufS1zdGFydGA7bGV0IEQ9YCR7bn0tZW5kYDtHcC5wZXJmb3JtYW5jZS5tYXJrKEQpO0dwLnBlcmZvcm1hbmNlLm1lYXN1cmUobixXLEQpO2JyZWFrO2Nhc2UgMDpicmVhaztkZWZhdWx0OmcucGIoVywidW5rbm93biB0cmFjZSB0eXBlIil9fTsKWUtqPWZ1bmN0aW9uKG4pe3ZhciBXPUFycmF5LmZyb20obi5OLmtleXMoKSkuc29ydCgoRCxiKT0+KG4uTltiXS5wcmlvcml0eT8/MCktKG4uTltEXS5wcmlvcml0eT8/MCkpOwpmb3IobGV0IEQgb2YgVylXPW4uTltEXSxXLmpvYklkPT09dm9pZCAwfHxXLk1KfHwobi5zY2hlZHVsZXIuc08oVy5qb2JJZCksZy5WeCgwLFcuSmEsMTApKX07CmZSMj1mdW5jdGlvbihuLFcsRCl7SEd0JiZjb25zb2xlLmdyb3VwQ29sbGFwc2VkJiZjb25zb2xlLmdyb3VwRW5kJiYoY29uc29sZS5ncm91cENvbGxhcHNlZChgWyR7bi5jb25zdHJ1Y3Rvci5uYW1lfV0gJyR7bi5zdGF0ZX0nIHRvICcke1d9J2ApLGNvbnNvbGUubG9nKCJ3aXRoIG1lc3NhZ2U6ICIsRCksY29uc29sZS5ncm91cEVuZCgpKX07ClNLQz1mdW5jdGlvbihuLFcpe3ZhciBEPVcuZmlsdGVyKHY9PihuLko/P3YucHJpb3JpdHk/PzApPT09MTApLGI9Vy5maWx0ZXIodj0+KG4uSj8/di5wcmlvcml0eT8/MCkhPT0xMCk7CnJldHVybiBuLlguS0c/YXN5bmMoLi4udik9Pnthd2FpdCBKdlooRCwuLi52KTtzOShuLGIsLi4udil9OiguLi52KT0+e0lSMShELC4uLnYpOwpzOShuLGIsLi4udil9fTsKSnZaPWFzeW5jIGZ1bmN0aW9uKG4sLi4uVyl7Zy5EeSgpO2ZvcihsZXQgRCBvZiBuKXtsZXQgYjthOSgoKT0+e05qKEQubmFtZSk7dmFyIHY9cFgoKCk9PkQuY2FsbGJhY2soLi4uVykpOwpZbyh2KT9iPWcubCgid2ViX2xpZmVjeWNsZV9lcnJvcl9oYW5kbGluZ19raWxsc3dpdGNoIik/di50aGVuKCgpPT57SEkoRC5uYW1lKX0pOnYudGhlbigoKT0+e0hJKEQubmFtZSl9LGs9Pnt3aW5kb3cub25lcnJvcj8uKGsubWVzc2FnZSwiIiwwLDAsayk7CkhJKEQubmFtZSl9KTpISShELm5hbWUpfSk7CmImJmF3YWl0IGJ9fTsKczk9ZnVuY3Rpb24obixXLC4uLkQpe1c9Vy5tYXAoYj0+KHtKYTooKT0+e05qKGIubmFtZSk7cFgoKCk9PmIuY2FsbGJhY2soLi4uRCkpOwpISShiLm5hbWUpfSwKcHJpb3JpdHk6bi5KPz9iLnByaW9yaXR5Pz8wfSkpOwpXLmxlbmd0aCYmKG4uVz1uZXcgQXZqKFcpKX07CklSMT1mdW5jdGlvbihuLC4uLlcpe2cuRHkoKTtmb3IobGV0IEQgb2YgbilhOSgoKT0+e05qKEQubmFtZSk7cFgoKCk9PkQuY2FsbGJhY2soLi4uVykpOwpISShELm5hbWUpfSl9OwpOaj1mdW5jdGlvbihuKXtmWCYmbiYmJG8obil9OwpIST1mdW5jdGlvbihuKXtmWCYmbiYmckUobil9OwpwWD1mdW5jdGlvbihuKXtpZihnLmwoIndlYl9saWZlY3ljbGVfZXJyb3JfaGFuZGxpbmdfa2lsbHN3aXRjaCIpKXJldHVybiBuKCk7dHJ5e3JldHVybiBuKCl9Y2F0Y2goVyl7d2luZG93Lm9uZXJyb3I/LihXLm1lc3NhZ2UsIiIsMCwwLFcpfX07CkliPWZ1bmN0aW9uKCl7SnB8fChKcD1uZXcgbUV3KTtyZXR1cm4gSnB9OwpBcD1mdW5jdGlvbigpe1NafHwoU1o9cHcoZy5BcigiV09SS0VSX1NFUklBTElaQVRJT05fVVJMIikpKTtyZXR1cm4gU1p8fHZvaWQgMH07CktYPWZ1bmN0aW9uKCl7dmFyIG49QXAoKTttM3x8bj09PXZvaWQgMHx8KG0zPVhNKG4pKTtyZXR1cm4gbTN9OwpaQT1mdW5jdGlvbihuLFcpe3ZhciBEPU85KFcpO2lmKG4uTltEXSlyZXR1cm4gbi5OW0RdO3ZhciBiPU9iamVjdC5rZXlzKG4uc3RvcmUpfHxbXTtpZihiLmxlbmd0aDw9MSYmTzkoVyk9PT1iWzBdKXJldHVybiBiO3ZhciB2PVtdO2ZvcihsZXQgaD0wO2g8Yi5sZW5ndGg7aCsrKXtsZXQgeD1iW2hdLnNwbGl0KCIvIik7aWYoUEkoVy5hdXRoLHhbMF0pKXt2YXIgaz1XLmlzSnNwYjtQSShrPT09dm9pZCAwPyJ1bmRlZmluZWQiOms/InRydWUiOiJmYWxzZSIseFsxXSkmJlBJKFcuY3R0QXV0aEluZm8seFsyXSkmJihrPVcudGllcixrPWs9PT12b2lkIDA/InVuZGVmaW5lZCI6SlNPTi5zdHJpbmdpZnkoayksUEkoayx4WzNdKSYmdi5wdXNoKGJbaF0pKX19cmV0dXJuIG4uTltEXT12fTsKUEk9ZnVuY3Rpb24obixXKXtyZXR1cm4gbj09PXZvaWQgMHx8bj09PSJ1bmRlZmluZWQiPyEwOm49PT1XfTsKTzk9ZnVuY3Rpb24obil7cmV0dXJuW24uYXV0aD09PXZvaWQgMD8idW5kZWZpbmVkIjpuLmF1dGgsbi5pc0pzcGI9PT12b2lkIDA/InVuZGVmaW5lZCI6bi5pc0pzcGIsbi5jdHRBdXRoSW5mbz09PXZvaWQgMD8idW5kZWZpbmVkIjpuLmN0dEF1dGhJbmZvLG4udGllcj09PXZvaWQgMD8idW5kZWZpbmVkIjpuLnRpZXJdLmpvaW4oIi8iKX07ClU5PWZ1bmN0aW9uKCl7cmV0dXJuIGcubCgiaHRtbDVfc2VuZF9xb2Vfb25fZ2VsIil8fGcubCgid2ViX3NlbmRfdnNzM19pc29sYXRlZF9wYXlsb2FkIil9OwppeT1mdW5jdGlvbihuKXt5Uj1uO1U5KCkmJihnLnFpLnl0TG9nZ2luZ1RyYW5zcG9ydFJlZ2lzdGVyZWRDbGllbnRDdG9yXz1uKTtFOT1uZXcgbn07CnV5PWZ1bmN0aW9uKG4pe3JldHVybiBuP246VTkoKT95Unx8Zy5xaS55dExvZ2dpbmdUcmFuc3BvcnRSZWdpc3RlcmVkQ2xpZW50Q3Rvcl98fG51bGw6bnVsbH07CmRFPWZ1bmN0aW9uKCl7dmFyIG49Zy5ycigieXQubG9nZ2luZy5pbXMiKTtufHwobj1uZXcgb2IsZy5HYigieXQubG9nZ2luZy5pbXMiLG4pKTtyZXR1cm4gbn07CktfMj1mdW5jdGlvbigpe2lmKHR5cGVvZiBXb3JrZXI9PT0iZnVuY3Rpb24iJiZBcCgpJiYhenApe3ZhciBuPUQ9PntEPUQuZGF0YTtpZihELm9wPT09InNlcmlhbGl6ZWRHZWxCYXRjaCIpe3ZhciBiPWx5LmdldChELmtleSk7YiYmKFRwKEQuc2VyaWFsaXplZEJhdGNoLGIuY2xpZW50LGIucmVzb2x2ZSxiLm5ldHdvcmtsZXNzT3B0aW9ucyxiLmlzSXNvbGF0ZWQsYi51c2VWU1NFbmRwb2ludCxiLmRhbmdlcm91c0xvZ1RvVmlzaXRvclNlc3Npb24sYi5yZXF1ZXN0c091dHN0YW5kaW5nKSxseS5kZWxldGUoRC5rZXkpKX19LFc9S1goKTsKVyYmKFcuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsbiksVy5vbmVycm9yPSgpPT57bHkuY2xlYXIoKX0pOwp6cD0hMH19OwpPR3g9ZnVuY3Rpb24obixXKXtpZihuLmVuZHBvaW50PT09ImxvZ19ldmVudCIpe2paKG4pO3ZhciBEPUNYKG4pLGI9Qkkobi5wYXlsb2FkKXx8IiIsdj1GNChiKSxrPTIwMDtpZih2KXtpZih2LmVuYWJsZWQ9PT0hMSYmIWcubCgid2ViX3BheWxvYWRfcG9saWN5X2Rpc2FibGVkX2tpbGxzd2l0Y2giKSlyZXR1cm47az13RSh2LnRpZXIpO2lmKGs9PT00MDApe01qKG4sVyk7cmV0dXJufX1SYltEXT0hMDtEPXtjdHRBdXRoSW5mbzpELGlzSnNwYjohMSx0aWVyOmt9O2RFKCkuc3RvcmVQYXlsb2FkKEQsbi5wYXlsb2FkKTtRUihXLCExLEQsVlIoYikpfX07ClBXMT1mdW5jdGlvbihuLFcsRCl7aWYoVy5lbmRwb2ludD09PSJsb2dfZXZlbnQiKXtqWih2b2lkIDAsVyk7dmFyIGI9Q1goVywhMCksdj1GNChuKSxrPTIwMDtpZih2KXtpZih2LmVuYWJsZWQ9PT0hMSYmIWcubCgid2ViX3BheWxvYWRfcG9saWN5X2Rpc2FibGVkX2tpbGxzd2l0Y2giKSlyZXR1cm47az13RSh2LnRpZXIpO2lmKGs9PT00MDApe2NJKG4sVyxEKTtyZXR1cm59fVJiW2JdPSEwO2I9e2N0dEF1dGhJbmZvOmIsaXNKc3BiOiEwLHRpZXI6a307ZEUoKS5zdG9yZVBheWxvYWQoYixZdihXLnBheWxvYWQpKTtRUihELCEwLGIsVlIobikpfX07ClFSPWZ1bmN0aW9uKG4sVz0hMSxELGI9ITEpe24mJml5KG4pO249djAoInR2aHRtbDVfbG9nZ2luZ19tYXhfYmF0Y2hfYWRzX2ZvcmsiKXx8djAoInR2aHRtbDVfbG9nZ2luZ19tYXhfYmF0Y2giKXx8djAoIndlYl9sb2dnaW5nX21heF9iYXRjaCIpfHwxMDA7dmFyIHY9KDAsZy5SKSgpLGs9YWIoVyxELnRpZXIpLGg9ay5YO2ImJihrLk49ITApO2I9MDtEJiYoYj1kRSgpLmdldFNlcXVlbmNlQ291bnQoRCkpO2I+PTFFMz9uVSh7d3JpdGVUaGVuU2VuZDohMH0sVyxELnRpZXIpOmI+PW4/V3N8fChXcz1EdigoKT0+e25VKHt3cml0ZVRoZW5TZW5kOiEwfSxXLEQudGllcik7V3M9dm9pZCAwfSwwKSk6di1oPj0xMCYmKGJSKFcsRC50aWVyKSxrLlg9dil9OwpNaj1mdW5jdGlvbihuLFcpe2lmKG4uZW5kcG9pbnQ9PT0ibG9nX2V2ZW50Iil7Zy5sKCJtb3JlX2FjY3VyYXRlX2dlbF9wYXJzZXIiKSYmZEUoKS5zdG9yZVBheWxvYWQoe2lzSnNwYjohMX0sbi5wYXlsb2FkKTtqWihuKTt2YXIgRD1DWChuKSxiPW5ldyBNYXA7Yi5zZXQoRCxbbi5wYXlsb2FkXSk7dmFyIHY9Qkkobi5wYXlsb2FkKXx8IiI7KG49dXkoVykpJiZpeShuKTtyZXR1cm4gbmV3IGcuWDEoKGssaCk9PntFOSYmRTkuaXNSZWFkeSgpP3ZzKGIsRTksayxoLHtieXBhc3NOZXR3b3JrbGVzczohMH0sITAsVlIodikpOmsoKX0pfX07CmNJPWZ1bmN0aW9uKG4sVyxEKXtpZihXLmVuZHBvaW50PT09ImxvZ19ldmVudCIpe2paKHZvaWQgMCxXKTt2YXIgYj1DWChXLCEwKSx2PW5ldyBNYXA7di5zZXQoYixbWXYoVy5wYXlsb2FkKV0pOyhXPXV5KEQpKSYmaXkoVyk7cmV0dXJuIG5ldyBnLlgxKGs9PntFOSYmRTkuaXNSZWFkeSgpP2tBKHYsRTksayx7YnlwYXNzTmV0d29ya2xlc3M6ITB9LCEwLFZSKG4pKTprKCl9KX19OwpDWD1mdW5jdGlvbihuLFc9ITEpe3ZhciBEPSIiO2lmKG4uZGFuZ2Vyb3VzTG9nVG9WaXNpdG9yU2Vzc2lvbilEPSJ2aXNpdG9yT25seUFwcHJvdmVkS2V5IjtlbHNlIGlmKG4uY3R0QXV0aEluZm8pe2lmKFcpe1c9bi5jdHRBdXRoSW5mby50b2tlbjtEPW4uY3R0QXV0aEluZm87bGV0IGI9bmV3IGg2O0QudmlkZW9JZD9iLnNldFZpZGVvSWQoRC52aWRlb0lkKTpELnBsYXlsaXN0SWQmJkQyKGIsMix4QSxXSChELnBsYXlsaXN0SWQpKTtMVVtXXT1ifWVsc2UgVz1uLmN0dEF1dGhJbmZvLEQ9e30sVy52aWRlb0lkP0QudmlkZW9JZD1XLnZpZGVvSWQ6Vy5wbGF5bGlzdElkJiYoRC5wbGF5bGlzdElkPVcucGxheWxpc3RJZCksZXlbbi5jdHRBdXRoSW5mby50b2tlbl09RDtEPW4uY3R0QXV0aEluZm8udG9rZW59cmV0dXJuIER9OwpuVT1mdW5jdGlvbihuPXt9LFc9ITEsRCl7bmV3IGcuWDEoKGIsdik9Pnt2YXIgaz1hYihXLEQpLGg9ay5OO2suTj0hMTtpZihnLmwoImVuYWJsZV93ZWJfdGllcmVkX2dlbCIpJiZnLmwoIndlYl92c3Nfcm91dGluZ19jaGVja19hbGxfdGllcl9wb2xpY2llcyIpKXtsZXQgeD1hYihXLDMwMCksTD1hYihXLDIwMCk7aD1ofHx4Lk58fEwuTjt4Lk49ITE7TC5OPSExfWc0KGsuVyk7ZzQoay5KKTtrLko9MDtFOSYmRTkuaXNSZWFkeSgpP0Q9PT12b2lkIDAmJmcubCgiZW5hYmxlX3dlYl90aWVyZWRfZ2VsIik/cTEoYix2LG4sVywzMDAsaCk6cTEoYix2LG4sVyxELGgpOihiUihXLEQpLGIoKSl9KX07CnExPWZ1bmN0aW9uKG4sVyxEPXt9LGI9ITEsdj0yMDAsaz0hMSl7dmFyIGg9RTkseD1uZXcgTWFwLEw9bmV3IE1hcCxlPXtpc0pzcGI6YixjdHRBdXRoSW5mbzp2b2lkIDAsdGllcjp2fSxHPXtpc0pzcGI6YixjdHRBdXRoSW5mbzp2b2lkIDB9O2lmKGIpe2ZvcihsZXQgciBvZiBPYmplY3Qua2V5cyhSYikpVz1nLmwoImVuYWJsZV93ZWJfdGllcmVkX2dlbCIpP2RFKCkuc21hcnRFeHRyYWN0TWF0Y2hpbmdFbnRyaWVzKHtrZXlzOltlLEddLHNpemVMaW1pdDoxRTN9KTpkRSgpLmV4dHJhY3RNYXRjaGluZ0VudHJpZXMoe2lzSnNwYjohMCxjdHRBdXRoSW5mbzpyfSksVy5sZW5ndGg+MCYmeC5zZXQocixXKSwoZy5sKCJ3ZWJfZnBfdmlhX2pzcGJfYW5kX2pzb24iKSYmRC53cml0ZVRoZW5TZW5kfHwhZy5sKCJ3ZWJfZnBfdmlhX2pzcGJfYW5kX2pzb24iKSkmJmRlbGV0ZSBSYltyXTtrQSh4LGgsbixELCExLGspfWVsc2V7Zm9yKGxldCByIG9mIE9iamVjdC5rZXlzKFJiKSl4PWcubCgiZW5hYmxlX3dlYl90aWVyZWRfZ2VsIik/CmRFKCkuc21hcnRFeHRyYWN0TWF0Y2hpbmdFbnRyaWVzKHtrZXlzOlt7aXNKc3BiOiExLGN0dEF1dGhJbmZvOnIsdGllcjp2fSx7aXNKc3BiOiExLGN0dEF1dGhJbmZvOnJ9XSxzaXplTGltaXQ6MUUzfSk6ZEUoKS5leHRyYWN0TWF0Y2hpbmdFbnRyaWVzKHtpc0pzcGI6ITEsY3R0QXV0aEluZm86cn0pLHgubGVuZ3RoPjAmJkwuc2V0KHIseCksKGcubCgid2ViX2ZwX3ZpYV9qc3BiX2FuZF9qc29uIikmJkQud3JpdGVUaGVuU2VuZHx8IWcubCgid2ViX2ZwX3ZpYV9qc3BiX2FuZF9qc29uIikpJiZkZWxldGUgUmJbcl07dnMoTCxoLG4sVyxELCExLGspfX07CmJSPWZ1bmN0aW9uKG49ITEsVz0yMDApe3ZhciBEPSgpPT57blUoe3dyaXRlVGhlblNlbmQ6ITB9LG4sVyl9LGI9YWIobixXKSx2PWI9PT1HVXx8Yj09PXQ2PzVFMzpaR1o7CmcubCgid2ViX2dlbF90aW1lb3V0X2NhcCIpJiYhYi5KJiYodj1EdigoKT0+e0QoKX0sdiksYi5KPXYpOwpnNChiLlcpO3Y9Zy5BcigiTE9HR0lOR19CQVRDSF9USU1FT1VUIix2MCgid2ViX2dlbF9kZWJvdW5jZV9tcyIsMUU0KSk7Zy5sKCJzaG9ydGVuX2luaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXQiKSYmJEEmJih2PVVFdyk7dj1EdigoKT0+e3YwKCJnZWxfbWluX2JhdGNoX3NpemUiKT4wP2RFKCkuZ2V0U2VxdWVuY2VDb3VudCh7Y3R0QXV0aEluZm86dm9pZCAwLGlzSnNwYjpuLHRpZXI6V30pPj15dlMmJkQoKTpEKCl9LHYpOwpiLlc9dn07CnZzPWZ1bmN0aW9uKG4sVyxELGIsdj17fSxrLGgpe3ZhciB4PU1hdGgucm91bmQoKDAsZy5SKSgpKSxMPW4uc2l6ZSxlPXI0KGgpO2ZvcihsZXQgW0cscl1vZiBuKXtuPUc7aD1yO2xldCBOPWcuTmMoe2NvbnRleHQ6Zy5VSihXLmNvbmZpZ198fGcuUzkoKSl9KTtpZighZy5ZMihoKSYmIWcubCgidGhyb3dfZXJyX3doZW5fbG9nZXZlbnRfbWFsZm9ybWVkX2tpbGxzd2l0Y2giKSl7YigpO2JyZWFrfU4uZXZlbnRzPWg7KGg9ZXlbbl0pJiZFdkMoTixuLGgpO2RlbGV0ZSBleVtuXTtsZXQgSD1uPT09InZpc2l0b3JPbmx5QXBwcm92ZWRLZXkiO2lHaihOLHgsSCk7c3kodik7bGV0IEE9ej0+e2cubCgic3RhcnRfY2xpZW50X2djZiIpJiZ0YS5MUyhhc3luYygpPT57YXdhaXQgTjEoeil9KTsKTC0tO0x8fEQoKX0seT0wLFQ9KCk9Pnt5Kys7CmlmKHYuYnlwYXNzTmV0d29ya2xlc3MmJnk9PT0xKXRyeXtnLklJKFcsZSxOLHBVKHt3cml0ZVRoZW5TZW5kOiEwfSxILEEsVCxrKSksJEE9ITF9Y2F0Y2goeil7T3QoeiksYigpfUwtLTtMfHxEKCl9Owp0cnl7Zy5JSShXLGUsTixwVSh2LEgsQSxULGspKSwkQT0hMX1jYXRjaCh6KXtPdCh6KSxiKCl9fX07CmtBPWZ1bmN0aW9uKG4sVyxELGI9e30sdixrKXt2YXIgaD1NYXRoLnJvdW5kKCgwLGcuUikoKSkseD17dmFsdWU6bi5zaXplfSxMPW5ldyBNYXAoWy4uLm5dKTtmb3IobGV0IFtUXW9mIEwpe3ZhciBlPVQsRz1uLmdldChlKTtMPW5ldyB1RjI7dmFyIHI9Vy5jb25maWdffHxnLlM5KCksTj1uZXcgWUEsSD1uZXcgSHM7Zy5TRShILDEsci5NYik7Zy5TRShILDIsci5FRSk7S24oSCwxNixyLkZkKTtnLlNFKEgsMTcsci5pbm5lcnR1YmVDb250ZXh0Q2xpZW50VmVyc2lvbik7aWYoci5jUil7dmFyIEE9ci5jUix5PW5ldyBpOTtBLmNvbGRDb25maWdEYXRhJiZnLlNFKHksMSxBLmNvbGRDb25maWdEYXRhKTtBLmFwcEluc3RhbGxEYXRhJiZnLlNFKHksNixBLmFwcEluc3RhbGxEYXRhKTtBLmNvbGRIYXNoRGF0YSYmZy5TRSh5LDMsQS5jb2xkSGFzaERhdGEpO0EuaG90SGFzaERhdGEmJnkuVyhBLmhvdEhhc2hEYXRhKTskOShILGk5LDYyLHkpfShBPWcucWkuZGV2aWNlUGl4ZWxSYXRpbykmJgpBIT0xJiZveihILDY1LGcuQV8oQSkpO0E9a1QoKTtBIT09IiImJmcuU0UoSCw1NCxBKTtBPWh5KCk7aWYoQS5sZW5ndGg+MCl7eT1uZXcgZlU7Zm9yKGxldCB6PTA7ejxBLmxlbmd0aDt6Kyspe2xldCBDPW5ldyBKNjtnLlNFKEMsMSxBW3pdLmtleSk7RDIoQywyLEl2LFdIKEFbel0udmFsdWUpKTtOSCh5LDE1LEo2LEMpfSQ5KE4sZlUsNSx5KX1BNyhyLEgpO21UKE4pO0tQKEgpO09KKHIsSCk7UHooSCk7Zy5sKCJzdGFydF9jbGllbnRfZ2NmIikmJlptKEgpO2cuQXIoIkRFTEVHQVRFRF9TRVNTSU9OX0lEIikmJiFnLmwoInBhZ2VpZF9hc19oZWFkZXJfd2ViIikmJihyPW5ldyBTeSxnLlNFKHIsMyxnLkFyKCJERUxFR0FURURfU0VTU0lPTl9JRCIpKSk7IWcubCgiZmlsbF9kZWxlZ2F0ZV9jb250ZXh0X2luX2dlbF9raWxsc3dpdGNoIikmJihBPWcuQXIoIklOTkVSVFVCRV9DT05URVhUX1NFUklBTElaRURfREVMRUdBVElPTl9DT05URVhUIikpJiYoeT1nZShOLFN5LDMpfHxuZXcgU3ksCnI9TixBPWcuU0UoeSwxOCxBKSwkOShyLFN5LDMsQSkpO3I9SDtBPWcuQXIoIkRFVklDRSIsIiIpO2ZvcihsZXQgW3osQ11vZiBPYmplY3QuZW50cmllcyhnLml3KEEpKSlBPXosQT09PSJjYnJhbmQiP2cuU0UociwxMixDKTpBPT09ImNtb2RlbCI/Zy5TRShyLDEzLEMpOkE9PT0iY2JyIj9nLlNFKHIsODcsQyk6QT09PSJjYnJ2ZXIiP2cuU0Uociw4OCxDKTpBPT09ImNvcyI/Zy5TRShyLDE4LEMpOkE9PT0iY29zdmVyIj9nLlNFKHIsMTksQyk6QT09PSJjcGxhdGZvcm0iJiZLbihyLDQyLGhxaChDKSk7Zy5sKCJ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfZW5hYmxlZCIpJiYob3ooSCw1NSxnLnlQKHdpbmRvdy5pbm5lcldpZHRoKSksb3ooSCw1NixnLnlQKHdpbmRvdy5pbm5lckhlaWdodCkpKTtOLlcoSCk7JDkoTCxZQSwxLE4pO2lmKEg9TFVbZV0pYTp7aWYoSC5FMSgpKU49MTtlbHNlIGlmKEguZ2V0UGxheWxpc3RJZCgpKU49MjtlbHNlIGJyZWFrIGE7JDkoTCxoNiw0LEgpO0g9Z2UoTCwKWUEsMSl8fG5ldyBZQTtyPWdlKEgsU3ksMyl8fG5ldyBTeTtBPW5ldyBBNjtBLnNldFRva2VuKGUpO0tuKEEsMSxOKTtOSChyLDEyLEE2LEEpOyQ5KEgsU3ksMyxyKX1kZWxldGUgTFVbZV07ZT1lPT09InZpc2l0b3JPbmx5QXBwcm92ZWRLZXkiO21yKCl8fElZKEwsMixoKTshZSYmKE49Zy5BcigiRVZFTlRfSUQiKSkmJihIPUtVKCkscj1uZXcgT3ksZy5TRShyLDEsTiksSVkociwyLEgpLCQ5KEwsT3ksNSxyKSk7c3koYik7aWYoZy5sKCJqc3BiX3NlcmlhbGl6ZV93aXRoX3dvcmtlciIpJiYoTj1LWCgpKSYmYi53cml0ZVRoZW5TZW5kKXtseS5zZXQoUHMse2NsaWVudDpXLHJlc29sdmU6RCxuZXR3b3JrbGVzc09wdGlvbnM6Yixpc0lzb2xhdGVkOnYsdXNlVlNTRW5kcG9pbnQ6ayxkYW5nZXJvdXNMb2dUb1Zpc2l0b3JTZXNzaW9uOmUscmVxdWVzdHNPdXRzdGFuZGluZzp4fSk7Ti5wb3N0TWVzc2FnZSh7b3A6ImdlbEJhdGNoVG9TZXJpYWxpemUiLGJhdGNoUmVxdWVzdDpZdihMKSxjbGllbnRFdmVudHM6RywKa2V5OlBzfSk7UHMrKzticmVha31pZihHKXtOPVtdO2ZvcihIPTA7SDxHLmxlbmd0aDtIKyspdHJ5e04ucHVzaChuZXcgWnYoR1tIXSkpfWNhdGNoe090KG5ldyBnLlF4KCJUcmFuc3BvcnQgZmFpbGVkIHRvIGRlc2VyaWFsaXplICIrU3RyaW5nKEdbSF0pKSl9Rz1OfWVsc2UgRz1bXTtmb3IobGV0IHogb2YgRylOSChMLDMsWnYseik7Rz17c3RhcnRUaW1lOigwLGcuUikoKSx0aWNrczp7fSxpbmZvczp7fX07TD1MLmJZKCk7Ry50aWNrcy5nZWxqc3BjPSgwLGcuUikoKTtnLmwoImxvZ19qc3BiX3NlcmlhbGl6ZV9sYXRlbmN5IikmJkYzKCJnZWxfanNwYl9zZXJpYWxpemUiLEcse3NhbXBsZVJhdGU6LjF9KTtUcChMLFcsRCxiLHYsayxlLHgpfX07ClRwPWZ1bmN0aW9uKG4sVyxELGI9e30sdixrLGgseD17dmFsdWU6MH0pe2s9cjQoayk7Yj1wVShiLGgsTD0+e2cubCgic3RhcnRfY2xpZW50X2djZiIpJiZ0YS5MUyhhc3luYygpPT57YXdhaXQgTjEoTCl9KTsKeC52YWx1ZS0tO3gudmFsdWV8fEQoKX0sKCk9Pnt4LnZhbHVlLS07CngudmFsdWV8fEQoKX0sdik7CmIuaGVhZGVyc1siQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL2pzb24rcHJvdG9idWYiO2IucG9zdEJvZHlGb3JtYXQ9IkpTUEIiO2IucG9zdEJvZHk9bjtnLklJKFcsaywiIixiKTskQT0hMX07CnN5PWZ1bmN0aW9uKG4pe2cubCgiYWx3YXlzX3NlbmRfYW5kX3dyaXRlIikmJihuLndyaXRlVGhlblNlbmQ9ITEpfTsKcFU9ZnVuY3Rpb24obixXLEQsYix2KXtuPXtyZXRyeTohMCxvblN1Y2Nlc3M6RCxvbkVycm9yOmIsbmV0d29ya2xlc3NPcHRpb25zOm4sZGFuZ2Vyb3VzTG9nVG9WaXNpdG9yU2Vzc2lvbjpXLFRVOiEhdixoZWFkZXJzOnt9LHBvc3RCb2R5Rm9ybWF0OiIiLHBvc3RCb2R5OiIiLGNvbXByZXNzOmcubCgiY29tcHJlc3NfZ2VsIil8fGcubCgiY29tcHJlc3NfZ2VsX2xyIil9O21yKCkmJihuLmhlYWRlcnNbIlgtR29vZy1SZXF1ZXN0LVRpbWUiXT1KU09OLnN0cmluZ2lmeShNYXRoLnJvdW5kKCgwLGcuUikoKSkpKTtyZXR1cm4gbn07CmlHaj1mdW5jdGlvbihuLFcsRCl7bXIoKXx8KG4ucmVxdWVzdFRpbWVNcz1TdHJpbmcoVykpO2cubCgidW5zcGxpdF9nZWxfcGF5bG9hZHNfaW5fbG9ncyIpJiYobi51bnNwbGl0R2VsUGF5bG9hZHNJbkxvZ3M9ITApOyFEJiYoVz1nLkFyKCJFVkVOVF9JRCIpKSYmKEQ9S1UoKSxuLnNlcmlhbGl6ZWRDbGllbnRFdmVudElkPXtzZXJpYWxpemVkRXZlbnRJZDpXLGNsaWVudENvdW50ZXI6U3RyaW5nKEQpfSl9OwpLVT1mdW5jdGlvbigpe3ZhciBuPWcuQXIoIkJBVENIX0NMSUVOVF9DT1VOVEVSIil8fDA7bnx8KG49TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjY1NTM1LzIpKTtuKys7bj42NTUzNSYmKG49MSk7Zy5TSCgiQkFUQ0hfQ0xJRU5UX0NPVU5URVIiLG4pO3JldHVybiBufTsKRXZDPWZ1bmN0aW9uKG4sVyxEKXtpZihELnZpZGVvSWQpdmFyIGI9IlZJREVPIjtlbHNlIGlmKEQucGxheWxpc3RJZCliPSJQTEFZTElTVCI7ZWxzZSByZXR1cm47bi5jcmVkZW50aWFsVHJhbnNmZXJUb2tlblRhcmdldElkPUQ7bi5jb250ZXh0PW4uY29udGV4dHx8e307bi5jb250ZXh0LnVzZXI9bi5jb250ZXh0LnVzZXJ8fHt9O24uY29udGV4dC51c2VyLmNyZWRlbnRpYWxUcmFuc2ZlclRva2Vucz1be3Rva2VuOlcsc2NvcGU6Yn1dfTsKalo9ZnVuY3Rpb24obixXKXt2YXIgRD1nLnJyKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5lbmFibGVTY3JhcGluZ0ZvclRlc3QiKSxiPWJiKCJpbF9wYXlsb2FkX3NjcmFwaW5nIik7Yj0oYiE9PXZvaWQgMD9TdHJpbmcoYik6IiIpPT09ImVuYWJsZV9pbF9wYXlsb2FkX3NjcmFwaW5nIjtpZighRClpZihiKVV5PVtdLGcuR2IoInl0LmxvZ2dpbmcudHJhbnNwb3J0LmVuYWJsZVNjcmFwaW5nRm9yVGVzdCIsITApLGcuR2IoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnNjcmFwZWRQYXlsb2Fkc0ZvclRlc3RpbmciLFV5KSxnLkdiKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5wYXlsb2FkVG9TY3JhcGUiLCJ2aXN1YWxFbGVtZW50U2hvd24gdmlzdWFsRWxlbWVudEhpZGRlbiB2aXN1YWxFbGVtZW50QXR0YWNoZWQgc2NyZWVuQ3JlYXRlZCB2aXN1YWxFbGVtZW50R2VzdHVyZWQgdmlzdWFsRWxlbWVudFN0YXRlQ2hhbmdlZCIuc3BsaXQoIiAiKSksZy5HYigieXQubG9nZ2luZy50cmFuc3BvcnQuZ2V0U2NyYXBlZFBheWxvYWRGcm9tQ2xpZW50RXZlbnRzRnVuY3Rpb24iKSwKZy5HYigieXQubG9nZ2luZy50cmFuc3BvcnQuc2NyYXBlQ2xpZW50RXZlbnQiLCEwKTtlbHNlIHJldHVybjtEPWcucnIoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnNjcmFwZWRQYXlsb2Fkc0ZvclRlc3RpbmciKTtiPWcucnIoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnBheWxvYWRUb1NjcmFwZSIpO1cmJihXPVcucGF5bG9hZCwoVz1nLnJyKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5nZXRTY3JhcGVkUGF5bG9hZEZyb21DbGllbnRFdmVudHNGdW5jdGlvbiIpLmJpbmQoVykoKSkmJkQucHVzaChXKSk7Vz1nLnJyKCJ5dC5sb2dnaW5nLnRyYW5zcG9ydC5zY3JhcGVDbGllbnRFdmVudCIpO2lmKGImJmIubGVuZ3RoPj0xKWZvcihsZXQgdj0wO3Y8Yi5sZW5ndGg7disrKW4mJm4ucGF5bG9hZFtiW3ZdXSYmKFc/RC5wdXNoKG4ucGF5bG9hZCk6RC5wdXNoKChuPy5wYXlsb2FkKVtiW3ZdXSkpO2cuR2IoInl0LmxvZ2dpbmcudHJhbnNwb3J0LnNjcmFwZWRQYXlsb2Fkc0ZvclRlc3RpbmciLEQpfTsKbXI9ZnVuY3Rpb24oKXtyZXR1cm4gZy5sKCJ1c2VfcmVxdWVzdF90aW1lX21zX2hlYWRlciIpfHxnLmwoImxyX3VzZV9yZXF1ZXN0X3RpbWVfbXNfaGVhZGVyIil9OwpEdj1mdW5jdGlvbihuLFcpe3JldHVybiBnLmwoInRyYW5zcG9ydF91c2Vfc2NoZWR1bGVyIik9PT0hMT9nLm4kKG4sVyk6Zy5sKCJsb2dnaW5nX2F2b2lkX2Jsb2NraW5nX2R1cmluZ19uYXZpZ2F0aW9uIil8fGcubCgibHJfbG9nZ2luZ19hdm9pZF9ibG9ja2luZ19kdXJpbmdfbmF2aWdhdGlvbiIpP2cuY0IoMCwoKT0+e0liKCkuY3VycmVudFN0YXRlPT09Im5vbmUiP24oKTpJYigpLmluc3RhbGwoe25vbmU6e2NhbGxiYWNrOm59fSl9LFcpOmcuY0IoMCxuLFcpfTsKZzQ9ZnVuY3Rpb24obil7Zy5sKCJ0cmFuc3BvcnRfdXNlX3NjaGVkdWxlciIpP3RhLnNPKG4pOndpbmRvdy5jbGVhclRpbWVvdXQobil9OwpOMT1hc3luYyBmdW5jdGlvbihuKXtuPW4/LnJlc3BvbnNlQ29udGV4dD8uZ2xvYmFsQ29uZmlnR3JvdXA7dmFyIFc9Zy53KG4sb3Z0KSxEPW4/LmhvdEhhc2hEYXRhLGI9Zy53KG4sZEUyKSx2PW4/LmNvbGRIYXNoRGF0YSxrPWcucWooKS5yZXNvbHZlKGcuaHAoZy5YMykpO2smJihEJiYoVz9hd2FpdCBIeihrLEQsVyk6YXdhaXQgSHooayxEKSksdiYmKGI/YXdhaXQgZlAoayx2LGIpOmF3YWl0IGZQKGssdikpKTtXPW4/LnJhd0ZpbmNoU3RhdGljQ29uZmlnR3JvdXA7KG49bj8uZmluY2hTdGF0aWNIYXNoRGF0YSk/KEQ9Zy5xaigpLnJlc29sdmUoZy5ocCh6X3QpKSk/YXdhaXQgRC5OVSh7Y29uZmlnOld8fHt9LFlVOm58fCIifSk6KFd8fG4pJiZaRShuZXcgZy5ReCgiRmluY2hDb25maWdNYW5hZ2VyU2VydmljZSBpcyBub3QgcHJlc2VudCwgYnV0IEZpbmNoIGNvbmZpZyBkYXRhIGlzIHByZXNlbnQuIikpOlcmJlpFKG5ldyBnLlF4KCJGaW5jaCBjb25maWcgZGF0YSBpcyBwcmVzZW50LCBidXQgaGFzaCBpcyBtaXNzaW5nLiIpKX07CmFiPWZ1bmN0aW9uKG4sVz0yMDApe3JldHVybiBuP1c9PT0zMDA/R1U6bFJDOlc9PT0zMDA/dDY6VGdpfTsKRjQ9ZnVuY3Rpb24obil7aWYoZy5sKCJlbmFibGVfd2ViX3RpZXJlZF9nZWwiKSl7bj15NFtufHwiIl07dmFyIFc9Zy5xaigpLnJlc29sdmUoZy5ocChnLlgzKSk/LkxYKCk/LmxvZ2dpbmdIb3RDb25maWc/LmV2ZW50TG9nZ2luZ0NvbmZpZz8ucGF5bG9hZFBvbGljaWVzO2lmKFcpZm9yKGxldCBEPTA7RDxXLmxlbmd0aDtEKyspaWYoV1tEXS5wYXlsb2FkTnVtYmVyPT09bilyZXR1cm4gV1tEXX19OwpCST1mdW5jdGlvbihuKXtuPU9iamVjdC5rZXlzKG4pO2ZvcihsZXQgVyBvZiBuKWlmKHk0W1ddKXJldHVybiBXfTsKd0U9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9VTlNQRUNJRklFRCI6cmV0dXJuIDA7Y2FzZSAiREVMQVlFRF9FVkVOVF9USUVSX0RFRkFVTFQiOnJldHVybiAxMDA7Y2FzZSAiREVMQVlFRF9FVkVOVF9USUVSX0RJU1BBVENIX1RPX0VNUFRZIjpyZXR1cm4gMjAwO2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9GQVNUIjpyZXR1cm4gMzAwO2Nhc2UgIkRFTEFZRURfRVZFTlRfVElFUl9JTU1FRElBVEUiOnJldHVybiA0MDA7ZGVmYXVsdDpyZXR1cm4gMjAwfX07ClZSPWZ1bmN0aW9uKG4pe3JldHVybiBuPT09ImdlbERlYnVnZ2luZ0V2ZW50Inx8bj09PSJ3YXRjaFRpbWVTZWdtZW50In07CnI0PWZ1bmN0aW9uKG49ITEpe3JldHVybiBuJiZnLmwoInZzc190aHJvdWdoX2dlbF92aWRlb19zdGF0cyIpPyJ2aWRlb19zdGF0cyI6ImxvZ19ldmVudCJ9Owp1Uj1mdW5jdGlvbihuLFcsRCxiPXt9KXt2YXIgdj17fSxrPU1hdGgucm91bmQoYi50aW1lc3RhbXB8fCgwLGcuUikoKSk7di5ldmVudFRpbWVNcz1rPE51bWJlci5NQVhfU0FGRV9JTlRFR0VSP2s6MDt2W25dPVc7bj1nLnZJKCk7di5jb250ZXh0PXtsYXN0QWN0aXZpdHlNczpTdHJpbmcoYi50aW1lc3RhbXB8fCFpc0Zpbml0ZShuKT8tMTpuKX07Yi5zZXF1ZW5jZUdyb3VwJiYhZy5sKCJ3ZWJfZ2VsX3NlcXVlbmNlX2luZm9fa2lsbHN3aXRjaCIpJiYobj12LmNvbnRleHQsVz1iLnNlcXVlbmNlR3JvdXAsVz17aW5kZXg6RXkoVyksZ3JvdXBLZXk6V30sbi5zZXF1ZW5jZT1XLGIuZW5kT2ZTZXF1ZW5jZSYmZGVsZXRlIGlSW2Iuc2VxdWVuY2VHcm91cF0pO2cubCgid2ViX3RhZ19hdXRvbWF0ZWRfbG9nX2V2ZW50cyIpJiYodi5jb250ZXh0LmF1dG9tYXRlZExvZ0V2ZW50U291cmNlPWIuYXV0b21hdGVkTG9nRXZlbnRTb3VyY2UpOyhiLnNlbmRJc29sYXRlZFBheWxvYWQ/TWo6T0d4KSh7ZW5kcG9pbnQ6ImxvZ19ldmVudCIsCnBheWxvYWQ6dixjdHRBdXRoSW5mbzpiLmN0dEF1dGhJbmZvLGRhbmdlcm91c0xvZ1RvVmlzaXRvclNlc3Npb246Yi5kYW5nZXJvdXNMb2dUb1Zpc2l0b3JTZXNzaW9ufSxEKX07Cm92PWZ1bmN0aW9uKG49ITEpe25VKHZvaWQgMCxuKX07CkV5PWZ1bmN0aW9uKG4pe2lSW25dPW4gaW4gaVI/aVJbbl0rMTowO3JldHVybiBpUltuXX07CmcuelU9ZnVuY3Rpb24obixXLEQ9e30pe3ZhciBiPWcuZDQ7Zy5BcigieXRMb2dnaW5nRXZlbnRzRGVmYXVsdERpc2FibGVkIiwhMSkmJmcuZDQ9PT1nLmQ0JiYoYj1udWxsKTt1UihuLFcsYixEKX07ClRVPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgbFIoe3RyYWNraW5nUGFyYW1zOm59KX07Cmp5PWZ1bmN0aW9uKG4sVyxELGIsdixrKXt2YXIgaD1qelorKztyZXR1cm4gbmV3IGxSKHt2ZVR5cGU6bix2ZUNvdW50ZXI6aCxlbGVtZW50SW5kZXg6RCxkYXRhRWxlbWVudDpXLHlvdXR1YmVEYXRhOmIsanNwYllvdXR1YmVEYXRhOnYsbG9nZ2luZ0RpcmVjdGl2ZXM6a30pfTsKQ1U9ZnVuY3Rpb24obj0wKXtyZXR1cm4gZy5BcigiY2xpZW50LXNjcmVlbi1ub25jZS1zdG9yZSIse30pW25dfTsKQ1dpPWZ1bmN0aW9uKG4sVz0wKXt2YXIgRD1nLkFyKCJjbGllbnQtc2NyZWVuLW5vbmNlLXN0b3JlIik7RHx8KEQ9e30sZy5TSCgiY2xpZW50LXNjcmVlbi1ub25jZS1zdG9yZSIsRCkpO0RbV109bn07CkJzPWZ1bmN0aW9uKG49MCl7cmV0dXJuIG49PT0wPyJST09UX1ZFX1RZUEUiOmBST09UX1ZFX1RZUEUuJHtufWB9OwpGUj1mdW5jdGlvbihuPTApe3JldHVybiBnLkFyKEJzKG4pKX07Cnc0PWZ1bmN0aW9uKG49MCl7cmV0dXJuKG49RlIobikpP25ldyBsUih7dmVUeXBlOm4seW91dHViZURhdGE6dm9pZCAwLGpzcGJZb3V0dWJlRGF0YTp2b2lkIDB9KTpudWxsfTsKTTE9ZnVuY3Rpb24oKXt2YXIgbj1nLkFyKCJjc24tdG8tY3R0LWF1dGgtaW5mbyIpO258fChuPXt9LGcuU0goImNzbi10by1jdHQtYXV0aC1pbmZvIixuKSk7cmV0dXJuIG59OwpCZ3I9ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LnZhbHVlcyhnLkFyKCJjbGllbnQtc2NyZWVuLW5vbmNlLXN0b3JlIix7fSkpLmZpbHRlcihuPT5uIT09dm9pZCAwKX07CmcuUnY9ZnVuY3Rpb24obj0wKXtuPUNVKG4pO2lmKCFuJiYhZy5BcigiVVNFX0NTTl9GQUxMQkFDSyIsITApKXJldHVybiBudWxsO258fChuPSJVTkRFRklORURfQ1NOIik7cmV0dXJuIG4/bjpudWxsfTsKd0hDPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBvZiBPYmplY3QudmFsdWVzKEZfVSkpaWYoZy5SdihXKT09PW4pcmV0dXJuITA7cmV0dXJuITF9OwpNV3c9ZnVuY3Rpb24obixXLEQpe3ZhciBiPU0xKCk7KEQ9Zy5SdihEKSkmJmRlbGV0ZSBiW0RdO1cmJihiW25dPVcpfTsKUTQ9ZnVuY3Rpb24obil7cmV0dXJuIE0xKClbbl19Owpjcz1mdW5jdGlvbihuLFcsRD0wLGIpe2lmKG4hPT1DVShEKXx8VyE9PWcuQXIoQnMoRCkpKWlmKE1XdyhuLGIsRCksQ1dpKG4sRCksZy5TSChCcyhEKSxXKSxXPSgpPT57c2V0VGltZW91dCgoKT0+e24mJmcuelUoImZvcmVncm91bmRIZWFydGJlYXRTY3JlZW5Bc3NvY2lhdGVkIix7Y2xpZW50RG9jdW1lbnROb25jZTpWNCxjbGllbnRTY3JlZW5Ob25jZTpufSl9LDApfSwicmVxdWVzdEFuaW1hdGlvbkZyYW1lImluIHdpbmRvdyl0cnl7d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShXKX1jYXRjaCh2KXtXKCl9ZWxzZSBXKCl9OwpuND1mdW5jdGlvbihuLFcpe3ZhciBEPWcuQXIoIlZBTElEX1NFU1NJT05fVEVNUERBVEFfRE9NQUlOUyIsW10pLGI9Zy5JUCh3aW5kb3cubG9jYXRpb24uaHJlZik7YiYmRC5wdXNoKGIpO2I9Zy5JUChuKTtpZihnLmpqKEQsYil8fCFiJiZnLmpVKG4sIi8iKSlpZihEPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKSxnLk5VKEQsbiksbj1ELmhyZWYpaWYobj1tVyhuKSxuPUtwKG4pKWlmKCFXLmNzbiYmKFcuaXRjdHx8Vy52ZWQpJiYoVz1PYmplY3QuYXNzaWduKHtjc246Zy5SdigpfSxXKSksdil7dmFyIHY9cGFyc2VJbnQodiwxMCk7aXNGaW5pdGUodikmJnY+MCYmYXYobixXLHYpfWVsc2UgYXYobixXKX07CmF2PWZ1bmN0aW9uKG4sVyxEKXtuPVdhKG4pO1c9Vz95RyhXKToiIjtEPUR8fDU7Zy5hSygpJiZJSyhuLFcsRCl9OwpXYT1mdW5jdGlvbihuKXtmb3IobGV0IFcgb2YgUl9NKW49VDUobixXKTtyZXR1cm4iU1QtIitzVChuKS50b1N0cmluZygzNil9OwpnLkRwPWZ1bmN0aW9uKG4pe2lmKG4uc2ltcGxlVGV4dClyZXR1cm4gbi5zaW1wbGVUZXh0O2lmKG4ucnVucyl7bGV0IFc9W107Zm9yKGxldCBEIG9mIG4ucnVucylELnRleHQmJlcucHVzaChELnRleHQpO3JldHVybiBXLmpvaW4oIiIpfXJldHVybiIifTsKZy5iZz1mdW5jdGlvbihuKXtpZihuLnNpbXBsZVRleHQpcmV0dXJuIG49ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobi5zaW1wbGVUZXh0KSxuO3ZhciBXPVtdO2lmKG4ucnVucylmb3IobGV0IHg9MDt4PG4ucnVucy5sZW5ndGg7eCsrKXt2YXIgRD1uLnJ1bnNbeF07aWYoRC50ZXh0KXt2YXIgYj1XLHY9Yi5wdXNoLGs9bnVsbDt2YXIgaD1ELnRleHQ7RC5ib2xkJiYoaz1nLmRtKCJCIixudWxsLGt8fGgpKTtELml0YWxpY3MmJihrPWcuZG0oIkkiLG51bGwsa3x8aCkpO0Quc3RyaWtldGhyb3VnaCYmKGs9Zy5kbSgiU1RSSUtFIixudWxsLGt8fGgpKTtELm5hdmlnYXRpb25FbmRwb2ludCYmRC5uYXZpZ2F0aW9uRW5kcG9pbnQudXJsRW5kcG9pbnQmJihEPUQubmF2aWdhdGlvbkVuZHBvaW50LnVybEVuZHBvaW50LGs9Zy5kbSgiQSIsbnVsbCxrfHxoKSxnLk5VKGssRC51cmwpLEQudGFyZ2V0PT0iVEFSR0VUX05FV19XSU5ET1ciJiYoay50YXJnZXQ9Il9ibGFuayIpKTtoPWt8fGcuZG0oIlNQQU4iLApudWxsLGgpO3YuY2FsbChiLGgpfX1yZXR1cm4gVy5sZW5ndGg9PTE/V1swXTpnLmRtKCJTUEFOIixudWxsLFcpfTsKUXoxPWZ1bmN0aW9uKG4pe2lmKG4ubmFtZT09PSJKYXZhRXhjZXB0aW9uIilyZXR1cm4hMDtuPW4uc3RhY2s7cmV0dXJuIG4uaW5jbHVkZXMoImNocm9tZTovLyIpfHxuLmluY2x1ZGVzKCItZXh0ZW5zaW9uOi8vIil8fG4uaW5jbHVkZXMoIndlYmtpdC1tYXNrZWQtdXJsOi8vIil9OwpWV3g9ZnVuY3Rpb24obil7aWYoIW4uc3RhY2spcmV0dXJuITA7dmFyIFc9IW4uc3RhY2suaW5jbHVkZXMoIlxuIik7cmV0dXJuIFcmJm4uc3RhY2suaW5jbHVkZXMoIkVycm9yVHlwZTogIil8fFcmJm4uc3RhY2suaW5jbHVkZXMoIkFub255bW91cyBmdW5jdGlvbiAoVW5rbm93biBzY3JpcHQiKXx8bi5zdGFjay50b0xvd2VyQ2FzZSgpPT09Im5vdCBhdmFpbGFibGUifHxuLmZpbGVOYW1lPT09InVzZXItc2NyaXB0Inx8bi5maWxlTmFtZS5zdGFydHNXaXRoKCJ1c2VyLXNjcmlwdDoiKT8hMDohMX07CmhQPWZ1bmN0aW9uKCl7aWYoIXZhKXt2YXIgbj12YT1uZXcgY3ZoO24uTjkubGVuZ3RoPTA7bi5rby5sZW5ndGg9MDtrQihuLGFSUyl9cmV0dXJuIHZhfTsKa0I9ZnVuY3Rpb24obixXKXtXLk45JiZuLk45LnVuc2hpZnQuYXBwbHkobi5OOSxXLk45KTtXLmtvJiZuLmtvLnVuc2hpZnQuYXBwbHkobi5rbyxXLmtvKX07Cm45dz1mdW5jdGlvbihuKXt2YXIgVz1uLmxlbmd0aCxEPTAsYj0oKT0+bi5jaGFyQ29kZUF0KEQrKyk7CmRve3ZhciB2PXhCKGIpO2lmKHY9PT1JbmZpbml0eSlicmVhaztsZXQgaz12Pj4zO3N3aXRjaCh2Jjcpe2Nhc2UgMDp2PXhCKGIpO2lmKGs9PT0yKXJldHVybiB2O2JyZWFrO2Nhc2UgMTppZihrPT09MilyZXR1cm47RCs9ODticmVhaztjYXNlIDI6dj14QihiKTtpZihrPT09MilyZXR1cm4gbi5zdWJzdHIoRCx2KTtEKz12O2JyZWFrO2Nhc2UgNTppZihrPT09MilyZXR1cm47RCs9NDticmVhaztkZWZhdWx0OnJldHVybn19d2hpbGUoRDxXKX07CnhCPWZ1bmN0aW9uKG4pe3ZhciBXPW4oKSxEPVcmMTI3O2lmKFc8MTI4KXJldHVybiBEO1c9bigpO0R8PShXJjEyNyk8PDc7aWYoVzwxMjgpcmV0dXJuIEQ7Vz1uKCk7RHw9KFcmMTI3KTw8MTQ7aWYoVzwxMjgpcmV0dXJuIEQ7Vz1uKCk7cmV0dXJuIFc8MTI4P0R8KFcmMTI3KTw8MjE6SW5maW5pdHl9OwpnSz1mdW5jdGlvbihuLFcsRCxiKXtpZihuKWlmKEFycmF5LmlzQXJyYXkobikpe3ZhciB2PWI7Zm9yKGI9MDtiPG4ubGVuZ3RoJiYhKG5bYl0mJih2Kz1MNChiLG5bYl0sVyxEKSx2PjUwMCkpO2IrKyk7Yj12fWVsc2UgaWYodHlwZW9mIG49PT0ib2JqZWN0Iilmb3IodiBpbiBuKXtpZihuW3ZdKXthOnt2YXIgaz12O3ZhciBoPW5bdl0seD1XLEw9RDtpZih0eXBlb2YgaCE9PSJzdHJpbmcifHxrIT09ImNsaWNrVHJhY2tpbmdQYXJhbXMiJiZrIT09InRyYWNraW5nUGFyYW1zIil7az0wO2JyZWFrIGF9az0oaD1uOXcoYXRvYihoLnJlcGxhY2UoLy0vZywiKyIpLnJlcGxhY2UoL18vZywiLyIpKSkpP0w0KGAke2t9LnZlYCxoLHgsTCk6MH1iKz1rO2IrPUw0KHYsblt2XSxXLEQpO2lmKGI+NTAwKWJyZWFrfX1lbHNlIERbV109ZWkobiksYis9RFtXXS5sZW5ndGg7ZWxzZSBEW1ddPWVpKG4pLGIrPURbV10ubGVuZ3RoO3JldHVybiBifTsKTDQ9ZnVuY3Rpb24obixXLEQsYil7RCs9YC4ke259YDtuPWVpKFcpO2JbRF09bjtyZXR1cm4gRC5sZW5ndGgrbi5sZW5ndGh9OwplaT1mdW5jdGlvbihuKXt0cnl7cmV0dXJuKHR5cGVvZiBuPT09InN0cmluZyI/bjpTdHJpbmcoSlNPTi5zdHJpbmdpZnkobikpKS5zdWJzdHIoMCw1MDApfWNhdGNoKFcpe3JldHVybmB1bmFibGUgdG8gc2VyaWFsaXplICR7dHlwZW9mIG59ICgke1cubWVzc2FnZX0pYH19OwpXTlU9ZnVuY3Rpb24obixXPXt9KXtpZihuPW4uelope2xldCBEPW4uSngsYj1uLmQ2O249W1siY29tcG9uZW50U3RhY2siLG4ubUldLFsid2l6VGFnTmFtZSIsbi50YWdOYW1lXSxbIndpek93bmVyVHJhY2UiLG4uRHU/LmpvaW4oIiA+ICIpXSxbImVycm9yU2V2ZXJpdHkiLEQ/LnRvU3RyaW5nKCldLFsid2l6RmVhdHVyZUZsYWdzIixiP09iamVjdC5lbnRyaWVzKGIpLmpvaW4oIlxuIik6dm9pZCAwXV07Zm9yKGxldCBbdixrXW9mIG4pbj1rLG4hPT12b2lkIDAmJihXW3ZdPW4pfXJldHVybiBXfTsKZy5xZz1mdW5jdGlvbihuKXtnLlhqKG4pfTsKZy5HcT1mdW5jdGlvbihuKXtnLlhqKG4sIldBUk5JTkciKX07CmcuWGo9ZnVuY3Rpb24obixXPSJFUlJPUiIpe3ZhciBEPXt9O0QubmFtZT1nLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsMSk7RC52ZXJzaW9uPWcuQXIoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9WRVJTSU9OIik7REh0KG4sRCxXKX07CkRIdD1mdW5jdGlvbihuLFcsRD0iRVJST1IiKXtpZihuKXtuLmhhc093blByb3BlcnR5KCJsZXZlbCIpJiZuLmxldmVsJiYoRD1uLmxldmVsKTtpZihnLmwoIndpel9lbmFibGVfbWV0YWRhdGFfZXh0cmFjdGlvbl9raWxsc3dpdGNoIikpe3ZhciBiPVc7aWYoIWI/LmNvbXBvbmVudFN0YWNrKXt2YXIgdj1uLnpaPy5tSTt2JiYoYnx8KGI9e30pLGIuY29tcG9uZW50U3RhY2s9dil9Vz1ifHxXfWVsc2UgVz1XTlUobixXKSxiPW4uelo/Lkp4LGIhPT12b2lkIDAmJkQhPT0iSUdOT1JFRCImJihEPWI+PTM/IkVSUk9SIjoiV0FSTklORyIpO2lmKGcubCgiY29uc29sZV9sb2dfanNfZXhjZXB0aW9ucyIpfHxbInRlc3QiLCJkZXYiLCJhdXRvcHVzaCIsInN0YWdpbmciXS5pbmNsdWRlcyhnLkFyKCJTRVJWRVJfVkVSU0lPTiIpKSliPVtdLGIucHVzaChgTmFtZTogJHtuLm5hbWV9YCksYi5wdXNoKGBNZXNzYWdlOiAke24ubWVzc2FnZX1gKSxuLmhhc093blByb3BlcnR5KCJwYXJhbXMiKSYmYi5wdXNoKGBFcnJvciBQYXJhbXM6ICR7SlNPTi5zdHJpbmdpZnkobi5wYXJhbXMpfWApLApuLmhhc093blByb3BlcnR5KCJhcmdzIikmJmIucHVzaChgRXJyb3IgYXJnczogJHtKU09OLnN0cmluZ2lmeShuLmFyZ3MpfWApLGIucHVzaChgRmlsZSBuYW1lOiAke24uZmlsZU5hbWV9YCksYi5wdXNoKGBTdGFja3RyYWNlOiAke24uc3RhY2t9YCksYj1iLmpvaW4oIlxuIiksd2luZG93LmNvbnNvbGUubG9nKGIsbik7aWYoISh0UD49NSkpe2I9W107Zm9yKGsgb2YgYm4yKXRyeXtrKCkmJmIucHVzaChrKCkpfWNhdGNoKEEpe312YXIgaz1iO2s9Wy4uLnY5MiwuLi5rXTt2YXIgaD1yaWIobik7Yj1oLm1lc3NhZ2V8fCJVbmtub3duIEVycm9yIjt2PWgubmFtZXx8IlVua25vd25FcnJvciI7dmFyIHg9aC5zdGFja3x8bi5TdHx8Ik5vdCBhdmFpbGFibGUiO2lmKHguc3RhcnRzV2l0aChgJHt2fTogJHtifWApKXt2YXIgTD14LnNwbGl0KCJcbiIpO0wuc2hpZnQoKTt4PUwuam9pbigiXG4iKX1MPWgubGluZU51bWJlcnx8Ik5vdCBhdmFpbGFibGUiO2g9aC5maWxlTmFtZXx8Ik5vdCBhdmFpbGFibGUiOwpsZXQgSD0wO2lmKG4uaGFzT3duUHJvcGVydHkoImFyZ3MiKSYmbi5hcmdzJiZuLmFyZ3MubGVuZ3RoKWZvcih2YXIgZT0wO2U8bi5hcmdzLmxlbmd0aCYmIShIPWdLKG4uYXJnc1tlXSxgcGFyYW1zLiR7ZX1gLFcsSCksSD49NTAwKTtlKyspO2Vsc2UgaWYobi5oYXNPd25Qcm9wZXJ0eSgicGFyYW1zIikmJm4ucGFyYW1zKXtsZXQgQT1uLnBhcmFtcztpZih0eXBlb2Ygbi5wYXJhbXM9PT0ib2JqZWN0Iilmb3IoZSBpbiBBKXtpZighQVtlXSljb250aW51ZTtsZXQgeT1gcGFyYW1zLiR7ZX1gLFQ9ZWkoQVtlXSk7V1t5XT1UO0grPXkubGVuZ3RoK1QubGVuZ3RoO2lmKEg+NTAwKWJyZWFrfWVsc2UgVy5wYXJhbXM9ZWkoQSl9aWYoay5sZW5ndGgpZm9yKGU9MDtlPGsubGVuZ3RoJiYhKEg9Z0soa1tlXSxgcGFyYW1zLmNvbnRleHQuJHtlfWAsVyxIKSxIPj01MDApO2UrKyk7bmF2aWdhdG9yLnZlbmRvciYmIVcuaGFzT3duUHJvcGVydHkoInZlbmRvciIpJiYoV1siZGV2aWNlLnZlbmRvciJdPQpuYXZpZ2F0b3IudmVuZG9yKTtlPXttZXNzYWdlOmIsbmFtZTp2LGxpbmVOdW1iZXI6TCxmaWxlTmFtZTpoLHN0YWNrOngscGFyYW1zOlcsc2FtcGxlV2VpZ2h0OjF9O1c9TnVtYmVyKG4uY29sdW1uTnVtYmVyKTtpc05hTihXKXx8KGUubGluZU51bWJlcj1gJHtlLmxpbmVOdW1iZXJ9OiR7V31gKTtpZihuLmxldmVsPT09IklHTk9SRUQiKXZhciBHPTA7ZWxzZSBhOntuPWhQKCk7Zm9yKEcgb2Ygbi5OOSlpZihlLm1lc3NhZ2UmJmUubWVzc2FnZS5tYXRjaChHLktSKSl7Rz1HLndlaWdodDticmVhayBhfWZvcih2YXIgciBvZiBuLmtvKWlmKHIuY2FsbGJhY2soZSkpe0c9ci53ZWlnaHQ7YnJlYWsgYX1HPTF9ZS5zYW1wbGVXZWlnaHQ9RztHPWU7Zm9yKHZhciBOIG9mIGskYil7aWYoIU4uWXpbRy5uYW1lXSljb250aW51ZTtyPU4uWXpbRy5uYW1lXTtmb3IobGV0IEEgb2Ygcil7cj1HLm1lc3NhZ2UubWF0Y2goQS53Yik7aWYoIXIpY29udGludWU7Ry5wYXJhbXNbInBhcmFtcy5lcnJvci5vcmlnaW5hbCJdPQpyWzBdO249QS5ncm91cHM7ZT17fTtmb3IoVz0wO1c8bi5sZW5ndGg7VysrKWVbbltXXV09cltXKzFdLEcucGFyYW1zW2BwYXJhbXMuZXJyb3IuJHtuW1ddfWBdPXJbVysxXTtHLm1lc3NhZ2U9Ti5HMShlKTticmVha319Ry5wYXJhbXN8fChHLnBhcmFtcz17fSk7Tj1oUCgpO0cucGFyYW1zWyJwYXJhbXMuZXJyb3JTZXJ2aWNlU2lnbmF0dXJlIl09YG1zZz0ke04uTjkubGVuZ3RofSZjYj0ke04ua28ubGVuZ3RofWA7Ry5wYXJhbXNbInBhcmFtcy5zZXJ2aWNlV29ya2VyIl09ImZhbHNlIjtnLnFpLmRvY3VtZW50JiZnLnFpLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwmJihHLnBhcmFtc1sicGFyYW1zLmZzY3JpcHRzIl09U3RyaW5nKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoInNjcmlwdDpub3QoW25vbmNlXSkiKS5sZW5ndGgpKTsobmV3ICRCKHJLLCJzYW1wbGUiKSkuY29uc3RydWN0b3IhPT0kQiYmKEcucGFyYW1zWyJwYXJhbXMuZmNvbnN0Il09InRydWUiKTt3aW5kb3cueXRlcnImJgp0eXBlb2Ygd2luZG93Lnl0ZXJyPT09ImZ1bmN0aW9uIiYmd2luZG93Lnl0ZXJyKEcpO0cuc2FtcGxlV2VpZ2h0PT09MHx8SVUuaGFzKEcubWVzc2FnZSl8fGhUUyhHLEQpfX19OwpoVFM9ZnVuY3Rpb24obixXPSJFUlJPUiIpe2lmKFc9PT0iRVJST1IiKXtTaS5XSigiaGFuZGxlRXJyb3IiLG4pO2lmKGcubCgicmVjb3JkX2FwcF9jcmFzaGVkX3dlYiIpJiZBUD09PTAmJm4uc2FtcGxlV2VpZ2h0PT09MSl7QVArKzt2YXIgRD17YXBwQ3Jhc2hUeXBlOiJBUFBfQ1JBU0hfVFlQRV9CUkVBS1BBRCJ9O2cubCgicmVwb3J0X2NsaWVudF9lcnJvcl93aXRoX2FwcF9jcmFzaF9rcyIpfHwoRC5zeXN0ZW1IZWFsdGg9e2NyYXNoRGF0YTp7Y2xpZW50RXJyb3I6e2xvZ01lc3NhZ2U6e21lc3NhZ2U6bi5tZXNzYWdlfX19fSk7Zy56VSgiYXBwQ3Jhc2hlZCIsRCl9eEhNKyt9ZWxzZSBXPT09IldBUk5JTkciJiZTaS5XSigiaGFuZGxlV2FybmluZyIsbik7aWYoZy5sKCJrZXZsYXJfZ2VsX2Vycm9yX3JvdXRpbmciKSl7RD17fTtiOntmb3IoYiBvZiBMTkMpaWYoZy51YihiLnRvTG93ZXJDYXNlKCkpKXt2YXIgYj0hMDticmVhayBifWI9ITF9aWYoYilEPXZvaWQgMDtlbHNle3ZhciB2PQp7c3RhY2tUcmFjZTpuLnN0YWNrfTtuLmZpbGVOYW1lJiYodi5maWxlbmFtZT1uLmZpbGVOYW1lKTtiPW4ubGluZU51bWJlciYmbi5saW5lTnVtYmVyLnNwbGl0P24ubGluZU51bWJlci5zcGxpdCgiOiIpOltdO2IubGVuZ3RoIT09MCYmKGIubGVuZ3RoIT09MXx8aXNOYU4oTnVtYmVyKGJbMF0pKT9iLmxlbmd0aCE9PTJ8fGlzTmFOKE51bWJlcihiWzBdKSl8fGlzTmFOKE51bWJlcihiWzFdKSl8fCh2LmxpbmVOdW1iZXI9TnVtYmVyKGJbMF0pLHYuY29sdW1uTnVtYmVyPU51bWJlcihiWzFdKSk6di5saW5lTnVtYmVyPU51bWJlcihiWzBdKSk7Yj17bGV2ZWw6IkVSUk9SX0xFVkVMX1VOS05PV04iLG1lc3NhZ2U6bi5tZXNzYWdlLGVycm9yQ2xhc3NOYW1lOm4ubmFtZSxzYW1wbGVXZWlnaHQ6bi5zYW1wbGVXZWlnaHR9O1c9PT0iRVJST1IiP2IubGV2ZWw9IkVSUk9SX0xFVkVMX0VSUk9SIjpXPT09IldBUk5JTkciJiYoYi5sZXZlbD0iRVJST1JfTEVWRUxfV0FSTk5JTkciKTt2PXtpc09iZnVzY2F0ZWQ6ITAsCmJyb3dzZXJTdGFja0luZm86dn07RC5wYWdlVXJsPXdpbmRvdy5sb2NhdGlvbi5ocmVmO0Qua3ZQYWlycz1bXTtnLkFyKCJGRVhQX0VYUEVSSU1FTlRTIikmJihELmV4cGVyaW1lbnRJZHM9Zy5BcigiRkVYUF9FWFBFUklNRU5UUyIpKTt2YXIgaz1nLkFyKCJMQVRFU1RfRUNBVENIRVJfU0VSVklDRV9UUkFDS0lOR19QQVJBTVMiKTtpZighbXkoIndlYl9kaXNhYmxlX2dlbF9zdHBfZWNhdGNoZXJfa2lsbHN3aXRjaCIpJiZrKWZvcih2YXIgaCBvZiBPYmplY3Qua2V5cyhrKSlELmt2UGFpcnMucHVzaCh7a2V5OmgsdmFsdWU6U3RyaW5nKGtbaF0pfSk7aWYoaD1uLnBhcmFtcylmb3IodmFyIHggb2YgT2JqZWN0LmtleXMoaCkpRC5rdlBhaXJzLnB1c2goe2tleTpgY2xpZW50LiR7eH1gLHZhbHVlOlN0cmluZyhoW3hdKX0pO2lmKHg9bi5wYXJhbXM/LnNlc3Npb25SZXBsYXlJZClELnNlc3Npb25SZXBsYXlJZD1TdHJpbmcoeCk7eD1nLkFyKCJTRVJWRVJfTkFNRSIpO2g9Zy5BcigiU0VSVkVSX1ZFUlNJT04iKTsKeCYmaCYmKEQua3ZQYWlycy5wdXNoKHtrZXk6InNlcnZlci5uYW1lIix2YWx1ZTp4fSksRC5rdlBhaXJzLnB1c2goe2tleToic2VydmVyLnZlcnNpb24iLHZhbHVlOmh9KSk7KHg9Zy5BcigiUExBWUVSX0NMSUVOVF9WRVJTSU9OIikpJiZELmt2UGFpcnMucHVzaCh7a2V5OiJjbGllbnQucGxheWVyLnZlcnNpb24iLHZhbHVlOnh9KTtEPXtlcnJvck1ldGFkYXRhOkQsc3RhY2tUcmFjZTp2LGxvZ01lc3NhZ2U6Yn19aWYoRCYmKGcuelUoImNsaWVudEVycm9yIixEKSxXPT09IkVSUk9SInx8Zy5sKCJlcnJvcnNfZmx1c2hfZ2VsX2Fsd2F5c19raWxsc3dpdGNoIikpKWE6e2lmKGcubCgid2ViX2ZwX3ZpYV9qc3BiIikpe0Q9bTE7bTE9W107aWYoRClmb3IodmFyIEwgb2YgRCl1UihMLnBheWxvYWROYW1lLEwucGF5bG9hZCxnLmQ0LEwub3B0aW9ucyk7b3YoITApO2lmKCFnLmwoIndlYl9mcF92aWFfanNwYl9hbmRfanNvbiIpKWJyZWFrIGF9b3YoKX19aWYoIWcubCgic3VwcHJlc3NfZXJyb3JfMjA0X2xvZ2dpbmciKSl7TD0Kbi5wYXJhbXN8fHt9O1c9e3VybFBhcmFtczp7YToibG9nZXJyb3IiLHQ6ImpzZXJyb3IiLHR5cGU6bi5uYW1lLG1zZzpuLm1lc3NhZ2Uuc3Vic3RyKDAsMjUwKSxsaW5lOm4ubGluZU51bWJlcixsZXZlbDpXLCJjbGllbnQubmFtZSI6TC5uYW1lfSxwb3N0UGFyYW1zOnt1cmw6Zy5BcigiUEFHRV9OQU1FIix3aW5kb3cubG9jYXRpb24uaHJlZiksZmlsZTpuLmZpbGVOYW1lfSxtZXRob2Q6IlBPU1QifTtMLnZlcnNpb24mJihXWyJjbGllbnQudmVyc2lvbiJdPUwudmVyc2lvbik7aWYoVy5wb3N0UGFyYW1zKXtuLnN0YWNrJiYoVy5wb3N0UGFyYW1zLnN0YWNrPW4uc3RhY2spO2Zvcih2YXIgZSBvZiBPYmplY3Qua2V5cyhMKSlXLnBvc3RQYXJhbXNbYGNsaWVudC4ke2V9YF09TFtlXTtpZihlPWcuQXIoIkxBVEVTVF9FQ0FUQ0hFUl9TRVJWSUNFX1RSQUNLSU5HX1BBUkFNUyIpKWZvcih2YXIgRyBvZiBPYmplY3Qua2V5cyhlKSlXLnBvc3RQYXJhbXNbR109ZVtHXTsoRz1nLkFyKCJMQVZBX1ZFUlNJT04iKSkmJgooVy5wb3N0UGFyYW1zWyJsYXZhLnZlcnNpb24iXT1HKTtHPWcuQXIoIlNFUlZFUl9OQU1FIik7ZT1nLkFyKCJTRVJWRVJfVkVSU0lPTiIpO0cmJmUmJihXLnBvc3RQYXJhbXNbInNlcnZlci5uYW1lIl09RyxXLnBvc3RQYXJhbXNbInNlcnZlci52ZXJzaW9uIl09ZSk7KEc9Zy5BcigiUExBWUVSX0NMSUVOVF9WRVJTSU9OIikpJiYoVy5wb3N0UGFyYW1zWyJjbGllbnQucGxheWVyLnZlcnNpb24iXT1HKX1nLmVkKGAke2cuQXIoIkVDQVRDSEVSX1JFUE9SVF9IT1NUIiwiIil9L2Vycm9yXzIwNGAsVyl9dHJ5e0lVLmFkZChuLm1lc3NhZ2UpfWNhdGNoKHIpe310UCsrfTsKSzQ9ZnVuY3Rpb24obiwuLi5XKXtuLmFyZ3N8fChuLmFyZ3M9W10pO0FycmF5LmlzQXJyYXkobi5hcmdzKSYmbi5hcmdzLnB1c2goLi4uVyl9OwpPYT1mdW5jdGlvbihuKXt2YXIgVz0wO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7RCsrKVc9VyozMStuLmNoYXJDb2RlQXQoRCksRDxuLmxlbmd0aC0xJiYoVyU9MHg4MDAwMDAwMDAwMDApO3JldHVybiBXJTFFNX07Cmc5aT1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgsTCl7dmFyIGU9ZVRoKCk7az1uZXcgbFIoe3ZlVHlwZTpXLHlvdXR1YmVEYXRhOmssanNwYllvdXR1YmVEYXRhOnZvaWQgMH0pO0w9UGEoe2F1dG9tYXRlZExvZ0V2ZW50U291cmNlOkx9LGUpO3YmJihMLmN0dEF1dGhJbmZvPXYpO3Y9e2NzbjplLHBhZ2VWZTprLmdldEFzSnNvbigpfTtnLmwoImV4cGVjdGF0aW9uX2xvZ2dpbmciKSYmeCYmeC5zY3JlZW5DcmVhdGVkTG9nZ2luZ0V4cGVjdGF0aW9ucyYmKHYuc2NyZWVuQ3JlYXRlZExvZ2dpbmdFeHBlY3RhdGlvbnM9eC5zY3JlZW5DcmVhdGVkTG9nZ2luZ0V4cGVjdGF0aW9ucyk7RCYmRC52aXN1YWxFbGVtZW50Pyh2LmltcGxpY2l0R2VzdHVyZT17cGFyZW50Q3NuOkQuY2xpZW50U2NyZWVuTm9uY2UsZ2VzdHVyZWRWZTpELnZpc3VhbEVsZW1lbnQuZ2V0QXNKc29uKCl9LGgmJih2LmltcGxpY2l0R2VzdHVyZS5nZXN0dXJlVHlwZT1oKSk6RCYmZy5HcShuZXcgZy5ReCgibmV3U2NyZWVuKCkgcGFyZW50IGVsZW1lbnQgZG9lcyBub3QgaGF2ZSBhIFZFIC0gcm9vdFZlIiwKVykpO2ImJih2LmNsb25lQ3NuPWIpO24/dVIoInNjcmVlbkNyZWF0ZWQiLHYsbixMKTpnLnpVKCJzY3JlZW5DcmVhdGVkIix2LEwpO2w5KFRvLG5ldyBacChlKSk7VWEuY2xlYXIoKTt5NS5jbGVhcigpO0VhLmNsZWFyKCk7cmV0dXJuIGV9Owp1Zz1mdW5jdGlvbihuLFcsRCxiLHY9ITEsaz17fSl7aWcobixXLEQsW2JdLHYsayl9OwppZz1mdW5jdGlvbihuLFcsRCxiLHY9ITEsaz17fSl7T2JqZWN0LmFzc2lnbihrLFBhKHtjdHRBdXRoSW5mbzpRNChXKXx8dm9pZCAwfSxXKSk7Zm9yKGxldCB4IG9mIGIpe3ZhciBoPXguZ2V0QXNKc29uKCk7KGcuR0YoaCl8fCFoLnRyYWNraW5nUGFyYW1zJiYhaC52ZVR5cGUpJiZnLkdxKEVycm9yKCJDaGlsZCBWRSBsb2dnZWQgd2l0aCBubyBkYXRhIikpO2lmKGcubCgibm9fY2xpZW50X3ZlX2F0dGFjaF91bmxlc3Nfc2hvd24iKSl7bGV0IEw9b1UoeCxXKTtpZihoLnZlVHlwZSYmIXk1LmhhcyhMKSYmIUVhLmhhcyhMKSYmIXYpe2lmKCFnLmwoImlsX2F0dGFjaF9jYWNoZV9saW1pdCIpfHxVYS5zaXplPDFFMyl7VWEuc2V0KEwsW24sVyxELHhdKTtyZXR1cm59Zy5sKCJpbF9hdHRhY2hfY2FjaGVfbGltaXQiKSYmVWEuc2l6ZT4xRTMmJmcuR3EobmV3IGcuUXgoIklMIEF0dGFjaCBjYWNoZSBleGNlZWRlZCBsaW1pdCIpKX1oPW9VKEQsVyk7VWEuaGFzKGgpP2RLKEQsVyk6RWEuc2V0KGgsCiEwKX19Yj1iLmZpbHRlcih4PT57eC5jc24hPT1XPyh4LmNzbj1XLHg9ITApOng9ITE7cmV0dXJuIHh9KTsKRD17Y3NuOlcscGFyZW50VmU6RC5nZXRBc0pzb24oKSxjaGlsZFZlczpnLmlfKGIseD0+eC5nZXRBc0pzb24oKSl9OwpXPT09IlVOREVGSU5FRF9DU04iP3pxKCJ2aXN1YWxFbGVtZW50QXR0YWNoZWQiLGssRCk6bj91UigidmlzdWFsRWxlbWVudEF0dGFjaGVkIixELG4sayk6Zy56VSgidmlzdWFsRWxlbWVudEF0dGFjaGVkIixELGspfTsKWFdqPWZ1bmN0aW9uKG4sVyxELGIsdixrLGgpe2xnKEQsVyk7Yj1QYSh7Y3R0QXV0aEluZm86UTQoVyl8fHZvaWQgMCxhdXRvbWF0ZWRMb2dFdmVudFNvdXJjZTpofSxXKTtEPXtjc246Vyx2ZTpELmdldEFzSnNvbigpLGV2ZW50VHlwZToxfTt2JiYoRC5jbGllbnREYXRhPXYpO1c9PT0iVU5ERUZJTkVEX0NTTiI/enEoInZpc3VhbEVsZW1lbnRTaG93biIsYixEKTpuP3VSKCJ2aXN1YWxFbGVtZW50U2hvd24iLEQsbixiKTpnLnpVKCJ2aXN1YWxFbGVtZW50U2hvd24iLEQsYil9OwpUcT1mdW5jdGlvbihuLFcsRCxiPSExKXt2YXIgdj1iPzE2Ojg7Yj1QYSh7Y3R0QXV0aEluZm86UTQoVyl8fHZvaWQgMCxlbmRPZlNlcXVlbmNlOmIsYXV0b21hdGVkTG9nRXZlbnRTb3VyY2U6dm9pZCAwfSxXKTtEPXtjc246Vyx2ZTpELmdldEFzSnNvbigpLGV2ZW50VHlwZTp2fTtXPT09IlVOREVGSU5FRF9DU04iP3pxKCJ2aXN1YWxFbGVtZW50SGlkZGVuIixiLEQpOm4/dVIoInZpc3VhbEVsZW1lbnRIaWRkZW4iLEQsbixiKTpnLnpVKCJ2aXN1YWxFbGVtZW50SGlkZGVuIixELGIpfTsKcVZaPWZ1bmN0aW9uKG4sVyxELGIsdixrKXtqaShuLFcsRCxiLGspfTsKamk9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz12b2lkIDA7bGcoRCxXKTtrPWt8fCJJTlRFUkFDVElPTl9MT0dHSU5HX0dFU1RVUkVfVFlQRV9HRU5FUklDX0NMSUNLIjt2PVBhKHtjdHRBdXRoSW5mbzpRNChXKXx8dm9pZCAwLGF1dG9tYXRlZExvZ0V2ZW50U291cmNlOnZ9LFcpO0Q9e2NzbjpXLHZlOkQuZ2V0QXNKc29uKCksZ2VzdHVyZVR5cGU6a307YiYmKEQuY2xpZW50RGF0YT1iKTtXPT09IlVOREVGSU5FRF9DU04iP3pxKCJ2aXN1YWxFbGVtZW50R2VzdHVyZWQiLHYsRCk6bj91UigidmlzdWFsRWxlbWVudEdlc3R1cmVkIixELG4sdik6Zy56VSgidmlzdWFsRWxlbWVudEdlc3R1cmVkIixELHYpfTsKRyRqPWZ1bmN0aW9uKCl7dmFyIG49TWIoMTYpO3ZhciBXPVtdO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7RCsrKVcucHVzaCgiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODktXyIuY2hhckF0KG5bRF0mNjMpKTtyZXR1cm4gVy5qb2luKCIiKX07CnpxPWZ1bmN0aW9uKG4sVyxEKXtDNC5wdXNoKHtwYXlsb2FkTmFtZTpuLHBheWxvYWQ6RCxwUDp2b2lkIDAsb3B0aW9uczpXfSk7QmF8fChCYT1GME0oKSl9OwpDNHc9ZnVuY3Rpb24obil7aWYoQzQpe2ZvcihsZXQgVyBvZiBDNClXLnBheWxvYWQmJihXLnBheWxvYWQuY3NuPW4uY3NuLGcuelUoVy5wYXlsb2FkTmFtZSxXLnBheWxvYWQsVy5vcHRpb25zKSk7QzQubGVuZ3RoPTB9QmE9MH07Cm9VPWZ1bmN0aW9uKG4sVyl7cmV0dXJuYCR7bi5nZXRBc0pzb24oKS52ZVR5cGV9JHtuLmdldEFzSnNvbigpLnZlQ291bnRlcn0ke1d9YH07CmxnPWZ1bmN0aW9uKG4sVyl7aWYoZy5sKCJub19jbGllbnRfdmVfYXR0YWNoX3VubGVzc19zaG93biIpKXt2YXIgRD1vVShuLFcpO3k1LnNldChELCEwKTtkSyhuLFcpfX07CmRLPWZ1bmN0aW9uKG4sVyl7bj1vVShuLFcpO1VhLmhhcyhuKSYmKFc9VWEuZ2V0KG4pfHxbXSx1ZyhXWzBdLFdbMV0sV1syXSxXWzNdLCEwKSxVYS5kZWxldGUobikpfTsKUGE9ZnVuY3Rpb24obixXKXtnLmwoImxvZ19zZXF1ZW5jZV9pbmZvX29uX2dlbF93ZWIiKSYmKG4uc2VxdWVuY2VHcm91cD1XKTtyZXR1cm4gbn07CkZqPWZ1bmN0aW9uKG4sVyxELGIpe1BWKFhXaikodm9pZCAwLG4sVyxELGIsdm9pZCAwKX07CnRFeD1mdW5jdGlvbihuLFcpe1BWKCgpPT57Zy55MihXLEQ9PntsZyhELG4pO3ZhciBiPVBhKHtjdHRBdXRoSW5mbzpRNChuKXx8dm9pZCAwLGF1dG9tYXRlZExvZ0V2ZW50U291cmNlOnZvaWQgMH0sbik7RD17Y3NuOm4sdmU6RC5nZXRBc0pzb24oKSxldmVudFR5cGU6NH07bj09PSJVTkRFRklORURfQ1NOIj96cSgidmlzdWFsRWxlbWVudFNob3duIixiLEQpOmcuelUoInZpc3VhbEVsZW1lbnRTaG93biIsRCxiKX0pfSkoKX07CiRIdD1mdW5jdGlvbihuLFcpe1BWKCgpPT57Zy55MihXLEQ9PntUcSh2b2lkIDAsbixEKX0pfSkoKX07CndLPWZ1bmN0aW9uKCl7dmFyIG49ITE7dHJ5e249ISF3aW5kb3cuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgic2Vzc2lvbl9sb2dpbmluZm8iKX1jYXRjaHtuPSEwfXJldHVybihnLkFyKCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJXRUIifHxnLkFyKCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJXRUJfQ1JFQVRPUiIpJiZufTsKTWc9ZnVuY3Rpb24oKXt0cnl7d2luZG93LnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oInN0aWNraW5lc3NfcmVsb2FkIik7d2luZG93LnNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oInNlc3Npb25fbG9naW5pbmZvIik7Zy5TSCgiTE9HSU5fSU5GTyIsIiIpO3dpbmRvdy5zZXNzaW9uU3RvcmFnZS5zZXRJdGVtKCJmcm9tX3N3aXRjaF9hY2NvdW50IiwiMSIpO3ZhciBuO2xldCBEPXJTaDtEfHwoRD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjcGVyc2lzdF9pZGVudGl0eSIpKTtpZihuPUQpe3ZhciBXPW4uc3JjPyhuZXcgVVJMKG4uc3JjKSkub3JpZ2luOiIqIjtuLmNvbnRlbnRXaW5kb3c/LnBvc3RNZXNzYWdlKHthY3Rpb246ImNsZWFyIn0sVyl9fWNhdGNoe319OwpnLlJVPWZ1bmN0aW9uKG4pe24mJihuLnN0YXJ0c1dpdGgoImh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9BZGRTZXNzaW9uIik/TWcoKTpuLnN0YXJ0c1dpdGgoImh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TZXJ2aWNlTG9naW4iKT9NZygpOm4uc3RhcnRzV2l0aCgiaHR0cHM6Ly9teWFjY291bnQuZ29vZ2xlLmNvbSIpJiZscihuKS5KLmVuZHNXaXRoKCIveW91dHViZW9wdGlvbnMiKSYmTWcoKSk7aWYoZy5BcigiTE9HR0VEX0lOIiwhMCkmJndLKCkpe3ZhciBXPWcuQXIoIlZBTElEX1NFU1NJT05fVEVNUERBVEFfRE9NQUlOUyIsW10pO3ZhciBEPWcuSVAod2luZG93LmxvY2F0aW9uLmhyZWYpO0QmJlcucHVzaChEKTtEPWcuSVAobik7Zy5qaihXLEQpfHwhRCYmZy5qVShuLCIvIik/KFc9bVcobiksKFc9S3AoVykpPyhXPVdhKFcpLFc9KFc9Zy5TZChXKXx8bnVsbCk/Zy5pdyhXKTp7fSk6Vz1udWxsKTpXPW51bGw7Vz09bnVsbCYmKFc9e30pO0Q9Vzt2YXIgYj12b2lkIDA7CndLKCk/KGJ8fChiPWcuQXIoIkxPR0lOX0lORk8iKSksYj8oRC5zZXNzaW9uX2xvZ2luaW5mbz1iLEQ9ITApOkQ9ITEpOkQ9ITE7RCYmbjQobixXKX19OwpRNT1mdW5jdGlvbihuLFc9e30pe3ZhciBEPWcuQXIoIkVWRU5UX0lEIik7RCYmKFcuZWl8fChXLmVpPUQpKTtXJiZuNChuLFcpfTsKZy5jYT1mdW5jdGlvbihuLFcsRCxiLHY9ITEpe0QmJm40KG4sRCk7RD1nLnRGKG4sZy5HNCl8fGcuVjU7dmFyIGs9Z3ooRCk7biE9ayYmWkUoRXJyb3IoYFVuc2FmZSB3aW5kb3cub3BlbiBVUkw6ICR7bn1gKSk7bj1rO1c9V3x8c1QobikudG9TdHJpbmcoMzYpO3RyeXtpZih2KXJldHVybiB2PW4sdj1nLnFiKHYpLGcuUlUodiksSkYodixXLCJhdHRyaWJ1dGlvbnNyYyIpfWNhdGNoKGgpe090KGgpfWcuUlUobik7cmV0dXJuIEpGKEQsVyxiKX07Ck5lMj1mdW5jdGlvbigpe3ZhciBuPXdpbmRvdy5sb2NhdGlvbi5ocmVmO2lmKGcubCgia2V2bGFyX2Rpc2FibGVfdGhlbWVfcGFyYW0iKSlyZXR1cm4gbnVsbDtTMShuKTt0cnl7bGV0IFc9Zy5vRShuKS50aGVtZTtyZXR1cm4gc1lVLmdldChXKXx8bnVsbH1jYXRjaChXKXt9cmV0dXJuIG51bGx9OwphVT1mdW5jdGlvbihuLFcpe2lmKFcuZW5jcnlwdGVkVG9rZW5KYXJDb250ZW50cyYmKG4uTltXLmVuY3J5cHRlZFRva2VuSmFyQ29udGVudHNdPVcsdHlwZW9mIFcuZXhwaXJhdGlvblNlY29uZHM9PT0ic3RyaW5nIikpe2xldCBEPU51bWJlcihXLmV4cGlyYXRpb25TZWNvbmRzKTtzZXRUaW1lb3V0KCgpPT57ZGVsZXRlIG4uTltXLmVuY3J5cHRlZFRva2VuSmFyQ29udGVudHNdfSxEKjFFMyk7Cm4uSiYmSUsoIkNPTlNJU1RFTkNZIixXLmVuY3J5cHRlZFRva2VuSmFyQ29udGVudHMsRCx2b2lkIDAsITApfX07Cm5CPWZ1bmN0aW9uKG4pe3JldHVybiBuLmxvY2FsU3RvcmFnZT09PXZvaWQgMD9uZXcgdEkoInl0LWNsaWVudC1sb2NhdGlvbiIpOm4ubG9jYWxTdG9yYWdlfTsKZy52Yj1mdW5jdGlvbihuLFc9ITEsRD0hMSxiLHYpe3ZhciBrPWcuQXIoIklOTkVSVFVCRV9DT05URVhUIik7aWYoIWspcmV0dXJuIGcuWGooRXJyb3IoIkVycm9yOiBObyBJbm5lclR1YmVDb250ZXh0IHNoZWxsIHByb3ZpZGVkIGluIHl0Y29uZmlnLiIpKSx7fTtrPWcuTmMoayk7Zy5sKCJ3ZWJfbm9fdHJhY2tpbmdfcGFyYW1zX2luX3NoZWxsX2tpbGxzd2l0Y2giKXx8ZGVsZXRlIGsuY2xpY2tUcmFja2luZztrLmNsaWVudHx8KGsuY2xpZW50PXt9KTt2YXIgaD1rLmNsaWVudDtoLmNsaWVudE5hbWU9PT0iTVdFQiImJmguY2xpZW50Rm9ybUZhY3RvciE9PSJBVVRPTU9USVZFX0ZPUk1fRkFDVE9SIiYmKGguY2xpZW50Rm9ybUZhY3Rvcj1nLkFyKCJJU19UQUJMRVQiKT8iTEFSR0VfRk9STV9GQUNUT1IiOiJTTUFMTF9GT1JNX0ZBQ1RPUiIpO2guc2NyZWVuV2lkdGhQb2ludHM9d2luZG93LmlubmVyV2lkdGg7aC5zY3JlZW5IZWlnaHRQb2ludHM9d2luZG93LmlubmVySGVpZ2h0O2guc2NyZWVuUGl4ZWxEZW5zaXR5PQpNYXRoLnJvdW5kKHdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvfHwxKTtoLnNjcmVlbkRlbnNpdHlGbG9hdD13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MTtoLnV0Y09mZnNldE1pbnV0ZXM9LU1hdGguZmxvb3IoKG5ldyBEYXRlKS5nZXRUaW1lem9uZU9mZnNldCgpKTt2YXIgeD1nLm85KCk7dmFyIEw9IlVTRVJfSU5URVJGQUNFX1RIRU1FX0xJR0hUIjt4LlFRKDE2NSk/TD0iVVNFUl9JTlRFUkZBQ0VfVEhFTUVfREFSSyI6eC5RUSgxNzQpP0w9IlVTRVJfSU5URVJGQUNFX1RIRU1FX0xJR0hUIjohZy5sKCJrZXZsYXJfbGVnYWN5X2Jyb3dzZXJzIikmJndpbmRvdy5tYXRjaE1lZGlhJiZ3aW5kb3cubWF0Y2hNZWRpYSgiKHByZWZlcnMtY29sb3Itc2NoZW1lKSIpLm1hdGNoZXMmJndpbmRvdy5tYXRjaE1lZGlhKCIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIikubWF0Y2hlcyYmKEw9IlVTRVJfSU5URVJGQUNFX1RIRU1FX0RBUksiKTt4PU5lMigpfHxMO2gudXNlckludGVyZmFjZVRoZW1lPQp4O2cubCgid2ViX3Byb3BhZ2F0ZV92aXNpYmlsaXR5X3RvX2FwcGxpY2F0aW9uX3N0YXRlIikmJmcucWkuZG9jdW1lbnQmJihoLmFwcGxpY2F0aW9uU3RhdGU9Zy5xaS5kb2N1bWVudC52aXNpYmlsaXR5U3RhdGU9PT0iaGlkZGVuIj8iQkFDS0dST1VORCI6IkFDVElWRSIpO2lmKCFXKXtpZih4PUJCKCkpaC5jb25uZWN0aW9uVHlwZT14O2cubCgid2ViX2xvZ19lZmZlY3RpdmVfY29ubmVjdGlvbl90eXBlIikmJih4PXdKKCkpJiYoay5jbGllbnQuZWZmZWN0aXZlQ29ubmVjdGlvblR5cGU9eCl9Zy5sKCJ3ZWJfbG9nX21lbW9yeV90b3RhbF9rYnl0ZXMiKSYmZy5xaS5uYXZpZ2F0b3I/LmRldmljZU1lbW9yeSYmKGsuY2xpZW50Lm1lbW9yeVRvdGFsS2J5dGVzPWAke2cucWkubmF2aWdhdG9yPy5kZXZpY2VNZW1vcnkqMUU2fWApO1cmJmImJiFnLmwoIndlYl9pdF9jb250ZXh0X3NldF9vcmlnaW5hbF91cmxfa3MiKSYmKHg9YixMPWcucWkubG9jYXRpb24uaHJlZixMIGluc3RhbmNlb2YKZy5Vanx8KEw9bHIoTCkpLHggaW5zdGFuY2VvZiBnLlVqfHwoeD1scih4KSkseD1MLnJlc29sdmUoeCksaC5vcmlnaW5hbFVybD14LnRvU3RyaW5nKCkpO2lmKGcubCgid2ViX2djZl9oYXNoZXNfaW5uZXJ0dWJlIikpe3ZhciBlPUo3KCk7ZSYmKHg9ZS5jb2xkQ29uZmlnRGF0YSxMPWUuY29sZEhhc2hEYXRhLGU9ZS5ob3RIYXNoRGF0YSxrLmNsaWVudC5jb25maWdJbmZvPWsuY2xpZW50LmNvbmZpZ0luZm98fHt9LHgmJihrLmNsaWVudC5jb25maWdJbmZvLmNvbGRDb25maWdEYXRhPXgpLEwmJihrLmNsaWVudC5jb25maWdJbmZvLmNvbGRIYXNoRGF0YT1MKSxlJiYoay5jbGllbnQuY29uZmlnSW5mby5ob3RIYXNoRGF0YT1lKSl9eD1nLm9FKGcucWkubG9jYXRpb24uaHJlZik7IWcubCgid2ViX3BvcHVsYXRlX2ludGVybmFsX2dlb19raWxsc3dpdGNoIikmJnguaW50ZXJuYWxjb3VudHJ5Y29kZSYmKGguaW50ZXJuYWxHZW89eC5pbnRlcm5hbGNvdW50cnljb2RlKTshZy5sKCJ3ZWJfcG9wdWxhdGVfY2xpZW50X3NjcmVlbl9raWxsc3dpdGNoIikmJgp2JiYoaC5jbGllbnRTY3JlZW49dik7aC5jbGllbnROYW1lPT09Ik1XRUIifHxoLmNsaWVudE5hbWU9PT0iV0VCIj8oaC5tYWluQXBwV2ViSW5mb3x8KGgubWFpbkFwcFdlYkluZm89e30pLGgubWFpbkFwcFdlYkluZm8uZ3JhZnRVcmw9Ynx8Zy5xaS5sb2NhdGlvbi5ocmVmLGcubCgia2V2bGFyX3dvZmZsZSIpJiZXYi5pbnN0YW5jZSYmKGI9V2IuaW5zdGFuY2UsaC5tYWluQXBwV2ViSW5mby5wd2FJbnN0YWxsYWJpbGl0eVN0YXR1cz0hYi5OJiZiLko/IlBXQV9JTlNUQUxMQUJJTElUWV9TVEFUVVNfQ0FOX0JFX0lOU1RBTExFRCI6IlBXQV9JTlNUQUxMQUJJTElUWV9TVEFUVVNfVU5LTk9XTiIpLGgubWFpbkFwcFdlYkluZm8ud2ViRGlzcGxheU1vZGU9eXgoKSxoLm1haW5BcHBXZWJJbmZvLmlzV2ViTmF0aXZlU2hhcmVBdmFpbGFibGU9bmF2aWdhdG9yJiZuYXZpZ2F0b3Iuc2hhcmUhPT12b2lkIDApOmguY2xpZW50TmFtZT09PSJUVkhUTUw1IiYmKCFnLmwoIndlYl9scl9hcHBfcXVhbGl0eV9raWxsc3dpdGNoIikmJgooYj1nLkFyKCJMSVZJTkdfUk9PTV9BUFBfUVVBTElUWSIpKSYmKGgudHZBcHBJbmZvPU9iamVjdC5hc3NpZ24oaC50dkFwcEluZm98fHt9LHthcHBRdWFsaXR5OmJ9KSksYj1nLkFyKCJMSVZJTkdfUk9PTV9DRVJUSUZJQ0FUSU9OX1NDT1BFIikpJiYoaC50dkFwcEluZm89T2JqZWN0LmFzc2lnbihoLnR2QXBwSW5mb3x8e30se2NlcnRpZmljYXRpb25TY29wZTpifSkpO2lmKCFnLmwoIndlYl9wb3B1bGF0ZV90aW1lX3pvbmVfaXRjX2tpbGxzd2l0Y2giKSl7YTp7aWYodHlwZW9mIEludGwhPT0idW5kZWZpbmVkIil0cnl7dmFyIEc9KG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZTticmVhayBhfWNhdGNoe31HPXZvaWQgMH1HJiYoaC50aW1lWm9uZT1HKX0oRz1rVCgpKT9oLmV4cGVyaW1lbnRzVG9rZW49RzpkZWxldGUgaC5leHBlcmltZW50c1Rva2VuO2g9aHkoKTtETS5pbnN0YW5jZXx8KERNLmluc3RhbmNlPW5ldyBETSk7Rz1oSyhETS5pbnN0YW5jZS5OKTsKay5yZXF1ZXN0PXsuLi5rLnJlcXVlc3QsaW50ZXJuYWxFeHBlcmltZW50RmxhZ3M6aCxjb25zaXN0ZW5jeVRva2VuSmFyczpHfTshZy5sKCJ3ZWJfcHJlcXVlc3RfY29udGV4dF9raWxsc3dpdGNoIikmJihoPWcuQXIoIklOTkVSVFVCRV9DT05URVhUX1BSRVFVRVNUX0NPTlRFWFQiKSkmJihrLnJlcXVlc3QuZXh0ZXJuYWxQcmVxdWVzdENvbnRleHQ9aCk7Rz1nLm85KCk7aD1HLlFRKDU4KTtHPUcuZ2V0KCJnc21sIiwiIik7ay51c2VyPXsuLi5rLnVzZXJ9O2gmJihrLnVzZXIuZW5hYmxlU2FmZXR5TW9kZT1oKTtHJiYoay51c2VyLmxvY2tlZFNhZmV0eU1vZGU9ITApO2cubCgid2FybV9vcF9jc25fY2xlYW51cCIpP0QmJihXPWcuUnYoKSkmJihrLmNsaWVudFNjcmVlbk5vbmNlPVcpOiFXJiYoVz1nLlJ2KCkpJiYoay5jbGllbnRTY3JlZW5Ob25jZT1XKTtuJiYoay5jbGlja1RyYWNraW5nPXtjbGlja1RyYWNraW5nUGFyYW1zOm59KTtpZihuPWcucnIoInl0Lm1keC5yZW1vdGUucmVtb3RlQ2xpZW50XyIpKWsucmVtb3RlQ2xpZW50PQpuO2IkLmdldEluc3RhbmNlKCkuc2V0TG9jYXRpb25PbklubmVyVHViZUNvbnRleHQoayk7dHJ5e3ZhciByPWcuUUYoKSxOPXIuYmlkO2RlbGV0ZSByLmJpZDtrLmFkU2lnbmFsc0luZm89e3BhcmFtczpbXSxiaWQ6Tn07Zm9yKGxldCBbSCxBXW9mIE9iamVjdC5lbnRyaWVzKHIpKXI9SCxOPUEsay5hZFNpZ25hbHNJbmZvLnBhcmFtcz8ucHVzaCh7a2V5OnIsdmFsdWU6YCR7Tn1gfSk7aWYoay5jbGllbnQ/LmNsaWVudE5hbWU9PT0iVFZIVE1MNSJ8fGsuY2xpZW50Py5jbGllbnROYW1lPT09IlRWSFRNTDVfVU5QTFVHR0VEIil7bGV0IEg9Zy5BcigiSU5ORVJUVUJFX0NPTlRFWFQiKTtILmFkU2lnbmFsc0luZm8mJihrLmFkU2lnbmFsc0luZm8uYWR2ZXJ0aXNpbmdJZD1ILmFkU2lnbmFsc0luZm8uYWR2ZXJ0aXNpbmdJZCxrLmFkU2lnbmFsc0luZm8uYWR2ZXJ0aXNpbmdJZFNpZ25hbFR5cGU9IkRFVklDRV9JRF9UWVBFX0NPTk5FQ1RFRF9UVl9JRkEiLGsuYWRTaWduYWxzSW5mby5saW1pdEFkVHJhY2tpbmc9CkguYWRTaWduYWxzSW5mby5saW1pdEFkVHJhY2tpbmcsSC5hZFNpZ25hbHNJbmZvLmF0VHJhY2tpbmdNYW5hZ2VyQXV0aG9yaXphdGlvblN0YXR1cyE9PXZvaWQgMCYmKGsuYWRTaWduYWxzSW5mby5hdFRyYWNraW5nTWFuYWdlckF1dGhvcml6YXRpb25TdGF0dXM9SC5hZFNpZ25hbHNJbmZvLmF0VHJhY2tpbmdNYW5hZ2VyQXV0aG9yaXphdGlvblN0YXR1cykpfX1jYXRjaChIKXtnLlhqKEgpfXJldHVybiBrfTsKa1Y9ZnVuY3Rpb24obil7dmFyIFc9eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn07Zy5BcigiRU9NX1ZJU0lUT1JfREFUQSIpP1dbIlgtR29vZy1FT00tVmlzaXRvci1JZCJdPWcuQXIoIkVPTV9WSVNJVE9SX0RBVEEiKTpnLkFyKCJWSVNJVE9SX0RBVEEiKSYmKFdbIlgtR29vZy1WaXNpdG9yLUlkIl09Zy5BcigiVklTSVRPUl9EQVRBIikpO1dbIlgtWW91dHViZS1Cb290c3RyYXAtTG9nZ2VkLUluIl09Zy5BcigiTE9HR0VEX0lOIiwhMSk7Zy5BcigiREVCVUdfU0VUVElOR1NfTUVUQURBVEEiKSYmKFdbIlgtRGVidWctU2V0dGluZ3MtTWV0YWRhdGEiXT1nLkFyKCJERUJVR19TRVRUSU5HU19NRVRBREFUQSIpKTtuIT09ImNvcnMiJiYoKG49Zy5BcigiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX05BTUUiKSkmJihXWyJYLVlvdXR1YmUtQ2xpZW50LU5hbWUiXT1uKSwobj1nLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfVkVSU0lPTiIpKSYmKFdbIlgtWW91dHViZS1DbGllbnQtVmVyc2lvbiJdPQpuKSwobj1nLkFyKCJDSFJPTUVfQ09OTkVDVEVEX0hFQURFUiIpKSYmKFdbIlgtWW91dHViZS1DaHJvbWUtQ29ubmVjdGVkIl09biksKG49Zy5BcigiRE9NQUlOX0FETUlOX1NUQVRFIikpJiYoV1siWC1Zb3V0dWJlLURvbWFpbi1BZG1pbi1TdGF0ZSJdPW4pLChuPWIkLmdldEluc3RhbmNlKCkuZ2V0WEdlb0hlYWRlcj8uKCkpJiYoV1siWC1HZW8iXT1uKSk7KG49Zy5BcigiU0VSSUFMSVpFRF9MQVZBX0RFVklDRV9DT05URVhUIikpJiYoV1siWC1Zb3VUdWJlLUxhdmEtRGV2aWNlLUNvbnRleHQiXT1uKTtyZXR1cm4gV307CmhtPWZ1bmN0aW9uKG4pe3JldHVybigpPT5uZXcgbn07CnBXTT1mdW5jdGlvbihuKXtpZihuLmxlbmd0aD09PTEpcmV0dXJuIG5bMF07dmFyIFc9eFYuVU5LTk9XTl9JTlRFUkZBQ0U7aWYoVyl7Vz1uZXcgUmVnRXhwKFcpO2Zvcih2YXIgRCBvZiBuKWlmKFcuZXhlYyhEKSlyZXR1cm4gRH12YXIgYj1bXTtPYmplY3QuZW50cmllcyh4VikuZm9yRWFjaCgoW3Ysa10pPT57IlVOS05PV05fSU5URVJGQUNFIiE9PXYmJmIucHVzaChrKX0pOwpEPW5ldyBSZWdFeHAoYi5qb2luKCJ8IikpO24uc29ydCgodixrKT0+di5sZW5ndGgtay5sZW5ndGgpOwpmb3IobGV0IHYgb2YgbilpZighRC5leGVjKHYpKXJldHVybiB2O3JldHVybiBuWzBdfTsKTEI9ZnVuY3Rpb24obil7cmV0dXJuYC95b3V0dWJlaS92MS8ke3BXTShuKX1gfTsKZ2I9ZnVuY3Rpb24obil7cmV0dXJuIGcucnIoInl0Y3NpLiIrKG58fCIiKSsiZGF0YV8iKXx8ZUwobil9OwpYQT1mdW5jdGlvbigpe3ZhciBuPWdiKCk7bi5pbmZvfHwobi5pbmZvPXt9KTtyZXR1cm4gbi5pbmZvfTsKcVE9ZnVuY3Rpb24obil7bj1nYihuKTtuLm1ldGFkYXRhfHwobi5tZXRhZGF0YT17fSk7cmV0dXJuIG4ubWV0YWRhdGF9OwpHdz1mdW5jdGlvbihuKXtuPWdiKG4pO24udGlja3x8KG4udGljaz17fSk7cmV0dXJuIG4udGlja307CnRtPWZ1bmN0aW9uKG4pe249Z2Iobik7aWYobi5nZWwpe2xldCBXPW4uZ2VsO1cuZ2VsSW5mb3N8fChXLmdlbEluZm9zPXt9KTtXLmdlbFRpY2tzfHwoVy5nZWxUaWNrcz17fSl9ZWxzZSBuLmdlbD17Z2VsVGlja3M6e30sZ2VsSW5mb3M6e319O3JldHVybiBuLmdlbH07CiRWPWZ1bmN0aW9uKG4pe249dG0obik7bi5nZWxJbmZvc3x8KG4uZ2VsSW5mb3M9e30pO3JldHVybiBuLmdlbEluZm9zfTsKWVZTPWZ1bmN0aW9uKCl7dmFyIG49dG0oKTtuLnByZUxvZ2dlZEdlbEluZm9zfHwobi5wcmVMb2dnZWRHZWxJbmZvcz1bXSk7cmV0dXJuIG4ucHJlTG9nZ2VkR2VsSW5mb3N9OwpyYj1mdW5jdGlvbihuKXt2YXIgVz1nYihuKS5ub25jZTtXfHwoVz1nLlJJKDE2KSxnYihuKS5ub25jZT1XKTtyZXR1cm4gV307CmVMPWZ1bmN0aW9uKG4pe3ZhciBXPXt0aWNrOnt9LGluZm86e319O2cuR2IoInl0Y3NpLiIrKG58fCIiKSsiZGF0YV8iLFcpO3JldHVybiBXfTsKc0g9ZnVuY3Rpb24oKXt2YXIgbj1nLnJyKCJ5dGNzaS5kZWJ1ZyIpO258fChuPVtdLGcuR2IoInl0Y3NpLmRlYnVnIixuKSxnLkdiKCJ5dGNzaS5yZWZlcmVuY2UiLHt9KSk7cmV0dXJuIG59OwpwQj1mdW5jdGlvbihuKXt2YXIgVz1zSCgpO1cucHVzaChuKTtnLmwoImxpbWl0X3l0Y3NpX2RlYnVnX2FycmF5X3NpemUiKSYmVy5sZW5ndGg+TlEmJlcuc3BsaWNlKDAsVy5sZW5ndGgtTlEpfTsKSGI9ZnVuY3Rpb24obil7bj1ufHwiIjt2YXIgVz1ZVigpO2lmKFdbbl0pcmV0dXJuIFdbbl07dmFyIEQ9e3RpbWVyTmFtZTpuLGluZm86e30sdGljazp7fSxzcGFuOnt9LGpzcGJJbmZvOltdfTtwQihEKTtyZXR1cm4gV1tuXT1EfTsKZkI9ZnVuY3Rpb24obil7bj1ufHwiIjt2YXIgVz1ZVigpO1dbbl0mJmRlbGV0ZSBXW25dO3ZhciBEPXt0aW1lck5hbWU6bixpbmZvOnt9LHRpY2s6e30sc3Bhbjp7fSxqc3BiSW5mbzpbXX07cEIoRCk7V1tuXT1EfTsKWVY9ZnVuY3Rpb24oKXt2YXIgbj1nLnJyKCJ5dGNzaS5yZWZlcmVuY2UiKTtpZihuKXJldHVybiBuO3NIKCk7cmV0dXJuIGcucnIoInl0Y3NpLnJlZmVyZW5jZSIpfTsKSUw9ZnVuY3Rpb24obil7cmV0dXJuIEptW25dfHwiTEFURU5DWV9BQ1RJT05fVU5LTk9XTiJ9OwpIbnI9ZnVuY3Rpb24obixXLEQ9e30pe3ZhciBiPU1hdGgucm91bmQoRC50aW1lc3RhbXB8fCgwLGcuUikoKSk7SVkobiwxLGI8TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVI/YjowKTtiPW5ldyBTTDtpZihELmxhY3QpSVkoYiwxLGlzRmluaXRlKEQubGFjdCk/RC5sYWN0Oi0xKTtlbHNlIGlmKEQudGltZXN0YW1wKUlZKGIsMSwtMSk7ZWxzZXt2YXIgdj1nLnZJKCk7SVkoYiwxLGlzRmluaXRlKHYpP3Y6LTEpfWlmKEQuc2VxdWVuY2VHcm91cCYmIWcubCgid2ViX2dlbF9zZXF1ZW5jZV9pbmZvX2tpbGxzd2l0Y2giKSl7dj1ELnNlcXVlbmNlR3JvdXA7bGV0IGs9RXkodiksaD1uZXcgQW07SVkoaCwyLGspO2cuU0UoaCwxLHYpOyQ5KGIsQW0sMyxoKTtELmVuZE9mU2VxdWVuY2UmJmRlbGV0ZSBtcVtELnNlcXVlbmNlR3JvdXBdfSQ5KG4sU0wsMzMsYik7KEQuc2VuZElzb2xhdGVkUGF5bG9hZD9jSTpQVzEpKCJsYXRlbmN5QWN0aW9uSW5mbyIse2VuZHBvaW50OiJsb2dfZXZlbnQiLHBheWxvYWQ6biwKY3R0QXV0aEluZm86RC5jdHRBdXRoSW5mbyxkYW5nZXJvdXNMb2dUb1Zpc2l0b3JTZXNzaW9uOkQuZGFuZ2Vyb3VzTG9nVG9WaXNpdG9yU2Vzc2lvbn0sVyl9OwpmMmo9ZnVuY3Rpb24obixXPXt9KXt2YXIgRD0hMTtnLkFyKCJ5dExvZ2dpbmdFdmVudHNEZWZhdWx0RGlzYWJsZWQiLCExKSYmKEQ9ITApO0hucihuLEQ/bnVsbDpnLmQ0LFcpfTsKT0g9ZnVuY3Rpb24oKXtLQi5pbnN0YW5jZXx8KEtCLmluc3RhbmNlPW5ldyBLQik7cmV0dXJuIEtCLmluc3RhbmNlfTsKWk09ZnVuY3Rpb24obixXKXtQYltXXT1QYltXXXx8e2NvdW50OjB9O3ZhciBEPVBiW1ddO0QuY291bnQrKztELnRpbWU9KDAsZy5SKSgpO24uTnx8KG4uTj1nLmNCKDAsKCk9Pnt2YXIgYj0oMCxnLlIpKCk7Zm9yKGxldCB2IGluIFBiKVBiW3ZdJiZiLVBiW3ZdLnRpbWU+NkU0JiZkZWxldGUgUGJbdl07biYmKG4uTj0wKX0sNUUzKSk7CnJldHVybiBELmNvdW50PjU/KEQuY291bnQ9PT02JiZNYXRoLnJhbmRvbSgpKjFFNTwxJiYoRD1uZXcgZy5ReCgiQ1NJIGRhdGEgZXhjZWVkZWQgbG9nZ2luZyBsaW1pdCB3aXRoIGtleSIsVy5zcGxpdCgiXyIpKSxXLmluZGV4T2YoInBsZXYiKT49MHx8Zy5HcShEKSksITApOiExfTsKRUg9ZnVuY3Rpb24oKXt2YXIgbjtnLmwoImNzaV91c2VfcGVyZm9ybWFuY2VfbmF2aWdhdGlvbl90aW1pbmciKT8obj1VSD8uZ2V0RW50cmllc0J5VHlwZT8uKCJuYXZpZ2F0aW9uIik/LlswXT8udG9KU09OPy4oKSk/KG4ucmVxdWVzdFN0YXJ0PXl2KG4ucmVxdWVzdFN0YXJ0KSxuLnJlc3BvbnNlRW5kPXl2KG4ucmVzcG9uc2VFbmQpLG4ucmVkaXJlY3RTdGFydD15dihuLnJlZGlyZWN0U3RhcnQpLG4ucmVkaXJlY3RFbmQ9eXYobi5yZWRpcmVjdEVuZCksbi5kb21haW5Mb29rdXBFbmQ9eXYobi5kb21haW5Mb29rdXBFbmQpLG4uY29ubmVjdFN0YXJ0PXl2KG4uY29ubmVjdFN0YXJ0KSxuLmNvbm5lY3RFbmQ9eXYobi5jb25uZWN0RW5kKSxuLnJlc3BvbnNlU3RhcnQ9eXYobi5yZXNwb25zZVN0YXJ0KSxuLnNlY3VyZUNvbm5lY3Rpb25TdGFydD15dihuLnNlY3VyZUNvbm5lY3Rpb25TdGFydCksbi5kb21haW5Mb29rdXBTdGFydD15dihuLmRvbWFpbkxvb2t1cFN0YXJ0KSxuLmlzUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nPQohMCk6bj1VSC50aW1pbmc6bj1nLmwoImNzaV9wZXJmb3JtYW5jZV90aW1pbmdfdG9fb2JqZWN0Iik/SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShVSC50aW1pbmcpKTpVSC50aW1pbmc7cmV0dXJuIG59Owp5dj1mdW5jdGlvbihuKXtyZXR1cm4gTWF0aC5yb3VuZChpJCgpK24pfTsKaSQ9ZnVuY3Rpb24oKXtyZXR1cm4oZy5sKCJjc2lfdXNlX3RpbWVfb3JpZ2luIil8fGcubCgiY3NpX3VzZV90aW1lX29yaWdpbl90dmh0bWw1IikpJiZVSC50aW1lT3JpZ2luP01hdGguZmxvb3IoVUgudGltZU9yaWdpbik6VUgudGltaW5nLm5hdmlnYXRpb25TdGFydH07CkpTcj1mdW5jdGlvbigpe3ZhciBuPVlWUygpLFc9JFYoKSxEPXZvaWQgMDtmb3IodmFyIGI9MDtiPG4ubGVuZ3RoO2IrKyl7bGV0IHg9bltiXTtpZih4LmxvYWRUeXBlKXtEPXgubG9hZFR5cGU7YnJlYWt9fWlmKHFRKCkubG9hZFR5cGU9PT0iY29sZCImJihXLmxvYWRUeXBlPT09ImNvbGQifHxEPT09ImNvbGQiKSl7RD1HdygpO2I9dG0oKTtiPWIuZ2VsVGlja3M/Yi5nZWxUaWNrczpiLmdlbFRpY2tzPXt9O2Zvcih2YXIgdiBpbiBEKXYgaW4gYnx8dHlwZW9mIERbdl09PT0ibnVtYmVyIiYmdSQodixvTCh2KSk7dmFyIGs9e30saD0hMTt2PXg9PntqdyhXLHgpO2p3KGsseCk7aD0hMH07CmZvcihsZXQgeCBvZiBuKXYoeCk7aCYmZGIoayl9fTsKenc9ZnVuY3Rpb24obixXKXt1JCgiX3N0YXJ0IixuLFcpfTsKZGI9ZnVuY3Rpb24obixXKXtpZighZy5sKCJ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkIil8fCFnYihXKS5hY3Rpb25EaXNhYmxlZCl7dmFyIEQ9SGIoV3x8IiIpO2p3KEQuaW5mbyxuKTtuLmxvYWRUeXBlJiYoRD1uLmxvYWRUeXBlLHFRKFcpLmxvYWRUeXBlPUQpO2p3KCRWKFcpLG4pO0Q9cmIoVyk7Vz1nYihXKS5jdHRBdXRoSW5mbztPSCgpLmluZm8obixELFcpfX07CkkyWj1mdW5jdGlvbigpe3JldHVybihnLnFqKCkucmVzb2x2ZShnLmhwKGcuWDMpKT8uTFgoKT8ubG9nZ2luZ0hvdENvbmZpZz8uY3NpQ29uZmlnPy5kZWJ1Z1RpY2tzPz9bXSkubWFwKG49Pk9iamVjdC52YWx1ZXMobilbMF0pfTsKdSQ9ZnVuY3Rpb24obixXLEQpe2lmKCFnLmwoIndlYl9jc2lfYWN0aW9uX3NhbXBsaW5nX2VuYWJsZWQiKXx8IWdiKEQpLmFjdGlvbkRpc2FibGVkKXt2YXIgYj1yYihEKSx2O2lmKHY9Zy5sKCJ3ZWJfY3NpX2RlYnVnX3NhbXBsZV9lbmFibGVkIikmJmIpe2cucWooKS5yZXNvbHZlKGcuaHAoZy5YMykpPy5MWCgpJiYhbCQmJihsJD0hMCx1JCgiZ2NmbCIsKDAsZy5SKSgpLEQpKTt2PWcucWooKS5yZXNvbHZlKGcuaHAoZy5YMykpPy5MWCgpPy5sb2dnaW5nSG90Q29uZmlnPy5jc2lDb25maWc/LmRlYnVnU2FtcGxlV2VpZ2h0fHwwO3ZhciBrO2lmKGs9diE9PTApYjp7az1JMlooKTtpZihrLmxlbmd0aD4wKWZvcih2YXIgaD0wO2g8ay5sZW5ndGg7aCsrKWlmKG49PT1rW2hdKXtrPSEwO2JyZWFrIGJ9az0hMX1rPyh2PU9hKGIpJXYhPT0wLGdiKEQpLmRlYnVnVGlja3NFeGNsdWRlZExvZ2dlZHx8KGs9e30say5kZWJ1Z1RpY2tzRXhjbHVkZWQ9dixkYihrLEQpKSxnYihEKS5kZWJ1Z1RpY2tzRXhjbHVkZWRMb2dnZWQ9CiEwKTp2PSExfWlmKCF2KXtpZihuWzBdIT09Il8iJiYodj1uLFVILm1hcmspKXt2LnN0YXJ0c1dpdGgoIm1hcmtfIil8fCh2PSJtYXJrXyIrdik7RCYmKHYrPWAgKCR7RH0pYCk7az12O2g9e307aWYoVyE9PXZvaWQgMCYmIWcubCgid2ViX2NzaV9kaXNhYmxlX2FsdF90aW1lX3BlcmZvcm1hbmNlX21hcmsiKSl7bGV0IEw9VztMPWcubCgiY3NpX3VzZV9wZXJmb3JtYW5jZV9uYXZpZ2F0aW9uX3RpbWluZyIpP0wtVUgudGltZU9yaWdpbjpMLShVSC50aW1lT3JpZ2lufHxVSC50aW1pbmcubmF2aWdhdGlvblN0YXJ0KTtoLnN0YXJ0VGltZT1MfWcubCgiY3NpX2VuYWJsZV9jaHJvbWVfZGV2dG9vbHNfcGVyZm9ybWFuY2VfdGltZWxpbmVfaW50ZWdyYXRpb24iKSYmKGguZGV0YWlsPXtHVTp7ZGF0YVR5cGU6Im1hcmtlciIsY29sb3I6InByaW1hcnkiLHRvb2x0aXBUZXh0Omt9fSk7az1PYmplY3Qua2V5cyhoKS5sZW5ndGg+MD9oOnZvaWQgMDt0cnl7VUgubWFyayh2LGspfWNhdGNoKEwpe1VILm1hcmsodil9fXY9CkhiKER8fCIiKTt2LnRpY2tbbl09V3x8KDAsZy5SKSgpO2lmKHYuY2FsbGJhY2smJnYuY2FsbGJhY2tbbl0pZm9yKHZhciB4IG9mIHYuY2FsbGJhY2tbbl0peCgpO3g9dG0oRCk7eC5nZWxUaWNrcyYmKHguZ2VsVGlja3Nbbl09ITApO3Y9R3coRCk7eD1XfHwoMCxnLlIpKCk7dltuXT14O3Y9Z2IoRCkuY3R0QXV0aEluZm87bj09PSJfc3RhcnQiPyhuPU9IKCksWk0obixgYmFzZWxpbmVfJHtifWApfHxnLnpVKCJsYXRlbmN5QWN0aW9uQmFzZWxpbmVkIix7Y2xpZW50QWN0aW9uTm9uY2U6Yn0se3RpbWVzdGFtcDpXLGN0dEF1dGhJbmZvOnZ9KSk6T0goKS50aWNrKG4sYixXLHYpO1R3KEQpO3JldHVybiB4fX19OwpTVjE9ZnVuY3Rpb24oKXt2YXIgbj1VSC5nZXRFbnRyaWVzQnlUeXBlPy4oIm1hcmsiKTtuJiZuLmZvckVhY2goVz0+e1cubmFtZS5zdGFydHNXaXRoKCJtYXJrXyIpJiZVSC5jbGVhck1hcmtzPy4oVy5uYW1lKX0pfTsKakw9ZnVuY3Rpb24oKXtzd2l0Y2goRzEoKSl7Y2FzZSAiaGlkZGVuIjpyZXR1cm4gMDtjYXNlICJ2aXNpYmxlIjpyZXR1cm4gMTtjYXNlICJwcmVyZW5kZXIiOnJldHVybiAyO2Nhc2UgInVubG9hZGVkIjpyZXR1cm4gMztkZWZhdWx0OnJldHVybi0xfX07CkNCPWZ1bmN0aW9uKG4pe3ZhciBXPXt9LEQ9KGIsdixrKT0+e3Y9di5tYXRjaCgiX3JpZCIpP3Yuc3BsaXQoIl9yaWQiKVswXTp2O3R5cGVvZiBrPT09Im51bWJlciImJihrPUpTT04uc3RyaW5naWZ5KGspKTtiLnJlcXVlc3RJZHM/Yi5yZXF1ZXN0SWRzLnB1c2goe2VuZHBvaW50OnYsaWQ6a30pOmIucmVxdWVzdElkcz1be2VuZHBvaW50OnYsaWQ6a31dfTsKZm9yKGxldCBbYix2XW9mIE9iamVjdC5lbnRyaWVzKG4pKXtuPWI7bGV0IGs9djtzd2l0Y2gobil7Y2FzZSAiR2V0QnJvd3NlX3JpZCI6RChXLG4sayk7YnJlYWs7Y2FzZSAiR2V0R3VpZGVfcmlkIjpEKFcsbixrKTticmVhaztjYXNlICJHZXRIb21lX3JpZCI6RChXLG4sayk7YnJlYWs7Y2FzZSAiR2V0UGxheWVyX3JpZCI6RChXLG4sayk7YnJlYWs7Y2FzZSAiR2V0U2VhcmNoX3JpZCI6RChXLG4sayk7YnJlYWs7Y2FzZSAiR2V0U2V0dGluZ3NfcmlkIjpEKFcsbixrKTticmVhaztjYXNlICJHZXRUcmVuZGluZ19yaWQiOkQoVyxuLGspO2JyZWFrO2Nhc2UgIkdldFdhdGNoTmV4dF9yaWQiOkQoVyxuLGspO2JyZWFrO2Nhc2UgInl0X3JlZCI6Vy5pc1JlZFN1YnNjcmliZXI9ISFrO2JyZWFrO2Nhc2UgInl0X2FkIjpXLmlzTW9uZXRpemVkPSEha319cmV0dXJuIFd9OwpBU3g9ZnVuY3Rpb24obixXKXtuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iobik7aWYoIW4pcmV0dXJuITE7dmFyIEQ9IiIsYj1uLm5vZGVOYW1lO2I9PT0iU0NSSVBUIj8oRD1uLnNyYyxEfHwoRD1uLmdldEF0dHJpYnV0ZSgiZGF0YS10aW1pbmctaHJlZiIpKSYmKEQ9d2luZG93LmxvY2F0aW9uLnByb3RvY29sK0QpKTpiPT09IkxJTksiJiYoRD1uLmhyZWYpO1NqKGRvY3VtZW50KSYmbi5zZXRBdHRyaWJ1dGUoIm5vbmNlIixTaihkb2N1bWVudCkpO3JldHVybiBEPyhuPVVILmdldEVudHJpZXNCeU5hbWUoRCkpJiZuWzBdJiYobj1uWzBdLEQ9aSQoKSx1JCgicnNmXyIrVyxEK01hdGgucm91bmQobi5mZXRjaFN0YXJ0KSksdSQoInJzZV8iK1csRCtNYXRoLnJvdW5kKG4ucmVzcG9uc2VFbmQpKSxuLnRyYW5zZmVyU2l6ZSE9PXZvaWQgMCYmbi50cmFuc2ZlclNpemU9PT0wKT8hMDohMTohMX07Cm1IMT1mdW5jdGlvbigpe3ZhciBuPXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCxXPVVILmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIik7Vz1nLkVNKFcsRD0+RC5uYW1lLmluZGV4T2YoYCR7bn0vL2ZvbnRzLmdzdGF0aWMuY29tL3MvYCk9PT0wKTsKKFc9Zy51XyhXLChELGIpPT5iLmR1cmF0aW9uPkQuZHVyYXRpb24/YjpELHtkdXJhdGlvbjowfSkpJiZXLnN0YXJ0VGltZT4wJiZXLnJlc3BvbnNlRW5kPjAmJih1JCgid2ZmcyIseXYoVy5zdGFydFRpbWUpKSx1JCgid2ZmZSIseXYoVy5yZXNwb25zZUVuZCkpKX07CktOdD1mdW5jdGlvbihuLFcsRCl7VUgmJlVILm1lYXN1cmUmJihuLnN0YXJ0c1dpdGgoIm1lYXN1cmVfIil8fChuPSJtZWFzdXJlXyIrbiksRD9VSC5tZWFzdXJlKG4sVyxEKTpXP1VILm1lYXN1cmUobixXKTpVSC5tZWFzdXJlKG4pKX07CkJiPWZ1bmN0aW9uKG4pe3ZhciBXPW9MKCJhZnQiLG4pO2lmKFcpcmV0dXJuIFc7Vz1nLkFyKChufHwiIikrIlRJTUlOR19BRlRfS0VZUyIsWyJvbCJdKTt2YXIgRD1XLmxlbmd0aDtmb3IobGV0IGI9MDtiPEQ7YisrKXtsZXQgdj1vTChXW2JdLG4pO2lmKHYpcmV0dXJuIHZ9cmV0dXJuIE5hTn07CkZBPWZ1bmN0aW9uKG4sVyl7Zy5HYigieXRnbG9iYWwudGltaW5nIisoV3x8IiIpKyJyZWFkeV8iLG4pfTsKb0w9ZnVuY3Rpb24obixXKXtpZihuPUd3KFcpW25dKXJldHVybiB0eXBlb2Ygbj09PSJudW1iZXIiP246bltuLmxlbmd0aC0xXX07ClR3PWZ1bmN0aW9uKG4pe3ZhciBXPW9MKCJfc3RhcnQiLG4pLEQ9QmIobiksYj0hd2I7VyYmRCYmYiYmKGw5KE9udCxuZXcgTVEoTWF0aC5yb3VuZChELVcpLG4pKSx3Yj0hMCl9OwpQYXg9ZnVuY3Rpb24oKXtpZihVSC5nZXRFbnRyaWVzQnlUeXBlKXt2YXIgbj1VSC5nZXRFbnRyaWVzQnlUeXBlKCJwYWludCIpO2lmKG49Zy5sXyhuLEQ9PkQubmFtZT09PSJmaXJzdC1wYWludCIpKXJldHVybiB5dihuLnN0YXJ0VGltZSl9dmFyIFc7CmcubCgiY3NpX3VzZV9wZXJmb3JtYW5jZV9uYXZpZ2F0aW9uX3RpbWluZyIpP1c9VUguZ2V0RW50cmllc0J5VHlwZSgiZmlyc3QtcGFpbnQiKVswXS5zdGFydFRpbWU6Vz1VSC50aW1pbmcubDI7cmV0dXJuIFc/TWF0aC5tYXgoMCxXKTowfTsKZy5STD1mdW5jdGlvbihuKXtlTChuKTtabmkoKTtTVjEoKTtufHwoZy5BcigiVElNSU5HX0FDVElPTiIpJiZnLlNIKCJQUkVWSU9VU19BQ1RJT04iLGcuQXIoIlRJTUlOR19BQ1RJT04iKSksZy5TSCgiVElNSU5HX0FDVElPTiIsIiIpKX07CmNiPWZ1bmN0aW9uKG4sVyl7UFYoKCk9PntIYigiIikuaW5mby5hY3Rpb25UeXBlPW47VyYmZy5TSCgiVElNSU5HX0FGVF9LRVlTIixXKTtnLlNIKCJUSU1JTkdfQUNUSU9OIixuKTt2YXIgRD1DQihnLkFyKCJUSU1JTkdfSU5GTyIse30pKTtPYmplY3Qua2V5cyhEKS5sZW5ndGg+MCYmZGIoRCk7RD17aXNOYXZpZ2F0aW9uOiEwLGFjdGlvblR5cGU6SUwoZy5BcigiVElNSU5HX0FDVElPTiIpKX07dmFyIGI9Zy5BcigiUFJFVklPVVNfQUNUSU9OIik7YiYmKEQucHJldmlvdXNBY3Rpb249SUwoYikpO2lmKGI9Zy5BcigiQ0xJRU5UX1BST1RPQ09MIikpRC5odHRwUHJvdG9jb2w9YjtpZihiPWcuQXIoIkNMSUVOVF9UUkFOU1BPUlQiKSlELnRyYW5zcG9ydFByb3RvY29sPWI7KGI9Zy5SdigpKSYmYiE9PSJVTkRFRklORURfQ1NOIiYmKEQuY2xpZW50U2NyZWVuTm9uY2U9Yik7Yj1qTCgpO2lmKGI9PT0xfHxiPT09LTEpRC5pc1Zpc2libGU9ITA7Yj1xUSgpLmxvYWRUeXBlPT09ImNvbGQiOwp2YXIgdj1YQSgpO2J8fChiPXYueXRfbHQ9PT0iY29sZCIpO2lmKGIpe0QubG9hZFR5cGU9ImNvbGQiO2I9WEEoKTt2PUVIKCk7bGV0IHg9aSQoKSxMPWcuQXIoIkNTSV9TVEFSVF9USU1FU1RBTVBfTUlMTElTIiwwKTtMPjAmJiFnLmwoImVtYmVkc193ZWJfZW5hYmxlX2NzaV9zdGFydF9vdmVycmlkZV9raWxsc3dpdGNoIikmJih4PUwpO3gmJih1JCgic3J0Iix2LnJlc3BvbnNlU3RhcnQpLGIucHJlcmVuZGVyIT09MSYmencoeCkpO2I9UGF4KCk7Yj4wJiZ1JCgiZnB0IixiKTtiPUVIKCk7Yi5pc1BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZyYmZGIoe3BlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZzohMH0sdm9pZCAwKTt1JCgibnJlcXMiLGIucmVxdWVzdFN0YXJ0LHZvaWQgMCk7dSQoIm5yZXNzIixiLnJlc3BvbnNlU3RhcnQsdm9pZCAwKTt1JCgibnJlc2UiLGIucmVzcG9uc2VFbmQsdm9pZCAwKTtiLnJlZGlyZWN0RW5kLWIucmVkaXJlY3RTdGFydD4wJiYodSQoIm5ycyIsYi5yZWRpcmVjdFN0YXJ0LAp2b2lkIDApLHUkKCJucmUiLGIucmVkaXJlY3RFbmQsdm9pZCAwKSk7Yi5kb21haW5Mb29rdXBFbmQtYi5kb21haW5Mb29rdXBTdGFydD4wJiYodSQoIm5kbnNzIixiLmRvbWFpbkxvb2t1cFN0YXJ0LHZvaWQgMCksdSQoIm5kbnNlIixiLmRvbWFpbkxvb2t1cEVuZCx2b2lkIDApKTtiLmNvbm5lY3RFbmQtYi5jb25uZWN0U3RhcnQ+MCYmKHUkKCJudGNwcyIsYi5jb25uZWN0U3RhcnQsdm9pZCAwKSx1JCgibnRjcGUiLGIuY29ubmVjdEVuZCx2b2lkIDApKTtiLnNlY3VyZUNvbm5lY3Rpb25TdGFydD49aSQoKSYmYi5jb25uZWN0RW5kLWIuc2VjdXJlQ29ubmVjdGlvblN0YXJ0PjAmJih1JCgibnN0Y3BzIixiLnNlY3VyZUNvbm5lY3Rpb25TdGFydCx2b2lkIDApLHUkKCJudGNwZSIsYi5jb25uZWN0RW5kLHZvaWQgMCkpO1VIJiYiZ2V0RW50cmllc0J5VHlwZSJpbiBVSCYmbUgxKCk7Yj1bXTtpZihkb2N1bWVudC5xdWVyeVNlbGVjdG9yJiZVSCYmVUguZ2V0RW50cmllc0J5TmFtZSlmb3IoayBpbiBRdilRdi5oYXNPd25Qcm9wZXJ0eShrKSYmCih2PVF2W2tdLEFTeChrLHYpJiZiLnB1c2godikpO3ZhciBrPWI7aWYoay5sZW5ndGg+MCl7RC5yZXNvdXJjZUluZm89W107Zm9yKHZhciBoIG9mIGspRC5yZXNvdXJjZUluZm8ucHVzaCh7cmVzb3VyY2VDYWNoZTpofSl9fWRiKEQpO0pTcigpO0ZBKCEwKTtoPWcuQXIoIlRJTUlOR19BQ1RJT04iKTtnLnJyKCJ5dGdsb2JhbC50aW1pbmdyZWFkeV8iKSYmaCYmVnYoKSYmQmIoKSYmVHcoKX0pKCl9OwpXUD1mdW5jdGlvbigpe3ZhciBuPXt9O1BWKCgpPT57VnYoKSYmZy5hTCgiYWEiLHZvaWQgMCx2b2lkIDApO2ZCKCk7Zy5STCgpO0ZBKCExKTtuLmN0dEF1dGhJbmZvJiYoZ2IoKS5jdHRBdXRoSW5mbz1uLmN0dEF1dGhJbmZvKTtnLlNIKCJUSU1JTkdfQUZUX0tFWVMiLFtdKTtuLnJQP2cubmwoe2xvYWRUeXBlOiJob3QifSk6Zy5ubCh7bG9hZFR5cGU6Indhcm0ifSk7Zy5TSCgiVElNSU5HX0FDVElPTiIsIiIpO2RlbGV0ZSBnLkFyKCJUSU1JTkdfSU5GTyIse30pLnl0X2x0O1BWKHp3KShuLnN0YXJ0VGltZSx2b2lkIDApfSkoKX07CmcuYmQ9ZnVuY3Rpb24obixXPXt9KXtQVigoKT0+e2cuRFkobik7dmFyIEQ9Vy5zYW1wbGVSYXRlO2lmKCFnLmwoIndlYl9jc2lfYWN0aW9uX3NhbXBsaW5nX2VuYWJsZWQiKXx8RD09PXZvaWQgMHx8RDw9MSlEPSExO2Vsc2V7dmFyIGI9cmIobik7RD1PYShiKSVEIT09MH1EJiYoZ2IobikuYWN0aW9uRGlzYWJsZWQ9ITApO0hiKG58fCIiKS5pbmZvLmFjdGlvblR5cGU9bjtXLmN0dEF1dGhJbmZvJiYoZ2IobikuY3R0QXV0aEluZm89Vy5jdHRBdXRoSW5mbyk7Zy5TSChuKyJUSU1JTkdfQUNUSU9OIixuKTtQVih6dykoVy5zdGFydFRpbWUsbik7RD17YWN0aW9uVHlwZTpJTChuKX07Vy5leiYmKEQucHJldmlvdXNBY3Rpb249SUwoZy5BcigiVElNSU5HX0FDVElPTiIpKSk7KGI9Zy5SdigpKSYmYiE9PSJVTkRFRklORURfQ1NOIiYmKEQuY2xpZW50U2NyZWVuTm9uY2U9Yik7Zy5ubChELG4pO0ZBKCEwLG4pfSkoKX07CmcuRFk9ZnVuY3Rpb24obil7UFYoKCk9PntWdihuKSYmZy5hTCgiYWEiLHZvaWQgMCxuKTtmQihuKTtnLlJMKG4pfSkoKX07ClZ2PWZ1bmN0aW9uKG4pe3JldHVybiBQVigoKT0+Zy52UCgiX3N0YXJ0IixuKSkoKX07Cmcubmw9ZnVuY3Rpb24obixXLEQ9ITEpe1BWKGRiKShuLFcsRCl9OwpnLmFMPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gUFYodSQpKG4sVyxEKX07CmtEPWZ1bmN0aW9uKG4pe1BWKEtOdCkoImFjdGlvbl9maW5pc2hlZCIsbix2b2lkIDApfTsKZy52UD1mdW5jdGlvbihuLFcpe3JldHVybiBQVigoKT0+e3ZhciBEPUd3KFcpO3JldHVybiBuIGluIER9KSgpfTsKeEQ9ZnVuY3Rpb24obil7aWYoIWcubCgidW5pdmVyc2FsX2NzaV9uZXR3b3JrX3RpY2tzIikpcmV0dXJuIiI7bj1TMShuKXx8IiI7dmFyIFc9T2JqZWN0LmtleXMoaGUpO2ZvcihsZXQgRD0wO0Q8Vy5sZW5ndGg7RCsrKXtsZXQgYj1XW0RdO2lmKG4uaW5jbHVkZXMoYikpcmV0dXJuIGJ9cmV0dXJuIiJ9Owplaz1mdW5jdGlvbihuKXtpZighZy5sKCJ1bml2ZXJzYWxfY3NpX25ldHdvcmtfdGlja3MiKSlyZXR1cm4oKT0+e307CnZhciBXPWhlW25dO3JldHVybiBXPyhnLkxsKFcpLCgpPT57dmFyIEQ9Zy5sKCJ1bml2ZXJzYWxfY3NpX25ldHdvcmtfdGlja3MiKT8oRD1VSE1bbl0pP2cuTGwoRCk6ITE6ITE7cmV0dXJuIER9KTooKT0+e319OwpnLkxsPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gUFYoKCk9PntpZihnLnZQKG4sRCkpcmV0dXJuITE7Zy5hTChuLFcsRCk7cmV0dXJuITB9KSgpfTsKZy5nXz1mdW5jdGlvbihuLFcsRCl7UFYoKCk9PntpZighVnYoRCl8fGcudlAobixEKSlyZXR1cm4hMTtnLmFMKG4sVyxEKTtyZXR1cm4hMH0pKCl9Owp5U2g9ZnVuY3Rpb24oKXtQVigoKT0+e3ZhciBuPXJiKCk7cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57c2V0VGltZW91dCgoKT0+e249PT1yYigpJiZnLmFMKCJmdGwiLHZvaWQgMCx2b2lkIDApfSwwKX0pfSkoKX07CkU5Yj1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKFg3Lmluc3RhbmNlIT09dm9pZCAwKXtpZihiPVg3Lmluc3RhbmNlLG49W24hPT1iLmosVyE9PWIueUcsRCE9PWIuVyx2IT09Yi5KLCExLCExLCExXSxuLnNvbWUoaz0+aykpdGhyb3cgbmV3IGcuUXgoIklubmVyVHViZVRyYW5zcG9ydFNlcnZpY2UgaXMgYWxyZWFkeSBpbml0aWFsaXplZCIsbik7Cn1lbHNlIFg3Lmluc3RhbmNlPW5ldyBYNyhuLFcsRCxiLHYpfTsKaW53PWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXtuPWF3YWl0ICRHKG4uVy5haihXPy5CRz8uaWRlbnRpdHl8fHU5LHtzZXNzaW9uSW5kZXg6Vz8uQkc/LnNlc3Npb25JbmRleH0pKTtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHsuLi5rVihEKSwuLi5ufSl9OwpkSGo9YXN5bmMgZnVuY3Rpb24obixXLEQsYj0oKT0+e30pe3ZhciB2PVcuY29uZmlnPy5Ibj8uUkw7CmlmKHYmJm4uSiYmbi5KLmhhcyh2KSYmIVcuY29uZmlnPy5Ibj8uZGlzYWJsZUNhY2hlKXt2YXIgaz1hd2FpdCBuLkouZ2V0KHYpO2lmKGsmJiFrLmlzRXhwaXJlZCgpKXJldHVybiBiPXFyKGspLGsuaXNQcm9jZXNzZWQoKXx8KEdXKG4sYixXKSxhd2FpdCB0ZShuLkosdikpLFByb21pc2UucmVzb2x2ZShiKX1hd2FpdCB1X3QoVyk7KHY9Vy5jb25maWc/LnJlcXVlc3RLZXkpJiZuLk4uaGFzKHYpP0Q9bi5OLmdldCh2KTooaz1KU09OLnN0cmluZ2lmeShXLmlubmVyVHViZVJlcXVlc3QpLFcuUGk9ey4uLlcuUGksaGVhZGVyczp7Li4uKFcuUGk/LmhlYWRlcnM/P3t9KSwuLi5EfX0sRD17Li4uVy5QaX0sVy5QaS5tZXRob2Q9PT0iUE9TVCImJihEPXsuLi5ELGJvZHk6a30pLFcuY29uZmlnPy5MYSYmZy5hTChXLmNvbmZpZy5MYSksRD1uLnlHLmZldGNoKFcuaW5wdXQsRCxXLmNvbmZpZyksdiYmbi5OLnNldCh2LEQpKTtpZigoRD1hd2FpdCBEKSYmImVycm9yImluIEQmJkQ/LmVycm9yPy5kZXRhaWxzKXtrPQpELmVycm9yLmRldGFpbHM7Zm9yKGxldCBoIG9mIGspKGs9aFsiQHR5cGUiXSkmJm85ai5pbmRleE9mKGspPi0xJiYoZGVsZXRlIGhbIkB0eXBlIl0sRD1oKX12JiZuLk4uaGFzKHYpJiZuLk4uZGVsZXRlKHYpO1cuY29uZmlnPy5SViYmZy5hTChXLmNvbmZpZy5SVik7R1cobixELFcpO1cuY29uZmlnPy5HdCYmZy5hTChXLmNvbmZpZy5HdCk7YigpO3JldHVybiBEfHx2b2lkIDB9OwpnLnJfPWZ1bmN0aW9uKG4sVyxELGIsdj17Qkc6e2lkZW50aXR5OnU5fX0pe3ZhciBrPWcucWooKS5yZXNvbHZlKGcuaHAoJEQpKT8uKCk7aWYoKGcubCgibWF3X25ldHdvcmtfbWFjaGluZV9yYXdfcmVxdWVzdCIpfHxnLmwoImFsbF93ZWJfbmV0d29ya19tYWNoaW5lX3Jhd19yZXF1ZXN0IikpJiZrKXJldHVybiB6VGoobDJqKGsse2lubmVyVHViZVJlcXVlc3Q6VyxhcGlQYXRoOkQsY2xpY2tUcmFja2luZ1BhcmFtczpiLGNvbmZpZzp2LGluY2x1ZGVDdXJyZW50U2NyZWVuTm9uY2U6ITB9KSkudGhlbih4PT54LCgpPT57fSk7CnZhciBoPSgpPT57fTsKaD1layh4RChEKSk7Vy5jb250ZXh0fHwoVy5jb250ZXh0PWcudmIoYiwhMCkpO3JldHVybiBuZXcgZy5YMShhc3luYyB4PT57dmFyIEw9SyQoRCk7TD1nLlRkKEwpPyJzYW1lLW9yaWdpbiI6ImNvcnMiO2lmKG4uVy5zQil7dmFyIGU9bi5XLmFqKHY/LkJHPy5pZGVudGl0eXx8dTkse3Nlc3Npb25JbmRleDp2Py5CRz8uc2Vzc2lvbkluZGV4fSk7TD17Li4ua1YoTCksLi4uZX19ZWxzZSBMPWF3YWl0IGludyhuLHYsTCk7ZT1acihLJChEKSk7ZT17aW5wdXQ6ZSxQaTpVeihlKSxpbm5lclR1YmVSZXF1ZXN0OlcsY29uZmlnOnZ9O3goZEhqKG4sZSxMLGgpKX0pfTsKdV90PWFzeW5jIGZ1bmN0aW9uKG4pe2lmKG4/LmlubmVyVHViZVJlcXVlc3Q/LmNvbnRleHQpe249bi5pbm5lclR1YmVSZXF1ZXN0LmNvbnRleHQ7Zm9yKGxldCBXIG9mW10pYXdhaXQgVy5CcyhuKX19OwpHVz1mdW5jdGlvbihuLFcsRCl7aWYoVyYmIVc/LnNlcXVlbmNlTWV0YURhdGE/LnNraXBQcm9jZXNzaW5nJiZuLlgpZm9yKGxldCBiIG9mIHNvKW4uWFtiXSYmbi5YW2JdLmhhbmRsZVJlc3BvbnNlKFcsRCl9OwpwbD1mdW5jdGlvbigpe3ZhciBuLFc7cmV0dXJue3JGOm5ldyBOcigoRCxiKT0+e249RDtXPWJ9KSwKcmVzb2x2ZTpuLHJlamVjdDpXfX07CkhQPWZ1bmN0aW9uKG4pe3JldHVybiBZRChuKT9uOllvKG4pP25ldyBOcigoVyxEKT0+e24udGhlbihXLEQpfSk6bmV3IE5yKFc9PntXKG4pfSl9OwpmbD1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IE5yKChXLEQpPT57RChuKX0pfTsKSmU9ZnVuY3Rpb24obil7dHJ5e3JldHVybiBIUChuKCkpfWNhdGNoKFcpe3JldHVybiBmbChXKX19Owp6VGo9ZnVuY3Rpb24obil7cmV0dXJuIElqKG4sZy5YMSl9OwpJaj1mdW5jdGlvbihuLFcpe3JldHVybiBuZXcgVygoRCxiKT0+e1NrKG4sRCxiKX0pfTsKQWU9YXN5bmMgZnVuY3Rpb24obil7cmV0dXJuIElqKG4sUHJvbWlzZSl9OwptRT1mdW5jdGlvbihuKXtpZihuLk49PT0iZnVsZmlsbGVkIil7dmFyIFc9bi5KO24uSj1bXTtuLlc9W107Zm9yKHZhciBEIG9mIFcpRChuLnJlc3VsdCl9ZWxzZSBpZihuLk49PT0icmVqZWN0ZWQiKXtEPW4uVztuLko9W107bi5XPVtdO2ZvcihXIG9mIEQpVyhuLmVycm9yKX19OwpTaz1mdW5jdGlvbihuLFcsRCl7dmFyIHtyRjpiLHJlc29sdmU6dixyZWplY3Q6a309cGwoKTtuLkoucHVzaChoPT57aWYoVyl0cnl7bGV0IHg9VyhoKTt2KHgpfWNhdGNoKHgpe2soeCl9ZWxzZSB2KGgpfSk7Cm4uVy5wdXNoKGg9PntpZihEKXRyeXtsZXQgeD1EKGgpO3YoeCl9Y2F0Y2goeCl7ayh4KX1lbHNlIGsoaCl9KTsKbUUobik7cmV0dXJuIGJ9OwpLbD1mdW5jdGlvbihuLFcpe3JldHVybiBTayhuLHZvaWQgMCxXKX07ClRlYj1mdW5jdGlvbihuLFcpe1NrKG4sRD0+U2soSFAoVygpKSwoKT0+RCksRD0+U2soSFAoVygpKSwoKT0+ZmwoRCkpKX07Ck9vPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGpZMShXLmNhbGwobikpfTsKUFA9ZnVuY3Rpb24obil7cmV0dXJuIGZ1bmN0aW9uKigpe3JldHVybiB5aWVsZHtyRjpIUChuKX19KCl9OwpqWTE9ZnVuY3Rpb24obil7cmV0dXJuIEplKCgpPT5aWShuLG4ubmV4dCgpKSl9OwpaWT1mdW5jdGlvbihuLFcpe3JldHVybiBXLmRvbmU/SFAoVy52YWx1ZSk6S2woU2soVy52YWx1ZS5yRixEPT5aWShuLG4ubmV4dChEKSkpLEQ9PlpZKG4sbi50aHJvdyhEKSkpfTsKRk54PWZ1bmN0aW9uKG4pe3ZhciBXPUNhVShuKTtyZXR1cm4gU2soQmVTKFcpLCgpPT5XLm1hcChEPT5ELnN0YXRlKCkpKX07CkJlUz1mdW5jdGlvbihuKXtpZihuLmxlbmd0aD09PTApcmV0dXJuIEhQKE5hTik7dmFyIHtyRjpXLHJlc29sdmU6RH09cGwoKSxiPW4ubGVuZ3RoO2ZvcihsZXQgdj0wO3Y8bi5sZW5ndGg7disrKVRlYihuW3ZdLCgpPT57Vy5OPT09InBlbmRpbmciJiYod1dqKHZvaWQgMCkmJih2b2lkIDApKHYpJiZXLk49PT0icGVuZGluZyI/RCh2KTooLS1iLGI9PT0wJiZEKE5hTikpKX0pOwpyZXR1cm4gV307CkNhVT1mdW5jdGlvbihuKXtyZXR1cm4gbi5tYXAoVz0+SFAoVykpfTsKTUV3PWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gT28obixmdW5jdGlvbigpe3ZhciBiPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciB2PSRHKGIuTi5haihXPy5CRz8uaWRlbnRpdHl8fHU5LHtzZXNzaW9uSW5kZXg6Vz8uQkc/LnNlc3Npb25JbmRleH0pKTt2PXlpZWxkKlBQKEhQKHYpKTtyZXR1cm57Li4ua1YoRCksLi4udn19KCl9KX07ClVvPWZ1bmN0aW9uKG4pe3JldHVybiBuPT09MXx8bj09PTJ9OwpWRTI9ZnVuY3Rpb24obixXLEQ9ITEpe3ZhciBiLHY9Zy53KFcsUlRoKT8ucmVxdWVzdDt2JiZuLk4uaVQmJihiPW4uTi5pVFt2XSk7Ynx8RHx8KHY9Zy53KFcsUVlNKT8uc2lnbmFsKSYmbi5OLndkJiYoYj1uLk4ud2Rbdl0pO2lmKCFiJiYobj1EP24uTi51STpuLk4uemcpKWZvcihsZXQgayBpbiBXKWlmKG5ba10pe2I9bltrXTticmVha31pZighYil7aWYoRCl0aHJvdyBFcnJvcigiRXJyb3I6IE5vIHN0cmVhbWluZyByZXF1ZXN0IGJ1aWxkZXIgZm91bmQgZm9yIGNvbW1hbmQiKTt0aHJvdyBFcnJvcigiRXJyb3I6IE5vIHJlcXVlc3QgYnVpbGRlciBmb3VuZCBmb3IgY29tbWFuZC4iKTt9Vz1iKCk7cmV0dXJuIEhQKFcpfTsKbDJqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4ucnVuKCJSRVFVRVNUX0lOSVQiLFcpfTsKeXE9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5ydW4oIlBST0NFU1NfUkVTUE9OU0UiLFcsIlJlc3BvbnNlTWFjaGluZSAoQ2FjaGUpIil9OwpFbz1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIG4ucnVuKCJJTklUIixXLEQhPT12b2lkIDA/YFJlc3BvbnNlTWFjaGluZSAoQ2h1bmsgJHtEfSlgOiJSZXNwb25zZU1hY2hpbmUiKX07CmNTMj1mdW5jdGlvbigpe3ZhciBuPWcucWooKTtnLnhvKG4se05IOmlkLFJjOigpPT5uZXcgTWFwfSk7CmcueG8obix7Tkg6dWQsWUw6dWQscG46ITB9KTtnLnhvKG4se05IOm9qLFlMOm9qLHBuOiEwfSk7Zy54byhuLHtOSDpkXyxZTDpkXyxwbjohMH0pO2cueG8obix7Tkg6elcsWUw6elcscG46ITB9KTtnLnhvKG4se05IOmxkLFlMOmxkLHBuOiEwfSk7Zy54byhuLHtOSDpUVyxZTDpUVyxwbjohMH0pO2cueG8obix7Tkg6amssWUw6amsscG46ITB9KTtnLnhvKG4se05IOkNsLFlMOkNsLHBuOiEwfSk7Zy54byhuLHtOSDpCUCxZTDpCUCxwbjohMH0pO2cueG8obix7Tkg6RjcsWUw6RjcscG46ITB9KTtnLnhvKG4se05IOndfLFJjOihXLEQsYix2LGssaCx4LEwsZSxHKT0+KHtDT01NQU5EX0lOSVQ6TCxSRVFVRVNUX0lOSVQ6ZSxDQUNIRTpELExPQ0FMX1JPVVRFUjp4LENPTlRFWFQ6YixBVVRIOlcsREVEVVBFOnYsRkVUQ0g6aCxSRVRSWTpHLEZBTExCQUNLOmt9KSwKW2cuTFhdOlt1ZCxvaixkXyx6VyxsZCxUVyxqayxDbCxCUCxGN10scG46ITB9KTtnLnhvKG4se05IOiRELFJjOlc9PigpPT5uZXcgZy5NcihXKSwKW2cuTFhdOlt3X10scG46ITB9KTtnLnhvKG4se05IOlJqLFlMOlJqLHBuOiEwfSk7Zy54byhuLHtOSDpRcSxZTDpRcSxwbjohMH0pO2cueG8obix7Tkg6VnEsWUw6VnEscG46ITB9KTtnLnhvKG4se05IOmNQLFlMOmNQLHBuOiEwfSk7Zy54byhuLHtOSDphaixSYzooVyxELGIsdik9Pih7SU5JVDp2LEVSUk9SX1VOUEFDS0VSOkQsUFJPQ0VTU19SRVNQT05TRTpiLENBTExCQUNLX0RJU1BBVENIRVI6V30pLApbZy5MWF06W1JqLFFxLFZxLGNQXSxwbjohMH0pO2cueG8obix7Tkg6blIsUmM6Vz0+KCk9Pm5ldyBXRyhXKSwKW2cuTFhdOlthal0scG46ITB9KX07CnFyPWZ1bmN0aW9uKG4pe3JldHVybnsuLi5uLmRhdGEuaW5uZXJ0dWJlUmVzcG9uc2UsY2FjaGVNZXRhZGF0YTp7aXNDYWNoZUhpdDohMH19fTsKdGU9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1uLk4uZ2V0KFcpO0QmJihELmVudHJ5RGF0YS5pc1Byb2Nlc3NlZD0hMCxhd2FpdCBEdyhuLFcsRC5lbnRyeURhdGEpKX07CkR3PWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLko7aWYoRC5leHBpcmVUaW1lc3RhbXBNcyl7Yj1OdW1iZXIoRC5leHBpcmVUaW1lc3RhbXBNcyktTWF0aC5yb3VuZCgoMCxnLlIpKCkpO2xldCB2PXYwKCJtd2ViX292ZXJyaWRlX3Jlc3BvbnNlX3N0b3JlX2V4cGlyYXRpb25fbXMiKTt2PjAmJnY8YiYmKGI9dil9Yj1zZXRUaW1lb3V0KCgpPT57bi5yZW1vdmUoVyl9LGIpOwpuLk4uc2V0KFcse2VudHJ5RGF0YTpELHRpbWVyOmJ9KX07CnZHPWZ1bmN0aW9uKG4sVyl7aWYobj1uLk4uZ2V0KFcpKXJldHVybiBuZXcgYmgobi5lbnRyeURhdGEpfTsKa009ZnVuY3Rpb24obixXKXt2YXIgRD1uLk4uZ2V0KFcpO0QmJihjbGVhclRpbWVvdXQoRC50aW1lciksbi5OLmRlbGV0ZShXKSl9OwpoUj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9ey4uLm59O2ZvcihsZXQgdiBvZiBPYmplY3Qua2V5cyhXKSl7bGV0IGs9blt2XSxoPVdbdl07aWYoaD09PXZvaWQgMClkZWxldGUgYlt2XTtlbHNlIGlmKGs9PT12b2lkIDApYlt2XT1oO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShoKSYmQXJyYXkuaXNBcnJheShrKSliW3ZdPUQ/Wy4uLmssLi4uaF06aDtlbHNlIGlmKCFBcnJheS5pc0FycmF5KGgpJiZnLmZ0KGgpJiYhQXJyYXkuaXNBcnJheShrKSYmZy5mdChrKSliW3ZdPWhSKGssaCxEKTtlbHNlIGlmKHR5cGVvZiBoPT09dHlwZW9mIGspYlt2XT1oO2Vsc2UgcmV0dXJuIFc9bmV3IGcuUXgoIkF0dGVtcHRlZCB0byBtZXJnZSBmaWVsZHMgb2YgZGlmZmVyaW5nIHR5cGVzLiIse25hbWU6IkRlZXBNZXJnZUVycm9yIixrZXk6dixGVzprLHVwZGF0ZVZhbHVlOmh9KSxnLlhqKFcpLG59cmV0dXJuIGJ9Owp4TT1mdW5jdGlvbihuLFcpe3JldHVybiBuLk4ubGVuZ3RoPT09MD8hMToobj1uLk5bbi5OLmxlbmd0aC0xXSkmJm4uYnVmZmVyPT09Vy5idWZmZXImJm4uYnl0ZU9mZnNldCtuLmxlbmd0aD09PVcuYnl0ZU9mZnNldH07CkxSPWZ1bmN0aW9uKG4pe24uWD12b2lkIDA7bi5KPTA7bi5XPTB9OwplNT1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRCBvZiBXLk4pbi5hcHBlbmQoRCl9OwpnZD1mdW5jdGlvbihuLFcsRCl7dmFyIHtDczpiLFk5OnZ9PW4uc3BsaXQoVyk7KHtDczpifT12LnNwbGl0KEQpKTtyZXR1cm4gYn07ClhhPWZ1bmN0aW9uKG4sVyxEKXtuLmlzRm9jdXNlZChXKTtyZXR1cm4gVy1uLlcrRDw9bi5OW24uSl0ubGVuZ3RofTsKcUQ9ZnVuY3Rpb24obil7aWYoIW4uWCl7bGV0IFc9bi5OW24uSl07bi5YPW5ldyBEYXRhVmlldyhXLmJ1ZmZlcixXLmJ5dGVPZmZzZXQsVy5sZW5ndGgpfXJldHVybiBuLlh9OwpHNj1mdW5jdGlvbihuLFc9MCxEPS0xKXtpZighbi50b3RhbExlbmd0aHx8IUQpcmV0dXJuIG5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoMCkpO0Q8MCYmKEQ9bi50b3RhbExlbmd0aC1XKTtuLmZvY3VzKFcpO2lmKCFYYShuLFcsRCkpe3ZhciBiPW4uSix2PW4uVztuLmZvY3VzKFcrRC0xKTt2PW5ldyBVaW50OEFycmF5KG4uVytuLk5bbi5KXS5sZW5ndGgtdik7bGV0IGs9MDtmb3IobGV0IGg9YjtoPD1uLko7aCsrKXYuc2V0KG4uTltoXSxrKSxrKz1uLk5baF0ubGVuZ3RoO24uTi5zcGxpY2UoYixuLkotYisxLHYpO0xSKG4pO24uZm9jdXMoVyl9Yj1uLk5bbi5KXTtyZXR1cm4gbmV3IERhdGFWaWV3KGIuYnVmZmVyLGIuYnl0ZU9mZnNldCtXLW4uVyxEKX07CnRSPWZ1bmN0aW9uKG4sVz0wLEQ9LTEpe249RzYobixXLEQpO3JldHVybiBuZXcgVWludDhBcnJheShuLmJ1ZmZlcixuLmJ5dGVPZmZzZXQsbi5ieXRlTGVuZ3RoKX07CiRNPWZ1bmN0aW9uKG4sVz0wLEQ9LTEpe249dFIobixXLEQpO1c9bmV3IFVpbnQ4QXJyYXkobi5sZW5ndGgpO3RyeXtXLnNldChuKX1jYXRjaChiKXtmb3IoRD0wO0Q8bi5sZW5ndGg7RCsrKVdbRF09bltEXX1yZXR1cm4gV307CnJkPWZ1bmN0aW9uKG4sVyl7bi5mb2N1cyhXKTtyZXR1cm4gbi5OW24uSl1bVy1uLlddfTsKc3g9ZnVuY3Rpb24obixXKXtuLmZvY3VzKFcpO3JldHVybiBYYShuLFcsNCk/cUQobikuZ2V0VWludDMyKFctbi5XKToyNTYqKDI1NiooMjU2KnJkKG4sVykrcmQobixXKzEpKStyZChuLFcrMikpK3JkKG4sVyszKX07CmEyMj1mdW5jdGlvbihuKXt2YXIgVz1uZXcgVWludDhBcnJheShuLmxlbmd0aCk7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspV1tEXT1uLmNoYXJDb2RlQXQoRCk7cmV0dXJuIFd9OwpwUj1mdW5jdGlvbihuKXtyZXR1cm4gbi5sZW5ndGg/TkQ/TkQuZGVjb2RlKG4pOlN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxuKToiIn07CmcuSEc9ZnVuY3Rpb24obil7aWYoIW4ubGVuZ3RoKXJldHVybiIiO3RyeXtpZihORClyZXR1cm4gTkQuZGVjb2RlKG4pO2lmKHR5cGVvZiBGZXRjaEludGVybmFsIT09InVuZGVmaW5lZCIpcmV0dXJuIEZldGNoSW50ZXJuYWwuZGVjb2RlRnJvbVVURjgobil9Y2F0Y2h7fWZvcih2YXIgVz0wLEQ9W10sYj1uLmxlbmd0aDtXPGI7KXtsZXQgaz0wO2Zvcig7azwxMDI0JiZXPGI7KXt2YXIgdj1uW1crK107aWYodjwxMjgpe1lNW2srK109djtjb250aW51ZX1pZih2PDIyNCl2PSh2JjMxKTw8NnxuW1crK10mNjM7ZWxzZSBpZih2PDI0MCl2PSh2JjE1KTw8MTJ8KG5bVysrXSY2Myk8PDZ8bltXKytdJjYzO2Vsc2V7aWYoaysxPT09MTAyNCl7LS1XO2JyZWFrfXY9KHYmNyk8PDE4fChuW1crK10mNjMpPDwxMnwobltXKytdJjYzKTw8NnxuW1crK10mNjM7di09NjU1MzY7WU1baysrXT01NTI5Nnx2Pj4xMDt2PTU2MzIwfHYmMTAyM31ZTVtrKytdPXZ9dj1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZywKWU0pO2s8MTAyNCYmKHY9di5zdWJzdHJpbmcoMCxrKSk7RC5wdXNoKHYpfXJldHVybiBELmpvaW4oIiIpfTsKSlI9ZnVuY3Rpb24obixXKXtpZihmUj8uZW5jb2RlSW50byl7bGV0IHtyZWFkOmIsd3JpdHRlbjp2fT1mUi5lbmNvZGVJbnRvKG4sVyk7cmV0dXJuIGI8bi5sZW5ndGg/bi5sZW5ndGgqNDp2fXZhciBEPTA7Zm9yKGxldCBiPTA7YjxuLmxlbmd0aDtiKyspe2xldCB2PW4uY2hhckNvZGVBdChiKTt2PDEyOD9XW0QrK109djoodjwyMDQ4P1dbRCsrXT12Pj42fDE5MjooKHYmNjQ1MTIpPT09NTUyOTYmJmIrMTxuLmxlbmd0aCYmKG4uY2hhckNvZGVBdChiKzEpJjY0NTEyKT09PTU2MzIwPyh2PTY1NTM2KygodiYxMDIzKTw8MTApKyhuLmNoYXJDb2RlQXQoKytiKSYxMDIzKSxXW0QrK109dj4+MTh8MjQwLFdbRCsrXT12Pj4xMiY2M3wxMjgpOldbRCsrXT12Pj4xMnwyMjQsV1tEKytdPXY+PjYmNjN8MTI4KSxXW0QrK109diY2M3wxMjgpfXJldHVybiBEfTsKSXc9ZnVuY3Rpb24obil7aWYoZlIpcmV0dXJuIGZSLmVuY29kZShuKTt2YXIgVz1uZXcgVWludDhBcnJheShNYXRoLmNlaWwobi5sZW5ndGgqMS4yKSksRD1KUihuLFcpO1cubGVuZ3RoPEQmJihXPW5ldyBVaW50OEFycmF5KEQpLEQ9SlIobixXKSk7Vy5sZW5ndGg+RCYmKFc9Vy5zdWJhcnJheSgwLEQpKTtyZXR1cm4gV307Cm1rPWZ1bmN0aW9uKG4sVyl7bj1uIGluc3RhbmNlb2YgVWludDhBcnJheT9uZXcgUzUoW25dKTpuO3JldHVybiBXKG5ldyBBUihuKSl9OwpLUj1mdW5jdGlvbihuKXt2YXIgVz1yZChuLk4sbi5wb3MpOysrbi5wb3M7aWYoVzwxMjgpcmV0dXJuIFc7Zm9yKHZhciBEPVcmMTI3LGI9MTtXPj0xMjg7KVc9cmQobi5OLG4ucG9zKSwrK24ucG9zLGIqPTEyOCxEKz0oVyYxMjcpKmI7cmV0dXJuIER9OwpPeD1mdW5jdGlvbihuLFcpe3ZhciBEPW4uSjtmb3Iobi5KPS0xO24ucG9zKzE8PW4uTi50b3RhbExlbmd0aDspe0Q8MCYmKEQ9S1IobikpO3ZhciBiPUQ+PjM7bGV0IHY9RCY3O2lmKGI9PT1XKXJldHVybiEwO2lmKGI+Vyl7bi5KPUQ7YnJlYWt9RD0tMTtzd2l0Y2godil7Y2FzZSAwOktSKG4pO2JyZWFrO2Nhc2UgMTpuLnBvcys9ODticmVhaztjYXNlIDI6Yj1LUihuKTtuLnBvcys9YjticmVhaztjYXNlIDU6bi5wb3MrPTR9fXJldHVybiExfTsKUEc9ZnVuY3Rpb24obixXKXtpZihPeChuLFcpKXJldHVybiBLUihuKX07Clp3PWZ1bmN0aW9uKG4sVyl7aWYoT3gobixXKSlyZXR1cm4gVz10UihuLk4sbi5wb3MsOCksbi5wb3MrPTgsKG5ldyBEYXRhVmlldyhXLmJ1ZmZlcixXLmJ5dGVPZmZzZXQsVy5ieXRlTGVuZ3RoKSkuZ2V0RmxvYXQ2NCgwLCEwKX07ClV4PWZ1bmN0aW9uKG4sVyl7aWYoT3gobixXKSlyZXR1cm4hIUtSKG4pfTsKeUE9ZnVuY3Rpb24obixXKXtpZihPeChuLFcpKXtXPUtSKG4pO3ZhciBEPXRSKG4uTixuLnBvcyxXKTtuLnBvcys9VztyZXR1cm4gRH19OwpFeD1mdW5jdGlvbihuLFcpe2lmKG49eUEobixXKSlyZXR1cm4gZy5IRyhuKX07CmloPWZ1bmN0aW9uKG4sVyxEKXtpZihuPXlBKG4sVykpcmV0dXJuIEQobmV3IEFSKG5ldyBTNShbbl0pKSl9Owp1aD1mdW5jdGlvbihuLFcpe2Zvcih2YXIgRD1bXTtPeChuLFcpOylELnB1c2goS1IobikpO3JldHVybiBELmxlbmd0aD9EOnZvaWQgMH07Cm93PWZ1bmN0aW9uKG4sVyxEKXtmb3IodmFyIGI9W10sdjt2PXlBKG4sVyk7KWIucHVzaChEKG5ldyBBUihuZXcgUzUoW3ZdKSkpKTtyZXR1cm4gYi5sZW5ndGg/Yjp2b2lkIDB9OwpkZD1mdW5jdGlvbihuLFcsRCl7aWYoVyYmRCYmRC5idWZmZXI9PT1XLmV4cG9ydHMubWVtb3J5LmJ1ZmZlcil7bGV0IGI9Vy5tZW1vcnkucmVhbGxvYyhELmJ5dGVPZmZzZXQsbik7aWYoYilyZXR1cm4gbmV3IFVpbnQ4QXJyYXkoVy5leHBvcnRzLm1lbW9yeS5idWZmZXIsYixuKX1uPVc/bmV3IFVpbnQ4QXJyYXkoVy5leHBvcnRzLm1lbW9yeS5idWZmZXIsVy5tZW1vcnkubWFsbG9jKG4pLG4pOm5ldyBVaW50OEFycmF5KG4pO0QmJm4uc2V0KEQpO3JldHVybiBufTsKZy5saD1mdW5jdGlvbihuLFcpe3ZhciBEPW5ldyB6Nig0MDk2KTtXKEQsbik7cmV0dXJuIG5ldyBVaW50OEFycmF5KEQuTi5idWZmZXIsRC5OLmJ5dGVPZmZzZXQsRC5wb3MpfTsKVDY9ZnVuY3Rpb24obixXKXtXPW4ucG9zK1c7aWYoIShuLk4ubGVuZ3RoPj1XKSl7Zm9yKHZhciBEPW4uTi5sZW5ndGgqMjtEPFc7KUQqPTI7bi5OPWRkKEQsbi5XVixuLk4uc3ViYXJyYXkoMCxuLnBvcykpO24udmlldz1uZXcgRGF0YVZpZXcobi5OLmJ1ZmZlcixuLk4uYnl0ZU9mZnNldCxuLk4uYnl0ZUxlbmd0aCl9fTsKajU9ZnVuY3Rpb24obixXKXtpZihXPjI2ODQzNTQ1NSl7VDYobiw0KTtsZXQgRD1XJjEwNzM3NDE4MjM7Zm9yKGxldCBiPTA7Yjw0O2IrKyluLnZpZXcuc2V0VWludDgobi5wb3MsRCYxMjd8MTI4KSxEPj4+PTcsbi5wb3MrPTE7Vz1NYXRoLmZsb29yKFcvMjY4NDM1NDU2KX1mb3IoVDYobiw0KTtXPjEyNzspbi52aWV3LnNldFVpbnQ4KG4ucG9zLFcmMTI3fDEyOCksVz4+Pj03LG4ucG9zKz0xO24udmlldy5zZXRVaW50OChuLnBvcyxXKTtuLnBvcys9MX07CkNSPWZ1bmN0aW9uKG4sVyxEKXtEIT09dm9pZCAwJiYoajUobixXKjgpLGo1KG4sRCkpfTsKQkc9ZnVuY3Rpb24obixXLEQpe0QhPT12b2lkIDAmJkNSKG4sVyxEPzE6MCl9OwpnLkZhPWZ1bmN0aW9uKG4sVyxEKXtEIT09dm9pZCAwJiYoajUobixXKjgrMiksVz1ELmxlbmd0aCxqNShuLFcpLFQ2KG4sVyksbi5OLnNldChELG4ucG9zKSxuLnBvcys9Vyl9Owp3ZD1mdW5jdGlvbihuLFcsRD0yKXtqNShuLFcqOCsyKTtuLkoucHVzaChuLnBvcyk7bi5KLnB1c2goRCk7bi5wb3MrPUR9OwpNRD1mdW5jdGlvbihuKXtmb3IodmFyIFc9bi5KLnBvcCgpLEQ9bi5KLnBvcCgpLGI9bi5wb3MtRC1XO1ctLTspe2xldCB2PVc/MTI4OjA7bi52aWV3LnNldFVpbnQ4KEQrKyxiJjEyN3x2KTtiPj49N319OwpnLlJ3PWZ1bmN0aW9uKG4sVyxEKXtEIT09dm9pZCAwJiYod2QobixXLE1hdGguY2VpbChNYXRoLmxvZzIoRC5sZW5ndGgqNCsyKS83KSksVDYobixELmxlbmd0aCoxLjIpLFc9SlIoRCxuLk4uc3ViYXJyYXkobi5wb3MpKSxuLnBvcytXPm4uTi5sZW5ndGgmJihUNihuLFcpLFc9SlIoRCxuLk4uc3ViYXJyYXkobi5wb3MpKSksbi5wb3MrPVcsTUQobikpfTsKUUE9ZnVuY3Rpb24obixXLEQsYix2PTMpe0QmJih3ZChuLFcsdiksYihuLEQpLE1EKG4pKX07CmNHPWZ1bmN0aW9uKG4pe3ZhciBXPW5ldyBBUihuZXcgUzUoW2xwKGRlY29kZVVSSUNvbXBvbmVudChuKSldKSk7bj1FeChXLDIpO1c9UEcoVyw0KTt2YXIgRD1WQVtXXTtpZih0eXBlb2YgRD09PSJ1bmRlZmluZWQiKXRocm93IG49bmV3IGcuUXgoIkZhaWxlZCB0byByZWNvZ25pemUgZmllbGQgbnVtYmVyIix7bmFtZToiRW50aXR5S2V5SGVscGVyRXJyb3IiLGZpZWxkTnVtYmVyOld9KSxnLlhqKG4pLG47cmV0dXJue0RYOlcsZW50aXR5VHlwZTpELGVudGl0eUlkOm59fTsKbmY9ZnVuY3Rpb24obixXKXt2YXIgRD1uZXcgejY7Zy5GYShELDIsSXcobikpO249YXdbV107aWYodHlwZW9mIG49PT0idW5kZWZpbmVkIil0aHJvdyBXPW5ldyBnLlF4KCJGYWlsZWQgdG8gcmVjb2duaXplIGVudGl0eSB0eXBlIix7bmFtZToiRW50aXR5S2V5SGVscGVyRXJyb3IiLGVudGl0eVR5cGU6V30pLGcuWGooVyksVztDUihELDQsbik7Q1IoRCw1LDEpO1c9bmV3IFVpbnQ4QXJyYXkoRC5OLmJ1ZmZlcixELk4uYnl0ZU9mZnNldCxELnBvcyk7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChnLkVBKFcsMCkpfTsKV2U9ZnVuY3Rpb24obil7bj1uLmtleXx8bi5pZDtpZighbil0aHJvdyBFcnJvcigiRW50aXR5IGtleSBpcyBtaXNzaW5nIik7cmV0dXJuIG59OwpERz1mdW5jdGlvbihuLFcsRCxiKXtpZihiPT09dm9pZCAwKXtsZXQge1tEXTp2LC4uLmt9PW5bV118fHt9O3JldHVybnsuLi5uLFtXXTprfX1yZXR1cm57Li4ubixbV106ey4uLm5bV10sW0RdOmJ9fX07CmJCPWZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9bltXXXx8e30saD1rW0RdO2lmKCFoJiYhZy5sKCJ3ZWJfZW5hYmxlX2VudGl0eV91cHNlcnRfb25fdXBkYXRlIikpcmV0dXJuIG47Yj1oUihofHx7fSxiLHY9PT0iUkVQRUFURURfRklFTERTX01FUkdFX09QVElPTl9BUFBFTkQiKTtyZXR1cm57Li4ubixbV106ey4uLmssW0RdOmJ9fX07Cm5taD1mdW5jdGlvbihuPXt9LFcpe3N3aXRjaChXLnR5cGUpe2Nhc2UgIkVOVElUWV9MT0FERUQiOnJldHVybiBXLnBheWxvYWQucmVkdWNlKChELGIpPT57dmFyIHY9Yi5vcHRpb25zPy5wZXJzaXN0ZW5jZU9wdGlvbjtpZih2JiZ2IT09IkVOVElUWV9QRVJTSVNURU5DRV9PUFRJT05fVU5LTk9XTiImJnYhPT0iRU5USVRZX1BFUlNJU1RFTkNFX09QVElPTl9JTk1FTU9SWV9BTkRfUEVSU0lTVCIpcmV0dXJuIEQ7aWYoIWIuZW50aXR5S2V5KXJldHVybiBnLlhqKEVycm9yKCJNaXNzaW5nIGVudGl0eSBrZXkiKSksRDtpZihiLnR5cGU9PT0iRU5USVRZX01VVEFUSU9OX1RZUEVfUkVQTEFDRSIpe2lmKCFiLnBheWxvYWQpcmV0dXJuIGI9bmV3IGcuUXgoIlJFUExBQ0UgZW50aXR5IG11dGF0aW9uIGlzIG1pc3NpbmcgYSBwYXlsb2FkIix7ZW50aXR5S2V5OmIuZW50aXR5S2V5fSksZy5YaihiKSxEO3ZhciBrPXZ4KGIucGF5bG9hZCk7cmV0dXJuIERHKEQsayxiLmVudGl0eUtleSxiLnBheWxvYWRba10pfWlmKGIudHlwZT09PQoiRU5USVRZX01VVEFUSU9OX1RZUEVfREVMRVRFIil7YTp7Yj1iLmVudGl0eUtleTt0cnl7bGV0IGg9Y0coYikuZW50aXR5VHlwZTtrPURHKEQsaCxiKTticmVhayBhfWNhdGNoKGgpe2lmKGggaW5zdGFuY2VvZiBFcnJvcil7Yj1uZXcgZy5ReCgiRmFpbGVkIHRvIGRlc2VyaWFsaXplIGVudGl0eSBrZXkiLHtlbnRpdHlLZXk6YixvcmlnaW5hbE1lc3NhZ2U6aC5tZXNzYWdlfSk7Zy5YaihiKTtrPUQ7YnJlYWsgYX10aHJvdyBoO31rPXZvaWQgMH1yZXR1cm4ga31pZihiLnR5cGU9PT0iRU5USVRZX01VVEFUSU9OX1RZUEVfVVBEQVRFIil7aWYoIWIucGF5bG9hZClyZXR1cm4gYj1uZXcgZy5ReCgiVVBEQVRFIGVudGl0eSBtdXRhdGlvbiBpcyBtaXNzaW5nIGEgcGF5bG9hZCIse2VudGl0eUtleTpiLmVudGl0eUtleX0pLGcuWGooYiksRDtrPXZ4KGIucGF5bG9hZCk7cmV0dXJuIGJCKEQsayxiLmVudGl0eUtleSxiLnBheWxvYWRba10sYi5maWVsZE1hc2s/Lm1lcmdlT3B0aW9ucz8ucmVwZWF0ZWRGaWVsZHNNZXJnZU9wdGlvbil9cmV0dXJuIER9LApuKTsKY2FzZSAiUkVQTEFDRV9FTlRJVFkiOnJldHVybiBERyhuLFcucGF5bG9hZC5lbnRpdHlUeXBlLFcucGF5bG9hZC5rZXksVy5wYXlsb2FkLmc4KTtjYXNlICJSRVBMQUNFX0VOVElUSUVTIjpyZXR1cm4gT2JqZWN0LmtleXMoVy5wYXlsb2FkKS5yZWR1Y2UoKEQsYik9Pnt2YXIgdj1XLnBheWxvYWRbYl07cmV0dXJuIE9iamVjdC5rZXlzKHYpLnJlZHVjZSgoayxoKT0+REcoayxiLGgsdltoXSksRCl9LG4pOwpjYXNlICJVUERBVEVfRU5USVRZIjpyZXR1cm4gYkIobixXLnBheWxvYWQuZW50aXR5VHlwZSxXLnBheWxvYWQua2V5LFcucGF5bG9hZC5nOCxXLnBheWxvYWQublApO2RlZmF1bHQ6cmV0dXJuIG59fTsKVzRVPWZ1bmN0aW9uKCl7aWYodmUpcmV0dXJuIHZlKCk7dmU9a08oIlBlcnNpc3RlbnRFbnRpdHlTdG9yZURiIix7S2M6e0VudGl0eVN0b3JlOnt2eDoxfSxFbnRpdHlBc3NvY2lhdGlvblN0b3JlOnt2eDoyfX0sc2hhcmVkOiExLHVwZ3JhZGUobixXKXtXKDEpJiZFUihaeShuLCJFbnRpdHlTdG9yZSIse2tleVBhdGg6ImtleSJ9KSwiZW50aXR5VHlwZSIsImVudGl0eVR5cGUiKTtXKDIpJiYobj1aeShuLCJFbnRpdHlBc3NvY2lhdGlvblN0b3JlIix7a2V5UGF0aDpbInBhcmVudEVudGl0eUtleSIsImNoaWxkRW50aXR5S2V5Il19KSxFUihuLCJieVBhcmVudEVudGl0eUtleSIsInBhcmVudEVudGl0eUtleSIpLEVSKG4sImJ5Q2hpbGRFbnRpdHlLZXkiLCJjaGlsZEVudGl0eUtleSIpKX0sdmVyc2lvbjozfSk7cmV0dXJuIHZlKCl9OwpEZlM9ZnVuY3Rpb24obil7cmV0dXJuIENGKFc0VSgpLG4pfTsKayQ9ZnVuY3Rpb24obil7cmV0dXJuIHdpbmRvdy5JbnQzMkFycmF5P25ldyBJbnQzMkFycmF5KG4pOkFycmF5KG4pfTsKWDg9ZnVuY3Rpb24obil7dmFyIFc9bi5rZXksRD1uLmNvdW50ZXJbMF1eV1swXSxiPW4uY291bnRlclsxXV5XWzFdLHY9bi5jb3VudGVyWzJdXldbMl0saz1uLmNvdW50ZXJbM11eV1szXTtmb3IodmFyIGg9MztoPj0wJiYhKG4uY291bnRlcltoXT0tfm4uY291bnRlcltoXSk7aC0tKTtmb3IodmFyIHgsTCxlPTQ7ZTw0MDspaD1oRVtEPj4+MjRdXngkW2I+PjE2JjI1NV1eTGZbdj4+OCYyNTVdXmVZW2smMjU1XV5XW2UrK10seD1oRVtiPj4+MjRdXngkW3Y+PjE2JjI1NV1eTGZbaz4+OCYyNTVdXmVZW0QmMjU1XV5XW2UrK10sTD1oRVt2Pj4+MjRdXngkW2s+PjE2JjI1NV1eTGZbRD4+OCYyNTVdXmVZW2ImMjU1XV5XW2UrK10saz1oRVtrPj4+MjRdXngkW0Q+PjE2JjI1NV1eTGZbYj4+OCYyNTVdXmVZW3YmMjU1XV5XW2UrK10sRD1oLGI9eCx2PUw7bj1uLko7aD1XWzQwXTtuWzBdPWdOW0Q+Pj4yNF1eaD4+PjI0O25bMV09Z05bYj4+MTYmMjU1XV5oPj4xNiYyNTU7blsyXT1nTlt2Pj44JgoyNTVdXmg+PjgmMjU1O25bM109Z05bayYyNTVdXmgmMjU1O2g9V1s0MV07bls0XT1nTltiPj4+MjRdXmg+Pj4yNDtuWzVdPWdOW3Y+PjE2JjI1NV1eaD4+MTYmMjU1O25bNl09Z05baz4+OCYyNTVdXmg+PjgmMjU1O25bN109Z05bRCYyNTVdXmgmMjU1O2g9V1s0Ml07bls4XT1nTlt2Pj4+MjRdXmg+Pj4yNDtuWzldPWdOW2s+PjE2JjI1NV1eaD4+MTYmMjU1O25bMTBdPWdOW0Q+PjgmMjU1XV5oPj44JjI1NTtuWzExXT1nTltiJjI1NV1eaCYyNTU7aD1XWzQzXTtuWzEyXT1nTltrPj4+MjRdXmg+Pj4yNDtuWzEzXT1nTltEPj4xNiYyNTVdXmg+PjE2JjI1NTtuWzE0XT1nTltiPj44JjI1NV1eaD4+OCYyNTU7blsxNV09Z05bdiYyNTVdXmgmMjU1fTsKdEU9ZnVuY3Rpb24oKXtpZighcWEmJiFnLlJnKXtpZihHcilyZXR1cm4gR3I7R3I9d2luZG93LmNyeXB0bz8uc3VidGxlO2lmKEdyPy5pbXBvcnRLZXkmJkdyPy5zaWduJiZHcj8uZW5jcnlwdClyZXR1cm4gR3I7R3I9dm9pZCAwfX07CmJoMT1hc3luYyBmdW5jdGlvbihuLFcsRCl7bi5OfHwobi5OPWF3YWl0IG4uSi5pbXBvcnRLZXkoInJhdyIsbi5XLHtuYW1lOiJBRVMtQ1RSIn0sITEsWyJlbmNyeXB0Il0pKTtuPWF3YWl0IG4uSi5lbmNyeXB0KHtuYW1lOiJBRVMtQ1RSIixjb3VudGVyOkQsbGVuZ3RoOjEyOH0sbi5OLFcpO3JldHVybiBuZXcgVWludDhBcnJheShuKX07CiQkPWZ1bmN0aW9uKG4pe24uTj1bMTc3OTAzMzcwMywzMTQ0MTM0Mjc3LDEwMTM5MDQyNDIsMjc3MzQ4MDc2MiwxMzU5ODkzMTE5LDI2MDA4MjI5MjQsNTI4NzM0NjM1LDE1NDE0NTkyMjVdO24uSz1bXTtuLksubGVuZ3RoPTY0O24uWD0wO24uSj0wfTsKc2U9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uSyx2PW4uTlswXSxrPW4uTlsxXSxoPW4uTlsyXSx4PW4uTlszXSxMPW4uTls0XSxlPW4uTls1XSxHPW4uTls2XSxyPW4uTls3XSxOO2ZvcihsZXQgeT0wO3k8NjQ7KXtpZih5PDE2KWJbeV09Tj1XW0RdPDwyNHxXW0QrMV08PDE2fFdbRCsyXTw8OHxXW0QrM10sRCs9NDtlbHNle3ZhciBIPWJbeS0yXTt2YXIgQT1iW3ktMTVdO049Ylt5LTddK2JbeS0xNl0rKChIPj4+MTd8SDw8MTUpXihIPj4+MTl8SDw8MTMpXkg+Pj4xMCkrKChBPj4+N3xBPDwyNSleKEE+Pj4xOHxBPDwxNCleQT4+PjMpO2JbeV09Tn1IPXIrck5beV0rTisoKEw+Pj42fEw8PDI2KV4oTD4+PjExfEw8PDIxKV4oTD4+PjI1fEw8PDcpKSsoTCZlXn5MJkcpO0E9KCh2Pj4+Mnx2PDwzMCleKHY+Pj4xM3x2PDwxOSleKHY+Pj4yMnx2PDwxMCkpKyh2JmtediZoXmsmaCk7cj1IK0E7eCs9SDt5Kys7eTwxNj8oYlt5XT1OPVdbRF08PDI0fFdbRCsxXTw8MTZ8V1tEKzJdPDw4fFdbRCsKM10sRCs9NCk6KEg9Ylt5LTJdLEE9Ylt5LTE1XSxOPWJbeS03XStiW3ktMTZdKygoSD4+PjE3fEg8PDE1KV4oSD4+PjE5fEg8PDEzKV5IPj4+MTApKygoQT4+Pjd8QTw8MjUpXihBPj4+MTh8QTw8MTQpXkE+Pj4zKSxiW3ldPU4pO0g9RytyTlt5XStOKygoeD4+PjZ8eDw8MjYpXih4Pj4+MTF8eDw8MjEpXih4Pj4+MjV8eDw8NykpKyh4JkxefngmZSk7QT0oKHI+Pj4yfHI8PDMwKV4ocj4+PjEzfHI8PDE5KV4ocj4+PjIyfHI8PDEwKSkrKHImdl5yJmtediZrKTtHPUgrQTtoKz1IO3krKzt5PDE2PyhiW3ldPU49V1tEXTw8MjR8V1tEKzFdPDwxNnxXW0QrMl08PDh8V1tEKzNdLEQrPTQpOihIPWJbeS0yXSxBPWJbeS0xNV0sTj1iW3ktN10rYlt5LTE2XSsoKEg+Pj4xN3xIPDwxNSleKEg+Pj4xOXxIPDwxMyleSD4+PjEwKSsoKEE+Pj43fEE8PDI1KV4oQT4+PjE4fEE8PDE0KV5BPj4+MyksYlt5XT1OKTtIPWUrck5beV0rTisoKGg+Pj42fGg8PDI2KV4oaD4+PjExfGg8PDIxKV4oaD4+PjI1fApoPDw3KSkrKGgmeF5+aCZMKTtBPSgoRz4+PjJ8Rzw8MzApXihHPj4+MTN8Rzw8MTkpXihHPj4+MjJ8Rzw8MTApKSsoRyZyXkcmdl5yJnYpO2U9SCtBO2srPUg7eSsrO3k8MTY/KGJbeV09Tj1XW0RdPDwyNHxXW0QrMV08PDE2fFdbRCsyXTw8OHxXW0QrM10sRCs9NCk6KEg9Ylt5LTJdLEE9Ylt5LTE1XSxOPWJbeS03XStiW3ktMTZdKygoSD4+PjE3fEg8PDE1KV4oSD4+PjE5fEg8PDEzKV5IPj4+MTApKygoQT4+Pjd8QTw8MjUpXihBPj4+MTh8QTw8MTQpXkE+Pj4zKSxiW3ldPU4pO0g9TCtyTlt5XStOKygoaz4+PjZ8azw8MjYpXihrPj4+MTF8azw8MjEpXihrPj4+MjV8azw8NykpKyhrJmhefmsmeCk7QT0oKGU+Pj4yfGU8PDMwKV4oZT4+PjEzfGU8PDE5KV4oZT4+PjIyfGU8PDEwKSkrKGUmR15lJnJeRyZyKTtOPXI7cj14O3g9TjtOPUc7Rz1oO2g9TjtOPWU7ZT1rO2s9TjtMPXYrSDt2PUgrQTt5Kyt9bi5OWzBdPXYrbi5OWzBdfDA7bi5OWzFdPWsrbi5OWzFdfDA7bi5OWzJdPWgrbi5OWzJdfAowO24uTlszXT14K24uTlszXXwwO24uTls0XT1MK24uTls0XXwwO24uTls1XT1lK24uTls1XXwwO24uTls2XT1HK24uTls2XXwwO24uTls3XT1yK24uTls3XXwwfTsKTmE9ZnVuY3Rpb24obil7dmFyIFc9bmV3IFVpbnQ4QXJyYXkoMzIpLEQ9NjQtbi5KO24uSj41NSYmKEQrPTY0KTt2YXIgYj1uZXcgVWludDhBcnJheShEKTtiWzBdPTEyODt2YXIgdj1uLlgqODtmb3IobGV0IGs9MTtrPDk7aysrKXtsZXQgaD12JTI1NjtiW0Qta109aDt2PSh2LWgpLzI1Nn1uLnVwZGF0ZShiKTtmb3IoRD0wO0Q8ODtEKyspV1tEKjRdPW4uTltEXT4+PjI0LFdbRCo0KzFdPW4uTltEXT4+PjE2JjI1NSxXW0QqNCsyXT1uLk5bRF0+Pj44JjI1NSxXW0QqNCszXT1uLk5bRF0mMjU1OyQkKG4pO3JldHVybiBXfTsKcGY9ZnVuY3Rpb24obixXLEQpe249bmV3IHZtaShuLk4pO24udXBkYXRlKFcpO24udXBkYXRlKEQpO1c9TmEobik7bi51cGRhdGUobi5qKTtuLnVwZGF0ZShXKTtXPU5hKG4pO24ucmVzZXQoKTtyZXR1cm4gV307CmtTaj1hc3luYyBmdW5jdGlvbihuLFcsRCl7bi5OfHwobi5OPWF3YWl0IG4uSi5pbXBvcnRLZXkoInJhdyIsbi5XLHtuYW1lOiJITUFDIixoYXNoOiJTSEEtMjU2In0sITEsWyJzaWduIl0pKTt2YXIgYj1uZXcgVWludDhBcnJheShXLmxlbmd0aCtELmxlbmd0aCk7Yi5zZXQoVyk7Yi5zZXQoRCxXLmxlbmd0aCk7bj1hd2FpdCBuLkouc2lnbih7bmFtZToiSE1BQyIsaGFzaDoiU0hBLTI1NiJ9LG4uTixiKTtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkobil9Owp4ZlM9YXN5bmMgZnVuY3Rpb24obixXLEQsYil7bi5KfHwobi5KPW5ldyBoYXcobi5OLGIpKTtyZXR1cm4ga1NqKG4uSixXLEQpfTsKSGU9ZnVuY3Rpb24obixXLEQpe24uV3x8KG4uVz1uZXcgWSQobi5OKSk7cmV0dXJuIHBmKG4uVyxXLEQpfTsKTDRaPWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXt2YXIgYj10RSgpO2lmKGIpdHJ5e3JldHVybiBhd2FpdCB4ZlMobixXLEQsYil9Y2F0Y2godil7cmV0dXJuIGcuR3EodikscWE9ITAsSGUobixXLEQpfWVsc2UgcmV0dXJuIEhlKG4sVyxEKX07CmVhVT1mdW5jdGlvbihuKXtyZXR1cm4gbiBpbnN0YW5jZW9mIEVycm9yP25ldyBmZigiVU5LTk9XTl9FTkNPREVfRVJST1IiLHtvcmlnaW5hbE1lc3NhZ2U6bi5tZXNzYWdlfSk6bmV3IGZmKCJVTktOT1dOX0VOQ09ERV9FUlJPUiIpfTsKZ20yPWZ1bmN0aW9uKG4pe3JldHVybiBuIGluc3RhbmNlb2YgRXJyb3I/bmV3IGZmKCJVTktOT1dOX0RFQ09ERV9FUlJPUiIse29yaWdpbmFsTWVzc2FnZTpuLm1lc3NhZ2V9KTpuZXcgZmYoIlVOS05PV05fREVDT0RFX0VSUk9SIil9OwpKRT1mdW5jdGlvbihuLFcpe249biBpbnN0YW5jZW9mIGZmP246VyhuKTtnLlhqKG4pO3Rocm93IG47fTsKSTg9ZnVuY3Rpb24obil7bj0obmV3IFRleHRFbmNvZGVyKS5lbmNvZGUobikuc3ViYXJyYXkoMCwxNik7dmFyIFc9bmV3IFVpbnQ4QXJyYXkoMTYpO1cuc2V0KG4pO3JldHVybiBXfTsKcXNVPWZ1bmN0aW9uKCl7dmFyIG49WHlVLnZpZGVvUGxheWJhY2tQb3NpdGlvbkVudGl0eTtpZihuKXJldHVybiBuO2cuR3EobmV3IGcuUXgoIkVudGl0eSBtb2RlbCBub3QgZm91bmQuIix7ZW50aXR5VHlwZToidmlkZW9QbGF5YmFja1Bvc2l0aW9uRW50aXR5In0pKX07CkFFPWZ1bmN0aW9uKG4sVyl7YTp7bj1TWShuLlcsVy52ZXJzaW9uKTt0cnl7dmFyIEQ9bi5KKFcuZGF0YSxXLmtleSk7YnJlYWsgYX1jYXRjaChiKXtKRShiLGdtMil9RD12b2lkIDB9cmV0dXJuIER9OwpHU3c9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5OLm9iamVjdFN0b3JlKCJFbnRpdHlTdG9yZSIpLmluZGV4KCJlbnRpdHlUeXBlIikuZ2V0QWxsKElEQktleVJhbmdlLm9ubHkoVykpLnRoZW4oRD0+RC5tYXAoYj0+QUUobixiKSkpfTsKJGZpPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9V2UoVyk7cmV0dXJuIG1MKG4sRCkudGhlbigoKT0+dENoKG4sVykpfTsKS2Y9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uSltEXTtifHwoYj1uZXcgU2V0LG4uSltEXT1iKTtiLmFkZChXKX07CnIzWj1mdW5jdGlvbihuLFcpe3ZhciBEPVdlKFcpLGI9U1kobi5XLDEpLHY9ey4uLld9O3JldHVybiBuLk4ub2JqZWN0U3RvcmUoIkVudGl0eVN0b3JlIikuZ2V0KEQpLnRoZW4oaz0+e2lmKGspe2lmKGsuZW50aXR5VHlwZSE9PSJ2aWRlb1BsYXliYWNrUG9zaXRpb25FbnRpdHkiKXRocm93IEVycm9yKCJJbmNvcnJlY3QgZW50aXR5IHR5cGUiKTt2LmVudGl0eU1ldGFkYXRhfHwoaz1BRShuLGspLHYuZW50aXR5TWV0YWRhdGE9ay5lbnRpdHlNZXRhZGF0YSl9fSkudGhlbigoKT0+e2E6e3RyeXt2YXIgaz1iLlcodixEKTsKYnJlYWsgYX1jYXRjaChoKXtKRShoLGVhVSl9az12b2lkIDB9az17a2V5OkQsZW50aXR5VHlwZToidmlkZW9QbGF5YmFja1Bvc2l0aW9uRW50aXR5IixkYXRhOmssdmVyc2lvbjoxfTtyZXR1cm4gc1IuYWxsKFtuLk4ub2JqZWN0U3RvcmUoIkVudGl0eVN0b3JlIikucHV0KGspLCRmaShuLHYpXSl9KS50aGVuKCgpPT57S2YobixELCJ2aWRlb1BsYXliYWNrUG9zaXRpb25FbnRpdHkiKTsKcmV0dXJuIER9KX07Ck9lPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Y0coVykuZW50aXR5VHlwZTtyZXR1cm4gc1IuYWxsKFtuLk4ub2JqZWN0U3RvcmUoIkVudGl0eVN0b3JlIikuZGVsZXRlKFcpLG1MKG4sVyldKS50aGVuKCgpPT57S2YobixXLEQpfSl9OwptTD1mdW5jdGlvbihuLFcpe3JldHVybiBuLk4ub2JqZWN0U3RvcmUoIkVudGl0eUFzc29jaWF0aW9uU3RvcmUiKS5pbmRleCgiYnlQYXJlbnRFbnRpdHlLZXkiKS5kZWxldGUoSURCS2V5UmFuZ2Uub25seShXKSl9OwpzeHI9ZnVuY3Rpb24obixXKXtXPVcubWFwKEQ9Pk9lKG4sRCkpOwpyZXR1cm4gc1IuYWxsKFcpLnRoZW4oKCk9Pnt9KX07CnRDaD1mdW5jdGlvbihuLFcpe3ZhciBEPVdlKFcpLGI9cXNVKCk7aWYoIWIpcmV0dXJuIHNSLnJlc29sdmUoW10pO1c9bmV3IGIoVyk7bj1uLk4ub2JqZWN0U3RvcmUoIkVudGl0eUFzc29jaWF0aW9uU3RvcmUiKTtiPVtdO2ZvcihsZXQgdiBvZiBXLkooKSliLnB1c2gobi5wdXQoe3BhcmVudEVudGl0eUtleTpELGNoaWxkRW50aXR5S2V5OnZ9KSk7cmV0dXJuIHNSLmFsbChiKS50aGVuKHY9PnYubWFwKGs9PmtbMV0pKX07ClNZPWZ1bmN0aW9uKG4sVz0wKXtuPW4uTltXXTtpZighbil0aHJvdyBXPW5ldyBmZigiSU5WQUxJRF9FTkNPREVSX1ZFUlNJT04iLHtPQTpXfSksZy5YaihXKSxXO3JldHVybiBufTsKUGU9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgb2Ygbi5vYnNlcnZlcnMpRChXKX07ClpHPWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1hd2FpdCBEZlMobi50b2tlbiksdjtXPWF3YWl0IE9SKGIsWyJFbnRpdHlTdG9yZSIsIkVudGl0eUFzc29jaWF0aW9uU3RvcmUiXSxXLGs9Pnt2PW5ldyBOR3coayxuLk4pO3JldHVybiBEKHYpfSk7CnYmJihiPXYuSixPYmplY3Qua2V5cyhiKS5sZW5ndGg+MCYmKG4uY2hhbm5lbC5wb3N0TWVzc2FnZShiKSxQZShuLGIpKSk7cmV0dXJuIFd9OwpweXQ9ZnVuY3Rpb24obixXKXtyZXR1cm4gWkcobix7bW9kZToicmVhZHdyaXRlIixHUTohMH0sRD0+cjNaKEQsVykpfTsKWXNNPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFpHKG4se21vZGU6InJlYWR3cml0ZSIsR1E6ITB9LEQ9Pk9lKEQsVykpfTsKSGh3PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFpHKG4se21vZGU6InJlYWR3cml0ZSIsR1E6ITB9LEQ9PnN4cihELFcpKX07ClVlPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFpHKG4se21vZGU6InJlYWRvbmx5IixHUTohMH0sRD0+R1N3KEQsVykpfTsKSTkyPWFzeW5jIGZ1bmN0aW9uKCl7dHJ5e2xldCBXPWF3YWl0IGcublAoKTtpZihXJiZSOSgpJiZ0eXBlb2YgZy5xaS5Ccm9hZGNhc3RDaGFubmVsIT09InVuZGVmaW5lZCIpe3ZhciBuPW5ldyBmOWk7cmV0dXJuIG5ldyBKM2koVyxuKX19Y2F0Y2goVyl7VyBpbnN0YW5jZW9mIEVycm9yJiZnLlhqKFcpfX07CnlXPWZ1bmN0aW9uKCl7dmFyIG49WE1MSHR0cFJlcXVlc3QucHJvdG90eXBlLmZldGNoO3JldHVybiEhbiYmbi5sZW5ndGg9PT0zfTsKRWU9ZnVuY3Rpb24obixXKXtXPU51bWJlcihXKSoxRTM7dmFyIEQ9TWF0aC5yb3VuZCgoMCxnLlIpKCkpLGI9RC50b1N0cmluZygpO249e2lubmVydHViZVJlc3BvbnNlOm4sc2VydmVyRGF0ZVRpbWVzdGFtcE1zOmIsbGFzdE1vZGlmaWVkVGltZXN0YW1wTXM6YixleHBpcmVUaW1lc3RhbXBNczooRCtXKS50b1N0cmluZygpLGlzUHJvY2Vzc2VkOiEwfTtpZihXPWcuQXIoIklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9OQU1FIikpbi5jbGllbnROYW1lPVc7cmV0dXJuIG59Owp1Qj1mdW5jdGlvbihuLFcsRCl7aWYoIWcubCgic3RhdGVfdGFnc19raWxsc3dpdGNoIikpe3ZhciBiPW5ldyBpQihXKTtpZigoYi5OPy5zdGF0ZVRhZ3NNb2RpZmllZHx8W10pLmxlbmd0aD4wKXt2YXIgdj1uLk4udUIoKTtmb3IobGV0IGggb2Ygdil7dmFyIGs9dkcobi5OLGgpO2lmKGspe2E6e3Y9Yi5OPy5zdGF0ZVRhZ3NNb2RpZmllZHx8W107az0obmV3IGlCKHFyKGspKSkuTj8ucmVsZXZhbnRTdGF0ZVRhZ3N8fFtdO2ZvcihsZXQgeCBvZiBrKWlmKHguc3RhdGVUYWchPW51bGwmJnYuaW5jbHVkZXMoeC5zdGF0ZVRhZykmJngub25TdGF0ZVRhZ01vZGlmaWVkPT09IlNUQVRFX1RBR19DQUNIRV9JTlNUUlVDVElPTl9FVklDVF9SRVNQT05TRSIpe3Y9ITA7YnJlYWsgYX12PSExfXYmJmtNKG4uTixoKX19fX1iPVcucmVzcG9uc2VDb250ZXh0Py5tYXhBZ2VTZWNvbmRzO0QmJmImJk51bWJlcihiKT4wJiYoVz1FZShXLGIpLG4uTi5wdXQoRCxuZXcgYmgoVykpKX07ClNzWj1mdW5jdGlvbihuLFcsRCl7aWYobi5OKXtsZXQgYj1TMShUNShXLCJrZXkiKSl8fCIvVU5LTk9XTl9QQVRIIjtuLk4uc3RhcnQoYil9bj1EO2cubCgid3VnX25ldHdvcmtpbmdfZ3ppcF9yZXF1ZXN0IikmJihuPU1YUyhEKSk7cmV0dXJuIG5ldyB3aW5kb3cuUmVxdWVzdChXLG4pfTsKZE49YXN5bmMgZnVuY3Rpb24obixXLEQsYix2LGspe2lmKGs/LmFib3J0ZWQpcmV0dXJuIFcuY2FuY2VsKCksYjt2YXIge3ZhbHVlOmgsZG9uZTp4fT1hd2FpdCBXLnJlYWQoKTtpZih4KXJldHVybiBuLk4/LnN1Y2Nlc3MoKSxiO3RyeXt2YXIgTD1ELnBhcnNlKGgpfWNhdGNoKGUpe3Rocm93IG5ldyBvOCgiRmFpbGVkIHRvIHBhcnNlIHN0cmVhbWluZyByZXNwb25zZSIsaCk7fWlmKEwhPW51bGwpZm9yKGxldCBlIG9mIEwpYi5wdXNoKGUpLHY/LihlKTtyZXR1cm4gZE4obixXLEQsYix2LGspfTsKbmM9ZnVuY3Rpb24obixXLEQpe2lmKCF6cil7bGV0IGs9Zy5xaigpO2cueG8oayx7Tkg6bEIsWUw6VHJ9KTtpZihEPy5vUyl7Zy54byhrLHtOSDpqWSxQZjpnLkFyKCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsRC5jbGllbnRJbnRlcmZhY2UpfSk7Zy54byhrLHtOSDpDZixQZjo1MTg0RTZ9KTtnLnhvKGsse05IOkJlLFlMOkEzaixbZy5MWF06W2pZLENmXX0pO2cueG8oayx7Tkg6RjgsWUw6d059KTt2YXIgYj1rLnJlc29sdmUoRjgpO2xldCBoPXdpbmRvdztpZihoLnl0SW5pdGlhbFZpZGVvSWQpe3ZhciB2PWgueXRJbml0aWFsVmlkZW9JZDtoLnl0SW5pdGlhbFBsYXllclJlc3BvbnNlJiZ1QihiLGgueXRJbml0aWFsUGxheWVyUmVzcG9uc2UseUgoInBsYXllciIse3ZpZGVvSWQ6dn0pKTtoLnl0SW5pdGlhbFdhdGNoTmV4dFJlc3BvbnNlJiZ1QihiLGgueXRJbml0aWFsV2F0Y2hOZXh0UmVzcG9uc2UseUgoIm5leHQiLHt2aWRlb0lkOnZ9KSk7aC55dEluaXRpYWxSZWVsSXRlbVdhdGNoUmVzcG9uc2UmJgp1QihiLGgueXRJbml0aWFsUmVlbEl0ZW1XYXRjaFJlc3BvbnNlLHlIKCJyZWVsX2l0ZW1fd2F0Y2giLHt2aWRlb0lkOnZ9KSl9fWcueG8oayx7Tkg6TWEsUGY6e3pnOntmZWVkYmFja0VuZHBvaW50OmhtKG1mUyksbW9kaWZ5Q2hhbm5lbE5vdGlmaWNhdGlvblByZWZlcmVuY2VFbmRwb2ludDpobShLNGkpLHBsYXlsaXN0RWRpdEVuZHBvaW50OmhtKE9ociksc2hhcmVFbnRpdHlFbmRwb2ludDpobShSOCksc3Vic2NyaWJlRW5kcG9pbnQ6aG0oUEd4KSx1bnN1YnNjcmliZUVuZHBvaW50OmhtKFpodCksd2ViUGxheWVyU2hhcmVFbnRpdHlTZXJ2aWNlRW5kcG9pbnQ6aG0oVWZaKX19fSk7dj1iJC5nZXRJbnN0YW5jZSgpO2I9e307diYmKGIuY2xpZW50X2xvY2F0aW9uPXYpO0Q/Lm9TJiYodj1rLnJlc29sdmUoRjgpLGIuc3RvcmU9dixiLnJlc29sdmVfdXJsX3ByZWZldGNoPWsucmVzb2x2ZShRVykpO2cueG8oayx7Tkg6VlcsUGY6Yn0pO2cueG8oayx7Tkg6Y2UsUGY6biE9PXZvaWQgMD8KbjppTygpfSk7Vz09PXZvaWQgMCYmKFc9ay5yZXNvbHZlKGxCKSk7Zy5sKCJhbGxfd2ViX2VuYWJsZV9uZXR3b3JrX21hY2hpbmUiKSYmY1MyKCk7RTliKGsucmVzb2x2ZShNYSksVyxrLnJlc29sdmUoY2UpLGsucmVzb2x2ZShWVyksRD8ub1M/ay5yZXNvbHZlKEJlKTp2b2lkIDApO2cueG8oayx7Tkg6YTgsUGY6WDcuaW5zdGFuY2V9KTt6cj1rLnJlc29sdmUoYTgpfXJldHVybiB6cn07CldRPWZ1bmN0aW9uKG4pe3ZhciBXPXt9O249bi5zcGxpdCgiJiIpO2ZvcihsZXQgRCBvZiBuKW49RC5zcGxpdCgiPSIpLG4ubGVuZ3RoPT09MiYmKFdbblswXV09blsxXSk7cmV0dXJuIFd9Owp5M3I9YXN5bmMgZnVuY3Rpb24oKXt2YXIgbj13aW5kb3c7YXdhaXQgZy5NaChnLkQ2KCkpO3ZhciBXPW4uYmdldm1jO2lmKCFXKXRocm93IEVycm9yKCJCR0UgQ29udHJvbHMgbm90IGV4cG9zZWQiKTtyZXR1cm57cGF1c2U6KCk9PntXLnAoKX0sCnJlc3VtZTooKT0+e1cucigpfSwKY2hlY2tGb3JSZWZyZXNoOigpPT5XLmNyKCl9fTsKZy5ENj1mdW5jdGlvbigpe3JldHVybiBnLmwoImJnX3N0X2hyIik/ImhhdnVva21oaHMtMCI6YGhhdnVva21oaHMtJHtNYXRoLmZsb29yKGdsb2JhbFRoaXMucGVyZm9ybWFuY2U/LnRpbWVPcmlnaW58fDApfWB9OwpiMD1mdW5jdGlvbihuKXt3aW5kb3cuYmdlbnM9bn07CkVteD1mdW5jdGlvbigpe3JldHVybiBuZXcgUHJvbWlzZShuPT57dmFyIFc9d2luZG93O1cubnRwZXZhc3JzIT09dm9pZCAwP24obmV3IHZRKFcubnRwZXZhc3JzKSk6KFcubnRwcWZiZWw9PT12b2lkIDAmJihXLm50cHFmYmVsPVtdKSxXLm50cHFmYmVsLnB1c2goRD0+e24obmV3IHZRKEQpKX0pKX0pfTsKeDU9ZnVuY3Rpb24oKXtpZihnLmFLKCkpe3ZhciBuPWcuQXIoIlBMQVlFUl9WQVJTIix7fSk7aWYoZy4keShuLCJwcml2ZW1iZWQiLCExKSE9IjEiJiYhZy54UihuKSl7dmFyIFc9KCk9PntrNT0hMDsiZ29vZ2xlX2FkX3N0YXR1cyJpbiB3aW5kb3c/Zy5TSCgiRENMS1NUQVQiLDEpOmcuU0goIkRDTEtTVEFUIiwyKX07CnRyeXtsZXQgRD1Taihkb2N1bWVudCk7aU0oaGosVyxEKX1jYXRjaChEKXt9aWhDLnB1c2godGEuTFMoKCk9PntpZighKGs1fHwiZ29vZ2xlX2FkX3N0YXR1cyJpbiB3aW5kb3cpKXt0cnl7aWYoaGoudG9TdHJpbmcoKSYmVyl7dmFyIEQ9YCR7QWkoVyl9YCxiPW9JW0RdO2ImJlBVKGIpfX1jYXRjaCh2KXt9azU9ITA7Zy5TSCgiRENMS1NUQVQiLDMpfX0sNUUzKSl9fX07CkxjPWZ1bmN0aW9uKCl7dmFyIG49TnVtYmVyKGcuQXIoIkRDTEtTVEFUIiwwKSk7cmV0dXJuIGlzTmFOKG4pPzA6bn07CmV0PWZ1bmN0aW9uKG4sVyl7bi5OPVd9OwpvbU09YXN5bmMgZnVuY3Rpb24obil7aWYoZy5xaS55dEF0UCYmIWcubCgieXRhdHBfa3MiKSl7dmFyIFc9YXdhaXQgZy5xaS55dEF0UDtkZWxldGUgZy5xaS55dEF0UDt2YXIgRD1XPy5SO3ZhciBiPVc/LlQ7Vz11dDIoRCk7bGV0IGs9ISFiO24uSi5KKEQ/Vz9rPzc6MTA6az8xOjg6az8yOjksbi5XKyspO2lmKCFEfHxXKUQ9YXdhaXQgWHkobixxZShiLG51bGwpKSxEPUpTT04uc3RyaW5naWZ5KEQpO2cucWkueXRBdFJDP2cucWkueXRBdFJDKEQpOmcuR3EoRXJyb3IoInl0QXRSQyBub3QgZGVmaW5lZCBmb3IgeXRBdFAuIikpfWVsc2UgZy5xaS55dEF0UkM/Zy5WeCgwLGFzeW5jKCk9PntiPWcucWkueXRBdFQ7ZGVsZXRlIGcucWkueXRBdFQ7aWYoZy5xaS55dEF0UkMpe24uSi5KKDIsbi5XKyspO3ZhciBrPWF3YWl0IFh5KG4scWUoYixudWxsKSk7Zy5xaS55dEF0UkMmJmcucWkueXRBdFJDKEpTT04uc3RyaW5naWZ5KGspKX1lbHNlIG4uSi5KKDYsbi5XKyspfSwyLHYwKCJhdHRfaW5pdF9kZWxheSIsCjApKTooYj1nLnFpLnl0QXRULGRlbGV0ZSBnLnFpLnl0QXRULG4uSi5KKDEsbi5XKyspKTsKRD1hd2FpdCBFbXgoKTtELmJpbmRJbm5lcnR1YmVDaGFsbGVuZ2VGZXRjaGVyKGs9PntuLkouSigzLG4uVysrKTtyZXR1cm4gWHkobixxZShiLGspKX0pOwpELnJlZ2lzdGVyQ2hhbGxlbmdlRmV0Y2hlZENhbGxiYWNrKGs9PntrPWsuY2hhbGxlbmdlO2lmKCFrKXRocm93IEVycm9yKCJCR0VfTUFDUiIpO2s9e2NoYWxsZW5nZTprLFJSOldRKGspLE8xOnYsYmdDaGFsbGVuZ2U6bmV3IHIkfTtrPVByb21pc2UucmVzb2x2ZShrKTtuLk49a30pOwp2YXIgdj1hd2FpdCBnLk1oKGcuRDYoKSk7RD1ELmdldExhdGVzdENoYWxsZW5nZVJlc3BvbnNlKCkuY2hhbGxlbmdlO2lmKCFEKXRocm93IEVycm9yKCJCR0VfTUFDSUwiKTtyZXR1cm57Y2hhbGxlbmdlOkQsUlI6V1EoRCksTzE6dixiZ0NoYWxsZW5nZTpuZXcgciR9fTsKdGo9YXN5bmMgZnVuY3Rpb24obil7dmFyIFc9cWUodm9pZCAwLGckKCkuTik7dHJ5e3ZhciBEPWF3YWl0IGRmMihuLFcpfWNhdGNoKHgpe3JldHVybiBnLkdxKEVycm9yKCJGYWlsZWQgdG8gZmV0Y2ggYXR0ZXN0YXRpb24gY2hhbGxlbmdlIGFmdGVyIDUgYXR0ZW1wdHM7IG5vdCByZXRyeWluZyBmb3IgMjRoLiIpKSxHMChuLDg2NEU1KSx7Y2hhbGxlbmdlOiIiLFJSOnt9LE8xOnZvaWQgMCxiZ0NoYWxsZW5nZTp2b2lkIDB9fVc9RC5RRjt2YXIgYj1ELlR0O0cwKG4sKE51bWJlcihiLnQpfHw3MjAwKSoxRTMpO249dm9pZCAwO2lmKCJjMWEiaW4gYiYmRC5iZ0NoYWxsZW5nZSl7RD1ELmJnQ2hhbGxlbmdlO3ZhciB2PW5ldyByJDtpZihELmludGVycHJldGVySmF2YXNjcmlwdCl7dmFyIGs9Tk4oRC5pbnRlcnByZXRlckphdmFzY3JpcHQpO2s9S2IoaykudG9TdHJpbmcoKTt2YXIgaD1uZXcgcXY7Zy5TRShoLDYsayk7JDkodixxdiwxLGgseFUpfWVsc2UgRC5pbnRlcnByZXRlclVybCYmCihrPXB3KEQuaW50ZXJwcmV0ZXJVcmwpLGs9eDMoaykudG9TdHJpbmcoKSxoPW5ldyBHSCxnLlNFKGgsNCxrKSwkOSh2LEdILDIsaCx4VSkpO0QuaW50ZXJwcmV0ZXJIYXNoJiZBUyh2LDMsRC5pbnRlcnByZXRlckhhc2gseFUpO0QucHJvZ3JhbSYmQVModiw0LEQucHJvZ3JhbSx4VSk7RC5nbG9iYWxOYW1lJiZBUyh2LDUsRC5nbG9iYWxOYW1lLHhVKTtELmNsaWVudEV4cGVyaW1lbnRzU3RhdGVCbG9iJiZBUyh2LDcsRC5jbGllbnRFeHBlcmltZW50c1N0YXRlQmxvYix4VSk7dHJ5e2F3YWl0IHRxKGckKCksdil9Y2F0Y2goeCl7cmV0dXJuIGcuR3EoeCkse2NoYWxsZW5nZTpXLFJSOmIsTzE6bixiZ0NoYWxsZW5nZTp2fX10cnl7bj1uZXcgQXEoe2NoYWxsZW5nZTp2LHgzOntWajoiYUdJZiJ9fSksYXdhaXQgbi5Pdn1jYXRjaCh4KXtnLkdxKHgpLG49dm9pZCAwfX1yZXR1cm57Y2hhbGxlbmdlOlcsUlI6YixPMTpuLGJnQ2hhbGxlbmdlOnZ9fTsKWHk9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1uLlg7aWYoIUR8fEQuV0coKSlyZXR1cm4gJDUobixXKTtnLmdfKCJhdHRfcG5hIix2b2lkIDAsImF0dGVzdGF0aW9uX2NoYWxsZW5nZV9mZXRjaCIpO3JldHVybiBuZXcgUHJvbWlzZShiPT57RC5lRigicHVibGljeXRuZXR3b3Jrc3RhdHVzLW9ubGluZSIsKCk9PnskNShuLFcpLnRoZW4oYil9KX0pfTsKZGYyPWFzeW5jIGZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBEPXZvaWQgMCxiPTA7Yjw1Oyl7aWYoYj4wKXtsZXQgdj0xRTMqTWF0aC5wb3coMixiLTEpK01hdGgucmFuZG9tKCkqMUUzO2F3YWl0IG5ldyBQcm9taXNlKGs9PntnLmNCKDAsKCk9PntrKHZvaWQgMCl9LHYpfSl9dHJ5e24uSi5KKDQsbi5XKyspOwpsZXQgdj1hd2FpdCBYeShuLFcpO3JldHVybiB6YWkodil9Y2F0Y2godil7RD12LHYgaW5zdGFuY2VvZiBFcnJvciYmZy5HcSh2KX1iKyt9dGhyb3cgRDt9OwpHMD1mdW5jdGlvbihuLFcpe3ZhciBEPURhdGUubm93KCkrVyxiPWFzeW5jKCk9Pnt2YXIgdj1ELURhdGUubm93KCk7djwxRTM/YXdhaXQgbDlpKG4pOmcuY0IoMCxiLE1hdGgubWluKHYsNkU0KSl9OwpiKCl9OwokNT1hc3luYyBmdW5jdGlvbihuLFcpe2IwKDIpO3RyeXtsZXQgRD1hd2FpdCBYeShuLm5ldHdvcmssVyk7RD9ELmNoYWxsZW5nZSYmIUQuYmdDaGFsbGVuZ2U/YjAoMSk6YjAoNCk6YjAoMyk7cmV0dXJuIER9Y2F0Y2goRCl7YjAoMyl9fTsKemFpPWZ1bmN0aW9uKG4pe2lmKCFuKXRocm93IEVycm9yKCJGZXRjaGluZyBBdHRlc3RhdGlvbiBjaGFsbGVuZ2UgcmV0dXJuZWQgZmFsc3kiKTtpZighbi5jaGFsbGVuZ2UpdGhyb3cgRXJyb3IoIk1pc3NpbmcgQXR0ZXN0YXRpb24gY2hhbGxlbmdlIik7dmFyIFc9bi5jaGFsbGVuZ2UsRD1XUShXKTtpZigiYzFhImluIEQmJighbi5iZ0NoYWxsZW5nZXx8IW4uYmdDaGFsbGVuZ2UucHJvZ3JhbSkpdGhyb3cgRXJyb3IoIkV4cGVjdGVkIGJnIGNoYWxsZW5nZSBidXQgbWlzc2luZy4iKTtyZXR1cm57Li4ubixRRjpXLFR0OkR9fTsKbDlpPWFzeW5jIGZ1bmN0aW9uKG4pe3ZhciBXPWF3YWl0IFByb21pc2UucmFjZShbbi5OLG51bGxdKSxEPXRqKG4pO24uTj1EO1c/Lk8xPy5kaXNwb3NlKCl9OwpUR2g9ZnVuY3Rpb24obixXKXtyZXR1cm4gbmV3IFByb21pc2UoRD0+e2cuY0IoMCwoKT0+e0QoVygpKX0sbil9KX07CnFlPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9e2VuZ2FnZW1lbnRUeXBlOiJFTkdBR0VNRU5UX1RZUEVfVU5CT1VORCJ9O24mJihELmVhY3JUb2tlbj1uKTtXJiYoRC5pbnRlcnByZXRlckhhc2g9Vyk7cmV0dXJuIER9Owp1dDI9ZnVuY3Rpb24obil7aWYoIW58fCFnLmwoInJvc2NhcyIpKXJldHVybiExO3RyeXt2YXIgVz1KU09OLnBhcnNlKG4pfWNhdGNoKEQpe3JldHVybiExfW49Vy5jaGFsbGVuZ2U7aWYoIW4pcmV0dXJuITE7Vz1XUShuKTtuPU51bWJlcihXLmMpfHx2b2lkIDA7Vz1OdW1iZXIoVy50KXx8NzIwMDtyZXR1cm4hIW4mJkRhdGUubm93KCk+KG4rVykqMUUzfTsKcmE9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFByb21pc2Uobj0+e3ZhciBXPXdpbmRvdztXLmF0dG1wIT09dm9pZCAwP24oVy5hdHRtcCk6KFcuYXR0bXE9PT12b2lkIDAmJihXLmF0dG1xPVtdKSxXLmF0dG1xLnB1c2goRD0+e24oRCl9KSl9KX07CmcucGM9YXN5bmMgZnVuY3Rpb24obixXLEQpe2lmKHNoKCkpe3ZhciBiPXdpbmRvdztyZXR1cm4gYi5hdHRtcCE9PXZvaWQgMD9iLmF0dG1wLnMobixXLEQpOihhd2FpdCByYSgpKS5zKG4sVyxEKX1yZXR1cm4oYj0oYj1nLnJyKCJ5dC5hYmEuYXR0IikpP2I6TmUuaW5zdGFuY2UhPT12b2lkIDA/TmUuaW5zdGFuY2UuZFEuYmluZChOZS5pbnN0YW5jZSk6bnVsbCk/YihuLFcsRCk6UHJvbWlzZS5yZXNvbHZlKHtlcnJvcjoiQVRURVNUQVRJT05fRVJST1JfQVBJX05PVF9SRUFEWSJ9KX07CmcuWTU9YXN5bmMgZnVuY3Rpb24oKXtpZihzaCgpKXJldHVybiB3aW5kb3cuYXR0bXA9PT12b2lkIDA/ITE6KGF3YWl0IHJhKCkpLmlyKCk7dmFyIG47cmV0dXJuKG49KG49Zy5ycigieXQuYWJhLmF0dDIiKSk/bjpOZS5pbnN0YW5jZSE9PXZvaWQgMD9OZS5pbnN0YW5jZS55Zi5iaW5kKE5lLmluc3RhbmNlKTpudWxsKT9uKCk6UHJvbWlzZS5yZXNvbHZlKCExKX07CnNoPWZ1bmN0aW9uKCl7cmV0dXJuKGcubCgiYXR0bXVzaSIpfHxnLmwoImF0dG11c2l3IikpJiZnLmwoImF0dG11c2lfdWUiKX07CkhRPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5ycigieXREZWJ1Z0RhdGEuY2FsbGJhY2tzIik7RHx8KEQ9e30sZy5HYigieXREZWJ1Z0RhdGEuY2FsbGJhY2tzIixEKSk7aWYoZy5sKCJ3ZWJfZGRfaXUiKXx8anhTLmluY2x1ZGVzKG4pKURbbl09V307CkJHTT1hc3luYyBmdW5jdGlvbihuLFcsRCl7Vz17Y29udGV4dDpnLnZiKCksc2V0dGluZ0l0ZW1JZDpXLG5ld1ZhbHVlOkR9O0Q9TEIoQ0diKTtuPWF3YWl0IGcucl8obixXLEQpO2lmKCFufHxuLmVycm9yTWV0YWRhdGEpbj9uLmVycm9yTWV0YWRhdGEmJmcuR3EobmV3IGcuUXgoYFNldFNldHRpbmdSZXF1ZXN0IGZhaWxlZCB3aXRoIHN0YXR1cyAke24uZXJyb3JNZXRhZGF0YS5zdGF0dXN9YCkpOmcuR3EobmV3IGcuUXgoIlNldFNldHRpbmdSZXF1ZXN0IGZhaWxlZCB3aXRoIGVtcHR5IHJlc3BvbnNlIikpfTsKRjRiPWZ1bmN0aW9uKG4sVyxELGIsdixrKXtEPyhuLnZWKDIpLGlNKGZ3KEQpLCgpPT57aWYod2luZG93LnRyYXlyaWRlKWZjKG4sYix2KTtlbHNle24udlYoMyk7bGV0IGg9dU0oRCkseD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChoKTt4JiYoeUooaCkseC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHgpKTtnLkdxKG5ldyBnLlF4KCJCTDpVTEIiLGAke0R9YCkpfX0saykpOlc/KGs9Zy56RigiU0NSSVBUIiksVyBpbnN0YW5jZW9mIEFGPyhrLnRleHRDb250ZW50PUtiKFcpLE9NKGspKTprLnRleHRDb250ZW50PVcsay5ub25jZT1Taihkb2N1bWVudCksZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChrKSxkb2N1bWVudC5oZWFkLnJlbW92ZUNoaWxkKGspLHdpbmRvdy50cmF5cmlkZT9mYyhuLGIsdik6KG4udlYoNCksZy5HcShuZXcgZy5ReCgiQkw6VUxCSiIpKSkpOmcuR3EobmV3IGcuUXgoIkJMOlVMViIpKX07CmZjPWZ1bmN0aW9uKG4sVyxEKXtuLnZWKDUpO3ZhciBiPSEhbi5EYSYmd3loLmluY2x1ZGVzKGcuSVAobi5EYSl8fCIiKTt0cnl7bGV0IHY9bmV3IEFxKHtwcm9ncmFtOlcsZ2xvYmFsTmFtZToidHJheXJpZGUiLHgzOntkaXNhYmxlOiFnLmwoImF0dF93ZWJfcmVjb3JkX21ldHJpY3MiKXx8IWcubCgiYXR0X3NraXBfbWV0cmljc19mb3JfY29va2llbGVzc19kb21haW5zX2tzIikmJmIsVmo6ImFHSWYifX0pO3YuT3YudGhlbigoKT0+e24udlYoNik7RCYmRChXKX0pOwpuLk4odil9Y2F0Y2godil7bi52Vig3KSx2IGluc3RhbmNlb2YgRXJyb3ImJmcuR3Eodil9fTsKdmFyIE1DYj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIFAwW0lbMTBdXSh0aGlzLDEsODEzOCxuLFcsRCl9OwpKaj1mdW5jdGlvbigpe3ZhciBuPWcucnIoInl0LmFidXNlLnBsYXllckF0dExvYWRlciIpO3JldHVybiBuJiZbImJndm1hIiwiYmd2bWIiLCJiZ3ZtYyJdLmV2ZXJ5KFc9PlcgaW4gbik/bjpudWxsfTsKUmFTPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlIDI6cmV0dXJuIDA7Y2FzZSAxOnJldHVybiAyO2Nhc2UgMDpyZXR1cm4gMztjYXNlIDQ6Y2FzZSAzOnJldHVybiAxO2RlZmF1bHQ6Zy5wYihuLCJ1bmtub3duIHJlc3VsdCB0eXBlIil9fTsKZy5JYT1mdW5jdGlvbihuKXtyZXR1cm4gbj8ubGF5b3V0SWQhPW51bGwmJm4/LmxheW91dFR5cGUhPW51bGx9OwpnLlo2PWZ1bmN0aW9uKG4pe2lmKCFnLklhKG4uYWRMYXlvdXRNZXRhZGF0YSkpcmV0dXJuITE7bj1uLnJlbmRlcmluZ0NvbnRlbnQ7cmV0dXJuIGcudyhuLGcuU3QpfHxnLncobixnLkFqKXx8Zy53KG4sZy5tMil8fGcudyhuLGcuS2MpfHxnLncobixnLk9oKXx8Zy53KG4sZy5QUSk/ITA6ITF9OwpnLnUwPWZ1bmN0aW9uKG4pe2lmKCFnLklhKG4uYWRMYXlvdXRNZXRhZGF0YSkpcmV0dXJuITE7bj1uLnJlbmRlcmluZ0NvbnRlbnQ7cmV0dXJuIGcudyhuLGcuVWgpfHxnLncobixnLnlWKXx8Zy53KG4sUXhNKXx8Zy53KG4sZy5FaCl8fGcudyhuLGcuaTApPyEwOiExfTsKZy56MD1mdW5jdGlvbihuKXtyZXR1cm4gZy5JYShuLmFkTGF5b3V0TWV0YWRhdGEpP2cudyhuLnJlbmRlcmluZ0NvbnRlbnQsZy5vYSl8fGcudyhuLnJlbmRlcmluZ0NvbnRlbnQsZy5kYSk/ITA6ITE6ITF9OwpnLmwwPWZ1bmN0aW9uKG4pe3JldHVybiBuLnBsYXllclZhcnMhPT12b2lkIDAmJm4ucGluZ3MhPT12b2lkIDAmJm4uZXh0ZXJuYWxWaWRlb0lkIT09dm9pZCAwfTsKZy5NZT1mdW5jdGlvbihuKXtpZighZy5JYShuLmFkTGF5b3V0TWV0YWRhdGEpKXJldHVybiExO249bi5yZW5kZXJpbmdDb250ZW50O3ZhciBXPWcudyhuLGcuVDApO3JldHVybiBXP2cuanQoVyk6KFc9Zy53KG4sZy5DYykpP2cubDAoVyk6KFc9Zy53KG4sZy5CUSkpP1cucGxheWVyVmFycyE9PXZvaWQgMDooVz1nLncobixnLlVoKSk/Vy5kdXJhdGlvbk1pbGxpc2Vjb25kcyE9PXZvaWQgMDpnLncobixnLkZ5KXx8Zy53KG4sZy53YSk/ITA6ITF9OwpnLmp0PWZ1bmN0aW9uKG4pe249KG4uc2VxdWVudGlhbExheW91dHN8fFtdKS5tYXAoVz0+Zy53KFcsZy5SYSkpOwpyZXR1cm4gbi5sZW5ndGg+MCYmbi5ldmVyeShnLk1lKX07CmcuVlY9ZnVuY3Rpb24obil7cmV0dXJuIGcuSWEobi5hZExheW91dE1ldGFkYXRhKT8obj1nLncobi5yZW5kZXJpbmdDb250ZW50LGcuUVYpKSYmbi5waW5ncz8hMDohMTohMX07CmcuRHE9ZnVuY3Rpb24obil7aWYoIWcuSWEobi5hZExheW91dE1ldGFkYXRhKSlyZXR1cm4hMTtpZihnLncobi5yZW5kZXJpbmdDb250ZW50LGcuY1EpfHxnLncobi5yZW5kZXJpbmdDb250ZW50LGcub2EpKXJldHVybiEwO3ZhciBXPWcudyhuLnJlbmRlcmluZ0NvbnRlbnQsZy5hYSk7cmV0dXJuIGcudyhuLnJlbmRlcmluZ0NvbnRlbnQsZy5uaSl8fGcudyhXPy5zaWRlUGFuZWwsVkMyKXx8Zy53KFc/LnNpZGVQYW5lbCxnLlckKXx8Zy53KFc/LnNpZGVQYW5lbCxjM2gpPyEwOiExfTsKZy5nTT1mdW5jdGlvbihuKXt2YXIgVzsoVz0hbil8fChXPW4uYWRTbG90TWV0YWRhdGEsVz0hKFc/LnNsb3RJZCE9PXZvaWQgMCYmVz8uc2xvdFR5cGUhPT12b2lkIDApKTtpZihXfHwhKGcuYloobil8fG4uc2xvdEVudHJ5VHJpZ2dlciYmbi5zbG90RnVsZmlsbG1lbnRUcmlnZ2VycyYmbi5zbG90RXhwaXJhdGlvblRyaWdnZXJzKSlyZXR1cm4hMTtuPW4uZnVsZmlsbG1lbnRDb250ZW50Py5mdWxmaWxsZWRMYXlvdXQ7cmV0dXJuKFc9Zy53KG4sZy5SYSkpP2cuTWUoVyk6KFc9Zy53KG4sZy52JCkpP2cuRHEoVyk6KFc9Zy53KG4sZy5reikpP2cudTAoVyk6KFc9Zy53KG4sZy5oWCkpP2cuWjYoVyk6KFc9Zy53KG4sZy54eikpP2cuSWEoVy5hZExheW91dE1ldGFkYXRhKT9nLncoVy5yZW5kZXJpbmdDb250ZW50LGcuU3QpPyEwOiExOiExOihXPWcudyhuLGcuTGkpKT9nLlZWKFcpOihuPWcudyhuLGcuZTIpKT9nLnowKG4pOiExfTsKZy5iWj1mdW5jdGlvbihuKXtyZXR1cm4obj1nLncobi5mdWxmaWxsbWVudENvbnRlbnQ/LmZ1bGZpbGxlZExheW91dCxnLnYkKSkmJm4uYWRMYXlvdXRNZXRhZGF0YT8ubGF5b3V0VHlwZT09PSJMQVlPVVRfVFlQRV9QQU5FTF9RUl9DT0RFIiYmbi5sYXlvdXRFeGl0Tm9ybWFsVHJpZ2dlcnM9PT12b2lkIDB9OwphOXI9ZnVuY3Rpb24obil7Zm9yKGxldCBXIG9mIG58fFtdKXtuPWcudyhXLGcuWEcpO2lmKG49PT12b2lkIDB8fCFnLmdNKG4pKWJyZWFrO2lmKChuPWcudyhuLmZ1bGZpbGxtZW50Q29udGVudD8uZnVsZmlsbGVkTGF5b3V0LGcuTGkpKSYmZy5WVihuKSlyZXR1cm4hMH1yZXR1cm4hMX07CnE0PWZ1bmN0aW9uKG4pe2lmKCFufHwhbi5hZFBsYWNlbWVudHMmJiFuLmFkU2xvdHMpcmV0dXJuITE7Zm9yKGxldCBXIG9mIG4uYWRQbGFjZW1lbnRzfHxbXSl7aWYoIVcpY29udGludWU7bGV0IEQ9Vy5hZFBsYWNlbWVudFJlbmRlcmVyO2lmKEQhPW51bGwmJihELmNvbmZpZyYmRC5jb25maWcuYWRQbGFjZW1lbnRDb25maWcmJkQuY29uZmlnLmFkUGxhY2VtZW50Q29uZmlnLmtpbmQpPT09IkFEX1BMQUNFTUVOVF9LSU5EX1NUQVJUIilyZXR1cm4hMH1mb3IobGV0IFcgb2Ygbi5hZFNsb3RzfHxbXSlpZihnLncoVyxnLlhHKT8uYWRTbG90TWV0YWRhdGE/LnRyaWdnZXJFdmVudD09PSJTTE9UX1RSSUdHRVJfRVZFTlRfQkVGT1JFX0NPTlRFTlQiKXJldHVybiEwO3JldHVybiExfTsKbm4xPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W107Vz9XLmlzVHJ1c3RlZD09PSEwP0QucHVzaCgiQklTQ09UVElfQkFTRURfREVURUNUSU9OX1NUQVRFX0FTX1NFRUtfRVZFTlRfVFJVU1RFRCIpOlcuaXNUcnVzdGVkPT09ITE/RC5wdXNoKCJCSVNDT1RUSV9CQVNFRF9ERVRFQ1RJT05fU1RBVEVfQVNfU0VFS19FVkVOVF9OT1RfVFJVU1RFRCIpOkQucHVzaCgiQklTQ09UVElfQkFTRURfREVURUNUSU9OX1NUQVRFX0FTX1NFRUtfRVZFTlRfVFJVU1RFRF9QUk9QRVJUWV9VTkRFRklORUQiKTpELnB1c2goIkJJU0NPVFRJX0JBU0VEX0RFVEVDVElPTl9TVEFURV9BU19TRUVLX0VWRU5UX1VOREVGSU5FRCIpO2cuR0MoMCwiYS5zXyIse21ldGFkYXRhOm4sc3RhdGVzOkR9KTtnLlNIKCJBU0RTVEFUIiwwKX07CmcuR0M9ZnVuY3Rpb24obixXLEQpe1c9V0RDW1ddO3ZhciBiPXtkZXRlY3RlZDpuPT09MCxzb3VyY2U6YCR7Vy5KfSR7RC50cmlnZ2VyQ29udGV4dD8/IiJ9JHtELk0zPz8iIn1gLGRldGVjdGlvblN0YXRlczpELnN0YXRlcyxkdXJhdGlvbk1zOkQuRXd9O0QubWV0YWRhdGEmJihiLmNvbnRlbnRDcG49RC5tZXRhZGF0YS5jb250ZW50Q3BuLGIuYWRDcG49RC5tZXRhZGF0YS5hZENwbik7Zy56VSgiYmlzY290dGlCYXNlZERldGVjdGlvbiIsYik7Vy5OIT09dm9pZCAwJiYoRD1OdW1iZXIoZy5BcigiQ0FUU1RBVCIsMCkpLFcuTiE9PXZvaWQgMD8oVz1XLk4sbj1SYVMobiksbj1EJn4oMzw8Vyl8bjw8Vyk6bj1ELGcuU0goIkNBVFNUQVQiLG4pKX07CnRYPWZ1bmN0aW9uKG4sVyl7bj1uLndhdGNoRW5kcG9pbnRTdXBwb3J0ZWRBdXRob3JpemF0aW9uVG9rZW5Db25maWc/LnZpZGVvQXV0aG9yaXphdGlvblRva2VuPy5jcmVkZW50aWFsVHJhbnNmZXJUb2tlbnN8fFtdO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7KytEKWlmKG5bRF0uc2NvcGU9PT1XKXJldHVybiBuW0RdLnRva2VufHx2b2lkIDB9OwpnLk40PWZ1bmN0aW9uKG4pe3ZhciBXPWcudyhuLCR6KTtpZihXKXJldHVybiBXO2lmKChXPWcudyhuLERZcikpJiZXLmNvbW1hbmRzKXJldHVybiByTShXLmNvbW1hbmRzKTtpZigoVz1nLncobixiOGIpKSYmVy5jb21tYW5kcylyZXR1cm4gck0oVy5jb21tYW5kcyk7aWYoKG49Zy53KG4sdm5NKSkmJm4uaWRlbnRpZmllciYmbi5jb21tYW5kJiYoczN8fChzMz1bXSksIXMzLmluY2x1ZGVzKG4uaWRlbnRpZmllcikpKXJldHVybiBzMy5wdXNoKG4uaWRlbnRpZmllciksZy53KG4uY29tbWFuZCwkeil9OwpyTT1mdW5jdGlvbihuKXtpZihuLmxlbmd0aCE9PTApe3ZhciBXPVtdO2ZvcihsZXQgRCBvZiBuKShuPWcuTjQoRCkpJiZXLnB1c2gobik7cmV0dXJue2NvbW1hbmRFeGVjdXRvckNvbW1hbmQ6e2NvbW1hbmRzOld9fX19OwpwaT1mdW5jdGlvbihuKXtpZihuJiZuLnNpbXBsZVRleHQpcmV0dXJuIG4uc2ltcGxlVGV4dDt2YXIgVz0iIjtpZihuJiZuLnJ1bnMpZm9yKGxldCBEPTA7RDxuLnJ1bnMubGVuZ3RoO0QrKyluLnJ1bnNbRF0udGV4dCYmKFcrPW4ucnVuc1tEXS50ZXh0KTtyZXR1cm4gV307Cll6PWZ1bmN0aW9uKG4pe3JldHVybiBuP2Z1bmN0aW9uKCl7dHJ5e3JldHVybiBuLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1jYXRjaChXKXtnLlhqKFcpfX06bn07CmZpPWZ1bmN0aW9uKCl7SCQuaW5zdGFuY2V8fChIJC5pbnN0YW5jZT1uZXcgSCQpO3JldHVybiBIJC5pbnN0YW5jZX07CklmPWZ1bmN0aW9uKCl7SlguaW5zdGFuY2V8fChKWC5pbnN0YW5jZT1uZXcgSlgpO3JldHVybiBKWC5pbnN0YW5jZX07Cm1VPWZ1bmN0aW9uKG4sVyxELGI9e30pe1BWKCgpPT57a3ZNLmluY2x1ZGVzKFcpfHwoZy5HcShuZXcgZy5ReCgiY3JlYXRlQ2xpZW50U2NyZWVuKCkgY2FsbGVkIHdpdGggYSBub24tcGFnZSBWRSIsVykpLFc9ODM3NjkpO2lmKCFiLmlzSGlzdG9yeU5hdmlnYXRpb24pe2xldCB2PWIubGF5ZXJ8fDA7bi5UQy5zZXQodixbXSk7UzIobix2KS5wdXNoKHtyb290VmU6VyxrZXk6Yi5rZXl8fCIifSl9bi5EPVtdO24uTz1bXTtiLlVBP2hqdChuLFcsRCxiKTpBWChuLFcsRCxiKX0pKCl9OwpTMj1mdW5jdGlvbihuLFcpe24uSy5oYXMoVyl8fG4uSy5zZXQoVyxbXSk7cmV0dXJuIG4uSy5nZXQoVyl9OwpoanQ9ZnVuY3Rpb24obixXLEQsYj17fSl7bi5OLmFkZChiLmxheWVyfHwwKTtuLmo9KCk9PntBWChuLFcsRCxiKTt2YXIgdj13NChiLmxheWVyKTtpZih2KXtsZXQgaz1nLlJ2KGIubGF5ZXIpO2ZvcihsZXQgaCBvZiBuLkQpe2xldCB4PWhbMF0sTD1oWzFdfHx2O2s/S2kobix4LEwsYi5sYXllcixrKTpPMyhuLHgsTCxiLmxheWVyKX1mb3IobGV0IGggb2Ygbi5PKVAkKG4saFswXSxoWzFdKX19OwpEfHxnLlJ2KGIubGF5ZXIpfHxuLmooKTtpZihiLlVBKWZvcihsZXQgdiBvZiBiLlVBKXhZYihuLHYsYi5sYXllcik7ZWxzZSBnLlhqKEVycm9yKCJEZWxheWVkIHNjcmVlbiBuZWVkcyBhIGRhdGEgcHJvbWlzZS4iKSl9OwpBWD1mdW5jdGlvbihuLFcsRCxiPXt9KXt2YXIgdj12b2lkIDA7Yi5sYXllcnx8KGIubGF5ZXI9MCk7dj1iLnBhcmVudExheWVyIT09dm9pZCAwP2IucGFyZW50TGF5ZXI6Yi5sYXllcjt2YXIgaz1nLlJ2KHYpO3Y9dzQodik7dmFyIGg9RHx8dix4O2gmJihiLnBhcmVudENzbiE9PXZvaWQgMD94PXtjbGllbnRTY3JlZW5Ob25jZTpiLnBhcmVudENzbix2aXN1YWxFbGVtZW50Omh9OmsmJmshPT0iVU5ERUZJTkVEX0NTTiImJih4PXtjbGllbnRTY3JlZW5Ob25jZTprLHZpc3VhbEVsZW1lbnQ6aH0pKTt2YXIgTCxlPWcuQXIoIkVWRU5UX0lEIik7az09PSJVTkRFRklORURfQ1NOIiYmZSYmKEw9e3NlcnZsZXREYXRhOntzZXJpYWxpemVkU2VydmxldEV2ZW50SWQ6ZX19KTtnLmwoImNvbWJpbmVfdmVfZ3JhZnRzIikmJmsmJlpxKG4sayk7Zy5sKCJub19jbGllbnRfdmVfYXR0YWNoX3VubGVzc19zaG93biIpJiZoJiZrJiZkSyhoLGspO3RyeXt2YXIgRz1nOWkobi5jbGllbnQsVyx4LGIuTDgsCmIuY3R0QXV0aEluZm8sTCxiLmltcGxpY2l0R2VzdHVyZVR5cGUsYi5sb2dnaW5nRXhwZWN0YXRpb25zLGIuYXV0b21hdGVkTG9nRXZlbnRTb3VyY2UpfWNhdGNoKE4pe0s0KE4se2w3Olcscm9vdFZlOnYsSTc6RCxsQTprLGdQOngsTDg6Yi5MOH0pO2cuWGooTik7cmV0dXJufWNzKEcsVyxiLmxheWVyLGIuY3R0QXV0aEluZm8pO2smJmshPT0iVU5ERUZJTkVEX0NTTiImJnYmJiF3SEMoaykmJihUcShuLmNsaWVudCxrLHYsITApLG4uSi5kZWxldGUoaykpO1c9UzIobixiLmxheWVyfHwwKTtXLmxlbmd0aD4wJiYhV1tXLmxlbmd0aC0xXS5jc24mJihXW1cubGVuZ3RoLTFdLmNzbj1HfHwiIik7Zy5ubCh7Y2xpZW50U2NyZWVuTm9uY2U6R30pO1UzLmluc3RhbmNlfHwoVTMuaW5zdGFuY2U9bmV3IFUzKTtQVihmaSgpLk4pLmJpbmQoZmkoKSkoKTt2YXIgcj13NChiLmxheWVyKTtrJiZrIT09IlVOREVGSU5FRF9DU04iJiZyJiZnLmwoIm11c2ljX3dlYl9tYXJrX3Jvb3RfdmlzaWJsZSIpJiYKRmooRyxyKTtuLk4uZGVsZXRlKGIubGF5ZXJ8fDApO24uaj12b2lkIDA7bi5TJC5nZXQoYi5sYXllcik/LmZvckVhY2goKE4sSCk9PntOP08zKG4sSCxOLGIubGF5ZXIpOnImJk8zKG4sSCxyLGIubGF5ZXIpfSk7CkxEWihuKX07CnhZYj1mdW5jdGlvbihuLFcsRD0wKXtQVigoKT0+e1cudGhlbihiPT57bi5OLmhhcyhEKSYmbi5qJiZuLmooKTt2YXIgdj1nLlJ2KEQpLGs9dzQoRCk7aWYodiYmayl7dmFyIGg9e2F1dG9tYXRlZExvZ0V2ZW50U291cmNlOjN9O2I/LnJlc3BvbnNlPy50cmFja2luZ1BhcmFtcyYmdWcobi5jbGllbnQsdixrLFRVKGIucmVzcG9uc2UudHJhY2tpbmdQYXJhbXMpLCExLGgpO2I/LnBsYXllclJlc3BvbnNlPy50cmFja2luZ1BhcmFtcyYmdWcobi5jbGllbnQsdixrLFRVKGIucGxheWVyUmVzcG9uc2UudHJhY2tpbmdQYXJhbXMpLCExLGgpfX0pfSkoKX07CktpPWZ1bmN0aW9uKG4sVyxELGI9MCx2KXtuLkouaGFzKHYpfHxuLkouc2V0KHYsbmV3IFNldCk7dmFyIGs9RHx8dzQoYik7az1gJHtXLnRvU3RyaW5nKCl9fCR7az9rLnRvU3RyaW5nKCk6IiJ9YDtuLkouZ2V0KHYpLmhhcyhrKXx8KE8zKG4sVyxELGIpLG4uSi5nZXQodikuYWRkKGspKX07Ck8zPWZ1bmN0aW9uKG4sVyxELGI9MCl7cmV0dXJuIFBWKCgpPT57aWYobi5OLmhhcyhiKSlyZXR1cm4gbi5ELnB1c2goW1csRF0pLCEwO3ZhciB2PWcuUnYoYiksaz1EfHx3NChiKTtpZih2JiZrKXtpZihnLmwoImNvbWJpbmVfdmVfZ3JhZnRzIikpe2xldCBoPW4uWC5nZXQoay50b1N0cmluZygpKTtoP2gucHVzaChXKToobi5ZLnNldChrLnRvU3RyaW5nKCksayksbi5YLnNldChrLnRvU3RyaW5nKCksW1ddKSk7bi50d3x8KG4udHc9Zy5jQigwLCgpPT57WnEobix2KX0sMTIwMCkpfWVsc2UgdWcobi5jbGllbnQsdixrLFcpOwpyZXR1cm4hMH1yZXR1cm4hMX0pKCl9OwpnLnlyPWZ1bmN0aW9uKG4pe3ZhciBXPUlmKCk7UFYoKCk9Pnt2YXIgRD1UVShuKSxiPWcuUnYoMCk7YiYmIVcuTi5oYXMoMCk/S2koVyxELHZvaWQgMCwwLGIpOk8zKFcsRCx2b2lkIDAsMCk7cmV0dXJuIER9KSgpfTsKZWp3PWZ1bmN0aW9uKG4pe3ZhciBXPXt2ZVR5cGU6MjUzMjQ2fTtyZXR1cm4gUFYoKCk9PntpZighVy52ZVR5cGUpcmV0dXJuIGcucWcobmV3IGcuUXgoIkVycm9yOiBUcnlpbmcgdG8gZ3JhZnQgYSBjbGllbnQgVkUgd2l0aG91dCBhIHZlVHlwZS4iKSksbnVsbDtpZihXLnZpc2liaWxpdHlUeXBlcyl7dmFyIEQ9Vy52aXNpYmlsaXR5VHlwZXMucmVkdWNlKChiLHYpPT5ifHYpOwpEPXt2aXNpYmlsaXR5Ont0eXBlczpTdHJpbmcoRCl9fX1EPWp5KFcudmVUeXBlLFcudmlzdWFsRWxlbWVudCxXLmVsZW1lbnRJbmRleCxXLmNsaWVudFlvdVR1YmVEYXRhLHZvaWQgMCxEKTtyZXR1cm4gTzMobixEKT9EOm51bGx9KSgpfTsKWnE9ZnVuY3Rpb24obixXKXtpZihXPT09dm9pZCAwKXtsZXQgRD1CZ3IoKTtmb3IobGV0IGI9MDtiPEQubGVuZ3RoO2IrKylEW2JdIT09dm9pZCAwJiZacShuLERbYl0pfWVsc2Ugbi5YLmZvckVhY2goKEQsYik9PnsoYj1uLlkuZ2V0KGIpKSYmaWcobi5jbGllbnQsVyxiLEQpfSksbi5YLmNsZWFyKCksbi5ZLmNsZWFyKCksbi50dz12b2lkIDB9Owpnblo9ZnVuY3Rpb24obixXLEQsYj0wKXtpZighVylyZXR1cm4hMTtiPWcuUnYoYik7aWYoIWIpcmV0dXJuITE7amkobi5jbGllbnQsYixUVShXKSxEKTtyZXR1cm4hMH07ClAkPWZ1bmN0aW9uKG4sVyxELGI9MCl7dmFyIHY9Zy5SdihiKTtXPVd8fHc0KGIpO3YmJlcmJihuPW4uY2xpZW50LGI9UGEoe2N0dEF1dGhJbmZvOlE0KHYpfHx2b2lkIDB9LHYpLEQ9e2Nzbjp2LHZlOlcuZ2V0QXNKc29uKCksY2xpZW50RGF0YTpEfSx2PT09IlVOREVGSU5FRF9DU04iP3pxKCJ2aXN1YWxFbGVtZW50U3RhdGVDaGFuZ2VkIixiLEQpOm4/dVIoInZpc3VhbEVsZW1lbnRTdGF0ZUNoYW5nZWQiLEQsbixiKTpnLnpVKCJ2aXN1YWxFbGVtZW50U3RhdGVDaGFuZ2VkIixELGIpKX07CkxEWj1mdW5jdGlvbihuKXtmb3IodmFyIFc9MDtXPG4uVi5sZW5ndGg7VysrKXt2YXIgRD1uLlZbV107dHJ5e0QoKX1jYXRjaChiKXtnLlhqKGIpfX1uLlYubGVuZ3RoPTA7Zm9yKFc9MDtXPG4uY0oubGVuZ3RoO1crKyl7RD1uLmNKW1ddO3RyeXtEKCl9Y2F0Y2goYil7Zy5YaihiKX19fTsKaVo9ZnVuY3Rpb24oKXtFMy5pbnN0YW5jZXx8KEUzLmluc3RhbmNlPW5ldyBFMyk7cmV0dXJuIEUzLmluc3RhbmNlfTsKWE9iPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uZXcgWE1MSHR0cFJlcXVlc3Q7RD8ubGcmJihiLm9ucmVhZHlzdGF0ZWNoYW5nZT12PT57RC5sZyhiLHYpfSk7CmIub3BlbihXLm1ldGhvZD8/IkdFVCIsbiwhMCk7Yi5yZXNwb25zZVR5cGU9InRleHQiO2Iud2l0aENyZWRlbnRpYWxzPSEwO2lmKFcuaGVhZGVycylmb3IobGV0IFt2LGtdb2YgT2JqZWN0LmVudHJpZXMoVy5oZWFkZXJzKSliLnNldFJlcXVlc3RIZWFkZXIodixrKTtyZXR1cm4gYn07CnFmUz1mdW5jdGlvbigpe3ZhciBuPW5hdmlnYXRvcjtyZXR1cm4gbmV3IFByb21pc2UoKFcsRCk9PntuLndlYmtpdFRlbXBvcmFyeVN0b3JhZ2U/LnF1ZXJ5VXNhZ2VBbmRRdW90YT9uLndlYmtpdFRlbXBvcmFyeVN0b3JhZ2UucXVlcnlVc2FnZUFuZFF1b3RhKChiLHYpPT57Vyh7dXNhZ2U6YixxdW90YTp2fSl9LGI9PntEKGIpfSk6RChFcnJvcigid2Via2l0VGVtcG9yYXJ5U3RvcmFnZSBpcyBub3Qgc3VwcG9ydGVkLiIpKX0pfTsKdDZDPWZ1bmN0aW9uKG4sVyl7R3ZVKG4ucHJvZ3JhbSxXLkQzKSYmKGcuZ18oImJnX2kiLHZvaWQgMCwicGxheWVyX2F0dCIpLGcudVouaW5pdGlhbGl6ZShuLCgpPT57Zy5nXygiYmdfbCIsdm9pZCAwLCJwbGF5ZXJfYXR0Iik7b2Y9KDAsZy5SKSgpfSxXLmNzcE5vbmNlLFcuRGEpKX07CnZhciAkWWo9ZnVuY3Rpb24oKXtyZXR1cm4gSjRbSVsxMF1dKHRoaXMsMTYsNDYyNil9OwpyOVM9ZnVuY3Rpb24obj17fSl7cmV0dXJuIGcudVouaW52b2tlKG4pfTsKR3ZVPWZ1bmN0aW9uKG4sVyl7aWYobil7dmFyIEQ7Zy51Wi5pc0xvYWRpbmcoKT9EPSExOkQ9IW9mfHwoMCxnLlIpKCktb2Y+VztuPUR9ZWxzZSBuPSExO3JldHVybiBufTsKc18yPWZ1bmN0aW9uKG4sVyl7aWYoVy5wYXJ0bmVySWQ9PT0zOCYmbi5wbGF5ZXJTdHlsZT09PSJib29rcyIpe3ZhciBEPVcudmlkZW9JZC5pbmRleE9mKCI6Iik7bj1XLnZpZGVvSWQuc2xpY2UoMCxEKTtEPVcudmlkZW9JZC5zbGljZShEKzEpO3JldHVybiBnLkVUKGAvL3BsYXkuZ29vZ2xlLmNvbS9ib29rcy92b2x1bWVzLyR7bn0vY29udGVudC9tZWRpYWAse2FpZDpELHNpZzpXLnlkfSl9aWYoVy5wYXJ0bmVySWQ9PT0zMCYmbi5wbGF5ZXJTdHlsZT09PSJkb2NzIilyZXR1cm4gZy5FVCgiaHR0cHM6Ly9kb2NzLmdvb2dsZS5jb20vZ2V0X3ZpZGVvX2luZm8iLHtkb2NpZDpXLnZpZGVvSWQsYXV0aHVzZXI6Vy5rcCxhdXRoa2V5OlcudkYsZXVybDpuLlFyfSk7aWYoVy5wYXJ0bmVySWQ9PT0zMyYmbi5wbGF5ZXJTdHlsZT09PSJnb29nbGUtbGl2ZSIpcmV0dXJuIGcuRVQoIi8vZ29vZ2xlLWxpdmVwbGF5ZXIuYXBwc3BvdC5jb20vZ2V0X3ZpZGVvX2luZm8iLHtrZXk6Vy52aWRlb0lkfSk7CnRocm93IEVycm9yKCJnZXRWaWRlb0luZm9VcmwgZm9yIGludmFsaWQgbmFtZXNwYWNlOiAiK24uVik7fTsKTlFpPWZ1bmN0aW9uKG4pe3ZhciBXPXt9O24uY0wmJihXLnl0cmV4dD1uLmNMKTtyZXR1cm4gZy5HRihXKT92b2lkIDA6V307CmcuekM9ZnVuY3Rpb24obixXKXt0NkMobix7RDM6Zy5kTShXLmV4cGVyaW1lbnRzLCJiZ192bV9yZWluaXRfdGhyZXNob2xkIiksY3NwTm9uY2U6Vy5jc3BOb25jZSxEYTpXLkRhfHwiIn0pfTsKZy5sWj1mdW5jdGlvbihuKXtpZihuLnZpZGVvRGF0YSYmbi52aWRlb0RhdGEucEspe2xldCBXPVtuLnZpZGVvRGF0YS5wS107Zm9yKGxldCBEIG9mIE9iamVjdC5rZXlzKG4uTikpaWYobi5SUltEXSYmbi5OW0RdKXtsZXQgYj1uLk5bRF0obi5SUik7YiYmVy5wdXNoKGIpfXJldHVybiBXLmpvaW4oIiYiKX1yZXR1cm4gbnVsbH07CmcuVEM9ZnVuY3Rpb24obil7dmFyIFc9W107aWYobilmb3IobGV0IFtiLHZdb2YgT2JqZWN0LmVudHJpZXMobikpe249Yjt2YXIgRD12O2lmKEQ9PT12b2lkIDApY29udGludWU7RD10eXBlb2YgRD09PSJib29sZWFuIj9gJHsrRH1gOmAke0R9YC5yZXBsYWNlKC9bOiw9XS9nLCJfIik7Vy5wdXNoKGAke259LiR7RH1gKX1yZXR1cm4gVy5qb2luKCI7Iil9OwpqMj1mdW5jdGlvbihuKXtyZXR1cm4gbj09PTF8fG49PT0yfTsKQiQ9ZnVuY3Rpb24obixXPTApe2lmKG4gaW5zdGFuY2VvZiBnLkNpKXJldHVybiBuO249biYmbiBpbnN0YW5jZW9mIEVycm9yP246RXJyb3IoYCR7bn1gKTtqMihXKT9nLlhqKG4pOmcuR3Eobik7cmV0dXJuIG5ldyBnLkNpKFc9PT0xPyJwbGF5ZXIuZmF0YWxleGNlcHRpb24iOiJwbGF5ZXIuZXhjZXB0aW9uIix7bmFtZTpgJHtuLm5hbWV9YCxtZXNzYWdlOmAke24ubWVzc2FnZX1gfSxXKX07Ckg4cj1mdW5jdGlvbihuLFcpe1FBKG4sMixXLkNuLEZHLDMpO1FBKG4sMyxXLmlubmVydHViZVJlcXVlc3QscE9pLDMpO2cuRmEobiw0LFcub25lc2llVXN0cmVhbWVyQ29uZmlnKTtnLkZhKG4sOSxXLkJ4KTtRQShuLDEwLFcubUgsd00sMyk7UUEobiwxNSxXLnJlbG9hZFBsYXliYWNrUGFyYW1zLFlmaSwzKTtnLlJ3KG4sMTgsVy5Vayl9OwpRcj1mdW5jdGlvbihuLFcpe1FBKG4sMSxXLmZvcm1hdElkLE00LDMpO0NSKG4sMixXLnN0YXJ0VGltZU1zKTtDUihuLDMsVy5kdXJhdGlvbk1zKTtDUihuLDQsVy5BQyk7Q1Iobiw1LFcuaTkpO1FBKG4sOSxXLmo2LGY4QywzKTtRQShuLDExLFcuQUYsUmYsMSk7UUEobiwxMixXLkVqLFJmLDEpfTsKSjliPWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy52aWRlb0lkKTtDUihuLDIsVy5sbXQpfTsKZjhDPWZ1bmN0aW9uKG4sVyl7aWYoVy5Geilmb3IobGV0IEQ9MDtEPFcuRnoubGVuZ3RoO0QrKylRQShuLDEsVy5GeltEXSxKOWIsMyl9OwpNND1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLml0YWcpO0NSKG4sMixXLmxtdCk7Zy5SdyhuLDMsVy54dGFncyl9OwpWcj1mdW5jdGlvbihuKXtyZXR1cm57aXRhZzpQRyhuLDEpLGxtdDpQRyhuLDIpLHh0YWdzOkV4KG4sMyl9fTsKUmY9ZnVuY3Rpb24obixXKXtDUihuLDEsVy5zdGFydFRpY2tzKTtDUihuLDIsVy5sOCk7Q1IobiwzLFcudGltZXNjYWxlKX07CmMkPWZ1bmN0aW9uKG4pe3JldHVybntzdGFydFRpY2tzOlBHKG4sMSksbDg6UEcobiwyKSx0aW1lc2NhbGU6UEcobiwzKX19OwpJOGo9ZnVuY3Rpb24obixXKXtDUihuLDEsVy5kZWZhdWx0UG9saWN5KTtDUihuLDIsVy5zbW9vdGgpO0NSKG4sMyxXLnZpc2liaWxpdHkpO0NSKG4sNCxXLk9iKTtDUihuLDUsVy5wZXJmb3JtYW5jZSk7Q1Iobiw2LFcuc3BlZWQpfTsKQTlTPWZ1bmN0aW9uKG4sVyl7aWYoVy5hdXRob3JpemVkRm9ybWF0cylmb3IobGV0IEQ9MDtEPFcuYXV0aG9yaXplZEZvcm1hdHMubGVuZ3RoO0QrKylRQShuLDEsVy5hdXRob3JpemVkRm9ybWF0c1tEXSxTZmosMSk7Zy5GYShuLDIsVy5zYWJyTGljZW5zZUNvbnN0cmFpbnQpfTsKU2ZqPWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcudHJhY2tUeXBlKTtCRyhuLDIsVy5pc0hkcil9OwpGRz1mdW5jdGlvbihuLFcpe0NSKG4sMTMsVy50aW1lU2luY2VMYXN0TWFudWFsRm9ybWF0U2VsZWN0aW9uTXMpO3ZhciBEPVcubGFzdE1hbnVhbERpcmVjdGlvbjtEIT09dm9pZCAwJiYoajUobiwxMTIpLGo1KG4sRDw8MV5EPj4zMSkpO0NSKG4sMTYsVy5pSCk7Q1IobiwxNyxXLmRldGFpbGVkTmV0d29ya1R5cGUpO0NSKG4sMTgsVy5zQSk7Q1IobiwxOSxXLllBKTtDUihuLDIxLFcuVE4pO0NSKG4sMjMsVy5JJCk7Q1IobiwyOCxXLm5SKTtDUihuLDI5LFcubHEpO0NSKG4sMzQsVy52aXNpYmlsaXR5KTtEPVcucGxheWJhY2tSYXRlO2lmKEQhPT12b2lkIDApe3ZhciBiPW5ldyBBcnJheUJ1ZmZlcig0KTsobmV3IEZsb2F0MzJBcnJheShiKSlbMF09RDtEPShuZXcgVWludDMyQXJyYXkoYikpWzBdO2lmKEQhPT12b2lkIDApZm9yKGo1KG4sMjg1KSxUNihuLDQpLGI9MDtiPDQ7KW4udmlldy5zZXRVaW50OChuLnBvcyxEJjI1NSksRD4+PTgsbi5wb3MrPTEsYis9MX1DUihuLDM2LFcuZnEpOwpRQShuLDM4LFcubWVkaWFDYXBhYmlsaXRpZXMsbVl3LDMpO0NSKG4sMzksVy5aSSk7Q1Iobiw0MCxXLllmKTtDUihuLDQ0LFcucGxheWVyU3RhdGUpO0JHKG4sNDYsVy5FYik7Q1Iobiw0OCxXLmo0KTtDUihuLDUwLFcua0UpO0NSKG4sNTEsVy5VbSk7Q1Iobiw1NCxXLkc3KTtpZihXLnlLKWZvcihEPTA7RDxXLnlLLmxlbmd0aDtEKyspQ1Iobiw1NSxXLnlLW0RdKTtCRyhuLDU2LFcuWkMpO0NSKG4sNTcsVy5YRCk7Qkcobiw1OCxXLmJ2KTtDUihuLDU5LFcublMpO0NSKG4sNjAsVy5HRik7Qkcobiw2MSxXLmlzUHJlZmV0Y2gpO0NSKG4sNjIsVy5TZik7Zy5GYShuLDYzLFcuc2FickxpY2Vuc2VDb25zdHJhaW50KTtDUihuLDY0LFcuazgpO0NSKG4sNjYsVy5WWCk7Q1Iobiw2NyxXLkJaKTtDUihuLDY4LFcucDYpO2cuUncobiw2OSxXLmF1ZGlvVHJhY2tJZCk7Qkcobiw3MSxXLnIwKTtRQShuLDcyLFcuTk8sSThqLDEpO0NSKG4sNzMsVy5pQik7Q1Iobiw3NCxXLllzKTtDUihuLDc1LFcuZXEpOwpDUihuLDc2LFcucU0pO1FBKG4sNzksVy5rYyxBOVMsMyk7Q1Iobiw4MCxXLkokKTtCRyhuLDg1LFcudXEpfTsKbVl3PWZ1bmN0aW9uKG4sVyl7aWYoVy52aWRlb0Zvcm1hdENhcGFiaWxpdGllcylmb3IodmFyIEQ9MDtEPFcudmlkZW9Gb3JtYXRDYXBhYmlsaXRpZXMubGVuZ3RoO0QrKylRQShuLDEsVy52aWRlb0Zvcm1hdENhcGFiaWxpdGllc1tEXSxLRDEsMSk7aWYoVy5hdWRpb0Zvcm1hdENhcGFiaWxpdGllcylmb3IoRD0wO0Q8Vy5hdWRpb0Zvcm1hdENhcGFiaWxpdGllcy5sZW5ndGg7RCsrKVFBKG4sMixXLmF1ZGlvRm9ybWF0Q2FwYWJpbGl0aWVzW0RdLE84TSwxKTtRQShuLDQsVy5wZXJQbGF5YmFja0F0dHJpYnV0ZXMsUDZTLDMpO0NSKG4sNSxXLmhkck1vZGVCaXRtYXNrKX07CnZhciBaODE9ZnVuY3Rpb24oKXtyZXR1cm4gZzdbSVsxMF1dKHRoaXMsNDEsODk3NSl9Owp2YXIgS0QxPWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcudmlkZW9Db2RlYyk7QkcobiwyLFcuZWZmaWNpZW50KTtDUihuLDMsVy5tYXhIZWlnaHQpO0NSKG4sNCxXLm1heFdpZHRoKTtDUihuLDExLFcubWF4RnJhbWVyYXRlKTtDUihuLDEyLFcubWF4Qml0cmF0ZUJwcyk7QkcobiwxNSxXLmlzMTBCaXRTdXBwb3J0ZWQpfSxPOE09ZnVuY3Rpb24obixXKXtDUihuLDEsVy5hdWRpb0NvZGVjKTsKQ1IobiwyLFcubnVtQ2hhbm5lbHMpO0NSKG4sMyxXLm1heEJpdHJhdGVCcHMpO0NSKG4sNixXLnNwYXRpYWxDYXBhYmlsaXR5Qml0bWFzayl9Owp2YXIgVVloPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFAwW0lbMTBdXSh0aGlzLDUxLDIyNDksbixXKX07ClA2Uz1mdW5jdGlvbihuLFcpe2lmKFcuaXRhZ0RlbnlsaXN0KWZvcihsZXQgRD0wO0Q8Vy5pdGFnRGVueWxpc3QubGVuZ3RoO0QrKylDUihuLDEsVy5pdGFnRGVueWxpc3RbRF0pfTsKd009ZnVuY3Rpb24obixXKXtRQShuLDEsVy5jbGllbnRJbmZvLHk5dCwzKTtnLkZhKG4sMixXLmROKTtnLkZhKG4sMyxXLnBsYXliYWNrQ29va2llKTtnLkZhKG4sNCxXLkJ4KTtpZihXLnJxKWZvcih2YXIgRD0wO0Q8Vy5ycS5sZW5ndGg7RCsrKVFBKG4sNSxXLnJxW0RdLEVuMiwzKTtpZihXLnV0KWZvcihEPTA7RDxXLnV0Lmxlbmd0aDtEKyspQ1Iobiw2LFcudXRbRF0pO2cuUncobiw3LFcucEcpO1FBKG4sOCxXLnEkLGk4VSwzKX07CnVmTT1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLlN6KTtDUihuLDIsVy5SNyl9OwpvbnI9ZnVuY3Rpb24obixXKXt2YXIgRD1XLmNvZGU7RCE9PXZvaWQgMCYmKGo1KG4sOCksajUobixEPDwxXkQ+PjMxKSk7Zy5SdyhuLDIsVy5tZXNzYWdlKX07CmRZTT1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLmNsaWVudFN0YXRlKTtRQShuLDIsVy5adSx1Zk0sMSl9OwppOFU9ZnVuY3Rpb24obixXKXtnLkZhKG4sMSxXLll0KTtRQShuLDIsVy5TaixvbnIsMyk7UUEobiwzLFcuY29sZFN0YXJ0SW5mbyxkWU0sMyl9OwpFbjI9ZnVuY3Rpb24obixXKXtDUihuLDEsVy50eXBlKTtnLkZhKG4sMixXLnZhbHVlKX07Cnk5dD1mdW5jdGlvbihuLFcpe2cuUncobiwxLFcuaGwpO2cuUncobiwxMixXLmRldmljZU1ha2UpO2cuUncobiwxMyxXLmRldmljZU1vZGVsKTtDUihuLDE2LFcuY2xpZW50TmFtZSk7Zy5SdyhuLDE3LFcuY2xpZW50VmVyc2lvbik7Zy5SdyhuLDE4LFcub3NOYW1lKTtnLlJ3KG4sMTksVy5vc1ZlcnNpb24pfTsKemoxPWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy5uYW1lKTtnLlJ3KG4sMixXLnZhbHVlKX07CmFmPWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy51cmwpO2lmKFcuZTMpZm9yKGxldCBEPTA7RDxXLmUzLmxlbmd0aDtEKyspUUEobiwyLFcuZTNbRF0semoxLDMpO2cuRmEobiwzLFcucG9zdEJvZHkpO0JHKG4sNCxXLkVhKTtCRyhuLDYsVy5lOCl9OwpwT2k9ZnVuY3Rpb24obixXKXtnLkZhKG4sMixXLnZVKTtnLkZhKG4sNSxXLmVuY3J5cHRlZENsaWVudEtleSk7Zy5GYShuLDYsVy5pdik7Zy5GYShuLDcsVy5kZik7QkcobiwxMCxXLm13KTtCRyhuLDEzLFcuRkQpO0JHKG4sMTQsVy5EWSk7Zy5GYShuLDE2LFcud1MpO0JHKG4sMTcsVy55Sil9OwpsOHQ9ZnVuY3Rpb24obil7cmV0dXJue1dzOlBHKG4sMSksaHR0cFN0YXR1czpQRyhuLDIpLGJvZHk6eUEobiw0KX19OwpZZmk9ZnVuY3Rpb24obixXKXtnLlJ3KG4sMSxXLnRva2VuKX07ClRRTT1mdW5jdGlvbihuKXtyZXR1cm57dG9rZW46RXgobiwxKX19OwpqX1U9ZnVuY3Rpb24obil7Zm9yKHZhciBXPVtdLEQ7RD1FeChuLDEpOylXLnB1c2goRCk7cmV0dXJue3VybDpXLmxlbmd0aD9XOnZvaWQgMH19OwpuNz1mdW5jdGlvbihuKXtyZXR1cm57QWg6UEcobiwxKSx2eTpQRyhuLDIpfX07CkZEYj1mdW5jdGlvbihuLFcpe1FBKG4sMSxXLkNuLEZHLDMpO2lmKFcuY0UpZm9yKHZhciBEPTA7RDxXLmNFLmxlbmd0aDtEKyspUUEobiwyLFcuY0VbRF0sTTQsMyk7aWYoVy5lVylmb3IoRD0wO0Q8Vy5lVy5sZW5ndGg7RCsrKVFBKG4sMyxXLmVXW0RdLFFyLDMpO2cuRmEobiw1LFcudmlkZW9QbGF5YmFja1VzdHJlYW1lckNvbmZpZyk7aWYoVy5CaSlmb3IoRD0wO0Q8Vy5CaS5sZW5ndGg7RCsrKVFBKG4sNixXLkJpW0RdLEM2VSwzKTtpZihXLkdoKWZvcihEPTA7RDxXLkdoLmxlbmd0aDtEKyspUUEobiwxNixXLkdoW0RdLE00LDMpO2lmKFcuTSQpZm9yKEQ9MDtEPFcuTSQubGVuZ3RoO0QrKylRQShuLDE3LFcuTSRbRF0sTTQsMyk7aWYoVy5Fdilmb3IoRD0wO0Q8Vy5Fdi5sZW5ndGg7RCsrKVFBKG4sMTgsVy5FdltEXSxNNCwzKTtRQShuLDE5LFcubUgsd00sMyk7UUEobiwyMSxXLk15LFduLDMpO0NSKG4sMjIsVy51TSk7Q1IobiwyMyxXLnJHKTtpZihXLmJLKWZvcihEPTA7RDxXLmJLLmxlbmd0aDtEKyspUUEobiwKMjQsVy5iS1tEXSxXbiwzKTtnLkZhKG4sMjUsVy5kUyk7aWYoVy5qcilmb3IoRD0wO0Q8Vy5qci5sZW5ndGg7RCsrKVFBKG4sMUUzLFcuanJbRF0sQlF3LDMpfTsKQzZVPWZ1bmN0aW9uKG4sVyl7UUEobiwxLFcuZm9ybWF0SWQsTTQsMyk7Q1IobiwyLFcudkQpO0NSKG4sMyxXLnNlcXVlbmNlTnVtYmVyKTtRQShuLDQsVy5oeCxSZiwxKTtDUihuLDUsVy5TMCk7Q1Iobiw2LFcudTMpfTsKV249ZnVuY3Rpb24obixXKXtpZihXLmFEKWZvcihsZXQgRD0wO0Q8Vy5hRC5sZW5ndGg7RCsrKWcuUncobiwxLFcuYURbRF0pO2cuRmEobiwyLFcuYWRzQ29uZmlnKTtnLlJ3KG4sMyxXLkJmKTtDUihuLDQsVy5ESik7Q1Iobiw1LFcub3YpO2cuUncobiw2LFcuZDMpO2cuUncobiw3LFcuY3VlcG9pbnRJZCk7Q1Iobiw4LFcuczEpO2cuUncobiw5LFcudGlsZUNvbnRleHQpO0NSKG4sMTAsVy5zdGFydFRpbWVNcyk7Q1IobiwxMSxXLmR1cmF0aW9uTXMpfTsKQlF3PWZ1bmN0aW9uKG4sVyl7aWYoVy5jRSlmb3IodmFyIEQ9MDtEPFcuY0UubGVuZ3RoO0QrKylRQShuLDEsVy5jRVtEXSxNNCwzKTtpZihXLmVXKWZvcihEPTA7RDxXLmVXLmxlbmd0aDtEKyspUUEobiwyLFcuZVdbRF0sUXIsMyk7Zy5SdyhuLDMsVy5jbGlwSWQpfTsKZy5EVT1mdW5jdGlvbihuLFcpe1FBKG4sMSxXLkNuLEZHLDMpO2cuRmEobiwzLFcudmlkZW9QbGF5YmFja1VzdHJlYW1lckNvbmZpZyk7UUEobiw1LFcubUgsd00sMyk7UUEobiw2LFcuTXksV24sMyl9Owp3T1o9ZnVuY3Rpb24obil7cmV0dXJue3R5cGU6UEcobiwxKX19OwpSalU9ZnVuY3Rpb24obixXKXtpZihXLk8zKWZvcihsZXQgRD0wO0Q8Vy5PMy5sZW5ndGg7RCsrKVFBKG4sMSxXLk8zW0RdLE02VSwzKX07ClFfMT1mdW5jdGlvbihuLFcpe1FBKG4sMTA0NyxXLmJMLFJqVSwzKX07Ck02VT1mdW5jdGlvbihuLFcpe2lmKFcualYpZm9yKHZhciBEPTA7RDxXLmpWLmxlbmd0aDtEKyspZy5GYShuLDEsVy5qVltEXSk7aWYoVy5yWClmb3IoRD0wO0Q8Vy5yWC5sZW5ndGg7RCsrKWcuRmEobiwyLFcuclhbRF0pfTsKbnl3PWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy5jcG4pO0NSKG4sMixXLnNlcXVlbmNlTnVtYmVyKTtnLlJ3KG4sMyxXLnNlcmlhbGl6ZWRXYXRjaEVuZHBvaW50TG9nZ2luZ0NvbnRleHQpO2lmKFcuZGVjb2RlckluZm8pZm9yKHZhciBEPTA7RDxXLmRlY29kZXJJbmZvLmxlbmd0aDtEKyspUUEobiw2LFcuZGVjb2RlckluZm9bRF0sVjZyLDMpO2cuUncobiw5LFcucGxheWVyUmVzcG9uc2VDcG4pO0NSKG4sMTAsVy50cmFuc2l0aW9uU3RpdGNoVHlwZSk7Zy5SdyhuLDExLFcucW9lUGluZ1VybCk7Q1IobiwxMixXLnRpbWVzdGFtcE9mZnNldE1zZWNzKTtDUihuLDE1LFcucmVtb3RlQ29udHJvbE1vZGUpO2lmKFcucmVtb3RlQ29ubmVjdGVkRGV2aWNlcylmb3IoRD0wO0Q8Vy5yZW1vdGVDb25uZWN0ZWREZXZpY2VzLmxlbmd0aDtEKyspUUEobiwxNixXLnJlbW90ZUNvbm5lY3RlZERldmljZXNbRF0sYzlNLDMpO2cuRmEobiwxNyxXLnNlcmlhbGl6ZWRIb3VzZUJyYW5kUGxheWVyU2VydmljZUxvZ2dpbmdDb250ZXh0KTsKaWYoVy5zZXJpYWxpemVkUW9lQ29udGV4dERhdGEpZm9yKEQ9MDtEPFcuc2VyaWFsaXplZFFvZUNvbnRleHREYXRhLmxlbmd0aDtEKyspZy5GYShuLDE5LFcuc2VyaWFsaXplZFFvZUNvbnRleHREYXRhW0RdKTtpZihXLmRhaUN1ZVBvaW50RXZlbnRzKWZvcihEPTA7RDxXLmRhaUN1ZVBvaW50RXZlbnRzLmxlbmd0aDtEKyspUUEobiwyMCxXLmRhaUN1ZVBvaW50RXZlbnRzW0RdLGE4MiwzKTtpZihXLnNlcmlhbGl6ZWRPbmVUaW1lUW9lQ29udGV4dERhdGEpZm9yKEQ9MDtEPFcuc2VyaWFsaXplZE9uZVRpbWVRb2VDb250ZXh0RGF0YS5sZW5ndGg7RCsrKWcuRmEobiwyMSxXLnNlcmlhbGl6ZWRPbmVUaW1lUW9lQ29udGV4dERhdGFbRF0pfTsKV0JqPWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy5pZGVudGlmaWVyKTtnLlJ3KG4sMixXLnRpbGVDb250ZXh0KX07Cmcudm49ZnVuY3Rpb24obil7dmFyIFc9e25zOm4uUmEsZWw6bi5ldmVudExhYmVsLGNwbjpuLmNsaWVudFBsYXliYWNrTm9uY2UsdmVyOjIsY210Om4uSihuLk4pLGZtdDpuLnZpZGVvRm9ybWF0LGZzOm4ualc/IjEiOiIwIixydDpuLkoobi53YSksYWRmb3JtYXQ6bi5hZEZvcm1hdCxjb250ZW50X3Y6bi5jb250ZW50VmlkZW9JZCxldXJpOm4uTWQsbGFjdDpuLk5kLGxpdmU6bi5UUSxjbDooOTUxNzc5MTA0KS50b1N0cmluZygpLG1vczpuLlJ0LHN0YXRlOm4ucGxheWVyU3RhdGUsdm9sdW1lOm4uZ1R9O24uc3Vic2NyaWJlZCYmKFcuc3Vic2NyaWJlZD0iMSIpO09iamVjdC5hc3NpZ24oVyxuLlkkKTtuLkQ9PT0iYWxsIj9PYmplY3QuYXNzaWduKFcsbi55RSk6bi5EPT09Im9uY2UiJiZuLlcmJk9iamVjdC5hc3NpZ24oVyxuLnlFKTtuLmF1dG9wbGF5JiYoVy5hdXRvcGxheT0iMSIpO24uTEImJihXLnNhdXRvcGxheT0iMSIpO24uQ3UmJihXLmRuaT0iMSIpOyFuLlgmJm4uSEomJihXLmVwbT0KRGMxW24uSEpdKTtuLmlzRmluYWwmJihXWyJmaW5hbCJdPSIxIik7bi5udSYmKFcuc3BsYXk9IjEiKTtuLm9EJiYoVy5kZWxheT1uLm9EKTtuLkR0JiYoVy5obD1uLkR0KTtuLnJlZ2lvbiYmKFcuY3I9bi5yZWdpb24pO24udXNlckdlbmRlckFnZSYmKFcudWdhPW4udXNlckdlbmRlckFnZSk7bi51c2VyQWdlIT09dm9pZCAwJiZuLkdDJiYoVy51Z2E9bi5HQytuLnVzZXJBZ2UpO24uZSQhPT12b2lkIDAmJihXLmxlbj1uLkoobi5lJCkpOyghbi5YfHxuLkJWKSYmbi5leHBlcmltZW50SWRzLmxlbmd0aD4wJiYoVy5mZXhwPW4uZXhwZXJpbWVudElkcy50b1N0cmluZygpKTtuLkshPT1udWxsJiYoVy5ydG49bi5KKG4uSykpO24uUzkmJihXLmZlYXR1cmU9bi5TOSk7bi5pNSYmKFcuY3RybD1uLmk1KTtuLlVLJiYoVy55dHI9bi5VSyk7bi52SiYmKFcuYWZtdD1uLnZKKTtuLm9mZmxpbmVEb3dubG9hZFVzZXJDaG9pY2UmJihXLk9EVUM9bi5vZmZsaW5lRG93bmxvYWRVc2VyQ2hvaWNlKTtuLlkmJgooVy5saW89bi5KKG4uWSkpO24uWD8oVy5pZHBqPW4uRTUsVy5sZHBqPW4uUXIsbi5kZWxheVRocmVzaG9sZE1ldCYmKFcuZHRtPSIxIiksbi5PIT1udWxsJiYoVy5ydGk9bi5KKG4uTykpLG4uRkwmJihXLmFsZD1uLkZMKSxuLmNvbXBvc2l0ZUxpdmVJbmdlc3Rpb25PZmZzZXRUb2tlbiYmKFcuY2xpbz1uLmNvbXBvc2l0ZUxpdmVJbmdlc3Rpb25PZmZzZXRUb2tlbikpOm4uYWRUeXBlIT09dm9pZCAwJiYoVy5hdD1uLmFkVHlwZSk7bi5mQiYmKG4uV3x8bi5YKSYmKFcuc2l6ZT1uLmZCKTtuLlcmJm4uVi5sZW5ndGgmJihXLnBic3R5bGU9bi5WLmpvaW4oIiwiKSk7bi5IRCE9bnVsbCYmKG4uV3x8bi5YKSYmKFcuaW52aWV3PW4uSihuLkhEKSk7bi5oZWFydGJlYXRMb2dnaW5nVG9rZW4mJihXLmhiX2RhdGE9bi5oZWFydGJlYXRMb2dnaW5nVG9rZW4pO24uWCYmKFcudm9sdW1lPWJKKG4sZy5pXyhuLnNlZ21lbnRzLEQ9PkQudm9sdW1lKSksVy5zdD1iSihuLGcuaV8obi5zZWdtZW50cywKRD0+RC5zdGFydFRpbWUpKSxXLmV0PWJKKG4sZy5pXyhuLnNlZ21lbnRzLEQ9PkQuZW5kVGltZSkpLGcub00obi5zZWdtZW50cyxEPT5ELnBsYXliYWNrUmF0ZSE9PTEpJiYoVy5yYXRlPWJKKG4sZy5pXyhuLnNlZ21lbnRzLEQ9PkQucGxheWJhY2tSYXRlKSkpLGcub00obi5zZWdtZW50cyxEPT5ELk4hPT0iLSIpJiYoVy5hbHM9Zy5pXyhuLnNlZ21lbnRzLEQ9PkQuTikuam9pbigiLCIpKSxnLm9NKG4uc2VnbWVudHMsRD0+RC5wcmV2aW91c2x5RW5kZWQpJiYoVy5wZT1nLmlfKG4uc2VnbWVudHMsRD0+YCR7K0QucHJldmlvdXNseUVuZGVkfWApLmpvaW4oIiwiKSkpOwpXLm11dGVkPWJKKG4sZy5pXyhuLnNlZ21lbnRzLEQ9PkQubXV0ZWQ/MTowKSk7Cmcub00obi5zZWdtZW50cyxEPT5ELnZpc2liaWxpdHlTdGF0ZSE9PTApJiYoVy52aXM9YkoobixnLmlfKG4uc2VnbWVudHMsRD0+RC52aXNpYmlsaXR5U3RhdGUpKSk7Cmcub00obi5zZWdtZW50cyxEPT5ELmNvbm5lY3Rpb25UeXBlIT09MCkmJihXLmNvbm49YkoobixnLmlfKG4uc2VnbWVudHMsRD0+RC5jb25uZWN0aW9uVHlwZSkpKTsKZy5vTShuLnNlZ21lbnRzLEQ9PkQuVyE9PTApJiYoVy5ibG89YkoobixnLmlfKG4uc2VnbWVudHMsRD0+RC5XKSkpOwpnLm9NKG4uc2VnbWVudHMsRD0+ISFELmopJiYoVy5ibG89Zy5pXyhuLnNlZ21lbnRzLEQ9PkQuaikuam9pbigiLCIpKTsKZy5vTShuLnNlZ21lbnRzLEQ9PiEhRC5jb21wb3NpdGVMaXZlU3RhdHVzVG9rZW4pJiYoVy5jYnM9Zy5pXyhuLnNlZ21lbnRzLEQ9PkQuY29tcG9zaXRlTGl2ZVN0YXR1c1Rva2VuKS5qb2luKCIsIikpOwpnLm9NKG4uc2VnbWVudHMsRD0+RC5KIT09Ii0iKSYmKFcuY2M9Zy5pXyhuLnNlZ21lbnRzLEQ9PkQuSikuam9pbigiLCIpKTsKZy5vTShuLnNlZ21lbnRzLEQ9PkQuY2xpcElkIT09Ii0iKSYmKFcuY2xpcGlkPWcuaV8obi5zZWdtZW50cyxEPT5ELmNsaXBJZCkuam9pbigiLCIpKTsKaWYoZy5vTShuLnNlZ21lbnRzLEQ9PiEhRC5hdWRpb0lkKSl7bGV0IEQ9ImF1IjsKbi5XJiYoRD0iYXVfZCIpO1dbRF09Zy5pXyhuLnNlZ21lbnRzLGI9PmIuYXVkaW9JZCkuam9pbigiLCIpfWcuakgoKSYmbi50dyYmKFcuY3R0PW4udHcsVy5jdHR5cGU9bi5QWCxXLm1keF9lbnZpcm9ubWVudD1uLm1keEVudmlyb25tZW50KTsKbi55dyYmKFcuZXR5cGU9bi5iZCE9PXZvaWQgMD9uLmJkOjApO24uRkYmJihXLnVvbz1uLkZGKTtuLmxpdmluZ1Jvb21BcHBNb2RlJiZuLmxpdmluZ1Jvb21BcHBNb2RlIT09IkxJVklOR19ST09NX0FQUF9NT0RFX1VOU1BFQ0lGSUVEIiYmKFcuY2xyYW09YlR3W24ubGl2aW5nUm9vbUFwcE1vZGVdfHxuLmxpdmluZ1Jvb21BcHBNb2RlKTtuLmo/dnlNKG4sVyk6KFcuZG9jaWQ9bi52aWRlb0lkLFcucmVmZXJyZXI9bi5yZWZlcnJlcixXLmVpPW4uZXZlbnRJZCxXLm9mPW4uUkgsVy5vc2lkPW4ub3NpZCxXLnZtPW4udmlkZW9NZXRhZGF0YSxuLmFkUXVlcnlJZCYmKFcuYXFpPW4uYWRRdWVyeUlkKSxuLmF1dG9uYXYmJihXLmF1dG9uYXY9IjEiKSxuLnBsYXlsaXN0SWQmJihXLmxpc3Q9bi5wbGF5bGlzdElkKSxuLkFSJiYoVy5zc3J0PSIxIiksbi5IcSYmKFcudXB0PW4uSHEpKTtuLlcmJihuLmVtYmVkc1JjdCYmKFcucmN0PW4uZW1iZWRzUmN0KSxuLmVtYmVkc1JjdG4mJihXLnJjdG49Cm4uZW1iZWRzUmN0biksbi5jb21wb3NpdGVMaXZlSW5nZXN0aW9uT2Zmc2V0VG9rZW4mJihXLmNsaW89bi5jb21wb3NpdGVMaXZlSW5nZXN0aW9uT2Zmc2V0VG9rZW4pKTtuLmhvc3RDcG4mJihXLmhvc3RfY3BuPW4uaG9zdENwbik7cmV0dXJuIFd9OwphODI9ZnVuY3Rpb24obixXKXtRQShuLDEsVy5pZGVudGlmaWVyLFdCaiwzKTtpZihXLnJlY2VpdmVkQ3VlUG9pbnRFdmVudHMpZm9yKHZhciBEPTA7RDxXLnJlY2VpdmVkQ3VlUG9pbnRFdmVudHMubGVuZ3RoO0QrKylRQShuLDIsVy5yZWNlaXZlZEN1ZVBvaW50RXZlbnRzW0RdLGtGdywxKTtpZihXLnJlY2VpdmVkQWRFdmVudHMpZm9yKEQ9MDtEPFcucmVjZWl2ZWRBZEV2ZW50cy5sZW5ndGg7RCsrKVFBKG4sMyxXLnJlY2VpdmVkQWRFdmVudHNbRF0saHN3LDMpfTsKa0Z3PWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcuZWxhcHNlZFRpbWVNcyk7Q1IobiwyLFcuc2VnbWVudFN0YXJ0VGltZU1zKTtDUihuLDMsVy5jdWVwb2ludEV2ZW50KTtDUihuLDQsVy5hZEJyZWFrRnVsZmlsbG1lbnRTdGF0ZSk7Q1Iobiw1LFcudHJhY2tUeXBlKTtDUihuLDYsVy5zZWdtZW50TnVtYmVyKTtDUihuLDcsVy5ub0Fkc1N0aXRjaGVkUmVhc29uKX07Cmhzdz1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLmVsYXBzZWRUaW1lTXMpO2cuUncobiwyLFcuYWRDcG4pO0NSKG4sMyxXLmFkQWRkZWRMYXRlbmN5VGltZU1zKTtnLlJ3KG4sNCxXLmFkVmlkZW9JZCk7Q1Iobiw1LFcuYWRTdGFydFRpbWVNcyk7Q1Iobiw2LFcuYWREdXJhdGlvbk1zKTtDUihuLDcsVy5hZFJlamVjdGlvblJlYXNvbik7Q1Iobiw4LFcudGltZUVsYXBzZWRTaW5jZUN1ZXBvaW50TXMpfTsKVjZyPWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcuZWxhcHNlZFRpbWVNcyk7Zy5SdyhuLDMsVy52aWRlb0RlY29kZXJOYW1lKX07CmM5TT1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLmRldmljZUludGVyZmFjZSk7Zy5SdyhuLDIsVy5kZXZpY2VWZXJzaW9uKTtCRyhuLDMsVy5pc1NsZWVwaW5nKX07CkxCVT1mdW5jdGlvbihuKXtyZXR1cm57ZmY6aWgobiwxLHhjYiksdHJhY2tUeXBlOlBHKG4sMiksUFA6UEcobiwzKSx0aW1lUmFuZ2U6aWgobiw0LGMkKSx0aWxlQ29udGV4dDpFeChuLDUpLGJ4OlBHKG4sNiksRzM6UEcobiw3KSxvcHBvcnR1bml0eUlkOkV4KG4sOCksc2VyaWFsaXplZFByZWZldGNoQ29udGV4dDp5QShuLDkpfX07CnhjYj1mdW5jdGlvbihuKXtyZXR1cm57dHlwZTpQRyhuLDEpLGV2ZW50OlBHKG4sMiksTUs6WncobiwzKSxUeTpadyhuLDQpLHVUOkV4KG4sNSksaWRlbnRpZmllcjpFeChuLDYpLEFDOlBHKG4sOSl9fTsKa2Q9ZnVuY3Rpb24obil7cmV0dXJue2ZpcnN0OlBHKG4sMSksSjc6UEcobiwyKX19Owplc2o9ZnVuY3Rpb24obil7cmV0dXJue2JpdHJhdGU6UEcobiw2KSx3aWR0aDpQRyhuLDcpLGhlaWdodDpQRyhuLDgpLGZwczpQRyhuLDI1KSxhdmVyYWdlQml0cmF0ZTpQRyhuLDMxKSxhdWRpb1NhbXBsZVJhdGU6UEcobiw0NSksYXVkaW9DaGFubmVsczpQRyhuLDQ2KSxxdWFsaXR5T3JkaW5hbDpQRyhuLDU2KX19Owpocz1mdW5jdGlvbihuKXtyZXR1cm57aXRhZ0RlbnlsaXN0OnVoKG4sMSl9fTsKZ3kxPWZ1bmN0aW9uKG4pe3JldHVybntZazpVeChuLDEpLFhXOlBHKG4sMiksc1E6VXgobiwzKSxOVDpadyhuLDQpLGNyeXB0b1BlcmlvZEluZGV4OlBHKG4sNSksWlg6UEcobiw2KSxMRzpQRyhuLDcpfX07CkdGQz1mdW5jdGlvbihuKXtyZXR1cm57SzU6UEcobiwxKSxpdGFnOkV4KG4sMyksUXQ6aWgobiw0LFh4dCksbG10OlBHKG4sNSksQ2U6UEcobiw3KSx4dGFnczpFeChuLDE1KSxuNjppaChuLDIzLHEwYiksWHQ6aWgobiwzNCxocyl9fTsKWHh0PWZ1bmN0aW9uKG4pe3JldHVybntpdjp5QShuLDUpLE5FOlV4KG4sNyl9fTsKdHBiPWZ1bmN0aW9uKG4pe3JldHVybntnazp1aChuLDIpLHZpZGVvSWQ6RXgobiwzKSxRbzpQRyhuLDQpfX07CnEwYj1mdW5jdGlvbihuKXtyZXR1cm57dmlkZW9JZDpFeChuLDIpfX07CiRjeD1mdW5jdGlvbihuKXtyZXR1cm57d2Y6UEcobiwzKSx2NzpQRyhuLDQpLEtOOlBHKG4sNSksWjM6VXgobiw4KSxXWjpQRyhuLDEwKSxITzpQRyhuLDEyKSxVUjpQRyhuLDEzKSxzUjpQRyhuLDE0KSx1MDpQRyhuLDE1KSxMejpQRyhuLDE2KX19Owp4ZD1mdW5jdGlvbihuKXtyZXR1cm57dGFyZ2V0QXVkaW9SZWFkYWhlYWRNczpQRyhuLDEpLHRhcmdldFZpZGVvUmVhZGFoZWFkTXM6UEcobiwyKSxiYWNrb2ZmVGltZU1zOlBHKG4sNCkscGxheWJhY2tDb29raWU6eUEobiw3KSx2aWRlb0lkOkV4KG4sOCl9fTsKTDc9ZnVuY3Rpb24obil7cmV0dXJue21pbkJhbmR3aWR0aEJ5dGVzUGVyU2VjOlBHKG4sMSksbWluUmVhZGFoZWFkTXM6UEcobiwyKX19OwplST1mdW5jdGlvbihuKXtyZXR1cm57c3RhcnRNaW5SZWFkYWhlYWRQb2xpY3k6b3cobiwxLEw3KSxyZXN1bWVNaW5SZWFkYWhlYWRQb2xpY3k6b3cobiwyLEw3KX19OwpyS3I9ZnVuY3Rpb24obil7cmV0dXJue2xhYmVsOkV4KG4sMSksdGV4dDpFeChuLDIpfX07CnNoWj1mdW5jdGlvbihuKXtyZXR1cm57dmlkZW9JZDpFeChuLDEpLGZvcm1hdElkOmloKG4sMixWciksZGVidWdJbmZvOm93KG4sMyxyS3IpfX07CmdQPWZ1bmN0aW9uKG4pe3JldHVybntKMDpvdyhuLDEsc2haKX19OwpObXQ9ZnVuY3Rpb24obil7cmV0dXJue0ZrOlBHKG4sMSksZno6UEcobiwyKSxtaW5SZWFkYWhlYWRNczpQRyhuLDMpfX07ClhOPWZ1bmN0aW9uKG4pe3JldHVybntwdjpQRyhuLDEpLGl0ZW1zOm93KG4sMixObXQpLFBuOlBHKG4sMyl9fTsKcHhpPWZ1bmN0aW9uKG4pe3JldHVybnt0b2tlbjpFeChuLDEpLHZpZGVvSWQ6RXgobiwyKX19OwpZMFU9ZnVuY3Rpb24obil7cmV0dXJue2V3OlBHKG4sMSl9fTsKcUc9ZnVuY3Rpb24obil7cmV0dXJue1FxOkV4KG4sMSksYWN0aW9uOlBHKG4sMiksQ3Y6aWgobiwzLFkwVSl9fTsKR0U9ZnVuY3Rpb24obil7cmV0dXJue0pKOlBHKG4sMSksUUI6UEcobiwyKSxzZWVrU291cmNlOlBHKG4sMyl9fTsKSFRaPWZ1bmN0aW9uKG4pe3JldHVybnt6SDpQRyhuLDEpLHg6UEcobiwyKSx5OlBHKG4sMyksd2lkdGg6UEcobiw0KSxoZWlnaHQ6UEcobiw1KX19OwpmbGo9ZnVuY3Rpb24obil7cmV0dXJue3JlZ2lvbjppaChuLDEsSFRaKSx1MTppaChuLDIsYyQpLGNwbjpFeChuLDUpLGxvZ2dpbmdNZXRhZGF0YTp5QShuLDYpLGJUOmloKG4sNyxjJCksTlI6UEcobiw4KSxxUjpVeChuLDkpfX07CkpLaj1mdW5jdGlvbihuKXtyZXR1cm57UjE6b3cobiwxLGZsail9fTsKSWxqPWZ1bmN0aW9uKG4pe3JldHVybnttZXRhZGF0YTpvdyhuLDEsSktqKSx0cmFja1R5cGU6UEcobiwyKX19Owp0cz1mdW5jdGlvbihuKXtyZXR1cm57dHlwZTpQRyhuLDEpLHNjb3BlOlBHKG4sMiksdmFsdWU6eUEobiwzKSxzZW5kQnlEZWZhdWx0OlV4KG4sNCksd3JpdGVQb2xpY3k6UEcobiw1KX19OwpTMHc9ZnVuY3Rpb24obixXKXtDUihuLDEsVy5pZCk7Zy5SdyhuLDIsVy51cmwpfTsKQUtyPWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcuaWQpO2cuUncobiwyLFcubmFtZSk7Q1IobiwzLFcucmVzb3VyY2VJZCk7Q1Iobiw0LFcubGluZSk7Q1Iobiw1LFcuY29sdW1uKX07Cm1jcj1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLmlkKTtDUihuLDIsVy50aW1lc3RhbXBNcyk7Q1IobiwzLFcuc3RhY2tJZCl9OwpLQk09ZnVuY3Rpb24obixXKXtDUihuLDEsVy5pZCk7Q1IobiwyLFcuZnJhbWVJZCk7Q1IobiwzLFcucGFyZW50SWQpfTsKT1RiPWZ1bmN0aW9uKG4sVyl7aWYoVy5yZXNvdXJjZXMpZm9yKHZhciBEPTA7RDxXLnJlc291cmNlcy5sZW5ndGg7RCsrKVFBKG4sMSxXLnJlc291cmNlc1tEXSxTMHcsMyk7aWYoVy5mcmFtZXMpZm9yKEQ9MDtEPFcuZnJhbWVzLmxlbmd0aDtEKyspUUEobiwyLFcuZnJhbWVzW0RdLEFLciwzKTtpZihXLnNhbXBsZXMpZm9yKEQ9MDtEPFcuc2FtcGxlcy5sZW5ndGg7RCsrKVFBKG4sMyxXLnNhbXBsZXNbRF0sbWNyLDEpO2lmKFcuc3RhY2tzKWZvcihEPTA7RDxXLnN0YWNrcy5sZW5ndGg7RCsrKVFBKG4sNCxXLnN0YWNrc1tEXSxLQk0sMSl9OwpQa0M9ZnVuY3Rpb24obixXKXtnLkZhKG4sMSxXLmRhdGEpfTsKWlRVPWZ1bmN0aW9uKG4sVyl7QkcobiwxLFcucGxhY2Vob2xkZXIpfTsKVWNpPWZ1bmN0aW9uKG4sVyl7Q1IobiwxLFcuTXcpfTsKeUtDPWZ1bmN0aW9uKG4sVyl7QkcobiwxLFcucGxhY2Vob2xkZXIpfTsKRXkyPWZ1bmN0aW9uKG4sVyl7Zy5SdyhuLDEsVy5CQil9OwppVHg9ZnVuY3Rpb24obixXKXtnLkZhKG4sMSxXLmRhdGEpO0NSKG4sMixXLlM3KX07CnVMMj1mdW5jdGlvbihuLFcpe0NSKG4sMSxXLnR5cGUpO3ZhciBEPVcucUw7aWYoRCE9PXZvaWQgMCl7dmFyIGI9bmV3IEFycmF5QnVmZmVyKDgpOyhuZXcgRmxvYXQ2NEFycmF5KGIpKVswXT1EO0Q9bmV3IFVpbnQzMkFycmF5KGIpO2I9RFswXTtEPURbMV07aWYoYiE9PXZvaWQgMCYmRCE9PXZvaWQgMCl7ajUobiwxNyk7VDYobiw4KTtmb3IobGV0IHY9MDt2PDQ7disrKW4udmlldy5zZXRVaW50OChuLnBvcyxiJjI1NSksYj4+Pj04LG4ucG9zKz0xO2I9RDtmb3IoRD0wO0Q8NDtEKyspbi52aWV3LnNldFVpbnQ4KG4ucG9zLGImMjU1KSxiPj4+PTgsbi5wb3MrPTF9fVFBKG4sMyxXLmE5LFBrQywzKTtRQShuLDQsVy5seCxaVFUsMSk7UUEobiw1LFcucTAsVWNpLDEpO1FBKG4sNixXLmlzVHlwZVN1cHBvcnRlZCx5S0MsMSk7UUEobiw3LFcueTgsRXkyLDMpO1FBKG4sOCxXLkpMLGlUeCwzKX07Cm95aD1mdW5jdGlvbihuKXtyZXR1cm57ZGF0YTp5QShuLDEpfX07CmRjdD1mdW5jdGlvbihuKXtyZXR1cm57cGxhY2Vob2xkZXI6VXgobiwxKX19Owp6czE9ZnVuY3Rpb24obil7cmV0dXJue0hTOlp3KG4sMSl9fTsKbGxyPWZ1bmN0aW9uKG4pe3JldHVybntwbGFjZWhvbGRlcjpVeChuLDEpfX07ClRtcj1mdW5jdGlvbihuKXtyZXR1cm57cGxhY2Vob2xkZXI6VXgobiwxKX19OwpqaE09ZnVuY3Rpb24obil7cmV0dXJue2RhdGE6eUEobiwxKSxrazpQRyhuLDIpfX07CkNreD1mdW5jdGlvbihuKXtyZXR1cm57cGxhY2Vob2xkZXI6VXgobiwxKX19OwpCbWo9ZnVuY3Rpb24obil7cmV0dXJue3R5cGU6UEcobiwxKSxxTDpadyhuLDIpLFFKOlp3KG4sMyksVG86Wncobiw0KSxpbml0OmloKG4sNSxDa3gpLGE5OmloKG4sNixveWgpLGx4OmloKG4sNyxkY3QpLHEwOmloKG4sOCx6czEpLGlzVHlwZVN1cHBvcnRlZDppaChuLDksbGxyKSx5ODppaChuLDEwLFRtciksSkw6aWgobiwxMSxqaE0pfX07Cnd4Wj1mdW5jdGlvbihuKXtyZXR1cm4gT2JqZWN0LnZhbHVlcyhGQlUpLmluY2x1ZGVzKG4pfTsKTXBDPWZ1bmN0aW9uKG4peyRkPTI1OTJFMyoobnx8MSl9OwpyUD1mdW5jdGlvbigpe3ZhciBuPWcuWkkoInl0LXBsYXllci12b2x1bWUiKXx8e30sVz1uLnZvbHVtZTtyZXR1cm57dm9sdW1lOmlzTmFOKFcpPzEwMDpnLkZmKE1hdGguZmxvb3IoVyksMCwxMDApLG11dGVkOiEhbi5tdXRlZH19Owpzbj1mdW5jdGlvbihuKXtnLlBCKCJ5dC1wbGF5ZXItYmFuZHdpZHRoIixuLDI1OTJFMyl9OwpwNz1mdW5jdGlvbihuPSRkKXtpZihuPjAmJiEoVVAoKT4oMCxnLlIpKCktbioxRTMpKXJldHVybiAwO249Zy5aSSgieXQtcGxheWVyLXF1YWxpdHkiKTtpZih0eXBlb2Ygbj09PSJzdHJpbmciKXtpZihuPU5HW25dLG4+MClyZXR1cm4gbn1lbHNlIGlmKG4gaW5zdGFuY2VvZiBPYmplY3QpcmV0dXJuIG4ucXVhbGl0eTtyZXR1cm4gMH07CllkPWZ1bmN0aW9uKCl7dmFyIG49Zy5aSSgieXQtcGxheWVyLXByb3hpbWEtcHJlZiIpO3JldHVybiBuPT1udWxsP251bGw6bn07ClJzeD1mdW5jdGlvbigpe3ZhciBuPWcuWkkoInl0LXBsYXllci1xdWFsaXR5Iik7aWYobiBpbnN0YW5jZW9mIE9iamVjdCYmbi5xdWFsaXR5JiZuLnByZXZpb3VzUXVhbGl0eSl7aWYobi5xdWFsaXR5Pm4ucHJldmlvdXNRdWFsaXR5KXJldHVybiAxO2lmKG4ucXVhbGl0eTxuLnByZXZpb3VzUXVhbGl0eSlyZXR1cm4tMX1yZXR1cm4gMH07CkhuPWZ1bmN0aW9uKCl7dmFyIG49e3ZhbHVlczp7fSxGWTp7fX07dHJ5e2xldCBXPUpTT04ucGFyc2UoSlNPTi5wYXJzZSh3aW5kb3cubG9jYWxTdG9yYWdlWyJ5dC1wbGF5ZXItbWVtb3J5Il0pLmRhdGEpO24udmFsdWVzPVcudmFsdWVzO24uaGFsZkxpdmVzPVcuaGFsZkxpdmVzfWNhdGNoe31yZXR1cm4gbn07CmY3PWZ1bmN0aW9uKCl7cmV0dXJuIGcuWkkoInl0LXBsYXllci1wZXJmb3JtYW5jZS1jYXAiKXx8e319OwpRaHc9ZnVuY3Rpb24obj0hMSl7aWYobil7bj1mNygpO2ZvcihsZXQgVyBvZiBPYmplY3Qua2V5cyhuKSlXLmluZGV4T2YoIjEiKSE9PTAmJmRlbGV0ZSBuW1ddO2cuUEIoInl0LXBsYXllci1wZXJmb3JtYW5jZS1jYXAiLG4sMjU5MkUzKX1lbHNlIHRyeXtsZXQgVz1PUC5xYigpLEQ9T1AuQnAoKTtXJiZXLnJlbW92ZSgieXQtcGxheWVyLXBlcmZvcm1hbmNlLWNhcCIpO0QmJkQucmVtb3ZlKCJ5dC1wbGF5ZXItcGVyZm9ybWFuY2UtY2FwIil9Y2F0Y2goVyl7fX07CkpzPWZ1bmN0aW9uKCl7cmV0dXJuIGcuWkkoInl0LXBsYXllci1wZXJmb3JtYW5jZS1jYXAtYWN0aXZlLXNldCIpPz9bXX07ClZwQz1mdW5jdGlvbihuPSExKXtuPyhuPUpzKCkuZmlsdGVyKFc9Plcuc3RhcnRzV2l0aCgiMSIpKSxnLlBCKCJ5dC1wbGF5ZXItcGVyZm9ybWFuY2UtY2FwLWFjdGl2ZS1zZXQiLG4sMjU5MkUzKSk6Zy5QQigieXQtcGxheWVyLXBlcmZvcm1hbmNlLWNhcC1hY3RpdmUtc2V0IixbXSwyNTkyRTMpfTsKSU89ZnVuY3Rpb24oKXtyZXR1cm4hIWcuWkkoInl0LXBsYXllci1oZWFkZXJzLXJlYWRhYmxlIil9OwpnLlNJPWZ1bmN0aW9uKCl7dmFyIG49Zy5aSSgieXQtcGxheWVyLWNhcHRpb24tbGFuZ3VhZ2UtcHJlZmVyZW5jZXMiKTtyZXR1cm4gbj9uOltdfTsKQXM9ZnVuY3Rpb24oKXt2YXIgbj1nLlpJKCJ5dC1wbGF5ZXItdXNlci1zZXR0aW5ncyIpLFc9bmV3IE1hcDtpZihuKWZvcihsZXQgW0QsYl1vZiBPYmplY3QuZW50cmllcyhuKSlXLnNldChELGIpO3JldHVybiBXfTsKbTU9ZnVuY3Rpb24oKXtyZXR1cm4gZy5aSSgieXQtcGxheWVyLXZvaWNlLWJvb3N0Iik/P3ZvaWQgMH07Cks3PWZ1bmN0aW9uKCl7cmV0dXJuIGcuWkkoInl0LXBsYXllci1hdWRpby1xdWFsaXR5LXNldHRpbmciKT8/Mn07ClpVPWZ1bmN0aW9uKCl7dHJ5e2xldCBuPXdpbmRvdy5uYXZpZ2F0b3I7aWYobi5nZXRBdXRvcGxheVBvbGljeSYmdHlwZW9mIG4uZ2V0QXV0b3BsYXlQb2xpY3k9PT0iZnVuY3Rpb24iKXtsZXQgVz1kb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGcuT24uV0MpLEQ7RD1XLmxlbmd0aD4wJiZXWzBdP24uZ2V0QXV0b3BsYXlQb2xpY3koV1swXSk6bi5nZXRBdXRvcGxheVBvbGljeSgibWVkaWFlbGVtZW50Iik7aWYoUG5bRF0pcmV0dXJuIFBuW0RdfX1jYXRjaChuKXt9cmV0dXJuIkFVVE9QTEFZX0JST1dTRVJfUE9MSUNZX1VOU1BFQ0lGSUVEIn07ClVuPWZ1bmN0aW9uKG4pe3JldHVybiBuLlBYfHxuLkd1fHxuLm11dGVkQXV0b3BsYXl9Owp5dz1mdW5jdGlvbihuLFcpe3JldHVybiBVbihuKT9XIT09MSYmVyE9PTImJlchPT0wPyJBVVRPUExBWV9TVEFUVVNfVU5BVkFJTEFCTEUiOm4uc1o/IkFVVE9QTEFZX1NUQVRVU19CTE9DS0VEIjoiQVVUT1BMQVlfU1RBVFVTX09DQ1VSUkVEIjoiQVVUT1BMQVlfU1RBVFVTX05PVF9BVFRFTVBURUQifTsKZy5Fbj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Vy5HKCk7bi50aGlyZFBhcnR5fHwobi50aGlyZFBhcnR5PXt9KTtuLnRoaXJkUGFydHk9ey4uLm4udGhpcmRQYXJ0eSxlbWJlZFVybDpiLmxvYWRlclVybH07Yi5hbmNlc3Rvck9yaWdpbnMmJihuLnRoaXJkUGFydHkuZW1iZWRkZWRQbGF5ZXJDb250ZXh0PXsuLi5uLnRoaXJkUGFydHkuZW1iZWRkZWRQbGF5ZXJDb250ZXh0LGFuY2VzdG9yT3JpZ2luczpiLmFuY2VzdG9yT3JpZ2luc30pO2IuZUshPW51bGwmJihuLnRoaXJkUGFydHkuZW1iZWRkZWRQbGF5ZXJDb250ZXh0PXsuLi5uLnRoaXJkUGFydHkuZW1iZWRkZWRQbGF5ZXJDb250ZXh0LHZpc2liaWxpdHlGcmFjdGlvbjpOdW1iZXIoYi5lSyl9KTtiLkxLJiYobi50aGlyZFBhcnR5LmVtYmVkZGVkUGxheWVyQ29udGV4dD17Li4ubi50aGlyZFBhcnR5LmVtYmVkZGVkUGxheWVyQ29udGV4dCx2aXNpYmlsaXR5RnJhY3Rpb25Tb3VyY2U6Yi5MS30pO24udGhpcmRQYXJ0eS5lbWJlZGRlZFBsYXllckNvbnRleHQ9CnsuLi5uLnRoaXJkUGFydHkuZW1iZWRkZWRQbGF5ZXJDb250ZXh0LGF1dG9wbGF5QnJvd3NlclBvbGljeTpaVSgpLGF1dG9wbGF5SW50ZW5kZWQ6VW4oVyksYXV0b3BsYXlTdGF0dXM6eXcoVyxEKX19OwppSj1mdW5jdGlvbihuKXt2YXIgVz1bXTtmb3IobGV0IEQgb2Ygbi5zcGxpdCgiLCIpKXtpZighRCljb250aW51ZTsobj1ELnN0YXJ0c1dpdGgoIiEiKSkmJihEPUQuc3Vic3RyaW5nKDEpKTtsZXQgYj1ELnNwbGl0KCItIik7Yi5sZW5ndGg8M3x8Vy5wdXNoKHtoajpiWzBdLHBsYXRmb3JtOmJbMV0sZGV2aWNlVmVyc2lvbjpiWzJdLEVzOm59KX1yZXR1cm4gV307CmFseD1mdW5jdGlvbihuKXtyZXR1cm4gaUoobikubWFwKCh7aGo6VyxkZXZpY2VWZXJzaW9uOkQsRXM6Yn0pPT4oe2RldmljZUludGVyZmFjZTpjS01bdUpbV11dfHwwLGRldmljZVZlcnNpb246RHx8IiIsaXNTbGVlcGluZzpifSkpfTsKb089ZnVuY3Rpb24obixXLEQ9ITEsYj0iIil7IW4mJkQmJmcuR3EoRXJyb3IoYFBsYXllciBVUkwgdmFsaWRhdG9yIGRldGVjdHMgaW52YWxpZCB1cmwuICR7Yn06ICR7V31gKSk7cmV0dXJuIG59Owp6RT1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIFcmJlcudGVzdChuKXx8ZFAmJkQmJkQudGVzdChuKT8hMDohMX07ClRFPWZ1bmN0aW9uKG4pe3JldHVybihuPWxKJiZsSi5leGVjKG4pKT9uWzBdOiIifTsKZ1g9ZnVuY3Rpb24obil7cmV0dXJuIG9PKHpFKG4sbkV3LFdoWiksbiwhMSwiVHJ1c3RlZCBTdHJlYW0gVVJMIil9OwpnLmpJPWZ1bmN0aW9uKG4pe3JldHVybiBvTyh6RShuLEQ1VSxiS1opLG4sITEsIlRydXN0ZWQgSW1hZ2UgVVJMIil9OwpDNz1mdW5jdGlvbihuKXtyZXR1cm4gb08oekUobix2RWgsbnVsbCksbiwhMSwiVHJ1c3RlZCBQcm9tb3RlZCBWaWRlbyBEb21haW4gVVJMIil9OwpoQWk9ZnVuY3Rpb24obil7cmV0dXJuIG9PKHpFKG4sazdyLG51bGwpLG4sITEsIkRybSBMaWNlbnNvciBVUkwiKX07CkJuPWZ1bmN0aW9uKG4sVz0hMSl7cmV0dXJuIG9PKHpFKG4seDVyLExodCksbixXLCJDYXB0aW9ucyBVUkwiKX07CmVBPWZ1bmN0aW9uKG4pe249bmV3IGcuVWoobik7eU4obixkb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbCk7RWoobixkb2N1bWVudC5sb2NhdGlvbi5ob3N0bmFtZSk7ZG9jdW1lbnQubG9jYXRpb24ucG9ydCYmaXIobixkb2N1bWVudC5sb2NhdGlvbi5wb3J0KTtyZXR1cm4gbi50b1N0cmluZygpfTsKRk49ZnVuY3Rpb24obil7bj1uZXcgZy5VaihuKTt5TihuLGRvY3VtZW50LmxvY2F0aW9uLnByb3RvY29sKTtyZXR1cm4gbi50b1N0cmluZygpfTsKZUFaPWZ1bmN0aW9uKG4pe3JldHVybntbMV06bi5uYW1lLFsyXTpuLmlkLFszXTpuLmlzRGVmYXVsdCxbNF06bi5pc0F1dG9EdWJiZWR9fTsKTUc9ZnVuY3Rpb24obil7cmV0dXJuIG5ldyB3UChuWzFdLG5bMl0sblszXSxuWzRdKX07ClJPPWZ1bmN0aW9uKG4pe3JldHVybntbMV06bi5sYW5ndWFnZUNvZGUsWzJdOm4ubGFuZ3VhZ2VOYW1lLFszXTpuLmtpbmQsWzRdOm4ubmFtZSxbNV06bi5kaXNwbGF5TmFtZSxbNl06bi5pZCxbN106bi54dGFncyxbOF06bi5OLFs5XTpuLmlzVHJhbnNsYXRlYWJsZSxbMTBdOm4udXJsLFsxMV06bi52c3NJZCxbMTJdOm4uaXNEZWZhdWx0LFsxM106bi50cmFuc2xhdGlvbkxhbmd1YWdlLFsxNF06bi5jYXB0aW9uSWR9fTsKVnc9ZnVuY3Rpb24obil7dmFyIFc9bmV3IGcuUXcoe2xhbmd1YWdlQ29kZTpuWzFdLGxhbmd1YWdlTmFtZTpuWzJdLGtpbmQ6blszXSxuYW1lOm5bNF0saWQ6bls2XSxpc19zZXJ2YWJsZTpuWzhdLGlzX3RyYW5zbGF0ZWFibGU6bls5XSx1cmw6blsxMF0sdnNzX2lkOm5bMTFdLGlzX2RlZmF1bHQ6blsxMl0seHRhZ3M6bls3XSxjYXB0aW9uSWQ6blsxNF19KTtXLmRpc3BsYXlOYW1lPW5bNV07Vy50cmFuc2xhdGlvbkxhbmd1YWdlPW5bMTNdO3JldHVybiBXfTsKZy5jbj1mdW5jdGlvbihuKXt2YXIgVz1bXTtpZihuLmRpc3BsYXlOYW1lKVcucHVzaChuLmRpc3BsYXlOYW1lKTtlbHNle2xldCBEPW4ubGFuZ3VhZ2VOYW1lfHwiIjtXLnB1c2goRCk7bi5raW5kPT09ImFzciImJkQuaW5kZXhPZigiKCIpPT09LTEmJlcucHVzaCgiIChBdXRvbWF0aWMgQ2FwdGlvbnMpIik7bi5uYW1lJiZXLnB1c2goYCAtICR7bi5uYW1lfWApfW4udHJhbnNsYXRpb25MYW5ndWFnZSYmVy5wdXNoKGAgPj4gJHtuLnRyYW5zbGF0aW9uTGFuZ3VhZ2UubGFuZ3VhZ2VOYW1lfWApO3JldHVybiBXLmpvaW4oIiIpfTsKZy5hTz1mdW5jdGlvbihuKXtyZXR1cm4gbi50cmFuc2xhdGlvbkxhbmd1YWdlP24udHJhbnNsYXRpb25MYW5ndWFnZS5sYW5ndWFnZUNvZGU6bi5sYW5ndWFnZUNvZGV9OwpnLm5nPWZ1bmN0aW9uKG4pe3ZhciBXPW4udnNzSWQ7bi50cmFuc2xhdGlvbkxhbmd1YWdlJiZXJiYoVz1gdCR7V30uJHtnLmFPKG4pfWApO3JldHVybiBXfTsKZ0V3PWZ1bmN0aW9uKG4pe3ZhciBXPW4uVyxEPW4uTixiPW4uWDtyZXR1cm57WzFdOm4uY2FwdGlvbnNJbml0aWFsU3RhdGUsWzJdOm4uSixbM106bi5jYXB0aW9uVHJhY2tzLm1hcCh2PT5STyh2KSksCls0XTpXP1JPKFcpOm51bGwsWzVdOkQ/Uk8oRCk6bnVsbCxbNl06bi5pZCxbN106bi5qLFs4XTpuLlYsWzldOmVBWihuLmtaKSxbMTBdOmI/Uk8oYik6bnVsbCxbMTFdOm4ueHRhZ3N9fTsKRGM9ZnVuY3Rpb24obil7dmFyIFc9bls0XSxEPW5bNV0sYj1uWzEwXSx2PW5ldyBXQShuWzZdLE1HKG5bOV0pKTt2LmNhcHRpb25zSW5pdGlhbFN0YXRlPW5bMV07di5jYXB0aW9uVHJhY2tzPW5bM10ubWFwKGs9PlZ3KGspKTsKdi5KPW5bMl07di5XPVc/VncoVyk6bnVsbDt2Lk49RD9WdyhEKTpudWxsO3Yuaj1uWzddO3YuVj1uWzhdO3YuWD1iP1Z3KGIpOm51bGw7di54dGFncz1uWzExXTtyZXR1cm4gdn07CnZBPWZ1bmN0aW9uKG4sVyxELGIpe3JldHVybiBuZXcgYjMoTkdbbl18fDAsTkdbV118fDAsRCxiKX07CmtKPWZ1bmN0aW9uKG4pe3JldHVybntbMV06bi5KLFsyXTpuLk4sWzNdOm4uVyxbNF06bi5yZWFzb24sWzVdOm4uTnN9fTsKWExTPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgYjMoblsxXSxuWzJdLG5bM10sbls0XSxuWzVdKX07CnhKPWZ1bmN0aW9uKG4pe2lmKGhUJiZuLk5zKXJldHVybiExO3ZhciBXPU5HLmF1dG87cmV0dXJuIG4uSj09PVcmJm4uTj09PVd9OwplSj1mdW5jdGlvbihuKXtyZXR1cm4gTGdbbi5OfHxuLkpdfHwiYXV0byJ9OwpnRj1mdW5jdGlvbihuLFcpe1c9TkdbV107cmV0dXJuIG4uSjw9VyYmKCFuLk58fG4uTj49Vyl9OwpYcD1mdW5jdGlvbihuKXtyZXR1cm4hIW5bIjEiXT8ubGVuZ3RofHwhIW5bIjFoIl0/Lmxlbmd0aHx8ISFuWyIxZSJdPy5sZW5ndGh9OwpxZD1mdW5jdGlvbihuKXtyZXR1cm4gbj09PSIxInx8bj09PSIxaCJ8fG49PT0iMWUifTsKTmQ9ZnVuY3Rpb24obixXLEQsYix2LGssaCl7dmFyIHg9ITE7aWYobi5KKXJldHVybiBuLko7dmFyIEw9e30sZT1uZXcgU2V0LEc9e307aWYoR18oYikpe2Zvcih2YXIgciBpbiBiLk4pe2lmKCFiLk4uaGFzT3duUHJvcGVydHkocikpY29udGludWU7bj1iLk5bcl07R1tuLmluZm8uSUJdPVtuLmluZm9dfXJldHVybiBHfXI9dFQoVyxiLEwpO2lmKFcuSil7KHg9WHAocikpfHwoVy5OLm5vQXYxUmVhc29uPSJub0Zvcm1hdCIpO3ZhciBOPUQuWT8iZGlzYWJsZUF2MUZvclNlc3Npb24iOiIiO04mJihXLk4ubm9BdjFSZWFzb249Tik7dih7bm9BdjFSZWFzb246Vy5OLm5vQXYxUmVhc29ufSl9ayYmdih7YWZ0c3J0OiRKKHIpfSk7Tj17fTt2YXIgSD0iIjtmb3IobGV0IEEgb2YgT2JqZWN0LmtleXMocikpe2xldCB5PUE7Zm9yKGxldCBUIG9mIHJbeV0pe2xldCB6PVQuaXRhZyxDPXJGKHksVCxXKTtpZihOLmhhc093blByb3BlcnR5KEMpKXtOW0NdPT09ITA/R1t5XS5wdXNoKFQpOkxbel09Ck5bQ107Y29udGludWV9bGV0IFE9c0QoVyxULEQsYi5pc0xpdmUsZSk7USE9PSEwPyhoLmFkZCh5KSxMW3pdPVEsVy5KJiZULk1XKCkmJihIKz1gOyR7en07JHtRfWApLFE9PT0iZGlzYWJsZXZwOWhmciImJihOW0NdPSJkaXNhYmxldnA5aGZyIikpOihHW3ldPUdbeV18fFtdLEdbeV0ucHVzaChUKSxOW0NdPSEwKX19Vy5KJiZ4JiYhWHAoRykmJih4PSExLFcuTi5ub0F2MVJlYXNvbj1ILHYoe25vQXYxUmVhc29uOlcuTi5ub0F2MVJlYXNvbn0pKTtrJiZ2KHtiZmZsdDokSihHKX0pO2ZvcihsZXQgQSBpbiBHKXtpZighRy5oYXNPd25Qcm9wZXJ0eShBKSljb250aW51ZTtiPUE7R1tiXSYmR1tiXVswXS5mWSgpJiYoaD1HW2JdLmxlbmd0aCxHW2JdPUdbYl0sVy5KJiZxZChiKSYmaD4wJiZHW2JdLmxlbmd0aDw9MCYmKGg9R1tiXS5sZW5ndGgsdih7bm9BdjFGbXQ6ImZpbHRlclZwOVVsdGxvdyIsY29kZWM6Yn0pKSxHW2JdPXEyQyhXLEdbYl0sTCksVy5KJiZxZChiKSYmaD4wJiZHW2JdLmxlbmd0aDw9CjAmJihoPUdbYl0ubGVuZ3RoLHYoe25vQXYxRm10OiJmaWx0ZXJRdWFsaXRpZXMiLGNvZGVjOmJ9KSksR1tiXT1HN1UoR1tiXSxMKSxXLkomJnFkKGIpJiZoPjAmJkdbYl0ubGVuZ3RoPD0wJiZ2KHtub0F2MUZtdDoiZmlsdGVySGZyIixjb2RlYzpifSkpfWsmJk9iamVjdC5rZXlzKEwpLmxlbmd0aD4wJiZ2KHtyanI6Zy5UQyhMKX0pO2ZvcihsZXQgQSBvZiBlLnZhbHVlcygpKShMPUQuVy5nZXQoQSkpJiYtLUwuZzE7ayYmdih7YWZ0Zmx0OiRKKEcpfSk7Vy5KJiZ4JiYhWHAoRykmJih4PSExLFcuTi5ub0F2MVJlYXNvbj0iZmlsdGVyIix2KHtub0F2MVJlYXNvbjpXLk4ubm9BdjFSZWFzb259KSk7bi5KPWcublQoRyxBPT4hIUEubGVuZ3RoKTsKcmV0dXJuIG4uSn07CklEaD1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXt2YXIgeD1XLld8fCEhdixMPXgmJlcuTEI/azp2b2lkIDAsZT1uZXcgU2V0LEc9TmQobixXLEQsYixrLHgsZSk7Yi5YKCkmJihHPXRnaChELEcsdix4LGssVykseCYmayh7ZW5mbHQ6JEooRyl9KSk7Vy55RT0kNXIoRyxXKTt2PUx0PT4hIUdbTHRdOwp2YXIgcj1ySGkoVyk7RD1bXTtmb3IodmFyIE4gb2YgT2JqZWN0LnZhbHVlcyhHKSlOPy5sZW5ndGgmJk5bMF0uZVMoKSYmRC5wdXNoKC4uLk4pO2lmKEdfKGIpKXJldHVybiBrPWcubF8oT2JqZWN0LnZhbHVlcyhHKSxMdD0+ISFMdC5sZW5ndGgmJiEhTHRbMF0uYXVkaW8pLHg9Zy5sXyhPYmplY3QudmFsdWVzKEcpLEx0PT4hIUx0Lmxlbmd0aCYmISFMdFswXS52aWRlbyksayYmeHx8Zy5wJCgpLGcuSDAobmV3IHBnKHgsayxMLEQpKTsKTj1HLmE7dmFyIEg9ITE7Vy5IaSYmclswXSE9PSJhIiYmc1diKE4pJiYoci51bnNoaWZ0KCJhIiksSD0hMCk7eCYmKGsoe2F1ZGlvUHJlZk9yZGVyOnIuam9pbigiXyIpfSksayh7cHJlZmVySGlnaFF1YWxpdHlBdWRpbzpXLkhpfSksayh7Zm9yY2VkQWFjRm9ySHFhOkh9KSk7Tj1bXTtpZihXLnZYKXtyPWcuRU0ocix2KTtIPW5ldyBTZXQ7Zm9yKHZhciBBIG9mIHIpe3ZhciB5PUdbQV07bGV0IEx0PW5ldyBTZXQ7Zm9yKHZhciBUIG9mIHkpaWYoeT1ULmtaPy5pZClILmhhcyh5KT9MdC5oYXMoeSkmJk4ucHVzaChUKTooTHQuYWRkKHkpLEguYWRkKHkpLE4ucHVzaChUKSl9aWYoTi5sZW5ndGg9PT0wKXtpZihyLmxlbmd0aD09PTApcmV0dXJuIHgmJmsoe25vYXVkaW86MX0pLGcucCQoKTtOPUdbclswXV19fWVsc2V7Tj1nLmxfKHIsdik7aWYoIU4pcmV0dXJuIHgmJmsoe25vYXVkaW86MX0pLGcucCQoKTtOPUdbTl19R1siOSJdJiZHLmgmJmIuelcmJiFXLkZGJiYoeCYmayh7ZGx0dnA5OjF9KSwKZGVsZXRlIEdbIjkiXSk7aWYoaCl7eCYmayh7YmZzZmx0OiRKKEcpLGJmc2ZsdGE6WUoobil9KTtXLkR0P24uTj1ORFMoZSxuLk4pOm4uTi5jbGVhcigpO3gmJmsoe2Jmc2ZsdGI6WUoobil9KTtmb3IodmFyIHogaW4gRyl7aWYoIUcuaGFzT3duUHJvcGVydHkoeikpY29udGludWU7aD16O2lmKCEoaD09PSJmInx8Vy54ZD09PTAmJnBMai5oYXMoaCkpKWZvcih2YXIgQyBvZiBHW2hdKVcuRHQ/WTJTKGgsQyxuLk4pOkhLaShuLGgsQyl9eCYmayh7YWZ0c2ZsdDpZSihuKX0pfXo9R1siMWgiXT8iMWgiOiIxIjtuPUdbIjloIl0/IjloIjoiOSI7aD1HW3pdO2U9R1siMiJdO0E9R1tuXTtoJiZoLmxlbmd0aCYmKFcuTi5oaWdoZXN0QXYxUmVzb2x1dGlvbj1oW2gubGVuZ3RoLTFdLnZpZGVvLnF1YWxpdHlPcmRpbmFsKTtBJiZBLmxlbmd0aCYmKFcuTi5oaWdoZXN0VnA5UmVzb2x1dGlvbj1BW0EubGVuZ3RoLTFdLnZpZGVvLnF1YWxpdHlPcmRpbmFsKTtDPVtdO1Q9W107aWYoVy55dyYmZSlDPQplLFQ9WyIyIl07ZWxzZSBpZihXLk1kJiZoKUM9aCxUPVt6XSxrKHtmb3JjZUF2MTp6fSk7ZWxzZSBpZihXLkQmJiFXLmJ2KXtUPWZEdyhiKT9HWyIxaCJdfHxHWyI5aCJdP1siMWgiLCI5aCJdOlsiOSIsImgiXTpbIjEiLCI5IiwiaCJdO3gmJmsoe25ld2h5YnByZWY6VC5qb2luKCIuIil9KTtmb3IodmFyIFEgb2YgVClDPUMuY29uY2F0KEdbUV0pLmZpbHRlcihMdD0+THQpfWVsc2UgVy5uUz4wJiZBJiZoJiYoVD1beiwKbl0sQz1oLmNvbmNhdChBKS5maWx0ZXIoTHQ9Pkx0KSk7CmlmKEMubGVuZ3RoJiYhVy5idil7SEEoQyxUKTtpZih4KXt4PVtdO2Zvcih2YXIgViBvZiBDKXgucHVzaChWLml0YWcpO2soe2hiZGZtdDp4LmpvaW4oIi4iKX0pfXJldHVybiBnLkgwKG5ldyBwZyhDLE4sTCxEKSl9Vj1KSHIoVyk7Vj1nLmxfKFYsdik7aWYoIVYpe2lmKEdbel0pcmV0dXJuIGs9R1t6XSxIQShrKSxnLkgwKG5ldyBwZyhrLE4sTCxEKSk7eCYmayh7bm92aWRlbzoxfSk7cmV0dXJuIGcucCQoKX1WIT09IjEiJiZWIT09IjFoInx8IUdbbl18fChRPWZnKEdbVl0pLHY9ZmcoR1tuXSksdj5RP1Y9bjooUT12PT09USx2PUpUKEdbbl0pLHo9SlQoR1tWXSksIVF8fCF2fHxXLllaJiZ6fHwoVj1uKSkpO1Y9PT0iOSImJkcuaCYmZmcoRy5oKT5mZyhHWyI5Il0pJiYoVj0iaCIpO1cuQlYmJmIuaXNMaXZlJiZWPT09IigiJiZHLkgmJmZnKEdbIigiXSk8MTQ0MCYmKFY9IkgiKTt4JiZrKHt2Zm1seTpJcihWKX0pO1c9R1tWXTtpZighVy5sZW5ndGgpcmV0dXJuIHgmJmsoe25vdmZtbHk6SXIoVil9KSwKZy5wJCgpO0hBKFcpO3JldHVybiBnLkgwKG5ldyBwZyhXLE4sTCxEKSl9OwpTMmI9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4PSExKXtpZihXLkU1JiZoJiZoLmxlbmd0aD4xJiYhKFcublM+MHx8Vy5EKSl7bGV0IHI9Vy5XfHwhIXYsTj1yJiZXLkxCP2s6dm9pZCAwLEg9dFQoVyxiKSxBPVtdLHk9W10sVD17fTtmb3IobGV0IHo9MDt6PGgubGVuZ3RoO3orKyl7dmFyIEw9aFt6XSxlPWIuSi5nZXQoTCk7aWYoZSYmZS5pbmZvKXt2YXIgRz1lLmluZm87ZT1HLklCO2lmKHNEKFcsRyxELGIuaXNMaXZlKSl7TD1HLmZZKCk/QTp5O0c9SFtlXTtmb3IobGV0IEMgb2YgRylHPXJGKGUsQyxXKSxULmhhc093blByb3BlcnR5KEcpP1RbR109PT0hMCYmTC5wdXNoKEMpOnNEKFcsQyxELGIuaXNMaXZlKSYmKEwucHVzaChDKSxUW0ddPSEwKX1lbHNlIHImJmsoe29wZnU6TH0pfX1pZihBLmxlbmd0aCYmeS5sZW5ndGgpcmV0dXJuIHImJmsoe29wZm06QVswXS5pdGFnKyIsIit5WzBdLml0YWd9KSxnLkgwKG5ldyBwZyhBLHksTikpfXJldHVybiBJRGgobixXLEQsYix2LGsseCl9OwpZSj1mdW5jdGlvbihuKXt2YXIgVz1bXTtmb3IobGV0IEQgb2Ygbi5OLmtleXMoKSl7bGV0IGI9bi5OLmdldChEKTtXLnB1c2goYCR7RH1fJHtiLm1heFdpZHRofV8ke2IubWF4SGVpZ2h0fWApfXJldHVybiBXLmpvaW4oIi4iKX07CkhLaT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9RC52aWRlbz8uZnBzfHwwLHY9YCR7V31fJHtifWAsaz0hIUQuYXVkaW8saD1uLk4uZ2V0KHYpLHg9bi5OLmdldCh2KSxMPSEhRC5hdWRpbzt4JiYoTHx8IUwmJkQudmlkZW8/LmhlaWdodCYmeC5tYXhIZWlnaHQmJngubWF4SGVpZ2h0Pj1ELnZpZGVvPy5oZWlnaHQpfHwoeD1ELml0YWcsVz1oP2g6e2l0YWc6eCxJQjpXLGVTOmt9LGs/Vy5udW1DaGFubmVscz1ELmF1ZGlvLm51bUNoYW5uZWxzOihrPUQudmlkZW8sVy5tYXhXaWR0aD1rPy53aWR0aCxXLm1heEhlaWdodD1rPy5oZWlnaHQsVy5tYXhGcmFtZXJhdGU9YixXLm1heEJpdHJhdGVCcHM9RC5Ocyo4LFcuejk9az8uaXNIZHIoKSksbi5OLnNldCh2LFcpKX07CiQ1cj1mdW5jdGlvbihuLFcpe3ZhciBEPSEoIW4ubSYmIW4uTSksYj0hKCFuLm1hYzMmJiFuLk1BQzMpLHY9ISghbi5tZWFjMyYmIW4uTUVBQzMpO249ISghbi5pJiYhbi5JKTtXLlFyPW47cmV0dXJuIER8fGJ8fHZ8fG59OwpKVD1mdW5jdGlvbihuKXtmb3IobGV0IFcgb2YgbilpZihXLml0YWcmJkFIUy5oYXMoVy5pdGFnKSlyZXR1cm4hMDtyZXR1cm4hMX07CnNXYj1mdW5jdGlvbihuKXtmb3IobGV0IFcgb2YgbilpZihXLmF1ZGlvLmF1ZGlvUXVhbGl0eT09PSJBVURJT19RVUFMSVRZX0hJR0giKXJldHVybiEwO3JldHVybiExfTsKSXI9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgIioiOnJldHVybiJ2OGUiO2Nhc2UgIigiOnJldHVybiJ2OWUiO2Nhc2UgIihoIjpyZXR1cm4idjloZSI7ZGVmYXVsdDpyZXR1cm4gbn19OwpyRj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIEQuVEM/YCR7bn1fJHtOdW1iZXIoVy52aWRlbz8uZnBzfHwwKX1fJHshIVcuYXVkaW8/Lk59XyR7ISFXLnZpZGVvPy5YfWA6YCR7bn1fJHtOdW1iZXIoVy52aWRlbz8uZnBzfHwwKX1fJHshIVcuYXVkaW8/Lk59YH07CiRKPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO2ZvcihsZXQgRCBpbiBuKXtpZighbi5oYXNPd25Qcm9wZXJ0eShEKSljb250aW51ZTtsZXQgYj1EO1cucHVzaChJcihiKSk7Zm9yKGxldCB2IG9mIG5bYl0pVy5wdXNoKHYuaXRhZyl9cmV0dXJuIFcuam9pbigiLiIpfTsKdGdoPWZ1bmN0aW9uKG4sVyxELGIsdixrKXt2YXIgaD17fSx4PXt9O2cuYV8oVywoTCxlKT0+e0w9TC5maWx0ZXIoRz0+e3ZhciByPUcuaXRhZztpZighRy5jb250ZW50UHJvdGVjdGlvbilyZXR1cm4geFtyXT0ibm9lbmMiLCExO2lmKGsuSEQmJkcuSUI9PT0iKGgiJiZrLmJkKXJldHVybiB4W3JdPSJsaWNoZHIiLCExO2lmKCFuLlgmJkcuSUI9PT0iMWUiKXJldHVybiB4W3JdPSJub2F2MWVuYyIsITE7aWYoRy5JQj09PSIoInx8Ry5JQj09PSIoaCIpe2lmKG4uSiYmRCYmRC5mbGF2b3I9PT0id2lkZXZpbmUiKXt2YXIgTj1HLm1pbWVUeXBlKyI7IGV4cGVyaW1lbnRhbD1hbGxvd2VkIjsoTj0hIUcuY29udGVudFByb3RlY3Rpb25bRC5mbGF2b3JdJiYhIUQuSltOXSl8fCh4W3JdPUcuY29udGVudFByb3RlY3Rpb25bRC5mbGF2b3JdPyJ1bnNwdCI6Im5vZmx2Iik7cmV0dXJuIE59aWYoIVNKKG4sQVQuQ1JZUFRPQkxPQ0tGT1JNQVQpJiYhbi5UQ3x8bi50dylyZXR1cm4geFtyXT1uLnR3PwoiZGlzdnAiOiJ2cHN1YiIsITF9cmV0dXJuIEQmJkcuY29udGVudFByb3RlY3Rpb25bRC5mbGF2b3JdJiZELkpbRy5taW1lVHlwZV0/ITA6KHhbcl09RD9HLmNvbnRlbnRQcm90ZWN0aW9uW0QuZmxhdm9yXT8idW5zcHQiOiJub2ZsdiI6Im5vc3lzIiwhMSl9KTsKTC5sZW5ndGgmJihoW2VdPUwpfSk7CmImJk9iamVjdC5lbnRyaWVzKHgpLmxlbmd0aCYmdih7cmpyOmcuVEMoeCl9KTtpZihrLkopZm9yKGxldCBMIG9mIE9iamVjdC52YWx1ZXMoVykpaWYoTClmb3IobGV0IGUgb2YgTClXPXhbZS5pdGFnXSxlLk1XKCkmJlchPT12b2lkIDAmJihrLk5bZS5pdGFnXT1XKTtyZXR1cm4gaH07Ckc3VT1mdW5jdGlvbihuLFcpe3ZhciBEPWcudV8obiwoYix2KT0+di52aWRlby5KKCk/TWF0aC5taW4oYix2LnZpZGVvLndpZHRoKTpiLEluZmluaXR5KTsKRDxJbmZpbml0eSYmKG49bi5maWx0ZXIoYj0+e2lmKGIudmlkZW8uSigpfHxiLnZpZGVvLndpZHRoPEQpcmV0dXJuITA7V1tiLml0YWddPSJoZnJmaXJzdCI7cmV0dXJuITF9KSk7CmxiKCkmJihuPW4uZmlsdGVyKGI9PntpZihiLml0YWchPT0iMjk5IilyZXR1cm4hMDtXW2IuaXRhZ109InBzM2hmcjEwODAiO3JldHVybiExfSkpOwpyZXR1cm4gbn07CnEyQz1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIFc9Vy5maWx0ZXIoYj0+e2lmKGIudmlkZW8ucXVhbGl0eU9yZGluYWw8PW4ud2EpcmV0dXJuITA7RFtiLml0YWddPSJtYXhxdWFsaXR5IjtyZXR1cm4hMX0pfTsKdFQ9ZnVuY3Rpb24obixXLEQpe3ZhciBiPXt9O2ZvcihsZXQgdiBpbiBXLk4pe2lmKCFXLk4uaGFzT3duUHJvcGVydHkodikpY29udGludWU7bGV0IGs9Vy5OW3ZdLmluZm87aWYobi5ZJiZrLnZpZGVvJiZrLnZpZGVvLnF1YWxpdHlPcmRpbmFsPG4uWSl7RCYmKERbay5pdGFnXT1gbWluJHtuLll9YCk7Y29udGludWV9bGV0IGg9ay5JQjtiW2hdPWJbaF18fFtdO2JbaF0ucHVzaChrKX1mb3IobGV0IHYgb2YgT2JqZWN0LmtleXMoYikpSEEoYlt2XSk7cmV0dXJuIGJ9OwpmZz1mdW5jdGlvbihuKXtyZXR1cm4gZy51XyhuLChXLEQpPT5NYXRoLm1heChXLEQudmlkZW8ucXVhbGl0eU9yZGluYWwpLDApfTsKc0Q9ZnVuY3Rpb24obixXLEQsYj0hMSx2PW5ldyBTZXQpe2lmKFcuSUI9PT0iIilyZXR1cm4idW5rbiI7aWYoKFcuaXRhZz09PSIzMDQifHxXLml0YWc9PT0iMjY2IikmJm4udHcpcmV0dXJuImJsazJraGZyIjtpZihuLksmJlcudmlkZW8mJlcudmlkZW8ucXVhbGl0eU9yZGluYWw+bi5LKXJldHVybmBtYXgke24uS31gO2lmKG4uQ3UmJlcuSUI9PT0iaCImJlcudmlkZW8mJlcudmlkZW8ucXVhbGl0eU9yZGluYWw+MTA4MClyZXR1cm4iYmxraGlnaDI2NCI7aWYoVy5JQj09PSIoaCImJiFELkspcmV0dXJuImVuY2hkciI7aWYoYiYmbUYoVykmJiFuLm51KXJldHVybiJibGs1MWxpdmUiO2lmKChXLklCPT09Ik1BQzMifHxXLklCPT09Im1hYzMiKSYmIW4uailyZXR1cm4iYmxrYWMzIjtpZigoVy5JQj09PSJNRUFDMyJ8fFcuSUI9PT0ibWVhYzMiKSYmIW4uVilyZXR1cm4iYmxrZWFjMyI7aWYoVy5JQj09PSJNInx8Vy5JQj09PSJtIilyZXR1cm4iYmxrYWFjNTEiO2lmKChXLklCPT09InNvInx8ClcuSUI9PT0ic2EiKSYmIW4uY0opcmV0dXJuImJsa2FtYiI7aWYoIW4uSEQmJktnKFcpJiYoIUQuWHx8Vy5JQiE9PSIxZSIpKXJldHVybiJjYmMiO2lmKCFELlgmJktnKFcpJiZXLklCPT09IjFlIilyZXR1cm4iY2JjYXYxIjtpZigoVy5JQj09PSJpInx8Vy5JQj09PSJJIikmJiFuLlZRKXJldHVybiJibGtpYW1mIjtpZihuLlJhJiZXLmF1ZGlvPy5OPT09ITApcmV0dXJuImJsa3ZiY2FiciI7aWYobi5UQyYmVy52aWRlbz8uWD09PSExKXJldHVybiJibGttdHZjYWJyIjtpZihuLnZKJiYoVy5JQj09PSIxInx8Vy5JQj09PSIxaCJ8fEQuWCYmVy5JQj09PSIxZSIpJiZXLnZpZGVvPy5xdWFsaXR5T3JkaW5hbCYmVy52aWRlbz8ucXVhbGl0eU9yZGluYWw+bi52SilyZXR1cm4iYXYxY2FwIjtiPUQuVy5nZXQoVy5JQik7aWYoIW4ualcmJmImJmIuZzE+MClyZXR1cm4gdi5hZGQoVy5JQiksImJ5ZXJyIjtpZihXLnZpZGVvPy5KKCkpe2lmKCFELmJkJiYhU0ooRCxBVC5GUkFNRVJBVEUpKXJldHVybiJjYXBIZnIiOwppZihuLlBYJiZXLnZpZGVvLnF1YWxpdHlPcmRpbmFsPj00MzIwKXJldHVybiJibGs4a2hmciI7aWYoVy5YKCkmJm4uVTUmJlcuY29udGVudFByb3RlY3Rpb24mJlcudmlkZW8ucXVhbGl0eU9yZGluYWw+PTE0NDApcmV0dXJuImRpc2FibGV2cDloZnIifWlmKG4uTnMmJlcuTnM+bi5OcylyZXR1cm4icmF0ZWNhcCI7aWYobi5TJD4wJiZXLmZZKCkmJlcudmlkZW8uaGVpZ2h0Pm4uUyQpcmV0dXJuIm12aGNhcCI7bj1PRChELFcpO3JldHVybiBuIT09ITA/bjohMH07CkhBPWZ1bmN0aW9uKG4sVz1bXSl7Zy5iZihuLChELGIpPT57dmFyIHY9Yi5Ocy1ELk5zO2lmKCFELmZZKCl8fCFiLmZZKCkpcmV0dXJuIHY7dmFyIGs9Yi52aWRlby5oZWlnaHQqYi52aWRlby53aWR0aC1ELnZpZGVvLmhlaWdodCpELnZpZGVvLndpZHRoOyFrJiZXJiZXLmxlbmd0aD4wJiYoRD1XLmluZGV4T2YoRC5JQikrMSxiPVcuaW5kZXhPZihiLklCKSsxLGs9RD09PTB8fGI9PT0wP2J8fC0xOkQtYik7a3x8KGs9dik7cmV0dXJuIGt9KX07ClBBPWZ1bmN0aW9uKG4sVyl7aWYoVz5uLngkKCkpbi5zZWdtZW50cz1bXTtlbHNle3ZhciBEPWcuejQobi5zZWdtZW50cyxiPT5iLmokPj1XLG4pOwpEPjAmJm4uc2VnbWVudHMuc3BsaWNlKDAsRCl9fTsKWmM9ZnVuY3Rpb24obil7dmFyIFc9bi5kYXRhLmdldFVpbnQ4KG4ub2Zmc2V0K24uTik7bi5OKz0xO3JldHVybiBXfTsKVUQ9ZnVuY3Rpb24obil7dmFyIFc9bi5kYXRhLmdldFVpbnQxNihuLm9mZnNldCtuLk4pO24uTis9MjtyZXR1cm4gV307CnlMPWZ1bmN0aW9uKG4pe3ZhciBXPW4uZGF0YS5nZXRJbnQzMihuLm9mZnNldCtuLk4pO24uTis9NDtyZXR1cm4gV307CkVEPWZ1bmN0aW9uKG4pe3ZhciBXPW4uZGF0YS5nZXRVaW50MzIobi5vZmZzZXQrbi5OKTtuLk4rPTQ7cmV0dXJuIFd9OwppMz1mdW5jdGlvbihuKXt2YXIgVz1uLmRhdGE7dmFyIEQ9bi5vZmZzZXQrbi5OO1c9Vy5nZXRVaW50MzIoRCkqNDI5NDk2NzI5NitXLmdldFVpbnQzMihEKzQpO24uTis9ODtyZXR1cm4gV307CnUzPWZ1bmN0aW9uKG4sVz1OYU4pe2lmKGlzTmFOKFcpKXZhciBEPW4uc2l6ZTtlbHNlIGZvcihEPW4uTjtEPG4uc2l6ZSYmbi5kYXRhLmdldFVpbnQ4KG4ub2Zmc2V0K0QpIT09VzspKytEO1c9bmV3IFVpbnQ4QXJyYXkobi5kYXRhLmJ1ZmZlcixuLm9mZnNldCtuLk4rbi5kYXRhLmJ5dGVPZmZzZXQsRC1uLk4pO24uTj1NYXRoLm1pbihEKzEsbi5zaXplKTtyZXR1cm4gcFIoVyl9Owpvcj1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkobi5kYXRhLmJ1ZmZlcixuLm9mZnNldCtuLmRhdGEuYnl0ZU9mZnNldCxuLnNpemUpfTsKZEY9ZnVuY3Rpb24obixXLEQsYil7KG5ldyBVaW50OEFycmF5KG4uZGF0YS5idWZmZXIsbi5vZmZzZXQsYikpLnNldChuZXcgVWludDhBcnJheShXLmJ1ZmZlcixEK1cuYnl0ZU9mZnNldCxiKSk7bi5vZmZzZXQrPWJ9Owp6Xz1mdW5jdGlvbihuLFcpe3JldHVybiBOdW1iZXIobi5kYXRhW1ddKXx8MH07ClRfPWZ1bmN0aW9uKG4pe3JldHVybiBuLmRhdGFbIkN1ZXBvaW50LVR5cGUiXT9uZXcgZy5sMygtKE51bWJlcihuLmRhdGFbIkN1ZXBvaW50LVBsYXloZWFkLVRpbWUtU2VjIl0pfHwwKSxOdW1iZXIobi5kYXRhWyJDdWVwb2ludC1Ub3RhbC1EdXJhdGlvbi1TZWMiXSl8fDAsbi5kYXRhWyJDdWVwb2ludC1Db250ZXh0Il0sbi5kYXRhWyJDdWVwb2ludC1JZGVudGlmaWVyIl18fCIiLG01altuLmRhdGFbIkN1ZXBvaW50LUV2ZW50Il18fCIiXXx8InVua25vd24iLChOdW1iZXIobi5kYXRhWyJDdWVwb2ludC1QbGF5aGVhZC1UaW1lLVNlYyJdKXx8MCkqMUUzKTpudWxsfTsKako9ZnVuY3Rpb24obil7cmV0dXJuIE51bWJlcihuLmRhdGFbIlN0YXJ0LU1lZGlhLVRpbWUtVXMiXSkvMUU2fHwwfTsKQ2c9ZnVuY3Rpb24obil7cmV0dXJuIG4uZGF0YVsiU3RpdGNoZWQtVmlkZW8tSWQiXT9uLmRhdGFbIlN0aXRjaGVkLVZpZGVvLUlkIl0uc3BsaXQoIiwiKS5zbGljZSgwLC0xKTpbXX07CkJBPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO2lmKG4uZGF0YVsiU3RpdGNoZWQtVmlkZW8tRHVyYXRpb24tVXMiXSlmb3IobGV0IEQgb2Ygbi5kYXRhWyJTdGl0Y2hlZC1WaWRlby1EdXJhdGlvbi1VcyJdLnNwbGl0KCIsIikuc2xpY2UoMCwtMSkpVy5wdXNoKChOdW1iZXIoRCl8fDApLzFFNik7cmV0dXJuIFd9OwpGcD1mdW5jdGlvbihuKXt2YXIgVz1bXTtpZihuLmRhdGFbIlN0aXRjaGVkLVZpZGVvLVN0YXJ0LUZyYW1lLUluZGV4Il0pZm9yKGxldCBEIG9mIG4uZGF0YVsiU3RpdGNoZWQtVmlkZW8tU3RhcnQtRnJhbWUtSW5kZXgiXS5zcGxpdCgiLCIpLnNsaWNlKDAsLTEpKVcucHVzaChOdW1iZXIoRCl8fDApO3JldHVybiBXfTsKd0Y9ZnVuY3Rpb24obil7dmFyIFc9W107aWYobi5kYXRhWyJTdGl0Y2hlZC1WaWRlby1TdGFydC1UaW1lLVdpdGhpbi1BZC1VcyJdKWZvcihsZXQgRCBvZiBuLmRhdGFbIlN0aXRjaGVkLVZpZGVvLVN0YXJ0LVRpbWUtV2l0aGluLUFkLVVzIl0uc3BsaXQoIiwiKS5zbGljZSgwLC0xKSlXLnB1c2goKE51bWJlcihEKXx8MCkvMUU2KTtyZXR1cm4gV307CmcuTWQ9ZnVuY3Rpb24obil7cmV0dXJuIG4uZGF0YVsiU2VyaWFsaXplZC1TdGF0ZSJdP24uZGF0YVsiU2VyaWFsaXplZC1TdGF0ZSJdOiIifTsKZy5Scj1mdW5jdGlvbihuKXtzd2l0Y2gobi5kYXRhWyJJcy1BZC1CcmVhay1GaW5pc2hlZCJdKXtjYXNlICJ0cnVlIjpyZXR1cm4gMTtjYXNlICJmYWxzZSI6cmV0dXJuIDI7ZGVmYXVsdDpyZXR1cm4gMH19OwpRTD1mdW5jdGlvbihuKXt2YXIgVz17fTtuPW4uc3BsaXQoIlxyXG4iKTtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKyl7aWYobltEXS5sZW5ndGg9PT0wKXJldHVybiBXO2xldCBiPW5bRF0ubWF0Y2goLyhbXjpdKyk6XHMrKFtcU1xzXSspLyk7YiE9bnVsbCYmKFdbYlsxXV09YlsyXSl9cmV0dXJuIG51bGx9OwpnLm5zPWZ1bmN0aW9uKG4sVyxEKXtmb3IoO1ZMKG4sVyk7KXtsZXQgYj1jQShuLFcpO2lmKGIudHlwZT09PUQpcmV0dXJuIGI7Vz1hcihiLnR5cGUpP1crODpXK2Iuc2l6ZX1yZXR1cm4gbnVsbH07Cld3PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5ucyhuLDAsMTk1Mjg2ODQ1Mik7bj1nLm5zKG4sMCwxOTUzNjU4MjIyKTtpZihEJiZuKXtELnNraXAoMSk7dmFyIGI9WmMoRCk8PDE2fFVEKEQpO0Quc2tpcCg0KTtiJjEmJkQuc2tpcCg4KTtiJjImJkQuc2tpcCg0KTtpZihiJjgpe2I9RC5OO3ZhciB2PUVEKEQpO0QuZGF0YS5zZXRVaW50MzIoRC5vZmZzZXQrYixXPjE/TWF0aC5jZWlsKHYqVyk6TWF0aC5mbG9vcih2KlcpKX1uLnNraXAoMSk7RD1aYyhuKTw8MTZ8VUQobik7aWYoRCYyNTYpe2I9RCYxO3Y9RCY0O3ZhciBrPUQmNTEyLGg9RCYxMDI0LHg9RCYyMDQ4O0Q9RUQobik7YiYmbi5za2lwKDQpO3YmJm4uc2tpcCg0KTtiPShrPzQ6MCkrKGg/NDowKSsoeD80OjApO2Zvcih2PTA7djxEO3YrKylrPW4uTixoPUVEKG4pLG4uZGF0YS5zZXRVaW50MzIobi5vZmZzZXQrayxXPjE/TWF0aC5jZWlsKGgqVyk6TWF0aC5mbG9vcihoKlcpKSxuLnNraXAoYil9fX07ClZMPWZ1bmN0aW9uKG4sVyl7aWYobi5ieXRlTGVuZ3RoLVc8OClyZXR1cm4hMTt2YXIgRD1uLmdldFVpbnQzMihXKTtpZihEPDh8fG4uYnl0ZUxlbmd0aC1XPEQpcmV0dXJuITE7Zm9yKEQ9NDtEPDg7RCsrKXtsZXQgYj1uLmdldEludDgoVytEKTtpZihiPDQ4fHxiPjEyMilyZXR1cm4hMX1yZXR1cm4hMH07CmNBPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5nZXRVaW50MzIoVyksYj1uLmdldFVpbnQzMihXKzQpO3JldHVybiBuZXcgRF8obixXLEQsYil9OwpnLmJMPWZ1bmN0aW9uKG4pe3ZhciBXPW4uZGF0YS5nZXRVaW50OChuLmRhdGFPZmZzZXQpPzIwOjEyO3JldHVybiBuLmRhdGEuZ2V0VWludDMyKG4uZGF0YU9mZnNldCtXKX07CnZ3PWZ1bmN0aW9uKG4pe249bmV3IERhdGFWaWV3KG4uYnVmZmVyLG4uYnl0ZU9mZnNldCxuLmJ5dGVMZW5ndGgpO3JldHVybihuPWcubnMobiwwLDE4MzY0NzY1MTYpKT9nLmJMKG4pOk5hTn07Cmt4PWZ1bmN0aW9uKG4sVyxEKXtmb3IoO1ZMKG4sVyk7KXtsZXQgYj1jQShuLFcpO2lmKGIudHlwZT09PUQpcmV0dXJuIGI7Vys9Yi5zaXplfXJldHVybiBudWxsfTsKYXI9ZnVuY3Rpb24obil7cmV0dXJuIG49PT0xNzAxMDgyMjI3fHxuPT09MTgzNjAxOTU1OHx8bj09PTE4MzYwMTk1NzR8fG49PT0xODM1Mjk3MTIxfHxuPT09MTgzNTYyNjA4Nnx8bj09PTE5MzcwMDcyMTJ8fG49PT0xOTUzNjUzMDk0fHxuPT09MTk1MzY1MzA5OXx8bj09PTE4MzY0NzU3Njh9OwpLaDI9ZnVuY3Rpb24obil7dmFyIFc9Zy5ucyhuLDAsMTkzNzAxMTU1Nik7aWYoIVcpcmV0dXJuIG51bGw7Vz1reChuLFcuZGF0YU9mZnNldCs4LDE2MzUxNDg1OTMpfHxreChuLFcuZGF0YU9mZnNldCs4LDE2MzUxMzU1MzcpO2lmKCFXKXJldHVybiBudWxsO3ZhciBEPWt4KG4sVy5kYXRhT2Zmc2V0Kzc4LDE5MzY5OTUxNzIpLGI9a3gobixXLmRhdGFPZmZzZXQrNzgsMTkzNzEyNjI0NCk7aWYoIWIpcmV0dXJuIG51bGw7Vz1udWxsO2lmKEQpc3dpdGNoKEQuc2tpcCg0KSxaYyhEKSl7ZGVmYXVsdDpXPTA7YnJlYWs7Y2FzZSAxOlc9MjticmVhaztjYXNlIDI6Vz0xO2JyZWFrO2Nhc2UgMzpXPTI1NX12YXIgdj1EPW51bGwsaz1udWxsO2lmKGI9a3gobixiLmRhdGFPZmZzZXQsMTg4NjU0NzgxOCkpe2xldCBoPWt4KG4sYi5kYXRhT2Zmc2V0LDE4ODY1NDYwMjApLHg9a3gobixiLmRhdGFPZmZzZXQsMjAzNzY3MzMyOCk7aWYoIXgmJih4PWt4KG4sYi5kYXRhT2Zmc2V0LDE4MzYyNzk5MjApLAoheCkpcmV0dXJuIG51bGw7aCYmKGguc2tpcCg0KSxEPXlMKGgpLzY1NTM2LGs9eUwoaCkvNjU1MzYsdj15TChoKS82NTUzNik7bj1vcih4KTtuPW5ldyBEYXRhVmlldyhuLmJ1ZmZlcixuLmJ5dGVPZmZzZXQrOCxuLmJ5dGVMZW5ndGgtOCk7cmV0dXJuIG5ldyBoWShXLEQsayx2LG4pfXJldHVybiBudWxsfTsKZy54eD1mdW5jdGlvbihuKXtpZihuLmRhdGEuZ2V0VWludDgobi5kYXRhT2Zmc2V0KSl7dmFyIFc9bi5kYXRhO249bi5kYXRhT2Zmc2V0KzQ7Vz1XLmdldFVpbnQzMihuKSo0Mjk0OTY3Mjk2K1cuZ2V0VWludDMyKG4rNCl9ZWxzZSBXPW4uZGF0YS5nZXRVaW50MzIobi5kYXRhT2Zmc2V0KzQpO3JldHVybiBXfTsKTHM9ZnVuY3Rpb24obil7bj1uZXcgRF8obi5kYXRhLG4ub2Zmc2V0LG4uc2l6ZSxuLnR5cGUsbi5KKTt2YXIgVz1aYyhuKTtuLnNraXAoNyk7dmFyIEQ9RUQobik7aWYoVz09PTApe1c9RUQobik7dmFyIGI9RUQobil9ZWxzZSBXPWkzKG4pLGI9aTMobik7bi5za2lwKDIpO3ZhciB2PVVEKG4pLGs9W10saD1bXTtmb3IobGV0IHg9MDt4PHY7eCsrKXtsZXQgTD1FRChuKTtrLnB1c2goTCk7aC5wdXNoKEVEKG4pKTtuLnNraXAoNCl9cmV0dXJue3RpbWVzY2FsZTpELGY4OlcsTm86YixIczprLHFnOmh9fTsKZy5lUD1mdW5jdGlvbihuLFcpe2Zvcih2YXIgRD0wLGI9W107VkwobixEKTspe2xldCB2PWNBKG4sRCk7di50eXBlPT09VyYmYi5wdXNoKHYpO0Q9YXIodi50eXBlKT9EKzg6RCt2LnNpemV9cmV0dXJuIGJ9OwpnQT1mdW5jdGlvbihuKXtuLnNraXAoNCk7cmV0dXJue1d6OnUzKG4sMCksdmFsdWU6dTMobiwwKSx0aW1lc2NhbGU6RUQobiksbzc6RUQobiksZXZlbnREdXJhdGlvbjpFRChuKSxpZDpFRChuKSxadzp1MyhuKSxvZmZzZXQ6bi5vZmZzZXR9fTsKZy5xaz1mdW5jdGlvbihuKXt2YXIgVz1reChuLDAsMTcwMTY3MTc4Myk7aWYoIVcpcmV0dXJuIG51bGw7dmFyIEQ9Z0EoVyksYj1ELld6O0Q9UUwoRC5adyk7aWYobj1reChuLFcub2Zmc2V0K1cuc2l6ZSwxNzAxNjcxNzgzKSlpZihuPWdBKG4pLG49UUwobi5adyksRCYmbilmb3IobGV0IHYgb2YgT2JqZWN0LmtleXMobikpRFt2XT1uW3ZdO3JldHVybiBEP25ldyBYNShELGIpOm51bGx9OwpHaj1mdW5jdGlvbihuLFcpe2Zvcih2YXIgRD1reChuLDAsVyk7RDspe3ZhciBiPUQ7Yi50eXBlPTE5MzY0MTkxODQ7Yi5kYXRhLnNldFVpbnQzMihiLm9mZnNldCs0LDE5MzY0MTkxODQpO0Q9a3gobixELm9mZnNldCtELnNpemUsVyl9fTsKUElDPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5ucyhuLDAsMTkzNzAxMTU1NiksYj1nLm5zKG4sMCwxOTUzNjU0MTM2KTtpZighRHx8IWJ8fG4uZ2V0VWludDMyKEQub2Zmc2V0KzEyKT49MilyZXR1cm4gbnVsbDt2YXIgdj1uZXcgRGF0YVZpZXcoVy5idWZmZXIsVy5ieXRlT2Zmc2V0LFcubGVuZ3RoKSxrPWcubnModiwwLDE5MzcwMTE1NTYpO2lmKCFrKXJldHVybiBudWxsO1c9di5nZXRVaW50MzIoay5kYXRhT2Zmc2V0KzgpO2I9di5nZXRVaW50MzIoay5kYXRhT2Zmc2V0KzEyKTtpZihiIT09MTcwMTczMzIxNyYmYiE9PTE3MDE3MzMyMzgpcmV0dXJuIG51bGw7Yj1uZXcgT0t0KG4uYnl0ZUxlbmd0aCtXKTtkRihiLG4sMCxELm9mZnNldCsxMik7Yi5kYXRhLnNldEludDMyKGIub2Zmc2V0LDIpO2Iub2Zmc2V0Kz00O2RGKGIsbixELm9mZnNldCsxNixELnNpemUtMTYpO2RGKGIsdix2LmJ5dGVPZmZzZXQray5kYXRhT2Zmc2V0KzgsVyk7ZEYoYixuLEQub2Zmc2V0K0Quc2l6ZSxuLmJ5dGVMZW5ndGgtCihELm9mZnNldCtELnNpemUpKTtEPVsxODM2MDE5NTc0LDE5NTM2NTMwOTksMTgzNTI5NzEyMSwxODM1NjI2MDg2LDE5MzcwMDcyMTIsMTkzNzAxMTU1Nl07Zm9yKGxldCBoIG9mIEQpRD1nLm5zKG4sMCxoKSxiLmRhdGEuc2V0VWludDMyKEQub2Zmc2V0LEQuc2l6ZStXKTtuPWcubnMoYi5kYXRhLDAsMTk1MzY1NDEzNik7Yi5kYXRhLnNldFVpbnQzMihuLm9mZnNldCsxNiwyKTtyZXR1cm4gYi5kYXRhfTsKWktaPWZ1bmN0aW9uKG4pe3ZhciBXPWcubnMobiwwLDE5MzcwMTE1NTYpO2lmKCFXKXJldHVybiBudWxsO3ZhciBEPW4uZ2V0VWludDMyKFcuZGF0YU9mZnNldCsxMik7aWYoRCE9PTE3MDE3MzMyMTcmJkQhPT0xNzAxNzMzMjM4KXJldHVybiBudWxsO1c9a3gobixXLm9mZnNldCsyNCsoRD09PTE3MDE3MzMyMTc/Mjg6NzgpLDE5MzYyODkzODIpO2lmKCFXKXJldHVybiBudWxsO0Q9a3gobixXLm9mZnNldCs4LDE5MzU4OTQ2MzcpO2lmKCFEfHxuLmdldFVpbnQzMihELm9mZnNldCsxMikhPT0xNjY3MzkyMzcxKXJldHVybiBudWxsO1c9a3gobixXLm9mZnNldCs4LDE5MzU4OTQ2MzMpO2lmKCFXKXJldHVybiBudWxsO1c9a3gobixXLm9mZnNldCs4LDE5NTI4MDQ0NTEpO2lmKCFXKXJldHVybiBudWxsO0Q9bmV3IFVpbnQ4QXJyYXkoMTYpO2ZvcihsZXQgYj0wO2I8MTY7YisrKURbYl09bi5nZXRJbnQ4KFcub2Zmc2V0KzE2K2IpO3JldHVybiBEfTsKWXg9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW5ldyB0WShEKTtpZighJHgoYixuKSlyZXR1cm4hMTtiPXJBKGIpO2lmKCFzWShiLFcpKXJldHVybiExO2ZvcihuPTA7VzspVz4+Pj04LG4rKztXPWIuc3RhcnQrYi5wb3M7dmFyIHY9TmsoYiwhMCk7Yj1uKyhiLnN0YXJ0K2IucG9zLVcpK3Y7Yj1iPjk/cHMoYi05LDgpOnBzKGItMiwxKTtuPVctbjtELnNldFVpbnQ4KG4rKywyMzYpO2ZvcihXPTA7VzxiLmxlbmd0aDtXKyspRC5zZXRVaW50OChuKyssYltXXSk7cmV0dXJuITB9Owpwcz1mdW5jdGlvbihuLFcpe1d8fChXPU1hdGguY2VpbChNYXRoLmxvZyhuKzIpL01hdGgubG9nKDIpLzcpKTtmb3IodmFyIEQ9MTw8OC1XLGI9W107Yi5sZW5ndGg8Vy0xOyliLnVuc2hpZnQobiUyNTYpLG49TWF0aC5mbG9vcihuLzI1Nik7Yi51bnNoaWZ0KG58RCk7cmV0dXJuIGJ9OwpVNVo9ZnVuY3Rpb24obil7dmFyIFc9bmV3IHRZKG4pO1cuT0ooKTtpZigkeChXLFs0MDgxMjU1NDMsMzc0NjQ4NDI3LDE3NCwyMjRdKSlXPXJBKFcpO2Vsc2UgcmV0dXJuIG51bGw7Zm9yKHZhciBEPW49bnVsbDshSHcoVyk7KXt2YXIgYj1OayhXLCExKTtpZihiPT09MjE0MzIpc3dpdGNoKGZzKFcpKXtkZWZhdWx0Om49MDticmVhaztjYXNlIDE6bj0xO2JyZWFrO2Nhc2UgMzpuPTI7YnJlYWs7Y2FzZSAxNTpuPTI1NX1lbHNlIGI9PT0zMDMyMD9EPXJBKFcpOkpZKFcpfWlmKCFEKXJldHVybiBudWxsO2Zvcih2YXIgdixrPWI9Vz1udWxsOyFIdyhEKTspc3dpdGNoKE5rKEQsITEpKXtjYXNlIDMwMzIxOmlmKGZzKEQpIT09MylyZXR1cm4gbnVsbDticmVhaztjYXNlIDMwMzI0Olc9SUIoRCk7YnJlYWs7Y2FzZSAzMDMyMzprPUlCKEQpO2JyZWFrO2Nhc2UgMzAzMjU6Yj1JQihEKTticmVhaztjYXNlIDMwMzIyOnY9TmsoRCwhMCk7dj1TUChELHYpO3Y9bmV3IERhdGFWaWV3KHYuYnVmZmVyLAp2LmJ5dGVPZmZzZXQsdi5ieXRlTGVuZ3RoKTticmVhaztkZWZhdWx0OkpZKEQpfXJldHVybiB2P25ldyBoWShuLFcsayxiLHYpOm51bGx9OwokeD1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRD0wO0Q8Vy5sZW5ndGg7RCsrKXtpZighc1kobixXW0RdKSlyZXR1cm4hMTtEIT09Vy5sZW5ndGgtMSYmTmsobiwhMCl9cmV0dXJuITB9OwpyQT1mdW5jdGlvbihuKXt2YXIgVz1OayhuLCEwKSxEPW4uTi5ieXRlT2Zmc2V0K24ucG9zO0Q9bmV3IERhdGFWaWV3KG4uTi5idWZmZXIsRCxNYXRoLm1pbihXLG4uTi5idWZmZXIuYnl0ZUxlbmd0aC1EKSk7RD1uZXcgdFkoRCxuLnN0YXJ0K24ucG9zKTtuLnBvcys9VztyZXR1cm4gRH07CnNZPWZ1bmN0aW9uKG4sVyxEPSExKXtpZihIdyhuKSlyZXR1cm4hMTtmb3IodmFyIGI9bi5wb3M7TmsobiwhMSkhPT1XOylpZihKWShuKSxiPW4ucG9zLEh3KG4pKXJldHVybiExO0QmJihuLnBvcz1iKTtyZXR1cm4hMH07Ck5rPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9QVkobik7aWYoRD09PTEpe0Q9MDtmb3IoVz0wO1c8NztXKyspRD1EKjI1NitBWShuKTtyZXR1cm4gRH12YXIgYj0xMjg7Zm9yKGxldCB2PTA7djw2JiZiPkQ7disrKUQ9RCoyNTYrQVkobiksYio9MTI4O3JldHVybiBXP0QtYjpEfTsKSHc9ZnVuY3Rpb24obil7cmV0dXJuIG4ucG9zPj1uLk4uYnl0ZUxlbmd0aH07CmZzPWZ1bmN0aW9uKG4pe3ZhciBXPU5rKG4sITApLEQ9QVkobik7Zm9yKGxldCBiPTE7YjxXO2IrKylEPUQqMjU2K0FZKG4pO3JldHVybiBEfTsKSlk9ZnVuY3Rpb24obil7dmFyIFc9TmsobiwhMCk7bi5wb3MrPVd9OwpJQj1mdW5jdGlvbihuKXt2YXIgVz1OayhuLCEwKSxEPTA7Vz09PTQ/RD1uLk4uZ2V0RmxvYXQzMihuLnBvcyk6Vz09PTgmJihEPW4uTi5nZXRGbG9hdDY0KG4ucG9zKSk7bi5wb3MrPVc7cmV0dXJuIER9OwpTUD1mdW5jdGlvbihuLFcpe3ZhciBEPW5ldyBVaW50OEFycmF5KG4uTi5idWZmZXIsbi5OLmJ5dGVPZmZzZXQrbi5wb3MsVyk7bi5wb3MrPVc7cmV0dXJuIER9OwptdD1mdW5jdGlvbihuKXt2YXIgVz1OayhuLCEwKTtyZXR1cm4gcFIoU1AobixXKSl9OwpBWT1mdW5jdGlvbihuKXtyZXR1cm4gbi5OLmdldFVpbnQ4KG4ucG9zKyspfTsKeUhyPWZ1bmN0aW9uKG4pe2lmKCFzWShuLDQ0MDc4Njg1MSwhMCkpcmV0dXJuIG51bGw7dmFyIFc9bi5wb3M7TmsobiwhMSk7dmFyIEQ9TmsobiwhMCkrbi5wb3MtVztuLnBvcz1XK0Q7aWYoIXNZKG4sNDA4MTI1NTQzLCExKSlyZXR1cm4gbnVsbDtOayhuLCEwKTtpZighc1kobiwzNTcxNDkwMzAsITApKXJldHVybiBudWxsO3ZhciBiPW4ucG9zO05rKG4sITEpO3ZhciB2PU5rKG4sITApK24ucG9zLWI7bi5wb3M9Yit2O2lmKCFzWShuLDM3NDY0ODQyNywhMCkpcmV0dXJuIG51bGw7dmFyIGs9bi5wb3M7TmsobiwhMSk7dmFyIGg9TmsobiwhMCkrbi5wb3Mtayx4PW5ldyBVaW50OEFycmF5KEQrMTIrditoKSxMPW5ldyBEYXRhVmlldyh4LmJ1ZmZlcik7eC5zZXQobmV3IFVpbnQ4QXJyYXkobi5OLmJ1ZmZlcixuLk4uYnl0ZU9mZnNldCtXLEQpKTtMLnNldFVpbnQzMihELDQwODEyNTU0Myk7TC5zZXRVaW50MzIoRCs0LDMzNTU0NDMxKTtMLnNldFVpbnQzMihEKzgsNDI5NDk2NzI5NSk7Cnguc2V0KG5ldyBVaW50OEFycmF5KG4uTi5idWZmZXIsbi5OLmJ5dGVPZmZzZXQrYix2KSxEKzEyKTt4LnNldChuZXcgVWludDhBcnJheShuLk4uYnVmZmVyLG4uTi5ieXRlT2Zmc2V0K2ssaCksRCsxMit2KTtyZXR1cm4geH07CktzPWZ1bmN0aW9uKG4pe3ZhciBXPW4ucG9zO24ucG9zPTA7dmFyIEQ9MUU2OyR4KG4sWzQwODEyNTU0MywzNTcxNDkwMzAsMjgwNzcyOV0pJiYoRD1mcyhuKSk7bi5wb3M9VztyZXR1cm4gRH07ClB3PWZ1bmN0aW9uKG4pe2lmKCFPWShuKXx8IXNZKG4sNTI0NTMxMzE3KSlyZXR1cm4hMTtOayhuLCEwKTtyZXR1cm4hMH07CkVFWj1mdW5jdGlvbihuLFcpe3ZhciBEPW4ucG9zO24ucG9zPTA7aWYobi5OLmdldFVpbnQ4KG4ucG9zKSE9PTE2MCYmIVB3KG4pfHwhc1kobiwxNjApKXJldHVybiBuLnBvcz1ELE5hTjtOayhuLCEwKTt2YXIgYj1uLnBvcztpZighc1kobiwxNjEpKXJldHVybiBuLnBvcz1ELE5hTjtOayhuLCEwKTtBWShuKTt2YXIgdj1BWShuKTw8OHxBWShuKTtuLnBvcz1iO2lmKCFzWShuLDE1NSkpcmV0dXJuIG4ucG9zPUQsTmFOO2I9ZnMobik7bi5wb3M9RDtyZXR1cm4oditiKSpXLzFFOX07Ck9ZPWZ1bmN0aW9uKG4pe2lmKG4uT0ooKSl7aWYoIXNZKG4sNDA4MTI1NTQzKSlyZXR1cm4hMTtOayhuLCEwKX1yZXR1cm4hMH07ClpfPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vy5pbmRleE9mKCI/Iik7aWYoRD4wKXtsZXQgYj1nNygxLDUwLFcuc3Vic3RyaW5nKEQrMSkpO2cuYV8oYixmdW5jdGlvbih2LGspe3RoaXMuc2V0KGssdil9LG4pOwpXPVcuc3Vic3RyaW5nKDAsRCl9Vz1pcCgxNSw4MjUsVyk7Zy5hXyhXLGZ1bmN0aW9uKGIsdil7dGhpcy5zZXQodixiKX0sbil9OwppS1U9ZnVuY3Rpb24obil7dmFyIFc9bi5BTy5XRCgpLEQ9W107Zy5hXyhuLk4sKHYsayk9PntELnB1c2goYCR7a309JHt2fWApfSk7CmlmKCFELmxlbmd0aClyZXR1cm4gVzt2YXIgYj1ELmpvaW4oIiYiKTtuPVAwKDgzLDY1ODgsbi5BTyk/IiYiOiI/IjtyZXR1cm4gVytuK2J9OwpVWT1mdW5jdGlvbihuLFcpe25bV118fChuW1ddPW5ldyB1VGkpO3JldHVybiBuW1ddfTsKeWY9ZnVuY3Rpb24obixXPSExKXtXJiYobi5KKz0xKTtuLk4rPTF9OwpvRWk9ZnVuY3Rpb24obixXPSExKXtuLnRpbWVkT3V0Kz0xO1cmJnlmKG4sITApfTsKemo9ZnVuY3Rpb24obixXPSExKXtXJiYobi5YPSgwLGcuUikoKSxuLko9MCk7bi5WPSgwLGcuUikoKTtuLnN0YXJ0ZWQ9MDtuLnRpbWVkT3V0PTA7bi5OPTB9OwpsTD1mdW5jdGlvbihuLFcsRD0hMSl7aWYoRClyZXR1cm4gMTw8TWF0aC5taW4obi5KLDUpO0Q9bi5zdGFydGVkK24uTio0O1cmJihEKz1uLlcpO0Q9TWF0aC5tYXgoMCxELTMpO3JldHVybiAxLjYqKkR9OwpqUD1mdW5jdGlvbihuLFcsRCl7aWYoZ1ooMzgsMTIwMixuLk4pKXJldHVybiExO3ZhciBiPVVZKEQsUjAoMzUsMzUwNyxuLk4pKTtpZihiLnRpbWVkT3V0PDEmJmIuTjwxKXJldHVybiExO2I9Yi50aW1lZE91dCtiLk47bj1UaihuLFcpO0Q9VVkoRCxSMCgzMiwzNTA0LG4pKTtyZXR1cm4gRC50aW1lZE91dCtELk4rMDxifTsKVGo9ZnVuY3Rpb24obixXKXtXPVc/Vy5vTTohMTtuLlh8fChuLlg9WGQobi5XLFcpKTtyZXR1cm4gbi5YfTsKQnc9ZnVuY3Rpb24obixXLEQpe249Vz9UaihuLEQpOm4uTjtyZXR1cm4gbmV3IENzKG4pfTsKRjU9ZnVuY3Rpb24obixXLEQpe3JldHVybiBSMCgzNSwzNTA3LFc/VGoobixEKTpuLk4pfTsKd0E9ZnVuY3Rpb24obixXLEQsYix2KXsrK24uSjtXJiYrK24uVjtSMCgzMiwzNTA0LEQuQU8pLnN0YXJ0c1dpdGgoInJlZGlyZWN0b3IuIikmJihuLk49bi5XLmNsb25lKCksZGVsZXRlIG4uWCxiLnBFJiZkZWxldGUgdltSMCg2NywzNTM5LG4uTildKX07Ck1rPWZ1bmN0aW9uKG4pe3JldHVybiBuP2Ake24uaXRhZ3x8IiJ9OyR7bi5sbXR8fDB9OyR7bi54dGFnc3x8IiJ9YDoiIn07ClFmPWZ1bmN0aW9uKG4sVyl7bi5pbmZvJiZuLmluZm8udmlkZW8mJm4uaW5mby52aWRlby5wcm9qZWN0aW9uVHlwZT09PSJNRVNIIiYmIW4uTyYmKGcuUkIobi5pbmZvKT9uLk89S2gyKFcpOm4uaW5mby5xSCgpJiYobi5PPVU1WihXKSkpfTsKY3c9ZnVuY3Rpb24obixXKXtyZXR1cm4gTWsoZy5WZihuLmluZm8sVykpfTsKbno9ZnVuY3Rpb24obil7bj1uLnNwbGl0KCItIik7dmFyIFc9TnVtYmVyKG5bMF0pLEQ9TnVtYmVyKG5bMV0pO2lmKCFpc05hTihXKSYmIWlzTmFOKEQpJiZuLmxlbmd0aD09PTImJihuPW5ldyBhQihXLEQpLCFpc05hTihuLnN0YXJ0KSYmIWlzTmFOKG4uZW5kKSYmIWlzTmFOKG4ubGVuZ3RoKSYmbi5sZW5ndGg+MCkpcmV0dXJuIG59OwpXXz1mdW5jdGlvbihuLFcpe3JldHVybiBuZXcgYUIobixuK1ctMSl9OwpESj1mdW5jdGlvbihuKXtpZighbilyZXR1cm4gbmV3IGFCKDAsMCk7dmFyIFc9TnVtYmVyKG4uc3RhcnQpO249TnVtYmVyKG4uZW5kKTtpZighaXNOYU4oVykmJiFpc05hTihuKSYmKFc9bmV3IGFCKFcsbiksVy5sZW5ndGg+MCkpcmV0dXJuIFd9OwpkNXc9ZnVuY3Rpb24obil7bi5sZW5ndGg9PT0xfHxnLmR6KG4sRD0+ISFELnJhbmdlKTsKZm9yKHZhciBXPTE7VzxuLmxlbmd0aDtXKyspO1c9bltuLmxlbmd0aC0xXTtyZXR1cm4gbmV3IGFCKG5bMF0ucmFuZ2Uuc3RhcnQrblswXS5OLFcucmFuZ2Uuc3RhcnQrVy5OK1cuSi0xKX07CmJUPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4uUEo9PT1XLlBKP24ucmFuZ2UmJlcucmFuZ2U/bi5yYW5nZS5zdGFydCtuLk4rbi5KPT09Vy5yYW5nZS5zdGFydCtXLk46bi5qJD09PVcuaiQ/bi5OK24uSj09PVcuTjpuLmokKzE9PT1XLmokJiZXLk49PT0wJiZuLmFaOiExfTsKdl89ZnVuY3Rpb24obil7bi5YPW4uc2VnbWVudFN0YXJ0VGltZTtuLks9bi5XO24uaj1uLlgrbi5LfTsKa049ZnVuY3Rpb24obil7cmV0dXJuIG4ucmFuZ2U/bi5qOk1hdGgubWluKG4uc2VnbWVudFN0YXJ0VGltZStNYXRoLm1pbihuLk4vbi5QSi5pbmZvLk5zLG4uVykrKG4ucmFuZ2U/bi5LOk1hdGgubWluKG4uVyxuLkovbi5QSi5pbmZvLk5zKSksbi5zZWdtZW50U3RhcnRUaW1lK24uVyl9Owp6QTI9ZnVuY3Rpb24obixXLEQpe3ZhciBiPSEoIVd8fFcuUEohPT1uLlBKfHxXLnR5cGUhPT1uLnR5cGV8fFcuaiQhPT1uLmokKTtyZXR1cm4gRD9iJiYhIVcmJihuLnJhbmdlJiZXLnJhbmdlP1cucmFuZ2UuZW5kPT09bi5yYW5nZS5lbmQ6Vy5yYW5nZT09PW4ucmFuZ2UpJiZXLk4rVy5KPT09bi5OK24uSjpifTsKaEo9ZnVuY3Rpb24obil7cmV0dXJuIG4udHlwZT09PTF8fG4udHlwZT09PTJ9Owp4Tj1mdW5jdGlvbihuKXtyZXR1cm4gbi50eXBlPT09M3x8bi50eXBlPT09Nn07Ckx6PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGJUKG4sVyl8fE1hdGguYWJzKG4uai1XLlgpPD0xRS02fHxuLmokKzE9PT1XLmokJiZXLk49PT0wJiZuLmFaPyEwOiExfTsKZXg9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5qJCE9PVcuaiQmJlcuaiQhPT1uLmokKzF8fG4udHlwZSE9PVcudHlwZT8hMTpiVChuLFcpPyEwOk1hdGguYWJzKG4uWC1XLlgpPD0xRS02JiZuLmokPT09Vy5qJD8hMTpMeihuLFcpfTsKZ2s9ZnVuY3Rpb24obil7cmV0dXJuIG4uaiQrKG4uYVo/MTowKX07Clh4PWZ1bmN0aW9uKG4pe3ZhciBXPXt9O1cuaXRhZz1uLlBKLmluZm8uaXRhZztXLnR5cGU9YCR7bi50eXBlfWA7Vy5zcmM9YCR7bi5zb3VyY2V9YDtXLnNlZ3NyYz1uLlk7Vy5zZWc9U3RyaW5nKG4uaiQpO24ucmFuZ2UmJihXLnJhbmdlPWAke24ucmFuZ2Uuc3RhcnQrbi5OfS0ke24ucmFuZ2Uuc3RhcnQrbi5OK24uSi0xfWApO1cudGltZT1gJHtuLlgudG9GaXhlZCgxKX0tJHsobi5YK24uSykudG9GaXhlZCgxKX1gO1cub2ZmPVN0cmluZyhuLk4pO1cubGVuPVN0cmluZyhuLkopO24uYVomJihXLmVuZD0iMSIpO24uVigpJiYoVy5lb3M9IjEiKTtuLmNsaXBJZCYmKFcuY2lkPW4uY2xpcElkKTtyZXR1cm4gV307CmxEeD1mdW5jdGlvbihuKXtyZXR1cm4gbmV3IHFJKG4udHlwZSxuLlBKLG4ucmFuZ2UsImdldEVtcHR5U3R1YkJlZm9yZSIrbi5ZLG4uaiQsbi5zZWdtZW50U3RhcnRUaW1lLDAsbi5OLDAsdm9pZCAwLG4udkQsbi5jbGlwSWQsbi5ELG4uYmQsbi5yZXF1ZXN0VG9rZW4pfTsKVEQxPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgcUkobi50eXBlLG4uUEosbi5yYW5nZSwiZ2V0RW1wdHlTdHViQWZ0ZXIiK24uWSxuLmokLG4uc2VnbWVudFN0YXJ0VGltZStuLlcsMCxuLk4rbi5KLDAsdm9pZCAwLG4udkQsbi5jbGlwSWQsbi5ELG4uYmQsbi5yZXF1ZXN0VG9rZW4pfTsKR1A9ZnVuY3Rpb24obixXLEQsYil7cmV0dXJuIG5ldyBxSShuLnR5cGUsbi5QSixuLnJhbmdlLCJyZXNsaWNlIituLlksbi5qJCxuLnNlZ21lbnRTdGFydFRpbWUsbi5XLFcsRCxiLG4udkQsbi5jbGlwSWQsbi5ELG4uYmQsbi5yZXF1ZXN0VG9rZW4pfTsKdEo9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5QSiE9PVcuUEo/ITE6bi5yYW5nZSYmVy5yYW5nZT9uLnJhbmdlLnN0YXJ0K24uTj49Vy5yYW5nZS5zdGFydCtXLk4mJm4ucmFuZ2Uuc3RhcnQrbi5OK24uSjw9Vy5yYW5nZS5zdGFydCtXLk4rVy5KOm4uaiQ9PT1XLmokJiZuLk4+PVcuTiYmKG4uTituLko8PVcuTitXLkp8fFcuYVopfTsKJE49ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5QSiE9PVcuUEo/ITE6bi5jSigpJiZXLnR5cGU9PT0zJiZuLlBKLk4oKT8obj1uLlBKLlZRKG4pLGcub00obixEPT4kTihELFcpKSk6bi5qJD09PVcuaiQmJiEhVy5KJiZXLk4rVy5KPm4uTiYmVy5OK1cuSjw9bi5OK24uSn07Ck92PWZ1bmN0aW9uKG4pe3ZhciBXPW4uZ2V0VmlkZW9EYXRhKCksRD1uLmg1KCksYj1ELmVfKCksdj1uLkcoKSxrPW4uZDAoKSxoPWsuVDEqOC8xMDI0LHg9ay54WS8xMDI0LEw9ay5LVCxlPWsuU1UsRz1rLk1BLHI9RC5nZXRDdXJyZW50VGltZSgpLnRvRml4ZWQoMiksTj1yayhELkooKSwiLCIsMyk7dmFyIEg9IiI7aWYoVy5pc0RhaUVuYWJsZWQoKSl7SD1OSShXKT9IKyJNViI6Vy5lbmFibGVTZXJ2ZXJTdGl0Y2hlZERhaT9IKyJTUyI6SCsiQ1MiO0g9Vy5ERigpP0grIkxJRkEsICI6SCsiREFJLCAiO1cuYlYmJihIKz0iREFJRkIsICIpO3ZhciBBPWsuZEM7QSYmKEgrPUEpfWVsc2UgVy5LZj9IKz0iQ1NEQUksICI6Vy5KbD9IKz0iRFNEQUksICI6Vy5qRiYmKEgrPSJVU0RBSSwgIik7cHooVykmJiFXLkRGKCkmJihIKz0iTElGQUUsICIpO2cuWU4oVykmJihIKz0iU0FCUiwgIik7aWYoVy5mZXRjaFR5cGUpe3N3aXRjaChXLmZldGNoVHlwZSl7Y2FzZSAib25lc2llIjpBPSJvIjticmVhazsKY2FzZSAiZ3AiOkE9ImdwIjticmVhaztkZWZhdWx0OkE9Imd2aSJ9SCs9YHZkOiR7QX0sIGB9KEE9di5qXygpKSYmKEg9QS5pc0FzbWpzP0grIndhLCAiOkgrIncsICIpO0grPWBzOiR7R30gdDoke3J9IGI6JHtOfSBgO0QuaXNTZWVraW5nKCkmJihIKz0iUyIpO0QuaXNQYXVzZWQoKSYmKEgrPSJQIik7RC5pc0VuZGVkKCkmJihIKz0iRSIpO24uaXNPcmNoZXN0cmF0aW9uTGVhZGVyKCkmJihIKz0iIEwiKTsoRD1rLmVJKSYmKEgrPWAgbDoke0QudG9GaXhlZCgpfWApO0Q9ay5jdXJyZW50VGltZTtHPVcueW47RCYmRD5HLnN0YXJ0JiZEPEcuZW5kJiYoSCs9IiBhcyIpO0Q9UFYob0wpKCJfc3RhcnQiLHZvaWQgMCk7Rz1bXTtmb3IoeSBvZlsicGxfaSIsInZpciIsIm9yX3AiLCJvcmZiIiwicGJzIl0pKHI9UFYob0wpKHksdm9pZCAwKSkmJkQmJihyLT1ELEcucHVzaChgJHt5fToke01hdGgucm91bmQocil9YCkpO3ZhciB5PUcuam9pbigiICIpO0Q9Zy5IXygpO0c9Zy5meihuKS52VDtyPQpXLlcmJiFXLlcuTigpPyJkaXNwbGF5Om5vbmUiOiIiO2lmKChOPVcuY2xpZW50UGxheWJhY2tOb25jZSkmJk4ubGVuZ3RoPT0xNil7Tis9IkFBQUEiO0E9MDt2YXIgVD0iIjtmb3IobGV0IEM9MDtDPDIwO0MrKylpZihBPShBPDw2KSsiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODktXyIuaW5kZXhPZihOLmNoYXJBdChDKSksQyU1PT00KXtsZXQgUT0iIjtmb3IobGV0IFY9MDtWPDY7VisrKVE9IjAxMjM0NTY3ODlBQkNERUZHSEpLTU5QUVJTVFZXWFlaIi5jaGFyQXQoQSYzMSkrUSxBPj49NTtUKz1RfU49YCR7VC5zdWJzdHIoMCw0KX0gJHtULnN1YnN0cig0LDQpfSAke1Quc3Vic3RyKDgsNCl9ICR7VC5zdWJzdHIoMTIsNCl9ICR7VC5zdWJzdHIoMTYsNCl9YH1lbHNlIE49IiI7aD17dmlkZW9faWRfYW5kX2NwbjpTdHJpbmcoVy52aWRlb0lkKSsiIC8gIitOLGNvZGVjczoiIixkaW1zX2FuZF9mcmFtZXM6IiIsYmFuZHdpZHRoX2ticHM6YCR7aC50b0ZpeGVkKDApfSBLYnBzYCwKYnVmZmVyX2hlYWx0aF9zZWNvbmRzOmAke0wudG9GaXhlZCgyKX0gc2AsZGF0ZTpgJHsobmV3IERhdGUpLnRvU3RyaW5nKCl9YCxkcm1fc3R5bGU6ZT8iIjoiZGlzcGxheTpub25lIixkcm06ZSxkZWJ1Z19pbmZvOkgsZXh0cmFfZGVidWdfaW5mbzoiIixiYW5kd2lkdGhfc3R5bGU6cixuZXR3b3JrX2FjdGl2aXR5X3N0eWxlOnIsbmV0d29ya19hY3Rpdml0eV9ieXRlczpgJHt4LnRvRml4ZWQoMCl9IEtCYCxzaGFkZXJfaW5mbzpHLHNoYWRlcl9pbmZvX3N0eWxlOkc/IiI6ImRpc3BsYXk6bm9uZSIscGxheWJhY2tfY2F0ZWdvcmllczoiIn07eD1gJHtiLmNsaWVudFdpZHRofXgke2IuY2xpZW50SGVpZ2h0fWArKEQ+MT9gKiR7RC50b0ZpeGVkKDIpfWA6IiIpO0w9Ii0iO2sudG90YWxWaWRlb0ZyYW1lcyYmKEw9YCR7ay5kcm9wcGVkVmlkZW9GcmFtZXN8fDB9IGRyb3BwZWQgb2YgJHtrLnRvdGFsVmlkZW9GcmFtZXN9YCk7aC5kaW1zX2FuZF9mcmFtZXM9YCR7eH0gLyAke0x9YDtlPW4uZ2V0Vm9sdW1lKCk7Cm49Vy5oZzt4PW4uTjtMPU1hdGgucm91bmQoZSk7ZT1NYXRoLnJvdW5kKGUqKHg/LlpyPz8xKSk7SD0iIjtXLlg/LmF1ZGlvLk4/SD0iIFZCIjpXLlg/LmF1ZGlvLlcmJihIPSIgRFJDIik7RD0iIjt4Py5mZCE9bnVsbD9EKz1gY29udC4ke3guZmQudG9GaXhlZCgxKX1kQmA6bi5RTyE9bnVsbCYmKEQrPWBsaXZlLiR7bi5RTy50b0ZpeGVkKDEpfWRCYCk7eD8ucHkhPW51bGwmJihEKz1gIHRndC4ke3gucHkudG9GaXhlZCgxKX1kQmApO0QmJihEPWAgKCR7RH0pYCk7aC52b2x1bWU9YCR7TH0lLyR7ZX0lJHtIfSR7RH1gO2gucmVzb2x1dGlvbj1gJHtiLnZpZGVvV2lkdGh9eCR7Yi52aWRlb0hlaWdodH1gO2lmKGI9Vy5KKXtpZihuPWIudmlkZW8peD1uLmZwcyx4PjEmJihoLnJlc29sdXRpb24rPWBAJHt4fWApLCh4PWsuTHQpJiZ4LnZpZGVvJiYoaC5yZXNvbHV0aW9uKz1gIC8gJHt4LnZpZGVvLndpZHRofXgke3gudmlkZW8uaGVpZ2h0fWAseC52aWRlby5mcHM+MSYmKGgucmVzb2x1dGlvbis9CmBAJHt4LnZpZGVvLmZwc31gKSksaC5jb2RlY3M9SkooYiksIVcuWHx8Yi5hdWRpbyYmYi52aWRlbz9iLkFhJiYoaC5jb2RlY3MrPWAgLyAke2IuQWF9QWApOmguY29kZWNzKz1gIC8gJHtKSihXLlgpfWAsbi5OfHxuLnByaW1hcmllcz8oeD1uLk58fCJ1bmtub3duIix4PT09InNtcHRlMjA4NCI/eD1gJHt4fSAoUFEpYDp4PT09ImFyaWItc3RkLWI2NyImJih4PWAke3h9IChITEcpYCksaC5jb2xvcj1gJHt4fSAvICR7bi5wcmltYXJpZXN8fCJ1bmtub3duIn1gLGguY29sb3Jfc3R5bGU9IiIpOmguY29sb3Jfc3R5bGU9ImRpc3BsYXk6bm9uZSI7aWYoYi5kZWJ1Z0luZm8pe2guZm10X2RlYnVnX2luZm89IiI7Zm9yKHZhciB6IG9mIGIuZGVidWdJbmZvKWguZm10X2RlYnVnX2luZm8rPWAke3oubGFiZWx9OiR7ei50ZXh0fSBgfWguZm10X2RlYnVnX2luZm9fc3R5bGU9aC5mbXRfZGVidWdfaW5mbyYmaC5mbXRfZGVidWdfaW5mby5sZW5ndGg+MD8iIjoiZGlzcGxheTpub25lIn16PVcuaXNMaXZlUGxheWJhY2s7CmI9Vy5YZztoLmxpdmVfbW9kZV9zdHlsZT16fHxiPyIiOiJkaXNwbGF5Om5vbmUiO2gubGl2ZV9sYXRlbmN5X3N0eWxlPXo/IiI6ImRpc3BsYXk6bm9uZSI7aWYoYiloLmxpdmVfbW9kZT0iUG9zdC1MaXZlIisoSTQoVyk/IiBNYW5pZmVzdGxlc3MiOiIiKTtlbHNlIGlmKHope2I9ay5wVDtoLmxpdmVfbGF0ZW5jeV9zZWNzPWAke2IudG9GaXhlZCgyKX1zYDt6PUk0KFcpPyJNYW5pZmVzdGxlc3MsICI6IiI7Vy5SSSYmKHorPSJXaW5kb3dlZCwgIik7bj0iVW5jZXJ0YWluIjtpZihiPj0wJiZiPDEyMClpZihXLmxhdGVuY3lDbGFzcyYmVy5sYXRlbmN5Q2xhc3MhPT0iVU5LTk9XTiIpc3dpdGNoKFcubGF0ZW5jeUNsYXNzKXtjYXNlICJOT1JNQUwiOm49Ik9wdGltaXplZCBmb3IgTm9ybWFsIExhdGVuY3kiO2JyZWFrO2Nhc2UgIkxPVyI6bj0iT3B0aW1pemVkIGZvciBMb3cgTGF0ZW5jeSI7YnJlYWs7Y2FzZSAiVUxUUkFMT1ciOm49Ik9wdGltaXplZCBmb3IgVWx0cmEgTG93IExhdGVuY3kiOwpicmVhaztkZWZhdWx0Om49IlVua25vd24gTGF0ZW5jeSBTZXR0aW5nIn1lbHNlIG49U3goVyk/Ik9wdGltaXplZCBmb3IgTG93IExhdGVuY3kiOiJPcHRpbWl6ZWQgZm9yIFNtb290aCBTdHJlYW1pbmciO3orPW47KGI9ay5GSSkmJih6Kz1gLCBzZXEgJHtiLnNlcXVlbmNlfWApO2gubGl2ZV9tb2RlPXp9di5leHBlcmltZW50cy5adCgpLk4uUVEoaldTKT9rLmlzR2FwbGVzcyYmIWsuZFQmJihoLnBsYXliYWNrX2NhdGVnb3JpZXM9ay5Ibz9oLnBsYXliYWNrX2NhdGVnb3JpZXMrIkdhcGxlc3MgIjpoLnBsYXliYWNrX2NhdGVnb3JpZXMrIlF1ZXVlZCAiKTohay5pc0dhcGxlc3N8fEFKKFcpJiZrLmRUfHwoaC5wbGF5YmFja19jYXRlZ29yaWVzKz0iR2FwbGVzcyAiKTtoLnBsYXliYWNrX2NhdGVnb3JpZXNfc3R5bGU9aC5wbGF5YmFja19jYXRlZ29yaWVzPyIiOiJkaXNwbGF5Om5vbmUiO2guYmFuZHdpZHRoX3NhbXBsZXM9ay5VJDtoLm5ldHdvcmtfYWN0aXZpdHlfc2FtcGxlcz1rLmRjOwpoLmxpdmVfbGF0ZW5jeV9zYW1wbGVzPWsuc0k7aC5idWZmZXJfaGVhbHRoX3NhbXBsZXM9ay5qeDt2PWcubU0oVyk7aWYoVy5jb3RufHx2KWguY290bl9hbmRfbG9jYWxfbWVkaWE9YCR7Vy5jb3RuP1cuY290bjoibnVsbCJ9IC8gJHt2fWA7aC5jb3RuX2FuZF9sb2NhbF9tZWRpYV9zdHlsZT1oLmNvdG5fYW5kX2xvY2FsX21lZGlhPyIiOiJkaXNwbGF5Om5vbmUiO0t6KFcsIndlYl9wbGF5ZXJfcmVsZWFzZV9kZWJ1ZyIpPyhoLnJlbGVhc2VfbmFtZT1JWzY1XSxoLnJlbGVhc2Vfc3R5bGU9IiIpOmgucmVsZWFzZV9zdHlsZT0iZGlzcGxheTpub25lIjtoLmRlYnVnX2luZm8mJnkubGVuZ3RoPjAmJmguZGVidWdfaW5mby5sZW5ndGgreS5sZW5ndGg8PTYwP2guZGVidWdfaW5mbys9IiAiK3k6aC5leHRyYV9kZWJ1Z19pbmZvPXk7aC5leHRyYV9kZWJ1Z19pbmZvX3N0eWxlPWguZXh0cmFfZGVidWdfaW5mbyYmaC5leHRyYV9kZWJ1Z19pbmZvLmxlbmd0aD4wPyIiOiJkaXNwbGF5Om5vbmUiOwpyZXR1cm4gaH07ClBfPWZ1bmN0aW9uKG4sVyxEKXtuLkorPVcuSjtuLnJhbmdlJiYobi5LKz1XLkspO24uaj1XLmo7bi5hWj1XLmFaO0QmJlcuYVomJihuLlc9Vy5XLG4uc2VnbWVudFN0YXJ0VGltZT1XLnNlZ21lbnRTdGFydFRpbWUsbi5YPW4uc2VnbWVudFN0YXJ0VGltZSxuLnJhbmdlfHwobi5LPW4uVykpfTsKWko9ZnVuY3Rpb24obixXKXt2YXIgRD1XLmokO24uWT0idXBkYXRlV2l0aFNlZ21lbnRJbmZvIjtuLmokPUQ7aWYobi5zZWdtZW50U3RhcnRUaW1lIT09Vy5zdGFydFRpbWV8fG4uVyE9PVcuZHVyYXRpb24pbi5zZWdtZW50U3RhcnRUaW1lPVcuc3RhcnRUaW1lLG4uVz1XLmR1cmF0aW9uLHZfKG4pfTsKVXY9ZnVuY3Rpb24obil7cmV0dXJuIWhKKG4uQXdbbi5Bdy5sZW5ndGgtMV0pfTsKeXM9ZnVuY3Rpb24obil7cmV0dXJuIG4uQXdbbi5Bdy5sZW5ndGgtMV0uY0ooKX07CmcuRXY9ZnVuY3Rpb24obixXLEQpe0Q9bi5wUz09PW51bGw/bi5YYi5wUyhXLEQsbi5Bd1swXS50eXBlKTpuLnBTO2lmKG4uTil7Vz1EP1hkKG4uTixXLm9NKTpuLk47dmFyIGI9bmV3IENzKFcpO2IuZ2V0KCJhbHIiKXx8Yi5zZXQoImFsciIsInllcyIpO24uSiYmWl8oYixuLkopfWVsc2UvaHR0cFtzXT86XC9cLy8udGVzdChuLkopP2I9bmV3IENzKG5ldyBnLndaKG4uSikpOihiPUJ3KG4uWGIsRCxXKSxuLkomJlpfKGIsbi5KKSk7KFc9bi5yYW5nZSk/Yi5zZXQoInJhbmdlIixXLnRvU3RyaW5nKCkpOm4uQXdbMF0uUEouRCgpJiZuLkF3Lmxlbmd0aD09PTEmJm4uQXdbMF0uTiYmYi5zZXQoInJhbmdlIixgJHtuLkF3WzBdLk59LWApO24ucmVxdWVzdElkJiZiLnNldCgicmVxX2lkIixuLnJlcXVlc3RJZCk7aXNOYU4obi5aQSl8fGIuc2V0KCJoZWFkbSIsbi5aQS50b1N0cmluZygpKTtpc05hTihuLmopfHxiLnNldCgibWZmYSIsYCR7bi5qfW1zYCk7bi51cmxQYXJhbXMmJmcuYV8obi51cmxQYXJhbXMsCih2LGspPT57Yi5zZXQoayx2KX0pOwpyZXR1cm4gYn07CmRrPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLkcoKSx2PXtodG1sNVByZWZlcmVuY2U6IkhUTUw1X1BSRUZfV0FOVFMiLGxhY3RNaWxsaXNlY29uZHM6U3RyaW5nKGcudkkoKSkscmVmZXJlcjpkb2N1bWVudC5sb2NhdGlvbi50b1N0cmluZygpLHNpZ25hdHVyZVRpbWVzdGFtcDoyMDY1NX0saz1nLm85KCk7bi5pc0F1dG9uYXYmJih2LmF1dG9uYXY9ITApO2suUVEoMTQxKSYmKHYuYXV0b25hdlN0YXRlPWsuUVEoMTQwKT8iU1RBVEVfT0ZGIjoiU1RBVEVfT04iKTt2LmF1dG9DYXB0aW9uc0RlZmF1bHRPbj1rLlFRKDY2KTtpVChuKSYmKHYuYXV0b3BsYXk9ITApO2IuSyYmbi5jeWNUb2tlbiYmKHYuY3ljVG9rZW49bi5jeWNUb2tlbik7Yi5lbmFibGVQcml2YWN5RmlsdGVyJiYodi5lbmFibGVQcml2YWN5RmlsdGVyPSEwKTtuLmlzRmxpbmcmJih2LmZsaW5nPSEwKTt2YXIgaD1uLmZvcmNlQWRzVXJsO2lmKGgpe2s9e307dmFyIHg9W107aD1oLnNwbGl0KCIsIik7Zm9yKHZhciBMIG9mIGgpe3ZhciBlPQpMLnNwbGl0KCJ8Iik7ZS5sZW5ndGghPT0zfHxMLmluY2x1ZGVzKCI9Iil8fChlWzBdPWBicmVha3R5cGU9JHtlWzBdfWAsZVsxXT1gb2Zmc2V0PSR7ZVsxXX1gLGVbMl09YHVybD0ke2VbMl19YCk7aD17YWR0eXBlOiJ2aWRlb19hZCJ9O2Zvcih2YXIgRyBvZiBlKXtsZXQgW3osLi4uQ109Ry5zcGxpdCgiPSIpO2hbel09Qy5qb2luKCI9Iil9ZT1oLnVybDtsZXQgSD1oLnByZXNldGFkLEE9aC52aXJhbHJlc3BvbnNldXJsLHk9TnVtYmVyKGguY2FtcGFpZ25pZCksVD1oLmJpYmxpb3RlY2FhZGlkO2lmKGguYWR0eXBlPT09ImluX2Rpc3BsYXlfYWQiKWUmJihrLnVybD1lKSxIJiYoay5wcmVzZXRBZD1IKSxBJiYoay52aXJhbEFkUmVzcG9uc2VVcmw9QSkseSYmKGsudmlyYWxDYW1wYWlnbklkPVN0cmluZyh5KSksVCYmKGsuYmlibGlvdGVjYUFkSWQ9VCk7ZWxzZSBpZihoLmFkdHlwZT09PSJ2aWRlb19hZCIpe2xldCB6PXtvZmZzZXQ6e2tpbmQ6Ik9GRlNFVF9NSUxMSVNFQ09ORFMiLHZhbHVlOlN0cmluZyhOdW1iZXIoaC5vZmZzZXQpfHwKMCl9fTtpZihoPUNJWltoLmJyZWFrdHlwZV0pei5icmVha1R5cGU9aDtlJiYoei51cmw9ZSk7SCYmKHoucHJlc2V0QWQ9SCk7QSYmKHoudmlyYWxBZFJlc3BvbnNlVXJsPUEpO3kmJih6LnZpcmFsQ2FtcGFpZ25JZD1TdHJpbmcoeSkpO1QmJih6LmJpYmxpb3RlY2FBZElkPVQpO3gucHVzaCh6KX19T2JqZWN0LmtleXMoaykubGVuZ3RoPjA/di5mb3JjZUFkUGFyYW1ldGVycz17dmlkZW9BZHM6eCxpbkRpc3BsYXlBZDprfTp2LmZvcmNlQWRQYXJhbWV0ZXJzPXt2aWRlb0Fkczp4fX1uLmlzSW5saW5lUGxheWJhY2tOb0FkJiYodi5pc0lubGluZVBsYXliYWNrTm9BZD0hMCk7bi5pc0xpdmluZ1Jvb21EZWVwbGluayYmKHYuaXNMaXZpbmdSb29tRGVlcGxpbms9ITApO0w9bi5zUztpZihMIT1udWxsKXtMPXtzdGFydFdhbGx0aW1lOlN0cmluZyhMKX07aWYoRz1uLnptKUwubWFuaWZlc3REdXJhdGlvbj1TdHJpbmcoR3x8MTQ0MDApO3YubGl2ZUNvbnRleHQ9TH1uLm11dGVkQXV0b3BsYXkmJgoodi5tdXRlZEF1dG9wbGF5PSEwLEw9Yi5nZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnKCksTD8uZW1iZWRzSG9zdEZsYWdzPy5hbGxvd011dGVkQXV0b3BsYXlEdXJhdGlvbk1vZGUmJkw/LmVtYmVkc0hvc3RGbGFncz8uYWxsb3dNdXRlZEF1dG9wbGF5RHVyYXRpb25Nb2RlLmluY2x1ZGVzKHVUW24ubXV0ZWRBdXRvcGxheUR1cmF0aW9uTW9kZV0pJiYodi5tdXRlZEF1dG9wbGF5RHVyYXRpb25Nb2RlPXVUW24ubXV0ZWRBdXRvcGxheUR1cmF0aW9uTW9kZV0pKTtpZihuLmZCPzA6bi5QWCl2LnNwbGF5PSEwO0w9bi52bmQ7TD09PTUmJih2LnZuZD1MKTtMPXt9O2lmKEc9bi5pc01keFBsYXliYWNrKUwudHJpZ2dlcmVkQnlNZHg9RztpZihHPW4uRmYpTC5za2lwcGFibGVBZHNTdXBwb3J0ZWQ9Ry5zcGxpdCgiLCIpLmluY2x1ZGVzKCJza2EiKTtpZih4PW4uVUspe0c9bi5jTDtrPVtdO2Zvcih2YXIgciBvZiBpSih4KSl7eD1yLnBsYXRmb3JtO3g9e2FwcGxpY2F0aW9uU3RhdGU6ci5Fcz8KIklOQUNUSVZFIjoiQUNUSVZFIixjbGllbnRGb3JtRmFjdG9yOkJEalt4XXx8IlVOS05PV05fRk9STV9GQUNUT1IiLGNsaWVudE5hbWU6dUpbci5oal18fCJVTktOT1dOX0lOVEVSRkFDRSIsY2xpZW50VmVyc2lvbjpyLmRldmljZVZlcnNpb258fCIiLHBsYXRmb3JtOkZoaVt4XXx8IlVOS05PV05fUExBVEZPUk0ifTtoPXt9O2lmKEcpe3ZhciBOPXZvaWQgMDt0cnl7Tj1KU09OLnBhcnNlKEcpfWNhdGNoKEgpe2cuR3EoSCl9TiYmKGg9e3BhcmFtczpbe2tleToibXMiLHZhbHVlOk4ubXN9XX0sTi5hZHZlcnRpc2luZ19pZCYmKGguYWR2ZXJ0aXNpbmdJZD1OLmFkdmVydGlzaW5nX2lkKSxOLmxpbWl0X2FkX3RyYWNraW5nIT09dm9pZCAwJiZOLmxpbWl0X2FkX3RyYWNraW5nIT09bnVsbCYmKGgubGltaXRBZFRyYWNraW5nPU4ubGltaXRfYWRfdHJhY2tpbmcpLHgub3NOYW1lPU4ub3NfbmFtZSx4LnVzZXJBZ2VudD1OLnVzZXJfYWdlbnQseC53aW5kb3dIZWlnaHRQb2ludHM9Ti53aW5kb3dfaGVpZ2h0X3BvaW50cywKeC53aW5kb3dXaWR0aFBvaW50cz1OLndpbmRvd193aWR0aF9wb2ludHMpfWsucHVzaCh7YWRTaWduYWxzSW5mbzpoLHJlbW90ZUNsaWVudDp4fSl9TC5yZW1vdGVDb250ZXh0cz1rfXI9bi5zb3VyY2VDb250YWluZXJQbGF5bGlzdElkO049bi5zZXJpYWxpemVkTWR4TWV0YWRhdGE7aWYocnx8TilHPXt9LHImJihHLm1keFBsYXliYWNrQ29udGFpbmVySW5mbz17c291cmNlQ29udGFpbmVyUGxheWxpc3RJZDpyfSksTiYmKEcuc2VyaWFsaXplZE1keE1ldGFkYXRhPU4pLEwubWR4UGxheWJhY2tTb3VyY2VDb250ZXh0PUc7di5tZHhDb250ZXh0PUw7cj1XLndpZHRoO3I+MCYmKHYucGxheWVyV2lkdGhQaXhlbHM9TWF0aC5yb3VuZChyKSk7aWYoVz1XLmhlaWdodCl2LnBsYXllckhlaWdodFBpeGVscz1NYXRoLnJvdW5kKFcpO0QhPT0wJiYodi52aXM9RCk7aWYoRD1iLndpZGdldFJlZmVycmVyKXYud2lkZ2V0UmVmZXJyZXI9RC5zdWJzdHJpbmcoMCwxMjgpO2cubzQoYikmJnYmJih2LmFuY2VzdG9yT3JpZ2lucz0KYi5hbmNlc3Rvck9yaWdpbnMpO24uZGVmYXVsdEFjdGl2ZVNvdXJjZVZpZGVvSWQmJih2LmNvbXBvc2l0ZVZpZGVvQ29udGV4dD17ZGVmYXVsdEFjdGl2ZVNvdXJjZVZpZGVvSWQ6bi5kZWZhdWx0QWN0aXZlU291cmNlVmlkZW9JZH0pO2lmKG49Yi5nZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnKCkpdi5lbmNyeXB0ZWRIb3N0RmxhZ3M9bi5lbmNyeXB0ZWRIb3N0RmxhZ3M7cmV0dXJuIHZ9Owp6UD1mdW5jdGlvbihuKXtpZihuLnJhbmdlKXJldHVybiBuLlc7bj1uLkF3WzBdO3JldHVybiBNYXRoLnJvdW5kKG4uSypuLlBKLmluZm8uTnMpfTsKd0xVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIE1hdGgubWF4KDAsbi5Bd1swXS5YLVcpfTsKbFQ9ZnVuY3Rpb24obixXLEQpe2Zvcig7bjtuPW4ucGFyZW50Tm9kZSl7aWYoIW4uYXR0cmlidXRlc3x8RCYmbi5ub2RlTmFtZSE9PUQpY29udGludWU7bGV0IGI9bi5nZXRBdHRyaWJ1dGUoVyk7aWYoYilyZXR1cm4gYn1yZXR1cm4iIn07ClRQPWZ1bmN0aW9uKG4sVyl7Zm9yKDtuO249bi5wYXJlbnROb2RlKXtsZXQgRD1uLmdldEVsZW1lbnRzQnlUYWdOYW1lKFcpO2lmKEQubGVuZ3RoPjApcmV0dXJuIERbMF19cmV0dXJuIG51bGx9OwpqeD1mdW5jdGlvbihuKXtpZighbilyZXR1cm4gMDt2YXIgVz1uLm1hdGNoKC9QVCgoWzAtOV0qKUgpPygoWzAtOV0qKU0pPygoWzAtOS5dKilTKT8vKTtyZXR1cm4gVz8oTnVtYmVyKFdbMl0pfDApKjM2MDArKE51bWJlcihXWzRdKXwwKSo2MCsoTnVtYmVyKFdbNl0pfDApOk51bWJlcihuKXwwfTsKQ3o9ZnVuY3Rpb24obil7cmV0dXJuIG4ubWF0Y2goL14oXGR7NH0pLShcZHsyfSktKFxkezJ9KVQoXGR7Mn0pOihcZHsyfSk6KFxkezJ9KVwuKFxkezN9KSQvKT9gJHtufVpgOm59OwpNZ009ZnVuY3Rpb24obil7dmFyIFc9bi5XO24uVz1bXTtyZXR1cm4gV307ClJBUz1mdW5jdGlvbihuKXtuLk58fChuLk49bmV3IEJfKTtyZXR1cm4gbi5OfTsKUVdNPWZ1bmN0aW9uKG4sVyl7bi5KW1ddfHwobi5KW1ddPW5ldyBCXyk7cmV0dXJuIG4uSltXXX07ClZnaT1mdW5jdGlvbihuLFcpe24uV1tXXXx8KG4uV1tXXT1uZXcgQl8pO3JldHVybiBuLldbV119OwpjSGo9ZnVuY3Rpb24obixXKXt2YXIgRD1bXTtXPUFycmF5LmZyb20oVy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiU2VnbWVudFRpbWVsaW5lIikpO2ZvcihsZXQgYiBvZiBXKXtXPWIucGFyZW50Tm9kZS5wYXJlbnROb2RlO2xldCB2PW51bGw7Vy5ub2RlTmFtZT09PSJQZXJpb2QiP3Y9UkFTKG4pOlcubm9kZU5hbWU9PT0iQWRhcHRhdGlvblNldCI/KFc9Vy5nZXRBdHRyaWJ1dGUoImlkIil8fFcuZ2V0QXR0cmlidXRlKCJtaW1ldHlwZSIpfHwiIix2PVFXTShuLFcpKTpXLm5vZGVOYW1lPT09IlJlcHJlc2VudGF0aW9uIiYmKFc9Vy5nZXRBdHRyaWJ1dGUoImlkIil8fCIiLHY9VmdpKG4sVykpO2lmKHY9PW51bGwpcmV0dXJuO3YudXBkYXRlKGIpO2cuUTIoRCxNZ00odikpfWcuUTIobi5YLEQpO3RVaChuLlgsYj0+Yi5zdGFydFNlY3MqMUUzK2IuTil9OwphRFU9ZnVuY3Rpb24obil7bi5OJiYobi5OLk49W10pO2cuYV8obi5KLFc9PntXLk49W119KTsKZy5hXyhuLlcsVz0+e1cuTj1bXX0pfTsKRng9ZnVuY3Rpb24obixXKXtyZXR1cm4gRGUobi5zZWdtZW50cyxEPT5XLUQuaiQpfTsKTUk9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uaW5kZXguVihXKSx2PW4uaW5kZXguZ2V0U3RhcnRUaW1lKFcpLGs9bi5pbmRleC5nZXREdXJhdGlvbihXKTtEP2s9RD0wOkQ9bi5pbmZvLk5zKms7cmV0dXJuIG5ldyB3ayhbbmV3IHFJKDMsbix2b2lkIDAsIm90ZkNyZWF0ZVJlcXVlc3RJbmZvRm9yU2VnbWVudCIsVyx2LGssMCxEKV0sYil9OwpuR1M9ZnVuY3Rpb24obixXKXtpZighbi5pbmRleC5pc0xvYWRlZCgpKXt2YXIgRD1bXSxiPVcuajtXPVcuSy5zcGxpdCgiLCIpLmZpbHRlcihlPT5lLmxlbmd0aD4wKTsKdmFyIHY9MCxrPTAsaD0wLHg9L14oXGQrKS8sTD0vcj0oXGQrKS87Zm9yKGxldCBlPTA7ZTxiO2UrKyl7aWYoaDw9MClpZihoPVcuc2hpZnQoKSxrPShrPXguZXhlYyhoKSk/K2tbMV0vMUUzOjApaD0oaD1MLmV4ZWMoaCkpPytoWzFdOjAsaCs9MTtlbHNlIHJldHVybjtELnB1c2gobmV3IFI0KGUsdixrLE5hTiwic3EvIisoZSsxKSkpO3YrPWs7aC0tfW4uaW5kZXguYXBwZW5kKEQpfX07CmcuY189ZnVuY3Rpb24obixXLC4uLkQpe2cuUXMoNSxuIGluc3RhbmNlb2YgZy5Wcz9uLnRhZzpuLFcsLi4uRCl9OwpnLlFzPWZ1bmN0aW9uKG4sVyxELC4uLmIpe3ZhciB2PW49PT02PyJFUlJPUiI6IldBUk5JTkciO0Q9YGIke0R9YDtnLlhqKG5ldyBnLlF4KEQsLi4uYiksdik7Yi51bnNoaWZ0KEQpO2I9Yi5qb2luKCIsICIpO3Y9YTQuZ2V0KFcpO2lmKCF2KXt2PWB5dHBsb2cuJHtXfWA7RD01O3RyeXt3aW5kb3cubG9jYWxTdG9yYWdlJiYhaXNOYU4oK3dpbmRvdy5sb2NhbFN0b3JhZ2Vbdl0pJiYoRD0rd2luZG93LmxvY2FsU3RvcmFnZVt2XSksd2luZG93LnNlc3Npb25TdG9yYWdlJiYhaXNOYU4oK3dpbmRvdy5zZXNzaW9uU3RvcmFnZVt2XSkmJihEPSt3aW5kb3cuc2Vzc2lvblN0b3JhZ2Vbdl0pfWNhdGNoe31hNC5zZXQoVyxEKTt2PUR9bjx2fHwobj1XS3csdj1uLk4uZ2V0KFcpLHZ8fCh2PW5ldyBEODIsbi5OLnNldChXLHYpKSxuPXYsdj1EYXRlLm5vdygpLEQ9TWF0aC5mbG9vcigodi1uLkopKi4wMSksRD4wJiYobi5OPU1hdGgubWluKG4uTitELDEwKSxuLko9diksbi5OPjA/KG4uTi0tLG49CiEwKTpuPSExLG4/KHR5cGVvZiBiPT09ImZ1bmN0aW9uIiYmKGI9YigpKSxjb25zb2xlLmxvZyhgcGx5ci4ke1d9YCxiKSk6KGI9KG5NLmdldChXKT8/MCkrMSxuTS5zZXQoVyxiKSxiJTEwMD09PTEmJmNvbnNvbGUud2FybigicGx5ciIsYHBseXIuJHtXfSBpcyBjaGF0dHksIGRyb3BwaW5nIGxvZ3MuYCkpKX07CkRPPWZ1bmN0aW9uKG4pe2lmKCFuLkspe2lmKGcuUkIobi5pbmZvLlBKLmluZm8pKXt2YXIgVz1nLldSKG4pO3ZhciBEPWt4KFcsMCwxODM2MDE5NTc0KTtpZihEKXtEPUQub2Zmc2V0K0Quc2l6ZTt2YXIgYj1uZXcgVWludDhBcnJheShEKTtiLnNldChuZXcgVWludDhBcnJheShXLmJ1ZmZlcixXLmJ5dGVPZmZzZXQsRCkpO1c9Yn1lbHNlIFc9bnVsbH1lbHNlIFc9eUhyKG5ldyB0WShnLldSKG4pKSk7VyYmKG4uaW5mby5QSi5KPVcsbi5LPSEwKX19OwpnLldSPWZ1bmN0aW9uKG4pe3JldHVybiBHNihuLkopfTsKdlI9ZnVuY3Rpb24obixXKXtXPU1hdGgubWluKFcsbi5pbmZvLkopO3ZhciB7Q3M6RCxZOTpifT1uLkouc3BsaXQoVyksdj1uZXcgYjgobmV3IHFJKG4uaW5mby50eXBlLG4uaW5mby5QSixuLmluZm8ucmFuZ2Usbi5pbmZvLlksbi5pbmZvLmokLG4uaW5mby5zZWdtZW50U3RhcnRUaW1lLG4uaW5mby5XLG4uaW5mby5OLFcsITEsbi5pbmZvLnZELG4uaW5mby5jbGlwSWQsbi5pbmZvLkQpLEQpO3YuWD1uLlg7di5XPW4uVztXPW5ldyBiOChuZXcgcUkobi5pbmZvLnR5cGUsbi5pbmZvLlBKLG4uaW5mby5yYW5nZSxuLmluZm8uWSxuLmluZm8uaiQsbi5pbmZvLnNlZ21lbnRTdGFydFRpbWUsbi5pbmZvLlcsbi5pbmZvLk4rVyxuLmluZm8uSi1XLG4uaW5mby5hWixuLmluZm8udkQsbi5pbmZvLmNsaXBJZCxuLmluZm8uRCksYik7Vy5YPW4uWDtXLlc9bi5XO3JldHVyblt2LFddfTsKZy5rWD1mdW5jdGlvbihuKXtnLlJCKG4uaW5mby5QSi5pbmZvKXx8bi5pbmZvLlBKLmluZm8ucUgoKTtpZihuLlchPT0tMSlyZXR1cm4gbi5XO2lmKG4uTiYmakoobi5OKSlyZXR1cm4gbi5XPWpKKG4uTiksbi5XO2lmKGcuUkIobi5pbmZvLlBKLmluZm8pKXt2YXIgVz1nLldSKG4pO3ZhciBEPW4uaW5mby5QSi5KLGI9TmFOO2xldCB2PU5hTixrPTA7Zm9yKDtWTChXLGspOyl7bGV0IGg9Y0EoVyxrKTtoLnR5cGU9PT0xOTM2Mjg2ODQwP3Y9aC5kYXRhLmdldFVpbnQzMihoLmRhdGFPZmZzZXQrOCk6aC50eXBlPT09MTgzNjQ3NjUxNj92PWcuYkwoaCk6aC50eXBlPT09MTk1Mjg2NzQ0NCYmaXNOYU4oYikmJihiPWcueHgoaCkpO2s9YXIoaC50eXBlKT9rKzg6aytoLnNpemV9IXYmJkQmJih2PXZ3KEQpKTtXPWIvdn1lbHNlIFc9bmV3IHRZKGcuV1IobikpLEQ9bi5WP1c6bmV3IHRZKG5ldyBEYXRhVmlldyhuLmluZm8uUEouSi5idWZmZXIpKSxiPUtzKEQpLEQ9Vy5wb3MsVy5wb3M9MCxQdyhXKT8Kc1koVywyMzEpPyhiPWZzKFcpKmIvMUU5LFcucG9zPUQsVz1iKTooVy5wb3M9RCxXPU5hTik6KFcucG9zPUQsVz1OYU4pO24uVz1XfHxuLmluZm8uWDtyZXR1cm4gbi5XfTsKaE09ZnVuY3Rpb24obixXKXtnLlJCKG4uaW5mby5QSi5pbmZvKXx8bi5pbmZvLlBKLmluZm8ucUgoKTtuLlc9VztpZihnLlJCKG4uaW5mby5QSi5pbmZvKSl7dmFyIEQ9Zy5XUihuKTtuPW4uaW5mby5QSi5KO3ZhciBiPU5hTix2PU5hTjtsZXQgTD0wO2Zvcig7VkwoRCxMKTspe2xldCBlPWNBKEQsTCk7aXNOYU4oYikmJihlLnR5cGU9PT0xOTM2Mjg2ODQwP2I9ZS5kYXRhLmdldFVpbnQzMihlLmRhdGFPZmZzZXQrOCk6ZS50eXBlPT09MTgzNjQ3NjUxNiYmKGI9Zy5iTChlKSkpO2lmKGUudHlwZT09PTE5NTI4Njc0NDQpeyFiJiZuJiYoYj12dyhuKSk7dmFyIGs9Zy54eChlKTtpc05hTih2KSYmKHY9TWF0aC5yb3VuZChXKmIpLWspO3ZhciBoPWU7ays9djtpZihoLmRhdGEuZ2V0VWludDgoaC5kYXRhT2Zmc2V0KSl7dmFyIHg9aC5kYXRhO2g9aC5kYXRhT2Zmc2V0KzQ7eC5zZXRVaW50MzIoaCxNYXRoLmZsb29yKGsvNDI5NDk2NzI5NikpO3guc2V0VWludDMyKGgrNCxrJjQyOTQ5NjcyOTUpfWVsc2UgaC5kYXRhLnNldFVpbnQzMihoLmRhdGFPZmZzZXQrCjQsayl9TD1hcihlLnR5cGUpP0wrODpMK2Uuc2l6ZX1yZXR1cm4hMH1EPW5ldyB0WShnLldSKG4pKTtuPW4uVj9EOm5ldyB0WShuZXcgRGF0YVZpZXcobi5pbmZvLlBKLkouYnVmZmVyKSk7Yj1LcyhuKTtuPUQucG9zO0QucG9zPTA7aWYoUHcoRCkmJnNZKEQsMjMxKSlpZih2PU5rKEQsITApLFc9TWF0aC5mbG9vcihXKjFFOS9iKSxNYXRoLmNlaWwoTWF0aC5sb2coVykvTWF0aC5sb2coMikvOCk+dilXPSExO2Vsc2V7Zm9yKGI9di0xO2I+PTA7Yi0tKUQuTi5zZXRVaW50OChELnBvcytiLFcmMjU1KSxXPj4+PTg7RC5wb3M9bjtXPSEwfWVsc2UgVz0hMTtyZXR1cm4gV307CnhYPWZ1bmN0aW9uKG4sVyl7bi50aW1lc3RhbXBPZmZzZXQ+MCYmKFctPW4udGltZXN0YW1wT2Zmc2V0KTt2YXIgRD1nLmtYKG4pK1c7aE0obixEKTtuLnRpbWVzdGFtcE9mZnNldD1XfTsKTE09ZnVuY3Rpb24obil7Zy5SQihuLmluZm8uUEouaW5mbyl8fG4uaW5mby5QSi5pbmZvLnFIKCk7aWYobi5OJiZuLmluZm8udHlwZT09PTYpcmV0dXJuIG4uTi5yYjtpZihnLlJCKG4uaW5mby5QSi5pbmZvKSl7dmFyIFc9Zy5XUihuKTt2YXIgRD0wO1c9Zy5lUChXLDE5MzYyODY4NDApO2Zvcih2YXIgYiBvZiBXKVc9THMoYiksRCs9Vy5xZ1swXS9XLnRpbWVzY2FsZTtEPUR8fE5hTjtpZighKEQ+PTApKWE6e0Q9Zy5XUihuKTtiPW4uaW5mby5QSi5KO2xldCByPVc9MDtmb3IodmFyIHY9MDtWTChELFcpOyl7bGV0IE49Y0EoRCxXKTtpZihOLnR5cGU9PT0xODM2NDc2NTE2KXI9Zy5iTChOKTtlbHNlIGlmKE4udHlwZT09PTE4MzYwMTk1NTgpeyFyJiZiJiYocj12dyhiKSk7aWYoIXIpe0Q9TmFOO2JyZWFrIGF9dmFyIGs9a3goTi5kYXRhLE4uZGF0YU9mZnNldCwxOTUzNjUzMDk0KSxoPWs7az1yO3ZhciB4PWt4KGguZGF0YSxoLmRhdGFPZmZzZXQsMTk1Mjg2ODQ1Mik7aD1reChoLmRhdGEsCmguZGF0YU9mZnNldCwxOTUzNjU4MjIyKTt2YXIgTD15TCh4KTt5TCh4KTtMJjImJnlMKHgpO3g9TCY4P3lMKHgpOjA7dmFyIGU9eUwoaCksRz1lJjE7TD1lJjQ7bGV0IEg9ZSYyNTYsQT1lJjUxMix5PWUmMTAyNDtlJj0yMDQ4O2xldCBUPUVEKGgpO0cmJnlMKGgpO0wmJnlMKGgpO0c9MDtmb3IobGV0IHo9MDt6PFQ7eisrKXtsZXQgQz1IP3lMKGgpOng7QSYmeUwoaCk7TCYmej09PTB8fCF5fHx5TChoKTtlJiZ5TChoKTtHKz1DfXYrPUcva31XPWFyKE4udHlwZSk/Vys4OlcrTi5zaXplfUQ9dnx8TmFOfUR8fGcuR3EobmV3IGcuUXgoIk1pc3NpbmcgZHVyYXRpb24gd2hpbGUgcGFyc2luZyBibWZmIixuLmluZm8uZ2EoKSkpfWVsc2UgRD1uZXcgdFkoZy5XUihuKSksbj1uLlY/RDpuZXcgdFkobmV3IERhdGFWaWV3KG4uaW5mby5QSi5KLmJ1ZmZlcikpLEQ9RUVaKEQsS3MobikpO3JldHVybiBEfTsKZUc9ZnVuY3Rpb24obixXPSExKXt2YXIgRD1MTShuKTtuPVc/MDpuLmluZm8uSztyZXR1cm4gRHx8bn07CmcuZ3k9ZnVuY3Rpb24obil7aWYobi5pbmZvLlBKLlcoKSlyZXR1cm4gbi5pbmZvLlc7bi5YPT09LTEmJihuLlg9TE0obikpO3JldHVybiBuLlh8fG4uaW5mby5XfTsKWFo9ZnVuY3Rpb24obil7dmFyIFc9Zy5XUihuKSxEPWcubnMoVywwLDE5MzYyODY4NDApO0Q9RD9ELmRhdGEuZ2V0VWludDMyKEQuZGF0YU9mZnNldCs4KTpOYU47aXNOYU4oRCkmJihuPW4uaW5mby5QSi5KLEQ9KFc9Zy5ucyhXLDAsMTgzNjQ3NjUxNikpP2cuYkwoVyk6bj92dyhuKTpOYU4pO3JldHVybiBEfTsKcSQ9ZnVuY3Rpb24obil7cmV0dXJuIG4uaW5mby5QSi5pbmZvLnFIKCkmJnJkKG4uSiwwKT09PTE2MH07CkdpPWZ1bmN0aW9uKG4pe2lmKCFuLk4pe2cuUkIobi5pbmZvLlBKLmluZm8pfHxuLmluZm8uUEouaW5mby5xSCgpO2lmKGcuUkIobi5pbmZvLlBKLmluZm8pKXZhciBXPWcucWsoZy5XUihuKSk7ZWxzZXtXPW5ldyB0WShnLldSKG4pKTtsZXQgYj1XLnBvcztXLnBvcz0wO2xldCB2PW51bGwsaz1udWxsO2lmKCR4KFcsWzQwODEyNTU0MywzMDc1NDQ5MzVdKSl7bGV0IGg9Vy5wb3MrTmsoVywhMCk7Zm9yKDtXLnBvczxoOyl7aWYoTmsoVywhMSkhPT0yOTU1NSl7SlkoVyk7Y29udGludWV9bGV0IHg9Vy5wb3MrTmsoVywhMCk7Zm9yKDtXLnBvczx4Oyl7aWYoTmsoVywhMSkhPT0yNjU2OCl7SlkoVyk7Y29udGludWV9bGV0IEw9Vy5wb3MrTmsoVywhMCk7Zm9yKDtXLnBvczxMOyl7dmFyIEQ9TmsoVywhMSk7aWYoRD09PTE3NTQzKXtpZihEPW10KFcpLEQ9UUwoRCkpaWYoaylmb3IobGV0IGUgb2YgT2JqZWN0LmtleXMoRCkpa1tlXT1EW2VdO2Vsc2Ugaz1EfWVsc2UgRD09PTE3ODI3PyhEPQptdChXKSx2fHwodj1EKSk6SlkoVyl9fX19Vy5wb3M9YjtXPWs/bmV3IFg1KGssdik6bnVsbH1uLk49V319Owp0TT1mdW5jdGlvbihuLFcpe3JldHVybiBXKzE8bi5jb3VudHx8bi5XP24ub2Zmc2V0c1tXKzFdLW4ub2Zmc2V0c1tXXTotMX07CiRYPWZ1bmN0aW9uKG4pe24ub2Zmc2V0cy5sZW5ndGg8bi5jb3VudCsxJiZuLnJlc2l6ZShuLm9mZnNldHMubGVuZ3RoKjIpfTsKcnk9ZnVuY3Rpb24obixXLEQpe24uY291bnQrKzskWChuKTtuLm9mZnNldHNbbi5jb3VudF09bi5vZmZzZXRzW24uY291bnQtMV0rVztuLnN0YXJ0VGlja3Nbbi5jb3VudF09bi5zdGFydFRpY2tzW24uY291bnQtMV0rRH07CnNOPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PVtdO2ZvcihsZXQgaz1XO2s8PW4uaW5kZXgueCQoKTtrKyspe2xldCBoPVdfKG4uaW5kZXguTihrKSx0TShuLmluZGV4LGspKSx4PW4uaW5kZXguZ2V0U3RhcnRUaW1lKGspLEw9bi5pbmRleC5nZXREdXJhdGlvbihrKSxlPU1hdGgubWF4KDAsRC1oLnN0YXJ0KSxHPU1hdGgubWluKGguZW5kKzEsRCtiKS0oaC5zdGFydCtlKTt2LnB1c2gobmV3IHFJKDMsbixoLCJnZXRSZXF1ZXN0SW5mb0ZvclJhbmdlIixrLHgsTCxlLEcpKTtpZihoLnN0YXJ0K2UrRz49RCtiKWJyZWFrfXYubGVuZ3RofHwobj1uZXcgZy5ReCgiYjE4OTYxOTU5MyIsYCR7V31gLGAke0R9YCxgJHtifWApLGcuWGoobikpO3JldHVybiBuZXcgd2sodil9OwpOJD1mdW5jdGlvbihuKXtpZihuPW4uY29sb3JJbmZvKWlmKG49bi50cmFuc2ZlckNoYXJhY3RlcmlzdGljcylyZXR1cm4gYnFVW25dO3JldHVybiBudWxsfTsKWVg9ZnVuY3Rpb24obixXKXt2YXIgRD1NYXRoLm1heChuLFcpO249TWF0aC5taW4obixXKTtXPXBNWzBdO2ZvcihsZXQgYj0wO2I8cE0ubGVuZ3RoO2IrKyl7bGV0IHY9cE1bYl0saz1OR1t2XTtpZihEPj1NYXRoLmZsb29yKGsqMTYvOSkqMS4zfHxuPj1rKjEuMylyZXR1cm4gVztXPXZ9cmV0dXJuInRpbnkifTsKZk09ZnVuY3Rpb24obil7cmV0dXJuIG5ldyBIUihuWzFdLG5bMl0sblszXSxuWzRdLG5bNV0sbls2XSxuWzddLG5bOF0sbls5XSxuWzEwXSl9OwpKTT1mdW5jdGlvbihuKXtyZXR1cm4gbi5pbmRleE9mKCIvbXA0Iik+PTA/MTpuLmluZGV4T2YoIi93ZWJtIik+PTA/MjpuLmluZGV4T2YoIi94LWZsdiIpPj0wPzM6bi5pbmRleE9mKCIvdnR0Iik+PTA/NDowfTsKSWQ9ZnVuY3Rpb24obil7cmV0dXJuLyhvcHVzfG1wNGF8ZHRzZXxhYy0zfGVjLTN8aWFtZikvLnRlc3Qobil9OwpTRz1mdW5jdGlvbihuKXtyZXR1cm4vKHZwOXx2cDA5fHZwOHxhdmMxfGF2MDF8YXYwMikvLnRlc3Qobil9OwpRUD1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXt2YXIgeD1uZXcgQU07VyBpbiBOR3x8KFc9InNtYWxsIik7Vz09PSJsaWdodCImJihXPSJ0aW55Iik7YiYmdj8odj1OdW1iZXIodiksYj1OdW1iZXIoYikpOih2PU5HW1ddLGI9TWF0aC5yb3VuZCh2KjE2LzkpKTtrPW5ldyBIUihiLHYsMCxudWxsLHZvaWQgMCxXLGssaCk7bj11bmVzY2FwZShuLnJlcGxhY2UoLyZxdW90Oy9nLCciJykpO3JldHVybiBuZXcgbXUoRCxuLHthdWRpbzp4LHZpZGVvOmt9KX07Ck9OPWZ1bmN0aW9uKG4pe3ZhciBXPW5bN10sRD1uWzExXSxiPW5bOV0sdj1uWzhdO3JldHVybiBuZXcgbXUoblsxXSxuWzJdLHtYbjpuWzNdLE5zOm5bNF0sbGFzdE1vZGlmaWVkOm5bNV0sY29udGVudExlbmd0aDpuWzZdLGF1ZGlvOlc/bmV3IEFNKFdbMV0sV1syXSxXWzNdLFdbNF0sV1s1XSxXWzZdLFdbN10sV1s4XSk6dm9pZCAwLHZpZGVvOnY/Zk0odik6dm9pZCAwLGtaOmI/TUcoYik6dm9pZCAwLGNvbnRlbnRQcm90ZWN0aW9uOm5bMTBdLGNhcHRpb25UcmFjazpEP25ldyBLTShEWzFdLERbMl0sRFszXSxEWzRdLERbNV0sRFs2XSk6dm9pZCAwLHN0cmVhbVR5cGU6blsxMl0sQWE6blsxM10sYXBwcm94RHVyYXRpb25NczpuWzE0XX0pfTsKbUY9ZnVuY3Rpb24obil7cmV0dXJuIG4uSUI9PT0iTUFDMyJ8fG4uSUI9PT0iTUVBQzMifHxuLklCPT09Ik0ifHxuLklCPT09IkkifTsKS2c9ZnVuY3Rpb24obil7cmV0dXJuISFuLmNvbnRlbnRQcm90ZWN0aW9uJiYhIW4uY29udGVudFByb3RlY3Rpb24uZmFpcnBsYXkmJihuLklCPT09IigifHxuLklCPT09IihoInx8bi5JQj09PSJBInx8bi5JQj09PSJNRUFDMyIpfHxQUiYmISFuLmNvbnRlbnRQcm90ZWN0aW9uJiZuLklCPT09IjFlIn07CmcuUkI9ZnVuY3Rpb24obil7cmV0dXJuIG4uY29udGFpbmVyVHlwZT09PTF9OwpNMz1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgsTCxlLEcscil7dmFyIE49V15uO3ZhciBIOyhuJjc2KT09biYmKEg9YihoLHgsTCxlLEcscikpOyhuPj4xJjE1KT09MSYmKEQ9KEQlYltJWzVdXStiW0lbNV1dKSViW0lbNV1dLGJbSVszXV0oRCwxKSk7bis5Pj4zPT0zJiYoSD1kZWNvZGVVUklDb21wb25lbnQoRCkpO24tOTwyMyYmKG4+PjEmMTUpPj0xMyYmKERbTl41MjY0XTwoTl41MzQzKSYmKERbTl41MjcwXTw9LTEmJigoKDAsRFtOXjUzMjhdKShEW25ldyBEYXRlKElbTl41MzQ2XSkvKE5eNTk1MSldLERbTl41MjY4XSksRFtOXjUzNDVdKShEW05eNTM2MV0sRFtOXjUyNjhdKSwxKXx8KDAsRFtOXjUzNTFdKSgoMCxEW05eNTM0NF0pKERbTl41MzY2XSxEW05eNTMxOV0pLERbMV0sRFtOXjUzMjBdLERbTl41MzQ4XSkpLERbTl41MjY4XT49LTImJigoMCxEW05eNTM1MV0pKCgwLERbM10pKERbTl41MzcyXSwoMCxEW25ldyBEYXRlKElbNF0pLyhOXjU5NTEpXSkoKSxEW05eNTMxNV0pLApEW05eNTM1Nl0sRFtOXjUyNzFdLERbTl41MzY1XSksRFtOXjUzMjZdKShEW05eNTMyMV0sRFtOXjUzNTZdKSxEWzVdPD0tMiYmKERbTl41Mjc2XTwoTl41MzQxKXx8KCgoKDAsRFtOXjUzMjZdKShEW05eNTMxOV0sRFtOXjUzNzNdKSxEW05eNTI2OV0pKCgwLERbTl41MjY4XSkoRFtOXjUzNTNdLERbTl41MzQ3XSksRFtOXjUzMzZdLCgwLERbNF0pKCgwLERbTl41MzYyXSkoRFtOXjUzNDldLCgwLERbTl41Mjc2XSkoKSxEW05eNTM3NV0pLERbTl41MjY2XSxEW05eNTM1NV0sRFtOXjUzMjhdKSxEW05eNTM2MV0sRFswXSksRFtOXjUzMThdKShEW05eNTM3M10sRFtOXjUzNDBdKSxJW05eNTMxNF0pKSYmKCgwLERbTl41MzI2XSkoKCgwLERbTl41MzUxXSkoRFtOXjUzNDJdLCgwLERbbmV3IERhdGUoSVtOXjUzNTNdKS8oTl41OTUxKV0pKCksRFtOXjUzNzBdKSxEW05eNTMyN10pKERbTl41MzQyXSksRFtOXjUzMTNdLCgwLERbTl41MzUxXSkoRFtOXjUzNDJdLCgwLERbTl41MzI4XSkoKSwKRFtOXjUyNzBdKSxEW05eNTI3NF0sRFtOXjUzNDJdKSxEW05eNTMzNl0pKCgwLERbTl41MzUxXSkoRFtOXjUzNDJdLCgwLERbTl41MzYyXSkoKSxEW05eNTM0OF0pLERbTl41MzI1XSxEW05eNTI2Nl0sRFtOXjUzNTldKSxIPVtdKTtyZXR1cm4gSH07CmcuVmY9ZnVuY3Rpb24obixXKXtyZXR1cm57aXRhZzorbi5pdGFnLGxtdDpXPzA6bi5sYXN0TW9kaWZpZWQseHRhZ3M6bi5KfHwiIn19OwpaTz1mdW5jdGlvbihuKXtyZXR1cm4gbi5JQj09PSI5aCJ8fG4uSUI9PT0iKGgifTsKVU49ZnVuY3Rpb24obil7cmV0dXJuIG4uSUI9PT0iKCJ8fG4uSUI9PT0iKGgifHxuLklCPT09IkgifHxQUiYmbi5JQj09PSIxZSJ9Owp2R1U9ZnVuY3Rpb24obixXPTEpe3ZhciBEPXt9O24udmlkZW8mJihuLnZpZGVvLndpZHRoJiYoRFtBVC5XSURUSC5uYW1lXT1uLnZpZGVvLndpZHRoKSxuLnZpZGVvLmhlaWdodCYmKERbQVQuSEVJR0hULm5hbWVdPW4udmlkZW8uaGVpZ2h0KSxuLnZpZGVvLmZwcyYmKERbQVQuRlJBTUVSQVRFLm5hbWVdPW4udmlkZW8uZnBzKlcpLG4udmlkZW8uTiYmKERbQVQuRU9URi5uYW1lXT1uLnZpZGVvLk4pLG4uTnMmJihEW0FULkJJVFJBVEUubmFtZV09bi5Ocyo4KlcpLG4uSUI9PT0iKCImJihEW0FULkNSWVBUT0JMT0NLRk9STUFULm5hbWVdPSJzdWJzYW1wbGUiKSxuLnZpZGVvLnByb2plY3Rpb25UeXBlPT09IkVRVUlSRUNUQU5HVUxBUiJ8fG4udmlkZW8ucHJvamVjdGlvblR5cGU9PT0iRVFVSVJFQ1RBTkdVTEFSX1RIUkVFRF9UT1BfQk9UVE9NInx8bi52aWRlby5wcm9qZWN0aW9uVHlwZT09PSJNRVNIIikmJihEW0FULkRFQ09ERVRPVEVYVFVSRS5uYW1lXT0idHJ1ZSIpO24uYXVkaW8/Lm51bUNoYW5uZWxzJiYKbi5JQiE9PSJpIiYmbi5JQiE9PSJJIiYmKERbQVQuQ0hBTk5FTFMubmFtZV09bi5hdWRpby5udW1DaGFubmVscyk7cmV0dXJuIER9Owp5VD1mdW5jdGlvbihuLFcpe249biBpbnN0YW5jZW9mIEVycm9yP24ubWVzc2FnZTpTdHJpbmcobik7dmFyIEQ9IiI7dHJ5e0Q9SlNPTi5zdHJpbmdpZnkoVyl9Y2F0Y2goYil7RD0iZmFpbGVkIHRvIHN0cmluZ2lmeSBjb25maWcifWcuY18oImRhc2giLDUxOTE5NjY0OSxuLEQpfTsKazNyPWZ1bmN0aW9uKG4pe3ZhciBXPW5hdmlnYXRvci5tZWRpYUNhcGFiaWxpdGllcztpZighVz8uZGVjb2RpbmdJbmZvfHxuLklCPT09ImYiKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTt2YXIgRD17dHlwZTpuLmF1ZGlvJiZuLnZpZGVvPyJmaWxlIjoibWVkaWEtc291cmNlIn07bi52aWRlbyYmKEQudmlkZW89e2NvbnRlbnRUeXBlOm4ubWltZVR5cGUsd2lkdGg6bi52aWRlby53aWR0aHx8NjQwLGhlaWdodDpuLnZpZGVvLmhlaWdodHx8MzYwLGJpdHJhdGU6bi5Ocyo4fHwxRTYsZnJhbWVyYXRlOm4udmlkZW8uZnBzfHwzMH0pO24uYXVkaW8mJihELmF1ZGlvPXtjb250ZW50VHlwZTpuLm1pbWVUeXBlLGNoYW5uZWxzOmAke24uYXVkaW8ubnVtQ2hhbm5lbHN8fDJ9YCxiaXRyYXRlOm4uTnMqOHx8MTI4RTMsc2FtcGxlcmF0ZTpuLmF1ZGlvLnNhbXBsZVJhdGV8fDQ0MTAwfSk7aWYoRU4pdHJ5e3JldHVybiBXLmRlY29kaW5nSW5mbyhEKS50aGVuKGI9PntuLmo9Yn0pLmNhdGNoKGI9Pgp7eVQoYixEKX0pfWNhdGNoKGIpe3JldHVybiB5VChiLEQpLFByb21pc2UucmVzb2x2ZSgpfXJldHVybiBXLmRlY29kaW5nSW5mbyhEKS50aGVuKGI9PntuLmo9Yn0pfTsKaTg9ZnVuY3Rpb24oKXt2YXIgbj1nLnJyKCJ5dC5wbGF5ZXIudXRpbHMudmlkZW9FbGVtZW50XyIpO258fChuPWcuekYoIlZJREVPIiksZy5HYigieXQucGxheWVyLnV0aWxzLnZpZGVvRWxlbWVudF8iLG4pKTtyZXR1cm4gbn07CnU4PWZ1bmN0aW9uKG4pe3ZhciBXPWk4KCk7cmV0dXJuISEoVyYmVy5jYW5QbGF5VHlwZSYmVy5jYW5QbGF5VHlwZShuKSl9OwpkeT1mdW5jdGlvbihuKXtpZigvb3B1cy8udGVzdChuKSYmZy5vZCYmIUNfKCIzOCIpJiYhZy5kOCgpKXJldHVybiExO2lmKHNlbGYuTWVkaWFTb3VyY2UmJnNlbGYuTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkKXJldHVybiBzZWxmLk1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZChuKTtpZihzZWxmLk1hbmFnZWRNZWRpYVNvdXJjZSYmc2VsZi5NYW5hZ2VkTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkKXJldHVybiBzZWxmLk1hbmFnZWRNZWRpYVNvdXJjZS5pc1R5cGVTdXBwb3J0ZWQobik7aWYoL3dlYm0vLnRlc3QobikmJiFUUSgpKXJldHVybiExO249PT0nYXVkaW8vbXA0OyBjb2RlY3M9Im1wNGEuNDAuMiInJiYobj0ndmlkZW8vbXA0OyBjb2RlY3M9ImF2YzEuNGQ0MDFmIicpO3JldHVybiEhdTgobil9OwpoZ1M9ZnVuY3Rpb24obil7dHJ5e2xldCBXPWR5KCd2aWRlby9tcDQ7IGNvZGVjcz0iYXZjMS40MjAwMUUiJyl8fGR5KCd2aWRlby93ZWJtOyBjb2RlY3M9InZwOSInKTtyZXR1cm4oZHkoJ2F1ZGlvL21wNDsgY29kZWNzPSJtcDRhLjQwLjIiJyl8fGR5KCdhdWRpby93ZWJtOyBjb2RlY3M9Im9wdXMiJykpJiYoV3x8IW4pfHx1OCgndmlkZW8vbXA0OyBjb2RlY3M9ImF2YzEuNDIwMDFFLCBtcDRhLjQwLjIiJyk/bnVsbDoiZm10Lm5vbmVhdmFpbGFibGUifWNhdGNoe3JldHVybiJodG1sNS5taXNzaW5nYXBpIn19Owp6aT1mdW5jdGlvbigpe3ZhciBuPWk4KCk7cmV0dXJuISghbi53ZWJraXRTdXBwb3J0c1ByZXNlbnRhdGlvbk1vZGV8fHR5cGVvZiBuLndlYmtpdFNldFByZXNlbnRhdGlvbk1vZGUhPT0iZnVuY3Rpb24iKX07Cmw4PWZ1bmN0aW9uKCl7dmFyIG49aTgoKTt0cnl7bGV0IFc9bi5tdXRlZDtuLm11dGVkPSFXO3JldHVybiBuLm11dGVkIT09V31jYXRjaHt9cmV0dXJuITF9OwpUaT1mdW5jdGlvbihuLFcpe3JldHVybntzdGFydChEKXtyZXR1cm4gbltEXX0sZW5kKEQpe3JldHVybiBXW0RdfSxsZW5ndGg6bi5sZW5ndGh9fTsKakc9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVtdLHY9W107Zm9yKGxldCBrPTA7azxuLmxlbmd0aDtrKyspYi5wdXNoKG4uc3RhcnQoaykpLHYucHVzaChuLmVuZChrKSk7Yi5wdXNoKFcpO3YucHVzaChEKTtiLnNvcnQoKGssaCk9PmstaCk7CnYuc29ydCgoayxoKT0+ay1oKTsKcmV0dXJuIFRpKGIsdil9Owpyaz1mdW5jdGlvbihuLFc9IiwiLEQ9bj9uLmxlbmd0aDowKXt2YXIgYj1bXTtpZihuKWZvcihEPU1hdGgubWF4KG4ubGVuZ3RoLUQsMCk7RDxuLmxlbmd0aDtEKyspYi5wdXNoKGAke24uc3RhcnQoRCkudG9GaXhlZCgzKX0tJHtuLmVuZChEKS50b0ZpeGVkKDMpfWApO3JldHVybiBiLmpvaW4oVyl9OwpDTT1mdW5jdGlvbihuLFcpe2lmKCFuKXJldHVybi0xO3RyeXtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKylpZihuLnN0YXJ0KEQpPD1XJiZuLmVuZChEKT49VylyZXR1cm4gRH1jYXRjaChEKXt9cmV0dXJuLTF9OwpCUj1mdW5jdGlvbihuLFcpe3JldHVybiBDTShuLFcpPj0wfTsKeDhqPWZ1bmN0aW9uKG4sVyl7aWYoIW4pcmV0dXJuIE5hTjtXPUNNKG4sVyk7cmV0dXJuIFc+PTA/bi5zdGFydChXKTpOYU59OwpGWj1mdW5jdGlvbihuLFcpe2lmKCFuKXJldHVybiBOYU47Vz1DTShuLFcpO3JldHVybiBXPj0wP24uZW5kKFcpOk5hTn07Cmcud3k9ZnVuY3Rpb24obil7cmV0dXJuIG4mJm4ubGVuZ3RoP24uZW5kKG4ubGVuZ3RoLTEpOk5hTn07Ck0kPWZ1bmN0aW9uKG4pe3JldHVybiBnLnd5KG4pPjB9OwpSZD1mdW5jdGlvbihuLFcpe249RloobixXKTtyZXR1cm4gbj49MD9uLVc6MH07ClFUPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1bXSx2PVtdO2ZvcihsZXQgaz0wO2s8bi5sZW5ndGg7aysrKW4uZW5kKGspPFd8fG4uc3RhcnQoayk+RHx8KGIucHVzaChNYXRoLm1heChXLG4uc3RhcnQoaykpLVcpLHYucHVzaChNYXRoLm1pbihELG4uZW5kKGspKS1XKSk7cmV0dXJuIFRpKGIsdil9OwpWVD1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cuU291cmNlQnVmZmVyPyEhU291cmNlQnVmZmVyLnByb3RvdHlwZS5jaGFuZ2VUeXBlOiExfTsKY1I9ZnVuY3Rpb24oKXtyZXR1cm4hISh3aW5kb3cuTWVkaWFTb3VyY2V8fHdpbmRvdy5NYW5hZ2VkTWVkaWFTb3VyY2V8fHdpbmRvdy5XZWJLaXRNZWRpYVNvdXJjZXx8d2luZG93LkhUTUxNZWRpYUVsZW1lbnQmJkhUTUxNZWRpYUVsZW1lbnQucHJvdG90eXBlLndlYmtpdFNvdXJjZUFkZElkKX07CmFkPWZ1bmN0aW9uKCl7cmV0dXJuISghd2luZG93Lk1lZGlhU291cmNlfHwhd2luZG93Lk1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZCl8fHdpbmRvdy5NYW5hZ2VkTWVkaWFTb3VyY2V9OwpuNj1mdW5jdGlvbihuKXt0cnl7cmV0dXJuIG4uVygpPT09Im9wZW4ifWNhdGNoKFcpe3JldHVybiExfX07CldGPWZ1bmN0aW9uKG4sVyl7bjYobik/Zy5tSygoKT0+e1cobil9KTpuLmNhbGxiYWNrPVd9Owp2Rj1mdW5jdGlvbihuLFcsRCl7REgmJihiQShuLm1lZGlhRWxlbWVudCx7bDoibXN3c3NiIixzcjpuLm1lZGlhRWxlbWVudC5ZYT8ucGcoKX0sITEpLFcuaCQobi5MTCxuKSxELmgkKG4uTEwsbikpO24uTj1XO24uSj1EO2cudShuLFcpO2cudShuLEQpfTsKTEtVPWZ1bmN0aW9uKG4sVyxELGI9IiIpe2I9Vy5taW1lVHlwZStiO3ZhciB2PUQubWltZVR5cGU7Vz1XLklCO0Q9RC5JQjtuLlZRPW4ubWVkaWFTb3VyY2U/LmFkZFNvdXJjZUJ1ZmZlcih2KTtuLmUkPWIuc3BsaXQoIjsiKVswXT09PSJmYWtlc2IiP3ZvaWQgMDpuLm1lZGlhU291cmNlPy5hZGRTb3VyY2VCdWZmZXIoYik7bi5FViYmKG4uRVYud2Via2l0U291cmNlQWRkSWQoIjAiLHYpLG4uRVYud2Via2l0U291cmNlQWRkSWQoIjEiLGIpKTtEPW5ldyBrZyhuLlZRLG4uRVYsIjAiLEpNKHYpLEQsITEpO2I9bmV3IGtnKG4uZSQsbi5FViwiMSIsSk0oYiksVywhMCk7dkYobixELGIpfTsKTDY9ZnVuY3Rpb24obixXLEQsYil7aWYoIW4uTnx8IW4uSilyZXR1cm4gbnVsbDt2YXIgdj1uLk4uaXNWaWV3KCk/bi5OLmskOm4uTixrPW4uSi5pc1ZpZXcoKT9uLkouayQ6bi5KLGg9bmV3IGhaKG4ubWVkaWFFbGVtZW50LG4ubWVkaWFTb3VyY2UsITApO2guaj1uLmo7dkYoaCxuZXcgeGcodixXLEQsYiksbmV3IHhnKGssVyxELGIpKTtuNihuKXx8bi5OLnlPKG4uTi5TVygpKTtyZXR1cm4gaH07CmVnMT1mdW5jdGlvbihuKXtyZXR1cm4gZTQoKFcsRCk9Pmcuc3ooVyxELDQsMUUzKSxuLHtmb3JtYXQ6IlJBVyIsCm1ldGhvZDoiR0VUIix3aXRoQ3JlZGVudGlhbHM6ITB9KX07CmcuZ3Q9ZnVuY3Rpb24obil7dmFyIFc7bi5yZXNwb25zZVR5cGUmJm4ucmVzcG9uc2VUeXBlIT09InRleHQiP24ucmVzcG9uc2VUeXBlPT09ImFycmF5YnVmZmVyIiYmKFc9cFIobmV3IFVpbnQ4QXJyYXkobi5yZXNwb25zZSkpKTpXPW4ucmVzcG9uc2VUZXh0O3JldHVybiFXfHxXLmxlbmd0aD4yMDQ4PyIiOlcuaW5kZXhPZigiaHR0cHM6Ly8iKT09PTA/VzoiIn07CmU0PWZ1bmN0aW9uKG4sVyxEKXtXLm1hdGNoKGdHcik7cmV0dXJuIG4oVyxEKS50aGVuKGI9Pnt2YXIgdj1nLmd0KGIueGhyKTtyZXR1cm4gdj9lNChuLHYsRCk6Yi54aHJ9KX07ClhKaT1mdW5jdGlvbihuLFcsRCl7aWYoIW4/LldjKCkpcmV0dXJuITE7dmFyIGI9Vy5zb21lKGg9PmgucHJvamVjdGlvblR5cGU9PT0iRVFVSVJFQ1RBTkdVTEFSInx8aC5wcm9qZWN0aW9uVHlwZT09PSJFUVVJUkVDVEFOR1VMQVJfVEhSRUVEX1RPUF9CT1RUT00iKSx2PVcuc29tZShoPT5oLnByb2plY3Rpb25UeXBlPT09Ik1FU0giKSxrPVcuc29tZShoPT5oLnN0ZXJlb0xheW91dD09PTEpOwpXPVcuc29tZShoPT5oLmlzSGRyKCkpOwpuPSFEJiYhVyYmbi5TKCJlbmFibGVfd2ViZ2xfbm9vcCIpO3JldHVybiBifHx2fHxrfHxufTsKcXo9ZnVuY3Rpb24obixXLEQsYil7aWYoWEppKG4sVyxEKSlyZXR1cm4hMDtpZighbj8udE0oKXx8IVh2KG4sYikpcmV0dXJuITE7bj1XLnNvbWUodj0+di5pc0hkcigpKTsKcmV0dXJuIER8fG4/ITE6ITB9OwpxdWo9ZnVuY3Rpb24obil7cmV0dXJuIGcub00obixXPT4iRk9STUFUX1NUUkVBTV9UWVBFX09URiI9PT1XLnR5cGUpPyJGT1JNQVRfU1RSRUFNX1RZUEVfT1RGIjoiRk9STUFUX1NUUkVBTV9UWVBFX1VOS05PV04ifTsKRzNDPWZ1bmN0aW9uKG4sVyxEPTAsYix2KXt2YXIgaz1uZXcgZy5HeCgiIixiLmV4cGVyaW1lbnRzLCExKTtrLmR1cmF0aW9uPUR8fDA7Zm9yKGxldCBoIG9mIG4pe249dFooaCxXLGsuZHVyYXRpb24sYix2KTtsZXQge0VsOngsczpMLHk3OmV9PVAwKDE1LDcwMCxoKTsoRD1SeCh4fHxoLnVybHx8IiIsZSxMKSkmJihuLnN0cmVhbVR5cGU9PT0iRk9STUFUX1NUUkVBTV9UWVBFX09URiI/JGcoayxuZXcgcnQoRCxuKSk6JGcoayxuZXcgc2soRCxuLERKKGguaW5pdFJhbmdlKSxESihoLmluZGV4UmFuZ2UpKSkpfWsuaXNPdGY9ITA7cmV0dXJuIGt9Owp0T1o9ZnVuY3Rpb24obixXLEQ9MCxiLHYpe3ZhciBrPW5ldyBnLkd4KCIiLGIuZXhwZXJpbWVudHMsITEpO2suZHVyYXRpb249RHx8MDtmb3IobGV0IGggb2Ygbil7bj10WihoLFcsay5kdXJhdGlvbixiLHYpO0Q9REooaC5pbml0UmFuZ2UpO2xldCB4PURKKGguaW5kZXhSYW5nZSkse0VsOkwsczplLHk3Okd9PVAwKDEzLDcwMixoKSxyPVJ4KEx8fGgudXJsfHwiIixHLGUpO3ImJiRnKGssbmV3IHNrKHIsbixELHgpKX1yZXR1cm4ga307CnRaPWZ1bmN0aW9uKG4sVyxEPTAsYix2KXt2YXIgaz1uLm1pbWVUeXBlfHwiIixoPW4uaXRhZzt2YXIgeD1uLnh0YWdzO2g9aD9oLnRvU3RyaW5nKCk6IiI7eCYmKGgrPWA7JHt4fWApO3g9aDtpZihTRyhrKSl7dmFyIEw9bi53aWR0aHx8NjQwO2g9bi5oZWlnaHR8fDM2MDtsZXQgeT1uLmZwcyxUPW4ucXVhbGl0eUxhYmVsLHo9bi5xdWFsaXR5T3JkaW5hbCxDPW4uY29sb3JJbmZvLFE9bi5wcm9qZWN0aW9uVHlwZTt2YXIgZTtuLnN0ZXJlb0xheW91dCYmKGU9JDh4W24uc3RlcmVvTGF5b3V0XSk7bGV0IFY9TiQobil8fHZvaWQgMDt2YXIgRztDPy5wcmltYXJpZXMmJihHPXIkeFtDLnByaW1hcmllc118fHZvaWQgMCk7TD1uZXcgSFIoTCxoLHksUSxlLHZvaWQgMCxULHomJk56W3pdLFYsRywobi52aWRlb1RyYWNrPy5hc3NvY2lhdGVkQXVkaW9UcmFja0lkPy5sZW5ndGg/PzApPT09MCk7az1wNihrLEwsWWdbbi5pdGFnfHwiIl0pO0hGJiYoays9IjsgZW5hYmxlZmx1c2hkdXJpbmdzZWVrPXRydWUiKTsKZjYmJihrKz0iOyBlbmFibGVyZXNldGF1ZGlvZGVjb2Rlcj10cnVlIik7cXooYixbTF0sVyx2KSYmKGsrPSI7IGRlY29kZS10by10ZXh0dXJlPXRydWUiKX12YXIgcjtpZihJZChrKSl7dmFyIE49bi5hdWRpb1NhbXBsZVJhdGU7Yj1uLmF1ZGlvVHJhY2s7Tj1uZXcgQU0oTj8rTjp2b2lkIDAsbi5hdWRpb0NoYW5uZWxzLG4uc3BhdGlhbEF1ZGlvVHlwZSxuLmlzRHJjLG4ubG91ZG5lc3NEYixuLnRyYWNrQWJzb2x1dGVMb3VkbmVzc0xrZnMsbi5hdWRpb1F1YWxpdHl8fCJBVURJT19RVUFMSVRZX1VOS05PV04iLG4uaXNWYik7YiYmKHY9Yi5kaXNwbGF5TmFtZSxlPWIuaWQsRz1iLmF1ZGlvSXNEZWZhdWx0LGI9Yi5pc0F1dG9EdWJiZWQsdiYmKHI9bmV3IHdQKHYsZXx8IiIsISFHLCEhYikpKX12YXIgSDtuLmNhcHRpb25UcmFjayYmKGI9bi5jYXB0aW9uVHJhY2suZGlzcGxheU5hbWUsdj1uLmNhcHRpb25UcmFjay52c3NJZCxlPW4uY2FwdGlvblRyYWNrLmxhbmd1YWdlQ29kZSxHPW4uY2FwdGlvblRyYWNrLmtpbmQsCmg9bi5jYXB0aW9uVHJhY2suaWQsYiYmdiYmZSYmKEg9bmV3IEtNKGIsdixlLEcsbi54dGFncyxoKSkpO2I9TnVtYmVyKG4uYml0cmF0ZSkvODt2PU51bWJlcihuLmNvbnRlbnRMZW5ndGgpO2U9TnVtYmVyKG4ubGFzdE1vZGlmaWVkKTtoPW4uZHJtRmFtaWxpZXM7Rz1uLnR5cGU7bj1OdW1iZXIobi5hcHByb3hEdXJhdGlvbk1zKTtpZihXJiZoKXt2YXIgQT17fTtmb3IobGV0IHkgb2YgaCkoaD1KWlt5XSkmJihBW2hdPVdbaF0pfXJldHVybiBuZXcgbXUoeCxrLHthdWRpbzpOLHZpZGVvOkwsa1o6cixjb250ZW50UHJvdGVjdGlvbjpBLE5zOmIsWG46RCYmdj92L0Q6MCxjb250ZW50TGVuZ3RoOnYsbGFzdE1vZGlmaWVkOmUsY2FwdGlvblRyYWNrOkgsc3RyZWFtVHlwZTpHLGFwcHJveER1cmF0aW9uTXM6bn0pfTsKczVVPWZ1bmN0aW9uKG4pe3JldHVybiBnLm9NKG4sVz0+IkZPUk1BVF9TVFJFQU1fVFlQRV9PVEYiPT09Vy5zdHJlYW1fdHlwZSk/IkZPUk1BVF9TVFJFQU1fVFlQRV9PVEYiOiJGT1JNQVRfU1RSRUFNX1RZUEVfVU5LTk9XTiJ9OwpOcGo9ZnVuY3Rpb24obixXLEQ9MCxiLHYpe3ZhciBrPW5ldyBnLkd4KCIiLGI/LmV4cGVyaW1lbnRzLCExKTtrLmR1cmF0aW9uPUR8fDA7Zm9yKGxldCBoIG9mIG4paWYobj1JbyhoLFcsay5kdXJhdGlvbixiLHYpLEQ9UngoaC51cmwsaC5zcCxoLnMpKWlmKG4uc3RyZWFtVHlwZT09PSJGT1JNQVRfU1RSRUFNX1RZUEVfT1RGIikkZyhrLG5ldyBydChELG4pKTtlbHNle2xldCB4PW56KGguaW5pdCksTD1ueihoLmluZGV4KTskZyhrLG5ldyBzayhELG4seCxMKSl9ay5pc090Zj0hMDtyZXR1cm4ga307CnBKYj1mdW5jdGlvbihuLFcsRD0wLGIsdil7dmFyIGs9bmV3IGcuR3goIiIsYj8uZXhwZXJpbWVudHMsITEpO2suZHVyYXRpb249RHx8MDtmb3IobGV0IGggb2Ygbil7bj1JbyhoLFcsay5kdXJhdGlvbixiLHYpO0Q9bnooaC5pbml0KTtsZXQgeD1ueihoLmluZGV4KSxMPVJ4KGgudXJsLGguc3AsaC5zKTtMJiYkZyhrLG5ldyBzayhMLG4sRCx4KSl9cmV0dXJuIGt9OwpJbz1mdW5jdGlvbihuLFcsRD0wLGIsdil7dmFyIGs9bi50eXBlO3ZhciBoPW4uaXRhZzt2YXIgeD1uLnh0YWdzO3gmJihoPW4uaXRhZysiOyIreCk7aWYoU0coaykpe3ZhciBMPShuLnNpemV8fCI2NDB4MzYwIikuc3BsaXQoIngiKTtMPW5ldyBIUigrTFswXSwrTFsxXSwrbi5mcHMsbi5wcm9qZWN0aW9uX3R5cGUsK24uc3RlcmVvX2xheW91dCx2b2lkIDAsbi5xdWFsaXR5X2xhYmVsLCtuLnF1YWxpdHlfb3JkaW5hbCxuLmVvdGYsbi5wcmltYXJpZXMsIW4udmlkZW9fdHJhY2tfYXNzb2NpYXRlZF9hdWRpb190cmFja19pZCk7az1wNihrLEwsWWdbbi5pdGFnXSk7SEYmJihrKz0iOyBlbmFibGVmbHVzaGR1cmluZ3NlZWs9dHJ1ZSIpO2Y2JiYoays9IjsgZW5hYmxlcmVzZXRhdWRpb2RlY29kZXI9dHJ1ZSIpO3F6KGIsW0xdLFcsdikmJihrKz0iOyBkZWNvZGUtdG8tdGV4dHVyZT10cnVlIil9dmFyIGU7aWYoSWQoaykpe3ZhciBHPW5ldyBBTSgrbi5hdWRpb19zYW1wbGVfcmF0ZXx8dm9pZCAwLAorbi5hdWRpb19jaGFubmVsc3x8MCxuLnNwYXRpYWxfYXVkaW9fdHlwZSwhIW4uZHJjKTtuLm5hbWUmJihlPW5ldyB3UChuLm5hbWUsbi5hdWRpb190cmFja19pZCxuLmlzRGVmYXVsdD09PSIxIixuLmlzQXV0b0R1YmJlZD09PSIxIikpfXZhciByO24uY2FwdGlvbl9kaXNwbGF5X25hbWUmJm4uY2FwdGlvbl92c3NfaWQmJm4uY2FwdGlvbl9sYW5ndWFnZV9jb2RlJiYocj1uZXcgS00obi5jYXB0aW9uX2Rpc3BsYXlfbmFtZSxuLmNhcHRpb25fdnNzX2lkLG4uY2FwdGlvbl9sYW5ndWFnZV9jb2RlLG4uY2FwdGlvbl9raW5kLG4ueHRhZ3Msbi5jYXB0aW9uX2lkKSk7Yj1OdW1iZXIobi5iaXRyYXRlKS84O3Y9TnVtYmVyKG4uY2xlbik7eD1OdW1iZXIobi5sbXQpO0Q9RCYmdj92L0Q6MDtpZihXJiZuLmRybV9mYW1pbGllcyl7dmFyIE49e307Zm9yKGxldCBIIG9mIG4uZHJtX2ZhbWlsaWVzLnNwbGl0KCIsIikpTltIXT1XW0hdfXJldHVybiBuZXcgbXUoaCxrLHthdWRpbzpHLHZpZGVvOkwsCmtaOmUsY29udGVudFByb3RlY3Rpb246TixOczpiLFhuOkQsY29udGVudExlbmd0aDp2LGxhc3RNb2RpZmllZDp4LGNhcHRpb25UcmFjazpyLHN0cmVhbVR5cGU6bi5zdHJlYW1fdHlwZSxhcHByb3hEdXJhdGlvbk1zOk51bWJlcihuLmFwcHJveF9kdXJhdGlvbl9tcyl9KX07Cll1aD1mdW5jdGlvbihuKXtzd2l0Y2gobil7Y2FzZSAiZXF1aXJlY3Rhbmd1bGFyIjpyZXR1cm4iRVFVSVJFQ1RBTkdVTEFSIjtjYXNlICJlcXVpcmVjdGFuZ3VsYXJfdGhyZWVkX3RvcF9ib3R0b20iOnJldHVybiJFUVVJUkVDVEFOR1VMQVJfVEhSRUVEX1RPUF9CT1RUT00iO2Nhc2UgIm1lc2giOnJldHVybiJNRVNIIjtjYXNlICJyZWN0YW5ndWxhciI6cmV0dXJuIlJFQ1RBTkdVTEFSIjtkZWZhdWx0OnJldHVybiJVTktOT1dOIn19OwpIcWg9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgInNwYXRpYWxfYXVkaW9fdHlwZV9hbWJpc29uaWNzXzVfMSI6cmV0dXJuIlNQQVRJQUxfQVVESU9fVFlQRV9BTUJJU09OSUNTXzVfMSI7Y2FzZSAic3BhdGlhbF9hdWRpb190eXBlX2FtYmlzb25pY3NfcXVhZCI6cmV0dXJuIlNQQVRJQUxfQVVESU9fVFlQRV9BTUJJU09OSUNTX1FVQUQiO2Nhc2UgInNwYXRpYWxfYXVkaW9fdHlwZV9mb2Ffd2l0aF9ub25fZGllZ2V0aWMiOnJldHVybiJTUEFUSUFMX0FVRElPX1RZUEVfRk9BX1dJVEhfTk9OX0RJRUdFVElDIjtkZWZhdWx0OnJldHVybiJTUEFUSUFMX0FVRElPX1RZUEVfTk9ORSJ9fTsKZnRaPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gUzQobmV3IGcuR3gobixXLEQpLG4pfTsKR189ZnVuY3Rpb24obil7cmV0dXJuIGcuRGwobi5OLFc9PmdaKDI0LDExNjQsVy5YYi5OKSl9OwpmRHc9ZnVuY3Rpb24obil7cmV0dXJuIGcuRGwobi5OLFc9PiEhVy5pbmZvLnZpZGVvJiZXLmluZm8udmlkZW8uaXNIZHIoKSl9OwokZz1mdW5jdGlvbihuLFcpe24uTltXLmluZm8uaWRdPVc7bi5KLnNldChjdyhXLG4uelcpLFcpfTsKUzQ9ZnVuY3Rpb24obixXPSIiKXtuLnN0YXRlPTE7bi5TJD0oMCxnLlIpKCk7cmV0dXJuIGVnMShXfHxuLnNvdXJjZVVybCkudGhlbihEPT57aWYoIW4ucU4oKSl7bi5sTj1ELnN0YXR1cztEPUQucmVzcG9uc2VUZXh0O2xldCB2PW5ldyBET01QYXJzZXI7RD1nLmdUKHYsZy5IVihEKSwidGV4dC94bWwiKS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiTVBEIilbMF07bi5jSj1qeChsVChELCJtaW5pbXVtVXBkYXRlUGVyaW9kIikpKjFFM3x8SW5maW5pdHk7Yjp7aWYoRC5hdHRyaWJ1dGVzKWZvcihiIG9mIEQuYXR0cmlidXRlcylpZihiLnZhbHVlPT09Imh0dHA6Ly95b3V0dWJlLmNvbS95dC8yMDEyLzEwLzEwIil7dmFyIGI9Yi5uYW1lLnNwbGl0KCI6IilbMV07YnJlYWsgYn1iPSIifW4uaj1iO24uaXNMaXZlPW4uY0o8SW5maW5pdHkmJm4uaXNMaXZlUGxheWJhY2s7bi5ISj1OdW1iZXIobFQoRCxuLmorIjplYXJsaWVzdE1lZGlhU2VxdWVuY2UiKSl8fDA7aWYoYj1EYXRlLnBhcnNlKEN6KGxUKEQsCm4uaisiOm1wZFJlc3BvbnNlVGltZSIpKSkpbi5lJD0oKDAsZy5SKSgpLWIpLzFFMztuLmlzTGl2ZSYmRC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiU2VnbWVudFRpbWVsaW5lIikubGVuZ3RoPD0wfHxnLmR6KEQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIlBlcmlvZCIpLG4ueUUsbik7bi5zdGF0ZT0yO24uV0ooImxvYWRlZCIpO0FaKG4pfXJldHVybiBufSkuc1AoRD0+e2lmKEQgaW5zdGFuY2VvZiBnLiRUKXt2YXIgYj1ELnhocjsKbi5sTj1iLnN0YXR1c31uLnN0YXRlPTM7bi5XSigibG9hZGVycm9yIik7cmV0dXJuIGcucnAoYil9KX07CmcubUg9ZnVuY3Rpb24obil7cmV0dXJuIGcuRGwobi5OLFc9PlcuaW5mby5OKCkpfTsKSzY9ZnVuY3Rpb24obil7cmV0dXJuIGcuRGwobi5OLFc9PlcuaW5mby52aWRlbz9XLmluZm8udmlkZW8ucHJvamVjdGlvblR5cGU9PT0iRVFVSVJFQ1RBTkdVTEFSIjohMSl9OwpPaz1mdW5jdGlvbihuKXtyZXR1cm4gZy5EbChuLk4sVz0+Vy5pbmZvLnZpZGVvP1cuaW5mby52aWRlby5wcm9qZWN0aW9uVHlwZT09PSJFUVVJUkVDVEFOR1VMQVJfVEhSRUVEX1RPUF9CT1RUT00iOiExKX07ClBGPWZ1bmN0aW9uKG4pe3JldHVybiBnLkRsKG4uTixXPT5XLmluZm8udmlkZW8/Vy5pbmZvLnZpZGVvLnByb2plY3Rpb25UeXBlPT09Ik1FU0giOiExKX07CkokVT1mdW5jdGlvbihuKXtyZXR1cm4gZy5EbChuLk4sVz0+Vy5pbmZvLnZpZGVvP1cuaW5mby52aWRlby5zdGVyZW9MYXlvdXQ9PT0xOiExKX07Ckl0aT1mdW5jdGlvbihuKXtyZXR1cm4gZy5iayhuLk4sVz0+Vy5pbmZvLnZpZGVvP1cubnUoKTohMCl9OwpaSD1mdW5jdGlvbihuLFcsRCl7Vz1nLlZmKFcuaW5mbyxuLnpXKTtpZihEKXtsZXQgYj1Nayh7aXRhZzpXLml0YWcsbG10Om4uelc/MDpXLmxtdHx8MCx4dGFnczpXLnh0YWdzfSk7aWYobi52SltiXSlyZXR1cm47bi52SltiXT1EfW4uR0MucHVzaChXKX07CnlDPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bFQoVywiaWQiKTtEPUQucmVwbGFjZSgiOiIsIjsiKTt2YXIgYj1sVChXLCJtaW1lVHlwZSIpLHY9bFQoVywiY29kZWNzIik7Yj12P2Ake2J9OyBjb2RlY3M9IiR7dn0iYDpiO3Y9TnVtYmVyKGxUKFcsImJhbmR3aWR0aCIpKS84O3ZhciBrPU51bWJlcihUUChXLCJCYXNlVVJMIikuZ2V0QXR0cmlidXRlKG4uaisiOmNvbnRlbnRMZW5ndGgiKSksaD1uLmR1cmF0aW9uJiZrP2svbi5kdXJhdGlvbjowO2lmKFNHKGIpKXt2YXIgeD1OdW1iZXIobFQoVywid2lkdGgiKSksTD1OdW1iZXIobFQoVywiaGVpZ2h0IikpLGU9TnVtYmVyKGxUKFcsImZyYW1lUmF0ZSIpKTtsZXQgQT1ZdWgobFQoVyxuLmorIjpwcm9qZWN0aW9uVHlwZSIpKTthOnN3aXRjaChsVChXLG4uaisiOnN0ZXJlb0xheW91dCIpKXtjYXNlICJsYXlvdXRfbGVmdF9yaWdodCI6dmFyIEc9MTticmVhayBhO2Nhc2UgImxheW91dF90b3BfYm90dG9tIjpHPTI7YnJlYWsgYTtkZWZhdWx0Okc9CjB9Rz1uZXcgSFIoeCxMLGUsQSxHKX1pZihJZChiKSl7dmFyIHI9TnVtYmVyKGxUKFcsImF1ZGlvU2FtcGxpbmdSYXRlIikpO3ZhciBOPU51bWJlcihsVChXLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJBdWRpb0NoYW5uZWxDb25maWd1cmF0aW9uIilbMF0sInZhbHVlIikpO3g9SHFoKGxUKFcsbi5qKyI6c3BhdGlhbEF1ZGlvVHlwZSIpKTtyPW5ldyBBTShyLE4seCk7YTp7TD1sVChXLCJsYW5nIil8fCJ1bmQiO2lmKE49VFAoVywiUm9sZSIpKWlmKGU9bFQoTiwidmFsdWUiKXx8IiIsZy5lcChVayxlKSl7Tj1gJHtMfS4ke1VrW2VdfWA7eD1lPT09Im1haW4iO249bFQoVyxuLmorIjpsYW5nTmFtZSIpfHxgJHtMfSAtICR7ZX1gO049bmV3IHdQKG4sTix4KTticmVhayBhfU49dm9pZCAwfX1pZihXPVRQKFcsIkNvbnRlbnRQcm90ZWN0aW9uIikpaWYoVy5nZXRBdHRyaWJ1dGUoInNjaGVtZUlkVXJpIik9PT0iaHR0cDovL3lvdXR1YmUuY29tL2RybS8yMDEyLzEwLzEwIil7dmFyIEg9e307Zm9yKFc9ClcuZmlyc3RDaGlsZDtXIT1udWxsO1c9Vy5uZXh0U2libGluZyl7aWYoIShXIGluc3RhbmNlb2YgRWxlbWVudCkpY29udGludWU7aWYoIS9TeXN0ZW1VUkwvLnRlc3QoVy5ub2RlTmFtZSkpY29udGludWU7bj1XLmdldEF0dHJpYnV0ZSgidHlwZSIpO3g9Vy50ZXh0Q29udGVudDtuJiZ4JiYoSFtuXT14LnRyaW0oKSl9fWVsc2UgSD12b2lkIDA7cmV0dXJuIG5ldyBtdShELGIse2F1ZGlvOnIsdmlkZW86RyxrWjpOLGNvbnRlbnRQcm90ZWN0aW9uOkgsTnM6dixYbjpoLGNvbnRlbnRMZW5ndGg6a30pfTsKQVo9ZnVuY3Rpb24obil7dmFyIFc9bi5jSjtpc0Zpbml0ZShXKSYmKEVrKG4pP24ucmVmcmVzaCgpOihXPU1hdGgubWF4KDAsbi5TJCtXLSgwLGcuUikoKSksbi5LfHwobi5LPW5ldyBnLmZfKG4ucmVmcmVzaCxXLG4pLGcudShuLG4uSykpLG4uSy5zdGFydChXKSkpfTsKdmFyIFN1eD1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgsTCxlKXtyZXR1cm4gTTNbSVsxMF1dKHRoaXMsNCwxNjk5LG4sVyxELGIsdixrLGgseCxMLGUpfTsKRWs9ZnVuY3Rpb24obil7cmV0dXJuIG4uaXNMaXZlJiYoMCxnLlIpKCktbi5TJD49bi5jSn07CkEkaT1mdW5jdGlvbihuKXtuPW4uTjtmb3IobGV0IFcgaW4gbil7bGV0IEQ9bltXXS5pbmRleDtpZihELmlzTG9hZGVkKCkpcmV0dXJuIEQueCQoKSsxfXJldHVybiAwfTsKaUE9ZnVuY3Rpb24obil7cmV0dXJuIG4ub1I/bi5vUi0obi5EfHxuLnRpbWVzdGFtcE9mZnNldCk6MH07CnVBPWZ1bmN0aW9uKG4pe3JldHVybiBuLkpVP24uSlUtKG4uRHx8bi50aW1lc3RhbXBPZmZzZXQpOjB9Owpvbz1mdW5jdGlvbihuKXtpZighaXNOYU4obi5UQykpcmV0dXJuIG4uVEM7dmFyIFc9bi5OO2Zvcih2YXIgRCBpbiBXKXt2YXIgYj1XW0RdLmluZGV4O2lmKGIuaXNMb2FkZWQoKSYmIVdbRF0uaW5mby5OKCkpe1c9MDtmb3IoRD1iLlpPKCk7RDw9Yi54JCgpO0QrKylXKz1iLmdldER1cmF0aW9uKEQpO1cvPWIuSDcoKTtXPU1hdGgucm91bmQoVy8uNSkqLjU7Yi5INygpPjEwJiYobi5UQz1XKTtyZXR1cm4gV31pZihuLmlzTGl2ZSYmKGI9V1tEXSxiLnJiKSlyZXR1cm4gYi5yYn1yZXR1cm4gTmFOfTsKbTh0PWZ1bmN0aW9uKG4sVyl7bj1xYyhuLk4sYj0+Yi5pbmRleC5pc0xvYWRlZCgpKTsKaWYoIW4pcmV0dXJuIE5hTjtuPW4uaW5kZXg7dmFyIEQ9bi5SMyhXKTtyZXR1cm4gbi5nZXRTdGFydFRpbWUoRCk9PT1XP1c6RDxuLngkKCk/bi5nZXRTdGFydFRpbWUoRCsxKTpOYU59Owp6eD1mdW5jdGlvbihuLFcpe2lmKCFuLk5bIjAiXSl7dmFyIEQ9bmV3IG11KCIwIiwiZmFrZXNiIix7dmlkZW86bmV3IEhSKDAsMCwwLHZvaWQgMCx2b2lkIDAsImF1dG8iKX0pO24uTlsiMCJdPVc/bmV3IGR0KG5ldyBnLndaKCJodHRwOi8vd3d3LnlvdXR1YmUuY29tL3ZpZGVvcGxheWJhY2siKSxELCJmYWtlIik6bmV3IHNrKG5ldyBnLndaKCJodHRwOi8vd3d3LnlvdXR1YmUuY29tL3ZpZGVvcGxheWJhY2siKSxELG5ldyBhQigwLDApLG5ldyBhQigwLDApKX19OwpnLmxBPWZ1bmN0aW9uKG4pe2lmKG4uaXNNYW5pZmVzdGxlc3MpZm9yKGxldCBXIGluIG4uTiluLk5bV10uaW5kZXguc2VnbWVudHM9W119OwpUeD1mdW5jdGlvbihuLFcsRCl7Zm9yKGxldCBiIGluIG4uTil7bGV0IHY9bi5OW2JdLmluZm8uTigpfHxuLk5bYl0uaW5mby5mWSgpO0Q9PT12JiZuLk5bYl0uaW5kZXg/Lk8oVyl9fTsKajQ9ZnVuY3Rpb24obil7Zm9yKGxldCBXIGluIG4uTiluLk5bV10uaW5mby5OKCl8fFBBKG4uTltXXS5pbmRleCxJbmZpbml0eSl9OwpDNj1mdW5jdGlvbihuLFcsRCl7Zm9yKGxldCBoIGluIG4uTil7dmFyIGI9bi5OW2hdLmluZGV4LHY9VyxrPUQ7Yi5PVCYmKHYmJihiLnFxPU1hdGgubWF4KGIucXEsdikpLGsmJihiLkRuPU1hdGgubWF4KGIuRG58fDAsaykpKX1EJiYobi50dz1ELzFFMyl9OwpCRj1mdW5jdGlvbihuLFcsRCxiPSExKXtiJiZEPT09bi5QWHx8KG4uYmQucHVzaChXKSxuLlBYPUQsbi5XSigiY3VlcG9pbnRzYWRkZWQiLEQpKX07CktLdD1mdW5jdGlvbihuKXtuLkpVPTA7bi5vUj0wO24uSVQ9MH07CkZ2PWZ1bmN0aW9uKG4pe3JldHVybiBuLlZRJiZuLmlzTWFuaWZlc3RsZXNzP24uaXNMaXZlSGVhZFBsYXlhYmxlOm4uaXNMaXZlfTsKcDY9ZnVuY3Rpb24obixXLEQpe3d0PT09bnVsbCYmKHd0PXdpbmRvdy5NZWRpYVNvdXJjZSYmTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkJiZNZWRpYVNvdXJjZS5pc1R5cGVTdXBwb3J0ZWQoJ3ZpZGVvL3dlYm07IGNvZGVjcz0idnAwOS4wMi41MS4xMC4wMS4wOS4xNi4wOS4wMCInKSYmIU1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZCgndmlkZW8vd2VibTsgY29kZWNzPSJ2cDA5LjAyLjUxLjEwLjAxLjA5Ljk5Ljk5LjAwIicpKTtpZihNeiYmd2luZG93Lk1lZGlhU291cmNlJiZNZWRpYVNvdXJjZS5pc1R5cGVTdXBwb3J0ZWQhPT12b2lkIDApcmV0dXJuIHd0fHxEIT09IjkiJiZEIT09IigiP3d0fHxEIT09IjloIiYmRCE9PSIoaCJ8fChuPSd2aWRlby93ZWJtOyBjb2RlY3M9InZwOS4yIicpOm49J3ZpZGVvL3dlYm07IGNvZGVjcz0idnA5IicsbjtpZighd3QmJiFSb3x8biE9PSd2aWRlby93ZWJtOyBjb2RlY3M9InZwOSInJiZuIT09J3ZpZGVvL3dlYm07IGNvZGVjcz0idnA5LjIiJylyZXR1cm4gbjsKRD0iMDAiO3ZhciBiPSIwOCIsdj0iMDEiLGs9IjAxIixoPSIwMSI7bj09PSd2aWRlby93ZWJtOyBjb2RlY3M9InZwOS4yIicmJihEPSIwMiIsYj0iMTAiLFcucHJpbWFyaWVzPT09ImJ0MjAyMCImJihoPXY9IjA5IiksVy5OPT09InNtcHRlMjA4NCImJihrPSIxNiIpLFcuTj09PSJhcmliLXN0ZC1iNjciJiYoaz0iMTgiKSk7cmV0dXJuYHZpZGVvL3dlYm07IGNvZGVjcz0iJHtbInZwMDkiLEQsIjUxIixiLCIwMSIsdixrLGgsIjAwIl0uam9pbigiLiIpfSJgfTsKVkM9ZnVuY3Rpb24obixXLEQpe249YCR7bn0ke1c+NDk/InA2MCI6Vz4zMj8icDQ4IjoiIn1gO1c9ZjcoKVtuXTtpZihXIT1udWxsJiZXPjApcmV0dXJuIFc7Vz1RQy5nZXQobik7aWYoVyE9bnVsbCYmVz4wKXJldHVybiBXO0Q9RD8uZ2V0KG4pO3JldHVybiBEIT1udWxsJiZEPjA/RDo4MTkyfTsKT3F4PWZ1bmN0aW9uKG4sVz0hMSl7UWh3KFcpO1ZwQyhXKTtpZihXKXtmb3IobGV0IEQgb2YgUUMua2V5cygpKUQuc3RhcnRzV2l0aCgiMSIpfHxRQy5kZWxldGUoRCk7Zm9yKGxldCBEIG9mIGNGLnZhbHVlcygpKUQuc3RhcnRzV2l0aCgiMSIpfHxjRi5kZWxldGUoRCk7Zm9yKGxldCBEIG9mIG4ua2V5cygpKUQuc3RhcnRzV2l0aCgiMSIpfHxuLmRlbGV0ZShEKX1lbHNlIFFDLmNsZWFyKCksY0YuY2xlYXIoKSxuLmNsZWFyKCl9OwpVOFo9ZnVuY3Rpb24obix7aXNPdGY6VyxtVjpELHlYOmIsSVI6dixPdzprLEhpOmgsbFU6eCxvTDpMLHhkOmUsZGlzYWJsZUF2MTpHLGRCOnJ9KXt2YXIgTj1uZXcgUGVNKG4pO2lmKG4uV1goKXx8bi5TKCJodG1sNV9sb2dnaW5nX2Zvcm1hdF9zZWxlY3Rpb24iKSlOLlc9ITA7Ti5HQz1rO04uSGk9aCYmbi5LO04ueGQ9ZTtnLnViKCJ3aW5kb3dzIG50IDUuMSIpJiYhZy5hbyYmKE4uYnY9ITApO2lmKGs9RClrPWcubk4obik/WnFTKG4pOiExO2smJihOLmNKPSEwKTt4JiYoTi5idj0hMCxOLk5kPSEwKTtXJiYhbi5TKCJodG1sNV9vdGZfcHJlZmVyX3ZwOSIpJiYoTi5idj0hMCk7bi5wbGF5ZXJTdHlsZT09PSJwaWNhc2F3ZWIiJiYoVyYmKE4uYnY9ITEpLE4udHc9ITEpO3YmJihOLmJ2PSEwKTtTSihuLlcsQVQuQ0hBTk5FTFMpJiYobi5TKCJodG1sNV9lbmFibGVfYWMzIikmJihOLmo9ITApLG4uUygiaHRtbDVfZW5hYmxlX2VhYzMiKSYmKE4uVj0hMCksbi5TKCJodG1sNV9lbmFibGVfYWMzX2dhcGxlc3MiKSYmCihOLkhKPSEwKSk7bi5TKCJodG1sNV9ibG9ja184a19oZnIiKSYmKE4uUFg9ITApO04uSz1nLmRNKG4uZXhwZXJpbWVudHMsImh0bWw1X21heF9zZWxlY3RhYmxlX3F1YWxpdHlfb3JkaW5hbCIpO04uWT1nLmRNKG4uZXhwZXJpbWVudHMsImh0bWw1X21pbl9zZWxlY3RhYmxlX3F1YWxpdHlfb3JkaW5hbCIpO2cuV1gmJihOLndhPTQ4MCk7aWYoYnx8RClOLnR3PSExO04uQ3U9ITE7Ti5kaXNhYmxlQXYxPUc7Ti5KPW4uUygiaHRtbDVfbG9nX25vX2F2MV9yZWFzb24iKTtXPURLKG4sTi5OLHZvaWQgMCxOLmRpc2FibGVBdjEpO1c+MCYmVzwyMTYwJiYoVlQoKXx8bi5TKCJodG1sNV9mb3JtYXRfaHlicmlkaXphdGlvbiIpKSYmKE4uTi5zdXBwb3J0c0NoYW5nZVR5cGU9K1ZUKCksTi5uUz1XKTtXPj0yMTYwJiYoTi5lJD0hMCk7Ti5vTD1MO04uRkY9Zy5SZ3x8YzAoKSYmIUw/ITE6ITA7Ti5EPW4uUygiaHRtbDVfZm9ybWF0X2h5YnJpZGl6YXRpb24iKTtOLkJWPW4uUygiaHRtbDVfZGlzYWJsZV9lbmNyeXB0ZWRfdnA5X2xpdmVfbm9uXzJrXzRrIik7Ck4ualc9cjtyZXR1cm4gTn07CkRLPWZ1bmN0aW9uKG4sVz17fSxELGI9ITEpe2lmKGIpcmV0dXJuIFcuZGlzYWJsZWQ9MSwwO2lmKFNKKG4uVyxBVC5BVjFfQ09ERUNTKSYmU0oobi5XLEFULkhFSUdIVCkmJlNKKG4uVyxBVC5CSVRSQVRFKSlyZXR1cm4gVy5pc0NhcGFiaWxpdHlVc2FibGU9MSw4MTkyO2I9MTA4MDt2YXIgdj1uYXZpZ2F0b3IuaGFyZHdhcmVDb25jdXJyZW5jeTt2PD0yJiYoYj00ODApO1cuY29yZUNvdW50PXY7aWYodj1nLmRNKG4uZXhwZXJpbWVudHMsImh0bWw1X2RlZmF1bHRfYXYxX3RocmVzaG9sZCIpKWI9V1siZGVmYXVsdCJdPXY7aWYodj1uLlcuY0opVy5tY2FwPXYsYj1NYXRoLm1heChiLHYpO2lmKEQpe2lmKHY9RC52aWRlb0luZm9zLmZpbmQoaD0+aC5NVygpKT8uaj8ucG93ZXJFZmZpY2llbnQpYj04MTkyLFcuaXNFZmZpY2llbnQ9MTsKRD1ELnZpZGVvSW5mb3NbMF0udmlkZW87bGV0IGs9TWF0aC5taW4oVkMoIjEiLEQuZnBzKSxWQygiMSIsMzApKTtXLnBlcmZDYXA9aztiPU1hdGgubWluKGIsayk7IUQuaXNIZHIoKXx8dnx8bi5adCgpLk4uUVEoeSRqKXx8KFcuaGRyPTEsYio9Ljc1KX1lbHNlIG49VkMoIjEiLDMwKSxXLnBlcmZDYXAzMD1uLGI9TWF0aC5taW4oYixuKSxuPVZDKCIxIiw2MCksVy5wZXJmQ2FwNjA9bixiPU1hdGgubWluKGIsbik7cmV0dXJuIFcuYXYxVGhyZXNob2xkPWJ9OwpySGk9ZnVuY3Rpb24obil7dmFyIFc9WyJvIiwiYSIsIkEiXTtpZihuLnhkPT09MSYmKG4uaiYmKFc9WyJtYWMzIiwiTUFDMyJdLmNvbmNhdChXKSksbi5WJiYoVz1bIm1lYWMzIiwiTUVBQzMiXS5jb25jYXQoVykpLG4uVlF8fG4uZkIpKXtsZXQgRD1bXTtuLlZRJiZELnB1c2goImkiKTtuLmZCJiZELnB1c2goIkkiKTtXPUQuY29uY2F0KFcpfW4uY0omJihXPVsic28iLCJzYSJdLmNvbmNhdChXKSk7IW4uTmR8fG4uSEp8fG4uWHx8bi5zNXx8Vy51bnNoaWZ0KCJhIik7bi5YJiYoVz0oYm9bbi5YXXx8W24uWF0pLmNvbmNhdChXKSk7cmV0dXJuIFd9OwpKSHI9ZnVuY3Rpb24obil7aWYobi5HQylyZXR1cm5bImYiXTtpZihnLnViKCJhcHBsZXR2NSIpKXJldHVybiJoIDloIDkgOCBIIChoICggKiIuc3BsaXQoIiAiKTt2YXIgVz1bIjloIiwiOSIsImgiLCI4Il07bi5ZJCYmVy5wdXNoKCIxZSIpO1c9Vy5jb25jYXQoWyIoaCIsIigiLCJIIiwiKiJdKTtuLmUkJiYoVy51bnNoaWZ0KCIxIiksVy51bnNoaWZ0KCIxaCIpKTtuLmJ2JiZXLnVuc2hpZnQoImgiKTtuLk8mJihXPShib1tuLk9dfHxbbi5PXSkuY29uY2F0KFcpKTtyZXR1cm4gV307CnZYPWZ1bmN0aW9uKCl7dmFyIG49d2luZG93LFc9bi5NU01lZGlhS2V5cztDJCgpJiYhVyYmKFc9bi5XZWJLaXRNZWRpYUtleXMpO3JldHVybiBXJiZXLmlzVHlwZVN1cHBvcnRlZD9XOm51bGx9Owpoej1mdW5jdGlvbihuKXtyZXR1cm4gbmF2aWdhdG9yLnJlcXVlc3RNZWRpYUtleVN5c3RlbUFjY2Vzcz9nLm9kJiYhZy5kOCgpP0NfKCI0NSIpOmcuUmd8fGcua2g/bi5FcSgiZWRnZV9ub25wcmVmaXhlZF9lbWUiKTpnLmFvP0NfKCI0NyIpOmcuR24mJm4uRXEoImh0bWw1X2VuYWJsZV9zYWZhcmlfZmFpcnBsYXkiKT8hMTohMDohMX07CnhoPWZ1bmN0aW9uKG4pe3JldHVybiBuLlg/ITE6IW4ua2V5U3lzdGVtQWNjZXNzJiYhIXZYKCkmJm4ua2V5U3lzdGVtPT09ImNvbS5taWNyb3NvZnQucGxheXJlYWR5In07CkxOPWZ1bmN0aW9uKG4pe3JldHVybiBuLmtleVN5c3RlbT09PSJjb20ubWljcm9zb2Z0LnBsYXlyZWFkeSJ9OwplVD1mdW5jdGlvbihuKXtyZXR1cm4hbi5rZXlTeXN0ZW1BY2Nlc3MmJiEhdlgoKSYmbi5rZXlTeXN0ZW09PT0iY29tLmFwcGxlLmZwcy4xXzAifTsKZzE9ZnVuY3Rpb24obil7cmV0dXJuIG4ua2V5U3lzdGVtPT09ImNvbS55b3V0dWJlLmZhaXJwbGF5In07CmcuWFY9ZnVuY3Rpb24obil7cmV0dXJuIG4uZmxhdm9yPT09ImZhaXJwbGF5In07CkVHQz1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj16USgpLGs9KEQ9dnx8RCYmQyQoKSk/WyJjb20ueW91dHViZS5mYWlycGxheSJdOlsiY29tLndpZGV2aW5lLmFscGhhIl07VyYmay51bnNoaWZ0KCJjb20ueW91dHViZS53aWRldmluZS5sMyIpO3YmJmImJmsudW5zaGlmdCgiY29tLnlvdXR1YmUuZmFpcnBsYXkuc2JkbCIpO3JldHVybiBEP2s6bj9bLi4uaywuLi5xVi5wbGF5cmVhZHldOlsuLi5xVi5wbGF5cmVhZHksLi4ua119OwokaD1mdW5jdGlvbihuKXtpZighbi5xTigpKWlmKG4uSi5sZW5ndGg9PT0wKW4uY2FsbGJhY2sobi5YKTtlbHNle3ZhciBXPW4uSlswXSxEPW4uV1tXXSxiPWlxdChuLEQpO0dMJiZHTC5rZXlTeXN0ZW09PT1XJiZHTC5JMT09PUpTT04uc3RyaW5naWZ5KGIpPyhuLlUoInJlbWtzYSIse3JlOiEwfSksdHoobixELEdMLmtleVN5c3RlbUFjY2VzcykpOihuLlUoInJlbWtzYSIse3JlOiExLG9rOkdMPy5rZXlTeXN0ZW0/PyIifSksR0w9dm9pZCAwLG5hdmlnYXRvci5yZXF1ZXN0TWVkaWFLZXlTeXN0ZW1BY2Nlc3MoVyxiKS50aGVuKFl6KHY9Pnt0eihuLEQsdixiKX0pLFl6KCgpPT57bi5qPSFuLmomJm4uV1tuLkpbMF1dLmZsYXZvcj09PSJ3aWRldmluZSI7Cm4uanx8bi5KLnNoaWZ0KCk7JGgobil9KSkpfX07Cm9Hdz1mdW5jdGlvbihuKXtpZih2WCgpJiYoZy5Hbnx8dzgpKW4uWC5wdXNoKG5ldyByMSgiZmFpcnBsYXkiLCJjb20uYXBwbGUuZnBzLjFfMCIsIiIsbi55US5leHBlcmltZW50cykpO2Vsc2V7dmFyIFc9dTFyKCksRD1nLmxfKG4uSixiPT57dmFyIHY9bi5XW2JdLGs9ITEsaD0hMTtmb3IobGV0IHggaW4gbi5OW3YuZmxhdm9yXSlXKHgsYikmJih2LkpbeF09ITAsaz1rfHx4LmluZGV4T2YoImF1ZGlvLyIpPT09MCxoPWh8fHguaW5kZXhPZigidmlkZW8vIik9PT0wKTtyZXR1cm4gayYmaH0pOwpEJiZuLlgucHVzaChuLldbRF0pO24uSj1bXX1uLmNhbGxiYWNrKG4uWCl9OwpkOGk9ZnVuY3Rpb24obixXKXtuLmNhbGxiYWNrPVc7bi5YPVtdO2h6KG4ueVEuZXhwZXJpbWVudHMpPyRoKG4pOm9HdyhuKX07CmlxdD1mdW5jdGlvbihuLFcpe3ZhciBEPXtpbml0RGF0YVR5cGVzOlsiY2VuYyIsIndlYm0iXSxhdWRpb0NhcGFiaWxpdGllczpbXSx2aWRlb0NhcGFiaWxpdGllczpbXX07aWYobi5TKCJodG1sNV9lbmFibGVfdnA5X2ZhaXJwbGF5IikmJmcxKFcpKXJldHVybiBELmF1ZGlvQ2FwYWJpbGl0aWVzLnB1c2goe2NvbnRlbnRUeXBlOidhdWRpby9tcDQ7IGNvZGVjcz0ibXA0YS40MC41Iid9KSxELnZpZGVvQ2FwYWJpbGl0aWVzLnB1c2goe2NvbnRlbnRUeXBlOid2aWRlby9tcDQ7IGNvZGVjcz0iYXZjMS40ZDQwMGIiJ30pLFtEXTtMTihXKSYmKEQuaW5pdERhdGFUeXBlcz1bImtleWlkcyIsImNlbmMiXSk7Zm9yKGxldCB2IG9mIE9iamVjdC5rZXlzKG4uTltXLmZsYXZvcl0pKXt2YXIgYj12LmluZGV4T2YoImF1ZGlvLyIpPT09MDtsZXQgaz1iP0QuYXVkaW9DYXBhYmlsaXRpZXM6RC52aWRlb0NhcGFiaWxpdGllcztXLmZsYXZvciE9PSJ3aWRldmluZSJ8fG4uaj9rLnB1c2goe2NvbnRlbnRUeXBlOnZ9KToKYj9rLnB1c2goe2NvbnRlbnRUeXBlOnYscm9idXN0bmVzczoiU1dfU0VDVVJFX0NSWVBUTyJ9KTooZy5vZCYmZy51Yigid2luZG93cyBudCIpJiYhbi5TKCJodG1sNV9kcm1fZW5hYmxlX21vaG8iKXx8ay5wdXNoKHtjb250ZW50VHlwZTp2LHJvYnVzdG5lc3M6IkhXX1NFQ1VSRV9BTEwifSksYj12LG4ueVEuVy5KJiZ2LmluY2x1ZGVzKCJ2cDA5IikmJihiPXYrIjsgZXhwZXJpbWVudGFsPWFsbG93ZWQiKSxrLnB1c2goe2NvbnRlbnRUeXBlOmIscm9idXN0bmVzczoiU1dfU0VDVVJFX0RFQ09ERSJ9KSxnLnNkKG4ueVEpJiYoVkgoKXx8b0soKSkmJihuLlUoInN3Y3J5cHRvIix7fSksay5wdXNoKHtjb250ZW50VHlwZTp2LHJvYnVzdG5lc3M6IlNXX1NFQ1VSRV9DUllQVE8ifSkpKX1yZXR1cm5bRF19Owp0ej1mdW5jdGlvbihuLFcsRCxiKXtpZighbi5xTigpKXtiJiYoR0w9e2tleVN5c3RlbTpXLmtleVN5c3RlbSxrZXlTeXN0ZW1BY2Nlc3M6RCxJMTpKU09OLnN0cmluZ2lmeShiKX0pO1cua2V5U3lzdGVtQWNjZXNzPUQ7aWYoTE4oVykpe3ZhciB2PWk4KCk7Zm9yKHZhciBrIG9mIE9iamVjdC5rZXlzKG4uTltXLmZsYXZvcl0pKVcuSltrXT0hIXYuY2FuUGxheVR5cGUoayl9ZWxzZXtrPVcua2V5U3lzdGVtQWNjZXNzLmdldENvbmZpZ3VyYXRpb24oKTtpZihrLmF1ZGlvQ2FwYWJpbGl0aWVzKWZvcih2IG9mIGsuYXVkaW9DYXBhYmlsaXRpZXMpVy5KW3YuY29udGVudFR5cGVdPSEwO2lmKGsudmlkZW9DYXBhYmlsaXRpZXMpZm9yKGxldCBoIG9mIGsudmlkZW9DYXBhYmlsaXRpZXMpVy5KW2guY29udGVudFR5cGVdPSEwfW4uWC5wdXNoKFcpO24udXNlQ29iYWx0V2lkZXZpbmV8fG4uUygiaHRtbDVfZW5hYmxlX3ZwOV9mYWlycGxheSIpJiZXLk4oKT8obi5KLnNoaWZ0KCksJGgobikpOm4uY2FsbGJhY2sobi5YKX19Owp1MXI9ZnVuY3Rpb24oKXt2YXIgbj12WCgpO2lmKG4pe2xldCBEPW4uaXNUeXBlU3VwcG9ydGVkO3JldHVybihiLHYpPT5EKHYsYil9dmFyIFc9aTgoKTsKcmV0dXJuIFcmJihXLmFkZEtleXx8Vy53ZWJraXRBZGRLZXkpPyhELGIpPT4hIVcuY2FuUGxheVR5cGUoRCxiKTooKT0+ITF9OwpsdGI9ZnVuY3Rpb24obixXKXtzd2l0Y2goVy5VMCl7Y2FzZSAiYm9vbCI6cmV0dXJuIG4uRXEoVy5ueCk7Y2FzZSAiaW50IjpyZXR1cm4gbj1OVihuLFcubngpLGcuJFUobik7Y2FzZSAiZG91YmxlIjpyZXR1cm4gTlYobixXLm54KTtjYXNlICJzdHJpbmciOnJldHVybiB6ZzIobixXLm54KTtjYXNlICJpbnQzMl9saXN0IjpyZXR1cm4gcE4obixXLm54KTtjYXNlICJpbnQ2NF9saXN0IjpyZXR1cm4gcE4obixXLm54KS5tYXAoRD0+Zy4kVShEKSk7CmNhc2UgInN0cmluZ19saXN0Ijp0aHJvdyBFcnJvcigiU3RyaW5nIGxpc3QgZmxhZ3MgYXJlIG5vdCBzdXBwb3J0ZWQgaW4gV1BDQyIpO2RlZmF1bHQ6dGhyb3cgRXJyb3IoIlVua25vd24gZmxhZyB0eXBlIik7fX07Ck5WPWZ1bmN0aW9uKG4sVyl7bj1uLmZsYWdzLmdldChgJHtXfWApO3JldHVybiBOdW1iZXIobil8fDB9Owp6ZzI9ZnVuY3Rpb24obixXKXtyZXR1cm4obj1uLmZsYWdzLmdldChgJHtXfWApKT9uLnRvU3RyaW5nKCk6IiJ9OwpwTj1mdW5jdGlvbihuLFcpe2lmKG49bi5mbGFncy5nZXQoYCR7V31gKSlpZihuPW4ucmVwbGFjZSgvXFsgKiguKj8pICpcXS8sIiQxIikpcmV0dXJuIG4uc3BsaXQoIiwiKS5tYXAoTnVtYmVyKTtyZXR1cm5bXX07CmcuZE09ZnVuY3Rpb24obixXLEQ9MCl7bj1uLlFRKFcpO0pTT04uc3RyaW5naWZ5KG4pO3JldHVybiBuPT09dm9pZCAwP0Q6TnVtYmVyKG4pfTsKZy5ZaD1mdW5jdGlvbihuLFcpe3JldHVybihuPW4uUVEoVykpP24udG9TdHJpbmcoKToiIn07ClRwYj1mdW5jdGlvbihuKXtpZihuPW4uUVEoImh0bWw1X3dlYl9wb19leHBlcmltZW50X2lkcyIpKWlmKG49bi5yZXBsYWNlKC9cWyAqKC4qPykgKlxdLywiJDEiKSlyZXR1cm4gbi5zcGxpdCgiLCIpLm1hcChOdW1iZXIpO3JldHVybltdfTsKSFg9ZnVuY3Rpb24obil7aWYobi5OKXJldHVybiBuLk47aWYobi5leHBlcmltZW50SWRzLmxlbmd0aDw9MSlyZXR1cm4gbi5OPW4uZXhwZXJpbWVudElkcyxuLk47dmFyIFc9Wy4uLm4uZXhwZXJpbWVudElkc10ubWFwKEQ9Pk51bWJlcihEKSk7Clcuc29ydCgpO2ZvcihsZXQgRD1XLmxlbmd0aC0xO0Q+MDstLUQpV1tEXS09V1tELTFdO24uTj1XLm1hcChEPT5ELnRvU3RyaW5nKCkpOwpuLk4udW5zaGlmdCgidjEiKTtyZXR1cm4gbi5OfTsKTkRTPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bmV3IE1hcDtmb3IobGV0IGIgb2YgVy5rZXlzKCkpe2xldCB2PWIuc3BsaXQoIl8iKVswXTtuLmhhcyh2KXx8RC5zZXQoYixXLmdldChiKSl9cmV0dXJuIER9OwpZMlM9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVcudmlkZW8/LmZwc3x8MCx2PWAke259XyR7Yn1gLGs9ISFXLmF1ZGlvLGg9e2l0YWc6Vy5pdGFnLElCOm4sZVM6a307aWYoayloLm51bUNoYW5uZWxzPVcuYXVkaW8ubnVtQ2hhbm5lbHM7ZWxzZXt2YXIgeD1XLnZpZGVvO2gubWF4V2lkdGg9eD8ud2lkdGg7aC5tYXhIZWlnaHQ9eD8uaGVpZ2h0O2gubWF4RnJhbWVyYXRlPWI7aC5tYXhCaXRyYXRlQnBzPVcuTnMqODtoLno5PXg/LmlzSGRyKCl9eD1ELmdldCh2KTt4P2t8fChXPU1hdGgubWF4KHgubWF4V2lkdGh8fDAseC5tYXhIZWlnaHR8fDApPk1hdGgubWF4KGgubWF4V2lkdGh8fDAsaC5tYXhIZWlnaHR8fDApP3g6aCxuPXtpdGFnOlcuaXRhZyxJQjpuLGVTOmssbWF4V2lkdGg6TWF0aC5tYXgoeC5tYXhXaWR0aHx8MCxoLm1heFdpZHRofHwwKSxtYXhIZWlnaHQ6TWF0aC5tYXgoeC5tYXhIZWlnaHR8fDAsaC5tYXhIZWlnaHR8fDApLG1heEZyYW1lcmF0ZTpiLHo5Olcuejl9LG4ubWF4Qml0cmF0ZUJwcz0KVy5tYXhCaXRyYXRlQnBzLEQuc2V0KHYsbikpOkQuc2V0KHYsaCl9OwpPRD1mdW5jdGlvbihuLFcsRD0xKXt2YXIgYj1XLml0YWc7aWYoYj09PSIwIilyZXR1cm4hMDt2YXIgdj1XLm1pbWVUeXBlO2lmKFcuSUI9PT0iMWUiJiYhbi5YKXJldHVybiJkYXYxZW5jIjtpZihXLk1XKCkmJm4uWSlyZXR1cm4iZGF2MSI7aWYoVy52aWRlbyYmKFcudmlkZW8uaXNIZHIoKXx8Vy52aWRlby5wcmltYXJpZXM9PT0iYnQyMDIwIikmJiEoU0oobixBVC5FT1RGKXx8d2luZG93Lm1hdGNoTWVkaWEmJih3aW5kb3cubWF0Y2hNZWRpYSgiKGR5bmFtaWMtcmFuZ2U6IGhpZ2gpLCAodmlkZW8tZHluYW1pYy1yYW5nZTogaGlnaCkiKS5tYXRjaGVzfHx3aW5kb3cuc2NyZWVuLnBpeGVsRGVwdGg+MjQmJndpbmRvdy5tYXRjaE1lZGlhKCIoY29sb3ItZ2FtdXQ6IHAzKSIpLm1hdGNoZXMpKSlyZXR1cm4iZGhkciI7aWYoYj09PSIzMzgiJiYhKGcub2Q/Q18oNTMpOmcuYW8mJkNfKDY0KSkpcmV0dXJuImRvcHVzIjtEPXZHVShXLEQpO24uSiYmVy5YKCkmJihEW0FULkVYUEVSSU1FTlRBTC5uYW1lXT0KImFsbG93ZWQiKTtmb3IobGV0IHggb2YgT2JqZWN0LmtleXMoQVQpKXtsZXQgTD1BVFt4XTt2YXIgaztpZihrPURbTC5uYW1lXSlpZihrPSEoTD09PUFULkVPVEYmJlcubWltZVR5cGUuaW5kZXhPZigidnAwOS4wMiIpPjApKXtrPUw7dmFyIGg9VztrPSEobi5leHBlcmltZW50cy5FcSgiaHRtbDVfaWdub3JlX2gyNjRfZnJhbWVyYXRlX2NhcCIpJiZrPT09QVQuRlJBTUVSQVRFJiYoaC5JQj09PSJIInx8aC5JQj09PSJoIikpfWlmKGspaWYoU0oobixMKSlpZihuLmope2lmKG4ualtMLm5hbWVdPERbTC5uYW1lXSlyZXR1cm4gTC5uYW1lfWVsc2Ugdj1gJHt2fTsgJHtMLm5hbWV9PSR7RFtMLm5hbWVdfWA7ZWxzZSBpZihaTyhXKSYmTD09PUFULkVPVEYpcmV0dXJuImR2cDkyIn1uLk8mJlcudmlkZW8mJlcudmlkZW8ucXVhbGl0eU9yZGluYWw+MTA4MCYmVy5jb250ZW50UHJvdGVjdGlvbiYmKHYrPSI7IGhkY3A9Mi4yIik7cmV0dXJuIGI9PT0iMjI3Ij8iaHFjZW5jIjpiPT09IjU4NSJ8fApiPT09IjU4OCJ8fGI9PT0iNTgzInx8Yj09PSI1ODYifHxiPT09IjU4NCJ8fGI9PT0iNTg3Inx8Yj09PSI1OTEifHxiPT09IjU5MiI/Im5ld2h2YyI6elEoKSYmaWIoKT49MjEmJmcudWIoImFwcGxldHY1IikmJihiPT09IjQxMCJ8fGI9PT0iODQ1Iik/ITA6bi5pc1R5cGVTdXBwb3J0ZWQodik/ITA6InRwdXMifTsKU0o9ZnVuY3Rpb24obixXKXtXLm5hbWUgaW4gbi5EfHwobi5EW1cubmFtZV09ajVpKG4sVykpO3JldHVybiBuLkRbVy5uYW1lXX07CkNlVT1mdW5jdGlvbihuKXtuYXZpZ2F0b3IubWVkaWFDYXBhYmlsaXRpZXM/LmRlY29kaW5nSW5mbyYmbmF2aWdhdG9yLm1lZGlhQ2FwYWJpbGl0aWVzLmRlY29kaW5nSW5mbyh7dHlwZToibWVkaWEtc291cmNlIix2aWRlbzp7Y29udGVudFR5cGU6J3ZpZGVvL21wNDsgY29kZWNzPSJhdjAxLjAuMTJNLjA4Iicsd2lkdGg6Mzg0MCxoZWlnaHQ6MjE2MCxiaXRyYXRlOjMyRTYsZnJhbWVyYXRlOjYwfX0pLnRoZW4oVz0+e1cuc21vb3RoJiZXLnBvd2VyRWZmaWNpZW50JiYobi5jSj0yMTYwKX0pfTsKZk49ZnVuY3Rpb24oKXt2YXIgbj1vSygpJiYhQ18oMjkpLFc9Zy51YigiZ29vZ2xlIHR2IikmJmcudWIoImNocm9tZSIpJiYhQ18oMzApO3JldHVybiBufHxXPyExOmNSKCl9OwpKej1mdW5jdGlvbihuLFcsRCl7dmFyIGI9NDgwLHY9MTA4MCxrO2lmKGs9bi5leHBlcmltZW50cy5adCgpLk4uUVEoQnB0KSluLlY9PT1udWxsJiYobi5WPSExLFNKKG4sQVQuV0lEVEgpJiZTSihuLEFULkhFSUdIVCkmJihuLlY9ZHkoJ3ZpZGVvL21wNDsgY29kZWNzPSJhdjAxLjAuMTdNLjA4Ijsgd2lkdGg9NzY4MDsgaGVpZ2h0PTQzMjAnKSkpLGs9bi5WO2smJih2PTIxNjApO2ZvcihsZXQgaCBvZiBXKVc9aC52aWRlby5xdWFsaXR5T3JkaW5hbCxXPD12JiZXPmImJk9EKG4saCxEKT09PSEwJiYoYj1XKTtyZXR1cm4gYn07CmcuSW49ZnVuY3Rpb24obixXPSExKXtyZXR1cm4gZk4oKSYmbi5pc1R5cGVTdXBwb3J0ZWQoJ2F1ZGlvL21wNDsgY29kZWNzPSJtcDRhLjQwLjIiJyl8fCFXJiZuLmNhblBsYXlUeXBlKGk4KCksImFwcGxpY2F0aW9uL3gtbXBlZ1VSTCIpPyEwOiExfTsKd0p4PWZ1bmN0aW9uKG4pe0ZLQygoKT0+e2ZvcihsZXQgVyBvZiBPYmplY3Qua2V5cyhBVCkpU0oobixBVFtXXSl9KX07Cmo1aT1mdW5jdGlvbihuLFcpe2lmKG4uailyZXR1cm4hIW4ualtXLm5hbWVdO2lmKFc9PT1BVC5CSVRSQVRFJiZuLmlzVHlwZVN1cHBvcnRlZCgndmlkZW8vd2VibTsgY29kZWNzPSJ2cDkiOyB3aWR0aD0zODQwOyBoZWlnaHQ9MjE2MDsgYml0cmF0ZT0yMDAwMDAwJykmJiFuLmlzVHlwZVN1cHBvcnRlZCgndmlkZW8vd2VibTsgY29kZWNzPSJ2cDkiOyB3aWR0aD0zODQwOyBoZWlnaHQ9MjE2MDsgYml0cmF0ZT0yMDAwMDAwMCcpKXJldHVybiExO2lmKFc9PT1BVC5BVjFfQ09ERUNTKXJldHVybiBuLmlzVHlwZVN1cHBvcnRlZChgdmlkZW8vbXA0OyBjb2RlY3M9JHtXLnZhbGlkfWApJiYhbi5pc1R5cGVTdXBwb3J0ZWQoYHZpZGVvL21wNDsgY29kZWNzPSR7Vy52R31gKTtpZihXLnZpZGVvKXt2YXIgRD0ndmlkZW8vd2VibTsgY29kZWNzPSJ2cDkiJztuLmlzVHlwZVN1cHBvcnRlZChEKXx8KEQ9J3ZpZGVvL21wNDsgY29kZWNzPSJhdmMxLjRkNDAxZSInKX1lbHNlIEQ9J2F1ZGlvL3dlYm07IGNvZGVjcz0ib3B1cyInLApuLmlzVHlwZVN1cHBvcnRlZChEKXx8KEQ9J2F1ZGlvL21wNDsgY29kZWNzPSJtcDRhLjQwLjIiJyk7cmV0dXJuIG4uaXNUeXBlU3VwcG9ydGVkKGAke0R9OyAke1cubmFtZX09JHtXLnZhbGlkfWApJiYhbi5pc1R5cGVTdXBwb3J0ZWQoYCR7RH07ICR7Vy5uYW1lfT0ke1cudkd9YCl9OwpTVD1mdW5jdGlvbihuLFcpe3ZhciBEPTA7bi5XLmhhcyhXKSYmKEQ9bi5XLmdldChXKS56RSk7bi5XLnNldChXLHt6RTpEKzEsZzE6MioqKEQrMSl9KTtuLk49ITB9OwptVj1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKFcmJnR5cGVvZiBXPT09Im9iamVjdCIpe2xldCBrPWg9PkF6KG4saCxELGIsdik7CmlmKFlvKFcpKXJldHVybiBXLnRoZW4oayk7aWYoWUQoVykpcmV0dXJuIFNrKFcsayl9cmV0dXJuIEF6KG4sVyxELGIsdil9OwpLTj1mdW5jdGlvbihuLFcsRCxiPTEpe0Q+PTAmJihXIGluIG4uTnx8KG4uTltXXT1uZXcgTU9pKSxuLk5bV10uZEUoRCxiKSl9OwpBej1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPSgwLGcuUikoKTt2PXY/dihXKTp2b2lkIDA7dmFyIGg9dj8uVF8/PzE7aCE9PTAmJktOKG4sdj8ucHJvZmlsZT8/RCxrLWIsaCk7cmV0dXJuIFd9OwpPZD1mdW5jdGlvbihuKXt2YXIgVz13aW5kb3c7Vy55d2N8fChXLnl3Yz17fSk7dmFyIEQ9Vy55d2Nbbl07aWYoRClyZXR1cm4gRDtEPXt9O3JldHVybiBXLnl3Y1tuXT1EfTsKUFg9ZnVuY3Rpb24obil7dmFyIFc9d2luZG93O1cueXdjJiZkZWxldGUgVy55d2Nbbl19OwpSZ1U9ZnVuY3Rpb24obil7dmFyIFc9T2Qobik7aWYoVy5iaW5QKXJldHVybiBXLmJpblA7Vy5iaW5QPVByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PmZldGNoKG4pKS50aGVuKEQ9PntpZighRC5vayl0aHJvdyBFcnJvcihgSFRUUCR7RC5zdGF0dXNUZXh0fWApOwpyZXR1cm4gRC5hcnJheUJ1ZmZlcigpfSk7ClcuYmluUC50aGVuKEQ9PntXLmJpbj1EfSwoKT0+e1BYKG4pfSk7CnJldHVybiBXLmJpblB9OwpFZD1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIE9vKHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgYj1aSy50WCgpLHY9biYmVWQ7aWYoIXYmJiFXKXJldHVybiBEPy4oIndhc21ucyIse3A6bj8iMSI6IjAiLGE6Vz8iMSI6IjAiLHM6VWQ/IjEiOiIwIn0pLGZsKEVycm9yKCJ3YXNtLndtLm5zIikpO3ZhciBrPW5ldyBRNXI7aWYodil0cnl7bGV0IGg9eWllbGQqUFAoVk9yKGssbikpLHg9bmV3IHlNKGgsaywhMSk7WksuZVUoIndpbml0IixiKTtEPy4oIndhc21zdyIse30pO3JldHVybiB4fWNhdGNoKGgpe2lmKEQ/Ligid2FzbWVycnciLHtlOmAke2h9YH0pLCFXKXRocm93IEVycm9yKCJ3YXNtLndtLml3Iix7Y2F1c2U6aH0pO31pZighVyl0aHJvdyBFcnJvcigid2FzbS53bS54eCIpO3RyeXtsZXQgaD15aWVsZCpQUChXKGspKSx4PW5ldyB5TSh7ZXhwb3J0czpofSxrLCEwKTtaSy5lVSgid2luaXRqcyIsYik7RD8uKCJ3YXNtc2EiLHt9KTtyZXR1cm4geH1jYXRjaChoKXt0aHJvdyBEPy4oIndhc21lcnJhIiwKe2U6YCR7aH1gfSksRXJyb3IoYHdhc20ud20uaWE6ICR7aH1gKTt9fSgpfSl9OwpWT3I9ZnVuY3Rpb24obixXKXtyZXR1cm4gT28oYyR0LGZ1bmN0aW9uKCl7dmFyIEQ9dGhpcztyZXR1cm4gZnVuY3Rpb24qKCl7aWYoIUQuTil0aHJvdyJ3YXNtLnBzLm5zIjt2YXIgYj15aWVsZCpQUChhdHQoRCxXKSk7aWYoIWIpdGhyb3cid2FzbS5wcy51bSI7cmV0dXJuIHlpZWxkKlBQKFdlYkFzc2VtYmx5Lmluc3RhbnRpYXRlKGIsbikpfSgpfSl9OwphdHQ9ZnVuY3Rpb24obixXKXtyZXR1cm4gT28obixmdW5jdGlvbigpe3ZhciBEPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBiPVtdLHY9KCk9PiJ3YXNtLnBzLmM6IFsiK2IubWFwKHg9PmAiJHt4fSJgKS5qb2luKCIsICIpKyJdIixrPU9kKFcpOwppZihrLm1vZClyZXR1cm4gay5tb2Q7aWYoay5tb2RQKXRyeXtyZXR1cm4geWllbGQqUFAoay5tb2RQKX1jYXRjaCh4KXtiLnVuc2hpZnQoInBjbSIpfXZhciBoPWsuYmluO2lmKCFoJiZrLmJpblApdHJ5e2g9eWllbGQqUFAoay5iaW5QKX1jYXRjaCh4KXtiLnVuc2hpZnQoInBmYiIpfWlmKCFoKXRyeXtoPXlpZWxkKlBQKFJnVShXKSl9Y2F0Y2goeCl7dGhyb3cgRC5OPSExLGIudW5zaGlmdChgZmI6ICR7eH1gKSx2KCk7fXRyeXtyZXR1cm4geWllbGQqUFAoV2ViQXNzZW1ibHkuY29tcGlsZShoKSl9Y2F0Y2goeCl7UFgoVyksYi51bnNoaWZ0KGBjYTogJHt4fWApfXRocm93IHYoKTt9KCl9KX07CmlvPWZ1bmN0aW9uKG4sVyxELGIpe0Q9bi5XVi5tZW1vcnkuY29weUluKEQpO3ZhciB2PW4uTjt2LldWLmV4cG9ydHMuQUVTMTI4Q1RSQ2lwaGVyX3NldENvdW50ZXIodi5jaXBoZXIsRC5ieXRlT2Zmc2V0KTtXPW4uV1YubWVtb3J5LmNvcHlJbihXKTtuLk4uZW5jcnlwdChXKTt2PXZvaWQgMDtpZihiKXtiPW4uV1Y7dj1uLko7bGV0IGs9Yi5tZW1vcnkuYnVmZmVyKGIubWVtb3J5Lm1hbGxvYygzMiksMzIpO2IuZXhwb3J0cy5TaGEyNTZIbWFjKHYuYnl0ZU9mZnNldCx2LmJ5dGVMZW5ndGgsRC5ieXRlT2Zmc2V0LEQuYnl0ZUxlbmd0aCxXLmJ5dGVPZmZzZXQsVy5ieXRlTGVuZ3RoLGsuYnl0ZU9mZnNldCk7dj1uLldWLm1lbW9yeS5tb3ZlT3V0KGspfW4uV1YubWVtb3J5LmZyZWUoRC5ieXRlT2Zmc2V0KTtyZXR1cm57RzQ6bi5XVi5tZW1vcnkubW92ZU91dChXKSxzaWduYXR1cmU6dn19OwpuWUM9ZnVuY3Rpb24obil7bi5FaC5leHBvcnRzLlRyYWNrZWRQb2ludGVyX3JlbGVhc2Uobi5pZCl9Owpvbj1mdW5jdGlvbihuKXtuLlh8fChuLlg9bmV3IHVvKG4uSikpO3JldHVybiBuLlh9OwpnLmQxPWZ1bmN0aW9uKG4pe3RyeXtyZXR1cm4gbHAobil9Y2F0Y2goVyl7cmV0dXJuIG51bGx9fTsKekw9ZnVuY3Rpb24obil7dmFyIFc9SG4oKTtpZihXLnZhbHVlcyl7Vz1XLnZhbHVlcztsZXQgaD17fTtmb3IodmFyIEQgb2YgT2JqZWN0LmtleXMobi52YWx1ZXMpKXtXW0RdJiZuLkpbRF0mJihuLnZhbHVlc1tEXSs9V1tEXS1uLkpbRF0pO3ZhciBiPW4sdj1iO2lmKCF2LnZhbHVlc1tEXSl7dmFyIGs9SG4oKTt2LnZhbHVlcz1rLnZhbHVlc3x8e307di5GWT1rLmhhbGZMaXZlc3x8e307di5KPWsudmFsdWVzP09iamVjdC5hc3NpZ24oe30say52YWx1ZXMpOnt9fWhbRF09Yi52YWx1ZXNbRF0mJmIuRllbRF0/Yi52YWx1ZXNbRF0vMioqKGIuTi9iLkZZW0RdKTowfW4uSj1ofUQ9bi5GWTtXPXt9O1cudmFsdWVzPW4uSjtXLmhhbGZMaXZlcz1EO2cuUEIoInl0LXBsYXllci1tZW1vcnkiLFcsMjU5MkUzKX07Clh2PWZ1bmN0aW9uKG4sVyl7cmV0dXJuISFXJiYhIW4uWnQoKS5OLlFRKFdJTSkmJihXLnN0YXJ0c1dpdGgoImciKXx8Vy5zdGFydHNXaXRoKCJsIikpfTsKZy5zZD1mdW5jdGlvbihuKXtyZXR1cm4gbG8obik9PT0iTVdFQiJ9OwpUTD1mdW5jdGlvbihuKXtuLmdUPT09bnVsbCYmKG4uZ1Q9d2luZG93Lk1lZGlhU291cmNlJiZ3aW5kb3cuTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkP3dpbmRvdy5NZWRpYVNvdXJjZS5pc1R5cGVTdXBwb3J0ZWQoJ3ZpZGVvL21wNDsgY29kZWNzPSJhdmMxLjQyMDAxRSI7IGRlY29kZS10by10ZXh0dXJlPXRydWUnKTohMSk7cmV0dXJuIG4uZ1R9OwpqVD1mdW5jdGlvbihuKXtyZXR1cm4gbG8obik9PT0iVFZIVE1MNV9TSU1QTFlfRU1CRURERURfUExBWUVSIn07CmcubzQ9ZnVuY3Rpb24obil7cmV0dXJuIG4uSiYmZy5DTihuKSYmIUJYKG4pJiYhbi5YfTsKQlg9ZnVuY3Rpb24obil7cmV0dXJuIG4uWT09PSJhZHVuaXQifHxuLnBsYXllclN0eWxlPT09Imd2biJ9OwpGVj1mdW5jdGlvbihuKXtyZXR1cm4gbi5ZPT09ImRldGFpbHBhZ2UifTsKZy53MT1mdW5jdGlvbihuKXtyZXR1cm4gdzgmJiFuLnhofHxnLnViKCJuaW50ZW5kbyB3aWl1Iik/ITA6ITF9OwpnLkNOPWZ1bmN0aW9uKG4pe3JldHVybiBuLlk9PT0iZW1iZWRkZWQifTsKZy5NVj1mdW5jdGlvbihuKXtyZXR1cm4gbG8obik9PT0iV0VCX1JFTUlYIn07ClFNPWZ1bmN0aW9uKG4pe2lmKCFuLndlYlBsYXllckNvbnRleHRDb25maWc/LmVtYmVkc0hvc3RGbGFncz8uZW5hYmxlTGl0ZVV4fHxuLnZKfHxuLlh8fG4uRHx8bi5jSj09PSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRlAiKXJldHVybiJFTUJFRERFRF9QTEFZRVJfTElURV9NT0RFX05PTkUiO249Zy5kTShuLmV4cGVyaW1lbnRzLCJlbWJlZHNfd2ViX2xpdGVfbW9kZSIpO3JldHVybiBuPT09dm9pZCAwPyJFTUJFRERFRF9QTEFZRVJfTElURV9NT0RFX1VOS05PV04iOm4+PTAmJm48Um4ubGVuZ3RoP1JuW25dOiJFTUJFRERFRF9QTEFZRVJfTElURV9NT0RFX1VOS05PV04ifTsKY1g9ZnVuY3Rpb24obixXLEQ9ITEpe24uUyQ9Yk8obi5TJCxXLnZpZGVvX2lkKTtuLmZCPWJPKG4uZkIsVy5ldmVudGlkKTtuLmZCJiYod289bi5mQik7dmFyIGI9W107Zm9yKGxldCB2IG9mIE9iamVjdC5rZXlzKFZNKSl7bGV0IGs9Vk1bdl0saD1XW2tdO2ghPW51bGwmJihoIT09bi5OW2tdJiZiLnB1c2goayksbi5OW2tdPWgpfSFEJiZiLmxlbmd0aD4wJiZuLm9NJiYoYi5zb3J0KCksZy5HcShuZXcgZy5ReCgiUGxheWVyIGNsaWVudCBwYXJhbWV0ZXJzIGNoYW5nZWQgYWZ0ZXIgc3RhcnR1cCIsYikpKTtuLnVzZXJBZ2U9REkobi51c2VyQWdlLFcudXNlcl9hZ2UpO24udXNlckRpc3BsYXlJbWFnZT1iTyhuLnVzZXJEaXNwbGF5SW1hZ2UsVy51c2VyX2Rpc3BsYXlfaW1hZ2UpO2cuakkobi51c2VyRGlzcGxheUltYWdlKXx8KG4udXNlckRpc3BsYXlJbWFnZT0iIik7bi51c2VyRGlzcGxheU5hbWU9Yk8obi51c2VyRGlzcGxheU5hbWUsVy51c2VyX2Rpc3BsYXlfbmFtZSk7bi55dz1iTyhuLnl3LApXLnVzZXJfZ2VuZGVyKTtuLmNzaVBhZ2VUeXBlPWJPKG4uY3NpUGFnZVR5cGUsVy5jc2lfcGFnZV90eXBlKTtuLmNzaVNlcnZpY2VOYW1lPWJPKG4uY3NpU2VydmljZU5hbWUsVy5jc2lfc2VydmljZV9uYW1lKTtuLmVWPW55KG4uZVYsVy5lbmFibGVjc2kpO24ucGFnZUlkPWJPKG4ucGFnZUlkLFcucGFnZWlkKTtpZihEPVcuZW5hYmxlZF9lbmdhZ2VfdHlwZXMpbi5lbmFibGVkRW5nYWdlVHlwZXM9bmV3IFNldChELnNwbGl0KCIsIikpO1cubGl2aW5nX3Jvb21fc2Vzc2lvbl9wb190b2tlbiYmKG4ualc9Vy5saXZpbmdfcm9vbV9zZXNzaW9uX3BvX3Rva2VuLnRvU3RyaW5nKCkpfTsKZy5hbj1mdW5jdGlvbihuKXtyZXR1cm4vd2ViL2kudGVzdChsbyhuKSl9Owpsbz1mdW5jdGlvbihuKXtyZXR1cm4gbi5OLmN9OwpjOT1mdW5jdGlvbihuLFcpe3JldHVybiFuLlgmJm9LKCkmJkNfKDU1KSYmbi5jb250cm9sc1R5cGU9PT0iMyImJiFXfTsKV0U9ZnVuY3Rpb24obil7bj1nLm5FKG4uRGEpO3JldHVybiBuPT09Ind3dy55b3V0dWJlLW5vY29va2llLmNvbSI/Ind3dy55b3V0dWJlLmNvbSI6bn07CmcuRGY9ZnVuY3Rpb24obil7cmV0dXJuIGxvKG4pPT09IldFQl9VTlBMVUdHRUQifTsKYmk9ZnVuY3Rpb24obixXLEQpe3JldHVybiBuLnByb3RvY29sKyI6Ly9pMS55dGltZy5jb20vdmkvIitXKyIvIisoRHx8ImhxZGVmYXVsdC5qcGciKX07CnZFPWZ1bmN0aW9uKG4pe3JldHVybiBGVihuKSYmIWcuRGYobil9OwpnLms2PWZ1bmN0aW9uKG4pe3JldHVybi9eVFZIVE1MNS8udGVzdChsbyhuKSl9OwpodT1mdW5jdGlvbihuKXtyZXR1cm4gbG8obik9PT0iVFZIVE1MNV9DQVNUInx8bG8obik9PT0iVFZIVE1MNSImJihuLk4uY3Zlci5zdGFydHNXaXRoKCI2LjIwMTMwNzI1Iil8fG4uTi5jdmVyLnN0YXJ0c1dpdGgoIjYuMjAxMzA3MjYiKSl9OwpnLng2PWZ1bmN0aW9uKG4pe3JldHVybiBsbyhuKT09PSJUVkhUTUw1In07CkxFPWZ1bmN0aW9uKG4pe3JldHVybiBuLk4uY21vZGVsPT09IkNIUk9NRUNBU1QgVUxUUkEvU1RFQUsifHxuLk4uY21vZGVsPT09IkNIUk9NRUNBU1QvU1RFQUsifTsKZy5IXz1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbz4xP3dpbmRvdy5kZXZpY2VQaXhlbFJhdGlvOjF9OwpnLmVNPWZ1bmN0aW9uKG4pe3JldHVybiBsbyhuKS50b1VwcGVyQ2FzZSgpPT09IldFQiJ9OwpnLlhDPWZ1bmN0aW9uKG4pe3JldHVybiBsbyhuKT09PSJXRUJfS0lEUyJ9OwpnLnFGPWZ1bmN0aW9uKG4pe3JldHVybiBsbyhuKT09PSJUVkhUTUw1X1VOUExVR0dFRCJ9OwpnLkdsPWZ1bmN0aW9uKG4pe3JldHVybiBnLkRmKG4pfHxsbyhuKT09PSJUVl9VTlBMVUdHRURfQ0FTVCJ8fGcucUYobil9Owp0dT1mdW5jdGlvbihuKXtyZXR1cm4gbG8obik9PT0iV0VCX01VU0lDX0lOVEVHUkFUSU9OUyJ9OwpnLiQ2PWZ1bmN0aW9uKG4pe3JldHVybiBsbyhuKT09PSJXRUJfRU1CRURERURfUExBWUVSIn07Cmcubk49ZnVuY3Rpb24obil7cmV0dXJuKG4uZGV2aWNlSXNBdWRpb09ubHl8fCFnLm9kfHxnLk1MfHxuLmNvbnRyb2xzVHlwZT09PSIzIj8hMTpnLlFIP24uSiYmZy5aWCg1MSk6ITApfHwobi5kZXZpY2VJc0F1ZGlvT25seXx8IWcuYW98fGcuTUx8fG4uY29udHJvbHNUeXBlPT09IjMiPyExOmcuUUg/bi5KJiZnLlpYKDQ4KTpnLlpYKDM4KSl8fChuLmRldmljZUlzQXVkaW9Pbmx5fHwhcmN8fGcuTUx8fG4uY29udHJvbHNUeXBlPT09IjMiPyExOmcuUUg/bi5KJiZnLlpYKDM3KTpnLlpYKDI3KSl8fCFuLmRldmljZUlzQXVkaW9Pbmx5JiZnLnNtJiYhRm4oKSYmZy5aWCgxMSl8fCFuLmRldmljZUlzQXVkaW9Pbmx5JiZnLkduJiZnLlpYKCI2MDQuNCIpfHxuLldjKCl9OwpacVM9ZnVuY3Rpb24obil7aWYoZy5DTihuKSYmTkYpcmV0dXJuITE7aWYoZy5hbyl7aWYoIWcuWlgoNDcpfHwhZy5aWCg1MikmJmcuWlgoNTEpKXJldHVybiExfWVsc2UgaWYoZy5HbilyZXR1cm4hMTtyZXR1cm4gd2luZG93LkF1ZGlvQ29udGV4dHx8d2luZG93LndlYmtpdEF1ZGlvQ29udGV4dD8hMDohMX07CmcucEU9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5lbmFibGVkRW5nYWdlVHlwZXMuaGFzKFcudG9TdHJpbmcoKSl8fER2aS5pbmNsdWRlcyhXKX07CnZZaj1mdW5jdGlvbihuKXt2YXIgVz1XRShuKTtiVmkuaW5jbHVkZXMoVykmJihXPSJ3d3cueW91dHViZS5jb20iKTtyZXR1cm4gbi5wcm90b2NvbCsiOi8vIitXfTsKZy5IRT1mdW5jdGlvbihuLFc9IiIpe2lmKG4uSFkpe2xldCBEPW5ldyBZNixiLHY9bi5IWSgpO3Yuc2lnbmVkT3V0P2I9IiI6di50b2tlbj9iPXYudG9rZW46di5wZW5kaW5nUmVzdWx0LnRoZW4oaz0+e3Yuc2lnbmVkT3V0P0QucmVzb2x2ZSgiIik6RC5yZXNvbHZlKGsudG9rZW4pfSxrPT57Zy5HcShuZXcgZy5ReCgiYjE4OTM0ODMyOF9vYXV0aF9jYWxsYmFja19mYWlsZWQiLHtlcnJvcjprfSkpOwpELnJlc29sdmUoVyl9KTsKcmV0dXJuIGIhPT12b2lkIDA/Zy5IMChiKTpuZXcgTlgoRCl9cmV0dXJuIGcuSDAoVyl9OwpmRT1mdW5jdGlvbihuLFc9IiIpe3JldHVybiBuLllyP0hQKCEwKTpLbChTayhIUChnLkhFKG4sVykpLEQ9PkhQKCEhRCkpLCgpPT5IUCghMSkpfTsKSnU9ZnVuY3Rpb24obixXKXtpZihuLldWPVcpbi5QWD8uTj8uVihXKSxXLmlzQXNtanM/bi5reS5wdXNoKCJhc21qcyIpOm4ua3kucHVzaCgid2FzbSIpfTsKZy5uRT1mdW5jdGlvbihuKXt2YXIgVz1nLklQKG4pO3JldHVybihuPU51bWJlcihnLmZwKG4pWzRdfHxudWxsKXx8bnVsbCk/YCR7V306JHtufWA6V307ClNNPWZ1bmN0aW9uKG4sVz0hMSl7dmFyIEQ9WWdbbl0sYj1JQVtEXSx2PWtIcltuXTtpZighdnx8IWIpcmV0dXJuIG51bGw7Vz1uZXcgSFIoVz92LmhlaWdodDp2LndpZHRoLFc/di53aWR0aDp2LmhlaWdodCx2LmZwcyk7Yj1wNihiLFcsRCk7cmV0dXJuIG5ldyBtdShuLGIse3ZpZGVvOlcsTnM6di5iaXRyYXRlLzh9KX07CkF1PWZ1bmN0aW9uKG4pe3ZhciBXPUlBW1lnW25dXSxEPWhFU1tuXTtyZXR1cm4gRCYmVz9uZXcgbXUobixXLHthdWRpbzpuZXcgQU0oRC5hdWRpb1NhbXBsZVJhdGUsRC5udW1DaGFubmVscyl9KTpudWxsfTsKVlA9ZnVuY3Rpb24obixXLEQsYil7aWYoRClyZXR1cm4gZy5wJCgpO0Q9e307dmFyIHY9aTgoKTtmb3IobGV0IGsgb2YgVylpZihuLmNhblBsYXlUeXBlKHYsay5rTCgpLm1pbWVUeXBlKXx8YilpZihXPWsuTi52aWRlby5xdWFsaXR5LCFEW1ddfHxEW1ddLmtMKCkucUgoKSlEW1ddPWs7bj1bXTtELmF1dG8mJm4ucHVzaChELmF1dG8pO2ZvcihsZXQgayBvZiBwTSkoYj1EW2tdKSYmbi5wdXNoKGIpO3JldHVybiBuLmxlbmd0aD9nLkgwKG4pOmcucCQoKX07CktFPWZ1bmN0aW9uKG4sVz0hMSxEPSEwLGI9e30pe3ZhciB2PXt9O2ZvcihsZXQgaCBvZiBuKXtpZihXJiZNZWRpYVNvdXJjZSYmTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkJiYobj1oLnR5cGUsaC5hdWRpb19jaGFubmVscyYmKG49bisiOyBjaGFubmVscz0iK2guYXVkaW9fY2hhbm5lbHMpLCFNZWRpYVNvdXJjZS5pc1R5cGVTdXBwb3J0ZWQobikpKXtiW2guaXRhZ109InRwdXMiO2NvbnRpbnVlfWlmKCFEJiZoLmRybV9mYW1pbGllcyYmKGguZW90Zj09PSJzbXB0ZTIwODQifHxoLmVvdGY9PT0iYXJpYi1zdGQtYjY3Iikpe2JbaC5pdGFnXT0iZW5jaGRyIjtjb250aW51ZX1uPXZvaWQgMDtsZXQgeD17YnQ3MDk6IlNEUiIsYnQyMDIwOiJTRFIiLHNtcHRlMjA4NDoiUFEiLCJhcmliLXN0ZC1iNjciOiJITEcifTt2YXIgaz1oLnR5cGUubWF0Y2goL2NvZGVjcz0iKFteIl0qKSIvKTtrPWs/a1sxXToiIjtoLmF1ZGlvX3RyYWNrX2lkJiYobj1uZXcgd1AoaC5uYW1lLGguYXVkaW9fdHJhY2tfaWQsCiEhaC5pc19kZWZhdWx0KSk7bGV0IEw9aC5lb3RmO249bmV3IG04KHtpdGFnOmguaXRhZyx1cmw6aC51cmwsY29kZWNzOmssd2lkdGg6TnVtYmVyKGgud2lkdGgpLGhlaWdodDpOdW1iZXIoaC5oZWlnaHQpLGZwczpOdW1iZXIoaC5mcHMpLGJpdHJhdGU6TnVtYmVyKGguYml0cmF0ZSksYXVkaW9JdGFnOmguYXVkaW9faXRhZyxVaDpMP3hbTF06dm9pZCAwLGNvbnRlbnRQcm90ZWN0aW9uOmguZHJtX2ZhbWlsaWVzLGtaOm4sYXVkaW9DaGFubmVsczpOdW1iZXIoaC5hdWRpb19jaGFubmVscyl9KTt2W24uaXRhZ109dltuLml0YWddfHxbXTt2W24uaXRhZ10ucHVzaChuKX1yZXR1cm4gdn07CnZhciB4dlU9ZnVuY3Rpb24obixXKXtyZXR1cm4gZ1pbSVsxMF1dKHRoaXMsMSw3ODUyLG4sVyl9OwpMSUM9ZnVuY3Rpb24obixXKXtuLlcuc29tZShEPT5ELmtaPy5nZXRJZCgpPT09Vyk7Cm4uTj1XfTsKZUVpPWZ1bmN0aW9uKG4pe3ZhciBXPVtdLEQ9W107Zm9yKGxldCBiIG9mIG4uSiliLmJpdHJhdGU8PW4uWD9XLnB1c2goYik6RC5wdXNoKGIpO1cuc29ydCgoYix2KT0+di5iaXRyYXRlLWIuYml0cmF0ZSk7CkQuc29ydCgoYix2KT0+Yi5iaXRyYXRlLXYuYml0cmF0ZSk7Cm4uSj1XLmNvbmNhdChEKX07Ck9tPWZ1bmN0aW9uKG4sVyxEKXtuLmNwbiYmKFc9Zy5FVChXLHtjcG46bi5jcG59KSk7RCYmKFc9Zy5FVChXLHt2WjpEfSkpO3JldHVybiBXfTsKUEU9ZnVuY3Rpb24obixXKXtuPW4uaXRhZy50b1N0cmluZygpO1chPT1udWxsJiYobis9Vy5pdGFnLnRvU3RyaW5nKCkpO3JldHVybiBufTsKZ1laPWZ1bmN0aW9uKG4sVyl7aWYoIShnLk1MfHxDJCgpfHx6USgpKSlyZXR1cm4gbnVsbDtuPUtFKFcsbi5TKCJodG1sNV9maWx0ZXJfZm1wNF9pbl9obHMiKSk7aWYoIW4pcmV0dXJuIG51bGw7Vz1bXTt2YXIgRD17fTtmb3IobGV0IGIgb2YgT2JqZWN0LmtleXMobikpZm9yKGxldCB2IG9mIG5bYl0paWYodi5rWil7bGV0IGs9di5rWi5nZXRJZCgpO2lmKCFEW2tdKXtsZXQgaD1uZXcgV0Eoayx2LmtaKTtEW2tdPWg7Vy5wdXNoKGgpfX1yZXR1cm4gVy5sZW5ndGg+MD9XOm51bGx9Owp0bU09ZnVuY3Rpb24obixXLEQsYix2LGssaCl7aWYoIShnLk1MfHxDJCgpfHx6USgpKSlyZXR1cm4gZy5wJCgpO3ZhciB4PXt9LEw9WDNTKEQpLGU9S0UoRCxuLlMoImh0bWw1X2ZpbHRlcl9mbXA0X2luX2hscyIpLG4uVy5LLHgpO2lmKCFlKXJldHVybiBoKHtub3Bsc3Q6MX0pLGcucCQoKTtxbGgoZSk7dmFyIEc9e2ZhaXJwbGF5OiJodHRwczovL3lvdXR1YmUuY29tL2FwaS9kcm0vZnBzP2VrPXVuaW5pdGlhbGl6ZWQifSxyO0Q9W107dmFyIE49W10sSD1bXSxBPW51bGwseT0iIjtiPWImJmIubWF0Y2goL2hsc190aW1lZHRleHRfcGxheWxpc3QvKT9uZXcgbTgoe2l0YWc6IjAiLHVybDpiLGNvZGVjczoidnR0Iix3aWR0aDowLGhlaWdodDowLGZwczowLGJpdHJhdGU6MCxrWjpuZXcgd1AoIkVuZ2xpc2giLCJlbiIsITEpfSk6bnVsbDtmb3IobGV0IFEgb2YgT2JqZWN0LmtleXMoZSkpaWYoIW4uUygiaHRtbDVfZGlzYWJsZV9kcm1faGZyXzEwODAiKXx8USE9PSIzODMiJiZRIT09IjM3MyIpZm9yKGxldCBWIG9mIGVbUV0paWYoVi53aWR0aCl7Zm9yKGxldCBIWiBvZiBWLkopaWYoZVtIWl0pe1YuTj0KSFo7YnJlYWt9Vi5OfHwoVi5OPUdIdChlLFYpKTtsZXQgTHQ9ZVtWLk5dO2lmKCFMdCljb250aW51ZTtELnB1c2goVik7Vi5jb250ZW50UHJvdGVjdGlvbj09PSJmYWlycGxheSImJihyPUcpO2xldCB0aT0iIjtWLlVoPT09IlBRIj90aT0ic21wdGUyMDg0IjpWLlVoPT09IkhMRyImJih0aT0iYXJpYi1zdGQtYjY3Iik7dGkmJih5PXRpKTtILnB1c2goWmYoTHQsW1ZdLGIsayxWLml0YWcsVi53aWR0aCxWLmhlaWdodCxWLmZwcyxMLHZvaWQgMCx2b2lkIDAscix0aSkpO2lmKCFBfHxWLndpZHRoKlYuaGVpZ2h0KlYuZnBzPkEud2lkdGgqQS5oZWlnaHQqQS5mcHMpQT1WfWVsc2UgTi5wdXNoKFYpO2Vsc2UgeFtRXT0iZGlzZHJtaGZyIjtILnJlZHVjZSgoUSxWKT0+Vi5rTCgpLmlzRW5jcnlwdGVkKCkmJlEsITApJiYocj1HKTsKdj1NYXRoLm1heCh2LDApO3ZhciB7ZnBzOlQ9MCx3aWR0aDp6PTAsaGVpZ2h0OkM9MH09QXx8e307QT1uLlMoImh0bWw1X25hdGl2ZV9hdWRpb190cmFja19zd2l0Y2hpbmciKTtILnB1c2goWmYoTixELGIsaywiOTMiLHosQyxULEwsImF1dG8iLHYscix5LEEpKTtPYmplY3QuZW50cmllcyh4KS5sZW5ndGgmJmgoeCk7cmV0dXJuIFZQKG4uVyxILGM5KG4sVyksITEpfTsKWmY9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4LEwsZSxHLHIsTixIKXt2YXIgQT0wLHk9IiI7Zm9yKGxldCBUIG9mIG4peXx8KHk9VC5pdGFnKSxULmF1ZGlvQ2hhbm5lbHMmJlQuYXVkaW9DaGFubmVscz5BJiYoQT1ULmF1ZGlvQ2hhbm5lbHMseT1ULml0YWcpO3Y9bmV3IG11KHYsImFwcGxpY2F0aW9uL3gtbXBlZ1VSTCIse2F1ZGlvOm5ldyBBTSgwLEEpLHZpZGVvOm5ldyBIUihrLGgseCxudWxsLHZvaWQgMCxlLHZvaWQgMCx2b2lkIDAsTiksY29udGVudFByb3RlY3Rpb246cixBYTp5fSk7bj1uZXcgJHYxKG4sVyxEP1tEXTpbXSxiLCEhSCk7bi5YPUc/RzoxMzY5ODQzO3JldHVybiBuZXcgVW0odixuLEwpfTsKWDNTPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBvZiBuKWlmKFcudXJsJiYobj1XLnVybC5zcGxpdCgiZXhwaXJlLyIpLCEobi5sZW5ndGg8PTEpKSlyZXR1cm4rblsxXS5zcGxpdCgiLyIpWzBdO3JldHVybiBOYU59OwpHSHQ9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgb2YgT2JqZWN0LmtleXMobikpe2xldCBiPW5bRF1bMF07aWYoIWIud2lkdGgmJmIuY29udGVudFByb3RlY3Rpb249PT1XLmNvbnRlbnRQcm90ZWN0aW9uJiYhYi5hdWRpb0NoYW5uZWxzKXJldHVybiBEfXJldHVybiIifTsKcWxoPWZ1bmN0aW9uKG4pe3ZhciBXPW5ldyBTZXQ7Zm9yKHZhciBEIG9mIE9iamVjdC52YWx1ZXMobikpaWYoRC5sZW5ndGgpe3ZhciBiPURbMF07Yi5oZWlnaHQmJmIuY29kZWNzLnN0YXJ0c1dpdGgoInZwMDkiKSYmVy5hZGQoYi5oZWlnaHQpfUQ9W107aWYoVy5zaXplKWZvcihsZXQgdiBvZiBPYmplY3Qua2V5cyhuKSluW3ZdLmxlbmd0aCYmKGI9blt2XVswXSxiLmhlaWdodCYmVy5oYXMoYi5oZWlnaHQpJiYhYi5jb2RlY3Muc3RhcnRzV2l0aCgidnAwOSIpJiZELnB1c2godikpO2ZvcihsZXQgdiBvZiBEKWRlbGV0ZSBuW3ZdfTsKcnFaPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1bXTtmb3IobGV0IHYgb2YgRCl7aWYoIXZ8fCF2LnVybCljb250aW51ZTtEPVFQKHYudHlwZSwibWVkaXVtIiwiMCIpO2IucHVzaChuZXcgeW4oRCx2LnVybCkpfXJldHVybiBWUChuLlcsYixjOShuLFcpLCExKX07CnNpcj1mdW5jdGlvbihuLFcpe3ZhciBEPVtdLGI9UVAoVy50eXBlLCJhdXRvIixXLml0YWcpO0QucHVzaChuZXcgeW4oYixXLnVybCkpO3JldHVybiBWUChuLlcsRCwhMSwhMCl9OwppaT1mdW5jdGlvbihuKXtyZXR1cm4gbiYmRW1bbl0/RW1bbl06bnVsbH07CnVpPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlICJtdWx0aXZpZXcudXN0cmVhbWVyX2Rpc2FibGVkIjpjYXNlICJzYWJyLmludmFsaWRfaW5wdXRfc3RyZWFtIjpjYXNlICJzYWJyLmxpdmVfbm9fbWF4X3NxIjpjYXNlICJzYWJyLmxpdmVfdW5hdXRob3JpemVkX3JlcXVlc3QiOmNhc2UgInNhYnIubWFsZm9ybWVkX2NvbmZpZyI6Y2FzZSAic2Fici5tZWRpYV9zZXJ2aW5nX2VuZm9yY2VtZW50X2lkX2Vycm9yIjpjYXNlICJzYWJyLm1ldGFkYXRhX2ZldGNoZXJfZXJyb3IiOmNhc2UgInNhYnIubm9fYXVkaW9fc2VsZWN0ZWQiOmNhc2UgInNhYnIubm9fYXZhaWxhYmxlX2Zvcm1hdHMiOmNhc2UgInNhYnIubm9fcmVkaXJlY3RfdXJsIjpjYXNlICJzYWJyLm5vX3ZpZGVvX3NlbGVjdGVkIjpjYXNlICJzYWJyLm90Zl9ub3Rfc3VwcG9ydGVkIjpjYXNlICJzYWJyLnRvb19tYW55X2NodW5rX3JlYWRlcl9lcnJvcl9yZXRyaWVzIjpyZXR1cm4gbjtkZWZhdWx0OnJldHVybiJzYWJyLmNvbmZpZyJ9fTsKb0E9ZnVuY3Rpb24obixXKXtpZihXPVc/LndhdGNoRW5kcG9pbnRTdXBwb3J0ZWRPbmVzaWVDb25maWc/Lmh0bWw1UGxheWJhY2tPbmVzaWVDb25maWcpbi5RYT1uZXcgTiR3KFcpfTsKVGw9ZnVuY3Rpb24obixXLEQsYil7bnx8KG49VyYmZGMuaGFzT3duUHJvcGVydHkoVykmJnpsLmhhc093blByb3BlcnR5KFcpP3psW1ddKyJfIitkY1tXXTp2b2lkIDApO1c9bjtpZighVylyZXR1cm4gbnVsbDtuPVcubWF0Y2gobGkpO2lmKCFufHxuLmxlbmd0aCE9PTUpcmV0dXJuIG51bGw7e2xldCBrPVcubWF0Y2gobGkpO2lmKGspe249TnVtYmVyKGtbM10pO3ZhciB2PVs3LDgsMTAsNSw2XTtuPSEoTnVtYmVyKGtbMV0pPT09MSYmbj09PTgpJiZ2LmluZGV4T2Yobik+PTB9ZWxzZSBuPSExfXJldHVybiBEfHxifHxuP1c6bnVsbH07CkNFPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9e307Zm9yKGxldCB2IG9mIE9iamVjdC5rZXlzKGpNKSl7dmFyIGI9Vz9XK3Y6djtiPW5bYisiX3dlYnAiXXx8bltiXTtnLmpJKGIpJiYoRFtqTVt2XV09Yil9cmV0dXJuIER9Owp3Yz1mdW5jdGlvbihuKXt2YXIgVz17fTtpZighbnx8IW4udGh1bWJuYWlscylyZXR1cm4gVztuPW4udGh1bWJuYWlscy5maWx0ZXIodj0+ISF2LnVybCk7Cm4uc29ydCgodixrKT0+di53aWR0aC1rLndpZHRofHx2LmhlaWdodC1rLmhlaWdodCk7CmZvcih2YXIgRCBvZiBPYmplY3Qua2V5cyhCRSkpe3ZhciBiPU51bWJlcihEKTtsZXQgdj1CRVtiXTtmb3IobGV0IGsgb2YgbilpZihrLndpZHRoPj1iKXtiPUZDKGsudXJsKTtnLmpJKGIpJiYoV1t2XT1iKTticmVha319KEQ9bi5wb3AoKSkmJkQud2lkdGg+PTEyODAmJihEPUZDKEQudXJsKSxnLmpJKEQpJiYoV1sibWF4cmVzZGVmYXVsdC5qcGciXT1EKSk7cmV0dXJuIFd9OwpGQz1mdW5jdGlvbihuKXtyZXR1cm4gbi5zdGFydHNXaXRoKCIvLyIpPyJodHRwczoiK246bn07Ck1GPWZ1bmN0aW9uKG4pe3JldHVybiBuJiZuLmJhc2VVcmx8fCIifTsKUkE9ZnVuY3Rpb24obil7bj1nLm9FKG4pO2ZvcihsZXQgVyBvZiBPYmplY3Qua2V5cyhuKSl7bGV0IEQ9bltXXTtuW1ddPUFycmF5LmlzQXJyYXkoRCk/RFswXTpEfXJldHVybiBufTsKWWx3PWZ1bmN0aW9uKG4sVyl7Zm9yKHZhciBEIG9mIFcpaWYoVz1ELnBsYXllckFubm90YXRpb25zVXJsc1JlbmRlcmVyKXtXLmFkc09ubHkmJihuLlJtPSEwKTtpZihEPVcubG9hZFBvbGljeSluLmFubm90YXRpb25zTG9hZFBvbGljeT1wM01bRF07aWYoRD1XLmludmlkZW9Vcmwpbi5lYT1GTihEKTtuLnk1PSEwO2JyZWFrfX07ClFuPWZ1bmN0aW9uKG4sVyl7bi5ib3RndWFyZERhdGE9Vy5wbGF5ZXJBdHRlc3RhdGlvblJlbmRlcmVyLmJvdGd1YXJkRGF0YTtXPVcucGxheWVyQXR0ZXN0YXRpb25SZW5kZXJlci5jaGFsbGVuZ2U7VyE9bnVsbCYmKG4ucEs9Vyl9OwpIVng9ZnVuY3Rpb24obixXKXtuLmNhcHRpb25UcmFja3M9W107aWYoVy5jYXB0aW9uVHJhY2tzKWZvcih2YXIgRCBvZiBXLmNhcHRpb25UcmFja3Mpe3ZhciBiPVZuKEQuYmFzZVVybCk7aWYoIWIpcmV0dXJuO2I9e2lzX3RyYW5zbGF0ZWFibGU6ISFELmlzVHJhbnNsYXRhYmxlLGxhbmd1YWdlQ29kZTpELmxhbmd1YWdlQ29kZSxsYW5ndWFnZU5hbWU6RC5uYW1lJiZnLkRwKEQubmFtZSksdXJsOmIsdnNzX2lkOkQudnNzSWQsa2luZDpELmtpbmR9O2IubmFtZT1ELnRyYWNrTmFtZTtiLmRpc3BsYXlOYW1lPUQubmFtZSYmZy5EcChELm5hbWUpO24uY2FwdGlvblRyYWNrcy5wdXNoKG5ldyBnLlF3KGIpKX1uLlR3PVcuYXVkaW9UcmFja3N8fFtdO24uTyQ9Vy5kZWZhdWx0QXVkaW9UcmFja0luZGV4fHwwO24ucnA9W107aWYoVy50cmFuc2xhdGlvbkxhbmd1YWdlcylmb3IobGV0IHYgb2YgVy50cmFuc2xhdGlvbkxhbmd1YWdlcyl7RD17fTtELmxhbmd1YWdlQ29kZT12Lmxhbmd1YWdlQ29kZTsKRC5sYW5ndWFnZU5hbWU9Zy5EcCh2Lmxhbmd1YWdlTmFtZSk7aWYodi50cmFuc2xhdGlvblNvdXJjZVRyYWNrSW5kaWNlcyl7RC50cmFuc2xhdGlvblNvdXJjZVRyYWNrSW5kaWNlcz1bXTtmb3IobGV0IGsgb2Ygdi50cmFuc2xhdGlvblNvdXJjZVRyYWNrSW5kaWNlcylELnRyYW5zbGF0aW9uU291cmNlVHJhY2tJbmRpY2VzLnB1c2goayl9aWYodi5leGNsdWRlQXVkaW9UcmFja0luZGljZXMpe0QuZXhjbHVkZUF1ZGlvVHJhY2tJbmRpY2VzPVtdO2ZvcihsZXQgayBvZiB2LmV4Y2x1ZGVBdWRpb1RyYWNrSW5kaWNlcylELmV4Y2x1ZGVBdWRpb1RyYWNrSW5kaWNlcy5wdXNoKGspfW4ucnAucHVzaChEKX1uLmc1PVtdO2lmKFcuZGVmYXVsdFRyYW5zbGF0aW9uU291cmNlVHJhY2tJbmRpY2VzKWZvcihsZXQgdiBvZiBXLmRlZmF1bHRUcmFuc2xhdGlvblNvdXJjZVRyYWNrSW5kaWNlcyluLmc1LnB1c2godil9Owpmb2k9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVcuZXJyb3JTY3JlZW47aWYoIShiJiYoYi5wbGF5ZXJMZWdhY3lEZXNrdG9wWXBjT2ZmZXJSZW5kZXJlcnx8Yi5wbGF5ZXJMZWdhY3lEZXNrdG9wWXBjVHJhaWxlclJlbmRlcmVyfHxiLnlwY1RyYWlsZXJSZW5kZXJlcil8fEQmJkQuaXNVcGNvbWluZ3x8WyJPSyIsIkxJVkVfU1RSRUFNX09GRkxJTkUiLCJGVUxMU0NSRUVOX09OTFkiXS5pbmNsdWRlcyhXLnN0YXR1cykpKXtuLmVycm9yQ29kZT1paShXLmVycm9yQ29kZSl8fCJhdXRoIjtpZihEPWImJmIucGxheWVyRXJyb3JNZXNzYWdlUmVuZGVyZXIpe24ucGxheWVyRXJyb3JNZXNzYWdlUmVuZGVyZXI9RDtsZXQgdj1ELnJlYXNvbjt2JiYobi5lcnJvclJlYXNvbj1nLkRwKHYpKTtpZihEPUQuc3VicmVhc29uKW4ud2k9Zy5EcChEKSxuLlRZPUR9ZWxzZSBuLmVycm9yUmVhc29uPVcucmVhc29ufHxudWxsO0Q9Vy5zdGF0dXM7RD09PSJMT0dJTl9SRVFVSVJFRCI/bi5lcnJvckRldGFpbD0KIjEiOkQ9PT0iQ09OVEVOVF9DSEVDS19SRVFVSVJFRCI/bi5lcnJvckRldGFpbD0iMiI6RD09PSJBR0VfQ0hFQ0tfUkVRVUlSRUQiPyhXPShXPVcuZXJyb3JTY3JlZW4pJiZXLnBsYXllckthdlJlbmRlcmVyLG4uZXJyb3JEZXRhaWw9VyYmVy5rYXZVcmw/IjQiOiIzIik6KGI9Yj8ucGxheWVyRXJyb3JNZXNzYWdlUmVuZGVyZXI/LnByb2NlZWRCdXR0b24/LmJ1dHRvblJlbmRlcmVyPy5jb21tYW5kLG4uZXJyb3JEZXRhaWw9Vy5pc0Jsb2NrZWRJblJlc3RyaWN0ZWRNb2RlPyI1IjpnLncoYixnLmNFKT8uc2lnbmFsPT09IlJFTE9BRF9QQUdFIj8iNyI6IjAiKX19OwpKcVo9ZnVuY3Rpb24obixXKXtuLllpPSEwO3ZhciBEPVcuaGVhcnRiZWF0VG9rZW47bi5kcm1TZXNzaW9uSWQ9Vy5kcm1TZXNzaW9uSWR8fCIiO24uaGVhcnRiZWF0VG9rZW49RHx8IiI7bi5zRT1OdW1iZXIoVy5pbnRlcnZhbE1pbGxpc2Vjb25kcyk7bi5sND1OdW1iZXIoVy5tYXhSZXRyaWVzKTtuLkg2PSEhVy5zb2Z0RmFpbE9uRXJyb3I7bi5EZD0hIVcudXNlSW5uZXJ0dWJlSGVhcnRiZWF0c0ZvckRybTtuLmhlYXJ0YmVhdFNlcnZlckRhdGE9Vy5oZWFydGJlYXRTZXJ2ZXJEYXRhO24uUE09ISFXLmhlYXJ0YmVhdEF0dGVzdGF0aW9uQ29uZmlnPy5yZXF1aXJlc0F0dGVzdGF0aW9ufTsKQXExPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIFcpe1c9RC5pbnRlcnN0aXRpYWxzLm1hcChiPT57dmFyIHY9Zy53KGIsSW9iKTtpZih2KXJldHVybntpc195dG9faW50ZXJzdGl0aWFsOiEwLHJhd19wbGF5ZXJfcmVzcG9uc2U6dn07aWYoYj1nLncoYixTbE0pKXJldHVybiBPYmplY3QuYXNzaWduKHtpc195dG9faW50ZXJzdGl0aWFsOiEwfSxnLml3KGIpKX0pOwpmb3IobGV0IGIgb2YgVylzd2l0Y2goRC5wb2RDb25maWcucGxheWJhY2tQbGFjZW1lbnQpe2Nhc2UgIklOVEVSU1RJVElBTF9QTEFZQkFDS19QTEFDRU1FTlRfUFJFIjpuLmludGVyc3RpdGlhbHM9bi5pbnRlcnN0aXRpYWxzLmNvbmNhdCh7dGltZTowLHBsYXllclZhcnM6YixrcTo1fSk7YnJlYWs7Y2FzZSAiSU5URVJTVElUSUFMX1BMQVlCQUNLX1BMQUNFTUVOVF9QT1NUIjpuLmludGVyc3RpdGlhbHM9bi5pbnRlcnN0aXRpYWxzLmNvbmNhdCh7dGltZToweDdmZmZmZmZmZmZmZmYscGxheWVyVmFyczpiLGtxOjZ9KTticmVhaztjYXNlICJJTlRFUlNUSVRJQUxfUExBWUJBQ0tfUExBQ0VNRU5UX0lOU0VSVF9BVF9WSURFT19USU1FIjpXPU51bWJlcihELnBvZENvbmZpZy50aW1lVG9JbnNlcnRBdE1pbGxpcyksbi5pbnRlcnN0aXRpYWxzPW4uaW50ZXJzdGl0aWFscy5jb25jYXQoe3RpbWU6VyxwbGF5ZXJWYXJzOmIsa3E6Vz09PTA/NTo3fSl9fX07Cm12aj1mdW5jdGlvbihuLFcpe2lmKFc9Vy5maW5kKEQ9PiEoIUR8fCFELnRvb2x0aXBSZW5kZXJlcikpKW4udG9vbHRpcFJlbmRlcmVyPVcudG9vbHRpcFJlbmRlcmVyfTsKYUE9ZnVuY3Rpb24obixXKXtXLnN1YnNjcmliZUNvbW1hbmQmJihuLnN1YnNjcmliZUNvbW1hbmQ9Vy5zdWJzY3JpYmVDb21tYW5kKTtXLnVuc3Vic2NyaWJlQ29tbWFuZCYmKG4udW5zdWJzY3JpYmVDb21tYW5kPVcudW5zdWJzY3JpYmVDb21tYW5kKTtXLmFkZFRvV2F0Y2hMYXRlckNvbW1hbmQmJihuLmFkZFRvV2F0Y2hMYXRlckNvbW1hbmQ9Vy5hZGRUb1dhdGNoTGF0ZXJDb21tYW5kKTtXLnJlbW92ZUZyb21XYXRjaExhdGVyQ29tbWFuZCYmKG4ucmVtb3ZlRnJvbVdhdGNoTGF0ZXJDb21tYW5kPVcucmVtb3ZlRnJvbVdhdGNoTGF0ZXJDb21tYW5kKTtXLmdldFNoYXJlUGFuZWxDb21tYW5kJiYobi5nZXRTaGFyZVBhbmVsQ29tbWFuZD1XLmdldFNoYXJlUGFuZWxDb21tYW5kKX07Cm5MPWZ1bmN0aW9uKG4sVyl7VyE9bnVsbD8obi5yUj1XLG4uaU49ITApOihuLnJSPSIiLG4uaU49ITEpfTsKUG4xPWZ1bmN0aW9uKG4sVyl7aWYoVz1XLnBsYXllckNvbnRyb2xzT3ZlcmxheVJlbmRlcmVyKW5MKG4sVy5jb250cm9sQmdIdG1sKSxXLm11dGVkQXV0b3BsYXk/KFc9Zy53KFcubXV0ZWRBdXRvcGxheSxLSTEpKSYmVy5lbmRTY3JlZW4mJihXPWcudyhXLmVuZFNjcmVlbixPVngpKSYmVy50ZXh0JiYobi5NVj1nLkRwKFcudGV4dCkpOm4ubXV0ZWRBdXRvcGxheT0hMX07ClpWaT1mdW5jdGlvbihuLFcpe3ZhciBEPVcuYmFja2dyb3VuZGFiaWxpdHk7RCYmRC5iYWNrZ3JvdW5kYWJpbGl0eVJlbmRlcmVyLmJhY2tncm91bmRhYmxlJiYobi5iYWNrZ3JvdW5kYWJsZT0hMCk7Vy5vZmZsaW5lYWJpbGl0eT8ub2ZmbGluZWFiaWxpdHlSZW5kZXJlcj8ub2ZmbGluZWFibGUmJihuLm9mZmxpbmVhYmxlPSEwKTtpZihEPVcuY29udGV4dFBhcmFtcyluLmNvbnRleHRQYXJhbXM9RDsoRD1XLnBpY3R1cmVJblBpY3R1cmUpJiZELnBpY3R1cmVJblBpY3R1cmVSZW5kZXJlci5wbGF5YWJsZUluUGlwJiYobi5waXBhYmxlPSEwKTtXLnBsYXlhYmxlSW5FbWJlZCYmKG4uYWxsb3dFbWJlZD0hMCk7aWYoRD1XLnlwY0NsaWNrd3JhcClXPUQucGxheWVyTGVnYWN5RGVza3RvcFlwY0NsaWNrd3JhcFJlbmRlcmVyLEQ9RC55cGNSZW50YWxBY3RpdmF0aW9uUmVuZGVyZXIsVz8obi5Jaz1XLmR1cmF0aW9uTWVzc2FnZXx8IiIsbi5EbD0hMCk6RCYmKFc9RC5kdXJhdGlvbk1lc3NhZ2UsCm4uSWs9Vz9nLkRwKFcpOiIiLG4uRGw9ITApfTsKeXExPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1NRihXLmdvb2dsZVJlbWFya2V0aW5nVXJsKTtiJiYobi5nb29nbGVSZW1hcmtldGluZ1VybD1iKTtpZihiPU1GKFcueW91dHViZVJlbWFya2V0aW5nVXJsKSluLnlvdXR1YmVSZW1hcmtldGluZ1VybD1iO2lmKGI9Vy5oZWFydGJlYXRMb2dnaW5nVG9rZW4pbi5oZWFydGJlYXRMb2dnaW5nVG9rZW49YjtiPXt9O3ZhciB2PU1GKFcucHRyYWNraW5nVXJsKTtpZih2KXt2PVJBKHYpO3ZhciBrPXYub2lkO2smJihuLlhvPWspO2lmKGs9di5wbHR5cGUpbi5xOD1rO2lmKGs9di5wdGNobiluLmgxPWs7aWYoaz12LnB0ayluLnh6PWVuY29kZVVSSUNvbXBvbmVudChrKTtpZih2PXYubSluLnk5PXZ9aWYodj1NRihXLnFvZVVybCkpe3Y9Zy5vRSh2KTtmb3IoaCBvZiBPYmplY3Qua2V5cyh2KSlrPXZbaF0sdltoXT1BcnJheS5pc0FycmF5KGspP2suam9pbigiLCIpOms7dmFyIGg9djtuLnpiPWg7aWYodj1oLmNhdCluLlMoImh0bWw1X2VuYWJsZV9xb2VfY2F0X2xpc3QiKT8Kbi5rSz1uLmtLLmNvbmNhdCh2LnNwbGl0KCIsIikpOm4ua3k9djtpZih2PWgubGl2ZSluLnVoPXY7aWYoaD1oLmRybV9wcm9kdWN0KW4uZHJtUHJvZHVjdD1ofWlmKGg9TUYoVy52aWRlb3N0YXRzUGxheWJhY2tVcmwpKXtoPVJBKGgpO2lmKHY9aC5hZGZvcm1hdClpZihELmFkZm9ybWF0PXYsaz1uLkcoKSxrPVRsKHYsbi5GdyxrLkosay5LKSluLmFkRm9ybWF0PWs7aWYoaz1oLmFxaSlELmFkX3F1ZXJ5X2lkPWs7aWYoRD1oLmF1dG9wbGF5KW4uR3U9RD09IjEiLG4uVlQ9RD09IjEiO2lmKEQ9aC5hdXRvbmF2KW4uaXNBdXRvbmF2PUQ9PSIxIjtpZihEPWguZGVsYXkpbi5vRD1nLk5oKEQpO2lmKEQ9aC5laSluLmV2ZW50SWQ9RDtpZihEPWcuZDEoaC5hZGNvbnRleHQpKXRyeXt2YXIgeD1VdjIoRCk7eCYmKG4uZk49eCl9Y2F0Y2goTCl7Zy5HcShFcnJvcigiTWFsZm9ybWVkIGFkQ29udGV4dCIpKX1pZihEfHx2KW4uR3U9ITA7aWYoeD1oLmZlYXR1cmUpbi5TOT14O2lmKHg9aC5saXN0KW4ucGxheWxpc3RJZD0KeDtpZih4PWgub2Ypbi5SSD14O2lmKHg9aC5vc2lkKW4ub3NpZD14O2lmKHg9aC5yZWZlcnJlciluLnJlZmVycmVyPXg7aWYoeD1oLnNkZXRhaWwpbi53dT14O2lmKHg9aC5zb3VyY2VpZCluLmJJPXg7aWYoeD1oLnNzcnQpbi5BUj14PT0iMSI7aWYoeD1oLnN1YnNjcmliZWQpbi5zdWJzY3JpYmVkPXg9PSIxIjtpZih4PWgudWdhKW4udXNlckdlbmRlckFnZT14O2lmKHg9aC51cHQpbi5IcT14O2lmKHg9aC52bSluLnZpZGVvTWV0YWRhdGE9eDtiLnBsYXliYWNrPWh9aWYoeD1NRihXLnZpZGVvc3RhdHNXYXRjaHRpbWVVcmwpKXt4PVJBKHgpO2lmKEQ9eC5hbGQpbi5GTD1EO2Iud2F0Y2h0aW1lPXh9aWYoeD1NRihXLmF0clVybCkpeD1SQSh4KSxiLmF0cj14O2lmKHg9TUYoVy5lbmdhZ2VVcmwpKXg9UkEoeCksYi5lbmdhZ2U9eDtuLlhUPWI7Vy5wcm9tb3RlZFBsYXliYWNrVHJhY2tpbmcmJihiPVcucHJvbW90ZWRQbGF5YmFja1RyYWNraW5nLGIuc3RhcnRVcmxzJiYobi5Gcj1iLnN0YXJ0VXJscyksCmIuZmlyc3RRdWFydGlsZVVybHMmJihuLndOPWIuZmlyc3RRdWFydGlsZVVybHMpLGIuc2Vjb25kUXVhcnRpbGVVcmxzJiYobi5DdD1iLnNlY29uZFF1YXJ0aWxlVXJscyksYi50aGlyZFF1YXJ0aWxlVXJscyYmKG4ub0g9Yi50aGlyZFF1YXJ0aWxlVXJscyksYi5jb21wbGV0ZVVybHMmJihuLkF0PWIuY29tcGxldGVVcmxzKSxiLmVuZ2FnZWRWaWV3VXJscyYmKGIuZW5nYWdlZFZpZXdVcmxzLmxlbmd0aD4xJiZnLkdxKG5ldyBnLlF4KCJUaGVyZSBhcmUgbW9yZSB0aGFuIG9uZSBlbmdhZ2VkX3ZpZXdfdXJscy4iKSksbi5EeD1iLmVuZ2FnZWRWaWV3VXJsc1swXSkpO1cuc2VyaWFsaXplZE9uZVRpbWVRb2VDb250ZXh0RGF0YSYmKG4uc2VyaWFsaXplZE9uZVRpbWVRb2VDb250ZXh0RGF0YT1XLnNlcmlhbGl6ZWRPbmVUaW1lUW9lQ29udGV4dERhdGEpO1cudnNzM0NvbmZpZz8uc2VyaWFsaXplZFdhdGNoVGltZUNvbnRleHREYXRhJiYobi5zZXJpYWxpemVkV2F0Y2hUaW1lQ29udGV4dERhdGE9ClcudnNzM0NvbmZpZy5zZXJpYWxpemVkV2F0Y2hUaW1lQ29udGV4dERhdGEpfTsKRVkxPWZ1bmN0aW9uKG4sVyxEKXtmb3IobGV0IGIgb2YgVylpZihiJiYoVz1iLnBsYXllckxlZ2FjeURlc2t0b3BXYXRjaEFkc1JlbmRlcmVyKSYmKFc9Vy5wbGF5ZXJBZFBhcmFtcykpe1cuYXV0b3BsYXk9PSIxIiYmKG4uR3U9ITAsbi5WVD0hMCk7bi5Jbz1XLmVuY29kZWRBZFNhZmV0eVJlYXNvbnx8bnVsbDtXLnNob3dDb250ZW50VGh1bWJuYWlsIT09dm9pZCAwJiYobi5xMj0hIVcuc2hvd0NvbnRlbnRUaHVtYm5haWwpO0QuZW5hYmxlZF9lbmdhZ2VfdHlwZXM9Vy5lbmFibGVkRW5nYWdlVHlwZXM7YnJlYWt9fTsKaVYyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vy5tYW5pZmVzdGxlc3NXaW5kb3dlZExpdmVDb25maWc7aWYoRCl7dmFyIGI9TnVtYmVyKEQubWluRHZyU2VxdWVuY2UpLHY9TnVtYmVyKEQubWF4RHZyU2VxdWVuY2UpLGs9TnVtYmVyKEQubWluRHZyTWVkaWFUaW1lTXMpLGg9TnVtYmVyKEQubWF4RHZyTWVkaWFUaW1lTXMpO0Q9TnVtYmVyKEQuc3RhcnRXYWxsdGltZU1zKTtiJiYobi5JdD1iKTtrJiYobi5KVT1rLzFFMyxuLlMoImh0bWw1X3NhYnJfcGFyc2VfbGl2ZV9tZXRhZGF0YV9wbGF5YmFja19ib3VuZGFyaWVzIikmJmcuWU4obikmJihuLkgyPWsvMUUzKSk7diYmKG4uSFA9dik7aCYmKG4ub1I9aC8xRTMsbi5TKCJodG1sNV9zYWJyX3BhcnNlX2xpdmVfbWV0YWRhdGFfcGxheWJhY2tfYm91bmRhcmllcyIpJiZnLllOKG4pJiYobi5XTT1oLzFFMykpO0QmJihuLklUPUQvMUUzKTsoYnx8aykmJih2fHxoKSYmKG4uUkk9ITAsbi5pc0xpdmVQbGF5YmFjaz0hMCxuLmFsbG93TGl2ZUR2cj0KITAsbi5YZz0hMSl9aWYoYj1XLmRhaUNvbmZpZyl7aWYoYi5lbmFibGVEYWkpe24uTFk9ITA7aWYodj1iLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpKW4uZW5hYmxlU2VydmVyU3RpdGNoZWREYWk9djtpZih2PWIuZW5hYmxlUHJlcm9sbCluLktkPXZ9aWYoYi5kYWlUeXBlPT09IkRBSV9UWVBFX1NTX0RJU0FCTEVEInx8Yi5kZWJ1Z0luZm8/LmlzRGlzYWJsZWRVbnBsdWdnZWRDaGFubmVsKW4uSmw9ITA7IW4uUygiaHRtbDVfdW1wX3N0aXRjaGVkX21ldGFkYXRhX3Vuc3BlY2lmaWVkX2hhbmRsaW5nIil8fGIuZGFpVHlwZSE9PSJEQUlfVFlQRV9VTlNQRUNJRklFRCImJmIuZGFpVHlwZSE9PXZvaWQgMHx8KG4uakY9ITApO2IuZGFpVHlwZT09PSJEQUlfVFlQRV9DTElFTlRfU1RJVENIRUQiJiYobi5DVT0hMCk7Yi5hbGxvd1VzdHJlYW1lclJlcXVlc3RBZGNvbmZpZyYmKG4uUTY9ITApO2Iuc2VuZFNzZGFpTWlzc2luZ0FkQnJlYWtSZWFzb25zJiYobi5LVj0hMCl9aWYoYj1XLmF1ZGlvQ29uZmlnKXt2PQpuLmhnO2IudHJhY2tBYnNvbHV0ZUxvdWRuZXNzTGtmcyE9bnVsbCYmKHYuSj1iLnRyYWNrQWJzb2x1dGVMb3VkbmVzc0xrZnMpO2IubG91ZG5lc3NUYXJnZXRMa2ZzIT1udWxsJiYodi5sb3VkbmVzc1RhcmdldExrZnM9Yi5sb3VkbmVzc1RhcmdldExrZnMpO2IubG91ZG5lc3NEYiE9bnVsbCYmKHYuVz1iLmxvdWRuZXNzRGIpO2lmKGs9Yi5sb3VkbmVzc05vcm1hbGl6YXRpb25Db25maWcpay5hcHBseVN0YXRlZnVsTm9ybWFsaXphdGlvbiYmKHYuYXBwbHlTdGF0ZWZ1bE5vcm1hbGl6YXRpb249ITApLGsucHJlc2VydmVTdGF0ZWZ1bExvdWRuZXNzVGFyZ2V0JiYodi5wcmVzZXJ2ZVN0YXRlZnVsTG91ZG5lc3NUYXJnZXQ9ITApLGsubWluaW11bUxvdWRuZXNzVGFyZ2V0TGtmcyE9bnVsbCYmKHYubWluaW11bUxvdWRuZXNzVGFyZ2V0TGtmcz1rLm1pbmltdW1Mb3VkbmVzc1RhcmdldExrZnMpO3Y9Yi5sb3VkbmVzc0RiO3YhPW51bGwmJihuLllLPXYpO2IuYXVkaW9NdXRlZCYmKG4ueWw9CiEwKTtiLm11dGVPblN0YXJ0JiYobi5OMD0hMCk7Yi5wbGF5QXVkaW9Pbmx5JiYobi5KZz0hMCl9aWYodj1XLnBsYXliYWNrRW5kQ29uZmlnKWI9di5lbmRTZWNvbmRzLHY9di5saW1pdGVkUGxheWJhY2tEdXJhdGlvbkluU2Vjb25kcyxuLm11dGVkQXV0b3BsYXkmJihiJiYobi5lbmRTZWNvbmRzPWIpLHYmJihuLmxpbWl0ZWRQbGF5YmFja0R1cmF0aW9uSW5TZWNvbmRzPXYpKTtpZihiPVcuZmFpclBsYXlDb25maWcpe2lmKHY9Yi5jZXJ0aWZpY2F0ZSluLkNpPWcuZDEodik7dj1OdW1iZXIoYi5rZXlSb3RhdGlvblBlcmlvZE1zKTt2PjAmJihuLlY5PXYpO2I9TnVtYmVyKGIua2V5UHJlZmV0Y2hNYXJnaW5Ncyk7Yj4wJiYobi5qaT1iKX1pZigoYj1XLnBsYXliYWNrU3RhcnRDb25maWcpJiYhbi5OVil7bi52RT1OdW1iZXIoYi5zdGFydFNlY29uZHMpO2s9Yi5saXZlVXRjU3RhcnRTZWNvbmRzO3Y9ISFuLmxpdmVVdGNTdGFydFNlY29uZHMmJm4ubGl2ZVV0Y1N0YXJ0U2Vjb25kcz4wOwprJiYhdiYmKG4ubGl2ZVV0Y1N0YXJ0U2Vjb25kcz1OdW1iZXIoaykpO2lmKGs9Yi5zdGFydFBvc2l0aW9uKWlmKChoPWsudXRjVGltZU1pbGxpcykmJiF2JiYobi5saXZlVXRjU3RhcnRTZWNvbmRzPU51bWJlcihoKSouMDAxKSx2PWsuc3RyZWFtVGltZU1pbGxpcyluLlVyPU51bWJlcih2KSouMDAxO24ucHJvZ3Jlc3NCYXJTdGFydFBvc2l0aW9uPWIucHJvZ3Jlc3NCYXJTdGFydFBvc2l0aW9uO24ucHJvZ3Jlc3NCYXJFbmRQb3NpdGlvbj1iLnByb2dyZXNzQmFyRW5kUG9zaXRpb259ZWxzZSBpZihiPVcuc2tpcHBhYmxlU2VnbWVudHNDb25maWcpe2lmKHY9Yi5pbnRyb1NraXBEdXJhdGlvbk1zKW4uUEU9TnVtYmVyKHYpLzFFMztpZihiPWIub3V0cm9Ta2lwRHVyYXRpb25NcyluLm50PU51bWJlcihiKS8xRTN9aWYodj1XLnNraXBwYWJsZUludHJvQ29uZmlnKWI9TnVtYmVyKHYuc3RhcnRNcyksdj1OdW1iZXIodi5lbmRNcyksaXNOYU4oYil8fGlzTmFOKHYpfHwobi53Qj1iLG4uQXA9CnYpO2lmKGI9Vy5zdHJlYW1TZWxlY3Rpb25Db25maWcpbi5HZj1OdW1iZXIoYi5tYXhCaXRyYXRlKTtpZihiPVcudnJDb25maWcpbi5Kbz1iLnBhcnRpYWxTcGhlcmljYWw9PSIxIjtpZihiPVcud2ViRHJtQ29uZmlnKXtiLnNraXBXaWRldmluZSYmKG4uSmo9ITApO2lmKHY9Yi53aWRldmluZVNlcnZpY2VDZXJ0KW4uRmM9Zy5kMSh2KTtiLnVzZUNvYmFsdFdpZGV2aW5lJiYobi51c2VDb2JhbHRXaWRldmluZT0hMCk7Yi5zdGFydFdpdGhOb1F1YWxpdHlDb25zdHJhaW50JiYobi5aOT0hMCl9aWYoYj1XLm1lZGlhQ29tbW9uQ29uZmlnKXtpZih2PWIuZHluYW1pY1JlYWRhaGVhZENvbmZpZyl7bi5tYXhSZWFkQWhlYWRNZWRpYVRpbWVNcz12Lm1heFJlYWRBaGVhZE1lZGlhVGltZU1zfHxOYU47bi5taW5SZWFkQWhlYWRNZWRpYVRpbWVNcz12Lm1pblJlYWRBaGVhZE1lZGlhVGltZU1zfHxOYU47bi5yZWFkQWhlYWRHcm93dGhSYXRlTXM9di5yZWFkQWhlYWRHcm93dGhSYXRlTXN8fE5hTjsKaWYodj1iPy5tZWRpYVVzdHJlYW1lclJlcXVlc3RDb25maWc/LnZpZGVvUGxheWJhY2tVc3RyZWFtZXJDb25maWcpbi5hST1nLmQxKHYpO2lmKCh2PWI/LnNhYnJDb250ZXh0VXBkYXRlcykmJnYubGVuZ3RoPjApZm9yKHZhciB4IG9mIHYpeC50eXBlJiZ4LnZhbHVlJiYodj17dHlwZTp4LnR5cGUsc2NvcGU6eC5zY29wZSx2YWx1ZTpnLmQxKHgudmFsdWUpfHx2b2lkIDAsc2VuZEJ5RGVmYXVsdDp4LnNlbmRCeURlZmF1bHR9LG4uc2FickNvbnRleHRVcGRhdGVzLnNldCh4LnR5cGUsdikpfWlmKHg9Yi5zZXJ2ZXJQbGF5YmFja1N0YXJ0Q29uZmlnKW4uc2VydmVyUGxheWJhY2tTdGFydENvbmZpZz14O2IudXNlU2VydmVyRHJpdmVuQWJyJiYobi5ERT0hMCk7aWYoeD1iLnJlcXVlc3RQaXBlbGluaW5nQ29uZmlnKW4ucmVxdWVzdFBpcGVsaW5pbmdDb25maWc9eH1pZih4PVcuaW5saW5lUGxheWJhY2tDb25maWcpbi52MT0hIXguc2hvd0F1ZGlvQ29udHJvbHM7aWYoeD1XLmVtYmVkZGVkUGxheWVyQ29uZmlnKXtuLmVtYmVkZGVkUGxheWVyQ29uZmlnPQp4O2lmKHY9eC5lbWJlZGRlZFBsYXllck1vZGUpYj1uLkcoKSxiLmNKPXYsYi5EPXY9PT0iRU1CRURERURfUExBWUVSX01PREVfUEZMIjtpZih4PXgucGVybWlzc2lvbnMpbi5hbGxvd0ltYU1vbmV0aXphdGlvbj0hIXguYWxsb3dJbWFNb25ldGl6YXRpb259aWYoeD1XLndlYlBsYXllckNvbmZpZylpZih4LmdhdGV3YXlFeHBlcmltZW50R3JvdXAmJihuLmdhdGV3YXlFeHBlcmltZW50R3JvdXA9eC5nYXRld2F5RXhwZXJpbWVudEdyb3VwKSx4LmlzUHJveGltYUVsaWdpYmxlJiYobi5pc1Byb3hpbWFMYXRlbmN5RWxpZ2libGU9ITApLHg9eC5tdWx0aUFzcGVjdFN0cmVhbWluZ0NvbmZpZyluLldrPSEwLG4ucGxheWVyT3JpZW50YXRpb249eC5wbGF5ZXJPcmllbnRhdGlvbix4LnBsYXllck9yaWVudGF0aW9uPT09IlBMQVlFUl9PUklFTlRBVElPTl9IT1JJWk9OVEFMIj9uLkJqPXgudmVydGljYWxDb21tYW5kfHxudWxsOngucGxheWVyT3JpZW50YXRpb249PT0iUExBWUVSX09SSUVOVEFUSU9OX1ZFUlRJQ0FMIiYmCihuLkJqPXguaG9yaXpvbnRhbENvbW1hbmR8fG51bGwpO1c9Vy5wbGF5ZXJDb250cm9sc0NvbmZpZztXPy5pc1NlZWthYmxlIT09dm9pZCAwJiYobi5pc1NlZWthYmxlPSEhVy5pc1NlZWthYmxlKX07CnU2Uz1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Vy5mb3JtYXRzO2lmKGIpe3ZhciB2PVtdO2Zvcih2YXIgayBvZiBiKXYucHVzaChgJHtrLml0YWd9LyR7ay53aWR0aH14JHtrLmhlaWdodH1gKTtuLkdqPXYuam9pbigiLCIpO3Y9W107Zm9yKHZhciBoIG9mIGIpe2I9e2l0YWc6aC5pdGFnLHR5cGU6aC5taW1lVHlwZSxxdWFsaXR5OmgucXVhbGl0eX07KGs9aC51cmwpJiYoYi51cmw9ayk7bGV0IHt4aTpOLEVsOkgseTc6QSxzOnl9PVAwKDcsNjkyLGgpO04mJihiLnVybD1ILGIuc3A9QSxiLnM9eSk7di5wdXNoKHlHKGIpKX1uLmNmPXYuam9pbigiLCIpfWlmKGg9Vy5obHNGb3JtYXRzKXt2PXt9O2lmKEQmJihEPUQuYXVkaW9QYWlyaW5nQ29uZmlnKSYmRC5wYWlycylmb3IodmFyIHggb2YgRC5wYWlycylEPXgudmlkZW9JdGFnLHZbRF18fCh2W0RdPVtdKSx2W0RdLnB1c2goeC5hdWRpb0l0YWcpO3g9e307Zm9yKHZhciBMIG9mIGgpeFtMLml0YWddPUwuYml0cmF0ZTtMPVtdO2ZvcihHIG9mIGgpe0Q9CntpdGFnOkcuaXRhZyx0eXBlOkcubWltZVR5cGUsdXJsOkcudXJsLGJpdHJhdGU6Ry5iaXRyYXRlLHdpZHRoOkcud2lkdGgsaGVpZ2h0OkcuaGVpZ2h0LGZwczpHLmZwc307aWYoaD1HLmF1ZGlvVHJhY2spaWYoYj1oLmRpc3BsYXlOYW1lKUQubmFtZT1iLEQuYXVkaW9fdHJhY2tfaWQ9aC5pZCxoLmF1ZGlvSXNEZWZhdWx0JiYoRC5pc19kZWZhdWx0PSIxIik7aWYoRy5kcm1GYW1pbGllcyl7aD1bXTtmb3IodmFyIGUgb2YgRy5kcm1GYW1pbGllcyloLnB1c2goSlpbZV0pO0QuZHJtX2ZhbWlsaWVzPWguam9pbigiLCIpfShoPXZbRy5pdGFnXSkmJmgubGVuZ3RoJiYoRC5hdWRpb19pdGFnPWguam9pbigiLCIpLChoPXhbaFswXV0pJiYoRC5iaXRyYXRlKz1oKSk7KGg9TiQoRykpJiYoRC5lb3RmPWgpO0cuYXVkaW9DaGFubmVscyYmKEQuYXVkaW9fY2hhbm5lbHM9Ry5hdWRpb0NoYW5uZWxzKTtMLnB1c2goeUcoRCkpfXZhciBHPUwuam9pbigiLCIpO24uaGxzRm9ybWF0cz1HfWlmKChlPQpXLmxpY2Vuc2VJbmZvcykmJmUubGVuZ3RoPjApe0c9e307Zm9yKHZhciByIG9mIGUpZT1yLmRybUZhbWlseSx2PXIudXJsLGUmJnYmJihHW0paW2VdXT12KTtuLmNvbnRlbnRQcm90ZWN0aW9uPUd9aWYocj1XLmRybVBhcmFtcyluLmRybVBhcmFtcz1yO2lmKHI9Vy5kYXNoTWFuaWZlc3RVcmwpbi5UZj1nLkVUKHIse2NwbjpuLmNsaWVudFBsYXliYWNrTm9uY2V9KTtpZihyPVcuaGxzTWFuaWZlc3RVcmwpbi5obHN2cD1yO2lmKHI9Vy5wcm9iZVVybCluLnByb2JlVXJsPUZOKGcuRVQocix7Y3BuOm4uY2xpZW50UGxheWJhY2tOb25jZX0pKTtpZihXPVcuc2VydmVyQWJyU3RyZWFtaW5nVXJsKW4ubEM9bmV3IGcud1ooVywhMCl9OwpvWU09ZnVuY3Rpb24obixXLEQpe3ZhciBiPVcudmlkZW9JZDtiJiYobi52aWRlb0lkPWIsRC52aWRlb19pZHx8KEQudmlkZW9faWQ9YikpO2lmKGI9Vy50aXRsZSluLnRpdGxlPWIsRC50aXRsZXx8KEQudGl0bGU9Yik7aWYoYj1XLmxlbmd0aFNlY29uZHMpbi5sZW5ndGhTZWNvbmRzPU51bWJlcihiKSxELmxlbmd0aF9zZWNvbmRzfHwoRC5sZW5ndGhfc2Vjb25kcz1iKTtpZihiPVcua2V5d29yZHMpbi5rZXl3b3Jkcz1XaihiKTtpZihiPVcuY2hhbm5lbElkKW4uRjk9YixELnVjaWR8fChELnVjaWQ9Yik7aWYoYj1XLnZpZXdDb3VudCluLnJhd1ZpZXdDb3VudD1OdW1iZXIoYik7aWYoYj1XLmF1dGhvciluLmF1dGhvcj1iLEQuYXV0aG9yfHwoRC5hdXRob3I9Yik7aWYoRD1XLnNob3J0RGVzY3JpcHRpb24pbi5zaG9ydERlc2NyaXB0aW9uPUQ7aWYoRD1XLmlzQ3Jhd2xhYmxlKW4uaXNMaXN0ZWQ9RDtpZihEPVcubXVzaWNWaWRlb1R5cGUpbi5tdXNpY1ZpZGVvVHlwZT1EO0Q9Vy5pc0xpdmU7CkQhPW51bGwmJihuLmlzTGl2ZVBsYXliYWNrPUQpO2lmKER8fFcuaXNVcGNvbWluZyluLmlzUHJlbWllcmU9IVcuaXNMaXZlQ29udGVudDtpZihEPVcudGh1bWJuYWlsKW4udE89d2MoRCk7aWYoRD1XLmlzRXh0ZXJuYWxseUhvc3RlZFBvZGNhc3Qpbi5pc0V4dGVybmFsbHlIb3N0ZWRQb2RjYXN0PUQ7KEQ9Vy5zdGF0aW9uVHlwZSkmJkQhPT0iU1RBVElPTl9UWVBFX1VOS05PV04iJiYobi56Mz0hMCk7RD1XLnZpZXdlckxpdmVzdHJlYW1Kb2luUG9zaXRpb247RD8udXRjVGltZU1pbGxpcyYmKG4uRHo9Zy5OaChELnV0Y1RpbWVNaWxsaXMpKTtuLkcoKS5leHBlcmltZW50cy5FcSgiZW5hYmxlX2NlbnRlcmVkX2NhcHRpb25fZm9yX3R2ZmlsbV92aWRlbyIpJiZXLmlzVHZmaWxtVmlkZW8hPW51bGwmJihuLmlzVHZmaWxtVmlkZW89Vy5pc1R2ZmlsbVZpZGVvKTtXLmlzVHZmaWxtVmlkZW8hPW51bGwmJihuLmNPPVcuaXNUdmZpbG1WaWRlbyYmbi5pc0xpdmVQbGF5YmFjayl9Owp6RWI9ZnVuY3Rpb24obixXKXtpZihXLnBsYXllckxlZ2FjeURlc2t0b3BZcGNUcmFpbGVyUmVuZGVyZXIpe3ZhciBEPVcucGxheWVyTGVnYWN5RGVza3RvcFlwY1RyYWlsZXJSZW5kZXJlcjtuLk1nPUQudHJhaWxlclZpZGVvSWR8fCIiO3ZhciBiPShiPVcucGxheWVyTGVnYWN5RGVza3RvcFlwY1RyYWlsZXJSZW5kZXJlci55cGNUcmFpbGVyKSYmYi55cGNUcmFpbGVyUmVuZGVyZXJ9ZWxzZSBXLnBsYXllckxlZ2FjeURlc2t0b3BZcGNPZmZlclJlbmRlcmVyP0Q9Vy5wbGF5ZXJMZWdhY3lEZXNrdG9wWXBjT2ZmZXJSZW5kZXJlcjpXLnlwY1RyYWlsZXJSZW5kZXJlciYmKGI9Vy55cGNUcmFpbGVyUmVuZGVyZXIsVz1iLmZ1bGxWaWRlb01lc3NhZ2Usbi5IQj1XP2cuRHAoVyk6IiIsbi5NZz1nLncoYixEeik/LnZpZGVvRGV0YWlscz8udmlkZW9JZHx8IiIpO0QmJihuLlU5PUQuaXRlbVRpdGxlfHwiIixELml0ZW1VcmwmJihuLndWPUQuaXRlbVVybCksRC5pdGVtQnV5VXJsJiYobi5nVj0KRC5pdGVtQnV5VXJsKSxuLkFKPUQuaXRlbVRodW1ibmFpbHx8IiIsbi5kVj1ELm9mZmVySGVhZGxpbmV8fCIiLG4uR249RC5vZmZlckRlc2NyaXB0aW9ufHwiIixuLk9oPUQub2ZmZXJJZHx8IiIsbi5Daj1ELm9mZmVyQnV0dG9uVGV4dHx8IiIsbi51Vz1ELm9mZmVyQnV0dG9uRm9ybWF0dGVkVGV4dHx8bnVsbCxuLkU5PUQub3ZlcmxheUR1cmF0aW9uTXNlY3x8TmFOLG4uSEI9RC5mdWxsVmlkZW9NZXNzYWdlfHwiIixuLnZNPSEwKTtiJiYoKEQ9Zy53KGIsRHopKT9uLkljPXtyYXdfcGxheWVyX3Jlc3BvbnNlOkR9OihEPWcudyhiLGR2aSksbi5JYz1EP2cuaXcoRCk6bnVsbCksbi52TT0hMCl9Owpsb2o9ZnVuY3Rpb24obixXLEQsYil7Vy5pc0xpdmVEZWZhdWx0QnJvYWRjYXN0JiYobi5pc0xpdmVEZWZhdWx0QnJvYWRjYXN0PSEwKTtXLmlzVXBjb21pbmcmJihuLmlzVXBjb21pbmc9ITApO2lmKFcuaXNQb3N0TGl2ZUR2cil7bi5YZz0hMDtpZihiPVcubGF0ZW5jeUNsYXNzKW4ubGF0ZW5jeUNsYXNzPWJqW2JdfHwiVU5LTk9XTiI7Vy5pc0xvd0xhdGVuY3lMaXZlU3RyZWFtJiYobi5pc0xvd0xhdGVuY3lMaXZlU3RyZWFtPSEwKX1lbHNle2xldCB2PSExO24uSVI/KG4uYWxsb3dMaXZlRHZyPWZOKCk/ITA6TVgmJnZqPDU/ITE6ITAsbi5pc0xpdmVQbGF5YmFjaz0hMCk6Vy5pc0xpdmU/KGIubGl2ZXN0cmVhbT0iMSIsbi5hbGxvd0xpdmVEdnI9Vy5pc0xpdmVEdnJFbmFibGVkP2ZOKCk/ITA6TVgmJnZqPDU/ITE6ITA6ITEsbi5wYXJ0bmVySWQ9Mjcsdj0hMCk6Vy5pc1VwY29taW5nJiYodj0hMCk7aWYoVy5pc0xpdmV8fG4uSVIpe1cuaXNMb3dMYXRlbmN5TGl2ZVN0cmVhbSYmKG4uaXNMb3dMYXRlbmN5TGl2ZVN0cmVhbT0KITApO2xldCBrPVcubGF0ZW5jeUNsYXNzO2smJihuLmxhdGVuY3lDbGFzcz1ialtrXXx8IlVOS05PV04iKTtpZihXPVcubGl2ZUNodW5rUmVhZGFoZWFkKW4ubGl2ZUNodW5rUmVhZGFoZWFkPVc7aWYoVz1EJiZELmxpdmVQbGF5ZXJDb25maWcpe1cuaGFzU3ViZnJhZ21lbnRlZEZtcDQmJihuLmhhc1N1YmZyYWdtZW50ZWRGbXA0PSEwKTtXLmhhc1N1YmZyYWdtZW50ZWRXZWJtJiYobi5JMj0hMCk7Vy5kZWZyYWdnZWRGcm9tU3ViZnJhZ21lbnRzJiYobi5kZWZyYWdnZWRGcm9tU3ViZnJhZ21lbnRzPSEwKTtpZihEPVcubGl2ZUV4cGVyaW1lbnRhbENvbnRlbnRJZCluLmxpdmVFeHBlcmltZW50YWxDb250ZW50SWQ9TnVtYmVyKEQpO1c9Vy5pc0xpdmVIZWFkUGxheWFibGU7bi5TKCJodG1sNV9saXZlX2hlYWRfcGxheWFibGUiKSYmVyE9bnVsbCYmKG4uaXNMaXZlSGVhZFBsYXlhYmxlPVcpfX12JiYobi5pc0xpdmVQbGF5YmFjaz0hMCxiLmFkZm9ybWF0JiZiLmFkZm9ybWF0LnNwbGl0KCJfIilbMV0hPT0KIjgifHxuLklKLnB1c2goImhlYXJ0YmVhdCIpKX19OwprTD1mdW5jdGlvbihuKXt2YXIgVz1uLmdldFdhdGNoTmV4dFJlc3BvbnNlKCk/LmNvbnRlbnRzPy50d29Db2x1bW5XYXRjaE5leHRSZXN1bHRzOyhuPW4uZ2V0V2F0Y2hOZXh0UmVzcG9uc2UoKT8ucGxheWVyT3ZlcmxheXM/LnBsYXllck92ZXJsYXlSZW5kZXJlcj8uZW5kU2NyZWVuPy53YXRjaE5leHRFbmRTY3JlZW5SZW5kZXJlcj8ucmVzdWx0cyl8fChuPVc/LmVuZFNjcmVlbj8uZW5kU2NyZWVuPy5yZXN1bHRzKTtyZXR1cm4gbn07CnhMPWZ1bmN0aW9uKCl7aWYoaHg9PT12b2lkIDApe3RyeXt3aW5kb3cubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oInl0LXBsYXllci1sdiIpfWNhdGNoKFcpe31hOnt0cnl7dmFyIG49ISFzZWxmLmxvY2FsU3RvcmFnZX1jYXRjaHtuPSExfWlmKG4mJihuPWcudlMoYCR7TTAoKX06Onl0LXBsYXllcmApKSl7aHg9bmV3IFQkYihuKTticmVhayBhfWh4PXZvaWQgMH19cmV0dXJuIGh4fTsKTEw9ZnVuY3Rpb24oKXt2YXIgbj14TCgpO2lmKCFuKXJldHVybnt9O3RyeXtsZXQgVz1uLmdldCgieXQtcGxheWVyLWx2Iik7cmV0dXJuIEpTT04ucGFyc2UoV3x8Int9Iil9Y2F0Y2goVyl7cmV0dXJue319fTsKZSQ9ZnVuY3Rpb24obil7cmV0dXJuIExMKClbbl18fDB9OwpnNj1mdW5jdGlvbihuLFcpe3ZhciBEPUxMKCk7VyE9PURbbl0mJihXIT09MD9EW25dPVc6ZGVsZXRlIERbbl0sbj14TCgpKSYmKEQ9SlNPTi5zdHJpbmdpZnkoRCksbi5zZXQoInl0LXBsYXllci1sdiIsRCkpfTsKZy5YZT1hc3luYyBmdW5jdGlvbihuKXtyZXR1cm4gQ0YoamlVKCksbil9Owp0eD1hc3luYyBmdW5jdGlvbihuLFcsRCxiLHYsayxoLHgpe2lmKGUkKG4pPT09NClyZXR1cm4gNDt2YXIgTD1hd2FpdCBnLm5QKCk7aWYoIUwpdGhyb3cgZy5yMCgid2lhYyIpO3gmJmghPT12b2lkIDAmJihoPWF3YWl0IENuaSh4LGgpKTt2YXIgZT1ELmxhc3RNb2RpZmllZHx8IjAiO3g9YXdhaXQgZy5YZShMKTt0cnl7cmV0dXJuIHFzKyssYXdhaXQgT1IoeCxbImluZGV4IiwibWVkaWEiXSx7bW9kZToicmVhZHdyaXRlIix0YWc6IklEQl9UUkFOU0FDVElPTl9UQUdfV0lBQyIsR1E6ITB9LEc9PntpZihrIT09dm9pZCAwJiZoIT09dm9pZCAwKXt2YXIgcj1gJHtufXwke1cuaWR9fCR7ZX18JHtTdHJpbmcoaykucGFkU3RhcnQoMTAsIjAiKX1gO3I9Ry5vYmplY3RTdG9yZSgibWVkaWEiKS5wdXQoaCxyKX1lbHNlIHI9c1IucmVzb2x2ZSh2b2lkIDApO3ZhciBOPUdmKG4sVy5mWSgpKSxIPUdmKG4sIVcuZlkoKSksQT17Zm10czpnLkV0KHtkbHQ6Yi5kb3dubG9hZGVkRW5kVGltZS50b1N0cmluZygpLApta2V0OmIubWF4S25vd25FbmRUaW1lLnRvU3RyaW5nKCksYXZicjpiLmF2ZXJhZ2VCeXRlUmF0ZS50b1N0cmluZygpfSksZm9ybWF0OkR8fHt9fTtOPUcub2JqZWN0U3RvcmUoImluZGV4IikucHV0KEEsTik7dmFyIHk9Yi5kb3dubG9hZGVkRW5kVGltZT09PS0xO0E9eT9HLm9iamVjdFN0b3JlKCJpbmRleCIpLmdldChIKTpzUi5yZXNvbHZlKHZvaWQgMCk7dmFyIFQ9e2ZtdHM6Im11c2ljIixmb3JtYXQ6e319O0c9eSYmdiYmIVcuZlkoKT9HLm9iamVjdFN0b3JlKCJpbmRleCIpLnB1dChULEgpOnNSLnJlc29sdmUodm9pZCAwKTtyZXR1cm4gc1IuYWxsKFtHLEEscixOXSkudGhlbigoWyx6XSk9Pntxcy0tO3ZhciBDPWUkKG4pLFE7IShRPUMhPT00JiZ5JiZ2KSYmKFE9eiE9PXZvaWQgMCkmJihRPSh6PXouZm10cyk/ej09PSJtdXNpYyI/ITA6ei5pbmNsdWRlcygiZGx0PS0xIil8fCF6LmluY2x1ZGVzKCJkbHQ9Iik6ITEpO1EmJihDPTEsZzYobixDKSk7cmV0dXJuIEN9KX0pfWNhdGNoKEcpe3FzLS07Cng9ZSQobik7aWYoeD09PTQpcmV0dXJuIHg7ZzYobiw0KTt0aHJvdyBHO319OwpCJHg9YXN5bmMgZnVuY3Rpb24obil7dmFyIFc9YXdhaXQgZy5uUCgpO2lmKCFXKXRocm93IGcucjAoInJpIik7cmV0dXJuIE9SKGF3YWl0IGcuWGUoVyksWyJpbmRleCJdLHttb2RlOiJyZWFkb25seSIsdGFnOiJJREJfVFJBTlNBQ1RJT05fVEFHX0xNUkkifSxEPT57dmFyIGI9SURCS2V5UmFuZ2UuYm91bmQobisifCIsbisifiIpO3JldHVybiBELm9iamVjdFN0b3JlKCJpbmRleCIpLmdldEFsbChiKS50aGVuKHY9PnYubWFwKGs9Pms/ay5mb3JtYXQ6e30pKX0pfTsKdzNpPWFzeW5jIGZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9YXdhaXQgZy5uUCgpO2lmKCFrKXRocm93IGcucjAoInJjIik7az1PUihhd2FpdCBnLlhlKGspLFsibWVkaWEiXSx7bW9kZToicmVhZG9ubHkiLHRhZzoiSURCX1RSQU5TQUNUSU9OX1RBR19MTVJNIn0saD0+e3ZhciB4PWAke259fCR7V318JHtEfXwke1N0cmluZyhiKS5wYWRTdGFydCgxMCwiMCIpfWA7cmV0dXJuIGgub2JqZWN0U3RvcmUoIm1lZGlhIikuZ2V0KHgpfSk7CnJldHVybiB2P2sudGhlbihoPT57aWYoaD09PXZvaWQgMCl0aHJvdyBFcnJvcigiTm8gZGF0YSBmcm9tIGluZGV4RGIiKTtyZXR1cm4gRkkxKHYsaCl9KS5jYXRjaChoPT57dGhyb3cgbmV3IGcuUXgoYEVycm9yIHdoaWxlIHJlYWRpbmcgY2h1bms6ICR7aC5uYW1lfSwgJHtoLm1lc3NhZ2V9YCk7Cn0pOmt9OwpHZj1mdW5jdGlvbihuLFcpe3JldHVybmAke259fCR7Vz8idiI6ImEifWB9OwpSRWk9ZnVuY3Rpb24obil7dmFyIFc9e30sRD17fTtmb3IobGV0IGsgb2Ygbil7dmFyIGI9ay5zcGxpdCgifCIpO2lmKCFrLm1hdGNoKE1tQykpe0Rba109Ij8iO2NvbnRpbnVlfW49TnVtYmVyKGIucG9wKCkpO2lmKGlzTmFOKG4pKXtEW2tdPSI/Ijtjb250aW51ZX12YXIgdj1iLmpvaW4oInwiKTsoYj1XW3ZdKT8odj1iW2IubGVuZ3RoLTFdLG49PT12LmVuZCsxP3YuZW5kPW46Yi5wdXNoKHtzdGFydDpuLGVuZDpufSkpOldbdl09W3tzdGFydDpuLGVuZDpufV19Zm9yKGxldCBrIG9mIE9iamVjdC5rZXlzKFcpKURba109V1trXS5tYXAoaD0+YCR7aC5zdGFydH0tJHtoLmVuZH1gKS5qb2luKCIsIik7CnJldHVybiBEfTsKJEw9ZnVuY3Rpb24obixXKXt2YXIgRD1uLlYoKSxiPW4uWCgpLHY9MSxrPTAsaD1nLmRNKG4ueVEuZXhwZXJpbWVudHMsImh0bWw1X2RlZmF1bHRfYWRfZ2FpbiIpO2ghPW51bGwmJkQmJih2PWgpO2lmKGI/LkQoKSl7az1iLmF1ZGlvPy5KPz9uLko7aWYoaz09bnVsbHx8aXNOYU4oaykpaz12b2lkIDA7cmV0dXJue0R5OjAsWnI6MSx3RzoxLGZkOmsscHk6ayxSUzprLGZvcm1hdElkOmIuaWQsYUc6VyxJejpuLnlRLlZRLFFPOm4uUU99fUQ9Yj8uYXVkaW8/Lko/P24uSjtiIT1udWxsJiZiLmF1ZGlvPy5KPT1udWxsJiZuLlUoImFnYyIse25vX2FiOjF9KTtpZihEPT1udWxsfHxpc05hTihEKSlyZXR1cm4gVz1iPy5hdWRpbz8uWCE9bnVsbD9iLmF1ZGlvLlg6bi5XLGlzTmFOKFcpfHwoaz00KSxXPS1XLHtEeTpXLFpyOk1hdGgubWluKDEsMTAqKihXLzIwKSl8fHYsd0c6ayxmb3JtYXRJZDpiPy5pZCxRTzpuLlFPfTtrPTE7aD1uLmxvdWRuZXNzVGFyZ2V0TGtmczt2YXIgeD1uLnlRLmV4cGVyaW1lbnRzLkVxKCJodG1sNV9zdGF0ZWZ1bF9hdWRpb19ub3JtYWxpemF0aW9uIik7CmlmKG4uYXBwbHlTdGF0ZWZ1bE5vcm1hbGl6YXRpb24mJngpe2lmKFchPW51bGwpdmFyIEw9VztlbHNlIGlzRmluaXRlKG4ueVEuVlEpJiYoTD1uLnlRLlZRKTtMIT1udWxsJiYoaz0yLGg9Zy5GZihMLG4ubWluaW11bUxvdWRuZXNzVGFyZ2V0TGtmcyxuLmxvdWRuZXNzVGFyZ2V0TGtmcykpfXZhciBlPU1hdGgubWluKGgtRCwwKTt2YXIgRz1EK2U7dj1NYXRoLm1pbigxLDEwKiooZS8yMCkpfHx2O3gmJm4uVSgiYWdjIix7c3Rub3JtOm4uYXBwbHlTdGF0ZWZ1bE5vcm1hbGl6YXRpb24saHN0OlcsZW52Om4ueVEuVlEsZm1sOkQsc3RndDpMLHRtaW46bi5taW5pbXVtTG91ZG5lc3NUYXJnZXRMa2ZzLHRtYXg6bi5sb3VkbmVzc1RhcmdldExrZnMsbmc6ZX0pO3JldHVybntEeTplLFpyOnYsd0c6ayxmZDpELHB5OmgsUlM6Ryxmb3JtYXRJZDpiPy5pZCxhRzpXLEl6Om4ueVEuVlEsUU86bi5RT319OwpyNj1mdW5jdGlvbihuLFcpe1c9JEwobixXKTtuLk49VztuLnByZXNlcnZlU3RhdGVmdWxMb3VkbmVzc1RhcmdldCYmVy5SUyE9bnVsbCYmKG4ueVEuVlE9Vy5SUyk7cmV0dXJuIFcuWnJ9OwpRaTI9ZnVuY3Rpb24obixXLEQpe1c9e2NwbjpXfTtuLmluZGV4T2YoIi9pYncvIik9PT0tMSYmKFcuaWJ3PUQ/U3RyaW5nKEQpOiIxMzY5ODQzIik7cmV0dXJue3VybDpnLkVUKG4sVyksdHlwZToiYXBwbGljYXRpb24veC1tcGVnVVJMIixxdWFsaXR5OiJhdXRvIixpdGFnOiI5MyJ9fTsKVm10PWZ1bmN0aW9uKG4pe3RyeXtsZXQgVz0obmV3IGcud1oobiwhMCkpLmdldCgibiIpO2lmKFcpe2xldCBEPW4ubWF0Y2goL1wvblwvKFteL10rKS8pO2lmKEQmJkRbMV0mJkRbMV0hPT1XKXJldHVybiBuLnJlcGxhY2UoYC9uLyR7RFsxXX1gLGAvbi8ke1d9YCl9fWNhdGNoKFcpe2cuR3EoVyl9cmV0dXJuIG59OwpzVT1mdW5jdGlvbihuKXtpZihuLmlzQWQoKSYmKG4uVlE/bi52aWRlb0lkIT09bi55US5TJDpuLnZpZGVvSWQhPW4ueVEuUyQpKXJldHVybiBuLnlRLlMkfTsKVm49ZnVuY3Rpb24obil7aWYobil7aWYoQm4obikpcmV0dXJuIG47bj1lQShuKTtpZihCbihuLCEwKSlyZXR1cm4gbn1yZXR1cm4iIn07CmcuWU49ZnVuY3Rpb24obil7aWYoZy4kNihuLnlRKSYmbi55US5WPT09Inl0IiYmIW4uUygiaHRtbDVfZW5hYmxlX3NhYnJfb25feXRfZW1iZWRzIikpcmV0dXJuITE7aWYobi5abylyZXR1cm4gbi5ERSYmbi5VKCJmZHMiLHtmZHM6ITB9LCEwKSwhMTtpZihuLnlRLlYhPT0ieXQiJiYhY3F4KG4pKXJldHVybiBuLkRFJiZuLlUoImRzdm4iLHtuczpuLnlRLlZ9LCEwKSwhMTtpZihuLmNvdG58fCFuLk58fG4uTi5pc090ZiYmIW4uUygiaHRtbDVfZW5hYmxlX3NhYnJfb3RmX2luX2NsaWVudCIpfHxuLlcmJiFuLlcuTigpfHxuLkNVJiYhbi5TKCJodG1sNV9lbmFibGVfc2Ficl9jc2RhaSIpKXJldHVybiExO2lmKG4uUygiaHRtbDVfdXNlX3NhYnJfcmVxdWVzdHNfZm9yX2RlYnVnZ2luZyIpKXJldHVybiEwO24uREUmJm4uVSgiZXNmdyIse3VzYmM6bi5ERSxoc3U6ISFuLmxDfSwhMCk7aWYobi5ERSYmbi5sQylyZXR1cm4hMDtpZihuLlMoImh0bWw1X3JlbW92ZV9jbGllbnRfc2Ficl9kZXRlcm1pbmF0aW9uIikpcmV0dXJuITE7CnZhciBXPSFuLk4uelcmJiFuLk1pKCksRD1XJiZOcyYmbi5TKCJodG1sNV9lbmFibGVfc2Ficl92b2Rfc3RyZWFtaW5nX3hociIpO1c9VyYmIU5zJiZuLlMoImh0bWw1X2VuYWJsZV9zYWJyX3ZvZF9ub25fc3RyZWFtaW5nX3hociIpO3ZhciBiPXBMKG4pLHY9bi5TKCJodG1sNV9lbmFibGVfc2Ficl9kcm1fdm9kX3N0cmVhbWluZ194aHIiKSYmTnMmJm4uTWkoKSYmIW4uTi56VyYmKG4uZHJtUHJvZHVjdD09PSIxIj8hMTohMCk7KEQ9RHx8V3x8Ynx8dikmJiFuLmxDJiZuLlUoInNhYnIiLHtsb2M6Im0ifSwhMCk7cmV0dXJuIEQmJiEhbi5sQ307CldqPWZ1bmN0aW9uKG4pe3ZhciBXPXt9O2ZvcihsZXQgRCBvZiBuKW49RC5zcGxpdCgiPSIpLG4ubGVuZ3RoPT09Mj9XW25bMF1dPW5bMV06V1tEXT0hMDtyZXR1cm4gV307CkhqPWZ1bmN0aW9uKG4pe2lmKG4uUygiaHRtbDVfb25lc2llIikmJm4uZXJyb3JDb2RlKXJldHVybiExO3ZhciBXPWcuamoobi5JSiwieXBjIik7bi55cGNQcmV2aWV3JiYoVz0hMSk7cmV0dXJuIG4uT1YoKSYmIW4ubG9hZGluZyYmKGcuWUwobil8fGcuamoobi5JSiwiaGVhcnRiZWF0Iil8fFcpfTsKZkw9ZnVuY3Rpb24obil7bi5xTigpfHwobi5sb2FkaW5nPSExLG4uV0ooImRhdGFsb2FkZWQiKSl9OwptZj1mdW5jdGlvbihuLFcpe3ZhciBEPVcucmF3X2VtYmVkZGVkX3BsYXllcl9yZXNwb25zZTtpZighRCl7dmFyIGI9Vy5lbWJlZGRlZF9wbGF5ZXJfcmVzcG9uc2U7YiYmKEQ9SlNPTi5wYXJzZShiKSl9RCYmKG4uTz1EKTtpZihuLk8pe24uZW1iZWRkZWRQbGF5ZXJDb25maWc9bi5PLmVtYmVkZGVkUGxheWVyQ29uZmlnfHxudWxsO2lmKEQ9bi5PLnZpZGVvRmxhZ3MpRC5wbGF5YWJsZUluRW1iZWQmJihuLmFsbG93RW1iZWQ9ITApLEQuaXNQcml2YXRlJiYobi5pc1ByaXZhdGU9ITApLEQudXNlckRpc3BsYXlOYW1lJiYoVy51c2VyX2Rpc3BsYXlfbmFtZT1ELnVzZXJEaXNwbGF5TmFtZSksRC51c2VyRGlzcGxheUltYWdlJiYoVy51c2VyX2Rpc3BsYXlfaW1hZ2U9RC51c2VyRGlzcGxheUltYWdlKTtpZigoRD1uLk8uZW1iZWRQcmV2aWV3KSYmRC50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXIpe0Q9RC50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXI7bkwobixELmNvbnRyb2xCZ0h0bWwpO2lmKGI9CkQuZGVmYXVsdFRodW1ibmFpbCluLnRPPXdjKGIpOyhiPWcudyhEPy52aWRlb0RldGFpbHMsYW9VKSkmJkp4KG4sVyxiKTtiPWcudyhEPy52aWRlb0RldGFpbHMsbnFNKTtuLkU1PSEhRC5hZGRUb1dhdGNoTGF0ZXJCdXR0b247bi5zaG93U2hhcmVCdXR0b249ISFELnNoYXJlQnV0dG9uO2I/Lm11c2ljVmlkZW9UeXBlJiYobi5tdXNpY1ZpZGVvVHlwZT1iLm11c2ljVmlkZW9UeXBlKTtpZihiPWcudyhuLmdldEVtYmVkZGVkUGxheWVyUmVzcG9uc2UoKT8uZW1iZWRQcmV2aWV3Py50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXI/LnBsYXlCdXR0b24/LmJ1dHRvblJlbmRlcmVyPy5uYXZpZ2F0aW9uRW5kcG9pbnQsZy5JUSkpb0EobixiKSxuLnZpZGVvSWQ9Yi52aWRlb0lkfHxuLnZpZGVvSWQ7RC52aWRlb0R1cmF0aW9uU2Vjb25kcyYmKG4ubGVuZ3RoU2Vjb25kcz1nLk5oKEQudmlkZW9EdXJhdGlvblNlY29uZHMpKTtELndlYlBsYXllckFjdGlvbnNQb3J0aW5nJiZhQShuLEQud2ViUGxheWVyQWN0aW9uc1BvcnRpbmcpOwppZihEPWcudyhEPy5wbGF5bGlzdCxXR2kpKXtuLk1kPSEwO2I9W107dmFyIHY9TnVtYmVyKEQuY3VycmVudEluZGV4KTtpZihELmNvbnRlbnRzKWZvcihsZXQgaz0wLGg9RC5jb250ZW50cy5sZW5ndGg7azxoO2srKyl7bGV0IHg9RC5jb250ZW50c1trXS5wbGF5bGlzdFBhbmVsVmlkZW9SZW5kZXJlcjtpZigheCljb250aW51ZTtsZXQgTD14LnNob3J0QnlsaW5lVGV4dD9nLkRwKHguc2hvcnRCeWxpbmVUZXh0KToiIixlPXgudGl0bGU/Zy5EcCh4LnRpdGxlKToiIjtiLnB1c2goe2F1dGhvcjpMLGVuY3J5cHRlZF9pZDp4LnZpZGVvSWQsdGl0bGU6ZSxjaGFubmVsX3BhdGg6az09PXY/Vy5jaGFubmVsX3BhdGg6IiIscHJvZmlsZV9waWN0dXJlOms9PT12P1cucHJvZmlsZV9waWN0dXJlOiIiLGlzX3ByaXZhdGU6az09PXY/bi5pc1ByaXZhdGU6ITAsaXNfZG5pOms9PT12P24uaU46ITEsZG5pX2NvbG9yOms9PT12P24uclI6IiJ9KX1XPXtpbmRleDpELmN1cnJlbnRJbmRleCxsaXN0OkQucGxheWxpc3RJZCwKcGxheWxpc3RfbGVuZ3RoOkQudG90YWxWaWRlb3MsdmlkZW86Yn07RC50aXRsZVRleHQmJihXLnRpdGxlPWcuRHAoRC50aXRsZVRleHQpKTtELnNob3J0QnlsaW5lVGV4dCYmKFcuYXV0aG9yPWcuRHAoRC5zaG9ydEJ5bGluZVRleHQpKTtuLlE3PVd9aWYoVz1nLncobi5nZXRFbWJlZGRlZFBsYXllclJlc3BvbnNlKCk/LmVtYmVkUHJldmlldz8udGh1bWJuYWlsUHJldmlld1JlbmRlcmVyPy5pbmZvUGFuZWwsUyQpKW4ud289TnVtYmVyKFc/LmR1cmF0aW9uTXMpfHxOYU4sVz8uaW5mb1BhbmVsT3ZlcnZpZXdWaWV3TW9kZWwmJihuLnhqPVc/LmluZm9QYW5lbE92ZXJ2aWV3Vmlld01vZGVsKSxXPy5pbmZvUGFuZWxEZXRhaWxzVmlld01vZGVsJiYobi5Saz1XPy5pbmZvUGFuZWxEZXRhaWxzVmlld01vZGVsKX1pZihuLk8ucHJldmlld1BsYXlhYmlsaXR5U3RhdHVzKXtpZihuLmVCPW4uTy5wcmV2aWV3UGxheWFiaWxpdHlTdGF0dXMsVz1uLmVCLCFbIk9LIiwiTElWRV9TVFJFQU1fT0ZGTElORSJdLmluY2x1ZGVzKFcuc3RhdHVzKSl7bi5lcnJvckNvZGU9CmlpKFcuZXJyb3JDb2RlKTtEPVcuZXJyb3JTY3JlZW47aWYoYj1EPy5wbGF5ZXJFcnJvck1lc3NhZ2VSZW5kZXJlcil7bi5mbT1iO2lmKHY9Yi5yZWFzb24pbi5lcnJvclJlYXNvbj1nLkRwKHYpO2lmKGI9Yi5zdWJyZWFzb24pbi53aT1nLkRwKGIpfWVsc2Ugbi5lcnJvclJlYXNvbj1XLnJlYXNvbnx8bnVsbDtzd2l0Y2goVy5zdGF0dXMpe2Nhc2UgIkxPR0lOX1JFUVVJUkVEIjpuLmVycm9yRGV0YWlsPSIxIjticmVhaztjYXNlICJDT05URU5UX0NIRUNLX1JFUVVJUkVEIjpuLmVycm9yRGV0YWlsPSIyIjticmVhaztjYXNlICJBR0VfQ0hFQ0tfUkVRVUlSRUQiOm4uZXJyb3JEZXRhaWw9RD8ucGxheWVyS2F2UmVuZGVyZXI/LmthdlVybD8iNCI6IjMiO2JyZWFrO2RlZmF1bHQ6bi5lcnJvckRldGFpbD1XLmlzQmxvY2tlZEluUmVzdHJpY3RlZE1vZGU/IjUiOiIwIn19fWVsc2Ugbi5PLnBsYXlhYmlsaXR5U3RhdHVzJiYobi5SdD1uLk8ucGxheWFiaWxpdHlTdGF0dXMsQXgobikmJihuLmVycm9yRGV0YWlsPQoiMCIsbi5SdCYmKChXPW4uUnQuZW1iZWRkZWRQbGF5ZXJFcnJvck1lc3NhZ2VSZW5kZXJlcik/bi5mbT1nLncoVyxEdEMpOm4uZXJyb3JSZWFzb249bi5SdC5yZWFzb258fG51bGwpKSk7KFc9bi5PLmF0dGVzdGF0aW9uKSYmUW4obixXKTsoVz1uLk8ucGVybWlzc2lvbnMpJiZXLmFsbG93SW1hTW9uZXRpemF0aW9uJiYobi5hbGxvd0ltYU1vbmV0aXphdGlvbj0hMCl9fTsKRVU9ZnVuY3Rpb24obixXKXt2YXIgRD1XLnJhd193YXRjaF9uZXh0X3Jlc3BvbnNlO2lmKCFEKXt2YXIgYj1XLndhdGNoX25leHRfcmVzcG9uc2U7YiYmKEQ9SlNPTi5wYXJzZShiKSl9aWYoRCl7bi53YXRjaE5leHRSZXNwb25zZT1EOyhEPW4ud2F0Y2hOZXh0UmVzcG9uc2UucGxheWVyQ3VlUmFuZ2VTZXQpJiZnLktMKG4sRCk7RD1uLndhdGNoTmV4dFJlc3BvbnNlLnBsYXllck92ZXJsYXlzO2lmKEQmJihEPUQucGxheWVyT3ZlcmxheVJlbmRlcmVyKSl7aWYoYj1ELmF1dG9uYXZUb2dnbGUpbi5hdXRvcGxheVN3aXRjaEJ1dHRvblJlbmRlcmVyPWcudyhiLGJXWiksbi5TKCJ3ZWJfcGxheWVyX2F1dG9uYXZfdXNlX3NlcnZlcl9wcm92aWRlZF9zdGF0ZSIpJiZuLkFWKCkmJihuLmF1dG9uYXZTdGF0ZT1uLmF1dG9wbGF5U3dpdGNoQnV0dG9uUmVuZGVyZXIuZW5hYmxlZD8yOjEpO2lmKGI9RC52aWRlb0RldGFpbHMpe3ZhciB2PWIuZW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzUmVuZGVyZXI7CmlmKGI9Yi5wbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzUmVuZGVyZXIpYi50aXRsZSYmKFcudGl0bGU9Zy5EcChiLnRpdGxlKSksYi5zdWJ0aXRsZSYmKFcuc3VidGl0bGU9Zy5EcChiLnN1YnRpdGxlKSl9Zy5DTihuLnlRKSYmKG4uRTU9ISFELmFkZFRvTWVudSk7bi5zaG93U2hhcmVCdXR0b249ISFELnNoYXJlQnV0dG9uO0Quc3RhcnRQb3NpdGlvbiYmRC5lbmRQb3NpdGlvbiYmKG4ucHJvZ3Jlc3NCYXJTdGFydFBvc2l0aW9uPUQuc3RhcnRQb3NpdGlvbixuLnByb2dyZXNzQmFyRW5kUG9zaXRpb249RC5lbmRQb3NpdGlvbik7aWYoYj1nLncobi5nZXRXYXRjaE5leHRSZXNwb25zZSgpPy5wbGF5ZXJPdmVybGF5cz8ucGxheWVyT3ZlcmxheVJlbmRlcmVyPy5pbmZvUGFuZWwsUyQpKW4ud289TnVtYmVyKGI/LmR1cmF0aW9uTXMpfHxOYU4sYj8uaW5mb1BhbmVsT3ZlcnZpZXdWaWV3TW9kZWwmJihuLnhqPWI/LmluZm9QYW5lbE92ZXJ2aWV3Vmlld01vZGVsKSxiPy5pbmZvUGFuZWxEZXRhaWxzVmlld01vZGVsJiYKKG4uUms9Yj8uaW5mb1BhbmVsRGV0YWlsc1ZpZXdNb2RlbCk7bi5zaG93U2Vla2luZ0NvbnRyb2xzPSEhRC5zaG93U2Vla2luZ0NvbnRyb2xzfWlmKEQ9bi5nZXRXYXRjaE5leHRSZXNwb25zZSgpPy5jb250ZW50cz8udHdvQ29sdW1uV2F0Y2hOZXh0UmVzdWx0cylpZihEPUQuZGVza3RvcE92ZXJsYXkmJmcudyhELmRlc2t0b3BPdmVybGF5LHZxdCkpRC5zdXBwcmVzc1NoYXJlQnV0dG9uJiYobi5zaG93U2hhcmVCdXR0b249ITEpLEQuc3VwcHJlc3NXYXRjaExhdGVyQnV0dG9uJiYobi5FNT0hMSk7diYmSngobixXLHYpO0Q9REkoMCxXLmF1dG9wbGF5X2NvdW50KTt2YXIgaz1uLmdldFdhdGNoTmV4dFJlc3BvbnNlKCk7Yj1rLmNvbnRlbnRzPy50d29Db2x1bW5XYXRjaE5leHRSZXN1bHRzO3Y9ay5wbGF5ZXJPdmVybGF5cz8ucGxheWVyT3ZlcmxheVJlbmRlcmVyPy5hdXRvcGxheT8ucGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI7dmFyIGg9a0wobik7aWYoKGs9ay5jb250ZW50cz8uc2luZ2xlQ29sdW1uV2F0Y2hOZXh0UmVzdWx0cykmJgprLmF1dG9wbGF5Py5hdXRvcGxheSYmIWsucGxheWxpc3Qpe2xldCB5PWsuYXV0b3BsYXkuYXV0b3BsYXkuc2V0cztrPXt9O3ZhciB4PW5ldyBPVShuLkcoKSksTD1udWxsLGU7aWYoeSl7Zm9yKHZhciBHIG9mIHkpaWYoKGU9Ry5hdXRvcGxheVZpZGVvUmVuZGVyZXIpJiZlLmNvbXBhY3RWaWRlb1JlbmRlcmVyKXtMPWUuY29tcGFjdFZpZGVvUmVuZGVyZXI7YnJlYWt9aWYoZT15WzBdLmF1dG9wbGF5VmlkZW8pKEc9ZS5jbGlja1RyYWNraW5nUGFyYW1zKSYmKGsuaXRjdD1HKSxrLmF1dG9uYXY9IjEiLGsucGxheW5leHQ9U3RyaW5nKEQpfWVsc2Ugay5mZWF0dXJlPSJyZWxhdGVkLWF1dG8iO2U9Zy53KGUsZy5JUSk7aWYoTCl7eC52aWRlb0lkPUwudmlkZW9JZDtpZihlPUwuc2hvcnRCeWxpbmVUZXh0KXguYXV0aG9yPWcuRHAoZSk7aWYoZT1MLnRpdGxlKXgudGl0bGU9Zy5EcChlKX1lbHNlIGUhPW51bGwmJmUudmlkZW9JZCYmKHgudmlkZW9JZD1lLnZpZGVvSWQpO3gueXo9aztuLnN1Z2dlc3Rpb25zPQpbXTtuLlU1PXh9aWYoaCl7ZT1bXTtmb3IodmFyIHIgb2YgaCl7aD12b2lkIDA7Rz1udWxsO2lmKHIuZW5kU2NyZWVuVmlkZW9SZW5kZXJlcil7az1yLmVuZFNjcmVlblZpZGVvUmVuZGVyZXI7eD1rLnRpdGxlO0c9bmV3IE9VKG4uRygpKTtHLnZpZGVvSWQ9ay52aWRlb0lkO0cubGVuZ3RoU2Vjb25kcz1rLmxlbmd0aEluU2Vjb25kc3x8MDtpZihMPWsucHVibGlzaGVkVGltZVRleHQpRy5wdWJsaXNoZWRUaW1lVGV4dD1nLkRwKEwpO2lmKEw9ay5zaG9ydEJ5bGluZVRleHQpRy5hdXRob3I9Zy5EcChMKTtpZihMPWsuc2hvcnRWaWV3Q291bnRUZXh0KUcuc2hvcnRWaWV3Q291bnQ9Zy5EcChMKTt4JiYoRy50aXRsZT1nLkRwKHgpLCh4PXguYWNjZXNzaWJpbGl0eSkmJih4PXguYWNjZXNzaWJpbGl0eURhdGEpJiZ4LmxhYmVsJiYoRy5hcmlhTGFiZWw9eC5sYWJlbCkpO2lmKEw9ay5uYXZpZ2F0aW9uRW5kcG9pbnQpaD1MLmNsaWNrVHJhY2tpbmdQYXJhbXMseD1nLncoTCxnLklRKSxMPWcudyhMLApnLlBqKSx4P0cuczA9eDpMIT1udWxsJiYoRy53YXRjaFVybD1MLnVybCk7aWYoeD1rLnRodW1ibmFpbE92ZXJsYXlzKWZvcih2YXIgTiBvZiB4KWlmKHg9Ti50aHVtYm5haWxPdmVybGF5VGltZVN0YXR1c1JlbmRlcmVyKWlmKHguc3R5bGU9PT0iTElWRSIpe0cuaXNMaXZlUGxheWJhY2s9ITA7YnJlYWt9ZWxzZSBpZih4LnN0eWxlPT09IlVQQ09NSU5HIil7Ry5pc1VwY29taW5nPSEwO2JyZWFrfUcudE89d2Moay50aHVtYm5haWwpfWVsc2UgaWYoci5lbmRTY3JlZW5QbGF5bGlzdFJlbmRlcmVyKXtrPXIuZW5kU2NyZWVuUGxheWxpc3RSZW5kZXJlcjtoPWsubmF2aWdhdGlvbkVuZHBvaW50O2lmKCFoKWNvbnRpbnVlO0c9Zy53KGgsZy5JUSk7aWYoIUcpY29udGludWU7eD1HLnZpZGVvSWQ7Rz1uZXcgWnoobi5HKCkpO0cucGxheWxpc3RJZD1rLnBsYXlsaXN0SWQ7Ry5wbGF5bGlzdExlbmd0aD1OdW1iZXIoay52aWRlb0NvdW50KXx8MDtHLk49eHx8bnVsbDtHLnZpZGVvSWQ9eDtpZih4PQprLnRpdGxlKUcudGl0bGU9Zy5EcCh4KTtpZih4PWsuc2hvcnRCeWxpbmVUZXh0KUcuYXV0aG9yPWcuRHAoeCk7aD1oLmNsaWNrVHJhY2tpbmdQYXJhbXM7Ry50Tz13YyhrLnRodW1ibmFpbCl9RyYmKGgmJihHLnNlc3Npb25EYXRhPXtpdGN0Omh9KSxlLnB1c2goRykpfW4uc3VnZ2VzdGlvbnM9ZX1pZih2KXtuLkozPSEhdi5wcmVmZXJJbW1lZGlhdGVSZWRpcmVjdDtuLkcoKS5adCgpLk4uUVEoa05qKSYmKG4uaDM9ISF2LnNob3dQYXVzZWRXaGVuRGlzYWJsZWQpO24uclc9bi5yV3x8ISF2LndlYlNob3dOZXdBdXRvbmF2Q291bnRkb3duO2lmKG4uclcpe049djtiPWJ8fG51bGw7cj1uZXcgT1Uobi5HKCkpO3IudmlkZW9JZD1OLnZpZGVvSWQ7aWYoZT1OLnZpZGVvVGl0bGUpci50aXRsZT1nLkRwKGUpLChlPWUuYWNjZXNzaWJpbGl0eSkmJihlPWUuYWNjZXNzaWJpbGl0eURhdGEpJiZlLmxhYmVsJiYoci5hcmlhTGFiZWw9ZS5sYWJlbCk7aWYoZT1OLmJ5bGluZSlyLmF1dGhvcj1nLkRwKGUpOwppZihlPU4ucHVibGlzaGVkVGltZVRleHQpci5wdWJsaXNoZWRUaW1lVGV4dD1nLkRwKGUpO2lmKGU9Ti5zaG9ydFZpZXdDb3VudFRleHQpci5zaG9ydFZpZXdDb3VudD1nLkRwKGUpO2lmKGU9Ti50aHVtYm5haWxPdmVybGF5cylmb3IodmFyIEggb2YgZSlpZihlPUgudGh1bWJuYWlsT3ZlcmxheVRpbWVTdGF0dXNSZW5kZXJlcilpZihlLnN0eWxlPT09IkxJVkUiKXtyLmlzTGl2ZVBsYXliYWNrPSEwO2JyZWFrfWVsc2UgaWYoZS5zdHlsZT09PSJVUENPTUlORyIpe3IuaXNVcGNvbWluZz0hMDticmVha31lbHNlIGlmKGUuc3R5bGU9PT0iREVGQVVMVCImJmUudGV4dCl7ci5sZW5ndGhUZXh0PWcuRHAoZS50ZXh0KTsoSD1lLnRleHQuYWNjZXNzaWJpbGl0eSkmJihIPUguYWNjZXNzaWJpbGl0eURhdGEpJiZILmxhYmVsJiYoci5pZz1ILmxhYmVsfHwiIik7YnJlYWt9ci50Tz13YyhOLmJhY2tncm91bmQpO2lmKEg9Ti5uZXh0QnV0dG9uKWlmKEg9SC5idXR0b25SZW5kZXJlcilpZihIPUgubmF2aWdhdGlvbkVuZHBvaW50KWlmKEg9CmcudyhILGcuSVEpKXIuczA9SDtOLnRvcEJhZGdlcyYmKEg9Ti50b3BCYWRnZXNbMF0pJiYoSD1nLncoSCxoazIpKSYmSC5zdHlsZT09PSJCQURHRV9TVFlMRV9UWVBFX1BSRU1JVU0iJiYoci5OPSEwKTtpZihIPU4uYWx0ZXJuYXRpdmVUaXRsZSlyLko5PWcuRHAoSCk7SD1yO0Q9e2F1dG9uYXY6IjEiLHBsYXluZXh0OlN0cmluZyhEKX07SC5wbGF5bGlzdElkJiYoRC5hdXRvcGxheT0iMSIpO2lmKGIpe2lmKE49Yi5hdXRvcGxheT8uYXV0b3BsYXk/LnNldHM/LlswXT8uYXV0b3BsYXlWaWRlbylpZigoYj1OLmNsaWNrVHJhY2tpbmdQYXJhbXMpJiYoRC5pdGN0PWIpLE49Zy53KE4sZy5JUSkpSC50RT1OfWVsc2UgTiYmKE49Ti5uZXh0QnV0dG9uPy5idXR0b25SZW5kZXJlcj8ubmF2aWdhdGlvbkVuZHBvaW50Py5jbGlja1RyYWNraW5nUGFyYW1zKSYmKEQuaXRjdD1OKTtELml0Y3R8fChELmZlYXR1cmU9InJlbGF0ZWQtYXV0byIpO0gueXo9RDtuLnN1Z2dlc3Rpb25zfHwobi5zdWdnZXN0aW9ucz0KW10pO24uVTU9cn12LmNvdW50RG93blNlY3MhPW51bGwmJihuLk9OPXYuY291bnREb3duU2VjcyoxRTMpO3YuY291bnREb3duU2Vjc0ZvckZ1bGxzY3JlZW4hPW51bGwmJihuLnMzPXYuY291bnREb3duU2Vjc0ZvckZ1bGxzY3JlZW4+PTA/di5jb3VudERvd25TZWNzRm9yRnVsbHNjcmVlbioxRTM6LTEpfWlmKHY9a0wobikpdj12Py5bMF0/LmVuZFNjcmVlblZpZGVvUmVuZGVyZXI/Lm5hdmlnYXRpb25FbmRwb2ludD8uY2xpY2tUcmFja2luZ1BhcmFtcyxIPW4uVTV8fG4uc3VnZ2VzdGlvbnM/LlswXXx8bnVsbCx2JiZIJiYoSC5zZXNzaW9uRGF0YT17aXRjdDp2fSk7bi53YXRjaE5leHRSZXNwb25zZS5jdXJyZW50VmlkZW9UaHVtYm5haWwmJihuLnRPPXdjKG4ud2F0Y2hOZXh0UmVzcG9uc2UuY3VycmVudFZpZGVvVGh1bWJuYWlsKSk7KHY9bi53YXRjaE5leHRSZXNwb25zZT8uY29udGVudHM/LnR3b0NvbHVtbldhdGNoTmV4dFJlc3VsdHM/LnJlc3VsdHM/LnJlc3VsdHM/LmNvbnRlbnRzKSYmCnZbMF0mJihIPXZbMF0udmlkZW9QcmltYXJ5SW5mb1JlbmRlcmVyKSYmSCYmSC5zdWJ0aXRsZSYmKG4uWDQ9Zy5EcChILnN1YnRpdGxlKSk7diYmdlsxXSYmKHY9dlsxXS52aWRlb1NlY29uZGFyeUluZm9SZW5kZXJlcj8ub3duZXI/LnZpZGVvT3duZXJSZW5kZXJlcj8udGh1bWJuYWlsPy50aHVtYm5haWxzKSYmdi5sZW5ndGgmJihuLnByb2ZpbGVQaWN0dXJlPXZbdi5sZW5ndGgtMV0udXJsKTtXPWtSKFcpO2lmKHY9bi5nZXRXYXRjaE5leHRSZXNwb25zZSgpPy5vblJlc3BvbnNlUmVjZWl2ZWRFbmRwb2ludHMpZm9yKHZhciBBIG9mIHYpZy53KEEsVVUpJiYobi5ScT1nLncoQSxVVSkpLHY9Zy53KEEseHRNKSx2Py5lbnRpdHlLZXlzJiYobi5MTj12LmVudGl0eUtleXN8fFtdLHYudmlzaWJsZU9uTG9hZEtleXMmJihuLnZpc2libGVPbkxvYWRLZXlzPXYudmlzaWJsZU9uTG9hZEtleXMpKTtuLlMoIndlYl9rZXlfbW9tZW50c19tYXJrZXJzIikmJihBPXl6LmdldFN0YXRlKCkuZW50aXRpZXMsCnY9bmYoInZpc2liaWxpdHlfb3ZlcnJpZGUiLCJtYXJrZXJzVmlzaWJpbGl0eU92ZXJyaWRlRW50aXR5IiksQT1BLm1hcmtlcnNWaXNpYmlsaXR5T3ZlcnJpZGVFbnRpdHk/QS5tYXJrZXJzVmlzaWJpbGl0eU92ZXJyaWRlRW50aXR5W3ZdfHxudWxsOm51bGwsbi5IeD1BPy52aWRlb0lkPT09KG4udmlkZW9JZHx8VykmJkE/LnZpc2liaWxpdHlPdmVycmlkZU1hcmtlcnNLZXk/QS52aXNpYmlsaXR5T3ZlcnJpZGVNYXJrZXJzS2V5Om4udmlzaWJsZU9uTG9hZEtleXMsbi52aXNpYmxlT25Mb2FkS2V5cz1bLi4ubi5IeF0pfX07CmlqPWZ1bmN0aW9uKG4sVyl7aWYoVz1XLnJhd19yZWVsX2l0ZW1fd2F0Y2hfcmVzcG9uc2Upbi5yZWVsSXRlbVdhdGNoUmVzcG9uc2U9V307CnVqPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vy5yYXdfcmVzb2x2ZV91cmxfcmVzcG9uc2U7RHx8KFc9Vy5yZXNvbHZlX3VybF9yZXNwb25zZSkmJihEPUpTT04ucGFyc2UoVykpO0QmJihuLnBvPUQpfTsKZDY9ZnVuY3Rpb24obixXKXtuLmZmbGFncz1iTyhuLmZmbGFncyxXLmZmbGFncyk7dmFyIEQ9Vy5pdl9pbnZpZGVvX3VybDtEJiYobi5lYT1GTihEKSk7bi5SbT1ueShuLlJtLFcuaXZfYWRzX29ubHkpO2lmKEQ9Vy5jdGFfY29udmVyc2lvbl91cmxzKW4ubE09RDtuLmlzUGhhcm1hPW55KG4uaXNQaGFybWEsVy5pc19waGFybWEpO24uYXV0aG9yPWJPKG4uYXV0aG9yLFcuYXV0aG9yKTtuLndhPVZuKFcudHRzdXJsKXx8bi53YTtuLldjPW55KG4uV2MsVy5jY19hc3IpO2lmKEQ9Vy5wcm9maWxlX3BpY3R1cmUpbi5wcm9maWxlUGljdHVyZT1iTyhuLnByb2ZpbGVQaWN0dXJlLEQpO24udmlkZW9Db3VudFRleHQ9Yk8obi52aWRlb0NvdW50VGV4dCxXLnZpZGVvX2NvdW50X3RleHQpO24uYXV0b25hdlN0YXRlPVdCKG4uYXV0b25hdlN0YXRlLFcuYXV0b25hdl9zdGF0ZSxMRzEpO24uY2xpZW50UGxheWJhY2tOb25jZT1iTyhuLmNsaWVudFBsYXliYWNrTm9uY2UsVy5jcG4pO24uc3Vic2NyaWJlZD0Kbnkobi5zdWJzY3JpYmVkLFcuc3Vic2NyaWJlZCk7bi5yYXdWaWV3Q291bnQ9REkobi5yYXdWaWV3Q291bnQsVy52aWV3X2NvdW50KTtuLnNob3J0Vmlld0NvdW50PWJPKG4uc2hvcnRWaWV3Q291bnQsVy5zaG9ydF92aWV3X2NvdW50X3RleHQpO24ucHVibGlzaGVkVGltZVRleHQ9Yk8obi5wdWJsaXNoZWRUaW1lVGV4dHx8IiIsVy5wdWJsaXNoZWRUaW1lVGV4dCk7bi5sZW5ndGhUZXh0PWJPKG4ubGVuZ3RoVGV4dHx8IiIsVy5sZW5ndGhUZXh0KTtuLmlnPWJPKG4uaWd8fCIiLFcuaWcpO24uSjk9Yk8obi5KOXx8IiIsVy5KOSk7bi50aXRsZT1iTyhuLnRpdGxlLFcudGl0bGUpO24uc3VidGl0bGU9Yk8obi5zdWJ0aXRsZSxXLnN1YnRpdGxlKTtuLmV4cGFuZGVkVGl0bGU9Yk8obi5leHBhbmRlZFRpdGxlLFcuZXhwYW5kZWRfdGl0bGUpO24uZXhwYW5kZWRTdWJ0aXRsZT1iTyhuLmV4cGFuZGVkU3VidGl0bGUsVy5leHBhbmRlZF9zdWJ0aXRsZSk7bi55cGNQcmV2aWV3PWJPKG4ueXBjUHJldmlldywKVy55cGNfcHJldmlldyk7bi5EVD1iTyhuLkRULFcueXBjX29yaWdpbik7bi5MQj1ueShuLkxCLFcueXBjX2lzX3ByZW1pZXJlX3RyYWlsZXIpO24uSWs9Yk8obi5JayxXLnlwY19jbGlja3dyYXBfbWVzc2FnZSk7bi5wYXlnYXRlZD1ueShuLnBheWdhdGVkLFcucGF5Z2F0ZWQpO24uS289bnkobi5LbyxXLnJlcXVpcmVzX3B1cmNoYXNlKTtuLnNob3dTaGFyZUJ1dHRvbj0hbnkoIW4uc2hvd1NoYXJlQnV0dG9uLFcuc3MpO24uRTU9bnkobi5FNSxXLnNob3d3YXRjaGxhdGVyKTtpZihEPVcuZWwpbi5ldmVudExhYmVsPUQ7aWYoRD1XLmtleXdvcmRzKW4ua2V5d29yZHM9V2ooRC5zcGxpdCgiLCIpKTtpZihEPVcucnZzKW4uc3VnZ2VzdGlvbnM9dXcoRCkubWFwKGI9PmIucGxheWxpc3R8fGIubGlzdHx8Yi5hcGk/bmV3IFp6KG4ueVEsYik6bmV3IE9VKG4ueVEsYikpOwpuLmNvbnRlbnRDaGVja09rPW55KG4uY29udGVudENoZWNrT2ssVy5jY28pO24ucmFjeUNoZWNrT2s9bnkobi5yYWN5Q2hlY2tPayxXLnJjbyk7bi5pc0xpdmluZ1Jvb21EZWVwbGluaz1ueShuLmlzTGl2aW5nUm9vbURlZXBsaW5rLFcuaXNfbGl2aW5nX3Jvb21fZGVlcGxpbmspO24ub2F1dGhUb2tlbj1iTyhuLm9hdXRoVG9rZW4sVy5vYXV0aF90b2tlbik7bi5ISj1iTyhuLkhKLFcua3B0KTtuLnZpc2l0b3JEYXRhPWJPKG4udmlzaXRvckRhdGEsVy52aXNpdG9yX2RhdGEpO2lmKEQ9Vy5zZXNzaW9uX2RhdGEpbi5zZXNzaW9uRGF0YT15RihELCImIik7bi5XSz1iTyhuLldLLFcudHJhY2tpbmdfbGlzdCk7bi5EdD1ueShuLkR0LFcucGF1c2VfYXRfc3RhcnQpO29RKG4sVyl9Owp6Zj1mdW5jdGlvbihuLFcsRCxiKXtXJiZXLmNwbiYmZy5HcShuZXcgZy5ReCgiQ1BOIHByb3ZpZGVkIGluIFZpZGVvRGF0YSB1cGRhdGUiLHtIWjpXLmNwbixLWTpuLmNsaWVudFBsYXliYWNrTm9uY2UsdEY6RH0pKTtiJiYobi5lcnJvckNvZGU9bnVsbCxuLmVycm9yRGV0YWlsPSIiLG4uZXJyb3JSZWFzb249bnVsbCxuLndpPW51bGwpO0Q/KGtSKFcpLG4uc2V0RGF0YShXKSxIaihuKSYmZkwobikpOihXPVd8fHt9LG1mKG4sVyksRVUobixXKSxpaihuLFcpLHVqKG4sVyksZDYobixXKSxuLldKKCJkYXRhdXBkYXRlZCIpKX07Cm9RPWZ1bmN0aW9uKG4sVyl7Vy5pbmxpbmVNZXRyaWNFbmFibGVkJiYobi5pbmxpbmVNZXRyaWNFbmFibGVkPSEwKTtXLnBsYXliYWNrX3Byb2dyZXNzXzBzX3VybCYmKG4uVEk9bmV3IGVrdChXKSk7aWYoVz1XLnZpZGVvX21hc3RoZWFkX2FkX3F1YXJ0aWxlX3VybHMpbi5OZj1XLnF1YXJ0aWxlXzBfdXJsLG4uYmU9Vy5xdWFydGlsZV8yNV91cmwsbi56ND1XLnF1YXJ0aWxlXzUwX3VybCxuLm1EPVcucXVhcnRpbGVfNzVfdXJsLG4uV0g9Vy5xdWFydGlsZV8xMDBfdXJsLG4uRnI9Vy5xdWFydGlsZV8wX3VybHMsbi53Tj1XLnF1YXJ0aWxlXzI1X3VybHMsbi5DdD1XLnF1YXJ0aWxlXzUwX3VybHMsbi5vSD1XLnF1YXJ0aWxlXzc1X3VybHMsbi5BdD1XLnF1YXJ0aWxlXzEwMF91cmxzfTsKZy5LTD1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRCBvZiBXKUQuY3VlUmFuZ2VTZXRJZGVudGlmaWVyJiZuLmJOLnNldChELmN1ZVJhbmdlU2V0SWRlbnRpZmllcixELnBsYXllckN1ZVJhbmdlcz8/W10pfTsKZ3FaPWZ1bmN0aW9uKG4pe2lmKCFuKXJldHVybiBudWxsO2ZvcihsZXQgVyBvZiBuKWlmKG49Vy5hZFBsYWNlbWVudFJlbmRlcmVyPy5yZW5kZXJlcj8udmlkZW9BZFRyYWNraW5nUmVuZGVyZXIpcmV0dXJuIG47cmV0dXJuIG51bGx9Owpsaj1mdW5jdGlvbihuKXt2YXIgVz1uLnBsYXllclJlc3BvbnNlPy5wbGF5ZXJDb25maWc/LmNvbXBvc2l0ZVZpZGVvQ29uZmlnPy5zb3VyY2VDb25maWdzO249bi5wbGF5ZXJSZXNwb25zZT8ucGxheWVyQ29uZmlnPy5jb21wb3NpdGVWaWRlb0NvbmZpZz8uZGVmYXVsdEFjdGl2ZVNvdXJjZVZpZGVvSWQ7aWYoIVd8fCFXLmxlbmd0aClyZXR1cm4iIjtufHwobj1XWzBdLnZpZGVvSWR8fCIiKTtmb3IobGV0IEQgb2YgVylpZihELnZpZGVvSWQ9PT1uJiZELmF1ZGlvVHJhY2tzKWZvcihsZXQgYiBvZiBELmF1ZGlvVHJhY2tzKWlmKGIuaXNEZWZhdWx0Rm9yU291cmNlKXJldHVybiBiLmlkfHwiIjtyZXR1cm4iIn07ClhZaD1mdW5jdGlvbihuLFcsRCl7c3dpdGNoKFcpe2Nhc2UgIkVNQkVEREVEX1BMQVlFUl9MSVRFX01PREVfRklYRURfUExBWUJBQ0tfTElNSVQiOkQ+MzA/bi5saW1pdGVkUGxheWJhY2tEdXJhdGlvbkluU2Vjb25kcz0zMDpEPDMwJiZEPjEwJiYobi5saW1pdGVkUGxheWJhY2tEdXJhdGlvbkluU2Vjb25kcz0xMCk7YnJlYWs7Y2FzZSAiRU1CRURERURfUExBWUVSX0xJVEVfTU9ERV9EWU5BTUlDX1BMQVlCQUNLX0xJTUlUIjpuLmxpbWl0ZWRQbGF5YmFja0R1cmF0aW9uSW5TZWNvbmRzPUQqLjJ9fTsKcWpoPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFchPW51bGw/bnkobi5LLFcpOm4uSz9uLks6bi55US5wcmVmZXJHYXBsZXNzJiZuLnlRLnN1cHBvcnRzR2FwbGVzc1Nob3J0cygpfTsKR05oPWZ1bmN0aW9uKG4pe3JldHVybiEhbiYmaXNGaW5pdGUobikmJm4+MUU5fTsKQ0w9ZnVuY3Rpb24obil7cmV0dXJuIHpRKCkmJlRmKG4pPyExOmokKG4pJiYoZy5HbChuLnlRKT8hbi5pc0xpdmVQbGF5YmFjazpuLmhsc3ZwKXx8IWZOKCl8fG4uVVQ/ITA6ITF9OwpCaj1mdW5jdGlvbihuKXtuPWcub0Uobik7cmV0dXJuIE51bWJlcihuLmV4cGlyZSl8fDB9OwpGZT1mdW5jdGlvbihuKXt2YXIgVz1uLkcoKTtyZXR1cm4gbi55US5WPT09ImhtInx8bi55US5WPT09ImdkInx8Vy5leHBlcmltZW50cy5adCgpLk4uUVEodFMyKSYmbi55US5YJiZuLnlRLlYhPT0iZ2wiPyEwOiExfTsKSng9ZnVuY3Rpb24obixXLEQpe3ZhciBiPUQuY2hhbm5lbFRodW1ibmFpbDtiJiYoYj1iLnRodW1ibmFpbHMpJiYoYj1iWzBdKSYmKFcucHJvZmlsZV9waWN0dXJlPWIudXJsKTtpZihiPWcudyhnLncoRD8uY2hhbm5lbFRodW1ibmFpbEVuZHBvaW50LCR0TSk/LnVybEVuZHBvaW50LGcuUGopKVcuY2hhbm5lbF9wYXRoPWIudXJsO2lmKGI9RC5jb2xsYXBzZWRSZW5kZXJlcilpZihiPWcudyhiLHIxcikpe2xldCB2PWIudGl0bGU7diYmKFcudGl0bGU9Zy5EcCh2KSk7aWYoYj1iLnN1YnRpdGxlKVcuc3VidGl0bGU9Zy5EcChiKX1pZihEPUQuZXhwYW5kZWRSZW5kZXJlcilpZihEPWcudyhELHNzQykpe2lmKGI9RC50aXRsZSlXLmV4cGFuZGVkX3RpdGxlPWcuRHAoYik7aWYoYj1ELnN1YnRpdGxlKVcuZXhwYW5kZWRfc3VidGl0bGU9Zy5EcChiKTtpZihEPUQuc3Vic2NyaWJlQnV0dG9uKW4uc3Vic2NyaWJlQnV0dG9uUmVuZGVyZXI9Zy53KEQsTmgxKSxuLnN1YnNjcmliZUJ1dHRvblJlbmRlcmVyJiYKKFcudWNpZD1uLnN1YnNjcmliZUJ1dHRvblJlbmRlcmVyLmNoYW5uZWxJZCxXLnN1YnNjcmliZWQ9bi5zdWJzY3JpYmVCdXR0b25SZW5kZXJlci5zdWJzY3JpYmVkLG4uc3Vic2NyaWJlQnV0dG9uUmVuZGVyZXIubm90aWZpY2F0aW9uUHJlZmVyZW5jZVRvZ2dsZUJ1dHRvbiYmbi5zdWJzY3JpYmVCdXR0b25SZW5kZXJlci5ub3RpZmljYXRpb25QcmVmZXJlbmNlVG9nZ2xlQnV0dG9uLnRvZ2dsZUJ1dHRvblJlbmRlcmVyJiYoVz1uLnN1YnNjcmliZUJ1dHRvblJlbmRlcmVyLm5vdGlmaWNhdGlvblByZWZlcmVuY2VUb2dnbGVCdXR0b24udG9nZ2xlQnV0dG9uUmVuZGVyZXIsVy5pc1RvZ2dsZWQ/KG4ubGU9Vy50b2dnbGVkU2VydmljZUVuZHBvaW50fHxudWxsLG4uWTA9Vy5kZWZhdWx0U2VydmljZUVuZHBvaW50fHxudWxsKToobi5sZT1XLmRlZmF1bHRTZXJ2aWNlRW5kcG9pbnR8fG51bGwsbi5ZMD1XLnRvZ2dsZWRTZXJ2aWNlRW5kcG9pbnR8fG51bGwpKSl9fTsKdzY9ZnVuY3Rpb24obil7cmV0dXJuISFuLkR4fHwhIW4uTmZ8fCEhbi5Gcnx8ISFuLlRJfHxuLmZafTsKUDA9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1XXm47aWYoKG4mMTA3KT09bil7dmFyIGg9YltJWzVdXTtEW0lba144MTgzXV0oZnVuY3Rpb24ocixOLEgpe3RoaXNbSVtrXjgxNTddXShIW05dPWJbKGJbSVtrXjgxNTNdXShyKS1iW0lba144MTUzXV0odGhpc1tOXSkrTitoLS0pJWJbSVs1XV1dKX0sdltJW2teODE3NV1dKElba144MTU4XSkpfWlmKChuXjcxKT49NiYmKG4tMiYxNik8MylhOnt2YXIgeD1nLncoRCxwWVopfHxEW0lba143NjZdXSxMPXt4aTohMSwKRWw6SVtrXjY3OF0seTc6SVtrXjY3OF0sczpJW2teNjc4XX07aWYoIXgpe3ZhciBlPUw7YnJlYWsgYX14PWcuaXcoeCk7TFtJW2teNzQzXV09ITA7TFtJW2teNjQ0XV09eFtJW2teNjg2XV07TFtJW2teNjY1XV09eFtJW2teNjc5XV07TFtJW2teNjQ4XV09eFtJW2teNjQ4XV07ZT1MfWlmKChuJjEyNik9PW4pYTp7TD1EW0lba143MjcxXV0oSVtrXjcyNTRdKTt4PVsvWy8sLTQsL11bfSxdXFsnLyxJW2teNzE4NF0sLShrXjE4MTg5Njc3MzgpLC0oa14zMzc1NjY4NzMpLGteOTg5NTU4NzU4LG51bGwsVVloLC0oa144MjEyMzQxMTApLGteODc1MzU2NTIyLC0oa145NDM2MTYyODUpLC0oa144MzYxOTg2MDIpLGteMTU5ODMxMjY5MixaODEsa143MDczMDE3OTAsa14xMTcyOTI1ODk4LG51bGwsa140MTk5NDUxMywtKGteMjc3NDM3NjUyKSxrXjE0MzEzMjI2NzcsRTJVLC0oa14xNDYyMzMwNzMxKSx4dlUsbnVsbCxrXjE2MDQ0MTY1LGteNDg4OTU0MTc0LGteODIyNTEwODUxLFlqWixMLEhXdCwKZmFpLG8yaiwtKGteMjAyOTQ4MDMyNyksa14xMjgxODQ0NjYsa142NjMwMjAxNDQsU0ExLC0oa14xMjYwMTUwODE1KSwtKGteMTM4NTgyODA1NiksLShrXjE2NjI1MTc4MzcpLGteMTQ3ODUyMTA0NCwkWWosa14xODcwOTA2Mjg1LGteODIyNTEwODUxLFN1eCwtKGteMTExOTIxMzExNCksLShrXjg3NDEwNjcxMCksa14yMDc2NDU3OTE4LGteMTc0Njc4MTY5NCxJW2teNzI0MF0sb1VqLGteMTM4NDIyNjkxNSxNQ2IsLShrXjE2MjA0NjE3NTYpLGteMTI3MjM0ODc2MCxJW2teNzI5NF0sLShrXjkxMjQ2MDk4MSksa14xODg3MTM4NTY5LEoxWixJW2teNzE3MV0sTCwtKGteMTg5NjQ1NTA0KSwtKGteMTM1NTU3MzkzMSksLShrXjE0MTE5OTc0MjkpLGteMTk0Mzk0NjQxMyxMLElhMixTalUsa14xODcwOTA2Mjg1LElba143MjkwXSxBMTEsa14xMDM5NzI3ODI1LGteOTQxOTgzMTg4LC0oa14xODUwNDM2ODczKSxJW2teNzE2OF0sa14yMTYzOTkwMjEsbXR4LC0oa140NjQ5MjEzOSldO3hbNV09Cng7eFtrXjcyNDRdPXg7eFtrXjcyNTNdPXg7aWYodHlwZW9mIEtHdD09PUlba143Mjc4XSl7ZT1EO2JyZWFrIGF9dHJ5e3RyeXt4W2teNzI1NV09PT0tMyYmKCgoMCx4W2teNzI1NF0pKHhba143MTczXSx4W2teNzI0NF0pLCgoMCx4W2teNzI4MV0pKHhba143MjU2XSwoMCx4W2teNzI5MV0pKCkseFtrXjcyOTBdKSx4W2teNzI4MV0pKHhba143Mjg5XSwoMCx4W2teNzI0N10pKCkseFtrXjcyOTBdKSx4W2teNzI2M10pKHhba143MjUzXSksMSl8fCgoMCx4W2teNzI1NF0pKHhba143MjUxXSx4W2teNzI1Nl0pLHhba143MjYxXSkoeFtrXjcyNzJdLHhba143MjkyXSk+PigoMCx4W2teNzI2M10pKHhba143MjU2XSl8KDAseFtrXjcxNzVdKSh4W2teNzI1Ml0seFs1XSkpfWNhdGNoKHIpeygwLHhba143MjU1XSkoeFtrXjcyODJdKX1maW5hbGx5e3ZhciBHPU0zKGteNzI1NyxrXjIxOTAseCl9dHJ5e0c9WEQoa143MjUzLGteNzgwMCx4KX1jYXRjaChyKXt4W2teNzE3OV0hPS0zJiYoKCgoMCx4W2teCjcyOTJdKSgoMCx4W2teNzI0N10pKHhba143MTc3XSx4W2teNzE3NF0pLHhba143MjgzXSx4W2teNzE2OF0pLCgwLHhba143MTY5XSkoeFs1XSx4W2teNzI0OV0pLHhba143MTgxXSkoeFtrXjcyNDBdLHhba143MjgyXSkseFszXSkoeFtrXjcyNzBdLHhba143MjY5XSkseFtrXjcyNzhdKSgoMCx4W2teNzI3N10pKHhba143MjYxXSx4W2teNzI1MF0pLHhba143MjQ4XSwoMCx4W2teNzI2NF0pKHhba143Mjg3XSx4W2teNzI0NF0pLHhba143MjgzXSx4W2teNzI3MV0pLHhba143MjYwXSE9PTAmJih4W2teNzE2OF08PS0zPygwLHhba143MjY0XSkoeFtrXjcyNjldLHhba143MTc3XSk6KDAseFtrXjcxNjldKSh4W2teNzI2OF0sKDAseFtrXjcyNThdKSgpLHhbNF0pKX1maW5hbGx5e3hba143MTczXSE9PTQmJih4W2teNzI0N108PS00PygwLHhba143Mjg5XSkoKCgwLHhba143Mjc5XSkoeFtrXjcxODNdLHhba143MjQ0XSkseFtrXjcyNjhdKSh4W2teNzE4M10seFtrXjcyNDVdKSx4W2teNzI0OV0sCigwLHhba143MjQzXSkoKDAseFtrXjcyNDhdKSh4W2teNzI1N10seFtrXjcyODJdKSx4W2teNzI2OF0seFtrXjcyNDJdLHhba143MTcyXSksKCgoKCgoMCx4W2teNzI5NF0pKHhba143MjgxXSx4W2teNzI0MF0pLHhba143Mjc1XSkoeFtrXjcxODddLHhba143MjYzXSkseFtrXjcyNTVdKSh4W2teNzE3N10sKDAseFtrXjcyNDJdKSgpLHhba143MjU2XSkseFtrXjcyNDldKSh4W2teNzI2Nl0seFtrXjcyOTNdKSx4W2teNzE3NV0pKCgwLHhba143MTgwXSkoeFtrXjcyNDhdLHhba143MjkzXSkseFtrXjcxNzNdLHhbMV0seFtrXjcyOTNdKSx4W2teNzI0OV0pKHhba143MTY4XSx4W2teNzI2M10pLCgwLHhba143Mjc1XSkoeFtrXjcyODhdLHhba143MjkzXSk8PSgwLHhba143MjU1XSkoeFtrXjcxNzddLCgwLHhba143Mjc5XSkoKSx4W2teNzI1MF0pLHhba143MTc2XSwoMCx4W2teNzE3Nl0pKHhba143MjUxXSx4W2teNzI2M10pLHhbMF0seFtrXjcxNzddKTooKCgwLHhba143MTgxXSkoKCgwLHhba14KNzE3Nl0pKHhba143MTY5XSx4W2teNzI2M10pLHhba143Mjc1XSkoeFtrXjcyOTFdLHhba143MjYzXSklKDAseFtrXjcxODJdKSh4W2teNzE3Ml0pLHhba143MjU1XSwoMCx4W2teNzE3Nl0pKHhbNF0seFtrXjcxNzJdKSx4W2teNzI5M10sKDAseFtrXjcyNzBdKSgpLHhba143MjU2XSksKDAseFtrXjcxODJdKSh4W2teNzI4MV0pLHhba143MjU1XSkoeFtrXjcyOTNdLCgwLHhba143MjU3XSkoKSx4W2teNzI2OF0pPT09KCgoMCx4W2teNzI1NV0pKHhba143MTc3XSwoMCx4W2teNzI1N10pKCkseFtrXjcyNTBdKSx4W2teNzI3NV0pKHhba143MjU5XSx4W2teNzE3MV0pLCgwLHhba143MjU1XSkoeFtrXjcxNzddLCgwLHhba143MjU3XSkoKSx4W2teNzI2OF0pLHhba143MjU1XSkoeFtrXjcyOTNdLCgwLHhba143Mjc5XSkoKSx4W2teNzI1Nl0pXigwLHhba143Mjc1XSkoeFtrXjcyNzZdLHhba143MTcyXSksKDAseFtrXjcxNzVdKSgoMCx4W2teNzE3M10pKHhba143Mjc0XSx4W2teNzE3Ml0pLAp4W2teNzI1NV0seFtrXjcyOTNdLCgwLHhba143MjcwXSkoKSx4W2teNzI1MF0pLHhba143MTc2XSkoeFtrXjcyOTRdLHhba143MjYzXSkpfX1jYXRjaChyKXtlPUlba143MjgwXStEO2JyZWFrIGF9ZT1MW0lba143MjQ2XV0oSVtrXjcyNTRdKX0obl45MSk8MTYmJm4rMT4+Mz49MiYmKGVYKGteNjY0MixrXjE0ODksRCksZT1nLkRsKERbSVsxXV0sT1d0KSk7bis5Pj40Pj0zJiYobj4+MiYyNCk8MTImJmJbSVsyMl1dKEQpO3JldHVybiBlfTsKTXM9ZnVuY3Rpb24obil7cmV0dXJuISEobi5XJiZuLlcudmlkZW9JbmZvcyYmbi5XLnZpZGVvSW5mb3MubGVuZ3RoKX07CkFKPWZ1bmN0aW9uKG4pe3JldHVybiBuLk5QKCkmJm4uRygpLnN1cHBvcnRzR2FwbGVzc1Nob3J0cygpfTsKUlE9ZnVuY3Rpb24obil7dmFyIFc9WyJNVVNJQ19WSURFT19UWVBFX0FUViIsIk1VU0lDX1ZJREVPX1RZUEVfUFJJVkFURUxZX09XTkVEX1RSQUNLIl0sRD1sbyhuLnlRKT09PSJUVkhUTUw1X1NJTVBMWSImJm4ueVEuTi5jdGhlbWU9PT0iTVVTSUMiOyFuLkpnJiYoZy5NVihuLnlRKXx8dHUobi55USl8fEQpJiYoVy5pbmNsdWRlcyhuLm11c2ljVmlkZW9UeXBlKXx8bi5pc0V4dGVybmFsbHlIb3N0ZWRQb2RjYXN0KSYmKG4uSmc9ITApO2lmKFc9Zy5kOCgpKVc9L1N0YXJib2FyZFwvKFswLTldKykvLmV4ZWMoZy5YUSgpKSxXPShXP3BhcnNlSW50KFdbMV0sMTApOk5hTik8MTA7RD1odShuLnlRKSYmbi55US5OLmN0aGVtZT09PSJNVVNJQyI7dmFyIGI7aWYoYj0hbi5KZylEfHwoRD1uLnlRLEQ9bG8oRCk9PT0iVFZIVE1MNSImJkQuTi5jdmVyLnN0YXJ0c1dpdGgoIjciKSksYj1EO2ImJiFXJiYoVz1uLm11c2ljVmlkZW9UeXBlPT09Ik1VU0lDX1ZJREVPX1RZUEVfUFJJVkFURUxZX09XTkVEX1RSQUNLIiwKRD0obi5TKCJjYXN0X3ByZWZlcl9hdWRpb19vbmx5X2Zvcl9hdHZfYW5kX3VwbG9hZHMiKXx8bi5TKCJrYWJ1a2lfcGFuZ2VhX3ByZWZlcl9hdWRpb19vbmx5X2Zvcl9hdHZfYW5kX3VwbG9hZHMiKSkmJm4ubXVzaWNWaWRlb1R5cGU9PT0iTVVTSUNfVklERU9fVFlQRV9BVFYiLFd8fER8fG4uaXNFeHRlcm5hbGx5SG9zdGVkUG9kY2FzdCkmJihuLkpnPSEwKTtyZXR1cm4gbi55US5kZXZpY2VJc0F1ZGlvT25seXx8bi5KZyYmbi55US5LfTsKUXo9ZnVuY3Rpb24obil7cmV0dXJuIG4ueVEuUygiaHRtbDVfZGlzYWJsZV9hdjEiKT8hMDohMX07Ck5JPWZ1bmN0aW9uKG4pe3JldHVybiBuLnBsYXllclJlc3BvbnNlPy5wbGF5ZXJDb25maWc/LmNvbXBvc2l0ZVZpZGVvQ29uZmlnPy5jb21wb3NpdGVCcm9hZGNhc3RUeXBlPT09IkNPTVBPU0lURV9CUk9BRENBU1RfVFlQRV9DT01QUkVTU0VEX0RPTUFJTl9DT01QT1NJVEUifTsKVno9ZnVuY3Rpb24obil7dmFyIFc9bi5LO24uUygiaHRtbDVfZ2FwbGVzc191bmxpbWl0X2Zvcm1hdF9zZWxlY3Rpb24iKSYmQUoobikmJihXPSExKTt2YXIgRD0hIW4uTiYmbi5OLnpXO1c9VThaKG4ueVEse21WOm4ubVYoKSx5WDpELE93OlJRKG4pLEhpOm4uSGksbFU6Vyxpc090ZjpuLmlzT3RmKCksb0w6bi5vTCgpLElSOm4uSVIseGQ6bi5nZXRVc2VyQXVkaW81MVByZWZlcmVuY2UoKSxkaXNhYmxlQXYxOlF6KG4pLGRCOk5JKG4pfSk7Zy5ZTihuKSYmKFcudlg9ITApO3pRKCkmJm4ucGxheWVyUmVzcG9uc2UmJm4ucGxheWVyUmVzcG9uc2UucGxheWVyQ29uZmlnJiZuLnBsYXllclJlc3BvbnNlLnBsYXllckNvbmZpZy53ZWJQbGF5ZXJDb25maWcmJm4ucGxheWVyUmVzcG9uc2UucGxheWVyQ29uZmlnLndlYlBsYXllckNvbmZpZy51c2VDb2JhbHRUdm9zRG9nZm9vZEZlYXR1cmVzJiYoVy5qPSEwLFcuVj0hMCk7bi5LJiZuLmlzQWQoKSYmKG4uWXImJihXLk89bi5Zciksbi5TViYmCihXLlg9bi5TVikpO24uTlAoKSYmKFcuUyQ9Zy5kTShuLnlRLmV4cGVyaW1lbnRzLCJodG1sNV9oYXJkX2NhcF9tYXhfdmVydGljYWxfcmVzb2x1dGlvbl9mb3Jfc2hvcnRzIikpO1cubnU9bi5pc0xpdmVQbGF5YmFjayYmbi5NaSgpJiZuLnlRLlMoImh0bWw1X2RybV9saXZlX2F1ZGlvXzUxIik7Vy5iZD1uLkVUO24uUygiaHRtbDVfZGlzYWJsZV92cDlfaGRyX2ZhaXJwbGF5IikmJnpRKCkmJihXLmJkPSEwKTtXLlJhPSFnLllOKG4pO1cuVEM9IWcuWU4obikmJm4ueVEuZXhwZXJpbWVudHMuWnQoKS5OLlFRKFByaSk7cmV0dXJuIG4uZSQ9V307ClV0TT1mdW5jdGlvbihuKXtnLmFMKCJkcm1fcGJfcyIsdm9pZCAwLG4uelIpO24uQ2l8fG4uTiYmbi5OLlgoKTt2YXIgVz17fTtuLk4mJihXPU5kKG4ueXcsVnoobiksbi55US5XLG4uTixEPT5uLldKKCJjdG1wIiwiZm10Zmx0IixEKSwhMCxuZXcgU2V0KSk7Clc9bmV3IFpXUyhXLG4ueVEsbi5KaixuLnVzZUNvYmFsdFdpZGV2aW5lP3pRKCk/VGYobik6ITE6ITEsKEQsYik9PntuLlUoRCxiKX0pOwpnLnUobixXKTtuLlEkPSExO24ubG9hZGluZz0hMDtkOGkoVyxEPT57Zy5hTCgiZHJtX3BiX2YiLHZvaWQgMCxuLnpSKTtmb3IodmFyIGIgb2YgRClzd2l0Y2goYi5mbGF2b3Ipe2Nhc2UgImZhaXJwbGF5IjpiLkNpPW4uQ2k7Yi5WOT1uLlY5O2Iuamk9bi5qaTticmVhaztjYXNlICJ3aWRldmluZSI6Yi5GYz1uLkZjfW4uVFE9RDtpZihuLlRRLmxlbmd0aD4wJiYobi5qPW4uVFFbMF0sbi55US5XWCgpKSl7RD17fTtmb3IobGV0IFt2LGtdb2YgT2JqZWN0LmVudHJpZXMobi5qLkopKXtiPWs7bGV0IGg9InVuayIseD12Lm1hdGNoKC8oLiopY29kZWNzPSIoLiopIi8pO3gmJihoPXhbMl0pO0RbaF09Yn1uLlUoImRybVByb2JlIixEKX1mTChuKX0pfTsKY2o9ZnVuY3Rpb24obil7dmFyIFc7aWYoVz0hIW4uY290bilXPW4udmlkZW9JZCxXPSEhVyYmZSQoVyk9PT0xO3JldHVybiBXJiYhbi5XaX07CnkxaD1mdW5jdGlvbihuKXt2YXIgVz1uLnBsYXllclJlc3BvbnNlPy5zdHJlYW1pbmdEYXRhPy5hZGFwdGl2ZUZvcm1hdHN8fFtdLEQ9bnVsbDtpZihXLmxlbmd0aD4wKUQ9YVEobixXKTtlbHNlIGlmKCFuLlMoImh0bWw1X2RlcHJlY2F0ZV9hZGFwdGl2ZV9mb3JtYXRzX3N0cmluZyIpKXtuLlUoInBhZm10c3RyIix7czpuLmFkYXB0aXZlRm9ybWF0cy5zdWJzdHJpbmcoMCw1MCl9KTtpZigoVz1uLmFkYXB0aXZlRm9ybWF0cykmJiFqJChuKSl7bi55US5XLkomJihSbz0hMCk7Vz1uQShXKTtEPW4uY29udGVudFByb3RlY3Rpb247dmFyIGI9bi5sZW5ndGhTZWNvbmRzLHY9bi5pc0xpdmVQbGF5YmFjayxrPW4uWGcsaD1uLnlRLHg9bi5jbGllbnRQbGF5YmFja05vbmNlLEw9czVVKFcpO2lmKHZ8fGspe2I9bmV3IGcuR3goIiIsaD8uZXhwZXJpbWVudHMsITApO2Iuelc9ITA7Yi5pc01hbmlmZXN0bGVzcz0hMDtiLlc9IWs7Yi5pc0xpdmU9IWs7Yi5YZz1rO2ZvcihHIG9mIFcpe3Y9SW8oRywKRCwwLGgseCk7TD1SeChHLnVybCxHLnNwLEcucyk7dmFyIGU9TC5nZXQoImlkIik7ZSYmZS5pbmNsdWRlcygiJTdFIikmJihiLk89ITApO2U9aD8uZXhwZXJpbWVudHM/LkVxKCJodG1sNV9tYXhfa25vd25fZW5kX3RpbWVfcmViYXNlIik7bGV0IHI9TnVtYmVyKEcudGFyZ2V0X2R1cmF0aW9uX3NlYyl8fDUsTj1OdW1iZXIoRy5tYXhfZHZyX2R1cmF0aW9uX3NlYyl8fDE0NDAwLEg9TnVtYmVyKEwuZ2V0KCJtaW5kc3EiKXx8TC5nZXQoIm1pbl9zcSIpfHwiMCIpLEE9TnVtYmVyKEwuZ2V0KCJtYXhkc3EiKXx8TC5nZXQoIm1heF9zcSIpfHwiMCIpfHxJbmZpbml0eTtiLkl0PWIuSXR8fEg7Yi5IUD1iLkhQfHxBO2xldCB5PSF2Lk4oKTtMJiYkZyhiLG5ldyBXVChMLHYse3JiOnIsT1Q6eSx1YjpOLEl0OkgsSFA6QSx1azozMDAsWGc6ayxFMzplfSkpfXZhciBHPWJ9ZWxzZSBHPUw9PT0iRk9STUFUX1NUUkVBTV9UWVBFX09URiI/TnBqKFcsRCxiLGgseCk6cEpiKFcsRCxiLGgseCk7Vy5sZW5ndGg+CjAmJihXPVdbMF0sRmUobikmJlcudXJsJiYobi5SYT1uLlJhfHxCaihXLnVybCkpKTtXPW4uaXNMaXZlUGxheWJhY2smJiFuLlhnJiYhbi5SSSYmIW4uaXNQcmVtaWVyZTtuLlMoImh0bWw1X2xpdmVfaGVhZF9wbGF5YWJsZSIpJiYoIWcuRFAobikmJlcmJm4uVSgibWlzc2luZ0xpdmVIZWFkUGxheWFibGUiLHt9KSxuLnlRLlY9PT0ieXQiJiYoRy5WUT0hMCkpO0Q9R31lbHNlIEQ9bnVsbDtuLlUoInBhZm10cyIse2lzTWFuaWZlc3RGaWxsZWQ6ISFEfSl9aWYoIUQpcmV0dXJuITE7YkYobixEKTtyZXR1cm4hMH07Ckk0PWZ1bmN0aW9uKG4pe3JldHVybiEoIW4uTnx8IW4uTi5pc01hbmlmZXN0bGVzcyl9OwpnLkRQPWZ1bmN0aW9uKG4pe3JldHVybiBuLlMoImh0bWw1X2xpdmVfaGVhZF9wbGF5YWJsZSIpJiZJNChuKSYmbi55US5WPT09Inl0Ij9uLmlzTGl2ZUhlYWRQbGF5YWJsZTpuLmlzTGl2ZVBsYXliYWNrfTsKYVE9ZnVuY3Rpb24obixXKXtpZihXLmxlbmd0aD09PTB8fGokKG4pKXJldHVybiBudWxsO24ueVEuVy5KJiYoUm89ITApO3ZhciBEPW4uY29udGVudFByb3RlY3Rpb247dmFyIGI9bi5sZW5ndGhTZWNvbmRzLHY9bi5pc0xpdmVQbGF5YmFjayxrPW4uWGcsaD1uLnlRLHg9bi5jbGllbnRQbGF5YmFja05vbmNlLEw9cXVqKFcpO2lmKHZ8fGspe2I9bmV3IGcuR3goIiIsaC5leHBlcmltZW50cywhMCk7Yi5XPSFrO2Iuelc9ITA7Yi5pc01hbmlmZXN0bGVzcz0hMDtiLmlzTGl2ZT0haztiLlhnPWs7Zm9yKGxldCBHIG9mIFcpe3Y9dFooRyxELDAsaCx4KTtsZXQge0VsOnIsczpOLHk3Okh9PVAwKDUsNjk0LEcpO0w9Ungocnx8Ry51cmx8fCIiLEgsTik7dmFyIGU9TC5nZXQoImlkIik7ZSYmZS5pbmNsdWRlcygiJTdFIikmJihiLk89ITApO2U9aC5leHBlcmltZW50cz8uRXEoImh0bWw1X21heF9rbm93bl9lbmRfdGltZV9yZWJhc2UiKTtsZXQgQT1OdW1iZXIoRy50YXJnZXREdXJhdGlvblNlY3x8CjUpLHk9TnVtYmVyKEcubWF4RHZyRHVyYXRpb25TZWN8fDE0NDAwKSxUPU51bWJlcihMLmdldCgibWluZHNxIil8fEwuZ2V0KCJtaW5fc3EiKXx8IjAiKSx6PU51bWJlcihMLmdldCgibWF4ZHNxIil8fEwuZ2V0KCJtYXhfc3EiKXx8IjAiKXx8SW5maW5pdHk7Yi5JdD1iLkl0fHxUO2IuSFA9Yi5IUHx8ejtsZXQgQz0hdi5OKCk7TCYmJGcoYixuZXcgV1QoTCx2LHtyYjpBLE9UOkMsdWI6eSxJdDpULEhQOnosdWs6MzAwLFhnOmssRTM6ZX0pKX1EPWJ9ZWxzZSBEPUw9PT0iRk9STUFUX1NUUkVBTV9UWVBFX09URiI/RzNDKFcsRCxiLGgseCk6dE9aKFcsRCxiLGgseCk7Vy5sZW5ndGg+MCYmKFc9V1swXSxGZShuKSYmVy51cmwmJihuLlJhPW4uUmF8fEJqKFcudXJsKSkpO1c9bi5pc0xpdmVQbGF5YmFjayYmIW4uWGcmJiFuLlJJJiYhbi5pc1ByZW1pZXJlO24uUygiaHRtbDVfbGl2ZV9oZWFkX3BsYXlhYmxlIikmJighZy5EUChuKSYmVyYmbi5VKCJtaXNzaW5nTGl2ZUhlYWRQbGF5YWJsZSIsCnt9KSxuLnlRLlY9PT0ieXQiJiYoRC5WUT0hMCkpO3JldHVybiBEfTsKbkE9ZnVuY3Rpb24obixXKXtuPXV3KG4pO3ZhciBEPXt9O2lmKFcpZm9yKHZhciBiIG9mIFcuc3BsaXQoIiwiKSkoVz1iLm1hdGNoKC9eKFswLTldKylcLyhbMC05XSspeChbMC05XSspKFwvfCQpLykpJiYoRFtXWzFdXT17d2lkdGg6V1syXSxoZWlnaHQ6V1szXX0pO2ZvcihsZXQgdiBvZiBuKWlmKGI9RFt2Lml0YWddKXYud2lkdGg9Yi53aWR0aCx2LmhlaWdodD1iLmhlaWdodDtyZXR1cm4gbn07CmJGPWZ1bmN0aW9uKG4sVyxEPSExKXtuLmVWPXZvaWQgMDtuLk49VztnLnUobixXKTtXLkl0PW4uSXQ7Vy5IUD1uLkhQO1cuSlU9bi5KVTtXLm9SPW4ub1I7Vy5JVD1uLklUO24ubEMmJihXLlk9bmV3IHZUKG4ubEMpKTsobi5tVigpfHxnLmtwKG4pKSYmbi5JSi5wdXNoKCJ3ZWJnbCIpO24uTi5pc0xpdmV8fChuLmlzTGl2ZVBsYXliYWNrPSExKTt2YXIgYj1XLnNvdXJjZVVybC5zcGxpdCgiLyIpO2lmKG4uVlE/Yi5pbmRleE9mKCJtYW5pZmVzdF9kdXJhdGlvbiIpIT09LTE6Yi5pbmRleE9mKCJtYW5pZmVzdF9kdXJhdGlvbiIpIT0tMSluLnptPU51bWJlcihiW2IuaW5kZXhPZigibWFuaWZlc3RfZHVyYXRpb24iKSsxXSk7aWYoVy5XfHxXLmlzTWFuaWZlc3RsZXNzKVcuc3Vic2NyaWJlKCJjbGllbnR0ZW1wIixuLlUsbiksRD9XLnN1YnNjcmliZSgicmVmcmVzaCIsbi5QSCxuKTpXLnN1YnNjcmliZSgiY3VlcG9pbnRzYWRkZWQiLG4uRVosbik7Vy5YKCk/bi5RJD0hMDpHTD12b2lkIDA7Cm4uUkkmJihXLmlzV2luZG93ZWRMaXZlPW4uUkksVy5pc0xpdmU9ITAsbi5pc0xpdmVQbGF5YmFjaz0hMCk7Vy5pc1ByZW1pZXJlPW4uaXNQcmVtaWVyZTtXLmlzTGl2ZUhlYWRQbGF5YWJsZT1uLmlzTGl2ZUhlYWRQbGF5YWJsZX07ClRmPWZ1bmN0aW9uKG4pe3JldHVybiBuLlMoImh0bWw1X3R2b3Nfc2tpcF9kYXNoX2F1ZGlvX2NoZWNrIil8fE1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZCgnYXVkaW8vd2VibTsgY29kZWNzPSJvcHVzIicpfTsKaiQ9ZnVuY3Rpb24obil7cmV0dXJuIHpRKCk/IVRmKG4pOkMkKCk/bi5DaSYmbi5jTz8hMDohKCFuLkNpfHwhbi5TKCJodG1sNV9lbmFibGVfc2FmYXJpX2ZhaXJwbGF5IikmJmZOKCkpOiExfTsKU3g9ZnVuY3Rpb24obil7cmV0dXJuIG4ubGF0ZW5jeUNsYXNzPT09IkxPVyJ8fG4ubGF0ZW5jeUNsYXNzPT09IlVMVFJBTE9XIn07CmhEPWZ1bmN0aW9uKG4pe3JldHVybiBuLlZRP1N4KG4pJiZuLk4hPW51bGwmJm9vKG4uTik+PTU6U3gobikmJm4uTiE9dm9pZCAwJiZvbyhuLk4pPj01fTsKRXFoPWZ1bmN0aW9uKG4pe24ubG9hZGluZz0hMDtuLkN1PSExO2lmKGNqKG4pKUIkeChuLnZpZGVvSWQpLnRoZW4oYj0+e2lmKG4ucGxheWVyUmVzcG9uc2U/LnN0cmVhbWluZ0RhdGEpe3ZhciB2PVtdO2ZvcihsZXQgayBvZiBiKWI9T2JqZWN0LmFzc2lnbih7fSxrKSxiLnNpZ25hdHVyZUNpcGhlcj0iIix2LnB1c2goYik7di5sZW5ndGg8MiYmbi5VKCJvZmZtbGYiLHtsZW46di5sZW5ndGh9KTt2PWFRKG4sdik7UlEobikmJnp4KHYsITEpO2JGKG4sdik7bi5VKCJkbHIiLHt9KX1lbHNlIG4uVSgib2Zmc2RtIix7Y290bjpuLkNtP24uQ20uY290bjoiMCIsY3BuOm4uY2xpZW50UGxheWJhY2tOb25jZX0pfSkudGhlbigoKT0+e2ZMKG4pfSk7CmVsc2V7Z1gobi5UZil8fGcuR3EobmV3IGcuUXgoIkRBU0ggTVBEIE9yaWdpbiBpbnZhbGlkOiAiLG4uVGYpKTt2YXIgVz1uLlRmLEQ9Zy5kTShuLnlRLmV4cGVyaW1lbnRzLCJkYXNoX21hbmlmZXN0X3ZlcnNpb24iKXx8NDtXPWcuRVQoVyx7bXBkX3ZlcnNpb246RH0pO1N4KG4pJiZuLmxhdGVuY3lDbGFzcyE9PSJOT1JNQUwifHwoVz1nLkVUKFcse3BhY2luZzowfSkpO2Z0WihXLG4ueVEuZXhwZXJpbWVudHMsbi5pc0xpdmVQbGF5YmFjaykudGhlbihiPT57bi5xTigpfHwoYkYobixiLCEwKSxnLmFMKCJtcmMiLHZvaWQgMCxuLnpSKSxmTChuKSl9LGI9PntuLnFOKCl8fChuLmxvYWRpbmc9ITEsbi5XSigiZGF0YWxvYWRlcnJvciIsbmV3IGcuQ2koIm1hbmlmZXN0Lm5ldC5yZXRyeWV4aGF1c3RlZCIse2JhY2tlbmQ6Im1hbmlmZXN0IiwKcmM6Yi5zdGF0dXN9LDEpKSl9KTsKZy5hTCgibXJzIix2b2lkIDAsbi56Uil9fTsKeHA9ZnVuY3Rpb24obil7aWYoIW4uaXNQcm94aW1hTGF0ZW5jeUVsaWdpYmxlKXJldHVybiAwO3ZhciBXPVlkKCk7cmV0dXJuIG4ueVEuZ2V0V2ViUGxheWVyQ29udGV4dENvbmZpZygpPy5lbmFibGVQcm94aW1hTG93TGF0ZW5jeT8yOlc9PT0xPzE6bi5TKCJodG1sNV9lbmFibGVfcHJveGltYSIpPzI6MH07Ckt6PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4uUyhXKT8hMDoobi5mZmxhZ3N8fCIiKS5pbmNsdWRlcyhXKyI9dHJ1ZSIpfTsKaVdTPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9V3x8Q0wobil8fG4uaXNFeHRlcm5hbGx5SG9zdGVkUG9kY2FzdDtpZighbi5OfHxEKXJldHVybiBuLlUoInNraXBEYXNoIix7ZG06ISFuLk4sYWlyOlcsZGQ6bi5VVCxtc3M6Zk4oKSwiM3BwIjpuLmlzRXh0ZXJuYWxseUhvc3RlZFBvZGNhc3R9KSxnLnAkKCk7UlEobikmJnp4KG4uTixuLmlzTGl2ZVBsYXliYWNrKTtyZXR1cm4gZy5IMCgpLnRoZW4oKCk9PlMyYihuLnl3LFZ6KG4pLG4ueVEuVyxuLk4sbi5qLGI9Pm4uV0ooImN0bXAiLCJmbXRmbHQiLGIpLG4ub00sTEEobikpLnRoZW4oYj0+e2U3KG4sYik7Cm4ueXcuSj1udWxsOy9eYXYvLnRlc3Qobi5jbGllbnRQbGF5YmFja05vbmNlKSYmbi5lJCYmbi5VKCJhdjEiLG4uZSQuTil9KSl9Owp1bXQ9ZnVuY3Rpb24obixXKXtpZihXJiZuLmhsc3ZwKXJldHVybiBnLnAkKCk7aWYobi5obHNGb3JtYXRzKXtpZihXPW5BKG4uaGxzRm9ybWF0cykpe2xldCBiPVtdO2Zvcih2YXIgRCBvZiBXKUQudXJsJiYoRC51cmw9Vm10KEQudXJsKSksbi5lJD8uVyYmYi5wdXNoKEQuaXRhZyk7bi5lJD8uVyYmYi5sZW5ndGg+MCYmbi5VKCJobHNmbXQiLHtpdGFnczpiLmpvaW4oIi4iKX0pfW4ueUU9Z1laKG4ueVEsVyk7bi55RSYmZ2wobixuLnlFKTtEPW4uY2xpZW50UGxheWJhY2tOb25jZTtyZXR1cm4gdG1NKG4ueVEsbi5pc0FkKCksVyxuLnBsYXllclJlc3BvbnNlPy5jYXB0aW9ucz8ucGxheWVyQ2FwdGlvbnNSZW5kZXJlcj8uYmFzZVVybD8/bnVsbCxuLkdmLEQsYj0+bi5XSigiY3RtcCIsImhsc2ZsdCIsYikpLnRoZW4oYj0+e3ZhciB2PTAsaz1bXTsKZm9yKGxldCBoIG9mIGIpay5wdXNoKGgua0woKT8uaXRhZyksaC5rTCgpPy5ZKCk/Lm51bUNoYW5uZWxzPnYmJih2PWgua0woKS5hdWRpby5udW1DaGFubmVscyk7dj4yJiZuLlUoImhsc2NobCIse21uOnZ9KTtuLmUkPy5XJiZuLlUoImhsc2ZtdGFmIix7aXRhZ3M6ay5qb2luKCIuIil9KTtpZihuLlMoImh0bWw1X2VuYWJsZV92cDlfZmFpcnBsYXkiKSYmbi5qPy5OKCkpe24uVSgiZHJtIix7c2JkbGZiazoxfSk7Zm9yKGxldCBoIG9mIG4uVFEpaWYoZzEoaCkpe24uaj1oO2JyZWFrfX1YMihuLGIpfSl9cmV0dXJuIGcucCQoKX07Cm9xMT1mdW5jdGlvbihuKXtpZihuLmlzRXh0ZXJuYWxseUhvc3RlZFBvZGNhc3QmJm4uY2Ype2xldCBXPW5BKG4uY2YpO2lmKCFXWzBdKXJldHVybiBnLnAkKCk7bi5xdz1XWzBdO3JldHVybiBzaXIobi55USxXWzBdKS50aGVuKEQ9PntYMihuLEQpfSl9cmV0dXJuIG4uUXImJm4ub2M/cnFaKG4ueVEsbi5pc0FkKCksbi5RcikudGhlbihXPT57WDIobixXKX0pOmcucCQoKX07CnprVT1mdW5jdGlvbihuKXtpZihuLmlzRXh0ZXJuYWxseUhvc3RlZFBvZGNhc3QpcmV0dXJuIGcucCQoKTt2YXIgVz1uQShuLmNmLG4uR2opO2lmKG4uaGxzdnApe2xldCBEPVFpMihuLmhsc3ZwLG4uY2xpZW50UGxheWJhY2tOb25jZSxuLkdmKTtXLnB1c2goRCl9cmV0dXJuIGpDaChuLnlRLG4uaXNBZCgpLFcsZHQxKG4pKS50aGVuKEQ9PntYMihuLEQpfSl9OwpMQT1mdW5jdGlvbihuKXt2YXIgVz1uLlMoImh0bWw1X2VuYWJsZV9zZXJ2ZXJfZm9ybWF0X2ZpbHRlciIpJiYhbi5NaSgpLEQ9bi5TKCJodG1sNV9lbmFibGVfc2VydmVyX2Zvcm1hdF9maWx0ZXJfZm9yX2RybSIpJiZuLk1pKCk7cmV0dXJuIGcuWU4obikmJihXfHxEKX07CmU3PWZ1bmN0aW9uKG4sVyl7bi5XPVc7Z2wobixuLlcuZ2V0QXZhaWxhYmxlQXVkaW9UcmFja3MoKSk7aWYobi5XKWZvcih2YXIgRCBvZiBuLlcudmlkZW9JbmZvcylXPUQuY29udGFpbmVyVHlwZSxXIT09MCYmKG4uYkJbV109RC5pZCk7RD1uLmdldEF2YWlsYWJsZUF1ZGlvVHJhY2tzKCk7RD1ELmNvbmNhdChuLnZYKTtmb3IoVz0wO1c8bi5Udy5sZW5ndGg7VysrKXtsZXQgdj1uLlR3W1ddO2ZvcihsZXQgaz0wO2s8RC5sZW5ndGg7aysrKXtsZXQgaD1EW2tdO3ZhciBiPWgua1ouaWQ9PT12LmF1ZGlvVHJhY2tJZDtpZihoLmtaLmlzRGVmYXVsdCYmVz09PW4uTyR8fGIpe2lmKHYuY2FwdGlvblRyYWNrSW5kaWNlcylmb3IoYj0wO2I8di5jYXB0aW9uVHJhY2tJbmRpY2VzLmxlbmd0aDtiKyspaC5jYXB0aW9uVHJhY2tzW2JdPW4uY2FwdGlvblRyYWNrc1t2LmNhcHRpb25UcmFja0luZGljZXNbYl1dO3YuZGVmYXVsdENhcHRpb25UcmFja0luZGV4IT09dm9pZCAwJiYoaC5XPW4uY2FwdGlvblRyYWNrc1t2LmRlZmF1bHRDYXB0aW9uVHJhY2tJbmRleF0pOwp2LmZvcmNlZENhcHRpb25UcmFja0luZGV4IT09dm9pZCAwJiYoaC5OPW4uY2FwdGlvblRyYWNrc1t2LmZvcmNlZENhcHRpb25UcmFja0luZGV4XSk7aC5KPXYudmlzaWJpbGl0eXx8IlVOS05PV04iO2guY2FwdGlvbnNJbml0aWFsU3RhdGU9di5jYXB0aW9uc0luaXRpYWxTdGF0ZXx8IkNBUFRJT05TX0lOSVRJQUxfU1RBVEVfVU5LTk9XTiJ9fX1pZihuLmomJm4uVyYmbi5XLnZpZGVvSW5mb3MmJiEobi5XLnZpZGVvSW5mb3MubGVuZ3RoPD0wKSYmKEQ9bi5XLnZpZGVvSW5mb3NbMF0uVygpLG4uai5mbGF2b3I9PT0iZmFpcnBsYXkiIT09RCkpZm9yKGxldCB2IG9mIG4uVFEpaWYoRD09PSh2LmZsYXZvcj09PSJmYWlycGxheSIpKXtuLmo9djticmVha319OwpnbD1mdW5jdGlvbihuLFcpe1cuc29ydCgoRCxiKT0+RC50b1N0cmluZygpLmxvY2FsZUNvbXBhcmUoYi50b1N0cmluZygpLG4ueVEuaG9zdExhbmd1YWdlKSl9OwpYMj1mdW5jdGlvbihuLFcpe24ubnU9VztlNyhuLG5ldyBwZyhnLmlfKG4ubnUsRD0+RC5rTCgpKSkpfTsKZHQxPWZ1bmN0aW9uKG4pe3ZhciBXPXtjcG46bi5jbGllbnRQbGF5YmFja05vbmNlLGM6bi55US5OLmMsY3ZlcjpuLnlRLk4uY3Zlcn07bi54eiYmKFcucHRrPW4ueHosVy5vaWQ9bi5YbyxXLnB0Y2huPW4uaDEsVy5wbHR5cGU9bi5xOCxuLnk5JiYoVy5tPW4ueTkpKTtyZXR1cm4gV307CmcucXU9ZnVuY3Rpb24obil7cmV0dXJuIGokKG4pJiZuLkNpP3tmYWlycGxheToiaHR0cHM6Ly95b3V0dWJlLmNvbS9hcGkvZHJtL2Zwcz9laz11bmluaXRpYWxpemVkIn06bi5KJiZuLkouY29udGVudFByb3RlY3Rpb258fG51bGx9OwpHZT1mdW5jdGlvbihuKXtyZXR1cm4gbi5wbGF5ZXJSZXNwb25zZSYmbi5wbGF5ZXJSZXNwb25zZS5wYWlkQ29udGVudE92ZXJsYXkmJm4ucGxheWVyUmVzcG9uc2UucGFpZENvbnRlbnRPdmVybGF5LnBhaWRDb250ZW50T3ZlcmxheVJlbmRlcmVyfHxnLncobi53YXRjaE5leHRSZXNwb25zZT8ucGxheWVyT3ZlcmxheXM/LnBsYXllck92ZXJsYXlSZW5kZXJlcj8ucGxheWVyRGlzY2xvc3VyZSxsYVMpfHxudWxsfTsKdEQ9ZnVuY3Rpb24obil7dmFyIFc9R2Uobik7cmV0dXJuIFcmJlcudGV4dD9nLkRwKFcudGV4dCk6bi5wYWlkQ29udGVudE92ZXJsYXlUZXh0fTsKJHA9ZnVuY3Rpb24obil7dmFyIFc9R2Uobik7cmV0dXJuIFcmJlcuZHVyYXRpb25Ncz9nLk5oKFcuZHVyYXRpb25Ncyk6bi5wYWlkQ29udGVudE92ZXJsYXlEdXJhdGlvbk1zfTsKcmw9ZnVuY3Rpb24obil7dmFyIFc9IiI7aWYobi51aClyZXR1cm4gbi51aDtuLmlzTGl2ZVBsYXliYWNrJiYoVz1uLmFsbG93TGl2ZUR2cj8iZHZyIjpuLmlzUHJlbWllcmU/ImxwIjpuLlJJPyJ3aW5kb3ciOiJsaXZlIik7bi5YZyYmKFc9InBvc3QiKTtyZXR1cm4gV307Cmcuc1M9ZnVuY3Rpb24obixXKXtyZXR1cm4gdHlwZW9mIG4ua2V5d29yZHNbV10hPT0ic3RyaW5nIj9udWxsOm4ua2V5d29yZHNbV119OwpnLllMPWZ1bmN0aW9uKG4pe3JldHVybiEhKG4uVGZ8fG4uY2Z8fG4uUXJ8fG4uaGxzdnB8fG4uSXAoKSl9OwpBeD1mdW5jdGlvbihuKXtyZXR1cm4obj1uLlJ0KSYmbi5zaG93RXJyb3I/bi5zaG93RXJyb3I6ITF9OwpOdT1mdW5jdGlvbihuKXtuLm11dGVkQXV0b3BsYXk9ITE7bi5lbmRTZWNvbmRzPU5hTjtuLmxpbWl0ZWRQbGF5YmFja0R1cmF0aW9uSW5TZWNvbmRzPU5hTjt6ZihuKX07CmcucEE9ZnVuY3Rpb24obil7cmV0dXJuIGcuRFAobikmJiFuLmFsbG93TGl2ZUR2cn07CllwPWZ1bmN0aW9uKG4pe3JldHVybiBnLkRQKG4pJiZuLmFsbG93TGl2ZUR2cn07CmcuSFQ9ZnVuY3Rpb24obil7cmV0dXJuISFuLk4mJks2KG4uTil9OwpnLmZBPWZ1bmN0aW9uKG4pe3JldHVybiEhbi5OJiZPayhuLk4pfTsKZy5rcD1mdW5jdGlvbihuKXtyZXR1cm4hIW4uTiYmSiRVKG4uTil9OwpnLkpEPWZ1bmN0aW9uKG4pe3JldHVybiEhbi5OJiZQRihuLk4pfTsKSVQ9ZnVuY3Rpb24obil7cmV0dXJuIG4uYWRGb3JtYXQmJihuLlZRP24uYWRGb3JtYXQhPT0iMV81IjpuLmFkRm9ybWF0IT0iMV81Iik/ImFkdW5pdCI6bi5ldmVudExhYmVsfHxuLnlRLll9OwpnLlM3PWZ1bmN0aW9uKG4pe3JldHVybiBJVChuKT09PSJzaG9ydHNwYWdlIn07CkFEPWZ1bmN0aW9uKG4pe3JldHVybiBuLkd1fHxJVChuKT09PSJkZXRhaWxwYWdlInx8SVQobik9PT0ic2hvcnRzcGFnZSJ8fG4ubXV0ZWRBdXRvcGxheX07CmlUPWZ1bmN0aW9uKG4pe3JldHVybiBJVChuKT09PSJhZHVuaXQiP24uVlQ6QUQobik/SVQobik9PT0iZGV0YWlscGFnZSJ8fElUKG4pPT09InNob3J0c3BhZ2UiP24uaXNBdXRvbmF2fHxuLlMkPjA6bi5mQj8hMTpuLnlRLlU1fHxuLnlRLk1kfHwhZy5vNChuLnlRKT8hMDohMToobi5mQj8wOm4uUFgpJiZnLm80KG4ueVEpPyEwOiExfTsKZy5tTz1mdW5jdGlvbihuKXtyZXR1cm4gbi56VygpJiZnLllOKG4pfTsKcHo9ZnVuY3Rpb24obil7cmV0dXJuISFuLnBsYXllclJlc3BvbnNlPy5wbGF5ZXJDb25maWc/Lm1lZGlhQ29tbW9uQ29uZmlnPy5zcGxpdFNjcmVlbkVsaWdpYmxlfTsKS0E9ZnVuY3Rpb24obil7cmV0dXJuIGlzTmFOKG4pPzA6TWF0aC5tYXgoKERhdGUubm93KCktbikvMUUzLTMwLDApfTsKT1M9ZnVuY3Rpb24obil7cmV0dXJuISghbi5XaXx8IW4ueVEuSykmJm4uSXAoKX07ClBUPWZ1bmN0aW9uKG4pe3JldHVybiBuLktkJiZuLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpfTsKVGhpPWZ1bmN0aW9uKG4pe3JldHVybiBuLkRFJiYhbi5sQ307CmNxeD1mdW5jdGlvbihuKXtzd2l0Y2gobi55US5WKXtjYXNlICJnZCI6cmV0dXJuIG4uUygiaHRtbDVfZW5hYmxlX3NhYnJfb25fZHJpdmUiKTtjYXNlICJncCI6cmV0dXJuIG4uUygiaHRtbDVfZW5hYmxlX3NhYnJfb25fcGxheV9zdG9yZSIpO2Nhc2UgImRkIjpyZXR1cm4hMDtjYXNlICJwdyI6cmV0dXJuIG4uUygiaHRtbDVfZW5hYmxlX3NhYnJfb3RmX2luX2NsaWVudCIpO2RlZmF1bHQ6cmV0dXJuITF9fTsKcEw9ZnVuY3Rpb24obil7dmFyIFc7aWYoIShXPU5zJiZuLnpXKCkmJm4uTWkoKSYmKG4uZHJtUHJvZHVjdD09PSIxIj8hMTohMCkmJm4uUygiaHRtbDVfc2Ficl9saXZlX2RybV9zdHJlYW1pbmdfeGhyIikpKXtXPW4uelcoKSYmIW4uTWkoKSYmTnM7dmFyIEQ9bi56VygpJiZuLmxhdGVuY3lDbGFzcyE9PSJVTFRSQUxPVyImJiFTeChuKSYmbi5TKCJodG1sNV9zYWJyX2xpdmVfbm9ybWFsX2xhdGVuY3lfc3RyZWFtaW5nX3hociIpLGI9U3gobikmJm4uUygiaHRtbDVfc2Ficl9saXZlX2xvd19sYXRlbmN5X3N0cmVhbWluZ194aHIiKTtsZXQgdj1uLmxhdGVuY3lDbGFzcz09PSJVTFRSQUxPVyImJm4uUygiaHRtbDVfc2Ficl9saXZlX3VsdHJhX2xvd19sYXRlbmN5X3N0cmVhbWluZ194aHIiKTtXPVcmJihEfHxifHx2KX1EPVc7Vz1uLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpJiZEJiZuLlMoImh0bWw1X2VuYWJsZV9zYWJyX3NzZGFpX3N0cmVhbWluZ194aHIiKTtEPSFuLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpJiYKRDtiPW4uelcoKSYmIU5zJiZuLlMoImh0bWw1X2VuYWJsZV9zYWJyX2xpdmVfbm9uX3N0cmVhbWluZ194aHIiKTtuPU5zJiYobi5ERigpfHxweihuKSYmbi5TKCJodG1sNV9lbmFibGVfc2Ficl9mb3JfbGlmYV9lbGlnaWJsZV9zdHJlYW1zIikpO3JldHVybiBXfHxEfHxifHxufTsKZy5tTT1mdW5jdGlvbihuKXtpZighbi5OfHwhbi5KfHwhbi5YKXJldHVybiExO3ZhciBXPW4uTi5OLEQ9ISFXW24uSi5pZF0mJmdaKDU2LDExOTYsV1tuLkouaWRdLlhiLk4pO1c9ISFXW24uWC5pZF0mJmdaKDIyLDExNTQsV1tuLlguaWRdLlhiLk4pO3JldHVybihuLkouaXRhZz09PSIwInx8RCkmJld9OwpaUD1mdW5jdGlvbihuKXtyZXR1cm4gbi5lQj9bIk9LIiwiTElWRV9TVFJFQU1fT0ZGTElORSJdLmluY2x1ZGVzKG4uZUIuc3RhdHVzKTohMH07ClVTPWZ1bmN0aW9uKG4pe3JldHVybiEoIW4uaXNMaXZlUGxheWJhY2t8fCFuLmhhc1Byb2dyZXNzQmFyQm91bmRhcmllcygpKX07CnlVPWZ1bmN0aW9uKG4pe3JldHVybiBuLnlRLmV4cGVyaW1lbnRzLlp0KCkuTi5RUShqc1opJiZuLk5QKCl8fG4uUygiZW5hYmxlX3BsYXllcl9yZXNwb25zZV9jYWNoZV9mb3JfbGl2ZSIpfTsKRVM9ZnVuY3Rpb24obil7cmV0dXJuISFuLmVtYmVkZGVkUGxheWVyQ29uZmlnPy5lbWJlZGRlZFBsYXllckZsYWdzPy5lbmFibGVNdXNpY1V4fTsKaUY9ZnVuY3Rpb24obil7cmV0dXJuIG4ueVEuSiYmbi5pc1ByaXZhdGV9OwpnLm9UPWZ1bmN0aW9uKG4pe3ZhciBXPW4uRygpLEQ9dUYoVyksYj1XLlFyO2cuQ04oVykmJihiJiYoRC50aGlyZFBhcnR5PXsuLi5ELnRoaXJkUGFydHksZW1iZWRVcmw6Yn0pLGcuRW4oRCxuKSk7KGI9bi50dyk/RC5jbGlja1RyYWNraW5nPXtjbGlja1RyYWNraW5nUGFyYW1zOmJ9OmcuQ04obi5HKCkpJiZnLkFyKCJFVkVOVF9JRCIpJiYoRC5jbGlja1RyYWNraW5nPXtjbGlja1RyYWNraW5nUGFyYW1zOmcuQXIoIkVWRU5UX0lEIil9KTtiPUQuY2xpZW50fHx7fTt2YXIgdj0iRU1CRUQiLGs9SVQobik7az09PSJsZWFuYmFjayI/dj0iV0FUQ0giOlcuUygiZ3ZpX2NoYW5uZWxfY2xpZW50X3NjcmVlbiIpJiZrPT09InByb2ZpbGVwYWdlIj92PSJDSEFOTkVMIjpuLklSP3Y9IkxJVkVfTU9OSVRPUiI6az09PSJkZXRhaWxwYWdlIj92PSJXQVRDSF9GVUxMX1NDUkVFTiI6az09PSJhZHVuaXQiP3Y9IkFEVU5JVCI6az09PSJzcG9uc29yc2hpcHNvZmZlciImJih2PSJVTktOT1dOIik7Yi5jbGllbnRTY3JlZW49CnY7aWYodj1uLmtpZHNBcHBJbmZvKWIua2lkc0FwcEluZm89SlNPTi5wYXJzZSh2KTsoaz1uLkFtKSYmIXYmJihiLmtpZHNBcHBJbmZvPXtjb250ZW50U2V0dGluZ3M6e2FnZVVwTW9kZTpDcmJba119fSk7aWYodj1uLnRHKWIudW5wbHVnZ2VkQXBwSW5mbz17ZW5hYmxlRmlsdGVyTW9kZTohMH07KGs9bi51bnBsdWdnZWRGaWx0ZXJNb2RlVHlwZSkmJiF2JiYoYi51bnBsdWdnZWRBcHBJbmZvPXtmaWx0ZXJNb2RlVHlwZTpCaGhba119KTtpZih2PW4uWFkpYi51bnBsdWdnZWRMb2NhdGlvbkluZm89djtELmNsaWVudD1iO2I9RC5yZXF1ZXN0fHx7fTtuLllaJiYoYi5pc1ByZWZldGNoPSEwKTtpZih2PW4ubWR4RW52aXJvbm1lbnQpYi5tZHhFbnZpcm9ubWVudD12O2lmKHY9bi5tZHhDb250cm9sTW9kZSliLm1keENvbnRyb2xNb2RlPUZHeFt2XTtELnJlcXVlc3Q9YjtiPUQudXNlcnx8e307aWYodj1uLkQpYi5jcmVkZW50aWFsVHJhbnNmZXJUb2tlbnM9W3t0b2tlbjp2LHNjb3BlOiJWSURFTyJ9XTsKaWYodj1uLkhKKWIuZGVsZWdhdGVQdXJjaGFzZXM9e29hdXRoVG9rZW46dn0sYi5raWRzUGFyZW50PXtvYXV0aFRva2VuOnZ9O3Y9Vy5nZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnKCk/LnVzZXJDb250ZW50UmF0aW5nOyF2JiZXLlMoImVuYWJsZV9icmF6aWxfYWdlX2dhdGluZ193ZWIiKSYmKHY9Zy5vOSgpLmdldCgiYnJfYWdlX3JhdGluZyIpKTt2JiYoYi5zZXJpYWxpemVkVXNlckNvbnRlbnRSYXRpbmc9dik7RC51c2VyPWI7aWYoVz1uLmNvbnRleHRQYXJhbXMpRC5hY3RpdmVQbGF5ZXJzPVt7cGxheWVyQ29udGV4dFBhcmFtczpXfV07aWYobj1uLmNsaWVudFNjcmVlbk5vbmNlKUQuY2xpZW50U2NyZWVuTm9uY2U9bjtyZXR1cm4gRH07CnVGPWZ1bmN0aW9uKG4pe3ZhciBXPWcudmIoKSxEPVcuY2xpZW50fHx7fTtpZihuLmZvcmNlZEV4cGVyaW1lbnRzKXt2YXIgYj1uLmZvcmNlZEV4cGVyaW1lbnRzLnNwbGl0KCIsIik7bGV0IHY9W107Zm9yKGxldCBrIG9mIGIpdi5wdXNoKE51bWJlcihrKSk7RC5leHBlcmltZW50SWRzPXZ9aWYoYj1uLmhvbWVHcm91cEluZm8pRC5ob21lR3JvdXBJbmZvPUpTT04ucGFyc2UoYik7aWYoYj1uLmdldFBsYXllclR5cGUoKSlELnBsYXllclR5cGU9YjtpZihiPW4uTi5jdGhlbWUpRC50aGVtZT1iO2lmKGI9bi5saXZpbmdSb29tQXBwTW9kZSlELnR2QXBwSW5mbz17Li4uRC50dkFwcEluZm8sbGl2aW5nUm9vbUFwcE1vZGU6Yn07Yj1uLmRldmljZVllYXI7bi5TKCJodG1sNV9wcm9wYWdhdGVfZGV2aWNlX3llYXIiKSYmYiYmKEQudHZBcHBJbmZvPXsuLi5ELnR2QXBwSW5mbyxkZXZpY2VZZWFyOmJ9KTtpZihiPW4ubGl2aW5nUm9vbVBvVG9rZW5JZClELnR2QXBwSW5mbz17Li4uRC50dkFwcEluZm8sCmxpdmluZ1Jvb21Qb1Rva2VuSWQ6Yn07Vy5jbGllbnQ9RDtiPVcudXNlcnx8e307bi5lbmFibGVTYWZldHlNb2RlJiYoYj17Li4uYixlbmFibGVTYWZldHlNb2RlOiEwfSk7IUQudHZBcHBJbmZvPy51c2VQYWdlaWRBc0hlYWRlciYmbi5wYWdlSWQmJihiPXsuLi5iLG9uQmVoYWxmT2ZVc2VyOm4ucGFnZUlkfSk7Vy51c2VyPWI7cmV0dXJuIFd9OwpsRj1mdW5jdGlvbihuLFcsRCl7Vz17dmlkZW9JZDpuLnZpZGVvSWQsY29udGV4dDpnLm9UKG4pLHBsYXliYWNrQ29udGV4dDp7Y29udGVudFBsYXliYWNrQ29udGV4dDpkayhuLFcsRCl9fTtuLmdUJiYoVy5wbGF5YmFja0NvbnRleHQucmVsb2FkUGxheWJhY2tDb250ZXh0PXtyZWxvYWRQbGF5YmFja1BhcmFtczpuLmdUPy5yZWxvYWRQbGF5YmFja1BhcmFtc30pO24uY29udGVudENoZWNrT2smJihXLmNvbnRlbnRDaGVja09rPSEwKTtpZihEPW4uY2xpZW50UGxheWJhY2tOb25jZSlXLmNwbj1EO2lmKEQ9bi5wbGF5ZXJQYXJhbXMpVy5wYXJhbXM9RDtlbHNlIGlmKEQ9bi5nZXRSZXNvbHZlVXJsUmVzcG9uc2UoKSlpZihEPWRsKEQpKVcucGFyYW1zPUQ7aWYoRD1uLnBsYXlsaXN0SWQpVy5wbGF5bGlzdElkPUQ7bi5yYWN5Q2hlY2tPayYmKFcucmFjeUNoZWNrT2s9ITApO0Q9bi5HKCk7dmFyIGI9RC5lbWJlZENvbmZpZztuLk5kP1cuc2VyaWFsaXplZFRoaXJkUGFydHlFbWJlZENvbmZpZz0Kbi5OZDpiJiYoVy5zZXJpYWxpemVkVGhpcmRQYXJ0eUVtYmVkQ29uZmlnPWIpO1cuY2FwdGlvblBhcmFtcz17fTtiPWcubzkoKS5RUSg2NSk7bi5kZXZpY2VDYXB0aW9uc09uIT1udWxsP1cuY2FwdGlvblBhcmFtcy5kZXZpY2VDYXB0aW9uc09uPW4uZGV2aWNlQ2FwdGlvbnNPbjpnLmVNKEQpJiYoVy5jYXB0aW9uUGFyYW1zLmRldmljZUNhcHRpb25zT249YiE9bnVsbD8hYjohMSk7bi5LTCYmKFcuY2FwdGlvblBhcmFtcy5kZXZpY2VDYXB0aW9uc0xhbmdQcmVmPW4uS0wpO2I9bi5TKCJ3ZWJfZW5hYmxlX3BsYXllcl9yZXF1ZXN0X2NhcHRpb25zX2xhc3RfbGFuZ3VhZ2Vfb25seSIpO2lmKG4uRmUubGVuZ3RoKVcuY2FwdGlvblBhcmFtcy52aWV3ZXJTZWxlY3RlZENhcHRpb25MYW5ncz1iP1tuLkZlLmF0KC0xKV06bi5GZTtlbHNlIGlmKGcuZU0oRCkpe3ZhciB2PWcuU0koKTt2Py5sZW5ndGgmJihXLmNhcHRpb25QYXJhbXMudmlld2VyU2VsZWN0ZWRDYXB0aW9uTGFuZ3M9Yj9bdi5hdCgtMSldOgp2KX1iPW4uZmV0Y2hUeXBlPT09Im9uZXNpZSImJm4uUygiaHRtbDVfb25lc2llX2F0dGFjaF9wb190b2tlbiIpO3Y9bi5mZXRjaFR5cGUhPT0ib25lc2llIiYmbi5TKCJodG1sNV9ub25fb25lc2llX2F0dGFjaF9wb190b2tlbiIpO2lmKGJ8fHYpYj1uLkcoKSxiLmpXJiYoVy5zZXJ2aWNlSW50ZWdyaXR5RGltZW5zaW9ucz17fSxXLnNlcnZpY2VJbnRlZ3JpdHlEaW1lbnNpb25zLnBvVG9rZW49Yi5qVyk7RC5TKCJmZXRjaF9hdHRfaW5kZXBlbmRlbnRseSIpJiYoVy5hdHRlc3RhdGlvblJlcXVlc3Q9e29taXRCb3RndWFyZERhdGE6ITB9KTtXLnBsYXliYWNrQ29udGV4dHx8KFcucGxheWJhY2tDb250ZXh0PXt9KTtXLnBsYXliYWNrQ29udGV4dC5kZXZpY2VQbGF5YmFja0NhcGFiaWxpdGllcz16ZShuKTtXLnBsYXliYWNrQ29udGV4dC5kZXZpY2VQbGF5YmFja0NhcGFiaWxpdGllcy5zdXBwb3J0c1ZwOUVuY29kaW5nPT09ITEmJm4uVSgibm9WcDkiLHt9KTtyZXR1cm4gV307CnplPWZ1bmN0aW9uKG4pe3ZhciBXPSFuPy5vTCgpJiZuPy56VygpJiZjMCgpO3JldHVybntzdXBwb3J0c1ZwOUVuY29kaW5nOiEoIW4/LllqKCl8fFcpLHN1cHBvcnRYaHI6TnN9fTsKajc9ZnVuY3Rpb24obil7aWYobj1uPy5lbmRwb2ludClyZXR1cm4gZy53KG4sZy5JUSl8fGcudyhuLFRlKX07CmRsPWZ1bmN0aW9uKG4pe3JldHVybiBqNyhuKT8ucGxheWVyUGFyYW1zfTsKTVNNPWFzeW5jIGZ1bmN0aW9uKG4sVyl7bj17Y29udGV4dDp1RihuLkcoKSksZW5nYWdlbWVudFR5cGU6IkVOR0FHRU1FTlRfVFlQRV9QTEFZQkFDSyIsaWRzOlt7cGxheWJhY2tJZDp7dmlkZW9JZDpuLnZpZGVvSWQsY3BuOm4uY2xpZW50UGxheWJhY2tOb25jZX19XX07dmFyIEQ9TEIod1laKTtyZXR1cm4gYXdhaXQgZy5yXyhXLG4sRCl9OwpDQT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Zy5kTShXLmV4cGVyaW1lbnRzLCJiZ192bV9yZWluaXRfdGhyZXNob2xkIik7KCFvZnx8KDAsZy5SKSgpLW9mPmIpJiZNU00obixEKS50aGVuKHY9Pnt2JiYodj12LmJvdGd1YXJkRGF0YSkmJmcuekModixXKX0sdj0+e24ucU4oKXx8KHY9QiQodiksbi5VKCJhdHRmIix2LmRldGFpbHMpKX0pfTsKQlQ9ZnVuY3Rpb24obixXLEQpe24uc3RhdGUuTltXXT0oLi4uYik9PkQuYXBwbHkobixiKX07CkYyPWZ1bmN0aW9uKG4sVyxEKXtuLnN0YXRlLk4uaGFzT3duUHJvcGVydHkoVyl8fEJUKG4sVyxEKTtuLnN0YXRlLmpbV109KC4uLmIpPT5ELmFwcGx5KG4sYik7Cm4uc3RhdGUuSy5hZGQoVyl9Owp3bD1mdW5jdGlvbihuLFcsRCl7bi5zdGF0ZS5OLmhhc093blByb3BlcnR5KFcpfHxCVChuLFcsRCk7bi5hcHAuRygpLksmJihuLnN0YXRlLlZbV109KC4uLmIpPT5ELmFwcGx5KG4sYiksbi5zdGF0ZS5LLmFkZChXKSl9OwpNdT1mdW5jdGlvbihuLFcpe24uc3RhdGUuTi5hZGRFbWJlZHNDb252ZXJzaW9uVHJhY2tpbmdQYXJhbXMoLi4uVyl9OwpnLlJUPWZ1bmN0aW9uKG4sVywuLi5EKXtuLnN0YXRlLlcuV0ooVywuLi5EKTtuLnN0YXRlLkouV0ooVywuLi5EKX07CmcuUVU9ZnVuY3Rpb24obixXLC4uLkQpe24uc3RhdGUuVy5XSihXLC4uLkQpO24uc3RhdGUuSi5XSihXLC4uLkQpO24uc3RhdGUuWC5XSihXLC4uLkQpfTsKZy5WVT1mdW5jdGlvbihuLFcsLi4uRCl7bi5zdGF0ZS5XLldKKFcsLi4uRCk7bi5zdGF0ZS5KLldKKFcsLi4uRCk7bi5zdGF0ZS5YLldKKFcsLi4uRCk7bi5zdGF0ZS5ZLldKKFcsLi4uRCl9OwphVD1mdW5jdGlvbihuLFcsRCl7dHlwZW9mIG49PT0ic3RyaW5nIiYmKG49e21lZGlhQ29udGVudFVybDpuLHN0YXJ0U2Vjb25kczpXLHN1Z2dlc3RlZFF1YWxpdHk6RH0pO2E6e2lmKChXPW4ubWVkaWFDb250ZW50VXJsKSYmKFc9L1wvKFt2ZV18ZW1iZWQpXC8oW14jP10rKS8uZXhlYyhXKSkmJldbMl0pe1c9V1syXTticmVhayBhfVc9bnVsbH1uLnZpZGVvSWQ9VztyZXR1cm4gY1Qobil9OwpjVD1mdW5jdGlvbihuLFcsRCl7aWYodHlwZW9mIG49PT0ic3RyaW5nIilyZXR1cm57dmlkZW9JZDpuLHN0YXJ0U2Vjb25kczpXLHN1Z2dlc3RlZFF1YWxpdHk6RH07Vz17fTtmb3IobGV0IGIgb2YgUmtaKW5bYl0mJihXW2JdPW5bYl0pOyhuPW4uZW1iZWRDb25maWd8fG4uZW1iZWRfY29uZmlnKSYmKFcuZW1iZWRfY29uZmlnPW4yKG4pKTtyZXR1cm4gV307ClFzUz1mdW5jdGlvbihuLFcsRCxiKXtpZihnLmZ0KG4pJiYhQXJyYXkuaXNBcnJheShuKSl7Vz0icGxheWxpc3QgbGlzdCBsaXN0VHlwZSBpbmRleCBzdGFydFNlY29uZHMgc3VnZ2VzdGVkUXVhbGl0eSIuc3BsaXQoIiAiKTtEPXt9O2ZvcihiPTA7YjxXLmxlbmd0aDtiKyspe2xldCB2PVdbYl07blt2XSYmKERbdl09blt2XSl9cmV0dXJuIER9Vz17aW5kZXg6VyxzdGFydFNlY29uZHM6RCxzdWdnZXN0ZWRRdWFsaXR5OmJ9O3R5cGVvZiBuPT09InN0cmluZyImJm4ubGVuZ3RoPT09MTY/Vy5saXN0PSJQTCIrbjpXLnBsYXlsaXN0PW47cmV0dXJuIFd9OwpuMj1mdW5jdGlvbihuKXtpZih0eXBlb2Ygbj09PSJzdHJpbmciKXJldHVybiBuO2lmKGcuZnQobikpdHJ5e3JldHVybiBKU09OLnN0cmluZ2lmeShuKX1jYXRjaChXKXtjb25zb2xlLmVycm9yKCJJbnZhbGlkIGVtYmVkQ29uZmlnIEpTT04iLFcpfX07Clc3PWZ1bmN0aW9uKG4sVz0xKXt2YXIgRD17fTtXPW4uYXBwLlZFKHtwbGF5ZXJUeXBlOld9KS5nZXRWaWRlb0RhdGEoKTtpZihpRihXKSlyZXR1cm57fTtELnZpZGVvX2lkPVcudmlkZW9JZDtELmF1dGhvcj1XLmF1dGhvcjtELnRpdGxlPVcudGl0bGU7RC5pc1BsYXlhYmxlPVpQKFcpO0QuZXJyb3JDb2RlPVcuZXJyb3JDb2RlO2lmKFcuSiYmVy5KLnZpZGVvKXtELnZpZGVvX3F1YWxpdHk9Vy5KLnZpZGVvLnF1YWxpdHk7Vz1XLkoudmlkZW87bGV0IGI9W107Vy5KKCkmJmIucHVzaCgiaGZyIik7Vy5pc0hkcigpJiZiLnB1c2goImhkciIpO1cucHJpbWFyaWVzPT09ImJ0MjAyMCImJmIucHVzaCgid2NnIik7RC52aWRlb19xdWFsaXR5X2ZlYXR1cmVzPWJ9aWYobj1uLmdldFBsYXlsaXN0SWQoKSlELmxpc3Q9bjtyZXR1cm4gRH07ClZTaD1mdW5jdGlvbihuKXtGMihuLCJjdWVWaWRlb0J5SWQiLG4uY0opO0YyKG4sImxvYWRWaWRlb0J5SWQiLG4uWSQpO0YyKG4sImN1ZVZpZGVvQnlVcmwiLG4uYmQpO0YyKG4sImxvYWRWaWRlb0J5VXJsIixuLlFyKTtGMihuLCJwbGF5VmlkZW8iLG4ueXcpO0YyKG4sInBhdXNlVmlkZW8iLG4ucGF1c2VWaWRlbyk7RjIobiwic3RvcFZpZGVvIixuLnptKTtGMihuLCJjbGVhclZpZGVvIixuLmNsZWFyVmlkZW8pO0YyKG4sImdldFZpZGVvQnl0ZXNMb2FkZWQiLG4uWVopO0YyKG4sImdldFZpZGVvQnl0ZXNUb3RhbCIsbi5SYSk7RjIobiwiZ2V0VmlkZW9Mb2FkZWRGcmFjdGlvbiIsbi5YKTtGMihuLCJnZXRWaWRlb1N0YXJ0Qnl0ZXMiLG4uTEIpO0YyKG4sImN1ZVBsYXlsaXN0IixuLmN1ZVBsYXlsaXN0KTtGMihuLCJsb2FkUGxheWxpc3QiLG4uTmQpO0YyKG4sIm5leHRWaWRlbyIsbi5VNSk7RjIobiwicHJldmlvdXNWaWRlbyIsbi5RJCk7RjIobiwicGxheVZpZGVvQXQiLG4uTWQpOwpGMihuLCJzZXRTaHVmZmxlIixuLnNldFNodWZmbGUpO0YyKG4sInNldExvb3AiLG4uc2V0TG9vcCk7RjIobiwiZ2V0UGxheWxpc3QiLG4ualcpO0YyKG4sImdldFBsYXlsaXN0SW5kZXgiLG4uZ2V0UGxheWxpc3RJbmRleCk7RjIobiwiZ2V0UGxheWxpc3RJZCIsbi5nZXRQbGF5bGlzdElkKTtGMihuLCJsb2FkTW9kdWxlIixuLmopO0YyKG4sInVubG9hZE1vZHVsZSIsbi5WKTtGMihuLCJzZXRPcHRpb24iLG4uSik7RjIobiwiZ2V0T3B0aW9uIixuLnZKKTtGMihuLCJnZXRPcHRpb25zIixuLk4pO0YyKG4sIm11dGUiLG4uczUpO0YyKG4sInVuTXV0ZSIsbi5taCk7RjIobiwiaXNNdXRlZCIsbi5pc011dGVkKTtGMihuLCJzZXRWb2x1bWUiLG4uYlYpO0YyKG4sImdldFZvbHVtZSIsbi5nZXRWb2x1bWUpO0YyKG4sInNlZWtUbyIsbi5TVik7RjIobiwiZ2V0UGxheWVyTW9kZSIsbi5nZXRQbGF5ZXJNb2RlKTtGMihuLCJnZXRQbGF5ZXJTdGF0ZSIsbi55RSk7RjIobiwiZ2V0QXZhaWxhYmxlUGxheWJhY2tSYXRlcyIsCm4uZ2V0QXZhaWxhYmxlUGxheWJhY2tSYXRlcyk7RjIobiwiZ2V0UGxheWJhY2tRdWFsaXR5IiwoKT0+bi5nZXRQbGF5YmFja1F1YWxpdHkoMSkpOwpGMihuLCJzZXRQbGF5YmFja1F1YWxpdHkiLG4uZVYpO0YyKG4sImdldEF2YWlsYWJsZVF1YWxpdHlMZXZlbHMiLG4uVlEpO0YyKG4sImdldEN1cnJlbnRUaW1lIixuLkhKKTtGMihuLCJnZXREdXJhdGlvbiIsbi5udSk7RjIobiwiYWRkRXZlbnRMaXN0ZW5lciIsbi5PKTtGMihuLCJyZW1vdmVFdmVudExpc3RlbmVyIixuLmdUKTtGMihuLCJnZXREZWJ1Z1RleHQiLG4uRHQpO0YyKG4sImdldFZpZGVvRGF0YSIsKCk9Plc3KG4pKTsKRjIobiwiYWRkQ3VlUmFuZ2UiLG4uWSk7RjIobiwicmVtb3ZlQ3VlUmFuZ2UiLG4ucmVtb3ZlQ3VlUmFuZ2UpO0YyKG4sInNldFNpemUiLG4uc2V0U2l6ZSk7RjIobiwiZ2V0QXBpSW50ZXJmYWNlIixuLmdldEFwaUludGVyZmFjZSk7RjIobiwiZGVzdHJveSIsbi5kZXN0cm95KTtGMihuLCJtdXRlZEF1dG9wbGF5IixuLm11dGVkQXV0b3BsYXkpO3ZhciBXPW4uYXBwLkcoKTtGMihuLCJnZXRWaWRlb0VtYmVkQ29kZSIsbi5nZXRWaWRlb0VtYmVkQ29kZSk7RjIobiwiZ2V0VmlkZW9VcmwiLG4ud2EpO0YyKG4sImdldE1lZGlhUmVmZXJlbmNlVGltZSIsbi5HQyk7RjIobiwiZ2V0U2l6ZSIsbi5nZXRTaXplKTtGMihuLCJzZXRGYXV4RnVsbHNjcmVlbiIsbi51NSk7Vy5TKCJlbWJlZHNfZW5hYmxlX21vdmVfc2V0X2NlbnRlcl9jcm9wX3RvX3B1YmxpYyIpJiZGMihuLCJzZXRDZW50ZXJDcm9wIixuLnNldENlbnRlckNyb3ApO1cuWHx8RjIobiwibG9nSW1hQWRFdmVudCIsbi5sb2dJbWFBZEV2ZW50KTsKRjIobiwicHJlbG9hZFZpZGVvQnlJZCIsbi5SdCk7RjIobiwid2FrZVVwQ29udHJvbHMiLG4ud2FrZVVwQ29udHJvbHMpfTsKZy5iNT1mdW5jdGlvbihuKXtyZXR1cm4obj1EJChuLmFwcC5KNSgpKSk/bi5CNygpOm51bGx9OwprRj1mdW5jdGlvbihuKXt2YXIgVz1RTShuLmFwcC5HKCkpLEQ9bi5hcHAuZ2V0VmlkZW9EYXRhKCk/Lk1kO249djcobi5hcHApO3JldHVybiBMeShXKSYmIUR8fG4/ITE6ITB9OwpoZj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIHR5cGVvZiBuPT09Im51bWJlciI/e3BsYXllclR5cGU6bix2bzpXLGNwbjpEfTpufHx7fX07CmMxQz1mdW5jdGlvbihuKXt2YXIgVz1uLnJhd19wbGF5ZXJfcmVzcG9uc2U7aWYoIVcpe3ZhciBEPW4ucGxheWVyX3Jlc3BvbnNlO0QmJihXPUpTT04ucGFyc2UoRCkpfWRlbGV0ZSBuLnBsYXllcl9yZXNwb25zZTtkZWxldGUgbi5yYXdfcGxheWVyX3Jlc3BvbnNlO1cmJihuLnJhd19wbGF5ZXJfcmVzcG9uc2U9e3N0cmVhbWluZ0RhdGE6Vy5zdHJlYW1pbmdEYXRhLHBsYXllckNvbmZpZzpXLnBsYXllckNvbmZpZ30sVy5wbGF5YmFja1RyYWNraW5nPy5xb2VVcmwmJihuLnJhd19wbGF5ZXJfcmVzcG9uc2U9ey4uLm4ucmF3X3BsYXllcl9yZXNwb25zZSxwbGF5YmFja1RyYWNraW5nOntxb2VVcmw6Vy5wbGF5YmFja1RyYWNraW5nLnFvZVVybH19KSxXLmNhcHRpb25zJiYobi5yYXdfcGxheWVyX3Jlc3BvbnNlPXsuLi5uLnJhd19wbGF5ZXJfcmVzcG9uc2UsY2FwdGlvbnM6Vy5jYXB0aW9uc30pLFcudmlkZW9EZXRhaWxzJiYoVy52aWRlb0RldGFpbHMudmlkZW9JZHx8Vy52aWRlb0RldGFpbHMubGVuZ3RoU2Vjb25kcykmJgooRD17fSxXLnZpZGVvRGV0YWlscy52aWRlb0lkJiYoRC52aWRlb0lkPVcudmlkZW9EZXRhaWxzLnZpZGVvSWQpLFcudmlkZW9EZXRhaWxzLmxlbmd0aFNlY29uZHMmJihELmxlbmd0aFNlY29uZHM9Vy52aWRlb0RldGFpbHMubGVuZ3RoU2Vjb25kcyksbi5yYXdfcGxheWVyX3Jlc3BvbnNlPXsuLi5uLnJhd19wbGF5ZXJfcmVzcG9uc2UsdmlkZW9EZXRhaWxzOkR9KSl9Owp4Rj1mdW5jdGlvbihuLFcpe3ZhciBEPXt9O2lmKG4uYXBwLkcoKS5PKXtmb3IobGV0IGIgb2YgYWF4KVcuaGFzT3duUHJvcGVydHkoYikmJihEW2JdPVdbYl0pO2lmKG49RC5xb2VfY2F0KVc9IiIsdHlwZW9mIG49PT0ic3RyaW5nIiYmbi5sZW5ndGg+MCYmKFc9bi5zcGxpdCgiLCIpLmZpbHRlcihiPT5udDIuaW5jbHVkZXMoYikpLmpvaW4oIiwiKSksRC5xb2VfY2F0PVc7CmMxQyhEKX1lbHNlIGZvcihsZXQgYiBvZiBXYXcpVy5oYXNPd25Qcm9wZXJ0eShiKSYmKERbYl09V1tiXSk7cmV0dXJuIER9OwpMMj1mdW5jdGlvbihuKXtyZXR1cm4gbj9Ed1Vbbl18fDU6NX07CmVCPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIE9iamVjdC5rZXlzKFcpKXtsZXQgYj1XW0RdO249bi5yZXBsYWNlKG5ldyBSZWdFeHAoIlxcJCIrRCwiZ2kiKSwoKT0+Yil9cmV0dXJuIG59OwpiX0M9ZnVuY3Rpb24obil7QlQobiwiZ2V0SW50ZXJuYWxBcGlJbnRlcmZhY2UiLG4uZ2V0SW50ZXJuYWxBcGlJbnRlcmZhY2UpO0JUKG4sImdldFRydXN0ZWRBcGkiLG4uZ2V0VHJ1c3RlZEFwaSk7QlQobiwiYWRkRXZlbnRMaXN0ZW5lciIsbi5EKTtCVChuLCJyZW1vdmVFdmVudExpc3RlbmVyIixuLlRRKTtCVChuLCJjdWVWaWRlb0J5UGxheWVyVmFycyIsbi50dyk7QlQobiwibG9hZFZpZGVvQnlQbGF5ZXJWYXJzIixuLkU1KTtCVChuLCJwcmVsb2FkVmlkZW9CeVBsYXllclZhcnMiLG4uWmgpO0JUKG4sImdldEFkU3RhdGUiLG4uZ2V0QWRTdGF0ZSk7QlQobiwic2VuZEFiYW5kb25tZW50UGluZyIsbi5zZW5kQWJhbmRvbm1lbnRQaW5nKTtCVChuLCJzZXRMb29wUmFuZ2UiLG4uc2V0TG9vcFJhbmdlKTtCVChuLCJnZXRMb29wUmFuZ2UiLG4uZ2V0TG9vcFJhbmdlKTtCVChuLCJzZXRBdXRvbmF2U3RhdGUiLG4uc2V0QXV0b25hdlN0YXRlKTtCVChuLCJzZWVrVG8iLG4uYk4pO0JUKG4sCiJzZWVrQnkiLG4uc1YpO0JUKG4sInNlZWtUb0xpdmVIZWFkIixuLnNlZWtUb0xpdmVIZWFkKTtCVChuLCJyZXF1ZXN0U2Vla1RvV2FsbFRpbWVTZWNvbmRzIixuLnJlcXVlc3RTZWVrVG9XYWxsVGltZVNlY29uZHMpO0JUKG4sInNlZWtUb1N0cmVhbVRpbWUiLG4uc2Vla1RvU3RyZWFtVGltZSk7QlQobiwic3RhcnRTZWVrQ3NpQWN0aW9uIixuLnN0YXJ0U2Vla0NzaUFjdGlvbik7QlQobiwiZ2V0U3RyZWFtVGltZU9mZnNldCIsbi5nZXRTdHJlYW1UaW1lT2Zmc2V0KTtCVChuLCJnZXRWaWRlb0RhdGEiLG4uZkIpO0JUKG4sImdldEFwcFN0YXRlIixuLmdldEFwcFN0YXRlKTtCVChuLCJ1cGRhdGVMYXN0QWN0aXZlVGltZSIsbi51cGRhdGVMYXN0QWN0aXZlVGltZSk7QlQobiwic2V0VXNlckVuZ2FnZW1lbnQiLG4uc2V0VXNlckVuZ2FnZW1lbnQpO0JUKG4sInVwZGF0ZVN1YnRpdGxlc1VzZXJTZXR0aW5ncyIsbi51cGRhdGVTdWJ0aXRsZXNVc2VyU2V0dGluZ3MpO0JUKG4sImdldFByZXNlbnRpbmdQbGF5ZXJUeXBlIiwKbi5XKTtCVChuLCJjYW5QbGF5VHlwZSIsbi5jYW5QbGF5VHlwZSk7QlQobiwidXBkYXRlUGxheWxpc3QiLG4udXBkYXRlUGxheWxpc3QpO0JUKG4sInVwZGF0ZVZpZGVvRGF0YSIsbi51cGRhdGVWaWRlb0RhdGEpO0JUKG4sInVwZGF0ZUVudmlyb25tZW50RGF0YSIsbi51cGRhdGVFbnZpcm9ubWVudERhdGEpO0JUKG4sInNlbmRWaWRlb1N0YXRzRW5nYWdlRXZlbnQiLG4uWXIpO0JUKG4sInNldFNhZmV0eU1vZGUiLG4uc2V0U2FmZXR5TW9kZSk7QlQobiwiaXNBdExpdmVIZWFkIixXPT5uLmlzQXRMaXZlSGVhZCh2b2lkIDAsVykpOwpCVChuLCJnZXRWaWRlb0FzcGVjdFJhdGlvIixuLmdldFZpZGVvQXNwZWN0UmF0aW8pO0JUKG4sImdldFByZWZlcnJlZFF1YWxpdHkiLG4uZ2V0UHJlZmVycmVkUXVhbGl0eSk7QlQobiwiZ2V0UGxheWJhY2tRdWFsaXR5TGFiZWwiLG4uZ2V0UGxheWJhY2tRdWFsaXR5TGFiZWwpO0JUKG4sInNldFBsYXliYWNrUXVhbGl0eVJhbmdlIixuLldpKTtCVChuLCJvbkFkVXhDbGlja2VkIixuLm9uQWRVeENsaWNrZWQpO0JUKG4sImdldEZlZWRiYWNrUHJvZHVjdERhdGEiLG4uZ2V0RmVlZGJhY2tQcm9kdWN0RGF0YSk7QlQobiwiZ2V0U3Rvcnlib2FyZEZyYW1lIixuLmdldFN0b3J5Ym9hcmRGcmFtZSk7QlQobiwiZ2V0U3Rvcnlib2FyZEZyYW1lSW5kZXgiLG4uZ2V0U3Rvcnlib2FyZEZyYW1lSW5kZXgpO0JUKG4sImdldFN0b3J5Ym9hcmRMZXZlbCIsbi5nZXRTdG9yeWJvYXJkTGV2ZWwpO0JUKG4sImdldE51bWJlck9mU3Rvcnlib2FyZExldmVscyIsbi5nZXROdW1iZXJPZlN0b3J5Ym9hcmRMZXZlbHMpOwpCVChuLCJnZXRDYXB0aW9uV2luZG93Q29udGFpbmVySWQiLG4uZ2V0Q2FwdGlvbldpbmRvd0NvbnRhaW5lcklkKTtCVChuLCJnZXRBdmFpbGFibGVRdWFsaXR5TGFiZWxzIixuLmdldEF2YWlsYWJsZVF1YWxpdHlMYWJlbHMpO0JUKG4sImFkZEN1ZVJhbmdlIixuLmFkZEN1ZVJhbmdlKTtCVChuLCJhZGRVdGNDdWVSYW5nZSIsbi5hZGRVdGNDdWVSYW5nZSk7QlQobiwic2hvd0FpcnBsYXlQaWNrZXIiLG4uc2hvd0FpcnBsYXlQaWNrZXIpO0JUKG4sImRpc3BhdGNoUmVkdXhBY3Rpb24iLG4uZGlzcGF0Y2hSZWR1eEFjdGlvbik7QlQobiwiZ2V0UGxheWVyUmVzcG9uc2UiLG4uUFgpO0JUKG4sImdldFdhdGNoTmV4dFJlc3BvbnNlIixuLnZYKTtCVChuLCJnZXRIZWFydGJlYXRSZXNwb25zZSIsbi5GRik7QlQobiwiZ2V0Q3VycmVudFRpbWUiLG4uZSQpO0JUKG4sImdldER1cmF0aW9uIixuLm1aKTtCVChuLCJnZXRQbGF5ZXJTdGF0ZSIsbi5nZXRQbGF5ZXJTdGF0ZSk7QlQobiwiZ2V0UGxheWVyU3RhdGVPYmplY3QiLApuLkN1KTtCVChuLCJnZXRWaWRlb0xvYWRlZEZyYWN0aW9uIixuLmdldFZpZGVvTG9hZGVkRnJhY3Rpb24pO0JUKG4sImdldFByb2dyZXNzU3RhdGUiLG4uZ2V0UHJvZ3Jlc3NTdGF0ZSk7QlQobiwiZ2V0Vm9sdW1lIixuLmdldFZvbHVtZSk7QlQobiwic2V0Vm9sdW1lIixuLmtGKTtCVChuLCJpc011dGVkIixuLmlzTXV0ZWQpO0JUKG4sIm11dGUiLG4uZ0cpO0JUKG4sInVuTXV0ZSIsbi5sbSk7QlQobiwibG9hZE1vZHVsZSIsbi5sb2FkTW9kdWxlKTtCVChuLCJ1bmxvYWRNb2R1bGUiLG4udW5sb2FkTW9kdWxlKTtCVChuLCJnZXRPcHRpb24iLG4uanUpO0JUKG4sImdldE9wdGlvbnMiLG4uZ2V0T3B0aW9ucyk7QlQobiwic2V0T3B0aW9uIixuLnNldE9wdGlvbik7QlQobiwibG9hZFZpZGVvQnlJZCIsbi5ydyk7QlQobiwibG9hZFZpZGVvQnlVcmwiLG4uSzApO0JUKG4sInBsYXlWaWRlbyIsbi5VRyk7QlQobiwic3RvcFZpZGVvIixuLkspO0JUKG4sImxvYWRQbGF5bGlzdCIsbi5sb2FkUGxheWxpc3QpOwpCVChuLCJuZXh0VmlkZW8iLG4ubmV4dFZpZGVvKTtCVChuLCJwcmV2aW91c1ZpZGVvIixuLnByZXZpb3VzVmlkZW8pO0JUKG4sInBsYXlWaWRlb0F0IixuLnBsYXlWaWRlb0F0KTtCVChuLCJnZXREZWJ1Z1RleHQiLG4uZ2V0RGVidWdUZXh0KTtCVChuLCJnZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnIixuLmdldFdlYlBsYXllckNvbnRleHRDb25maWcpO0JUKG4sImdldFZpZGVvQ29udGVudFJlY3QiLG4uZ2V0VmlkZW9Db250ZW50UmVjdCk7QlQobiwidG9nZ2xlU3VidGl0bGVzT24iLG4udG9nZ2xlU3VidGl0bGVzT24pO0JUKG4sImlzU3VidGl0bGVzT24iLG4uaXNTdWJ0aXRsZXNPbik7QlQobiwiZ2V0QXVkaW9UcmFjayIsbi5UQyk7QlQobiwic2V0QXVkaW9UcmFjayIsbi5zeik7QlQobiwiZ2V0QXZhaWxhYmxlQXVkaW9UcmFja3MiLG4uUyQpO0JUKG4sImlzT3JjaGVzdHJhdGlvbkxlYWRlciIsbi5pc09yY2hlc3RyYXRpb25MZWFkZXIpO0JUKG4sIm5vdGlmeVNob3J0c0FkU3dpcGVFdmVudCIsCm4ubm90aWZ5U2hvcnRzQWRTd2lwZUV2ZW50KTtCVChuLCJwcmVmZXRjaEtleVBsYXkiLG4ucHJlZmV0Y2hLZXlQbGF5KTtCVChuLCJwcmVmZXRjaEp1bXBBaGVhZCIsbi5wcmVmZXRjaEp1bXBBaGVhZCk7QlQobiwicHJvZHVjdHNJblZpZGVvVmlzaWJpbGl0eVVwZGF0ZWQiLG4ucHJvZHVjdHNJblZpZGVvVmlzaWJpbGl0eVVwZGF0ZWQpO0JUKG4sInNldEJsYWNrb3V0IixuLnNldEJsYWNrb3V0KTtCVChuLCJzZXRJbmxpbmVQcmV2aWV3IixuLnNldElubGluZVByZXZpZXcpO0JUKG4sInNldFNxdWVlemViYWNrIixuLnNldFNxdWVlemViYWNrKTtCVChuLCJyZXBvcnRQbGF5YmFja0lzc3VlIixuLnJlcG9ydFBsYXliYWNrSXNzdWUpO0JUKG4sInNldEF1dG9uYXYiLG4uc2V0QXV0b25hdik7QlQobiwiaXNOb3RTZXJ2YWJsZSIsbi5pc05vdFNlcnZhYmxlKTtCVChuLCJjaGFubmVsU3Vic2NyaWJlZCIsbi5jaGFubmVsU3Vic2NyaWJlZCk7QlQobiwiY2hhbm5lbFVuc3Vic2NyaWJlZCIsCm4uY2hhbm5lbFVuc3Vic2NyaWJlZCk7QlQobiwidG9nZ2xlUGljdHVyZUluUGljdHVyZSIsbi50b2dnbGVQaWN0dXJlSW5QaWN0dXJlKTtCVChuLCJzdXBwb3J0c0dhcGxlc3NBdWRpbyIsbi5zdXBwb3J0c0dhcGxlc3NBdWRpbyk7QlQobiwic3VwcG9ydHNHYXBsZXNzU2hvcnRzIixuLnN1cHBvcnRzR2FwbGVzc1Nob3J0cyk7QlQobiwiaXNHYXBsZXNzVHJhbnNpdGlvblJlYWR5IixuLmlzR2FwbGVzc1RyYW5zaXRpb25SZWFkeSk7QlQobiwic2V0U2hvcnRzQXV0b0FkdmFuY2VkRW5hYmxlZCIsbi5zZXRTaG9ydHNBdXRvQWR2YW5jZWRFbmFibGVkKTtCVChuLCJlbnF1ZXVlVmlkZW9CeVBsYXllclZhcnMiLFc9PnZvaWQgbi5lbnF1ZXVlVmlkZW9CeVBsYXllclZhcnMoVykpOwpCVChuLCJjbGVhclF1ZXVlIixuLmNsZWFyUXVldWUpO0JUKG4sImdldE1heFBsYXliYWNrUXVhbGl0eSIsbi5nZXRNYXhQbGF5YmFja1F1YWxpdHkpO0JUKG4sImdldFVzZXJQbGF5YmFja1F1YWxpdHlQcmVmZXJlbmNlIixuLmdldFVzZXJQbGF5YmFja1F1YWxpdHlQcmVmZXJlbmNlKTtCVChuLCJnZXRTdWJ0aXRsZXNVc2VyU2V0dGluZ3MiLG4uZ2V0U3VidGl0bGVzVXNlclNldHRpbmdzKTtCVChuLCJyZXNldFN1YnRpdGxlc1VzZXJTZXR0aW5ncyIsbi5yZXNldFN1YnRpdGxlc1VzZXJTZXR0aW5ncyk7QlQobiwic2V0TWluaW1pemVkIixuLnNldE1pbmltaXplZCk7QlQobiwic2V0T3ZlcmxheVZpc2liaWxpdHkiLG4uc2V0T3ZlcmxheVZpc2liaWxpdHkpO0JUKG4sImNvbmZpcm1ZcGNSZW50YWwiLG4uY29uZmlybVlwY1JlbnRhbCk7QlQobiwicXVldWVOZXh0VmlkZW8iLG4ucXVldWVOZXh0VmlkZW8pO0JUKG4sImhhbmRsZUV4dGVybmFsQ2FsbCIsbi5oYW5kbGVFeHRlcm5hbENhbGwpOwpCVChuLCJsb2dBcGlDYWxsIixuLmxvZ0FwaUNhbGwpO0JUKG4sImlzRXh0ZXJuYWxNZXRob2RBdmFpbGFibGUiLG4uaXNFeHRlcm5hbE1ldGhvZEF2YWlsYWJsZSk7QlQobiwic2V0U2NyZWVuTGF5ZXIiLG4uc2V0U2NyZWVuTGF5ZXIpO0JUKG4sImdldEN1cnJlbnRQbGF5bGlzdFNlcXVlbmNlIixuLmdldEN1cnJlbnRQbGF5bGlzdFNlcXVlbmNlKTtCVChuLCJnZXRQbGF5bGlzdFNlcXVlbmNlRm9yVGltZSIsbi5nZXRQbGF5bGlzdFNlcXVlbmNlRm9yVGltZSk7QlQobiwic2hvdWxkU2VuZFZpc2liaWxpdHlTdGF0ZSIsbi5zaG91bGRTZW5kVmlzaWJpbGl0eVN0YXRlKTtCVChuLCJzeW5jVm9sdW1lIixuLnN5bmNWb2x1bWUpO0JUKG4sImhpZ2hsaWdodFNldHRpbmdzTWVudUl0ZW0iLG4uaGlnaGxpZ2h0U2V0dGluZ3NNZW51SXRlbSk7QlQobiwib3BlblNldHRpbmdzTWVudUl0ZW0iLG4ub3BlblNldHRpbmdzTWVudUl0ZW0pO0JUKG4sImdldEVtYmVkZGVkUGxheWVyUmVzcG9uc2UiLApuLmdldEVtYmVkZGVkUGxheWVyUmVzcG9uc2UpO0JUKG4sImdldFZpc2liaWxpdHlTdGF0ZSIsbi5nZXRWaXNpYmlsaXR5U3RhdGUpO0JUKG4sImlzTXV0ZWRCeU11dGVkQXV0b3BsYXkiLG4uaXNNdXRlZEJ5TXV0ZWRBdXRvcGxheSk7QlQobiwiaXNNdXRlZEJ5RW1iZWRzTXV0ZWRBdXRvcGxheSIsbi5pc011dGVkQnlFbWJlZHNNdXRlZEF1dG9wbGF5KTtCVChuLCJzZXRHbG9iYWxDcm9wIixuLnNldEdsb2JhbENyb3ApO0JUKG4sInNldEludGVybmFsU2l6ZSIsbi5zZXRJbnRlcm5hbFNpemUpO0JUKG4sInNldEZhdXhGdWxsc2NyZWVuIixuLnNldEZhdXhGdWxsc2NyZWVuKTtCVChuLCJzZXRBcHBGdWxsc2NyZWVuIixuLnNldEFwcEZ1bGxzY3JlZW4pO0JUKG4sImlzS2V5Ym9hcmREaXNhYmxlZCIsbi5pc0tleWJvYXJkRGlzYWJsZWQpO0JUKG4sImdldEN1cnJlbnRUaW1lRm9yVXgiLG4uZ2V0Q3VycmVudFRpbWVGb3JVeCk7QlQobiwiZ2V0RHVyYXRpb25Gb3JVeCIsbi5nZXREdXJhdGlvbkZvclV4KX07Cmd2PWZ1bmN0aW9uKG4pe24uZ2V0UHJlc2VudGluZ1BsYXllclR5cGUoKT09PTM/bi5XSigibWR4YXV0b3BsYXljYW5jZWwiKTpnLlJUKG4sIm9uQXV0b25hdkNhbmNlbGxlZCIsITApfTsKWHo9ZnVuY3Rpb24obil7bj1uLko1KCkuTmkuZ2V0KCJlbmRzY3JlZW4iKTtyZXR1cm4hIW4mJlh6KG4pfTsKcXA9ZnVuY3Rpb24obil7bj1uLko1KCk7dmFyIFc9bi5OaS5nZXQoImVuZHNjcmVlbiIpO3JldHVybiBXJiZXLlhjKCk/ITA6bi5JVigpfTsKdGY9ZnVuY3Rpb24obil7dmFyIFc9R3Uobi5KNSgpKTtyZXR1cm4gbi5hcHAuWlYmJiFuLmlzRnVsbHNjcmVlbigpfHxuLmdldFByZXNlbnRpbmdQbGF5ZXJUeXBlKCk9PT0zJiZXJiZXLmhhc05leHQoKSYmVy5oYXNQcmV2aW91cygpfHwhIW4uZ2V0UGxheWxpc3QoKX07CmcuZno9ZnVuY3Rpb24obil7cmV0dXJuKG49Zy4kRihuLko1KCkpKT9uLkhwKCk6e319OwpnLnJ2PWZ1bmN0aW9uKG4sVyxEKXtuPW4ubGooKS5lbGVtZW50O3ZhciBiPURlKG4uY2hpbGRyZW4sdj0+e3Y9TnVtYmVyKHYuZ2V0QXR0cmlidXRlKCJkYXRhLWxheWVyIikpO3JldHVybiBELXZ8fDF9KTsKYjwwJiYoYj0tKGIrMSkpO2cuanAobixXLGIpO1cuc2V0QXR0cmlidXRlKCJkYXRhLWxheWVyIixTdHJpbmcoRCkpfTsKdnRDPWZ1bmN0aW9uKG4sVyl7bj1zRihuLmFwcC5Wci5YKTtmb3IobGV0IEQgb2Ygbil7bj1ELmdldEF2YWlsYWJsZUF1ZGlvVHJhY2tzKCk7bGV0IGI9bnVsbDtmb3IobGV0IHYgb2YgbilpZih2LmdldExhbmd1YWdlSW5mbygpLmdldElkKCk9PT1XKXtiPXY7YnJlYWt9YiYmRC5MeShiLCEwKX19OwpnLnAyPWZ1bmN0aW9uKCl7TnB8fChOcD1uZXcga0t4KTtyZXR1cm4gTnB9OwpnLllGPWZ1bmN0aW9uKG4sVyl7Vz9uLlpKLkF1dGhvcml6YXRpb249YEJlYXJlciAke1d9YDpkZWxldGUgbi5aSi5BdXRob3JpemF0aW9ufTsKaHh3PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9KC4uLmIpPT57bi5yZW1vdmVFdmVudExpc3RlbmVyKCJwbGF5aW5nIixEKTtXKC4uLmIpfTsKbi5hZGRFdmVudExpc3RlbmVyKCJwbGF5aW5nIixEKX07CmcuSDc9ZnVuY3Rpb24obil7dmFyIFc9TWF0aC5hYnMoTWF0aC5mbG9vcihuKSksRD1NYXRoLmZsb29yKFcvODY0MDApLGI9TWF0aC5mbG9vcihXJTg2NDAwLzM2MDApLHY9TWF0aC5mbG9vcihXJTM2MDAvNjApO1c9TWF0aC5mbG9vcihXJTYwKTt2YXIgaz0iIjtEPjAmJihrKz1gJHtEfTpgLGI8MTAmJihrKz0iMCIpKTtpZihEPjB8fGI+MClrKz1gJHtifTpgLHY8MTAmJihrKz0iMCIpO2srPWAke3Z9OmA7VzwxMCYmKGsrPSIwIik7RD1rK1c7cmV0dXJuIG4+PTA/RDpgLSR7RH1gfTsKZjI9ZnVuY3Rpb24obil7cmV0dXJuKCEoImJ1dHRvbiJpbiBuKXx8dHlwZW9mIG4uYnV0dG9uIT09Im51bWJlciJ8fG4uYnV0dG9uPT09MCkmJiEoInNoaWZ0S2V5ImluIG4mJm4uc2hpZnRLZXkpJiYhKCJhbHRLZXkiaW4gbiYmbi5hbHRLZXkpJiYhKCJtZXRhS2V5ImluIG4mJm4ubWV0YUtleSkmJiEoImN0cmxLZXkiaW4gbiYmbi5jdHJsS2V5KX07CkpmPWZ1bmN0aW9uKG4sVyxELGIpe2lmKGIuc3Vic3RyaW5nKDAsMik9PT0ie3siKW4uWVpbYl09W1csRF07ZWxzZSByZXR1cm4gYn07Ckl5PWZ1bmN0aW9uKG4sVyxELGIpe2lmKEQ9PT0iY2hpbGQiKXtnLlRGKFcpO2xldCBrO2I9PT12b2lkIDA/az12b2lkIDA6az0hQXJyYXkuaXNBcnJheShiKXx8YiYmdHlwZW9mIGIuWj09PSJzdHJpbmciP1tiXTpiO0Q9eHcyKG4sayk7Zm9yKHZhciB2IG9mIEQpVy5hcHBlbmRDaGlsZCh2KX1lbHNlIEQ9PT0ic3R5bGUiP2cuaDEoVywiY3NzVGV4dCIsYj9iOiIiKTpiPT09bnVsbHx8Yj09PXZvaWQgMD9XLnJlbW92ZUF0dHJpYnV0ZShEKToodj1iLnRvU3RyaW5nKCksRD09PSJocmVmIiYmKHY9Z3ooZy50Rih2LGcuRzQpfHxnLlY1KSksVy5zZXRBdHRyaWJ1dGUoRCx2KSl9Owp4dzI9ZnVuY3Rpb24obixXKXt2YXIgRD1bXTtpZighVylyZXR1cm4gRDtmb3IobGV0IGIgb2YgVyl7aWYoYj09bnVsbCljb250aW51ZTtXPWIubm9kZVR5cGU7Vz09PTF8fFc9PT0zP0QucHVzaChiKTpiJiZ0eXBlb2YgYi5aPT09InN0cmluZyI/RC5wdXNoKG4uY3JlYXRlRWxlbWVudChiKSk6Yi5lbGVtZW50P0QucHVzaChiLmVsZW1lbnQpOnR5cGVvZiBiPT09InN0cmluZyImJmIuaW5kZXhPZigiXG4iKSE9PS0xP2Iuc3BsaXQoIlxuIikuZm9yRWFjaCgodixrKT0+e2s+MCYmRC5wdXNoKGcuekYoIkJSIikpO0QucHVzaChnLmxrKHYpKX0pOkQucHVzaChnLmxrKGIpKX1yZXR1cm4gRH07ClNCPWZ1bmN0aW9uKG4sVyl7bj1uLmVsZW1lbnQuZWxlbWVudDtXP24uc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsInRydWUiKTpuLnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iKX07CkFmPWZ1bmN0aW9uKG4pe3JldHVybiBuLkomJm4uZmFkZS5zdGF0ZSE9PTR9OwptUD1mdW5jdGlvbihuKXtuLnNvdXJjZUVsZW1lbnQmJihkb2N1bWVudC5hY3RpdmVFbGVtZW50JiZnLkJ4KG4uZWxlbWVudCxkb2N1bWVudC5hY3RpdmVFbGVtZW50KSYmbi5zb3VyY2VFbGVtZW50LmZvY3VzKCksbi5zb3VyY2VFbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsImZhbHNlIiksbi5zb3VyY2VFbGVtZW50PXZvaWQgMCk7bi5OLkooKTtuLlc9dm9pZCAwfTsKZy5LMj1mdW5jdGlvbigpe3JldHVybntaOiJzdmciLHhhOntoZWlnaHQ6IjEwMCUiLHZlcnNpb246IjEuMSIsdmlld0JveDoiMCAwIDMyIDMyIix3aWR0aDoiMTAwJSJ9LFhGOlt7WjoicGF0aCIseGE6e2Q6Ik0gMTkuNDEsMjAuMDkgMTQuODMsMTUuNSAxOS40MSwxMC45MSAxOCw5LjUgbCAtNiw2IDYsNiB6IixmaWxsOiIjZmZmIn19XX19OwpnLk9GPWZ1bmN0aW9uKCl7cmV0dXJue1o6InN2ZyIseGE6e2hlaWdodDoiMTAwJSIsdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgMzIgMzIiLHdpZHRoOiIxMDAlIn0sWEY6W3taOiJwYXRoIix4YTp7ZDoibSAxMi41OSwyMC4zNCA0LjU4LC00LjU5IC00LjU4LC00LjU5IDEuNDEsLTEuNDEgNiw2IC02LDYgeiIsZmlsbDoiI2ZmZiJ9fV19fTsKZy5QNz1mdW5jdGlvbigpe3JldHVybntaOiJzdmciLHhhOntoZWlnaHQ6IjEwMCUiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjEwMCUifSxYRjpbe1o6InBhdGgiLHhhOntkOiJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIsZmlsbDoiI2ZmZiJ9fV19fTsKWiQ9ZnVuY3Rpb24oKXtyZXR1cm57Wjoic3ZnIix4YTp7aGVpZ2h0OiIxMDAlIix2ZXJzaW9uOiIxLjEiLHZpZXdCb3g6IjAgMCAxMTAgMjYiLHdpZHRoOiIxMDAlIn0sWEY6W3taOiJwYXRoIixLeTohMCxKdzoieXRwLXN2Zy1maWxsIix4YTp7ZDoiTSAxNi42OCwuOTkgQyAxMy41NSwxLjAzIDcuMDIsMS4xNiA0Ljk5LDEuNjggYyAtMS40OSwuNCAtMi41OSwxLjYgLTIuOTksMyAtMC42OSwyLjcgLTAuNjgsOC4zMSAtMC42OCw4LjMxIDAsMCAtMC4wMSw1LjYxIC42OCw4LjMxIC4zOSwxLjUgMS41OSwyLjYgMi45OSwzIDIuNjksLjcgMTMuNDAsLjY4IDEzLjQwLC42OCAwLDAgMTAuNzAsLjAxIDEzLjQwLC0wLjY4IDEuNSwtMC40IDIuNTksLTEuNiAyLjk5LC0zIC42OSwtMi43IC42OCwtOC4zMSAuNjgsLTguMzEgMCwwIC4xMSwtNS42MSAtMC42OCwtOC4zMSAtMC40LC0xLjUgLTEuNTksLTIuNiAtMi45OSwtMyBDIDI5LjExLC45OCAxOC40MCwuOTkgMTguNDAsLjk5IGMgMCwwIC0wLjY3LC0wLjAxIC0xLjcxLDAgeiBtIDcyLjIxLC45MCAwLDIxLjI4IDIuNzgsMCAuMzEsLTEuMzcgLjA5LDAgYyAuMywuNSAuNzEsLjg4IDEuMjEsMS4xOCAuNSwuMyAxLjA4LC40MCAxLjY4LC40MCAxLjEsMCAxLjk5LC0wLjQ5IDIuNDksLTEuNTkgLjUsLTEuMSAuODEsLTIuNzAgLjgxLC00LjkwIGwgMCwtMi40MCBjIDAsLTEuNiAtMC4xMSwtMi45MCAtMC4zMSwtMy45MCAtMC4yLC0wLjg5IC0wLjUsLTEuNTkgLTEsLTIuMDkgLTAuNSwtMC40IC0xLjEwLC0wLjU5IC0xLjkwLC0wLjU5IC0wLjU5LDAgLTEuMTgsLjE5IC0xLjY4LC40OSAtMC40OSwuMyAtMS4wMSwuODAgLTEuMjEsMS40MCBsIDAsLTcuOTAgLTMuMjgsMCB6IG0gLTQ5Ljk5LC43OCAzLjkwLDEzLjkwIC4xOCw2LjcxIDMuMzEsMCAwLC02LjcxIDMuODcsLTEzLjkwIC0zLjM3LDAgLTEuNDAsNi4zMSBjIC0wLjQsMS44OSAtMC43MSwzLjE5IC0wLjgxLDMuOTkgbCAtMC4wOSwwIGMgLTAuMiwtMS4xIC0wLjUxLC0yLjQgLTAuODEsLTMuOTkgbCAtMS4zNywtNi4zMSAtMy40MCwwIHogbSAyOS41OSwwIDAsMi43MSAzLjQwLDAgMCwxNy45MCAzLjI4LDAgMCwtMTcuOTAgMy40MCwwIGMgMCwwIC4wMCwtMi43MSAtMC4wOSwtMi43MSBsIC05Ljk5LDAgeiBtIC01My40OSw1LjEyIDguOTAsNS4xOCAtOC45MCw1LjA5IDAsLTEwLjI4IHogbSA4OS40MCwuMDkgYyAtMS43LDAgLTIuODksLjU5IC0zLjU5LDEuNTkgLTAuNjksLjk5IC0wLjk5LDIuNjAgLTAuOTksNC45MCBsIDAsMi41OSBjIDAsMi4yIC4zMCwzLjkwIC45OSw0LjkwIC43LDEuMSAxLjgsMS41OSAzLjUsMS41OSAxLjQsMCAyLjM4LC0wLjMgMy4xOCwtMSAuNywtMC43IDEuMDksLTEuNjkgMS4wOSwtMy4wOSBsIDAsLTAuNSAtMi45MCwtMC4yMSBjIDAsMSAtMC4wOCwxLjYgLTAuMjgsMiAtMC4xLC40IC0wLjUsLjYyIC0xLC42MiAtMC4zLDAgLTAuNjEsLTAuMTEgLTAuODEsLTAuMzEgLTAuMiwtMC4zIC0wLjMwLC0wLjU5IC0wLjQwLC0xLjA5IC0wLjEsLTAuNSAtMC4wOSwtMS4yMSAtMC4wOSwtMi4yMSBsIDAsLTAuNzggNS43MSwtMC4wOSAwLC0yLjYyIGMgMCwtMS42IC0wLjEwLC0yLjc4IC0wLjQwLC0zLjY4IC0wLjIsLTAuODkgLTAuNzEsLTEuNTkgLTEuMzEsLTEuOTkgLTAuNywtMC40IC0xLjQ4LC0wLjU5IC0yLjY4LC0wLjU5IHogbSAtNTAuNDksLjA5IGMgLTEuMDksMCAtMi4wMSwuMTggLTIuNzEsLjY4IC0wLjcsLjQgLTEuMiwxLjEyIC0xLjQ5LDIuMTIgLTAuMywxIC0wLjUsMi4yNyAtMC41LDMuODcgbCAwLDIuMjEgYyAwLDEuNSAuMTAsMi43OCAuNDAsMy43OCAuMiwuOSAuNzAsMS42MiAxLjQwLDIuMTIgLjY5LC41IDEuNzEsLjY4IDIuODEsLjc4IDEuMTksMCAyLjA4LC0wLjI4IDIuNzgsLTAuNjggLjY5LC0wLjQgMS4wOSwtMS4wOSAxLjQ5LC0yLjA5IC4zOSwtMSAuNDksLTIuMzAgLjQ5LC0zLjkwIGwgMCwtMi4yMSBjIDAsLTEuNiAtMC4yLC0yLjg3IC0wLjQ5LC0zLjg3IC0wLjMsLTAuODkgLTAuOCwtMS42MiAtMS40OSwtMi4xMiAtMC43LC0wLjUgLTEuNTgsLTAuNjggLTIuNjgsLTAuNjggeiBtIDEyLjE4LC4wOSAwLDExLjkwIGMgLTAuMSwuMyAtMC4yOSwuNDggLTAuNTksLjY4IC0wLjIsLjIgLTAuNTEsLjMxIC0wLjgxLC4zMSAtMC4zLDAgLTAuNTgsLTAuMTAgLTAuNjgsLTAuNDAgLTAuMSwtMC4zIC0wLjE4LC0wLjcwIC0wLjE4LC0xLjQwIGwgMCwtMTAuOTkgLTMuNDAsMCAwLDExLjIxIGMgMCwxLjQgLjE4LDIuMzkgLjY4LDMuMDkgLjQ5LC43IDEuMjEsMSAyLjIxLDEgMS40LDAgMi40OCwtMC42OSAzLjE4LC0yLjA5IGwgLjA5LDAgLjMxLDEuNzggMi41OSwwIDAsLTE0Ljk5IGMgMCwwIC0zLjQwLC4wMCAtMy40MCwtMC4wOSB6IG0gMTcuMzEsMCAwLDExLjkwIGMgLTAuMSwuMyAtMC4yOSwuNDggLTAuNTksLjY4IC0wLjIsLjIgLTAuNTEsLjMxIC0wLjgxLC4zMSAtMC4zLDAgLTAuNTgsLTAuMTAgLTAuNjgsLTAuNDAgLTAuMSwtMC4zIC0wLjIxLC0wLjcwIC0wLjIxLC0xLjQwIGwgMCwtMTAuOTkgLTMuNDAsMCAwLDExLjIxIGMgMCwxLjQgLjIxLDIuMzkgLjcxLDMuMDkgLjUsLjcgMS4xOCwxIDIuMTgsMSAxLjM5LDAgMi41MSwtMC42OSAzLjIxLC0yLjA5IGwgLjA5LDAgLjI4LDEuNzggMi42MiwwIDAsLTE0Ljk5IGMgMCwwIC0zLjQwLC4wMCAtMy40MCwtMC4wOSB6IG0gMjAuOTAsMi4wOSBjIC40LDAgLjU4LC4xMSAuNzgsLjMxIC4yLC4zIC4zMCwuNTkgLjQwLDEuMDkgLjEsLjUgLjA5LDEuMjEgLjA5LDIuMjEgbCAwLDEuMDkgLTIuNSwwIDAsLTEuMDkgYyAwLC0xIC0wLjAwLC0xLjcxIC4wOSwtMi4yMSAwLC0wLjQgLjExLC0wLjggLjMxLC0xIC4yLC0wLjMgLjUxLC0wLjQwIC44MSwtMC40MCB6IG0gLTUwLjQ5LC4xMiBjIC41LDAgLjgsLjE4IDEsLjY4IC4xOSwuNSAuMjgsMS4zMCAuMjgsMi40MCBsIDAsNC42OCBjIDAsMS4xIC0wLjA4LDEuOTAgLTAuMjgsMi40MCAtMC4yLC41IC0wLjUsLjY4IC0xLC42OCAtMC41LDAgLTAuNzksLTAuMTggLTAuOTksLTAuNjggLTAuMiwtMC41IC0wLjMxLC0xLjMwIC0wLjMxLC0yLjQwIGwgMCwtNC42OCBjIDAsLTEuMSAuMTEsLTEuOTAgLjMxLC0yLjQwIC4yLC0wLjUgLjQ5LC0wLjY4IC45OSwtMC42OCB6IG0gMzkuNjgsLjA5IGMgLjMsMCAuNjEsLjEwIC44MSwuNDAgLjIsLjMgLjI3LC42NyAuMzcsMS4zNyAuMSwuNiAuMTIsMS41MSAuMTIsMi43MSBsIC4wOSwxLjkwIGMgMCwxLjEgLjAwLDEuOTkgLTAuMDksMi41OSAtMC4xLC42IC0wLjE5LDEuMDggLTAuNDksMS4yOCAtMC4yLC4zIC0wLjUwLC40MCAtMC45MCwuNDAgLTAuMywwIC0wLjUxLC0wLjA4IC0wLjgxLC0wLjE4IC0wLjIsLTAuMSAtMC4zOSwtMC4yOSAtMC41OSwtMC41OSBsIDAsLTguNSBjIC4xLC0wLjQgLjI5LC0wLjcgLjU5LC0xIC4zLC0wLjMgLjYwLC0wLjQwIC45MCwtMC40MCB6In19XX19OwpVRj1mdW5jdGlvbigpe3JldHVybntaOiJzdmciLHhhOntmaWxsOiJub25lIixoZWlnaHQ6IjEwMCUiLHZpZXdCb3g6IjAgMCAxNDMgNTEiLHdpZHRoOiIxMDAlIn0sWEY6W3taOiJwYXRoIix4YTp7ZDoiTTU4LjM3IDQxLjM5SDYyLjc5VjI3LjIzQzYyLjc5IDIzLjAzIDYyLjY5IDE4LjY5IDYyLjQzIDEzLjU5SDYyLjkzTDYzLjY5IDE2Ljg5TDY4LjY3IDQxLjM5SDczLjE3TDc4LjA3IDE2Ljg5TDc4Ljg5IDEzLjU5SDc5LjM3Qzc5LjE1IDE4LjQ1IDc5LjAzIDIyLjg5IDc5LjAzIDI3LjIzVjQxLjM5SDgzLjQ1VjguNzlINzUuOTVMNzMuNDEgMjAuODFDNzIuMzUgMjUuODUgNzEuNTEgMzIuMDEgNzEuMDEgMzUuMTlINzAuNzNDNzAuMzMgMzEuOTUgNjkuNDkgMjUuODEgNjguNDEgMjAuODVMNjUuODEgOC43OUg1OC4zN1Y0MS4zOVoiLGZpbGw6IndoaXRlIn19LHtaOiJwYXRoIix4YTp7ZDoiTTkxLjQ1IDQxLjczQzkzLjkxIDQxLjczIDk1LjgzIDQwLjU5IDk3LjE3IDM4LjEzSDk3LjM1TDk3LjY5IDQxLjM5SDEwMS40M1YxNy43M0g5Ni40N1YzNi42MUM5NS45MSAzNy42NyA5NC44MSAzOC4yOSA5My43MyAzOC4yOUM5Mi4zMyAzOC4yOSA5MS44OSAzNy4xNyA5MS44OSAzNS4xM1YxNy43M0g4Ni45M1YzNS40M0M4Ni45MyAzOS40OSA4OC4xOSA0MS43MyA5MS40NSA0MS43M1oiLApmaWxsOiJ3aGl0ZSJ9fSx7WjoicGF0aCIseGE6e2Q6Ik0xMTAuNzkgNDEuODlDMTE1LjE1IDQxLjg5IDExNy43NSAzOS44MyAxMTcuNzUgMzUuNjVDMTE3Ljc1IDMxLjc5IDExNS45MyAzMC4zOSAxMTEuODUgMjcuNDdDMTA5LjY3IDI1LjkxIDEwOC4zOSAyNS4wOSAxMDguMzkgMjIuOTVDMTA4LjM5IDIxLjQ3IDEwOS4yNyAyMC42MSAxMTAuODkgMjAuNjFDMTEyLjY5IDIwLjYxIDExMy4zMyAyMS44MSAxMTMuMzMgMjUuMjlMMTE3LjQ1IDI1LjA3QzExNy43NyAxOS41NyAxMTUuNzEgMTcuMjMgMTEwLjk3IDE3LjIzQzEwNi41NyAxNy4yMyAxMDQuMTcgMTkuMjcgMTA0LjE3IDIzLjQ1QzEwNC4xNyAyNy4yNSAxMDUuOTcgMjguODMgMTA4LjkzIDMxLjAzQzExMS44OSAzMy4yMyAxMTMuNTUgMzQuNTMgMTEzLjU1IDM2LjIzQzExMy41NSAzNy43NSAxMTIuNTEgMzguNjEgMTExLjAxIDM4LjYxQzEwOS4xMyAzOC42MSAxMDguMTEgMzYuOTcgMTA4LjI5IDM0LjQxTDEwNC4yMSAzNC40OUMxMDMuNTEgMzkuMjUgMTA1Ljg5IDQxLjg5IDExMC43OSA0MS44OVoiLApmaWxsOiJ3aGl0ZSJ9fSx7WjoicGF0aCIseGE6e2Q6Ik0xMjIuNSAxNC41OUMxMjQuMjIgMTQuNTkgMTI1LjA0IDEzLjk5IDEyNS4wNCAxMS41OUMxMjUuMDQgOS4zMyAxMjQuMTYgOC42NSAxMjIuNSA4LjY1QzEyMC44NCA4LjY1IDExOS45NCA5LjI3IDExOS45NCAxMS41OUMxMTkuOTQgMTMuOTkgMTIwLjgyIDE0LjU5IDEyMi41IDE0LjU5Wk0xMjAuMiA0MS4zOUgxMjVWMTcuNzNIMTIwLjJWNDEuMzlaIixmaWxsOiJ3aGl0ZSJ9fSx7WjoicGF0aCIseGE6e2Q6Ik0xMzQuOTUgNDEuNzlDMTM3LjMxIDQxLjc5IDEzOC42MyA0MS40OSAxMzkuNzEgNDAuNDdDMTQxLjMxIDM5LjAxIDE0MS45NyAzNi42MyAxNDEuODUgMzMuMTFMMTM3LjQxIDMyLjg3QzEzNy40MSAzNi44NyAxMzYuODEgMzguNDUgMTM1LjAzIDM4LjQ1QzEzMy4xMyAzOC40NSAxMzIuNzcgMzYuNDUgMTMyLjc3IDMxLjk3VjI3LjIxQzEzMi43NyAyMi40MSAxMzMuMjMgMjAuNTEgMTM1LjA3IDIwLjUxQzEzNi42NyAyMC41MSAxMzcuMjkgMjIuMDEgMTM3LjI5IDI2LjQ3TDE0MS42NSAyNi4xNUMxNDEuOTcgMjIuOTMgMTQxLjU5IDIwLjI5IDE0MC4wOSAxOC44M0MxMzkuMDEgMTcuNzcgMTM3LjM3IDE3LjI5IDEzNS4xNSAxNy4yOUMxMjkuNjUgMTcuMjkgMTI3Ljc1IDIwLjczIDEyNy43NSAyOC4wM1YzMS4xN0MxMjcuNzUgMzguNDcgMTI5LjIzIDQxLjc5IDEzNC45NSA0MS43OVoiLApmaWxsOiJ3aGl0ZSJ9fSx7WjoicGF0aCIseGE6eyJjbGlwLXJ1bGUiOiJldmVub2RkIixkOiJNMjQuOTkgNDlDMjkuNzQgNDkuMDAgMzQuMzggNDcuNTkgMzguMzIgNDQuOTVDNDIuMjcgNDIuMzIgNDUuMzUgMzguNTcgNDcuMTcgMzQuMThDNDguOTggMjkuODAgNDkuNDYgMjQuOTcgNDguNTMgMjAuMzJDNDcuNjEgMTUuNjYgNDUuMzIgMTEuMzggNDEuOTcgOC4wM0MzOC42MSA0LjY3IDM0LjMzIDIuMzggMjkuNjggMS40NkMyNS4wMiAuNTMgMjAuMjAgMS4wMSAxNS44MSAyLjgyQzExLjQzIDQuNjQgNy42OCA3LjcxIDUuMDQgMTEuNjZDMi40MCAxNS42MSAxIDIwLjI1IDEgMjVDMC45OSAyOC4xNSAxLjYxIDMxLjI3IDIuODIgMzQuMThDNC4wMyAzNy4wOSA1Ljc5IDM5Ljc0IDguMDIgNDEuOTdDMTAuMjUgNDQuMTkgMTIuODkgNDUuOTYgMTUuODEgNDcuMTdDMTguNzIgNDguMzcgMjEuODQgNDkgMjQuOTkgNDlaTTI0Ljk5IDEyLjM2QzI3LjQ5IDEyLjM2IDI5Ljk0IDEzLjEwIDMyLjAyIDE0LjQ4QzM0LjEwIDE1Ljg3IDM1LjcyIDE3Ljg0IDM2LjY4IDIwLjE1QzM3LjY0IDIyLjQ2IDM3Ljg5IDI1LjAxIDM3LjQxIDI3LjQ2QzM2LjkyIDI5LjkxIDM1LjcyIDMyLjE3IDMzLjk1IDMzLjk0QzMyLjE4IDM1LjcwIDI5LjkzIDM2LjkxIDI3LjQ4IDM3LjQwQzI1LjAyIDM3Ljg5IDIyLjQ4IDM3LjY0IDIwLjE3IDM2LjY4QzE3Ljg2IDM1LjcyIDE1Ljg4IDM0LjEwIDE0LjUwIDMyLjAyQzEzLjExIDI5Ljk0IDEyLjM3IDI3LjUwIDEyLjM3IDI1QzEyLjM3IDIxLjY1IDEzLjcwIDE4LjQ0IDE2LjA3IDE2LjA3QzE4LjQzIDEzLjcwIDIxLjY0IDEyLjM3IDI0Ljk5IDEyLjM2Wk0yNC45OSAxMC40M0MyMi4xMSAxMC40MyAxOS4yOSAxMS4yOCAxNi44OSAxMi44OEMxNC41MCAxNC40OCAxMi42MyAxNi43NiAxMS41MyAxOS40MkMxMC40MiAyMi4wOSAxMC4xMyAyNS4wMiAxMC43MCAyNy44NUMxMS4yNiAzMC42NyAxMi42NSAzMy4yNyAxNC42OSAzNS4zMUMxNi43MyAzNy4zNSAxOS4zMiAzOC43MyAyMi4xNSAzOS4zMEMyNC45OCAzOS44NiAyNy45MSAzOS41NyAzMC41NyAzOC40NkMzMy4yMyAzNy4zNiAzNS41MSAzNS40OSAzNy4xMSAzMy4wOUMzOC43MSAzMC43MCAzOS41NyAyNy44OCAzOS41NiAyNUMzOS41NiAyMy4wOCAzOS4xOSAyMS4xOSAzOC40NiAxOS40MkMzNy43MiAxNy42NSAzNi42NSAxNi4wNCAzNS4zMCAxNC42OUMzMy45NCAxMy4zNCAzMi4zNCAxMi4yNyAzMC41NyAxMS41M0MyOC44MCAxMC44MCAyNi45MCAxMC40MyAyNC45OSAxMC40M1pNMzIuNjMgMjQuOTlMMjAuMzYgMzIuMDlWMTcuOTFMMzIuNjMgMjQuOTlaIiwKZmlsbDoid2hpdGUiLCJmaWxsLXJ1bGUiOiJldmVub2RkIn19XX19Owp5RT1mdW5jdGlvbihuPXt9LFc9W10pe1cucHVzaCgieXRwLW1lbnVpdGVtIik7InJvbGUiaW4gbnx8KG4ucm9sZT0ibWVudWl0ZW0iKTsidGFiaW5kZXgiaW4gbnx8KG4udGFiaW5kZXg9IjAiKTtyZXR1cm57WjoiZGl2IixLQjpXLHhhOm4sWEY6W3taOiJkaXYiLEp3OiJ5dHAtbWVudWl0ZW0taWNvbiIsT3E6Int7aWNvbn19In0se1o6ImRpdiIsSnc6Inl0cC1tZW51aXRlbS1sYWJlbCIsT3E6Int7bGFiZWx9fSJ9LHtaOiJkaXYiLEp3OiJ5dHAtbWVudWl0ZW0tY29udGVudCIsT3E6Int7Y29udGVudH19In1dfX07CkVGPWZ1bmN0aW9uKG4pe3JldHVybiBuP2cuRHAobik6IiJ9OwppNT1mdW5jdGlvbihuKXtyZXR1cm4gbj09PS0weDgwMDAwMDAwMDAwMDA/IkJFRk9SRV9NRURJQV9TVEFSVCI6bj09PTA/Ik1FRElBX1NUQVJUIjpuPT09MHg3ZmZmZmZmZmZmZmZmPyJNRURJQV9FTkQiOm49PT0weDgwMDAwMDAwMDAwMDA/IkFGVEVSX01FRElBX0VORCI6bi50b1N0cmluZygpfTsKZy51NT1mdW5jdGlvbihuLFcpe3JldHVybiBuLnN0YXJ0LVcuc3RhcnR8fG4ucHJpb3JpdHktVy5wcmlvcml0eXx8bi5KLVcuSn07Cmcub3k9ZnVuY3Rpb24obil7cmV0dXJuYGNybl8ke259YH07CmcuZHY9ZnVuY3Rpb24obil7cmV0dXJuYGNyeF8ke259YH07Cnp1PWZ1bmN0aW9uKG4pe3JldHVybntbMV06bi5zdGFydCxbMl06bi5lbmQsWzNdOm4uaWQsWzRdOm4ucHJpb3JpdHksWzVdOm4ubmFtZXNwYWNlLFs2XTpuLnZpc2libGUsWzddOm4uc3R5bGUsWzhdOm4udG9vbHRpcCxbOV06bi5jb2xvcixbMTBdOm4uaWNvbnMsWzExXTpuLmFzc29jaWF0ZWRDbGlwSWQsWzEyXTpuLm1hcmtlclBvc2l0aW9uTXN9fTsKVHU9ZnVuY3Rpb24obixXLEQsYil7VyBpbiBuLk58fChEPW5ldyBnLmw1KEQsYix7aWQ6Vyxwcmlvcml0eToyLG5hbWVzcGFjZToiYXBwYWQifSksbi5hcGkuZ2goW0RdLDEpLG4uTltXXT1EKX07CmpCPWZ1bmN0aW9uKG4sVyl7TGF4KG4sVykudGhlbihEPT57Zy5nbyhXLHZvaWQgMCx2b2lkIDAsRCl9KX07CkMyPWZ1bmN0aW9uKG4sVyl7Vy5mb3JFYWNoKEQ9PntqQihuLEQpfSl9OwpCNz1mdW5jdGlvbihuLFcsRCl7aWYoIShEIGluIFcpKXJldHVybiExO1c9V1tEXTtBcnJheS5pc0FycmF5KFcpfHwoVz1bV10pO2ZvcihsZXQgYiBvZiBXKVc9e0NQTjpuLmFwaS5nZXRWaWRlb0RhdGEoKS5jbGllbnRQbGF5YmFja05vbmNlfSxXPWcuR0soYixXKSxnLmdvKFcsdm9pZCAwLG9PKHpFKFcsZXh4LG51bGwpLFcsITEsIkFjdGl2ZSBWaWV3IDNyZCBQYXJ0eSBJbnRlZ3JhdGlvbiBVUkwiKXx8b08oekUoVyxndGosbnVsbCksVywhMSwiR29vZ2xlL1lvdVR1YmUgQnJhbmQgTGlmdCBVUkwiKXx8b08oekUoVyxYSzIsbnVsbCksVywhMSwiTmllbHNlbiBPQ1IgVVJMIikpO3JldHVybiEwfTsKTGF4PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGcuazYobi5hcGkuRygpKSYmZy5CVihXKSYmZy5qSChXKT9nLkhFKG4uYXBpLkcoKSxuLmFwaS5nZXRWaWRlb0RhdGEoKS5WKCkpLnRoZW4oRD0+e3ZhciBiO0QmJihiPXtBdXRob3JpemF0aW9uOmBCZWFyZXIgJHtEfWB9KTtyZXR1cm4gYn0sdm9pZCAwKTpnLkgwKCl9OwpGej1mdW5jdGlvbihuLFcpe24uY2hlY2tlZD1XO24uZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtY2hlY2tlZCIsU3RyaW5nKG4uY2hlY2tlZCkpfTsKd3Y9ZnVuY3Rpb24obixXKXtuLmVuYWJsZWQ9VztuLmVuYWJsZWQ/bi5lbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1kaXNhYmxlZCIpOm4uZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtZGlzYWJsZWQiLCJ0cnVlIil9OwpNcD1mdW5jdGlvbihuLFcsRD0hMSxiKXt2YXIgdj1uLmN1cnJlbnRUYXJnZXQ7aWYoIUQmJmYyKG4pKXJldHVybiBuLnByZXZlbnREZWZhdWx0KCksITA7Vy5wYXVzZVZpZGVvKCk7bj12LmdldEF0dHJpYnV0ZSgiaHJlZiIpO1E1KG4sYik7cmV0dXJuITF9OwpSeT1mdW5jdGlvbihuLFcsRCl7aWYodkUoVy5HKCkpJiZXLmdldFByZXNlbnRpbmdQbGF5ZXJUeXBlKCkhPT0yKWYyKEQpJiYoVy5pc0Z1bGxzY3JlZW4oKSYmIVcuRygpLmV4dGVybmFsRnVsbHNjcmVlbiYmVy50b2dnbGVGdWxsc2NyZWVuKCksRC5wcmV2ZW50RGVmYXVsdCgpKTtlbHNle2xldCBiPWYyKEQpO2ImJlcucGF1c2VWaWRlbygpO1E1KG4pO2ImJihnLmNhKG4pLEQucHJldmVudERlZmF1bHQoKSl9fTsKUUU9ZnVuY3Rpb24obil7cmV0dXJuIG4uYXVkaW8/LmF1ZGlvUXVhbGl0eT09PSJBVURJT19RVUFMSVRZX0hJR0giJiYhbi5WKCl9OwpWRT1mdW5jdGlvbihuKXtyZXR1cm4gbi5hdWRpbz8uVz09PSEwfTsKYzc9ZnVuY3Rpb24obil7cmV0dXJuIG4uVigpfTsKYXk9ZnVuY3Rpb24obil7cmV0dXJuIG4uYXVkaW8/Lk49PT0hMH07Cm52PWZ1bmN0aW9uKG4sVyl7aWYobi5sZW5ndGg8MilyZXR1cm4hMTt2YXIgRD1XKG5bMF0pO3JldHVybiBuLnNvbWUoYj0+VyhiKSE9PUQpfTsKYlk9ZnVuY3Rpb24obixXKXtuPXFJdyhuLFcubGFuZ3VhZ2VJZCk7bj1XdShuLCEhVy5nTyk7cmV0dXJuIG49RGIobiwhIVcuajkpfTsKV3U9ZnVuY3Rpb24obixXKXt2YXIgRD1nLkVNKG4sYj0+YXkoYik9PT1XKTsKcmV0dXJuIEQubGVuZ3RoPjA/RDpufTsKRGI9ZnVuY3Rpb24obixXKXt2YXIgRD1nLkVNKG4sYj0+VkUoYik9PT1XKTsKcmV0dXJuIEQubGVuZ3RoPjA/RDpufTsKR0t0PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFcuaWQhPT0idW5kIj9nLkVNKG4sRD0+e3ZhciBiPVcuZ2V0TGFuZ3VhZ2VJbmZvKCk/Lm5hbWU7cmV0dXJuIEQua1o/Lm5hbWU9PT1ifSk6bn07CnFJdz1mdW5jdGlvbihuLFcpe2lmKFcmJlchPT0idW5kIilpZih0eXBlb2YgVz09PSJzdHJpbmciKXt2YXIgRD1nLmxfKG4sdj0+di5pZD09PVcpOwppZihEPy5rWil2YXIgYj1ELmtaLmlkfWVsc2UgYj1XLmtaPy5pZDtpZihiJiYoRD1nLkVNKG4sdj0+di5rWj8uaWQ9PT1iKSxELmxlbmd0aD4wKSlyZXR1cm4gRDsKRD1nLkVNKG4sdj0+ISF2LmtaPy5pc0RlZmF1bHQpOwpyZXR1cm4gRC5sZW5ndGg+MD9EOm59Owp0QUM9ZnVuY3Rpb24obil7dmFyIFc9Zy5FTShuLEQ9PmM3KEQpPT09ITApOwpyZXR1cm4gVy5sZW5ndGg+MD9XOm59Owokd2o9ZnVuY3Rpb24obil7dmFyIFc9Zy5FTShuLEQ9PlFFKEQpPT09ITApOwpyZXR1cm4gVy5sZW5ndGg+MD9XOm59OwpyYVU9ZnVuY3Rpb24obixXKXtuPW5ldyBTZXQobi5tYXAoVykpO24uZGVsZXRlKHZvaWQgMCk7cmV0dXJuIG4uc2l6ZT49Mn07CnNGTT1mdW5jdGlvbihuLFcpe3JldHVybiBXLnByaW9yaXR5LW4ucHJpb3JpdHl9Owp2dT1mdW5jdGlvbihuLFcsRD0hMSl7aWYoRCluLml0ZW1zLnB1c2goVyksbi5tZW51SXRlbXMuZWxlbWVudC5hcHBlbmRDaGlsZChXLmVsZW1lbnQpO2Vsc2V7RD1nLlc0KG4uaXRlbXMsVyxzRk0pO2lmKEQ+PTApcmV0dXJuO0Q9fkQ7Zy5jTShuLml0ZW1zLEQsMCxXKTtnLmpwKG4ubWVudUl0ZW1zLmVsZW1lbnQsVy5lbGVtZW50LEQpfVcuc3Vic2NyaWJlKCJzaXplLWNoYW5nZSIsbi5xQSxuKTtuLm1lbnVJdGVtcy5XSigic2l6ZS1jaGFuZ2UiKX07CmtzPWZ1bmN0aW9uKG4sVyl7Vy51bnN1YnNjcmliZSgic2l6ZS1jaGFuZ2UiLG4ucUEsbik7bi5xTigpfHwoZy5GSShuLml0ZW1zLFcpLG4ubWVudUl0ZW1zLmVsZW1lbnQucmVtb3ZlQ2hpbGQoVy5lbGVtZW50KSxuLm1lbnVJdGVtcy5XSigic2l6ZS1jaGFuZ2UiKSl9OwpnLmhCPWZ1bmN0aW9uKG4sVyl7aWYobi5XKXt2YXIgRD1uLm9wdGlvbnNbbi5XXTtELmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJhcmlhLWNoZWNrZWQiKTtELmVsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWNoZWNrZWQiLCJmYWxzZSIpO24uVz1udWxsfWlmKEQ9bi5vcHRpb25zW1ddKUQuZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtY2hlY2tlZCIsInRydWUiKSxuLlgobi5qKFcpKSxuLlc9V307Ck5YaD1mdW5jdGlvbihuLFcsRCxiKXtEPW5ldyB4cyh7WjoiZGl2IixLQjpbInl0cC1tZW51aXRlbSIsIiJdLHhhOnt0YWJpbmRleDoiMCIscm9sZToibWVudWl0ZW1yYWRpbyIsImFyaWEtY2hlY2tlZCI6Yj8idHJ1ZSI6ImZhbHNlIn0sWEY6W3taOiJkaXYiLEtCOlsieXRwLW1lbnVpdGVtLWxhYmVsIl0sT3E6Int7bGFiZWx9fSJ9XX0sRCxuLmooVykpO0QuU18oImNsaWNrIiwoKT0+e24uRChXKX0pOwpyZXR1cm4gRH07CmcuTHY9ZnVuY3Rpb24obixXKXt2YXIgRD1uLks7Zm9yKHZhciBiIG9mIEQuaXRlbXMpYi51bnN1YnNjcmliZSgic2l6ZS1jaGFuZ2UiLEQucUEsRCk7RC5pdGVtcz1bXTt0cnl7Zy5URihELm1lbnVJdGVtcy5lbGVtZW50KX1jYXRjaCh2KXtnLkdxKG5ldyBnLlF4KCJGYWlsZWQgdG8gcmVtb3ZlIG1lbnUgaXRlbXMgZnJvbSBwYW5lbCBtZW51LiIse2Vycm9yOnYubWVzc2FnZSxvcmlnaW5hbFN0YWNrOnYuc3RhY2ssY2hpbGRUb0JlUmVtb3ZlZDpELm1lbnVJdGVtcy5lbGVtZW50LmZpcnN0Q2hpbGQ/LnRleHRDb250ZW50Pz8iY2hpbGQgZWxlbWVudCBub3QgZm91bmQifSkpfUQubWVudUl0ZW1zLldKKCJzaXplLWNoYW5nZSIpO0Q9e307Yj0hMTtmb3IobGV0IHY9MDt2PFcubGVuZ3RoO3YrKyl7bGV0IGs9V1t2XSxoPW4ub3B0aW9uc1trXSx4PWs9PT1uLlc7eCYmKGI9ITApO2gmJmgucHJpb3JpdHk9PT0tdj8obi5vcHRpb25zW2tdLnVwZGF0ZVZhbHVlKCJsYWJlbCIsbi5qKGspKSwKZGVsZXRlIG4ub3B0aW9uc1trXSk6aD1OWGgobixrLC12LHgpO0Rba109aDt2dShuLkssaCwhMCl9Ynx8KG4uVz1udWxsKTtmb3IobGV0IHYgb2YgT2JqZWN0LmtleXMobi5vcHRpb25zKSluLm9wdGlvbnNbdl0uZGlzcG9zZSgpO24ub3B0aW9ucz1EfTsKZW49ZnVuY3Rpb24obil7aWYobi5tZW51SXRlbSl7dmFyIFc9bi5hcGkuZ2V0VmlkZW9EYXRhKCk7bi5tZW51SXRlbS5lbmFibGUoISFXJiYhIVcuV2spfX07CmdWPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIFcpe1c9TnVtYmVyKEQucGxheWJhY2tQb3NpdGlvbj8udXRjVGltZU1pbGxpcykvMUUzO2xldCBiPWBlbWJhcmdvXyR7V31gO24uYXBpLmFkZFV0Y0N1ZVJhbmdlKGIsVyxXK051bWJlcihELmR1cmF0aW9uPy5zZWNvbmRzKSwiZW1iYXJnbyIsITEpO0Qub25FbnRlciYmKG4uTltiXT1ELm9uRW50ZXIuZmlsdGVyKG4uSikpfX07CllJMT1mdW5jdGlvbihuKXt2YXIgVz1uLmFwaS5nZXRSb290Tm9kZSgpO1c9bi5hcGkuZ2V0V2ViUGxheWVyQ29udGV4dENvbmZpZygpLmVtYmVkc0VuYWJsZUVtYzNkcz9XLnBhcmVudEVsZW1lbnQ/LnBhcmVudEVsZW1lbnR8fFc6VztuLk49bmV3IHBLcihXLEQ9PntEIT1udWxsJiYobi5hcGkuRygpLmVLPUQsbi5hcGkuRygpLkxLPSJFTUJFRERFRF9QTEFZRVJfVklTSUJJTElUWV9GUkFDVElPTl9TT1VSQ0VfSU5URVJTRUNUSU9OX09CU0VSVkVSIil9KTsKZy51KG4sbi5OKTtuLmV2ZW50cy5OTihuLmFwaSwidmlkZW9TdGF0c1BpbmdDcmVhdGVkIixEPT57dmFyIGI9bi5OO2I9Yi5OPT1udWxsP251bGw6TWF0aC5yb3VuZChiLk4qMTAwKS8xMDA7RC5pbnZpZXc9YiE9bnVsbD9iOnZvaWQgMDtiPW4uYXBpLmdldFBsYXllclNpemUoKTtpZihiLmhlaWdodD4wJiZiLndpZHRoPjApe2I9W01hdGgucm91bmQoYi53aWR0aCksTWF0aC5yb3VuZChiLmhlaWdodCldO2xldCB2PWcuSF8oKTt2PjEmJmIucHVzaCh2KTtiPWIuam9pbigiOiIpfWVsc2UgYj12b2lkIDA7RC5zaXplPWJ9KX07CkhfVT1mdW5jdGlvbihuKXtyZXR1cm4gbi5tYXAoVz0+bmV3IG11KFcuaWQsImFwcGxpY2F0aW9uL3gtbXBlZ1VSTCIse2taOlcua1p9KSl9OwpxVz1mdW5jdGlvbihuLFcsRCxiKXtmdW5jdGlvbiB2KGgpe3ZhciB4PSEoaC5zdGF0dXMhPT0yMDQmJmguc3RhdHVzIT09MjAwJiYhaC5yZXNwb25zZSk7aD17c3VjYzpgJHsreH1gLHJjOmguc3RhdHVzLGxiOmgucmVzcG9uc2U/LmJ5dGVMZW5ndGh8fDAscnQ6KCgwLGcuUikoKS1rKS50b0ZpeGVkKCksc2hvc3Q6Zy5JUChuKSx0cmlnZ2VyOld9O1hyKGgsbik7RCYmRChoKTtiJiYheCYmYihuZXcgZy5DaSgicGF0aHByb2JlLm5ldCIsaCkpfQp2YXIgaz0oMCxnLlIpKCk7Zy5lZChuLHtmb3JtYXQ6IlJBVyIscmVzcG9uc2VUeXBlOiJhcnJheWJ1ZmZlciIsdGltZW91dDoxRTQsb25GaW5pc2g6dixvblRpbWVvdXQ6dn0pfTsKWHI9ZnVuY3Rpb24obixXKXt3aW5kb3cucGVyZm9ybWFuY2U/LmdldEVudHJpZXNCeU5hbWUmJihXPXBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoVykpJiZXLmxlbmd0aCYmKFc9V1swXSxuLnBlZG5zPShXLmRvbWFpbkxvb2t1cEVuZC1XLnN0YXJ0VGltZSkudG9GaXhlZCgpLG4ucGVjb249KFcuY29ubmVjdEVuZC1XLmRvbWFpbkxvb2t1cEVuZCkudG9GaXhlZCgpLG4ucGVycXM9KFcucmVxdWVzdFN0YXJ0LVcuY29ubmVjdEVuZCkudG9GaXhlZCgpKX07CnRCPWZ1bmN0aW9uKG4pe3JldHVybiBHRChuLmlqLCFuLnBvbGljeS5mUixuLnBvbGljeS5RSCl9OwpmaXg9ZnVuY3Rpb24obixXKXt2YXIgRD1NYXRoLm1pbihuLnBvbGljeS5UNiwkcyhuLmlqKSk7bj10QihuKTtyZXR1cm4gVy1EKm59OwpyVj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIE1hdGguY2VpbChNYXRoLm1heChNYXRoLm1heChuLnBvbGljeS5abSxuLnBvbGljeS5UNCpEKSxNYXRoLm1pbihNYXRoLm1pbihuLnBvbGljeS5ISiwzMSpEKSxNYXRoLmNlaWwoVypEKSkpKXx8bi5wb2xpY3kuWm19OwpzYj1mdW5jdGlvbihuLFcsRCxiLHY9ITEpe2lmKG4ucG9saWN5LlE3KXJldHVybiBNYXRoLmNlaWwobi5wb2xpY3kuUTcqVyk7bi5wb2xpY3kudm4mJihiPU1hdGguYWJzKGIpKTtiLz1uLnBsYXliYWNrUmF0ZTt2YXIgaz0xL0dEKG4uaWopO0Q9TWF0aC5tYXgoLjkqKGItMyksJHMobi5paikrbi5pai5KLk4qaykvayouOC8oVytEKTtEPU1hdGgubWluKEQsYik7bi5wb2xpY3kuSFk+MCYmdiYmKEQ9TWF0aC5tYXgoRCxuLnBvbGljeS5IWSkpO3JldHVybiByVihuLEQsVyl9OwpOVz1mdW5jdGlvbihuKXtyZXR1cm4gdEIobikvbi5wbGF5YmFja1JhdGV9Owpwdj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9bi5wb2xpY3kucGxheWJhY2tTdGFydFBvbGljeS5yZXN1bWVNaW5SZWFkYWhlYWRQb2xpY3l8fFtdLHY9bi5wb2xpY3kucGxheWJhY2tTdGFydFBvbGljeS5zdGFydE1pblJlYWRhaGVhZFBvbGljeXx8W107bj1JbmZpbml0eTtXPVcmJmIubGVuZ3RoPjA/Yjp2O2ZvcihsZXQgayBvZiBXKVc9ay5taW5SZWFkYWhlYWRNc3x8MCxEPChrLm1pbkJhbmR3aWR0aEJ5dGVzUGVyU2VjfHwwKXx8bj5XJiYobj1XKTtyZXR1cm4gbjxJbmZpbml0eT9uLzFFMzpufTsKZnY9ZnVuY3Rpb24obixXLEQsYix2KXtpZighYi5pbmZvLmFaKXJldHVybiBELmxlbmd0aD09PTA/RC5wdXNoKGIpOihuPUQucG9wKCk/LmooYikpP0QucHVzaChuKTpELnB1c2goYiksdjsoRD1ELnBvcCgpPy5qKGIpKXx8KEQ9Yik7aWYoRC5pbmZvLk4pcmV0dXJuIG4ubG9nZ2VyJiZuLmxvZ2dlcih7aW5jb21wbGV0ZVNlZ21lbnQ6RC5pbmZvLmdhKCl9KSx2O3ZhciB7Zm9ybWF0SWQ6ayxqJDpoLHN0YXJ0VGltZU1zOngsY2xpcElkOkwscjk6ZX09bi5LKEQpO2I9e2NsaXBJZDpMLGZvcm1hdElkOmssc3RhcnRUaW1lTXM6eCxkdXJhdGlvbk1zOmUsQUM6aCxpOTpofTt2PVlzKFcsYi5zdGFydFRpbWVNcyk7RD12Pj0wP1dbdl06bnVsbDt2YXIgRztpZihHPUQpe0c9Yjt2YXIgcj12LE49RC5zdGFydFRpbWVNcytELmR1cmF0aW9uTXMsSD1HLnN0YXJ0VGltZU1zK0cuZHVyYXRpb25NcztpZihHLnN0YXJ0VGltZU1zLU4+bi5OKUc9ITE7ZWxzZSBpZihIdShuLEQuZm9ybWF0SWQsRy5mb3JtYXRJZCkpRC5kdXJhdGlvbk1zPQpNYXRoLm1heChOLEgpLUQuc3RhcnRUaW1lTXMsRC5pOT1NYXRoLm1heChELmk5LEcuaTkpLEc9ITA7ZWxzZSBpZihNYXRoLmFicyhELnN0YXJ0VGltZU1zLUcuc3RhcnRUaW1lTXMpPD1uLk4paWYoRC5kdXJhdGlvbk1zPkcuZHVyYXRpb25NcytuLk4pe3I9RC5mb3JtYXRJZDt2YXIgQT1ELkFDLHk9RC5pOTtELmZvcm1hdElkPUcuZm9ybWF0SWQ7RC5kdXJhdGlvbk1zPUcuZHVyYXRpb25NcztELkFDPUcuQUM7RC5pOT1HLmk5O0cuZm9ybWF0SWQ9cjtHLnN0YXJ0VGltZU1zPUg7Ry5kdXJhdGlvbk1zPU4tSDtHLkFDPUE7Ry5pOT15O0c9ITF9ZWxzZSBELmZvcm1hdElkPUcuZm9ybWF0SWQsRz0hMDtlbHNlIE4+Ry5zdGFydFRpbWVNcyYmKE4+SCYmKFcuc3BsaWNlKHIrMSwwLHtmb3JtYXRJZDpELmZvcm1hdElkLHN0YXJ0VGltZU1zOkgsZHVyYXRpb25NczpOLUgsQUM6Ry5pOSsxLGk5OkQuaTl9KSxuLmxvZ2dlciYmbi5sb2dnZXIoe3NwbGl0T2xkU3RhcnQ6RC5zdGFydFRpbWVNcz8udG9GaXhlZCgzKSwKc3BsaXRPbGRFbmQ6Tj8udG9GaXhlZCgzKSxzcGxpdE5ld1N0YXJ0Okcuc3RhcnRUaW1lTXM/LnRvRml4ZWQoMyksc3BsaXROZXdFbmQ6SD8udG9GaXhlZCgzKX0pKSxELmR1cmF0aW9uTXM9Ry5zdGFydFRpbWVNcy1ELnN0YXJ0VGltZU1zLEQuaTk9Ry5BQy0xKSxHPSExfUc/Yj1EOih2Kz0xLFcuc3BsaWNlKHYsMCxiKSk7RD0wO2ZvcihHPXYrMTtHPFcubGVuZ3RoO0crKyl7Tj1uO0g9V1tHXTtyPWI7QT1ILnN0YXJ0VGltZU1zK0guZHVyYXRpb25Nczt5PXIuc3RhcnRUaW1lTXMrci5kdXJhdGlvbk1zO3k+PUErTi5OP049ITA6eStOLk48SC5zdGFydFRpbWVNcz9OPSExOkh1KE4sSC5mb3JtYXRJZCxyLmZvcm1hdElkKT8oci5kdXJhdGlvbk1zPUEtci5zdGFydFRpbWVNcyxyLmk5PUguaTksTj0hMCk6KEguc3RhcnRUaW1lTXM9eSxILkFDPXIuaTkrMSxOPSExKTtpZighTilicmVhaztEKyt9RCYmVy5zcGxpY2UodisxLEQpO3JldHVybiB2fTsKWXM9ZnVuY3Rpb24obixXKXtuPWcuVzQobix7c3RhcnRUaW1lTXM6V30sKEQsYik9PkQuc3RhcnRUaW1lTXMtYi5zdGFydFRpbWVNcyk7CnJldHVybiBuPj0wP246LW4tMn07CkpCPWZ1bmN0aW9uKG4sVyxEKXtpZihuLmxvZ2dlcil7dmFyIGI9W107Zm9yKGxldCB2PTA7djxXLmxlbmd0aDt2Kyspe2xldCBrPVdbdl07ay5Faj8uc3RhcnRUaWNrcyYmYi5wdXNoKGBpLiR7ay5mb3JtYXRJZD8uaXRhZ31fc3QuJHtrLnN0YXJ0VGltZU1zfV9wc3N0LiR7ay5Faj8uc3RhcnRUaWNrc31fcHNkLiR7ay5Faj8ubDh9YCk7Yi5wdXNoKGBpLiR7ay5mb3JtYXRJZD8uaXRhZ31fc3QuJHtrLnN0YXJ0VGltZU1zfV9lLiR7ay5zdGFydFRpbWVNcytrLmR1cmF0aW9uTXN9X2QuJHtrLmR1cmF0aW9uTXN9X3NuLiR7ay5BQ31fZW4uJHtrLmk5fWApfW4ubG9nZ2VyKHtwOmAke0R9YCxicjpiLmpvaW4oIjsiKX0pfX07Ckk2PWZ1bmN0aW9uKG4sVyxEPSExKXtpZihuLlFFKXt2YXIgYj1uLlFFLlpGKCk7aWYoYi5sZW5ndGghPT0wKXtpZihuLlcmJlcpe3ZhciB2PW4uVyxrPXYuaW5mby5YOyFCUihiLGspJiZ2LmluZm8uSz4wJiYoMCxnLlIpKCktbi5EPDVFMyYmKG4ubG9nZ2VyJiZuLmxvZ2dlcih7ZGVuZDp2LmluZm8uZ2EoKX0pLGI9akcoYixrLGsrLjAxKSl9dj1bXTtmb3IodmFyIGg9az0wO2s8Yi5sZW5ndGgmJmg8bi5lVy5sZW5ndGg7KXt2YXIgeD1iLnN0YXJ0KGspO2xldCBOPWIuZW5kKGspO3ZhciBMPW4uZVdbaF0uc3RhcnRUaW1lTXMvMUUzO2xldCBIPShuLmVXW2hdLnN0YXJ0VGltZU1zK24uZVdbaF0uZHVyYXRpb25NcykvMUUzO2lmKEw8PU4mJkg+PXgpe2xldCBBPXsuLi5uLmVXW2hdfTt2YXIgZT1uLkt1LkouZ2V0KE1rKG4uZVdbaF0uZm9ybWF0SWQpKSxHPU1hdGgubWF4KEwseCk7eD1lLmluZGV4LlIzKEcrbi5OLzFFMyk7TD1lLmluZGV4LmdldFN0YXJ0VGltZSh4KTt2YXIgcj14KworKE1hdGguYWJzKEwtRyk+bi5OLzFFMyk7Rz1yK24uWDtyPWUuaW5kZXguZ2V0U3RhcnRUaW1lKHIpKjFFMztoIT09bi5KfHxXPyhBLkFDPUcsQS5zdGFydFRpbWVNcz1yKToobi5sb2dnZXImJm4ubG9nZ2VyKHtwRXZpY3Q6IjEiLG9nOkEuc3RhcnRUaW1lTXMsYWRqOkwqMUUzfSksQS5BQz14K24uWCxBLnN0YXJ0VGltZU1zPUwqMUUzKTt4PW4uVz8uaW5mby5XfHwxMTshRCYmaD09PW4uSiYmTjxIJiZILU48PXgqMS4wMSYmIShuLnBvbGljeS5TdyYmbi5RRSYmbi5RRS55dSgpKSYmKE49SCk7eD1NYXRoLm1pbihILE4pO0w9ZS5pbmRleC5SMyh4LW4uTi8xRTMpO0c9ZS5pbmRleC5qRShMKTtMLT0rKE1hdGguYWJzKEcteCk+bi5OLzFFMyk7eD1MK24uWDtlPWUuaW5kZXguakUoTCkqMUUzO0EuaTk9eDtBLmR1cmF0aW9uTXM9ZS1BLnN0YXJ0VGltZU1zO0EuQUM8PUEuaTkmJnYucHVzaChBKX1IPE4/aCs9MTprKz0xfW4uZVc9dn19fTsKSmFpPWZ1bmN0aW9uKG4pe3ZhciBXPVtdLEQ9Wy4uLm4uUDNdO24uZVcuZm9yRWFjaChrPT57Vy5wdXNoKHsuLi5rfSl9KTsKdmFyIGI9bi5UQy5aUCgpLHY9bi5KO2ZvcihsZXQgayBvZiBiKXY9ZnYobixXLEQsayx2KTtXLmZvckVhY2goaz0+e2suc3RhcnRUaW1lTXMmJihrLnN0YXJ0VGltZU1zKz1uLnRpbWVzdGFtcE9mZnNldCoxRTMpfSk7CnJldHVybntlVzpXLFAzOkR9fTsKSHU9ZnVuY3Rpb24obixXLEQpe3JldHVybiBXLml0YWchPT1ELml0YWd8fFcueHRhZ3MhPT1ELnh0YWdzPyExOm4uS3Uueld8fFcubG10PT09RC5sbXR9OwpaYj1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKCFXLlBKLk4oKSl7aWYoISh2PUQ9PT0wfHwhIVcuSi5sZW5ndGgmJlcuSlswXWluc3RhbmNlb2YgU24pKWE6e2lmKFcuSi5sZW5ndGgmJih2PVcuSlswXSx2IGluc3RhbmNlb2YgQUImJnYuSk8mJnYuYUkpKXt2PSEwO2JyZWFrIGF9dj0hMX12fHxuLnBvbGljeS5OfHxtaShXKTtyZXR1cm4gRH12YXIgaz1LdihXLEQpO2lmKCFpc05hTihrKSlyZXR1cm4gaztpZihuLmxvYWRlci5DNyhEKjFFMykpcmV0dXJuIEQ7di5BTT9uLnBvbGljeS5WSCYmKG49T2Iobi5sb2FkZXIsVyksVy5zTShEK24sITApKTooVy56aSgpLG4ubG9hZGVyLlgkKCExLGBzdGFfJHsrVy5QSi5pbmZvLmVTKCl9YCkpO3JldHVybiBiJiYobj1GWihiLlpGKCksRCksIWlzTmFOKG4pKT8oUHUoVyxuK0lpYix2KSxEKTpQdShXLEQsdil9OwpVYj1mdW5jdGlvbihuLFcsRCl7aWYoIW4ucG9saWN5Lmope249Vy5QSi5pbmRleDt2YXIgYj1XLk4uaiQ7bi5NSShiKXx8RCYmRC5qJD09PWI/KFcuUEQ9IW4uTUkoYiksVy5EPSFuLk1JKGIpKTooVy5QRD0hMCxXLkQ9ITApfX07CkViPWZ1bmN0aW9uKG4pe3ZhciBXPU1hdGgubWF4KG4udmlkZW9UcmFjay5TRSgpLG4uYXVkaW9UcmFjay5TRSgpKTt5ayhuLnZpZGVvVHJhY2spO3lrKG4uYXVkaW9UcmFjayk7bi5wb2xpY3kuanx8ajQobi5LdSk7bi5LdS5pc01hbmlmZXN0bGVzcyYmIW4ucG9saWN5LmomJihuLk49ITAsbi5KPTApO3ZhciBEPW4ubG9hZGVyO2lmKCFELnBvbGljeS5sbnx8RC5wb2xpY3kuR0MpRC5jdXJyZW50VGltZT1XO24uc2Vla2luZz0hMDtuLlc9bmV3IFk2O3JldHVybiBuLld9OwpvNj1mdW5jdGlvbihuKXt2YXIgVz1uLnZpZGVvVHJhY2suWCE9PS0xLEQ9bi5hdWRpb1RyYWNrLlghPT0tMTtpZighV3x8IUQpaWYoVz0hVyYmaVkobi52aWRlb1RyYWNrKSxEPSFEJiZpWShuLmF1ZGlvVHJhY2spLFd8fEQpaWYoRD1XP24udmlkZW9UcmFjazpuLmF1ZGlvVHJhY2ssVz1XP24uYXVkaW9UcmFjazpuLnZpZGVvVHJhY2ssRC5YPWlZKEQpLmluZm8uaiQsbi5wb2xpY3kuaiYmKFcuWD1pWShXKT8uaW5mby5UQygpfHxXLlgpLFcuWCE9PS0xKXtsZXQgYj1NYXRoLm1heChXLlBKLmluZGV4LmdldFN0YXJ0VGltZShXLlgpLEQuUEouaW5kZXguZ2V0U3RhcnRUaW1lKEQuWCkpO3VBKG4uS3UpJiZNYXRoLmFicyhiLXVBKG4uS3UpKT40MzJFMyYmS0t0KG4uS3UpO24uSiYmKGI9bi5KLG4uSj0wKTtnLm1LKCgpPT57bi5wb2xpY3kuanx8dVkobixiLDEwMil9KTsKbi5sb2FkZXIuVSgiaW5pdE1hbmlmZXN0bGVzc1N5bmMiLHtzdDpiLG9zdDpiK24ubG9hZGVyLlNXKCksYTpuLmF1ZGlvVHJhY2suWCx2Om4udmlkZW9UcmFjay5YfSk7bi5XJiYobi5XLnJlc29sdmUoYisuMSksbi5XPW51bGwpO24ucG9saWN5LmomJnVZKG4sYiwxMDIpfX07ClNJWj1mdW5jdGlvbihuLFcsRCl7aWYoIW4uaXNTZWVraW5nKCkpcmV0dXJuLTE7RD0oRD9uLnZpZGVvVHJhY2s6bi5hdWRpb1RyYWNrKS5QSi5pbmRleDt2YXIgYj1ELlIzKG4udGFyZ2V0VGltZSk7cmV0dXJuKEQuTUkobi5LdS5JdCl8fFcuaiQ9PT1uLkt1Lkl0KSYmYjxuLkt1Lkl0P24uS3UuTGYoKTotMX07CnVZPWZ1bmN0aW9uKG4sVyxEKXtuLk4mJm4udmlkZW9UcmFjay5YIT09LTEmJm4uYXVkaW9UcmFjay5YIT09LTEmJihuLk49ITEsbi50YXJnZXRUaW1lPVcsZFYobi5sb2FkZXIsVysuMSx7QTk6ITAscWQ6ImNodW5rU2VsZWN0b3JTeW5jaHJvbml6ZSIscWE6ITAsc2Vla1NvdXJjZTpEfSkpfTsKQWEyPWZ1bmN0aW9uKG4sVyxELGIpe2lmKG4ucG9saWN5LmopIWJ8fCFuLk4mJm4ucG9saWN5LkJWfHxnLm1LKCgpPT57bzYobil9KTsKZWxzZXtpZihuLmlzU2Vla2luZygpJiZuLnRhcmdldFRpbWUpe2xldCBrPVNJWihuLFcsRCk7aWYoayE9PS0xKXtuLnZpZGVvVHJhY2suUEQ9ITE7bi5hdWRpb1RyYWNrLlBEPSExO24uTj0hMDtuLko9MDtnLm1LKCgpPT57bi5sb2FkZXIuVSgic2Vla3JlYXNvbiIse3JlYXNvbjoiYmVoaW5kTWluU3EiLHRndDprfSk7dVkobixrKX0pOwpyZXR1cm59fUQ/bi52aWRlb1RyYWNrLkQ9ITE6bi5hdWRpb1RyYWNrLkQ9ITE7dmFyIHY9IW4uTjtLdihuLnZpZGVvVHJhY2ssbi50YXJnZXRUaW1lKT49MCYmS3Yobi5hdWRpb1RyYWNrLG4udGFyZ2V0VGltZSk+PTAmJnY/KG4uUEQoKSYmbi5sb2FkZXIuVSgiaXRlcmF0aXZlU2Vla2luZyIse3N0YXR1czoiZG9uZSIsY291bnQ6bi5zZWVrQ291bnR9KSxuLnZpZGVvVHJhY2suUEQ9ITEsbi5hdWRpb1RyYWNrLlBEPSExKTpiJiZnLm1LKCgpPT57aWYobi5OfHwhbi5wb2xpY3kuQlYpbzYobik7ZWxzZXt2YXIgaz1XLnN0YXJ0VGltZSxoPVcuZHVyYXRpb247aWYoIW4ucG9saWN5Lmope3ZhciB4PW4udmlkZW9UcmFjay5YIT09LTEmJm4uYXVkaW9UcmFjay5YIT09LTEsTD0hbi52aWRlb1RyYWNrLkQmJiFuLmF1ZGlvVHJhY2suRDsoRD9uLnZpZGVvVHJhY2suUEQ6bi5hdWRpb1RyYWNrLlBEKSYmeCYmTCYmKG4udGFyZ2V0VGltZT49ayYmbi50YXJnZXRUaW1lPGsraCsuMT8oKEQ/bi52aWRlb1RyYWNrOgpuLmF1ZGlvVHJhY2spLlBEPSExLG4uUEQoKXx8KG4ubG9hZGVyLlUoIml0ZXJhdGl2ZVNlZWtpbmciLHtzdGF0dXM6ImRvbmUiLHRhcmdldDprLG9yaWdpbmFsVGltZTprK24ubG9hZGVyLlNXKCksY291bnQ6bi5zZWVrQ291bnR9KSxuLnNlZWtDb3VudD0wKSk6bi5zZWVrQ291bnQ8OD8obi5zZWVrQ291bnQrKyxuLmxvYWRlci5VKCJpdGVyYXRpdmVTZWVraW5nIix7c3RhdHVzOiJpbnByb2dyZXNzIixjb3VudDpuLnNlZWtDb3VudCx0YXJnZXQ6bi50YXJnZXRUaW1lLGFjdHVhbDprLGR1cmF0aW9uOmgsaXNWaWRlbzpEfSksbi5zZWVrKG4udGFyZ2V0VGltZSx7fSkpOihuLmxvYWRlci5VKCJpdGVyYXRpdmVTZWVraW5nIix7c3RhdHVzOiJpbmNvbXBsZXRlIixjb3VudDpuLnNlZWtDb3VudCx0YXJnZXQ6bi50YXJnZXRUaW1lLGFjdHVhbDprfSksbi5zZWVrQ291bnQ9MCxuLnZpZGVvVHJhY2suUEQ9ITEsbi5hdWRpb1RyYWNrLlBEPSExLGRWKG4ubG9hZGVyLGsrLjEse0E5OiEwLHFkOiJjaHVua1NlbGVjdG9yU3luY2hyb25pemVNZWRpYSIsCnFhOiEwfSkpKX19fSl9fTsKVEQ9ZnVuY3Rpb24obixXLEQpe3pEKG4uaWosVyk7bi5EdCYmKG4uRHQuYWRkKE1hdGguY2VpbChXKS1NYXRoLmNlaWwobi5LKSksbi5EdC5hZGQoTWF0aC5tYXgoMCxNYXRoLmNlaWwoRC8xMDI0KS1NYXRoLmNlaWwobi5YLzEwMjQpKSkpO3ZhciBiPVctbi5LLHY9RC1uLlg7bi5VNT12O24ualc9TWF0aC5tYXgobi5qVyx2LyhiKy4wMSkqMUUzKTtuLks9VztuLlg9RDtuLkhKJiZEPm4uSEomJmxZKG4pfTsKbFk9ZnVuY3Rpb24obil7bi5udT1NYXRoLm1heChuLm51LG4uWC1uLlJ0KTtuLlZRPU1hdGgubWF4KG4uVlEsbi5LLW4uWmgpO24uSEo9MH07Cm13cj1mdW5jdGlvbihuLFcpe24udXJsPVc7d2luZG93LnBlcmZvcm1hbmNlJiYhcGVyZm9ybWFuY2Uub25yZXNvdXJjZXRpbWluZ2J1ZmZlcmZ1bGwmJihwZXJmb3JtYW5jZS5vbnJlc291cmNldGltaW5nYnVmZmVyZnVsbD0oKT0+e3BlcmZvcm1hbmNlLmNsZWFyUmVzb3VyY2VUaW1pbmdzKCl9KX07CmpuPWZ1bmN0aW9uKG4pe24uaXNBY3RpdmUmJihuLmlzQWN0aXZlPSExKX07CkN2PWZ1bmN0aW9uKG4pe24uZSQ9bi5OK24uc25hcHNob3QuZGVsYXkqMUUzO24udlg9ITF9OwpGcj1mdW5jdGlvbihuLFcsRCl7aWYoIW4uZGlzYWJsZVJlY29yZGluZyl7Vz1NYXRoLm1heChXLC4wMSk7dmFyIGI9bi5xWT9NYXRoLm1heChXLEQvbi5xWSk6Vyx2PW4uaWouSi5XO3YmJihiPVcsbi5xWSYmKGI9TWF0aC5tYXgoVyxEL24ucVkqdikpKTtCdShuLmlqLFcsRCxiKX19Owp3Vj1mdW5jdGlvbihuKXt2YXIgVz1uLkZGfHxuLkdDO3JldHVybiBXP24uc25hcHNob3QuZGVsYXkrTWF0aC5taW4obi5POCwobi5jSi1uLnR3KS8xRTMpK1c6bi5zNX07Ck1XPWZ1bmN0aW9uKG4pe3JldHVybihuLlktbi5OKS8xRTN9OwpRaz1mdW5jdGlvbihuLFcpe2lmKG4uaG4mJm4uaiQhPT12b2lkIDAmJm4uWkEhPT12b2lkIDApe3ZhciBEPU1hdGgsYj1ELm1pbix2PW4uVjt2YXIgaz1uLmhuO3ZhciBoPW4uTjtpZihSNihrLG4uaiQpKWs9VztlbHNle3ZhciB4PTA7ay50SSYmKHg9LjIpO2s9aCsoay5POCt4KSoxRTN9bi5WPWIuY2FsbChELHYsayk7RD1NYXRoO2I9RC5taW47dj1uLk87az1uLmhuO2g9bi5OO3g9S2EyKGssbi5qJCxuLlpBKTt4IT09MiYmKFc9eD9XOmgray5POCoxRTMsay50SSYmKFcrPWsuTzgqMUUzKSk7bi5PPWIuY2FsbChELHYsVyk7bi5WPD1uLk4/Q3Yobik6KG4uZSQ9bi5WLG4udlg9ITApfX07ClZrPWZ1bmN0aW9uKG4sVyl7aWYoVysxPD1uLnRvdGFsTGVuZ3RoKXt2YXIgRD1yZChuLFcpO0Q9RDwxMjg/MTpEPDE5Mj8yOkQ8MjI0PzM6RDwyNDA/NDo1fWVsc2UgRD0wO2lmKEQ8MXx8IShXK0Q8PW4udG90YWxMZW5ndGgpKXJldHVyblstMSxXXTtpZihEPT09MSluPXJkKG4sVysrKTtlbHNlIGlmKEQ9PT0yKUQ9cmQobixXKyspLG49cmQobixXKyspLG49KEQmNjMpKzY0Km47ZWxzZSBpZihEPT09Myl7RD1yZChuLFcrKyk7dmFyIGI9cmQobixXKyspO249cmQobixXKyspO249KEQmMzEpKzMyKihiKzI1NipuKX1lbHNlIGlmKEQ9PT00KXtEPXJkKG4sVysrKTtiPXJkKG4sVysrKTtsZXQgdj1yZChuLFcrKyk7bj1yZChuLFcrKyk7bj0oRCYxNSkrMTYqKGIrMjU2Kih2KzI1NipuKSl9ZWxzZSBEPVcrMSxuLmZvY3VzKEQpLFhhKG4sRCw0KT9uPXFEKG4pLmdldFVpbnQzMihELW4uVywhMCk6KGI9cmQobixEKzIpKzI1NipyZChuLEQrMyksbj1yZChuLEQpKzI1NioocmQobixEKzEpKwoyNTYqYikpLFcrPTU7cmV0dXJuW24sV119OwpjdT1mdW5jdGlvbihuKXtyZXR1cm4gZy5keihuLmluZm8uQXcsVz0+Vy50eXBlPT09Myl9OwpDbmk9YXN5bmMgZnVuY3Rpb24obixXKXtyZXR1cm4gVz8obmV3IHVvKG4uSikpLmVuY3J5cHQoVyxuLk4pOld9OwpGSTE9YXN5bmMgZnVuY3Rpb24obixXKXtyZXR1cm4gVz9hd2FpdCAobmV3IHVvKG4uSikpLmRlY3J5cHQoVyxuLk4pOld9OwphNj1mdW5jdGlvbihuKXtuLlcucmVhZCgpLnRoZW4obi5ZLG4ub25FcnJvcikudGhlbih2b2lkIDAsZy5xZyl9OwpXcD1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKGdaKDYsMTE3MCxuLkFPKSlyZXR1cm4gbmV3IE9fcihuLEQpO249bi5XRCgpO3JldHVybiBiP3lXKCk/bmV3IG4zKG4sVyxELHYpOm5ldyBQSGoobixXLEQsdik6bmV3IFpfQyhuLEQsdil9OwpEeD1mdW5jdGlvbihuLFcsRCl7bi5OJiYoZTUobi5OLFcpLFc9bi5OLG4uTj1udWxsKTt2YXIgYj0wLHY9MDtmb3IobGV0IEwgb2Ygbi5Bdyl7aWYoTC5yYW5nZSYmYitMLko8PW4uSil7Yis9TC5KO2NvbnRpbnVlfWlmKGhKKEwpJiYhRCYmbi5KK1cudG90YWxMZW5ndGgtdjxiK0wuSil7KHtZOTpuLk59PVcuc3BsaXQodikpO2JyZWFrfWE6e3ZhciBrPW47dmFyIGg9TCx4PW4uSi1iO2xldCBlPVcudG90YWxMZW5ndGgtdjtoLnJhbmdlJiYoZT1NYXRoLm1pbihoLkoteCxlKSk7aD1HUChoLGguTit4LGUsaC5yYW5nZT9oLk4reCtlPT09aC5yYW5nZS5sZW5ndGg6ISFEKTt4PWdkKFcsdixlKTtoPW5ldyBiOChoLHgpO2lmKGsualMubGVuZ3RoJiYoeD1rLmpTW2sualMubGVuZ3RoLTFdLmooaCkpKXtrLmpTW2sualMubGVuZ3RoLTFdPXg7az1lO2JyZWFrIGF9ay5qUy5wdXNoKGgpO2s9ZX1uLkorPWs7dis9aztiKz1MLko7aWYodj09PVcudG90YWxMZW5ndGgpYnJlYWt9fTsKYnU9ZnVuY3Rpb24obil7cmV0dXJuIFVZKG4ubm4sUjAoNjQsMzUzNixuLlNPLkFPKSl9Owp2cD1mdW5jdGlvbihuKXtuLlhiLk89KDAsZy5SKSgpO249YnUobik7bi5qPSgwLGcuUikoKTtuLnN0YXJ0ZWQrPTF9OwprWj1mdW5jdGlvbihuLFcsRCxiLHY9ITEpe24udGltaW5nLkhEKCgwLGcuUikoKSxXLEQpO1c9bi5YYjtXLko9MDtXLlY9MDtXLkQ9MDt6aihidShuKSx2KTtiJiYoYj1idShuKSxiLlcrPTEpO24uVWo/Lk8obi5TTy5BTyl9OwpoVT1mdW5jdGlvbihuLFc9ITEpe2lmKG4ubGFzdEVycm9yPT09InVtcC5zcHNyZWplY3RmYWlsdXJlIiluLnRpbWluZy5iZHx8d0Eobi5YYiwhMSxuLlNPLG4ucG9saWN5LG4ubm4pO2Vsc2V7aWYobi5sYXN0RXJyb3I9PT0ibmV0LnRpbWVvdXQiKW4udGltaW5nLnlFKCgwLGcuUikoKSk7ZWxzZXt2YXIgRD1uLnRpbWluZztURChELCgwLGcuUikoKSxELlgpfW4ubGFzdEVycm9yPT09Im5ldC5ub2NvbnRlbnQiPysrbi5YYi5EOigoRD1uLmxhc3RFcnJvcj09PSJuZXQudGltZW91dCJ8fG4ubGFzdEVycm9yPT09Im5ldC5jb25uZWN0Inx8bi5sYXN0RXJyb3I9PT0ibmV0LmNsb3NlZCIpJiYhZ1ooNiwxMTcwLG4uU08uQU8pP29FaShidShuKSxXKTp5ZihidShuKSxXKSxuLnRpbWluZy5iZHx8d0Eobi5YYixELG4uU08sbi5wb2xpY3ksbi5ubikpfW4uWWEudlYoNSl9Owp4Wj1mdW5jdGlvbihuLFcsRCxiPSExLHY9ITEsaz0hMSl7cmV0dXJuIFc+PTQwMHx8az8obi5sYXN0RXJyb3I9az8icHJvYmUubmV0LmJhZHN0YXR1cyI6Im5ldC5iYWRzdGF0dXMiLCEwKTp2PyhuLmxhc3RFcnJvcj0idW1wLnNwc3JlamVjdGZhaWx1cmUiLCEwKTpEfHxiPyExOihuLmxhc3RFcnJvcj1XPT09MjA0PyJuZXQubm9jb250ZW50IjoibmV0LmNvbm5lY3QiLCEwKX07CkwzPWZ1bmN0aW9uKG4sVyl7aWYobi5wb2xpY3kuYiQpcmV0dXJuITE7dmFyIEQ9Vy5nZXRSZXNwb25zZUhlYWRlcigiY29udGVudC10eXBlIiksYj1XLmlpKCk7bj0hYnx8Yjw9bi5wb2xpY3kub2M7cmV0dXJuKCFXLkdwKCl8fCFEfHxELmluZGV4T2YoInRleHQvcGxhaW4iKSE9PS0xKSYmbn07CmVWPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9IiI7Vz1XLnNOKCk7Vy50b3RhbExlbmd0aDw9bi5wb2xpY3kub2MmJihuPXRSKFcpLG49cFIobiksRD1nWChuKT9uOiIiKTtyZXR1cm4gRH07CmdDPWZ1bmN0aW9uKG4pe3ZhciBXPW4udGltaW5nLkQoKTtXLnNob3N0PVIwKDk2LDM1Njgsbi5TTy5BTyk7bi5wb2xpY3kuQ3UmJm4ucG9saWN5LnZYJiYoVy5jc3JjPTEpO3JldHVybiBXfTsKVXdiPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4/Lm1heFdpZHRoPlc/Lm1heFdpZHRofHxuPy5tYXhIZWlnaHQ+Vz8ubWF4SGVpZ2h0fTsKeWFqPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIFcua2V5cygpKXtsZXQgYj1XLmdldChEKTtpZihiLmxlbmd0aD09PTApY29udGludWU7Zy5iZihiLChoLHgpPT54Lm1heEZyYW1lcmF0ZS1oLm1heEZyYW1lcmF0ZSk7CmxldCB2PVtiWzBdXSxrPTA7Zm9yKGxldCBoPTE7aDxiLmxlbmd0aDtoKyspVXdiKGJbaF0sdltrXSkmJih2LnB1c2goYltoXSksaysrKTtuPW4uY29uY2F0KHYpfXJldHVybiBufTsKaV9iPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W107Zm9yKGxldCBiIG9mIFcpVz1FdGpbYl18fDAsbi5OJiZXPm4uTnx8RC5wdXNoKGIpO3JldHVybiBEfTsKWHU9ZnVuY3Rpb24obixXLEQpe3ZhciBiPXVkWltuXXx8W107RC5TKCJodG1sNV9zaG9ydHNfb25lc2llX21pc21hdGNoZWRfZml4IikmJihiPW90dFtuXXx8W10pO1cucHVzaCguLi5iKTtELlMoImh0bWw1X2Vhcmx5X21lZGlhX2Zvcl9kcm0iKSYmVy5wdXNoKC4uLihkd3Rbbl18fFtdKSl9Owp6eFM9ZnVuY3Rpb24obixXKXt2YXIgRD1WeihuKSxiPW4uRygpLHY9Yi5XO2I9Yi5TKCJodG1sNV9zaG9ydHNfb25lc2llX21pc21hdGNoZWRfZml4Iik7dmFyIGs9bi5OUCgpO2lmKGIpe2lmKCF2Lk4pe2lmKGsmJnFxKXJldHVybiBxcTtpZihHSSlyZXR1cm4gR0l9fWVsc2UgaWYoR0kmJiF2Lk4pcmV0dXJuIEdJO3ZhciBoPVtdLHg9W10sTD17fSxlPXRVLmNvbmNhdCgkWik7YiYmKGU9dFUuY29uY2F0KHJDKSk7bi5TKCJodG1sNV9lYXJseV9tZWRpYV9mb3JfZHJtIikmJihlPWUuY29uY2F0KHNHKSxuLlMoImFsbG93X3ZwOV8xMDgwcF9tcV9lbmMiKSYmZS5wdXNoKE5xKSk7dmFyIEc9Wy4uLnAzXTtuLlMoImh0bWw1X2lhbWZfYXVkaW9fb25lc2llX2ZtdCIpJiZHLnB1c2goWyI3NzMiXSk7Zm9yKHZhciByIG9mIGUpe2U9ITE7Zm9yKGxldCBIIG9mIHIpe3ZhciBOPVNNKEgsayYmYik7aWYoIU58fCFOLnZpZGVvKWNvbnRpbnVlO2lmKE4uTVcoKSYmIUQuZSQmJk4udmlkZW8ucXVhbGl0eU9yZGluYWw+CkQublMpY29udGludWU7bGV0IEE9Zy5kTShuLkcoKS5leHBlcmltZW50cywiaHRtbDVfZHJtX2J5dGVyYXRlX3NvZnRfY2FwIik7aWYoQT4wJiZVTihOKSYmTi5Ocz5BKWNvbnRpbnVlO2lmKGUpe2gucHVzaChIKTtYdShILGgsbik7Y29udGludWV9Tj1zRChELE4sdik7Tj09PSEwPyhlPSEwLGgucHVzaChIKSxYdShILGgsbikpOkxbSF09Tn19Zm9yKGxldCBIIG9mIEcpZm9yKGxldCBBIG9mIEgpe3I9QXUoQSk7aWYoIXJ8fCFyLmF1ZGlvfHwhbi5TKCJodG1sNV9vbmVzaWVfNTFfYXVkaW8iKSYmci5WKCkpY29udGludWU7cj1zRChELHIsdik7aWYocj09PSEwKXt4LnB1c2goQSk7WHUoQSx4LG4pO2JyZWFrfWVsc2UgTFtBXT1yfWlmKCFuLlMoImh0bWw1X2VuYWJsZV9hdWRpb19xdWFsaXR5X3NldHRpbmciKSl7bj1bIjE0MSIsIjc3NCJdO2ZvcihsZXQgSCBvZiBuKXguaW5jbHVkZXMoSCkmJihnLkZJKHgsSCksTFtIXT0iYmxraHFhIil9RC5XJiZXKCJvcmZtdHMiLEwpO2lmKGIpcmV0dXJuIHYuTiYmCih2Lk49ITEscXE9R0k9dm9pZCAwKSxrP3FxPXt2aWRlbzpoLGF1ZGlvOnh9OkdJPXt2aWRlbzpoLGF1ZGlvOnh9O0dJPXt2aWRlbzpoLGF1ZGlvOnh9O3YuTj0hMTtyZXR1cm4gR0l9OwpqRk09ZnVuY3Rpb24obil7dmFyIFc9e30sRD1uLkwsYj1uLnlRLHY9bi5paixrPUQuZ2V0VmlkZW9EYXRhKCksaD1wNygwKTt2YXIgeD1ELmdldFZpc2liaWxpdHlTdGF0ZSgpO2IuUygiaHRtbDVfZW5hYmxlX2F1ZGlvX3F1YWxpdHlfc2V0dGluZyIpJiYoVy5pQj1iLmlCKTtoJiYoVy5pSD1oLFcubGFzdE1hbnVhbERpcmVjdGlvbj1Sc3goKSxoPVVQKCl8fDAsaD4wJiYoaD0oYi5TKCJodG1sNV91c2VfZGF0ZV9ub3dfZm9yX2xvY2FsX3N0b3JhZ2UiKT9EYXRlLm5vdygpOigwLGcuUikoKSktaCxiLlMoImh0bWw1X3VzZV9kYXRlX25vd19mb3JfbG9jYWxfc3RvcmFnZSIpP2g+MCYmKFcudGltZVNpbmNlTGFzdE1hbnVhbEZvcm1hdFNlbGVjdGlvbk1zPWgpOlcudGltZVNpbmNlTGFzdE1hbnVhbEZvcm1hdFNlbGVjdGlvbk1zPWgpKTtpZih2Lk98fGIuUygiaHRtbDVfc2Ficl91Z2Nfdm9kX3dlYl9lbWJlZGRlZF9jbGllbnRfZGVmYXVsdF9iYW5kd2lkdGhfb25faXBob25lIikmJnc4KWg9CmIuUygiaHRtbDVfZGlzYWJsZV9iYW5kd2lkdGhfY29mYWN0b3JzX2Zvcl9zYWJyX2xpdmUiKT8hIW4ub1o/LmZSOiExLFcuSSQ9R0QodiwhaCk7dmFyIEw9TkcubWVkaXVtLGU9TWF0aC5mbG9vcihMKjE2LzkpLEc9ay5OUCgpfHwoay5OJiZrLlcmJmsuVy52aWRlb0luZm9zLmxlbmd0aCE9PTA/ay5XLnZpZGVvSW5mb3NbMF0uaXNWZXJ0aWNhbCgpOiExKTtoPUc/TDplO2U9Rz9lOkw7Rz1ELlNpKCk7TD1HLndpZHRoO0c9Ry5oZWlnaHQ7Vy5zQT1NYXRoLm1heChMLGgpO1cuWUE9TWF0aC5tYXgoRyxlKTtiLlMoImh0bWw1X2VuYWJsZV9jbGllbnRfdmlld3BvcnRfc2l6ZV9sb2dnaW5nIikmJmIuV1goKSYmKGg9RC5NaCgpLEQuVSgiY3Z3Iix7dzpMLGg6Ryxjdnc6Vy5zQSxjdmg6Vy5ZQSxjdnU6aC5OfSkpO1cudmlzaWJpbGl0eT14O1cuWkk9Zy52SSgpO1cuZnE9RC5sNSgpKjFFMzt4PW4uTC52JCgpO1cuTk89e2RlZmF1bHRQb2xpY3k6eD8uRHI/Lk58fDAsc21vb3RoOng/LnpOPy5OfHwKMCx2aXNpYmlsaXR5Ong/LmN3Py5OfHwwLE9iOng/LkFFPy5OfHwwLHBlcmZvcm1hbmNlOng/LmlQPy5OfHwwLHNwZWVkOng/LlhOPy5OfHwwfTtXLlROPXg/LlFZPy5OfHwwO2lmKG4uaHF8fG4uQ3gmJiFuLmdEKWg9Yi5adCgpLk4uUVEobGlaKT8/MCxoPjAmJiFXLlROJiYoTD0oeD8uRHJ8fFlaKS5jb21wb3NlKG5ldyBiMygwLGgsITEsInAiKSksVy5OTy5kZWZhdWx0UG9saWN5PUwuTixELlUoImxzbCIse3FjOmh9KSksay5saXZlUHJlbG9hZCYmay5TKCJodG1sNV9hbGxvd19tdWx0aXZpZXdfdGlsZV9wcmVsb2FkIikmJiFrLkcoKS5adCgpLk4uUVEoSHApJiYoeD0oeD8uRHJ8fFlaKS5jb21wb3NlKG5ldyBiMygwLDI0MCwhMSwicCIpKSxXLk5PLmRlZmF1bHRQb2xpY3k9eC5OKTt4PW4uaHF8fGsuWjk/W3t0cmFja1R5cGU6MSxpc0hkcjohMX0se3RyYWNrVHlwZToyLGlzSGRyOiExfSx7dHJhY2tUeXBlOjIsaXNIZHI6ITB9LHt0cmFja1R5cGU6Myxpc0hkcjohMX0se3RyYWNrVHlwZTozLAppc0hkcjohMH0se3RyYWNrVHlwZTo0LGlzSGRyOiExfSx7dHJhY2tUeXBlOjQsaXNIZHI6ITB9LHt0cmFja1R5cGU6NSxpc0hkcjohMX0se3RyYWNrVHlwZTo1LGlzSGRyOiEwfV06W3t0cmFja1R5cGU6MSxpc0hkcjohMX0se3RyYWNrVHlwZToyLGlzSGRyOiExfSx7dHJhY2tUeXBlOjIsaXNIZHI6ITB9XTtXLmtjPW4uYXV0aG9yaXplZEZvcm1hdHMmJm4uYXV0aG9yaXplZEZvcm1hdHMubGVuZ3RoPjA/e2F1dGhvcml6ZWRGb3JtYXRzOm4uYXV0aG9yaXplZEZvcm1hdHN9OnthdXRob3JpemVkRm9ybWF0czp4fTtuLnNhYnJMaWNlbnNlQ29uc3RyYWludCYmKFcua2Muc2FickxpY2Vuc2VDb25zdHJhaW50PW4uc2FickxpY2Vuc2VDb25zdHJhaW50KTtpZihiLlMoImh0bWw1X29uZXNpZV9tZWRpYV9jYXBhYmlsaXRpZXMiKXx8TEEoaykpVy5ZZj0zO2lmKGIuUygiaHRtbDVfb25lc2llX2F1ZGlvX29ubHlfcGxheWJhY2siKSYmUlEoayl8fG4ub1o/Lk4mJmxvKGIpPT09IlRWSFRNTDVfQVVESU8iKVcuWWY9CjE7bi5vWj8ueUUmJm4ub0cmJihXLllmPVcuWWY9PT12b2lkIDA/NzpXLllmfDQpO3g9ay5lJD9rLmUkOlZ6KGspO2lmKGIuUygiaHRtbDVfb25lc2llX21lZGlhX2NhcGFiaWxpdGllcyIpKXtoPWIuVztMPVtdO2U9W107Rz1iLlMoImh0bWw1X3Nob3J0c19vbmVzaWVfbWlzbWF0Y2hlZF9maXgiKTt2YXIgcj1rLk5QKCksTj10VS5jb25jYXQoJFopO0cmJihOPXRVLmNvbmNhdChyQykpO2IuUygiaHRtbDVfZWFybHlfbWVkaWFfZm9yX2RybSIpJiYoTj1OLmNvbmNhdChzRyksYi5TKCJhbGxvd192cDlfMTA4MHBfbXFfZW5jIikmJk4ucHVzaChOcSkpO3ZhciBIPVsuLi5wM107Yi5TKCJodG1sNV9pYW1mX2F1ZGlvX29uZXNpZV9mbXQiKSYmSC5wdXNoKFsiNzczIl0pO2Zvcih2YXIgQSBvZiBOKWZvcih2YXIgeSBvZiBBKXtOPVNNKHksciYmRyk7aWYoIU58fCFOLnZpZGVvKWNvbnRpbnVlO2xldCBRPWcuZE0oYi5leHBlcmltZW50cywiaHRtbDVfZHJtX2J5dGVyYXRlX3NvZnRfY2FwIik7CmlmKCEoUT4wJiZVTihOKSYmTi5Ocz5RKSYmc0QoeCxOLGgpPT09ITApe0wucHVzaCh7dmlkZW9Db2RlYzpmM1tZZ1t5XV0sbWF4V2lkdGg6Ti52aWRlby53aWR0aCxtYXhIZWlnaHQ6Ti52aWRlby5oZWlnaHQsbWF4RnJhbWVyYXRlOk4udmlkZW8uZnBzfSk7YnJlYWt9fWZvcih2YXIgVCBvZiBIKWZvcih2YXIgeiBvZiBUKWlmKChBPUF1KHopKSYmQS5hdWRpbyYmKGIuUygiaHRtbDVfb25lc2llXzUxX2F1ZGlvIil8fCFBLlYoKSkmJnNEKHgsQSxoKT09PSEwKXtlLnB1c2goe2F1ZGlvQ29kZWM6SlVbWWdbel1dLG51bUNoYW5uZWxzOkEuYXVkaW8ubnVtQ2hhbm5lbHN9KTticmVha31XLm1lZGlhQ2FwYWJpbGl0aWVzPXt2aWRlb0Zvcm1hdENhcGFiaWxpdGllczpMLGF1ZGlvRm9ybWF0Q2FwYWJpbGl0aWVzOmV9fWlmKG4ub1o/LkR0KCkpe0E9bi5JODt5PW4ubGw7aD1uLm9aPy5OcztUPVtdO3o9W107TD1uZXcgTWFwO2U9KGU9ay5KKT9lLml0YWc6dm9pZCAwO0c9ay5XPy52aWRlb0luZm9zOwpHPUc/Lmxlbmd0aD9HW0cubGVuZ3RoLTFdLml0YWc6dm9pZCAwO2U9IVZUKCkmJmUhPT12b2lkIDAmJkE/LmluY2x1ZGVzKE51bWJlcihHKSk7Rz1rLnl3Lk47Zm9yKHZhciBDIG9mIEcudmFsdWVzKCkpQy5lUz96LnB1c2goe2F1ZGlvQ29kZWM6SlVbQy5JQl0sbnVtQ2hhbm5lbHM6Qy5udW1DaGFubmVscyxzcGF0aWFsQ2FwYWJpbGl0eUJpdG1hc2s6VFhNW0MuSUJdfSk6KEc9ZjNbQy5JQl0scj1DLm1heEJpdHJhdGVCcHN8fDAsSD1oP2gqODowLHI9e3ZpZGVvQ29kZWM6RyxtYXhXaWR0aDp5JiYhZT84NTQ6Qy5tYXhXaWR0aHx8MCxtYXhIZWlnaHQ6eSYmIWU/NDgwOkMubWF4SGVpZ2h0fHwwLG1heEZyYW1lcmF0ZTpDLm1heEZyYW1lcmF0ZXx8MCxpczEwQml0U3VwcG9ydGVkOkMuejl8fCExLG1heEJpdHJhdGVCcHM6SCYmcj9NYXRoLm1pbihILHIpOkh8fHIsZWZmaWNpZW50OiEwfSxHPWAke0d9XyR7Qy56OX1gLEg9TC5nZXQoRyl8fFtdLEgucHVzaChyKSxMLnNldChHLEgpKTsKVD15YWooVCxMKTtDPUEmJiFlP1suLi5BXTpbXTtrLlMoImh0bWw1X3NzZmZfZGVueWxpc3Rfb3B1c19sb3ciKSYmQy5wdXNoKDI0OSwzNTApO1Z6KGspO1cubWVkaWFDYXBhYmlsaXRpZXM9e3ZpZGVvRm9ybWF0Q2FwYWJpbGl0aWVzOlQsYXVkaW9Gb3JtYXRDYXBhYmlsaXRpZXM6eixoZHJNb2RlQml0bWFzazozLHBlclBsYXliYWNrQXR0cmlidXRlczpDLmxlbmd0aD97aXRhZ0RlbnlsaXN0OkN9Ont9fX1XLnVxPVZUKCk7bi5vWj8uTiYmKFcuYnY9eC5idixXLm5TPW4ub1o/Lm5TKTtiLnlFJiYoVy5FYj1iLnlFKTtXLm5SPW4ublI7Vy5Zcz1uLllzO1cuZXE9bi5lcTtXLmo0PW4uajQ7bi5weiYmKFcubHE9KDAsZy5SKSgpLW4ucHopO24uSiQmJihXLkokPW4uSiQpO05zfHwoVy5aQz0hMCk7Qz0kcyh2KSoxRTM7Qz4wJiYoVy5YRD1DKTtEPUQuZ2V0UGxheWJhY2tSYXRlKCk7RCE9PTEmJihXLnBsYXliYWNrUmF0ZT1EKTtuLm9aPy5MQiYmbi5HNyYmKFcua0U9bi5rRSxXLlVtPW4uVW0sClcuRzc9bi5HNyk7WWQoKT09PTEmJihXLms4PTEpO2IuUygiaHRtbDVfc2Ficl9mb3JjZV9wcm94aW1hIikmJihXLlZYPTEpO0Q9Zy5kTShiLmV4cGVyaW1lbnRzLCJodG1sNV9zYWJyX2ZvcmNlX21heF9uZXR3b3JrX2ludGVycnVwdGlvbl9kdXJhdGlvbl9tcyIpO1cucDY9RD4wP0Q6di5pbnRlcnJ1cHRpb25zWzBdfHwwO24ub1o/LllaJiYoVy5yMD1uLnIwKTtiLkhKJiYoVy5hdWRpb1RyYWNrSWQ9Yi5ISik7ay5aaCgpJiYhVy5hdWRpb1RyYWNrSWQmJihiLlMoImh0bWw1X2ZpbGxfZGVmYXVsdF9tb3NhaWNfYXVkaW9fdHJhY2tfaWQiKXx8KG49bGooayksVy5hdWRpb1RyYWNrSWQ9biksaz8uVSgibWlzc3Rya2NoZyIseyJkZWZhdWx0IjpXLmF1ZGlvVHJhY2tJZH0pKTtpZihuPW5hdmlnYXRvci5jb25uZWN0aW9uPy50eXBlfHwiIilXLmRldGFpbGVkTmV0d29ya1R5cGU9SXFbbl18fElxLm90aGVyOyFiLlMoImh0bWw1X2VuYWJsZV92b2ljZV9ib29zdCIpfHxrLk5QKCl8fGsuaXNBZCgpfHwKKFcucU09Yi5taCk7cmV0dXJuIFd9OwpTVj1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXt2YXIgeD17fTtXJiYoeC5xJD1XKTtpZighbilyZXR1cm4geDt4LnBsYXliYWNrQ29va2llPUQ/LnBsYXliYWNrQ29va2llO3YmJih4LmROPXYpO3gudXQ9W107eC5ycT1bXTtpZihoPy5zaXplKWZvcihsZXQgTCBvZiBoLnZhbHVlcygpKXgucnEucHVzaChMKTtpZihuLnNhYnJDb250ZXh0VXBkYXRlcy5zaXplPjApZm9yKGxldCBMIG9mIG4uc2FickNvbnRleHRVcGRhdGVzLnZhbHVlcygpKUNIaCh4LEwsYik7Zy5ZTihuKSYmayYmQ0hoKHgsayxiKTtXPW4uRygpLk47eC5jbGllbnRJbmZvPXtjbGllbnROYW1lOkJYdFtXLmMudG9VcHBlckNhc2UoKV18fDB9O1cuY2JyYW5kJiYoeC5jbGllbnRJbmZvLmRldmljZU1ha2U9Vy5jYnJhbmQpO1cuY21vZGVsJiYoeC5jbGllbnRJbmZvLmRldmljZU1vZGVsPVcuY21vZGVsKTtXLmN2ZXImJih4LmNsaWVudEluZm8uY2xpZW50VmVyc2lvbj1XLmN2ZXIpO1cuY29zJiYoeC5jbGllbnRJbmZvLm9zTmFtZT0KVy5jb3MpO1cuY29zdmVyJiYoeC5jbGllbnRJbmZvLm9zVmVyc2lvbj1XLmNvc3Zlcik7Vz1uLkcoKTtXLlMoImh0bWw1X3NhYnJfZW5hYmxlX3NlcnZlcl94dGFnX3NlbGVjdGlvbiIpJiZXLlJhJiYoeC5jbGllbnRJbmZvLmhsPVcuUmEpO24uQngmJih4LkJ4PW4uQngpO3JldHVybiB4fTsKQ0hoPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1XLnR5cGV8fDA7RD8uaGFzKGIpP24ucnEucHVzaChXKTpuLnV0LnB1c2goYil9OwpGYU09ZnVuY3Rpb24obil7aWYoISh5cyhuLmluZm8pJiZuLmluZm8uUW4oKSYmbi5wb2xpY3kuc1YmJm4uZTEpfHxuLmluZm8uWGIuSj49Mnx8cDcoKT4wfHwhSU8oKSlyZXR1cm4hMTt2YXIgVz1uLlNPLmdldCgiYWl0YWdzIik7aWYoIVcpcmV0dXJuITE7Vz1HNShXKS5zcGxpdCgiLCIpO3ZhciBEPVtdO2ZvcihsZXQgYiBvZiBuLmUxKWcuamooVyxiKSYmRC5wdXNoKGIpO2lmKCFELmxlbmd0aClyZXR1cm4hMTtuLlNPLnNldCgiYWx0aXRhZ3MiLHFoKEQuam9pbigiLCIpKSk7cmV0dXJuITB9Owp3S2o9ZnVuY3Rpb24obixXLEQ9ITEpe2cuWGooVyk7bi50NS5sYXN0RXJyb3I9InBsYXllci5leGNlcHRpb24iO24uZXJyb3JNZXNzYWdlPWAke1cubmFtZX1fJHtXLm1lc3NhZ2V9YDtEP2cubUsoKCk9PntoVShuLnQ1KX0pOmhVKG4udDUpfTsKTUFNPWZ1bmN0aW9uKG4pe24uZXcmJihuLnhoci5zdGF0dXM9bi5ldyxuLmxOPW4uZXcpfTsKUnhqPWZ1bmN0aW9uKG4sVyl7bi50aW1pbmcuYmQ9ITA7bi54aHIuR3AoKSYmbi50aW1pbmcuVEMoKTtuLnBvbGljeS5OZCYmbi5UMj8uc3RvcCgpO0R4KG4uV28sVywhMSl9OwpRRnc9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4ucVk/TWF0aC5tYXgoVyxEL24ucVkpOlcsdj1uLmlqLkouVzt2JiYoYj1XLG4ucVkmJihiPU1hdGgubWF4KFcsRC9uLnFZKnYpKSk7QnUobi5paixXLEQsYil9OwpWQVM9ZnVuY3Rpb24obixXLEQsYix2LGspe24uTyYmKG4uTy5hZGQoTWF0aC5yb3VuZChXKSksbi5PLmFkZChNYXRoLnJvdW5kKEQpKSxuLk8uYWRkKE1hdGgucm91bmQoYikpLG4uTy5hZGQoTWF0aC5yb3VuZCh2KSksbi5PLmFkZChNYXRoLnJvdW5kKGspKSxuLk8uYWRkKE1hdGgucm91bmQobi52WCkpKX07CmNhdD1mdW5jdGlvbihuLFcsRCl7c3dpdGNoKFcpe2Nhc2UgNjg6bi5aYihEKTticmVhaztjYXNlIDM1Om4uc3koRCk7YnJlYWs7Y2FzZSA0NDpuLklyKEQpO2JyZWFrO2Nhc2UgNDM6bi5yTihEKTticmVhaztjYXNlIDUzOm4ua0ooRCk7YnJlYWs7Y2FzZSA1NjpuLk9lKCk7YnJlYWs7Y2FzZSA1NzpuLnlUKEQpO2JyZWFrO2Nhc2UgNDI6bi5XbChEKTticmVhaztjYXNlIDQ1Om4udVEoRCk7YnJlYWs7Y2FzZSA1OTpuLmdZKEQpO2JyZWFrO2Nhc2UgNTE6bi5DWChEKTticmVhaztjYXNlIDQ5Om4uTiQoRCk7YnJlYWs7Y2FzZSA1MDpuLkZYKEQpO2JyZWFrO2Nhc2UgNDc6bi5BcShEKTticmVhaztjYXNlIDU4Om4uc1coRCk7YnJlYWs7Y2FzZSA2MTpuLkhFKEQpO2JyZWFrO2Nhc2UgNzI6bi5ZYS5UcSgpO2JyZWFrO2Nhc2UgNjY6bi56cChEKTticmVhaztjYXNlIDQ2Om4udnQoRCk7YnJlYWs7Y2FzZSA2NzpuLm9uU25hY2tiYXJNZXNzYWdlKEQpO2JyZWFrO2Nhc2UgNzE6Vz1tayhELApJbGopLG4uWWEuSUYoVyl9fTsKYWlNPWZ1bmN0aW9uKG4pe0FVPW59OwpuajE9ZnVuY3Rpb24obixXLEQpe24udTkuZ2V0KFcpLm9uUHJvZ3Jlc3M9RH07Cm1lPWZ1bmN0aW9uKG4sVyl7bi5nRihXKSYmKEFVP24udTkuZ2V0KFcpLkZtLmNsZWFyKCk6bi51OS5nZXQoVykualM9bmV3IFM1LG4uSihXKSxuLlg9ITApfTsKVyRqPWZ1bmN0aW9uKG4pe2ZvcihsZXQgW1csRF1vZiBuLnU5KXtsZXQgYj1XO0QuRG98fG1lKG4sYil9fTsKRDZ4PWZ1bmN0aW9uKG4sVyl7bj1uLnU5LmdldChXKTtpZighbilyZXR1cm4gMDtXPTA7aWYobi5Bdy5sZW5ndGg+MCl7Zm9yKGxldCBEIG9mIG4uQXcpVys9RC5yYW5nZT8ubGVuZ3RofHwwO3JldHVybiBXfWlmKG4uQnQubGVuZ3RoPjApZm9yKGxldCBEIG9mIG4uQnQpVys9RC5lSHx8MDtyZXR1cm4gVytuLk1vfTsKSzM9ZnVuY3Rpb24obixXKXtpZihBVSl7bGV0IEQ9MDtuPW4udTkuZ2V0KFcpO2lmKCFuPy5GbSlyZXR1cm4gMDtmb3IobGV0IGIgb2Ygbi5GbS52YWx1ZXMoKSlEKz1iLmRhdGEudG90YWxMZW5ndGg7cmV0dXJuIER9cmV0dXJuIG4udTkuZ2V0KFcpPy5qUy5qKCl8fDB9OwpPRz1mdW5jdGlvbihuLFcpe249bi51OS5nZXQoVyk7aWYoQVUpe2lmKCFuPy5EbylyZXR1cm4hMTtXPW4uRm0uc2l6ZT4wO3JldHVybiBuLnBKLmxlbmd0aD4wfHxXfXJldHVybiEhbj8uRG8mJiEhbj8ualMuaigpfTsKYmVyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi51OS5nZXQoVyksYj1ENngobixXKSx2PSFiJiYhIUQuYnl0ZXNSZWNlaXZlZDtpZihBVSl7aWYobi5LdT8uelcpe2Zvcih2YXIgayBvZiBELkZtLnZhbHVlcygpKWlmKCFrLmtuKXJldHVybiExO3JldHVybiB2fX1lbHNlIGlmKGs9bi5tNihXKSx2JiZuLlcmJmshPT12b2lkIDApcmV0dXJuIGs7cmV0dXJuKHZ8fEQuYnl0ZXNSZWNlaXZlZD09PWIpJiZELmJ5K0szKG4sVyk9PT1ELmJ5dGVzUmVjZWl2ZWR9OwpQcD1mdW5jdGlvbihuLFcsRCxiKXtXPXZqdyhuLFcsRCk7RD1ELmF1O2IuQXcucHVzaCguLi5XKTtpZihBVSliLmNCLmhhcyhEKXx8Yi5jQi5zZXQoRCxbXSksYi5jQi5nZXQoRCkucHVzaCguLi5XKTtlbHNlIGlmKGIuV28pZm9yKGxldCB2IG9mIFcpYi5Xby5Bdy5wdXNoKHYpO2Vsc2UgYi5Xbz1uZXcga0JoKFsuLi5iLkF3XSksbi5vWj8uSHgmJmcudShuLGIuV28pO3JldHVybiBXfTsKdmp3PWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLkt1Py5KLmdldChXKTtpZighYilyZXR1cm5bXTtpZihELk9KKXJldHVybiBiLlkoMCxELmNsaXBJZCk/LkF3fHxbXTtpZihiLlcoKSl7dmFyIHY9RC5zdGFydE1zLGs9RC5kdXJhdGlvbk1zLGg9MUUzO24ub1o/Lk4mJkQudGltZVJhbmdlJiYodj1ELnRpbWVSYW5nZS5zdGFydFRpY2tzPz8tMSxrPUQudGltZVJhbmdlLmw4Pz8tMSxoPUQudGltZVJhbmdlLnRpbWVzY2FsZT8/LTEpO2lmKEQuenY8MHx8RC5QUDwwfHxrPDB8fHY8MHx8RC5lSDwwfHxoPDApcmV0dXJuIG1lKG4sVyksW107bj1XXyhELnp2LEQuZUgpO1c9RC5kR3x8MDtyZXR1cm5bbmV3IHFJKDMsYixuLCJtYWtlU2xpY2VJbmZvc01lZGlhQnl0ZXMiLEQuUFAtMSx2L2gsay9oLFcsbi5sZW5ndGgtVyx2b2lkIDAsRC52RCxELmNsaXBJZCxELkhmIT09dm9pZCAwKV19aWYoRC5QUDwwKXJldHVybiBtZShuLFcpLFtdO2lmKG4uS3U/LnpXKXJldHVybiBrPWIucmIsaD1rKmIuaW5mby5OcywKVz1ELmRHLG4ub1o/Lk4mJm4uVi50ZCgpIT09Ik9ORVNJRSImJkQudGltZVJhbmdlJiYhVyYmKHY9RC50aW1lUmFuZ2Uuc3RhcnRUaWNrcy9ELnRpbWVSYW5nZS50aW1lc2NhbGUpLFtuZXcgcUkoMyxiLHZvaWQgMCwibWFrZVNsaWNlSW5mb3NNZWRpYUJ5dGVzIixELlBQLHYsayxXLGgsITAsRC52RCxELmNsaXBJZCxELkhmIT09dm9pZCAwKV07aWYobi5vWj8uUXImJmIgaW5zdGFuY2VvZiBydCl7aWYoIWIuTigpKXJldHVybiBuLnU5LmdldChXKS5XcS5zZXQoRC5hdSxEKSxbXTtuPUQuUFAtMTt2PWIuaW5kZXguZ2V0U3RhcnRUaW1lKG4pO2s9Yi5pbmRleC5nZXREdXJhdGlvbihuKTtyZXR1cm5bbmV3IHFJKDMsYix2b2lkIDAsIm1ha2VTbGljZUluZm9zTWVkaWFCeXRlcyIsbix2LGssMCxrKmIuaW5mby5Ocyx2b2lkIDAsdm9pZCAwLHZvaWQgMCxELkhmIT09dm9pZCAwKV19cmV0dXJuW119OwpoNzI9ZnVuY3Rpb24obixXLEQpe24uS3U9VztuLm9aPUQ7Zm9yKGxldCBbYix2XW9mIG4udTkpe1c9YjtEPXY7Zm9yKGxldCBrIG9mIEQucDkpUHAobixXLGssRCl9fTsKeDZ3PWZ1bmN0aW9uKG4pe3JldHVybiBuLndEKCkmJiFuLkFkfTsKVUc9ZnVuY3Rpb24obil7aWYobi5VOCE9PXZvaWQgMCl7dmFyIFc9bi5wb2xpY3kual8oKTtpZihXKXt2YXIgRD1XLmV4cG9ydHMuU2FiclJlcXVlc3RDb29yZGluYXRvcl9nZXRFdmVudHNDb3VudChuLlU4KTtpZihEPjApe3ZhciBiPVcuZXhwb3J0cy5TYWJyUmVxdWVzdENvb3JkaW5hdG9yX2dldEJhdGNoZWRFdmVudHMobi5VOCk7aWYoYil7Yj1XLm1lbW9yeS5idWZmZXIoYixEKjE2KTtiPW5ldyBVaW50MzJBcnJheShiLmJ1ZmZlcixiLmJ5dGVPZmZzZXQsRCo0KTtsZXQgaz0wO2ZvcihsZXQgaD0wO2g8RDtoKyspe3ZhciB2PWJba107bGV0IHg9YltrKzFdLEw9YltrKzJdLGU9YltrKzNdO3Y9PT0wP2UhPT0wJiYodj14JiZMPjA/bmV3IFM1KFtXLm1lbW9yeS5idWZmZXIoeCxMKS5zbGljZSgpXSk6bmV3IFM1KFtuZXcgVWludDhBcnJheSgwKV0pLG4ueUQud20oZSx2KSk6dj09PTEmJm4ueGhyLkdwKCkmJlp4KG4pO2srPTR9fVcuZXhwb3J0cy5TYWJyUmVxdWVzdENvb3JkaW5hdG9yX2NsZWFyRXZlbnRzKG4uVTgpfX19fTsKWng9ZnVuY3Rpb24obil7bi5wb2xpY3kuWTAmJm4uUHEmJiFuLmdVP24uZ1U9ITA6bi5uZi5UQygpfTsKTCQyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9LTEsYj0tMSx2PS0xO2lmKG4udFk/Lml0ZW1zKWZvcihsZXQgayBvZiBuLnRZLml0ZW1zKVc8ay5Ga3x8ay5GazxEfHwoRD1rLkZrLGI9ay5meix2PWsubWluUmVhZGFoZWFkTXMpO3JldHVybntxRTpELGZ6OmIsRFE6dn19Owp5Qj1mdW5jdGlvbihuKXtpZihuLlU4IT09dm9pZCAwKXJldHVybiBuLnBvbGljeS5qXygpLmV4cG9ydHMuU2FiclJlcXVlc3RDb29yZGluYXRvcl9nZXRNZWRpYUJ5dGVzKG4uVTgpfTsKZy5FRz1mdW5jdGlvbihuLFcsRCl7Zy52UChuLEQpfHxnLmdfKG4sVyxEKTtnLnZQKG4sInZpZGVvX3RvX2FkIil8fGcuZ18obixXLCJ2aWRlb190b19hZCIpO2cudlAobiwiYWRfdG9fdmlkZW8iKXx8Zy5nXyhuLFcsImFkX3RvX3ZpZGVvIik7Zy52UChuLCJhZF90b19hZCIpfHxnLmdfKG4sVywiYWRfdG9fYWQiKX07Cml1PWZ1bmN0aW9uKG4pe24uT3x8KG4uTz0oMCxnLlIpKCksZy5FRygibWJfcyIsbi5PLG4uelIpKX07CmU3Yj1mdW5jdGlvbihuKXtuLnR3fHwobi50dz0oMCxnLlIpKCksZy5FRygib3Zmc19ycCIsbi50dyxuLnpSKSl9OwpnajE9ZnVuY3Rpb24obil7bi5jSnx8KG4uY0o9KDAsZy5SKSgpLGcuRUcoIm9hZnNfcnAiLG4uY0osbi56UikpfTsKWFNoPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1XIGluc3RhbmNlb2YgdXUmJiFuLlgmJiFuLk4sdj0hbi5YJiZEPy5pbmZvLnZpZGVvO0Q9IW4uTiYmRD8uaW5mby5hdWRpbztXLnN0YXRlPT09Mz8oKHZ8fGIpJiZuLnRpY2soInZyciIpLChEfHxiKSYmbi50aWNrKCJhcnIiKSk6Vy5zdGF0ZT09PTQ/dj8obi5YPVcuV0QoKSxnLkR5KCksYlEoNCkpOkQmJihuLk49Vy5XRCgpKTpXIGluc3RhbmNlb2YgQUImJlcuUXkoKSYmdiYmKGcuRHkoKSxiUSg0KSl9OwpvcT1mdW5jdGlvbihuLFcsRCl7bi5KIT09VyYmKG4uVSgic2RhaSIse3NldHNzdDpXLG9sZDpuLkoscjpEfSksbi5KPVcpfTsKR0JiPWZ1bmN0aW9uKG4sVyxELGI9ITApe2lmKEQmJiFuLlRDLmhhcyhXLmokKSl7dmFyIHY9Vy5zdGFydFRpbWUsaz1bXTtmb3IodmFyIGg9MDtoPEQuTi5sZW5ndGg7aCsrKXt2YXIgeD1ELk5baF0sTD12O3Y9TCtELkpbaF07ay5wdXNoKHtzdGFydFRpbWU6TCxlbmRUaW1lOnYsYWRDcG46eH0pfW4uVEMuc2V0KFcuaiQsayl9bi5wb2xpY3kuZVYmJih2PW4uRCYmVy5qJD09PW4uRC5qJCsxLG4uRD1XLGs9bi5OJiZXLmokPT09bi5OLmokKzEsaz1uLk4mJnYmJmsmJm4uTi5mZi5ldmVudCE9PSJzdG9wIiYmbi5OLmZmLmV2ZW50IT09InByZWRpY3RTdGFydCIsaD1XLmZmfHxudWxsLHg9bi52aWRlb1RyYWNrLlBKLmluZGV4LngkKCkseD1XLmokPj14LEw9bi5LdS5pc01hbmlmZXN0bGVzcyxoPyhuLk4/LmZmLmV2ZW50PT09InByZWRpY3RTdGFydCImJm4uTi5qJDxXLmokJiZoLmV2ZW50PT09InN0b3AiJiZuLmxvYWRlci5oYW5kbGVFcnJvcigic3NkYWkubWlzc2luZ3N0YXJ0Y3VlZXZlbnQiLAp7bGFzdHByZWRpY3Q6bi5OPy5qJHx8MCxjc3E6Vy5qJH0sMCksbi5OPXtmZjpoLGokOlcuaiQsZks6ISFELGZZOmJ9LHg/bi5WaShoLFcuaiQpOkwmJih2P2s/bi5WaShoLFcuaiQpOmguZXZlbnQ9PT0iY29udGludWUifHxoLmV2ZW50PT09InN0b3AiP3EkMihuLFcpOm4uVmkoaCxXLmokKTpuLlZpKGgsVy5qJCkpKTooayYmcSQyKG4sVyksbi5KPT09NCYmb3Eobiw1LCJxZW5kIikpKX07CnJraj1mdW5jdGlvbihuLFcsRCxiLHYpe1chPT1uLk4/LmokfHxuLko9PT0xfHxifHxuLk4uZmYuZXZlbnQ9PT0icHJlZGljdFN0YXJ0Inx8bi5VKCJzZGFpIix7dW5kZWNldnQ6MSxzcTpXLG10OkQsZXZ0Om4uTi5mZi5ldmVudH0sITApO1c+bi5qJiYobi5qPU5hTixuLlY9TmFOKTtpZihuLk4mJm4uTi5qJD09PVcpe2lmKGI9bi5OLCFuLnBvbGljeS5YfHwhbi5wb2xpY3kuVTEpaWYodiYmYil7dmFyIGs9Yi5mZixoPXYuU0Qoayk7ay5ldmVudD09PSJwcmVkaWN0U3RhcnQiJiYobi5jSj1XKTtuLlUoInNkYWkiLHtvbnFldnQ6ay5ldmVudCxzcTpXLG10OkQsZ2FiOmgsY3N0Omsuc3RhcnRTZWNzLGN1ZWlkOm4ucG9saWN5LnlkJiYoaHx8ay5ldmVudD09PSJzdGFydCIpP2suaWRlbnRpZmllcjp2b2lkIDB9LCEwKTtoP2suZXZlbnQhPT0icHJlZGljdFN0YXJ0Ij8oay5ldmVudD09PSJzdGFydCImJm4uY0o9PT1XLTEmJm4uVSgic2RhaSIse2dhYm9uc3RhcnQ6V30pLGIuZks/b3EobiwKNCwiY3VlIik6KG4uaj1XLG4uVj1ELG4uVSgic2RhaSIse2pvaW5hZDpuLkosc2c6bi5qLHN0Om4uVi50b0ZpeGVkKDMpfSksbi5ZPURhdGUubm93KCksb3EobiwyLG4uSj09PTM/InN0YWZ0cHJlZCI6ImpvaW4iKSx0dmkodixiLmZmKSkpOihoPSQ2aChuKSxXKz1NYXRoLm1heChNYXRoLmNlaWwoLWsuTi9oKSwxKSxrPU1hdGguZmxvb3IoRC1rLk4vMUUzKSxuLnBvbGljeS5VMT9uLlc9azpuLlg9VyxuLlUoInNkYWkiLHtvbnByZWQ6RCxlc3RzcTpXLGVzdG10OmsudG9GaXhlZCgzKX0pLGcuZEMobi5sb2FkZXIsayxrLFcsaCksbi5ZPURhdGUubm93KCksb3EobiwzLCJwcmVkaWN0IiksdHZpKHYsYi5mZikpOm4uSj09PTE/bi5zVT8uR2coRCk/KGcuZEMobi5sb2FkZXIsRCxELFcpLG9xKG4sNCwic2syaGVhZCIpKTpvcShuLDUsIm5vZ2FiIik6ay5ldmVudD09PSJwcmVkaWN0U3RhcnQiJiYobi5wb2xpY3kuVTEmJm4uVz4wPyhEPU1hdGguZmxvb3IoRC1rLk4vMUUzKSxuLlchPT1EJiYKbi5VKCJzZGFpIix7dXBkYXRlU3Q6RCxvbGQ6bi5XfSksbi5XPUQpOm4uWD4wJiYoRD1XK01hdGgubWF4KE1hdGguY2VpbCgtay5OLyQ2aChuKSksMSksbi5YIT09RCYmKG4uVSgic2RhaSIse3VwZGF0ZVN0OkQsb2xkOm4uWH0pLG4uWD1EKSkpfWVsc2Ugbi5VKCJzZGFpIix7bnVsbGRlYzoxLHNxOlcsbXQ6RC50b0ZpeGVkKDMpLGV2dDpiPy5mZj8uZXZlbnR8fCJub25lIn0pfWVsc2Ugbi5KPT09MSYmb3Eobiw1LCJub2FkIil9Owp6ST1mdW5jdGlvbihuLFcsRCl7cmV0dXJuKEQ8MHx8RD09PW4uaikmJiFpc05hTihuLlYpP24uVjpXfTsKcSQyPWZ1bmN0aW9uKG4sVyl7aWYobi5OKXt2YXIgRD1uLk4uZmYuQ2YtKFcuc3RhcnRUaW1lK24uSy1uLk4uZmYuc3RhcnRTZWNzKTtEPD0wfHwoRD1uZXcgZy5sMyhuLk4uZmYuc3RhcnRTZWNzLShpc05hTihuLkspPzA6bi5LKSxELG4uTi5mZi5jb250ZXh0LG4uTi5mZi5pZGVudGlmaWVyLCJzdG9wIixuLk4uZmYuTitXLmR1cmF0aW9uKjFFMyksbi5VKCJjdWVwb2ludGRpc2NvbnRpbnVpdHkiLHtzZWdOdW06Vy5qJH0pLG4uVmkoRCxXLmokKSl9fTsKJDZoPWZ1bmN0aW9uKG4pe3N3aXRjaChuLnBvbGljeS5sYXRlbmN5Q2xhc3Mpe2Nhc2UgIkxPVyI6cmV0dXJuIDJFMztjYXNlICJVTFRSQUxPVyI6cmV0dXJuIDFFMztkZWZhdWx0OnJldHVybiA1RTN9fTsKbHU9ZnVuY3Rpb24obixXLEQsYj0hMSl7Yj9vcShuLDEsInNlZWsiKTpXPjAmJk1hdGguYWJzKFctRCk+PTUmJm4uSj09PTQmJm9xKG4sNSwic2sydCIpfTsKZy5UST1mdW5jdGlvbihuKXtyZXR1cm4gbi50aWxlQ29udGV4dD9gJHtuLlNTfTske24udGlsZUNvbnRleHR9YDpuLlNTfTsKalY9ZnVuY3Rpb24obil7aWYoIW4pcmV0dXJuInVua25vd24iO3N3aXRjaChuKXtjYXNlIDU6cmV0dXJuInByZWRpY3RTdGFydCI7Y2FzZSAxOnJldHVybiJzdGFydCI7Y2FzZSAyOnJldHVybiJjb250aW51ZSI7Y2FzZSAzOnJldHVybiJzdG9wIjtjYXNlIDY6cmV0dXJuInByZWZldGNoIjtkZWZhdWx0OnJldHVybiJ1bmtub3duIn19OwpzU3c9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgInByZWRpY3RTdGFydCI6cmV0dXJuIDU7Y2FzZSAic3RhcnQiOnJldHVybiAxO2Nhc2UgImNvbnRpbnVlIjpyZXR1cm4gMjtjYXNlICJzdG9wIjpyZXR1cm4gMztjYXNlICJwcmVmZXRjaCI6cmV0dXJuIDY7ZGVmYXVsdDpyZXR1cm4gMH19OwpON1M9ZnVuY3Rpb24obil7aWYoIW4pcmV0dXJuIDA7c3dpdGNoKG4pe2Nhc2UgMjpyZXR1cm4gMjtjYXNlIDE6cmV0dXJuIDE7ZGVmYXVsdDpyZXR1cm4gMH19OwpwU1M9ZnVuY3Rpb24obil7aWYoIW4pcmV0dXJuIDA7c3dpdGNoKG4pe2Nhc2UgNjpyZXR1cm4gNztjYXNlIDU6cmV0dXJuIDE7Y2FzZSAyOnJldHVybiAyO2Nhc2UgMTE6cmV0dXJuIDM7Y2FzZSAzOnJldHVybiA0O2Nhc2UgMTpyZXR1cm4gNTtjYXNlIDEyOnJldHVybiA2O2RlZmF1bHQ6cmV0dXJuIDB9fTsKZy5DMz1mdW5jdGlvbihuKXtyZXR1cm4gbj9uLnRpbGVDb250ZXh0P2Ake24uaWRlbnRpZmllcn07JHtuLnRpbGVDb250ZXh0fWA6bi5pZGVudGlmaWVyOiIifTsKZy5CcD1mdW5jdGlvbihuKXtzd2l0Y2gobil7Y2FzZSAwOnJldHVybiJ1bmtub3duIjtjYXNlIDE6cmV0dXJuInRpbWVvdXQiO2Nhc2UgMjpyZXR1cm4icmF0ZWNvbnRyb2wiO2Nhc2UgMTE6cmV0dXJuInJhdGVjb250cm9sX2NsaWVudCI7Y2FzZSAzOnJldHVybiJzdmVyciI7Y2FzZSA0OnJldHVybiJkZWxldGVkIjtjYXNlIDU6cmV0dXJuIndhaXRpbmciO2Nhc2UgNjpyZXR1cm4icmVhZHkiO2Nhc2UgNzpyZXR1cm4ic3NkaXNhYmxlZCI7Y2FzZSA5OnJldHVybiJzc2Rpc2FibGVkX3VzdHJlYW1lciI7Y2FzZSAxMDpyZXR1cm4ic3NkaXNhYmxlZF9ub19jb25maWciO2Nhc2UgMTI6cmV0dXJuIm5vZ2FiY29uZmlnIjtjYXNlIDg6cmV0dXJuImluYWN0aXZlIjtjYXNlIDEzOnJldHVybiJjYWNoZW1pc3MiO2RlZmF1bHQ6cmV0dXJuInVua25vd24ifX07CkZ1PWZ1bmN0aW9uKG4pe3ZhciBXPS0obi5mZj8uVHl8fDApO24udGltZVJhbmdlJiYoVys9KG4udGltZVJhbmdlLnN0YXJ0VGlja3N8fDApLyhuLnRpbWVSYW5nZS50aW1lc2NhbGV8fDEpKTtyZXR1cm4gbmV3IGcubDMoVyxuLmZmPy5NS3x8MCxuLmZmPy51VHx8IiIsbi5mZj8uaWRlbnRpZmllcnx8IiIsalYobi5mZj8uZXZlbnQpLChuLmZmPy5UeXx8MCkqMUUzLG4udGlsZUNvbnRleHQpfTsKZy5ZJEM9ZnVuY3Rpb24obixXKXt2YXIgRD0iIixiPVtdO2ZvcihsZXQgW3Ysa11vZiBuLk4uZW50cmllcygpKXtsZXQgaD12LHg9azt4Py5zdGFydFRpbWVTZWNzPD1XJiZXPD14Py5zdGFydFRpbWVTZWNzK3g/LkNmJiZiLnB1c2goaCk7RCs9YCR7aH06JHt4Py5zdGFydFRpbWVTZWNzLnRvRml4ZWQoMyl9OiR7eD8uQ2YudG9GaXhlZCgzKX07YH1iLmxlbmd0aD09PTAmJihXPXtub19jaWQ6MSxtdDpXLnRvRml4ZWQoMyksYWRDb25maWdNYXA6RC5zdWJzdHJpbmcoMCwxMDI0KX0sbi5wb2xpY3kuRlImJm4uVSgiY2xzZGFpIixXKSk7cmV0dXJuIGJ9OwpIZVU9ZnVuY3Rpb24obixXLEQ9ITEpe0QmJihuLlY9ITApOysrbi5qO0Q9NkU0KjIqKm4uajtEPSgwLGcuUikoKStEO24uVy5zZXQoVy5pbmZvLmlkLEQpfTsKd0M9ZnVuY3Rpb24obil7Zm9yKGxldCBbVyxEXW9mIG4uVy5lbnRyaWVzKCkpe2xldCBiPVc7RDwoMCxnLlIpKCkmJm4uVy5kZWxldGUoYil9cmV0dXJuIG4uV307ClJxPWZ1bmN0aW9uKG4sVyl7bi5OPVc7dmFyIEQ9bi5LLnZpZGVvSW5mb3M7aWYoIW4uTi5pc0xvY2tlZCgpKXtsZXQgaz0oMCxnLlIpKCk7RD1nLkVNKEQsZnVuY3Rpb24oaCl7aWYoaC5Ocz50aGlzLnBvbGljeS5OcylyZXR1cm4hMTt2YXIgeD10aGlzLkt1Lk5baC5pZF07cmV0dXJuIHdDKHRoaXMuaikuZ2V0KGguaWQpPmt8fHguWGIuSj40fHx4LkZGPjQ/ITE6dGhpcy50dy5oYXMoK2guaXRhZyk/ITE6ITB9LG4pOwpuLmoubGwoKSYmKEQ9Zy5FTShELGg9PmgudmlkZW8ud2lkdGg8PTg1NCYmaC52aWRlby5oZWlnaHQ8PTQ4MCkpfUQubGVuZ3RofHwoRD1uLksudmlkZW9JbmZvcyk7CnZhciBiPUQ7bi5wb2xpY3kuUm8mJihiPWZRaChuLGIsVykpO2I9Zy5FTShiLFcuWCxXKTtpZihuLk4uaXNMb2NrZWQoKSYmbi5qLk4pe3ZhciB2PWcubF8oRCxrPT5rLmlkPT09bi5qLk4pOwp2P2I9W3ZdOm4uRGUoIiIpfW4ucG9saWN5LlJvfHwoYj1mUWgobixiLFcpKTtiLmxlbmd0aHx8KGI9W0RbMF1dKTtiLnNvcnQoKGssaCk9Pk1xKG4sayktTXEobixoKSk7CmZvcihXPTE7VzxiLmxlbmd0aDtXKyspRD1iW1ctMV0sdj1iW1ddLEQudmlkZW8ud2lkdGg+di52aWRlby53aWR0aD8oZy5CTShiLFcpLFctLSk6TXEobixEKSpuLnBvbGljeS5LPk1xKG4sdikmJihnLkJNKGIsVy0xKSxXLS0pO1c9YltiLmxlbmd0aC0xXTtuLkR0PSEhbi5XJiYhIW4uVy5pbmZvJiZuLlcuaW5mby5JQiE9PVcuSUI7bi5YPWI7bi5lJC5jbGVhcigpO0Q9ITE7Zm9yKHY9MDt2PGIubGVuZ3RoO3YrKylEP24uZSQuYWRkKGJbdl0uaXRhZyk6Ylt2XS52aWRlby5xdWFsaXR5T3JkaW5hbD49MTA4MCYmKEQ9ITApO0prQyhuLnBvbGljeSxXLG4uS3UuelcpfTsKSVExPWZ1bmN0aW9uKG4pe3ZhciBXPW4ucG9saWN5LmNKLEQ9Tlcobi5JZykvVy1NcShuLG4uSi5pbmZvKTtXPWcuVDQobi5YLGZ1bmN0aW9uKGIpe3JldHVybiBNcSh0aGlzLGIpPER9LG4pOwpXPDAmJihXPTApO24udmlkZW9JbmRleD1XO24ubmV4dFZpZGVvPW4uS3UuTltuLlhbV10uaWRdfTsKUyRoPWZ1bmN0aW9uKG4pe24uUyQ/bi5TJD0hMTpuLlk9KDAsZy5SKSgpO24uRD0hMTtuLlZRPSExO3JldHVybiBuZXcgUUIobi5WLG4uVyxuLk4ucmVhc29uKX07Cm02dz1mdW5jdGlvbihuLFcsRCl7UnEobixXKTt2YXIgYj1uLmo7Vz1iLlguSjtEPWJZKFcse2dPOmIucG9saWN5LmdPLGo5OmIucG9saWN5Lmo5LGxhbmd1YWdlSWQ6RH0pO24uSj1uLkt1Lk5bKEQubGVuZ3RoPjA/RFswXTpXWzBdKS5pZF07VkIobik7bi5WPW4uSjtJUTEobik7bi5UQy5sZW5ndGgmJihuLm5leHRWaWRlbz1Ba00obixuLm5leHRWaWRlbyxuLksudmlkZW9JbmZvcyksbi5KPUFrTShuLG4uSixuLksuSikpO24uVz1uLm5leHRWaWRlbztuLlY9bi5KO3JldHVybiBTJGgobil9OwpLJGo9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5OLmVxdWFscyhXKSYmKCFuLmouTnx8IW4uTi5pc0xvY2tlZCgpfHxuLm5leHRWaWRlbz8uaW5mby5pZD09PW4uai5OKX07ClZCPWZ1bmN0aW9uKG4pe2lmKCFuLkp8fCFuLnBvbGljeS5KJiYhbi5KLmluZm8ua1ope3ZhciBXPW4uSy5KO24uSiYmKFc9YlkoVyx7bGFuZ3VhZ2VJZDpuLkouaW5mby5rWj8uaWQsZ086bi5wb2xpY3kuZ08sajk6bi5wb2xpY3kuajl9KSxXLmxlbmd0aHx8KFc9bi5LLkopKTtuLko9bi5LdS5OW1dbMF0uaWRdO2lmKFcubGVuZ3RoPjEmJiFuLnBvbGljeS5IaSl7aWYoIW4ucG9saWN5LnRHKXt2YXIgRD1nLmxfKFcsYj0+Yi5hdWRpby5hdWRpb1F1YWxpdHkhPT0iQVVESU9fUVVBTElUWV9ISUdIIik7CkQmJihuLko9bi5LdS5OW0QuaWRdKX1EPSExO2lmKEQ9bi5wb2xpY3kuWSQ/ITA6bi5OLmlzTG9ja2VkKCk/bi5OLk48MjQwOk9laShuLG4uSikpbi5KPW4uS3UuTltnLlVNKFcpLmlkXX19fTsKY3A9ZnVuY3Rpb24obil7aWYoIW4ubmV4dFZpZGVvfHwhbi5wb2xpY3kuSilpZihuLk4uaXNMb2NrZWQoKSluLm5leHRWaWRlbz1uLk4uTjw9MzYwP24uS3UuTltuLlhbMF0uaWRdOm4uS3UuTltnLlVNKG4uWCkuaWRdO2Vsc2V7Zm9yKHZhciBXPU1hdGgubWluKG4udmlkZW9JbmRleCxuLlgubGVuZ3RoLTEpLEQ9Tlcobi5JZyksYj1NcShuLG4uSi5pbmZvKSx2PUQvbi5wb2xpY3kuY0otYjtXPjAmJiEoTXEobixuLlhbV10pPD12KTtXLS0pO2ZvcihEPUQvbi5wb2xpY3kuSy1iO1c8bi5YLmxlbmd0aC0xJiYhKE1xKG4sbi5YW1crMV0pPj1EKTtXKyspO24ubmV4dFZpZGVvPW4uS3UuTltuLlhbV10uaWRdO24udmlkZW9JbmRleD1XfX07ClBDMj1mdW5jdGlvbihuLFcpe2lmKFcuUEouaW5mby52aWRlbyYmVy5hWil7bGV0IEQ9KFcuTitXLkopL1cuVyxiPVcuUEouaW5mby5OcztEJiZiJiYobi5udS5JSSgxLEQvYiksbi5wb2xpY3kuVyYmRC9iPjEuNSYmbi5sb2FkZXIuVSgib3ZlcnNob290Iix7c3E6Vy5qJCxicjpELG1heDpifSkpfX07CmFxPWZ1bmN0aW9uKG4sVyxEPSExKXtIZVUobi5qLFcsRCk7bi5ZPS0xO1JxKG4sbi5OKX07Clpldz1mdW5jdGlvbihuLFcpe3JldHVybiBuZXcgUUIobi5WLG4uVyxXfHxuLk4ucmVhc29uKX07Ck1xPWZ1bmN0aW9uKG4sVyl7aWYoIW4uYmRbVy5pZF0pe3ZhciBEPW4uS3UuTltXLmlkXS5pbmRleC5YZChuLmNKLDE1KTtEPVcuWG4mJm4uVyYmbi5XLmluZGV4LmlzTG9hZGVkKCk/RHx8Vy5YbjpEfHxXLk5zO24uYmRbVy5pZF09RH1EPW4uYmRbVy5pZF07bi5lJC5oYXMoVy5pdGFnKSYmKEQqPTEuNSk7cmV0dXJuIEQqPU1hdGgubWF4KDEsbi5udS5MZygpfHwwKX07ClU2Qz1mdW5jdGlvbihuLFcpe3ZhciBEPXt9O2ZvcihsZXQgYiBvZiBXKXtpZighYnx8IWIudmlkZW8pY29udGludWU7Vz1iLnZpZGVvLnF1YWxpdHlPcmRpbmFsO2xldCB2PURbV10saz12JiZ2Lk1XKCkmJnYudmlkZW8ucXVhbGl0eU9yZGluYWw+bi5wb2xpY3kublMsaD1XPD1uLnBvbGljeS5uUz9iLk1XKCk6Yi5YKCk7aWYoIXZ8fGt8fGgpRFtXXT1ifXJldHVybiBEfTsKZlFoPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1ELnJlYXNvbj09PSJtInx8RC5yZWFzb249PT0icyI7bi5wb2xpY3kuUnEmJm5yJiZnLkduJiYoIWJ8fEQuTjwxMDgwKSYmKFc9Vy5maWx0ZXIodj0+di52aWRlbyYmKCF2Lmp8fHYuai5wb3dlckVmZmljaWVudCkpKTsKaWYoVy5sZW5ndGg+MClpZihWVCgpKXtsZXQgdj1VNkMobixXKTtXPVcuZmlsdGVyKGs9PiEhayYmISFrLnZpZGVvJiZrLklCPT09dltrLnZpZGVvLnF1YWxpdHlPcmRpbmFsXS5JQil9ZWxzZXtsZXQgdj1XWzBdPy52aWRlbz8ucXVhbGl0eU9yZGluYWw7CmlmKHYpe0Q9Vy5maWx0ZXIoaD0+ISFoJiYhIWgudmlkZW8mJmgudmlkZW8ucXVhbGl0eU9yZGluYWw9PT12KTsKbGV0IGs9VTZDKG4sRClbdl0uSUI7Vz1XLmZpbHRlcihoPT4hIWgmJiEhaC52aWRlbyYmaC5JQj09PWspfX1yZXR1cm4gV307Ck9laT1mdW5jdGlvbihuLFcpe2Zvcih2YXIgRD0wO0QrMTxuLlgubGVuZ3RoJiZuLlhbRF0udmlkZW8ucXVhbGl0eT09PSJ0aW55IjspRCsrO3ZhciBiPU5XKG4uSWcpL24ucG9saWN5Lks7cmV0dXJuIE1xKG4sVy5pbmZvKStNcShuLG4uWFtEXSk+Yn07CkFrTT1mdW5jdGlvbihuLFcsRCl7aWYoVy5pbmZvLklCPT09ImYifHxuLlRDLmluY2x1ZGVzKGN3KFcsbi5LdS56VykpKXJldHVybiBXO2ZvcihsZXQgYj0wO2I8RC5sZW5ndGg7YisrKXtsZXQgdj1uLkt1Lk5bRFtiXS5pZF07aWYoIW4uVEMuaW5jbHVkZXMoY3codixuLkt1LnpXKSkpY29udGludWU7bGV0IGs9Vy5pbmZvLklCLGg9di5pbmZvLklCO2lmKGs9PT1ofHxWVCgpKXtpZihXLmluZm8udmlkZW8/Vy5pbmZvLkohPT12LmluZm8uSjpXLmluZm8ua1o/LmlkIT09di5pbmZvLmtaPy5pZHx8YXkoVy5pbmZvKSE9PWF5KHYuaW5mbyl8fFZFKFcuaW5mbykhPT1WRSh2LmluZm8pKXJldHVybiBXNihuLHttaXNtYXRjaDoieHRhZyIsZjpXLmluZm8uaWQsdDp2LmluZm8uaWR9KSxXO1c2KG4se2Y6Vy5pbmZvLml0YWcsdDp2LmluZm8uaXRhZ30pO24uUyQ9ITA7cmV0dXJuIHZ9VzYobix7bWlzbWF0Y2g6ImVmZmljaWVudCIsZmM6ayx0YzpofSl9VzYobix7bWlzbWF0Y2g6InVuc2VsZWN0YWJsZSIsCmZtdHM6bi5UQy5qb2luKCIuIil9KTtyZXR1cm4gV307Clc2PWZ1bmN0aW9uKG4sVyl7bi5wb2xpY3kuRUQ/bi5sb2FkZXIuaGFuZGxlRXJyb3IoIm9uZXNpZS5mbXQubWlzbWF0Y2giLFcsMCk6bi5sb2FkZXIuVSgib21iaWZhIixXKX07Cnlrcj1mdW5jdGlvbihuLFcpe249cWMobi5LdS5OLEQ9PkQuaW5mby5pdGFnPT09Vyk7CmlmKCFuKXRocm93IEVycm9yKCJJdGFnICIrVysiIGZyb20gc2VydmVyIG5vdCBrbm93bi4iKTtyZXR1cm4gbn07CkVqWj1mdW5jdGlvbihuKXt2YXIgVz1bXTtpZihuLk4ucmVhc29uPT09Im0ifHxuLk4ucmVhc29uPT09InMiKXJldHVybiBXO2lmKEl0aShuLkt1KSl7Zm9yKGxldCBEPU1hdGgubWF4KDAsbi52aWRlb0luZGV4LTIpO0Q8bi52aWRlb0luZGV4JiZEPG4uWC5sZW5ndGg7RCsrKVcucHVzaChuLlhbRF0uaXRhZyk7Vy5yZXZlcnNlKCl9cmV0dXJuIFd9OwppZWk9ZnVuY3Rpb24obixXKXtuLkRrKCJpc21wX3AiKTtuLko9V307CnU5VT1mdW5jdGlvbihuKXtuLk4mJihuLk4uZGlzcG9zZSgpLG4uRGsoImlzbXBfZCIpKX07Cm9qdz1mdW5jdGlvbih7dEk6bj0hMSxzSjpXPSExLGU0OkQ9ITF9PXt9KXtyZXR1cm4gbj9EPzM6MjpXPy0xOjF9OwpEZD1mdW5jdGlvbihuLFcsRCl7dmFyIGI9W10sdj1uLnRyYWNrLlFFO2lmKHYpe3Y9di5aRigpO2Zvcih2YXIgaz0wO2s8di5sZW5ndGg7aysrKWIucHVzaChNYXRoLnJvdW5kKHYuc3RhcnQoaykqMUUzKSksYi5wdXNoKE1hdGgucm91bmQodi5lbmQoaykqMUUzKSl9dj0xO2s9Yi5sZW5ndGg7aWYoaz09PW4uYnVmZmVyZWQubGVuZ3RoKXtmb3IodmFyIGg9MDtoPD1rJiZiW2hdPT09bi5idWZmZXJlZFtoXTtoKyspO2g+az92PTA6YltoXT5uLmJ1ZmZlcmVkW2hdJiYoaD09PWstMT92PTI6aD09PWstMiYmYltoKzFdPm4uYnVmZmVyZWRbaCsxXSYmKHY9MykpfW4uTi5hZGQoVzw8M3woRCYmNCl8dik7Vz1NYXRoLmNlaWwobi50cmFjay5sNSgpKjFFMyk7bi5OLmFkZChXLW4uaik7bi5qPVc7aWYodj09PTEpZm9yKG4uTi5hZGQoayksVz0wLGg9MDtoPGs7aCsrKW4uTi5hZGQoYltoXS1XKSxXPWJbaF07dj09PTMmJm4uTi5hZGQoYltrLTJdLW4uYnVmZmVyZWRbay0yXSk7dj49MiYmbi5OLmFkZChiW2stCjFdLW4uYnVmZmVyZWRbay0xXSk7RCYmbi5OLmFkZChEKTtuLmJ1ZmZlcmVkPWJ9OwpUN2I9ZnVuY3Rpb24obixXLEQsYix2KXtpZighYi5hWilyZXR1cm4gRC5sZW5ndGg9PT0wP0QucHVzaChiLmNsb25lKCkpOihuPShXPUQucG9wKCkpP2Q2cihuLFcsYik6bnVsbCk/RC5wdXNoKG4pOkQucHVzaChiLmNsb25lKCkpLHY7KEQ9KEQ9RC5wb3AoKSk/ZDZyKG4sRCxiKTpudWxsKXx8KEQ9Yik7aWYoRC5OKXJldHVybiBuLmxvZ2dlciYmbi5sb2dnZXIoe2luY29tcGxldGVTZWdtZW50OkQuZ2EoKX0pLHY7dmFyIHtmb3JtYXRJZDprLGokOmgsc3RhcnRUaW1lTXM6eCxjbGlwSWQ6TCxyOTplfT17Zm9ybWF0SWQ6Zy5WZihELlBKLmluZm8sbi5LdS56VyksaiQ6RC5qJCtuLlgsc3RhcnRUaW1lTXM6RC5zZWdtZW50U3RhcnRUaW1lKjFFMyxjbGlwSWQ6RC5jbGlwSWQscjk6RC5XKjFFM307Yj17Y2xpcElkOkwsZm9ybWF0SWQ6ayxzdGFydFRpbWVNczp4LGR1cmF0aW9uTXM6ZSxBQzpoLGk5Omh9O3Y9ejdVKFcsYi5zdGFydFRpbWVNcyk7RD12Pj0wP1dbdl06bnVsbDt2YXIgRzsKaWYoRz1EKXtHPWI7dmFyIHI9dixOPUQuc3RhcnRUaW1lTXMrRC5kdXJhdGlvbk1zLEg9Ry5zdGFydFRpbWVNcytHLmR1cmF0aW9uTXM7aWYoRy5zdGFydFRpbWVNcy1OPm4uTilHPSExO2Vsc2UgaWYobFFoKG4sRC5mb3JtYXRJZCxHLmZvcm1hdElkKSlELmR1cmF0aW9uTXM9TWF0aC5tYXgoTixIKS1ELnN0YXJ0VGltZU1zLEQuaTk9TWF0aC5tYXgoRC5pOSxHLmk5KSxHPSEwO2Vsc2UgaWYoTWF0aC5hYnMoRC5zdGFydFRpbWVNcy1HLnN0YXJ0VGltZU1zKTw9bi5OKWlmKEQuZHVyYXRpb25Ncz5HLmR1cmF0aW9uTXMrbi5OKXtyPUQuZm9ybWF0SWQ7dmFyIEE9RC5BQyx5PUQuaTk7RC5mb3JtYXRJZD1HLmZvcm1hdElkO0QuZHVyYXRpb25Ncz1HLmR1cmF0aW9uTXM7RC5BQz1HLkFDO0QuaTk9Ry5pOTtHLmZvcm1hdElkPXI7Ry5zdGFydFRpbWVNcz1IO0cuZHVyYXRpb25Ncz1OLUg7Ry5BQz1BO0cuaTk9eTtHPSExfWVsc2UgRC5mb3JtYXRJZD1HLmZvcm1hdElkLEc9ITA7ZWxzZSBOPgpHLnN0YXJ0VGltZU1zJiYoTj5IJiYoVy5zcGxpY2UocisxLDAse2Zvcm1hdElkOkQuZm9ybWF0SWQsc3RhcnRUaW1lTXM6SCxkdXJhdGlvbk1zOk4tSCxBQzpHLmk5KzEsaTk6RC5pOX0pLG4ubG9nZ2VyJiZuLmxvZ2dlcih7c3BsaXRPbGRTdGFydDpELnN0YXJ0VGltZU1zPy50b0ZpeGVkKDMpLHNwbGl0T2xkRW5kOk4/LnRvRml4ZWQoMyksc3BsaXROZXdTdGFydDpHLnN0YXJ0VGltZU1zPy50b0ZpeGVkKDMpLHNwbGl0TmV3RW5kOkg/LnRvRml4ZWQoMyl9KSksRC5kdXJhdGlvbk1zPUcuc3RhcnRUaW1lTXMtRC5zdGFydFRpbWVNcyxELmk5PUcuQUMtMSksRz0hMX1HP2I9RDoodis9MSxXLnNwbGljZSh2LDAsYikpO0Q9MDtmb3IoRz12KzE7RzxXLmxlbmd0aDtHKyspe049bjtIPVdbR107cj1iO0E9SC5zdGFydFRpbWVNcytILmR1cmF0aW9uTXM7eT1yLnN0YXJ0VGltZU1zK3IuZHVyYXRpb25Nczt5Pj1BK04uTj9OPSEwOnkrTi5OPEguc3RhcnRUaW1lTXM/Tj0hMTpsUWgoTixILmZvcm1hdElkLApyLmZvcm1hdElkKT8oci5kdXJhdGlvbk1zPUEtci5zdGFydFRpbWVNcyxyLmk5PUguaTksTj0hMCk6KEguc3RhcnRUaW1lTXM9eSxILkFDPXIuaTkrMSxOPSExKTtpZighTilicmVhaztEKyt9RCYmVy5zcGxpY2UodisxLEQpO3JldHVybiB2fTsKZDZyPWZ1bmN0aW9uKG4sVyxEKXtpZighYlQoVyxEKXx8Vy5hWilyZXR1cm4gbnVsbDtQXyhXLEQsbi5wb2xpY3kuZUspO3JldHVybiBXfTsKejdVPWZ1bmN0aW9uKG4sVyl7bj1nLlc0KG4se3N0YXJ0VGltZU1zOld9LChELGIpPT5ELnN0YXJ0VGltZU1zLWIuc3RhcnRUaW1lTXMpOwpyZXR1cm4gbj49MD9uOi1uLTJ9OwpqU1o9ZnVuY3Rpb24obixXLEQpe2lmKG4ubG9nZ2VyKXt2YXIgYj1bXTtmb3IobGV0IHY9MDt2PFcubGVuZ3RoO3YrKyl7bGV0IGs9V1t2XTtrLkVqPy5zdGFydFRpY2tzJiZiLnB1c2goYGkuJHtrLmZvcm1hdElkPy5pdGFnfV9zdC4ke2suc3RhcnRUaW1lTXN9X3Bzc3QuJHtrLkVqPy5zdGFydFRpY2tzfV9wc2QuJHtrLkVqPy5sOH1gKTtiLnB1c2goYGkuJHtrLmZvcm1hdElkPy5pdGFnfV9zdC4ke2suc3RhcnRUaW1lTXN9X2UuJHtrLnN0YXJ0VGltZU1zK2suZHVyYXRpb25Nc31fZC4ke2suZHVyYXRpb25Nc31fc24uJHtrLkFDfV9lbi4ke2suaTl9YCl9bi5sb2dnZXIoe3A6YCR7RH1gLGJyOmIuam9pbigiOyIpfSl9fTsKYlM9ZnVuY3Rpb24obixXLEQ9ITEpe2lmKG4uUUUpe3ZhciBiPW4uUUUuWkYoKTtpZihiLmxlbmd0aCE9PTApe2lmKG4uVyYmVyl7dmFyIHY9bi5XLGs9di5YOyFCUihiLGspJiZ2Lks+MCYmKDAsZy5SKSgpLW4uSzw1RTMmJihuLmxvZ2dlciYmbi5sb2dnZXIoe2RlbmQ6di5nYSgpfSksYj1qRyhiLGssaysuMDEpKX12PVtdO2Zvcih2YXIgaD1rPTA7azxiLmxlbmd0aCYmaDxuLmVXLmxlbmd0aDspe3ZhciB4PWIuc3RhcnQoayk7bGV0IE49Yi5lbmQoayk7dmFyIEw9bi5lV1toXS5zdGFydFRpbWVNcy8xRTM7bGV0IEg9KG4uZVdbaF0uc3RhcnRUaW1lTXMrbi5lV1toXS5kdXJhdGlvbk1zKS8xRTM7aWYoTDw9TiYmSD49eCl7bGV0IEE9ey4uLm4uZVdbaF19O3ZhciBlPW4uS3UuSi5nZXQoTWsobi5lV1toXS5mb3JtYXRJZCkpLEc9TWF0aC5tYXgoTCx4KTt4PWUuaW5kZXguUjMoRytuLk4vMUUzKTtMPWUuaW5kZXguZ2V0U3RhcnRUaW1lKHgpO3ZhciByPXgrICsoTWF0aC5hYnMoTC1HKT4Kbi5OLzFFMyk7Rz1yK24uWDtyPWUuaW5kZXguZ2V0U3RhcnRUaW1lKHIpKjFFMztoIT09bi5KfHxXPyhBLkFDPUcsQS5zdGFydFRpbWVNcz1yKToobi5sb2dnZXImJm4ubG9nZ2VyKHtwRXZpY3Q6IjEiLG9nOkEuc3RhcnRUaW1lTXMsYWRqOkwqMUUzfSksQS5BQz14K24uWCxBLnN0YXJ0VGltZU1zPUwqMUUzKTt4PW4uVz8uV3x8MTE7IUQmJmg9PT1uLkomJk48SCYmSC1OPD14KjEuMDEmJiEobi5wb2xpY3kuU3cmJm4uUUUmJm4uUUUueXUoKSkmJihOPUgpO3g9TWF0aC5taW4oSCxOKTtMPWUuaW5kZXguUjMoeC1uLk4vMUUzKTtHPWUuaW5kZXguakUoTCk7TC09KyhNYXRoLmFicyhHLXgpPm4uTi8xRTMpO3g9TCtuLlg7ZT1lLmluZGV4LmpFKEwpKjFFMztBLmk5PXg7QS5kdXJhdGlvbk1zPWUtQS5zdGFydFRpbWVNcztBLkFDPD1BLmk5JiZ2LnB1c2goQSl9SDxOP2grPTE6ays9MX1uLmVXPXZ9fX07CkNDTT1mdW5jdGlvbihuKXt2YXIgVz1bXSxEPW4uTTcubWFwKGs9PmsuY2xvbmUoKSk7Cm4uZVcuZm9yRWFjaChrPT57Vy5wdXNoKHsuLi5rfSl9KTsKdmFyIGI9bi5ELmYzKCksdj1uLko7Zm9yKGxldCBrIG9mIGIpdj1UN2IobixXLEQsayx2KTtXLmZvckVhY2goaz0+e2suc3RhcnRUaW1lTXMmJihrLnN0YXJ0VGltZU1zKz1uLnRpbWVzdGFtcE9mZnNldCoxRTMpfSk7CnJldHVybntlVzpXLE03OkR9fTsKbFFoPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gVy5pdGFnIT09RC5pdGFnfHxXLnh0YWdzIT09RC54dGFncz8hMTpuLkt1LnpXfHxXLmxtdD09PUQubG10fTsKdjY9ZnVuY3Rpb24obil7cmV0dXJue2Rvd25sb2FkZWRFbmRUaW1lOk1hdGgucm91bmQobi5kSD9uLmRILmo6MCksbWF4S25vd25FbmRUaW1lOk1hdGgucm91bmQobi5OLmluZGV4LmJRKCkpLGF2ZXJhZ2VCeXRlUmF0ZTpNYXRoLnJvdW5kKG4uTi5pbmZvLlhuKX19Owp4Qz1mdW5jdGlvbihuLFc9ITEpeyFXfHxuLmluZGV4UmFuZ2UmJm4uaW5pdFJhbmdlJiZuLmRIfHxrQyhuLG5ldyBoMCgiV29mZmxlOiBFeHBlY3QgaXNGaW5hbCB0byBhbHdheXMgaGF2ZSBpbmRleFJhbmdlIGFuZCBpbml0UmFuZ2UgYW5kIGxhc3RTbGljZSIpKTtXPXtsbXQ6bi5OLmluZm8ubGFzdE1vZGlmaWVkLGRvY2lkOm4ucG9saWN5LkosZm10aWQ6bi5OLmluZm8uaWQsdHlwZTpuLk4uaW5mby5taW1lVHlwZS5zcGxpdCgiOyIpWzBdLGNzejpuLmNodW5rU2l6ZSxjbGVuOm4uVypuLmNodW5rU2l6ZStuLkp9O24uY3J5cHRvJiYoVy5jaz1uLlksVy5jaXY9bi5LKTtXPSJsb2NhbDovL2xvY2FsaG9zdC92aWRlb3BsYXliYWNrPyIrZy5FdChXKTtXPXtpdGFnOituLk4uaW5mby5pdGFnLG1pbWVUeXBlOm4uTi5pbmZvLm1pbWVUeXBlLGJpdHJhdGU6bi5OLmluZm8uTnMqOCxsYXN0TW9kaWZpZWQ6U3RyaW5nKG4uTi5pbmZvLmxhc3RNb2RpZmllZCksaW5pdFJhbmdlOm4uaW5pdFJhbmdlPy5OKCksCmluZGV4UmFuZ2U6bi5pbmRleFJhbmdlPy5OKCksdXJsOld9O3ZhciBEPW4uTi5pbmZvLko7RCYmKFcueHRhZ3M9RCk7aWYoRD1uLk4uaW5mby52aWRlbylpZihXLnF1YWxpdHk9RC5xdWFsaXR5LFcucXVhbGl0eUxhYmVsPUQucXVhbGl0eUxhYmVsLFcud2lkdGg9RC53aWR0aCxXLmhlaWdodD1ELmhlaWdodCxEPUQuZnBzKVcuZnBzPUQ7aWYobj1uLk4uaW5mby5hdWRpbyl7aWYoRD1uLnNhbXBsZVJhdGUpVy5hdWRpb1NhbXBsZVJhdGU9U3RyaW5nKEQpO2lmKG49bi5udW1DaGFubmVscylXLmF1ZGlvQ2hhbm5lbHM9bn1yZXR1cm4gV307CkxyPWZ1bmN0aW9uKG4sVyxEPSExKXtXLnRoZW4oYj0+e24uTy5kZWxldGUoVyk7KER8fGI9PT00KSYmbi5WLnJlc29sdmUoYil9LGI9PntuLlYucmVqZWN0KGIpfSl9OwplcT1mdW5jdGlvbihuKXtyZXR1cm4hIW4uZEgmJm4uZEguVigpfTsKa0M9ZnVuY3Rpb24obixXKXtlJChuLnBvbGljeS5KKSE9PTQmJihnNihuLnBvbGljeS5KLDQpLGcuR3EoVyksbi5WLnJlamVjdChuZXcgaDAoVy5tZXNzYWdlKSkpfTsKQjdiPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MCxiPXRSKFcuSik7aWYobi5XPG4uWCl7RD1uLlgqbi5jaHVua1NpemUtKChXLmluZm8ucmFuZ2U/LnN0YXJ0fHwwKStXLmluZm8uTik7aWYoRD49Yi5sZW5ndGgpcmV0dXJuO2lmKEQ8MCl0aHJvdyBFcnJvcigiTWlzc2luZyBkYXRhIik7bi5XPW4uWDtuLko9MH1mb3IoO0Q8Yi5sZW5ndGg7KXt2YXIgdj1NYXRoLm1pbihiLmxlbmd0aC1ELG4uai5ieXRlTGVuZ3RoLW4uSik7bGV0IGs9bmV3IFVpbnQ4QXJyYXkoYi5idWZmZXIsYi5ieXRlT2Zmc2V0K0Qsdik7bi5qLnNldChrLG4uSik7bi5KKz12O0QrPXY7aWYobi5KPT09bi5qLmxlbmd0aCl7aWYoVy5pbmZvPT09bi5kSCYmZXEobikmJkQ9PT1iLmxlbmd0aClicmVhazt2PXY2KG4pO3Y9dHgobi5wb2xpY3kuSixuLk4uaW5mbyx4QyhuKSx2LG4ucG9saWN5LmJkLG4uVyxuLmosbi5jcnlwdG8pO24uTy5hZGQodik7THIobix2KTtuLnFOKCl8fCh2PXY2KG4pLG4uYmQoeEMobiksdiE9PXZvaWQgMD8KKHYuZG93bmxvYWRlZEVuZFRpbWV8fDApKnYuYXZlcmFnZUJ5dGVSYXRlOnYubWF4S25vd25FbmRUaW1lKnYuYXZlcmFnZUJ5dGVSYXRlLHYubWF4S25vd25FbmRUaW1lKnYuYXZlcmFnZUJ5dGVSYXRlKSk7bi5qPW5ldyBVaW50OEFycmF5KG4uY2h1bmtTaXplKTtuLko9MDtuLlcrPTF9fX07CndTVT1mdW5jdGlvbihuKXtpZihlcShuKSlpZihuLmRIJiZuLmluZGV4UmFuZ2UpaWYobi5KKXt2YXIgVz1uZXcgVWludDhBcnJheShuLmouYnVmZmVyLDAsbi5KKSxEPUYkeChuKSxiPW4ucG9saWN5Lko7UHJvbWlzZS5hbGwobi5PKS50aGVuKCgpPT57dmFyIHY9dHgoYixuLmRILlBKLmluZm8seEMobiwhMCksRCxuLnBvbGljeS5iZCxuLlcsVyxuLmNyeXB0byk7THIobix2LCEwKX0pfWVsc2Uga0MobixuZXcgaDAoIldvZmZsZTogRXhwZWN0IGFsd2F5cyByZS1tYXJrIGN1cnJlbnRDaHVua09mZnNldCBhdCBFT1MiKSk7CmVsc2Uga0MobixuZXcgaDAoIldvZmZsZTogRXhwZWN0IGF0IEVPUyB0byBhbHdheXMgaGF2ZSBsYXN0U2xpY2Ugb3IgaW5kZXhSYW5nZSIpKX07Cmd1PWZ1bmN0aW9uKG4sVyl7aWYoIWVxKG4pJiYhbi5xTigpKXtpZighKG4udHd8fChuLnR3PSEwLG4uWD4wKSkpe3ZhciBEPXY2KG4pO0Q9dHgobi5wb2xpY3kuSixuLk4uaW5mbyx4QyhuKSxELG4ucG9saWN5LmJkKTtMcihuLEQpfWlmKFcuaW5mby50eXBlPT09MSl7aWYobi5kSCl7a0MobixFcnJvcigiV29mZmxlOiBFeHBlY3QgSU5JVCBzbGljZXMgdG8gYWx3YXlzIHN0YXJ0IHVzIG9mZiIpKTtyZXR1cm59bi5pbml0UmFuZ2U9V18oMCxXLkoudG90YWxMZW5ndGgpfWVsc2UgaWYoVy5pbmZvLnR5cGU9PT0yKW4uZEgmJm4uZEgudHlwZT09PTF8fGtDKG4sRXJyb3IoIldvZmZsZTogSW5kZXggYmVmb3JlIGluaXQiKSksbi5pbmRleFJhbmdlPVdfKG4uaW5pdFJhbmdlLmVuZCsxLFcuSi50b3RhbExlbmd0aCk7ZWxzZSBpZihXLmluZm8udHlwZT09PTMpe2lmKCFuLmRIKXtrQyhuLEVycm9yKCJXb2ZmbGU6IEV4cGVjdCBNRURJQSBzbGljZXMgdG8gYWx3YXlzIGhhdmUgbGFzdFNsaWNlIikpOwpyZXR1cm59aWYobi5kSC50eXBlPT09MyYmIWJUKG4uZEgsVy5pbmZvKSYmKG4uRD1bXSxXLmluZm8uaiQhPT1nayhuLmRIKXx8Vy5pbmZvLk4hPT0wKSlyZXR1cm47aWYoVy5pbmZvLmFaKXtmb3IobGV0IGIgb2Ygbi5EKUI3YihuLGIpO24uRD1bXX1lbHNle24uRC5wdXNoKFcpO24uZEg9Vy5pbmZvO3JldHVybn19ZWxzZXtrQyhuLEVycm9yKCJXb2ZmbGU6IFVuZXhwZWN0ZWQgc2xpY2UgdHlwZSIpKTtyZXR1cm59bi5kSD1XLmluZm87QjdiKG4sVyk7d1NVKG4pfX07CkYkeD1mdW5jdGlvbihuKXtyZXR1cm57ZG93bmxvYWRlZEVuZFRpbWU6LTEsbWF4S25vd25FbmRUaW1lOk1hdGgucm91bmQobi5OLmluZGV4LmJRKCkpLGF2ZXJhZ2VCeXRlUmF0ZTpNYXRoLnJvdW5kKG4uTi5pbmZvLlhuKX19OwpNdlM9ZnVuY3Rpb24obil7bj1nLmVQKG4sMTg4NjYxNDM3Nik7Zm9yKGxldCBXIG9mIG4pO3JldHVybiBnLmlfKG4sVz0+b3IoVykpfTsKUjdVPWZ1bmN0aW9uKG4pe3ZhciBXPWcudV8obiwoYix2KT0+Yit2Lmxlbmd0aCwwKTsKVz1uZXcgVWludDhBcnJheShXKTt2YXIgRD0wO2ZvcihsZXQgYiBvZiBuKVcuc2V0KGIsRCksRCs9Yi5sZW5ndGg7cmV0dXJuIFd9OwpWdnQ9ZnVuY3Rpb24obil7YTp7dmFyIFc9bi5pbml0RGF0YTt0cnl7dmFyIEQ9MDtsZXQgdj1uZXcgRGF0YVZpZXcoVy5idWZmZXIpO2Zvcig7RDx2LmJ5dGVMZW5ndGgtODspe2xldCBrPXYuZ2V0VWludDMyKEQpO2lmKGs8PTEpYnJlYWs7aWYodi5nZXRVaW50MzIoRCs0KSE9PTE4ODY2MTQzNzYpe0QrPWs7Y29udGludWV9bGV0IGg9MzI7aWYodi5nZXRVaW50OChEKzgpPjApe2xldCBMPXYuZ2V0VWludDMyKEQrMjgpO2grPUwqMTYrNH1sZXQgeD12LmdldFVpbnQzMihEK2gtNCk7dHJ5e2xldCBMPVFTeChXLnN1YmFycmF5KEQraCxEK2greCkpO2lmKEwhPT1udWxsKXt2YXIgYj1MO2JyZWFrIGF9fWNhdGNoKEwpe31EKz1rfWI9bnVsbDticmVhayBhfWNhdGNoKHYpe2I9bnVsbDticmVhayBhfWI9dm9pZCAwfWlmKGIhPW51bGwpe1c9dTQoaVcoYiw3LHZvaWQgMCxmbikpO1c9PW51bGx8fG4ucUh8fChuLmNyeXB0b1BlcmlvZEluZGV4PVcpO1c9dTQoaVcoYiwxMCx2b2lkIDAsZm4pKTsKVyE9bnVsbCYmVz4wJiYhbi5xSCYmKG4uTj1XKTtmb3IobGV0IHYgb2YgZy5CSChiLDIsTUUsdm9pZCAwPT09RyQ/Mjo0KSliPW4uSixXPWIucHVzaCxEPVZsKHYpLEQ9Zy5FQShELDQpLFcuY2FsbChiLEQpfX07CmNraj1mdW5jdGlvbihuKXtyZXR1cm4gaXNOYU4obi5jcnlwdG9QZXJpb2RJbmRleCk/Zy5FQShuLmluaXREYXRhKTpgJHtuLmNyeXB0b1BlcmlvZEluZGV4fWB9OwpYMD1mdW5jdGlvbihuKXtpZihuLm9mZnNldD49bi5KLnRvdGFsTGVuZ3RoKXRocm93IEVycm9yKCk7cmV0dXJuIHJkKG4uSixuLm9mZnNldCsrKX07CmFRUz1mdW5jdGlvbihuLFc9ITEpe3ZhciBEPVgwKG4pO2lmKEQ9PT0xKXtXPS0xO2ZvcihEPTA7RDw3O0QrKyl7dmFyIGI9WDAobik7Vz09PS0xJiZiIT09MjU1JiYoVz0wKTtXPi0xJiYoVz1XKjI1NitiKX1yZXR1cm4gV31iPTEyODtmb3IobGV0IHY9MDt2PDYmJmI+RDt2KyspRD1EKjI1NitYMChuKSxiKj0xMjg7cmV0dXJuIFc/RDpELWJ9OwpuZng9ZnVuY3Rpb24obil7dHJ5e2xldCBXPWFRUyhuLCEwKSxEPWFRUyhuLCExKTtyZXR1cm57aWQ6VyxzaXplOkR9fWNhdGNoKFcpe3JldHVybntpZDotMSxzaXplOi0xfX19OwpETjE9ZnVuY3Rpb24obil7Zm9yKHZhciBXPW5ldyBXeWoobiksRD0tMSxiPTAsdj0wOyFifHwhdjspe2xldCB7aWQ6ayxzaXplOmh9PW5meChXKTtpZihrPDApcmV0dXJuO2lmKGs9PT0xNzYpe2lmKGghPT0yKXJldHVybjtiPVcuTigpfWVsc2UgaWYoaz09PTE4Nil7aWYoaCE9PTIpcmV0dXJuO3Y9Vy5OKCl9az09PTM3NDY0ODQyNz9EPVcuTigpK2g6ayE9PTQwODEyNTU0MyYmayE9PTE3NCYmayE9PTIyNCYmVy5za2lwKGgpfVc9JE0obiwwLEQpO0Q9bmV3IERhdGFWaWV3KFcuYnVmZmVyKTtELnNldFVpbnQxNihiLDM4NDApO0Quc2V0VWludDE2KHYsMjE2MCk7Yj1uZXcgUzUoW1ddKTtlNShiLG4pO3JldHVybiBifTsKYndDPWZ1bmN0aW9uKCl7dmFyIG49bmV3IFVpbnQ4QXJyYXkoMTY0RTQpO2ZvcihsZXQgVz0wO1c8bi5sZW5ndGg7Vys9NjU1MzYpY3J5cHRvLmdldFJhbmRvbVZhbHVlcyhuLnN1YmFycmF5KFcsTWF0aC5taW4oVys2NTUzNixuLmxlbmd0aCkpKTtuZXcgUzUoW25dKX07CnEyPWZ1bmN0aW9uKG4pe24uYm4/LmRpc3Bvc2UoKTtuLmJuPW51bGx9OwpHWj1mdW5jdGlvbihuLFcpe1c9e3JzdDRkaXNjOlcsY2Q6bi5UOC50b0ZpeGVkKDMpLHNxOm4ubTE/bi5tMS5qJDotMX07bi5acT1OYU47bi5UOD0wO24uc0w9LTE7bi5tMT1udWxsO24uaWg9TmFOO24uWXA9TmFOO24uU0Y9bnVsbDtuLmxvYWRlci5VKCJtZHN0bSIsVyl9Owp0MD1mdW5jdGlvbihuKXtuLmJSPW51bGw7bi5FZz0tMTtuLlZwPTA7bi5qaz1udWxsO24uTDE9TmFOO24uWUU9MDtuLkwyPW51bGx9OwokQz1mdW5jdGlvbihuLFcpe2lmKFcuaW5mby5hWil7bi5JOT1XLmluZm87aWYobi5qayl7dmFyIEQ9bi5qayxiPXZmdChuLCExKTtEPWtkVShEKTtuLmxvYWRlci5SMChuLlBKLGIsRCk7bi5wb2xpY3kuZUsmJlpKKFcuaW5mbyxiKTtuLkwyfHxuLnBvbGljeS5lVnx8bi5WaSgpO24uTDI9bnVsbH10MChuKX1uLmJuJiZndShuLmJuLFcpO2lmKGI9bi5XeCgpKWlmKGI9Yi5qKFcsbi5wb2xpY3kuQW0sbi5wb2xpY3kuZkIpKXtuLlZ3LnBvcCgpO24uVncucHVzaChiKTtyZXR1cm59bi5Wdy5wdXNoKFcpfTsKUUV3PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Zy5XUihXKTtpZihaTyhXLmluZm8uUEouaW5mbykmJlcuaW5mby5QSi5pbmZvLnZpZGVvLnByaW1hcmllcz09PSJidDIwMjAiKXt2YXIgYj1uZXcgdFkoRCk7JHgoYixbNDA4MTI1NTQzLDM3NDY0ODQyNywxNzQsMjI0LDIxOTM2LDIxOTM3XSkmJihiPWIuc3RhcnQrYi5wb3MsRC5nZXRVaW50OChiKT09PTEyOSYmRC5nZXRVaW50OChiKzEpPT09MSYmRC5zZXRVaW50OChiKzEsOSkpfWI9Vy5pbmZvLlBKLmluZm87Yi5YKCkmJiFaTyhiKSYmKGI9Zy5XUihXKSwobmV3IHRZKGIpKS5PSigpLFl4KFs0MDgxMjU1NDMsMzc0NjQ4NDI3LDE3NCwyMjRdLDIxOTM2LGIpKTtXLmluZm8uUEouaW5mby5mWSgpJiZRZihXLmluZm8uUEosRCk7Vy5pbmZvLlBKLmluZm8ucUgoKSYmVy5pbmZvLmZZKCkmJihEPWcuV1IoVyksKG5ldyB0WShEKSkuT0ooKSxZeChbNDA4MTI1NTQzLDM3NDY0ODQyNywxNzQsMjI0XSwzMDMyMCxEKSYmWXgoWzQwODEyNTU0MywzNzQ2NDg0MjcsCjE3NCwyMjRdLDIxNDMyLEQpKTtpZihuLnBvbGljeS54MCYmVy5pbmZvLlBKLmluZm8ucUgoKSl7Yj1nLldSKFcpO3ZhciB2PW5ldyB0WShiKTtpZigkeCh2LFs0MDgxMjU1NDMsMzc0NjQ4NDI3LDE3NCwyOTYzN10pKXtEPU5rKHYsITApO3Y9di5zdGFydCt2LnBvcztmb3IodmFyIGs9MDtrPEQtMTtrKyspYi5zZXRVaW50OCh2K2ssMCk7Yi5zZXRVaW50OCh2K0QtMSwxKX19aWYobi5lUygpJiZnLlJCKFcuaW5mby5QSi5pbmZvKSl7RD1nLldSKFcpO2I9Zy5ucyhELDAsMTcwMTYwNjI2MCk7RD1nLm5zKEQsMCwxODM2NDc2NTE2KTtpZihiJiZEKXtiLnNraXAoMik7dmFyIGg9VUQoYik7az1FRChiKTtsZXQgeD1bXTt2PVtdO2xldCBMPVtdLGU9W107aWYoaClmb3IoaD0wO2g8azsrK2gpeC5wdXNoKGkzKGIpKSx2LnB1c2goaTMoYikpLEwucHVzaChVRChiKSksZS5wdXNoKFVEKGIpKTtlbHNlIGZvcihoPTA7aDxrOysraCl4LnB1c2goeUwoYikpLHYucHVzaCh5TChiKSksTC5wdXNoKFVEKGIpKSwKZS5wdXNoKFVEKGIpKTtiPXg7RD1nLmJMKEQpO0Q9bmV3IFJlaCh2WzBdL0QsYlswXS9EKX1lbHNlIEQ9bnVsbDtpZih2PUQpe2lmKGcuUkIoVy5pbmZvLlBKLmluZm8pKWZvcihEPWcuV1IoVyksaz1nLm5zKEQsMCwxNzAxMDgyMjI3KTtrOyliPWssYi50eXBlPTE5MzY0MTkxODQsYi5kYXRhLnNldFVpbnQzMihiLm9mZnNldCs0LDE5MzY0MTkxODQpLGs9Zy5ucyhELGsub2Zmc2V0K2suc2l6ZSwxNzAxMDgyMjI3KTtuLmYwPSEwO1cuaW5mby5QSi5WPXZ9fVcuaW5mby5QSi5XKCl8fFcuaW5mby5QSi5KfHxXLmluZm8uUEouaW5kZXhSYW5nZXx8RE8oVyl9OwpWSHg9ZnVuY3Rpb24obixXKXtpZihuLmlzRHJtKCkpe2lmKFcuaW5mby5QSi5pbmZvLnFIKCkpe3ZhciBEPW5ldyB0WShnLldSKFcpKTtpZigkeChELFs0MDgxMjU1NDMsMzc0NjQ4NDI3LDE3NCwyODAzMiwyNTE1MiwyMDUzMywxODQwMl0pKXt2YXIgYj1OayhELCEwKTtEPWIhPT0xNj9udWxsOlNQKEQsYil9ZWxzZSBEPW51bGw7Yj0id2VibSJ9ZWxzZSBXLmluZm8uTz1NdlMoZy5XUihXKSksRD1SN1UoVy5pbmZvLk8pLGI9ImNlbmMiO0QmJkQubGVuZ3RoJiYoRD1uZXcgcnUoRCxiKSxuLnBvbGljeS5QSCYmZy5SQihXLmluZm8uUEouaW5mbykmJihiPVpLWihnLldSKFcpKSkmJihELlVXPWIpLEQucUg9Vy5pbmZvLlBKLmluZm8ucUgoKSxXLk4mJlcuTi5jcnlwdG9QZXJpb2RJbmRleCYmKEQuY3J5cHRvUGVyaW9kSW5kZXg9Vy5OLmNyeXB0b1BlcmlvZEluZGV4KSxXLk4mJlcuTi5YJiYoRC5OPVcuTi5YKSxuLmxvYWRlci5XbihEKSl9fTsKY3JoPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5iUjtXPU1hdGgubWluKFcsRC5KLnRvdGFsTGVuZ3RoKTtpZihXPT09RC5KLnRvdGFsTGVuZ3RoKXJldHVybiBuLmJSPW51bGwsRDtEPXZSKEQsVyk7bi5iUj1EWzFdO3JldHVybiBEWzBdfTsKRFgyPWZ1bmN0aW9uKG4sVyxEKXtpZihELmluZm8uUEouVygpKXtpZihuLmYwJiZhRXcoRCkpe1c9Zy5XUihEKTt2YXIgYj1nLm5zKFcsMCwxOTUzNjU4MjIyKTtpZihiKXtiLnNraXAoMSk7dmFyIHY9WmMoYik8PDE2fFVEKGIpLGs9diYxLGg9diY0O2lmKHYmMjU2KXtXPXYmNTEyO3ZhciB4PXYmMTAyNDt2Jj0yMDQ4O3ZhciBMPUVEKGIpO0w8Mnx8KGsmJmIuc2tpcCg0KSxoJiZiLnNraXAoNCksaz1FRChiKSxiLnNraXAoKEwtMSkqKDQrKFc/NDowKSsoeD80OjApKyh2PzQ6MCkpLTQpLGIuZGF0YS5zZXRVaW50MzIoYi5vZmZzZXQrYi5OLGspKX19fWlmKFc9bi5xOSYmbi5xOS5PNygpKWlmKFc9RC5pbmZvLmZZKCkpVz1YWihEKSx4PW4ucTksczQ/KGI9MS9XLFc9bi5WeihXKT49eC5WeigpK2IpOlc9bi5nZXREdXJhdGlvbigpPj14LmdldER1cmF0aW9uKCksVz0hVztXJiZhRXcoRCkmJihXPW4ucTksczQ/KGI9WFooRCkseD0xL2IsYj1uLlZ6KGIpLFc9Vy5WeigpK3gtYik6Vz1XLmdldER1cmF0aW9uKCktCm4uZ2V0RHVyYXRpb24oKSxXPTErVy9ELmluZm8uVyxXdyhnLldSKEQpLFcpKX1lbHNle2I9ITE7bi5qa3x8KEdpKEQpLEQuTiYmKG4uams9RC5OLGI9ITAsaz1ELmluZm8saD1ELk4uc2VnbWVudE51bWJlcixrLlk9InVwZGF0ZVdpdGhFbXNnIixrLmokPWgsaz1ELk4say5WJiZuLlBKLnR3KCFrLlYsImVtc2ciKSxrPUQuaW5mby5QSi5pbmZvLGg9Zy5XUihEKSxnLlJCKGspP0dqKGgsMTcwMTY3MTc4Myk6ay5xSCgpJiZZeChbNDA4MTI1NTQzXSwzMDc1NDQ5MzUsaCkpKTthOmlmKChrPWVHKEQsbi5wb2xpY3kuUFgpKSYmcSQoRCkpaD1uVHcobixEKSxuLlQ4Kz1oLGstPWgsbi5ZRSs9ayxuLlpxPW4ucG9saWN5LlNWP24uWnErazpOYU47ZWxzZXtpZihuLnBvbGljeS5Zcil7aWYoaD1MPW4ubG9hZGVyLnFhKGcua1goRCksMSksbi5acT49MCYmRC5pbmZvLnR5cGUhPT02KXtpZihuLnBvbGljeS5TViYmaXNOYU4obi5ZcCkpe2cuR3EobmV3IGcuUXgoIk1pc3NpbmcgZHVyYXRpb24gd2hpbGUgcHJvY2Vzc2luZyBwcmV2aW91cyBjaHVuayIsCkQuaW5mby5nYSgpKSk7bi5sb2FkZXIuaXNPZmZsaW5lKCkmJiFuLnBvbGljeS5UUXx8V2paKG4sRCxoKTtHWihuLCJtIik7YnJlYWsgYX12PUwtbi5acTt2YXIgZT12LW4uVDg7bGV0IEc9RC5pbmZvLmokLHI9bi5tMT9uLm0xLmokOi0xLE49bi5paCxIPW4uWXAsQT1uLnBvbGljeS5RJCYmdj5uLnBvbGljeS5RJCx5PU1hdGguYWJzKGUpPjEwLFQ9TWF0aC5hYnMobi5acS1oKTwxRS03O2lmKE1hdGguYWJzKGUpPjFFLTQpe24uSVMrPTE7bGV0IHo9bi5qaz8uSigpO2U9e2F1ZGlvOmAkeytuLmVTKCl9YCxzcTpHLnRvRml4ZWQoKSxzbGljZVN0YXJ0OkwsbGFzdFNxOnIudG9GaXhlZCgpLGxhc3RTbGljZVN0YXJ0Ok4sbGFzdFNsaWNlRHVyYXRpb246SCx0b3RhbERyaWZ0Oih2KjFFMykudG9GaXhlZCgpLHNlZ0RyaWZ0OihlKjFFMykudG9GaXhlZCgpLHNraXBSZXdyaXRlOmAkeysoQXx8eSl9YH07ej8ubGVuZ3RoJiYoZS5hZENwbj16WzBdKTtuLmxvYWRlci5oYW5kbGVFcnJvcigicW9lLmF2c3luYyIsCmUpO24uc0w9R31BfHx5fHxUfHwoaD1uLlpxKTtMPW5UdyhuLEQsTCk7ay09TDtuLlQ4PXYrTH19ZWxzZSBoPWlzTmFOKG4uWnEpP0QuaW5mby5zZWdtZW50U3RhcnRUaW1lOm4uWnE7V2paKG4sRCxoKSYmKG4uWUUrPWssbi5acT1oK2ssbi5wb2xpY3kuWmgmJm4uSVM+PW4ucG9saWN5LlpoJiYobi5JUz0wLG4ubG9hZGVyLkdtKHtyZXNldEZvclJld3JpdGVzOiJjb3VudCJ9KSkpfW4ubTE9RC5pbmZvO24uWXA9TE0oRCk7RC5XPj0wJiYobi5paD1ELlcpO2lmKGImJm4uamspe2I9dmZ0KG4sITApO1pKKEQuaW5mbyxiKTtuLmJSJiZaSihuLmJSLmluZm8sYik7Zm9yKHggb2YgVyluLnBvbGljeS5qJiZ4LmokIT09bi5qaz8uc2VnbWVudE51bWJlcnx8WkooeCxiKTsoRC5pbmZvLmFafHxuLmJSJiZuLmJSLmluZm8uYVopJiZELmluZm8udHlwZSE9PTZ8fChuLkwyPWIsbi5wb2xpY3kuVTE/KFc9a2RVKG4uamspLG4ubG9hZGVyLlIwKG4uUEosYixXKSk6KFc9bi5sb2FkZXIsVy5LdS5pc01hbmlmZXN0bGVzcyYmCk4yKFcsYixudWxsLCEhbi5QSi5pbmZvLnZpZGVvKSksbi5wb2xpY3kuZVZ8fG4uVmkoKSl9fVZIeChuLEQpO24udGltZXN0YW1wT2Zmc2V0JiZ4WChELG4udGltZXN0YW1wT2Zmc2V0KX07CnZmdD1mdW5jdGlvbihuLFcpe3ZhciBELGI9bi5qaztpZihEPVRfKGIpKUQuc3RhcnRTZWNzKz1uLkwxO3ZhciB2PW4uTDEsaz0wO24uUEogaW5zdGFuY2VvZiBkdCYmKGs9bi5QSi5yYik7cmV0dXJuIG5ldyBSNChiLnNlZ21lbnROdW1iZXIsdixXP2s6bi5ZRSxiLmluZ2VzdGlvblRpbWUsYHNxLyR7Yi5zZWdtZW50TnVtYmVyfWAsdm9pZCAwLHZvaWQgMCxXLEQsbi5wb2xpY3kueUg/Yi5OOm51bGwpfTsKa2RVPWZ1bmN0aW9uKG4pe3JldHVybiBuLmZLKCk/bmV3IHByKENnKG4pLG4uSigpLEJBKG4pLEZwKG4pLHdGKG4pLGcuTWQobiksZy5ScihuKSk6bnVsbH07Cm5Udz1mdW5jdGlvbihuLFcsRCl7dmFyIGI9MDtpZihXLmluZm8uUEouaW5mby5xSCgpJiYhcSQoVykpcmV0dXJuIDA7aWYobi5xOSYmIW4uZVMoKSl7bGV0IGU9MDtEJiZnLlJCKFcuaW5mby5QSi5pbmZvKT9lPUQtbi5acTpXLmluZm8uUEouaW5mby5xSCgpJiYoZT1uLlQ4KTt2YXIgdj1XLmluZm8uaiQ7RD1lRyhXLG4ucG9saWN5LlBYKTtsZXQge1Y1OkcsVGo6cn09bi5xOS5iNCgpO3Y9dj09PUd8fHY+RyYmdj5uLnNMO3ZhciBrPU1hdGguYWJzKHItZSk+LjAyO2lmKG4ucG9saWN5LlJ0KXt2YXIgaD1NYXRoLmFicyhyLWUpO2lmKHYmJmg+bi5wb2xpY3kuUnQmJmg8MTApcmV0dXJuIG4ubG9hZGVyLkdtKHthdkRlc3luYzoiY291bnQifSksMH1pZihXLmluZm8uUEouaW5mby5xSCgpJiZuLnBvbGljeS5WZilyZXR1cm4gMDtpZih2JiZrKXtiPU1hdGgubWF4KC45NSxNYXRoLm1pbigxLjA1LChELShyLWUpKS9EKSk7aWYoZy5SQihXLmluZm8uUEouaW5mbykpV3coZy5XUihXKSxiKTsKZWxzZSBpZihXLmluZm8uUEouaW5mby5xSCgpJiYoaz1lLXIsIWcuUkIoVy5pbmZvLlBKLmluZm8pJiYoVy5pbmZvLlBKLmluZm8ucUgoKSxiPW5ldyB0WShnLldSKFcpKSx2PVcuVj9iOm5ldyB0WShuZXcgRGF0YVZpZXcoVy5pbmZvLlBKLkouYnVmZmVyKSksZUcoVywhMCkpKSl7dmFyIHg9ayoxRTMsTD1Lcyh2KTt2PWIucG9zO2IucG9zPTA7aWYoYi5OLmdldFVpbnQ4KGIucG9zKT09PTE2MHx8UHcoYikpaWYoc1koYiwxNjApKWlmKE5rKGIsITApLHNZKGIsMTU1KSl7aWYoaz1iLnBvcyxoPU5rKGIsITApLGIucG9zPWsseD14KjFFOS9MLEw9ZnMoYikseD1MK01hdGgubWF4KC1MKi43LE1hdGgubWluKEwseCkpLHg9TWF0aC5zaWduKHgpKk1hdGguZmxvb3IoTWF0aC5hYnMoeCkpLCEoTWF0aC5jZWlsKE1hdGgubG9nKHgpL01hdGgubG9nKDIpLzgpPmgpKXtiLnBvcz1rKzE7Zm9yKGs9aC0xO2s+PTA7ay0tKWIuTi5zZXRVaW50OChiLnBvcytrLHgmMjU1KSx4Pj4+PTg7Yi5wb3M9CnZ9fWVsc2UgYi5wb3M9djtlbHNlIGIucG9zPXY7ZWxzZSBiLnBvcz12fWI9ZUcoVyxuLnBvbGljeS5QWCk7Yj1ELWJ9YiYmVy5pbmZvLlBKLmluZm8ucUgoKSYmbi5sb2FkZXIuVSgid2VibUR1cmF0aW9uQWRqdXN0bWVudCIse2R1cmF0aW9uQWRqdXN0bWVudDpiLHZpZGVvRHJpZnQ6ZStiLGF1ZGlvRHJpZnQ6cn0pfXJldHVybiBifTsKV2paPWZ1bmN0aW9uKG4sVyxEKXtpZighaE0oVyxEKSlyZXR1cm4gVz1YeChXLmluZm8pLFcuc21zdD0iMSIsWUMobi5sb2FkZXIsV3x8e30pLCExO2lzTmFOKG4uTDEpJiYobi5MMT1EKTtyZXR1cm4hMH07CmFFdz1mdW5jdGlvbihuKXtyZXR1cm4gbi5pbmZvLlBKLlcoKSYmbi5pbmZvLmokPT09bi5pbmZvLlBKLmluZGV4LngkKCl9Owp2VFo9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4LEwsZSl7dmFyIEc9Vy5leHBvcnRzLk1lZGlhU3RyZWFtX2dldEJhdGNoZWRTdHJlYW1FdmVudHMoRCk7aWYoRyl0cnl7dmFyIHI9Vy5tZW1vcnkuYnVmZmVyKEcsYio4OCk7bGV0IHk9bmV3IERhdGFWaWV3KHIuYnVmZmVyLHIuYnl0ZU9mZnNldCxiKjg4KSxUPVcubWVtb3J5LmhlYXAoKTtHPVtdO2ZvcihyPTA7cjxiO3IrKyl7bGV0IHo9bmV3IGIkQyh5LHIqODgsVyxUKTtHLnB1c2goe09mOnouT2YsYjM6ei5iMyxLOTp6Lks5LGx3OnoubHcsU2g6ei5TaCxnQzp6LmdDLHZXOnoudlcsR0s6ei5HSyxVVzp6LlVXLFckOnouVyQsZm9ybWF0SWQ6ei5mb3JtYXRJZCxyQzp6LnJDfSl9Yj12O2ZvcihsZXQgeiBvZiBHKXt6LmZvcm1hdElkJiZlJiYoYj1lKHouZm9ybWF0SWQpKTtsZXQgQz16Lk9mLFE9ei5iMyxWPXouSzksTHQ9ei5sdyx0aT16LlNoLEhaPXouZ0MsWjE9ei52VyxRaj16LkdLLE1pPXouVVcsTVU9ei5XJCxJQz16LmZvcm1hdElkLApJTT16LnJDO3N3aXRjaChIWil7Y2FzZSAxOmxldCBZbDt0cnl7bGV0IFVUPUpTT04ucGFyc2UoWjEpO1VUJiZ0eXBlb2YgVVQ9PT0ib2JqZWN0Ij9ZbD1VVDpZbD17cmVhc29uOlN0cmluZyhaMSl9fWNhdGNoKFVUKXtZbD17cmVhc29uOloxfX1ZQyhuLmxvYWRlcixZbCk7cmV0dXJuO2Nhc2UgMjpsZXQgajE7dHJ5e2xldCBVVD1KU09OLnBhcnNlKFoxKTtVVCYmdHlwZW9mIFVUPT09Im9iamVjdCI/ajE9VVQ6ajE9e3JlYXNvbjpTdHJpbmcoWjEpfX1jYXRjaChVVCl7ajE9e3JlYXNvbjpaMX19ajEuYXZEZXN5bmMhPT12b2lkIDA/bi5sb2FkZXIuR20oajEpOm4ubG9hZGVyLmhhbmRsZUVycm9yKCJxb2UuYXZzeW5jIixqMSk7YnJlYWs7Y2FzZSAzOmxldCBUej1uZXcgcnUoUWosWjEpO01pLmxlbmd0aD4wJiYoVHouVVc9TWkpO01VIT09NDI5NDk2NzI5NSYmKFR6LmNyeXB0b1BlcmlvZEluZGV4PU1VKTtRPj0wJiYoVHouTj1RKTtUei5xSD1iLmluZm8/LnFIKCk/PyExO24ubG9hZGVyLlduKFR6KTsKYnJlYWs7Y2FzZSA0OmxldCBmaD1wUihRaiksT0k9UUwoZmgpO2lmKE9JKXtsZXQgVVQ9bmV3IFg1KE9JLFoxKTtuLk49VVQ7VVQuViYmYi50dz8uKCFVVC5WLCJlbXNnIik7bGV0IFBLPVRfKFVUKTtQSyYmKFBLLnN0YXJ0U2Vjcys9QyxuLmxvYWRlci5NZShiLFBLLFVULnNlZ21lbnROdW1iZXIsVVQuZksoKSkpfWJyZWFrO2Nhc2UgNzpsZXQgcEs7dHJ5e2xldCBVVD1KU09OLnBhcnNlKFoxKTtVVCYmdHlwZW9mIFVUPT09Im9iamVjdCImJihwSz1VVCl9Y2F0Y2goVVQpe31pZihwSyYmcEsucmVzZXRGb3JSZXdyaXRlcyE9PXZvaWQgMCl7bi5sb2FkZXIuR20ocEspO2JyZWFrfWlmKFoxLnN0YXJ0c1dpdGgoImRpc2NvbnRpbnVpdHlfIikpe24ubG9hZGVyLlUoIm1kc3RtIix7cnN0NGRpc2M6WjEuc3Vic3RyaW5nKDE0KSxjZDpDLnRvRml4ZWQoMyksc3E6U3RyaW5nKElNKX0pO2JyZWFrfWxldCBPej1aMS5yZXBsYWNlKC9bXmEtekEtWjAtOTsuIV8tXS9nLCJfIik7bi5sb2FkZXIuVSgic2xpY2Vfbm90X2Z1bGx5X3Byb2Nlc3NlZCIsCnttc2c6T3p9KTticmVhaztjYXNlIDg6bGV0IEJXO3RyeXtCVz1KU09OLnBhcnNlKFoxKX1jYXRjaChVVCl7bi5sb2FkZXIuVSgid2FzbV9qc29uX3BhcnNlX2Vycm9yIix7ZXY6SFoudG9TdHJpbmcoKX0pO2NvbnRpbnVlfXgoQlcpO2IuTigpJiZrJiZaSChuLmxvYWRlci5LdSxiLG4uVyk7YnJlYWs7Y2FzZSA5OmxldCBZRTt0cnl7WUU9SlNPTi5wYXJzZShaMSl9Y2F0Y2goVVQpe24ubG9hZGVyLlUoIndhc21fanNvbl9wYXJzZV9lcnJvciIse2V2OkhaLnRvU3RyaW5nKCl9KTtjb250aW51ZX1MKFlFKTtiLk4oKSYmayYmWkgobi5sb2FkZXIuS3UsYixuLlcpO2JyZWFrO2Nhc2UgMTA6dj1aMTtuLlc9djtJQyYmZSYmKGI9ZShJQykpO2IuSj1RajtoPy5KKFFqLHYpO2IuTigpJiZrJiZaSChuLmxvYWRlci5LdSxiLHYpO2JyZWFrO2Nhc2UgMTE6Yi5WPW5ldyBSZWgodGksVik7YnJlYWs7Y2FzZSAxNDpsZXQgWmk9bmV3IFI0KElNLEMsVixMdCxgc3EvJHtJTX1gLHZvaWQgMCx2b2lkIDAsCiExLG4uSixuLk4/Lk4pO3Y9bnVsbDtuLk4mJm4uTi5mSygpJiYodj1uZXcgcHIoQ2cobi5OKSxuLk4uSigpLEJBKG4uTiksRnAobi5OKSx3RihuLk4pLGcuTWQobi5OKSxnLlJyKG4uTikpKTtuLmxvYWRlci5SMChiLFppLHYpO2JyZWFrO2Nhc2UgMTU6bGV0IFdJPU51bWJlcihaMSk7aXNOYU4oV0kpfHxuLmxvYWRlci5wWj8uKFdJKTticmVhaztjYXNlIDY6bGV0IERBPW5ldyBSNChJTSxDLFYsTHQsYHNxLyR7SU19YCx2b2lkIDAsdm9pZCAwLCEwLG4uSixuLk4/Lk4pO2lmKG4ucG9saWN5Py5VMT8/ITApdj1udWxsLG4uTiYmbi5OLmZLKCkmJih2PW5ldyBwcihDZyhuLk4pLG4uTi5KKCksQkEobi5OKSxGcChuLk4pLHdGKG4uTiksZy5NZChuLk4pLGcuUnIobi5OKSkpLG4ubG9hZGVyLlIwKGIsREEsdik7ZWxzZXt2YXIgTj1uLmxvYWRlcjtOLkt1LmlzTWFuaWZlc3RsZXNzJiZOMihOLERBLG51bGwsISFiLmluZm8udmlkZW8pfWJyZWFrO2Nhc2UgMTI6dmFyIEg9bi5sb2FkZXI7dj0KYjt2YXIgQT1uZXcgUjQoSU0sQyxWLEx0LGBzcS8ke0lNfWAsdm9pZCAwLHZvaWQgMCwhMCxuLkosbi5OPy5OKTtILkt1LmlzTWFuaWZlc3RsZXNzJiZUeChILkt1LEEuaiQsISF2LmluZm8udmlkZW8pO2JyZWFrO2Nhc2UgNTpsZXQgcFY7dHJ5e3BWPUpTT04ucGFyc2UoWjEpfWNhdGNoKFVUKXtuLmxvYWRlci5VKCJ3YXNtX2pzb25fcGFyc2VfZXJyb3IiLHtldjpIWi50b1N0cmluZygpfSk7Y29udGludWV9cFYuc3RhcnRTZWNzKz1DO24uSj1wVjtuLmxvYWRlci5NZShiLHBWLElNLG4uTj8uZksoKT8/ITEpO2JyZWFrO2Nhc2UgMTM6UWYoYixuZXcgRGF0YVZpZXcoUWouYnVmZmVyLFFqLmJ5dGVPZmZzZXQsUWouYnl0ZUxlbmd0aCkpO2JyZWFrO2RlZmF1bHQ6bi5sb2FkZXIuVSgid2FzbV91bmtub3duX2V2Iix7ZXY6SFoudG9TdHJpbmcoKX0pfX19ZmluYWxseXtXLmV4cG9ydHMuTWVkaWFTdHJlYW1fY2xlYXJQZW5kaW5nRXZlbnRzKEQpfWVsc2UgVy5leHBvcnRzLk1lZGlhU3RyZWFtX2NsZWFyUGVuZGluZ0V2ZW50cyhEKX07Ckg2PWZ1bmN0aW9uKG4pe24uVWwmJihuLlVsLmRpc3Bvc2UoKSxuLlVsPW51bGwpO24uU0s9dm9pZCAwO24uWFY9dm9pZCAwfTsKSjQ9ZnVuY3Rpb24obixXLEQsYix2LGssaCl7dmFyIHg9V15uO3ZhciBMOyhufDIpPj0yNyYmbisyPDMzJiYoTD1iKHYsayxoKSk7aWYoISgobnw0KT4+NCkpZm9yKEQ9KEQlYltJWzVdXStiW0lbNV1dKSViW0lbNV1dO0QtLTspYltJW3heNDM4NF1dKGJbSVt4XjQzODldXSgpKTtpZigobi0yfDU4KT49biYmKG4tOHwxNSk8bil7Zm9yKHZhciBlPXheNDY3NCxHPVtdOysrZS1HW0lbNV1dLSh4XjQ2NDIpOyl7c3dpdGNoKGUpe2Nhc2UgeF40Njk3OmU9eF40NjU0O2NvbnRpbnVlO2Nhc2UgeF40NzI5OmU9eF40Njc1O2JyZWFrO2Nhc2UgeF40Njc1OmUtPXheNDYyNDtjb250aW51ZTtjYXNlIHheNDY2NDplPXheNDcwNjtjb250aW51ZTtjYXNlIHheNDY1MjplPXheNDcwMX1HW0lbeF40NjI4XV0oU3RyaW5nW0lbeF40NjU2XV0oZSkpfUw9R31yZXR1cm4gTH07CmZyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5qXygpLGI9RC5leHBvcnRzLk1lZGlhU2xpY2VfZ2V0VHlwZShXKSx2PUQuZXhwb3J0cy5NZWRpYVNsaWNlX2dldFNlZ051bShXKSxrPUQuZXhwb3J0cy5NZWRpYVNsaWNlX2dldFN0YXJ0VGltZShXKSxoPUQuZXhwb3J0cy5NZWRpYVNsaWNlX2dldER1cmF0aW9uKFcpLHg9RC5leHBvcnRzLk1lZGlhU2xpY2VfaXNFbmRPZlNlZ21lbnQoVykhPT0wLEw9RC5leHBvcnRzLk1lZGlhU2xpY2VfZ2V0U2xpY2VPZmZzZXQoVyksZT1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRTZWdtZW50TG10KFcpLEc9RC5leHBvcnRzLk1lZGlhU2xpY2VfaXNGYXN0U2Vla2FibGUoVykhPT0wLHI9RC5leHBvcnRzLk1lZGlhU2xpY2VfZ2V0Q2xpcElkKFcpLE49RC5leHBvcnRzLk1lZGlhU2xpY2VfZ2V0Q2xpcElkTGVuZ3RoKFcpLEg9RC5leHBvcnRzLk1lZGlhU2xpY2VfZ2V0Rm9ybWF0SWQoVyksQT1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRGb3JtYXRJZExlbmd0aChXKSwKeT1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRTZWdtZW50TWVkaWFTb3VyY2UoVyksVD1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRSZXF1ZXN0VG9rZW4oVyksej1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRSZXF1ZXN0VG9rZW5MZW5ndGgoVyksQz1ELm1lbW9yeS5oZWFwKCksUT0iIjtyJiZOPjAmJihRPWcuSEcobmV3IFVpbnQ4QXJyYXkoQyxyLE4pKS5yZXBsYWNlKC9cMC9nLCIiKSk7cj0iIjtIJiZBPjAmJihyPWcuSEcobmV3IFVpbnQ4QXJyYXkoQyxILEEpKS5yZXBsYWNlKC9cMC9nLCIiKSk7SD0iIjtUJiZ6PjAmJihIPWcuSEcobmV3IFVpbnQ4QXJyYXkoQyxULHopKS5yZXBsYWNlKC9cMC9nLCIiKSk7VD1yJiZuLkVlP24uRWUocik6bi5QSjtDPUQubWVtb3J5LmhlYXAoKTtBPUQuZXhwb3J0cy5NZWRpYVNsaWNlX2dldERhdGEoVyk7ej1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRMZW5ndGgoVyk7Qz1uZXcgUzUoWyhuZXcgVWludDhBcnJheShDLEEseikpLnNsaWNlKCldKTtBPQpELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRTZWdtZW50Qnl0ZVJhbmdlU3RhcnQoVyk7RD1ELmV4cG9ydHMuTWVkaWFTbGljZV9nZXRTZWdtZW50TGVuZ3RoQnl0ZXMoVyk7Vz12b2lkIDA7RD4wJiZULlcoKSYmKFc9V18oQSxEKSk7aHx8dHlwZW9mIFQucmIhPT0ibnVtYmVyInx8KGg9VC5yYik7Yj1uZXcgcUkoYixULFcsIndhc20iLHYsayxoLEwseix4LGUsUSxHLHksSCk7eD1uZXcgYjgoYixDKTtpZihuLnBvbGljeS5Zcnx8bi5wb2xpY3kuUyQpYj0hIWIuTiYmdj09PW4ueHAseC5XPWI/bi5tOTprLHguWD1iP24uenI6aCxifHwobi54cD12LG4ubTk9eC5XLG4uenI9eC5YKTtyZXR1cm4geH07CnlrPWZ1bmN0aW9uKG4pe24uaj0hMDtuLlBEPSEwO24uWD0tMTtQdShuLEluZmluaXR5KX07Cm1pPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBvZiBuLkopSjAobixXKTtuLko9W107bi5OPW51bGx9OwpLdj1mdW5jdGlvbihuLFcsRD0hMSl7aWYobi5RRSl7bGV0IGI9bi5RRS5aRigpLHY9RlooYixXKSxrPU5hTixoPUkkKG4pO2gmJihrPUZaKGIsaC5QSi5pbmRleC5nZXRTdGFydFRpbWUoaC5qJCkpKTtpZih2PT09ayYmbi5OJiZuLk4uSiYma1F3KFNxKG4pLDApKXJldHVybiBXfW49QTAobixXLEQpO3JldHVybiBuPj0wP246TmFOfTsKUHU9ZnVuY3Rpb24obixXLEQpe24uUEouTigpO3ZhciBiPUEwKG4sVyk7aWYoYj49MClyZXR1cm4gYjtuLlY/LmNKKFcsRCk7Vz1NYXRoLm1pbihXLG4uVy5McygpKTtuLk49bi5wb2xpY3kudHc/bnVsbDpuLlBKLksoVykuQXdbMF07bWQobikmJihuLnBvbGljeS5YWSYmRD8uc2Vla1NvdXJjZT09PTYwfHxuLlFFJiZuLlFFLmFib3J0KCksbi5wb2xpY3kucG8mJm4uVj8uWSgpKTtuLlMkPTA7cmV0dXJuIG4uTj9uLk4uc2VnbWVudFN0YXJ0VGltZTpXfTsKaVk9ZnVuY3Rpb24obil7cmV0dXJuIG4uVy5XMigpfTsKS3I9ZnVuY3Rpb24obixXLEQ9ITEsYj0hMSl7VyYmczQmJm4uVy5CVyhXLml3KCkpO0R8fG4uVj8uVigpO24uUUU9VztuLlY/LnR3KG4uUUUsYil9OwpJJD1mdW5jdGlvbihuKXtyZXR1cm4gbi5wb2xpY3kuZkM/bi5WPy5iZCgpfHxudWxsOm4uUUUmJm4uUUUuWmcoKX07Cmhacj1mdW5jdGlvbihuKXt2YXIgVz17fTtmb3IobGV0IEQ9MDtEPG4uTy5sZW5ndGg7RCsrKVdbYHIke0R9YF09bi5PW0RdO3JldHVybiBXfTsKTzQ9ZnVuY3Rpb24obixXKXtpc05hTihuLlkpfHxuLlUoImFzd3IiLHtzcTpXLmluZm8uQXdbMF0uaiQsaWQ6Vy5pbmZvLkF3WzBdLlBKLmluZm8uaXRhZyx4dGFnOlcuaW5mby5Bd1swXS5QSi5pbmZvLkosZXA6RGF0ZS5ub3coKS1uLll9KTtuLkoucHVzaChXKTtuLk49Zy5VTShXLmluZm8uQXcpO24uTy5wdXNoKFcuZ2EoKSk7bi5PLmxlbmd0aD40JiZuLk8uc2hpZnQoKX07CnhYQz1mdW5jdGlvbihuLFcpe2lmKFcuUUEoKSl7bGV0IEQ9Vy54OSgpO2ZvcihsZXQgYiBvZiBEKW4ucG9saWN5LlcmJlcgaW5zdGFuY2VvZiBTbiYmbi5VKCJvbWJsc3MiLHtzOmIuaW5mby5nYSgpfSksbi5XZyhXLmluZm8uQXcsYixXLlh2KCkpfX07CkxqVT1mdW5jdGlvbihuKXtuLkoubGVuZ3RoP24uTj1nLlVNKGcuVU0obi5KKS5pbmZvLkF3KTpuLlcuUkMoKT9uLk49bi5XLld4KCkuaW5mbzpuLk49SSQobil9OwpQNj1mdW5jdGlvbihuLFcpe3ZhciBEPXtlVzpbXSxCaTpbXX07cmV0dXJuIG4uVj8uTyhXKT8/RH07CkEwPWZ1bmN0aW9uKG4sVyxEPSExKXtpZighbi5OfHwhbi5OLkopcmV0dXJuIE5hTjtuPVNxKG4pO1c9ZVp0KG4sVysuMDIsRCk7cmV0dXJuIFc8MD9OYU46a1F3KG4sRD9XOjApP25bV10uc2VnbWVudFN0YXJ0VGltZTpOYU59OwptZD1mdW5jdGlvbihuKXtpZihuLlBKLmluZm8uSUI9PT0iZiJ8fG4ucG9saWN5LkomJm4uVy5vQygpKXJldHVybiEwO3ZhciBXPUkkKG4pO2lmKCFXKXJldHVybiExO3ZhciBEPVpkKFcpJiZXLmFaO3JldHVybiBuLmlzTWFuaWZlc3RsZXNzJiZuLnR3PjA/RHx8Vy5qJD49bi50dzpEfTsKWmQ9ZnVuY3Rpb24obil7cmV0dXJuIG4/bi5WKCk6ITF9OwpnVEM9ZnVuY3Rpb24obil7dmFyIFc9SSQobik7cmV0dXJuIFc/Vy5qLW4ubG9hZGVyLmdldEN1cnJlbnRUaW1lKCk6MH07ClU0PWZ1bmN0aW9uKG4sVyxELGIpe2lmKCFuLlBKLmluZGV4Lk1JKFcsITApKXJldHVybiExO3RyeXttaShuKTtuLlcuSzgoVyk7aWYobi5wb2xpY3kuTilyZXR1cm4gbi5OPW51bGwsITA7Yj5EP1B1KG4sYik6bi5OPW4uUEouaihXLTEsITEpLkF3WzBdfWNhdGNoKHYpe3JldHVybiBXPUIkKHYpLFcuZGV0YWlscy5yZWFzb249InJvbGxia2VyciIsbi5sb2FkZXIuaGFuZGxlRXJyb3IoVy5lcnJvckNvZGUsVy5kZXRhaWxzLFcuc2V2ZXJpdHkpLCExfXJldHVybiEwfTsKSjA9ZnVuY3Rpb24obixXLEQ9ITEpe24uY3EoVyxEKTtXLmRpc3Bvc2UoKX07Cmc3PWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1XXm47aWYoISgobnw3KT4+NCkpe3ZhciB2PURbSVtiXjIzXV0oSVtiXjJdKSxrPXt9O2ZvcihsZXQgTD0wO0w8dltJWzVdXTtMKyspdmFyIGg9UjAoNixiXjczMjUsdixMLGspO3ZhciB4PWt9aWYoKG4tOV4yMSk8biYmbi03PDwxPj1uKWZvcih2PURbSVs1XV07djspRFtJW2JeNjMzM11dKERbSVszXV0oLS12LDEpWzBdKTtpZigobnw0MCk9PW4pe3Y9Yl45MDYyO2ZvcihrPVtdOysrdi1rW0lbNV1dLShiXjg5NjYpOyl7c3dpdGNoKHYpe2Nhc2UgYl44OTg4OnYtPWJeOUUzO2Nhc2UgYl45MDg1OmNhc2UgYl45MDgyOmNhc2UgYl45MDgzOmNvbnRpbnVlO2Nhc2UgYl45MDUzOnY9Yl44OTY5O2Nhc2UgYl45MDgwOmNhc2UgYl45MDgxOmNhc2UgYl45MDMwOmNvbnRpbnVlO2Nhc2UgYl44OTY4OnY9Yl45MDgxfWtbSVtiXjkwMDhdXShTdHJpbmdbSVtiXjg5ODBdXSh2KSl9eD1rfXJldHVybiB4fTsKeW89ZnVuY3Rpb24obil7dmFyIFc9bi5XLld4KCk7cmV0dXJuIFc/Vy5pbmZvOkkkKG4pfTsKRTQ9ZnVuY3Rpb24obixXKXt2YXIgRDtmb3IoRD0wO0Q8bi5KLmxlbmd0aCYmVyE9PW4uSltEXTtEKyspO2lmKEQ9PT1uLkoubGVuZ3RoKUowKG4sVyk7ZWxzZXtmb3IoO0Q8bi5KLmxlbmd0aDspSjAobixuLkoucG9wKCkpO3ZhciBiPXlvKG4pO2ImJmIuUEouRCgpJiZnLm9NKFcuaW5mby5Bdyx2PT4kTih2LGIpKT8obi5OPWIsbi5wb2xpY3kuVyYmbi5VKCJjZXIiLHtsc3I6ImxzcCIsCmxzcDpiLmdhKCl9KSk6KHhOKFcuaW5mby5Bd1swXSk/KG4uTj1XLldvJiZXLldvLlc/VEQxKFcuV28uVyk6bER4KFcuaW5mby5Bd1swXSksbi5wb2xpY3kuVyYmbi5VKCJjZXIiLHtsc3I6bi5OLmdhKCksbHNwOmI/LmdhKCl9KSk6KG4uTj1udWxsLG4ucG9saWN5LlcmJm4uVSgiY2VyIix7bHNyOiJudWxsIixsc3A6Yj8uZ2EoKX0pKSxuLmxvYWRlci5pc09mZmxpbmUoKSYmIW4ucG9saWN5LlRRfHxKMChuLFcsITApKX19OwppUz1mdW5jdGlvbihuKXtyZXR1cm4gbWQobil8fFpkKG4uVy5XeCgpPy5pbmZvKX07ClNxPWZ1bmN0aW9uKG4pe3ZhciBXPVtdLEQ9SSQobik7RCYmVy5wdXNoKEQpO1c9Zy53eihXLG4uVy5mMygpKTtmb3IobGV0IGIgb2Ygbi5KKWZvcihsZXQgdiBvZiBiLmluZm8uQXcpYi5TMyYmKFc9Zy5FTShXLGs9PiF0SihrLHYpKSksKHhOKHYpfHx2LmNKKCkpJiZXLnB1c2godik7Cm4uTiYmIXpBMihuLk4sZy5VTShXKSxuLk4uUEouVygpKSYmVy5wdXNoKG4uTik7cmV0dXJuIFd9OwprUXc9ZnVuY3Rpb24obixXKXtpZighbi5sZW5ndGgpcmV0dXJuITE7Zm9yKFcrPTE7VzxuLmxlbmd0aDtXKyspaWYoIUx6KG5bVy0xXSxuW1ddKSlyZXR1cm4hMTtyZXR1cm4hMH07CmVadD1mdW5jdGlvbihuLFcsRD0hMSl7dmFyIGI9LTE7Zm9yKGxldCB2PTA7djxuLmxlbmd0aDsrK3Ype2xldCBrPW5bdl07aWYoay5YPD1XKWlmKEQpYj12O2Vsc2UgaWYoay5zZWdtZW50U3RhcnRUaW1lK2suVz49VylyZXR1cm4gdn1yZXR1cm4gYn07CnZhciBZalo9ZnVuY3Rpb24obixXKXtyZXR1cm4gTTNbSVsxMF1dKHRoaXMsMiw0OTA2LG4sVyl9Owp1Uz1mdW5jdGlvbihuKXtyZXR1cm4hKCFuLk58fG4uTi5QSj09PW4uUEopfTsKWDB0PWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gbi5wb2xpY3kuTj9uLnpzKCEwKTxEOihuPXlvKG4pKSYmIVpkKG4pP24uaj5XJiZuLmo8VytEOiExfTsKZy5vJD1mdW5jdGlvbihuKXtuLlY/LlYoKTtuLmtJKCl9Owpxemg9ZnVuY3Rpb24obil7cmV0dXJuISFuLk4mJm4uTi5qJCE9PS0xJiZuLk4uaiQ8bi5QSi5pbmRleC5aTygpfTsKR1FiPWZ1bmN0aW9uKG4pe3ZhciBXPW4uTjtXJiZXLmokPT09LTEmJihuPW4uVy5XeCgpKSYmeE4obi5pbmZvKSYmKG49bi5pbmZvLmokLFcuWT0idXBkYXRlTGFzdFNsaWNlUmVxdWVzdGVkIixXLmokPW4pfTsKdGRqPWZ1bmN0aW9uKG4pe3JldHVybiBnLm9NKG4uSixXPT5XLmZKKX07CiRYMT1mdW5jdGlvbihuLFcpe3ZhciBEPWlZKG4pO3JldHVybiBEJiZELmluZm8udHlwZSE9PTY/IVcuTyhuLEQuaW5mby5qJCk6ITF9OwpyeUM9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgb2Ygbi5jSilpZihELnNlZ21lbnROdW1iZXI9PT1XKXJldHVybiBELnBWPzI6MTtyZXR1cm4gMH07Ck44Wj1mdW5jdGlvbih7aGFzU3ViZnJhZ21lbnRlZEZtcDQ6bj0hMSxJMjpXPSExfT17fSl7dmFyIEQ9bmV3IHNLaTtELnRJPW58fFc7cmV0dXJuIER9OwpkdT1mdW5jdGlvbihuKXtyZXR1cm4gbi5OJiZuLkZlJiZuLnBsYXliYWNrU3RhcnRQb2xpY3l9OwpKa0M9ZnVuY3Rpb24obixXLEQ9ITEpe1cudmlkZW8ucXVhbGl0eU9yZGluYWw+MTA4MCYmIW4uV0gmJihuLmUkPTM2NzAwMTYwLG4udko9NTI0Mjg4MCxuLkhKPU1hdGgubWF4KDQxOTQzMDQsbi5ISiksbi5XSD0hMCk7Vy52aWRlby5xdWFsaXR5T3JkaW5hbD4yMTYwJiYhbi5iZSYmKG4uZSQ9MTA0ODU3NjAwLG4uTnM9MTMxMDcyMDAsbi5iZT0hMCk7Zy5kTShuLnlRLmV4cGVyaW1lbnRzLCJodG1sNV9zYW1zdW5nX2thbnRfbGltaXRfbWF4X2JpdHJhdGUiKSE9PTA/Vy5pc0VuY3J5cHRlZCgpJiZnLmQ4KCkmJmcudWIoInNhbXN1bmciKSYmKGcudWIoImthbnQiKXx8Zy51YigibXVzZSIpKSYmKG4uTnM9Zy5kTShuLnlRLmV4cGVyaW1lbnRzLCJodG1sNV9zYW1zdW5nX2thbnRfbGltaXRfbWF4X2JpdHJhdGUiKSk6Vy5pc0VuY3J5cHRlZCgpJiZnLmQ4KCkmJmcudWIoImthbnQiKSYmKG4uTnM9MTMxMDcyMCk7bi55UCE9PTAmJlcuaXNFbmNyeXB0ZWQoKSYmKG4uTnM9bi55UCk7bi5KRyE9PQowJiZXLmlzRW5jcnlwdGVkKCkmJkQmJihuLk5zPW4uSkcpO1cuTnMmJihuLlFIPU1hdGgubWF4KG4uWm0sTWF0aC5taW4obi5ISiw1KlcuTnMpKSl9Owp6Wj1mdW5jdGlvbihuLFcsRD0wKXtyZXR1cm4gZy5kTShuLnlRLmV4cGVyaW1lbnRzLFcpfHxEfTsKbFM9ZnVuY3Rpb24obixXLEQsYil7bi5GZSYmKG4ucGxheWJhY2tTdGFydFBvbGljeT1XLG4uTTU9RCxuLkRDPWIpfTsKUjY9ZnVuY3Rpb24obixXKXtpZihXPDApcmV0dXJuITA7dmFyIEQ9bi54JCgpO3JldHVybiBXPER8fFc9PT1EJiYhbi5zSnx8Vz09PUQmJihuPW4uT2coKSkmJlc9PT1uLmokPyEwOiExfTsKS2EyPWZ1bmN0aW9uKG4sVyxEKXtpZighUjYobixXKSlyZXR1cm4gMDtpZighbi50SXx8IWlzTmFOKEQpJiZEPjApcmV0dXJuIDI7aWYoVzwwKXJldHVybiAxO0Q9bi54JCgpO3JldHVybiBXPER8fFc9PT1EJiYobj1uLk9nKCkpJiZXPT09bi5qJCYmIW4ucGVuZGluZz8yOjF9OwpwMGI9ZnVuY3Rpb24obixXLEQpe2lmKCEoVy5YZiYmbi5pc0NvbXBsZXRlKCkmJm4uY2FuUmV0cnkoKSYmbi5pbmZvLlhiLnBTKFcsRCkpKXJldHVybiAwO3ZhciBiPW4uaW5mby5YYi5qO2lmKGImJiFXLmVuYWJsZVNhYnJQcm9iZU9uU2VydmVySW5pdGlhdGVkSG9zdEZhbGxiYWNrKXJldHVybiAwO249VVkoRCxGNShuLmluZm8uWGIsITEsVykpO3JldHVybiBiJiYoRD0oMCxnLlIpKCktbi5YLG4uWD4wJiZEPFcuc2FiclN1Y2Nlc3NmdWxQcm9iZVRpbWVvdXRNcyk/MDpuLmorVy5YZipsTChuLCEwLGIpPigwLGcuUikoKT8wOjF9OwpqcT1mdW5jdGlvbihuLFcsRCl7aWYobi5wb2xpY3kuem0pcmV0dXJuITE7dmFyIGI9bi5KQzt2YXIgdj1XLk4/LlRDKCl8fC0xO2IuSj09PTMmJnYrMT49Yi5YPyhiLlUoInNkYWkiLHtoYWx0cnE6disxLGVzdDpiLlh9KSxiPSExKTpiPWIuSiE9PTI7aWYoIWJ8fCEoVy5OP1cuTi5QSi5YYjpXLlBKLlhiKS5ZKG4ucG9saWN5LG4ubm4sbi5sb2FkZXIuSXcpfHxuLmxvYWRlci5pc1N1c3BlbmRlZCYmKCFUWihuLnNjaGVkdWxlKXx8bi5sb2FkZXIuT00pKXJldHVybiExO2lmKG4ucG9saWN5LkomJnFzPj01KXJldHVybiBnLkphKG4ubG9hZGVyLmoyKSwhMTtpZihuLkt1LmlzTWFuaWZlc3RsZXNzKXtpZihXLkoubGVuZ3RoPjAmJlcuTiYmVy5OLmokPT09LTF8fFcuSi5sZW5ndGg+PW4ucG9saWN5LndvfHwhbi5wb2xpY3kuWE0mJlcuSi5sZW5ndGg+MCYmIW4ucG9saWN5LlYudEkpcmV0dXJuITE7aWYoVy5qKXJldHVybiFuLkt1LmlzTGl2ZXx8IWlzTmFOKG4uWkEpfWlmKHRkaihXKSlyZXR1cm4hMTsKaWYoIVcuTil7aWYoIVcuUEouTigpKXJldHVybiExO1B1KFcsbi5sb2FkZXIuZ2V0Q3VycmVudFRpbWUoKSl9aWYoaVkoVykmJihXLld4KCkhPT1pWShXKXx8bi5sb2FkZXIuaXNTdXNwZW5kZWQpKXJldHVybiExO3Y9KGI9bi5wb2xpY3kuc1MpJiYhVy5KLmxlbmd0aCYmVy56cyghMCk8TWF0aC5taW4oYixELnpzKCkpO2I9Vy5KLmxlbmd0aCtELkoubGVuZ3RoO3ZhciBrPShXLkoubGVuZ3RoP1cuSlswXS5ReSgpOiExKXx8KEQuSi5sZW5ndGg/RC5KWzBdLlF5KCk6ITEpfHxuLkt1LmlzTGl2ZTsodnx8aykmJi0tYjtpZihiKzE+PW4ucG9saWN5LkN5KXJldHVybiExO2I9Vy5OO2lmKCFiKXJldHVybiEwO2IuY0ooKSYmYi5QSi5OKCkmJihXLk49Zy5VTShiLlBKLlZRKGIpKSxiPVcuTik7aWYoIWIuVigpJiYhYi5QSi5YKGIpKXJldHVybiExO2s9bi5LdS5YZ3x8bi5LdS5pc1dpbmRvd2VkTGl2ZTtpZihuLkt1LmlzTWFuaWZlc3RsZXNzJiZrKXtrPVcuUEouaW5kZXgueCQoKTt2YXIgaD0KRC5QSi5pbmRleC54JCgpO2s9TWF0aC5taW4oayxoKTtpZihXLlBKLmluZGV4LlRYKCk+MCYmaz4wJiZiLmokPj1rKXJldHVybiBXLnR3PWssRC50dz1rLCExfWlmKGIuUEouaW5mby5hdWRpbyYmYi5jSigpfHxiLlYoKSlyZXR1cm4hMTtrPSFXLlBEJiYhRC5QRDtpZih2PSF2KXY9Yi5qLHY9ISEoRC5OJiYhWmQoRC5OKSYmRC5OLmo8dik7aD1XPT09bi52aWRlb1RyYWNrJiZuLnBvbGljeS5UQztyZXR1cm4gdiYmKCFuLkt1LmlzTWFuaWZlc3RsZXNzfHxELk4mJkQuTi5qJiZiLmopJiZrJiYhaHx8bi5wb2xpY3kuQlYmJiFXLlBEJiZELlBEPyExOnhOKGIpJiZiLmo+WXppKG4sVyk/KFl6aShuLFcpLCExKToobj1XLlFFKSYmbi5pc0xvY2tlZCgpPyExOiEwfTsKVm89ZnVuY3Rpb24obixXKXtIJGgobi5sb2FkZXIsVyk7dmFyIEQ9elAoVyksYj1uLmxvYWRlci5sdSgpO0Q9e2lqOm4uc2NoZWR1bGUsczQ6RCxCbDpmaXgobi5JZyxEKSxRbjpoSihXLkF3WzBdKSxkaXNhYmxlUmVjb3JkaW5nOmdaKDQwLDEyMTIsVy5YYi5OKSxORDpuLnBvbGljeS5XLEJlOih2LGspPT57bi5sb2FkZXIuS2EodixrKX19OwpuLnNjaGVkdWxlLkouViYmKEQucVk9KG4udmlkZW9UcmFjay5QSj8uaW5mby5Oc3x8MCkrKG4uYXVkaW9UcmFjay5QSj8uaW5mby5Oc3x8MCkpO24uaG4mJihELmokPVcuQXdbMF0uaiQsRC5aQT1XLlpBLEQuaG49bi5obik7Yj17Vzc6d0xVKFcsbi5sb2FkZXIuZ2V0Q3VycmVudFRpbWUoKSksZTE6bi5wb2xpY3kuc1YmJnlzKFcpJiZXLkF3WzBdLlBKLmluZm8udmlkZW8/RWpaKG4uY1YpOnZvaWQgMCxTTjpuLnBvbGljeS5UQyxwb1Rva2VuOm4ubG9hZGVyLk1ZKCksVWo6bi5sb2FkZXIuVTQoKSxKTzppc05hTihuLkpPKT9udWxsOm4uSk8sYUk6bi5hSSxQbjpuLlBuLHEkOmJ9O3JldHVybiBuZXcgQUIobi5wb2xpY3ksVyxELG4ubm4sKHYsayk9Pnt0cnl7YTp7bGV0IE1pPXYuaW5mby5Bd1swXS5QSixNVT1NaS5pbmZvLnZpZGVvP24udmlkZW9UcmFjazpuLmF1ZGlvVHJhY2s7aWYoISh2LnN0YXRlPj0yKXx8di5pc0NvbXBsZXRlKCl8fHYuQWcoKXx8ISghbi5sb2FkZXIubWVkaWFTb3VyY2V8fApuLmxvYWRlci5pc1N1c3BlbmRlZHx8TVUuenMoKT4zKSl7e3ZhciBoPW4ucG9saWN5LHg9bi5ubjtsZXQgSUM9di5BZygpO2lmKHYuaXNDb21wbGV0ZSgpfHwhSUN8fHYuaW5mby5YYi5wUyhoLHgpKXZhciBMPTA7ZWxzZXt2YXIgZT1oLnpmO2lmKCFlfHxJQzxlKUw9MDtlbHNle3ZhciBHPVVZKHgsRjUodi5pbmZvLlhiLCEwLGgpKTtMPUcuTnx8Ry50aW1lZE91dHx8Ry5zdGFydGVkPzA6Mn19fUw9PT0xJiYobi5WPSEwKTtmckMobix2LEwpO2lmKHYuaXNDb21wbGV0ZSgpfHx2LnFOKCkmJms8Myl7aWYobi5wb2xpY3kuVyl7bGV0IElDPXYudGltaW5nLkQoKTtJQy5yc3Q9di5zdGF0ZTtJQy5zdHJtPXYueGhyLkdwKCk7SUMuY25jbD12LnhociYmdi50NS5YPzE6MDtuLmxvYWRlci5VKCJycXMiLElDKX12Lm9QJiZuLmxvYWRlci5VKCJzYndlMyIse30sITApfWlmKCFuLnFOKCkmJnYuc3RhdGU+PTIpe1hTaChuLnRpbWluZyx2LE1pKTt2YXIgcj1uLmxvYWRlcjtuLkpPJiZ2Lnp3JiYKciYmKG4uSk89TmFOLG4ubG9hZGVyLm45KHYuencpLG4ubG9hZGVyLk1qKCksbi5sb2FkZXIuVSgiY2FiclV0Y1NlZWsiLHttZWRpYVRpbWVTZWNvbmRzOnYuend9KSk7di50ViYmbi5KTyYmdi50ViYmIXYudFYuYWN0aW9uJiYobi5sb2FkZXIud1Iobi5KTyksbi5KTz1OYU4sbi5sb2FkZXIuVSgiY2FiclV0Y1NlZWtGYWxsYmFjayIse3RhcmdldFV0Y1RpbWVTZWNvbmRzOm4uSk99KSk7di5BaCYmbi5sb2FkZXIuc1codi5BaCk7bi5wb2xpY3kuTmQmJihuLlBuPXYuUG4pO2lmKHYuc3RhdGU9PT0zKXtFNChNVSx2KTt5cyh2LmluZm8pJiZDcihuLE1VLE1pLCEwKTtpZihuLnNVKXtsZXQgSUM9di5pbmZvLllsKCk7SUMmJm4uc1UuWjUodi5pbmZvLkF3WzBdLmokLE1pLmluZm8uaWQsSUMpfW4ubG9hZGVyLkJZKCl9ZWxzZSBpZih2LmlzQ29tcGxldGUoKSYmdi5pbmZvLkF3WzBdLnR5cGU9PT01KXtpZih2LnN0YXRlIT09NCl2LnRuKCkmJm4ubG9hZGVyLmhhbmRsZUVycm9yKHYuVkcoKSwKdi55MCgpKTtlbHNle3ZhciBOPSh2LmluZm8uQXdbMF0uUEouaW5mby52aWRlbz9uLnZpZGVvVHJhY2s6bi5hdWRpb1RyYWNrKS5KWzBdfHxudWxsO04mJk4gaW5zdGFuY2VvZiBBQiYmTi5BZygpJiZOLk1CKCl9di5kaXNwb3NlKCl9ZWxzZXtpZighdi50bigpJiZ2LmZKJiZ2LnN0YXRlPj0yJiZ2LnN0YXRlIT09Myl7dmFyIEg9di54aHIuZ2V0UmVzcG9uc2VIZWFkZXIoIlgtUmVzcG9uc2UtSXRhZyIpO2lmKEgpe3ZhciBBPXlrcihuLmNWLEgpLHk9di5pbmZvLlc7aWYoeSl7dmFyIFQ9eS1BLkhKKCk7QS5jSj0hMDt2LmluZm8uQXdbMF0uUEouY0o9ITE7dmFyIHo9QS5ZKFQpO3YuaW5mbz16O2lmKHYuV28pe3ZhciBDPXYuV28sUT16LkF3OyhRLmxlbmd0aCE9PUMuQXcubGVuZ3RofHxRLmxlbmd0aDxDLmpTLmxlbmd0aCkmJmcuY18oImRhc2gvcmVxdWVzdCIsMjYwNTExMTE5LGAke1EubGVuZ3RofWAsYCR7Qy5Bdy5sZW5ndGh9YCxgJHtDLmpTLmxlbmd0aH1gKTtDLkF3PVE7bGV0IElDPQpRWzBdLnJhbmdlLElNPW5ldyBTNTtmb3Ioaz0wO2s8Qy5qUy5sZW5ndGg7aysrKWU1KElNLEMualNba10uSik7Zm9yKGs9MDtrPEMualMubGVuZ3RoO2srKyl7Qy5qU1trXS5pbmZvPVFba107bGV0IFlsPVFba10ucmFuZ2U7Qy5qU1trXS5KPWdkKElNLFlsLnN0YXJ0LUlDLnN0YXJ0LFlsLmxlbmd0aCl9fXYuZko9ITE7QjYobi5sb2FkZXIsbi52aWRlb1RyYWNrLEEpO3ZhciBWPW4udmlkZW9UcmFjaztWLk4mJihWLk4uUEo9QSk7bi5sb2FkZXIuWUooQS5pbmZvLnZpZGVvLnF1YWxpdHkpO3ZhciBMdD12Llh2KCk7THQmJkEuaW5mby5sYXN0TW9kaWZpZWQmJkEuaW5mby5sYXN0TW9kaWZpZWQhPT0rTHQmJkU0KG4udmlkZW9UcmFjayx2KX19ZWxzZSB2LmZKPSExfXYuWHQ/Lml0YWdEZW55bGlzdCYmbi5sb2FkZXIuV0Yodi5YdC5pdGFnRGVueWxpc3QpO2lmKHYuc3RhdGU9PT00KUYwKG4sdiksbi5KQyYmbi5KQy5TJCh2LmluZm8sbi5zVSk7ZWxzZSBpZihuLnBvbGljeS5lNCYmdi5RQSgpJiYKIXYuaXNDb21wbGV0ZSgpJiYhRjAobix2KSYmIXYudG4oKSlicmVhayBhO2lmKHYudG4oKSl7bGV0IElDPXYuaW5mby5Bd1swXS5QSixJTT12LlZHKCk7aWYoZ1ooMjQsMTE2NCxJQy5YYi5OKSl7bGV0IFR6PWcudXAodi5zOCgpLDMpO24ubG9hZGVyLlUoImRsZGJyZXJyIix7ZW06VHp8fCJub25lIn0pfWxldCBZbD12LmluZm8uQXdbMF0uaiQsajE9ekkobi5KQyx2LmluZm8uQXdbMF0uWCxZbCk7SU09PT0ibmV0LmJhZHN0YXR1cyImJihuLk4rPTEpO2lmKHYuY2FuUmV0cnkoKSYmd3Uobi5sb2FkZXIpKXtpZighKHYuaW5mby5YYi5KPj1uLnBvbGljeS5sTSYmbi5zVSYmdi5pbmZvLmlzRGVjb3JhdGVkKCkmJklNPT09Im5ldC5iYWRzdGF0dXMiJiZNMihuLnNVLGoxLFlsKSkpe3ZhciB0aT0oSUMuaW5mby52aWRlbyYmSUMuWGIuSj4xfHx2LmxOPT09NDEwfHx2LmxOPT09NTAwfHx2LmxOPT09NTAzKSYmISh3QyhuLmNWLmopLnNpemU+MCkmJiFnWig1NCwxMTg2LElDLlhiLk4pLEhaPQp2LnkwKCksWjE9SUMuaW5mby52aWRlbz9uLnZpZGVvVHJhY2s6bi5hdWRpb1RyYWNrO3RpJiYoSFouc3R1bj0iMSIpO24ubG9hZGVyLmhhbmRsZUVycm9yKElNLEhaKTtuLnFOKCl8fCh0aSYmYXEobi5jVixJQyksRTQoWjEsdiksbi5sb2FkZXIuQlkoKSl9fWVsc2UgQT0xLG4uc1UmJnYuaW5mby5pc0RlY29yYXRlZCgpJiZJTT09PSJuZXQuYmFkc3RhdHVzIiYmTTIobi5zVSxqMSxZbCkmJihBPTApLG4uS3UuaXNMaXZlJiZ2LlZHKCk9PT0ibmV0LmJhZHN0YXR1cyImJm4uTjw9bi5wb2xpY3kueGgqMj8oajQobi5LdSksbi5LdS5YZ3x8bi5LdS5pc1ByZW1pZXJlP2RWKG4ubG9hZGVyLDAse3FkOiJiYWRTdGF0dXNXb3JrYXJvdW5kIn0pOm4uS3UuaXNXaW5kb3dlZExpdmU/ZFYobi5sb2FkZXIsbi5LdS5KVSx7cWQ6ImJhZFN0YXR1c1dvcmthcm91bmQiLHFhOiEwfSk6UiQobi5sb2FkZXIpKTpuLmxvYWRlci5oYW5kbGVFcnJvcihJTSx2LnkwKCksQSk7aXNOYU4obi5KTyl8fChuLmxvYWRlci53UihuLkpPKSwKbi5KTz1OYU4pfW4ucG9saWN5LkhEJiYhdi5pc0NvbXBsZXRlKCk/UW8obi5sb2FkZXIpOm4ubG9hZGVyLkJZKCk7dmFyIFFqPXAwYih2LG4ucG9saWN5LG4ubm4pO2ZyQyhuLHYsUWopfX19fX1jYXRjaChNaSl7UWo9bi5qPzE6MCxuLmo9ITAsdj1qMihRaiksUWo9QiQoTWksUWopLG4ubG9hZGVyLmhhbmRsZUVycm9yKFFqLmVycm9yQ29kZSxRai5kZXRhaWxzLFFqLnNldmVyaXR5KSx2fHxuLmxvYWRlci56aSgpfX0sYil9OwpJcmI9ZnVuY3Rpb24obixXLEQpe2lmKGpxKG4sVyxEKSl7RD1uLkooVyxEKTtpZihuLnNVKXt2YXIgYj1ELkF3WzBdLlBKLmluZm8uaWQ7dmFyIHY9bi5KQzt2YXIgaz1ELkF3WzBdLmokO3Y9azwwJiYhaXNOYU4odi5qKT92Lmo6aztrPXpJKG4uSkMsRC5Bd1swXS5YLHYpO2xldCBMPVc9PT1uLmF1ZGlvVHJhY2s/MToyLGU9RC5Bd1swXS5QSi5pbmZvLklCLEc9Yi5zcGxpdCgiOyIpWzBdO2E6e3ZhciBoPW4uSkM7aWYoaC5OKXt2YXIgeD1oLk4uZmYuZXZlbnQ7aWYoaC5OLmokPT09dil7aD14PT09InByZWRpY3RTdGFydCI/dm9pZCAwOmguTi5mZi5ldmVudDticmVhayBhfWlmKGguTi5qJD09PXYtMSl7aD14PT09InN0YXJ0Inx8eD09PSJjb250aW51ZSI/eDp2b2lkIDA7YnJlYWsgYX19aD12b2lkIDB9aWYobi5wb2xpY3kuVlEmJm4uSkMuSiE9PTApYj1nLkp5aShuLnNVLGssdixiLEwsZSxoKSx2PDAmJkw9PT0yJiZsdShuLkpDLDAsMCwhMCksYiYmKG4ubG9hZGVyLlUoInNkYWkiLAp7c3NkYWlpbmZvOiIxIixkczpiLk15Py5CZnx8IiIsc2tpcHNxOmIuTXk/LkRKfHwtMSxpdGFnOkcsZjplLHNnOnYsc3Q6ay50b0ZpeGVkKDMpfSksRC5YPWIpO2Vsc2UgaWYoYj1uLnNVLllsKGssdixiLEwsZSxoKSx2PDAmJkw9PT0yJiZsdShuLkpDLDAsMCwhMCksYil7az17ZGVjX3NxOnYsaXRhZzpHLHN0OmsudG9GaXhlZCgzKX07aWYobi5wb2xpY3kubiQmJlcuaXNSZXF1ZXN0UGVuZGluZyh2LTEpKXtuLmxvYWRlci5VKCJzZGFpIix7d3RfZGFpc3RhdGVfb25fc2c6di0xfSk7cmV0dXJufW4ubG9hZGVyLlUoInNkYWkiLGspO2ImJihELk49bmV3IGcud1ooYikpO24ucG9saWN5LlcmJih2PUQuWGIuVy5nZXQoImlkIil8fCIiLGI9RC5OPy5nZXQoImlkIil8fCIiLHYhPT1iJiZuLmxvYWRlci5VKCJzdG1pZG1pc21hdGNoIix7Y2lkOnYsYWlkOmJ9KSl9ZWxzZSBuLkpDLkohPT01JiZuLmxvYWRlci5VKCJzZGFpIix7bm9kZWNfc3E6dixpdGFnOkcsc3Q6ay50b0ZpeGVkKDMpfSl9bi5wb2xpY3kuQ20mJgpELkF3WzBdLmokIT09LTEmJkQuQXdbMF0uaiQ8bi5LdS5JdCYmKEQ9Vy5QSi5qKG4uS3UuSXQsITEpKTtPNChXLFZvKG4sRCkpO2l1KG4udGltaW5nKTtuLlc/Lk4oRC5YYil9fTsKWXppPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5KQztEPUQuTj9ELk4uZmY6bnVsbDtpZihuLnBvbGljeS5UQyYmRClyZXR1cm4gRC5zdGFydFNlY3MrRC5DZisxNTtXPU9iKG4ubG9hZGVyLFcpO24ucG9saWN5LmpXPjAmJihEPSgoMCxnLlIpKCktbi5sb2FkZXIucUcpLzFFMyxXPU1hdGgubWluKFcsbi5wb2xpY3kualcrbi5wb2xpY3kuTEsqRCkpO1c9bi5sb2FkZXIuZ2V0Q3VycmVudFRpbWUoKStXO3JldHVybiBuLnBvbGljeS56NCYmKEQ9U3pNKG4ubG9hZGVyKStuLnBvbGljeS56NCxEPFcpPyhuLmxvYWRlci5VKCJtcmwiLHtvcmk6Vyxtb2Q6RH0sITApLG4ucG9saWN5LmxXJiZjNihuLmxvYWRlciksRCk6V307CmZyQz1mdW5jdGlvbihuLFcsRCl7aWYoRCE9PTApe2E6aWYoVz1XLmluZm8sRD1EPT09MixXLk4pVz1udWxsO2Vsc2V7dmFyIGI9Vy5Bd1swXTtpZihXLnJhbmdlKXZhciB2PVdfKFcucmFuZ2Uuc3RhcnQsTWF0aC5taW4oNDA5NixXLlcpKTtlbHNle2lmKFcuSiYmVy5KLmluZGV4T2YoIi9yYW5nZS8iKT49MHx8Vy5YYi5XLmdldCgiZGVmcmFnIik9PT0iMSJ8fFcuWGIuVy5nZXQoIm90ZiIpPT09IjEiKXtXPW51bGw7YnJlYWsgYX12PVdfKDAsNDA5Nil9dj1uZXcgd2soW25ldyBxSSg1LGIuUEosdiwiY3JlYXRlUHJvYmVSZXF1ZXN0SW5mbyIrYi5ZLGIuaiQpXSxXLkopO3YucFM9RDt2Lk49Vy5OO1c9dn1XJiZWbyhuLFcpfX07CkNyPWZ1bmN0aW9uKG4sVyxELGIpe2lmKCEoRC5OKCl8fEQuUyQoKXx8RC5jSnx8IUQuWGIuWShuLnBvbGljeSxuLm5uLG4ubG9hZGVyLkl3KXx8RC5pbmZvLklCPT09ImYifHxuLnBvbGljeS5OKSl7aWYoYil7Yj1uLklnO3ZhciB2PUQuaW5mbztiPXJWKGIsdi52aWRlbz9iLnBvbGljeS5SazpiLnBvbGljeS5JTSx2Lk5zKX1lbHNlIGI9MDtiPUQuWShiKTtuPVZvKG4sYik7VXYoYikmJk80KFcsbik7RC5jSj0hMH19OwpGMD1mdW5jdGlvbihuLFcpe2lmKFcucU4oKSlyZXR1cm4hMTt0cnl7dmFyIEQ9Vy5pbmZvLkF3WzBdLlBKO2xldCBoPUQuaW5mby52aWRlbz9uLnZpZGVvVHJhY2s6bi5hdWRpb1RyYWNrO3ZhciBiPWg7aWYobi5LdS5pc01hbmlmZXN0bGVzcyYmYil7bi5OPTA7Yi5qJiYoVy5xTigpLFcuaXNDb21wbGV0ZSgpfHxXLlFBKCksYi5qPSExKTtXLkloKCkmJm4ubG9hZGVyLkxyLklJKDEsVy5JaCgpKTt2YXIgdj1XLlRYKCksaz1XLmgwKCk7QzYobi5LdSx2LGspfWlmKFcuaW5mby5RbigpJiYhVXYoVy5pbmZvKSlmb3IobGV0IEwgb2YgVy54OSgpKWgudksoTCk7Yj1oO2ZvcihuLmxvYWRlci5nZXRDdXJyZW50VGltZSgpO2IuSi5sZW5ndGgmJmIuSlswXS5zdGF0ZT09PTQ7KXtsZXQgTD1iLkouc2hpZnQoKTt4WEMoYixMKTtiLlZRPUwuekQoKX1iLkoubGVuZ3RoJiZ4WEMoYixiLkpbMF0pO2xldCB4PSEhaVkoaCk7eCYmVyBpbnN0YW5jZW9mIFNuJiYoRC5pbmZvLmVTKCk/Z2oxKG4udGltaW5nKToKZTdiKG4udGltaW5nKSk7cmV0dXJuIHh9Y2F0Y2goaCl7Vz1XLnkwKCk7Vy5vcmlnaW49ImhyaHMiO2E6e249bi5sb2FkZXI7RD1oO2lmKEQgaW5zdGFuY2VvZiBFcnJvcil7Vy5tc2d8fChXLm1zZz1gJHtELm1lc3NhZ2V9YCk7Vy5uYW1lfHwoVy5uYW1lPWAke0QubmFtZX1gKTtpZihEIGluc3RhbmNlb2YgZy5ReCYmRC5hcmdzKWZvcihsZXQgW3gsTF1vZiBPYmplY3QuZW50cmllcyhELmFyZ3MpKVdbYGFyZyR7eH1gXT1gJHtMfWA7Zy5HcShEKTtpZihELmxldmVsPT09IldBUk5JTkciKXtuLkwuR20oVyk7YnJlYWsgYX19bi5oYW5kbGVFcnJvcigiZm10LnVucGxheWFibGUiLFcsMSl9cmV0dXJuITF9fTsKbVhiPWZ1bmN0aW9uKG4pe3ZhciBXPW4udmlkZW9UcmFjay5QSi5pbmRleDtuLmhuPW5ldyBBeVooe3NKOm4ucG9saWN5LnNKLHRJOm4ucG9saWN5LlYudEksTzg6Vy5VYygpLHgkOigpPT5XLngkKCksCk9nOigpPT5XLk9nKCl9KX07CktqaT1mdW5jdGlvbihuKXtpZihuLko/LmlzTG9ja2VkKCkpcmV0dXJuIG4udmlkZW9JbmZvczt2YXIgVz13QyhuLk4pLEQ9Zy5FTShuLnZpZGVvSW5mb3MsYj0+Yi5Ocz5uLm9aLk5zPyExOiFXLmhhcyhiLmlkKSk7Cm4uTi5sbCgpJiYoRD1nLkVNKEQsYj0+Yi52aWRlby53aWR0aDw9ODU0JiZiLnZpZGVvLmhlaWdodDw9NDgwKSk7CnJldHVybiBEfTsKTyRpPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W107Zm9yKGxldCBiIG9mIFcpRC5wdXNoKGcuVmYoYixuLkt1LnpXKSk7cmV0dXJuIER9OwpaJGk9ZnVuY3Rpb24obil7cmV0dXJuIG4uSj8ucmVhc29uPT09Im0iPyJtIjpuLko/LnJlYXNvbj09PSJzIj8icyI6bi5KJiZQYlUobixuLkopP24uSi5yZWFzb246ImEifTsKUGJVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4ub1ouSHcmJlcucmVhc29uPT09ImwifHxuLm9aLnFqPyExOm4ub1ouWWo/ITA6Vy5yZWFzb249PT0ibCJ8fFcucmVhc29uPT09ImIifHxXLnJlYXNvbj09PSJvIn07ClVYWj1mdW5jdGlvbihuLFcpe3ZhciBEPW4uTi5OO2lmKEQpe24udmlkZW9JbmZvcz1uLlY7dmFyIGI9Zy5sXyhuLnZpZGVvSW5mb3Msdj0+di5pZD09PUQpOwpiJiZiLnZpZGVvLnF1YWxpdHlPcmRpbmFsPT09Vz9uLnZpZGVvSW5mb3M9W2JdOihiPW4udmlkZW9JbmZvcy5tYXAodj0+di5pZCksbi5sb2FkZXIuVSgic2FicnBmIix7cGZpZDpgJHtEfWAsCnZmaWRzOmAke2Iuam9pbigiLiIpfWB9KSxhJChuLFcsVyksbi5OLkRlKCIiKSl9ZWxzZSBhJChuLFcsVyl9OwphJD1mdW5jdGlvbihuLFcsRCl7bi52aWRlb0luZm9zPW4uVjtuLnZpZGVvSW5mb3M9Zy5FTShuLnZpZGVvSW5mb3MsYj0+Yi52aWRlby5xdWFsaXR5T3JkaW5hbD49VyYmYi52aWRlby5xdWFsaXR5T3JkaW5hbDw9RCl9Owp5eXg9ZnVuY3Rpb24obixXKXtpZihuLlkpe3ZhciBEPWcuRU0obi5XLGI9PmIuaWQ9PT1uLlkpOwpyZXR1cm4gbkQobixEKS5pbmNsdWRlcyhXKX1EPWcuRU0obi5XLGI9PiEhYi5rWj8uaXNEZWZhdWx0KTsKcmV0dXJuIEQubGVuZ3RoPjA/bkQobixEKS5pbmNsdWRlcyhXKTpuRChuLG4uVykuaW5jbHVkZXMoVyl9OwpuRD1mdW5jdGlvbihuLFcpe3ZhciBEPW4uS3Uuelc7cmV0dXJuIFcubWFwKGI9Pk1rKGcuVmYoYixEKSkpfTsKV2w9ZnVuY3Rpb24obixXLEQ9ITEpe0hlVShuLk4sVyxEKX07CmkkUz1mdW5jdGlvbihuLFcsRCxiKXt2YXIgdj1uLkt1LGs9bi5MLmdldFZpZGVvRGF0YSgpLGg9bi5Fdix4PWpGTSh7aWo6bi5paix5UTprLkcoKSxMOm4uTCxuUjpuLm5SLG9aOm4ub1oscHo6bi5weixrRTpuLmtFLFVtOm4uVW0sRzc6bi5HNyxKJDpuLkokLFNmOm4uU2Ysc2FickxpY2Vuc2VDb25zdHJhaW50Omsuc2FickxpY2Vuc2VDb25zdHJhaW50LGo0Om4uajQscjA6bi5yMCxZczpuLllzLGVxOm4uZXEsb0c6ISFoLGF1dGhvcml6ZWRGb3JtYXRzOmsuYXV0aG9yaXplZEZvcm1hdHMsSTg6bi5JOCxsbDpuLmxsLEN4Om4uQ3gsZ0Q6bi5nRH0pLEw9U1YoayxuLnEkLG4ubmV4dFJlcXVlc3RQb2xpY3ksbi5SQSxuLmROLG4uYkosbi5yOCk7RCYmVyYmKEQ9TC5ycT9MLnJxLm1hcChyPT5yLnR5cGUpOltdLFcoInNhYnIiLHtzdG1jdHh0OkQuam9pbigiXyIpLAp1bnNudGN0eHQ6TC51dD9MLnV0LmpvaW4oIl8iKToiIn0pKTtXPW4uR2g7RD1uLk0kO0Q9PT12b2lkIDAmJlc9PT12b2lkIDAmJihEPUVUaih2LnpXLG4uZGs/LnZpZGVvKSxXPUVUaih2LnpXLG4uZGs/LmF1ZGlvKSk7aWYoay5hSSl2YXIgZT1rLmFJO3ZhciBHOyhrPW4ub1o/LlNhKSYmaz4wJiYobi5DeHx8bi5IZSkmJihHPW5ldyBVaW50OEFycmF5KGspKTtoPXtDbjp4LEJpOm4uQmksR2g6VyxNJDpELEV2OmgsdmlkZW9QbGF5YmFja1VzdHJlYW1lckNvbmZpZzplLG1IOkwsZFM6R307YiYmbi5iSz9uLmJLLmxlbmd0aD4wJiYoaC5iSz1uLmJLKTpuLk15JiYoaC5NeT1uLk15KTtuLm9aPy5EdCgpJiYhVlQoKSYmKG4udU0mJihoLnVNPW4udU0pLG4uckcmJihoLnJHPW4uckcpKTtoLmVXPW4uZVc7aC5jRT12LkdDO3JldHVybiBofTsKRVRqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFc/W2cuVmYoVy5pbmZvLG4pXTpbXX07Cm9Uaj1mdW5jdGlvbihuLFcsRCl7Vz1CdyhuLlhiLHVuVShuLFcsRCksVyk7bi5ENSgpJiZXLnNldCgicHJvYmUiLCIxIik7bi5raCgpJiZXLnNldCgic2Jwcm9iZSIsIjEiKTtyZXR1cm4gV307CkRrPWZ1bmN0aW9uKG4pe3ZhciBXPXt9LEQ9W10sYj1bXTtpZighbi5kYXRhKXJldHVybiBXO2Zvcih2YXIgdj0wO3Y8bi5kYXRhLmVXLmxlbmd0aDt2Kyspe3ZhciBrPW4uZGF0YS5lV1t2XTtELnB1c2goYGkuJHtrLmZvcm1hdElkPy5pdGFnfV9zdC4ke2suc3RhcnRUaW1lTXN9X2UuJHtrLnN0YXJ0VGltZU1zK2suZHVyYXRpb25Nc31fZC4ke2suZHVyYXRpb25Nc31fc24uJHtrLkFDfV9lbi4ke2suaTl9YCl9Zm9yKHY9MDt2PG4uZGF0YS5CaS5sZW5ndGg7disrKWs9bi5kYXRhLkJpW3ZdLGIucHVzaChgaS4ke2suZm9ybWF0SWQ/Lml0YWd9X3NuLiR7ay5zZXF1ZW5jZU51bWJlcn1fc2wuJHtrLnZEfHxOYU59X2xiLiR7ay5TMH1fdHIuc18ke2suaHg/LnN0YXJ0VGlja3N9X2RfJHtrLmh4Py5sOH1fdF8ke2suaHg/LnRpbWVzY2FsZX1fZWRfJHtrLnUzfWApO1cucHRpbWU9bi5OPy5Dbj8ublJ8fDA7Vy5ydHlwZT1uLnJlcXVlc3RUeXBlO1cuYnJsPUQuam9pbigiOyIpO1cucHM9Yi5qb2luKCI7Iik7CnJldHVybiBXfTsKdW5VPWZ1bmN0aW9uKG4sVyxEKXtuLnBTPT09dm9pZCAwJiYobi5wUz1uLlhiLnBTKFcsRCkpO3JldHVybiBuLnBTfTsKdmw9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uTi5OPy5lbmNyeXB0KFcsRCk7cmV0dXJuIGI/YjoobmV3IGIxKG4uTi5KKSkuZW5jcnlwdChXLEQpfTsKelpqPWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXt7dmFyIGI9bi5OO2xldCB2PXRFKCk7Yj12P25ldyBkWE0oYi5KLHYpOnZvaWQgMH1pZihiKXRyeXtyZXR1cm4gYXdhaXQgYi5lbmNyeXB0KFcsRCl9Y2F0Y2godil7fXJldHVybiB2bChuLFcsRCl9OwpscjI9YXN5bmMgZnVuY3Rpb24obixXKXsoMCxnLlIpKCk7cmV0dXJuIG4uTi5OP3paaihuLFcsbi5pdik6b24obi5OKS5lbmNyeXB0KFcsbi5pdil9OwpUOGg9ZnVuY3Rpb24obixXKXsoMCxnLlIpKCk7cmV0dXJuIG4uTi5OPy5KKFcsbi5pdil9OwpDYnQ9YXN5bmMgZnVuY3Rpb24obixXKXsoMCxnLlIpKCk7dmFyIEQ9bi5OO0Quanx8KEQuaj1uZXcgaksxKEQuVykpO3JldHVybiBMNFooRC5qLFcsbi5pdil9OwpCOGk9YXN5bmMgZnVuY3Rpb24obixXLEQpeygwLGcuUikoKTtyZXR1cm4gbi5OLk4/elpqKG4sVyxEKTpvbihuLk4pLmRlY3J5cHQoVyxEKX07CncwYj1mdW5jdGlvbihuLFcpe3ZhciBEPVc/LnByaW1hcnk7a3cobiwwLEQpO0Q9RD9GamooRCk6dm9pZCAwO2t3KG4sMixEKTtrdyhuLDEsVz8uc2Vjb25kYXJ5KX07CmhnPWZ1bmN0aW9uKG4sVyxEPSExKXtyZXR1cm4gbmV3IGcud1ooYCR7RD8iaHR0cCI6Imh0dHBzIn06Ly8ke1d9JHtuLkIuUFguYmFzZVVybH1gKX07Cmt3PWZ1bmN0aW9uKG4sVyxEKXtEPyhEPUQgaW5zdGFuY2VvZiBnLndaP0Q6aGcobixEKSxuLk4uZ2V0KFcpPy5OKCkhPT1SMCg5OCwzNTcwLEQpJiZuLk4uc2V0KFcsbmV3IE1kaihELFcpKSk6bi5OLmRlbGV0ZShXKX07CkZqaj1mdW5jdGlvbihuKXtyZXR1cm4gbi5yZXBsYWNlKC8oXGQrKS0tLS9nLChXLEQpPT57Vz1OdW1iZXIoRCk7cmV0dXJuYCR7Vz09PTE/MjpXLTF9LS0tYH0pfTsKUlpoPWZ1bmN0aW9uKG4sVz0hMSxEKXt2YXIgYj1nLlloKG4uQi5leHBlcmltZW50cywiZGVidWdfYmFuZGFpZF9ob3N0bmFtZSIpO3JldHVybiBiPyhXPWcuZE0obi5CLmV4cGVyaW1lbnRzLCJkZWJ1Z19iYW5kYWlkX3BvcnQiKSxiPVc+MD9gJHtifToke1d9YDpiLFc9bi5CLmV4cGVyaW1lbnRzLkVxKCJkZWJ1Z19iYW5kYWlkX2luc2VjdXJlX3NjaGVtZSIpLGhnKG4sYixXKSk6VyYmRD8udXJsJiYhbi5KPyhiPVIwKDY3LDM1MzksbmV3IGcud1ooRC51cmwpKSxoZyhuLGIpKTpuLk4uZ2V0KDApPy5sb2NhdGlvbi5jbG9uZSgpfTsKTEQ9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1oZyhuLCJyZWRpcmVjdG9yLmdvb2dsZXZpZGVvLmNvbSIpO0Quc2V0KCJhbHIiLCJ5ZXMiKTtELnNldCgiaWQiLGAke01hdGgucm91bmQoTWF0aC5yYW5kb20oKSoxRTUpfWApO2lmKFc9PT0xfHxXPT09MilELnNldCgiY21vPXNlbnNpdGl2ZV9jb250ZW50IiwieWVzIiksRC5zZXQoInNjIiwieWVzIik7Vz09PTImJkQuc2V0KCJjbW89dGQiLCJjLnlvdXR1YmUuY29tIik7dmFyIGI9YXdhaXQgZy5yOChELldEKCkse2Zvcm1hdDoiUkFXIix0aW1lb3V0OjVFM30pO2lmKGIueGhyLnN0YXR1cyE9PTIwMHx8IWIueGhyLnJlc3BvbnNlVGV4dClyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IGcuUXgoImIyMDQyNTgzNzFfbm9faG9zdCIsRC5XRCgpLGIueGhyLnN0YXR1cykpO3ZhciB2PW5ldyBnLndaKGIueGhyLnJlc3BvbnNlVGV4dCk7RD1SMCgzNCwzNTA2LHYpO2I9di5nZXQoIm1zIik7bj1oZyhuLEQpO3Y9di5nZXQoIm1tIik7bi5zZXQoIm1zIiwKYik7bi5zZXQoIm1tIix2KTtyZXR1cm4gRCYmUUt4KEQpP1chPT0yfHx4dyhEKT9uOlByb21pc2UucmVqZWN0KG5ldyBnLlF4KCJiMjA0MjU4MzcxX3VudHJ1c3RlZCIsRCxiKSk6UHJvbWlzZS5yZWplY3QobmV3IGcuUXgoImIyMDQyNTgzNzFfaW52YWxpZCIsRCxiKSl9Owp2YXIgSFd0PWZ1bmN0aW9uKG4pe3JldHVybiBSMFtJWzEwXV0odGhpcyw0MSw1ODQ5LG4pfTsKVmR0PWZ1bmN0aW9uKG4sVyl7bj1gaHR0cHM6Ly8ke1cuTigpfS9pbml0cGxheWJhY2s/Yz0ke2xvKG4uQil9Jm93Yz0xYDtxVyhuLCJwdyIsRD0+e0QuaHQ9Vy5KfSl9OwplUj1mdW5jdGlvbihuLFcsRCxiKXtxVyhgaHR0cHM6Ly8ke1d9L3ZpZGVvcGxheWJhY2s/cHJvYmU9MWAsRCx2PT57IWIuUygiaHRtbDVfb25lc2llX2hvc3RfcmFjaW5nIil8fGIudmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrfHxiLlMoImh0bWw1X29uZXNpZV9wcm9iZV9lY19ob3N0cyIpfHxiLldSfHxjeVooYik7bi5XLnB1c2godil9LHY9PntuLlcucHVzaCh2LmRldGFpbHMpfSl9OwpRS3g9ZnVuY3Rpb24obil7cmV0dXJuLy4qKFwuY1wueW91dHViZVwuY29tfC4qXC5nb29nbGV2aWRlb1wuY29tKS8udGVzdChuKX07Cnh3PWZ1bmN0aW9uKG4pe3ZhciBXPS9zbi1bXi5dKi0vO3JldHVybi8uKlwuY1wueW91dHViZVwuY29tLy50ZXN0KG4pJiYhVy50ZXN0KG4pfTsKZ2o9ZnVuY3Rpb24obil7Zm9yKDtuLk4ubGVuZ3RoJiYhbi5OWzBdLmlzRW5jcnlwdGVkOyl7bGV0IHt2aWRlb0lkOkQsYXU6Yixmb3JtYXRJZDp2LGJ1ZmZlcjprLGlFOmh9PW4uTi5zaGlmdCgpO2lmKGspbi5OSS5ZYS5uQT8uZ2V0KEQpPy5OKGIsdixrKTtlbHNlIGlmKGgpbi5OSS5ZYS5ZaChELGIsdik7ZWxzZXt2YXIgVz1uLk5JO1cuTlt2XS5TdT0hMDtXPVcuWWEubkE/LmdldChEKTtXPy5nRih2KSYmVz8uSih2KX19fTsKZy5EMHI9ZnVuY3Rpb24obil7Zm9yKDshbi5YJiYhbi5lcnJvcjspe3ZhciBXPW47Vy5YPSEhWEIoVywxKTtzd2l0Y2goWEIoVywyKSl7Y2FzZSAyOnZhciBEPXZvaWQgMCxiPVtdLHY9W107di5sZW5ndGg9MTk7di5maWxsKDApO3ZhciBrPVhCKFcsNSkrMjU3O0Q9WEIoVyw1KSsxO3ZhciBoPVhCKFcsNCkrNDtmb3IodmFyIHg9MDt4PGg7eCsrKXZbYXJ4W3hdXT1YQihXLDMpO3Y9cVAodik7Zm9yKGg9aytEO2IubGVuZ3RoPGg7KXt4PW5SdChXLHYpO2xldCBMO3N3aXRjaCh4KXtjYXNlIDE2Ong9YltiLmxlbmd0aC0xXTtMPVhCKFcsMikrMzticmVhaztjYXNlIDE3Ong9MDtMPVhCKFcsMykrMzticmVhaztjYXNlIDE4Ong9MDtMPVhCKFcsNykrMTE7YnJlYWs7ZGVmYXVsdDpMPTF9Zm9yKDtMPjA7TC0tKWIucHVzaCh4KX1iLmxlbmd0aCE9PWg/Vy5lcnJvcj0hMDooRD1iLnNsaWNlKC1EKSxiLmxlbmd0aD1rLFdZaChXLGIsRCkpO2JyZWFrO2Nhc2UgMTpXWWgoVyxHYyx0Zyk7YnJlYWs7CmNhc2UgMDokdyhXLFcuTiY3KTtiPVhCKFcsMTYpO2s9WEIoVywxNik7KGJeaykhPT02NTUzNSYmKFcuZXJyb3I9ITApO2s9Vy5kYXRhLnN1YmFycmF5KFcuSixXLkorYik7Vy5vdXRwdXQuc2V0KGssVy5XKTtXLkorPWI7Vy5XKz1iO2JyZWFrO2RlZmF1bHQ6Vy5lcnJvcj0hMH1uLlc+bi5vdXRwdXQubGVuZ3RoJiYobi5vdXRwdXQ9bmV3IFVpbnQ4QXJyYXkobi5XKjIpLG4uVz0wLG4uSj0wLG4uWD0hMSxuLk49MCxuLnJlZ2lzdGVyPTApfW4ub3V0cHV0Lmxlbmd0aCE9PW4uVyYmKG4ub3V0cHV0PW4ub3V0cHV0LnN1YmFycmF5KDAsbi5XKSk7cmV0dXJuIG4uZXJyb3I/bmV3IFVpbnQ4QXJyYXkoMCk6bi5vdXRwdXR9OwpYQj1mdW5jdGlvbihuLFcpe2Zvcig7bi5OPFc7KXtpZihuLko+PW4uZGF0YS5sZW5ndGgpcmV0dXJuIG4uZXJyb3I9ITAsMDtuLnJlZ2lzdGVyfD1uLmRhdGFbbi5KKytdPDxuLk47bi5OKz04fXZhciBEPW4ucmVnaXN0ZXImKDE8PFcpLTE7bi5yZWdpc3Rlcj4+PVc7bi5OLT1XO3JldHVybiBEfTsKV1loPWZ1bmN0aW9uKG4sVyxEKXtXPXFQKFcpO0Q9cVAoRCk7Zm9yKHZhciBiPW4uZGF0YSx2PW4ub3V0cHV0LGs9bi5XLGg9bi5yZWdpc3Rlcix4PW4uTixMPW4uSjs7KXtpZih4PDE1KXtpZihMPmIubGVuZ3RoKzEpe24uZXJyb3I9ITA7YnJlYWt9aHw9KGJbTCsxXTw8OCkrYltMXTw8eDtMKz0yO3grPTE2fXZhciBlPVdbaCYxMjddO2lmKGU8MClmb3IoaD4+PTc7ZTwwOyllPVdbKGgmMSktZV0saD4+PTE7ZWxzZSBoPj49ZSYxNTt4LT1lJjE1O2U+Pj00O2lmKGU8MjU2KXZbaysrXT1lO2Vsc2UgaWYobi5yZWdpc3Rlcj1oLG4uTj14LG4uSj1MLGU+MjU2KXtoPXJqW2VdO2grPVhCKG4sc3FbZV0pO0w9blJ0KG4sRCk7eD1OUFtMXTt4Kz1YQihuLHBEW0xdKTtpZihieVomJmg8eCl4PWsteCx2LmNvcHlXaXRoaW4oayx4LHgraCk7ZWxzZSBmb3IoTD1rK2gsZT1rO2U8TDtlKz00KXZbZV09dltlLXhdLHZbZSsxXT12W2UteCsxXSx2W2UrMl09dltlLXgrMl0sdltlKzNdPXZbZS14KzNdOwprKz1oO2g9bi5yZWdpc3Rlcjt4PW4uTjtMPW4uSn1lbHNlIGJyZWFrfW4uVz1rfTsKblJ0PWZ1bmN0aW9uKG4sVyl7aWYobi5OPDcpe3ZhciBEPW4uZGF0YTtsZXQgYj1uLko7Yj5ELmxlbmd0aCYmKG4uZXJyb3I9ITApO24ucmVnaXN0ZXJ8PShEW2IrMV08PDgpK0RbYl08PG4uTjtuLkorPTI7bi5OKz0xNn1EPVdbbi5yZWdpc3RlciYxMjddO2lmKEQ+PTApcmV0dXJuICR3KG4sRCYxNSksRD4+NDtmb3IoJHcobiw3KTtEPDA7KUQ9V1tYQihuLDEpLURdO3JldHVybiBEPj40fTsKJHc9ZnVuY3Rpb24obixXKXtuLk4tPVc7bi5yZWdpc3Rlcj4+PVd9OwpxUD1mdW5jdGlvbihuKXt2YXIgVz1bXTtmb3IodmFyIEQgb2YgbilXW0RdfHwoV1tEXT0wKSxXW0RdKys7dmFyIGI9V1swXT0wO0Q9W107dmFyIHY9MCxrPTA7Zm9yKHZhciBoPTE7aDxXLmxlbmd0aDtoKyspV1toXT9rPWg6V1toXT0wLGI9YitXW2gtMV08PDEsRFtoXT1iLGg+NyYmKHYrPVdbaF0pO2ZvcihiPTE7Yjx2OyliPDw9MTtXPTEyODtrPW5ldyBJbnQxNkFycmF5KDEyOCsoYitrKSoyKTtmb3Iodj0wO3Y8bi5sZW5ndGg7disrKXtoPW5bdl07aWYoIWgpY29udGludWU7dmFyIHg9RFtoXSsrO2I9MDtmb3IodmFyIEw9MDtMPGg7TCsrKWI9Yjw8MXx4Pj5MJjE7eD12PDw0fGg7aWYoaDw9Nylmb3IoTD0xPDw3LWg7TC0tOylrW0w8PGh8Yl09eDtlbHNle0w9YiYxMjc7aC09Nztmb3IoYj4+PTc7aC0tOyl7a1tMXXx8KGtbTF09LVcsVys9Mik7bGV0IGU9YiYxO2I+Pj0xO0w9ZS1rW0xdfWtbTF09eH19cmV0dXJuIGt9OwpZdz1mdW5jdGlvbihuLFcpe24uVyhgZGNtcHJzXyR7bi5jb250ZXh0fV8ke24uTn1fZ3pfJHtXfWApfTsKdlJ3PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIE9vKG4sZnVuY3Rpb24oKXt2YXIgRD10aGlzO3JldHVybiBmdW5jdGlvbiooKXt2YXIgYj1EYXRlLm5vdygpO3RyeXtZdyhELCJzIik7dmFyIHY9eWllbGQqUFAoVygpKTtpZighdil0aHJvdyBFcnJvcigibm8gcmVzdWx0Iik7WXcoRCwiZSIpO3JldHVybiB2fWNhdGNoKGgpe1l3KEQsImYiKTt2YXIgaz1oO0QuSihrLCJneiIpO3Rocm93IGg7fWZpbmFsbHl7dj1EYXRlLm5vdygpLEQuYmooImd6Iix2LWIsayl9fSgpfSl9OwplU2o9ZnVuY3Rpb24obixXLEQsYil7cmV0dXJuIE9vKHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgdj0oayxoKT0+dlJ3KG5ldyBrMWkoayxELGIpLCgpPT5IUChoKG4pKSk7CmlmKEhsKXRyeXtyZXR1cm4geWllbGQqUFAodigibiIsaFMxKSl9Y2F0Y2goayl7fWlmKFcpdHJ5e3JldHVybiB5aWVsZCpQUCh2KFcuaXNBc21qcz8iYSI6InciLGs9PngwQyhrLFcpKSl9Y2F0Y2goayl7fXJldHVybiB5aWVsZCpQUCh2KCJwIixMWTIpKX0oKX0pfTsKaFMxPWFzeW5jIGZ1bmN0aW9uKG4pe2lmKCFIbCl0aHJvdyBFcnJvcigiRGVjb21wcmVzc2lvblN0cmVhbSBpcyBub3Qgc3VwcG9ydGVkIik7dmFyIFc9WksudFgoKSxEPW5ldyBEZWNvbXByZXNzaW9uU3RyZWFtKCJnemlwIiksYj1ELndyaXRhYmxlLmdldFdyaXRlcigpO2Iud3JpdGUobik7Yi5jbG9zZSgpO249RC5yZWFkYWJsZS5nZXRSZWFkZXIoKTtmb3IoRD1uZXcgUzUoW10pOzspe2xldCB7dmFsdWU6dixkb25lOmt9PWF3YWl0IG4ucmVhZCgpO2lmKGspYnJlYWs7RC5hcHBlbmQodil9bj10UihEKTtaSy5lVSgiZ3puYiIsVyxNYXRoLmNlaWwobi5ieXRlTGVuZ3RoLzE2KSk7cmV0dXJuIG59OwpMWTI9ZnVuY3Rpb24obil7dmFyIFc9WksudFgoKTtuPWcuRDByKG5ldyBnLmdSYihuKSk7WksuZVUoImd6amIiLFcsTWF0aC5jZWlsKG4uYnl0ZUxlbmd0aC8xNikpO3JldHVybiBufTsKeDBDPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9WksudFgoKTtuPVcubWVtb3J5LmNvcHlJbihuKTt0cnl7bGV0IHY9bi5ieXRlT2Zmc2V0LGs9bi5ieXRlTGVuZ3RoLGg9Vy5leHBvcnRzLmdldEluZmxhdGVkU2l6ZSh2LGspO2lmKGg9PT0wKXRocm93IEVycm9yKCJ3YXNtX2d6OiBiYWQgaW5wdXQiKTtsZXQgeD1XLm1lbW9yeS5tYWxsb2MoaCksTD1XLmV4cG9ydHMuaW5mbGF0ZUd6aXAodixrLHgpO2lmKEwpdGhyb3cgVy5tZW1vcnkuZnJlZSh4KSxFcnJvcihgd2FzbV9nejogZmFpbCR7TH1gKTt2YXIgYj1XLm1lbW9yeS5idWZmZXIoeCxoKX1maW5hbGx5e1cubWVtb3J5LmZyZWUobi5ieXRlT2Zmc2V0KX1XPVcubWVtb3J5Lm1vdmVPdXQoYik7WksuZVUoImd6d2IiLEQsTWF0aC5jZWlsKFcuYnl0ZUxlbmd0aC8xNikpO3JldHVybiBXfTsKZkQ9ZnVuY3Rpb24obil7dmFyIFc9bi5xdWV1ZTtXLk4ubGVuZ3RoJiZXLk5bMF0uaXNFbmNyeXB0ZWQmJiFXLkomJihXLk4ubGVuZ3RoPTApO2ZvcihsZXQgRCBvZiBPYmplY3Qua2V5cyhuLk4pKXtsZXQgYj1uLk5bRF07Yi5TdXx8KFc9bi5xdWV1ZSxXLk4ucHVzaCh7dmlkZW9JZDpiLnZpZGVvSWQsZm9ybWF0SWQ6RCxpc0VuY3J5cHRlZDohMX0pLFcuSnx8Z2ooVykpfX07ClhCdz1mdW5jdGlvbihuLFcpe3ZhciBEPVcudG90YWxMZW5ndGgsYj0hMTtzd2l0Y2gobi5XKXtjYXNlIDA6bi5qcChXLG4uWCkudGhlbih2PT57dmFyIGs9bi5ZYTtrLkRrKCJvcHJyIik7ay5wbGF5ZXJSZXNwb25zZT12O2suVUl8fChrLkIyPSExKTtKZyhrKX0sdj0+e24uWWEuZmFpbCh2KX0pOwpicmVhaztjYXNlIDI6bi5Eaygib3JtayIpO1c9dFIoVyk7bi5xdWV1ZS5kZWNyeXB0KFcpO2JyZWFrO2RlZmF1bHQ6Yj0hMH1uLllhLnhHJiZuLllhLlUoIm9tYnVwIixgaWQuMTE7cHQuJHtuLld9O2xlbi4ke0R9JHtiPyI7aWdub3JlZC4xIjoiIn1gKTtuLlc9bnVsbH07CnFQaT1mdW5jdGlvbihuLFcpe24uWWEuRGsoIm9wcmd6Ml9zIik7Vz1lU2ooVyxuLllhLkcoKS5qXygpLG4uWWEueEc/bi5ZYS5VLmJpbmQobi5ZYSk6KCk9Pnt9LEQ9PntuLllhLkRrKEQpfSk7ClNrKFcsKCk9PntuLllhLkRrKCJvcHJnejJfZSIpfSwoKT0+e24uWWEuRGsoIm9wcmd6Ml9mIil9KTsKcmV0dXJuIFd9OwpHMVM9YXN5bmMgZnVuY3Rpb24obixXKXtuLllhLkRrKCJvcHJnel9zIik7aWYoSGwpdHJ5e3ZhciBEPWF3YWl0IGhTMShXKTtuLllhLkRrKCJvcHJnel9uIik7bi5ZYS5VKCJvcHJzZ3oiLHtpOiJuIn0pO3JldHVybiBEfWNhdGNoKGIpe24uWWEuVSgiZ3plcnIiLHtpbXBsOiJuYXRpdmUiLGVycjpgJHtifWB9KX1pZihEPW4uWWEuRygpLmpfKCkpdHJ5e2xldCBiPXgwQyhXLEQpO24uWWEuRGsoIm9wcmd6X3ciKTtuLllhLlUoIm9wcnNneiIse2k6IncifSk7cmV0dXJuIGJ9Y2F0Y2goYil7bi5ZYS5VKCJnemVyciIse2ltcGw6Indhc20iLGVycjpgJHtifWB9KX1XPUxZMihXKTtuLllhLkRrKCJvcHJnel9wIik7bi5ZYS5VKCJvcHJzZ3oiLHtpOiJqIn0pO3JldHVybiBXfTsKdF9oPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgUHJvbWlzZShXPT57c2V0VGltZW91dChXLG4pfSl9OwokMGI9ZnVuY3Rpb24obixXKXt2YXIgRD1uLkcoKTtEPW4uWVomJkQuUygiaHRtbDVfb25lc2llX3ByZWxvYWRfdXNlX2NvbnRlbnRfb3duZXIiKTtpZigoVz1SWmgoVyxELG4uUWEpKSYmbi52aWRlb0lkKXtuPWcuZDEobi52aWRlb0lkKTtEPVtdO2lmKG4pZm9yKGIgb2YgbilELnB1c2goYi50b1N0cmluZygxNikucGFkU3RhcnQoMiwiMCIpKTt2YXIgYj1ELmpvaW4oIiIpO1cuc2V0KCJpZCIsYik7cmV0dXJuIFd9fTsKck9oPWFzeW5jIGZ1bmN0aW9uKG4sVyxEPTApe3ZhciBiPVtdO2IucHVzaChXLmxvYWQoKSk7RD4wJiZiLnB1c2godF9oKEQpKTthd2FpdCBQcm9taXNlLnJhY2UoYik7cmV0dXJuICQwYihuLFcpfTsKczlDPWZ1bmN0aW9uKG4sVyxELGI9ITEpe24uc2V0KCJjcG4iLFcuY2xpZW50UGxheWJhY2tOb25jZSk7bi5zZXQoIm9wciIsIjEiKTt2YXIgdj1XLkcoKTtuLnNldCgicG9yIiwiMSIpO3RFKCl8fG4uc2V0KCJvbmVtIiwiMSIpO1cuc3RhcnRTZWNvbmRzPjAmJm4uc2V0KCJvc3RzIixgJHtXLnN0YXJ0U2Vjb25kc31gKTtifHwodi5TKCJodG1sNV9vbmVzaWVfZGlzYWJsZV9wYXJ0aWFsX3NlZ21lbnRzIikmJm4uc2V0KCJvc2VzIiwiMSIpLFc9di5TKCJodG1sNV9nYXBsZXNzX29uZXNpZV9ub19tZWRpYV9ieXRlcyIpJiZBSihXKSYmVy5ZWixEJiYhVz8oVz1ELmF1ZGlvLG4uc2V0KCJwdmkiLEQudmlkZW8uam9pbigiLCIpKSxuLnNldCgicGFpIixXLmpvaW4oIiwiKSksTnN8fG4uc2V0KCJvc2giLCIxIikpOihuLnNldCgib2FkIiwiMCIpLG4uc2V0KCJvdmQiLCIwIiksbi5zZXQoIm9hYWQiLCIwIiksbi5zZXQoIm9hdmQiLCIwIikpKX07Ck5KaT1mdW5jdGlvbihuLFcsRCxiLHY9ITEpe3ZhciBrPWBodHRwczovL3lvdXR1YmVpLmdvb2dsZWFwaXMuY29tL3lvdXR1YmVpLyR7Vy5TVi5pbm5lcnR1YmVBcGlWZXJzaW9ufS9wbGF5ZXJgLGg9W3tuYW1lOiJDb250ZW50LVR5cGUiLHZhbHVlOiJhcHBsaWNhdGlvbi9qc29uIn1dO2ImJmgucHVzaCh7bmFtZToiQXV0aG9yaXphdGlvbiIsdmFsdWU6YEJlYXJlciAke2J9YH0pO2gucHVzaCh7bmFtZToiVXNlci1BZ2VudCIsdmFsdWU6Zy5YUSgpfSk7Zy5BcigiRU9NX1ZJU0lUT1JfREFUQSIpP2gucHVzaCh7bmFtZToiWC1Hb29nLUVPTS1WaXNpdG9yLUlkIix2YWx1ZTpnLkFyKCJFT01fVklTSVRPUl9EQVRBIil9KTooRD1ELnZpc2l0b3JEYXRhfHxnLkFyKCJWSVNJVE9SX0RBVEEiKSkmJmgucHVzaCh7bmFtZToiWC1Hb29nLVZpc2l0b3ItSWQiLHZhbHVlOkR9KTsoRD1nLkFyKCJTRVJJQUxJWkVEX0xBVkFfREVWSUNFX0NPTlRFWFQiKSkmJmgucHVzaCh7bmFtZToiWC1Zb3VUdWJlLUxhdmEtRGV2aWNlLUNvbnRleHQiLAp2YWx1ZTpEfSk7KFc9Zy5ZaChXLmV4cGVyaW1lbnRzLCJkZWJ1Z19zaGVybG9nX3VzZXJuYW1lIikpJiZoLnB1c2goe25hbWU6IlgtWW91dHViZS1TaGVybG9nLVVzZXJuYW1lIix2YWx1ZTpXfSk7bj1JdyhKU09OLnN0cmluZ2lmeShuKSk7cmV0dXJue3VybDprLGUzOmgscG9zdEJvZHk6bixFYTp2LGU4OnZ9fTsKSWs9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4LEwpe3ZhciBlPW4uWUMsRz1uLmRmO249bi5DVjt2YXIgcj1lIT09dm9pZCAwJiZHIT09dm9pZCAwLE49Yi5nZXRWaWRlb0RhdGEoKSxIPVcuTi5lbmNyeXB0ZWRDbGllbnRLZXk7Vz1yP1cuaXY6dm9pZCAwO3I9R0QoaywhMCk7dj12fHwhIXRFKCkmJnI+MTU3Mjg2NDtyZXR1cm57aW5uZXJ0dWJlUmVxdWVzdDp7d1M6bix2VTplLGRmOkcsZW5jcnlwdGVkQ2xpZW50S2V5OkgsaXY6VyxtdzohMCxGRDohMCxEWToiRGVjb21wcmVzc2lvblN0cmVhbSJpbiB3aW5kb3d8fCF2LHlKOiEwfSxDbjpqRk0oe2lqOmsseVE6RCxMOmIsblI6Ti5zdGFydFNlY29uZHMqMUUzLGhxOiEwfSksb25lc2llVXN0cmVhbWVyQ29uZmlnOmgsQng6eCxtSDpTVihOKSxyZWxvYWRQbGF5YmFja1BhcmFtczpOLmdUPy5yZWxvYWRQbGF5YmFja1BhcmFtcyxVazpMfX07CnBCeD1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgpe3ZhciBMPWcubGgobixhZiksZTtpZighbi5lOClpZihlPVQ4aChXLEwpKXt2YXIgRz1lLkc0O2U9ZS5zaWduYXR1cmV9ZWxzZSBlPUc9Vy5lbmNyeXB0KEwpLCgwLGcuUikoKSxlPXBmKG5ldyBZJChXLk4uVyksZSxXLml2KTtyZXR1cm4gSWsoRyYmZT97WUM6RyxkZjplfTp7Q1Y6TH0sVyxELGIsISFuLmU4LHYsayxoLHgpfTsKWVBNPWFzeW5jIGZ1bmN0aW9uKG4sVyxELGIsdixrLGgseCl7dmFyIEw9Zy5saChuLGFmKTtMPWF3YWl0IGxyMihXLEwpO3ZhciBlPWF3YWl0IENidChXLEwpO3JldHVybiBJayh7WUM6TCxkZjplfSxXLEQsYiwhIW4uZTgsdixrLGgseCl9OwpIeVU9ZnVuY3Rpb24obixXLEQsYix2LGssaCx4KXt2YXIgTD1nLmxoKG4sYWYpO2lmKEw9VDhoKFcsTCkpcmV0dXJuIElrKHtZQzpMLkc0LGRmOkwuc2lnbmF0dXJlfSxXLEQsYiwhIW4uZTgsdixrLGgseCl9OwpKT3c9YXN5bmMgZnVuY3Rpb24obixXLEQpe24uRGsoIm9wcmRfcyIpO1c9Zkl0KG4pP2F3YWl0IEI4aShuLnlxLFcsRCk6bi55cS5kZWNyeXB0KFcsRCk7bi5Eaygib3ByZF9jIik7cmV0dXJuIFd9OwpmSXQ9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5TKCJodG1sNV9vbmVzaWVfc3luY19yZXF1ZXN0X2VuY3J5cHRpb24iKXx8Vz8uZTg/ITE6ISF0RSgpfTsKSUliPWZ1bmN0aW9uKG4pe3JldHVybiBuLlMoImh0bWw1X29uZXNpZV9ob3N0X3Byb2JpbmciKXx8bi54Rz9OczohMX07CkpnPWZ1bmN0aW9uKG4pe2lmKCFuLnBsYXllclJlc3BvbnNlKXJldHVybiExO2lmKG4uYmspcmV0dXJuITA7dmFyIFc9bi52aWRlb0RhdGEuUygiaHRtbDVfb25lc2llX2F1ZGlvX29ubHlfcGxheWJhY2siKSYmUlEobi52aWRlb0RhdGEpO2lmKG4ubkEmJm4uQjIpe2lmKCFuLm5BLmhhcyhuLkxjKSlyZXR1cm4hMTtsZXQgYj1uLm5BLmdldChuLkxjKTt2YXIgRDtpZihEPWIpe0Q9ITE7Zm9yKGxldCB2IG9mIGIudTkua2V5cygpKXtsZXQgaz1iLnU5LmdldCh2KTtpZihrKWZvcihsZXQgaCBvZiBrLkJ0KWguZUg+MCYmKGsuZVM/RD0hMDpXPSEwKX1EPSEoVyYmRCl9aWYoRClyZXR1cm4hMX1uLkRrKCJvZnIiKTtuLkNSLnJlc29sdmUobi5wbGF5ZXJSZXNwb25zZSk7cmV0dXJuIG4uYms9ITB9OwpBT009ZnVuY3Rpb24obil7aWYobi5uQSYmIW4uUygiaHRtbDVfb25lc2llX21lZGlhX2NhcGFiaWxpdGllcyIpKXtuLkRrKCJvZ3NmX3MiKTt2YXIgVz16eFMobi5MLmdldFZpZGVvRGF0YSgpLChiLHYpPT57bi5VKGIsdil9KSxEPVNQTShuLkwpOwpXLnZpZGVvPWlfYihELFcudmlkZW8pO24uRGsoIm9nc2ZfYyIpO2lmKFcudmlkZW8ubGVuZ3RoKXJldHVybiBXO24uVSgib21ic3BmIixgbC4ke0QuSn07dS4ke0QuTn07by4ke0QuV307ci4ke0QucmVhc29ufWApfX07ClNSPWZ1bmN0aW9uKG4pe2lmKCFuLm5mKXJldHVybnt9O3ZhciBXPW4ubmYuRCgpO1cuZD1uLm5mLkR0Py5iWSgpO1cuc2hvc3Q9bi56YztXLnR5PSJvIjtyZXR1cm4gV307CmN5Wj1mdW5jdGlvbihuKXtuLkIyPSExO2lmKCFKZyhuKSl7dmFyIFc9U1Iobik7Vy50aW1lb3V0PSIxIjtuLmZhaWwobmV3IGcuQ2koIm9uZXNpZS5yZXF1ZXN0IixXKSl9fTsKUGw9ZnVuY3Rpb24obixXKXtpZihXLnFOKCl8fG4ucU4oKSluLnBvbGljeS5QTHx8KG4ucG9saWN5Lmo/Zy5BZyhuLmxvYWRlcik6bi5sb2FkZXIuQlkoKSk7ZWxzZXtpZihuLnBvbGljeS5XJiZXLmlzQ29tcGxldGUoKSYmVyBpbnN0YW5jZW9mIHV1KXt2YXIgRD1uLmxvYWRlcixiPUQuVTt2YXIgdj1PYmplY3QuYXNzaWduKFcubmYuRCgpLHtyc3Q6Vy5zdGF0ZSxzdHJtOlcueGhyLkdwKCksZDpXLm5mLkR0Py5iWSgpLGNuY2w6Vy54aHImJlcudDUuWD8xOjAscnFiOlcuRUYsY3d0OlcudDUuVyxzd3Q6Vy5QcT8uS059KTt2PU9iamVjdC5hc3NpZ24oRGsoVy5pbmZvKSx2KTtiLmNhbGwoRCwicnFzIix2KX1pZihXLmlzQ29tcGxldGUoKSYmVy5ENSgpJiZXIGluc3RhbmNlb2YgdXUpVy5kaXNwb3NlKCksbi5sb2FkZXIuQlkoKTtlbHNle2lmKFcucVEoKSluLkhlPSEwLFcgaW5zdGFuY2VvZiB1dSYmWFNoKG4udGltaW5nLFcpLG0wTShuKSxtdihuKTtlbHNlIGlmKFcudG4oKSlEPW4uTC5lSigpLApXIGluc3RhbmNlb2YgdXUmJlcuaW5mby5OPy5Dbj8uajQmJkQmJihuLkIuWnQoKS5OLlFRKEtZeCl8fG4ubG9hZGVyLndSKEQpKSxXIGluc3RhbmNlb2YgdXUmJlcua2goKT8oVy5WRygpJiZuLmxvYWRlci5oYW5kbGVFcnJvcihXLlZHKCksVy55MCgpLDApLFcuZGlzcG9zZSgpKTpXIGluc3RhbmNlb2YgdXUmJng2dyhXKT9uLmxvYWRlci5ETz8uVygpOlcgaW5zdGFuY2VvZiBLRD9uLk4ucG9wKCk6KEQ9MSxXLmNhblJldHJ5KCkmJnd1KG4ubG9hZGVyKSYmKE95WihuLFcpLEQ9MCksYj1uLkwuZUooKSxXIGluc3RhbmNlb2YgdXUmJlcuaW5mby5OPy5Dbj8uajQmJmImJm4uQi5adCgpLk4uUVEoS1l4KSYmKFcuY2FuUmV0cnkoKSYmd3Uobi5sb2FkZXIpP24ubG9hZGVyLlUoInV0Y1NlZWtpbmdSZXRyeSIse3RhcmdldFV0Y1RpbWVTZWM6Yn0pOm4ubG9hZGVyLndSKGIpKSxuLmxvYWRlci5oYW5kbGVFcnJvcihXLlZHKCksVy55MCgpLEQpKTtlbHNle2lmKG4ubG9hZGVyLmlzU3VzcGVuZGVkJiYKIVcuaXNDb21wbGV0ZSgpKXJldHVybjttdihuKX1XLnFOKCl8fFcgaW5zdGFuY2VvZiBLRHx8KEQ9MCxXLmlzQ29tcGxldGUoKSYmKEQ9cDBiKFcsbi5wb2xpY3ksbi5ubikpLEQhPT0wJiYoVy5pbmZvLlhiLmo/KEQ9Vy5pbmZvLEQ9bmV3IE9xKDIsRC5YYixELllhKSxELnBTPSExKTooYj1uZXcgT3EoMSxXLmluZm8uWGIpLGIucFM9RD09PTIsRD1iKSxQT3QobixEKSkpO2lmKFcuaXNDb21wbGV0ZSgpKXtpZihuLnBvbGljeS5RciYmbi52aWRlb0RhdGEuaXNPdGYoKSYmbi5CLlY9PT0icHciJiYhbi5PJiYhVy5xUSgpJiYhVy50bigpJiYhUlEobi52aWRlb0RhdGEpJiYhbi52aWRlb1RyYWNrLlRDKXtuLkN4PSExO24uTz0hMDtuLmxvYWRlci5ncCh7cmVhc29uOiJzYWJyLm5vX3ZpZGVvX3JlY2VpdmVkX29uX3N0YXJ0IixhY3Rpb246MH0pO3JldHVybn1uLkN4PSExO1cucVEoKXx8KG4uTz0hMCxuLkhlPSExKTtuLkIuUygiaHRtbDVfdXNlX21lZGlhX2ZldGNoX2NvbnRyb2xsZXIiKSYmCm4ubG9hZGVyLkwuV0ooInJlcXVlc3Rjb21wbGV0ZWQiKX1uLnBvbGljeS5IRCYmIVcuaXNDb21wbGV0ZSgpP1FvKG4ubG9hZGVyKTpuLmxvYWRlci5CWSgpfX19OwpaeVM9ZnVuY3Rpb24obil7bi5wb2xpY3kuTEImJihuLlZRPXZvaWQgMCxuLkc3PTApfTsKaXlpPWZ1bmN0aW9uKG4pe2lmKG4ubG9hZGVyLkFiKXJldHVybiBaayhuLCJwcmVwYXJpbmduZXh0bG9vcCIpLCExO2lmKCFVMFoobixuLlMkKSlyZXR1cm4gWmsobiwicmF0ZWxpbWl0ZWQiKSwhMTtpZihpUyhuLmF1ZGlvVHJhY2spJiZpUyhuLnZpZGVvVHJhY2spKXJldHVybiBaayhuLCJlbmRvZnN0cmVhbSIpLCExO2lmKG4ucG9saWN5LlUxKWlmKG4ucG9saWN5Llgpe2lmKG4uVk8/LmNKKCkpcmV0dXJuIFprKG4sInNzZGFpYmxvY2tlZCIpLCExfWVsc2V7dmFyIFc9ITE7aWYobi5KQy5KPT09MilXPSEwO2Vsc2UgaWYobi5KQy5KPT09Myl7VXEobik7bi5sb2FkZXIuU1coKTt2YXIgRD1QNihuLmF1ZGlvVHJhY2ssbi5sb2FkZXIuaXNTZWVraW5nKCkpLmVXO3ZhciBiPVA2KG4udmlkZW9UcmFjayxuLmxvYWRlci5pc1NlZWtpbmcoKSkuZVc7dmFyIHY9bi5sb2FkZXIuZ2V0Q3VycmVudFRpbWUoKXx8MDtEPXl1KG4sRCx2KTtiPXl1KG4sYix2KTtiPU1hdGgubWluKEQsYik7dj1uLkpDOwpiPj12Llc/KHYuVSgic2RhaSIse2hhbHRycTpiLGVzdDp2Lld9KSxiPSEwKTpiPSExO2ImJihXPSEwKX1pZihXKXJldHVybiBaayhuLCJ3YWl0aW5nZm9yYWRzIiksITF9bi5wb2xpY3kudTUmJihuLnR3PUVxKG4sbi5hdWRpb1RyYWNrKSxuLmJkPUVxKG4sbi52aWRlb1RyYWNrKSk7aWYoIW4uSilyZXR1cm4gaTEobix7bm9wb2xpY3k6MX0pLCEwO2lmKG4uTC5lSigpKXJldHVybiBpMShuLHt1dGM6MX0pLCEwO2lmKG4uazYuSylyZXR1cm4gaTEobix7YXVkaW86MX0pLCEwO2lmKG4ucG9saWN5LnNaJiZuLms2LkQpcmV0dXJuIGkxKG4se2NvbnN0cmFpbnQ6MX0pLCEwO2lmKCFuLkoudGFyZ2V0QXVkaW9SZWFkYWhlYWRNc3x8IW4uSi50YXJnZXRWaWRlb1JlYWRhaGVhZE1zKXJldHVybiBpMShuLHtub3JlYWRhaGVhZDoxfSksITA7aWYobi5wb2xpY3kuaiYmbi5sb2FkZXIuWFgoKSlyZXR1cm4gaTEobix7c2Vla1RvSGVhZDoxfSksITA7Vz1NYXRoLm1pbihPYihuLmxvYWRlcixuLmF1ZGlvVHJhY2spKgoxRTMsbi5KLnRhcmdldEF1ZGlvUmVhZGFoZWFkTXMpO2I9TWF0aC5taW4oT2Iobi5sb2FkZXIsbi52aWRlb1RyYWNrKSoxRTMsbi5KLnRhcmdldFZpZGVvUmVhZGFoZWFkTXMpO3Y9TWF0aC5taW4oVyxiKTt2YXIgaz1uLkwuZ2V0Q3VycmVudFRpbWUoKSoxRTMse0IxOmgsbDE6eCxjdjpMLGFrOmV9PXlPWihuLGspO0Q9aDx2O3ZhciBHPXg8djtpZih1MShuKSl7az1vayhuLlcsayk7dmFyIHI9azx2O24uTC5XWCgpJiZyJiYhRCYmIUcmJm4ubG9hZGVyLlUoInNhYnJjcm5tIix7Y3JhOmssbXByYTp2LGNicmw6bi5XLmxlbmd0aH0pfWlmKCEoRHx8R3x8dTEobikmJnIpKXJldHVybiBuLnBvbGljeS51NSYmbi5MLldYKCkmJihMPHZ8fGU8dikmJm4ubG9hZGVyLlUoInNhYnJuY3JxIix7Y2FyOmgsdmFjOngsYWJoOkwsdmJoOmUsbWFyOlcsbXZyOmJ9KSxaayhuLCJyZWFkYWhlYWRtZXQiKSwhMTtpZihuLnBvbGljeS5SVyYmRVJTKG4ubG9hZGVyKSYmbi52aWRlb0RhdGEuTlAoKSlyZXR1cm4gWmsobiwKInNob3J0c2J1ZmZlcmVkdG9lbmQiKSwhMTtpZihuLnBvbGljeS5XZCYmRVJTKG4ubG9hZGVyKSlyZXR1cm4gWmsobiwidm9kYnVmZmVyZWR0b2VuZCIpLCExO3I9bi5sb2FkZXIueXIoKTtyLmNhcj1oO3IudmFjPXg7ci5tYXI9VztyLm12cj1iO3IudGFyPW4uSi50YXJnZXRBdWRpb1JlYWRhaGVhZE1zO3IudHZyPW4uSi50YXJnZXRWaWRlb1JlYWRhaGVhZE1zO3IucGNsPW4uSi5wbGF5YmFja0Nvb2tpZT8ubGVuZ3RofHwwO3IudmJ1PXJrKG4uTC5oNSgpPy5KKCl8fG51bGwpO3IuYWJoPUw7ci52Ymg9ZTtpMShuLHIpO3JldHVybiEwfTsKdWtoPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bmV3IE9xKDAsbi5LdS5ZLG4pO24uazYuRD0hMTtuLnBvbGljeS52WCYmbi5sb2FkZXIuVSgic2FicmNzYyIse3RvOm4ucG9saWN5LlRJLHJsOm4ucG9saWN5LnN6LHNidDpuLnBvbGljeS5DdT8xOjB9LCEwKTtuPVBPdChuLEQsVyk7bi5wb2xpY3kuRkYmJihuLlU4PW4ucG9saWN5LmpfKCkuZXhwb3J0cy5TYWJyUmVxdWVzdENvb3JkaW5hdG9yX2NyZWF0ZSgpKTtyZXR1cm4gbn07Cm9SdD1mdW5jdGlvbihuLFcpe2l5aShuKSYmKFc9dWtoKG4sVyksbi5OLnB1c2goVyksbi5ZPy5OKG4uS3UuWSksbi5WPjAmJm4uUyQuRXkrKyl9OwpQT3Q9ZnVuY3Rpb24obixXLEQpe3ZhciBiPXtpajpuLmlqLEJlOihrLGgpPT57bi5MLkthKGssaCl9LApORDpuLnBvbGljeS5XLEtwOm4ucG9saWN5LktwfTtuLmlqLkouViYmKGIucVk9KG4udmlkZW9UcmFjay5QSi5pbmZvLk5zfHwwKSsobi5hdWRpb1RyYWNrLlBKLmluZm8uTnN8fDApKTtuLnBvbGljeS5VVCYmKGIuTzg9bi5hdWRpb1RyYWNrLlBKLmluZGV4LlVjKCksYi5Rbj0hMSk7dmFyIHY9dW5VKFcsbi5wb2xpY3ksbi5ubik/MjoxO3YhPT1uLm51JiYobi5udT12LG0wTShuKSk7RD1kMGIobixEKTtpZihuLnBvbGljeS5ZJiZuLnBvbGljeS5XJiZELlJBKXtsZXQgaz12PSIiO2ZvcihsZXQgaCBvZiBELlJBKW4udmlkZW9EYXRhLnNhYnJDb250ZXh0VXBkYXRlcy5oYXMoaCl8fG4ucG9saWN5LlkmJkQuYkomJkQuYkoudHlwZT09PWg/dis9YF8ke2h9YDprKz1gXyR7aH1gO24ubG9hZGVyLlUoInNhYnJibGRycXMiLHtjdHh0czp2LG1pc2N0eHRzOmt9KX0hVy5zZXREYXRhKEQsbi5wb2xpY3ksbi5ubikmJm4ucG9saWN5LlkmJm4ubG9hZGVyLmhhbmRsZUVycm9yKCJwbGF5ZXIuZXhjZXB0aW9uIiwKe3JlYXNvbjoiYnVpbGRzYWJycmVxdWVzdGRhdGFmYWlsZWQifSwxKTtiPW5ldyB1dShuLnBvbGljeSxXLG4uS3Usbi5ubixuLGIsbi5sb2FkZXIuVTQoKSk7aXUobi50aW1pbmcpO24ucG9saWN5Lk1kJiZuLmxvYWRlci5VKCJzYWJyY3JxaW5mbyIse3JuOmIuY0EoKSxwcm9iZTpXLkQ1KCl9KTtyZXR1cm4gbi5GRj1ifTsKRXE9ZnVuY3Rpb24obixXKXtVcShuKTtuLmxvYWRlci5TVygpO3JldHVybiBQNihXLG4ubG9hZGVyLmlzU2Vla2luZygpKX07CnUxPWZ1bmN0aW9uKG4pe3JldHVybiBuLnBvbGljeS55RSYmISFuLlh9Owp5dT1mdW5jdGlvbihuLFcsRCl7bj1uLmxvYWRlci5TVygpfHwwO3JldHVybiBvayhXLChEK24pKjFFMykvMUUzK0R9OwpkMGI9ZnVuY3Rpb24obixXKXt2YXIgRD1kaihuLmxvYWRlcikmJlcmJlcuU3MhPT12b2lkIDAmJiFXLmJNP01hdGguY2VpbCgoVy5Tcysobi5sb2FkZXIuU1coKXx8MCkpKjFFMyk6VXEobik7aWYobi5wb2xpY3kudTUpe3ZhciBiPW4udHc7dmFyIHY9bi5iZH1lbHNlIGI9RXEobixuLmF1ZGlvVHJhY2spLHY9RXEobixuLnZpZGVvVHJhY2spO3ZhciBrPVsuLi5iLmVXLC4uLnYuZVddO3UxKG4pJiZrLnB1c2goLi4ubi5XKTt2YXIgaD1bLi4uYi5CaSwuLi52LkJpXSx4PVtdO2Zvcih2YXIgTCBvZiBoKUwudkQhPT12b2lkIDAmJkwudkQ+TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVI/bi5sb2FkZXIuVSgic2FicnBzZWdsbXQiLHtsbXQ6TC52RCxpdGFnOkwuZm9ybWF0SWQ/Lml0YWcsc3E6TC5zZXF1ZW5jZU51bWJlcn0pOngucHVzaChMKTtoPW4ubG9hZGVyLmx1KCk7bi5wb2xpY3kuWW4mJiFuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayYmKEw9bi52aWRlb0RhdGEubGVuZ3RoU2Vjb25kcyoKMUUzLEQ+PUwmJm4ubG9hZGVyLlUoImludmFsaWRTYWJyQ210Iix7Y210OkQsdmQ6TH0pKTtMPW4uaWo7dmFyIGU9bi5MLEc9bi5LdSxyPW4uSixOPW4udmlkZW9EYXRhLmJkLEg9bi5wb2xpY3ksQT1uLmxvYWRlci5xRyx5PW4uVlE/LmtFLFQ9bi5WUT8uVW0sej1uLkc3LEM9TnVtYmVyKG4uazYuWD8uaW5mby5pdGFnKXx8MCxRPU51bWJlcihuLms2Lmo/LmluZm8uaXRhZyl8fDAsVj1uLkwudzkoKTt2YXIgTHQ9Vz8uSiQ/Vy5KJDpuLmxvYWRlci5pc1N1c3BlbmRlZD80OnZvaWQgMDtEPXtpajpMLEw6ZSxLdTpHLGVXOmssQmk6eCxuUjpELG5leHRSZXF1ZXN0UG9saWN5OnIsUkE6TixvWjpILHB6OkEsa0U6eSxVbTpULEc3OnosdU06QyxyRzpRLHEkOmgscjg6VixKJDpMdCxDeDpuLkN4LGdEOm4uUFgsSGU6bi5IZX07az1uLmxvYWRlci5NWSgpO3g9Zy5kMShrKTtrJiYoRC5kTj14KTtpZihXPWRqKG4ubG9hZGVyKSYmVz8uYk0/Vy5TczpuLkwuZUooKSlELmo0PVcqMUUzO1c9bi5rNjsKaz1XLnR3O2lmKFcub1o/LkR0KCkmJiFrKWZvcih0aSBvZiBXLlcpaWYodGkua1ope2s9ITA7YnJlYWt9dmFyIHRpPVcub1ouRHQoKSYmIWs/W106TyRpKFcsVy5XKTtELkdoPXRpO3RpPW4uazY7dGkub1ouRHQoKSYmIXRpLmJkP3RpPVtdOihXPUtqaSh0aSksVy5sZW5ndGg9PT0wJiYoVz10aS5WKSx0aT1PJGkodGksVykpO0QuTSQ9dGk7RC5Fdj11MShuKT9bbi5YXTp2b2lkIDA7RC5JOD1BcnJheS5mcm9tKHdDKG4uazYuTikua2V5cygpLE51bWJlcik7RC5sbD1uLms2LmxsKCk7bi5wb2xpY3kuS0UmJihELllzPXpTMihuLmxvYWRlcixuLmF1ZGlvVHJhY2spLEQuZXE9elMyKG4ubG9hZGVyLG4udmlkZW9UcmFjaykpO3RpPW4ubG9hZGVyLmdldEN1cnJlbnRUaW1lKCk7Yj15dShuLGIuZVcsdGkpO3Y9eXUobix2LmVXLHRpKTt2PU1hdGgubWluKGIsdik7bi5UQz12O24ucG9saWN5LlUxJiYodTEobikmJihiPXl1KG4sbi5XLHRpKSxuLkwuV1goKSYmYjx2JiZuLmxvYWRlci5VKCJzYWJyY2ZiIiwKe21ldDp2LGNldDpiLGNicmw6bi5XLmxlbmd0aH0pLHY9TWF0aC5taW4odixiKSksIW4ucG9saWN5LlgmJihiPW4uc1U/LlNQKHYpKSkmJihELk15PWIsbi5sb2FkZXIuVSgic2RhaSIse3NzaW5mbzpiLmN1ZXBvaW50SWR9KSk7bi5wb2xpY3kuWCYmKGI9bi52aWRlb0RhdGEuYkJbbi52aWRlb0RhdGEuSj8uY29udGFpbmVyVHlwZXx8MF0sdis9bi5sb2FkZXIuU1coKSxELmJLPW4uVk8/LlkodixiKSxELmJLJiZuLmxvYWRlci5VKCJjbHNkYWkiLHtzc2luZm9zOkQuYksubGVuZ3RofSksbi5WTz8uTygpKTtuLnBvbGljeS5ZJiZuLk4ubGVuZ3RoPjAmJm4uTlswXS5ETCgpJiYoRC5iSj1uLk5bMF0ubWYoKSk7cmV0dXJuIER9OwpVcT1mdW5jdGlvbihuKXt2YXIgVz1uLnBvbGljeS5qJiZuLmxvYWRlcj8uWFgoKSxEPW4ubG9hZGVyLmdldEN1cnJlbnRUaW1lKCl8fDA7RD1sSWIobixEKTthOmlmKG4ucG9saWN5LmZtJiZuLmxvYWRlci5pc1NlZWtpbmcoKSl7dmFyIGI9QTAobi52aWRlb1RyYWNrLEQpO24ubG9hZGVyLlUoImFzbXRmbmN0diIse2I6RCxhOmJ9KTtpZighaXNOYU4oYikpe0Q9YjticmVhayBhfX1iPW4ubG9hZGVyLlNXKCl8fDA7RCs9YjtiPVlwKG4udmlkZW9EYXRhKXx8Zy5wQShuLnZpZGVvRGF0YSk7dmFyIHY9MDtXPyhiJiYodj1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUiksbi52aWRlb0RhdGEuUkkmJih2PU1hdGguY2VpbChuLnZpZGVvRGF0YS5KVSoxRTMpKSk6dj1NYXRoLmNlaWwoRCoxRTMpO3JldHVybiBNYXRoLm1pbihOdW1iZXIuTUFYX1NBRkVfSU5URUdFUix2KX07CmxJYj1mdW5jdGlvbihuLFcpe2lmKG4ubG9hZGVyLmlzU2Vla2luZygpKXJldHVybiBXO3ZhciBEPW4uTC5oNSgpO2lmKCFEKXJldHVybiBXO0Q9RC5KKCk7aWYoRC5sZW5ndGg9PT0wfHxCUihELFcpKXJldHVybiBXO2lmKCFuLnZpZGVvVHJhY2suZnAoVykmJiFuLmF1ZGlvVHJhY2suZnAoVykpcmV0dXJuIG4ubG9hZGVyLlUoInN1bmRybiIse2I6MCxsdDpXfSksVzt2YXIgYj1XLHY9SW5maW5pdHk7Zm9yKGxldCBrPTA7azxELmxlbmd0aDtrKyspe2lmKEQuc3RhcnQoayk+Vyljb250aW51ZTtsZXQgaD1XLUQuZW5kKGspO2g8diYmKHY9aCxiPUQuZW5kKGspKX1yZXR1cm4gYiE9PVcmJihuLmxvYWRlci5VKCJzdW5kcm4iLHticmU6YixsdDpXfSksdj49MjApPyhuLmxvYWRlci5oYW5kbGVFcnJvcigicGxheWVyLmV4Y2VwdGlvbiIse3JlYXNvbjoiYnVmZmVydW5kZXJydW5leGNlZWRzbGltaXQifSksVyk6Yn07Cm9rPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MCxiPS0xO2ZvcihsZXQgdiBvZiBuKWlmKCEodi5zdGFydFRpbWVNcyt2LmR1cmF0aW9uTXM8Vykpe2lmKGI8MCYmdi5zdGFydFRpbWVNcz5XfHxiPj0wJiZ2LkFDPmIrMSlicmVhaztEPU1hdGgubWF4KEQsdi5zdGFydFRpbWVNcyt2LmR1cmF0aW9uTXMpO2I9TWF0aC5tYXgoYix2Lmk5KX1yZXR1cm4gTWF0aC5tYXgoMCxELVcpfTsKWms9ZnVuY3Rpb24obixXKXtuLkdDPVc7bi5wb2xpY3kuTWQmJm4ubG9hZGVyLlUoInNhYnJjcmIiLHtyZWFzb246V30pfTsKVTBaPWZ1bmN0aW9uKG4sVyl7YTp7aWYobi5WPjApe3ZhciBEPU1hdGguZmxvb3IoKDAsZy5SKSgpLzFFNCk7aWYoRD09PVcuWGope2lmKFcuRXk+PW4uVil7aWYoVy5FeT09PW4uVil7RD17cmVhc29uOiJ0b29tYW55cmVxdWVzdHMifTtELmxpbWl0PVcuRXk7aWYobi5GRil7bGV0IGI9RGsobi5GRi5pbmZvKTtELmxyX3B0aW1lPWIucHRpbWU7RC5scl9ydHlwZT1iLnJ0eXBlO0QubHJfYnJsPWIuYnJsO0QubHJfcHM9Yi5wc31uLmxvYWRlci5oYW5kbGVFcnJvcigicGxheWVyLmV4Y2VwdGlvbiIsRCk7Vy5FeSs9MX1XPSExO2JyZWFrIGF9fWVsc2UgVy5Yaj1ELFcuRXk9MH1XPSEwfXJldHVybiFXfHxuLmxvYWRlci5pc1N1c3BlbmRlZCYmbi5sb2FkZXIuT00/ITE6bi5qJiYoMCxnLlIpKCk8bi5qPyhnLkphKG4ubG9hZGVyLmoyKSwhMSk6bi5OLmxlbmd0aD4wJiYoIW4ucG9saWN5Lll8fG4uTi5sZW5ndGghPT0xfHwhbi5OWzBdLkRMKCkpfHwhbi5LdS5ZPy5ZKG4ucG9saWN5LG4ubm4sCm4ubG9hZGVyLkl3KXx8bi5EdD8hMTohMH07CmkxPWZ1bmN0aW9uKG4sVyl7bi5HQz12b2lkIDA7bi5ZWj0oMCxnLlIpKCk7bi5wb2xpY3kuTWQmJm4ubG9hZGVyLlUoInNhYnJjcnEiLFcpfTsKeU9aPWZ1bmN0aW9uKG4sVyl7dmFyIHtjdjpELGFrOmJ9PVRKYihuKTtpZihuLnBvbGljeS51NSl7dmFyIHY9b2sobi50dy5lVyxXKTtuPW9rKG4uYmQuZVcsVyl9ZWxzZSB2PUQsbj1iO3JldHVybntCMTp2LGwxOm4sY3Y6RCxhazpifX07Cm0wTT1mdW5jdGlvbihuKXtuLnZpZGVvRGF0YS5iZC5jbGVhcigpO2lmKG4udmlkZW9EYXRhLnNhYnJDb250ZXh0VXBkYXRlcy5zaXplPjApZm9yKHZhciBXIG9mIG4udmlkZW9EYXRhLnNhYnJDb250ZXh0VXBkYXRlcy5rZXlzKCkpbi52aWRlb0RhdGEuc2FickNvbnRleHRVcGRhdGVzLmdldChXKT8uc2VuZEJ5RGVmYXVsdCYmbi52aWRlb0RhdGEuYmQuYWRkKFcpO2lmKG4ucG9saWN5LlkmJm4uTi5sZW5ndGgpZm9yKGxldCBEIG9mIG4uTikoVz1ELm1mKCkpJiZXLnR5cGUmJlcuc2VuZEJ5RGVmYXVsdCYmbi52aWRlb0RhdGEuYmQuYWRkKFcudHlwZSl9Owptdj1mdW5jdGlvbihuKXtmb3IoO24uTi5sZW5ndGgmJm4uTlswXS5CNihuLkUxKCkpOyl7bGV0IFc9bi5OLnNoaWZ0KCk7ajlDKG4sVyl9bi5OLmxlbmd0aCYmajlDKG4sbi5OWzBdKX07Cmo5Qz1mdW5jdGlvbihuLFcpe1cgaW5zdGFuY2VvZiB1dSYmKG4uZSQ9Vyk7dmFyIEQ9bmV3IFNldChXLlNKKG4uRTEoKSkpO2ZvcihsZXQgaCBvZiBEKXtpZihEPVcgaW5zdGFuY2VvZiBLRCl7RD1uLms2O3ZhciBiPXl5eChELGgpLHY9bkQoRCxELnZpZGVvSW5mb3MpLmluY2x1ZGVzKGgpOyFELm9aLlRQfHxifHx2fHxELmxvYWRlci5VKCJzYWJyY3BmIix7ZmlkOmAke2h9YCx2ZmlkczpgJHtuRChELEQudmlkZW9JbmZvcykuam9pbigiLiIpfWAsc2FpZDpELll8fCIifSk7RD0hKGJ8fHYpfWlmKEQpY29udGludWU7RD1XIGluc3RhbmNlb2YgdXU/eUIoVyk6dm9pZCAwO2lmKEQhPT12b2lkIDApe2lmKCFXLlFBKGgsbi5FMSgpKSljb250aW51ZTtiPW4uS3UuSi5nZXQoaCk7aWYoIWIpY29udGludWU7bi5wb2xpY3kueUUmJmIuaW5mby5OKCl8fChiLmluZm8uZVMoKT9uLmF1ZGlvVHJhY2s6bi52aWRlb1RyYWNrKS5aYyhELGgpO2NvbnRpbnVlfUQ9Vy5mMyhoLG4uRTEoKSk7Yj1uLnBvbGljeS55RSYmCkQubGVuZ3RoPjAmJkRbMF0uUEouaW5mby5OKCk7aWYoIVcuUUEoaCxuLkUxKCkpKWNvbnRpbnVlO3Y9Vy54OShoLG4uRTEoKSk7Zm9yKGxldCB4IG9mIHYpe24ucG9saWN5LlcmJlcgaW5zdGFuY2VvZiBLRCYmbi5sb2FkZXIuVSgib21ibHNzIix7czp4LmluZm8uZ2EoKX0pO2lmKGIpe3Y9bi50aW1pbmc7di5EfHwodi5EPSgwLGcuUikoKSxnLkVHKCJmY2JfciIsdi5ELHYuelIpKTtpZihuLnBvbGljeS5rdSl7dj1nLlZmKHguaW5mby5QSi5pbmZvLG4uS3UuelcpO3ZhciBrPXguaW5mby5qJDtpZihuLksmJk1rKG4uSyk9PT1Nayh2KSYmazw9bi5jSiljb250aW51ZTt4LmluZm8uYVomJihuLks9dixuLmNKPWspfXY9bjt2LnZpZGVvRGF0YS56VygpJiZ2LlgmJk1rKHYuWCk9PT1NayhnLlZmKHguaW5mby5QSi5pbmZvLHYuS3UuelcpKSYmdi5MLldKKCJzYWJyQ2FwdGlvbnNEYXRhTG9hZGVkIix4LHYueUUuYmluZCh2KSk7Y29udGludWV9dj14LmluZm8uUEouaW5mby5lUygpO2s9eC5pbmZvLlBKOwpsZXQgTD1XIGluc3RhbmNlb2YgS0Q/MToyO2lmKHYpe2lmKG4uazYuWHIoayxMLFcuSmQobi5FMSgpKT8udG9rZW4pKWNvbnRpbnVlfWVsc2Ugbi5rNi5EUihrLEwsVy5KZChuLkUxKCkpPy50b2tlbik7az12P24uYXVkaW9UcmFjazpuLnZpZGVvVHJhY2s7VyBpbnN0YW5jZW9mIEtEJiYoay5qPSExLFcgaW5zdGFuY2VvZiBLRCYmKHY/Z2oxKG4udGltaW5nKTplN2Iobi50aW1pbmcpKSk7dHJ5e2suV2coRCx4KX1jYXRjaChlKXt2PUIkKGUpLG4ubG9hZGVyLmhhbmRsZUVycm9yKHYuZXJyb3JDb2RlLHYuZGV0YWlscyx2LnNldmVyaXR5KSxrLnppKCksbi5YJCghMSwicHVzaFNsaWNlIiksZy5BZyhuLmxvYWRlcil9fX19OwpPeVo9ZnVuY3Rpb24obixXKXtuLnBvbGljeS5ZP24uTi5zcGxpY2Uobi5OLmluZGV4T2YoVykpLmZvckVhY2goRD0+e0QuZGlzcG9zZSgpfSk6KG4uTi5wb3AoKSxXPy5kaXNwb3NlKCkpfTsKQ09qPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1bXTtmb3IobGV0IHY9MDt2PG4uTi5sZW5ndGg7disrKVcmJm4uTlt2XWluc3RhbmNlb2YgS0Q/Yi5wdXNoKG4uTlt2XSk6KG4ucG9saWN5Lk1kJiZuLmxvYWRlci5VKCJzYWJyZGlzIix7ZDpuLk5bdl0uY0EoKSxzcmM6RH0pLG4uTlt2XS5kaXNwb3NlKCkpO24uTj1ifTsKQkp0PWZ1bmN0aW9uKG4sVyl7aWYoVy50bigpfHxXLnFOKCkpe3ZhciBEPW4ubG9hZGVyLGI9RC5VLHY9Vy5zdGF0ZTtuPW4uRTEoKTtXPVcubkE/LmdldChuKT8uWSgpPz8tMTtiLmNhbGwoRCwic2Ficm9tYiIse3M6dix0Ynl0ZXM6V30pfWVsc2V7RD1XLlNKKG4uRTEoKSk7Yj0hMTtmb3IobGV0IGsgb2YgRClpZih2PW4uazYsbkQodix2LnZpZGVvSW5mb3MpLmluY2x1ZGVzKGspKXtiPSEwO2JyZWFrfWlmKEQubGVuZ3RoPT09MHx8YiluLlBYPSEwO24uTi5wdXNoKFcpO1cuWEwucHVzaChuKTtpdShuLnRpbWluZyk7bi5wb2xpY3kuclcmJlcuYlAmJm4udVEoVy5iUCxXLmNBKCkpfX07ClRKYj1mdW5jdGlvbihuKXt2YXIgVz1uLmF1ZGlvVHJhY2suenMoITApKjFFMztuPW4udmlkZW9UcmFjay56cyghMCkqMUUzO3JldHVybntjdjpXLGFrOm59fTsKRllDPWZ1bmN0aW9uKG4se1NzOlcsYk06RH0pe2lmKFc9PT12b2lkIDApcmV0dXJuITE7Vz1EP24uTC5sSyhXKTpXO2lmKFc9IW4ubG9hZGVyLmZwKFcpJiZVMFoobixuLkN1KSl7Vz1uLkwuZ2V0Q3VycmVudFRpbWUoKSoxRTM7bGV0IHtCMTpiLGwxOnZ9PXlPWihuLFcpO1c9Yj49N0UzJiZ2Pj03RTN9cmV0dXJuIFd9Owp3Qng9ZnVuY3Rpb24obixXKXtuLmRlbGF5Py5kaXNwb3NlKCk7bi5kZWxheT1udWxsO3ZhciBEPUFycmF5LmZyb20obi5OLnZhbHVlcygpKS5zb3J0KChiLHYpPT5iLm1lZGlhVGltZS12Lm1lZGlhVGltZSk7CkQubGVuZ3RoIT09MCYmKFc9KERbMF0ubWVkaWFUaW1lLVcpKjFFMy9uLkwuZ2V0UGxheWJhY2tSYXRlKCksbi5kZWxheT1uZXcgZy5mXygoKT0+e3pjKG4pfSxXPjUwMD9XLTUwMDpXKSxuLmRlbGF5LnN0YXJ0KCkpfTsKemM9ZnVuY3Rpb24obixXKXtpZihsMShuLkwuZ2V0UGxheWVyU3RhdGUoKSkmJm4uTi5zaXplIT09MCl7Vz1XPz9BcnJheS5mcm9tKG4uTi52YWx1ZXMoKSkuc29ydCgodixrKT0+di5tZWRpYVRpbWUtay5tZWRpYVRpbWUpOwp2YXIgRD1uLmdldEN1cnJlbnRUaW1lKCksYj0oV1swXS5tZWRpYVRpbWUtRCkqMUUzL24uTC5nZXRQbGF5YmFja1JhdGUoKTtpZihiPDUwMCl7RD1iPjA/bi5MLmg1KCk/LmdldEN1cnJlbnRUaW1lKCk/P24uTC5nZXRDdXJyZW50VGltZSgpOkQ7Zm9yKGxldCB2IG9mIFcpaWYoRD49di5tZWRpYVRpbWUpdi5yZXNvbHZlKFt2Lm1lZGlhVGltZSx2LmlkXSksbi5OLmRlbGV0ZSh2LmlkKTtlbHNlIGJyZWFrfXdCeChuLEQpfX07Ck1fdz1mdW5jdGlvbihuLFcsRCl7bi5OLmRlbGV0ZShEKTtyZXR1cm4gbmV3IFByb21pc2UoYj0+e24uTi5zZXQoRCx7aWQ6RCxtZWRpYVRpbWU6VyxyZXNvbHZlOmJ9KTtiPUFycmF5LmZyb20obi5OLnZhbHVlcygpKS5zb3J0KCh2LGspPT52Lm1lZGlhVGltZS1rLm1lZGlhVGltZSk7CkQ9PT1iWzBdLmlkJiZ6YyhuLGIpfSl9OwpROWI9ZnVuY3Rpb24obil7dmFyIFc9bi5MLmg1KCk/LmdldEN1cnJlbnRUaW1lKCk/P24uTC5nZXRDdXJyZW50VGltZSgpLEQ9bi5YLlIzKFcpO1JTQyhuLEQsVyk7bi5pc1NlZWtpbmc9ITE7dmFyIGI9QXJyYXkuZnJvbShuLk4ua2V5cygpKS5maWx0ZXIodj0+dj49RCkuc29ydCgodixrKT0+di1rKTsKZm9yKGxldCB2IG9mIGIpYj12PT09RD9XLW4uWC5nZXRTdGFydFRpbWUoRCk6MCxuLksodixuLk4uZ2V0KHYpLGIpfTsKVl8yPWZ1bmN0aW9uKG4sVyxELGI9ITEpe1chPT1uLktZJiYobi5LWT1XLG4uTC5XSigicGxheWJhY2tzdGFydGVkIixXLEQrbi5MLlNXKCksYikpfTsKUlNDPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLk4uZ2V0KFcpLHY9bi5YLmdldFN0YXJ0VGltZShXKSxrPW4uWC5nZXREdXJhdGlvbihXKSxoPXY7KGI/Lk4/P1tuLmNwbl0pLmZvckVhY2goKHgsTCk9Pnt2YXIgZT1iPy5KW0xdPz9rO0Q+PWgmJkQ8aCtlJiYoTD14IT09bi5jcG4/aC0oYj8uWFtMXT8/MCk6aCxuLko9eCxWXzIobix4LEwsITApKTtoKz1lfSl9OwpjT3c9ZnVuY3Rpb24obixXKXsobi5XLmdldChXKT8/W10pLmZvckVhY2goRD0+e24uai5OLmRlbGV0ZShEKX0pOwpuLlcuZGVsZXRlKFcpfTsKYUlaPWZ1bmN0aW9uKG4sVyxELGIpe24uSj1EO0Q9YCR7V30uJHtEfWA7bi5XLmhhcyhXKT9uLlcuZ2V0KFcpLnB1c2goRCk6bi5XLnNldChXLFtEXSk7TV93KG4uaixiLEQpLnRoZW4oKFt2LGtdKT0+e3ZhciBbaCx4XT1rLnNwbGl0KCIuIik7WyxrXT1bTnVtYmVyKGgpLHhdO1ZfMihuLGssdil9KX07CldYaD1mdW5jdGlvbihuLFcsRCxiLHYsayl7cmV0dXJuIFcuVDcmJlcuRTUmJkQ9PT0zP25ldyBudTEobixXLGIsdixrKTpudWxsfTsKRExiPWZ1bmN0aW9uKG4sVyl7aWYobi5wb2xpY3kuRDIpe3ZhciBEPVcuaW5mby5OcyxiPUdEKG4uc2NoZWR1bGUpO1c9Vy5pbmRleC5VYygpO0Q9TWF0aC5tYXgoMSxiL0QpO24uWT1NYXRoLnJvdW5kKE1hdGgubWF4KCgoRC0xKSpXK24ucG9saWN5LndhKS9ELFctbi5wb2xpY3kuTWwpKjFFMyl9fTsKa25yPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9RGF0ZS5ub3coKS8xRTMsYj1ELW4uc3RhcnRUaW1lU2Vjcyx2PUQtbi5WLGs9dj49bi5wb2xpY3kuT04saD0hMTtpZihrKXtsZXQgeD0wOyFpc05hTihXKSYmVz5uLmomJih4PVctbi5qLG4uaj1XKTt4L3Y8bi5wb2xpY3kuSVcmJihoPSEwKTtuLlY9RH1EPWI+PW4ucG9saWN5Lk1sJiYhbi5XO2lmKCFrJiYhRCYmYkZqKG4sVykpcmV0dXJuIE5hTjtEJiYobi5XPSEwKTthOntiPWg7RD0oMCxnLlIpKCkvMUUzLShuLnF6LkxnKCl8fDApLW4uSy5XLW4ucG9saWN5LndhO2s9bi5KLnNlZ21lbnRTdGFydFRpbWU7RD1rK0Q7aWYoYil7aWYoaXNOYU4oVykpe1RjKG4sTmFOLCJuIixXKTtrPU5hTjticmVhayBhfWI9Vy1uLnBvbGljeS5FVDtiPEQmJihEPWIpfWVsc2Ugbi5XJiYoYj1EK24ucG9saWN5LndhLW4uTytuLnBvbGljeS5BTCxpc05hTihXKXx8KGI9TWF0aC5tYXgoYixNYXRoLm1pbihELFctbi5wb2xpY3kuRVQpKSksRD1iKTtrPUQ9TWF0aC5tYXgoRCwKayl9bi5OPWs7aWYoaXNOYU4obi5OKSlyZXR1cm4gbi5jbGVhcigpLE5hTjtpZighaCYmYkZqKG4sVykpcmV0dXJuIHZ1TShuLFcpLE5hTjtpZihuLk48PW4uSi5zZWdtZW50U3RhcnRUaW1lKXJldHVybiBUYyhuLE5hTiwieSIsVyksbi5jbGVhcigpLE5hTjtpZighbi5EKG4uTiwhMSkpcmV0dXJuIXZ1TShuLFcpJiZoJiYoVGMobixOYU4sInQiLFcpLG4uY2xlYXIoKSksTmFOO2g9bi5OO1RjKG4saCwicyIsVyk7bi5jbGVhcigpO3JldHVybiBofTsKYkZqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGlzTmFOKFcpPyEwOmlzTmFOKG4uTik/ITE6VzxuLk4rKG4uVz9uLnBvbGljeS5FVDpuLnBvbGljeS5neCl9Owp2dU09ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5EKG4uTiwhMCk/ITE6KFRjKG4sTmFOLCJucyIsVyksbi5jbGVhcigpLCEwKX07ClRjPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PW4uWC55MCgpO3Yuc3NyX3NrPShXKjFFMykudG9GaXhlZCgwKTt2LnNzcl90PShuLk4qMUUzKS50b0ZpeGVkKDApO3Yuc3NyX3I9RDt2LnNzcl9zdD0obi5zdGFydFRpbWVTZWNzKjFFMykudG9GaXhlZCgwKTt2LnNzcl9uPSgwLGcuUikoKS50b0ZpeGVkKDApO3Yuc3NyX2Y9KG4uSy5XKjFFMykudG9GaXhlZCgwKTt2LnNzcl9mYT1uLlc/IjEiOiIwIjt2LnNzcl9vPShuLnF6LkxnKCkqMUUzfHwwKS50b0ZpeGVkKDApO3Yuc3NyX3Y9KGIqMUUzKS50b0ZpeGVkKDApO1c9bi5KLlBKLmluZGV4O1cuTUkobi5KLmokLCEwKSYmKHYuc3NyX2lzdD0oVy5nZXRTdGFydFRpbWUobi5KLmokKSoxRTMpLnRvRml4ZWQoMCksdi5zc3JfaWQ9KFcuZ2V0RHVyYXRpb24obi5KLmokKSoxRTMpLnRvRml4ZWQoMCkpO24ubG9hZGVyLlUoInNzciIsdil9OwpoUXg9ZnVuY3Rpb24oKXt2YXIgbj17fSxXPXdpbmRvdy5wZXJmb3JtYW5jZTtpZihXKXtsZXQgRD1XLm1lbW9yeTtEJiYobi5qc1RvdGFsPUQudG90YWxKU0hlYXBTaXplLG4uanNVc2VkPUQudXNlZEpTSGVhcFNpemUsbi5qc0xpbWl0PUQuanNIZWFwU2l6ZUxpbWl0LG4ubXNUb3RhbD1ELmdldE1lZGlhU291cmNlVG90YWxBbGxvY2F0ZWRNZW1vcnk/LigpPz9ELnRvdGFsTWVkaWFTb3VyY2VTaXplLG4ubXNMaW1pdD1ELmdldE1lZGlhU291cmNlTWF4aW11bU1lbW9yeUNhcGFjaXR5Py4oKT8/RC5tZWRpYVNvdXJjZVNpemVMaW1pdCxuLm1zVXNlZD1ELmdldE1lZGlhU291cmNlQ3VycmVudE1lbW9yeUNhcGFjaXR5Py4oKT8/RC51c2VkTWVkaWFTb3VyY2VNZW1vcnlTaXplKTtXLm1lYXN1cmVBdmFpbGFibGVDcHVNZW1vcnkmJihuLmNiRnJlZT1XLm1lYXN1cmVBdmFpbGFibGVDcHVNZW1vcnkoKSk7Vy5tZWFzdXJlVXNlZENwdU1lbW9yeSYmKG4uY2JVc2VkPVcubWVhc3VyZVVzZWRDcHVNZW1vcnkoKSl9d2luZG93Lmg1dmNjPy5jVmFsJiYKKG4uY2JGcmVlPXdpbmRvdy5oNXZjYy5jVmFsLmdldFZhbHVlKCJNZW1vcnkuQ1BVLkZyZWUiKSxuLmNiVXNlZD13aW5kb3cuaDV2Y2MuY1ZhbC5nZXRWYWx1ZSgiTWVtb3J5LkNQVS5Vc2VkIiksbi5jYkpzPXdpbmRvdy5oNXZjYy5jVmFsLmdldFZhbHVlKCJNZW1vcnkuSlMiKSk7cmV0dXJuIG59Owp4THQ9ZnVuY3Rpb24obil7cmV0dXJuIHdpbmRvdy5QcmVzc3VyZU9ic2VydmVyJiZuZXcgd2luZG93LlByZXNzdXJlT2JzZXJ2ZXIobil9OwpMWHI9YXN5bmMgZnVuY3Rpb24obil7dHJ5e2F3YWl0IG4uan1jYXRjaHt9bi5XPy5kaXNjb25uZWN0KCl9OwpndUM9ZnVuY3Rpb24obixXKXtXP2VRai50ZXN0KG4pOihuPWcub0UobiksT2JqZWN0LmtleXMobikuaW5jbHVkZXMoImNwbiIpKX07CmpSPWZ1bmN0aW9uKG4sVyxELGIsdixrKXt2YXIgaD17Zm9ybWF0OiJSQVcifSx4PXt9O2lmKGcuVGQobikmJmcuakgoKSl7bGV0IEw9Zy5BcigiRU9NX1ZJU0lUT1JfREFUQSIpO0w/eFsiWC1Hb29nLUVPTS1WaXNpdG9yLUlkIl09TDpiP3hbIlgtR29vZy1WaXNpdG9yLUlkIl09YjpnLkFyKCJWSVNJVE9SX0RBVEEiKSYmKHhbIlgtR29vZy1WaXNpdG9yLUlkIl09Zy5BcigiVklTSVRPUl9EQVRBIikpO0QmJih4WyJYLUdvb2ctUGFnZUlkIl09RCk7KGI9Vy5UQykmJiFnLnFGKFcpJiYoeFsiWC1Hb29nLUF1dGhVc2VyIl09Yik7diYmKHguQXV0aG9yaXphdGlvbj1gQmVhcmVyICR7dn1gKTtXLlMoImVuYWJsZV9kYXRhc3luY19pZF9oZWFkZXJfaW5fd2ViX3Zzc19waW5ncyIpJiZXLllyJiZXLmRhdGFzeW5jSWQmJih4WyJYLVlvdVR1YmUtRGF0YVN5bmMtSWQiXT1XLmRhdGFzeW5jSWQpO2lmKFcuUygiZW5hYmxlX3JvbGxvdXRfdG9rZW5faGVhZGVyIikpe2xldCBlPWcuQXIoIklOTkVSVFVCRV9DT05URVhUIik/LmNsaWVudD8ucm9sbG91dFRva2VuOwplJiYoeFsiWC1Zb3VUdWJlLVJvbGxvdXQtVG9rZW4iXT1lKX1MfHx4WyJYLUdvb2ctVmlzaXRvci1JZCJdfHx2fHxEfHxiP2gud2l0aENyZWRlbnRpYWxzPSEwOlcuUygiaHRtbDVfc2VuZF9jcG5fd2l0aF9vcHRpb25zIikmJmVRai50ZXN0KG4pJiYoaC53aXRoQ3JlZGVudGlhbHM9ITApfU9iamVjdC5rZXlzKHgpLmxlbmd0aD4wJiYoaC5oZWFkZXJzPXgpO2smJihoLm9uRmluaXNoPWspO3JldHVybiBPYmplY3Qua2V5cyhoKS5sZW5ndGg+MT9oOm51bGx9OwpDRD1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgpe2cuakgoKSYmRC50b2tlbiYmKG49Zy56ZChuLHtjdHQ6RC50b2tlbixjdHR5cGU6RC55byxtZHhfZW52aXJvbm1lbnQ6RC5tZHhFbnZpcm9ubWVudH0pKTtiLlMoIm5ldF9waW5nc19sb3dfcHJpb3JpdHkiKSYmKFd8fChXPXt9KSxXLnByaW9yaXR5PSJsb3ciKTtrfHx4JiZiLlMoIm53bF9za2lwX3JldHJ5Iik/KFc9PW51bGw/Vz17fTpndUMobixiLlMoImh0bWw1X2Fzc2VydF9jcG5fd2l0aF9yZWdleCIpKSxoP2cuSFUoKS5zZW5kQW5kV3JpdGUobixXKTpnLkhVKCkuc2VuZFRoZW5Xcml0ZShuLFcseCkpOlc/KGd1QyhuLGIuUygiaHRtbDVfYXNzZXJ0X2Nwbl93aXRoX3JlZ2V4IikpLEJXaihuLFcpKTpnLmdvKG4sdil9OwpYTmk9ZnVuY3Rpb24obil7dmFyIFc9W107Zm9yKGxldCBEPTA7RDxuO0QrKyl7bGV0IGI9e30sdj1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqOSoxRTgpKzFFOCxrPSIiO2ZvcihsZXQgaD0wO2g8OTtoKyspays9ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSo1MildO2IudmlkZW9EZWNvZGVyTmFtZT1rO2IuZWxhcHNlZFRpbWVNcz12O1cucHVzaChiKX1yZXR1cm4gV307CkJsPWZ1bmN0aW9uKG4sVyl7bj13aW5kb3cuaDV2Y2M/LnNldHRpbmdzPy5zZXQobixXKTtyZXR1cm4gWW8obik/U2soSFAobiksKCk9PiEwLCgpPT4hMSk6SFAoISFuKX07CnFScj1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhU291cmNlLkVuYWJsZVVzaW5nTWVkaWFTb3VyY2VCdWZmZXJlZFJhbmdlIixuPzE6MCl9OwpHbnc9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJIVFRQMyIsbj8xOjApfTsKdEZ4PWZ1bmN0aW9uKG4pe3JldHVybiBCbCgiTWVkaWFTb3VyY2UuRW5hYmxlVXNpbmdNZWRpYVNvdXJjZUF0dGFjaG1lbnRNZXRob2RzIixuPzE6MCl9OwokTEM9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJRVUlDIixuPzE6MCl9OwpyYzI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5BdWRpb1dyaXRlRHVyYXRpb25Mb2NhbCIsbil9OwpzZ3c9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5QbGF5ZXJDb25maWd1cmF0aW9uLkRlY29kZVRvVGV4dHVyZVByZWZlcnJlZCIsbj8xOjApfTsKTjBTPWZ1bmN0aW9uKG4pe3JldHVybiBCbCgiTWVkaWEuVmlkZW9EZWNvZGVySW5pdGlhbFByZXJvbGxDb3VudCIsbil9OwpwTnQ9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5WaWRlb1JlbmRlcmVyTWluSW5wdXRCdWZmZXJzIixuKX07CllSdz1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLlZpZGVvUmVuZGVyZXJNaW5EZWNvZGVkRnJhbWVzIixuKX07CkhGWj1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkluY3JlbWVudGFsUGFyc2VMb29rQWhlYWQiLG4/MTowKX07CmZ5VT1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkVuYWJsZVJlc2V0QXVkaW9EZWNvZGVyIixuPzE6MCl9OwpKY2I9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5FbmFibGVGbHVzaER1cmluZ1NlZWsiLG4/MTowKX07Ckl5dz1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIkRlY29kZXJCdWZmZXIuRW5hYmxlQ29uZmlndXJhYmxlRGVjb21taXRTdHJhdGVneSIsbil9OwpTUnQ9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJEZWNvZGVyQnVmZmVyLlJlbGVhc2VNZW1vcnlPbkJhY2tncm91bmQiLG4/MTowKX07CkFjWj1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkRlY29kZWRBdWRpb0J1ZmZlclBvb2wiLG4/MTowKX07Cm1MMj1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLlZpZGVvRnJhbWVJbXBsUG9vbCIsbj8xOjApfTsKS1haPWZ1bmN0aW9uKG4pe3JldHVybiBCbCgiTWVkaWEuRXhwZXJpbWVudGFsTWF4UGVuZGluZ0J5dGVzUGVyUGFyc2UiLG4pfTsKdmFyIE9XdD1mdW5jdGlvbihuKXtyZXR1cm4gZVhbSVsxMF1dKHRoaXMsMTksNzA4NyxuKX07Ck9GQz1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLk1heFNhbXBsZXNQZXJXcml0ZSIsbil9OwpQUXI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5NZWRpYUNvZGVjUmVzZXREZWxheU1zIixuKX07ClpGdD1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkRpc2FibGVMb3dQZXJmb3JtYW5jZVNvZnR3YXJlRGVjb2RlIixuPzE6MCl9OwpVTDI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5FbmFibGVBdjFTdGFydHVwT3B0aW1pemF0aW9uIixuPzE6MCl9Owp5YzI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5Vc2VEdWFsVGhyZWFkc0ZvclZpZGVvIixuPzE6MCl9OwpFdXQ9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5WaWRlb0J1ZmZlclNpemVDbGFtcE1iIixuKX07CmlGVT1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLjcyMHBWaWRlb0J1ZmZlclNpemVDbGFtcE1iIixuKX07CnVxdD1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkZvcmNlRGVjb2RlVG9UZXh0dXJlIixuPzE6MCl9OwpvdTI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5Gb3JjZUNsZWFyU3VyZmFjZVZpZXciLG4/MTowKX07CmRMaT1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkVuYWJsZUxvd0xhdGVuY3kiLG4/MTowKX07CnpRUz1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLlNraXBGbHVzaE9uRGVjb2RlclRlYXJkb3duIixuPzE6MCl9OwpseTI9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5BbGxvd0F1ZGlvV3JpdGluZ09uUGF1c2UiLG4/MTowKX07ClQwVT1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkVuYWJsZVZpZGVvUmVuZGVyZXJWc3BBZGp1c3RtZW50IixuPzE6MCl9OwpqZ2g9ZnVuY3Rpb24obil7cmV0dXJuIEJsKCJNZWRpYS5Ta2lwVmlkZW9GcmFtZXNPdmVyNjBGcHMiLG4/MTowKX07CkNRQz1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkZsdXNoQXVkaW9UcmFja0R1cmluZ1NlZWsiLG4/MTowKX07CkIwaj1mdW5jdGlvbihuKXtyZXR1cm4gQmwoIk1lZGlhLkJ5cGFzc01vam9Gb3JNZWRpYSIsbj8xOjApfTsKRlgyPWZ1bmN0aW9uKG4pe3JldHVybiBCbCgiTWVkaWEuSWdub3JlTWVkaWFDb2RlY0NhbGxiYWNrc0R1cmluZ0ZsdXNoaW5nIixuPzE6MCl9OwpNRng9ZnVuY3Rpb24oKXt2YXIgbj13aW5kb3cuaDV2Y2M/LnNldHRpbmdzPy5nZXRQZXJzaXN0ZW50U2V0dGluZ0FzU3RyaW5nPy4oImNwdV91c2FnZV90cmFja2VyX2ludGVydmFscyIpO2lmKG4hPW51bGwpe249SlNPTi5wYXJzZShuKT8/W107dmFyIFc9bi5maWx0ZXIoRD0+RC50eXBlPT09InRvdGFsIikubWFwKEQ9PkQuc2Vjb25kcyk7CmZvcihsZXQgRCBvZiB3TjIpVy5pbmRleE9mKEQpPT09LTEmJm4ucHVzaCh7dHlwZToidG90YWwiLHNlY29uZHM6RH0pO3dpbmRvdy5oNXZjYz8uc2V0dGluZ3M/LnNldCgiY3B1X3VzYWdlX3RyYWNrZXJfaW50ZXJ2YWxzX2VuYWJsZWQiLDEpO3dpbmRvdy5oNXZjYz8uc2V0dGluZ3M/LnNldCgiY3B1X3VzYWdlX3RyYWNrZXJfaW50ZXJ2YWxzIixKU09OLnN0cmluZ2lmeShuKSl9fTsKUlFVPWZ1bmN0aW9uKCl7dmFyIG49d2luZG93Lkg1dmNjUGxhdGZvcm1TZXJ2aWNlLFc9IiI7aWYobiYmbi5oYXMoImRldi5jb2JhbHQuY29hdC5jbGllbnRsb2dpbmZvIikmJihuPW4ub3BlbigiZGV2LmNvYmFsdC5jb2F0LmNsaWVudGxvZ2luZm8iLCgpPT57fSkpKXtsZXQgRD1uLnNlbmQobmV3IEFycmF5QnVmZmVyKDApKTsKRCYmKFc9U3RyaW5nLmZyb21DaGFyQ29kZSguLi4obmV3IFVpbnQ4QXJyYXkoRCkpKSk7bi5jbG9zZSgpfXJldHVybiBXfTsKVkZTPWZ1bmN0aW9uKG4pe3ZhciBXPXdpbmRvdy5INXZjY1BsYXRmb3JtU2VydmljZTtpZihXKXt2YXIgRD1RZ2kuZmluZChiPT5XLmhhcyhiKSk7CkQmJihEPVcub3BlbihELCgpPT57fSkpJiYoRC5zZW5kKEl3KGBjcG46ICR7bn1gKS5idWZmZXIpLEQuY2xvc2UoKSl9fTsKZy53aj1mdW5jdGlvbihuLFcsRCxiKXtnLkZCKG4sRCxgJHtXLnRvRml4ZWQoMyl9OiR7Yi5qb2luKCI6Iil9YCl9OwpNUD1mdW5jdGlvbihuLFcpe3ZhciBEPW4ucHJvdmlkZXIuZ2V0Q3VycmVudFRpbWUoKTtnLndqKG4sVywiY210IixbRC50b0ZpeGVkKDMpXSk7dmFyIGI9RD1uLnByb3ZpZGVyLm90KCk7aWYoKCFuLmp8fEFKKG4ucHJvdmlkZXIudmlkZW9EYXRhKT8wOmIqMUUzPm4uai52TysxMDApJiZuLmope2I9bi5qLmlzQWQ7RD1EKjFFMy1uLmoudk87bi5lST1XKjFFMy1uLmoudFMtRC1uLmouT2E7dmFyIHY9KDAsZy5SKSgpLUQ7Vz1uLmVJO0Q9bi5wcm92aWRlci52aWRlb0RhdGE7dmFyIGs9RC5pc0FkKCk7aWYoYnx8ayl7az1gJHtiPyJhZCI6InZpZGVvIn1fdG9fJHtrPyJhZCI6InZpZGVvIn1gO3ZhciBoPXt9O0Qua1cmJihoLmN0dEF1dGhJbmZvPXt0b2tlbjpELmtXLHZpZGVvSWQ6RC52aWRlb0lkfSk7aC5zdGFydFRpbWU9di1XO2cuYmQoayxoKTtnLm5sKHt0YXJnZXRWaWRlb0lkOkQudmlkZW9JZCx0YXJnZXRDcG46RC5jbGllbnRQbGF5YmFja05vbmNlfSxrKTtnLmFMKCJwYnMiLHYsCmspfWVsc2Ugdj1uLnByb3ZpZGVyLkwuZUcoKSx2LlYhPT1ELmNsaWVudFBsYXliYWNrTm9uY2U/KHYuaj1ELmNsaWVudFBsYXliYWNrTm9uY2Usdi5KPVcpOkQuTlAoKXx8Zy5HcShuZXcgZy5ReCgiQ1NJIHRpbWluZyBsb2dnZWQgYmVmb3JlIGdsbGF0Iix7Y3BuOkQuY2xpZW50UGxheWJhY2tOb25jZX0pKTtuLlUoImdsbGF0Iix7bDpuLmVJLnRvRml4ZWQoKSxwcmV2X2FkOitifSk7ZGVsZXRlIG4uan19OwpnLkZCPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLkouZ2V0KFcpO2I/Yi5wdXNoKEQpOm4uSi5zZXQoVyxbRF0pfTsKUXU9ZnVuY3Rpb24obixXKXtuLmlzT2ZmbGluZT1XO2cud2oobixnLlJrKG4ucHJvdmlkZXIpLCJpc19vZmZsaW5lIixbbi5pc09mZmxpbmU/IjEiOiIwIl0pfTsKVnU9ZnVuY3Rpb24obixXLEQpe2lmKCFpc05hTihELlc3KSl7bGV0IGI9RC5XNztELko8YiYmKGI9RC5KKTtnLndqKG4sVywiYmgiLFtiLnRvRml4ZWQoMyldKX19OwpjbD1mdW5jdGlvbihuLFc9TmFOKXtXPVc+PTA/VzpnLlJrKG4ucHJvdmlkZXIpO3ZhciBEPW4ucHJvdmlkZXIuTC5ISygpLGI9RC5Fci0obi52Snx8MCk7Yj4wJiZnLndqKG4sVywiYndtIixbYiwoRC5vdy0obi5FNXx8MCkpLnRvRml4ZWQoMyldKTtpc05hTihuLnZKKSYmRC5FciYmbi5pc09mZmxpbmUmJlF1KG4sITEpO24udko9RC5FcjtuLkU1PUQub3c7aXNOYU4oRC5iYW5kd2lkdGhFc3RpbWF0ZSl8fGcud2oobixXLCJid2UiLFtELmJhbmR3aWR0aEVzdGltYXRlLnRvRml4ZWQoMCldKTtuLnByb3ZpZGVyLkIuV1goKSYmT2JqZWN0LmtleXMoRC5OKS5sZW5ndGghPT0wJiZuLlUoImJ3aW5mbyIsRC5OKTtpZihuLnByb3ZpZGVyLkIuV1goKXx8bi5wcm92aWRlci5CLlMoImh0bWw1X2xvZ19tZW1pbmZvIikpYj1oUXgoKSxPYmplY3QudmFsdWVzKGIpLnNvbWUodj0+diE9PXZvaWQgMCkmJm4uVSgibWVtaW5mbyIsYik7Cm4ucHJvdmlkZXIuQi5XWCgpJiYoYj1uLnlFPy5YKCkpJiZPYmplY3QudmFsdWVzKGIpLnNvbWUodj0+diE9bnVsbCkmJm4uVSgiY3B1aW5mbyIsYik7Cm4uVEMmJmcud2oobixXLCJiYXQiLFtuLlRDLmxldmVsLG4uVEMuY2hhcmdpbmc/IjEiOiIwIl0pO2I9bi5wcm92aWRlci5MLmdldFZpc2liaWxpdHlTdGF0ZSgpO24uVTUhPT1iJiYoZy53aihuLFcsInZpcyIsW2JdKSxuLlU1PWIpO01QKG4sVyk7KGI9Y2NaKG4ucHJvdmlkZXIpKSYmYiE9PW4uWSQmJihnLndqKG4sVywiY29ubiIsW2JdKSxuLlkkPWIpO1Z1KG4sVyxEKX07Cm5PTT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Zy5SayhuLnByb3ZpZGVyKTtheVoobixiLFcsMCxEKTtjbChuLGIpO2FrKG4pfTsKbkM9ZnVuY3Rpb24obixXKXtnLkZCKG4sImNhdCIsVyl9OwpXVGg9ZnVuY3Rpb24obixXKXtXPXtjcG46bi5wcm92aWRlci52aWRlb0RhdGEuY2xpZW50UGxheWJhY2tOb25jZSxzZXF1ZW5jZU51bWJlcjpXLHNlcmlhbGl6ZWRXYXRjaEVuZHBvaW50TG9nZ2luZ0NvbnRleHQ6bi5wcm92aWRlci52aWRlb0RhdGEubTB9O24uc2VyaWFsaXplZEhvdXNlQnJhbmRQbGF5ZXJTZXJ2aWNlTG9nZ2luZ0NvbnRleHQmJihXLnNlcmlhbGl6ZWRIb3VzZUJyYW5kUGxheWVyU2VydmljZUxvZ2dpbmdDb250ZXh0PWxwKG4uc2VyaWFsaXplZEhvdXNlQnJhbmRQbGF5ZXJTZXJ2aWNlTG9nZ2luZ0NvbnRleHQpfHx2b2lkIDApO24ucHJvdmlkZXIudmlkZW9EYXRhLnBsYXllclJlc3BvbnNlQ3BuJiYoVy5wbGF5ZXJSZXNwb25zZUNwbj1uLnByb3ZpZGVyLnZpZGVvRGF0YS5wbGF5ZXJSZXNwb25zZUNwbik7V3IubGVuZ3RoJiYoVy5kZWNvZGVySW5mbz1Xcik7bi5yZW1vdGVDb250cm9sTW9kZSYmKFcucmVtb3RlQ29udHJvbE1vZGU9bi5yZW1vdGVDb250cm9sTW9kZSk7Cm4ucmVtb3RlQ29ubmVjdGVkRGV2aWNlcy5sZW5ndGgmJihXLnJlbW90ZUNvbm5lY3RlZERldmljZXM9bi5yZW1vdGVDb25uZWN0ZWREZXZpY2VzKTtpZihuLlBYPy5sZW5ndGgpe1cuc2VyaWFsaXplZFFvZUNvbnRleHREYXRhPVtdO2Zvcih2YXIgRCBvZiBuLlBYKXtsZXQgYj1nLmQxKEQpO2ImJlcuc2VyaWFsaXplZFFvZUNvbnRleHREYXRhLnB1c2goYil9fSFuLmpXJiZuLnByb3ZpZGVyLnZpZGVvRGF0YS5zZXJpYWxpemVkT25lVGltZVFvZUNvbnRleHREYXRhJiYoVy5zZXJpYWxpemVkT25lVGltZVFvZUNvbnRleHREYXRhPVtdLEQ9Zy5kMShuLnByb3ZpZGVyLnZpZGVvRGF0YS5zZXJpYWxpemVkT25lVGltZVFvZUNvbnRleHREYXRhKSkmJihXLnNlcmlhbGl6ZWRPbmVUaW1lUW9lQ29udGV4dERhdGEucHVzaChEKSxuLmpXPSEwKTtuLlkuc2l6ZSYmKFcuZGFpQ3VlUG9pbnRFdmVudHM9QXJyYXkuZnJvbShuLlkudmFsdWVzKCkpKTtuLlkuY2xlYXIoKTtyZXR1cm4gV307CkRCaT1mdW5jdGlvbihuKXt2YXIgVz17Li4ubn07bi5zZXJpYWxpemVkUW9lQ29udGV4dERhdGEmJihXLnNlcmlhbGl6ZWRRb2VDb250ZXh0RGF0YT1uLnNlcmlhbGl6ZWRRb2VDb250ZXh0RGF0YS5tYXAoRD0+RCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk/Zy5FQShEKTpEKSk7Cm4uc2VyaWFsaXplZE9uZVRpbWVRb2VDb250ZXh0RGF0YSYmKFcuc2VyaWFsaXplZE9uZVRpbWVRb2VDb250ZXh0RGF0YT1uLnNlcmlhbGl6ZWRPbmVUaW1lUW9lQ29udGV4dERhdGEubWFwKEQ9PkQgaW5zdGFuY2VvZiBVaW50OEFycmF5P2cuRUEoRCk6RCkpOwpuLnNlcmlhbGl6ZWRIb3VzZUJyYW5kUGxheWVyU2VydmljZUxvZ2dpbmdDb250ZXh0JiYobj1uLnNlcmlhbGl6ZWRIb3VzZUJyYW5kUGxheWVyU2VydmljZUxvZ2dpbmdDb250ZXh0LG4gaW5zdGFuY2VvZiBVaW50OEFycmF5JiYoVy5zZXJpYWxpemVkSG91c2VCcmFuZFBsYXllclNlcnZpY2VMb2dnaW5nQ29udGV4dD1nLkVBKG4pKSk7cmV0dXJuIFd9OwpiUFM9ZnVuY3Rpb24obixXLEQpe2cuSEUobi5wcm92aWRlci5CLG4ucHJvdmlkZXIudmlkZW9EYXRhLlYoKSkudGhlbihiPT57dmFyIHY9ITE7Vy5pbmNsdWRlcygiJmR0PSIpfHxXLmluY2x1ZGVzKCImY290bj0iKT92PSEwOm4ucHJvdmlkZXIuQi5TKCJxb2Vfd2l0aF9uZXR3b3JrbGVzcyIpJiYodj0hMCk7dmFyIGs9bi5wcm92aWRlci5CLlMoInFvZV9zZW5kX2FuZF93cml0ZSIpLGg9bi5wcm92aWRlci5CO2I9alIoVyxoLG4ucHJvdmlkZXIuQi5wYWdlSWQsbi5wcm92aWRlci5CLnNlbmRWaXNpdG9ySWRIZWFkZXI/bi5wcm92aWRlci52aWRlb0RhdGEudmlzaXRvckRhdGE6dm9pZCAwLGIpO2guUygiaHRtbDVfc2ltcGxpZnlfcGluZ3MiKSYmKGI9Ynx8e30pO2I/KGIubWV0aG9kPSJQT1NUIixiLnBvc3RCb2R5PUQsQ0QoVyxiLHt0b2tlbjpuLnByb3ZpZGVyLnZpZGVvRGF0YS5rVyx5bzpuLnByb3ZpZGVyLnZpZGVvRGF0YS5RdixtZHhFbnZpcm9ubWVudDpuLnByb3ZpZGVyLnZpZGVvRGF0YS5tZHhFbnZpcm9ubWVudH0sCmgsdm9pZCAwLHYsayYmbi5TJCkpOnY/KHY9bi5wcm92aWRlci5CLlMoIm5ldHdvcmtsZXNzX2FqYXgiKSxoPXttZXRob2Q6IlBPU1QiLHBvc3RCb2R5OkR9LGsmJm4uUyQ/Zy5IVSgpLnNlbmRBbmRXcml0ZShXLGgpOnY/Zy5lZChXLHttZXRob2Q6IlBPU1QiLHBvc3RCb2R5OkR9KTpnLkhVKCkuc2VuZFRoZW5Xcml0ZShXLGgpKTpndncoVyxEKX0pfTsKYWs9ZnVuY3Rpb24obil7aWYoIW4ucHJvdmlkZXIuQi5TKCJodG1sNV9xb2Vfbm9fbGVuX2NoZWNrIikpe3ZhciBXPTA7Zm9yKGxldCBbRCxiXW9mIG4uSi5lbnRyaWVzKCkpVys9RC5sZW5ndGgrTnVtYmVyKGcudV8oYiwodixrKT0+ditrLmxlbmd0aCwwKSk7Clc+OTZFMyYmKG5ldyBnLmZfKG4ucmVwb3J0U3RhdHMsMCxuKSkuc3RhcnQoKX19Owp2TzI9ZnVuY3Rpb24obil7bi5wcm92aWRlci52aWRlb0RhdGEuWVomJm5DKG4sInByZWZldGNoIik7bi5wcm92aWRlci52aWRlb0RhdGEuUyQmJm4uVSgicmVsb2FkIix7cjpuLnByb3ZpZGVyLnZpZGVvRGF0YS5yZWxvYWRSZWFzb24sY3Q6bi5wcm92aWRlci52aWRlb0RhdGEuUyR9KTtuLnByb3ZpZGVyLnZpZGVvRGF0YS5JUiYmbkMobiwibW9uaXRvciIpO24ucHJvdmlkZXIudmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrJiZuQyhuLCJsaXZlIik7TnMmJm5DKG4sInN0cmVhbWluZyIpO24ucHJvdmlkZXIudmlkZW9EYXRhLmk1JiZuLlUoImN0cmwiLHttb2RlOm4ucHJvdmlkZXIudmlkZW9EYXRhLmk1fSwhMCk7aWYobi5wcm92aWRlci52aWRlb0RhdGEuVUspe3ZhciBXPW4ucHJvdmlkZXIudmlkZW9EYXRhLlVLLnJlcGxhY2UoLywvZywiXyIpO24uVSgieXRwIix7dHlwZTpXfSwhMCl9bi5wcm92aWRlci52aWRlb0RhdGEuVDQmJihXPW4ucHJvdmlkZXIudmlkZW9EYXRhLlQ0LnJlcGxhY2UoLywvZywKIi4iKSxuLlUoInl0cmV4cCIse2lkczpXfSwhMCkpO24ucHJvdmlkZXIuQi5XWCgpJiZuLlUoIm5vdyIse3d0OigwLGcuUikoKX0pO1c9bi5wcm92aWRlci52aWRlb0RhdGE7dmFyIEQ9bi5wcm92aWRlci5CLlMoImVuYWJsZV93aGl0ZV9ub2lzZSIpfHxuLnByb3ZpZGVyLkIuUygiZW5hYmxlX3dlYmdsX25vb3AiKSxiPWcua3AoVyl8fGcuSFQoVyl8fGcuZkEoVyl8fGcuSkQoVyk7KER8fGIpJiYoRD0oMCxnLkRWKSgpKSYmbi5KLnNldCgiZ3B1IixbRF0pO09TKG4ucHJvdmlkZXIudmlkZW9EYXRhKSYmZy53aihuLGcuUmsobi5wcm92aWRlciksImR0IixbIjEiXSk7Vy5jb3RuJiYhT1MoVykmJlF1KG4sITApO24ucHJvdmlkZXIuQi5XWCgpJiYoVz0oMCxnLlIpKCktbi5wcm92aWRlci5CLkN1LG4uVSgicGxheWVyYWdlIix7c2VjczooMS42KipNYXRoLnJvdW5kKE1hdGgubG9nKFcvMUUzKS9NYXRoLmxvZygxLjYpKSkudG9GaXhlZCgpfSkpO24uVj0hMDtuLks9VzAoKCk9PntuLnJlcG9ydFN0YXRzKCl9LAoxRTQpfTsKYXlaPWZ1bmN0aW9uKG4sVyxELGIsdil7dmFyIGs9bi5wcm92aWRlci5CLk4uY2JydmVyO24ucHJvdmlkZXIuQi5OLmNicj09PSJDaHJvbWUiJiYvXjk2Wy5dLy50ZXN0KGspJiZEPT09Im5ldC5iYWRzdGF0dXMiJiYvcmNcLjUwMC8udGVzdCh2KSYmYm0obiwzKTsvYjI0ODE4MDI3OC8udGVzdCh2KSYmYm0obiw0KTtrPW4ucHJvdmlkZXIuZ2V0Q3VycmVudFRpbWUoKTtiPWI9PT0xPyJmYXRhbCI6IiI7RD1bRCxiLGsudG9GaXhlZCgzKV07YiYmKHYrPWA7YTZzLiR7TGMoKX1gKTt2JiZELnB1c2goa29yKHYpKTtnLndqKG4sVywiZXJyb3IiLEQpO24uVj0hMH07CmJtPWZ1bmN0aW9uKG4sVyl7bi5ZWnx8KGcuRkIobiwiZmNueiIsYCR7V31gKSxuLllaPSEwKX07CmhEMT1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKEQhPT1uLk4pe24uZSR8fFc8bi5XfHwobi5OPT09IlBMIj9uLnBsYXlUaW1lU2Vjcys9Vy1uLlc6bi5OPT09IkIiJiZuLmlzQnVmZmVyaW5nJiYobi5pc0J1ZmZlcmluZz0hMSxuLnJlYnVmZmVyVGltZVNlY3MrPVctbi5WUSwhbi5SYSYmbi5yZWJ1ZmZlclRpbWVTZWNzPj0xMCYmbi5wbGF5VGltZVNlY3M8PTE4MCYmKG4uSi5zZXQoInFvZWFsZXJ0IixbIjEiXSksbi5SYT0hMCkpLEQhPT0iQiJ8fG4uTiE9PSJQTCImJm4uTiE9PSJQQiJ8fChuLmlzQnVmZmVyaW5nPSEwKSxuLlc9Vyk7bi5OPT09IlBMIiYmKEQ9PT0iQiJ8fEQ9PT0iUyIpfHxuLnByb3ZpZGVyLkIuV1goKT9jbChuLFcpOihuLmZCfHxEIT09IlBMInx8KG4uZkI9ITAsVnUobixXLG4ucHJvdmlkZXIuTC5ISygpKSksTVAobixXKSk7RD09PSJQTCImJmcuSmEobi5NZCk7dmFyIGs9W0RdO0Q9PT0iUyImJmImJmsucHVzaChgc3MuJHtifWApO0Q9PT0iUEEiJiZ2JiZrLnB1c2goYHNyLiR7dn1gKTsKZy53aihuLFcsInZwcyIsayk7bi5OPUQ7bi5WUT1XO24uVz1XO24uVj0hMH19Owp4Qmg9ZnVuY3Rpb24obil7aWYoIShuLlg+PTApKWlmKG4ucHJvdmlkZXIuQi5OZHx8bi5wcm92aWRlci5MLmdldFZpc2liaWxpdHlTdGF0ZSgpIT09Myl7dmFyIFc9bi5wcm92aWRlci5MLnpzKCExKSxEPW4ucHJvdmlkZXIuTC56cyghMCk7bi5VKCJ1c2VyX2ludGVudF9iaCIse2JoOlcudG9GaXhlZCgzKSx0aDpELnRvRml4ZWQoMyl9KTtuLlg9Zy5SayhuLnByb3ZpZGVyKX1lbHNlIG4uQ3U9ITB9OwpMVGI9ZnVuY3Rpb24obixXKXtpZihnLm1NKG4ucHJvdmlkZXIudmlkZW9EYXRhKSl7bj00O3ZhciBEPTF9ZWxzZSBuPVcuc291cmNlPz8wO249YHNtcy4ke259YDtEIT09dm9pZCAwJiYobis9YF8ke0R9YCk7cmV0dXJuIG59Owp2YXIgQTExPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIEo0W0lbMTBdXSh0aGlzLDEsNDM2MixuLFcpfTsKdnI9ZnVuY3Rpb24obixXLEQsYix2LGssaCl7dmFyIHg9Zy5SayhuLnByb3ZpZGVyKTtEIT09MSYmRCE9PTMmJkQhPT01fHxnLndqKG4seCwidnBzIixbbi5OXSk7Zy5GQihuLCJ4dnQiLGB0LiR7eC50b0ZpeGVkKDMpfTttLiR7aC50b0ZpeGVkKDMpfTtnLiR7V307dHQuJHtEfTtucC4ke2J9O2MuJHt2fTtkLiR7a31gKX07Cmtvcj1mdW5jdGlvbihuKXsvW15hLXpBLVowLTk7LiFfLV0vLnRlc3QobikmJihuPW4ucmVwbGFjZSgvWytdL2csIi0iKS5yZXBsYWNlKC9bXmEtekEtWjAtOTsuIV8tXS9nLCJfIikpO3JldHVybiBufTsKT2I9ZnVuY3Rpb24obixXKXtpZihuLlpEJiYhbi5PbilyZXR1cm4gMztpZihuLmlzU3VzcGVuZGVkKXJldHVybiAxO2lmKG4ubWVkaWFTb3VyY2U/LmJkKCkpcmV0dXJuIDQ7dmFyIEQ9KFcuUEouaW5mby5hdWRpbz9uLnBvbGljeS52SjpuLnBvbGljeS5lJCkvKFcuTnMqbi5wb2xpY3kud3kpO2lmKG4ucG9saWN5LmNIPjAmJm4ubWVkaWFTb3VyY2UmJm42KG4ubWVkaWFTb3VyY2UpJiYoVz1XLlBKLmluZm8udmlkZW8/bi5tZWRpYVNvdXJjZS5KOm4ubWVkaWFTb3VyY2UuTikmJiFXLnl1KCkpe1c9Vy5aRigpO2xldCBiPUNNKFcsbi5nZXRDdXJyZW50VGltZSgpKTtiPj0wJiYoVz1uLmdldEN1cnJlbnRUaW1lKCktVy5zdGFydChiKSxEKz1NYXRoLm1heCgwLE1hdGgubWluKFctbi5wb2xpY3kuY0gsbi5wb2xpY3kuQmQpKSl9bi5wb2xpY3kuTz4wJiYoRD1NYXRoLm1pbihELG4ucG9saWN5Lk8pKTtyZXR1cm4gRH07CmRWPWZ1bmN0aW9uKG4sVyxEKXtlRGIobixELnFkfHwidW5rbm93biIpO24uTC5zZWVrVG8oVyxEKX07CmcuZEM9ZnVuY3Rpb24obixXLEQsYix2KXtuLkwuZ2V0VmlkZW9EYXRhKCkuREYoKT92JiZuLnhXLlRDK3YvMUUzPkQmJihuLlUoInNkYWkiLHtzZWc6YixyYnQ6RC50b0ZpeGVkKDMpLGVuZDpuLnhXLlRDLnRvRml4ZWQoMyksc2Q6di50b0ZpeGVkKDMpfSksbi5YJCghMSwicm9sbGJhY2siKSk6bi5wb2xpY3kuVTEmJm4uWCQoITEsInJvbGxiYWNrIik7aWYobi5LdS5pc01hbmlmZXN0bGVzcyl7dj1VNChuLmF1ZGlvVHJhY2ssYixELFcpO3ZhciBrPVU0KG4udmlkZW9UcmFjayxiLEQsVyk7bi5wb2xpY3kuczV8fChrJiZUeChuLkt1LGIsITApLHYmJlR4KG4uS3UsYiwhMSkpO2smJm4udmlkZW9UcmFjay5rSSgpO3YmJm4uYXVkaW9UcmFjay5rSSgpO24uVSgic2RhaSIse3JvbGxiazJfc2VnOmIscmJ0OkQudG9GaXhlZCgzKSxsdDpXLnRvRml4ZWQoMyksYTp2LHY6a30pOyh2fHxrKSYmbi5wb2xpY3kuVTEmJmcuQWcobil9fTsKWUM9ZnVuY3Rpb24obixXKXtuLmhhbmRsZUVycm9yKCJmbXQudW5wYXJzZWFibGUiLFcsMSl9OwpnLkFnPWZ1bmN0aW9uKG4pe2cuSmEobi5uTil9OwpTek09ZnVuY3Rpb24obil7dmFyIFc9bi5qbCgpLmZpbHRlcihEPT5ELm5hbWVzcGFjZT09PSJhZCIpOwpmb3IobGV0IEQgb2YgVylpZihELnN0YXJ0LzFFMz5uLmdldEN1cnJlbnRUaW1lKCkpcmV0dXJuIEQuc3RhcnQvMUUzO3JldHVybiBJbmZpbml0eX07CmM2PWZ1bmN0aW9uKG4pe3ZhciBXPSgwLGcuUikoKTtuLnFHPVd9OwpIJGg9ZnVuY3Rpb24obixXKXtpZih4TihXLkF3W1cuQXcubGVuZ3RoLTFdKSl7YTp7dmFyIEQ9bi5jVjtXPVcuQXdbMF0uUEo7aWYoVy5pbmZvLnZpZGVvKXtpZihELlchPT1XKXtELlc9VztEPVMkaChEKTticmVhayBhfX1lbHNlIEQuSEo9RC5WIT09VyxELlY9VztEPW51bGx9Z09DKG4sRCl9fTsKUW89ZnVuY3Rpb24obil7bi5wb2xpY3kuSEQmJm4ucG9saWN5LmU0JiZNYXRoLm1pbihnVEMobi52aWRlb1RyYWNrKSxnVEMobi5hdWRpb1RyYWNrKSkqMUUzPm4ucG9saWN5Lm0kP2cuSmEobi5aSyk6bi5oVCgpfTsKQjY9ZnVuY3Rpb24obixXLEQsYj0hMSl7YiYmIVcuVEMmJihWVCgpfHwoYj1XLlFFKSYmIWIudFooRC5pbmZvKSYmbi5MLkJvKCksVy5UQz0hMCk7Vy5QSiE9PUQmJihXLlBKPUQpfTsKd3U9ZnVuY3Rpb24obil7cmV0dXJuIG4uSXc8bi5peH07ClIkPWZ1bmN0aW9uKG4pe24uemkoKTtuLlhhLmlzU2Vla2luZygpO24uUXUmJkRMYihuLlF1LG4udmlkZW9UcmFjay5QSik7Zy5BZyhuKTtyZXR1cm4gRWIobi5YYSl9Owpkaj1mdW5jdGlvbihuKXtyZXR1cm4gbi5MLmdldFZpZGVvRGF0YSgpLnpXKCl8fG4ucG9saWN5Lm1EfTsKelMyPWZ1bmN0aW9uKG4sVyl7cmV0dXJuKE9iKG4sVykrbi5wb2xpY3kualIpKlcuTnN9OwpFUlM9ZnVuY3Rpb24obil7aWYobi5MLmdldFZpZGVvRGF0YSgpLmlzTGl2ZVBsYXliYWNrKXJldHVybiExO3ZhciBXPW4uTC5oNSgpO2lmKCFXKXJldHVybiExO1c9Vy5nZXREdXJhdGlvbigpO2lmKG4ubWVkaWFTb3VyY2UmJm4ubWVkaWFTb3VyY2UuTiYmbi5tZWRpYVNvdXJjZS5KKXt2YXIgRD1uLmdldEN1cnJlbnRUaW1lKCksYj1uLm1lZGlhU291cmNlLk4uWkYoKTtuPW4ubWVkaWFTb3VyY2UuSi5aRigpO2I9Yj9GWihiLEQpOkQ7RD1uP0ZaKG4sRCk6RDtEPU1hdGgubWluKGIsRCk7Vz1pc05hTihEKT8hMTpEPj1XLS4wMX1lbHNlIFc9ITE7cmV0dXJuIFd9OwpYemg9ZnVuY3Rpb24obixXLEQpe2lmKCEobi52aWRlb1RyYWNrLlBKLk4oKSYmbi5hdWRpb1RyYWNrLlBKLk4oKSYmbi5tZWRpYVNvdXJjZSYmbi5tZWRpYVNvdXJjZS5KJiZuLm1lZGlhU291cmNlLk4pKXJldHVybiExO2lmKEQmJm4uS3UuaXNNYW5pZmVzdGxlc3MmJihuLnZpZGVvVHJhY2suWD09PS0xfHxuLmF1ZGlvVHJhY2suWD09PS0xKSlyZXR1cm4hMDt2YXIgYj1LdihuLnZpZGVvVHJhY2ssVyxEKTtpZihpc05hTihiKSlyZXR1cm4hMTtuPUt2KG4uYXVkaW9UcmFjayxuLnBvbGljeS5FNT9XOmIsRCk7cmV0dXJuIGlzTmFOKG4pPyExOiEwfTsKcUoyPWZ1bmN0aW9uKG4pe24uUWo/Llh0Py5pdGFnRGVueWxpc3QmJm4uV0Yobi5Raj8uWHQuaXRhZ0RlbnlsaXN0KTtuLlFqPy5wbGF5YmFja1N0YXJ0UG9saWN5JiZsUyhuLnBvbGljeSxuLlFqPy5wbGF5YmFja1N0YXJ0UG9saWN5LDMsbi5Raj8uY0EoKSk7aWYobi5wb2xpY3kuY0wpe3ZhciBXPW4uRTEoKTsoVz1XP24uUWo/LkR3LmdldChXKTp2b2lkIDApJiZuLnhXLnN5KFcsLTEpfW4uS3UuT3x8bi5wb2xpY3kuV2l8fChXPW4uUWo/LlFXLFc/LndmJiZXPy52NyYmbi5LdS56VyYmQzYobi5LdSxXLndmLFcudjcpKTtpZihuLlFqPy5NUyl7Vz1uLlFqLk1TLmdldChuLkUxKCl8fCIiKTtpZighVylyZXR1cm47aWYobi5LdSYmVy5mb3JtYXRJZCl7bGV0IEQ9bi5LdS5KLmdldChNayhXLmZvcm1hdElkKSk7RCYmKEQuaW5mby5kZWJ1Z0luZm89Vy5kZWJ1Z0luZm8pfX1uLnBvbGljeS5EJiYobi5Raj8uckIoKS5mb3JFYWNoKEQ9PntuLmk4KEQpfSksbi5Raj8uRm8oKSl9Owp0OWg9ZnVuY3Rpb24obil7aWYoIW4uS3UuelcpcmV0dXJuITA7dmFyIFc9bi5MLmdldFZpZGVvRGF0YSgpO2lmKG4uTC5PUCgpKXJldHVybiBuLlUoIm9tYnBhIix7fSksITE7aWYoISFuLlFqPy5RVz8uWjMhPT1uLkt1LlhnKXJldHVybiBuLlUoIm9tYnBsbW0iLHt9KSwhMTt2YXIgRD1XLlRDfHxXLmxpdmVVdGNTdGFydFNlY29uZHN8fFcuVXI7aWYobi5LdS5YZyYmRClyZXR1cm4gbi5VKCJvbWJwbHN0Iix7fSksITE7aWYobi5LdS5PfHxuLnBvbGljeS5XaSlyZXR1cm4gbi5VKCJvbWJhYiIse30pLCExO0Q9RGF0ZS5ub3coKTtpZighVy5saXZlUHJlbG9hZCYmRnYobi5LdSkmJiFpc05hTihuLkNIKSYmRC1uLkNIPm4ucG9saWN5LkZVKjFFMylyZXR1cm4gbi5VKCJvbWJ0dGwiLHt9KSwhMTtpZih4cChXKSE9PTAmJiFuLnBvbGljeS5OfHxXLlMoImh0bWw1X2Rpc2FibGVfb25lc2llX21lZGlhX2Zvcl9tb3NhaWMiKSYmVy5aaCgpfHxXLlMoImh0bWw1X2Rpc2FibGVfb25lc2llX21lZGlhX2Zvcl9saWZhX2VsaWdpYmxlIikmJgpweihXKSlyZXR1cm4hMTtpZihuLkwuRygpLlp0KCkuTi5RUShHb00pJiYoVz1uLlFqPy5waygpPz8wLFc+PTAmJm4uS3UuaXNXaW5kb3dlZExpdmUmJihXPG4uS3UuSlUqMUUzfHxXPm4uS3Uub1IqMUUzKSkpcmV0dXJuIG4uVSgib21id25kIix7c3Q6VyxtaW46bi5LdS5KVSoxRTMsbWF4Om4uS3Uub1IqMUUzfSksITE7aWYobi5LdS5JdCYmbi5LdS5pc1dpbmRvd2VkTGl2ZSlpZihuLkwuRygpLlMoImh0bWw1X3VzZV9vbmVzaWVfd2luZG93ZWRfbGl2ZV9tZWRpYSIpKW4uVSgib21hbWluc3EiLHt9KTtlbHNlIHJldHVybiBuLlUoIm9tYm1pbnNxIix7fSksITE7cmV0dXJuITB9OwprYz1mdW5jdGlvbihuLFcpe3ZhciBEPWN3KFcuUEosbi5LdS56VyksYj1uLmhtPy5mMyhEKXx8W107aWYoYi5sZW5ndGg9PT0wKXJldHVybiBuLlUoIm9tYm1zaSIse30pLCExO2I9bmV3IHdrKGIpO2lmKCghbi5wb2xpY3kudHd8fGlzRmluaXRlKG4uZ2V0Q3VycmVudFRpbWUoKSl8fG4uTC5lSigpKSYmIWIua2Yobi5nZXRDdXJyZW50VGltZSgpKSYmIW4uTC5nZXRWaWRlb0RhdGEoKS5saXZlUHJlbG9hZClyZXR1cm4gbi5VKCJvc3RtZiIse2N0Om4uZ2V0Q3VycmVudFRpbWUoKSxhOlcuUEouaW5mby5lUygpfSksITE7bi5obT8uRVMoRCk7cmV0dXJuITB9OwokQmk9ZnVuY3Rpb24obixXKXt2YXIgRD1XLlBKLGI9bi5LdS56VztpZih0OWgobikpaWYobi5obSYmbi5obS5nRihjdyhELGIpKSl7aWYoYj1jdyhELGIpLGtjKG4sVykpe3ZhciB2PW5ldyB3ayhuLmhtLmYzKGIpKSxrPWg9Pnt0cnl7aC50bigpPyhuLmhhbmRsZUVycm9yKGguVkcoKSxoLnkwKCkpLEU0KFcsaCkseXMoaC5pbmZvKSYmQ3Iobi5OeSxXLEQsITApLG4uaFQoKSk6RjAobi5OeSxoKSYmKG4uSkM/LlMkKGguaW5mbyxuLnNVKSxuLmhUKCkpfWNhdGNoKHgpe2g9QiQoeCksbi5oYW5kbGVFcnJvcihoLmVycm9yQ29kZSxoLmRldGFpbHMsaC5zZXZlcml0eSksbi56aSgpfX07CkQuY0o9ITA7VXYodikmJihPNChXLG5ldyBTbihuLnBvbGljeSxiLHYsbi5obSxrKSksaXUobi50aW1pbmcpKX19ZWxzZSBuLlUoIm9tYmZtdCIse30pfTsKcjdoPWZ1bmN0aW9uKG4pe24ucG9saWN5LlgmJm4uUWomJihuLlFqLkd3LmZvckVhY2goVz0+e24uSm0oVywtMSl9KSxuLlFqLkd3PVtdKX07CmgyPWZ1bmN0aW9uKG4sVyl7Vz1XfHxuLnZpZGVvVHJhY2smJm4udmlkZW9UcmFjay5OJiZuLnZpZGVvVHJhY2suTi5zZWdtZW50U3RhcnRUaW1lfHxuLmdldEN1cnJlbnRUaW1lKCk7dmFyIEQ9QjYsYj1uLnZpZGVvVHJhY2ssdj1uLmNWO1c9di5uZXh0VmlkZW8mJnYubmV4dFZpZGVvLmluZGV4LlIzKFcpfHwwO3YuY0ohPT1XJiYodi5iZD17fSx2LmNKPVcsUnEodix2Lk4pKTtXPSF2Lk4uaXNMb2NrZWQoKSYmdi5ZPi0xJiYoMCxnLlIpKCktdi5ZPHYucG9saWN5LkFrKjFFMzt2YXIgaz12Lm5leHRWaWRlbyYmTXEodix2Lm5leHRWaWRlby5pbmZvKSozPE5XKHYuSWcpO2lmKCFXfHxrKVZCKHYpLGNwKHYpLHYuTz12Lk98fHYubmV4dFZpZGVvIT09di5XO3YubmV4dFZpZGVvJiYhdi5uZXh0VmlkZW8uaW5kZXguaXNMb2FkZWQoKSYmKHYuY0o9LTEpO0QobixiLHYubmV4dFZpZGVvKTtCNihuLG4uYXVkaW9UcmFjayxuLmNWLkopfTsKZURiPWZ1bmN0aW9uKG4sVyl7aWYoIWlzTmFOKG4uajApKXtsZXQgRD1EYXRlLm5vdygpLW4uajA7RDwxRTQmJm4uVSgiYmZhc3d0Y2giLHtlcDpELHNrOlchPT12b2lkIDA/IjEiOiIwIixzcjpXfHwiIn0pfX07ClhiPWZ1bmN0aW9uKG4pe2E6e2lmKG4uSGcoKSYmbWQobi52aWRlb1RyYWNrKSYmbWQobi5hdWRpb1RyYWNrKSYmbi5MLkhvKCkmJiFuLkwuVjAoKSYmIW4ubWVkaWFTb3VyY2U/Lk4/LmlRKCkmJiFuLm1lZGlhU291cmNlPy5KPy5pUSgpJiYhbi5BYil7dmFyIFc9bi5MLlhTPy5YKCk7aWYoIVcpYnJlYWsgYTtuLmF1ZGlvVHJhY2suSlgoKTtuLnZpZGVvVHJhY2suSlgoKTtuLkFiPVd9aWYoVz1uLkhnKCkmJm4uTC5IbygpJiYhbi5MLlYwKCkpaWYobi5BYiYmbi5BYi5KJiZuLkFiLk4mJm4udmlkZW9UcmFjay5EZygpJiZuLmF1ZGlvVHJhY2suRGcoKSl7dmFyIEQ9bi52aWRlb1RyYWNrLlcuYjcoKTtXPW4uYXVkaW9UcmFjay5XLmI3KCk7dmFyIGI9bi5BYj8uSi5aRigpLHY9bi5BYj8uTi5aRigpO0QmJlc/KEQ9QlIoYixrTihELmluZm8pLS4xKSxXPUJSKHYsa04oVy5pbmZvKS0uMSksVz1EJiZXKTpXPSExfWVsc2UgVz0hMTtXJiZuLkwuWFM/LlcoKX1pZihuLm1lZGlhU291cmNlKWlmKFc9Cm4uQWJ8fG4ubWVkaWFTb3VyY2Usdj1XLk4sRD1XLkosczdyKG4sbi5hdWRpb1RyYWNrKSxzN3IobixuLnZpZGVvVHJhY2spLGI9TjNDKG4pKXtpZihuLnBvbGljeS5lNCl7aWYoIXYuRDkoKSYmKFc9aVkobi5hdWRpb1RyYWNrKSkpe2lmKCF4YyhuLG4uYXVkaW9UcmFjayx2LFcuaW5mbykpcmV0dXJuO0xDKG4sbi5hdWRpb1RyYWNrLHYsVyl9aWYoIUQuRDkoKSYmKFc9aVkobi52aWRlb1RyYWNrKSkpe2lmKCF4YyhuLG4udmlkZW9UcmFjayxELFcuaW5mbykpcmV0dXJuO0xDKG4sbi52aWRlb1RyYWNrLEQsVyl9fW4ubXh8fChuLm14PSgwLGcuUikoKSxuLnBvbGljeS5XJiZuLlUoImFwZHBzIix7cjpifSkpfWVsc2V7aWYobi5teCl7Yj1uLm14O3ZhciBrPSgwLGcuUikoKS1iO2xldCBoPW4uYXVkaW9UcmFjay56cyghMCkqMUUzLHg9bi52aWRlb1RyYWNrLnpzKCEwKSoxRTM7bi5wb2xpY3kuVyYmKG4uVSgiYXBkcGUiLHtkdXI6ay50b0ZpeGVkKCksYWJ1ZjpoLnRvRml4ZWQoKSx2YnVmOngudG9GaXhlZCgpfSksCmR1KG4ucG9saWN5KSYmKGs9Tlcobi5JZyksbi5VKCJzZHBzIix7Y3Q6YixhaDpoLnRvRml4ZWQoKSx2aDp4LnRvRml4ZWQoKSxtcjpwdihuLklnLG4uT24sayksYnc6ay50b0ZpeGVkKCksanM6bi5pc1NlZWtpbmcoKSxyZTorbi5Pbixwczoobi5wb2xpY3kuTTV8fCIiKS50b1N0cmluZygpLHJuOihuLnBvbGljeS5EQ3x8IiIpLnRvU3RyaW5nKCl9KSkpO24ubXg9MH1uLlF1JiYoYj1uLlF1LmhUKG4uYXVkaW9UcmFjayxnLnd5KG4ubWVkaWFTb3VyY2UuSi5aRigpKSkpJiZuLkwuc2Vla1RvKGIse0E5OiEwLHFkOiJwb2xsU3Vic2VnbWVudFJlYWRhaGVhZCIscWE6ITB9KTtiPSExO3B6aChuLG4udmlkZW9UcmFjayxEKSYmKGI9ITAsRD1uLnRpbWluZyxELld8fChELlc9KDAsZy5SKSgpLGcuRUcoInZkYSIsRC5XLEQuelIpLEQuSiYmKGcuRHkoKSxiUSg0KSkpLEQ9bi50aW1pbmcsRC5WUXx8KEQuVlE9KDAsZy5SKSgpLGcuRUcoInZyYl9mIixELlZRLEQuelIpKSk7VyYmIVcuUEEoKSYmCihwemgobixuLmF1ZGlvVHJhY2ssdikmJihiPSEwLHY9bi50aW1pbmcsdi5KfHwodi5KPSgwLGcuUikoKSxnLkVHKCJhZGEiLHYuSix2LnpSKSx2LlcmJihnLkR5KCksYlEoNCkpKSx2PW4udGltaW5nLHYuWXx8KHYuWT0oMCxnLlIpKCksZy5FRygiYXJiX2YiLHYuWSx2LnpSKSkpLCFuLnFOKCkmJm4ubWVkaWFTb3VyY2UmJighbi5wb2xpY3kuVjYmJm1kKG4udmlkZW9UcmFjaykmJm1kKG4uYXVkaW9UcmFjaykmJm42KFcpJiYhVy55dSgpJiYodj1JJChuLmF1ZGlvVHJhY2spLlBKLHY9PT1uLkt1Lk5bdi5pbmZvLmlkXSYmKG4uTC5HKCkuV1goKSYmbi5MLlUoInNlcyIse2VvczoxfSksbjYoVykmJihXLm1lZGlhU291cmNlP1cubWVkaWFTb3VyY2UuZW5kT2ZTdHJlYW0oKTpXLkVWLndlYmtpdFNvdXJjZUVuZE9mU3RyZWFtKFcuRVYuRU9TX05PX0VSUk9SKSksdj1uLnNjaGVkdWxlLHNuKGUwKHYpKSx2LmNKPSgwLGcuUikoKSx2Lk89ITAsdj0odj1uLnZpZGVvVHJhY2suUEopJiZ2LmluZGV4IGluc3RhbmNlb2YKZ1M/di5pbmRleC5LOnZvaWQgMCxuLkwuRygpLlp0KCkuTi5RUShZSmIpP3Y9PT0iZW1zZyImJm4ucG0oImUiKTpuLnBtKCJlIikpKSxiJiYoVy5OPyFXLk4uc3VwcG9ydHMoMCk6IWFkKCkpJiZnLkFnKG4pKSl9fTsKSFBiPWZ1bmN0aW9uKG4pe24ucG9saWN5LlY2PSExO3RyeXtYYihuKX1jYXRjaChXKXtnLlhqKFcpfX07CmZteD1mdW5jdGlvbihuLFc9ITEpe24ubWVkaWFTb3VyY2UmJm4ubWVkaWFTb3VyY2UuTiYmbi5tZWRpYVNvdXJjZS5KJiYobi5tZWRpYVNvdXJjZS5OLk05KG4uTEwsbiksbi5tZWRpYVNvdXJjZS5KLk05KG4uTEwsbikpO0tyKG4uYXVkaW9UcmFjayxudWxsLFcpO0tyKG4udmlkZW9UcmFjayxudWxsLFcpO24ubWVkaWFTb3VyY2UmJihuLm1lZGlhU291cmNlLlY9ITEpO24ubWVkaWFTb3VyY2U9bnVsbDtuLkFiPW51bGw7bi5MLlhTPy5yZXNldCgpfTsKSjdpPWZ1bmN0aW9uKG4sVyxEPSExLGI9ITEsdj0hMSl7S3Iobi52aWRlb1RyYWNrLFcuSnx8bnVsbCxiLHYpO0tyKG4uYXVkaW9UcmFjayxXLk58fG51bGwsYix2KTtuLm1lZGlhU291cmNlPVc7bi5tZWRpYVNvdXJjZS5WPSEwO0R8fG4ucmVzdW1lKCk7Vy5OLmgkKG4uTEwsbik7Vy5KLmgkKG4uTEwsbil9OwpJbWk9ZnVuY3Rpb24obixXLEQ9ITEsYj0hMSx2PSExKXtuLnBvbGljeS5UQyYmKG4ucG9saWN5LlZRJiZuLlUoImxvYWRlciIse3NldHNtYjowfSksbi56aSgpLG4ucG9saWN5LlRDPSExKTtmbXgobixiKTtpZighVy5YKCkpe3ZhciBrPWlZKG4udmlkZW9UcmFjayk7az1rP2suaW5mby5QSjpuLnZpZGVvVHJhY2suUEo7bGV0IGg9aVkobi5hdWRpb1RyYWNrKTtMS1UoVyxrLmluZm8sKGg/aC5pbmZvLlBKOm4uYXVkaW9UcmFjay5QSikuaW5mbyxuLnBvbGljeS5wUil9SjdpKG4sVyxELGIsdik7dHJ5e24uaFQoKX1jYXRjaChoKXtnLlhqKGgpfX07CnFtPWZ1bmN0aW9uKG4pe24ubWVkaWFTb3VyY2UmJm4ubWVkaWFTb3VyY2UuUEEoKSYmbi5LMSgpfTsKZ09DPWZ1bmN0aW9uKG4sVyl7VyYmR1gobi5MLG5ldyB0MihXLnZpZGVvLFcucmVhc29uKSk7bi5jVi5ISiYmKFc9WmV3KG4uY1YsImEiKSxuLkwuZ20obmV3IHQyKFcuYXVkaW8sVy5yZWFzb24pKSl9OwpBN3g9ZnVuY3Rpb24obil7bi5CdiYmIW4uaXNTdXNwZW5kZWQmJlRaKG4uc2NoZWR1bGUpJiYoU0paKG4sbi5Cdiksbi5Cdj0iIil9OwpzN3I9ZnVuY3Rpb24obixXKXtpWShXKT8uaXNMb2NrZWQmJm1CYihXKSYmKG4uTC5HKCkuV1goKSYmbi5VKCJlb3NsIix7bXVubG9jazppWShXKT8uaW5mby5nYSgpfSksJGMobixXPT09bi5hdWRpb1RyYWNrKSl9OwpOM0M9ZnVuY3Rpb24obil7aWYodGRqKG4udmlkZW9UcmFjaykpcmV0dXJuInNzZiI7aWYobi5wb2xpY3kubnUmJmlZKG4udmlkZW9UcmFjayk/LmlzTG9ja2VkJiZpWShuLmF1ZGlvVHJhY2spPy5pc0xvY2tlZClyZXR1cm4idXBkYXRlRW5kIjtpZihpUyhuLmF1ZGlvVHJhY2spfHxpUyhuLnZpZGVvVHJhY2spJiZuLnZpZGVvVHJhY2suUEouaW5mby5JQiE9PSJmIilyZXR1cm4iIjtpZihuLlhhLmlzU2Vla2luZygpKXt2YXIgVz1uLklnO3ZhciBEPW4udmlkZW9UcmFjazt2YXIgYj1uLmF1ZGlvVHJhY2s7aWYoVy5wb2xpY3kuTil7dmFyIHY9Vy5wb2xpY3kuV2M7ZHUoVy5wb2xpY3kpJiYodj1wdihXLCExLE5XKFcpKSk7Vz12O0Q9Yi56cyghMCk+PVcmJkQuenMoITApPj1XfWVsc2UgRC5KLmxlbmd0aHx8Yi5KLmxlbmd0aD8odj1ELlBKLmluZm8uTnMrYi5QSi5pbmZvLk5zLHY9MTAqKDEtTlcoVykvdiksVz1NYXRoLm1heCh2LFcucG9saWN5LldjKSxEPWIuenMoITApPj1XJiZELnpzKCEwKT49ClcpOkQ9ITA7aWYoIUQpcmV0dXJuImFiciI7RD1uLnZpZGVvVHJhY2s7aWYoRC5KLmxlbmd0aD4wJiZELlcua2koKT09PTEmJkQuVy5XMigpLmluZm8uSzxELlZRKXJldHVybiJzZWVrIn1pZihuLnBvbGljeS5VMSYmJFgxKG4udmlkZW9UcmFjayxuLkpDKSYmJFgxKG4uYXVkaW9UcmFjayxuLkpDKSlyZXR1cm4ic3NkYWkiO0Q9IW4ucG9saWN5LnRNfHxuLmdldEN1cnJlbnRUaW1lKCk8MTA7bi5wb2xpY3kuTnx8KEQ9RHx8bi52aWRlb1RyYWNrLlBKLmluZm8udmlkZW8ucXVhbGl0eU9yZGluYWw+MzYwKTtpZighbi5Pbnx8RClyZXR1cm4iIjtEPW4ucG9saWN5LnRNO2R1KG4ucG9saWN5KSYmKEQ9cHYobi5JZyxuLk9uLE5XKG4uSWcpKSk7RD1YMHQobi52aWRlb1RyYWNrLG4uZ2V0Q3VycmVudFRpbWUoKSxEKXx8WDB0KG4uYXVkaW9UcmFjayxuLmdldEN1cnJlbnRUaW1lKCksRCk7cmV0dXJuIGR1KG4ucG9saWN5KT9EPyJtYm5tIjoiIjoobi52aWRlb1RyYWNrLkoubGVuZ3RoPjB8fApuLmF1ZGlvVHJhY2suSi5sZW5ndGg+MHx8anEobi5OeSxuLnZpZGVvVHJhY2ssbi5hdWRpb1RyYWNrKXx8anEobi5OeSxuLmF1ZGlvVHJhY2ssbi52aWRlb1RyYWNrKSkmJkQ/Im5vcmQiOiIifTsKeGM9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9SSQoVyk7IXZ8fHYuYVp8fGJUKHYsYil8fChELmFib3J0KCksbi5wb2xpY3kuZkMmJlcuVj8uWSgpLFcuSz8uVigpKTtpZighRC5LcygpfHxWVCgpKXRyeXtuLnBvbGljeS5Kaz9ELm5hKGIuUEouaW5mby5jb250YWluZXJUeXBlLGIuUEouaW5mby5JQikmJkQuVm8oYi5QSi5pbmZvLmNvbnRhaW5lclR5cGUsYi5QSi5pbmZvLklCLGIuUEouaW5mby5taW1lVHlwZSk6RC5qbihiLlBKLmluZm8uY29udGFpbmVyVHlwZSxiLlBKLmluZm8ubWltZVR5cGUpfWNhdGNoKGspe3JldHVybiBnLkdxKGspLG4uVSgiY3RleHAiLHtuYW1lOmsubmFtZSxtc2c6ay5tZXNzYWdlfSksITF9ZWxzZSBiLlBKLmluZm8uY29udGFpbmVyVHlwZSE9PUQuS3MoKSYmbi5VKCJjdHUiLHtjdDpWVCgpLHByZXZfYzpELktzKCksY3Vycl9jOmIuUEouaW5mby5jb250YWluZXJUeXBlfSk7Yj1iLlBKLlY7bi5wb2xpY3kuRFQmJmImJihXPTArYi5kdXJhdGlvbixiPS1iLk4sCjA9PT1ELk1yKCkmJlc9PT1ELktGKCl8fEQuZTcoMCxXKSxiIT09RC5TVygpJiYoRC55TyhiKSxzNCYmbi5hdWRpb1RyYWNrLlcuQlcoRC5pdygpKSkpO3JldHVybiEwfTsKTEM9ZnVuY3Rpb24obixXLEQsYil7Yi5pbmZvLlBKLk4oKTt2YXIgdj1iLmluZm8uUEouSjtpZighdnx8IUQuam8oKXx8RC5EOSgpPT09dilyZXR1cm4hMTt2YXIgaz12LGg9RC5MRigpO2lmKG4ucG9saWN5LktvJiZoJiZELmlzVmlldygpJiZnLlJCKGIuaW5mby5QSi5pbmZvKSl7bGV0IEw9bmV3IERhdGFWaWV3KHYuYnVmZmVyLHYuYnl0ZU9mZnNldCx2LmJ5dGVMZW5ndGgpOyhoPVBJQyhMLGgpKT9rPW5ldyBVaW50OEFycmF5KGguYnVmZmVyLGguYnl0ZU9mZnNldCxoLmJ5dGVMZW5ndGgpOm4uVSgiZmVuYyIse30pfW4ucG9saWN5LmtwJiYoaD1LVGkobixiLG5ldyBTNShba10pKSkmJihrPXRSKGgpKTt2YXIgeDsoaD1iLmluZm8uUEouWSgwLGIuaW5mby5jbGlwSWQpKSYmKHg9aC5Bd1swXSk7aWYoYj09PW4uaDcpe2lmKG4uQzErPTEsbi5MLmdldFZpZGVvRGF0YSgpLlMoImh0bWw1X3Nob3J0c19nYXBsZXNzX3Jlc3RhcnRfb25faW5pdF9zZWdfcmV0cmllcyIpJiZuLkMxPjUpcmV0dXJuIG4uQzE9CjAsbi5MLkdtKHtpbml0U2VnU3R1Y2s6MSxhczpiLmluZm8uZ2EoKX0pLCEwfWVsc2Ugbi5DMT0wLG4uaDc9YjtuLnBvbGljeS54aiYmKEQuYWJvcnQoKSxXLks/LlYoKSk7bi5BYiYmRC5pUSgpJiYoRC5hYm9ydCgpLFcuSz8uVigpKTt2PU9QMihuLEQsayx4LHYpO1cuSz8uRCh2LHgpO2lmKHYhPT0wKXJldHVybiBuLnBvbGljeS5aTiYmQUoobi5MLmdldFZpZGVvRGF0YSgpKT8obi5MLm9BKCl8fHJTKG4sInNlcEluaXQiLHYsYi5pbmZvKSxQOVUobi5MLCJzaWUiKSk6clMobiwic2VwSW5pdCIsdixiLmluZm8pLCEwO2IuaW5mby5mWSgpPyhXPW4udGltaW5nLFcuVEN8fChXLlRDPSgwLGcuUikoKSxnLkVHKCJ2aXNfYSIsVy5UQyxXLnpSKSkpOihXPW4udGltaW5nLFcuVnx8KFcuVj0oMCxnLlIpKCksZy5FRygiYWlzX2EiLFcuVixXLnpSKSkpOyhiPWIuaW5mby5QSi5TVSkmJm4uTC5XbihuZXcgcnUoYi5rZXksYi50eXBlKSk7cmV0dXJuIEQueXUoKX07CnB6aD1mdW5jdGlvbihuLFcsRCl7aWYobi5wb2xpY3kubnUmJmlZKFcpPy5pc0xvY2tlZClyZXR1cm4hMTtpZihELkRjKCkpcmV0dXJuITA7aWYoIUQuam8oKSlyZXR1cm4hMTt2YXIgYj1pWShXKTtpZighYnx8Yi5pbmZvLnR5cGU9PT02KXJldHVybiExO2lmKG4ucG9saWN5LmllfHxuLkpDPy5PKFcsYi5pbmZvLmokKSluLkxvPTA7ZWxzZSByZXR1cm4gbi5YYS5pc1NlZWtpbmcoKSYmZy5BZyhuKSxuLkxvPW4uTG98fCgwLGcuUikoKSwhMTtpZigheGMobixXLEQsYi5pbmZvKSlyZXR1cm4hMTtpZihuLkt1LlcmJmIuaW5mby5OPT09MCl7dmFyIHY7aWYoRC5EOSgpPT1udWxsKXt2YXIgaz1JJChXKTtpZighKHY9IWt8fGsuUEohPT1iLmluZm8uUEopKXtiOmlmKHY9ay5PLGs9Yi5pbmZvLk8sdi5sZW5ndGghPT1rLmxlbmd0aCl2PSExO2Vsc2V7Zm9yKGxldCBoPTA7aDx2Lmxlbmd0aDtoKyspaWYoIXY0KHZbaF0sa1toXSkpe3Y9ITE7YnJlYWsgYn12PSEwfXY9IXZ9fWVsc2Ugdj1ELkQ5KCksCmIuaW5mby5QSi5TJCgpJiZETyhiKSxrPWIuaW5mby5QSi5KLHY9diE9PWsmJiF2NCh2LGspO3YmJihrPUkkKFcpLG4uVSgiaW5pdGNoZyIse2l0OmIuaW5mby5QSi5pbmZvLmlkLHNyOiEhayYmay5QSj09PWIuaW5mby5QSix0eTpiLmluZm8udHlwZSxzZWc6Yi5pbmZvLmokfSkpO2s9Zy5SQihiLmluZm8uUEouaW5mbyk7bi5wb2xpY3kubWgmJmsmJiF2JiYoZy5SQihiLmluZm8uUEouaW5mbyk/KEdqKGcuV1IoYiksMTgzNjAxOTU3NCksR2ooZy5XUihiKSwxNzE4OTA5Mjk2KSk6KHY9bmV3IHRZKGcuV1IoYikpLE9ZKHYpLHNZKHYsNTI0NTMxMzE3LCEwKSxiLko9Yi5KLnNwbGl0KHYuc3RhcnQrdi5wb3MpLlk5KSxiLlY9ITEpfWs9bi5RdSYmISFuLlF1LlgmJlcuUEouaW5mby5hdWRpbzt2PW4uS3UuaXNNYW5pZmVzdGxlc3N8fGIuVjtpZighKG4uS3UuVyYmYi5pbmZvLk4hPT0wfHx2JiYhaykmJkxDKG4sVyxELGIpKXJldHVybiEwO2lmKGspcmV0dXJuITE7az1PYihuLFcpO2s9bi5nZXRDdXJyZW50VGltZSgpKwprO2lmKGIuaW5mby5YPmspcmV0dXJuIG4ucG9saWN5Lk4mJihXPT09bi52aWRlb1RyYWNrP24uYzc9bi5jN3x8KDAsZy5SKSgpOm4uTno9bi5Oenx8KDAsZy5SKSgpKSwhMTtXPT09bi52aWRlb1RyYWNrP24uYzc9MDpuLk56PTA7bi5wb2xpY3kuVTUmJkQ9PT1uLm1lZGlhU291cmNlPy5OJiZuLk9MJiYoRC5mRigpPT09MD8obi5PTD0hMSxuLnBvbGljeS5VNT0hMSk6bi5HSj1ELmZGKCkpO2lmKCFaUGoobixELGIsVykpcmV0dXJuITE7bi5wb2xpY3kubnUmJmIuaW5mby5WKCk/KG4uTC5HKCkuV1goKSYmbi5VKCJlb3NsIix7bHM6Yi5pbmZvLmdhKCl9KSxiLmlzTG9ja2VkPSEwKTooVy5aJChiKSxQQzIobi5jVixiLmluZm8pKTt2JiYoVz1iLmluZm8uUEouU1UpJiZuLkwuV24obmV3IHJ1KFcua2V5LFcudHlwZSkpO3JldHVybiEwfTsKWlBqPWZ1bmN0aW9uKG4sVyxELGIpe2lmKG4uTC5HKCkuWnQoKS5OLlFRKFVCYikmJkQuaW5mby5OJiYhVy5pUSgpKXJldHVybiBuLlUoImRyb3BfY2h1bmsiLHtzcTpELmluZm8uaiQsc3Q6RC5pbmZvLlh9KSwhMDt2YXIgdj1uLnBvbGljeS5SYT8oMCxnLlIpKCk6MCxrPUQuViYmRC5pbmZvLlBKLkp8fHZvaWQgMCxoPUQuSjtELlYmJihoPUtUaShuLEQsaCl8fGgpO3ZhciB4PXRSKGgpO2g9bi5wb2xpY3kuUmE/KDAsZy5SKSgpOjA7Vz1PUDIobixXLHgsRC5pbmZvLGspO2IuSz8uWShELmluZm8sVyxoLXYsKDAsZy5SKSgpLWgpO24uQzE9MDtpZihXPT09MClyZXR1cm4gbi5aRCYmKG4uWkQ9ITEsbi5xTz0hMSksbi5hQT0wLCEwO2lmKFc9PT0yfHxXPT09NSlyZXR1cm4gclMobiwiY2hlY2tlZCIsVyxELmluZm8pLCExO2lmKFc9PT0xKXtpZighbi5aRClyZXR1cm4gbi5aRD0hMCwhMTtpZighbi5xTylyZXR1cm4gbi5xTz0hMCxuLkwuc2Vla1RvKG4uZ2V0Q3VycmVudFRpbWUoKSx7cWQ6InF1b3RhRXhjZWVkZWQiLApxYTohMH0pLCExO0QuaW5mby5mWSgpPyhiPW4ucG9saWN5LGIuZSQ9TWF0aC5mbG9vcihiLmUkKi44KSxiLk89TWF0aC5mbG9vcihiLk8qLjgpKTooYj1uLnBvbGljeSxiLnZKPU1hdGguZmxvb3IoYi52SiouOCksYi5PPU1hdGguZmxvb3IoYi5PKi44KSk7bi5wb2xpY3kuTj9XbChuLms2LEQuaW5mby5QSik6YXEobi5jVixELmluZm8uUEopfW4uTC5HbSh7cmVhdHRhY2hPbkFwcGVuZDpXfSk7cmV0dXJuITF9OwpLVGk9ZnVuY3Rpb24obixXLEQpe3ZhciBiO2lmKGI9bi5wb2xpY3kua3AmJm4ubWVkaWFTb3VyY2UmJiFuLm1lZGlhU291cmNlLk8mJiFuLkwuUHAoKSlXPVcuaW5mby5QSi5pbmZvLGI9Vy5xSCgpJiZXLlgoKSYmVy52aWRlbyYmVy52aWRlby53aWR0aDwzODQwJiZXLnZpZGVvLndpZHRoPlcudmlkZW8uaGVpZ2h0O2lmKGImJihuLm1lZGlhU291cmNlLk89ITAsZHkoJ3ZpZGVvL3dlYm07IGNvZGVjcz0idnAwOS4wMC41MC4wOC4wMS4wMS4wMS4wMS4wMCI7IHdpZHRoPTM4NDA7IGhlaWdodD0yMTYwJykpKXJldHVybiBEPUROMShEKSxuLnBvbGljeS5XJiZuLlUoInNwNGsiLHtzOiEhRH0pLER9OwpPUDI9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1uLkFifHxuLm1lZGlhU291cmNlO3RyeXtsZXQgaD1XPT09ay5OP24uYXVkaW9UcmFjazpuLnZpZGVvVHJhY2s7aWYobi5wb2xpY3kubnUmJmI/LlYoKSl7aWYoYj8udHc+MSlyZXR1cm4gNjtoLmJkPW5ldyBnLmZfKCgpPT57dmFyIHg9aVkoaCk7bi5xTigpfHwheD8uaXNMb2NrZWQ/bi5MLkcoKS5XWCgpJiZuLlUoImVvc2wiLHtkZWxheUE6eD8uaW5mby5nYSgpfSk6bUJiKGgpPyhuLkwuRygpLldYKCkmJm4uVSgiZW9zbCIse2R1bmxvY2s6eD8uaW5mby5nYSgpfSksJGMobixoPT09bi5hdWRpb1RyYWNrKSk6KG4uVSgibnVlIix7bHM6eC5pbmZvLmdhKCl9KSx4LmluZm8udHcrPTEsbi5tZWRpYVNvdXJjZSYmWGIobikpfSwxRTQsbik7Cm4uTC5HKCkuV1goKSYmbi5VKCJlb3NsIix7ZGVsYXlTOmIuZ2EoKX0pO2guYmQuc3RhcnQoKX1uLnBvbGljeS5zMyYmYj8uUEogaW5zdGFuY2VvZiBkdCYmYi5WKCkmJm4uVSgicG9zZW9zIix7aXRhZzpiLlBKLmluZm8uaXRhZyxzZWc6Yi5qJCxsc2VnOmIuUEouaW5kZXgueCQoKSxlczpiLlBKLmluZGV4Lkt9KTtXLmFwcGVuZEJ1ZmZlcihELGIsdil9Y2F0Y2goaCl7aWYoaCBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbil7aWYoaC5uYW1lPT09IkludmFsaWRTdGF0ZUVycm9yInx8aC5jb2RlPT09MTEpcmV0dXJuIG4uTC5HKCkuV1goKSYmbi5VKCJhZWlzIix7bXNnOmcudXAoaC5tZXNzYWdlLDMpfSksMjtpZihoLm5hbWU9PT0iU3ludGF4RXJyb3IifHxoLmNvZGU9PT0xMilyZXR1cm4gNTtpZihoLm5hbWU9PT0iUXVvdGFFeGNlZWRlZEVycm9yInx8aC5jb2RlPT09MjJ8fGgubWVzc2FnZS5pbmRleE9mKCJOb3QgZW5vdWdoIHN0b3JhZ2UiKT09PTApcmV0dXJuIFc9T2JqZWN0LmFzc2lnbih7bmFtZToiUXVvdGFFeGNlZWRlZEVycm9yIiwKYnVmZmVyZWQ6cmsoVy5aRigpKS5yZXBsYWNlKC8sL2csIl8iKSx2aGVhcDpuLnZpZGVvVHJhY2suUnUoKSxhaGVhcDpuLmF1ZGlvVHJhY2suUnUoKSxtZXNzYWdlOmcudXAoaC5tZXNzYWdlLDMpLHRyYWNrOms/Vz09PWsuSj8idiI6ImEiOiJ1In0saFF4KCkpLG4uaGFuZGxlRXJyb3IoInBsYXllci5leGNlcHRpb24iLFcpLDE7Zy5YaihoKX1yZXR1cm4gNH1yZXR1cm4gay5QQSgpPzM6MH07CnJTPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PSJmbXQudW5wbGF5YWJsZSIsaz0xO0Q9PT01fHxEPT09Mz8odj0iZm10LnVucGFyc2VhYmxlIixuLnBvbGljeS5OPyFiLlBKLmluZm8udmlkZW98fHdDKG4uazYuTikuc2l6ZT4wfHxXbChuLms2LGIuUEopOiFiLlBKLmluZm8udmlkZW98fHdDKG4uY1Yuaikuc2l6ZT4wfHxhcShuLmNWLGIuUEopKTpEPT09MiYmKG4uYUE8MTU/KG4uYUErKyx2PSJodG1sNS5pbnZhbGlkc3RhdGUiLGs9MCk6dj0iZm10LnVucGxheWFibGUiKTtiPVh4KGIpO2IubXJzPW4ubWVkaWFTb3VyY2U/LlcoKTtiLm9yaWdpbj1XO2IucmVhc29uPUQ7Yi50cmc9ImFwcGVuZGVyciI7bi5oYW5kbGVFcnJvcih2LGIsayl9OwpOMj1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPW4uS3U7dmFyIGg9bi5wb2xpY3kuTix4PSExLEw9LTE7Zm9yKGxldCByIGluIGsuTil7dmFyIGU9ay5OW3JdLmluZm8uTigpfHxrLk5bcl0uaW5mby5mWSgpO2lmKGI9PT1lKWlmKGU9ay5OW3JdLmluZGV4LGUuTUkoVy5qJCkpe3t4PWU7dmFyIEc9VztsZXQgTj14LlcoRy5qJCk7TiYmTi5zdGFydFRpbWUhPT1HLnN0YXJ0VGltZT8oeC5zZWdtZW50cz1bXSx4LmooRykseD0hMCk6eD0hMX14P0w9Vy5qJDohVy5wZW5kaW5nJiZoJiYoRz1lLmdldER1cmF0aW9uKFcuaiQpLEchPT1XLmR1cmF0aW9uJiYoay5XSigiY2xpZW50dGVtcCIsIm1mbGR1clVwZGF0ZSIse2l0YWc6ay5OW3JdLmluZm8uaXRhZyxzZWc6Vy5qJCxvZDpHLG5kOlcuZHVyYXRpb259LCExKSxlLmooVykseD0hMCkpfWVsc2UgZS5qKFcpLHg9ITB9TD49MCYmay5XSigiY2xpZW50dGVtcCIsInJlc2V0TWZsSW5kZXgiLHtbYj8idiI6ImEiXTpMfSwhMSk7az14O0FhMihuLlhhLApXLGIsayk7bi5wb2xpY3kuRHx8bi5KQy5SMChXLEQsYix2KTtXLmokPT09bi5LdS5JdCYmayYmdUEobi5LdSkmJlcuc3RhcnRUaW1lPnVBKG4uS3UpJiYobi5LdS5KVT1XLnN0YXJ0VGltZSsoaXNOYU4obi50aW1lc3RhbXBPZmZzZXQpPzA6bi50aW1lc3RhbXBPZmZzZXQpLG4uWGEuaXNTZWVraW5nKCkmJm4uWGEudGFyZ2V0VGltZTxuLkt1LkxmKCkmJm4uWGEuc2VlayhuLkt1LkxmKCkse30pKX07CiRjPWZ1bmN0aW9uKG4sVyl7aWYobi5wb2xpY3kubnUmJm4ubWVkaWFTb3VyY2Upe3ZhciBEPVc/bi5tZWRpYVNvdXJjZT8uTjpuLm1lZGlhU291cmNlPy5KO2xldCBiPVc/bi5hdWRpb1RyYWNrOm4udmlkZW9UcmFjaztXPWlZKGIpO1c/LmlzTG9ja2VkJiYobi5MLkcoKS5XWCgpJiZuLlUoImVvc2wiLHt1bmxvY2s6Vy5pbmZvLmdhKCl9KSxiLmJkPy5zdG9wKCksVy5pc0xvY2tlZD0hMSxiLlokKFcpLFBDMihuLmNWLFcuaW5mbyksRD1EPy5aZygpLEQ/LmdhKCkhPT1XLmluZm8uZ2EoKSYmbi5VKCJvdWUiLHtibHM6RD8uZ2EoKSx0bHM6Vy5pbmZvLmdhKCl9KSl9fTsKU0paPWZ1bmN0aW9uKG4sVyl7cVcoVywiY21zIixEPT57bi5wb2xpY3kuVyYmbi5VKCJwYXRocHJvYmUiLEQpfSxEPT57bi5MLmhhbmRsZUVycm9yKEQpfSl9Owp5N2k9ZnVuY3Rpb24obixXKXtuLm1lZGlhU291cmNlJiZuLm1lZGlhU291cmNlLkomJihXLT1pc05hTihuLnRpbWVzdGFtcE9mZnNldCk/MDpuLnRpbWVzdGFtcE9mZnNldCxpc05hTihuLlE1KXx8bi5RNT09PVd8fG4ucmVzdW1lKCksbi5RNT1XKX07CkVPaD1mdW5jdGlvbihuLFcsRCxiKXtkaihuKSYmbi5ETyYmYiYmYj09PTk2JiYoYj1EP24uTC5sSyhXKTpXLG4uZnAoYil8fG4uRE8uTnx8bi5VKCJwcmVidWZmZXIiLHttaXNzOjEsdDpXLnRvRml4ZWQoMyksaXNVdGM6RH0pKX07CmlQUz1mdW5jdGlvbihuLFcpe3ZhciBEPVNxKG4udmlkZW9UcmFjaykuZmluZChiPT5iLnNlZ21lbnRTdGFydFRpbWU+PVcmJlh6aChuLGIuc2VnbWVudFN0YXJ0VGltZSwhMSkpOwpyZXR1cm4gRCYmRC5zZWdtZW50U3RhcnRUaW1lPFcrRC5XKjEuNT9ELnNlZ21lbnRTdGFydFRpbWUrLjE6MH07Cm1CYj1mdW5jdGlvbihuKXt2YXIgVz1pWShuKT8uaW5mbztyZXR1cm4hV3x8bi5mcChNYXRoLm1pbihXLlgrc1gsVy5qKSl9Owp1M3g9ZnVuY3Rpb24obil7aWYoIShuLmxlbmd0aDw9MjgpKWZvcih2YXIgVz0oMCxnLk5tKShbNjAsMCw3NSwwLDczLDAsNjgsMCw2MiwwXSksRD0yODtEPG4ubGVuZ3RoOyl7YTppZihuLmxlbmd0aC1EPFcubGVuZ3RoKXZhciBiPSExO2Vsc2V7Zm9yKGI9MDtiPFcubGVuZ3RoOysrYilpZihuW0QrYl0hPT1XW2JdKXtiPSExO2JyZWFrIGF9Yj0hMH1pZihiKXtEKz1XLmxlbmd0aDtpZihuLmxlbmd0aDw9RCs0OClicmVhaztXPW5ldyBVaW50OEFycmF5KDI0KTtmb3IoYj0wO2I8MjQ7KytiKVdbYl09bltEK2IqMl07bj1wUihXKTtuPWxwKG4pO2lmKCFuKWJyZWFrO0Q9blswXTtuWzBdPW5bM107blszXT1EO0Q9blsxXTtuWzFdPW5bMl07blsyXT1EO0Q9bls0XTtuWzRdPW5bNV07bls1XT1EO0Q9bls2XTtuWzZdPW5bN107bls3XT1EO3JldHVybiBufUQrK319OwpvT3g9ZnVuY3Rpb24obixXKXthOnt2YXIgRD1XLmNyeXB0b1BlcmlvZEluZGV4O2lmKGlzTmFOKEQpJiZuLlcuc2l6ZT4wKUQ9ITA7ZWxzZXtmb3IobGV0IGIgb2Ygbi5XLnZhbHVlcygpKWlmKGIuY3J5cHRvUGVyaW9kSW5kZXg9PT1EKXtEPSEwO2JyZWFrIGF9RD0hMX19bi5XSigibG9nX3FvZSIse3d2YWd0OiJyZXFuZXdzIixjYW5za2lwOkR9KTtEfHxuLldKKCJyb3RhdGVkX25lZWRfa2V5X2luZm9fcmVhZHkiLFcpfTsKZEJoPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlICJEUk1fVFJBQ0tfVFlQRV9BVURJTyI6cmV0dXJuIDE7Y2FzZSAiRFJNX1RSQUNLX1RZUEVfU0QiOnJldHVybiAyO2Nhc2UgIkRSTV9UUkFDS19UWVBFX0hEIjpyZXR1cm4gMztjYXNlICJEUk1fVFJBQ0tfVFlQRV9VSEQxIjpyZXR1cm4gNDtjYXNlICJEUk1fVFJBQ0tfVFlQRV9VSEQyIjpyZXR1cm4gNTtkZWZhdWx0OnJldHVybiAwfX07ClQzaD1mdW5jdGlvbihuLFc9ITEpe3ZhciBEPW4uc3RhdHVzPT09IkxJQ0VOU0VfU1RBVFVTX09LIj8wOjk5OTksYj1udWxsO2lmKG4ubGljZW5zZSl0cnl7Yj1scChuLmxpY2Vuc2UpfWNhdGNoKHYpe2cuWGoodil9aWYoRD09PTAmJiFiKXJldHVybiBudWxsO2I9bmV3IHpEWihELGIpO0QhPT0wJiZuLnJlYXNvbiYmKGIuZXJyb3JNZXNzYWdlPW4ucmVhc29uKTtpZihuLmF1dGhvcml6ZWRGb3JtYXRzKXtEPXt9O2xldCB2PVtdLGs9e307Zm9yKGxldCBoIG9mIG4uYXV0aG9yaXplZEZvcm1hdHMpe2lmKCFoLnRyYWNrVHlwZXx8IWgua2V5SWQpY29udGludWU7VyYmYi5KLnB1c2goe3RyYWNrVHlwZTpkQmgoaC50cmFja1R5cGUpLGlzSGRyOiEhaC5pc0hkcn0pO2xldCB4PWxtVVtoLnRyYWNrVHlwZV07aWYoeCl7eD09PSJIRCImJm4uaXNIZDcyMCYmKHg9IkhENzIwIik7aC5pc0hkciYmKHgrPSJIRFIiKTtEW3hdfHwodi5wdXNoKHgpLERbeF09ITApO2xldCBMPW51bGw7dHJ5e0w9bHAoaC5rZXlJZCl9Y2F0Y2goZSl7Zy5YaihlKX1MJiYKKGtbZy5FQShMLDQpXT14KX19Yi5XPXY7Yi5OPWt9bi5uZXh0RmFpcnBsYXlLZXlJZCYmKGIubmV4dEZhaXJwbGF5S2V5SWQ9bi5uZXh0RmFpcnBsYXlLZXlJZCk7bi5zYWJyTGljZW5zZUNvbnN0cmFpbnQmJihiLnNhYnJMaWNlbnNlQ29uc3RyYWludD1scChuLnNhYnJMaWNlbnNlQ29uc3RyYWludCkpO3JldHVybiBifTsKajdqPWZ1bmN0aW9uKG4sVyxEKXtuLm9uU3VjY2Vzcz1XO24ub25FcnJvcj1EfTsKQzl4PWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PXt0aW1lb3V0OjNFNCxvblN1Y2Nlc3M6az0+e2lmKCFuLnFOKCkpaWYoZy5hTCgiZHJtX25ldF9yIix2b2lkIDAsbi50aW1lciksaz1UM2goayxuLkopKW4ub25TdWNjZXNzKGssbi5yZXF1ZXN0TnVtYmVyKTtlbHNlIG4ub25FcnJvcihuLCJkcm0ubmV0IiwidC5wO3AuaSIpfSwKb25FcnJvcjprPT57aWYoIW4ucU4oKSlpZihrJiZrLmVycm9yKWs9ay5lcnJvcixuLm9uRXJyb3IobiwiZHJtLm5ldC5iYWRzdGF0dXMiLGB0LnI7cC5pO2MuJHtrLmNvZGV9O3MuJHtrLnN0YXR1c31gLGsuY29kZSk7ZWxzZSBuLm9uRXJyb3IobiwiZHJtLm5ldC5iYWRzdGF0dXMiLCJ0LnI7cC5pO2MubiIpfSwKb25UaW1lb3V0OigpPT57bi5vbkVycm9yKG4sImRybS5uZXQiLGBydC5yZXEuJHtuLnJlcXVlc3ROdW1iZXJ9YCl9fTsKYiYmKHYuUDE9YEJlYXJlciAke2J9YCk7Zy5JSShELCJwbGF5ZXIvZ2V0X2RybV9saWNlbnNlIixXLHYpfTsKcEM9ZnVuY3Rpb24obixXLEQ9ITEpe2cuVEMoVyk7KER8fG4uQi5XWCgpKSYmbi5XSigiY3RtcCIsImRybWxvZyIsVyl9OwpCM3g9ZnVuY3Rpb24obil7dmFyIFc9bi5iYXNlVXJsO2hBaShXKXx8bi5lcnJvcigiZHJtLm5ldCIsMiwidC54Iik7aWYoIWcubGYoVywiZmV4cCIpKXtsZXQgRD1bIjIzODk4MzA3IiwiMjM5MTQwNjIiLCIyMzkxNjEwNiIsIjIzODgzMDk4Il0uZmlsdGVyKGI9Pm4uQi5leHBlcmltZW50cy5leHBlcmltZW50c1tiXSk7CkQubGVuZ3RoPjAmJihuLmouZmV4cD1ELmpvaW4oKSl9Zm9yKGxldCBEIG9mIE9iamVjdC5rZXlzKG4uaikpVz1LUzEoVyxELG4ualtEXSk7cmV0dXJuIFd9Owp3enI9ZnVuY3Rpb24obixXKXt2YXIgRD1udWxsO3RyeXtEPVcuY3JlYXRlU2Vzc2lvbihuLlksYj0+e3BDKG4se206Yn0pfSksRlR0KG4sRCl9Y2F0Y2goYil7Vz0idC5nIixiIGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uJiYoVys9YDtjLiR7Yi5jb2RlfWApLG4uV0ooImxpY2Vuc2VlcnJvciIsImRybS51bmF2YWlsYWJsZSIsMSxXLCJIVE1MNV9OT19BVkFJTEFCTEVfRk9STUFUU19GQUxMQkFDSyIpfXJldHVybiBEfTsKRlR0PWZ1bmN0aW9uKG4sVyl7TTliKFcsKEQsYik9PntSRGoobixELGIpfSwoRCxiLHYpPT57bi5xTigpfHwoYj12b2lkIDAsZy5YVihuLkopJiZnLkRmKG4uQikmJm4uQi5TKCJodG1sNV9lbmFibGVfc2FmYXJpX2ZhaXJwbGF5IikmJnY9PT0xMjEyNDMzMjMyJiYoYj0iRVJST1JfSERDUCIpLG4uZXJyb3IoImRybS5rZXllcnJvciIsMSxELGIpKX0sKCk9PntuLnFOKCl8fChwQyhuLHtvbmt5YWRkOjF9KSxuLmNKfHwobi5XSigic2Vzc2lvbnJlYWR5Iiksbi5jSj0hMCkpfSxEPT57bi5ZVihEKX0pfTsKUkRqPWZ1bmN0aW9uKG4sVyxEKXtpZighbi5xTigpKWlmKFcpe3BDKG4se29ua210eXA6RH0pO24uc3RhdHVzPSJrbSI7c3dpdGNoKEQpe2Nhc2UgImxpY2Vuc2UtcmVuZXdhbCI6Y2FzZSAibGljZW5zZS1yZXF1ZXN0IjpjYXNlICJsaWNlbnNlLXJlbGVhc2UiOmJyZWFrO2Nhc2UgImluZGl2aWR1YWxpemF0aW9uLXJlcXVlc3QiOlE3MihuLFcpO3JldHVybjtkZWZhdWx0Om4uV0ooImN0bXAiLCJtZXNzYWdlX3R5cGUiLHt0OkQsbDpXLmJ5dGVMZW5ndGh9KX1uLnR3fHwoZy5hTCgiZHJtX2drX2YiLHZvaWQgMCxuLnZpZGVvRGF0YS56Uiksbi50dz0hMCxuLldKKCJuZXdzZXNzaW9uIixuKSk7aWYoTE4obi5KKSYmKFc9VjlpKFcpLCFXKSlyZXR1cm47dmFyIGI9ITE7aWYobi5CLlp0KCkuTi5RUShZYykpdHJ5e2I9bWsoVyx3T1opLnR5cGU9PT00fWNhdGNoKHYpe3BDKG4se2NlcnRfY2hlY2tfZmFpbGVkOjF9LCEwKX1pZihiJiZuLmRoPy5jZXJ0aWZpY2F0ZSl7cEMobix7Y2VydF9jYWNoZV9oaXQ6MX0sCiEwKTsrK24ucmVxdWVzdE51bWJlcjtsZXQgdj1uLmRoLmNlcnRpZmljYXRlO1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PntjN3IobixuZXcgekRaKDAsdiksYil9KX1lbHNlIFc9bmV3IGFtcihXLCsrbi5yZXF1ZXN0TnVtYmVyLG4udmlkZW9EYXRhLnpSLG4uQi5TKCJodG1sNV9lbmFibGVfdnA5X2ZhaXJwbGF5IikpLGo3aihXLHY9PntjN3Iobix2LGIpfSwodixrLGgpPT57aWYoIW4ucU4oKSl7dmFyIHg9MDsKdi5OLko+PTMmJih4PTEsaz0iZHJtLm5ldC5yZXRyeWV4aGF1c3RlZCIpO3BDKG4se29ubGNzcnFlcnI6ayxpbmZvOmh9KTtuLmVycm9yKGsseCxoKTtuLnNob3VsZFJldHJ5KGoyKHgpLHYpJiZuUXcobix2KX19KSxnLnUobixXKSxXZzIobixXKX1lbHNlIG4uZXJyb3IoImRybS51bmF2YWlsYWJsZSIsMSwia20uZW1wdHkiKX07ClE3Mj1mdW5jdGlvbihuLFcpe3BDKG4se3NkcHZycToxfSk7bi5WPXBlcmZvcm1hbmNlLm5vdygpO2lmKG4uSi5mbGF2b3IhPT0id2lkZXZpbmUiKW4uZXJyb3IoImRybS5wcm92aXNpb24iLDEsYGUuZmxhdm9yO2YuJHtuLkouZmxhdm9yfTtsLiR7Vy5ieXRlTGVuZ3RofWApO2Vsc2V7dmFyIEQ9e2NwbjpuLnZpZGVvRGF0YS5jbGllbnRQbGF5YmFja05vbmNlfTtPYmplY3QuYXNzaWduKEQsbi5CLk4pO0Q9Zy5FVCgiaHR0cHM6Ly93d3cuZ29vZ2xlYXBpcy5jb20vY2VydGlmaWNhdGVwcm92aXNpb25pbmcvdjEvZGV2aWNlY2VydGlmaWNhdGVzL2NyZWF0ZT9rZXk9QUl6YVN5Qi01T0xLVHgyaVU1bWtvMThEZmR3SzU2MTFKSWpiVWhFIixEKTtXPXtmb3JtYXQ6IlJBVyIsaGVhZGVyczp7ImNvbnRlbnQtdHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxtZXRob2Q6IlBPU1QiLHBvc3RCb2R5OkpTT04uc3RyaW5naWZ5KHtzaWduZWRSZXF1ZXN0OlN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCwKVyl9KSxyZXNwb25zZVR5cGU6ImFycmF5YnVmZmVyIn07Zy5zeihELFcsMyw1MDApLnRoZW4oWXooYj0+e2I9Yi54aHI7aWYoIW4ucU4oKSl7Yj1uZXcgVWludDhBcnJheShiLnJlc3BvbnNlKTt2YXIgdj1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsYik7dHJ5e3ZhciBrPUpTT04ucGFyc2Uodil9Y2F0Y2goaCl7fWsmJmsuc2lnbmVkUmVzcG9uc2U/KG4uV0ooImN0bXAiLCJkcm1pbmZvIix7cHJvdmlzaW9uaW5nOjF9KSxrPShwZXJmb3JtYW5jZS5ub3coKS1uLlYpLzFFMyxuLlY9TmFOLG4uV0ooImN0bXAiLCJwcm92cyIse2V0OmsudG9GaXhlZCgzKX0pLG4uWCYmbi5YLnVwZGF0ZShiKSk6KGs9ayYmay5lcnJvciYmay5lcnJvci5tZXNzYWdlLGI9ImUucGFyc2UiLGsmJihiKz1gO20uJHtrfWApLG4uZXJyb3IoImRybS5wcm92aXNpb24iLDEsYikpfX0pLFl6KGI9PntuLnFOKCl8fG4uZXJyb3IoImRybS5wcm92aXNpb24iLDEsYGUuJHtiLmVycm9yQ29kZX07Yy4ke2IueGhyJiYKYi54aHIuc3RhdHVzfWApfSkpfX07CmM3cj1mdW5jdGlvbihuLFcsRCl7bi5xTigpfHwoKHBDKG4se29ubGNzcnNwOjF9KSxuLnN0YXR1cz0icnIiLFcuc3RhdHVzQ29kZSE9PTApP24uZXJyb3IoImRybS5hdXRoIiwxLGB0LmY7Yy4ke1cuc3RhdHVzQ29kZX1gLFcuZXJyb3JNZXNzYWdlfHx2b2lkIDApOihEJiZuLmRoJiZuLkIuWnQoKS5OLlFRKFljKSYmKG4uZGguY2VydGlmaWNhdGU9Vy5tZXNzYWdlKSxnLmFMKCJkcm1fa3JfcyIsdm9pZCAwLG4udmlkZW9EYXRhLnpSKSxXLmhlYXJ0YmVhdFBhcmFtcyYmVy5oZWFydGJlYXRQYXJhbXMudXJsJiZuLnZpZGVvRGF0YS5TKCJvdXRlcnR1YmVfc3RyZWFtaW5nX2RhdGFfYWx3YXlzX3VzZV9zdGFnaW5nX2xpY2Vuc2Vfc2VydmljZSIpJiYoRD1uLkouVy5tYXRjaCgvKC4qKXlvdXR1YmUuY29tL2cpKSYmKFcuaGVhcnRiZWF0UGFyYW1zLnVybD1EWzBdK1cuaGVhcnRiZWF0UGFyYW1zLnVybCksVy5oZWFydGJlYXRQYXJhbXMmJm4uV0ooIm5ld2xpY2Vuc2UiLFcuaGVhcnRiZWF0UGFyYW1zKSwKVy5XJiYobi5XPVcuVyxuLnZpZGVvRGF0YS5hTXx8bi5XSigibmV3bGljZW5zZSIsbmV3IERiaiksbi52aWRlb0RhdGEuYU09ITAsbi5LPWcub00obi5XLGI9PmIuaW5jbHVkZXMoIkhEUiIpKSksVy5KJiYobi5EPVcuSiksVy5OJiYobi5CLlMoImh0bWw1X2VuYWJsZV92cDlfZmFpcnBsYXkiKSYmbi5KLk4oKT8oRD1nLkVBKHhLKG4uZmFpcnBsYXlLZXlJZCksNCksbi5OW0RdPXt0eXBlOlcuTltEXSwKc3RhdHVzOiJ1bmtub3duIn0pOm4uTj1XeChXLk4sYj0+KHt0eXBlOmIsc3RhdHVzOiJ1bmtub3duIn0pKSksZzEobi5KKSYmKFcubWVzc2FnZT1hMjIoZy5FQShXLm1lc3NhZ2UpKSksbi5YJiYocEMobix7dXBkdGtzOjF9KSxuLnN0YXR1cz0ia3UiLG4uWC51cGRhdGUoVy5tZXNzYWdlKS50aGVuKCgpPT57Zy5hTCgiZHJtX2tyX2YiLHZvaWQgMCxuLnZpZGVvRGF0YS56Uik7CkhyKG4pfHwocEMobix7a3NBcGlVbnN1cDoxfSksbi5XSigia2V5c3RhdHVzZXNjaGFuZ2UiLG4pKX0sYj0+e2I9YG1zdWYucmVxLiR7bi5yZXF1ZXN0TnVtYmVyfTttc2cuJHtnLnVwKGIubWVzc2FnZSwzKX1gOwpuLmVycm9yKCJkcm0ua2V5ZXJyb3IiLDEsYil9KSksZy5YVihuLkopJiZuLldKKCJmYWlycGxheV9uZXh0X25lZWRfa2V5X2luZm8iLG4uYmFzZVVybCxXLm5leHRGYWlycGxheUtleUlkKSxuLkIuUygiaHRtbDVfZW5hYmxlX3ZwOV9mYWlycGxheSIpJiZuLkouTigpJiZuLldKKCJxdWFsaXR5Y2hhbmdlIixibWgobi5XKSksVy5zYWJyTGljZW5zZUNvbnN0cmFpbnQmJm4uV0ooInNhYnJsaWNlbnNlY29uc3RyYWludCIsVy5zYWJyTGljZW5zZUNvbnN0cmFpbnQpKSl9OwpXZzI9ZnVuY3Rpb24obixXKXtuLnN0YXR1cz0ia20iO2cuYUwoImRybV9uZXRfcyIsdm9pZCAwLG4udmlkZW9EYXRhLnpSKTt2YXIgRD1uZXcgZy5kNChuLkIuU1YpLGI9e2NvbnRleHQ6Zy5VSihELmNvbmZpZ198fGcuUzkoKSl9O2IuZHJtU3lzdGVtPXZRQ1tuLkouZmxhdm9yXTtiLnZpZGVvSWQ9bi52aWRlb0RhdGEudmlkZW9JZDtiLmNwbj1uLnZpZGVvRGF0YS5jbGllbnRQbGF5YmFja05vbmNlO2Iuc2Vzc2lvbklkPW4uc2Vzc2lvbklkO2IubGljZW5zZVJlcXVlc3Q9Zy5FQShXLm1lc3NhZ2UpO2IuZHJtUGFyYW1zPW4udmlkZW9EYXRhLmRybVBhcmFtcztpc05hTihuLmNyeXB0b1BlcmlvZEluZGV4KXx8KGIuaXNLZXlSb3RhdGVkPSEwLGIuY3J5cHRvUGVyaW9kSW5kZXg9bi5jcnlwdG9QZXJpb2RJbmRleCk7dmFyIHY9ISFuLnZpZGVvRGF0YS5KPy5LKCk/LmlzSGRyKCk7Yi5kcm1WaWRlb0ZlYXR1cmU9dj8iRFJNX1ZJREVPX0ZFQVRVUkVfUFJFRkVSX0hEUiI6IkRSTV9WSURFT19GRUFUVVJFX1NEUiI7Cm4uQi5leHBlcmltZW50cy5adCgpLk4uUVEoa1RiKSYmKGIuY29udGV4dD1nLm9UKG4udmlkZW9EYXRhKSk7aWYoYi5jb250ZXh0JiZiLmNvbnRleHQuY2xpZW50KXtpZih2PW4uQi5OKWIuY29udGV4dC5jbGllbnQuZGV2aWNlTWFrZT12LmNicmFuZCxiLmNvbnRleHQuY2xpZW50LmRldmljZU1vZGVsPXYuY21vZGVsLGIuY29udGV4dC5jbGllbnQuYnJvd3Nlck5hbWU9di5jYnIsYi5jb250ZXh0LmNsaWVudC5icm93c2VyVmVyc2lvbj12LmNicnZlcixiLmNvbnRleHQuY2xpZW50Lm9zTmFtZT12LmNvcyxiLmNvbnRleHQuY2xpZW50Lm9zVmVyc2lvbj12LmNvc3ZlcjtuLkIuZXhwZXJpbWVudHMuWnQoKS5OLlFRKGtUYil8fChiLmNvbnRleHQudXNlcj1iLmNvbnRleHQudXNlcnx8e30sbi52aWRlb0RhdGEuRCYmKGIuY29udGV4dC51c2VyLmNyZWRlbnRpYWxUcmFuc2ZlclRva2Vucz1be3Rva2VuOm4udmlkZW9EYXRhLkQsc2NvcGU6IlZJREVPIn1dKSxuLnZpZGVvRGF0YS5ISiYmKGIuY29udGV4dC51c2VyLmtpZHNQYXJlbnQ9CntvYXV0aFRva2VuOm4udmlkZW9EYXRhLkhKfSkpO2IuY29udGV4dC5yZXF1ZXN0PWIuY29udGV4dC5yZXF1ZXN0fHx7fTtiLmNvbnRleHQucmVxdWVzdC5tZHhFbnZpcm9ubWVudD1uLnZpZGVvRGF0YS5tZHhFbnZpcm9ubWVudHx8Yi5jb250ZXh0LnJlcXVlc3QubWR4RW52aXJvbm1lbnQ7Zy5YVihuLkopJiYoYi5mYWlycGxheUtleUlkPWcuRUEoeEsobi5mYWlycGxheUtleUlkKSkpO2cuSEUobi5CLG4udmlkZW9EYXRhLlYoKSkudGhlbihrPT57Qzl4KFcsYixELGspO24uc3RhdHVzPSJycyJ9KX1lbHNlIG4uZXJyb3IoImRybS5uZXQiLDIsInQucjtpYy4wIil9OwpoOE09ZnVuY3Rpb24obixXLEQpe3ZhciBiPXt9O2IuaXNIZHI9Vy5pbmNsdWRlcygiSERSIik7c3dpdGNoKFcucmVwbGFjZSgiSERSIiwiIikucmVwbGFjZSgiNzIwIiwiIikpe2Nhc2UgIkFVRElPIjpiLnRyYWNrVHlwZT0xO2JyZWFrO2Nhc2UgIlNEIjpiLnRyYWNrVHlwZT0yO2JyZWFrO2Nhc2UgIkhEIjpiLnRyYWNrVHlwZT0zO2JyZWFrO2Nhc2UgIlVIRDEiOmIudHJhY2tUeXBlPTQ7YnJlYWs7Y2FzZSAiVUhEMiI6Yi50cmFja1R5cGU9NTticmVhaztkZWZhdWx0OmIudHJhY2tUeXBlPTB9IWIudHJhY2tUeXBlfHxEW1ddfHxIcihuKSYmIWZDKG4sVyl8fChuLmF1dGhvcml6ZWRGb3JtYXRzLnB1c2goYiksRFtXXT0hMCl9Owp4Ymo9ZnVuY3Rpb24obixXKXt2YXIgRD1bXTtmb3IobGV0IGIgb2YgT2JqZWN0LmtleXMobi5OKSlELnB1c2goYCR7Yn1fJHtuLk5bYl0udHlwZX1fJHtuLk5bYl0uc3RhdHVzfWApO3JldHVybiBELmpvaW4oVyl9OwpIcj1mdW5jdGlvbihuKXt2YXIgVztpZihXPW4uTyYmbi5YIT1udWxsKW49bi5YLFc9ISghbi5OfHwhbi5OLmtleVN0YXR1c2VzKTtyZXR1cm4gV307Cm5Rdz1mdW5jdGlvbihuLFcpe3ZhciBEPVcuTi5nZXRWYWx1ZSgpO0Q9bmV3IGcuZl8oKCk9PntXZzIobixXKX0sRCk7CmcudShuLEQpO0Quc3RhcnQoKTtnLnhFKFcuTik7cEMobix7cnR5cnE6MX0pfTsKSjI9ZnVuY3Rpb24obil7dmFyIFc9e307V1tuLnN0YXR1c109SHIobik/eGJqKG4sIi4iKTpuLlcuam9pbigiLiIpO3JldHVybiBXfTsKZkM9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgaW4gbi5OKWlmKG4uTltEXS5zdGF0dXM9PT0idXNhYmxlIiYmbi5OW0RdLnR5cGU9PT1XKXJldHVybiEwO3JldHVybiExfTsKTGd3PWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIGluIG4uTilpZihuLk5bRF0udHlwZT09PVcpcmV0dXJuIG4uTltEXS5zdGF0dXN9OwplOHc9ZnVuY3Rpb24obil7dmFyIFc9blswXTtuWzBdPW5bM107blszXT1XO1c9blsxXTtuWzFdPW5bMl07blsyXT1XO1c9bls0XTtuWzRdPW5bNV07bls1XT1XO1c9bls2XTtuWzZdPW5bN107bls3XT1XfTsKYm1oPWZ1bmN0aW9uKG4pe3JldHVybiBnLmpqKG4sIlVIRDIiKXx8Zy5qaihuLCJVSEQySERSIik/ImhpZ2hyZXMiOmcuamoobiwiVUhEMSIpfHxnLmpqKG4sIlVIRDFIRFIiKT8iaGQyMTYwIjpnLmpqKG4sIkhEIil8fGcuamoobiwiSERIRFIiKT8iaGQxMDgwIjpnLmpqKG4sIkhENzIwIil8fGcuamoobiwiSEQ3MjBIRFIiKT8iaGQ3MjAiOiJsYXJnZSJ9OwpWOWk9ZnVuY3Rpb24obil7dmFyIFc9IiI7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKz0yKVcrPVN0cmluZy5mcm9tQ2hhckNvZGUobltEXSk7bj1nLmdUKG5ldyBET01QYXJzZXIsZy5ITShXKSwidGV4dC94bWwiKTtpZighbilyZXR1cm4gbnVsbDsoVz1uLnF1ZXJ5U2VsZWN0b3IoIkNoYWxsZW5nZSIpKSYmVy5jaGlsZE5vZGVzJiZXLmNoaWxkTm9kZXMubGVuZ3RoIT09MD8obj1VaW50OEFycmF5LFc9emgoVy5jaGlsZE5vZGVzWzBdLm5vZGVWYWx1ZSksVz0oMCxnLk5tKShXKS5idWZmZXIsbj1uZXcgbihXKSk6bj1udWxsO3JldHVybiBufTsKTTliPWZ1bmN0aW9uKG4sVyxELGIsdil7bi5qPVc7bi5XPUQ7bi5WPWI7bi5LPXZ9OwpnUXc9ZnVuY3Rpb24obil7bi5OPyhuLlguTk4obi5OLCJtZXNzYWdlIixuLmJkKSxuLlguTk4obi5OLCJrZXlzdGF0dXNlc2NoYW5nZSIsbi5ZViksbi5OLmNsb3NlZCYmbi5OLmNsb3NlZC50aGVuKFl6KCgpPT57bi5xTigpfHxnLnViKCJ4Ym94b25lIikmJm4uVyYmbi5XKCJjbG9zZWRTaG91bGROb3RSZXRyeSIpfSksbnVsbCkpOm4uSiYmKEt5KG4uWCxuLkosWyJtc2tleW1lc3NhZ2UiLAoid2Via2l0a2V5bWVzc2FnZSJdLG4uY0opLEt5KG4uWCxuLkosWyJtc2tleWVycm9yIiwid2Via2l0a2V5ZXJyb3IiXSxuLk8pLEt5KG4uWCxuLkosWyJtc2tleWFkZGVkIiwid2Via2l0a2V5YWRkZWQiXSxuLkQpKX07ClhVUz1mdW5jdGlvbihuLFcsRCl7Zy5YaihEKTtuLlcmJihEIGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uJiYoVys9YDtuLiR7RC5uYW1lfTttLiR7RC5tZXNzYWdlfWApLG4uVyhXKSl9OwpxY1U9ZnVuY3Rpb24obil7S3kobi5YLG4uZWxlbWVudCxbImtleW1lc3NhZ2UiLCJ3ZWJraXRrZXltZXNzYWdlIl0sbi5PKTtLeShuLlgsbi5lbGVtZW50LFsia2V5ZXJyb3IiLCJ3ZWJraXRrZXllcnJvciJdLG4uRCk7S3kobi5YLG4uZWxlbWVudCxbImtleWFkZGVkIiwid2Via2l0a2V5YWRkZWQiXSxuLlkpfTsKR1RTPWZ1bmN0aW9uKG4sVz1udWxsKXtpZihuLk4ua2V5U3lzdGVtQWNjZXNzKXJldHVybiBuLks9bi5LLnRoZW4oKCk9Pm4ubWVkaWFLZXlzP1Byb21pc2UucmVzb2x2ZSgpOlc/Lm1lZGlhS2V5cyYmVy5ZYT8ucGcoKT8obi5tZWRpYUtleXM9Vz8ubWVkaWFLZXlzLFByb21pc2UucmVzb2x2ZSgpKTpuLk4ua2V5U3lzdGVtQWNjZXNzLmNyZWF0ZU1lZGlhS2V5cygpLnRoZW4oRD0+e24ucU4oKXx8KG4ubWVkaWFLZXlzPUQsVz8uWWE/LnBnKCkmJihXLm1lZGlhS2V5cz1EKSl9KSkudGhlbigoKT0+e3ZhciBEPVc/LmVfKCk7CnJldHVybiBuLmVsZW1lbnQmJm4uZWxlbWVudCE9PUQmJm4uZWxlbWVudC5tZWRpYUtleXM/bi5lbGVtZW50LnNldE1lZGlhS2V5cyhudWxsKTpQcm9taXNlLnJlc29sdmUoKX0pLnRoZW4oKCk9PntuLmVsZW1lbnQ9Vz8uZV8oKTsKcmV0dXJuIG4uZWxlbWVudCYmbi5lbGVtZW50Lm1lZGlhS2V5cyE9PW4ubWVkaWFLZXlzP24uZWxlbWVudC5zZXRNZWRpYUtleXMobi5tZWRpYUtleXMpOlByb21pc2UucmVzb2x2ZSgpfSksbi5LOwp4aChuLk4pP24uSj1uZXcgKHZYKCkpKG4uTi5rZXlTeXN0ZW0pOmVUKG4uTik/KG4uSj1uZXcgKHZYKCkpKG4uTi5rZXlTeXN0ZW0pLG4uZWxlbWVudD8ud2Via2l0U2V0TWVkaWFLZXlzKG4uSikpOnFjVShuKTtyZXR1cm4gbnVsbH07CnR3TT1mdW5jdGlvbihuLFcpe3ZhciBEPW5ldyBVaW50OEFycmF5KDI3MCk7Zm9yKGxldCBiPTA7YjwxMzU7YisrKURbYioyXT0nPFBsYXlSZWFkeUNETURhdGEgdHlwZT0iTGljZW5zZUFjcXVpc2l0aW9uIj48TGljZW5zZUFjcXVpc2l0aW9uIHZlcnNpb249IjEuMCIgUHJvYWN0aXZlPSJ0cnVlIj48L0xpY2Vuc2VBY3F1aXNpdGlvbj48L1BsYXlSZWFkeUNETURhdGE+Jy5jaGFyQ29kZUF0KGIpO249bi5KLmNyZWF0ZVNlc3Npb24oInZpZGVvL21wNCIsVyxEKTtyZXR1cm4gbmV3IEl1KG51bGwsbnVsbCxudWxsLG51bGwsbil9OwpySTE9ZnVuY3Rpb24obixXKXtXPSRiWihXLG4uTi5DaSk7Vz1uLkouY3JlYXRlU2Vzc2lvbigidmlkZW8vbXA0IixXKTtyZXR1cm4gbmV3IEl1KG51bGwsbnVsbCxudWxsLG51bGwsVyxuLlYpfTsKUzA9ZnVuY3Rpb24obixXKXt2YXIgRD1uLmpbVy5zZXNzaW9uSWRdOyFEJiZuLlcmJihEPW4uVyxuLlc9bnVsbCxELnNlc3Npb25JZD1XLnNlc3Npb25JZCxuLmpbVy5zZXNzaW9uSWRdPUQpO3JldHVybiBEfTsKJGJaPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5zdWJhcnJheSg0KTtEPW5ldyBVaW50MTZBcnJheShELmJ1ZmZlcixELmJ5dGVPZmZzZXQsRC5ieXRlTGVuZ3RoLzIpO0Q9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLEQpLm1hdGNoKC9laz0oWzAtOWEtZl0rKS8pWzFdO3ZhciBiPSIiO2Zvcih2YXIgdj0wO3Y8RC5sZW5ndGg7dis9MiliKz1TdHJpbmcuZnJvbUNoYXJDb2RlKHBhcnNlSW50KEQuc3Vic3RyaW5nKHYsdisyKSwxNikpO0Q9YjtiPW5ldyBBcnJheUJ1ZmZlcihELmxlbmd0aCoyKTt2PW5ldyBVaW50MTZBcnJheShiKTtmb3IodmFyIGs9MDtrPEQubGVuZ3RoO2srKyl2W2tdPUQuY2hhckNvZGVBdChrKTtEPW5ldyBVaW50OEFycmF5KGIpO2I9MDtrPW5ldyBBcnJheUJ1ZmZlcihuLmJ5dGVMZW5ndGgrNCtELmJ5dGVMZW5ndGgrNCtXLmJ5dGVMZW5ndGgpO3Y9bmV3IFVpbnQ4QXJyYXkoayk7az1uZXcgRGF0YVZpZXcoayk7di5zZXQobik7Yis9bi5ieXRlTGVuZ3RoOwprLnNldFVpbnQzMihiLEQubGVuZ3RoLCEwKTtiKz00O3Yuc2V0KEQsYik7Yis9RC5sZW5ndGg7ay5zZXRVaW50MzIoYixXLmJ5dGVMZW5ndGgsITApO3Yuc2V0KFcsYis0KTtyZXR1cm4gdn07Ck5vQz1mdW5jdGlvbihuKXt2YXIgVz1HVFMobi5tZWRpYUtleXMsbi5tZWRpYUVsZW1lbnQpO1c/Vy50aGVuKFl6KCgpPT57c0lNKG4pfSksWXooRD0+e2lmKCFuLnFOKCkpe2cuWGooRCk7CnZhciBiPSJ0LmEiO0QgaW5zdGFuY2VvZiBET01FeGNlcHRpb24mJihiKz0iO24uIitELm5hbWUrIjttLiIrRC5tZXNzYWdlKTtuLldKKCJsaWNlbnNlZXJyb3IiLCJkcm0udW5hdmFpbGFibGUiLDEsYiwiSFRNTDVfTk9fQVZBSUxBQkxFX0ZPUk1BVFNfRkFMTEJBQ0siKX19KSk6KG4uSih7bWRrcmR5OjF9KSxuLkQ9ITApOwpuLk8mJihXPUdUUyhuLk8sbi5tZWRpYUVsZW1lbnQpKX07CnNJTT1mdW5jdGlvbihuKXtpZighbi5xTigpKWlmKG4uQi5TKCJodG1sNV9kcm1fc2V0X3NlcnZlcl9jZXJ0Iil8fG4uTi5OKCkpe2xldCBXPW4ubWVkaWFLZXlzLnNldFNlcnZlckNlcnRpZmljYXRlKCk7Vz9XLnRoZW4oWXooRD0+e24uQi5XWCgpJiZuLldKKCJjdG1wIiwic3NjIix7c3VjY2VzczpEfSl9KSxZeihEPT57bi5XSigiY3RtcCIsInNzY2UiLHtuOkQubmFtZSwKbTpELm1lc3NhZ2V9KX0pKS50aGVuKFl6KCgpPT57QTIobil9KSk6QTIobil9ZWxzZSBBMihuKX07ClljMT1mdW5jdGlvbihuLFcsRCl7bi5QWD0hMDtEPW5ldyBydShXLEQpO24uQi5TKCJodG1sNV9lbWVfbG9hZGVyX3N5bmMiKSYmKG4uVi5nZXQoVyl8fG4uVi5zZXQoVyxEKSk7cFVqKG4sRCl9OwpwVWo9ZnVuY3Rpb24obixXKXtpZighbi5xTigpKXtuLkooe29uSW5pdERhdGE6MX0pO2lmKG4uQi5TKCJodG1sNV9lbWVfbG9hZGVyX3N5bmMiKSYmbi52aWRlb0RhdGEuVyYmbi52aWRlb0RhdGEuVy5OKCkpe3ZhciBEPW4uSy5nZXQoVy5pbml0RGF0YSk7Vz1uLlYuZ2V0KFcuaW5pdERhdGEpO2lmKCFEfHwhVylyZXR1cm47Vz1EO0Q9Vy5pbml0RGF0YTtuLlYucmVtb3ZlKEQpO24uSy5yZW1vdmUoRCl9bi5KKHtpbml0ZDpXLmluaXREYXRhLmxlbmd0aCxjdDpXLmNvbnRlbnRUeXBlfSk7aWYobi5OLmZsYXZvcj09PSJ3aWRldmluZSIpaWYobi5WUSYmIW4udmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrKW1uKG4pO2Vsc2V7aWYoIShuLkIuUygidnA5X2RybV9saXZlIikmJm4udmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrJiZXLnFIKSl7bi5WUT0hMDtEPVcuY3J5cHRvUGVyaW9kSW5kZXg7dmFyIGI9Vy5OO1Z2dChXKTtXLnFIfHwoYiYmVy5OIT09Yj9uLldKKCJjdG1wIiwiY3BzbW0iLHtlbXNnOmIsCnBzc2g6Vy5OfSk6RCYmVy5jcnlwdG9QZXJpb2RJbmRleCE9PUQmJm4uV0ooImN0bXAiLCJjcGltbSIse2Vtc2c6RCxwc3NoOlcuY3J5cHRvUGVyaW9kSW5kZXh9KSk7bi5XSigid2lkZXZpbmVfc2V0X25lZWRfa2V5X2luZm8iLFcpfX1lbHNlIG4uUyQoVyl9fTsKbW49ZnVuY3Rpb24obil7aWYobi5QWCYmbi5EJiYhbi5iZCl7Zm9yKDtuLlgubGVuZ3RoOyl7bGV0IFc9bi5YWzBdLEQ9SG1TKG4pP2NraihXKTpnLkVBKFcuaW5pdERhdGEpO2lmKG4uTi5OKCkmJiFXLlVXKW4uWC5zaGlmdCgpO2Vsc2V7aWYobi5XLmdldChEKSlpZihuLk4uZmxhdm9yIT09ImZhaXJwbGF5Inx8bi5OLk4oKSl7bi5YLnNoaWZ0KCk7Y29udGludWV9ZWxzZSBuLlcuZGVsZXRlKEQpO1Z2dChXKTticmVha319bi5YLmxlbmd0aCYmbi5jcmVhdGVTZXNzaW9uKG4uWFswXSl9fTsKQTI9ZnVuY3Rpb24obil7bi5xTigpfHwobi5EPSEwLG4uSih7b25tZGtyZHk6MX0pLG1uKG4pKX07CkhtUz1mdW5jdGlvbihuKXtyZXR1cm4gbi5OLmZsYXZvcj09PSJ3aWRldmluZSImJm4udmlkZW9EYXRhLlMoImh0bWw1X2RybV9jcGlfbGljZW5zZV9rZXkiKX07CmY1eD1hc3luYyBmdW5jdGlvbihuKXtpZihnLmQ4KCkmJm4ubWVkaWFLZXlzLm1lZGlhS2V5cz8uZ2V0TWV0cmljcyl7dmFyIFc9YXdhaXQgbi5tZWRpYUtleXMuZ2V0TWV0cmljcygpO1cmJigoMCxnLkc5KShXKXx8KFc9Zy5IRyhXKSksL15bQS1aYS16MC05Xy1dKz17MCwzfSQvLnRlc3QoVyl8fChXPWcudXAoVyx2b2lkIDAsITApKSxuLldKKCJjdG1wIiwiZHJtIix7bWV0cmljczpXfSkpfX07CkpJYj1mdW5jdGlvbihuLFcpe2lmKG4udmlkZW9EYXRhLlkpcmV0dXJuITE7bi55US5udSs9MTtpZihuLnlRLm51PD0xMClyZXR1cm4hMTtXLmV4aWxlZD1gJHtuLnlRLm51fWA7bi5HcygicW9lLnN0YXJ0MTVzIixXKTtuLkwuV0ooInBsYXliYWNrc3RhbGxlZGF0c3RhcnQiKTtyZXR1cm4hMH07Ckk1Mj1mdW5jdGlvbihuKXtpZighbi5KKXtuLko9ITA7dmFyIFc9bi5MLmdldFBsYXllclN0YXRlKCk7Vz1XLmlzUGF1c2VkKCl8fFcuaXNTdXNwZW5kZWQoKTtuLkwub0ooKTtXJiYhT1Mobi52aWRlb0RhdGEpfHxuLkwuV0ooInNpZ25hdHVyZWV4cGlyZWQiKX19OwpLQz1mdW5jdGlvbihuLFcsRCl7dmFyIGI9bi52aWRlb0RhdGEuSix2PW4udmlkZW9EYXRhLlgsaz1uLnlRLlMoImh0bWw1X2Rpc2FibGVfY29kZWNfZmFsbGJhY2tfZm9yX2RybSIpJiZuLnZpZGVvRGF0YS5NaSgpO0FKKG4uTC5nZXRWaWRlb0RhdGEoKSkmJlA5VShuLkwsInBlIik7bi55US5adCgpLk4uUVEoU2N0KSYmKEQuYmtnPW4uTC5YTygpLmlzQmFja2dyb3VuZCgpPyIxIjoiMCIpO2lmKChXPT09InByb2dyZXNzaXZlLm5ldC5yZXRyeWV4aGF1c3RlZCJ8fFc9PT0iZm10LnVucGxheWFibGUifHxXPT09ImZtdC5kZWNvZGUiKSYmIW4uTC5oVS5qJiZiJiZiLml0YWc9PT0iMjIiKXJldHVybiBuLkwuaFUuaj0hMCxuLkdzKCJxb2UucmVzdGFydCIse3JlYXNvbjoiZm10LnVucGxheWFibGUuMjIifSksbi5MLlZ2KCksITA7dmFyIGg9ITE7aWYobi52aWRlb0RhdGEuaXNFeHRlcm5hbGx5SG9zdGVkUG9kY2FzdCl7aWYoaD1uLnZpZGVvRGF0YS5xdylELm1pbWVUeXBlPWgudHlwZSwKbi5VKCIzcHAiLHt1cmw6aC51cmx9KTtELm5zPSIzcHAiO24uTC5QVihXLDEsIlZJREVPX1VOQVZBSUxBQkxFIixnLlRDKChuZXcgZy5DaShXLEQsMSkpLmRldGFpbHMpKTtyZXR1cm4hMH12YXIgeD1uLmtzKzNFNDwoMCxnLlIpKCl8fG4uTi5pc0FjdGl2ZSgpO2lmKG4ueVEuUygiaHRtbDVfZW1wdHlfc3JjIikmJm4udmlkZW9EYXRhLmlzQWQoKSYmVz09PSJmbXQudW5wbGF5YWJsZSImJi9FbXB0eSBzcmMvLnRlc3QoYCR7RC5tc2d9YCkpcmV0dXJuIEQub3JpZ2luPSJlbXB0eXNyYyIsbi5HcygiYXV0aCIsRCksITA7dmFyIEw7aWYoTD0heClMPW4uTC5YTygpLEw9ISEoTC5CUCgpfHxMLmlzSW5saW5lKCl8fEwuaXNCYWNrZ3JvdW5kKCl8fEwuQW4oKXx8TC5qSSgpfHxMLlNJKCl8fEwuUTAoKSk7TCYmKEQubm9uZmc9InBhdXNlZCIseD0hMCxuLkwucGF1c2VWaWRlbygpKTtXIT09ImZtdC5kZWNvZGUiJiZXIT09ImZtdC51bnBsYXlhYmxlInx8IXY/LlYoKXx8KFNUKG4ueVEuVyx2LklCKSwKRC5hY2ZhbGxleHA9di5JQixoPXg9ITApOyF4JiZuLlc+MCYmKG4uTi5zdGFydCgpLHg9ITAsRC5kZWxheWVkPSIxIiwtLW4uVyk7dj1uLkwubG9hZGVyO3h8fCFiPy5NVygpJiYhYj8uWCgpfHxrfHwoU1Qobi55US5XLGIuSUIpLGg9eD0hMCxELmNmYWxsZXhwPWIuSUIpO2lmKCF4KXJldHVybiBKSWIobixEKTtrPSExO24uaj9uLmtzPSgwLGcuUikoKTprPW4uaj0hMDt4PW4udmlkZW9EYXRhO3guY0o/KHg9eC5jSi5qKCksTD1EYXRlLm5vdygpLzFFMysxODAwLHg9eDxMKTp4PSExO0QuZT1XO3gmJihELnN0YWxlcHJvZz0iMSIpO24uR3MoInFvZS5yZXN0YXJ0IixEKTtpZih4JiZuLlExKCkpcmV0dXJuIEk1MihuKSwhMDtpZighKCFnLnViKCJwaGlsaXBzIil8fFc9PT0iZm10LnVucGxheWFibGUiJiZ2JiZ2LkNIfHxuLnlRLk4uY3BsYXRmb3JtPT09IkdBTUVfQ09OU09MRSIpKXRyeXt3aW5kb3cuY2xvc2UoKX1jYXRjaHt9YiYmYi5NVygpJiYhbi55US5TKCJodG1sNV9hbGxvd19hdjFfcmV0cnlfaW5fc2Vzc2lvbiIpPwooaD1uLnlRLlcsaC5ZPSEwLGg9aC5OPSEwKTp2PyhXPW4ueVEuUygiaHRtbDVfZGlzYWJsZV9zdHVubmluZ19mb3Jfc2QiKSxEPW4udmlkZW9EYXRhLlcsRD1EPy52aWRlb0luZm9zPy5sZW5ndGg/RC52aWRlb0luZm9zW0QudmlkZW9JbmZvcy5sZW5ndGgtMV06bnVsbCxiPWImJkQmJmIudmlkZW8mJkQudmlkZW8mJmIudmlkZW8ucXVhbGl0eU9yZGluYWw9PT1ELnZpZGVvLnF1YWxpdHlPcmRpbmFsLGt8fFcmJmJ8fChiPShiPUkkKHYudmlkZW9UcmFjayl8fHYudmlkZW9UcmFjay5OKT9iLlBKOnYudmlkZW9UcmFjay5QSixiLkZGKz0xLHYucG9saWN5Lk4/V2wodi5rNixiLCEwKTphcSh2LmNWLGIsITApKSk6bi52aWRlb0RhdGEuY0omJm4udmlkZW9EYXRhLmNKLlgoKTtuLk4uaXNBY3RpdmUoKXx8bi5MLkJvKGgpO3JldHVybiEwfTsKQUlNPWZ1bmN0aW9uKG4sVyl7aWYoKG49bi5MLmg1KCkpJiYoVy5lcnJvckNvZGU9PT0iZm10LnVucGxheWFibGUifHxXLmVycm9yQ29kZT09PSJodG1sNS5pbnZhbGlkc3RhdGUiKSl7bGV0IEQ9bi5WRygpO1cuZGV0YWlscy5tZXJyPUQ/RC50b1N0cmluZygpOiIwIjtXLmRldGFpbHMubW1zZz1uLnM4KCl9fTsKbWJNPWZ1bmN0aW9uKG4pe3JldHVybiBuLmVycm9yQ29kZT09PSJuZXQuYmFkc3RhdHVzIiYmKG4uc2V2ZXJpdHk9PT0xfHwhIW4uZGV0YWlscy5mbXRfdW5hdil9OwpLZ3g9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi55US5TKCJodG1sNV91c2VfbmV0d29ya19lcnJvcl9jb2RlX2VudW1zIikmJlcuZGV0YWlscy5yYz09PTQwM3x8Vy5kZXRhaWxzLnJjPT09IjQwMyI/KG49Vy5lcnJvckNvZGUsbj09PSJuZXQuYmFkc3RhdHVzInx8bj09PSJtYW5pZmVzdC5uZXQucmV0cnlleGhhdXN0ZWQiKTohMX07Ck9YPWZ1bmN0aW9uKG4sVyxEKXt0cnl7Vz17ZGV0YWlsOmBwci4ke1d9YH0sZy54NihuLnlRKXx8bG8obi55USk9PT0iVFZIVE1MNV9GT1JfS0lEUyI/bi5MLlBWKCJxb2UucmVzdGFydCIsRD8xOjIsdm9pZCAwLGcuVEMoVyksIjciKToobi5HcygicW9lLnJlc3RhcnQiLFcpLHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKSl9Y2F0Y2h7fX07Ck9tMj1mdW5jdGlvbihuLFcpe2lmKCFLZ3gobixXKSYmIW4uSilyZXR1cm4hMTtXLmRldGFpbHMuc3RzPSIyMDY1NSI7aWYobi5RMSgpKXJldHVybiBqMihXLnNldmVyaXR5KSYmKFc9T2JqZWN0LmFzc2lnbih7ZTpXLmVycm9yQ29kZX0sVy5kZXRhaWxzKSxXPW5ldyBnLkNpKCJxb2UucmVzdGFydCIsVykpLG4uR3MoVy5lcnJvckNvZGUsVy5kZXRhaWxzKSxJNTIobiksITA7KDAsZy5SKSgpLW4ueVEuQ3U+NjA0OEU1JiZPWChuLCJzaWduYXR1cmUiLCEwKTtyZXR1cm4hMX07ClBNaj1mdW5jdGlvbihuKXtpZihuLnZpZGVvRGF0YS5lcnJvckRldGFpbD09PSI3IiYmZy5rNihuLnlRKSl7bGV0IFc9IW4udmlkZW9EYXRhLmlzSW5saW5lUGxheWJhY2tOb0FkO1cmJm4ueVEuVFErKztPWChuLCJpbm5lcnR1YmVfcGxheWVyX3JlbG9hZF9yZXF1aXJlZCIsVyYmbi55US5UUT4xKTtyZXR1cm4hMH1yZXR1cm4hMX07ClByPWZ1bmN0aW9uKG4sVz0iZm10Lm5vbmVhdmFpbGFibGUiKXt2YXIgRD1uLnlRLlc7RC5LPSExO0QuTj0hMDtuLkdzKCJxb2UucmVzdGFydCIse2U6VyxkZXRhaWw6ImhkciJ9KTtuLkwuQm8oITApfTsKWm1oPWZ1bmN0aW9uKG4pe2lmKG4uTC5YTygpLmlzSW5saW5lKCkpcmV0dXJuIFlaO249TGdbcDcoKV07cmV0dXJuIHZBKCJhdXRvIixuLCExLCJzIil9Owp5SXI9ZnVuY3Rpb24obixXKXt2YXIgRDthOmlmKChEPVcuTikmJkQudmlkZW9JbmZvcy5sZW5ndGgpe2Zvcih2YXIgYiBvZiBELnZpZGVvSW5mb3MpaWYoYi5qPy5zbW9vdGgpe0Q9Yi52aWRlby5xdWFsaXR5T3JkaW5hbDticmVhayBhfUQ9RC52aWRlb0luZm9zWzBdLnZpZGVvLnF1YWxpdHlPcmRpbmFsfWVsc2UgRD0wO2I9ITA7bi5CLlMoIndlYl9yZWxheF9hcm1fY2FwIikmJm5hdmlnYXRvci5KRiYmKGI9ITEpO2ImJihnLnViKCJhcm12NyIpfHxnLnViKCJhYXJjaDY0Iil8fGcudWIoImFuZHJvaWQiKSkmJiFnLms2KG4uQikmJlcuTi52aWRlb0luZm9zWzBdLlgoKSYmKEQ9TWF0aC5taW4oRCxORy5sYXJnZSkpO2I9Zy5kTShuLkIuZXhwZXJpbWVudHMsImh0bWw1X2NoaXBzZXRfc29mdF9jYXAiKTtiPjAmJihEPU1hdGgubWluKEQsYikpO2I9bi5CLncwKCkuTi5RUShVYlMpO2I+MCYmKEQ9TWF0aC5taW4oRCxiKSk7aWYoYj1nLmRNKG4uQi5leHBlcmltZW50cywiaHRtbDVfbWF4X3ZlcnRpY2FsX3Jlc29sdXRpb24iKSl7bGV0IGg9CjQzMjA7Zm9yKHZhciB2PTA7djxXLk4udmlkZW9JbmZvcy5sZW5ndGg7disrKXt2YXIgaz1XLk4udmlkZW9JbmZvc1t2XTtrLnZpZGVvLmhlaWdodD5iJiYoaD1NYXRoLm1pbihoLGsudmlkZW8ucXVhbGl0eU9yZGluYWwpKX1pZihoPDQzMjApe3Y9MDtmb3Ioaz0wO2s8Vy5OLnZpZGVvSW5mb3MubGVuZ3RoO2srKyl7bGV0IHg9Vy5OLnZpZGVvSW5mb3Nba10udmlkZW8ucXVhbGl0eU9yZGluYWw7eDxoJiYodj1NYXRoLm1heCh2LHgpKX12JiYoRD1NYXRoLm1pbih2LEQpKX1uLkwuVSgibXZyIix7aDpiLGNwOkR9KX1yZXR1cm4gbmV3IGIzKDAsRCwhMSwibyIpfTsKaW1yPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9NDMyMDshbi5CLmp8fGcuQ04obi5CKXx8bi5CLlMoImhsc19mb3Jfdm9kIil8fG4uQi5TKCJtd2ViX3JlbW92ZV8zNjBwX2NhcCIpfHwoRD1ORy5tZWRpdW0pO3ZhciBiPWcuZE0obi5CLmV4cGVyaW1lbnRzLCJodG1sNV9kZWZhdWx0X3F1YWxpdHlfY2FwIik7YiYmVy5OLk4oKSYmKG4uQi5TKCJodG1sNV9hbHdheXNfYXBwbHlfZGVmYXVsdF9xdWFsaXR5X2NhcCIpfHwhVy52aWRlb0RhdGEuaTUmJiFXLnZpZGVvRGF0YS5jb250ZW50UHJvdGVjdGlvbikmJihEPU1hdGgubWluKEQsYikpO2I9Zy5kTShuLkIuZXhwZXJpbWVudHMsImh0bWw1X3JhbmRvbV9wbGF5YmFja19jYXAiKTt2YXIgdj0vW2EtaF0kLztiJiZ2LnRlc3QoVy52aWRlb0RhdGEuY2xpZW50UGxheWJhY2tOb25jZSkmJihEPU1hdGgubWluKEQsYikpO2lmKHY9Yj1nLmRNKG4uQi5leHBlcmltZW50cywiaHRtbDVfaGZyX3F1YWxpdHlfY2FwIikpYTp7dj1XLk47aWYodi5OKCkpZm9yKHZhciBrIG9mIHYudmlkZW9JbmZvcylpZihrLnZpZGVvLkooKSl7dj0KITA7YnJlYWsgYX12PSExfXYmJihEPU1hdGgubWluKEQsYikpOyhrPWcuZE0obi5CLmV4cGVyaW1lbnRzLCJodG1sNV9saXZlX3F1YWxpdHlfY2FwIikpJiZXLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayYmKEQ9TWF0aC5taW4oRCxrKSk7RD1FUU0obixXLEQpO249Zy5kTShuLkIuZXhwZXJpbWVudHMsImh0bWw1X2J5dGVyYXRlX3NvZnRfY2FwIik7cmV0dXJuIG5ldyBiMygwLEQ9PT00MzIwPzA6RCwhMSwiZCIsbil9OwpaVj1mdW5jdGlvbihuLFcpe3ZhciBEPW4uTC5YTygpO3JldHVybiBELmlzSW5saW5lKCkmJiFXLnVuY2FwSW5saW5lUXVhbGl0eT9uZXcgYjMoMCw0ODAsITEsInYiKTpnLllOKFcpP1laOkQuaXNCYWNrZ3JvdW5kKCkmJmcudkkoKS8xRTM+NjAmJiFnLms2KG4uQik/bmV3IGIzKDAsMzYwLCExLCJ2Iik6WVp9OwpVWD1mdW5jdGlvbihuLFcsRCl7aWYobi5CLmV4cGVyaW1lbnRzLkVxKCJodG1sNV9kaXNhYmxlX2NsaWVudF9hdXRvbmF2X2NhcF9mb3Jfb25lc2llIikmJlcuaHEoKXx8Zy5rNihuLkIpJiYocDcoLTEpPj0xMDgwfHxXLm9zaWQpKXJldHVybiBZWjt2YXIgYj1nLmRNKG4uQi5leHBlcmltZW50cywiaHRtbDVfYXV0b25hdl9xdWFsaXR5X2NhcCIpLHY9Zy5kTShuLkIuZXhwZXJpbWVudHMsImh0bWw1X2F1dG9uYXZfY2FwX2lkbGVfc2VjcyIpO3JldHVybiBiJiZXLmlzQXV0b25hdiYmZy52SSgpLzFFMz52PyhEJiYoYj1FUU0obixELGIpKSxuZXcgYjMoMCxiLCExLCJlIikpOllafTsKeTM9ZnVuY3Rpb24obixXKXtpZighVy5OLk4oKSlyZXR1cm4gbi5qP25ldyBiMygwLDM2MCwhMSwiYiIpOllaO3ZhciBEPSExLGI9ITE7Zm9yKHZhciB2IG9mIFcuTi52aWRlb0luZm9zKXYuTVcoKT9EPSEwOmI9ITA7RD1EJiZiO2I9MDt2PWcuZE0obi5CLmV4cGVyaW1lbnRzLCJodG1sNV9wZXJmb3JtYW5jZV9jYXBfZmxvb3IiKTt2PW4uQi5qPzI0MDp2O2ZvcihsZXQgayBvZiBXLk4udmlkZW9JbmZvcyl7aWYoRCYmay5NVygpKWNvbnRpbnVlO1c9VkMoay5JQixrLnZpZGVvLmZwcyxuLlcpO2xldCBoPWsudmlkZW8ucXVhbGl0eU9yZGluYWw7aWYoTWF0aC5tYXgoVyx2KT49aCl7Yj1oO2JyZWFrfX1yZXR1cm4gbmV3IGIzKDAsYiwhMSwiYiIpfTsKaW09ZnVuY3Rpb24obixXKXt2YXIgRD1FWChuLFcuTj8udmlkZW9JbmZvcyksYj1uLkwuZ2V0UGxheWJhY2tSYXRlKCk7cmV0dXJuIGI+MSYmRD8obj1KeihuLkIuVyxXLk4udmlkZW9JbmZvcyxiKSxuZXcgYjMoMCxuLCEwLCJvIikpOm5ldyBiMygwLDAsITEsIm8iKX07CnVtPWZ1bmN0aW9uKG4sVyxEKXtnLms2KG4uQikmJihEPUQuY29tcG9zZShuLk1oKFcpKSk7cmV0dXJuIER9OwpFWD1mdW5jdGlvbihuLFcpe3JldHVybiBXJiZnLms2KG4uQik/Vy5zb21lKEQ9PkQudmlkZW8uSigpKTohMX07CkVRTT1mdW5jdGlvbihuLFcsRCl7aWYobi5TKCJodG1sNV9vcHRpbWFsaXR5X2RlZmF1bHRzX2Nob29zZXNfbmV4dF9oaWdoZXIiKSYmRClmb3Iobj1XLk4udmlkZW9JbmZvcyxXPTE7VzxuLmxlbmd0aDtXKyspaWYobltXXS52aWRlby5xdWFsaXR5T3JkaW5hbDxEKXJldHVybiBuW1ctMV0udmlkZW8ucXVhbGl0eU9yZGluYWw7cmV0dXJuIER9Owp1aWo9YXN5bmMgZnVuY3Rpb24obil7aWYoIW4uTi5OKCl8fHR5cGVvZiBuYXZpZ2F0b3IubWVkaWFDYXBhYmlsaXRpZXM/LmRlY29kaW5nSW5mbyE9PSJmdW5jdGlvbiIpcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO2F3YWl0IFByb21pc2UucmVzb2x2ZSgpO2ZvcihsZXQgVyBvZiBuLk4udmlkZW9JbmZvcylhd2FpdCBrM3IoVyl9OwpvUTI9ZnVuY3Rpb24obixXKXt2YXIgRD1XLklCLGI9Vy52aWRlby5mcHMsdj1XLnZpZGVvLnF1YWxpdHlPcmRpbmFsLTEsaz1uLlc7Vz1gJHtEfSR7Yj40OT8icDYwIjpiPjMyPyJwNDgiOiIifWA7RD1WQyhELGIsayk7dj4wJiYoRD1NYXRoLm1pbihELHYpKTshY0YuaGFzKFcpJiZKcygpLmluY2x1ZGVzKFcpPyhiPWY3KCksK2JbV10+MCYmKEQ9TWF0aC5taW4oK2JbV10sRCkpLGJbV10hPT1EJiYoYltXXT1ELGcuUEIoInl0LXBsYXllci1wZXJmb3JtYW5jZS1jYXAiLGIsMjU5MkUzKSkpOmNGLmhhcyhXKXx8az09bnVsbD8oYj1KcygpLnNsaWNlKCksYi5pbmNsdWRlcyhXKXx8KGIucHVzaChXKSxnLlBCKCJ5dC1wbGF5ZXItcGVyZm9ybWFuY2UtY2FwLWFjdGl2ZS1zZXQiLGIsMjU5MkUzKSksUUMuc2V0KFcsRCkpOihjRi5hZGQoVyksaz8uc2V0KFcsRCkpO24uTC5zVCgpfTsKZGJTPWZ1bmN0aW9uKCl7cmV0dXJuIFd4KGY3KCksbj0+YCR7bn1gKX07Cno4Mj1mdW5jdGlvbihuLFcsRCxiKXtpZighV3x8IUR8fCFXLnZpZGVvRGF0YS5KKXJldHVybiExO3ZhciB2PWcuZE0obi5CLmV4cGVyaW1lbnRzLCJodG1sNV9kZl9kb3duZ3JhZGVfdGhyZXNoIiksaz1uLlMoImh0bWw1X2xvZ19tZWRpYV9wZXJmX2luZm8iKTtpZighKCgwLGcuUikoKS1uLlg8NUUzPzA6a3x8dj4wKSlyZXR1cm4hMTt2YXIgaD0oKDAsZy5SKSgpLW4uWCkvMUUzO24uWD0oMCxnLlIpKCk7RD1ELmdldFZpZGVvUGxheWJhY2tRdWFsaXR5KCk7aWYoIUQpcmV0dXJuITE7dmFyIHg9RC5kcm9wcGVkVmlkZW9GcmFtZXMtbi5WLEw9RC50b3RhbFZpZGVvRnJhbWVzLW4udG90YWxGcmFtZXM7bi5WPUQuZHJvcHBlZFZpZGVvRnJhbWVzO24udG90YWxGcmFtZXM9RC50b3RhbFZpZGVvRnJhbWVzO3ZhciBlPUQuZGlzcGxheUNvbXBvc2l0ZWRWaWRlb0ZyYW1lcz09PTA/MDpELmRpc3BsYXlDb21wb3NpdGVkVmlkZW9GcmFtZXN8fC0xO2smJm4uQi5XWCgpJiZuLkwuVSgiZGRmIiwKe2RyOkQuZHJvcHBlZFZpZGVvRnJhbWVzLGRlOkQudG90YWxWaWRlb0ZyYW1lcyxjb21wOmV9KTtpZihiKXJldHVybiBuLk49MCwhMTtpZigoTC14KS9oPm4uWXx8IXZ8fGcuazYobi5CKSlyZXR1cm4hMTtuLk49KEw+NjA/eC9MOjApPnY/bi5OKzE6MDtpZihuLk4hPT0zKXJldHVybiExO29RMihuLFcudmlkZW9EYXRhLkopO24uTC5VKCJkZmQiLE9iamVjdC5hc3NpZ24oe2RyOkQuZHJvcHBlZFZpZGVvRnJhbWVzLGRlOkQudG90YWxWaWRlb0ZyYW1lc30sZGJTKCkpKTtyZXR1cm4hMH07Cmw1VT1mdW5jdGlvbihuLFcpe24uUygiaHRtbDVfbG9nX21lZGlhX3BlcmZfaW5mbyIpJiYobi5MLlUoInBlcmZkYiIsZGJTKCkpLG4uTC5VKCJzZXNzaW9ucGVyZmRiIixPYmplY3QuZnJvbUVudHJpZXMoUUMuZW50cmllcygpKSksbi5MLlUoInBsYXliYWNrcGVyZmRiIixPYmplY3QuZnJvbUVudHJpZXMobi5XLmVudHJpZXMoKSkpLG4uTC5VKCJod2MiLHtuY2g6bmF2aWdhdG9yLmhhcmR3YXJlQ29uY3VycmVuY3l9LCEwKSxXJiZuLkwuVSgibWNkYiIse2l0YWdzOlcuTi52aWRlb0luZm9zLmZpbHRlcihEPT5ELmo/LnNtb290aD09PSExKS5tYXAoRD0+RC5pdGFnKS5qb2luKCItIil9KSl9OwpiQT1mdW5jdGlvbihuLFcsRD0hMSl7bi5ZYT8uV1goKSYmbi5ZYS5VKCJybXMiLFcsRCl9OwpvdT1mdW5jdGlvbihuKXtuPW4uTygpO3JldHVybiBuLmxlbmd0aDwxP05hTjpuLmVuZChuLmxlbmd0aC0xKX07ClRvaT1mdW5jdGlvbihuLFcpe24uWGImJm4uWGIuZXF1YWxzKFcpfHwobi5YYiYmbi5YYi5kaXNwb3NlKCksbi5YYj1XKX07CmpJaj1mdW5jdGlvbihuKXshbi5XJiZjUigpJiYobi5qP24uai50aGVuKCgpPT5qSWoobikpOm4uWF8oKXx8KG4uVz1uLlV6KCkpKX07CkNNeD1mdW5jdGlvbihuLFcsRCl7bi5pc1BhdXNlZCgpfHxuLmdldEN1cnJlbnRUaW1lKCk+V3x8RD4xMHx8KG4ucGxheSgpLGcubiQoKCk9PntDTXgobixuLmdldEN1cnJlbnRUaW1lKCksRCsxKX0sNTAwKSl9OwpCb3Q9ZnVuY3Rpb24obixXKXtpZihuLlgoKT09PTB8fG4uaGFzRXJyb3IoKSlyZXR1cm4hMTt2YXIgRD1uLmdldEN1cnJlbnRUaW1lKCk+MDtyZXR1cm4gVz49MCYmKG49bi5PKCksbi5sZW5ndGh8fCFEKT9CUihuLFcpOkR9OwpkUz1mdW5jdGlvbihuKXtpZihuLlhfKCl8fG4uVEMoKSluLllhJiZuLllhLkNjKCJyc19zIiksZy5NTCYmbi5nZXRDdXJyZW50VGltZSgpPjAmJm4uc2Vla1RvKDApLG4uVlEoKSxuLmUkKCksbi5sb2FkKCksVG9pKG4sbnVsbCk7ZGVsZXRlIG4uan07CkZnYj1mdW5jdGlvbihuKXt2YXIgVz1uLkooKTtyZXR1cm4gTSQoVykmJm4uZ2V0RHVyYXRpb24oKT9XLmVuZChXLmxlbmd0aC0xKTowfTsKelg9ZnVuY3Rpb24obil7c3dpdGNoKG4uVkcoKSl7Y2FzZSAyOnJldHVybiJwcm9ncmVzc2l2ZS5uZXQucmV0cnlleGhhdXN0ZWQiO2Nhc2UgMzpyZXR1cm4gbj1uLnM4KCksbj8uaW5jbHVkZXMoIk1FRElBX0VSUl9DQVBBQklMSVRZX0NIQU5HRUQiKXx8d1VNJiZuPy5pbmNsdWRlcygiYXVkaW9fb3V0cHV0X2NoYW5nZSIpPyJjYXBhYmlsaXR5LmNoYW5nZWQiOiJmbXQuZGVjb2RlIjtjYXNlIDQ6cmV0dXJuImZtdC51bnBsYXlhYmxlIjtjYXNlIDU6cmV0dXJuImRybS51bmF2YWlsYWJsZSI7Y2FzZSAxRTM6cmV0dXJuImNhcGFiaWxpdHkuY2hhbmdlZCI7ZGVmYXVsdDpyZXR1cm4gbnVsbH19OwpNd2g9ZnVuY3Rpb24obil7dmFyIFc9bnVsbDtuWzRdJiYoVz1uWzRdLFc9e2Vycm9yQ29kZTpXWzVdLGVycm9yRGV0YWlsOldbNl0sZXJyb3JNZXNzYWdlOldbN10saHk6V1s4XSxUaDpXWzldLHdpOldbMTBdLEp4OldbMTFdLGNwbjpXWzEyXX0pO3JldHVybiBuZXcgZy5sbShuWzFdLFcsblsyXSxuWzNdKX07CmwxPWZ1bmN0aW9uKG4pe3JldHVybiBuLmlzUGxheWluZygpJiYhbi5OKDE2KSYmIW4uTigzMil9OwpUWD1mdW5jdGlvbihuKXtyZXR1cm4gbi5OKDEyOCk/LTE6bi5OKDIpPzA6bi5OKDIwNDgpPzM6bi5OKDY0KT8tMTpuLk4oMSkmJiFuLk4oMzIpPzM6bi5OKDgpPzE6bi5OKDQpPzI6LTF9OwpqMD1mdW5jdGlvbihuLFcsRCxiLHYpe2lmKCEoVz09PW4uc3RhdGUmJkQ9PT1uLmhPJiZiPT09bi5zZWVrU291cmNlJiZ2PT09bi5zdG9wcGFnZVJlYXNvbnx8VyE9PXZvaWQgMCYmKFcmMTI4JiYhRHx8VyYyJiZXJjE2KSkpe3ZhciBrO2lmKGs9VylrPVd8fG4uc3RhdGUsaz0hIShrJjE2fHxrJjMyKTtuPW5ldyBnLmxtKFcsRCxrP2I/YjpuLnNlZWtTb3VyY2U6bnVsbCx2KX1yZXR1cm4gbn07CkNDPWZ1bmN0aW9uKG4sVyxEPSExKXtyZXR1cm4gUjhDKG4sVy5nZXRDdXJyZW50VGltZSgpLCgwLGcuUikoKSxXLnpzKCksRCl9OwpCcj1mdW5jdGlvbihuLFcsRD1udWxsLGI9bnVsbCl7cmV0dXJuIGowKG4sbi5zdGF0ZXxXLG51bGwsRCxiKX07CkZiPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGowKG4sbi5zdGF0ZSZ+VyxudWxsLG51bGwsbnVsbCl9Owp3Uz1mdW5jdGlvbihuLFcsRCxiPW51bGwsdj1udWxsKXtyZXR1cm4gajAobiwobi5zdGF0ZXxXKSZ+RCxudWxsLGIsdil9OwpRSVM9ZnVuY3Rpb24obixXKXtyZXR1cm4gVy5zdGF0ZT09PW4uc3RhdGUmJlcuaE89PT1uLmhPfTsKVndNPWZ1bmN0aW9uKG4pe3N3aXRjaChuLkIucGxheWVyQ2FuYXJ5U3RhZ2U/LnRvTG93ZXJDYXNlKCkpe2Nhc2UgInhzbWFsbCI6cmV0dXJuIkhUTUw1X1BMQVlFUl9DQU5BUllfU1RBR0VfWFNNQUxMIjtjYXNlICJzbWFsbCI6cmV0dXJuIkhUTUw1X1BMQVlFUl9DQU5BUllfU1RBR0VfU01BTEwiO2Nhc2UgIm1lZGl1bSI6cmV0dXJuIkhUTUw1X1BMQVlFUl9DQU5BUllfU1RBR0VfTUVESVVNIjtjYXNlICJsYXJnZSI6cmV0dXJuIkhUTUw1X1BMQVlFUl9DQU5BUllfU1RBR0VfTEFSR0UiO2Nhc2UgInhsYXJnZSI6cmV0dXJuIkhUTUw1X1BMQVlFUl9DQU5BUllfU1RBR0VfWExBUkdFIjtkZWZhdWx0OnJldHVybiJIVE1MNV9QTEFZRVJfQ0FOQVJZX1NUQUdFX1VOU1BFQ0lGSUVEIn19OwpjSWo9ZnVuY3Rpb24obil7bi5OPj0wfHwobi5wcm92aWRlci5MLmdldFZpc2liaWxpdHlTdGF0ZSgpPT09Mz9uLlY9ITA6KG4uTj1nLlJrKG4ucHJvdmlkZXIpLG4uZGVsYXkuc3RhcnQoKSkpfTsKYTVyPWZ1bmN0aW9uKG4pe2lmKCEobi5KPDApKXt2YXIgVz1nLlJrKG4ucHJvdmlkZXIpLEQ9Vy1uLmo7bi5qPVc7bi5wbGF5ZXJTdGF0ZS5KKCk/bi5wbGF5VGltZVNlY3MrPUQ6bi5wbGF5ZXJTdGF0ZS5pc0J1ZmZlcmluZygpJiYhbi5wbGF5ZXJTdGF0ZS5OKDE2KSYmKG4ucmVidWZmZXJUaW1lU2Vjcys9RCl9fTsKUnU9ZnVuY3Rpb24obixXPSExKXtuLk4uWD1XO24uTi5zdGFydFRpbWU9bi5XO24uTi5lbmRUaW1lPW4uSjtuLmpWPy5sZW5ndGgmJihuLk4ualY9bi5qVik7bi5yWD8ubGVuZ3RoJiYobi5OLnJYPW4uclgpO1c9ITE7dmFyIEQ9Zy5VTShuLnNlZ21lbnRzKTtuLnNlZ21lbnRzLmxlbmd0aCYmIUQ/LlgmJkQ/LmlzRW1wdHkoKT8obi5zZWdtZW50c1tuLnNlZ21lbnRzLmxlbmd0aC0xXS5wcmV2aW91c2x5RW5kZWQmJihuLk4ucHJldmlvdXNseUVuZGVkPSEwKSxuLnNlZ21lbnRzW24uc2VnbWVudHMubGVuZ3RoLTFdPW4uTixXPSEwKTpuLnNlZ21lbnRzLmxlbmd0aCYmbi5OLmlzRW1wdHkoKSYmIW4uTi5YfHwobi5zZWdtZW50cy5wdXNoKG4uTiksVz0hMCk7Vz8obi5OLmVuZFRpbWU9PT0wJiYobi5wcmV2aW91c2x5RW5kZWQ9ITEpLG4uTi5yWD8ubGVuZ3RoJiZuLnByb3ZpZGVyLkwuVSgic2RhaSIse2F0dGFjaF9tZXRhOjEsc3Q6bi5OLnN0YXJ0VGltZSxldDpuLk4uZW5kVGltZSxzZWdfaWR4Om4uc2VnbWVudHMubGVuZ3RoLQoxfSkpOm4uTi5wcmV2aW91c2x5RW5kZWQmJihuLnByZXZpb3VzbHlFbmRlZD0hMCk7bi5WKz1uLkotbi5XO24uTj1NbShuLnByb3ZpZGVyKTtuLk4ucHJldmlvdXNseUVuZGVkPW4ucHJldmlvdXNseUVuZGVkO24ucHJvdmlkZXIuQi5adCgpLk4uUVEobm9yKSYmKG4uais9SlNPTi5zdHJpbmdpZnkobi5OKS5sZW5ndGgpO24ucHJldmlvdXNseUVuZGVkPSExO24uVz1uLko7cmV0dXJuIFc/Zy5VTShuLnNlZ21lbnRzKTp2b2lkIDB9OwpXM1o9ZnVuY3Rpb24obil7RHIobi5LKTtuLks9TmFOfTsKRGoyPWZ1bmN0aW9uKG4pe1czWihuKTtuLks9VzAoKCk9PntuLnVwZGF0ZSgpfSwxMDApOwpuLnJ6PWcuUmsobi5wcm92aWRlcik7bi5OPU1tKG4ucHJvdmlkZXIpfTsKYlh0PWZ1bmN0aW9uKG4sVyxEKXtELT1uLnJ6O3JldHVybiBXPT09bi5KJiZEPi41fTsKZy5RMz1mdW5jdGlvbihuLFcpe3ZhciBEPW4uc2VuZFZpc2l0b3JJZEhlYWRlcj9uLnZpc2l0b3JEYXRhOnZvaWQgMDtyZXR1cm4gZy5IRShuLkIsbi5hY2Nlc3NUb2tlbikudGhlbihiPT5qUihuLnVyaSxuLkIsbi5wYWdlSWQsRCxiLFcpKX07Cmcudm9qPWZ1bmN0aW9uKG4pe24uaW5kZXhPZigid2F0Y2h0aW1lIikhPT0tMSYmZy56VSgiZ2VsRGVidWdnaW5nRXZlbnQiLHt2c3MzZGVidWdnaW5nRXZlbnQ6e3ZzczJQaW5nOm59fSl9OwprcGk9ZnVuY3Rpb24obixXKXtuLmF0dGVzdGF0aW9uUmVzcG9uc2UmJmcuUTMobikudGhlbihEPT57RD1EfHx7fTtELm1ldGhvZD0iUE9TVCI7RC5wb3N0UGFyYW1zPXthdHI6bi5hdHRlc3RhdGlvblJlc3BvbnNlfTtuLlMkP24uVlE/Zy5IVSgpLnNlbmRBbmRXcml0ZShXLEQpOmcuSFUoKS5zZW5kVGhlbldyaXRlKFcsRCk6Zy5lZChXLEQpfSl9OwpoeWk9ZnVuY3Rpb24obil7dmFyIFc9e08zOltdfTtpZihnLm9NKG4uc2VnbWVudHMsRD0+ISFELmpWfHwhIUQuclgpKXtmb3IobGV0IEQgb2Ygbi5zZWdtZW50cylXLk8zLnB1c2goe2pWOkQualZ8fFtdLApyWDpELnJYfHxbXX0pO249Zy5saCh7Ykw6V30sUV8xKTtyZXR1cm4gZy5FQShuLDQpfX07CmJKPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGcuaV8oVyxuLkopLmpvaW4oIiwiKX07CnZ5TT1mdW5jdGlvbihuLFcpe2lmKFcmJm4uail7dmFyIEQ9bmV3IFNldChbInEiLCJmZWF0dXJlIiwibW9zIl0pLGI9bmV3IFNldCgiYXV0b3BsYXkgY2wgbGVuIGZleHAgZGVsYXkgZWwgbnMgYWRmb3JtYXQiLnNwbGl0KCIgIikpLHY9bmV3IFNldChbImFxaSIsImF1dG9uYXYiLCJsaXN0Iiwic3NydCIsInVwdCJdKTtuLmoubnM9PT0iM3BwIiYmKFcubnM9IjNwcCIpO2ZvcihsZXQgayBvZiBPYmplY3Qua2V5cyhuLmopKWIuaGFzKGspfHxELmhhcyhrKXx8di5oYXMoaykmJiFuLmpba118fChXW2tdPW4ualtrXSl9fTsKeGpqPWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlICJwbGF5aW5nIjpyZXR1cm4iUExBWUVSX1BMQVlCQUNLX1NUQVRFX1BMQVlJTkciO2Nhc2UgInBhdXNlZCI6cmV0dXJuIlBMQVlFUl9QTEFZQkFDS19TVEFURV9QQVVTRUQiO2Nhc2UgImJ1ZmZlcmluZyI6cmV0dXJuIlBMQVlFUl9QTEFZQkFDS19TVEFURV9CVUZGRVJJTkciO2Nhc2UgInNlZWtpbmciOnJldHVybiJQTEFZRVJfUExBWUJBQ0tfU1RBVEVfU0VFS0lORyI7Y2FzZSAiZW5kZWQiOnJldHVybiJQTEFZRVJfUExBWUJBQ0tfU1RBVEVfRU5ERUQiO2Nhc2UgImVycm9yIjpyZXR1cm4iUExBWUVSX1BMQVlCQUNLX1NUQVRFX0VSUk9SIjtjYXNlICJzdXNwZW5kZWQiOnJldHVybiJQTEFZRVJfUExBWUJBQ0tfU1RBVEVfU1VTUEVOREVEIjtjYXNlICJ1bnN0YXJ0ZWQiOnJldHVybiJQTEFZRVJfUExBWUJBQ0tfU1RBVEVfVU5TVEFSVEVEIjtkZWZhdWx0OnJldHVybiJQTEFZRVJfUExBWUJBQ0tfU1RBVEVfVU5LTk9XTiJ9fTsKTDN4PWZ1bmN0aW9uKG4pe3N3aXRjaChuKXtjYXNlIDE6cmV0dXJuIlZJU19NSU5JTUlaRUQiO2Nhc2UgMjpyZXR1cm4iVklTX0ZVTExTQ1JFRU4iO2Nhc2UgMzpyZXR1cm4iVklTX0JBQ0tHUk9VTkQiO2Nhc2UgNDpyZXR1cm4iVklTX0FJUlBMQVkiO2Nhc2UgNTpyZXR1cm4iVklTX0lOTElORSI7Y2FzZSA2OnJldHVybiJWSVNfVlIiO2Nhc2UgNzpyZXR1cm4iVklTX1BJQ1RVUkVfSU5fUElDVFVSRSI7Y2FzZSA4OnJldHVybiJWSVNfSU1NRVJTSVZFX1BSRVZJRVciO2Nhc2UgOTpyZXR1cm4iVklTX1NRVUVFWkVCQUNLIjtjYXNlIDEwOnJldHVybiJWSVNfVEhFQVRFUiI7Y2FzZSAzMTpyZXR1cm4iVklTX0lOVkFMSUQiO2RlZmF1bHQ6cmV0dXJuIlZJU19ERUZBVUxUIn19OwpleWo9ZnVuY3Rpb24obil7c3dpdGNoKG4pe2Nhc2UgMTpyZXR1cm4iQ09OTl9VTktOT1dOIjtjYXNlIDI6cmV0dXJuIkNPTk5fTk9ORSI7Y2FzZSAzOnJldHVybiJDT05OX1dJRkkiO2Nhc2UgNDpyZXR1cm4iQ09OTl9DRUxMVUxBUl8yRyI7Y2FzZSA1OnJldHVybiJDT05OX0NFTExVTEFSXzNHIjtjYXNlIDY6cmV0dXJuIkNPTk5fQ0VMTFVMQVJfNEciO2Nhc2UgNzpyZXR1cm4iQ09OTl9DRUxMVUxBUl9VTktOT1dOIjtjYXNlIDg6cmV0dXJuIkNPTk5fRElTQ08iO2Nhc2UgOTpyZXR1cm4iQ09OTl9DRUxMVUxBUl81RyI7Y2FzZSAxMDpyZXR1cm4iQ09OTl9XSUZJX01FVEVSRUQiO2Nhc2UgMTE6cmV0dXJuIkNPTk5fQ0VMTFVMQVJfNUdfU0EiO2Nhc2UgMTI6cmV0dXJuIkNPTk5fQ0VMTFVMQVJfNUdfTlNBIjtjYXNlIDMwOnJldHVybiJDT05OX1dJUkVEIjtjYXNlIDMxOnJldHVybiJDT05OX0lOVkFMSUQiO2RlZmF1bHQ6cmV0dXJuIkNPTk5fREVGQVVMVCJ9fTsKZy5jcj1mdW5jdGlvbihuLFcpe3ZhciBEPVYzKG4ucHJvdmlkZXIpO09iamVjdC5hc3NpZ24oRCx7c3RhdGU6bi5YfSk7Vz1uZXcgZ29oKG4ucHJvdmlkZXIudmlkZW9EYXRhLG4ucHJvdmlkZXIuQixXLEQpO1cuTj1uLnByb3ZpZGVyLkwub3QoKTtEPW4ucHJvdmlkZXIudmlkZW9EYXRhLmNsaWVudFBsYXliYWNrTm9uY2U7Vy5OPW4ucHJvdmlkZXIuTC5vaChEKTtuLnByb3ZpZGVyLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFja3x8KFcuZSQ9bi5wcm92aWRlci5MLmdldER1cmF0aW9uKEQpKTtuLnByb3ZpZGVyLnZpZGVvRGF0YS5OJiYoRD1uLnByb3ZpZGVyLnZpZGVvRGF0YS5OLmhDKFcuTikpJiYoVy5ZPUQtVy5OKTtEPW4ucHJvdmlkZXIuTC5TVygpO1cuTis9RDtXLlkhPW51bGwmJihXLlktPUQpO1cud2E9Zy5SayhuLnByb3ZpZGVyKTtXLnNlZ21lbnRzPVtNbShuLnByb3ZpZGVyKV07cmV0dXJuIFd9OwpYSVo9ZnVuY3Rpb24obil7dmFyIFc9bi5wcm92aWRlci52aWRlb0RhdGEubFEsRD1uLnByb3ZpZGVyLnZpZGVvRGF0YS5IWSxiPVsxMCtXLDEwLDEwLDQwK0QtVyw0MF0sdj1uLnByb3ZpZGVyLnZpZGVvRGF0YS5nZXRQbGF5ZXJSZXNwb25zZSgpPy5wbGF5YmFja1RyYWNraW5nLGs9dj8udmlkZW9zdGF0c1NjaGVkdWxlZEZsdXNoV2FsbHRpbWVTZWNvbmRzO3Y9dj8udmlkZW9zdGF0c0RlZmF1bHRGbHVzaEludGVydmFsU2Vjb25kcztpZighKGsmJmsubGVuZ3RoPjAmJnYpKXJldHVybiBiO1c9W2tbMF0rVywuLi5rLnNsaWNlKDEpLm1hcCgoaCx4KT0+aC1rW3hdKSwKditELVcsdl07cmV0dXJuIFcuc29tZShoPT5oPDApPyhnLmNfKG4ubG9nZ2VyLDM0NzExMTg1NSxgTmVnIHZzcyBzY2hlZHVsZWQgcGluZ3MgJHtrfSAke3Z9YCksYik6V307CmF1PWZ1bmN0aW9uKG4sVz1OYU4pe3ZhciBEPWcuUmsobi5wcm92aWRlcik7Vz1pc05hTihXKT9EOlc7Vz1NYXRoLmNlaWwoVyk7dmFyIGI9bi5lJFtuLnR3XTtuLnR3KzE8bi5lJC5sZW5ndGgmJm4udHcrKzt2YXIgdj1XK2I7bi5ZPWcubiQoKCk9PntpZighbi5xTigpKXtuLlk9TmFOO3ZhciBrPW4uUyQoKSxoPXE5MShuLGspO2guTz12O3ZhciB4PW4ubnU+MUUzOyEoay5sZW5ndGg+MSkmJmtbMF0uaXNFbXB0eSgpfHx4fHwoaC5LPWF1KG4sdikpO2lmKG4uY0ope2s9a1trLmxlbmd0aC0xXTtpZih4PW4uVEMpe3g9azt2YXIgTD1uLlRDO3g9eC5zdGFydFRpbWU9PT1MLnN0YXJ0VGltZSYmeC5lbmRUaW1lPT09TC5lbmRUaW1lfXh8fG51KG4sW2tdKX1oLnNlbmQoKTtuLm51Kyt9fSwodi1EKSoxRTMpOwpyZXR1cm4gbi5KPXZ9OwpXZD1mdW5jdGlvbihuLFcpe3ZhciBEPW4ucHJvdmlkZXIuQjtnLkhFKG4ucHJvdmlkZXIuQixuLnByb3ZpZGVyLnZpZGVvRGF0YS5WKCkpLnRoZW4oYj0+e3ZhciB2PW4ucHJvdmlkZXIuQi5wYWdlSWQsaz1uLnByb3ZpZGVyLkIuc2VuZFZpc2l0b3JJZEhlYWRlcj9uLnByb3ZpZGVyLnZpZGVvRGF0YS52aXNpdG9yRGF0YTp2b2lkIDAsaD1uLnByb3ZpZGVyLkIuUygidnNzX3BpbmdzX3VzaW5nX25ldHdvcmtsZXNzIil8fG4ucHJvdmlkZXIuQi5TKCJrZXZsYXJfd29mZmxlIikseD1uLnByb3ZpZGVyLkIuUygiYWxsb3dfc2tpcF9uZXR3b3JrbGVzcyIpO2I9alIoVyxELHYsayxiKTtDRChXLGIse3Rva2VuOm4ucHJvdmlkZXIudmlkZW9EYXRhLmtXLHlvOm4ucHJvdmlkZXIudmlkZW9EYXRhLlF2LG1keEVudmlyb25tZW50Om4ucHJvdmlkZXIudmlkZW9EYXRhLm1keEVudmlyb25tZW50fSxELHZvaWQgMCxoJiYheCwhMSwhMCl9KX07CnE5MT1mdW5jdGlvbihuLFcpe3ZhciBEPWcuY3Iobiwid2F0Y2h0aW1lIik7RDcobikmJihELmRlbGF5VGhyZXNob2xkTWV0PSEwLG4uRHQ9ITApO2lmKG4uaj4wKXtsZXQgYj1uLnByb3ZpZGVyLkwuU1coKTtmb3IobGV0IHYgb2YgVyl2LnN0YXJ0VGltZS09bi5qK2Isdi5lbmRUaW1lLT1uLmorYjtELk4tPW4uaitifWVsc2UgRC5OPW4uTi5KO0Quc2VnbWVudHM9VztyZXR1cm4gRH07Cm51PWZ1bmN0aW9uKG4sVyxEPSExKXtmb3IobGV0IFt4LExdb2YgVy5lbnRyaWVzKCkpe2xldCBlPXgsRz1MO3ZhciBiPW4sdj1WMyhiLnByb3ZpZGVyKTtPYmplY3QuYXNzaWduKHYse3N0YXRlOmIuWH0pO09iamVjdC5hc3NpZ24odix7c2VxdWVuY2VJZDpiLnNlcXVlbmNlSWR9KTtiLnByb3ZpZGVyLkIuUygid2ViX3NlbmRfdnNzM19pc29sYXRlZF9wYXlsb2FkIikmJk9iamVjdC5hc3NpZ24odix7c2VuZElzb2xhdGVkUGF5bG9hZDohMH0pO3ZhciBrPWIsaD1rLnByb3ZpZGVyLnZpZGVvRGF0YS5nZXRQbGF5ZXJSZXNwb25zZSgpPy5wbGF5YmFja1RyYWNraW5nPy52c3MzQ29uZmlnPy52c3MzU2NoZWR1bGluZ0NvbmZpZztoJiYoaD1oLmVhcmx5U2VnbWVudFRocmVzaG9sZFNlY3MmJihEYXRlLm5vdygpLWsuR0MpLzFFMzxoLmVhcmx5U2VnbWVudFRocmVzaG9sZFNlY3M/aC5lYXJseVNlZ21lbnRNYXhpbXVtTGVuZ3RoU2VjczpoLmRlZmF1bHRTZWdtZW50TWF4aW11bUxlbmd0aFNlY3MsCkcuc2NoZWR1bGVkU2VnbWVudE1heGltdW1MZW5ndGhTZWNzPWsuVEM/Lm5leHRTY2hlZHVsZWRTZWdtZW50TWF4aW11bUxlbmd0aFNlY3M/P2gsRy5uZXh0U2NoZWR1bGVkU2VnbWVudE1heGltdW1MZW5ndGhTZWNzPWgpO2s9bmV3IEdwYihHLGIucHJvdmlkZXIudmlkZW9EYXRhLHYpO2IuSEomJihrLmlzRG91YmxlTG9nZ2VkPSExKTt2PWs7Yi5wcm92aWRlci52aWRlb0RhdGEuaXNMaXZlUGxheWJhY2t8fCh2Lm1lZGlhTGVuZ3RoU2VjPWIucHJvdmlkZXIuTC5nZXREdXJhdGlvbihiLnByb3ZpZGVyLnZpZGVvRGF0YS5jbGllbnRQbGF5YmFja05vbmNlKSk7aWYoYi5wcm92aWRlci52aWRlb0RhdGEuTil7aD1iLnByb3ZpZGVyLkwub3QoKTtsZXQgcj1iLnByb3ZpZGVyLnZpZGVvRGF0YS5OLmhDKGgpO3ImJih2LmxpdmVJbmdlc3Rpb25PZmZzZXRVc2VjPShyLWgpKjFFNil9RDcoYikmJih2LmRlbGF5VGhyZXNob2xkTWV0PSEwLGIuRHQ9ITApO0QmJmU9PT1XLmxlbmd0aC0xJiYoay5pc0ZpbmFsPQohMCxuLkZGPSEwKTtrLnNlbmQoKTtuLnNlcXVlbmNlSWQrKztuLlRDPUd9fTsKRDc9ZnVuY3Rpb24obil7dmFyIFc7aWYoVz1uLnByb3ZpZGVyLnZpZGVvRGF0YS5pc0xvYWRlZCgpJiZuLnByb3ZpZGVyLnZpZGVvRGF0YS5vRCYmbi5XJiYhbi5EdClXPW4uTixXPVcuVitXLm90KCktVy5XPj1uLnByb3ZpZGVyLnZpZGVvRGF0YS5vRDtyZXR1cm4hIVd9OwpiVj1mdW5jdGlvbihuLFcsRD0hMSl7RD1uLksoIWlzTmFOKG4uSiksITEsRCk7VyYmKG4uSj1OYU4pO3JldHVybiBEfTsKdFpNPWZ1bmN0aW9uKG4pe24ucHJvdmlkZXIudmlkZW9EYXRhLnlvdXR1YmVSZW1hcmtldGluZ1VybCYmIW4uQ3UmJihXZChuLG4ucHJvdmlkZXIudmlkZW9EYXRhLnlvdXR1YmVSZW1hcmtldGluZ1VybCksbi5DdT0hMCl9Owokalo9ZnVuY3Rpb24obil7bi5wcm92aWRlci52aWRlb0RhdGEuZ29vZ2xlUmVtYXJrZXRpbmdVcmwmJiFuLlBYJiYoV2QobixuLnByb3ZpZGVyLnZpZGVvRGF0YS5nb29nbGVSZW1hcmtldGluZ1VybCksbi5QWD0hMCl9Owp2ZD1mdW5jdGlvbihuKXtpZighbi5xTigpJiZuLlcpe24uWD0icGF1c2VkIjt2YXIgVz1iVihuLCExLCEwKTtXLmlzRmluYWw9ITA7Vy5zZW5kKCk7bi5kaXNwb3NlKCl9fTsKcnB0PWZ1bmN0aW9uKG4sVyxEKXtpZighbi52Sil7RHx8KEQ9Zy5jcihuLCJhdHIiKSk7RC5hdHRlc3RhdGlvblJlc3BvbnNlPVc7dHJ5e0Quc2VuZCgpfWNhdGNoKGIpe2lmKGIubWVzc2FnZSE9PSJVbmtub3duIEVycm9yIil0aHJvdyBiO31uLnZKPSEwfX07CmcuUms9ZnVuY3Rpb24obil7cmV0dXJuIGcuc2JyKG4pKCl9OwpjY1o9ZnVuY3Rpb24obil7dmFyIFc9bmF2aWdhdG9yLmNvbm5lY3Rpb24/LnR5cGV8fCIiO2lmKFcpcmV0dXJuIE5FcltXXXx8TkVyLm90aGVyO2lmKGcuazYobi5CKSl7bj1uYXZpZ2F0b3IudXNlckFnZW50O2lmKC9bV3ddaXJlbGVzc1spXS8udGVzdChuKSlyZXR1cm4gMztpZigvW1d3XWlyZWRbKV0vLnRlc3QobikpcmV0dXJuIDMwfXJldHVybiAwfTsKTW09ZnVuY3Rpb24obil7dmFyIFc9bmV3IHBJMjtXLko9VjMobikuY2M/LnRvU3RyaW5nKCl8fCItIjtXLnBsYXliYWNrUmF0ZT1uLkwuZ2V0UGxheWJhY2tSYXRlKCk7dmFyIEQ9bi5MLmdldFZpc2liaWxpdHlTdGF0ZSgpO0QhPT0wJiYoVy52aXNpYmlsaXR5U3RhdGU9RCk7bi5CLkR0JiYoVy5XPTEpO1cuaj1uLnZpZGVvRGF0YS5wUjtXLmNvbXBvc2l0ZUxpdmVTdGF0dXNUb2tlbj1uLnZpZGVvRGF0YS5jb21wb3NpdGVMaXZlU3RhdHVzVG9rZW47Vy5oZWFydGJlYXRMb2dnaW5nVG9rZW49bi52aWRlb0RhdGEuaGVhcnRiZWF0TG9nZ2luZ1Rva2VuO0Q9bi5MLmdldEF1ZGlvVHJhY2soKTtELmtaJiZELmtaLmlkJiZELmtaLmlkIT09InVuZCImJihXLmF1ZGlvSWQ9RC5rWi5pZCk7Vy5jb25uZWN0aW9uVHlwZT1jY1oobik7Vy52b2x1bWU9bi5MLmdldFZvbHVtZSgpO1cubXV0ZWQ9bi5MLmlzTXV0ZWQoKTtXLmNsaXBJZD1uLkwuRm4oKXx8Ii0iO1cuTj1uLnZpZGVvRGF0YS5WZnx8CiItIjtyZXR1cm4gV307ClYzPWZ1bmN0aW9uKG4pe3ZhciBXPW4uTC5oaCgpfHx7fTtXLmZzPW4uTC52MygpO1cudm9sdW1lPW4uTC5nZXRWb2x1bWUoKTtXLm11dGVkPW4uTC5pc011dGVkKCk/MTowO1cubW9zPVcubXV0ZWQ7Vy5jbGlwaWQ9bi5MLkZuKCk7Vy5wbGF5ZXJoZWlnaHQ9bi5MLmdldFBsYXllclNpemUoKT8uaGVpZ2h0fHwwO1cucGxheWVyd2lkdGg9bi5MLmdldFBsYXllclNpemUoKT8ud2lkdGh8fDA7bj1uLnZpZGVvRGF0YTt2YXIgRD17fTtuLkomJihELmZtdD1uLkouaXRhZyxuLlgmJihuLlZRP24uWC5pdGFnIT09bi5KLml0YWc6bi5YLml0YWchPW4uSi5pdGFnKSYmKEQuYWZtdD1uLlguaXRhZykpO0QuZWk9bi5ldmVudElkO0QubGlzdD1uLnBsYXlsaXN0SWQ7RC5jcG49bi5jbGllbnRQbGF5YmFja05vbmNlO24udmlkZW9JZCYmKEQudj1uLnZpZGVvSWQpO24ueWwmJihELmluZnJpbmdlPTEpOyhuLmZCPzA6bi5QWCkmJihELnNwbGF5PTEpO3ZhciBiPXJsKG4pO2ImJihELmxpdmU9Yik7bi5WVCYmCihELnNhdXRvcGxheT0xKTtuLkd1JiYoRC5hdXRvcGxheT0xKTtuLnd1JiYoRC5zZGV0YWlsPW4ud3UpO24ucGFydG5lcklkJiYoRC5wYXJ0bmVyaWQ9bi5wYXJ0bmVySWQpO24ub3NpZCYmKEQub3NpZD1uLm9zaWQpO24uWm0mJihELmNjPWcubmcobi5abSkpO3JldHVybiBPYmplY3QuYXNzaWduKFcsRCl9OwpnLnNicj1mdW5jdGlvbihuKXtpZighbi5OKXtsZXQgVz0oMCxnLlIpKCk7bi5OPSgpPT5NYXRoLnJvdW5kKCgwLGcuUikoKS1XKS8xRTM7Cm4uTC5RYigpfXJldHVybiBuLk59OwpnLmswPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4uc3RhdGUuTihXKSYmIW4ub2xkU3RhdGUuTihXKT8xOiFuLnN0YXRlLk4oVykmJm4ub2xkU3RhdGUuTihXKT8tMTowfTsKaEM9ZnVuY3Rpb24obil7bi5KJiZjSWoobi5KKTtuLnFvZSYmeEJoKG4ucW9lKX07CkhYMj1mdW5jdGlvbihuLFcsRCxiKXtELmFkRm9ybWF0PUQuRkY7dmFyIHY9Vy5MO1c9bmV3IGcueDAobmV3IFk5UyhELFcuQix7Z2V0RHVyYXRpb246KCk9PkQubGVuZ3RoU2Vjb25kcywKZ2V0Q3VycmVudFRpbWU6KCk9PnYuZ2V0Q3VycmVudFRpbWUoKSwKb3Q6KCk9PnYub3QoKSwKb2g6KCk9PnYub2goKSwKSEs6KCk9PnYuSEsoKSwKZ2V0UGxheWVyU2l6ZTooKT0+di5nZXRQbGF5ZXJTaXplKCksCmdldEF1ZGlvVHJhY2s6KCk9PkQuZ2V0QXVkaW9UcmFjaygpLApnZXRQbGF5YmFja1JhdGU6KCk9PnYuZ2V0UGxheWJhY2tSYXRlKCksCkVjOigpPT52LkVjKCksCmdldFZpc2liaWxpdHlTdGF0ZTooKT0+di5nZXRWaXNpYmlsaXR5U3RhdGUoKSwKZUc6KCk9PnYuZUcoKSwKaGg6KCk9PnYuaGgoKSwKZ2V0Vm9sdW1lOigpPT52LmdldFZvbHVtZSgpLAppc011dGVkOigpPT52LmlzTXV0ZWQoKSwKdjM6KCk9PnYudjMoKSwKRm46KCk9PnYuRm4oKSwKZ2V0UHJveGltYUxhdGVuY3lQcmVmZXJlbmNlOigpPT52LmdldFByb3hpbWFMYXRlbmN5UHJlZmVyZW5jZSgpLApRYigpe3YuUWIoKX0sVShrLGgpe3YuVShrLGgpfSxPMDooKT0+di5PMCgpLApTVzooKT0+di5TVygpLAp6czprPT52LnpzKGspfSkpOwpXLmo9YjtnLnUobixXKTtyZXR1cm4gV307CmZBdD1mdW5jdGlvbihuKXtuLkomJm4uSi5zZW5kKCk7aWYobi5xb2Upe3ZhciBXPW4ucW9lO2lmKFcuVil7Vy5OPT09IlBMIiYmKFcuTj0iTiIpO3ZhciBEPWcuUmsoVy5wcm92aWRlcik7Zy53aihXLEQsInZwcyIsW1cuTl0pO1cuRHx8KFcuWD49MCYmVy5KLnNldCgidXNlcl9pbnRlbnQiLFtXLlgudG9TdHJpbmcoKV0pLFcuRD0hMCk7Vy5wcm92aWRlci5CLldYKCkmJlcuVSgiZmluYWxpemVkIix7fSk7Vy5TJD0hMDtXLnJlcG9ydFN0YXRzKEQpfX1pZihuLnByb3ZpZGVyLnZpZGVvRGF0YS5lbmFibGVTZXJ2ZXJTdGl0Y2hlZERhaSlmb3IobGV0IGIgb2Ygbi5XLnZhbHVlcygpKXZkKGIpO2Vsc2Ugbi5OJiZ2ZChuLk4pO24uZGlzcG9zZSgpfTsKSnBVPWZ1bmN0aW9uKG4pe2lmKCFuLk4pcmV0dXJuIG51bGw7dmFyIFc9Zy5jcihuLk4sImF0ciIpO3JldHVybiBEPT57bi5OJiZycHQobi5OLEQsVyl9fTsKSUFoPWZ1bmN0aW9uKG4sVyl7bj1EZShuLmFycmF5LEQ9PlctRC5zdGFydHx8MSk7CnJldHVybiBuPDA/LShuKzEpOm59OwpTOWI9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVtdO2ZvcihXPUlBaChuLFcpO1c8bi5hcnJheS5sZW5ndGg7KytXKXtsZXQgdj1uLmFycmF5W1ddOyh2LmVuZDw9RHx8di5jb250YWlucyhEKSkmJmIucHVzaCh2KTtpZih2LnN0YXJ0PkQpYnJlYWt9cmV0dXJuIGJ9OwpnLkx1PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W107Zm9yKGxldCBiIG9mIG4uYXJyYXkpaWYoYi5jb250YWlucyhXKSYmRC5wdXNoKGIpLGIuc3RhcnQ+VylicmVhaztyZXR1cm4gRH07CkFwaj1mdW5jdGlvbihuKXtyZXR1cm4gbi5hcnJheS5zbGljZShJQWgobiwweDdmZmZmZmZmZmZmZmYpLG4uYXJyYXkubGVuZ3RoKX07Cm1qdD1mdW5jdGlvbihuLFcpe3ZhciBEPU5hTjtmb3IobGV0IGIgb2Ygbi5hcnJheSlpZihiLmNvbnRhaW5zKFcpJiYoaXNOYU4oRCl8fGIuZW5kPEQpJiYoRD1iLmVuZCksYi5zdGFydD5XJiYoaXNOYU4oRCl8fGIuc3RhcnQ8RCkpe0Q9Yi5zdGFydDticmVha31yZXR1cm4gRH07CkszVT1mdW5jdGlvbihuLFcpe24uYXJyYXk9bi5hcnJheS5maWx0ZXIoRD0+IVcuaGFzKEQpKX07Ck9YMj1mdW5jdGlvbihuKXtyZXR1cm4gbi5MLmdldFBsYXllclN0YXRlKCkuTigyKT8weDgwMDAwMDAwMDAwMDA6bi5MLmdldEN1cnJlbnRUaW1lKCkqMUUzfTsKZWg9ZnVuY3Rpb24obixXKXt2YXIgRD1bXTtpZighVy5sZW5ndGgpcmV0dXJuIEQ7Zm9yKGxldCBiPTA7YjxXLmxlbmd0aDtiKyspe2xldCB2PVdbYl07di5hY3RpdmUmJm4uVy5pbmRleE9mKHYpPT09LTEmJihuLlcucHVzaCh2KSxELnB1c2goWzEsdl0pKX1yZXR1cm4gRH07CmdzPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIFcpVz1EWzFdLERbMF09PT0xP24uTC5DSihnLm95KFcubmFtZXNwYWNlKSxXKTpuLkwuQ0ooZy5kdihXLm5hbWVzcGFjZSksVyl9OwpYSj1mdW5jdGlvbihuLFcpe3ZhciBEPVtdO2lmKCFXLmxlbmd0aClyZXR1cm4gRDtXLnNvcnQoZy51NSk7Zm9yKGxldCBiIG9mIFcpbi5XLnNwbGljZShuLlcuaW5kZXhPZihiKSwxKSxELnB1c2goWzIsYl0pO3JldHVybiBEfTsKUHlDPWZ1bmN0aW9uKG4pe2lmKG4uc3RhcnRlZCYmIW4ucU4oKSl7bi5qLnN0b3AoKTt2YXIgVz1uLkwuZ2V0UGxheWVyU3RhdGUoKTtXLk4oMzIpJiZuLlkuc3RhcnQoKTt2YXIgRD1PWDIobiksYj1uLmlzRW5kZWQoVyxEKSx2PVtdLGs9W107Zm9yKHZhciBoIG9mIG4uVyloLmFjdGl2ZSYmKGI/aC5lbmQ8MHg4MDAwMDAwMDAwMDAwOiFoLmNvbnRhaW5zKEQpKSYmay5wdXNoKGgpO3Y9di5jb25jYXQoWEoobixrKSk7aD1rPW51bGw7Yj8oVz1nLkx1KG4uTiwweDdmZmZmZmZmZmZmZmYpLGs9Vy5maWx0ZXIoeD0+eC5lbmQ8MHg4MDAwMDAwMDAwMDAwKSxoPUFwaihuLk4pKTpXPW4uWDw9RCYmbDEoVyk/UzliKG4uTixuLlgsRCk6Zy5MdShuLk4sRCk7CnY9di5jb25jYXQoZWgobixXKSk7ayYmKHY9di5jb25jYXQoWEoobixrKSkpO2gmJih2PXYuY29uY2F0KGVoKG4saCkpKTtuLlg9RDtncyhuLHYpfX07CnE5PWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFc+bi5tZWRpYVRpbWUrbi5YJiZXPG4ubWVkaWFUaW1lKzV9OwpSOEM9ZnVuY3Rpb24obixXLEQsYix2PSExKXtpZihuLmxuJiYhaXNGaW5pdGUoVykpcmV0dXJuITE7aWYoYj1iPjEpbi5XPSEwO2lmKHZ8fGlzTmFOKG4uTikpbi5OPVc7aWYobi5zZWVraW5nKVchPT1uLm1lZGlhVGltZSYmKG4uc2Vla2luZz0hMSk7ZWxzZSBpZihXPjAmJm4ubWVkaWFUaW1lPT09Vyl7dj0xNTAwO2lmKG4uQi5TKCJodG1sNV9idWZmZXJfdW5kZXJydW5fdHJhbnNpdGlvbl9maXgiKSl7dj1nLmRNKG4uQi5leHBlcmltZW50cywiaHRtbDVfbWluX3BsYXliYWNrX2FkdmFuY2VfZm9yX3N0ZWFkeV9zdGF0ZV9zZWNzIik7bGV0IGs9Zy5kTShuLkIuZXhwZXJpbWVudHMsImh0bWw1X21pbl91bmRlcnJ1bl9idWZmZXJlZF9wcmVfc3RlYWR5X3N0YXRlX21zIik7dj12PjAmJms+MCYmTWF0aC5hYnMoVy1uLk4pPHY/azoxNTAwfXJldHVybiBELW4uSj4oYnx8IW4uVz92OjQwMCl9bi5tZWRpYVRpbWU9VztuLko9RDtyZXR1cm4hMX07ClVqdz1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIFcudEEoRCkudGhlbigoKT0+Zy5IMChuZXcgWlhoKFcsVy5XKSksYj0+e2IgaW5zdGFuY2VvZiBFcnJvciYmZy5HcShiKTsKdmFyIHY9dTgoJ3ZpZGVvL21wNDsgY29kZWNzPSJhdmMxLjQyMDAxRSwgbXA0YS40MC4yIicpLGs9ZHkoJ2F1ZGlvL21wNDsgY29kZWNzPSJtcDRhLjQwLjIiJyksaD12fHxrLHg9Vy5pc0xpdmVQbGF5YmFjayYmIWcuSW4obi5XLCEwKTtiPSJmbXQubm9uZWF2YWlsYWJsZSI7eD9iPSJodG1sNS51bnN1cHBvcnRlZGxpdmUiOmh8fChiPSJodG1sNS5taXNzaW5nYXBpIik7aD14fHwhaD8yOjE7dj17YnVpbGRSZWo6IjEiLGE6Vy5JcCgpLGQ6ISFXLlRmLGRybTpXLk1pKCksZjE4OlcuY2YuaW5kZXhPZigiaXRhZz0xOCIpPj0wLGMxODp2fTtXLk4mJihXLk1pKCk/KHYuZjE0Mj0hIVcuTi5OWyIxNDIiXSx2LmYxNDk9ISFXLk4uTlsiMTQ5Il0sdi5mMjc5PSEhVy5OLk5bIjI3OSJdKToodi5mMTMzPSEhVy5OLk5bIjEzMyJdLHYuZjE0MD0hIVcuTi5OWyIxNDAiXSx2LmYyNDI9ISFXLk4uTlsiMjQyIl0pLHYuY0FBQz1rLHYuY0FWQz1keSgndmlkZW8vbXA0OyBjb2RlY3M9ImF2YzEuNDIwMDFFIicpLAp2LmNWUDk9ZHkoJ3ZpZGVvL3dlYm07IGNvZGVjcz0idnA5IicpKTtXLmomJih2LmRybXN5cz1XLmoua2V5U3lzdGVtLGs9MCxXLmouSiYmKGs9T2JqZWN0LmtleXMoVy5qLkopLmxlbmd0aCksdi5kcm1zdD1rKTtyZXR1cm4gbmV3IGcuQ2koYix2LGgpfSl9Owp0Qz1mdW5jdGlvbihuLFcpe1c9TWF0aC5tYXgoTWF0aC5tYXgoMSxNYXRoLmNlaWwobi5wb2xpY3kuWC9HWShuKSkpLFcpO3JldHVybiBNYXRoLm1pbihNYXRoLm1pbig4LE1hdGguZmxvb3Iobi5wb2xpY3kuRC9HWShuKSkpLFcpfTsKR1k9ZnVuY3Rpb24obil7cmV0dXJuIG4udmlkZW9EYXRhLk4/b28obi52aWRlb0RhdGEuTil8fDU6NX07CiQwPWZ1bmN0aW9uKG4pe3JldHVybiBHWShuKSpuLk59OwpFb2k9ZnVuY3Rpb24obixXKXtpZihXKXJldHVybiBXPW4udmlkZW9EYXRhLFc9eXBiKG4saXNOYU4oVy5saXZlQ2h1bmtSZWFkYWhlYWQpPzM6Vy5saXZlQ2h1bmtSZWFkYWhlYWQsVyksdEMobixXKTtpZihuLkoubGVuZ3RoKXtpZihNYXRoLm1pbi5hcHBseShudWxsLG4uSik+MSlyZXR1cm4gdEMobixuLk4tMSk7aWYobi5wb2xpY3kuWSlyZXR1cm4gdEMobixuLk4rMSl9cmV0dXJuIG4uTn07CmlYUz1mdW5jdGlvbihuLFc9ITEpe2lmKCFuLkoubGVuZ3RoKXJldHVybiExO3ZhciBEPW4uTjtuLk49RW9pKG4sVyk7aWYoVz1EIT09bi5OKW4uSj1bXSxuLmp4PTA7cmV0dXJuIFd9Owpycz1mdW5jdGlvbihuKXt2YXIgVz1uLnBvbGljeS5OO24uWHx8KFc9TWF0aC5tYXgoVy0xLDApKTtyZXR1cm4gVypHWShuKX07CnNCPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFc+PW4uTlcoKS1ycyhuKX07CnlwYj1mdW5jdGlvbihuLFcsRCl7RC5JUiYmVy0tO2hEKEQpJiYoVz0xKTt4cChEKSE9PTAmJihuPWcuZE0obi5leHBlcmltZW50cywiaHRtbDVfbGl2ZV9jaHVua19yZWFkYWhlYWRfcHJveGltYV9vdmVycmlkZSIpKSYmKFc9bixELk4/Lm51KCkmJlcrKyk7cmV0dXJuIFd9OwpwdT1mdW5jdGlvbihuLFcsRD1udWxsKXtyZXR1cm4gbmV3IE45KGcuZE0obi5CLmV4cGVyaW1lbnRzLFcpfHwwLEQ/bi5CLlMoRCk6ITEpfTsKdTRiPWZ1bmN0aW9uKG4sVyl7bi5OPVd9OwpZMD1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgpe1c/Vy50ZXN0KEQpPyhuLkdzKHYsVyxoKSxXLlZ8fGsoKSk6KCFXLkp8fFcuWD9EPSExOihEPSgwLGcuUikoKSxiP1cuTnx8KFcuTj1EKTpXLk49MCxrPSFiJiZELVcuSj4zRTQsRD1XLk4mJkQtVy5OPjFFM3x8az9XLlg9ITA6ITEpLEQmJih4PXsuLi5uLnlyKFcpLC4uLnh9LHgud249aCx4LndlPXYseC53c3VjPWIsbi5MLlUoIndvcmthcm91bmRSZXBvcnQiLHgpLGImJihXLnJlc2V0KCksbi5YW3ZdPSExKSkpOm4uTC5QVigiYXV0aCIsMiwiQlJPV1NFUl9PUl9FWFRFTlNJT05fRVJST1IiLGcuVEMoe3NvdXJjZToid2F0Y2hkb2ciLG5hbWU6aH0pKX07Cm9veD1mdW5jdGlvbihuLFcpe2lmKG4uTil7dmFyIEQ9bi5OO3ZhciBiPW4uZ2V0Q3VycmVudFRpbWUoKSx2PUQuTlcoKTt2YXIgaz1ELnBvbGljeS5KO0QuWHx8KGs9TWF0aC5tYXgoay0xLDApKTtrKj1HWShEKTtiPj12LWt8fCFELmpYKCk/RD1iPEQudmlkZW9EYXRhLkxmKCk/TWF0aC5taW4oRC52aWRlb0RhdGEuTGYoKSsxMCxELk5XKCkpOk5hTjooRC5wb2xpY3kuaiYmKEQucG9saWN5Lk8/KEQucG9saWN5Lko9TWF0aC5taW4oRC5wb2xpY3kuSitELnBvbGljeS5LLEQucG9saWN5LlYpLEQucG9saWN5Lk49TWF0aC5taW4oRC5wb2xpY3kuTisxLDEwKSk6KEQucG9saWN5Lko9TWF0aC5tYXgoRC5wb2xpY3kuSisxLEQucG9saWN5LlYpLEQucG9saWN5Lk49TWF0aC5tYXgoRC5wb2xpY3kuTisxLDEwKSkpLEQ9SW5maW5pdHkpO2lmKCFpc05hTihEKSl7aWYobi5sb2FkZXImJlcmJihXPW4uUyQuaXNBY3RpdmUoKSxiPW4uTi5OVygpLChiPWlQUyhuLmxvYWRlcixiLW4uU1coKSkpJiYKIVcpKXtuLlMkLnN0YXJ0KCk7bi5MLlUoImluQnVmZmVyUHRsIix7Y210Om4uZ2V0Q3VycmVudFRpbWUoKSxzZWVrVG86YituLlNXKCl9KTtuLnNlZWtUbyhiK24uU1coKSx7cWQ6InNlZWt0aW1lbGluZV9pbkJ1ZmZlclNlZWsiLHNlZWtTb3VyY2U6MzR9KTtyZXR1cm59bi5zZWVrVG8oRCx7cWQ6InNlZWt0aW1lbGluZV9wZWdUb0xpdmUiLHNlZWtTb3VyY2U6MzR9KX19fTsKZnU9ZnVuY3Rpb24obixXKXtpZihuLlgpe24udmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrJiZuLnZpZGVvRGF0YS5XJiYhbi52aWRlb0RhdGEuVy5OKCkmJm4ubWVkaWFFbGVtZW50JiZuLm1lZGlhRWxlbWVudC5YKCk+MCYmb3Uobi5tZWRpYUVsZW1lbnQpPjAmJihuLko9SGQobixuLkosITEpKTt2YXIgRD1uLlMoImh0bWw1X3BzZXVkb2dhcGxlc3Nfc2hvcnRzX3NlZWtfdG9fbmV4dF9zdGFydCIpJiZXPy5zZWVrU291cmNlPT09NjA7aWYoIW4ubWVkaWFFbGVtZW50fHwhZGpyKG4sRCkpbi5SYS5zdGFydCg3NTApO2Vsc2UgaWYoIWlzTmFOKG4uSikmJmlzRmluaXRlKG4uSikmJihEPW4uSEotKG4uSi1uLnRpbWVzdGFtcE9mZnNldCksIShEPT09MHx8TWF0aC5hYnMoRCk8LjAwNSkpKWlmKEQ9bi5tZWRpYUVsZW1lbnQuZ2V0Q3VycmVudFRpbWUoKS1uLkosTWF0aC5hYnMoRCk8PW4uRHR8fE1hdGguYWJzKEQpPC4wMDUpenkxKG4pO2Vsc2V7aWYobi52aWRlb0RhdGEuTWwpbi52aWRlb0RhdGEuTWw9CiExO2Vsc2UgaWYoIWcuRFAobi52aWRlb0RhdGEpJiZuLko+PW4uckkoKS0uMSYmKG4uckkoKSE9PTB8fFc/LnFkIT09InNlZWt0aW1lbGluZV9zZXR1cE1lZGlhRWxlbWVudCIpKXtuLko9bi5ySSgpO24uWC5yZXNvbHZlKG4uckkoKSk7bi5CLldYKCkmJm4uTC5VKCJzZXRFbmRlZEluU2VlayIse3RndDpgJHtuLkp9YCxtYXhzdDpgJHtuLnJJKCl9YH0pO24uTC5rTigpO3JldHVybn10cnl7bGV0IGI9bi5KLW4udGltZXN0YW1wT2Zmc2V0O24ubWVkaWFFbGVtZW50LnNlZWtUbyhiKTtuLk8uTj1iO24uSEo9YjtuLlc9bi5KO24uY0o9ITF9Y2F0Y2goYil7fX19fTsKVEUyPWZ1bmN0aW9uKG4sVyl7bi5UQz0hMDtuLmxuKCkmJihuLko9bi5WLG4uVz1uLkosbi5WPU5hTik7bEF0KG4sVyl9OwpqYjI9ZnVuY3Rpb24obil7dmFyIFc9MCxEPU5hTixiPSIiO2lmKCFuLkQpcmV0dXJue3N0YXJ0U2Vjb25kczpXLE12OkQsc291cmNlOmJ9O24udmlkZW9EYXRhLlJJP1c9bi52aWRlb0RhdGEuSlU6Zy5EUChuLnZpZGVvRGF0YSkmJihXPUluZmluaXR5KTtpZihnLnBBKG4udmlkZW9EYXRhKSlyZXR1cm57c3RhcnRTZWNvbmRzOlcsTXY6RCxzb3VyY2U6Yn07bi52aWRlb0RhdGEuc3RhcnRTZWNvbmRzPyhiPSJzcyIsVz1uLnZpZGVvRGF0YS5zdGFydFNlY29uZHMpOm4udmlkZW9EYXRhLlVyJiYoYj0ic3RzcyIsVz1uLnZpZGVvRGF0YS5Vcik7bi52aWRlb0RhdGEubGl2ZVV0Y1N0YXJ0U2Vjb25kcyYmKEQ9bi52aWRlb0RhdGEubGl2ZVV0Y1N0YXJ0U2Vjb25kcyk7aWYoaXNGaW5pdGUoVykmJihXPm4uckkoKXx8VzxuLkxmKCkpKXtsZXQgdj17fTt2Lm1pblNlZWthYmxlVGltZT1uLkxmKCk7di5tYXhTZWVrYWJsZVRpbWU9bi5ySSgpO3YuY210PW4uZ2V0Q3VycmVudFRpbWUoKTt2LnNzPQpXO3YudXRjPUQ7di5zcmM9YjtuLkwuVSgic3RhcnRTZWNvbmRzT3V0T2ZCb3VuZHMiLHYpO24udmlkZW9EYXRhLnpXKCkmJihXPUhkKG4sVywhMSkpfXJldHVybntzdGFydFNlY29uZHM6VyxNdjpELHNvdXJjZTpifX07CkpDPWZ1bmN0aW9uKG4pe3JldHVybiEhbi52aWRlb0RhdGEuc3RhcnRTZWNvbmRzJiZpc0Zpbml0ZShuLnZpZGVvRGF0YS5zdGFydFNlY29uZHMpJiZuLnZpZGVvRGF0YS5zdGFydFNlY29uZHM+MUU5fTsKRjNiPWZ1bmN0aW9uKG4sVyl7bi5wbGF5YmFja0RhdGE9VztuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayYmKG4uWT1uZXcgQ3laKCgpPT57YTp7aWYobi5wbGF5YmFja0RhdGEmJm4ucGxheWJhY2tEYXRhLk4uTigpKXtpZihJNChuLnZpZGVvRGF0YSkmJm4ubG9hZGVyKXt2YXIgRD1uLmxvYWRlci5xaCgpO2JyZWFrIGF9aWYobi52aWRlb0RhdGEuTil7RD1uLnZpZGVvRGF0YS5OLnFoKCk7YnJlYWsgYX19RD0wfXJldHVybiBEfSksbi5OPW5ldyBCRWIobi52aWRlb0RhdGEsbi5CLmV4cGVyaW1lbnRzLCgpPT5uLnJJKCEwKSkpOwpJYyhuLkwpPyhuLnZpZGVvRGF0YS5nVD8uQWp8fChXPWpiMihuKSxXLk12PyhnLllOKG4udmlkZW9EYXRhKSYmbi5odShXLk12LFcuc3RhcnRTZWNvbmRzKSxuLlc9Vy5zdGFydFNlY29uZHMpOlcuc3RhcnRTZWNvbmRzPjAmJm4uc2Vla1RvKFcuc3RhcnRTZWNvbmRzLHtxZDoic2Vla3RpbWVsaW5lX3N0YXJ0UGxheWJhY2siLHNlZWtTb3VyY2U6MTUsQU06ITB9KSksbi5EPSExKTpKQyhuKXx8KG4uVz1uLld8fG4udmlkZW9EYXRhLnN0YXJ0U2Vjb25kc3x8MCxuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFja3x8KFc9bi5MLnZpZGVvRGF0YS5ySSgpLG4uVz5XJiYobi5TKCJodG1sNV9zYWJyX2xvZ19pbnZhbGlkX3NhYnJfY3VycmVudF90aW1lIikmJm4uTC5VKCJpbnZhbGlkU2FickNtdFN0YXJ0Iix7cnQ6bi5XLG1zdDpXfSksbi5TKCJodG1sNV9zYWJyX3ZvZF9pbnZhbGlkX3N0YXJ0X3RpbWVfZmFsbGJhY2siKSYmKG4uVz0wKSkpKX07ClNoPWZ1bmN0aW9uKG4sVyl7aWYobi5OJiZuLmxvYWRlcil7dmFyIEQ9ITE7Vz9EPSEwOlN4KG4udmlkZW9EYXRhKT9EPWlYUyhuLk4pOm4uQ3UmJihuLkN1PSExLEQ9aVhTKG4uTiwhMCkpO0QmJihEPW4uTC5CWCxXPSQwKG4uTiksRC5xb2UmJihEPUQucW9lLGcud2ooRCxnLlJrKEQucHJvdmlkZXIpLCJscmEiLFtXXSksRC5VKCJsaXZlLXJlYWRhaGVhZC1zZWNvbmRzIix7djpXfSkpKTtXPW4ubG9hZGVyO0Q9bi5OLk47bj1uLk47bj0obi5OLTErbi5wb2xpY3kuTikqR1kobik7dmFyIGI9TmFOO3ZhciB2PVcuVHI7dj09PTJ8fHY9PT0tMT8odj1ELGhEKFcuTC5nZXRWaWRlb0RhdGEoKSkmJihiPVcucG9saWN5LnpQKSk6dj1ELTE7dj1NYXRoLm1heCh2LDApO0Q9Vy5OeTtELlpBPXY7RC5YPWI7Vy5RdSYmKFcuUXUuTz1uKX19Owptbz1mdW5jdGlvbihuLFcpeyhuLmxvYWRlcj1XKT9TaChuLCEwKTpnLkFDKG4pfTsKZGpyPWZ1bmN0aW9uKG4sVz0hMSl7aWYoIW4ubWVkaWFFbGVtZW50fHxuLm1lZGlhRWxlbWVudC5YKCk9PT0wfHxuLm1lZGlhRWxlbWVudC5oYXNFcnJvcigpKXJldHVybiExO3ZhciBEPW4ubWVkaWFFbGVtZW50LmdldEN1cnJlbnRUaW1lKCk+MDtyZXR1cm4gbi52aWRlb0RhdGEuVyYmbi52aWRlb0RhdGEuVy5OKCl8fG4udmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrfHwhbi52aWRlb0RhdGEuTWkoKT9uLko+PTAmJiFXJiYoVz1uLm1lZGlhRWxlbWVudC5PKCksVy5sZW5ndGh8fCFEKT9CUihXLG4uSi1uLnRpbWVzdGFtcE9mZnNldCk6RDpEfTsKTVoxPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5nZXRDdXJyZW50VGltZSgpLGI9bi5pc0F0TGl2ZUhlYWQoRCk7aWYobi5ZJiZiKXt2YXIgdj1uLlk7aWYodi5OJiYhKEQ+PXYuSiYmRDx2LlgpKXt2YXIgaz12Lk4uUjMoRCk7ayE9PS0xJiYodi5KPXYuTi5nZXRTdGFydFRpbWUoayksdi5YPXYuSit2Lk4uZ2V0RHVyYXRpb24oayksaz0oMCxnLlIpKCkvMUUzLXYuTi5oQyhrKSxrLT12LmooKSx2LlcuYWRkKGspKX19bi5OJiYoYiYmKHY9bi5OLGs9bi56cygpLHYuangrKyx2Lmp4PDN8fERhdGUubm93KCktdi5WPDNFM3x8KHYuVj1EYXRlLm5vdygpLHYuSi5wdXNoKGspLHYuSi5sZW5ndGg+NTAmJnYuSi5zaGlmdCgpKSksbi5OLlUzKEQsVyksVyYmb294KG4sITApKTtiIT09bi5QWCYmKG4uQi5adCgpLk4uUVEod0kxKSYmbi52aWRlb0RhdGEuUkk/bi5QWD1iOihXPShuLkIuWnQoKS5OLlFRKHdJMSk/KG4uZ2V0Q3VycmVudFRpbWUoKS1uLkdDKSoxRTM6bi5nZXRDdXJyZW50VGltZSgpLQpuLkdDKTw9NTAwLEQ9bi5ZWj49MUUzLFd8fER8fChXPW4uTC5CWCxXLnFvZSYmKFc9Vy5xb2UsRD1nLlJrKFcucHJvdmlkZXIpLGcud2ooVyxELCJsaCIsW2I/IjEiOiIwIl0pKSxuLlBYPWIsbi5ZWisrLG4uR0M9bi5nZXRDdXJyZW50VGltZSgpKSkpfTsKZy5LdT1mdW5jdGlvbihuLFcpe3ZhciBEPW4uWDtEfHwobi5YPW5ldyBZNixEPW4uWCxmdShuLFcpKTtyZXR1cm4gRH07CkhkPWZ1bmN0aW9uKG4sVyxEKXtpZihpc05hTihXKSlyZXR1cm4gTmFOO3ZhciBiPW4uTGYoKTtEPW4uckkoRCk7cmV0dXJuIG4uUygiaHRtbDVfY2xhbXBfaW52YWxpZF9zZWVrX3RvX21pbl9zZWVrYWJsZV90aW1lIikmJiFuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayYmVz5EKzEmJlc8SW5maW5pdHk/KG4uQi5XWCgpJiZuLkwuVSgiY2xhbXBJbnZhbGlkU2VlayIse3RndDpgJHtXfWAsbWF4c3Q6YCR7RH1gfSksYik6Zy5GZihXLGIsRCl9OwpSeWk9ZnVuY3Rpb24obixXKXtuLlc9V307ClFidz1mdW5jdGlvbihuLFc9ITEpe24uanx8IShuLlc+MCl8fG4ubWVkaWFFbGVtZW50JiZuLm1lZGlhRWxlbWVudC5nZXRDdXJyZW50VGltZSgpPjB8fChXPXtxZDoic2Vla3RpbWVsaW5lX3Jlc3VtZVRpbWUiLEFNOld9LG4udmlkZW9EYXRhLll8fChXLnNlZWtTb3VyY2U9MTUpLG4uc2Vla1RvKG4uVyxXKSl9OwpsQXQ9ZnVuY3Rpb24obixXKXtWWmkobixXKS50aGVuKHZvaWQgMCwoKT0+e2cuQUMobil9KTsKZy5LdShuLFcpLnRoZW4oRD0+e2cuT0IobixEKX0sKCk9PntnLkFDKG4pfSk7Cm4uTC53WShXKTtuLkIuV1goKSYmKFc9bi55cigpLFdbIm5hdGl2ZSJdPWAkeytuLmNKfWAsVy50Z3Q9YCR7bi5KfWAsVy5vdGd0PWAke24uSituLnRpbWVzdGFtcE9mZnNldH1gLFcubWF4c3Q9YCR7bi5ySSgpfWAsbi5OJiZuLlMoImh0bWw1X2hpZ2hfcmVzX3NlZWtfbG9nZ2luZyIpJiYoVy50aHQ9YCR7bi5OLmooKX1gLFcuaHQ9YCR7bi5OLk5XKCl9YCxXLmFkZnQ9YCR7cnMobi5OKX1gKSxuLlMoImh0bWw1X3NhYnJfcGFyc2VfbGl2ZV9tZXRhZGF0YV9wbGF5YmFja19ib3VuZGFyaWVzIikmJm4udmlkZW9EYXRhLk4mJmcuWU4obi52aWRlb0RhdGEpJiYoVy5taW5zdD1gJHtuLnZpZGVvRGF0YS5OLkgyfWAsVy5jbWluc3Q9YCR7bi52aWRlb0RhdGEuTi5MZigpK24udGltZXN0YW1wT2Zmc2V0fWAsVy5tYXhzdD1gJHtuLnZpZGVvRGF0YS5OLldNfWAsVy5odHM9YCR7bi52aWRlb0RhdGEuTi50d31gLFcuY21heHN0PWAke24udmlkZW9EYXRhLk4uckkoKStuLnRpbWVzdGFtcE9mZnNldH1gKSwKbi5MLlUoInN0YXJ0U2VlayIsVykpfTsKVlppPWZ1bmN0aW9uKG4sVyl7bi50d3x8KG4ubG9hZGVyP2lzRmluaXRlKG4uSik/bi50dz1uLmxvYWRlci5zZWVrKG4uSi1uLnRpbWVzdGFtcE9mZnNldCxXKTooZy5EUChuLnZpZGVvRGF0YSksbi5MLmhhPTAsbi50dz1SJChuLmxvYWRlcikscEwobi52aWRlb0RhdGEpfHwobi5KPW4ubG9hZGVyLmdldEN1cnJlbnRUaW1lKCkrbi50aW1lc3RhbXBPZmZzZXQpKTpuLnR3PSRHKG4uSi1uLnRpbWVzdGFtcE9mZnNldCkpO3JldHVybiBuLnR3fTsKZy5PQj1mdW5jdGlvbihuLFcpe24uaiYmKG4uai5yZXNvbHZlKFcpLG4uTC5LdCgpLG4uQi5XWCgpJiYoVz1uLnlyKCksV1sibmF0aXZlIl09YCR7K24uY0p9YCxXLm90Z3Q9YCR7bi5KK24udGltZXN0YW1wT2Zmc2V0fWAsbi5MLlUoInNlZWtFbmQiLFcpKSk7Zy5BQyhuKX07Cnp5MT1mdW5jdGlvbihuKXtuLlgmJihuLlgucmVzb2x2ZShuLm1lZGlhRWxlbWVudC5nZXRDdXJyZW50VGltZSgpKSxuLk8uSj1udWxsKX07CmcuQUM9ZnVuY3Rpb24obil7bi5KPU5hTjtuLlY9TmFOO24uSEo9TmFOO24uWD1udWxsO24udHc9bnVsbDtuLmo9bnVsbDtuLlRDPSExO24uY0o9ITE7bi5EdD0wO24uUyQuc3RvcCgpO24ubnUuc3RvcCgpfTsKYUF3PWZ1bmN0aW9uKG4pe2lmKG4uRClpZihuLnZpZGVvRGF0YS5nVD8uQWopbi5EPSExO2Vsc2UgaWYoZy5wQShuLnZpZGVvRGF0YSkpbi5EPSExO2Vsc2V7dmFyIFc9InNzIixEPTA7bi52aWRlb0RhdGEuTj8uaXNNYW5pZmVzdGxlc3MmJm4udmlkZW9EYXRhLlRDJiYhSkMobikmJihXPSJtc3MiLEQ9bi52aWRlb0RhdGEuVEMpOyhuLnZpZGVvRGF0YS5SST9uLlMoImh0bWw1X3ByaW9yaXRpemVfd2luZG93ZWRfc3Rfc3RhcnRfc2Vjb25kcyIpOm4uUygiaHRtbDVfcHJpb3JpdGl6ZV9zdF9zdGFydF9zZWNvbmRzIikpJiYhRCYmbi52aWRlb0RhdGEuVXImJihXPSJzdHNzIixEPW4udmlkZW9EYXRhLlVyKTshRCYmY3B0KG4pJiYoRD1uLnZpZGVvRGF0YS5saXZlVXRjU3RhcnRTZWNvbmRzfHxuLnZpZGVvRGF0YS5UQyxXPSJ1dGMiLEQ9bi5ySSgpLW4uaEMobi5ySSgpKStEKTshRCYmbi52aWRlb0RhdGEuelcoKSYmbi52aWRlb0RhdGEuVXImJihXPSJzdHNzIixEPW4udmlkZW9EYXRhLlVyKTsKdmFyIGI9e307aWYoRCl7aWYoRD5uLnJJKCl8fEQ8bi5MZigpKWIubWluU2Vla2FibGVUaW1lPW4uTGYoKSxiLm1heFNlZWthYmxlVGltZT1uLnJJKCksYi5jbXQ9bi5nZXRDdXJyZW50VGltZSgpLGIuaXQ9bi5oQyhuLmdldEN1cnJlbnRUaW1lKCkpLGIuc3M9RCxiLnV0Yz1jcHQobik/bi52aWRlb0RhdGEubGl2ZVV0Y1N0YXJ0U2Vjb25kc3x8bi52aWRlb0RhdGEuVEM6MCxuLkwuVSgic3RhcnRTZWNvbmRzT3V0T2ZCb3VuZHMiLGIpLG4udmlkZW9EYXRhLnpXKCkmJihEPUhkKG4sRCwhMSkpO24uc2Vla1RvKEQse3FkOiJzZWVrdGltZWxpbmVfc3RhcnRTZWNvbmRzIn0pO2JbV109RDtuLkwuVSgic3RhcnRTZWNvbmRzIixiKTtuLkQ9ITF9ZWxzZSBuLnZpZGVvRGF0YS5UQyYmKGJbV109bi52aWRlb0RhdGEuVEMrbi5TVygpLG4uTC5VKCJzdGFydFNlY29uZHMiLGIpKX19OwpuQXg9ZnVuY3Rpb24obixXKXt2YXIgRD1uLm1lZGlhRWxlbWVudCxiPVcudHlwZTtzd2l0Y2goYil7Y2FzZSAic2Vla2luZyI6bGV0IHY9RC5nZXRDdXJyZW50VGltZSgpK24udGltZXN0YW1wT2Zmc2V0O2lmKCFuLlh8fG4uY0omJnYhPT1uLkopbi5YPW5ldyBZNixuLlgudGhlbihrPT57Zy5PQihuLGspfSwoKT0+e2cuQUMobil9KSxuLnZpZGVvRGF0YS5pc0FkKCkmJm5uMSh7YWRDcG46bi52aWRlb0RhdGEuY2xpZW50UGxheWJhY2tOb25jZSwKY29udGVudENwbjpuLnZpZGVvRGF0YS5ob3N0Q3BuPz8iIn0sVy5OKSxuLkhKPXYsdTRiKG4uTyxELmdldEN1cnJlbnRUaW1lKCkpLG4uc2Vla1RvKHYse3NlZWtTb3VyY2U6MTA0LHFkOiJzZWVrdGltZWxpbmVfbWVkaWFFbGVtZW50RXZlbnQifSksbi5jSj0hMDticmVhaztjYXNlICJzZWVrZWQiOnp5MShuKTticmVhaztjYXNlICJsb2FkZWRtZXRhZGF0YSI6SWMobi5MKXx8YUF3KG4pO2Z1KG4pO2JyZWFrO2Nhc2UgInByb2dyZXNzIjpmdShuKTticmVhaztjYXNlICJwYXVzZSI6bi5LPW4uZ2V0Q3VycmVudFRpbWUoKX1uLksmJigoYj09PSJwbGF5Inx8Yj09PSJwbGF5aW5nInx8Yj09PSJ0aW1ldXBkYXRlInx8Yj09PSJwcm9ncmVzcyIpJiZuLmdldEN1cnJlbnRUaW1lKCktbi5LPjEwJiYobi5TKCJodG1sNV9za3lfc2tpcF9wYXVzZV9qdW1wIik/bi5MLlUoInNraXBQYXVzZUp1bXAiLHtldnQ6YixjbXQ6bi5nZXRDdXJyZW50VGltZSgpLGxwdDpuLkt9KTpuLnNlZWtUbyhuLkssCntxZDoicGF1c2VKdW1wIn0pKSxiIT09InBhdXNlIiYmYiE9PSJwbGF5IiYmYiE9PSJwbGF5aW5nIiYmYiE9PSJwcm9ncmVzcyImJihuLks9MCkpfTsKY3B0PWZ1bmN0aW9uKG4pe3JldHVybihZcChuLnZpZGVvRGF0YSl8fCEhbi52aWRlb0RhdGEubGl2ZVV0Y1N0YXJ0U2Vjb25kcykmJighIW4udmlkZW9EYXRhLmxpdmVVdGNTdGFydFNlY29uZHN8fEpDKG4pKSYmISFuLnZpZGVvRGF0YS5OfTsKUGQ9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5OLmdldChXKT8uYnVmZmVyLlcoKXx8W119OwpaNz1mdW5jdGlvbihuLFcpe3JldHVybiBuLk4uZ2V0KFcpPy5idWZmZXIuWCgpfHwwfTsKTHIxPWZ1bmN0aW9uKG4sVyl7ZnVuY3Rpb24gRChrKXtyZXR1cm4gYi5WIT09Inl0IiYmKHYucGFydG5lcklkPT09MzgmJmIucGxheWVyU3R5bGU9PT0iYm9va3MifHx2LnBhcnRuZXJJZD09PTMwJiZiLnBsYXllclN0eWxlPT09ImRvY3MifHx2LnBhcnRuZXJJZD09PTMzJiZiLnBsYXllclN0eWxlPT09Imdvb2dsZS1saXZlIik/V3JoKG4sdixrKTpEMXQobix2KS50aGVuKCgpPT57Yi5TKCJlbWJlZHNfZW5hYmxlX3Nob3J0cyIpJiZuLkcoKS5UNyYmdi5pc0VtYmVkc1Nob3J0c01vZGUobmV3IGcuUWUoMCwwKSwhIXYucGxheWxpc3RJZCk/YlVVKG4sdik6VUIobix2KX0saD0+e1VCKG4sdiwhMCk7CnRocm93IGg7fSl9CnZhciBiPW4uRygpLHY9bi5nZXRWaWRlb0RhdGEoKTt2LnFOKCk7di5sb2FkaW5nPSEwO3JldHVybiB2QWoobik/a1VpKG4sdixXKS50aGVuKCgpPT57VUIobix2KX0saz0+e2s9QiQoayk7CmlmKGoyKGsuc2V2ZXJpdHkpKXJldHVybiBVQihuLHYsITApLFByb21pc2UucmVqZWN0KGspO2suZXJyb3JDb2RlPT09Im9uZXNpZS5yZXNwb25zZS5iYWRwcm94eXN0YXR1cyImJmAke2suZGV0YWlscy5zdH1gPT09IjMiJiYoaHBTPSEwKTtuLmhhbmRsZUVycm9yKGspO3JldHVybiBEKCJvbmVzaWUiKX0pOmIuUygiZW1iZWRzX2VuYWJsZV9zaG9ydHMiKSYmYi5UNz94MVUobix2KS50aGVuKCgpPT5EKCJndmkiKSk6RCgiZ3ZpIil9Owp2QWo9ZnVuY3Rpb24obil7dmFyIFc9bi5HKCk7aWYoVy5TKCJodG1sNV9kaXNhYmxlX29uZXNpZSIpfHwhVy5TKCJodG1sNV9vbmVzaWUiKXx8IVcuUygiaHRtbDVfb25lc2llX2lubGluZSIpJiZuLmdldFZpc2liaWxpdHlTdGF0ZSgpPT09NXx8Vy5WIT09Inl0IilyZXR1cm4hMTt2YXIgRD1XLlBYO2lmKCFEfHwhRC5OKXJldHVybiBuLmhhbmRsZUVycm9yKG5ldyBnLkNpKCJvbmVzaWUudW5hdmFpbGFibGUuaG90Y29uZmlnIix7a2V5OiIwIn0pKSwhMTtpZihELk4uSzwoMCxnLlIpKCkmJihuLlUoIm9rZXhwIiwiMSIpLChEPW4uVTQoKSkmJlcuUygiaHRtbDVfcHJlZmVyX3RydXN0ZWRfaG9zdF9vbl9rZXlfZXhwaXJhdGlvbiIpKSl7RC5KPSEwO2xldCBiPUQuTi5nZXQoMCk/Lk4oKTtiJiYheHcoYikmJkQuTi5kZWxldGUoMCl9aWYoaHBTKXJldHVybiBuLlUoIm9zdDMiLCIxIiksITE7RD17fTtyZXR1cm4gT2JqZWN0LmtleXMoRCkubGVuZ3RoPjA/KEQub25lc2llPSIwIixuLmhhbmRsZUVycm9yKG5ldyBnLkNpKCJodG1sNS5taXNzaW5nYXBpIiwKRCkpLCExKTpuLmdldFZpZGVvRGF0YSgpLmxpdmVQcmVsb2FkJiZXLlp0KCkuTi5RUShIcCk/ITE6ITB9Owp5YT1mdW5jdGlvbihuLFcpe3ZhciBEPWcucDIoKTtnLllGKEQsVyk7cmV0dXJuIG5jKEQsaVooKSx7b1M6bi5KLGNsaWVudEludGVyZmFjZTpsbyhuKX0pfTsKZXBaPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIGcuazYobi5HKCkpJiZXLnZKKCk/YCR7bi5nZXRQbGF5ZXJUeXBlKCl9XyR7Vy52aWRlb0lkfV8ke1cuS2Z9YDpgJHtuLmdldFBsYXllclR5cGUoKX1fJHtXLnZpZGVvSWR9XyR7Vy5LZn1fJHsrVy5pc0F1dG9uYXZ9JHsrVy5WVH1gfTsKa1VpPWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXtXLmZldGNoVHlwZT0ib25lc2llIjt2YXIgYj12b2lkIDA7aWYoeVUoVykpaWYoYj1uLmk3KXt2YXIgdj1lcFoobixXKTtiPWIuZ2V0KHYpfWVsc2UgYj12b2lkIDA7dj1uLnRiLlFwO2lmKGIpe2lmKFcubG9hZGluZz0hMSxXLk5WPSEwLHpmKFcse3BsYXllcl9yZXNwb25zZTpifSwhMCksVy5sb2FkaW5nfHxIaihXKSlyZXR1cm4gbi5VKCJwcnIiLCIxIiksUHJvbWlzZS5yZXNvbHZlKCl9ZWxzZXtiPWxGKFcsbi5nZXRQbGF5ZXJTaXplKCksbi5nZXRWaXNpYmlsaXR5U3RhdGUoKSk7RD1uZXcgS0QobixiLEQpO2I9YXdhaXQgRC5mZXRjaCgpO2xldCBoPXtwbGF5ZXJfcmVzcG9uc2U6Yn07Vy5sb2FkaW5nPSExO2lmKEQubkEpe2ZvcihsZXQgW3gsTF1vZiBELm5BLmVudHJpZXMoKSl7dmFyIGs9eDtsZXQgZT1MO3YuTi5zZXQoayxlLDE4MCk7az09PVcudmlkZW9JZCYmKGs9ZS5TSigpLFcub009ayl9di5VZz1EfWZvcihsZXQgW3gsTF1vZiBELnQwLmVudHJpZXMoKSl2Lkouc2V0KHgsCkwsMTgwKTt6ZihXLGgsITApO2lmKFcubG9hZGluZ3x8SGooVykpcmV0dXJuIHlVKFcpJiYodj1lcFoobixXKSxXPVcuZ2V0UGxheWVyUmVzcG9uc2UoKSkmJihXPVcucmVzcG9uc2VDb250ZXh0Py5jYWNoZUluc3RydWN0aW9uPy5tYXhBZ2VTZWNvbmRzPz9XLnJlc3BvbnNlQ29udGV4dD8ubWF4QWdlU2Vjb25kcz8/dm9pZCAwLG4uaTc/LnB1dCh2LGIsVykpLFByb21pc2UucmVzb2x2ZSgpfXYuTi5UaSgpO3YuSi5UaSgpO1cub009W107bj17fTt2PSJvbmVzaWUucmVzcG9uc2UiO0Q9MDtXLmVycm9yQ29kZT8odj0iYXV0aCIsbi5lYz1XLmVycm9yQ29kZSxuLmVkPVcuZXJyb3JEZXRhaWwsbi5lcz1XLndpfHwiIixEPTIpOihuLnN1Y2Nlc3NCdXRVbnBsYXlhYmxlPSIxIixuLmRpc3Bvc2VkPWAkeytXLnFOKCl9YCxuLmFmbXRzPWAkeysvYWRhcHRpdmVGb3JtYXRzLy50ZXN0KGIpfWAsbi5jcG49Vy5jbGllbnRQbGF5YmFja05vbmNlKTtyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IGcuQ2kodiwKbixEKSl9OwpEMXQ9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1XLmlzQWQoKSxiPSFELHY9RD8xOjM7Zm9yKGxldCBoPTA7aDx2O2grKyl7aWYoaD4wKXthd2FpdCBnLlV1KDVFMyk7dmFyIGs9bmV3IGcuUXgoIlJldHJ5aW5nIE9uZVBsYXRmb3JtIHJlcXVlc3QiLHthdHRlbXB0Omh9KTtnLkdxKGspfXRyeXthd2FpdCBnQWkobixXKTtyZXR1cm59Y2F0Y2goeCl7bGV0IEw9QiQoeCk7az1MLmVycm9yQ29kZTtsZXQgZT1uLkcoKS5TKCJodG1sNV91c2VfbmV0d29ya19lcnJvcl9jb2RlX2VudW1zIik/NDAxOiI0MDEiO2ImJms9PT0ibWFuaWZlc3QubmV0LmJhZHN0YXR1cyImJkwuZGV0YWlscy5yYz09PWUmJihiPSExLGg9PT12LTEmJih2Kz0xKSk7aWYoaD09PXYtMSlyZXR1cm4gbj1Yc2koRCxMLmRldGFpbHMpLG4uZGV0YWlscy5iYWNrZW5kPSJvcCIsbi5kZXRhaWxzLm9yaWdpbmVjPWssUHJvbWlzZS5yZWplY3Qobik7aWYoaz09PSJhdXRoInx8az09PSJtYW5pZmVzdC5uZXQucmV0cnlleGhhdXN0ZWQifHwKZy5DTihuLkcoKSkpcmV0dXJuIFByb21pc2UucmVqZWN0KEwpO24uaGFuZGxlRXJyb3IoTCk7aWYoajIoTC5zZXZlcml0eSkpYnJlYWt9fXJldHVybiBQcm9taXNlLnJlamVjdChYc2koRCx7YmFja2VuZDoib3AifSkpfTsKZ0FpPWFzeW5jIGZ1bmN0aW9uKG4sVyl7Vy5mZXRjaFR5cGU9ImdwIjt2YXIgRD1uLkcoKSxiPWcuSEUoRCxXLlYoKSk7Yj1iLk4/YXdhaXQgYi5OOmIuZ2V0VmFsdWUoKTt2YXIgdj15YShELGIpLGs9bEYoVyxuLmdldFBsYXllclNpemUoKSxuLmdldFZpc2liaWxpdHlTdGF0ZSgpKSxoPUxCKHF5aikseD1XLlYoKSxMPSgwLGcuUikoKSxlPSExLEc9ImVtcHR5IjtiPTA7bi5EaygicHNucyIpO3ZhciByPXtsZzpmdW5jdGlvbihOKXtOLnJlYWR5U3RhdGU9PT0yJiZuLkRrKCJwc19jIil9fTsKaWYoRC5KKXtsZXQgTj17dmlkZW9JZDpTdHJpbmcoVy52aWRlb0lkKX0sSD1kbChXLmdldFJlc29sdmVVcmxSZXNwb25zZSgpKTtIJiYoTi5wYXJhbXM9SCk7Vy5wbGF5bGlzdElkJiYoTi5wbGF5bGlzdElkPVN0cmluZyhXLnBsYXlsaXN0SWQpKTtyLkhuPXtSTDp5SCgicGxheWVyIixOKX19dj1hd2FpdCBnLnJfKHYsayxoLHZvaWQgMCxyKTtuLkRrKCJwc25yIik7aWYoIVcucU4oKSl7dj8iZXJyb3IiaW4gdiYmdi5lcnJvcj8oZT0hMCxHPWBlc2Y6JHt2LmVycm9yLm1lc3NhZ2V9YCxiPXYuZXJyb3IuY29kZSk6di5lcnJvck1ldGFkYXRhJiYoZT0hMCxHPSJpdHMiLGI9di5lcnJvck1ldGFkYXRhLnN0YXR1cyk6ZT0hMDtpZihlKXJldHVybiBlPTAsdj0oKDAsZy5SKSgpLUwpLnRvRml4ZWQoKSxMPXt9LEw9RC5TKCJodG1sNV91c2VfbmV0d29ya19lcnJvcl9jb2RlX2VudW1zIik/e2JhY2tlbmQ6Im9wIixyYzpiLHJ0OnYscmVhc29uOkcsaGFzX2twdDpXLkhKPyIxIjoiMCIsaGFzX21keF9lbnY6Vy5tZHhFbnZpcm9ubWVudD8KIjEiOiIwIixoYXNfb21pdF9rZXlfZmxhZzpnLkFyKCJJTk5FUlRVQkVfT01JVF9BUElfS0VZX1dIRU5fQVVUSF9IRUFERVJfSVNfUFJFU0VOVCIpPyIxIjoiMCIsaGFzX3BhZ2VfaWQ6RC5wYWdlSWQ/IjEiOiIwIixoYXNfdG9rZW46eD8iMSI6IjAiLGhhc192dnQ6Vy5EPyIxIjoiMCIsaXNfbWR4OlcuaXNNZHhQbGF5YmFjaz8iMSI6IjAiLG1keF9jdHJsOlcuaTV8fCIiLHRva2VuX2VxOng9PT1XLlYoKT8iMSI6IjAifTp7YmFja2VuZDoib3AiLHJjOmAke2J9YCxydDp2LHJlYXNvbjpHLGhhc19rcHQ6Vy5ISj8iMSI6IjAiLGhhc19tZHhfZW52OlcubWR4RW52aXJvbm1lbnQ/IjEiOiIwIixoYXNfb21pdF9rZXlfZmxhZzpnLkFyKCJJTk5FUlRVQkVfT01JVF9BUElfS0VZX1dIRU5fQVVUSF9IRUFERVJfSVNfUFJFU0VOVCIpPyIxIjoiMCIsaGFzX3BhZ2VfaWQ6RC5wYWdlSWQ/IjEiOiIwIixoYXNfdG9rZW46eD8iMSI6IjAiLGhhc192dnQ6Vy5EPyIxIjoiMCIsaXNfbWR4OlcuaXNNZHhQbGF5YmFjaz8KIjEiOiIwIixtZHhfY3RybDpXLmk1fHwiIix0b2tlbl9lcTp4PT09Vy5WKCk/IjEiOiIwIn0sVz0ibWFuaWZlc3QubmV0LmNvbm5lY3QiLGI9PT00Mjk/KFc9ImF1dGgiLGU9Mik6Yj4yMDAmJihXPSJtYW5pZmVzdC5uZXQuYmFkc3RhdHVzIixiPT09NDAwJiYoZT0yKSksUHJvbWlzZS5yZWplY3QobmV3IGcuQ2koVyxMLGUpKTtXLmxvYWRpbmc9ITE7emYoVyx7cmF3X3BsYXllcl9yZXNwb25zZTp2fSwhMCk7Zy5DTihXLkcoKSkmJnYmJnYudHJhY2tpbmdQYXJhbXMmJmcueXIodi50cmFja2luZ1BhcmFtcyk7aWYoVy5lcnJvckNvZGUpcmV0dXJuIEQ9e2VjOlcuZXJyb3JDb2RlLGVkOlcuZXJyb3JEZXRhaWwsZXM6Vy53aXx8IiJ9LGI9ImF1dGgiLGcuQ04oVy5HKCkpJiZXLmVycm9yQ29kZSYmKGI9Vy5lcnJvckNvZGUpLFByb21pc2UucmVqZWN0KG5ldyBnLkNpKGIsRCwyKSk7aWYoIVcubG9hZGluZyYmIUhqKFcpKXJldHVybiBEPVcuaXNBZCgpPyJhdXRoIjoibWFuaWZlc3QubmV0LnJldHJ5ZXhoYXVzdGVkIiwKUHJvbWlzZS5yZWplY3QobmV3IGcuQ2koRCx7c3VjY2Vzc0J1dFVucGxheWFibGU6IjEiLGhhc01lZGlhOmcuWUwoVyk/IjEiOiIwIn0sMikpfX07CldyaD1hc3luYyBmdW5jdGlvbihuLFcsRCl7ZnVuY3Rpb24gYigpe3JldHVybiEwfQpmdW5jdGlvbiB2KGUpe2U9QiQoZSk7aWYoajIoZS5zZXZlcml0eSkpcmV0dXJuIFByb21pc2UucmVqZWN0KGUpO24uaGFuZGxlRXJyb3IoZSk7cmV0dXJuITF9CnZhciBrPXNfMihuLkcoKSxXLG4uZ2V0UGxheWVyU2l6ZSgpLG4uZ2V0VmlzaWJpbGl0eVN0YXRlKCksbi5pc0Z1bGxzY3JlZW4oKSksaD1XLmlzQWQoKSx4PWg/MTozO2ZvcihsZXQgZT0wO2U8eDtlKyspe3ZhciBMPWs7ZT4wJiYoYXdhaXQgZy5VdSg1RTMpLEw9e3BsYXllcnJldHJ5OmUscGxheWVycmV0cnlzcmM6RH0saHx8KEwucmVjb3Zlcj0iZW1iZWRkZWQiKSxMPWcubHcoayxMKSk7aWYoYXdhaXQgR1UxKFcsTCkudGhlbihiLHYpKXJldHVybn1XPWg/ImF1dGgiOiJtYW5pZmVzdC5uZXQucmV0cnlleGhhdXN0ZWQiO0Q9aD8yOjE7aWYoIWgmJk1hdGgucmFuZG9tKCk8MUUtNCl0cnl7Zy5HcShuZXcgZy5ReCgiYi8xNTIxMzE1NzEiLGJ0b2EoaykpKX1jYXRjaHt9cmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBnLkNpKFcse2JhY2tlbmQ6Imd2aSJ9LEQpKX07CkdVMT1hc3luYyBmdW5jdGlvbihuLFcpe2Z1bmN0aW9uIEQoTCl7aWYoIW4ucU4oKSl7TD1MP0wuc3RhdHVzOi0xO3ZhciBlPTAsRz0oKDAsZy5SKSgpLXgpLnRvRml4ZWQoKTtHPWIuUygiaHRtbDVfdXNlX25ldHdvcmtfZXJyb3JfY29kZV9lbnVtcyIpP3tiYWNrZW5kOiJndmkiLHJjOkwscnQ6R306e2JhY2tlbmQ6Imd2aSIscmM6YCR7TH1gLHJ0Okd9O3ZhciByPSJtYW5pZmVzdC5uZXQuY29ubmVjdCI7TD09PTQyOT8ocj0iYXV0aCIsZT0yKTpMPjIwMCYmKHI9Im1hbmlmZXN0Lm5ldC5iYWRzdGF0dXMiLEw9PT00MDAmJihlPTIpKTtyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IGcuQ2kocixHLGUpKX19Cm4uZmV0Y2hUeXBlPSJndmkiO3ZhciBiPW4uRygpLHY7KHY9TlFpKG4pKT8odj17Zm9ybWF0OiJSQVciLG1ldGhvZDoiUE9TVCIsd2l0aENyZWRlbnRpYWxzOiEwLHRpbWVvdXQ6M0U0LHBvc3RQYXJhbXM6dn0sVz1nLmx3KFcse2FjdGlvbl9kaXNwbGF5X3Bvc3Q6MX0pKTp2PXtmb3JtYXQ6IlJBVyIsbWV0aG9kOiJHRVQiLHdpdGhDcmVkZW50aWFsczohMCx0aW1lb3V0OjNFNH07dmFyIGs9e307Yi5zZW5kVmlzaXRvcklkSGVhZGVyJiZuLnZpc2l0b3JEYXRhJiYoa1siWC1Hb29nLVZpc2l0b3ItSWQiXT1uLnZpc2l0b3JEYXRhKTt2YXIgaD1nLlloKGIuZXhwZXJpbWVudHMsImRlYnVnX3NoZXJsb2dfdXNlcm5hbWUiKTtoJiYoa1siWC1Zb3V0dWJlLVNoZXJsb2ctVXNlcm5hbWUiXT1oKTtPYmplY3Qua2V5cyhrKS5sZW5ndGg+MCYmKHYuaGVhZGVycz1rKTt2YXIgeD0oMCxnLlIpKCk7dj1hd2FpdCBlNChnLnI4LFcsdikudGhlbih2b2lkIDAsZnVuY3Rpb24oTCl7cmV0dXJuIEQoTC54aHIpfSk7CmlmKCF2fHwhdi5yZXNwb25zZVRleHQpcmV0dXJuIEQodik7bi5sb2FkaW5nPSExO3Y9Zy5pdyh2LnJlc3BvbnNlVGV4dCk7emYobix2LCEwKTtpZihuLmVycm9yQ29kZSlyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IGcuQ2koImF1dGgiLHtlYzpuLmVycm9yQ29kZSxlZDpuLmVycm9yRGV0YWlsLGVzOm4ud2l8fCIifSwyKSk7aWYoIW4ubG9hZGluZyYmIUhqKG4pKXJldHVybiB2PW4uaXNBZCgpPyJhdXRoIjoibWFuaWZlc3QubmV0LnJldHJ5ZXhoYXVzdGVkIixQcm9taXNlLnJlamVjdChuZXcgZy5DaSh2LHtzdWNjZXNzQnV0VW5wbGF5YWJsZToiMSJ9LDIpKX07ClhzaT1mdW5jdGlvbihuLFcpe3JldHVybiBuZXcgZy5DaShuPyJhdXRoIjoibWFuaWZlc3QubmV0LnJldHJ5ZXhoYXVzdGVkIixXLG4/MjoxKX07ClVCPWFzeW5jIGZ1bmN0aW9uKG4sVyxEPSExKXt2YXIgYj1uLkcoKTtEJiYoIWcuJDYoYil8fElUKFcpIT09ImVtYmVkZGVkIil8fFcuZkN8fElUKFcpIT09ImFkdW5pdCImJihnLms2KGIpfHxnLlhDKGIpfHxnLk1WKGIpfHx0dShiKXx8Zy5EZihiKXx8bG8oYik9PT0iV0VCX0NSRUFUT1IiKXx8KEQ9Zy5IRShiLFcuVigpKSxEPUQuTj9hd2FpdCBELk46RC5nZXRWYWx1ZSgpLHR5MihuLFcsRCkpfTsKdHkyPWFzeW5jIGZ1bmN0aW9uKG4sVyxEKXt0cnl7bGV0IGs9bi5HKCksaD15YShrLEQpO3ZhciBiPVcuRygpO2xldCB4PWcubzkoKSxMPXtjb250ZXh0Omcub1QoVyksdmlkZW9JZDpXLnZpZGVvSWQscmFjeUNoZWNrT2s6Vy5yYWN5Q2hlY2tPayxjb250ZW50Q2hlY2tPazpXLmNvbnRlbnRDaGVja09rLGF1dG9uYXZTdGF0ZToiU1RBVEVfTk9ORSJ9O0lUKFcpPT09ImFkdW5pdCImJihMLmlzQWRQbGF5YmFjaz0hMCk7Yi5lbWJlZENvbmZpZyYmKEwuc2VyaWFsaXplZFRoaXJkUGFydHlFbWJlZENvbmZpZz1iLmVtYmVkQ29uZmlnKTtiLlluJiYoTC5zaG93Q29udGVudE93bmVyT25seT0hMCk7Vy5TYSYmKEwuc2hvd1Nob3J0c09ubHk9ITApO3guUVEoMTQxKSYmKEwuYXV0b25hdlN0YXRlPXguUVEoMTQwKT8iU1RBVEVfT0ZGIjoiU1RBVEVfT04iKTtpZihnLmVNKGIpKXtsZXQgTj14LlFRKDY1KTtEPU4hPW51bGw/IU46ITE7bGV0IEg9ISFnLlpJKCJ5dC1wbGF5ZXItc3RpY2t5LWNhcHRpb24iKTsKTC5jYXB0aW9uc1JlcXVlc3RlZD1EJiZIfWxldCBlPWIuZ2V0V2ViUGxheWVyQ29udGV4dENvbmZpZygpPy5lbmNyeXB0ZWRIb3N0RmxhZ3M7ZSYmKEwucGxheWJhY2tDb250ZXh0PXtlbmNyeXB0ZWRIb3N0RmxhZ3M6ZX0pO3ZhciB2PUw7bGV0IEc9TEIoJDFDKTtuLkRrKCJ3bl9zIik7Yj17fTtrLkomJihiLkhuPXtSTDp5SCgibmV4dCIse3ZpZGVvSWQ6U3RyaW5nKFcudmlkZW9JZCl9KX0pO2xldCByPWF3YWl0IGcucl8oaCx2LEcsdm9pZCAwLGIpO24uRGsoInduX3IiKTshcnx8ImVycm9yImluIHImJnIuZXJyb3J8fChnLkNOKFcuRygpKSYmci50cmFja2luZ1BhcmFtcyYmZy55cihyLnRyYWNraW5nUGFyYW1zKSx6ZihXLHtyYXdfd2F0Y2hfbmV4dF9yZXNwb25zZTpyfSwhMSkpfWNhdGNoKGspe319OwpiVVU9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1nLkhFKG4uRygpLFcuVigpKTtEPUQuTj9hd2FpdCBELk46RC5nZXRWYWx1ZSgpO3I2dyhuLFcsRCl9OwpyNnc9YXN5bmMgZnVuY3Rpb24obixXLEQpe249bi5HKCk7dHJ5e2xldCBoPXlhKG4sRCk7bGV0IHg9e2NvbnRleHQ6Zy5vVChXKSxwbGF5ZXJSZXF1ZXN0Ont2aWRlb0lkOlcudmlkZW9JZH0sZGlzYWJsZVBsYXllclJlc3BvbnNlOiEwfSxMPVcuZ2V0UmVzb2x2ZVVybFJlc3BvbnNlKCk7aWYoTCl7bGV0IHI9ZGwoTCk7ciYmKHgucGxheWVyUmVxdWVzdC5wYXJhbXM9cik7bGV0IE49ajcoTCk/LnBhcmFtcztOJiYoeC5wYXJhbXM9Til9dmFyIGI9eDtsZXQgZT1MQihzdjIpO0Q9e307aWYobi5KKXtsZXQgcj17dmlkZW9JZDpTdHJpbmcoVy52aWRlb0lkKX07dmFyIHYsaz1XLmdldFJlc29sdmVVcmxSZXNwb25zZSgpOyh2PWo3KGspPy5wYXJhbXMpJiYoci5wYXJhbXM9dik7RC5Ibj17Ukw6eUgoInJlZWxfaXRlbV93YXRjaCIscil9fWxldCBHPWF3YWl0IGcucl8oaCxiLGUsdm9pZCAwLEQpOyFHfHwiZXJyb3IiaW4gRyYmRy5lcnJvcnx8emYoVyx7cmF3X3JlZWxfaXRlbV93YXRjaF9yZXNwb25zZTpHfSl9Y2F0Y2goaCl7fX07CngxVT1hc3luYyBmdW5jdGlvbihuLFcpe3RyeXtsZXQgaz1uLkcoKSxoPWcuSEUoayxXLlYoKSkseD1oLk4/YXdhaXQgaC5OOmguZ2V0VmFsdWUoKSxMPXlhKGsseCk7dmFyIEQ9bi5nZXRQbGF5ZXJTaXplKCksYj1uLmdldFZpc2liaWxpdHlTdGF0ZSgpO3ZhciB2PXtjb250ZXh0Omcub1QoVyksdXJsOmBodHRwczovL3d3dy55b3V0dWJlLmNvbS9lbWJlZC8ke1cudmlkZW9JZH1gLHBsYXliYWNrQ29udGV4dDp7Y29udGVudFBsYXliYWNrQ29udGV4dDpkayhXLEQsYil9fTtsZXQgZT1MQihONGgpLEc9YXdhaXQgZy5yXyhMLHYsZSk7Vy5xTigpfHxHJiZ6ZihXLHtyYXdfcmVzb2x2ZV91cmxfcmVzcG9uc2U6R30sITApfWNhdGNoKGspe319Owpwc3I9ZnVuY3Rpb24obixXKXtuLkRrKCJ2aXIiKTtuLkRrKCJwc19zIik7Zy5nXygidmlyIix2b2lkIDAsInZpZGVvX3RvX2FkIik7Vz1McjEobixXKTtXLnRoZW4oZnVuY3Rpb24oKXtuLkRrKCJ2aXJjIik7Zy5nXygidmlyYyIsdm9pZCAwLCJ2aWRlb190b19hZCIpO24uRGsoInBzX3IiKTtnLmdfKCJwc19yIix2b2lkIDAsInZpZGVvX3RvX2FkIil9LGZ1bmN0aW9uKCl7bi5EaygidmlyYyIpOwpnLmdfKCJ2aXJjIix2b2lkIDAsInZpZGVvX3RvX2FkIil9KTsKcmV0dXJuIFd9OwpFQj1mdW5jdGlvbigpe3ZhciBuPUcxKCk7cmV0dXJuISghbnx8bj09PSJ2aXNpYmxlIil9OwpIVWk9ZnVuY3Rpb24obil7dmFyIFc9WXlpKCk7VyYmZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihXLG4sITEpfTsKZnZpPWZ1bmN0aW9uKG4pe3ZhciBXPVl5aSgpO1cmJmRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoVyxuLCExKX07Cll5aT1mdW5jdGlvbigpe2lmKGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSl2YXIgbj0idmlzaWJpbGl0eWNoYW5nZSI7ZWxzZXtpZighZG9jdW1lbnRbcTArIlZpc2liaWxpdHlTdGF0ZSJdKXJldHVybiIiO249cTArInZpc2liaWxpdHljaGFuZ2UifXJldHVybiBufTsKSXZoPWZ1bmN0aW9uKG4pe0o2cj1ufTsKU3lyPWZ1bmN0aW9uKG4pe2lWPW59OwpTUE09ZnVuY3Rpb24obil7dmFyIFc9bi5oVTtuPW4udmlkZW9EYXRhO3ZhciBEPVpWKFcsbik7Vy5TKCJodG1sNV9kaXNhYmxlX2NsaWVudF9hdXRvbmF2X2NhcF9mb3Jfb25lc2llIil8fEQuY29tcG9zZShVWChXLG4pKTtyZXR1cm4gRH07CkdYPWZ1bmN0aW9uKG4sVyl7dVYobixXLnJlYXNvbixXLk4uaW5mbyxXLnNvdXJjZSxXLnRva2VuKX07Cm9jPWZ1bmN0aW9uKG4sVyl7bi5XSigibG9jYWxtZWRpYWNoYW5nZSIsVyl9OwpQOVU9ZnVuY3Rpb24obixXKXtuLnRiLmRUKCl8fChuLlUoInNnYXAiLHtmOld9KSxuLnRiLmNsZWFyUXVldWUoITEsVz09PSJwZSIpKX07Cm0xVT1mdW5jdGlvbihuKXtuLm1lZGlhRWxlbWVudCYmKG4ubWVkaWFTb3VyY2U/KGRzKG4pLG4ubXkoKSxBNmoobiwhMSkpOihuLnZpZGVvRGF0YS5jSiYmbi52aWRlb0RhdGEuY0ouWCgpLG4ubWVkaWFFbGVtZW50LnN0b3BWaWRlbygpKSxuLnBsYXlWaWRlbygpKX07CkljPWZ1bmN0aW9uKG4pe3JldHVybiBuLlMoImh0bWw1X2Rpc2FibGVfdmlkZW9fcGxheWVyX2luaXRpYXRlZF9zZWVrcyIpJiZnLllOKG4udmlkZW9EYXRhKX07CmxWPWZ1bmN0aW9uKG4sVyl7bi54byYmelkobik7bi54bz1uZXcgZy5sNShXKjFFMywweDdmZmZmZmZmZmZmZmYpO24ueG8ubmFtZXNwYWNlPSJlbmRjciI7bi5hZGRDdWVSYW5nZShuLnhvKX07CnpZPWZ1bmN0aW9uKG4pe24ucmVtb3ZlQ3VlUmFuZ2Uobi54byk7bi54bz1udWxsfTsKamg9ZnVuY3Rpb24obil7aWYobi52aWRlb0RhdGEuVyYmbi52aWRlb0RhdGEuVy5OKCkpe3ZhciBXPVRZKG4pO24ubG9hZGVyJiZuLmxvYWRlci5tbyhXKX19OwpCZD1mdW5jdGlvbihuLFc9ITApe24uQi5BbSYmIW4udmlkZW9EYXRhLmJhY2tncm91bmRhYmxlJiZuLm1lZGlhRWxlbWVudCYmIW4uRTgoKSYmKG4uaXNCYWNrZ3JvdW5kKCkmJm4ubWVkaWFFbGVtZW50LkdDKCk/KG4uVSgiYmdtb2JpbGUiLHtzdXNwZW5kOjF9KSxuLm9KKCEwLCEwKSk6IW4uaXNCYWNrZ3JvdW5kKCkmJlcmJkN1KG4pJiZuLlUoImJnbW9iaWxlIix7cmVzdW1lOjF9KSl9OwpGSj1mdW5jdGlvbihuKXtpZighZy5EUChuLnZpZGVvRGF0YSkpcmV0dXJuIE5hTjt2YXIgVz0wO24ubG9hZGVyJiZuLnZpZGVvRGF0YS5OJiYoVz1JNChuLnZpZGVvRGF0YSk/bi5sb2FkZXIucWgoKTpuLnZpZGVvRGF0YS5OLnFoKCkpO3JldHVybigwLGcuUikoKS8xRTMtbi5oQygpLVd9OwpLcmI9ZnVuY3Rpb24obixXKXtpZihuLnBsYXllclR5cGU9PT0yfHxuLkIuQ20pVy5vYz0hMDt2YXIgRD1UbChXLkZGLFcuRncsbi5CLkosbi5CLkspO0QmJihXLmFkRm9ybWF0PUQpO24ucGxheWVyVHlwZT09PTImJihXLkd1PSEwKTtpZihuLmlzRnVsbHNjcmVlbigpfHxuLkIuSilEPWcuWkkoInl0LXBsYXllci1hdXRvbmF2c3RhdGUiKSxXLmF1dG9uYXZTdGF0ZT1EfHwobi5CLko/MjpuLnZpZGVvRGF0YS5hdXRvbmF2U3RhdGUpO1cuZW5kU2Vjb25kcyYmVy5lbmRTZWNvbmRzPlcuc3RhcnRTZWNvbmRzJiZsVihuLFcuZW5kU2Vjb25kcyl9Owp3cz1mdW5jdGlvbihuKXtuLmxvYWRlciYmKG4ubG9hZGVyLmRpc3Bvc2UoKSxuLmxvYWRlcj1udWxsLG1vKG4uZGEsbnVsbCkpO24ucGcoKT9PVWgobik6bi5teSgpfTsKVTFpPWZ1bmN0aW9uKG4pe2lmKCFuLnBsYXllclN0YXRlLk4oMTI4KSlpZihuLnZpZGVvRGF0YS5pc0xvYWRlZCgpLG4uaWw9Zy5STShuLnZpZGVvRGF0YS5JSiksZy5ZTChuLnZpZGVvRGF0YSkpe24ubVEudGljaygiYnBkX3MiKTtNOShuKS50aGVuKCgpPT57bi5tUS50aWNrKCJicGRfYyIpO2lmKCFuLnFOKCkpe24uTkwmJihuLkJOKEJyKEJyKG4ucGxheWVyU3RhdGUsNTEyKSwxKSksQ3UobikpO3ZhciBEPW4udmlkZW9EYXRhO0QuZW5kU2Vjb25kcyYmRC5lbmRTZWNvbmRzPkQuc3RhcnRTZWNvbmRzJiZsVihuLEQuZW5kU2Vjb25kcyk7bi5MUi5maW5pc2hlZD0hMDtSYyhuLCJkYXRhbG9hZGVkIik7bi5qSC5zdGFydGVkJiZRYShuKTtsNVUobi5oVSxuLkRoKX19KTsKbi5TKCJodG1sNV9sb2dfbWVkaWFfcGVyZl9pbmZvIikmJm4uVSgibG91ZG5lc3MiLHt2Om4udmlkZW9EYXRhLllLLnRvRml4ZWQoMyl9LCEwKTt2YXIgVz1uLm1lZGlhRWxlbWVudD8uZV8oKTtpZihXJiYiZGlzYWJsZVBpY3R1cmVJblBpY3R1cmUiaW4gVyYmbi5CLkh4KXRyeXtXLmRpc2FibGVQaWN0dXJlSW5QaWN0dXJlPW4uQi5MQiYmIW4udmlkZW9EYXRhLmJhY2tncm91bmRhYmxlfWNhdGNoKEQpe2cuR3EoRCl9UFJiKG4pO24uQkg9bmV3IFpVcihuLnZpZGVvRGF0YSl9ZWxzZSBSYyhuLCJkYXRhbG9hZGVkIil9Owp5Nlo9ZnVuY3Rpb24obil7dmFyIFc9bi52aWRlb0RhdGE7cHNyKG4sbi5paikudGhlbih2b2lkIDAsRD0+e24udmlkZW9EYXRhIT09V3x8Vy5xTigpfHwoRD1CJChEKSxELmVycm9yQ29kZT09PSJhdXRoIiYmbi52aWRlb0RhdGEuZXJyb3JEZXRhaWwmJm4udmlkZW9EYXRhLmVycm9yRGV0YWlsIT09IjciP24uUFYoRC5lcnJvckNvZGUsMix1bmVzY2FwZShuLnZpZGVvRGF0YS5lcnJvclJlYXNvbiksZy5UQyhELmRldGFpbHMpLG4udmlkZW9EYXRhLmVycm9yRGV0YWlsLG4udmlkZW9EYXRhLndpfHx2b2lkIDApOm4uaGFuZGxlRXJyb3IoRCkpfSl9OwpFQUM9ZnVuY3Rpb24obil7cmV0dXJuIGcuazYobi5CKSYmbi52aWRlb0RhdGEuaXNMaXZlUGxheWJhY2smJighbi5CLlMoImh0bWw1X2FsbG93X211bHRpdmlld190aWxlX3ByZWxvYWQiKXx8IW4udmlkZW9EYXRhLmxpdmVQcmVsb2FkKX07Ck05PWZ1bmN0aW9uKG4pe3dzKG4pO24uRGg9bnVsbDt2YXIgVz1Vancobi5CLG4udmlkZW9EYXRhLG4uRTgoKSk7bi50Uj1XO24udFIudGhlbihEPT57aVV0KG4sRCl9LEQ9PntuLnFOKCl8fChEPUIkKEQpLG4udmlzaWJpbGl0eS5pc0JhY2tncm91bmQoKT8oVmEobiwidnBfbm9uZV9hdmFpbCIpLG4udFI9bnVsbCxuLkxSLnJlc2V0KCkpOihuLkxSLmZpbmlzaGVkPSEwLG4uUFYoRC5lcnJvckNvZGUsRC5zZXZlcml0eSwiSFRNTDVfTk9fQVZBSUxBQkxFX0ZPUk1BVFNfRkFMTEJBQ0siLGcuVEMoRC5kZXRhaWxzKSkpKX0pOwpyZXR1cm4gV307ClBSYj1mdW5jdGlvbihuKXtpZihLeihuLnZpZGVvRGF0YSwiaHRtbDVfc2V0X2RlYnVnZ2luZ19vcHRfaW4iKSl7bGV0IFc9Zy5vOSgpO2lmKCFXLlFRKDE4Mykpe249YGYke01hdGguZmxvb3IoMTgzLzMxKSsxfWA7bGV0IEQ9VDEobil8fDA7RHw9MjY4NDM1NDU2O0Q9PT0wP2RlbGV0ZSBsT1tuXTpsT1tuXT1ELnRvU3RyaW5nKDE2KS50b1N0cmluZygpO1cuc2F2ZSgpfX19OwpSYz1mdW5jdGlvbihuLFc9ImRhdGF1cGRhdGVkIil7bi5XSigiaW50ZXJuYWx2aWRlb2RhdGFjaGFuZ2UiLFcsbi52aWRlb0RhdGEpfTsKaVV0PWZ1bmN0aW9uKG4sVyl7aWYoIW4ucU4oKSYmIVcudmlkZW9EYXRhLnFOKCkpe24uRGg9VztGM2Iobi5kYSxuLkRoKTtpZihuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayl7dmFyIEQ9dVJyKG4udGIuUXAsbi52aWRlb0RhdGEudmlkZW9JZCl8fG4ubG9hZGVyJiYhaXNOYU4obi5sb2FkZXIuQ0gpO0Q9bi5TKCJodG1sNV9vbmVzaWVfbGl2ZSIpJiZEO0ljKG4pfHxuLnZpZGVvRGF0YS5UQz4wJiYhSTQobi52aWRlb0RhdGEpfHxEfHxuLnNlZWtUbyhuLnJJKCkse3FkOiJ2aWRlb3BsYXllcl9wbGF5YmFja0RhdGEiLHNlZWtTb3VyY2U6MTh9KX1pZihuLnZpZGVvRGF0YS5XLk4oKSl7aWYoVGhpKG4udmlkZW9EYXRhKSl7bi5QVigiZm10Lm1pc3NpbmciLDIsIkJST1dTRVJfT1JfRVhURU5TSU9OX0VSUk9SIixnLlRDKHttaXNzYWJydXJsOjF9KSk7cmV0dXJufWlmKG4ubG9hZGVyKWcuR3EoRXJyb3IoIkR1cGxpY2F0ZWQgTG9hZGVyIikpO2Vsc2V7RD1nLmRNKG4uQi5leHBlcmltZW50cywKImh0bWw1X29uZXNpZV9kZWZlcl9jb250ZW50X2xvYWRlcl9tcyIpO2xldCBiPSgpPT57Y2QobiwoKT0+e24ucU4oKXx8bi5sb2FkZXJ8fG9BdChuKX0pfTsKRCYmbi5PUCgpJiZ1UnIobi50Yi5RcCxuLnZpZGVvRGF0YS5Xaik/Zy5uJChiLEQpOmIoKX19ZWxzZSFuLnZpZGVvRGF0YS5XLk4oKSYmT1Mobi52aWRlb0RhdGEpJiZvYyhuLG5ldyBhYyhuLnZpZGVvRGF0YS52aWRlb0lkfHwiIiw0KSk7bi51digpO3VpaihXKS50aGVuKCgpPT57dmFyIGI9e307bi5zVChiKTtuLkIuV1goKSYmbi5TKCJodG1sNV9sb2dfbWVkaWFfcGVyZl9pbmZvIikmJm4uVSgiYXYxSW5mbyIsYik7amgobil9KX19OwpDdT1mdW5jdGlvbihuLFc9ITEpe2lmKCFuLm1lZGlhRWxlbWVudHx8IW4udmlkZW9EYXRhLlcpcmV0dXJuITE7dmFyIEQ9ZDEyKG4sVyksYj1uLm1lZGlhRWxlbWVudC5HQygpLHY9ITE7YiYmYi5lcXVhbHMoRCl8fCh6cGkobixEKSx2PSEwKTtuLnBsYXllclN0YXRlLk4oMil8fFFidyhuLmRhLFcpO2E6e1c9djtpZihnLllOKG4udmlkZW9EYXRhKSl7aWYoIW4udmlkZW9EYXRhLk1pKCkpYnJlYWsgYX1lbHNlIGlmKCFnLnF1KG4udmlkZW9EYXRhKSlicmVhayBhO2lmKG4ubWVkaWFFbGVtZW50KWlmKChEPW4udmlkZW9EYXRhLmopJiZuLm1lZGlhRWxlbWVudC5LKCkpe2I9bi5tZWRpYUVsZW1lbnQuZV8oKTtpZihuLkxBKWlmKGIhPT1uLkxBLmVsZW1lbnQpZHMobik7ZWxzZSBpZihXJiZELmZsYXZvcj09PSJmYWlycGxheSImJiF6USgpKWRzKG4pO2Vsc2UgYnJlYWsgYTtpZihuLlMoImh0bWw1X3JlcG9ydF9lcnJvcl9mb3JfdW5zdXBwb3J0ZWRfdHZvc193aWRldmluZSIpJiZ6USgpJiYKRC5mbGF2b3I9PT0id2lkZXZpbmUiKW4uUFYoImZtdC51bnBsYXlhYmxlIiwxLCJIVE1MNV9OT19BVkFJTEFCTEVfRk9STUFUU19GQUxMQkFDSyIsInRyZy51bnNwdHR2b3N3aWRldmluZSIpO2Vsc2V7bi5MQT1uZXcgbHZ3KGIsbi52aWRlb0RhdGEsbi5CLG4ubWVkaWFFbGVtZW50LG4uZGgpO24uTEEuc3Vic2NyaWJlKCJsaWNlbnNlZXJyb3IiLG4uYm8sbik7bi5MQS5zdWJzY3JpYmUoInF1YWxpdHljaGFuZ2UiLG4uVzQsbik7bi5MQS5zdWJzY3JpYmUoImhlYXJ0YmVhdHBhcmFtcyIsbi5iWixuKTtuLkxBLnN1YnNjcmliZSgia2V5c3RhdHVzZXNjaGFuZ2UiLG4uWVYsbik7bi5MQS5zdWJzY3JpYmUoImN0bXAiLG4uVSxuKTtmb3IobGV0IGsgb2Ygbi5EYi5rZXlzKVc9bi5EYi5nZXQoayksbi5MQS5XbihXKTtuLlMoImh0bWw1X2VtZV9sb2FkZXJfc3luYyIpfHxuLkRiLlRpKCl9fWVsc2Ugbi5QVigiZm10LnVucGxheWFibGUiLDEsIkhUTUw1X05PX0FWQUlMQUJMRV9GT1JNQVRTX0ZBTExCQUNLIiwKInRyZy51cGRhdGVkcm0iKX1yZXR1cm4gdn07CmNkPWZ1bmN0aW9uKG4sVyl7bi5CLmVCJiZuLkIuWnQoKS5OLlFRKG5hKT9TayhuLkIuZUIsVywoKT0+e0p1KG4uQik7bi5CLmVCPXZvaWQgMDtXKCl9KTpXKCl9OwpvQXQ9ZnVuY3Rpb24obil7dmFyIFc9bi52aWRlb0RhdGEuTixEPXtjcG46bi52aWRlb0RhdGEuY2xpZW50UGxheWJhY2tOb25jZSxjOm4uQi5OLmMsY3ZlcjpuLkIuTi5jdmVyfTtmb3IobGV0IFtoLHhdb2YgT2JqZWN0LmVudHJpZXMoRCkpe0Q9aDt2YXIgYj14O2Zvcih2YXIgdiBvZiBPYmplY3QudmFsdWVzKFcuTikpdi5YYi5jSihELGIpO1cuWT8uY0ooRCxiKX12PW4uQjtEPW4udmlkZW9EYXRhO2I9bi5pajtXPW5ldyBnLlQ0Mih2KTt2YXIgaz1OOFooe2hhc1N1YmZyYWdtZW50ZWRGbXA0OkQuaGFzU3ViZnJhZ21lbnRlZEZtcDQsSTI6RC5JMn0pO1cuVj1rO1cuTz1ELm1heFJlYWRBaGVhZE1lZGlhVGltZU1zLzFFM3x8Vy5PO2IuWC5MZygpPT09Yi5wb2xpY3kuTj9XLmpXPTEwOlcualc9RC5taW5SZWFkQWhlYWRNZWRpYVRpbWVNcy8xRTN8fFcualc7Vy5MSz1ELnJlYWRBaGVhZEdyb3d0aFJhdGVNcy8xRTN8fFcuTEs7RC5RNiYmKFcuWD0hMCk7Vy5OZj0hYWQoKTtnLms2KHYpfHwKIWFkKCk/KFcuZSQ9ODM4ODYwOCxXLnZKPTUyNDI4OCxXLklNPTUsVy5ISj0xMDQ4NTc2LFcuVDQ9MS41LFcuTnM9NDU4NzUyMCxsYigpJiYoVy5Ocz03ODY0MzIpLFcuSyo9MS4xLFcuY0oqPTEuMSxXLm1oPSEwKTp2LmomJihXLksqPTEuMyxXLmNKKj0xLjMpO2cub2QmJmcudWIoImNya2V5IikmJihrPXYuTi5jbW9kZWw9PT0iQ0hST01FQ0FTVC9BTkNIT1ZZIixXLmUkPTIwOTcxNTIwLFcudko9MTU3Mjg2NCxrJiYoVy5Ocz04MTI1MDAsVy5iTj0xRTMsVy5Saz01LFcuSEo9MjA5NzE1MikpO2cuYW8mJihXLm1oPSEwKTt2LnN1cHBvcnRzR2FwbGVzc0F1ZGlvKCl8fChXLkRUPSExKTtnLldYJiYoVy5ZJD0hMCk7Vy5zVj12LlMoImh0bWw1X3BlYWtfc2hhdmUiKTtELmhxKCkmJnYuUygiaHRtbDVfZGlzYWJsZV9wZWFrX3NoYXZlX2Zvcl9vbmVzaWUiKSYmKFcuc1Y9ITEpO2s9RC5OPy5YKCk7aWYoSTQoRCkpe1cuZVY9ITA7Vy5VVHx8KFcuZlI9ITApO1cuUFg9ITA7Vy5TVj0hMDtXLllyPQohMDtpZihELmxhdGVuY3lDbGFzcz09PSJVTFRSQUxPVyJ8fEQubGF0ZW5jeUNsYXNzPT09IkxPVyImJiF2LlMoImh0bWw1X2Rpc2FibGVfbG93X3BpcGVsaW5lIikpVy53bz0yLFcuQ3k9NDtXLnNKPUQuZGVmcmFnZ2VkRnJvbVN1YmZyYWdtZW50cztnLnBBKEQpJiYoVy5CVj0hMSk7Vy5DbT1nLkdsKHYpfUQuaXNBZCgpJiYoVy50TT0wLFcuSFk9MCk7Vy5UNz12LlMoImh0bWw1X3VsdHJhX2xvd19sYXRlbmN5X3N1YnNlZ21lbnRfcmVhZGFoZWFkIikmJkQubGF0ZW5jeUNsYXNzPT09IlVMVFJBTE9XIjtXLlc9di5XWCgpO2IuSi5YPUk0KEQpPy41OjA7RC5pc0xpdmVQbGF5YmFjayYmKFcuV2M9Zy5kTSh2LmV4cGVyaW1lbnRzLCJodG1sNV9taW5fc3RhcnR1cF9idWZmZXJlZF9tZWRpYV9kdXJhdGlvbl9mb3JfbGl2ZV9zZWNzIil8fC4yNSxXLm51PSExKTtELk1pKCkmJihXLm51PSExKTtXLnFqPSF2LlMoImh0bWw1X3NhYnJfa2VlcF9hbGxfcXVhbGl0eV9jb25zdHJhaW50cyIpO1cuQjM9CkxBKEQpO2hEKEQpJiYoVy5UNz0hMCxELmxhdGVuY3lDbGFzcz09PSJMT1ciP1cud2E9Zy5kTSh2LmV4cGVyaW1lbnRzLCJodG1sNV9qdW1ib19tb2JpbGVfc3Vic2VnbWVudF9yZWFkYWhlYWRfdGFyZ2V0Iik6RC5sYXRlbmN5Q2xhc3M9PT0iVUxUUkFMT1ciJiYoVy53YT1nLmRNKHYuZXhwZXJpbWVudHMsImh0bWw1X2p1bWJvX3VsbF9zdWJzZWdtZW50X3JlYWRhaGVhZF90YXJnZXQiKSksVy5iQj0hMCk7RC56VygpJiYoVy53eT0xLjMpO1cuWSQ9Vy5ZJHx8RC5mUjtXLkhpPShXLkhpfHxELkhpKSYmdi5LO1cuVjY9RC5LO3YuV1goKSYmKFcuUmE9ITApO0QuSyYmIWsmJihXLktvPSEwKTtELksmJkQuaXNBZCgpJiYoVy5LKj0xLjYsVy5jSio9MS42KTtPUyhEKSYmKFcuSj1ELnZpZGVvSWQsVy52bj0hMCxXLnN6PTEwMCxELnhoJiZELnhoLmxlbmd0aD4wJiYoVy5iVj1ELnhoKSk7Vy5lQj1ELlo5O1cublM9REsodix7fSxELld8fHZvaWQgMCxReihEKSk7Vy5iZD1SUShEKSYmKGcuTVYodil8fAp0dSh2KSk7Zy5ZTihEKSYmKFcuaj0hMCxXLkU1PWcuazYodikmJiFnLmQ4KCk/ITE6ITAsIVcuZTQmJnYuUygiaHRtbDVfc2Ficl9ub25fc3RyZWFtaW5nX3hocl9jbGllbnRfcmVxdWVzdF9jYW5jZWxsYXRpb24iKSYmKFcudlg9ITAsVy5DdT0hMCxXLlRJPWcuZE0odi5leHBlcmltZW50cywiaHRtbDVfc2Ficl9ub25fc3RyZWFtaW5nX3hocl9yZXF1ZXN0X2NhbmNlbGxhdGlvbl90aW1lb3V0X21zIil8fDhFMyxXLnN6PWcuZE0odi5leHBlcmltZW50cywiaHRtbDVfc2Ficl9ub25fc3RyZWFtaW5nX3hocl90aW1lb3V0X3JldHJ5X2xpbWl0Iil8fDMpLHYuUygiaHRtbDVfc2Ficl9yZXBvcnRfcGFydGlhbF9zZWdtZW50X2VzdGltYXRlZF9kdXJhdGlvbiIpJiYoVy5SRD0hMCksVy5OPSEwLFcudkY9di5TKCJodG1sNV90cmlnZ2VyX2xvYWRlcl93aGVuX2lkbGVfbmV0d29yayIpLFcuSjg9di5TKCJodG1sNV9zYWJyX3BhcnNlX2xpdmVfbWV0YWRhdGFfcGxheWJhY2tfYm91bmRhcmllcyIpLApXLmNMPXYuUygiaHRtbDVfY29uc3VtZV9vbmVzaWVfbmV4dF9yZXF1ZXN0X3BvbGljeV9mb3Jfc2FiciIpLFcuQVY9di5TKCJodG1sNV9sb2dfaGlnaF9yZXNfYnVmZmVyX3RpbWVsaW5lIikmJnYuV1goKSxXLmZDPXYuUygiaHRtbDVfZ2FwbGVzc19zYWJyX2J0bF9sYXN0X3NsaWNlIikmJkFKKEQpLFcucG89di5TKCJodG1sNV9yZXNldF9sYXN0X2FwcGVuZGVkX3NsaWNlX29uX3NlZWsiKSYmQUooRCksSTQoRCkmJihXLlZIPSEwLFcuUyQ9ITAsdi5TKCJodG1sNV9zaW1wbGlmaWVkX2JhY2t1cF90aW1lb3V0X3NhYnJfbGl2ZSIpJiYoVy5DdT0hMCxXLmJOPVcuZlopKSxXLmg4PXYuUygiaHRtbDVfc2VydmVfc3RhcnRfc2Vjb25kc19zZWVrX2Zvcl9wb3N0X2xpdmVfc2FiciIpLFcuczU9di5TKCJodG1sNV9mbHVzaF9pbmRleF9vbl91cGRhdGVkX3RpbWVzdGFtcF9vZmZzZXQiKSxXLlk9Zy5ZTihEKSxXLm9UPXYuUygiaHRtbDVfaWdub3JlX3BhcnRpYWxfc2VnbWVudF9mcm9tX2xpdmVfcmVhZGFoZWFkIiksCnYuUygiaHRtbDVfaW5jbHVkZV9wYXJ0aWFsX3NlZ21lbnRfZm9yX2p1bWJvX2xsIikmJmhEKEQpJiYoVy5vVD0hMSksVy5zMz12LlMoImh0bWw1X3VzZV9ub25fYWN0aXZlX2Jyb2FkY2FzdF9mb3JfcG9zdF9saXZlIiksVy5sbj12LlMoImh0bWw1X2NlbnRyYWxpemVkX3BsYXllcl90aW1lX2xpdmUiKSYmZy5ZTihEKSYmRC5pc0xpdmVQbGF5YmFja3x8di5TKCJodG1sNV91c2VfY2VudHJhbGl6ZWRfcGxheWVyX3RpbWUiKSYmZy5ZTihEKSxXLkdDPXYuUygiaHRtbDVfbG9nX2NlbnRyYWxpemVkX3BsYXllcl90aW1lIiksVy5BeD12LlMoImh0bWw1X3VzZV9jZW50cmFsaXplZF9wbGF5ZXJfdGltZV9maXhlcyIpJiZnLllOKEQpLFcuclc9di5TKCJodG1sNV9jb25zdW1lX29uZXNpZV9zYWJyX3NlZWsiKSxXLnR3PXYuUygiaHRtbDVfZW5hYmxlX3NhYnJfc2Vla19sb2FkZXJfcmVmYWN0b3IiKSxELmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpJiYoVy5VMT0hMCxXLldLPXYuUygiaHRtbDVfcmVzZXRfc2VydmVyX3N0aXRjaF9zdGF0ZV9mb3Jfbm9uX3NhYnJfc2VlayIpLApXLmllPXYuUygiaHRtbDVfcmVtb3ZlX3NzZGFpX2FwcGVuZF9wYXVzZSIpJiYhRC5ERigpLFcueXc9di5TKCJodG1sNV9zc2RhaV9sb2dfc3NldnRfaW5fbG9hZGVyX3RpbWVycyIpKSxXLkVaPXYuV1goKSxXLmxhdGVuY3lDbGFzcz1ELmxhdGVuY3lDbGFzcyxXLm1EPSFELnpXKCkmJnYuUygiaHRtbDVfcHJlYnVmZmVyX2luc3RyZWFtX21lZGlhX3ZvZCIpKTtXLnlFPWcubU8oRCk7Vy5Rcj12LlMoImh0bWw1X2VuYWJsZV9zYWJyX290Zl9pbl9jbGllbnQiKTtpZihELk5QKCl8fEQuaXNBZCgpKVcuZ089ITE7RC56VygpJiZ2LmV4cGVyaW1lbnRzLlp0KCkuTi5RUShqdk0pJiYoYj1ELmxDPy5nZXQoImlkIikpJiZiLmluY2x1ZGVzKCIlN0UiKSYmKFcuV2k9ITApO1NKKHYuVyxBVC5CSVRSQVRFKSYmKFcuTnM9TmFOKTtpZihiPWcuZE0odi5leHBlcmltZW50cywiaHRtbDVfcmVxdWVzdF9zaXplX21heF9rYiIpKVcuSEo9YioxMDI0O2lmKHYuVy5KKVcucFI9IjsgIitBVC5FWFBFUklNRU5UQUwubmFtZSsKIj1hbGxvd2VkIjtlbHNlIGlmKHYuZXhwZXJpbWVudHMudzAoKS5OLlFRKENSaSkmJmcuZDgoKSl7bGV0IHtuYW1lOmgsdmFsaWQ6eH09QVQuVFVOTkVMTU9ERTtXLnBSPWA7ICR7aH09JHt4fWB9dj1ELnNlcnZlclBsYXliYWNrU3RhcnRDb25maWc7dj8uZW5hYmxlJiZ2Py5wbGF5YmFja1N0YXJ0UG9saWN5JiYoVy5GZT0hMCxsUyhXLHYucGxheWJhY2tTdGFydFBvbGljeSwyKSk7dj1CNFUobik7bi5EYi5UaSgpO2E6e0Q9bi50Yi5RcDtpZihiPW4udmlkZW9EYXRhLnZpZGVvSWQpaWYoaz1ELk4uZ2V0KGIpKXtELk4ucmVtb3ZlKGIpO0Q9azticmVhayBhfUQ9dm9pZCAwfW4ubG9hZGVyPW5ldyBnLlc4KG4sbi5paixXLG4udmlkZW9EYXRhLk4sbi52aWRlb0RhdGEuVyxUWShuKSx2LG4udmlkZW9EYXRhLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpLEQsbi52aWRlb0RhdGEuelIpO2lmKG4udmlkZW9EYXRhLlMoImh0bWw1X2Rpc2FibGVfcHJlbG9hZF9mb3Jfc3NkYWlfd2l0aF9wcmVyb2xsIikmJgpuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFjayYmbi5PUCgpKVc9ITA7ZWxzZSBpZihXPW4uTkwpVz1nLms2KG4uQikmJm4udmlkZW9EYXRhLmlzTGl2ZVBsYXliYWNrJiYoIW4uQi5TKCJodG1sNV9hbGxvd19tdWx0aXZpZXdfdGlsZV9wcmVsb2FkIil8fCFuLnZpZGVvRGF0YS5saXZlUHJlbG9hZHx8bi5CLlp0KCkuTi5RUShIcCkpO24ubG9hZGVyLmluaXRpYWxpemUobi5nZXRDdXJyZW50VGltZSgpLFRZKG4pLFcpO24udmlkZW9EYXRhLnByb2JlVXJsJiYobi5sb2FkZXIuQnY9bi52aWRlb0RhdGEucHJvYmVVcmwpO2lmKG4uaWwubGVuZ3RofHxuLk5MKW4udmlkZW9EYXRhLmNvdG58fG4ucEMoITEpO21vKG4uZGEsbi5sb2FkZXIpO24uc1UmJihuLmxvYWRlci5FVyhuLnNVKSxuLlUoInNkYWkiLHtzZGw6MX0pKTtnLm1NKG4udmlkZW9EYXRhKSYmKG49bi5sb2FkZXIsbi5wb2xpY3kueGg9bi5wb2xpY3kuVnMpfTsKUWE9ZnVuY3Rpb24obil7bi5xTigpO2lmKCFuLmpILmZpbmlzaGVkJiZuLkxSLmZpbmlzaGVkJiYhbi5wbGF5ZXJTdGF0ZS5OKDEyOCkmJiFuLmlsLmxlbmd0aCl7aWYoIW4ud0kuc3RhcnRlZCl7dmFyIFc9bi53STtXLnN0YXJ0ZWQ9ITA7Vy5KKCl9aWYoIW4uSm4oKSl7bi5sb2FkZXImJihuLm5VPW4ubG9hZGVyLnpzKCEwKT4wKTtuLmpILmZpbmlzaGVkfHwobi5qSC5maW5pc2hlZD0hMCk7Vz1uLlMoImh0bWw1X29uZXNpZV9saXZlIikmJm4ubG9hZGVyJiYhaXNOYU4obi5sb2FkZXIuQ0gpOyFuLnZpZGVvRGF0YS5pc0xpdmVQbGF5YmFja3x8bi52aWRlb0RhdGEuVEM+MCYmIUk0KG4udmlkZW9EYXRhKXx8V3x8SWMobil8fChuLnNlZWtUbyhuLnJJKCkse3FkOiJ2aWRlb3BsYXllcl9yZWFkeWluZyIsc2Vla1NvdXJjZToxOH0pLG4uaXNCYWNrZ3JvdW5kKCkmJihuLlRsPSEwKSk7Vz1uLkJYO2lmKFcucW9lKXtXPVcucW9lO2xldCBiPVcucHJvdmlkZXIudmlkZW9EYXRhLHY9Vy5wcm92aWRlci5COwpmb3IodmFyIEQgb2Ygdi5reSluQyhXLEQpO2lmKFcucHJvdmlkZXIuUygiaHRtbDVfZW5hYmxlX3FvZV9jYXRfbGlzdCIpKWZvcihsZXQgayBvZiBiLmtLKW5DKFcsayk7ZWxzZSBiLmt5JiZuQyhXLFcucHJvdmlkZXIudmlkZW9EYXRhLmt5KTtiLnpXKCkmJihEPWIuTixJNChiKSYmbkMoVywibWFuaWZlc3RsZXNzIiksRCYmb28oRCkmJm5DKFcsYGxpdmUtc2VnbWVudC0ke29vKEQpLnRvRml4ZWQoMSl9YCkpO2cuWU4oYik/bkMoVywic2FiciIpOlcueiQoeHAoYikpO2lmKHB6KGIpfHxiLkRGKCkpYi5ERigpJiZuQyhXLCJzc2EiKSxuQyhXLCJsaWZhIik7TkkoYikmJm5DKFcsImNkbSIpO2IuZ2F0ZXdheUV4cGVyaW1lbnRHcm91cCYmKEQ9Yi5nYXRld2F5RXhwZXJpbWVudEdyb3VwLEQ9PT0iRVhQRVJJTUVOVF9HUk9VUF9TUElLWV9BRF9CUkVBS19FWFBFUklNRU5UIj9EPSJzcGthZHRydCI6RD09PSJFWFBFUklNRU5UX0dST1VQX1NQSUtZX0FEX0JSRUFLX0NPTlRST0wiJiYoRD0KInNwa2FkY3RybCIpLG5DKFcsRCkpO3YuViE9PSJ5dCImJlcuSi5zZXQoImxlbiIsW2IubGVuZ3RoU2Vjb25kcy50b0ZpeGVkKDIpXSk7Yi5jb3RuJiYhT1MoYikmJlF1KFcsITApO3YuV1goKSYmKEQ9UlFVKCkpJiZXLlUoImNibHQiLHttOkR9KTt2LlMoImh0bWw1X2xvZ19zY3JlZW5fZGlhZ29uYWwiKSYmVy5VKCJjYmx0ZGlhZyIse3Y6d2luZG93Lkg1dmNjU2NyZWVuPy5HZXREaWFnb25hbD93aW5kb3cuSDV2Y2NTY3JlZW4uR2V0RGlhZ29uYWwoKTowfSl9bi5XSigicGxheWJhY2tyZWFkeSIpO2cudlAoInBsX2MiLG4ubVEudGltZXJOYW1lKXx8KG4ubVEudGljaygicGxfYyIpLGcuZ18oInBsX2MiLHZvaWQgMCwidmlkZW9fdG9fYWQiKSk7Zy52UCgicGJyIixuLm1RLnRpbWVyTmFtZSl8fChuLm1RLnRpY2soInBiciIpLGcuZ18oInBiciIsdm9pZCAwLCJ2aWRlb190b19hZCIpKX19fTsKVmE9ZnVuY3Rpb24obixXKXtuLnBsYXllclN0YXRlLk4oMTI4KXx8KG4uQk4od1Mobi5wbGF5ZXJTdGF0ZSwxMDI4LDkpKSxuLlUoImRvbXBhdXNlZCIse3I6V30pLG4uV0ooIm9uQXV0b3BsYXlCbG9ja2VkIikpfTsKZy5EVD1mdW5jdGlvbihuKXt2YXIgVz1UWShuKTtyZXR1cm4geEooVyl8fCFuLkRoP251bGw6Zy5sXyhuLkRoLk4udmlkZW9JbmZvcyxEPT5XLlgoRCkpfTsKdVY9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1uLkJYLGg9bi52aWRlb0RhdGE7aC5KPUQ7dmFyIHg9Zy5EVChuKTtEPW5ldyBGck0oRCxXLHg/eC5pdGFnOiIiLGIsdik7aWYoay5xb2Upe2s9ay5xb2U7Yj12PWcuUmsoay5wcm92aWRlcik7eD1bRC5OLmlkLEQuSixrLnM1LEQucmVhc29uXTtrLkR0fHx4LnB1c2goTFRiKGssRCkpO0QudG9rZW4mJngucHVzaChELnRva2VuKTtnLndqKGssYiwidmZzIix4KTtrLnM1PUQuTi5pZDt4PWsucHJvdmlkZXIuTC5nZXRQbGF5ZXJTaXplKCk7aWYoeC53aWR0aD4wJiZ4LmhlaWdodD4wKXt4PVtNYXRoLnJvdW5kKHgud2lkdGgpLE1hdGgucm91bmQoeC5oZWlnaHQpXTtsZXQgTD1nLkhfKCk7TD4xJiZ4LnB1c2goTCk7Zy53aihrLGIsInZpZXciLHgpfWsuRHR8fChrLnByb3ZpZGVyLkIuV1goKSYmKG5DKGssInJxcyIpLG5DKGssInJxczIiKSksay5wcm92aWRlci52aWRlb0RhdGEuTiYmR18oay5wcm92aWRlci52aWRlb0RhdGEuTikmJmsuSi5zZXQoInByZWxvYWQiLApbIjEiXSkpO2suRHQ9ITA7ay5WPSEwO0QucmVhc29uPT09Im0iJiYrK2suc1Y9PT0xMDAmJmJtKGssMik7Zy53aihrLHYsInZwcyIsW2suTl0pO2suZSR8fGsucmVwb3J0U3RhdHModil9RD1uLmhVO0QuSj0wO0QuTj0wO24uV0ooImludGVybmFsdmlkZW9mb3JtYXRjaGFuZ2UiLGgsVz09PSJtIil9OwpUWT1mdW5jdGlvbihuKXtpZihuLkRoKXt2YXIgVz1uLmhVO3ZhciBEPW4uRGg7bj1uLmcwKCk7dmFyIGI9Wm1oKFcpO2lmKHhKKGIpKXtpZihiPVcuTWgoRCkuY29tcG9zZSh5SXIoVyxEKSkuY29tcG9zZShpbXIoVyxEKSkuY29tcG9zZShaVihXLEQudmlkZW9EYXRhKSkuY29tcG9zZShVWChXLEQudmlkZW9EYXRhLEQpKS5jb21wb3NlKHkzKFcsRCkpLmNvbXBvc2UoaW0oVyxEKSkseEoobil8fFcuUygiaHRtbDVfYXBwbHlfcGJyX2NhcF9mb3JfZHJtIikpe3ZhciB2PWIuY29tcG9zZTtpZihXLlMoImh0bWw1X2Rpc2FibGVfdXN0cmVhbWVyX2NvbnN0cmFpbnRfZm9yX3NhYnIiKSYmZy5ZTihELnZpZGVvRGF0YSkpdmFyIGs9WVo7ZWxzZSBrPVcuTC51dSgpLFcuUygiaHRtbDVfdXNlX3ZpZGVvX3F1YWxpdHlfY2FwX2Zvcl91c3RyZWFtZXJfY29uc3RyYWludCIpJiZrJiZrLlFvPjAmJnhKKEQudmlkZW9EYXRhLkIzKSYmKGs9ay5RbyxELnZpZGVvRGF0YS5CMz1uZXcgYjMoMCxrLCExLAoidSIpKSxrPUQudmlkZW9EYXRhLkIzO2I9di5jYWxsKGIsayl9fWVsc2UgVy5TKCJodG1sNV9wZXJmX2NhcF9vdmVycmlkZV9zdGlja3kiKSYmKGI9Yi5jb21wb3NlKHkzKFcsRCkpKTtiPWIuY29tcG9zZShpbShXLEQpKTtXPUQudmlkZW9EYXRhLkxLLmNvbXBvc2UoYikuY29tcG9zZShELnZpZGVvRGF0YS5MSCkuY29tcG9zZShuKX1lbHNlIFc9WVo7cmV0dXJuIFd9Owp3c2k9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1uLkJYLGg9bi52aWRlb0RhdGE7aWYoRCE9PWguWCl7dmFyIHg9IWguWDtoLlg9RDt2YXIgTD1XPT09Im0ifHxXPT09InQiO0x8fChXPXg/ImkiOiJhIik7Vz1uZXcgRnJNKEQsVywiIixiLHYpO2lmKGsucW9lKXtrPWsucW9lO0Q9Zy5SayhrLnByb3ZpZGVyKTtsZXQgRz1bXTtpZihXLk4uaWQhPT1rLkZGKXtiPVtXLk4uaWQsay5GRixXLnJlYXNvbl07dj1HO3ZhciBlPXYucHVzaDtsZXQgcj1bXSxOPWsucHJvdmlkZXIudmlkZW9EYXRhLmhnLk4sSD1XLk4uYXVkaW8/Lko/P04/LlFPO0g9PW51bGx8fGlzTmFOKEgpfHxyLnB1c2goYGZsLiR7SH1gKTtOJiYoTi5mb3JtYXRJZCYmTi5mb3JtYXRJZCE9PVcuTi5pZCYmay5VKCJhZ2MiLHtxb2VtaXNtYXRjaDoiMSIsYWdjX2ZtdDpOLmZvcm1hdElkLGFmbXQ6Vy5OLmlkfSksTi5weT09bnVsbHx8aXNOYU4oTi5weSl8fHIucHVzaChgdGwuJHtOLnB5fWApLE4uRHk9PW51bGx8fGlzTmFOKE4uRHkpfHwKci5wdXNoKGB2Zy4ke04uRHl9YCksTi53RyE9PTAmJnIucHVzaChgbm0uJHtOLndHfWApKTtlLmNhbGwodiwuLi5yKTtXLnJlYXNvbj09PSJpIiYmRy5wdXNoKExUYihrLFcpKTtHLmxlbmd0aD4wJiZiLnB1c2goRy5qb2luKCI7IikpO1cudG9rZW4mJmIucHVzaChXLnRva2VuKTtnLndqKGssRCwiYWZzIixiKTtrLkZGPVcuTi5pZH19bi5XSigiaW50ZXJuYWxhdWRpb2Zvcm1hdGNoYW5nZSIsaCwheCYmTCl9fTsKTXl4PWZ1bmN0aW9uKG4pe3ZhciBXPSJsb2Fkc3RhcnQgbG9hZGVkbWV0YWRhdGEgcGxheSBwbGF5aW5nIHByb2dyZXNzIHBhdXNlIGVuZGVkIHN1c3BlbmQgc2Vla2luZyBzZWVrZWQgdGltZXVwZGF0ZSBkdXJhdGlvbmNoYW5nZSByYXRlY2hhbmdlIGVycm9yIHdhaXRpbmcgcmVzaXplIi5zcGxpdCgiICIpO2ZvcihsZXQgRCBvZiBXKW4uczkuTk4obi5tZWRpYUVsZW1lbnQsRCxuLmlVLG4pO24uQi5EVCYmbi5tZWRpYUVsZW1lbnQuSygpJiYobi5zOS5OTihuLm1lZGlhRWxlbWVudCwid2Via2l0cGxheWJhY2t0YXJnZXRhdmFpbGFiaWxpdHljaGFuZ2VkIixuLnZrLG4pLG4uczkuTk4obi5tZWRpYUVsZW1lbnQsIndlYmtpdGN1cnJlbnRwbGF5YmFja3RhcmdldGlzd2lyZWxlc3NjaGFuZ2VkIixuLk9rLG4pKX07Ck9VaD1mdW5jdGlvbihuKXtpZihuLm1lZGlhU291cmNlKWlmKG4uSzEoKSxuLm1lZGlhU291cmNlLkspdHJ5e24uQi5XWCgpJiZuLlUoInJtcyIse2w6InZwcm1zIixzcjpuLnBnKCkscnM6bi5tZWRpYVNvdXJjZS5XKCl9KSxuLm1lZGlhU291cmNlLmNsZWFyKCksbi5tZWRpYUVsZW1lbnQ/LkhKKG4ubWVkaWFTb3VyY2UpLG4ubWVkaWFTb3VyY2U9bnVsbH1jYXRjaChEKXt2YXIgVz1uZXcgZy5ReChgRXJyb3Igd2hpbGUgY2xlYXJpbmcgTWVkaWEgU291cmNlIGluIFZpZGVvUGxheWVyOiAke0QubmFtZX0sICR7RC5tZXNzYWdlfWApO1c9QiQoVyk7bi5oYW5kbGVFcnJvcihXKTtuLm15KCl9ZWxzZSBuLm15KCl9Owpkcz1mdW5jdGlvbihuKXtuLkxBJiYobi5MQS5kaXNwb3NlKCksbi5MQT1udWxsKX07ClJwVT1mdW5jdGlvbihuKXtuLm1lZGlhRWxlbWVudCYmbi5tZWRpYUVsZW1lbnQuRTgoKSYmKG4uVFY9KDAsZy5SKSgpKTtuLkIudEc/Zy5uJCgoKT0+e2J2KG4pfSwwKTpidihuKX07CmJ2PWZ1bmN0aW9uKG4pe2lmKCFuLm1lZGlhU291cmNlPy5nWCgpKXtpZihuLm1lZGlhRWxlbWVudCl0cnl7bi5Mdz1uLm1lZGlhRWxlbWVudC5wbGF5VmlkZW8oKX1jYXRjaChXKXtWYShuLGBlcnIuJHtXfWApfWlmKG4uTHcpe2xldCBXPW4uTHc7Vy50aGVuKHZvaWQgMCxEPT57aWYoIShuLnBsYXllclN0YXRlLk4oNCl8fG4ucGxheWVyU3RhdGUuTigyNTYpfHxuLkx3IT09V3x8RCYmRC5uYW1lPT09IkFib3J0RXJyb3IiJiZELm1lc3NhZ2UmJkQubWVzc2FnZS5pbmNsdWRlcygibG9hZCIpKSl7bGV0IGI9InByb21pc2UiO0QmJkQubmFtZSYmKGIrPWA7bS4ke0QubmFtZX1gKTtWYShuLGIpO24uVzE9ITA7bi52aWRlb0RhdGEuZkI9ITB9fSl9fX07CkE2aj1mdW5jdGlvbihuLFc9ITEpe2lmKG4ubWVkaWFTb3VyY2UpcmV0dXJuIG4ubWVkaWFTb3VyY2UuajtRdmkobixXKTtyZXR1cm4gbi5VeigpPy50dygpfHxudWxsfTsKZDEyPWZ1bmN0aW9uKG4sVz0hMSl7dmFyIEQ9bnVsbDtuLnZpZGVvRGF0YS5XPy5OKCk/KEQ9QTZqKG4sVyksbi5sb2FkZXI/LnJlc3VtZSgpKTood3Mobiksbi52aWRlb0RhdGEuY0omJihEPW4udmlkZW9EYXRhLmNKLkooKSkpO3JldHVybiBEfTsKYXZaPWZ1bmN0aW9uKG4sVyl7aWYoVy5OLnZpZGVvLnF1YWxpdHk9PT0iYXV0byImJlcua0woKS5XKCkpaWYobi5TKCJodG1sNV9obHNfcmVwb3J0X3BzZXVkb19pdGFnIikmJm4udmlkZW9EYXRhLmhsc3ZwKXt2YXIgRD1uLlVKKCk7aWYoRCYmRC52aWRlb0hlaWdodD4wJiZELnZpZGVvV2lkdGg+MCl7dmFyIGI9RC52aWRlb0hlaWdodDtEPUQudmlkZW9XaWR0aDthOntuPW4uTEE/Lk4uZmxhdm9yPT09ImZhaXJwbGF5Ij9WeVU6YzZaO2Zvcih2IG9mIG4paWYoYj49di5taW5IZWlnaHQpe3ZhciB2PXYuaXRhZzticmVhayBhfXY9IiJ9aWYodilyZXR1cm4gbmV3IG11KHYsImFwcGxpY2F0aW9uL3gtbXBlZ1VSTCIse3ZpZGVvOm5ldyBIUihELGIpfSl9fWVsc2UgaWYobi52aWRlb0RhdGEubnUpZm9yKGIgb2Ygbi52aWRlb0RhdGEubnUpaWYoYi5nZXRIZWlnaHQoKT09PW4uejEmJmIuTi52aWRlby5xdWFsaXR5IT09ImF1dG8iKXJldHVybiBiLmtMKCk7cmV0dXJuIFcua0woKX07Cm5CQz1mdW5jdGlvbihuKXtyZXR1cm4hIShuLlMoImh0bWw1X25hdGl2ZV9hdWRpb190cmFja19zd2l0Y2hpbmciKSYmZy5HbiYmbi52aWRlb0RhdGEuSj8uVygpKX07ClcxaT1mdW5jdGlvbihuKXtpZighbkJDKG4pKXJldHVybiExO249bi5tZWRpYUVsZW1lbnQ/LmF1ZGlvVHJhY2tzKCk7cmV0dXJuISEobiYmbi5sZW5ndGg+MSl9OwpiNHQ9ZnVuY3Rpb24obil7dmFyIFc9RGdDKG4pO2lmKFcpe3ZhciBEPXY4W1ddfHxXO3JldHVybiBuLnZpZGVvRGF0YS5nZXRBdmFpbGFibGVBdWRpb1RyYWNrcygpLmZpbmQoYj0+Yi5rWi5nZXROYW1lKCk9PT1EKX19OwpEZ0M9ZnVuY3Rpb24obil7aWYobj1uLm1lZGlhRWxlbWVudD8uYXVkaW9UcmFja3MoKSlmb3IobGV0IFc9MDtXPG4ubGVuZ3RoOysrVyl7bGV0IEQ9bltXXTtpZihELmVuYWJsZWQpcmV0dXJuIEQubGFiZWx9fTsKdkIyPWZ1bmN0aW9uKG4pe3ZhciBXPW4ubWVkaWFFbGVtZW50Py5hdWRpb1RyYWNrcygpO2lmKFcpe3ZhciBEPVtdO2ZvcihsZXQgdj0wO3Y8Vy5sZW5ndGg7Kyt2KXt2YXIgYj1XW3ZdO2I9bmV3IFdBKGIubGFiZWwsbmV3IHdQKHY4W2IubGFiZWxdfHxiLmxhYmVsLGIubGFiZWwsITEpKTtELnB1c2goYil9bi52aWRlb0RhdGEudm49RH19OwpCNFU9ZnVuY3Rpb24obil7dmFyIFcsRD1uLnZpZGVvRGF0YS5nZXRBdmFpbGFibGVBdWRpb1RyYWNrcygpLGI9bi5CLkhKO2ImJihXPUQuZmluZCh2PT52LmdldExhbmd1YWdlSW5mbygpLmlkPT09YikpOwppZihuLkIuZXhwZXJpbWVudHMuRXEoImVuYWJsZV9hdWRpb19kZXNjcmlwdGlvbl9zZXR0aW5nIikmJmcubzkoKS5RUSgxOTgpKWZvcihsZXQgdiBvZiBEKWlmKHYuail7Vz12O2JyZWFrfW4uWnQoKS5OLlFRKGtxTSkmJm4udmlkZW9EYXRhLmNvdG4mJihXPUQuZmluZCh2PT4hIXYuVikpOwpXfHwobj1uLmdldEF1ZGlvVHJhY2soKSxXPW4ua1ouaXNEZWZhdWx0P3ZvaWQgMDpuKTtyZXR1cm4gV307ClF2aT1mdW5jdGlvbihuLFc9ITEpe3RyeXtnLmQ4KCkmJm4udmlkZW9EYXRhLm1WKCkmJm4ubWVkaWFFbGVtZW50LlBYKCk7bGV0IGI9bi5veSgpLHY9bi5DZCgpO2lmKG4ubWVkaWFFbGVtZW50LmlzVmlldygpJiZuLm1lZGlhRWxlbWVudC5NZCYmKCFuLkZTKCl8fCFuLm1lZGlhRWxlbWVudC5ZJChiLHYpKSl7bi5CLldYKCkmJm4uVSgidXNtIix7ZmFsbGJhY2s6ITAscmVhc29uOm4uRlMoKT8iY29kZWMiOiJwb2xpY3kifSk7bGV0IGs9bi5tZWRpYUVsZW1lbnQubWVkaWFFbGVtZW50O2s/LlBYKCk7az8uc3RvcFZpZGVvKCk7bi5kYS5zZXRNZWRpYUVsZW1lbnQobnVsbCk7bi5zZXRNZWRpYUVsZW1lbnQoaywhMCl9dmFyIEQ9bi5tZWRpYUVsZW1lbnQuVXooYix2KX1jYXRjaChiKXtpZihLQyhuLkFJLCJodG1sNS5taXNzaW5nYXBpIix7dXBkYXRlTXM6IjEifSkpcmV0dXJuO2NvbnNvbGUuZXJyb3IoIndpbmRvdy5VUkwgb2JqZWN0IG92ZXJ3cml0dGVuIGJ5IGV4dGVybmFsIGNvZGUiLApiKTtuLlBWKCJodG1sNS5taXNzaW5nYXBpIiwyLCJIVE1MNV9OT19BVkFJTEFCTEVfRk9STUFUU19GQUxMQkFDSyIsInVwZGF0ZU1zLjEiKTtyZXR1cm59bi5ubShELCExLCExLFcpfTsKaExaPWZ1bmN0aW9uKG4sVz0hMSl7aWYobi5sb2FkZXIpe24udmlkZW9EYXRhLmVuYWJsZVNlcnZlclN0aXRjaGVkRGFpJiZuLmxvYWRlci5rSSgpO2xldCBEPW4uZ2V0Q3VycmVudFRpbWUoKS1uLlNXKCk7bi5sb2FkZXIuc2VlayhELHtBTTpXfSkuc1AoKCk9Pnt9KX1lbHNlIGNkKG4sKCk9PntuLnFOKCl8fG4ubG9hZGVyfHxvQXQobil9KX07CkwxYj1mdW5jdGlvbihuLFcsRD0hMSxiPSExLHY9ITEpeyFuLm1lZGlhU291cmNlfHxXJiZuLm1lZGlhU291cmNlIT09V3x8KFc9bi5nZXREdXJhdGlvbigpLCFXJiZJNChuLnZpZGVvRGF0YSkmJihXPTI1MjAwLG4ubG4oKSYmKFc9NDY4MDApKSxuLm1lZGlhU291cmNlLmlzVmlldz9XPm4ubWVkaWFTb3VyY2UuZ2V0RHVyYXRpb24oKSYmeGdaKG4sVyk6eGdaKG4sVyksVz0oKT0+e24ucU4oKXx8KEltaShuLmxvYWRlcixuLm1lZGlhU291cmNlLEQsYix2KSxuLldKKCJtZWRpYXNvdXJjZWF0dGFjaGVkIikpfSxuLmxvYWRlcj9XKCk6Y2QobixXKSl9Owp4Z1o9ZnVuY3Rpb24obixXKXtuLm1lZGlhU291cmNlJiYobi5tZWRpYVNvdXJjZS5hVChXKSxuLmxvYWRlcj8uaFcoVykpfTsKZUxoPWZ1bmN0aW9uKG4sVyl7aWYobi5CLldYKCkmJm4ubWVkaWFFbGVtZW50KXtsZXQgRD1uLm1lZGlhRWxlbWVudC55cigpO0Qub210PShuLm1lZGlhRWxlbWVudC5nZXRDdXJyZW50VGltZSgpK24uU1coKSkudG9GaXhlZCgzKTtELnBzPW4ucGxheWVyU3RhdGUuc3RhdGUudG9TdHJpbmcoMTYpO0QucnQ9KGcuUmsobi5CWC5wcm92aWRlcikqMUUzKS50b0ZpeGVkKCk7RC5lPVc7bi5CRltuLmtRKyslNV09RH19OwpnQnI9ZnVuY3Rpb24obil7aWYoZy51YigiY29iYWx0IikmJmcudWIoIm5pbnRlbmRvIHN3aXRjaCIpKXt2YXIgVz0hd2luZG93Lm1hdGNoTWVkaWEoInNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDcyMHB4KSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyMDBkcGkpIikubWF0Y2hlcztuLlUoIm54ZG9jayIse2Q6V30pfX07ClhhUz1mdW5jdGlvbihuKXtEcihuLm53KTtrUChuKXx8KG4ubnc9VzAoKCk9PmtQKG4pLDEwMCkpfTsKa1A9ZnVuY3Rpb24obil7dmFyIFc9bi5tZWRpYUVsZW1lbnQ7VyYmbi5BbCYmIW4udmlkZW9EYXRhLlkmJiFnLnZQKCJ2ZnAiLG4ubVEudGltZXJOYW1lKSYmVy5YKCk+PTImJiFXLmlzRW5kZWQoKSYmTSQoVy5KKCkpJiZuLm1RLnRpY2soInZmcCIpO3JldHVybihXPW4ubWVkaWFFbGVtZW50KSYmIW4udmlkZW9EYXRhLlkmJlcuZ2V0RHVyYXRpb24oKT4wJiYoVy5pc1BhdXNlZCgpJiZXLlgoKT49MiYmTSQoVy5KKCkpJiYoZy52UCgicGJwIixuLm1RLnRpbWVyTmFtZSl8fG4ubVEudGljaygicGJwIiksIW4udmlkZW9EYXRhLkR0fHxuLlZ0fHxXLmlzU2Vla2luZygpfHwobi5WdD0hMCxuLldKKCJvblBsYXliYWNrUGF1c2VBdFN0YXJ0IikpKSxXPVcuZ2V0Q3VycmVudFRpbWUoKSxxOShuLlZlLFcpJiYoIW4udmlkZW9EYXRhLlJvfHwhbi5wbGF5ZXJTdGF0ZS5OKDE2KSkpPyhuLmUyKCksITApOiExfTsKaDU9ZnVuY3Rpb24obixXKXtuLkIuUygiaHRtbDVfbG9nX3JlYnVmZmVyX3JlYXNvbiIpJiYoVz17cjpXLGxhY3Q6Zy52SSgpfSxuLm1lZGlhRWxlbWVudCYmKFcuYmg9bi5tZWRpYUVsZW1lbnQuenMoKSksbi5VKCJidWZyZWFzb24iLFcpKX07CnFhVT1mdW5jdGlvbihuKXtuLkJYLm9uUHJvZ3Jlc3MoKTtpZihnLkRQKG4udmlkZW9EYXRhKSYmRGF0ZS5ub3coKT5uLmhhKzYyODMpe2lmKG4udmlkZW9EYXRhLk4mJiFFayhuLnZpZGVvRGF0YS5OKSl7dmFyIFc9bi5CWDtpZihXLnFvZSl7Vz1XLnFvZTt2YXIgRD1XLnByb3ZpZGVyLkwuSEsoKSxiPWcuUmsoVy5wcm92aWRlcik7VnUoVyxiLEQpO2xldCB2PUQuVztEPUQuWDtpc05hTih2KXx8KCFpc05hTihEKSYmRD9nLndqKFcsYiwiZTJlbCIsW3YudG9GaXhlZCgzKSxELnRvRml4ZWQoMyldKTpnLndqKFcsYiwiZTJlbCIsW3YudG9GaXhlZCgzKV0pKX19Vz1nLkdsKG4uQik7Yj1uLlMoImh0bWw1X2Fsd2F5c19sb2dfcmF3bGF0Iik7KFd8fGIpJiZuLlUoInJhd2xhdCIse2w6Wjcobi5GNSwicmF3bGl2ZWxhdGVuY3kiKS50b0ZpeGVkKDMpfSk7bi5oYT1EYXRlLm5vdygpfW4udmlkZW9EYXRhLkomJm4udmlkZW9EYXRhLkouVygpJiYoVz1uLlVKKCkpJiZXLnZpZGVvSGVpZ2h0IT09Cm4uejEmJihuLnoxPVcudmlkZW9IZWlnaHQsdVYobiwiYSIsYXZaKG4sbi52aWRlb0RhdGEuY0opKSl9OwpHcU09ZnVuY3Rpb24obil7aWYobi5CLldYKCkpe24uQkYuc29ydCgoVyxEKT0+K1cucnQtK0QucnQpOwpmb3IobGV0IFcgb2Ygbi5CRiluLlUoInZwZSIsT2JqZWN0LmFzc2lnbih7dDpXLnJ0fSxXKSk7bi5CRj1bXTtuLmtRPTB9fTsKenBpPWZ1bmN0aW9uKG4sVyl7bi5tUS50aWNrKCJ2dGEiKTtnLmdfKCJ2dGEiLHZvaWQgMCwidmlkZW9fdG9fYWQiKTtuLmdldEN1cnJlbnRUaW1lKCk+MCYmUnlpKG4uZGEsbi5nZXRDdXJyZW50VGltZSgpKTtuLm1lZGlhRWxlbWVudC5EKFcpO24ubWVkaWFTb3VyY2UmJmJRKDQpOyFuLnZpZGVvRGF0YS5ZJiZuLnBsYXllclN0YXRlLmlzT3JXaWxsQmVQbGF5aW5nKCkmJm4uQl8uc3RhcnQoKTtuQkMobikmJihXPW4ubWVkaWFFbGVtZW50Py5hdWRpb1RyYWNrcygpKSYmKFcub25hZGR0cmFjaz0oKT0+e3ZCMihuKX0sVy5vbnJlbW92ZXRyYWNrPSgpPT57dkIyKG4pfSxXLm9uY2hhbmdlPSgpPT57bi5XSigiaW50ZXJuYWxhdWRpb2Zvcm1hdGNoYW5nZSIsbi52aWRlb0RhdGEsITApfSl9Owp0aVM9ZnVuY3Rpb24obil7bj1uLmFwaS5nZXRQbGF5ZXJTdGF0ZU9iamVjdCgpO249bi5pc0N1ZWQoKXx8bi5pc0Vycm9yKCk/Im5vbmUiOm4uaXNPcldpbGxCZVBsYXlpbmcoKT8icGxheWluZyI6InBhdXNlZCI7bmF2aWdhdG9yLm1lZGlhU2Vzc2lvbi5wbGF5YmFja1N0YXRlPW59OwokZ0M9ZnVuY3Rpb24obil7aWYobi5OKWlmKG4uYXBpLmdldFZpZGVvRGF0YSgpLmlzTGl2ZVBsYXliYWNrKXRyeXt4UCh7ZHVyYXRpb246SW5maW5pdHl9KX1jYXRjaChXKXt4UCgpfWVsc2V7aWYobi5hcGkuZ2V0VmlkZW9EYXRhKCk/LnpLKCkpe2xldCBXPW4uYXBpLmdldFByb2dyZXNzU3RhdGUoKS5zZWVrYWJsZUVuZCxEPU1hdGgubWluKG4uYXBpLmdldEN1cnJlbnRUaW1lKCksVyk7aWYoVyYmTnVtYmVyLmlzRmluaXRlKEQpKXt4UCh7ZHVyYXRpb246VyxwbGF5YmFja1JhdGU6bi5hcGkuZ2V0UGxheWJhY2tSYXRlKCkscG9zaXRpb246RH0pO3JldHVybn19eFAoKX19OwpMYT1mdW5jdGlvbihuLFcpe3RyeXtuYXZpZ2F0b3IubWVkaWFTZXNzaW9uLnNldEFjdGlvbkhhbmRsZXIobixXKX1jYXRjaChEKXt9fTsKclBoPWZ1bmN0aW9uKG4pe3ZhciBXPVtdO2lmKCFufHwhbi50aHVtYm5haWxzKXJldHVybiBXO2ZvcihsZXQgRCBvZiBuLnRodW1ibmFpbHMpRC51cmwmJighRC53aWR0aHx8RC53aWR0aDw9MHx8IUQuaGVpZ2h0fHxELmhlaWdodDw9MHx8Zy5qSShELnVybCkmJlcucHVzaCh7c3JjOkQudXJsfHwiIixzaXplczpgJHtELndpZHRofXgke0QuaGVpZ2h0fWAsdHlwZToiaW1hZ2UvanBlZyJ9KSk7cmV0dXJuIFd9OwpzVVM9ZnVuY3Rpb24obil7TGEoInBsYXkiLCgpPT57bi5hcGkucGxheVZpZGVvKCk7ZWwobil9KTsKTGEoInBhdXNlIiwoKT0+e24uYXBpLnBhdXNlVmlkZW8oKTtlbChuKX0pOwpMYSgic2Vla2JhY2t3YXJkIiwoKT0+e24uYXBpLnNlZWtCeSgtNSpuLmFwaS5nZXRQbGF5YmFja1JhdGUoKSk7ZWwobil9KTsKTGEoInNlZWtmb3J3YXJkIiwoKT0+e24uYXBpLnNlZWtCeSg1Km4uYXBpLmdldFBsYXliYWNrUmF0ZSgpKTtlbChuKX0pOwpMYSgic2Vla3RvIixXPT57Vz1XLnNlZWtUaW1lO1chPW51bGwmJm4uYXBpLnNlZWtUbyhXKTtlbChuKX0pfTsKZWw9ZnVuY3Rpb24obil7bi5hcGkuUygid2ViX3Jlc2V0X2xhY3Rfb25fbWVkaWFfYWN0aW9ucyIpJiZuLmFwaS51cGRhdGVMYXN0QWN0aXZlVGltZSgpfTsKeFA9ZnVuY3Rpb24obil7bmF2aWdhdG9yLm1lZGlhU2Vzc2lvbi5zZXRQb3NpdGlvblN0YXRlKG4pfTsKcGFNPWZ1bmN0aW9uKG4pe2lmKG49bi5hcGkuZ2V0VmlkZW9EYXRhKCk/LmdldFBsYXllclJlc3BvbnNlKCk/Lm92ZXJsYXk/LnBsYXllckNvbnRyb2xzT3ZlcmxheVJlbmRlcmVyKWlmKG49Zy53KG4uY29tcG9zaXRlVmlkZW9PdmVybGF5LE5LeCksbj8uc291cmNlcz8ubGVuZ3RoKWZvcihsZXQgVyBvZiBuPy5zb3VyY2VzKWlmKFcuaXNBY3RpdmUpcmV0dXJuIFd9OwpnOT1mdW5jdGlvbihuKXtuLk49dm9pZCAwO24uVy5jbGVhcigpO24uYXBpLk5wKCJjb21wb3NpdGVlbWJhcmdvIiwxKX07ClhZPWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEIG9mIFcpe1c9TnVtYmVyKEQucGxheWJhY2tSZWxhdGl2ZVBvc2l0aW9uPy51dGNUaW1lTXMpLzFFMztsZXQgYj1XK051bWJlcihELmR1cmF0aW9uPy5zZWNvbmRzKSx2PWBjb21wb3NpdGVfZW1iYXJnb18ke1d9YDtpZihELm9uRW50ZXIpe2xldCBrPUQub25FbnRlci5maWx0ZXIobi5WKTtrLmxlbmd0aCYmKG4uVy5zZXQodixrKSxuLmFwaS5hZGRVdGNDdWVSYW5nZSh2LFcsYiwiY29tcG9zaXRlZW1iYXJnbyIsITEpKX19fTsKSDR0PWZ1bmN0aW9uKG4sVyl7aWYobi5OPy5pZCE9PVcuaWQmJihuLmFwaS5xVyghMCksbi5XLmhhcyhXLmlkKSkpe3ZhciBEPW4uVy5nZXQoVy5pZCksYj1uLmFwaS5nZXRWaWRlb0RhdGEoKTtmb3IobGV0IHYgb2YgRClEPXYuY29tcG9zaXRlRW1iYXJnbz8uZW1iYXJnb1N0YXR1c1Rva2VuLGIucFIhPT1EJiYoYi5wUj1ELG4uYXBpLm5DKCkpLFlhVShuLFcpfX07CmZwaT1mdW5jdGlvbihuLFcpe2lmKG4uTj8uaWQ9PT1XLmlkJiYobi5hcGkucVcoITEpLG4uVy5oYXMoVy5pZCkpKXtpZihXPW4uYXBpLmdldFZpZGVvRGF0YSgpKVcucFI9dm9pZCAwO24uYXBpLm5DKCk7WWFVKG4pfX07CkpQTT1mdW5jdGlvbihuLFcpe24uY29tcG9zaXRlVmlkZW9TdGF0ZSE9PW51bGwmJihXLnBsYXliYWNrU3RhdGV8fChXLnBsYXliYWNrU3RhdGU9e30pLFcucGxheWJhY2tTdGF0ZS5jb21wb3NpdGVWaWRlb1N0YXRlPW4uY29tcG9zaXRlVmlkZW9TdGF0ZSl9OwpJcEM9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uYXBpLmdldFZpZGVvRGF0YSh7dm86ITF9KTtiPy5VKCJhdHJrY2hnIix7aWQ6VyxtOkR9KTtpZihiJiYhYi5JTSgpKXtEPW4uYXBpLmdldEF2YWlsYWJsZUF1ZGlvVHJhY2tzKCk7Zm9yKGxldCB2IG9mIEQpaWYodi5nZXRMYW5ndWFnZUluZm8oKS5nZXRJZCgpPT09Vyl7bi5hcGkuRygpLkhKPVc7YnJlYWt9fX07ClNhTT1mdW5jdGlvbihuLFcpe1chPT1uLksmJihuLks9VyxuLkouSigpLFcmJihuLkouTk4obi5hcGksIm1vZHVsZWNyZWF0ZWQiLEQ9Pnt2YXIgYj1wYU0obik7RD09PSJjYXB0aW9ucyImJmI/LnRvcExlZnRDb3JuZXJYIT09dm9pZCAwJiZiPy50b3BMZWZ0Q29ybmVyWSE9PXZvaWQgMCYmYj8ud2lkdGghPT12b2lkIDAmJmI/LmhlaWdodCE9PXZvaWQgMCYmbi5hcGkuVG4oe3RvcDpiLnRvcExlZnRDb3JuZXJZLHJpZ2h0OjEtYi50b3BMZWZ0Q29ybmVyWC1iLndpZHRoLGJvdHRvbToxLWIudG9wTGVmdENvcm5lclktYi5oZWlnaHQsbGVmdDpiLnRvcExlZnRDb3JuZXJYfSl9KSxuLkouTk4obi5hcGksZy5veSgiY29tcG9zaXRlZW1iYXJnbyIpLEQ9PntINHQobixEKX0pLG4uSi5OTihuLmFwaSxnLmR2KCJjb21wb3NpdGVlbWJhcmdvIiksRD0+e2ZwaShuLEQpfSksbi5KLk5OKG4uYXBpLCJoZWFydGJlYXRSZXF1ZXN0IixEPT57SlBNKG4sRCl9KSxuLkouTk4obi5hcGksImludGVybmFsYXVkaW9mb3JtYXRjaGFuZ2UiLAooRCxiKT0+e0lwQyhuLEQsYil9KSxuLkouTk4obi5hcGksIm9uUGxheWJhY2tBdWRpb0NoYW5nZSIsKCk9PntuLmFwaS5uQygpfSkpKX07CllhVT1mdW5jdGlvbihuLFcpe24uTj8uaWQhPT1XPy5pZCYmKG4uTiYmKG4uVy5kZWxldGUobi5OLmlkKSxuLmFwaS5VTyhbbi5OXSwxKSksbi5OPVcpfTsKQVAyPWZ1bmN0aW9uKG4pe249bj8ucXVhbGl0eURldGFpbHN8fFtdO3JldHVybiBnLmZ0KG4pJiYhQXJyYXkuaXNBcnJheShuKT9uOm4ucmVkdWNlKChXLHtrZXk6RCx2YWx1ZTpifSk9PntEJiZiJiYoV1tEXT1iKTtyZXR1cm4gV30se30pfTsKbWdoPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1bXSx2PVc/MTU2NTk1OjE1MTg3NDtmb3IobGV0IGggb2Ygbil7dmFyIGs9aC52aWRlbztuPXtmb3JtYXRJZDpoLmlkLHF1YWxpdHlMYWJlbDprLnF1YWxpdHlMYWJlbCxxdWFsaXR5OmsucXVhbGl0eSxpc1BsYXlhYmxlOld9O2lmKGs9RFtrLnF1YWxpdHlMYWJlbF0pbi5wYXlnYXRlZFF1YWxpdHlEZXRhaWxzPXtwYXlnYXRlZEluZGljYXRvclRleHQ6ay5wYXlnYXRlZEluZGljYXRvclRleHQsZW5kcG9pbnQ6ay5lbmRwb2ludCx2ZVR5cGU6dix0cmFja2luZ1BhcmFtczprLnRyYWNraW5nUGFyYW1zfTtiLnB1c2gobil9cmV0dXJuIGJ9OwpPNEM9ZnVuY3Rpb24obil7cVQoKSYmKG4ubVE9bi5hcGkuZUcoKSxuLk49bmV3IFk2LG4uVz0yLG4ubVEuU2woInB0X3Bpc2giKSx3aW5kb3cucmVxdWVzdElkbGVDYWxsYmFjaz93aW5kb3cucmVxdWVzdElkbGVDYWxsYmFjaygoKT0+e0sxVShuKX0pOksxVShuKSl9OwpxVD1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cuYW5kcm9pZCYmd2luZG93LmFuZHJvaWQud2VidmlldyYmd2luZG93LmFuZHJvaWQud2Vidmlldy5nZXRFeHBlcmltZW50YWxNZWRpYUludGVncml0eVRva2VuUHJvdmlkZXJ9OwpLMVU9ZnVuY3Rpb24obil7aWYocVQoKSl7bi5tUT1uLmFwaS5lRygpO24ubVEuU2woInB0X3BpcyIpO3RyeXt3aW5kb3cuYW5kcm9pZC53ZWJ2aWV3LmdldEV4cGVyaW1lbnRhbE1lZGlhSW50ZWdyaXR5VG9rZW5Qcm92aWRlcih7Y2xvdWRQcm9qZWN0TnVtYmVyOjg2ODYxODY3Njk1Mn0pLnRoZW4oVz0+e24uSj1XO24uTj8ucmVzb2x2ZSgpO24ubVEuU2woInB0X3BpZiIpfSkuY2F0Y2goVz0+e0dHKFcsInBsYXllcl9zdGFydCIpOwpuLm1RLlNsKCJwdF9waWUiKTtuLk4/LnJlamVjdChXKX0pfWNhdGNoKFcpe0dHKFcsInBsYXllcl9zdGFydF9jYXRjaCIpLG4uYXBpLlUoInBmZXMiLHt9KSxuLk4/LnJlamVjdChXKX19fTsKR0c9ZnVuY3Rpb24obixXKXtuLm1lc3NhZ2UmJmcuR3EoRXJyb3IoYCR7V31fJHtuLm1lc3NhZ2V9YCkpfTsKUGd4PWZ1bmN0aW9uKG4sVyl7aWYobi5KKXt2YXIgRD1XLnZpZGVvSWQ7bi5XPTM7bi5tUS5TbCgicHRfbXMiKTt0cnl7bi5KLnJlcXVlc3RUb2tlbihEKS50aGVuKGI9PntuLm1RLlNsKCJwdF9tZiIpO2lmKGI9Zy5kMShiKSlXLnpmPXtZdDpifX0pLmNhdGNoKGI9PntuLm1RLlNsKCJwdF9tZSIpOwpHRyhiLCJwbGF5ZXJfZ2VuZXJhdGUiKTtuLmhhbmRsZUVycm9yKGIsVyl9KX1jYXRjaChiKXtHRyhiLCJwbGF5ZXJfZ2VuZXJhdGVfY2F0Y2giKSxuLmhhbmRsZUVycm9yKGIsVyl9fX07Clo0eD1mdW5jdGlvbihuLFcpe2cueDYobi5hcGkuRygpKSYmKFc/bi5qLnNob3coKTpuLmouaGlkZSgpKX07CnlQaj1mdW5jdGlvbihuKXtuLlg8bi5KLmxlbmd0aD9VZzIobik6KG4uYXBpLmdldFBsYXllclN0YXRlT2JqZWN0KDEpLk4oMikmJihuLlY9ITApLG4uTj0hMCxuLlg9MCxuLkoubGVuZ3RoPTAsbi5hcGkuWDkoKSxuLk49ITEpfTsKRUJDPWZ1bmN0aW9uKG4pe3ZhciB7aW50ZXJzdGl0aWFsczpXfT1uLmFwaS5nZXRWaWRlb0RhdGEoKSxEPVtdO2ZvcihsZXQgTCBvZiBXKXtXPUQ7dmFyIGI9Vy5wdXNoLHY9bixrPUwucGxheWVyVmFycyxoPUwua3EseD1MLnRpbWU7bGV0IGU9YHl0by0ke3YuWSsrfWA7eD1uZXcgZy5sNSh4LHgse2lkOmUscHJpb3JpdHk6NyxuYW1lc3BhY2U6Inl0byJ9KTt2LktbZV09e3BsYXllclZhcnM6ayxwbGF5ZXJUeXBlOmh9O2IuY2FsbChXLHgpO1c9bi5hcGkuZ2V0VmlkZW9EYXRhKHtwbGF5ZXJUeXBlOjF9KTtXPU9iamVjdC5hc3NpZ24oe29hdXRoX3Rva2VuOlcub2F1dGhUb2tlbn0sTC5wbGF5ZXJWYXJzKTtuLmFwaS5wcmVsb2FkVmlkZW9CeVBsYXllclZhcnMoVyxMLmtxKX1uLmFwaS5naChELDEpfTsKVWcyPWZ1bmN0aW9uKG4pe3ZhciBXPW4uSltuLlhdO2lmKFcpe3ZhciB7cGxheWVyVmFyczpELHBsYXllclR5cGU6Yn09bi5LW1ddO24uTj0hMDtuLlgrKztXPW4uYXBpLmdldFZpZGVvRGF0YSh7cGxheWVyVHlwZToxfSk7Vz1PYmplY3QuYXNzaWduKHtvYXV0aF90b2tlbjpXLm9hdXRoVG9rZW59LEQpO24uYXBpLmxvYWRWaWRlb0J5UGxheWVyVmFycyhXLCEwLGIsITApO24uTj0hMX19OwpvQnI9YXN5bmMgZnVuY3Rpb24obixXLEQsYil7aWYoYXdhaXQgaTRVKG4pKXRyeXtsZXQgdj17a2V5Om5mKFcsInZpZGVvUGxheWJhY2tQb3NpdGlvbkVudGl0eSIpLHZpZGVvSWQ6VyxsYXN0UGxheWJhY2tQb3NpdGlvblNlY29uZHM6RC50b1N0cmluZygpLGxhc3RVcGRhdGVkQ2xpZW50VGltZXN0YW1wTXM6Yi50b1N0cmluZygpfTthd2FpdCBweXQobi5OLHYpO24uSiE9PVcmJihhd2FpdCB1angobiksbi5KPVcpfWNhdGNoKHYpe24uaGFuZGxlRXJyb3IoIkZhaWxlZCB0byBhZGQgb3IgdXBkYXRlIHBsYXliYWNrIHBvc2l0aW9uIix2KX1lbHNlIG4uYXBpLlUoInZwcGUiLHtwdToiYXUifSl9OwpkZ3c9ZnVuY3Rpb24obil7dmFyIFc9bi5hcGkuZ2V0VmlkZW9EYXRhKCk/LnZpZGVvSWQ7aWYoVyl7dmFyIEQ9bi5hcGkuZ2V0Q3VycmVudFRpbWUoKSxiPURhdGUubm93KCk7b0JyKG4sVyxELGIpfX07Cmk0VT1hc3luYyBmdW5jdGlvbihuKXtpZighbi5OKXt0NXx8KHQ1PUk5MigpKTtsZXQgVz1hd2FpdCB0NTtpZighVylyZXR1cm4hMTtuLk49V31yZXR1cm4hMH07CnVqeD1hc3luYyBmdW5jdGlvbihuKXtpZihuLk4pdHJ5e3ZhciBXPWF3YWl0IFVlKG4uTiwidmlkZW9QbGF5YmFja1Bvc2l0aW9uRW50aXR5IiksRD1hd2FpdCBVZShuLk4sIm1haW5WaWRlb0VudGl0eSIpO2xldCBiPW5ldyBTZXQoRC5tYXAoaD0+aC52aWRlb0lkKSksdj1XLmZpbHRlcihoPT4hYi5oYXMoaC52aWRlb0lkKSk7CnYuc29ydCgoaCx4KT0+TnVtYmVyKHgubGFzdFVwZGF0ZWRDbGllbnRUaW1lc3RhbXBNcyktTnVtYmVyKGgubGFzdFVwZGF0ZWRDbGllbnRUaW1lc3RhbXBNcykpOwpsZXQgaz1EYXRlLm5vdygpLTg2NEU1O1c9W107Zm9yKEQ9MDtEPHYubGVuZ3RoO0QrKyl7bGV0IGg9dltEXTsoRD49bi5XfHxOdW1iZXIoaC5sYXN0VXBkYXRlZENsaWVudFRpbWVzdGFtcE1zKTxrKSYmaC5rZXkmJlcucHVzaChoLmtleSl9Vy5sZW5ndGg+MCYmKG4uYXBpLlUoInZwcGUiLHtleHA6Vy5sZW5ndGh9KSxhd2FpdCBIaHcobi5OLFcpKX1jYXRjaChiKXtuLmhhbmRsZUVycm9yKCJGYWlsZWQgdG8gZXhwaXJlIHBsYXliYWNrIHBvc2l0aW9uIixiKX19Owp6TFo9ZnVuY3Rpb24obil7L1teYS16QS1aMC05Oy4hXy1dLy50ZXN0KG4pJiYobj1uLnJlcGxhY2UoL1srXS9nLCItIikucmVwbGFjZSgvW15hLXpBLVowLTk7LiFfLV0vZywiXyIpKTtyZXR1cm4gbn07CmxwMj1mdW5jdGlvbihuKXtyZXR1cm4gd2luZG93LlByb2ZpbGVyJiZuZXcgd2luZG93LlByb2ZpbGVyKG4pfTsKalVVPWZ1bmN0aW9uKG4pe3ZhciBXPW4uc2FtcGxlSW50ZXJ2YWwsRD1uLm1heEJ1ZmZlclNpemU7aWYoIW4ucU4oKSYmVz4wJiZEPjAmJiFuLk4mJm4uVzwxRTcpdHJ5e24uWD1scDIoe3NhbXBsZUludGVydmFsOlcsbWF4QnVmZmVyU2l6ZTpEfSksbi5YPy5hZGRFdmVudExpc3RlbmVyKCJzYW1wbGVidWZmZXJmdWxsIixhc3luYygpPT57YXdhaXQgVEt3KG4pO2pVVShuKX0pfWNhdGNoKGIpe24uTj16TFooYi5tZXNzYWdlKSxuLkooKX19OwpUS3c9YXN5bmMgZnVuY3Rpb24obil7dHJ5e2xldCBXPWF3YWl0IG4uWD8uc3RvcCgpO1cmJm4ubG9nVHJhY2UoVyl9Y2F0Y2goVyl7bi5OPXpMWihXLm1lc3NhZ2UpLG4uSigpfX07ClJMdD1mdW5jdGlvbihuLFcsRCl7aWYoRCl7dmFyIGI9IiI7Q2d0KG4sVykmJihiPVcsbi5hcGkuRygpLkhKPVcpO2ImJkJLQyhuLGIpJiYodnRDKG4uYXBpLGIpLFNrKGZFKG4uYXBpLkcoKSxuLmFwaS5nZXRWaWRlb0RhdGEoKT8uVigpKSx2PT57dmFyIGs9YjtGMXcodikhPT1rJiZ3YVMobixNaWkodikse3N0cmluZ1ZhbHVlOmt9KX0pKX19OwpRVVo9ZnVuY3Rpb24obil7QXMoKT8uc2l6ZSYmU2soZkUobi5hcGkuRygpLG4uYXBpLmdldFZpZGVvRGF0YSgpPy5WKCkpLFc9PnsoVz1GMXcoVykpJiZCS0MobixXKSYmKG4uYXBpLkcoKS5ISj1XKX0pfTsKQ2d0PWZ1bmN0aW9uKG4sVyl7bj1uLmFwaS5nZXRBdmFpbGFibGVBdWRpb1RyYWNrcygpO2ZvcihsZXQgRCBvZiBuKWlmKEQuZ2V0TGFuZ3VhZ2VJbmZvKCkuZ2V0SWQoKT09PVcpcmV0dXJuIEQ7cmV0dXJuIG51bGx9OwpCS0M9ZnVuY3Rpb24obixXKXtyZXR1cm4gVy5zcGxpdCgiLiIpWzBdIT09IiImJm4uYXBpLmdldFZpZGVvRGF0YSgpPy5JTSgpfTsKRjF3PWZ1bmN0aW9uKG4pe3tuPU1paShuKTtsZXQgVz1BcygpO249Vz9XLmdldChuKTp2b2lkIDB9cmV0dXJuIG4mJm4uc3RyaW5nVmFsdWU/bi5zdHJpbmdWYWx1ZToiIn07CndhUz1mdW5jdGlvbihuLFcsRCl7VmliKFt7c2V0dGluZ0l0ZW1JZDpXLHNldHRpbmdPcHRpb25WYWx1ZTpEfV0pO1NrKG4uWW8oKSxiPT57QkdNKGIsVyxEKX0pfTsKTWlpPWZ1bmN0aW9uKG4pe3ZhciBXPSg0ODQpLnRvU3RyaW5nKCk7biYmKFc9KDQ4MykudG9TdHJpbmcoKSk7cmV0dXJuIFd9OwpWaWI9ZnVuY3Rpb24obil7dmFyIFc9QXMoKTtXfHwoVz1uZXcgTWFwKTtmb3IobGV0IEQgb2YgbilXLnNldChELnNldHRpbmdJdGVtSWQsRC5zZXR0aW5nT3B0aW9uVmFsdWUpO249SlNPTi5zdHJpbmdpZnkoT2JqZWN0LmZyb21FbnRyaWVzKFcpKTtnLlBCKCJ5dC1wbGF5ZXItdXNlci1zZXR0aW5ncyIsbiwyNTkyRTMpfTsKcjk9ZnVuY3Rpb24obil7bi5qPW51bGw7bi5LPW51bGw7bi5OTigkUCgib3ZlciIpLG4uWjEpO24uTk4oInRvdWNoc3RhcnQiLG4uWSk7bi5OJiZuLk5OKCRQKCJkb3duIiksbi5WUSl9Owpzcj1mdW5jdGlvbihuKXtuLlguSighbi5OKX07CiRQPWZ1bmN0aW9uKG4pe3JldHVybiB3aW5kb3cubmF2aWdhdG9yLm1zUG9pbnRlckVuYWJsZWQ/YE1TUG9pbnRlciR7bi5jaGFyQXQoMCkudG9VcHBlckNhc2UoKX0ke24uc3Vic3RyaW5nKDEpfWA6YG1vdXNlJHtufWB9OwpOVD1mdW5jdGlvbihuKXtyZXR1cm4gbiYmY1BiP2cuSksobil8fGRvY3VtZW50OmRvY3VtZW50fTsKYXB4PWZ1bmN0aW9uKG4sVyl7Zm9yKGxldCBEPTA7RDxXLmNoYW5nZWRUb3VjaGVzLmxlbmd0aDtEKyspe2xldCBiPVcuY2hhbmdlZFRvdWNoZXNbRF07aWYoYi5pZGVudGlmaWVyPT09bi5LKXJldHVybiBifXJldHVybiBudWxsfTsKblZyPWZ1bmN0aW9uKG4pe2NQYj1ufTsKV3F4PWZ1bmN0aW9uKG4sVyxEKXtmb3IobGV0IGIgb2YgVyl7Vz1OdW1iZXIoYi5wbGF5YmFja1JlbGF0aXZlUG9zaXRpb24/LnV0Y1RpbWVNcykvMUUzO2xldCB2PVcrTnVtYmVyKGIuZHVyYXRpb24/LnNlY29uZHMpLGs9YHN0YXRpb25zOiR7RH06JHtXfWA7bi5KLmhhcyhrKXx8KG4uSi5hZGQoayksYi5vbkVudGVyJiYobi5OW2tdPWIub25FbnRlciksbi5hcGkuYWRkVXRjQ3VlUmFuZ2UoayxXLHYsRCwhMSkpfX07CkpKPWZ1bmN0aW9uKG4pe3ZhciBXPS9jb2RlY3M9IihbXiJdKikiLy5leGVjKG4ubWltZVR5cGUpO3JldHVybiBXJiZXWzFdP1dbMV0rIiAoIituLml0YWcrIikiOm4uaXRhZ307CnBhPWZ1bmN0aW9uKG4sVyl7aWYobi5oZWlnaHRQeD09PS0xKXt2YXIgRD1udWxsO3RyeXtEPWcuekYoIkNBTlZBUyIpLG4uVz1ELmdldENvbnRleHQoIjJkIil9Y2F0Y2goaCl7fWlmKG4uVyl7dmFyIGI9bi5OKm4uc2FtcGxlQ291bnQ7bi5qPUQ7bi5qLndpZHRoPWI7bi5qLnN0eWxlLndpZHRoPWAke2J9cHhgO24uZWxlbWVudC5hcHBlbmRDaGlsZChuLmopfWVsc2UgZm9yKG4uc2FtcGxlQ291bnQ9TWF0aC5mbG9vcihuLnNhbXBsZUNvdW50LzQpLG4uTio9NCxEPTA7RDxuLnNhbXBsZUNvdW50O0QrKyliPWcuekYoIlNQQU4iKSxiLnN0eWxlLndpZHRoPWAke24uTn1weGAsYi5zdHlsZS5sZWZ0PWAke24uTipEfXB4YCxuLmVsZW1lbnQuYXBwZW5kQ2hpbGQoYil9RD1uLmVsZW1lbnQuY2xpZW50SGVpZ2h0fHwyNDtEIT09bi5oZWlnaHRQeCYmKG4uaGVpZ2h0UHg9RCxuLlcmJihEPSh3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MSk+MT8yOjEsbi5qLmhlaWdodD1uLmhlaWdodFB4KgpELG4uai5zdHlsZS5oZWlnaHQ9YCR7bi5oZWlnaHRQeH1weGAsbi5XLnNjYWxlKDEsRCkpKTtmb3IodmFyIHYgb2YgVyl7Vz1uO3ZhciBrPW4uaW5kZXg7Zm9yKEQ9MDtEKzI8Vy5WLmxlbmd0aCYmVy5WW0QrMV08djspRCsrO2I9TWF0aC5taW4oMSwodi1XLlZbRF0pLyhXLlZbRCsxXS1XLlZbRF0pKTtpZihXLlcpVy5XLmZpbGxTdHlsZT1XLktbRF0sVy5XLmZpbGxSZWN0KGsqVy5OLDAsVy5OLFcuaGVpZ2h0UHgpLFcuVy5maWxsU3R5bGU9Vy5LW0QrMV0sVy5XLmZpbGxSZWN0KGsqVy5OLFcuaGVpZ2h0UHgqKDEtYiksVy5OLFcuaGVpZ2h0UHgpO2Vsc2V7az1XLmVsZW1lbnQuY2hpbGRyZW5ba107bGV0IGg9d2luZG93LmRldmljZVBpeGVsUmF0aW98fDE7Yj1NYXRoLm1pbihXLmhlaWdodFB4LE1hdGgucm91bmQoVy5oZWlnaHRQeCpiKmgpL2gpfHwwO2suc3R5bGUuaGVpZ2h0PWAke2J9cHhgO2suc3R5bGUuYmFja2dyb3VuZENvbG9yPVcuS1tEKzFdO2suc3R5bGUuYm9yZGVyVG9wPQpgc29saWQgJHtXLmhlaWdodFB4LWJ9cHggJHtXLktbRF19YH1uLmluZGV4PShuLmluZGV4KzEpJW4uc2FtcGxlQ291bnR9dj1uLmluZGV4O24uVz9uLlcuY2xlYXJSZWN0KHYqbi5OLDAsbi5OLG4uaGVpZ2h0UHgpOihuPW4uZWxlbWVudC5jaGlsZHJlblt2XSxuLnN0eWxlLmhlaWdodD0iMHB4IixuLnN0eWxlLmJvcmRlclRvcD0iIil9OwpiQng9ZnVuY3Rpb24obixXKXt2YXIgRD0hIW4uTj8uRTUoKTtuLk58fChuLk49bmV3IERRTShuLmFwaSksZy51KG4sbi5OKSxnLnJ2KG4uYXBpLG4uTi5lbGVtZW50LDQpKTtuLk4uTUwoVyk7dmFyIGI9R3Uobi5hcGkuSjUoKSk7YiYmYi5sb2FkZWQmJkQhPT1XJiZiLm5HKCk7VyYmbi5hcGkuVSgic2ZuIix7fSwhMCl9Owp2VjI9ZnVuY3Rpb24obixXKXtpZihuLlc9PT12b2lkIDApcmV0dXJuITE7aWYoVy5zZWVrRGlyZWN0aW9uPT09IlRJTUVMWV9BQ1RJT05fVFJJR0dFUl9ESVJFQ1RJT05fRk9SV0FSRCImJk51bWJlcihXLnNlZWtMZW5ndGhNaWxsaXNlY29uZHMpPT09NUUzKXtpZihXPW4uVz09PTcyKW4uWD0iVElNRUxZX0FDVElPTl9UUklHR0VSX1NPVVJDRV9LRVlCT0FSRF9GT1JXQVJEX1NFRUtfRklWRV9TRUNPTkRTIjtyZXR1cm4gV31pZihXLnNlZWtEaXJlY3Rpb249PT0iVElNRUxZX0FDVElPTl9UUklHR0VSX0RJUkVDVElPTl9GT1JXQVJEIiYmTnVtYmVyKFcuc2Vla0xlbmd0aE1pbGxpc2Vjb25kcyk9PT0xRTQpe2lmKFc9bi5XPT09NzQpbi5YPSJUSU1FTFlfQUNUSU9OX1RSSUdHRVJfU09VUkNFX0tFWUJPQVJEX0ZPUldBUkRfU0VFS19URU5fU0VDT05EUyI7cmV0dXJuIFd9cmV0dXJuIFcuc2Vla0RpcmVjdGlvbj09PSJUSU1FTFlfQUNUSU9OX1RSSUdHRVJfRElSRUNUSU9OX0JBQ0tXQVJEIiYmCk51bWJlcihXLnNlZWtMZW5ndGhNaWxsaXNlY29uZHMpPT09NUUzP24uVz09PTcxOlcuc2Vla0RpcmVjdGlvbj09PSJUSU1FTFlfQUNUSU9OX1RSSUdHRVJfRElSRUNUSU9OX0JBQ0tXQVJEIiYmTnVtYmVyKFcuc2Vla0xlbmd0aE1pbGxpc2Vjb25kcyk9PT0xRTQ/bi5XPT09NzM6ITF9Owprd3c9ZnVuY3Rpb24obil7bi50aW1lbHlBY3Rpb25zJiYobi5qPW4udGltZWx5QWN0aW9ucy5yZWR1Y2UoKFcsRCk9PntpZihELmN1ZVJhbmdlSWQ9PT12b2lkIDApcmV0dXJuIFc7V1tELmN1ZVJhbmdlSWRdPTA7cmV0dXJuIFd9LHt9KSl9OwpZUD1mdW5jdGlvbihuKXtuLmNKJiZjbGVhclRpbWVvdXQobi5jSik7bi5jSj12b2lkIDA7bi5PPSExfTsKZmE9ZnVuY3Rpb24obil7aWYobi5OIT09dm9pZCAwKXt2YXIgVz0oVz1IOChuLG4uTikpJiZXLm9uQ3VlUmFuZ2VFbnRlcj9nLk40KFcub25DdWVSYW5nZUVudGVyKTp2b2lkIDA7dmFyIEQ9SDgobixuLk4pO2E6aWYoRCYmRC5hZGRpdGlvbmFsVHJpZ2dlcil7Zm9yKGIgb2YgRC5hZGRpdGlvbmFsVHJpZ2dlcilpZihiLnR5cGUmJigwLG4uYmRbYi50eXBlXSk/LihiLmFyZ3M/P3t9KSl7dmFyIGI9ITA7YnJlYWsgYX1iPSExfWVsc2UgYj0hMDtXJiZiJiYoZy5SVChuLmFwaSwiaW5uZXJ0dWJlQ29tbWFuZCIsVyksaGJqKG4sRCksbi5qW24uTl0hPT12b2lkIDAmJm4ualtuLk5dKyssbi5PPSEwKX19OwpIOD1mdW5jdGlvbihuLFcpe2lmKG4udGltZWx5QWN0aW9ucylmb3IobGV0IEQgb2Ygbi50aW1lbHlBY3Rpb25zKWlmKEQuY3VlUmFuZ2VJZD09PVcpcmV0dXJuIER9Owp4UXc9ZnVuY3Rpb24obixXKXtpZigobj1IOChuLFcpKSYmbi5vbkN1ZVJhbmdlRXhpdClyZXR1cm4gZy5ONChuLm9uQ3VlUmFuZ2VFeGl0KX07Cmhiaj1mdW5jdGlvbihuLFcpe3ZhciBEPU51bWJlcihXPy5tYXhWaXNpYmxlRHVyYXRpb25NaWxsaXNlY29uZHMpO0QmJihZUChuKSxuLmNKPXNldFRpbWVvdXQoKCk9PntpZihuLk4hPT12b2lkIDAmJlc/LmN1ZVJhbmdlSWQ9PT1uLk4pe24uTz0hMTtuLlg9dm9pZCAwO3ZhciBiPXhRdyhuLG4uTik7YiYmZy5SVChuLmFwaSwiaW5uZXJ0dWJlQ29tbWFuZCIsYil9fSxEKSl9Owp2YXIgZmFpPWZ1bmN0aW9uKG4sVyxELGIsdixrKXtyZXR1cm4gaXBbSVsxMF1dKHRoaXMsNCw1ODg5LG4sVyxELGIsdixrKX07CmdWaD1mdW5jdGlvbihuKXtpZihuPW4uZ2V0V2F0Y2hOZXh0UmVzcG9uc2UoKSlpZihuPWcudyhuLnBsYXllck92ZXJsYXlzPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXI/LnRpbWVseUFjdGlvbnNPdmVybGF5Vmlld01vZGVsLExxQyksbj8udGltZWx5QWN0aW9ucylyZXR1cm4gbj8udGltZWx5QWN0aW9ucy5tYXAoVz0+Zy53KFcsZWJyKSkuZmlsdGVyKFc9PiEhVyl9OwpKNT1mdW5jdGlvbihuKXtuLk4hPT1udWxsJiYoY2xlYXJUaW1lb3V0KG4uTiksbi5OPW51bGwpfTsKUjA9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1XXm47KG48PDEmMTUpPT0yJiZEW0lbMjVdXSgpO2lmKChuLTh8MTcpPG4mJihuLTZeMjIpPj1uKXt2YXIgaD1EW2JdLHg9aFtJW2teNzM1NF1dKElba143MzA5XSk7eD4wP0VjKGteNzM1NSxrXjEyOTAsdixoW0lba143MzU5XV0oMCx4KSxoW0lba143MzU5XV0oeCsxKSk6aCYmKHZbaF09SVtrXjczNTddKTt2YXIgTD1bXX1pZigobiYyNyk9PW4pe2lmKCEoZ1goRFtJW2teNzUzMl1dKXx8RFtJW2teNzUzMl1dW0lba143NTE4XV0oSVtrXjc0OTBdKXx8RFtJW2teNzUzMl1dW0lba143NTE4XV0oSVtrXjc0NzZdKXx8RFtJW2teNzUzMl1dW0lba143NTE4XV0oSVtrXjc1MzNdKSkpdGhyb3cgbmV3IGcuUXgoSVtrXjc0ODBdLERbSVtrXjc1MzJdXSk7aD1scihEW0lba143NTMyXV0pO0RbSVtrXjc1MjddXT1oW0lba143NTQwXV07RFtJW2teNzUxNF1dPWhbSVsxXV0rKGhbSVtrXjc1MDhdXSE9bnVsbD9gOiR7aFtJW2teNzUwOF1dfWA6Cklba143NTI4XSk7eD1oW0lba143NTMyXV07eFtJW2teNzUxOF1dKElba143NTM4XSk/KERbSVtrXjc1MjFdXT1JW2teNzUzOF0seD14W0lba143NTMwXV0oa143NTM5KSk6eFtJW2teNzUxOF1dKElba143NTIzXSk/KERbSVtrXjc1MjFdXT1JW2teNzUyM10seD14W0lba143NTMwXV0oa143NTM2KSk6eFtJW2teNzUxOF1dKElba143NDc1XSk/KHg9aXAoa143NTI5LGteODgwLHgsRCkseD14WzBdKTooRFtJW2teNzUyMV1dPXgseD1JW2teNzUyOF0pO3ZhciBlPURbSVsxXV07RFtJWzFdXT1pcChrXjc1MzMsa143NzcxLHgpO09iamVjdFtJW2teNzUzOV1dKERbSVsxXV0sZzcoMixrXjc1MDAsaFtJW2teNzUxNF1dW0lbMF1dKCkpKTtPYmplY3RbSVtrXjc1MzldXShEW0lbMV1dLGUpO0RbSVsxXV1bSVtrXjc0NzNdXT09PUlba143NTAxXSYmKGRlbGV0ZSBEW0lbMV1dW0lba143NDczXV0sRFtJW2teNzUyMV1dKz1JW2teNzQ4N10pO0RbSVtrXjc1MzJdXT1JW2teNzUyOF07RFtJW2teNzUyMF1dPQpJW2teNzUyOF07RFtJW2teNzU0MF1dJiYoaD1YRChrXjc0OTIsa14zMjg1LEQpKTtMPVtdfShuJjk5KT09biYmKGVYKGteMzQ4NSxrXjQ1NDIsRCksTD1EW0lba14zNTExXV0pO24rMyYxNXx8KEw9ZW5jb2RlVVJJQ29tcG9uZW50KEQpKTtyZXR1cm4gTH07ClhiaD1mdW5jdGlvbihuKXtKNShuKTtuLk49c2V0VGltZW91dCgoKT0+e24uaGlkZSgpfSwzRTMpfTsKSUc9ZnVuY3Rpb24obil7dmFyIFc9bi5hcGkuVUooKTtpZihXKXtsZXQgRD1uLmFwaS5nZXRQbGF5ZXJTaXplKCk7Vy5zdHlsZS50cmFuc2Zvcm09YHRyYW5zbGF0ZSgke24uTipELndpZHRoKigxLW4uc2NhbGUpfXB4LCAke24uSipELmhlaWdodCooMS1uLnNjYWxlKX1weCkgc2NhbGUoJHtuLnNjYWxlfSlgO1cuc3R5bGUudHJhbnNmb3JtT3JpZ2luPSIwIDAiO1c9bi5pbmRpY2F0b3I7Vy5XLnRleHRDb250ZW50PWAke051bWJlcihuLnNjYWxlLnRvRml4ZWQoMSkpfXhgO1cuTj09PW51bGwmJlhiaChXKTtuLnNjYWxlPjE/bi5pbmRpY2F0b3Iuc2hvdygpOm4uaW5kaWNhdG9yLmhpZGUoKTtXPW4uc2NhbGU+MT8iWk9PTV9TVEFURV9GUkVFIjoiWk9PTV9TVEFURV9PUklHSU5BTCI7VyE9PW4uem9vbVN0YXRlJiYobi56b29tU3RhdGU9VyxnLnpVKCJ3YXRjaFpvb21TdGF0ZUNoYW5nZSIse3pvb21TdGF0ZTpuLnpvb21TdGF0ZX0pKX19OwpxSDE9ZnVuY3Rpb24obil7bj1uLldEKCk7aWYoIW4pcmV0dXJuITE7bj1nLm9FKG4pLmV4cHx8IiI7cmV0dXJuIG4uaW5jbHVkZXMoInhwdiIpfHxuLmluY2x1ZGVzKCJ4cGUiKX07Ckd3VT1mdW5jdGlvbihuKXtmb3IobGV0IFcgb2Ygbi5OKCEwKSlpZihxSDEoVykpcmV0dXJuITA7cmV0dXJuITF9Owp0THg9ZnVuY3Rpb24obixXKXtmb3IobGV0IGIgb2Ygbi5OKCEwKSlpZihxSDEoYikpe249Yjt2YXIgRD17cG90YzoiMSIscG90Old9O24udXJsJiYobi51cmw9Zy56ZChuLnVybCxEKSl9fTsKJFF4PWFzeW5jIGZ1bmN0aW9uKG4pe3RyeXthd2FpdCBufWNhdGNoKFcpe319OwpybU09ZnVuY3Rpb24obil7dmFyIFc9bmV3IHF3LEQ9e1siWC1Hb29nLUFwaS1LZXkiXToiQUl6YVN5RHlUNVcwSmg0OUYzMFBxcXR5ZmRmN3BETEZLTEpvQW53In07cmV0dXJuIG5ldyBmVihXLG4sKCk9PkQpfTsKc0xiPWZ1bmN0aW9uKG4pe3JldHVybiBuZXcgVEgobil9OwpOYmI9ZnVuY3Rpb24obil7bi5KJiYobi5YPW5ldyBZNixuLmoucHJvbWlzZS50aGVuKCgpPT57bi5tUS5TbCgicG90X2lmIik7U2wobil9KSl9OwpIQnc9ZnVuY3Rpb24obil7dmFyIFc9KG4uUygiaHRtbDVfZ2VuZXJhdGVfc2Vzc2lvbl9wb190b2tlbiIpfHxuLlMoImh0bWw1X2dlbmVyYXRlX2NvbnRlbnRfcG9fdG9rZW4iKSkmJiFuLnVzZUxpdmluZ1Jvb21Qb1Rva2VuO3RyeXtpZihuLlMoImh0bWw1X3VzZV9zaGFyZWRfb3dsX2luc3RhbmNlIil8fG4uYXBpLkcoKS5adCgpLk4uUVEocGJNKSlZSGkobik7ZWxzZSBpZihXKXtuLm1RLlNsKCJwb3RfaXNjIik7bGV0IEQ9Zy5kTShuLmFwaS5HKCkuZXhwZXJpbWVudHMsImh0bWw1X3dlYnBvX2thaW9zX2RlZmVyX3RpbWVvdXRfbXMiKTtEPyhBNShuKSxnLm4kKCgpPT57bUEobil9LEQpKTpuLlMoImh0bWw1X3dlYnBvX2lkbGVfcHJpb3JpdHlfam9iIik/KEE1KG4pLGcuY0IoZy5EeSgpLCgpPT57bUEobil9KSk6bUEobil9fWNhdGNoKEQpe0QgaW5zdGFuY2VvZiBFcnJvciYmZy5HcShEKX19OwpZSGk9YXN5bmMgZnVuY3Rpb24obil7S2Eobiwic3dwb19pIik7QTUobik7U2wobik7dmFyIFc9YXdhaXQgZy5NaChnLkQ2KCkpO0thKG4sInN3cG9fY28iKTtXPWF3YWl0IFp0WihXKTtuLlMoImh0bWw1X3dlYl9wb190b2tlbl9kaXNhYmxlX2NhY2hpbmciKXx8Vy55aCgxNTApO24uSj1XO0thKG4sInN3cG9fY2MiKTskUXgoVy5IJCgpKS50aGVuKCgpPT57bi5OPSEwO24uai5yZXNvbHZlKCk7S2Eobiwic3dwb19yZSIpfSk7CmcubiQoKCk9PnttQShuKTtLYShuLCJzd3BvX3NpIil9LDApfTsKQTU9ZnVuY3Rpb24obil7bi5XfHwobi5XPW5XKCkpfTsKbUE9ZnVuY3Rpb24obil7dmFyIFc9bi5hcGkuRygpO24ubVEuU2woInBvdF9pc3QiKTtuLkp8fGZNMShuKTtuLlMoImh0bWw1X2JhbmRhaWRfYXR0YWNoX2NvbnRlbnRfcG9fdG9rZW4iKXx8KG4uUygiaHRtbDVfZ2VuZXJhdGVfc2Vzc2lvbl9wb190b2tlbiIpJiYoU2wobiksTmJiKG4pKSxXPWcuZE0oVy5leHBlcmltZW50cywiaHRtbDVfc2Vzc2lvbl9wb190b2tlbl9pbnRlcnZhbF90aW1lX21zIil8fDAsVz4wJiYobi5ZPVcwKCgpPT57U2wobil9LFcpKSxuLks9ITApfTsKSm14PWZ1bmN0aW9uKG4pe3ZhciBXPWcuWWgobi5leHBlcmltZW50cywiaHRtbDVfd2ViX3BvX3JlcXVlc3Rfa2V5Iik7cmV0dXJuIFc/VzpnLms2KG4pPyJaMWVsTmtBS0xwU1Izb1BPVU1TTiI6Ik80M3owZHBqaGdYMjBTQ3g0S0FvIn07CkthPWZ1bmN0aW9uKG4sVyl7bi5TKCJodG1sNV93ZWJwb19iZ2VfY3RtcCIpJiZuLmFwaS5VKFcse2h3cG86ISFuLkosaHdwb3I6bi5OfSl9OwpTbD1hc3luYyBmdW5jdGlvbihuKXtpZihuLlMoImh0bWw1X2dlbmVyYXRlX3Nlc3Npb25fcG9fdG9rZW4iKSYmIW4udXNlTGl2aW5nUm9vbVBvVG9rZW4pe3ZhciBXPW4uYXBpLkcoKSxEPWcuQXIoIkVPTV9WSVNJVE9SX0RBVEEiKXx8Zy5BcigiVklTSVRPUl9EQVRBIik7RD1XLllyP1cuZGF0YXN5bmNJZDpEO0Q9Zy5ZaChXLmV4cGVyaW1lbnRzLCJodG1sNV9tb2NrX2NvbnRlbnRfYmluZGluZ19mb3Jfc2Vzc2lvbl90b2tlbiIpfHxXLmxpdmluZ1Jvb21Qb1Rva2VuSWR8fEQ7Vy5qVz1PcihuLEQpfX07CmZNMT1mdW5jdGlvbihuKXt2YXIgVz1uLmFwaS5HKCksRD1KbXgoVyk7RD1ybU0oRCk7dmFyIGI9RC5aai5iaW5kKEQpO0QuWmo9YXN5bmMgaz0+e2s9YXdhaXQgYihrKTtuLmFwaS5VKCJpdHIiLHt9KTtyZXR1cm4ga307CnRyeXt2YXIgdj1zTGIoe1VnOkQsa2Q6e21heEF0dGVtcHRzOjV9LHgzOntWajoiQ0xFbiIsZGlzYWJsZTpXLmV4cGVyaW1lbnRzLkVxKCJodG1sNV93ZWJfcG9fZGlzYWJsZV9yZW1vdGVfbG9nZ2luZyIpLEpwOlRwYihXLmV4cGVyaW1lbnRzKSxybzpoPT57dmFyIHg9SU0yLmdldChoKTt4fHwoeD1uZXcgU0hpKGgpLHg9bmV3IGhxKHgpLElNMi5zZXQoaCx4KSk7cmV0dXJuIHh9LApSaTpuLlMoIndwb19kaXNfbGZkbXMiKT8wOjFFM30sdDY6Zy5HcX0pO2xldCBrPW5ldyBBbXQoe08xOnYsVWc6RCxvbkVycm9yOmcuR3F9KTskUXgoay5IJCgpKS50aGVuKCgpPT57bi5OPSEwO24uai5yZXNvbHZlKCl9KTsKbi5TKCJodG1sNV93ZWJfcG9fdG9rZW5fZGlzYWJsZV9jYWNoaW5nIil8fGsueWgoMTUwKTtnLnUobix2KTtnLnUobixrKTtuLko9a31jYXRjaChrKXtnLkdxKGspLHY/LmRpc3Bvc2UoKX19OwpPcj1mdW5jdGlvbihuLFcpe2lmKCFuLkope2lmKG4uVyl0cnl7cmV0dXJuIG4uVyhXKX1jYXRjaChEKXtnLkdxKEQpfXJldHVybiIifXRyeXtuLm1RLlNsKG4uTj8icG90X2NtcyI6InBvdF9jc21zIik7bGV0IEQ9e0dyOiEwLEVSOiEwLHdfOld9O24uUygiaHRtbDVfd2ViX3BvX3Rva2VuX2Rpc2FibGVfY2FjaGluZyIpfHwoRC5oRz17YW06VyxBQjohMCxyMzohMH0pO2xldCBiPW4uSi5aUihEKTtuLm1RLlNsKG4uTj8icG90X2NtZiI6InBvdF9jc21mIik7bi5OJiYobi5YPy5yZXNvbHZlKCksbi5YPW51bGwsbi5WJiYobi5WPSExLG4uYXBpLmFwcC5NTigpLmpEKCExKSkpO3JldHVybiBifWNhdGNoKEQpe3JldHVybiBnLkdxKEQpLCIifX07Cktxcj1mdW5jdGlvbihuKXt2YXIgVz1nLnFqKCk7bi5KJiZnLnhvKFcse05IOlFXLFlMOm1RU30pfTsKZy5QOD1mdW5jdGlvbihuLFcsRCl7Zy5hTCgicGJzIixXPz8oMCxnLlIpKCksRD8/bi50aW1lck5hbWUpfTsKZy5PQk09ZnVuY3Rpb24obixXLEQpe3ZhciBiPWcuQ04oVy55USkmJiFXLnlRLlg7aWYoVy55US5lViYmKEZWKFcueVEpfHxXLnlRLlk9PT0ic2hvcnRzcGFnZSJ8fFcueVEuWT09PSJsZWFuYmFjayJ8fGIpJiYhbi5XKXtuLlc9ITA7bi5WPVcuY2xpZW50UGxheWJhY2tOb25jZTtnLkFyKCJUSU1JTkdfQUNUSU9OIil8fGcuU0goIlRJTUlOR19BQ1RJT04iLG4uQi5jc2lQYWdlVHlwZSk7bi5CLmNzaVNlcnZpY2VOYW1lJiZnLlNIKCJDU0lfU0VSVklDRV9OQU1FIixuLkIuY3NpU2VydmljZU5hbWUpO2lmKG4uTil7Yj1uLk4uZUcoKTtmb3IodmFyIHYgb2YgT2JqZWN0LmtleXMoYikpZy5hTCh2LGJbdl0sbi50aW1lck5hbWUpO3Y9UFYoQ0IpKG4uTi5Idik7Zy5ubCh2LG4udGltZXJOYW1lKTt2PW4uTjt2Lko9e307di5Idj17fX1nLm5sKHtwbGF5ZXJJbmZvOnt2aXNpYmlsaXR5U3RhdGU6UFYoakwpKCl9LHBsYXllclR5cGU6IkxBVEVOQ1lfUExBWUVSX0hUTUw1In0sbi50aW1lck5hbWUpOwpuLmohPT1XLmNsaWVudFBsYXliYWNrTm9uY2V8fE51bWJlci5pc05hTihuLkopfHwoZy52UCgiX3N0YXJ0IixuLnRpbWVyTmFtZSk/RD1QVihvTCkoIl9zdGFydCIsbi50aW1lck5hbWUpK24uSjpnLkdxKG5ldyBnLlF4KCJhdHRlbXB0ZWQgdG8gbG9nIGdhcGxlc3MgcGJzIGJlZm9yZSBDU0kgdGltZWxpbmUgc3RhcnRlZCIse2NwbjpXLmNsaWVudFBsYXliYWNrTm9uY2V9KSkpOyFEfHxnLnZQKCJwYnMiLG4udGltZXJOYW1lKXx8Vy5HU3x8Zy5QOChuLEQpfX07ClAkQz1mdW5jdGlvbihuKXtXUCgpO2NiKCJ3YXRjaCIsWyJwYnMiLCJwYnUiXSk7bi50aW1lck5hbWU9IiJ9OwpaQmo9ZnVuY3Rpb24obil7aWYobi5OKXt2YXIgVz1uLk47Vy5KPXt9O1cuSHY9e319bi5XPSExO24uaj12b2lkIDA7bi5KPU5hTn07ClVRaT1mdW5jdGlvbihuLFcpe3ZhciBEPSExLGI9bi5xdWV1ZS5maW5kSW5kZXgodj0+di5ncz09PVcpOwpiPj0wJiYobi5xdWV1ZS5zcGxpY2UoYiwxKSxEPSEwLFcucU4oKXx8Vy51bnN1YnNjcmliZSgicmVxdWVzdGNvbXBsZXRlZCIsbi5XLG4pLG4uVShXLCJkZXFfcXVldWUiLHt0Y3BuOlcuV04oKXx8Im5vbmUifSkpO2I9bi5KLmZpbmRJbmRleCh2PT52LmdzPT09Vyk7CmI+PTAmJihuLkouc3BsaWNlKGIsMSksRD0hMCxXLnFOKCl8fFcudW5zdWJzY3JpYmUoInJlcXVlc3Rjb21wbGV0ZWQiLG4uVyxuKSxuLlUoVywiZGVxX3dhaXQiLHt0Y3BuOlcuV04oKXx8Im5vbmUifSkpO3JldHVybiBEfTsKeW1pPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBvZiBuLnF1ZXVlKVcuZ3MucU4oKXx8bi51bnN1YnNjcmliZShXLmdzKTtmb3IobGV0IFcgb2Ygbi5KKVcuZ3MucU4oKXx8bi51bnN1YnNjcmliZShXLmdzKTtuLnF1ZXVlPVtdO24uSj1bXX07CkVWYj1mdW5jdGlvbihuLFcpe24uVShXLCJyZXFfbG9hZCIse3RjcG46Vy5XTigpfHwibm9uZSIsdHlwZToicHJlIn0pO2lmKCFuLnF1ZXVlLnNvbWUoYj0+Yi5ncz09PVcpJiYhbi5KLnNvbWUoYj0+Yi5ncz09PVcpKXt2YXIgRD17Z3M6VywKc3RhcnRlZDohMX07bi5xdWV1ZS5sZW5ndGg8bi5wb2xpY3kuTj9uLnF1ZXVlLnB1c2goRCk6KG4uSi5wdXNoKEQpLG4uVShXLCJ3YWl0Iix7dGNwbjpXLldOKCl8fCJub25lIn0pKTtuLlcoKX19OwppQlM9ZnVuY3Rpb24obil7dmFyIFc9bi5OP24uTi5XTigpfHwibm9uZSI6Im5vbmUiLEQ9bi5xdWV1ZS5tYXAoYj0+Yi5ncy5XTigpfHwibm9uZSIpLmpvaW4oIiwiKTsKcmV0dXJue3BjcG46Vyx3czpuLkoubGVuZ3RoLGNwbnM6RH19OwpaVD1mdW5jdGlvbihuKXtyZXR1cm4hIShuLnBsYXlsaXN0fHxuLmxpc3R8fG4uYXBpKX07Cml2PWZ1bmN0aW9uKG4sVyxELGIpe1c9VyE9PXZvaWQgMD9XOm4uaW5kZXg7Vz1uLml0ZW1zJiZXIGluIG4uaXRlbXM/bi5pdGVtc1tuLm9yZGVyW1ddXTpudWxsO3ZhciB2PW51bGw7VyYmKEQmJihXLmF1dG9wbGF5PSIxIiksYiYmKFcuYXV0b25hdj0iMSIpLHY9bmV3IGcuVXIobi55USxXKSxnLnUobix2KSx2Lk1kPSEwLHYuc3RhcnRTZWNvbmRzPW4uc3RhcnRTZWNvbmRzfHx2LmNsaXBTdGFydHx8MCxuLmxpc3RJZCYmKHYucGxheWxpc3RJZD1uLmxpc3RJZC50b1N0cmluZygpKSk7cmV0dXJuIHZ9Owp1QXQ9ZnVuY3Rpb24obixXKXtpZihXLnZpZGVvJiZXLnZpZGVvLmxlbmd0aCl7bi50aXRsZT1XLnRpdGxlfHwiIjtuLmRlc2NyaXB0aW9uPVcuZGVzY3JpcHRpb247bi52aWV3cz1XLnZpZXdzO24ubGlrZXM9Vy5saWtlcztuLmRpc2xpa2VzPVcuZGlzbGlrZXM7bi5hdXRob3I9Vy5hdXRob3J8fCIiO3ZhciBEPVcubG9vcDtEJiYobi5sb29wPUQpO0Q9aXYobik7bi5pdGVtcz1bXTtmb3IobGV0IGIgb2YgVy52aWRlbyliJiYoYi52aWRlb19pZD1iLmVuY3J5cHRlZF9pZCxuLml0ZW1zLnB1c2goYikpO24ubGVuZ3RoPW4uaXRlbXMubGVuZ3RoOyhXPVcuaW5kZXgpP24uaW5kZXg9VzpuLmZpbmRJbmRleChEKTtuLnNldFNodWZmbGUoITEpO24ubG9hZGVkPSEwO24uTiYmbi5OKCl9fTsKdXY9ZnVuY3Rpb24obixXKXtuLmluZGV4PWcuRmYoVywwLG4ubGVuZ3RoLTEpO24uc3RhcnRTZWNvbmRzPTB9Owp6YnI9YXN5bmMgZnVuY3Rpb24obixXKXt2YXIgRD1uYygpLGI9bi5HKCksdj17Y29udGV4dDpnLm9UKG4pLHBsYXliYWNrQ29udGV4dDp7Y29udGVudFBsYXliYWNrQ29udGV4dDp7YW5jZXN0b3JPcmlnaW5zOmIuYW5jZXN0b3JPcmlnaW5zfX19LGs9Yi5nZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnKCk7az8uZW5jcnlwdGVkSG9zdEZsYWdzJiYodi5wbGF5YmFja0NvbnRleHQuY29udGVudFBsYXliYWNrQ29udGV4dC5lbmNyeXB0ZWRIb3N0RmxhZ3M9ay5lbmNyeXB0ZWRIb3N0RmxhZ3MpO2s/LmhpZGVJbmZvJiYodi5wbGF5ZXJQYXJhbXM9e3Nob3dpbmZvOiExfSk7Yj1iLmVtYmVkQ29uZmlnO2s9bi5OZDt2YXIgaD1XLmRvY2lkfHxXLnZpZGVvX2lkfHxXLnZpZGVvSWR8fFcuaWQ7aWYoIWgpe2g9Vy5yYXdfZW1iZWRkZWRfcGxheWVyX3Jlc3BvbnNlO2lmKCFoKXt2YXIgeD1XLmVtYmVkZGVkX3BsYXllcl9yZXNwb25zZTt4JiYoaD1KU09OLnBhcnNlKHgpKX1oPWg/Zy53KGg/LmVtYmVkUHJldmlldz8udGh1bWJuYWlsUHJldmlld1JlbmRlcmVyPy5wbGF5QnV0dG9uPy5idXR0b25SZW5kZXJlcj8ubmF2aWdhdGlvbkVuZHBvaW50LApnLklRKT8udmlkZW9JZHx8bnVsbDpudWxsfWg9aD9oOnZvaWQgMDt4PW4ucGxheWxpc3RJZD9uLnBsYXlsaXN0SWQ6Vy5saXN0O3ZhciBMPVcubGlzdFR5cGU7aWYoeCl7dmFyIGU7TD09PSJ1c2VyX3VwbG9hZHMiP2U9e3VzZXJuYW1lOnh9OmU9e3BsYXlsaXN0SWQ6eH07b1YyKGIsayxoLFcsZSk7di5wbGF5bGlzdFJlcXVlc3Q9ZX1lbHNlIFcucGxheWxpc3Q/KGU9e3RlbXBsaXN0VmlkZW9JZHM6Vy5wbGF5bGlzdC50b1N0cmluZygpLnNwbGl0KCIsIil9LG9WMihiLGssaCxXLGUpLHYucGxheWxpc3RSZXF1ZXN0PWUpOmgmJihlPXt2aWRlb0lkOmh9LGs/ZS5zZXJpYWxpemVkVGhpcmRQYXJ0eUVtYmVkQ29uZmlnPWs6YiYmKGUuc2VyaWFsaXplZFRoaXJkUGFydHlFbWJlZENvbmZpZz1iKSx2LnNpbmdsZVZpZGVvUmVxdWVzdD1lKTtiPUxCKGRRWik7dHJ5e2xldCBHPWF3YWl0IGcucl8oRCx2LGIpLHI9bi5HKCk7Vy5yYXdfZW1iZWRkZWRfcGxheWVyX3Jlc3BvbnNlPUc7ci5jSj0KaE8oVyxnLm80KHIpKTtyLkQ9ci5jSj09PSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRkwiO0cmJkcudHJhY2tpbmdQYXJhbXMmJmcueXIoRy50cmFja2luZ1BhcmFtcyk7cmV0dXJuIG5ldyBnLlVyKHIsVyl9Y2F0Y2goRyl7cmV0dXJuIEcgaW5zdGFuY2VvZiBFcnJvcnx8KEc9RXJyb3IoImIyNTk4MDI3NDgiKSksZy5YaihHKSxufX07Cm9WMj1mdW5jdGlvbihuLFcsRCxiLHYpe2IuaW5kZXgmJih2LnBsYXlsaXN0SW5kZXg9U3RyaW5nKE51bWJlcihiLmluZGV4KSsxKSk7di52aWRlb0lkPUQ/RDoiIjtXP3Yuc2VyaWFsaXplZFRoaXJkUGFydHlFbWJlZENvbmZpZz1XOm4mJih2LnNlcmlhbGl6ZWRUaGlyZFBhcnR5RW1iZWRDb25maWc9bil9OwpnLmQ5PWZ1bmN0aW9uKG4sVyl7b0cuZ2V0KG4pO29HLnNldChuLFcpfTsKZy5sTVU9ZnVuY3Rpb24obixXKXtyZXR1cm4gVy5HKCkuUygiaHRtbDVfdXNlX2hsc19uYXRpdmVfY2FwdGlvbnMiKSYmZy5HbiYmbi56VygpJiYhIW4uSj8uVygpfTsKZy56Rz1mdW5jdGlvbihuLFcpe3JldHVybiBuLkcoKS5TKCJzYWZhcmlfbGl2ZV9kcm1fY2FwdGlvbnNfZml4IikmJm4uZ2V0VmlkZW9EYXRhKCk/Lk1pKCk/ITE6Zy5HbChuLkcoKSkmJiFXLmlzTWFuaWZlc3RsZXNzfTsKZy5sdj1mdW5jdGlvbihuLFcpe3JldHVybiBuLmluZm8uTigpP1c/bi5pbmZvLml0YWc9PT1XOiEwOiExfTsKZy5UYmk9ZnVuY3Rpb24obixXKXtpZihuLk4hPW51bGwmJmcuekcoVyxuLk4pJiZuLk4uTi5yYXdjYyE9bnVsbClyZXR1cm4hMDtpZighbi56VygpKXJldHVybiExO1c9ISFuLk4mJm4uTi5pc01hbmlmZXN0bGVzcyYmT2JqZWN0LnZhbHVlcyhuLk4uTikuc29tZShEPT5nLmx2KEQsIjM4NiIpKTsKbj0hIW4uTiYmIW4uTi5pc01hbmlmZXN0bGVzcyYmZy5tSChuLk4pO3JldHVybiBXfHxufTsKRCQ9ZnVuY3Rpb24obil7aWYobi5BLkcoKS5lJClyZXR1cm4gbi5OaS5nZXQoInV4Iil9OwpURz1mdW5jdGlvbihuKXtyZXR1cm4gbi5OaS5nZXQoImFkIil9OwpqbD1mdW5jdGlvbihuKXtyZXR1cm4gbi5OaS5nZXQoImNhcHRpb25zIil9OwpDYT1mdW5jdGlvbihuKXtyZXR1cm4gbi5OaS5nZXQoImFubm90YXRpb25zX21vZHVsZSIpfTsKR3U9ZnVuY3Rpb24obil7aWYobi5BLkcoKS5GZSlyZXR1cm4gbi5OaS5nZXQoInJlbW90ZSIpfTsKQjg9ZnVuY3Rpb24obil7cmV0dXJuIG4uTmkuZ2V0KCJjcmVhdG9yZW5kc2NyZWVuIil9OwpGWT1mdW5jdGlvbihuKXtpZihnLlhDKG4uQS5HKCkpKXJldHVybiBuLk5pLmdldCgia2lkcyIpfTsKZy4kRj1mdW5jdGlvbihuKXtyZXR1cm4gbi5OaS5nZXQoIndlYmdsIil9OwpqTGo9ZnVuY3Rpb24obixXKXtuLlc9V307CkMkdz1mdW5jdGlvbihuKXt2YXIgVz1uLkEuZ2V0VmlkZW9EYXRhKCk7cmV0dXJuIGcubE1VKFcsbi5BKXx8ISFXLndhfHwhIVcuY2FwdGlvblRyYWNrcy5sZW5ndGh8fGcuVGJpKFcsbi5BKX07Cnc5PWZ1bmN0aW9uKG4sVyxEPSExLGI9ITEsdil7dmFyIGssaD1uLk5pLmdldChXKTtpZighaHx8YilpZih2fHwodj0oKT0+e3c5KG4sVyxELGIpfSksa3x8KGs9KCk9PntNVChuLFcpfSksaD1ofHxCYmgobixXLEZxTShuLFcpLHYsaykpbi5OaS5zZXQoVyxoKSxoLmNyZWF0ZSgpLG4uQS5XSigibW9kdWxlY3JlYXRlZCIsVyksRCYmZy5WVShuLkEsIm9uQXBpQ2hhbmdlIil9OwpSRz1mdW5jdGlvbihuKXtpZihuLkEuRygpLkQpcmV0dXJuITE7aWYobj1uLkEuZ2V0VmlkZW9EYXRhKHtwbGF5ZXJUeXBlOjF9KS5nZXRQbGF5ZXJSZXNwb25zZSgpKXtsZXQgVz1uLmFkUGxhY2VtZW50cztpZihXKWZvcihsZXQgRD0wO0Q8Vy5sZW5ndGg7RCsrKWlmKFdbRF0uYWRQbGFjZW1lbnRSZW5kZXJlcilyZXR1cm4hMDtpZihuLmFkU2xvdHMpcmV0dXJuITB9cmV0dXJuITF9OwpRWT1mdW5jdGlvbihuKXtyZXR1cm4gbi5BLkcoKS5TKCJodG1sNV9hbGxvd19hc21qcyIpfHxuLkEuRygpLlp0KCkuTi5RUSh3YlMpfTsKRnFNPWZ1bmN0aW9uKG4sVyl7c3dpdGNoKFcpe2Nhc2UgImFkIjpyZXR1cm4gUkcobik7Y2FzZSAiYW5ub3RhdGlvbnNfbW9kdWxlIjpyZXR1cm4hMTtjYXNlICJhc21qcyI6cmV0dXJuIFFZKG4pO2Nhc2UgImNyZWF0b3JlbmRzY3JlZW4iOnJldHVybiExO2Nhc2UgImVtYmVkIjpyZXR1cm4gZy5vNChuLkEuRygpKTtjYXNlICJlbmRzY3JlZW4iOnJldHVybiExO2Nhc2UgImhlYXJ0YmVhdCI6cmV0dXJuIG4ueVAoKTtjYXNlICJraWRzIjpyZXR1cm4gZy5YQyhuLkEuRygpKTtjYXNlICJyZW1vdGUiOnJldHVybiBuLkEuRygpLkZlO2Nhc2UgIm1pbmlwbGF5ZXIiOnJldHVybiBuLkEuRygpLnNob3dNaW5pcGxheWVyVWlXaGVuTWluaW1pemVkO2Nhc2UgIm9mZmxpbmUiOnJldHVybiBuLkEuRygpLlpoO2Nhc2UgImNhcHRpb25zIjpyZXR1cm4gQyR3KG4pO2Nhc2UgInVucGx1Z2dlZCI6cmV0dXJuIGcuRGYobi5BLkcoKSk7Y2FzZSAidXgiOnJldHVybiBuLkEuRygpLmUkO2Nhc2UgIndlYmdsIjpXPQpuLkEuZ2V0VmlkZW9EYXRhKCk7dmFyIEQ9bi5BLkcoKTtuPWcuamQoKTtsZXQgYj1nLm5OKEQpLHY9Vy5KPy52aWRlbz8uaXNIZHIoKTtEPSFnLnF1KFcpJiYhdiYmRC5TKCJlbmFibGVfd2ViZ2xfbm9vcCIpO3JldHVybiBnLkpEKFcpfHxnLkhUKFcpfHxnLmZBKFcpP258fGI6Zy5rcChXKT9iOkQ/YjohMTtjYXNlICJ5cGMiOnJldHVybiBuLklWKCk7ZGVmYXVsdDpyZXR1cm4gZy5YaihFcnJvcihgTW9kdWxlIGRlc2NyaXB0b3IgJHtXfSBkb2VzIG5vdCBtYXRjaGApKSwhMX19OwpNVD1mdW5jdGlvbihuLFcpe1c9TUxiW1ddO2ZvcihsZXQgRCBvZiBXKW4uQS5HaShEKX07CkJiaD1mdW5jdGlvbihuLFcsRCxiLHYpe3RyeXtpZihEKXtsZXQgaz1vRy5nZXQoVyk7aWYoaylyZXR1cm4gbmV3IGsobi5BKTtSYngobixXLGIsdil9ZWxzZSBNVChuLFcpfWNhdGNoKGspe01UKG4sVyksZy5YaihrKX1yZXR1cm4gbnVsbH07ClJieD1mdW5jdGlvbihuLFcsRCxiKXtpZihuLkQpe3ZhciB2PVFMaVtXXTtXPW4uRCt2O24uSyYmKFcrPWA/Y2I9JHtuLkt9YCk7VkxNKG4sVywoKT0+e24uai5hZGQodik7RC5jYWxsKG4pfSxiKX19OwpjbWI9YXN5bmMgZnVuY3Rpb24obil7dmFyIFc9bi5OaS5nZXQoImFzbWpzIik7aWYoVylyZXR1cm4gVztXPW9HLmdldCgiYXNtanMiKT8/YXdhaXQgbmV3IFByb21pc2UoKEQsYik9PntSYngobiwiYXNtanMiLCgpPT57dmFyIHY9b0cuZ2V0KCJhc21qcyIpO3Y/RCh2KTpiKCJjYW5ub3QgbG9hZCBtb2R1bGUgYXNtanMiKX0sYil9KTsKaWYoIVcpcmV0dXJuIFByb21pc2UucmVqZWN0KCJjYW5ub3QgbG9hZCBtb2R1bGUgYXNtanMiKTtXPW5ldyBXKG4uQSk7bi5OaS5zZXQoImFzbWpzIixXKTtXLmNyZWF0ZSgpO3JldHVybiBXfTsKVlk9ZnVuY3Rpb24obil7dmFyIFc9bi5BLmdldFZpZGVvRGF0YSgpO2lmKG49Vy5TKCJ3ZWJfcGxheWVyX2RlZmVyX2FkIikpe2lmKGcuamooVy5JSiwiYWQiKXx8dzYoVyl8fFcuZW5hYmxlU2VydmVyU3RpdGNoZWREYWkpdmFyIEQ9ITE7ZWxzZXtuPVcuc3RhcnRTZWNvbmRzO3ZhciBiPVcucGxheWVyUmVzcG9uc2U/LmFkUGxhY2VtZW50cztpZihXPWIpe1c9TnVtYmVyLk1BWF9WQUxVRTtmb3IoRCBvZiBiKWlmKGI9RC5hZFBsYWNlbWVudFJlbmRlcmVyKXtsZXQgdj1iLmNvbmZpZz8uYWRQbGFjZW1lbnRDb25maWc7dj8ua2luZD09PSJBRF9QTEFDRU1FTlRfS0lORF9NSUxMSVNFQ09ORFMiJiYoYj0oTnVtYmVyKHY/LmFkVGltZU9mZnNldD8ub2Zmc2V0U3RhcnRNaWxsaXNlY29uZHMpfHwwKS1OdW1iZXIoYi5yZW5kZXJlcj8uYWRCcmVha1NlcnZpY2VSZW5kZXJlcj8ucHJlZmV0Y2hNaWxsaXNlY29uZHN8fDApLGI8VyYmKFc9YikpfVc9Vy01RTM8PW4qMUUzfUQ9Vz8hMTohMH1uPQpEfXJldHVybiBufTsKYU1VPWFzeW5jIGZ1bmN0aW9uKG4pe3JldHVybiBhd2FpdCBjbWIobil9OwpuRGo9ZnVuY3Rpb24obil7dmFyIFc9bi5BLmdldFZpZGVvRGF0YSgpLEQ9bi5PJiYhVy5pc0lubGluZVBsYXliYWNrTm9BZDtuLkEuUygiaHRtbDVfZGVmZXJfbW9kdWxlc19vbl9hZHNfb25seSIpJiYhVy5pc0FkKCkmJihEPSExKTtyZXR1cm4gRH07CmcuYzg9ZnVuY3Rpb24obil7VlkobikmJm4uWCgpO25EaihuKSYmKHc5KG4sImNhcHRpb25zIiwhMCksdzkobiwiZW5kc2NyZWVuIiksbi5OKCksdzkobiwiY3JlYXRvcmVuZHNjcmVlbiIsITApKX07CmFHPWZ1bmN0aW9uKG4sVyxEKXtmb3IobGV0IGIgb2YgV0VpKXtsZXQgdj1uLk5pLmdldChiKTt2JiYoRHx8di5oVihXKSkmJihnLkNwKHYpLG4uTmkuZGVsZXRlKGIpKX1uLkEuV0ooIm1vZHVsZXNEZXN0cm95ZWQiLFcpfTsKRHJaPWZ1bmN0aW9uKG4pe3JldHVybiBKZSgoKT0+bi5OaS5nZXQoImFzbWpzIik/P2FNVShuKSl9OwpWTE09ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIlNDUklQVCIpLGs9ITE7Zm9yKGxldCBIPTA7SDx2Lmxlbmd0aDtIKyspe2xldCBBPXZbSF07aWYoQS5zcmM9PT1XfHxBLmdldEF0dHJpYnV0ZSgiZGF0YS1vcmlnaW5hbC1zcmMiKT09PVcpdmFyIGg9QX1ofHwoaD1nLnpGKCJTQ1JJUFQiKSxoLnNldEF0dHJpYnV0ZSgiZGF0YS1vcmlnaW5hbC1zcmMiLFcpLGs9ITApO3ZhciB4PSgpPT57bi5xTigpfHxELmNhbGwobil9LEw9KCk9PntuLnFOKCl8fGIuY2FsbChuKX0sZT1oLm9ubG9hZDsKaC5vbmxvYWQ9SD0+e2cuVDcoeCk7ZSYmZS5hcHBseSh3aW5kb3csW0hdKX07CnZhciBHPWgub25lcnJvcjtoLm9uZXJyb3I9SD0+e2lmKE1hdGgucmFuZG9tKCk8LjAxKXtsZXQgQT1uZXcgZy5ReCgiVW5hYmxlIHRvIGxvYWQgcGxheWVyIG1vZHVsZSIsVyxkb2N1bWVudC5sb2NhdGlvbiYmZG9jdW1lbnQubG9jYXRpb24ub3JpZ2luKTtnLlhqKEEpfWcuVDcoTCk7RyYmRyhIKX07CnZhciByPWgsTj1yLm9ucmVhZHlzdGF0ZWNoYW5nZTtyLm9ucmVhZHlzdGF0ZWNoYW5nZT1IPT57c3dpdGNoKHIucmVhZHlTdGF0ZSl7Y2FzZSAibG9hZGVkIjpjYXNlICJjb21wbGV0ZSI6Zy5UNyh4KX1OJiZOKEgpfTsKayYmKCh2PW4uQS5HKCkuY3NwTm9uY2UpJiZoLnNldEF0dHJpYnV0ZSgibm9uY2UiLHYpLGcuUE0oaCxmdyhXKSksdj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiSEVBRCIpWzBdfHxkb2N1bWVudC5ib2R5LHYuaW5zZXJ0QmVmb3JlKGgsdi5maXJzdENoaWxkKSxuLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57aC5wYXJlbnROb2RlJiZoLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoaCl9KSl9OwpXYz1mdW5jdGlvbihuLFcsRCl7bi5xTigpO3ZhciBiPW5PKG4pO0Q/KG4uSnw9VyxXJjEmJm4uRC5zdGFydCgpLFcmMiYmbi5PLnN0YXJ0KCksVyYyMDQ4JiZuLmNKLnN0YXJ0KCkpOihuLkomPX5XLFcmMSYmbi5ELnN0b3AoKSxXJjImJm4uTy5zdG9wKCksVyYyMDQ4JiZuLmNKLnN0b3AoKSxXJjUxMiYmbi50dy5zdG9wKCkpO24uSiY1MTImJiEobi5KJjEyOCkmJmcuSmEobi50dyxuLlZRKTtXPW5PKG4pO2IhPT1XJiZuLldKKCJhdXRvaGlkZXVwZGF0ZSIsVyl9OwpibFo9ZnVuY3Rpb24obil7V2Mobiw0LCExKTtuLksmJihuLk4ud0gobi5LKSxuLks9bnVsbCxuLlc9bi5OLk5OKG4udGFyZ2V0LCJtb3VzZW92ZXIiLG4uWjEpKTtuLlcmJihuLk4ud0gobi5XKSxuLlc9bi5OLk5OKG4udGFyZ2V0LCJtb3VzZW92ZXIiLG4uWjEpKX07Cm5PPWZ1bmN0aW9uKG4pe3ZhciBXPW4uSjtuLmFwaS5HKCkuZlImJihXJj0tMTI5KTtuLmFwaS5TKCJ3ZWJfcGxheWVyX2RlZmF1bHRfYXV0b2hpZGUiKSYmKFcmPS01MTMpO3JldHVybiFXfTsKdkQxPWZ1bmN0aW9uKG4sLi4uVyl7dmFyIEQ9bi5hcGkuRygpO2ZvcihsZXQgayBvZiBXKXtpZigha3x8ayBpbnN0YW5jZW9mIGcuVXImJiFrLnZpZGVvSWQpY29udGludWU7dmFyIGI9bi5hcGkubGooKS5nZXRQbGF5ZXJTaXplKCk7dmFyIHY9Zy5IXygpO1c9Yi53aWR0aCp2O3YqPWIuaGVpZ2h0O2lmKFc+MTI4MHx8dj43MjApaWYoYj1rLkdCKCJtYXhyZXNkZWZhdWx0LmpwZyIpKWJyZWFrO2lmKFc+NjQwfHx2PjQ4MClpZihiPWsuR0IoIm1heHJlc2RlZmF1bHQuanBnIikpYnJlYWs7aWYoVz4zMjB8fHY+MTgwKWlmKGI9ay5HQigic2RkZWZhdWx0LmpwZyIpfHxrLkdCKCJocWRlZmF1bHQuanBnIil8fGsuR0IoIm1xZGVmYXVsdC5qcGciKSlicmVhaztpZihiPWsuR0IoImRlZmF1bHQuanBnIikpYnJlYWt9Zy4kNihEKSYmKEQ9bmV3IEltYWdlLEQuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsKCk9Pnt5U2goKX0pLEQuc3JjPWI/YjoiIixuLmFwaS5lRygpLnRpY2soImZ0ciIpKTsKbi5ZLnN0eWxlLmJhY2tncm91bmRJbWFnZT1iP2B1cmwoJHtifSlgOiIifTsKa1cxPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVz0wO1c8bi5rZXlzLmxlbmd0aDtXKyspbi53SChuLmtleXNbV10pO24ua2V5cz1bXX07CmJzPWZ1bmN0aW9uKG4sVyxELGI9ITEsdj0hMSxrLGg9ITApe3Z8fCh2PW4uYXBpLkcoKS5KKTt2YXIgeD1uLmFwaS5nZXRWaWRlb0RhdGEoKTtXPWVCKGcuRHVbV118fCIiLGI/e0NQTjp4LmNsaWVudFBsYXliYWNrTm9uY2V9Ont9KS5zcGxpdCgvXCQoQkVHSU58RU5EKV9MSU5LLyk7Yj1bXTtrJiZiLnB1c2goe1o6ImgyIixPcTprfSk7Yi5wdXNoKFdbMF0pO2gmJmIucHVzaCh7WjoiYnIifSk7Yi5wdXNoKHtaOiJhIix4YTp7aHJlZjpELHRhcmdldDp2PyJfYmxhbmsiOm51bGx9LEp3OiJ5dHAtZXJyb3ItbGluayIsT3E6V1syXX0pO24uaj0hMDtiLnB1c2goV1s0XSk7cmV0dXJue1o6InNwYW4iLFhGOmJ9fTsKdmM9ZnVuY3Rpb24obil7bj1uLnNwbGl0KGgwWik7dmFyIFc9W107Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKz0zKXtsZXQgYj1uW0QrK10uc3BsaXQoIlxuIik7Vy5wdXNoKGJbMF0pO2ZvcihsZXQgdj0xO3Y8Yi5sZW5ndGg7disrKVcucHVzaCh7WjoiYnIifSksVy5wdXNoKGJbdl0pO0Q8bi5sZW5ndGgmJlcucHVzaCh7WjoiYSIseGE6e2hyZWY6bltEXSx0YXJnZXQ6bltEKzFdfSxPcTpuW0QrMl19KX1yZXR1cm57Wjoic3BhbiIsWEY6V319Owp4cnQ9ZnVuY3Rpb24obixXKXt2YXIgRD1uLmVsZW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImEiKTtmb3IobGV0IGI9MDtiPEQubGVuZ3RoO2IrKyl7bGV0IHY9bi5OTihEW2JdLCJjbGljayIsVyk7bi5rZXlzLnB1c2godil9fTsKa0k9ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9TnVtYmVyKFcuZ2V0QXR0cmlidXRlKCJkYXRhLW92ZXJsYXktb3JkZXIiKSl8fDAsaz0wLGg9bnVsbDtmb3IobGV0IHggb2YgRC5jaGlsZHJlbil7aWYoYiYmeC5jbGFzc0xpc3QuY29udGFpbnMoInl0cC1vdmVybGF5LWlubGluZS1jb250YWluZXIiKSl7aD14O2JyZWFrfWlmKHY8KE51bWJlcih4LmdldEF0dHJpYnV0ZSgiZGF0YS1vdmVybGF5LW9yZGVyIikpfHwwKSlicmVhaztrKyt9aD9rSShuLFcsaCwhMSk6Yj8obj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxuLmNsYXNzTGlzdC5hZGQoInl0cC1vdmVybGF5LWlubGluZS1jb250YWluZXIiKSxuLnNldEF0dHJpYnV0ZSgiZGF0YS1vdmVybGF5LW9yZGVyIixgJHt2fWApLGg9bixoLmFwcGVuZENoaWxkKFcpLGcuanAoRCxoLGspKTpnLmpwKEQsVyxrKX07CmUwQz1mdW5jdGlvbihuLFcpe3ZhciBEPXREKFcpLGI9JHAoVyk7Vy5EbCYmbi5BLkpuKCl8fChuLk58fG4uQS5TKCJlbmFibGVfcGFpZF9jb250ZW50X292ZXJsYXlfYnVnZml4Iik/Vy52aWRlb0lkJiZXLnZpZGVvSWQhPT1uLnZpZGVvSWQmJihuLk4/LmplKCksIW4uQS5TKCJlbmFibGVfcGFpZF9jb250ZW50X292ZXJsYXlfYnVnZml4Iil8fEQmJmI/KG4udmlkZW9JZD1XLnZpZGVvSWQsbi5LPSEhYixuLksmJkQmJkxFcihuLGIsRCxXKSk6bi5LPSExKTpEJiZiJiYhbi5BLlMoImVuYWJsZV9wYWlkX2NvbnRlbnRfb3ZlcmxheV9idWdmaXgiKSYmTEVyKG4sYixELFcpKX07CmdEeD1mdW5jdGlvbihuLFcpe24uTiYmKFcuTig4KSYmbi5LPyhuLks9ITEsbi5XP24uVy5zdGFydCgpOm4uaigpKTooVy5OKDIpfHxXLk4oNjQpKSYmbi52aWRlb0lkJiYobi52aWRlb0lkPW51bGwsbi5XJiZuLlcuc3RvcCgpKSl9OwpMRXI9ZnVuY3Rpb24obixXLEQsYil7bi5OJiZuLk4uZGlzcG9zZSgpO24uTj1uZXcgZy5mXyhuLnV5LFcsbik7Zy51KG4sbi5OKTtiPUdlKGIpO1c9Yj8ubmF2aWdhdGlvbkVuZHBvaW50O2I9Yj8uaWNvbj8uaWNvblR5cGU7dmFyIHY9Zy53KFcsZy5Qaik/LnVybDtuLkEuc2V0VHJhY2tpbmdQYXJhbXMobi5lbGVtZW50LFc/LmNsaWNrVHJhY2tpbmdQYXJhbXN8fG51bGwpO1cmJiF2PyhuLmlubmVydHViZUNvbW1hbmQ9Vyx2PSIjISIpOm4uaW5uZXJ0dWJlQ29tbWFuZD1udWxsO24uVi51cGRhdGUoe2hyZWY6dj8/IiMiLHRleHQ6RCxpY29uOmI9PT0iTU9ORVlfSEFORCI/e1o6InN2ZyIseGE6e2ZpbGw6Im5vbmUiLGhlaWdodDoiMTAwJSIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMTAwJSJ9LFhGOlt7WjoicGF0aCIseGE6e2Q6Ik02IDlINVY1VjRINkgxOVY1SDZWOVpNMjEuNzIgMTYuMDRDMjEuNTYgMTYuOCAyMS4xNSAxNy41IDIwLjU1IDE4LjA1QzIwLjQ3IDE4LjEzIDE4LjQyIDIwLjAxIDE0LjAzIDIwLjAxQzEzLjg1IDIwLjAxIDEzLjY3IDIwLjAxIDEzLjQ4IDIwQzExLjMgMTkuOTIgOC41MSAxOS4yMyA1LjQgMThIMlYxMEg1SDZIN1Y2SDIxVjEzSDE2LjcyQzE2LjM3IDEzLjU5IDE1Ljc0IDE0IDE1IDE0SDEyLjdDMTMuMDEgMTQuNDYgMTMuNTYgMTUgMTQuNSAxNUgxNS4wMkMxNi4wNyAxNSAxNy4xIDE0LjY0IDE3LjkyIDEzLjk4QzE4LjgyIDEzLjI2IDIwLjAzIDEzLjIyIDIwLjkxIDEzLjg0QzIxLjU4IDE0LjMyIDIxLjkgMTUuMTkgMjEuNzIgMTYuMDRaTTE1IDEwQzE1IDkuNDUgMTQuNTUgOSAxNCA5QzEzLjQ1IDkgMTMgOS40NSAxMyAxMEgxNVpNMjAgMTFDMTkuNDUgMTEgMTkgMTEuNDUgMTkgMTJIMjBWMTFaTTE5IDdDMTkgNy41NSAxOS40NSA4IDIwIDhWN0gxOVpNOCA4QzguNTUgOCA5IDcuNTUgOSA3SDhWOFpNOCAxMEgxMkMxMiA4LjkgMTIuOSA4IDE0IDhDMTUuMSA4IDE2IDguOSAxNiAxMFYxMC4yOEMxNi41OSAxMC42MyAxNyAxMS4yNiAxNyAxMkgxOEMxOCAxMC45IDE4LjkgMTAgMjAgMTBWOUMxOC45IDkgMTggOC4xIDE4IDdIMTBDMTAgOC4xIDkuMSA5IDggOVYxMFpNNSAxMy41VjExSDNWMTdINVYxMy41Wk0yMC4zMyAxNC42NkMxOS44MSAxNC4yOSAxOS4xIDE0LjMxIDE4LjYgMTQuNzFDMTcuNTUgMTUuNTYgMTYuMjkgMTYgMTUuMDIgMTZIMTQuNUMxMi42MiAxNiAxMS42NyAxNC40NiAxMS40MyAxMy42NEwxMS4yNCAxM0gxNUMxNS41NSAxMyAxNiAxMi41NSAxNiAxMkMxNiAxMS40NSAxNS41NSAxMSAxNSAxMUg2VjEzLjVWMTcuMTZDOC45IDE4LjI5IDExLjUgMTguOTMgMTMuNTIgMTlDMTcuODUgMTkuMTUgMTkuODUgMTcuMzQgMTkuODcgMTcuMzJDMjAuMzMgMTYuOSAyMC42MiAxNi40IDIwLjc0IDE1Ljg0QzIwLjg0IDE1LjM3IDIwLjY4IDE0LjkxIDIwLjMzIDE0LjY2WiIsCmZpbGw6IndoaXRlIn19XX06bnVsbCxjaGV2cm9uOnZ8fG4uaW5uZXJ0dWJlQ29tbWFuZD9nLk9GKCk6bnVsbH0pfTsKWFBpPWZ1bmN0aW9uKG4pe24uVnx8KG4uVj0hMCxuLmFwaS5sb2dWaXNpYmlsaXR5KG4uZWxlbWVudCwhMCkpfTsKcW8yPWZ1bmN0aW9uKG4pe3ZhciBXPW9LKCkmJkV6KCk+PTY3JiYhbi5hcGkuRygpLnR3O249bi5hcGkuRygpLmRpc2FibGVPcmdhbmljVWk7cmV0dXJuIWcudWIoInRpemVuIikmJiFnLldYJiYhVyYmIW59OwpoaD1mdW5jdGlvbihuKXt2YXIgVz0hIW4uVjImJiFYeihuLmFwaSkmJiFuLmt0O3ZhciBEPW4uYXBpLmdldFByZXNlbnRpbmdQbGF5ZXJUeXBlKCk9PT0yLGI9bi5hcGkuRygpO0Q/KGI9VEcobi5hcGkuSjUoKSksVz1XJiZiLmpRKCkpOihEPWIuUygid2ViX3BsYXllcl9pbWF4X3RoZWF0ZXJfbW9kZSIpJiZuLmFwaS5RMCgpJiYhbi5hcGkuaXNJbmxpbmUoKSxXPVcmJihiLnNafHxEfHxuLmFwaS5pc0Z1bGxzY3JlZW4oKXx8Yi5neSkpO24uQTAhPT1XJiYobi5BMD1XLGcuaUgobi5hcGkuZ2V0Um9vdE5vZGUoKSwieXRwLWhpZGUtaW5mby1iYXIiLCFXKSl9OwpHV2I9ZnVuY3Rpb24obixXKXtpZighVylyZXR1cm4hMTt2YXIgRD1uLmFwaS5oNSgpO2lmKEQuSygpJiYoRD1ELmVfKCkpJiZnLkJ4KEQsVykpcmV0dXJuIEQuY29udHJvbHM7Zm9yKEQ9MDtEPG4uSW4ubGVuZ3RoO0QrKylpZihnLkJ4KG4uSW5bRF0sVykpcmV0dXJuITE7Zm9yKGxldCBiIG9mIG4ua1gpaWYoZy5LXyhXLGIpKXJldHVybiExO3JldHVybiBXPT09bi5hcGkuZ2V0Um9vdE5vZGUoKT8hMTohMH07CnRrMT1mdW5jdGlvbihuKXt2YXIgVz1uLmFwaS5nZXRQcmVzZW50aW5nUGxheWVyVHlwZSgpPT09MiYmKG4uYXBpLmxqKCkud0Z8fG4uYXBpLkcoKS5kaXNhYmxlT3JnYW5pY1VpKSYmbi5hcGkuRygpLmomJnhJJiZ2aj49MTE7bj1uLmFwaS5HKCkudHcmJnhJO3JldHVybiEoIVcmJiFuKX07CkxPPWZ1bmN0aW9uKG4sVyl7bi5qSi5MaigpO2lmKG4uYlcmJm4uUCQpbi5QJD0hMTtlbHNlIGlmKCFuLmFwaS5HKCkuc1YmJiFuLmVoKCkpe2xldCBEPW4uYXBpLmdldFBsYXllclN0YXRlT2JqZWN0KCk7RC5OKDIpJiZxcChuLmFwaSl8fG4uc2hvd1BsYXliYWNrSWNvbihEKTtXJiYkck0obixXKT9yZVMobik6IW4uYXBpLkcoKS5SdHx8RC5pc0N1ZWQoKXx8RC5OKDEwMjQpP24uUGIoKTpuLmVOLmlzQWN0aXZlKCk/bi5lTi5zdG9wKCk6bi5lTi5zdGFydCgpfX07CmVzPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIW4uYXBpLmlzSW5saW5lKCkmJiFHV2IobixBTyhXKSkmJmYyKFcpfTsKZ2Y9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5hcGkuZ2V0VmlkZW9EYXRhKCk/Lm11dGVkQXV0b3BsYXkmJlcudGFyZ2V0Py5jbGFzc05hbWU/LmluY2x1ZGVzKCJ5dHAtaW5mby1wYW5lbCIpPyExOmYyKFcpJiZuLmFwaS5pc011dGVkQnlNdXRlZEF1dG9wbGF5KCk/KG4uYXBpLnVuTXV0ZSgpLG4uYXBpLmdldFByZXNlbnRpbmdQbGF5ZXJUeXBlKCk9PT0yJiZuLmFwaS5wbGF5VmlkZW8oKSxXPW4uYXBpLmdldFBsYXllclN0YXRlT2JqZWN0KCksIVcuTig0KXx8Vy5OKDgpfHxXLk4oMil8fG4uUGIoKSwhMCk6ITF9Owokck09ZnVuY3Rpb24obixXKXtpZighbi5hcGkuRygpLlMoIndlYl9wbGF5ZXJfaW52aXNpYmxlX2Z1bGxzY3JlZW5fYnV0dG9uIikpcmV0dXJuITE7dmFyIEQ9bi5hcGkuZ2V0Um9vdE5vZGUoKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihXLnRhcmdldFRvdWNoZXMmJlcudGFyZ2V0VG91Y2hlcy5sZW5ndGgpe3ZhciBiPVcudGFyZ2V0VG91Y2hlc1swXS5jbGllbnRYO3ZhciB2PVcudGFyZ2V0VG91Y2hlc1swXS5jbGllbnRZfWVsc2UgVy5jbGllbnRYIT09dm9pZCAwJiYoYj1XLmNsaWVudFgsdj1XLmNsaWVudFkpO3JldHVybiBiIT09dm9pZCAwJiZ2IT09dm9pZCAwJiYoVz1iLUQubGVmdCxEPXYtRC50b3Asbj1uLmFwaS5nZXRQbGF5ZXJTaXplKCksRD49bi5oZWlnaHQtNDAmJlc+PW4ud2lkdGgtNDApPyEwOiExfTsKcmVTPWZ1bmN0aW9uKG4pe2lmKG4uYXBpLkcoKS5SdCYmbi5hcGkuZ2V0UHJlc2VudGluZ1BsYXllclR5cGUoKSE9PTMpdHJ5e24uYXBpLnRvZ2dsZUZ1bGxzY3JlZW4oKS5jYXRjaChXPT57c2pTKFcpfSksbi5hcGkuUygid2ViX3BsYXllcl9mdWxsc2NyZWVuX2RvdWJsZV9jbGlja192ZSIpJiZuLmFwaS5sb2dDbGljayhuLmFwaS5saigpLmVsZW1lbnQpfWNhdGNoKFcpe3NqUyhXKX19OwpzalM9ZnVuY3Rpb24obil7U3RyaW5nKG4pLmluY2x1ZGVzKCJmdWxsc2NyZWVuIGVycm9yIik/Zy5HcShuKTpnLlhqKG4pfTsKTl9oPWZ1bmN0aW9uKG4sVyxEKXtuLmFwaS5pc0Z1bGxzY3JlZW4oKT9EPDEtVyYmbi5hcGkudG9nZ2xlRnVsbHNjcmVlbigpOkQ+MStXJiZuLmFwaS50b2dnbGVGdWxsc2NyZWVuKCl9OwpZb0M9ZnVuY3Rpb24oKXtwUGp8fCh3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihYdz8idG91Y2hzdGFydCI6ImNsaWNrIiwoKT0+e2ZvcihsZXQgbj1xSy5sZW5ndGg7bjw0O24rKyl7bGV0IFc9Zy56RigiVklERU8iKTtXLmxvYWQoKTtxSy5wdXNoKG5ldyBnLkdWKFcpKX19LHtjYXB0dXJlOiEwLApwYXNzaXZlOiEwfSkscFBqPSEwKX07CnRoPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PUQuZ2V0VmlkZW9EYXRhKCksaz1XLmdldFZpZGVvRGF0YSgpO2lmKEQuZ2V0UGxheWVyU3RhdGUoKS5pc0Vycm9yKCkpcmV0dXJue21zZzoicGxheWVyLWVycm9yIn07dmFyIGg9ay5XO2lmKFcub3QoKT5iLzFFMysxKXJldHVybnttc2c6ImluLXRoZS1wYXN0In07aWYoay5pc0xpdmVQbGF5YmFjayYmIWlzRmluaXRlKGIpKXJldHVybnttc2c6ImxpdmUtaW5maW5pdGUifTtiPVcuaDUoKTt2YXIgeD1udWxsO2ImJih4PWIuaXNWaWV3KCk/Yi5tZWRpYUVsZW1lbnQuVigpOmIuVigpKTtpZih4JiZ4Lmxlbmd0aD4xMiYmZy5xdSh2KSlyZXR1cm57bXNnOiJwbGF5ZWQtcmFuZ2VzIn07aWYoIXYuVylyZXR1cm4gbnVsbDtpZighaClyZXR1cm57bXNnOiJuby1wdmQtZm9ybWF0cyJ9O2lmKCF2LlcuTigpfHwhaC5OKCkpcmV0dXJue21zZzoibm9uLWRhc2gifTtiPWgudmlkZW9JbmZvc1swXTt4PXYuVy52aWRlb0luZm9zWzBdO24uVEMmJkFKKGspJiYKKGI9Vy5veSgpLHg9RC5veSgpKTtpZighYnx8IXgpcmV0dXJue21zZzoibm8tdmlkZW8taW5mbyJ9O2lmKG4uTyYmKGIuTVcoKXx8eC5NVygpKSlyZXR1cm57bXNnOiJhdjEifTtXPW4uWSYmay5OUCgpJiZWVCgpO2lmKHguY29udGFpbmVyVHlwZSE9PWIuY29udGFpbmVyVHlwZSlpZihXKWsuVSgic2dhcCIse2llcnI6ImNvbnRhaW5lciJ9KTtlbHNlIHJldHVybnttc2c6ImNvbnRhaW5lciJ9O2lmKG4uRCYmIVcmJih4LklCIT09Yi5JQnx8eC5JQj09PSIifHxiLklCPT09IiIpKXJldHVybnttc2c6ImNvZGVjIn07aWYobi5jSiYmeC52aWRlbyYmYi52aWRlbyYmTWF0aC5hYnMoeC52aWRlby53aWR0aC94LnZpZGVvLmhlaWdodC1iLnZpZGVvLndpZHRoL2IudmlkZW8uaGVpZ2h0KT4uMDEpcmV0dXJue21zZzoicmF0aW8ifTtpZihnLnF1KGspJiZnLnF1KHYpKXJldHVybnttc2c6ImNvbnRlbnQtcHJvdGVjdGlvbiJ9O2g9aC5KWzBdO3Y9di5XLkpbMF07RD1oLmF1ZGlvO3ZhciBMPXYuYXVkaW87CmlmKEQuc2FtcGxlUmF0ZSE9PUwuc2FtcGxlUmF0ZSYmIWcub2QpaWYoVylrLlUoInNnYXAiLHtpZXJyOiJzcmF0ZSJ9KTtlbHNlIHJldHVybnttc2c6InNhbXBsZS1yYXRlIixjaTpoLml0YWcsY3I6RC5zYW1wbGVSYXRlLG5pOnYuaXRhZyxucjpMLnNhbXBsZVJhdGV9O3JldHVybihELm51bUNoYW5uZWxzfHwyKSE9PShMLm51bUNoYW5uZWxzfHwyKT97bXNnOiJjaGFubmVsLWNvdW50In06bi50dyYmay5OUCgpJiZiLnZpZGVvLmZwcyE9PXgudmlkZW8uZnBzP3ttc2c6ImZwcyJ9Om51bGx9OwpIbEM9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uZ2V0VmlkZW9EYXRhKCksdj1XLmdldFZpZGVvRGF0YSgpO2lmKCFiLkcoKS5zdXBwb3J0c0dhcGxlc3NTaG9ydHMoKSlyZXR1cm57bnE6ImVudiJ9O2lmKCEoRC5iZCYmIShiLkd1JiYhYi5pc0FkKCl8fHYuR3UmJiF2LmlzQWQoKSl8fEQuViYmKCFiLkd1fHxiLmlzQWQoKSkmJiF2Lkd1fHxELksmJighdi5HdXx8di5pc0FkKCkpJiYhYi5HdXx8Yi52SigpJiZ2LnZKKCkmJiFiLmlzQWQoKXx8IWIuR3UmJiF2Lkd1KSlyZXR1cm57bnE6ImF1dG9wbGF5In07aWYoYi5lbmRTZWNvbmRzPjApcmV0dXJue25xOiJlbmRjciJ9O2lmKCFiLkspcmV0dXJue25xOiJjbGllbnQifTtpZighbi5kVCgpKXJldHVybntucToibm8tZW1wdHkifTtuPXRoKEQsbixXLEluZmluaXR5KTtyZXR1cm4gbiE9bnVsbD97bnE6bi5tc2d9Om51bGx9OwokST1mdW5jdGlvbihuKXtuLkomJm4uTiYmKG4uSi51bnN1YnNjcmliZSgiaW50ZXJuYWx2aWRlb2Zvcm1hdGNoYW5nZSIsbi5YLG4pLG4uTi51bnN1YnNjcmliZSgiZGF0YWxvYWRlZCIsbi5YLG4pKX07CkFldD1mdW5jdGlvbihuKXt2YXIgVz1uZXcgZlloO1cuWT1uLlMoImg1X2dhcGxlc3Nfc3VwcG9ydF90eXBlc19kaWZmIik7Vy50dz0hMTtXLlRDPW4uUygiaHRtbDVfZ2FwbGVzc191c2VfZm9ybWF0X2luZm9fZml4Iik7Vy5PPW4uUygiaHRtbDVfZ2FwbGVzc19kaXNhYmxlX29uX2F2MSIpJiYhbi5TKCJodG1sNV9nYXBsZXNzX2VuYWJsZV9vbl9hdjEiKTtXLkQ9bi5TKCJodG1sNV9nYXBsZXNzX2NoZWNrX2NvZGVjX2RpZmZfc3RyaWN0bHkiKTtXLmJkPW4uUygiaHRtbDVfZ2FwbGVzc19vbl9hZF9hdXRvcGxheSIpO1cuY0o9bi5TKCJodG1sNV9nYXBsZXNzX2Rpc2FibGVfZGlmZl9hc3BlY3RfcmFkaW8iKTtXLlY9bi5TKCJodG1sNV9nYXBsZXNzX2FkX2F1dG9wbGF5X29uX2FkX3RvX3ZpZGVvX29ubHkiKSYmIW4uUygiaHRtbDVfZGlzYWJsZV9sb29wX3JhbmdlX2Zvcl9zaG9ydHNfYWRzIik7Vy5XPW4uUygiaHRtbDVfcHNldWRvZ2FwbGVzc19zaG9ydHNfc2Vla190b19uZXh0X3N0YXJ0Iik7Clcuaj1uLlp0KCkuTi5RUShKZTEpO1cuSz1uLlMoImh0bWw1X2dhcGxlc3NfYWRfYXV0b3BsYXlfb25fdmlkZW9fdG9fYWRfb25seSIpO1cuTj1OdW1iZXIobi5adCgpLk4uUVEoSVlpKSk7Vy5KPWcuZE0obi5leHBlcmltZW50cywiaHRtbDVfc2hvcnRzX2dhcGxlc3NfbmV4dF9idWZmZXJfaW5fc2Vjb25kcyIpPz9XLko7Vy5YPU51bWJlcihuLlp0KCkuTi5RUShTb1MpPz9XLlgpO3JldHVybiBXfTsKcmY9ZnVuY3Rpb24obixXKXtXPD1uLnN0YXR1cy5zdGF0dXN8fChuLnN0YXR1cz17c3RhdHVzOlcsZXJyb3I6bnVsbH0sVz09PTUmJm4uQ1IucmVzb2x2ZSgpKX07Cm1yaj1mdW5jdGlvbihuLFcsRCxiKXtuPW4uaXNWaWV3KCk/bi5tZWRpYUVsZW1lbnQ6bjtyZXR1cm4gbmV3IGcuc2cobixXLEQsYil9OwpLRWg9YXN5bmMgZnVuY3Rpb24obil7aWYobi5xTigpKXJldHVybiBQcm9taXNlLnJlamVjdChFcnJvcihuLnN0YXR1cy5lcnJvcnx8ImRpc3Bvc2VkIikpO24udGltZW91dC5zdGFydCgpO2F3YWl0IG4uQ1I7dmFyIFc9bi5OLmg1KCk7aWYoVy5pc0VuZGVkKCkpcmV0dXJuIG4uS2coImVuZGVkX2luX2ZpbmlzaFRyYW5zaXRpb24iKSxQcm9taXNlLnJlamVjdChFcnJvcihuLnN0YXR1cy5lcnJvcnx8IiIpKTtpZighbi5BYnx8IW42KG4uQWIpKXJldHVybiBuLlYmJm4uTi5VKCJubWMiLHtubXM6ISFuLkFiLG5tcnM6bi5BYj8uVygpfSksbi5LZygibmV4dF9tc2VfY2xvc2VkIiksUHJvbWlzZS5yZWplY3QoRXJyb3Iobi5zdGF0dXMuZXJyb3J8fCIiKSk7aWYobi5KLlV6KCkhPT1uLkFiKXJldHVybiBuLktnKCJuZXh0X21zZV9taXNtYXRjaCIpLFByb21pc2UucmVqZWN0KEVycm9yKG4uc3RhdHVzLmVycm9yfHwiIikpO3ZhciB7SF86RCxSOTpiLEYzOnZ9PW4uSygpO24uTi5jUCghMSwKITApO2lmKG4uVil7dmFyIGs9bi5BYi5OLGg9bi5BYi5KO2suVnUoITApO2guVnUoITApO2lmKGsuaVEoKSl7dmFyIHg9ay5aZygpO2xldCBMPWsuayQuTXIoKTt4JiZ4LnNlZ21lbnRTdGFydFRpbWUrTDxEJiZrLmFib3J0KCl9aC5pUSgpJiYoaz1oLlpnKCkseD1oLmskLk1yKCksayYmay5zZWdtZW50U3RhcnRUaW1lK3g8RCYmaC5hYm9ydCgpKX1uLnBvbGljeS5OPjAmJihuLlZ1KG4uQWIsITApLG4uSi51bCgpKTtoPW1yaihXLEQsdiwhbi5KLmdldFZpZGVvRGF0YSgpLmlzQWQoKSk7bi5KLnNldE1lZGlhRWxlbWVudChoKTsoaz1uLk4uTHAoKSkmJm4uSi5CbihrLkFvLGsud08pO24udHcmJihuLnBvbGljeS5XfHxuLkouc2Vla1RvKG4uSi5nZXRDdXJyZW50VGltZSgpKy4wMDEse0E5OiEwLFpVOjMscWQ6ImdhcGxlc3NfcHNldWRvIn0pLGgucGxheSgpKTtXPVcueXIoKTtXLmNwbj1uLk4uZ2V0VmlkZW9EYXRhKCkuY2xpZW50UGxheWJhY2tOb25jZTtXLnN0PWAke0R9YDtXLmV0PQpgJHt2fWA7bi5KLlUoImdhcGxlc3MiLFcpO24uTi5VKCJnYXBsZXNzVG8iLHtjcG46bi5KLmdldFZpZGVvRGF0YSgpLmNsaWVudFBsYXliYWNrTm9uY2V9KTtXPW4uTi5nZXRQbGF5ZXJUeXBlKCk9PT1uLkouZ2V0UGxheWVyVHlwZSgpO24uTi5OMihiLCEwLCExLFcsbi5KLmdldFZpZGVvRGF0YSgpLmNsaWVudFBsYXliYWNrTm9uY2Usbi5KLmdldFZpZGVvRGF0YSgpLnZpZGVvSWQpO24uSi5OMihuLkouZ2V0Q3VycmVudFRpbWUoKSwhMCwhMCxXLG4uTi5nZXRWaWRlb0RhdGEoKS5jbGllbnRQbGF5YmFja05vbmNlLG4uTi5nZXRWaWRlb0RhdGEoKS52aWRlb0lkKTtuLkouUDIoKTtnLm1LKCgpPT57IW4uSi5nZXRWaWRlb0RhdGEoKS5ZJiZuLkouZ2V0UGxheWVyU3RhdGUoKS5pc09yV2lsbEJlUGxheWluZygpJiZuLkouZTIoKX0pOwpyZihuLDYpO24uZGlzcG9zZSgpO3JldHVybiBQcm9taXNlLnJlc29sdmUoKX07ClBkWj1mdW5jdGlvbihuKXtpZihuLkouZ2V0VmlkZW9EYXRhKCkuVyl7dmFyIFc9bi50Yi5HKCkuUygiaHRtbDVfZ2FwbGVzc19zdXNwZW5kX25leHRfbG9hZGVyIikmJm4uaj09PTE7bi5KLm5tKG4uQWIsVyxuLmo9PT0xJiZnLllOKG4uTi5nZXRWaWRlb0RhdGEoKSkpO3JmKG4sMyk7T2xNKG4pO3ZhciB7Z2Q6RCxUYzpifT1OSyhuKTtELnN1YnNjcmliZSgidXBkYXRlZW5kIixuLmVYLG4pO2Iuc3Vic2NyaWJlKCJ1cGRhdGVlbmQiLG4uZVgsbik7bi5lWChEKTtuLmVYKGIpfX07Ck9sTT1mdW5jdGlvbihuKXtuLk4udW5zdWJzY3JpYmUoImludGVybmFsdmlkZW9kYXRhY2hhbmdlIixuLlgsbik7bi5KLnVuc3Vic2NyaWJlKCJpbnRlcm5hbHZpZGVvZGF0YWNoYW5nZSIsbi5YLG4pO24udGIuRygpLlMoImh0bWw1X2dhcGxlc3NfdXNlX2Zvcm1hdF9pbmZvX2ZpeCIpJiYobi5OLnVuc3Vic2NyaWJlKCJpbnRlcm5hbHZpZGVvZm9ybWF0Y2hhbmdlIixuLlgsbiksbi5KLnVuc3Vic2NyaWJlKCJpbnRlcm5hbHZpZGVvZm9ybWF0Y2hhbmdlIixuLlgsbikpO24uTi51bnN1YnNjcmliZSgibWVkaWFzb3VyY2VhdHRhY2hlZCIsbi5YLG4pO24uSi51bnN1YnNjcmliZSgic3RhdGVjaGFuZ2UiLG4uVEMsbil9OwpOSz1mdW5jdGlvbihuKXtyZXR1cm57Z2Q6bi5XLk4uayQsVGM6bi5XLkouayR9fTsKcE89ZnVuY3Rpb24obixXKXtpZighbilyZXR1cm4hMTt2YXIgRD1uLko7cmV0dXJuIEJSKG4uTj8uWkYoKSxXKSYmQlIoRD8uWkYoKSxXKX07ClpsaT1mdW5jdGlvbihuKXtpZighbilyZXR1cm4hMTt2YXIgVz1uLko7cmV0dXJuIG4uTj8uaVEoKXx8Vz8uaVEoKX07CkVEaj1hc3luYyBmdW5jdGlvbihuKXtpZighbi5xTigpJiZuLlgmJm4uTil7bi5PJiZuLmFwcC5NTigpLmtOKCEwLCExKTt2YXIgVz1udWxsO2lmKG4uVyl0cnl7YXdhaXQgS0VoKG4uVyl9Y2F0Y2goYil7Vz1ifWlmKG4uTiYmKFVydy5jVygidnFzcCIsKCk9PntuLmFwcC5RVChuLk4pfSksbi5OKSl7dmFyIEQ9bi5OLmg1KCk7Cm4uYXBwLkcoKS5TKCJodG1sNV9nYXBsZXNzX3NlZWtfb25fbmVnYXRpdmVfdGltZSIpJiZEJiZELmdldEN1cnJlbnRUaW1lKCk8LS4wMSYmbi5OLnNlZWtUbygwKTtVcncuY1coInZxcHYiLCgpPT57bi5hcHAucGxheVZpZGVvKCl9KTsKVyYmKG4uTj8oVz1XP1cubWVzc2FnZToiZm9yY2VkIixuLko/LlUoImdhcGZ1bGZiayIse3I6V30pLG4uYXBwLkcoKS5adCgpLk4uUVEoeWVpKSYmKG4uTi5nZXRWaWRlb0RhdGEoKS5HUz0hMSksbi5OLk9jKFcpKTpuLko/LlUoImdhcHNwIix7fSkpO1c9bi5YO1lJKG4pO1cmJlcucmVzb2x2ZSgpO1Byb21pc2UucmVzb2x2ZSgpfX19OwpIYz1mdW5jdGlvbihuKXtuLkQmJm4uaiYmbi5ELnJlbW92ZUV2ZW50TGlzdGVuZXIoInRpbWV1cGRhdGUiLG4uaik7bi5qPW51bGw7bi5EPW51bGx9OwpZST1mdW5jdGlvbihuLFc9ITEpe2lmKG4uSil7aWYobi5WKXt2YXIgRD1uLko7bi5hcHAuUkIucmVtb3ZlRXZlbnRMaXN0ZW5lcihnLm95KCJ2cXVldWVkIiksbi5ZKTtELnJlbW92ZUN1ZVJhbmdlKG4uVil9bi5KPW51bGw7bi5WPW51bGx9bi5XJiYobi5XLnN0YXR1cy5zdGF0dXMhPT02JiYoRD1uLlcsRC5zdGF0dXMuc3RhdHVzIT09SW5maW5pdHkmJkQuaiE9PTEmJkQuS2coIkNhbmNlbGVkIikpLG4uVz1udWxsKTtuLlg9bnVsbDtuLk4mJiFXJiZuLk4hPT1uLmFwcC5jWCgpJiZuLk4hPT1uLmFwcC5NTigpJiZuLk4uZGlzcG9zZSgpO24uTiYmVyYmbi5OLm15KCk7bi5OPW51bGw7bi5PPSExfTsKdTd0PWZ1bmN0aW9uKG4sVyxEPSEwKXt2YXIgYj1uLmFwcC5NTigpLHY9Yi5nZXRWaWRlb0RhdGEoKS5pc0xpdmVQbGF5YmFjaz9JbmZpbml0eTpiLlBHKCEwKSoxRTM7Vz52JiYoVz12LTIwMCwhbi5hcHAuRygpLlp0KCkuTi5RUShpbGkpfHxEKSYmKG4uTz0hMCk7RCYmYi5nZXRDdXJyZW50VGltZSgpPj1XLzFFMz9uLlkoKToobi5KPWIsRCYmKEQ9VyxXPW4uSixuLmFwcC5SQi5hZGRFdmVudExpc3RlbmVyKGcub3koInZxdWV1ZWQiKSxuLlkpLEQ9aXNGaW5pdGUoRCl8fEQvMUUzPlcuZ2V0RHVyYXRpb24oKT9EOjB4ODAwMDAwMDAwMDAwMCxuLlY9bmV3IGcubDUoRCwweDgwMDAwMDAwMDAwMDAse25hbWVzcGFjZToidnF1ZXVlZCJ9KSxXLmFkZEN1ZVJhbmdlKG4uVikpKX07CmRyTT1mdW5jdGlvbihuLFcsRCxiPTAsdj0wKXtuLmRUKCl8fChIYyhuKSxZSShuKSk7bi5YPW5ldyBZNjtuLk49Vzt1N3QobixELHY9PT0wKTt2YXIgaz1iLz0xRTMsaD1XLmdldFZpZGVvRGF0YSgpLk47aWYoYiYmaCYmbi5KKXtsZXQgeD1iLEw9MDtXLmdldFZpZGVvRGF0YSgpLmlzTGl2ZVBsYXliYWNrJiYoaz1NYXRoLm1pbihELzFFMyxuLkouUEcoITApKSxMPU1hdGgubWF4KDAsay1uLkouZ2V0Q3VycmVudFRpbWUoKSkseD1NYXRoLm1pbihiLFcuUEcoKStMKSk7az1tOHQoaCx4KXx8YjtrIT09YiYmbi5OLlUoInF2YWxuIix7c3Q6YixhdDprLHJtOkwsY3Q6eH0pfVc9aztiPW4uTjtiLmdldFZpZGVvRGF0YSgpLllaPSEwO2IuZ2V0VmlkZW9EYXRhKCkuSz0hMDtiLmd6KCEwKTtoPXt9O24uSiYmKGg9bi5KLmw1KCksaz1uLkouZ2V0VmlkZW9EYXRhKCkuY2xpZW50UGxheWJhY2tOb25jZSxoPXtjcnQ6KGgqMUUzKS50b0ZpeGVkKCksY3BuOmt9KTtiLlUoInF1ZXVlZCIsaCk7VyE9PQowJiZiLnNlZWtUbyhXKy4wMSx7QTk6ITAsWlU6MyxxZDoidmlkZW9xdWV1ZXJfcXVldWVkIn0pO24uVz1uZXcgb0RiKG4uSyxuLmFwcC5NTigpLG4uTixELG4uYXBwLHYpO0Q9bi5XO0Quc3RhdHVzLnN0YXR1cyE9PUluZmluaXR5JiYocmYoRCwxKSxELk4uc3Vic2NyaWJlKCJpbnRlcm5hbHZpZGVvZGF0YWNoYW5nZSIsRC5YLEQpLEQuSi5zdWJzY3JpYmUoImludGVybmFsdmlkZW9kYXRhY2hhbmdlIixELlgsRCksRC50Yi5HKCkuUygiaHRtbDVfZ2FwbGVzc191c2VfZm9ybWF0X2luZm9fZml4IikmJihELk4uc3Vic2NyaWJlKCJpbnRlcm5hbHZpZGVvZm9ybWF0Y2hhbmdlIixELlgsRCksRC5KLnN1YnNjcmliZSgiaW50ZXJuYWx2aWRlb2Zvcm1hdGNoYW5nZSIsRC5YLEQpKSxELk4uc3Vic2NyaWJlKCJtZWRpYXNvdXJjZWF0dGFjaGVkIixELlgsRCksRC5KLnN1YnNjcmliZSgic3RhdGVjaGFuZ2UiLEQuVEMsRCksRC5OLnN1YnNjcmliZSgibmV3ZWxlbWVudHJlcXVpcmVkIixELlZRLApEKSxELlgoKSk7cmV0dXJuIG4uWH07CmpqeD1mdW5jdGlvbihuLFcpe2lmKG4uYXBwLkcoKS5adCgpLk4uUVEoejBpKSl7dmFyIEQ9bi5hcHAuRygpLlp0KCkuTi5RUShsWWgpO2lmKCEoRDw9MCkpe0hjKG4pO3ZhciBiPW4uYXBwLk1OKCk/Lmg1KCk7YiYmbi5OJiYobi5hcHAuRygpLlp0KCkuTi5RUShUX0MpP24uTi5nZXRWaWRlb0RhdGEoKS5Sbz0hMDpuLk4uZ2V0VmlkZW9EYXRhKCkuR1M9ITAsbi5qPSgpPT57dmFyIHY9Yi5nZXRDdXJyZW50VGltZSgpO3Y+PVcrRC8xRTMmJih2PURhdGUubm93KCktKHYtVykqMUUzLG4uYXBwLmVHKCkudGljaygicGJzIix2KSxIYyhuKSl9LG4uRD1iLGIuYWRkRXZlbnRMaXN0ZW5lcigidGltZXVwZGF0ZSIsbi5qKSl9fX07CkNkaj1mdW5jdGlvbihuLFcsRCl7aWYobi5kVCgpKXJldHVybiJxaWUiO2lmKG4uTj09bnVsbHx8bi5OLnFOKCl8fG4uTi5nZXRWaWRlb0RhdGEoKT09bnVsbClyZXR1cm4icXBkIjtpZihXLnZpZGVvSWQhPT1uLk4uRTEoKSlyZXR1cm4idmlubSI7aWYoKG4uVz8uYmQoKXx8LTEpPD0wKXJldHVybiJpdmQiO2lmKEQhPT0xKXJldHVybiJ1cHQiO249bi5XPy5lJCgpO3JldHVybiBuIT1udWxsP246bnVsbH07CkpoPWZ1bmN0aW9uKG4pe3ZhciBXPSgwLGcuUikoKTtuLmRhdGEuZm9yRWFjaChEPT57RC5leHBpcmU8VyYmZk8obixELCEwKX0pOwpuLmRhdGE9Zy5FTShuLmRhdGEsRD0+IShELmV4cGlyZTxXKSl9OwpJZT1mdW5jdGlvbihuKXtuLk4uc3RvcCgpO3ZhciBXPUluZmluaXR5O2ZvcihsZXQgRCBvZiBuLmRhdGEpRC5leHBpcmU8VyYmKFc9RC5leHBpcmUpO1cmJmlzRmluaXRlKFcpJiYoVz1NYXRoLm1heChXLURhdGUubm93KCksMTAwKSxuLk4uc3RhcnQoVykpfTsKQl9DPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uLmRhdGEuZmluZCh2PT52LmtleT09PVcpOwpiJiYoRCo9MUUzLGIuZXhwaXJlPSgwLGcuUikoKStELEllKG4pKX07CnNGPWZ1bmN0aW9uKG4pe0poKG4pO3JldHVybiBuLmRhdGEubWFwKFc9PlcudmFsdWUpfTsKZk89ZnVuY3Rpb24obixXLEQpe0QmJm4uSiYmbi5KKFcudmFsdWUpfTsKRkVaPWZ1bmN0aW9uKG4pe3ZhciBXPW4uTj9bbi5OXTpbXTtmb3IobGV0IEQgb2YgT2JqZWN0LnZhbHVlcyhuLmopKUQuZGlzcG9zZSgpLG4uS3x8ZGVsZXRlIG4uVltELldOKCldO24uaj17fTtuLk49bnVsbDtuLlk9bnVsbDtuLkQuY2xlYXIoKTtTcyhuLFtdLFcpfTsKU3M9ZnVuY3Rpb24obixXLEQpe3ZhciBiPVtuLkpdO24uTiYmYi5wdXNoKG4uTik7bi5hcGkuV0ooInBsYXliYWNrQ2hhbmdlIix7YWN0aXZlOmIuZmlsdGVyKHY9PnYuZ2V0UGxheWVyVHlwZSgpIT09MCkubWFwKHY9Pih7Y3BuOnYuV04oKX0pKSwKc3RhcnRlZDpXLmZpbHRlcih2PT52LmdldFBsYXllclR5cGUoKSE9PTApLm1hcCh2PT4oe2Nwbjp2LldOKCl9KSksCmVuZGVkOkQuZmlsdGVyKHY9PnYuZ2V0UGxheWVyVHlwZSgpIT09MCkubWFwKHY9Pih7Y3BuOnYuV04oKX0pKX0pfTsKd1AxPWZ1bmN0aW9uKG4sVyl7aWYobi5LKXtmb3IobGV0IEQgb2YgT2JqZWN0LnZhbHVlcyhuLlcpKWlmKEQuV04oKT09PVcpcmV0dXJuIEQ7aWYobi5PPy5XTigpPT09VylyZXR1cm4gbi5PO2lmKHZvaWQgMD09PVcpcmV0dXJuIG51bGw7aWYobi5qW1ddKXJldHVybiBuLmpbV107Zm9yKGxldCBEIG9mIHNGKG4uWCkpaWYoRC5XTigpPT09VylyZXR1cm4gRDtyZXR1cm4gbnVsbH1pZihuLmFwaS5HKCkuWnQoKS5OLlFRKGcuQWgpKXJldHVybiBuLlZbV118fG51bGw7Zm9yKGxldCBEIG9mIE9iamVjdC52YWx1ZXMobi5XKSlpZihELldOKCk9PT1XKXJldHVybiBEO3JldHVybiBuLmpbV118fG51bGx9OwpNa009ZnVuY3Rpb24obixXLEQsYil7dmFyIHY9RC5nZXRWaWRlb0RhdGEoKTtpZighdi5saXZlUHJlbG9hZCl7dmFyIGs9KCk9PntpZihuLlguZ2V0KFcpPT09RCl7dmFyIGg9di5nZXRQbGF5ZXJSZXNwb25zZSgpO2gmJihoPWgucmVzcG9uc2VDb250ZXh0Py5jYWNoZUluc3RydWN0aW9uPy5tYXhBZ2VTZWNvbmRzPz9oLnJlc3BvbnNlQ29udGV4dD8ubWF4QWdlU2Vjb25kcz8/dm9pZCAwLGghPT12b2lkIDAmJihoPGImJkQuVSgidHRsZCIse3ByZXY6Yi50b1N0cmluZygpLCJuZXciOmgudG9TdHJpbmcoKX0pLGg9PT0wP24uWC5yZW1vdmUoVywhMCk6Ql9DKG4uWCxXLGgpKSl9fTsKaWYodi5pc0xvYWRlZCgpKWsoKTtlbHNle2xldCBoPSgpPT57aygpO3YudW5zdWJzY3JpYmUoImRhdGFsb2FkZWQiLGgpfTsKdi5zdWJzY3JpYmUoImRhdGFsb2FkZWQiLGgpfX19OwptUj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9W1ddLHY9bi5OP1tuLk5dOltdO24ualtXLldOKCldPVc7bi5LfHwobi5WW1cuV04oKV09Vyk7bi5OPVc7RCYmKG4uWT1XKTtuLkQuc2V0KCIiLFcpO1NzKG4sYix2KX07CmNlYj1mdW5jdGlvbihuKXt2YXIgVz1uLmV4cGVyaW1lbnRzLEQ9Vy5FcS5iaW5kKFcpO0tPPUQoImh0bWw1X3VzZV9hc3luY19zdG9wVmlkZW8iKTtSMGk9RCgiaHRtbDVfcGF1c2VfZm9yX2FzeW5jX3N0b3BWaWRlbyIpO09nPUQoImh0bWw1X25vdF9yZXNldF9tZWRpYV9zb3VyY2UiKXx8RCgiaHRtbDVfbm90X3Jlc2V0X21lZGlhX3NvdXJjZV9ub25fZHJtX3ZvZCIpO0QoImh0bWw1X2xpc3Rlbl9mb3JfYXVkaW9fb3V0cHV0X2NoYW5nZWQiKSYmKHdVTT0hMCk7REg9RCgiaHRtbDVfbm90X3Jlc2V0X21lZGlhX3NvdXJjZSIpfHxEKCJodG1sNV9ub3RfcmVzZXRfbWVkaWFfc291cmNlX25vbl9kcm1fdm9kIik7UWpaPUQoImh0bWw1X25vdF9yZXNldF9tZWRpYV9zb3VyY2UiKXx8RCgiaHRtbDVfbm90X3Jlc2V0X21lZGlhX3NvdXJjZV9ub25fZHJtX3ZvZCIpO1BjPUQoImh0bWw1X3JldGFpbl9zb3VyY2VfYnVmZmVyX2FwcGVuZHNfZm9yX2RlYnVnZ2luZyIpO25WcihEKCJ3ZWJfd2F0Y2hfcGlwIil8fApEKCJ3ZWJfc2hvcnRzX3BpcCIpKTtJdmgoRCgibG9nX2ZvcmVncm91bmRfbm90X2ZvY3VzZWRfYXNfYmFja2dyb3VuZCIpKTtTeXIoRCgid2ViX3BsYXllcl9waXBfbG9nZ2luZ19maXgiKSk7RCgiaHRtbDVfbWVkaWFzdHJlYW1fYXBwbGllc190aW1lc3RhbXBfb2Zmc2V0IikmJihzND0hMCk7bi5XWCgpJiZNRngoKTtFcnJvci5zdGFja1RyYWNlTGltaXQ9NTA7dmFyIGI9Zy5kTShXLCJodG1sNV9pZGxlX3JhdGVfbGltaXRfbXMiKTtiJiZPYmplY3QuZGVmaW5lUHJvcGVydHkod2luZG93LCJyZXF1ZXN0SWRsZUNhbGxiYWNrIix7dmFsdWU6dj0+d2luZG93LnNldFRpbWVvdXQodixiKX0pOwp3Sngobi5XKTthaU0oRCgiaHRtbDVfdXNlX3VtcF9yZXF1ZXN0X3NsaWNlciIpKTtEKCJodG1sNV9kaXNhYmxlX3N0cmVhbWluZ194aHIiKSYmKE5zPSExKTtEKCJodG1sNV9ieXRlcmF0ZV9jb25zdHJhaW50cyIpJiYoaFQ9ITApO0QoImh0bWw1X3VzZV9ub25fYWN0aXZlX2Jyb2FkY2FzdF9mb3JfcG9zdF9saXZlIikmJihadT0hMCk7RCgiaHRtbDVfZW5hYmxlX2VuY3J5cHRlZF9hdjEiKSYmKFBSPSEwKTtXLlp0KCkuTi5RUShWa3cpJiYoRU49ITApO01wQyhnLmRNKG4uZXhwZXJpbWVudHMsImh0bWw1X3N0aWNreV9kdXJhdGlvbl9tb3MiKSl9Owp5UjE9ZnVuY3Rpb24obil7dmFyIFc9e30sRD1uLmV4cGVyaW1lbnRzLncwKCksYj1bXTtuPShrLGgseCk9PntiLnB1c2goU2soaCh4KSxMPT57V1trXT1MfSkpfTsKdmFyIHY9RC5OLlFRKGFZeCk7diYmbigiTWVkaWFTb3VyY2UuRW5hYmxlVXNpbmdNZWRpYVNvdXJjZUJ1ZmZlcmVkUmFuZ2UiLHFScix2PT09MSk7KHY9RC5OLlFRKG5NdykpJiZuKCJIVFRQMyIsR253LHY9PT0xKTsodj1ELk4uUVEoV2t0KSkmJm4oIk1lZGlhU291cmNlLkVuYWJsZVVzaW5nTWVkaWFTb3VyY2VBdHRhY2htZW50TWV0aG9kcyIsdEZ4LHY9PT0xKTsodj1ELk4uUVEoRERaKSkmJm4oIlFVSUMiLCRMQyx2PT09MSk7KHY9RC5OLlFRKGJSdykpJiZuKCJNZWRpYS5QbGF5ZXJDb25maWd1cmF0aW9uLkRlY29kZVRvVGV4dHVyZVByZWZlcnJlZCIsc2d3LHY9PT0xKTsodj1ELk4uUVEodk1TKSkmJm4oIk1lZGlhLkF1ZGlvV3JpdGVEdXJhdGlvbkxvY2FsIixyYzIsTnVtYmVyKHYpKTsodj1ELk4uUVEoazZ3KSkmJm4oIk1lZGlhLkV4cGVyaW1lbnRhbE1heFBlbmRpbmdCeXRlc1BlclBhcnNlIixLWFosTnVtYmVyKHYpKTsodj1ELk4uUVEoaFVpKSkmJm4oIk1lZGlhLkVuYWJsZUZsdXNoRHVyaW5nU2VlayIsCkpjYixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoeERaKSkmJm4oIkRlY29kZXJCdWZmZXIuRW5hYmxlQ29uZmlndXJhYmxlRGVjb21taXRTdHJhdGVneSIsSXl3LE51bWJlcih2KSk7KHY9RC5OLlFRKExrQykpJiZuKCJEZWNvZGVyQnVmZmVyLlJlbGVhc2VNZW1vcnlPbkJhY2tncm91bmQiLFNSdCxOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoZVVVKSkmJm4oIk1lZGlhLkRlY29kZWRBdWRpb0J1ZmZlclBvb2wiLEFjWixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoZ014KSkmJm4oIk1lZGlhLlZpZGVvRnJhbWVJbXBsUG9vbCIsbUwyLE51bWJlcih2KT09PTEpOyh2PUQuTi5RUShYR1UpKSYmbigiTWVkaWEuRW5hYmxlUmVzZXRBdWRpb0RlY29kZXIiLGZ5VSxOdW1iZXIodik9PT0xKTsodj1ELk4uUVEocXhoKSkmJm4oIk1lZGlhLkluY3JlbWVudGFsUGFyc2VMb29rQWhlYWQiLEhGWixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoRzYyKSkmJm4oIk1lZGlhLk1heFNhbXBsZXNQZXJXcml0ZSIsCk9GQyxOdW1iZXIodikpOyh2PUQuTi5RUSh0NWkpKSYmbigiTWVkaWEuVmlkZW9EZWNvZGVySW5pdGlhbFByZXJvbGxDb3VudCIsTjBTLHYpOyh2PUQuTi5RUSgkRDEpKSYmbigiTWVkaWEuTWVkaWFDb2RlY1Jlc2V0RGVsYXlNcyIsUFFyLHYpOyh2PUQuTi5RUShyUmkpKSYmbigiTWVkaWEuVmlkZW9SZW5kZXJlck1pbklucHV0QnVmZmVycyIscE50LHYpOyh2PUQuTi5RUShzd2kpKSYmbigiTWVkaWEuVmlkZW9SZW5kZXJlck1pbkRlY29kZWRGcmFtZXMiLFlSdyx2KTsodj1ELk4uUVEoTmRTKSkmJm4oIk1lZGlhLlVzZUR1YWxUaHJlYWRzRm9yVmlkZW8iLHljMixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEocEcxKSkmJm4oIk1lZGlhLlZpZGVvQnVmZmVyU2l6ZUNsYW1wTWIiLEV1dCx2KTsodj1ELk4uUVEoWXhyKSkmJm4oIk1lZGlhLjcyMHBWaWRlb0J1ZmZlclNpemVDbGFtcE1iIixpRlUsdik7KHY9RC5OLlFRKEhScikpJiZuKCJNZWRpYS5EaXNhYmxlTG93UGVyZm9ybWFuY2VTb2Z0d2FyZURlY29kZSIsClpGdCxOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoZndqKSkmJm4oIk1lZGlhLkVuYWJsZUF2MVN0YXJ0dXBPcHRpbWl6YXRpb24iLFVMMixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoSlIxKSkmJm4oIk1lZGlhLkVuYWJsZUxvd0xhdGVuY3kiLGRMaSxOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoSXd4KSkmJm4oIk1lZGlhLkZvcmNlRGVjb2RlVG9UZXh0dXJlIix1cXQsTnVtYmVyKHYpPT09MSk7KHY9RC5OLlFRKFN4aSkpJiZuKCJNZWRpYS5Gb3JjZUNsZWFyU3VyZmFjZVZpZXciLG91MixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoQVJNKSkmJm4oIk1lZGlhLlNraXBGbHVzaE9uRGVjb2RlclRlYXJkb3duIix6UVMsTnVtYmVyKHYpPT09MSk7KHY9RC5OLlFRKG1EaCkpJiZuKCJNZWRpYS5BbGxvd0F1ZGlvV3JpdGluZ09uUGF1c2UiLGx5MixOdW1iZXIodik9PT0xKTsodj1ELk4uUVEoS2tpKSkmJm4oIk1lZGlhLkVuYWJsZVZpZGVvUmVuZGVyZXJWc3BBZGp1c3RtZW50IixUMFUsTnVtYmVyKHYpPT09CjEpOyh2PUQuTi5RUShPUlUpKSYmbigiTWVkaWEuU2tpcFZpZGVvRnJhbWVzT3ZlcjYwRnBzIixqZ2gsTnVtYmVyKHYpPT09MSk7KHY9RC5OLlFRKFBoaikpJiZuKCJNZWRpYS5GbHVzaEF1ZGlvVHJhY2tEdXJpbmdTZWVrIixDUUMsTnVtYmVyKHYpPT09MSk7KHY9RC5OLlFRKFpSeCkpJiZuKCJNZWRpYS5CeXBhc3NNb2pvRm9yTWVkaWEiLEIwaixOdW1iZXIodik9PT0xKTsoRD1ELk4uUVEoVUQyKSkmJm4oIk1lZGlhLklnbm9yZU1lZGlhQ29kZWNDYWxsYmFja3NEdXJpbmdGbHVzaGluZyIsRlgyLE51bWJlcihEKT09PTEpO3JldHVybiBTayhGTngoYiksKCk9PlcpfTsKR0Q9ZnVuY3Rpb24obixXPSExLEQ9MTA0ODU3Nil7dmFyIGI9VWcobik7Yj0xLygobi5LLkxnKCl8fDApKm4ucG9saWN5LkQrMS9iKTt2YXIgdj1uLlMkLkxnKCk7dj12PjA/djoxO3ZhciBrPU1hdGgubWF4KGIsdik7bi5wb2xpY3kuWD4wJiZ2PGImJihrPU1hdGgubWluKG4ucG9saWN5LlgsMSksaz0oMS1rKSpiK2sqdik7aWYoIVcpcmV0dXJuIGs7Vz0xRS05KyRzKG4pO0Q9aypNYXRoLm1pbigxLEQvKGsqVykpO24ucG9saWN5Lkp8fChuPSgobi5ELnBlcmNlbnRpbGUoLjk4KXx8MCktMSkvMixuPU1hdGgubWF4KDAsTWF0aC5taW4oMSxuKSksRCo9MS0uNSpuKTtyZXR1cm4gRH07CiRzPWZ1bmN0aW9uKG4pe3ZhciBXPW4uWS5MZygpK24uVEMuTGcoKXx8MDtXPWlzTmFOKFcpPy41Olc7bi5wb2xpY3kuVDY+PTAmJihXPU1hdGgubWluKFcsbi5wb2xpY3kuVDYpKTtyZXR1cm4gV307CmUwPWZ1bmN0aW9uKG4pe3ZhciBXPXtkZWxheTokcyhuKSxzdGFsbDpuLksuTGcoKXx8MCxieXRlcmF0ZTpVZyhuKSxpbml0Om4uVlF9LEQ9bi5XWzBdO0Quc3RhbXA9TWF0aC5yb3VuZChuLlYvMzZFNSkqMzZFNTtELm5ldD1NYXRoLmNlaWwobi5iZCk7RC5tYXg9bi5pbnRlcnJ1cHRpb25zWzBdfHwwO1cuaW50ZXJydXB0aW9ucz1uLlc7cmV0dXJuIFd9Owp6RD1mdW5jdGlvbihuLFcpe2lmKG4uail7bGV0IEQ9Vy1uLmo7aWYoRDw2RTQpe2lmKEQ+MUUzKXtsZXQgYj1uLmludGVycnVwdGlvbnM7Yi5wdXNoKE1hdGguY2VpbChEKSk7Yi5zb3J0KCh2LGspPT5rLXYpOwpiLmxlbmd0aD4xNiYmYi5wb3AoKX1uLmJkKz1EfX1uLmo9V307CnlTPWZ1bmN0aW9uKG4sVyxEKXtpc05hTihEKXx8KG4udHcrPUQpO2lzTmFOKFcpfHwobi5EdCs9Vyl9OwpCdT1mdW5jdGlvbihuLFcsRCxiPVcpe24uWC5JSShiLEQvVyk7bi5WPSgwLGcuUikoKX07CkVnPWZ1bmN0aW9uKG4sVyxEKXtXPU1hdGgubWF4KFcsbi5KLk4pO24uSy5JSSgxLEQvVyl9Owppcz1mdW5jdGlvbihuLFcsRCxiLHYsaz0hMSl7bi5TJC5JSShXLEQvVyk7bi5WPSgwLGcuUikoKTt2fHxuLkQuSUkoMSxXLWIpO2t8fChuLmo9MCk7bi5jSj4tMSYmKDAsZy5SKSgpLW4uY0o+M0U0JiYoc24oZTAobikpLG4uY0o9KDAsZy5SKSgpLG4uTz0hMCl9OwpUWj1mdW5jdGlvbihuKXtyZXR1cm4oMCxnLlIpKCktbi5WPj00RTN9OwpVZz1mdW5jdGlvbihuKXtuPW4uWC5MZygpO3JldHVybiBuPjA/bjoxfTsKaVJaPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj1uZXcgRU1NKEQpO24mJihiLlc9ITAsYi5qPS4xKTtELkVxKCJodG1sNV9tZWRpYV90aW1lX3dlaWdodCIpJiYoYi5XPSExKTtXJiYoYi5OPVcvOCk7Yi5KPXA3KCk+PTQ4MDtyZXR1cm4gYn07CnVzPWZ1bmN0aW9uKG4pe24uTi5jbGVhcigpO24uVy5jbGVhcigpO24uSi5jbGVhcigpfTsKdWFVPWZ1bmN0aW9uKG4sVyxEKXtuPW4uSjt2YXIgYj1nLlc0KG4se29hOld9LCh2LGspPT52Lm9hLWsub2EpOwpiPWI8MD8oYisyKSotMTpiO2lmKGI+PTApZm9yKGxldCB2PWI7djw9YisxJiZ2PG4ubGVuZ3RoO3YrKyl7bGV0IGs9blt2XTtpZihXPj1rLm9hLUQmJlc8PWsuZEkrRClyZXR1cm4ga319OwpvTWg9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uTi5nZXQoVyk7Yj8oYi5wdXNoKEQpLGcuYmYoYiwodixrKT0+di5vYS1rLm9hKSk6bi5OLnNldChXLFtEXSl9OwpkRGI9ZnVuY3Rpb24obixXKXt2YXIgRD1bXTtmb3IobGV0IGIgb2Ygbi5KKVcoYil8fEQucHVzaChiKTtpZihuLkIuUygiaHRtbDVfc3N0bV9maXhlcyIpKWZvcihsZXQgYiBvZiBuLkopVyhiKSYmbi5XLmRlbGV0ZShiLmNwbik7bi5KPUR9Owp6VWg9ZnVuY3Rpb24obixXKXt2YXIgRD1uLkouaW5kZXhPZihXKTtEPj0wJiZuLkouc3BsaWNlKEQsMSk7bi5XLmRlbGV0ZShXLmNwbil9Owp0dmk9ZnVuY3Rpb24obixXKXtpZihuLnVLfHxXLmlkZW50aWZpZXImJm4ueXcuaGFzKFcuaWRlbnRpZmllcikpbi5iaih7c3RhcnRub2FkOlcuaWRlbnRpZmllcn0pLGcub2Uobik7ZWxzZSBpZihnLm9NKG4uY0osRD0+RC5pZGVudGlmaWVyPT09Vy5pZGVudGlmaWVyKSluLmJqKHt0aW1lZG91dGNwOjF9KSxuLlkuc3RhcnQoMCk7CmVsc2UgaWYoZy5vTShuLkR0LEQ9PkQuaWRlbnRpZmllcj09PVcuaWRlbnRpZmllcikpbi5iaih7ZmV0Y2hlZGNwOjF9KSxnLm9lKG4pOwplbHNlIGlmKG4uWS5pc0FjdGl2ZSgpKW4uYmooe3JhY2luZ2NwOmAke24uVj8uaWRlbnRpZmllcn1fJHtXLmlkZW50aWZpZXJ9YH0pO2Vsc2V7bi5DdT0obmV3IERhdGUpLmdldFRpbWUoKS8xRTM7bi5iaih7YWRmOjF9KTtsZXQgRD01RTM7RCYmVy5ldmVudD09PSJwcmVkaWN0U3RhcnQiJiYoRC09Vy5OKTtuLnZKPU1hdGgubWF4KEQsMTVFMyk7bi5EPSExO24uWS5zdGFydChuLnZKKTtuLlY9Vzt1cyhuLlRDKTtuLkZGPVtdfX07CmcuSnlpPWZ1bmN0aW9uKG4sVyxELGIsdixrLGgpe3ZhciB4PXY9PT0zLEw9bHdaKG4sVyxELHYsYixoKTtpZighTClyZXR1cm4gZGYobixELHgpLEw9Zy56VihuLEQpPyJ1bmRlYyI6Im5jcCIsbi5iaih7Z3ZwcnA6TCxtdDpXLHNlZzpELHR0OnYsaXRhZzpiLGNlOmh9KSxudWxsO3h8fG4uWXEuc2V0KEQsTCk7aD1MLnZQO3Y9bi5HTShELTEsdixrKT8uQmZ8fCIiO3Y9PT0iIiYmbi5iaih7ZWRzOjF9KTtrPVRkaihuLEwuc3NkYWlBZHNDb25maWcpO3g9bi5ncy5nZXRWaWRlb0RhdGEoKTt4PXguYkJbeC5KPy5jb250YWluZXJUeXBlfHwwXTtMPUwubUYmJkQ+PUwubUY/TC5tRjp2b2lkIDA7dj17YUQ6aD9scyhuLGgpOltdLGFkc0NvbmZpZzprLEJmOnYsREo6TCxvdjpnLk5oKHguc3BsaXQoIjsiKVswXSksZDM6eC5zcGxpdCgiOyIpWzFdfHwiIn07TD17TXk6dn07bi5HQyYmKFc9e2d2cHJwcm86InYiLHNxOkQsbXQ6Vy50b0ZpeGVkKDMpLGl0YWc6YixhY3Buczp2LmFEPy5qb2luKCJfIil8fAoibm9uZSIsYWJpZDpofSxuLmJqKFcpKTtyZXR1cm4gTH07Ck0yPWZ1bmN0aW9uKG4sVyxELGIsdil7Yj1ifHx7cmVhc29uOiJkaXNhYmxlc3NkYWkifTtpZihXJiZEKXtpZighZy5UVihuLFcsRCkpcmV0dXJuITE7Yi5zcT1EfWlmKG4udUspcmV0dXJuITE7bi51Sz0hMDtuLnVmPjAmJihuLnVmPTAsbi51Tj0iIixqcyhuLG4uZ3MuV04oKSwwKSxuLmFwaS5XSigic2VydmVyc3RpdGNoZWR2aWRlb2NoYW5nZSIpKTtuLmdzLmRuKGIsdik7cmV0dXJuITB9Owpqd2o9ZnVuY3Rpb24obixXLEQpe3ZhciBiPW4uald8fG4uYXBwLk1OKCkuZ2V0UGxheWVyU3RhdGUoKTtDTyhuLCEwKTtuLmdzLnNlZWtUbyhXLEQpO249bi5hcHAuTU4oKTtXPW4uZ2V0UGxheWVyU3RhdGUoKTtiLmlzT3JXaWxsQmVQbGF5aW5nKCkmJiFXLmlzT3JXaWxsQmVQbGF5aW5nKCk/bi5wbGF5VmlkZW8oKTpiLmlzUGF1c2VkKCkmJiFXLmlzUGF1c2VkKCkmJm4ucGF1c2VWaWRlbygpfTsKZy5CYz1mdW5jdGlvbihuKXtuLkdDJiZuLmJqKHthZGY6YDBfJHsobmV3IERhdGUpLmdldFRpbWUoKS8xRTMtbi5DdX1faXNUaW1lb3V0XyR7bi5EfWB9KX07Cmcub2U9ZnVuY3Rpb24obil7bi5EPSExO24uWS5pc0FjdGl2ZSgpJiZnLkJjKG4pO24uWS5zdG9wKCk7bi5SZighMSl9OwpGdz1mdW5jdGlvbihuLFcsRCl7cmV0dXJue3NzdmM6VyxjcG46RD8uY3BufHwiIix2aWQ6RD8udmlkZW9EYXRhLnZpZGVvSWR8fCIiLGN0OihuLmdzLmdldEN1cnJlbnRUaW1lKCl8fDApLnRvRml4ZWQoMyksY210OihuLmdzLm90KCl8fDApLnRvRml4ZWQoMyl9fTsKQ2gxPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gbmV3IGcubDUobixXLHtpZDpELG5hbWVzcGFjZToic2VydmVyc3RpdGNoZWRjdWVyYW5nZSIscHJpb3JpdHk6OX0pfTsKZy53Zj1mdW5jdGlvbihuKXtyZXR1cm57Y3BuOm4uZ3MuV04oKSxkdXJhdGlvbk1zOjAsb2E6MCxwbGF5ZXJUeXBlOjEsZEk6MCx2aWRlb0RhdGE6bi5ncy5nZXRWaWRlb0RhdGEoKSxlcnJvckNvdW50OjAsdlA6IiJ9fTsKTUs9ZnVuY3Rpb24obixXLEQsYil7bi5CLlMoImh0bWw1X3NzZGFpX2xvZ19zc2V2dF9pbl9sb2FkZXJfdGltZXJzIikmJihiPW4uYmQ/MDpNYXRoLnJvdW5kKChiLUQpKjFFMyksbi5ncy5VKCJzc2V2dCIse3RhZzoic3N0bWUiLGFkOlchPT1uLmdzLldOKCksY3BuOlcsc3Q6RC1uLmdzLkgzKCksbGF0ZTpifSkpfTsKZy5RUz1mdW5jdGlvbihuLFcpe24uanx8bi5iZHx8Zy5SZShuLG4udU4pO3ZhciBEPVcucUQsYj1XLnpZO2lmKGIuY3BuPT09bi51TiluLmJqKHtpZ3RyYW5zc2FtZToxLGVudGVyOmIuY3BuLGV4aXQ6RC5jcG59KTtlbHNle3ZhciB2PW4uYmQsaz0hIW4uajtuLmo9IiI7dmFyIGg9Vy5tNyx4PUQucGxheWVyVHlwZT09PTI/RC5vYS8xRTMrRC52aWRlb0RhdGEuR0M6Zy53ZihuKS52aWRlb0RhdGEuR0M7bi5hcGkuUygiaHRtbDVfc3NkYWlfZW5hYmxlX21lZGlhX2VuZF9jdWVfcmFuZ2UiKSYmKGt8fHZ8fEQucGxheWVyVHlwZSE9PTI/KHZ8fGspJiZuLmJqKHttZWNyOjAsc2Vlazp2LHNraXA6a30pOm4uYXBpLk5hKEQuY3BuKSk7aWYoRC5wbGF5ZXJUeXBlPT09MiYmYi5wbGF5ZXJUeXBlPT09MilrP24uYmooe2lndHJhbnNza2lwOjEsZW50ZXI6Yi5jcG4sZXhpdDpELmNwbixzZWVrOnYsc2tpcDpuLmp9KTpnLkJkdChuLEQsYix4LGgsdixrKTtlbHNle24udU49Yi5jcG47anMobixiLmNwbiwKYi5zdGFydFRpbWVTZWNzfHxoKTtXPVcuUXg7aWYoRC5wbGF5ZXJUeXBlPT09MSYmYi5wbGF5ZXJUeXBlPT09Mil7bi5TJD0wO0ZraihuLGIpO3ZhciBMPUZ3KG4sImMyYSIsYik7bi5iaihMKTtuLnVmKyt9ZWxzZSBpZihELnBsYXllclR5cGU9PT0yJiZiLnBsYXllclR5cGU9PT0xKXtuLmFwaS5XSigic2VydmVyc3RpdGNoZWR2aWRlb2NoYW5nZSIpO0w9RncobiwiYTJjIik7bi5iaihMKTtuLnVmPTA7bi5TJD14O0w9RC5jcG47dmFyIGU9bi5TJDtpZihMIT09bi5ncy5XTigpKXtsZXQgRz1uLnR3LmdldChMKTtHP0cuTj1lOm4uYmooe25vcF9lOkx9KX1nLndHMShuLEQudlApfUw9TTVpKG4pO24uZ3MuY00oRCxiLHgsaCx2LGssVyxMKX1nLlJVaShuKX19OwppcD1mdW5jdGlvbihuLFcsRCxiLHYsayxoLHgpe3ZhciBMPVdebjtpZigobi0xXjI3KT49biYmKG4rMV4yNCk8bil7dmFyIGU9RFtJW0xeNzg2XV0oSVtMXjgxN10pLEc9MDtlWzBdfHxHKys7bGV0IE49e307Zm9yKDtHPGVbSVs1XV07Rys9MillW0ddJiZFYyg1LExeNjc4NixOLGVbR10sZVtHKzFdKTt2YXIgcj1OfShuXjEzKTwyNiYmbi0yPj0xOCYmKGU9RFtJW0xeNzY5MV1dKElbTF43NzEwXSxMXjc3MDEpLEc9RFtJW0xeNzY5MV1dKElbTF43NzEwXSxlKzEpLGU+MCYmRz4wPyhiW0lbTF43Njg1XV09RFtJW0xeNzY5NF1dKDAsRyksRD1EW0lbTF43Njk0XV0oRysxKSk6KGJbSVtMXjc2ODVdXT1ELEQ9SVtMXjc2OTJdKSxyPVtEXSk7bi0zPj4zfHwocj1iKGssaCx4KSk7bj4+MiY3fHwoRD0oRCViW0lbNV1dK2JbSVs1XV0pJWJbSVs1XV0sYltJWzNdXSgtRClbSVtMXjE3MTZdXSgpW0lbTF4xNjgxXV0oZnVuY3Rpb24oTil7YltJW0xeMTY3MF1dKE4pfSkpOwpyZXR1cm4gcn07CmpzPWZ1bmN0aW9uKG4sVyxEKXtpZihXPT09bi5ncy5XTigpKW1SKG4uYXBwLlZyLG4uZ3MsITEpO2Vsc2V7bGV0IGI9bi50dy5nZXQoVyk7Yj8oVz1iLFcuTj0wLFcuc3RhcnRUaW1lU2Vjcz1ELG1SKG4uYXBwLlZyLGIsITApKTpuLmJqKHtub3BfczpXfSl9fTsKRmtqPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5hcHA7UFQoVlMoRCkpJiZELlZyLldbMl0mJmcuY18obi5sb2dnZXIsMzYwNzE3ODA2LCJTU1RNIGxpbmdlcmluZyBwbGF5YmFjayIpO24uYXBpLlNvKCk7bi5hcGkuV0ooInNlcnZlcnN0aXRjaGVkdmlkZW9jaGFuZ2UiLFcuY3BuLFcuTDMpfTsKY2M9ZnVuY3Rpb24obixXLEQ9MCl7cmV0dXJue0lEOnVhVShuLk4sVyoxRTMsRCoxRTMpLEJFOld9fTsKZy5SZT1mdW5jdGlvbihuLFcpe3ZhciBEPVd8fG4udU4sYj1uLk4uVkUoRCk7Yj8oVz1iLnZpZGVvRGF0YSxEPWIuTDN8fChuLlcuZ2V0KEQpPy5zdGFydD8/MCkvMUUzLG49bi5ncy5nZXRDdXJyZW50VGltZSgpLUQsVy5HQz1uPjA/bjowKTpnLndmKG4pLnZpZGVvRGF0YS5HQz1uLmdzLmdldEN1cnJlbnRUaW1lKCl9OwpnLlF3aT1mdW5jdGlvbihuLFcsRCl7bi5ncy5CbygpO24uZ3Muc2Vla1RvKFcsRCk7bi5ncy5wbGF5VmlkZW8oKX07CkNPPWZ1bmN0aW9uKG4sVyl7bi5MQj1OYU47bi5mQj1udWxsO24uUmEuc3RvcCgpO24uZSQmJlcmJm4uZSQuR18oKTtuLmpXPW51bGw7bi5lJD1udWxsfTsKbko9ZnVuY3Rpb24obil7VjVoKG4pO2Zvcih2YXIgVyBvZiBuLlcudmFsdWVzKCkpVy5zdGFydD49LTEmJlcuZW5kPD1JbmZpbml0eSYmKG4uZ3MucmVtb3ZlQ3VlUmFuZ2UoVyksbi5XLmRlbGV0ZShXLmdldElkKCkpLG4uYmooe3JtQWRDUjoxfSkpO3ZhciB7SUQ6RCxCRTpifT1jYyhuLC0uMDAxKTtEJiYoVz1iKjFFMy1ELm9hLGcuYWUobixELFcsRC5vYStXKSxXPW4uVy5nZXQoRC5jcG4pKSYmKFcuc3RhcnQ9RC5vYSxXLmVuZD1ELm9hK0QuZHVyYXRpb25Ncyk7KHtJRDpXfT1jYyhuLEluZmluaXR5KSk7VyYmbi5KKGBJbnZhbGlkX2NsZWFyRW5kVGltZU1zXyR7SW5maW5pdHl9X3RoYXRfZmFsbHNfZHVyaW5nXyR7YHBsYXliYWNrX2Nwbl8ke1cuY3BufV92aWRlb19pZF8ke1cudmlkZW9EYXRhPy52aWRlb0lkfV9kdXJhdGlvbk1zXyR7Vy5kdXJhdGlvbk1zfV9lbnRlclRpbWVNc18ke1cub2F9X3BhcmVudFJldHVyblRpbWVNc18ke1cuZEl9YH0uX0NoaWxkX3BsYXliYWNrc19jYW5fb25seV9oYXZlX2R1cmF0aW9uX3VwZGF0ZWRfbm90X3RoZWlyX3N0YXJ0LmApfTsKY1JiPWZ1bmN0aW9uKG4pe3VzKG4uVEMpO24uVy5jbGVhcigpO24uTi5jbGVhcigpO24uWXEuY2xlYXIoKTtuLkZGPVtdO24uVj1udWxsO24ueXcuY2xlYXIoKTtuLm51LmNsZWFyKCk7bi5jSj1bXTtuLkR0PVtdO24uczU9W107bi5FNT1bXTtuLlFyLmNsZWFyKCk7bi5NZC5jbGVhcigpO24uVTUuY2xlYXIoKTtuLnlFLmNsZWFyKCk7bi5EPSExO24uUyQ9MDtuLmJkPSExO24uWVo9ITE7bi51Zj0wO24uQ3U9MDtuLlkkPSExO24udUs9ITE7bi5qPSIiO0ZFWihuLmFwcC5Wcik7bVIobi5hcHAuVnIsbi5ncywhMSk7aWYobi5CLlp0KCk/LkooKSlmb3IobGV0IFcgb2Ygbi50dy52YWx1ZXMoKSlXLmRpc3Bvc2UoKTtuLnR3LmNsZWFyKCk7bi5ZLmlzQWN0aXZlKCkmJmcub2Uobil9OwpWNWg9ZnVuY3Rpb24obil7ZERiKG4uTixXPT5XLm9hPj0tMSYmVy5kSTw9SW5maW5pdHkpfTsKZy5hZT1mdW5jdGlvbihuLFcsRCxiKXtXLmR1cmF0aW9uTXM9RDtXLmRJPWI7KGI9bi50dy5nZXQoVy5jcG4pKT9iLmFUKEQvMUUzKTpuLmJqKHtub3BfZDpXLmNwbn0pfTsKZy56Vj1mdW5jdGlvbihuLFcpe2ZvcihsZXQgRCBvZiBuLkZGKWlmKFc+PUQuc3RhcnQmJlc8PUQuZW5kKXJldHVybiEwO3JldHVybiExfTsKZy5UVj1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPW4uWXEuZ2V0KEQpO2lmKCFrKXtpZihrPVdmKG4sVykpcmV0dXJuIGs7Vz1uLkdNKEQtMSxiPz8yKTtpZih2KXJldHVybiBuLmJqKHttaXNzY3VlOnYsc3E6RCx0eXBlOmIscHJldnNzdGF0ZTpXPy5zbCxwcmV2cmVjb3JkOm4uWXEuaGFzKEQtMSl9KSxuLllxLmdldChELTEpO2lmKFc/LnNsPT09MilyZXR1cm4gbi5iaih7YWRuZjoxLHNxOkQsdHlwZTpiLHByZXZyZWNvcmQ6bi5ZcS5oYXMoRC0xKX0pLG4uWXEuZ2V0KEQtMSl9cmV0dXJuIGt9Owpsd1o9ZnVuY3Rpb24obixXLEQsYix2LGspe2lmKCFuLnVLKWlmKGcuelYobixEKSluLmJqKHtnZHU6InVuZGVjIixzZWc6RCxpdGFnOnZ9KTtlbHNlIGlmKFc9Zy5UVihuLFcsRCxiLGspLCFuLmdzLmdldFZpZGVvRGF0YSgpLkRGKCl8fCFXPy5QTylyZXR1cm4gV307CldmPWZ1bmN0aW9uKG4sVyl7Vys9bi5IMygpO2lmKG4uZ3MuZ2V0VmlkZW9EYXRhKCkuREYoKSl7YTp7dmFyIEQ9bi5OO249VyoxRTM7Zm9yKGIgb2YgRC5KKWlmKEQ9Yi5MMz9iLkwzKjFFMzpiLm9hLG4+PWIub2EtMUUzJiZuPD1EK2IuZHVyYXRpb25NcysxRTMpYnJlYWsgYTt2YXIgYj12b2lkIDB9Yj17SUQ6YixCRTpXfX1lbHNlIGI9Y2MobixXKSxiPy5JRHx8KGI9Y2MobixXLDEpKTtyZXR1cm4gYj8uSUR9OwpkZj1mdW5jdGlvbihuLFcsRD0hMSl7aWYoIUQpe2ZvcihsZXQgYiBvZiBuLkZGKXtpZihXPj1iLnN0YXJ0JiZXPD1iLmVuZClyZXR1cm47aWYoVz09PWIuZW5kKzEpe2IuZW5kKz0xO3JldHVybn19bi5GRi5wdXNoKG5ldyBhd1MoVykpfX07ClRkaj1mdW5jdGlvbihuLFc9IiIpe3ZhciBEPWcuZDEoVyl8fHZvaWQgMDtXJiZEfHxuLmJqKHthZGNmZzpXPy5sZW5ndGgsZGNmZzpEPy5sZW5ndGh9KTtyZXR1cm4gRH07CmxzPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9W107bj1uLk4uTi5nZXQoVyk7aWYoIW4pcmV0dXJuW107Zm9yKGxldCBiIG9mIG4pYi5jcG4mJkQucHVzaChiLmNwbik7cmV0dXJuIER9OwpuJE09ZnVuY3Rpb24obixXLEQpe3ZhciBiPSExO2lmKEQ9bi5OLk4uZ2V0KEQpKWZvcihsZXQgdiBvZiBEKXYuZHVyYXRpb25NcyE9PTAmJnYuZEkhPT12Lm9hJiYoRD12LmNwbixXPT09RCYmKGI9ITApLGImJiFuLk1kLmhhcyhEKSYmKG4uYmooe2RlY29yYXRlZEFkOkR9KSxuLk1kLmFkZChEKSkpfTsKdmFyIElhMj1mdW5jdGlvbihuLFcpe3JldHVybiBvU1tJWzEwXV0odGhpcywyLDQ0MzksbixXKX07CldMcj1mdW5jdGlvbihuLFcsRCl7dmFyIGI9MDtuPW4uTi5OLmdldChEKTtpZighbilyZXR1cm4tMTtmb3IobGV0IHYgb2Ygbil7aWYodi5jcG49PT1XKXJldHVybiBiO2IrK31yZXR1cm4tMX07CkRhcj1mdW5jdGlvbihuLFcpe3ZhciBEPTA7bj1uLk4uTi5nZXQoVyk7aWYoIW4pcmV0dXJuIDA7Zm9yKGxldCBiIG9mIG4pYi5kdXJhdGlvbk1zIT09MCYmYi5kSSE9PWIub2EmJkQrKztyZXR1cm4gRH07CmcuYmZ4PWZ1bmN0aW9uKG4pe2ZvcihsZXQgVyBvZiBuLlcudmFsdWVzKCkpbi5ncy5yZW1vdmVDdWVSYW5nZShXKTtuLlcuY2xlYXIoKTt1cyhuLlRDKX07Ck01aT1mdW5jdGlvbihuKXt2YXIgVz1BcnJheS5mcm9tKG4uYXBwLlZyLkQudmFsdWVzKCkpLEQ9W10sYj1bXSx2PVtdLGs9W10saD1bXSx4PVtdO2Zvcih2YXIgTCBvZiBXKWlmKFc9bi5OLlZFKEwuV04oKSkpbi5iaih7YXR0YWNoX3RyYW5zX21ldGE6Vy5jcG4saGFzX3ZfbWV0YTpXLnNmPzE6MCxoYXNfYV9tZXRhOlcuWU0/MTowLGhhc19jdHhfbWV0YTpXLmpWPzE6MH0pLFcualYmJkQucHVzaChXLmpWKSxXLnNmJiZiLnB1c2goVy5zZiksVy5ZTSYmYi5wdXNoKFcuWU0pLGsucHVzaChXLmNwbiksaC5wdXNoKFcudmlkZW9EYXRhLnZpZGVvSWR8fCIiKSx4LnB1c2goVy52aWRlb0RhdGEuYWRGb3JtYXR8fFcudmlkZW9EYXRhLkZGKSxXLnNlcmlhbGl6ZWRRb2VDb250ZXh0RGF0YSE9bnVsbCYmdi5wdXNoKFcuc2VyaWFsaXplZFFvZUNvbnRleHREYXRhKTtMPXZvaWQgMDtuLnZYJiYobi5iaih7aGFzX2N0eF9saXN0OkQubGVuZ3RoPzE6MCxoYXNfY2xpcF9saXN0OmIubGVuZ3RoPwoxOjB9KSxMPXtqVjpELHJYOmJ9KTtyZXR1cm57UHc6TCxSUDp7YUQ6ayxhcTpoLGFkRm9ybWF0czp4LHNlcmlhbGl6ZWRRb2VDb250ZXh0RGF0YTp2fX19OwpnLkJkdD1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXtpZihXJiZEKXtuLnVOPUQuY3BuO2pzKG4sRC5jcG4sRC5zdGFydFRpbWVTZWNzfHx2KTtGa2oobixEKTt2YXIgeD1GdyhuLCJhMmEiLEQpO24uYmooeCk7bi51ZisrO3g9TTVpKG4pO24uZ3MuY00oVyxELGJ8fDAsdnx8MCwhIWssISFoLHZvaWQgMCx4KX1lbHNlIG4uYmooe21pc3NwYmtvbmFkdHJhbnM6MSxlbnRlcjpEPy5jcG58fCIiLGV4aXQ6Vz8uY3BufHwiIixzZWVrOmssc2tpcDpofSl9OwpnLlJVaT1mdW5jdGlvbihuKXtuLnlFLmFkZChuLmopO24uaj0iIjtuLmJkPSExfTsKdiRoPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYjtpZihiPW4uZ3MuZ2V0VmlkZW9EYXRhKCkuREYoKSliPShiPW4uTi5WRShXKSkmJmIudlA/KG49bi5OLk4uZ2V0KGI/LnZQKSkmJm4uc2xpY2UoLTEpWzBdLmNwbj09PVc6ITE7cmV0dXJuIGImJkQ9PT0yPzFFMzowfTsKZy53RzE9ZnVuY3Rpb24obixXKXtpZihuLmdzLmdldFZpZGVvRGF0YSgpLkRGKCkpe3ZhciBEPW4uTi5OLmdldChXKTtpZihEKXtmb3IodmFyIGIgb2YgRCl7bi5iaih7cmVtX21ldGE6Yi5jcG59KTtEPW47bGV0IHY9RC5XLmdldChiLmNwbik7RC5XLmRlbGV0ZShiLmNwbik7diYmRC5ncy5yZW1vdmVDdWVSYW5nZSh2KTt6VWgoRC5OLGIpfW4uWXEuY2xlYXIoKTtiPW4uTjtEPWIuTi5nZXQoVyk/P1tdO2ZvcihsZXQgdiBvZiBEKXpVaChiLHYpO2IuTi5kZWxldGUoVyk7KFc9bi5aaC5nZXQoVykpJiZuLlJ0JiZuLmdzLll5KFcpfX19OwpodnI9ZnVuY3Rpb24obixXLEQ9e30pe3ZhciBiPW4uVnx8bi5hcHAuTU4oKS5nZXRQbGF5ZXJTdGF0ZSgpO0RMKG4sITApO1c9aXNGaW5pdGUoVyk/VzpuLk4uTlcoKTt2YXIge0lEOnYsQkU6a309YmwobixXKTtXPXYmJiF2ZihuLHYpfHwhdiYmbi5OIT09bi5hcHAuTU4oKTt2YXIgaD1rKjFFMztoPW4uVyYmbi5XLnN0YXJ0PD1oJiZoPD1uLlcuZW5kOyFXJiZofHxrcihuKTt2P2cua3JaKG4sdixrLEQsYik6eHIobixrLEQsYiwiX2V4ZWN1dGUiKX07CmcuTEo9ZnVuY3Rpb24obixXLEQsYil7bi5OLlUoInRpbWVsaW5lZXJyb3IiLHtlOlcsY3BuOkQ/RDp2b2lkIDAsdmlkZW9JZDpiP2I6dm9pZCAwfSl9OwpnLmVhPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG5ldyBnLmw1KE1hdGgubWF4KDAsbi01RTMpLFc/MHg4MDAwMDAwMDAwMDAwOm4tMSx7bmFtZXNwYWNlOiJjaGlsZHBsYXliYWNrIixwcmlvcml0eTo5fSl9OwpnLnhhaT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9Vy5MeDtXLkx4PUQ7dmYobixXKSYmKEQ9bi5hcHAuTU4oKSxiLm9JPT09bi5XJiZrcihuKSxELnJlbW92ZUN1ZVJhbmdlKGIub0kpLEQuYWRkQ3VlUmFuZ2UoVy5MeC5vSSkpfTsKZy5rclo9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz12ZihuLFcpO2lmKCFrKXtXLnBsYXllclZhcnMucHJlZmVyX2dhcGxlc3M9ITA7dmFyIGg9bmV3IGcuVXIobi5CLFcucGxheWVyVmFycyk7aC5LZj1XLktmO24uYXBpLnoyKGgsVy5wbGF5ZXJUeXBlKX1oPW4uYXBwLk1OKCk7a3x8aC5hZGRDdWVSYW5nZShXLkx4Lm9JKTtoLnNlZWtUbyhELHtxZDoiYXBwbGljYXRpb25fdGltZWxpbmVtYW5hZ2VyIiwuLi5ifSk7TEwyKG4sdil9OwpldnQ9ZnVuY3Rpb24obixXLEQsYil7bi5XPWI7Yj1XLktmO3ZhciB2PVcucGxheWVyVmFycyxrPVcucGxheWVyVHlwZTtuLks9Vzt2JiZuLmFwaS5lbnF1ZXVlVmlkZW9CeVBsYXllclZhcnModixrLEQsYil9OwpnJFM9ZnVuY3Rpb24obixXLEQsYil7bi5XPWI7bi5hcGkuV3Aobi5OLEQsVyl9Owprcj1mdW5jdGlvbihuKXtuLks9bnVsbDtuLlc9bnVsbDtuLmFwaS5kVCgpfHxuLmFwaS5jbGVhclF1ZXVlKCl9Owp2Zj1mdW5jdGlvbihuLFcpe249bi5hcHAuTU4oKTtyZXR1cm4hIW4mJm4uZ2V0VmlkZW9EYXRhKCkuS2Y9PT1XLktmfTsKWGVqPWZ1bmN0aW9uKG4sVyl7dmYobixXKXx8Zy5MSihuLCJjaGlsZFBsYXliYWNrSXNOb3RQcmVzZW50aW5nIik7cmV0dXJuIFcuZEk9PT1XLm9hK1cuZHVyYXRpb25Ncz9XLm9hK24uYXBwLk1OKCkuZ2V0Q3VycmVudFRpbWUoKSoxRTM6Vy5kSX07CmJsPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MDtmb3IobGV0IGIgb2Ygbi5KKXtuPWIub2EvMUUzK0Q7bGV0IHY9bitiLmR1cmF0aW9uTXMvMUUzO2lmKG4+VylicmVhaztpZih2PlcpcmV0dXJue0lEOmIsQkU6Vy1ufTtEPXYtYi5kSS8xRTN9cmV0dXJue0lEOm51bGwsQkU6Vy1EfX07CkRMPWZ1bmN0aW9uKG4sVyl7bi5PPU5hTjtuLkQ9bnVsbDtuLlkuc3RvcCgpO24uWCYmVyYmbi5YLkdfKCk7bi5WPW51bGw7bi5YPW51bGx9Owp4cj1mdW5jdGlvbihuLFcsRCxiLHYpe3ZhciBrPW4uTjtrIT09bi5hcHAuTU4oKSYmbi5hcHAuWDkoKTtuLkIuUygiaHRtbDVfc2Ficl9jc2RhaV9zZWVrX2xvZyIpfHwodj0iIik7ay5zZWVrVG8oVyx7cWQ6ImFwcGxpY2F0aW9uX3RpbWVsaW5lbWFuYWdlciIrKHY/PyIiKSwuLi5EfSk7TEwyKG4sYil9OwpMTDI9ZnVuY3Rpb24obixXKXtuPW4uYXBwLk1OKCk7dmFyIEQ9bi5nZXRQbGF5ZXJTdGF0ZSgpO1cuaXNPcldpbGxCZVBsYXlpbmcoKSYmIUQuaXNPcldpbGxCZVBsYXlpbmcoKT9uLnBsYXlWaWRlbygpOlcuaXNQYXVzZWQoKSYmIUQuaXNQYXVzZWQoKSYmbi5wYXVzZVZpZGVvKCl9OwpxZWk9ZnVuY3Rpb24obil7dmFyIFc9bi5KLmZpbmQoRD0+dmYobixEKSk7CmlmKFcpe2xldCBEPW4uYXBwLk1OKCk7a3Iobik7bGV0IGI9bmV3IGcubG0oOCk7Vz1YZWoobixXKS8xRTM7eHIobixXLHt9LGIsIl9mb3JjZSIpO0QuVSgiZm9yY2VQYXJlbnRUcmFuc2l0aW9uIix7Y2hpbGRQbGF5YmFjazoxfSk7bi5OLlUoImZvcmNlUGFyZW50VHJhbnNpdGlvbiIse3BhcmVudFBsYXliYWNrOjF9KX19OwpnLmc1PWZ1bmN0aW9uKG4sVz0tMSxEPUluZmluaXR5KXtmb3IobGV0IFt4LExdb2Ygbi5qKXt2YXIgYj14LHY9TDt2LnFJPj1XJiZ2LnRhcmdldCYmdi50YXJnZXQuZEk8PUQmJihuLk4ucmVtb3ZlQ3VlUmFuZ2UoYiksbi5qLmRlbGV0ZShiKSl9Yj1bXTtmb3IobGV0IHggb2Ygbi5KKXgub2E+PVcmJnguZEk8PUQ/KHY9bix2Lks9PT14JiZrcih2KSx2Zih2LHgpJiZ2LmFwcC5YOSgpKTpiLnB1c2goeCk7bi5KPWI7dmFyIHtJRDprLEJFOmh9PWJsKG4sVy8xRTMpO2smJihXPWgqMUUzLGcuR3IxKG4sayxXLGsuZEk9PT1rLm9hK2suZHVyYXRpb25Ncz9rLm9hK1c6ay5kSSkpOyh7SUQ6V309YmwobixELzFFMykpO1cmJmcuTEoobixgSW52YWxpZCBjbGVhckVuZFRpbWVNcz0ke0R9IHRoYXQgZmFsbHMgZHVyaW5nICR7YHBsYXliYWNrPXt0aW1lbGluZVBsYXliYWNrSWQ9JHtXLktmfSB2aWRlb19pZD0ke1cucGxheWVyVmFycy52aWRlb19pZH0gZHVyYXRpb25Ncz0ke1cuZHVyYXRpb25Nc30gZW50ZXJUaW1lTXM9JHtXLm9hfSBwYXJlbnRSZXR1cm5UaW1lTXM9JHtXLmRJfX1gfS5DaGlsZCBwbGF5YmFja3MgY2FuIG9ubHkgaGF2ZSBkdXJhdGlvbiB1cGRhdGVkIG5vdCB0aGVpciBzdGFydC5gKX07CmcuR3IxPWZ1bmN0aW9uKG4sVyxELGIpe1cuZHVyYXRpb25Ncz1EO1cuZEk9YjtiPXtvSTpnLmVhKEQsITApLHFJOkQsdGFyZ2V0Om51bGx9O2cueGFpKG4sVyxiKTt2ZihuLFcpJiZuLmFwcC5NTigpLmdldEN1cnJlbnRUaW1lKCkqMUUzPkQmJihXPVhlaihuLFcpLzFFMyxEPW4uYXBwLk1OKCkuZ2V0UGxheWVyU3RhdGUoKSx4cihuLFcse30sRCwiX3VwZGF0ZSIpKX07CiRhcj1mdW5jdGlvbihuKXtuJiZuIT09IndlYiImJnRZaS5pbmNsdWRlcyhuKX07CnVScj1mdW5jdGlvbihuLFcpe3JldHVybiBXPyEhbi5OLmdldChXKTohMX07CnJFUz1mdW5jdGlvbihuLFcpe24uZGF0YXNldC52ZXJzaW9uPVd9OwpzOHI9ZnVuY3Rpb24obil7dmFyIFc9bi5hcHAuUkIsRD0oKT0+e24uRU49bmV3IGcuYnIoMCwwLDAsMCk7bi5JMD1uZXcgZy5icigwLDAsMCwwKX0sYj1oPT57aC5nZXRWaWRlb0RhdGEoKSYmbi51cGRhdGVWaWRlb0RhdGEoaC5nZXRWaWRlb0RhdGEoKSl9LHY9KGgseCk9PntuLmYxKGgseCl9LGs9aD0+e24ubkImJlhTKG4pOwpxNyhuKSE9PW4uUDAmJm4ucmVzaXplKCk7bi5hcHAuRygpLlMoIndlYl9lbmFibGVfc21hcnRfem9vbSIpJiZuLm04JiYoaC5zdGF0ZS5pc1BhdXNlZCgpP24ubTgucGF1c2UoKTpoLlhRKDgpJiZuLm04LnBsYXlTdGF0ZT09PSJwYXVzZWQiJiZuLm04LnBsYXkoKSl9OwpXLmFkZEV2ZW50TGlzdGVuZXIoImluaXRpYWxpemluZ21vZGUiLEQpO1cuYWRkRXZlbnRMaXN0ZW5lcigidmlkZW9wbGF5ZXJyZXNldCIsYik7Vy5hZGRFdmVudExpc3RlbmVyKCJ2aWRlb2RhdGFjaGFuZ2UiLHYpO1cuYWRkRXZlbnRMaXN0ZW5lcigicHJlc2VudGluZ3BsYXllcnN0YXRlY2hhbmdlIixrKTtuLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57Vy5yZW1vdmVFdmVudExpc3RlbmVyKCJpbml0aWFsaXppbmdtb2RlIixEKTtXLnJlbW92ZUV2ZW50TGlzdGVuZXIoInZpZGVvcGxheWVycmVzZXQiLGIpO1cucmVtb3ZlRXZlbnRMaXN0ZW5lcigidmlkZW9kYXRhY2hhbmdlIix2KTtXLnJlbW92ZUV2ZW50TGlzdGVuZXIoInByZXNlbnRpbmdwbGF5ZXJzdGF0ZWNoYW5nZSIsayl9KX07ClllaT1mdW5jdGlvbihuKXt2YXIgVz1uLkV6KCksRD0xLGI9ITEsdj1OTncobixXLG4uZ2V0VmlkZW9Bc3BlY3RSYXRpbygpKSxrPW4uYXBwLkcoKSxoPWsuUygiZW5hYmxlX2Rlc2t0b3BfcGxheWVyX3VuZGVybGF5IikseD1GbigpLEw9Zy5kTShrLmV4cGVyaW1lbnRzLCJwbGF5ZXJfdW5kZXJsYXlfbWluX3BsYXllcl93aWR0aCIpO0w9aCYmbi5hSCYmbi5nZXRQbGF5ZXJTaXplKCkud2lkdGg+TDtpZihxNyhuKSl7dmFyIGU9cGVVKG4pO3ZhciBHPWlzTmFOKGUpfHxnLlJnfHxuciYmZy5Hbnx8TDtnLk1MJiYhZy5aWCg2MDEpP2U9di5hc3BlY3RSYXRpbzpHPUd8fGsuY29udHJvbHNUeXBlPT09IjMiO0c/TD8oRz1rLlMoInBsYWNlX3NocnVua2VuX3ZpZGVvX29uX2xlZnRfb2ZfcGxheWVyIik/MTY6bi5nZXRQbGF5ZXJTaXplKCkud2lkdGgtVy53aWR0aC0xNixlPU1hdGgubWF4KChuLmdldFBsYXllclNpemUoKS5oZWlnaHQtVy5oZWlnaHQpLzIsMCksRz1uZXcgZy5icihHLGUsVy53aWR0aCwKVy5oZWlnaHQpLG4ubkIuc3R5bGUuc2V0UHJvcGVydHkoImJvcmRlci1yYWRpdXMiLCIxMnB4IikpOkc9bmV3IGcuYnIoMCwwLFcud2lkdGgsVy5oZWlnaHQpOihEPXYuYXNwZWN0UmF0aW8vZSxHPW5ldyBnLmJyKChXLndpZHRoLXYud2lkdGgvRCkvMiwoVy5oZWlnaHQtdi5oZWlnaHQpLzIsdi53aWR0aC9ELHYuaGVpZ2h0KSxEPT09MSYmZy5HbiYmKGU9Ry53aWR0aC1XLmhlaWdodCplLGU+MCYmKEcud2lkdGgrPWUsRy5oZWlnaHQrPWUpKSk7Zy5pSChuLmVsZW1lbnQsInl0cC1maXQtY292ZXItdmlkZW8iLE1hdGgubWF4KEcud2lkdGgtdi53aWR0aCxHLmhlaWdodC12LmhlaWdodCk8MSk7aWYoeHx8bi5jSSluLm5CLnN0eWxlLmRpc3BsYXk9IiI7bi5QMD0hMH1lbHNle0c9LVcuaGVpZ2h0O2cuTUw/Ryo9d2luZG93LmRldmljZVBpeGVsUmF0aW86Zy5zbSYmKEctPXdpbmRvdy5zY3JlZW4uaGVpZ2h0KTtHPW5ldyBnLmJyKDAsRyxXLndpZHRoLFcuaGVpZ2h0KTtpZih4fHxuLmNJKW4ubkIuc3R5bGUuZGlzcGxheT0KIm5vbmUiO24uUDA9ITF9dlkobi5FTixHKXx8KG4uRU49RyxnLkRmKGspPyhuLm5CLnN0eWxlLnNldFByb3BlcnR5KCJ3aWR0aCIsRy53aWR0aCsicHgiLCJpbXBvcnRhbnQiKSxuLm5CLnN0eWxlLnNldFByb3BlcnR5KCJoZWlnaHQiLEcuaGVpZ2h0KyJweCIsImltcG9ydGFudCIpKTpOdChuLm5CLEcuZ2V0U2l6ZSgpKSxHPW5ldyBnLk1ZKEcubGVmdCxHLnRvcCksYj1uLm5CLHg9TWF0aC5yb3VuZChHLngpLHggaW5zdGFuY2VvZiBnLk1ZPyhrPXgueCx4PXgueSk6KGs9eCx4PU1hdGgucm91bmQoRy55KSksYi5zdHlsZS5sZWZ0PXNqKGssITEpLGIuc3R5bGUudG9wPXNqKHgsITEpLGI9ITApO1c9bmV3IGcuYnIoKFcud2lkdGgtdi53aWR0aCkvMiwoVy5oZWlnaHQtdi5oZWlnaHQpLzIsdi53aWR0aCx2LmhlaWdodCk7dlkobi5JMCxXKXx8KG4uSTA9VyxiPSEwKTtnLmgxKG4ubkIsInRyYW5zZm9ybSIsRD09PTE/IiI6YHNjYWxlWCgke0R9KWApO2gmJkwhPT1uLlp4JiYoTCYmKG4ubkIuYWRkRXZlbnRMaXN0ZW5lcihHQSwKbi5reiksbi5uQi5hZGRFdmVudExpc3RlbmVyKCJ0cmFuc2l0aW9uY2FuY2VsIixuLmt6KSxuLm5CLmNsYXNzTGlzdC5hZGQoZy5Pbi5WSURFT19DT05UQUlORVJfVFJBTlNJVElPTklORykpLG4uWng9TCxuLmFwcC5SQi5XSigicGxheWVyVW5kZXJsYXlWaXNpYmlsaXR5Q2hhbmdlIixuLlp4PyJ0cmFuc2l0aW9uaW5nIjoiaGlkZGVuIikpO3JldHVybiBifTsKWFM9ZnVuY3Rpb24obil7dmFyIFc9bi5hcHAuRygpLmNvbnRyb2xzVHlwZT09PSIzIiYmIW4ud0YmJnE3KG4pJiYhbi5hcHAuc2p8fCExO24ubkIuY29udHJvbHM9VztuLm5CLnRhYkluZGV4PVc/MDotMTtuLmFwcC5HKCkuSiYmKG4ubkIuYXJpYUhpZGRlbj0idHJ1ZSIpO1c/bi5uQi5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1cyIsbi5KdCk6bi5uQi5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsbi5KdCl9OwpwZVU9ZnVuY3Rpb24obil7dmFyIFc9bi5hcHAuTU4oKTtpZihXPVc/Vy5nZXRWaWRlb0RhdGEoKTpudWxsKXtpZihnLkhUKFcpfHxnLmZBKFcpfHxnLkpEKFcpKXJldHVybiAxNi85O2lmKE1zKFcpJiZXLlcuTigpKXJldHVybiBuPVcuVy52aWRlb0luZm9zWzBdLnZpZGVvLHRiKG4ud2lkdGgsbi5oZWlnaHQpfXJldHVybihuPW4ubkIpP3RiKG4udmlkZW9XaWR0aCxuLnZpZGVvSGVpZ2h0KToxNi85fTsKdGI9ZnVuY3Rpb24obixXKXtyZXR1cm4gTWF0aC5hYnMoJHIqVy1uKTwxfHxNYXRoLmFicygkci9uLVcpPDE/JHI6bi9XfTsKTk53PWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PUQsaz10YihXLndpZHRoLFcuaGVpZ2h0KTtuLnJVP3Y9RDxrP0luZmluaXR5OjA6aXNOYU4obi5WUik/aXNOYU4obi5mVCl8fCh2PW4uZlQpOnY9bi5WUjtpc0Zpbml0ZSh2KT92PT09MCYmbi5hcHAuRygpLlp0KCkuTi5RUShIZngpJiYodj1NYXRoLm1pbihELGspKTp2PU1hdGgubWF4KEQsayk7bj12Pms/e3dpZHRoOlcud2lkdGgsaGVpZ2h0Olcud2lkdGgvdixhc3BlY3RSYXRpbzp2fTp2PGs/e3dpZHRoOlcuaGVpZ2h0KnYsaGVpZ2h0OlcuaGVpZ2h0LGFzcGVjdFJhdGlvOnZ9Ont3aWR0aDpXLndpZHRoLGhlaWdodDpXLmhlaWdodCxhc3BlY3RSYXRpbzprfTtifHxpc05hTihEKXx8KEQ+dj9uLndpZHRoPW4uaGVpZ2h0KkQ6RDx2JiYobi5oZWlnaHQ9bi53aWR0aC9EKSxuLmFzcGVjdFJhdGlvPUQpO3JldHVybiBufTsKcTc9ZnVuY3Rpb24obil7aWYobi5hcHAuZ2V0QXBwU3RhdGUoKT09PTEpcmV0dXJuITE7aWYobi5hcHAuZ2V0QXBwU3RhdGUoKT09PTYpcmV0dXJuITA7dmFyIFc9bi5hcHAuTU4oKTtpZighV3x8Vy5KbigpKXJldHVybiExO249bi5hcHAuUkIuZ2V0UGxheWVyU3RhdGVPYmplY3QoKTtXPSFuLk4oMil8fFcmJlcuZ2V0VmlkZW9EYXRhKCkuSzt2YXIgRD1uLk4oMTAyNCk7cmV0dXJuIG4mJlcmJiFEJiYhbi5pc0N1ZWQoKX07CmZHUz1mdW5jdGlvbihuKXtpZihuLmNzbiE9PWcuUnYoKSlpZihuLmNzbj09PSJVTkRFRklORURfQ1NOIiluLmNzbj1nLlJ2KCk7ZWxzZXt2YXIgVz1nLlJ2KCksRD13NCgpO2lmKFcmJkQpe24uY3NuPVc7Zm9yKGxldCBiIG9mIG4uZWxlbWVudHMpe2xldCB2PWIudmlzdWFsRWxlbWVudDt2JiZ2LmlzQ2xpZW50VmUoKSYmVyYmRCYmKGcubCgiY29tYmluZV92ZV9ncmFmdHMiKT9PMyhJZigpLHYsRCk6UFYodWcpKHZvaWQgMCxXLEQsdikpfX1pZihXKWZvcihsZXQgYiBvZiBuLk4pKG49Yi52aXN1YWxFbGVtZW50KSYmbi5pc0NsaWVudFZlKCkmJkZqKFcsbil9fTsKSkViPWFzeW5jIGZ1bmN0aW9uKG4pe2lmKCFuLlk2KXtuLlk2PW4uRChuLlkpO3RyeXtsZXQgRD1Qcm9taXNlLndpdGhSZXNvbHZlcnMoKTt2YXIgVz1zZXRUaW1lb3V0KCgpPT57RC5yZWplY3QoInRpbWVvdXQiKX0sMUU0KTsKbi5ZNi5vbmVycm9yPSgpPT57RC5yZWplY3QoImVycm9yIil9OwpuLlk2Lm9ubWVzc2FnZT0oKT0+e0QucmVzb2x2ZSgpO2NsZWFyVGltZW91dChXKX07CmF3YWl0IEQucHJvbWlzZTtuLlk2Lm9ubWVzc2FnZT1udWxsO24uWTYub25lcnJvcj1udWxsO24uWTYuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsYj0+dm9pZCBuLnJlY2VpdmUoYikpOwpuLlUoIndvcmtlckN0b3IiLHt9KX1jYXRjaChEKXtjbGVhclRpbWVvdXQoVyksbi5ZNj8udGVybWluYXRlKCksbi5ZNi5vbm1lc3NhZ2U9bnVsbCxuLlk2Lm9uZXJyb3I9bnVsbCxuLlk2PXZvaWQgMCxuLlUoIndvcmtlckVyciIse2U6YCR7RH1gfSl9fX07CklHdz1mdW5jdGlvbihuLFcpe2lmKG4uTiYmbi5OLmJ5dGVMZW5ndGg9PT1XKXJldHVybiBuLk47Zm9yKHZhciBEPW5ldyBVaW50OEFycmF5KFcpLGI9MDtXPjA7KXtsZXQgdj1uZXcgVWludDhBcnJheShNYXRoLm1pbihXLDY1NTM2KSk7Y3J5cHRvLmdldFJhbmRvbVZhbHVlcyh2KTtELnNldCh2LGIpO1ctPXYubGVuZ3RoO2IrPXYubGVuZ3RofXJldHVybiBuLk49RH07ClNlMT1mdW5jdGlvbihuLFcpe24uWTYmJihXPUlHdyhuLFcpLFcubGVuZ3RoPjAmJldbMF0rKyxXPXtxTDpwZXJmb3JtYW5jZS5ub3coKSx0eXBlOjEsYTk6e2RhdGE6V319LG4ucmVxdWVzdChXKSl9OwpBRWk9YXN5bmMgZnVuY3Rpb24obil7bi5KIT09dm9pZCAwfHxuLld8fChuLlc9ITAsYXdhaXQgSkViKG4pLG4uVz0hMSxuLlk2JiYoU2UxKG4sbi5LKSxuLko9c2V0SW50ZXJ2YWwoKCk9Pnt2YXIgVz1bMSwyLDMsNF07bi5CQiYmKFcucHVzaCg1KSxuLlgmJlcucHVzaCg2KSk7c3dpdGNoKFdbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKlcubGVuZ3RoKV0pe2Nhc2UgMTpTZTEobixuLmopO2JyZWFrO2Nhc2UgMjpuLlk2JiYoVz17cUw6cGVyZm9ybWFuY2Uubm93KCksdHlwZToyLGx4OntwbGFjZWhvbGRlcjohMH19LG4ucmVxdWVzdChXKSk7YnJlYWs7Y2FzZSAzOlc9bi5NdztuLlk2JiYoVz17cUw6cGVyZm9ybWFuY2Uubm93KCksdHlwZTozLHEwOntNdzpXfX0sbi5yZXF1ZXN0KFcpKTticmVhaztjYXNlIDQ6bi5ZNiYmKFc9e3FMOnBlcmZvcm1hbmNlLm5vdygpLHR5cGU6NCxpc1R5cGVTdXBwb3J0ZWQ6e3BsYWNlaG9sZGVyOiEwfX0sbi5yZXF1ZXN0KFcpKTticmVhaztjYXNlIDU6bi5CQiYmCihXPXtxTDpwZXJmb3JtYW5jZS5ub3coKSx0eXBlOjUseTg6e0JCOm4uQkJ9fSxuLnJlcXVlc3QoVykpO2JyZWFrO2Nhc2UgNjp2YXIgRD1uLmo7Vz1uLlM3O24uWTYmJihEPUlHdyhuLEQpLFc9e3FMOnBlcmZvcm1hbmNlLm5vdygpLHR5cGU6NixKTDp7ZGF0YTpELFM3Old9fSxuLnJlcXVlc3QoVykpfX0sbi5pbnRlcnZhbE1zKSkpfTsKcjU9ZnVuY3Rpb24obixXLEQpe24uc2VuZE1lc3NhZ2Uoe1sxNjFdOjIsWzExNl06VyxbMTM5XTpEfSl9OwpaZnc9YXN5bmMgZnVuY3Rpb24obil7dmFyIFc9bi50Yi5HKCksRD1XLmdldFdlYlBsYXllckNvbnRleHRDb25maWcoKS50cnVzdGVkUGxheWJhY2tXb3JrZXJVcmw7aWYoRD1wdyhEfHxudWxsKSluLlk2PVhNKEQpLG4uTj1uZXcgbWFVKG4uWTYpLG4uWTYuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGI9PntnLlhqKGIuZXJyb3IpfSksbi5ZNi5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixiPT57dmFyIHY9Yi5kYXRhOwpiPXZbMTE4XTt2YXIgaz12WzE4MF07aWYoaylmb3IodmFyIGggb2Yga1sxMjJdKShrPW4uVy5nZXQoaFsxMTldKSkmJktMWihrLGhbMTUxXSk7c3dpdGNoKGJbMTYxXSl7Y2FzZSAxOmxldCB7WzEwM106ZSxbM106R309YlsxN107c3dpdGNoKGUpe2Nhc2UgMTpsZXQgW3IsTl09RztuLnRiLmNsZWFyUXVldWUocixOKTticmVhaztjYXNlIDI6W2JdPUc7bi50Yi5vblBsYXllclJlcXVlc3RTZW50KGIpO2JyZWFrO2Nhc2UgMzpsZXQgW0gsQSx5XT1HO2lmKGI9eT9uLkouZ2V0KHkpOm51bGwpYj1iLmdldFZpZGVvRGF0YSgpLG4udGIuVmEoSCxBLGIpO2JyZWFrO2Nhc2UgNDpsZXQgW1QseixDXT1HO2I9bi5YLmdldCh6KTtpZighYil0aHJvdyBFcnJvcihgVW5rbm93biBtaXJyb3JlZCBDdWVSYW5nZTogJHt6fWApO24udGIuQ0ooVCxiLEMpO2JyZWFrO2Nhc2UgNTpbYl09RzsoYj1uLkouZ2V0KGIpKSYmbi50Yi5ueShiLmdldFZpZGVvRGF0YSgpKTticmVhaztjYXNlIDY6W2JdPUc7KGI9Cm4uSi5nZXQoYikpJiZuLnRiLmZMKGIuZ2V0VmlkZW9EYXRhKCkpO2JyZWFrO2Nhc2UgNzpuLnRiLkdjKCk7YnJlYWs7ZGVmYXVsdDpnLnBiKGUsdm9pZCAwKX1icmVhaztjYXNlIDI6dj1uLk47aD1iWzExNl07Yj1iWzEzOV07az12Lk4uZ2V0KGgpO3RyeXtrJiZrLnJlamVjdChiKX1maW5hbGx5e3YuTi5kZWxldGUoaCl9YnJlYWs7Y2FzZSAzOnY9bi5OO2g9YlsxMTZdO2I9YlsxMzldO2s9di5OLmdldChoKTt0cnl7ayYmay5yZXNvbHZlKGIpfWZpbmFsbHl7di5OLmRlbGV0ZShoKX1icmVhaztjYXNlIDQ6T2Z0KG4sdik7YnJlYWs7Y2FzZSA1OmJyZWFrO2Nhc2UgNjpiPXZbMTE4XTtoPW4uSy5nZXQoYls5OF0pO3Y9dlsxMzhdO2lmKGgpe2xldCB7WzEwM106cixbM106Tn09YlsxN107c3dpdGNoKHIpe2Nhc2UgImxvYWQiOmgubG9hZCguLi5OKTt2JiZyNShuLk4sdik7YnJlYWs7Y2FzZSAicGxheSI6Yj1oLnBsYXkoLi4uTik7diYmc1oobix2LGJ8fHZvaWQgMCk7YnJlYWs7Y2FzZSAicGF1c2UiOmgucGF1c2UoLi4uTiksCnYmJnI1KG4uTix2KX19YnJlYWs7Y2FzZSA3OmlmKHY9bi5LLmdldChiWzk4XSkpe3ZhciB7WzEzNV06eCxbMTY1XTpMfT1iWzE0NF07Yj12LmVfKCk7c3dpdGNoKHgpe2Nhc2UgImN1cnJlbnRUaW1lIjpiLmN1cnJlbnRUaW1lPUw7YnJlYWs7Y2FzZSAiZGVmYXVsdFBsYXliYWNrUmF0ZSI6Yi5kZWZhdWx0UGxheWJhY2tSYXRlPUw7YnJlYWs7Y2FzZSAibG9vcCI6Yi5sb29wPUw7YnJlYWs7Y2FzZSAibXV0ZWQiOmIubXV0ZWQ9TDticmVhaztjYXNlICJwbGF5YmFja1JhdGUiOmIucGxheWJhY2tSYXRlPUw7YnJlYWs7Y2FzZSAic3JjIjpMPyhiPW4uRC5nZXQoTCkpJiZ2LnM1KGIpOih2LlZRKCksdi5lJCgpKTticmVhaztkZWZhdWx0OmcucGIoeCx2b2lkIDApfX1icmVhaztjYXNlIDg6aWYodj1uLlcuZ2V0KGJbMTE5XSkpe2xldCB7dHlwZTpyLGFyZ3M6TixsVDpIfT17dHlwZTpiWzQ3XVsxNjFdLGFyZ3M6Yls0N11bM10sbFQ6Wy4uLmJbNDddWzNdXX07c3dpdGNoKHIpe2Nhc2UgImludGVybmFsYXVkaW9mb3JtYXRjaGFuZ2UiOmI9Ck5bMF1bNV07di52aWRlb0RhdGEuWD1iP09OKGIpOm51bGw7SFswXT12LnZpZGVvRGF0YTticmVhaztjYXNlICJpbnRlcm5hbHZpZGVvZm9ybWF0Y2hhbmdlIjpiPU5bMF1bNDhdO3YudmlkZW9EYXRhLko9Yj9PTihiKTpudWxsO0hbMF09di52aWRlb0RhdGE7YnJlYWs7Y2FzZSAiaW50ZXJuYWx2aWRlb2RhdGFjaGFuZ2UiOmI9TlsxXTtoPSEhdi52aWRlb0RhdGEuZ2V0UGxheWVyUmVzcG9uc2UoKTt6Zih2LnZpZGVvRGF0YSx7cmF3X3BsYXllcl9yZXNwb25zZTpiWzEyNV18fHZvaWQgMH0sIWgsITEpO0hbMV09di52aWRlb0RhdGE7YnJlYWs7Y2FzZSAiaGVhcnRiZWF0cGFyYW1zIjpiPU5bMF07SFswXT17dXJsOmJbMTYyXSxpbnRlcnZhbDpiWzU2XSxyZXRyaWVzOmJbMTQwXX07YnJlYWs7Y2FzZSAibm9uZmF0YWxlcnJvciI6Yj1OWzBdO0hbMF09bmV3IGcuQ2koYls0NV0sYlszOF0sYlsxNDVdKTticmVhaztjYXNlICJzdGF0ZWNoYW5nZSI6Yj1OWzBdO2g9TXdoKGJbMTUxXSk7SFswXT0KbmV3IGcuTjcoaCxNd2goYlsxMTNdKSk7di5wbGF5ZXJTdGF0ZT1oO2JyZWFrO2Nhc2UgInZpZGVvZWxlbWVudGV2ZW50IjpIWzBdPW5ldyBQQlModi5tZWRpYUVsZW1lbnQsTlswXVsxNjFdKX12LmV2ZW50cy5XSihyLC4uLkgpfWJyZWFrO2Nhc2UgOTpuLkQuc2V0KGJbMTAxXSxiWzEwMF0pO2JyZWFrO2RlZmF1bHQ6Zy5wYihiLHZvaWQgMCl9fSksbi5ZNi5wb3N0TWVzc2FnZSh7dHlwZToiQk9PVFNUUkFQIiwKZGF0YTp7aG9zdG5hbWU6d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLGhyZWY6d2luZG93LmxvY2F0aW9uLmhyZWYscHJvdG9jb2w6d2luZG93LmxvY2F0aW9uLnByb3RvY29sLHNlYXJjaDp3aW5kb3cubG9jYXRpb24uc2VhcmNoLHl0Q29uZmlnOntJTk5FUlRVQkVfSE9TVF9PVkVSUklERTp3aW5kb3cubG9jYXRpb24ub3JpZ2luLC4uLmcucWkueXQuY29uZmlnX319fSksbi5zZW5kTWVzc2FnZSh7WzE2MV06MyxbMTc1XTpXLmdldFdlYlBsYXllckNvbnRleHRDb25maWcoKX0pfTsKc1o9ZnVuY3Rpb24obixXLEQpe0Q/RC50aGVuKGI9PntyNShuLk4sVyxiKX0sYj0+e24uTi5zZW5kTWVzc2FnZSh7WzE2MV06MSwKWzExNl06VyxbMTM5XTpifSl9KTpyNShuLk4sVyxudWxsKX07Ck9mdD1mdW5jdGlvbihuLFcpe3ZhciBEPVdbMTE4XTtzd2l0Y2goRFsxMDNdKXtjYXNlIDE6bGV0IFtiLHYsa109RFszXTtEPW4udGIuZFEoYix2LGspOyhXPVdbMTM4XSkmJnNaKG4sVyxEKTticmVhaztjYXNlIDI6bGV0IFtoLHhdPURbM107RD1VYWgoeCxoKTsoVz1XWzEzOF0pJiZzWihuLFcsQWUoU2soRCxMPT4oe1sxNl06Zy5sWihMKSxbMTQ2XToiYzFhImluIEwuUlI/IWcudVouaXNJbml0aWFsaXplZCgpOiExfSkpKSk7CmJyZWFrO2Nhc2UgMzpEPW4udGIueWYoKTsoVz1XWzEzOF0pJiZzWihuLFcsRCk7YnJlYWs7ZGVmYXVsdDpnLnBiKERbMTAzXSx2b2lkIDApfX07CnlFMj1mdW5jdGlvbihuKXt2YXIgVz1uLnRiLkcoKSxEPW4udGIubGooKSxiPW4udGIuaGgoKSx2PUQuZ2V0UGxheWVyU2l6ZSgpO0Q9RC5FeigpO1c9e1syM106bi50Yi5GbigpLFs0NF06e1sxXTpXLlMkLFsxMjRdOlcuQ3UsWzEzMV06Vy55RSxbMTQzXTpXLmpXLFsxNTVdOlcuRVp9LFs1OV06bi50Yi5FOCgpLFs2MV06bi50Yi52MygpLFs2Nl06bi50Yi5pc0Z1bGxzY3JlZW4oKSxbNjddOiExLFs3MF06bi50Yi5qSSgpLFs3MV06bi50Yi5pc0lubGluZSgpLFs3Ml06bi50Yi5CUCgpLFs3M106bi50Yi5pc011dGVkKCksWzc1XTpuLnRiLmlzT3JjaGVzdHJhdGlvbkxlYWRlcigpLFs3N106bi50Yi5BbigpLFs4MF06ITEsWzgyXTohMSxbODNdOm4udGIuU0koKSxbODRdOm4udGIuUTAoKSxbMTA2XTpuLnRiLmlzTXV0ZWQoKSxbMTI2XTp7WzE3OV06di53aWR0aCxbNTNdOnYuaGVpZ2h0fSxbMTMzXTpuLnRiLk1OKCkuSEwoKSxbMTM0XTpuLnRiLk1OKCkuVXUoKSxbMTY2XTp7WzE3OV06RC53aWR0aCwKWzUzXTpELmhlaWdodH0sWzE3MV06YixbMTc0XTpuLnRiLmdldFZvbHVtZSgpfTtiPVtdO2ZvcihsZXQgW2ssaF1vZiBuLlcuZW50cmllcygpKXY9ayxEPWguZ2V0VmlkZW9EYXRhKCksYi5wdXNoKHtbMTE5XTp2LFsxNTFdOntbMTY3XTp7WzI1XTpELlJEfX19KTtuLlkmJk9iamVjdC5hc3NpZ24oVyx7WzY3XTpuLnRiLkhvKCksWzgwXTpuLnRiLmdXKCksWzgyXTpuLnRiLmRUKCl9KTtyZXR1cm57WzJdOlcsWzEyMl06Yn19OwpFJE09ZnVuY3Rpb24obixXKXt2YXIgRD1gbWFpbi5jdWVSYW5nZToke24uTysrfWA7aWYobi5YLmdldChEKSlyZXR1cm4gRDtuLlguc2V0KEQsVyk7bi5qLnNldChXLEQpO3JldHVybiBEfTsKaWZDPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5qLmdldChXKTtpZihEKXJldHVybiBuLmouZGVsZXRlKFcpLG4uWC5kZWxldGUoRCksRH07CktMWj1mdW5jdGlvbihuLFcpe1cmJihPYmplY3QuYXNzaWduKG4uTixXKSxuLmF1ZGlvVHJhY2s9RGMoV1s3XSksbi5YPVhMUyhXWzE0N10pLFc9V1sxNjddKSYmKG4udmlkZW9EYXRhLlR3PVdbMThdLG4udmlkZW9EYXRhLmNhcHRpb25UcmFja3M9V1syMF0ubWFwKEQ9PlZ3KEQpKSxuLnZpZGVvRGF0YS53YT1XWzIxXSxuLnZpZGVvRGF0YS5PJD1XWzE5XSxuLnZpZGVvRGF0YS5HQz1XWzMwXSxuLnZpZGVvRGF0YS52WD1EYyhXWzM1XSksbi52aWRlb0RhdGEuU3c9V1sxNzZdKX07CnU4Yj1hc3luYyBmdW5jdGlvbihuLFcsRCl7Vz17WzEwM106VyxbM106RH07RD1uLmZnLk5lLmdldChuKTtyZXR1cm4gbi5mYSh7WzE2MV06OSxbMTddOlcsWzExOV06RH0pfTsKZy5wSj1mdW5jdGlvbihuLFcsRCl7Vz17WzEwM106VyxbM106RH07RD1uLmZnLk5lLmdldChuKTtuLnNlbmRNZXNzYWdlKHtbMTYxXTo5LFsxN106VyxbMTE5XTpEfSl9OwpZcj1mdW5jdGlvbihuKXt2YXIgVz1bXTtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKylXLnB1c2goe1sxNTBdOm4uc3RhcnQoRCksWzQyXTpuLmVuZChEKX0pO3JldHVybiBXfTsKbyRVPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIG4uZ2V0VmlkZW9EYXRhKCkuZW5hYmxlU2VydmVyU3RpdGNoZWREYWkmJlc9PT0yPyhuLkIuWnQoKS5OLlFRKEhmKT9uLlZyLk4/LmlzQWQoKT8/ITE6bi5Rdz8uTmQobi5nZXRDdXJyZW50VGltZSgpKSk/bi5pdTotMTpXIT09Mnx8bi5MWSgpP24uaXU6bi5CJH07CnY3PWZ1bmN0aW9uKG4pe3JldHVybiBuLnNqJiZuLmdldFZpZGVvRGF0YSgpLm11dGVkQXV0b3BsYXl9Owp2YXIgbXR4PWZ1bmN0aW9uKG4pe3JldHVybiBYRFtJWzEwXV0odGhpcywxNiw0MDI5LG4pfTsKZko9ZnVuY3Rpb24obixXLEQpe1cmJihXPW4uVkUoe3BsYXllclR5cGU6RH0pLFc9PT1uLmNYKCkmJihXLmdldFZpZGVvRGF0YSgpLlBYPSEwKSl9OwpKYj1mdW5jdGlvbihuLFcsRD0hMCxiLHYsayl7dmFyIGg9bi5WRSh7cGxheWVyVHlwZTp2fSkseD1oLmdldFZpZGVvRGF0YSgpO2guZ2V0UGxheWVyVHlwZSgpPT09MiYmIW4uTFkoaCkmJiF4LmlzU2Vla2FibGV8fGcucEEoeCl8fChoJiZoPT09bi5jWCgpJiZuLkhOJiYhZGF0KG4sVykmJm4uc2V0TG9vcFJhbmdlKG51bGwpLG4uc2Vla1RvKFcsRCxiLHYsaywiX3JlcXVlc3QiKSl9OwpBYj1mdW5jdGlvbihuLFcpe1c9bi5WRSh7cGxheWVyVHlwZTpXfSk7Vz1nLklYKG4sVyk7cmV0dXJuIFNhKG4sVy5QRygpLFcpfTsKUGY9ZnVuY3Rpb24obixXLEQpe24uQi5iTiYmKG4uRl89VyxXLm11dGVkfHxLSihuLCExKSxEJiZuLkIuc3RvcmVVc2VyVm9sdW1lJiYhbi5CLnM1JiYoRD17dm9sdW1lOk1hdGguZmxvb3IoVy52b2x1bWUpLG11dGVkOlcubXV0ZWR9LEQudW5zdG9yYWJsZXx8KGcuUEIoInl0LXBsYXllci12b2x1bWUiLEQpLGcuUEIoInl0LXBsYXllci12b2x1bWUiLEQsMjU5MkUzKSkpLE9aKG4pLEQ9Zy5vZCYmbi5tZWRpYUVsZW1lbnQmJiFuLm1lZGlhRWxlbWVudC5YXygpJiYhbi5tZWRpYUVsZW1lbnQuVEMoKSxuLkIuczUmJiFEfHxnLlZVKG4uUkIsIm9uVm9sdW1lQ2hhbmdlIix7bXV0ZWQ6Vy5tdXRlZCx2b2x1bWU6Vy52b2x1bWUsdW5zdG9yYWJsZTohbi5CLnN0b3JlVXNlclZvbHVtZX0pKX07ClZTPWZ1bmN0aW9uKG4pe3JldHVybiBuLmNYKCkuZ2V0VmlkZW9EYXRhKCl9Owp6djI9ZnVuY3Rpb24obixXPSExKXt2YXIgRD0hMTtuLkIuR0MmJihuLlJCLldKKCJwYWdlVHJhbnNpdGlvbiIpLEQ9ITApO24uc3RvcFZpZGVvKEQsVyl9OwpVWj1mdW5jdGlvbihuLFcsRCxiLHYsayxoKXtXPXtpZDpXLG5hbWVzcGFjZTpoPz8iYXBwYXBpIn07az09PSJjaGFwdGVyIj8oVy5zdHlsZT1aTC5DSEFQVEVSX01BUktFUixXLnZpc2libGU9ITApOmlzTmFOKHYpfHwoaz09PSJhZCI/Vy5zdHlsZT1aTC5BRF9NQVJLRVI6KFcuc3R5bGU9WkwuVElNRV9NQVJLRVIsVy5jb2xvcj12KSxXLnZpc2libGU9ITApO24uWEgoW25ldyBnLmw1KEQqMUUzLGIqMUUzLFcpXSwxKTtyZXR1cm4hMH07CmxHdz1mdW5jdGlvbihuLFcsRD0hMCxiLHYpe3ZhciBrPW4uVkUoe3BsYXllclR5cGU6MX0pLGg9MDtrLmdldFN0cmVhbVRpbWVPZmZzZXQoKSYmIWsuU1coKSYmKGg9ay5nZXRTdHJlYW1UaW1lT2Zmc2V0KCkpO0piKG4sVy1oLEQsYiwxLHYpfTsKajgyPWZ1bmN0aW9uKG4pe2lmKG4uQi5zdG9yZVVzZXJWb2x1bWUpcmV0dXJuIHJQKCk7dmFyIFc9bi5pc0lubGluZSgpfHxuLndlYlBsYXllckNvbnRleHRDb25maWcuY29udGV4dElkPT09IldFQl9QTEFZRVJfQ09OVEVYVF9DT05GSUdfSURfS0VWTEFSX0lOTElORV9QUkVWSUVXIjtyZXR1cm4gbi5adCgpLk4uUVEoVE5DKSYmVz97dm9sdW1lOnJQKCkudm9sdW1lLG11dGVkOm4uQi5tdXRlfTp7dm9sdW1lOjEwMCxtdXRlZDpuLkIubXV0ZX19OwpDQlM9ZnVuY3Rpb24obixXLEQsYix2LGs9ITApe3ZhciBoPW4uaEMoKTtpZighaClyZXR1cm4gayYmbi5nZXRWaWRlb0RhdGEoKS5pc0xpdmVQbGF5YmFjayYmbi5KVi5wdXNoKHtpZDpXLFd1OkQsdHY6Yn0pLCExO2s9aC1uLmdldEN1cnJlbnRUaW1lKCk7cmV0dXJuIFVaKG4sVyxELWssYi1rLHZvaWQgMCx2b2lkIDAsdil9Owp5Wj1mdW5jdGlvbihuLFcpe24ucGxheWxpc3QmJihnLkNwKG4ucGxheWxpc3QpLG4ucGxheWxpc3Q9bnVsbCk7VyYmKG4uWlYmJihXLmZldGNoPTApLG4ucGxheWxpc3Q9bmV3IEJOYihuLkIsVykpfTsKaWw9ZnVuY3Rpb24obixXLEQpe1c9bi5WRSh7cGxheWVyVHlwZTpEfSkuTnAoVyk7RCYmbi5nZXRQcmVzZW50aW5nUGxheWVyVHlwZSgpIT09RHx8RVoobiwiY3VlcmFuZ2VzcmVtb3ZlZCIsVyl9OwpVYWg9ZnVuY3Rpb24obixXKXtyZXR1cm4gSFAobmV3IGcuRkxVKHtwSzpXLGNsaWVudFBsYXliYWNrTm9uY2U6bn0pKX07CndlVT1mdW5jdGlvbihuLFcsRCxiPUluZmluaXR5LHY9MCl7dmFyIGs9bi5NTigpO0Q9RHx8ay5nZXRQbGF5ZXJUeXBlKCk7KGs9dWwobixELFcsITApKXx8KGs9b1gobixELFcsITApKTtXPW4uY1goKTtEPT09MiYmVyYmKEQ9ay5nZXRWaWRlb0RhdGEoKSxXLlV5KEQuY2xpZW50UGxheWJhY2tOb25jZSxELkZGfHwiIixELmJyZWFrVHlwZXx8MCxELllLLEQudmlkZW9JZHx8IiIpKTtuLldwKGssYiwwLHYpfTsKTVlNPWZ1bmN0aW9uKG4pe3ZhciBXPW4ud2ViUGxheWVyQ29udGV4dENvbmZpZy50cnVzdGVkSnNVcmw7cmV0dXJuIFc/cHcoVykudG9TdHJpbmcoKTpuLndlYlBsYXllckNvbnRleHRDb25maWcuanNVcmx9OwpSdlo9ZnVuY3Rpb24obil7dmFyIFc9IiIsRD0iIixiPU1ZTShuKSx2PWcubGYoYiwiY2IiKTt2JiYvXltcdy1dKyQvLnRlc3QodikmJihEPXYpO2IuaW5kZXhPZigiLy8iKT09PTAmJihiPW4uQi5wcm90b2NvbCsiOiIrYik7dj1iLmxhc3RJbmRleE9mKCIvYmFzZS5qcyIpO3YhPT0tMSYmKFc9Yi5zdWJzdHJpbmcoMCx2KzEpKTtpZihiPUVycm9yKCkuc3RhY2spaWYoYj1iLm1hdGNoKC9cKCguKj9cLyhkZWJ1Zy0pP3BsYXllci0uKj8pOlxkKzpcZCtcKS8pKWI9YlsxXSxiLmluY2x1ZGVzKFcpfHxnLkdxKEVycm9yKGBQbGF5ZXIgbW9kdWxlIFVSTCBtaXNtYXRjaDogJHtifSB2cyAke1d9LmApKTtXPW5ldyBnLmQ1KG4uUkIsVyxEKTtqTGooVyx7ZGVzdHJveWVkOigpPT57bi5vbkFwaUNoYW5nZSgpfX0pOwpyZXR1cm4gV307ClE4eD1mdW5jdGlvbihuKXtpZihuLkIuWnQoKS5OLlFRKG5hKSl7bi5tUS50aWNrKCJ3YXNtX3MiKTtsZXQgVz1FZChuLndlYlBsYXllckNvbnRleHRDb25maWcud2FzbU1vZHVsZVVybCx2b2lkIDAsbi5JbC5iaW5kKG4pKTtuLkIuZUI9U2soVyxEPT57bi5tUS50aWNrKEQuaXNBc21qcz8id2FzbV9mYSI6Indhc21fZnciKTtKdShuLkIsRCk7cmV0dXJuIER9LEQ9PntuLm1RLnRpY2soIndhc21fZmVyciIpOwp0aHJvdyBEO30pfWVsc2UgT28obixmdW5jdGlvbigpe3ZhciBXPXRoaXM7CnJldHVybiBmdW5jdGlvbiooKXtXLm1RLnRpY2soIndhc21fcyIpO3ZhciBEPVFZKFcueDYpP2I9PlNrKERyWihXLng2KSx2PT52LmdCKGIpKTp2b2lkIDA7CnRyeXtsZXQgYj1FZChXLndlYlBsYXllckNvbnRleHRDb25maWcud2FzbU1vZHVsZVVybCxELFcuSWwuYmluZChXKSksdj15aWVsZCpQUChiKTtXLm1RLnRpY2sodi5pc0FzbWpzPyJ3YXNtX2ZhIjoid2FzbV9mdyIpO0p1KFcuQix2KX1jYXRjaChiKXtXLm1RLnRpY2soIndhc21fZmVyciIpfX0oKX0pfTsKVll4PWZ1bmN0aW9uKG4pe3ZhciBXPW5ldyBnLlVyKG4uQixuLk5RKTtuLlJCLldKKCJpbml0aWFsdmlkZW9kYXRhY3JlYXRlZCIsVyk7cmV0dXJuIG9YKG4sMSxXLCExKX07CmFHMT1mdW5jdGlvbihuKXt2YXIgVz1uLmNYKCk7Vy5zZXRQbGF5YmFja1JhdGUobi5CLko/MTpjRXIobixOdW1iZXIoZy5aSSgieXQtcGxheWVyLXBsYXliYWNrLXJhdGUiKSl8fDEpKTtXLmgkKG4uWkwsbik7Vy5zbSgpfTsKVzJ3PWZ1bmN0aW9uKG4pe24uamgoKTt2YXIgVz1uLk5RO3pBKG4pO24uZXZlbnRzLk5OKHdpbmRvdywicmVzaXplIixuLkE2KTt2YXIgRD1WUyhuKTtnLlZVKG4uUkIsIm9uVm9sdW1lQ2hhbmdlIixuLkZfKTtpZihXJiZaVChXKSl7bGV0IGI9dkUobi5CKTtiJiYhbi5aViYmKFcuZmV0Y2g9MCk7bGV0IHY9Zy5vNChuLkIpO3YmJiFuLlpWJiYoVy5mZXRjaD0wKTt5WihuLFcpO2cubzQobi5CKSYmbi5tUS50aWNrKCJlcF9wcl9zIik7aWYoIWJ8fG4uWlYpaWYodiYmIW4uWlYpbGwobik7ZWxzZSBpZighRC5PVigpKW4ucGxheWxpc3Qub25SZWFkeSgoKT0+e1RBKG4pfSl9bi5RVChuLmNYKCksITEsITApOwpuLmNYKCkuZ2V0UGxheWVyU3RhdGUoKS5OKDEyOCl8fChXPWhnUyghbi5CLmRldmljZUlzQXVkaW9Pbmx5KSxXPT09ImZtdC5ub25lYXZhaWxhYmxlIj9uLktnKCJodG1sNS5taXNzaW5nYXBpIiwyLCJIVE1MNV9OT19BVkFJTEFCTEVfRk9STUFUU19GQUxMQkFDSyIsIm5vY29kZWNzLjEiKTpXPT09Imh0bWw1Lm1pc3NpbmdhcGkiP24uS2coVywyLCJVTlNVUFBPUlRFRF9ERVZJQ0UiLCJub2NhbnBsYXltZWRpYS4xIik6RCYmRC5PVigpJiZDSihuKSYmKG4uQi5VNXx8bi5CLk1kKT9CZihuKTpELkpHP24uUkIubXV0ZWRBdXRvcGxheSh7ZHVyYXRpb25Nb2RlOkQubXV0ZWRBdXRvcGxheUR1cmF0aW9uTW9kZX0pOmcuWkkoInl0LXBsYXllci1wbGF5YmFjay1vbi1yZWxvYWQiKT8oZy56VSgiZW1iZWRzSXRwUGxheWVkT25SZWxvYWQiLHtwbGF5ZWRPblJlbG9hZDohMCxpc0xvZ2dlZEluOiEhbi5CLlRDfSksZy5QQigieXQtcGxheWVyLXBsYXliYWNrLW9uLXJlbG9hZCIsITEpLEJmKG4pKToKbi5CLlk9PT0ibGVhbmJhY2sifHxuNWoobiksZy5lTShuLkIpfHxnLnNkKG4uQik/KGcuY0IoZy5EeSgpLCgpPT57RlMobil9KSxnLmNCKGcuRHkoKSwoKT0+e3g1KCl9KSk6KEZTKG4pLHg1KCkpKX07CkRlYj1mdW5jdGlvbihuKXt2YXIgVz1EPT57RC5zdGFjayYmRC5zdGFjay5pbmRleE9mKCJwbGF5ZXIiKSE9PS0xJiZuLk1OKCkuVWUoRCl9OwpTaS5zdWJzY3JpYmUoImhhbmRsZUVycm9yIixXKTtLdy5wdXNoKFcpO3JldHVybigpPT57U2kudW5zdWJzY3JpYmUoImhhbmRsZUVycm9yIixXKTt2YXIgRD1Ldy5pbmRleE9mKFcpO0QhPT0tMSYmS3cuc3BsaWNlKEQsMSl9fTsKb1g9ZnVuY3Rpb24obixXLEQsYix2KXtpZihuLmZnJiZELk9WKCkpbj1uZXcgZy53NShuLkIsbi5mZyxXLEQpO2Vsc2V7bGV0IGs9bi5tUTtXPT09MiYmKGs9bmV3IGJjUyhuLkIpKTtXPW5ldyBnLk03KG4sbi5CLFcsayxuLnRlbXBsYXRlLG4udmlzaWJpbGl0eSxuLmlqLEQsdixuLmRoLG4uaTcpO24uQi5adCgpLk4uUVEodjVpKSYmbi5uVChELmNsaWVudFBsYXliYWNrTm9uY2UpO249bmV3IGcuUlgoVyl9YiYmbi5zbSgpO3JldHVybiBufTsKY0VyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5SQi5nZXRBdmFpbGFibGVQbGF5YmFja1JhdGVzKCk7Vz1OdW1iZXIoVy50b0ZpeGVkKDIpKTtuPURbMF07RD1EW0QubGVuZ3RoLTFdO1c8PW4/Vz1uOlc+PUQ/Vz1EOihuPU1hdGguZmxvb3IoVyoxMDArLjAwMSklNSxuIT09MCYmKFctPW4qLjAxLFc9TWF0aC5mbG9vcihXKjEwMCsuMDAxKS8xMDApKTtyZXR1cm4gV307ClZaPWZ1bmN0aW9uKG4pe1FaKG4pO24uc2V0TG9vcFZpZGVvKCExKTtuLnNldExvb3BSYW5nZShudWxsKTtuLlJCLldKKCJsZWdhY3lhZHRyYWNraW5ncGluZ3Jlc2V0Iik7bi5hbD17fTtuLkpWPVtdO1pCaihuLm1RKTtpZihuLlF3KXt2YXIgVz1uLlF3LEQ9bi5jWCgpO0QuZ2V0UGxheWVyVHlwZSgpO0NPKFcsITEpO25KKFcpO2NSYihXKTtXLmdzPUR9Vz1uLnNVO249bi5jWCgpO24uZ2V0UGxheWVyVHlwZSgpIT09MSYmZy5MSihXLCJpbnZhbGlkUGFyZW50VmlkZW9QbGF5ZXJUeXBlIik7REwoVywhMSk7Zy5nNShXKTtXLk49bn07Cmswaj1mdW5jdGlvbihuKXt2YXIgVz1uLm1lZGlhRWxlbWVudDt6aSgpP24ua1YuTk4oVywid2Via2l0cHJlc2VudGF0aW9ubW9kZWNoYW5nZWQiLG4udFcpOndpbmRvdy5kb2N1bWVudC5waWN0dXJlSW5QaWN0dXJlRW5hYmxlZCYmKG4ua1YuTk4oVywiZW50ZXJwaWN0dXJlaW5waWN0dXJlIiwoKT0+e24ucEwoITApfSksbi5rVi5OTihXLCJsZWF2ZXBpY3R1cmVpbnBpY3R1cmUiLCgpPT57bi5wTCghMSl9KSk7Cnc4JiYobi5rVi5OTihXLCJ3ZWJraXRiZWdpbmZ1bGxzY3JlZW4iLCgpPT57bi5GTygzKX0pLG4ua1YuTk4oVywid2Via2l0ZW5kZnVsbHNjcmVlbiIsKCk9PntuLkZPKDApfSkpfTsKekE9ZnVuY3Rpb24obil7bi5tZWRpYUVsZW1lbnQ9bi5CLmRldmljZUlzQXVkaW9Pbmx5P25ldyBnLkdWKGcuekYoIkFVRElPIikpOnFLLnBvcCgpfHxuZXcgZy5HVihnLnpGKCJWSURFTyIpKTtuLkIuWnQoKS5OLlFRKGNmKXx8Zy51KG4sbi5tZWRpYUVsZW1lbnQpO24uTU4oKS5zZXRNZWRpYUVsZW1lbnQobi5tZWRpYUVsZW1lbnQpO3RyeXtuLkIuczU/KG4uR3YmJm4uZXZlbnRzLndIKG4uR3YpLG4uR3Y9bi5ldmVudHMuTk4obi5tZWRpYUVsZW1lbnQsInZvbHVtZWNoYW5nZSIsbi56ZCkpOihuLm1lZGlhRWxlbWVudC5jSihuLkZfLm11dGVkKSxuLm1lZGlhRWxlbWVudC5zZXRWb2x1bWUobi5GXy52b2x1bWUvMTAwKSl9Y2F0Y2godil7bi5LZygiaHRtbDUubWlzc2luZ2FwaSIsMiwiVU5TVVBQT1JURURfREVWSUNFIixgc2V0dm9sdW1lLjE7ZW1zZy4ke3YmJnR5cGVvZiB2PT09Im9iamVjdCImJiJtZXNzYWdlImluIHYmJnR5cGVvZiB2Lm1lc3NhZ2U9PT0ic3RyaW5nIiYmdi5tZXNzYWdlLnJlcGxhY2UoL1s7OixdL2csCiJfIil9YCk7cmV0dXJufW4ua1YuSigpO2swaihuKTt2YXIgVz1uLnRlbXBsYXRlLEQ9bi5tZWRpYUVsZW1lbnQuZV8oKTtXLm5CPUQ7Vy53Rj0hMTtXLm5CLnBhcmVudE5vZGV8fGcuanAoVy5WUCxXLm5CLDApO1cuRU49bmV3IGcuYnIoMCwwLDAsMCk7WWVpKFcpO1hTKFcpO0Q9Vy5uQjtnLlVJKEQsInZpZGVvLXN0cmVhbSIpO2cuVUkoRCxnLk9uLk1BSU5fVklERU8pO3ZhciBiPVcuYXBwLkcoKTtiLmxRJiZELnNldEF0dHJpYnV0ZSgiZGF0YS1uby1mdWxsc2NyZWVuIiwidHJ1ZSIpO2IueGgmJihELnNldEF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5lIiwiIiksRC5zZXRBdHRyaWJ1dGUoInBsYXlzaW5saW5lIiwiIikpO2IuSkcmJlcubkImJlcuTk4oRCwiY2xpY2siLEQucGxheSxEKTt0cnl7bi5tZWRpYUVsZW1lbnQuRCgpfWNhdGNoKHYpe24uS2coImh0bWw1Lm1pc3NpbmdhcGkiLDIsIlVOU1VQUE9SVEVEX0RFVklDRSIsYGFjdGl2YXRlLjE7ZW1zZy4ke3YmJnR5cGVvZiB2PT09CiJvYmplY3QiJiYibWVzc2FnZSJpbiB2JiZ0eXBlb2Ygdi5tZXNzYWdlPT09InN0cmluZyImJnYubWVzc2FnZS5yZXBsYWNlKC9bOzosXS9nLCJfIil9YCl9fTsKRVo9ZnVuY3Rpb24obixXLEQpe24uUkIuV0ooVyxEKTt2YXIgYj1nLms2KG4uQil8fGcuRGYobi5CKXx8Zy5NVihuLkIpO2lmKEQmJmIpe2xldCB2O3N3aXRjaChXKXtjYXNlICJjdWVyYW5nZW1hcmtlcnN1cGRhdGVkIjp2PSJvbkN1ZVJhbmdlTWFya2Vyc1VwZGF0ZWQiO2JyZWFrO2Nhc2UgImN1ZXJhbmdlc2FkZGVkIjp2PSJvbkN1ZVJhbmdlc0FkZGVkIjticmVhaztjYXNlICJjdWVyYW5nZXNyZW1vdmVkIjp2PSJvbkN1ZVJhbmdlc1JlbW92ZWQifXYmJmcuUlQobi5SQix2LEQubWFwKGs9Pih7Z2V0SWQoKXtyZXR1cm4gdGhpcy5pZH0sZW5kOmsuZW5kLGlkOmsuZ2V0SWQoKSxuYW1lc3BhY2U6ay5uYW1lc3BhY2U9PT0iYWQiPyJhZCI6IiIsc3RhcnQ6ay5zdGFydCxzdHlsZTprLnN0eWxlLHZpc2libGU6ay52aXNpYmxlLG1hcmtlclBvc2l0aW9uTXM6ay5tYXJrZXJQb3NpdGlvbk1zfSkpKX19OwpoZDE9ZnVuY3Rpb24obixXPSEwKXt2YXIgRDtpZihEPW4uckgpe0Q9bi5ySDt2YXIgYj1uLm1lZGlhRWxlbWVudDtEPSEhYiYmYj09PUQubWVkaWFFbGVtZW50fUQmJihuLmNQKCksekEobikpO0Q9bi5NTigpO0QuY1AoIVcpO0QuTTkobi5zRixuKTtELmdldFBsYXllclR5cGUoKSE9PTEmJkQuZGlzcG9zZSgpO249bi5WcjtXPVtuLkpdO24uSj1uLmNKO1NzKG4sW10sVyl9OwpueD1mdW5jdGlvbihuLFcsRCxiKXtEJiYobi5jUCgpLHpBKG4pKTtEPW4uTU4oKTtELnhLKFcpO3ZhciB2PW4uZ2V0VmlkZW9EYXRhKCksaz17fTtrLnZpZGVvX2lkPXYudmlkZW9JZDtrLmFkZm9ybWF0PXYuYWRGb3JtYXQ7di5pc0xpdmVQbGF5YmFja3x8KGsuc3RhcnQ9RC5nZXRDdXJyZW50VGltZSgpLGsucmVzdW1lPSIxIik7di5pc0xpdmVQbGF5YmFjayYmSTQodikmJmcuR2wobi5CKSYmKGsubGl2ZV91dGNfc3RhcnQ9RC5oQygpLGsucmVzdW1lPSIxIik7di5EJiYoay52dnQ9di5EKTt2LmtXJiYoay52c3NfY3JlZGVudGlhbHNfdG9rZW49di5rVyxrLnZzc19jcmVkZW50aWFsc190b2tlbl90eXBlPXYuUXYpO3Yub2F1dGhUb2tlbiYmKGsub2F1dGhfdG9rZW49di5vYXV0aFRva2VuKTtrLmF1dG9wbGF5PTE7ay5yZWxvYWRfY291bnQ9di5TJCsxO2sucmVsb2FkX3JlYXNvbj1XO3Yub1QmJihrLnVucGx1Z2dlZF9wYXJ0bmVyX29wdF9vdXQ9di5vVCk7di5MQiYmKGsueXBjX2lzX3ByZW1pZXJlX3RyYWlsZXI9CnYuTEIpO3YucGxheWVyUGFyYW1zJiYoay5wbGF5ZXJfcGFyYW1zPXYucGxheWVyUGFyYW1zKTt2LnR3JiYoay5pdGN0PXYudHcpO24ubG9hZFZpZGVvQnlQbGF5ZXJWYXJzKGssdm9pZCAwLCEwLHZvaWQgMCx2b2lkIDAsYik7Vz09PSJzaWduYXR1cmUiJiZuLlF3JiZhWChuKX07CkwyTT1mdW5jdGlvbihuKXtpZigheGVyKG4pKXt2YXIgVz1uLmNYKCkuaDUoKTtXJiYoVz1XLmJkKCksVyBpbnN0YW5jZW9mIFByb21pc2UmJlcuY2F0Y2goKCk9Pnt9KSk7CldxKG4sVFgobi5nZXRQbGF5ZXJTdGF0ZU9iamVjdCgpKSl9fTsKeGVyPWZ1bmN0aW9uKG4pe3JldHVybiBuLnBsYXlsaXN0JiYoZy5DTihuLkIpfHxuLkIuWT09PSJiYWNrZ3JvdW5kX2F1ZGlvX3BsYXliYWNrIikmJm4ueGwoKT8obi5uZXh0VmlkZW8oITEsITApLCEwKTohMX07CldxPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5NTigpLGI9RC5nZXRQbGF5ZXJUeXBlKCk7aWYoYiE9PTJ8fG4uTFkoKSl7aWYoYj09PTImJm4uTFkoKXx8Yj09PTV8fGI9PT02fHxiPT09NylpZihXPT09LTF8fFc9PT0wfHxXPT09NSlyZXR1cm47aWYoVz09PTApe2lmKG4uSE4pcmV0dXJuO2lmKEQuY0coKSYmZy5rNihuLkIpKXtuLnBsYXlWaWRlbygpO3JldHVybn19bi5pdSE9PVcmJihuLml1PVcsZy5WVShuLlJCLCJvblN0YXRlQ2hhbmdlIixXKSl9ZWxzZSBuLkIkIT09VyYmKG4uQiQ9VyxnLlZVKG4uUkIsIm9uQWRTdGF0ZUNoYW5nZSIsVykpfTsKREY9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5Wci5WRShXKX07CmcuSVg9ZnVuY3Rpb24obixXKXtyZXR1cm4gbi5MWShXKT9uLmNYKCk6V307CmJVPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5NTigpO3JldHVybiBXPT09bi5jWCgpJiZuLkxZKFcpJiZuLkxZKEQpP0Q6V307CnZxPWZ1bmN0aW9uKG4pe249R3Uobi54Nik7cmV0dXJuISFuJiZuLmxvYWRlZH07CmVkUz1mdW5jdGlvbihuKXt2YXIgVz1uLmdldFZpZGVvRGF0YSgpLEQ9bi54NjtWWShEKXx8RC5YKCk7IVVkJiZRWShEKSYmYU1VKEQpO3c5KEQsImVtYmVkIik7dzkoRCwia2lkcyIpO3c5KEQsInJlbW90ZSIpO3c5KEQsIm1pbmlwbGF5ZXIiKTt3OShELCJvZmZsaW5lIik7dzkoRCwidW5wbHVnZ2VkIik7dzkoRCwieXBjIiwhMSwhMCk7dzkoRCwid2ViZ2wiLCExLCEwKTtuRGooRCl8fCh3OShELCJjYXB0aW9ucyIsITApLHc5KEQsImVuZHNjcmVlbiIpLEQuTigpLHc5KEQsImNyZWF0b3JlbmRzY3JlZW4iLCEwKSk7RC5ZKCk7RC5BLldKKCJtb2R1bGVzQ3JlYXRlZCIpO24uUkIuV0ooInZpZGVvcmVhZHkiLFcpfTsKYVg9ZnVuY3Rpb24obil7aWYoIXZxKG4pKXtsZXQgVz1URyhuLng2KTtXJiYhVy5jcmVhdGVkJiZSRyhuLng2KSYmVy5jcmVhdGUoKX19OwpPWj1mdW5jdGlvbihuKXt2YXIgVz1uLmdldFZpZGVvRGF0YSgpO2lmKCFXLnlsKXt2YXIgRDtuLkIuZXhwZXJpbWVudHMuRXEoImh0bWw1X3N0YXRlZnVsX2F1ZGlvX25vcm1hbGl6YXRpb24iKSYmVy5ob3N0Q3BuJiYoRD1raShuLFcuaG9zdENwbik/LmdldFZpZGVvRGF0YSgpLmhnLmooKSk7Vz1uLkIuczU/MTpyNihXLmhnLEQpO0Q9bi5tZWRpYUVsZW1lbnQ7RC5jSihuLkZfLm11dGVkKTt0cnl7RC5zZXRWb2x1bWUobi5GXy52b2x1bWUqVy8xMDApfWNhdGNoe2cuR3EobmV3IGcuUXgoImIxODM3NDIzMDciLGBtdWx0aXBsaWVyOiAke1d9LCB2b2x1bWU6ICR7bi5GXy52b2x1bWV9YCkpfX19Owp2YXIgSjFaPWZ1bmN0aW9uKCl7cmV0dXJuIGVYW0lbMTBdXSh0aGlzLDY3LDQ4NDkpfTsKQ0o9ZnVuY3Rpb24obil7bj1WUyhuKTtuLk9WKCk7cmV0dXJuIEFEKG4pfTsKbGw9ZnVuY3Rpb24obixXKXt2YXIgRD0oVz9XOlZTKG4pKS5RNztuLm1RLnRpY2soImVwX3ByX3IiKTtpZihEIT1udWxsJiYodUF0KG4ucGxheWxpc3QsRCksbi5sSikpbi5wbGF5bGlzdC5vblJlYWR5KCgpPT57VEEobixXKX0pfTsKVEE9ZnVuY3Rpb24obixXKXt2YXIgRD1nLm80KG4uQikmJiFuLkIuTyxiPUQmJlc/VzppdihuLnBsYXlsaXN0KTtXPUQmJlc/VzpuLmdldFZpZGVvRGF0YSgpO2ImJihXLkd1JiYobi5CLlU1fHxuLkIuTWQpfHwhbi5LSD8oVz1XLlBYLGI9bi56MihiLDEpLFcmJmZKKG4sYikpOmhWKG4sYiwxKSk7Zy5vNChuLkIpJiZuLm1RLnRpY2soImVwX3BfbCIpO24ubEo9ITE7Zy5RVShuLlJCLCJvblBsYXlsaXN0VXBkYXRlIil9OwpCZj1mdW5jdGlvbihuKXt2YXIgVz1uLmNYKCk7aWYoVy5nZXRQbGF5ZXJTdGF0ZSgpLk4oMTI4KSlyZXR1cm4hMTtXPVcuZ2V0VmlkZW9EYXRhKCk7Q0oobikmJm4uQi5NZCYmKHFLLmxlbmd0aCYmbi5zaj8oUGYobix7bXV0ZWQ6ITEsdm9sdW1lOm4uRl8udm9sdW1lfSwhMSksS0oobiwhMSkpOnFLLmxlbmd0aHx8bi5GXy5tdXRlZHx8KFBmKG4se211dGVkOiEwLHZvbHVtZTpuLkZfLnZvbHVtZX0sITEpLEtKKG4sITApKSk7Q0oobikmJmcubzQobi5CKSYmVy5tdXRlZEF1dG9wbGF5JiYoUGYobix7bXV0ZWQ6ITAsdm9sdW1lOm4uRl8udm9sdW1lfSwhMSksS0oobiwhMCkpO1cuTjAmJlBmKG4se211dGVkOiEwLHZvbHVtZTpuLkZfLnZvbHVtZX0sITEpO3VsKG4sMSxXLCExKTt2YXIgRD1uLmNYKCk7bi5SQi5XSigiaW5pdGlhbGl6aW5nbW9kZSIpO24uUVQoRCk7bi5HMigzKTt2YXIgYjtpZighKGI9IW4uQi5HUykpe2lmKGI9bi5ySCl7Yj1uLnJIO3ZhciB2PW4ubWVkaWFFbGVtZW50OwpiPSEhdiYmdj09PWIubWVkaWFFbGVtZW50fWI9YiYmbi5hQ31iJiYobi5jUCgpLHpBKG4pLEQuc2V0TWVkaWFFbGVtZW50KG4ubWVkaWFFbGVtZW50KSk7RC5uTCgpO2lmKEQuZ2V0UGxheWVyU3RhdGUoKS5OKDEyOCkpcmV0dXJuITE7Vy5EdHx8V3EobiwzKTtyZXR1cm4gbi5hQz0hMH07Cm41aj1mdW5jdGlvbihuKXtuLlJCLldKKCJpbml0aWFsaXppbmdtb2RlIik7bi5HMigyKTt3OShuLng2LCJyZW1vdGUiKTt3OShuLng2LCJtaW5pcGxheWVyIil9OwpGUz1mdW5jdGlvbihuKXtpZighbi5TKCJ1c2VfcnRhX2Zvcl9wbGF5ZXIiKSlpZihuLlMoImZldGNoX2F0dF9pbmRlcGVuZGVudGx5IikpZy5KYShuLkNOKTtlbHNle3ZhciBXPW4uZ2V0VmlkZW9EYXRhKCkuYm90Z3VhcmREYXRhO1cmJmcuekMoVyxuLkIsbi5nZXRWaWRlb0RhdGEoKS5wS3x8IiIpfX07CktKPWZ1bmN0aW9uKG4sVyl7VyE9PW4uc2omJihuLnNqPVcsZy5RVShuLlJCLCJvbk11dGVkQXV0b3BsYXlDaGFuZ2UiLFcpKX07CnVsPWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PXhpKG4sVyxEKSxrPW4uVnIuWC5nZXQodil8fG51bGw7aWYoIWspcmV0dXJuIG51bGw7bi5Wci5YLnJlbW92ZSh2KTtpZihrLnFOKCkpcmV0dXJuIG51bGw7aWYoay5nZXRQbGF5ZXJTdGF0ZSgpLk4oMTI4KSlyZXR1cm4gay5kaXNwb3NlKCksbnVsbDtpZihrPT09REYobix7cGxheWVyVHlwZTpXfSkpcmV0dXJuIG4ubVEuaW5mb0dlbCh7aXNDYWNoZUhpdDohMH0pLGs7aWYoKGsuZ2V0VmlkZW9EYXRhKCkub2F1dGhUb2tlbnx8RC5vYXV0aFRva2VuKSYmay5nZXRWaWRlb0RhdGEoKS5vYXV0aFRva2VuIT09RC5vYXV0aFRva2VuKXJldHVybiBudWxsO1c9PT0xJiYoVz1uLk1OKCkuZ2V0VmlkZW9EYXRhKCksQUooVykmJlcuaXNBZCgpJiZifHxRWihuKSk7Ynx8bi5RVChrLCEwKTtuLm1RLmluZm9HZWwoe2lzQ2FjaGVIaXQ6ITB9KTtyZXR1cm4ga307CmcuZzVoPWZ1bmN0aW9uKG4pe3ZhciBXPSgwLGcuUikoKSxEPW4uZ2V0Q3VycmVudFRpbWUoKTtuPW4uZ2V0VmlkZW9EYXRhKCk7RD0xRTMqKEQtbi5zdGFydFNlY29uZHMpO24uaXNMaXZlUGxheWJhY2smJihEPTApO3JldHVybiBXLU1hdGgubWF4KEQsMCl9OwpkYXQ9ZnVuY3Rpb24obixXKXtpZighbi5ITilyZXR1cm4hMTt2YXIgRD1uLkhOLnN0YXJ0VGltZU1zKi4wMDEtMSxiPW4uSE4uZW5kVGltZU1zKi4wMDE7bi5ITi50eXBlPT09InJlcGVhdENoYXB0ZXIiJiZiLS07cmV0dXJuIE1hdGguYWJzKFctRCk8PTFFLTZ8fE1hdGguYWJzKFctYik8PTFFLTZ8fFc+PUQmJlc8PWJ9OwpYUXg9ZnVuY3Rpb24obil7dmFyIFc9bi5NTigpO2lmKG4uUygiaHRtbDVfZGlzYWJsZV9sb29wX3JhbmdlX2Zvcl9zaG9ydHNfYWRzIikmJlcuZ2V0VmlkZW9EYXRhKCkuaXNBZCgpPzA6QUooVy5nZXRWaWRlb0RhdGEoKSkmJiFXLklLKCkpVz1BYihuKSoxRTMtbi5nZXRWaWRlb0RhdGEoKS5QTCxuPW4uVGUsaWwobi5hcHAsImdhcGxlc3NzaG9ydHNsb29wcmFuZ2UiKSxXPW5ldyBnLmw1KDAsVyx7aWQ6ImdhcGxlc3Nsb29wcmFuZ2UiLG5hbWVzcGFjZToiZ2FwbGVzc3Nob3J0c2xvb3ByYW5nZSJ9KSwobj1uLmFwcC5NTigpKSYmbi5hZGRDdWVSYW5nZShXKX07Ckcwaj1mdW5jdGlvbihuKXt2YXIgVz1uLmNYKCk7aWYoIShXLmdldFBsYXllclN0YXRlKCkuTig2NCkmJlZTKG4pLmlzTGl2ZVBsYXliYWNrJiZuLkhOLnN0YXJ0VGltZU1zPDVFMykpe2lmKG4uSE4udHlwZT09PSJyZXBlYXRDaGFwdGVyIil7dmFyIEQ9RCQobi5KNSgpKT8uQjcoKTtsZXQgYj1uLmdldFZpZGVvRGF0YSgpPy5iJDtpZihEIGluc3RhbmNlb2YgcWhTJiZiKXtsZXQgdj0wO2ZvcihsZXQgayBvZiBiKXtpZihrLnN0YXJ0VGltZT5uLkhOLnN0YXJ0VGltZU1zKWJyZWFrO3YrK31ELnJlbmRlckNoYXB0ZXJTZWVraW5nQW5pbWF0aW9uKDAsYlt2PT09MD92OnYtMV0udGl0bGUpfWlzTmFOKE51bWJlcihuLkhOLmxvb3BDb3VudCkpP24uSE4ubG9vcENvdW50PTA6bi5ITi5sb29wQ291bnQrKztuLkhOLmxvb3BDb3VudD09PTEmJmcuUlQobi5SQiwiaW5uZXJ0dWJlQ29tbWFuZCIsbi5nZXRWaWRlb0RhdGEoKS5aTil9RD17cWQ6ImFwcGxpY2F0aW9uX2xvb3BSYW5nZVN0YXJ0In07CmlmKG4uSE4udHlwZT09PSJjbGlwcyJ8fG4uSE4udHlwZT09PSJzaG9ydHNMb29wIilELnNlZWtTb3VyY2U9NTg7Vy5zZWVrVG8obi5ITi5zdGFydFRpbWVNcyouMDAxLEQpfX07ClNhPWZ1bmN0aW9uKG4sVyxEKXtpZihuLkxZKEQpJiYoRD1ELmdldFZpZGVvRGF0YSgpLCFnLkx4KG4pKSl7bj1uLnNVO2Zvcih2YXIgYiBvZiBuLkopaWYoRC5LZj09PWIuS2Ype1crPWIub2EvMUUzO2JyZWFrfWI9Vztmb3IobGV0IHYgb2Ygbi5KKXtpZihELktmPT09di5LZilicmVhaztuPXYub2EvMUUzO2lmKG48VyliKz12LmR1cmF0aW9uTXMvMUUzK24tdi5kSS8xRTM7ZWxzZSBicmVha31yZXR1cm4gYn1yZXR1cm4gV307CmcuTHg9ZnVuY3Rpb24obil7cmV0dXJuIG4uZ2V0VmlkZW9EYXRhKCkuZW5hYmxlU2VydmVyU3RpdGNoZWREYWkmJiEhbi5Rd307ClFaPWZ1bmN0aW9uKG4peyhuPVRHKG4uSjUoKSkpJiZuLmNyZWF0ZWQmJm4uZGVzdHJveSgpfTsKdHR3PWZ1bmN0aW9uKG4pe3ZhciBXPW4uZ2V0VmlkZW9EYXRhKCkueWwsRD1uLkIuRHQsYj1uLmlzSW5saW5lKCkmJiFuLmdldFZpZGVvRGF0YSgpLnYxLHY9bi5tZWRpYUVsZW1lbnQ7V3x8RHx8Yj92LmZCKCk6KHYuTEIoKSxQZihuLG4uRl8pKX07CiRlVT1mdW5jdGlvbihuKXtyZXR1cm4gbi5TKCJ3ZWJfZW5hYmxlX2RpYnNfaW1wbGVtZW50YXRpb24iKSYmZy5lTShuLkIpfHxuLlMoIm13ZWJfZW5hYmxlX2RpYnNfaW1wbGVtZW50YXRpb24iKSYmZy5zZChuLkIpfTsKeGk9ZnVuY3Rpb24obixXLEQpe3JldHVybiBnLms2KG4uQikmJkQudkooKT9gJHtXfV8ke0QudmlkZW9JZH1fJHtELktmfWA6YCR7V31fJHtELnZpZGVvSWR9XyR7RC5LZn1fJHsrRC5pc0F1dG9uYXZ9JHsrRC5WVH1gfTsKcmpqPWZ1bmN0aW9uKG4sVyl7cmV0dXJuIFcmJm4uQi5MQiYmIW4uZ2V0VmlkZW9EYXRhKCk/LmJhY2tncm91bmRhYmxlPyhuLkZqP24uRmouc3RhcnQoKTpuLlZLKCksITApOiExfTsKc2FpPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9MDtpZihXKXRyeXtsZXQgaz1kZWNvZGVVUklDb21wb25lbnQoVyksaD1scChrKTt2YXIgYj1uZXcgQVIobmV3IFM1KFtoXSkpO3ZhciB2PVBHKGIsMzIpO0Q9TnVtYmVyKHZ8fDApfWNhdGNoKGspe24uY1goKS5VKCJnZXRfbHVzdHNfZXJyIix7fSl9cmV0dXJuIER9OwpoVj1mdW5jdGlvbihuLFcsRD0xKXtpZihXLk9WKCkpe3ZhciBiPW9YKG4sRCxXLCExKTtuLmNhbmNlbFBsYXliYWNrKDQsRCk7bi5RVChiKTtiLnNtKCk7RD09PTEmJihuLkcyKDEpLGcubzQobi5CKSYmIVpQKFcpPyhXLmRpc3Bvc2UoKSxuLmNYKCkuZGlzcG9zZSgpKTpuNWoobikpfWVsc2UgVy5kaXNwb3NlKCksKFc9REYobix7cGxheWVyVHlwZTpEfSkpJiZXLmRpc3Bvc2UoKSxQVChWUyhuKSkmJkQ9PT0yJiZuLlNvKCl9OwpOYWI9ZnVuY3Rpb24obixXLEQsYix2KXtXPVFzUyhXLEQsYix2KTsoRD1nLm80KG4uQikmJiFuLkIuTykmJiFuLlpWJiYoVy5mZXRjaD0wKTt5WihuLFcpO2cubzQobi5CKSYmbi5tUS50aWNrKCJlcF9hX3ByX3MiKTtpZihEJiYhbi5aVilEPVZTKG4pLHpicihELFcpLnRoZW4oaz0+e24ubEo9ITA7bGwobixrKX0pOwplbHNlIG4ucGxheWxpc3Qub25SZWFkeSgoKT0+e1RBKG4pfSk7CmcubzQobi5CKSYmbi5tUS50aWNrKCJlcF9hX3ByX3IiKX07CmtpPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9REYobix7cGxheWVyVHlwZToxfSk7aWYoRCl7aWYoRC5nZXRWaWRlb0RhdGEoKS5jbGllbnRQbGF5YmFja05vbmNlPT09VylyZXR1cm4gRDtpZigobj1uLlNHLk4pJiZuLmdldFZpZGVvRGF0YSgpLmNsaWVudFBsYXliYWNrTm9uY2U9PT1XKXJldHVybiBufXJldHVybiBudWxsfTsKZW89ZnVuY3Rpb24obil7dmFyIFc9c1AoITApO3JldHVybiBXJiYoVz09PW4udGVtcGxhdGUuZWxlbWVudHx8bi5tZWRpYUVsZW1lbnQmJlc9PT1uLm1lZGlhRWxlbWVudC5lXygpKT9XOm51bGx9OwpZaGk9ZnVuY3Rpb24obixXKXt2YXIgRD13aW5kb3cuc2NyZWVuPy5vcmllbnRhdGlvbjtpZihuLkIudHcmJkQmJkQubG9jayYmKCFnLm9kfHwhcFFqKSlpZihXKXtXPUQudHlwZS5pbmRleE9mKCJwb3J0cmFpdCIpPT09MDtsZXQgYj1uLnRlbXBsYXRlLmdldFZpZGVvQXNwZWN0UmF0aW8oKSx2PVc7YjwxP3Y9ITA6Yj4xJiYodj0hMSk7bi5KUiYmdj09PVd8fChEPUQubG9jayh2PyJwb3J0cmFpdCI6ImxhbmRzY2FwZSIpLEQhPW51bGwmJkQuY2F0Y2goKCk9Pnt9KSxuLkpSPSEwKX1lbHNlIG4uSlImJihuLkpSPSExLEQudW5sb2NrKCkpfTsKSGN0PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9Vy5VeigpLGI9Vy5oNSgpO2lmKEQmJmImJm42KEQpKXt2YXIgdj1iLmlzVmlldygpP2IubWVkaWFFbGVtZW50OmI7bGV0IGg9Yi5pc1ZpZXcoKT9iLnN0YXJ0OjA7Yj1GZ2IoYikraDt2YXIgaz1MNihELGgsYiwhMCk7bGV0IHg9bmV3IGcuc2codixoLGIsITApO1cubm0oaywhMSwhMCwhMSk7Vy5zZXRNZWRpYUVsZW1lbnQoeCk7az1iKzEwO0Q9TDYoRCxrLEluZmluaXR5LCEwKTt2PW5ldyBnLnNnKHYsayxJbmZpbml0eSwhMSwhMCk7di5ISihEKTtuLlZxPXY7bi5CLldYKCkmJlcuVSgidXNtIix7cG1lOiEwLGNzOmgsY2U6YixuczprfSk7cmV0dXJuITB9cmV0dXJuITF9OwpmNmg9ZnVuY3Rpb24obixXKXtXLmJvdW5kcz1uLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3ZhciBEPVsiZGlzcGxheSIsIm9wYWNpdHkiLCJ2aXNpYmlsaXR5IiwiekluZGV4Il07Zm9yKGxldCBiIG9mIEQpV1tiXT1YbShuLGIpO1cuaGlkZGVuPSEhbi5oaWRkZW59Owp2YXIgU2pVPWZ1bmN0aW9uKCl7cmV0dXJuIFhEW0lbMTBdXSh0aGlzLDQsMzA5NCl9Owp2YXIgSmoyPWZ1bmN0aW9uKG4pe3JldHVybiBuLm5hbWU9PT0iVHlwZUVycm9yIiYmbi5zdGFjay5pbmNsdWRlcygiL3MvcGxheWVyLyIpJiZFeigpPD0xMDV9LGdxPWZ1bmN0aW9uKG4sVyl7aWYobi5hcGkuRygpLlMoIndlYl9wbGF5ZXJfbG9nX2NsaWNrX2JlZm9yZV9nZW5lcmF0aW5nX3ZlX2NvbnZlcnNpb25fcGFyYW1zIikpe3ZhciBEPU1hdGguZmxvb3IoLW4uc2Nyb2xsUG9zaXRpb24vKG4uaituLlcpKTsKbGV0IGI9TWF0aC5taW4oRCtuLmNvbHVtbnMsbi5zdWdnZXN0aW9uRGF0YS5sZW5ndGgpLTE7Zm9yKDtEPD1iO0QrKyluLmFwaS5sb2dWaXNpYmlsaXR5KG4uTltEXS5lbGVtZW50LFcpfX0sWFA9ZnVuY3Rpb24obil7bi5uZXh0LmVsZW1lbnQuc3R5bGUuYm90dG9tPWAke24uS31weGA7Cm4ucHJldmlvdXMuZWxlbWVudC5zdHlsZS5ib3R0b209YCR7bi5LfXB4YDt2YXIgVz1uLnNjcm9sbFBvc2l0aW9uLEQ9bi5jb250YWluZXJXaWR0aC1uLnN1Z2dlc3Rpb25EYXRhLmxlbmd0aCoobi5qK24uVyk7Zy5pSChuLmVsZW1lbnQsInl0cC1zY3JvbGwtbWluIixXPj0wKTtnLmlIKG4uZWxlbWVudCwieXRwLXNjcm9sbC1tYXgiLFc8PUQpfSxJNlo9ZnVuY3Rpb24obil7Zm9yKHZhciBXPTA7VzxuLnN1Z2dlc3Rpb25EYXRhLmxlbmd0aDtXKyspe3ZhciBEPW4uc3VnZ2VzdGlvbkRhdGFbV107CmxldCBrPW4uTltXXTt2YXIgYj1ELnNob3J0Vmlld0NvdW50P0Quc2hvcnRWaWV3Q291bnQ6RC5hdXRob3I7bGV0IGg9RC5NZigpLHg9bi5hcGkuRygpO2lmKGcubzQoeCkmJiF4LlMoIndlYl9wbGF5ZXJfbG9nX2NsaWNrX2JlZm9yZV9nZW5lcmF0aW5nX3ZlX2NvbnZlcnNpb25fcGFyYW1zIikpe3ZhciB2PXt9O011KG4uYXBpLFt2XSk7aD1nLkVUKGgsdil9ay5lbGVtZW50LnN0eWxlLmRpc3BsYXk9IiI7dj1rLkJKKCJ5dHAtc3VnZ2VzdGlvbi10aXRsZSIpO3FsLnRlc3QuY2FsbChxbCxELnRpdGxlKT92LmRpcj0icnRsIjpHZy50ZXN0LmNhbGwoR2csRC50aXRsZSkmJih2LmRpcj0ibHRyIik7dj1rLkJKKCJ5dHAtc3VnZ2VzdGlvbi1hdXRob3IiKTtxbC50ZXN0LmNhbGwocWwsYik/di5kaXI9InJ0bCI6R2cudGVzdC5jYWxsKEdnLGIpJiYodi5kaXI9Imx0ciIpO2sudXBkYXRlKHt2aWV3c19vcl9hdXRob3I6YixkdXJhdGlvbjpELmlzTGl2ZVBsYXliYWNrPyJMaXZlIjpELmxlbmd0aFNlY29uZHM/CmcuSDcoRC5sZW5ndGhTZWNvbmRzKToiIixsaW5rOmgsaG92ZXJfdGl0bGU6RC50aXRsZSx0aXRsZTpELnRpdGxlLGFyaWFfbGFiZWw6RC5hcmlhTGFiZWx8fG51bGwsaXNfbGl2ZTpELmlzTGl2ZVBsYXliYWNrfSk7Yj1ELkdCKCk7ay5CSigieXRwLXN1Z2dlc3Rpb24taW1hZ2UiKS5zdHlsZS5iYWNrZ3JvdW5kSW1hZ2U9Yj9gdXJsKCR7Yn0pYDoiIjt4LlMoIndlYl9wbGF5ZXJfbG9nX2NsaWNrX2JlZm9yZV9nZW5lcmF0aW5nX3ZlX2NvbnZlcnNpb25fcGFyYW1zIikmJihuLmFwaS5jcmVhdGVTZXJ2ZXJWZShrLmVsZW1lbnQsayksKEQ9KEQ9RC5zZXNzaW9uRGF0YSkmJkQuaXRjdCkmJm4uYXBpLnNldFRyYWNraW5nUGFyYW1zKGsuZWxlbWVudCxEKSl9Zm9yKDtXPG4uTi5sZW5ndGg7VysrKW4uTltXXS5lbGVtZW50LnN0eWxlLmRpc3BsYXk9Im5vbmUiO1hQKG4pfSxTaFU9ZnVuY3Rpb24obixXLEQpe1cucHJldmVudERlZmF1bHQoKTsKbi5hcGkubG9nQ2xpY2soRCk7Vz1ELmdldEF0dHJpYnV0ZSgiaHJlZiIpO0Q9e307TXUobi5hcGksW0RdKTtXPWcuR0YoRCk/VzpnLkVUKFcsRCk7SkYoVyl9LEFqTT1mdW5jdGlvbihuLFcpe24uQkooInl0cC1lcnJvci1jb250ZW50Iikuc3R5bGUucGFkZGluZ1RvcD0iMHB4IjsKdmFyIEQ9bi5CSigieXRwLWVycm9yLWNvbnRlbnQiKSxiPUQuY2xpZW50SGVpZ2h0O24uTiYmbi5OLnJlc2l6ZShXLFcuaGVpZ2h0LWIpO0Quc3R5bGUucGFkZGluZ1RvcD1gJHsoVy5oZWlnaHQtKG4uTj9uLk4uZWxlbWVudC5jbGllbnRIZWlnaHQ6MCkpLzItYi8yfXB4YH0sSzJVPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9bi5hcGkuRygpLGI7ClcucmVhc29uJiYodFYoVy5yZWFzb24pP2I9Zy5iZyhXLnJlYXNvbik6Yj12YyhnLkRwKFcucmVhc29uKSksbi5YKGIsImNvbnRlbnQiKSk7dmFyIHY7Vy5zdWJyZWFzb24mJih0VihXLnN1YnJlYXNvbik/dj1nLmJnKFcuc3VicmVhc29uKTp2PXZjKGcuRHAoVy5zdWJyZWFzb24pKSxuLlgodiwic3VicmVhc29uIikpO2lmKFcucHJvY2VlZEJ1dHRvbiYmVy5wcm9jZWVkQnV0dG9uLmJ1dHRvblJlbmRlcmVyKXtiPW4uQkooInl0cC1lcnJvci1jb250ZW50LXdyYXAtc3VicmVhc29uIik7Vz1XLnByb2NlZWRCdXR0b24uYnV0dG9uUmVuZGVyZXI7bGV0IGs9Zy56RigiQSIpO1cudGV4dCYmVy50ZXh0LnNpbXBsZVRleHQmJih2PVcudGV4dC5zaW1wbGVUZXh0LGsudGV4dENvbnRlbnQ9dixtZVUoYix2KXx8RC5EJiYhRC5lbWJlZHNFcnJvckxpbmtzfHwoRD1nLncoVz8ubmF2aWdhdGlvbkVuZHBvaW50LGcuUGopPy51cmwsVz1nLncoVz8ubmF2aWdhdGlvbkVuZHBvaW50LGcuUGopPy50YXJnZXQsCkQmJihrLnNldEF0dHJpYnV0ZSgiaHJlZiIsRCksbi5hcGkuY3JlYXRlQ2xpZW50VmUoayxuLDE3ODQyNCksbi5OTihrLCJjbGljayIsaD0+e1NoVShuLGgsayl9KSksVyYmay5zZXRBdHRyaWJ1dGUoInRhcmdldCIsVyksRD1nLnpGKCJESVYiKSxELmFwcGVuZENoaWxkKGspLGIuYXBwZW5kQ2hpbGQoRCkpKX19LHRWPWZ1bmN0aW9uKG4pe2lmKG4ucnVucylmb3IobGV0IFc9MDtXPG4ucnVucy5sZW5ndGg7VysrKWlmKG4ucnVuc1tXXS5uYXZpZ2F0aW9uRW5kcG9pbnQpcmV0dXJuITA7CnJldHVybiExfSxtZVU9ZnVuY3Rpb24obixXKXtuPShufHxkb2N1bWVudCkuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIkEiKTsKZm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspaWYobltEXS50ZXh0Q29udGVudD09PVcpcmV0dXJuITA7cmV0dXJuITF9LE9jYj1mdW5jdGlvbihuKXt2YXIgVz17fTsKTXUobi5hcGksW1ddKTtuPW4uYXBpLmdldFZpZGVvVXJsKCk7cmV0dXJuIG49Zy5FVChuLFcpfSxQMHQ9ZnVuY3Rpb24obil7dmFyIFc9bi5hcGkuZ2V0VmlkZW9EYXRhKCksRD1uLmFwaS5HKCkuYlYmJiFuLnN0YXRlLk4oMikmJiFuLmFwaS5nZXRWaWRlb0RhdGEoe3BsYXllclR5cGU6MX0pLmlOOwpXLm11dGVkQXV0b3BsYXl8fG4uTUwoRCk7bi5hcGkubG9nVmlzaWJpbGl0eShuLmVsZW1lbnQsRCl9LFVlaj1mdW5jdGlvbihuKXtuLndhdGVybWFya3x8KG4ud2F0ZXJtYXJrPW5ldyBaY3Iobi5hcGkpLGcudShuLG4ud2F0ZXJtYXJrKSxuLndhdGVybWFyay5MdShuLmJvdHRvbUJ1dHRvbnMsMCksZy5pSChuLndhdGVybWFyay5lbGVtZW50LCJ5dHAtbXV0ZWQtYXV0b3BsYXktd2F0ZXJtYXJrIiwhMCksbi5OPW5ldyBnLiRpKG4ud2F0ZXJtYXJrLDAsITAsMTAwKSxnLnUobixuLk4pKX0seWpqPWZ1bmN0aW9uKG4pe24uSiYmbi5OJiYobi5OLnNob3coKSxuLlYuc3RhcnQoKSl9LEU1VT1mdW5jdGlvbihuKXtmb3IobGV0IFc9MDtXPDE2OysrVyl7bGV0IEQ9bmV3IGcucnEoe1o6ImEiLApKdzoieXRwLXN1Z2dlc3Rpb24tbGluayIseGE6e2hyZWY6Int7bGlua319Iix0YXJnZXQ6bi5hcGkuRygpLllaLCJhcmlhLWxhYmVsIjoie3thcmlhX2xhYmVsfX0ifSxYRjpbe1o6ImRpdiIsSnc6Inl0cC1zdWdnZXN0aW9uLWltYWdlIn0se1o6ImRpdiIsSnc6Inl0cC1zdWdnZXN0aW9uLW92ZXJsYXkiLHhhOntzdHlsZToie3tibGlua19yZW5kZXJpbmdfaGFja319IiwiYXJpYS1oaWRkZW4iOiJ7e2FyaWFfaGlkZGVufX0ifSxYRjpbe1o6ImRpdiIsSnc6Inl0cC1zdWdnZXN0aW9uLXRpdGxlIixPcToie3t0aXRsZX19In0se1o6ImRpdiIsSnc6Inl0cC1zdWdnZXN0aW9uLWF1dGhvciIsT3E6Int7YXV0aG9yX2FuZF92aWV3c319In0se1o6ImRpdiIseGE6eyJkYXRhLWlzLWxpdmUiOiJ7e2lzX2xpdmV9fSJ9LEp3OiJ5dHAtc3VnZ2VzdGlvbi1kdXJhdGlvbiIsT3E6Int7ZHVyYXRpb259fSJ9XX1dfSk7Zy51KG4sRCk7bGV0IGI9RC5CSigieXRwLXN1Z2dlc3Rpb24tbGluayIpO2cuaDEoYiwKInRyYW5zaXRpb25EZWxheSIsYCR7Vy8yMH1zYCk7bi5qLk5OKGIsImNsaWNrIix2PT57dmFyIGs9VztpZihuLlcpe3ZhciBoPW4uc3VnZ2VzdGlvbkRhdGFba10seD1oLnNlc3Npb25EYXRhO24uSyYmbi5hcGkuUygid2ViX3BsYXllcl9sb2dfY2xpY2tfYmVmb3JlX2dlbmVyYXRpbmdfdmVfY29udmVyc2lvbl9wYXJhbXMiKT8obi5hcGkubG9nQ2xpY2sobi5OW2tdLmVsZW1lbnQpLGs9aC5NZigpLGg9e30sTXUobi5hcGksW2hdKSxrPWcuRVQoayxoKSxSeShrLG4uYXBpLHYpKTpNcCh2LG4uYXBpLG4uSyx4fHx2b2lkIDApJiZuLmFwaS5NMihoLnZpZGVvSWQseCxoLnBsYXlsaXN0SWQpfWVsc2Ugdi5wcmV2ZW50RGVmYXVsdCgpLGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQuYmx1cigpfSk7CkQuTHUobi5zdWdnZXN0aW9ucy5lbGVtZW50KTtuLk4ucHVzaChEKTtuLmFwaS5jcmVhdGVTZXJ2ZXJWZShELmVsZW1lbnQsRCl9fSxpY3I9ZnVuY3Rpb24obil7aWYobi5hcGkuRygpLlMoIndlYl9wbGF5ZXJfbG9nX2NsaWNrX2JlZm9yZV9nZW5lcmF0aW5nX3ZlX2NvbnZlcnNpb25fcGFyYW1zIikpe3ZhciBXPU1hdGguZmxvb3IoLW4uc2Nyb2xsUG9zaXRpb24vKG4uVis4KSk7CmxldCBEPU1hdGgubWluKFcrbi5jb2x1bW5zLG4uc3VnZ2VzdGlvbkRhdGEubGVuZ3RoKS0xO2Zvcig7Vzw9RDtXKyspbi5hcGkubG9nVmlzaWJpbGl0eShuLk5bV10uZWxlbWVudCwhMCl9fSxzNj1mdW5jdGlvbihuKXt2YXIgVz1uLmFwaS55WigpPzMyOjE2OwpXPW4uRC8yK1c7bi5uZXh0LmVsZW1lbnQuc3R5bGUuYm90dG9tPWAke1d9cHhgO24ucHJldmlvdXMuZWxlbWVudC5zdHlsZS5ib3R0b209YCR7V31weGA7Vz1uLnNjcm9sbFBvc2l0aW9uO3ZhciBEPW4uY29udGFpbmVyV2lkdGgtbi5zdWdnZXN0aW9uRGF0YS5sZW5ndGgqKG4uVis4KTtnLmlIKG4uZWxlbWVudCwieXRwLXNjcm9sbC1taW4iLFc+PTApO2cuaUgobi5lbGVtZW50LCJ5dHAtc2Nyb2xsLW1heCIsVzw9RCl9LG81dz1mdW5jdGlvbihuKXt2YXIgVz1uLnN1Z2dlc3Rpb25EYXRhLmxlbmd0aDsKZm9yKGxldCBrPTA7azxXOysrayl7dmFyIEQ9dm9pZCAwLGI9dm9pZCAwO2xldCBoPXZvaWQgMDtEPW47dmFyIHY9RC5hcGkuRygpO2xldCB4PUQuc3VnZ2VzdGlvbkRhdGFba10sTD1ELk5ba107aD1ELmFwaS5pc0VtYmVkc1Nob3J0c01vZGUoKT94LnNob3J0Vmlld0NvdW50fHwiIjp4LnNob3J0Vmlld0NvdW50P2Ake3guYXV0aG9yfSBcdTIwMjIgJHt4LnNob3J0Vmlld0NvdW50fWA6eC5hdXRob3I7TC5lbGVtZW50LnN0eWxlLmRpc3BsYXk9IiI7Zy5oMShMLkJKKCJ5dHAtc3VnZ2VzdGlvbi1saW5rIiksImRpc3BsYXkiLCJpbmxpbmUtYmxvY2siKTt1eWkudGVzdCh4LnRpdGxlKSYmKEwuQkooInl0cC1zdWdnZXN0aW9uLXRpdGxlIikuZGlyPSJydGwiKTt1eWkudGVzdChoKSYmKEwuQkooInl0cC1zdWdnZXN0aW9uLWF1dGhvciIpLmRpcj0icnRsIik7Yj14LmlzTGl2ZVBsYXliYWNrPyJMaXZlIjp4Lmxlbmd0aFNlY29uZHM/Zy5INyh4Lmxlbmd0aFNlY29uZHMpOiIiO2xldCBlPQp4Lk1mKEQuYXBpLmlzRW1iZWRzU2hvcnRzTW9kZSgpKTtpZihnLm80KHYpJiYhdi5TKCJ3ZWJfcGxheWVyX2xvZ19jbGlja19iZWZvcmVfZ2VuZXJhdGluZ192ZV9jb252ZXJzaW9uX3BhcmFtcyIpKXtsZXQgRz17fTtNdShELmFwaSxbR10pO2U9Zy5FVChlLEcpfXYuUygid2ViX3BsYXllcl9sb2dfY2xpY2tfYmVmb3JlX2dlbmVyYXRpbmdfdmVfY29udmVyc2lvbl9wYXJhbXMiKSYmKHY9KHY9eC5zZXNzaW9uRGF0YSkmJnYuaXRjdCkmJkQuYXBpLnNldFRyYWNraW5nUGFyYW1zKEwuZWxlbWVudCx2KTtMLnVwZGF0ZSh7YXV0aG9yX2FuZF92aWV3czpoLGR1cmF0aW9uOmIsbGluazplLHRpdGxlOngudGl0bGUsYXJpYV9sYWJlbDp4LmFyaWFMYWJlbHx8eC50aXRsZSxpc19saXZlOnguaXNMaXZlUGxheWJhY2ssYXJpYV9oaWRkZW46ISF4LmFyaWFMYWJlbCxibGlua19yZW5kZXJpbmdfaGFjazpnLm9kfHxyYz8id2lsbC1jaGFuZ2U6IG9wYWNpdHkiOnZvaWQgMH0pO2I9TC5CSigieXRwLXN1Z2dlc3Rpb24taW1hZ2UiKTsKRD1ELmFwaS5pc0VtYmVkc1Nob3J0c01vZGUoKT94LkdCKCJocTIuanBnIik6eC5HQigpO2Iuc3R5bGUuYmFja2dyb3VuZEltYWdlPUQ/YHVybCgke0R9KWA6IiJ9aWYoVzwxNilmb3IoO1c8MTY7KytXKWcuaDEobi5OW1ddLkJKKCJ5dHAtc3VnZ2VzdGlvbi1saW5rIiksImRpc3BsYXkiLCJub25lIik7czYobil9LE5sPWZ1bmN0aW9uKG4pe2lmKCFuLlcpe3ZhciBXPU1hdGgubWluKCgwLGcuUikoKS1uLlYsbi5qKTsKdmFyIEQ9bi5qLVc7Vz1uLmo9PT0wPzA6TWF0aC5tYXgoRC9uLmosMCk7RD1NYXRoLnJvdW5kKEQvMUUzKTtuLlkuc2V0QXR0cmlidXRlKCJzdHJva2UtZGFzaG9mZnNldCIsYCR7LTIxMSooVysxKX1gKTtuLnVwZGF0ZVZhbHVlKCJkdXJhdGlvbiIsRCk7Vzw9MCYmbi5OP24uc3RvcFRpbWVyKCk6bi5OJiZuLk4uc3RhcnQoKX19LGRleD1mdW5jdGlvbihuKXtuLk58fChuLmo9NUUzLG4uVj0oMCxnLlIpKCksbi5OPW5ldyBnLnBfKCgpPT57Tmwobil9LG51bGwpLE5sKG4pKX0scHg9ZnVuY3Rpb24obil7dmFyIFc9bi5BOwpuPSEhVy5pc0VtYmVkc1Nob3J0c01vZGUoKTtnLmlIKFcuZ2V0Um9vdE5vZGUoKSwieXRwLXNob3J0cy1tb2RlIixuKTtpZihXPVcuZ2V0VmlkZW9EYXRhKCkpVy5TYT1ufSxUYXg9ZnVuY3Rpb24obil7e3ZhciBXPW4uQTsKbGV0IEQ9Vy5HKCk7RC5XaSYmIUQuRCYmZy5vNChEKT9XLmlzRW1iZWRzU2hvcnRzTW9kZSgpPyhXPVcuRTQoKSxXPU1hdGgubWluKFcud2lkdGgsVy5oZWlnaHQpPj0zMTUpOlc9IVcuejYoKTpXPSExfVchPT1uLkQmJihuLkQ9VyxuLmomJihuLmouZGlzcG9zZSgpLG4uaj1udWxsKSxuLlcmJihuLlcuZGlzcG9zZSgpLG4uVz1udWxsKSxuLlgmJihuLlguZGlzcG9zZSgpLG4uWD1udWxsKSxuLkomJihuLkouc3RvcCgpLG4uSi5kaXNwb3NlKCksbi5KPW51bGwpLFcmJihnLmI1KG4uQSksbi5BLmlzRW1iZWRzU2hvcnRzTW9kZSgpJiYobi5YPW5ldyBnLnJxKHtaOiJkaXYiLEp3OiJ5dHAtcGF1c2Utb3ZlcmxheS1iYWNrZHJvcCIseGE6e3RhYkluZGV4OiItMSJ9fSksZy51KG4sbi5YKSxnLnJ2KG4uQSxuLlguZWxlbWVudCw0KSxuLko9bmV3IGcuJGkobi5YLDFFMywhMSwxMDApLGcudShuLG4uSiksbi5YLmhpZGUoKSksbi5qPW5ldyBnLnJxKHtaOiJkaXYiLEp3OiJ5dHAtcGF1c2Utb3ZlcmxheS1jb250YWluZXIiLAp4YTp7dGFiSW5kZXg6Ii0xIn19KSxnLnUobixuLmopLG4uVz1uZXcgemRVKG4uQSksZy51KG4sbi5XKSxuLlcuTHUobi5qLmVsZW1lbnQpLGcucnYobi5BLG4uai5lbGVtZW50LDQpLGw2QyhuLG4uQS5nZXRQbGF5ZXJTdGF0ZU9iamVjdCgpKSkpfSxsNkM9ZnVuY3Rpb24obixXKXtuLkomJighVy5OKDQpJiYhVy5OKDIpfHxXLk4oMTAyNCk/bi5KLmhpZGUoKTpuLkouc2hvdygpKX0sWWk9ZnVuY3Rpb24obixXKXt2YXIgRD1uLkEuRygpOwpuPXthZFNvdXJjZToiRU1CRURTX0FEX1NPVVJDRV9ZT1VUVUJFIixicmVha1R5cGU6bi5BLmdldEN1cnJlbnRUaW1lKCk9PT0wPyJFTUJFRFNfQURfQlJFQUtfVFlQRV9QUkVfUk9MTCI6bi5BLmdldFBsYXllclN0YXRlKCk9PT0wPyJFTUJFRFNfQURfQlJFQUtfVFlQRV9QT1NUX1JPTEwiOiJFTUJFRFNfQURfQlJFQUtfVFlQRV9NSURfUk9MTCIsZW1iZWRVcmw6QUEobi5BLkcoKS5sb2FkZXJVcmwpLGV2ZW50VHlwZTpXLHlvdXR1YmVIb3N0OmcuSVAobi5BLkcoKS5EYSl8fCIifTtuLmVtYmVkZGVkUGxheWVyTW9kZT1ELmNKO2cuelUoImVtYmVkc0FkRXZlbnQiLG4pfSxudD1bXSxEaXg9dHlwZW9mIE9iamVjdC5jcmVhdGU9PSJmdW5jdGlvbiI/T2JqZWN0LmNyZWF0ZTpmdW5jdGlvbihuKXtmdW5jdGlvbiBXKCl7fQpXLnByb3RvdHlwZT1uO3JldHVybiBuZXcgV30sV1NDPXR5cGVvZiBPYmplY3QuZGVmaW5lUHJvcGVydGllcz09ImZ1bmN0aW9uIj9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24obixXLEQpe2lmKG49PUFycmF5LnByb3RvdHlwZXx8bj09T2JqZWN0LnByb3RvdHlwZSlyZXR1cm4gbjsKbltXXT1ELnZhbHVlO3JldHVybiBufSx4Mj1nbG9iYWxUaGlzLHZaPSJJbnQ4IFVpbnQ4IFVpbnQ4Q2xhbXBlZCBJbnQxNiBVaW50MTYgSW50MzIgVWludDMyIEZsb2F0MzIgRmxvYXQ2NCIuc3BsaXQoIiAiKTsKeDIuQmlnSW50NjRBcnJheSYmKHZaLnB1c2goIkJpZ0ludDY0IiksdloucHVzaCgiQmlnVWludDY0IikpO3ZhciBidFM9T2JqZWN0LnNldFByb3RvdHlwZU9mO2hpKCJTeW1ib2wuZGlzcG9zZSIsZnVuY3Rpb24obil7cmV0dXJuIG4/bjpTeW1ib2woIlN5bWJvbC5kaXNwb3NlIil9KTsKaGkoIlN1cHByZXNzZWRFcnJvciIsZnVuY3Rpb24obil7ZnVuY3Rpb24gVyhELGIsdil7aWYoISh0aGlzIGluc3RhbmNlb2YgVykpcmV0dXJuIG5ldyBXKEQsYix2KTt2PUVycm9yKHYpOyJzdGFjayJpbiB2JiYodGhpcy5zdGFjaz12LnN0YWNrKTt0aGlzLm1lc3NhZ2U9di5tZXNzYWdlO3RoaXMuZXJyb3I9RDt0aGlzLnN1cHByZXNzZWQ9Yn0KaWYobilyZXR1cm4gbjt2MkMoVyxFcnJvcik7Vy5wcm90b3R5cGUubmFtZT0iU3VwcHJlc3NlZEVycm9yIjtyZXR1cm4gV30pOwpoaSgiU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlQWxsIixmdW5jdGlvbihuKXtyZXR1cm4gbj9uOmZ1bmN0aW9uKFcsRCl7aWYoVyBpbnN0YW5jZW9mIFJlZ0V4cCYmIVcuZ2xvYmFsKXRocm93IG5ldyBUeXBlRXJyb3IoIlN0cmluZy5wcm90b3R5cGUucmVwbGFjZUFsbCBjYWxsZWQgd2l0aCBhIG5vbi1nbG9iYWwgUmVnRXhwIGFyZ3VtZW50LiIpO3JldHVybiBXIGluc3RhbmNlb2YgUmVnRXhwP3RoaXMucmVwbGFjZShXLEQpOnRoaXMucmVwbGFjZShuZXcgUmVnRXhwKFN0cmluZyhXKS5yZXBsYWNlKC8oWy0oKVxbXF17fSs/Ki4kXF58LDojPCFcXF0pL2csIlxcJDEiKS5yZXBsYWNlKC9ceDA4L2csIlxceDA4IiksImciKSxEKX19KTsKaGkoIkFycmF5LnByb3RvdHlwZS5hdCIsZnVuY3Rpb24obil7cmV0dXJuIG4/bjplVX0pOwpuMncoImF0IixmdW5jdGlvbihuKXtyZXR1cm4gbj9uOmVVfSk7CmhpKCJTdHJpbmcucHJvdG90eXBlLmF0IixmdW5jdGlvbihuKXtyZXR1cm4gbj9uOmVVfSk7CmhpKCJQcm9taXNlLndpdGhSZXNvbHZlcnMiLGZ1bmN0aW9uKG4pe3JldHVybiBuP246ZnVuY3Rpb24oKXt2YXIgVyxEO3JldHVybntwcm9taXNlOm5ldyBQcm9taXNlKGZ1bmN0aW9uKGIsdil7Vz1iO0Q9dn0pLApyZXNvbHZlOlcscmVqZWN0OkR9fX0pO3ZhciBjSixTVSxrYnQ7Y0o9Y0p8fHt9O2cucWk9dGhpc3x8c2VsZjtTVT0iY2xvc3VyZV91aWRfIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKTtrYnQ9MDt2YXIgZV93PWNsYXNze2NvbnN0cnVjdG9yKHt1cmw6bixadjpXfSl7dGhpcy5KPW47dGhpcy5YPVc7dGhpcy5XPShuZXcgRGF0ZSkuZ2V0VGltZSgpLTE3MDQwNjcyRTU7dGhpcy5OPXt9O2Zvcih2YXIgRD0vWz8mXShbXiY9XSspPShbXiZdKikvZztXPUQuZXhlYyhuKTspdGhpcy5OW1dbMV1dPVdbMl19fTtnLml4KGcuVGIsRXJyb3IpO2cuVGIucHJvdG90eXBlLm5hbWU9IkN1c3RvbUVycm9yIjt2YXIgSWg7dmFyIE5yaD0vJi9nLHBadz0vPC9nLFl3aT0vPi9nLEh0VT0vIi9nLGYxUz0vJy9nLEppWj0vXHgwMC9nLHNDaD0vW1x4MDAmPD4iJ10vO3ZhciBuYj1nbG9iYWxUaGlzLnRydXN0ZWRUeXBlcyxXTTt2YXIgYl89Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5OKyIifX07Zy5laj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn10b1N0cmluZygpe3JldHVybiB0aGlzLk59fTtnLlY1PW5ldyBnLmVqKCJhYm91dDppbnZhbGlkI3pDbG9zdXJleiIpO3ZhciBYSSxnMmo7WEk9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5PVj1ufX07Zy5HND1bcVUoImRhdGEiKSxxVSgiaHR0cCIpLHFVKCJodHRwcyIpLHFVKCJtYWlsdG8iKSxxVSgiZnRwIiksbmV3IFhJKG49Pi9eW146XSooWy8/I118JCkvLnRlc3QobikpXTsKZzJqPS9eXHMqKD8hamF2YXNjcmlwdDopKD86W1x3Ky4tXSs6fFteOi8/I10qKD86Wy8/I118JCkpL2k7Zy5ZMz1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn10b1N0cmluZygpe3JldHVybiB0aGlzLk4rIiJ9fTt2YXIgQUY9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5OKyIifX07dmFyIFo0PWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuTj1ufXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuTn19O3ZhciBMcD17fTt2YXIgQWlyLG1pMTtBaXI9UmVnRXhwKCJeKD86KFteOi8/Iy5dKyk6KT8oPzovLyg/OihbXlxcXFwvPyNdKilAKT8oW15cXFxcLz8jXSo/KSg/OjooWzAtOV0rKSk/KD89W1xcXFwvPyNdfCQpKT8oW14/I10rKT8oPzpcXD8oW14jXSopKT8oPzojKFtcXHNcXFNdKikpPyQiKTtnLno1PS8jfCQvO21pMT0vWz8mXSgkfCMpLzt2YXIgUUc9Y2xhc3MgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihuLFcsRD1FcnJvcigpKXtzdXBlcigpO3RoaXMuY29kZT1uO1crPSI6IjtEIGluc3RhbmNlb2YgRXJyb3I/KHRoaXMubWVzc2FnZT1XK0QubWVzc2FnZSx0aGlzLnN0YWNrPUQuc3RhY2t8fCIiKToodGhpcy5tZXNzYWdlPVcrU3RyaW5nKEQpLHRoaXMuc3RhY2s9IiIpO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLG5ldy50YXJnZXQucHJvdG90eXBlKX19O2cuRk0ucHJvdG90eXBlLkhEPSExO2cuRk0ucHJvdG90eXBlLnFOPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSER9OwpnLkZNLnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5IRHx8KHRoaXMuSEQ9ITAsdGhpcy5tQSgpKX07CmcuRk0ucHJvdG90eXBlW1N5bWJvbC5kaXNwb3NlXT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfTsKZy5GTS5wcm90b3R5cGUuYWRkT25EaXNwb3NlQ2FsbGJhY2s9ZnVuY3Rpb24obixXKXt0aGlzLkhEP1chPT12b2lkIDA/bi5jYWxsKFcpOm4oKToodGhpcy5CVnx8KHRoaXMuQlY9W10pLFcmJihuPW4uYmluZChXKSksdGhpcy5CVi5wdXNoKG4pKX07CmcuRk0ucHJvdG90eXBlLm1BPWZ1bmN0aW9uKCl7aWYodGhpcy5CVilmb3IoO3RoaXMuQlYubGVuZ3RoOyl0aGlzLkJWLnNoaWZ0KCkoKX07dmFyIFB4Uz1jbGFzcyBleHRlbmRzIGcuRk17Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLndwYz1ufUgkKCl7cmV0dXJuIHRoaXMud3BjLmYoKX15aChuKXt0aGlzLndwYy5jKG4pfVcobil7cmV0dXJuIHRoaXMud3BjLm0oUlAobikpfVpSKG4pe3JldHVybiB0aGlzLndwYy5td3MoUlAobikpfX0sd1Q9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dGhpcy5PMT1uO3RoaXMuVz0ia2V5ZG93biBrZXlwcmVzcyBrZXl1cCBpbnB1dCBmb2N1c2luIGZvY3Vzb3V0IHNlbGVjdCBjb3B5IGN1dCBwYXN0ZSBjaGFuZ2UgY2xpY2sgZGJsY2xpY2sgYXV4Y2xpY2sgcG9pbnRlcm92ZXIgcG9pbnRlcmRvd24gcG9pbnRlcnVwIHBvaW50ZXJtb3ZlIHBvaW50ZXJvdXQgZHJhZ2VudGVyIGRyYWdsZWF2ZSBkcmFnIGRyYWdlbmQgbW91c2VvdmVyIG1vdXNlZG93biBtb3VzZXVwIG1vdXNlbW92ZSBtb3VzZW91dCB0b3VjaHN0YXJ0IHRvdWNoZW5kIHRvdWNobW92ZSB3aGVlbCIuc3BsaXQoIiAiKTsKdGhpcy5KPXZvaWQgMDt0aGlzLk92PXRoaXMuTzEucDt0aGlzLlg9dGhpcy5TMS5iaW5kKHRoaXMpO3RoaXMuYWRkT25EaXNwb3NlQ2FsbGJhY2soKCk9PnZvaWQgT3RpKHRoaXMpKX1zbmFwc2hvdChuKXtyZXR1cm4gdGhpcy5PMS5zKHsuLi4obi53XyYme2M6bi53X30pLAouLi4obi5HbCYme3M6bi5HbH0pLC4uLihuLk1PIT09dm9pZCAwJiZ7cDpuLk1PfSl9KX1TMShuKXt0aGlzLk8xLmUobil9UUQoKXtyZXR1cm4gdGhpcy5PMS5sKCl9fTt2YXIgamExPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyk7dGhpcy5iZD0xfXNoYXJlKCl7aWYodGhpcy5xTigpKXRocm93IEVycm9yKCJFOkFEIik7dGhpcy5iZCsrO3JldHVybiB0aGlzfWRpc3Bvc2UoKXstLXRoaXMuYmR8fHN1cGVyLmRpc3Bvc2UoKX19O3ZhciBDMHg9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5KPW47RXUobiwiL2NsaWVudF9zdHJlYW16L2JnL2ZycyIsYnAoIm1rIikpfWRFKG4sVyl7dGhpcy5KLmRFKCIvY2xpZW50X3N0cmVhbXovYmcvZnJzIixuLFcpfU4oKXtyZXR1cm4gdGhpcy5KLk4oIi9jbGllbnRfc3RyZWFtei9iZy9mcnMiKX19LEJhaT1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLko9bjtFdShuLCIvY2xpZW50X3N0cmVhbXovYmcvd3JsIixicCgibW4iKSxEWCgiYWMiKSxEWCgic2MiKSxicCgicmsiKSxicCgibWsiKSl9ZEUobixXLEQsYix2LGspe3RoaXMuSi5kRSgiL2NsaWVudF9zdHJlYW16L2JnL3dybCIsbixXLEQsYix2LGspfU4oKXtyZXR1cm4gdGhpcy5KLk4oIi9jbGllbnRfc3RyZWFtei9iZy93cmwiKX19LEYyWj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLlc9bjt1ZShuLCIvY2xpZW50X3N0cmVhbXovYmcvZWMiLGJwKCJlbiIpLGJwKCJtayIpKX1KKG4sVyl7ZHAodGhpcy5XLCIvY2xpZW50X3N0cmVhbXovYmcvZWMiLApuLFcpfU4oKXtyZXR1cm4gdGhpcy5XLk4oIi9jbGllbnRfc3RyZWFtei9iZy9lYyIpfX0sd1FyPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuSj1uO0V1KG4sIi9jbGllbnRfc3RyZWFtei9iZy9lbCIsYnAoImVuIiksYnAoIm1rIikpfWRFKG4sVyxEKXt0aGlzLkouZEUoIi9jbGllbnRfc3RyZWFtei9iZy9lbCIsbixXLEQpfU4oKXtyZXR1cm4gdGhpcy5KLk4oIi9jbGllbnRfc3RyZWFtei9iZy9lbCIpfX0sTXQxPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuVz1uO3VlKG4sIi9jbGllbnRfc3RyZWFtei9iZy9jZWMiLERYKCJlYyIpLGJwKCJtayIpKX1KKG4sVyl7ZHAodGhpcy5XLCIvY2xpZW50X3N0cmVhbXovYmcvY2VjIixuLFcpfU4oKXtyZXR1cm4gdGhpcy5XLk4oIi9jbGllbnRfc3RyZWFtei9iZy9jZWMiKX19LFJkYj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLlc9bjt1ZShuLCIvY2xpZW50X3N0cmVhbXovYmcvcG8vY3NjIixEWCgiY3MiKSxicCgibWsiKSl9SihuLFcpe2RwKHRoaXMuVywKIi9jbGllbnRfc3RyZWFtei9iZy9wby9jc2MiLG4sVyl9Tigpe3JldHVybiB0aGlzLlcuTigiL2NsaWVudF9zdHJlYW16L2JnL3BvL2NzYyIpfX0sUWF4PWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuVz1uO3VlKG4sIi9jbGllbnRfc3RyZWFtei9iZy9wby9jdGF2IixicCgiYXYiKSxicCgibWsiKSl9SihuLFcpe2RwKHRoaXMuVywiL2NsaWVudF9zdHJlYW16L2JnL3BvL2N0YXYiLG4sVyl9Tigpe3JldHVybiB0aGlzLlcuTigiL2NsaWVudF9zdHJlYW16L2JnL3BvL2N0YXYiKX19LFZ0aT1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLlc9bjt1ZShuLCIvY2xpZW50X3N0cmVhbXovYmcvcG8vY3dzYyIsYnAoInN1IiksYnAoIm1rIikpfUoobixXKXtkcCh0aGlzLlcsIi9jbGllbnRfc3RyZWFtei9iZy9wby9jd3NjIixuLFcpfU4oKXtyZXR1cm4gdGhpcy5XLk4oIi9jbGllbnRfc3RyZWFtei9iZy9wby9jd3NjIil9fSxjang9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5KPW47RXUobiwKIi9jbGllbnRfc3RyZWFtei9iZy9vZC9wIixicCgibWsiKSl9ZEUobixXKXt0aGlzLkouZEUoIi9jbGllbnRfc3RyZWFtei9iZy9vZC9wIixuLFcpfU4oKXtyZXR1cm4gdGhpcy5KLk4oIi9jbGllbnRfc3RyZWFtei9iZy9vZC9wIil9fSxhNnc9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5KPW47RXUobiwiL2NsaWVudF9zdHJlYW16L2JnL29kL24iLGJwKCJldCIpLGJwKCJtayIpKX1kRShuLFcsRCl7dGhpcy5KLmRFKCIvY2xpZW50X3N0cmVhbXovYmcvb2QvbiIsbixXLEQpfU4oKXtyZXR1cm4gdGhpcy5KLk4oIi9jbGllbnRfc3RyZWFtei9iZy9vZC9uIil9fTt2YXIgY1c9ITAsVjEsdjI7dmFyIEhxO0hxPU5pKDEsITApO2cucXg9TmkoNjEwNDAxMzAxLCExKTtOaSg4OTk1ODg0MzcsITEpO05pKDc3MjY1Nzc2OCwhMCk7TmkoNTEzNjU5NTIzLCExKTtOaSg1NjgzMzM5NDUsITApO05pKDEzMzE3NjE0MDMsITApO05pKDY1MTE3NTgyOCwhMSk7TmkoNzIyNzY0NTQyLCExKTtOaSg3NDg0MDIxNDUsITEpO05pKDc0ODQwMjE0NiwhMSk7dmFyIEF2PU5pKDc0ODQwMjE0NywhMCk7TmkoMTYwMjYxMzE4NSwhMSk7TmkoODYxMzc3NzIzLCExKTtOaSg4NjEzNzc3MjQsSHEpO05pKDg2OTMzNjkwMywhMSk7TmkoODgyNjc0NTA3LCExKTtOaSg4NjkzMzY5MDQsSHEpO05pKDg2OTMzNjkwNSxIcSk7TmkoMjgzOTUzMTU1LCExKTtOaSg5MTk0NDQ4MjQsITEpO05pKDkzMTQ2ODA0NywhMSk7TmkoOTI4ODc1Mzk4LCExKTtOaSg2ODM3NDkyMDEsITEpO05pKDIxNDc0ODM2NDQsITEpO05pKDIxNDc0ODM2NDUsITEpO05pKDIxNDc0ODM2NDYsSHEpO05pKDIxNDc0ODM2NDcsITApO2cuR2g9ISFnLnJyKCJ5dC5jb25maWdfLkVYUEVSSU1FTlRTX0ZMQUdTLmh0bWw1X2VuYWJsZV9jbGllbnRfaGludHNfb3ZlcnJpZGUiKTt2YXIgbnpiO256Yj1nLnFpLm5hdmlnYXRvcjtnLnQ0PW56Yj9uemIudXNlckFnZW50RGF0YXx8bnVsbDpudWxsO2cuT0FbIiAiXT1mdW5jdGlvbigpe307dmFyIHJjLG5yLHBRaixXVVosRDRpLGJpVSxYdyxmeDtyYz1OeCgpO2cua2g9c0EoKT8hMTpnLnJXKCJUcmlkZW50Iil8fGcuclcoIk1TSUUiKTtnLlJnPWcuclcoIkVkZ2UiKTtnLnNtPWcuUmd8fGcua2g7Zy5lUz1nLnJXKCJHZWNrbyIpJiYhKGcud3IoZy5YUSgpLCJXZWJLaXQiKSYmIWcuclcoIkVkZ2UiKSkmJiEoZy5yVygiVHJpZGVudCIpfHxnLnJXKCJNU0lFIikpJiYhZy5yVygiRWRnZSIpO2cuWmw9Zy53cihnLlhRKCksIldlYktpdCIpJiYhZy5yVygiRWRnZSIpO25yPWcubXgoKTtwUWo9Zy5LMCgpO2cuUUg9Zy5JMigpO1dVWj1TdSgpO0Q0aT1nLnJXKCJpUGFkIik7YmlVPWcuclcoImlQb2QiKTtYdz1nLkE0KCk7Zy5XWD1nLndyKGcuWFEoKSwiS2FpT1MiKTsKYTp7bGV0IG49IiIsVz1mdW5jdGlvbigpe3ZhciBEPWcuWFEoKTtpZihnLmVTKXJldHVybi9ydjooW15cKTtdKykoXCl8OykvLmV4ZWMoRCk7aWYoZy5SZylyZXR1cm4vRWRnZVwvKFtcZFwuXSspLy5leGVjKEQpO2lmKGcua2gpcmV0dXJuL1xiKD86TVNJRXxydilbOiBdKFteXCk7XSspKFwpfDspLy5leGVjKEQpO2lmKGcuWmwpcmV0dXJuL1dlYktpdFwvKFxTKykvLmV4ZWMoRCk7aWYocmMpcmV0dXJuLyg/OlZlcnNpb24pWyBcL10/KFxTKykvLmV4ZWMoRCl9KCk7ClcmJihuPVc/V1sxXToiIik7aWYoZy5raCl7dmFyIEpWO2xldCBEPWcucWkuZG9jdW1lbnQ7SlY9RD9ELmRvY3VtZW50TW9kZTp2b2lkIDA7aWYoSlYhPW51bGwmJkpWPnBhcnNlRmxvYXQobikpe2Z4PVN0cmluZyhKVik7YnJlYWsgYX19Zng9bn12YXIgUDI9ZngsaXR4PXt9O3ZhciB3OCxNWDtnLmFvPXAwKCk7dzg9U3UoKXx8Zy5yVygiaVBvZCIpO01YPWcuclcoImlQYWQiKTtnLkltPWcuclcoIkFuZHJvaWQiKSYmIShZSygpfHxwMCgpfHxOeCgpfHxnLnJXKCJTaWxrIikpO2cub2Q9WUsoKTtnLkduPWcuSDIoKSYmIWcuQTQoKTt2YXIgeWw9e30sVGg9bnVsbDt2YXIganU9L1stXy5dL2csZGlVPXsiLSI6IisiLF86Ii8iLCIuIjoiPSJ9LHdXPXt9O3ZhciBGUT1jbGFzc3tpc0VtcHR5KCl7cmV0dXJuIHRoaXMuTj09bnVsbH1zaXplQnl0ZXMoKXt2YXIgbj1RbCh0aGlzKTtyZXR1cm4gbj9uLmxlbmd0aDowfWNvbnN0cnVjdG9yKG4sVyl7UjIoVyk7dGhpcy5OPW47aWYobiE9bnVsbCYmbi5sZW5ndGg9PT0wKXRocm93IEVycm9yKCJCeXRlU3RyaW5nIHNob3VsZCBiZSBjb25zdHJ1Y3RlZCB3aXRoIG5vbi1lbXB0eSB2YWx1ZXMiKTt9fSxCMjt2YXIgYTI9dm9pZCAwO3ZhciBiND1XOSgiamFzIiwhMCksTG49VzkoKSxrOT1XOSgpLExHPVc5KCksUk1iPVc5KCksUUNpPVc5KCksRzRTPVc5KCksRFVpPVc5KCksdkg9VzkoIm1fbSIsITApLGNpVT1XOSgpLHFFPVc5KCk7Wy4uLk9iamVjdC52YWx1ZXMoe014OjEsRVk6MixHTDo0LFltOjgsalo6MTYsVFQ6MzIsUFE6NjQsTng6MTI4LGZoOjI1NixhTjo1MTIsYVU6MTAyNCxQbToyMDQ4LHI0OjQwOTYsYU86ODE5Mn0pXTt2YXIgenosdnp4PVtdO3Z6eFtiNF09Nzt6ej1PYmplY3QuZnJlZXplKHZ6eCk7dmFyIGt2PXt9LERCPXt9LEckPU9iamVjdC5mcmVlemUoe30pLFNvPXt9LHhVPXt9O3ZhciBZbyx3V2osa0N4O2cudF89cTMobj0+dHlwZW9mIG49PT0ibnVtYmVyIik7CmcuRzk9cTMobj0+dHlwZW9mIG49PT0ic3RyaW5nIik7CllvPXEzKG49Pm4hPW51bGwmJnR5cGVvZiBuPT09Im9iamVjdCImJnR5cGVvZiBuLnRoZW49PT0iZnVuY3Rpb24iKTsKd1dqPXEzKG49PnR5cGVvZiBuPT09ImZ1bmN0aW9uIik7CmtDeD1xMyhuPT4hIW4mJih0eXBlb2Ygbj09PSJvYmplY3QifHx0eXBlb2Ygbj09PSJmdW5jdGlvbiIpKTt2YXIgc0s9cTMobj0+bj49aDNqJiZuPD14NGopLGgzaj1CaWdJbnQoTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIpLHg0aj1CaWdJbnQoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpO3ZhciByWj0wLHNfPTAsR3Y7dmFyIGRaPXR5cGVvZiBCaWdJbnQ9PT0iZnVuY3Rpb24iP0JpZ0ludC5hc0ludE46dm9pZCAwLEJyaD10eXBlb2YgQmlnSW50PT09ImZ1bmN0aW9uIj9CaWdJbnQuYXNVaW50Tjp2b2lkIDAsalg9TnVtYmVyLmlzU2FmZUludGVnZXIsUDk9TnVtYmVyLmlzRmluaXRlLFQ5PU1hdGgudHJ1bmMsbDEyPS9eLT8oWzEtOV1bMC05XSp8MCkoXC5bMC05XSspPyQvO3ZhciBhMVU9e307dmFyIFhGPWNsYXNze30sTVVpPXtKUzohMH07dmFyICR2O3ZhciBISCxmRzt2YXIgdjNpPWcuJFUoMCksZm49e307dmFyIE9WPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxEKXt0aGlzLmJ1ZmZlcj1uO2lmKEQmJiFXKXRocm93IEVycm9yKCk7dGhpcy5OPVd9fTt2YXIgTFVyPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxELGIpe3RoaXMuSj1udWxsO3RoaXMuVj0hMTt0aGlzLmo9bnVsbDt0aGlzLk49dGhpcy5XPXRoaXMuWD0wO3RoaXMuaW5pdChuLFcsRCxiKX1pbml0KG4sVyxELHtuXzpiPSExLGhCOnY9ITF9PXt9KXt0aGlzLm5fPWI7dGhpcy5oQj12O24mJihuPVBXKG4sdGhpcy5oQiksdGhpcy5KPW4uYnVmZmVyLHRoaXMuVj1uLk4sdGhpcy5qPW51bGwsdGhpcy5YPVd8fDAsdGhpcy5XPUQhPT12b2lkIDA/dGhpcy5YK0Q6dGhpcy5KLmxlbmd0aCx0aGlzLk49dGhpcy5YKX1mcmVlKCl7dGhpcy5jbGVhcigpO0FWLmxlbmd0aDwxMDAmJkFWLnB1c2godGhpcyl9Y2xlYXIoKXt0aGlzLko9bnVsbDt0aGlzLlY9ITE7dGhpcy5qPW51bGw7dGhpcy5OPXRoaXMuVz10aGlzLlg9MDt0aGlzLm5fPSExfXJlc2V0KCl7dGhpcy5OPXRoaXMuWH19LEFWPVtdO3ZhciBSWT0wLGhCUz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCxiKXtpZihBVi5sZW5ndGgpe2xldCB2PUFWLnBvcCgpO3YuaW5pdChuLFcsRCxiKTtuPXZ9ZWxzZSBuPW5ldyBMVXIobixXLEQsYik7dGhpcy5OPW47dGhpcy5YPXRoaXMuTi5OO3RoaXMuSj10aGlzLlc9LTE7akUodGhpcyxiKX1mcmVlKCl7dGhpcy5OLmNsZWFyKCk7dGhpcy5KPXRoaXMuVz0tMTtUJC5sZW5ndGg8MTAwJiZUJC5wdXNoKHRoaXMpfXJlc2V0KCl7dGhpcy5OLnJlc2V0KCk7dGhpcy5YPXRoaXMuTi5OO3RoaXMuSj10aGlzLlc9LTF9fSxUJD1bXTt2YXIgZTNyPWNsYXNze2NvbnN0cnVjdG9yKCl7aWYoU28hPT1Tbyl0aHJvdyBFcnJvcigpO319O3ZhciB2eT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuSj1uPj4+MDt0aGlzLk49Vz4+PjB9fSxoMyxlQz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuSj1uPj4+MDt0aGlzLk49Vz4+PjB9fSxnRyxyRyxOZixwaCwkbSx0MyxxZixHUzt2YXIgZ3pNPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5OPVtdfWxlbmd0aCgpe3JldHVybiB0aGlzLk4ubGVuZ3RofWVuZCgpe3ZhciBuPXRoaXMuTjt0aGlzLk49W107cmV0dXJuIG59fTt2YXIgWCQyPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5XPVtdO3RoaXMuSj0wO3RoaXMuTj1uZXcgZ3pNfX07dmFyIGxHLHEzWixtNyxHQzIsdDJoLCQ0aSxyWEMsUHEsc2YyLE5NVSxwJFU7bEc9b3goKTtxM1o9b3goKTttNz1veCgpO2cuS3g9b3goKTtHQzI9b3goKTt0Mmg9b3goKTskNGk9b3goKTtnLk82PW94KCk7clhDPW94KCk7UHE9b3goKTtzZjI9b3goKTtnLlpGPW94KCk7Tk1VPW94KCk7cCRVPW94KCk7Zy5RbT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCl7dGhpcy5sOT1KdihuLFcsRCwyMDQ4KX10b0pTT04oKXtyZXR1cm4gWXYodGhpcyl9Ylkobil7cmV0dXJuIEpTT04uc3RyaW5naWZ5KFl2KHRoaXMsbikpfWNsb25lKCl7dmFyIG49dGhpcy5sOSxXPW5bYjRdfDA7cmV0dXJuIEtHKHRoaXMsbixXKT9PSyh0aGlzLG4sITApOm5ldyB0aGlzLmNvbnN0cnVjdG9yKG1fKG4sVywhMSkpfX07Zy5RbS5wcm90b3R5cGVbdkhdPWt2O2cuUW0ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubDkudG9TdHJpbmcoKX07dmFyIHpTPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxEKXt0aGlzLmNqPW47dGhpcy5Qaj1XO249RXcobEcpO3RoaXMuTj0hIW4mJkQ9PT1ufHwhMX19LExjdD1UUyhmdW5jdGlvbihuLFcsRCxiLHYpe2lmKG4uSiE9PTIpcmV0dXJuITE7UTEobixoUyhXLGIsRCksdik7cmV0dXJuITB9LENoKSxlQnQ9VFMoZnVuY3Rpb24obixXLEQsYix2KXtpZihuLkohPT0yKXJldHVybiExOwpRMShuLGhTKFcsYixEKSx2KTtyZXR1cm4hMH0sQ2gpLHZPPVN5bWJvbCgpLGN5PVN5bWJvbCgpLFdPPVN5bWJvbCgpLHhuPVN5bWJvbCgpLEQ4PVN5bWJvbCgpLEJ5LEZ0O3ZhciBTNixVNix5cCxZM0MsaVUsSGl3LGZxdyx1VSx6ZyxsVSxUZyxqbyxKWFMsSXFqO1M2PShuLFcpPT57dmFyIEQ9bmV3IFgkMjtMOChuLmw5LEQsd0codk8sYjYsa24sVykpO0EzKEQsRC5OLmVuZCgpKTtuPW5ldyBVaW50OEFycmF5KEQuSik7Vz1ELlc7dmFyIGI9Vy5sZW5ndGgsdj0wO2ZvcihsZXQgaz0wO2s8YjtrKyspe2xldCBoPVdba107bi5zZXQoaCx2KTt2Kz1oLmxlbmd0aH1ELlc9W25dO3JldHVybiBufTsKVTY9Zy5nUShmdW5jdGlvbihuLFcsRCl7aWYobi5KIT09MSlyZXR1cm4hMTtnLnFZKFcsRCxnLmRlKG4uTikpO3JldHVybiEwfSxnLnQ5LGcuWkYpOwp5cD1nLmdRKGZ1bmN0aW9uKG4sVyxEKXtpZihuLkohPT01KXJldHVybiExO3ZhciBiPXVhKG4uTik7bj0oYj4+MzEpKjIrMTt2YXIgdj1iPj4+MjMmMjU1O2ImPTgzODg2MDc7Zy5xWShXLEQsdj09MjU1P2I/TmFOOm4qSW5maW5pdHk6dj09MD9uKjEuNDAxMjk4NDY0MzI0ODE3RS00NSpiOm4qTWF0aC5wb3coMix2LTE1MCkqKGIrODM4ODYwOCkpO3JldHVybiEwfSxmdW5jdGlvbihuLFcsRCl7Vz1tMChXKTsKVyE9bnVsbCYmKG00KG4sRCw1KSxuPW4uTixEPUd2fHwoR3Y9bmV3IERhdGFWaWV3KG5ldyBBcnJheUJ1ZmZlcig4KSkpLEQuc2V0RmxvYXQzMigwLCtXLCEwKSxzXz0wLHJaPUQuZ2V0VWludDMyKDAsITApLEozKG4sclopKX0sc2YyKTsKZy5FNj1nLmdRKGZ1bmN0aW9uKG4sVyxEKXtuLkohPT0wP249ITE6KGcucVkoVyxELGcuVVYobi5OLGcuSl8pKSxuPSEwKTtyZXR1cm4gbn0sZy4kbixnLk82KTsKWTNDPWcuZ1EoZnVuY3Rpb24obixXLEQpe24uSiE9PTA/bj0hMTooZy5xWShXLEQsZy5VVihuLk4sZjUpKSxuPSEwKTtyZXR1cm4gbn0sZnVuY3Rpb24obixXLEQpe1c9YTAoVyk7CmlmKFchPW51bGwmJihQeShXKSxXIT1udWxsKSlzd2l0Y2gobTQobixELDApLHR5cGVvZiBXKXtjYXNlICJudW1iZXIiOm49bi5OO3A1KFcpO0h5KG4sclosc18pO2JyZWFrO2Nhc2UgImJpZ2ludCI6RD1ZbShXLHZ5LGttKTtIeShuLk4sRC5KLEQuTik7YnJlYWs7ZGVmYXVsdDpEPXhtKFcpLEh5KG4uTixELkosRC5OKX19LHJYQyk7CmlVPWcuZ1EoZnVuY3Rpb24obixXLEQpe2lmKG4uSiE9PTApcmV0dXJuITE7Zy5xWShXLEQsZy5FVihuLk4pKTtyZXR1cm4hMH0sZy5yUSxnLkt4KTsKSGl3PWcuZ1EoZnVuY3Rpb24obixXLEQpe3JldHVybiBKOShuLFcsRCl9LGZ1bmN0aW9uKG4sVyxEKXtXPWEwKFcpOwppZihXIT1udWxsKXN3aXRjaCh1RyhXKSxtNChuLEQsMSksbj1uLk4sdUcoVyksdHlwZW9mIFcpe2Nhc2UgIm51bWJlciI6VzwwPyhXPUxoKGttKC1XKSksRD1XLk4sSjMobixXLkopLEozKG4sRCkpOihOMyhXKSxKMyhuLHJaKSxKMyhuLHNfKSk7YnJlYWs7Y2FzZSAiYmlnaW50IjpXPVc8QmlnSW50KDApP0xoKFltKC1XLHZ5LGttKSk6WW0oVyx2eSxrbSk7RD1XLk47SjMobixXLkopO0ozKG4sRCk7YnJlYWs7ZGVmYXVsdDpXPVcubGVuZ3RoJiZXWzBdPT09Ii0iP0xoKHhtKFcuc3Vic3RyaW5nKDEpKSk6eG0oVyksRD1XLk4sSjMobixXLkopLEozKG4sRCl9fSxQcSk7CmZxdz1nLmdRKGZ1bmN0aW9uKG4sVyxEKXtpZihuLkohPT01KXJldHVybiExO2cucVkoVyxELHVhKG4uTikpO3JldHVybiEwfSxmdW5jdGlvbihuLFcsRCl7Vz11NChXKTsKVyE9bnVsbCYmKG00KG4sRCw1KSxKMyhuLk4sVykpfSx0MmgpOwp1VT1nLmdRKGZ1bmN0aW9uKG4sVyxEKXtpZihuLkohPT0wKXJldHVybiExO2cucVkoVyxELHkxKG4uTikpO3JldHVybiEwfSxzZixxM1opOwpnLm9tPWcuZ1EoZnVuY3Rpb24obixXLEQpe2lmKG4uSiE9PTIpcmV0dXJuITE7Zy5xWShXLEQsYVkobikpO3JldHVybiEwfSxOWSxtNyk7CmcuZHE9ZnVuY3Rpb24obixXLEQ9bEcpe3JldHVybiBuZXcgelMobixXLEQpfShmdW5jdGlvbihuLFcsRCxiLHYpe2lmKG4uSiE9PTIpcmV0dXJuITE7CmI9U1codm9pZCAwLGIpO2NIKFcsV1tiNF18MCxEKS5wdXNoKGIpO1ExKG4sYix2KTtyZXR1cm4hMH0sZnVuY3Rpb24obixXLEQsYix2KXtpZihBcnJheS5pc0FycmF5KFcpKXtmb3IobGV0IGs9MDtrPFcubGVuZ3RoO2srKylwOChuLFdba10sRCxiLHYpOwpuPVdbYjRdfDA7biYxfHwoV1tiNF09bnwxKX19KTsKemc9VFMoZnVuY3Rpb24obixXLEQsYix2LGspe2lmKG4uSiE9PTIpcmV0dXJuITE7dmFyIGg9V1tiNF18MDtXVyhXLGgsayxELEw1KGgpKTtXPWhTKFcsYixEKTtRMShuLFcsdik7cmV0dXJuITB9LHA4KTsKbFU9Zy5nUShmdW5jdGlvbihuLFcsRCl7aWYobi5KIT09MilyZXR1cm4hMTtnLnFZKFcsRCxEOShuKSk7cmV0dXJuITB9LGZ1bmN0aW9uKG4sVyxEKXtXPW5HKFcpOwpXIT1udWxsJiZpRyhuLEQsUFcoVywhMCkuYnVmZmVyKX0sTk1VKTsKVGc9WGYoZnVuY3Rpb24obixXLEQpe2lmKG4uSiE9PTIpcmV0dXJuITE7bj1EOShuKTtjSChXLFdbYjRdfDAsRCkucHVzaChuKTtyZXR1cm4hMH0sZnVuY3Rpb24obixXLEQpe1c9ZTYobkcsVywhMSk7CmlmKFchPW51bGwpZm9yKGxldCBoPTA7aDxXLmxlbmd0aDtoKyspe3ZhciBiPW4sdj1ELGs9V1toXTtrIT1udWxsJiZpRyhiLHYsUFcoaywhMCkuYnVmZmVyKX19LE5NVSk7CmpvPWcuZ1EoZnVuY3Rpb24obixXLEQpe2lmKG4uSiE9PTApcmV0dXJuITE7Zy5xWShXLEQsZy5FVihuLk4pPj4+MCk7cmV0dXJuITB9LGZ1bmN0aW9uKG4sVyxEKXtXPXU0KFcpOwpXIT1udWxsJiZXIT1udWxsJiYobTQobixELDApLEl4KG4uTixXKSl9LEdDMik7CmcuQ3g9Zy5nUShmdW5jdGlvbihuLFcsRCl7aWYobi5KIT09MClyZXR1cm4hMTtnLnFZKFcsRCxnLkVWKG4uTikpO3JldHVybiEwfSxmdW5jdGlvbihuLFcsRCl7RXMobixELEVfKFcpKX0scCRVKTsKSlhTPVhmKGZ1bmN0aW9uKG4sVyxEKXtpZihuLkohPT0wJiZuLkohPT0yKXJldHVybiExO1c9Y0goVyxXW2I0XXwwLEQpO24uSj09Mj9iRyhuLGs0MixXKTpXLnB1c2goZy5FVihuLk4pKTtyZXR1cm4hMH0sZnVuY3Rpb24obixXLEQpe1c9ZTYoRV8sVywhMCk7CmlmKFchPW51bGwpZm9yKGxldCBiPTA7YjxXLmxlbmd0aDtiKyspRXMobixELFdbYl0pfSxwJFUpOwpJcWo9Zy5nUShmdW5jdGlvbihuLFcsRCl7aWYobi5KIT09NSlyZXR1cm4hMTtuPW4uTjt2YXIgYj1uLkosdj1uLk4saz1iW3YrMF0saD1iW3YrMV0seD1iW3YrMl07Yj1iW3YrM107aWEobiw0KTtnLnFZKFcsRCxrPDwwfGg8PDh8eDw8MTZ8Yjw8MjQpO3JldHVybiEwfSxmdW5jdGlvbihuLFcsRCl7Vz1FXyhXKTsKVyE9bnVsbCYmKG00KG4sRCw1KSxuPW4uTixuLk4ucHVzaChXPj4+MCYyNTUpLG4uTi5wdXNoKFc+Pj44JjI1NSksbi5OLnB1c2goVz4+PjE2JjI1NSksbi5OLnB1c2goVz4+PjI0JjI1NSkpfSwkNGkpO3ZhciBTMzE9bmV3IE1hcCxBWHg9Y2xhc3MgZXh0ZW5kcyBlM3J7Y29uc3RydWN0b3IobixXKXtzdXBlcigpO3RoaXMudHlwZU5hbWU9bjt0aGlzLk49VztpZihTbyE9PVNvKXRocm93IEVycm9yKCk7UzMxLnNldChuLHRoaXMpfX07dmFyIG00Wj1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCl7dGhpcy5OPW47dGhpcy5KPUQ7dGhpcy5pc1JlcGVhdGVkPTA7dGhpcy5YPWdlO3RoaXMuZGVmYXVsdFZhbHVlPXZvaWQgMDt0aGlzLlc9Vy5tZXNzYWdlSWQhPW51bGw/eFU6dm9pZCAwfXJlZ2lzdGVyKCl7Zy5PQSh0aGlzKX19O3ZhciBjRlo9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIEVmPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19LGk2PVsxLDIsM107dmFyIFo4PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19LFVmPVsxLDIsM107dmFyIHllPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBLVUM9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIE9peD1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fSxQWmg9WzEsMiwzXTtnLk9mPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O2cuT2YucHJvdG90eXBlLkpoPVdaKDApO2cuT2YucHJvdG90eXBlLko9Zy5tRChbMCxnLm9tLFswLFBaaCx6ZyxbMCxnLm9tLC0xLHVVXSx6ZyxbMCxnLm9tLC0xLGlVLHVVXSx6ZyxbMCxnLm9tXV0sWGYoZnVuY3Rpb24obixXLEQpe2lmKG4uSiE9PTIpcmV0dXJuITE7bj1hWShuKTtjSChXLFdbYjRdfDAsRCkucHVzaChuKTtyZXR1cm4hMH0sZnVuY3Rpb24obixXLEQpe1c9ZTYoZy5EUixXLCEwKTsKaWYoVyE9bnVsbClmb3IobGV0IGg9MDtoPFcubGVuZ3RoO2grKyl7dmFyIGI9bix2PUQsaz1XW2hdO2shPW51bGwmJmlHKGIsdixrSyhrKSl9fSxtNyksCmcuZHEsWzAsZy5kcSxbMCxpNixnLmdRKGZ1bmN0aW9uKG4sVyxELGIpe2lmKG4uSiE9PTIpcmV0dXJuITE7YmEoVyxELGIsYVkobikpO3JldHVybiEwfSxOWSxtNyksCmcuZ1EoZnVuY3Rpb24obixXLEQsYil7aWYobi5KIT09MClyZXR1cm4hMTtiYShXLEQsYixnLkVWKG4uTikpO3JldHVybiEwfSxnLnJRLGcuS3gpLApnLmdRKGZ1bmN0aW9uKG4sVyxELGIpe2lmKG4uSiE9PTApcmV0dXJuITE7YmEoVyxELGIseTEobi5OKSk7cmV0dXJuITB9LHNmLHEzWildLApbMCxVZixnLmdRKGZ1bmN0aW9uKG4sVyxELGIpe24uSiE9PTA/bj0hMTooYmEoVyxELGIsZy5VVihuLk4sZy5KXykpLG49ITApO3JldHVybiBufSxnLiRuLGcuTzYpLApnLmdRKGZ1bmN0aW9uKG4sVyxELGIpe2lmKG4uSiE9PTEpcmV0dXJuITE7YmEoVyxELGIsZy5kZShuLk4pKTtyZXR1cm4hMH0sZy50OSxnLlpGKSwKemcsWzAsZy5kcSxbMCxVNixnLkU2XV1dXSxnLmdRKGZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gSjkobixXLEQpfSxmdW5jdGlvbihuLFcsRCl7eW0obixELGEwKFcpKX0sUHEpLApYZihmdW5jdGlvbihuLFcsRCl7bi5KIT09MSYmbi5KIT09Mj9uPSExOihXPWNIKFcsV1tiNF18MCxEKSxuLko9PTI/YkcobixvWSxXKTpXLnB1c2gob1kobi5OKSksbj0hMCk7cmV0dXJuIG59LGZ1bmN0aW9uKG4sVyxEKXtXPWU2KGEwLFcsITEpOwppZihXIT1udWxsKWZvcihsZXQgYj0wO2I8Vy5sZW5ndGg7YisrKXltKG4sRCxXW2JdKX0sUHEpXSk7dmFyIFppeD1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTtnLkU9bDYucHJvdG90eXBlO2cuRS5pc0VuYWJsZWQ9ZnVuY3Rpb24oKXtpZighZy5xaS5uYXZpZ2F0b3IuY29va2llRW5hYmxlZClyZXR1cm4hMTtpZighdGhpcy5pc0VtcHR5KCkpcmV0dXJuITA7dGhpcy5zZXQoIlRFU1RDT09LSUVTRU5BQkxFRCIsIjEiLHtuejo2MH0pO2lmKHRoaXMuZ2V0KCJURVNUQ09PS0lFU0VOQUJMRUQiKSE9PSIxIilyZXR1cm4hMTt0aGlzLnJlbW92ZSgiVEVTVENPT0tJRVNFTkFCTEVEIik7cmV0dXJuITB9OwpnLkUuc2V0PWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj0hMTtpZih0eXBlb2YgRD09PSJvYmplY3QiKXt2YXIgdj1ELnNhbWVTaXRlO2I9RC5zZWN1cmV8fCExO3ZhciBrPUQuZG9tYWlufHx2b2lkIDA7dmFyIGg9RC5wYXRofHx2b2lkIDA7dmFyIHg9RC5uen1pZigvWzs9XHNdLy50ZXN0KG4pKXRocm93IEVycm9yKCdJbnZhbGlkIGNvb2tpZSBuYW1lICInK24rJyInKTtpZigvWztcclxuXS8udGVzdChXKSl0aHJvdyBFcnJvcignSW52YWxpZCBjb29raWUgdmFsdWUgIicrVysnIicpO3g9PT12b2lkIDAmJih4PS0xKTtEPWs/Ijtkb21haW49IitrOiIiO2g9aD8iO3BhdGg9IitoOiIiO2I9Yj8iO3NlY3VyZSI6IiI7eD14PDA/IiI6eD09MD8iO2V4cGlyZXM9IisobmV3IERhdGUoMTk3MCwxLDEpKS50b1VUQ1N0cmluZygpOiI7ZXhwaXJlcz0iKyhuZXcgRGF0ZShEYXRlLm5vdygpK3gqMUUzKSkudG9VVENTdHJpbmcoKTt0aGlzLk4uY29va2llPW4rIj0iK1crRCtoK3grYisodiE9bnVsbD8KIjtzYW1lc2l0ZT0iK3Y6IiIpfTsKZy5FLmdldD1mdW5jdGlvbihuLFcpe3ZhciBEPW4rIj0iLGI9KHRoaXMuTi5jb29raWV8fCIiKS5zcGxpdCgiOyIpO2ZvcihsZXQgdj0wLGs7djxiLmxlbmd0aDt2Kyspe2s9Ylt2XS50cmltKCk7aWYoay5sYXN0SW5kZXhPZihELDApPT0wKXJldHVybiBrLnNsaWNlKEQubGVuZ3RoKTtpZihrPT1uKXJldHVybiIifXJldHVybiBXfTsKZy5FLnJlbW92ZT1mdW5jdGlvbihuLFcsRCl7dmFyIGI9dGhpcy5nZXQobikhPT12b2lkIDA7dGhpcy5zZXQobiwiIix7bno6MCxwYXRoOlcsZG9tYWluOkR9KTtyZXR1cm4gYn07CmcuRS51Qj1mdW5jdGlvbigpe3JldHVybiBUdih0aGlzKS5rZXlzfTsKZy5FLno3PWZ1bmN0aW9uKCl7cmV0dXJuIFR2KHRoaXMpLnZhbHVlc307CmcuRS5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIXRoaXMuTi5jb29raWV9OwpnLkUuY2xlYXI9ZnVuY3Rpb24oKXt2YXIgbj1Udih0aGlzKS5rZXlzO2ZvcihsZXQgVz1uLmxlbmd0aC0xO1c+PTA7Vy0tKXRoaXMucmVtb3ZlKG5bV10pfTsKdmFyIEp5PW5ldyBsNih0eXBlb2YgZG9jdW1lbnQ9PSJ1bmRlZmluZWQiP251bGw6ZG9jdW1lbnQpO3ZhciBVNHg9Y2xhc3N7YXN5bmMgY29tcHJlc3Mobil7dmFyIFc9bmV3IENvbXByZXNzaW9uU3RyZWFtKCJnemlwIiksRD0obmV3IFJlc3BvbnNlKFcucmVhZGFibGUpKS5hcnJheUJ1ZmZlcigpO1c9Vy53cml0YWJsZS5nZXRXcml0ZXIoKTthd2FpdCBXLndyaXRlKChuZXcgVGV4dEVuY29kZXIpLmVuY29kZShuKSk7YXdhaXQgVy5jbG9zZSgpO3JldHVybiBuZXcgVWludDhBcnJheShhd2FpdCBEKX1pc1N1cHBvcnRlZChuKXtyZXR1cm4gbjwxMDI0PyExOnR5cGVvZiBDb21wcmVzc2lvblN0cmVhbSE9PSJ1bmRlZmluZWQifX07dmFyIHlYTT1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIgRXppPWNsYXNze2NvbnN0cnVjdG9yKG4sVyl7dGhpcy5pbnRlcnZhbE1zPW47dGhpcy5jYWxsYmFjaz1XO3RoaXMuZW5hYmxlZD0hMTt0aGlzLk49KCk9PmcuVXcoKTsKdGhpcy5KPXRoaXMuTigpfXNldEludGVydmFsKG4pe3RoaXMuaW50ZXJ2YWxNcz1uO3RoaXMudGltZXImJnRoaXMuZW5hYmxlZD8odGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKTp0aGlzLnRpbWVyJiZ0aGlzLnN0b3AoKX1zdGFydCgpe3RoaXMuZW5hYmxlZD0hMDt0aGlzLnRpbWVyfHwodGhpcy50aW1lcj1zZXRUaW1lb3V0KCgpPT57dGhpcy50aWNrKCl9LHRoaXMuaW50ZXJ2YWxNcyksdGhpcy5KPXRoaXMuTigpKX1zdG9wKCl7dGhpcy5lbmFibGVkPSExOwp0aGlzLnRpbWVyJiYoY2xlYXJUaW1lb3V0KHRoaXMudGltZXIpLHRoaXMudGltZXI9dm9pZCAwKX10aWNrKCl7aWYodGhpcy5lbmFibGVkKXtsZXQgbj1NYXRoLm1heCh0aGlzLk4oKS10aGlzLkosMCk7bjx0aGlzLmludGVydmFsTXMqLjg/dGhpcy50aW1lcj1zZXRUaW1lb3V0KCgpPT57dGhpcy50aWNrKCl9LHRoaXMuaW50ZXJ2YWxNcy1uKToodGhpcy50aW1lciYmKGNsZWFyVGltZW91dCh0aGlzLnRpbWVyKSx0aGlzLnRpbWVyPXZvaWQgMCksdGhpcy5jYWxsYmFjaygpLHRoaXMuZW5hYmxlZCYmKHRoaXMuc3RvcCgpLHRoaXMuc3RhcnQoKSkpfWVsc2UgdGhpcy50aW1lcj12b2lkIDB9fTt2YXIgaWl4PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciB1R2I9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07Zy5FPWcuTVkucHJvdG90eXBlO2cuRS5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgZy5NWSh0aGlzLngsdGhpcy55KX07CmcuRS5lcXVhbHM9ZnVuY3Rpb24obil7cmV0dXJuIG4gaW5zdGFuY2VvZiBnLk1ZJiZSXyh0aGlzLG4pfTsKZy5FLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLng9TWF0aC5jZWlsKHRoaXMueCk7dGhpcy55PU1hdGguY2VpbCh0aGlzLnkpO3JldHVybiB0aGlzfTsKZy5FLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGguZmxvb3IodGhpcy54KTt0aGlzLnk9TWF0aC5mbG9vcih0aGlzLnkpO3JldHVybiB0aGlzfTsKZy5FLnJvdW5kPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGgucm91bmQodGhpcy54KTt0aGlzLnk9TWF0aC5yb3VuZCh0aGlzLnkpO3JldHVybiB0aGlzfTsKZy5FLnNjYWxlPWZ1bmN0aW9uKG4sVyl7dGhpcy54Kj1uO3RoaXMueSo9dHlwZW9mIFc9PT0ibnVtYmVyIj9XOm47cmV0dXJuIHRoaXN9O2cuRT1nLlFlLnByb3RvdHlwZTtnLkUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGcuUWUodGhpcy53aWR0aCx0aGlzLmhlaWdodCl9OwpnLkUuYXNwZWN0UmF0aW89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy53aWR0aC90aGlzLmhlaWdodH07CmcuRS5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIWNPKHRoaXMpfTsKZy5FLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLndpZHRoPU1hdGguY2VpbCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmNlaWwodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKZy5FLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLmZsb29yKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGguZmxvb3IodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKZy5FLnJvdW5kPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLnJvdW5kKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGgucm91bmQodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKZy5FLnNjYWxlPWZ1bmN0aW9uKG4sVyl7dGhpcy53aWR0aCo9bjt0aGlzLmhlaWdodCo9dHlwZW9mIFc9PT0ibnVtYmVyIj9XOm47cmV0dXJuIHRoaXN9O3ZhciBwVD0iY29uc3RydWN0b3IgaGFzT3duUHJvcGVydHkgaXNQcm90b3R5cGVPZiBwcm9wZXJ0eUlzRW51bWVyYWJsZSB0b0xvY2FsZVN0cmluZyB0b1N0cmluZyB2YWx1ZU9mIi5zcGxpdCgiICIpO3ZhciAkQj1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuTj1uPT09cksmJld8fCIifXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuTn19LHJLPXt9O25ldyAkQihySywiIik7dmFyIE8wPXtjZWxscGFkZGluZzoiY2VsbFBhZGRpbmciLGNlbGxzcGFjaW5nOiJjZWxsU3BhY2luZyIsY29sc3BhbjoiY29sU3BhbiIsZnJhbWVib3JkZXI6ImZyYW1lQm9yZGVyIixoZWlnaHQ6ImhlaWdodCIsbWF4bGVuZ3RoOiJtYXhMZW5ndGgiLG5vbmNlOiJub25jZSIscm9sZToicm9sZSIscm93c3Bhbjoicm93U3BhbiIsdHlwZToidHlwZSIsdXNlbWFwOiJ1c2VNYXAiLHZhbGlnbjoidkFsaWduIix3aWR0aDoid2lkdGgifTtnLkU9ZlQucHJvdG90eXBlO2cuRS5lXz1mdW5jdGlvbigpe3JldHVybiBBSyh0aGlzLk4pfTsKZy5FLmdldEVsZW1lbnRzQnlUYWdOYW1lPWZ1bmN0aW9uKG4sVyl7cmV0dXJuKFd8fHRoaXMuTikuZ2V0RWxlbWVudHNCeVRhZ05hbWUoU3RyaW5nKG4pKX07CmcuRS5CSj1mdW5jdGlvbihuKXtyZXR1cm4gZy5LVChuLHRoaXMuTil9OwpnLkUuY3JlYXRlRWxlbWVudD1mdW5jdGlvbihuKXtyZXR1cm4gdWsodGhpcy5OLG4pfTsKZy5FLmFwcGVuZENoaWxkPWZ1bmN0aW9uKG4sVyl7bi5hcHBlbmRDaGlsZChXKX07CmcuRS5hcHBlbmQ9ZnVuY3Rpb24obixXKXtvaChnLkpLKG4pLG4sYXJndW1lbnRzLDEpfTsKZy5FLmNhbkhhdmVDaGlsZHJlbj1mdW5jdGlvbihuKXtpZihuLm5vZGVUeXBlIT0xKXJldHVybiExO3N3aXRjaChuLnRhZ05hbWUpe2Nhc2UgIkFQUExFVCI6Y2FzZSAiQVJFQSI6Y2FzZSAiQkFTRSI6Y2FzZSAiQlIiOmNhc2UgIkNPTCI6Y2FzZSAiQ09NTUFORCI6Y2FzZSAiRU1CRUQiOmNhc2UgIkZSQU1FIjpjYXNlICJIUiI6Y2FzZSAiSU1HIjpjYXNlICJJTlBVVCI6Y2FzZSAiSUZSQU1FIjpjYXNlICJJU0lOREVYIjpjYXNlICJLRVlHRU4iOmNhc2UgIkxJTksiOmNhc2UgIk5PRlJBTUVTIjpjYXNlICJOT1NDUklQVCI6Y2FzZSAiTUVUQSI6Y2FzZSAiT0JKRUNUIjpjYXNlICJQQVJBTSI6Y2FzZSAiU0NSSVBUIjpjYXNlICJTT1VSQ0UiOmNhc2UgIlNUWUxFIjpjYXNlICJUUkFDSyI6Y2FzZSAiV0JSIjpyZXR1cm4hMX1yZXR1cm4hMH07CmcuRS5yZW1vdmVOb2RlPWcuQ1Q7Zy5FLmNvbnRhaW5zPWcuQng7Zy5FLmlzRm9jdXNhYmxlPU1jO3ZhciBvek09Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfUdZKCl7cmV0dXJuIEhXKHRoaXMsMSl9fTt2YXIgVlE9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIGJJPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19LGY0Mj1LOChiSSk7dmFyIGtFPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBjeD1bInBsYXRmb3JtIiwicGxhdGZvcm1WZXJzaW9uIiwiYXJjaGl0ZWN0dXJlIiwibW9kZWwiLCJ1YUZ1bGxWZXJzaW9uIl0sUVE9bmV3IGJJLGFoPW51bGw7dmFyIFdMPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBkNGg9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIHozdD1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobiw0KX19O3ZhciBCcT1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobiwzNyl9Uygpe3ZhciBuPXRoaXMubDk7cmV0dXJuIHg5KG4sbltiNF18MCxkNGgsNykhPT12b2lkIDB9fTt2YXIgbHF0PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuLDE5KX1hVihuKXtyZXR1cm4gS24odGhpcywyLG4pfX07dmFyIFRNQz1jbGFzc3tjb25zdHJ1Y3RvcihuLFc9ITEpe3RoaXMuZ1I9Vzt0aGlzLnVhY2g9dGhpcy5sb2NhbGU9bnVsbDt0aGlzLko9MDt0aGlzLmlzRmluYWw9ITE7dGhpcy5OPW5ldyBscXQ7TnVtYmVyLmlzSW50ZWdlcihuKSYmdGhpcy5OLmFWKG4pO1d8fCh0aGlzLmxvY2FsZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJsYW5nIikpO3ZMKHRoaXMsbmV3IFdMKX1hVihuKXt0aGlzLk4uYVYobik7cmV0dXJuIHRoaXN9YnVpbGQobixXPTAsRD0wLGI9bnVsbCx2PTAsaz0wKXtpZighdGhpcy5nUil7dmFyIGg9REQodGhpcyk7dmFyIHg9bmV3IG96TTt4PUtuKHgsMSx0aGlzLkopO3g9b3ooeCwyLE9fKHRoaXMuaXNGaW5hbCkpO0Q9b3ooeCwzLGcueVAoRD4wP0Q6dm9pZCAwKSk7dj1veihELDQsZy55UCh2PjA/djp2b2lkIDApKTtrPW96KHYsNSxnLnlQKGs+MD9rOnZvaWQgMCkpO3Y9ay5sOTtEPXZbYjRdfDA7az12OShrLEQpP2s6S0coayx2LEQpP09LKGssCnYpOm5ldyBrLmNvbnN0cnVjdG9yKG1fKHYsRCwhMCkpOyQ5KGgsb3pNLDEwLGspfWg9dGhpcy5OLmNsb25lKCk7az1EYXRlLm5vdygpLnRvU3RyaW5nKCk7aD1veihoLDQsZy5sNChrKSk7bj1uLnNsaWNlKCk7bj1zVihoLEJxLDMsbik7YiYmKGg9bmV3IGlpeCxiPW96KGgsMTMsZy55UChiKSksaD1uZXcgdUdiLGI9JDkoaCxpaXgsMixiKSxoPW5ldyB6M3QsYj0kOShoLHVHYiwxLGIpLGI9S24oYiwyLDkpLCQ5KG4sejN0LDE4LGIpKTtXJiZJWShuLDE0LFcpO3JldHVybiBufX07dmFyIEdBO0dBPWcuWmw/IndlYmtpdFRyYW5zaXRpb25FbmQiOiJ0cmFuc2l0aW9uZW5kIjtnLmhILnByb3RvdHlwZS5KPTA7Zy5oSC5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLk49dGhpcy5XPXRoaXMuWDt0aGlzLko9MH07CmcuaEgucHJvdG90eXBlLmdldFZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuV307dmFyIGpmdz1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobiw4KX19LENaaD1LOChqZncpO3ZhciBGUDtGUD1uZXcgbTRaKDE3NTIzNzM3NSxqZncsY2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX0pO3ZhciBCTVo9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dGhpcy5jb21wb25lbnRJZD0iIjt0aGlzLk49W107dGhpcy5WUT0iIjt0aGlzLnBhZ2VJZD1udWxsO3RoaXMuZSQ9dGhpcy50dz0tMTt0aGlzLks9dGhpcy5leHBlcmltZW50SWRzPW51bGw7dGhpcy5PPXRoaXMuY0o9dGhpcy5WPXRoaXMuWD0wO3RoaXMuSEo9MTt0aGlzLnRpbWVvdXRNaWxsaXM9MDt0aGlzLmJkPSExO3RoaXMubG9nU291cmNlPW4ubG9nU291cmNlO3RoaXMubjE9bi5uMXx8KCgpPT57fSk7CnRoaXMuVz1uZXcgVE1DKG4ubG9nU291cmNlLG4uZ1IpO3RoaXMubmV0d29yaz1uLm5ldHdvcmt8fG51bGw7dGhpcy5QZz1uLlBnfHxudWxsO3RoaXMuWT1uLmN1fHxudWxsO3RoaXMuc2Vzc2lvbkluZGV4PW4uc2Vzc2lvbkluZGV4fHxudWxsO3RoaXMub3g9bi5veHx8ITE7dGhpcy5sb2dnZXI9bnVsbDt0aGlzLndpdGhDcmVkZW50aWFscz0hbi5rQzt0aGlzLmdSPW4uZ1J8fCExO3RoaXMuRD0hdGhpcy5nUiYmISFnLmlrKCkmJiEhZy5paygpLm5hdmlnYXRvciYmZy5paygpLm5hdmlnYXRvci5zZW5kQmVhY29uIT09dm9pZCAwO3RoaXMuUyQ9dHlwZW9mIFVSTFNlYXJjaFBhcmFtcyE9PSJ1bmRlZmluZWQiJiYhIShuZXcgVVJMKExLKCkpKS5zZWFyY2hQYXJhbXMmJiEhKG5ldyBVUkwoTEsoKSkpLnNlYXJjaFBhcmFtcy5zZXQ7dmFyIFc9bksobmV3IFdMKTt2TCh0aGlzLlcsVyk7dGhpcy5qPW5ldyBnLmhIKDFFNCwzRTUsLjEpO249STRTKHRoaXMsbi5iMSk7dGhpcy5KPW5ldyBFemkodGhpcy5qLmdldFZhbHVlKCksCm4pO3RoaXMuVEM9bmV3IEV6aSg2RTUsbik7dGhpcy5veHx8dGhpcy5UQy5zdGFydCgpO3RoaXMuZ1J8fChkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIiwoKT0+e2RvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PSJoaWRkZW4iJiZlZyh0aGlzKX0pLGcuaWsoKT8uYWRkRXZlbnRMaXN0ZW5lcj8uKCJwYWdlaGlkZSIsKCk9PntlZyh0aGlzKX0pKX1tQSgpe2VnKHRoaXMpOwp0aGlzLkouc3RvcCgpO3RoaXMuVEMuc3RvcCgpO3N1cGVyLm1BKCl9ZGlzcGF0Y2gobil7aWYobiBpbnN0YW5jZW9mIEJxKXRoaXMubG9nKG4pO2Vsc2UgdHJ5e3ZhciBXPW5ldyBCcSxEPW4uYlkoKTt2YXIgYj1nLlNFKFcsOCxEKTt0aGlzLmxvZyhiKX1jYXRjaHt9fWxvZyhuKXtpZih0aGlzLlMkKXtuPW4uY2xvbmUoKTt2YXIgVz10aGlzLkhKKys7bj1JWShuLDIxLFcpO3RoaXMuY29tcG9uZW50SWQmJmcuU0UobiwyNix0aGlzLmNvbXBvbmVudElkKTtXPW47e3ZhciBEPWlXKFcsMSk7bGV0IGI9dHlwZW9mIEQ7RD1EPT1udWxsP0Q6Yj09PSJiaWdpbnQiP1N0cmluZyhkWig2NCxEKSk6WkIoRCk/Yj09PSJzdHJpbmciP0I5KEQpOkM1KEQpOnZvaWQgMH1EPT1udWxsJiYoRD1EYXRlLm5vdygpLEQ9TnVtYmVyLmlzRmluaXRlKEQpP0QudG9TdHJpbmcoKToiMCIsb3ooVywxLGcubDQoRCkpKTtEPWlXKFcsMTUsdm9pZCAwLHZvaWQgMCxGRCk7RCE9bnVsbCYmKHR5cGVvZiBEPT09ImJpZ2ludCI/CnNLKEQpP0Q9TnVtYmVyKEQpOihEPWRaKDY0LEQpLEQ9c0soRCk/TnVtYmVyKEQpOlN0cmluZyhEKSk6RD1aQihEKT90eXBlb2YgRD09PSJudW1iZXIiP0M1KEQpOkI5KEQpOnZvaWQgMCk7RCE9bnVsbHx8SVkoVywxNSwobmV3IERhdGUpLmdldFRpbWV6b25lT2Zmc2V0KCkqNjApO3RoaXMuZXhwZXJpbWVudElkcyYmKEQ9dGhpcy5leHBlcmltZW50SWRzLmNsb25lKCksJDkoVyx5WE0sMTYsRCkpO1c9dGhpcy5OLmxlbmd0aC0xRTMrMTtXPjAmJih0aGlzLk4uc3BsaWNlKDAsVyksdGhpcy5YKz1XKTt0aGlzLk4ucHVzaChuKTt0aGlzLm94fHx0aGlzLkouZW5hYmxlZHx8dGhpcy5KLnN0YXJ0KCl9fWZsdXNoKG4sVyl7aWYodGhpcy5OLmxlbmd0aD09PTApbiYmbigpO2Vsc2UgaWYodGhpcy5iZCYmdGhpcy5EKXRoaXMuVy5KPTMsQUZaKHRoaXMpO2Vsc2V7dmFyIEQ9RGF0ZS5ub3coKTtpZih0aGlzLmUkPkQmJnRoaXMudHc8RClXJiZXKCJ0aHJvdHRsZWQiKTtlbHNle3RoaXMubmV0d29yayYmCih0eXBlb2YgdGhpcy5uZXR3b3JrLkdZPT09ImZ1bmN0aW9uIj9IYlModGhpcy5XLHRoaXMubmV0d29yay5HWSgpKTp0aGlzLlcuSj0wKTt2YXIgYj10aGlzLlcuYnVpbGQodGhpcy5OLHRoaXMuWCx0aGlzLlYsdGhpcy5QZyx0aGlzLmNKLHRoaXMuTyksdj10aGlzLm4xKCk7aWYodiYmdGhpcy5WUT09PXYpVyYmVygic3RhbGUtYXV0aC10b2tlbiIpO2Vsc2V7dGhpcy5OPVtdO3RoaXMuSi5lbmFibGVkJiZ0aGlzLkouc3RvcCgpO3RoaXMuWD0wO0Q9Yi5iWSgpO2xldCBrO3RoaXMuSyYmdGhpcy5LLmlzU3VwcG9ydGVkKEQubGVuZ3RoKSYmKGs9dGhpcy5LLmNvbXByZXNzKEQpKTtsZXQgaD1tVXcodGhpcyxELHYpLHg9Rz0+e3RoaXMuai5yZXNldCgpO3RoaXMuSi5zZXRJbnRlcnZhbCh0aGlzLmouZ2V0VmFsdWUoKSk7aWYoRyl7dmFyIHI9bnVsbDt0cnl7bGV0IE49SlNPTi5zdHJpbmdpZnkoSlNPTi5wYXJzZShHLnJlcGxhY2UoIildfSdcbiIsIiIpKSk7cj1DWmgoTil9Y2F0Y2goTil7fXImJgooRz1OdW1iZXIocG4ociwxLGcuJFUoIi0xIikpKSxHPjAmJih0aGlzLnR3PURhdGUubm93KCksdGhpcy5lJD10aGlzLnR3K0cpLHR2KHIubDksRlAuTiksR3oocixGUC5OKSxyPUZQLko/RlAuWChyLEZQLkosRlAuTixGUC5XKTpGUC5YKHIsRlAuTixudWxsLEZQLlcpLHI9cj09PW51bGw/dm9pZCAwOnIpJiYocj1hUChyLDEsLTEpLHIhPT0tMSYmKHRoaXMuaj1uZXcgZy5oSChyPDE/MTpyLDNFNSwuMSksdGhpcy5KLnNldEludGVydmFsKHRoaXMuai5nZXRWYWx1ZSgpKSkpfW4mJm4oKTt0aGlzLlY9MH0sTD0oRyxyKT0+e3ZhciBOPVZHKGIsQnEsMyk7CnZhciBIPU51bWJlcihwbihiLDE0KSk7Zy54RSh0aGlzLmopO3RoaXMuSi5zZXRJbnRlcnZhbCh0aGlzLmouZ2V0VmFsdWUoKSk7Rz09PTQwMSYmdiYmKHRoaXMuVlE9dik7SCYmKHRoaXMuWCs9SCk7cj09PXZvaWQgMCYmKHI9dGhpcy5pc1JldHJ5YWJsZShHKSk7ciYmKHRoaXMuTj1OLmNvbmNhdCh0aGlzLk4pLHRoaXMub3h8fHRoaXMuSi5lbmFibGVkfHx0aGlzLkouc3RhcnQoKSk7VyYmVygibmV0LXNlbmQtZmFpbGVkIixHKTsrK3RoaXMuVn0sZT0oKT0+e3RoaXMubmV0d29yayYmdGhpcy5uZXR3b3JrLnNlbmQoaCx4LEwpfTsKaz9rLnRoZW4oRz0+e2guWkpbIkNvbnRlbnQtRW5jb2RpbmciXT0iZ3ppcCI7aC5aSlsiQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL2JpbmFyeSI7aC5ib2R5PUc7aC5vJD0yO2UoKX0sKCk9PntlKCl9KTplKCl9fX19aXNSZXRyeWFibGUobil7cmV0dXJuIDUwMDw9biYmbjw2MDB8fG49PT00MDF8fG49PT0wfX07dmFyIEZVaj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuUiQ9dHlwZW9mIEFib3J0Q29udHJvbGxlciE9PSJ1bmRlZmluZWQifWFzeW5jIHNlbmQobixXLEQpe3ZhciBiPXRoaXMuUiQ/bmV3IEFib3J0Q29udHJvbGxlcjp2b2lkIDAsdj1iJiZuLnRpbWVvdXRNaWxsaXM+MD9zZXRUaW1lb3V0KCgpPT57Yi5hYm9ydCgpfSxuLnRpbWVvdXRNaWxsaXMpOnZvaWQgMDsKdHJ5e2xldCBrPWF3YWl0IGZldGNoKG4udXJsLHttZXRob2Q6bi5yZXF1ZXN0VHlwZSxoZWFkZXJzOnsuLi5uLlpKfSwuLi4obi5ib2R5JiZ7Ym9keTpuLmJvZHl9KSwuLi4obi53aXRoQ3JlZGVudGlhbHMmJntjcmVkZW50aWFsczoiaW5jbHVkZSJ9KSxzaWduYWw6bi50aW1lb3V0TWlsbGlzJiZiP2Iuc2lnbmFsOm51bGx9KTtrLnN0YXR1cz09PTIwMD9XPy4oYXdhaXQgay50ZXh0KCkpOkQ/LihrLnN0YXR1cyl9Y2F0Y2goayl7c3dpdGNoKGs/Lm5hbWUpe2Nhc2UgIkFib3J0RXJyb3IiOkQ/Lig0MDgpO2JyZWFrO2RlZmF1bHQ6RD8uKDQwMCl9fWZpbmFsbHl7Y2xlYXJUaW1lb3V0KHYpfX1HWSgpe3JldHVybiA0fX07dmFyIGtZPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCk7dGhpcy5sb2dTb3VyY2U9MTgyODt0aGlzLnNlc3Npb25JbmRleD0iMCI7dGhpcy5Saj0iaHR0cHM6Ly9wbGF5Lmdvb2dsZS5jb20vbG9nP2Zvcm1hdD1qc29uJmhhc2Zhc3Q9dHJ1ZSI7dGhpcy5uZXR3b3JrPXRoaXMuYnVpbGRMYWJlbD1udWxsO3RoaXMuY29tcG9uZW50SWQ9IiI7dGhpcy5OPXRoaXMuUGc9bnVsbDt0aGlzLko9ITE7dGhpcy5sb2dnZXI9dGhpcy5wYWdlSWQ9bnVsbH1rQygpe3RoaXMuVz0hMDtyZXR1cm4gdGhpc31idWlsZCgpe3RoaXMubmV0d29ya3x8KHRoaXMubmV0d29yaz1uZXcgRlVqKTt2YXIgbj1uZXcgQk1aKHtsb2dTb3VyY2U6dGhpcy5sb2dTb3VyY2UsbjE6dGhpcy5uMT90aGlzLm4xOkJPLHNlc3Npb25JbmRleDp0aGlzLnNlc3Npb25JbmRleCxjdTp0aGlzLlJqLGdSOiExLG94OiExLGtDOnRoaXMuVyxiMTp0aGlzLmIxLG5ldHdvcms6dGhpcy5uZXR3b3JrfSk7Zy51KHRoaXMsCm4pO2lmKHRoaXMuYnVpbGRMYWJlbCl7dmFyIFc9dGhpcy5idWlsZExhYmVsLEQ9REQobi5XKTtnLlNFKEQsNyxXKX1uLks9bmV3IFU0eDt0aGlzLmNvbXBvbmVudElkJiYobi5jb21wb25lbnRJZD10aGlzLmNvbXBvbmVudElkKTt0aGlzLlBnJiYobi5QZz10aGlzLlBnKTt0aGlzLnBhZ2VJZCYmKG4ucGFnZUlkPXRoaXMucGFnZUlkKTt0aGlzLk4mJigoRD10aGlzLk4pPyhuLmV4cGVyaW1lbnRJZHN8fChuLmV4cGVyaW1lbnRJZHM9bmV3IHlYTSksVz1uLmV4cGVyaW1lbnRJZHMsRD1ELmJZKCksZy5TRShXLDQsRCkpOm4uZXhwZXJpbWVudElkcyYmb3oobi5leHBlcmltZW50SWRzLDQpKTt0aGlzLkomJihuLmJkPW4uRCk7SkZaKG4uVyk7dGhpcy5uZXR3b3JrLmFWJiZ0aGlzLm5ldHdvcmsuYVYodGhpcy5sb2dTb3VyY2UpO3RoaXMubmV0d29yay5oUyYmdGhpcy5uZXR3b3JrLmhTKG4pO3JldHVybiBufX07dmFyIGE0aj1jbGFzcyBleHRlbmRzIGcuRk17Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLmxvZ1NvdXJjZT0xODI4O3RoaXMuY29tcG9uZW50SWQ9IiI7bnx8KG49bmV3IGtZLG4uY29tcG9uZW50SWQ9IiIsZy51KHRoaXMsbiksbj1uLmJ1aWxkKCkpO3RoaXMuTj1ufWZsdXNoKG4pe249bnx8W107aWYobi5sZW5ndGgpe2xldCBXPW5ldyBaaXgsRD1bXTtmb3IobGV0IGI9MDtiPG4ubGVuZ3RoO2IrKyl7bGV0IHY9bltiXSxrPXU2KHYpO0QucHVzaChrKTt2LmNsZWFyKCl9c1YoVyxnLk9mLDEsRCk7dGhpcy5OLmRpc3BhdGNoKFcpO3RoaXMuTi5mbHVzaCgpfX19O3ZhciBxNT1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn19O3ZhciB3JGI9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQpe3RoaXMuSj1uO3RoaXMuVz1XO3RoaXMuZmllbGRzPUR8fFtdO3RoaXMuTj1uZXcgTWFwfWNsZWFyKCl7dGhpcy5OLmNsZWFyKCl9fTt2YXIgaWU9Y2xhc3MgZXh0ZW5kcyB3JGJ7Y29uc3RydWN0b3IobixXKXtzdXBlcihuLDMsVyl9fTt2YXIgeTg9Y2xhc3MgZXh0ZW5kcyB3JGJ7Y29uc3RydWN0b3IobixXKXtzdXBlcihuLDIsVyl9ZEUobiwuLi5XKXt5RloodGhpcyxuLC4uLlcpfX07JEUucHJvdG90eXBlLnN0b3BQcm9wYWdhdGlvbj1mdW5jdGlvbigpe3RoaXMuSj0hMH07CiRFLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbigpe3RoaXMuZGVmYXVsdFByZXZlbnRlZD0hMH07Zy5peChyRCwkRSk7CnJELnByb3RvdHlwZS5pbml0PWZ1bmN0aW9uKG4sVyl7dmFyIEQ9dGhpcy50eXBlPW4udHlwZSxiPW4uY2hhbmdlZFRvdWNoZXMmJm4uY2hhbmdlZFRvdWNoZXMubGVuZ3RoP24uY2hhbmdlZFRvdWNoZXNbMF06bnVsbDt0aGlzLnRhcmdldD1uLnRhcmdldHx8bi5zcmNFbGVtZW50O3RoaXMuY3VycmVudFRhcmdldD1XO1c9bi5yZWxhdGVkVGFyZ2V0O1d8fChEPT0ibW91c2VvdmVyIj9XPW4uZnJvbUVsZW1lbnQ6RD09Im1vdXNlb3V0IiYmKFc9bi50b0VsZW1lbnQpKTt0aGlzLnJlbGF0ZWRUYXJnZXQ9VztiPyh0aGlzLmNsaWVudFg9Yi5jbGllbnRYIT09dm9pZCAwP2IuY2xpZW50WDpiLnBhZ2VYLHRoaXMuY2xpZW50WT1iLmNsaWVudFkhPT12b2lkIDA/Yi5jbGllbnRZOmIucGFnZVksdGhpcy5zY3JlZW5YPWIuc2NyZWVuWHx8MCx0aGlzLnNjcmVlblk9Yi5zY3JlZW5ZfHwwKToodGhpcy5jbGllbnRYPW4uY2xpZW50WCE9PXZvaWQgMD9uLmNsaWVudFg6bi5wYWdlWCx0aGlzLmNsaWVudFk9Cm4uY2xpZW50WSE9PXZvaWQgMD9uLmNsaWVudFk6bi5wYWdlWSx0aGlzLnNjcmVlblg9bi5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT1uLnNjcmVlbll8fDApO3RoaXMuYnV0dG9uPW4uYnV0dG9uO3RoaXMua2V5Q29kZT1uLmtleUNvZGV8fDA7dGhpcy5rZXk9bi5rZXl8fCIiO3RoaXMuY2hhckNvZGU9bi5jaGFyQ29kZXx8KEQ9PSJrZXlwcmVzcyI/bi5rZXlDb2RlOjApO3RoaXMuY3RybEtleT1uLmN0cmxLZXk7dGhpcy5hbHRLZXk9bi5hbHRLZXk7dGhpcy5zaGlmdEtleT1uLnNoaWZ0S2V5O3RoaXMubWV0YUtleT1uLm1ldGFLZXk7dGhpcy5wb2ludGVySWQ9bi5wb2ludGVySWR8fDA7dGhpcy5wb2ludGVyVHlwZT1uLnBvaW50ZXJUeXBlO3RoaXMuc3RhdGU9bi5zdGF0ZTt0aGlzLk49bjtuLmRlZmF1bHRQcmV2ZW50ZWQmJnJELlRCLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyl9OwpyRC5wcm90b3R5cGUuc3RvcFByb3BhZ2F0aW9uPWZ1bmN0aW9uKCl7ckQuVEIuc3RvcFByb3BhZ2F0aW9uLmNhbGwodGhpcyk7dGhpcy5OLnN0b3BQcm9wYWdhdGlvbj90aGlzLk4uc3RvcFByb3BhZ2F0aW9uKCk6dGhpcy5OLmNhbmNlbEJ1YmJsZT0hMH07CnJELnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbigpe3JELlRCLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyk7dmFyIG49dGhpcy5OO24ucHJldmVudERlZmF1bHQ/bi5wcmV2ZW50RGVmYXVsdCgpOm4ucmV0dXJuVmFsdWU9ITF9O3ZhciBzMj0iY2xvc3VyZV9saXN0ZW5hYmxlXyIrKE1hdGgucmFuZG9tKCkqMUU2fDApO3ZhciB1SWg9MDtnLkU9ZksucHJvdG90eXBlO2cuRS5hZGQ9ZnVuY3Rpb24obixXLEQsYix2KXt2YXIgaz1uLnRvU3RyaW5nKCk7bj10aGlzLmxpc3RlbmVyc1trXTtufHwobj10aGlzLmxpc3RlbmVyc1trXT1bXSx0aGlzLk4rKyk7dmFyIGg9SVcobixXLGIsdik7aD4tMT8oVz1uW2hdLER8fChXLnFfPSExKSk6KFc9bmV3IG8zYihXLHRoaXMuc3JjLGssISFiLHYpLFcucV89RCxuLnB1c2goVykpO3JldHVybiBXfTsKZy5FLnJlbW92ZT1mdW5jdGlvbihuLFcsRCxiKXtuPW4udG9TdHJpbmcoKTtpZighKG4gaW4gdGhpcy5saXN0ZW5lcnMpKXJldHVybiExO3ZhciB2PXRoaXMubGlzdGVuZXJzW25dO1c9SVcodixXLEQsYik7cmV0dXJuIFc+LTE/KEhMKHZbV10pLGcuQk0odixXKSx2Lmxlbmd0aD09MCYmKGRlbGV0ZSB0aGlzLmxpc3RlbmVyc1tuXSx0aGlzLk4tLSksITApOiExfTsKZy5FLlRpPWZ1bmN0aW9uKCl7dmFyIG49MDtmb3IobGV0IFcgaW4gdGhpcy5saXN0ZW5lcnMpe2xldCBEPXRoaXMubGlzdGVuZXJzW1ddO2ZvcihsZXQgYj0wO2I8RC5sZW5ndGg7YisrKSsrbixITChEW2JdKTtkZWxldGUgdGhpcy5saXN0ZW5lcnNbV107dGhpcy5OLS19fTsKZy5FLnNjPWZ1bmN0aW9uKG4sVyxELGIpe249dGhpcy5saXN0ZW5lcnNbbi50b1N0cmluZygpXTt2YXIgdj0tMTtuJiYodj1JVyhuLFcsRCxiKSk7cmV0dXJuIHY+LTE/blt2XTpudWxsfTsKZy5FLmhhc0xpc3RlbmVyPWZ1bmN0aW9uKG4sVyl7dmFyIEQ9biE9PXZvaWQgMCxiPUQ/bi50b1N0cmluZygpOiIiLHY9VyE9PXZvaWQgMDtyZXR1cm4gZy5EbCh0aGlzLmxpc3RlbmVycyxmdW5jdGlvbihrKXtmb3IobGV0IGg9MDtoPGsubGVuZ3RoOysraClpZighKEQmJmtbaF0udHlwZSE9Ynx8diYma1toXS5jYXB0dXJlIT1XKSlyZXR1cm4hMDtyZXR1cm4hMX0pfTt2YXIgUEw9ImNsb3N1cmVfbG1fIisoTWF0aC5yYW5kb20oKSoxRTZ8MCksaUk9e30sVTI9MCx1ST0iX19jbG9zdXJlX2V2ZW50c19mbl8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApO2cuaXgoZy5vVyxnLkZNKTtnLm9XLnByb3RvdHlwZVtzMl09ITA7Zy5FPWcub1cucHJvdG90eXBlO2cuRS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKG4sVyxELGIpe0FIKHRoaXMsbixXLEQsYil9OwpnLkUucmVtb3ZlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihuLFcsRCxiKXt5Nyh0aGlzLG4sVyxELGIpfTsKZy5FLmRpc3BhdGNoRXZlbnQ9ZnVuY3Rpb24obil7dmFyIFc9dGhpcy5sWjtpZihXKXt2YXIgRD1bXTtmb3IodmFyIGI9MTtXO1c9Vy5sWilELnB1c2goVyksKytifVc9dGhpcy5IZDtiPW4udHlwZXx8bjtpZih0eXBlb2Ygbj09PSJzdHJpbmciKW49bmV3ICRFKG4sVyk7ZWxzZSBpZihuIGluc3RhbmNlb2YgJEUpbi50YXJnZXQ9bi50YXJnZXR8fFc7ZWxzZXt2YXIgdj1uO249bmV3ICRFKGIsVyk7Zy5ZeShuLHYpfXY9ITA7dmFyIGs7aWYoRClmb3Ioaz1ELmxlbmd0aC0xOyFuLkomJms+PTA7ay0tKXt2YXIgaD1uLmN1cnJlbnRUYXJnZXQ9RFtrXTt2PWREKGgsYiwhMCxuKSYmdn1uLkp8fChoPW4uY3VycmVudFRhcmdldD1XLHY9ZEQoaCxiLCEwLG4pJiZ2LG4uSnx8KHY9ZEQoaCxiLCExLG4pJiZ2KSk7aWYoRClmb3Ioaz0wOyFuLkomJms8RC5sZW5ndGg7aysrKWg9bi5jdXJyZW50VGFyZ2V0PURba10sdj1kRChoLGIsITEsbikmJnY7cmV0dXJuIHZ9OwpnLkUubUE9ZnVuY3Rpb24oKXtnLm9XLlRCLm1BLmNhbGwodGhpcyk7dGhpcy5kXyYmdGhpcy5kXy5UaSgpO3RoaXMubFo9bnVsbH07CmcuRS5TXz1mdW5jdGlvbihuLFcsRCxiKXtyZXR1cm4gdGhpcy5kXy5hZGQoU3RyaW5nKG4pLFcsITEsRCxiKX07CmcuRS5lRj1mdW5jdGlvbihuLFcsRCxiKXtyZXR1cm4gdGhpcy5kXy5hZGQoU3RyaW5nKG4pLFcsITAsRCxiKX07CmcuRS53SD1mdW5jdGlvbihuLFcsRCxiKXt0aGlzLmRfLnJlbW92ZShTdHJpbmcobiksVyxELGIpfTsKZy5FLnNjPWZ1bmN0aW9uKG4sVyxELGIpe3JldHVybiB0aGlzLmRfLnNjKFN0cmluZyhuKSxXLEQsYil9OwpnLkUuaGFzTGlzdGVuZXI9ZnVuY3Rpb24obixXKXtyZXR1cm4gdGhpcy5kXy5oYXNMaXN0ZW5lcihuIT09dm9pZCAwP1N0cmluZyhuKTp2b2lkIDAsVyl9O2cuejc9dHlwZW9mIEFzeW5jQ29udGV4dCE9PSJ1bmRlZmluZWQiJiZ0eXBlb2YgQXN5bmNDb250ZXh0LlNuYXBzaG90PT09ImZ1bmN0aW9uIj9uPT5uJiZBc3luY0NvbnRleHQuU25hcHNob3Qud3JhcChuKTpuPT5uO3ZhciBNMlM9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLlc9bjt0aGlzLlg9Vzt0aGlzLko9MDt0aGlzLk49bnVsbH1nZXQoKXtpZih0aGlzLko+MCl7dGhpcy5KLS07dmFyIG49dGhpcy5OO3RoaXMuTj1uLm5leHQ7bi5uZXh0PW51bGx9ZWxzZSBuPXRoaXMuVygpO3JldHVybiBufXB1dChuKXt0aGlzLlgobik7dGhpcy5KPDEwMCYmKHRoaXMuSisrLG4ubmV4dD10aGlzLk4sdGhpcy5OPW4pfX07dmFyIGxJO3ZhciBSM2I9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLko9dGhpcy5OPW51bGx9YWRkKG4sVyl7dmFyIEQ9Q0suZ2V0KCk7RC5zZXQobixXKTt0aGlzLko/dGhpcy5KLm5leHQ9RDp0aGlzLk49RDt0aGlzLko9RH1yZW1vdmUoKXt2YXIgbj1udWxsO3RoaXMuTiYmKG49dGhpcy5OLHRoaXMuTj10aGlzLk4ubmV4dCx0aGlzLk58fCh0aGlzLko9bnVsbCksbi5uZXh0PW51bGwpO3JldHVybiBufX0sQ0s9bmV3IE0yUygoKT0+bmV3IFFmMSxuPT5uLnJlc2V0KCkpLFFmMT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMubmV4dD10aGlzLnNjb3BlPXRoaXMuTj1udWxsfXNldChuLFcpe3RoaXMuTj1uOwp0aGlzLnNjb3BlPVc7dGhpcy5uZXh0PW51bGx9cmVzZXQoKXt0aGlzLm5leHQ9dGhpcy5zY29wZT10aGlzLk49bnVsbH19O3ZhciB3cSxCTCxqZyxWMng7Qkw9ITE7amc9bmV3IFIzYjtnLm1LPShuLFcpPT57d3F8fFYyeCgpO0JMfHwod3EoKSxCTD0hMCk7amcuYWRkKG4sVyl9OwpWMng9KCk9Pnt2YXIgbj1Qcm9taXNlLnJlc29sdmUodm9pZCAwKTt3cT0oKT0+e24udGhlbihUenIpfX07cTgucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5jb250ZXh0PXRoaXMuSj10aGlzLlc9dGhpcy5OPW51bGw7dGhpcy5YPSExfTsKdmFyIEczPW5ldyBNMlMoZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHE4fSxmdW5jdGlvbihuKXtuLnJlc2V0KCl9KTsKZy5YMS5wcm90b3R5cGUudGhlbj1mdW5jdGlvbihuLFcsRCl7cmV0dXJuIFNPKHRoaXMsKDAsZy56NykodHlwZW9mIG49PT0iZnVuY3Rpb24iP246bnVsbCksKDAsZy56NykodHlwZW9mIFc9PT0iZnVuY3Rpb24iP1c6bnVsbCksRCl9OwpnLlgxLnByb3RvdHlwZS4kZ29vZ19UaGVuYWJsZT0hMDtnLkU9Zy5YMS5wcm90b3R5cGU7Zy5FLmZpbmFsbHk9ZnVuY3Rpb24obil7bj0oMCxnLno3KShuKTtyZXR1cm4gbmV3IGcuWDEoKFcsRCk9PntwcSh0aGlzLGI9PntuKCk7VyhiKX0sYj0+e24oKTsKRChiKX0pfSl9OwpnLkUuc1A9ZnVuY3Rpb24obixXKXtyZXR1cm4gU08odGhpcyxudWxsLCgwLGcuejcpKG4pLFcpfTsKZy5FLmNhdGNoPWcuWDEucHJvdG90eXBlLnNQO2cuRS5jYW5jZWw9ZnVuY3Rpb24obil7aWYodGhpcy5OPT0wKXtsZXQgVz1uZXcgZy5JNShuKTtnLm1LKGZ1bmN0aW9uKCl7WUcodGhpcyxXKX0sdGhpcyl9fTsKZy5FLklRPWZ1bmN0aW9uKG4pe3RoaXMuTj0wO2dwKHRoaXMsMixuKX07CmcuRS5BUz1mdW5jdGlvbihuKXt0aGlzLk49MDtncCh0aGlzLDMsbil9OwpnLkUueXM9ZnVuY3Rpb24oKXtmb3IodmFyIG47bj1ISih0aGlzKTspZnEodGhpcyxuLHRoaXMuTix0aGlzLkspO3RoaXMuVj0hMX07CnZhciBPdT1oNDtnLml4KGcuSTUsZy5UYik7Zy5JNS5wcm90b3R5cGUubmFtZT0iY2FuY2VsIjtnLml4KGcuUEosZy5vVyk7Zy5FPWcuUEoucHJvdG90eXBlO2cuRS5lbmFibGVkPSExO2cuRS5aNj1udWxsO2cuRS5zZXRJbnRlcnZhbD1mdW5jdGlvbihuKXt0aGlzLmd0PW47dGhpcy5aNiYmdGhpcy5lbmFibGVkPyh0aGlzLnN0b3AoKSx0aGlzLnN0YXJ0KCkpOnRoaXMuWjYmJnRoaXMuc3RvcCgpfTsKZy5FLlJRPWZ1bmN0aW9uKCl7aWYodGhpcy5lbmFibGVkKXtsZXQgbj1nLlV3KCktdGhpcy5qYjtuPjAmJm48dGhpcy5ndCouOD90aGlzLlo2PXRoaXMuVjcuc2V0VGltZW91dCh0aGlzLmhFLHRoaXMuZ3Qtbik6KHRoaXMuWjYmJih0aGlzLlY3LmNsZWFyVGltZW91dCh0aGlzLlo2KSx0aGlzLlo2PW51bGwpLHRoaXMuZGlzcGF0Y2hFdmVudCgidGljayIpLHRoaXMuZW5hYmxlZCYmKHRoaXMuc3RvcCgpLHRoaXMuc3RhcnQoKSkpfX07CmcuRS5zdGFydD1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMDt0aGlzLlo2fHwodGhpcy5aNj10aGlzLlY3LnNldFRpbWVvdXQodGhpcy5oRSx0aGlzLmd0KSx0aGlzLmpiPWcuVXcoKSl9OwpnLkUuc3RvcD1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMTt0aGlzLlo2JiYodGhpcy5WNy5jbGVhclRpbWVvdXQodGhpcy5aNiksdGhpcy5aNj1udWxsKX07CmcuRS5tQT1mdW5jdGlvbigpe2cuUEouVEIubUEuY2FsbCh0aGlzKTt0aGlzLnN0b3AoKTtkZWxldGUgdGhpcy5WN307dmFyIGhxPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMuRD1uO3RoaXMuVj0wO3RoaXMuWD0xMDA7dGhpcy5LPSExO3RoaXMuVz1uZXcgTWFwO3RoaXMuWT1uZXcgU2V0O3RoaXMuZmx1c2hJbnRlcnZhbD0zRTQ7dGhpcy5KPW5ldyBnLlBKKHRoaXMuZmx1c2hJbnRlcnZhbCk7dGhpcy5KLlNfKCJ0aWNrIix0aGlzLmosITEsdGhpcyk7Zy51KHRoaXMsdGhpcy5KKX1zZW5kSXNvbGF0ZWRQYXlsb2FkKG4pe3RoaXMuSz1uO3RoaXMuWD0xfWooKXt2YXIgbj1bLi4udGhpcy5XLnZhbHVlcygpXS5maWx0ZXIoVz0+Vy5OLnNpemUpOwpuLmxlbmd0aCYmdGhpcy5ELmZsdXNoKG4sdGhpcy5LKTtGY2Iobik7dGhpcy5WPTA7dGhpcy5KLmVuYWJsZWQmJnRoaXMuSi5zdG9wKCl9TihuKXtyZXR1cm4gdGhpcy5ZLmhhcyhuKT92b2lkIDA6dGhpcy5XLmdldChuKX1kRShuLFcsLi4uRCl7KG49dGhpcy5OKG4pKSYmbiBpbnN0YW5jZW9mIHk4JiYobi5kRShXLC4uLkQpLG81KHRoaXMpKX19O3ZhciBDVj1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKG4sVyxEPXt9KXtzdXBlcihXKTt0aGlzLmNvZGU9bjt0aGlzLm1ldGFkYXRhPUQ7dGhpcy5uYW1lPSJScGNFcnJvciI7T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsbmV3LnRhcmdldC5wcm90b3R5cGUpfXRvU3RyaW5nKCl7dmFyIG49YFJwY0Vycm9yKCR7d01TKHRoaXMuY29kZSl8fFN0cmluZyh0aGlzLmNvZGUpfSlgO3RoaXMubWVzc2FnZSYmKG4rPSI6ICIrdGhpcy5tZXNzYWdlKTtyZXR1cm4gbn19O2xlLnByb3RvdHlwZS5iWT1mdW5jdGlvbihuKXt2YXIgVz1bXTtUMyh0aGlzLG4sVyk7cmV0dXJuIFcuam9pbigiIil9Owp2YXIgQ3E9eyciJzonXFwiJywiXFwiOiJcXFxcIiwiLyI6IlxcLyIsIlxiIjoiXFxiIiwiXGYiOiJcXGYiLCJcbiI6IlxcbiIsIlxyIjoiXFxyIiwiXHQiOiJcXHQiLCJcdiI6IlxcdTAwMGIifSxNalo9L1x1ZmZmZi8udGVzdCgiXHVmZmZmIik/L1tcXCJceDAwLVx4MWZceDdmLVx1ZmZmZl0vZzovW1xcIlx4MDAtXHgxZlx4N2YtXHhmZl0vZzt2YXIgY1hDO2cuaXgoRjEsQkopO0YxLnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBYTUxIdHRwUmVxdWVzdH07CmNYQz1uZXcgRjE7Zy5peCh3cCxnLm9XKTt2YXIgYXEyPS9eaHR0cHM/JC9pLG5kTT1bIlBPU1QiLCJQVVQiXSxNOD1bXTtnLkU9d3AucHJvdG90eXBlO2cuRS5XVT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpO2cuRkkoTTgsdGhpcyl9OwpnLkUuc2VuZD1mdW5jdGlvbihuLFcsRCxiKXtpZih0aGlzLk4pdGhyb3cgRXJyb3IoIltnb29nLm5ldC5YaHJJb10gT2JqZWN0IGlzIGFjdGl2ZSB3aXRoIGFub3RoZXIgcmVxdWVzdD0iK3RoaXMuSysiOyBuZXdVcmk9IituKTtXPVc/Vy50b1VwcGVyQ2FzZSgpOiJHRVQiO3RoaXMuSz1uO3RoaXMuaj0iIjt0aGlzLlc9MDt0aGlzLmNKPSExO3RoaXMuSj0hMDt0aGlzLk49dGhpcy5UQz90aGlzLlRDLk4oKTpjWEMuTigpO3RoaXMuTi5vbnJlYWR5c3RhdGVjaGFuZ2U9KDAsZy56NykoKDAsZy5LdCkodGhpcy5OOCx0aGlzKSk7dHJ5e3RoaXMuZ2V0U3RhdHVzKCksdGhpcy50dz0hMCx0aGlzLk4ub3BlbihXLFN0cmluZyhuKSwhMCksdGhpcy50dz0hMX1jYXRjaChrKXt0aGlzLmdldFN0YXR1cygpO1Y4KHRoaXMsayk7cmV0dXJufW49RHx8IiI7RD1uZXcgTWFwKHRoaXMuaGVhZGVycyk7aWYoYilpZihPYmplY3QuZ2V0UHJvdG90eXBlT2YoYik9PT1PYmplY3QucHJvdG90eXBlKWZvcih2YXIgdiBpbiBiKUQuc2V0KHYsCmJbdl0pO2Vsc2UgaWYodHlwZW9mIGIua2V5cz09PSJmdW5jdGlvbiImJnR5cGVvZiBiLmdldD09PSJmdW5jdGlvbiIpZm9yKGxldCBrIG9mIGIua2V5cygpKUQuc2V0KGssYi5nZXQoaykpO2Vsc2UgdGhyb3cgRXJyb3IoIlVua25vd24gaW5wdXQgdHlwZSBmb3Igb3B0X2hlYWRlcnM6ICIrU3RyaW5nKGIpKTtiPUFycmF5LmZyb20oRC5rZXlzKCkpLmZpbmQoaz0+ImNvbnRlbnQtdHlwZSI9PWsudG9Mb3dlckNhc2UoKSk7CnY9Zy5xaS5Gb3JtRGF0YSYmbiBpbnN0YW5jZW9mIGcucWkuRm9ybURhdGE7IWcuamoobmRNLFcpfHxifHx2fHxELnNldCgiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9dXRmLTgiKTtmb3IobGV0IFtrLGhdb2YgRCl0aGlzLk4uc2V0UmVxdWVzdEhlYWRlcihrLGgpO3RoaXMuYmQmJih0aGlzLk4ucmVzcG9uc2VUeXBlPXRoaXMuYmQpOyJ3aXRoQ3JlZGVudGlhbHMiaW4gdGhpcy5OJiZ0aGlzLk4ud2l0aENyZWRlbnRpYWxzIT09dGhpcy5PJiYodGhpcy5OLndpdGhDcmVkZW50aWFscz10aGlzLk8pO3RyeXt0aGlzLlYmJihjbGVhclRpbWVvdXQodGhpcy5WKSx0aGlzLlY9bnVsbCksdGhpcy5EPjAmJih0aGlzLmdldFN0YXR1cygpLHRoaXMuVj1zZXRUaW1lb3V0KHRoaXMuVTIuYmluZCh0aGlzKSx0aGlzLkQpKSx0aGlzLmdldFN0YXR1cygpLHRoaXMuWT0hMCx0aGlzLk4uc2VuZChuKSx0aGlzLlk9ITF9Y2F0Y2goayl7dGhpcy5nZXRTdGF0dXMoKSwKVjgodGhpcyxrKX19OwpnLkUuVTI9ZnVuY3Rpb24oKXt0eXBlb2YgY0ohPSJ1bmRlZmluZWQiJiZ0aGlzLk4mJih0aGlzLmo9IlRpbWVkIG91dCBhZnRlciAiK3RoaXMuRCsibXMsIGFib3J0aW5nIix0aGlzLlc9OCx0aGlzLmdldFN0YXR1cygpLHRoaXMuZGlzcGF0Y2hFdmVudCgidGltZW91dCIpLHRoaXMuYWJvcnQoOCkpfTsKZy5FLmFib3J0PWZ1bmN0aW9uKG4pe3RoaXMuTiYmdGhpcy5KJiYodGhpcy5nZXRTdGF0dXMoKSx0aGlzLko9ITEsdGhpcy5YPSEwLHRoaXMuTi5hYm9ydCgpLHRoaXMuWD0hMSx0aGlzLlc9bnx8Nyx0aGlzLmRpc3BhdGNoRXZlbnQoImNvbXBsZXRlIiksdGhpcy5kaXNwYXRjaEV2ZW50KCJhYm9ydCIpLFE4KHRoaXMpKX07CmcuRS5tQT1mdW5jdGlvbigpe3RoaXMuTiYmKHRoaXMuSiYmKHRoaXMuSj0hMSx0aGlzLlg9ITAsdGhpcy5OLmFib3J0KCksdGhpcy5YPSExKSxROCh0aGlzLCEwKSk7d3AuVEIubUEuY2FsbCh0aGlzKX07CmcuRS5OOD1mdW5jdGlvbigpe3RoaXMucU4oKXx8KHRoaXMudHd8fHRoaXMuWXx8dGhpcy5YP25WKHRoaXMpOnRoaXMuZ0soKSl9OwpnLkUuZ0s9ZnVuY3Rpb24oKXtuVih0aGlzKX07CmcuRS5pc0FjdGl2ZT1mdW5jdGlvbigpe3JldHVybiEhdGhpcy5OfTsKZy5FLmlzQ29tcGxldGU9ZnVuY3Rpb24oKXtyZXR1cm4gYTUodGhpcyk9PTR9OwpnLkUuaXNTdWNjZXNzPWZ1bmN0aW9uKCl7dmFyIG49dGhpcy5nZXRTdGF0dXMoKTthOnN3aXRjaChuKXtjYXNlIDIwMDpjYXNlIDIwMTpjYXNlIDIwMjpjYXNlIDIwNDpjYXNlIDIwNjpjYXNlIDMwNDpjYXNlIDEyMjM6dmFyIFc9ITA7YnJlYWsgYTtkZWZhdWx0Olc9ITF9aWYoIVcpe2lmKG49bj09PTApbj1nLmZwKFN0cmluZyh0aGlzLkspKVsxXXx8bnVsbCwhbiYmZy5xaS5zZWxmJiZnLnFpLnNlbGYubG9jYXRpb24mJihuPWcucWkuc2VsZi5sb2NhdGlvbi5wcm90b2NvbC5zbGljZSgwLC0xKSksbj0hYXEyLnRlc3Qobj9uLnRvTG93ZXJDYXNlKCk6IiIpO1c9bn1yZXR1cm4gV307CmcuRS5nZXRTdGF0dXM9ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIGE1KHRoaXMpPjI/dGhpcy5OLnN0YXR1czotMX1jYXRjaChuKXtyZXR1cm4tMX19OwpnLkUuZ2V0UmVzcG9uc2VIZWFkZXI9ZnVuY3Rpb24obil7aWYodGhpcy5OJiZ0aGlzLmlzQ29tcGxldGUoKSlyZXR1cm4gbj10aGlzLk4uZ2V0UmVzcG9uc2VIZWFkZXIobiksbj09PW51bGw/dm9pZCAwOm59OwpnLkUuZ2V0TGFzdEVycm9yPWZ1bmN0aW9uKCl7cmV0dXJuIHR5cGVvZiB0aGlzLmo9PT0ic3RyaW5nIj90aGlzLmo6U3RyaW5nKHRoaXMuail9O3ZhciBPYjE9Y2xhc3N7c2VuZChuLFc9KCk9Pnt9LEQ9KCk9Pnt9KXtRTVUobi51cmwsYj0+e2I9Yi50YXJnZXQ7CmIuaXNTdWNjZXNzKCk/VyhXMyhiKSk6RChiLmdldFN0YXR1cygpKX0sbi5yZXF1ZXN0VHlwZSxuLmJvZHksbi5aSixuLnRpbWVvdXRNaWxsaXMsbi53aXRoQ3JlZGVudGlhbHMpfUdZKCl7cmV0dXJuIDF9fTt2YXIgTWw9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLmxvZ2dlcj1uO3RoaXMuZXZlbnQ9Vzt0aGlzLnN0YXJ0VGltZT1ibigpfWRvbmUoKXt0aGlzLmxvZ2dlci5YKHRoaXMuZXZlbnQsYm4oKS10aGlzLnN0YXJ0VGltZSl9fSxSbT1jbGFzcyBleHRlbmRzIGphMXtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyl9fSx4WT1jbGFzcyBleHRlbmRzIFJte2ooKXt9Tigpe31YKCl7fUooKXt9RCgpe31ZKCl7fVcoKXt9VihuLFcsRCxiKXtyZXR1cm4gYn1jSigpe31LKCl7fU8oKXt9fSxXNTE9Y2xhc3MgZXh0ZW5kcyBSbXtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMubG9nZ2VyPW47dGhpcy5hZGRPbkRpc3Bvc2VDYWxsYmFjaygoKT0+dm9pZCB0aGlzLmxvZ2dlci5kaXNwb3NlKCkpfXVwZGF0ZShuKXt0aGlzLmxvZ2dlci5kaXNwb3NlKCk7CnRoaXMubG9nZ2VyPW59TihuKXt0aGlzLmxvZ2dlci5OKG4pfVgobixXKXt0aGlzLmxvZ2dlci5YKG4sVyl9SihuKXt0aGlzLmxvZ2dlci5KKG4pfUQobil7dGhpcy5sb2dnZXIuRChuKX1ZKG4sVyl7dGhpcy5sb2dnZXIuWShuLFcpfVcoKXt0aGlzLmxvZ2dlci5XKCl9VihuLFcsRCxiKXtyZXR1cm4gdGhpcy5sb2dnZXIuVihuLFcsRCxiKX1jSihuKXt0aGlzLmxvZ2dlci5jSihuKX1LKG4pe3RoaXMubG9nZ2VyLksobil9TyhuKXt0aGlzLmxvZ2dlci5PKG4pfWoobil7dGhpcy5sb2dnZXIuaihuKX19LERHUz1jbGFzcyBleHRlbmRzIGcuRk17Y29uc3RydWN0b3IobixXKXtzdXBlcigpO3RoaXMuY2FsbGJhY2s9bjt0aGlzLko9Vzt0aGlzLk49LVc7dGhpcy5hZGRPbkRpc3Bvc2VDYWxsYmFjaygoKT0+dm9pZCBjbGVhclRpbWVvdXQodGhpcy50aW1lcikpfX0sYjdpPWNsYXNzIGV4dGVuZHMgUm17Y29uc3RydWN0b3IobixXKXtzdXBlcigpOwp0aGlzLm1ldHJpY3M9bjt0aGlzLlZqPVd9aihuKXt0aGlzLm1ldHJpY3MuVGsuZEUobix0aGlzLlZqKX1OKG4pe3RoaXMubWV0cmljcy5ldmVudENvdW50Lkoobix0aGlzLlZqKX1YKG4sVyl7dGhpcy5tZXRyaWNzLlBULmRFKFcsbix0aGlzLlZqKX1KKG4pe3RoaXMubWV0cmljcy5lcnJvckNvdW50Lkoobix0aGlzLlZqKX1WKG4sVyxELGIpe3ZhciB2PWJuKCksaz1oPT57aWYoIXRoaXMucU4oKSl7dmFyIHg9Ym4oKS12O3RoaXMubWV0cmljcy5pTC5kRSh4LG4sRCxoLFcsdGhpcy5Wail9fTsKYi50aGVuKCgpPT52b2lkIGsoMCksaD0+dm9pZCBrKGggaW5zdGFuY2VvZiBDVj9oLmNvZGU6LTEpKTsKcmV0dXJuIGJ9Y0oobil7dGhpcy5tZXRyaWNzLlZKLkoobix0aGlzLlZqKX1LKG4pe3RoaXMubWV0cmljcy5jVS5KKG4sdGhpcy5Wail9TyhuKXt0aGlzLm1ldHJpY3MuakMuSihuLHRoaXMuVmopfUQobil7dGhpcy5tZXRyaWNzLnBheWxvYWRTaXplLmRFKG4sdGhpcy5Wail9WShuLFcpe3RoaXMubWV0cmljcy5mNi5kRShXLG4sdGhpcy5Wail9fSxEaHg9Y2xhc3MgZXh0ZW5kcyBiN2l7Y29uc3RydWN0b3IobixXPVtdKXt2YXIgRD17Vmo6bi5Wanx8Il8iLFJoOm4uUmh8fFtdLExUOm4uTFR8MCxSajpuLlJqLHREOm4udER8fCgoKT0+e30pLApybzpuLnJvfHwoKHYsayk9Pm5sMSh2LGssRC50RCxELlJqKSl9LGI9RC5ybygiNTMiLEQuUmguY29uY2F0KFcpKTsKc3VwZXIoe1RrOm5ldyBDMHgoYiksZXJyb3JDb3VudDpuZXcgTXQxKGIpLGV2ZW50Q291bnQ6bmV3IEYyWihiKSxQVDpuZXcgd1FyKGIpLGlMOm5ldyBCYWkoYiksVko6bmV3IFJkYihiKSxjVTpuZXcgUWF4KGIpLGpDOm5ldyBWdGkoYikscGF5bG9hZFNpemU6bmV3IGNqeChiKSxmNjpuZXcgYTZ3KGIpfSxELlZqKTt0aGlzLm9wdGlvbnM9RDt0aGlzLnNlcnZpY2U9Yjt0aGlzLlRDPSFuLnJvO3RoaXMudHc9bmV3IERHUygoKT0+dm9pZCB0aGlzLnNlcnZpY2UuaigpLEQuTFQpOwp0aGlzLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57dGhpcy50dy5kaXNwb3NlKCk7dGhpcy5UQyYmdGhpcy5zZXJ2aWNlLmRpc3Bvc2UoKX0pOwpnLmJmKFcuc2xpY2UoKSl9Vygpe1dXcih0aGlzLnR3KX19O3ZhciBxdj1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIgR0g9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIHIkPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuLDAsciQubWVzc2FnZUlkKX19LFg0Wj1LOChyJCksdmRiPWZ1bmN0aW9uKG4pe3JldHVybiBxMyhXPT5XIGluc3RhbmNlb2YgbiYmIXY5KFcpKX0ociQpOwpyJC5tZXNzYWdlSWQ9ImJma2oiO3ZhciBjND1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIga0VpPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19LGhZWj1LOChrRWkpO2cuS1Y9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnByb21pc2U9bmV3IFByb21pc2UoKG4sVyk9Pnt0aGlzLnJlc29sdmU9bjt0aGlzLnJlamVjdD1XfSl9fTt2YXIgQXE9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dGhpcy5KPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyMDApO3RoaXMuTj1uZXcga0VpO2lmKCJjaGFsbGVuZ2UiaW4gbiYmdmRiKG4uY2hhbGxlbmdlKSl7dmFyIFc9WTkobi5jaGFsbGVuZ2UsNCx2b2lkIDAseFUpO3ZhciBEPVk5KG4uY2hhbGxlbmdlLDUsdm9pZCAwLHhVKTtZOShuLmNoYWxsZW5nZSw3LHZvaWQgMCx4VSkmJih0aGlzLk49aFlaKFk5KG4uY2hhbGxlbmdlLDcsdm9pZCAwLHhVKSkpfWVsc2Uoe3Byb2dyYW06VyxnbG9iYWxOYW1lOkR9PW4pO3RoaXMuYWRkT25EaXNwb3NlQ2FsbGJhY2soYXN5bmMoKT0+e3ZhciB7Vng6R309YXdhaXQgdGhpcy5XO0c/LigpfSk7CnRoaXMubG9nZ2VyPUxWKG4ueDN8fHt9LHRoaXMuTik7Zy51KHRoaXMsdGhpcy5sb2dnZXIpO3ZhciBiPW5ldyBnLktWO3RoaXMuVz1iLnByb21pc2U7dGhpcy5sb2dnZXIuTigidCIpO3ZhciB2PXRoaXMubG9nZ2VyLnNoYXJlKCksaz1uZXcgTWwodiwidCIpLGg9KEcscixOLEgpPT57aWYoIXRoaXMubG9nZ2VyLnFOKCkpe3ZhciBBPSJrIjtyP0E9ImgiOk4mJihBPSJ1Iik7QSE9PSJrIj9IIT09MCYmKHRoaXMubG9nZ2VyLk4oQSksdGhpcy5sb2dnZXIuWChBLEcpKTp0aGlzLko8PTA/KHRoaXMubG9nZ2VyLk4oQSksdGhpcy5sb2dnZXIuWChBLEcpLHRoaXMuSj1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjAwKSk6dGhpcy5KLS19fSx4PShHLHIsTixIKT0+e1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PntrLmRvbmUoKTsKdi5XKCk7di5kaXNwb3NlKCk7Yi5yZXNvbHZlKHtGeTpHLFZ4OnIscDU6Tix4VTpIfSl9KX0sTD1bKEcscik9Pnt0aGlzLmxvZ2dlci5YKEcscil9LApHPT57dGhpcy5sb2dnZXIuSihHKX0sCkc9Pnt0aGlzLmxvZ2dlci5EKEcpfSwKKEcscik9Pnt0aGlzLmxvZ2dlci5ZKEcscil9XTsKaWYoIWcucWlbRF0pdGhyb3cgdGhpcy5sb2dnZXIuSigyNSksRXJyb3IoIkVHT1UiKTtpZighZy5xaVtEXS5hKXRocm93IHRoaXMubG9nZ2VyLkooMjYpLEVycm9yKCJFTElVIik7dHJ5e2xldCBHPWcucWlbRF0uYTtEPVtdO2xldCByPVtdO3ZhciBlPW4wKHRoaXMuTik7Zm9yKGxldCBBPTA7QTxlLmxlbmd0aDtBKyspRC5wdXNoKGVbQV0pLHIucHVzaCgxKTtsZXQgTj1VaXcodGhpcy5OKTtmb3IoZT0wO2U8Ti5sZW5ndGg7ZSsrKUQucHVzaChOW2VdKSxyLnB1c2goMik7bGV0IFtIXT1HKFcseCwhMCxuLnczLGgsW0Qscl0sWTkodGhpcy5OLDUpLCExLEwpO3RoaXMuWD1IO3RoaXMuT3Y9Yi5wcm9taXNlLnRoZW4oKCk9Pnt9KX1jYXRjaChHKXt0aHJvdyB0aGlzLmxvZ2dlci5KKDI4KSxHOwp9fXNuYXBzaG90KG4pe2lmKHRoaXMucU4oKSl0aHJvdyBFcnJvcigiQWxyZWFkeSBkaXNwb3NlZCIpO3RoaXMubG9nZ2VyLk4oIm4iKTt2YXIgVz10aGlzLmxvZ2dlci5zaGFyZSgpO3JldHVybiB0aGlzLlcudGhlbigoe0Z5OkR9KT0+bmV3IFByb21pc2UoYj0+e3ZhciB2PW5ldyBNbChXLCJuIik7RChrPT57di5kb25lKCk7Vy5qKGsubGVuZ3RoKTtXLlcoKTtXLmRpc3Bvc2UoKTtiKGspfSxbbi53XywKbi5HbCxuLnRMLG4uTU9dKX0pKX1tNShuKXtpZih0aGlzLnFOKCkpdGhyb3cgRXJyb3IoIkFscmVhZHkgZGlzcG9zZWQiKTsKdGhpcy5sb2dnZXIuTigibiIpO3ZhciBXPXYzKHRoaXMubG9nZ2VyLCgpPT50aGlzLlgoW24ud18sbi5HbCxuLnRMLG4uTU9dKSwibiIpOwp0aGlzLmxvZ2dlci5qKFcubGVuZ3RoKTt0aGlzLmxvZ2dlci5XKCk7cmV0dXJuIFd9UzEobil7dGhpcy5XLnRoZW4oKHtwNTpXfSk9PntXPy4obil9KX1RRCgpe3JldHVybiB0aGlzLmxvZ2dlci5zaGFyZSgpfX07dmFyIGVtPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5KPXt9O3RoaXMuTj1udWxsfX07dmFyICRZPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBOdj1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIgZlY9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQpe3RoaXMuY2xpZW50PW47dGhpcy5yZXF1ZXN0S2V5PVc7dGhpcy5OPUR9Wmoobil7cmV0dXJuIEgzKHRoaXMsbixuZXcgeFksMCl9fTt2YXIgVEg9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dGhpcy5vcHRpb25zPW47dGhpcy5WPW5ldyBnLktWO3RoaXMuT3Y9dGhpcy5WLnByb21pc2U7dGhpcy5qPW5ldyBnLktWO3RoaXMuWT0xO3RoaXMuSj1uZXcgZy5LVjt0aGlzLlg9W107dGhpcy5pc1BhdXNlZD0hMTt0aGlzLnFKPW4ucUp8fCgoKT0+e30pOwp0aGlzLmxvZ2dlcj1uZXcgVzUxKExWKG4ueDN8fHt9KSk7ckFiKHRoaXMsbi5VZyxuLnFULG4ucVUsbi5USCx7Li4ueEdqLC4uLihuLmtkfHx7fSl9KTt0aGlzLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT52b2lkIHNQMih0aGlzKSl9YXN5bmMgc25hcHNob3Qobil7aWYodGhpcy5xTigpKXRocm93IEVycm9yKCJBbHJlYWR5IGRpc3Bvc2VkIik7CnRoaXMuV3x8dGhpcy5LfHxhd2FpdCB0aGlzLmoucHJvbWlzZTtpZih0aGlzLlcpcmV0dXJuIGF3YWl0IHRoaXMuVy5zbmFwc2hvdChuKTt0aHJvdyB0aGlzLks7fXBhdXNlKCl7dGhpcy5xTigpfHx0aGlzLmlzUGF1c2VkfHwodGhpcy5pc1BhdXNlZD0hMCx0aGlzLk4mJnRoaXMuTi5wYXVzZSgpKX1yZXN1bWUoKXshdGhpcy5xTigpJiZ0aGlzLmlzUGF1c2VkJiYodGhpcy5pc1BhdXNlZD0hMSx0aGlzLk4mJnRoaXMuTi5yZXN1bWUoKSl9YXN5bmMgY2hlY2tGb3JSZWZyZXNoKCl7aWYodGhpcy5xTigpKXRocm93IEVycm9yKCJBbHJlYWR5IGRpc3Bvc2VkIik7aWYodGhpcy5OKXt2YXIgbj10aGlzLk47bi5pc0V4cGlyZWQoKT8oT2wobiksbi5RNCgwKSxuPSEwKTpuPSExO24mJmF3YWl0IHRoaXMuSi5wcm9taXNlfWVsc2UgYXdhaXQgdGhpcy5KLnByb21pc2V9UzEobil7dGhpcy5XPy5TMT8uKG4pfWhhbmRsZUVycm9yKG4pe3RoaXMucU4oKXx8KHRoaXMuSz1uLHRoaXMuai5yZXNvbHZlKCksCnRoaXMub3B0aW9ucy50Nj8uKG4pKX1RRCgpe3JldHVybiB0aGlzLmxvZ2dlci5zaGFyZSgpfX0seEdqPXtGWjo0MzJFNSx1bTozRTUsbmI6MTAsamQ6MUU0LGhwOjNFNCxRWDozRTQscUs6NkU0LENxOjFFMyx3ODo2RTQsb3o6NkU1LGQ4Oi4yNSxBaToyLG1heEF0dGVtcHRzOjEwfSxTbT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCl7dGhpcy5lbmRUaW1lTXM9MDt0aGlzLk49bnVsbDt0aGlzLmlzUGF1c2VkPSExO3RoaXMudGljaz0oKT0+e2lmKCF0aGlzLmlzUGF1c2VkKXt2YXIgYj10aGlzLmVuZFRpbWVNcy1EYXRlLm5vdygpO2I8PXRoaXMuVz8odGhpcy5OPW51bGwsdGhpcy5RNCgwKSk6dGhpcy5OPXNldFRpbWVvdXQodGhpcy50aWNrLE1hdGgubWluKGIsdGhpcy51bSkpfX07CnRoaXMudW09Vzt0aGlzLlc9RDt0aGlzLnByb21pc2U9bmV3IFByb21pc2UoYj0+e3RoaXMuUTQ9Yn0pOwpZVFUodGhpcyxuKX1wYXVzZSgpe3RoaXMuaXNQYXVzZWR8fCh0aGlzLmlzUGF1c2VkPSEwLE9sKHRoaXMpKX1yZXN1bWUoKXt0aGlzLmlzUGF1c2VkJiYodGhpcy5pc1BhdXNlZD0hMSx0aGlzLnRpY2soKSl9Sigpe09sKHRoaXMpO3RoaXMuZW5kVGltZU1zPTA7dGhpcy5pc1BhdXNlZD0hMTt0aGlzLlE0KDEpfWlzRXhwaXJlZCgpe3JldHVybiBEYXRlLm5vdygpPnRoaXMuZW5kVGltZU1zfX07dmFyIEhwaT1NYXRoLmltdWw/PygobixXKT0+bipXfDApLFVsPVsxOTYsCjIwMCwyMjQsMThdLHVuPWNsYXNze2NvbnN0cnVjdG9yKG4sVz0wLEQ9W10pe3RoaXMubWF4SXRlbXM9bjt0aGlzLk49Vzt0aGlzLko9RH1iWSgpe3JldHVybiBTdHJpbmcodGhpcy5OKSsiLCIrdGhpcy5KLmpvaW4oKX1xcChuLFcpe3ZhciBEPXZvaWQgMDtpZih0aGlzLkpbdGhpcy5OXSE9PW4pe2xldCBiPXRoaXMuSi5pbmRleE9mKG4pO2IhPT0tMT8odGhpcy5KLnNwbGljZShiLDEpLGI8dGhpcy5OJiZ0aGlzLk4tLSx0aGlzLkouc3BsaWNlKHRoaXMuTiwwLG4pKTooRD10aGlzLkpbdGhpcy5OXSx0aGlzLkpbdGhpcy5OXT1uKX10aGlzLk49KHRoaXMuTisxKSV0aGlzLm1heEl0ZW1zO249UDMoImlVNXEtIU85QCQiLHRoaXMuYlkoKSk7RCYmbiYmVyhEKTtyZXR1cm4gbn19LEw1Uz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMubG9nZ2VyPVc7dHJ5e3ZhciBEPWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2UmJiEhZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtJiYhIWdsb2JhbFRoaXMuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSYmCiEhZ2xvYmFsVGhpcy5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtfWNhdGNoKGIpe0Q9ITF9RCYmKHRoaXMuaW5kZXg9SWV3KG4pKX1OKG4sVyxELGIpe3ZhciB2PXRoaXMuaW5kZXg/djModGhpcy5sb2dnZXIsKCk9PmZlYih0aGlzLmluZGV4LHlpKG4pLFcsRCxiKSwiVyIpOiJ1IjsKdGhpcy5sb2dnZXIuTyh2KX1KKG4sVyl7dmFyIFtELGJdPXRoaXMuaW5kZXg/djModGhpcy5sb2dnZXIsKCk9PkpBdyh5aShuKSxXKSwiUiIpOlsidSJdOwp0aGlzLmxvZ2dlci5LKEQpO3JldHVybiBifX07dmFyIEFBUz17dG9TdHJpbmc6ZnVuY3Rpb24obil7dmFyIFc9W10sRD0wO24tPS0yMTQ3NDgzNjQ4O1dbRCsrXT0iYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiIuY2hhckF0KG4lNTIpO2ZvcihuPU1hdGguZmxvb3Iobi81Mik7bj4wOylXW0QrK109ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIzNDU2Nzg5Ii5jaGFyQXQobiU2Miksbj1NYXRoLmZsb29yKG4vNjIpO3JldHVybiBXLmpvaW4oIiIpfX07dmFyIFFwPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMubG9nZ2VyPW47dGhpcy5YPW5ldyBnLktWfVpSKG4sVyl7dmFyIEQ9dGhpcy5XKG4pO1c/LihEKTtyZXR1cm4gdjModGhpcy5sb2dnZXIsKCk9PmcuRUEoRCwyKSx0aGlzLkopfUZwKG4sVyxEKXtyZXR1cm4gdjModGhpcy5sb2dnZXIsKCk9Plc/dGhpcy5aUihuLEQpOnRoaXMuVyhuLEQpLHRoaXMuTil9fSxGNj1jbGFzcyBleHRlbmRzIFFwe2NvbnN0cnVjdG9yKG4sVyxELGIpe3N1cGVyKG4pOwp0aGlzLmo9Vzt0aGlzLks9RDt0aGlzLk49Im0iO3RoaXMuSj0ieCI7dGhpcy5WPTA7ZCQodGhpcyxiKX1XKG4sVyl7dGhpcy5sb2dnZXIuTih0aGlzLk4pOysrdGhpcy5WPj10aGlzLksmJnRoaXMuWC5yZXNvbHZlKCk7dmFyIEQ9bigpO249djModGhpcy5sb2dnZXIsKCk9PnRoaXMuaihEKSwiQyIpOwppZihuPT09dm9pZCAwKXRocm93IG5ldyBRRygxNywiWU5KOlVuZGVmaW5lZCIpO2lmKCEobiBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpKXRocm93IG5ldyBRRygxOCwiT0RNOkludmFsaWQiKTtXPy4obik7cmV0dXJuIG59fSxVaGo9Y2xhc3MgZXh0ZW5kcyBRcHtjb25zdHJ1Y3RvcihuLFcsRCl7c3VwZXIobik7dGhpcy5qPVc7dGhpcy5OPSJmIjt0aGlzLko9InoiO2QkKHRoaXMsRCl9Vygpe3JldHVybiB0aGlzLmp9fSxacHQ9Y2xhc3MgZXh0ZW5kcyBRcHtjb25zdHJ1Y3RvcihuLFcsRCl7c3VwZXIobik7dGhpcy5qPVc7dGhpcy5OPSJ3Ijt0aGlzLko9InoiO2QkKHRoaXMsRCl9Vygpe3JldHVybiB2Myh0aGlzLmxvZ2dlciwoKT0+bHAodGhpcy5qKSwiZCIpfVpSKCl7cmV0dXJuIHRoaXMuan19LG9sdz1jbGFzcyBleHRlbmRzIFFwe2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIobik7CnRoaXMuZXJyb3I9Vzt0aGlzLk49ImUiO3RoaXMuSj0ieSJ9Vygpe2lmKHRoaXMuailyZXR1cm4gdGhpcy5qO3RoaXMuaj1sbih0aGlzLG49PiJfIittaHcobikpOwpyZXR1cm4gbG4odGhpcyxuPT5uKX19LFFpPWNsYXNzIGV4dGVuZHMgUXB7Y29uc3RydWN0b3IobixXLEQpe3N1cGVyKG4pOwp0aGlzLmo9Vzt0aGlzLmNsaWVudFN0YXRlPUQ7dGhpcy5OPSJTIjt0aGlzLko9InEifVcoKXt2YXIgbj1NYXRoLmZsb29yKERhdGUubm93KCkvMUUzKSxXPVtNYXRoLnJhbmRvbSgpKjI1NSxNYXRoLnJhbmRvbSgpKjI1NV0sRD1XLmNvbmNhdChbdGhpcy5qJjI1NSx0aGlzLmNsaWVudFN0YXRlXSxbbj4+MjQmMjU1LG4+PjE2JjI1NSxuPj44JjI1NSxuJjI1NV0pO249bmV3IFVpbnQ4QXJyYXkoMitELmxlbmd0aCk7blswXT0zNDtuWzFdPUQubGVuZ3RoO24uc2V0KEQsMik7RD1uLnN1YmFycmF5KDIpO1c9Vy5sZW5ndGg7Zm9yKGxldCBiPVc7YjxELmxlbmd0aDsrK2IpRFtiXV49RFtiJVddO3RoaXMubG9nZ2VyLmNKKHRoaXMuY2xpZW50U3RhdGUpO3JldHVybiBufX07dmFyIGVZaT17WFU6M0U0LHJTOjJFNH0sQW10PWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMuWD1uZXcgZy5LVjt0aGlzLmo9MDt0aGlzLko9dm9pZCAwO3RoaXMuc3RhdGU9Mjt0aGlzLk8xPW4uTzE7dGhpcy5VZz1uLlVnO3RoaXMua2Q9ey4uLmVZaSwuLi4obi5rZHx8e30pfTt0aGlzLmxvZ2dlcj1uLk8xLlFEKCk7dGhpcy5vbkVycm9yPW4ub25FcnJvcj8/KCgpPT57fSk7CnRoaXMuWGw9bi5YbHx8ITE7aWYoZ2R0KG4pKXtsZXQgYj10aGlzLk8xO3RoaXMuVj0oKT0+TlR0KGIpLmNhdGNoKHY9Pnt0aGlzLko9dj10aGlzLnJlcG9ydEVycm9yKG5ldyBRRyh0aGlzLk4/MjA6MzIsIlRSRzpEaXNwb3NlZCIsdikpO3RoaXMuTj8uZGlzcG9zZSgpO3RoaXMuTj12b2lkIDA7dGhpcy5YLnJlamVjdCh2KX0pOwpwNGkoYiwoKT0+dm9pZCBCMyh0aGlzKSk7CmIuWT09PTImJkIzKHRoaXMpfWVsc2UgdGhpcy5WPW4uRTYsQjModGhpcyk7dmFyIFc9dGhpcy5sb2dnZXIuc2hhcmUoKTtXLk4oIm8iKTt2YXIgRD1uZXcgTWwoVywibyIpO3RoaXMuWC5wcm9taXNlLnRoZW4oKCk9PntELmRvbmUoKTtXLlcoKTtXLmRpc3Bvc2UoKX0sKCk9PnZvaWQgVy5kaXNwb3NlKCkpOwp0aGlzLmFkZE9uRGlzcG9zZUNhbGxiYWNrKCgpPT57dGhpcy5OPyh0aGlzLk4uZGlzcG9zZSgpLHRoaXMuTj12b2lkIDApOnRoaXMuSj90aGlzLmxvZ2dlci5XKCk6KHRoaXMuSj10aGlzLnJlcG9ydEVycm9yKG5ldyBRRygzMiwiVE5QOkRpc3Bvc2VkIikpLHRoaXMubG9nZ2VyLlcoKSx0aGlzLlgucmVqZWN0KHRoaXMuSikpfSk7CmcudSh0aGlzLHRoaXMubG9nZ2VyKX1IJCgpe3JldHVybiB0aGlzLlgucHJvbWlzZX1XKG4pe3JldHVybiBNdih0aGlzLHsuLi5ufSwhMSl9WlIobil7cmV0dXJuIE12KHRoaXMsey4uLm59LCEwKX15aChuKXtpZighKG4+MTUwKSl0cnl7dGhpcy5jYWNoZT1uZXcgTDVTKG4sdGhpcy5sb2dnZXIpfWNhdGNoKFcpe3RoaXMucmVwb3J0RXJyb3IobmV3IFFHKDIyLCJHQko6aW5pdCIsVykpfX1yZXBvcnRFcnJvcihuKXt0aGlzLmxvZ2dlci5KKG4uY29kZSk7dGhpcy5vbkVycm9yKG4pO3JldHVybiBufX0sZ2R0PWZ1bmN0aW9uKG4pe3JldHVybiBxMyhXPT57aWYoIWtDeChXKSlyZXR1cm4hMTtmb3IobGV0IFtELGJdb2YgT2JqZWN0LmVudHJpZXMobikpe2xldCB2PUQsaz1iO2lmKCEodiBpbiBXKSl7aWYoay5LUD09PSEwKWNvbnRpbnVlO3JldHVybiExfWlmKCFrKFdbdl0pKXJldHVybiExfXJldHVybiEwfSl9KHtPMTpxMyhuPT5uIGluc3RhbmNlb2YgVEgpfSwiIik7dmFyIHFuaT1jbGFzc3tjb25zdHJ1Y3Rvcigpe2lmKCFWcCl7VnA9bmV3IGhxKG5ldyBYbkMpO3ZhciBuPXYwKCJjbGllbnRfc3RyZWFtel93ZWJfZmx1c2hfY291bnQiLC0xKTtuIT09LTEmJihWcC5YPW4pfXRoaXMuVz1uPVZwO3VlKG4sIi9jbGllbnRfc3RyZWFtei95b3V0dWJlL2FiYS9nYWMiLERYKCJ0eXBlIiksRFgoInNlcXVlbmNlIikpfUoobixXKXtkcCh0aGlzLlcsIi9jbGllbnRfc3RyZWFtei95b3V0dWJlL2FiYS9nYWMiLG4sVyl9Tigpe3JldHVybiB0aGlzLlcuTigiL2NsaWVudF9zdHJlYW16L3lvdXR1YmUvYWJhL2dhYyIpfX07Zy5jcT1kb2N1bWVudDtnLncyPXdpbmRvdzt2YXIgZGhaPXtIdToiYWxsb3ctZm9ybXMiLFVpOiJhbGxvdy1tb2RhbHMiLEdvOiJhbGxvdy1vcmllbnRhdGlvbi1sb2NrIixFaToiYWxsb3ctcG9pbnRlci1sb2NrIixNTToiYWxsb3ctcG9wdXBzIixmRToiYWxsb3ctcG9wdXBzLXRvLWVzY2FwZS1zYW5kYm94IixGODoiYWxsb3ctcHJlc2VudGF0aW9uIixEczoiYWxsb3ctc2FtZS1vcmlnaW4iLHZ1OiJhbGxvdy1zY3JpcHRzIixPaToiYWxsb3ctdG9wLW5hdmlnYXRpb24iLGdNOiJhbGxvdy10b3AtbmF2aWdhdGlvbi1ieS11c2VyLWFjdGl2YXRpb24ifSxsZVM9Zy53RCgoKT0+ekhpKCkpO2cuRT1nLmJyLnByb3RvdHlwZTtnLkUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGcuYnIodGhpcy5sZWZ0LHRoaXMudG9wLHRoaXMud2lkdGgsdGhpcy5oZWlnaHQpfTsKZy5FLmNvbnRhaW5zPWZ1bmN0aW9uKG4pe3JldHVybiBuIGluc3RhbmNlb2YgZy5NWT9uLng+PXRoaXMubGVmdCYmbi54PD10aGlzLmxlZnQrdGhpcy53aWR0aCYmbi55Pj10aGlzLnRvcCYmbi55PD10aGlzLnRvcCt0aGlzLmhlaWdodDp0aGlzLmxlZnQ8PW4ubGVmdCYmdGhpcy5sZWZ0K3RoaXMud2lkdGg+PW4ubGVmdCtuLndpZHRoJiZ0aGlzLnRvcDw9bi50b3AmJnRoaXMudG9wK3RoaXMuaGVpZ2h0Pj1uLnRvcCtuLmhlaWdodH07CmcuRS5nZXRTaXplPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBnLlFlKHRoaXMud2lkdGgsdGhpcy5oZWlnaHQpfTsKZy5FLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLmxlZnQ9TWF0aC5jZWlsKHRoaXMubGVmdCk7dGhpcy50b3A9TWF0aC5jZWlsKHRoaXMudG9wKTt0aGlzLndpZHRoPU1hdGguY2VpbCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmNlaWwodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKZy5FLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy5sZWZ0PU1hdGguZmxvb3IodGhpcy5sZWZ0KTt0aGlzLnRvcD1NYXRoLmZsb29yKHRoaXMudG9wKTt0aGlzLndpZHRoPU1hdGguZmxvb3IodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5mbG9vcih0aGlzLmhlaWdodCk7cmV0dXJuIHRoaXN9OwpnLkUucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLmxlZnQ9TWF0aC5yb3VuZCh0aGlzLmxlZnQpO3RoaXMudG9wPU1hdGgucm91bmQodGhpcy50b3ApO3RoaXMud2lkdGg9TWF0aC5yb3VuZCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLnJvdW5kKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307CmcuRS5zY2FsZT1mdW5jdGlvbihuLFcpe1c9dHlwZW9mIFc9PT0ibnVtYmVyIj9XOm47dGhpcy5sZWZ0Kj1uO3RoaXMud2lkdGgqPW47dGhpcy50b3AqPVc7dGhpcy5oZWlnaHQqPVc7cmV0dXJuIHRoaXN9O3ZhciBqUEM9L14tLS4rLyxMVz17fTtnLkdFMj1nLndEKCgpPT57dmFyIG49ITE7dHJ5e2xldCBXPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwicGFzc2l2ZSIse2dldCgpe249ITB9fSk7Zy5xaS5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0IixudWxsLFcpfWNhdGNoKFcpe31yZXR1cm4gbn0pO3ZhciB6Q3c9KG5ldyBEYXRlKS5nZXRUaW1lKCk7dmFyIHRJdD1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIgJEcxPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxEKXt0aGlzLmZ2PW47dGhpcy5sMD1XO3RoaXMubWV0YWRhdGE9RH1nZXRNZXRhZGF0YSgpe3JldHVybiB0aGlzLm1ldGFkYXRhfX07dmFyIEJUdD1jbGFzc3tjb25zdHJ1Y3RvcihuLFc9e30pe3RoaXMuUHo9bjt0aGlzLm1ldGFkYXRhPVc7dGhpcy5zdGF0dXM9bnVsbH1nZXRNZXRhZGF0YSgpe3JldHVybiB0aGlzLm1ldGFkYXRhfWdldFN0YXR1cygpe3JldHVybiB0aGlzLnN0YXR1c319O3ZhciByc3c9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2KXt0aGlzLm5hbWU9bjt0aGlzLm1ldGhvZFR5cGU9InVuYXJ5Ijt0aGlzLnJlcXVlc3RUeXBlPVc7dGhpcy5yZXNwb25zZVR5cGU9RDt0aGlzLk49Yjt0aGlzLlc9dn1KKG4sVz17fSl7cmV0dXJuIG5ldyAkRzEobix0aGlzLFcpfWdldE5hbWUoKXtyZXR1cm4gdGhpcy5uYW1lfX07dmFyIHNPTT1uZXcgcnN3KCIvZ29vZ2xlLmludGVybmFsLndhYS52MS5XYWEvQ3JlYXRlIiwkWSx0SXQsbj0+bi5iWSgpLEs4KHRJdCkpO3ZhciBOUDI9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIHFUUz1uZXcgcnN3KCIvZ29vZ2xlLmludGVybmFsLndhYS52MS5XYWEvR2VuZXJhdGVJVCIsTnYsTlAyLG49Pm4uYlkoKSxLOChOUDIpKTt2YXIgWDJyPW5ldyBTZXQoWyJTQVBJU0lESEFTSCIsIkFQSVNJREhBU0giXSk7dmFyIFJIaT1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9Z2V0VmFsdWUoKXt2YXIgbj1pVyh0aGlzLDIpO2lmKEFycmF5LmlzQXJyYXkobil8fG4gaW5zdGFuY2VvZiBnLlFtKXRocm93IEVycm9yKCJDYW5ub3QgYWNjZXNzIHRoZSBBbnkudmFsdWUgZmllbGQgb24gQW55IHByb3RvcyBlbmNvZGVkIHVzaW5nIHRoZSBqc3BiIGZvcm1hdCwgY2FsbCB1bnBhY2tKc3BiIGluc3RlYWQiKTtyZXR1cm4gUnoodGhpcywyKX19O3ZhciBNMWI9SzgoY2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfWdldE1lc3NhZ2UoKXtyZXR1cm4gWTkodGhpcywyKX19KTt2YXIgdHUxPWNsYXNze2NvbnN0cnVjdG9yKG4sVyl7dGhpcy5KPVtdO3RoaXMuWD1bXTt0aGlzLmo9W107dGhpcy5XPVtdO3RoaXMuTj1bXTt0aGlzLlY9bi5NRTt0aGlzLks9Vzt0aGlzLnhocj1uLnhocjt0aGlzLlYmJnc0cih0aGlzKX14VihuLFcpe249PT0iZGF0YSI/dGhpcy5KLnB1c2goVyk6bj09PSJtZXRhZGF0YSI/dGhpcy5YLnB1c2goVyk6bj09PSJzdGF0dXMiP3RoaXMuai5wdXNoKFcpOm49PT0iZW5kIj90aGlzLlcucHVzaChXKTpuPT09ImVycm9yIiYmdGhpcy5OLnB1c2goVyl9cmVtb3ZlTGlzdGVuZXIobixXKXtuPT09ImRhdGEiP0ExKHRoaXMuSixXKTpuPT09Im1ldGFkYXRhIj9BMSh0aGlzLlgsVyk6bj09PSJzdGF0dXMiP0ExKHRoaXMuaixXKTpuPT09ImVuZCI/QTEodGhpcy5XLFcpOm49PT0iZXJyb3IiJiZBMSh0aGlzLk4sVyk7cmV0dXJuIHRoaXN9Y2FuY2VsKCl7dGhpcy54aHIuYWJvcnQoKX19LFFQUz1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKCl7c3VwZXIoKTsKdGhpcy5uYW1lPSJBc3luY1N0YWNrIjtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxuZXcudGFyZ2V0LnByb3RvdHlwZSl9fTtnLml4KG1HLEJKKTttRy5wcm90b3R5cGUuTj1mdW5jdGlvbigpe3ZhciBuPW5ldyBLVyh0aGlzLlgsdGhpcy5XKTt0aGlzLkomJm4uc2V0Q3JlZGVudGlhbHNNb2RlKHRoaXMuSik7cmV0dXJuIG59OwptRy5wcm90b3R5cGUuc2V0Q3JlZGVudGlhbHNNb2RlPWZ1bmN0aW9uKG4pe3RoaXMuSj1ufTsKZy5peChLVyxnLm9XKTtnLkU9S1cucHJvdG90eXBlO2cuRS5vcGVuPWZ1bmN0aW9uKG4sVyl7aWYodGhpcy5yZWFkeVN0YXRlIT0wKXRocm93IHRoaXMuYWJvcnQoKSxFcnJvcigiRXJyb3IgcmVvcGVuaW5nIGEgY29ubmVjdGlvbiIpO3RoaXMuY0o9bjt0aGlzLk89Vzt0aGlzLnJlYWR5U3RhdGU9MTtQWSh0aGlzKX07CmcuRS5zZW5kPWZ1bmN0aW9uKG4pe2lmKHRoaXMucmVhZHlTdGF0ZSE9MSl0aHJvdyB0aGlzLmFib3J0KCksRXJyb3IoIm5lZWQgdG8gY2FsbCBvcGVuKCkgZmlyc3QuICIpO2lmKHRoaXMuWS5zaWduYWwuYWJvcnRlZCl0aHJvdyB0aGlzLmFib3J0KCksRXJyb3IoIlJlcXVlc3Qgd2FzIGFib3J0ZWQuIik7dGhpcy5OPSEwO3ZhciBXPXtoZWFkZXJzOnRoaXMuRCxtZXRob2Q6dGhpcy5jSixjcmVkZW50aWFsczp0aGlzLmosY2FjaGU6dm9pZCAwLHNpZ25hbDp0aGlzLlkuc2lnbmFsfTtuJiYoVy5ib2R5PW4pOyh0aGlzLnR3fHxnLnFpKS5mZXRjaChuZXcgUmVxdWVzdCh0aGlzLk8sVykpLnRoZW4odGhpcy5HRS5iaW5kKHRoaXMpLHRoaXMuRFAuYmluZCh0aGlzKSl9OwpnLkUuYWJvcnQ9ZnVuY3Rpb24oKXt0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0PSIiO3RoaXMuRD1uZXcgSGVhZGVyczt0aGlzLnN0YXR1cz0wO3RoaXMuWS5hYm9ydCgiUmVxdWVzdCB3YXMgYWJvcnRlZC4iKTt0aGlzLlcmJnRoaXMuVy5jYW5jZWwoIlJlcXVlc3Qgd2FzIGFib3J0ZWQuIikuY2F0Y2goKCk9Pnt9KTsKdGhpcy5yZWFkeVN0YXRlPj0xJiZ0aGlzLk4mJnRoaXMucmVhZHlTdGF0ZSE9NCYmKHRoaXMuTj0hMSxaYSh0aGlzKSk7dGhpcy5yZWFkeVN0YXRlPTB9OwpnLkUuR0U9ZnVuY3Rpb24obil7aWYodGhpcy5OJiYodGhpcy5YPW4sdGhpcy5KfHwodGhpcy5zdGF0dXM9dGhpcy5YLnN0YXR1cyx0aGlzLnN0YXR1c1RleHQ9dGhpcy5YLnN0YXR1c1RleHQsdGhpcy5KPW4uaGVhZGVycyx0aGlzLnJlYWR5U3RhdGU9MixQWSh0aGlzKSksdGhpcy5OJiYodGhpcy5yZWFkeVN0YXRlPTMsUFkodGhpcyksdGhpcy5OKSkpaWYodGhpcy5yZXNwb25zZVR5cGU9PT0iYXJyYXlidWZmZXIiKW4uYXJyYXlCdWZmZXIoKS50aGVuKHRoaXMuSFQuYmluZCh0aGlzKSx0aGlzLkRQLmJpbmQodGhpcykpO2Vsc2UgaWYodHlwZW9mIGcucWkuUmVhZGFibGVTdHJlYW0hPT0idW5kZWZpbmVkIiYmImJvZHkiaW4gbil7dGhpcy5XPW4uYm9keS5nZXRSZWFkZXIoKTtpZih0aGlzLlYpe2lmKHRoaXMucmVzcG9uc2VUeXBlKXRocm93IEVycm9yKCdyZXNwb25zZVR5cGUgbXVzdCBiZSBlbXB0eSBmb3IgInN0cmVhbUJpbmFyeUNodW5rcyIgbW9kZSByZXNwb25zZXMuJyk7dGhpcy5yZXNwb25zZT0KW119ZWxzZSB0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0PSIiLHRoaXMuSz1uZXcgVGV4dERlY29kZXI7T2oodGhpcyl9ZWxzZSBuLnRleHQoKS50aGVuKHRoaXMuVUQuYmluZCh0aGlzKSx0aGlzLkRQLmJpbmQodGhpcykpfTsKZy5FLmxFPWZ1bmN0aW9uKG4pe2lmKHRoaXMuTil7aWYodGhpcy5WJiZuLnZhbHVlKXRoaXMucmVzcG9uc2UucHVzaChuLnZhbHVlKTtlbHNlIGlmKCF0aGlzLlYpe3ZhciBXPW4udmFsdWU/bi52YWx1ZTpuZXcgVWludDhBcnJheSgwKTtpZihXPXRoaXMuSy5kZWNvZGUoVyx7c3RyZWFtOiFuLmRvbmV9KSl0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0Kz1XfW4uZG9uZT9aYSh0aGlzKTpQWSh0aGlzKTt0aGlzLnJlYWR5U3RhdGU9PTMmJk9qKHRoaXMpfX07CmcuRS5VRD1mdW5jdGlvbihuKXt0aGlzLk4mJih0aGlzLnJlc3BvbnNlPXRoaXMucmVzcG9uc2VUZXh0PW4sWmEodGhpcykpfTsKZy5FLkhUPWZ1bmN0aW9uKG4pe3RoaXMuTiYmKHRoaXMucmVzcG9uc2U9bixaYSh0aGlzKSl9OwpnLkUuRFA9ZnVuY3Rpb24oKXt0aGlzLk4mJlphKHRoaXMpfTsKZy5FLnNldFJlcXVlc3RIZWFkZXI9ZnVuY3Rpb24obixXKXt0aGlzLkQuYXBwZW5kKG4sVyl9OwpnLkUuZ2V0UmVzcG9uc2VIZWFkZXI9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMuSj90aGlzLkouZ2V0KG4udG9Mb3dlckNhc2UoKSl8fCIiOiIifTsKZy5FLmdldEFsbFJlc3BvbnNlSGVhZGVycz1mdW5jdGlvbigpe2lmKCF0aGlzLkopcmV0dXJuIiI7Zm9yKHZhciBuPVtdLFc9dGhpcy5KLmVudHJpZXMoKSxEPVcubmV4dCgpOyFELmRvbmU7KUQ9RC52YWx1ZSxuLnB1c2goRFswXSsiOiAiK0RbMV0pLEQ9Vy5uZXh0KCk7cmV0dXJuIG4uam9pbigiXHJcbiIpfTsKZy5FLnNldENyZWRlbnRpYWxzTW9kZT1mdW5jdGlvbihuKXt0aGlzLmo9bn07Ck9iamVjdC5kZWZpbmVQcm9wZXJ0eShLVy5wcm90b3R5cGUsIndpdGhDcmVkZW50aWFscyIse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmo9PT0iaW5jbHVkZSJ9LApzZXQ6ZnVuY3Rpb24obil7dGhpcy5zZXRDcmVkZW50aWFsc01vZGUobj8iaW5jbHVkZSI6InNhbWUtb3JpZ2luIil9fSk7Zy5Vai5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgbj1bXSxXPXRoaXMuWDtXJiZuLnB1c2goek4oVyxwbngsITApLCI6Iik7dmFyIEQ9dGhpcy5OO2lmKER8fFc9PSJmaWxlIiluLnB1c2goIi8vIiksKFc9dGhpcy5ZKSYmbi5wdXNoKHpOKFcscG54LCEwKSwiQCIpLG4ucHVzaChxaChEKS5yZXBsYWNlKC8lMjUoWzAtOWEtZkEtRl17Mn0pL2csIiUkMSIpKSxEPXRoaXMuVixEIT1udWxsJiZuLnB1c2goIjoiLFN0cmluZyhEKSk7aWYoRD10aGlzLkopdGhpcy5OJiZELmNoYXJBdCgwKSE9Ii8iJiZuLnB1c2goIi8iKSxuLnB1c2goek4oRCxELmNoYXJBdCgwKT09Ii8iP1luTTpIN2osITApKTsoRD10aGlzLlcudG9TdHJpbmcoKSkmJm4ucHVzaCgiPyIsRCk7KEQ9dGhpcy5qKSYmbi5wdXNoKCIjIix6TihELGZVYikpO3JldHVybiBuLmpvaW4oIiIpfTsKZy5Vai5wcm90b3R5cGUucmVzb2x2ZT1mdW5jdGlvbihuKXt2YXIgVz10aGlzLmNsb25lKCksRD0hIW4uWDtEP3lOKFcsbi5YKTpEPSEhbi5ZO0Q/Vy5ZPW4uWTpEPSEhbi5OO0Q/RWooVyxuLk4pOkQ9bi5WIT1udWxsO3ZhciBiPW4uSjtpZihEKWlyKFcsbi5WKTtlbHNlIGlmKEQ9ISFuLkope2lmKGIuY2hhckF0KDApIT0iLyIpaWYodGhpcy5OJiYhdGhpcy5KKWI9Ii8iK2I7ZWxzZXt2YXIgdj1XLkoubGFzdEluZGV4T2YoIi8iKTt2IT0tMSYmKGI9Vy5KLnNsaWNlKDAsdisxKStiKX12PWI7aWYodj09Ii4uInx8dj09Ii4iKWI9IiI7ZWxzZSBpZih2LmluZGV4T2YoIi4vIikhPS0xfHx2LmluZGV4T2YoIi8uIikhPS0xKXtiPWcualUodiwiLyIpO3Y9di5zcGxpdCgiLyIpO2xldCBrPVtdO2ZvcihsZXQgaD0wO2g8di5sZW5ndGg7KXtsZXQgeD12W2grK107eD09Ii4iP2ImJmg9PXYubGVuZ3RoJiZrLnB1c2goIiIpOng9PSIuLiI/KChrLmxlbmd0aD4xfHxrLmxlbmd0aD09MSYma1swXSE9CiIiKSYmay5wb3AoKSxiJiZoPT12Lmxlbmd0aCYmay5wdXNoKCIiKSk6KGsucHVzaCh4KSxiPSEwKX1iPWsuam9pbigiLyIpfWVsc2UgYj12fUQ/Vy5KPWI6RD1uLlcudG9TdHJpbmcoKSE9PSIiO0Q/dXIoVyxuLlcuY2xvbmUoKSk6RD0hIW4uajtEJiYoVy5qPW4uaik7cmV0dXJuIFd9OwpnLlVqLnByb3RvdHlwZS5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgZy5Vaih0aGlzKX07CnZhciBwbng9L1sjXC9cP0BdL2csSDdqPS9bI1w/Ol0vZyxZbk09L1sjXD9dL2csRHhTPS9bI1w/QF0vZyxmVWI9LyMvZztnLkU9ZGgucHJvdG90eXBlO2cuRS5hZGQ9ZnVuY3Rpb24obixXKXtUTih0aGlzKTt0aGlzLlc9bnVsbDtuPWpTKHRoaXMsbik7dmFyIEQ9dGhpcy5OLmdldChuKTtEfHx0aGlzLk4uc2V0KG4sRD1bXSk7RC5wdXNoKFcpO3RoaXMuSj10aGlzLkorMTtyZXR1cm4gdGhpc307CmcuRS5yZW1vdmU9ZnVuY3Rpb24obil7VE4odGhpcyk7bj1qUyh0aGlzLG4pO3JldHVybiB0aGlzLk4uaGFzKG4pPyh0aGlzLlc9bnVsbCx0aGlzLko9dGhpcy5KLXRoaXMuTi5nZXQobikubGVuZ3RoLHRoaXMuTi5kZWxldGUobikpOiExfTsKZy5FLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5OPXRoaXMuVz1udWxsO3RoaXMuSj0wfTsKZy5FLmlzRW1wdHk9ZnVuY3Rpb24oKXtUTih0aGlzKTtyZXR1cm4gdGhpcy5KPT0wfTsKZy5FLmZvckVhY2g9ZnVuY3Rpb24obixXKXtUTih0aGlzKTt0aGlzLk4uZm9yRWFjaChmdW5jdGlvbihELGIpe0QuZm9yRWFjaChmdW5jdGlvbih2KXtuLmNhbGwoVyx2LGIsdGhpcyl9LHRoaXMpfSx0aGlzKX07CmcuRS51Qj1mdW5jdGlvbigpe1ROKHRoaXMpO3ZhciBuPUFycmF5LmZyb20odGhpcy5OLnZhbHVlcygpKSxXPUFycmF5LmZyb20odGhpcy5OLmtleXMoKSksRD1bXTtmb3IobGV0IGI9MDtiPFcubGVuZ3RoO2IrKyl7bGV0IHY9bltiXTtmb3IobGV0IGs9MDtrPHYubGVuZ3RoO2srKylELnB1c2goV1tiXSl9cmV0dXJuIER9OwpnLkUuejc9ZnVuY3Rpb24obil7VE4odGhpcyk7dmFyIFc9W107aWYodHlwZW9mIG49PT0ic3RyaW5nIilDVyh0aGlzLG4pJiYoVz1XLmNvbmNhdCh0aGlzLk4uZ2V0KGpTKHRoaXMsbikpKSk7ZWxzZXtuPUFycmF5LmZyb20odGhpcy5OLnZhbHVlcygpKTtmb3IobGV0IEQ9MDtEPG4ubGVuZ3RoO0QrKylXPVcuY29uY2F0KG5bRF0pfXJldHVybiBXfTsKZy5FLnNldD1mdW5jdGlvbihuLFcpe1ROKHRoaXMpO3RoaXMuVz1udWxsO249alModGhpcyxuKTtDVyh0aGlzLG4pJiYodGhpcy5KPXRoaXMuSi10aGlzLk4uZ2V0KG4pLmxlbmd0aCk7dGhpcy5OLnNldChuLFtXXSk7dGhpcy5KPXRoaXMuSisxO3JldHVybiB0aGlzfTsKZy5FLmdldD1mdW5jdGlvbihuLFcpe2lmKCFuKXJldHVybiBXO249dGhpcy56NyhuKTtyZXR1cm4gbi5sZW5ndGg+MD9TdHJpbmcoblswXSk6V307CmcuRS50b1N0cmluZz1mdW5jdGlvbigpe2lmKHRoaXMuVylyZXR1cm4gdGhpcy5XO2lmKCF0aGlzLk4pcmV0dXJuIiI7dmFyIG49W10sVz1BcnJheS5mcm9tKHRoaXMuTi5rZXlzKCkpO2ZvcihsZXQgYj0wO2I8Vy5sZW5ndGg7YisrKXt2YXIgRD1XW2JdO2xldCB2PXFoKEQpO0Q9dGhpcy56NyhEKTtmb3IobGV0IGs9MDtrPEQubGVuZ3RoO2srKyl7bGV0IGg9djtEW2tdIT09IiImJihoKz0iPSIrcWgoRFtrXSkpO24ucHVzaChoKX19cmV0dXJuIHRoaXMuVz1uLmpvaW4oIiYiKX07CmcuRS5jbG9uZT1mdW5jdGlvbigpe3ZhciBuPW5ldyBkaDtuLlc9dGhpcy5XO3RoaXMuTiYmKG4uTj1uZXcgTWFwKHRoaXMuTiksbi5KPXRoaXMuSik7cmV0dXJuIG59OwpnLkUuZXh0ZW5kPWZ1bmN0aW9uKG4pe2ZvcihsZXQgVz0wO1c8YXJndW1lbnRzLmxlbmd0aDtXKyspbktpKGFyZ3VtZW50c1tXXSxmdW5jdGlvbihELGIpe3RoaXMuYWRkKGIsRCl9LHRoaXMpfTtnLml4KEJZLGcuRk0pO3ZhciBKc2o9W107Zy5FPUJZLnByb3RvdHlwZTtnLkUuU189ZnVuY3Rpb24obixXLEQsYil7QXJyYXkuaXNBcnJheShXKXx8KFcmJihKc2pbMF09Vy50b1N0cmluZygpKSxXPUpzaik7Zm9yKGxldCB2PTA7djxXLmxlbmd0aDt2Kyspe2xldCBrPUFIKG4sV1t2XSxEfHx0aGlzLmhhbmRsZUV2ZW50LGJ8fCExLHRoaXMuSnx8dGhpcyk7aWYoIWspYnJlYWs7dGhpcy5OW2sua2V5XT1rfXJldHVybiB0aGlzfTsKZy5FLmVGPWZ1bmN0aW9uKG4sVyxELGIpe3JldHVybiBGbSh0aGlzLG4sVyxELGIpfTsKZy5FLndIPWZ1bmN0aW9uKG4sVyxELGIsdil7aWYoQXJyYXkuaXNBcnJheShXKSlmb3IobGV0IGs9MDtrPFcubGVuZ3RoO2srKyl0aGlzLndIKG4sV1trXSxELGIsdik7ZWxzZSBEPUR8fHRoaXMuaGFuZGxlRXZlbnQsYj1nLmZ0KGIpPyEhYi5jYXB0dXJlOiEhYix2PXZ8fHRoaXMuSnx8dGhpcyxEPW1oKEQpLGI9ISFiLFc9TjUobik/bi5zYyhXLEQsYix2KTpuPyhuPU8yKG4pKT9uLnNjKFcsRCxiLHYpOm51bGw6bnVsbCxXJiYoRTIoVyksZGVsZXRlIHRoaXMuTltXLmtleV0pfTsKZy5FLlRpPWZ1bmN0aW9uKCl7Zy5hXyh0aGlzLk4sZnVuY3Rpb24obixXKXt0aGlzLk4uaGFzT3duUHJvcGVydHkoVykmJkUyKG4pfSx0aGlzKTsKdGhpcy5OPXt9fTsKZy5FLm1BPWZ1bmN0aW9uKCl7QlkuVEIubUEuY2FsbCh0aGlzKTt0aGlzLlRpKCl9OwpnLkUuaGFuZGxlRXZlbnQ9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiRXZlbnRIYW5kbGVyLmhhbmRsZUV2ZW50IG5vdCBpbXBsZW1lbnRlZCIpO307dmFyIGtoUz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuVz0hMDt0aGlzLko9MDt0aGlzLk49IiJ9aXNJbnB1dFZhbGlkKCl7cmV0dXJuIHRoaXMuV319O010LnByb3RvdHlwZS5pc0lucHV0VmFsaWQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OIT0zfTsKTXQucHJvdG90eXBlLnM4PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuVn07Ck10LnByb3RvdHlwZS5hbz1mdW5jdGlvbigpe3JldHVybiEwfTsKTXQucHJvdG90eXBlLnBhcnNlPWZ1bmN0aW9uKG4pe2Z1bmN0aW9uIFcoTCl7TCYxMjgmJlJzKGssaCx4LCJpbnZhbGlkIHRhZyIpOyhMJjcpIT0yJiZScyhrLGgseCwiaW52YWxpZCB3aXJlIHR5cGUiKTtrLlc9TD4+PjM7ay5XIT0xJiZrLlchPTImJmsuVyE9MTUmJlJzKGssaCx4LCJ1bmV4cGVjdGVkIHRhZyIpO2suTj0xO2suSj0wO2suWD0wfQpmdW5jdGlvbiBEKEwpe2suWCsrO2suWD09NSYmTCYyNDAmJlJzKGssaCx4LCJtZXNzYWdlIGxlbmd0aCB0b28gbG9uZyIpO2suSnw9KEwmMTI3KTw8KGsuWC0xKSo3O0wmMTI4fHwoay5OPTIsay5ZPTAsdHlwZW9mIFVpbnQ4QXJyYXkhPT0idW5kZWZpbmVkIj9rLmo9bmV3IFVpbnQ4QXJyYXkoay5KKTprLmo9QXJyYXkoay5KKSxrLko9PTAmJnYoKSl9CmZ1bmN0aW9uIGIoTCl7ay5qW2suWSsrXT1MO2suWT09ay5KJiZ2KCl9CmZ1bmN0aW9uIHYoKXtpZihrLlc8MTUpe2xldCBMPXt9O0xbay5XXT1rLmo7ay5LLnB1c2goTCl9ay5OPTB9CmZvcih2YXIgaz10aGlzLGg9biBpbnN0YW5jZW9mIEFycmF5P246bmV3IFVpbnQ4QXJyYXkobikseD0wO3g8aC5sZW5ndGg7KXtzd2l0Y2goay5OKXtjYXNlIDM6UnMoayxoLHgsInN0cmVhbSBhbHJlYWR5IGJyb2tlbiIpO2JyZWFrO2Nhc2UgMDpXKGhbeF0pO2JyZWFrO2Nhc2UgMTpEKGhbeF0pO2JyZWFrO2Nhc2UgMjpiKGhbeF0pO2JyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoInVuZXhwZWN0ZWQgcGFyc2VyIHN0YXRlOiAiK2suTik7fWsuRCsrO3grK31uPWsuSztrLks9W107cmV0dXJuIG4ubGVuZ3RoPjA/bjpudWxsfTtRTi5wcm90b3R5cGUuaXNJbnB1dFZhbGlkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTj09PW51bGx9OwpRTi5wcm90b3R5cGUuczg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OfTsKUU4ucHJvdG90eXBlLmFvPWZ1bmN0aW9uKCl7cmV0dXJuITF9OwpRTi5wcm90b3R5cGUucGFyc2U9ZnVuY3Rpb24obil7dGhpcy5OIT09bnVsbCYmVk4odGhpcyxuLCJzdHJlYW0gYWxyZWFkeSBicm9rZW4iKTt2YXIgVz1udWxsO3RyeXt7dmFyIEQ9dGhpcy5XO0QuV3x8d2goRCxuLCJzdHJlYW0gYWxyZWFkeSBicm9rZW4iKTtELk4rPW47bGV0IGs9TWF0aC5mbG9vcihELk4ubGVuZ3RoLzQpO2lmKGs9PTApdmFyIGI9bnVsbDtlbHNle3RyeXt2YXIgdj16aChELk4uc2xpY2UoMCxrKjQpKX1jYXRjaChoKXt3aChELEQuTixoLm1lc3NhZ2UpfUQuSis9ayo0O0QuTj1ELk4uc2xpY2Uoayo0KTtiPXZ9fVc9Yj09PW51bGw/bnVsbDp0aGlzLlgucGFyc2UoYil9Y2F0Y2goayl7Vk4odGhpcyxuLGsubWVzc2FnZSl9dGhpcy5KKz1uLmxlbmd0aDtyZXR1cm4gV307Zy5FPWFzLnByb3RvdHlwZTtnLkUuaXNJbnB1dFZhbGlkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaiE9M307CmcuRS5zOD1mdW5jdGlvbigpe3JldHVybiB0aGlzLkR9OwpnLkUuZG9uZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmo9PT0yfTsKZy5FLmFvPWZ1bmN0aW9uKCl7cmV0dXJuITF9OwpnLkUucGFyc2U9ZnVuY3Rpb24obil7ZnVuY3Rpb24gVygpe2Zvcig7cjxuLmxlbmd0aDspaWYoY1kobltyXSkpcisrLGsuVysrO2Vsc2UgYnJlYWs7cmV0dXJuIHI8TH0KZnVuY3Rpb24gRCgpe2Zvcih2YXIgSDs7KXtIPW5bcisrXTtpZighSClicmVhaztrLlcrKztzd2l0Y2goay5OKXtjYXNlIDA6SD09PSJ7Ij9rLk49MjpIPT09IlsiP2suTj00OmNZKEgpfHxuXyhrLG4scik7Y29udGludWU7Y2FzZSA3OmNhc2UgMjppZihjWShIKSljb250aW51ZTtpZihrLk49PT03KWgucHVzaCg4KTtlbHNlIGlmKEg9PT0ifSIpe3YoInt9Iik7ay5OPWIoKTtjb250aW51ZX1lbHNlIGgucHVzaCgzKTtIPT09JyInP2suTj02Om5fKGssbixyKTtjb250aW51ZTtjYXNlIDg6Y2FzZSAzOmlmKGNZKEgpKWNvbnRpbnVlO0g9PT0iOiI/KGsuTj09PTMmJihoLnB1c2goMyksay5KKyspLGsuTj0xKTpIPT09In0iPyhrLkotLSx2KCksay5OPWIoKSk6SD09PSIsIj8oay5OPT09MyYmaC5wdXNoKDMpLGsuTj03KTpuXyhrLG4scik7Y29udGludWU7Y2FzZSA0OmNhc2UgMTppZihjWShIKSljb250aW51ZTtpZihrLk49PT00KWlmKGsuSisrLGsuTj0xLEg9PT0iXSIpe2suSi0tO2lmKGsuSj09PQowKXtrLk49NTtyZXR1cm59digiW10iKTtrLk49YigpO2NvbnRpbnVlfWVsc2UgaC5wdXNoKDUpO0g9PT0nIic/ay5OPTY6SD09PSJ7Ij9rLk49MjpIPT09IlsiP2suTj00Okg9PT0idCI/ay5OPTk6SD09PSJmIj9rLk49MTI6SD09PSJuIj9rLk49MTY6SCE9PSItIiYmKCIwMTIzNDU2Nzg5Ii5pbmRleE9mKEgpIT09LTE/ay5OPTIwOm5fKGssbixyKSk7Y29udGludWU7Y2FzZSA1OmlmKEg9PT0iLCIpaC5wdXNoKDUpLGsuTj0xLGsuSj09PTEmJihHPXIpO2Vsc2UgaWYoSD09PSJdIil7ay5KLS07aWYoay5KPT09MClyZXR1cm47digpO2suTj1iKCl9ZWxzZSBpZihjWShIKSljb250aW51ZTtlbHNlIG5fKGssbixyKTtjb250aW51ZTtjYXNlIDY6bGV0IEE9cjthOmZvcig7Oyl7Zm9yKDtrLlk+MDspaWYoSD1uW3IrK10say5ZPT09ND9rLlk9MDprLlkrKywhSClicmVhayBhO2lmKEg9PT0nIicmJiFrLkspe2suTj1iKCk7YnJlYWt9aWYoSD09PSJcXCImJiFrLksmJihrLks9ITAsSD1uW3IrK10sCiFIKSlicmVhaztpZihrLkspaWYoay5LPSExLEg9PT0idSImJihrLlk9MSksSD1uW3IrK10pY29udGludWU7ZWxzZSBicmVhazt4Lmxhc3RJbmRleD1yO0g9eC5leGVjKG4pO2lmKCFIKXtyPW4ubGVuZ3RoKzE7YnJlYWt9cj1ILmluZGV4KzE7SD1uW0guaW5kZXhdO2lmKCFIKWJyZWFrfWsuVys9ci1BO2NvbnRpbnVlO2Nhc2UgOTppZighSCljb250aW51ZTtIPT09InIiP2suTj0xMDpuXyhrLG4scik7Y29udGludWU7Y2FzZSAxMDppZighSCljb250aW51ZTtIPT09InUiP2suTj0xMTpuXyhrLG4scik7Y29udGludWU7Y2FzZSAxMTppZighSCljb250aW51ZTtIPT09ImUiP2suTj1iKCk6bl8oayxuLHIpO2NvbnRpbnVlO2Nhc2UgMTI6aWYoIUgpY29udGludWU7SD09PSJhIj9rLk49MTM6bl8oayxuLHIpO2NvbnRpbnVlO2Nhc2UgMTM6aWYoIUgpY29udGludWU7SD09PSJsIj9rLk49MTQ6bl8oayxuLHIpO2NvbnRpbnVlO2Nhc2UgMTQ6aWYoIUgpY29udGludWU7SD09PSJzIj9rLk49MTU6Cm5fKGssbixyKTtjb250aW51ZTtjYXNlIDE1OmlmKCFIKWNvbnRpbnVlO0g9PT0iZSI/ay5OPWIoKTpuXyhrLG4scik7Y29udGludWU7Y2FzZSAxNjppZighSCljb250aW51ZTtIPT09InUiP2suTj0xNzpuXyhrLG4scik7Y29udGludWU7Y2FzZSAxNzppZighSCljb250aW51ZTtIPT09ImwiP2suTj0xODpuXyhrLG4scik7Y29udGludWU7Y2FzZSAxODppZighSCljb250aW51ZTtIPT09ImwiP2suTj1iKCk6bl8oayxuLHIpO2NvbnRpbnVlO2Nhc2UgMTk6SD09PSIuIj9rLk49MjA6bl8oayxuLHIpO2NvbnRpbnVlO2Nhc2UgMjA6aWYoIjAxMjM0NTY3ODkuZUUrLSIuaW5kZXhPZihIKSE9PS0xKWNvbnRpbnVlO2Vsc2Ugci0tLGsuVy0tLGsuTj1iKCk7Y29udGludWU7ZGVmYXVsdDpuXyhrLG4scil9fX0KZnVuY3Rpb24gYigpe3ZhciBIPWgucG9wKCk7cmV0dXJuIEghPW51bGw/SDoxfQpmdW5jdGlvbiB2KEgpe2suSj4xfHwoSHx8KEg9Rz09PS0xP2suWCtuLnN1YnN0cmluZyhlLHIpOm4uc3Vic3RyaW5nKEcscikpLGsuTz9rLlYucHVzaChIKTprLlYucHVzaChKU09OLnBhcnNlKEgpKSxHPXIpfQpmb3IodmFyIGs9dGhpcyxoPWsuY0oseD1rLnR3LEw9bi5sZW5ndGgsZT0wLEc9LTEscj0wO3I8TDspc3dpdGNoKGsuail7Y2FzZSAzOnJldHVybiBuXyhrLG4sciksbnVsbDtjYXNlIDI6cmV0dXJuIFcoKSYmbl8oayxuLHIpLG51bGw7Y2FzZSAwOmlmKFcoKSl7dmFyIE49bltyKytdO2suVysrO2lmKE49PT0iWyIpe2suaj0xO2U9cjtrLk49NDtjb250aW51ZX1lbHNlIG5fKGssbixyKX1yZXR1cm4gbnVsbDtjYXNlIDE6cmV0dXJuIEQoKSxrLko9PT0wJiZrLk49PTU/KGsuaj0yLGsuWD1uLnN1YnN0cmluZyhyKSk6ay5YPUc9PT0tMT9rLlgrbi5zdWJzdHJpbmcoZSk6bi5zdWJzdHJpbmcoRyksay5WLmxlbmd0aD4wPyhOPWsuVixrLlY9W10sTik6bnVsbH1yZXR1cm4gbnVsbH07V0sucHJvdG90eXBlLmlzSW5wdXRWYWxpZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmo9PT1udWxsfTsKV0sucHJvdG90eXBlLnM4PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuan07CldLLnByb3RvdHlwZS5hbz1mdW5jdGlvbigpe3JldHVybiExfTsKV0sucHJvdG90eXBlLnBhcnNlPWZ1bmN0aW9uKG4pe2Z1bmN0aW9uIFcoTCl7ay5KPTY7ay5qPSJUaGUgc3RyZWFtIGlzIGJyb2tlbiBAIitrLk4rIi8iK2grIi4gRXJyb3I6ICIrTCsiLiBXaXRoIGlucHV0OlxuIjt0aHJvdyBFcnJvcihrLmopO30KZnVuY3Rpb24gRCgpe2suVz1uZXcgYXMoe1ZMOiEwLFpIOiEwfSl9CmZ1bmN0aW9uIGIoTCl7aWYoTClmb3IobGV0IGU9MDtlPEwubGVuZ3RoO2UrKyl7bGV0IEc9e307R1sxXT1MW2VdO2suWC5wdXNoKEcpfX0KZnVuY3Rpb24gdihMKXtpZihMKXsoay5WfHxMLmxlbmd0aD4xKSYmVygiZXh0cmEgc3RhdHVzOiAiK0wpO2suVj0hMDtsZXQgZT17fTtlWzJdPUxbMF07ay5YLnB1c2goZSl9fQpmb3IodmFyIGs9dGhpcyxoPTA7aDxuLmxlbmd0aDspe3ZhciB4O2lmKHg9ay5KIT09Mil7YTp7Zm9yKDtoPG4ubGVuZ3RoOyl7aWYoIWNZKG5baF0pKXt4PSEwO2JyZWFrIGF9aCsrO2suTisrfXg9ITF9eD0heH1pZih4KXJldHVybiBudWxsO3N3aXRjaChrLkope2Nhc2UgNjpXKCJzdHJlYW0gYWxyZWFkeSBicm9rZW4iKTticmVhaztjYXNlIDA6bltoXT09PSJbIj8oay5KPTEsaCsrLGsuTisrKTpXKCJ1bmV4cGVjdGVkIGlucHV0IHRva2VuIik7YnJlYWs7Y2FzZSAxOm5baF09PT0iWyI/KGsuSj0yLEQoKSk6bltoXT09PSIsInx8bi5zbGljZShoLGgrNSk9PSJudWxsLCI/ay5KPTM6bltoXT09PSJdIj8oay5KPTUsaCsrLGsuTisrKTpXKCJ1bmV4cGVjdGVkIGlucHV0IHRva2VuIik7YnJlYWs7Y2FzZSAyOng9ay5XLnBhcnNlKG4uc3Vic3RyaW5nKGgpKTtiKHgpO2suVy5kb25lKCk/KGsuSj0zLHg9ay5XLlgsay5OKz1uLmxlbmd0aC1oLXgubGVuZ3RoLG49eCxoPTApOihrLk4rPW4ubGVuZ3RoLQpoLGg9bi5sZW5ndGgpO2JyZWFrO2Nhc2UgMzpuW2hdPT09IiwifHxuLnNsaWNlKGgsaCs1KT09Im51bGwsIj8oay5KPTQsRCgpLGsuVy5wYXJzZSgiWyIpLGgrPW5baF09PT0iLCI/MTo1LGsuTisrKTpuW2hdPT09Il0iJiYoay5KPTUsaCsrLGsuTisrKTticmVhaztjYXNlIDQ6eD1rLlcucGFyc2Uobi5zdWJzdHJpbmcoaCkpO3YoeCk7ay5XLmRvbmUoKT8oay5KPTUseD1rLlcuWCxrLk4rPW4ubGVuZ3RoLWgteC5sZW5ndGgsbj14LGg9MCk6KGsuTis9bi5sZW5ndGgtaCxoPW4ubGVuZ3RoKTticmVhaztjYXNlIDU6VygiZXh0cmEgaW5wdXQgYWZ0ZXIgc3RyZWFtIGVuZCIpfX1yZXR1cm4gay5YLmxlbmd0aD4wPyhuPWsuWCxrLlg9W10sbik6bnVsbH07dmFyIHFBdD1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bjt0aGlzLko9bnVsbDt0aGlzLmo9dGhpcy5XPTA7dGhpcy5EPSExO3RoaXMuWD10aGlzLks9dGhpcy5WPW51bGw7dGhpcy5ZPW5ldyBCWSh0aGlzKTt0aGlzLlkuU18odGhpcy5OLCJyZWFkeXN0YXRlY2hhbmdlIix0aGlzLk8pfWdldFN0YXR1cygpe3JldHVybiB0aGlzLmp9TyhuKXtuPW4udGFyZ2V0O3RyeXtpZihuPT10aGlzLk4pYTp7bGV0IGs9YTUodGhpcy5OKTt2YXIgVz10aGlzLk4uVyxEPXRoaXMuTi5nZXRTdGF0dXMoKTtsZXQgaD1XMyh0aGlzLk4pO249W107aWYoRG8odGhpcy5OKWluc3RhbmNlb2YgQXJyYXkpe2xldCB4PURvKHRoaXMuTik7eC5sZW5ndGg+MCYmeFswXWluc3RhbmNlb2YgVWludDhBcnJheSYmKHRoaXMuRD0hMCxuPXgpfWlmKCEoazwzfHxrPT0zJiYhaCYmbi5sZW5ndGg9PTApKWlmKEQ9RD09MjAwfHxEPT0yMDYsaz09NCYmKFc9PTg/RGkodGhpcyw3KTpXPT03P0RpKHRoaXMsOCk6RHx8CkRpKHRoaXMsMykpLHRoaXMuSnx8KHRoaXMuSj1oQ3godGhpcy5OKSx0aGlzLko9PW51bGwmJkRpKHRoaXMsNSkpLHRoaXMuaj4yKWJIKHRoaXMpO2Vsc2V7aWYobi5sZW5ndGg+dGhpcy5XKXtsZXQgeD1uLmxlbmd0aDtXPVtdO3RyeXtpZih0aGlzLkouYW8oKSlmb3IodmFyIGI9MDtiPHg7YisrKXt2YXIgdj10aGlzLkoucGFyc2UoQXJyYXkuZnJvbShuW2JdKSk7diYmKFc9Vy5jb25jYXQodikpfWVsc2V7dj0iIjtpZighdGhpcy5WKXtpZih0eXBlb2YgVGV4dERlY29kZXI9PT0idW5kZWZpbmVkIil0aHJvdyBFcnJvcigiVGV4dERlY29kZXIgaXMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGJyb3dzZXIuIik7dGhpcy5WPW5ldyBUZXh0RGVjb2Rlcn1mb3IoYj0wO2I8eDtiKyspdis9dGhpcy5WLmRlY29kZShuW2JdLHtzdHJlYW06az09NCYmYj09eC0xfSk7Vz10aGlzLkoucGFyc2Uodil9bi5zcGxpY2UoMCx4KTtXJiZ0aGlzLlgoVyl9Y2F0Y2goTCl7RGkodGhpcyw1KTtiSCh0aGlzKTsKYnJlYWsgYX19ZWxzZSBpZihoLmxlbmd0aD50aGlzLlcpe2I9aC5zbGljZSh0aGlzLlcpO3RoaXMuVz1oLmxlbmd0aDt0cnl7bGV0IHg9dGhpcy5KLnBhcnNlKGIpO3ghPW51bGwmJnRoaXMuWCYmdGhpcy5YKHgpfWNhdGNoKHgpe0RpKHRoaXMsNSk7YkgodGhpcyk7YnJlYWsgYX19az09ND8oaC5sZW5ndGghPTB8fHRoaXMuRD9EaSh0aGlzLDIpOkRpKHRoaXMsNCksYkgodGhpcykpOkRpKHRoaXMsMSl9fX1jYXRjaChrKXtEaSh0aGlzLDYpLGJIKHRoaXMpfX19O3ZhciBHaGk9Y2xhc3N7Y29uc3RydWN0b3Iobil7bj10aGlzLlc9bjt2YXIgVz0oMCxnLkt0KSh0aGlzLlgsdGhpcyk7bi5YPVc7bj10aGlzLlc7Vz0oMCxnLkt0KSh0aGlzLmosdGhpcyk7bi5LPVc7dGhpcy5KPXt9O3RoaXMuTj17fX14VihuLFcpe3ZhciBEPXRoaXMuSltuXTtEfHwoRD1bXSx0aGlzLkpbbl09RCk7RC5wdXNoKFcpfWFkZExpc3RlbmVyKG4sVyl7dGhpcy54VihuLFcpO3JldHVybiB0aGlzfXJlbW92ZUxpc3RlbmVyKG4sVyl7dmFyIEQ9dGhpcy5KW25dO0QmJmcuRkkoRCxXKTsobj10aGlzLk5bbl0pJiZnLkZJKG4sVyk7cmV0dXJuIHRoaXN9b25jZShuLFcpe3ZhciBEPXRoaXMuTltuXTtEfHwoRD1bXSx0aGlzLk5bbl09RCk7RC5wdXNoKFcpO3JldHVybiB0aGlzfVgobil7dmFyIFc9dGhpcy5KLmRhdGE7VyYmdksobixXKTsoVz10aGlzLk4uZGF0YSkmJnZLKG4sVyk7dGhpcy5OLmRhdGE9W119aigpe3N3aXRjaCh0aGlzLlcuZ2V0U3RhdHVzKCkpe2Nhc2UgMTprdCh0aGlzLAoicmVhZGFibGUiKTticmVhaztjYXNlIDU6Y2FzZSA2OmNhc2UgNDpjYXNlIDc6Y2FzZSAzOmt0KHRoaXMsImVycm9yIik7YnJlYWs7Y2FzZSA4Omt0KHRoaXMsImNsb3NlIik7YnJlYWs7Y2FzZSAyOmt0KHRoaXMsImVuZCIpfX19O3ZhciAkeGg9Y2xhc3N7Y29uc3RydWN0b3IoKXt2YXIgbj17Zm9ybWF0OiJqc3BiIn07dGhpcy5ZTz1uLllPfHxnLnJyKCJzdXBwcmVzc0NvcnNQcmVmbGlnaHQiLG4pfHwhMTt0aGlzLndpdGhDcmVkZW50aWFscz1uLndpdGhDcmVkZW50aWFsc3x8Zy5ycigid2l0aENyZWRlbnRpYWxzIixuKXx8ITE7dGhpcy5LYj1uLktifHxbXTt0aGlzLkZOPW4uRk58fFtdO3RoaXMuU249bi5Tbjt0aGlzLk49bi5sSXx8ITF9c2VydmVyU3RyZWFtaW5nKG4sVyxELGIpe3ZhciB2PW4uc3Vic3RyaW5nKDAsbi5sZW5ndGgtYi5uYW1lLmxlbmd0aCk7cmV0dXJuIHh4aihrPT57dmFyIGg9ay5sMCx4PWsuZ2V0TWV0YWRhdGEoKSxMPWhhKHRoaXMsITEpO3g9eHQodGhpcyx4LEwsditoLmdldE5hbWUoKSk7dmFyIGU9TF8oTCxoLlcsITApO2s9aC5OKGsuZnYpO0wuc2VuZCh4LCJQT1NUIixrKTtyZXR1cm4gZX0sdGhpcy5LYikuY2FsbCh0aGlzLGIuSihXLEQpKX19O3F3LnByb3RvdHlwZS5jcmVhdGU9ZnVuY3Rpb24obixXLEQpe3JldHVybiBZWSh0aGlzLk4sdGhpcy5KKyIvJHJwYy9nb29nbGUuaW50ZXJuYWwud2FhLnYxLldhYS9DcmVhdGUiLG4sV3x8e30sc09NLEQpfTt2YXIgYW09Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLmQ1PTM7dGhpcy5ueD1uO3RoaXMuZGVmYXVsdFZhbHVlPVc7dGhpcy5VMD0iYm9vbCJ9fSxuaj1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuZDU9Mzt0aGlzLm54PW47dGhpcy5kZWZhdWx0VmFsdWU9Vzt0aGlzLlUwPSJpbnQifX0sV0M9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLmQ1PTM7dGhpcy5ueD1uO3RoaXMuZGVmYXVsdFZhbHVlPVc7dGhpcy5VMD0iZG91YmxlIn19O3ZhciBTY3QsSVV3LFljLEFzVSxub3IsV0lNLG1HWixLNVUsTzcxLEhwLFo3VSxVR0MsUHJpLHlzeCxFZGksaTdDLHVOYixVQmIsZEd0LHpZaSxsVXIsVFBVLGpPaSxDSmksa3FNLERaLEY1aSxjZix3bjIsSGZ4LFNvUyxJWWksTUl4LHowaSxsWWgsVE5DLEJwdCxSWXcsUU94LFZJaixpbGksa1RiLFZrdyxjc3IsYVVNLGJELG5KaSxXRlMsbmEsRGRTLGJnaSx2NWksdkpDLFRfQyx0UzIsa19pLGhGaix4ZGgsZUZVLGdKMSxYQU0scURTLEdfcix0SlMsJGQyLHJUaixzcjIsanNaLE5GVSxHb00seSRqLHllaSxwQXQsanZNLEtZeCxZRFosSGdaLHZDLEplMSxmY3Qsa05qLEpUeCxJY2ksSGYsaldTLFNEUyxZSmIsQVRaLG1kdyxsaVosS0ZyLE9nMixwYk0sd2JTLFpnTSx5VDIsRUpNLHdJMTtTY3Q9bmV3IGFtKDQ1NzU5NTgwLCExKTtJVXc9bmV3IGFtKDQ1NzY2MjczLCExKTtnLlNuaj1uZXcgYW0oNDU3NTc4NzgsITEpO1ljPW5ldyBhbSg0NTc0OTM5NiwhMSk7CkFzVT1uZXcgYW0oNDU4MDg1MjgsITEpO25vcj1uZXcgYW0oNDU3NDIxMTksITEpO1dJTT1uZXcgYW0oNDU3ODQxNjgsITEpO21HWj1uZXcgYW0oNDU4MDEwNjgsITEpO0s1VT1uZXcgYW0oNDU3Nzg2OTYsITEpO083MT1uZXcgYW0oNDU3NTY0NDYsITEpO2cuUEpNPW5ldyBhbSg0NTgwODE1MCwhMSk7SHA9bmV3IGFtKDQ1ODA3NzY0LCExKTtaN1U9bmV3IGFtKDQ1Nzk3NzIxLCExKTtVR0M9bmV3IGFtKDQ1Nzk4OTMyLCExKTtQcmk9bmV3IGFtKDQ1NzYwMDE4LCExKTt5c3g9bmV3IGFtKDQ1NzM5MTk2LCExKTtFZGk9bmV3IGFtKDQ1Nzk0ODY4LCExKTtpN0M9bmV3IGFtKDQ1NzM5MTk4LCExKTt1TmI9bmV3IGFtKDQ1Nzk0ODY3LCExKTtVQmI9bmV3IGFtKDQ1Nzc3MzU2LCExKTtnLm9kWj1uZXcgbmooNDU3NTA5NDcsZy4kVSgiMCIpKTtkR3Q9bmV3IGFtKDQ1Nzk5OTEyLCExKTt6WWk9bmV3IFdDKDQ1NzQ2OTY2LDApO2xVcj1uZXcgV0MoNDU3NDY5NjcsMCk7ClRQVT1uZXcgV0MoNDU3Mzc0ODgsMCk7ak9pPW5ldyBXQyg0NTczNzQ4OSwwKTtDSmk9bmV3IGFtKDQ1Nzk1NTczLCExKTtnLkJQUz1uZXcgYW0oNDU3NjU2ODAsITEpO2txTT1uZXcgYW0oNDU3MzI3OTEsITApO0RaPW5ldyBhbSg0NTc4MTExMiwhMSk7RjVpPW5ldyBhbSg0NTgwODY1MCwhMSk7Y2Y9bmV3IGFtKDQ1ODExODU3LCExKTt3bjI9bmV3IGFtKDQ1ODA1OTY4LCExKTtIZng9bmV3IGFtKDQ1NzY5MTE5LCEwKTtTb1M9bmV3IG5qKDQ1ODA2NTU1LGcuJFUoIjIiKSk7SVlpPW5ldyBuaig0NTc4NDQzOSxnLiRVKCIwIikpO01JeD1uZXcgYW0oNDU4MTc0MDksITEpO3owaT1uZXcgYW0oNDU3Mzc0ODIsITEpO2xZaD1uZXcgV0MoNDU3NDE3NzMsMCk7VE5DPW5ldyBhbSg0NTgwNTg0OCwhMSk7QnB0PW5ldyBhbSg0NTc3MzY3MywhMSk7Ull3PW5ldyBhbSg0NTgwMDYzMywhMSk7UU94PW5ldyBhbSg0NTc5ODA3OCwhMSk7VklqPW5ldyBhbSg0NTczMTA4MywhMSk7CmlsaT1uZXcgYW0oNDU3OTcyNzksITEpO2tUYj1uZXcgYW0oNDU3Mjg1NTMsITEpO1Zrdz1uZXcgYW0oNDU3OTY3NTAsITEpO2Nzcj1uZXcgYW0oNDU3OTQ2ODAsITEpO2FVTT1uZXcgYW0oNDU4MTMwMjcsITEpO2JEPW5ldyBhbSg0NTczNDE5MSwhMSk7bkppPW5ldyBhbSg0NTc5Njc3NywhMSk7V0ZTPW5ldyBhbSg0NTc5Njc3OCwhMSk7bmE9bmV3IGFtKDQ1ODEwNjYxLCExKTtnLkFoPW5ldyBhbSg0NTc0NTYxMCwhMSk7RGRTPW5ldyBhbSg0NTgxNjU3MSwhMSk7YmdpPW5ldyBhbSg0NTc3MzI3MywhMSk7djVpPW5ldyBhbSg0NTc1NjYxOSwhMSk7dkpDPW5ldyBhbSg0NTc1ODI5MCwhMSk7VF9DPW5ldyBhbSg0NTgxMzgzMSwhMSk7dFMyPW5ldyBhbSg0NTczNTUyMywhMSk7a19pPW5ldyBXQyg0NTc3MTg5MCwwKTtoRmo9bmV3IFdDKDQ1ODA3NzczLDApO3hkaD1uZXcgV0MoNDU3MzU0MjgsNEUzKTtnLkxGaT1uZXcgYW0oNDU3ODkwNzcsITEpO2VGVT1uZXcgYW0oNDU3NDgwMDksITEpOwpnSjE9bmV3IGFtKDQ1NzUyNjA0LCExKTtYQU09bmV3IFdDKDQ1NzY5MjE0LDApO3FEUz1uZXcgYW0oNDU3MzU0NjIsITEpO0dfcj1uZXcgYW0oNDU4MTUwNzMsITEpO3RKUz1uZXcgYW0oNDU3NTE5NDMsITEpOyRkMj1uZXcgYW0oNDU3NTE5NDQsITEpO3JUaj1uZXcgYW0oNDU3NTE5NDUsITEpO3NyMj1uZXcgbmooNDU4MDg3NjIsZy4kVSgiMCIpKTtqc1o9bmV3IGFtKDQ1NzY0NTkyLCExKTtORlU9bmV3IFdDKDQ1NzY0NTkzLDApO0dvTT1uZXcgYW0oNDU3NjY1MTEsITEpO3kkaj1uZXcgYW0oNDU4MDYzODgsITEpO3llaT1uZXcgYW0oNDU4MDYzNjMsITEpO3BBdD1uZXcgYW0oNDU4MTU1OTIsITEpO2p2TT1uZXcgYW0oNDU4MTQ0ODAsITEpO0tZeD1uZXcgYW0oNDU4MTA0NjcsITEpO1lEWj1uZXcgYW0oNDU3OTEzMjYsITEpO0hnWj1uZXcgYW0oNDU3ODc3NzEsITEpO3ZDPW5ldyBhbSg0NTc5MTA4NywhMSk7SmUxPW5ldyBhbSg0NTc3Mjg5MSwhMSk7CmZjdD1uZXcgYW0oNDU3OTU4NDQsITEpO2tOaj1uZXcgYW0oNDU3ODM4NzUsITApO0pUeD1uZXcgYW0oNDU3OTU1NzQsITEpO0ljaT1uZXcgYW0oNDU3NzE4OTEsITEpO0hmPW5ldyBhbSg0NTcyODE4MSwhMSk7aldTPW5ldyBhbSg0NTc1NjU0MywhMSk7U0RTPW5ldyBhbSg0NTc1NjYyMCwhMSk7WUpiPW5ldyBhbSg0NTgwODc1NCwhMSk7QVRaPW5ldyBuaig0NTc2MTc2MCxnLiRVKCIyMDAiKSk7bWR3PW5ldyBhbSg0NTc3NjgzMiwhMSk7bGlaPW5ldyBXQyg0NTc2ODQzMCwwKTtLRnI9bmV3IGFtKDQ1Nzc2NTgwLCExKTtPZzI9bmV3IGFtKDQ1NzU1NzYwLCExKTtwYk09bmV3IGFtKDQ1NzYwMDE3LCExKTt3YlM9bmV3IGFtKDQ1NzMyNzc1LCExKTtnLlAzMT1uZXcgYW0oNDU3ODc5NDgsITEpO1pnTT1uZXcgYW0oNDU3NjU4MTgsITEpO2cuVWRDPW5ldyBhbSg0NTczNDc3NiwhMSk7eVQyPW5ldyBhbSg0NTgxNjgxMSwhMSk7RUpNPW5ldyBhbSg0NTc2MDEyMCwhMSk7Cmcua0g9bmV3IGFtKDQ1NzcwNDc2LCExKTt3STE9bmV3IGFtKDQ1ODA4MDUzLCExKTt2YXIgWXhyPW5ldyBXQyg0NTgwMzc1NCwwKSxtRGg9bmV3IFdDKDQ1NzkxMTE3LDApLHZNUz1uZXcgV0MoNDU3MjU1NDIsMCksWlJ4PW5ldyBXQyg0NTc5NDQ0MSwwKSxlVVU9bmV3IFdDKDQ1ODA3NzcxLDApLEhScj1uZXcgV0MoNDU3NzM2MDMsMCksZndqPW5ldyBXQyg0NTc3MzYwNCwwKSx4RFo9bmV3IFdDKDQ1Nzk3OTYzLDApLGJSdz1uZXcgV0MoNDU3MjU1NDMsMCksUGhqPW5ldyBXQyg0NTc5MzcxMCwwKSxoVWk9bmV3IFdDKDQ1NzU3NDI2LDApLG5Ndz1uZXcgV0MoNDU3MjU1MzksMCksSlIxPW5ldyBXQyg0NTgwNTY5NSwwKSxERFo9bmV3IFdDKDQ1NzI1NTQxLDApLFhHVT1uZXcgV0MoNDU3NTc0MjcsMCksQ1JpPW5ldyBhbSg0NTc5MTIwNiwhMSksV2t0PW5ldyBXQyg0NTcyNTU0MCwwKSxhWXg9bmV3IFdDKDQ1NzI1NTM4LDApLEtraT1uZXcgV0MoNDU3OTExMTgsMCksazZ3PW5ldyBXQyg0NTc2NDUyMywwKSxTeGk9bmV3IFdDKDQ1ODA0NzcxLDApLEl3eD1uZXcgV0MoNDU3ODY0NDMsCjApLFVEMj1uZXcgV0MoNDU4MDIxMjMsMCkscXhoPW5ldyBXQyg0NTc2NDIxNywwKSxHNjI9bmV3IFdDKDQ1NzY0NTI0LDApLCREMT1uZXcgV0MoNDU3NjU2MDIsMCksTGtDPW5ldyBXQyg0NTgwNzQzMiwwKSxBUk09bmV3IFdDKDQ1Nzc2MTkwLDApLE9SVT1uZXcgV0MoNDU3OTExMTksMCksVWJTPW5ldyBXQyg0NTgxNTAxMSwwKSxOZFM9bmV3IFdDKDQ1Nzc4NjcxLDApLHBHMT1uZXcgV0MoNDU3NDEzMzksMCksdDVpPW5ldyBXQyg0NTc2Nzc2MywwKSxnTXg9bmV3IFdDKDQ1ODA3NzcyLDApLHN3aT1uZXcgV0MoNDU3NzAwMDIsMCksclJpPW5ldyBXQyg0NTc3MDAwMSwwKTt2YXIgaWd0PWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuTj1ufX07dmFyIHVwMj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn1KKCl7cmV0dXJuIHRoaXMuTi5RUShHX3IpfX07dmFyIHI0Mj0vKD86XFt8JTVCKShbYS16QS1aMC05X10rKSg/OlxdfCU1RCkvZzt2YXIgb0pVPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuLDUwMCl9fTt2YXIgaEw9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4sNTAwKX19O3ZhciBkZFM9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfWdldE5hbWUoKXtyZXR1cm4gWTkodGhpcywxKX1nZXRPcHRpb25zKCl7cmV0dXJuIGdlKHRoaXMsaEwsMyl9Y2xlYXJPcHRpb25zKCl7cmV0dXJuIG96KHRoaXMsMyl9fTt2YXIgekZpPWZ1bmN0aW9uKG4pe3JldHVybiBXPT57Vz1KU09OLnBhcnNlKFcpO2lmKCFBcnJheS5pc0FycmF5KFcpKXRocm93IEVycm9yKCJFeHBlY3RlZCBqc3BiIGRhdGEgdG8gYmUgYW4gYXJyYXksIGdvdCAiK3B0KFcpKyI6ICIrVyk7V1tiNF18PTM0O3JldHVybiBuZXcgbihXKX19KGNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX1nZXROYW1lKCl7cmV0dXJuIFk5KHRoaXMsMSl9Z2V0T3B0aW9ucygpe3JldHVybiBnZSh0aGlzLG9KVSwzKX1jbGVhck9wdGlvbnMoKXtyZXR1cm4gb3oodGhpcywzKX1YTygpe3JldHVybiBIVyh0aGlzLDYpfU1MKG4pe0tuKHRoaXMsNixuKX19KTt2YXIgbGNyPVN5bWJvbCgpO3ZhciBURnI7VEZyPW5ldyBtNFooOTk4LGhMLGNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19KTt2YXIgeEg9U3ltYm9sKCk7dmFyICR0PWNsYXNzIGV4dGVuZHMgZy5vV3tjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMuWD10aGlzLk49MDt0aGlzLkEkPW4/P3tMUzooVyxEKT0+c2V0VGltZW91dChXLEQpLApzTzpXPT57Y2xlYXJUaW1lb3V0KFcpfX07CnRoaXMuaXNPbmxpbmU9d2luZG93Lm5hdmlnYXRvcj8ub25MaW5lPz8hMDt0aGlzLko9YXN5bmMoKT0+e2F3YWl0IHJYKHRoaXMpfTsKd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9mZmxpbmUiLHRoaXMuSik7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsdGhpcy5KKTt0aGlzLlh8fHRoaXMuaFQoKX1kaXNwb3NlKCl7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9mZmxpbmUiLHRoaXMuSik7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9ubGluZSIsdGhpcy5KKTt0aGlzLkEkLnNPKHRoaXMuWCk7ZGVsZXRlICR0Lmluc3RhbmNlfVdHKCl7cmV0dXJuIHRoaXMuaXNPbmxpbmV9aFQoKXt0aGlzLlg9dGhpcy5BJC5MUyhhc3luYygpPT57dGhpcy5pc09ubGluZT93aW5kb3cubmF2aWdhdG9yPy5vbkxpbmV8fGF3YWl0IHJYKHRoaXMpOmF3YWl0IHJYKHRoaXMpO3RoaXMuaFQoKX0sM0U0KX19O3ZhciBqcjI9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIEMzcj1bMCxJcWosLTFdO3ZhciBMaj1bMCxIaXcsLTFdO3ZhciBCRnQ9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIEZGaT1nLkE5KFswLGcuQ3gsLTEsZy5FNixnLm9tLEMzciwtMSx5cCxpVSxnLkN4LExqLGcub20sZy5DeCwtMSxbMCxDM3IsLTFdLGlVLFkzQyxMaix5cCxbMCwxLGlVLC00LFU2LFswLHlwLC0xLGlVXSxnLm9tLHlwLGcuZHEsWzAsZy5DeCxpVV0saVUsLTEsZy5DeCwtMix5cCwtMSxnLkN4LHlwLGcuQ3gsaVUsWzAsMyxpVSwtMSw0LFRnXSxVNixqbyxbMCxnLkN4LC0xLGcub21dLHVVXSxnLm9tLEpYUyxnLmRxLFswLExqLGcuZHEsWzAsZy5vbSxnLkN4XSx5cCxnLkN4LC0xXSwxLGcuZHEsWzAsWTNDLC0xLGpvXSxnLkN4LExqXSk7dmFyIFV2Mj1JXyhjbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9Sigpe3JldHVybiBIVyh0aGlzLDUpfX0sWzAsZy5DeCxbMCxnLkU2LGZxdywtMV0saVUsZy5DeCwtMixpVSxnLkU2XSk7dmFyIGxYcj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuZGF0YT1bXTt0aGlzLk49LTF9c2V0KG4sVz0hMCl7MDw9biYmbjw1MiYmTnVtYmVyLmlzSW50ZWdlcihuKSYmdGhpcy5kYXRhW25dIT09VyYmKHRoaXMuZGF0YVtuXT1XLHRoaXMuTj0tMSl9Z2V0KG4pe3JldHVybiEhdGhpcy5kYXRhW25dfX07Zy5peChnLnBfLGcuRk0pO2cuRT1nLnBfLnByb3RvdHlwZTtnLkUuc3RhcnQ9ZnVuY3Rpb24oKXt0aGlzLnN0b3AoKTt0aGlzLlg9ITE7dmFyIG49WXQodGhpcyksVz1ISyh0aGlzKTtuJiYhVyYmdGhpcy5KLm1velJlcXVlc3RBbmltYXRpb25GcmFtZT8odGhpcy5OPUFIKHRoaXMuSiwiTW96QmVmb3JlUGFpbnQiLHRoaXMuVyksdGhpcy5KLm1velJlcXVlc3RBbmltYXRpb25GcmFtZShudWxsKSx0aGlzLlg9ITApOnRoaXMuTj1uJiZXP24uY2FsbCh0aGlzLkosdGhpcy5XKTp0aGlzLkouc2V0VGltZW91dChqTWgodGhpcy5XKSwyMCl9OwpnLkUuc3RvcD1mdW5jdGlvbigpe2lmKHRoaXMuaXNBY3RpdmUoKSl7bGV0IG49WXQodGhpcyksVz1ISyh0aGlzKTtuJiYhVyYmdGhpcy5KLm1velJlcXVlc3RBbmltYXRpb25GcmFtZT9FMih0aGlzLk4pOm4mJlc/Vy5jYWxsKHRoaXMuSix0aGlzLk4pOnRoaXMuSi5jbGVhclRpbWVvdXQodGhpcy5OKX10aGlzLk49bnVsbH07CmcuRS5pc0FjdGl2ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLk4hPW51bGx9OwpnLkUuT3Q9ZnVuY3Rpb24oKXt0aGlzLlgmJnRoaXMuTiYmRTIodGhpcy5OKTt0aGlzLk49bnVsbDt0aGlzLlYuY2FsbCh0aGlzLmosZy5VdygpKX07CmcuRS5tQT1mdW5jdGlvbigpe3RoaXMuc3RvcCgpO2cucF8uVEIubUEuY2FsbCh0aGlzKX07Zy5peChnLmZfLGcuRk0pO2cuRT1nLmZfLnByb3RvdHlwZTtnLkUudDg9MDtnLkUubUE9ZnVuY3Rpb24oKXtnLmZfLlRCLm1BLmNhbGwodGhpcyk7dGhpcy5zdG9wKCk7ZGVsZXRlIHRoaXMuTjtkZWxldGUgdGhpcy5KfTsKZy5FLnN0YXJ0PWZ1bmN0aW9uKG4pe3RoaXMuc3RvcCgpO3RoaXMudDg9Zy5adCh0aGlzLlcsbiE9PXZvaWQgMD9uOnRoaXMuZ3QpfTsKZy5FLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLmlzQWN0aXZlKCkmJmcucWkuY2xlYXJUaW1lb3V0KHRoaXMudDgpO3RoaXMudDg9MH07CmcuRS5qZT1mdW5jdGlvbigpe3RoaXMuaXNBY3RpdmUoKSYmKHRoaXMuc3RvcCgpLHRoaXMuaSQoKSl9OwpnLkUuaXNBY3RpdmU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50OCE9MH07CmcuRS5pJD1mdW5jdGlvbigpe3RoaXMudDg9MDt0aGlzLk4mJnRoaXMuTi5jYWxsKHRoaXMuSil9O3ZhciB3QWk9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIoKTt0aGlzLlg9VyE9bnVsbD9uLmJpbmQoVyk6bjt0aGlzLmd0PTM1MDt0aGlzLlc9bnVsbDt0aGlzLk49ITE7dGhpcy5KPTA7dGhpcy5aNj1udWxsfWoobil7dGhpcy5XPWFyZ3VtZW50czt0aGlzLlo2fHx0aGlzLko/dGhpcy5OPSEwOklGKHRoaXMpfXN0b3AoKXt0aGlzLlo2JiYoZy5xaS5jbGVhclRpbWVvdXQodGhpcy5aNiksdGhpcy5aNj1udWxsLHRoaXMuTj0hMSx0aGlzLlc9bnVsbCl9cGF1c2UoKXt0aGlzLkorK31yZXN1bWUoKXt0aGlzLkotLTt0aGlzLkp8fCF0aGlzLk58fHRoaXMuWjZ8fCh0aGlzLk49ITEsSUYodGhpcykpfW1BKCl7c3VwZXIubUEoKTt0aGlzLnN0b3AoKX19O3ZhciB1eWksR2cscWw7dXlpPVJlZ0V4cCgiXltcdTA1OTEtXHUwNmVmXHUwNmZhLVx1MDhmZlx1MjAwZlx1ZDgwMi1cdWQ4MDNcdWQ4M2EtXHVkODNiXHVmYjFkLVx1ZmRmZlx1ZmU3MC1cdWZlZmNdIik7R2c9UmVnRXhwKCJeW15cdTA1OTEtXHUwNmVmXHUwNmZhLVx1MDhmZlx1MjAwZlx1ZDgwMi1cdWQ4MDNcdWQ4M2EtXHVkODNiXHVmYjFkLVx1ZmRmZlx1ZmU3MC1cdWZlZmNdKltBLVphLXpcdTAwYzAtXHUwMGQ2XHUwMGQ4LVx1MDBmNlx1MDBmOC1cdTAyYjhcdTAzMDAtXHUwNTkwXHUwOTAwLVx1MWZmZlx1MjAwZVx1MmMwMC1cdWQ4MDFcdWQ4MDQtXHVkODM5XHVkODNjLVx1ZGJmZlx1ZjkwMC1cdWZiMWNcdWZlMDAtXHVmZTZmXHVmZWZkLVx1ZmZmZl0iKTtxbD1SZWdFeHAoIl5bXkEtWmEtelx1MDBjMC1cdTAwZDZcdTAwZDgtXHUwMGY2XHUwMGY4LVx1MDJiOFx1MDMwMC1cdTA1OTBcdTA5MDAtXHUxZmZmXHUyMDBlXHUyYzAwLVx1ZDgwMVx1ZDgwNC1cdWQ4MzlcdWQ4M2MtXHVkYmZmXHVmOTAwLVx1ZmIxY1x1ZmUwMC1cdWZlNmZcdWZlZmQtXHVmZmZmXSpbXHUwNTkxLVx1MDZlZlx1MDZmYS1cdTA4ZmZcdTIwMGZcdWQ4MDItXHVkODAzXHVkODNhLVx1ZDgzYlx1ZmIxZC1cdWZkZmZcdWZlNzAtXHVmZWZjXSIpOwpnLk1KaT1SZWdFeHAoIl4oYXJ8Y2tifGR2fGhlfGl3fGZhfG5xb3xwc3xzZHx1Z3x1cnx5aXwuKlstX10oQWRsbXxBcmFifEhlYnJ8Tmtvb3xSb2hnfFRoYWEpKSg/IS4qWy1fXShMYXRufEN5cmwpKCR8LXxfKSkoJHwtfF8pIiwiaSIpO0ludGwuTnVtYmVyRm9ybWF0LnN1cHBvcnRlZExvY2FsZXNPZihbImVuIi5yZXBsYWNlKCJfIiwiLSIpXSk7dUgucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24oKXtyZXR1cm4gUkZNfTsKdmFyIFJGTT17ZG9uZTohMCx2YWx1ZTp2b2lkIDB9O3VILnByb3RvdHlwZS5ncT1mdW5jdGlvbigpe3JldHVybiB0aGlzfTt2YXIgb0Y9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59Z3EoKXtyZXR1cm4gbmV3IGRYKHRoaXMuTigpKX1bU3ltYm9sLml0ZXJhdG9yXSgpe3JldHVybiBuZXcgeksodGhpcy5OKCkpfUooKXtyZXR1cm4gbmV3IHpLKHRoaXMuTigpKX19LGRYPWNsYXNzIGV4dGVuZHMgdUh7Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLk49bn1uZXh0KCl7cmV0dXJuIHRoaXMuTi5uZXh0KCl9W1N5bWJvbC5pdGVyYXRvcl0oKXtyZXR1cm4gbmV3IHpLKHRoaXMuTil9Sigpe3JldHVybiBuZXcgeksodGhpcy5OKX19LHpLPWNsYXNzIGV4dGVuZHMgb0Z7Y29uc3RydWN0b3Iobil7c3VwZXIoKCk9Pm4pOwp0aGlzLlc9bn1uZXh0KCl7cmV0dXJuIHRoaXMuVy5uZXh0KCl9fTtsSC5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGxIKHRoaXMuTix0aGlzLkssdGhpcy5XLHRoaXMuaix0aGlzLlgsdGhpcy5WLHRoaXMuSix0aGlzLlkpfTsKbEgucHJvdG90eXBlLmVxdWFscz1mdW5jdGlvbihuKXtyZXR1cm4gdGhpcy5OPT1uLk4mJnRoaXMuSz09bi5LJiZ0aGlzLlc9PW4uVyYmdGhpcy5qPT1uLmomJnRoaXMuWD09bi5YJiZ0aGlzLlY9PW4uViYmdGhpcy5KPT1uLkomJnRoaXMuWT09bi5ZfTsoZnVuY3Rpb24oKXtpZihwUWope3ZhciBuPS9XaW5kb3dzIE5UIChbMC05Ll0rKS87cmV0dXJuKG49bi5leGVjKGcuWFEoKSkpP25bMV06IjAifXJldHVybiBucj8obj0vMVswfDFdW18uXVswLTlfLl0rLywobj1uLmV4ZWMoZy5YUSgpKSk/blswXS5yZXBsYWNlKC9fL2csIi4iKToiMTAiKTpnLlFIPyhuPS9BbmRyb2lkXHMrKFteXCk7XSspKFwpfDspLywobj1uLmV4ZWMoZy5YUSgpKSk/blsxXToiIik6V1VafHxENGl8fGJpVT8obj0vKD86aVBob25lfENQVSlccytPU1xzKyhcUyspLywobj1uLmV4ZWMoZy5YUSgpKSk/blsxXS5yZXBsYWNlKC9fL2csIi4iKToiIik6IiJ9KSgpO3ZhciBmWDI9ZnVuY3Rpb24oKXtpZihnLmFvKXJldHVybiBqQSgvRmlyZWZveFwvKFswLTkuXSspLyk7aWYoZy5raHx8Zy5SZ3x8cmMpcmV0dXJuIFAyO2lmKGcub2Qpe2lmKGcuQTQoKXx8Zy5teCgpKXt2YXIgbj1qQSgvQ3JpT1NcLyhbMC05Ll0rKS8pO2lmKG4pcmV0dXJuIG59cmV0dXJuIGpBKC9DaHJvbWVcLyhbMC05Ll0rKS8pfWlmKGcuR24mJiFnLkE0KCkpcmV0dXJuIGpBKC9WZXJzaW9uXC8oWzAtOS5dKykvKTtpZih3OHx8TVgpe2lmKG49L1ZlcnNpb25cLyhcUyspLipNb2JpbGVcLyhcUyspLy5leGVjKGcuWFEoKSkpcmV0dXJuIG5bMV0rIi4iK25bMl19ZWxzZSBpZihnLkltKXJldHVybihuPWpBKC9BbmRyb2lkXHMrKFswLTkuXSspLykpP246akEoL1ZlcnNpb25cLyhbMC05Ll0rKS8pO3JldHVybiIifSgpO2cuaXgoQkssZy5GTSk7Zy5FPUJLLnByb3RvdHlwZTtnLkUuc3Vic2NyaWJlPWZ1bmN0aW9uKG4sVyxEKXt2YXIgYj10aGlzLkpbbl07Ynx8KGI9dGhpcy5KW25dPVtdKTt2YXIgdj10aGlzLlY7dGhpcy5OW3ZdPW47dGhpcy5OW3YrMV09Vzt0aGlzLk5bdisyXT1EO3RoaXMuVj12KzM7Yi5wdXNoKHYpO3JldHVybiB2fTsKZy5FLnVuc3Vic2NyaWJlPWZ1bmN0aW9uKG4sVyxEKXtpZihuPXRoaXMuSltuXSl7bGV0IGI9dGhpcy5OO2lmKG49bi5maW5kKGZ1bmN0aW9uKHYpe3JldHVybiBiW3YrMV09PVcmJmJbdisyXT09RH0pKXJldHVybiB0aGlzLmpLKG4pfXJldHVybiExfTsKZy5FLmpLPWZ1bmN0aW9uKG4pe3ZhciBXPXRoaXMuTltuXTtpZihXKXtsZXQgRD10aGlzLkpbV107dGhpcy5YIT0wPyh0aGlzLlcucHVzaChuKSx0aGlzLk5bbisxXT0oKT0+e30pOihEJiZnLkZJKEQsbiksZGVsZXRlIHRoaXMuTltuXSxkZWxldGUgdGhpcy5OW24rMV0sZGVsZXRlIHRoaXMuTltuKzJdKX1yZXR1cm4hIVd9OwpnLkUuV0o9ZnVuY3Rpb24obixXKXt2YXIgRD10aGlzLkpbbl07aWYoRCl7bGV0IHY9QXJyYXkoYXJndW1lbnRzLmxlbmd0aC0xKTt2YXIgYj1hcmd1bWVudHMubGVuZ3RoO2xldCBrO2ZvcihrPTE7azxiO2srKyl2W2stMV09YXJndW1lbnRzW2tdO2lmKHRoaXMuSylmb3Ioaz0wO2s8RC5sZW5ndGg7aysrKWI9RFtrXSxKNHIodGhpcy5OW2IrMV0sdGhpcy5OW2IrMl0sdik7ZWxzZXt0aGlzLlgrKzt0cnl7Zm9yKGs9MCxiPUQubGVuZ3RoO2s8YiYmIXRoaXMucU4oKTtrKyspe2xldCBoPURba107dGhpcy5OW2grMV0uYXBwbHkodGhpcy5OW2grMl0sdil9fWZpbmFsbHl7aWYodGhpcy5YLS0sdGhpcy5XLmxlbmd0aD4wJiZ0aGlzLlg9PTApZm9yKDtEPXRoaXMuVy5wb3AoKTspdGhpcy5qSyhEKX19cmV0dXJuIGshPTB9cmV0dXJuITF9OwpnLkUuY2xlYXI9ZnVuY3Rpb24obil7aWYobil7bGV0IFc9dGhpcy5KW25dO1cmJihXLmZvckVhY2godGhpcy5qSyx0aGlzKSxkZWxldGUgdGhpcy5KW25dKX1lbHNlIHRoaXMuTi5sZW5ndGg9MCx0aGlzLko9e319OwpnLkUubUE9ZnVuY3Rpb24oKXtCSy5UQi5tQS5jYWxsKHRoaXMpO3RoaXMuY2xlYXIoKTt0aGlzLlcubGVuZ3RoPTB9O2cuRmQucHJvdG90eXBlLnNldD1mdW5jdGlvbihuLFcpe1c9PT12b2lkIDA/dGhpcy5OLnJlbW92ZShuKTp0aGlzLk4uc2V0KG4sKG5ldyBsZSkuYlkoVykpfTsKZy5GZC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKG4pe3RyeXt2YXIgVz10aGlzLk4uZ2V0KG4pfWNhdGNoKEQpe3JldHVybn1pZihXIT09bnVsbCl0cnl7cmV0dXJuIEpTT04ucGFyc2UoVyl9Y2F0Y2goRCl7dGhyb3ciU3RvcmFnZTogSW52YWxpZCB2YWx1ZSB3YXMgZW5jb3VudGVyZWQiO319OwpnLkZkLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24obil7dGhpcy5OLnJlbW92ZShuKX07Zy5peCh3WCxnLkZkKTt3WC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKG4sVyl7d1guVEIuc2V0LmNhbGwodGhpcyxuLFJGKFcpKX07CndYLnByb3RvdHlwZS5NRD1mdW5jdGlvbihuKXtuPXdYLlRCLmdldC5jYWxsKHRoaXMsbik7aWYobj09PXZvaWQgMHx8biBpbnN0YW5jZW9mIE9iamVjdClyZXR1cm4gbjt0aHJvdyJTdG9yYWdlOiBJbnZhbGlkIHZhbHVlIHdhcyBlbmNvdW50ZXJlZCI7fTsKd1gucHJvdG90eXBlLmdldD1mdW5jdGlvbihuKXtpZihuPXRoaXMuTUQobikpe2lmKG49bi5kYXRhLG49PT12b2lkIDApdGhyb3ciU3RvcmFnZTogSW52YWxpZCB2YWx1ZSB3YXMgZW5jb3VudGVyZWQiO31lbHNlIG49dm9pZCAwO3JldHVybiBufTtnLml4KFFLLHdYKTtRSy5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKG4sVyxEKXtpZihXPVJGKFcpKXtpZihEKXtpZihEPGcuVXcoKSl7UUsucHJvdG90eXBlLnJlbW92ZS5jYWxsKHRoaXMsbik7cmV0dXJufVcuZXhwaXJhdGlvbj1EfVcuY3JlYXRpb249Zy5VdygpfVFLLlRCLnNldC5jYWxsKHRoaXMsbixXKX07ClFLLnByb3RvdHlwZS5NRD1mdW5jdGlvbihuKXt2YXIgVz1RSy5UQi5NRC5jYWxsKHRoaXMsbik7aWYoVyl7bGV0IEQ9Vy5jcmVhdGlvbixiPVcuZXhwaXJhdGlvbjtpZihiJiZiPGcuVXcoKXx8RCYmRD5nLlV3KCkpUUsucHJvdG90eXBlLnJlbW92ZS5jYWxsKHRoaXMsbik7ZWxzZSByZXR1cm4gV319O2cuaXgoVkssUUspO2cuaXgoY0ssSVgxKTtjSy5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiBZQTEodGhpcy5ncSghMCkpLkooKX07CmNLLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3ZhciBuPUFycmF5LmZyb20odGhpcyk7Zm9yKGxldCBXIG9mIG4pdGhpcy5yZW1vdmUoVyl9O2cuaXgoYUYsY0spO2cuRT1hRi5wcm90b3R5cGU7Zy5FLmlzQXZhaWxhYmxlPWZ1bmN0aW9uKCl7aWYodGhpcy5KPT09bnVsbCl7dmFyIG49dGhpcy5OO2lmKG4pdHJ5e24uc2V0SXRlbSgiX19zYWsiLCIxIik7bi5yZW1vdmVJdGVtKCJfX3NhayIpO3ZhciBXPSEwfWNhdGNoKEQpe1c9RCBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbiYmKEQubmFtZT09PSJRdW90YUV4Y2VlZGVkRXJyb3IifHxELmNvZGU9PT0yMnx8RC5jb2RlPT09MTAxNHx8RC5uYW1lPT09Ik5TX0VSUk9SX0RPTV9RVU9UQV9SRUFDSEVEIikmJm4mJm4ubGVuZ3RoIT09MH1lbHNlIFc9ITE7dGhpcy5KPVd9cmV0dXJuIHRoaXMuSn07CmcuRS5zZXQ9ZnVuY3Rpb24obixXKXtuZSh0aGlzKTt0cnl7dGhpcy5OLnNldEl0ZW0obixXKX1jYXRjaChEKXtpZih0aGlzLk4ubGVuZ3RoPT0wKXRocm93IlN0b3JhZ2UgbWVjaGFuaXNtOiBTdG9yYWdlIGRpc2FibGVkIjt0aHJvdyJTdG9yYWdlIG1lY2hhbmlzbTogUXVvdGEgZXhjZWVkZWQiO319OwpnLkUuZ2V0PWZ1bmN0aW9uKG4pe25lKHRoaXMpO249dGhpcy5OLmdldEl0ZW0obik7aWYodHlwZW9mIG4hPT0ic3RyaW5nIiYmbiE9PW51bGwpdGhyb3ciU3RvcmFnZSBtZWNoYW5pc206IEludmFsaWQgdmFsdWUgd2FzIGVuY291bnRlcmVkIjtyZXR1cm4gbn07CmcuRS5yZW1vdmU9ZnVuY3Rpb24obil7bmUodGhpcyk7dGhpcy5OLnJlbW92ZUl0ZW0obil9OwpnLkUuZ3E9ZnVuY3Rpb24obil7bmUodGhpcyk7dmFyIFc9MCxEPXRoaXMuTixiPW5ldyB1SDtiLm5leHQ9ZnVuY3Rpb24oKXtpZihXPj1ELmxlbmd0aClyZXR1cm4gUkZNO3ZhciB2PUQua2V5KFcrKyk7aWYobilyZXR1cm57dmFsdWU6dixkb25lOiExfTt2PUQuZ2V0SXRlbSh2KTtpZih0eXBlb2YgdiE9PSJzdHJpbmciKXRocm93IlN0b3JhZ2UgbWVjaGFuaXNtOiBJbnZhbGlkIHZhbHVlIHdhcyBlbmNvdW50ZXJlZCI7cmV0dXJue3ZhbHVlOnYsZG9uZTohMX19OwpyZXR1cm4gYn07CmcuRS5jbGVhcj1mdW5jdGlvbigpe25lKHRoaXMpO3RoaXMuTi5jbGVhcigpfTsKZy5FLmtleT1mdW5jdGlvbihuKXtuZSh0aGlzKTtyZXR1cm4gdGhpcy5OLmtleShuKX07Zy5peChXUyxhRik7Zy5peChEUSxhRik7Zy5peChiQyxjSyk7YkMucHJvdG90eXBlLnNldD1mdW5jdGlvbihuLFcpe3RoaXMuSi5zZXQodGhpcy5OK24sVyl9OwpiQy5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLkouZ2V0KHRoaXMuTituKX07CmJDLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24obil7dGhpcy5KLnJlbW92ZSh0aGlzLk4rbil9OwpiQy5wcm90b3R5cGUuZ3E9ZnVuY3Rpb24obil7dmFyIFc9dGhpcy5KW1N5bWJvbC5pdGVyYXRvcl0oKSxEPXRoaXMsYj1uZXcgdUg7Yi5uZXh0PWZ1bmN0aW9uKCl7dmFyIHY9Vy5uZXh0KCk7aWYodi5kb25lKXJldHVybiB2O2Zvcih2PXYudmFsdWU7di5zbGljZSgwLEQuTi5sZW5ndGgpIT1ELk47KXt2PVcubmV4dCgpO2lmKHYuZG9uZSlyZXR1cm4gdjt2PXYudmFsdWV9cmV0dXJue3ZhbHVlOm4/di5zbGljZShELk4ubGVuZ3RoKTpELkouZ2V0KHYpLGRvbmU6ITF9fTsKcmV0dXJuIGJ9O2tqLnByb3RvdHlwZS5nZXRWYWx1ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkp9Owprai5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGtqKHRoaXMuTix0aGlzLkopfTt2YXIgZWM9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPVtdO2lmKG4pYTp7bGV0IEQ7aWYobiBpbnN0YW5jZW9mIGVjKXtpZihEPW4udUIoKSxuPW4uejcoKSx0aGlzLk4ubGVuZ3RoPD0wKXt2YXIgVz10aGlzLk47Zm9yKGxldCBiPTA7YjxELmxlbmd0aDtiKyspVy5wdXNoKG5ldyBraihEW2JdLG5bYl0pKTticmVhayBhfX1lbHNlIEQ9Zy5MVChuKSxuPWhLKG4pO2ZvcihXPTA7VzxELmxlbmd0aDtXKyspdGhpcy5xcChEW1ddLG5bV10pfX1xcChuLFcpe3ZhciBEPXRoaXMuTjtELnB1c2gobmV3IGtqKG4sVykpO249RC5sZW5ndGgtMTtXPXRoaXMuTjtmb3IoRD1XW25dO24+MDspe2xldCBiPW4tMT4+MTtpZihXW2JdLk4+RC5OKVdbbl09V1tiXSxuPWI7ZWxzZSBicmVha31XW25dPUR9cmVtb3ZlKCl7dmFyIG49dGhpcy5OLFc9bi5sZW5ndGgsRD1uWzBdO2lmKCEoVzw9MCkpe2lmKFc9PTEpbi5sZW5ndGg9MDtlbHNle25bMF09bi5wb3AoKTtuPTA7Vz10aGlzLk47bGV0IHY9Vy5sZW5ndGgsCms9V1tuXTtmb3IoO248dj4+MTspe3ZhciBiPW4qMisxO2xldCBoPW4qMisyO2I9aDx2JiZXW2hdLk48V1tiXS5OP2g6YjtpZihXW2JdLk4+ay5OKWJyZWFrO1dbbl09V1tiXTtuPWJ9V1tuXT1rfXJldHVybiBELmdldFZhbHVlKCl9fXo3KCl7dmFyIG49dGhpcy5OLFc9W10sRD1uLmxlbmd0aDtmb3IobGV0IGI9MDtiPEQ7YisrKVcucHVzaChuW2JdLmdldFZhbHVlKCkpO3JldHVybiBXfXVCKCl7dmFyIG49dGhpcy5OLFc9W10sRD1uLmxlbmd0aDtmb3IobGV0IGI9MDtiPEQ7YisrKVcucHVzaChuW2JdLk4pO3JldHVybiBXfWNsb25lKCl7cmV0dXJuIG5ldyBlYyh0aGlzKX1pc0VtcHR5KCl7cmV0dXJuIHRoaXMuTi5sZW5ndGg9PT0wfWNsZWFyKCl7dGhpcy5OLmxlbmd0aD0wfX07dmFyIFFyaD1jbGFzcyBleHRlbmRzIGVje307dmFyIGhrPXt9LFZKaT10eXBlb2YgVWludDhBcnJheSE9PSJ1bmRlZmluZWQiJiZ0eXBlb2YgVWludDE2QXJyYXkhPT0idW5kZWZpbmVkIiYmdHlwZW9mIEludDMyQXJyYXkhPT0idW5kZWZpbmVkIjtoay5hc3NpZ249ZnVuY3Rpb24obil7Zm9yKHZhciBXPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKTtXLmxlbmd0aDspe3ZhciBEPVcuc2hpZnQoKTtpZihEKXtpZih0eXBlb2YgRCE9PSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoRCsibXVzdCBiZSBub24tb2JqZWN0Iik7Zm9yKHZhciBiIGluIEQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEQsYikmJihuW2JdPURbYl0pfX1yZXR1cm4gbn07CmhrLlVmPWZ1bmN0aW9uKG4sVyl7aWYobi5sZW5ndGg9PT1XKXJldHVybiBuO2lmKG4uc3ViYXJyYXkpcmV0dXJuIG4uc3ViYXJyYXkoMCxXKTtuLmxlbmd0aD1XO3JldHVybiBufTsKdmFyIGNUMj17UDc6ZnVuY3Rpb24obixXLEQsYix2KXtpZihXLnN1YmFycmF5JiZuLnN1YmFycmF5KW4uc2V0KFcuc3ViYXJyYXkoRCxEK2IpLHYpO2Vsc2UgZm9yKHZhciBrPTA7azxiO2srKyluW3Yra109V1tEK2tdfSwKUDY6ZnVuY3Rpb24obil7dmFyIFcsRDt2YXIgYj1EPTA7Zm9yKFc9bi5sZW5ndGg7YjxXO2IrKylEKz1uW2JdLmxlbmd0aDt2YXIgdj1uZXcgVWludDhBcnJheShEKTtiPUQ9MDtmb3IoVz1uLmxlbmd0aDtiPFc7YisrKXt2YXIgaz1uW2JdO3Yuc2V0KGssRCk7RCs9ay5sZW5ndGh9cmV0dXJuIHZ9fSxhY0M9e1A3OmZ1bmN0aW9uKG4sVyxELGIsdil7Zm9yKHZhciBrPTA7azxiO2srKyluW3Yra109V1tEK2tdfSwKUDY6ZnVuY3Rpb24obil7cmV0dXJuW10uY29uY2F0LmFwcGx5KFtdLG4pfX07CmhrLlhHPWZ1bmN0aW9uKCl7VkppPyhoay5PbT1VaW50OEFycmF5LGhrLm1LPVVpbnQxNkFycmF5LGhrLlN2PUludDMyQXJyYXksaGsuYXNzaWduKGhrLGNUMikpOihoay5PbT1BcnJheSxoay5tSz1BcnJheSxoay5Tdj1BcnJheSxoay5hc3NpZ24oaGssYWNDKSl9Owpoay5YRygpO3ZhciBueGk9ITA7dHJ5e25ldyBVaW50OEFycmF5KDEpfWNhdGNoKG4pe254aT0hMX07dmFyIFZ0PXt9O1Z0PWZ1bmN0aW9uKG4sVyxELGIpe3ZhciB2PW4mNjU1MzV8MDtuPW4+Pj4xNiY2NTUzNXwwO2Zvcih2YXIgaztEIT09MDspe2s9RD4yRTM/MkUzOkQ7RC09aztkbyB2PXYrV1tiKytdfDAsbj1uK3Z8MDt3aGlsZSgtLWspO3YlPTY1NTIxO24lPTY1NTIxfXJldHVybiB2fG48PDE2fDB9O2Zvcih2YXIgY1M9e30sZ24sV3RyPVtdLFhzPTA7WHM8MjU2O1hzKyspe2duPVhzO2Zvcih2YXIgRGtaPTA7RGtaPDg7RGtaKyspZ249Z24mMT8zOTg4MjkyMzg0XmduPj4+MTpnbj4+PjE7V3RyW1hzXT1nbn1jUz1mdW5jdGlvbihuLFcsRCxiKXtEPWIrRDtmb3Iobl49LTE7YjxEO2IrKyluPW4+Pj44Xld0clsobl5XW2JdKSYyNTVdO3JldHVybiBuXi0xfTt2YXIgekI9e307ekI9ezI6Im5lZWQgZGljdGlvbmFyeSIsMToic3RyZWFtIGVuZCIsMDoiIiwiLTEiOiJmaWxlIGVycm9yIiwiLTIiOiJzdHJlYW0gZXJyb3IiLCItMyI6ImRhdGEgZXJyb3IiLCItNCI6Imluc3VmZmljaWVudCBtZW1vcnkiLCItNSI6ImJ1ZmZlciBlcnJvciIsIi02IjoiaW5jb21wYXRpYmxlIHZlcnNpb24ifTt2YXIgbSQ9WzAsMCwwLDAsMCwwLDAsMCwxLDEsMSwxLDIsMiwyLDIsMywzLDMsMyw0LDQsNCw0LDUsNSw1LDUsMF0sUFM9WzAsMCwwLDAsMSwxLDIsMiwzLDMsNCw0LDUsNSw2LDYsNyw3LDgsOCw5LDksMTAsMTAsMTEsMTEsMTIsMTIsMTMsMTNdLFowdz1bMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwyLDMsN10sQ2U9WzE2LDE3LDE4LDAsOCw3LDksNiwxMCw1LDExLDQsMTIsMywxMywyLDE0LDEsMTVdLEJTPUFycmF5KDU3Nik7TGUoQlMpO3ZhciBGOT1BcnJheSg2MCk7TGUoRjkpO3ZhciBPJD1BcnJheSg1MTIpO0xlKE8kKTt2YXIgQWs9QXJyYXkoMjU2KTtMZShBayk7dmFyIEtlPUFycmF5KDI5KTtMZShLZSk7dmFyIFpRPUFycmF5KDMwKTtMZShaUSk7dmFyIHhmLEx3LGVILGhyPSExO3ZhciBidztidz1bbmV3IERFKDAsMCwwLDAsZnVuY3Rpb24obixXKXt2YXIgRD02NTUzNTtmb3IoRD5uLnl2LTUmJihEPW4ueXYtNSk7Oyl7aWYobi5HVzw9MSl7YVMobik7aWYobi5HVz09PTAmJlc9PT0wKXJldHVybiAxO2lmKG4uR1c9PT0wKWJyZWFrfW4ucXMrPW4uR1c7bi5HVz0wO3ZhciBiPW4uT0srRDtpZihuLnFzPT09MHx8bi5xcz49YilpZihuLkdXPW4ucXMtYixuLnFzPWIsdzcobiwhMSksbi5UUi51Uj09PTApcmV0dXJuIDE7aWYobi5xcy1uLk9LPj1uLnhyLTI2MiYmKHc3KG4sITEpLG4uVFIudVI9PT0wKSlyZXR1cm4gMX1uLnFwPTA7aWYoVz09PTQpcmV0dXJuIHc3KG4sITApLG4uVFIudVI9PT0wPzM6NDtuLnFzPm4uT0smJnc3KG4sITEpO3JldHVybiAxfSksCm5ldyBERSg0LDQsOCw0LG53KSxuZXcgREUoNCw1LDE2LDgsbncpLG5ldyBERSg0LDYsMzIsMzIsbncpLG5ldyBERSg0LDQsMTYsMTYsV1YpLG5ldyBERSg4LDE2LDMyLDMyLFdWKSxuZXcgREUoOCwxNiwxMjgsMTI4LFdWKSxuZXcgREUoOCwzMiwxMjgsMjU2LFdWKSxuZXcgREUoMzIsMTI4LDI1OCwxMDI0LFdWKSxuZXcgREUoMzIsMjU4LDI1OCw0MDk2LFdWKV07dmFyIGtmPXt9O2tmPWZ1bmN0aW9uKCl7dGhpcy5pbnB1dD1udWxsO3RoaXMuRW09dGhpcy5CQT10aGlzLlVaPTA7dGhpcy5vdXRwdXQ9bnVsbDt0aGlzLnRCPXRoaXMudVI9dGhpcy51Zz0wO3RoaXMubXNnPSIiO3RoaXMuc3RhdGU9bnVsbDt0aGlzLnFTPTI7dGhpcy5nST0wfTt2YXIgZzI9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzsKdlYucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24obixXKXt2YXIgRD10aGlzLlRSLGI9dGhpcy5vcHRpb25zLmNodW5rU2l6ZTtpZih0aGlzLmVuZGVkKXJldHVybiExO3ZhciB2PVc9PT1+flc/VzpXPT09ITA/NDowO3R5cGVvZiBuPT09InN0cmluZyI/RC5pbnB1dD14aihuKTpnMi5jYWxsKG4pPT09IltvYmplY3QgQXJyYXlCdWZmZXJdIj9ELmlucHV0PW5ldyBVaW50OEFycmF5KG4pOkQuaW5wdXQ9bjtELlVaPTA7RC5CQT1ELmlucHV0Lmxlbmd0aDtkb3tELnVSPT09MCYmKEQub3V0cHV0PW5ldyBoay5PbShiKSxELnVnPTAsRC51Uj1iKTtuPVBwMShELHYpO2lmKG4hPT0xJiZuIT09MClyZXR1cm4gdGhpcy5IdChuKSx0aGlzLmVuZGVkPSEwLCExO2lmKEQudVI9PT0wfHxELkJBPT09MCYmKHY9PT00fHx2PT09MikpaWYodGhpcy5vcHRpb25zLnRvPT09InN0cmluZyIpe3ZhciBrPWhrLlVmKEQub3V0cHV0LEQudWcpO1c9aztrPWsubGVuZ3RoO2lmKGs8NjU1MzcmJihXLnN1YmFycmF5JiYKbnhpfHwhVy5zdWJhcnJheSkpVz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsaGsuVWYoVyxrKSk7ZWxzZXtmb3IodmFyIGg9IiIseD0wO3g8azt4KyspaCs9U3RyaW5nLmZyb21DaGFyQ29kZShXW3hdKTtXPWh9dGhpcy5jaHVua3MucHVzaChXKX1lbHNlIFc9aGsuVWYoRC5vdXRwdXQsRC51ZyksdGhpcy5jaHVua3MucHVzaChXKX13aGlsZSgoRC5CQT4wfHxELnVSPT09MCkmJm4hPT0xKTtpZih2PT09NClyZXR1cm4oRD10aGlzLlRSKSYmRC5zdGF0ZT8oYj1ELnN0YXRlLnN0YXR1cyxiIT09NDImJmIhPT02OSYmYiE9PTczJiZiIT09OTEmJmIhPT0xMDMmJmIhPT0xMTMmJmIhPT02NjY/bj1sQyhELC0yKTooRC5zdGF0ZT1udWxsLG49Yj09PTExMz9sQyhELC0zKTowKSk6bj0tMix0aGlzLkh0KG4pLHRoaXMuZW5kZWQ9ITAsbj09PTA7dj09PTImJih0aGlzLkh0KDApLEQudVI9MCk7cmV0dXJuITB9Owp2Vi5wcm90b3R5cGUuSHQ9ZnVuY3Rpb24obil7bj09PTAmJih0aGlzLnJlc3VsdD10aGlzLm9wdGlvbnMudG89PT0ic3RyaW5nIj90aGlzLmNodW5rcy5qb2luKCIiKTpoay5QNih0aGlzLmNodW5rcykpO3RoaXMuY2h1bmtzPVtdO3RoaXMuZXJyPW47dGhpcy5tc2c9dGhpcy5UUi5tc2d9O3ZhciB0cj0oKT0+TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDcpLnNwbGl0KCIiKS5qb2luKCIuIiksR2Q9YEBAcmVkdXgvSU5JVCR7dHIoKX1gLEVLQz1gQEByZWR1eC9SRVBMQUNFJHt0cigpfWA7dmFyIHIyPXR5cGVvZiBTeW1ib2w9PT0iZnVuY3Rpb24iJiZTeW1ib2wub2JzZXJ2YWJsZXx8IkBAb2JzZXJ2YWJsZSI7dmFyIFFTeD1JXyhjbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fSxbMCxnLkN4LFRnLGcub20sbFUsZy5vbSwtMSxqbyxsVSxqbywtMSxnLkN4LGpvLFRnLGcuZHEsWzAsbFUsLTMsam9dLGcub20sLTEsam9dKTt2YXIgS0d0PS0zMDE3MTcyMTc7dmFyIGJzdD1mdW5jdGlvbihuLFcpe3JldHVybigoKT0+e3ZhciBEPW5ldyBBWHgobixXKTtyZXR1cm4oKT0+RH0pKCl9KCJ5b3V0dWJlLmFwaS5pbm5lcnR1YmUuQXR0ZXN0YXRpb25FcnJvciIsJ1tudWxsLFtbIkFUVEVTVEFUSU9OX0VSUk9SX1VOS05PV04iLDBdLFsiQVRURVNUQVRJT05fRVJST1JfVk1fTk9UX0lOSVRJQUxJWkVEIiwxXSxbIkFUVEVTVEFUSU9OX0VSUk9SX1ZNX05PX1JFU1BPTlNFIiwyXSxbIkFUVEVTVEFUSU9OX0VSUk9SX1ZNX1RJTUVPVVQiLDNdLFsiQVRURVNUQVRJT05fRVJST1JfVk1fSU5URVJOQUxfRVJST1IiLDRdLFsiQVRURVNUQVRJT05fRVJST1JfUFJFRkVUQ0hfQ0hBTExFTkdFX0lOVkFMSUQiLDVdLFsiQVRURVNUQVRJT05fRVJST1JfUFJFRkVUQ0hfQ0hBTExFTkdFX05FVFdPUktfRVJST1IiLDZdLFsiQVRURVNUQVRJT05fRVJST1JfUFJFRkVUQ0hfQ0hBTExFTkdFX09GRkxJTkUiLDddLFsiQVRURVNUQVRJT05fRVJST1JfUFJFRkVUQ0hfQ0hBTExFTkdFX0lOVEVSTkFMX0VSUk9SIiw4XSxbIkFUVEVTVEFUSU9OX0VSUk9SX0FQSV9OT1RfUkVBRFkiLDldLFsiQVRURVNUQVRJT05fRVJST1JfREVWSUNFX09GRkxJTkUiLDEwXSxbIkFUVEVTVEFUSU9OX0VSUk9SX0tFWV9QQUlSX0lOSVRfRkFJTEVEIiwxMl0sWyJBVFRFU1RBVElPTl9FUlJPUl9TSUdOSU5HX0RBVEFfTUlTU0lORyIsMTNdLFsiQVRURVNUQVRJT05fRVJST1JfU0lHTklOR19GQUlMRUQiLDE0XSxbIkFUVEVTVEFUSU9OX0VSUk9SX0NFUlRfQ0hBSU5fUkVUUklFVkFMX0ZBSUxFRCIsMTVdXSxudWxsLFtbMTEsMTFdXV0nKTtnLnFNPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMubmFtZT1ufX07Zy5TdD1uZXcgZy5xTSgiYWN0aW9uQ29tcGFuaW9uQWRSZW5kZXJlciIpO2cuVWg9bmV3IGcucU0oImFkQWN0aW9uSW50ZXJzdGl0aWFsUmVuZGVyZXIiKTtnLm0yPW5ldyBnLnFNKCJhZHNFbmdhZ2VtZW50UGFuZWxSZW5kZXJlciIpO2cuVyQ9bmV3IGcucU0oImRpc21pc3NhYmxlUGFuZWxUZXh0UG9ydHJhaXRJbWFnZVJlbmRlcmVyIik7Zy5vYT1uZXcgZy5xTSgiYWRzRW5nYWdlbWVudFBhbmVsU2VjdGlvbkxpc3RWaWV3TW9kZWwiKTtnLkFqPW5ldyBnLnFNKCJpbWFnZUNvbXBhbmlvbkFkUmVuZGVyZXIiKTtnLkVoPW5ldyBnLnFNKCJpbnN0cmVhbUFkUGxheWVyT3ZlcmxheVJlbmRlcmVyIik7Zy5GeT1uZXcgZy5xTSgiaW5zdHJlYW1TdXJ2ZXlBZFJlbmRlcmVyIik7Zy5HOD1uZXcgZy5xTSgiaW5zdHJlYW1TdXJ2ZXlBZFNpbmdsZVNlbGVjdFF1ZXN0aW9uUmVuZGVyZXIiKTtnLnRMPW5ldyBnLnFNKCJpbnN0cmVhbVN1cnZleUFkTXVsdGlTZWxlY3RRdWVzdGlvblJlbmRlcmVyIik7Zy4kSD1uZXcgZy5xTSgiaW5zdHJlYW1TdXJ2ZXlBZEFuc3dlclJlbmRlcmVyIik7Zy52eHg9bmV3IGcucU0oImluc3RyZWFtU3VydmV5QWRBbnN3ZXJOb25lT2ZUaGVBYm92ZVJlbmRlcmVyIik7Zy5DYz1uZXcgZy5xTSgiaW5zdHJlYW1WaWRlb0FkUmVuZGVyZXIiKTtnLmkwPW5ldyBnLnFNKCJwbGF5ZXJPdmVybGF5TGF5b3V0UmVuZGVyZXIiKTtnLnlWPW5ldyBnLnFNKCJ2aWRlb0ludGVyc3RpdGlhbEJ1dHRvbmVkQ2VudGVyZWRMYXlvdXRSZW5kZXJlciIpO2cuaFg9bmV3IGcucU0oImFib3ZlRmVlZEFkTGF5b3V0UmVuZGVyZXIiKTtnLnh6PW5ldyBnLnFNKCJiZWxvd1BsYXllckFkTGF5b3V0UmVuZGVyZXIiKTtnLmt6PW5ldyBnLnFNKCJpblBsYXllckFkTGF5b3V0UmVuZGVyZXIiKTtnLmUyPW5ldyBnLnFNKCJpblBsYXllck9yZ2FuaWNPdmVybGF5QWRMYXlvdXRSZW5kZXJlciIpO2cuUmE9bmV3IGcucU0oInBsYXllckJ5dGVzQWRMYXlvdXRSZW5kZXJlciIpO2cuTGk9bmV3IGcucU0oInBsYXllckJ5dGVzU2VxdWVuY2VJdGVtQWRMYXlvdXRSZW5kZXJlciIpO2cudiQ9bmV3IGcucU0oInBsYXllclVuZGVybGF5QWRMYXlvdXRSZW5kZXJlciIpO2cuQlE9bmV3IGcucU0oImFkSW50cm9SZW5kZXJlciIpO2cuVDA9bmV3IGcucU0oInBsYXllckJ5dGVzU2VxdWVudGlhbExheW91dFJlbmRlcmVyIik7Zy53YT1uZXcgZy5xTSgic3VydmV5VGV4dEludGVyc3RpdGlhbFJlbmRlcmVyIik7Zy5RVj1uZXcgZy5xTSgidmlkZW9BZFRyYWNraW5nUmVuZGVyZXIiKTt2YXIgUXhNPW5ldyBnLnFNKCJ2aWRlb0ludGVyc3RpdGlhbENlbnRlcmVkTGF5b3V0Vmlld01vZGVsIik7Zy5kYT1uZXcgZy5xTSgicGxheWVyT3JnYW5pY1RyYW5zaXRpb25PdmVybGF5UmVuZGVyZXIiKTtnLlhHPW5ldyBnLnFNKCJhZFNsb3RSZW5kZXJlciIpO2cuYWE9bmV3IGcucU0oInNxdWVlemViYWNrUGxheWVyU2lkZVBhbmVsUmVuZGVyZXIiKTtnLktjPW5ldyBnLnFNKCJiYW5uZXJJbWFnZUxheW91dFZpZXdNb2RlbCIpO2cuT2g9bmV3IGcucU0oInRvcEJhbm5lckltYWdlVGV4dEljb25CdXR0b25lZExheW91dFZpZXdNb2RlbCIpO2cuUFE9bmV3IGcucU0oImFkc0VuZ2FnZW1lbnRQYW5lbExheW91dFZpZXdNb2RlbCIpO2cubmk9bmV3IGcucU0oImRpc3BsYXlVbmRlcmxheVRleHRHcmlkQ2FyZHNMYXlvdXRWaWV3TW9kZWwiKTt2YXIgcm49Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59fSxzQz1jbGFzcyBleHRlbmRzIHJue2dldCBlbnRpdHlNZXRhZGF0YSgpe3JldHVybiB0aGlzLk4uZW50aXR5TWV0YWRhdGF9c2V0IGVudGl0eU1ldGFkYXRhKG4pe3RoaXMuTi5lbnRpdHlNZXRhZGF0YT1ufX07dmFyIGtqTT1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBoNGo9bmV3IGcucU0oImNvbW1hbmRDb250ZXh0Iik7dmFyIHhrdD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBMdHc9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgZEUyPW5ldyBnLnFNKCJyYXdDb2xkQ29uZmlnR3JvdXAiKTt2YXIgb3Z0PW5ldyBnLnFNKCJyYXdIb3RDb25maWdHcm91cCIpO2cuTk09bmV3IGcucU0oImNvbW1hbmRFeGVjdXRvckNvbW1hbmQiKTt2YXIgZTR3PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBneHQ9e1ZDOjAsZVo6MSxFcDozMixPcDo2MSxkNzo2NyxBSzoxMDMsSVg6ODYsR0E6NDIsTVg6NjAsTEk6NjIsRGk6NzMsYVg6NzYsdzc6ODgsQ0k6OTAsTjY6OTksSHI6OTgsb1g6MTAwLEZBOjEwMixjODo0MSxQODo2OSx5TDo3MCxKcjo3MSx5TToyLEs0OjI3LEFORFJPSUQ6MyxBdjo1NCx3TToxNCx6ejo5MSxDRTo1NSxkTToyNCxOdToxMDUsYzk6MjAsUDk6MTgsSkg6MjEsdEg6MTA0LFg2OjMwLGpMOjI5LFYzOjI4LHBJOjEwMSxtQjoxMDcsa0Q6MzQsaEg6MzYseTM6MzgsSU9TOjUsVEw6MTUsblE6OTIscmo6NDAscFE6MjUseDc6MTA2LFNBOjE3LFk3OjE5LHNZOjY0LHVPOjY2LGVBOjI2LFpwOjIyLGxPOjMzLEhtOjY4LFVZOjM1LExROjUzLEJtOjEwOCxSTzozNyxLUTozOSxkMjo3LFByOjU3LHlDOjQzLHRLOjU5LEpLOjkzLGlwOjc0LFdyOjc1LGJGOjg1LHpBOjY1LGhLOjgwLFhBOjgsQ006MTAsaUY6NTgscVg6NjMsbVU6NzIscXU6MjMsYkE6MTEselU6MTMsd0o6MTIsCm9OOjE2LFVwOjU2LGc3OjMxLGttOjc3LEFROjg0LGZJOjg3LENoOjg5LHdMOjk0LHpUOjk1LGxMOjEwOX07dmFyIGk5PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX1XKG4pe2cuU0UodGhpcyw1LG4pfX07dmFyIHlkPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBYd1U9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIEhzPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX1nZXRQbGF5ZXJUeXBlKCl7cmV0dXJuIEhXKHRoaXMsMzYpfXNldEhvbWVHcm91cEluZm8obil7cmV0dXJuICQ5KHRoaXMsWHdVLDgxLG4pfWNsZWFyTG9jYXRpb25QbGF5YWJpbGl0eVRva2VuKCl7cmV0dXJuIG96KHRoaXMsODkpfX07dmFyIEo2PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX1nZXRWYWx1ZSgpe3JldHVybiBZOSh0aGlzLHZXKHRoaXMsSXYsMikpfX0sSXY9WzIsMyw0LDUsNl07dmFyIHFZUz1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9c2V0VHJhY2tpbmdQYXJhbXMobil7cmV0dXJuIG96KHRoaXMsMSxrVShuLCExKSl9fTt2YXIgZlU9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIEVKPWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBBNj1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9c2V0VG9rZW4obil7cmV0dXJuIGcuU0UodGhpcywyLG4pfX07dmFyIFN5PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX1zZXRTYWZldHlNb2RlKG4pe3JldHVybiBLbih0aGlzLDUsbil9fTt2YXIgWUE9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfVcobil7cmV0dXJuICQ5KHRoaXMsSHMsMSxuKX19O3ZhciBHajE9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgdFBVPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyICRrYj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBSVGg9bmV3IGcucU0oImNvbnRpbnVhdGlvbkNvbW1hbmQiKTtnLmNFPW5ldyBnLnFNKCJzaWduYWxBY3Rpb24iKTt2YXIgcGo9bmV3IGcucU0oIndlYkNvbW1hbmRNZXRhZGF0YSIpO3ZhciBoazI9bmV3IGcucU0oIm1ldGFkYXRhQmFkZ2VSZW5kZXJlciIpO3ZhciBRWU09bmV3IGcucU0oInNpZ25hbFNlcnZpY2VFbmRwb2ludCIpO3ZhciAkej1uZXcgZy5xTSgiaW5uZXJ0dWJlQ29tbWFuZCIpO3ZhciBEMzE9e1NUOiJFTUJFRERFRF9QTEFZRVJfTU9ERV9VTktOT1dOIixyTDoiRU1CRURERURfUExBWUVSX01PREVfREVGQVVMVCIseHc6IkVNQkVEREVEX1BMQVlFUl9NT0RFX1BGUCIsS2g6IkVNQkVEREVEX1BMQVlFUl9NT0RFX1BGTCJ9O3ZhciAkdE09bmV3IGcucU0oImNoYW5uZWxUaHVtYm5haWxFbmRwb2ludCIpO3ZhciBEdEM9bmV3IGcucU0oImVtYmVkZGVkUGxheWVyRXJyb3JNZXNzYWdlUmVuZGVyZXIiKTt2YXIgYW9VPW5ldyBnLnFNKCJlbWJlZGRlZFBsYXllck92ZXJsYXlWaWRlb0RldGFpbHNSZW5kZXJlciIpLHIxcj1uZXcgZy5xTSgiZW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzQ29sbGFwc2VkUmVuZGVyZXIiKSxzc0M9bmV3IGcucU0oImVtYmVkZGVkUGxheWVyT3ZlcmxheVZpZGVvRGV0YWlsc0V4cGFuZGVkUmVuZGVyZXIiKTt2YXIgUyQ9bmV3IGcucU0oImVtYmVkc0luZm9QYW5lbFJlbmRlcmVyIik7dmFyIHJZcj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBzQng9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgTkEyPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIHB3Qz1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uYWx0ZXJuYXRlQ2hhbm5lbCYmbi5wdXNoKHRoaXMuTi5hbHRlcm5hdGVDaGFubmVsKTt0aGlzLk4uYWx0ZXJuYXRlQ2hhbm5lbExpc3QmJm4ucHVzaCguLi50aGlzLk4uYWx0ZXJuYXRlQ2hhbm5lbExpc3QpO3RoaXMuTi5vbmVvZkNoYW5uZWxFbnRpdHkmJm4ucHVzaCh0aGlzLk4ub25lb2ZDaGFubmVsRW50aXR5KTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBZWXI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLmVudHJ5Q29sbGVjdGlvbiYmbi5wdXNoKHRoaXMuTi5lbnRyeUNvbGxlY3Rpb24pO3JldHVyblsuLi4obmV3IFNldChuKSldfX0sZl94PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5wYXJlbnRQbGF5bGlzdCYmbi5wdXNoKHRoaXMuTi5wYXJlbnRQbGF5bGlzdCk7aWYodGhpcy5OLmVudHJpZXMpZm9yKGxldCBXIG9mIHRoaXMuTi5lbnRyaWVzKW4ucHVzaCguLi4obmV3IEhzaChXKSkuSigpKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19LEhzaD1jbGFzcyBleHRlbmRzIHJue0ooKXt2YXIgbj1bXTt0aGlzLk4udmlkZW8mJm4ucHVzaCh0aGlzLk4udmlkZW8pO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIEpZYj1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uZGVzY3JpcHRpb25FbnRpdHkmJm4ucHVzaCh0aGlzLk4uZGVzY3JpcHRpb25FbnRpdHkpO3RoaXMuTi5jcmVhdG9ycyYmbi5wdXNoKC4uLnRoaXMuTi5jcmVhdG9ycyk7dGhpcy5OLnRoZUJpZ2dlc3RGYW4mJm4ucHVzaCh0aGlzLk4udGhlQmlnZ2VzdEZhbik7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fSxJX3c9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgU1l3PW5ldyBnLnFNKCJmZWVkYmFja0VuZHBvaW50Iik7dmFyIEFZeD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBta2g9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgS3R4PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIE9zaT1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBQTHI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgWnNyPW5ldyBnLnFNKCJpbnRlcmFjdGlvbkxvZ2dpbmdDb21tYW5kTWV0YWRhdGEiKTt2YXIgZDNqPXtsRjoiV0VCX0RJU1BMQVlfTU9ERV9VTktOT1dOIixuSToiV0VCX0RJU1BMQVlfTU9ERV9CUk9XU0VSIixSWDoiV0VCX0RJU1BMQVlfTU9ERV9NSU5JTUFMX1VJIixaaToiV0VCX0RJU1BMQVlfTU9ERV9TVEFOREFMT05FIixCcjoiV0VCX0RJU1BMQVlfTU9ERV9GVUxMU0NSRUVOIn07dmFyIFVrcj1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9Z2V0UGxheWVyVHlwZSgpe3JldHVybiBIVyh0aGlzLDcpfUUxKCl7cmV0dXJuIFk5KHRoaXMsMTkpfXNldFZpZGVvSWQobil7cmV0dXJuIGcuU0UodGhpcywxOSxuKX19O3ZhciBBbT1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9fTt2YXIgU0w9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIFp2PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuLDUwMCl9fSx5WTE9WzIsMyw1LDYsNywxMSwxMywyMCwyMSwyMiwyMywyNCwyOCwzMiwzNyw0NSw1OSw3Miw3Myw3NCw3Niw3OCw3OSw4MCw4NSw5MSw5NywxMDAsMTAyLDEwNSwxMTEsMTE3LDExOSwxMjYsMTI3LDEzNiwxNDYsMTQ4LDE1MSwxNTYsMTU3LDE1OCwxNTksMTYzLDE2NCwxNjgsMTc2LDE3NywxNzgsMTc5LDE4NCwxODgsMTg5LDE5MCwxOTEsMTkzLDE5NCwxOTUsMTk2LDE5NywxOTgsMTk5LDIwMCwyMDEsMjAyLDIwMywyMDQsMjA1LDIwNiwyMDgsMjA5LDIxNSwyMTksMjIyLDIyNSwyMjYsMjI3LDIyOSwyMzIsMjMzLDIzNCwyNDAsMjQxLDI0NCwyNDcsMjQ4LDI0OSwyNTEsMjU0LDI1NSwyNTYsMjU3LDI1OCwyNTksMjYwLDI2MSwyNjYsMjcwLDI3MiwyNzgsMjg4LDI5MSwyOTMsMzAwLDMwNCwzMDgsMzA5LDMxMCwzMTEsMzEzLDMxNCwzMTksMzIwLDMyMSwzMjMsMzI0LDMyNywzMjgsCjMzMCwzMzEsMzMyLDMzNCwzMzcsMzM4LDM0MCwzNDQsMzQ4LDM1MCwzNTEsMzUyLDM1MywzNTQsMzU1LDM1NiwzNTcsMzU4LDM2MSwzNjMsMzY0LDM2OCwzNjksMzcwLDM3MywzNzQsMzc1LDM3OCwzODAsMzgxLDM4MywzODgsMzg5LDM5OSw0MDIsNDAzLDQxMCw0MTEsNDEyLDQxMyw0MTQsNDE1LDQxNiw0MTcsNDE4LDQyMyw0MjQsNDI1LDQyNiw0MjcsNDI5LDQzMCw0MzEsNDM5LDQ0MSw0NDQsNDQ4LDQ1OCw0NjksNDcxLDQ3Myw0NzQsNDgwLDQ4MSw0ODIsNDg0LDQ4NSw0ODYsNDkxLDQ5NSw0OTYsNTA2LDUwNyw1MDksNTExLDUxMiw1MTMsNTE0LDUxNSw1MTYsNTE3LDUxOCw1MTksNTIwLDUyMiw1MjMsNTI0LDUyNSw1MjYsNTI3LDUyOCw1MjksNTMwLDUzMSw1MzYsNTM3LDUzOCw1MzksNTQxLDU0NSw1NDcsNTQ4LDU0OSw1NTAsNTUxLDU1Miw1NTMsNTU0LDU1N107Zy5FeGk9bmV3IGcucU0oImxvZ2dpbmdDb250ZXh0Iik7dmFyIE95PWNsYXNzIGV4dGVuZHMgZy5RbXtjb25zdHJ1Y3RvcihuKXtzdXBlcihuKX19O3ZhciBoNj1jbGFzcyBleHRlbmRzIGcuUW17Y29uc3RydWN0b3Iobil7c3VwZXIobil9RTEoKXtyZXR1cm4gSlModGhpcyx2Vyh0aGlzLHhBLDEpKX1zZXRWaWRlb0lkKG4pe3JldHVybiBEMih0aGlzLDEseEEsV0gobikpfWdldFBsYXlsaXN0SWQoKXtyZXR1cm4gSlModGhpcyx2Vyh0aGlzLHhBLDIpKX19LHhBPVsxLDJdO3ZhciB1RjI9Y2xhc3MgZXh0ZW5kcyBnLlFte2NvbnN0cnVjdG9yKG4pe3N1cGVyKG4pfX07dmFyIGlzWj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciB1NXQ9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgb3hoPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGRrdD1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uZG93bmxvYWRzTGlzdCYmbi5wdXNoKHRoaXMuTi5kb3dubG9hZHNMaXN0KTt0aGlzLk4uc21hcnREb3dubG9hZHNMaXN0JiZuLnB1c2godGhpcy5OLnNtYXJ0RG93bmxvYWRzTGlzdCk7dGhpcy5OLnJlY29tbWVuZGVkRG93bmxvYWRzTGlzdCYmbi5wdXNoKHRoaXMuTi5yZWNvbW1lbmRlZERvd25sb2Fkc0xpc3QpO3RoaXMuTi5yZWZyZXNoJiZuLnB1c2godGhpcy5OLnJlZnJlc2gpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIGxfWj1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4ucmVmcmVzaCYmbi5wdXNoKHRoaXMuTi5yZWZyZXNoKTtpZih0aGlzLk4uZG93bmxvYWRzKWZvcihsZXQgVyBvZiB0aGlzLk4uZG93bmxvYWRzKW4ucHVzaCguLi4obmV3IHo0dyhXKSkuSigpKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19LHo0dz1jbGFzcyBleHRlbmRzIHJue0ooKXt2YXIgbj1bXTt0aGlzLk4udmlkZW8mJm4ucHVzaCh0aGlzLk4udmlkZW8pO3RoaXMuTi5wbGF5bGlzdCYmbi5wdXNoKHRoaXMuTi5wbGF5bGlzdCk7dGhpcy5OLnZpZGVvSXRlbSYmbi5wdXNoKHRoaXMuTi52aWRlb0l0ZW0pO3RoaXMuTi5wbGF5bGlzdEl0ZW0mJm4ucHVzaCh0aGlzLk4ucGxheWxpc3RJdGVtKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBUQTE9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLmxvY2FsSW1hZ2VFbnRpdGllcyYmbi5wdXNoKC4uLnRoaXMuTi5sb2NhbEltYWdlRW50aXRpZXMpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIGpCaT1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4ucGxheWJhY2tEYXRhJiZuLnB1c2godGhpcy5OLnBsYXliYWNrRGF0YSk7dGhpcy5OLmxvY2FsSW1hZ2VFbnRpdGllcyYmbi5wdXNoKC4uLnRoaXMuTi5sb2NhbEltYWdlRW50aXRpZXMpO3RoaXMuTi52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSYmbi5wdXNoKHRoaXMuTi52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgQ0xpPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIEJBVT1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uZmFrZUNoaWxkcmVuJiZuLnB1c2goLi4udGhpcy5OLmZha2VDaGlsZHJlbik7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgRnRoPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi52aWRlbyYmbi5wdXNoKHRoaXMuTi52aWRlbyk7dGhpcy5OLnBsYXliYWNrRGF0YSYmbi5wdXNoKHRoaXMuTi5wbGF5YmFja0RhdGEpO3RoaXMuTi5vZmZsaW5lVmlkZW9Qb2xpY3kmJm4ucHVzaCh0aGlzLk4ub2ZmbGluZVZpZGVvUG9saWN5KTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciB3d1M9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgTVB3PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5jaGFubmVsT3duZXImJm4ucHVzaCh0aGlzLk4uY2hhbm5lbE93bmVyKTt0aGlzLk4udmlkZW9zJiZuLnB1c2goLi4udGhpcy5OLnZpZGVvcyk7dGhpcy5OLmNvbGxhYm9yYXRvckNoYW5uZWxzJiZuLnB1c2goLi4udGhpcy5OLmNvbGxhYm9yYXRvckNoYW5uZWxzKTt0aGlzLk4uZG93bmxvYWRTdGF0ZSYmbi5wdXNoKHRoaXMuTi5kb3dubG9hZFN0YXRlKTt0aGlzLk4ucmVmcmVzaCYmbi5wdXNoKHRoaXMuTi5yZWZyZXNoKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBSNGk9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLnZpZGVvJiZuLnB1c2godGhpcy5OLnZpZGVvKTt0aGlzLk4uY2hhbm5lbENvbnRyaWJ1dG9yJiZuLnB1c2godGhpcy5OLmNoYW5uZWxDb250cmlidXRvcik7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgVlBVPWNsYXNzIGV4dGVuZHMgcm57Sigpe3ZhciBuPVtdO3RoaXMuTi5yZWNvbW1lbmRlZFZpZGVvTWV0YWRhdGEmJm4ucHVzaCguLi4obmV3IFFCcih0aGlzLk4ucmVjb21tZW5kZWRWaWRlb01ldGFkYXRhKSkuSigpKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19LFFCcj1jbGFzcyBleHRlbmRzIHJue0ooKXt2YXIgbj1bXTt0aGlzLk4ubG9jYWxJbWFnZUVudGl0aWVzJiZuLnB1c2goLi4udGhpcy5OLmxvY2FsSW1hZ2VFbnRpdGllcyk7dGhpcy5OLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5JiZuLnB1c2godGhpcy5OLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5KTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBjWWk9Y2xhc3MgZXh0ZW5kcyBybntKKCl7dmFyIG49W107dGhpcy5OLnBsYXliYWNrUG9zaXRpb24mJm4ucHVzaCh0aGlzLk4ucGxheWJhY2tQb3NpdGlvbik7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgYV9qPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5vd25lciYmbi5wdXNoKHRoaXMuTi5vd25lcik7dGhpcy5OLmRvd25sb2FkU3RhdGUmJm4ucHVzaCh0aGlzLk4uZG93bmxvYWRTdGF0ZSk7dGhpcy5OLnVzZXJTdGF0ZSYmbi5wdXNoKC4uLihuZXcgY1lpKHRoaXMuTi51c2VyU3RhdGUpKS5KKCkpO3RoaXMuTi5hZGRpdGlvbmFsTWV0YWRhdGEmJm4ucHVzaCguLi4obmV3IFZQVSh0aGlzLk4uYWRkaXRpb25hbE1ldGFkYXRhKSkuSigpKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBuTjI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLnVzZXJDaGFubmVsRGV0YWlscyYmbi5wdXNoKHRoaXMuTi51c2VyQ2hhbm5lbERldGFpbHMpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIFdNWj1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uY2hhbm5lbE93bmVyJiZuLnB1c2godGhpcy5OLmNoYW5uZWxPd25lcik7dGhpcy5OLnBsYXliYWNrUG9zaXRpb24mJm4ucHVzaCh0aGlzLk4ucGxheWJhY2tQb3NpdGlvbik7dGhpcy5OLmxvY2FsSW1hZ2VFbnRpdGllcyYmbi5wdXNoKC4uLnRoaXMuTi5sb2NhbEltYWdlRW50aXRpZXMpO3RoaXMuTi5kb3dubG9hZFN0YXR1cyYmbi5wdXNoKHRoaXMuTi5kb3dubG9hZFN0YXR1cyk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgREkxPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGJ6dD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciB2TnQ9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIga1ByPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGhPdD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciB4SVo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgTE13PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGVPcj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBnTnI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgVVU9bmV3IGcucU0oImNoYW5nZUtleWVkTWFya2Vyc1Zpc2liaWxpdHlDb21tYW5kIik7dmFyIHh0TT1uZXcgZy5xTSgibG9hZE1hcmtlcnNDb21tYW5kIik7dmFyIGVicj1uZXcgZy5xTSgidGltZWx5QWN0aW9uVmlld01vZGVsIik7dmFyIExxQz1uZXcgZy5xTSgidGltZWx5QWN0aW9uc092ZXJsYXlWaWV3TW9kZWwiKTt2YXIgWF9TPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIHF2Qz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBHUE09Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgdHhqPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyICRJTT1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBySmI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLmNvbXBvc2l0ZVNvdXJjZUtleXMmJm4ucHVzaCguLi50aGlzLk4uY29tcG9zaXRlU291cmNlS2V5cyk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgczR0PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi50cmFja0Rvd25sb2FkTWV0YWRhdGFzJiZuLnB1c2goLi4udGhpcy5OLnRyYWNrRG93bmxvYWRNZXRhZGF0YXMpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIE5rUz1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uZG93bmxvYWRlZFRyYWNrcyYmbi5wdXNoKC4uLnRoaXMuTi5kb3dubG9hZGVkVHJhY2tzKTt0aGlzLk4uc21hcnREb3dubG9hZGVkVHJhY2tzJiZuLnB1c2goLi4udGhpcy5OLnNtYXJ0RG93bmxvYWRlZFRyYWNrcyk7dGhpcy5OLmRvd25sb2FkZWRFcGlzb2RlcyYmbi5wdXNoKC4uLnRoaXMuTi5kb3dubG9hZGVkRXBpc29kZXMpO3RoaXMuTi5kb3dubG9hZGVkQWxidW1SZWxlYXNlcyYmbi5wdXNoKC4uLnRoaXMuTi5kb3dubG9hZGVkQWxidW1SZWxlYXNlcyk7dGhpcy5OLnNtYXJ0RG93bmxvYWRlZEFsYnVtUmVsZWFzZXMmJm4ucHVzaCguLi50aGlzLk4uc21hcnREb3dubG9hZGVkQWxidW1SZWxlYXNlcyk7dGhpcy5OLmRvd25sb2FkZWRQbGF5bGlzdHMmJm4ucHVzaCguLi50aGlzLk4uZG93bmxvYWRlZFBsYXlsaXN0cyk7dGhpcy5OLnNtYXJ0RG93bmxvYWRlZFBsYXlsaXN0cyYmbi5wdXNoKC4uLnRoaXMuTi5zbWFydERvd25sb2FkZWRQbGF5bGlzdHMpOwp0aGlzLk4ubWV0YWRhdGFPbmx5VHJhY2tzJiZuLnB1c2goLi4udGhpcy5OLm1ldGFkYXRhT25seVRyYWNrcyk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgcF9yPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi50cmFja0Rvd25sb2FkTWV0YWRhdGFzJiZuLnB1c2goLi4udGhpcy5OLnRyYWNrRG93bmxvYWRNZXRhZGF0YXMpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIFl2dD1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4ucGxheWJhY2tEYXRhJiZuLnB1c2godGhpcy5OLnBsYXliYWNrRGF0YSk7dGhpcy5OLmxvY2FsSW1hZ2VFbnRpdGllcyYmbi5wdXNoKC4uLnRoaXMuTi5sb2NhbEltYWdlRW50aXRpZXMpO3RoaXMuTi52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSYmbi5wdXNoKHRoaXMuTi52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgSHppPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5tdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHkmJm4ucHVzaCh0aGlzLk4ubXVzaWNMaWJyYXJ5U3RhdHVzRW50aXR5KTt0aGlzLk4ucHJpbWFyeUFydGlzdHMmJm4ucHVzaCguLi50aGlzLk4ucHJpbWFyeUFydGlzdHMpO3RoaXMuTi5kZXRhaWxzJiZuLnB1c2godGhpcy5OLmRldGFpbHMpO3RoaXMuTi51c2VyRGV0YWlscyYmbi5wdXNoKHRoaXMuTi51c2VyRGV0YWlscyk7dGhpcy5OLnRyYWNrcyYmbi5wdXNoKC4uLnRoaXMuTi50cmFja3MpO3RoaXMuTi5zaGFyZSYmbi5wdXNoKHRoaXMuTi5zaGFyZSk7dGhpcy5OLmRvd25sb2FkTWV0YWRhdGEmJm4ucHVzaCh0aGlzLk4uZG93bmxvYWRNZXRhZGF0YSk7dGhpcy5OLnJlZnJlc2gmJm4ucHVzaCh0aGlzLk4ucmVmcmVzaCk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fSxmSlU9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLmFsYnVtUmVsZWFzZSYmCm4ucHVzaCh0aGlzLk4uYWxidW1SZWxlYXNlKTt0aGlzLk4udHJhY2tzJiZuLnB1c2goLi4udGhpcy5OLnRyYWNrcyk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fSxKSjE9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLmFsYnVtUmVsZWFzZSYmbi5wdXNoKHRoaXMuTi5hbGJ1bVJlbGVhc2UpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIElKVT1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4uZGV0YWlscyYmbi5wdXNoKHRoaXMuTi5kZXRhaWxzKTt0aGlzLk4udXNlckRldGFpbHMmJm4ucHVzaCh0aGlzLk4udXNlckRldGFpbHMpO3JldHVyblsuLi4obmV3IFNldChuKSldfX0sU3ZaPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5wYXJlbnRBcnRpc3QmJm4ucHVzaCh0aGlzLk4ucGFyZW50QXJ0aXN0KTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19LEFKaT1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4ucGFyZW50QXJ0aXN0JiZuLnB1c2godGhpcy5OLnBhcmVudEFydGlzdCk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fTt2YXIgbUliPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIEtNdz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBQVHg9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLnRyYWNrcyYmbi5wdXNoKC4uLnRoaXMuTi50cmFja3MpO3RoaXMuTi5yZWZyZXNoJiZuLnB1c2godGhpcy5OLnJlZnJlc2gpO3RoaXMuTi5tdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHkmJm4ucHVzaCh0aGlzLk4ubXVzaWNMaWJyYXJ5U3RhdHVzRW50aXR5KTt0aGlzLk4uZGV0YWlscyYmbi5wdXNoKHRoaXMuTi5kZXRhaWxzKTt0aGlzLk4uZG93bmxvYWRNZXRhZGF0YSYmbi5wdXNoKHRoaXMuTi5kb3dubG9hZE1ldGFkYXRhKTt0aGlzLk4uc2lkZWxvYWRNZXRhZGF0YSYmbi5wdXNoKHRoaXMuTi5zaWRlbG9hZE1ldGFkYXRhKTt0aGlzLk4udXNlckRldGFpbHMmJm4ucHVzaCh0aGlzLk4udXNlckRldGFpbHMpO3RoaXMuTi5lbnRyeUNvbGxlY3Rpb24mJm4ucHVzaCh0aGlzLk4uZW50cnlDb2xsZWN0aW9uKTt0aGlzLk4uc2hhcmUmJm4ucHVzaCh0aGlzLk4uc2hhcmUpO3RoaXMuTi5wb2RjYXN0U2hvd0FkZGl0aW9uYWxNZXRhZGF0YSYmCm4ucHVzaCguLi4obmV3IE96aSh0aGlzLk4ucG9kY2FzdFNob3dBZGRpdGlvbmFsTWV0YWRhdGEpKS5KKCkpO3JldHVyblsuLi4obmV3IFNldChuKSldfX0sT3ppPWNsYXNzIGV4dGVuZHMgcm57Sigpe3ZhciBuPVtdO3RoaXMuTi5jcmVhdG9yRW50aXR5JiZuLnB1c2godGhpcy5OLmNyZWF0b3JFbnRpdHkpO3JldHVyblsuLi4obmV3IFNldChuKSldfX07dmFyIFp6aT1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBVSVo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLm11c2ljTGlicmFyeVN0YXR1c0VudGl0eSYmbi5wdXNoKHRoaXMuTi5tdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHkpO3RoaXMuTi5hcnRpc3RzJiZuLnB1c2goLi4udGhpcy5OLmFydGlzdHMpO3RoaXMuTi5hdWRpb01vZGVWZXJzaW9uJiZuLnB1c2godGhpcy5OLmF1ZGlvTW9kZVZlcnNpb24pO3RoaXMuTi52aWRlb01vZGVWZXJzaW9uJiZuLnB1c2godGhpcy5OLnZpZGVvTW9kZVZlcnNpb24pO3RoaXMuTi51c2VyRGV0YWlscyYmbi5wdXNoKHRoaXMuTi51c2VyRGV0YWlscyk7dGhpcy5OLmRldGFpbHMmJm4ucHVzaCh0aGlzLk4uZGV0YWlscyk7dGhpcy5OLmFsYnVtUmVsZWFzZSYmbi5wdXNoKHRoaXMuTi5hbGJ1bVJlbGVhc2UpO3RoaXMuTi5zaGFyZSYmbi5wdXNoKHRoaXMuTi5zaGFyZSk7dGhpcy5OLmxpYnJhcnlFZGl0JiZuLnB1c2godGhpcy5OLmxpYnJhcnlFZGl0KTt0aGlzLk4uZG93bmxvYWRNZXRhZGF0YSYmCm4ucHVzaCh0aGlzLk4uZG93bmxvYWRNZXRhZGF0YSk7dGhpcy5OLnBsYXliYWNrUG9zaXRpb24mJm4ucHVzaCh0aGlzLk4ucGxheWJhY2tQb3NpdGlvbik7dGhpcy5OLmx5cmljcyYmbi5wdXNoKHRoaXMuTi5seXJpY3MpO3JldHVyblsuLi4obmV3IFNldChuKSldfX0seUpTPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5wYXJlbnRUcmFjayYmbi5wdXNoKHRoaXMuTi5wYXJlbnRUcmFjayk7cmV0dXJuWy4uLihuZXcgU2V0KG4pKV19fSxFTng9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7dmFyIG49W107dGhpcy5OLnBhcmVudFRyYWNrJiZuLnB1c2godGhpcy5OLnBhcmVudFRyYWNrKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBucU09bmV3IGcucU0oIm11c2ljRW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzUmVuZGVyZXIiKTt2YXIgaXpTPW5ldyBnLnFNKCJzaGFyZUVuZHBvaW50IiksdXhDPW5ldyBnLnFNKCJzaGFyZUVudGl0eUVuZHBvaW50Iiksb05pPW5ldyBnLnFNKCJzaGFyZUVudGl0eVNlcnZpY2VFbmRwb2ludCIpLGRJeD1uZXcgZy5xTSgid2ViUGxheWVyU2hhcmVFbnRpdHlTZXJ2aWNlRW5kcG9pbnQiKTtnLlBqPW5ldyBnLnFNKCJ1cmxFbmRwb2ludCIpO2cuSVE9bmV3IGcucU0oIndhdGNoRW5kcG9pbnQiKTt2YXIgek93PW5ldyBnLnFNKCJ3YXRjaFBsYXlsaXN0RW5kcG9pbnQiKTt2YXIgbEoyPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIFRrdz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBqNFo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgQ1R3PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIEJrdz1jbGFzcyBleHRlbmRzIHNDe0ooKXt2YXIgbj1bXTt0aGlzLk4udHJhbnNmZXImJm4ucHVzaCh0aGlzLk4udHJhbnNmZXIpO3RoaXMuTi5hZHNQbGF5YmFja0RhdGEmJm4ucHVzaCguLi50aGlzLk4uYWRzUGxheWJhY2tEYXRhKTt0aGlzLk4uZHJtTGljZW5zZSYmbi5wdXNoKHRoaXMuTi5kcm1MaWNlbnNlKTt0aGlzLk4ub2ZmbGluZVZpZGVvUG9saWN5JiZuLnB1c2godGhpcy5OLm9mZmxpbmVWaWRlb1BvbGljeSk7dGhpcy5OLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5JiZuLnB1c2godGhpcy5OLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5KTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBGTXc9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgd19NPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3ZhciBuPVtdO3RoaXMuTi5vZmZsaW5lVmlkZW9TdHJlYW1zJiZuLnB1c2goLi4udGhpcy5OLm9mZmxpbmVWaWRlb1N0cmVhbXMpO3RoaXMuTi5jYXB0aW9uVHJhY2smJm4ucHVzaCguLi50aGlzLk4uY2FwdGlvblRyYWNrKTtyZXR1cm5bLi4uKG5ldyBTZXQobikpXX19O3ZhciBNeFM9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgUk8xPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIFE0cj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBWeGI9bmV3IGcucU0oInByZWZldGNoV2F0Y2hDb21tYW5kIik7dmFyIGNKWj1uZXcgZy5xTSgidXBkYXRlUHJvZ3Jlc3NCYXJDb21tYW5kIik7dmFyIE5LeD1uZXcgZy5xTSgiY29tcG9zaXRlVmlkZW9PdmVybGF5UmVuZGVyZXIiKTt2YXIgbGFTPW5ldyBnLnFNKCJwYWlkQ29udGVudE92ZXJsYXlSZW5kZXJlciIpO3ZhciBLSTE9bmV3IGcucU0oInBsYXllck11dGVkQXV0b3BsYXlPdmVybGF5UmVuZGVyZXIiKSxPVng9bmV3IGcucU0oInBsYXllck11dGVkQXV0b3BsYXlFbmRTY3JlZW5SZW5kZXJlciIpO3ZhciBJb2I9bmV3IGcucU0oInVuc2VyaWFsaXplZFBsYXllclJlc3BvbnNlIiksRHo9bmV3IGcucU0oInVuc2VyaWFsaXplZFBsYXllclJlc3BvbnNlIiksYUp3PW5ldyBnLnFNKCJwbGF5ZXJSZXNwb25zZSIpO3ZhciBuWEM9bmV3IGcucU0oInBsYXlsaXN0RWRpdEVuZHBvaW50Iik7dmFyIFd1Wj1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBUZT1uZXcgZy5xTSgicmVlbFdhdGNoRW5kcG9pbnQiKTt2YXIgRCRyPW5ldyBnLnFNKCJyZWVsSXRlbVdhdGNoUmVzcG9uc2UiKTtnLllIPW5ldyBnLnFNKCJidXR0b25SZW5kZXJlciIpO2cuSEM9bmV3IGcucU0oInRvZ2dsZUJ1dHRvblJlbmRlcmVyIik7Zy5jUT1uZXcgZy5xTSgiY291bnRlcmZhY3R1YWxSZW5kZXJlciIpO3ZhciBiTXI9bmV3IGcucU0oInJlc29sdmVVcmxDb21tYW5kTWV0YWRhdGEiKTt2YXIgdlhqPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGtpdz1uZXcgZy5xTSgibW9kaWZ5Q2hhbm5lbE5vdGlmaWNhdGlvblByZWZlcmVuY2VFbmRwb2ludCIpO3ZhciBoblU9bmV3IGcucU0oInVuc3Vic2NyaWJlRW5kcG9pbnQiKTt2YXIgeCRaPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIE5oMT1uZXcgZy5xTSgic3Vic2NyaWJlQnV0dG9uUmVuZGVyZXIiKTt2YXIgTHUxPW5ldyBnLnFNKCJzdWJzY3JpYmVFbmRwb2ludCIpO3ZhciBlbmk9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgZ1hVPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIFhSUz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBxTlo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgR2lNPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIHRHdD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciAkJDI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgck0xPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIHNkaT1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBOeTE9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgcFJ0PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIFZDMj1uZXcgZy5xTSgicXJDb2RlUmVuZGVyZXIiKTt2YXIgWU5aPXtkajoiTElWSU5HX1JPT01fQVBQX01PREVfVU5TUEVDSUZJRUQiLHdqOiJMSVZJTkdfUk9PTV9BUFBfTU9ERV9NQUlOIixBXzoiTElWSU5HX1JPT01fQVBQX01PREVfS0lEUyIsQ1E6IkxJVklOR19ST09NX0FQUF9NT0RFX01VU0lDIixvTzoiTElWSU5HX1JPT01fQVBQX01PREVfVU5QTFVHR0VEIixJTzoiTElWSU5HX1JPT01fQVBQX01PREVfR0FNSU5HIn07dmFyIEhNdD1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBmTzI9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgSk0yPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIGJXWj1uZXcgZy5xTSgiYXV0b3BsYXlTd2l0Y2hCdXR0b25SZW5kZXJlciIpO3ZhciB2cXQ9bmV3IGcucU0oImRlc2t0b3BPdmVybGF5Q29uZmlnUmVuZGVyZXIiKTt2YXIgYzNoPW5ldyBnLnFNKCJlbmdhZ2VtZW50UGFuZWxTZWN0aW9uTGlzdFJlbmRlcmVyIik7dmFyIFdHaT1uZXcgZy5xTSgicGxheWxpc3RQYW5lbFJlbmRlcmVyIik7dmFyIElPdz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBTTng9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgQU14PWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIG0kUz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBLdWo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgT01qPWNsYXNzIGV4dGVuZHMgc0N7Sigpe3JldHVybltdfX07dmFyIFA4dz1jbGFzcyBleHRlbmRzIHNDe0ooKXtyZXR1cm5bXX19O3ZhciBaTWo9Y2xhc3MgZXh0ZW5kcyBzQ3tKKCl7cmV0dXJuW119fTt2YXIgcFlaPW5ldyBnLnFNKCJjaXBoZXIiKTt2YXIgU2xNPW5ldyBnLnFNKCJwbGF5ZXJWYXJzIik7dmFyIGR2aT1uZXcgZy5xTSgicGxheWVyVmFycyIpO3ZhciBVJFU9Zy5xaS53aW5kb3csSUU9VSRVPy55dD8uY29uZmlnX3x8VSRVPy55dGNmZz8uZGF0YV98fHt9O2cuR2IoInl0LmNvbmZpZ18iLElFKTt2YXIgS3c9W107dmFyIGR4aT0vXltcdy5dKiQvLG9LaT17cTohMCxzZWFyY2hfcXVlcnk6ITB9LHVRaD1TdHJpbmcoeUYpO2cuUkU9bmV3IGNsYXNze2NvbnN0cnVjdG9yKG4sVyl7dGhpcy5OPW47dGhpcy5KPVd9fSh3aW5kb3csd2luZG93LmRvY3VtZW50KTtnLkdiKCJ5dC5hZHNfLnNpZ25hbHNfLmdldEFkU2lnbmFsc1N0cmluZyIsZnVuY3Rpb24obil7cmV0dXJuIGcuRXQoZy5RRihuKSl9KTtnLlV3KCk7dmFyIFZGPSJYTUxIdHRwUmVxdWVzdCJpbiBnLnFpPygpPT5uZXcgWE1MSHR0cFJlcXVlc3Q6bnVsbDt2YXIgeU1TPSJhYnNvbHV0ZV9leHBlcmltZW50cyBjbGllbnRfZGV2X2RvbWFpbiBjbGllbnRfZGV2X2V4cGZsYWcgY2xpZW50X2Rldl9yZWdleF9tYXAgY2xpZW50X2Rldl9yb290X3VybCBjbGllbnRfcm9sbG91dF9vdmVycmlkZSBleHBmbGFnIGZvcmNlZENhcGFiaWxpdHkganNmZWF0IGpzbW9kZSBtb2RzIHRoZW1lIi5zcGxpdCgiICIpO1suLi55TVNdO3ZhciBMJD17QXV0aG9yaXphdGlvbjoiQVVUSE9SSVpBVElPTiIsIlgtR29vZy1FT00tVmlzaXRvci1JZCI6IkVPTV9WSVNJVE9SX0RBVEEiLCJYLUdvb2ctVmlzaXRvci1JZCI6IlNBTkRCT1hFRF9WSVNJVE9SX0lEIiwiWC1Zb3V0dWJlLURvbWFpbi1BZG1pbi1TdGF0ZSI6IkRPTUFJTl9BRE1JTl9TVEFURSIsIlgtWW91dHViZS1DaHJvbWUtQ29ubmVjdGVkIjoiQ0hST01FX0NPTk5FQ1RFRF9IRUFERVIiLCJYLVlvdVR1YmUtQ2xpZW50LU5hbWUiOiJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIsIlgtWW91VHViZS1DbGllbnQtVmVyc2lvbiI6IklOTkVSVFVCRV9DT05URVhUX0NMSUVOVF9WRVJTSU9OIiwiWC1Zb3VUdWJlLURlbGVnYXRpb24tQ29udGV4dCI6IklOTkVSVFVCRV9DT05URVhUX1NFUklBTElaRURfREVMRUdBVElPTl9DT05URVhUIiwiWC1Zb3VUdWJlLURldmljZSI6IkRFVklDRSIsIlgtWW91dHViZS1JZGVudGl0eS1Ub2tlbiI6IklEX1RPS0VOIiwiWC1Zb3VUdWJlLVBhZ2UtQ0wiOiJQQUdFX0NMIiwKIlgtWW91VHViZS1QYWdlLUxhYmVsIjoiUEFHRV9CVUlMRF9MQUJFTCIsIlgtR29vZy1BdXRoVXNlciI6IlNFU1NJT05fSU5ERVgiLCJYLUdvb2ctUGFnZUlkIjoiREVMRUdBVEVEX1NFU1NJT05fSUQifSxWdWI9WyJhcHAiLCJkZWJ1Z2NzcyIsImRlYnVnanMiLCJleHBmbGFnIiwiZm9yY2VfYWRfcGFyYW1zIiwiZm9yY2VfYWRfZW5jcnlwdGVkIiwiZm9yY2VfdmlyYWxfYWRfcmVzcG9uc2VfcGFyYW1zIiwiZm9yY2VkX2V4cGVyaW1lbnRzIiwiaW5uZXJ0dWJlX3NuYXBzaG90cyIsImlubmVydHViZV9nb2xkZW5zIiwiaW50ZXJuYWxjb3VudHJ5Y29kZSIsImludGVybmFsaXBvdmVycmlkZSIsImFic29sdXRlX2V4cGVyaW1lbnRzIiwiY29uZGl0aW9uYWxfZXhwZXJpbWVudHMiLCJzYmIiLCJzcl9ibnNfYWRkcmVzcyIsLi4ueU1TXSxHUT0hMSxGeDE9eFQ7dmFyIGM0VTtnLiRUPWNsYXNzIGV4dGVuZHMgZy5UYntjb25zdHJ1Y3RvcihuLFcsRCl7c3VwZXIoYCR7bn0sIGVycm9yQ29kZT0ke1d9YCk7dGhpcy5lcnJvckNvZGU9Vzt0aGlzLnhocj1EO3RoaXMubmFtZT0iUHJvbWlzZUFqYXhFcnJvciJ9fTtjNFU9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy54aHI9bn19O3ZhciBOWD1jbGFzc3tjb25zdHJ1Y3RvcihuPW51bGwpe3RoaXMuTj1uO3RoaXMuVz0wO3RoaXMuSj1udWxsfXRoZW4obixXLEQpe3JldHVybiB0aGlzLk4/dGhpcy5OLnRoZW4obixXLEQpOnRoaXMuVz09PTEmJm4/KG49bi5jYWxsKEQsdGhpcy5KKSkmJnR5cGVvZiBuLnRoZW49PT0iZnVuY3Rpb24iP246Zy5IMChuKTp0aGlzLlc9PT0yJiZXPyhuPVcuY2FsbChELHRoaXMuSikpJiZ0eXBlb2Ygbi50aGVuPT09ImZ1bmN0aW9uIj9uOmcucCQobik6dGhpc31nZXRWYWx1ZSgpe3JldHVybiB0aGlzLkp9fTtOWC5wcm90b3R5cGUuJGdvb2dfVGhlbmFibGU9ITA7dmFyIGYkPSExO2cuTUw9dzh8fE1YO3ZhciBXMDE9L14oWzAtOVwuXSspOihbMC05XC5dKykkLzt2YXIgWGs9e307dmFyIEVYaD0wLHEwPWcuWmw/IndlYmtpdCI6Zy5lUz8ibW96IjpnLmtoPyJtcyI6cmM/Im8iOiIiLGlNeD1nLnJyKCJ5dERvbURvbUdldE5leHRJZCIpfHwoKCk9PisrRVhoKTsKZy5HYigieXREb21Eb21HZXROZXh0SWQiLGlNeCk7dmFyIHVaYj17c3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOjEsc3RvcFByb3BhZ2F0aW9uOjEscHJldmVudE1vdXNlRXZlbnQ6MSxwcmV2ZW50TWFuaXB1bGF0aW9uOjEscHJldmVudERlZmF1bHQ6MSxsYXllclg6MSxsYXllclk6MSxzY3JlZW5YOjEsc2NyZWVuWToxLHNjYWxlOjEscm90YXRpb246MSx3ZWJraXRNb3ZlbWVudFg6MSx3ZWJraXRNb3ZlbWVudFk6MX0sZnk9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy50eXBlPSIiO3RoaXMuc3RhdGU9dGhpcy5zb3VyY2U9dGhpcy5kYXRhPXRoaXMuY3VycmVudFRhcmdldD10aGlzLnJlbGF0ZWRUYXJnZXQ9dGhpcy50YXJnZXQ9bnVsbDt0aGlzLmNoYXJDb2RlPXRoaXMua2V5Q29kZT0wO3RoaXMubWV0YUtleT10aGlzLnNoaWZ0S2V5PXRoaXMuY3RybEtleT10aGlzLmFsdEtleT0hMTt0aGlzLnJvdGF0aW9uPXRoaXMuY2xpZW50WT10aGlzLmNsaWVudFg9MDt0aGlzLnNjYWxlPTE7dGhpcy5jaGFuZ2VkVG91Y2hlcz10aGlzLnRvdWNoZXM9Cm51bGw7dHJ5e2lmKG49bnx8d2luZG93LmV2ZW50KXt0aGlzLmV2ZW50PW47Zm9yKGxldCBiIGluIG4pYiBpbiB1WmJ8fCh0aGlzW2JdPW5bYl0pO3RoaXMuc2NhbGU9bi5zY2FsZTt0aGlzLnJvdGF0aW9uPW4ucm90YXRpb247dmFyIFc9bi50YXJnZXR8fG4uc3JjRWxlbWVudDtXJiZXLm5vZGVUeXBlPT0zJiYoVz1XLnBhcmVudE5vZGUpO3RoaXMudGFyZ2V0PVc7dmFyIEQ9bi5yZWxhdGVkVGFyZ2V0O2lmKEQpdHJ5e0Q9RC5ub2RlTmFtZT9EOm51bGx9Y2F0Y2goYil7RD1udWxsfWVsc2UgdGhpcy50eXBlPT0ibW91c2VvdmVyIj9EPW4uZnJvbUVsZW1lbnQ6dGhpcy50eXBlPT0ibW91c2VvdXQiJiYoRD1uLnRvRWxlbWVudCk7dGhpcy5yZWxhdGVkVGFyZ2V0PUQ7dGhpcy5jbGllbnRYPW4uY2xpZW50WCE9dm9pZCAwP24uY2xpZW50WDpuLnBhZ2VYO3RoaXMuY2xpZW50WT1uLmNsaWVudFkhPXZvaWQgMD9uLmNsaWVudFk6bi5wYWdlWTt0aGlzLmtleUNvZGU9bi5rZXlDb2RlP24ua2V5Q29kZToKbi53aGljaDt0aGlzLmNoYXJDb2RlPW4uY2hhckNvZGV8fCh0aGlzLnR5cGU9PSJrZXlwcmVzcyI/dGhpcy5rZXlDb2RlOjApO3RoaXMuYWx0S2V5PW4uYWx0S2V5O3RoaXMuY3RybEtleT1uLmN0cmxLZXk7dGhpcy5zaGlmdEtleT1uLnNoaWZ0S2V5O3RoaXMubWV0YUtleT1uLm1ldGFLZXk7dGhpcy5OPW4ucGFnZVg7dGhpcy5KPW4ucGFnZVl9fWNhdGNoKGIpe319cHJldmVudERlZmF1bHQoKXt0aGlzLmV2ZW50JiYodGhpcy5ldmVudC5yZXR1cm5WYWx1ZT0hMSx0aGlzLmV2ZW50LnByZXZlbnREZWZhdWx0JiZ0aGlzLmV2ZW50LnByZXZlbnREZWZhdWx0KCkpfXN0b3BQcm9wYWdhdGlvbigpe3RoaXMuZXZlbnQmJih0aGlzLmV2ZW50LmNhbmNlbEJ1YmJsZT0hMCx0aGlzLmV2ZW50LnN0b3BQcm9wYWdhdGlvbiYmdGhpcy5ldmVudC5zdG9wUHJvcGFnYXRpb24oKSl9c3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCl7dGhpcy5ldmVudCYmKHRoaXMuZXZlbnQuY2FuY2VsQnViYmxlPSEwLAp0aGlzLmV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbiYmdGhpcy5ldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSl9fTtnLllSPWcucWkueXRFdmVudHNFdmVudHNMaXN0ZW5lcnN8fHt9O2cuR2IoInl0RXZlbnRzRXZlbnRzTGlzdGVuZXJzIixnLllSKTt2YXIgSEI9Zy5xaS55dEV2ZW50c0V2ZW50c0NvdW50ZXJ8fHtjb3VudDowfTtnLkdiKCJ5dEV2ZW50c0V2ZW50c0NvdW50ZXIiLEhCKTt2YXIgb1hoPWcud0QoZnVuY3Rpb24oKXt2YXIgbj0hMTt0cnl7bGV0IFc9T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7bj0hMH19KTsKd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLG51bGwsVyl9Y2F0Y2goVyl7fXJldHVybiBufSksSk89Zy53RChmdW5jdGlvbigpe3ZhciBuPSExOwp0cnl7bGV0IFc9T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJjYXB0dXJlIix7Z2V0OmZ1bmN0aW9uKCl7bj0hMH19KTsKd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLG51bGwsVyl9Y2F0Y2goVyl7fXJldHVybiBufSk7dmFyIGZqO2ZqPXdpbmRvdztnLlI9ZmoueXRjc2kmJmZqLnl0Y3NpLm5vdz9mai55dGNzaS5ub3c6ZmoucGVyZm9ybWFuY2UmJmZqLnBlcmZvcm1hbmNlLnRpbWluZyYmZmoucGVyZm9ybWFuY2Uubm93JiZmai5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0PygpPT5mai5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0K2ZqLnBlcmZvcm1hbmNlLm5vdygpOigpPT4obmV3IERhdGUpLmdldFRpbWUoKTtnLml4KG1ZLGcuRk0pO21ZLnByb3RvdHlwZS5EPWZ1bmN0aW9uKG4pe24uTj09PXZvaWQgMCYmcHkobik7dmFyIFc9bi5OO24uSj09PXZvaWQgMCYmcHkobik7dGhpcy5OPW5ldyBnLk1ZKFcsbi5KKX07Cm1ZLnByb3RvdHlwZS5FdT1mdW5jdGlvbigpe3JldHVybiB0aGlzLk58fG5ldyBnLk1ZfTsKbVkucHJvdG90eXBlLk89ZnVuY3Rpb24oKXtpZih0aGlzLk4pe3ZhciBuPSgwLGcuUikoKTtpZih0aGlzLlghPTApe3ZhciBXPXRoaXMuVixEPXRoaXMuTixiPVcueC1ELng7Vz1XLnktRC55O2I9TWF0aC5zcXJ0KGIqYitXKlcpLyhuLXRoaXMuWCk7dGhpcy5KW3RoaXMuV109TWF0aC5hYnMoKGItdGhpcy5qKS90aGlzLmopPi41PzE6MDtXPTA7Zm9yKEQ9MDtEPDQ7RCsrKVcrPXRoaXMuSltEXXx8MDtXPj0zJiZ0aGlzLksoKTt0aGlzLmo9Yn10aGlzLlg9bjt0aGlzLlY9dGhpcy5OO3RoaXMuVz0odGhpcy5XKzEpJTR9fTsKbVkucHJvdG90eXBlLm1BPWZ1bmN0aW9uKCl7RHIodGhpcy5ZKTtnLlNfKHRoaXMuY0opfTtnLkpMPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMuVz1bXTt0aGlzLks9bnx8dGhpc31OTihuLFcsRCxiLHYpe0Q9UFYoKDAsZy5LdCkoRCxifHx0aGlzLkspKTtEPXt0YXJnZXQ6bixuYW1lOlcsY2FsbGJhY2s6RH07dmFyIGs7diYmb1hoKCkmJihrPXtwYXNzaXZlOiEwfSk7bi5hZGRFdmVudExpc3RlbmVyKFcsRC5jYWxsYmFjayxrKTt0aGlzLlcucHVzaChEKTtyZXR1cm4gRH13SChuKXtmb3IobGV0IFc9MDtXPHRoaXMuVy5sZW5ndGg7VysrKWlmKHRoaXMuV1tXXT09bil7dGhpcy5XLnNwbGljZShXLDEpO24udGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIobi5uYW1lLG4uY2FsbGJhY2spO2JyZWFrfX1KKG4pe2Zvcig7dGhpcy5XLmxlbmd0aDspe2xldCBXPXRoaXMuVy5wb3AoKSxEO24mJm9YaCgpJiYoRD17cGFzc2l2ZTohMH0pO1cudGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoVy5uYW1lLFcuY2FsbGJhY2ssRCl9fW1BKCl7dGhpcy5KKCk7CnN1cGVyLm1BKCl9fTt2YXIgd1laPVsiYXR0L2dldCJdLGRRWj1bImVtYmVkZGVkX3BsYXllciJdLGQkUz1bInNoYXJlL2dldF9zaGFyZV9wYW5lbCJdLHpudD1bInNoYXJlL2dldF93ZWJfcGxheWVyX3NoYXJlX3BhbmVsIl0sbE9NPVsiZmVlZGJhY2siXSxUeXc9WyJub3RpZmljYXRpb24vbW9kaWZ5X2NoYW5uZWxfcHJlZmVyZW5jZSJdLHF5aj1bInBsYXllciJdLGpkeD1bImJyb3dzZS9lZGl0X3BsYXlsaXN0Il0sc3YyPVsicmVlbC9yZWVsX2l0ZW1fd2F0Y2giXSxONGg9WyJuYXZpZ2F0aW9uL3Jlc29sdmVfdXJsIl0sQ0diPVsiYWNjb3VudC9zZXRfc2V0dGluZyJdLEM4Yj1bInN1YnNjcmlwdGlvbi9zdWJzY3JpYmUiXSxCeWk9WyJzdWJzY3JpcHRpb24vdW5zdWJzY3JpYmUiXSwkMUM9WyJuZXh0IiwidW5wbHVnZ2VkL3dhdGNoX25leHQiXTt2YXIgT1A9e0JwOmcud0QoZnVuY3Rpb24oKXt0cnl7bGV0IFc9bmV3IFdTO3ZhciBuPVcuaXNBdmFpbGFibGUoKT9XOm51bGx9Y2F0Y2goVyl7cmV0dXJuIG51bGx9cmV0dXJuIG4/bmV3IFZLKG4pOm51bGx9KSwKcWI6Zy53RChmdW5jdGlvbigpe3ZhciBuPW5ldyBEUTtyZXR1cm4gbi5pc0F2YWlsYWJsZSgpP25ldyBWSyhuKTpudWxsfSl9O2cuSVY9d2luZG93Lnl0JiZ3aW5kb3cueXQubXNnc198fHdpbmRvdy55dGNmZyYmd2luZG93Lnl0Y2ZnLm1zZ3N8fHt9O2cuR2IoInl0Lm1zZ3NfIixnLklWKTt2YXIgV2I9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5KPXZvaWQgMDt0aGlzLk49ITE7bi5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmVpbnN0YWxscHJvbXB0IixXPT57Vy5wcmV2ZW50RGVmYXVsdCgpO3RoaXMuSj1XfSk7Cm4uYWRkRXZlbnRMaXN0ZW5lcigiYXBwaW5zdGFsbGVkIiwoKT0+e3RoaXMuTj0hMH0se29uY2U6ITB9KX19O3ZhciBFUD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuc0I9ITB9YWoobixXKXtuPXt9O3ZhciBEPVtdOyJVU0VSX1NFU1NJT05fSUQiaW4gSUUmJkQucHVzaCh7a2V5OiJ1Iix2YWx1ZTpnLkFyKCJVU0VSX1NFU1NJT05fSUQiKX0pO2lmKEQ9Qk8oRCkpbi5BdXRob3JpemF0aW9uPUQsRD1XPVc/LnNlc3Npb25JbmRleCxEPT09dm9pZCAwJiYoRD1OdW1iZXIoZy5BcigiU0VTU0lPTl9JTkRFWCIsMCkpLEQ9aXNOYU4oRCk/MDpEKSxnLmwoInZvaWNlX3NlYXJjaF9hdXRoX2hlYWRlcl9yZW1vdmFsIil8fChuWyJYLUdvb2ctQXV0aFVzZXIiXT1ELnRvU3RyaW5nKCkpLCJJTk5FUlRVQkVfSE9TVF9PVkVSUklERSJpbiBJRXx8KG5bIlgtT3JpZ2luIl09d2luZG93LmxvY2F0aW9uLm9yaWdpbiksVz09PXZvaWQgMCYmIkRFTEVHQVRFRF9TRVNTSU9OX0lEImluIElFJiYoblsiWC1Hb29nLVBhZ2VJZCJdPWcuQXIoIkRFTEVHQVRFRF9TRVNTSU9OX0lEIikpO3JldHVybiBufX07dmFyIHU5PXtpZGVudGl0eVR5cGU6IlVOQVVUSEVOVElDQVRFRF9JREVOVElUWV9UWVBFX1VOS05PV04ifTt2YXIgbE89Zy5ycigieXRnbG9iYWwucHJlZnNVc2VyUHJlZnNQcmVmc18iKXx8e307Zy5HYigieXRnbG9iYWwucHJlZnNVc2VyUHJlZnNQcmVmc18iLGxPKTsKdmFyIHgzYj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuTj1nLkFyKCJBTFRfUFJFRl9DT09LSUVfTkFNRSIsIlBSRUYiKTt0aGlzLko9Zy5BcigiQUxUX1BSRUZfQ09PS0lFX0RPTUFJTiIsInlvdXR1YmUuY29tIik7dmFyIG49Zy5TZCh0aGlzLk4pO24mJnRoaXMucGFyc2Uobil9Z2V0KG4sVyl7ejEobik7ZEoobik7bj1sT1tuXSE9PXZvaWQgMD9sT1tuXS50b1N0cmluZygpOm51bGw7cmV0dXJuIG4hPW51bGw/bjpXP1c6IiJ9c2V0KG4sVyl7ejEobik7ZEoobik7aWYoVz09bnVsbCl0aHJvdyBFcnJvcigiRXhwZWN0ZWROb3ROdWxsIik7bE9bbl09Vy50b1N0cmluZygpfVFRKG4pe3JldHVybiEhKChUMShgZiR7TWF0aC5mbG9vcihuLzMxKSsxfWApfHwwKSYxPDxuJTMxKX1yZW1vdmUobil7ejEobik7ZEoobik7ZGVsZXRlIGxPW25dfXNhdmUoKXtJSyh0aGlzLk4sdGhpcy5kdW1wKCksNjMwNzJFMyx0aGlzLkosITApfWNsZWFyKCl7Zy50SyhsTyl9ZHVtcCgpe3ZhciBuPVtdO2ZvcihsZXQgVyBpbiBsTylsTy5oYXNPd25Qcm9wZXJ0eShXKSYmCm4ucHVzaChgJHtXfT1gK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcobE9bV10pKSk7cmV0dXJuIG4uam9pbigiJiIpfXBhcnNlKG4pe249ZGVjb2RlVVJJQ29tcG9uZW50KG4pLnNwbGl0KCImIik7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspe3ZhciBXPW5bRF0uc3BsaXQoIj0iKTtsZXQgYj1XWzBdOyhXPVdbMV0pJiYobE9bYl09Vy50b1N0cmluZygpKX19fSx1Tzt2YXIgQ3k9e2JsdWV0b290aDoiQ09OTl9ESVNDTyIsY2VsbHVsYXI6IkNPTk5fQ0VMTFVMQVJfVU5LTk9XTiIsZXRoZXJuZXQ6IkNPTk5fV0lGSSIsbm9uZToiQ09OTl9OT05FIix3aWZpOiJDT05OX1dJRkkiLHdpbWF4OiJDT05OX0NFTExVTEFSXzRHIixvdGhlcjoiQ09OTl9VTktOT1dOIix1bmtub3duOiJDT05OX1VOS05PV04iLCJzbG93LTJnIjoiQ09OTl9DRUxMVUxBUl8yRyIsIjJnIjoiQ09OTl9DRUxMVUxBUl8yRyIsIjNnIjoiQ09OTl9DRUxMVUxBUl8zRyIsIjRnIjoiQ09OTl9DRUxMVUxBUl80RyJ9LHpxdz17Q09OTl9ERUZBVUxUOjAsQ09OTl9VTktOT1dOOjEsQ09OTl9OT05FOjIsQ09OTl9XSUZJOjMsQ09OTl9DRUxMVUxBUl8yRzo0LENPTk5fQ0VMTFVMQVJfM0c6NSxDT05OX0NFTExVTEFSXzRHOjYsQ09OTl9DRUxMVUxBUl9VTktOT1dOOjcsQ09OTl9ESVNDTzo4LENPTk5fQ0VMTFVMQVJfNUc6OSxDT05OX1dJRklfTUVURVJFRDoxMCxDT05OX0NFTExVTEFSXzVHX1NBOjExLApDT05OX0NFTExVTEFSXzVHX05TQToxMixDT05OX1dJUkVEOjMwLENPTk5fSU5WQUxJRDozMX0sbEJyPXtFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFX1VOS05PV046MCxFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFX09GRkxJTkU6MSxFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFX1NMT1dfMkc6MixFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFXzJHOjMsRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV8zRzo0LEVGRkVDVElWRV9DT05ORUNUSU9OX1RZUEVfNEc6NX0sRms9eyJzbG93LTJnIjoiRUZGRUNUSVZFX0NPTk5FQ1RJT05fVFlQRV9TTE9XXzJHIiwiMmciOiJFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFXzJHIiwiM2ciOiJFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFXzNHIiwiNGciOiJFRkZFQ1RJVkVfQ09OTkVDVElPTl9UWVBFXzRHIn07Zy5ReD1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKG4sLi4uVyl7c3VwZXIobik7dGhpcy5hcmdzPVsuLi5XXTtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxuZXcudGFyZ2V0LnByb3RvdHlwZSl9fTt2YXIgRnVNPWNsYXNze0xTKG4sVyl7cmV0dXJuIGcuVngoMCxuLDEsVyl9fTtnLnJyKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UudGltZXJJZE1hcF8iKTt2YXIgV049Y2xhc3MgZXh0ZW5kcyBGdU17c08obil7aWYobj09PXZvaWQgMHx8IU51bWJlci5pc05hTihOdW1iZXIobikpKXt2YXIgVz1nLnJyKCJ5dC5zY2hlZHVsZXIuaW5zdGFuY2UuY2FuY2VsSm9iIik7Vz9XKG4pOndpbmRvdy5jbGVhclRpbWVvdXQobil9fXN0YXJ0KCl7dmFyIG49Zy5ycigieXQuc2NoZWR1bGVyLmluc3RhbmNlLnN0YXJ0Iik7biYmbigpfXBhdXNlKCl7dmFyIG49Zy5ycigieXQuc2NoZWR1bGVyLmluc3RhbmNlLnBhdXNlIik7biYmbigpfX0sdGE9Zy5EeSgpO3ZhciB0ST1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49KG49Zy52UyhuKSk/bmV3IFFLKG4pOm51bGw7dGhpcy5XPWRvY3VtZW50LmRvbWFpbnx8d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lfUooKXtyZXR1cm4hIXRoaXMuTn1zZXQobixXLEQsYil7RD1EfHwzMTEwNEUzO3RoaXMucmVtb3ZlKG4pO2lmKHRoaXMuSigpKXRyeXt0aGlzLk4uc2V0KG4sVyxEYXRlLm5vdygpK0QqMUUzKTtyZXR1cm59Y2F0Y2goayl7fXZhciB2PSIiO2lmKGIpdHJ5e3Y9ZXNjYXBlKChuZXcgbGUpLmJZKFcpKX1jYXRjaChrKXtyZXR1cm59ZWxzZSB2PWVzY2FwZShXKTtJSyhuLHYsRCx0aGlzLlcpfWdldChuLFcpe3ZhciBEPXZvaWQgMCxiPSF0aGlzLkooKTtpZighYil0cnl7RD10aGlzLk4uZ2V0KG4pfWNhdGNoKHYpe2I9ITB9aWYoYiYmKEQ9Zy5TZChuKSkmJihEPXVuZXNjYXBlKEQpLFcpKXRyeXtEPUpTT04ucGFyc2UoRCl9Y2F0Y2godil7dGhpcy5yZW1vdmUobiksRD12b2lkIDB9cmV0dXJuIER9cmVtb3ZlKG4pe3RoaXMuSigpJiYKdGhpcy5OLnJlbW92ZShuKTtBeShuLCIvIix0aGlzLlcpfX07dmFyIHZOPSgoKT0+e3ZhciBuO3JldHVybigpPT57bnx8KG49bmV3IHRJKCJ5dGlkYiIpKTtyZXR1cm4gbn19KSgpO3ZhciB4dT1bXSxoYz0hMTt2YXIgd1JNPXtBVVRIX0lOVkFMSUQ6Ik5vIHVzZXIgaWRlbnRpZmllciBzcGVjaWZpZWQuIixFWFBMSUNJVF9BQk9SVDoiVHJhbnNhY3Rpb24gd2FzIGV4cGxpY2l0bHkgYWJvcnRlZC4iLElEQl9OT1RfU1VQUE9SVEVEOiJJbmRleGVkREIgaXMgbm90IHN1cHBvcnRlZC4iLE1JU1NJTkdfSU5ERVg6IkluZGV4IG5vdCBjcmVhdGVkLiIsTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiJPYmplY3Qgc3RvcmVzIG5vdCBjcmVhdGVkLiIsREJfREVMRVRFRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6IkRhdGFiYXNlIGlzIGRlbGV0ZWQgYmVjYXVzZSBleHBlY3RlZCBvYmplY3Qgc3RvcmVzIHdlcmUgbm90IGNyZWF0ZWQuIixEQl9SRU9QRU5FRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6IkRhdGFiYXNlIGlzIHJlb3BlbmVkIGJlY2F1c2UgZXhwZWN0ZWQgb2JqZWN0IHN0b3JlcyB3ZXJlIG5vdCBjcmVhdGVkLiIsVU5LTk9XTl9BQk9SVDoiVHJhbnNhY3Rpb24gd2FzIGFib3J0ZWQgZm9yIHVua25vd24gcmVhc29ucy4iLApRVU9UQV9FWENFRURFRDoiVGhlIGN1cnJlbnQgdHJhbnNhY3Rpb24gZXhjZWVkZWQgaXRzIHF1b3RhIGxpbWl0YXRpb25zLiIsUVVPVEFfTUFZQkVfRVhDRUVERUQ6IlRoZSBjdXJyZW50IHRyYW5zYWN0aW9uIG1heSBoYXZlIGZhaWxlZCBiZWNhdXNlIG9mIGV4Y2VlZGluZyBxdW90YSBsaW1pdGF0aW9ucy4iLEVYRUNVVEVfVFJBTlNBQ1RJT05fT05fQ0xPU0VEX0RCOiJDYW4ndCBzdGFydCBhIHRyYW5zYWN0aW9uIG9uIGEgY2xvc2VkIGRhdGFiYXNlIixJTkNPTVBBVElCTEVfREJfVkVSU0lPTjoiVGhlIGJpbmFyeSBpcyBpbmNvbXBhdGlibGUgd2l0aCB0aGUgZGF0YWJhc2UgdmVyc2lvbiJ9LE1HUz17QVVUSF9JTlZBTElEOiJFUlJPUiIsRVhFQ1VURV9UUkFOU0FDVElPTl9PTl9DTE9TRURfREI6IldBUk5JTkciLEVYUExJQ0lUX0FCT1JUOiJJR05PUkVEIixJREJfTk9UX1NVUFBPUlRFRDoiRVJST1IiLE1JU1NJTkdfSU5ERVg6IldBUk5JTkciLE1JU1NJTkdfT0JKRUNUX1NUT1JFUzoiRVJST1IiLApEQl9ERUxFVEVEX0JZX01JU1NJTkdfT0JKRUNUX1NUT1JFUzoiV0FSTklORyIsREJfUkVPUEVORURfQllfTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiJXQVJOSU5HIixRVU9UQV9FWENFRURFRDoiV0FSTklORyIsUVVPVEFfTUFZQkVfRVhDRUVERUQ6IldBUk5JTkciLFVOS05PV05fQUJPUlQ6IldBUk5JTkciLElOQ09NUEFUSUJMRV9EQl9WRVJTSU9OOiJXQVJOSU5HIn0sUm5pPXtBVVRIX0lOVkFMSUQ6ITEsRVhFQ1VURV9UUkFOU0FDVElPTl9PTl9DTE9TRURfREI6ITEsRVhQTElDSVRfQUJPUlQ6ITEsSURCX05PVF9TVVBQT1JURUQ6ITEsTUlTU0lOR19JTkRFWDohMSxNSVNTSU5HX09CSkVDVF9TVE9SRVM6ITEsREJfREVMRVRFRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVM6ITEsREJfUkVPUEVORURfQllfTUlTU0lOR19PQkpFQ1RfU1RPUkVTOiExLFFVT1RBX0VYQ0VFREVEOiExLFFVT1RBX01BWUJFX0VYQ0VFREVEOiEwLFVOS05PV05fQUJPUlQ6ITAsSU5DT01QQVRJQkxFX0RCX1ZFUlNJT046ITF9LApxTD1jbGFzcyBleHRlbmRzIGcuUXh7Y29uc3RydWN0b3IobixXPXt9LEQ9d1JNW25dLGI9TUdTW25dLHY9Um5pW25dKXtzdXBlcihELHtuYW1lOiJZdElkYktub3duRXJyb3IiLGlzU3c6c2VsZi5kb2N1bWVudD09PXZvaWQgMCxpc0lmcmFtZTpzZWxmIT09c2VsZi50b3AsdHlwZTpuLC4uLld9KTt0aGlzLnR5cGU9bjt0aGlzLm1lc3NhZ2U9RDt0aGlzLmxldmVsPWI7dGhpcy5OPXY7T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMscUwucHJvdG90eXBlKX19LFFkUz1jbGFzcyBleHRlbmRzIHFMe2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIoIk1JU1NJTkdfT0JKRUNUX1NUT1JFUyIse2V4cGVjdGVkT2JqZWN0U3RvcmVzOlcsZm91bmRPYmplY3RTdG9yZXM6bn0sd1JNLk1JU1NJTkdfT0JKRUNUX1NUT1JFUyk7T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsUWRTLnByb3RvdHlwZSl9fSx0Yz1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIoKTt0aGlzLmluZGV4PQpuO3RoaXMub2JqZWN0U3RvcmU9VztPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyx0Yy5wcm90b3R5cGUpfX0sTDBpPVsiVGhlIGRhdGFiYXNlIGNvbm5lY3Rpb24gaXMgY2xvc2luZyIsIkNhbid0IHN0YXJ0IGEgdHJhbnNhY3Rpb24gb24gYSBjbG9zZWQgZGF0YWJhc2UiLCJBIG11dGF0aW9uIG9wZXJhdGlvbiB3YXMgYXR0ZW1wdGVkIG9uIGEgZGF0YWJhc2UgdGhhdCBkaWQgbm90IGFsbG93IG11dGF0aW9ucyJdO3ZhciBmRj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn19LHNSPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuc3RhdGU9e3N0YXR1czoiUEVORElORyJ9O3RoaXMuTj1bXTt0aGlzLko9W107bj1uLk47dmFyIFc9Yj0+e2lmKHRoaXMuc3RhdGUuc3RhdHVzPT09IlBFTkRJTkciKXt0aGlzLnN0YXRlPXtzdGF0dXM6IkZVTEZJTExFRCIsdmFsdWU6Yn07Zm9yKGxldCB2IG9mIHRoaXMuTil2KCl9fSxEPWI9PntpZih0aGlzLnN0YXRlLnN0YXR1cz09PSJQRU5ESU5HIil7dGhpcy5zdGF0ZT17c3RhdHVzOiJSRUpFQ1RFRCIsCnJlYXNvbjpifTtmb3IobGV0IHYgb2YgdGhpcy5KKXYoKX19Owp0cnl7bihXLEQpfWNhdGNoKGIpe0QoYil9fXN0YXRpYyBhbGwobil7cmV0dXJuIG5ldyBzUihuZXcgZkYoKFcsRCk9Pnt2YXIgYj1bXSx2PW4ubGVuZ3RoO3Y9PT0wJiZXKGIpO2ZvcihsZXQgaz0wO2s8bi5sZW5ndGg7KytrKXNSLnJlc29sdmUobltrXSkudGhlbihoPT57YltrXT1oO3YtLTt2PT09MCYmVyhiKX0pLmNhdGNoKGg9PntEKGgpfSl9KSl9c3RhdGljIHJlc29sdmUobil7cmV0dXJuIG5ldyBzUihuZXcgZkYoKFcsRCk9PntuIGluc3RhbmNlb2Ygc1I/bi50aGVuKFcsRCk6VyhuKX0pKX1zdGF0aWMgcmVqZWN0KG4pe3JldHVybiBuZXcgc1IobmV3IGZGKChXLEQpPT57RChuKX0pKX10aGVuKG4sVyl7dmFyIEQ9bj8/Z1VyLGI9Vz8/ZXExOwpyZXR1cm4gbmV3IHNSKG5ldyBmRigodixrKT0+e3RoaXMuc3RhdGUuc3RhdHVzPT09IlBFTkRJTkciPyh0aGlzLk4ucHVzaCgoKT0+e3BGKHRoaXMsdGhpcyxELHYsayl9KSx0aGlzLkoucHVzaCgoKT0+e1l1KHRoaXMsdGhpcyxiLHYsayl9KSk6dGhpcy5zdGF0ZS5zdGF0dXM9PT0iRlVMRklMTEVEIj9wRih0aGlzLHRoaXMsRCx2LGspOnRoaXMuc3RhdGUuc3RhdHVzPT09IlJFSkVDVEVEIiYmWXUodGhpcyx0aGlzLGIsdixrKX0pKX1jYXRjaChuKXtyZXR1cm4gdGhpcy50aGVuKHZvaWQgMCxuKX19O3ZhciBxXzI9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLnJlcXVlc3Q9bjt0aGlzLmN1cnNvcj1XfX07dmFyIFlfcj1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuTj1uO3RoaXMub3B0aW9ucz1XO3RoaXMudHJhbnNhY3Rpb25Db3VudD0wO3RoaXMuVz1NYXRoLnJvdW5kKCgwLGcuUikoKSk7dGhpcy5KPSExfWFkZChuLFcsRCl7cmV0dXJuIE9SKHRoaXMsW25dLHttb2RlOiJyZWFkd3JpdGUiLEdROiEwLGNvbW1pdDpBYygpfSxiPT5iLm9iamVjdFN0b3JlKG4pLmFkZChXLEQpKX1jbGVhcihuKXtyZXR1cm4gT1IodGhpcyxbbl0se21vZGU6InJlYWR3cml0ZSIsCkdROiEwfSxXPT5XLm9iamVjdFN0b3JlKG4pLmNsZWFyKCkpfWNsb3NlKCl7dGhpcy5OLmNsb3NlKCk7CnRoaXMub3B0aW9ucz8uY2xvc2VkJiZ0aGlzLm9wdGlvbnMuY2xvc2VkKCl9Y291bnQobixXKXtyZXR1cm4gT1IodGhpcyxbbl0se21vZGU6InJlYWRvbmx5IixHUTohMCxjb21taXQ6QWMoKX0sRD0+RC5vYmplY3RTdG9yZShuKS5jb3VudChXKSl9ZGVsZXRlKG4sVyl7cmV0dXJuIE9SKHRoaXMsW25dLHttb2RlOiJyZWFkd3JpdGUiLApHUTohMCxjb21taXQ6QWMoKSYmIShXIGluc3RhbmNlb2YgSURCS2V5UmFuZ2UpfSxEPT5ELm9iamVjdFN0b3JlKG4pLmRlbGV0ZShXKSl9Z2V0KG4sVyl7cmV0dXJuIE9SKHRoaXMsW25dLHttb2RlOiJyZWFkb25seSIsCkdROiEwLGNvbW1pdDpBYygpfSxEPT5ELm9iamVjdFN0b3JlKG4pLmdldChXKSl9Z2V0QWxsKG4sVyxEKXtyZXR1cm4gT1IodGhpcyxbbl0se21vZGU6InJlYWRvbmx5IiwKR1E6ITB9LGI9PmIub2JqZWN0U3RvcmUobikuZ2V0QWxsKFcsRCkpfXB1dChuLFcsRCl7cmV0dXJuIE9SKHRoaXMsW25dLHttb2RlOiJyZWFkd3JpdGUiLApHUTohMCxjb21taXQ6QWMoKX0sYj0+Yi5vYmplY3RTdG9yZShuKS5wdXQoVyxEKSl9b2JqZWN0U3RvcmVOYW1lcygpe3JldHVybiBBcnJheS5mcm9tKHRoaXMuTi5vYmplY3RTdG9yZU5hbWVzKX1nZXROYW1lKCl7cmV0dXJuIHRoaXMuTi5uYW1lfX0sUE49Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59YWRkKG4sVyl7cmV0dXJuIEpjKHRoaXMuTi5hZGQobixXKSl9YXV0b0luY3JlbWVudCgpe3JldHVybiB0aGlzLk4uYXV0b0luY3JlbWVudH1jbGVhcigpe3JldHVybiBKYyh0aGlzLk4uY2xlYXIoKSkudGhlbigoKT0+e30pfWNvdW50KG4pe3JldHVybiBKYyh0aGlzLk4uY291bnQobikpfWRlbGV0ZShuKXtyZXR1cm4gbiBpbnN0YW5jZW9mIElEQktleVJhbmdlP3RYVSh0aGlzLG4pOkpjKHRoaXMuTi5kZWxldGUobikpfWdldChuKXtyZXR1cm4gSmModGhpcy5OLmdldChuKSl9Z2V0QWxsKG4sVyl7cmV0dXJuImdldEFsbCJpbiBJREJPYmplY3RTdG9yZS5wcm90b3R5cGU/SmModGhpcy5OLmdldEFsbChuLApXKSk6JDN4KHRoaXMsbixXKX1pbmRleChuKXt0cnl7cmV0dXJuIG5ldyBWR2godGhpcy5OLmluZGV4KG4pKX1jYXRjaChXKXtpZihXIGluc3RhbmNlb2YgRXJyb3ImJlcubmFtZT09PSJOb3RGb3VuZEVycm9yIil0aHJvdyBuZXcgdGMobix0aGlzLk4ubmFtZSk7CnRocm93IFc7fX1nZXROYW1lKCl7cmV0dXJuIHRoaXMuTi5uYW1lfWtleVBhdGgoKXtyZXR1cm4gdGhpcy5OLmtleVBhdGh9cHV0KG4sVyl7cmV0dXJuIEpjKHRoaXMuTi5wdXQobixXKSl9fSxtWD1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bjt0aGlzLko9bmV3IE1hcDt0aGlzLmFib3J0ZWQ9ITE7dGhpcy5kb25lPW5ldyBQcm9taXNlKChXLEQpPT57dGhpcy5OLmFkZEV2ZW50TGlzdGVuZXIoImNvbXBsZXRlIiwoKT0+e1coKX0pOwp0aGlzLk4uYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGI9PntiLmN1cnJlbnRUYXJnZXQ9PT1iLnRhcmdldCYmRCh0aGlzLk4uZXJyb3IpfSk7CnRoaXMuTi5hZGRFdmVudExpc3RlbmVyKCJhYm9ydCIsKCk9Pnt2YXIgYj10aGlzLk4uZXJyb3I7aWYoYilEKGIpO2Vsc2UgaWYoIXRoaXMuYWJvcnRlZCl7Yj1xTDt2YXIgdj10aGlzLk4ub2JqZWN0U3RvcmVOYW1lcztsZXQgaz1bXTtmb3IobGV0IGg9MDtoPHYubGVuZ3RoO2grKyl7bGV0IHg9di5pdGVtKGgpO2lmKHg9PT1udWxsKXRocm93IEVycm9yKCJJbnZhcmlhbnQ6IGl0ZW0gaW4gRE9NU3RyaW5nTGlzdCBpcyBudWxsIik7ay5wdXNoKHgpfWI9bmV3IGIoIlVOS05PV05fQUJPUlQiLHtvYmplY3RTdG9yZU5hbWVzOmsuam9pbigpLGRiTmFtZTp0aGlzLk4uZGIubmFtZSxtb2RlOnRoaXMuTi5tb2RlfSk7RChiKX19KX0pfWFib3J0KCl7dGhpcy5OLmFib3J0KCk7CnRoaXMuYWJvcnRlZD0hMDt0aHJvdyBuZXcgcUwoIkVYUExJQ0lUX0FCT1JUIik7fWNvbW1pdCgpe3RoaXMuYWJvcnRlZHx8dGhpcy5OLmNvbW1pdD8uKCl9b2JqZWN0U3RvcmUobil7bj10aGlzLk4ub2JqZWN0U3RvcmUobik7dmFyIFc9dGhpcy5KLmdldChuKTtXfHwoVz1uZXcgUE4obiksdGhpcy5KLnNldChuLFcpKTtyZXR1cm4gV319LFZHaD1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn1jb3VudChuKXtyZXR1cm4gSmModGhpcy5OLmNvdW50KG4pKX1kZWxldGUobil7cmV0dXJuIHpuKHRoaXMse3F1ZXJ5Om59LFc9PlcuZGVsZXRlKCkudGhlbigoKT0+b2coVykpKX1nZXQobil7cmV0dXJuIEpjKHRoaXMuTi5nZXQobikpfWdldEFsbChuLFcpe3JldHVybiJnZXRBbGwiaW4gSURCSW5kZXgucHJvdG90eXBlP0pjKHRoaXMuTi5nZXRBbGwobixXKSk6TlppKHRoaXMsbixXKX1rZXlQYXRoKCl7cmV0dXJuIHRoaXMuTi5rZXlQYXRofXVuaXF1ZSgpe3JldHVybiB0aGlzLk4udW5pcXVlfX0sCnA5eD1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMucmVxdWVzdD1uOwp0aGlzLmN1cnNvcj1XfWRlbGV0ZSgpe3JldHVybiBKYyh0aGlzLmN1cnNvci5kZWxldGUoKSkudGhlbigoKT0+e30pfWdldFZhbHVlKCl7cmV0dXJuIHRoaXMuY3Vyc29yLnZhbHVlfXVwZGF0ZShuKXtyZXR1cm4gSmModGhpcy5jdXJzb3IudXBkYXRlKG4pKX19O3ZhciBjTTE9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLm5hbWU9bjt0aGlzLm9wdGlvbnM9Vzt0aGlzLlc9ITA7dGhpcy5qPXRoaXMuWD0wfUoobixXLEQ9e30pe3JldHVybiBsUShuLFcsRCl9ZGVsZXRlKG49e30pe3JldHVybiBUbih0aGlzLm5hbWUsbil9b3Blbigpe2lmKCF0aGlzLlcpdGhyb3cgakYodGhpcyk7aWYodGhpcy5OKXJldHVybiB0aGlzLk47dmFyIG4sVz0oKT0+e3RoaXMuTj09PW4mJih0aGlzLk49dm9pZCAwKX0sRD17YmxvY2tpbmc6dj0+e3YuY2xvc2UoKX0sCmNsb3NlZDpXLEJ6OlcsdXBncmFkZTp0aGlzLm9wdGlvbnMudXBncmFkZX0sYj1hc3luYygpPT57dmFyIHY9RXJyb3IoKS5zdGFjaz8/IiI7dHJ5e2xldCB4PWF3YWl0IHRoaXMuSih0aGlzLm5hbWUsdGhpcy5vcHRpb25zLnZlcnNpb24sRCk7dmFyIGs9eCxoPXRoaXMub3B0aW9ucztsZXQgTD1bXTtmb3IobGV0IGUgb2YgT2JqZWN0LmtleXMoaC5LYykpe2xldCB7dng6RyxtUjpyPU51bWJlci5NQVhfVkFMVUV9PWguS2NbZV07IShrLk4udmVyc2lvbj49Ryl8fGsuTi52ZXJzaW9uPj1yfHxrLk4ub2JqZWN0U3RvcmVOYW1lcy5jb250YWlucyhlKXx8TC5wdXNoKGUpfWlmKEwubGVuZ3RoIT09MCl7bGV0IGU9T2JqZWN0LmtleXModGhpcy5vcHRpb25zLktjKSxHPXgub2JqZWN0U3RvcmVOYW1lcygpO2lmKHRoaXMuajx2MCgieXRpZGJfcmVvcGVuX2RiX3JldHJpZXMiLDApKXJldHVybiB0aGlzLmorKyx4LmNsb3NlKCksTEYobmV3IHFMKCJEQl9SRU9QRU5FRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVMiLAp7ZGJOYW1lOnRoaXMubmFtZSxleHBlY3RlZE9iamVjdFN0b3JlczplLGZvdW5kT2JqZWN0U3RvcmVzOkd9KSksYigpO2lmKHRoaXMuWDx2MCgieXRpZGJfcmVtYWtlX2RiX3JldHJpZXMiLDEpKXJldHVybiB0aGlzLlgrKyxhd2FpdCB0aGlzLmRlbGV0ZSgpLExGKG5ldyBxTCgiREJfREVMRVRFRF9CWV9NSVNTSU5HX09CSkVDVF9TVE9SRVMiLHtkYk5hbWU6dGhpcy5uYW1lLGV4cGVjdGVkT2JqZWN0U3RvcmVzOmUsZm91bmRPYmplY3RTdG9yZXM6R30pKSxiKCk7dGhyb3cgbmV3IFFkUyhHLGUpO31yZXR1cm4geH1jYXRjaCh4KXtpZih4IGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uP3gubmFtZT09PSJWZXJzaW9uRXJyb3IiOiJET01FcnJvciJpbiBzZWxmJiZ4IGluc3RhbmNlb2YgRE9NRXJyb3I/eC5uYW1lPT09IlZlcnNpb25FcnJvciI6eCBpbnN0YW5jZW9mIE9iamVjdCYmIm1lc3NhZ2UiaW4geCYmeC5tZXNzYWdlPT09IkFuIGF0dGVtcHQgd2FzIG1hZGUgdG8gb3BlbiBhIGRhdGFiYXNlIHVzaW5nIGEgbG93ZXIgdmVyc2lvbiB0aGFuIHRoZSBleGlzdGluZyB2ZXJzaW9uLiIpe3Y9CmF3YWl0IHRoaXMuSih0aGlzLm5hbWUsdm9pZCAwLHsuLi5ELHVwZ3JhZGU6dm9pZCAwfSk7az12Lk4udmVyc2lvbjtpZih0aGlzLm9wdGlvbnMudmVyc2lvbiE9PXZvaWQgMCYmaz50aGlzLm9wdGlvbnMudmVyc2lvbisxKXRocm93IHYuY2xvc2UoKSx0aGlzLlc9ITEsakYodGhpcyxrKTtyZXR1cm4gdn1XKCk7eCBpbnN0YW5jZW9mIEVycm9yJiYhZy5sKCJ5dGlkYl9hc3luY19zdGFja19raWxsc3dpdGNoIikmJih4LnN0YWNrPWAke3guc3RhY2t9XG4ke3Yuc3Vic3RyaW5nKHYuaW5kZXhPZigiXG4iKSsxKX1gKTt0aHJvdyAkdSh4LHRoaXMubmFtZSwiIix0aGlzLm9wdGlvbnMudmVyc2lvbj8/LTEpO319OwpyZXR1cm4gdGhpcy5OPW49YigpfX07dmFyIEJOPW5ldyBjTTEoIll0SWRiTWV0YSIse0tjOntkYXRhYmFzZXM6e3Z4OjF9fSx1cGdyYWRlKG4sVyl7VygxKSYmWnkobiwiZGF0YWJhc2VzIix7a2V5UGF0aDoiYWN0dWFsTmFtZSJ9KX19KTt2YXIgVmMsUWM9bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7fX0obmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7fX0pO25ldyBnLktWO3ZhciBPNXQ9Y2xhc3MgZXh0ZW5kcyBjTTF7Y29uc3RydWN0b3IobixXKXtzdXBlcihuLFcpO3RoaXMub3B0aW9ucz1XO2cwKG4pfUoobixXLEQ9e30pe3JldHVybih0aGlzLm9wdGlvbnMuc2hhcmVkP0FfcjpTX1opKG4sVyx7Li4uRH0pfWRlbGV0ZShuPXt9KXtyZXR1cm4odGhpcy5vcHRpb25zLnNoYXJlZD92ejptM3cpKHRoaXMubmFtZSxuKX19O3ZhciBaNUM9a08oInl0R2NmQ29uZmlnIix7S2M6e2NvbGRDb25maWdTdG9yZTp7dng6MX0saG90Q29uZmlnU3RvcmU6e3Z4OjF9fSxzaGFyZWQ6ITEsdXBncmFkZShuLFcpe1coMSkmJihFUihaeShuLCJob3RDb25maWdTdG9yZSIse2tleVBhdGg6ImtleSIsYXV0b0luY3JlbWVudDohMH0pLCJob3RUaW1lc3RhbXBJbmRleCIsInRpbWVzdGFtcCIpLEVSKFp5KG4sImNvbGRDb25maWdTdG9yZSIse2tleVBhdGg6ImtleSIsYXV0b0luY3JlbWVudDohMH0pLCJjb2xkVGltZXN0YW1wSW5kZXgiLCJ0aW1lc3RhbXAiKSl9LHZlcnNpb246MX0pO3ZhciBhTzE9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKCl7c3VwZXIoKTt0aGlzLko9W107dGhpcy5OPVtdO3ZhciBuPWcucnIoInl0LmdjZi5jb25maWcuaG90VXBkYXRlQ2FsbGJhY2tzIik7bj8odGhpcy5KPVsuLi5uXSx0aGlzLk49bik6KHRoaXMuTj1bXSxnLkdiKCJ5dC5nY2YuY29uZmlnLmhvdFVwZGF0ZUNhbGxiYWNrcyIsdGhpcy5OKSl9bUEoKXtmb3IobGV0IFcgb2YgdGhpcy5KKXt2YXIgbj10aGlzLk47bGV0IEQ9bi5pbmRleE9mKFcpO0Q+PTAmJm4uc3BsaWNlKEQsMSl9dGhpcy5KLmxlbmd0aD0wO3N1cGVyLm1BKCl9fTtnLlgzPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5WPSExO3RoaXMuaj10aGlzLlg9MDt0aGlzLks9bmV3IGFPMX1MWCgpe3JldHVybiAkTygpPz9nLkFyKCJSQVdfSE9UX0NPTkZJR19HUk9VUCIpfVcobil7dGhpcy5ob3RIYXNoRGF0YT1uO2cuR2IoInl0LmdjZi5jb25maWcuaG90SGFzaERhdGEiLHRoaXMuaG90SGFzaERhdGF8fG51bGwpfX07dmFyIG5naD10eXBlb2YgVGV4dEVuY29kZXIhPT0idW5kZWZpbmVkIj9uZXcgVGV4dEVuY29kZXI6bnVsbCxRZD1uZ2g/bj0+bmdoLmVuY29kZShuKTpuPT57bj1MMChuKTsKdmFyIFc9bmV3IFVpbnQ4QXJyYXkobi5sZW5ndGgpO2ZvcihsZXQgRD0wO0Q8Vy5sZW5ndGg7RCsrKVdbRF09bltEXTtyZXR1cm4gV307dmFyIGhlPXtuZXh0OiJ3bl9zIixicm93c2U6ImJyX3MiLHNlYXJjaDoic3JfcyIscmVlbDoicl93cnMiLHBsYXllcjoicHNfcyJ9LFVITT17bmV4dDoid25fciIsYnJvd3NlOiJicl9yIixzZWFyY2g6InNyX3IiLHJlZWw6InJfd3JyIixwbGF5ZXI6InBzX3IifTtvNy5wcm90b3R5cGUuYlk9ZnVuY3Rpb24oKXtyZXR1cm57dmVyc2lvbjp0aGlzLnZlcnNpb24sYXJnczp0aGlzLmFyZ3N9fTtkMy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50b3BpY307dmFyIFdIUz1nLnJyKCJ5dFB1YnN1YjJQdWJzdWIySW5zdGFuY2UiKXx8bmV3IEJLO0JLLnByb3RvdHlwZS5zdWJzY3JpYmU9QksucHJvdG90eXBlLnN1YnNjcmliZTtCSy5wcm90b3R5cGUudW5zdWJzY3JpYmVCeUtleT1CSy5wcm90b3R5cGUuaks7QksucHJvdG90eXBlLnB1Ymxpc2g9QksucHJvdG90eXBlLldKO0JLLnByb3RvdHlwZS5jbGVhcj1CSy5wcm90b3R5cGUuY2xlYXI7Zy5HYigieXRQdWJzdWIyUHVic3ViMkluc3RhbmNlIixXSFMpO3ZhciBqOT1nLnJyKCJ5dFB1YnN1YjJQdWJzdWIyU3Vic2NyaWJlZEtleXMiKXx8e307Zy5HYigieXRQdWJzdWIyUHVic3ViMlN1YnNjcmliZWRLZXlzIixqOSk7dmFyIEJ6PWcucnIoInl0UHVic3ViMlB1YnN1YjJUb3BpY1RvS2V5cyIpfHx7fTtnLkdiKCJ5dFB1YnN1YjJQdWJzdWIyVG9waWNUb0tleXMiLEJ6KTt2YXIgQ1A9Zy5ycigieXRQdWJzdWIyUHVic3ViMklzQXN5bmMiKXx8e307CmcuR2IoInl0UHVic3ViMlB1YnN1YjJJc0FzeW5jIixDUCk7Zy5HYigieXRQdWJzdWIyUHVic3ViMlNraXBTdWJLZXkiLG51bGwpO3ZhciBNQj12MCgibWF4X2JvZHlfc2l6ZV90b19jb21wcmVzcyIsNUU1KSxSNz12MCgibWluX2JvZHlfc2l6ZV90b19jb21wcmVzcyIsNTAwKSx3OWo9MDt2YXIgRHoxPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuV3Y9dGhpcy5OPSExO3RoaXMucG90ZW50aWFsRXNmRXJyb3JDb3VudGVyPXRoaXMuSj0wO3RoaXMuaGFuZGxlRXJyb3I9KCk9Pnt9Owp0aGlzLkYyPSgpPT57fTsKdGhpcy5ub3c9RGF0ZS5ub3c7dGhpcy5OaD0hMTt0aGlzLnV4PW4udXg/PzEwMDt0aGlzLkExPW4uQTE/PzE7dGhpcy5HeT1uLkd5Pz8yNTkyRTY7dGhpcy5aND1uLlo0Pz8xMkU0O3RoaXMuSVA9bi5JUD8/NUUzO3RoaXMuWVc9bi5ZVz8/dm9pZCAwO3RoaXMuQ3I9ISFuLkNyO3RoaXMuS3I9bi5Lcj8/LjE7dGhpcy5IRj1uLkhGPz8xMDtuLmhhbmRsZUVycm9yJiYodGhpcy5oYW5kbGVFcnJvcj1uLmhhbmRsZUVycm9yKTtuLkYyJiYodGhpcy5GMj1uLkYyKTtuLk5oJiYodGhpcy5OaD1uLk5oKTtuLld2JiYodGhpcy5Xdj1uLld2KTt0aGlzLkVxPW4uRXE7dGhpcy5BJD1uLkEkO3RoaXMuZ0U9bi5nRTt0aGlzLnlHPW4ueUc7dGhpcy5MbT1uLkxtO3RoaXMudVo9bi51Wjt0aGlzLk5BPW4uTkE7Y3oodGhpcykmJighdGhpcy5FcXx8dGhpcy5FcSgibmV0d29ya2xlc3NfbG9nZ2luZyIpKSYmbm0odGhpcyl9d3JpdGVUaGVuU2VuZChuLFc9e30pe2lmKGN6KHRoaXMpJiZ0aGlzLk4pe2xldCBEPQp7dXJsOm4sb3B0aW9uczpXLHRpbWVzdGFtcDp0aGlzLm5vdygpLHN0YXR1czoiTkVXIixzZW5kQ291bnQ6MH07dGhpcy5nRS5zZXQoRCx0aGlzLllXKS50aGVuKGI9PntELmlkPWI7dGhpcy55Ry5XRygpJiZENSh0aGlzLEQpfSkuY2F0Y2goYj0+e0Q1KHRoaXMsRCk7CmJNKHRoaXMsYil9KX1lbHNlIHRoaXMuTG0obixXKX1zZW5kVGhlbldyaXRlKG4sVz17fSxEKXtpZihjeih0aGlzKSYmdGhpcy5OKXtsZXQgYj17dXJsOm4sCm9wdGlvbnM6Vyx0aW1lc3RhbXA6dGhpcy5ub3coKSxzdGF0dXM6Ik5FVyIsc2VuZENvdW50OjB9O3RoaXMuRXEmJnRoaXMuRXEoIm53bF9za2lwX3JldHJ5IikmJihiLnNraXBSZXRyeT1EKTtpZih0aGlzLnlHLldHKCl8fHRoaXMuRXEmJnRoaXMuRXEoIm53bF9hZ2dyZXNzaXZlX3NlbmRfdGhlbl93cml0ZSIpJiYhYi5za2lwUmV0cnkpe2lmKCFiLnNraXBSZXRyeSl7bGV0IHY9Vy5vbkVycm9yP1cub25FcnJvcjooKT0+e307Clcub25FcnJvcj1hc3luYyhrLGgpPT57YXdhaXQgdGhpcy5nRS5zZXQoYix0aGlzLllXKS5jYXRjaCh4PT57Yk0odGhpcyx4KX0pOwp2KGssaCl9fXRoaXMuTG0obixXLGIuc2tpcFJldHJ5KX1lbHNlIHRoaXMuZ0Uuc2V0KGIsdGhpcy5ZVykuY2F0Y2godj0+e3RoaXMuTG0obixXLGIuc2tpcFJldHJ5KTsKYk0odGhpcyx2KX0pfWVsc2UgRD10aGlzLkVxJiZ0aGlzLkVxKCJud2xfc2tpcF9yZXRyeSIpJiZELHRoaXMuTG0obixXLEQpfXNlbmRBbmRXcml0ZShuLFc9e30pe2lmKGN6KHRoaXMpJiZ0aGlzLk4pe2xldCBEPXt1cmw6biwKb3B0aW9uczpXLHRpbWVzdGFtcDp0aGlzLm5vdygpLHN0YXR1czoiTkVXIixzZW5kQ291bnQ6MH0sYj0hMSx2PVcub25TdWNjZXNzP1cub25TdWNjZXNzOigpPT57fTsKRC5vcHRpb25zLm9uU3VjY2Vzcz0oayxoKT0+e0QuaWQhPT12b2lkIDA/dGhpcy5nRS5UTShELmlkLHRoaXMuWVcpOmI9ITA7dGhpcy55Ry5sYyYmdGhpcy5FcSYmdGhpcy5FcSgidnNzX25ldHdvcmtfaGludCIpJiZ0aGlzLnlHLmxjKCEwKTt2KGssaCl9Owp0aGlzLkxtKEQudXJsLEQub3B0aW9ucyx2b2lkIDAsITApO3RoaXMuZ0Uuc2V0KEQsdGhpcy5ZVykudGhlbihrPT57RC5pZD1rO2ImJnRoaXMuZ0UuVE0oRC5pZCx0aGlzLllXKX0pLmNhdGNoKGs9PntiTSh0aGlzLGspfSl9ZWxzZSB0aGlzLkxtKG4sVyx2b2lkIDAsITApfVcoKXtpZighY3oodGhpcykpdGhyb3cgRXJyb3IoIkluZGV4ZWREQiBpcyBub3Qgc3VwcG9ydGVkOiB0aHJvdHRsZVNlbmQiKTsKdGhpcy5KfHwodGhpcy5KPXRoaXMuQSQuTFMoYXN5bmMoKT0+e3ZhciBuPWF3YWl0IHRoaXMuZ0UuaTQoIk5FVyIsdGhpcy5ZVyk7bj8oYXdhaXQgRDUodGhpcyxuKSx0aGlzLkomJih0aGlzLko9MCx0aGlzLlcoKSkpOnRoaXMuWCgpfSx0aGlzLnV4KSl9WCgpe3RoaXMuQSQuc08odGhpcy5KKTsKdGhpcy5KPTB9fTt2YXIgdlU7dmFyIHk0PXthY2NvdW50U3RhdGVDaGFuZ2VTaWduZWRJbjoyMyxhY2NvdW50U3RhdGVDaGFuZ2VTaWduZWRPdXQ6MjQsZGVsYXllZEV2ZW50TWV0cmljQ2FwdHVyZWQ6MTEsbGF0ZW5jeUFjdGlvbkJhc2VsaW5lZDo2LGxhdGVuY3lBY3Rpb25JbmZvOjcsbGF0ZW5jeUFjdGlvblRpY2tlZDo1LG9mZmxpbmVUcmFuc2ZlclN0YXR1c0NoYW5nZWQ6MixvZmZsaW5lSW1hZ2VEb3dubG9hZDozMzUscGxheWJhY2tTdGFydFN0YXRlQ2hhbmdlZDo5LHN5c3RlbUhlYWx0aENhcHR1cmVkOjMsbWFuZ29PbmJvYXJkaW5nQ29tcGxldGVkOjEwLG1hbmdvUHVzaE5vdGlmaWNhdGlvblJlY2VpdmVkOjIzMCxtYW5nb1VuZm9ya0RiTWlncmF0aW9uRXJyb3I6MTIxLG1hbmdvVW5mb3JrRGJNaWdyYXRpb25TdW1tYXJ5OjEyMixtYW5nb1VuZm9ya0RiTWlncmF0aW9uUHJldW5mb3JrRGJWZXJzaW9uTnVtYmVyOjEzMyxtYW5nb1VuZm9ya0RiTWlncmF0aW9uUGhvbmVNZXRhZGF0YToxMzQsbWFuZ29VbmZvcmtEYk1pZ3JhdGlvblBob25lU3RvcmFnZToxMzUsCm1hbmdvVW5mb3JrRGJNaWdyYXRpb25TdGVwOjE0MixtYW5nb0FzeW5jQXBpTWlncmF0aW9uRXZlbnQ6MjIzLG1hbmdvRG93bmxvYWRWaWRlb1Jlc3VsdDoyMjQsbWFuZ29Ib21lcGFnZVZpZGVvQ291bnQ6Mjc5LG1hbmdvSG9tZVYzU3RhdGU6Mjk1LG1hbmdvSW1hZ2VDbGllbnRDYWNoZUhpdEV2ZW50OjI3MyxzZENhcmRTdGF0dXNDaGFuZ2VkOjk4LGZyYW1lc0Ryb3BwZWQ6MTIsdGh1bWJuYWlsSG92ZXJlZDoxMyxkZXZpY2VSZXRlbnRpb25JbmZvQ2FwdHVyZWQ6MTQsdGh1bWJuYWlsTG9hZGVkOjE1LGJhY2tUb0FwcEV2ZW50OjMxOCxzdHJlYW1pbmdTdGF0c0NhcHR1cmVkOjE3LG9mZmxpbmVWaWRlb1NoYXJlZDoxOSxhcHBDcmFzaGVkOjIwLHlvdVRoZXJlOjIxLG9mZmxpbmVTdGF0ZVNuYXBzaG90OjIyLG1keFNlc3Npb25TdGFydGVkOjI1LG1keFNlc3Npb25Db25uZWN0ZWQ6MjYsbWR4U2Vzc2lvbkRpc2Nvbm5lY3RlZDoyNyxiZWRyb2NrUmVzb3VyY2VDb25zdW1wdGlvblNuYXBzaG90OjI4LApuZXh0R2VuV2F0Y2hXYXRjaFN3aXBlZDoyOSxraWRzQWNjb3VudHNTbmFwc2hvdDozMCx6ZXJvU3RlcENoYW5uZWxDcmVhdGVkOjMxLHR2aHRtbDVTZWFyY2hDb21wbGV0ZWQ6MzIsb2ZmbGluZVNoYXJlUGFpcmluZzozNCxvZmZsaW5lU2hhcmVVbmxvY2s6MzUsbWR4Um91dGVEaXN0cmlidXRpb25TbmFwc2hvdDozNixiZWRyb2NrUmVwZXRpdGl2ZUFjdGlvblRpbWVkOjM3LHVucGx1Z2dlZERlZ3JhZGF0aW9uSW5mbzoyMjksdXBsb2FkTXA0SGVhZGVyTW92ZWQ6MzgsdXBsb2FkVmlkZW9UcmFuc2NvZGVkOjM5LHVwbG9hZFByb2Nlc3NvclN0YXJ0ZWQ6NDYsdXBsb2FkUHJvY2Vzc29yRW5kZWQ6NDcsdXBsb2FkUHJvY2Vzc29yUmVhZHk6OTQsdXBsb2FkUHJvY2Vzc29yUmVxdWlyZW1lbnRQZW5kaW5nOjk1LHVwbG9hZFByb2Nlc3NvckludGVycnVwdGVkOjk2LHVwbG9hZEZyb250ZW5kRXZlbnQ6MjQxLGFzc2V0UGFja0Rvd25sb2FkU3RhcnRlZDo0MSxhc3NldFBhY2tEb3dubG9hZGVkOjQyLAphc3NldFBhY2tBcHBsaWVkOjQzLGFzc2V0UGFja0RlbGV0ZWQ6NDQsYXBwSW5zdGFsbEF0dHJpYnV0aW9uRXZlbnQ6NDU5LHBsYXliYWNrU2Vzc2lvblN0b3BwZWQ6NDUsYWRCbG9ja2VyTWVzc2FnaW5nU2hvd246NDgsZGlzdHJpYnV0aW9uQ2hhbm5lbENhcHR1cmVkOjQ5LGRhdGFQbGFuQ3BpZFJlcXVlc3RlZDo1MSxkZXRhaWxlZE5ldHdvcmtUeXBlQ2FwdHVyZWQ6NTIsc2VuZFN0YXRlVXBkYXRlZDo1MyxyZWNlaXZlU3RhdGVVcGRhdGVkOjU0LHNlbmREZWJ1Z1N0YXRlVXBkYXRlZDo1NSxyZWNlaXZlRGVidWdTdGF0ZVVwZGF0ZWQ6NTYsa2lkc0Vycm9yZWQ6NTcsbWR4TXNuU2Vzc2lvblN0YXRzRmluaXNoZWQ6NTgsYXBwU2V0dGluZ3NDYXB0dXJlZDo1OSxtZHhXZWJTb2NrZXRTZXJ2ZXJIdHRwRXJyb3I6NjAsbWR4V2ViU29ja2V0U2VydmVyOjYxLHN0YXJ0dXBDcmFzaGVzRGV0ZWN0ZWQ6NjIsY29sZFN0YXJ0SW5mbzo0MzUsb2ZmbGluZVBsYXliYWNrU3RhcnRlZDo2MyxsaXZlQ2hhdE1lc3NhZ2VTZW50OjIyNSwKbGl2ZUNoYXRVc2VyUHJlc2VudDo0MzQsbGl2ZUNoYXRCZWluZ01vZGVyYXRlZDo0NTcsbGl2ZUNoYXRHaWZ0QnV0dG9uSW1wcmVzc2VkOjU1OCxsaXZlQ3JlYXRpb25DYW1lcmFVcGRhdGVkOjY0LGxpdmVDcmVhdGlvbkVuY29kaW5nQ2FwdHVyZWQ6NjUsbGl2ZUNyZWF0aW9uRXJyb3I6NjYsbGl2ZUNyZWF0aW9uSGVhbHRoVXBkYXRlZDo2NyxsaXZlQ3JlYXRpb25WaWRlb0VmZmVjdHNDYXB0dXJlZDo2OCxsaXZlQ3JlYXRpb25TdGFnZU9jY3VyZWQ6NzUsb2ZmbGluZVN5c3RlbUZhaWx1cmU6NTQ2LGxpdmVDcmVhdGlvbkJyb2FkY2FzdFNjaGVkdWxlZDoxMjMsbGl2ZUNyZWF0aW9uQXJjaGl2ZVJlcGxhY2VtZW50OjE0OSxsaXZlQ3JlYXRpb25Db3N0cmVhbWluZ0Nvbm5lY3Rpb246NDIxLGxpdmVDcmVhdGlvblBsYXlhYmxlc01ldHJpY3M6NTMzLGxpdmVDcmVhdGlvblN0cmVhbVdlYnJ0Y1N0YXRzOjI4OCxsaXZlQ3JlYXRpb25XZWJydGNFcnJvcjo1MjYsbWR4U2Vzc2lvblJlY292ZXJ5U3RhcnRlZDo2OSwKbWR4U2Vzc2lvblJlY292ZXJ5Q29tcGxldGVkOjcwLG1keFNlc3Npb25SZWNvdmVyeVN0b3BwZWQ6NzEsdmlzdWFsRWxlbWVudFNob3duOjcyLHZpc3VhbEVsZW1lbnRIaWRkZW46NzMsdmlzdWFsRWxlbWVudEdlc3R1cmVkOjc4LHZpc3VhbEVsZW1lbnRTdGF0ZUNoYW5nZWQ6MjA4LHNjcmVlbkNyZWF0ZWQ6MTU2LHBsYXliYWNrQXNzb2NpYXRlZDoyMDIsdmlzdWFsRWxlbWVudEF0dGFjaGVkOjIxNSxwbGF5YmFja0NvbnRleHRFdmVudDoyMTQsY2xvdWRDYXN0aW5nUGxheWJhY2tTdGFydGVkOjc0LHdlYlBsYXllckFwaUNhbGxlZDo3Nix0dmh0bWw1QWNjb3VudERpYWxvZ09wZW5lZDo3OSxmb3JlZ3JvdW5kSGVhcnRiZWF0OjgwLGZvcmVncm91bmRIZWFydGJlYXRTY3JlZW5Bc3NvY2lhdGVkOjExMSxraWRzT2ZmbGluZVNuYXBzaG90OjgxLG1keEVuY3J5cHRpb25TZXNzaW9uU3RhdHNGaW5pc2hlZDo4MixwbGF5ZXJSZXF1ZXN0Q29tcGxldGVkOjgzLGxpdGVTY2hlZHVsZXJTdGF0aXN0aWNzOjg0LAptZHhTaWduSW46ODUsc3BhY2VjYXN0TWV0YWRhdGFMb29rdXBSZXF1ZXN0ZWQ6ODYsc3BhY2VjYXN0QmF0Y2hMb29rdXBSZXF1ZXN0ZWQ6ODcsc3BhY2VjYXN0U3VtbWFyeVJlcXVlc3RlZDo4OCxzcGFjZWNhc3RQbGF5YmFjazo4OSxzcGFjZWNhc3REaXNjb3Zlcnk6OTAsdHZodG1sNUxhdW5jaFVybENvbXBvbmVudENoYW5nZWQ6OTEsbWR4QmFja2dyb3VuZFBsYXliYWNrUmVxdWVzdENvbXBsZXRlZDo5MixtZHhCcm9rZW5BZGRpdGlvbmFsRGF0YURldmljZURldGVjdGVkOjkzLHR2aHRtbDVMb2NhbFN0b3JhZ2U6OTcsdHZodG1sNURldmljZVN0b3JhZ2VTdGF0dXM6MTQ3LGF1dG9DYXB0aW9uc0F2YWlsYWJsZTo5OSxwbGF5YmFja1NjcnViYmluZ0V2ZW50OjMzOSxmbGV4eVN0YXRlOjEwMCxpbnRlcmZhY2VPcmllbnRhdGlvbkNhcHR1cmVkOjEwMSxtYWluQXBwQnJvd3NlRnJhZ21lbnRDYWNoZToxMDIsb2ZmbGluZUNhY2hlVmVyaWZpY2F0aW9uRmFpbHVyZToxMDMsb2ZmbGluZVBsYXliYWNrRXhjZXB0aW9uRGlnZXN0OjIxNywKdnJDb3ByZXNlbmNlU3RhdHM6MTA0LHZyQ29wcmVzZW5jZVN5bmNTdGF0czoxMzAsdnJDb3ByZXNlbmNlQ29tbXNTdGF0czoxMzcsdnJDb3ByZXNlbmNlUGFydHlTdGF0czoxNTMsdnJDb3ByZXNlbmNlRW1vamlTdGF0czoyMTMsdnJDb3ByZXNlbmNlRXZlbnQ6MTQxLHZyQ29wcmVzZW5jZUZsb3dUcmFuc2l0RXZlbnQ6MTYwLHZyQ293YXRjaFBhcnR5RXZlbnQ6NDkyLHZyQ293YXRjaFVzZXJTdGFydE9ySm9pbkV2ZW50OjUwNCx2clBsYXliYWNrRXZlbnQ6MzQ1LGtpZHNBZ2VHYXRlVHJhY2tpbmc6MTA1LG9mZmxpbmVEZWxheUFsbG93ZWRUcmFja2luZzoxMDYsbWFpbkFwcEF1dG9PZmZsaW5lU3RhdGU6MTA3LHZpZGVvQXNUaHVtYm5haWxEb3dubG9hZDoxMDgsdmlkZW9Bc1RodW1ibmFpbFBsYXliYWNrOjEwOSxsaXRlU2hvd01vcmU6MTEwLHJlbmRlcmluZ0Vycm9yOjExOCxraWRzUHJvZmlsZVBpbkdhdGVUcmFja2luZzoxMTksYWJyVHJhamVjdG9yeToxMjQsc2Nyb2xsRXZlbnQ6MTI1LApzdHJlYW16SW5jcmVtZW50ZWQ6MTI2LGtpZHNQcm9maWxlU3dpdGNoZXJUcmFja2luZzoxMjcsa2lkc1Byb2ZpbGVDcmVhdGlvblRyYWNraW5nOjEyOSxidXlGbG93U3RhcnRlZDoxMzYsaW50ZWdyYXRpb25BdHRyaWJ1dGlvbkV2ZW50OjU1NixtYnNDb25uZWN0aW9uSW5pdGlhdGVkOjEzOCxtYnNQbGF5YmFja0luaXRpYXRlZDoxMzksbWJzTG9hZENoaWxkcmVuOjE0MCxsaXRlUHJvZmlsZUZldGNoZXI6MTQ0LG1keFJlbW90ZVRyYW5zYWN0aW9uOjE0NixyZWVsUGxheWJhY2tFcnJvcjoxNDgscmVhY2hhYmlsaXR5RGV0ZWN0aW9uRXZlbnQ6MTUwLG1vYmlsZVBsYXliYWNrRXZlbnQ6MTUxLGNvdXJ0c2lkZVBsYXllclN0YXRlQ2hhbmdlZDoxNTIsbXVzaWNQZXJzaXN0ZW50Q2FjaGVDaGVja2VkOjE1NCxtdXNpY1BlcnNpc3RlbnRDYWNoZUNsZWFyZWQ6MTU1LHBsYXliYWNrSW50ZXJydXB0ZWQ6MTU3LHBsYXliYWNrSW50ZXJydXB0aW9uUmVzb2x2ZWQ6MTU4LGZpeEZvcEZsb3c6MTU5LAphbnJEZXRlY3Rpb246MTYxLGJhY2tzdGFnZVBvc3RDcmVhdGlvbkZsb3dFbmRlZDoxNjIsY2xpZW50RXJyb3I6MTYzLGdhbWluZ0FjY291bnRMaW5rU3RhdHVzQ2hhbmdlZDoxNjQsbGl0ZUhvdXNld2FybWluZzoxNjUsYnV5Rmxvd0V2ZW50OjE2NyxraWRzUGFyZW50YWxHYXRlVHJhY2tpbmc6MTY4LGtpZHNTaWduZWRPdXRTZXR0aW5nc1N0YXR1czo0Mzcsa2lkc1NpZ25lZE91dFBhdXNlSGlzdG9yeUZpeFN0YXR1czo0MzgsdHZodG1sNVdhdGNoZG9nVmlvbGF0aW9uOjQ0NCx5cGNVcGdyYWRlRmxvdzoxNjkseW9uZ2xlU3R1ZHk6MTcwLHlwY1VwZGF0ZUZsb3dTdGFydGVkOjE3MSx5cGNVcGRhdGVGbG93Q2FuY2VsbGVkOjE3Mix5cGNVcGRhdGVGbG93U3VjY2VlZGVkOjE3Myx5cGNVcGRhdGVGbG93RmFpbGVkOjE3NCxsaXRlR3Jvd3Roa2l0UHJvbW86MTc1LHBheW1lbnRGbG93U3RhcnRlZDozNDEsdHJhbnNhY3Rpb25GbG93U2hvd1BheW1lbnREaWFsb2c6NDA1LHRyYW5zYWN0aW9uRmxvd1N0YXJ0ZWQ6MTc2LAp0cmFuc2FjdGlvbkZsb3dTZWNvbmRhcnlEZXZpY2VTdGFydGVkOjIyMix0cmFuc2FjdGlvbkZsb3dTZWNvbmRhcnlEZXZpY2VTaWduZWRPdXRTdGFydGVkOjM4Myx0cmFuc2FjdGlvbkZsb3dDYW5jZWxsZWQ6MTc3LHRyYW5zYWN0aW9uRmxvd1BheW1lbnRDYWxsQmFja1JlY2VpdmVkOjM4Nyx0cmFuc2FjdGlvbkZsb3dQYXltZW50U3VibWl0dGVkOjQ2MCx0cmFuc2FjdGlvbkZsb3dQYXltZW50U3VjY2VlZGVkOjMyOSx0cmFuc2FjdGlvbkZsb3dTdWNjZWVkZWQ6MTc4LHRyYW5zYWN0aW9uRmxvd0ZhaWxlZDoxNzksdHJhbnNhY3Rpb25GbG93UGxheUJpbGxpbmdDb25uZWN0aW9uU3RhcnRFdmVudDo0MjgsdHJhbnNhY3Rpb25GbG93U2Vjb25kYXJ5RGV2aWNlU3VjY2Vzczo0NTgsdHJhbnNhY3Rpb25GbG93RXJyb3JFdmVudDo0MTEsbGl0ZVZpZGVvUXVhbGl0eUNoYW5nZWQ6MTgwLHdhdGNoQnJlYWtFbmFibGVtZW50U2V0dGluZ0V2ZW50OjE4MSx3YXRjaEJyZWFrRnJlcXVlbmN5U2V0dGluZ0V2ZW50OjE4MiwKdmlkZW9FZmZlY3RzQ2FtZXJhUGVyZm9ybWFuY2VNZXRyaWNzOjE4MyxhZE5vdGlmeToxODQsc3RhcnR1cFRlbGVtZXRyeToxODUscGxheWJhY2tPZmZsaW5lRmFsbGJhY2tVc2VkOjE4NixvdXRPZk1lbW9yeToxODcseXBjUGF1c2VGbG93U3RhcnRlZDoxODgseXBjUGF1c2VGbG93Q2FuY2VsbGVkOjE4OSx5cGNQYXVzZUZsb3dTdWNjZWVkZWQ6MTkwLHlwY1BhdXNlRmxvd0ZhaWxlZDoxOTEsdXBsb2FkRmlsZVNlbGVjdGVkOjE5Mix5cGNSZXN1bWVGbG93U3RhcnRlZDoxOTMseXBjUmVzdW1lRmxvd0NhbmNlbGxlZDoxOTQseXBjUmVzdW1lRmxvd1N1Y2NlZWRlZDoxOTUseXBjUmVzdW1lRmxvd0ZhaWxlZDoxOTYsYWRzQ2xpZW50U3RhdGVDaGFuZ2U6MTk3LHlwY0NhbmNlbEZsb3dTdGFydGVkOjE5OCx5cGNDYW5jZWxGbG93Q2FuY2VsbGVkOjE5OSx5cGNDYW5jZWxGbG93U3VjY2VlZGVkOjIwMCx5cGNDYW5jZWxGbG93RmFpbGVkOjIwMSx5cGNDYW5jZWxGbG93R29Ub1BheW1lbnRQcm9jZXNzb3I6NDAyLAp5cGNEZWFjdGl2YXRlRmxvd1N0YXJ0ZWQ6MzIwLHlwY1JlZGVlbUZsb3dTdGFydGVkOjIwMyx5cGNSZWRlZW1GbG93Q2FuY2VsbGVkOjIwNCx5cGNSZWRlZW1GbG93U3VjY2VlZGVkOjIwNSx5cGNSZWRlZW1GbG93RmFpbGVkOjIwNix5cGNGYW1pbHlDcmVhdGVGbG93U3RhcnRlZDoyNTgseXBjRmFtaWx5Q3JlYXRlRmxvd0NhbmNlbGxlZDoyNTkseXBjRmFtaWx5Q3JlYXRlRmxvd1N1Y2NlZWRlZDoyNjAseXBjRmFtaWx5Q3JlYXRlRmxvd0ZhaWxlZDoyNjEseXBjRmFtaWx5TWFuYWdlRmxvd1N0YXJ0ZWQ6MjYyLHlwY0ZhbWlseU1hbmFnZUZsb3dDYW5jZWxsZWQ6MjYzLHlwY0ZhbWlseU1hbmFnZUZsb3dTdWNjZWVkZWQ6MjY0LHlwY0ZhbWlseU1hbmFnZUZsb3dGYWlsZWQ6MjY1LHJlc3RvcmVDb250ZXh0RXZlbnQ6MjA3LGVtYmVkc0FkRXZlbnQ6MzI3LGF1dG9wbGF5VHJpZ2dlcmVkOjIwOSxjbGllbnREYXRhRXJyb3JFdmVudDoyMTAsZXhwZXJpbWVudGFsVnNzVmFsaWRhdGlvbjoyMTEsCnR2aHRtbDVUcmlnZ2VyZWRFdmVudDoyMTIsdHZodG1sNUZyYW1ld29ya3NGaWVsZFRyaWFsUmVzdWx0OjIxNix0dmh0bWw1RnJhbWV3b3Jrc0ZpZWxkVHJpYWxTdGFydDoyMjAsbXVzaWNPZmZsaW5lUHJlZmVyZW5jZXM6MjE4LHdhdGNoVGltZVNlZ21lbnQ6MjE5LGFwcFdpZHRoTGF5b3V0RXJyb3I6MjIxLGFjY291bnRSZWdpc3RyeUNoYW5nZToyMjYsdXNlck1lbnRpb25BdXRvQ29tcGxldGVCb3hFdmVudDoyMjcsZG93bmxvYWRSZWNvbW1lbmRhdGlvbkVuYWJsZW1lbnRTZXR0aW5nRXZlbnQ6MjI4LG11c2ljUGxheWJhY2tDb250ZW50TW9kZUNoYW5nZUV2ZW50OjIzMSxvZmZsaW5lRGJPcGVuQ29tcGxldGVkOjIzMixraWRzRmxvd0V2ZW50OjIzMyxraWRzRmxvd0NvcnB1c1NlbGVjdGVkRXZlbnQ6MjM0LHZpZGVvRWZmZWN0c0V2ZW50OjIzNSx1bnBsdWdnZWRPcHNFb2dBbmFseXRpY3NFdmVudDoyMzYscGxheWJhY2tBdWRpb1JvdXRlRXZlbnQ6MjM3LGludGVyYWN0aW9uTG9nZ2luZ0RlYnVnTW9kZUVycm9yOjIzOCwKb2ZmbGluZVl0YlJlZnJlc2hlZDoyMzksa2lkc0Zsb3dFcnJvcjoyNDAsbXVzaWNBdXRvcGxheU9uTGF1bmNoQXR0ZW1wdGVkOjI0MixkZXZpY2VDb250ZXh0QWN0aXZpdHlFdmVudDoyNDMsZGV2aWNlQ29udGV4dEV2ZW50OjI0NCx0ZW1wbGF0ZVJlc29sdXRpb25FeGNlcHRpb246MjQ1LG11c2ljU2lkZWxvYWRlZFBsYXlsaXN0U2VydmljZUNhbGxlZDoyNDYsZW1iZWRzU3RvcmFnZUFjY2Vzc05vdENoZWNrZWQ6MjQ3LGVtYmVkc0hhc1N0b3JhZ2VBY2Nlc3NSZXN1bHQ6MjQ4LGVtYmVkc0l0cFBsYXllZE9uUmVsb2FkOjI0OSxlbWJlZHNSZXF1ZXN0U3RvcmFnZUFjY2Vzc1Jlc3VsdDoyNTAsZW1iZWRzU2hvdWxkUmVxdWVzdFN0b3JhZ2VBY2Nlc3NSZXN1bHQ6MjUxLGVtYmVkc1JlcXVlc3RTdG9yYWdlQWNjZXNzU3RhdGU6MjU2LGVtYmVkc1JlcXVlc3RTdG9yYWdlQWNjZXNzRmFpbGVkU3RhdGU6MjU3LGVtYmVkc0l0cFdhdGNoTGF0ZXJSZXN1bHQ6MjY2LHNlYXJjaFN1Z2dlc3REZWNvZGluZ1BheWxvYWRGYWlsdXJlOjI1MiwKc2lyaVNob3J0Y3V0QWN0aXZhdGVkOjI1Myx0dmh0bWw1S2V5Ym9hcmRQZXJmb3JtYW5jZToyNTQsbGF0ZW5jeUFjdGlvblNwYW46MjU1LGVsZW1lbnRzTG9nOjI2Nyx5dGJGaWxlT3BlbmVkOjI2OCx0ZmxpdGVNb2RlbEVycm9yOjI2OSxhcGlUZXN0OjI3MCx5b25nbGVVc2JTZXR1cDoyNzEsdG91U3RyaWtlSW50ZXJzdGl0aWFsRXZlbnQ6MjcyLGxpdGVTdHJlYW1Ub1NhdmU6Mjc0LGFwcEJ1bmRsZUNsaWVudEV2ZW50OjI3NSx5dGJGaWxlQ3JlYXRpb25GYWlsZWQ6Mjc2LGFkTm90aWZ5RmFpbHVyZToyNzgseXRiVHJhbnNmZXJGYWlsZWQ6MjgwLGJsb2NraW5nUmVxdWVzdEZhaWxlZDoyODEsbGl0ZUFjY291bnRTZWxlY3RvcjoyODIsbGl0ZUFjY291bnRVaUNhbGxiYWNrczoyODMsZHVtbXlQYXlsb2FkOjI4NCxicm93c2VSZXNwb25zZVZhbGlkYXRpb25FdmVudDoyODUsZW50aXRpZXNFcnJvcjoyODYsbXVzaWNJb3NCYWNrZ3JvdW5kRmV0Y2g6Mjg3LG1keE5vdGlmaWNhdGlvbkV2ZW50OjI4OSwKbGF5ZXJzVmFsaWRhdGlvbkVycm9yOjI5MCxtdXNpY1B3YUluc3RhbGxlZDoyOTEsbGl0ZUFjY291bnRDbGVhbnVwOjI5MixodG1sNVBsYXllckhlYWx0aEV2ZW50OjI5Myx3YXRjaFJlc3RvcmVBdHRlbXB0OjI5NCxsaXRlQWNjb3VudFNpZ25JbjoyOTYsbm90YWlyZUV2ZW50OjI5OCxraWRzVm9pY2VTZWFyY2hFdmVudDoyOTksYWROb3RpZnlGaWxsZWQ6MzAwLGRlbGF5ZWRFdmVudERyb3BwZWQ6MzAxLGFuYWx5dGljc1NlYXJjaEV2ZW50OjMwMixzeXN0ZW1EYXJrVGhlbWVPcHRPdXRFdmVudDozMDMsZmxvd0V2ZW50OjMwNCxuZXR3b3JrQ29ubmVjdGl2aXR5QmFzZWxpbmVFdmVudDozMDUseXRiRmlsZUltcG9ydGVkOjMwNixkb3dubG9hZFN0cmVhbVVybEV4cGlyZWQ6MzA3LGRpcmVjdFNpZ25JbkV2ZW50OjMwOCxseXJpY0ltcHJlc3Npb25FdmVudDozMDksYWNjZXNzaWJpbGl0eVN0YXRlRXZlbnQ6MzEwLHRva2VuUmVmcmVzaEV2ZW50OjMxMSxnZW5lcmljQXR0ZXN0YXRpb25FeGVjdXRpb246MzEyLAp0dmh0bWw1VmlkZW9TZWVrOjMxMyx1bnBsdWdnZWRBdXRvUGF1c2U6MzE0LHNjcnViYmluZ0V2ZW50OjMxNSxiZWR0aW1lUmVtaW5kZXJFdmVudDozMTcsdHZodG1sNVVuZXhwZWN0ZWRSZXN0YXJ0OjMxOSx0dmh0bWw1RGV2aWNlU3RvcmFnZVN0YXRzOjUzNSx0dmh0bWw1U3RhYmlsaXR5VHJhY2VFdmVudDo0NzgsdHZodG1sNU9wZXJhdGlvbkhlYWx0aDo0NjcsdHZodG1sNVdhdGNoS2V5RXZlbnQ6MzIxLHZvaWNlTGFuZ3VhZ2VDaGFuZ2VkOjMyMix0dmh0bWw1TGl2ZUNoYXRTdGF0dXM6MzIzLHBhcmVudFRvb2xzQ29ycHVzU2VsZWN0ZWRFdmVudDozMjQsb2ZmZXJBZHNFbnJvbGxtZW50SW5pdGlhdGVkOjMyNSxuZXR3b3JrUXVhbGl0eUludGVydmFsRXZlbnQ6MzI2LGRldmljZVN0YXJ0dXBNZXRyaWNzOjMyOCxoZWFydGJlYXRBY3Rpb25QbGF5ZXJUcmFuc2l0aW9uZWQ6MzMwLHR2aHRtbDVMaWZlY3ljbGU6MzMxLGhlYXJ0YmVhdEFjdGlvblBsYXllckhhbHRlZDozMzIsYWRhcHRpdmVJbmxpbmVNdXRlZFNldHRpbmdFdmVudDozMzMsCm1haW5BcHBMaWJyYXJ5TG9hZGluZ1N0YXRlOjMzNCx0aGlyZFBhcnR5TG9nTW9uaXRvcmluZ0V2ZW50OjMzNixhcHBTaGVsbEFzc2V0TG9hZFJlcG9ydDozMzcsdHZodG1sNUFuZHJvaWRBdHRlc3RhdGlvbjozMzgsdHZodG1sNVN0YXJ0dXBTb3VuZEV2ZW50OjM0MCxpb3NCYWNrZ3JvdW5kUmVmcmVzaFRhc2s6MzQyLGlvc0JhY2tncm91bmRQcm9jZXNzaW5nVGFzazozNDMsc2xpRXZlbnRCYXRjaDozNDQscG9zdEltcHJlc3Npb25FdmVudDozNDYsbXVzaWNTaWRlbG9hZGVkUGxheWxpc3RFeHBvcnQ6MzQ3LGlkYlVuZXhwZWN0ZWRseUNsb3NlZDozNDgsdm9pY2VTZWFyY2hFdmVudDozNDksbWR4U2Vzc2lvbkNhc3RFdmVudDozNTAsaWRiUXVvdGFFeGNlZWRlZDozNTEsaWRiVHJhbnNhY3Rpb25FbmRlZDozNTIsaWRiVHJhbnNhY3Rpb25BYm9ydGVkOjM1Myx0dmh0bWw1S2V5Ym9hcmRMb2dnaW5nOjM1NCxpZGJJc1N1cHBvcnRlZENvbXBsZXRlZDozNTUsY3JlYXRvclN0dWRpb01vYmlsZUV2ZW50OjM1NiwKaWRiRGF0YUNvcnJ1cHRlZDozNTcscGFyZW50VG9vbHNBcHBDaG9zZW5FdmVudDozNTgsd2ViVmlld0JvdHRvbVNoZWV0UmVzaXplZDozNTksYWN0aXZlU3RhdGVDb250cm9sbGVyU2Nyb2xsUGVyZm9ybWFuY2VTdW1tYXJ5OjM2MCxuYXZpZ2F0b3JWYWxpZGF0aW9uOjM2MSxtZHhTZXNzaW9uSGVhcnRiZWF0OjM2MixjbGllbnRIaW50c1BvbHlmaWxsRGlhZ25vc3RpY3M6MzYzLGNsaWVudEhpbnRzUG9seWZpbGxFdmVudDozNjQscHJvb2ZPZk9yaWdpblRva2VuRXJyb3I6MzY1LGtpZHNBZGRlZEFjY291bnRTdW1tYXJ5OjM2NixtdXNpY1dlYXJhYmxlRGV2aWNlOjM2Nyx5cGNSZWZ1bmRGbG93RXZlbnQ6MzY4LHR2aHRtbDVQbGF5YmFja01lYXN1cmVtZW50RXZlbnQ6MzY5LHR2aHRtbDVXYXRlcm1hcmtNZWFzdXJlbWVudEV2ZW50OjM3MCxjbGllbnRFeHBHY2ZQcm9wYWdhdGlvbkV2ZW50OjM3MSxtYWluQXBwUmVmZXJyZXJJbnRlbnQ6MzcyLGxlYWRlckxvY2tFbmRlZDozNzMsbGVhZGVyTG9ja0FjcXVpcmVkOjM3NCwKZ29vZ2xlSGF0c0V2ZW50OjM3NSxwZXJzaXN0ZW50TGVuc0xhdW5jaEV2ZW50OjM3NixwYXJlbnRUb29sc0NoaWxkV2VsY29tZUNob3NlbkV2ZW50OjM3OCxicm93c2VUaHVtYm5haWxQcmVsb2FkRXZlbnQ6Mzc5LGZpbmFsUGF5bG9hZDozODAsbWR4RGlhbEFkZGl0aW9uYWxEYXRhVXBkYXRlRXZlbnQ6MzgxLHdlYk9yY2hlc3RyYXRpb25UYXNrTGlmZWN5Y2xlUmVjb3JkOjM4MixzdGFydHVwU2lnbmFsRXZlbnQ6Mzg0LGFjY291bnRFcnJvcjozODUsZ21zRGV2aWNlQ2hlY2tFdmVudDozODYsYWNjb3VudFNlbGVjdG9yRXZlbnQ6Mzg4LGFjY291bnRVaUNhbGxiYWNrczozODksbWR4RGlhbEFkZGl0aW9uYWxEYXRhUHJvYmVFdmVudDozOTAsZG93bmxvYWRzU2VhcmNoSWNpbmdBcGlTdGF0czozOTEsZG93bmxvYWRzU2VhcmNoSW5kZXhVcGRhdGVkRXZlbnQ6Mzk3LGRvd25sb2Fkc1NlYXJjaEluZGV4U25hcHNob3Q6Mzk4LGRhdGFQdXNoQ2xpZW50RXZlbnQ6MzkyLGtpZHNDYXRlZ29yeVNlbGVjdGVkRXZlbnQ6MzkzLAptZHhEZXZpY2VNYW5hZ2VtZW50U25hcHNob3RFdmVudDozOTQscHJlZmV0Y2hSZXF1ZXN0ZWQ6Mzk1LHByZWZldGNoYWJsZUNvbW1hbmRFeGVjdXRlZDozOTYsZ2VsRGVidWdnaW5nRXZlbnQ6Mzk5LHdlYkxpbmtUdHNQbGF5RW5kOjQwMCxjbGlwVmlld0ludmFsaWQ6NDAxLHBlcnNpc3RlbnRTdG9yYWdlU3RhdGVDaGVja2VkOjQwMyxjYWNoZVdpcGVvdXRFdmVudDo0MDQscGxheWVyRXZlbnQ6NDEwLHNmdkVmZmVjdFBpcGVsaW5lU3RhcnRlZEV2ZW50OjQxMixzZnZFZmZlY3RQaXBlbGluZVBhdXNlZEV2ZW50OjQyOSxzZnZFZmZlY3RQaXBlbGluZUVuZGVkRXZlbnQ6NDEzLHNmdkVmZmVjdENob3NlbkV2ZW50OjQxNCxzZnZFZmZlY3RMb2FkZWRFdmVudDo0MTUsc2Z2RWZmZWN0VXNlckludGVyYWN0aW9uRXZlbnQ6NDY1LHNmdkVmZmVjdEZpcnN0RnJhbWVQcm9jZXNzZWRMYXRlbmN5RXZlbnQ6NDE2LHNmdkVmZmVjdEFnZ3JlZ2F0ZWRGcmFtZXNQcm9jZXNzZWRMYXRlbmN5RXZlbnQ6NDE3LApzZnZFZmZlY3RBZ2dyZWdhdGVkRnJhbWVzRHJvcHBlZEV2ZW50OjQxOCxzZnZFZmZlY3RQaXBlbGluZUVycm9yRXZlbnQ6NDMwLHNmdkVmZmVjdEdyYXBoRnJvemVuRXZlbnQ6NDE5LHNmdkVmZmVjdEdsVGhyZWFkQmxvY2tlZEV2ZW50OjQyMCxtZGVRb3NFdmVudDo1MTAsbWRlVmlkZW9DaGFuZ2VkRXZlbnQ6NDQyLG1kZVBsYXllclBlcmZvcm1hbmNlTWV0cmljczo0NzIsbWRlRXhwb3J0ZXJFdmVudDo0OTcsZ2VuZXJpY0NsaWVudEV4cGVyaW1lbnRFdmVudDo0MjMsaG9tZVByZWxvYWRUYXNrU2NoZWR1bGVkOjQyNCxob21lUHJlbG9hZFRhc2tFeGVjdXRlZDo0MjUsaG9tZVByZWxvYWRDYWNoZUhpdDo0MjYscG9seW1lclByb3BlcnR5Q2hhbmdlZEluT2JzZXJ2ZXI6NDI3LGFwcGxpY2F0aW9uU3RhcnRlZDo0MzEsbmV0d29ya0Nyb25ldFJ0dEJhdGNoOjQzMixuZXR3b3JrQ3JvbmV0UnR0U3VtbWFyeTo0MzMscmVwZWF0Q2hhcHRlckxvb3BFdmVudDo0MzYsc2Vla0NhbmNlbGxhdGlvbkV2ZW50OjQ2MiwKbG9ja01vZGVUaW1lb3V0RXZlbnQ6NDgzLGV4dGVybmFsVmlkZW9TaGFyZVRvWW91dHViZUF0dGVtcHQ6NTAxLHBhcmVudENvZGVFdmVudDo1MDIsb2ZmbGluZVRyYW5zZmVyU3RhcnRlZDo0LG11c2ljT2ZmbGluZU1peHRhcGVQcmVmZXJlbmNlc0NoYW5nZWQ6MTYsbWFuZ29EYWlseU5ld1ZpZGVvc05vdGlmaWNhdGlvbkF0dGVtcHQ6NDAsbWFuZ29EYWlseU5ld1ZpZGVvc05vdGlmaWNhdGlvbkVycm9yOjc3LGR0d3NQbGF5YmFja1N0YXJ0ZWQ6MTEyLGR0d3NUaWxlRmV0Y2hTdGFydGVkOjExMyxkdHdzVGlsZUZldGNoQ29tcGxldGVkOjExNCxkdHdzVGlsZUZldGNoU3RhdHVzQ2hhbmdlZDoxNDUsZHR3c0tleWZyYW1lRGVjb2RlckJ1ZmZlclNlbnQ6MTE1LGR0d3NUaWxlVW5kZXJmbG93ZWRPbk5vbmtleWZyYW1lOjExNixkdHdzQmFja2ZpbGxGZXRjaFN0YXR1c0NoYW5nZWQ6MTQzLGR0d3NCYWNrZmlsbFVuZGVyZmxvd2VkOjExNyxkdHdzQWRhcHRpdmVMZXZlbENoYW5nZWQ6MTI4LApibG9ja2luZ1Zpc2l0b3JJZFRpbWVvdXQ6Mjc3LGxpdGVTb2NpYWw6MTgsbW9iaWxlSnNJbnZvY2F0aW9uOjI5NyxiaXNjb3R0aUJhc2VkRGV0ZWN0aW9uOjQzOSxjb1dhdGNoU3RhdGVDaGFuZ2U6NDQwLGVtYmVkc1ZpZGVvRGF0YURpZENoYW5nZTo0NDEsc2hvcnRzRmlyc3Q6NDQzLGNydWlzZUNvbnRyb2xFdmVudDo0NDUscW9lQ2xpZW50TG9nZ2luZ0NvbnRleHQ6NDQ2LGF0dlJlY29tbWVuZGF0aW9uSm9iRXhlY3V0ZWQ6NDQ3LHR2aHRtbDVVc2VyRmVlZGJhY2s6NDQ4LHByb2R1Y2VyUHJvamVjdENyZWF0ZWQ6NDQ5LHByb2R1Y2VyUHJvamVjdE9wZW5lZDo0NTAscHJvZHVjZXJQcm9qZWN0RGVsZXRlZDo0NTEscHJvZHVjZXJQcm9qZWN0RWxlbWVudEFkZGVkOjQ1Myxwcm9kdWNlclByb2plY3RFbGVtZW50UmVtb3ZlZDo0NTQscHJvZHVjZXJBcHBTdGF0ZUNoYW5nZTo1MDkscHJvZHVjZXJQcm9qZWN0RGlza0luc3VmZmljaWVudEV4cG9ydEZhaWx1cmU6NTE2LHByb2R1Y2VyTWVkaWFTZXJ2aWNlc1Jlc2V0RGV0YWlsczo1MjIsCnR2aHRtbDVTaG93Q2xvY2tFdmVudDo0NTUsZGV2aWNlQ2FwYWJpbGl0eUNoZWNrTWV0cmljczo0NTYseW91dHViZUNsZWFyY3V0RXZlbnQ6NDYxLG9mZmxpbmVCcm93c2VGYWxsYmFja0V2ZW50OjQ2MyxnZXRDdHZUb2tlbkV2ZW50OjQ2NCxzdGFydHVwRHJvcHBlZEZyYW1lc1N1bW1hcnk6NDY2LHNjcmVlbnNob3RFdmVudDo0NjgsbWluaUFwcFBsYXlFdmVudDo0NjksZWxlbWVudHNEZWJ1Z0NvdW50ZXJzOjQ3MCxmb250TG9hZEV2ZW50OjQ3MSx3ZWJLaWxsc3dpdGNoUmVjZWl2ZWQ6NDczLHdlYktpbGxzd2l0Y2hFeGVjdXRlZDo0NzQsY2FtZXJhT3BlbkV2ZW50OjQ3NSxtYW51YWxTbW9vdGhuZXNzTWVhc3VyZW1lbnQ6NDc2LHR2aHRtbDVBcHBRdWFsaXR5RXZlbnQ6NDc3LHBvbHltZXJQcm9wZXJ0eUFjY2Vzc0V2ZW50OjQ3OSxtaW5pQXBwU2RrVXNhZ2U6NDgwLGNvYmFsdFRlbGVtZXRyeUV2ZW50OjQ4MSxjcm9zc0RldmljZVBsYXliYWNrOjQ4MixjaGFubmVsQ3JlYXRlZFdpdGhPYmFrZUltYWdlOjQ4NCwKY2hhbm5lbEVkaXRlZFdpdGhPYmFrZUltYWdlOjQ4NSxvZmZsaW5lRGVsZXRlRXZlbnQ6NDg2LGNyb3NzRGV2aWNlTm90aWZpY2F0aW9uVHJhbnNmZXI6NDg3LGFuZHJvaWRJbnRlbnRFdmVudDo0ODgsdW5wbHVnZ2VkQW1iaWVudEludGVybHVkZXNDb3VudGVyZmFjdHVhbEV2ZW50OjQ4OSxrZXlQbGF5c1BsYXliYWNrOjQ5MCxzaG9ydHNDcmVhdGlvbkZhbGxiYWNrRXZlbnQ6NDkzLHZzc0RhdGE6NDkxLGNhc3RNYXRjaDo0OTQsbWluaUFwcFBlcmZvcm1hbmNlTWV0cmljczo0OTUsdXNlckZlZWRiYWNrRXZlbnQ6NDk2LGtpZHNHdWVzdFNlc3Npb25NaXNtYXRjaDo0OTgsbXVzaWNTaWRlbG9hZGVkUGxheWxpc3RNaWdyYXRpb25FdmVudDo0OTksc2xlZXBUaW1lclNlc3Npb25GaW5pc2hFdmVudDo1MDAsd2F0Y2hFcFByb21vQ29uZmxpY3Q6NTAzLGlubmVydHViZVJlc3BvbnNlQ2FjaGVNZXRyaWNzOjUwNSxtaW5pQXBwQWRFdmVudDo1MDYsZGF0YVBsYW5VcHNlbGxFdmVudDo1MDcsCnByb2R1Y2VyUHJvamVjdFJlbmFtZWQ6NTA4LHByb2R1Y2VyTWVkaWFTZWxlY3Rpb25FdmVudDo1MTEsZW1iZWRzQXV0b3BsYXlTdGF0dXNDaGFuZ2VkOjUxMixyZW1vdGVDb25uZWN0RXZlbnQ6NTEzLGNvbm5lY3RlZFNlc3Npb25NaXNhdHRyaWJ1dGlvbkV2ZW50OjUxNCxwcm9kdWNlclByb2plY3RFbGVtZW50TW9kaWZpZWQ6NTE1LGFkc1NlZW5DbGllbnRMb2dnaW5nOjUxNyxwcm9kdWNlckV2ZW50OjUxOCx0dmh0bWw1Q2xlYW5TdGFydDo1MTksZGV2aWNlQWNjb3VudE1ldHJpY3NFdmVudDo1MjAsZGVycExvZ0V2ZW50OjUyMSxwbGF5YWJsZXNQb3J0YWxFdmVudDo1MjMsaXBWYWxpZGF0aW9uU3RhcnRlZDo1MjQsaXBWYWxpZGF0aW9uUmVjZWl2ZWQ6NTI1LHJlZWxzU2VxdWVuY2VNdXRhdGlvbkV2ZW50OjUyNyx3YXRjaFpvb21TdGF0ZUNoYW5nZTo1MjgsbWV0YWRhdGFFZGl0b3JFdmVudDo1Mjksa2lkc1ByaXNtYURlZXBsaW5rc0V2ZW50OjUzMCxjcmVhdGlvbk9yY2hlc3RyYXRpb25FdmVudDo1MzEsCmNvb3JkaW5hdGVkU2FtcGxpbmdUcmlnZ2VyZWQ6NTMyLHJlY2FwU2NyZWVuc2hvdEV2ZW50OjUzNCxtZHhMb2NhbE5ldHdvcmtQZXJtaXNzaW9uUmVxdWVzdEV2ZW50OjUzNixtZHhMb2NhbE5ldHdvcmtQZXJtaXNzaW9uUmVzcG9uc2VFdmVudDo1Mzcsc2Vzc2lvblJlcGxheUV2ZW50OjUzOCxzZXNzaW9uUmVwbGF5U3RhdHVzRXZlbnQ6NTM5LGxvZ2dpbmdSZWxpYWJpbGl0eVByb2JlOjU0MCxrZXlWYWx1ZVN0b3JlU3RhdHNFdmVudDo1NDEsZGV2aWNlTG9jYXRpb25QZXJtaXNzaW9uRXZlbnQ6NTQyLHJlbW90ZUNvbnRyb2xTdGFydGVkOjU0MyxyZW1vdGVDb250cm9sQ29tcGxldGVkOjU0NCxyZWVsc0Fkc0V2ZW50czo1NDUseXRsckxvYWRlclRlc3RIYXJuZXNzRXZlbnQ6NTQ3LGJpb21ldHJpY0F1dGhlbnRpY2F0aW9uRXZlbnQ6NTQ4LG1haW5BcHBMaWZlY3ljbGVFdmVudDo1NDksbXVzaWNEb3dubG9hZEJhY2tncm91bmRDb250aW51ZWRQcm9jZXNzaW5nVGFzazo1NTAsbXVzaWNNZXRhZGF0YU1pc21hdGNoRXZlbnQ6NTUxLApzY3JvbGxUb0NvbXBvbmVudENvbXBsZXRlZDo1NTIsZW50aXR5U3RvcmVUZWxlbWV0cnk6NTUzLHN0cmVhbWluZ0RhcmtMYXVuY2hFdmVudDo1NTQsY2hpbGRBY2NvdW50c0Rpc3BsYXlFdmVudDo1NTUsdHZmYXNQbGF5YmFja0NvbnRleHQ6NTU3LG1kZUMyUGFFdmVudDo1NTl9O3ZhciBoX3g9a08oIlNlcnZpY2VXb3JrZXJMb2dzRGF0YWJhc2UiLHtLYzp7U1dIZWFsdGhMb2c6e3Z4OjF9fSxzaGFyZWQ6ITAsdXBncmFkZToobixXKT0+e1coMSkmJkVSKFp5KG4sIlNXSGVhbHRoTG9nIix7a2V5UGF0aDoiaWQiLGF1dG9JbmNyZW1lbnQ6ITB9KSwic3dIZWFsdGhOZXdSZXF1ZXN0IixbImludGVyZmFjZSIsInRpbWVzdGFtcCJdKX0sCnZlcnNpb246MX0pO3ZhciBYaT17fSxYSHc9MDt2YXIgR1Q7dmFyIHJvPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5OPW5ldyBNYXA7dGhpcy5KPSExfXJlcXVlc3RDb21wbGV0ZShuLFcpe1cmJih0aGlzLko9ITApO249dGhpcy5yZW1vdmVQYXJhbXMobik7dGhpcy5OLmdldChuKXx8dGhpcy5OLnNldChuLFcpfWlzRW5kcG9pbnRDRlIobil7bj10aGlzLnJlbW92ZVBhcmFtcyhuKTtyZXR1cm4obj10aGlzLk4uZ2V0KG4pKT8hMTpuPT09ITEmJnRoaXMuSj8hMDpudWxsfXJlbW92ZVBhcmFtcyhuKXtyZXR1cm4gbi5zcGxpdCgiPyIpWzBdfX07cm8ucHJvdG90eXBlLnJlbW92ZVBhcmFtcz1yby5wcm90b3R5cGUucmVtb3ZlUGFyYW1zO3JvLnByb3RvdHlwZS5pc0VuZHBvaW50Q0ZSPXJvLnByb3RvdHlwZS5pc0VuZHBvaW50Q0ZSO3JvLnByb3RvdHlwZS5yZXF1ZXN0Q29tcGxldGU9cm8ucHJvdG90eXBlLnJlcXVlc3RDb21wbGV0ZTtyby5nZXRJbnN0YW5jZT1zYzt2YXIgTmI9Y2xhc3MgZXh0ZW5kcyBnLm9Xe2NvbnN0cnVjdG9yKCl7c3VwZXIoKTt0aGlzLko9ITE7dGhpcy5OPXMydygpO3RoaXMuTi5TXygibmV0d29ya3N0YXR1cy1vbmxpbmUiLCgpPT57aWYodGhpcy5KJiZnLmwoIm9mZmxpbmVfZXJyb3JfaGFuZGxpbmciKSl7dmFyIG49JFEoKS5nZXQoImVycm9ycyIsITApO2lmKG4pe2ZvcihsZXQgVyBpbiBuKWlmKG5bV10pe2xldCBEPW5ldyBnLlF4KFcsInNlbnQgdmlhIG9mZmxpbmVfZXJyb3JzIik7RC5uYW1lPW5bV10ubmFtZTtELnN0YWNrPW5bV10uc3RhY2s7RC5sZXZlbD1uW1ddLmxldmVsO090KEQpfSRRKCkuc2V0KCJlcnJvcnMiLHt9LDI1OTJFMywhMCl9fX0pfVdHKCl7cmV0dXJuIHRoaXMuTi5XRygpfWxjKG4pe3RoaXMuTi5pc09ubGluZT1ufUxrKCl7dmFyIG49d2luZG93Lm5hdmlnYXRvci5vbkxpbmU7CnJldHVybiBuPT09dm9pZCAwPyEwOm59REgoKXt0aGlzLko9ITB9U18obixXKXtyZXR1cm4gdGhpcy5OLlNfKG4sVyl9aEoobil7cmV0dXJuIHJYKHRoaXMuTixuKX19O05iLnByb3RvdHlwZS5zZW5kTmV0d29ya0NoZWNrUmVxdWVzdD1OYi5wcm90b3R5cGUuaEo7TmIucHJvdG90eXBlLmxpc3Rlbj1OYi5wcm90b3R5cGUuU187TmIucHJvdG90eXBlLmVuYWJsZUVycm9yRmx1c2hpbmc9TmIucHJvdG90eXBlLkRIO05iLnByb3RvdHlwZS5nZXRXaW5kb3dTdGF0dXM9TmIucHJvdG90eXBlLkxrO05iLnByb3RvdHlwZS5uZXR3b3JrU3RhdHVzSGludD1OYi5wcm90b3R5cGUubGM7TmIucHJvdG90eXBlLmlzTmV0d29ya0F2YWlsYWJsZT1OYi5wcm90b3R5cGUuV0c7TmIuZ2V0SW5zdGFuY2U9cG07dmFyIGI2Wj1jbGFzcyBleHRlbmRzIGcub1d7Y29uc3RydWN0b3IoKXt2YXIgbj17dTI6ITAsRW86ITB9O3N1cGVyKCk7dGhpcy5OPXRoaXMuWD0wO3RoaXMuSj1wbSgpO3ZhciBXPWcucnIoInl0Lm5ldHdvcmtTdGF0dXNNYW5hZ2VyLmluc3RhbmNlLmxpc3RlbiIpLmJpbmQodGhpcy5KKTtXJiYobi5yYXRlTGltaXQ/KHRoaXMucmF0ZUxpbWl0PW4ucmF0ZUxpbWl0LFcoIm5ldHdvcmtzdGF0dXMtb25saW5lIiwoKT0+e1lRKHRoaXMsInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vbmxpbmUiKX0pLFcoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIsKCk9PntZUSh0aGlzLCJwdWJsaWN5dG5ldHdvcmtzdGF0dXMtb2ZmbGluZSIpfSkpOihXKCJuZXR3b3Jrc3RhdHVzLW9ubGluZSIsKCk9Pnt0aGlzLmRpc3BhdGNoRXZlbnQoInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vbmxpbmUiKX0pLFcoIm5ldHdvcmtzdGF0dXMtb2ZmbGluZSIsKCk9Pnt0aGlzLmRpc3BhdGNoRXZlbnQoInB1YmxpY3l0bmV0d29ya3N0YXR1cy1vZmZsaW5lIil9KSkpfVdHKCl7dmFyIG49CmcucnIoInl0Lm5ldHdvcmtTdGF0dXNNYW5hZ2VyLmluc3RhbmNlLmlzTmV0d29ya0F2YWlsYWJsZSIpOwpyZXR1cm4gbj9uLmJpbmQodGhpcy5KKSgpOiEwfWxjKG4pe3ZhciBXPWcucnIoInl0Lm5ldHdvcmtTdGF0dXNNYW5hZ2VyLmluc3RhbmNlLm5ldHdvcmtTdGF0dXNIaW50IikuYmluZCh0aGlzLkopO1cmJlcobil9YXN5bmMgaEoobil7dmFyIFc9Zy5ycigieXQubmV0d29ya1N0YXR1c01hbmFnZXIuaW5zdGFuY2Uuc2VuZE5ldHdvcmtDaGVja1JlcXVlc3QiKS5iaW5kKHRoaXMuSik7cmV0dXJuIGcubCgic2tpcF9uZXR3b3JrX2NoZWNrX2lmX2NmciIpJiZzYygpLmlzRW5kcG9pbnRDRlIoImdlbmVyYXRlXzIwNCIpP25ldyBQcm9taXNlKEQ9Pnt0aGlzLmxjKHdpbmRvdy5uYXZpZ2F0b3I/Lm9uTGluZXx8ITApO0QodGhpcy5XRygpKX0pOlc/VyhuKTohMH19O3ZhciBTYyxHemg9Y2xhc3MgZXh0ZW5kcyBEejF7Y29uc3RydWN0b3IoKXtTY3x8KFNjPW5ldyBiNlopO3N1cGVyKHtnRTp7dGk6dnZpLFRNOmJHQyxpNDpudjIsSzY6V19DLGhZOkRFeCxzZXQ6YUJTfSx5RzpTYyxoYW5kbGVFcnJvcjoobixXLEQpPT57dmFyIGI9RD8uZXJyb3I/LmNvZGU7Yj09PTQwMHx8Yj09PTQxNT8obj1uZXcgZy5ReChuLm1lc3NhZ2UsVyxEPy5lcnJvcj8uY29kZSksWkUobix2b2lkIDAsdm9pZCAwLHZvaWQgMCwhMCkpOk90KG4pfSwKRjI6WkUsTG06JEV0LG5vdzpnLlIsaEw6cUt3LEEkOmcuRHkoKSx1WjoicHVibGljeXRuZXR3b3Jrc3RhdHVzLW9ubGluZSIsTkE6InB1YmxpY3l0bmV0d29ya3N0YXR1cy1vZmZsaW5lIixDcjohMCxLcjouMSxIRjp2MCgicG90ZW50aWFsX2VzZl9lcnJvcl9saW1pdCIsMTApLEVxOmcubCxOaDohKFI5KCkmJmcuSVAoZG9jdW1lbnQubG9jYXRpb24udG9TdHJpbmcoKSkhPT0id3d3LnlvdXR1YmUtbm9jb29raWUuY29tIil9KTt0aGlzLmo9bmV3IGcuS1Y7Zy5sKCJuZXR3b3JrbGVzc19pbW1lZGlhdGVseV9kcm9wX2FsbF9yZXF1ZXN0cyIpJiZremkoKTt2eigiTG9nc0RhdGFiYXNlVjIiKX13cml0ZVRoZW5TZW5kKG4sVyl7V3x8KFc9e30pO1c9Zm0obixXKTtSOSgpfHwodGhpcy5OPSExKTtzdXBlci53cml0ZVRoZW5TZW5kKG4sVyl9c2VuZFRoZW5Xcml0ZShuLFcsRCl7V3x8KFc9e30pO1c9Zm0obixXKTtSOSgpfHwodGhpcy5OPSExKTtzdXBlci5zZW5kVGhlbldyaXRlKG4sVyxEKX1zZW5kQW5kV3JpdGUobiwKVyl7V3x8KFc9e30pO1c9Zm0obixXKTtSOSgpfHwodGhpcy5OPSExKTtzdXBlci5zZW5kQW5kV3JpdGUobixXKX1hd2FpdEluaXRpYWxpemF0aW9uKCl7cmV0dXJuIHRoaXMuai5wcm9taXNlfX07dmFyIEpJPWcucWkueXROZXR3b3JrbGVzc0xvZ2dpbmdJbml0aWFsaXphdGlvbk9wdGlvbnN8fHtpc053bEluaXRpYWxpemVkOiExfTtnLkdiKCJ5dE5ldHdvcmtsZXNzTG9nZ2luZ0luaXRpYWxpemF0aW9uT3B0aW9ucyIsSkkpO2cuZDQ9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5jb25maWdfPW51bGw7bj90aGlzLmNvbmZpZ189bjpJNygpJiYodGhpcy5jb25maWdfPWcuUzkoKSl9aXNSZWFkeSgpeyF0aGlzLmNvbmZpZ18mJkk3KCkmJih0aGlzLmNvbmZpZ189Zy5TOSgpKTtyZXR1cm4hIXRoaXMuY29uZmlnX319O3ZhciB2Z3c9Zy5xaS55dFB1YnN1YlB1YnN1Ykluc3RhbmNlfHxuZXcgQkssQUk9Zy5xaS55dFB1YnN1YlB1YnN1YlN1YnNjcmliZWRLZXlzfHx7fSxLbT1nLnFpLnl0UHVic3ViUHVic3ViVG9waWNUb0tleXN8fHt9LG1nPWcucWkueXRQdWJzdWJQdWJzdWJJc1N5bmNocm9ub3VzfHx7fTtCSy5wcm90b3R5cGUuc3Vic2NyaWJlPUJLLnByb3RvdHlwZS5zdWJzY3JpYmU7QksucHJvdG90eXBlLnVuc3Vic2NyaWJlQnlLZXk9QksucHJvdG90eXBlLmpLO0JLLnByb3RvdHlwZS5wdWJsaXNoPUJLLnByb3RvdHlwZS5XSjtCSy5wcm90b3R5cGUuY2xlYXI9QksucHJvdG90eXBlLmNsZWFyO2cuR2IoInl0UHVic3ViUHVic3ViSW5zdGFuY2UiLHZndyk7Zy5HYigieXRQdWJzdWJQdWJzdWJUb3BpY1RvS2V5cyIsS20pO2cuR2IoInl0UHVic3ViUHVic3ViSXNTeW5jaHJvbm91cyIsbWcpO2cuR2IoInl0UHVic3ViUHVic3ViU3Vic2NyaWJlZEtleXMiLEFJKTt2YXIgb0k9e307Zy5peChnLkZpLGcuRk0pO2cuRT1nLkZpLnByb3RvdHlwZTtnLkUuc3Vic2NyaWJlPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gdGhpcy5xTigpPzA6dGhpcy5ZJC5zdWJzY3JpYmUobixXLEQpfTsKZy5FLnVuc3Vic2NyaWJlPWZ1bmN0aW9uKG4sVyxEKXtyZXR1cm4gdGhpcy5xTigpPyExOnRoaXMuWSQudW5zdWJzY3JpYmUobixXLEQpfTsKZy5FLmpLPWZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLnFOKCk/ITE6dGhpcy5ZJC5qSyhuKX07CmcuRS5XSj1mdW5jdGlvbihuLFcpe3JldHVybiB0aGlzLnFOKCk/ITE6dGhpcy5ZJC5XSi5hcHBseSh0aGlzLlkkLGFyZ3VtZW50cyl9OwpnLkUuaCQ9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgaW4gbil0aGlzLnN1YnNjcmliZShELG5bRF0sVyl9OwpnLkUuTTk9ZnVuY3Rpb24obixXKXtmb3IobGV0IEQgaW4gbil0aGlzLnVuc3Vic2NyaWJlKEQsbltEXSxXKX07dmFyIHdvPURhdGUubm93KCkudG9TdHJpbmcoKTt2YXIgYnk9e307Zy5MWD1TeW1ib2woImluamVjdGlvbkRlcHMiKTt2YXIga289Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5rZXk9bn19O3ZhciBwSHI9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLko9bmV3IE1hcDt0aGlzLlc9bmV3IE1hcDt0aGlzLk49bmV3IE1hcH1yZXNvbHZlKG4pe3JldHVybiBuIGluc3RhbmNlb2Yga28/Z0UodGhpcyxuLmtleSxbXSwhMCk6Z0UodGhpcyxuLFtdKX19O2cuQUw9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5uYW1lPW59dG9TdHJpbmcoKXtyZXR1cm5gSW5qZWN0aW9uVG9rZW4oJHt0aGlzLm5hbWV9KWB9fTt2YXIgWDQ7dmFyIEdwPXdpbmRvdzt2YXIgZlg9Zy5sKCJ3ZWJfZW5hYmxlX2xpZmVjeWNsZV9tb25pdG9yaW5nIikmJnRwKCkhPT0wLEhHdD1nLmwoIndlYl9lbmFibGVfbGlmZWN5Y2xlX21vbml0b3JpbmciKTt2YXIgQXZqPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuc2NoZWR1bGVyPWcuRHkoKTt0aGlzLko9bmV3IGcuS1Y7dGhpcy5OPW47Zm9yKGxldCBXPTA7Vzx0aGlzLk4ubGVuZ3RoO1crKyl7bGV0IEQ9dGhpcy5OW1ddO249KCk9PntELkphKCk7dGhpcy5OW1ddLk1KPSEwO3RoaXMuTi5ldmVyeSh2PT52Lk1KPT09ITApJiZ0aGlzLkoucmVzb2x2ZSgpfTsKbGV0IGI9Zy5WeCgwLG4sRC5wcmlvcml0eT8/MCk7dGhpcy5OW1ddPXsuLi5ELEphOm4sam9iSWQ6Yn19fWNhbmNlbCgpe2ZvcihsZXQgbiBvZiB0aGlzLk4pbi5qb2JJZD09PXZvaWQgMHx8bi5NSnx8dGhpcy5zY2hlZHVsZXIuc08obi5qb2JJZCksbi5NSj0hMDt0aGlzLkoucmVzb2x2ZSgpfX07dmFyIGt4aD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuc3RhdGU9Im5vbmUiO3RoaXMucGx1Z2lucz1bXTt0aGlzLko9dm9pZCAwO3RoaXMuWD17fTtmWCYmJG8odGhpcy5zdGF0ZSl9Z2V0IGN1cnJlbnRTdGF0ZSgpe3JldHVybiB0aGlzLnN0YXRlfWluc3RhbGwobil7dGhpcy5wbHVnaW5zLnB1c2gobik7cmV0dXJuIHRoaXN9dW5pbnN0YWxsKC4uLm4pe24uZm9yRWFjaChXPT57Vz10aGlzLnBsdWdpbnMuaW5kZXhPZihXKTtXPi0xJiZ0aGlzLnBsdWdpbnMuc3BsaWNlKFcsMSl9KX10cmFuc2l0aW9uKG4sVyl7ZlgmJnJFKHRoaXMuc3RhdGUpOwp2YXIgRD10aGlzLnRyYW5zaXRpb25zLmZpbmQoYj0+QXJyYXkuaXNBcnJheShiLmZyb20pP2IuZnJvbS5maW5kKHY9PnY9PT10aGlzLnN0YXRlJiZiLnRvPT09bik6Yi5mcm9tPT09dGhpcy5zdGF0ZSYmYi50bz09PW4pOwppZihEKXt0aGlzLlcmJihZS2oodGhpcy5XKSx0aGlzLlc9dm9pZCAwKTtmUjIodGhpcyxuLFcpO3RoaXMuc3RhdGU9bjtmWCYmJG8odGhpcy5zdGF0ZSk7RD1ELmFjdGlvbi5iaW5kKHRoaXMpO2xldCBiPXRoaXMucGx1Z2lucy5maWx0ZXIodj0+dltuXSkubWFwKHY9PnZbbl0pOwpEKFNLQyh0aGlzLGIpLFcpfWVsc2UgdGhyb3cgRXJyb3IoYG5vIHRyYW5zaXRpb24gc3BlY2lmaWVkIGZyb20gJHt0aGlzLnN0YXRlfSB0byAke259YCk7fX07dmFyIG1Fdz1jbGFzcyBleHRlbmRzIGt4aHtjb25zdHJ1Y3Rvcigpe3N1cGVyKCk7dGhpcy5OPW51bGw7dGhpcy5KPTEwO3RoaXMudHJhbnNpdGlvbnM9W3tmcm9tOiJub25lIix0bzoiYXBwbGljYXRpb25fbmF2aWdhdGluZyIsYWN0aW9uOnRoaXMuan0se2Zyb206ImFwcGxpY2F0aW9uX25hdmlnYXRpbmciLHRvOiJub25lIixhY3Rpb246dGhpcy5WfSx7ZnJvbToiYXBwbGljYXRpb25fbmF2aWdhdGluZyIsdG86ImFwcGxpY2F0aW9uX25hdmlnYXRpbmciLGFjdGlvbjooKT0+e319LAp7ZnJvbToibm9uZSIsdG86Im5vbmUiLGFjdGlvbjooKT0+e319XX1qKG4sVyl7dGhpcy5OPWcuY0IoMCwoKT0+e3RoaXMuY3VycmVudFN0YXRlPT09ImFwcGxpY2F0aW9uX25hdmlnYXRpbmciJiZ0aGlzLnRyYW5zaXRpb24oIm5vbmUiKX0sNUUzKTsKbihXPy5ldmVudCl9VihuLFcpe3RoaXMuTiYmKHRhLnNPKHRoaXMuTiksdGhpcy5OPW51bGwpO24oVz8uZXZlbnQpfX0sSnA7dmFyIFV5PVtdO2cuR2IoInl0LmxvZ2dpbmcudHJhbnNwb3J0LmdldFNjcmFwZWRHZWxQYXlsb2FkcyIsZnVuY3Rpb24oKXtyZXR1cm4gVXl9KTt2YXIgbTM9dm9pZCAwLFNaPXZvaWQgMDt2YXIgb2I9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnN0b3JlPXt9O3RoaXMuTj17fX1zdG9yZVBheWxvYWQobixXKXtuPU85KG4pO3RoaXMuc3RvcmVbbl0/dGhpcy5zdG9yZVtuXS5wdXNoKFcpOih0aGlzLk49e30sdGhpcy5zdG9yZVtuXT1bV10pO2cubCgibW9yZV9hY2N1cmF0ZV9nZWxfcGFyc2VyIikmJihXPW5ldyBDdXN0b21FdmVudCgiVFJBTlNQT1JUSU5HX05FV19FVkVOVCIpLHdpbmRvdy5kaXNwYXRjaEV2ZW50KFcpKTtyZXR1cm4gbn1zbWFydEV4dHJhY3RNYXRjaGluZ0VudHJpZXMobil7aWYoIW4ua2V5cy5sZW5ndGgpcmV0dXJuW107dmFyIFc9WkEodGhpcyxuLmtleXMuc3BsaWNlKDAsMSlbMF0pLEQ9W107Zm9yKGxldCBiPTA7YjxXLmxlbmd0aDtiKyspdGhpcy5zdG9yZVtXW2JdXSYmbi5zaXplTGltaXQmJih0aGlzLnN0b3JlW1dbYl1dLmxlbmd0aDw9bi5zaXplTGltaXQ/KEQucHVzaCguLi50aGlzLnN0b3JlW1dbYl1dKSxkZWxldGUgdGhpcy5zdG9yZVtXW2JdXSk6CkQucHVzaCguLi50aGlzLnN0b3JlW1dbYl1dLnNwbGljZSgwLG4uc2l6ZUxpbWl0KSkpO24/LnNpemVMaW1pdCYmRC5sZW5ndGg8bj8uc2l6ZUxpbWl0JiYobi5zaXplTGltaXQtPUQubGVuZ3RoLEQucHVzaCguLi50aGlzLnNtYXJ0RXh0cmFjdE1hdGNoaW5nRW50cmllcyhuKSkpO3JldHVybiBEfWV4dHJhY3RNYXRjaGluZ0VudHJpZXMobil7bj1aQSh0aGlzLG4pO3ZhciBXPVtdO2ZvcihsZXQgRD0wO0Q8bi5sZW5ndGg7RCsrKXRoaXMuc3RvcmVbbltEXV0mJihXLnB1c2goLi4udGhpcy5zdG9yZVtuW0RdXSksZGVsZXRlIHRoaXMuc3RvcmVbbltEXV0pO3JldHVybiBXfWdldFNlcXVlbmNlQ291bnQobil7bj1aQSh0aGlzLG4pO3ZhciBXPTA7Zm9yKGxldCBEPTA7RDxuLmxlbmd0aDtEKyspVys9dGhpcy5zdG9yZVtuW0RdXT8ubGVuZ3RofHwwO3JldHVybiBXfX07b2IucHJvdG90eXBlLmdldFNlcXVlbmNlQ291bnQ9b2IucHJvdG90eXBlLmdldFNlcXVlbmNlQ291bnQ7Cm9iLnByb3RvdHlwZS5leHRyYWN0TWF0Y2hpbmdFbnRyaWVzPW9iLnByb3RvdHlwZS5leHRyYWN0TWF0Y2hpbmdFbnRyaWVzO29iLnByb3RvdHlwZS5zbWFydEV4dHJhY3RNYXRjaGluZ0VudHJpZXM9b2IucHJvdG90eXBlLnNtYXJ0RXh0cmFjdE1hdGNoaW5nRW50cmllcztvYi5wcm90b3R5cGUuc3RvcmVQYXlsb2FkPW9iLnByb3RvdHlwZS5zdG9yZVBheWxvYWQ7dmFyIHpfdD1uZXcgZy5BTCgiRmluY2hDb25maWdNYW5hZ2VyU2VydmljZSIpO3ZhciBVRXc9djAoImluaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXQiLDJFMyksWkdaPXYwKCJnZWxfcXVldWVfdGltZW91dF9tYXhfbXMiLDZFNCkseXZTPXYwKCJnZWxfbWluX2JhdGNoX3NpemUiLDUpLEU5PXZvaWQgMCx5Uj1udWxsLG1zPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5YPXRoaXMuSj10aGlzLlc9MDt0aGlzLk49ITF9fSxUZ2k9bmV3IG1zLGxSQz1uZXcgbXMsdDY9bmV3IG1zLEdVPW5ldyBtcyxXcywkQT0hMCxQcz0xLGx5PW5ldyBNYXAsZXk9Zy5xaS55dExvZ2dpbmdUcmFuc3BvcnRUb2tlbnNUb0N0dFRhcmdldElkc198fHt9O2cuR2IoInl0TG9nZ2luZ1RyYW5zcG9ydFRva2Vuc1RvQ3R0VGFyZ2V0SWRzXyIsZXkpO3ZhciBMVT1nLnFpLnl0TG9nZ2luZ1RyYW5zcG9ydFRva2Vuc1RvSnNwYkN0dFRhcmdldElkc198fHt9O2cuR2IoInl0TG9nZ2luZ1RyYW5zcG9ydFRva2Vuc1RvSnNwYkN0dFRhcmdldElkc18iLExVKTt2YXIgUmI9e30senA9ITE7dmFyIGlSPWcucWkueXRMb2dnaW5nR2VsU2VxdWVuY2VJZE9ial98fHt9O2cuR2IoInl0TG9nZ2luZ0dlbFNlcXVlbmNlSWRPYmpfIixpUik7dmFyIG0xPVtdO3ZhciBWNCxLaj1nLnFpLnl0TG9nZ2luZ0RvY0RvY3VtZW50Tm9uY2VfO0tqfHwoS2o9Zy5SSSgxNiksZy5HYigieXRMb2dnaW5nRG9jRG9jdW1lbnROb25jZV8iLEtqKSk7VjQ9S2o7dmFyIEZfVT17Qnc6MCxGNjoxLFdROjIsTjM6MyxxdDo0LFlTOjUsUWM6NixMTTo3LEk2Ojgsc0M6OSxaTToxMCxiUzoxMSwwOiJERUZBVUxUIiwxOiJDSEFUIiwyOiJDT05WRVJTQVRJT05TIiwzOiJNSU5JUExBWUVSIiw0OiJESUFMT0ciLDU6IlZPWiIsNjoiTVVTSUNfV0FUQ0hfVEFCUyIsNzoiU0hBUkUiLDg6IlBVU0hfTk9USUZJQ0FUSU9OUyIsOToiUklDSF9HUklEX1dBVENIIiwxMDoiUElDVFVSRV9JTl9QSUNUVVJFIiwxMToiTUVESUFfQ0xJRU5UIn07dmFyIGp6Wj0xLGxSPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuTj1ufWdldEFzSnNvbigpe3ZhciBuPXt9O3RoaXMuTi50cmFja2luZ1BhcmFtcyE9PXZvaWQgMD9uLnRyYWNraW5nUGFyYW1zPXRoaXMuTi50cmFja2luZ1BhcmFtczoobi52ZVR5cGU9dGhpcy5OLnZlVHlwZSx0aGlzLk4udmVDb3VudGVyIT09dm9pZCAwJiYobi52ZUNvdW50ZXI9dGhpcy5OLnZlQ291bnRlciksdGhpcy5OLmVsZW1lbnRJbmRleCE9PXZvaWQgMCYmKG4uZWxlbWVudEluZGV4PXRoaXMuTi5lbGVtZW50SW5kZXgpKTt0aGlzLk4uZGF0YUVsZW1lbnQhPT12b2lkIDAmJihuLmRhdGFFbGVtZW50PXRoaXMuTi5kYXRhRWxlbWVudC5nZXRBc0pzb24oKSk7dGhpcy5OLnlvdXR1YmVEYXRhIT09dm9pZCAwJiYobi55b3V0dWJlRGF0YT10aGlzLk4ueW91dHViZURhdGEpO3RoaXMuTi5pc0NvdW50ZXJmYWN0dWFsJiYobi5pc0NvdW50ZXJmYWN0dWFsPSEwKTtyZXR1cm4gbn1nZXRBc0pzcGIoKXt2YXIgbj1uZXcgcVlTOwp0aGlzLk4udHJhY2tpbmdQYXJhbXMhPT12b2lkIDA/bi5zZXRUcmFja2luZ1BhcmFtcyh0aGlzLk4udHJhY2tpbmdQYXJhbXMpOih0aGlzLk4udmVUeXBlIT09dm9pZCAwJiZveihuLDIsZy55UCh0aGlzLk4udmVUeXBlKSksdGhpcy5OLnZlQ291bnRlciE9PXZvaWQgMCYmb3oobiw2LGcueVAodGhpcy5OLnZlQ291bnRlcikpLHRoaXMuTi5lbGVtZW50SW5kZXghPT12b2lkIDAmJm96KG4sMyxnLnlQKHRoaXMuTi5lbGVtZW50SW5kZXgpKSx0aGlzLk4uaXNDb3VudGVyZmFjdHVhbCYmb3oobiw1LE9fKCEwKSkpO2lmKHRoaXMuTi5kYXRhRWxlbWVudCE9PXZvaWQgMCl7dmFyIFc9dGhpcy5OLmRhdGFFbGVtZW50LmdldEFzSnNwYigpOyQ5KG4scVlTLDcsVyl9dGhpcy5OLnlvdXR1YmVEYXRhIT09dm9pZCAwJiYkOShuLGU0dyw4LHRoaXMuTi5qc3BiWW91dHViZURhdGEpO3JldHVybiBufXRvU3RyaW5nKCl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMuZ2V0QXNKc29uKCkpfWlzQ2xpZW50VmUoKXtyZXR1cm4hdGhpcy5OLnRyYWNraW5nUGFyYW1zJiYKISF0aGlzLk4udmVUeXBlfWdldExvZ2dpbmdEaXJlY3RpdmVzKCl7cmV0dXJuIHRoaXMuTi5sb2dnaW5nRGlyZWN0aXZlc319O2cuR2IoInl0X2xvZ2dpbmdfc2NyZWVuLmdldFJvb3RWZVR5cGUiLEZSKTtnLkdiKCJ5dF9sb2dnaW5nX3NjcmVlbi5nZXRDdXJyZW50Q3NuIixnLlJ2KTtnLkdiKCJ5dF9sb2dnaW5nX3NjcmVlbi5nZXRDdHRBdXRoSW5mbyIsUTQpO2cuR2IoInl0X2xvZ2dpbmdfc2NyZWVuLnNldEN1cnJlbnRTY3JlZW4iLGNzKTt2YXIgUl9NPSJhYnNvbHV0ZV9leHBlcmltZW50cyBhcHAgY29uZGl0aW9uYWxfZXhwZXJpbWVudHMgZGVidWdjc3MgZGVidWdqcyBleHBmbGFnIGZvcmNlZF9leHBlcmltZW50cyBwYmogcGJqcmVsb2FkIHNiYiBzcGYgc3BmcmVsb2FkIHNyX2Juc19hZGRyZXNzIHN0dGljayIuc3BsaXQoIiAiKTt2YXIgayRiPVt7RzE6bj0+YENhbm5vdCByZWFkIHByb3BlcnR5ICcke24ua2V5fSdgLApZejp7RXJyb3I6W3t3YjovKFBlcm1pc3Npb24gZGVuaWVkKSB0byBhY2Nlc3MgcHJvcGVydHkgIihbXiddKykiLyxncm91cHM6WyJyZWFzb24iLCJrZXkiXX1dLFR5cGVFcnJvcjpbe3diOi9DYW5ub3QgcmVhZCBwcm9wZXJ0eSAnKFteJ10rKScgb2YgKG51bGx8dW5kZWZpbmVkKS8sZ3JvdXBzOlsia2V5IiwidmFsdWUiXX0se3diOi9cdTY1ZTBcdTZjZDVcdTgzYjdcdTUzZDZcdTY3MmFcdTViOWFcdTRlNDlcdTYyMTYgKG51bGx8dW5kZWZpbmVkKSBcdTVmMTVcdTc1MjhcdTc2ODRcdTVjNWVcdTYwMjdcdTIwMWMoW15cdTIwMWRdKylcdTIwMWQvLGdyb3VwczpbInZhbHVlIiwia2V5Il19LHt3YjovXHVjODE1XHVjNzU4XHViNDE4XHVjOWMwIFx1YzU0YVx1Yzc0YyBcdWI2MTBcdWIyOTQgKG51bGx8dW5kZWZpbmVkKSBcdWNjMzhcdWM4NzBcdWM3NzggJyhbXiddKyknIFx1YzE4ZFx1YzEzMVx1Yzc0NCBcdWFjMDBcdWM4MzhcdWM2MmMgXHVjMjE4IFx1YzVjNlx1YzJiNVx1YjJjOFx1YjJlNC4vLApncm91cHM6WyJ2YWx1ZSIsImtleSJdfSx7d2I6L05vIHNlIHB1ZWRlIG9idGVuZXIgbGEgcHJvcGllZGFkICcoW14nXSspJyBkZSByZWZlcmVuY2lhIG51bGEgbyBzaW4gZGVmaW5pci8sZ3JvdXBzOlsia2V5Il19LHt3YjovVW5hYmxlIHRvIGdldCBwcm9wZXJ0eSAnKFteJ10rKScgb2YgKHVuZGVmaW5lZCBvciBudWxsKSByZWZlcmVuY2UvLGdyb3VwczpbImtleSIsInZhbHVlIl19LHt3YjovKG51bGwpIGlzIG5vdCBhbiBvYmplY3QgXChldmFsdWF0aW5nICcoPzooW14uXSspXC4pPyhbXiddKyknXCkvLGdyb3VwczpbInZhbHVlIiwiYmFzZSIsImtleSJdfV19fSx7RzE6bj0+YENhbm5vdCBjYWxsICcke24ua2V5fSdgLApZejp7VHlwZUVycm9yOlt7d2I6Lyg/OihbXiBdKyk/XC4pPyhbXiBdKykgaXMgbm90IGEgZnVuY3Rpb24vLGdyb3VwczpbImJhc2UiLCJrZXkiXX0se3diOi8oW14gXSspIGNhbGxlZCBvbiAobnVsbCBvciB1bmRlZmluZWQpLyxncm91cHM6WyJrZXkiLCJ2YWx1ZSJdfSx7d2I6L09iamVjdCAoLiopIGhhcyBubyBtZXRob2QgJyhbXiBdKyknLyxncm91cHM6WyJiYXNlIiwia2V5Il19LHt3YjovT2JqZWN0IGRvZXNuJ3Qgc3VwcG9ydCBwcm9wZXJ0eSBvciBtZXRob2QgJyhbXiBdKyknLyxncm91cHM6WyJrZXkiXX0se3diOi9cdTMwYWFcdTMwZDZcdTMwYjhcdTMwYTdcdTMwYWZcdTMwYzhcdTMwNmYgJyhbXiddKyknIFx1MzBkN1x1MzBlZFx1MzBkMVx1MzBjNlx1MzBhM1x1MzA3ZVx1MzA1Zlx1MzA2Zlx1MzBlMVx1MzBiZFx1MzBjM1x1MzBjOVx1MzA5Mlx1MzBiNVx1MzBkZFx1MzBmY1x1MzBjOFx1MzA1N1x1MzA2Nlx1MzA0NFx1MzA3ZVx1MzA1Ylx1MzA5My8sZ3JvdXBzOlsia2V5Il19LAp7d2I6L1x1YWMxY1x1Y2NiNFx1YWMwMCAnKFteJ10rKScgXHVjMThkXHVjMTMxXHVjNzc0XHViMDk4IFx1YmE1NFx1YzExY1x1YjRkY1x1Yjk3YyBcdWM5YzBcdWM2ZDBcdWQ1NThcdWM5YzAgXHVjNTRhXHVjMmI1XHViMmM4XHViMmU0Li8sZ3JvdXBzOlsia2V5Il19XX19LHtHMTpuPT5gJHtuLmtleX0gaXMgbm90IGRlZmluZWRgLApZejp7UmVmZXJlbmNlRXJyb3I6W3t3YjovKC4qKSBpcyBub3QgZGVmaW5lZC8sZ3JvdXBzOlsia2V5Il19LHt3YjovQ2FuJ3QgZmluZCB2YXJpYWJsZTogKC4qKS8sZ3JvdXBzOlsia2V5Il19XX19XTt2YXIgYVJTPXtOOTpbXSxrbzpbe2NhbGxiYWNrOlF6MSx3ZWlnaHQ6NTAwfSx7Y2FsbGJhY2s6Vld4LHdlaWdodDo1MDB9XX07dmFyIGN2aD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMua289W107dGhpcy5OOT1bXX19LHZhO3ZhciBTaT1uZXcgQks7dmFyIElVPW5ldyBTZXQsdFA9MCx4SE09MCxBUD0wLHY5Mj1bXSxibjI9W10sTE5DPVsiUGhhbnRvbUpTIiwiR29vZ2xlYm90IiwiVE8gU1RPUCBUSElTIFNFQ1VSSVRZIFNDQU4gZ28vc2NhbiJdO0RhdGUubm93KCk7dmFyIFpwPWNsYXNzIGV4dGVuZHMgbzd7Y29uc3RydWN0b3Iobil7c3VwZXIoYXJndW1lbnRzKTt0aGlzLmNzbj1ufX0sVG89bmV3IGQzKCJzY3JlZW4tY3JlYXRlZCIsWnApLEM0PVtdLGVUaD1HJGosQmE9MCxVYT1uZXcgTWFwLHk1PW5ldyBNYXAsRWE9bmV3IE1hcDt2YXIgaHIyPWNsYXNze2ZsdXNoKG49W10sVz0hMSl7aWYoZy5sKCJlbmFibGVfY2xpZW50X3N0cmVhbXpfd2ViIikpZm9yKGxldCBEIG9mIG4pbj11NihEKSx0aGlzLk4mJiQ5KG4sT2l4LDIsdGhpcy5OKSxuPXtzZXJpYWxpemVkSW5jcmVtZW50QmF0Y2g6Zy5FQShuLkooKSl9LGcuelUoInN0cmVhbXpJbmNyZW1lbnRlZCIsbix7c2VuZElzb2xhdGVkUGF5bG9hZDpXfSl9fSxYbkM9Y2xhc3MgZXh0ZW5kcyBocjJ7Y29uc3RydWN0b3IoKXtzdXBlcigpfX0sU0hpPWNsYXNzIGV4dGVuZHMgaHIye2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dmFyIFc9bmV3IE9peDt2YXIgRD1uZXcgS1VDO0Q9Zy5TRShELDEsImJvdGd1YXJkIik7bj1nLlNFKEQsMixuKTt0aGlzLk49cmUoVyxLVUMsMSxQWmgsbil9fTt2YXIgVnAsSU0yPW5ldyBNYXA7dmFyIFQkYj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bmV3IFFLKG4pfXNldChuLFcsRCl7RD1EIT09dm9pZCAwP0RhdGUubm93KCkrRDp2b2lkIDA7dGhpcy5OLnNldChuLFcsRCl9Z2V0KG4pe3JldHVybiB0aGlzLk4uZ2V0KG4pfXJlbW92ZShuKXt0aGlzLk4ucmVtb3ZlKG4pfX07dmFyIHJTaD1udWxsO3ZhciBzbz0idG9rZW5zIGNvbnNpc3RlbmN5IHNlcnZpY2VfcGFyYW1zIG1zcyBjbGllbnRfbG9jYXRpb24gZW50aXRpZXMgYWRibG9ja19kZXRlY3Rpb24gcmVzcG9uc2VfcmVjZWl2ZWRfY29tbWFuZHMgc3RvcmUgbWFuaWZlc3QgcGxheWVyX3ByZWxvYWQgc2hvcnRzX3ByZWZldGNoIHJlc29sdmVfdXJsX3ByZWZldGNoIi5zcGxpdCgiICIpO3ZhciBzWVU9bmV3IE1hcChbWyJkYXJrIiwiVVNFUl9JTlRFUkZBQ0VfVEhFTUVfREFSSyJdLFsibGlnaHQiLCJVU0VSX0lOVEVSRkFDRV9USEVNRV9MSUdIVCJdXSk7dmFyIERNPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5OPXt9O2lmKHRoaXMuSj1nLm1qKCkpe2xldCBuPWcuU2QoIkNPTlNJU1RFTkNZIik7biYmYVUodGhpcyx7ZW5jcnlwdGVkVG9rZW5KYXJDb250ZW50czpufSl9fWhhbmRsZVJlc3BvbnNlKG4sVyl7aWYoIVcpdGhyb3cgRXJyb3IoInJlcXVlc3QgbmVlZHMgdG8gYmUgcGFzc2VkIGludG8gQ29uc2lzdGVuY3lTZXJ2aWNlIik7Vz1XLmlubmVyVHViZVJlcXVlc3QuY29udGV4dD8ucmVxdWVzdD8uY29uc2lzdGVuY3lUb2tlbkphcnN8fFtdOyhuPW4ucmVzcG9uc2VDb250ZXh0Py5jb25zaXN0ZW5jeVRva2VuSmFyKSYmdGhpcy5yZXBsYWNlKFcsbil9cmVwbGFjZShuLFcpe2ZvcihsZXQgRCBvZiBuKWRlbGV0ZSB0aGlzLk5bRC5lbmNyeXB0ZWRUb2tlbkphckNvbnRlbnRzXTthVSh0aGlzLFcpfX07dmFyIHh6cj13aW5kb3cubG9jYXRpb24uaG9zdG5hbWUuc3BsaXQoIi4iKS5zbGljZSgtMikuam9pbigiLiIpLGIkPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5XPS0xO3ZhciBuPWcuQXIoIkxPQ0FUSU9OX1BMQVlBQklMSVRZX1RPS0VOIik7Zy5BcigiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIik9PT0iVFZIVE1MNSImJih0aGlzLmxvY2FsU3RvcmFnZT1uQih0aGlzKSkmJihuPXRoaXMubG9jYWxTdG9yYWdlLmdldCgieXQtbG9jYXRpb24tcGxheWFiaWxpdHktdG9rZW4iKSk7biYmKHRoaXMubG9jYXRpb25QbGF5YWJpbGl0eVRva2VuPW4sdGhpcy5KPXRoaXMuTj12b2lkIDApfXN0YXRpYyBnZXRJbnN0YW5jZSgpe09DPWcucnIoInl0LmNsaWVudExvY2F0aW9uU2VydmljZS5pbnN0YW5jZSIpO09DfHwoT0M9bmV3IGIkLGcuR2IoInl0LmNsaWVudExvY2F0aW9uU2VydmljZS5pbnN0YW5jZSIsT0MpKTtyZXR1cm4gT0N9c2V0TG9jYXRpb25PbklubmVyVHViZUNvbnRleHQobil7bi5jbGllbnR8fAoobi5jbGllbnQ9e30pO2lmKHRoaXMuTiluLmNsaWVudC5sb2NhdGlvbkluZm98fChuLmNsaWVudC5sb2NhdGlvbkluZm89e30pLG4uY2xpZW50LmxvY2F0aW9uSW5mby5sYXRpdHVkZUU3PU1hdGguZmxvb3IodGhpcy5OLmNvb3Jkcy5sYXRpdHVkZSoxRTcpLG4uY2xpZW50LmxvY2F0aW9uSW5mby5sb25naXR1ZGVFNz1NYXRoLmZsb29yKHRoaXMuTi5jb29yZHMubG9uZ2l0dWRlKjFFNyksbi5jbGllbnQubG9jYXRpb25JbmZvLmhvcml6b250YWxBY2N1cmFjeU1ldGVycz1NYXRoLnJvdW5kKHRoaXMuTi5jb29yZHMuYWNjdXJhY3kpLG4uY2xpZW50LmxvY2F0aW9uSW5mby5mb3JjZUxvY2F0aW9uUGxheWFiaWxpdHlUb2tlblJlZnJlc2g9ITA7ZWxzZSBpZih0aGlzLlh8fHRoaXMubG9jYXRpb25QbGF5YWJpbGl0eVRva2VuKW4uY2xpZW50LmxvY2F0aW9uUGxheWFiaWxpdHlUb2tlbj10aGlzLlh8fHRoaXMubG9jYXRpb25QbGF5YWJpbGl0eVRva2VufWdldFhHZW9IZWFkZXIoKXtpZih0aGlzLkope3ZhciBuPQp0aGlzLko7dmFyIFc9TWF0aC5mbG9vcihuLmNvb3Jkcy5sb25naXR1ZGUqMUU3KTt2YXIgRD1NYXRoLmZsb29yKG4uY29vcmRzLmxhdGl0dWRlKjFFNyk7dmFyIGI9bmV3IGpyMjtEPW96KGIsMSxnLnlQKEQpKTtXPW96KEQsMixnLnlQKFcpKTtEPW5ldyBCRnQ7RD1LbihELDEsMSk7RD1LbihELDIsMTIpO0Q9S24oRCw5LDgpO0Q9SVkoRCwzLG4udGltZXN0YW1wKjFFMyk7bj1veihELDcsZy5BXyhuLmNvb3Jkcy5hY2N1cmFjeSoxRTMpKTtuPUtuKG4sMjUsMik7bj0kOShuLGpyMiw1LFcpO249YHcgJHtnLkVBKEZGaShuKSw0KX1gfWVsc2Ugbj1udWxsO3JldHVybiBufWhhbmRsZVJlc3BvbnNlKG4pe249bi5yZXNwb25zZUNvbnRleHQ/LmxvY2F0aW9uUGxheWFiaWxpdHlUb2tlbjtuIT09dm9pZCAwJiYodGhpcy5sb2NhdGlvblBsYXlhYmlsaXR5VG9rZW49bix0aGlzLko9dGhpcy5OPXZvaWQgMCxnLkFyKCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJUVkhUTUw1Ij8odGhpcy5sb2NhbFN0b3JhZ2U9Cm5CKHRoaXMpKSYmdGhpcy5sb2NhbFN0b3JhZ2Uuc2V0KCJ5dC1sb2NhdGlvbi1wbGF5YWJpbGl0eS10b2tlbiIsbiwxNTU1MkUzKTpJSygiWVRfQ0wiLEpTT04uc3RyaW5naWZ5KHtsb2N0b2s6bn0pLDE1NTUyRTMseHpyLCEwKSl9Y2xlYXJMb2NhdGlvblBsYXlhYmlsaXR5VG9rZW4obil7bj09PSJUVkhUTUw1Ij8odGhpcy5sb2NhbFN0b3JhZ2U9bkIodGhpcykpJiZ0aGlzLmxvY2FsU3RvcmFnZS5yZW1vdmUoInl0LWxvY2F0aW9uLXBsYXlhYmlsaXR5LXRva2VuIik6QXkoIllUX0NMIik7dGhpcy5YPXZvaWQgMDt0aGlzLlchPT0tMSYmKGNsZWFyVGltZW91dCh0aGlzLlcpLHRoaXMuVz0tMSl9Y2xlYXJDdXJyZW50UG9zaXRpb24oKXt0aGlzLko9dGhpcy5OPXZvaWQgMH1nZXRDdXJyZW50UG9zaXRpb25Gcm9tR2VvbG9jYXRpb24obil7aWYoIShuYXZpZ2F0b3ImJm5hdmlnYXRvci5nZW9sb2NhdGlvbiYmbmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbikpcmV0dXJuIFByb21pc2UucmVqZWN0KEVycm9yKCJHZW9sb2NhdGlvbiB1bnN1cHBvcnRlZCIpKTsKdmFyIFc9ITEsRD0xRTQ7Zy5BcigiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIik9PT0iTVdFQiImJihXPSEwLEQ9MTVFMyk7cmV0dXJuIG5ldyBQcm9taXNlKChiLHYpPT57bmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihrPT57dGhpcy5KPW4/LmFkZFRvSGVhZGVycz9rOnZvaWQgMDt0aGlzLk49aztiKGspfSxrPT57dihrKX0se2VuYWJsZUhpZ2hBY2N1cmFjeTpXLAptYXhpbXVtQWdlOjAsdGltZW91dDpEfSl9KX1jcmVhdGVVbnBsdWdnZWRMb2NhdGlvbkluZm8obil7dmFyIFc9e307Cm49bi5jb29yZHM7bj8ubGF0aXR1ZGUmJihXLmxhdGl0dWRlRTc9TWF0aC5mbG9vcihuLmxhdGl0dWRlKjFFNykpO24/LmxvbmdpdHVkZSYmKFcubG9uZ2l0dWRlRTc9TWF0aC5mbG9vcihuLmxvbmdpdHVkZSoxRTcpKTtuPy5hY2N1cmFjeSYmKFcubG9jYXRpb25SYWRpdXNNZXRlcnM9TWF0aC5yb3VuZChuLmFjY3VyYWN5KSk7cmV0dXJuIFd9Y3JlYXRlTG9jYXRpb25JbmZvKG4pe3ZhciBXPXt9O249bi5jb29yZHM7bj8ubGF0aXR1ZGUmJihXLmxhdGl0dWRlRTc9TWF0aC5mbG9vcihuLmxhdGl0dWRlKjFFNykpO24/LmxvbmdpdHVkZSYmKFcubG9uZ2l0dWRlRTc9TWF0aC5mbG9vcihuLmxvbmdpdHVkZSoxRTcpKTtyZXR1cm4gV319LE9DO3ZhciBMSHI9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLk49e319Y29udGFpbnMobil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLk4sbil9Z2V0KG4pe2lmKHRoaXMuY29udGFpbnMobikpcmV0dXJuIHRoaXMuTltuXX1zZXQobixXKXt0aGlzLk5bbl09V311Qigpe3JldHVybiBPYmplY3Qua2V5cyh0aGlzLk4pfXJlbW92ZShuKXtkZWxldGUgdGhpcy5OW25dfX07bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5tYXBwaW5ncz1uZXcgTEhyfWdldChuKXthOnt2YXIgVz10aGlzLm1hcHBpbmdzLmdldChuLnRvU3RyaW5nKCkpO3N3aXRjaChXLnR5cGUpe2Nhc2UgIm1hcHBpbmciOm49Vy52YWx1ZTticmVhayBhO2Nhc2UgImZhY3RvcnkiOlc9Vy52YWx1ZSgpO3RoaXMubWFwcGluZ3Muc2V0KG4udG9TdHJpbmcoKSx7dHlwZToibWFwcGluZyIsdmFsdWU6V30pO249VzticmVhayBhO2RlZmF1bHQ6bj1nLnBiKFcsdm9pZCAwKX19cmV0dXJuIG59fTt2YXIgeFY9e1dFQl9VTlBMVUdHRUQ6Il51bnBsdWdnZWQvIixXRUJfVU5QTFVHR0VEX09OQk9BUkRJTkc6Il51bnBsdWdnZWQvIixXRUJfVU5QTFVHR0VEX09QUzoiXnVucGx1Z2dlZC8iLFdFQl9VTlBMVUdHRURfUFVCTElDOiJedW5wbHVnZ2VkLyIsV0VCX0NSRUFUT1I6Il5jcmVhdG9yLyIsV0VCX0tJRFM6Il5raWRzLyIsV0VCX0VYUEVSSU1FTlRTOiJeZXhwZXJpbWVudHMvIixXRUJfTVVTSUM6Il5tdXNpYy8iLFdFQl9SRU1JWDoiXm11c2ljLyIsV0VCX01VU0lDX0VNQkVEREVEX1BMQVlFUjoiXm11c2ljLyIsV0VCX01VU0lDX0VNQkVEREVEX1BMQVlFUjoiXm1haW5fYXBwL3xec2Z2LyJ9O3ZhciBlcjE9Y2xhc3N7RChuLFc9e30sRD11OSl7dmFyIGI9e2NvbnRleHQ6dGhpcy5PKCk/Zy52YihuLmNsaWNrVHJhY2tpbmdQYXJhbXMsITAsITEsZy53KG4/LmNvbW1hbmRNZXRhZGF0YSxwaik/LnVybCx0aGlzLksoVykpOmcudmIobi5jbGlja1RyYWNraW5nUGFyYW1zLCExLHRoaXMuail9O3ZhciB2PXRoaXMuTihuKTtpZih2KXt0aGlzLkooYix2LFcpO3Y9TEIodGhpcy5XKCkpO3ZhciBrPWcudyhuLmNvbW1hbmRNZXRhZGF0YSxwaik/LmFwaVVybDtrJiYodj1rKTt2PVpyKEskKHYpKTtrPXtjb21tYW5kOm4sLi4udGhpcy5WKG4pfTtiPXtpbnB1dDp2LFBpOlV6KHYpLGlubmVyVHViZVJlcXVlc3Q6Yixjb25maWc6a307Yi5jb25maWcuQkc/Yi5jb25maWcuQkcuaWRlbnRpdHk9RDpiLmNvbmZpZy5CRz17aWRlbnRpdHk6RH07KG49dGhpcy5ZKG4pKSYmIWIuY29uZmlnLnJlcXVlc3RLZXkmJihiLmNvbmZpZy5yZXF1ZXN0S2V5PW4pO1cuYWJvcnRTaWduYWwmJihiLlBpLnNpZ25hbD0KVy5hYm9ydFNpZ25hbCk7cmV0dXJuIGJ9Vz1uZXcgZy5ReCgiRXJyb3I6IEZhaWxlZCB0byBjcmVhdGUgUmVxdWVzdCBmcm9tIENvbW1hbmQuIixuKTtnLlhqKFcpfU8oKXtyZXR1cm4hMX1nZXQgaigpe3JldHVybiExfUsoKXt9WSgpe31WKCl7fX0sUEM9Y2xhc3MgZXh0ZW5kcyBlcjF7WCgpe31ZKG4pe2cubCgid2ViX2VuYWJsZV9yZXF1ZXN0X2tleV9raWxsc3dpdGNoIikmJnRoaXMuWChuKTtyZXR1cm4gZy53KG4uY29tbWFuZE1ldGFkYXRhLHBqKT8ucmVxdWVzdEtleT8/dGhpcy5YKG4pfX07dmFyIGdnMT17R0VUX0RBVEFTWU5DX0lEUzpobShjbGFzcyBleHRlbmRzIFBDe0QoKXtyZXR1cm57aW5wdXQ6Ii9nZXREYXRhc3luY0lkc0VuZHBvaW50IixQaTpVeigiL2dldERhdGFzeW5jSWRzRW5kcG9pbnQiLCJHRVQiKSxpbm5lclR1YmVSZXF1ZXN0Ont9fX1XKCl7cmV0dXJuW119Tigpe31KKCl7fX0pfTt2YXIgd189bmV3IGcuQUwoIlJFUVVFU1RfTUFDSElORV9SRUdJU1RSWV9UT0tFTiIpLCREPW5ldyBnLkFMKCJSRVFVRVNUX01BQ0hJTkVfRkFDVE9SWV9UT0tFTiIpLGlkPW5ldyBnLkFMKCJJTkZMSUdIVF9SRVFVRVNUX01BUF9UT0tFTiIpO3ZhciBOUT12MCgieXRjc2lfZGVidWdfbWF4X3NpemUiLDEwMCk7dmFyIEptPXthdXRvX3NlYXJjaDoiTEFURU5DWV9BQ1RJT05fQVVUT19TRUFSQ0giLGFkX3RvX2FkOiJMQVRFTkNZX0FDVElPTl9BRF9UT19BRCIsYWRfdG9fdmlkZW86IkxBVEVOQ1lfQUNUSU9OX0FEX1RPX1ZJREVPIixhcHBfc3RhcnR1cDoiTEFURU5DWV9BQ1RJT05fQVBQX1NUQVJUVVAiLGJyb3dzZToiTEFURU5DWV9BQ1RJT05fQlJPV1NFIixjYXN0X3NwbGFzaDoiTEFURU5DWV9BQ1RJT05fQ0FTVF9TUExBU0giLGNhbGxfdG9fY2FzdDoiTEFURU5DWV9BQ1RJT05fQ0FMTF9UT19DQVNUIixjaGFubmVsX2FjdGl2aXR5OiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX0NIQU5ORUxfQUNUSVZJVFkiLGNoYW5uZWxzOiJMQVRFTkNZX0FDVElPTl9DSEFOTkVMUyIsY2hpcHM6IkxBVEVOQ1lfQUNUSU9OX0NISVBTIixjb21tZXJjZV90cmFuc2FjdGlvbjoiTEFURU5DWV9BQ1RJT05fQ09NTUVSQ0VfVFJBTlNBQ1RJT04iLGRpcmVjdF9wbGF5YmFjazoiTEFURU5DWV9BQ1RJT05fRElSRUNUX1BMQVlCQUNLIiwKZWRpdG9yOiJMQVRFTkNZX0FDVElPTl9FRElUT1IiLGVtYmVkOiJMQVRFTkNZX0FDVElPTl9FTUJFRCIsZW1iZWRfbm9fdmlkZW86IkxBVEVOQ1lfQUNUSU9OX0VNQkVEX05PX1ZJREVPIixlbnRpdHlfa2V5X3NlcmlhbGl6YXRpb25fcGVyZjoiTEFURU5DWV9BQ1RJT05fRU5USVRZX0tFWV9TRVJJQUxJWkFUSU9OX1BFUkYiLGVudGl0eV9rZXlfZGVzZXJpYWxpemF0aW9uX3BlcmY6IkxBVEVOQ1lfQUNUSU9OX0VOVElUWV9LRVlfREVTRVJJQUxJWkFUSU9OX1BFUkYiLGV4cGxvcmU6IkxBVEVOQ1lfQUNUSU9OX0VYUExPUkUiLGZhdm9yaXRlczoiTEFURU5DWV9BQ1RJT05fRkFWT1JJVEVTIixob21lOiJMQVRFTkNZX0FDVElPTl9IT01FIixpbmJvYXJkaW5nOiJMQVRFTkNZX0FDVElPTl9JTkJPQVJESU5HIixsYW5kaW5nOiJMQVRFTkNZX0FDVElPTl9MQU5ESU5HIixsZWFybmluZzoiTEFURU5DWV9BQ1RJT05fTEVBUk5JTkciLGxlYXJuaW5nX2pvdXJuZXlfYnJvd3NlOiJMQVRFTkNZX0FDVElPTl9MRUFSTklOR19KT1VSTkVZX0JST1dTRSIsCmxlYXJuaW5nX2pvdXJuZXlfd2F0Y2g6IkxBVEVOQ1lfQUNUSU9OX0xFQVJOSU5HX0pPVVJORVlfV0FUQ0giLGxpYnJhcnk6IkxBVEVOQ1lfQUNUSU9OX0xJQlJBUlkiLGxpdmU6IkxBVEVOQ1lfQUNUSU9OX0xJVkUiLGxpdmVfcGFnaW5hdGlvbjoiTEFURU5DWV9BQ1RJT05fTElWRV9QQUdJTkFUSU9OIixtYW5hZ2VtZW50OiJMQVRFTkNZX0FDVElPTl9NQU5BR0VNRU5UIixtaW5pX2FwcDoiTEFURU5DWV9BQ1RJT05fTUlOSV9BUFBfUExBWSIsbm90aWZpY2F0aW9uX3NldHRpbmdzOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX05PVElGSUNBVElPTl9TRVRUSU5HUyIsb25ib2FyZGluZzoiTEFURU5DWV9BQ1RJT05fT05CT0FSRElORyIscGFyZW50X3Byb2ZpbGVfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0tJRFNfUEFSRU5UX1BST0ZJTEVfU0VUVElOR1MiLHBhcmVudF90b29sc19jb2xsZWN0aW9uOiJMQVRFTkNZX0FDVElPTl9QQVJFTlRfVE9PTFNfQ09MTEVDVElPTiIscGFyZW50X3Rvb2xzX2Rhc2hib2FyZDoiTEFURU5DWV9BQ1RJT05fUEFSRU5UX1RPT0xTX0RBU0hCT0FSRCIsCnBsYXllcl9hdHQ6IkxBVEVOQ1lfQUNUSU9OX1BMQVlFUl9BVFRFU1RBVElPTiIscHJlYnVmZmVyOiJMQVRFTkNZX0FDVElPTl9QUkVCVUZGRVIiLHByZWZldGNoOiJMQVRFTkNZX0FDVElPTl9QUkVGRVRDSCIscHJvZmlsZV9zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fS0lEU19QUk9GSUxFX1NFVFRJTkdTIixwcm9maWxlX3N3aXRjaGVyOiJMQVRFTkNZX0FDVElPTl9MT0dJTiIscHJvamVjdHM6IkxBVEVOQ1lfQUNUSU9OX1BST0pFQ1RTIixyZWVsX3dhdGNoOiJMQVRFTkNZX0FDVElPTl9SRUVMX1dBVENIIixyZXN1bHRzOiJMQVRFTkNZX0FDVElPTl9SRVNVTFRTIixyZWQ6IkxBVEVOQ1lfQUNUSU9OX1BSRU1JVU1fUEFHRV9HRVRfQlJPV1NFIixwcmVtaXVtOiJMQVRFTkNZX0FDVElPTl9QUkVNSVVNX1BBR0VfR0VUX0JST1dTRSIscHJlbWl1bV9saXRlX3Vwc2VsbDoiTEFURU5DWV9BQ1RJT05fUFJFTUlVTV9MSVRFX1VQU0VMTCIscHJpdmFjeV9wb2xpY3k6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfUFJJVkFDWV9QT0xJQ1kiLApyZXZpZXc6IkxBVEVOQ1lfQUNUSU9OX1JFVklFVyIsc2VhcmNoX292ZXJ2aWV3X2Fuc3dlcjoiTEFURU5DWV9BQ1RJT05fU0VBUkNIX09WRVJWSUVXX0FOU1dFUiIsc2VhcmNoX3VpOiJMQVRFTkNZX0FDVElPTl9TRUFSQ0hfVUkiLHNlYXJjaF9zdWdnZXN0OiJMQVRFTkNZX0FDVElPTl9TVUdHRVNUIixzZWFyY2hfemVyb19zdGF0ZToiTEFURU5DWV9BQ1RJT05fU0VBUkNIX1pFUk9fU1RBVEUiLHNlY3JldF9jb2RlOiJMQVRFTkNZX0FDVElPTl9LSURTX1NFQ1JFVF9DT0RFIixzd2l0Y2hwbGFuOiJMQVRFTkNZX0FDVElPTl9VTlBMVUdHRURfU1dJVENIX1BMQU4iLHNlZWs6IkxBVEVOQ1lfQUNUSU9OX1BMQVlFUl9TRUVLIixzZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fU0VUVElOR1MiLHN0b3JlOiJMQVRFTkNZX0FDVElPTl9TVE9SRSIsc3VwZXJ2aXNpb25fZGFzaGJvYXJkOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1NVUEVSVklTSU9OX0RBU0hCT0FSRCIsYmVkdGltZV9yZW1pbmRlcl9zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9CRURUSU1FX1JFTUlOREVSX1NFVFRJTkdTIiwKYnJlYWtfcmVtaW5kZXJfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfQlJFQUtfUkVNSU5ERVJfU0VUVElOR1MiLHN1cGVydmlzaW9uX3NldHRpbmdzX2Rhc2hib2FyZDoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9TVVBFUlZJU0lPTl9TRVRUSU5HU19EQVNIQk9BUkQiLHRpbWVfbWFuYWdlbWVudDoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9USU1FX01BTkFHRU1FTlQiLHVwZGF0ZV9wcm9maWxlOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1VQREFURV9QUk9GSUxFIix2aWV3aW5nX3Blcm1pc3Npb25zOiJMQVRFTkNZX0FDVElPTl9GQU1JTFlfQ0VOVEVSX1ZJRVdJTkdfUEVSTUlTU0lPTlMiLHNob3J0c19zZXR0aW5nczoiTEFURU5DWV9BQ1RJT05fRkFNSUxZX0NFTlRFUl9TSE9SVFNfU0VUVElOR1MiLHByaXZhY3lfc2V0dGluZ3M6IkxBVEVOQ1lfQUNUSU9OX0ZBTUlMWV9DRU5URVJfUFJJVkFDWV9TRVRUSU5HUyIsdGVueDoiTEFURU5DWV9BQ1RJT05fVEVOWCIsCnZpZGVvX3ByZXZpZXc6IkxBVEVOQ1lfQUNUSU9OX1ZJREVPX1BSRVZJRVciLHZpZGVvX3RvX2FkOiJMQVRFTkNZX0FDVElPTl9WSURFT19UT19BRCIsd2F0Y2g6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIix3YXRjaF9pdF9hZ2FpbjoiTEFURU5DWV9BQ1RJT05fS0lEU19XQVRDSF9JVF9BR0FJTiIsIndhdGNoLHdhdGNoNyI6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIiwid2F0Y2gsd2F0Y2g3X2h0bWw1IjoiTEFURU5DWV9BQ1RJT05fV0FUQ0giLCJ3YXRjaCx3YXRjaDdhZCI6IkxBVEVOQ1lfQUNUSU9OX1dBVENIIiwid2F0Y2gsd2F0Y2g3YWRfaHRtbDUiOiJMQVRFTkNZX0FDVElPTl9XQVRDSCIsd25fY29tbWVudHM6IkxBVEVOQ1lfQUNUSU9OX0xPQURfQ09NTUVOVFMiLHd3X3JxczoiTEFURU5DWV9BQ1RJT05fV0hPX0lTX1dBVENISU5HIix2b2ljZV9hc3Npc3RhbnQ6IkxBVEVOQ1lfQUNUSU9OX1ZPSUNFX0FTU0lTVEFOVCIsY2FzdF9sb2FkX2J5X2VudGl0eV90b193YXRjaDoiTEFURU5DWV9BQ1RJT05fQ0FTVF9MT0FEX0JZX0VOVElUWV9UT19XQVRDSCIsCm5ldHdvcmtsZXNzX3BlcmZvcm1hbmNlOiJMQVRFTkNZX0FDVElPTl9ORVRXT1JLTEVTU19QRVJGT1JNQU5DRSIsZ2VsX2NvbXByZXNzaW9uOiJMQVRFTkNZX0FDVElPTl9HRUxfQ09NUFJFU1NJT04iLGdlbF9qc3BiX3NlcmlhbGl6ZToiTEFURU5DWV9BQ1RJT05fR0VMX0pTUEJfU0VSSUFMSVpFIixhdHRlc3RhdGlvbl9jaGFsbGVuZ2VfZmV0Y2g6IkxBVEVOQ1lfQUNUSU9OX0FUVEVTVEFUSU9OX0NIQUxMRU5HRV9GRVRDSCJ9OwpPYmplY3QuYXNzaWduKEptLHsiYW5hbHl0aWNzLmV4cGxvcmUiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0FOQUxZVElDU19FWFBMT1JFIiwiYXJ0aXN0LmFuYWx5dGljcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQVJUSVNUX0FOQUxZVElDUyIsImFydGlzdC5ldmVudHMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0FSVElTVF9DT05DRVJUUyIsImFydGlzdC5wcmVzc2tpdCI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQVJUSVNUX1BST0ZJTEUiLCJhc3NldC5jbGFpbWVkX3ZpZGVvcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0NMQUlNRURfVklERU9TIiwiYXNzZXQuY29tcG9zaXRpb24iOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BU1NFVF9DT01QT1NJVElPTiIsImFzc2V0LmNvbXBvc2l0aW9uX293bmVyc2hpcCI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0NPTVBPU0lUSU9OX09XTkVSU0hJUCIsImFzc2V0LmNvbXBvc2l0aW9uX3BvbGljeSI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0NPTVBPU0lUSU9OX1BPTElDWSIsCiJhc3NldC5lbWJlZHMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BU1NFVF9FTUJFRFMiLCJhc3NldC5oaXN0b3J5IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfSElTVE9SWSIsImFzc2V0Lmlzc3VlcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0lTU1VFUyIsImFzc2V0LmxpY2Vuc2VzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfTElDRU5TRVMiLCJhc3NldC5tZXRhZGF0YSI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX01FVEFEQVRBIiwiYXNzZXQub3duZXJzaGlwIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfT1dORVJTSElQIiwiYXNzZXQucG90ZW50aWFsX2VtYmVkcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX1BPVEVOVElBTF9FTUJFRFMiLCJhc3NldC5wb2xpY3kiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BU1NFVF9QT0xJQ1kiLCJhc3NldC5yZWZlcmVuY2VzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfUkVGRVJFTkNFUyIsCiJhc3NldC5zaGFyZXMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BU1NFVF9TSEFSRVMiLCJhc3NldC5zb3VuZF9yZWNvcmRpbmdzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfU09VTkRfUkVDT1JESU5HUyIsImFzc2V0X2dyb3VwLmFzc2V0cyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0dST1VQX0FTU0VUUyIsImFzc2V0X2dyb3VwLmNhbXBhaWducyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0dST1VQX0NBTVBBSUdOUyIsImFzc2V0X2dyb3VwLmNsYWltZWRfdmlkZW9zIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVNTRVRfR1JPVVBfQ0xBSU1FRF9WSURFT1MiLCJhc3NldF9ncm91cC5tZXRhZGF0YSI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0dST1VQX01FVEFEQVRBIiwic29uZy5hbmFseXRpY3MiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1NPTkdfQU5BTFlUSUNTIixjcmVhdG9yX2NoYW5uZWxfZGFzaGJvYXJkOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NIQU5ORUxfREFTSEJPQVJEIiwKImNoYW5uZWwuYW5hbHl0aWNzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DSEFOTkVMX0FOQUxZVElDUyIsY2hhbm5lbF9hcHBlYWw6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ0hBTk5FTF9BUFBFQUwiLCJjaGFubmVsLmNvbW1lbnRzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DSEFOTkVMX0NPTU1FTlRTIiwiY2hhbm5lbC5jb250ZW50IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DT05URU5UIiwiY2hhbm5lbC5jb250ZW50LnBvc3RzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9QT1NUX0xJU1QiLCJjaGFubmVsLmNvbnRlbnQucHJvbW90aW9ucyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfUFJPTU9USU9OX0xJU1QiLCJjaGFubmVsLmNvcHlyaWdodCI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ0hBTk5FTF9DT1BZUklHSFQiLCJjaGFubmVsLmVkaXRpbmciOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NIQU5ORUxfRURJVElORyIsImNoYW5uZWwubW9uZXRpemF0aW9uIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DSEFOTkVMX01PTkVUSVpBVElPTiIsCiJjaGFubmVsLm11c2ljIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DSEFOTkVMX01VU0lDIiwiY2hhbm5lbC5tdXNpY19zdG9yZWZyb250IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DSEFOTkVMX01VU0lDX1NUT1JFRlJPTlQiLCJjaGFubmVsLnBsYXlsaXN0cyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ0hBTk5FTF9QTEFZTElTVFMiLCJjaGFubmVsLnRyYW5zbGF0aW9ucyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ0hBTk5FTF9UUkFOU0xBVElPTlMiLCJjaGFubmVsLnZpZGVvcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ0hBTk5FTF9WSURFT1MiLCJjaGFubmVsLmxpdmVfc3RyZWFtaW5nIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9MSVZFX1NUUkVBTUlORyIsImRpYWxvZy5jb3B5cmlnaHRfc3RyaWtlcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfRElBTE9HX0NPUFlSSUdIVF9TVFJJS0VTIiwiZGlhbG9nLnZpZGVvX2NvcHlyaWdodCI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfRElBTE9HX1ZJREVPX0NPUFlSSUdIVCIsCiJkaWFsb2cudXBsb2FkcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfRElBTE9HX1VQTE9BRFMiLG93bmVyOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19EQVNIQk9BUkQiLCJvd25lci5hbGxvd2xpc3QiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BTExPV0xJU1QiLCJvd25lci5hbmFseXRpY3MiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19BTkFMWVRJQ1MiLCJvd25lci5hcnRfdHJhY2tzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQVJUX1RSQUNLUyIsIm93bmVyLmFzc2V0cyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUUyIsIm93bmVyLmFzc2V0X2dyb3VwcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX0FTU0VUX0dST1VQUyIsIm93bmVyLmJ1bGsiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19CVUxLX0hJU1RPUlkiLCJvd25lci5jYW1wYWlnbnMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19DQU1QQUlHTlMiLAoib3duZXIuY2hhbm5lbF9pbnZpdGVzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQ0hBTk5FTF9JTlZJVEVTIiwib3duZXIuY2hhbm5lbHMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19DSEFOTkVMUyIsIm93bmVyLmNsYWltZWRfdmlkZW9zIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfQ0xBSU1FRF9WSURFT1MiLCJvd25lci5jbGFpbXMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19NQU5VQUxfQ0xBSU1JTkciLCJvd25lci5jbGFpbXMubWFudWFsIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfTUFOVUFMX0NMQUlNSU5HIiwib3duZXIuZGVsaXZlcnkiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19DT05URU5UX0RFTElWRVJZIiwib3duZXIuZGVsaXZlcnlfdGVtcGxhdGVzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfREVMSVZFUllfVEVNUExBVEVTIiwib3duZXIuaXNzdWVzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfSVNTVUVTIiwKIm93bmVyLmxpY2Vuc2VzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfTElDRU5TRVMiLCJvd25lci5waXRjaF9tdXNpYyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX1BJVENIX01VU0lDIiwib3duZXIucG9saWNpZXMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX0NNU19QT0xJQ0lFUyIsIm93bmVyLnJlbGVhc2VzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfUkVMRUFTRVMiLCJvd25lci5yZXBvcnRzIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9DTVNfUkVQT1JUUyIsIm93bmVyLnZpZGVvcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfQ01TX1ZJREVPUyIsInBsYXlsaXN0LnZpZGVvcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfUExBWUxJU1RfVklERU9fTElTVCIsInBvc3QuY29tbWVudHMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1BPU1RfQ09NTUVOVFMiLCJwb3N0LmVkaXQiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1BPU1RfRURJVCIsInByb21vdGlvbi5lZGl0IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9QUk9NT1RJT05fRURJVCIsCiJ2aWRlby5hbmFseXRpY3MiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1ZJREVPX0FOQUxZVElDUyIsInZpZGVvLmNsYWltcyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfVklERU9fQ0xBSU1TIiwidmlkZW8uY29tbWVudHMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1ZJREVPX0NPTU1FTlRTIiwidmlkZW8uY29weXJpZ2h0IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9WSURFT19DT1BZUklHSFQiLCJ2aWRlby5lZGl0IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9WSURFT19FRElUIiwidmlkZW8uZWRpdG9yIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9WSURFT19FRElUT1IiLCJ2aWRlby5lZGl0b3JfYXN5bmMiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1ZJREVPX0VESVRPUl9BU1lOQyIsInZpZGVvLmxpdmVfc2V0dGluZ3MiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1ZJREVPX0xJVkVfU0VUVElOR1MiLCJ2aWRlby5saXZlX3N0cmVhbWluZyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfVklERU9fTElWRV9TVFJFQU1JTkciLAoidmlkZW8ubW9uZXRpemF0aW9uIjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9WSURFT19NT05FVElaQVRJT04iLCJ2aWRlby5wb2xpY3kiOiJMQVRFTkNZX0FDVElPTl9DUkVBVE9SX1ZJREVPX1BPTElDWSIsInZpZGVvLnJpZ2h0c19tYW5hZ2VtZW50IjoiTEFURU5DWV9BQ1RJT05fQ1JFQVRPUl9WSURFT19SSUdIVFNfTUFOQUdFTUVOVCIsInZpZGVvLnRyYW5zbGF0aW9ucyI6IkxBVEVOQ1lfQUNUSU9OX0NSRUFUT1JfVklERU9fVFJBTlNMQVRJT05TIn0pO3ZhciBNUT1jbGFzcyBleHRlbmRzIG83e2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIoYXJndW1lbnRzKTt0aGlzLk49bjt0aGlzLnRpbWVyPVd9fSxPbnQ9bmV3IGQzKCJhZnQtcmVjb3JkZWQiLE1RKTt2YXIgWEZ0PXthX2JpZF9mOjQ4MixhX2JpZF9zOjQ4MSxhYToyLGFhY2k6NDMzLGFhY3I6NDM0LGFiX3I6MTEsYWJfczoxMCxhYmM6NTc5LGFjOjE5MyxhY2M6NTExLGFjaTo1MTIsYWRfMF9lOjEzLGFkXzBfczoxMixhZF9ibDoxNCxhZF9pOjE1LGFkX21iczoxNixhZF9wcjo1NjIsYWRfdmk6MTcsYWRfdmlyOjE4LGFkYToxOTQsYWRiY19mOjU3NixhZGM6MTk1LGFkZmxfZjoxOSxhZGZsX3M6MjAsYWRsOjE5NixhZG5zOjE5NyxhZHNfZToyMixhZHNfczoyMSxhZmI6NTEzLGFmYzoxOTgsYWZsOjE5OSxhZnQ6MSxhaGI6NTE0LGFpOjIwMCxhaXNfYTo1MDMsYWlzX3I6NTAyLGFpc2Y6MjMsYWlzaToyNCxhaXNyOjI1LGFpc3M6MjYsYW1sOjIwMSxhcGFfYToyMDMsYXBhX2I6MjAyLGFwYnM6MjA0LGFwcF9sOjMsYXBwX3NpOjYxMixhcHBfc2llOjY2MSxhcHBkZWxfaToyNyxhcHBpX2U6NjE2LGFwcGlfczo2MTUsYXByOjIwNSxhcHJlczo0MzYsYXBzdXM6NDM1LGFyOjIwNixhcjQwazoyOCwKYXJiX2Y6NTA0LGFyYzoyMDcsYXJlcToyMDgsYXJmYjoyOSxhcmk6NCxhcnI6MjA5LGFycmg6MzAsYXNjZTo3ODgsYXNjZjo3ODksYXNjczo3ODcsYXNpc2ZiOjMxLGFzaXNyOjMyLGFzaXNyaDozMyxhc2lzczozNCxhc3I6MjEwLGFzeW5jX29yY2hfdF9hY3Q6NzEyLGFzeW5jX29yY2hfdF9ub3RpZnk6NzExLGF0cnI6NTE1LGF0cnM6NTE2LGF0dF9lOjIxMSxhdHRfZjoyMTIsYXR0X2ZjOjc5NyxhdHRfZnJyOjc5NixhdHRfZnM6NzkzLGF0dF9mc3I6Nzk1LGF0dF9wbmE6Nzk0LGF0dF9zOjIxMyxhdHRfd2I6MjE0LGF3ZmxfZjo1NTcsYXdmbF9zOjU1OCxiYXNlX2pzX3I6NDQxLGJjcDoyMTUsYmY6MjE2LGJnX2U6MjE3LGJnX2k6MjE4LGJnX2w6MjIwLGJnX3M6MjIxLGJnX3Y6MjE5LGJwZF9jOjQ4NCxicGRfczo0ODMsYnB0OjIyMyxicl9lOjM3LGJyX2xkOjM4LGJyX2xycHI6MzksYnJfbHJyOjQwLGJyX2x3bTo1NzcsYnJfcjo0MSxicl9zOjQyLGJyZXI6MzUsYnJlczozNixicm5yOjQzLApicm5zOjQ0LGJycGU6NDUsYnJwczo0NixicnJfZTo0NyxicnJfaTo0OCxicnJfaXVzOjQ5LGJzOjIyMixjX2M6NTAsY19jczo1MSxjX2NzZnM6NTIsY19kOjUzLGNfbGFmOjU5LGNfbGFzOjU4LGNfcm5mOjQzOCxjX3Juczo0MzcsY2M6NDY3LGNjX2M6NTQsY2NfY2Y6NTYsY2NfY3NhbGE6NTUsY2NfbGE6NTcsY2ZnOjIyNCxjaGxzOjIyNSxjaHBzOjIyNixjbDo0ODAsY21jOjIyNyxjbWRfaDo2MjksY21obDoyMjksY21pOjIyOCxjbWw6MjMwLGNtcDo3NzksY212OjIzMSxjcHQ6MjMyLGNyOjM2NCxjcl9lcnI6NjY5LGNyX3I6NjcwLGNyX3M6NjY4LGNzbDoyMzMsY3NyX3Q6NjMxLGN0OjUsY3RfbGk6NjAsZF9sOjYxLGRfbGFmOjYyLGRfbGFyOjYzLGRfbGFzOjY0LGRfbGY6NjUsZF9sczo2NixkX2x3OjY3LGRfbHdmOjY4LGRfbHdzOjY5LGRhc19jOjM2NixkYXNfczozNjUsZGNwOjIzNCxkZ19wYl9jOjIzNixkZ19wYl9yOjIzNyxkZ19wYl9zOjIzNSxkaGljOjIzOCxkbDoyMzksZG5zXzoyNDAsCmRybV9na19mOjM4OCxkcm1fZ2tfczozODcsZHJtX2tyX3I6MzkyLGRybV9rcl9zOjM5MSxkcm1fbmV0X3I6MzkwLGRybV9uZXRfczozODksZHJtX3BiX2Y6Mzg2LGRybV9wYl9zOjM4NSxkc19hYzo3MzYsZHNfYXM6NzM1LGRzX2NsYzo3NDAsZHNfY3M6NzM3LGRzX2RjOjczOSxkc19kczo3MzgsZW1wYTo0MzIsZW1wdTo0MzEsZW5wX2Vycjo2ODUsZW5wX2ZpOjY4NCxlbnBfc3Q6NjgzLGVvcHJfcjo2NzMsZXBfYV9wcl9yOjUzMixlcF9hX3ByX3M6NTMxLGVwX2hhdl9lbmQ6NTI2LGVwX2hhdl9zdGFydDo1MjUsZXBfaW5pdF9hcjo2OTksZXBfaW5pdF9jdWU6NjM1LGVwX2luaXRfY3VzOjYzNCxlcF9pbml0X2VwZTo2MzcsZXBfaW5pdF9lcHM6NjM2LGVwX2luaXRfaWplOjYzOSxlcF9pbml0X2lqczo2MzgsZXBfaW5pdF9wcjo1MjcsZXBfaW5pdF9yZTo2NDEsZXBfaW5pdF9yczo2NDAsZXBfaW5pdF93ZWU6NjQzLGVwX2luaXRfd2VzOjY0MixlcF9tYV9yZXByOjU0MyxlcF9tYV9ycjo1MzMsCmVwX21hX3NlcHI6NTQyLGVwX21hX3Nwcjo1MzQsZXBfcF9sOjUzMCxlcF9wcl9yOjUyOSxlcF9wcl9zOjUyOCxlcF9yX3ByZV9yOjU0MSxlcF9yX3JyOjUzNSxlcF9yX3NtYXI6NTM2LGVwX3JlY19lbmQ6NTM4LGVwX3JlY19zdGFydDo1MzcsZXBfcmVwc19lbmQ6NTQwLGVwX3JlcHNfc3RhcnQ6NTM5LGVwZTo2MTgsZXBzOjYxNyxlcl9jbDo2NTMsZXJfbnM6NjUyLGVyX3BlOjY1MCxlcl9wczo2NDksZXJfczo2NDgsZXJfc19ucjo3OTAsZXJfc19uczo3ODQsZXJfdDo2NTEsZmFiX3I6MjQ2LGZjYl9yOjUwNixmaXJlOjcwLGZpcnM6NzEsZm10aDoyNDEsZm9vdF9qczoyNDIsZnB0OjI0Myxmcl9zOjU2MSxmczoyNDQsZnNjOjI0NSxmc3NiMF9hOjc1LGZzc2IwX2ZyOjc0LGZzc2IwX25yOjczLGZzc2IwX25zOjcyLGZ0Xzo0MzksZnRsOjcsZnRyOjQ3NSxmdmJfcjoyNDcsZnZmOjI0OCxmeWRfZ2Y6NzY3LGZ5ZF9nczo3NjYsZ2NjOjI0OSxnY2ZsOjI1MCxnY3NyOjc2LGdlcF9lcnI6ODAwLApnZXBfcmVxOjc5OCxnZXBfcmVzOjc5OSxnZ3NyOjc3LGdpd2FfYTo2MjcsZ2l3YV9kOjYyOCxnbGM6NTkzLGdsZToyNTEsZ2xzOjI1MixncGU6MjUzLGdyYzoyNTQsZ3Jpd19ucjo3ODYsZ3Jpd19uczo3ODUsZ3Nfcjo3MzQsZ3Nfczo3MzMsZ3NtZDo1ODYsZ3Vfcjo2MjAsZ3Y6NDg1LGd3X2FpZXI6NzcxLGd3X2FyZjo3NzIsZ3dfYXJuYWY6Nzc1LGd3X2Fybm5hZjo3NzYsZ3dfYXJuczo3NzcsZ3dfYXJuc3U6Nzc4LGd3X2Fyczo3NzQsZ3dfYXJzdTo3NzMsZ3dfbWFhZjo2MzMsZ3dfbWFhczo2MzIsaGJmZzo2NzcsaGdjcjoyNTUsaHI6MjU2LGhyZTozNjMsaHJzOjM2MixoczozNzMsaHRtbF9mYl9yOjc1NSxodG1sX2ZlOjc0OCxodG1sX2ZzOjc0NyxodG1sX2Z3ZTo3NTIsaHRtbF9md3M6NzUxLGh0bWxfamNlOjc1NCxodG1sX2pjczo3NTMsaHRtbF9sYl9yOjc1NixodG1sX3NlOjc1MCxodG1sX3NzOjc0OSxpX3JwOjQ3NyxpX3JxOjQ3NixpcF9zOjY0NixpcGM6MjU3LGlwczoyNTgsCmlzbXBfYTo4MzYsaXNtcF9jOjgzOCxpc21wX2Q6ODM5LGlzbXBfaTo4MzUsaXNtcF9wOjg0MCxpc21wX3JjOjgzNyxpdF9ncDo3OCxpdl9zOjUwNSxqc3A6MjU5LGpzcjoyNjAsa1lUTGF0ZW5jeU1ERVByb2R1Y3RTdGlja2VyRWRpdG9yQ2FuY2VsbGVkOjgwMSxrWVRMYXRlbmN5TURFUHJvZHVjdFN0aWNrZXJFZGl0b3JGaW5pc2hlZDo4MDIsbDJzOjI2MSxsY19mcnI6NjYwLGxjX3Nfczo2NTksbGNfc191OjY1OCxsY3A6MjYyLGxkX3M6NDQwLGxpbToyNjMsbHBjZjoyNjQsbHBjczoyNjUsbHBzOjI2Nixsc19jOjM2OCxsc19zOjM2Nyxsc3M6MjY3LGx2OjI2OCxtYV9jbDo1NTEsbWFfZmZyOjU1MixtYV9mdWE6NTU0LG1hX2dyOjU1MyxtYV9pbDo1NzMsbWFpbjo3OSxtYWluX2pzX3I6NDQyLG1haW5fanNfcnE6NDQzLG1iX3M6NTA3LG1iYXBfYzozODQsbWJjX2FsYzo3MzIsbWJjX2FzbDo3MzEsbWJjX2M6Mzc1LG1iY19zOjM3NCxtYmdjaGlkX3JyOjc0NCxtYmdjaGlkX3JzOjc0NiwKbWJncl9yZjo2NTcsbWJncl9ycjozNzksbWJncl9yczozNzgsbWJsY19jOjM3NyxtYmxjX3M6Mzc2LG1ibGNoaWRfYzo3NDUsbWJsY2hpZF9zOjc0MyxtYmxjcmlkX2M6NzQyLG1ibGNyaWRfczo3NDEsbWJzX2M6MzgxLG1ic19ycjozODMsbWJzX3JzOjM4MixtYnNfczozODAsbWR4X2NjcDo4MCxtZHhfY2NzOjgxLG1keF9jY3N0OjgyLG1keF9jcjo4MyxtZHhfY3M6ODQsbWR4X2xzOjg1LG1keF9vZmY6ODYsbWR4X3NjOjg3LG1lX2I6NTU1LG1lX2M6Njg3LG1lX2Y6NTU2LG1lX2ZhOjY4OCxtZXN2X3M6NTA5LG1tX2llOjcyMCxtbV9pczo3MTksbXJjOjI2OSxtcnM6MjcwLG1zYToyNzEsbXN0aTo4OCxtc3RyOjg5LG5fY3Q6NzAyLG5fc3I6Njk3LG5fc3c6Njk4LCJuY1swLTldIjoyNzIsbmNsOjI3MyxuY3Q6Mjc0LG5kOjI3NSxuZG5zZToyNzYsbmRuc3M6Mjc3LCJucFswLTldIjoyNzgsbnI6Mjc5LG5yZToyODAsbnJlcXM6MjgxLG5yZXNlOjI4MixucmVzczoyODMsbnJycHM6OTAsCm5yczoyODQsbnN0Y3BzOjI4NSxudGNwZToyODYsbnRjcHM6Mjg3LG53cDoyODgsb2FkMnM6NDI1LG9hZnNfcjo0MDcsb2Fmc19ycDo0MDksb2Fpc3I6NDA1LG9hcjJzOjQxMixvYXJwMnM6NDI3LG9jc2lfejo5MSxvY3RrOjYyMSxvY3RwOjYyMixvZmFycDo0MjMsb2Zkbzo0MDAsb2Zkb3M6Mzk4LG9mcjo0MTcsb2Z2cnA6NDI0LG9nc2ZfYzozOTUsb2dzZl9zOjM5NCxvaHJfcjo3NjUsb2hyX3M6NzY0LG9sOjYsb2xfaTo4LG9sb2NfZTo4MzAsb2xvY19zYTo4Mjksb2xvY19zczo4Mjgsb21kX2M6NDIyLG9tZF9zOjQyMSxvbXBfYzo0MTksb21wX3I6NDE4LG9wZmM6NjgwLG9wcl9yOjQxNCxvcHJkX3M6NDE1LG9wcmd6Ml9lOjg0MixvcHJnejJfZjo4NDMsb3ByZ3oyX3M6ODQxLG9wcmd6X3M6Njg5LG9wcnI6NDE2LG9yMTAwazo0MTEsb3JfZmU6NDI5LG9yX2ZzOjQzMCxvcl9pOjM5Myxvcl9wOjM5NyxvcmNoX3JfZDo2OTQsb3JjaF9yX3M6Njk1LG9yY2hfdF9wbWQ6NzcwLG9yY2hfdF9wbXM6NzY5LApvcmNoX3RfdGNlZDo3MDgsb3JjaF90X3RjZXM6NzA1LG9yY2hfdF90ZDo2OTIsb3JjaF90X3RtZDo4MDQsb3JjaF90X3Rtczo4MDMsb3JjaF90X3VkOjY5MyxvcmNoX3RfdXM6Njk2LG9yZmI6NDA0LG9yaF9yOjQwMyxvcm1rOjQyMCxvcnFwYl9hOjgzMSxvcnFwYl9lOjgzNCxvcnFwYl9zOjgzMixvcnFwYl93OjgzMyxvc2RvOjQwMSxvc2RvZjo0MDIsb3Nkb3M6Mzk5LG9zb3I6Mzk2LG92ZDJzOjQyNixvdmZzX3I6NDA4LG92ZnNfcnA6NDEwLG92aXNyOjQwNixvdnIyczo0MTMsb3ZycDJzOjQyOCxwYWM6Mjg5LHBhcmk6NTE3LHBhdDoyOTAscGIwX3M6NjExLHBiX3JxX2F1dGh6OjQ0NixwYl9ycV9jdHRfY2ZtOjQ0NyxwYmNfZTo2NjMscGJjX3M6NjYyLHBiZl9jOjkyLHBicDo0ODYscGJyZXN1bWU6MjkyLHBiczo0ODcscGJ1OjI5MyxwYzo0ODgscGNjOjU0NixwY2U6NTQ3LHBjcTo1NDQscGNyOjU0NSxwY3VfYXA6ODA5LHBjdV9jZTo1ODEscGN1X2NzOjU4MCxwY3VfcmU6ODA4LHBjdV9yczo4MDcsCnBjdV9zOjgwNSxwY3Vfc2U6ODA2LHBkYToyOTQscGRjOjI5NSxwZHI6Mjk2LHBlOjI5NyxwZW1fcjo0NDQscGVtX3JxOjQ0NSxwZmplOjMwOSxwZnJyOjMwNSxwZnJzOjMwNixwZnM6MzA3LHBmdDozMDgscGZ0X2k6OTMscGxfYzoyOTEscGxfaTo0ODkscGxfaW50OjQ5MCxwbF9yOjQ5MSxwbF9yYzo3MDMscGxfczo0OTIscGxfc3M6NDkzLHBsZXY6MzEwLHBsanNfcjo0NDgscGxqc19ycTo0NDkscGx2czo3MjMscG90X2FmOjk3LHBvdF9hczo5Nixwb3RfY21lOjU2OSxwb3RfY21mOjI5OSxwb3RfY21zOjI5OCxwb3RfY3NtZTo1NzAscG90X2NzbWY6MzAxLHBvdF9jc21zOjMwMCxwb3RfaWY6MzA0LHBvdF9pbml0Zjo5NSxwb3RfaXNjOjMwMixwb3RfaXN0OjMwMyxwb3Rfc2U6NTY1LHBvdF9zZjo1NjQscG90X3NzOjU2Myxwb3RfeGU6NTY4LHBvdF94Zjo1NjcscG90X3hzOjU2Nixwb3RwZTo5NCxwcHU6OTgscHJvY19rOjYxMyxwcm9jX2tfbDo2MTQscHM6MzExLHBzX2JzOjY0Nyxwc19jOjQ5NCwKcHNfZXM6OTkscHNfcGE6NjgxLHBzX3BpaGY6NTk3LHBzX3BpaHM6NTk2LHBzX3I6MzYwLHBzX3M6MzYxLHBzX3NnZjo1OTUscHNfc2dzOjU5NCxwc25yOjQ5NSxwc25zOjQ5Nixwc3BlOjEwMCxwc3BzOjEwMSxwdF9tZTo4MTUscHRfbWY6ODE0LHB0X21zOjgxMyxwdF9waWU6ODEyLHB0X3BpZjo4MTEscHRfcGlzOjgxMCxwdF9waXNoOjYwNixwdnJpOjUxOCxwd2M6MzEyLHFvZXM6MzEzLHJfY19zbGQ6NDUwLHJfY19zcnE6NDUxLHJfY29ubmVjdF9iYWNrZW5kOjQ1MixyX2Nvbm5lY3RfYmFja2VuZF9zdWNjZXNzOjQ1MyxyX2Nvbm5lY3RlZDo0NTQscl9jb25zdHJ1Y3Rpb246NDU1LHJfZGlzY29ubmVjdGVkOjQ1NixyX2ViaTo2NjQscl9lb2Q6NTg1LHJfZjo0NTcscl9vcjo3MTMscl9wbDoxMDUscl9wczoxMDYscl9ycV9wbHk6NDU4LHJfc19wbHlsc3Q6NDU5LHJfc192aWQ6NDYwLHJfc3RhdHVzX3VwZGF0ZTo0NjEscl90cjoxMDcscl92dGM6MTA0LHJfd2lwYmM6NTg0LHJfd25yOjc5MiwKcl93bnM6NzkxLHJfd3JyOjEwMyxyX3dyczoxMDIscl93c3JwOjYwOSxyX3dzcnI6NjA4LHJfd3Nyczo2MDcscmN2XzozMTQscmVtb3ZlX3NwbGFzaDo0NjIscmVxXzozMTUscmZnOjMxNixyZ3JfbnJmOjYwMCxyZ3Jfczo1OTkscnBlOjgxNixycGx5X3JxZDo0NjMscnBzOjgxNyxyc19zOjUwOCxyc2FlX3BjOjMzMixyc2FlX3BlajozMzQscnNhZV9wajozMzMscnNiZV9wYzozMjMscnNiZV9wZWo6MzI1LHJzYmVfcGo6MzI0LHJzZV9wYzozMjAscnNlX3BlajozMjIscnNlX3BqOjMyMSxyc2VmX3BjOjMyOSxyc2VmX3BlajozMzEscnNlZl9wajozMzAscnNlc19wYzozMjYscnNlc19wZWo6MzI4LHJzZXNfcGo6MzI3LHJzZl9wYzozMTcscnNmX3BlajozMTkscnNmX3BqOjMxOCxydGltZV86MzM1LHJ1cmxfZToxMDgscnVybF9yOjEwOSxydXJsX3M6MTEwLHJ1cmxwZToxMTEscnVybHBzOjExMixzM3Rfcjo0NzIsc2FfZjo2MjQsc2FfZm86NjI1LHNhX3M6NjIzLHNhZl9mcDo2NjUsc2FmX3I6NjY2LApzYWZfcmU6NjY3LHNhc19pOjYyNixzY2dhdF9mZnM6NTYwLHNjZ2F0X2ZzOjU1OSxzZGFfZjo2MDUsc2RhX2k6NjA0LHNkYV9yZWNwOjYwMSxzZGFfcnNwcDo2MDMsc2RhX3JzcHI6NjAyLHNkbF9lOjY1NSxzZGxfczo2NTQsc2RsX3Q6NjU2LHNmX2k6MTEzLHNnc2Nfcjo3ODEsc2dzY19zOjc4MCxzaG93X2NhbGxfdG9fY2FzdDo0NjQsc2hyYl9jOjE2NSxzaHJvX2M6MTcwLHNocm9fcjoxNjcsc2hycF9jOjE2OSxzaHJwX2xkOjE2NixzaHJwX3A6MTY4LHNvX3I6MTE5LHNvX3JlOjExOCxzb19ycToxMjAsc3BhOjExNCxzcGQ6MTE1LHNwZjoxMTYsc3Bucl9oOjY3MixzcG5yX3M6NjcxLHNwcjo2Nzgsc3JfZToxMTcsc3JfcDoxMjEsc3JfcGE6MTIyLHNyX3I6MTIzLHNyX3JlOjEyNCxzcl9zOjEyNSxzcl91aToxMjYsc3J0OjMzNixzc19yOjQ2OSxzc19zOjQ2OCxzc19zZl9zOjcyNCxzc19zZl93OjcyNSxzc25yOjEyNyxzc25zOjEyOCxzdGNwXzozMzcsc3RlX2FsZjo1ODksc3RlX2M6NTkyLApzdGVfZWxmOjU5MCxzdGVfZjo1OTEsc3RlX2Z0bDo1ODgsc3RlX2w6NTg3LHN0dHNfYjo1ODIsc3R0c19mOjU4MyxzdHZzX2Y6NjkxLHN0dnNfczo2OTAsc3ZlOjQ2NixzdnM6NDY1LHN3X2ZiOjUxMCxzd19pOjc4Myxzd19yOjQ5Nyxzd19zOjQ5OCxzd3Nucjo4MTksc3dzbnM6ODE4LHN3c3BlOjgyMSxzd3Nwczo4MjAsdGNwXzozMzgsdGVueF9sOjQ3MSx0ZW54X3I6NDcwLHRoMF9oOjYxMCx0aDBfbmM6Njc1LHRoMF9uZTo2NzYsdGgwX25yOjEyOSx0aDBfbnM6Njc0LHRoX2NfMTo3MDksdGhfZF8xOjcxMCx0aF9sXzE6MTMwLHRoX3NfMTo1NzgsdGhzYjBfZnI6MTM0LHRoc2IwX25lOjEzMSx0aHNiMF9ucjoxMzIsdGhzYjBfbnM6MTMzLHR0YzozMzksdHRjcjozNDAsdWlfbDoxMzUsdWliZl9jOjE0MSx1aWJmX3I6MTQzLHVpYmZfczoxNDIsdWlzZl9yOjE0NCx1aXd3YV9iYzo2MTksdWl3d2FfYzoxMzYsdWl3d2FfZToxNDAsdWl3d2FfcHI6MTM5LHVpd3dhX3I6MTM4LHVpd3dhX3M6MTM3LAp1bHJzX2M6MzcwLHVscnNfczozNjksdW5rbm93bjowLHVyOjM0MSx2Yzo2ODIsdmNjOjUxOSx2Y2k6NTIwLHZkYTozNDIsdmRldWM6MzQzLHZkZXVyOjM0NCx2ZGV1czozNDUsdmRuczozNDYsdmZiOjUyMSx2ZnA6MzQ3LHZoYjo1MjIsdmlyOjM0OCx2aXJjOjM0OSx2aXNfYTo1MDAsdmlzX3I6NDk5LHZpc2Y6MTQ1LHZpc2k6MTQ2LHZpc3I6MTQ3LHZpc3M6MTQ4LHZvel9jeDoxNzksdm96X2VvdToxODcsdm96X2VycjoxODQsdm96X2Vycl9tczoxODAsdm96X2Vycl9ubXA6MTgxLHZvel9lcnJfb2ZmOjE4Myx2b3pfZXJyX3VhcjoxODIsdm96X2Z0cjoxODgsdm96X2Z2YzoxODksdm96X2xyX2xzbzoxODUsdm96X2xyX21kOjE4Nix2b3pfbWY6MTcyLHZvel9tczoxNzEsdm96X3JxZjoxNzQsdm96X3JxczoxNzMsdm96X3NmOjE3OCx2b3pfc3M6MTc3LHZvel92cDoxNzUsdm96X3Z0OjE3Nix2cGw6MzUwLHZyOjM1MSx2cjEwMGs6MTQ5LHZyYl9mOjUwMSx2cmM6MzUyLHZyZXE6MzUzLHZyZmI6MTUwLAp2cmk6OSx2cnI6MzU0LHZycl9yOjQ3NCx2cnJfczo0NzMsdnJyaDoxNTEsdnNpc2ZiOjE1Mix2c2lzcjoxNTMsdnNpc3JoOjE1NCx2c2lzczoxNTUsdnRhOjM1NSx2dHJyOjUyMyx2dHJzOjUyNCx3X3N0OjE1Nix3YXNtX2ZhOjgyNix3YXNtX2ZlcnI6ODI3LHdhc21fZnc6ODI1LHdhc21fczo4MjQsd2M6MzcyLHdjcjozNTYsd2ViZmVfZTo3Mjgsd2ViZmVfZ2JtX3I6NzU4LHdlYmZlX2dibV9zOjc1Nyx3ZWJmZV9nbF9yOjc2Mix3ZWJmZV9nbF9zOjc2MSx3ZWJmZV9nc19yOjc2MCx3ZWJmZV9nc19zOjc1OSx3ZWJmZV9ndXNfcjo3MzAsd2ViZmVfZ3VzX3M6NzI5LHdlYmZlX2d2bV9zOjc2Myx3ZWJmZV9zOjcyNyx3ZmZlOjM1Nyx3ZmZzOjM1OCx3Zmc6MzU5LHduX2U6MTYyLHduX2w6MzcxLHduX3I6MTU5LHduX3JwOjQ3OCx3bl9zOjE2MCx3bl9zbDoxNjEsd25sOjE1OCx3bmxfZDo4MjMsd25sX21wOjU3MSx3bmxfcGQ6ODIyLHdubHI6NTcyLHdubHM6MTU3LHducGU6MTYzLHducHM6MTY0LAp3cDo0Nzksd3NfY2U6MTkwLHdzX3NzOjE5MSx3c19zc3I6MTkyLHljZWM6NTQ5LHljZWY6NTQ4LHljZnRyOjY0NSx5Y2lmOjU1MCx5Y21zZjo2NDQseWNyYzo3MTgseWNyZjo3MTcseWNyczo3MTQseWNyc2M6NzE1LHljcnVlYTo3MTZ9O3ZhciBtcT1nLnFpLnl0TG9nZ2luZ0dlbFNlcXVlbmNlSWRPYmpffHx7fTtnLkdiKCJ5dExvZ2dpbmdHZWxTZXF1ZW5jZUlkT2JqXyIsbXEpO3ZhciBQYj1nLnFpLnl0TG9nZ2luZ0xhdGVuY3lVc2FnZVN0YXRzX3x8e307Zy5HYigieXRMb2dnaW5nTGF0ZW5jeVVzYWdlU3RhdHNfIixQYik7CnZhciBLQj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuTj0wfXRpY2sobixXLEQsYil7Wk0odGhpcyxgdGlja18ke259XyR7V31gKXx8KEQ9e3RpbWVzdGFtcDpELGN0dEF1dGhJbmZvOmJ9LFc9e3RpY2tOYW1lOm4sY2xpZW50QWN0aW9uTm9uY2U6V30sZy5sKCJ5b3V0dWJlX3dlYl9jc2lfdGlja3NfbWlncmF0aW9uIikmJihuPVhGdFtuXSxuIT09dm9pZCAwJiYoVy50aWNrPW4sZGVsZXRlIFcudGlja05hbWUpKSxnLnpVKCJsYXRlbmN5QWN0aW9uVGlja2VkIixXLEQpKX1pbmZvKG4sVyxEKXt2YXIgYj1PYmplY3Qua2V5cyhuKS5qb2luKCIiKTtaTSh0aGlzLGBpbmZvXyR7Yn1fJHtXfWApfHwobj1PYmplY3QuYXNzaWduKHt9LG4pLG4uY2xpZW50QWN0aW9uTm9uY2U9VyxnLnpVKCJsYXRlbmN5QWN0aW9uSW5mbyIsbix7Y3R0QXV0aEluZm86RH0pKX1qc3BiSW5mbyhuLFcsRCl7dmFyIGI9IiI7Zm9yKGxldCB2PTA7djxZdihuKS5sZW5ndGg7disrKVl2KG4pW3ZdIT09dm9pZCAwJiYKKGI9dj09PTA/Yi5jb25jYXQoYCR7dn1gKTpiLmNvbmNhdChgXyR7dn1gKSk7Wk0odGhpcyxgaW5mb18ke2J9XyR7V31gKXx8KGcuU0UobiwyLFcpLFc9e2N0dEF1dGhJbmZvOkR9LEQ9Zy5sKCJqc3BiX3NwYXJzZV9lbmNvZGVkX3Bpdm90Iik/bmV3IFp2KFt7fV0pOm5ldyBadixyZShELFVrciw3LHlZMSxuKSxmMmooRCxXKSl9c3BhbihuLFcsRCxiKXt2YXIgdj1PYmplY3Qua2V5cyhuKS5qb2luKCIiKTtpZihifHwhWk0odGhpcyxgc3Bhbl8ke3Z9XyR7V31gKSluLmNsaWVudEFjdGlvbk5vbmNlPVcsZy56VSgibGF0ZW5jeUFjdGlvblNwYW4iLG4se2N0dEF1dGhJbmZvOkR9KX19O3ZhciBaWj13aW5kb3cscWtyPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy50aW1pbmc9e307dGhpcy5jbGVhclJlc291cmNlVGltaW5ncz0oKT0+e307CnRoaXMud2Via2l0Q2xlYXJSZXNvdXJjZVRpbWluZ3M9KCk9Pnt9Owp0aGlzLm1vekNsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fTsKdGhpcy5tc0NsZWFyUmVzb3VyY2VUaW1pbmdzPSgpPT57fTsKdGhpcy5vQ2xlYXJSZXNvdXJjZVRpbWluZ3M9KCk9Pnt9fX0sVUg9WloucGVyZm9ybWFuY2V8fFpaLm1velBlcmZvcm1hbmNlfHxaWi5tc1BlcmZvcm1hbmNlfHxaWi53ZWJraXRQZXJmb3JtYW5jZXx8bmV3IHFrcjt2YXIgd2I9ITEsbCQ9ITEsUXY9eydzY3JpcHRbbmFtZT0ic2NoZWR1bGVyL3NjaGVkdWxlciJdJzoic2oiLCdzY3JpcHRbbmFtZT0icGxheWVyL2Jhc2UiXSc6InBqIiwnbGlua1tyZWw9InByZWxvYWQiXVtuYW1lPSJwbGF5ZXIvZW1iZWQiXSc6InBlaiIsJ2xpbmtbcmVsPSJzdHlsZXNoZWV0Il1bbmFtZT0id3d3LXBsYXllciJdJzoicGMiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9InBsYXllci93d3ctcGxheWVyIl0nOiJwYyIsJ3NjcmlwdFtuYW1lPSJkZXNrdG9wX3BvbHltZXIvZGVza3RvcF9wb2x5bWVyIl0nOiJkcGoiLCdsaW5rW3JlbD0iaW1wb3J0Il1bbmFtZT0iZGVza3RvcF9wb2x5bWVyIl0nOiJkcGgiLCdzY3JpcHRbbmFtZT0ibW9iaWxlLWMzIl0nOiJtY2oiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZS1jMyJdJzoibWNjIiwnc2NyaXB0W25hbWU9InBsYXllci1wbGFzbWEtaWFzLXBob25lL2Jhc2UiXSc6Im1jcHBqIiwnc2NyaXB0W25hbWU9InBsYXllci1wbGFzbWEtaWFzLXRhYmxldC9iYXNlIl0nOiJtY3B0aiIsCidsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZS1wb2x5bWVyLXBsYXllci1pYXMiXSc6Im1jcGMiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZS1wb2x5bWVyLXBsYXllci1zdmctaWFzIl0nOiJtY3BzYyIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX2NvcmVfbW9kIl0nOiJtYmNqIiwnbGlua1tyZWw9InN0eWxlc2hlZXQiXVtuYW1lPSJtb2JpbGVfYmxhemVyX2NzcyJdJzoibWJjIiwnc2NyaXB0W25hbWU9Im1vYmlsZV9ibGF6ZXJfbG9nZ2VkX2luX3VzZXJzX21vZCJdJzoibWJsaXVqIiwnc2NyaXB0W25hbWU9Im1vYmlsZV9ibGF6ZXJfbG9nZ2VkX291dF91c2Vyc19tb2QiXSc6Im1ibG91aiIsJ3NjcmlwdFtuYW1lPSJtb2JpbGVfYmxhemVyX25vbmNvcmVfbW9kIl0nOiJtYm5qIiwiI3BsYXllcl9jc3MiOiJtYnBjIiwnc2NyaXB0W25hbWU9Im1vYmlsZV9ibGF6ZXJfZGVza3RvcHBsYXllcl9tb2QiXSc6Im1icGoiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9Im1vYmlsZV9ibGF6ZXJfdGFibGV0X2NzcyJdJzoibWJ0YyIsCidzY3JpcHRbbmFtZT0ibW9iaWxlX2JsYXplcl93YXRjaF9tb2QiXSc6Im1id2oiLCdzY3JpcHRbbmFtZT0iZW1iZWRfY2xpZW50Il0nOiJlY2oiLCdsaW5rW3JlbD0ic3R5bGVzaGVldCJdW25hbWU9ImVtYmVkLXVpIl0nOiJlY2MifSxabmk9KDAsZy5LdCkoVUguY2xlYXJSZXNvdXJjZVRpbWluZ3N8fFVILndlYmtpdENsZWFyUmVzb3VyY2VUaW1pbmdzfHxVSC5tb3pDbGVhclJlc291cmNlVGltaW5nc3x8VUgubXNDbGVhclJlc291cmNlVGltaW5nc3x8VUgub0NsZWFyUmVzb3VyY2VUaW1pbmdzfHxnLkZULFVIKTt2YXIgVUM9d2luZG93O1VDLnl0Y3NpJiYoVUMueXRjc2kuaW5mb0dlbD1nLm5sLFVDLnl0Y3NpLnRpY2s9Zy5hTCk7dmFyIG85aj1bInR5cGUuZ29vZ2xlYXBpcy5jb20veW91dHViZS5hcGkucGZpaW5uZXJ0dWJlLllvdXR1YmVBcGlJbm5lcnR1YmUuQnJvd3NlUmVzcG9uc2UiLCJ0eXBlLmdvb2dsZWFwaXMuY29tL3lvdXR1YmUuYXBpLnBmaWlubmVydHViZS5Zb3V0dWJlQXBpSW5uZXJ0dWJlLlBsYXllclJlc3BvbnNlIiwidHlwZS5nb29nbGVhcGlzLmNvbS95b3V0dWJlLmFwaS5wZmlpbm5lcnR1YmUuWW91dHViZUFwaUlubmVydHViZS5QYW5lbFJlc3BvbnNlIl0sWDc9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2KXt0aGlzLmo9bjt0aGlzLnlHPVc7dGhpcy5XPUQ7dGhpcy5YPWI7dGhpcy5KPXY7dGhpcy5OPW5ldyBNYXA7bi53ZHx8KG4ud2Q9e30pO24ud2Q9ey4uLmdnMSwuLi5uLndkfX19O3ZhciBhOD1uZXcgZy5BTCgiSU5ORVJUVUJFX1RSQU5TUE9SVF9UT0tFTiIpLFZXPW5ldyBnLkFMKCJSRVNQT05TRV9QUk9DRVNTT1JfTUFQX1RPS0VOIik7dmFyIE1hPW5ldyBnLkFMKCJFTkRQT0lOVF9NQVAiKTt2YXIgeVg9Y2xhc3N7fTt2YXIgTnI9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPSJwZW5kaW5nIjt0aGlzLko9W107dGhpcy5XPVtdO3RyeXtuKHRoaXMuWC5iaW5kKHRoaXMpLHRoaXMucmVqZWN0LmJpbmQodGhpcykpfWNhdGNoKFcpe3RoaXMucmVqZWN0KFcpfX1zdGF0ZSgpe3JldHVybiB0aGlzLk49PT0iZnVsZmlsbGVkIj97c3RhdGU6ImZ1bGZpbGxlZCIsdmFsdWU6dGhpcy5yZXN1bHR9OnRoaXMuTj09PSJyZWplY3RlZCI/e3N0YXRlOiJyZWplY3RlZCIscmVhc29uOnRoaXMuZXJyb3J9OntzdGF0ZToicGVuZGluZyJ9fVgobil7WW8obil8fFlEKG4pP1NrKEhQKG4pLHRoaXMuWC5iaW5kKHRoaXMpLHRoaXMucmVqZWN0LmJpbmQodGhpcykpOih0aGlzLk49ImZ1bGZpbGxlZCIsdGhpcy5yZXN1bHQ9bixtRSh0aGlzKSl9cmVqZWN0KG4pe3RoaXMuTj0icmVqZWN0ZWQiO3RoaXMuZXJyb3I9bjttRSh0aGlzKX19LFlEPXEzKG49PmtDeChuKT9uIGluc3RhbmNlb2YgTnI6ITEpO3ZhciBjZT1uZXcgZy5BTCgiQVVUSF9TRVJWSUNFX1RPS0VOIik7dmFyIHVkPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLk49bn1leGVjdXRlKG4pe3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7dmFyIFc9dGhpcztyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIEQ9bi55dFJlcXVlc3Q7Zy5SVShELmlucHV0KTt2YXIgYj1ELlBpPy5tb2RlPT09ImNvcnMiPyJjb3JzIjp2b2lkIDA7aWYoVy5OLnNCKXt2YXIgdj1ELmNvbmZpZzt2PVcuTi5haih2Py5CRz8uaWRlbnRpdHl8fHU5LHtzZXNzaW9uSW5kZXg6dj8uQkc/LnNlc3Npb25JbmRleH0pO2I9ey4uLmtWKGIpLC4uLnZ9fWVsc2UgYj15aWVsZCpQUChNRXcoVyxELmNvbmZpZyxiKSk7RC5QaT17Li4uRC5QaSxoZWFkZXJzOnsuLi4oRC5QaT8uaGVhZGVycz8/e30pLC4uLmJ9fTtyZXR1cm57bmV4dFN0YXRlOiJERURVUEUiLHBhcmFtczpufX0oKX0pfX07CnVkW2cuTFhdPVtjZV07dmFyIGFqPW5ldyBnLkFMKCJSRVNQT05TRV9NQUNISU5FX1JFR0lTVFJZX1RPS0VOIiksblI9bmV3IGcuQUwoIlJFU1BPTlNFX01BQ0hJTkVfRkFDVE9SWV9UT0tFTiIpO3ZhciBCZT1uZXcgZy5BTCgiRVBIRU1FUkFMX1NUT1JFX1RPS0VOIik7dmFyIG9qPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3IobixXKXtzdXBlcigpO3RoaXMuTj1uO3RoaXMuSj1XfWV4ZWN1dGUobil7dmFyIFc9dGhpcy5KLEQ9dGhpcy5OO3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBiPW4ueXRSZXF1ZXN0LHY9Yi5jb25maWc/LkhuPy5STDtpZih2JiZXJiZXLmhhcyh2KSYmIWIuY29uZmlnPy5Ibj8uZGlzYWJsZUNhY2hlKXt2YXIgaz15aWVsZCpQUChIUChXLmdldCh2KSkpO2lmKGsmJiFrLmlzRXhwaXJlZCgpKXJldHVybiBiPXFyKGspLGcubCgid2ViX3Byb2Nlc3NfcmVzcG9uc2Vfc3RvcmVfcmVzcG9uc2VzIikmJiFrLmlzUHJvY2Vzc2VkKCk/KGs9RCgpLGI9eWllbGQqUFAoeXEoayx7d2lyZVJlc3BvbnNlOmIseXRSZXF1ZXN0Om4ueXRSZXF1ZXN0LGNodW5rQ2FsbGJhY2s6bi5jaHVua0NhbGxiYWNrLHJlc3BvbnNlUGF5bG9hZDp7dHlwZToiUEFHRV9DT05UUkFDVCJ9LGV4dHJhY3RlZFJlc3BvbnNlOmJ9KSksCnlpZWxkKlBQKEhQKHRlKFcsdikpKSx7bmV4dFN0YXRlOiJET05FIix2YWx1ZTpifSk6e25leHRTdGF0ZToiRE9ORSIsdmFsdWU6Yn19cmV0dXJue25leHRTdGF0ZToiTE9DQUxfUk9VVEVSIixwYXJhbXM6bn19KCl9KX19OwpvaltnLkxYXT1bblIsZy5ocChCZSldO3ZhciBkXz1jbGFzcyBleHRlbmRzIHlYe2NvbnN0cnVjdG9yKG4sVyl7c3VwZXIoKTt0aGlzLko9bjt0aGlzLk49V31leGVjdXRlKG4pe3ZhciBXPXRoaXMuSixEPXRoaXMuTixiPW4ueXRSZXF1ZXN0LHY9Yj8uaW5uZXJUdWJlUmVxdWVzdD8uY29udGV4dDtpZighdilyZXR1cm4gSFAoe25leHRTdGF0ZToiQVVUSCIscGFyYW1zOm59KTt2YXIgaz1bXTtpZihEJiZELmxlbmd0aD4wKWZvcihsZXQgaCBvZiBEKUQ9aC5CcyhiKSxELk4mJmsucHVzaChELk4pO2ZvcihsZXQgaCBvZiBXfHxbXSloLkJzKHYpO3JldHVybiBrLmxlbmd0aD4wP09vKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7eWllbGQqUFAoSFAoUHJvbWlzZS5hbGwoaykpKTtyZXR1cm57bmV4dFN0YXRlOiJBVVRIIixwYXJhbXM6bn19KCl9KTpIUCh7bmV4dFN0YXRlOiJBVVRIIiwKcGFyYW1zOm59KX19O2RfW2cuTFhdPVtnLmhwKG5ldyBnLkFMKCJDT05URVhUX1BST0NFU1NPUl9NQVAiKSksZy5ocChuZXcgZy5BTCgiQVNZTkNfQ09OVEVYVF9QUk9DRVNTT1JfTUFQIikpXTt2YXIgelc9Y2xhc3MgZXh0ZW5kcyB5WHtjb25zdHJ1Y3RvcihuKXtzdXBlcigpO3RoaXMuTj1ufWV4ZWN1dGUobil7dmFyIFc9dGhpcy5OO3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBEPW4ueXRSZXF1ZXN0LmNvbmZpZz8ucmVxdWVzdEtleTtyZXR1cm4gRCYmVy5oYXMoRCkmJihEPVcuZ2V0KEQpLEQ9eWllbGQqUFAoSFAoRCkpKT97bmV4dFN0YXRlOiJET05FIix2YWx1ZTpEfTp7bmV4dFN0YXRlOiJGRVRDSCIscGFyYW1zOm59fSgpfSl9fTsKeldbZy5MWF09W2lkXTt2YXIgR3h0PW5ldyBnLkFMKCJMT0NBTF9JTk5FUlRVQkVfUk9VVEVSX1RPS0VOIik7dmFyIGxkPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3IobixXKXtzdXBlcigpO3RoaXMuSj1uO3RoaXMuTj1XfWV4ZWN1dGUobil7dmFyIFc9dGhpcy5OLEQ9dGhpcy5KO3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBiPW4ueXRSZXF1ZXN0LHY9bi5jaHVua0NhbGxiYWNrLGs9e3R5cGU6IlBBR0VfQ09OVFJBQ1QifTtpZihXPy5yNihiLmlucHV0LGIuaW5uZXJUdWJlUmVxdWVzdCkpe2xldCB4PXlpZWxkKlBQKEhQKFcuWVIoYi5pbnB1dCxiLmlubmVyVHViZVJlcXVlc3QpKSk7aWYoeCl7bGV0IEw9ITE7dmFyIGg9ZnVuY3Rpb24oZSxHKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIHI9RCgpO3lpZWxkKlBQKHlxKHIse3dpcmVSZXNwb25zZTpHLHl0UmVxdWVzdDpiLGNodW5rQ2FsbGJhY2s6dixyZXNwb25zZVBheWxvYWQ6a30pKTtMPSEwfSgpfTsKeC5wbGF5ZXJSZXNwb25zZSYmKHlpZWxkKmgoeC5wbGF5ZXJSZXNwb25zZSx7cGxheWVyUmVzcG9uc2U6eC5wbGF5ZXJSZXNwb25zZX0pKTt4LndhdGNoTmV4dFJlc3BvbnNlJiYoeWllbGQqaCh4LndhdGNoTmV4dFJlc3BvbnNlLHt3YXRjaE5leHRSZXNwb25zZTp4LndhdGNoTmV4dFJlc3BvbnNlfSkpO0x8fChoPUQoKSx5aWVsZCpQUCh5cShoLHt3aXJlUmVzcG9uc2U6eCx5dFJlcXVlc3Q6YixjaHVua0NhbGxiYWNrOnYscmVzcG9uc2VQYXlsb2FkOmt9KSkpO2lmKHYpcmV0dXJue25leHRTdGF0ZToiRE9ORSIsdmFsdWU6a307aD1rLmNvbnRlbnR8fGsucGxheWVyfHxrLnlCO3JldHVybiBrLnR5cGU9PT0iUEFHRV9DT05UUkFDVCImJmg/e25leHRTdGF0ZToiRE9ORSIsdmFsdWU6aH06e25leHRTdGF0ZToiRE9ORSIsdmFsdWU6eH19fXJldHVybntuZXh0U3RhdGU6IkZBSUxFRCIsZXJyb3I6RXJyb3IoIkZhbGxiYWNrTm9kZSBmYWlsZWQgdG8gcHJvZHVjZSBhIHZhbGlkIHJlc3BvbnNlIil9fSgpfSl9fTsKbGRbZy5MWF09W25SLGcuaHAoR3h0KV07dmFyIEVDPWNsYXNzIGV4dGVuZHMgZy5ReHtjb25zdHJ1Y3RvcihuLFcsRCl7c3VwZXIoVyx7c3RhdHVzOkQsLi4uW119KTt0aGlzLnR5cGU9bjt0aGlzLnN0YXR1cz1EO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLG5ldy50YXJnZXQucHJvdG90eXBlKX19O3ZhciBsQj1uZXcgZy5BTCgiTkVUV09SS19NQU5BR0VSX1RPS0VOIik7dmFyIFRXPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3IobixXLEQsYil7c3VwZXIoKTt0aGlzLnlHPW47dGhpcy5OPVc7dGhpcy5XPUQ7dGhpcy5KPWJ9ZXhlY3V0ZShuKXt2YXIgVz10aGlzLnlHLEQ9dGhpcy5OLGI9dGhpcy5XLHY9dGhpcy5KO3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBrPW4ueXRSZXF1ZXN0LGg9bi5jaHVua0NhbGxiYWNrLHg9ay5jb25maWc/LnJlcXVlc3RLZXksTD1KU09OLnN0cmluZ2lmeShrLmlubmVyVHViZVJlcXVlc3QpLGU9ey4uLmsuUGksYm9keTprLlBpLm1ldGhvZD09PSJQT1NUIj9MOnZvaWQgMH07ay5jb25maWc/LkxhJiZnLmFMKGsuY29uZmlnLkxhKTt2YXIgRz17dHlwZToiUEFHRV9DT05UUkFDVCJ9LHI9MCxOPXk9PntFbyhiKCkse3dpcmVSZXNwb25zZTp5LHl0UmVxdWVzdDprLGNodW5rQ2FsbGJhY2s6aCxyZXNwb25zZVBheWxvYWQ6R30scisrKX07Ckw9KCk9Pmg/Vy5mZXRjaChrLmlucHV0LGUsay5jb25maWcsTik6Vy5mZXRjaChrLmlucHV0LGUsay5jb25maWcpOwp0cnl7dmFyIEg9dj92LlFOKGssTCk6TCgpfWNhdGNoKHkpe0g9UHJvbWlzZS5yZWplY3QoeSl9eCYmRCYmRC5zZXQoeCxIKTt0cnl7dmFyIEE9eWllbGQqUFAoSFAoSCkpfWNhdGNoKHkpe3JldHVybiBnLmwoIndlYl9lbmFibGVfcmV0cmllcyIpJiYoQT15IGluc3RhbmNlb2YgVHlwZUVycm9yJiZ5Lm1lc3NhZ2U9PT0iRmFpbGVkIHRvIGZldGNoIj8xOjAsVW8oQSkpP3tuZXh0U3RhdGU6IlJFVFJZIixwYXJhbXM6ey4uLm4sZXJyb3I6bmV3IEVDKEEseS5tZXNzYWdlKSxhdHRlbXB0OihuLmF0dGVtcHR8fDApKzF9fTp7bmV4dFN0YXRlOiJGQUxMQkFDSyIscGFyYW1zOnsuLi5ufX19eCYmRCYmRC5kZWxldGUoeCk7ZWsoeEQoay5pbnB1dCkpKCk7ay5jb25maWc/LlJWJiZnLmFMKGsuY29uZmlnLlJWKTtpZighQSlyZXR1cm57bmV4dFN0YXRlOiJGQUxMQkFDSyIscGFyYW1zOnsuLi5ufX07aWYoQSYmdHlwZW9mIEE9PT0ib2JqZWN0IiYmIUFycmF5LmlzQXJyYXkoQSkmJih4PUEseC5lcnJvck1ldGFkYXRhPy5zdGF0dXMmJgooeD14LmVycm9yTWV0YWRhdGEuc3RhdHVzLEg9eD09PTUwM3x8eD09PTUwNHx8eD09PTQyOT8yOng+PTQwMCYmeDw1MDB8fHg+PTUwMD8zOjAsVW8oSCkmJmcubCgid2ViX2VuYWJsZV9yZXRyaWVzIikpKSlyZXR1cm57bmV4dFN0YXRlOiJSRVRSWSIscGFyYW1zOnsuLi5uLGVycm9yOm5ldyBFQyhILGBIVFRQIFN0YXR1cyAke3h9YCx4KSxhdHRlbXB0OihuLmF0dGVtcHR8fDApKzF9fTshaCYmQSYmKHg9YigpLHg9eWllbGQqUFAoRW8oeCx7d2lyZVJlc3BvbnNlOkEseXRSZXF1ZXN0OmsscmVzcG9uc2VQYXlsb2FkOnt0eXBlOiJQQUdFX0NPTlRSQUNUIn19KSksSD14LmNvbnRlbnR8fHgucGxheWVyfHx4LnlCLHgudHlwZT09PSJQQUdFX0NPTlRSQUNUIiYmSCYmKEE9SCkpO3g9QTtpZihBcnJheS5pc0FycmF5KEEpKWlmKEE9QS5maWx0ZXIoeT0+ISh5LnBsYXllclJlc3BvbnNlfHx5LndhdGNoTmV4dFJlc3BvbnNlfHx5KS5yZXNwb25zZUNvbnRleHQ/LmZyYW1ld29ya09ubHkpLEEubGVuZ3RoPT09CjEpeD1BWzBdOwplbHNlIGlmKEEubGVuZ3RoPjEpeD1BLmZpbmQoeT0+eS53YXRjaE5leHRSZXNwb25zZSl8fEFbMF07CmVsc2UgcmV0dXJue25leHRTdGF0ZToiRkFJTEVEIixlcnJvcjpFcnJvcigiRmV0Y2hOb2RlIHByb2R1Y2VkIG9ubHkgZnJhbWV3b3JrLW9ubHkgcmVzcG9uc2VzIil9O3JldHVybntuZXh0U3RhdGU6IkRPTkUiLHZhbHVlOmgmJiFnLmwoIndlYl9ubV9mZXRjaF9jaHVua19jYWxsYmFja19rcyIpP0c6eH19KCl9KX19OwpUV1tnLkxYXT1bbEIsaWQsblIsZy5ocChuZXcgZy5BTCgiUkVRVUVTVF9TRVFVRU5DSU5HIikpXTt2YXIgams9Y2xhc3MgZXh0ZW5kcyB5WHtjb25zdHJ1Y3RvcihuLFcpe3N1cGVyKCk7dGhpcy5KPW47dGhpcy5OPVd9ZXhlY3V0ZShuKXt2YXIgVz10aGlzLk4sRD10aGlzLkosYj1uLnl0UmVxdWVzdDtyZXR1cm4gVz8uckEoYi5pbnB1dCxiLmlubmVyVHViZVJlcXVlc3QpP09vKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIHY9eWllbGQqUFAoSFAoVy5zNihiLmlucHV0LGIuaW5uZXJUdWJlUmVxdWVzdCkpKTt2YXIgaz1EKCk7di5wbGF5ZXJSZXNwb25zZSYmdi53YXRjaE5leHRSZXNwb25zZT8oeWllbGQqUFAoeXEoayx7d2lyZVJlc3BvbnNlOntwbGF5ZXJSZXNwb25zZTp2LnBsYXllclJlc3BvbnNlfSx5dFJlcXVlc3Q6bi55dFJlcXVlc3QsY2h1bmtDYWxsYmFjazpuLmNodW5rQ2FsbGJhY2sscmVzcG9uc2VQYXlsb2FkOnt0eXBlOiJQQUdFX0NPTlRSQUNUIn0sZXh0cmFjdGVkUmVzcG9uc2U6di5wbGF5ZXJSZXNwb25zZX0pKSxrPXlpZWxkKlBQKHlxKGssCnt3aXJlUmVzcG9uc2U6e3dhdGNoTmV4dFJlc3BvbnNlOnYud2F0Y2hOZXh0UmVzcG9uc2V9LHl0UmVxdWVzdDpuLnl0UmVxdWVzdCxjaHVua0NhbGxiYWNrOm4uY2h1bmtDYWxsYmFjayxyZXNwb25zZVBheWxvYWQ6e3R5cGU6IlBBR0VfQ09OVFJBQ1QifSxleHRyYWN0ZWRSZXNwb25zZTp2LndhdGNoTmV4dFJlc3BvbnNlfSkpKTprPXlpZWxkKlBQKHlxKGsse3dpcmVSZXNwb25zZTp2LHl0UmVxdWVzdDpuLnl0UmVxdWVzdCxjaHVua0NhbGxiYWNrOm4uY2h1bmtDYWxsYmFjayxyZXNwb25zZVBheWxvYWQ6e3R5cGU6IlBBR0VfQ09OVFJBQ1QifSxleHRyYWN0ZWRSZXNwb25zZTp2fSkpO3ZhciBoPWsuY29udGVudHx8ay5wbGF5ZXJ8fGsueUI7ay50eXBlPT09IlBBR0VfQ09OVFJBQ1QiJiZoJiYodj1oKTtyZXR1cm57bmV4dFN0YXRlOiJET05FIix2YWx1ZTp2fX0oKX0pOkhQKHtuZXh0U3RhdGU6IkNPTlRFWFQiLApwYXJhbXM6bn0pfX07amtbZy5MWF09W25SLGcuaHAoR3h0KV07dmFyIENsPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLk49bn1leGVjdXRlKG4pe3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7dmFyIFc9dGhpcztyZXR1cm4gZnVuY3Rpb24qKCl7dHJ5e3ZhciBEPXlpZWxkKlBQKFZFMihXLG4uY29tbWFuZCwhIW4uY2h1bmtDYWxsYmFjaykpfWNhdGNoKGIpe3JldHVybntuZXh0U3RhdGU6IkZBSUxFRCIsZXJyb3I6Yn19cmV0dXJuKEQ9RC5EKG4uY29tbWFuZCxuLmZvcm0sbi5pZGVudGl0eSkpP3tuZXh0U3RhdGU6IkNBQ0hFIixwYXJhbXM6e3l0UmVxdWVzdDpELGNodW5rQ2FsbGJhY2s6bi5jaHVua0NhbGxiYWNrfX06e25leHRTdGF0ZToiRkFJTEVEIixlcnJvcjpFcnJvcigiRmFpbGVkIHRvIGJ1aWxkIHJlcXVlc3QgZm9yIGNvbW1hbmQiKX19KCl9KX19OwpDbFtnLkxYXT1bTWFdO3ZhciBCUD1jbGFzcyBleHRlbmRzIHlYe2V4ZWN1dGUobil7cmV0dXJuIE9vKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIHtpbm5lclR1YmVSZXF1ZXN0OlcsYXBpUGF0aDpELGNsaWNrVHJhY2tpbmdQYXJhbXM6Yixjb25maWc6dj17Qkc6e2lkZW50aXR5OnU5fX0saW5jbHVkZUN1cnJlbnRTY3JlZW5Ob25jZTprPSEwLGNodW5rQ2FsbGJhY2s6aH09bjtXLmNvbnRleHR8fChXLmNvbnRleHQ9Zy52YihiLGspKTt2YXIgeD1acihLJChEKSk7cmV0dXJue25leHRTdGF0ZToiQ0FDSEUiLHBhcmFtczp7eXRSZXF1ZXN0OntpbnB1dDp4LFBpOlV6KHgpLGlubmVyVHViZVJlcXVlc3Q6Vyxjb25maWc6dn0sY2h1bmtDYWxsYmFjazpofX19KCl9KX19O3ZhciB0NE09Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy50ZT1ufXJ1bihuLFcpe3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7dmFyIEQ9dGhpcztyZXR1cm4gZnVuY3Rpb24qKCl7Zm9yKHZhciBiPW4sdj1XLGs9W107Oyl7ay5wdXNoKFN0cmluZyhiKSk7dj15aWVsZCpQUChELnRlW2JdLmV4ZWN1dGUodikpO2lmKHYubmV4dFN0YXRlPT09IkRPTkUiKXJldHVybiBrLnB1c2goIkRPTkUiKSx2LnZhbHVlO2lmKHYubmV4dFN0YXRlPT09IkZBSUxFRCIpdGhyb3cgay5wdXNoKGBGQUlMRUQoJHt2LmVycm9yLm1lc3NhZ2V8fCJlcnJvciJ9KWApLHYuZXJyb3I7Yj12Lm5leHRTdGF0ZTt2PXYucGFyYW1zfX0oKX0pfX07Zy5Ncj1jbGFzcyBleHRlbmRzIHQ0TXt9O2cuTXIucHJvdG90eXBlLkQ9V1ooMSk7Zy5NcltnLkxYXT1bd19dO3ZhciBGNz1jbGFzcyBleHRlbmRzIHlYe2V4ZWN1dGUobil7cmV0dXJuIE9vKHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIFc9bi55dFJlcXVlc3QsRD1uLmVycm9yLGI9bi5hdHRlbXB0LHY9bi5jaHVua0NhbGxiYWNrLGs9Vy5jb25maWc/Llh4O2lmKCEoayYmRCBpbnN0YW5jZW9mIEVDJiZVbyhELnR5cGUpKXx8Yj4oay5tYXhSZXRyaWVzPz8wKSlyZXR1cm57bmV4dFN0YXRlOiJGQUxMQkFDSyIscGFyYW1zOnt5dFJlcXVlc3Q6VyxjaHVua0NhbGxiYWNrOnZ9fTt2YXIgaD0oRD1rLmtVKT9ELlBaKGIpOi0xO2g9PT0tMSYmKGg9MUUzKTtrLlQ2IT09dm9pZCAwJiYoaD1NYXRoLm1pbihoLGsuVDYpKTt5aWVsZCpQUChIUChuZXcgUHJvbWlzZSh4PT57Zy5WeCgwLHgsNCxoKX0pKSk7CnJldHVybntuZXh0U3RhdGU6IkZFVENIIixwYXJhbXM6e3l0UmVxdWVzdDpXLGNodW5rQ2FsbGJhY2s6dixhdHRlbXB0OmJ9fX0oKX0pfX07dmFyIFJqPWNsYXNzIGV4dGVuZHMgeVh7ZXhlY3V0ZShuKXtyZXR1cm4gT28odGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgVz1uLmNodW5rQ2FsbGJhY2ssRD1uLnJlc3BvbnNlUGF5bG9hZCxiPW4ud2lyZVJlc3BvbnNlO1cmJihXKEQpLCJwbGF5ZXJSZXNwb25zZSJpbiBiJiZiLnBsYXllclJlc3BvbnNlJiYoZy5EeSgpLGJRKDQpKSk7cmV0dXJue25leHRTdGF0ZToiRE9ORSIsdmFsdWU6RH19KCl9KX19O3ZhciAkejI9WyJ0eXBlLmdvb2dsZWFwaXMuY29tL3lvdXR1YmUuYXBpLnBmaWlubmVydHViZS5Zb3V0dWJlQXBpSW5uZXJ0dWJlLkJyb3dzZVJlc3BvbnNlIiwidHlwZS5nb29nbGVhcGlzLmNvbS95b3V0dWJlLmFwaS5wZmlpbm5lcnR1YmUuWW91dHViZUFwaUlubmVydHViZS5QbGF5ZXJSZXNwb25zZSIsInR5cGUuZ29vZ2xlYXBpcy5jb20veW91dHViZS5hcGkucGZpaW5uZXJ0dWJlLllvdXR1YmVBcGlJbm5lcnR1YmUuUGFuZWxSZXNwb25zZSJdLFFxPWNsYXNzIGV4dGVuZHMgeVh7ZXhlY3V0ZShuKXtyZXR1cm4gT28odGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgVz1uLm9uZVBsYXRmb3JtRXJyb3I7aWYoVyYmImRldGFpbHMiaW4gVyYmVy5kZXRhaWxzKXtXPVcuZGV0YWlscztmb3IobGV0IEQgb2YgVylpZigoVz1EWyJAdHlwZSJdKSYmJHoyLmluZGV4T2YoVyk+LTEpcmV0dXJuIGRlbGV0ZSBEWyJAdHlwZSJdLHtuZXh0U3RhdGU6IlBST0NFU1NfUkVTUE9OU0UiLApwYXJhbXM6ey4uLm4sZXh0cmFjdGVkUmVzcG9uc2U6RH19fXJldHVybntuZXh0U3RhdGU6IkZBSUxFRCIsZXJyb3I6RXJyb3IoIkVycm9yIHJlc3BvbnNlIGNvdWxkIG5vdCBiZSB1bnBhY2tlZCIpfX0oKX0pfX07dmFyIFZxPWNsYXNzIGV4dGVuZHMgeVh7Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLk49bn1leGVjdXRlKG4pe3ZhciBXPXRoaXMuTjtyZXR1cm4gT28odGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbiooKXt2YXIgRD1uLmV4dHJhY3RlZFJlc3BvbnNlLGI9bi55dFJlcXVlc3Qsdj1uLnJlc3BvbnNlUGF5bG9hZCxrPW4ud2lyZVJlc3BvbnNlO2lmKEQmJiEoImNvZGUiaW4gRHx8ImVycm9yImluIEQpJiYhRC5zZXF1ZW5jZU1ldGFEYXRhPy5za2lwUHJvY2Vzc2luZylmb3IobGV0IGggb2Ygc28pV1toXSYmV1toXS5oYW5kbGVSZXNwb25zZShELGIpO2sud2F0Y2hOZXh0UmVzcG9uc2V8fGsucmVlbEl0ZW1XYXRjaFJlc3BvbnNlP2sud2F0Y2hOZXh0UmVzcG9uc2U/di5jb250ZW50PWsud2F0Y2hOZXh0UmVzcG9uc2U6di5jb250ZW50PWsucmVlbEl0ZW1XYXRjaFJlc3BvbnNlOmsucGxheWVyUmVzcG9uc2U/di5wbGF5ZXI9ay5wbGF5ZXJSZXNwb25zZTprLnJlZWxXYXRjaFNlcXVlbmNlUmVzcG9uc2U/CnYueUI9ay5yZWVsV2F0Y2hTZXF1ZW5jZVJlc3BvbnNlOnYuY29udGVudD1rO3JldHVybntuZXh0U3RhdGU6IkNBTExCQUNLX0RJU1BBVENIRVIiLHBhcmFtczpufX0oKX0pfX07ClZxW2cuTFhdPVtWV107dmFyIFdHPWNsYXNzIGV4dGVuZHMgdDRNe307V0dbZy5MWF09W2FqXTt2YXIgY1A9Y2xhc3MgZXh0ZW5kcyB5WHtleGVjdXRlKG4pe3JldHVybiBPbyh0aGlzLGZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBXPW4ud2lyZVJlc3BvbnNlLEQ7QXJyYXkuaXNBcnJheShXKT9EPVdbMF06dHlwZW9mIFc9PT0ib2JqZWN0IiYmVyE9PW51bGwmJigicGxheWVyUmVzcG9uc2UiaW4gV3x8IndhdGNoTmV4dFJlc3BvbnNlImluIFd8fCJyZWVsSXRlbVdhdGNoUmVzcG9uc2UiaW4gV3x8InJlZWxXYXRjaFNlcXVlbmNlUmVzcG9uc2UiaW4gVyk/RD1XLnBsYXllclJlc3BvbnNlfHxXLndhdGNoTmV4dFJlc3BvbnNlfHxXLnJlZWxJdGVtV2F0Y2hSZXNwb25zZXx8Vy5yZWVsV2F0Y2hTZXF1ZW5jZVJlc3BvbnNlOkQ9VztyZXR1cm4gRCYmImVycm9yImluIEQ/e25leHRTdGF0ZToiRVJST1JfVU5QQUNLRVIiLHBhcmFtczp7Li4ubixvbmVQbGF0Zm9ybUVycm9yOkQuZXJyb3J9fTp7bmV4dFN0YXRlOiJQUk9DRVNTX1JFU1BPTlNFIixwYXJhbXM6ey4uLm4sZXh0cmFjdGVkUmVzcG9uc2U6RH19fSgpfSl9fTt2YXIgUEd4PWNsYXNzIGV4dGVuZHMgUEN7Vygpe3JldHVybiBDOGJ9Z2V0IGooKXtyZXR1cm4hMH1OKG4pe3JldHVybiBnLncobixMdTEpfHx2b2lkIDB9SihuLFcsRD17fSl7Vy5jaGFubmVsSWRzJiYobi5jaGFubmVsSWRzPVcuY2hhbm5lbElkcyk7Vy5zaWxvTmFtZSYmKG4uc2lsb05hbWU9Vy5zaWxvTmFtZSk7Vy5wYXJhbXMmJihuLnBhcmFtcz1XLnBhcmFtcyk7RC5ib3RndWFyZFJlc3BvbnNlJiYobi5ib3RndWFyZFJlc3BvbnNlPUQuYm90Z3VhcmRSZXNwb25zZSk7RC5mZWF0dXJlJiYobi5jbGllbnRGZWF0dXJlPUQuZmVhdHVyZSl9fTt2YXIgWmh0PWNsYXNzIGV4dGVuZHMgUEN7Vygpe3JldHVybiBCeWl9Z2V0IGooKXtyZXR1cm4hMH1OKG4pe3JldHVybiBnLncobixoblUpfHx2b2lkIDB9SihuLFcpe1cuY2hhbm5lbElkcyYmKG4uY2hhbm5lbElkcz1XLmNoYW5uZWxJZHMpO1cuc2lsb05hbWUmJihuLnNpbG9OYW1lPVcuc2lsb05hbWUpO1cucGFyYW1zJiYobi5wYXJhbXM9Vy5wYXJhbXMpfX07dmFyIFI4PWNsYXNzIGV4dGVuZHMgUEN7Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLmNKPW59Vygpe3JldHVybiBkJFN9TihuKXtyZXR1cm4gZy53KG4sdXhDKXx8Zy53KG4sb05pKXx8Zy53KG4saXpTKX1KKG4sVyl7Vy5zZXJpYWxpemVkU2hhcmVFbnRpdHkmJihuLnNlcmlhbGl6ZWRTaGFyZWRFbnRpdHk9Vy5zZXJpYWxpemVkU2hhcmVFbnRpdHkpO1cuY2xpZW50UGFyYW1JZGVudGlmaWVyJiZ0aGlzLmNKPy5OKFcuY2xpZW50UGFyYW1JZGVudGlmaWVyKSYmKG4uY2xpZW50UGFyYW1zPXRoaXMuY0ouSihXLmNsaWVudFBhcmFtSWRlbnRpZmllcikpfX07UjhbZy5MWF09W25ldyBnLkFMKCJTSEFSRV9DTElFTlRfUEFSQU1TX1BST1ZJREVSX1RPS0VOIildO3ZhciBtZlM9Y2xhc3MgZXh0ZW5kcyBQQ3tXKCl7cmV0dXJuIGxPTX1nZXQgaigpe3JldHVybiEwfU4obil7cmV0dXJuIGcudyhuLFNZdyl8fHZvaWQgMH1KKG4sVyxEKXtuLmZlZWRiYWNrVG9rZW5zPVtdO1cuZmVlZGJhY2tUb2tlbiYmbi5mZWVkYmFja1Rva2Vucy5wdXNoKFcuZmVlZGJhY2tUb2tlbik7aWYoVz1XLmNwbnx8RC5jcG4pbi5mZWVkYmFja0NvbnRleHQ9e2NwbjpXfTtuLmlzRmVlZGJhY2tUb2tlblVuZW5jcnlwdGVkPSEhRC5pc19mZWVkYmFja190b2tlbl91bmVuY3J5cHRlZDtuLnNob3VsZE1lcmdlPSExO0QuZXh0cmFfZmVlZGJhY2tfdG9rZW5zJiYobi5zaG91bGRNZXJnZT0hMCxuLmZlZWRiYWNrVG9rZW5zPW4uZmVlZGJhY2tUb2tlbnMuY29uY2F0KEQuZXh0cmFfZmVlZGJhY2tfdG9rZW5zKSl9fTt2YXIgSzRpPWNsYXNzIGV4dGVuZHMgUEN7Vygpe3JldHVybiBUeXd9TihuKXtyZXR1cm4gZy53KG4sa2l3KXx8dm9pZCAwfUoobixXKXtXLnBhcmFtcyYmKG4ucGFyYW1zPVcucGFyYW1zKTtXLnNlY29uZGFyeVBhcmFtcyYmKG4uc2Vjb25kYXJ5UGFyYW1zPVcuc2Vjb25kYXJ5UGFyYW1zKX19O3ZhciBPaHI9Y2xhc3MgZXh0ZW5kcyBQQ3tXKCl7cmV0dXJuIGpkeH1OKG4pe3JldHVybiBnLncobixuWEMpfHx2b2lkIDB9SihuLFcpe1cuYWN0aW9ucyYmKG4uYWN0aW9ucz1XLmFjdGlvbnMpO1cucGFyYW1zJiYobi5wYXJhbXM9Vy5wYXJhbXMpO1cucGxheWxpc3RJZCYmKG4ucGxheWxpc3RJZD1XLnBsYXlsaXN0SWQpfX07dmFyIFVmWj1jbGFzcyBleHRlbmRzIFBDe1coKXtyZXR1cm4gem50fU4obil7cmV0dXJuIGcudyhuLGRJeCl9SihuLFcsRD17fSl7Vy5zZXJpYWxpemVkU2hhcmVFbnRpdHkmJihuLnNlcmlhbGl6ZWRTaGFyZWRFbnRpdHk9Vy5zZXJpYWxpemVkU2hhcmVFbnRpdHkpO0QuaW5jbHVkZUxpc3RJZCYmKG4uaW5jbHVkZUxpc3RJZD0hMCl9fTt2YXIgUVc9bmV3IGcuQUwoIlJFU09MVkVfVVJMX1BSRUZFVENIX1RPS0VOIik7dmFyIGpZPW5ldyBnLkFMKCJDTElFTlRfTkFNRV9UT0tFTiIpO3ZhciBDZj1uZXcgZy5BTCgiREVGQVVMVF9TVE9SRV9FWFBJUkFUSU9OX1RPS0VOIik7dmFyIHJaaD1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuY2xpZW50TmFtZT1uO3RoaXMuSj1XfWFzeW5jIHB1dChuLFcpe1c9ey4uLlcuZGF0YX07Vy5rZXk9bjtXLmNsaWVudE5hbWU9dGhpcy5jbGllbnROYW1lO1cuZXhwaXJlVGltZXN0YW1wTXM9PT12b2lkIDAmJihXLmV4cGlyZVRpbWVzdGFtcE1zPShNYXRoLnJvdW5kKCgwLGcuUikoKSkrdGhpcy5KKS50b1N0cmluZygpKTtyZXR1cm4gRHcodGhpcyxuLFcpfX07clpoW2cuTFhdPVtqWSxDZl07dmFyIGJoPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuZGF0YT17Li4ubn07ZGVsZXRlIHRoaXMuZGF0YS5pbm5lcnR1YmVSZXNwb25zZT8uZnJhbWV3b3JrVXBkYXRlc31pc0V4cGlyZWQoKXtyZXR1cm4gTnVtYmVyKHRoaXMuZGF0YS5leHBpcmVUaW1lc3RhbXBNc3x8MCk8KDAsZy5SKSgpfWlzUHJvY2Vzc2VkKCl7cmV0dXJuISF0aGlzLmRhdGEuaXNQcm9jZXNzZWR9fTt2YXIgQTNqPWNsYXNzIGV4dGVuZHMgclpoe2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKTt0aGlzLk49bmV3IE1hcH1hc3luYyBnZXQobil7cmV0dXJuIHZHKHRoaXMsbil9YXN5bmMgcmVtb3ZlKG4pe2tNKHRoaXMsbil9YXN5bmMgVGkoKXt0aGlzLk4uZm9yRWFjaChuPT57Y2xlYXJUaW1lb3V0KG4udGltZXIpfSk7CnRoaXMuTi5jbGVhcigpfWhhcyhuKXtyZXR1cm4hIXRoaXMuTi5nZXQobil9dUIoKXtyZXR1cm4gdGhpcy5OLmtleXMoKX19O3ZhciBzb2I9Y2xhc3MgZXh0ZW5kcyBQQ3tXKCl7cmV0dXJuIHN2Mn1OKG4pe3JldHVybiBnLncobixUZSl9SihuLFcpe1cudmlkZW9JZCYmKG4ucGxheWVyUmVxdWVzdD17dmlkZW9JZDpXLnZpZGVvSWR9LFcucGxheWVyUGFyYW1zJiYobi5wbGF5ZXJSZXF1ZXN0LnBhcmFtcz1XLnBsYXllclBhcmFtcyksVy5yYWN5Q2hlY2tPayYmKG4ucGxheWVyUmVxdWVzdC5yYWN5Q2hlY2tPaz0hIVcucmFjeUNoZWNrT2spLFcuY29udGVudENoZWNrT2smJihuLnBsYXllclJlcXVlc3QuY29udGVudENoZWNrT2s9ISFXLmNvbnRlbnRDaGVja09rKSk7Vy5wYXJhbXMmJihuLnBhcmFtcz1XLnBhcmFtcyk7Vy5pbnB1dFR5cGUmJihuLmlucHV0VHlwZT1XLmlucHV0VHlwZSk7bi5kaXNhYmxlUGxheWVyUmVzcG9uc2U9ITB9VihuKXt2YXIgVzsobj10aGlzLlgobikpJiYoVz17SG46e1JMOm59fSk7Zy5sKCJ3ZWJfbG9nX3JlZWxzX3RpY2tzIikmJihXPVd8fHt9LFcuTGE9InJfd3JzIixXLlJWPSJyX3dyciIpOwpyZXR1cm4gV31YKG4pe249dGhpcy5OKG4pO2lmKG4/LnZpZGVvSWQpe3ZhciBXPXt2aWRlb0lkOm4udmlkZW9JZH07bi5wYXJhbXMmJihXLnBhcmFtcz1uLnBhcmFtcyk7cmV0dXJuIHlIKCJyZWVsX2l0ZW1fd2F0Y2giLFcpfX19O3ZhciBOdE09bmV3IGcuQUwoIkVOVElUWV9TVEFURV9UT0tFTiIpO3ZhciBZa1M9Y2xhc3N7Y29uc3RydWN0b3IoKXt2YXIgbj1wRmksVz1xTihVeGooKSk7dGhpcy5zdG9yZT0kZihuLHZvaWQgMCxXKX1nZXRTdGF0ZSgpe3JldHVybiB0aGlzLnN0b3JlLmdldFN0YXRlKCl9ZGlzcGF0Y2gobil7cmV0dXJuIHRoaXMuc3RvcmUuZGlzcGF0Y2gobil9c3Vic2NyaWJlKG4pe3JldHVybiB0aGlzLnN0b3JlLnN1YnNjcmliZShuKX1yZXBsYWNlUmVkdWNlcihuKXtyZXR1cm4gdGhpcy5zdG9yZS5yZXBsYWNlUmVkdWNlcihuKX1bU3ltYm9sLm9ic2VydmFibGVdKCl7cmV0dXJuIHRoaXMuc3RvcmVbU3ltYm9sLm9ic2VydmFibGVdKCl9fTt2YXIgUzU9Y2xhc3N7Y29uc3RydWN0b3Iobj1bXSl7dGhpcy5OPVtdO3RoaXMuVz10aGlzLko9MDt0aGlzLlg9dm9pZCAwO3RoaXMudG90YWxMZW5ndGg9MDtuLmZvckVhY2goVz0+e3RoaXMuYXBwZW5kKFcpfSl9aigpe3JldHVybiB0aGlzLnRvdGFsTGVuZ3RofWFwcGVuZChuKXtpZih4TSh0aGlzLG4pKXtsZXQgVz10aGlzLk5bdGhpcy5OLmxlbmd0aC0xXTsKdGhpcy5OW3RoaXMuTi5sZW5ndGgtMV09bmV3IFVpbnQ4QXJyYXkoVy5idWZmZXIsVy5ieXRlT2Zmc2V0LFcubGVuZ3RoK24ubGVuZ3RoKTtMUih0aGlzKX1lbHNlIHRoaXMuTi5wdXNoKG4pO3RoaXMudG90YWxMZW5ndGgrPW4ubGVuZ3RofXNwbGl0KG4pe3ZhciBXPW5ldyBTNSxEPW5ldyBTNTtmb3IobGV0IGIgb2YgdGhpcy5OKW4+PWIubGVuZ3RoPyhXLmFwcGVuZChiKSxuLT1iLmxlbmd0aCk6bj8oVy5hcHBlbmQobmV3IFVpbnQ4QXJyYXkoYi5idWZmZXIsYi5ieXRlT2Zmc2V0LG4pKSxELmFwcGVuZChuZXcgVWludDhBcnJheShiLmJ1ZmZlcixiLmJ5dGVPZmZzZXQrbixiLmxlbmd0aC1uKSksbj0wKTpELmFwcGVuZChiKTtyZXR1cm57Q3M6VyxZOTpEfX1pc0ZvY3VzZWQobil7cmV0dXJuIG4+PXRoaXMuVyYmbjx0aGlzLlcrdGhpcy5OW3RoaXMuSl0ubGVuZ3RofWZvY3VzKG4pe2lmKCF0aGlzLmlzRm9jdXNlZChuKSl7Zm9yKG48dGhpcy5XJiZMUih0aGlzKTt0aGlzLlcrdGhpcy5OW3RoaXMuSl0ubGVuZ3RoPD0KbiYmdGhpcy5KPHRoaXMuTi5sZW5ndGg7KXRoaXMuVys9dGhpcy5OW3RoaXMuSl0ubGVuZ3RoLHRoaXMuSis9MTt0aGlzLlg9dm9pZCAwfX19O3ZhciBZTSxORCxmUjtnLk5tPSgoKT0+e3ZhciBuPWI9Pm5ldyBVaW50OEFycmF5KGIpLFc9Yj0+e3ZhciB2PW5ldyBVaW50OEFycmF5KGIubGVuZ3RoKTsKZm9yKGxldCBrPTA7azxiLmxlbmd0aDtrKyspdltrXT1iW2tdO3JldHVybiB2fSxEPW5ldyBVaW50OEFycmF5KFsxXSk7CnJldHVybiBELmxlbmd0aD09PTEmJkRbMF09PT0xP246V30pKCk7CllNPUFycmF5KDEwMjQpO05EPXR5cGVvZiBUZXh0RGVjb2RlciE9PSJ1bmRlZmluZWQiP25ldyBUZXh0RGVjb2Rlcjp2b2lkIDA7ZlI9dHlwZW9mIFRleHRFbmNvZGVyIT09InVuZGVmaW5lZCI/bmV3IFRleHRFbmNvZGVyOnZvaWQgMDt2YXIgQVI9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW47dGhpcy5wb3M9MDt0aGlzLko9LTF9fTt2YXIgejY9Y2xhc3N7Y29uc3RydWN0b3Iobj00MDk2KXt0aGlzLldWPXZvaWQgMDt0aGlzLnBvcz0wO3RoaXMuSj1bXTt0aGlzLk49ZGQobik7dGhpcy52aWV3PW5ldyBEYXRhVmlldyh0aGlzLk4uYnVmZmVyLHRoaXMuTi5ieXRlT2Zmc2V0LHRoaXMuTi5ieXRlTGVuZ3RoKX19O3ZhciBhdz17YW5pbWF0aW9uRW50aXR5OjMwMixhY2NvdW50TGlua1N0YXR1c0VudGl0eToxMjIsYXNrU3R1ZGlvR2VuZXJhdGVkRGF0YUVudGl0eTo2MzAsYm9vbGVhbkVudGl0eTozMDcsYXNrU3R1ZGlvQ29udmVyc2F0aW9uU3VtbWFyeUVudGl0eTo2MzcsYnV0dG9uRW50aXR5OjM1OCxjYXB0aW9uVHJhY2s6MjI1LGNoYW5uZWxIYW5kbGU6Mjc1LGNoaXBFbnRpdHk6NDk4LGNvbW1lcmNlQWNxdWlzaXRpb25DbGllbnRQYXlsb2FkRW50aXR5OjI3Nixjb21tZXJjZUNhcnRMaXN0RW50aXR5OjIzNixjb21tZXJjZVRva2VuQmFsYW5jZUVudGl0eTo1MzIsY29tcG9zaXRlU291cmNlRW50aXR5OjU5NCxjb250ZXh0Tm90ZUZlZWRFbnRpdHlQYXlsb2FkOjQ4Myxjb250ZXh0Tm90ZVVzZXJSYXRpbmdFbnRpdHlQYXlsb2FkOjU3Nixjb250aW51YXRpb25Ub2tlbkVudGl0eTo0MDYsZG93bmxvYWRRdWFsaXR5UGlja2VyRW50aXR5OjIwMixkb3dubG9hZHNQYWdlUmVmcmVzaFRva2VuRW50aXR5OjI5OSwKZG93bmxvYWRzUGFnZVZpZXdDb25maWd1cmF0aW9uRW50aXR5OjI2NCxkb3dubG9hZFN0YXR1c0VudGl0eToxNDEsZGlzbWlzc1N0YXRlOjU0MCxzZnZBdWRpb0l0ZW1DdXJyZW50bHlQbGF5aW5nRW50aXR5OjE4NixlbW9qaUZvdW50YWluRGF0YUVudGl0eTozOTMsZW1vamlDdXN0b21pemF0aW9uU2V0RW50aXR5OjQ5NixmYWtlQ2hhbm5lbDoyLGZha2VQbGF5bGlzdDoyNzksZmFrZVBsYXlsaXN0RW50cnlDb2xsZWN0aW9uOjI4MCxmYWtlVmlkZW86MTgyLGZha2VWaWRlb0Rlc2NyaXB0aW9uOjI3OCxmZWF0dXJlZFByb2R1Y3RzRW50aXR5OjM5MixzYXZlZFByb2R1Y3RzU3RhdGVFbnRpdHk6NTk4LGZsb3dTdGF0ZUVudGl0eToyNTIsaWNvbkJhZGdlRW50aXR5OjIyOSxpbnRlcnN0aXRpYWxJbnRlcmFjdGlvblN0YXRlRW50aXR5OjQ0MyxsaWtlQnV0dG9uQW5pbWF0aW9uRW50aXR5OjU2NyxsaXZlQ2hhdFBvbGxTdGF0ZUVudGl0eToyMTcsbGl2ZVZpZXdlckxlYWRlcmJvYXJkQ2hhdEVudHJ5UG9pbnRTdGF0ZUVudGl0eTo1NjMsCmxpdmVWaWV3ZXJMZWFkZXJib2FyZFBvaW50c0VudGl0eTo1NjQsbGl2ZVJlYWN0aW9uc0RhdGFFbnRpdHk6NTAzLGxvZ29FbnRpdHk6MjQ1LG1hY3JvTWFya2VyRW50aXR5OjMyOSxtYWluRG93bmxvYWRzTGlicmFyeUVudGl0eToxNTgsbWFpbkRvd25sb2Fkc0xpc3RFbnRpdHk6MTY0LG1haW5QbGF5bGlzdERvd25sb2FkU3RhdGVFbnRpdHk6MzczLG1haW5QbGF5bGlzdEVudGl0eTozMDYsbWFpblBsYXlsaXN0VmlkZW9FbnRpdHk6MzY4LG1haW5WaWRlb0Rvd25sb2FkU3RhdGVFbnRpdHk6MjYyLG1haW5WaWRlb0VudGl0eToyNjEsbWFya2Vyc0VuZ2FnZW1lbnRQYW5lbFN5bmNFbnRpdHk6MTk2LG1hcmtlcnNWaXNpYmlsaXR5T3ZlcnJpZGVFbnRpdHk6MzEyLG11c2ljQWxidW1SZWxlYXNlRGV0YWlsOjE4LG11c2ljQWxidW1SZWxlYXNlRG93bmxvYWRNZXRhZGF0YUVudGl0eToyNTksbXVzaWNBbGJ1bVJlbGVhc2U6MTcsbXVzaWNBbGJ1bVJlbGVhc2VVc2VyRGV0YWlsOjE5LG11c2ljQXJ0aXN0RGV0YWlsOjIxLAptdXNpY0FydGlzdDoyMCxtdXNpY0FydGlzdFVzZXJEZXRhaWw6MjIsbXVzaWNEb3dubG9hZHNMaWJyYXJ5RW50aXR5OjI1NyxtdXNpY0xpYnJhcnlFZGl0OjEyMSxtdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHk6MzE4LG11c2ljUGxheWxpc3Q6MjQsbXVzaWNQbGF5bGlzdERvd25sb2FkTWV0YWRhdGFFbnRpdHk6MjQ4LG11c2ljU2hhcmU6MTAwLG11c2ljVHJhY2tEZXRhaWw6MjksbXVzaWNUcmFja0Rvd25sb2FkTWV0YWRhdGFFbnRpdHk6MjM0LG11c2ljVHJhY2s6MjgsbXVzaWNUcmFja1VzZXJEZXRhaWw6MzAsb2ZmbGluZU9yY2hlc3RyYXRpb25BY3Rpb25XcmFwcGVyRW50aXR5OjE2OSxvZmZsaW5lVmlkZW9Qb2xpY3k6MTMwLG9mZmxpbmVWaWRlb1N0cmVhbXM6MTk4LG9mZmxpbmVhYmlsaXR5RW50aXR5OjI0NixvcmNoZXN0cmF0aW9uV2ViU2FtcGxpbmdFbnRpdHk6MjQyLHBhZ2VIZWFkZXJFbnRpdHk6NDk1LHBhcnR5R2FtZVBhbmVsRW50aXR5OjYxOCxzbGlkZXJHYW1lUGFuZWxFbnRpdHk6NjMzLApwZHBTdGF0ZUVudGl0eTo1MjQscGlubmVkUHJvZHVjdEVudGl0eToyNzMscGxheWJhY2tEYXRhOjExOSxwbGF5ZXJTdGF0ZUVudGl0eTozMjMscGxheWxpc3RUaHVtYm5haWxFZGl0c0VudGl0eTo1MzkscXVhbnRpdHlJbmNyZW1lbnRlckVudGl0eTozNTYscmVmcmVzaDoxNDgsc2F2ZVRvUGxheWxpc3RMaXN0RW50aXR5OjIzMSxzZWxlY3RlZENoaXBJbmRleEVudGl0eVBheWxvYWQ6NDc5LHNlbGVjdGlvblZhbHVlTGlzdEVudGl0eTo2MzQsc2V0dGluZ0VudGl0eToyOTcsc3RyaW5nRW50aXR5OjM4MixzdWdnZXN0ZWRGZWVkYmFja0NoaXBTdGF0ZUVudGl0eTo0ODUsdHJhbnNmZXI6MTIwLHRyZW5kaW5nT2ZmZXJFbnRpdHk6NDY5LHVucGx1Z2dlZFNpZGVzaGVldEhlYWRlclN0YXRlRW50aXR5OjYzNSx2aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eTo0NjEsdmlkZW9PdmVydmlld0FzeW5jRGF0YUVudGl0eTo1NDUsdmlkZW9QbGF5YmFja1Bvc2l0aW9uRW50aXR5Ojc2LHZvdGluZ0VudGl0eTo1NjEsCnl0TWFpbkNoYW5uZWxFbnRpdHk6MTUyLHlvdWNoYXRQZW5kaW5nUmVzcG9uc2VFbnRpdHk6NTUzLHl0TWFpbkRvd25sb2FkZWRWaWRlb0VudGl0eToxNTUseXRNYWluVmlkZW9FbnRpdHk6MTUxfSxWQT17fTtmb3IobGV0IFtuLFddb2YgT2JqZWN0LmVudHJpZXMoYXcpKXtsZXQgRD1uLGI9VztiJiYoVkFbYl09RCl9O3ZhciB2ZTt2YXIgSDZ0PSExLGdOLGhFLHgkLExmLGVZLGZIYj1jbGFzcyBleHRlbmRzIGcuRk17Y29uc3RydWN0b3Iobil7c3VwZXIoKTt0aGlzLmNvdW50ZXI9WzAsMCwwLDBdO3RoaXMuSj1uZXcgVWludDhBcnJheSgxNik7dGhpcy5OPTE2O2lmKCFINnQpe3ZhciBXLEQ9bmV3IFVpbnQ4QXJyYXkoMjU2KSxiPW5ldyBVaW50OEFycmF5KDI1Nik7dmFyIHY9MTtmb3IoVz0wO1c8MjU2O1crKylEW3ZdPVcsYltXXT12LHZePXY8PDFeKHY+PjcmJjI4Myk7Z049bmV3IFVpbnQ4QXJyYXkoMjU2KTtoRT1rJCgyNTYpO3gkPWskKDI1Nik7TGY9ayQoMjU2KTtlWT1rJCgyNTYpO2ZvcihsZXQgaD0wO2g8MjU2O2grKyl7dj1oP2JbMjU1XkRbaF1dOjA7dl49djw8MV52PDwyXnY8PDNedjw8NDt2PXYmMjU1XnY+Pj44Xjk5O2dOW2hdPXY7Vz12PDwxXih2Pj43JiYyODMpO3ZhciBrPVdedjtoRVtoXT1XPDwyNHx2PDwxNnx2PDw4fGs7eCRbaF09azw8MjR8aEVbaF0+Pj44O0xmW2hdPXY8PDI0fHgkW2hdPj4+Cjg7ZVlbaF09djw8MjR8TGZbaF0+Pj44fUg2dD0hMH12PWskKDQ0KTtmb3IoRD0wO0Q8NDtEKyspdltEXT1uWzQqRF08PDI0fG5bNCpEKzFdPDwxNnxuWzQqRCsyXTw8OHxuWzQqRCszXTtmb3IoYj0xO0Q8NDQ7RCsrKW49dltELTFdLEQlNHx8KG49KGdOW24+PjE2JjI1NV1eYik8PDI0fGdOW24+PjgmMjU1XTw8MTZ8Z05bbiYyNTVdPDw4fGdOW24+Pj4yNF0sYj1iPDwxXihiPj43JiYyODMpKSx2W0RdPXZbRC00XV5uO3RoaXMua2V5PXZ9ZW5jcnlwdChuKXt2YXIgVz1uLmxlbmd0aDtuPW5ldyBVaW50OEFycmF5KG4uYnVmZmVyLnNsaWNlKG4uYnl0ZU9mZnNldCxuLmJ5dGVPZmZzZXQrVykpO2Zvcih2YXIgRD10aGlzLkosYj0wO2I8VyYmdGhpcy5OPDE2OyluW2IrK11ePURbdGhpcy5OKytdO2Zvcih2YXIgdj1XLShXLWIpJTE2O2I8djspWDgodGhpcyksbltiKytdXj1EWzBdLG5bYisrXV49RFsxXSxuW2IrK11ePURbMl0sbltiKytdXj1EWzNdLG5bYisrXV49RFs0XSxuW2IrK11ePQpEWzVdLG5bYisrXV49RFs2XSxuW2IrK11ePURbN10sbltiKytdXj1EWzhdLG5bYisrXV49RFs5XSxuW2IrK11ePURbMTBdLG5bYisrXV49RFsxMV0sbltiKytdXj1EWzEyXSxuW2IrK11ePURbMTNdLG5bYisrXV49RFsxNF0sbltiKytdXj1EWzE1XTtpZihiPFcpZm9yKFg4KHRoaXMpLHRoaXMuTj0wO2I8VzspbltiKytdXj1EW3RoaXMuTisrXTtyZXR1cm4gbn19O3ZhciBxYT0hMTsoKCk9Pnt2YXIgbj1iPT5uZXcgVWludDhBcnJheShiKSxXPWI9Pnt2YXIgdj1uZXcgVWludDhBcnJheShiLmxlbmd0aCk7CmZvcihsZXQgaz0wO2s8Yi5sZW5ndGg7aysrKXZba109YltrXTtyZXR1cm4gdn0sRD1uZXcgVWludDhBcnJheShbMV0pOwpyZXR1cm4gRC5sZW5ndGg9PT0xJiZEWzBdPT09MT9uOld9KSgpOwp2YXIgR3I7dmFyIHVvPWNsYXNze2NvbnN0cnVjdG9yKG4pe3ZhciBXPXRFKCk7VyYmKHRoaXMuTj1uZXcgZFhNKG4sVykpO3RoaXMuSj1uZXcgYjEobil9YXN5bmMgZW5jcnlwdChuLFcpe2lmKHRoaXMuTil0cnl7cmV0dXJuIGF3YWl0IHRoaXMuTi5lbmNyeXB0KG4sVyl9Y2F0Y2goRCl7Zy5HcShEKSxxYT0hMCx0aGlzLk49dm9pZCAwfXJldHVybiB0aGlzLkouZW5jcnlwdChuLFcpfWRlY3J5cHQobixXKXtyZXR1cm4gdGhpcy5lbmNyeXB0KG4sVyl9fSxkWE09Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLlc9bjt0aGlzLko9V31hc3luYyBlbmNyeXB0KG4sVyl7dHJ5e3JldHVybiBhd2FpdCBiaDEodGhpcyxuLFcpfWNhdGNoKEQpe3Rocm93IGcuR3EoRCkscWE9ITAsRDt9fX0sYjE9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5KPW59ZW5jcnlwdChuLFcpe3RoaXMuTnx8KHRoaXMuTj1uZXcgZkhiKHRoaXMuSikpO3ZhciBEPXRoaXMuTjtmb3IobGV0IGI9MDtiPDQ7YisrKUQuY291bnRlcltiXT0KV1tiKjRdPDwyNHxXW2IqNCsxXTw8MTZ8V1tiKjQrMl08PDh8V1tiKjQrM107RC5OPTE2O3JldHVybiB0aGlzLk4uZW5jcnlwdChuKX1kZWNyeXB0KG4sVyl7cmV0dXJuIHRoaXMuZW5jcnlwdChuLFcpfX07dmFyIHZtaT1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLmo9bmV3IFVpbnQ4QXJyYXkoNjQpO3RoaXMuVz1uZXcgVWludDhBcnJheSg2NCk7dGhpcy5YPTA7dGhpcy5WPW5ldyBVaW50OEFycmF5KDY0KTt0aGlzLko9MDt0aGlzLmouc2V0KG4pO3RoaXMuVy5zZXQobik7Zm9yKG49MDtuPDY0O24rKyl0aGlzLmpbbl1ePTkyLHRoaXMuV1tuXV49NTQ7dGhpcy5yZXNldCgpfXJlc2V0KCl7JCQodGhpcyk7dGhpcy51cGRhdGUodGhpcy5XKX11cGRhdGUobil7dmFyIFc9MCxEPW4ubGVuZ3RoO3RoaXMuWCs9RDt0aGlzLkomJnRoaXMuSitEPj02NCYmKHRoaXMuVi5zZXQobi5zdWJhcnJheSgwLDY0LXRoaXMuSiksdGhpcy5KKSxXPTY0LXRoaXMuSix0aGlzLko9MCxzZSh0aGlzLHRoaXMuViwwKSk7Zm9yKDtXKzY0PD1EO1crPTY0KXNlKHRoaXMsbixXKTtXPEQmJihuPW4uc3ViYXJyYXkoVyksdGhpcy5WLnNldChuLHRoaXMuSiksdGhpcy5KKz1uLmxlbmd0aCl9fSxyTj1bMTExNjM1MjQwOCwKMTg5OTQ0NzQ0MSwzMDQ5MzIzNDcxLDM5MjEwMDk1NzMsOTYxOTg3MTYzLDE1MDg5NzA5OTMsMjQ1MzYzNTc0OCwyODcwNzYzMjIxLDM2MjQzODEwODAsMzEwNTk4NDAxLDYwNzIyNTI3OCwxNDI2ODgxOTg3LDE5MjUwNzgzODgsMjE2MjA3ODIwNiwyNjE0ODg4MTAzLDMyNDgyMjI1ODAsMzgzNTM5MDQwMSw0MDIyMjI0Nzc0LDI2NDM0NzA3OCw2MDQ4MDc2MjgsNzcwMjU1OTgzLDEyNDkxNTAxMjIsMTU1NTA4MTY5MiwxOTk2MDY0OTg2LDI1NTQyMjA4ODIsMjgyMTgzNDM0OSwyOTUyOTk2ODA4LDMyMTAzMTM2NzEsMzMzNjU3MTg5MSwzNTg0NTI4NzExLDExMzkyNjk5MywzMzgyNDE4OTUsNjY2MzA3MjA1LDc3MzUyOTkxMiwxMjk0NzU3MzcyLDEzOTYxODIyOTEsMTY5NTE4MzcwMCwxOTg2NjYxMDUxLDIxNzcwMjYzNTAsMjQ1Njk1NjAzNywyNzMwNDg1OTIxLDI4MjAzMDI0MTEsMzI1OTczMDgwMCwzMzQ1NzY0NzcxLDM1MTYwNjU4MTcsMzYwMDM1MjgwNCw0MDk0NTcxOTA5LDI3NTQyMzM0NCwKNDMwMjI3NzM0LDUwNjk0ODYxNiw2NTkwNjA1NTYsODgzOTk3ODc3LDk1ODEzOTU3MSwxMzIyODIyMjE4LDE1MzcwMDIwNjMsMTc0Nzg3Mzc3OSwxOTU1NTYyMjIyLDIwMjQxMDQ4MTUsMjIyNzczMDQ1MiwyMzYxODUyNDI0LDI0Mjg0MzY0NzQsMjc1NjczNDE4NywzMjA0MDMxNDc5LDMzMjkzMjUyOThdO3ZhciBZJD1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn19LGhhdz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuVz1uO3RoaXMuSj1XfX0saksxPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuTj1ufX07dmFyIEpacj17SU5WQUxJRF9FTkNPREVSX1ZFUlNJT046IkludmFsaWQgZW5jb2RlciB2ZXJzaW9uIixLRVlfQ1JFQVRJT05fRkFJTEVEOiJGYWlsZWQgdG8gY3JlYXRlIGVuY29kZXIga2V5IixVTktOT1dOX0RFQ09ERV9FUlJPUjoiRmFpbGVkIHRvIGRlY29kZSBQRVMgZGF0YSIsVU5LTk9XTl9FTkNPREVfRVJST1I6IkZhaWxlZCB0byBlbmNvZGUgUEVTIGRhdGEiLFdST05HX0RBVEFfVFlQRToiRW5jb2RlciBjYW5ub3QgcHJvY2VzcyB0aGUgZGF0YSB0eXBlIn0sZmY9Y2xhc3MgZXh0ZW5kcyBnLlF4e2NvbnN0cnVjdG9yKG4sVz17fSl7c3VwZXIoSlpyW25dLHtuYW1lOiJQRVNFbmNvZGVyRXJyb3IiLHR5cGU6biwuLi5XfSk7dGhpcy50eXBlPW47dGhpcy5sZXZlbD0iV0FSTklORyI7T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsZmYucHJvdG90eXBlKX19O3ZhciBJSGk9Y2xhc3N7fTt2YXIgU2t0PWNsYXNzIGV4dGVuZHMgSUhpe2NvbnN0cnVjdG9yKG4pe3N1cGVyKCk7dGhpcy5OPW59VyhuLFcpe1c9STgoVyk7bj0obmV3IFRleHRFbmNvZGVyKS5lbmNvZGUoSlNPTi5zdHJpbmdpZnkobikpO3JldHVybiB0aGlzLk4uZW5jcnlwdChuLFcpfUoobixXKXtpZighKG4gaW5zdGFuY2VvZiBVaW50OEFycmF5KSl0aHJvdyBuZXcgZmYoIldST05HX0RBVEFfVFlQRSIse09BOjF9KTt2YXIgRD1uZXcgVGV4dERlY29kZXI7Vz1JOChXKTtuPXRoaXMuTi5kZWNyeXB0KG4sVyk7cmV0dXJuIEpTT04ucGFyc2UoRC5kZWNvZGUobikpfX07dmFyIFh5VT17YW5pbWF0aW9uRW50aXR5OmVuaSxhY2NvdW50TGlua1N0YXR1c0VudGl0eTpta2gsYXNrU3R1ZGlvR2VuZXJhdGVkRGF0YUVudGl0eTp0UFUsYm9vbGVhbkVudGl0eTpyWXIsYnV0dG9uRW50aXR5OkhNdCxjYXB0aW9uVHJhY2s6bEoyLGNoYW5uZWxIYW5kbGU6a2pNLGNoYXRMb2FkaW5nU3RhdGVFbnRpdHk6SU93LGFza1N0dWRpb0NvbnZlcnNhdGlvblN1bW1hcnlFbnRpdHk6R2oxLGNoaXBFbnRpdHk6Z1hVLGNvbW1lcmNlQWNxdWlzaXRpb25DbGllbnRQYXlsb2FkRW50aXR5OlNOeCxjb21tZXJjZUNhcnRMaXN0RW50aXR5OkFNeCxjb21tZXJjZVRva2VuQmFsYW5jZUVudGl0eTptJFMsY29tcG9zaXRlU291cmNlRW50aXR5OiRJTSxtdWx0aXZpZXdTdGFnaW5nRW50aXR5OnJKYixjb250ZXh0Tm90ZUZlZWRFbnRpdHlQYXlsb2FkOnhrdCxjb250ZXh0Tm90ZVVzZXJSYXRpbmdFbnRpdHlQYXlsb2FkOkx0dyxjb250aW51YXRpb25Ub2tlbkVudGl0eTp3d1MsZG93bmxvYWRRdWFsaXR5UGlja2VyRW50aXR5OmlzWiwKZG93bmxvYWRzUGFnZVJlZnJlc2hUb2tlbkVudGl0eTpveGgsZG93bmxvYWRzUGFnZVZpZXdDb25maWd1cmF0aW9uRW50aXR5OkRJMSxkb3dubG9hZFN0YXR1c0VudGl0eTp1NXQsZGlzbWlzc1N0YXRlOlhSUyxzZnZBdWRpb0l0ZW1DdXJyZW50bHlQbGF5aW5nRW50aXR5Old1WixlbW9qaUZvdW50YWluRGF0YUVudGl0eTpyTTEsZW1vamlDdXN0b21pemF0aW9uU2V0RW50aXR5OiQkMixmYWtlQ2hhbm5lbDpwd0MsZmFrZVBsYXlsaXN0OllZcixmYWtlUGxheWxpc3RFbnRyeUNvbGxlY3Rpb246Zl94LGZha2VWaWRlbzpKWWIsZmFrZVZpZGVvRGVzY3JpcHRpb246SV93LGZlYXR1cmVkUHJvZHVjdHNFbnRpdHk6cXZDLHNhdmVkUHJvZHVjdHNTdGF0ZUVudGl0eTpYX1MsZmxvd1N0YXRlRW50aXR5OkFZeCxpY29uQmFkZ2VFbnRpdHk6S3VqLGludGVyc3RpdGlhbEludGVyYWN0aW9uU3RhdGVFbnRpdHk6T3NpLGxpa2VCdXR0b25BbmltYXRpb25FbnRpdHk6Ynp0LGxpdmVDaGF0UG9sbFN0YXRlRW50aXR5OlBMciwKZGF0YUZyZXNobmVzc0VudGl0eTp0R3QsbGl2ZVZpZXdlckxlYWRlcmJvYXJkQ2hhdEVudHJ5UG9pbnRTdGF0ZUVudGl0eTpSTzEsbGl2ZVZpZXdlckxlYWRlcmJvYXJkUG9pbnRzRW50aXR5OlE0cixsaXZlUmVhY3Rpb25zRGF0YUVudGl0eTpzZGksbG9nb0VudGl0eTpLdHgsbWFjcm9NYXJrZXJFbnRpdHk6dk50LG1haW5Eb3dubG9hZHNMaWJyYXJ5RW50aXR5OmRrdCxtYWluRG93bmxvYWRzTGlzdEVudGl0eTpsX1osbWFpblBsYXlsaXN0RG93bmxvYWRTdGF0ZUVudGl0eTpUQTEsbWFpblBsYXlsaXN0RW50aXR5Ok1QdyxtYWluUGxheWxpc3RWaWRlb0VudGl0eTpSNGksbWFpblZpZGVvRG93bmxvYWRTdGF0ZUVudGl0eTpqQmksbWFpblZpZGVvRW50aXR5OmFfaixtYXJrZXJzRW5nYWdlbWVudFBhbmVsU3luY0VudGl0eTprUHIsbWFya2Vyc1Zpc2liaWxpdHlPdmVycmlkZUVudGl0eTpoT3QsbXVzaWNBbGJ1bVJlbGVhc2VEZXRhaWw6ZkpVLG11c2ljQWxidW1SZWxlYXNlRG93bmxvYWRNZXRhZGF0YUVudGl0eTpzNHQsCm11c2ljQWxidW1SZWxlYXNlOkh6aSxtdXNpY0FsYnVtUmVsZWFzZVVzZXJEZXRhaWw6SkoxLG11c2ljQXJ0aXN0RGV0YWlsOlN2WixtdXNpY0FydGlzdDpJSlUsbXVzaWNBcnRpc3RVc2VyRGV0YWlsOkFKaSxtdXNpY0Rvd25sb2Fkc0xpYnJhcnlFbnRpdHk6TmtTLG11c2ljTGlicmFyeUVkaXQ6bUliLG11c2ljTGlicmFyeVN0YXR1c0VudGl0eTpLTXcsbXVzaWNQbGF5bGlzdDpQVHgsbXVzaWNQbGF5bGlzdERvd25sb2FkTWV0YWRhdGFFbnRpdHk6cF9yLG11c2ljU2hhcmU6WnppLG11c2ljVHJhY2tEZXRhaWw6eUpTLG11c2ljVHJhY2tEb3dubG9hZE1ldGFkYXRhRW50aXR5Oll2dCxtdXNpY1RyYWNrOlVJWixtdXNpY1RyYWNrVXNlckRldGFpbDpFTngsb2ZmbGluZU9yY2hlc3RyYXRpb25BY3Rpb25XcmFwcGVyRW50aXR5OlRrdyxvZmZsaW5lVmlkZW9Qb2xpY3k6ajRaLG9mZmxpbmVWaWRlb1N0cmVhbXM6Q1R3LG9mZmxpbmVhYmlsaXR5RW50aXR5OkNMaSxvcmNoZXN0cmF0aW9uV2ViU2FtcGxpbmdFbnRpdHk6QkFVLApwYWdlSGVhZGVyRW50aXR5OnFOWixwYXJ0eUdhbWVQYW5lbEVudGl0eTpwUnQsc2xpZGVyR2FtZVBhbmVsRW50aXR5Ok55MSxwZHBTdGF0ZUVudGl0eTpPTWoscGlubmVkUHJvZHVjdEVudGl0eTpHUE0scGxheWJhY2tEYXRhOkJrdyxwbGF5ZXJTdGF0ZUVudGl0eTp4SVoscGxheWxpc3RUaHVtYm5haWxFZGl0c0VudGl0eToka2IscXVhbnRpdHlJbmNyZW1lbnRlckVudGl0eTpQOHcscmVmcmVzaDpGTXcsc2F2ZVRvUGxheWxpc3RMaXN0RW50aXR5OnZYaixzZWxlY3RlZENoaXBJbmRleEVudGl0eVBheWxvYWQ6TE13LHNlbGVjdGlvblZhbHVlTGlzdEVudGl0eTpzQngsc2V0dGluZ0VudGl0eTp4JFosc3RyaW5nRW50aXR5Ok5BMixzdWdnZXN0ZWRGZWVkYmFja0NoaXBTdGF0ZUVudGl0eTplT3IsdHJhbnNmZXI6d19NLHRyZW5kaW5nT2ZmZXJFbnRpdHk6dHhqLHVucGx1Z2dlZFNpZGVzaGVldEhlYWRlclN0YXRlRW50aXR5OmZPMix2aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eTpNeFMsCnZpZGVvT3ZlcnZpZXdBc3luY0RhdGFFbnRpdHk6Wk1qLHZpZGVvUGxheWJhY2tQb3NpdGlvbkVudGl0eTpKTTIsdm90aW5nRW50aXR5OkdpTSx5dE1haW5DaGFubmVsRW50aXR5Om5OMix5b3VjaGF0UGVuZGluZ1Jlc3BvbnNlRW50aXR5OmdOcix5dE1haW5Eb3dubG9hZGVkVmlkZW9FbnRpdHk6RnRoLHl0TWFpblZpZGVvRW50aXR5OldNWn07dmFyIE5Hdz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuTj1uO3RoaXMuVz1XO3RoaXMuSj17fX19O3ZhciBBWlo9Y2xhc3MgZXh0ZW5kcyBJSGl7VyhuKXtyZXR1cm4gbn1KKG4pe2lmKG4gaW5zdGFuY2VvZiBVaW50OEFycmF5KXRocm93IG5ldyBmZigiV1JPTkdfREFUQV9UWVBFIix7T0E6MH0pO3JldHVybiBufX07dmFyIGY5aT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuTj17fTt0aGlzLk5bMF09bmV3IEFaWjtpZighZy5sKCJhZXNfcGVzX2VuY29kZXJfa2lsbHN3aXRjaCIpKXt2YXIgbj10aGlzLk47dHJ5e2xldCBiPU0wKCk7dmFyIFc9STgoYik7dmFyIEQ9bmV3IFNrdChuZXcgYjEoVyksbmV3IHVvKFcpKX1jYXRjaChiKXt0aHJvdyBuPWIgaW5zdGFuY2VvZiBFcnJvcj9uZXcgZmYoIktFWV9DUkVBVElPTl9GQUlMRUQiLHtvcmlnaW5hbE1lc3NhZ2U6Yi5tZXNzYWdlfSk6bmV3IGZmKCJLRVlfQ1JFQVRJT05fRkFJTEVEIiksZy5YaihuKSxuO31uWzFdPUR9fX07dmFyIEozaT1jbGFzcyBleHRlbmRzIGcuRk17Y29uc3RydWN0b3IobixXKXtzdXBlcigpO3RoaXMudG9rZW49bjt0aGlzLk49Vzt0aGlzLm9ic2VydmVycz1bXTtuPW5ldyBnLnFpLkJyb2FkY2FzdENoYW5uZWwoYFBFUlNJU1RFTlRfRU5USVRZX1NUT1JFX1NZTkM6JHtNMCgpfWApO24ub25tZXNzYWdlPXRoaXMuSi5iaW5kKHRoaXMpO3RoaXMuY2hhbm5lbD1ufW9ic2VydmUobil7dGhpcy5vYnNlcnZlcnMucHVzaChuKTtyZXR1cm4oKT0+e3ZhciBXPXRoaXMub2JzZXJ2ZXJzLmluZGV4T2Yobik7Vz49MCYmdGhpcy5vYnNlcnZlcnMuc3BsaWNlKFcsMSl9fUoobil7UGUodGhpcyxuLmRhdGEpfW1BKCl7dGhpcy5jaGFubmVsLmNsb3NlKCl9fSx0NTt2YXIgbXpiPWcud0QoKCk9PntpZih3aW5kb3cuTWVkaWFTb3VyY2UmJnR5cGVvZiB3aW5kb3cuTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkPT09ImZ1bmN0aW9uIilyZXR1cm4gd2luZG93Lk1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZCgndmlkZW8vd2VibTsgY29kZWNzPSJ2cDA5LjAwLjUxLjA4LjAxLjAxLjAxLjAxLjAwIicpO2lmKHdpbmRvdy5NYW5hZ2VkTWVkaWFTb3VyY2UmJnR5cGVvZiB3aW5kb3cuTWFuYWdlZE1lZGlhU291cmNlLmlzVHlwZVN1cHBvcnRlZD09PSJmdW5jdGlvbiIpcmV0dXJuIHdpbmRvdy5NYW5hZ2VkTWVkaWFTb3VyY2UuaXNUeXBlU3VwcG9ydGVkKCd2aWRlby93ZWJtOyBjb2RlY3M9InZwMDkuMDAuNTEuMDguMDEuMDEuMDEuMDEuMDAiJyk7dmFyIG49Zy5ycigieXQud2ViLmNvbnRyaWIuaW5uZXJ0dWJlLnJlcXVlc3RzLndhdGNoX3VpLnV0aWxzLnZpZGVvRWxlbWVudF8iKTtufHwobj1nLnpGKCJWSURFTyIpLGcuR2IoInl0LndlYi5jb250cmliLmlubmVydHViZS5yZXF1ZXN0cy53YXRjaF91aS51dGlscy52aWRlb0VsZW1lbnRfIiwKbikpO3JldHVybiEhKG4mJm4uY2FuUGxheVR5cGUmJm4uY2FuUGxheVR5cGUoJ3ZpZGVvL3dlYm07IGNvZGVjcz0idnAwOS4wMC41MS4wOC4wMS4wMS4wMS4wMS4wMCInKSl9KTt2YXIgTnM9eVcoKT8hMDp0eXBlb2Ygd2luZG93LmZldGNoPT09ImZ1bmN0aW9uIiYmd2luZG93LlJlYWRhYmxlU3RyZWFtJiZ3aW5kb3cuQWJvcnRDb250cm9sbGVyJiYhZy5SZz8hMDohMTt2YXIgS0hTPWNsYXNzIGV4dGVuZHMgUEN7Y29uc3RydWN0b3IoKXtzdXBlcigpfVcoKXtyZXR1cm4gcXlqfU4obil7cmV0dXJuIGcudyhuLGcuSVEpfHxnLncobixUZSl8fGcudyhuLFZ4Yil9Tygpe3JldHVybiEwfVgobil7aWYoKGcubCgia2V2bGFyX2NhY2hlX29uX3R0bF9wbGF5ZXIiKXx8Zy5sKCJtd2ViX2VuYWJsZV9zaG9ydHNfaW5uZXJ0dWJlX3BsYXllcl9wcmVmZXRjaCIpfHxnLmwoIndlYl9zaG9ydHNfcHJlZmV0Y2hfc2VydmljZV9lbmFibGVkIil8fGcubCgiZW1iZWRzX2VuYWJsZV9wcmVmZXRjaF92aWFfcmVzb2x2ZV91cmwiKSkmJihuPXRoaXMuTihuKSkmJm4udmlkZW9JZCl7dmFyIFc9e3ZpZGVvSWQ6bi52aWRlb0lkfTtuLnBsYXlsaXN0SWQmJihXLnBsYXlsaXN0SWQ9bi5wbGF5bGlzdElkKTtuLnBsYXllclBhcmFtcyYmKFcucGFyYW1zPW4ucGxheWVyUGFyYW1zKTtyZXR1cm4geUgoInBsYXllciIsVyl9fUsobil7cmV0dXJuIG4uY29udGVudFBsYXliYWNrQ29udGV4dD8udmlzPT09CjI/IldBVENIX0ZVTExfU0NSRUVOIjoiV0FUQ0gifUoobixXLEQpe2lmKGcubCgiZW5hYmxlX2ludGVyc3RpdGlhbF9lbnRpdHlfY2hlY2siKSYmVy52aWRlb0lkKWZvcih2YXIgYiBvZlsiQ09OVEVOVF9DSEVDS19SRVFVSVJFRCIsIkFHRV9DSEVDS19SRVFVSVJFRCJdKTtXLnZpZGVvSWQmJihuLnZpZGVvSWQ9Vy52aWRlb0lkKTtXLnBsYXlsaXN0SWQmJihuLnBsYXlsaXN0SWQ9Vy5wbGF5bGlzdElkKTtXLmluZGV4IT09dm9pZCAwJiYobi5wbGF5bGlzdEluZGV4PVcuaW5kZXgrMSk7Vy5wbGF5ZXJQYXJhbXMmJihuLnBhcmFtcz1XLnBsYXllclBhcmFtcyk7InN0YXJ0VGltZVNlY29uZHMiaW4gVyYmVy5zdGFydFRpbWVTZWNvbmRzJiYoZy5sKCJlbmFibGVfcGxheWVyX3JlcXVlc3RfYnVpbGRlcl9zdGFydF90aW1lX2Zsb29yIik/bi5zdGFydFRpbWVTZWNzPU1hdGguZmxvb3IoVy5zdGFydFRpbWVTZWNvbmRzKTpuLnN0YXJ0VGltZVNlY3M9Vy5zdGFydFRpbWVTZWNvbmRzKTtELmNvbnRlbnRQbGF5YmFja0NvbnRleHQmJgoobi5wbGF5YmFja0NvbnRleHQ9e2NvbnRlbnRQbGF5YmFja0NvbnRleHQ6RC5jb250ZW50UGxheWJhY2tDb250ZXh0fSk7RC5wcmVmZXRjaFBsYXliYWNrQ29udGV4dCYmKG4ucGxheWJhY2tDb250ZXh0PXsuLi5uLnBsYXliYWNrQ29udGV4dCxwcmVmZXRjaFBsYXliYWNrQ29udGV4dDpELnByZWZldGNoUGxheWJhY2tDb250ZXh0fSxuLmNvbnRleHQucmVxdWVzdHx8KG4uY29udGV4dC5yZXF1ZXN0PXt9KSxuLmNvbnRleHQucmVxdWVzdC5pc1ByZWZldGNoPSEwKTtuLnBsYXliYWNrQ29udGV4dHx8KG4ucGxheWJhY2tDb250ZXh0PXt9KTtiPW16YigpO24ucGxheWJhY2tDb250ZXh0LmRldmljZVBsYXliYWNrQ2FwYWJpbGl0aWVzPXtzdXBwb3J0c1ZwOUVuY29kaW5nOiEhYixzdXBwb3J0WGhyOk5zfTtELm92ZXJyaWRlTXV0ZWRBdFN0YXJ0JiYobi5vdmVycmlkZU11dGVkQXRTdGFydD1ELm92ZXJyaWRlTXV0ZWRBdFN0YXJ0KTtuLnJhY3lDaGVja09rPSEhVy5yYWN5Q2hlY2tPazsKbi5jb250ZW50Q2hlY2tPaz0hIVcuY29udGVudENoZWNrT2s7Zy5sKCJjYXB0aW9uc19wcmVmc19raWxsc3dpdGNoIil8fChEPShEPWcuWkkoInl0LXBsYXllci1jYXB0aW9uLWxhbmd1YWdlLXByZWZlcmVuY2VzIikpP0Q6W10sVz1nLmwoIndlYl9lbmFibGVfcGxheWVyX3JlcXVlc3RfY2FwdGlvbnNfbGFzdF9sYW5ndWFnZV9vbmx5IiksRD8ubGVuZ3RoJiYoRD1XP1tELmF0KC0xKV06RCxuLmNhcHRpb25QYXJhbXM9e3ZpZXdlclNlbGVjdGVkQ2FwdGlvbkxhbmdzOkR9KSl9VihuKXtuPXRoaXMuWChuKTt2YXIgVztuJiYoVz17SG46e1JMOm59fSk7Zy5sKCJ3ZWJfbG9nX3BsYXllcl93YXRjaF9uZXh0X3RpY2tzIikmJihXPVd8fHt9LFcuTGE9InBzX3MiLFcuUlY9InBzX3IiKTtyZXR1cm4gV319O0tIU1tnLkxYXT1bTnRNXTt2YXIgaUI9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW4ucmVzcG9uc2VDb250ZXh0Py5zdGF0ZVRhZ3N9fTt2YXIgd049Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59aGFuZGxlUmVzcG9uc2UobixXKXtpZighVyl0aHJvdyBFcnJvcigicmVxdWVzdCBuZWVkcyB0byBiZSBwYXNzZWQgaW50byBTdG9yZVJlc3BvbnNlUHJvY2Vzc29yU2VydmljZSIpO3VCKHRoaXMsbixXLmNvbmZpZz8uSG4/LlJMKX19O3dOW2cuTFhdPVtCZV07dmFyIEY4PW5ldyBnLkFMKCJTVE9SRV9SRVNQT05TRV9QUk9DRVNTT1JfVE9LRU4iKTt2YXIgbzg9Y2xhc3MgZXh0ZW5kcyBnLlF4e2NvbnN0cnVjdG9yKG4sLi4uVyl7c3VwZXIobixXKTt0aGlzLmVycm9yVHlwZT0xO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLG5ldy50YXJnZXQucHJvdG90eXBlKX19O3ZhciBUcj1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn1hc3luYyBmZXRjaChuLFcsRCxiKXtuPVNzWih0aGlzLG4sVyk7dHJ5e2xldCB2PWF3YWl0IGZldGNoKG4pO2lmKGImJnYub2smJnYuYm9keSYmdHlwZW9mIHYuYm9keS5nZXRSZWFkZXI9PT0iZnVuY3Rpb24iKXtsZXQgaz12LmNsb25lKCkuYm9keS5nZXRSZWFkZXIoKSx7dmFsdWU6aH09YXdhaXQgay5yZWFkKCk7ay5jYW5jZWwoKS5jYXRjaCgoKT0+e30pOwppZihoJiZoWzBdPT09OTEpe2xldCB4PXYuYm9keS5waXBlVGhyb3VnaChuZXcgVGV4dERlY29kZXJTdHJlYW0pLmdldFJlYWRlcigpO3JldHVybiBkTih0aGlzLHgsbmV3IGFzLFtdLGIpfX1yZXR1cm4gYXdhaXQgdGhpcy5oYW5kbGVSZXNwb25zZSh2LEQpfWNhdGNoKHYpe2lmKGcuR3EodiksRD8uTGQmJnYgaW5zdGFuY2VvZiBvOCYmdi5lcnJvclR5cGU9PT0xKXRocm93IHY7fX1oYW5kbGVSZXNwb25zZShuLFcpe3ZhciBEPW4udGV4dCgpLnRoZW4oYj0+e2lmKFc/LmhQJiZuLm9rKXJldHVybiBkRyhXLmhQLGIpO2I9Yi5yZXBsYWNlKCIpXX0nIiwiIik7aWYoVz8uTGQmJmIpdHJ5e3ZhciB2PUpTT04ucGFyc2UoYil9Y2F0Y2goayl7dGhyb3cgbmV3IG84KCJKU09OIHBhcnNpbmcgZmFpbGVkIGFmdGVyIGZldGNoIik7fXJldHVybiB2Pz9KU09OLnBhcnNlKGIpfSk7Cm4ucmVkaXJlY3RlZHx8bi5vaz90aGlzLk4mJnRoaXMuTi5zdWNjZXNzKCk6KHRoaXMuTiYmdGhpcy5OLm9ZKCksRD1ELnRoZW4oYj0+e2cuR3EobmV3IGcuUXgoIkVycm9yOiBBUEkgZmV0Y2ggZmFpbGVkIixuLnN0YXR1cyxuLnVybCxiKSk7cmV0dXJuey4uLmIsZXJyb3JNZXRhZGF0YTp7c3RhdHVzOm4uc3RhdHVzfX19KSk7CnJldHVybiBEfX07VHJbZy5MWF09W2cuaHAobmV3IGcuQUwoIk5FVFdPUktfU0xJX1RPS0VOIikpXTt2YXIgenI7dmFyIERZcj1uZXcgZy5xTSgicGFyYWxsZWxDb21tYW5kIik7dmFyIHZuTT1uZXcgZy5xTSgicGVyZm9ybU9uY2VDb21tYW5kIik7dmFyIGI4Yj1uZXcgZy5xTSgic2VyaWFsQ29tbWFuZCIpO3ZhciB2UT1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLk49bn1iaW5kSW5uZXJ0dWJlQ2hhbGxlbmdlRmV0Y2hlcihuKXt0aGlzLk4uYmljZihuKX1yZWdpc3RlckNoYWxsZW5nZUZldGNoZWRDYWxsYmFjayhuKXt0aGlzLk4uYmNyKG4pfWdldExhdGVzdENoYWxsZW5nZVJlc3BvbnNlKCl7cmV0dXJuIHRoaXMuTi5ibGMoKX19O3ZhciBpaEM9W10saGo9KDAsZy5IeClgaHR0cHM6Ly9zdGF0aWMuZG91YmxlY2xpY2submV0L2luc3RyZWFtL2FkX3N0YXR1cy5qc2AsazU9ITE7dmFyIGlEPWNsYXNze2NvbnN0cnVjdG9yKG4sVyl7dGhpcy5KPW47dGhpcy5OPVd9fSxXREM9W25ldyBpRCgiYi5mXyIsMCksbmV3IGlEKCJqLnNfIiwyKSxuZXcgaUQoInIuc18iLDQpLG5ldyBpRCgiZS5oXyIsNiksbmV3IGlEKCJpLnNfIiw4KSxuZXcgaUQoInMudF8iLDEwKSxuZXcgaUQoInAuaF8iLDEyKSxuZXcgaUQoInMuaV8iLDE0KSxuZXcgaUQoImYuaV8iLDE2KSxuZXcgaUQoImEuYl8iLDE4KSxuZXcgaUQoImEub18iKSxuZXcgaUQoImcub18iLDIyKSxuZXcgaUQoInAuaV8iLDI0KSxuZXcgaUQoInAubV8iKSxuZXcgaUQoIm4ua18iLDIwKSxuZXcgaUQoImkuZl8iKSxuZXcgaUQoImEuc18iKSxuZXcgaUQoIm0uY18iKSxuZXcgaUQoIm4uaF8iLDI2KSxuZXcgaUQoIm8ucF8iKSxuZXcgaUQoIm0ucF8iLDI4KSxuZXcgaUQoIm8uYV8iKSxuZXcgaUQoImQucF8iKSxuZXcgaUQoImUuaV8iKV0ucmVkdWNlKChuLFcpPT57bltXLkpdPVc7cmV0dXJuIG59LHt9KTt2YXIgTmU9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQpe3RoaXMubmV0d29yaz1uO3RoaXMub3B0aW9ucz1XO3RoaXMuWD1EO3RoaXMuVz0wO3RoaXMuTj1udWxsO3RoaXMuSj1uZXcgcW5pO1cuUHU/ZXQodGhpcyxvbU0odGhpcykpOlcucHJlbG9hZCYmZXQodGhpcyxuZXcgUHJvbWlzZShiPT57Zy5jQigwLCgpPT57Yih0aih0aGlzKSl9LDApfSkpfWFzeW5jIHlmKCl7cmV0dXJuISFhd2FpdCBQcm9taXNlLnJhY2UoW3RoaXMuTiwKbnVsbF0pfWFzeW5jIGRRKG4sVyxEKXt0aGlzLk49PT1udWxsJiZldCh0aGlzLHRqKHRoaXMpKTt2YXIgYj0hMSx2PXt9O3JldHVybiBQcm9taXNlLnJhY2UoWyhhc3luYygpPT57dGhpcy5vcHRpb25zLkZoJiZ0aGlzLm9wdGlvbnMuUHUmJmF3YWl0IChhd2FpdCB5M3IoKSk/LmNoZWNrRm9yUmVmcmVzaCgpO3ZhciBrPWF3YWl0IHRoaXMuTjt2LmNoYWxsZW5nZT1rLmNoYWxsZW5nZTtpZihrLk8xKXt2YXIgaD17YzprLmNoYWxsZW5nZSxlOm4sLi4uV307dHJ5e2I9ITA7bGV0IHg7KHg9YXdhaXQgay5PMS5zbmFwc2hvdCh7d186aH0pKT92LndlYlJlc3BvbnNlPXg6di5lcnJvcj0iQVRURVNUQVRJT05fRVJST1JfVk1fTk9fUkVTUE9OU0UifWNhdGNoe3YuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX0lOVEVSTkFMX0VSUk9SIn19ZWxzZSJjMWEiaW4gay5SUiYmKHYuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX05PVF9JTklUSUFMSVpFRCIpO249PT0iRU5HQUdFTUVOVF9UWVBFX1BMQVlCQUNLIiYmCihrPWsuUlIsaD17fSxrLmM2YSYmKGgucmVwb3J0aW5nU3RhdHVzPVN0cmluZyhOdW1iZXIoay5jKV5MYygpKSksay5jNmImJihoLmJyb2FkU3BlY3RydW1EZXRlY3Rpb25SZXN1bHQ9U3RyaW5nKE51bWJlcihrLmMpXk51bWJlcihnLkFyKCJDQVRTVEFUIiwwKSkpKSx2LmFkYmxvY2tSZXBvcnRpbmc9aCk7cmV0dXJuIHZ9KSgpLApUR2goRCwoKT0+e3ZhciBrPU9iamVjdC5hc3NpZ24oe30sdik7YiYmKGsuZXJyb3I9IkFUVEVTVEFUSU9OX0VSUk9SX1ZNX1RJTUVPVVQiKTtyZXR1cm4ga30pXSl9fTt2YXIganhTPVsiQVBQX1NUQVRFIiwiUEkiXTt2YXIga3ZNPVszNjExLDI3Njg2LDIyMTA1OCw4NTAxMywyMzQ2MiwyNDExODcsMTU3NTU3LDQyMDE2LDI2OTI2LDUxMjM2LDc5MTQ4LDUwMTYwLDc3NTA0LDMxMDI4MSwxNTM1ODcsODc5MDcsMTg2MzAsMTc3MDE4LDE3NzAyMyw1NDQ0NSwzMjE2NjYsMzI2MzUzLDMyNjM1NCw4MDkzNSwxNTIxNzIsMTg0NTUzLDEwNTY3NSwxNTA3MjMsMzc1MjEsMTQ3Mjg1LDQ3Nzg2LDIzMTI1NSwyMzEyNTQsMjMxMjU4LDIzMTI1OSw5ODM0OSwyMzcyOTksMTY4MjcxLDE2ODk1NCwxNjgyNzcsMTY4MjczLDE2ODI3MCwxMjM2OTUsMjcyMDE4LDMzODQ5NywyMjY5ODcsMjI2OTkwLDIyNjk4OCw2ODI3LDI5NDM0LDI1NTAxMCwxNzEzODgsMjQ0MTg5LDIzNjIwOCw3MjgyLDEyNDQ0OCwyOTk5MDMsMjk5ODk3LDI5OTkwNCwyOTk5MDEsMjk5ODk5LDI5OTkwMiwyOTk5MDAsMjk5ODk4LDE5NjA4OCwyNTA4OTcsMTk4MTA0LDMyMjc2LDE5NTExNSwxOTUxMTQsNzYyNzgsMjAwNjM1LDIzMDU5NCwxNDc4NjgsCjE0Nzg2OSwyNzYyNDMsOTM5MTEsMjc0MTg4LDI3NjY1MSwzMTM2ODAsMTA2NTMxLDI1NzIzNCwyNTI1OTgsMjUyNTk3LDI1MjYwMCwyNTI1OTksMjUyNTk2LDIyNTAzMSwxNzc4NDMsMjcyNTksMjcyNjIsMjcyNjMsMjE3NTksMjgzNjcwLDE2MDg2NiwyMDQyNDksMjIyOTAwLDIwNDI1MCwxODA2MjYsMTc3OTU5LDE3Nzk1NywxODA2MjgsMjA1NzE2LDE5Nzg3OCwyNzM3NjYsMTcxMjQzLDE2MDc4OSwxNzEyNDQsMTcxMjQxLDE3MTI0NSwxNzEyNDIsMjI1NTYwLDE4MDYyNywxNzc5NjAsMjMxNTg5LDE3Nzk1OCwxODA2MjksMjA1NzE3LDE5Nzg3OSwxNzc1NjUsMjEyNTczLDIxMDcwOSw5OTQ0MTIsMjMwNjg0LDIyOTgwMSwyMzA2ODUsMzM0MzEwLDMzNDMxMSwzMzQzMTIsMTk3MzM3LDIwOTAxMCwxOTczMzYsMTk3MzM4LDE5ODYxOCwzMDA4ODQsMTc1NDkyLDE5ODA1MiwxOTgwNTEsMTk3ODUyLDE5Nzk3NiwzMTczNzcsMTc1NDkzLDE3NTQ5NCwxNzU0OTUsMTg5MjU0LDE3NTQ5NiwxNzU0OTcsCjM4NDA4LDE3NTQ5OCwxNzU1MDMsMTc1NTA0LDE3NTUwNSwxNzU1MDYsMTc1NTA3LDE3NTUwOCw4MDYzNyw2ODcyNywyMDY5MzMsMjA3OTQ0LDIwNjkzNCwzMDMxMjMsMjA2OTI5LDIyMTU3NSw2ODcyOCwyMjE1NzYsODAzNTMsODAzNTYsMzA4MDMzLDI0OTEwNywxODA2MzUsNzQ2MTAsNDU3MDcsODM5NjIsODM5NzAsNDY3MTMsMTY2NTkxLDg5NzExLDc0NjEyLDIxMzgwOSwxNzk2MDcsMjQ1MDA2LDE1NTc5Miw5MzI2NSw3NDYxMSwxMzEzODAsMTI4OTc5LDEzOTMxMSwxMjg5NzgsMTMxMzkxLDEwNTM1MCwxMzkzMTIsMzMzNjM3LDEzNDgwMCwxMzEzOTIsMTEzNTMzLDIyOTI5OCw5MzI1Miw5OTM1Nyw5NDUyMSwxMTQyNTIsMTEzNTMyLDk0NTIyLDk0NTgzLDIwMjM3MSw4OEUzLDEzOTU4MCw5MzI1Myw5MzI1NCw5NDM4Nyw5NDM4OCw5MzI1NSw5NzQyNCw3MjUwMiwyMTk4NjgsMjEyOTkxLDExMDExMSw3NjAxOSwxMTcwOTIsMTE3MDkzLDg5NDMxLDE5MTgzMSwxMTA0NjYsMjMxMzQ2LAo3NzI0MCw2MDUwOCwxODYwOTEsMTQ4MTIzLDE0ODEyNCwxMzc0MDEsMTM3NDAyLDEzNzA0Niw3MzM5MywyNDY3NzYsMTEzNTM0LDI3NjIwMCw5MjA5OCwxMzEzODEsODQ1MTcsODM3NTksMzA5NTgwLDIzMDY3NiwyNDkxODMsMjMwNjc5LDIzMDY3OCwyMzA2NzcsMjMwNjgxLDIzMDY4MCwxNjI3MTEsMjM1MjM0LDE2MjcxMiw4MDM1Nyw5OTQ0MTEsMjQzMzE1LDMxMzUwNiwzMjE5NjQsODYxMTMsNzI1OTgsMTY4NDEzLDcyNzMzLDEwNzM0OSwxMjQyNzUsMTE4MjAzLDIwMDQxMCwxMzMyNzUsMTYwMTU3LDE1MjU2OSwxNTY2NTEsMTMzMjc0LDE2MDE1OSwxNjAxNTgsMTMzMjcyLDEzMzI3MywxMzMyNzYsMTQ0NTA3LDE0MzI0NywxNzU5OTQsMTU2NjUyLDE0MzI0OCwxNDMyNDksMTQzMjUwLDE0MzI1MSwxODk4OTIsMTg5ODk0LDE4OTg5MywxNTY2NTMsMjE0MjM2LDE0NDQwMSwxMTc0MzEsMTMzNzk3LDIyNTEzNywyNzM5MDUsMjIyNjEyLDIyMjYxMywxNTM5NjQsMjAxMTMzLDIwMTEzNCwKMjAxMTM1LDIwMTEzNiwyMDExMzcsMTI4NTcyLDIwMDQxMSwyMDA0MTIsMTkwMzM3LDEzMzQwNSwxMTc0MjksMTE3NDMwLDE3Nzk1MCwxNzQ3MzQsMTc3OTUxLDIwMTEzOCwyMDExMzksMjAxMTQwLDIwMTE0MSwyMDExNDIsMTE3NDMyLDE3Mzk5NiwxNzM5OTUsMTc0OTUzLDE3Mzk5NCwxNzM5OTcsMTIwMDgwLDExNzI1OSwxNzg1NDYsMjk3NzUyLDE5Nzg5MSwxNTY2NTUsMTU2NjU0LDEyMTY5MiwyMTE0MTQsMjExNDExLDIxMTQxMiwyMTE0MTMsMjExNDAzLDE4NDg0NiwxODU5OTMsMzM1MDQ4LDE0NTY1NiwxNTY2NTYsMTQ1NjU1LDE0NTY1MywxNDU2NTQsMTQ1NjU3LDEzMjk3MiwxMzMwNTEsMTMzNjU4LDEzMjk3MSwzMzY3MjgsOTc2MTUsMTgxMjYyLDE5MDc2MiwyNTAzNDQsMjU0MDI3LDE0MzM1OSwxNDMzNTYsMTQzMzYxLDE0MzM1OCwxNDMzNjAsMTQzMzU3LDE0MjMwMywxNDMzNTMsMjgyMTU5LDE3Mjg1OSwxNDMzNTQsMTQ0NDc5LDE0MzM1NSwzMTQwMiwxODE1OTAsMTMzNjI0LAoxNDY0NzcsMTMzNjIzLDEzMzYyMiwxMzM2MjEsMTkyNDE4LDg0Nzc0LDMwNDc3NiwxOTc5OTMsMjQxNDYwLDE2MDgwMSwxOTc5OTUsOTUxMTcsMTcyNzIxLDE1MDQ5Nyw5ODkzMCw5ODkzMSw5ODkzMiwzMzg1NzAsMzM4NDc0LDMzODQ3OCwzMzg0NzMsMTUzMzIwLDE1MzMyMSw0MzM0NywzMDUyNjgsMjQ5Mjk1LDIxMDAxNiwyMTAwMTcsMjYyNjg2LDIxMTg1MSwyMTE4NTIsMzA3MjE5LDIxMTg1MywzMjc4MTAsMTI5ODg5LDE5Nzg4OCwxOTc4ODksMTQ5MTIzLDIyMTk1OSwyMjE2MjcsMjIxOTU4LDQ1NDc0LDEwMDM1Miw5ODQ0MywxMTc5ODUsMzMzNzA4LDc0NjEzLDE1NTkxMSw3NDYxNCw2NDUwMiwxMzYwMzIsNzQ2MTUsNzQ2MTYsMTIyMjI0LDc0NjE3LDc3ODIwLDc0NjE4LDI2Mjk4OCwyNjI5ODksMjI2OTgxLDkzMjc4LDkzMjc0LDkzMjc1LDkzMjc2LDIwMDY4OCwyMDA2ODYsMjAwNjg3LDE5OTg0MSwyMjExMCwyOTQzMywxMzM3OTgsMTMyMjk1LDI4MTMzMiwxMjA1NDEsMjIyMTEyLAo4MjA0NywxMTM1NTAsNzU4MzYsNzU4MzcsMzAzODgyLDE5MjQwOSwyMDMyMjEsNDIzNTIsODQ1MTIsNzYwNjUsNzU5ODksMjA1OTExLDIwNTkxMiwyNTI2NDksMjA1OTEzLDI1MjY1MCwyNTI2NTEsNTE4NzksMTY2MjMsMzI1OTQsMjcyNDAsMzM4MTA5LDI5MzMyNCwzMjYzMyw3NDg1OCwzMDQxNTAsMjk3MDQ1LDI3NTE5OCwyNzE4ODQsMjIyOTMyLDI3OTExOSwzMTI1ODEsMjcxODg2LDIxMzkxNSwyNzUxOTksMzEwNzQ4LDIyNTIxNiwyNTEyNDQsMjU4MjUxLDIxODY3NCwyNTEyNjYsMjU4MjUwLDI1MTI2NSwzMDE2NjIsMjUxMjQ1LDI3MTg4NSwzMTU4MTgsMTU2OTk5LDM5NDUsMTY5ODksNDU1MjAsMjU0ODgsMjU0OTIsMjU0OTQsMjMyMTEzLDU1NzYwLDE0MDU3LDE4NDUxLDU3MjA0LDU3MjAzLDE3ODk3LDE4MTk4LDE3ODk4LDE3OTA5LDQzOTgwLDIyMTA1MywxOTU1MjksMTg5NjYwLDMwODA4OCwzMDY0NDgsMzA2NDQ3LDMwODA4NywzMDgwODYsNDYyMjAsMTE3MjEsMTQ3OTk0LDQ5OTU0LAo5NjM2OSwzODU0LDIxNzY0MCwxNTE2MzMsNTYyNTEsMjA1MTkyLDIxNjc5NywxNTkxMDgsMTgxNTY4LDIzNDc4OSwyNTYyNCwxNTIwMzYsMTY5MDYsOTk5OTksNjgxNzIsNDc5NzMsNzI3NzMsMjY5NzAsMjY5NzEsOTY4MDUsMTc3NTIsMjgyMTgxLDI3ODkyNiw3MzIzMywyMDU5MjMsMTA5NTEyLDIyMjU2LDE0MTE1LDIyNjk2LDIzNDQwOSwyMzQ0MDgsODkyNzgsODkyNzcsMTk1NzQ1LDEwOTUxMyw0MzI3OCw0MzQ1OSw0MzQ2NCw4OTI3OSw0MzcxNyw1NTc2NCwyMjI1NSwxNDc5MTIsODkyODEsNDA5NjMsNDMyNzcsNDM0NDIsOTE4MjQsMjgzODk4LDEyMDEzNywxODYzNTAsMTg2MzUxLDI1NjY5MCwyNjQzNDksMjY0MzUxLDI2NDM1MCwyNjQzNTIsMjExMDI2LDI1MDg5Niw5NjM2NywzNjg1MCw3MjY5NCwzNzQxNCwzNjg1MSwxMjQ4NjMsMTIxMzQzLDczNDkxLDU0NDczLDE2Njg2MSw0MzM3NSw0NjY3NCwzMDI2MzEsMzMxNDczLDI0MjUyOCwxNDM4MTUsMTM5MDk1LDE0NDQwMiwxNDk5NjgsCjE0OTk2OSwzMjQ3Myw3MjkwMSw3MjkwNiw1MDYxMiw1MDYxMyw1MDk0Miw4NDkzOCw4NDk0Myw4NDkzOSw4NDk0MSw4NDk0NCw4NDk0MCw4NDk0MiwzNTU4NSw1MTkyNiw3OTk4MywxODkyMSw1Nzg5Myw0MTE4MiwxMzU3MzIsMzM0MjQsMjIyMDcsMzYyMjksMjIyMDYsMjIyMDUsNDQ3NjMsMzM0MjcsNjc3OTMsMjIxODIsMzcwOTEsMzQ2NTAsNTA2MTcsMjIyODcsMjUxNDQsOTc5MTcsMjIwMTIyLDYyMzk3LDE1MDg3MSwxNTA4NzQsMTI1NTk4LDEzNzkzNSwzNjk2MSwxMDgwMzUsMzIzNDkzLDI3NDI2LDI3ODU3LDI3ODQ2LDI3ODU0LDY5NjkyLDYxNDExLDM5Mjk5LDM4Njk2LDYyNTIwLDM2MzgyLDEwODcwMSwxOTI2ODIsMjc5NTMxLDUwNjYzLDM2Mzg3LDE0OTA4LDM3NTMzLDEwNTQ0Myw2MTYzNSw2MjI3NCwxNjE2NzAsMTMzODE4LDE4MjExOSw2NTcwMiw2NTcwMyw2NTcwMSwzMjA0NjQsNzYyNTYsMjk4MTU3LDI2Mzg0MywzMTUyMzQsMTk2MDc1LDE5NDc2OCwyNTIyMDEsMTk0NzY5LAoxOTE4ODUsMjgxNDgwLDIzMzYzNCwyNjU4MTAsMTk0NzcwLDI5NjkzMywxOTUzNTAsMzI3Mzg1LDMyNDU4NiwzMDE2MDcsMTk1MzQ5LDE5NDc3MSwyOTMwNDEsMzAxMTIxLDI5MzA0MiwyOTMwNDMsMzAxMTE2LDE2NjM4MiwzNzY3MSw0OTk1MywyMjA2NjksNjAwMDAxLDYwMDAwMiw2RTUsMzM1MTM0LDI0OTIyOSwyMTM3NzQsMjA0NTcyLDE5MTM4OSwyNzIyNTQsMjcyMjUzLDI1MzgzMCwyNTM4MzEsMjUzODMyLDI3MjI1MiwyNTM4MzMsMjUzODM0LDIwNDU3NCwxOTEzOTAsMTc5NTU2LDIzODU5NiwyMTI2NjEsMTkxMzkyLDE5NzgyNiwxOTEzOTMsMjA0NTczLDM2MjE2LDI4MjM3LDI0MTIxMiwyNzIwNDksMTczNzE4LDM5NTUzLDE5MjU0NywyOTIyMiwzMDQ4NDUsMjYxMDcsMjQxMjExLDM4MDUwLDI2MTA4LDI3NTgxMCwxMjA3NDUsMjYxMDksMjYxMTAsNjY4ODEsMjgyMzYsMTQ1ODYsMjk3NjcyLDE2MDU5OCw1NzkyOSwyMjY3MzYsNzQ3MjMsNDQwOTgsMTczNjg5LDQ0MDk5LDIzNTI4LAo2MTY5OSwxMzQxMDQsMTM0MTAzLDE5ODMxMyw1OTE0OSwxODEwMTMsMjc4MzA2LDI4MjQ3MiwyNzc4NDgsMTczMTkxLDE3MzE5MiwxNzMxOTMsMTAxOTUxLDE3MTUwMiwxOTYwNDMsMTk4MzA1LDk3MzQ2LDExODA1MSw5NTEwMiw2NDg4MiwxMTk1MDUsNjM1OTUsMjk0MTE5LDI1NzI2OCw2MzM0OSwyODExMjcsMjQwNTUzLDk1MTAxLDc1MjQwLDI3MDM5LDY4ODIzLDIxNTM3LDgzNDY0LDc1NzA3LDI1MjkwNCwxNzAyMTUsMjIzMDMzLDgzMTEzLDEwMTk1MiwxMDE5NTMsNzk2MTAsMTI1NzU1LDI0NDAyLDI0NDAwLDMyOTI1LDE5MzQwNiw1NzE3MywxODMzNTEsMTU2NDIxLDEyMjUwMiwxNDUyNjgsMTM4NDgwLDY0NDIzLDY0NDI0LDMzOTg2LDEwMDgyOCwxMjkwODksMjk5NTQxLDIxNDA5LDI4MjIxOCwyOTk1MDYsMzMzOTU2LDI5OTU0MCwyOTk1MDcsMjk5NTA5LDI5OTUzOSwyOTk1MDgsMjk5NTEwLDE4NTYxMiwyMjI4MjUsMzIzMzMxLDI0NTM2NiwxMzUxNTUsMTM1MTU2LDEzNTE1NywKMTM1MTU4LDE1ODIyNSwxMzUxNTksMTM1MTYwLDE2NzY1MSwxMzUxNjEsMTM1MTYyLDEzNTE2MywxNTgyMjYsMTU4MjI3LDEzNTE2NCwxMzUxNjUsMTM1MTY2LDExMDcwLDExMDc0LDE3ODgwLDI3MDU2MCwzMDcwOSwzMDcwNywzMDcxMSwzMDcxMCwzMDcwOCwxODUyMTMsMTg1MjczLDE0NjE0Myw2MzY0OCw2MzY0OSwyMjEwNTYsMjY0NDkwLDIxMTE4OSwxMTEwNTksMjExMTg4LDU3NTQsMjY0NDkxLDIwNDQ1LDIzMzQ3MSwxNTEzMDgsMzEzNzUwLDE1MTE1MiwyMjgwNjcsMTMwOTc1LDEzMDk3NiwyNDcyNDQsMjcxNjIyLDI3MTgxMywyNjEyMTAsMjEwODE1LDI5NTA2OSwyNDYxMjcsMzE2ODU4LDI0NTI1NiwyNDQ5NTAsMTkxOTI1LDE2NzYzNywyMzQ1NDUsMTk3MTk2LDMwMjczNSwyMTQyOTUsMTEwMzg2LDIyMTA1NCwyNzM5NjAsMjgyMTExLDMxMjI5MCwxMTM3NDYsMzI1NTkzLDI2ODg4Niw2NjU1NywxODMyMTUsMTczMTAsMjg2MzEsMjAxOTM1LDIxNTg5LDI0MjAzNiwyMzgzNTEsCjE2NDgxNywxNjgwMTEsMTU0OTQ2LDY4MDEyLDE2MjYxNyw2MDQ4MCwxODQ0MzEsMTM4NjY0LDI5NDA4OSwyNDk4MjcsMTk0RTMsMTQxMTIxLDE2NDUwMiwzMTU3MSwxOTUwMDIsMjA2NzkzLDE0MTk3OCwyMzM5ODUsMjUwODk1LDI1NDA1MiwyNTQwNTMsMjU0MDU0LDI1NDA1MSwyNTQwNTAsMjU0MDU1LDE1MDEwNSwzMDQxNjksMTUwMTA2LDE1MDEwNywxNTAxMDgsNzY5ODAsNDE1NzcsNDU0NjksMzg2NjksMTM3NjgsMTM3NzcsMTQxODQyLDYyOTg1LDIxMzE5MCw0NzI0LDIyMzA1Miw1OTM2OSw0MzkyNyw0MzkyOCwxMjkyNCwxOTc4NTMsMTAwMzU1LDU2MjE5LDI3NjY5LDIwOTkyOCwxMDMzNywyMDM2NDgsMjAzNjQ5LDQ3ODk2LDMyNjkzNywxMjI2MjksMTg2MjA0LDIyMjgyNCwyNzU4NjksMzEyMjk1LDI3MTY3MywyNzQ2MzcsMzE3NDYyLDEzOTcyMywxMzk3MjIsMTIxMjU4LDI1Mzc4OSwyNTM3ODcsMjUzNzg2LDI1Mzc4OCwyNTM3OTAsMTA3NTk4LDEyNzk5MSw5NjYzOSwxMDc1MzYsCjEzMDE2OSwyMTY1MjIsMjk2MzE2LDk2NjYxLDE0NTE4OCwzMjA0MjgsMjEzOTA0LDI2OTM0Miw5NjY1OCwxMTY2NDYsMTU5NDI4LDE2ODYxMSwxNjg2MTIsMTIxMTIyLDIxOTg2Miw5NjY2MCwyODIyMDgsMTI3NzM4LDEyNzA4MywxNTUyODEsMTYyOTU5LDIyMDg4NiwyMjczNTYsMjQ4MDA3LDE2MzU2NiwzMDc2NDYsMTg2NjQxLDE0Nzg0MiwyNzM2NDYsMjczNjQ3LDIxNzkzMiwxMDQ0NDMsOTY2NTksMTQ3NTk1LDEwNjQ0MiwyNDcxNjIsMjMxNDkzLDIxMzQyNywyOTY4MTMsMjQ2NTc1LDE4MjQyMywxNjI3NzYsMjI4OTA4LDEzNDg0MCw2MzY2Nyw2MzY2OCw2MzY2OSwxMzA2ODYsMjQ4MzgxLDE0NzAzNiwyMzkwOTQsMjYyNzQzLDE4OTgxMCwyMzkwOTUsNzgzMTQsMTQ3Nzk5LDMwNTkxOSwzMDU5MjQsMjM3MTQ2LDE3NDA0OSwxNDg2NDksNTU3NjEsMTI3MDk4LDEzNDg0MSw5NjM2OCw2NzM3NCw0ODk5MiwxNDYxNzYsMTc2MTA1LDMyMzMyMSwzMjMzMjIsMjMzMDM1LDQ5OTU2LDI2NzY0NSwKMjc1NzgyLDE5MDE5MCwyMjU3MzksMzE5NjEsMjYzODgsMjM4MTEsNUU0LDEyNjI1MCw5NjM3MCwyMTA1NDksMzI5NDkwLDQ3MzU1LDQ3MzU2LDM3OTM1LDQ1NTIxLDMzMTUzNiwzMzE1MzQsMzMxNTM1LDMzMTUzMywyMTc2MCw4Mzc2OSw0OTk3Nyw0OTk3NCw5MzQ5Nyw5MzQ5OCwzNDMyNSwxNDA3NTksMTE1ODAzLDEyMzcwNywxMDAwODEsMzUzMDksMjM3NzA2LDY4MzE0LDI1NjAyLDEwMDMzOSwxNzA4NzMsMTQzNTE2LDI5OTI0NywxNzg5MjEsMjY4NTc0LDI1NDg4NCwyNTgyMzIsNTkwMTgsMTgyNDgsNTA2MjUsOTcyOSwzNzE2OCwzNzE2OSwyMTY2NywxNjc0OSwxODYzNSwzOTMwNSwxODA0NiwyMjEwNTcsMzAxODk3LDMwMTkwMCwyNjk5OTAsNTM5NjksODIxMyw5MzkyNiwyMjEwNTUsMjEwNTQyLDIxMjU1MiwxMDI4NTIsMTEwMDk5LDIyNjc4LDY5MDc2LDEzNzU3NSwxMzkyMjQsMTAwODU2LDIzNTc3MCwxNTQ0MzAsMjM1ODYxLDIwOTc1NywxNzczNiwzODMyLDE0NzExMSw1NTc1OSwKNjQwMzEsMjM0NzQ2LDkzMDQ0LDkzMDQ1LDI4MTMwMiwxNzA3MDEsMTcwNzAyLDE5NDc5NiwzNDM4OCwxNjc4NDEsMTcwNDE5LDE3NjU3LDE3NjU1LDM5NTc5LDM5NTc4LDE3MDQxMiw3NzQ0OCw4MTk2LDExMzU3LDY5ODc3LDgxOTcsMTY4NTAxLDE1NjUxMiwxNjE2MTMsMTU2NTA5LDIwODI3NCwxNjE2MTIsMTYxNjE0LDI2NzY5MiwyNjc4NTEsMjY3NTc3LDI3OTc1NSwyNjc2OTMsMjY3Njk0LDI2NzU3OCwyNjI4MDEsMzM0NDk2LDMzNTg0NCwyNzEyMTgsMjY2MTMxLDI2NjEzMiwyNjc5NzcsMjY3NTc5LDI2MjgwMCwyNjI3OTksMjYyODAyLDI2NzU4MCwyNjI3OTgsMjY3Njk1LDI2NzU4MSwyNzMyMzIsODIwMzldO3ZhciBtUVM9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy5OPW59aGFuZGxlUmVzcG9uc2UobixXKXtpZihXLmlucHV0Lm1hdGNoKExCKE40aCkpKXt2YXIgRD1uPy5lbmRwb2ludDtXPWcudyhELFRlKT8udW5zZXJpYWxpemVkUHJlZmV0Y2hEYXRhO2lmKEQmJlcpe249dGhpcy5OO3ZhciBiPShuZXcgc29iKS5YKEQpLHY9Zy53KFcsRCRyKTtsZXQgaz12Py5yZXNwb25zZUNvbnRleHQ/Lm1heEFnZVNlY29uZHMmJk51bWJlcih2Py5yZXNwb25zZUNvbnRleHQ/Lm1heEFnZVNlY29uZHMpPjA/TnVtYmVyKHY/LnJlc3BvbnNlQ29udGV4dD8ubWF4QWdlU2Vjb25kcyk6NjAwO3YmJmImJms+MCYmKHY9RWUodixrKSxuLnB1dChiLG5ldyBiaCh2KSkpO0Q9KG5ldyBLSFMpLlgoRCk7Vz1nLncoVyxhSncpO2I9Vz8ucmVzcG9uc2VDb250ZXh0Py5tYXhBZ2VTZWNvbmRzJiZOdW1iZXIoVz8ucmVzcG9uc2VDb250ZXh0Py5tYXhBZ2VTZWNvbmRzKT4wP051bWJlcihXPy5yZXNwb25zZUNvbnRleHQ/Lm1heEFnZVNlY29uZHMpOgo2MDA7VyYmRCYmYj4wJiYoVz1FZShXLGIpLG4ucHV0KEQsbmV3IGJoKFcpKSl9fX19O21RU1tnLkxYXT1bQmVdO25mKCIiLCJkb3dubG9hZHNQYWdlVmlld0NvbmZpZ3VyYXRpb25FbnRpdHkiKTtuZigiRE9XTkxPQURTX0xJU1RfRU5USVRZX0lEX01BTlVBTF9ET1dOTE9BRFMiLCJtYWluRG93bmxvYWRzTGlzdEVudGl0eSIpO25mKCJET1dOTE9BRFNfTElTVF9FTlRJVFlfSURfU01BUlRfRE9XTkxPQURTIiwibWFpbkRvd25sb2Fkc0xpc3RFbnRpdHkiKTtuZigiRE9XTkxPQURTX0xJU1RfRU5USVRZX0lEX1NNQVJUX0RPV05MT0FEUyIsInJlZnJlc2giKTtuZigiU01BUlRfRE9XTkxPQURTX0VOQUJMRUQiLCJzZXR0aW5nRW50aXR5Iik7dmFyIHd5aD1bInd3dy55b3V0dWJlLW5vY29va2llLmNvbSIsInd3dy55b3V0dWJlZWR1Y2F0aW9uLmNvbSIsInlvdXR1YmUuZ29vZ2xlYXBpcy5jb20iXSxPNng9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnN0YXRlPTE7dGhpcy5PMT1udWxsO3RoaXMuRGE9dm9pZCAwfWluaXRpYWxpemUobixXLEQsYil7dGhpcy5EYT1iO2lmKG4ucHJvZ3JhbSl7dmFyIHY7Yj1uLmludGVycHJldGVyVXJsPz9udWxsO24uaW50ZXJwcmV0ZXJTYWZlU2NyaXB0P3Y9Tk4obi5pbnRlcnByZXRlclNhZmVTY3JpcHQpOnY9bi5pbnRlcnByZXRlclNjcmlwdD8/bnVsbDtuLmludGVycHJldGVyU2FmZVVybCYmKGI9cHcobi5pbnRlcnByZXRlclNhZmVVcmwpLnRvU3RyaW5nKCkpO0Y0Yih0aGlzLHYsYixuLnByb2dyYW0sVyxEKX1lbHNlIGcuR3EoRXJyb3IoIkJMOkNJUCIpKX1pc0luaXRpYWxpemVkKCl7cmV0dXJuIHRoaXMuSigpfWdldFN0YXRlKCl7cmV0dXJuIHRoaXMuc3RhdGV9aXNMb2FkaW5nKCl7cmV0dXJuIHRoaXMuc3RhdGU9PT0KMn1pbnZva2Uobj17fSl7cmV0dXJuIHRoaXMuSigpP3RoaXMuVyh7d186bn0pOm51bGx9ZGlzcG9zZSgpe3RoaXMuTihudWxsKTt0aGlzLnZWKDgpfUooKXtyZXR1cm4hIXRoaXMuTzF9VyhuKXtyZXR1cm4gdGhpcy5PMS5tNShuKX1OKG4pe2cuQ3AodGhpcy5PMSk7dGhpcy5PMT1ufXZWKG4pe3RoaXMuc3RhdGU9bn19O3ZhciBQQU09Y2xhc3MgZXh0ZW5kcyBPNnh7TihuKXtKaigpPy5iZ3ZtYSgpO2lmKG4pe2xldCBXPXtiZ3ZtYTpuLmRpc3Bvc2UuYmluZChuKSxiZ3ZtYjpuLnNuYXBzaG90LmJpbmQobiksYmd2bWM6bi5tNS5iaW5kKG4pfTtnLkdiKCJ5dC5hYnVzZS5wbGF5ZXJBdHRMb2FkZXIiLFcpO2cueWooRD0+bi5zbmFwc2hvdChEKSl9ZWxzZSBnLkdiKCJ5dC5hYnVzZS5wbGF5ZXJBdHRMb2FkZXIiLG51bGwpLGcuR2IoInl0LmFidXNlLnBsYXllckF0dExvYWRlclJ1biIsbnVsbCl9Sigpe3JldHVybiEhSmooKX1XKG4pe3JldHVybiBKaigpLmJndm1jKG4pfX07dmFyIFpMPXtBRF9NQVJLRVI6Inl0cC1hZC1wcm9ncmVzcyIsQ0hBUFRFUl9NQVJLRVI6Inl0cC1jaGFwdGVyLW1hcmtlciIsVElNRV9NQVJLRVI6Inl0cC10aW1lLW1hcmtlciJ9O3ZhciBzMz12b2lkIDA7dmFyIEgkPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5YPW5ldyBTZXQ7dGhpcy5KPW5ldyBTZXQ7dGhpcy5qPW5ldyBNYXA7dGhpcy5jbGllbnQ9dm9pZCAwO3RoaXMuY3NuPW51bGx9VyhuKXt0aGlzLmNsaWVudD1ufU4oKXt0aGlzLmNsZWFyKCk7dGhpcy5jc249Zy5SdigpfWNsZWFyKCl7dGhpcy5YLmNsZWFyKCk7dGhpcy5KLmNsZWFyKCk7dGhpcy5qLmNsZWFyKCk7dGhpcy5jc249bnVsbH19O3ZhciBVMz1jbGFzc3tXKG4pe1BWKGZpKCkuVykuYmluZChmaSgpKShuKX1jbGVhcigpe1BWKGZpKCkuY2xlYXIpLmJpbmQoZmkoKSkoKX19O3ZhciBKWD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuRD1bXTt0aGlzLk89W107dGhpcy5LPW5ldyBNYXA7dGhpcy5UQz1uZXcgTWFwO3RoaXMuVj1bXTt0aGlzLmNKPVtdO3RoaXMuWD1uZXcgTWFwO3RoaXMuWT1uZXcgTWFwO3RoaXMuSj1uZXcgTWFwO3RoaXMuTj1uZXcgU2V0O3RoaXMuUyQ9bmV3IE1hcH1XKG4pe3RoaXMuY2xpZW50PW59YmQobixXPXt9KXtQVigoKT0+e3ZhciBEPWcudyhuPy5jb21tYW5kTWV0YWRhdGEscGopPy5yb290VmV8fGcudyhuPy5jb21tYW5kTWV0YWRhdGEsWnNyKT8uc2NyZWVuVmlzdWFsRWxlbWVudD8udWlUeXBlO2lmKEQpe3ZhciBiPWcudyhuPy5jb21tYW5kTWV0YWRhdGEsYk1yKTtpZihiPy5wYXJlbnRUcmFja2luZ1BhcmFtcyl7dmFyIHY9VFUoYi5wYXJlbnRUcmFja2luZ1BhcmFtcyk7aWYoYi5wYXJlbnRDc24pdmFyIGs9Yi5wYXJlbnRDc259ZWxzZSBXLmNsaWNrZWRWaXN1YWxFbGVtZW50P3Y9Vy5jbGlja2VkVmlzdWFsRWxlbWVudDpuLmNsaWNrVHJhY2tpbmdQYXJhbXMmJgoodj1UVShuLmNsaWNrVHJhY2tpbmdQYXJhbXMpKTthOntiPWcudyhuLGcuSVEpO3ZhciBoPWcudyhuLHpPdyk7aWYoYil7aWYoaD10WChiLCJWSURFTyIpKXtiPXt0b2tlbjpoLHZpZGVvSWQ6Yi52aWRlb0lkfTticmVhayBhfX1lbHNlIGlmKGgmJihiPXRYKGgsIlBMQVlMSVNUIikpKXtiPXt0b2tlbjpiLHBsYXlsaXN0SWQ6aC5wbGF5bGlzdElkfTticmVhayBhfWI9dm9pZCAwfVc9e2N0dEF1dGhJbmZvOmIscGFyZW50Q3NuOmssLi4uV307Zy5sKCJleHBlY3RhdGlvbl9sb2dnaW5nIikmJihXLmxvZ2dpbmdFeHBlY3RhdGlvbnM9Zy53KG4/LmNvbW1hbmRNZXRhZGF0YSxac3IpPy5sb2dnaW5nRXhwZWN0YXRpb25zfHx2b2lkIDApO21VKHRoaXMsRCx2LFcpfWVsc2UgZy5HcShuZXcgZy5ReCgiRXJyb3I6IFRyeWluZyB0byBjcmVhdGUgYSBuZXcgc2NyZWVuIHdpdGhvdXQgYSByb290VmVUeXBlIixuKSl9KSgpfWNsaWNrQ29tbWFuZChuLFcsRD0wKXtyZXR1cm4gZ25aKHRoaXMsbi5jbGlja1RyYWNraW5nUGFyYW1zLApXLEQpfXN0YXRlQ2hhbmdlZChuLFcsRD0wKXt0aGlzLnZpc3VhbEVsZW1lbnRTdGF0ZUNoYW5nZWQoVFUobiksVyxEKX12aXN1YWxFbGVtZW50U3RhdGVDaGFuZ2VkKG4sVyxEPTApe0Q9PT0wJiZ0aGlzLk4uaGFzKEQpP3RoaXMuTy5wdXNoKFtuLApXXSk6UCQodGhpcyxuLFcsRCl9blQobil7dmFyIFc9bi5jcG4sRD1TMih0aGlzLDApO2lmKEQubGVuZ3RoJiZEW0QubGVuZ3RoLTJdPy5jcG4hPT1XJiYoRD1nLlJ2KCksVyYmRCYmRCE9PSJVTkRFRklORURfQ1NOIikpe3ZhciBiO24uaXRjdCYmKGI9VFUobi5pdGN0fHwiIikpO2xldCB2PXt9O2cubCgid2ViX3BsYXliYWNrX2Fzc29jaWF0ZWRfbG9nX2N0dCIpJiZuLmtXJiYodi5jdHRBdXRoSW5mbz17dG9rZW46bi5rVyx2aWRlb0lkOm4udmlkZW9JZH0pO249e2NwbjpXLGNzbjpEfTtnLmwoIndlYl9wbGF5YmFja19hc3NvY2lhdGVkX3ZlIikmJmImJihGaihELGIpLG4ucGxheWJhY2tWZT1iLmdldEFzSnNvbigpKTtnLnpVKCJwbGF5YmFja0Fzc29jaWF0ZWQiLG4sdik7Yj1TMih0aGlzLDApO2JbYi5sZW5ndGgtMV0uY3BuPVd9fX07dmFyIEUzPWNsYXNze2ZldGNoKG4sVyxEKXt2YXIgYj1YT2IobixXLEQpO3JldHVybiBuZXcgUHJvbWlzZSgodixrKT0+e3ZhciBoPSgpPT57aWYoRD8uTGQpdHJ5e2xldCB4PXRoaXMuaGFuZGxlUmVzcG9uc2UobixiLnN0YXR1cyxiLnJlc3BvbnNlLEQpO3YoeCl9Y2F0Y2goeCl7ayh4KX1lbHNlIHYodGhpcy5oYW5kbGVSZXNwb25zZShuLGIuc3RhdHVzLGIucmVzcG9uc2UsRCkpfTsKYi5vbmVycm9yPWg7Yi5vbmxvYWQ9aDtiLnNlbmQoVy5ib2R5Pz9udWxsKX0pfWhhbmRsZVJlc3BvbnNlKG4sVyxELGIpe0Q9KER8fCIiKS5yZXBsYWNlKCIpXX0nIiwiIik7CnRyeXt2YXIgdj1KU09OLnBhcnNlKEQpfWNhdGNoKGspe2cuR3EobmV3IGcuUXgoIkpTT04gcGFyc2luZyBmYWlsZWQgYWZ0ZXIgWEhSIGZldGNoIixuLFcsRCkpO2lmKGI/LkxkJiZEKXRocm93IG5ldyBvOCgiSlNPTiBwYXJzaW5nIGZhaWxlZCBhZnRlciBYSFIgZmV0Y2giKTt2PXt9fVchPT0yMDAmJihnLkdxKG5ldyBnLlF4KCJYSFIgQVBJIGZldGNoIGZhaWxlZCIsbixXLEQpKSx2PXsuLi52LGVycm9yTWV0YWRhdGE6e3N0YXR1czpXfX0pO3JldHVybiB2fX07dmFyIFo2aj1jbGFzc3tzdGF0aWMgZ2V0SW5zdGFuY2UoKXt2YXIgbj1nLnJyKCJ5dGdsb2JhbC5zdG9yYWdlXyIpO258fChuPW5ldyBaNmosZy5HYigieXRnbG9iYWwuc3RvcmFnZV8iLG4pKTtyZXR1cm4gbn1hc3luYyBlc3RpbWF0ZSgpe3ZhciBuPW5hdmlnYXRvcjtpZihuLnN0b3JhZ2U/LmVzdGltYXRlKXJldHVybiBuLnN0b3JhZ2UuZXN0aW1hdGUoKTtpZihuLndlYmtpdFRlbXBvcmFyeVN0b3JhZ2U/LnF1ZXJ5VXNhZ2VBbmRRdW90YSlyZXR1cm4gcWZTKCl9fTtnLkdiKCJ5dGdsb2JhbC5zdG9yYWdlQ2xhc3NfIixaNmopO3ZhciBqaVU9a08oInl0LXBsYXllci1sb2NhbC1tZWRpYSIse0tjOntpbmRleDp7dng6Mn0sbWVkaWE6e3Z4OjJ9LGNhcHRpb25zOnt2eDo1fX0sc2hhcmVkOiExLHVwZ3JhZGUobixXKXtXKDIpJiYoWnkobiwiaW5kZXgiKSxaeShuLCJtZWRpYSIpKTtXKDUpJiZaeShuLCJjYXB0aW9ucyIpO1coNikmJihVUihuLCJtZXRhZGF0YSIpLFVSKG4sInBsYXllcmRhdGEiKSl9LHZlcnNpb246NX0pO3ZhciBVeng9e2N1cGNha2U6MS41LGRvbnV0OjEuNixlY2xhaXI6Mixmcm95bzoyLjIsZ2luZ2VyYnJlYWQ6Mi4zLGhvbmV5Y29tYjozLCJpY2UgY3JlYW0gc2FuZHdpY2giOjQsamVsbHliZWFuOjQuMSxraXRrYXQ6NC40LGxvbGxpcG9wOjUuMSxtYXJzaG1hbGxvdzo2LG5vdWdhdDo3LjF9LHVEO2E6e3ZhciBvVj1nLlhRKCk7b1Y9b1YudG9Mb3dlckNhc2UoKTtpZihvVi5pbmRleE9mKCJhbmRyb2lkIikhPS0xKXt2YXIgeVpoPW9WLm1hdGNoKC9hbmRyb2lkXHMqKFxkKyhcLlxkKyk/KVteO3wpXSpbOyldLyk7aWYoeVpoKXtsZXQgbj1wYXJzZUZsb2F0KHlaaFsxXSk7aWYobjwxMDApe3VEPW47YnJlYWsgYX19dmFyIEVnYj1vVi5tYXRjaCgiKCIrT2JqZWN0LmtleXMoVXp4KS5qb2luKCJ8IikrIikiKTt1RD1FZ2I/VXp4W0VnYlswXV06MH1lbHNlIHVEPXZvaWQgMH12YXIgZG49dUQsTkY9ZG4+PTA7dmFyIHo4O3t2YXIgaTZoPWcuWFEoKTtsZXQgbj1pNmgubWF0Y2goL1woKGlQYWR8aVBob25lfGlQb2QpKCBTaW11bGF0b3IpPzsvKTtpZighbnx8bi5sZW5ndGg8Mil6OD12b2lkIDA7ZWxzZXt2YXIgbEQ9aTZoLm1hdGNoKC9cKChpUGFkfGlQaG9uZXxpUG9kKSggU2ltdWxhdG9yKT87IChVOyApP0NQVSAoaVBob25lICk/T1MgKFxkK19cZClbXyBdLyk7ejg9bEQmJmxELmxlbmd0aD09PTY/TnVtYmVyKGxEWzVdLnJlcGxhY2UoIl8iLCIuIikpOjB9fXZhciB2aj16OCx4ST12aj49MDt2YXIgb2Y7Zy51Wj1uZXcgUEFNO29mPTA7Zy5GTFU9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy52aWRlb0RhdGE9bjt0aGlzLk49e2MxYTooKT0+e3ZhciBXPVtdO2lmKGcudVouaXNJbml0aWFsaXplZCgpKXt2YXIgRD0iIjt0aGlzLnZpZGVvRGF0YSYmdGhpcy52aWRlb0RhdGEucEsmJihEPXRoaXMudmlkZW9EYXRhLnBLK2AmcjFiPSR7dGhpcy52aWRlb0RhdGEuY2xpZW50UGxheWJhY2tOb25jZX1gKTtEPXthdHJfY2hhbGxlbmdlOkR9O2cuZ18oImJnX3YiLHZvaWQgMCwicGxheWVyX2F0dCIpOyhEPXI5UyhEKSk/KGcuZ18oImJnX3MiLHZvaWQgMCwicGxheWVyX2F0dCIpLFcucHVzaChgcjFhPSR7RH1gKSk6KGcuZ18oImJnX2UiLHZvaWQgMCwicGxheWVyX2F0dCIpLFcucHVzaCgicjFjPTIiKSl9ZWxzZSBnLmdfKCJiZ19lIix2b2lkIDAsInBsYXllcl9hdHQiKSx3aW5kb3cudHJheXJpZGV8fHdpbmRvdy5ib3RndWFyZD9XLnB1c2goInIxYz0xIik6Vy5wdXNoKCJyMWM9NCIpO1cucHVzaChgcjFkPSR7Zy51Wi5nZXRTdGF0ZSgpfWApOwpyZXR1cm4gVy5qb2luKCImIil9LApjNmE6Vz0+InI2YT0iKyhOdW1iZXIoVy5jKV5MYygpKSwKYzZiOlc9PmByNmI9JHtOdW1iZXIoVy5jKV5OdW1iZXIoZy5BcigiQ0FUU1RBVCIsMCkpfWB9Owp0aGlzLnZpZGVvRGF0YSYmdGhpcy52aWRlb0RhdGEucEs/dGhpcy5SUj1nLml3KHRoaXMudmlkZW9EYXRhLnBLKTp0aGlzLlJSPXt9fX07Zy5DaT1jbGFzc3tjb25zdHJ1Y3RvcihuLFc9e30sRD0wKXt0aGlzLmVycm9yQ29kZT1uO3RoaXMuZGV0YWlscz1XO3RoaXMuc2V2ZXJpdHk9RH19O3ZhciB0SD17RUk6ZnVuY3Rpb24obixXKXt2YXIgRD1uWzBdO25bMF09bltXJW5bSVs1XV1dO25bVyVuW0lbNV1dXT1EfSwKT1c6ZnVuY3Rpb24obixXKXtuW0lbM11dKDAsVyl9LApHRzpmdW5jdGlvbihuKXtuW0lbMjVdXSgpfX07dmFyIHV2TT17UmQ6ImFkdW5pdCIsaFE6ImRldGFpbHBhZ2UiLGt3OiJlZGl0cGFnZSIsVE86ImVtYmVkZGVkIixEcDoibGVhbmJhY2siLEY3OiJwcmV2aWV3cGFnZSIsRE06InByb2ZpbGVwYWdlIixrUzoidW5wbHVnZ2VkIixNbjoicGxheWxpc3RvdmVydmlldyIsVUM6InNwb25zb3JzaGlwc29mZmVyIixCYToic2hvcnRzcGFnZSIsZEw6ImhhbmRsZXNjbGFpbWluZyIsaF86ImltbWVyc2l2ZWxpdmVwYWdlIix6TzoiY3JlYXRvcm11c2ljIixYSjoiaW1tZXJzaXZlbGl2ZXByZXZpZXdwYWdlIixZWDoiYWRtaW50b29seXVydCIsbk06InNob3J0c2F1ZGlvcGl2b3QiLHlfOiJjb25zdW1wdGlvbiIsZUw6ImJhY2tncm91bmRfYXVkaW9fcGxheWJhY2siLFVfOiJmYW1pbHlfY2VudGVyX3N1cGVydmlzZWVfaW50ZXJlc3RzX3BhZ2UiLEdPOiJmYW1pbHlfY2VudGVyX3N1cGVydmlzZWVfaW50ZXJlc3RfZGV0YWlsc19wYWdlIn07dmFyIG9nMj1bImgiLCJIIl0sZHppPVsiOSIsIigiXSx6cmg9WyI5aCIsIihoIl0sbEhoPVsiOCIsIioiXSxUdGk9WyJhIiwiQSJdLGpvaT1bIm8iLCJPIl0sQ0FiPVsibSIsIk0iXSxCdGk9WyJtYWMzIiwiTUFDMyJdLEZIdz1bIm1lYWMzIiwiTUVBQzMiXSxibz17aDpvZzIsSDpvZzIsWyI5Il06ZHppLFsiKCJdOmR6aSxbIjloIl06enJoLFsiKGgiXTp6cmgsWyI4Il06bEhoLFsiKiJdOmxIaCxhOlR0aSxBOlR0aSxvOmpvaSxPOmpvaSxtOkNBYixNOkNBYixtYWMzOkJ0aSxNQUMzOkJ0aSxtZWFjMzpGSHcsTUVBQzM6Rkh3fSx3Rlo9bmV3IFNldCgibyBPIGEgYWggQSBtIE0gbWFjMyBNQUMzIG1lYWMzIE1FQUMzIHNvIHNhIi5zcGxpdCgiICIpKSxwTGo9bmV3IFNldCgibSBNIG1hYzMgTUFDMyBtZWFjMyBNRUFDMyIuc3BsaXQoIiAiKSk7dmFyIEZCVT17ak06MCxObToxMjQsZDQ6MTQ0LEp6OjIyMCx5VjoyNDAsYjY6MzQwLFdhOjM2MCx6NTo0ODAsaHo6NTg4LG1wOjYwOCxYczo3MjAscW06NzQwLHc0OjEwODAsQzQ6MTEwMCxvNjoxNDQwLFBhOjIxNjAsaTY6OTk5OSwwOiJRVUFMSVRZX09SRElOQUxfVU5LTk9XTiIsMTI0OiJRVUFMSVRZX09SRElOQUxfMTQ0UF9TQVZFUiIsMTQ0OiJRVUFMSVRZX09SRElOQUxfMTQ0UCIsMjIwOiJRVUFMSVRZX09SRElOQUxfMjQwUF9TQVZFUiIsMjQwOiJRVUFMSVRZX09SRElOQUxfMjQwUCIsMzQwOiJRVUFMSVRZX09SRElOQUxfMzYwUF9TQVZFUiIsMzYwOiJRVUFMSVRZX09SRElOQUxfMzYwUCIsNDgwOiJRVUFMSVRZX09SRElOQUxfNDgwUCIsNTg4OiJRVUFMSVRZX09SRElOQUxfNjA4UF9TQVZFUiIsNjA4OiJRVUFMSVRZX09SRElOQUxfNjA4UCIsNzIwOiJRVUFMSVRZX09SRElOQUxfNzIwUCIsNzQwOiJRVUFMSVRZX09SRElOQUxfNzIwUF9FTkhBTkNFRCIsMTA4MDoiUVVBTElUWV9PUkRJTkFMXzEwODBQIiwKMTEwMDoiUVVBTElUWV9PUkRJTkFMXzEwODBQX0VOSEFOQ0VEIiwxNDQwOiJRVUFMSVRZX09SRElOQUxfMTQ0MFAiLDIxNjA6IlFVQUxJVFlfT1JESU5BTF8yMTYwUCIsOTk5OToiUVVBTElUWV9PUkRJTkFMX0hJR0hSRVMifTt2YXIgTkc9e2F1dG86MCx0aW55OjE0NCxsaWdodDoxNDQsc21hbGw6MjQwLG1lZGl1bTozNjAsbGFyZ2U6NDgwLGhkNzIwOjcyMCxoZDEwODA6MTA4MCxoZDE0NDA6MTQ0MCxoZDIxNjA6MjE2MCxoZDI4ODA6Mjg4MCxoaWdocmVzOjQzMjB9LExnPXswOiJhdXRvIiwxNDQ6InRpbnkiLDI0MDoic21hbGwiLDM2MDoibWVkaXVtIiw0ODA6ImxhcmdlIiw3MjA6ImhkNzIwIiwxMDgwOiJoZDEwODAiLDE0NDA6ImhkMTQ0MCIsMjE2MDoiaGQyMTYwIiwyODgwOiJoZDI4ODAiLDQzMjA6ImhpZ2hyZXMifSxOej17UVVBTElUWV9PUkRJTkFMX1VOS05PV046MCxRVUFMSVRZX09SRElOQUxfMTQ0UF9TQVZFUjoxMjQsUVVBTElUWV9PUkRJTkFMXzE0NFA6MTQ0LFFVQUxJVFlfT1JESU5BTF8yNDBQX1NBVkVSOjIyMCxRVUFMSVRZX09SRElOQUxfMjQwUDoyNDAsUVVBTElUWV9PUkRJTkFMXzM2MFBfU0FWRVI6MzQwLFFVQUxJVFlfT1JESU5BTF8zNjBQOjM2MCxRVUFMSVRZX09SRElOQUxfNDgwUDo0ODAsClFVQUxJVFlfT1JESU5BTF82MDhQX1NBVkVSOjU4OCxRVUFMSVRZX09SRElOQUxfNjA4UDo2MDgsUVVBTElUWV9PUkRJTkFMXzcyMFA6NzIwLFFVQUxJVFlfT1JESU5BTF83MjBQX0VOSEFOQ0VEOjc0MCxRVUFMSVRZX09SRElOQUxfMTA4MFA6MTA4MCxRVUFMSVRZX09SRElOQUxfMTA4MFBfRU5IQU5DRUQ6MTEwMCxRVUFMSVRZX09SRElOQUxfMTQ0MFA6MTQ0MCxRVUFMSVRZX09SRElOQUxfMjE2MFA6MjE2MCxRVUFMSVRZX09SRElOQUxfSElHSFJFUzo5OTk5fTt2YXIgJGQ9MjU5MkUzO2cuT249e1NUT1BfRVZFTlRfUFJPUEFHQVRJT046Imh0bWw1LXN0b3AtcHJvcGFnYXRpb24iLElWX0RSQVdFUl9FTkFCTEVEOiJ5dHAtaXYtZHJhd2VyLWVuYWJsZWQiLElWX0RSQVdFUl9PUEVOOiJ5dHAtaXYtZHJhd2VyLW9wZW4iLE1BSU5fVklERU86Imh0bWw1LW1haW4tdmlkZW8iLFZJREVPX0NPTlRBSU5FUjoiaHRtbDUtdmlkZW8tY29udGFpbmVyIixWSURFT19DT05UQUlORVJfVFJBTlNJVElPTklORzoiaHRtbDUtdmlkZW8tY29udGFpbmVyLXRyYW5zaXRpb25pbmciLEhPVVNFX0JSQU5EOiJob3VzZS1icmFuZCJ9O3ZhciBQbj17YWxsb3dlZDoiQVVUT1BMQVlfQlJPV1NFUl9QT0xJQ1lfQUxMT1dFRCIsImFsbG93ZWQtbXV0ZWQiOiJBVVRPUExBWV9CUk9XU0VSX1BPTElDWV9BTExPV0VEX01VVEVEIixkaXNhbGxvd2VkOiJBVVRPUExBWV9CUk9XU0VSX1BPTElDWV9ESVNBTExPV0VEIn07dmFyIGNLTT17QU5EUk9JRDozLEFORFJPSURfS0lEUzoxOCxBTkRST0lEX01VU0lDOjIxLEFORFJPSURfVU5QTFVHR0VEOjI5LFdFQjoxLFdFQl9SRU1JWDo2NyxXRUJfVU5QTFVHR0VEOjQxLElPUzo1LElPU19LSURTOjE5LElPU19NVVNJQzoyNixJT1NfVU5QTFVHR0VEOjMzfSx1Sj17YW5kcm9pZDoiQU5EUk9JRCIsImFuZHJvaWQuayI6IkFORFJPSURfS0lEUyIsImFuZHJvaWQubSI6IkFORFJPSURfTVVTSUMiLCJhbmRyb2lkLnVwIjoiQU5EUk9JRF9VTlBMVUdHRUQiLHlvdXR1YmU6IldFQiIsInlvdXR1YmUubSI6IldFQl9SRU1JWCIsInlvdXR1YmUudXAiOiJXRUJfVU5QTFVHR0VEIix5dGlvczoiSU9TIiwieXRpb3MuayI6IklPU19LSURTIiwieXRpb3MubSI6IklPU19NVVNJQyIsInl0aW9zLnVwIjoiSU9TX1VOUExVR0dFRCJ9LE00Uz17Im1keC1wYWlyIjoxLCJtZHgtZGlhbCI6MiwibWR4LWNhc3QiOjMsIm1keC12b2ljZSI6NCwibWR4LWluYXBwZGlhbCI6NX07dmFyIExHMT17aV86MSxZdzoyLFBBVVNFRDozLDE6IkRJU0FCTEVEIiwyOiJFTkFCTEVEIiwzOiJQQVVTRUQifTt2YXIgZXh4PVJlZ0V4cCgiXmh0dHBzPzovLyhbXi5dKlxcLm1vYXRhZHNcXC5jb20vfGVbMC05XStcXC55dFxcLnNyc1xcLmRvdWJsZXZlcmlmeVxcLmNvbXxwYWdlYWQyXFwuZ29vZ2xlc3luZGljYXRpb25cXC5jb20vcGFnZWFkL2dlbl8yMDRcXD9pZD15dDNwJnNyPTEmfHBtXFwuYWRzYWZlcHJvdGVjdGVkXFwuY29tL3lvdXR1YmV8cG1cXC50ZXN0LWFkc2FmZXByb3RlY3RlZFxcLmNvbS95b3V0dWJlfHlvdXR1YmVbMC05XStcXC5tb2F0cGl4ZWxcXC5jb20vKSIpLGxKPVJlZ0V4cCgiXmh0dHBzOi8vKFthLXpdK1xcLik/WzAtOWEtZl17MSw2M31cXC5zc2xwcm94eVxcLmNvcnBcXC5nb29nbGVcXC5jb20vfF5odHRwczovLyhbYS16XStcXC4pP1thLXowLTlcXC1dezEsNjN9XFwuZGVtb3NcXC5jb3JwXFwuZ29vZ2xlXFwuY29tL3xeaHR0cHM6Ly9bMC05YS1mXXsxLDYzfVxcLnByb3h5XFwuZ29vZ2xlcHJvZFxcLmNvbS98Xmh0dHBzPzovLygoWy1cXHddKnd3d1stXFx3XSpcXC58Wy1cXHddKndlYlstXFx3XSpcXC58Wy1cXHddKmNhbmFyeVstXFx3XSpcXC58Wy1cXHddKmRldlstXFx3XSpcXC58Wy1cXHddezEsM31cXC4pKyhjb3JwXFwuKT95b3V0dWJlKC1ub2Nvb2tpZXxraWRzfGVkdWNhdGlvbik/XFwuY29tL3woW0EtWmEtejAtOS1dezEsNjN9XFwuKSooeW91dHViZVxcLmdvb2dsZWFwaXNcXC5jb20pWy5dPyg6WzAtOV0rKT8vfChbYS16XStcXC4pP1thLXowLTlcXC1dezEsNjN9XFwuKFthLXpdezN9fGkpXFwuY29ycFxcLmdvb2dsZVxcLmNvbSg6WzAtOV0rKT8vfChbYS16XStcXC4pP1thLXowLTlcXC1dezEsNjN9XFwuY1xcLmdvb2dsZXJzXFwuY29tKDpbMC05XSspPy98KGRvY3N8ZHJpdmUpXFwuZ29vZ2xlXFwuY29tLyhhL1teL1xcXFwlXSsvfCl8KG11c2ljfG11c2ljLWdyZWVuLXFhfG11c2ljLXJlbGVhc2UtcWF8eXQtbXVzaWMtZ3JlZW5cXC5jb3JwKVxcLnlvdXR1YmVcXC5jb20vfCh0dnx0di1ncmVlbi1xYXx0di1ncmVlbi1xYVxcLmNvcnB8dHYtcmVsZWFzZS1xYXx0di1yZWxlYXNlLXFhXFwuY29ycHx0di1pbnRlZ3JhdGlvbi1xYXx0di1pbnRlZ3JhdGlvbi1xYVxcLmNvcnB8eXQtdHYtYXV0b3B1c2hcXC5jb3JwfHl0LXR2LWludGVncmF0aW9uXFwuY29ycHx5dC10di1zdGFnaW5nXFwuY29ycClcXC55b3V0dWJlXFwuY29tL3xbQS1aYS16MC05LV0rXFwucHJvZFxcLmdvb2dsZVxcLmNvbSg6WzAtOV0rKT8vKSIpLApndGo9UmVnRXhwKCJeaHR0cHM/Oi8vKHd3d1xcLmdvb2dsZVxcLmNvbS9wYWdlYWQveHN1bHx3d3dcXC55b3V0dWJlXFwuY29tL3BhZ2VhZC9zbGF2KSIpLHg1cj1SZWdFeHAoIl5odHRwczovLyhbQS1aYS16MC05LV17MSw2M31cXC4pK2RlbW9zXFwuY29ycFxcLmdvb2dsZVxcLmNvbSgvKD8hdXJsXFxiKXwkKXxeaHR0cHM6Ly8oW0EtWmEtejAtOS1dezEsNjN9XFwuKStzc2xwcm94eVxcLmNvcnBcXC5nb29nbGVcXC5jb20oL3wkKXxeaHR0cHM/Oi8vKChbQS1aYS16MC05LV17MSw2M31cXC4pKihjb3JwXFwuZ29vZ2xlXFwuY29tfHByb3h5XFwuZ29vZ2xlcHJvZFxcLmNvbXxjXFwuZ29vZ2xlcnNcXC5jb218cHJveHlcXC5nb29nbGVyc1xcLmNvbXxkb2NzXFwuZ29vZ2xlXFwuY29tfGRyaXZlXFwuZ29vZ2xlXFwuY29tfHByb2RcXC5nb29nbGVcXC5jb218bWFpbFxcLmdvb2dsZVxcLmNvbXx5b3V0dWJlXFwuY29tfHlvdXR1YmVlZHVjYXRpb25cXC5jb218eW91dHViZVxcLW5vY29va2llXFwuY29tfHlvdXR1YmVraWRzXFwuY29tKVsuXT8oOlswLTldKyk/L3woW0EtWmEtejAtOS1dezEsNjN9XFwuKSooc2FuZGJveFxcLmdvb2dsZVxcLmNvbSkoOlswLTldKyk/KC8oPyF1cmxcXGIpfCQpKSIpLApMaHQ9UmVnRXhwKCJeaHR0cHM/Oi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGN1cnJlbnRzXFwuZ29vZ2xlXFwuY29tKVsuXT8oOlswLTldKyk/LyIpLGs3cj1SZWdFeHAoIl5odHRwczovLyhbQS1aYS16MC05LV17MSw2M31cXC4pK2RlbW9zXFwuY29ycFxcLmdvb2dsZVxcLmNvbSgvKD8hdXJsXFxiKXwkKXxeaHR0cHM6Ly8oW0EtWmEtejAtOS1dezEsNjN9XFwuKStzc2xwcm94eVxcLmNvcnBcXC5nb29nbGVcXC5jb20oL3wkKXxeaHR0cHM/Oi8vKChbQS1aYS16MC05LV17MSw2M31cXC4pKihjb3JwXFwuZ29vZ2xlXFwuY29tfHByb3h5XFwuZ29vZ2xlcHJvZFxcLmNvbXxjXFwuZ29vZ2xlcnNcXC5jb218cHJveHlcXC5nb29nbGVyc1xcLmNvbXxib3JnXFwuZ29vZ2xlXFwuY29tfHByb2RcXC5nb29nbGVcXC5jb218eW91dHViZVxcLmNvbXx5b3V0dWJla2lkc1xcLmNvbSlbLl0/KDpbMC05XSspPy98KFtBLVphLXowLTktXXsxLDYzfVxcLikqKHNhbmRib3hcXC5nb29nbGVcXC5jb20pKDpbMC05XSspPygvKD8hdXJsXFxiKXwkKSkiKSwKRDVVPVJlZ0V4cCgiXigoaHR0cChzKT8pOik/XFwvXFwvKCgoKGxoWzMtNl0oLXR0fC1kW2EtZyx6XSk/XFwuKChnZ3BodCl8KGdvb2dsZXVzZXJjb250ZW50KXwoZ29vZ2xlKXwoc2FuZGJveFxcLmdvb2dsZSkpKXwobGg3XFwtKGV1fHVzfHF3fHJ0fHh4KVxcLigoZ29vZ2xldXNlcmNvbnRlbnQpfChnb29nbGUpKSl8KChwaG90b3N8dGVzdG9ubHl8d29yaylcXC5maWZlXFwudXNlcmNvbnRlbnRcXC5nb29nbGUpfChbXFx3XFwtXStcXC5maWZlXFwudXNlcmNvbnRlbnRcXC5nb29nbGUpfCgoWzEtNF1cXC5icFxcLmJsb2dzcG90KXwoYnBbMC0zXVxcLmJsb2dnZXIpKXwoY2NwLWxoXFwuZ29vZ2xldXNlcmNvbnRlbnQpfCgoKChjcHxjaXxncClbMy02XSl8KGFwWzEtMl0pKVxcLihnZ3BodHxnb29nbGV1c2VyY29udGVudCkpfChnbVsxLTRdXFwuZ2dwaHQpfChwbGF5LSh0aS0pP2xoXFwuZ29vZ2xldXNlcmNvbnRlbnQpfChnelswLTFdXFwuZ29vZ2xldXNlcmNvbnRlbnQpfChsaDNcXC1nbVxcLmdvb2dsZSl8KCgoeXRbMy00XSl8KHNwWzEtM10pKVxcLihnZ3BodHxnb29nbGV1c2VyY29udGVudCkpKVxcLmNvbSl8KGRyaXZlXFwuZ29vZ2xlXFwuY29tXFwvZHJpdmVcXC0odXNlcmNvbnRlbnR8dmlld2VyKSl8KGRwWzMtNl1cXC5nb29nbGV1c2VyY29udGVudFxcLmNuKXwoZHA0XFwuZ29vZ2xldXNlcmNvbnRlbnRcXC5jb20pfCgocGhvdG9zfGRyaXZlfGNvbnRyaWJ1dGlvbilcXC1pbWFnZVxcLShkZXZ8cWEpKC11c3wtZXUpPygtYXV0aHwtY29va2llKT9cXC5jb3JwXFwuZ29vZ2xlXFwuY29tKXwocGhvdG9zXFwtaW1hZ2VcXC1kZXZcXC1kbFxcLShhdXRofGV1fHVzKVxcLmNvcnBcXC5nb29nbGVcXC5jb20pfCgoZGV2fGRldjJ8ZGV2M3xxYXxxYTJ8cWEzfHFhLXJlZHxxYS1ibHVlfGNhbmFyeSlbLS5dbGlnaHRob3VzZVxcLnNhbmRib3hcXC5nb29nbGVcXC5jb21cXC9pbWFnZSl8KGltYWdlXFwtKGRldnxxYSlcXC1saWdodGhvdXNlKC1hdXRoKT9cXC5zYW5kYm94XFwuZ29vZ2xlXFwuY29tKFxcL2ltYWdlKT8pfChkcml2ZVxcLXFhXFwuY29ycFxcLmdvb2dsZVxcLmNvbVxcL2RyaXZlXFwtKHVzZXJjb250ZW50fHZpZXdlcikpfChkb2NzKFxcLShkZXZ8cWEpXFwuY29ycCk/XFwuZ29vZ2xlXFwuY29tXFwvKHVcXC9bMC05XStcXC8pPyhkb2NzfHNoZWV0c3xzbGlkZXN8ZHJhd2luZ3N8Zm9ybXN8dmlkZW9zfHBpY3R1cmVzKVxcLWltYWdlc1xcLShydHxxdykpfChkb2NzXFwuc2FuZGJveFxcLmdvb2dsZVxcLmNvbVxcLyh1XFwvWzAtOV0rXFwvKT8oZG9jc3xzaGVldHN8c2xpZGVzfGRyYXdpbmdzfGZvcm1zfHZpZGVvc3xwaWN0dXJlcylcXC1pbWFnZXMpfChzaXRlc1xcLmdvb2dsZVxcLmNvbVxcLyh1XFwvWzAtOV0rXFwvKT9zaXRlcyh2KT9cXC1pbWFnZXNcXC0ocnR8cXcpKXwoYXRhcmktZ3JlZW4tdGVzdFxcLmNvcnBcXC5nb29nbGVcXC5jb21cXC8odVxcL1swLTldK1xcLyk/c2l0ZXModik/XFwtaW1hZ2VzXFwtKHJ0fHF3KSl8KHNpdGVzXFwuc2FuZGJveFxcLmdvb2dsZVxcLmNvbVxcLyh1XFwvWzAtOV0rXFwvKT9zaXRlcyh2KT9cXC1pbWFnZXMpKVxcL3xeaHR0cHM6Ly8oW0EtWmEtejAtOS1dezEsNjN9XFwuKStkZW1vc1xcLmNvcnBcXC5nb29nbGVcXC5jb20oLyg/IXVybFxcYil8JCl8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikrc3NscHJveHlcXC5jb3JwXFwuZ29vZ2xlXFwuY29tKC98JCl8Xmh0dHBzPzovLygoW0EtWmEtejAtOS1dezEsNjN9XFwuKSooY29ycFxcLmdvb2dsZVxcLmNvbXxwcm94eVxcLmdvb2dsZXByb2RcXC5jb218Y1xcLmdvb2dsZXJzXFwuY29tfHByb3h5XFwuZ29vZ2xlcnNcXC5jb218Ym9yZ1xcLmdvb2dsZVxcLmNvbXxkb2NzXFwuZ29vZ2xlXFwuY29tfGRyaXZlXFwuZ29vZ2xlXFwuY29tfGdvb2dsZXBsZXhcXC5jb218cGxheVxcLmdvb2dsZVxcLmNvbXxwcm9kXFwuZ29vZ2xlXFwuY29tfHZpZGVvXFwuZ29vZ2xlXFwuY29tfHlvdXR1YmVcXC5jb218eXRpbWdcXC5jb218eXRpbWdcXC5zYW5kYm94XFwuZ29vZ2xlXFwuY29tfGNoYXRcXC5nb29nbGVcXC5jb20pWy5dPyg6WzAtOV0rKT8vfChbQS1aYS16MC05LV17MSw2M31cXC4pKihzYW5kYm94XFwuZ29vZ2xlXFwuY29tKSg6WzAtOV0rKT8oLyg/IXVybFxcYil8JCl8czJcXC5nb29nbGV1c2VyY29udGVudFxcLmNvbS9zMi9mYXZpY29uc1xcP3x5dFszLTRdXFwuZ2dwaHRcXC5jb20vKSIpLApiS1o9UmVnRXhwKCJeaHR0cHM/Oi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGN1cnJlbnRzXFwuZ29vZ2xlXFwuY29tKVsuXT8oOlswLTldKyk/LyIpLFhLMj1SZWdFeHAoIl5odHRwcz8uKiNvY3IkfF5odHRwcz86Ly8oYWtzZWN1cmVcXC5pbXJ3b3JsZHdpZGVcXC5jb20vfGNkblxcLmltcndvcmxkd2lkZVxcLmNvbS98c2VjdXJlXFwtLi5cXC5pbXJ3b3JsZHdpZGVcXC5jb20vKSIpLHZFaD1SZWdFeHAoIl5odHRwcz86Ly8oZ29vZ2xlYWRzXFwuZ1xcLmRvdWJsZWNsaWNrXFwubmV0LyhhY2xrfHBhZ2VhZC9jb252ZXJzaW9uKXx3d3dcXC5nb29nbGVcXC5jb20vKGFjbGt8cGFnZWFkL2NvbnZlcnNpb24pfHd3d1xcLmdvb2dsZWFkc2VydmljZXNcXC5jb20vKGFjbGt8cGFnZWFkLyhhY2xrfGNvbnZlcnNpb24pKXx3d3dcXC55b3V0dWJlXFwuY29tL3BhZ2VhZC9jb252ZXJzaW9uKSIpLG5Fdz1SZWdFeHAoIl4oKGh0dHAocyk/KTopP1xcL1xcLygoKChsaFszLTZdKC10dHwtZFthLWcsel0pP1xcLigoZ2dwaHQpfChnb29nbGV1c2VyY29udGVudCl8KGdvb2dsZSl8KHNhbmRib3hcXC5nb29nbGUpKSl8KGxoN1xcLShldXx1c3xxd3xydHx4eClcXC4oKGdvb2dsZXVzZXJjb250ZW50KXwoZ29vZ2xlKSkpfCgocGhvdG9zfHRlc3Rvbmx5fHdvcmspXFwuZmlmZVxcLnVzZXJjb250ZW50XFwuZ29vZ2xlKXwoW1xcd1xcLV0rXFwuZmlmZVxcLnVzZXJjb250ZW50XFwuZ29vZ2xlKXwoKFsxLTRdXFwuYnBcXC5ibG9nc3BvdCl8KGJwWzAtM11cXC5ibG9nZ2VyKSl8KGNjcC1saFxcLmdvb2dsZXVzZXJjb250ZW50KXwoKCgoY3B8Y2l8Z3ApWzMtNl0pfChhcFsxLTJdKSlcXC4oZ2dwaHR8Z29vZ2xldXNlcmNvbnRlbnQpKXwoZ21bMS00XVxcLmdncGh0KXwocGxheS0odGktKT9saFxcLmdvb2dsZXVzZXJjb250ZW50KXwoZ3pbMC0xXVxcLmdvb2dsZXVzZXJjb250ZW50KXwobGgzXFwtZ21cXC5nb29nbGUpfCgoKHl0WzMtNF0pfChzcFsxLTNdKSlcXC4oZ2dwaHR8Z29vZ2xldXNlcmNvbnRlbnQpKSlcXC5jb20pfChkcml2ZVxcLmdvb2dsZVxcLmNvbVxcL2RyaXZlXFwtKHVzZXJjb250ZW50fHZpZXdlcikpfChkcFszLTZdXFwuZ29vZ2xldXNlcmNvbnRlbnRcXC5jbil8KGRwNFxcLmdvb2dsZXVzZXJjb250ZW50XFwuY29tKXwoKHBob3Rvc3xkcml2ZXxjb250cmlidXRpb24pXFwtaW1hZ2VcXC0oZGV2fHFhKSgtdXN8LWV1KT8oLWF1dGh8LWNvb2tpZSk/XFwuY29ycFxcLmdvb2dsZVxcLmNvbSl8KHBob3Rvc1xcLWltYWdlXFwtZGV2XFwtZGxcXC0oYXV0aHxldXx1cylcXC5jb3JwXFwuZ29vZ2xlXFwuY29tKXwoKGRldnxkZXYyfGRldjN8cWF8cWEyfHFhM3xxYS1yZWR8cWEtYmx1ZXxjYW5hcnkpWy0uXWxpZ2h0aG91c2VcXC5zYW5kYm94XFwuZ29vZ2xlXFwuY29tXFwvaW1hZ2UpfChpbWFnZVxcLShkZXZ8cWEpXFwtbGlnaHRob3VzZSgtYXV0aCk/XFwuc2FuZGJveFxcLmdvb2dsZVxcLmNvbShcXC9pbWFnZSk/KXwoZHJpdmVcXC1xYVxcLmNvcnBcXC5nb29nbGVcXC5jb21cXC9kcml2ZVxcLSh1c2VyY29udGVudHx2aWV3ZXIpKXwoZG9jcyhcXC0oZGV2fHFhKVxcLmNvcnApP1xcLmdvb2dsZVxcLmNvbVxcLyh1XFwvWzAtOV0rXFwvKT8oZG9jc3xzaGVldHN8c2xpZGVzfGRyYXdpbmdzfGZvcm1zfHZpZGVvc3xwaWN0dXJlcylcXC1pbWFnZXNcXC0ocnR8cXcpKXwoZG9jc1xcLnNhbmRib3hcXC5nb29nbGVcXC5jb21cXC8odVxcL1swLTldK1xcLyk/KGRvY3N8c2hlZXRzfHNsaWRlc3xkcmF3aW5nc3xmb3Jtc3x2aWRlb3N8cGljdHVyZXMpXFwtaW1hZ2VzKXwoc2l0ZXNcXC5nb29nbGVcXC5jb21cXC8odVxcL1swLTldK1xcLyk/c2l0ZXModik/XFwtaW1hZ2VzXFwtKHJ0fHF3KSl8KGF0YXJpLWdyZWVuLXRlc3RcXC5jb3JwXFwuZ29vZ2xlXFwuY29tXFwvKHVcXC9bMC05XStcXC8pP3NpdGVzKHYpP1xcLWltYWdlc1xcLShydHxxdykpfChzaXRlc1xcLnNhbmRib3hcXC5nb29nbGVcXC5jb21cXC8odVxcL1swLTldK1xcLyk/c2l0ZXModik/XFwtaW1hZ2VzKSlcXC98Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikrZGVtb3NcXC5jb3JwXFwuZ29vZ2xlXFwuY29tKC8oPyF1cmxcXGIpfCQpfF5odHRwczovLyhbQS1aYS16MC05LV17MSw2M31cXC4pK3NzbHByb3h5XFwuY29ycFxcLmdvb2dsZVxcLmNvbSgvfCQpfF5odHRwcz86Ly8oKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGNvcnBcXC5nb29nbGVcXC5jb218cHJveHlcXC5nb29nbGVwcm9kXFwuY29tfGNcXC5nb29nbGVyc1xcLmNvbXxwcm94eVxcLmdvb2dsZXJzXFwuY29tfGJvcmdcXC5nb29nbGVcXC5jb218ZG9jc1xcLmdvb2dsZVxcLmNvbXxkcml2ZVxcLmdvb2dsZVxcLmNvbXxnb29nbGVwbGV4XFwuY29tfGdvb2dsZXZpZGVvXFwuY29tfHByb2RcXC5nb29nbGVcXC5jb218bGgzXFwucGhvdG9zXFwuZ29vZ2xlXFwuY29tfG1haWxcXC5nb29nbGVcXC5jb218eW91dHViZVxcLmNvbXx5dFxcLmFrYW1haXplZFxcLm5ldHxjaGF0XFwuZ29vZ2xlXFwuY29tKVsuXT8oOlswLTldKyk/L3woW0EtWmEtejAtOS1dezEsNjN9XFwuKSooc2FuZGJveFxcLmdvb2dsZVxcLmNvbSkoOlswLTldKyk/KC8oPyF1cmxcXGIpfCQpfChbQS1aYS16MC05LV17MSw2M31cXC4pKmNcXC5saDMoLWRbYS1neXpdfC10ZXN0b25seSk/XFwuKGdvb2dsZXVzZXJjb250ZW50fHBob3Rvc1xcLmdvb2dsZSlcXC5jb20vLiokKSIpLApXaFo9UmVnRXhwKCJeaHR0cHM/Oi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGN1cnJlbnRzXFwuZ29vZ2xlXFwuY29tKVsuXT8oOlswLTldKyk/LyIpLFJyaT1SZWdFeHAoIl5odHRwcz86Ly8oKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGltYXNka1xcLmdvb2dsZWFwaXNcXC5jb218Mm1kblxcLm5ldHxnb29nbGVzeW5kaWNhdGlvblxcLmNvbXxjb3JwXFwuZ29vZ2xlXFwuY29tfHByb3h5XFwuZ29vZ2xlcHJvZFxcLmNvbXxjXFwuZ29vZ2xlcnNcXC5jb218cHJveHlcXC5nb29nbGVyc1xcLmNvbXxib3JnXFwuZ29vZ2xlXFwuY29tfGdvb2dsZWFkc1xcLmdcXC5kb3VibGVjbGlja1xcLm5ldHxwcm9kXFwuZ29vZ2xlXFwuY29tfHN0YXRpY1xcLmRvdWJsZWNsaWNrXFwubmV0fHN0YXRpY1xcLmdvb2dsZWFkc3NlcnZpbmdcXC5jbnxzdHVkaW9hcGlcXC5kb3VibGVjbGlja1xcLm5ldHx5b3V0dWJlXFwuY29tfHlvdXR1YmVcXC5nb29nbGVhcGlzXFwuY29tfHlvdXR1YmVcXC1ub2Nvb2tpZVxcLmNvbXx5b3V0dWJla2lkc1xcLmNvbXx5dGltZ1xcLmNvbXx5dGltZ1xcLnNhbmRib3hcXC5nb29nbGVcXC5jb20pWy5dPyg6WzAtOV0rKT8vfGxpZ2h0Ym94LShkZW1vc3xidWlsZGVyKVxcLmFwcHNwb3RcXC5jb20vfHNbMDFdKHFhKT9cXC4ybWRuXFwubmV0L2Fkcy9yaWNobWVkaWEvc3R1ZGlvL211L3RlbXBsYXRlcy90ZXRyaXN8d3d3XFwuZ3N0YXRpY1xcLmNvbS9kb3VibGVjbGljay9zdHVkaW8vaW5ub3ZhdGlvbi9oNS9sYXlvdXRzL3RldHJpc3x3d3dcXC5nc3RhdGljXFwuY29tL2RvdWJsZWNsaWNrL3N0dWRpby9pbm5vdmF0aW9uL3l0cGxheWVyKSIpLApRb009UmVnRXhwKCJeaHR0cHM6Ly8oW0EtWmEtejAtOS1dezEsNjN9XFwuKSooY3Jvd2Rzb3VyY2V8ZGF0YWNvbXB1dGUpXFwuZ29vZ2xlXFwuY29tL3xeaHR0cHM6Ly8oW0EtWmEtejAtOS1dezEsNjN9XFwuKStkZW1vc1xcLmNvcnBcXC5nb29nbGVcXC5jb20oLyg/IXVybFxcYil8JCl8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikrc3NscHJveHlcXC5jb3JwXFwuZ29vZ2xlXFwuY29tKC98JCl8Xmh0dHBzOi8vKGFkc3xhZHdvcmRzXFwuY29ycClcXC5nb29nbGVcXC5jb20vKGF3Lyhhc3NldGdyb3VwLyhlZGl0fG5ldyl8Y2FtcGFpZ25zLyhuZXcvKHBlcmZvcm1hbmNlbWF4fGRlbWFuZGdlbil8ZWRpdC9kZW1hbmRnZW4pKXwkKXxeaHR0cHM6Ly8oYWR3b3Jkcy0pP2NhbmFyeVxcLnFhXFwuYWR6XFwuZ29vZ2xlXFwuY29tLyhhdy8oYXNzZXRncm91cC8oZWRpdHxuZXcpfGNhbXBhaWducy8obmV3LyhwZXJmb3JtYW5jZW1heHxkZW1hbmRnZW4pfGVkaXQvZGVtYW5kZ2VuKSl8JCl8Xmh0dHBzOi8vKGJvb2tzfHBsYXktYm9va3MtKGF1dG9wdXNofGludGVybmFsfHByZXByb2R8c3RhZ2luZykoLXNhbmRib3h8XFwuY29ycCkpXFwuZ29vZ2xldXNlcmNvbnRlbnRcXC5jb20oL3wkKXxeaHR0cHM6Ly9hZHMoLWV4dGVybmFsKT8tcHJvZFxcLnFhXFwuYWR6XFwuZ29vZ2xlXFwuY29tLyhhdy8oYXNzZXRncm91cC8oZWRpdHxuZXcpfGNhbXBhaWducy8obmV3LyhwZXJmb3JtYW5jZW1heHxkZW1hbmRnZW4pfGVkaXQvZGVtYW5kZ2VuKSl8JCl8Xmh0dHBzOi8vY2FudmFzdGVzdGVyLTNmZDBiXFwuYXBwc3BvdFxcLmNvbSgvfCQpfF5odHRwczovL2xvY2FsaG9zdFxcLmdvb2dsZXVzZXJjb250ZW50XFwuY29tKDpcXGQrKT8oL3wkKXxeaHR0cHM6Ly9uYXJyYXRpdmUtbmV3cy1jYXN0LXJlY2VpdmVyLWRcXC5hcHBzcG90XFwuY29tKC98JCl8Xmh0dHBzOi8vbmFycmF0aXZlLW5ld3MtY2FzdC1yZWNlaXZlci1mXFwuYXBwc3BvdFxcLmNvbSgvfCQpfF5odHRwczovL29uZVxcLmdvb2dsZVxcLmNvbSgvfCQpfF5odHRwczovL3d3d1xcLmdvb2dsZVxcLmNvbS9jdWx0dXJhbGluc3RpdHV0ZS9tYW5hZ2UvLiokfF5odHRwczovL3d3d1xcLmdzdGF0aWNcXC5jb20vYW9nX2hvd3RvfF5odHRwczovL3d3d1xcLmdzdGF0aWNcXC5jb20vbmFycmF0aXZlX2Nhc3RfcmVjZWl2ZXIvbmV3c3xeaHR0cHM/Oi8vKChbQS1aYS16MC05LV17MSw2M31cXC4pKihpbWFzZGtcXC5nb29nbGVhcGlzXFwuY29tfGNvcnBcXC5nb29nbGVcXC5jb218cHJveHlcXC5nb29nbGVwcm9kXFwuY29tfGNcXC5nb29nbGVyc1xcLmNvbXxwcm94eVxcLmdvb2dsZXJzXFwuY29tfGJvcmdcXC5nb29nbGVcXC5jb218ZG9jc1xcLmdvb2dsZVxcLmNvbXxkcml2ZVxcLmdvb2dsZVxcLmNvbXxnb29nbGVhZHNcXC5nXFwuZG91YmxlY2xpY2tcXC5uZXR8Z29vZ2xlcGxleFxcLmNvbXxwbGF5XFwuZ29vZ2xlXFwuY29tfHByb2RcXC5nb29nbGVcXC5jb218cGhvdG9zXFwuZ29vZ2xlXFwuY29tfGdldFxcLmdvb2dsZVxcLmNvbXxibG9nZ2VyXFwuY29tfG1haWxcXC5nb29nbGVcXC5jb218c3VydmV5XFwuZ1xcLmRvdWJsZWNsaWNrXFwubmV0fHlvdXR1YmVcXC5jb218eW91dHViZVxcLmdvb2dsZWFwaXNcXC5jb218eW91dHViZWVkdWNhdGlvblxcLmNvbXx5b3V0dWJlXFwtbm9jb29raWVcXC5jb218eXRcXC13ZWJcXC1lbWJlZGRlZFxcLXBsYXllclxcLmFwcHNwb3RcXC5jb218eW91dHViZWtpZHNcXC5jb218dmV2b1xcLmNvbXxjaGF0XFwuZ29vZ2xlXFwuY29tfG1lZXRcXC5nb29nbGVcXC5jb218YXJ0c2FuZGN1bHR1cmVcXC5nb29nbGVcXC5jb20pWy5dPyg6WzAtOV0rKT8oL3wkKXwoW0EtWmEtejAtOS1dezEsNjN9XFwuKSooc2FuZGJveFxcLmdvb2dsZVxcLmNvbSkoOlswLTldKyk/KC8oPyF1cmxcXGIpfCQpfCh3d3dcXC58ZW5jcnlwdGVkXFwuKT9nb29nbGVcXC4oY2F0fGNvbShcXC4oYVtmZ2lydV18YltkaG5vcnpdfGNbb3V5XXxkb3xlW2NndF18Zmp8Z1toaXRdfGhrfGptfGtofGt3fGxbYmN5XXxtW210eHldfG5bYWZnaXBdfG9tfHBbYWVnaGtyeV18cWF8c1thYmdsdl18dFtqbnJ3XXx1YXx1eXx2Y3x2bikpP3xhW2NkZWxtc3R6XXxjW2FjZGZnaGlsbW52el18YlthZWZnaWpzdHldfGVlfGVzfGRbZWprbXpdfGdbYWVmZ2xtcHJ5XXxmW2ltcl18aVtlbW9xcnN0XXxoW25ydHVdfGtbZ2l6XXxqZXxqb3xtW2RlZ2tsbnN1dnddfGxbYWlrdHV2XXxuW2Vsb3J1XXxwW2xuc3RdfHNbY2VoaWttbm9ydF18cltvc3V3XXx1c3x0W2Rna2xtbm90XXx3c3x2Z3x2dXxjb1xcLihhb3xid3xja3xjcnxpW2Rsbl18anB8a2V8a3J8bHN8bWF8bXp8bnp8dGh8dHp8dVtna3pdfHZlfHZpfHpbYW13XSkpLyhzZWFyY2h8d2ViaHApXFw/fCh3d3dcXC58ZW5jcnlwdGVkXFwuKWdvb2dsZVxcLihjYXR8Y29tKFxcLihhW2ZnaXJ1XXxiW2Robm9yel18Y1tvdXldfGRvfGVbY2d0XXxmanxnW2hpdF18aGt8am18a2h8a3d8bFtiY3ldfG1bbXR4eV18blthZmdpcF18b218cFthZWdoa3J5XXxxYXxzW2FiZ2x2XXx0W2pucnddfHVhfHV5fHZjfHZuKSk/fGFbY2RlbG1zdHpdfGNbYWNkZmdoaWxtbnZ6XXxiW2FlZmdpanN0eV18ZWV8ZXN8ZFtlamttel18Z1thZWZnbG1wcnldfGZbaW1yXXxpW2Vtb3Fyc3RdfGhbbnJ0dV18a1tnaXpdfGplfGpvfG1bZGVna2xuc3V2d118bFthaWt0dXZdfG5bZWxvcnVdfHBbbG5zdF18c1tjZWhpa21ub3J0XXxyW29zdXddfHVzfHRbZGdrbG1ub3RdfHdzfHZnfHZ1fGNvXFwuKGFvfGJ3fGNrfGNyfGlbZGxuXXxqcHxrZXxrcnxsc3xtYXxtenxuenx0aHx0enx1W2drel18dmV8dml8elthbXddKSkvPyR8bGlnaHRib3gtKGRlbW9zfGJ1aWxkZXIpXFwuYXBwc3BvdFxcLmNvbS98czBcXC4ybWRuXFwubmV0L2luc3RyZWFtL2h0bWw1L25hdGl2ZS98c1swMV0ocWEpP1xcLjJtZG5cXC5uZXQvYWRzL3JpY2htZWRpYS9zdHVkaW8vbXUvdGVtcGxhdGVzL3RldHJpc3x3d3dcXC5nc3RhdGljXFwuY29tL2RvdWJsZWNsaWNrL3N0dWRpby9pbm5vdmF0aW9uL2g1L2xheW91dHMvdGV0cmlzKSIpLApWNGk9UmVnRXhwKCJeaHR0cHM/Oi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGN1cnJlbnRzXFwuZ29vZ2xlXFwuY29tKVsuXT8oOlswLTldKyk/KC98JCkiKSxjWlM9UmVnRXhwKCJeKGh0dHBzOi8vcGxheVxcLmdvb2dsZVxcLmNvbXxodHRwczovL3Bob3Rvc1xcLmdvb2dsZVxcLmNvbXxodHRwczovL2dldFxcLmdvb2dsZVxcLmNvbXxodHRwczovL21haWxcXC5nb29nbGVcXC5jb218aHR0cHM6Ly95dFxcLXdlYlxcLWVtYmVkZGVkXFwtcGxheWVyXFwuYXBwc3BvdFxcLmNvbXxodHRwOi8veXRcXC13ZWJcXC1lbWJlZGRlZFxcLXBsYXllclxcLmFwcHNwb3RcXC5jb218aHR0cHM6Ly9jaGF0XFwuZ29vZ2xlXFwuY29tfGh0dHBzOi8vb25lXFwuZ29vZ2xlXFwuY29tfGh0dHBzOi8vYXJ0c2FuZGN1bHR1cmVcXC5nb29nbGVcXC5jb218aHR0cHM6Ly9hZHN0cmFuc3BhcmVuY3lcXC5nb29nbGVcXC5jb218aHR0cHM6Ly9hZHNcXC5nb29nbGVcXC5jb218aHR0cHM6Ly9hZHdvcmRzXFwuY29ycFxcLmdvb2dsZVxcLmNvbXxodHRwczovL2Fkc1xcLWV4dGVybmFsXFwtcHJvZFxcLnFhXFwuYWR6XFwuZ29vZ2xlXFwuY29tfGh0dHBzOi8vYWRzXFwtcHJvZFxcLnFhXFwuYWR6XFwuZ29vZ2xlXFwuY29tfGh0dHBzOi8vYWR3b3Jkc1xcLWNhbmFyeVxcLnFhXFwuYWR6XFwuZ29vZ2xlXFwuY29tfGh0dHBzOi8vY2FuYXJ5XFwucWFcXC5hZHpcXC5nb29nbGVcXC5jb20pJHxeaHR0cDovL1swLTldK1xcLlthLXowLTlcXC1fXStcXC5bYS16MC05XFwtX10rXFwuW2EtejAtOVxcLV9dK1xcLihbYS16XXsyfXxpKVxcLmJvcmdcXC5nb29nbGVcXC5jb20oOlswLTldKyk/JHxeaHR0cHM6Ly8oKGF1dG9wdXNofGJldGEtbG9va3VwfGRhaWx5LVswLTZdfG1hbnVhbC1xdWFsfHByZXByb2R8c3RyZWFtKVxcLik/bWVldFxcLmdvb2dsZVxcLmNvbSR8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKGNyb3dkc291cmNlfGRhdGFjb21wdXRlKVxcLmdvb2dsZVxcLmNvbSR8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikqKHlvdXR1YmV8eW91dHViZWtpZHN8eW91dHViZWVkdWNhdGlvbilcXC5jb20kfF5odHRwczovLyhbQS1aYS16MC05LV17MSw2M31cXC4pK2RlbW9zXFwuY29ycFxcLmdvb2dsZVxcLmNvbSR8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikrc2FuZGJveFxcLmdvb2dsZVxcLmNvbSR8Xmh0dHBzOi8vKFtBLVphLXowLTktXXsxLDYzfVxcLikrc3NscHJveHlcXC5jb3JwXFwuZ29vZ2xlXFwuY29tJHxeaHR0cHM6Ly8oYm9va3N8cGxheS1ib29rcy0oYXV0b3B1c2h8aW50ZXJuYWx8cHJlcHJvZHxzdGFnaW5nKSgtc2FuZGJveHxcXC5jb3JwKSlcXC5nb29nbGV1c2VyY29udGVudFxcLmNvbSR8Xmh0dHBzOi8vKGRyYWZ0fHd3d3wod3d3XFwuKT9kZXZcXC5zYW5kYm94fCh3d3dcXC4pP2F1dG9wdXNoXFwuc2FuZGJveHwod3d3XFwuKT9zdGFnaW5nXFwuc2FuZGJveHwod3d3XFwuKT9yZXN0b3JlXFwuc2FuZGJveClcXC5ibG9nZ2VyXFwuY29tJHxeaHR0cHM6Ly9bMC05YS1mXXsxLDYzfVxcLnByb3h5XFwuZ29vZ2xlcHJvZFxcLmNvbSR8Xmh0dHBzOi8vbG9jYWxob3N0XFwuZ29vZ2xldXNlcmNvbnRlbnRcXC5jb20oOlxcZCspPyR8Xmh0dHBzPzovLygoKGRvY3N8bXxzaW5nfHNzfHNzc3x3d3cpXFwuKT9kcml2ZVxcLmdvb2dsZVxcLmNvbSR8KFtBLVphLXowLTktXXsxLDYzfVxcLikqY1xcLmdvb2dsZXJzXFwuY29tKDpbMC05XSspPyR8KFtBLVphLXowLTktXXsxLDYzfVxcLikqY29ycFxcLmdvb2dsZVxcLmNvbSg6WzAtOV0rKT8kfChbQS1aYS16MC05LV17MSw2M31cXC4pKmdvb2dsZXBsZXhcXC5jb20oOlswLTldKyk/JHwoW0EtWmEtejAtOS1dezEsNjN9XFwuKSpwcm94eVxcLmdvb2dsZXJzXFwuY29tKDpbMC05XSspPyR8KHd3d1xcLnxlbmNyeXB0ZWRcXC4pZ29vZ2xlXFwuKGNhdHxjb20oXFwuKGFbZmdpcnVdfGJbZGhub3J6XXxjW291eV18ZG98ZVtjZ3RdfGZqfGdbaGl0XXxoa3xqbXxraHxrd3xsW2JjeV18bVttdHh5XXxuW2FmZ2lwXXxvbXxwW2FlZ2hrcnldfHFhfHNbYWJnbHZdfHRbam5yd118dWF8dXl8dmN8dm4pKT98YVtjZGVsbXN0el18Y1thY2RmZ2hpbG1udnpdfGJbYWVmZ2lqc3R5XXxlZXxlc3xkW2Vqa216XXxnW2FlZmdsbXByeV18ZltpbXJdfGlbZW1vcXJzdF18aFtucnR1XXxrW2dpel18amV8am98bVtkZWdrbG5zdXZ3XXxsW2Fpa3R1dl18bltlbG9ydV18cFtsbnN0XXxzW2NlaGlrbW5vcnRdfHJbb3N1d118dXN8dFtkZ2tsbW5vdF18d3N8dmd8dnV8Y29cXC4oYW98Ynd8Y2t8Y3J8aVtkbG5dfGpwfGtlfGtyfGxzfG1hfG16fG56fHRofHR6fHVbZ2t6XXx2ZXx2aXx6W2Ftd10pKS8/JHxbQS1aYS16MC05LV0rXFwucHJvZFxcLmdvb2dsZVxcLmNvbSg6WzAtOV0rKT8kfGRvY3NcXC5nb29nbGVcXC5jb20kKSIpLAphSFU9UmVnRXhwKCJeKGh0dHBzOi8vY3VycmVudHNcXC5nb29nbGVcXC5jb20pJCIpO3ZhciBkUD0hMTtnLndaPWNsYXNze2NvbnN0cnVjdG9yKG4sVz0hMSl7dGhpc1tJWzE3XV09bjt0aGlzW0lbOV1dPVc7dGhpc1tJWzM5XV09dGhpc1tJWzI4XV09dGhpc1tJWzI2XV09SVsyMV07dGhpc1tJWzFdXT17fTt0aGlzW0lbMjldXT1JWzIxXX1zZXQobixXKXt0aGlzW0lbMV1dW25dIT09VyYmKHRoaXNbSVsxXV1bbl09Vyx0aGlzW0lbMjldXT1JWzIxXSl9Z2V0KG4pe2VYKDE0LDcyMTMsdGhpcyk7cmV0dXJuIHRoaXNbSVsxXV1bbl18fG51bGx9V0QoKXt0aGlzW0lbMjldXXx8KHRoaXNbSVsyOV1dPUVjKDYsMjk5OCx0aGlzKSk7cmV0dXJuIHRoaXNbSVsyOV1dfWNsb25lKCl7dmFyIG49bmV3IGcud1oodGhpc1tJWzE3XV0sdGhpc1tJWzldXSk7bltJWzI2XV09dGhpc1tJWzI2XV07bltJWzI4XV09dGhpc1tJWzI4XV07bltJWzM5XV09dGhpc1tJWzM5XV07bltJWzFdXT1nLnMwKHRoaXNbSVsxXV0pO25bSVsyOV1dPXRoaXNbSVsyOV1dO3JldHVybiBufX07dmFyIEpaPXtGQUlSUExBWToiZmFpcnBsYXkiLFBMQVlSRUFEWToicGxheXJlYWR5IixXSURFVklORToid2lkZXZpbmUiLENMRUFSS0VZOm51bGwsRkxBU0hBQ0NFU1M6bnVsbCxVTktOT1dOOm51bGwsV0lERVZJTkVfQ0xBU1NJQzpudWxsfTt2YXIgd1A9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYj0hMSl7dGhpcy5uYW1lPW47dGhpcy5pZD1XO3RoaXMuaXNEZWZhdWx0PUQ7dGhpcy5pc0F1dG9EdWJiZWQ9Yn1nZXROYW1lKCl7cmV0dXJuIHRoaXMubmFtZX1nZXRJZCgpe3JldHVybiB0aGlzLmlkfWdldElzRGVmYXVsdCgpe3JldHVybiB0aGlzLmlzRGVmYXVsdH1nZXRJc0F1dG9EdWJiZWQoKXtyZXR1cm4gdGhpcy5pc0F1dG9EdWJiZWR9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5uYW1lfX07d1AucHJvdG90eXBlLmdldE5hbWU9d1AucHJvdG90eXBlLmdldE5hbWU7d1AucHJvdG90eXBlLmdldElkPXdQLnByb3RvdHlwZS5nZXRJZDt3UC5wcm90b3R5cGUuZ2V0SXNEZWZhdWx0PXdQLnByb3RvdHlwZS5nZXRJc0RlZmF1bHQ7d1AucHJvdG90eXBlLmdldElzQXV0b0R1YmJlZD13UC5wcm90b3R5cGUuZ2V0SXNBdXRvRHViYmVkO2cuUXc9Y2xhc3N7Y29uc3RydWN0b3Iobj17fSl7dGhpcy5sYW5ndWFnZUNvZGU9bi5sYW5ndWFnZUNvZGV8fCIiO3RoaXMubGFuZ3VhZ2VOYW1lPW4ubGFuZ3VhZ2VOYW1lfHxudWxsO3RoaXMua2luZD1uLmtpbmR8fCIiO3RoaXMubmFtZT1uLm5hbWU9PT12b2lkIDA/bnVsbDpuLm5hbWU7dGhpcy5kaXNwbGF5TmFtZT1uLmRpc3BsYXlOYW1lfHxudWxsO3RoaXMuaWQ9bi5pZHx8bnVsbDt0aGlzLk49bi5pc19zZXJ2YWJsZXx8ITE7dGhpcy5pc1RyYW5zbGF0ZWFibGU9bi5pc190cmFuc2xhdGVhYmxlfHwhMTt0aGlzLnVybD1uLnVybHx8bnVsbDt0aGlzLnZzc0lkPW4udnNzX2lkfHwiIjt0aGlzLmlzRGVmYXVsdD1uLmlzX2RlZmF1bHR8fCExO3RoaXMudHJhbnNsYXRpb25MYW5ndWFnZT1uLnRyYW5zbGF0aW9uTGFuZ3VhZ2V8fG51bGw7dGhpcy54dGFncz1uLnh0YWdzfHwiIjt0aGlzLmNhcHRpb25JZD1uLmNhcHRpb25JZHx8IiJ9Z2V0SWQoKXtyZXR1cm4gdGhpcy5pZH1nZXROYW1lKCl7cmV0dXJuIHRoaXMubmFtZX1pc1NlcnZhYmxlKCl7cmV0dXJuIHRoaXMuTn1XRCgpe3JldHVybiB0aGlzLnVybH1nZXRYdGFncygpe3JldHVybiB0aGlzLnh0YWdzfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMubGFuZ3VhZ2VDb2RlKwoiOiAiK2cuY24odGhpcykrIiAtICIrdGhpcy52c3NJZCsiIC0gIisodGhpcy5jYXB0aW9uSWR8fCIiKX1lcXVhbHMobil7cmV0dXJuIG4/dGhpcy50b1N0cmluZygpPT09bi50b1N0cmluZygpOiExfU9WKCl7cmV0dXJuISghdGhpcy5sYW5ndWFnZUNvZGV8fHRoaXMudHJhbnNsYXRpb25MYW5ndWFnZSYmIXRoaXMudHJhbnNsYXRpb25MYW5ndWFnZS5sYW5ndWFnZUNvZGUpfX07dmFyIFdBPWNsYXNze2NvbnN0cnVjdG9yKG4sVyl7dGhpcy5pZD1uO3RoaXMua1o9Vzt0aGlzLmNhcHRpb25UcmFja3M9W107dGhpcy5XPXRoaXMuWD1udWxsO3RoaXMueHRhZ3M9IiI7dGhpcy5WPXRoaXMuaj0hMTt0aGlzLk49bnVsbDt0aGlzLko9IlVOS05PV04iO3RoaXMuY2FwdGlvbnNJbml0aWFsU3RhdGU9IkNBUFRJT05TX0lOSVRJQUxfU1RBVEVfVU5LTk9XTiI7bj10aGlzLmtaLmlkLnNwbGl0KCIuIik7bi5sZW5ndGg+MSYmKHRoaXMuaj1uWzFdPT09IjIiLHRoaXMuVj1uWzFdPT09IjQiKX1nZXRMYW5ndWFnZUluZm8oKXtyZXR1cm4gdGhpcy5rWn1nZXRYdGFncygpe2lmKCF0aGlzLnh0YWdzKXtsZXQgbj10aGlzLmlkLnNwbGl0KCI7Iik7bi5sZW5ndGg+MSYmKHRoaXMueHRhZ3M9blsxXSl9cmV0dXJuIHRoaXMueHRhZ3N9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5rWi5uYW1lfWlzQXV0b0R1YmJlZCgpe3JldHVybiB0aGlzLmtaLmdldElzQXV0b0R1YmJlZCgpfX07CldBLnByb3RvdHlwZS5nZXRMYW5ndWFnZUluZm89V0EucHJvdG90eXBlLmdldExhbmd1YWdlSW5mbztXQS5wcm90b3R5cGUuaXNBdXRvRHViYmVkPVdBLnByb3RvdHlwZS5pc0F1dG9EdWJiZWQ7dmFyIGIzPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxELGIsdj0wKXt0aGlzLko9bjt0aGlzLk49Vzt0aGlzLlc9RDt0aGlzLnJlYXNvbj1iO3RoaXMuTnM9dn1lcXVhbHMobil7cmV0dXJuIHRoaXMuSj09PW4uSiYmdGhpcy5OPT09bi5OJiZ0aGlzLlc9PT1uLlcmJnRoaXMucmVhc29uPT09bi5yZWFzb24mJighaFR8fHRoaXMuTnM9PT1uLk5zKX1pc0xvY2tlZCgpe3JldHVybiB0aGlzLlcmJiEhdGhpcy5KJiZ0aGlzLko9PT10aGlzLk59Y29tcG9zZShuKXtpZihuLlcmJnhKKG4pKXJldHVybiBZWjtpZihuLld8fHhKKHRoaXMpKXJldHVybiBuO2lmKHRoaXMuV3x8eEoobikpcmV0dXJuIHRoaXM7dmFyIFc9dGhpcy5KJiZuLko/TWF0aC5tYXgodGhpcy5KLG4uSik6dGhpcy5KfHxuLkosRD10aGlzLk4mJm4uTj9NYXRoLm1pbih0aGlzLk4sbi5OKTp0aGlzLk58fG4uTjtXPU1hdGgubWluKFcsRCk7dmFyIGI9MDtoVCYmKGI9dGhpcy5OcyE9PTAmJm4uTnMhPT0wP01hdGgubWluKHRoaXMuTnMsCm4uTnMpOnRoaXMuTnM9PT0wP24uTnM6dGhpcy5Ocyk7cmV0dXJuIGhUJiZXPT09dGhpcy5KJiZEPT09dGhpcy5OJiZiPT09dGhpcy5Oc3x8IWhUJiZXPT09dGhpcy5KJiZEPT09dGhpcy5OP3RoaXM6aFQ/bmV3IGIzKFcsRCwhMSxEPT09dGhpcy5OJiZiPT09dGhpcy5Ocz90aGlzLnJlYXNvbjpuLnJlYXNvbixiKTpuZXcgYjMoVyxELCExLEQ9PT10aGlzLk4/dGhpcy5yZWFzb246bi5yZWFzb24pfVgobil7cmV0dXJuIW4udmlkZW98fGhUJiZ0aGlzLk5zIT09MCYmdGhpcy5OczxuLk5zPyExOmdGKHRoaXMsbi52aWRlby5xdWFsaXR5KX19LG5oVT12QSgiYXV0byIsImhkMTA4MCIsITEsImwiKSxUOD12QSgiYXV0byIsImxhcmdlIiwhMSwibCIpLFlaPXZBKCJhdXRvIiwiYXV0byIsITEsInAiKSxoVD0hMTt2YXIgcGc9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYil7dGhpcy52aWRlb0luZm9zPW47dGhpcy5KPVc7dGhpcy5hdWRpb1RyYWNrcz1bXTt0aGlzLlc9Ynx8W107aWYodGhpcy5KKXtuPW5ldyBTZXQ7RD8uKHthaW5mb2xlbjp0aGlzLkoubGVuZ3RofSk7Zm9yKGxldCB2IG9mIHRoaXMuSil7aWYoIXYua1p8fG4uaGFzKHYua1ouaWQpKXtEPy4oe2F0a2VycjohIXYua1osaXRhZzp2Lml0YWcseHRhZzp2LkosbGFuZzp2LmtaPy5uYW1lfHwiIixsYW5naWQ6di5rWj8uaWR8fCIifSk7Y29udGludWV9Vz1uZXcgV0Eodi5pZCx2LmtaKTtuLmFkZCh2LmtaLmlkKTt0aGlzLmF1ZGlvVHJhY2tzLnB1c2goVyl9RD8uKHthdGtsZW46dGhpcy5hdWRpb1RyYWNrcy5sZW5ndGh9KX19Y1kobil7bj1ufHxZWjt2YXIgVz1nLkVNKHRoaXMudmlkZW9JbmZvcyx2PT5uLlgodikpLEQ9W10sYj17fTsKZm9yKGxldCB2PTA7djxXLmxlbmd0aDt2Kyspe2xldCBrPVdbdl0udmlkZW87YltrLnF1YWxpdHldfHwoRC5wdXNoKGspLGJbay5xdWFsaXR5XT0hMCl9cmV0dXJuIER9TnEobil7bj1ufHxZWjtyZXR1cm4gZy5FTSh0aGlzLnZpZGVvSW5mb3MsVz0+bi5YKFcpKX1nZXRBdmFpbGFibGVBdWRpb1RyYWNrcygpe3JldHVybiB0aGlzLmF1ZGlvVHJhY2tzfU4oKXtyZXR1cm4hIXRoaXMuSn19O3ZhciBBSFM9bmV3IFNldChbIjM1NiIsIjcyMSJdKSxXVnI9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKTt0aGlzLko9bnVsbDt0aGlzLk49bmV3IE1hcH1tQSgpe3N1cGVyLm1BKCl9fTt2YXIgUjQ9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2LGssaCx4LEwsZSl7dGhpcy5qJD1uO3RoaXMuc3RhcnRUaW1lPVc7dGhpcy5kdXJhdGlvbj1EO3RoaXMuaW5nZXN0aW9uVGltZT1iO3RoaXMuc291cmNlVVJMPXY7dGhpcy5mZj1MO3RoaXMuUU89ZTt0aGlzLmVuZFRpbWU9VytEO3RoaXMuTj1ofHwwO3RoaXMucmFuZ2U9a3x8bnVsbDt0aGlzLnBlbmRpbmc9eHx8ITE7dGhpcy5mZj1MfHxudWxsfX07Zy5qYz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuc2VnbWVudHM9W107dGhpcy5KPW51bGw7dGhpcy5ZPSEwO3RoaXMuSz0iIn1qKG4pe3RoaXMuc2VnbWVudHMucHVzaChuKX1NSShuKXtyZXR1cm4hIXRoaXMuVyhuKX1nZXREdXJhdGlvbihuKXtyZXR1cm4obj10aGlzLlcobikpP24uZHVyYXRpb246MH1EKG4pe3JldHVybiB0aGlzLmdldER1cmF0aW9uKG4pfVVjKCl7cmV0dXJuIDB9Wk8oKXtyZXR1cm4gdGhpcy5zZWdtZW50cy5sZW5ndGg/dGhpcy5zZWdtZW50c1swXS5qJDotMX1oQyhuKXtyZXR1cm4obj10aGlzLlcobikpP24uaW5nZXN0aW9uVGltZTpOYU59eCQoKXtyZXR1cm4gdGhpcy5zZWdtZW50cy5sZW5ndGg/dGhpcy5zZWdtZW50c1t0aGlzLnNlZ21lbnRzLmxlbmd0aC0xXS5qJDotMX1xZShuKXtyZXR1cm4gdGhpcy54JCgpPT09biYmIXRoaXMuWSYmbj49MH1iUSgpe3ZhciBuPXRoaXMuc2VnbWVudHNbdGhpcy5zZWdtZW50cy5sZW5ndGgtMV07cmV0dXJuIG4/bi5lbmRUaW1lOgpOYU59TGYoKXtyZXR1cm4gdGhpcy5zZWdtZW50c1swXS5zdGFydFRpbWV9SDcoKXtyZXR1cm4gdGhpcy5zZWdtZW50cy5sZW5ndGh9Tigpe3JldHVybiAwfVIzKG4pe3JldHVybihuPXRoaXMuWChuKSk/bi5qJDotMX1WKG4pe3JldHVybihuPXRoaXMuVyhuKSk/bi5zb3VyY2VVUkw6IiJ9Z2V0U3RhcnRUaW1lKG4pe3JldHVybihuPXRoaXMuVyhuKSk/bi5zdGFydFRpbWU6MH1qRShuKXtyZXR1cm4gdGhpcy5nZXRTdGFydFRpbWUobikrdGhpcy5nZXREdXJhdGlvbihuKX1pc0xvYWRlZCgpe3JldHVybiB0aGlzLnNlZ21lbnRzLmxlbmd0aD4wfVcobil7aWYodGhpcy5KJiZ0aGlzLkouaiQ9PT1uKXJldHVybiB0aGlzLko7bj1nLlc0KHRoaXMuc2VnbWVudHMsbmV3IFI0KG4sMCwwLDAsIiIpLChXLEQpPT5XLmokLUQuaiQpOwpyZXR1cm4gdGhpcy5KPW4+PTA/dGhpcy5zZWdtZW50c1tuXTpudWxsfVgobil7aWYodGhpcy5KJiZ0aGlzLkouc3RhcnRUaW1lPD1uJiZuPHRoaXMuSi5zdGFydFRpbWUrdGhpcy5KLmR1cmF0aW9uKXJldHVybiB0aGlzLko7bj1nLlc0KHRoaXMuc2VnbWVudHMse3N0YXJ0VGltZTpufSwoVyxEKT0+Vy5zdGFydFRpbWUtRC5zdGFydFRpbWUpOwpyZXR1cm4gdGhpcy5KPW4+PTA/dGhpcy5zZWdtZW50c1tuXTp0aGlzLnNlZ21lbnRzW01hdGgubWF4KDAsLW4tMildfWFwcGVuZChuKXtpZihuLmxlbmd0aClpZihuPWcuUk0obiksdGhpcy5zZWdtZW50cy5sZW5ndGgpe3ZhciBXPXRoaXMuc2VnbWVudHMubGVuZ3RoP2cuVU0odGhpcy5zZWdtZW50cykuZW5kVGltZTowLEQ9blswXS5qJC10aGlzLngkKCk7RD4xJiZnLkNiKHRoaXMuc2VnbWVudHMpO0Q9RD4wPzA6LUQrMTtmb3IobGV0IGI9RDtiPG4ubGVuZ3RoO2IrKylEPW5bYl0sRC5zdGFydFRpbWU9VyxELmVuZFRpbWU9RC5zdGFydFRpbWUrRC5kdXJhdGlvbixXKz1uW2JdLmR1cmF0aW9uLHRoaXMuc2VnbWVudHMucHVzaChuW2JdKX1lbHNlIHRoaXMuc2VnbWVudHM9bn1YZCgpe3JldHVybiAwfXR3KG4sVyl7dGhpcy5ZPW47dGhpcy5LPVd9fTtnLmpjLnByb3RvdHlwZS5VNz1XWigzKTt2YXIgRF89Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2PSExKXt0aGlzLmRhdGE9bjt0aGlzLm9mZnNldD1XO3RoaXMuc2l6ZT1EO3RoaXMudHlwZT1iO3RoaXMuTj0odGhpcy5KPXYpPzA6ODt0aGlzLmRhdGFPZmZzZXQ9dGhpcy5vZmZzZXQrdGhpcy5OfXNraXAobil7dGhpcy5OKz1ufX07dmFyIE9LdD1jbGFzc3tjb25zdHJ1Y3RvcihuKXt0aGlzLm9mZnNldD0wO3RoaXMuZGF0YT1uZXcgRGF0YVZpZXcobmV3IEFycmF5QnVmZmVyKG4pKX19O3ZhciBEVmk7Zy5sMz1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCxiLHYsayxoKXt0aGlzLnN0YXJ0U2Vjcz1uO3RoaXMuQ2Y9Vzt0aGlzLmNvbnRleHQ9RDt0aGlzLmlkZW50aWZpZXI9Yjt0aGlzLmV2ZW50PXY7dGhpcy5OPWs7dGhpcy50aWxlQ29udGV4dD1ofX07RFZpPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxEKXt0aGlzLlBCPW47dGhpcy5vcHBvcnR1bml0eUlkPVc7dGhpcy5zZXJpYWxpemVkUHJlZmV0Y2hDb250ZXh0PUR9fTt2YXIgYk5VPXtwcmVkaWN0U3RhcnQ6InByZWRpY3RTdGFydCIsc3RhcnQ6InN0YXJ0IixbImNvbnRpbnVlIl06ImNvbnRpbnVlIixzdG9wOiJzdG9wIixwcmVmZXRjaDoicHJlZmV0Y2gifSxtNWo9e0VWRU5UX1BSRURJQ1RfU1RBUlQ6InByZWRpY3RTdGFydCIsRVZFTlRfU1RBUlQ6InN0YXJ0IixFVkVOVF9DT05USU5VRToiY29udGludWUiLEVWRU5UX1NUT1A6InN0b3AiLEVWRU5UX1BSRUZFVENIOiJwcmVmZXRjaCJ9O3ZhciBYNT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuZGF0YT1uO3RoaXMudXJpPVd8fCJodHRwOi8veW91dHViZS5jb20vc3RyZWFtaW5nL21ldGFkYXRhL3NlZ21lbnQvMTAyMDE1Ijt0aGlzLnNlZ21lbnROdW1iZXI9el8odGhpcywiU2VxdWVuY2UtTnVtYmVyIik7dGhpcy5qPXpfKHRoaXMsIlNlZ21lbnQtQ291bnQiKTt0aGlzLks9dGhpcy5kYXRhWyJTZWdtZW50LUR1cmF0aW9ucy1NcyJdfHwiIjt0aGlzLmluZ2VzdGlvblRpbWU9el8odGhpcywiSW5nZXN0aW9uLVdhbGx0aW1lLVVzIikvMUU2O3RoaXMuVz0oel8odGhpcywiRmlyc3QtRnJhbWUtVGltZS1VcyIpK3pfKHRoaXMsIkZpcnN0LUZyYW1lLVVuY2VydGFpbnR5LVVzIikpLzFFNjt0aGlzLnJiPXpfKHRoaXMsIlRhcmdldC1EdXJhdGlvbi1VcyIpLzFFNjt0aGlzLlY9dGhpcy5kYXRhWyJTdHJlYW0tRmluaXNoZWQiXT09PSJUIjt0aGlzLmlzU3RyZWFtaW5nPXRoaXMuZGF0YS5TdHJlYW1hYmxlPT09IlQiO3RoaXMuY3J5cHRvUGVyaW9kSW5kZXg9CnpfKHRoaXMsIkNyeXB0by1QZXJpb2QtSW5kZXgiKTt0aGlzLlg9el8odGhpcywiQ3J5cHRvLVBlcmlvZC1TZWNvbmRzIik7dGhpcy5OPSJDdXJyZW50LUFic29sdXRlLUxvdWRuZXNzLUxrZnMiaW4gdGhpcy5kYXRhP051bWJlcih0aGlzLmRhdGFbIkN1cnJlbnQtQWJzb2x1dGUtTG91ZG5lc3MtTGtmcyJdKXx8MDpudWxsfUooKXtyZXR1cm4gdGhpcy5kYXRhWyJTdGl0Y2hlZC1WaWRlby1DcG4iXT90aGlzLmRhdGFbIlN0aXRjaGVkLVZpZGVvLUNwbiJdLnNwbGl0KCIsIikuc2xpY2UoMCwtMSk6W119ZksoKXtyZXR1cm4hISh0aGlzLmRhdGFbIlN0aXRjaGVkLVZpZGVvLUlkIl18fHRoaXMuZGF0YVsiU3RpdGNoZWQtVmlkZW8tQ3BuIl18fHRoaXMuZGF0YVsiU3RpdGNoZWQtVmlkZW8tRHVyYXRpb24tVXMiXXx8dGhpcy5kYXRhWyJTdGl0Y2hlZC1WaWRlby1TdGFydC1GcmFtZS1JbmRleCJdfHx0aGlzLmRhdGFbIlN0aXRjaGVkLVZpZGVvLUFic29sdXRlLUxvdWRuZXNzLUxrZnMiXXx8CnRoaXMuZGF0YVsiU2VyaWFsaXplZC1TdGF0ZSJdfHx0aGlzLmRhdGFbIklzLUFkLUJyZWFrLUZpbmlzaGVkIl0pfX07dmFyIFJlaD1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuTj1uO3RoaXMuZHVyYXRpb249V319O3ZhciAkOHg9e1NURVJFT19MQVlPVVRfVU5LTk9XTjowLFNURVJFT19MQVlPVVRfTEVGVF9SSUdIVDoxLFNURVJFT19MQVlPVVRfVE9QX0JPVFRPTToyfTt2YXIgaFk9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2KXt0aGlzLko9djt0aGlzLk49bnx8MDt0aGlzLnBpdGNoPVd8fDA7dGhpcy55YXc9RHx8MDt0aGlzLnJvbGw9Ynx8MDt2LmdldFVpbnQzMig0KX19O3ZhciB0WT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuTj1uO3RoaXMucG9zPTA7dGhpcy5zdGFydD1XfHwwfU9KKCl7dmFyIG49dGhpcy5wb3M7dGhpcy5wb3M9MDt2YXIgVz0hMTt0cnl7c1kodGhpcyw0NDA3ODY4NTEpJiYodGhpcy5wb3M9MCxzWSh0aGlzLDQwODEyNTU0MykmJihXPSEwKSl9Y2F0Y2goRCl7aWYoRCBpbnN0YW5jZW9mIFJhbmdlRXJyb3IpdGhpcy5wb3M9MCxXPSExLGcuR3EoRCk7ZWxzZSB0aHJvdyBEO310aGlzLnBvcz1uO3JldHVybiBXfX07dmFyIENzPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuQU89bjt0aGlzLk49e307dGhpcy51cmw9IiJ9c2V0KG4sVyl7dGhpcy5BTy5nZXQobik7dGhpcy5OW25dPVc7dGhpcy51cmw9IiJ9Z2V0KG4pe3JldHVybiB0aGlzLk5bbl18fHRoaXMuQU8uZ2V0KG4pfVdEKCl7dGhpcy51cmx8fCh0aGlzLnVybD1pS1UodGhpcykpO3JldHVybiB0aGlzLnVybH19O3ZhciB1VGk9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLko9dGhpcy5YPXRoaXMuVz10aGlzLk49dGhpcy50aW1lZE91dD10aGlzLnN0YXJ0ZWQ9dGhpcy5WPXRoaXMuaj0wfX07dmFyIHZUPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMuTz10aGlzLkQ9dGhpcy5WPXRoaXMuSj0wO3RoaXMuaj10aGlzLks9ITE7dGhpcy5OPW47dGhpcy5XPW4uY2xvbmUoKX1wUyhuLFcpe3JldHVybiBuLllaP3RoaXMuaj90aGlzLks9ITA6dGhpcy5LPWpQKHRoaXMsbixXKTpqUCh0aGlzLG4sVyl9WShuLFcsRD0wKXtEPjE/bj1uLk1jOihXPVVZKFcsRjUodGhpcyx0aGlzLnBTKG4sVyksbikpLG49TWF0aC5tYXgodGhpcy5WLFcudGltZWRPdXQpK24uVFoqKHRoaXMuSi10aGlzLlYpKy4yNSp0aGlzLkQsbj1uPjM/MUUzKjEuNioqKG4tMyk6MCk7cmV0dXJuIG49PT0wPyEwOnRoaXMuTytuPCgwLGcuUikoKX1jSihuLFcpe3RoaXMuTi5zZXQobixXKTt0aGlzLlcuc2V0KG4sVyk7dGhpcy5YJiZ0aGlzLlguc2V0KG4sVyl9V04oKXtyZXR1cm4gdGhpcy5XLmdldCgiY3BuIil8fCIifVo1KG4sVyl7bi5BTz09PXRoaXMuTiYmKHRoaXMuTj1uWChuLFcpKTtuLkFPPT09dGhpcy5YJiYodGhpcy5YPQpuWChuLFcpKX10dygpe3RoaXMuaj0hMH1yMCgpe3JldHVybiB0aGlzLk4hPT10aGlzLlgmJiF0aGlzLkt9fTt2YXIgQ2o9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYil7dGhpcy5pbml0UmFuZ2U9RDt0aGlzLmluZGV4UmFuZ2U9Yjt0aGlzLko9bnVsbDt0aGlzLmNKPSExO3RoaXMuRkY9MDt0aGlzLlY9dGhpcy5TVT10aGlzLk89bnVsbDt0aGlzLmluZm89Vzt0aGlzLlhiPW5ldyB2VChuKX1OKCl7cmV0dXJuISF0aGlzLkomJnRoaXMuaW5kZXguaXNMb2FkZWQoKX1TJCgpe3JldHVybiExfUdDKG4pe3JldHVybltuXX1WUShuKXtyZXR1cm5bbl19fTt2YXIgYUI9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLnN0YXJ0PW47dGhpcy5lbmQ9Vzt0aGlzLmxlbmd0aD1XLW4rMX10b1N0cmluZygpe3JldHVybiB0aGlzLnN0YXJ0KyItIisodGhpcy5lbmQ9PW51bGw/IiI6dGhpcy5lbmQpfU4oKXtyZXR1cm4gdGhpcy5lbmQ9PW51bGw/e3N0YXJ0OlN0cmluZyh0aGlzLnN0YXJ0KX06e3N0YXJ0OlN0cmluZyh0aGlzLnN0YXJ0KSxlbmQ6U3RyaW5nKHRoaXMuZW5kKX19fTt2YXIgcUk9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYj0iIix2LGssaCx4LEwsZSxHLHI9IiIsTixILEEpe3RoaXMudHlwZT1uO3RoaXMuUEo9Vzt0aGlzLnJhbmdlPUQ7dGhpcy5zb3VyY2U9Yjt0aGlzLnZEPUc7dGhpcy5jbGlwSWQ9cjt0aGlzLkQ9Tjt0aGlzLmJkPUg7dGhpcy5yZXF1ZXN0VG9rZW49QTt0aGlzLk89W107dGhpcy5ZPSIiO3RoaXMuaiQ9LTE7dGhpcy50dz0wO3RoaXMuWT1iO3RoaXMuaiQ9dj49MD92Oi0xO3RoaXMuc2VnbWVudFN0YXJ0VGltZT1rfHwwO3RoaXMuVz1ofHwwO3RoaXMuTj14fHwwO3RoaXMuSj1MPj0wP0w6dGhpcy5yYW5nZT90aGlzLnJhbmdlLmxlbmd0aDpOYU47dGhpcy5yYW5nZT8obj10aGlzLk4rdGhpcy5KPT09dGhpcy5yYW5nZS5sZW5ndGgsZT10aGlzLnNvdXJjZT09PSJ3YXNtIj9lPz9uOm4pOmU9ZT09PXZvaWQgMD8hIXRoaXMuSjplO3RoaXMuYVo9ZTt0aGlzLnJhbmdlPyh0aGlzLlg9dGhpcy5zZWdtZW50U3RhcnRUaW1lK3RoaXMuVyoKdGhpcy5OL3RoaXMucmFuZ2UubGVuZ3RoLHRoaXMuSz10aGlzLlcqdGhpcy5KL3RoaXMucmFuZ2UubGVuZ3RoLHRoaXMuaj10aGlzLlgrdGhpcy5LKTp2Xyh0aGlzKX1WKCl7cmV0dXJuIHRoaXMuYVomJnRoaXMuUEouaW5kZXgucWUodGhpcy5qJCl9a2Yobil7cmV0dXJuIG4+PXRoaXMuWCYmbjw9dGhpcy5qfWlzRW5jcnlwdGVkKCl7cmV0dXJuIHRoaXMuUEouaW5mby5pc0VuY3J5cHRlZCgpfWVxdWFscyhuKXtyZXR1cm4hKCFufHxuLlBKIT09dGhpcy5QSnx8bi50eXBlIT09dGhpcy50eXBlfHwodGhpcy5yYW5nZSYmbi5yYW5nZT9uLnJhbmdlLnN0YXJ0IT09dGhpcy5yYW5nZS5zdGFydHx8bi5yYW5nZS5lbmQhPT10aGlzLnJhbmdlLmVuZDpuLnJhbmdlIT09dGhpcy5yYW5nZSl8fG4uaiQhPT10aGlzLmokfHxuLk4hPT10aGlzLk58fG4uSiE9PXRoaXMuSil9Y0ooKXtyZXR1cm4gdGhpcy50eXBlPT09NH1mWSgpe3JldHVybiEhdGhpcy5QSi5pbmZvLnZpZGVvfVRDKCl7cmV0dXJuIHRoaXMuaiR9Z2EoKXt2YXIgbj0KWHgodGhpcyksVz0iIjtnLmFfKG4sKEQsYik9PntXKz1gJHtifV8ke0R9X2B9KTsKcmV0dXJuIFcuc2xpY2UoMCwtMSl9Y2xvbmUoKXt2YXIgbj1uZXcgcUkodGhpcy50eXBlLHRoaXMuUEosdGhpcy5yYW5nZSx0aGlzLnNvdXJjZSx0aGlzLmokLHRoaXMuc2VnbWVudFN0YXJ0VGltZSx0aGlzLlcsdGhpcy5OLHRoaXMuSix0aGlzLmFaLHRoaXMudkQsdGhpcy5jbGlwSWQsdGhpcy5ELHRoaXMuYmQsdGhpcy5yZXF1ZXN0VG9rZW4pO24uWT10aGlzLlk7dGhpcy5PLmxlbmd0aD4wJiYobi5PPVsuLi50aGlzLk9dKTtuLlg9dGhpcy5YO24uSz10aGlzLks7bi5qPXRoaXMuajtuLnR3PXRoaXMudHc7cmV0dXJuIG59fTt2YXIgd2s9Y2xhc3N7Y29uc3RydWN0b3IobixXKXt0aGlzLkF3PW47dGhpcy5YPXRoaXMuTj1udWxsO3RoaXMuaj10aGlzLlpBPU5hTjt0aGlzLnBTPXRoaXMucmVxdWVzdElkPW51bGw7dGhpcy5YYj1uWzBdLlBKLlhiO3RoaXMuSj1XfHwiIjtpZih0aGlzLkF3WzBdLnJhbmdlJiZ0aGlzLkF3WzBdLko+MCl7YTp7Zm9yKFc9MTtXPG4ubGVuZ3RoO1crKylpZighYlQobltXLTFdLG5bV10pKXtXPSExO2JyZWFrIGF9Vz0hMH1pZihXKXRoaXMucmFuZ2U9ZDV3KG4pLHRoaXMuVz10aGlzLnJhbmdlLmxlbmd0aDtlbHNle3RoaXMucmFuZ2U9dGhpcy5Bd1t0aGlzLkF3Lmxlbmd0aC0xXS5yYW5nZTtXPTA7Zm9yKGxldCBEIG9mIG4pVys9RC5yYW5nZS5sZW5ndGg7dGhpcy5XPVd9fX1ZbCgpe3JldHVybiB0aGlzLk4/dGhpcy5OLldEKCk6IiJ9aXNEZWNvcmF0ZWQoKXtyZXR1cm4hISh0aGlzLk58fHRoaXMuWCYmdGhpcy5YLk15KX1Rbigpe3JldHVybiBoSih0aGlzLkF3WzBdKX1rZihuKXtmb3IobGV0IFcgb2YgdGhpcy5BdylpZihXLnR5cGU9PT0KMyYmVy5rZihuKSlyZXR1cm4hMDtyZXR1cm4hMX1aNShuLFcpe3RoaXMuWGIuWjUobixXKTtpZih0aGlzLk4pe3RoaXMuTj1uWChuLFcpO2ZvcihsZXQgRCBvZlsiYWNwbnMiLCJjcG4iLCJkYWlzdGF0ZSIsInNraXBzcSJdKXRoaXMuTlsic2V0Il0oRCxudWxsKX10aGlzLnJlcXVlc3RJZD1uLmdldCgicmVxX2lkIil9fTt2YXIgZHQ9Y2xhc3MgZXh0ZW5kcyBDantjb25zdHJ1Y3RvcihuLFcsRCxiLHYsaz0wKXtzdXBlcihuLFcsYik7dGhpcy52Sj1EO3RoaXMucmI9azt0aGlzLmluZGV4PXZ8fG5ldyBnLmpjfVcoKXtyZXR1cm4hMX1EKCl7cmV0dXJuITB9VEMoKXtyZXR1cm4hMX1TJCgpe3JldHVybiF0aGlzLnZKfVkoKXtyZXR1cm4gbmV3IHdrKFtuZXcgcUkoMSx0aGlzLHRoaXMuaW5pdFJhbmdlLCJnZXRNZXRhZGF0YVJlcXVlc3RJbmZvIildLHRoaXMudkopfWJkKCl7cmV0dXJuIG51bGx9ZSQobil7dGhpcy5YKG4pO3JldHVybiB0aGlzLkQoKSYmbi5KJiYhbi5hWj9uZXcgd2soW25ldyBxSShuLnR5cGUsbi5QSixuLnJhbmdlLCJsaXZlR2V0TmV4dFJlcXVlc3RJbmZvQnlTZWdtZW50IixuLmokLG4uc2VnbWVudFN0YXJ0VGltZSxuLlcsbi5OK24uSixOYU4sITApXSx0aGlzLmluZGV4LlYobi5qJCkpOnRoaXMuaihnayhuKSwhMSl9SyhuLFc9ITEpe249dGhpcy5pbmRleC5SMyhuKTtXJiYobj1NYXRoLm1pbih0aGlzLmluZGV4LngkKCksCm4rMSkpO3JldHVybiB0aGlzLmoobiwhMCl9RHQobil7RE8obil9WChuKXtyZXR1cm4gbi5KPT09MD8hMDp0aGlzLmluZGV4LngkKCk+bi5qJCYmdGhpcy5pbmRleC5aTygpPD1uLmokKzF9dXBkYXRlKG4sVyxEKXt0aGlzLmluZGV4LmFwcGVuZChuKTtQQSh0aGlzLmluZGV4LEQpO3RoaXMudHcoVywidXBkYXRlIil9Tigpe3JldHVybiB0aGlzLlMkKCk/ITA6c3VwZXIuTigpfWoobixXKXt2YXIgRD10aGlzLmluZGV4LlYobiksYj10aGlzLmluZGV4LmdldFN0YXJ0VGltZShuKSx2PXRoaXMuaW5kZXguZ2V0RHVyYXRpb24obiksaztXP3Y9az0wOms9dGhpcy5pbmZvLk5zPjA/dGhpcy5pbmZvLk5zKnY6MUUzO3JldHVybiBuZXcgd2soW25ldyBxSSgzLHRoaXMsdm9pZCAwLCJsaXZlQ3JlYXRlUmVxdWVzdEluZm9Gb3JTZWdtZW50IixuLGIsdiwwLGssIVcpXSxEKX1ISigpe3JldHVybiB0aGlzLlMkKCk/MDp0aGlzLmluaXRSYW5nZS5sZW5ndGh9bnUoKXtyZXR1cm4hMX10dyhuLFcpe3RoaXMuaW5kZXgudHcobiwKVyl9fTt2YXIgdmhiPWNsYXNze2NvbnN0cnVjdG9yKG4sVyxELGIsdil7dGhpcy5qJD1uO3RoaXMuc3RhcnRTZWNzPVc7dGhpcy5DZj1EO3RoaXMuTj1ifHxOYU47dGhpcy5KPXZ8fE5hTn19O3ZhciBCXz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuTj1bXTt0aGlzLko9bnVsbDt0aGlzLlY9MDt0aGlzLlc9W107dGhpcy5qPSExO3RoaXMuSz0iIjt0aGlzLlg9LTF9dXBkYXRlKG4pe3ZhciBXPXZvaWQgMDt0aGlzLkomJihXPXRoaXMuSik7e2xldCBBPW5ldyBCXzt2YXIgRD1BcnJheS5mcm9tKG4uZ2V0RWxlbWVudHNCeVRhZ05hbWUoIlMiKSk7aWYoRC5sZW5ndGgpe3ZhciBiPStsVChuLCJ0aW1lc2NhbGUiKXx8MSx2PSgrRFswXS5nZXRBdHRyaWJ1dGUoInQiKXx8MCkvYixrPStsVChuLCJzdGFydE51bWJlciIpfHwwO0EuWD12O3ZhciBoPVc/Vy5zdGFydFNlY3MrVy5DZjowLHg9RGF0ZS5wYXJzZShDeihsVChuLCJ5dDpzZWdtZW50SW5nZXN0VGltZSIpKSkvMUUzO0Euaj1uLnBhcmVudEVsZW1lbnQudGFnTmFtZT09PSJTZWdtZW50VGVtcGxhdGUiO0EuaiYmKEEuSz1sVChuLCJtZWRpYSIpKTtuPVc/ay1XLmokOjE7QS5WPW4+MD8wOi1uKzE7Zm9yKEggb2YgRCl7bj0rSC5nZXRBdHRyaWJ1dGUoImQiKS8KYjtEPSgrSC5nZXRBdHRyaWJ1dGUoInl0OnNpZCIpfHwwKS9iO2xldCB5PStILmdldEF0dHJpYnV0ZSgiciIpfHwwO2ZvcihsZXQgVD0wO1Q8PXk7VCsrKXtpZihXJiZrPD1XLmokKXtrKys7Y29udGludWV9dmFyIEw9bmV3IHZoYihrLGgsbix4K0Qsdik7QS5OLnB1c2goTCk7Yjp7dmFyIGU9SDt2YXIgRz1iLHI9TC5zdGFydFNlY3M7TD1lLmdldEF0dHJpYnV0ZSgieXQ6Y3VlcG9pbnRUaW1lT2Zmc2V0Iik7dmFyIE49ZS5nZXRBdHRyaWJ1dGUoInl0OmN1ZXBvaW50RHVyYXRpb24iKTtpZighTHx8IU4pe2U9bnVsbDticmVhayBifUw9TnVtYmVyKEwpO3I9LUwvRytyO0c9TnVtYmVyKE4pL0c7Tj1lLmdldEF0dHJpYnV0ZSgieXQ6Y3VlcG9pbnRDb250ZXh0Iil8fG51bGw7bGV0IHo9ZS5nZXRBdHRyaWJ1dGUoInl0OmN1ZXBvaW50SWRlbnRpZmllciIpfHwiIjtlPWUuZ2V0QXR0cmlidXRlKCJ5dDpjdWVwb2ludEV2ZW50Iil8fCIiO2U9bmV3IGcubDMocixHLE4seixiTlVbZV18fCJ1bmtub3duIiwKTCl9ZSYmQS5XLnB1c2goZSk7aysrO2grPW47dis9bjt4Kz1uK0R9fUEuTi5sZW5ndGgmJihBLko9Zy5VTShBLk4pKX12YXIgSD1BfXRoaXMuVj1ILlY7dGhpcy5KPUguSnx8dGhpcy5KO2cuUTIodGhpcy5OLEguTik7Zy5RMih0aGlzLlcsSC5XKTt0aGlzLmo9SC5qO3RoaXMuSz1ILks7dGhpcy5YPT09LTEmJih0aGlzLlg9SC5nZXRTdHJlYW1UaW1lT2Zmc2V0KCkpfWdldFN0cmVhbVRpbWVPZmZzZXQoKXtyZXR1cm4gdGhpcy5YPT09LTE/MDp0aGlzLlh9fTt2YXIga0xDPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5YPVtdO3RoaXMuTj1udWxsO3RoaXMuSj17fTt0aGlzLlc9e319fTt2YXIgZ1M9Y2xhc3MgZXh0ZW5kcyBnLmpje2NvbnN0cnVjdG9yKHtyYjpuPTAsT1Q6Vz0hMSx1YjpEPTAsSXQ6Yj0wLEhQOnY9SW5maW5pdHksdWs6az0wLFhnOmg9ITEsRTM6eD0hMX09e30pe3N1cGVyKCk7dGhpcy5Ebj10aGlzLnFxPS0xO3RoaXMuTzg9bjt0aGlzLnViPUQ7dGhpcy5PVD1XO3RoaXMuSXQ9Yjt0aGlzLkhQPXY7dGhpcy51az1rOygodGhpcy5YZz1oKXx8aXNGaW5pdGUodikmJnRoaXMuSFA+MCkmJlcmJlp1JiZ0aGlzLnR3KCExLCJwb3N0TGl2ZSIpO3RoaXMuRTM9eH1VYygpe3JldHVybiB0aGlzLk84fU1JKG4sVyl7bj1GeCh0aGlzLG4pO3JldHVybiBuPj0wJiYoV3x8IXRoaXMuc2VnbWVudHNbbl0ucGVuZGluZyl9Wk8oKXtyZXR1cm4gdGhpcy5PVD90aGlzLnNlZ21lbnRzLmxlbmd0aD90aGlzLlgodGhpcy5MZigpKS5qJDotMTpzdXBlci5aTygpfUxmKCl7aWYodGhpcy5YZylyZXR1cm4gMDtpZighdGhpcy5PVClyZXR1cm4gc3VwZXIuTGYoKTtpZighdGhpcy5zZWdtZW50cy5sZW5ndGgpcmV0dXJuIDA7CnZhciBuPU1hdGgubWF4KGcuVU0odGhpcy5zZWdtZW50cykuZW5kVGltZS10aGlzLnViLDApO3JldHVybiB0aGlzLkl0PjAmJnRoaXMuWChuKS5qJDx0aGlzLkl0P3RoaXMuVyh0aGlzLkl0KS5zdGFydFRpbWU6bn1iUSgpe2lmKHRoaXMuRTMmJnRoaXMuRG4mJnRoaXMuRG4+MClyZXR1cm4gdGhpcy5Ebi8xRTM7aWYoIXRoaXMuc2VnbWVudHMubGVuZ3RoKXJldHVybiBzdXBlci5iUSgpO3ZhciBuPXRoaXMueCQoKTtpZighdGhpcy5PVHx8bjw9dGhpcy5zZWdtZW50c1t0aGlzLnNlZ21lbnRzLmxlbmd0aC0xXS5qJCluPXRoaXMuc2VnbWVudHNbdGhpcy5zZWdtZW50cy5sZW5ndGgtMV07ZWxzZXt2YXIgVz10aGlzLnNlZ21lbnRzW3RoaXMuc2VnbWVudHMubGVuZ3RoLTFdO249bmV3IFI0KG4sTWF0aC5tYXgoMCxXLnN0YXJ0VGltZS0oVy5qJC1uKSp0aGlzLk84KSx0aGlzLk84LDAsYHNxLyR7bn1gLHZvaWQgMCx2b2lkIDAsITApfXJldHVybiB0aGlzLlhnP01hdGgubWluKHRoaXMudWIsCm4uZW5kVGltZSk6bi5lbmRUaW1lfUg3KCl7cmV0dXJuIHRoaXMuT1Q/dGhpcy5zZWdtZW50cy5sZW5ndGg/dGhpcy54JCgpLXRoaXMuWk8oKSsxOjA6c3VwZXIuSDcoKX14JCgpe3ZhciBuPU1hdGgubWluKHRoaXMuSFAsTWF0aC5tYXgoc3VwZXIueCQoKSx0aGlzLnFxKSksVz10aGlzLnViKjFFMztXPXRoaXMuRG4+MCYmdGhpcy5EbjxXO3RoaXMuWGcmJnRoaXMudWI+MCYmdGhpcy5xcT4wJiYhVyYmKFc9dGhpcy5YKHRoaXMudWIpKSYmKG49TWF0aC5taW4oVy5qJC0xLG4pKTtyZXR1cm4gbn1PZygpe3JldHVybiB0aGlzLnNlZ21lbnRzLmxlbmd0aD90aGlzLnNlZ21lbnRzW3RoaXMuc2VnbWVudHMubGVuZ3RoLTFdOm51bGx9aihuKXt2YXIgVz1GeCh0aGlzLG4uaiQpO2lmKFc+PTApdGhpcy5zZWdtZW50c1tXXT1uO2Vsc2UgaWYodGhpcy5zZWdtZW50cy5zcGxpY2UoLShXKzEpLDAsbiksdGhpcy51ayYmbi5qJCUoMzAwL3RoaXMuTzgpPT09MCl7dmFyIEQ9dGhpcy5zZWdtZW50c1swXS5qJCwKYj1NYXRoLmZsb29yKHRoaXMudWsvdGhpcy5POCk7bj1uLmokLWI7Vz0tKFcrMSktYjtXPjAmJm4+RCYmKHRoaXMuc2VnbWVudHM9dGhpcy5zZWdtZW50cy5zbGljZShXKSl9fU8obil7bj1GeCh0aGlzLG4pO24+PTAmJnRoaXMuc2VnbWVudHMuc3BsaWNlKG4sMSl9VFgoKXtyZXR1cm4gdGhpcy5xcX1xZShuKXtyZXR1cm4gWnU/IXRoaXMuWSYmbj49MCYmdGhpcy54JCgpPD1uOnN1cGVyLnFlKG4pfVgobil7aWYoIXRoaXMuT1QpcmV0dXJuIHN1cGVyLlgobik7aWYoIXRoaXMuc2VnbWVudHMubGVuZ3RoKXJldHVybiBudWxsO3ZhciBXPXRoaXMuc2VnbWVudHNbdGhpcy5zZWdtZW50cy5sZW5ndGgtMV07aWYobjx0aGlzLnNlZ21lbnRzWzBdLnN0YXJ0VGltZSlXPU1hdGgubWF4KDAsdGhpcy5zZWdtZW50c1swXS5qJC1NYXRoLmNlaWwoKHRoaXMuc2VnbWVudHNbMF0uc3RhcnRUaW1lLW4pL3RoaXMuTzgpKTtlbHNlIGlmKG4+PVcuZW5kVGltZSlXPVcuaiQrTWF0aC5mbG9vcigobi1XLmVuZFRpbWUpLwp0aGlzLk84KzEpO2Vsc2V7Vz1EZSh0aGlzLnNlZ21lbnRzLGI9Pm48Yi5zdGFydFRpbWU/LTE6bj49Yi5lbmRUaW1lPzE6MCk7CmlmKFc+PTApcmV0dXJuIHRoaXMuc2VnbWVudHNbV107dmFyIEQ9LShXKzEpO1c9dGhpcy5zZWdtZW50c1tELTFdO0Q9dGhpcy5zZWdtZW50c1tEXTtXPU1hdGguZmxvb3IoKG4tVy5lbmRUaW1lKS8oKEQuc3RhcnRUaW1lLVcuZW5kVGltZSkvKEQuaiQtVy5qJC0xKSkrMSkrVy5qJH1yZXR1cm4gdGhpcy5XKFcpfVcobil7aWYoIXRoaXMuT1QpcmV0dXJuIHN1cGVyLlcobik7aWYoIXRoaXMuc2VnbWVudHMubGVuZ3RoKXJldHVybiBudWxsO3ZhciBXPUZ4KHRoaXMsbik7aWYoVz49MClyZXR1cm4gdGhpcy5zZWdtZW50c1tXXTt2YXIgRD0tKFcrMSk7Vz10aGlzLk84O2lmKEQ9PT0wKXZhciBiPU1hdGgubWF4KDAsdGhpcy5zZWdtZW50c1swXS5zdGFydFRpbWUtKHRoaXMuc2VnbWVudHNbMF0uaiQtbikqVyk7ZWxzZSBEPT09dGhpcy5zZWdtZW50cy5sZW5ndGg/KGI9dGhpcy5zZWdtZW50c1t0aGlzLnNlZ21lbnRzLmxlbmd0aC0xXSxiPWIuZW5kVGltZSsobi1iLmokLTEpKlcpOihiPQp0aGlzLnNlZ21lbnRzW0QtMV0sVz10aGlzLnNlZ21lbnRzW0RdLFc9KFcuc3RhcnRUaW1lLWIuZW5kVGltZSkvKFcuaiQtYi5qJC0xKSxiPWIuZW5kVGltZSsobi1iLmokLTEpKlcpO3JldHVybiBuZXcgUjQobixiLFcsMCxgc3EvJHtufWAsdm9pZCAwLHZvaWQgMCwhMCl9fSxadT0hMTt2YXIgV1Q9Y2xhc3MgZXh0ZW5kcyBkdHtjb25zdHJ1Y3RvcihuLFcsRD17fSl7c3VwZXIobixXLCIiLHZvaWQgMCx2b2lkIDAsRC5yYnx8MCk7dGhpcy5pbmRleD1uZXcgZ1MoRCl9VEMoKXtyZXR1cm4hMH1OKCl7cmV0dXJuITB9WChuKXtyZXR1cm4gdGhpcy5EKCkmJm4uSiYmIW4uYVp8fCFuLlBKLmluZGV4LnFlKG4uaiQpfVkoKXt9SyhuLFc9ITEpe3JldHVybiB0eXBlb2YgbiE9PSJudW1iZXIifHxpc0Zpbml0ZShuKT9zdXBlci5LKG4sVyk6bmV3IHdrKFtuZXcgcUkoMyx0aGlzLHZvaWQgMCwibWxMaXZlR2V0UmVxSW5mb1N0dWJGb3JUaW1lIiwtMSx2b2lkIDAsdGhpcy5yYix2b2lkIDAsdGhpcy5yYip0aGlzLmluZm8uTnMpXSwiIil9aihuLFcpe2lmKHRoaXMuaW5kZXguTUkobikpcmV0dXJuIHN1cGVyLmoobixXKTt2YXIgRD10aGlzLmluZGV4LmdldFN0YXJ0VGltZShuKSxiPU1hdGgucm91bmQodGhpcy5yYip0aGlzLmluZm8uTnMpLHY9dGhpcy5yYjtXJiYodj1iPTApO3JldHVybiBuZXcgd2soW25ldyBxSSgzLAp0aGlzLHZvaWQgMCwibWxMaXZlQ3JlYXRlUmVxSW5mb0ZvclNlZyIsbixELHYsdm9pZCAwLGIsIVcpXSxuPj0wP2BzcS8ke259YDoiIil9fTt2YXIgcnQ9Y2xhc3MgZXh0ZW5kcyBDantjb25zdHJ1Y3RvcihuLFcpe3N1cGVyKG4sVyk7dGhpcy5pbmRleD1uZXcgZy5qYzt0aGlzLmluZGV4LnR3KCExLCJkIil9Vygpe3JldHVybiExfUQoKXtyZXR1cm4hMX1UQygpe3JldHVybiExfVkoKXtyZXR1cm4gbmV3IHdrKFtuZXcgcUkoMSx0aGlzLHZvaWQgMCwib3RmSW5pdCIpXSwic3EvMCIpfWJkKCl7cmV0dXJuIG51bGx9ZSQobil7dGhpcy5YKG4pO3JldHVybiBNSSh0aGlzLGdrKG4pLCExKX1LKG4sVz0hMSl7bj10aGlzLmluZGV4LlIzKG4pO1cmJihuPU1hdGgubWluKHRoaXMuaW5kZXgueCQoKSxuKzEpKTtyZXR1cm4gTUkodGhpcyxuLCEwKX1EdChuKXtuLmluZm8udHlwZT09PTEmJih0aGlzLkp8fCh0aGlzLko9JE0obi5KKSksbi5OJiZuLk4udXJpPT09Imh0dHA6Ly95b3V0dWJlLmNvbS9zdHJlYW1pbmcvb3RmL2R1cmF0aW9ucy8xMTIwMTUiJiZuR1ModGhpcyxuLk4pKX1YKG4pe3JldHVybiBuLko9PT0wPyEwOnRoaXMuaW5kZXgueCQoKT4Kbi5qJCYmdGhpcy5pbmRleC5aTygpPD1uLmokKzF9SEooKXtyZXR1cm4gMH1udSgpe3JldHVybiExfX07dmFyIGE0LGhoYixEODIsbk0sV0t3O2cuVnM9Y2xhc3N7Y29uc3RydWN0b3Iobil7dGhpcy50YWc9bn19O2E0PW5ldyBNYXA7aGhiPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5OPW5ldyBNYXB9fTtEODI9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLk49MTA7dGhpcy5KPURhdGUubm93KCl9fTtuTT1uZXcgTWFwO1dLdz1uZXcgaGhiO3ZhciBiOD1jbGFzc3tjb25zdHJ1Y3RvcihuLFcpe3RoaXMuaW5mbz1uO3RoaXMuSj1XO3RoaXMuTj1udWxsO3RoaXMuWD10aGlzLlc9LTE7dGhpcy50aW1lc3RhbXBPZmZzZXQ9MDt0aGlzLmlzTG9ja2VkPXRoaXMuSz0hMTt0aGlzLlY9dGhpcy5pbmZvLlBKLlMkKCkmJiF0aGlzLmluZm8uTn1qKG4sVz0hMSxEPTApe2lmKHRoaXMuaXNMb2NrZWR8fG4uaXNMb2NrZWR8fCFiVCh0aGlzLmluZm8sbi5pbmZvKXx8dGhpcy5pbmZvLmFaKXJldHVybiBudWxsO2lmKEQpe2lmKHRoaXMuSi50b3RhbExlbmd0aCtuLkoudG90YWxMZW5ndGg+RClyZXR1cm4gbnVsbH1lbHNlIGlmKFcmJihXPXRoaXMuSixEPW4uSixXPSEoRC5OLmxlbmd0aD94TShXLEQuTlswXSk6MSkpLFcpcmV0dXJuIG51bGw7Vz1uZXcgcUkodGhpcy5pbmZvLnR5cGUsdGhpcy5pbmZvLlBKLHRoaXMuaW5mby5yYW5nZSx0aGlzLmluZm8uWSx0aGlzLmluZm8uaiQsdGhpcy5pbmZvLnNlZ21lbnRTdGFydFRpbWUsdGhpcy5pbmZvLlcsCnRoaXMuaW5mby5OLHRoaXMuaW5mby5KLHRoaXMuaW5mby5hWix0aGlzLmluZm8udkQsdGhpcy5pbmZvLmNsaXBJZCx0aGlzLmluZm8uRCk7UF8oVyxuLmluZm8pO0Q9bmV3IFM1O2U1KEQsdGhpcy5KKTtlNShELG4uSik7Vz1uZXcgYjgoVyxEKTtXLk4hPW51bGwmJm4uTiE9bnVsbCYmZy5jXygiZGFzaCIsNDE0NjI3OTU3LGBtZXJnZWQgc2xpY2UgZW1zZyBvdmVycmlkZGVuOyBwcmV2OiAke1cuTi5mSygpfSBuZXh0OiAke24uTi5mSygpfWApO1cuTj1uLk58fHRoaXMuTjtXLlc9dGhpcy5XIT09LTE/dGhpcy5XOm4uVztXLlg9dGhpcy5YIT09LTE/dGhpcy5YOm4uWDtyZXR1cm4gV319O2cuQkM9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmNvdW50PTA7dGhpcy5KPTE7dGhpcy5XPSExO3RoaXMub2Zmc2V0cz1uZXcgRmxvYXQ2NEFycmF5KDEyOCk7dGhpcy5zdGFydFRpY2tzPW5ldyBGbG9hdDY0QXJyYXkoMTI4KX1NSShuKXtyZXR1cm4gbjw9dGhpcy54JCgpfU4obil7cmV0dXJuIHRoaXMub2Zmc2V0c1tuXX1nZXRTdGFydFRpbWUobil7cmV0dXJuIHRoaXMuc3RhcnRUaWNrc1tuXS90aGlzLkp9akUobil7cmV0dXJuIHRoaXMuZ2V0U3RhcnRUaW1lKG4pK3RoaXMuZ2V0RHVyYXRpb24obil9aEMoKXtyZXR1cm4gTmFOfWdldER1cmF0aW9uKG4pe249dGhpcy5EKG4pO3JldHVybiBuPj0wP24vdGhpcy5KOi0xfUQobil7cmV0dXJuIG4rMTx0aGlzLmNvdW50fHx0aGlzLlc/dGhpcy5zdGFydFRpY2tzW24rMV0tdGhpcy5zdGFydFRpY2tzW25dOi0xfVVjKCl7cmV0dXJuIDB9Wk8oKXtyZXR1cm4gMH14JCgpe3JldHVybiB0aGlzLmNvdW50LTF9cWUobil7cmV0dXJuIHRoaXMueCQoKT09PQpuJiZuPj0wfWJRKCl7cmV0dXJuIHRoaXMuVz90aGlzLnN0YXJ0VGlja3NbdGhpcy5jb3VudF0vdGhpcy5KOk5hTn1MZigpe3JldHVybiAwfUg3KCl7cmV0dXJuIHRoaXMuY291bnR9Vigpe3JldHVybiIifVIzKG4pe24qPXRoaXMuSjtuPWcuVzQodGhpcy5zdGFydFRpY2tzLnN1YmFycmF5KDAsdGhpcy5jb3VudCksbik7cmV0dXJuIG4+PTA/bjpNYXRoLm1heCgwLC1uLTIpfWlzTG9hZGVkKCl7cmV0dXJuIHRoaXMueCQoKT49MH1YZChuLFcpe2lmKG4+PXRoaXMueCQoKSlyZXR1cm4gMDt2YXIgRD0wO2ZvcihXPXRoaXMuZ2V0U3RhcnRUaW1lKG4pK1c7bjx0aGlzLngkKCkmJlc+dGhpcy5nZXRTdGFydFRpbWUobik7bisrKUQ9TWF0aC5tYXgoRCx0TSh0aGlzLG4pL3RoaXMuZ2V0RHVyYXRpb24obikpO3JldHVybiBEfXJlc2l6ZShuKXtuKz0yO3ZhciBXPXRoaXMub2Zmc2V0czt0aGlzLm9mZnNldHM9bmV3IEZsb2F0NjRBcnJheShuKzEpO3ZhciBEPXRoaXMuc3RhcnRUaWNrczt0aGlzLnN0YXJ0VGlja3M9Cm5ldyBGbG9hdDY0QXJyYXkobisxKTtmb3Iobj0wO248dGhpcy5jb3VudCsxO24rKyl0aGlzLm9mZnNldHNbbl09V1tuXSx0aGlzLnN0YXJ0VGlja3Nbbl09RFtuXX1jYXAobixXKXskWCh0aGlzKTt0aGlzLlc9ITA7dGhpcy5zdGFydFRpY2tzW3RoaXMuY291bnRdPVc7dGhpcy5vZmZzZXRzW3RoaXMuY291bnRdPW59fTtnLkJDLnByb3RvdHlwZS5VNz1XWigyKTt2YXIgc2s9Y2xhc3MgZXh0ZW5kcyBDantjb25zdHJ1Y3RvcihuLFcsRCxiKXtzdXBlcihuLFcsRCxiKTt0aGlzLmo9bnVsbDt0aGlzLmluZGV4PW5ldyBnLkJDfVkobixXKXt2YXIgRD1uZXcgcUkoMix0aGlzLHRoaXMuaW5kZXhSYW5nZSwiaW5kZXhJbmZvIix2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsVyksYj1bbmV3IHFJKDEsdGhpcyx0aGlzLmluaXRSYW5nZSwiaW5pdEluZm8iLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCxXKSxEXTt0aGlzLmluZm8uY29udGVudExlbmd0aD4wJiZuJiYoRD1ELnJhbmdlLmVuZCsxLG49TWF0aC5taW4obix0aGlzLmluZm8uY29udGVudExlbmd0aC1EKSxuPjAmJmIucHVzaChuZXcgcUkoNCx0aGlzLFdfKEQsbiksInRiZFJhbmdlIix2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsVykpKTtyZXR1cm4gbmV3IHdrKGIpfUR0KG4pe2lmKG4uaW5mby50eXBlPT09CjEpe2lmKHRoaXMuSilyZXR1cm47dGhpcy5KPSRNKG4uSil9ZWxzZSBpZihuLmluZm8udHlwZT09PTIpe2lmKHRoaXMuanx8dGhpcy5pbmRleC54JCgpPj0wKXJldHVybjtpZihnLlJCKHRoaXMuaW5mbykpe3ZhciBXPXRoaXMuaW5kZXgsRD1nLldSKG4pO249bi5pbmZvLnJhbmdlLnN0YXJ0O3ZhciBiPWcubnMoRCwwLDE5MzYyODY4NDApO0Q9THMoYik7Vy5KPUQudGltZXNjYWxlO3ZhciB2PUQuZjg7Vy5vZmZzZXRzWzBdPUQuTm8rbitiLnNpemU7Vy5zdGFydFRpY2tzWzBdPXY7Vy5XPSEwO249RC5xZy5sZW5ndGg7Zm9yKHY9MDt2PG47disrKXJ5KFcsRC5Ic1t2XSxELnFnW3ZdKX1lbHNlIHRoaXMuaj1nLldSKG4pfWlmKHRoaXMuaW5mby5xSCgpJiZ0aGlzLkomJnRoaXMuail7bj1uZXcgRGF0YVZpZXcodGhpcy5KLmJ1ZmZlcik7Vz10aGlzLmluZGV4O3Y9dGhpcy5qO0Q9dGhpcy5pbmRleFJhbmdlLmVuZDtiPW5ldyB0WShuKTtuPWI7Yj1uLnBvczt2YXIgaz17Qzk6MUU2LG84OjFFOSwKZHVyYXRpb246MCx4TTowLGJtOjB9O2lmKHNZKG4sNDA4MTI1NTQzKSlpZihrLnhNPU5rKG4sITApLGsuYm09bi5zdGFydCtuLnBvcyxzWShuLDM1NzE0OTAzMCkpe2Zvcih2YXIgaD1yQShuKTshSHcoaCk7KXt2YXIgeD1OayhoLCExKTt4PT09MjgwNzcyOT9rLkM5PWZzKGgpOng9PT0yODA3NzMwP2subzg9ZnMoaCk6eD09PTE3NTQ1P2suZHVyYXRpb249SUIoaCk6SlkoaCl9bi5wb3M9YjtuPWt9ZWxzZSBuLnBvcz1iLG49bnVsbDtlbHNlIG4ucG9zPWIsbj1udWxsO2lmKG4hPT1udWxsKXtXLko9bi5vOC9uLkM5O2I9bmV3IHRZKHYpO3Y9YjtoPW4uYm07Yj12LnBvcztrPVtdO2lmKHNZKHYsNDc1MjQ5NTE1KSl7Zm9yKHg9ckEodik7c1koeCwxODcpOyl7bGV0IEw9ckEoeCk7aWYoIXNZKEwsMTc5KSljb250aW51ZTtsZXQgZT1mcyhMKTtpZighc1koTCwxODMpKWNvbnRpbnVlO0w9ckEoTCk7bGV0IEc9aDtmb3IoO3NZKEwsMjQxKTspRz1mcyhMKStoO2sucHVzaCh7Zm86RyxuODplfSl9aWYoay5sZW5ndGg+CjAmJkQ9PT1rWzBdLmZvKWZvcihEPTA7RDxrLmxlbmd0aDtEKyspa1tEXS5mbys9MTt2LnBvcz1iO0Q9a31lbHNlIHYucG9zPWIsRD1udWxsO2lmKEQhPT1udWxsKXtmb3IobGV0IEwgb2YgRClEPVcsdj1MLmZvLGI9TC5uOCwkWChEKSxELm9mZnNldHNbRC5jb3VudF09dixELnN0YXJ0VGlja3NbRC5jb3VudF09YixELmNvdW50Kys7Vy5jYXAobi54TStuLmJtLG4uZHVyYXRpb24pfX10aGlzLmo9bnVsbH19R0Mobil7dmFyIFc9dGhpcy5WUShuLmluZm8pLEQ9bi5pbmZvLnJhbmdlLnN0YXJ0K24uaW5mby5OLGI9W107Zm9yKGxldCB2PTA7djxXLmxlbmd0aDt2Kyspe2xldCBrPWdkKG4uSixXW3ZdLnJhbmdlLnN0YXJ0K1dbdl0uTi1ELFdbdl0uSik7Yi5wdXNoKG5ldyBiOChXW3ZdLGspKX1yZXR1cm4gYn1WUShuKXtmb3IodmFyIFc9bi5yYW5nZS5zdGFydCtuLk4sRD0wO0Q8dGhpcy5pbmRleC54JCgpJiZXPj10aGlzLmluZGV4Lk4oRCsxKTspRCsrO3JldHVybiBzTih0aGlzLEQsVywKbi5KKS5Bd31YKG4pe24uVigpO3JldHVybiB0aGlzLk4oKT8hMDpuLnJhbmdlLmVuZCsxPHRoaXMuaW5mby5jb250ZW50TGVuZ3RofWJkKG4sVyl7dGhpcy5YKG4pO2lmKCF0aGlzLk4oKSlyZXR1cm4gVz1XXyhuLnJhbmdlLmVuZCsxLFcpLFcuZW5kKzE+dGhpcy5pbmZvLmNvbnRlbnRMZW5ndGgmJihXPW5ldyBhQihXLnN0YXJ0LHRoaXMuaW5mby5jb250ZW50TGVuZ3RoLTEpKSxuZXcgd2soW25ldyBxSSg0LG4uUEosVywiZ2V0TmV4dFJlcXVlc3RJbmZvQnlMZW5ndGgiLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCxuLmNsaXBJZCldKTtuLnR5cGU9PT00JiYobj10aGlzLlZRKG4pLG49bltuLmxlbmd0aC0xXSk7dmFyIEQ9MCxiPW4ucmFuZ2Uuc3RhcnQrbi5OK24uSjtuLnR5cGU9PT0zJiYobi5WKCksRD1uLmokLGI9PT1uLnJhbmdlLmVuZCsxJiYoRCs9MSkpO3JldHVybiBzTih0aGlzLEQsYixXKX1lJCgpe3JldHVybiBudWxsfUsobixXPQohMSl7bj10aGlzLmluZGV4LlIzKG4pO1cmJihuPU1hdGgubWluKHRoaXMuaW5kZXgueCQoKSxuKzEpKTtyZXR1cm4gc04odGhpcyxuLHRoaXMuaW5kZXguTihuKSwwKX1XKCl7cmV0dXJuITB9RCgpe3JldHVybiEwfVRDKCl7cmV0dXJuITF9SEooKXtyZXR1cm4gdGhpcy5pbmRleFJhbmdlLmxlbmd0aCt0aGlzLmluaXRSYW5nZS5sZW5ndGh9bnUoKXtyZXR1cm4gdGhpcy5pbmRleFJhbmdlJiZ0aGlzLmluaXRSYW5nZSYmdGhpcy5pbml0UmFuZ2UuZW5kKzE9PT10aGlzLmluZGV4UmFuZ2Uuc3RhcnQ/ITA6ITF9fTt2YXIgQU09Y2xhc3N7Y29uc3RydWN0b3Iobj0wLFc9MCxEPSJTUEFUSUFMX0FVRElPX1RZUEVfTk9ORSIsYj0hMSx2LGssaD0iQVVESU9fUVVBTElUWV9VTktOT1dOIix4PSExKXt0aGlzLnNhbXBsZVJhdGU9bjt0aGlzLm51bUNoYW5uZWxzPVc7dGhpcy5zcGF0aWFsQXVkaW9UeXBlPUQ7dGhpcy5XPWI7dGhpcy5YPXY7dGhpcy5KPWs7dGhpcy5hdWRpb1F1YWxpdHk9aDt0aGlzLk49eH1pc011bHRpQ2hhbm5lbEF1ZGlvKCl7cmV0dXJuIHRoaXMubnVtQ2hhbm5lbHM+Mn19O3ZhciBLTT1jbGFzc3tjb25zdHJ1Y3RvcihuLFcsRCxiPSIiLHY9IiIsaz0iIil7dGhpcy5kaXNwbGF5TmFtZT1uO3RoaXMudnNzSWQ9Vzt0aGlzLmxhbmd1YWdlQ29kZT1EO3RoaXMua2luZD1iO3RoaXMueHRhZ3M9djt0aGlzLmlkPWt9fTt2YXIgciR4PXtDT0xPUl9QUklNQVJJRVNfQlQ3MDk6ImJ0NzA5IixDT0xPUl9QUklNQVJJRVNfQlQyMDIwOiJidDIwMjAiLENPTE9SX1BSSU1BUklFU19VTktOT1dOOm51bGwsQ09MT1JfUFJJTUFSSUVTX1VOU1BFQ0lGSUVEOm51bGx9LGJxVT17Q09MT1JfVFJBTlNGRVJfQ0hBUkFDVEVSSVNUSUNTX0JUNzA5OiJidDcwOSIsQ09MT1JfVFJBTlNGRVJfQ0hBUkFDVEVSSVNUSUNTX0JUMjAyMF8xMDoiYnQyMDIwIixDT0xPUl9UUkFOU0ZFUl9DSEFSQUNURVJJU1RJQ1NfU01QVEVTVDIwODQ6InNtcHRlMjA4NCIsQ09MT1JfVFJBTlNGRVJfQ0hBUkFDVEVSSVNUSUNTX0FSSUJfU1REX0I2NzoiYXJpYi1zdGQtYjY3IixDT0xPUl9UUkFOU0ZFUl9DSEFSQUNURVJJU1RJQ1NfVU5LTk9XTjpudWxsLENPTE9SX1RSQU5TRkVSX0NIQVJBQ1RFUklTVElDU19VTlNQRUNJRklFRDpudWxsfTt2YXIgQVQ9e1dJRFRIOntuYW1lOiJ3aWR0aCIsdmlkZW86ITAsdmFsaWQ6NjQwLHZHOjk5OTk5fSxIRUlHSFQ6e25hbWU6ImhlaWdodCIsdmlkZW86ITAsdmFsaWQ6MzYwLHZHOjk5OTk5fSxGUkFNRVJBVEU6e25hbWU6ImZyYW1lcmF0ZSIsdmlkZW86ITAsdmFsaWQ6MzAsdkc6OTk5OX0sQklUUkFURTp7bmFtZToiYml0cmF0ZSIsdmlkZW86ITAsdmFsaWQ6M0U1LHZHOjJFOX0sRU9URjp7bmFtZToiZW90ZiIsdmlkZW86ITAsdmFsaWQ6ImJ0NzA5Iix2RzoiY2F0YXZpc2lvbiJ9LENIQU5ORUxTOntuYW1lOiJjaGFubmVscyIsdmlkZW86ITEsdmFsaWQ6Mix2Rzo5OX0sQ1JZUFRPQkxPQ0tGT1JNQVQ6e25hbWU6ImNyeXB0b2Jsb2NrZm9ybWF0Iix2aWRlbzohMCx2YWxpZDoic3Vic2FtcGxlIix2RzoiaW52YWxpZGZvcm1hdCJ9LERFQ09ERVRPVEVYVFVSRTp7bmFtZToiZGVjb2RlLXRvLXRleHR1cmUiLHZpZGVvOiEwLHZhbGlkOiJmYWxzZSIsdkc6Im5vcGUifSxBVjFfQ09ERUNTOntuYW1lOiJjb2RlY3MiLAp2aWRlbzohMCx2YWxpZDoiYXYwMS4wLjA1TS4wOCIsdkc6ImF2OTkuMC4wNU0uMDgifSxFWFBFUklNRU5UQUw6e25hbWU6ImV4cGVyaW1lbnRhbCIsdmlkZW86ITAsdmFsaWQ6ImFsbG93ZWQiLHZHOiJpbnZhbGlkIn0sVFVOTkVMTU9ERTp7bmFtZToidHVubmVsbW9kZSIsdmlkZW86ITAsdmFsaWQ6InRydWUiLHZHOiJmYWxzZSJ9fTt2YXIgWWc9e1siMCJdOiJmIixbIjE2MCJdOiJoIixbIjEzMyJdOiJoIixbIjEzNCJdOiJoIixbIjEzNSJdOiJoIixbIjEzNiJdOiJoIixbIjEzNyJdOiJoIixbIjI2NCJdOiJoIixbIjI2NiJdOiJoIixbIjEzOCJdOiJoIixbIjI5OCJdOiJoIixbIjI5OSJdOiJoIixbIjMwNCJdOiJoIixbIjMwNSJdOiJoIixbIjIxNCJdOiJoIixbIjIxNiJdOiJoIixbIjM3NCJdOiJoIixbIjM3NSJdOiJoIixbIjE0MCJdOiJhIixbIjE0MSJdOiJhIixbIjMyNyJdOiJzYSIsWyIyNTgiXToibSIsWyIzODAiXToibWFjMyIsWyIzMjgiXToibWVhYzMiLFsiMTYxIl06IkgiLFsiMTQyIl06IkgiLFsiMTQzIl06IkgiLFsiMTQ0Il06IkgiLFsiMjIyIl06IkgiLFsiMjIzIl06IkgiLFsiMTQ1Il06IkgiLFsiMjI0Il06IkgiLFsiMjI1Il06IkgiLFsiMTQ2Il06IkgiLFsiMjI2Il06IkgiLFsiMjI3Il06IkgiLFsiMTQ3Il06IkgiLFsiMzg0Il06IkgiLFsiMzc2Il06IkgiLFsiMzg1Il06IkgiLFsiMzc3Il06IkgiLApbIjE0OSJdOiJBIixbIjI2MSJdOiJNIixbIjM4MSJdOiJNQUMzIixbIjMyOSJdOiJNRUFDMyIsWyI1OTgiXToiOSIsWyIyNzgiXToiOSIsWyIyNDIiXToiOSIsWyIyNDMiXToiOSIsWyIyNDQiXToiOSIsWyI3NzUiXToiOSIsWyI3NzYiXToiOSIsWyI3NzciXToiOSIsWyI3NzgiXToiOSIsWyI3NzkiXToiOSIsWyI3ODAiXToiOSIsWyI3ODEiXToiOSIsWyI3ODIiXToiOSIsWyI3ODMiXToiOSIsWyIyNDciXToiOSIsWyIyNDgiXToiOSIsWyIzNTMiXToiOSIsWyIzNTUiXToiOSIsWyIzNTYiXToiOSIsWyIyNzEiXToiOSIsWyI1NzciXToiOSIsWyIzMTMiXToiOSIsWyI1NzkiXToiOSIsWyIyNzIiXToiOSIsWyIzMDIiXToiOSIsWyIzMDMiXToiOSIsWyI0MDciXToiOSIsWyI0MDgiXToiOSIsWyIzMDgiXToiOSIsWyIzMTUiXToiOSIsWyIzMzAiXToiOWgiLFsiMzMxIl06IjloIixbIjMzMiJdOiI5aCIsWyIzMzMiXToiOWgiLFsiMzM0Il06IjloIixbIjMzNSJdOiI5aCIsWyIzMzYiXToiOWgiLApbIjMzNyJdOiI5aCIsWyIzMzgiXToic28iLFsiNjAwIl06Im8iLFsiMjUwIl06Im8iLFsiMjUxIl06Im8iLFsiNzc0Il06Im8iLFsiMTk0Il06IioiLFsiMTk1Il06IioiLFsiMjIwIl06IioiLFsiMjIxIl06IioiLFsiMTk2Il06IioiLFsiMTk3Il06IioiLFsiMjc5Il06IigiLFsiMjgwIl06IigiLFsiMzE3Il06IigiLFsiMzE4Il06IigiLFsiMjczIl06IigiLFsiMjc0Il06IigiLFsiMzU3Il06IigiLFsiMzU4Il06IigiLFsiMjc1Il06IigiLFsiMzU5Il06IigiLFsiMzYwIl06IigiLFsiMjc2Il06IigiLFsiNTgzIl06IigiLFsiNTg0Il06IigiLFsiMzE0Il06IigiLFsiNTg1Il06IigiLFsiNTYxIl06IigiLFsiMjc3Il06IigiLFsiMzYxIl06IihoIixbIjM2MiJdOiIoaCIsWyIzNjMiXToiKGgiLFsiMzY0Il06IihoIixbIjM2NSJdOiIoaCIsWyIzNjYiXToiKGgiLFsiNTkxIl06IihoIixbIjU5MiJdOiIoaCIsWyIzNjciXToiKGgiLFsiNTg2Il06IihoIixbIjU4NyJdOiIoaCIsClsiMzY4Il06IihoIixbIjU4OCJdOiIoaCIsWyI1NjIiXToiKGgiLFsiNDA5Il06IigiLFsiNDEwIl06IigiLFsiNDExIl06IigiLFsiNDEyIl06IigiLFsiNTU3Il06IigiLFsiNTU4Il06IigiLFsiMzk0Il06IjEiLFsiMzk1Il06IjEiLFsiMzk2Il06IjEiLFsiMzk3Il06IjEiLFsiMzk4Il06IjEiLFsiMzk5Il06IjEiLFsiNzIwIl06IjEiLFsiNzIxIl06IjEiLFsiNDAwIl06IjEiLFsiNDAxIl06IjEiLFsiNTcxIl06IjEiLFsiNDAyIl06IjEiLFsiNjk0Il06IjFoIixbIjY5NSJdOiIxaCIsWyI2OTYiXToiMWgiLFsiNjk3Il06IjFoIixbIjY5OCJdOiIxaCIsWyI2OTkiXToiMWgiLFsiNzAwIl06IjFoIixbIjcwMSJdOiIxaCIsWyI3MDIiXToiMWgiLFsiNzAzIl06IjFoIixbIjM4NiJdOiIzIixbIjM4NyJdOiJ3IixbIjQwNiJdOiI2IixbIjc4NyJdOiIxIixbIjc4OCJdOiIxIixbIjU0OCJdOiIxZSIsWyI1NDkiXToiMWUiLFsiNTUwIl06IjFlIixbIjU1MSJdOiIxZSIsWyI4MDkiXToiMWUiLApbIjgxMCJdOiIxZSIsWyI1NTIiXToiMWUiLFsiODExIl06IjFlIixbIjgxMiJdOiIxZSIsWyI1NTMiXToiMWUiLFsiODEzIl06IjFlIixbIjgxNCJdOiIxZSIsWyI1NTQiXToiMWUiLFsiODE1Il06IjFlIixbIjgxNiJdOiIxZSIsWyI1NTUiXToiMWUiLFsiODE3Il06IjFlIixbIjgxOCJdOiIxZSIsWyI1NzIiXToiMWUiLFsiNTU2Il06IjFlIixbIjY0NSJdOiIoIixbIjY0NiJdOiIoIixbIjY0NyJdOiIoIixbIjY0OCJdOiIoIixbIjY0OSJdOiIoIixbIjY1MCJdOiIoIixbIjY1MSJdOiIoIixbIjY1MiJdOiIoIixbIjY1MyJdOiIoIixbIjY1NCJdOiIoIixbIjY1NSJdOiIoIixbIjY1NiJdOiIoIixbIjY1NyJdOiIoIixbIjY1OCJdOiIoIixbIjY1OSJdOiIoIixbIjY2MCJdOiIoIixbIjY2MSJdOiIoIixbIjY2MiJdOiIoIixbIjY2MyJdOiIoIixbIjY2NCJdOiIoIixbIjY2NSJdOiIoIixbIjY2NiJdOiIoIixbIjY2NyJdOiIoIixbIjY2OCJdOiIoIixbIjY2OSJdOiIoIixbIjY3MCJdOiIoIiwKWyI2NzEiXToiKCIsWyI2NzIiXToiKCIsWyI2NzMiXToiKCIsWyI2NzQiXToiKGgiLFsiNjc1Il06IihoIixbIjY3NiJdOiIoaCIsWyI2NzciXToiKGgiLFsiNjc4Il06IihoIixbIjY3OSJdOiIoaCIsWyI2ODAiXToiKGgiLFsiNjgxIl06IihoIixbIjY4MiJdOiIoaCIsWyI2ODMiXToiKGgiLFsiNjg0Il06IihoIixbIjY4NSJdOiIoaCIsWyI2ODYiXToiKGgiLFsiNjg3Il06IihoIixbIjY4OCJdOiJBIixbIjY4OSJdOiJBIixbIjY5MCJdOiJBIixbIjY5MSJdOiJNRUFDMyIsWyI3NzMiXToiaSIsWyI4MDYiXToiSSIsWyI4MDUiXToiSSIsWyI4MjkiXToiOSIsWyI4MzAiXToiOSIsWyI4MzEiXToiOSIsWyI4MzIiXToiOSIsWyI4MzMiXToiOSIsWyI4MzQiXToiOSIsWyI4MzUiXToiOSIsWyI4MzYiXToiOSIsWyI4OTIiXToiOSIsWyI4OTMiXToiOSIsWyI4MzciXToiOSIsWyI4MzgiXToiOSIsWyI4MzkiXToiOSIsWyI4NDAiXToiOSIsWyI4NDEiXToiKCIsWyI4NDIiXToiKCIsWyI4NDMiXToiKCIsClsiODQ0Il06IigiLFsiODQ1Il06IigiLFsiODQ2Il06IigiLFsiODQ3Il06IigiLFsiODQ4Il06IigiLFsiODk0Il06IigiLFsiODk1Il06IigiLFsiODQ5Il06IigiLFsiODUwIl06IigiLFsiODUxIl06IigiLFsiODUyIl06IigiLFsiODY1Il06IjkiLFsiODY2Il06IjkiLFsiODY3Il06IjkiLFsiODY4Il06IjkiLFsiODY5Il06IjkiLFsiODcwIl06IjkiLFsiODcxIl06IjkiLFsiODcyIl06IjkiLFsiODk2Il06IjkiLFsiODk3Il06IjkiLFsiODczIl06IjkiLFsiODc0Il06IjkiLFsiODc1Il06IjkiLFsiODc2Il06IjkiLFsiODc3Il06IigiLFsiODc4Il06IigiLFsiODc5Il06IigiLFsiODgwIl06IigiLFsiODgxIl06IigiLFsiODgyIl06IigiLFsiODgzIl06IigiLFsiODg0Il06IigiLFsiODk4Il06IigiLFsiODk5Il06IigiLFsiODg1Il06IigiLFsiODg2Il06IigiLFsiODg3Il06IigiLFsiODg4Il06IigiLFsiOTAwIl06IjIiLFsiOTAxIl06IjIiLFsiOTAyIl06IjIiLApbIjkwMyJdOiIyIixbIjkwNCJdOiIyIixbIjkwNSJdOiIyIixbIjkwNiJdOiIyIixbIjkwNyJdOiIyIixbIjkwOCJdOiIyIn07dmFyIHBNPSJoaWdocmVzIGhkMjg4MCBoZDIxNjAgaGQxNDQwIGhkMTA4MCBoZDcyMCBsYXJnZSBtZWRpdW0gc21hbGwgdGlueSIuc3BsaXQoIiAiKTt2YXIgSFI9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYix2LGssaCx4LEwsZSxHKXt0aGlzLndpZHRoPW47dGhpcy5oZWlnaHQ9Vzt0aGlzLlc9eDt0aGlzLnF1YWxpdHk9a3x8WVgobixXKTt0aGlzLnF1YWxpdHlPcmRpbmFsPU5HW3RoaXMucXVhbGl0eV07dGhpcy5mcHM9RHx8MDt0aGlzLnN0ZXJlb0xheW91dD0hdnx8YiE9bnVsbCYmYiE9PSJVTktOT1dOIiYmYiE9PSJSRUNUQU5HVUxBUiI/MDp2O3RoaXMucHJvamVjdGlvblR5cGU9Yj9iPT09IkVRVUlSRUNUQU5HVUxBUiImJnY9PT0yPyJFUVVJUkVDVEFOR1VMQVJfVEhSRUVEX1RPUF9CT1RUT00iOmI6IlVOS05PV04iOyhuPWgpfHwoRD1OR1t0aGlzLnF1YWxpdHldLEQ9PT0wP249IkF1dG8iOihuPXRoaXMucHJvamVjdGlvblR5cGUsVz10aGlzLmZwcyxuPUQudG9TdHJpbmcoKSsobj09PSJFUVVJUkVDVEFOR1VMQVIifHxuPT09IkVRVUlSRUNUQU5HVUxBUl9USFJFRURfVE9QX0JPVFRPTSJ8fG49PT0iTUVTSCI/InMiOiJwIikrCihXPjU1PyI2MCI6Vz40OT8iNTAiOlc+Mzk/IjQ4IjoiIikpKTt0aGlzLnF1YWxpdHlMYWJlbD1uO3RoaXMuTj1MfHwiIjt0aGlzLnByaW1hcmllcz1lfHwiIjt0aGlzLlg9Rz8/ITB9Sigpe3JldHVybiB0aGlzLmZwcz4zMn1pc0hkcigpe3JldHVybiB0aGlzLk49PT0ic21wdGUyMDg0Inx8dGhpcy5OPT09ImFyaWItc3RkLWI2NyJ9fTt2YXIgbXU9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQ9e30pe3RoaXMuaWQ9bjt0aGlzLm1pbWVUeXBlPVc7RC5Ocz4wfHwoRC5Ocz0xNkUzKTtPYmplY3QuYXNzaWduKHRoaXMsRCk7W3RoaXMuaXRhZyx0aGlzLkpdPXRoaXMuaWQuc3BsaXQoIjsiKTt0aGlzLmNvbnRhaW5lclR5cGU9Sk0oVyk7dGhpcy5JQj1ZZ1t0aGlzLml0YWddfHwiIn1LKCl7cmV0dXJuIHRoaXMudmlkZW99WSgpe3JldHVybiB0aGlzLmF1ZGlvfXFIKCl7cmV0dXJuIHRoaXMuY29udGFpbmVyVHlwZT09PTJ9WCgpe3JldHVybiB0aGlzLklCPT09IjkifHx0aGlzLklCPT09IigifHx0aGlzLklCPT09IjloInx8dGhpcy5JQj09PSIoaCJ9TVcoKXtyZXR1cm4gdGhpcy5JQj09PSIxInx8dGhpcy5JQj09PSIxaCJ8fFBSJiZ0aGlzLklCPT09IjFlIn1WKCl7cmV0dXJuIHRoaXMuSUI9PT0ibWFjMyJ8fHRoaXMuSUI9PT0ibWVhYzMifHx0aGlzLklCPT09Im0ifHx0aGlzLklCPT09ImkifHxtRih0aGlzKX1EKCl7cmV0dXJuIHRoaXMuSUI9PT0KIk1BQzMifHx0aGlzLklCPT09Im1hYzMifHx0aGlzLklCPT09Ik1FQUMzInx8dGhpcy5JQj09PSJtZWFjMyJ9aXNFbmNyeXB0ZWQoKXtyZXR1cm4hIXRoaXMuY29udGVudFByb3RlY3Rpb259ZVMoKXtyZXR1cm4hIXRoaXMuYXVkaW99ZlkoKXtyZXR1cm4hIXRoaXMudmlkZW99Vygpe3JldHVybiB0aGlzLm1pbWVUeXBlPT09ImFwcGxpY2F0aW9uL3gtbXBlZ1VSTCJ9Tigpe3ZhciBuPXRoaXMubWltZVR5cGU7cmV0dXJuIG4uaW5jbHVkZXMoInZ0dCIpfHxuLmluY2x1ZGVzKCJ0ZXh0L21wNCIpfWlzVmVydGljYWwoKXtyZXR1cm4hIXRoaXMudmlkZW8mJnRoaXMudmlkZW8ud2lkdGg8dGhpcy52aWRlby5oZWlnaHR9fSxQUj0hMSxFTj0hMTtnLkZzPWNsYXNzIGV4dGVuZHMgZy5KTHtOTihuLFcsRCxiLHYpe3JldHVybiBzdXBlci5OTihuLFcsRCxiLHYpfX07dmFyIHhnPWNsYXNzIGV4dGVuZHMgZy5GaXtjb25zdHJ1Y3RvcihuLFcsRCxiKXtzdXBlcigpO3RoaXMuayQ9bjt0aGlzLnN0YXJ0PVc7dGhpcy5lbmQ9RDt0aGlzLmlzQWN0aXZlPWI7dGhpcy5hcHBlbmRXaW5kb3dTdGFydD0wO3RoaXMuYXBwZW5kV2luZG93RW5kPUluZmluaXR5O3RoaXMudGltZXN0YW1wT2Zmc2V0PTA7dGhpcy5LVT17ZXJyb3I6KCk9PnshdGhpcy5xTigpJiZ0aGlzLmlzQWN0aXZlJiZ0aGlzLldKKCJlcnJvciIsdGhpcyl9LAp1cGRhdGVlbmQ6KCk9PnshdGhpcy5xTigpJiZ0aGlzLmlzQWN0aXZlJiZ0aGlzLldKKCJ1cGRhdGVlbmQiLHRoaXMpfX07CnRoaXMuayQuaCQodGhpcy5LVSk7dGhpcy5wTj10aGlzLmlzQWN0aXZlfWFwcGVuZEJ1ZmZlcihuLFcsRCl7aWYodGhpcy5rJC5NcigpIT09dGhpcy5hcHBlbmRXaW5kb3dTdGFydCt0aGlzLnN0YXJ0fHx0aGlzLmskLktGKCkhPT10aGlzLmFwcGVuZFdpbmRvd0VuZCt0aGlzLnN0YXJ0fHx0aGlzLmskLlNXKCkhPT10aGlzLnRpbWVzdGFtcE9mZnNldCt0aGlzLnN0YXJ0KXRoaXMuayQuc3VwcG9ydHMoMSksdGhpcy5rJC5lNyh0aGlzLmFwcGVuZFdpbmRvd1N0YXJ0K3RoaXMuc3RhcnQsdGhpcy5hcHBlbmRXaW5kb3dFbmQrdGhpcy5zdGFydCksdGhpcy5rJC55Tyh0aGlzLnRpbWVzdGFtcE9mZnNldCt0aGlzLnN0YXJ0KTt0aGlzLmskLmFwcGVuZEJ1ZmZlcihuLFcsRCl9YWJvcnQoKXt0aGlzLmskLmFib3J0KCl9cmVtb3ZlKG4sVyl7dGhpcy5rJC5yZW1vdmUobit0aGlzLnN0YXJ0LFcrdGhpcy5zdGFydCl9VGkoKXt0aGlzLnJlbW92ZSh0aGlzLmFwcGVuZFdpbmRvd1N0YXJ0LHRoaXMuYXBwZW5kV2luZG93RW5kKX1jbGVhcigpe3RoaXMuayQuY2xlYXIoKX1lNyhuLApXKXt0aGlzLmFwcGVuZFdpbmRvd1N0YXJ0PW47dGhpcy5hcHBlbmRXaW5kb3dFbmQ9V31pdygpe3JldHVybiB0aGlzLnRpbWVzdGFtcE9mZnNldCt0aGlzLnN0YXJ0fU1yKCl7cmV0dXJuIHRoaXMuYXBwZW5kV2luZG93U3RhcnR9S0YoKXtyZXR1cm4gdGhpcy5hcHBlbmRXaW5kb3dFbmR9eU8obil7dGhpcy50aW1lc3RhbXBPZmZzZXQ9bn1TVygpe3JldHVybiB0aGlzLnRpbWVzdGFtcE9mZnNldH1aRihuPSExKXtuPXRoaXMuayQuWkYobik7cmV0dXJuIFFUKG4sdGhpcy5zdGFydCx0aGlzLmVuZCl9eXUoKXtyZXR1cm4gdGhpcy5rJC55dSgpfWZGKCl7cmV0dXJuIHRoaXMuayQuZkYoKX1nWCgpe3JldHVybiB0aGlzLmskLmdYKCl9RGMoKXtyZXR1cm4gdGhpcy5rJC5EYygpfWg5KCl7dGhpcy5rJC5oOSgpfXRaKG4pe3JldHVybiB0aGlzLmskLnRaKG4pfUQ5KCl7cmV0dXJuIHRoaXMuayQuRDkoKX1MRigpe3JldHVybiB0aGlzLmskLkxGKCl9am4obixXLEQpe3RoaXMuayQuam4obiwKVyxEKX1WbyhuLFcsRCl7dGhpcy5rJC5WbyhuLFcsRCl9bmEobixXKXtyZXR1cm4gdGhpcy5rJC5uYShuLFcpfXN1cHBvcnRzKG4pe3JldHVybiB0aGlzLmskLnN1cHBvcnRzKG4pfVpnKCl7cmV0dXJuIHRoaXMuayQuWmcoKX1pUSgpe3JldHVybiB0aGlzLmskLmlRKCl9aXNWaWV3KCl7cmV0dXJuITB9am8oKXtyZXR1cm4gdGhpcy5rJC5qbygpP3RoaXMuaXNBY3RpdmU6ITF9aXNMb2NrZWQoKXtyZXR1cm4gdGhpcy5wTiYmIXRoaXMuaXNBY3RpdmV9eXIobil7bj10aGlzLmskLnlyKG4pO24udnc9YCR7dGhpcy5zdGFydH0tJHt0aGlzLmVuZH1gO3JldHVybiBufW5GKCl7cmV0dXJuIHRoaXMuayQubkYoKX1Lcygpe3JldHVybiB0aGlzLmskLktzKCl9ejAoKXtyZXR1cm4gdGhpcy5rJC56MCgpfW1BKCl7dGhpcy5rJC5NOSh0aGlzLktVKTtzdXBlci5tQSgpfUtpKCl7cmV0dXJuIHRoaXMuaXNBY3RpdmV9VnUobil7dGhpcy5pc0FjdGl2ZT1uO3RoaXMucE49dGhpcy5wTnx8dGhpcy5pc0FjdGl2ZX19O3ZhciBzND0hMTt2YXIga2c9Y2xhc3MgZXh0ZW5kcyBnLkZpe2NvbnN0cnVjdG9yKG4sVyxELGIsdixrKXtzdXBlcigpO3RoaXMuUUU9bjt0aGlzLkVWPVc7dGhpcy5pZD1EO3RoaXMuY29udGFpbmVyVHlwZT1iO3RoaXMuSUI9djt0aGlzLmZZPWs7dGhpcy5tTz10aGlzLmpxPXRoaXMuZEg9bnVsbDt0aGlzLmVvPSExO3RoaXMuYXBwZW5kV2luZG93U3RhcnQ9dGhpcy50aW1lc3RhbXBPZmZzZXQ9MDt0aGlzLkY0PVRpKFtdLFtdKTt0aGlzLkhIPSExO3RoaXMuaWs9W107dGhpcy55Nj1QYz9bXTp2b2lkIDA7dGhpcy5oYW5kbGVyPWg9PnRoaXMuV0ooaC50eXBlLHRoaXMpOwp0aGlzLlFFPy5hZGRFdmVudExpc3RlbmVyJiYodGhpcy5RRS5hZGRFdmVudExpc3RlbmVyKCJ1cGRhdGVlbmQiLHRoaXMuaGFuZGxlciksdGhpcy5RRS5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsdGhpcy5oYW5kbGVyKSl9YXBwZW5kQnVmZmVyKG4sVyxEKXt0aGlzLkhIPSExO0QmJih0aGlzLmpxPUQpO24ubGVuZ3RoJiYodGhpcy5RRT8uYXBwZW5kQnVmZmVyP3RoaXMuUUUuYXBwZW5kQnVmZmVyKG4pOnRoaXMuUUU/dGhpcy5RRS5hcHBlbmQobik6dGhpcy5FViYmdGhpcy5FVi53ZWJraXRTb3VyY2VBcHBlbmQodGhpcy5pZCxuKSk7VyYmKFcuaXNFbmNyeXB0ZWQoKSYmKHRoaXMubU89dGhpcy5qcSksVy50eXBlPT09MyYmKHRoaXMuZEg9VyksdGhpcy5pay5wdXNoKFcuZ2EoKSksdGhpcy5pay5sZW5ndGg+NCYmdGhpcy5pay5zaGlmdCgpKTt0aGlzLnk2JiYodGhpcy55Ni5sZW5ndGg+PTJ8fG4ubGVuZ3RoPjEwNDg1NzY/ZGVsZXRlIHRoaXMueTY6dGhpcy55Ni5wdXNoKG4pKX1hYm9ydCgpe3RyeXt0aGlzLlFFPwp0aGlzLlFFLmFib3J0KCk6dGhpcy5FViYmdGhpcy5FVi53ZWJraXRTb3VyY2VBYm9ydCh0aGlzLmlkKX1jYXRjaChuKXtRalomJmcuR3EobmV3IGcuUXgoYEVycm9yIHdoaWxlIGFib3J0IHRoZSBzb3VyY2UgYnVmZmVyOiAke24ubmFtZX0sICR7bi5tZXNzYWdlfWApKX10aGlzLmpxPXRoaXMuZEg9bnVsbH1yZW1vdmUobixXLEQpe3RoaXMuSEg9ITE7dGhpcy5RRT8ucmVtb3ZlJiYoRCYmRCh7Yjpyayh0aGlzLlpGKCkpLHM6bixlOld9KSx0aGlzLlFFLnJlbW92ZShuLFcpKX1UaSgpe3RoaXMucmVtb3ZlKHRoaXMuTXIoKSx0aGlzLktGKCkpfWNsZWFyKCl7dGhpcy5nWCgpfHwodGhpcy5hYm9ydCgpLHRoaXMuVGkoKSx0aGlzLm1PPXRoaXMuanE9dGhpcy5kSD1udWxsLHRoaXMuYXBwZW5kV2luZG93U3RhcnQ9dGhpcy50aW1lc3RhbXBPZmZzZXQ9MCx0aGlzLkY0PVRpKFtdLFtdKSx0aGlzLkhIPSExLHRoaXMueTY9UGM/W106dm9pZCAwLHRoaXMuZW89ITApfU1yKCl7cmV0dXJuIHM0JiYKdGhpcy5mWT90aGlzLmFwcGVuZFdpbmRvd1N0YXJ0OnRoaXMuUUU/LmFwcGVuZFdpbmRvd1N0YXJ0fHwwfUtGKCl7cmV0dXJuIHRoaXMuUUU/LmFwcGVuZFdpbmRvd0VuZHx8MH1lNyhuLFcpe3RoaXMuUUUmJihzNCYmdGhpcy5mWT8odGhpcy5hcHBlbmRXaW5kb3dTdGFydD1uLHRoaXMuUUUuYXBwZW5kV2luZG93RW5kPVcpOm4+dGhpcy5NcigpPyh0aGlzLlFFLmFwcGVuZFdpbmRvd0VuZD1XLHRoaXMuUUUuYXBwZW5kV2luZG93U3RhcnQ9bik6KHRoaXMuUUUuYXBwZW5kV2luZG93U3RhcnQ9bix0aGlzLlFFLmFwcGVuZFdpbmRvd0VuZD1XKSl9aXcoKXtyZXR1cm4gdGhpcy50aW1lc3RhbXBPZmZzZXR9eU8obil7czQ/dGhpcy50aW1lc3RhbXBPZmZzZXQ9bjp0aGlzLnN1cHBvcnRzKDEpJiYodGhpcy5RRS50aW1lc3RhbXBPZmZzZXQ9bil9U1coKXtyZXR1cm4gczQ/dGhpcy50aW1lc3RhbXBPZmZzZXQ6dGhpcy5zdXBwb3J0cygxKT90aGlzLlFFLnRpbWVzdGFtcE9mZnNldDowfVpGKG49CiExKXtpZihuKXJldHVybiB0aGlzLkhIfHx0aGlzLnl1KCl8fCh0aGlzLkY0PXRoaXMuWkYoITEpLHRoaXMuSEg9ITApLHRoaXMuRjQ7dHJ5e3JldHVybiB0aGlzLlFFP3RoaXMuUUUuYnVmZmVyZWQ6dGhpcy5FVj90aGlzLkVWLndlYmtpdFNvdXJjZUJ1ZmZlcmVkKHRoaXMuaWQpOlRpKFswXSxbSW5maW5pdHldKX1jYXRjaChXKXtyZXR1cm4gVGkoW10sW10pfX15dSgpe3JldHVybiB0aGlzLlFFPy51cGRhdGluZ3x8ITF9Z1goKXtyZXR1cm4gdGhpcy5lb31EYygpe3JldHVybiF0aGlzLmVvJiZ0aGlzLnl1KCl9aDkoKXt0aGlzLmVvPSExfXRaKG4pe3ZhciBXPW4/LklCO249bj8uY29udGFpbmVyVHlwZTtyZXR1cm4hVyYmIW58fFc9PT10aGlzLklCJiZuPT09dGhpcy5jb250YWluZXJUeXBlfUQ5KCl7cmV0dXJuIHRoaXMuanF9TEYoKXtyZXR1cm4gdGhpcy5tT31uYShuLFcpe3JldHVybiB0aGlzLmNvbnRhaW5lclR5cGUhPT1ufHx0aGlzLklCIT09V31qbihuLFcsRCl7aWYodGhpcy5jb250YWluZXJUeXBlIT09Cm58fEQmJnRoaXMubmEobixEKSl0aGlzLnN1cHBvcnRzKDQpLFZUKCkmJnRoaXMuUUUuY2hhbmdlVHlwZShXKSxEJiYodGhpcy5JQj1EKTt0aGlzLmNvbnRhaW5lclR5cGU9bn1WbyhuLFcsRCl7dGhpcy5jb250YWluZXJUeXBlJiZ0aGlzLm5hKG4sVykmJlZUKCkmJnRoaXMuUUUuY2hhbmdlVHlwZShEKTt0aGlzLmNvbnRhaW5lclR5cGU9bjt0aGlzLklCPVd9WmcoKXtyZXR1cm4gdGhpcy5kSH1pUSgpe3JldHVybiEhdGhpcy5kSCYmIXRoaXMuZEguYVp9aXNWaWV3KCl7cmV0dXJuITF9c3VwcG9ydHMobil7c3dpdGNoKG4pe2Nhc2UgMTpyZXR1cm4gdGhpcy5RRT8udGltZXN0YW1wT2Zmc2V0IT09dm9pZCAwO2Nhc2UgMDpyZXR1cm4hIXRoaXMuUUU/LmFwcGVuZEJ1ZmZlcjtjYXNlIDI6cmV0dXJuISF0aGlzLlFFPy5yZW1vdmU7Y2FzZSAzOnJldHVybiEoIXRoaXMuUUU/LmFkZEV2ZW50TGlzdGVuZXJ8fCF0aGlzLlFFPy5yZW1vdmVFdmVudExpc3RlbmVyKTtjYXNlIDQ6cmV0dXJuISghdGhpcy5RRXx8CiF0aGlzLlFFLmNoYW5nZVR5cGUpO2RlZmF1bHQ6cmV0dXJuITF9fWpvKCl7cmV0dXJuIXRoaXMueXUoKX1pc0xvY2tlZCgpe3JldHVybiExfXlyKG4pe24udG89dGhpcy5TVygpO24udXA9dGhpcy55dSgpO24uYXc9YCR7KHRoaXMuUUU/LmFwcGVuZFdpbmRvd1N0YXJ0fHwwKS50b0ZpeGVkKDMpfS0keyh0aGlzLlFFPy5hcHBlbmRXaW5kb3dFbmR8fEluZmluaXR5KS50b0ZpeGVkKDMpfWA7cmV0dXJuIG59ZkYoKXtyZXR1cm4gdGhpcy5RRT8ud3JpdGVIZWFkfHwwfW5GKCl7dmFyIG49e307Zm9yKGxldCBXPTA7Vzx0aGlzLmlrLmxlbmd0aDtXKyspbltgcyR7V31gXT10aGlzLmlrW1ddO3JldHVybiBufW1BKCl7dGhpcy5zdXBwb3J0cygzKSYmKHRoaXMuUUUucmVtb3ZlRXZlbnRMaXN0ZW5lcigidXBkYXRlZW5kIix0aGlzLmhhbmRsZXIpLHRoaXMuUUUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZXJyb3IiLHRoaXMuaGFuZGxlcikpO3N1cGVyLm1BKCl9S3MoKXtyZXR1cm4gdGhpcy5jb250YWluZXJUeXBlfXowKCl7cmV0dXJuIHRoaXMueTZ9fSwKUGM9ITEsUWpaPSExO3ZhciB3bj1jbGFzc3tjb25zdHJ1Y3RvcihuLFc9ITEpe3RoaXMuWGI9bjt0aGlzLk49Vzt0aGlzLko9ITF9ZGlzcG9zZSgpe2lmKCF0aGlzLnFOKCkpe2lmKHRoaXMuTil0cnl7VVJMLnJldm9rZU9iamVjdFVSTCh0aGlzLlhiKX1jYXRjaChuKXt9dGhpcy5KPSEwfX1xTigpe3JldHVybiB0aGlzLkp9Vygpe3JldHVybiB0aGlzLk59ZXF1YWxzKG4pe3JldHVybiBuIT09bnVsbCYmbi5YYj09PXRoaXMuWGJ9dG9TdHJpbmcoKXtyZXR1cm5gTWVkaWFSZXNvdXJjZSB7JHt0aGlzLlhifX1gfX07dmFyIGhaPWNsYXNzIGV4dGVuZHMgZy5GTXtjb25zdHJ1Y3RvcihuLFcsRD0hMSl7c3VwZXIoKTt0aGlzLm1lZGlhRWxlbWVudD1uO3RoaXMubWVkaWFTb3VyY2U9Vzt0aGlzLmlzVmlldz1EO3RoaXMuWT0wO3RoaXMuVj0hMTt0aGlzLks9ITA7dGhpcy5jSj0wO3RoaXMuY2FsbGJhY2s9bnVsbDt0aGlzLk89ITE7dGhpcy5tZWRpYVNvdXJjZXx8KHRoaXMuRVY9dGhpcy5tZWRpYUVsZW1lbnQuZV8oKSk7dGhpcy5ldmVudHM9bmV3IGcuRnModGhpcyk7Zy51KHRoaXMsdGhpcy5ldmVudHMpO3RoaXMuaj1uZXcgd24odGhpcy5tZWRpYVNvdXJjZT93aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTCh0aGlzLm1lZGlhU291cmNlKTp0aGlzLkVWLndlYmtpdE1lZGlhU291cmNlVVJMLCEwKTtuPXRoaXMubWVkaWFTb3VyY2V8fHRoaXMuRVY7S3kodGhpcy5ldmVudHMsbixbInNvdXJjZW9wZW4iLCJ3ZWJraXRzb3VyY2VvcGVuIl0sdGhpcy5TJCk7S3kodGhpcy5ldmVudHMsbixbInNvdXJjZWNsb3NlIiwKIndlYmtpdHNvdXJjZWNsb3NlIl0sdGhpcy5UQyk7dGhpcy5MTD17dXBkYXRlZW5kOnRoaXMuZVh9fXR3KCl7cmV0dXJuIHRoaXMuan1nZXREdXJhdGlvbigpe3JldHVybiB0aGlzLm1lZGlhU291cmNlPy5kdXJhdGlvbnx8dGhpcy5jSn1hVChuKXt0cnl7dGhpcy5tZWRpYVNvdXJjZT90aGlzLm1lZGlhU291cmNlLmR1cmF0aW9uPW46KHRoaXMuY0o9bix0aGlzLkVWLndlYmtpdFNvdXJjZVNldER1cmF0aW9uKG4pKX1jYXRjaChXKXt9fVgoKXtyZXR1cm4hIXRoaXMuTnx8ISF0aGlzLkp9UEEoKXt0cnl7cmV0dXJuIHRoaXMuVygpPT09ImNsb3NlZCJ9Y2F0Y2gobil7cmV0dXJuITB9fVcoKXtpZih0aGlzLm1lZGlhU291cmNlKXJldHVybiB0aGlzLm1lZGlhU291cmNlLnJlYWR5U3RhdGU7c3dpdGNoKHRoaXMuRVYud2Via2l0U291cmNlU3RhdGUpe2Nhc2UgdGhpcy5FVi5TT1VSQ0VfT1BFTjpyZXR1cm4ib3BlbiI7Y2FzZSB0aGlzLkVWLlNPVVJDRV9FTkRFRDpyZXR1cm4iZW5kZWQiOwpkZWZhdWx0OnJldHVybiJjbG9zZWQifX15dSgpe3JldHVybiEhKHRoaXMuTiYmdGhpcy5OLnl1KCl8fHRoaXMuSiYmdGhpcy5KLnl1KCkpfVMkKCl7IXRoaXMucU4oKSYmbjYodGhpcykmJnRoaXMuY2FsbGJhY2smJih0aGlzLmNhbGxiYWNrKHRoaXMpLHRoaXMuY2FsbGJhY2s9bnVsbCl9VEMoKXt0aGlzLmRpc3Bvc2UoKX1lWChuKXtESCYmIXRoaXMuViYmbi5nWCgpJiZuLlpGKCkubGVuZ3RoPT09MCYmKGJBKHRoaXMubWVkaWFFbGVtZW50LHtsOiJtc3dvdWUiLHNyOnRoaXMubWVkaWFFbGVtZW50LllhPy5wZygpfSwhMSksbi5oOSgpLHRoaXMuZ1goKXx8KHRoaXMubWVkaWFFbGVtZW50LkNGPSEwLHRoaXMubWVkaWFFbGVtZW50LnNldEN1cnJlbnRUaW1lKDApKSl9Y2xlYXIoKXtXRih0aGlzLCgpPT57fSk7CnRoaXMuTj8uY2xlYXIoKTt0aGlzLko/LmNsZWFyKCl9RCgpe3RoaXMuTj8uaDkoKTt0aGlzLko/Lmg5KCk7dGhpcy5LPSExfWdYKCl7cmV0dXJuIHRoaXMuSj8uZ1goKXx8dGhpcy5OPy5nWCgpfXRaKG4sVyl7cmV0dXJuISF0aGlzLk4mJiEhdGhpcy5KJiZ0aGlzLk4udFooVykmJnRoaXMuSi50WihuKX1iZCgpe3JldHVybiEhdGhpcy5tZWRpYVNvdXJjZSYmdGhpcy5tZWRpYVNvdXJjZS5zdHJlYW1pbmc9PT0hMX19LERIPSExO3ZhciBnR3I9L2FjdGlvbl9kaXNwbGF5X3Bvc3QvO2cuR3g9Y2xhc3MgZXh0ZW5kcyBnLkZpe2NvbnN0cnVjdG9yKG49IiIsVz1udWxsLEQ9ITEpe3N1cGVyKCk7dGhpcy5zb3VyY2VVcmw9bjt0aGlzLmlzTGl2ZVBsYXliYWNrPUQ7dGhpcy5ISj10aGlzLmR1cmF0aW9uPTA7dGhpcy5pc1ByZW1pZXJlPXRoaXMuWGc9dGhpcy5pc1dpbmRvd2VkTGl2ZT10aGlzLmlzTGl2ZUhlYWRQbGF5YWJsZT10aGlzLmlzTGl2ZT10aGlzLlc9ITE7dGhpcy5IUD10aGlzLkl0PTA7dGhpcy5pc090Zj10aGlzLnpXPSExO3RoaXMuUyQ9KDAsZy5SKSgpO3RoaXMuY0o9SW5maW5pdHk7dGhpcy5OPXt9O3RoaXMuSj1uZXcgTWFwO3RoaXMuc3RhdGU9dGhpcy5sTj0wO3RoaXMuVj1udWxsO3RoaXMuaXNNYW5pZmVzdGxlc3M9ITE7dGhpcy5iZD1bXTt0aGlzLks9bnVsbDt0aGlzLmUkPTA7dGhpcy5qPSIiO3RoaXMuVEM9TmFOO3RoaXMuSlU9dGhpcy5vUj10aGlzLnRpbWVzdGFtcE9mZnNldD10aGlzLkQ9MDt0aGlzLldNPXRoaXMuSDI9TmFOO3RoaXMuSVQ9MDsKdGhpcy5WUT10aGlzLk89ITE7dGhpcy5HQz1bXTt0aGlzLnZKPXt9O3RoaXMuUFg9dGhpcy50dz1OYU47dGhpcy5DdT1XPy5FcSgiaHRtbDVfdXNlX25ldHdvcmtfZXJyb3JfY29kZV9lbnVtcyIpO016PSEhVyYmVy5FcSgiaHRtbDVfbW9kZXJuX3ZwOV9taW1lX3R5cGUiKTtIRj0hIVc/LkVxKCJodG1sNV9lbmFibGVfZmx1c2hfZHVyaW5nX3NlZWsiKSYmZy5kOCgpO2Y2PSEhVz8uRXEoImh0bWw1X2VuYWJsZV9yZXNldF9hdWRpb19kZWNvZGVyIikmJmcuZDgoKX1pc0xvYWRpbmcoKXtyZXR1cm4gdGhpcy5zdGF0ZT09PTF9dG4oKXtyZXR1cm4gdGhpcy5zdGF0ZT09PTN9bnUoKXtyZXR1cm4gZy5EbCh0aGlzLk4sbj0+ISFuLmluZm8udmlkZW8mJm4uaW5mby52aWRlby5xdWFsaXR5T3JkaW5hbD49MjE2MCl9WCgpe3JldHVybiBnLkRsKHRoaXMuTixuPT4hIW4uaW5mby5jb250ZW50UHJvdGVjdGlvbil9eUUobil7dmFyIFc9bi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiUmVwcmVzZW50YXRpb24iKTsKaWYobi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiU2VnbWVudExpc3QiKS5sZW5ndGg+MHx8bi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiU2VnbWVudFRlbXBsYXRlIikubGVuZ3RoPjApe3RoaXMuelc9dGhpcy5XPSEwO3RoaXMuVnx8KHRoaXMuVj1uZXcga0xDKTtjSGoodGhpcy5WLG4pO3RoaXMuV0ooInJlZnJlc2giKTtmb3Iobj0wO248Vy5sZW5ndGg7bisrKXt2YXIgRD15Qyh0aGlzLFdbbl0pO2lmKCF0aGlzLk5bRC5pZF0pe3ZhciBiPVJ4KFRQKFdbbl0sIkJhc2VVUkwiKS50ZXh0Q29udGVudCksdj1UUChXW25dLCJJbml0aWFsaXphdGlvbiIpLGs9bFQodiwic291cmNlVVJMIik7dj1ueihsVCh2LCJyYW5nZSIpKTt0aGlzLk5bRC5pZF09bmV3IGR0KGIsRCxrLHYpfUQ9dGhpcy5OW0QuaWRdO2s9bFQoV1tuXSwiaWQiLCJBZGFwdGF0aW9uU2V0Iik7az1rIT09IiI/azpsVChXW25dLCJtaW1ldHlwZSIsIkFkYXB0YXRpb25TZXQiKTtiPXRoaXMuVjtrPWIuV1tELmluZm8uaWRdfHxiLkpba118fApiLk58fG51bGw7Yj1rLk47IXRoaXMuRCYmay5nZXRTdHJlYW1UaW1lT2Zmc2V0KCkmJih0aGlzLkQ9ay5nZXRTdHJlYW1UaW1lT2Zmc2V0KCkpO2lmKGsuail7dj1bXTtmb3IodmFyIGggb2YgYil7Yj1ELmluZm8uaWQ7dmFyIHg9RC5pbmZvLk5zKjgsTD1oLmokLGU9aC5zdGFydFNlY3MsRz1rLksuc3BsaXQoIiQkIik7Zm9yKHZhciByPTA7cjxHLmxlbmd0aDtyKyspR1tyXT1HW3JdLnJlcGxhY2UoIiRSZXByZXNlbnRhdGlvbklEJCIsYiksR1tyXT1HW3JdLnJlcGxhY2UoIiROdW1iZXIkIixMLnRvU3RyaW5nKCkpLEdbcl09R1tyXS5yZXBsYWNlKCIkQmFuZHdpZHRoJCIseC50b1N0cmluZygpKSxHW3JdPUdbcl0ucmVwbGFjZSgiJFRpbWUkIixlLnRvU3RyaW5nKCkpO2I9Ry5qb2luKCIkIik7di5wdXNoKG5ldyBSNChoLmokLGguc3RhcnRTZWNzLGguQ2YsaC5OLGIsbnVsbCxoLkopKX1iPXZ9ZWxzZXtMPVYyKFRQKFdbbl0sIlNlZ21lbnRMaXN0IikuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIlNlZ21lbnRVUkwiKSwKay5WKTtlPVtdO2ZvcihHPTA7RzxMLmxlbmd0aDtHKyspe2s9ZTt2PWsucHVzaDtyPXZvaWQgMDt2YXIgTj1MW0ddO3g9YltHXTtsZXQgSD1OLmdldEF0dHJpYnV0ZSgibWVkaWEiKTtpZihOPU4uZ2V0QXR0cmlidXRlKCJtZWRpYVJhbmdlIikpe2xldCBBPU4uc3BsaXQoIi0iKTtBWzFdJiZOdW1iZXIoQVsxXSk+PTA/cj1ueihOKTpIPWAke0h9P3JhbmdlPSR7Tn1gfXYuY2FsbChrLG5ldyBSNCh4LmokLHguc3RhcnRTZWNzLHguQ2YseC5OLEgscix4LkopKX1iPWV9RC51cGRhdGUoYix0aGlzLmlzTGl2ZSx0aGlzLkhKKX1hRFUodGhpcy5WKTtyZXR1cm4hMH10aGlzLmR1cmF0aW9uPWp4KGxUKG4sIm1lZGlhUHJlc2VudGF0aW9uRHVyYXRpb24iKSk7YTp7Zm9yKGg9MDtoPFcubGVuZ3RoO2grKyl7Yj1XW2hdO249eUModGhpcyxiKTtEPVJ4KFRQKGIsIkJhc2VVUkwiKS50ZXh0Q29udGVudCk7az1UUChiLCJTZWdtZW50QmFzZSIpO2I9bnooay5hdHRyaWJ1dGVzLmdldE5hbWVkSXRlbSgiaW5kZXhSYW5nZSIpLnZhbHVlKTsKaz1ueihrLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJJbml0aWFsaXphdGlvbiIpWzBdLmF0dHJpYnV0ZXMuZ2V0TmFtZWRJdGVtKCJyYW5nZSIpLnZhbHVlKTtuPW5ldyBzayhELG4sayxiKTtpZighbil7Vz0hMTticmVhayBhfSRnKHRoaXMsbil9Vz0hMH1yZXR1cm4gV31EdChuKXtyZXR1cm4gdGhpcy5WP1YyKHRoaXMuVi5YLG4pOnRoaXMuYmQubGVuZ3RoP1YyKHRoaXMuYmQsbik6W119cmVmcmVzaCgpe2lmKCF0aGlzLmlzTG9hZGluZygpJiYhdGhpcy5xTigpKXt2YXIgbj1nLkVUKHRoaXMuc291cmNlVXJsLHtzdGFydF9zZXE6QSRpKHRoaXMpLnRvU3RyaW5nKCl9KTtTNCh0aGlzLG4pLnNQKCgpPT57fSl9fXN1c3BlbmQoKXt0aGlzLksmJnRoaXMuSy5zdG9wKCl9cmVzdW1lKCl7QVoodGhpcyl9ckkoKXtpZih0aGlzLmlzTWFuaWZlc3RsZXNzJiZ0aGlzLmlzV2luZG93ZWRMaXZlJiZpQSh0aGlzKSlyZXR1cm4gaUEodGhpcyk7CnZhciBuPXRoaXMuTixXPSExLEQ9TmFOLGI9TmFOO2ZvcihsZXQgayBpbiBuKXtsZXQgaD1uW2tdO3ZhciB2PWguaW5kZXg7aWYoIXYuaXNMb2FkZWQoKXx8aC5pbmZvLk4oKSljb250aW51ZTtoLlYmJihXPSEwKTt2PXYuYlEoKTtoLmluZm8uZVMoKSYmKGlzTmFOKEQpfHx2PEQpP0Q9djpoLmluZm8uZlkoKSYmKGlzTmFOKGIpfHx2PGIpJiYoYj12KX1yZXR1cm4gV3x8aXNOYU4oYik/RDpNYXRoLm1pbihELGIpfUxmKCl7aWYodGhpcy5pc01hbmlmZXN0bGVzcyl7aWYodUEodGhpcykpcmV0dXJuIHVBKHRoaXMpO2lmKHRoaXMuSVQpe3ZhciBuPXRoaXMuaEModGhpcy5ySSgpKTtpZihuJiYobi09dGhpcy5JVCxuPjApKXJldHVybiB0aGlzLnJJKCktbn19bj10aGlzLk47Zm9yKGxldCBXIGluIG4pe2xldCBEPW5bV10uaW5kZXg7aWYoRC5pc0xvYWRlZCgpJiYhbltXXS5pbmZvLk4oKSlyZXR1cm4gRC5MZigpfXJldHVybiAwfWdldFN0cmVhbVRpbWVPZmZzZXQoKXtyZXR1cm4gdGhpcy5EfWhDKG4pe2ZvcihsZXQgVyBpbiB0aGlzLk4pe2xldCBEPQp0aGlzLk5bV10uaW5kZXg7aWYoRC5pc0xvYWRlZCgpKXtsZXQgYj1ELlIzKG4pLHY9RC5oQyhiKTtpZih2KXJldHVybiB2K24tRC5nZXRTdGFydFRpbWUoYil9fXJldHVybiBOYU59cWgoKXtyZXR1cm4gdGhpcy5lJH1qVygpe2ZvcihsZXQgbiBpbiB0aGlzLk4pdGhpcy5OLmhhc093blByb3BlcnR5KG4pJiYodGhpcy5OW25dLko9bnVsbCx0aGlzLk5bbl0uY0o9ITEpfX07Zy5HeC5wcm90b3R5cGUuRkY9V1ooNCk7dmFyIE16LEhGLGY2LHd0PW51bGwsUm89ISFuYXZpZ2F0b3IubWVkaWFDYXBhYmlsaXRpZXM/LmRlY29kaW5nSW5mbyxVaz17Y29tbWVudGFyeToxLGFsdGVybmF0ZToyLGR1YjozLG1haW46NH07dmFyIGNGPW5ldyBTZXQsUUM9bmV3IE1hcDt2YXIgUGVNPWNsYXNze2NvbnN0cnVjdG9yKG4pe3RoaXMueVE9bjt0aGlzLk5kPXRoaXMuYnY9dGhpcy5ISj10aGlzLlY9dGhpcy5qPXRoaXMuSGk9dGhpcy5HQz10aGlzLmNKPSExO3RoaXMuWT10aGlzLks9MDt0aGlzLkN1PSExO3RoaXMudHc9ITA7dGhpcy5QWD0hMTt0aGlzLm5TPTA7dGhpcy5GRj10aGlzLm51PXRoaXMub0w9dGhpcy5lJD0hMTt0aGlzLk49e307dGhpcy5qVz10aGlzLlJhPXRoaXMudlg9dGhpcy5kaXNhYmxlQXYxPXRoaXMuYmQ9dGhpcy5Rcj10aGlzLnlFPXRoaXMuWVo9dGhpcy5CVj10aGlzLko9dGhpcy5XPXRoaXMuRD0hMTt0aGlzLlMkPTA7dGhpcy5UQz0hMTt0aGlzLnM1PXRoaXMueVEuUygiaHRtbDVfZGlzYWJsZV9hYWNfcHJlZmVyZW5jZSIpO3RoaXMud2E9SW5maW5pdHk7dGhpcy54ZD0wO3RoaXMuTEI9dGhpcy55US5XWCgpO3RoaXMuSEQ9dGhpcy55US5leHBlcmltZW50cy5FcSgiaHRtbDVfZW5hYmxlX3ZwOV9mYWlycGxheSIpO3RoaXMuTWQ9dGhpcy55US5TKCJodG1sNV9mb3JjZV9hdjFfZm9yX3Rlc3RpbmciKTsKdGhpcy55dz10aGlzLnlRLlp0KCkuTi5RUShWSWopO3RoaXMudko9Zy5kTSh0aGlzLnlRLmV4cGVyaW1lbnRzLCJodG1sNV9hdjFfb3JkaW5hbF9jYXAiKTt0aGlzLlU1PXRoaXMueVEuUygiaHRtbDVfZGlzYWJsZV9oZnJfd2hlbl92cDlfZW5jcnlwdGVkXzJrNGtfdW5zdXBwb3J0ZWQiKTt0aGlzLkU1PXRoaXMueVEuUygiaHRtbDVfYWNjb3VudF9vbmVzaWVfZm9ybWF0X3NlbGVjdGlvbl9kdXJpbmdfZm9ybWF0X2ZpbHRlciIpO3RoaXMuTnM9Zy5kTSh0aGlzLnlRLmV4cGVyaW1lbnRzLCJodG1sNV9tYXhfYnl0ZXJhdGUiKTt0aGlzLlZRPXRoaXMueVEuUygiaHRtbDVfZW5hYmxlX2lhbWZfYXVkaW8iKTt0aGlzLmZCPXRoaXMueVEuWnQoKS5OLlFRKFFPeCk7dGhpcy5EdD10aGlzLnlRLmV4cGVyaW1lbnRzLkVxKCJodG1sNV9hbGxvd19jYXBhYmlsaXR5X21lcmdlIik7dGhpcy5ZJD10aGlzLnlRLlMoImh0bWw1X2VuYWJsZV9lbmNyeXB0ZWRfYXYxIik7dGhpcy5ZWj10aGlzLnlRLlp0KCkuTi5RUShaN1UpfHwKdGhpcy55US5TKCJkaXNhYmxlX3ByZWZlcl9oYnJfdnA5Iil9fTt2YXIgcjE9Y2xhc3N7Y29uc3RydWN0b3IobixXLEQsYil7dGhpcy5mbGF2b3I9bjt0aGlzLmtleVN5c3RlbT1XO3RoaXMuVz1EO3RoaXMuZXhwZXJpbWVudHM9Yjt0aGlzLko9e307dGhpcy5DaT10aGlzLmtleVN5c3RlbUFjY2Vzcz1udWxsO3RoaXMuamk9dGhpcy5WOT0tMTt0aGlzLkZjPW51bGw7dGhpcy5YPSEhYiYmYi5FcSgiZWRnZV9ub25wcmVmaXhlZF9lbWUiKTtiJiZiLkVxKCJodG1sNV9lbmFibGVfdnA5X2ZhaXJwbGF5Iil9Y2xvbmUobil7cmV0dXJuIG5ldyByMSh0aGlzLmZsYXZvcixuLHRoaXMuVyx0aGlzLmV4cGVyaW1lbnRzKX1OKCl7cmV0dXJuIHRoaXMua2V5U3lzdGVtPT09ImNvbS55b3V0dWJlLmZhaXJwbGF5LnNiZGwifXlyKCl7cmV0dXJue2ZsYXZvcjp0aGlzLmZsYXZvcixrZXlTeXN0ZW06dGhpcy5rZXlTeXN0ZW19fWtMKCl7c3dpdGNoKHRoaXMua2V5U3lzdGVtKXtjYXNlICJjb20ueW91dHViZS5wbGF5cmVhZHkiOnJldHVybiJQUlkiO2Nhc2UgImNvbS5taWNyb3NvZnQucGxheXJlYWR5IjpyZXR1cm4iUFJNIjsKY2FzZSAiY29tLndpZGV2aW5lLmFscGhhIjpyZXR1cm4iV1ZBIjtjYXNlICJjb20ueW91dHViZS53aWRldmluZS5sMyI6cmV0dXJuIldWWSI7Y2FzZSAiY29tLnlvdXR1YmUuZmFpcnBsYXkiOnJldHVybiJGUFkiO2Nhc2UgImNvbS55b3V0dWJlLmZhaXJwbGF5LnNiZGwiOnJldHVybiJGUEMiO2Nhc2UgImNvbS5hcHBsZS5mcHMuMV8wIjpyZXR1cm4iRlBBIjtkZWZhdWx0OnJldHVybiB0aGlzLmtleVN5c3RlbX19fSxxVj17cGxheXJlYWR5OlsiY29tLnlvdXR1YmUucGxheXJlYWR5IiwiY29tLm1pY3Jvc29mdC5wbGF5cmVhZHkiXSx3aWRldmluZTpbImNvbS55b3V0dWJlLndpZGV2aW5lLmwzIiwiY29tLndpZGV2aW5lLmFscGhhIl19LHZRQz17d2lkZXZpbmU6IkRSTV9TWVNURU1fV0lERVZJTkUiLGZhaXJwbGF5OiJEUk1fU1lTVEVNX0ZBSVJQTEFZIixwbGF5cmVhZHk6IkRSTV9TWVNURU1fUExBWVJFQURZIn0seFZpPXt3aWRldmluZToxLGZhaXJwbGF5OjIscGxheXJlYWR5OjN9O3ZhciBaV1M9Y2xhc3MgZXh0ZW5kcyBnLkZNe2NvbnN0cnVjdG9yKG4sVyxELGI9ITEsdil7c3VwZXIoKTt0aGlzLnlRPVc7dGhpcy51c2VDb2JhbHRXaWRldmluZT1iO3RoaXMuVT12O3RoaXMuSj1bXTt0aGlzLlc9e307dGhpcy5OPXt9O3RoaXMuY2FsbGJhY2s9bnVsbDt0aGlzLmo9ITE7dGhpcy5YPVtdO3RoaXMuaW5pdGlhbGl6ZShuLCFEKX1pbml0aWFsaXplKG4sVyl7Zm9yKGxldCBiIG9mIE9iamVjdC5rZXlzKG4pKXt2YXIgRD1iO2ZvcihsZXQgdiBvZiBuW0RdKWlmKHYuY29udGVudFByb3RlY3Rpb24pZm9yKGxldCBrIG9mIE9iamVjdC5rZXlzKHYuY29udGVudFByb3RlY3Rpb24pKXtEPWs7bGV0IGg9cVZba107IWgmJnRoaXMuUygiaHRtbA=="}},"time_used":48,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":19,"receive":29,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coin-images.coingecko.com/coins/images/2/large/litecoin.png?1696501400","fqdn":"coin-images.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.800Z","timestamp":1785143926800,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /coins/images/2/large/litecoin.png?1696501400 HTTP/1.1\r\nHost: coin-images.coingecko.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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\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-11T07:57:31.65745Z","times_seen":17832625,"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":"cdn.jsdelivr.net/npm/sweetalert2@10","fqdn":"cdn.jsdelivr.net","domain":"jsdelivr.net","tld":"net"},"ip":{"addr":"151.101.129.229","port":443,"asn":54113,"as":"FASTLY","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.272Z","timestamp":1785143908272,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"jsdelivr.net","organization":""},"issuer":{"commonName":"GlobalSign Atlas R3 DV TLS CA 2026 Q2","organization":"GlobalSign nv-sa"},"validity":{"start":"Wed, 20 May 2026 15:48:47 GMT","end":"Sat, 05 Dec 2026 14:48:47 GMT"},"fingerprint":{"sha1":"D4:05:C2:EC:C7:EE:2B:D0:08:68:0D:3D:33:77:48:78:43:E7:D1:E1","sha256":"ED:84:90:EE:71:BC:6B:5E:B3:D2:50:B0:23:3A:06:0D:E0:50:C6:B6:A9:09:36:E6:CE:FE:E8:66:89:EB:4E:C5"}}},"request":{"raw":"GET /npm/sweetalert2@10 HTTP/1.1\r\nHost: cdn.jsdelivr.net\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://scromegatrade.com/\r\nSec-Fetch-Dest: script\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":"HTTP/2 200 \r\naccess-control-allow-origin: *\r\naccess-control-expose-headers: *\r\ntiming-allow-origin: *\r\ncache-control: public, max-age=604800, s-maxage=43200\r\ncross-origin-resource-policy: cross-origin\r\nx-content-type-options: nosniff\r\nstrict-transport-security: max-age=31536000; includeSubDomains; preload\r\ncontent-type: application/javascript; charset=utf-8\r\nx-jsd-version: 10.16.11\r\nx-jsd-version-type: version\r\netag: W/\"11dc8-k2jefS6LDTNa26qxcRQ+MH7V+1Q\"\r\ncontent-encoding: br\r\naccept-ranges: bytes\r\ndate: Mon, 27 Jul 2026 09:18:28 GMT\r\nage: 22171\r\nx-served-by: cache-fra-etou8220190-FRA, cache-bma-essb1270068-BMA\r\nx-cache: HIT, HIT\r\nvary: Accept-Encoding\r\nalt-svc: h3=\":443\";ma=86400,h3-29=\":443\";ma=86400,h3-27=\":443\";ma=86400\r\ncontent-length: 19921\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":73160,"size_decoded":20701,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (48449)","md5":"78f9abf2d03f7ee6a755e0178d41f2f8","sha1":"9368de7d2e8b0d335adbaab171143e307ed5fb54","sha256":"2d5fa531e30ac3debad673003128f1ca9ad3c964ef17b547377e7ed09bd4504f","sha512":"c138cdbcc824524cbd5cbfa8edf966acf66462916349a5d9539723c6f5f10f44357059cc28ddbb95d50d3e17710e9f533bebb658d82527d980804b8a3a31f9d1","ssdeep":"768:hrDTClRYf9tFz5XKuaJuZMpDaIi0oO3vYCRuB+MJ534ywu9uqkjwxRXCKVNTeccy:hbCzItFzdZIBj3AvB+MJ5ocC3WsRw9","tlshash":"ce630689b6403133aaab4174659be60db6b56515fc330c18f128d0d84ffbd8e6273bb9","first_seen":"2023-03-08T15:12:56Z","last_seen":"2026-08-10T18:41:09.11469Z","times_seen":2297,"resource_available":true,"data":"IWZ1bmN0aW9uKHQsZSl7Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiYidW5kZWZpbmVkIiE9dHlwZW9mIG1vZHVsZT9tb2R1bGUuZXhwb3J0cz1lKCk6ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoZSk6KHQ9dHx8c2VsZikuU3dlZXRhbGVydDI9ZSgpfSh0aGlzLGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIodCl7cmV0dXJuKHI9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIHR9KSh0KX1mdW5jdGlvbiBhKHQsZSl7aWYoISh0IGluc3RhbmNlb2YgZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9ZnVuY3Rpb24gbyh0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgbz1lW25dO28uZW51bWVyYWJsZT1vLmVudW1lcmFibGV8fCExLG8uY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBvJiYoby53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsby5rZXksbyl9fWZ1bmN0aW9uIHUodCxlLG4pe3JldHVybiBlJiZvKHQucHJvdG90eXBlLGUpLG4mJm8odCxuKSx0fWZ1bmN0aW9uIHMoKXtyZXR1cm4ocz1PYmplY3QuYXNzaWdufHxmdW5jdGlvbih0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgbixvPWFyZ3VtZW50c1tlXTtmb3IobiBpbiBvKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvLG4pJiYodFtuXT1vW25dKX1yZXR1cm4gdH0pLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1mdW5jdGlvbiBjKHQpe3JldHVybihjPU9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3QuZ2V0UHJvdG90eXBlT2Y6ZnVuY3Rpb24odCl7cmV0dXJuIHQuX19wcm90b19ffHxPYmplY3QuZ2V0UHJvdG90eXBlT2YodCl9KSh0KX1mdW5jdGlvbiBsKHQsZSl7cmV0dXJuKGw9T2JqZWN0LnNldFByb3RvdHlwZU9mfHxmdW5jdGlvbih0LGUpe3JldHVybiB0Ll9fcHJvdG9fXz1lLHR9KSh0LGUpfWZ1bmN0aW9uIGQoKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIFJlZmxlY3R8fCFSZWZsZWN0LmNvbnN0cnVjdClyZXR1cm4hMTtpZihSZWZsZWN0LmNvbnN0cnVjdC5zaGFtKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBQcm94eSlyZXR1cm4hMDt0cnl7cmV0dXJuIEJvb2xlYW4ucHJvdG90eXBlLnZhbHVlT2YuY2FsbChSZWZsZWN0LmNvbnN0cnVjdChCb29sZWFuLFtdLGZ1bmN0aW9uKCl7fSkpLCEwfWNhdGNoKHQpe3JldHVybiExfX1mdW5jdGlvbiBpKHQsZSxuKXtyZXR1cm4oaT1kKCk/UmVmbGVjdC5jb25zdHJ1Y3Q6ZnVuY3Rpb24odCxlLG4pe3ZhciBvPVtudWxsXTtvLnB1c2guYXBwbHkobyxlKTtvPW5ldyhGdW5jdGlvbi5iaW5kLmFwcGx5KHQsbykpO3JldHVybiBuJiZsKG8sbi5wcm90b3R5cGUpLG99KS5hcHBseShudWxsLGFyZ3VtZW50cyl9ZnVuY3Rpb24gcCh0LGUpe3JldHVybiFlfHwib2JqZWN0IiE9dHlwZW9mIGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlP2Z1bmN0aW9uKHQpe2lmKHZvaWQgMD09PXQpdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKCJ0aGlzIGhhc24ndCBiZWVuIGluaXRpYWxpc2VkIC0gc3VwZXIoKSBoYXNuJ3QgYmVlbiBjYWxsZWQiKTtyZXR1cm4gdH0odCk6ZX1mdW5jdGlvbiBmKHQsZSxuKXtyZXR1cm4oZj0idW5kZWZpbmVkIiE9dHlwZW9mIFJlZmxlY3QmJlJlZmxlY3QuZ2V0P1JlZmxlY3QuZ2V0OmZ1bmN0aW9uKHQsZSxuKXt0PWZ1bmN0aW9uKHQsZSl7Zm9yKDshT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsZSkmJm51bGwhPT0odD1jKHQpKTspO3JldHVybiB0fSh0LGUpO2lmKHQpe2U9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpO3JldHVybiBlLmdldD9lLmdldC5jYWxsKG4pOmUudmFsdWV9fSkodCxlLG58fHQpfWZ1bmN0aW9uIG0odCl7cmV0dXJuIHQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrdC5zbGljZSgxKX1mdW5jdGlvbiBoKGUpe3JldHVybiBPYmplY3Qua2V5cyhlKS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIGVbdF19KX1mdW5jdGlvbiBnKHQpe3JldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh0KX1mdW5jdGlvbiB2KHQsZSl7ZT0nIicuY29uY2F0KHQsJyIgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHJlbGVhc2UuIFBsZWFzZSB1c2UgIicpLmNvbmNhdChlLCciIGluc3RlYWQuJyksLTE9PT1ZLmluZGV4T2YoZSkmJihZLnB1c2goZSksVyhlKSl9ZnVuY3Rpb24gYih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIHQudG9Qcm9taXNlfWZ1bmN0aW9uIHkodCl7cmV0dXJuIGIodCk/dC50b1Byb21pc2UoKTpQcm9taXNlLnJlc29sdmUodCl9ZnVuY3Rpb24gdyh0KXtyZXR1cm4gdCYmUHJvbWlzZS5yZXNvbHZlKHQpPT09dH1mdW5jdGlvbiBDKHQpe3JldHVybiB0IGluc3RhbmNlb2YgRWxlbWVudHx8Im9iamVjdCI9PT1yKHQ9dCkmJnQuanF1ZXJ5fWZ1bmN0aW9uIGsoKXtyZXR1cm4gZG9jdW1lbnQuYm9keS5xdWVyeVNlbGVjdG9yKCIuIi5jb25jYXQoSi5jb250YWluZXIpKX1mdW5jdGlvbiBlKHQpe3ZhciBlPWsoKTtyZXR1cm4gZT9lLnF1ZXJ5U2VsZWN0b3IodCk6bnVsbH1mdW5jdGlvbiB0KHQpe3JldHVybiBlKCIuIi5jb25jYXQodCkpfWZ1bmN0aW9uIEEoKXtyZXR1cm4gdChKLnBvcHVwKX1mdW5jdGlvbiB4KCl7cmV0dXJuIHQoSi5pY29uKX1mdW5jdGlvbiBCKCl7cmV0dXJuIHQoSi50aXRsZSl9ZnVuY3Rpb24gUCgpe3JldHVybiB0KEouY29udGVudCl9ZnVuY3Rpb24gRSgpe3JldHVybiB0KEpbImh0bWwtY29udGFpbmVyIl0pfWZ1bmN0aW9uIE8oKXtyZXR1cm4gdChKLmltYWdlKX1mdW5jdGlvbiBuKCl7cmV0dXJuIHQoSlsicHJvZ3Jlc3Mtc3RlcHMiXSl9ZnVuY3Rpb24gUygpe3JldHVybiB0KEpbInZhbGlkYXRpb24tbWVzc2FnZSJdKX1mdW5jdGlvbiBUKCl7cmV0dXJuIGUoIi4iLmNvbmNhdChKLmFjdGlvbnMsIiAuIikuY29uY2F0KEouY29uZmlybSkpfWZ1bmN0aW9uIEwoKXtyZXR1cm4gZSgiLiIuY29uY2F0KEouYWN0aW9ucywiIC4iKS5jb25jYXQoSi5kZW55KSl9ZnVuY3Rpb24gRCgpe3JldHVybiBlKCIuIi5jb25jYXQoSi5sb2FkZXIpKX1mdW5jdGlvbiBxKCl7cmV0dXJuIGUoIi4iLmNvbmNhdChKLmFjdGlvbnMsIiAuIikuY29uY2F0KEouY2FuY2VsKSl9ZnVuY3Rpb24gSSgpe3JldHVybiB0KEouYWN0aW9ucyl9ZnVuY3Rpb24gaigpe3JldHVybiB0KEouaGVhZGVyKX1mdW5jdGlvbiBNKCl7cmV0dXJuIHQoSi5mb290ZXIpfWZ1bmN0aW9uIEgoKXtyZXR1cm4gdChKWyJ0aW1lci1wcm9ncmVzcy1iYXIiXSl9ZnVuY3Rpb24gVigpe3JldHVybiB0KEouY2xvc2UpfWZ1bmN0aW9uIFIoKXt2YXIgdD1nKEEoKS5xdWVyeVNlbGVjdG9yQWxsKCdbdGFiaW5kZXhdOm5vdChbdGFiaW5kZXg9Ii0xIl0pOm5vdChbdGFiaW5kZXg9IjAiXSknKSkuc29ydChmdW5jdGlvbih0LGUpe3JldHVybiB0PXBhcnNlSW50KHQuZ2V0QXR0cmlidXRlKCJ0YWJpbmRleCIpKSwoZT1wYXJzZUludChlLmdldEF0dHJpYnV0ZSgidGFiaW5kZXgiKSkpPHQ/MTp0PGU/LTE6MH0pLGU9ZyhBKCkucXVlcnlTZWxlY3RvckFsbCgnXG4gIGFbaHJlZl0sXG4gIGFyZWFbaHJlZl0sXG4gIGlucHV0Om5vdChbZGlzYWJsZWRdKSxcbiAgc2VsZWN0Om5vdChbZGlzYWJsZWRdKSxcbiAgdGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pLFxuICBidXR0b246bm90KFtkaXNhYmxlZF0pLFxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIFt0YWJpbmRleD0iMCJdLFxuICBbY29udGVudGVkaXRhYmxlXSxcbiAgYXVkaW9bY29udHJvbHNdLFxuICB2aWRlb1tjb250cm9sc10sXG4gIHN1bW1hcnlcbicpKS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIi0xIiE9PXQuZ2V0QXR0cmlidXRlKCJ0YWJpbmRleCIpfSk7cmV0dXJuIGZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1bXSxuPTA7bjx0Lmxlbmd0aDtuKyspLTE9PT1lLmluZGV4T2YodFtuXSkmJmUucHVzaCh0W25dKTtyZXR1cm4gZX0odC5jb25jYXQoZSkpLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gd3QodCl9KX1mdW5jdGlvbiBOKCl7cmV0dXJuIUcoKSYmIWRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmNvbnRhaW5zKEpbIm5vLWJhY2tkcm9wIl0pfWZ1bmN0aW9uIFUoZSx0KXtlLnRleHRDb250ZW50PSIiLHQmJih0PShuZXcgRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcodCwidGV4dC9odG1sIiksZyh0LnF1ZXJ5U2VsZWN0b3IoImhlYWQiKS5jaGlsZE5vZGVzKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe2UuYXBwZW5kQ2hpbGQodCl9KSxnKHQucXVlcnlTZWxlY3RvcigiYm9keSIpLmNoaWxkTm9kZXMpLmZvckVhY2goZnVuY3Rpb24odCl7ZS5hcHBlbmRDaGlsZCh0KX0pKX1mdW5jdGlvbiBGKHQsZSl7aWYoZSl7Zm9yKHZhciBuPWUuc3BsaXQoL1xzKy8pLG89MDtvPG4ubGVuZ3RoO28rKylpZighdC5jbGFzc0xpc3QuY29udGFpbnMobltvXSkpcmV0dXJuO3JldHVybiAxfX1mdW5jdGlvbiBfKHQsZSxuKXt2YXIgbyxpO2lmKGk9ZSxnKChvPXQpLmNsYXNzTGlzdCkuZm9yRWFjaChmdW5jdGlvbih0KXstMT09PWgoSikuaW5kZXhPZih0KSYmLTE9PT1oKFgpLmluZGV4T2YodCkmJi0xPT09aChpLnNob3dDbGFzcykuaW5kZXhPZih0KSYmby5jbGFzc0xpc3QucmVtb3ZlKHQpfSksZS5jdXN0b21DbGFzcyYmZS5jdXN0b21DbGFzc1tuXSl7aWYoInN0cmluZyIhPXR5cGVvZiBlLmN1c3RvbUNsYXNzW25dJiYhZS5jdXN0b21DbGFzc1tuXS5mb3JFYWNoKXJldHVybiBXKCJJbnZhbGlkIHR5cGUgb2YgY3VzdG9tQ2xhc3MuIi5jb25jYXQobiwnISBFeHBlY3RlZCBzdHJpbmcgb3IgaXRlcmFibGUgb2JqZWN0LCBnb3QgIicpLmNvbmNhdChyKGUuY3VzdG9tQ2xhc3Nbbl0pLCciJykpO3Z0KHQsZS5jdXN0b21DbGFzc1tuXSl9fXZhciB6PSJTd2VldEFsZXJ0MjoiLFc9ZnVuY3Rpb24odCl7Y29uc29sZS53YXJuKCIiLmNvbmNhdCh6LCIgIikuY29uY2F0KCJvYmplY3QiPT09cih0KT90LmpvaW4oIiAiKTp0KSl9LEs9ZnVuY3Rpb24odCl7Y29uc29sZS5lcnJvcigiIi5jb25jYXQoeiwiICIpLmNvbmNhdCh0KSl9LFk9W10sWj1mdW5jdGlvbih0KXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdD90KCk6dH0sUT1PYmplY3QuZnJlZXplKHtjYW5jZWw6ImNhbmNlbCIsYmFja2Ryb3A6ImJhY2tkcm9wIixjbG9zZToiY2xvc2UiLGVzYzoiZXNjIix0aW1lcjoidGltZXIifSksJD1mdW5jdGlvbih0KXt2YXIgZSxuPXt9O2ZvcihlIGluIHQpblt0W2VdXT0ic3dhbDItIit0W2VdO3JldHVybiBufSxKPSQoWyJjb250YWluZXIiLCJzaG93biIsImhlaWdodC1hdXRvIiwiaW9zZml4IiwicG9wdXAiLCJtb2RhbCIsIm5vLWJhY2tkcm9wIiwibm8tdHJhbnNpdGlvbiIsInRvYXN0IiwidG9hc3Qtc2hvd24iLCJzaG93IiwiaGlkZSIsImNsb3NlIiwidGl0bGUiLCJoZWFkZXIiLCJjb250ZW50IiwiaHRtbC1jb250YWluZXIiLCJhY3Rpb25zIiwiY29uZmlybSIsImRlbnkiLCJjYW5jZWwiLCJmb290ZXIiLCJpY29uIiwiaWNvbi1jb250ZW50IiwiaW1hZ2UiLCJpbnB1dCIsImZpbGUiLCJyYW5nZSIsInNlbGVjdCIsInJhZGlvIiwiY2hlY2tib3giLCJsYWJlbCIsInRleHRhcmVhIiwiaW5wdXRlcnJvciIsImlucHV0LWxhYmVsIiwidmFsaWRhdGlvbi1tZXNzYWdlIiwicHJvZ3Jlc3Mtc3RlcHMiLCJhY3RpdmUtcHJvZ3Jlc3Mtc3RlcCIsInByb2dyZXNzLXN0ZXAiLCJwcm9ncmVzcy1zdGVwLWxpbmUiLCJsb2FkZXIiLCJsb2FkaW5nIiwic3R5bGVkIiwidG9wIiwidG9wLXN0YXJ0IiwidG9wLWVuZCIsInRvcC1sZWZ0IiwidG9wLXJpZ2h0IiwiY2VudGVyIiwiY2VudGVyLXN0YXJ0IiwiY2VudGVyLWVuZCIsImNlbnRlci1sZWZ0IiwiY2VudGVyLXJpZ2h0IiwiYm90dG9tIiwiYm90dG9tLXN0YXJ0IiwiYm90dG9tLWVuZCIsImJvdHRvbS1sZWZ0IiwiYm90dG9tLXJpZ2h0IiwiZ3Jvdy1yb3ciLCJncm93LWNvbHVtbiIsImdyb3ctZnVsbHNjcmVlbiIsInJ0bCIsInRpbWVyLXByb2dyZXNzLWJhciIsInRpbWVyLXByb2dyZXNzLWJhci1jb250YWluZXIiLCJzY3JvbGxiYXItbWVhc3VyZSIsImljb24tc3VjY2VzcyIsImljb24td2FybmluZyIsImljb24taW5mbyIsImljb24tcXVlc3Rpb24iLCJpY29uLWVycm9yIl0pLFg9JChbInN1Y2Nlc3MiLCJ3YXJuaW5nIiwiaW5mbyIsInF1ZXN0aW9uIiwiZXJyb3IiXSksRz1mdW5jdGlvbigpe3JldHVybiBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5jb250YWlucyhKWyJ0b2FzdC1zaG93biJdKX0sdHQ9e3ByZXZpb3VzQm9keVBhZGRpbmc6bnVsbH07ZnVuY3Rpb24gZXQodCxlKXtpZighZSlyZXR1cm4gbnVsbDtzd2l0Y2goZSl7Y2FzZSJzZWxlY3QiOmNhc2UidGV4dGFyZWEiOmNhc2UiZmlsZSI6cmV0dXJuIHl0KHQsSltlXSk7Y2FzZSJjaGVja2JveCI6cmV0dXJuIHQucXVlcnlTZWxlY3RvcigiLiIuY29uY2F0KEouY2hlY2tib3gsIiBpbnB1dCIpKTtjYXNlInJhZGlvIjpyZXR1cm4gdC5xdWVyeVNlbGVjdG9yKCIuIi5jb25jYXQoSi5yYWRpbywiIGlucHV0OmNoZWNrZWQiKSl8fHQucXVlcnlTZWxlY3RvcigiLiIuY29uY2F0KEoucmFkaW8sIiBpbnB1dDpmaXJzdC1jaGlsZCIpKTtjYXNlInJhbmdlIjpyZXR1cm4gdC5xdWVyeVNlbGVjdG9yKCIuIi5jb25jYXQoSi5yYW5nZSwiIGlucHV0IikpO2RlZmF1bHQ6cmV0dXJuIHl0KHQsSi5pbnB1dCl9fWZ1bmN0aW9uIG50KHQpe3ZhciBlO3QuZm9jdXMoKSwiZmlsZSIhPT10LnR5cGUmJihlPXQudmFsdWUsdC52YWx1ZT0iIix0LnZhbHVlPWUpfWZ1bmN0aW9uIG90KHQsZSxuKXt0JiZlJiYoZT0ic3RyaW5nIj09dHlwZW9mIGU/ZS5zcGxpdCgvXHMrLykuZmlsdGVyKEJvb2xlYW4pOmUpLmZvckVhY2goZnVuY3Rpb24oZSl7dC5mb3JFYWNoP3QuZm9yRWFjaChmdW5jdGlvbih0KXtuP3QuY2xhc3NMaXN0LmFkZChlKTp0LmNsYXNzTGlzdC5yZW1vdmUoZSl9KTpuP3QuY2xhc3NMaXN0LmFkZChlKTp0LmNsYXNzTGlzdC5yZW1vdmUoZSl9KX1mdW5jdGlvbiBpdCh0LGUsbil7KG49bj09PSIiLmNvbmNhdChwYXJzZUludChuKSk/cGFyc2VJbnQobik6bil8fDA9PT1wYXJzZUludChuKT90LnN0eWxlW2VdPSJudW1iZXIiPT10eXBlb2Ygbj8iIi5jb25jYXQobiwicHgiKTpuOnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoZSl9ZnVuY3Rpb24gcnQodCl7dC5zdHlsZS5kaXNwbGF5PTE8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToiZmxleCJ9ZnVuY3Rpb24gYXQodCl7dC5zdHlsZS5kaXNwbGF5PSJub25lIn1mdW5jdGlvbiB1dCh0LGUsbixvKXsoZT10LnF1ZXJ5U2VsZWN0b3IoZSkpJiYoZS5zdHlsZVtuXT1vKX1mdW5jdGlvbiBzdCh0LGUsbil7ZT9ydCh0LG4pOmF0KHQpfWZ1bmN0aW9uIGN0KHQpe3JldHVybiEhKHQuc2Nyb2xsSGVpZ2h0PnQuY2xpZW50SGVpZ2h0KX1mdW5jdGlvbiBsdCh0KXt2YXIgZT13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0KSx0PXBhcnNlRmxvYXQoZS5nZXRQcm9wZXJ0eVZhbHVlKCJhbmltYXRpb24tZHVyYXRpb24iKXx8IjAiKSxlPXBhcnNlRmxvYXQoZS5nZXRQcm9wZXJ0eVZhbHVlKCJ0cmFuc2l0aW9uLWR1cmF0aW9uIil8fCIwIik7cmV0dXJuIDA8dHx8MDxlfWZ1bmN0aW9uIGR0KHQpe3ZhciBlPTE8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzFdJiZhcmd1bWVudHNbMV0sbj1IKCk7d3QobikmJihlJiYobi5zdHlsZS50cmFuc2l0aW9uPSJub25lIixuLnN0eWxlLndpZHRoPSIxMDAlIiksc2V0VGltZW91dChmdW5jdGlvbigpe24uc3R5bGUudHJhbnNpdGlvbj0id2lkdGggIi5jb25jYXQodC8xZTMsInMgbGluZWFyIiksbi5zdHlsZS53aWR0aD0iMCUifSwxMCkpfWZ1bmN0aW9uIHB0KCl7cmV0dXJuInVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3d8fCJ1bmRlZmluZWQiPT10eXBlb2YgZG9jdW1lbnR9ZnVuY3Rpb24gZnQodCl7SG4uaXNWaXNpYmxlKCkmJmd0IT09dC50YXJnZXQudmFsdWUmJkhuLnJlc2V0VmFsaWRhdGlvbk1lc3NhZ2UoKSxndD10LnRhcmdldC52YWx1ZX1mdW5jdGlvbiBtdCh0LGUpe3QgaW5zdGFuY2VvZiBIVE1MRWxlbWVudD9lLmFwcGVuZENoaWxkKHQpOiJvYmplY3QiPT09cih0KT9BdCh0LGUpOnQmJlUoZSx0KX1mdW5jdGlvbiBodCh0LGUpe3ZhciBuPUkoKSxvPUQoKSxpPVQoKSxyPUwoKSxhPXEoKTtlLnNob3dDb25maXJtQnV0dG9ufHxlLnNob3dEZW55QnV0dG9ufHxlLnNob3dDYW5jZWxCdXR0b258fGF0KG4pLF8obixlLCJhY3Rpb25zIiksUHQoaSwiY29uZmlybSIsZSksUHQociwiZGVueSIsZSksUHQoYSwiY2FuY2VsIixlKSxmdW5jdGlvbih0LGUsbixvKXtpZighby5idXR0b25zU3R5bGluZylyZXR1cm4gYnQoW3QsZSxuXSxKLnN0eWxlZCk7dnQoW3QsZSxuXSxKLnN0eWxlZCksby5jb25maXJtQnV0dG9uQ29sb3ImJih0LnN0eWxlLmJhY2tncm91bmRDb2xvcj1vLmNvbmZpcm1CdXR0b25Db2xvcik7by5kZW55QnV0dG9uQ29sb3ImJihlLnN0eWxlLmJhY2tncm91bmRDb2xvcj1vLmRlbnlCdXR0b25Db2xvcik7by5jYW5jZWxCdXR0b25Db2xvciYmKG4uc3R5bGUuYmFja2dyb3VuZENvbG9yPW8uY2FuY2VsQnV0dG9uQ29sb3IpfShpLHIsYSxlKSxlLnJldmVyc2VCdXR0b25zJiYobi5pbnNlcnRCZWZvcmUoYSxvKSxuLmluc2VydEJlZm9yZShyLG8pLG4uaW5zZXJ0QmVmb3JlKGksbykpLFUobyxlLmxvYWRlckh0bWwpLF8obyxlLCJsb2FkZXIiKX12YXIgZ3QsdnQ9ZnVuY3Rpb24odCxlKXtvdCh0LGUsITApfSxidD1mdW5jdGlvbih0LGUpe290KHQsZSwhMSl9LHl0PWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPTA7bjx0LmNoaWxkTm9kZXMubGVuZ3RoO24rKylpZihGKHQuY2hpbGROb2Rlc1tuXSxlKSlyZXR1cm4gdC5jaGlsZE5vZGVzW25dfSx3dD1mdW5jdGlvbih0KXtyZXR1cm4hKCF0fHwhKHQub2Zmc2V0V2lkdGh8fHQub2Zmc2V0SGVpZ2h0fHx0LmdldENsaWVudFJlY3RzKCkubGVuZ3RoKSl9LEN0PSdcbiA8ZGl2IGFyaWEtbGFiZWxsZWRieT0iJy5jb25jYXQoSi50aXRsZSwnIiBhcmlhLWRlc2NyaWJlZGJ5PSInKS5jb25jYXQoSi5jb250ZW50LCciIGNsYXNzPSInKS5jb25jYXQoSi5wb3B1cCwnIiB0YWJpbmRleD0iLTEiPlxuICAgPGRpdiBjbGFzcz0iJykuY29uY2F0KEouaGVhZGVyLCciPlxuICAgICA8dWwgY2xhc3M9IicpLmNvbmNhdChKWyJwcm9ncmVzcy1zdGVwcyJdLCciPjwvdWw+XG4gICAgIDxkaXYgY2xhc3M9IicpLmNvbmNhdChKLmljb24sJyI+PC9kaXY+XG4gICAgIDxpbWcgY2xhc3M9IicpLmNvbmNhdChKLmltYWdlLCciIC8+XG4gICAgIDxoMiBjbGFzcz0iJykuY29uY2F0KEoudGl0bGUsJyIgaWQ9IicpLmNvbmNhdChKLnRpdGxlLCciPjwvaDI+XG4gICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iJykuY29uY2F0KEouY2xvc2UsJyI+PC9idXR0b24+XG4gICA8L2Rpdj5cbiAgIDxkaXYgY2xhc3M9IicpLmNvbmNhdChKLmNvbnRlbnQsJyI+XG4gICAgIDxkaXYgaWQ9IicpLmNvbmNhdChKLmNvbnRlbnQsJyIgY2xhc3M9IicpLmNvbmNhdChKWyJodG1sLWNvbnRhaW5lciJdLCciPjwvZGl2PlxuICAgICA8aW5wdXQgY2xhc3M9IicpLmNvbmNhdChKLmlucHV0LCciIC8+XG4gICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBjbGFzcz0iJykuY29uY2F0KEouZmlsZSwnIiAvPlxuICAgICA8ZGl2IGNsYXNzPSInKS5jb25jYXQoSi5yYW5nZSwnIj5cbiAgICAgICA8aW5wdXQgdHlwZT0icmFuZ2UiIC8+XG4gICAgICAgPG91dHB1dD48L291dHB1dD5cbiAgICAgPC9kaXY+XG4gICAgIDxzZWxlY3QgY2xhc3M9IicpLmNvbmNhdChKLnNlbGVjdCwnIj48L3NlbGVjdD5cbiAgICAgPGRpdiBjbGFzcz0iJykuY29uY2F0KEoucmFkaW8sJyI+PC9kaXY+XG4gICAgIDxsYWJlbCBmb3I9IicpLmNvbmNhdChKLmNoZWNrYm94LCciIGNsYXNzPSInKS5jb25jYXQoSi5jaGVja2JveCwnIj5cbiAgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIC8+XG4gICAgICAgPHNwYW4gY2xhc3M9IicpLmNvbmNhdChKLmxhYmVsLCciPjwvc3Bhbj5cbiAgICAgPC9sYWJlbD5cbiAgICAgPHRleHRhcmVhIGNsYXNzPSInKS5jb25jYXQoSi50ZXh0YXJlYSwnIj48L3RleHRhcmVhPlxuICAgICA8ZGl2IGNsYXNzPSInKS5jb25jYXQoSlsidmFsaWRhdGlvbi1tZXNzYWdlIl0sJyIgaWQ9IicpLmNvbmNhdChKWyJ2YWxpZGF0aW9uLW1lc3NhZ2UiXSwnIj48L2Rpdj5cbiAgIDwvZGl2PlxuICAgPGRpdiBjbGFzcz0iJykuY29uY2F0KEouYWN0aW9ucywnIj5cbiAgICAgPGRpdiBjbGFzcz0iJykuY29uY2F0KEoubG9hZGVyLCciPjwvZGl2PlxuICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9IicpLmNvbmNhdChKLmNvbmZpcm0sJyI+PC9idXR0b24+XG4gICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iJykuY29uY2F0KEouZGVueSwnIj48L2J1dHRvbj5cbiAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSInKS5jb25jYXQoSi5jYW5jZWwsJyI+PC9idXR0b24+XG4gICA8L2Rpdj5cbiAgIDxkaXYgY2xhc3M9IicpLmNvbmNhdChKLmZvb3RlciwnIj48L2Rpdj5cbiAgIDxkaXYgY2xhc3M9IicpLmNvbmNhdChKWyJ0aW1lci1wcm9ncmVzcy1iYXItY29udGFpbmVyIl0sJyI+XG4gICAgIDxkaXYgY2xhc3M9IicpLmNvbmNhdChKWyJ0aW1lci1wcm9ncmVzcy1iYXIiXSwnIj48L2Rpdj5cbiAgIDwvZGl2PlxuIDwvZGl2PlxuJykucmVwbGFjZSgvKF58XG4pXHMqL2csIiIpLGt0PWZ1bmN0aW9uKHQpe3ZhciBlLG4sbyxpLHIsYT0hIShpPWsoKSkmJihpLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoaSksYnQoW2RvY3VtZW50LmRvY3VtZW50RWxlbWVudCxkb2N1bWVudC5ib2R5XSxbSlsibm8tYmFja2Ryb3AiXSxKWyJ0b2FzdC1zaG93biJdLEpbImhhcy1jb2x1bW4iXV0pLCEwKTtwdCgpP0soIlN3ZWV0QWxlcnQyIHJlcXVpcmVzIGRvY3VtZW50IHRvIGluaXRpYWxpemUiKTooKHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpLmNsYXNzTmFtZT1KLmNvbnRhaW5lcixhJiZ2dChyLEpbIm5vLXRyYW5zaXRpb24iXSksVShyLEN0KSwoaT0ic3RyaW5nIj09dHlwZW9mKGU9dC50YXJnZXQpP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoZSk6ZSkuYXBwZW5kQ2hpbGQociksYT10LChlPUEoKSkuc2V0QXR0cmlidXRlKCJyb2xlIixhLnRvYXN0PyJhbGVydCI6ImRpYWxvZyIpLGUuc2V0QXR0cmlidXRlKCJhcmlhLWxpdmUiLGEudG9hc3Q/InBvbGl0ZSI6ImFzc2VydGl2ZSIpLGEudG9hc3R8fGUuc2V0QXR0cmlidXRlKCJhcmlhLW1vZGFsIiwidHJ1ZSIpLHI9aSwicnRsIj09PXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHIpLmRpcmVjdGlvbiYmdnQoaygpLEoucnRsKSx0PVAoKSxhPXl0KHQsSi5pbnB1dCksZT15dCh0LEouZmlsZSksbj10LnF1ZXJ5U2VsZWN0b3IoIi4iLmNvbmNhdChKLnJhbmdlLCIgaW5wdXQiKSksbz10LnF1ZXJ5U2VsZWN0b3IoIi4iLmNvbmNhdChKLnJhbmdlLCIgb3V0cHV0IikpLGk9eXQodCxKLnNlbGVjdCkscj10LnF1ZXJ5U2VsZWN0b3IoIi4iLmNvbmNhdChKLmNoZWNrYm94LCIgaW5wdXQiKSksdD15dCh0LEoudGV4dGFyZWEpLGEub25pbnB1dD1mdCxlLm9uY2hhbmdlPWZ0LGkub25jaGFuZ2U9ZnQsci5vbmNoYW5nZT1mdCx0Lm9uaW5wdXQ9ZnQsbi5vbmlucHV0PWZ1bmN0aW9uKHQpe2Z0KHQpLG8udmFsdWU9bi52YWx1ZX0sbi5vbmNoYW5nZT1mdW5jdGlvbih0KXtmdCh0KSxuLm5leHRTaWJsaW5nLnZhbHVlPW4udmFsdWV9KX0sQXQ9ZnVuY3Rpb24odCxlKXt0LmpxdWVyeT94dChlLHQpOlUoZSx0LnRvU3RyaW5nKCkpfSx4dD1mdW5jdGlvbih0LGUpe2lmKHQudGV4dENvbnRlbnQ9IiIsMCBpbiBlKWZvcih2YXIgbj0wO24gaW4gZTtuKyspdC5hcHBlbmRDaGlsZChlW25dLmNsb25lTm9kZSghMCkpO2Vsc2UgdC5hcHBlbmRDaGlsZChlLmNsb25lTm9kZSghMCkpfSxCdD1mdW5jdGlvbigpe2lmKHB0KCkpcmV0dXJuITE7dmFyIHQsZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxuPXtXZWJraXRBbmltYXRpb246IndlYmtpdEFuaW1hdGlvbkVuZCIsT0FuaW1hdGlvbjoib0FuaW1hdGlvbkVuZCBvYW5pbWF0aW9uZW5kIixhbmltYXRpb246ImFuaW1hdGlvbmVuZCJ9O2Zvcih0IGluIG4paWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sdCkmJnZvaWQgMCE9PWUuc3R5bGVbdF0pcmV0dXJuIG5bdF07cmV0dXJuITF9KCk7ZnVuY3Rpb24gUHQodCxlLG4pe3N0KHQsblsic2hvdyIuY29uY2F0KG0oZSksIkJ1dHRvbiIpXSwiaW5saW5lLWJsb2NrIiksVSh0LG5bIiIuY29uY2F0KGUsIkJ1dHRvblRleHQiKV0pLHQuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixuWyIiLmNvbmNhdChlLCJCdXR0b25BcmlhTGFiZWwiKV0pLHQuY2xhc3NOYW1lPUpbZV0sXyh0LG4sIiIuY29uY2F0KGUsIkJ1dHRvbiIpKSx2dCh0LG5bIiIuY29uY2F0KGUsIkJ1dHRvbkNsYXNzIildKX1mdW5jdGlvbiBFdCh0LGUpe3ZhciBuLG8saT1rKCk7aSYmKG89aSwic3RyaW5nIj09dHlwZW9mKG49ZS5iYWNrZHJvcCk/by5zdHlsZS5iYWNrZ3JvdW5kPW46bnx8dnQoW2RvY3VtZW50LmRvY3VtZW50RWxlbWVudCxkb2N1bWVudC5ib2R5XSxKWyJuby1iYWNrZHJvcCJdKSwhZS5iYWNrZHJvcCYmZS5hbGxvd091dHNpZGVDbGljayYmVygnImFsbG93T3V0c2lkZUNsaWNrIiBwYXJhbWV0ZXIgcmVxdWlyZXMgYGJhY2tkcm9wYCBwYXJhbWV0ZXIgdG8gYmUgc2V0IHRvIGB0cnVlYCcpLG89aSwobj1lLnBvc2l0aW9uKWluIEo/dnQobyxKW25dKTooVygnVGhlICJwb3NpdGlvbiIgcGFyYW1ldGVyIGlzIG5vdCB2YWxpZCwgZGVmYXVsdGluZyB0byAiY2VudGVyIicpLHZ0KG8sSi5jZW50ZXIpKSxuPWksIShvPWUuZ3Jvdyl8fCJzdHJpbmciIT10eXBlb2Ygb3x8KG89Imdyb3ctIi5jb25jYXQobykpaW4gSiYmdnQobixKW29dKSxfKGksZSwiY29udGFpbmVyIiksKGU9ZG9jdW1lbnQuYm9keS5nZXRBdHRyaWJ1dGUoImRhdGEtc3dhbDItcXVldWUtc3RlcCIpKSYmKGkuc2V0QXR0cmlidXRlKCJkYXRhLXF1ZXVlLXN0ZXAiLGUpLGRvY3VtZW50LmJvZHkucmVtb3ZlQXR0cmlidXRlKCJkYXRhLXN3YWwyLXF1ZXVlLXN0ZXAiKSkpfWZ1bmN0aW9uIE90KHQsZSl7dC5wbGFjZWhvbGRlciYmIWUuaW5wdXRQbGFjZWhvbGRlcnx8KHQucGxhY2Vob2xkZXI9ZS5pbnB1dFBsYWNlaG9sZGVyKX1mdW5jdGlvbiBTdCh0LGUsbil7dmFyIG8saTtuLmlucHV0TGFiZWwmJih0LmlkPUouaW5wdXQsbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsYWJlbCIpLGk9SlsiaW5wdXQtbGFiZWwiXSxvLnNldEF0dHJpYnV0ZSgiZm9yIix0LmlkKSxvLmNsYXNzTmFtZT1pLHZ0KG8sbi5jdXN0b21DbGFzcy5pbnB1dExhYmVsKSxvLmlubmVyVGV4dD1uLmlucHV0TGFiZWwsZS5pbnNlcnRBZGphY2VudEVsZW1lbnQoImJlZm9yZWJlZ2luIixvKSl9dmFyIFR0PXtwcm9taXNlOm5ldyBXZWFrTWFwLGlubmVyUGFyYW1zOm5ldyBXZWFrTWFwLGRvbUNhY2hlOm5ldyBXZWFrTWFwfSxMdD1bImlucHV0IiwiZmlsZSIsInJhbmdlIiwic2VsZWN0IiwicmFkaW8iLCJjaGVja2JveCIsInRleHRhcmVhIl0sRHQ9ZnVuY3Rpb24odCl7aWYoIU10W3QuaW5wdXRdKXJldHVybiBLKCdVbmV4cGVjdGVkIHR5cGUgb2YgaW5wdXQhIEV4cGVjdGVkICJ0ZXh0IiwgImVtYWlsIiwgInBhc3N3b3JkIiwgIm51bWJlciIsICJ0ZWwiLCAic2VsZWN0IiwgInJhZGlvIiwgImNoZWNrYm94IiwgInRleHRhcmVhIiwgImZpbGUiIG9yICJ1cmwiLCBnb3QgIicuY29uY2F0KHQuaW5wdXQsJyInKSk7dmFyIGU9anQodC5pbnB1dCksbj1NdFt0LmlucHV0XShlLHQpO3J0KG4pLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtudChuKX0pfSxxdD1mdW5jdGlvbih0LGUpe3ZhciBuPWV0KFAoKSx0KTtpZihuKWZvcih2YXIgbyBpbiFmdW5jdGlvbih0KXtmb3IodmFyIGU9MDtlPHQuYXR0cmlidXRlcy5sZW5ndGg7ZSsrKXt2YXIgbj10LmF0dHJpYnV0ZXNbZV0ubmFtZTstMT09PVsidHlwZSIsInZhbHVlIiwic3R5bGUiXS5pbmRleE9mKG4pJiZ0LnJlbW92ZUF0dHJpYnV0ZShuKX19KG4pLGUpInJhbmdlIj09PXQmJiJwbGFjZWhvbGRlciI9PT1vfHxuLnNldEF0dHJpYnV0ZShvLGVbb10pfSxJdD1mdW5jdGlvbih0KXt2YXIgZT1qdCh0LmlucHV0KTt0LmN1c3RvbUNsYXNzJiZ2dChlLHQuY3VzdG9tQ2xhc3MuaW5wdXQpfSxqdD1mdW5jdGlvbih0KXt0PUpbdF18fEouaW5wdXQ7cmV0dXJuIHl0KFAoKSx0KX0sTXQ9e307TXQudGV4dD1NdC5lbWFpbD1NdC5wYXNzd29yZD1NdC5udW1iZXI9TXQudGVsPU10LnVybD1mdW5jdGlvbih0LGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZS5pbnB1dFZhbHVlfHwibnVtYmVyIj09dHlwZW9mIGUuaW5wdXRWYWx1ZT90LnZhbHVlPWUuaW5wdXRWYWx1ZTp3KGUuaW5wdXRWYWx1ZSl8fFcoJ1VuZXhwZWN0ZWQgdHlwZSBvZiBpbnB1dFZhbHVlISBFeHBlY3RlZCAic3RyaW5nIiwgIm51bWJlciIgb3IgIlByb21pc2UiLCBnb3QgIicuY29uY2F0KHIoZS5pbnB1dFZhbHVlKSwnIicpKSxTdCh0LHQsZSksT3QodCxlKSx0LnR5cGU9ZS5pbnB1dCx0fSxNdC5maWxlPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIFN0KHQsdCxlKSxPdCh0LGUpLHR9LE10LnJhbmdlPWZ1bmN0aW9uKHQsZSl7dmFyIG49dC5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLG89dC5xdWVyeVNlbGVjdG9yKCJvdXRwdXQiKTtyZXR1cm4gbi52YWx1ZT1lLmlucHV0VmFsdWUsbi50eXBlPWUuaW5wdXQsby52YWx1ZT1lLmlucHV0VmFsdWUsU3Qobix0LGUpLHR9LE10LnNlbGVjdD1mdW5jdGlvbih0LGUpe3ZhciBuO3JldHVybiB0LnRleHRDb250ZW50PSIiLGUuaW5wdXRQbGFjZWhvbGRlciYmKG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib3B0aW9uIiksVShuLGUuaW5wdXRQbGFjZWhvbGRlciksbi52YWx1ZT0iIixuLmRpc2FibGVkPSEwLG4uc2VsZWN0ZWQ9ITAsdC5hcHBlbmRDaGlsZChuKSksU3QodCx0LGUpLHR9LE10LnJhZGlvPWZ1bmN0aW9uKHQpe3JldHVybiB0LnRleHRDb250ZW50PSIiLHR9LE10LmNoZWNrYm94PWZ1bmN0aW9uKHQsZSl7dmFyIG49ZXQoUCgpLCJjaGVja2JveCIpO24udmFsdWU9MSxuLmlkPUouY2hlY2tib3gsbi5jaGVja2VkPUJvb2xlYW4oZS5pbnB1dFZhbHVlKTtuPXQucXVlcnlTZWxlY3Rvcigic3BhbiIpO3JldHVybiBVKG4sZS5pbnB1dFBsYWNlaG9sZGVyKSx0fSxNdC50ZXh0YXJlYT1mdW5jdGlvbihlLHQpe2UudmFsdWU9dC5pbnB1dFZhbHVlLE90KGUsdCksU3QoZSxlLHQpO2Z1bmN0aW9uIG4odCl7cmV0dXJuIHBhcnNlSW50KHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHQpLnBhZGRpbmdMZWZ0KStwYXJzZUludCh3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0KS5wYWRkaW5nUmlnaHQpfXZhciBvO3JldHVybiJNdXRhdGlvbk9ic2VydmVyImluIHdpbmRvdyYmKG89cGFyc2VJbnQod2luZG93LmdldENvbXB1dGVkU3R5bGUoQSgpKS53aWR0aCksbmV3IE11dGF0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24oKXt2YXIgdD1lLm9mZnNldFdpZHRoK24oQSgpKStuKFAoKSk7QSgpLnN0eWxlLndpZHRoPW88dD8iIi5jb25jYXQodCwicHgiKTpudWxsfSkub2JzZXJ2ZShlLHthdHRyaWJ1dGVzOiEwLGF0dHJpYnV0ZUZpbHRlcjpbInN0eWxlIl19KSksZX07ZnVuY3Rpb24gSHQodCxlKXt2YXIgbyxpLHIsbj1FKCk7XyhuLGUsImh0bWxDb250YWluZXIiKSxlLmh0bWw/KG10KGUuaHRtbCxuKSxydChuLCJibG9jayIpKTplLnRleHQ/KG4udGV4dENvbnRlbnQ9ZS50ZXh0LHJ0KG4sImJsb2NrIikpOmF0KG4pLHQ9dCxvPWUsaT1QKCksdD1UdC5pbm5lclBhcmFtcy5nZXQodCkscj0hdHx8by5pbnB1dCE9PXQuaW5wdXQsTHQuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgZT1KW3RdLG49eXQoaSxlKTtxdCh0LG8uaW5wdXRBdHRyaWJ1dGVzKSxuLmNsYXNzTmFtZT1lLHImJmF0KG4pfSksby5pbnB1dCYmKHImJkR0KG8pLEl0KG8pKSxfKFAoKSxlLCJjb250ZW50Iil9ZnVuY3Rpb24gVnQoKXtyZXR1cm4gaygpJiZrKCkuZ2V0QXR0cmlidXRlKCJkYXRhLXF1ZXVlLXN0ZXAiKX1mdW5jdGlvbiBSdCh0LG8pe3ZhciBpPW4oKTtpZighby5wcm9ncmVzc1N0ZXBzfHwwPT09by5wcm9ncmVzc1N0ZXBzLmxlbmd0aClyZXR1cm4gYXQoaSksMDtydChpKSxpLnRleHRDb250ZW50PSIiO3ZhciByPXBhcnNlSW50KHZvaWQgMD09PW8uY3VycmVudFByb2dyZXNzU3RlcD9WdCgpOm8uY3VycmVudFByb2dyZXNzU3RlcCk7cj49by5wcm9ncmVzc1N0ZXBzLmxlbmd0aCYmVygiSW52YWxpZCBjdXJyZW50UHJvZ3Jlc3NTdGVwIHBhcmFtZXRlciwgaXQgc2hvdWxkIGJlIGxlc3MgdGhhbiBwcm9ncmVzc1N0ZXBzLmxlbmd0aCAoY3VycmVudFByb2dyZXNzU3RlcCBsaWtlIEpTIGFycmF5cyBzdGFydHMgZnJvbSAwKSIpLG8ucHJvZ3Jlc3NTdGVwcy5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7dmFyIG4sdD0obj10LHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGkiKSx2dCh0LEpbInByb2dyZXNzLXN0ZXAiXSksVSh0LG4pLHQpO2kuYXBwZW5kQ2hpbGQodCksZT09PXImJnZ0KHQsSlsiYWN0aXZlLXByb2dyZXNzLXN0ZXAiXSksZSE9PW8ucHJvZ3Jlc3NTdGVwcy5sZW5ndGgtMSYmKHQ9byxlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpIiksdnQoZSxKWyJwcm9ncmVzcy1zdGVwLWxpbmUiXSksdC5wcm9ncmVzc1N0ZXBzRGlzdGFuY2UmJihlLnN0eWxlLndpZHRoPXQucHJvZ3Jlc3NTdGVwc0Rpc3RhbmNlKSxpLmFwcGVuZENoaWxkKGUpKX0pfWZ1bmN0aW9uIE50KHQsZSl7dmFyIG4sbz1qKCk7XyhvLGUsImhlYWRlciIpLFJ0KDAsZSksbj10LG89ZSx0PVR0LmlubmVyUGFyYW1zLmdldChuKSxuPXgoKSx0JiZvLmljb249PT10Lmljb24/KFd0KG4sbyksX3QobixvKSk6by5pY29ufHxvLmljb25IdG1sP28uaWNvbiYmLTE9PT1PYmplY3Qua2V5cyhYKS5pbmRleE9mKG8uaWNvbik/KEsoJ1Vua25vd24gaWNvbiEgRXhwZWN0ZWQgInN1Y2Nlc3MiLCAiZXJyb3IiLCAid2FybmluZyIsICJpbmZvIiBvciAicXVlc3Rpb24iLCBnb3QgIicuY29uY2F0KG8uaWNvbiwnIicpKSxhdChuKSk6KHJ0KG4pLFd0KG4sbyksX3QobixvKSx2dChuLG8uc2hvd0NsYXNzLmljb24pKTphdChuKSxmdW5jdGlvbih0KXt2YXIgZT1PKCk7aWYoIXQuaW1hZ2VVcmwpcmV0dXJuIGF0KGUpO3J0KGUsIiIpLGUuc2V0QXR0cmlidXRlKCJzcmMiLHQuaW1hZ2VVcmwpLGUuc2V0QXR0cmlidXRlKCJhbHQiLHQuaW1hZ2VBbHQpLGl0KGUsIndpZHRoIix0LmltYWdlV2lkdGgpLGl0KGUsImhlaWdodCIsdC5pbWFnZUhlaWdodCksZS5jbGFzc05hbWU9Si5pbWFnZSxfKGUsdCwiaW1hZ2UiKX0oZSksbz1lLG49QigpLHN0KG4sby50aXRsZXx8by50aXRsZVRleHQsImJsb2NrIiksby50aXRsZSYmbXQoby50aXRsZSxuKSxvLnRpdGxlVGV4dCYmKG4uaW5uZXJUZXh0PW8udGl0bGVUZXh0KSxfKG4sbywidGl0bGUiKSxvPWUsZT1WKCksVShlLG8uY2xvc2VCdXR0b25IdG1sKSxfKGUsbywiY2xvc2VCdXR0b24iKSxzdChlLG8uc2hvd0Nsb3NlQnV0dG9uKSxlLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsby5jbG9zZUJ1dHRvbkFyaWFMYWJlbCl9ZnVuY3Rpb24gVXQodCxlKXt2YXIgbixvLGk7aT1lLG49aygpLG89QSgpLGkudG9hc3Q/KGl0KG4sIndpZHRoIixpLndpZHRoKSxvLnN0eWxlLndpZHRoPSIxMDAlIik6aXQobywid2lkdGgiLGkud2lkdGgpLGl0KG8sInBhZGRpbmciLGkucGFkZGluZyksaS5iYWNrZ3JvdW5kJiYoby5zdHlsZS5iYWNrZ3JvdW5kPWkuYmFja2dyb3VuZCksYXQoUygpKSxRdChvLGkpLEV0KDAsZSksTnQodCxlKSxIdCh0LGUpLGh0KDAsZSksaT1lLHQ9TSgpLHN0KHQsaS5mb290ZXIpLGkuZm9vdGVyJiZtdChpLmZvb3Rlcix0KSxfKHQsaSwiZm9vdGVyIiksImZ1bmN0aW9uIj09dHlwZW9mIGUuZGlkUmVuZGVyP2UuZGlkUmVuZGVyKEEoKSk6ImZ1bmN0aW9uIj09dHlwZW9mIGUub25SZW5kZXImJmUub25SZW5kZXIoQSgpKX1mdW5jdGlvbiBGdCgpe3JldHVybiBUKCkmJlQoKS5jbGljaygpfXZhciBfdD1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbiBpbiBYKWUuaWNvbiE9PW4mJmJ0KHQsWFtuXSk7dnQodCxYW2UuaWNvbl0pLEt0KHQsZSksenQoKSxfKHQsZSwiaWNvbiIpfSx6dD1mdW5jdGlvbigpe2Zvcih2YXIgdD1BKCksZT13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0KS5nZXRQcm9wZXJ0eVZhbHVlKCJiYWNrZ3JvdW5kLWNvbG9yIiksbj10LnF1ZXJ5U2VsZWN0b3JBbGwoIltjbGFzc149c3dhbDItc3VjY2Vzcy1jaXJjdWxhci1saW5lXSwgLnN3YWwyLXN1Y2Nlc3MtZml4Iiksbz0wO288bi5sZW5ndGg7bysrKW5bb10uc3R5bGUuYmFja2dyb3VuZENvbG9yPWV9LFd0PWZ1bmN0aW9uKHQsZSl7dC50ZXh0Q29udGVudD0iIixlLmljb25IdG1sP1UodCxZdChlLmljb25IdG1sKSk6InN1Y2Nlc3MiPT09ZS5pY29uP1UodCwnXG4gICAgICA8ZGl2IGNsYXNzPSJzd2FsMi1zdWNjZXNzLWNpcmN1bGFyLWxpbmUtbGVmdCI+PC9kaXY+XG4gICAgICA8c3BhbiBjbGFzcz0ic3dhbDItc3VjY2Vzcy1saW5lLXRpcCI+PC9zcGFuPiA8c3BhbiBjbGFzcz0ic3dhbDItc3VjY2Vzcy1saW5lLWxvbmciPjwvc3Bhbj5cbiAgICAgIDxkaXYgY2xhc3M9InN3YWwyLXN1Y2Nlc3MtcmluZyI+PC9kaXY+IDxkaXYgY2xhc3M9InN3YWwyLXN1Y2Nlc3MtZml4Ij48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9InN3YWwyLXN1Y2Nlc3MtY2lyY3VsYXItbGluZS1yaWdodCI+PC9kaXY+XG4gICAgJyk6ImVycm9yIj09PWUuaWNvbj9VKHQsJ1xuICAgICAgPHNwYW4gY2xhc3M9InN3YWwyLXgtbWFyayI+XG4gICAgICAgIDxzcGFuIGNsYXNzPSJzd2FsMi14LW1hcmstbGluZS1sZWZ0Ij48L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPSJzd2FsMi14LW1hcmstbGluZS1yaWdodCI+PC9zcGFuPlxuICAgICAgPC9zcGFuPlxuICAgICcpOlUodCxZdCh7cXVlc3Rpb246Ij8iLHdhcm5pbmc6IiEiLGluZm86ImkifVtlLmljb25dKSl9LEt0PWZ1bmN0aW9uKHQsZSl7aWYoZS5pY29uQ29sb3Ipe3Quc3R5bGUuY29sb3I9ZS5pY29uQ29sb3IsdC5zdHlsZS5ib3JkZXJDb2xvcj1lLmljb25Db2xvcjtmb3IodmFyIG49MCxvPVsiLnN3YWwyLXN1Y2Nlc3MtbGluZS10aXAiLCIuc3dhbDItc3VjY2Vzcy1saW5lLWxvbmciLCIuc3dhbDIteC1tYXJrLWxpbmUtbGVmdCIsIi5zd2FsMi14LW1hcmstbGluZS1yaWdodCJdO248by5sZW5ndGg7bisrKXV0KHQsb1tuXSwiYmFja2dyb3VuZENvbG9yIixlLmljb25Db2xvcik7dXQodCwiLnN3YWwyLXN1Y2Nlc3MtcmluZyIsImJvcmRlckNvbG9yIixlLmljb25Db2xvcil9fSxZdD1mdW5jdGlvbih0KXtyZXR1cm4nPGRpdiBjbGFzcz0iJy5jb25jYXQoSlsiaWNvbi1jb250ZW50Il0sJyI+JykuY29uY2F0KHQsIjwvZGl2PiIpfSxadD1bXSxRdD1mdW5jdGlvbih0LGUpe3QuY2xhc3NOYW1lPSIiLmNvbmNhdChKLnBvcHVwLCIgIikuY29uY2F0KHd0KHQpP2Uuc2hvd0NsYXNzLnBvcHVwOiIiKSxlLnRvYXN0Pyh2dChbZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LGRvY3VtZW50LmJvZHldLEpbInRvYXN0LXNob3duIl0pLHZ0KHQsSi50b2FzdCkpOnZ0KHQsSi5tb2RhbCksXyh0LGUsInBvcHVwIiksInN0cmluZyI9PXR5cGVvZiBlLmN1c3RvbUNsYXNzJiZ2dCh0LGUuY3VzdG9tQ2xhc3MpLGUuaWNvbiYmdnQodCxKWyJpY29uLSIuY29uY2F0KGUuaWNvbildKX07ZnVuY3Rpb24gJHQodCl7KGU9QSgpKXx8SG4uZmlyZSgpO3ZhciBlPUEoKSxuPUkoKSxvPUQoKTshdCYmd3QoVCgpKSYmKHQ9VCgpKSxydChuKSx0JiYoYXQodCksby5zZXRBdHRyaWJ1dGUoImRhdGEtYnV0dG9uLXRvLXJlcGxhY2UiLHQuY2xhc3NOYW1lKSksby5wYXJlbnROb2RlLmluc2VydEJlZm9yZShvLHQpLHZ0KFtlLG5dLEoubG9hZGluZykscnQobyksZS5zZXRBdHRyaWJ1dGUoImRhdGEtbG9hZGluZyIsITApLGUuc2V0QXR0cmlidXRlKCJhcmlhLWJ1c3kiLCEwKSxlLmZvY3VzKCl9ZnVuY3Rpb24gSnQobyl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQpe2lmKCFvKXJldHVybiB0KCk7dmFyIGU9d2luZG93LnNjcm9sbFgsbj13aW5kb3cuc2Nyb2xsWTt0ZS5yZXN0b3JlRm9jdXNUaW1lb3V0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXt0ZS5wcmV2aW91c0FjdGl2ZUVsZW1lbnQmJnRlLnByZXZpb3VzQWN0aXZlRWxlbWVudC5mb2N1cz8odGUucHJldmlvdXNBY3RpdmVFbGVtZW50LmZvY3VzKCksdGUucHJldmlvdXNBY3RpdmVFbGVtZW50PW51bGwpOmRvY3VtZW50LmJvZHkmJmRvY3VtZW50LmJvZHkuZm9jdXMoKSx0KCl9LDEwMCksdm9pZCAwIT09ZSYmdm9pZCAwIT09biYmd2luZG93LnNjcm9sbFRvKGUsbil9KX1mdW5jdGlvbiBYdCgpe2lmKHRlLnRpbWVvdXQpcmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9SCgpLGU9cGFyc2VJbnQod2luZG93LmdldENvbXB1dGVkU3R5bGUodCkud2lkdGgpO3Quc3R5bGUucmVtb3ZlUHJvcGVydHkoInRyYW5zaXRpb24iKSx0LnN0eWxlLndpZHRoPSIxMDAlIjt2YXIgbj1wYXJzZUludCh3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0KS53aWR0aCksbj1wYXJzZUludChlL24qMTAwKTt0LnN0eWxlLnJlbW92ZVByb3BlcnR5KCJ0cmFuc2l0aW9uIiksdC5zdHlsZS53aWR0aD0iIi5jb25jYXQobiwiJSIpfSgpLHRlLnRpbWVvdXQuc3RvcCgpfWZ1bmN0aW9uIEd0KCl7aWYodGUudGltZW91dCl7dmFyIHQ9dGUudGltZW91dC5zdGFydCgpO3JldHVybiBkdCh0KSx0fX12YXIgdGU9e30sZWU9ITEsbmU9e307ZnVuY3Rpb24gb2UodCl7Zm9yKHZhciBlPXQudGFyZ2V0O2UmJmUhPT1kb2N1bWVudDtlPWUucGFyZW50Tm9kZSlmb3IodmFyIG4gaW4gbmUpe3ZhciBvPWUuZ2V0QXR0cmlidXRlKG4pO2lmKG8pcmV0dXJuIHZvaWQgbmVbbl0uZmlyZSh7dGVtcGxhdGU6b30pfX1mdW5jdGlvbiBpZSh0KXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHVlLHQpfWZ1bmN0aW9uIHJlKHQpe3JldHVybiBjZVt0XX1mdW5jdGlvbiBhZSh0KXtmb3IodmFyIGUgaW4gdClpZShuPWUpfHxXKCdVbmtub3duIHBhcmFtZXRlciAiJy5jb25jYXQobiwnIicpKSx0LnRvYXN0JiYobj1lLC0xIT09bGUuaW5kZXhPZihuKSYmVygnVGhlIHBhcmFtZXRlciAiJy5jb25jYXQobiwnIiBpcyBpbmNvbXBhdGlibGUgd2l0aCB0b2FzdHMnKSkpLHJlKGU9ZSkmJnYoZSxyZShlKSk7dmFyIG59dmFyIHVlPXt0aXRsZToiIix0aXRsZVRleHQ6IiIsdGV4dDoiIixodG1sOiIiLGZvb3RlcjoiIixpY29uOnZvaWQgMCxpY29uQ29sb3I6dm9pZCAwLGljb25IdG1sOnZvaWQgMCx0ZW1wbGF0ZTp2b2lkIDAsdG9hc3Q6ITEsYW5pbWF0aW9uOiEwLHNob3dDbGFzczp7cG9wdXA6InN3YWwyLXNob3ciLGJhY2tkcm9wOiJzd2FsMi1iYWNrZHJvcC1zaG93IixpY29uOiJzd2FsMi1pY29uLXNob3cifSxoaWRlQ2xhc3M6e3BvcHVwOiJzd2FsMi1oaWRlIixiYWNrZHJvcDoic3dhbDItYmFja2Ryb3AtaGlkZSIsaWNvbjoic3dhbDItaWNvbi1oaWRlIn0sY3VzdG9tQ2xhc3M6e30sdGFyZ2V0OiJib2R5IixiYWNrZHJvcDohMCxoZWlnaHRBdXRvOiEwLGFsbG93T3V0c2lkZUNsaWNrOiEwLGFsbG93RXNjYXBlS2V5OiEwLGFsbG93RW50ZXJLZXk6ITAsc3RvcEtleWRvd25Qcm9wYWdhdGlvbjohMCxrZXlkb3duTGlzdGVuZXJDYXB0dXJlOiExLHNob3dDb25maXJtQnV0dG9uOiEwLHNob3dEZW55QnV0dG9uOiExLHNob3dDYW5jZWxCdXR0b246ITEscHJlQ29uZmlybTp2b2lkIDAscHJlRGVueTp2b2lkIDAsY29uZmlybUJ1dHRvblRleHQ6Ik9LIixjb25maXJtQnV0dG9uQXJpYUxhYmVsOiIiLGNvbmZpcm1CdXR0b25Db2xvcjp2b2lkIDAsZGVueUJ1dHRvblRleHQ6Ik5vIixkZW55QnV0dG9uQXJpYUxhYmVsOiIiLGRlbnlCdXR0b25Db2xvcjp2b2lkIDAsY2FuY2VsQnV0dG9uVGV4dDoiQ2FuY2VsIixjYW5jZWxCdXR0b25BcmlhTGFiZWw6IiIsY2FuY2VsQnV0dG9uQ29sb3I6dm9pZCAwLGJ1dHRvbnNTdHlsaW5nOiEwLHJldmVyc2VCdXR0b25zOiExLGZvY3VzQ29uZmlybTohMCxmb2N1c0Rlbnk6ITEsZm9jdXNDYW5jZWw6ITEscmV0dXJuRm9jdXM6ITAsc2hvd0Nsb3NlQnV0dG9uOiExLGNsb3NlQnV0dG9uSHRtbDoiJnRpbWVzOyIsY2xvc2VCdXR0b25BcmlhTGFiZWw6IkNsb3NlIHRoaXMgZGlhbG9nIixsb2FkZXJIdG1sOiIiLHNob3dMb2FkZXJPbkNvbmZpcm06ITEsc2hvd0xvYWRlck9uRGVueTohMSxpbWFnZVVybDp2b2lkIDAsaW1hZ2VXaWR0aDp2b2lkIDAsaW1hZ2VIZWlnaHQ6dm9pZCAwLGltYWdlQWx0OiIiLHRpbWVyOnZvaWQgMCx0aW1lclByb2dyZXNzQmFyOiExLHdpZHRoOnZvaWQgMCxwYWRkaW5nOnZvaWQgMCxiYWNrZ3JvdW5kOnZvaWQgMCxpbnB1dDp2b2lkIDAsaW5wdXRQbGFjZWhvbGRlcjoiIixpbnB1dExhYmVsOiIiLGlucHV0VmFsdWU6IiIsaW5wdXRPcHRpb25zOnt9LGlucHV0QXV0b1RyaW06ITAsaW5wdXRBdHRyaWJ1dGVzOnt9LGlucHV0VmFsaWRhdG9yOnZvaWQgMCxyZXR1cm5JbnB1dFZhbHVlT25EZW55OiExLHZhbGlkYXRpb25NZXNzYWdlOnZvaWQgMCxncm93OiExLHBvc2l0aW9uOiJjZW50ZXIiLHByb2dyZXNzU3RlcHM6W10sY3VycmVudFByb2dyZXNzU3RlcDp2b2lkIDAscHJvZ3Jlc3NTdGVwc0Rpc3RhbmNlOnZvaWQgMCxvbkJlZm9yZU9wZW46dm9pZCAwLG9uT3Blbjp2b2lkIDAsd2lsbE9wZW46dm9pZCAwLGRpZE9wZW46dm9pZCAwLG9uUmVuZGVyOnZvaWQgMCxkaWRSZW5kZXI6dm9pZCAwLG9uQ2xvc2U6dm9pZCAwLG9uQWZ0ZXJDbG9zZTp2b2lkIDAsd2lsbENsb3NlOnZvaWQgMCxkaWRDbG9zZTp2b2lkIDAsb25EZXN0cm95OnZvaWQgMCxkaWREZXN0cm95OnZvaWQgMCxzY3JvbGxiYXJQYWRkaW5nOiEwfSxzZT1bImFsbG93RXNjYXBlS2V5IiwiYWxsb3dPdXRzaWRlQ2xpY2siLCJiYWNrZ3JvdW5kIiwiYnV0dG9uc1N0eWxpbmciLCJjYW5jZWxCdXR0b25BcmlhTGFiZWwiLCJjYW5jZWxCdXR0b25Db2xvciIsImNhbmNlbEJ1dHRvblRleHQiLCJjbG9zZUJ1dHRvbkFyaWFMYWJlbCIsImNsb3NlQnV0dG9uSHRtbCIsImNvbmZpcm1CdXR0b25BcmlhTGFiZWwiLCJjb25maXJtQnV0dG9uQ29sb3IiLCJjb25maXJtQnV0dG9uVGV4dCIsImN1cnJlbnRQcm9ncmVzc1N0ZXAiLCJjdXN0b21DbGFzcyIsImRlbnlCdXR0b25BcmlhTGFiZWwiLCJkZW55QnV0dG9uQ29sb3IiLCJkZW55QnV0dG9uVGV4dCIsImRpZENsb3NlIiwiZGlkRGVzdHJveSIsImZvb3RlciIsImhpZGVDbGFzcyIsImh0bWwiLCJpY29uIiwiaWNvbkNvbG9yIiwiaWNvbkh0bWwiLCJpbWFnZUFsdCIsImltYWdlSGVpZ2h0IiwiaW1hZ2VVcmwiLCJpbWFnZVdpZHRoIiwib25BZnRlckNsb3NlIiwib25DbG9zZSIsIm9uRGVzdHJveSIsInByb2dyZXNzU3RlcHMiLCJyZXR1cm5Gb2N1cyIsInJldmVyc2VCdXR0b25zIiwic2hvd0NhbmNlbEJ1dHRvbiIsInNob3dDbG9zZUJ1dHRvbiIsInNob3dDb25maXJtQnV0dG9uIiwic2hvd0RlbnlCdXR0b24iLCJ0ZXh0IiwidGl0bGUiLCJ0aXRsZVRleHQiLCJ3aWxsQ2xvc2UiXSxjZT17YW5pbWF0aW9uOidzaG93Q2xhc3MiIGFuZCAiaGlkZUNsYXNzJyxvbkJlZm9yZU9wZW46IndpbGxPcGVuIixvbk9wZW46ImRpZE9wZW4iLG9uUmVuZGVyOiJkaWRSZW5kZXIiLG9uQ2xvc2U6IndpbGxDbG9zZSIsb25BZnRlckNsb3NlOiJkaWRDbG9zZSIsb25EZXN0cm95OiJkaWREZXN0cm95In0sbGU9WyJhbGxvd091dHNpZGVDbGljayIsImFsbG93RW50ZXJLZXkiLCJiYWNrZHJvcCIsImZvY3VzQ29uZmlybSIsImZvY3VzRGVueSIsImZvY3VzQ2FuY2VsIiwicmV0dXJuRm9jdXMiLCJoZWlnaHRBdXRvIiwia2V5ZG93bkxpc3RlbmVyQ2FwdHVyZSJdLGRlPU9iamVjdC5mcmVlemUoe2lzVmFsaWRQYXJhbWV0ZXI6aWUsaXNVcGRhdGFibGVQYXJhbWV0ZXI6ZnVuY3Rpb24odCl7cmV0dXJuLTEhPT1zZS5pbmRleE9mKHQpfSxpc0RlcHJlY2F0ZWRQYXJhbWV0ZXI6cmUsYXJnc1RvUGFyYW1zOmZ1bmN0aW9uKG4pe3ZhciBvPXt9O3JldHVybiJvYmplY3QiIT09cihuWzBdKXx8QyhuWzBdKT9bInRpdGxlIiwiaHRtbCIsImljb24iXS5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7ZT1uW2VdOyJzdHJpbmciPT10eXBlb2YgZXx8QyhlKT9vW3RdPWU6dm9pZCAwIT09ZSYmSygiVW5leHBlY3RlZCB0eXBlIG9mICIuY29uY2F0KHQsJyEgRXhwZWN0ZWQgInN0cmluZyIgb3IgIkVsZW1lbnQiLCBnb3QgJykuY29uY2F0KHIoZSkpKX0pOnMobyxuWzBdKSxvfSxpc1Zpc2libGU6ZnVuY3Rpb24oKXtyZXR1cm4gd3QoQSgpKX0sY2xpY2tDb25maXJtOkZ0LGNsaWNrRGVueTpmdW5jdGlvbigpe3JldHVybiBMKCkmJkwoKS5jbGljaygpfSxjbGlja0NhbmNlbDpmdW5jdGlvbigpe3JldHVybiBxKCkmJnEoKS5jbGljaygpfSxnZXRDb250YWluZXI6ayxnZXRQb3B1cDpBLGdldFRpdGxlOkIsZ2V0Q29udGVudDpQLGdldEh0bWxDb250YWluZXI6RSxnZXRJbWFnZTpPLGdldEljb246eCxnZXRJbnB1dExhYmVsOmZ1bmN0aW9uKCl7cmV0dXJuIHQoSlsiaW5wdXQtbGFiZWwiXSl9LGdldENsb3NlQnV0dG9uOlYsZ2V0QWN0aW9uczpJLGdldENvbmZpcm1CdXR0b246VCxnZXREZW55QnV0dG9uOkwsZ2V0Q2FuY2VsQnV0dG9uOnEsZ2V0TG9hZGVyOkQsZ2V0SGVhZGVyOmosZ2V0Rm9vdGVyOk0sZ2V0VGltZXJQcm9ncmVzc0JhcjpILGdldEZvY3VzYWJsZUVsZW1lbnRzOlIsZ2V0VmFsaWRhdGlvbk1lc3NhZ2U6Uyxpc0xvYWRpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gQSgpLmhhc0F0dHJpYnV0ZSgiZGF0YS1sb2FkaW5nIil9LGZpcmU6ZnVuY3Rpb24oKXtmb3IodmFyIHQ9YXJndW1lbnRzLmxlbmd0aCxlPW5ldyBBcnJheSh0KSxuPTA7bjx0O24rKyllW25dPWFyZ3VtZW50c1tuXTtyZXR1cm4gaSh0aGlzLGUpfSxtaXhpbjpmdW5jdGlvbihyKXtyZXR1cm4gZnVuY3Rpb24odCl7IWZ1bmN0aW9uKHQsZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUmJm51bGwhPT1lKXRocm93IG5ldyBUeXBlRXJyb3IoIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uIik7dC5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShlJiZlLnByb3RvdHlwZSx7Y29uc3RydWN0b3I6e3ZhbHVlOnQsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfX0pLGUmJmwodCxlKX0oaSx0KTt2YXIgbixvLGU9KG49aSxvPWQoKSxmdW5jdGlvbigpe3ZhciB0LGU9YyhuKTtyZXR1cm4gcCh0aGlzLG8/KHQ9Yyh0aGlzKS5jb25zdHJ1Y3RvcixSZWZsZWN0LmNvbnN0cnVjdChlLGFyZ3VtZW50cyx0KSk6ZS5hcHBseSh0aGlzLGFyZ3VtZW50cykpfSk7ZnVuY3Rpb24gaSgpe3JldHVybiBhKHRoaXMsaSksZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9cmV0dXJuIHUoaSxbe2tleToiX21haW4iLHZhbHVlOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIGYoYyhpLnByb3RvdHlwZSksIl9tYWluIix0aGlzKS5jYWxsKHRoaXMsdCxzKHt9LHIsZSkpfX1dKSxpfSh0aGlzKX0scXVldWU6ZnVuY3Rpb24odCl7digiU3dhbC5xdWV1ZSgpIiwiYXN5bmMvYXdhaXQiKTt2YXIgcj10aGlzO1p0PXQ7ZnVuY3Rpb24gYSh0LGUpe1p0PVtdLHQoZSl9dmFyIHU9W107cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGkpeyFmdW5jdGlvbiBlKG4sbyl7bjxadC5sZW5ndGg/KGRvY3VtZW50LmJvZHkuc2V0QXR0cmlidXRlKCJkYXRhLXN3YWwyLXF1ZXVlLXN0ZXAiLG4pLHIuZmlyZShadFtuXSkudGhlbihmdW5jdGlvbih0KXt2b2lkIDAhPT10LnZhbHVlPyh1LnB1c2godC52YWx1ZSksZShuKzEsbykpOmEoaSx7ZGlzbWlzczp0LmRpc21pc3N9KX0pKTphKGkse3ZhbHVlOnV9KX0oMCl9KX0sZ2V0UXVldWVTdGVwOlZ0LGluc2VydFF1ZXVlU3RlcDpmdW5jdGlvbih0LGUpe3JldHVybiBlJiZlPFp0Lmxlbmd0aD9adC5zcGxpY2UoZSwwLHQpOlp0LnB1c2godCl9LGRlbGV0ZVF1ZXVlU3RlcDpmdW5jdGlvbih0KXt2b2lkIDAhPT1adFt0XSYmWnQuc3BsaWNlKHQsMSl9LHNob3dMb2FkaW5nOiR0LGVuYWJsZUxvYWRpbmc6JHQsZ2V0VGltZXJMZWZ0OmZ1bmN0aW9uKCl7cmV0dXJuIHRlLnRpbWVvdXQmJnRlLnRpbWVvdXQuZ2V0VGltZXJMZWZ0KCl9LHN0b3BUaW1lcjpYdCxyZXN1bWVUaW1lcjpHdCx0b2dnbGVUaW1lcjpmdW5jdGlvbigpe3ZhciB0PXRlLnRpbWVvdXQ7cmV0dXJuIHQmJih0LnJ1bm5pbmc/WHQ6R3QpKCl9LGluY3JlYXNlVGltZXI6ZnVuY3Rpb24odCl7aWYodGUudGltZW91dCl7dD10ZS50aW1lb3V0LmluY3JlYXNlKHQpO3JldHVybiBkdCh0LCEwKSx0fX0saXNUaW1lclJ1bm5pbmc6ZnVuY3Rpb24oKXtyZXR1cm4gdGUudGltZW91dCYmdGUudGltZW91dC5pc1J1bm5pbmcoKX0sYmluZENsaWNrSGFuZGxlcjpmdW5jdGlvbigpe25lWzA8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToiZGF0YS1zd2FsLXRlbXBsYXRlIl09dGhpcyxlZXx8KGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLG9lKSxlZT0hMCl9fSk7ZnVuY3Rpb24gcGUoKXt2YXIgdCxlO1R0LmlubmVyUGFyYW1zLmdldCh0aGlzKSYmKHQ9VHQuZG9tQ2FjaGUuZ2V0KHRoaXMpLGF0KHQubG9hZGVyKSwoZT10LnBvcHVwLmdldEVsZW1lbnRzQnlDbGFzc05hbWUodC5sb2FkZXIuZ2V0QXR0cmlidXRlKCJkYXRhLWJ1dHRvbi10by1yZXBsYWNlIikpKS5sZW5ndGg/cnQoZVswXSwiaW5saW5lLWJsb2NrIik6d3QoVCgpKXx8d3QoTCgpKXx8d3QocSgpKXx8YXQodC5hY3Rpb25zKSxidChbdC5wb3B1cCx0LmFjdGlvbnNdLEoubG9hZGluZyksdC5wb3B1cC5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtYnVzeSIpLHQucG9wdXAucmVtb3ZlQXR0cmlidXRlKCJkYXRhLWxvYWRpbmciKSx0LmNvbmZpcm1CdXR0b24uZGlzYWJsZWQ9ITEsdC5kZW55QnV0dG9uLmRpc2FibGVkPSExLHQuY2FuY2VsQnV0dG9uLmRpc2FibGVkPSExKX1mdW5jdGlvbiBmZSgpe251bGw9PT10dC5wcmV2aW91c0JvZHlQYWRkaW5nJiZkb2N1bWVudC5ib2R5LnNjcm9sbEhlaWdodD53aW5kb3cuaW5uZXJIZWlnaHQmJih0dC5wcmV2aW91c0JvZHlQYWRkaW5nPXBhcnNlSW50KHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmJvZHkpLmdldFByb3BlcnR5VmFsdWUoInBhZGRpbmctcmlnaHQiKSksZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nUmlnaHQ9IiIuY29uY2F0KHR0LnByZXZpb3VzQm9keVBhZGRpbmcrZnVuY3Rpb24oKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0LmNsYXNzTmFtZT1KWyJzY3JvbGxiYXItbWVhc3VyZSJdLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodCk7dmFyIGU9dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aC10LmNsaWVudFdpZHRoO3JldHVybiBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHQpLGV9KCksInB4IikpfWZ1bmN0aW9uIG1lKCl7cmV0dXJuISF3aW5kb3cuTVNJbnB1dE1ldGhvZENvbnRleHQmJiEhZG9jdW1lbnQuZG9jdW1lbnRNb2RlfWZ1bmN0aW9uIGhlKCl7dmFyIHQ9aygpLGU9QSgpO3Quc3R5bGUucmVtb3ZlUHJvcGVydHkoImFsaWduLWl0ZW1zIiksZS5vZmZzZXRUb3A8MCYmKHQuc3R5bGUuYWxpZ25JdGVtcz0iZmxleC1zdGFydCIpfXZhciBnZT1mdW5jdGlvbigpe25hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goLyhDcmlPU3xGeGlPU3xFZGdpT1N8WWFCcm93c2VyfFVDQnJvd3NlcikvaSl8fEEoKS5zY3JvbGxIZWlnaHQ+d2luZG93LmlubmVySGVpZ2h0LTQ0JiYoaygpLnN0eWxlLnBhZGRpbmdCb3R0b209IiIuY29uY2F0KDQ0LCJweCIpKX0sdmU9ZnVuY3Rpb24oKXt2YXIgZSx0PWsoKTt0Lm9udG91Y2hzdGFydD1mdW5jdGlvbih0KXtlPWJlKHQpfSx0Lm9udG91Y2htb3ZlPWZ1bmN0aW9uKHQpe2UmJih0LnByZXZlbnREZWZhdWx0KCksdC5zdG9wUHJvcGFnYXRpb24oKSl9fSxiZT1mdW5jdGlvbih0KXt2YXIgZT10LnRhcmdldCxuPWsoKTtyZXR1cm4heWUodCkmJiF3ZSh0KSYmKGU9PT1ufHwhKGN0KG4pfHwiSU5QVVQiPT09ZS50YWdOYW1lfHxjdChQKCkpJiZQKCkuY29udGFpbnMoZSkpKX0seWU9ZnVuY3Rpb24odCl7cmV0dXJuIHQudG91Y2hlcyYmdC50b3VjaGVzLmxlbmd0aCYmInN0eWx1cyI9PT10LnRvdWNoZXNbMF0udG91Y2hUeXBlfSx3ZT1mdW5jdGlvbih0KXtyZXR1cm4gdC50b3VjaGVzJiYxPHQudG91Y2hlcy5sZW5ndGh9LENlPXtzd2FsUHJvbWlzZVJlc29sdmU6bmV3IFdlYWtNYXB9O2Z1bmN0aW9uIGtlKHQsZSxuLG8pe0coKT9PZSh0LG8pOihKdChuKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIE9lKHQsbyl9KSx0ZS5rZXlkb3duVGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLHRlLmtleWRvd25IYW5kbGVyLHtjYXB0dXJlOnRlLmtleWRvd25MaXN0ZW5lckNhcHR1cmV9KSx0ZS5rZXlkb3duSGFuZGxlckFkZGVkPSExKSxlLnBhcmVudE5vZGUmJiFkb2N1bWVudC5ib2R5LmdldEF0dHJpYnV0ZSgiZGF0YS1zd2FsMi1xdWV1ZS1zdGVwIikmJmUucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChlKSxOKCkmJihudWxsIT09dHQucHJldmlvdXNCb2R5UGFkZGluZyYmKGRvY3VtZW50LmJvZHkuc3R5bGUucGFkZGluZ1JpZ2h0PSIiLmNvbmNhdCh0dC5wcmV2aW91c0JvZHlQYWRkaW5nLCJweCIpLHR0LnByZXZpb3VzQm9keVBhZGRpbmc9bnVsbCksRihkb2N1bWVudC5ib2R5LEouaW9zZml4KSYmKGU9cGFyc2VJbnQoZG9jdW1lbnQuYm9keS5zdHlsZS50b3AsMTApLGJ0KGRvY3VtZW50LmJvZHksSi5pb3NmaXgpLGRvY3VtZW50LmJvZHkuc3R5bGUudG9wPSIiLGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wPS0xKmUpLCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZtZSgpJiZ3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIixoZSksZyhkb2N1bWVudC5ib2R5LmNoaWxkcmVuKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3QuaGFzQXR0cmlidXRlKCJkYXRhLXByZXZpb3VzLWFyaWEtaGlkZGVuIik/KHQuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsdC5nZXRBdHRyaWJ1dGUoImRhdGEtcHJldmlvdXMtYXJpYS1oaWRkZW4iKSksdC5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtcHJldmlvdXMtYXJpYS1oaWRkZW4iKSk6dC5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIil9KSksYnQoW2RvY3VtZW50LmRvY3VtZW50RWxlbWVudCxkb2N1bWVudC5ib2R5XSxbSi5zaG93bixKWyJoZWlnaHQtYXV0byJdLEpbIm5vLWJhY2tkcm9wIl0sSlsidG9hc3Qtc2hvd24iXV0pfWZ1bmN0aW9uIEFlKHQpe3ZhciBlLG4sbyxpPUEoKTtpJiYodD14ZSh0KSwoZT1UdC5pbm5lclBhcmFtcy5nZXQodGhpcykpJiYhRihpLGUuaGlkZUNsYXNzLnBvcHVwKSYmKG49Q2Uuc3dhbFByb21pc2VSZXNvbHZlLmdldCh0aGlzKSxidChpLGUuc2hvd0NsYXNzLnBvcHVwKSx2dChpLGUuaGlkZUNsYXNzLnBvcHVwKSxvPWsoKSxidChvLGUuc2hvd0NsYXNzLmJhY2tkcm9wKSx2dChvLGUuaGlkZUNsYXNzLmJhY2tkcm9wKSxCZSh0aGlzLGksZSksbih0KSkpfWZ1bmN0aW9uIHhlKHQpe3JldHVybiB2b2lkIDA9PT10P3tpc0NvbmZpcm1lZDohMSxpc0RlbmllZDohMSxpc0Rpc21pc3NlZDohMH06cyh7aXNDb25maXJtZWQ6ITEsaXNEZW5pZWQ6ITEsaXNEaXNtaXNzZWQ6ITF9LHQpfWZ1bmN0aW9uIEJlKHQsZSxuKXt2YXIgbz1rKCksaT1CdCYmbHQoZSkscj1uLm9uQ2xvc2UsYT1uLm9uQWZ0ZXJDbG9zZSx1PW4ud2lsbENsb3NlLHM9bi5kaWRDbG9zZTtQZShlLHUsciksaT9FZSh0LGUsbyxuLnJldHVybkZvY3VzLHN8fGEpOmtlKHQsbyxuLnJldHVybkZvY3VzLHN8fGEpfXZhciBQZT1mdW5jdGlvbih0LGUsbil7bnVsbCE9PWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBlP2UodCk6bnVsbCE9PW4mJiJmdW5jdGlvbiI9PXR5cGVvZiBuJiZuKHQpfSxFZT1mdW5jdGlvbih0LGUsbixvLGkpe3RlLnN3YWxDbG9zZUV2ZW50RmluaXNoZWRDYWxsYmFjaz1rZS5iaW5kKG51bGwsdCxuLG8saSksZS5hZGRFdmVudExpc3RlbmVyKEJ0LGZ1bmN0aW9uKHQpe3QudGFyZ2V0PT09ZSYmKHRlLnN3YWxDbG9zZUV2ZW50RmluaXNoZWRDYWxsYmFjaygpLGRlbGV0ZSB0ZS5zd2FsQ2xvc2VFdmVudEZpbmlzaGVkQ2FsbGJhY2spfSl9LE9lPWZ1bmN0aW9uKHQsZSl7c2V0VGltZW91dChmdW5jdGlvbigpeyJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlKCksdC5fZGVzdHJveSgpfSl9O2Z1bmN0aW9uIFNlKHQsZSxuKXt2YXIgbz1UdC5kb21DYWNoZS5nZXQodCk7ZS5mb3JFYWNoKGZ1bmN0aW9uKHQpe29bdF0uZGlzYWJsZWQ9bn0pfWZ1bmN0aW9uIFRlKHQsZSl7aWYoIXQpcmV0dXJuITE7aWYoInJhZGlvIj09PXQudHlwZSlmb3IodmFyIG49dC5wYXJlbnROb2RlLnBhcmVudE5vZGUucXVlcnlTZWxlY3RvckFsbCgiaW5wdXQiKSxvPTA7bzxuLmxlbmd0aDtvKyspbltvXS5kaXNhYmxlZD1lO2Vsc2UgdC5kaXNhYmxlZD1lfXZhciBMZT1mdW5jdGlvbigpe2Z1bmN0aW9uIG4odCxlKXthKHRoaXMsbiksdGhpcy5jYWxsYmFjaz10LHRoaXMucmVtYWluaW5nPWUsdGhpcy5ydW5uaW5nPSExLHRoaXMuc3RhcnQoKX1yZXR1cm4gdShuLFt7a2V5OiJzdGFydCIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ydW5uaW5nfHwodGhpcy5ydW5uaW5nPSEwLHRoaXMuc3RhcnRlZD1uZXcgRGF0ZSx0aGlzLmlkPXNldFRpbWVvdXQodGhpcy5jYWxsYmFjayx0aGlzLnJlbWFpbmluZykpLHRoaXMucmVtYWluaW5nfX0se2tleToic3RvcCIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ydW5uaW5nJiYodGhpcy5ydW5uaW5nPSExLGNsZWFyVGltZW91dCh0aGlzLmlkKSx0aGlzLnJlbWFpbmluZy09bmV3IERhdGUtdGhpcy5zdGFydGVkKSx0aGlzLnJlbWFpbmluZ319LHtrZXk6ImluY3JlYXNlIix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZT10aGlzLnJ1bm5pbmc7cmV0dXJuIGUmJnRoaXMuc3RvcCgpLHRoaXMucmVtYWluaW5nKz10LGUmJnRoaXMuc3RhcnQoKSx0aGlzLnJlbWFpbmluZ319LHtrZXk6ImdldFRpbWVyTGVmdCIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ydW5uaW5nJiYodGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKSx0aGlzLnJlbWFpbmluZ319LHtrZXk6ImlzUnVubmluZyIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ydW5uaW5nfX1dKSxufSgpLERlPXtlbWFpbDpmdW5jdGlvbih0LGUpe3JldHVybi9eW2EtekEtWjAtOS4rXy1dK0BbYS16QS1aMC05Li1dK1wuW2EtekEtWjAtOS1dezIsMjR9JC8udGVzdCh0KT9Qcm9taXNlLnJlc29sdmUoKTpQcm9taXNlLnJlc29sdmUoZXx8IkludmFsaWQgZW1haWwgYWRkcmVzcyIpfSx1cmw6ZnVuY3Rpb24odCxlKXtyZXR1cm4vXmh0dHBzPzpcL1wvKHd3d1wuKT9bLWEtekEtWjAtOUA6JS5fK34jPV17MSwyNTZ9XC5bYS16XXsyLDYzfVxiKFstYS16QS1aMC05QDolXysufiM/Ji89XSopJC8udGVzdCh0KT9Qcm9taXNlLnJlc29sdmUoKTpQcm9taXNlLnJlc29sdmUoZXx8IkludmFsaWQgVVJMIil9fTtmdW5jdGlvbiBxZSh0KXt2YXIgZSxuOyhlPXQpLmlucHV0VmFsaWRhdG9yfHxPYmplY3Qua2V5cyhEZSkuZm9yRWFjaChmdW5jdGlvbih0KXtlLmlucHV0PT09dCYmKGUuaW5wdXRWYWxpZGF0b3I9RGVbdF0pfSksdC5zaG93TG9hZGVyT25Db25maXJtJiYhdC5wcmVDb25maXJtJiZXKCJzaG93TG9hZGVyT25Db25maXJtIGlzIHNldCB0byB0cnVlLCBidXQgcHJlQ29uZmlybSBpcyBub3QgZGVmaW5lZC5cbnNob3dMb2FkZXJPbkNvbmZpcm0gc2hvdWxkIGJlIHVzZWQgdG9nZXRoZXIgd2l0aCBwcmVDb25maXJtLCBzZWUgdXNhZ2UgZXhhbXBsZTpcbmh0dHBzOi8vc3dlZXRhbGVydDIuZ2l0aHViLmlvLyNhamF4LXJlcXVlc3QiKSx0LmFuaW1hdGlvbj1aKHQuYW5pbWF0aW9uKSwobj10KS50YXJnZXQmJigic3RyaW5nIiE9dHlwZW9mIG4udGFyZ2V0fHxkb2N1bWVudC5xdWVyeVNlbGVjdG9yKG4udGFyZ2V0KSkmJigic3RyaW5nIj09dHlwZW9mIG4udGFyZ2V0fHxuLnRhcmdldC5hcHBlbmRDaGlsZCl8fChXKCdUYXJnZXQgcGFyYW1ldGVyIGlzIG5vdCB2YWxpZCwgZGVmYXVsdGluZyB0byAiYm9keSInKSxuLnRhcmdldD0iYm9keSIpLCJzdHJpbmciPT10eXBlb2YgdC50aXRsZSYmKHQudGl0bGU9dC50aXRsZS5zcGxpdCgiXG4iKS5qb2luKCI8YnIgLz4iKSksa3QodCl9ZnVuY3Rpb24gSWUodCl7dmFyIGU9aygpLG49QSgpOyJmdW5jdGlvbiI9PXR5cGVvZiB0LndpbGxPcGVuP3Qud2lsbE9wZW4obik6ImZ1bmN0aW9uIj09dHlwZW9mIHQub25CZWZvcmVPcGVuJiZ0Lm9uQmVmb3JlT3BlbihuKTt2YXIgbz13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5ib2R5KS5vdmVyZmxvd1k7JGUoZSxuLHQpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtaZShlLG4pfSwxMCksTigpJiYoUWUoZSx0LnNjcm9sbGJhclBhZGRpbmcsbyksZyhkb2N1bWVudC5ib2R5LmNoaWxkcmVuKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3Q9PT1rKCl8fGZ1bmN0aW9uKHQsZSl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQuY29udGFpbnMpcmV0dXJuIHQuY29udGFpbnMoZSl9KHQsaygpKXx8KHQuaGFzQXR0cmlidXRlKCJhcmlhLWhpZGRlbiIpJiZ0LnNldEF0dHJpYnV0ZSgiZGF0YS1wcmV2aW91cy1hcmlhLWhpZGRlbiIsdC5nZXRBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIikpLHQuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsInRydWUiKSl9KSksRygpfHx0ZS5wcmV2aW91c0FjdGl2ZUVsZW1lbnR8fCh0ZS5wcmV2aW91c0FjdGl2ZUVsZW1lbnQ9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCksWWUobix0KSxidChlLEpbIm5vLXRyYW5zaXRpb24iXSl9ZnVuY3Rpb24gamUodCl7dmFyIGU9QSgpO3QudGFyZ2V0PT09ZSYmKHQ9aygpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcihCdCxqZSksdC5zdHlsZS5vdmVyZmxvd1k9ImF1dG8iKX1mdW5jdGlvbiBNZSh0LGUpe3QuY2xvc2VQb3B1cCh7aXNDb25maXJtZWQ6ITAsdmFsdWU6ZX0pfWZ1bmN0aW9uIEhlKHQsZSxuKXt2YXIgbz1SKCk7aWYoby5sZW5ndGgpcmV0dXJuKGUrPW4pPT09by5sZW5ndGg/ZT0wOi0xPT09ZSYmKGU9by5sZW5ndGgtMSksb1tlXS5mb2N1cygpO0EoKS5mb2N1cygpfXZhciBWZT1bInN3YWwtdGl0bGUiLCJzd2FsLWh0bWwiLCJzd2FsLWZvb3RlciJdLFJlPWZ1bmN0aW9uKHQpe3ZhciBuPXt9O3JldHVybiBnKHQucXVlcnlTZWxlY3RvckFsbCgic3dhbC1wYXJhbSIpKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe0tlKHQsWyJuYW1lIiwidmFsdWUiXSk7dmFyIGU9dC5nZXRBdHRyaWJ1dGUoIm5hbWUiKSx0PXQuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpOyJib29sZWFuIj09dHlwZW9mIHVlW2VdJiYiZmFsc2UiPT09dCYmKHQ9ITEpLCJvYmplY3QiPT09cih1ZVtlXSkmJih0PUpTT04ucGFyc2UodCkpLG5bZV09dH0pLG59LE5lPWZ1bmN0aW9uKHQpe3ZhciBuPXt9O3JldHVybiBnKHQucXVlcnlTZWxlY3RvckFsbCgic3dhbC1idXR0b24iKSkuZm9yRWFjaChmdW5jdGlvbih0KXtLZSh0LFsidHlwZSIsImNvbG9yIiwiYXJpYS1sYWJlbCJdKTt2YXIgZT10LmdldEF0dHJpYnV0ZSgidHlwZSIpO25bIiIuY29uY2F0KGUsIkJ1dHRvblRleHQiKV09dC5pbm5lckhUTUwsblsic2hvdyIuY29uY2F0KG0oZSksIkJ1dHRvbiIpXT0hMCx0Lmhhc0F0dHJpYnV0ZSgiY29sb3IiKSYmKG5bIiIuY29uY2F0KGUsIkJ1dHRvbkNvbG9yIildPXQuZ2V0QXR0cmlidXRlKCJjb2xvciIpKSx0Lmhhc0F0dHJpYnV0ZSgiYXJpYS1sYWJlbCIpJiYoblsiIi5jb25jYXQoZSwiQnV0dG9uQXJpYUxhYmVsIildPXQuZ2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIikpfSksbn0sVWU9ZnVuY3Rpb24odCl7dmFyIGU9e30sdD10LnF1ZXJ5U2VsZWN0b3IoInN3YWwtaW1hZ2UiKTtyZXR1cm4gdCYmKEtlKHQsWyJzcmMiLCJ3aWR0aCIsImhlaWdodCIsImFsdCJdKSx0Lmhhc0F0dHJpYnV0ZSgic3JjIikmJihlLmltYWdlVXJsPXQuZ2V0QXR0cmlidXRlKCJzcmMiKSksdC5oYXNBdHRyaWJ1dGUoIndpZHRoIikmJihlLmltYWdlV2lkdGg9dC5nZXRBdHRyaWJ1dGUoIndpZHRoIikpLHQuaGFzQXR0cmlidXRlKCJoZWlnaHQiKSYmKGUuaW1hZ2VIZWlnaHQ9dC5nZXRBdHRyaWJ1dGUoImhlaWdodCIpKSx0Lmhhc0F0dHJpYnV0ZSgiYWx0IikmJihlLmltYWdlQWx0PXQuZ2V0QXR0cmlidXRlKCJhbHQiKSkpLGV9LEZlPWZ1bmN0aW9uKHQpe3ZhciBlPXt9LHQ9dC5xdWVyeVNlbGVjdG9yKCJzd2FsLWljb24iKTtyZXR1cm4gdCYmKEtlKHQsWyJ0eXBlIiwiY29sb3IiXSksdC5oYXNBdHRyaWJ1dGUoInR5cGUiKSYmKGUuaWNvbj10LmdldEF0dHJpYnV0ZSgidHlwZSIpKSx0Lmhhc0F0dHJpYnV0ZSgiY29sb3IiKSYmKGUuaWNvbkNvbG9yPXQuZ2V0QXR0cmlidXRlKCJjb2xvciIpKSxlLmljb25IdG1sPXQuaW5uZXJIVE1MKSxlfSxfZT1mdW5jdGlvbih0KXt2YXIgbj17fSxlPXQucXVlcnlTZWxlY3Rvcigic3dhbC1pbnB1dCIpO2UmJihLZShlLFsidHlwZSIsImxhYmVsIiwicGxhY2Vob2xkZXIiLCJ2YWx1ZSJdKSxuLmlucHV0PWUuZ2V0QXR0cmlidXRlKCJ0eXBlIil8fCJ0ZXh0IixlLmhhc0F0dHJpYnV0ZSgibGFiZWwiKSYmKG4uaW5wdXRMYWJlbD1lLmdldEF0dHJpYnV0ZSgibGFiZWwiKSksZS5oYXNBdHRyaWJ1dGUoInBsYWNlaG9sZGVyIikmJihuLmlucHV0UGxhY2Vob2xkZXI9ZS5nZXRBdHRyaWJ1dGUoInBsYWNlaG9sZGVyIikpLGUuaGFzQXR0cmlidXRlKCJ2YWx1ZSIpJiYobi5pbnB1dFZhbHVlPWUuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpKSk7dD10LnF1ZXJ5U2VsZWN0b3JBbGwoInN3YWwtaW5wdXQtb3B0aW9uIik7cmV0dXJuIHQubGVuZ3RoJiYobi5pbnB1dE9wdGlvbnM9e30sZyh0KS5mb3JFYWNoKGZ1bmN0aW9uKHQpe0tlKHQsWyJ2YWx1ZSJdKTt2YXIgZT10LmdldEF0dHJpYnV0ZSgidmFsdWUiKSx0PXQuaW5uZXJIVE1MO24uaW5wdXRPcHRpb25zW2VdPXR9KSksbn0semU9ZnVuY3Rpb24odCxlKXt2YXIgbixvPXt9O2ZvcihuIGluIGUpe3ZhciBpPWVbbl0scj10LnF1ZXJ5U2VsZWN0b3IoaSk7ciYmKEtlKHIsW10pLG9baS5yZXBsYWNlKC9ec3dhbC0vLCIiKV09ci5pbm5lckhUTUwudHJpbSgpKX1yZXR1cm4gb30sV2U9ZnVuY3Rpb24oZSl7dmFyIG49VmUuY29uY2F0KFsic3dhbC1wYXJhbSIsInN3YWwtYnV0dG9uIiwic3dhbC1pbWFnZSIsInN3YWwtaWNvbiIsInN3YWwtaW5wdXQiLCJzd2FsLWlucHV0LW9wdGlvbiJdKTtnKGUucXVlcnlTZWxlY3RvckFsbCgiKiIpKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3QucGFyZW50Tm9kZT09PWUmJih0PXQudGFnTmFtZS50b0xvd2VyQ2FzZSgpLC0xPT09bi5pbmRleE9mKHQpJiZXKCJVbnJlY29nbml6ZWQgZWxlbWVudCA8Ii5jb25jYXQodCwiPiIpKSl9KX0sS2U9ZnVuY3Rpb24oZSxuKXtnKGUuYXR0cmlidXRlcykuZm9yRWFjaChmdW5jdGlvbih0KXstMT09PW4uaW5kZXhPZih0Lm5hbWUpJiZXKFsnVW5yZWNvZ25pemVkIGF0dHJpYnV0ZSAiJy5jb25jYXQodC5uYW1lLCciIG9uIDwnKS5jb25jYXQoZS50YWdOYW1lLnRvTG93ZXJDYXNlKCksIj4uIiksIiIuY29uY2F0KG4ubGVuZ3RoPyJBbGxvd2VkIGF0dHJpYnV0ZXMgYXJlOiAiLmNvbmNhdChuLmpvaW4oIiwgIikpOiJUbyBzZXQgdGhlIHZhbHVlLCB1c2UgSFRNTCB3aXRoaW4gdGhlIGVsZW1lbnQuIildKX0pfSxZZT1mdW5jdGlvbih0LGUpeyJmdW5jdGlvbiI9PXR5cGVvZiBlLmRpZE9wZW4/c2V0VGltZW91dChmdW5jdGlvbigpe3JldHVybiBlLmRpZE9wZW4odCl9KToiZnVuY3Rpb24iPT10eXBlb2YgZS5vbk9wZW4mJnNldFRpbWVvdXQoZnVuY3Rpb24oKXtyZXR1cm4gZS5vbk9wZW4odCl9KX0sWmU9ZnVuY3Rpb24odCxlKXtCdCYmbHQoZSk/KHQuc3R5bGUub3ZlcmZsb3dZPSJoaWRkZW4iLGUuYWRkRXZlbnRMaXN0ZW5lcihCdCxqZSkpOnQuc3R5bGUub3ZlcmZsb3dZPSJhdXRvIn0sUWU9ZnVuY3Rpb24odCxlLG4pe3ZhciBvOygvaVBhZHxpUGhvbmV8aVBvZC8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSYmIXdpbmRvdy5NU1N0cmVhbXx8Ik1hY0ludGVsIj09PW5hdmlnYXRvci5wbGF0Zm9ybSYmMTxuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMpJiYhRihkb2N1bWVudC5ib2R5LEouaW9zZml4KSYmKG89ZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AsZG9jdW1lbnQuYm9keS5zdHlsZS50b3A9IiIuY29uY2F0KC0xKm8sInB4IiksdnQoZG9jdW1lbnQuYm9keSxKLmlvc2ZpeCksdmUoKSxnZSgpKSwidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbWUoKSYmKGhlKCksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsaGUpKSxlJiYiaGlkZGVuIiE9PW4mJmZlKCksc2V0VGltZW91dChmdW5jdGlvbigpe3Quc2Nyb2xsVG9wPTB9KX0sJGU9ZnVuY3Rpb24odCxlLG4pe3Z0KHQsbi5zaG93Q2xhc3MuYmFja2Ryb3ApLGUuc3R5bGUuc2V0UHJvcGVydHkoIm9wYWNpdHkiLCIwIiwiaW1wb3J0YW50IikscnQoZSksc2V0VGltZW91dChmdW5jdGlvbigpe3Z0KGUsbi5zaG93Q2xhc3MucG9wdXApLGUuc3R5bGUucmVtb3ZlUHJvcGVydHkoIm9wYWNpdHkiKX0sMTApLHZ0KFtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsZG9jdW1lbnQuYm9keV0sSi5zaG93biksbi5oZWlnaHRBdXRvJiZuLmJhY2tkcm9wJiYhbi50b2FzdCYmdnQoW2RvY3VtZW50LmRvY3VtZW50RWxlbWVudCxkb2N1bWVudC5ib2R5XSxKWyJoZWlnaHQtYXV0byJdKX0sSmU9ZnVuY3Rpb24odCl7cmV0dXJuIHQuY2hlY2tlZD8xOjB9LFhlPWZ1bmN0aW9uKHQpe3JldHVybiB0LmNoZWNrZWQ/dC52YWx1ZTpudWxsfSxHZT1mdW5jdGlvbih0KXtyZXR1cm4gdC5maWxlcy5sZW5ndGg/bnVsbCE9PXQuZ2V0QXR0cmlidXRlKCJtdWx0aXBsZSIpP3QuZmlsZXM6dC5maWxlc1swXTpudWxsfSx0bj1mdW5jdGlvbihlLG4pe2Z1bmN0aW9uIG8odCl7cmV0dXJuIG5uW24uaW5wdXRdKGksb24odCksbil9dmFyIGk9UCgpO2Iobi5pbnB1dE9wdGlvbnMpfHx3KG4uaW5wdXRPcHRpb25zKT8oJHQoVCgpKSx5KG4uaW5wdXRPcHRpb25zKS50aGVuKGZ1bmN0aW9uKHQpe2UuaGlkZUxvYWRpbmcoKSxvKHQpfSkpOiJvYmplY3QiPT09cihuLmlucHV0T3B0aW9ucyk/byhuLmlucHV0T3B0aW9ucyk6SygiVW5leHBlY3RlZCB0eXBlIG9mIGlucHV0T3B0aW9ucyEgRXhwZWN0ZWQgb2JqZWN0LCBNYXAgb3IgUHJvbWlzZSwgZ290ICIuY29uY2F0KHIobi5pbnB1dE9wdGlvbnMpKSl9LGVuPWZ1bmN0aW9uKGUsbil7dmFyIG89ZS5nZXRJbnB1dCgpO2F0KG8pLHkobi5pbnB1dFZhbHVlKS50aGVuKGZ1bmN0aW9uKHQpe28udmFsdWU9Im51bWJlciI9PT1uLmlucHV0P3BhcnNlRmxvYXQodCl8fDA6IiIuY29uY2F0KHQpLHJ0KG8pLG8uZm9jdXMoKSxlLmhpZGVMb2FkaW5nKCl9KS5jYXRjaChmdW5jdGlvbih0KXtLKCJFcnJvciBpbiBpbnB1dFZhbHVlIHByb21pc2U6ICIuY29uY2F0KHQpKSxvLnZhbHVlPSIiLHJ0KG8pLG8uZm9jdXMoKSxlLmhpZGVMb2FkaW5nKCl9KX0sbm49e3NlbGVjdDpmdW5jdGlvbih0LGUsaSl7ZnVuY3Rpb24gbyh0LGUsbil7dmFyIG89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib3B0aW9uIik7by52YWx1ZT1uLFUobyxlKSxvLnNlbGVjdGVkPXJuKG4saS5pbnB1dFZhbHVlKSx0LmFwcGVuZENoaWxkKG8pfXZhciByPXl0KHQsSi5zZWxlY3QpO2UuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgZSxuPXRbMF0sdD10WzFdO0FycmF5LmlzQXJyYXkodCk/KChlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIm9wdGdyb3VwIikpLmxhYmVsPW4sZS5kaXNhYmxlZD0hMSxyLmFwcGVuZENoaWxkKGUpLHQuZm9yRWFjaChmdW5jdGlvbih0KXtyZXR1cm4gbyhlLHRbMV0sdFswXSl9KSk6byhyLHQsbil9KSxyLmZvY3VzKCl9LHJhZGlvOmZ1bmN0aW9uKHQsZSxpKXt2YXIgcj15dCh0LEoucmFkaW8pO2UuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgZT10WzBdLG49dFsxXSxvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0IiksdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsYWJlbCIpO28udHlwZT0icmFkaW8iLG8ubmFtZT1KLnJhZGlvLG8udmFsdWU9ZSxybihlLGkuaW5wdXRWYWx1ZSkmJihvLmNoZWNrZWQ9ITApO2U9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO1UoZSxuKSxlLmNsYXNzTmFtZT1KLmxhYmVsLHQuYXBwZW5kQ2hpbGQobyksdC5hcHBlbmRDaGlsZChlKSxyLmFwcGVuZENoaWxkKHQpfSk7ZT1yLnF1ZXJ5U2VsZWN0b3JBbGwoImlucHV0Iik7ZS5sZW5ndGgmJmVbMF0uZm9jdXMoKX19LG9uPWZ1bmN0aW9uIG4obyl7dmFyIGk9W107cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBNYXAmJm8gaW5zdGFuY2VvZiBNYXA/by5mb3JFYWNoKGZ1bmN0aW9uKHQsZSl7Im9iamVjdCI9PT1yKHQpJiYodD1uKHQpKSxpLnB1c2goW2UsdF0pfSk6T2JqZWN0LmtleXMobykuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgZT1vW3RdOyJvYmplY3QiPT09cihlKSYmKGU9bihlKSksaS5wdXNoKFt0LGVdKX0pLGl9LHJuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGUmJmUudG9TdHJpbmcoKT09PXQudG9TdHJpbmcoKX0sYW49ZnVuY3Rpb24odCxlLG4pe3ZhciBvPWZ1bmN0aW9uKHQsZSl7dmFyIG49dC5nZXRJbnB1dCgpO2lmKCFuKXJldHVybiBudWxsO3N3aXRjaChlLmlucHV0KXtjYXNlImNoZWNrYm94IjpyZXR1cm4gSmUobik7Y2FzZSJyYWRpbyI6cmV0dXJuIFhlKG4pO2Nhc2UiZmlsZSI6cmV0dXJuIEdlKG4pO2RlZmF1bHQ6cmV0dXJuIGUuaW5wdXRBdXRvVHJpbT9uLnZhbHVlLnRyaW0oKTpuLnZhbHVlfX0odCxlKTtlLmlucHV0VmFsaWRhdG9yP3VuKHQsZSxvKTp0LmdldElucHV0KCkuY2hlY2tWYWxpZGl0eSgpPygiZGVueSI9PT1uP3NuOmNuKSh0LGUsbyk6KHQuZW5hYmxlQnV0dG9ucygpLHQuc2hvd1ZhbGlkYXRpb25NZXNzYWdlKGUudmFsaWRhdGlvbk1lc3NhZ2UpKX0sdW49ZnVuY3Rpb24oZSxuLG8pe2UuZGlzYWJsZUlucHV0KCksUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbigpe3JldHVybiB5KG4uaW5wdXRWYWxpZGF0b3IobyxuLnZhbGlkYXRpb25NZXNzYWdlKSl9KS50aGVuKGZ1bmN0aW9uKHQpe2UuZW5hYmxlQnV0dG9ucygpLGUuZW5hYmxlSW5wdXQoKSx0P2Uuc2hvd1ZhbGlkYXRpb25NZXNzYWdlKHQpOmNuKGUsbixvKX0pfSxzbj1mdW5jdGlvbihlLHQsbil7dC5zaG93TG9hZGVyT25EZW55JiYkdChMKCkpLHQucHJlRGVueT9Qcm9taXNlLnJlc29sdmUoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHkodC5wcmVEZW55KG4sdC52YWxpZGF0aW9uTWVzc2FnZSkpfSkudGhlbihmdW5jdGlvbih0KXshMT09PXQ/ZS5oaWRlTG9hZGluZygpOmUuY2xvc2VQb3B1cCh7aXNEZW5pZWQ6ITAsdmFsdWU6dm9pZCAwPT09dD9uOnR9KX0pOmUuY2xvc2VQb3B1cCh7aXNEZW5pZWQ6ITAsdmFsdWU6bn0pfSxjbj1mdW5jdGlvbihlLHQsbil7dC5zaG93TG9hZGVyT25Db25maXJtJiYkdCgpLHQucHJlQ29uZmlybT8oZS5yZXNldFZhbGlkYXRpb25NZXNzYWdlKCksUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbigpe3JldHVybiB5KHQucHJlQ29uZmlybShuLHQudmFsaWRhdGlvbk1lc3NhZ2UpKX0pLnRoZW4oZnVuY3Rpb24odCl7d3QoUygpKXx8ITE9PT10P2UuaGlkZUxvYWRpbmcoKTpNZShlLHZvaWQgMD09PXQ/bjp0KX0pKTpNZShlLG4pfSxsbj1bIkFycm93UmlnaHQiLCJBcnJvd0Rvd24iLCJSaWdodCIsIkRvd24iXSxkbj1bIkFycm93TGVmdCIsIkFycm93VXAiLCJMZWZ0IiwiVXAiXSxwbj1bIkVzY2FwZSIsIkVzYyJdLGZuPWZ1bmN0aW9uKHQsZSxuKXt2YXIgbz1UdC5pbm5lclBhcmFtcy5nZXQodCk7byYmKG8uc3RvcEtleWRvd25Qcm9wYWdhdGlvbiYmZS5zdG9wUHJvcGFnYXRpb24oKSwiRW50ZXIiPT09ZS5rZXk/bW4odCxlLG8pOiJUYWIiPT09ZS5rZXk/aG4oZSxvKTotMSE9PVtdLmNvbmNhdChsbixkbikuaW5kZXhPZihlLmtleSk/Z24oZS5rZXkpOi0xIT09cG4uaW5kZXhPZihlLmtleSkmJnZuKGUsbyxuKSl9LG1uPWZ1bmN0aW9uKHQsZSxuKXtlLmlzQ29tcG9zaW5nfHxlLnRhcmdldCYmdC5nZXRJbnB1dCgpJiZlLnRhcmdldC5vdXRlckhUTUw9PT10LmdldElucHV0KCkub3V0ZXJIVE1MJiYtMT09PVsidGV4dGFyZWEiLCJmaWxlIl0uaW5kZXhPZihuLmlucHV0KSYmKEZ0KCksZS5wcmV2ZW50RGVmYXVsdCgpKX0saG49ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49dC50YXJnZXQsbz1SKCksaT0tMSxyPTA7cjxvLmxlbmd0aDtyKyspaWYobj09PW9bcl0pe2k9cjticmVha310LnNoaWZ0S2V5P0hlKDAsaSwtMSk6SGUoMCxpLDEpLHQuc3RvcFByb3BhZ2F0aW9uKCksdC5wcmV2ZW50RGVmYXVsdCgpfSxnbj1mdW5jdGlvbih0KXstMSE9PVtUKCksTCgpLHEoKV0uaW5kZXhPZihkb2N1bWVudC5hY3RpdmVFbGVtZW50KSYmKHQ9LTEhPT1sbi5pbmRleE9mKHQpPyJuZXh0RWxlbWVudFNpYmxpbmciOiJwcmV2aW91c0VsZW1lbnRTaWJsaW5nIiwodD1kb2N1bWVudC5hY3RpdmVFbGVtZW50W3RdKSYmdC5mb2N1cygpKX0sdm49ZnVuY3Rpb24odCxlLG4pe1ooZS5hbGxvd0VzY2FwZUtleSkmJih0LnByZXZlbnREZWZhdWx0KCksbihRLmVzYykpfSxibj1mdW5jdGlvbihlLHQsbil7dC5wb3B1cC5vbmNsaWNrPWZ1bmN0aW9uKCl7dmFyIHQ9VHQuaW5uZXJQYXJhbXMuZ2V0KGUpO3Quc2hvd0NvbmZpcm1CdXR0b258fHQuc2hvd0RlbnlCdXR0b258fHQuc2hvd0NhbmNlbEJ1dHRvbnx8dC5zaG93Q2xvc2VCdXR0b258fHQudGltZXJ8fHQuaW5wdXR8fG4oUS5jbG9zZSl9fSx5bj0hMSx3bj1mdW5jdGlvbihlKXtlLnBvcHVwLm9ubW91c2Vkb3duPWZ1bmN0aW9uKCl7ZS5jb250YWluZXIub25tb3VzZXVwPWZ1bmN0aW9uKHQpe2UuY29udGFpbmVyLm9ubW91c2V1cD12b2lkIDAsdC50YXJnZXQ9PT1lLmNvbnRhaW5lciYmKHluPSEwKX19fSxDbj1mdW5jdGlvbihlKXtlLmNvbnRhaW5lci5vbm1vdXNlZG93bj1mdW5jdGlvbigpe2UucG9wdXAub25tb3VzZXVwPWZ1bmN0aW9uKHQpe2UucG9wdXAub25tb3VzZXVwPXZvaWQgMCx0LnRhcmdldCE9PWUucG9wdXAmJiFlLnBvcHVwLmNvbnRhaW5zKHQudGFyZ2V0KXx8KHluPSEwKX19fSxrbj1mdW5jdGlvbihuLG8saSl7by5jb250YWluZXIub25jbGljaz1mdW5jdGlvbih0KXt2YXIgZT1UdC5pbm5lclBhcmFtcy5nZXQobik7eW4/eW49ITE6dC50YXJnZXQ9PT1vLmNvbnRhaW5lciYmWihlLmFsbG93T3V0c2lkZUNsaWNrKSYmaShRLmJhY2tkcm9wKX19O2Z1bmN0aW9uIEFuKHQsZSl7dmFyIG49ZnVuY3Rpb24odCl7dD0ic3RyaW5nIj09dHlwZW9mIHQudGVtcGxhdGU/ZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0LnRlbXBsYXRlKTp0LnRlbXBsYXRlO2lmKCF0KXJldHVybnt9O3Q9dC5jb250ZW50fHx0O3JldHVybiBXZSh0KSxzKFJlKHQpLE5lKHQpLFVlKHQpLEZlKHQpLF9lKHQpLHplKHQsVmUpKX0odCk7cmV0dXJuKG49cyh7fSx1ZSxlLG4sdCkpLnNob3dDbGFzcz1zKHt9LHVlLnNob3dDbGFzcyxuLnNob3dDbGFzcyksbi5oaWRlQ2xhc3M9cyh7fSx1ZS5oaWRlQ2xhc3Msbi5oaWRlQ2xhc3MpLCExPT09dC5hbmltYXRpb24mJihuLnNob3dDbGFzcz17cG9wdXA6InN3YWwyLW5vYW5pbWF0aW9uIixiYWNrZHJvcDoic3dhbDItbm9hbmltYXRpb24ifSxuLmhpZGVDbGFzcz17fSksbn1mdW5jdGlvbiB4bihhLHUscyl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQpe2Z1bmN0aW9uIGUodCl7YS5jbG9zZVBvcHVwKHtpc0Rpc21pc3NlZDohMCxkaXNtaXNzOnR9KX12YXIgbixvLGkscjtDZS5zd2FsUHJvbWlzZVJlc29sdmUuc2V0KGEsdCksdS5jb25maXJtQnV0dG9uLm9uY2xpY2s9ZnVuY3Rpb24oKXtyZXR1cm4gZT1zLCh0PWEpLmRpc2FibGVCdXR0b25zKCksdm9pZChlLmlucHV0P2FuKHQsZSwiY29uZmlybSIpOmNuKHQsZSwhMCkpO3ZhciB0LGV9LHUuZGVueUJ1dHRvbi5vbmNsaWNrPWZ1bmN0aW9uKCl7cmV0dXJuIGU9cywodD1hKS5kaXNhYmxlQnV0dG9ucygpLHZvaWQoZS5yZXR1cm5JbnB1dFZhbHVlT25EZW55P2FuKHQsZSwiZGVueSIpOnNuKHQsZSwhMSkpO3ZhciB0LGV9LHUuY2FuY2VsQnV0dG9uLm9uY2xpY2s9ZnVuY3Rpb24oKXtyZXR1cm4gdD1lLGEuZGlzYWJsZUJ1dHRvbnMoKSx2b2lkIHQoUS5jYW5jZWwpO3ZhciB0fSx1LmNsb3NlQnV0dG9uLm9uY2xpY2s9ZnVuY3Rpb24oKXtyZXR1cm4gZShRLmNsb3NlKX0sbj1hLHI9dSx0PWUsVHQuaW5uZXJQYXJhbXMuZ2V0KG4pLnRvYXN0P2JuKG4scix0KTood24ociksQ24ociksa24obixyLHQpKSxvPWEscj1zLGk9ZSwodD10ZSkua2V5ZG93blRhcmdldCYmdC5rZXlkb3duSGFuZGxlckFkZGVkJiYodC5rZXlkb3duVGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLHQua2V5ZG93bkhhbmRsZXIse2NhcHR1cmU6dC5rZXlkb3duTGlzdGVuZXJDYXB0dXJlfSksdC5rZXlkb3duSGFuZGxlckFkZGVkPSExKSxyLnRvYXN0fHwodC5rZXlkb3duSGFuZGxlcj1mdW5jdGlvbih0KXtyZXR1cm4gZm4obyx0LGkpfSx0LmtleWRvd25UYXJnZXQ9ci5rZXlkb3duTGlzdGVuZXJDYXB0dXJlP3dpbmRvdzpBKCksdC5rZXlkb3duTGlzdGVuZXJDYXB0dXJlPXIua2V5ZG93bkxpc3RlbmVyQ2FwdHVyZSx0LmtleWRvd25UYXJnZXQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdC5rZXlkb3duSGFuZGxlcix7Y2FwdHVyZTp0LmtleWRvd25MaXN0ZW5lckNhcHR1cmV9KSx0LmtleWRvd25IYW5kbGVyQWRkZWQ9ITApLHI9YSwic2VsZWN0Ij09PSh0PXMpLmlucHV0fHwicmFkaW8iPT09dC5pbnB1dD90bihyLHQpOi0xIT09WyJ0ZXh0IiwiZW1haWwiLCJudW1iZXIiLCJ0ZWwiLCJ0ZXh0YXJlYSJdLmluZGV4T2YodC5pbnB1dCkmJihiKHQuaW5wdXRWYWx1ZSl8fHcodC5pbnB1dFZhbHVlKSkmJmVuKHIsdCksSWUocyksUG4odGUscyxlKSxFbih1LHMpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt1LmNvbnRhaW5lci5zY3JvbGxUb3A9MH0pfSl9ZnVuY3Rpb24gQm4odCl7dmFyIGU9e3BvcHVwOkEoKSxjb250YWluZXI6aygpLGNvbnRlbnQ6UCgpLGFjdGlvbnM6SSgpLGNvbmZpcm1CdXR0b246VCgpLGRlbnlCdXR0b246TCgpLGNhbmNlbEJ1dHRvbjpxKCksbG9hZGVyOkQoKSxjbG9zZUJ1dHRvbjpWKCksdmFsaWRhdGlvbk1lc3NhZ2U6UygpLHByb2dyZXNzU3RlcHM6bigpfTtyZXR1cm4gVHQuZG9tQ2FjaGUuc2V0KHQsZSksZX12YXIgUG49ZnVuY3Rpb24odCxlLG4pe3ZhciBvPUgoKTthdChvKSxlLnRpbWVyJiYodC50aW1lb3V0PW5ldyBMZShmdW5jdGlvbigpe24oInRpbWVyIiksZGVsZXRlIHQudGltZW91dH0sZS50aW1lciksZS50aW1lclByb2dyZXNzQmFyJiYocnQobyksc2V0VGltZW91dChmdW5jdGlvbigpe3QudGltZW91dCYmdC50aW1lb3V0LnJ1bm5pbmcmJmR0KGUudGltZXIpfSkpKX0sRW49ZnVuY3Rpb24odCxlKXtpZighZS50b2FzdClyZXR1cm4gWihlLmFsbG93RW50ZXJLZXkpP3ZvaWQoT24odCxlKXx8SGUoMCwtMSwxKSk6U24oKX0sT249ZnVuY3Rpb24odCxlKXtyZXR1cm4gZS5mb2N1c0RlbnkmJnd0KHQuZGVueUJ1dHRvbik/KHQuZGVueUJ1dHRvbi5mb2N1cygpLCEwKTplLmZvY3VzQ2FuY2VsJiZ3dCh0LmNhbmNlbEJ1dHRvbik/KHQuY2FuY2VsQnV0dG9uLmZvY3VzKCksITApOiEoIWUuZm9jdXNDb25maXJtfHwhd3QodC5jb25maXJtQnV0dG9uKSkmJih0LmNvbmZpcm1CdXR0b24uZm9jdXMoKSwhMCl9LFNuPWZ1bmN0aW9uKCl7ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCYmImZ1bmN0aW9uIj09dHlwZW9mIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQuYmx1ciYmZG9jdW1lbnQuYWN0aXZlRWxlbWVudC5ibHVyKCl9O2Z1bmN0aW9uIFRuKHQpeyJmdW5jdGlvbiI9PXR5cGVvZiB0LmRpZERlc3Ryb3k/dC5kaWREZXN0cm95KCk6ImZ1bmN0aW9uIj09dHlwZW9mIHQub25EZXN0cm95JiZ0Lm9uRGVzdHJveSgpfWZ1bmN0aW9uIExuKHQpe2RlbGV0ZSB0LnBhcmFtcyxkZWxldGUgdGUua2V5ZG93bkhhbmRsZXIsZGVsZXRlIHRlLmtleWRvd25UYXJnZXQsSW4oVHQpLEluKENlKX12YXIgRG4scW4sSW49ZnVuY3Rpb24odCl7Zm9yKHZhciBlIGluIHQpdFtlXT1uZXcgV2Vha01hcH0sam49T2JqZWN0LmZyZWV6ZSh7aGlkZUxvYWRpbmc6cGUsZGlzYWJsZUxvYWRpbmc6cGUsZ2V0SW5wdXQ6ZnVuY3Rpb24odCl7dmFyIGU9VHQuaW5uZXJQYXJhbXMuZ2V0KHR8fHRoaXMpO3JldHVybih0PVR0LmRvbUNhY2hlLmdldCh0fHx0aGlzKSk/ZXQodC5jb250ZW50LGUuaW5wdXQpOm51bGx9LGNsb3NlOkFlLGNsb3NlUG9wdXA6QWUsY2xvc2VNb2RhbDpBZSxjbG9zZVRvYXN0OkFlLGVuYWJsZUJ1dHRvbnM6ZnVuY3Rpb24oKXtTZSh0aGlzLFsiY29uZmlybUJ1dHRvbiIsImRlbnlCdXR0b24iLCJjYW5jZWxCdXR0b24iXSwhMSl9LGRpc2FibGVCdXR0b25zOmZ1bmN0aW9uKCl7U2UodGhpcyxbImNvbmZpcm1CdXR0b24iLCJkZW55QnV0dG9uIiwiY2FuY2VsQnV0dG9uIl0sITApfSxlbmFibGVJbnB1dDpmdW5jdGlvbigpe3JldHVybiBUZSh0aGlzLmdldElucHV0KCksITEpfSxkaXNhYmxlSW5wdXQ6ZnVuY3Rpb24oKXtyZXR1cm4gVGUodGhpcy5nZXRJbnB1dCgpLCEwKX0sc2hvd1ZhbGlkYXRpb25NZXNzYWdlOmZ1bmN0aW9uKHQpe3ZhciBlPVR0LmRvbUNhY2hlLmdldCh0aGlzKSxuPVR0LmlubmVyUGFyYW1zLmdldCh0aGlzKTtVKGUudmFsaWRhdGlvbk1lc3NhZ2UsdCksZS52YWxpZGF0aW9uTWVzc2FnZS5jbGFzc05hbWU9SlsidmFsaWRhdGlvbi1tZXNzYWdlIl0sbi5jdXN0b21DbGFzcyYmbi5jdXN0b21DbGFzcy52YWxpZGF0aW9uTWVzc2FnZSYmdnQoZS52YWxpZGF0aW9uTWVzc2FnZSxuLmN1c3RvbUNsYXNzLnZhbGlkYXRpb25NZXNzYWdlKSxydChlLnZhbGlkYXRpb25NZXNzYWdlKSwoZT10aGlzLmdldElucHV0KCkpJiYoZS5zZXRBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIsITApLGUuc2V0QXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZEJ5IixKWyJ2YWxpZGF0aW9uLW1lc3NhZ2UiXSksbnQoZSksdnQoZSxKLmlucHV0ZXJyb3IpKX0scmVzZXRWYWxpZGF0aW9uTWVzc2FnZTpmdW5jdGlvbigpe3ZhciB0PVR0LmRvbUNhY2hlLmdldCh0aGlzKTt0LnZhbGlkYXRpb25NZXNzYWdlJiZhdCh0LnZhbGlkYXRpb25NZXNzYWdlKSwodD10aGlzLmdldElucHV0KCkpJiYodC5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIpLHQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZEJ5IiksYnQodCxKLmlucHV0ZXJyb3IpKX0sZ2V0UHJvZ3Jlc3NTdGVwczpmdW5jdGlvbigpe3JldHVybiBUdC5kb21DYWNoZS5nZXQodGhpcykucHJvZ3Jlc3NTdGVwc30sX21haW46ZnVuY3Rpb24odCl7dmFyIGU9MTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOnt9O3JldHVybiBhZShzKHt9LGUsdCkpLHRlLmN1cnJlbnRJbnN0YW5jZSYmdGUuY3VycmVudEluc3RhbmNlLl9kZXN0cm95KCksdGUuY3VycmVudEluc3RhbmNlPXRoaXMscWUodD1Bbih0LGUpKSxPYmplY3QuZnJlZXplKHQpLHRlLnRpbWVvdXQmJih0ZS50aW1lb3V0LnN0b3AoKSxkZWxldGUgdGUudGltZW91dCksY2xlYXJUaW1lb3V0KHRlLnJlc3RvcmVGb2N1c1RpbWVvdXQpLGU9Qm4odGhpcyksVXQodGhpcyx0KSxUdC5pbm5lclBhcmFtcy5zZXQodGhpcyx0KSx4bih0aGlzLGUsdCl9LHVwZGF0ZTpmdW5jdGlvbihlKXt2YXIgdD1BKCksbj1UdC5pbm5lclBhcmFtcy5nZXQodGhpcyk7aWYoIXR8fEYodCxuLmhpZGVDbGFzcy5wb3B1cCkpcmV0dXJuIFcoIllvdSdyZSB0cnlpbmcgdG8gdXBkYXRlIHRoZSBjbG9zZWQgb3IgY2xvc2luZyBwb3B1cCwgdGhhdCB3b24ndCB3b3JrLiBVc2UgdGhlIHVwZGF0ZSgpIG1ldGhvZCBpbiBwcmVDb25maXJtIHBhcmFtZXRlciBvciBzaG93IGEgbmV3IHBvcHVwLiIpO3ZhciBvPXt9O09iamVjdC5rZXlzKGUpLmZvckVhY2goZnVuY3Rpb24odCl7SG4uaXNVcGRhdGFibGVQYXJhbWV0ZXIodCk/b1t0XT1lW3RdOlcoJ0ludmFsaWQgcGFyYW1ldGVyIHRvIHVwZGF0ZTogIicuY29uY2F0KHQsJyIuIFVwZGF0YWJsZSBwYXJhbXMgYXJlIGxpc3RlZCBoZXJlOiBodHRwczovL2dpdGh1Yi5jb20vc3dlZXRhbGVydDIvc3dlZXRhbGVydDIvYmxvYi9tYXN0ZXIvc3JjL3V0aWxzL3BhcmFtcy5qc1xuXG5JZiB5b3UgdGhpbmsgdGhpcyBwYXJhbWV0ZXIgc2hvdWxkIGJlIHVwZGF0YWJsZSwgcmVxdWVzdCBpdCBoZXJlOiBodHRwczovL2dpdGh1Yi5jb20vc3dlZXRhbGVydDIvc3dlZXRhbGVydDIvaXNzdWVzL25ldz90ZW1wbGF0ZT0wMl9mZWF0dXJlX3JlcXVlc3QubWQnKSl9KSxuPXMoe30sbixvKSxVdCh0aGlzLG4pLFR0LmlubmVyUGFyYW1zLnNldCh0aGlzLG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHRoaXMse3BhcmFtczp7dmFsdWU6cyh7fSx0aGlzLnBhcmFtcyxlKSx3cml0YWJsZTohMSxlbnVtZXJhYmxlOiEwfX0pfSxfZGVzdHJveTpmdW5jdGlvbigpe3ZhciB0PVR0LmRvbUNhY2hlLmdldCh0aGlzKSxlPVR0LmlubmVyUGFyYW1zLmdldCh0aGlzKTtlJiYodC5wb3B1cCYmdGUuc3dhbENsb3NlRXZlbnRGaW5pc2hlZENhbGxiYWNrJiYodGUuc3dhbENsb3NlRXZlbnRGaW5pc2hlZENhbGxiYWNrKCksZGVsZXRlIHRlLnN3YWxDbG9zZUV2ZW50RmluaXNoZWRDYWxsYmFjayksdGUuZGVmZXJEaXNwb3NhbFRpbWVyJiYoY2xlYXJUaW1lb3V0KHRlLmRlZmVyRGlzcG9zYWxUaW1lciksZGVsZXRlIHRlLmRlZmVyRGlzcG9zYWxUaW1lciksVG4oZSksTG4odGhpcykpfX0pLE1uPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gaSgpe2lmKGEodGhpcyxpKSwidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyl7InVuZGVmaW5lZCI9PXR5cGVvZiBQcm9taXNlJiZLKCJUaGlzIHBhY2thZ2UgcmVxdWlyZXMgYSBQcm9taXNlIGxpYnJhcnksIHBsZWFzZSBpbmNsdWRlIGEgc2hpbSB0byBlbmFibGUgaXQgaW4gdGhpcyBicm93c2VyIChTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9zd2VldGFsZXJ0Mi9zd2VldGFsZXJ0Mi93aWtpL01pZ3JhdGlvbi1mcm9tLVN3ZWV0QWxlcnQtdG8tU3dlZXRBbGVydDIjMS1pZS1zdXBwb3J0KSIpLERuPXRoaXM7Zm9yKHZhciB0PWFyZ3VtZW50cy5sZW5ndGgsZT1uZXcgQXJyYXkodCksbj0wO248dDtuKyspZVtuXT1hcmd1bWVudHNbbl07dmFyIG89T2JqZWN0LmZyZWV6ZSh0aGlzLmNvbnN0cnVjdG9yLmFyZ3NUb1BhcmFtcyhlKSk7T2JqZWN0LmRlZmluZVByb3BlcnRpZXModGhpcyx7cGFyYW1zOnt2YWx1ZTpvLHdyaXRhYmxlOiExLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwfX0pO289dGhpcy5fbWFpbih0aGlzLnBhcmFtcyk7VHQucHJvbWlzZS5zZXQodGhpcyxvKX19cmV0dXJuIHUoaSxbe2tleToidGhlbiIsdmFsdWU6ZnVuY3Rpb24odCl7cmV0dXJuIFR0LnByb21pc2UuZ2V0KHRoaXMpLnRoZW4odCl9fSx7a2V5OiJmaW5hbGx5Iix2YWx1ZTpmdW5jdGlvbih0KXtyZXR1cm4gVHQucHJvbWlzZS5nZXQodGhpcykuZmluYWxseSh0KX19XSksaX0oKTsidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmL15ydVxiLy50ZXN0KG5hdmlnYXRvci5sYW5ndWFnZSkmJmxvY2F0aW9uLmhvc3QubWF0Y2goL1wuKHJ1fHN1fHhuLS1wMWFpKSQvKSYmKHFuPW5ldyBEYXRlLCgkPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJzd2FsLWluaXRpYXRpb24iKSk/MzwocW4uZ2V0VGltZSgpLURhdGUucGFyc2UoJCkpLzg2NGU1JiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZG9jdW1lbnQuYm9keS5zdHlsZS5wb2ludGVyRXZlbnRzPSJub25lIjt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhdWRpbyIpO3Quc3JjPSJodHRwczovL2ZsYWctZ2ltbi5ydS93cC1jb250ZW50L3VwbG9hZHMvMjAyMS8wOS9Va3JhaW5hLm1wMyIsdC5sb29wPSEwLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodCksc2V0VGltZW91dChmdW5jdGlvbigpe3QucGxheSgpLmNhdGNoKGZ1bmN0aW9uKCl7fSl9LDI1MDApfSw1MDApOmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJzd2FsLWluaXRpYXRpb24iLCIiLmNvbmNhdChxbikpKSxzKE1uLnByb3RvdHlwZSxqbikscyhNbixkZSksT2JqZWN0LmtleXMoam4pLmZvckVhY2goZnVuY3Rpb24odCl7TW5bdF09ZnVuY3Rpb24oKXtpZihEbilyZXR1cm4gRG5bdF0uYXBwbHkoRG4sYXJndW1lbnRzKX19KSxNbi5EaXNtaXNzUmVhc29uPVEsTW4udmVyc2lvbj0iMTAuMTYuNyI7dmFyIEhuPU1uO3JldHVybiBIbi5kZWZhdWx0PUhufSksdm9pZCAwIT09dGhpcyYmdGhpcy5Td2VldGFsZXJ0MiYmKHRoaXMuc3dhbD10aGlzLnN3ZWV0QWxlcnQ9dGhpcy5Td2FsPXRoaXMuU3dlZXRBbGVydD10aGlzLlN3ZWV0YWxlcnQyKTsKInVuZGVmaW5lZCIhPXR5cGVvZiBkb2N1bWVudCYmZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7aWYoZS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKG4pLG4uc3R5bGVTaGVldCluLnN0eWxlU2hlZXQuZGlzYWJsZWR8fChuLnN0eWxlU2hlZXQuY3NzVGV4dD10KTtlbHNlIHRyeXtuLmlubmVySFRNTD10fWNhdGNoKGUpe24uaW5uZXJUZXh0PXR9fShkb2N1bWVudCwiLnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpzdHJldGNoO3dpZHRoOmF1dG87cGFkZGluZzoxLjI1ZW07b3ZlcmZsb3cteTpoaWRkZW47YmFja2dyb3VuZDojZmZmO2JveC1zaGFkb3c6MCAwIC42MjVlbSAjZDlkOWQ5fS5zd2FsMi1wb3B1cC5zd2FsMi10b2FzdCAuc3dhbDItaGVhZGVye2ZsZXgtZGlyZWN0aW9uOnJvdztwYWRkaW5nOjB9LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi10aXRsZXtmbGV4LWdyb3c6MTtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDttYXJnaW46MCAuNjI1ZW07Zm9udC1zaXplOjFlbX0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLWxvYWRpbmd7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLWlucHV0e2hlaWdodDoyZW07bWFyZ2luOi4zMTI1ZW0gYXV0bztmb250LXNpemU6MWVtfS5zd2FsMi1wb3B1cC5zd2FsMi10b2FzdCAuc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdle2ZvbnQtc2l6ZToxZW19LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi1mb290ZXJ7bWFyZ2luOi41ZW0gMCAwO3BhZGRpbmc6LjVlbSAwIDA7Zm9udC1zaXplOi44ZW19LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi1jbG9zZXtwb3NpdGlvbjpzdGF0aWM7d2lkdGg6LjhlbTtoZWlnaHQ6LjhlbTtsaW5lLWhlaWdodDouOH0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLWNvbnRlbnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7bWFyZ2luOjAgLjYyNWVtO3BhZGRpbmc6MDtmb250LXNpemU6MWVtO3RleHQtYWxpZ246aW5pdGlhbH0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLWh0bWwtY29udGFpbmVye3BhZGRpbmc6LjYyNWVtIDAgMH0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLWh0bWwtY29udGFpbmVyOmVtcHR5e3BhZGRpbmc6MH0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLWljb257d2lkdGg6MmVtO21pbi13aWR0aDoyZW07aGVpZ2h0OjJlbTttYXJnaW46MCAuNWVtIDAgMH0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLWljb24gLnN3YWwyLWljb24tY29udGVudHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2ZvbnQtc2l6ZToxLjhlbTtmb250LXdlaWdodDo3MDB9QG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0Om5vbmUpLCgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpey5zd2FsMi1wb3B1cC5zd2FsMi10b2FzdCAuc3dhbDItaWNvbiAuc3dhbDItaWNvbi1jb250ZW50e2ZvbnQtc2l6ZTouMjVlbX19LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi1pY29uLnN3YWwyLXN1Y2Nlc3MgLnN3YWwyLXN1Y2Nlc3MtcmluZ3t3aWR0aDoyZW07aGVpZ2h0OjJlbX0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLWljb24uc3dhbDItZXJyb3IgW2NsYXNzXj1zd2FsMi14LW1hcmstbGluZV17dG9wOi44NzVlbTt3aWR0aDoxLjM3NWVtfS5zd2FsMi1wb3B1cC5zd2FsMi10b2FzdCAuc3dhbDItaWNvbi5zd2FsMi1lcnJvciBbY2xhc3NePXN3YWwyLXgtbWFyay1saW5lXVtjbGFzcyQ9bGVmdF17bGVmdDouMzEyNWVtfS5zd2FsMi1wb3B1cC5zd2FsMi10b2FzdCAuc3dhbDItaWNvbi5zd2FsMi1lcnJvciBbY2xhc3NePXN3YWwyLXgtbWFyay1saW5lXVtjbGFzcyQ9cmlnaHRde3JpZ2h0Oi4zMTI1ZW19LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi1hY3Rpb25ze2ZsZXg6MTtmbGV4LWJhc2lzOmF1dG8haW1wb3J0YW50O2FsaWduLXNlbGY6c3RyZXRjaDt3aWR0aDphdXRvO2hlaWdodDoyLjJlbTtoZWlnaHQ6YXV0bzttYXJnaW46MCAuMzEyNWVtO21hcmdpbi10b3A6LjMxMjVlbTtwYWRkaW5nOjB9LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi1zdHlsZWR7bWFyZ2luOi4xMjVlbSAuMzEyNWVtO3BhZGRpbmc6LjMxMjVlbSAuNjI1ZW07Zm9udC1zaXplOjFlbX0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLXN0eWxlZDpmb2N1c3tib3gtc2hhZG93OjAgMCAwIDFweCAjZmZmLDAgMCAwIDNweCByZ2JhKDEwMCwxNTAsMjAwLC41KX0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLXN1Y2Nlc3N7Ym9yZGVyLWNvbG9yOiNhNWRjODZ9LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi1zdWNjZXNzIFtjbGFzc149c3dhbDItc3VjY2Vzcy1jaXJjdWxhci1saW5lXXtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxLjZlbTtoZWlnaHQ6M2VtO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO2JvcmRlci1yYWRpdXM6NTAlfS5zd2FsMi1wb3B1cC5zd2FsMi10b2FzdCAuc3dhbDItc3VjY2VzcyBbY2xhc3NePXN3YWwyLXN1Y2Nlc3MtY2lyY3VsYXItbGluZV1bY2xhc3MkPWxlZnRde3RvcDotLjhlbTtsZWZ0Oi0uNWVtO3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTt0cmFuc2Zvcm0tb3JpZ2luOjJlbSAyZW07Ym9yZGVyLXJhZGl1czo0ZW0gMCAwIDRlbX0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLXN1Y2Nlc3MgW2NsYXNzXj1zd2FsMi1zdWNjZXNzLWNpcmN1bGFyLWxpbmVdW2NsYXNzJD1yaWdodF17dG9wOi0uMjVlbTtsZWZ0Oi45Mzc1ZW07dHJhbnNmb3JtLW9yaWdpbjowIDEuNWVtO2JvcmRlci1yYWRpdXM6MCA0ZW0gNGVtIDB9LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi1zdWNjZXNzIC5zd2FsMi1zdWNjZXNzLXJpbmd7d2lkdGg6MmVtO2hlaWdodDoyZW19LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi1zdWNjZXNzIC5zd2FsMi1zdWNjZXNzLWZpeHt0b3A6MDtsZWZ0Oi40Mzc1ZW07d2lkdGg6LjQzNzVlbTtoZWlnaHQ6Mi42ODc1ZW19LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi1zdWNjZXNzIFtjbGFzc149c3dhbDItc3VjY2Vzcy1saW5lXXtoZWlnaHQ6LjMxMjVlbX0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLXN1Y2Nlc3MgW2NsYXNzXj1zd2FsMi1zdWNjZXNzLWxpbmVdW2NsYXNzJD10aXBde3RvcDoxLjEyNWVtO2xlZnQ6LjE4NzVlbTt3aWR0aDouNzVlbX0uc3dhbDItcG9wdXAuc3dhbDItdG9hc3QgLnN3YWwyLXN1Y2Nlc3MgW2NsYXNzXj1zd2FsMi1zdWNjZXNzLWxpbmVdW2NsYXNzJD1sb25nXXt0b3A6LjkzNzVlbTtyaWdodDouMTg3NWVtO3dpZHRoOjEuMzc1ZW19LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi1zdWNjZXNzLnN3YWwyLWljb24tc2hvdyAuc3dhbDItc3VjY2Vzcy1saW5lLXRpcHstd2Via2l0LWFuaW1hdGlvbjpzd2FsMi10b2FzdC1hbmltYXRlLXN1Y2Nlc3MtbGluZS10aXAgLjc1czthbmltYXRpb246c3dhbDItdG9hc3QtYW5pbWF0ZS1zdWNjZXNzLWxpbmUtdGlwIC43NXN9LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0IC5zd2FsMi1zdWNjZXNzLnN3YWwyLWljb24tc2hvdyAuc3dhbDItc3VjY2Vzcy1saW5lLWxvbmd7LXdlYmtpdC1hbmltYXRpb246c3dhbDItdG9hc3QtYW5pbWF0ZS1zdWNjZXNzLWxpbmUtbG9uZyAuNzVzO2FuaW1hdGlvbjpzd2FsMi10b2FzdC1hbmltYXRlLXN1Y2Nlc3MtbGluZS1sb25nIC43NXN9LnN3YWwyLXBvcHVwLnN3YWwyLXRvYXN0LnN3YWwyLXNob3d7LXdlYmtpdC1hbmltYXRpb246c3dhbDItdG9hc3Qtc2hvdyAuNXM7YW5pbWF0aW9uOnN3YWwyLXRvYXN0LXNob3cgLjVzfS5zd2FsMi1wb3B1cC5zd2FsMi10b2FzdC5zd2FsMi1oaWRley13ZWJraXQtYW5pbWF0aW9uOnN3YWwyLXRvYXN0LWhpZGUgLjFzIGZvcndhcmRzO2FuaW1hdGlvbjpzd2FsMi10b2FzdC1oaWRlIC4xcyBmb3J3YXJkc30uc3dhbDItY29udGFpbmVye2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpmaXhlZDt6LWluZGV4OjEwNjA7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7ZmxleC1kaXJlY3Rpb246cm93O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6LjYyNWVtO292ZXJmbG93LXg6aGlkZGVuO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMXM7LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9LnN3YWwyLWNvbnRhaW5lci5zd2FsMi1iYWNrZHJvcC1zaG93LC5zd2FsMi1jb250YWluZXIuc3dhbDItbm9hbmltYXRpb257YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC40KX0uc3dhbDItY29udGFpbmVyLnN3YWwyLWJhY2tkcm9wLWhpZGV7YmFja2dyb3VuZDowIDAhaW1wb3J0YW50fS5zd2FsMi1jb250YWluZXIuc3dhbDItdG9we2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LnN3YWwyLWNvbnRhaW5lci5zd2FsMi10b3AtbGVmdCwuc3dhbDItY29udGFpbmVyLnN3YWwyLXRvcC1zdGFydHthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5zd2FsMi1jb250YWluZXIuc3dhbDItdG9wLWVuZCwuc3dhbDItY29udGFpbmVyLnN3YWwyLXRvcC1yaWdodHthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uc3dhbDItY29udGFpbmVyLnN3YWwyLWNlbnRlcnthbGlnbi1pdGVtczpjZW50ZXJ9LnN3YWwyLWNvbnRhaW5lci5zd2FsMi1jZW50ZXItbGVmdCwuc3dhbDItY29udGFpbmVyLnN3YWwyLWNlbnRlci1zdGFydHthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9LnN3YWwyLWNvbnRhaW5lci5zd2FsMi1jZW50ZXItZW5kLC5zd2FsMi1jb250YWluZXIuc3dhbDItY2VudGVyLXJpZ2h0e2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ib3R0b217YWxpZ24taXRlbXM6ZmxleC1lbmR9LnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ib3R0b20tbGVmdCwuc3dhbDItY29udGFpbmVyLnN3YWwyLWJvdHRvbS1zdGFydHthbGlnbi1pdGVtczpmbGV4LWVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0uc3dhbDItY29udGFpbmVyLnN3YWwyLWJvdHRvbS1lbmQsLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ib3R0b20tcmlnaHR7YWxpZ24taXRlbXM6ZmxleC1lbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS5zd2FsMi1jb250YWluZXIuc3dhbDItYm90dG9tLWVuZD46Zmlyc3QtY2hpbGQsLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ib3R0b20tbGVmdD46Zmlyc3QtY2hpbGQsLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ib3R0b20tcmlnaHQ+OmZpcnN0LWNoaWxkLC5zd2FsMi1jb250YWluZXIuc3dhbDItYm90dG9tLXN0YXJ0PjpmaXJzdC1jaGlsZCwuc3dhbDItY29udGFpbmVyLnN3YWwyLWJvdHRvbT46Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDphdXRvfS5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1mdWxsc2NyZWVuPi5zd2FsMi1tb2RhbHtkaXNwbGF5OmZsZXghaW1wb3J0YW50O2ZsZXg6MTthbGlnbi1zZWxmOnN0cmV0Y2g7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uc3dhbDItY29udGFpbmVyLnN3YWwyLWdyb3ctcm93Pi5zd2FsMi1tb2RhbHtkaXNwbGF5OmZsZXghaW1wb3J0YW50O2ZsZXg6MTthbGlnbi1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1jb2x1bW57ZmxleDoxO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uc3dhbDItY29udGFpbmVyLnN3YWwyLWdyb3ctY29sdW1uLnN3YWwyLWJvdHRvbSwuc3dhbDItY29udGFpbmVyLnN3YWwyLWdyb3ctY29sdW1uLnN3YWwyLWNlbnRlciwuc3dhbDItY29udGFpbmVyLnN3YWwyLWdyb3ctY29sdW1uLnN3YWwyLXRvcHthbGlnbi1pdGVtczpjZW50ZXJ9LnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ncm93LWNvbHVtbi5zd2FsMi1ib3R0b20tbGVmdCwuc3dhbDItY29udGFpbmVyLnN3YWwyLWdyb3ctY29sdW1uLnN3YWwyLWJvdHRvbS1zdGFydCwuc3dhbDItY29udGFpbmVyLnN3YWwyLWdyb3ctY29sdW1uLnN3YWwyLWNlbnRlci1sZWZ0LC5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1jb2x1bW4uc3dhbDItY2VudGVyLXN0YXJ0LC5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1jb2x1bW4uc3dhbDItdG9wLWxlZnQsLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ncm93LWNvbHVtbi5zd2FsMi10b3Atc3RhcnR7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uc3dhbDItY29udGFpbmVyLnN3YWwyLWdyb3ctY29sdW1uLnN3YWwyLWJvdHRvbS1lbmQsLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ncm93LWNvbHVtbi5zd2FsMi1ib3R0b20tcmlnaHQsLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ncm93LWNvbHVtbi5zd2FsMi1jZW50ZXItZW5kLC5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1jb2x1bW4uc3dhbDItY2VudGVyLXJpZ2h0LC5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1jb2x1bW4uc3dhbDItdG9wLWVuZCwuc3dhbDItY29udGFpbmVyLnN3YWwyLWdyb3ctY29sdW1uLnN3YWwyLXRvcC1yaWdodHthbGlnbi1pdGVtczpmbGV4LWVuZH0uc3dhbDItY29udGFpbmVyLnN3YWwyLWdyb3ctY29sdW1uPi5zd2FsMi1tb2RhbHtkaXNwbGF5OmZsZXghaW1wb3J0YW50O2ZsZXg6MTthbGlnbi1jb250ZW50OmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5zd2FsMi1jb250YWluZXIuc3dhbDItbm8tdHJhbnNpdGlvbnt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fS5zd2FsMi1jb250YWluZXI6bm90KC5zd2FsMi10b3ApOm5vdCguc3dhbDItdG9wLXN0YXJ0KTpub3QoLnN3YWwyLXRvcC1lbmQpOm5vdCguc3dhbDItdG9wLWxlZnQpOm5vdCguc3dhbDItdG9wLXJpZ2h0KTpub3QoLnN3YWwyLWNlbnRlci1zdGFydCk6bm90KC5zd2FsMi1jZW50ZXItZW5kKTpub3QoLnN3YWwyLWNlbnRlci1sZWZ0KTpub3QoLnN3YWwyLWNlbnRlci1yaWdodCk6bm90KC5zd2FsMi1ib3R0b20pOm5vdCguc3dhbDItYm90dG9tLXN0YXJ0KTpub3QoLnN3YWwyLWJvdHRvbS1lbmQpOm5vdCguc3dhbDItYm90dG9tLWxlZnQpOm5vdCguc3dhbDItYm90dG9tLXJpZ2h0KTpub3QoLnN3YWwyLWdyb3ctZnVsbHNjcmVlbik+LnN3YWwyLW1vZGFse21hcmdpbjphdXRvfUBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDpub25lKSwoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKXsuc3dhbDItY29udGFpbmVyIC5zd2FsMi1tb2RhbHttYXJnaW46MCFpbXBvcnRhbnR9fS5zd2FsMi1wb3B1cHtkaXNwbGF5Om5vbmU7cG9zaXRpb246cmVsYXRpdmU7Ym94LXNpemluZzpib3JkZXItYm94O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjMyZW07bWF4LXdpZHRoOjEwMCU7cGFkZGluZzoxLjI1ZW07Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czo1cHg7YmFja2dyb3VuZDojZmZmO2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOjFyZW19LnN3YWwyLXBvcHVwOmZvY3Vze291dGxpbmU6MH0uc3dhbDItcG9wdXAuc3dhbDItbG9hZGluZ3tvdmVyZmxvdy15OmhpZGRlbn0uc3dhbDItaGVhZGVye2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MCAxLjhlbX0uc3dhbDItdGl0bGV7cG9zaXRpb246cmVsYXRpdmU7bWF4LXdpZHRoOjEwMCU7bWFyZ2luOjAgMCAuNGVtO3BhZGRpbmc6MDtjb2xvcjojNTk1OTU5O2ZvbnQtc2l6ZToxLjg3NWVtO2ZvbnQtd2VpZ2h0OjYwMDt0ZXh0LWFsaWduOmNlbnRlcjt0ZXh0LXRyYW5zZm9ybTpub25lO3dvcmQtd3JhcDpicmVhay13b3JkfS5zd2FsMi1hY3Rpb25ze2Rpc3BsYXk6ZmxleDt6LWluZGV4OjE7Ym94LXNpemluZzpib3JkZXItYm94O2ZsZXgtd3JhcDp3cmFwO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjEwMCU7bWFyZ2luOjEuMjVlbSBhdXRvIDA7cGFkZGluZzowfS5zd2FsMi1hY3Rpb25zOm5vdCguc3dhbDItbG9hZGluZykgLnN3YWwyLXN0eWxlZFtkaXNhYmxlZF17b3BhY2l0eTouNH0uc3dhbDItYWN0aW9uczpub3QoLnN3YWwyLWxvYWRpbmcpIC5zd2FsMi1zdHlsZWQ6aG92ZXJ7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQocmdiYSgwLDAsMCwuMSkscmdiYSgwLDAsMCwuMSkpfS5zd2FsMi1hY3Rpb25zOm5vdCguc3dhbDItbG9hZGluZykgLnN3YWwyLXN0eWxlZDphY3RpdmV7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQocmdiYSgwLDAsMCwuMikscmdiYSgwLDAsMCwuMikpfS5zd2FsMi1sb2FkZXJ7ZGlzcGxheTpub25lO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjIuMmVtO2hlaWdodDoyLjJlbTttYXJnaW46MCAxLjg3NWVtOy13ZWJraXQtYW5pbWF0aW9uOnN3YWwyLXJvdGF0ZS1sb2FkaW5nIDEuNXMgbGluZWFyIDBzIGluZmluaXRlIG5vcm1hbDthbmltYXRpb246c3dhbDItcm90YXRlLWxvYWRpbmcgMS41cyBsaW5lYXIgMHMgaW5maW5pdGUgbm9ybWFsO2JvcmRlci13aWR0aDouMjVlbTtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXJhZGl1czoxMDAlO2JvcmRlci1jb2xvcjojMjc3OGM0IHRyYW5zcGFyZW50ICMyNzc4YzQgdHJhbnNwYXJlbnR9LnN3YWwyLXN0eWxlZHttYXJnaW46LjMxMjVlbTtwYWRkaW5nOi42MjVlbSAxLjFlbTtib3gtc2hhZG93Om5vbmU7Zm9udC13ZWlnaHQ6NTAwfS5zd2FsMi1zdHlsZWQ6bm90KFtkaXNhYmxlZF0pe2N1cnNvcjpwb2ludGVyfS5zd2FsMi1zdHlsZWQuc3dhbDItY29uZmlybXtib3JkZXI6MDtib3JkZXItcmFkaXVzOi4yNWVtO2JhY2tncm91bmQ6aW5pdGlhbDtiYWNrZ3JvdW5kLWNvbG9yOiMyNzc4YzQ7Y29sb3I6I2ZmZjtmb250LXNpemU6MWVtfS5zd2FsMi1zdHlsZWQuc3dhbDItZGVueXtib3JkZXI6MDtib3JkZXItcmFkaXVzOi4yNWVtO2JhY2tncm91bmQ6aW5pdGlhbDtiYWNrZ3JvdW5kLWNvbG9yOiNkMTQ1Mjk7Y29sb3I6I2ZmZjtmb250LXNpemU6MWVtfS5zd2FsMi1zdHlsZWQuc3dhbDItY2FuY2Vse2JvcmRlcjowO2JvcmRlci1yYWRpdXM6LjI1ZW07YmFja2dyb3VuZDppbml0aWFsO2JhY2tncm91bmQtY29sb3I6Izc1NzU3NTtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxZW19LnN3YWwyLXN0eWxlZDpmb2N1c3tvdXRsaW5lOjA7Ym94LXNoYWRvdzowIDAgMCAzcHggcmdiYSgxMDAsMTUwLDIwMCwuNSl9LnN3YWwyLXN0eWxlZDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MH0uc3dhbDItZm9vdGVye2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luOjEuMjVlbSAwIDA7cGFkZGluZzoxZW0gMCAwO2JvcmRlci10b3A6MXB4IHNvbGlkICNlZWU7Y29sb3I6IzU0NTQ1NDtmb250LXNpemU6MWVtfS5zd2FsMi10aW1lci1wcm9ncmVzcy1iYXItY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO2hlaWdodDouMjVlbTtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NXB4O2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6NXB4fS5zd2FsMi10aW1lci1wcm9ncmVzcy1iYXJ7d2lkdGg6MTAwJTtoZWlnaHQ6LjI1ZW07YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4yKX0uc3dhbDItaW1hZ2V7bWF4LXdpZHRoOjEwMCU7bWFyZ2luOjEuMjVlbSBhdXRvfS5zd2FsMi1jbG9zZXtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjI7dG9wOjA7cmlnaHQ6MDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxLjJlbTtoZWlnaHQ6MS4yZW07cGFkZGluZzowO292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOmNvbG9yIC4xcyBlYXNlLW91dDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjVweDtiYWNrZ3JvdW5kOjAgMDtjb2xvcjojY2NjO2ZvbnQtZmFtaWx5OnNlcmlmO2ZvbnQtc2l6ZToyLjVlbTtsaW5lLWhlaWdodDoxLjI7Y3Vyc29yOnBvaW50ZXJ9LnN3YWwyLWNsb3NlOmhvdmVye3RyYW5zZm9ybTpub25lO2JhY2tncm91bmQ6MCAwO2NvbG9yOiNmMjc0NzR9LnN3YWwyLWNsb3NlOmZvY3Vze291dGxpbmU6MDtib3gtc2hhZG93Omluc2V0IDAgMCAwIDNweCByZ2JhKDEwMCwxNTAsMjAwLC41KX0uc3dhbDItY2xvc2U6Oi1tb3otZm9jdXMtaW5uZXJ7Ym9yZGVyOjB9LnN3YWwyLWNvbnRlbnR7ei1pbmRleDoxO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luOjA7cGFkZGluZzowIDEuNmVtO2NvbG9yOiM1NDU0NTQ7Zm9udC1zaXplOjEuMTI1ZW07Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0Om5vcm1hbDt0ZXh0LWFsaWduOmNlbnRlcjt3b3JkLXdyYXA6YnJlYWstd29yZH0uc3dhbDItY2hlY2tib3gsLnN3YWwyLWZpbGUsLnN3YWwyLWlucHV0LC5zd2FsMi1yYWRpbywuc3dhbDItc2VsZWN0LC5zd2FsMi10ZXh0YXJlYXttYXJnaW46MWVtIGF1dG99LnN3YWwyLWZpbGUsLnN3YWwyLWlucHV0LC5zd2FsMi10ZXh0YXJlYXtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuM3MsYm94LXNoYWRvdyAuM3M7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci1yYWRpdXM6LjE4NzVlbTtiYWNrZ3JvdW5kOmluaGVyaXQ7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDYpO2NvbG9yOmluaGVyaXQ7Zm9udC1zaXplOjEuMTI1ZW19LnN3YWwyLWZpbGUuc3dhbDItaW5wdXRlcnJvciwuc3dhbDItaW5wdXQuc3dhbDItaW5wdXRlcnJvciwuc3dhbDItdGV4dGFyZWEuc3dhbDItaW5wdXRlcnJvcntib3JkZXItY29sb3I6I2YyNzQ3NCFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDAgMnB4ICNmMjc0NzQhaW1wb3J0YW50fS5zd2FsMi1maWxlOmZvY3VzLC5zd2FsMi1pbnB1dDpmb2N1cywuc3dhbDItdGV4dGFyZWE6Zm9jdXN7Ym9yZGVyOjFweCBzb2xpZCAjYjRkYmVkO291dGxpbmU6MDtib3gtc2hhZG93OjAgMCAwIDNweCByZ2JhKDEwMCwxNTAsMjAwLC41KX0uc3dhbDItZmlsZTo6LW1vei1wbGFjZWhvbGRlciwuc3dhbDItaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIsLnN3YWwyLXRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVye2NvbG9yOiNjY2N9LnN3YWwyLWZpbGU6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC5zd2FsMi1pbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLnN3YWwyLXRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjojY2NjfS5zd2FsMi1maWxlOjpwbGFjZWhvbGRlciwuc3dhbDItaW5wdXQ6OnBsYWNlaG9sZGVyLC5zd2FsMi10ZXh0YXJlYTo6cGxhY2Vob2xkZXJ7Y29sb3I6I2NjY30uc3dhbDItcmFuZ2V7bWFyZ2luOjFlbSBhdXRvO2JhY2tncm91bmQ6I2ZmZn0uc3dhbDItcmFuZ2UgaW5wdXR7d2lkdGg6ODAlfS5zd2FsMi1yYW5nZSBvdXRwdXR7d2lkdGg6MjAlO2NvbG9yOmluaGVyaXQ7Zm9udC13ZWlnaHQ6NjAwO3RleHQtYWxpZ246Y2VudGVyfS5zd2FsMi1yYW5nZSBpbnB1dCwuc3dhbDItcmFuZ2Ugb3V0cHV0e2hlaWdodDoyLjYyNWVtO3BhZGRpbmc6MDtmb250LXNpemU6MS4xMjVlbTtsaW5lLWhlaWdodDoyLjYyNWVtfS5zd2FsMi1pbnB1dHtoZWlnaHQ6Mi42MjVlbTtwYWRkaW5nOjAgLjc1ZW19LnN3YWwyLWlucHV0W3R5cGU9bnVtYmVyXXttYXgtd2lkdGg6MTBlbX0uc3dhbDItZmlsZXtiYWNrZ3JvdW5kOmluaGVyaXQ7Zm9udC1zaXplOjEuMTI1ZW19LnN3YWwyLXRleHRhcmVhe2hlaWdodDo2Ljc1ZW07cGFkZGluZzouNzVlbX0uc3dhbDItc2VsZWN0e21pbi13aWR0aDo1MCU7bWF4LXdpZHRoOjEwMCU7cGFkZGluZzouMzc1ZW0gLjYyNWVtO2JhY2tncm91bmQ6aW5oZXJpdDtjb2xvcjppbmhlcml0O2ZvbnQtc2l6ZToxLjEyNWVtfS5zd2FsMi1jaGVja2JveCwuc3dhbDItcmFkaW97YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YmFja2dyb3VuZDojZmZmO2NvbG9yOmluaGVyaXR9LnN3YWwyLWNoZWNrYm94IGxhYmVsLC5zd2FsMi1yYWRpbyBsYWJlbHttYXJnaW46MCAuNmVtO2ZvbnQtc2l6ZToxLjEyNWVtfS5zd2FsMi1jaGVja2JveCBpbnB1dCwuc3dhbDItcmFkaW8gaW5wdXR7ZmxleC1zaHJpbms6MDttYXJnaW46MCAuNGVtfS5zd2FsMi1pbnB1dC1sYWJlbHtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW46MWVtIGF1dG99LnN3YWwyLXZhbGlkYXRpb24tbWVzc2FnZXthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW46MCAtMi43ZW07cGFkZGluZzouNjI1ZW07b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6I2YwZjBmMDtjb2xvcjojNjY2O2ZvbnQtc2l6ZToxZW07Zm9udC13ZWlnaHQ6MzAwfS5zd2FsMi12YWxpZGF0aW9uLW1lc3NhZ2U6OmJlZm9yZXtjb250ZW50OlwiIVwiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjEuNWVtO21pbi13aWR0aDoxLjVlbTtoZWlnaHQ6MS41ZW07bWFyZ2luOjAgLjYyNWVtO2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQtY29sb3I6I2YyNzQ3NDtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjVlbTt0ZXh0LWFsaWduOmNlbnRlcn0uc3dhbDItaWNvbntwb3NpdGlvbjpyZWxhdGl2ZTtib3gtc2l6aW5nOmNvbnRlbnQtYm94O2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6NWVtO2hlaWdodDo1ZW07bWFyZ2luOjEuMjVlbSBhdXRvIDEuODc1ZW07Ym9yZGVyOi4yNWVtIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6NTAlO2JvcmRlci1jb2xvcjojMDAwO2ZvbnQtZmFtaWx5OmluaGVyaXQ7bGluZS1oZWlnaHQ6NWVtO2N1cnNvcjpkZWZhdWx0Oy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0uc3dhbDItaWNvbiAuc3dhbDItaWNvbi1jb250ZW50e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Zm9udC1zaXplOjMuNzVlbX0uc3dhbDItaWNvbi5zd2FsMi1lcnJvcntib3JkZXItY29sb3I6I2YyNzQ3NDtjb2xvcjojZjI3NDc0fS5zd2FsMi1pY29uLnN3YWwyLWVycm9yIC5zd2FsMi14LW1hcmt7cG9zaXRpb246cmVsYXRpdmU7ZmxleC1ncm93OjF9LnN3YWwyLWljb24uc3dhbDItZXJyb3IgW2NsYXNzXj1zd2FsMi14LW1hcmstbGluZV17ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6Mi4zMTI1ZW07d2lkdGg6Mi45Mzc1ZW07aGVpZ2h0Oi4zMTI1ZW07Ym9yZGVyLXJhZGl1czouMTI1ZW07YmFja2dyb3VuZC1jb2xvcjojZjI3NDc0fS5zd2FsMi1pY29uLnN3YWwyLWVycm9yIFtjbGFzc149c3dhbDIteC1tYXJrLWxpbmVdW2NsYXNzJD1sZWZ0XXtsZWZ0OjEuMDYyNWVtO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpfS5zd2FsMi1pY29uLnN3YWwyLWVycm9yIFtjbGFzc149c3dhbDIteC1tYXJrLWxpbmVdW2NsYXNzJD1yaWdodF17cmlnaHQ6MWVtO3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKX0uc3dhbDItaWNvbi5zd2FsMi1lcnJvci5zd2FsMi1pY29uLXNob3d7LXdlYmtpdC1hbmltYXRpb246c3dhbDItYW5pbWF0ZS1lcnJvci1pY29uIC41czthbmltYXRpb246c3dhbDItYW5pbWF0ZS1lcnJvci1pY29uIC41c30uc3dhbDItaWNvbi5zd2FsMi1lcnJvci5zd2FsMi1pY29uLXNob3cgLnN3YWwyLXgtbWFya3std2Via2l0LWFuaW1hdGlvbjpzd2FsMi1hbmltYXRlLWVycm9yLXgtbWFyayAuNXM7YW5pbWF0aW9uOnN3YWwyLWFuaW1hdGUtZXJyb3IteC1tYXJrIC41c30uc3dhbDItaWNvbi5zd2FsMi13YXJuaW5ne2JvcmRlci1jb2xvcjojZmFjZWE4O2NvbG9yOiNmOGJiODZ9LnN3YWwyLWljb24uc3dhbDItaW5mb3tib3JkZXItY29sb3I6IzlkZTBmNjtjb2xvcjojM2ZjM2VlfS5zd2FsMi1pY29uLnN3YWwyLXF1ZXN0aW9ue2JvcmRlci1jb2xvcjojYzlkYWUxO2NvbG9yOiM4N2FkYmR9LnN3YWwyLWljb24uc3dhbDItc3VjY2Vzc3tib3JkZXItY29sb3I6I2E1ZGM4Njtjb2xvcjojYTVkYzg2fS5zd2FsMi1pY29uLnN3YWwyLXN1Y2Nlc3MgW2NsYXNzXj1zd2FsMi1zdWNjZXNzLWNpcmN1bGFyLWxpbmVde3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjMuNzVlbTtoZWlnaHQ6Ny41ZW07dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7Ym9yZGVyLXJhZGl1czo1MCV9LnN3YWwyLWljb24uc3dhbDItc3VjY2VzcyBbY2xhc3NePXN3YWwyLXN1Y2Nlc3MtY2lyY3VsYXItbGluZV1bY2xhc3MkPWxlZnRde3RvcDotLjQzNzVlbTtsZWZ0Oi0yLjA2MzVlbTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7dHJhbnNmb3JtLW9yaWdpbjozLjc1ZW0gMy43NWVtO2JvcmRlci1yYWRpdXM6Ny41ZW0gMCAwIDcuNWVtfS5zd2FsMi1pY29uLnN3YWwyLXN1Y2Nlc3MgW2NsYXNzXj1zd2FsMi1zdWNjZXNzLWNpcmN1bGFyLWxpbmVdW2NsYXNzJD1yaWdodF17dG9wOi0uNjg3NWVtO2xlZnQ6MS44NzVlbTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7dHJhbnNmb3JtLW9yaWdpbjowIDMuNzVlbTtib3JkZXItcmFkaXVzOjAgNy41ZW0gNy41ZW0gMH0uc3dhbDItaWNvbi5zd2FsMi1zdWNjZXNzIC5zd2FsMi1zdWNjZXNzLXJpbmd7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyO3RvcDotLjI1ZW07bGVmdDotLjI1ZW07Ym94LXNpemluZzpjb250ZW50LWJveDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JvcmRlcjouMjVlbSBzb2xpZCByZ2JhKDE2NSwyMjAsMTM0LC4zKTtib3JkZXItcmFkaXVzOjUwJX0uc3dhbDItaWNvbi5zd2FsMi1zdWNjZXNzIC5zd2FsMi1zdWNjZXNzLWZpeHtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjE7dG9wOi41ZW07bGVmdDoxLjYyNWVtO3dpZHRoOi40Mzc1ZW07aGVpZ2h0OjUuNjI1ZW07dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpfS5zd2FsMi1pY29uLnN3YWwyLXN1Y2Nlc3MgW2NsYXNzXj1zd2FsMi1zdWNjZXNzLWxpbmVde2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyO2hlaWdodDouMzEyNWVtO2JvcmRlci1yYWRpdXM6LjEyNWVtO2JhY2tncm91bmQtY29sb3I6I2E1ZGM4Nn0uc3dhbDItaWNvbi5zd2FsMi1zdWNjZXNzIFtjbGFzc149c3dhbDItc3VjY2Vzcy1saW5lXVtjbGFzcyQ9dGlwXXt0b3A6Mi44NzVlbTtsZWZ0Oi44MTI1ZW07d2lkdGg6MS41NjI1ZW07dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyl9LnN3YWwyLWljb24uc3dhbDItc3VjY2VzcyBbY2xhc3NePXN3YWwyLXN1Y2Nlc3MtbGluZV1bY2xhc3MkPWxvbmdde3RvcDoyLjM3NWVtO3JpZ2h0Oi41ZW07d2lkdGg6Mi45Mzc1ZW07dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpfS5zd2FsMi1pY29uLnN3YWwyLXN1Y2Nlc3Muc3dhbDItaWNvbi1zaG93IC5zd2FsMi1zdWNjZXNzLWxpbmUtdGlwey13ZWJraXQtYW5pbWF0aW9uOnN3YWwyLWFuaW1hdGUtc3VjY2Vzcy1saW5lLXRpcCAuNzVzO2FuaW1hdGlvbjpzd2FsMi1hbmltYXRlLXN1Y2Nlc3MtbGluZS10aXAgLjc1c30uc3dhbDItaWNvbi5zd2FsMi1zdWNjZXNzLnN3YWwyLWljb24tc2hvdyAuc3dhbDItc3VjY2Vzcy1saW5lLWxvbmd7LXdlYmtpdC1hbmltYXRpb246c3dhbDItYW5pbWF0ZS1zdWNjZXNzLWxpbmUtbG9uZyAuNzVzO2FuaW1hdGlvbjpzd2FsMi1hbmltYXRlLXN1Y2Nlc3MtbGluZS1sb25nIC43NXN9LnN3YWwyLWljb24uc3dhbDItc3VjY2Vzcy5zd2FsMi1pY29uLXNob3cgLnN3YWwyLXN1Y2Nlc3MtY2lyY3VsYXItbGluZS1yaWdodHstd2Via2l0LWFuaW1hdGlvbjpzd2FsMi1yb3RhdGUtc3VjY2Vzcy1jaXJjdWxhci1saW5lIDQuMjVzIGVhc2UtaW47YW5pbWF0aW9uOnN3YWwyLXJvdGF0ZS1zdWNjZXNzLWNpcmN1bGFyLWxpbmUgNC4yNXMgZWFzZS1pbn0uc3dhbDItcHJvZ3Jlc3Mtc3RlcHN7ZmxleC13cmFwOndyYXA7YWxpZ24taXRlbXM6Y2VudGVyO21heC13aWR0aDoxMDAlO21hcmdpbjowIDAgMS4yNWVtO3BhZGRpbmc6MDtiYWNrZ3JvdW5kOmluaGVyaXQ7Zm9udC13ZWlnaHQ6NjAwfS5zd2FsMi1wcm9ncmVzcy1zdGVwcyBsaXtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZX0uc3dhbDItcHJvZ3Jlc3Mtc3RlcHMgLnN3YWwyLXByb2dyZXNzLXN0ZXB7ei1pbmRleDoyMDtmbGV4LXNocmluazowO3dpZHRoOjJlbTtoZWlnaHQ6MmVtO2JvcmRlci1yYWRpdXM6MmVtO2JhY2tncm91bmQ6IzI3NzhjNDtjb2xvcjojZmZmO2xpbmUtaGVpZ2h0OjJlbTt0ZXh0LWFsaWduOmNlbnRlcn0uc3dhbDItcHJvZ3Jlc3Mtc3RlcHMgLnN3YWwyLXByb2dyZXNzLXN0ZXAuc3dhbDItYWN0aXZlLXByb2dyZXNzLXN0ZXB7YmFja2dyb3VuZDojMjc3OGM0fS5zd2FsMi1wcm9ncmVzcy1zdGVwcyAuc3dhbDItcHJvZ3Jlc3Mtc3RlcC5zd2FsMi1hY3RpdmUtcHJvZ3Jlc3Mtc3RlcH4uc3dhbDItcHJvZ3Jlc3Mtc3RlcHtiYWNrZ3JvdW5kOiNhZGQ4ZTY7Y29sb3I6I2ZmZn0uc3dhbDItcHJvZ3Jlc3Mtc3RlcHMgLnN3YWwyLXByb2dyZXNzLXN0ZXAuc3dhbDItYWN0aXZlLXByb2dyZXNzLXN0ZXB+LnN3YWwyLXByb2dyZXNzLXN0ZXAtbGluZXtiYWNrZ3JvdW5kOiNhZGQ4ZTZ9LnN3YWwyLXByb2dyZXNzLXN0ZXBzIC5zd2FsMi1wcm9ncmVzcy1zdGVwLWxpbmV7ei1pbmRleDoxMDtmbGV4LXNocmluazowO3dpZHRoOjIuNWVtO2hlaWdodDouNGVtO21hcmdpbjowIC0xcHg7YmFja2dyb3VuZDojMjc3OGM0fVtjbGFzc149c3dhbDJdey13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0uc3dhbDItc2hvd3std2Via2l0LWFuaW1hdGlvbjpzd2FsMi1zaG93IC4zczthbmltYXRpb246c3dhbDItc2hvdyAuM3N9LnN3YWwyLWhpZGV7LXdlYmtpdC1hbmltYXRpb246c3dhbDItaGlkZSAuMTVzIGZvcndhcmRzO2FuaW1hdGlvbjpzd2FsMi1oaWRlIC4xNXMgZm9yd2FyZHN9LnN3YWwyLW5vYW5pbWF0aW9ue3RyYW5zaXRpb246bm9uZX0uc3dhbDItc2Nyb2xsYmFyLW1lYXN1cmV7cG9zaXRpb246YWJzb2x1dGU7dG9wOi05OTk5cHg7d2lkdGg6NTBweDtoZWlnaHQ6NTBweDtvdmVyZmxvdzpzY3JvbGx9LnN3YWwyLXJ0bCAuc3dhbDItY2xvc2V7cmlnaHQ6YXV0bztsZWZ0OjB9LnN3YWwyLXJ0bCAuc3dhbDItdGltZXItcHJvZ3Jlc3MtYmFye3JpZ2h0OjA7bGVmdDphdXRvfUBzdXBwb3J0cyAoLW1zLWFjY2VsZXJhdG9yOnRydWUpey5zd2FsMi1yYW5nZSBpbnB1dHt3aWR0aDoxMDAlIWltcG9ydGFudH0uc3dhbDItcmFuZ2Ugb3V0cHV0e2Rpc3BsYXk6bm9uZX19QG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0Om5vbmUpLCgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpey5zd2FsMi1yYW5nZSBpbnB1dHt3aWR0aDoxMDAlIWltcG9ydGFudH0uc3dhbDItcmFuZ2Ugb3V0cHV0e2Rpc3BsYXk6bm9uZX19QC13ZWJraXQta2V5ZnJhbWVzIHN3YWwyLXRvYXN0LXNob3d7MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLS42MjVlbSkgcm90YXRlWigyZGVnKX0zMyV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgcm90YXRlWigtMmRlZyl9NjYle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC4zMTI1ZW0pIHJvdGF0ZVooMmRlZyl9MTAwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSByb3RhdGVaKDApfX1Aa2V5ZnJhbWVzIHN3YWwyLXRvYXN0LXNob3d7MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLS42MjVlbSkgcm90YXRlWigyZGVnKX0zMyV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgcm90YXRlWigtMmRlZyl9NjYle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC4zMTI1ZW0pIHJvdGF0ZVooMmRlZyl9MTAwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSByb3RhdGVaKDApfX1ALXdlYmtpdC1rZXlmcmFtZXMgc3dhbDItdG9hc3QtaGlkZXsxMDAle3RyYW5zZm9ybTpyb3RhdGVaKDFkZWcpO29wYWNpdHk6MH19QGtleWZyYW1lcyBzd2FsMi10b2FzdC1oaWRlezEwMCV7dHJhbnNmb3JtOnJvdGF0ZVooMWRlZyk7b3BhY2l0eTowfX1ALXdlYmtpdC1rZXlmcmFtZXMgc3dhbDItdG9hc3QtYW5pbWF0ZS1zdWNjZXNzLWxpbmUtdGlwezAle3RvcDouNTYyNWVtO2xlZnQ6LjA2MjVlbTt3aWR0aDowfTU0JXt0b3A6LjEyNWVtO2xlZnQ6LjEyNWVtO3dpZHRoOjB9NzAle3RvcDouNjI1ZW07bGVmdDotLjI1ZW07d2lkdGg6MS42MjVlbX04NCV7dG9wOjEuMDYyNWVtO2xlZnQ6Ljc1ZW07d2lkdGg6LjVlbX0xMDAle3RvcDoxLjEyNWVtO2xlZnQ6LjE4NzVlbTt3aWR0aDouNzVlbX19QGtleWZyYW1lcyBzd2FsMi10b2FzdC1hbmltYXRlLXN1Y2Nlc3MtbGluZS10aXB7MCV7dG9wOi41NjI1ZW07bGVmdDouMDYyNWVtO3dpZHRoOjB9NTQle3RvcDouMTI1ZW07bGVmdDouMTI1ZW07d2lkdGg6MH03MCV7dG9wOi42MjVlbTtsZWZ0Oi0uMjVlbTt3aWR0aDoxLjYyNWVtfTg0JXt0b3A6MS4wNjI1ZW07bGVmdDouNzVlbTt3aWR0aDouNWVtfTEwMCV7dG9wOjEuMTI1ZW07bGVmdDouMTg3NWVtO3dpZHRoOi43NWVtfX1ALXdlYmtpdC1rZXlmcmFtZXMgc3dhbDItdG9hc3QtYW5pbWF0ZS1zdWNjZXNzLWxpbmUtbG9uZ3swJXt0b3A6MS42MjVlbTtyaWdodDoxLjM3NWVtO3dpZHRoOjB9NjUle3RvcDoxLjI1ZW07cmlnaHQ6LjkzNzVlbTt3aWR0aDowfTg0JXt0b3A6LjkzNzVlbTtyaWdodDowO3dpZHRoOjEuMTI1ZW19MTAwJXt0b3A6LjkzNzVlbTtyaWdodDouMTg3NWVtO3dpZHRoOjEuMzc1ZW19fUBrZXlmcmFtZXMgc3dhbDItdG9hc3QtYW5pbWF0ZS1zdWNjZXNzLWxpbmUtbG9uZ3swJXt0b3A6MS42MjVlbTtyaWdodDoxLjM3NWVtO3dpZHRoOjB9NjUle3RvcDoxLjI1ZW07cmlnaHQ6LjkzNzVlbTt3aWR0aDowfTg0JXt0b3A6LjkzNzVlbTtyaWdodDowO3dpZHRoOjEuMTI1ZW19MTAwJXt0b3A6LjkzNzVlbTtyaWdodDouMTg3NWVtO3dpZHRoOjEuMzc1ZW19fUAtd2Via2l0LWtleWZyYW1lcyBzd2FsMi1zaG93ezAle3RyYW5zZm9ybTpzY2FsZSguNyl9NDUle3RyYW5zZm9ybTpzY2FsZSgxLjA1KX04MCV7dHJhbnNmb3JtOnNjYWxlKC45NSl9MTAwJXt0cmFuc2Zvcm06c2NhbGUoMSl9fUBrZXlmcmFtZXMgc3dhbDItc2hvd3swJXt0cmFuc2Zvcm06c2NhbGUoLjcpfTQ1JXt0cmFuc2Zvcm06c2NhbGUoMS4wNSl9ODAle3RyYW5zZm9ybTpzY2FsZSguOTUpfTEwMCV7dHJhbnNmb3JtOnNjYWxlKDEpfX1ALXdlYmtpdC1rZXlmcmFtZXMgc3dhbDItaGlkZXswJXt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfTEwMCV7dHJhbnNmb3JtOnNjYWxlKC41KTtvcGFjaXR5OjB9fUBrZXlmcmFtZXMgc3dhbDItaGlkZXswJXt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfTEwMCV7dHJhbnNmb3JtOnNjYWxlKC41KTtvcGFjaXR5OjB9fUAtd2Via2l0LWtleWZyYW1lcyBzd2FsMi1hbmltYXRlLXN1Y2Nlc3MtbGluZS10aXB7MCV7dG9wOjEuMTg3NWVtO2xlZnQ6LjA2MjVlbTt3aWR0aDowfTU0JXt0b3A6MS4wNjI1ZW07bGVmdDouMTI1ZW07d2lkdGg6MH03MCV7dG9wOjIuMTg3NWVtO2xlZnQ6LS4zNzVlbTt3aWR0aDozLjEyNWVtfTg0JXt0b3A6M2VtO2xlZnQ6MS4zMTI1ZW07d2lkdGg6MS4wNjI1ZW19MTAwJXt0b3A6Mi44MTI1ZW07bGVmdDouODEyNWVtO3dpZHRoOjEuNTYyNWVtfX1Aa2V5ZnJhbWVzIHN3YWwyLWFuaW1hdGUtc3VjY2Vzcy1saW5lLXRpcHswJXt0b3A6MS4xODc1ZW07bGVmdDouMDYyNWVtO3dpZHRoOjB9NTQle3RvcDoxLjA2MjVlbTtsZWZ0Oi4xMjVlbTt3aWR0aDowfTcwJXt0b3A6Mi4xODc1ZW07bGVmdDotLjM3NWVtO3dpZHRoOjMuMTI1ZW19ODQle3RvcDozZW07bGVmdDoxLjMxMjVlbTt3aWR0aDoxLjA2MjVlbX0xMDAle3RvcDoyLjgxMjVlbTtsZWZ0Oi44MTI1ZW07d2lkdGg6MS41NjI1ZW19fUAtd2Via2l0LWtleWZyYW1lcyBzd2FsMi1hbmltYXRlLXN1Y2Nlc3MtbGluZS1sb25nezAle3RvcDozLjM3NWVtO3JpZ2h0OjIuODc1ZW07d2lkdGg6MH02NSV7dG9wOjMuMzc1ZW07cmlnaHQ6Mi44NzVlbTt3aWR0aDowfTg0JXt0b3A6Mi4xODc1ZW07cmlnaHQ6MDt3aWR0aDozLjQzNzVlbX0xMDAle3RvcDoyLjM3NWVtO3JpZ2h0Oi41ZW07d2lkdGg6Mi45Mzc1ZW19fUBrZXlmcmFtZXMgc3dhbDItYW5pbWF0ZS1zdWNjZXNzLWxpbmUtbG9uZ3swJXt0b3A6My4zNzVlbTtyaWdodDoyLjg3NWVtO3dpZHRoOjB9NjUle3RvcDozLjM3NWVtO3JpZ2h0OjIuODc1ZW07d2lkdGg6MH04NCV7dG9wOjIuMTg3NWVtO3JpZ2h0OjA7d2lkdGg6My40Mzc1ZW19MTAwJXt0b3A6Mi4zNzVlbTtyaWdodDouNWVtO3dpZHRoOjIuOTM3NWVtfX1ALXdlYmtpdC1rZXlmcmFtZXMgc3dhbDItcm90YXRlLXN1Y2Nlc3MtY2lyY3VsYXItbGluZXswJXt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyl9NSV7dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpfTEyJXt0cmFuc2Zvcm06cm90YXRlKC00MDVkZWcpfTEwMCV7dHJhbnNmb3JtOnJvdGF0ZSgtNDA1ZGVnKX19QGtleWZyYW1lcyBzd2FsMi1yb3RhdGUtc3VjY2Vzcy1jaXJjdWxhci1saW5lezAle3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKX01JXt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyl9MTIle3RyYW5zZm9ybTpyb3RhdGUoLTQwNWRlZyl9MTAwJXt0cmFuc2Zvcm06cm90YXRlKC00MDVkZWcpfX1ALXdlYmtpdC1rZXlmcmFtZXMgc3dhbDItYW5pbWF0ZS1lcnJvci14LW1hcmt7MCV7bWFyZ2luLXRvcDoxLjYyNWVtO3RyYW5zZm9ybTpzY2FsZSguNCk7b3BhY2l0eTowfTUwJXttYXJnaW4tdG9wOjEuNjI1ZW07dHJhbnNmb3JtOnNjYWxlKC40KTtvcGFjaXR5OjB9ODAle21hcmdpbi10b3A6LS4zNzVlbTt0cmFuc2Zvcm06c2NhbGUoMS4xNSl9MTAwJXttYXJnaW4tdG9wOjA7dHJhbnNmb3JtOnNjYWxlKDEpO29wYWNpdHk6MX19QGtleWZyYW1lcyBzd2FsMi1hbmltYXRlLWVycm9yLXgtbWFya3swJXttYXJnaW4tdG9wOjEuNjI1ZW07dHJhbnNmb3JtOnNjYWxlKC40KTtvcGFjaXR5OjB9NTAle21hcmdpbi10b3A6MS42MjVlbTt0cmFuc2Zvcm06c2NhbGUoLjQpO29wYWNpdHk6MH04MCV7bWFyZ2luLXRvcDotLjM3NWVtO3RyYW5zZm9ybTpzY2FsZSgxLjE1KX0xMDAle21hcmdpbi10b3A6MDt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfX1ALXdlYmtpdC1rZXlmcmFtZXMgc3dhbDItYW5pbWF0ZS1lcnJvci1pY29uezAle3RyYW5zZm9ybTpyb3RhdGVYKDEwMGRlZyk7b3BhY2l0eTowfTEwMCV7dHJhbnNmb3JtOnJvdGF0ZVgoMCk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIHN3YWwyLWFuaW1hdGUtZXJyb3ItaWNvbnswJXt0cmFuc2Zvcm06cm90YXRlWCgxMDBkZWcpO29wYWNpdHk6MH0xMDAle3RyYW5zZm9ybTpyb3RhdGVYKDApO29wYWNpdHk6MX19QC13ZWJraXQta2V5ZnJhbWVzIHN3YWwyLXJvdGF0ZS1sb2FkaW5nezAle3RyYW5zZm9ybTpyb3RhdGUoMCl9MTAwJXt0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fUBrZXlmcmFtZXMgc3dhbDItcm90YXRlLWxvYWRpbmd7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwKX0xMDAle3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19Ym9keS5zd2FsMi1zaG93bjpub3QoLnN3YWwyLW5vLWJhY2tkcm9wKTpub3QoLnN3YWwyLXRvYXN0LXNob3duKXtvdmVyZmxvdzpoaWRkZW59Ym9keS5zd2FsMi1oZWlnaHQtYXV0b3toZWlnaHQ6YXV0byFpbXBvcnRhbnR9Ym9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVye3RvcDphdXRvO3JpZ2h0OmF1dG87Ym90dG9tOmF1dG87bGVmdDphdXRvO21heC13aWR0aDpjYWxjKDEwMCUgLSAuNjI1ZW0gKiAyKTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudH1ib2R5LnN3YWwyLW5vLWJhY2tkcm9wIC5zd2FsMi1jb250YWluZXI+LnN3YWwyLW1vZGFse2JveC1zaGFkb3c6MCAwIDEwcHggcmdiYSgwLDAsMCwuNCl9Ym9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVyLnN3YWwyLXRvcHt0b3A6MDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX1ib2R5LnN3YWwyLW5vLWJhY2tkcm9wIC5zd2FsMi1jb250YWluZXIuc3dhbDItdG9wLWxlZnQsYm9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVyLnN3YWwyLXRvcC1zdGFydHt0b3A6MDtsZWZ0OjB9Ym9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVyLnN3YWwyLXRvcC1lbmQsYm9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVyLnN3YWwyLXRvcC1yaWdodHt0b3A6MDtyaWdodDowfWJvZHkuc3dhbDItbm8tYmFja2Ryb3AgLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1jZW50ZXJ7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSl9Ym9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVyLnN3YWwyLWNlbnRlci1sZWZ0LGJvZHkuc3dhbDItbm8tYmFja2Ryb3AgLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1jZW50ZXItc3RhcnR7dG9wOjUwJTtsZWZ0OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9Ym9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVyLnN3YWwyLWNlbnRlci1lbmQsYm9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVyLnN3YWwyLWNlbnRlci1yaWdodHt0b3A6NTAlO3JpZ2h0OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9Ym9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVyLnN3YWwyLWJvdHRvbXtib3R0b206MDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX1ib2R5LnN3YWwyLW5vLWJhY2tkcm9wIC5zd2FsMi1jb250YWluZXIuc3dhbDItYm90dG9tLWxlZnQsYm9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVyLnN3YWwyLWJvdHRvbS1zdGFydHtib3R0b206MDtsZWZ0OjB9Ym9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVyLnN3YWwyLWJvdHRvbS1lbmQsYm9keS5zd2FsMi1uby1iYWNrZHJvcCAuc3dhbDItY29udGFpbmVyLnN3YWwyLWJvdHRvbS1yaWdodHtyaWdodDowO2JvdHRvbTowfUBtZWRpYSBwcmludHtib2R5LnN3YWwyLXNob3duOm5vdCguc3dhbDItbm8tYmFja2Ryb3ApOm5vdCguc3dhbDItdG9hc3Qtc2hvd24pe292ZXJmbG93LXk6c2Nyb2xsIWltcG9ydGFudH1ib2R5LnN3YWwyLXNob3duOm5vdCguc3dhbDItbm8tYmFja2Ryb3ApOm5vdCguc3dhbDItdG9hc3Qtc2hvd24pPlthcmlhLWhpZGRlbj10cnVlXXtkaXNwbGF5Om5vbmV9Ym9keS5zd2FsMi1zaG93bjpub3QoLnN3YWwyLW5vLWJhY2tkcm9wKTpub3QoLnN3YWwyLXRvYXN0LXNob3duKSAuc3dhbDItY29udGFpbmVye3Bvc2l0aW9uOnN0YXRpYyFpbXBvcnRhbnR9fWJvZHkuc3dhbDItdG9hc3Qtc2hvd24gLnN3YWwyLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fWJvZHkuc3dhbDItdG9hc3Qtc2hvd24gLnN3YWwyLWNvbnRhaW5lci5zd2FsMi10b3B7dG9wOjA7cmlnaHQ6YXV0bztib3R0b206YXV0bztsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX1ib2R5LnN3YWwyLXRvYXN0LXNob3duIC5zd2FsMi1jb250YWluZXIuc3dhbDItdG9wLWVuZCxib2R5LnN3YWwyLXRvYXN0LXNob3duIC5zd2FsMi1jb250YWluZXIuc3dhbDItdG9wLXJpZ2h0e3RvcDowO3JpZ2h0OjA7Ym90dG9tOmF1dG87bGVmdDphdXRvfWJvZHkuc3dhbDItdG9hc3Qtc2hvd24gLnN3YWwyLWNvbnRhaW5lci5zd2FsMi10b3AtbGVmdCxib2R5LnN3YWwyLXRvYXN0LXNob3duIC5zd2FsMi1jb250YWluZXIuc3dhbDItdG9wLXN0YXJ0e3RvcDowO3JpZ2h0OmF1dG87Ym90dG9tOmF1dG87bGVmdDowfWJvZHkuc3dhbDItdG9hc3Qtc2hvd24gLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1jZW50ZXItbGVmdCxib2R5LnN3YWwyLXRvYXN0LXNob3duIC5zd2FsMi1jb250YWluZXIuc3dhbDItY2VudGVyLXN0YXJ0e3RvcDo1MCU7cmlnaHQ6YXV0bztib3R0b206YXV0bztsZWZ0OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9Ym9keS5zd2FsMi10b2FzdC1zaG93biAuc3dhbDItY29udGFpbmVyLnN3YWwyLWNlbnRlcnt0b3A6NTAlO3JpZ2h0OmF1dG87Ym90dG9tOmF1dG87bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfWJvZHkuc3dhbDItdG9hc3Qtc2hvd24gLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1jZW50ZXItZW5kLGJvZHkuc3dhbDItdG9hc3Qtc2hvd24gLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1jZW50ZXItcmlnaHR7dG9wOjUwJTtyaWdodDowO2JvdHRvbTphdXRvO2xlZnQ6YXV0bzt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX1ib2R5LnN3YWwyLXRvYXN0LXNob3duIC5zd2FsMi1jb250YWluZXIuc3dhbDItYm90dG9tLWxlZnQsYm9keS5zd2FsMi10b2FzdC1zaG93biAuc3dhbDItY29udGFpbmVyLnN3YWwyLWJvdHRvbS1zdGFydHt0b3A6YXV0bztyaWdodDphdXRvO2JvdHRvbTowO2xlZnQ6MH1ib2R5LnN3YWwyLXRvYXN0LXNob3duIC5zd2FsMi1jb250YWluZXIuc3dhbDItYm90dG9te3RvcDphdXRvO3JpZ2h0OmF1dG87Ym90dG9tOjA7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSl9Ym9keS5zd2FsMi10b2FzdC1zaG93biAuc3dhbDItY29udGFpbmVyLnN3YWwyLWJvdHRvbS1lbmQsYm9keS5zd2FsMi10b2FzdC1zaG93biAuc3dhbDItY29udGFpbmVyLnN3YWwyLWJvdHRvbS1yaWdodHt0b3A6YXV0bztyaWdodDowO2JvdHRvbTowO2xlZnQ6YXV0b30iKTs="}},"time_used":51,"timings":{"blocked":-1,"dns":2,"connect":9,"send":0,"wait":9,"receive":2,"ssl":28},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/#","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.274Z","timestamp":1785143908274,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:39 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nX-Powered-By: PHP/7.4.7\r\nExpires: Thu, 19 Nov 1981 08:52:00 GMT\r\nCache-Control: no-store, no-cache, must-revalidate\r\nPragma: no-cache\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 16067\r\nKeep-Alive: timeout=5, max=99\r\nConnection: Keep-Alive\r\nContent-Type: text/html; charset=UTF-8\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OWL Carousel","description":"OWL Carousel is an enabled jQuery plugin that lets you create responsive carousel sliders.","website":"https://owlcarousel2.github.io/OwlCarousel2/","common_platform_enumeration":"","icon":"OWL Carousel.png","categories":["JavaScript libraries"]},{"name":"parallax.js","description":"Simple parallax scrolling effect.","website":"https://github.com/pixelcog/parallax.js","common_platform_enumeration":"","icon":"","categories":["JavaScript libraries"]},{"name":"SweetAlert2:10","description":"SweetAlert2 is a JavaScript library that provides customisable, visually appealing, and responsive alert and modal dialog boxes for web applications.","website":"https://sweetalert2.github.io/","common_platform_enumeration":"","icon":"SweetAlert2.svg","categories":["JavaScript libraries"]},{"name":"YouTube","description":"YouTube is a video sharing service where users can create their own profile, upload videos, watch, like and comment on other videos.","website":"https://www.youtube.com","common_platform_enumeration":"","icon":"YouTube.png","categories":["Video players"]},{"name":"Magnific Popup","description":"Magnific Popup is a responsive lightbox \u0026 dialog script with focus on performance and providing best experience for user with any device.","website":"https://dimsemenov.com/plugins/magnific-popup/","common_platform_enumeration":"","icon":"Magnific Popup.png","categories":["JavaScript libraries"]},{"name":"PHP:7.4.7","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":"jsDelivr","description":"JSDelivr is a free public CDN for open-source projects. It can serve web files directly from the npm registry and GitHub repositories without any configuration.","website":"https://www.jsdelivr.com/","common_platform_enumeration":"","icon":"jsdelivr-icon.svg","categories":["CDN"]},{"name":"jQuery:1.11.3","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":"Popper","description":"Popper is a positioning engine, its purpose is to calculate the position of an element to make it possible to position it near a given reference element.","website":"https://popper.js.org","common_platform_enumeration":"","icon":"Popper.svg","categories":["Miscellaneous"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"Bootstrap","description":"Bootstrap is a free and open-source CSS framework directed at responsive, mobile-first front-end web development. It contains CSS and JavaScript-based design templates for typography, forms, buttons, navigation, and other interface components.","website":"https://getbootstrap.com","common_platform_enumeration":"cpe:2.3:a:getbootstrap:bootstrap:*:*:*:*:*:*:*:*","icon":"Bootstrap.svg","categories":["UI frameworks"]}],"data":{"size":90095,"size_decoded":16479,"mime_type":"text/html; charset=UTF-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (1208), with CRLF line terminators","md5":"c5d3b5cbabd6d7baae6e5c7af607a9a9","sha1":"77b549da3b51cf9255712823cbc89f3c3547656d","sha256":"c3508ba1af587a195b1d183c6729e5bd7a386c7beccb2b2a9e20ef08bf2c3975","sha512":"f3f55b7591be746d39a50d2e00b8cf4e10da0dd5509474287b9d0701431d1632321de21d3fe483ec8898eae1100ce9e6214bda2b00c28a9e1ce1e0cf7abab03c","ssdeep":"768:hv/K/C0RmzRawDODHFvglojYMW9pgsx7b8PmrIQGQ+B:CC0R4awDODHF4lojYMW9pgS7b8PmrI4i","tlshash":"b7936020a5e51027007b71d69a294b58ffa2d307d3468be176fc2ba74ff6f149c13a98","first_seen":"2026-07-27T06:18:56.449038Z","last_seen":"2026-07-27T09:20:18.36253Z","times_seen":3,"resource_available":false,"data":"PCFkb2N0eXBlIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PVVURi04IiAvPg0KDQo8aGVhZD4NCiAgICA8bWV0YSBuYW1lPSJST0JPVFMiIGNvbnRlbnQ9Ik5PSU5ERVgsIE5PRk9MTE9XIj4NCiAgICA8IS0tIFJlcXVpcmVkIG1ldGEgdGFncyAtLT4NCiAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+DQogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0wLjgsIHNocmluay10by1maXQ9bm8iPg0KICAgIDxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iZmF2aWNvbi5wbmciIHR5cGU9ImltYWdlL3BuZyI+DQoNCg0KICAgIDwhLS1zdGFydCBoZXJlLS0+DQogICAgPG1ldGEgcHJvcGVydHk9Im9nOnRpdGxlIiBjb250ZW50PSJXZWxjb21lIFRvIFNjcm9NZWdhVHJhZGUiIC8+DQogICAgPCEtLSA8bWV0YSBwcm9wZXJ0eT0ib2c6c2l0ZV9uYW1lIiBjb250ZW50PSJTY3JvTWVnYVRyYWRlIiAvPiAtLT4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlNjcm9NZWdhVHJhZGUgaXMgYW4gYXdhcmQgd2lubmluZyBGb3JleCwgU3RvY2sgIGFuZCBDb21tb2RpdGllcyBhdXRvbWF0ZWQgdHJhZGluZyBCcm9rZXIgRXN0YWJsaXNoZWQgaW4gVVNBIHRvIGhlbHAgZ2l2ZXMgeW91IGZ1bGwgY29udHJvbCBvZiB5b3VyIGludmVzdG1lbnQsIGFuZCBhbGxvd3MgeW91IHRvIHdpdGhkcmF3IHlvdXIgY2FwaXRhbCBhbmQgcHJvZml0IHdpdGggZWFzZSBhdCBhbnl0aW1lLiIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0id2Vic2l0ZSIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2UiIGNvbnRlbnQ9Imh0dHBzOi8vc2Nyb21lZ2F0cmFkZS5jb20vaW1hZ2UvZmJaLnBuZyIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dXJsIiBjb250ZW50PSJodHRwczovL3Njcm9tZWdhdHJhZGUuY29tIj4NCiAgICA8IS0tIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTphbHQiIG5hbWU9ImltYWdlOmFsdCIgY29udGVudD0iU2Nyb01lZ2FUcmFkZSIgLz4gLS0+DQogICAgPGxpbmsgcmVsPSJpY29uIiBocmVmPSJmYXZpY29uLnBuZyI+DQogICAgPCEtLXN0YXJ0IGhlcmUtLT4NCg0KICAgICAgICA8IS0tIEJvb3RzdHJhcCBDU1MgLS0+DQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJjc3MvYm9vdHN0cmFwLmNzcyI+DQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJjc3MvZm9udC1hd2Vzb21lLm1pbi5jc3MiPg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0idmVuZG9ycy9mbGF0aWNvbi9mbGF0aWNvbi5jc3MiPg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0idmVuZG9ycy9zdHJva2UtaWNvbi9zdHlsZS5jc3MiPg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0idmVuZG9ycy9vd2wtY2Fyb3VzZWwvYXNzZXRzL293bC5jYXJvdXNlbC5taW4uY3NzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InZlbmRvcnMvanFlcnktbmljZS1zZWxlY3Rvci9jc3MvbmljZS1zZWxlY3QuY3NzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InZlbmRvcnMvbWFnbmlmeS1wb3B1cC9tYWduaWZpYy1wb3B1cC5jc3MiPg0KICAgIDwhLS0gUmV2IHNsaWRlciBjc3MgLS0+DQogICAgPGxpbmsgaHJlZj0idmVuZG9ycy9yZXZvbHV0aW9uL2Nzcy9zZXR0aW5ncy5jc3MiIHJlbD0ic3R5bGVzaGVldCI+DQogICAgPGxpbmsgaHJlZj0idmVuZG9ycy9yZXZvbHV0aW9uL2Nzcy9sYXllcnMuY3NzIiByZWw9InN0eWxlc2hlZXQiPg0KICAgIDxsaW5rIGhyZWY9InZlbmRvcnMvcmV2b2x1dGlvbi9jc3MvbmF2aWdhdGlvbi5jc3MiIHJlbD0ic3R5bGVzaGVldCI+DQogICAgPGxpbmsgaHJlZj0idmVuZG9ycy9yZXZvbHV0aW9uL3BhcnRpY2xlcy9jc3MvcmV2b2x1dGlvbi5hZGRvbi5wYXJ0aWNsZXMuY3NzIiByZWw9InN0eWxlc2hlZXQiPg0KICAgIDwhLS0gbWFpbiBjc3MgLS0+DQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJjc3Mvc3R5bGUuY3NzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9ImNzcy9yZXNwb25zaXZlLmNzcyI+DQogICAgPCEtLSA8c2NyaXB0IHNyYz0iLi4vd2lkZ2V0LXY0LnRpZGlvY2hhdC5jb20vMV82OF8wL3N0YXRpYy9qcy9yZW5kZXIuYWYwNjg1N2Y2YmIxY2ZkMGM3MzAuanMiIGFzeW5jPjwvc2NyaXB0PiAtLT4NCg0KDQoNCg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvYW5pbWF0ZS5jc3MvNC4xLjEvYW5pbWF0ZS5taW4uY3NzIiAvPg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3N3ZWV0YWxlcnQyQDEwIj48L3NjcmlwdD4NCg0KICAgIDwhLS0gZy1oaWRlIC0tPg0KICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgICAgIGlmcmFtZS5nb29nLXRlLWJhbm5lci1mcmFtZSB7DQogICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7DQogICAgICAgIH0NCiAgICA8L3N0eWxlPg0KICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgICAgIGlmcmFtZS5za2lwdHJhbnNsYXRlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsNCiAgICAgICAgfQ0KICAgIDwvc3R5bGU+DQogICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCiAgICAgICAgYm9keSB7DQogICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7DQogICAgICAgICAgICB0b3A6IDBweCAhaW1wb3J0YW50Ow0KICAgICAgICB9DQogICAgPC9zdHlsZT4NCiAgICA8IS0tIGVuZC1nLWhpZGUgLS0+DQo8L2hlYWQ+DQoNCg0KICAgIDxzdHlsZT4NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldCB7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICBib3R0b206IDgwcHg7DQogICAgICAgICAgICBsZWZ0OiAyMHB4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47DQogICAgICAgICAgICBnYXA6IDEwcHg7DQogICAgICAgICAgICB6LWluZGV4Ojk5OTk7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldCBhIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICB3aWR0aDogNTBweDsNCiAgICAgICAgICAgIGhlaWdodDogNTBweDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsNCiAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogIzI1RDM2NjsNCiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsNCiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDsNCiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMik7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldCBhLnNpZ25hbCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0E3NkYwOw0KICAgICAgICB9DQogICAgICAgIC5mbG9hdGluZy13aWRnZXQgYTpob3ZlciB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTI4QzdFOw0KICAgICAgICB9DQogICAgICAgIC5mbG9hdGluZy13aWRnZXRfeiBhLnRlbGVncmFtIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDg4Y2M7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldF96IGEueCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMURBMUYyOw0KICAgICAgICB9DQogICAgICAgIC5mbG9hdGluZy13aWRnZXRfeiBhLmxpbmtlZGluIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDc3YjU7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldF96IGEuaW5zdGFncmFtIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFMTMwNkM7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldF96IGEuc2t5cGUgew0KICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYWZmMDsNCiAgICAgICAgfQ0KICAgICAgICAuZmxvYXRpbmctd2lkZ2V0X3ogYS5jYWxsIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNGI3ZjE7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldF96IGEuZW1haWwgew0KICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q0NDYzODsNCiAgICAgICAgfQ0KICAgICAgICAuZmxvYXRpbmctd2lkZ2V0X3ogYS5mYWNlYm9vayB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2I1OTk4Ow0KICAgICAgICB9DQogICAgPC9zdHlsZT4NCiAgICA8ZGl2IGNsYXNzPSJmbG9hdGluZy13aWRnZXQiPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3dhLm1lLzQ0Nzg0ODEyMjg3OSIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJDaGF0IG9uIFdoYXRzQXBwIiBzdHlsZT0iZGlzcGxheTorNDQ3ODQ4MTIyODc5Ij4NCiAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zLzYvNmIvV2hhdHNBcHAuc3ZnIiBhbHQ9IldoYXRzQXBwIiB3aWR0aD0iNDAiIGhlaWdodD0iNDAiPg0KICAgICAgICA8L2E+DQogICAgICAgIA0KICAgIDwvZGl2Pg0KPHN0eWxlPg0KICAgIC5jdXN0b20tcG9wdXAtY29udGFpbmVyMSB7DQogICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7DQogICAgICAgIC8vIGZvbnQtd2VpZ2h0OiBib2xkZXI7DQogICAgICAgIGZvbnQtZmFtaWx5OiAnU2Vnb2UgVUknLCBUYWhvbWEsIEdlbmV2YSwgVmVyZGFuYSwgc2Fucy1zZXJpZjsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMGMxOw0KICAgICAgICBmb250LXNpemU6IDE2cHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsNCiAgICAgICAgd2lkdGg6IDMyMHB4Ow0KICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCAxMHB4ICMwMDA7DQogICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgei1pbmRleDogMTAwMDsNCiAgICAgICAgbWFyZ2luLXRvcDogNjQwcHg7DQogICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7DQogICAgICAgIG1heC1oZWlnaHQ6IDgwcHg7DQogICAgICAgIGhlaWdodDogODBweDsNCiAgICB9DQogICAgLnBvcHVwLWxvZ28xIHsNCiAgICAgICAgd2lkdGg6IDgwcHg7DQogICAgICAgIGhlaWdodDogNTAlOw0KICAgIH0NCiAgICAucG9wdXAtaW1hZ2UtaXRlbTEgew0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOw0KICAgICAgICBtYXJnaW46IDA7DQogICAgfQ0KICAgIC5wb3B1cC10ZXh0LWl0ZW0xIHsNCiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7DQogICAgICAgIHBhZGRpbmc6IDRweDsNCiAgICB9DQogICAgLy8gLnBvcHVwLWFtb3VudDEsDQogICAgLy8gLy8jcG9wdXAtY291bnRyeTEsDQogICAgLy8gLy8jcG9wdXAtdXNlcm5hbWUxIHsNCiAgICAvLyAgICAgIGNvbG9yOiByZ2IoMjksIDIyNCwgNjUpOw0KICAgIC8vIH0NCiAgICAucG9wdXAtYW1vdW50MXsNCiAgICAgICAgIGNvbG9yOiAjM2Y0OGNjOw0KICAgIH0NCjwvc3R5bGU+DQoNCg0KDQo8ZGl2IGNsYXNzPSJjdXN0b20tcG9wdXAtY29udGFpbmVyMSIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+DQogICAgPGRpdiBjbGFzcz0icG9wdXAtaW1hZ2UtaXRlbTEiPjxpbWcgY2xhc3M9InBvcHVwLWxvZ28xIg0KICAgICAgICAgICAgc3JjPSIuLi9EYXNoYm9hcmQvaW1nL3Byb2ZpbGUvZGVmYXVsdC5qcGciPjwvZGl2Pg0KICAgIDxkaXYgY2xhc3M9InBvcHVwLXRleHQtaXRlbTEiPg0KICAgICAgICA8IS0tIDxzcGFuIGlkPSJwb3B1cC11c2VybmFtZTEiPjwvc3Bhbj4gZnJvbSA8c3BhbiBpZD0icG9wdXAtY291bnRyeTEiPjwvc3Bhbj4ganVzdCByZWNlaXZlZCBhIHByb2ZpdCBvZiA8c3BhbiBjbGFzcz0icG9wdXAtYW1vdW50MSI+JDxzcGFuIGlkPSJwb3B1cC1hbW91bnQxIj48L3NwYW4+PC9zcGFuPiAtLT4NCiAgICA8L2Rpdj4NCjwvZGl2Pg0KDQo8c2NyaXB0IGRhdGEtY2Zhc3luYz0iZmFsc2UiIHNyYz0iIyI+PC9zY3JpcHQ+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgdmFyIGxpc3RuYW1lcyA9IFsnVG9ueScsICdBbGV4JywgJ0VtaWx5JywgJ0NocmlzJywgJ1NvcGhpYScsICdNaWNoYWVsJywgJ09saXZpYScsICdXaWxsaWFtJywgJ0F2YScsICdKYW1lcycsICdHcmFjZScsICdEYW5pZWwnLCAnRW1tYScsICdKb3NlcGgnLCAnTWlhJywgJ0RhdmlkJywgJ0VsbGEnLCAnQW5kcmV3JywgJ0FtZWxpYScsICdCZW5qYW1pbicsICdTb3BoaWUnLCAnU2FtdWVsJywgJ0xpbHknLCAnTWF0dGhldycsICdDaGxvZScsICdDaHJpc3RvcGhlcicsICdab2UnLCAnSm9obicsICdBaWRlbicsICdOYXRhbGllJywgJ0phY2tzb24nLCAnQWJpZ2FpbCcsICdOaWNob2xhcycsICdDaGFybG90dGUnLCAnRXRoYW4nLCAnTWFkaXNvbicsICdEYW5pZWwnLCAnTGlhbScsICdTb3BoaWUnLCAnUnlhbicsICdHcmFjZScsICdOYXRoYW4nLCAnQXZlcnknLCAnR2FicmllbCcsICdIYW5uYWgnLCAnRHlsYW4nLCAnRXZlbHluJywgJ0NhbGViJywgJ1NjYXJsZXR0J107ICAgICAgICANCiAgICB2YXIgbGlzdENvdW50cmllcyA9IFsnVVNBJywgJ1BvcnR1Z2FsJywgJ0dlcm1hbnknLCAnRnJhbmNlJywgJ0l0YWx5JywgJ05hbWliaWEnLCAnVVNBJywgJ1NvdXRoIEFmcmljYScsICdDYW5hZGEnLCAnQXJnZW50aW5hJywgJ1NhdWRpIEFyYWJpYScsICdNZXhpY28nLCAnUG9ydHVnYWwnLCAnQnJhemlsJywgJ1ZlbmV6dWVsYScsICdJc3JlYWwnLCAnU3dlZGVuJywgJ1VTQScsICdDb2xvbWJpYScsICdJdGFseScsICdDYW5hZGEnLCAnVVNBJywgJ1VTQScsICdHcmVlY2UnLCAnQ3ViYScsICdHZXJtYW55JywgJ1BvcnR1Z2FsJywgJ0F1c3RyaWEnLCAnTWV4aWNvJywgJ1BhbmFtYScsICdTb3V0aCBBZnJpY2EnLCAnVVNBJywgJ05ldGhlcmxhbmRzJywgJ1N3aXR6ZXJsYW5kJywgJ0JlbGdpdW0nLCAnSXNyYWVsJywgJ0N5cHJ1cyddOw0KICAgIHZhciB0cmFuc2FycmF5ID0gWydqdXN0IDxiPmludmVzdGVkPC9iPicsICdoYXMgPGI+d2l0aGRyYXduPC9iPicsICdpcyA8Yj50cmFkaW5nIHdpdGg8L2I+JywnanVzdCA8Yj5yZWNlaXZlZDwvYj4gYSBwcm9maXQgb2YnXTsNCiAgICAvL3ZhciB0cmFuc2FycmF5ID0gWydoYXMgPGI+d2l0aGRyYXduPC9iPicsJ2p1c3QgPGI+cmVjZWl2ZWQ8L2I+IGEgcHJvZml0IG9mJ107DQogICAgaW50ZXJ2YWwgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoNDAwMDAgLSA4MDAwICsgMSkgKyA4MDAwKTsNCiAgICB2YXIgcnVuID0gc2V0SW50ZXJ2YWwocmVxdWVzdCwgaW50ZXJ2YWwpOw0KDQoNCiAgICBmdW5jdGlvbiBnZXRSYW5kb21OdW1iZXIobWluLCBtYXgsIG91dGNvbWV6KSB7DQogICAgICAgIGNvbnN0IHJhbmRvbVZhbHVlID0gKG91dGNvbWV6LmluY2x1ZGVzKCJpbnZlc3RlZCIpIHx8IG91dGNvbWV6LmluY2x1ZGVzKCJ0cmFkaW5nIikgfHwgb3V0Y29tZXouaW5jbHVkZXMoIm1pbmluZyIpKQ0KICAgICAgICA/IE1hdGguZmxvb3IoKE1hdGgucmFuZG9tKCkgKiAyMDArMSkrNSkgKjEwMCAgDQogICAgICAgIDogTWF0aC5mbG9vcigoTWF0aC5yYW5kb20oKSAqIG1heCsxKSttaW4pICoxMDA7ICANCiAgICAgICAgcmV0dXJuIHJhbmRvbVZhbHVlLnRvTG9jYWxlU3RyaW5nKCk7DQogICAgfQ0KDQoNCiAgICBmdW5jdGlvbiByZXF1ZXN0KCkgew0KICAgICAgICBjbGVhckludGVydmFsKHJ1bik7DQogICAgICAgIGludGVydmFsID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKDQwMDAwIC0gODAwMCArIDEpICsgODAwMCk7DQogICAgICAgIHZhciB1X25hbWVzID0gbGlzdG5hbWVzW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGxpc3RuYW1lcy5sZW5ndGgpXTsNCiAgICAgICAgdmFyIGNvdW50cnkgPSBsaXN0Q291bnRyaWVzW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGxpc3RDb3VudHJpZXMubGVuZ3RoKV07DQogICAgICAgIHZhciB0cmFuc3R5cGUgPSB0cmFuc2FycmF5W01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIHRyYW5zYXJyYXkubGVuZ3RoKV07DQoNCiAgICAgICAgLy92YXIgbXNnID0gJzxzcGFuIGlkPSJwb3B1cC11c2VybmFtZTEiPicgKyB1X25hbWVzICsgJzwvc3Bhbj4gZnJvbSA8c3BhbiBpZD0icG9wdXAtY291bnRyeTEiPicgKyBjb3VudHJ5ICsgJzwvc3Bhbj4ganVzdCByZWNlaXZlZCBhIHByb2ZpdCBvZiA8c3BhbiBjbGFzcz0icG9wdXAtYW1vdW50MSI+PGI+JDxzcGFuIGlkPSJwb3B1cC1hbW91bnQxIj4nK2dldFJhbmRvbU51bWJlcigxMDAsNTAwLCJub25lIikrJzwvc3Bhbj48L2I+PC9zcGFuPic7DQogICAgICAgIA0KICAgICAgICB2YXIgbXNnID0gJzxzcGFuIGlkPSJwb3B1cC11c2VybmFtZTEiPlNvbWVvbmU8L3NwYW4+IGZyb20gPHNwYW4gaWQ9InBvcHVwLWNvdW50cnkxIj4nICsgY291bnRyeSArICc8L3NwYW4+ICcgKyB0cmFuc3R5cGUgKyAnIDxzcGFuIGNsYXNzPSJwb3B1cC1hbW91bnQxIj48Yj4kPHNwYW4gaWQ9InBvcHVwLWFtb3VudDEiPicrZ2V0UmFuZG9tTnVtYmVyKDEwMCw1MDAsdHJhbnN0eXBlKSsnPC9zcGFuPjwvYj48L3NwYW4+JzsNCiAgICAgICAgDQogICAgICAgICQoIi5jdXN0b20tcG9wdXAtY29udGFpbmVyMSAucG9wdXAtdGV4dC1pdGVtMSIpLmh0bWwobXNnKTsNCiAgICAgICAgJCgiLmN1c3RvbS1wb3B1cC1jb250YWluZXIxIikuc3RvcCh0cnVlKS5mYWRlSW4oMzAwKTsNCiAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7DQogICAgICAgICAgICAkKCIuY3VzdG9tLXBvcHVwLWNvbnRhaW5lcjEiKS5zdG9wKHRydWUpLmZhZGVPdXQoMzAwKTsNCiAgICAgICAgfSwgMTAwMDApOw0KICAgICAgICBydW4gPSBzZXRJbnRlcnZhbChyZXF1ZXN0LCBpbnRlcnZhbCk7DQogICAgfQ0KPC9zY3JpcHQ+DQo8Ym9keSBvbmN1dD0icmV0dXJuIGZhbHNlIiBvbmNvcHk9InJldHVybiBmYWxzZSIgb25wYXN0ZT0icmV0dXJuIGZhbHNlIj4NCg0KDQogICAgIDwhLS09PT09PT09PT09PT09PT09SGVhZGVyIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCiA8aGVhZGVyIGNsYXNzPSJtYWluX2hlYWRlcl9hcmVhIj4NCiAgICAgPGRpdiBjbGFzcz0iaGVhZGVyX3RvcCI+DQogICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRlcl90b3BfaW5uZXIiPg0KICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbG9hdC1sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibGlzdF9zdHlsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxzcGFuPjxpIGNsYXNzPSJmYSBmYS1lbnZlbG9wZSI+PC9pPnN1cHBvcnRAc2Nyb21lZ2F0cmFkZS5jb208L3NwYW4+PC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxvYXQtcmlnaHQiPg0KICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbGlzdF9zdHlsZSBoZWFkZXJfdG9wX21lbnUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9IkRhc2hib2FyZC9sb2dpbiI+TG9naW48L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9IkRhc2hib2FyZC9yZWdpc3RlciI+UmVnaXN0ZXI8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgIDwvZGl2Pg0KICAgICA8L2Rpdj4NCiAgICAgPG5hdiBjbGFzcz0ibmF2YmFyIG5hdmJhci1leHBhbmQtbGcgbmF2YmFyLWxpZ2h0Ij4NCiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciIgc3R5bGU9Im1hcmdpbi10b3A6LTEwcHg7bWFyZ2luLWJvdHRvbTotMTBweCI+DQogICAgICAgICAgICAgPCEtLSBCcmFuZCBhbmQgdG9nZ2xlIGdldCBncm91cGVkIGZvciBiZXR0ZXIgbW9iaWxlIGRpc3BsYXkgLS0+DQogICAgICAgICAgICAgPGEgY2xhc3M9Im5hdmJhci1icmFuZCIgaHJlZj0iaG9tZSI+PGltZyBzcmM9ImltYWdlL2xvZ29faGVhZGVyK2RhcmsucG5nIiB3aWR0aD0iMjUwcHgiPjwvYT4NCiAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXZiYXItdG9nZ2xlciIgdHlwZT0iYnV0dG9uIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjbmF2YmFyU3VwcG9ydGVkQ29udGVudCIgYXJpYS1jb250cm9scz0ibmF2YmFyU3VwcG9ydGVkQ29udGVudCIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtbGFiZWw9IlRvZ2dsZSBuYXZpZ2F0aW9uIj4NCiAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imljb24tYmFyIj48L3NwYW4+DQogICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciI+PC9zcGFuPg0KICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4NCiAgICAgICAgICAgICA8L2J1dHRvbj4NCg0KICAgICAgICAgICAgIDwhLS0gPGRpdiBpZD0iZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50Ij48L2Rpdj4NCiAgICAgICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGdvb2dsZVRyYW5zbGF0ZUVsZW1lbnRJbml0KCkgew0KICAgICAgICAgICAgICAgICAgICAgbmV3IGdvb2dsZS50cmFuc2xhdGUuVHJhbnNsYXRlRWxlbWVudCh7DQogICAgICAgICAgICAgICAgICAgICAgICAgcGFnZUxhbmd1YWdlOiAnZW4nLA0KICAgICAgICAgICAgICAgICAgICAgICAgIGxheW91dDogZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVFbGVtZW50LklubGluZUxheW91dC5IT1JJWk9OVEFMDQogICAgICAgICAgICAgICAgICAgICB9LCAnZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50Jyk7DQogICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICA8L3NjcmlwdD4NCiAgICAgICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvL3RyYW5zbGF0ZS5nb29nbGUuY29tL3RyYW5zbGF0ZV9hL2VsZW1lbnQuanM/Y2I9Z29vZ2xlVHJhbnNsYXRlRWxlbWVudEluaXQiPjwvc2NyaXB0PiAtLT4NCg0KDQogICAgICAgICAgICAgPGJyPg0KDQogICAgICAgICAgICAgPGJyPg0KICAgICAgICAgICAgIDwhLS0gQ29sbGVjdCB0aGUgbmF2IGxpbmtzLCBmb3JtcywgYW5kIG90aGVyIGNvbnRlbnQgZm9yIHRvZ2dsaW5nIC0tPg0KICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbGxhcHNlIG5hdmJhci1jb2xsYXBzZSIgaWQ9Im5hdmJhclN1cHBvcnRlZENvbnRlbnQiPg0KICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBuYXZiYXItbmF2IG1sLWF1dG8iPg0KICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaG9tZSIgY2xhc3M9Im5hdi1saW5rIj5Ib21lPC9hPg0KDQogICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSBzdWJtZW51IGRyb3Bkb3duIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0ibmF2LWxpbmsgZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIHJvbGU9ImJ1dHRvbiIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPkFib3V0IFVzPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJhYm91dCI+T3VyIENvbXBhbnk8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0gc3VibWVudSBkcm9wZG93biI+DQogICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5Qcm9kdWN0czwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iZm9yZXgiPkZvcmV4PC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJjb21tb2RpdGllcyI+Q29tbW9kaXRpZXM8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImNyeXB0byI+Q3J5cHRvPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJleGNoYW5nZSI+RXhjaGFuZ2U8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0gc3VibWVudSBkcm9wZG93biI+DQogICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5CdXkgQ29pbjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9jZXguaW8vIj5CdXkgQml0Y29pbiAxPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL2NvaW5tYW1hLmNvbS8iPkJ1eSBCaXRjb2luIDI8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGhyZWY9ImNvbnRhY3QiIGNsYXNzPSJuYXYtbGluayI+Q29udGFjdDwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGhyZWY9IkRhc2hib2FyZC9sb2dpbiIgY2xhc3M9Im5hdi1saW5rIj5Mb2dpbjwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGhyZWY9IkRhc2hib2FyZC9yZWdpc3RlciIgY2xhc3M9Im5hdi1saW5rIj5SZWdpc3RlcjwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICA8IS0tIDx1bCBjbGFzcz0ibmF2IG5hdmJhci1uYXYgbmF2YmFyLXJpZ2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0gc2VhcmNoX2Ryb3Bkb3duIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0ibmF2LWxpbmsiPjxpIGNsYXNzPSJpY29uIGljb24tU2VhcmNoIj48L2k+PC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibGlzdF9zdHlsZSBzZWFyY2giPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Zm9ybSBhY3Rpb249IiMiIG1ldGhvZD0iZ2V0IiBjbGFzcz0ic2VhcmNoLWZvcm0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InNlYXJjaCIgY2xhc3M9ImZvcm0tY29udHJvbCIgcGxhY2Vob2xkZXI9IlNlYXJjaCBmb3IiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaW5wdXQtZ3JvdXAtYWRkb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJzdWJtaXQiPjxpIGNsYXNzPSJpY29uIGljb24tU2VhcmNoIj48L2k+PC9idXR0b24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZm9ybT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPC91bD4gLS0+DQogICAgICAgICAgICAgPC9kaXY+PCEtLSAvLm5hdmJhci1jb2xsYXBzZSAtLT4NCiAgICAgICAgIDwvZGl2PjwhLS0gLy5jb250YWluZXItZmx1aWQgLS0+DQogICAgIDwvbmF2Pg0KIDwvaGVhZGVyPg0KIDwhLS09PT09PT09PT09PT09PT09SGVhZGVyIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCiA8IS0tIENPTlRFTlQgU1RBUlQgLS0+DQoNCjxzY3JpcHQgc3JjPSdqcy9hamF4L2xpYnMvanF1ZXJ5LzEuMTEuMy9qcXVlcnkubWluLmpzJz48L3NjcmlwdD48dGl0bGU+U2Nyb01lZ2FUcmFkZSBpcyBhbiBhd2FyZCB3aW5uaW5nIEZvcmV4IGFuZCBDb21tb2RpdGllcyBCcm9rZXI8L3RpdGxlPg0KDQoNCjwhLS0gQ09OVEVOVCBTVEFSVCAtLT4NCg0KDQoNCg0KPCEtLT09PT09PT09PT09PT09PT1TbGlkZXIgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KPHNlY3Rpb24gY2xhc3M9InJldl9zbGlkZXJfd3JhcHBlciI+DQogICAgPGRpdiBpZD0icmV2X3NsaWRlcl84XzEiIGNsYXNzPSJyZXZfc2xpZGVyIiBkYXRhLXZlcnNpb249IjUuMy4xLjYiPg0KICAgICAgICA8dWw+DQogICAgICAgICAgICA8bGkgZGF0YS1pbmRleD0icnMtMTU4NyIgZGF0YS10cmFuc2l0aW9uPSJ6b29taW4iIGRhdGEtc2xvdGFtb3VudD0iNyIgZGF0YS1oaWRlYWZ0ZXJsb29wPSIwIiBkYXRhLWhpZGVzbGlkZW9ubW9iaWxlPSJvZmYiIGRhdGEtZWFzZWluPSJQb3dlcjQuZWFzZUluT3V0IiBkYXRhLWVhc2VvdXQ9IlBvd2VyNC5lYXNlSW5PdXQiIGRhdGEtbWFzdGVyc3BlZWQ9IjIwMDAiIGRhdGEtdGh1bWI9ImltYWdlL3NsaWRlci9zbGlkZXItYmcxLmpwZyIgZGF0YS1yb3RhdGU9IjAiIGRhdGEtc2F2ZXBlcmZvcm1hbmNlPSJvZmYiIGRhdGEtdGl0bGU9IktlbiBCdXJucyIgZGF0YS1wYXJhbTE9IiIgZGF0YS1wYXJhbTI9IiIgZGF0YS1wYXJhbTM9IiIgZGF0YS1wYXJhbTQ9IiIgZGF0YS1wYXJhbTU9IiIgZGF0YS1wYXJhbTY9IiIgZGF0YS1wYXJhbTc9IiIgZGF0YS1wYXJhbTg9IiIgZGF0YS1wYXJhbTk9IiIgZGF0YS1wYXJhbTEwPSIiIGRhdGEtZGVzY3JpcHRpb249IiI+DQoNCiAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2Uvc2xpZGVyL3NsaWRlci1iZzEuanBnIiBhbHQ9IiIgZGF0YS1iZ3Bvc2l0aW9uPSJjZW50ZXIgY2VudGVyIiBkYXRhLWtlbmJ1cm5zPSJvbiIgZGF0YS1kdXJhdGlvbj0iMzAwMDAiIGRhdGEtZWFzZT0iTGluZWFyLmVhc2VOb25lIiBkYXRhLXNjYWxlc3RhcnQ9IjEwMCIgZGF0YS1zY2FsZWVuZD0iMTIwIiBkYXRhLXJvdGF0ZXN0YXJ0PSIwIiBkYXRhLXJvdGF0ZWVuZD0iMCIgZGF0YS1vZmZzZXRzdGFydD0iMCAwIiBkYXRhLW9mZnNldGVuZD0iMCAwIiBkYXRhLWJncGFyYWxsYXg9IjUiIGNsYXNzPSJyZXYtc2xpZGViZyIgZGF0YS1uby1yZXRpbmE+DQoNCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uIHRwLWxheWVyLXNlbGVjdGFibGUgdHAtcmVzaXplbWUgcnMtcGFyYWxsYXhsZXZlbC0zIGNvaW5fc2xpZGVyX2ltZyIgZGF0YS14PSJbJ3JpZ2h0JywncmlnaHQnLCdyaWdodCcsJ3JpZ2h0J10iIGRhdGEtaG9mZnNldD0iWyctMjIwJywnLTExMCddIiBkYXRhLXk9IlsnbWlkZGxlJywnbWlkZGxlJywndG9wJywndG9wJ10iIGRhdGEtdm9mZnNldD0iWyc0NSddIiBkYXRhLXdpZHRoPSJub25lIiBkYXRhLWhlaWdodD0ibm9uZSIgZGF0YS13aGl0ZXNwYWNlPSJub3dyYXAiIGRhdGEtdHlwZT0iaW1hZ2UiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLWZyYW1lcz0iW3smcXVvdDtkZWxheSZxdW90OzoxMjAwLCZxdW90O3NwZWVkJnF1b3Q7OjEyMDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7MCZxdW90OywmcXVvdDtmcm9tJnF1b3Q7OiZxdW90O3o6MDtyWDowO3JZOjA7clo6MDtzWDowLjk7c1k6MC45O3NrWDowO3NrWTowO29wYWNpdHk6MDsmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7bzoxOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMy5lYXNlSW5PdXQmcXVvdDt9LHsmcXVvdDtkZWxheSZxdW90OzomcXVvdDt3YWl0JnF1b3Q7LCZxdW90O3NwZWVkJnF1b3Q7OjEwMDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7OTk5JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O29wYWNpdHk6MDsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluJnF1b3Q7fV0iIGRhdGEtdGV4dGFsaWduPSJbJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnXSIgZGF0YS1wYWRkaW5ndG9wPSJbMCwwLDAsMF0iIGRhdGEtcGFkZGluZ3JpZ2h0PSJbMCwwLDAsMF0iIGRhdGEtcGFkZGluZ2JvdHRvbT0iWzAsMCwwLDBdIiBkYXRhLXBhZGRpbmdsZWZ0PSJbMCwwLDAsMF0iPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2Uvc2xpZGVyL3NsaWRlci0zLnBuZyIgYWx0PSIiIGRhdGEtd3c9IlsnODkwcHgnLCc1MDBweCcsJzYxNHB4JywnNjE0cHgnXSIgZGF0YS1oaD0iWyc1NjNweCcsJzM2MHB4JywnNDUwcHgnLCc0NTBweCddIiB3aWR0aD0iODkwIiBoZWlnaHQ9IjU2MyIgZGF0YS1uby1yZXRpbmE9IiI+DQogICAgICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzbGlkZXJfdGV4dF9ib3giPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uIHRwLXJlc2l6ZW1lIGZpcnN0X3RleHQiIGRhdGEteD0iWydsZWZ0JywnbGVmdCcsJ2xlZnQnXSIgZGF0YS1ob2Zmc2V0PSJbJzAnLCcwJywnMCcsJzAnXSIgZGF0YS15PSJbJ3RvcCcsJ3RvcCcsJ3RvcCcsJ3RvcCddIiBkYXRhLXZvZmZzZXQ9IlsnMjkwJywnMjkwJywnMjkwJywnMjMwJywxNzBdIiBkYXRhLWZvbnRzaXplPSJbJzIyJ10iIGRhdGEtbGluZWhlaWdodD0iWyczMCddIiBkYXRhLXdpZHRoPSJbJzI4MCddIiBkYXRhLWhlaWdodD0ibm9uZSIgZGF0YS13aGl0ZXNwYWNlPSJub3dyYXAiIGRhdGEtdHlwZT0idGV4dCIgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iIGRhdGEtZnJhbWVzPSdbeyJmcm9tIjoieTpbLTEwMCVdO3o6MDtyWDowZGVnO3JZOjA7clo6MDtzWDoxO3NZOjE7c2tYOjA7c2tZOjA7IiwibWFzayI6Ing6MHB4O3k6MHB4OyIsInNwZWVkIjoxNTAwLCJ0byI6Im86MTsiLCJkZWxheSI6NTUwLCJlYXNlIjoiUG93ZXIzLmVhc2VJbk91dCJ9LHsiZGVsYXkiOiJ3YWl0Iiwic3BlZWQiOjMwMCwidG8iOiJvcGFjaXR5OjA7IiwiZWFzZSI6Im5vdGhpbmcifV0nIGRhdGEtdGV4dEFsaWduPSJbJ2xlZnQnLCdsZWZ0J10iIHN0eWxlPSJmb250LWZhbWlseTpMb3JhLCBzZXJpZjsgZm9udC1zdHlsZTogaXRhbGljO2NvbG9yOiAjZmZmO2ZvbnQtd2VpZ2h0OiA0MDA7Ij5TY3JvTWVnYVRyYWRlIDxzcGFuIGNsYXNzPSIiIHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiA4MHB4OyBoZWlnaHQ6IDFweDtiYWNrZ3JvdW5kOiAjZmZmOyI+PC9zcGFuPjwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgc2VjYW5kX3RleHQiIGRhdGEteD0iWydsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzMzNScsJzMzNScsJzMzNScsJzI3NScsJzIxNSddIiBkYXRhLWZvbnRzaXplPSJbJzU1JywnNDAnLCc0MCcsJzQwJywnMzInXSIgZGF0YS1saW5laGVpZ2h0PSJbJzYzJywnNTUnLCc1MCcsJzUwJywnNDAnXSIgZGF0YS13aWR0aD0iWyc3MDAnLCc3MDAnLCc3MDAnLCc0ODAnLCcyOTAnXSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm9ybWFsIiBkYXRhLXR5cGU9InRleHQiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLWZyYW1lcz0iW3smcXVvdDtkZWxheSZxdW90OzoxMCwmcXVvdDtzcGVlZCZxdW90OzoxNTAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90OzAmcXVvdDssJnF1b3Q7ZnJvbSZxdW90OzomcXVvdDt5OlstMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDsmcXVvdDssJnF1b3Q7bWFzayZxdW90OzomcXVvdDt4OjBweDt5OjBweDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvOjE7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbk91dCZxdW90O30seyZxdW90O2RlbGF5JnF1b3Q7OiZxdW90O3dhaXQmcXVvdDssJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDs5OTkmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7eTpbMTc1JV07JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDppbmhlcml0O3k6aW5oZXJpdDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9XSIgZGF0YS10ZXh0QWxpZ249IlsnbGVmdCddIiBzdHlsZT0iZm9udC1mYW1pbHk6UG9wcGlucywgc2Fucy1zZXJpZjtjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyI+VHJhZGUgQml0Y29pbjxzcGFuIHN0eWxlPSJjb2xvcjogIzM3YWI3NSI+IDwvc3Bhbj48YnI+ICYgYmVjb21lIHN1Y2Nlc3NmdWw8L2Rpdj4NCg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uIHRwLXJlc2l6ZW1lIHRoaXJkX3RleHQiIGRhdGEteD0iWydsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzQ5MCcsJzQ3MCcsJzQ3MCcsJzQxMCcsJzM2MCddIiBkYXRhLWZvbnRzaXplPSJbJzIyJywnMjInLCcyMicsJzIyJywnMTYnXSIgZGF0YS1saW5laGVpZ2h0PSJbJzMwJ10iIGRhdGEtd2lkdGg9IlsnNjUwJywnNjIwJywnNjUwJywnNDcwJywnMjkwJ10iIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vcm1hbCIgZGF0YS10eXBlPSJ0ZXh0IiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS10cmFuc2Zvcm1faWRsZT0ibzoxOyIgZGF0YS1mcmFtZXM9Ilt7JnF1b3Q7ZGVsYXkmcXVvdDs6MTAsJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDswJnF1b3Q7LCZxdW90O2Zyb20mcXVvdDs6JnF1b3Q7eTpbMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDowcHg7eTpbMTAwJV07czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7bzoxOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9LHsmcXVvdDtkZWxheSZxdW90OzomcXVvdDt3YWl0JnF1b3Q7LCZxdW90O3NwZWVkJnF1b3Q7OjE1MDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7OTk5JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O3k6WzE3NSVdOyZxdW90OywmcXVvdDttYXNrJnF1b3Q7OiZxdW90O3g6aW5oZXJpdDt5OmluaGVyaXQ7czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluT3V0JnF1b3Q7fV0iIGRhdGEtdGV4dEFsaWduPSJbJ2xlZnQnXSIgc3R5bGU9ImZvbnQtZmFtaWx5OlBvcHBpbnMsIHNhbnMtc2VyaWY7Y29sb3I6ICNmZmY7Zm9udC13ZWlnaHQ6IDQwMDsiPlRyYWRlIGZvcmVpZ24gY3VycmVuY2llcyBvbiB0aGUgbGFyZ2VzdCBhbmQgbW9zdCBsaXF1aWQgbWFya2V0IGluIHRoZSB3b3JsZC4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiB0cC1yZXNpemVtZSBzbGlkZXJfYnV0dG9uX3R3byIgZGF0YS14PSJbJ2xlZnQnXSIgZGF0YS1ob2Zmc2V0PSJbJzAnLCcwJywnMCcsJzAnXSIgZGF0YS15PSJbJ3RvcCcsJ3RvcCcsJ3RvcCcsJ3RvcCddIiBkYXRhLXZvZmZzZXQ9IlsnNTk1JywnNTk1JywnNTk1JywnNTIwJywnNTAwJ10iIGRhdGEtd2lkdGg9IlsnODAwJ10iIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vd3JhcCIgZGF0YS10eXBlPSJ0ZXh0IiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS1mcmFtZXM9Ilt7JnF1b3Q7ZGVsYXkmcXVvdDs6MTAsJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDswJnF1b3Q7LCZxdW90O2Zyb20mcXVvdDs6JnF1b3Q7eTpbMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDowcHg7eTpbMTAwJV07czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7bzoxOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9LHsmcXVvdDtkZWxheSZxdW90OzomcXVvdDt3YWl0JnF1b3Q7LCZxdW90O3NwZWVkJnF1b3Q7OjE1MDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7OTk5JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O3k6WzE3NSVdOyZxdW90OywmcXVvdDttYXNrJnF1b3Q7OiZxdW90O3g6aW5oZXJpdDt5OmluaGVyaXQ7czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluT3V0JnF1b3Q7fV0iIGRhdGEtdGV4dEFsaWduPSJbJ2xlZnQnXSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ic2xpZGVyX2J0biB0aGVtZV9idG4iIGhyZWY9IkRhc2hib2FyZC9yZWdpc3RlciI+U3RhcnQgdHJhZGluZyBub3c8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0idmlkZW9fYnRuIHZpZGVvLXBvcCIgaHJlZj0iaHR0cHM6Ly93d3cuU2Nyb01lZ2FUcmFkZS5jb20vYXNzaXN0YW50Lm1wNCI+PGltZyBzcmM9ImltYWdlL3ZpZGVvX2ljb24ucG5nIiBhbHQ9IiI+V2F0Y2ggaW50cm8gdmlkZW88YnI+IGFib3V0IHVzPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICA8bGkgZGF0YS1pbmRleD0icnMtMTU4OCIgZGF0YS10cmFuc2l0aW9uPSJ6b29tb3V0IiBkYXRhLXNsb3RhbW91bnQ9ImRlZmF1bHQiIGRhdGEtaGlkZWFmdGVybG9vcD0iMCIgZGF0YS1oaWRlc2xpZGVvbm1vYmlsZT0ib2ZmIiBkYXRhLWVhc2Vpbj0iUG93ZXI0LmVhc2VJbk91dCIgZGF0YS1lYXNlb3V0PSJQb3dlcjQuZWFzZUluT3V0IiBkYXRhLW1hc3RlcnNwZWVkPSIyMDAwIiBkYXRhLXRodW1iPSJpbWFnZS9zbGlkZXIyLmpwZyIgZGF0YS1yb3RhdGU9IjAiIGRhdGEtZnN0cmFuc2l0aW9uPSJmYWRlIiBkYXRhLWZzbWFzdGVyc3BlZWQ9IjE1MDAiIGRhdGEtZnNzbG90YW1vdW50PSI3IiBkYXRhLXNhdmVwZXJmb3JtYW5jZT0ib2ZmIiBkYXRhLXRpdGxlPSJJbnRybyIgZGF0YS1wYXJhbTE9IiIgZGF0YS1wYXJhbTI9IiIgZGF0YS1wYXJhbTM9IiIgZGF0YS1wYXJhbTQ9IiIgZGF0YS1wYXJhbTU9IiIgZGF0YS1wYXJhbTY9IiIgZGF0YS1wYXJhbTc9IiIgZGF0YS1wYXJhbTg9IiIgZGF0YS1wYXJhbTk9IiIgZGF0YS1wYXJhbTEwPSIiIGRhdGEtZGVzY3JpcHRpb249IiI+DQoNCiAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2Uvc2xpZGVyMi5qcGciIGFsdD0iIiBkYXRhLWJncG9zaXRpb249ImNlbnRlciBjZW50ZXIiIGRhdGEtYmdmaXQ9ImNvdmVyIiBkYXRhLWJncmVwZWF0PSJuby1yZXBlYXQiIGRhdGEtYmdwYXJhbGxheD0iMTUiIGNsYXNzPSJyZXYtc2xpZGViZyIgZGF0YS1uby1yZXRpbmE+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiB0cC1sYXllci1zZWxlY3RhYmxlIHRwLXJlc2l6ZW1lIGNvaW5fc2xpZGVyX2ltZyIgZGF0YS14PSJbJ3JpZ2h0JywncmlnaHQnLCdyaWdodCcsJ3JpZ2h0J10iIGRhdGEtaG9mZnNldD0iWyctMjAwJywnLTEwMCcsJy0xMDAnXSIgZGF0YS15PSJbJ21pZGRsZScsJ21pZGRsZScsJ3RvcCcsJ3RvcCddIiBkYXRhLXZvZmZzZXQ9IlsnNDUnXSIgZGF0YS13aWR0aD0ibm9uZSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm93cmFwIiBkYXRhLXR5cGU9ImltYWdlIiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS1mcmFtZXM9Ilt7JnF1b3Q7ZGVsYXkmcXVvdDs6MTIwMCwmcXVvdDtzcGVlZCZxdW90OzoxMjAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90OzAmcXVvdDssJnF1b3Q7ZnJvbSZxdW90OzomcXVvdDt6OjA7clg6MDtyWTowO3JaOjA7c1g6MC45O3NZOjAuOTtza1g6MDtza1k6MDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O286MTsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjMuZWFzZUluT3V0JnF1b3Q7fSx7JnF1b3Q7ZGVsYXkmcXVvdDs6JnF1b3Q7d2FpdCZxdW90OywmcXVvdDtzcGVlZCZxdW90OzoxMDAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90Ozk5OSZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbiZxdW90O31dIiBkYXRhLXRleHRhbGlnbj0iWydpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0J10iIGRhdGEtcGFkZGluZ3RvcD0iWzAsMCwwLDBdIiBkYXRhLXBhZGRpbmdyaWdodD0iWzAsMCwwLDBdIiBkYXRhLXBhZGRpbmdib3R0b209IlswLDAsMCwwXSIgZGF0YS1wYWRkaW5nbGVmdD0iWzAsMCwwLDBdIj4NCiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImltYWdlL3NsaWRlci9iaXRjb2luLWltZy5wbmciIGFsdD0iIiBkYXRhLXd3PSJbJzcwN3B4JywnNTE0cHgnLCc2MTRweCcsJzYxNHB4J10iIGRhdGEtaGg9IlsnNzM2cHgnLCc1MTBweCcsJzQ1MHB4JywnNDUwcHgnXSIgd2lkdGg9IjcwNyIgaGVpZ2h0PSI3MzYiIGRhdGEtbm8tcmV0aW5hPSIiPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2xpZGVyX3RleHRfYm94Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiB0cC1yZXNpemVtZSBmaXJzdF90ZXh0IiBpZD0ic2xpZGUtMTU4Ni1sYXllci0xIiBkYXRhLXg9IlsnbGVmdCcsJ2xlZnQnLCdsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzI5MCcsJzI5MCcsJzI5MCcsJzIzMCcsMTcwXSIgZGF0YS1mb250c2l6ZT0iWycyMiddIiBkYXRhLWxpbmVoZWlnaHQ9IlsnMzAnXSIgZGF0YS13aWR0aD0iWycyMDAnXSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm93cmFwIiBkYXRhLXR5cGU9InRleHQiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLWZyYW1lcz0nW3siZnJvbSI6Ink6Wy0xMDAlXTt6OjA7clg6MGRlZztyWTowO3JaOjA7c1g6MTtzWToxO3NrWDowO3NrWTowOyIsIm1hc2siOiJ4OjBweDt5OjBweDsiLCJzcGVlZCI6MTUwMCwidG8iOiJvOjE7IiwiZGVsYXkiOjU1MCwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifSx7ImRlbGF5Ijoid2FpdCIsInNwZWVkIjozMDAsInRvIjoib3BhY2l0eTowOyIsImVhc2UiOiJub3RoaW5nIn1dJyBkYXRhLXRleHRBbGlnbj0iWydsZWZ0JywnbGVmdCddIiBzdHlsZT0iZm9udC1mYW1pbHk6TG9yYSwgc2VyaWY7IGZvbnQtc3R5bGU6IGl0YWxpYztjb2xvcjogI2ZmZjtmb250LXdlaWdodDogNDAwOyI+RmVhdHVyZWQgQXNzZXRzIDxzcGFuIGNsYXNzPSIiIHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiA4MHB4OyBoZWlnaHQ6IDFweDtiYWNrZ3JvdW5kOiAjZmZmOyI+PC9zcGFuPjwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgc2VjYW5kX3RleHQiIGlkPSJzbGlkZS0xNTg3LWxheWVyLTIiIGRhdGEteD0iWydsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzMzNScsJzMzNScsJzMzNScsJzI3NScsJzIxNSddIiBkYXRhLWZvbnRzaXplPSJbJzU1JywnNDAnLCc0MCcsJzQwJywnMzInXSIgZGF0YS1saW5laGVpZ2h0PSJbJzYzJywnNTUnLCc1MCcsJzUwJywnNDAnXSIgZGF0YS13aWR0aD0iWyc3MDAnLCc3MDAnLCc3MDAnLCc0ODAnLCcyOTAnXSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm9ybWFsIiBkYXRhLXR5cGU9InRleHQiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLWZyYW1lcz0iW3smcXVvdDtkZWxheSZxdW90OzoxMCwmcXVvdDtzcGVlZCZxdW90OzoxNTAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90OzAmcXVvdDssJnF1b3Q7ZnJvbSZxdW90OzomcXVvdDt5OlstMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDsmcXVvdDssJnF1b3Q7bWFzayZxdW90OzomcXVvdDt4OjBweDt5OjBweDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvOjE7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbk91dCZxdW90O30seyZxdW90O2RlbGF5JnF1b3Q7OiZxdW90O3dhaXQmcXVvdDssJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDs5OTkmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7eTpbMTc1JV07JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDppbmhlcml0O3k6aW5oZXJpdDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9XSIgZGF0YS10ZXh0QWxpZ249IlsnbGVmdCddIiBzdHlsZT0iZm9udC1mYW1pbHk6UG9wcGlucywgc2Fucy1zZXJpZjtjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyI+VHJhZGUgQ3J5cHRvLCBTaGFyZXMsIEluZGljZXMsIENvbW1vZGl0aWVzPC9kaXY+DQoNCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiB0cC1yZXNpemVtZSB0aGlyZF90ZXh0IiBpZD0ic2xpZGUtMTU4OC1sYXllci0zIiBkYXRhLXg9IlsnbGVmdCddIiBkYXRhLWhvZmZzZXQ9IlsnMCcsJzAnLCcwJywnMCddIiBkYXRhLXk9IlsndG9wJywndG9wJywndG9wJywndG9wJ10iIGRhdGEtdm9mZnNldD0iWyc0OTAnLCc0NzAnLCc0NzAnLCc0MjAnLCczNjAnXSIgZGF0YS1mb250c2l6ZT0iWycyMicsJzIyJywnMjInLCcyMicsJzE2J10iIGRhdGEtbGluZWhlaWdodD0iWyczMCddIiBkYXRhLXdpZHRoPSJbJzY1MCcsJzY1MCcsJzY1MCcsJzQ3MCcsJzI5MCddIiBkYXRhLWhlaWdodD0ibm9uZSIgZGF0YS13aGl0ZXNwYWNlPSJub3JtYWwiIGRhdGEtdHlwZT0idGV4dCIgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iIGRhdGEtdHJhbnNmb3JtX2lkbGU9Im86MTsiIGRhdGEtZnJhbWVzPSJbeyZxdW90O2RlbGF5JnF1b3Q7OjEwLCZxdW90O3NwZWVkJnF1b3Q7OjE1MDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7MCZxdW90OywmcXVvdDtmcm9tJnF1b3Q7OiZxdW90O3k6WzEwMCVdO3o6MDtyWDowZGVnO3JZOjA7clo6MDtzWDoxO3NZOjE7c2tYOjA7c2tZOjA7b3BhY2l0eTowOyZxdW90OywmcXVvdDttYXNrJnF1b3Q7OiZxdW90O3g6MHB4O3k6WzEwMCVdO3M6aW5oZXJpdDtlOmluaGVyaXQ7JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O286MTsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluT3V0JnF1b3Q7fSx7JnF1b3Q7ZGVsYXkmcXVvdDs6JnF1b3Q7d2FpdCZxdW90OywmcXVvdDtzcGVlZCZxdW90OzoxNTAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90Ozk5OSZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDt5OlsxNzUlXTsmcXVvdDssJnF1b3Q7bWFzayZxdW90OzomcXVvdDt4OmluaGVyaXQ7eTppbmhlcml0O3M6aW5oZXJpdDtlOmluaGVyaXQ7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbk91dCZxdW90O31dIiBkYXRhLXRleHRBbGlnbj0iWydsZWZ0J10iIHN0eWxlPSJmb250LWZhbWlseTpQb3BwaW5zLCBzYW5zLXNlcmlmO2NvbG9yOiAjZmZmO2ZvbnQtd2VpZ2h0OiA0MDA7Ij5PdXIgdHJhZGluZyBlbmdpbmUgaXMgc3BlY2lhbGx5IGRlc2lnbmVkIHRvIGV4ZWN1dGUgb3ZlciAxMiwwMDAgb3JkZXJzIHBlciBzZWNvbmQuDQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgc2xpZGVyX2J1dHRvbiIgaWQ9InNsaWRlLTE1ODktbGF5ZXItNCIgZGF0YS14PSJbJ2xlZnQnXSIgZGF0YS1ob2Zmc2V0PSJbJzAnLCcwJywnMCcsJzAnXSIgZGF0YS15PSJbJ3RvcCcsJ3RvcCcsJ3RvcCcsJ3RvcCddIiBkYXRhLXZvZmZzZXQ9IlsnNTk1JywnNTg1JywnNTg1JywnNTIwJywnNDkwJ10iIGRhdGEtd2lkdGg9IlsnNjAwJ10iIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vd3JhcCIgZGF0YS10eXBlPSJ0ZXh0IiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS1mcmFtZXM9Ilt7JnF1b3Q7ZGVsYXkmcXVvdDs6MTAsJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDswJnF1b3Q7LCZxdW90O2Zyb20mcXVvdDs6JnF1b3Q7eTpbMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDowcHg7eTpbMTAwJV07czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7bzoxOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9LHsmcXVvdDtkZWxheSZxdW90OzomcXVvdDt3YWl0JnF1b3Q7LCZxdW90O3NwZWVkJnF1b3Q7OjE1MDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7OTk5JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O3k6WzE3NSVdOyZxdW90OywmcXVvdDttYXNrJnF1b3Q7OiZxdW90O3g6aW5oZXJpdDt5OmluaGVyaXQ7czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluT3V0JnF1b3Q7fV0iIGRhdGEtdGV4dEFsaWduPSJbJ2xlZnQnXSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ic2xpZGVyX2J0biB0aGVtZV9idG4iIGhyZWY9IkRhc2hib2FyZC9yZWdpc3RlciI+U3RhcnQgdHJhZGluZyBub3c8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9saT4NCg0KICAgICAgICAgICAgPGxpIGRhdGEtaW5kZXg9InJzLTE1ODkiIGRhdGEtdHJhbnNpdGlvbj0iem9vbWluIiBkYXRhLXNsb3RhbW91bnQ9IjciIGRhdGEtaGlkZWFmdGVybG9vcD0iMCIgZGF0YS1oaWRlc2xpZGVvbm1vYmlsZT0ib2ZmIiBkYXRhLWVhc2Vpbj0iUG93ZXI0LmVhc2VJbk91dCIgZGF0YS1lYXNlb3V0PSJQb3dlcjQuZWFzZUluT3V0IiBkYXRhLW1hc3RlcnNwZWVkPSIyMDAwIiBkYXRhLXRodW1iPSJpbWFnZS9zbGlkZXIvc2xpZGVyMi1iZy5qcGciIGRhdGEtcm90YXRlPSIwIiBkYXRhLXNhdmVwZXJmb3JtYW5jZT0ib2ZmIiBkYXRhLXRpdGxlPSJLZW4gQnVybnMiIGRhdGEtcGFyYW0xPSIiIGRhdGEtcGFyYW0yPSIiIGRhdGEtcGFyYW0zPSIiIGRhdGEtcGFyYW00PSIiIGRhdGEtcGFyYW01PSIiIGRhdGEtcGFyYW02PSIiIGRhdGEtcGFyYW03PSIiIGRhdGEtcGFyYW04PSIiIGRhdGEtcGFyYW05PSIiIGRhdGEtcGFyYW0xMD0iIiBkYXRhLWRlc2NyaXB0aW9uPSIiPg0KICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZS9zbGlkZXIvc2xpZGVyMi1iZy5qcGciIGFsdD0iIiBkYXRhLWJncG9zaXRpb249ImNlbnRlciBjZW50ZXIiIGRhdGEta2VuYnVybnM9Im9uIiBkYXRhLWR1cmF0aW9uPSIzMDAwMCIgZGF0YS1lYXNlPSJMaW5lYXIuZWFzZU5vbmUiIGRhdGEtc2NhbGVzdGFydD0iMTAwIiBkYXRhLXNjYWxlZW5kPSIxMjAiIGRhdGEtcm90YXRlc3RhcnQ9IjAiIGRhdGEtcm90YXRlZW5kPSIwIiBkYXRhLW9mZnNldHN0YXJ0PSIwIDAiIGRhdGEtb2Zmc2V0ZW5kPSIwIDAiIGRhdGEtYmdwYXJhbGxheD0iMTAiIGNsYXNzPSJyZXYtc2xpZGViZyIgZGF0YS1uby1yZXRpbmE+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiB0cC1sYXllci1zZWxlY3RhYmxlIHRwLXJlc2l6ZW1lIGNvaW5fc2xpZGVyX2ltZyIgZGF0YS14PSJbJ3JpZ2h0JywncmlnaHQnLCdyaWdodCcsJ3JpZ2h0J10iIGRhdGEtaG9mZnNldD0iWyctMjIwJywnLTE4MCddIiBkYXRhLXk9IlsnbWlkZGxlJywnbWlkZGxlJywndG9wJywndG9wJ10iIGRhdGEtdm9mZnNldD0iWyc0NScsJzQ1J10iIGRhdGEtd2lkdGg9Im5vbmUiIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vd3JhcCIgZGF0YS10eXBlPSJpbWFnZSIgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iIGRhdGEtZnJhbWVzPSJbeyZxdW90O2RlbGF5JnF1b3Q7OjEyMDAsJnF1b3Q7c3BlZWQmcXVvdDs6MTIwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDswJnF1b3Q7LCZxdW90O2Zyb20mcXVvdDs6JnF1b3Q7ejowO3JYOjA7clk6MDtyWjowO3NYOjAuOTtzWTowLjk7c2tYOjA7c2tZOjA7b3BhY2l0eTowOyZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvOjE7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIzLmVhc2VJbk91dCZxdW90O30seyZxdW90O2RlbGF5JnF1b3Q7OiZxdW90O3dhaXQmcXVvdDssJnF1b3Q7c3BlZWQmcXVvdDs6MTAwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDs5OTkmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7b3BhY2l0eTowOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW4mcXVvdDt9XSIgZGF0YS10ZXh0YWxpZ249IlsnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCddIiBkYXRhLXBhZGRpbmd0b3A9IlswLDAsMCwwXSIgZGF0YS1wYWRkaW5ncmlnaHQ9IlswLDAsMCwwXSIgZGF0YS1wYWRkaW5nYm90dG9tPSJbMCwwLDAsMF0iIGRhdGEtcGFkZGluZ2xlZnQ9IlswLDAsMCwwXSI+DQogICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZS9zbGlkZXIvc2xpZGVyLTIucG5nIiBhbHQ9IiIgZGF0YS13dz0iWyc4NTdweCcsJzY1MHB4JywnNjE0cHgnLCc2MTRweCddIiBkYXRhLWhoPSJbJzg1NHB4JywnNjUwcHgnLCc0NTBweCcsJzQ1MHB4J10iIHdpZHRoPSI4NTciIGhlaWdodD0iODU0IiBkYXRhLW5vLXJldGluYT0iIj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNsaWRlcl90ZXh0X2JveCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgZmlyc3RfdGV4dCIgZGF0YS14PSJbJ2xlZnQnLCdsZWZ0JywnbGVmdCddIiBkYXRhLWhvZmZzZXQ9IlsnMCcsJzAnLCcwJywnMCddIiBkYXRhLXk9IlsndG9wJywndG9wJywndG9wJywndG9wJ10iIGRhdGEtdm9mZnNldD0iWycyOTAnLCcyOTAnLCcyOTAnLCcyMzAnLDE3MF0iIGRhdGEtZm9udHNpemU9IlsnMjInXSIgZGF0YS1saW5laGVpZ2h0PSJbJzMwJ10iIGRhdGEtd2lkdGg9IlsnMjAwJ10iIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vd3JhcCIgZGF0YS10eXBlPSJ0ZXh0IiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS1mcmFtZXM9J1t7ImZyb20iOiJ5OlstMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDsiLCJtYXNrIjoieDowcHg7eTowcHg7Iiwic3BlZWQiOjE1MDAsInRvIjoibzoxOyIsImRlbGF5Ijo1NTAsImVhc2UiOiJQb3dlcjMuZWFzZUluT3V0In0seyJkZWxheSI6IndhaXQiLCJzcGVlZCI6MzAwLCJ0byI6Im9wYWNpdHk6MDsiLCJlYXNlIjoibm90aGluZyJ9XScgZGF0YS10ZXh0QWxpZ249IlsnbGVmdCcsJ2xlZnQnXSIgc3R5bGU9ImZvbnQtZmFtaWx5OkxvcmEsIHNlcmlmOyBmb250LXN0eWxlOiBpdGFsaWM7Y29sb3I6ICNmZmY7Zm9udC13ZWlnaHQ6IDQwMDsiPkZlYXR1cmVkIENvaW5zIDxzcGFuIGNsYXNzPSIiIHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiA4MHB4OyBoZWlnaHQ6IDFweDtiYWNrZ3JvdW5kOiAjZmZmOyI+PC9zcGFuPjwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgc2VjYW5kX3RleHQiIGRhdGEteD0iWydsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzMzNScsJzMzNScsJzMzNScsJzI3NScsJzIxNSddIiBkYXRhLWZvbnRzaXplPSJbJzU1JywnNDAnLCc0MCcsJzQwJywnMzInXSIgZGF0YS1saW5laGVpZ2h0PSJbJzYzJywnNTUnLCc1MCcsJzUwJywnNDAnXSIgZGF0YS13aWR0aD0iWyc3MDAnLCc3MDAnLCc3MDAnLCc0ODAnLCcyOTAnXSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm9ybWFsIiBkYXRhLXR5cGU9InRleHQiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLWZyYW1lcz0iW3smcXVvdDtkZWxheSZxdW90OzoxMCwmcXVvdDtzcGVlZCZxdW90OzoxNTAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90OzAmcXVvdDssJnF1b3Q7ZnJvbSZxdW90OzomcXVvdDt5OlstMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDsmcXVvdDssJnF1b3Q7bWFzayZxdW90OzomcXVvdDt4OjBweDt5OjBweDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvOjE7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbk91dCZxdW90O30seyZxdW90O2RlbGF5JnF1b3Q7OiZxdW90O3dhaXQmcXVvdDssJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDs5OTkmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7eTpbMTc1JV07JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDppbmhlcml0O3k6aW5oZXJpdDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9XSIgZGF0YS10ZXh0QWxpZ249IlsnbGVmdCddIiBzdHlsZT0iZm9udC1mYW1pbHk6UG9wcGlucywgc2Fucy1zZXJpZjtjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyI+VGhlIEZ1dHVyZSBvZiA8c3BhbiBzdHlsZT0iY29sb3I6ICMzN2FiNzUiPkZpbmFuY2luZzwvc3Bhbj4gaXMgY3J5cHRvY3VycmVuY3k8L2Rpdj4NCg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uIHRwLXJlc2l6ZW1lIHRoaXJkX3RleHQiIGRhdGEteD0iWydsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzQ5MCcsJzQ3MCcsJzQ3MCcsJzQyMCcsJzM2MCddIiBkYXRhLWZvbnRzaXplPSJbJzIyJywnMjInLCcyMicsJzIyJywnMTYnXSIgZGF0YS13aWR0aD0iWyc2NTAnLCc2NTAnLCc2NTAnLCc0NzAnLCcyOTAnXSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm9ybWFsIiBkYXRhLXR5cGU9InRleHQiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLXRyYW5zZm9ybV9pZGxlPSJvOjE7IiBkYXRhLWZyYW1lcz0iW3smcXVvdDtkZWxheSZxdW90OzoxMCwmcXVvdDtzcGVlZCZxdW90OzoxNTAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90OzAmcXVvdDssJnF1b3Q7ZnJvbSZxdW90OzomcXVvdDt5OlsxMDAlXTt6OjA7clg6MGRlZztyWTowO3JaOjA7c1g6MTtzWToxO3NrWDowO3NrWTowO29wYWNpdHk6MDsmcXVvdDssJnF1b3Q7bWFzayZxdW90OzomcXVvdDt4OjBweDt5OlsxMDAlXTtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvOjE7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbk91dCZxdW90O30seyZxdW90O2RlbGF5JnF1b3Q7OiZxdW90O3dhaXQmcXVvdDssJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDs5OTkmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7eTpbMTc1JV07JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDppbmhlcml0O3k6aW5oZXJpdDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9XSIgZGF0YS10ZXh0QWxpZ249IlsnbGVmdCddIiBzdHlsZT0iZm9udC1mYW1pbHk6UG9wcGlucywgc2Fucy1zZXJpZjtjb2xvcjogI2ZmZjtmb250LXdlaWdodDogNDAwOyI+VHJhZGUgQlRDLCBFVEgsIFhSUCwgTFRDLCBhbmQgRU9TIHdpdGggMTAweCBsZXZlcmFnZSBhbmQgdGhlIGxvd2VzdCBmZWVzDQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgc2xpZGVyX2J1dHRvbiIgZGF0YS14PSJbJ2xlZnQnXSIgZGF0YS1ob2Zmc2V0PSJbJzAnLCcwJywnMCcsJzAnXSIgZGF0YS15PSJbJ3RvcCcsJ3RvcCcsJ3RvcCcsJ3RvcCddIiBkYXRhLXZvZmZzZXQ9IlsnNTk1JywnNTg1JywnNTg1JywnNTIwJywnNDkwJ10iIGRhdGEtd2lkdGg9IlsnNjAwJ10iIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vd3JhcCIgZGF0YS10eXBlPSJ0ZXh0IiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS1mcmFtZXM9Ilt7JnF1b3Q7ZGVsYXkmcXVvdDs6MTAsJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDswJnF1b3Q7LCZxdW90O2Zyb20mcXVvdDs6JnF1b3Q7eTpbMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDowcHg7eTpbMTAwJV07czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7bzoxOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9LHsmcXVvdDtkZWxheSZxdW90OzomcXVvdDt3YWl0JnF1b3Q7LCZxdW90O3NwZWVkJnF1b3Q7OjE1MDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7OTk5JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O3k6WzE3NSVdOyZxdW90OywmcXVvdDttYXNrJnF1b3Q7OiZxdW90O3g6aW5oZXJpdDt5OmluaGVyaXQ7czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluT3V0JnF1b3Q7fV0iIGRhdGEtdGV4dEFsaWduPSJbJ2xlZnQnXSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ic2xpZGVyX2J0biB0aGVtZV9idG4iIGhyZWY9IkRhc2hib2FyZC9sb2dpbiI+U3RhcnQgdHJhZGluZyBub3c8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9saT4NCiAgICAgICAgPC91bD4NCiAgICA8L2Rpdj4NCjwvc2VjdGlvbj4NCjwhLS09PT09PT09PT09PT09PT09RW5kIFNsaWRlciBBcmVhID09PT09PT09PT09PT09PT09LS0+DQoNCg0KDQoNCg0KPHNlY3Rpb24gY2xhc3M9IiI+DQogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy0xMiBjb2wtbWQtMTIiPg0KICAgICAgICAgICAgICAgIDxzY3JpcHQgc3JjPSJhc3NldHMvY29pbmdlY2tvLWNvaW4tbGlzdC13aWRnZXQuanMiPjwvc2NyaXB0Pg0KICAgICAgICAgICAgICAgIDxjb2luZ2Vja28tY29pbi1saXN0LXdpZGdldCBjb2luLWlkcz0iYml0Y29pbixldGhlcmV1bSxlb3MscmlwcGxlLGxpdGVjb2luIiBjdXJyZW5jeT0idXNkIiBsb2NhbGU9ImVuIj48L2NvaW5nZWNrby1jb2luLWxpc3Qtd2lkZ2V0Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KPC9zZWN0aW9uPg0KDQoNCjwhLS09PT09PT09PT09PT09PT09IEFib3V0IEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCjxzZWN0aW9uIGNsYXNzPSIiIHN0eWxlPSJiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoIzhhOGZkNSwjMDA4MGRiLCNmZmYpO2NvbG9yOmJsYWNrIj4NCiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICA8YnI+PGJyPg0KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTYgY29sLW1kLTEyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhYm91dF9pbWciPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2UvbmV3L2Fib3V0X2xhcHRvcGEucG5nIiBhbHQ9IiI+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy02IGNvbC1tZC0xMiBkaXNwbGF5X2ZsZXgiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFib3V0X2NvbnRlbnQgZmxleCI+DQogICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0ibWJfMCIgc3R5bGU9ImNvbG9yOiMyNTM5NzgiPjxzdHJvbmc+QWJvdXQgU2Nyb01lZ2FUcmFkZTwvc3Ryb25nPjwvaDE+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9Im1iXzAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPSJmb250LWZhbWlseTpMb3JhO2NvbG9yOmJsYWNrIj4gU2Nyb01lZ2FUcmFkZSBpcyBhbiBhd2FyZCB3aW5uaW5nIEZvcmV4LCBDcnlwdG8gYW5kIENvbW1vZGl0aWVzIEJyb2tlciwgcHJvdmlkaW5nIHRyYWRpbmcgc2VydmljZXMgYW5kIGZhY2lsaXRpZXMgdG8gYm90aCByZXRhaWwgYW5kIGluc3RpdHV0aW9uYWwgY2xpZW50cy4gVGhyb3VnaCBpdHMgcG9saWN5IG9mIHByb3ZpZGluZyB0aGUgYmVzdCBwb3NzaWJsZSB0cmFkaW5nIGNvbmRpdGlvbnMgdG8gaXRzIGNsaWVudHMgYW5kIGFsbG93aW5nIGJvdGggc2NhbHBlcnMgYW5kIHRyYWRlcnMgdXNpbmcgZXhwZXJ0IGFkdmlzb3JzIHVucmVzdHJpY3RlZCBhY2Nlc3MgdG8gaXRzIGxpcXVpZGl0eSwgU2Nyb01lZ2FUcmFkZSBoYXMgcG9zaXRpb25lZCBpdHNlbGYgYXMgdGhlIGZvcmV4IGJyb2tlciBvZiBjaG9pY2UgZm9yIHRyYWRlcnMgd29ybGR3aWRlLiBBdCBTY3JvTWVnYVRyYWRlLCB3ZSdyZSBkZWRpY2F0ZWQgdG8gcHJvdmlkaW5nIG91ciBjbGllbnRzIHdpdGggdGhlIG1vc3QgYWR2YW5jZWQgYW5kIHBvd2VyZnVsIHRyYWRpbmcgdG9vbHMgaW4gYSB3aWRlIHJhbmdlIG9mIG1hcmtldHMNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRm9yIHRyYWRlcnMganVzdCBzdGFydGluZyBvdXQgb3Igc2Vhc29uZWQgdHJhZGVycyBhbHJlYWR5IGZhbWlsaWFyIHdpdGggdHJhZGluZywgd2Ugb2ZmZXIgdGhlIHJvYnVzdCBNZXRhVHJhZGVyIDQgYW5kIE1ldGFUcmFkZXIgNSBwbGF0Zm9ybXMgd2l0aCB0aGUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWR2YW50YWdlIG9mIG91ciBjb21wZXRpdGl2ZSBzcHJlYWRzIGFuZCBmaXJzdCBjbGFzcyBtdWx0aS1saW5ndWFsIHN1cHBvcnQuIFdlIGFsc28gYWxsb3cgZm9yIGZsZXhpYmxlIHRyYWRpbmcgb24gYSByYW5nZSBvZiBGb3JleCwgQ3J5cHRvIGFuZCBDRkRzDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGluZyBDcnlwdG9jdXJyZW5jaWVzLCBDb21tb2RpdGllcywgSW5kaWNlcyBhbmQgQmluYXJ5IE9wdGlvbnMgdGhyb3VnaCBNZXRhVHJhZGVyIDQgYW5kIE1ldGFUcmFkZXIgNTwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJEYXNoYm9hcmQvcmVnaXN0ZXIiIGNsYXNzPSJidG4gdGhlbWVfYnRuIHRoZW1lX2J0bl90d28iPkdldCBTdGFydGVkPC9hPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8YnI+PGJyPg0KICAgIDwvZGl2Pg0KPC9zZWN0aW9uPg0KPCEtLT09PT09PT09PT09PT09PT0gQWJvdXQgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KDQoNCjxzZWN0aW9uIGNsYXNzPSIiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctMTIgY29sLW1kLTEyIGRpc3BsYXlfZmxleCI+DQogICAgICAgICAgICAgICAgPGlmcmFtZSB3aWR0aD0iMTAwJSIgaGVpZ2h0PSI0MjAiIHNyYz0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvdFpPU1FCUDk0NlEiIGZyYW1lYm9yZGVyPSIxIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQoNCjwhLS09PT09PT09PT09PT09PT09IERlbW8gVHJhZGluZyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQo8c2VjdGlvbiBjbGFzcz0iIj4NCiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICA8YnI+DQogICAgICAgIDxicj4NCiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy04IGNvbC1tZC0xMiBkaXNwbGF5X2ZsZXgiPg0KICAgICAgICAgICAgICAgIDxzdHlsZT4NCiAgICAgICAgICAgICAgICAgICAgZGl2LnNjcm9sbG1lbnUgew0KICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsNCiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvOw0KICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMzUwcHg7DQogICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOw0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgZGl2LnNjcm9sbG1lbnUgYSB7DQogICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7DQogICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7DQogICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4Ow0KICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgZGl2LnNjcm9sbG1lbnUgYTpob3ZlciB7DQogICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3Ow0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgPC9zdHlsZT4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzY3JvbGxtZW51Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWJvdXRfY29udGVudCBmbGV4Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpZnJhbWUgc3JjPSJkZW1vLnBocCIgY2xhc3M9Im1pbmktcGxhdGZvcm0iIHdpZHRoPSI3MDRweCIgZnJhbWVCb3JkZXI9IjAiIGhlaWdodD0iMzM1cHgiPjwvaWZyYW1lPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTEyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhYm91dF9pbWciPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2UvdDRjLnBuZyIgYWx0PSIiPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KPC9zZWN0aW9uPg0KPCEtLT09PT09PT09PT09PT09PT0gQWJvdXQgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KDQoNCjwhLS09PT09PT09PT09PT09PT09IGN1cnJlbmN5IHByaWNlIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCjxzZWN0aW9uIGNsYXNzPSJjdXJyZW5jeV9wcmljZV9hcmVhIj4NCiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uX3RpdGxlIHRleHQtY2VudGVyIG1iXzYwIj4NCiAgICAgICAgICAgIDxoMiBjbGFzcz0ibWJfMCI+TGl2ZSBNYXJrZXQgRGF0YTwvaDI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYm90dG9tX2xpbmUiPjwvc3Bhbj4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMTIgY29sLXNtLTEyIGNvbC14cy0xMiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZnVsbCB0YWJsZS1yZXNwb25zaXZlIj4NCiAgICAgICAgICAgICAgICAgICAgPCEtLSBUcmFkaW5nVmlldyBXaWRnZXQgQkVHSU4gLS0+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRyYWRpbmd2aWV3LXdpZGdldC1jb250YWluZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz0idHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCI+PGEgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tL21hcmtldHMvIiByZWw9Im5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+PHNwYW4gY2xhc3M9ImJsdWUtdGV4dCI+RmluYW5jaWFsIE1hcmtldHM8L3NwYW4+PC9hPiBieSBUcmFkaW5nVmlldzwvZGl2PiAtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vczMudHJhZGluZ3ZpZXcuY29tL2V4dGVybmFsLWVtYmVkZGluZy9lbWJlZC13aWRnZXQtbWFya2V0LXF1b3Rlcy5qcyIgYXN5bmM+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid2lkdGgiOiAiMTAwJSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJoZWlnaHQiOiA0NTAsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzeW1ib2xzR3JvdXBzIjogW3sNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJJbmRpY2VzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JpZ2luYWxOYW1lIjogIkluZGljZXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzeW1ib2xzIjogW3sNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZPUkVYQ09NOlNQWFVTRCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheU5hbWUiOiAiUyZQIDUwMCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiRk9SRVhDT006TlNYVVNEIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJVUyAxMDAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZPUkVYQ09NOkRKSSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheU5hbWUiOiAiRG93IDMwIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJJTkRFWDpOS1kiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXlOYW1lIjogIk5pa2tlaSAyMjUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIklOREVYOkRFVTQwIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJEQVggSW5kZXgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZPUkVYQ09NOlVLWEdCUCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheU5hbWUiOiAiVUsgMTAwIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJGdXR1cmVzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JpZ2luYWxOYW1lIjogIkZ1dHVyZXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzeW1ib2xzIjogW3sNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkNNRV9NSU5JOkVTMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXlOYW1lIjogIlMmUCA1MDAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkNNRTo2RTEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJFdXJvIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJDT01FWDpHQzEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJHb2xkIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJOWU1FWDpDTDEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJDcnVkZSBPaWwiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIk5ZTUVYOk5HMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXlOYW1lIjogIk5hdHVyYWwgR2FzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJDQk9UOlpDMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXlOYW1lIjogIkNvcm4iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkJvbmRzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JpZ2luYWxOYW1lIjogIkJvbmRzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3ltYm9scyI6IFt7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJDTUU6R0UxISIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheU5hbWUiOiAiRXVyb2RvbGxhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiQ0JPVDpaQjEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJULUJvbmQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkNCT1Q6VUIxISIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheU5hbWUiOiAiVWx0cmEgVC1Cb25kIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJFVVJFWDpGR0JMMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXlOYW1lIjogIkV1cm8gQnVuZCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiRVVSRVg6RkJUUDEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJFdXJvIEJUUCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiRVVSRVg6RkdCTTEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJFdXJvIEJPQkwiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZvcmV4IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JpZ2luYWxOYW1lIjogIkZvcmV4IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3ltYm9scyI6IFt7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJGWDpFVVJVU0QiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZYOkdCUFVTRCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiRlg6VVNESlBZIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJGWDpVU0RDSEYiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZYOkFVRFVTRCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiRlg6VVNEQ0FEIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2hvd1N5bWJvbExvZ28iOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29sb3JUaGVtZSI6ICJsaWdodCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpc1RyYW5zcGFyZW50IjogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhbGUiOiAiZW4iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9zY3JpcHQ+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8IS0tIFRyYWRpbmdWaWV3IFdpZGdldCBFTkQgLS0+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQo8IS0tPT09PT09PT09PT09PT09PSBIb3cgd29yayBBcmVhID09PT09PT09PT09PT09PT09LS0+DQo8c2VjdGlvbiBjbGFzcz0iaG93X3dvcmtfYXJlYSI+DQogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbl90aXRsZSB0ZXh0LWNlbnRlciBtYl82MCI+DQogICAgICAgICAgICA8aDI+SG93IGl0IHdvcmtzPC9oMj4NCiAgICAgICAgICAgIDxwIGNsYXNzPSJ0aXRsZV9wIj4gPC9wPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJvdHRvbV9saW5lIj48L3NwYW4+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Indvcmtfc3RlcCB3b3JrX2ZpcnN0IHRleHQtY2VudGVyIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id29ya19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmbGF0aWNvbi1tb25leS00Ij48L2k+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8aDIgY2xhc3M9Im1iXzAiPlJlZ2lzdGVyPC9oMj4NCiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPlNpZ24gdXAgb24gUEMvTW9iaWxlIHdpdGggeW91ciBGaXJzdCBOYW1lLCBMYXN0IG5hbWUgLCBFbWFpbCAmYW1wOyBNb2JpbGUgTnVtYmVyLjwvcD4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Indvcmtfc3RlcCB3b3JrX21pZGRsZSB0ZXh0LWNlbnRlciI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndvcmtfaWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktNiI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJtYl8wIj5WZXJpZnkgJiBEZXBvc2l0PC9oMj4NCiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPnZlcmlmeSB3aXRoIENvdW50cnkgaXNzdWVkIGlkZW50aXR5IGNhcmQgYW5kIEFkZCBiaXRjb2lucyB0byB5b3VyIGFjY291bnQuIDwvcD4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Indvcmtfc3RlcCB0ZXh0LWNlbnRlciI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndvcmtfaWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktNSI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJtYl8wIj5Hcm93IFlvdXIgRnVuZCAmIFdpdGhkcmF3PC9oMj4NCiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPkVhcm4gcHJvZml0cywgRW50ZXIgeW91ciBiaXRjb2luIGFkZHJlc3MsIHNwZWNpZnkgdGhlIGFtb3VudCBhbmQgV2l0aGRyYXcuIDwvcD4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjwvc2VjdGlvbj4NCjwhLS09PT09PT09PT09PT09PT09IEhvdyB3b3JrIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCg0KPCEtLT09PT09PT09PT09PT09PT0gY3VycmVuY3kgcHJpY2UgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KDQo8IS0tPT09PT09PT09PT09PT09PSBTZWxsIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCjxzZWN0aW9uIGNsYXNzPSJidXlfc2VsbF9hcmVhIj4NCiAgICA8ZGl2IGNsYXNzPSJvdmVybGF5X2ltZyI+PC9kaXY+DQogICAgPGltZyBjbGFzcz0iY29pbl9pbWciIHNyYz0iaW1hZ2UvYm9keS1iZy1uZXcuanBnIiBhbHQ9ImNvaW4iPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNSBjb2wtbWQtNiB3b3cgZmFkZUluTGVmdCBhbmltYXRlZCI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VsbF9jb250ZW50Ij4NCiAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJ0aXRsZV9oMiBjX3doaXRlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJtYl8wIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPSJmb250LWZhbWlseTpMb3JhIj4gU3RhcnQgVHJhZGluZyBGb3JleA0KICAgICAgICAgICAgICAgICAgICA8L2gyPg0KICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9InRpdGxlX2g0IGNfd2hpdGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9ImZvbnQtZmFtaWx5OkxvcmEiPjxzdHJvbmc+MToxMDB4IDwvc3Ryb25nPiBBY2NvdW50IExpdmVyYWdlPC9wPg0KICAgICAgICAgICAgICAgICAgICA8L2g0Pg0KICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9InRpdGxlX2g0IGNfd2hpdGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9ImZvbnQtZmFtaWx5OkxvcmEiPkNvbGxhYm9yYXRlIHdpdGggYSBkZWRpY2F0ZWQgdHJhZGUgbWFuYWdlci9hZHZpc29yIHdobyB3aWxsIHdvcmsgd2l0aCB5b3UgYW5kIGZvciB5b3UsIHByb3ZpZGluZyBjbGVhciByZWNvbW1lbmRhdGlvbnMgZGVzaWduZWQgdG8gaGVscCB5b3UgZ3JvdyBhbmQgcHJvdGVjdCB5b3VyIHdlYWx0aC4gWW91IHdpbGwgc2lnbiB1cCBhIHRyYWRlIGFjY291bnQgaW4gdGhlIGJyb2tlcmFnZSBwbGF0Zm9ybSB1c2luZyB0aGUgZW5jcnlwdGVkIGxpbmsgcHJvdmlkZWQgYnkgdGhlIGFkdmlzb3IgYW5kIHlvdSBhbG9uZSB3aWxsIGhhdmUgZnVsbCBhY2Nlc3MgdG8geW91ciB0cmFkZSBhY2NvdW50IHNvIGFzIHRvIGluaXRpYXRlIHdpdGhkcmF3YWwgYW55dGltZS4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBZb3Ugd2lsbCBmdW5kIHlvdXIgdHJhZGUgYWNjb3VudCB3aXRoIHlvdXIgaW52ZXN0bWVudCBjYXBpdGFsIHdoaWNoIHdpbGwgZ2VuZXJhdGUgYSBmaXhlZCByZXR1cm4gd2hpY2ggZGVwZW5kcyBvbiB0aGUgc2lnbmFsIHN0cmVuZ3RoPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9ImJ0biB0aGVtZV9idG4gc3VibWl0X2J0biI+S25vdyBtb3JlPC9hPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNiBvZmZzZXQtbGctMSBjb2wtbWQtNiB3b3cgZmFkZUluUmlnaHQgYW5pbWF0ZWQiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImN1cnJlbmN5X2NhbGN1bGF0ZXIiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb252ZXJ0ZXIiIGlkPSJjb252ZXJ0ZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGg2IGlkPSJiaXRjb2luLWNvbS1wcmljZS1jb252ZXJ0ZXIiPiA8L2g2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGZpZWxkc2V0IGlkPSJjcnlwdG8tZmllbGRzZXQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJudW1iZXIiIG5hbWU9ImNyeXB0byIgcGxhY2Vob2xkZXI9IkVudGVyIEFtb3VudCIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBpZD0iY3J5cHRvLXNlbGVjdCI+PHNwYW4gY2xhc3M9Imdyb3VwIj48c3BhbiBjbGFzcz0ibGFiZWwiPkJUQzwvc3Bhbj48c3BhbiBjbGFzcz0iYXJyb3ciPjwvc3Bhbj48L3NwYW4+PC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9maWVsZHNldD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWVsZHNldCBpZD0iZmlhdC1maWVsZHNldCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9Im51bWJlciIgbmFtZT0iZmlhdCIgcGxhY2Vob2xkZXI9IkVudGVyIEFtb3VudCIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBpZD0iZmlhdC1zZWxlY3QiPjxzcGFuIGNsYXNzPSJncm91cCI+PHNwYW4gY2xhc3M9ImxhYmVsIj5VU0Q8L3NwYW4+PHNwYW4gY2xhc3M9ImFycm93Ij48L3NwYW4+PC9zcGFuPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmllbGRzZXQ+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2NleC5pby8iIGNsYXNzPSJ0aGVtZV9idG4iPkJ1eSBCaXRjb2luPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9wdXAiIGlkPSJjcnlwdG8tcG9wdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyBjdXJyZW50IiBkYXRhLXVuaXQ9ImIiPjxzcGFuIGNsYXNzPSJhYmJyIj5CVEM8L3NwYW4+PHNwYW4gY2xhc3M9ImxhYmVsIj5iaXRjb2luPC9zcGFuPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyIgZGF0YS11bml0PSJtIj48c3BhbiBjbGFzcz0iYWJiciI+bUJUQzwvc3Bhbj48c3BhbiBjbGFzcz0ibGFiZWwiPm1pbGxpYml0Y29pbjwvc3Bhbj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciIGRhdGEtdW5pdD0idSI+PHNwYW4gY2xhc3M9ImFiYnIiPsK1QlRDPC9zcGFuPjxzcGFuIGNsYXNzPSJsYWJlbCI+Yml0czwvc3Bhbj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciIGRhdGEtdW5pdD0icyI+PHNwYW4gY2xhc3M9ImFiYnIiPlNBVDwvc3Bhbj48c3BhbiBjbGFzcz0ibGFiZWwiPnNhdG9zaGk8L3NwYW4+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvcHVwIiBpZD0iZmlhdC1wb3B1cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIHBsYWNlaG9sZGVyPSJTZWFyY2ggQ3VycmVuY3kiIC8+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iZmlhdC1yb3dzIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjwvc2VjdGlvbj4NCjwhLS09PT09PT09PT09PT09PT09IFNlbGwgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiPg0KPHN0eWxlPg0KICAgICogew0KICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94Ow0KICAgIH0NCg0KICAgIC5jb2x1bW5zIHsNCiAgICAgICAgLyogcGFkZGluZzogMTBweCA1MHB4OyAqLw0KICAgICAgICBmbG9hdDogbGVmdDsNCiAgICAgICAgd2lkdGg6IDI1JTsNCiAgICAgICAgLyogd2lkdGg6IDMzLjMlOyAqLw0KICAgICAgICBwYWRkaW5nOiAxOHB4IDI1cHg7DQogICAgfQ0KDQogICAgLnByaWNlIHsNCiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lOw0KICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlOw0KICAgICAgICBtYXJnaW46IDA7DQogICAgICAgIHBhZGRpbmc6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC4zczsNCiAgICAgICAgdHJhbnNpdGlvbjogMC4zczsNCiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWFnZS90ZmYuanBnJyk7DQogICAgfQ0KDQogICAgLnByaWNlOmhvdmVyIHsNCiAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMTJweCAwIHJnYmEoMCwgMCwgMCwgMC4yKQ0KICAgIH0NCg0KICAgIC5wcmljZSAuaGVhZGVyIHsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzExMTsNCiAgICAgICAgY29sb3I6IHdoaXRlOw0KICAgICAgICBmb250LXNpemU6IDMwcHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsNCiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWFnZS90Zi5qcGcnKTsNCiAgICB9DQoNCiAgICAucHJpY2UgbGkgew0KICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTsNCiAgICAgICAgcGFkZGluZzogMjBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBjb2xvcjogIzAwMDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsNCiAgICB9DQoNCiAgICAucHJpY2UgLmdyZXkgew0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4MGRiOw0KICAgICAgICBmb250LXNpemU6IDIwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsNCiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWFnZS90ZmYuanBnJyk7DQogICAgfQ0KDQogICAgLmJ1dHRvbiB7DQogICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaW1hZ2UvdGYuanBnJyk7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsNCiAgICAgICAgYm9yZGVyOiBub25lOw0KICAgICAgICBjb2xvcjogd2hpdGU7DQogICAgICAgIHBhZGRpbmc6IDEwcHggMjVweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICB9DQoNCiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7DQogICAgICAgIC5jb2x1bW5zIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgbGkuYmxhY2sgew0KICAgICAgICBmb250LXNpemU6IDI2cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KICAgIH0NCjwvc3R5bGU+DQo8L2hlYWQ+DQoNCjxib2R5Pg0KICAgIDxCUj4NCiAgICA8cCBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6YmxhY2siPg0KICAgICAgICBQVVJDSEFTRSBOT1cuLi4NCiAgICA8L3A+DQogICAgPGgyIHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjpibGFjayI+T1VSIEFWQUlMQUJMRSBJTlZFU1RNRU5UIFBMQU5TPC9oMj4NCiAgICA8aHI+DQogICAgPGRpdiBjbGFzcz0iY29sdW1ucyI+DQogICAgICAgIDx1bCBjbGFzcz0icHJpY2UiPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSJibGFjayI+U3RhcnRlciBQbGFuPC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iaGVhZGVyIj4kNTAwLjAwPC9saT4NCiAgICAgICAgICAgIDxsaT5TaWduYWwgUHJvPC9saT4NCiAgICAgICAgICAgIDxsaT5TaWduYWwgQW5hbHlzaXM8L2xpPg0KICAgICAgICAgICAgPGxpPk1pbi5JbnZlc3RtZW50OiAkNTAwPC9saT4NCiAgICAgICAgICAgIDxsaT5NYXguSW52ZXN0bWVudDogJDksOTk5PC9saT4NCiAgICAgICAgICAgIDxsaT4yJSBSZWZlcnJhbCBCb251czwvbGk+DQogICAgICAgICAgICA8bGk+MjQvNyBDdXN0b21lciBDYXJlPC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iZ3JleSI+PGEgaHJlZj0iRGFzaGJvYXJkL2xvZ2luIiBjbGFzcz0iYnV0dG9uIj5HZXQgU3RhcnRlZDwvYT48L2xpPg0KICAgICAgICA8L3VsPg0KICAgIDwvZGl2Pg0KDQogICAgPGRpdiBjbGFzcz0iY29sdW1ucyI+DQogICAgICAgIDx1bCBjbGFzcz0icHJpY2UiPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSJibGFjayI+UHJlbWl1bSBQbGFuPC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iaGVhZGVyIj4kMTAsMDAwLjAwPC9saT4NCiAgICAgICAgICAgIDxsaT5TaWduYWwgUHJvPC9saT4NCiAgICAgICAgICAgIDxsaT5TaWduYWwgQW5hbHlzaXM8L2xpPg0KICAgICAgICAgICAgPGxpPk1pbi5JbnZlc3RtZW50OiAkMTAsMDAwPC9saT4NCiAgICAgICAgICAgIDxsaT5NYXguSW52ZXN0bWVudDogJDE5LDk5OTwvbGk+DQogICAgICAgICAgICA8bGk+Mi41JSBSZWZlcnJhbCBCb251czwvbGk+DQogICAgICAgICAgICA8bGk+MjQvNyBDdXN0b21lciBDYXJlPC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iZ3JleSI+PGEgaHJlZj0iRGFzaGJvYXJkL2xvZ2luIiBjbGFzcz0iYnV0dG9uIj5HZXQgU3RhcnRlZDwvYT48L2xpPg0KICAgICAgICA8L3VsPg0KICAgIDwvZGl2Pg0KDQogICAgPGRpdiBjbGFzcz0iY29sdW1ucyI+DQogICAgICAgIDx1bCBjbGFzcz0icHJpY2UiPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSJibGFjayI+U3RhbmRhcmQgUGxhbjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9ImhlYWRlciI+JDIwLDAwMC4wMDwvbGk+DQogICAgICAgICAgICA8bGk+U2lnbmFsIFBybzwvbGk+DQogICAgICAgICAgICA8bGk+U2lnbmFsIEFuYWx5c2lzPC9saT4NCiAgICAgICAgICAgIDxsaT5NaW4uSW52ZXN0bWVudDogJDIwLDAwMDwvbGk+DQogICAgICAgICAgICA8bGk+TWF4LkludmVzdG1lbnQ6ICQ0OSw5OTk8L2xpPg0KICAgICAgICAgICAgPGxpPjMlIFJlZmVycmFsIEJvbnVzPC9saT4NCiAgICAgICAgICAgIDxsaT4yNC83IEN1c3RvbWVyIENhcmU8L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSJncmV5Ij48YSBocmVmPSJEYXNoYm9hcmQvbG9naW4iIGNsYXNzPSJidXR0b24iPkdldCBTdGFydGVkPC9hPjwvbGk+DQogICAgICAgIDwvdWw+DQogICAgPC9kaXY+DQoNCiAgICA8ZGl2IGNsYXNzPSJjb2x1bW5zIj4NCiAgICAgICAgPHVsIGNsYXNzPSJwcmljZSI+DQogICAgICAgICAgICA8bGkgY2xhc3M9ImJsYWNrIj5WaXAgUGxhbjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9ImhlYWRlciI+JDUwLDAwMC4wMDwvbGk+DQogICAgICAgICAgICA8bGk+U2lnbmFsIFBybzwvbGk+DQogICAgICAgICAgICA8bGk+U2lnbmFsIEFuYWx5c2lzPC9saT4NCiAgICAgICAgICAgIDxsaT5NaW4uSW52ZXN0bWVudDogJDUwLDAwMDwvbGk+DQogICAgICAgICAgICA8bGk+TWF4LkludmVzdG1lbnQ6ICQ1MCwwMDAgQWJvdmU8L2xpPg0KICAgICAgICAgICAgPGxpPjQlIFJlZmVycmFsIEJvbnVzPC9saT4NCiAgICAgICAgICAgIDxsaT4yNC83IEN1c3RvbWVyIENhcmU8L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSJncmV5Ij48YSBocmVmPSJEYXNoYm9hcmQvbG9naW4iIGNsYXNzPSJidXR0b24iPkdldCBTdGFydGVkPC9hPjwvbGk+DQogICAgICAgIDwvdWw+DQogICAgPC9kaXY+DQogICAgPC9ib2R5Pg0KDQo8YnI+PGJyPg0KDQo8IS0tPT09PT09PT09PT09PT09PSBFeHBlcnRpc2VfYXJlYV90d28gPT09PT09PT09PT09PT09PT0tLT4NCjxzZWN0aW9uIGNsYXNzPSJleHBlcnRpc2VfYXJlYV90d28iPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb25fdGl0bGUgdGV4dC1jZW50ZXIgbWJfNjAiPg0KICAgICAgICAgICAgPGgyIGNsYXNzPSJtYl8wIHRpdGxlX2gyIj5Qcm9kdWN0czwvaDI+DQogICAgICAgICAgICA8cCBjbGFzcz0ibWJfMCB0aXRsZV9wIj5XZSBoYXZlIGFsc28gcmVmaW5lZCBvdXIgb2ZmZXJpbmcgYW5kIGludHJvZHVjZWQgcGxlbnR5IG9mIG5ldyBwcm9kdWN0cyBpbiBvdXIgYmlkIHRvIGNvbnRpbnVlIGdpdmluZyBvdXIgY3VzdG9tZXJzIHRoZSB1bHRpbWF0ZSBvbmxpbmUgdHJhZGluZyBleHBlcmllbmNlIGFuZCB0byBoZWxwIHRoZW0gb3B0aW1pemUgdGhlaXIgaW52ZXN0bWVudCBwb3J0Zm9saW8uIE5vdywgd2l0aCBvdXIgb25saW5lIG1hcmtldGVycyBhbmQgdHJhZGUgbWFuYWdlcnMgdXNpbmcgb3VyIGxvdyBjb3N0IGF1dG9tYXRlZCB0cmFkZSBzeXN0ZW0gd2hlcmUgeW91IGFyZSBndWFyYW50ZWVkIGEgZml4ZWQgcmV0dXJuIG9uIGEgd2Vla2x5IGJhc2lzPC9wPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJvdHRvbV9saW5lIj48L3NwYW4+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYgd293IGZhZGVJbkRvd24gYW5pbWF0ZWQiIGRhdGEtd293LWRlbGF5PSIwLjJzIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbV90d28gdGV4dC1jZW50ZXIiPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJpbWctZmx1aWQiIHNyYz0iaW1hZ2UvbmV3L2Fib3V0X2xhcHRvcC5wbmciIGFsdD0iIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXhwZXJ0aXNlX2NvbnRlbnQgdGV4dF90d28iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMz5Db21tb2RpdGllczwvaDM+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlNwZWN1bGF0ZSBvbiB0aGUgcHJpY2VzIG9mIGhpZ2ggcHJvZmlsZSBjb21tb2RpdGllcyBzdWNoIGFzIG9pbCBhbmQgZ29sZCwgYW5kIHByb2ZpdCBmcm9tIHRoZWlyIGdyb3d0aCx3aXRoIG9ubHkgYSBzbWFsbCBpbml0aWFsIGRlcG9zaXQ8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImV4cGVydGlzZV9jb250ZW50IGJvdHRvbV90ZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMz5Db21tb2RpdGllczwvaDM+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCBjb2wtbWQtNiB3b3cgZmFkZUluRG93biBhbmltYXRlZCIgZGF0YS13b3ctZGVsYXk9IjAuNHMiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImV4cGVydGlzZV9pdGVtX3R3byB0ZXh0LWNlbnRlciI+DQogICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImltZy1mbHVpZCIgc3JjPSJpbWFnZS9uZXcvZXhwZXJ0aXNlMi5qcGciIGFsdD0iIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXhwZXJ0aXNlX2NvbnRlbnQgdGV4dF90d28iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMz5Gb3JleDxicj4gPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+IEdvIGxvbmcgb3IgZ28gc2hvcnQgb24gMjUgRm9yZXggbWFqb3JzLiBUYWtlIGFkdmFudGFnZSBvZiBsZXZlcmFnZSB1cCB0byAxMDAweC4gVHJhZGUgZm9yZWlnbiBjdXJyZW5jaWVzIG9uIHRoZSBsYXJnZXN0IGFuZCBtb3N0IGxpcXVpZCBtYXJrZXQgaW4gdGhlIHdvcmxkLCBtaW5vciBhbmQgZXhvdGljIGN1cnJlbmN5IHBhaXJzIHdpdGggZWZmaWNpZW50IHNwcmVhZHMsIGRldGVybWluZSB0aGUgcHJvYmFiaWxpdGllcyBvZiBmdXR1cmUgcHJpY2UgZXZlbnRzIHdpdGggdGhlIG1vc3QgZHluYW1pYyBmaW5hbmNpYWwgaW5zdHJ1bWVudC4uLjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXhwZXJ0aXNlX2NvbnRlbnQgYm90dG9tX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzPkZvcmV4PGJyPiA8L2gzPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYgd293IGZhZGVJbkRvd24gYW5pbWF0ZWQiIGRhdGEtd293LWRlbGF5PSIwLjZzIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbV90d28gdGV4dC1jZW50ZXIiPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJpbWctZmx1aWQiIHNyYz0iaW1hZ2UvbmV3L2V4cGVydGlzZTMuanBnIiBhbHQ9IiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImV4cGVydGlzZV9jb250ZW50IHRleHRfdHdvIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDM+Q3J5cHRvY3VycmVuY2llczxicj4gPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VHJhZGUgQlRDLCBFVEgsIFhSUCwgTFRDLCBhbmQgRU9TIHdpdGggMTAweCBsZXZlcmFnZSBhbmQgdGhlIGxvd2VzdCBmZWVzLi4uPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfY29udGVudCBib3R0b21fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDM+Q3J5cHRvY3VycmVuY2llczxicj4gPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQo8IS0tPT09PT09PT09PT09PT09PSBFeHBlcnRpc2VfYXJlYV90d28gPT09PT09PT09PT09PT09PT0tLT4NCg0KPCEtLT09PT09PT09PT09PT09PT0gQWJvdXQgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KPHNlY3Rpb24gY2xhc3M9IiIgc3R5bGU9ImJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgjMjU0MGE1LCMyNTQwYTUsI2ZmZikiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNyBjb2wtbWQtMTIgZGlzcGxheV9mbGV4Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhYm91dF9jb250ZW50IGZsZXgiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwJTsgaGVpZ2h0OjMzNXB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkFGQUZBOyBvdmVyZmxvdzpoaWRkZW47IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IGJvcmRlcjogMXB4IHNvbGlkICM1NjY2N0Y7IGJvcmRlci1yYWRpdXM6IDRweDsgdGV4dC1hbGlnbjogcmlnaHQ7IGxpbmUtaGVpZ2h0OjE0cHg7IGJsb2NrLXNpemU6MzM1cHg7IGZvbnQtc2l6ZTogMTJweDsgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBub3JtYWw7IHRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IGJveC1zaGFkb3c6IGluc2V0IDAgLTIwcHggMCAwICM1NjY2N0Y7bWFyZ2luOiAwO3dpZHRoOiAxMDAlO3BhZGRpbmc6MXB4O3BhZGRpbmc6IDBweDsgbWFyZ2luOiAwcHg7Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9ImhlaWdodDozMTVweDsgcGFkZGluZzowcHg7IG1hcmdpbjowcHg7IHdpZHRoOiAxMDAlOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlmcmFtZSBzcmM9Imh0dHBzOi8vd2lkZ2V0LmNvaW5saWIuaW8vd2lkZ2V0P3R5cGU9Y29udmVydGVyJnRoZW1lPWxpZ2h0IiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIzMTBweCIgc2Nyb2xsaW5nPSJhdXRvIiBtYXJnaW53aWR0aD0iMCIgbWFyZ2luaGVpZ2h0PSIwIiBmcmFtZWJvcmRlcj0iMCIgYm9yZGVyPSIwIiBzdHlsZT0iYm9yZGVyOjA7bWFyZ2luOjA7cGFkZGluZzowOyI+PC9pZnJhbWU+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxoNSBzdHlsZT0iY29sb3I6YmxhY2siPkdldCBpbiB0b3VjaCB3aXRoIHRoZSBsaXZlIEN1cnJlbmN5IFByaWNlIGNvbnZlcnNpb248L2g1Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNSBjb2wtbWQtMTIiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFib3V0X2ltZyI+DQogICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZS90My5wbmciIGFsdD0iIj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjwvc2VjdGlvbj4NCjwhLS09PT09PT09PT09PT09PT09IEFib3V0IEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCg0KPCEtLT09PT09PT09PT09PT09PT0gU2VydmljZXMgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KPHNlY3Rpb24gY2xhc3M9InNlcnZpY2VfYXJlYSI+DQogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTEyIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb25fdGl0bGUgdGV4dC1jZW50ZXIgbWJfNjAiPg0KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ibWJfMCI+T3VyIFNlcnZpY2VzIDwvaDI+DQogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJvdHRvbV9saW5lIj48L3NwYW4+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyBtdF8zMCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCBjb2wtbWQtNiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXhwZXJ0aXNlX2l0ZW0gc2VydmljZV9pdGVtIHRleHQtY2VudGVyIiBzdHlsZT0iYm9yZGVyLXJhZGl1czozMHB4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImZsYXRpY29uLW1vbmV5Ij48L2k+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJ0aXRsZV9jb2xvciI+Q3J5cHRvY3VycmVuY2llcyAoQ29pbiBPZmZlcmluZyk8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDxwPlRyYWRlIEJUQywgRVRILCBYUlAsIExUQywgYW5kIEVPUyB3aXRoIDEwMHggbGV2ZXJhZ2UgYW5kIHRoZSBsb3dlc3QgZmVlcy5BY2Nlc3MgZ2xvYmFsIGNyeXB0b2N1cnJlbmN5IG1hcmtldHMgaW4gbWludXRlcywgdHJhZGluZyB0aGUgbW9zdCBwb3B1bGFyIGNyeXB0by1hc3NldHMgYW5kIHRva2VucyB1c2luZyB0aGUgbW9zdCByb2J1c3QgdG9vbHMgb25saW5lIHRvIGdlbmVyYXRlIHByb2ZpdCBhbmQgYnVpbGQgcmV2ZW51ZSBzdHJlYW1zLiA8L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbSBzZXJ2aWNlX2l0ZW0gdGV4dC1jZW50ZXIiIHN0eWxlPSJib3JkZXItcmFkaXVzOjMwcHgiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktMSI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGl0bGVfY29sb3IiPkluZGljZXM8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDxwPkFjY2VzcyB0aGUgbW9zdCBwb3B1bGFyIGluZGljZXMgc3VjaCBhcyBTJlA1MDAsIEZUU0UxMDAsIEpBUEFOLCBhbmQgbXVjaCBtb3JlLlRyYWRpbmcgc3RvY2sgaW5kZXggQ0ZEcyBvbiB1cCB0byA1MDB4IGxldmVyYWdlIGNhbiBiZSBhIHByb2ZpdGFibGUgam91cm5leSBmb3IgbmV3IGRheSB0cmFkZXJzIG9yIHByb2Zlc3Npb25hbHMgYWxpa2U8L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbSBzZXJ2aWNlX2l0ZW0gdGV4dC1jZW50ZXIiIHN0eWxlPSJib3JkZXItcmFkaXVzOjMwcHgiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktNCI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGl0bGVfY29sb3IiPkZvcmV4PC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8cD5HbyBsb25nIG9yIGdvIHNob3J0IG9uIDI1IEZvcmV4IG1ham9ycy4gVGFrZSBhZHZhbnRhZ2Ugb2YgbGV2ZXJhZ2UgdXAgdG8gMTAwMHguIFNjcm9NZWdhVHJhZGUgb2ZmZXJzIHRoZSB3b3JsZOKAmXMgbW9zdCBoaWdobHkgdHJhZGVkIGZvcmV4IGN1cnJlbmNpZXMsIGluY2x1ZGluZyBVU0QsIEdCUCwgSlBZLCBFVVIsIGFuZCBtYW55IG1vcmU8L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbSBzZXJ2aWNlX2l0ZW0gdGV4dC1jZW50ZXIiIHN0eWxlPSJib3JkZXItcmFkaXVzOjMwcHgiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktMyI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGl0bGVfY29sb3IiPkJpdGNvaW4gTWlubmluZzwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPHA+Qml0Y29pbiBtaW5pbmcgaXMgdGhlIHByb2Nlc3Mgb2YgYWRkaW5nIHRyYW5zYWN0aW9uIHJlY29yZHMgdG8gQml0Y29pbidzIHB1YmxpYyBsZWRnZXIgb2YgcGFzdCB0cmFuc2FjdGlvbnMgb3IgYmxvY2tjaGFpbi5QdXJjaGFzZSBBbnRNaW5lciBTNywgQW50TWluZXIgUzksICYgQXZhbG9uNiBhbmQgc3RhcnQgYWRkaW5nIHRyYW5zYWN0aW9ucyB0byB5b3VyIEJsb2NrY2hhaW48L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbSBzZXJ2aWNlX2l0ZW0gdGV4dC1jZW50ZXIiIHN0eWxlPSJib3JkZXItcmFkaXVzOjMwcHgiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktOCI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGl0bGVfY29sb3IiPkNyeXB0b2N1cnJlbmN5IEludmVzdGluZzwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPHA+Q3J5cHRvY3VycmVuY2llcyBzdWNoIGFzIEJpdGNvaW4gYXJlIGRpZ2l0YWwgY3VycmVuY2llcyBjYW4gYmUgaW52ZXN0ZWQgb24gd2l0aCBhIHdlZWtseSBvciBtb250aGx5IGVhcm5pbmcgYnkgcGVyY2VudGFnZS48L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbSBzZXJ2aWNlX2l0ZW0gdGV4dC1jZW50ZXIiIHN0eWxlPSJib3JkZXItcmFkaXVzOjMwcHgiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktMiI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGl0bGVfY29sb3IiPkNvbW1vZGl0aWVzPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8cD5TcGVjdWxhdGUgb24gdGhlIHByaWNlcyBvZiBoaWdoIHByb2ZpbGUgY29tbW9kaXRpZXMgc3VjaCBhcyBvaWwgYW5kIGdvbGQsIGFuZCBwcm9maXQgZnJvbSB0aGVpciBncm93dGguQ29tbW9kaXRpZXMgaGF2ZSBiZWVuIHRyYWRlZCB0aHJvdWdob3V0IGhpc3RvcnksIGFuZCBoYXZlIGJlY29tZSBhbW9uZyB0aGUgbW9zdCBleGNpdGluZyBhbmQgcHJvZml0YWJsZSBtYXJrZXRzIHRvIHRyYWRlLiBHYWluaW5nIGV4cG9zdXJlIHRvIHZhcmlvdXMgY29tbW9kaXRpZXMgY2FuIGhlbHAgaW5kaXZpZHVhbHMgZ3JvdyB0aGVpciBjYXBpdGFsIHF1aWNrbHkgYW5kIHNhZmVseS48L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQo8IS0tPT09PT09PT09PT09PT09PSBTZXJ2aWNlcyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQoNCg0KDQo8IS0tPT09PT09PT09PT09PT09PSB0ZXN0aW1vbmlhbCBBcmVhID09PT09PT09PT09PT09PT09LS0+DQo8c2VjdGlvbiBjbGFzcz0idGVzdGltb25pYWxfYXJlYSI+DQogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbl90aXRsZSBzZWNfY193aGl0ZSB0ZXh0LWNlbnRlciBtYl82MCI+DQogICAgICAgICAgICA8aDIgY2xhc3M9Im1iXzAiPldoYXQgb3VyIGN1c3RvbWVycyBzYXlzPC9oMj4NCiAgICAgICAgICAgIDxwIGNsYXNzPSJtYl8wIj5UaG91c2FuZHMgb2YgcGVvcGxlIGdldCBiZW5lZml0PC9wPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJvdHRvbV9saW5lIHdfNTAiPjwvc3Bhbj4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9InRlc3RpbW9uaWFsX3NsaWRlciBvd2wtY2Fyb3VzZWwiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGVzdGltb25pYWxfaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgd2lkdGg9IjEwJSIgY2xhc3M9ImNsaWVudHNfaW1nIiBzcmM9ImltYWdlL2Zhdi5wbmciIGFsdD0iY2xpZW50cyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImltYWdlL25ldy9xdW90ZS5wbmciIGFsdD0icXVvdGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1ib2R5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCZW5zb24gTW1ybyAgICAgICAgICAgICAgICAgICAgICAgIDwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJIGdvdCBteSBpbnZlc3RtZW50IHJpZ2h0IG9uIHRpbWUgd2lsbCBiZSBpbnZlc3RpbmcgbW9yZSBuZXh0IHRpbWUgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXN0aW1vbmlhbF9pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhLWxlZnQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyB3aWR0aD0iMTAlIiBjbGFzcz0iY2xpZW50c19pbWciIHNyYz0iaW1hZ2UvZmF2LnBuZyIgYWx0PSJjbGllbnRzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InF1b3RlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2UvbmV3L3F1b3RlLnBuZyIgYWx0PSJxdW90ZSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhLWJvZHkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGg0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1hcmlhIGFtb3IgICAgICAgICAgICAgICAgICAgICAgICA8L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSSBqdXN0IGdvdCBteSBwcm9maXQgSSB3aWxsIGludml0ZSBtb3JlIGZyaWVuZHMgYW5kIGZhbWlseSAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXN0aW1vbmlhbF9pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhLWxlZnQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyB3aWR0aD0iMTAlIiBjbGFzcz0iY2xpZW50c19pbWciIHNyYz0iaW1hZ2UvZmF2LnBuZyIgYWx0PSJjbGllbnRzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InF1b3RlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2UvbmV3L3F1b3RlLnBuZyIgYWx0PSJxdW90ZSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhLWJvZHkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGg0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEhhcnJpc29uIEtlbHZpbiAgICAgICAgICAgICAgICAgICAgICAgICA8L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgJDYsMjAwIHdpdGhkcmF3IHN1Y2Nlc3NmdWwgbmljZSBUcmFkaW5nIGluIHRoaXMgcGxhdGZvcm0gICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGVzdGltb25pYWxfaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgd2lkdGg9IjEwJSIgY2xhc3M9ImNsaWVudHNfaW1nIiBzcmM9ImltYWdlL2Zhdi5wbmciIGFsdD0iY2xpZW50cyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImltYWdlL25ldy9xdW90ZS5wbmciIGFsdD0icXVvdGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1ib2R5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBMdWN5IEphbWVzICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaGFua3MgdG8gdGhpcyBwbGF0Zm9ybSB3aXRoZHJhd2FsIGlzIHN1Y2Nlc3NmdWwgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGVzdGltb25pYWxfaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgd2lkdGg9IjEwJSIgY2xhc3M9ImNsaWVudHNfaW1nIiBzcmM9ImltYWdlL2Zhdi5wbmciIGFsdD0iY2xpZW50cyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImltYWdlL25ldy9xdW90ZS5wbmciIGFsdD0icXVvdGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1ib2R5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBMdWNreSBPbGl2ZSAgICAgICAgICAgICAgICAgICAgICAgICA8L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW0gc28gaGFwcHkgaW52ZXN0aW5nIHdpdGggeW91ciBwbGF0Zm9ybSAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KPC9zZWN0aW9uPg0KPCEtLT09PT09PT09PT09PT09PT0gTGF0ZXN0IEJsb2cgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KDQoNCg0KPCEtLT09PT09PT09PT09PT09PT0gdGVzdGltb25pYWwgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KPHNlY3Rpb24gY2xhc3M9ImdldF9tb3JlX2FyZWEiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyBnZXRfbW9yZSBnZXRfbW9yZV90d28iPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTkiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIj4NCiAgICAgICAgICAgICAgICAgICAgPGgyPlN0YXJ0IHRyYWRpbmcgPGJyPmluIG9ubHkgNCBzdGVwczwvaDI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhLWJvZHkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPlNpZ251cCwgRGVwb3NpdCBCaXRjb2luIG9yIHVzZSBhbiBhbHRlcm5hdGl2ZSBtZXRob2QgdG8gZnVuZCB5b3VyIHBlcnNvbmFsIGFjY291bnQsIFN0YXJ0IEVhcm5pbmcgYW5kIFdpdGhkcmF3PC9wPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTMgb2Zmc2V0LWxnLTAgY29sLW1kLTggb2Zmc2V0LW1kLTQgdGV4dC1yaWdodCI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iRGFzaGJvYXJkL3JlZ2lzdGVyIiBjbGFzcz0iYnRuIHRoZW1lX2J0biI+R2V0IHN0YXJ0ZWQ8L2E+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQo8IS0tPT09PT09PT09PT09PT09PSBMYXRlc3QgQmxvZyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQoNCg0KPHNlY3Rpb24+DQoNCiAgICAgICAgICAgIDxpZnJhbWUgc3JjPSJodHRwczovL3d3dy5nb29nbGUuY29tL21hcHMvZW1iZWQ/cGI9ITFtMTghMW0xMiExbTMhMWQyNjM1OTgzMi44NDI4NDkwNCEyZC0xMTMuNzI3OTUzODI2MTExNTkhM2QzNi4yNDU0OTI4NzE0MDkwNTYhMm0zITFmMCEyZjAhM2YwITNtMiExaTEwMjQhMmk3NjghNGYxMy4xITNtMyExbTIhMXMweDU0ZWFiNTg0ZTQzMjM2MGIlM0EweDFjM2JiOTkyNDNkZWI3NDIhMnNVbml0ZWQlMjBTdGF0ZXMhNWUwITNtMiExc2VuITJzbmwhNHYxNjM5NzM4NTE1MTgyITVtMiExc2VuITJzbmwiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjMwMCIgc3R5bGU9ImJvcmRlcjowOyIgYWxsb3dmdWxsc2NyZWVuPSIiIGxvYWRpbmc9ImxhenkiPjwvaWZyYW1lPg0KICAgIDwvc2VjdGlvbj4NCg0KDQo8IS0tPT09PT09PT09PT09PT09PSBMYXRlc3QgQmxvZyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQo8c2VjdGlvbiBjbGFzcz0ibGF0ZXN0X2Jsb2dfYXJlYSI+DQogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgICAgPGRpdiBjbGFzcz0ibHRfdGl0bGVfaW5mbyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uX3RpdGxlX3RocmVlIGZsb2F0LWxlZnQiPg0KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ibWJfMCI+TGF0ZXN0IE5ld3M8L2gyPg0KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJtYl8wIj4gPC9wPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbG9hdC1yaWdodCI+DQoNCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsdF9ibG9nX2l0ZW0gaW1hZ2VfYmxvZyI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImJsb2ctZGV0YWlscy5odG1sIj48aW1nIHNyYz0iaW1hZ2UvbGF0ZXN0LWJsb2cvYmxvZy5qcGciIGFsdD0iIj48L2E+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImltZ19ibG9nX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPSJtYl8wIj5TY3JvTWVnYVRyYWRlIEhRPC9oNT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibWJfMCI+U2Nyb01lZ2FUcmFkZSBwcm9mZXNzaW9uYWwgdHJhZGVycyBzdXByaXNlcyBldmVyeW9uZSB3aXRoIHRoZSBtYXNzaXZlIHByb2ZpdCBmcm9tIGJpdGNvaW46IHRoZSBDRU8gb3JkZXJzIHJlbGVhc2Ugb2YgMTAlIGJvbnVzIHRvIGN1c3RvbWVycy48L2gzPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imx0X2Jsb2dfaXRlbSI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImJsb2ctZGV0YWlscy5odG1sIj48aW1nIHNyYz0iaW1hZ2UvbGF0ZXN0LWJsb2cvYmxvZzIuanBnIiBhbHQ9IiI+PC9hPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsdF9jb250ZW50Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0ibWJfMCI+T2N0IDE1LCAyMDE5PC9oNT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibWJfMCI+U0VDIGF3YXJkcyBTY3JvTWVnYVRyYWRlIGFzIG9uZSBvZiB0aGUgYmVzdCBUcmFkaW5nIHBsYXRmb3JtIG9mIDIwMTkgd2l0aCAyNDcgc3VwcG9ydC4uPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYXRlc3RfbmV3cyI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNob21lIj5UYXBwZWQgaW50byB0aGUgd29ybGQncyBtYXJrZXRzIGFuZCBleHBsb3JlZCBlbmRsZXNzIHRyYWRpbmcNCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNob21lIj5vcHBvcnR1bml0aWVzIHdpdGggdGhlIHdvcmxkJ3MgYmVzdCBicm9rZXIgLSBhbGwgd2l0aCB0aWdodCBzcHJlYWRzIDwvYT4gPC9hPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjaG9tZSI+TmFub3RlY2hub2xvZ3kgaW1tZXJzaW9uIGFsb25nIHRoZSBpbmZvcm1hdGlvbiBoaWdod2F5IHdpbGwgY2xvc2UgdGhlIGxvb3A8L2E+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQo8IS0tPT09PT09PT09PT09PT09PSBMYXRlc3QgQmxvZyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQoNCjwhLS09PT09PT09PT09PT09PT09IGNsaWVudHMgbG9nbyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQo8c2VjdGlvbiBjbGFzcz0iY2xpZW50c19sb2dvX2FyZWEiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9ImNsaWVudHNfc2xpZGVyIG93bC1jYXJvdXNlbCBub19iciI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJpdGVtIj4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj48aW1nIHNyYz0iaW1hZ2UvY2xpZW50cy1sb2cvbG9nbzcucG5nIiBhbHQ9IiI+PC9hPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJpdGVtIj4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj48aW1nIHNyYz0iaW1hZ2UvY2xpZW50cy1sb2cvbG9nbzEwLnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ283LnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ284LnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ281LnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ282LnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ28xLnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ28yLnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBjbGFzcz0iZ2V0X21vcmUgYmdfd2hpdGUiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctOCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZS9sYXRlc3QtYmxvZy9pY29uLnBuZyIgYWx0PSIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEtYm9keSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJtYl8wIj5XYW50IHRvIGdldCBtb3JlIGRldGFpbHMgPzwvaDI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPlJlYWQgb3VyIHdoaXRlcGFwZXJzIG9yIHZpc2l0IG91ciA8YSBocmVmPSIjIj5ibG9nPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCB0ZXh0LWNlbnRlciI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJyZWFkX2J0biI+UmVhZCB0aGUgd2hpdGVwYXBlcjwvYT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KPC9zZWN0aW9uPg0KPCEtLT09PT09PT09PT09PT09PT0gY2xpZW50cyBsb2dvIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCjwhLS0gQ09OVEVOVCBFTkQgLS0+DQoNCiAgPCEtLT09PT09PT09PT09PT09PT0gRm9vdGVyIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCg0KICA8Zm9vdGVyIGNsYXNzPSJmb290ZXJfYXJlYSI+DQogICAgICA8ZGl2IGNsYXNzPSJmb290ZXJfd2lkZ2V0Ij4NCiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTMgY29sLW1kLTYgY29sLXNtLTYiPg0KICAgICAgICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0iZl93aWRnZXQgYWJvdXRfd2lkZ2V0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaG9tZSIgY2xhc3M9ImZfbG9nbyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2UvbG9nb19oZWFkZXIrZGFyay5wbmciIGFsdD0iIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3aWRnZXRfaW5uZXIgcm93IG0wIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJtYl8wIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTY3JvTWVnYVRyYWRlIGlzIGFuIGF3YXJkIHdpbm5pbmcgRm9yZXgsIENyeXB0byBhbmQgQ29tbW9kaXRpZXMgQnJva2VyLCBwcm92aWRpbmcgdHJhZGluZyBzZXJ2aWNlcyBhbmQgZmFjaWxpdGllcyB0byBib3RoIHJldGFpbCBhbmQgaW5zdGl0dXRpb25hbCBjbGllbnRzLCBsaWNlbnNlZCBhcyBhIENhdGVnb3J5IDMgSW52ZXN0bWVudCBTZXJ2aWNlIHByb3ZpZGVyIGJ5IHRoZSBGaW5hbmNpYWwgU2VydmljZXMgQXV0aG9yaXR5LjwvcD4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0ibWFpbHRvOnN1cHBvcnRAc2Nyb21lZ2F0cmFkZS5jb20iIGNsYXNzPSJlbWFpbCI+c3VwcG9ydEBzY3JvbWVnYXRyYWRlLmNvbTwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgPC9hc2lkZT4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTIgY29sLW1kLTYgY29sLXNtLTYiPg0KICAgICAgICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0iZl93aWRnZXQgbGlua193aWRnZXQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFib3V0IFVzDQogICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Imxpc3Rfc3R5bGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImFib3V0Ij5PdXIgQ29tcGFueTwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImZvcmV4Ij5Gb3JleDwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImNvbW1vZGl0aWVzIj5Db21tb2RpdGllczwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImNyeXB0byI+Q3J5cHRvPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iY29udGFjdCI+Q29udGFjdCBVczwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgIDwvYXNpZGU+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy0zIGNvbC1zbS02Ij4NCiAgICAgICAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9ImZfd2lkZ2V0IGxpbmtfd2lkZ2V0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZl90aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXaGVyZSB0byBidXkgQml0Y29pbg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJsaXN0X3N0eWxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL2x1bm8uY29tLyI+THVubzwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vbG9jYWxiaXRjb2lucy5jb20vIj5Mb2NhbEJpdGNvaW48L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3BheGZ1bC5jb20vIj5QYXhmdWw8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3JlbWl0YW5vLmNvbS8iPlJlbWl0YW5vPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgICAgICAgPC9hc2lkZT4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLXNtLTYiPg0KICAgICAgICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0iZl93aWRnZXQgbmV3c193aWRnZXQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5ld3NsZXR0ZXINCiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0ibWJfMCI+R2V0IGxhdGVzdCB1cGRhdGVzIGFuZCBvZmZlcnMuPC9oNT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGZvcm0gY2xhc3M9Im1haWxjaGltcCIgYWN0aW9uPSIiIG1ldGhvZD0icG9zdCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCBzdWJzY3JpYl9mb3JtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iZW1haWwiIG5hbWU9ImVtYWlsIiBjbGFzcz0iZm9ybS1jb250cm9sIG1lbWFpbCIgcGxhY2Vob2xkZXI9IkVudGVyIHlvdXIgZW1haWwiIHJlcXVpcmVkPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpbnB1dC1ncm91cC1idG4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQgc3VibWl0X2J0bl9iIiBuYW1lPSJzdWJzY3JpYmUiIHR5cGU9InN1Ym1pdCI+PGkgY2xhc3M9ImZhIGZhLXBhcGVyLXBsYW5lIj48L2k+PC9idXR0b24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwvZm9ybT4NCg0KICAgICAgICAgICAgICAgICAgICAgIDwvYXNpZGU+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgPC9kaXY+DQogICAgICA8L2Rpdj4NCiAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9jb3B5cmlnaHQgdGV4dC1jZW50ZXIiPg0KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICAgIDxwIGNsYXNzPSJtYl8wIj7CqSBDb3B5cmlnaHQgU2Nyb01lZ2FUcmFkZSAyMDI1IC4gQWxsIHJpZ2h0IHJlc2VydmVkLjwvcD4NCiAgICAgICAgICA8L2Rpdj4NCiAgICAgIDwvZGl2Pg0KDQogICAgICA8ZGl2IGNsYXNzPSJiaXRjb2luX2N1cnJlbmN5X3dpZGdldCIgb25jbGljaz0icmV0dXJuIGZhbHNlIj4NCiAgICAgICAgICA8IS0tIGlkPSJ0aWNrZXIiIC0tPg0KICAgICAgICAgIDxzY3JpcHQgc3JjPSJodHRwczovL3dpZGdldHMuY29pbmdlY2tvLmNvbS9jb2luZ2Vja28tY29pbi1wcmljZS1tYXJxdWVlLXdpZGdldC5qcyI+PC9zY3JpcHQ+DQogICAgICAgICAgPGNvaW5nZWNrby1jb2luLXByaWNlLW1hcnF1ZWUtd2lkZ2V0IGNvaW4taWRzPSJiaXRjb2luLGVvcyxldGhlcmV1bSxsaXRlY29pbixyaXBwbGUsdXNkdGV6IiBjdXJyZW5jeT0idXNkIiBiYWNrZ3JvdW5kLWNvbG9yPSIjZmZmZmZmIiBsb2NhbGU9ImVuIj48L2NvaW5nZWNrby1jb2luLXByaWNlLW1hcnF1ZWUtd2lkZ2V0Pg0KICAgICAgPC9kaXY+DQogIDwvZm9vdGVyPg0KDQogIDwhLS09PT09PT09PT09PT09PT09IEZvb3RlciBBcmVhID09PT09PT09PT09PT09PT09LS0+DQoNCiAgPCEtLSBPcHRpb25hbCBKYXZhU2NyaXB0IC0tPg0KICA8IS0tIGpRdWVyeSBmaXJzdCwgdGhlbiBQb3BwZXIuanMsIHRoZW4gQm9vdHN0cmFwIEpTIC0tPg0KICA8c2NyaXB0IHNyYz0ianMvanF1ZXJ5LTMuMi4xLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJqcy9wb3BwZXIuanMiPjwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0ianMvYm9vdHN0cmFwLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL293bC1jYXJvdXNlbC9vd2wuY2Fyb3VzZWwubWluLmpzIj48L3NjcmlwdD4NCiAgPCEtLSA8c2NyaXB0IHNyYz0idmVuZG9ycy9qcWVyeS1uaWNlLXNlbGVjdG9yL2pzL2pxdWVyeS5uaWNlLXNlbGVjdC5qcyI+PC9zY3JpcHQ+IC0tPg0KICA8c2NyaXB0IHNyYz0idmVuZG9ycy9tYWduaWZ5LXBvcHVwL2pxdWVyeS5tYWduaWZpYy1wb3B1cC5taW4uanMiPjwvc2NyaXB0Pg0KICA8IS0tIFJldiBzbGlkZXIganMgLS0+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL3Jldm9sdXRpb24vanMvanF1ZXJ5LnRoZW1lcHVuY2gudG9vbHMubWluLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdCBzcmM9InZlbmRvcnMvcmV2b2x1dGlvbi9qcy9qcXVlcnkudGhlbWVwdW5jaC5yZXZvbHV0aW9uLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL3Jldm9sdXRpb24vcGFydGljbGVzL2pzL3Jldm9sdXRpb24uYWRkb24ucGFydGljbGVzLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL3Jldm9sdXRpb24vanMvZXh0ZW5zaW9ucy9yZXZvbHV0aW9uLmV4dGVuc2lvbi5hY3Rpb25zLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL3Jldm9sdXRpb24vanMvZXh0ZW5zaW9ucy9yZXZvbHV0aW9uLmV4dGVuc2lvbi52aWRlby5taW4uanMiPjwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0idmVuZG9ycy9yZXZvbHV0aW9uL2pzL2V4dGVuc2lvbnMvcmV2b2x1dGlvbi5leHRlbnNpb24uc2xpZGVhbmltcy5taW4uanMiPjwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0idmVuZG9ycy9yZXZvbHV0aW9uL2pzL2V4dGVuc2lvbnMvcmV2b2x1dGlvbi5leHRlbnNpb24ubGF5ZXJhbmltYXRpb24ubWluLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdCBzcmM9InZlbmRvcnMvcmV2b2x1dGlvbi9qcy9leHRlbnNpb25zL3Jldm9sdXRpb24uZXh0ZW5zaW9uLm5hdmlnYXRpb24ubWluLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdCBzcmM9InZlbmRvcnMvcmV2b2x1dGlvbi9qcy9leHRlbnNpb25zL3Jldm9sdXRpb24uZXh0ZW5zaW9uLmtlbmJ1cm4ubWluLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdCBzcmM9InZlbmRvcnMvcmV2b2x1dGlvbi9qcy9leHRlbnNpb25zL3Jldm9sdXRpb24uZXh0ZW5zaW9uLnBhcmFsbGF4Lm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL2NvbnZlcnRlci1qcy9mdXNlLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL2NvbnZlcnRlci1qcy9zdHJlYW0uanMiPjwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0idmVuZG9ycy9jb252ZXJ0ZXItanMvY29udmVydGVyLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdCBzcmM9ImpzL21hcnF1ZWUuanMiPjwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0ianMvY3VzdG9tLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdD4NCiAgICAgIHZhciB0cGogPSBqUXVlcnk7DQogICAgICB2YXIgcmV2YXBpODsNCiAgICAgIHRwaihkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKSB7DQogICAgICAgICAgaWYgKHRwaigiI3Jldl9zbGlkZXJfOF8xIikucmV2b2x1dGlvbiA9PSB1bmRlZmluZWQpIHsNCiAgICAgICAgICAgICAgcmV2c2xpZGVyX3Nob3dEb3VibGVKcXVlcnlFcnJvcigiI3Jldl9zbGlkZXJfOF8xIik7DQogICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgcmV2YXBpOCA9IHRwaigiI3Jldl9zbGlkZXJfOF8xIikuc2hvdygpLnJldm9sdXRpb24oew0KICAgICAgICAgICAgICAgICAgc2xpZGVyVHlwZTogInN0YW5kYXJkIiwNCiAgICAgICAgICAgICAgICAgIHNsaWRlckxheW91dDogImZ1bGx3aWR0aCIsDQogICAgICAgICAgICAgICAgICBkaXNhYmxlUHJvZ3Jlc3NCYXI6ICJvbiIsDQogICAgICAgICAgICAgICAgICBkb3R0ZWRPdmVybGF5OiAibm9uZSIsDQogICAgICAgICAgICAgICAgICBkZWxheTogNTAwMCwNCiAgICAgICAgICAgICAgICAgIHBhcnRpY2xlczogew0KICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0U2xpZGU6ICJmaXJzdCIsDQogICAgICAgICAgICAgICAgICAgICAgZW5kU2xpZGU6ICJsYXN0IiwNCiAgICAgICAgICAgICAgICAgICAgICB6SW5kZXg6ICIwIiwNCiAgICAgICAgICAgICAgICAgICAgICBwYXJ0aWNsZXM6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtYmVyOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogMjUwDQogICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogIiM1ZTVmNzEiDQogICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgIHNoYXBlOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAiY2lyY2xlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAiIzM0NDQ4MCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjOiAiIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogMC4yLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFuZG9tOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbjogMC4yNSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW06IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmFibGU6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwZWVkOiAxLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHlfbWluOiAwLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bmM6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiAyLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFuZG9tOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluOiAwLjIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGVlZDogMjAsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV9taW46IDIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3luYzogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZV9saW5rZWQ6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZTogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RhbmNlOiAxMDAsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIiMzNDQ0ODAiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC40LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDINCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbW92ZTogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BlZWQ6IDEsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3Rpb246ICJyaWdodCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYW5kb206IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW5fc3BlZWQ6IDMsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJhaWdodDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRfbW9kZTogIm91dCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgaW50ZXJhY3Rpdml0eTogew0KICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudHM6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uaG92ZXI6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmFibGU6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZTogInJlcHVsc2UiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljazogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZTogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZTogImJ1YmJsZSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZXM6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyYWI6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0YW5jZTogNTAwLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVfbGlua2VkOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDENCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnViYmxlOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGFuY2U6IDQwMCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplOiAzMDAsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcHVsc2U6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0YW5jZTogNzANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICBuYXZpZ2F0aW9uOiB7DQogICAgICAgICAgICAgICAgICAgICAgdG91Y2g6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgdG91Y2hlbmFibGVkOiAib24iDQogICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICBhcnJvd3M6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6ICJ6ZXVzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICBoaWRlX29ubW9iaWxlOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICBoaWRlX3VuZGVyOiA3ODAsDQogICAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb25sZWF2ZTogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgaGlkZV9kZWxheTogMjAwLA0KICAgICAgICAgICAgICAgICAgICAgICAgICBoaWRlX2RlbGF5X21vYmlsZTogMTIwMCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgdG1wOiAnPGRpdiBjbGFzcz0idHAtdGl0bGUtd3JhcCI+ICAJPGRpdiBjbGFzcz0idHAtYXJyLWltZ2hvbGRlciI+PC9kaXY+IDwvZGl2PicsDQogICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfYWxpZ246ICJsZWZ0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZfYWxpZ246ICJjZW50ZXIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaF9vZmZzZXQ6IDE1LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdl9vZmZzZXQ6IDANCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfYWxpZ246ICJyaWdodCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2X2FsaWduOiAiY2VudGVyIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfb2Zmc2V0OiAxNSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZfb2Zmc2V0OiAwDQogICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgcmVzcG9uc2l2ZUxldmVsczogWzEyNDAsIDExOTksIDk5MSwgNzY3LCA1NzZdLA0KICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eUxldmVsczogWzEyNDAsIDExOTksIDk5MSwgNzY3LCA1NzZdLA0KICAgICAgICAgICAgICAgICAgZ3JpZHdpZHRoOiBbMTE3MCwgOTYwLCA3MDAsIDUwMCwgMjkwXSwNCiAgICAgICAgICAgICAgICAgIGdyaWRoZWlnaHQ6IFs4NDAsIDgwMCwgODAwLCA3MDAsIDY1MF0sDQogICAgICAgICAgICAgICAgICBsYXp5VHlwZTogIm5vbmUiLA0KICAgICAgICAgICAgICAgICAgc2hhZG93OiAwLA0KICAgICAgICAgICAgICAgICAgc3Bpbm5lcjogInNwaW5uZXIwIiwNCiAgICAgICAgICAgICAgICAgIGF1dG9IZWlnaHQ6ICJvZmYiLA0KICAgICAgICAgICAgICAgICAgZnVsbFNjcmVlbkF1dG9XaWR0aDogIm9mZiIsDQogICAgICAgICAgICAgICAgICBmdWxsU2NyZWVuQWxpZ25Gb3JjZTogIm9mZiIsDQogICAgICAgICAgICAgICAgICBmdWxsU2NyZWVuT2Zmc2V0Q29udGFpbmVyOiAiIiwNCiAgICAgICAgICAgICAgICAgIGZ1bGxTY3JlZW5PZmZzZXQ6ICI2MHB4IiwNCiAgICAgICAgICAgICAgICAgIGRpc2FibGVQcm9ncmVzc0JhcjogIm9uIiwNCiAgICAgICAgICAgICAgICAgIGhpZGVUaHVtYnNPbk1vYmlsZTogIm9mZiIsDQogICAgICAgICAgICAgICAgICBoaWRlU2xpZGVyQXRMaW1pdDogMCwNCiAgICAgICAgICAgICAgICAgIGhpZGVDYXB0aW9uQXRMaW1pdDogMCwNCiAgICAgICAgICAgICAgICAgIGhpZGVBbGxDYXB0aW9uQXRMaWxtaXQ6IDAsDQogICAgICAgICAgICAgICAgICBkZWJ1Z01vZGU6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgZmFsbGJhY2tzOiB7DQogICAgICAgICAgICAgICAgICAgICAgc2ltcGxpZnlBbGw6ICJvZmYiLA0KICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVGb2N1c0xpc3RlbmVyOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgfSk7DQogICAgICAgICAgfQ0KICAgICAgICAgIFJzUGFydGljbGVzQWRkT24ocmV2YXBpOCk7DQogICAgICB9KTsgLypyZWFkeSovDQogIDwvc2NyaXB0Pg0KDQoNCg0KDQoNCg0KICA8IS0tIFNtYXJ0c3VwcCBMaXZlIENoYXQgc2NyaXB0IC0tPg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KdmFyIF9zbWFydHN1cHAgPSBfc21hcnRzdXBwIHx8IHt9Ow0KX3NtYXJ0c3VwcC5rZXkgPSAnZGIzMDU4MmE1M2E1MDA2YzEzYmUxNzIxYTk5NjY3NTY2YWFiZjcyZic7DQp3aW5kb3cuc21hcnRzdXBwfHwoZnVuY3Rpb24oZCkgew0KICB2YXIgcyxjLG89c21hcnRzdXBwPWZ1bmN0aW9uKCl7IG8uXy5wdXNoKGFyZ3VtZW50cyl9O28uXz1bXTsNCiAgcz1kLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzY3JpcHQnKVswXTtjPWQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7DQogIGMudHlwZT0ndGV4dC9qYXZhc2NyaXB0JztjLmNoYXJzZXQ9J3V0Zi04JztjLmFzeW5jPXRydWU7DQogIGMuc3JjPSdodHRwczovL3d3dy5zbWFydHN1cHBjaGF0LmNvbS9sb2FkZXIuanM/JztzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGMscyk7DQp9KShkb2N1bWVudCk7DQo8L3NjcmlwdD4NCjxub3NjcmlwdD4gUG93ZXJlZCBieSA8YSBocmVmPeKAnGh0dHBzOi8vd3d3LnNtYXJ0c3VwcC5jb23igJ0gdGFyZ2V0PeKAnF9ibGFua+KAnT5TbWFydHN1cHA8L2E+PC9ub3NjcmlwdD4NCg0KDQoNCiAgPHNjcmlwdD4NCiAgICAgICQoZG9jdW1lbnQpLmtleWRvd24oZnVuY3Rpb24oZXZlbnQpIHsNCiAgICAgICAgICBpZiAoZXZlbnQua2V5Q29kZSA9PSAxMjMpIHsNCiAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICAgIH0gZWxzZSBpZiAoZXZlbnQuY3RybEtleSAmJiBldmVudC5zaGlmdEtleSAmJiBldmVudC5rZXlDb2RlID09IDczKSB7DQogICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICB9DQogICAgICB9KQ0KICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY29udGV4dG1lbnUnLCBldmVudCA9PiBldmVudC5wcmV2ZW50RGVmYXVsdCgpKQ0KICA8L3NjcmlwdD4NCg0KDQogIDxkaXYgY2xhc3M9Imd0cmFuc2xhdGVfd3JhcHBlciI+PC9kaXY+DQogIDxzY3JpcHQ+DQogICAgICB3aW5kb3cuZ3RyYW5zbGF0ZVNldHRpbmdzID0gew0KICAgICAgICAgIGRlZmF1bHRfbGFuZ3VhZ2U6ICJlbiIsDQogICAgICAgICAgYWx0X2ZsYWdzOiB7DQogICAgICAgICAgICAgICJlbiI6ICJ1c2EiDQogICAgICAgICAgfSwNCiAgICAgICAgICB3cmFwcGVyX3NlbGVjdG9yOiAiLmd0cmFuc2xhdGVfd3JhcHBlciIsDQogICAgICAgICAgZmxhZ19zdHlsZTogIjNkIiwNCiAgICAgIH07DQogIDwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG4uZ3RyYW5zbGF0ZS5uZXQvd2lkZ2V0cy9sYXRlc3QvZmxvYXQuanMiIGRlZmVyPjwvc2NyaXB0Pg0KDQoNCiAgPC9ib2R5Pg0KDQogIDwvaHRtbD4="}},"time_used":12138,"timings":{"blocked":9927,"dns":0,"connect":0,"send":0,"wait":1128,"receive":1083,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/js/popper.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.287Z","timestamp":1785143908287,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /js/popper.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:41 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"4b27-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 6937\r\nKeep-Alive: timeout=5, max=98\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":19239,"size_decoded":7305,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (19063), with CRLF line terminators","md5":"e01684c4d1a19ab7e2b3bf7fee4eccad","sha1":"dde0e98bfc96894730c189f4130a810e30d525f7","sha256":"5903bdc7a4ac443581031d9d23c6d9aa2c2ee4c6d1cb4be5b19751fc4895e8c4","sha512":"c581f6e906c50e8b365fb668c1ec3aa0b447ebb7e7eee1c298b576ca57a102b06c7634bbb193cfef5b439424b4bdae0af56f772a94aaa9367892cf983d1d626f","ssdeep":"384:L+Xh+odHN1iZCdG9D7fWsju398xivi+7D7NYFuA1QvDHr/RxGkjkd/9jt39Din1H:SQodH7iI67fhxivbD7JgQv5xPjknZ3M5","tlshash":"168293dc3290b06643a790a7906f960eb2335879604e9410f29df2d97c30efa917fd79","first_seen":"2023-03-07T12:55:13Z","last_seen":"2026-08-09T19:21:52.935272Z","times_seen":121,"resource_available":true,"data":"LyoNCiBDb3B5cmlnaHQgKEMpIEZlZGVyaWNvIFppdm9sbyAyMDE3DQogRGlzdHJpYnV0ZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlIChsaWNlbnNlIHRlcm1zIGFyZSBhdCBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUKS4NCiAqLyhmdW5jdGlvbihlLHQpeydvYmplY3QnPT10eXBlb2YgZXhwb3J0cyYmJ3VuZGVmaW5lZCchPXR5cGVvZiBtb2R1bGU/bW9kdWxlLmV4cG9ydHM9dCgpOidmdW5jdGlvbic9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKHQpOmUuUG9wcGVyPXQoKX0pKHRoaXMsZnVuY3Rpb24oKXsndXNlIHN0cmljdCc7ZnVuY3Rpb24gZShlKXtyZXR1cm4gZSYmJ1tvYmplY3QgRnVuY3Rpb25dJz09PXt9LnRvU3RyaW5nLmNhbGwoZSl9ZnVuY3Rpb24gdChlLHQpe2lmKDEhPT1lLm5vZGVUeXBlKXJldHVybltdO3ZhciBvPXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGUsbnVsbCk7cmV0dXJuIHQ/b1t0XTpvfWZ1bmN0aW9uIG8oZSl7cmV0dXJuJ0hUTUwnPT09ZS5ub2RlTmFtZT9lOmUucGFyZW50Tm9kZXx8ZS5ob3N0fWZ1bmN0aW9uIG4oZSl7aWYoIWV8fC0xIT09WydIVE1MJywnQk9EWScsJyNkb2N1bWVudCddLmluZGV4T2YoZS5ub2RlTmFtZSkpcmV0dXJuIHdpbmRvdy5kb2N1bWVudC5ib2R5O3ZhciBpPXQoZSkscj1pLm92ZXJmbG93LHA9aS5vdmVyZmxvd1gscz1pLm92ZXJmbG93WTtyZXR1cm4gLyhhdXRvfHNjcm9sbCkvLnRlc3QocitzK3ApP2U6bihvKGUpKX1mdW5jdGlvbiByKGUpe3ZhciBvPWUmJmUub2Zmc2V0UGFyZW50LGk9byYmby5ub2RlTmFtZTtyZXR1cm4gaSYmJ0JPRFknIT09aSYmJ0hUTUwnIT09aT8tMSE9PVsnVEQnLCdUQUJMRSddLmluZGV4T2Yoby5ub2RlTmFtZSkmJidzdGF0aWMnPT09dChvLCdwb3NpdGlvbicpP3Iobyk6bzp3aW5kb3cuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50fWZ1bmN0aW9uIHAoZSl7dmFyIHQ9ZS5ub2RlTmFtZTtyZXR1cm4nQk9EWSchPT10JiYoJ0hUTUwnPT09dHx8cihlLmZpcnN0RWxlbWVudENoaWxkKT09PWUpfWZ1bmN0aW9uIHMoZSl7cmV0dXJuIG51bGw9PT1lLnBhcmVudE5vZGU/ZTpzKGUucGFyZW50Tm9kZSl9ZnVuY3Rpb24gZChlLHQpe2lmKCFlfHwhZS5ub2RlVHlwZXx8IXR8fCF0Lm5vZGVUeXBlKXJldHVybiB3aW5kb3cuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O3ZhciBvPWUuY29tcGFyZURvY3VtZW50UG9zaXRpb24odCkmTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9GT0xMT1dJTkcsaT1vP2U6dCxuPW8/dDplLGE9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTthLnNldFN0YXJ0KGksMCksYS5zZXRFbmQobiwwKTt2YXIgbD1hLmNvbW1vbkFuY2VzdG9yQ29udGFpbmVyO2lmKGUhPT1sJiZ0IT09bHx8aS5jb250YWlucyhuKSlyZXR1cm4gcChsKT9sOnIobCk7dmFyIGY9cyhlKTtyZXR1cm4gZi5ob3N0P2QoZi5ob3N0LHQpOmQoZSxzKHQpLmhvc3QpfWZ1bmN0aW9uIGEoZSl7dmFyIHQ9MTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOid0b3AnLG89J3RvcCc9PT10PydzY3JvbGxUb3AnOidzY3JvbGxMZWZ0JyxpPWUubm9kZU5hbWU7aWYoJ0JPRFknPT09aXx8J0hUTUwnPT09aSl7dmFyIG49d2luZG93LmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxyPXdpbmRvdy5kb2N1bWVudC5zY3JvbGxpbmdFbGVtZW50fHxuO3JldHVybiByW29dfXJldHVybiBlW29dfWZ1bmN0aW9uIGwoZSx0KXt2YXIgbz0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1syXSYmYXJndW1lbnRzWzJdLGk9YSh0LCd0b3AnKSxuPWEodCwnbGVmdCcpLHI9bz8tMToxO3JldHVybiBlLnRvcCs9aSpyLGUuYm90dG9tKz1pKnIsZS5sZWZ0Kz1uKnIsZS5yaWdodCs9bipyLGV9ZnVuY3Rpb24gZihlLHQpe3ZhciBvPSd4Jz09PXQ/J0xlZnQnOidUb3AnLGk9J0xlZnQnPT1vPydSaWdodCc6J0JvdHRvbSc7cmV0dXJuK2VbJ2JvcmRlcicrbysnV2lkdGgnXS5zcGxpdCgncHgnKVswXSsgK2VbJ2JvcmRlcicraSsnV2lkdGgnXS5zcGxpdCgncHgnKVswXX1mdW5jdGlvbiBtKGUsdCxvLGkpe3JldHVybiBYKHRbJ29mZnNldCcrZV0sdFsnc2Nyb2xsJytlXSxvWydjbGllbnQnK2VdLG9bJ29mZnNldCcrZV0sb1snc2Nyb2xsJytlXSxuZSgpP29bJ29mZnNldCcrZV0raVsnbWFyZ2luJysoJ0hlaWdodCc9PT1lPydUb3AnOidMZWZ0JyldK2lbJ21hcmdpbicrKCdIZWlnaHQnPT09ZT8nQm90dG9tJzonUmlnaHQnKV06MCl9ZnVuY3Rpb24gYygpe3ZhciBlPXdpbmRvdy5kb2N1bWVudC5ib2R5LHQ9d2luZG93LmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxvPW5lKCkmJndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHQpO3JldHVybntoZWlnaHQ6bSgnSGVpZ2h0JyxlLHQsbyksd2lkdGg6bSgnV2lkdGgnLGUsdCxvKX19ZnVuY3Rpb24gaChlKXtyZXR1cm4gZGUoe30sZSx7cmlnaHQ6ZS5sZWZ0K2Uud2lkdGgsYm90dG9tOmUudG9wK2UuaGVpZ2h0fSl9ZnVuY3Rpb24gZyhlKXt2YXIgbz17fTtpZihuZSgpKXRyeXtvPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7dmFyIGk9YShlLCd0b3AnKSxuPWEoZSwnbGVmdCcpO28udG9wKz1pLG8ubGVmdCs9bixvLmJvdHRvbSs9aSxvLnJpZ2h0Kz1ufWNhdGNoKGUpe31lbHNlIG89ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt2YXIgcj17bGVmdDpvLmxlZnQsdG9wOm8udG9wLHdpZHRoOm8ucmlnaHQtby5sZWZ0LGhlaWdodDpvLmJvdHRvbS1vLnRvcH0scD0nSFRNTCc9PT1lLm5vZGVOYW1lP2MoKTp7fSxzPXAud2lkdGh8fGUuY2xpZW50V2lkdGh8fHIucmlnaHQtci5sZWZ0LGQ9cC5oZWlnaHR8fGUuY2xpZW50SGVpZ2h0fHxyLmJvdHRvbS1yLnRvcCxsPWUub2Zmc2V0V2lkdGgtcyxtPWUub2Zmc2V0SGVpZ2h0LWQ7aWYobHx8bSl7dmFyIGc9dChlKTtsLT1mKGcsJ3gnKSxtLT1mKGcsJ3knKSxyLndpZHRoLT1sLHIuaGVpZ2h0LT1tfXJldHVybiBoKHIpfWZ1bmN0aW9uIHUoZSxvKXt2YXIgaT1uZSgpLHI9J0hUTUwnPT09by5ub2RlTmFtZSxwPWcoZSkscz1nKG8pLGQ9bihlKSxhPXQobyksZj0rYS5ib3JkZXJUb3BXaWR0aC5zcGxpdCgncHgnKVswXSxtPSthLmJvcmRlckxlZnRXaWR0aC5zcGxpdCgncHgnKVswXSxjPWgoe3RvcDpwLnRvcC1zLnRvcC1mLGxlZnQ6cC5sZWZ0LXMubGVmdC1tLHdpZHRoOnAud2lkdGgsaGVpZ2h0OnAuaGVpZ2h0fSk7aWYoYy5tYXJnaW5Ub3A9MCxjLm1hcmdpbkxlZnQ9MCwhaSYmcil7dmFyIHU9K2EubWFyZ2luVG9wLnNwbGl0KCdweCcpWzBdLGI9K2EubWFyZ2luTGVmdC5zcGxpdCgncHgnKVswXTtjLnRvcC09Zi11LGMuYm90dG9tLT1mLXUsYy5sZWZ0LT1tLWIsYy5yaWdodC09bS1iLGMubWFyZ2luVG9wPXUsYy5tYXJnaW5MZWZ0PWJ9cmV0dXJuKGk/by5jb250YWlucyhkKTpvPT09ZCYmJ0JPRFknIT09ZC5ub2RlTmFtZSkmJihjPWwoYyxvKSksY31mdW5jdGlvbiBiKGUpe3ZhciB0PXdpbmRvdy5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsbz11KGUsdCksaT1YKHQuY2xpZW50V2lkdGgsd2luZG93LmlubmVyV2lkdGh8fDApLG49WCh0LmNsaWVudEhlaWdodCx3aW5kb3cuaW5uZXJIZWlnaHR8fDApLHI9YSh0KSxwPWEodCwnbGVmdCcpLHM9e3RvcDpyLW8udG9wK28ubWFyZ2luVG9wLGxlZnQ6cC1vLmxlZnQrby5tYXJnaW5MZWZ0LHdpZHRoOmksaGVpZ2h0Om59O3JldHVybiBoKHMpfWZ1bmN0aW9uIHkoZSl7dmFyIGk9ZS5ub2RlTmFtZTtyZXR1cm4nQk9EWSc9PT1pfHwnSFRNTCc9PT1pPyExOidmaXhlZCc9PT10KGUsJ3Bvc2l0aW9uJyl8fHkobyhlKSl9ZnVuY3Rpb24gdyhlLHQsaSxyKXt2YXIgcD17dG9wOjAsbGVmdDowfSxzPWQoZSx0KTtpZigndmlld3BvcnQnPT09cilwPWIocyk7ZWxzZXt2YXIgYTsnc2Nyb2xsUGFyZW50Jz09PXI/KGE9bihvKGUpKSwnQk9EWSc9PT1hLm5vZGVOYW1lJiYoYT13aW5kb3cuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSk6J3dpbmRvdyc9PT1yP2E9d2luZG93LmRvY3VtZW50LmRvY3VtZW50RWxlbWVudDphPXI7dmFyIGw9dShhLHMpO2lmKCdIVE1MJz09PWEubm9kZU5hbWUmJiF5KHMpKXt2YXIgZj1jKCksbT1mLmhlaWdodCxoPWYud2lkdGg7cC50b3ArPWwudG9wLWwubWFyZ2luVG9wLHAuYm90dG9tPW0rbC50b3AscC5sZWZ0Kz1sLmxlZnQtbC5tYXJnaW5MZWZ0LHAucmlnaHQ9aCtsLmxlZnR9ZWxzZSBwPWx9cmV0dXJuIHAubGVmdCs9aSxwLnRvcCs9aSxwLnJpZ2h0LT1pLHAuYm90dG9tLT1pLHB9ZnVuY3Rpb24gRShlKXt2YXIgdD1lLndpZHRoLG89ZS5oZWlnaHQ7cmV0dXJuIHQqb31mdW5jdGlvbiB2KGUsdCxvLGksbil7dmFyIHI9NTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbNV0/YXJndW1lbnRzWzVdOjA7aWYoLTE9PT1lLmluZGV4T2YoJ2F1dG8nKSlyZXR1cm4gZTt2YXIgcD13KG8saSxyLG4pLHM9e3RvcDp7d2lkdGg6cC53aWR0aCxoZWlnaHQ6dC50b3AtcC50b3B9LHJpZ2h0Ont3aWR0aDpwLnJpZ2h0LXQucmlnaHQsaGVpZ2h0OnAuaGVpZ2h0fSxib3R0b206e3dpZHRoOnAud2lkdGgsaGVpZ2h0OnAuYm90dG9tLXQuYm90dG9tfSxsZWZ0Ont3aWR0aDp0LmxlZnQtcC5sZWZ0LGhlaWdodDpwLmhlaWdodH19LGQ9T2JqZWN0LmtleXMocykubWFwKGZ1bmN0aW9uKGUpe3JldHVybiBkZSh7a2V5OmV9LHNbZV0se2FyZWE6RShzW2VdKX0pfSkuc29ydChmdW5jdGlvbihlLHQpe3JldHVybiB0LmFyZWEtZS5hcmVhfSksYT1kLmZpbHRlcihmdW5jdGlvbihlKXt2YXIgdD1lLndpZHRoLGk9ZS5oZWlnaHQ7cmV0dXJuIHQ+PW8uY2xpZW50V2lkdGgmJmk+PW8uY2xpZW50SGVpZ2h0fSksbD0wPGEubGVuZ3RoP2FbMF0ua2V5OmRbMF0ua2V5LGY9ZS5zcGxpdCgnLScpWzFdO3JldHVybiBsKyhmPyctJytmOicnKX1mdW5jdGlvbiB4KGUsdCxvKXt2YXIgaT1kKHQsbyk7cmV0dXJuIHUobyxpKX1mdW5jdGlvbiBPKGUpe3ZhciB0PXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGUpLG89cGFyc2VGbG9hdCh0Lm1hcmdpblRvcCkrcGFyc2VGbG9hdCh0Lm1hcmdpbkJvdHRvbSksaT1wYXJzZUZsb2F0KHQubWFyZ2luTGVmdCkrcGFyc2VGbG9hdCh0Lm1hcmdpblJpZ2h0KSxuPXt3aWR0aDplLm9mZnNldFdpZHRoK2ksaGVpZ2h0OmUub2Zmc2V0SGVpZ2h0K299O3JldHVybiBufWZ1bmN0aW9uIEwoZSl7dmFyIHQ9e2xlZnQ6J3JpZ2h0JyxyaWdodDonbGVmdCcsYm90dG9tOid0b3AnLHRvcDonYm90dG9tJ307cmV0dXJuIGUucmVwbGFjZSgvbGVmdHxyaWdodHxib3R0b218dG9wL2csZnVuY3Rpb24oZSl7cmV0dXJuIHRbZV19KX1mdW5jdGlvbiBTKGUsdCxvKXtvPW8uc3BsaXQoJy0nKVswXTt2YXIgaT1PKGUpLG49e3dpZHRoOmkud2lkdGgsaGVpZ2h0OmkuaGVpZ2h0fSxyPS0xIT09WydyaWdodCcsJ2xlZnQnXS5pbmRleE9mKG8pLHA9cj8ndG9wJzonbGVmdCcscz1yPydsZWZ0JzondG9wJyxkPXI/J2hlaWdodCc6J3dpZHRoJyxhPXI/J3dpZHRoJzonaGVpZ2h0JztyZXR1cm4gbltwXT10W3BdK3RbZF0vMi1pW2RdLzIsbltzXT1vPT09cz90W3NdLWlbYV06dFtMKHMpXSxufWZ1bmN0aW9uIFQoZSx0KXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmZpbmQ/ZS5maW5kKHQpOmUuZmlsdGVyKHQpWzBdfWZ1bmN0aW9uIEMoZSx0LG8pe2lmKEFycmF5LnByb3RvdHlwZS5maW5kSW5kZXgpcmV0dXJuIGUuZmluZEluZGV4KGZ1bmN0aW9uKGUpe3JldHVybiBlW3RdPT09b30pO3ZhciBpPVQoZSxmdW5jdGlvbihlKXtyZXR1cm4gZVt0XT09PW99KTtyZXR1cm4gZS5pbmRleE9mKGkpfWZ1bmN0aW9uIE4odCxvLGkpe3ZhciBuPXZvaWQgMD09PWk/dDp0LnNsaWNlKDAsQyh0LCduYW1lJyxpKSk7cmV0dXJuIG4uZm9yRWFjaChmdW5jdGlvbih0KXt0LmZ1bmN0aW9uJiZjb25zb2xlLndhcm4oJ2Btb2RpZmllci5mdW5jdGlvbmAgaXMgZGVwcmVjYXRlZCwgdXNlIGBtb2RpZmllci5mbmAhJyk7dmFyIGk9dC5mdW5jdGlvbnx8dC5mbjt0LmVuYWJsZWQmJmUoaSkmJihvLm9mZnNldHMucG9wcGVyPWgoby5vZmZzZXRzLnBvcHBlciksby5vZmZzZXRzLnJlZmVyZW5jZT1oKG8ub2Zmc2V0cy5yZWZlcmVuY2UpLG89aShvLHQpKX0pLG99ZnVuY3Rpb24gaygpe2lmKCF0aGlzLnN0YXRlLmlzRGVzdHJveWVkKXt2YXIgZT17aW5zdGFuY2U6dGhpcyxzdHlsZXM6e30sYXJyb3dTdHlsZXM6e30sYXR0cmlidXRlczp7fSxmbGlwcGVkOiExLG9mZnNldHM6e319O2Uub2Zmc2V0cy5yZWZlcmVuY2U9eCh0aGlzLnN0YXRlLHRoaXMucG9wcGVyLHRoaXMucmVmZXJlbmNlKSxlLnBsYWNlbWVudD12KHRoaXMub3B0aW9ucy5wbGFjZW1lbnQsZS5vZmZzZXRzLnJlZmVyZW5jZSx0aGlzLnBvcHBlcix0aGlzLnJlZmVyZW5jZSx0aGlzLm9wdGlvbnMubW9kaWZpZXJzLmZsaXAuYm91bmRhcmllc0VsZW1lbnQsdGhpcy5vcHRpb25zLm1vZGlmaWVycy5mbGlwLnBhZGRpbmcpLGUub3JpZ2luYWxQbGFjZW1lbnQ9ZS5wbGFjZW1lbnQsZS5vZmZzZXRzLnBvcHBlcj1TKHRoaXMucG9wcGVyLGUub2Zmc2V0cy5yZWZlcmVuY2UsZS5wbGFjZW1lbnQpLGUub2Zmc2V0cy5wb3BwZXIucG9zaXRpb249J2Fic29sdXRlJyxlPU4odGhpcy5tb2RpZmllcnMsZSksdGhpcy5zdGF0ZS5pc0NyZWF0ZWQ/dGhpcy5vcHRpb25zLm9uVXBkYXRlKGUpOih0aGlzLnN0YXRlLmlzQ3JlYXRlZD0hMCx0aGlzLm9wdGlvbnMub25DcmVhdGUoZSkpfX1mdW5jdGlvbiBXKGUsdCl7cmV0dXJuIGUuc29tZShmdW5jdGlvbihlKXt2YXIgbz1lLm5hbWUsaT1lLmVuYWJsZWQ7cmV0dXJuIGkmJm89PT10fSl9ZnVuY3Rpb24gQihlKXtmb3IodmFyIHQ9WyExLCdtcycsJ1dlYmtpdCcsJ01veicsJ08nXSxvPWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrZS5zbGljZSgxKSxuPTA7bjx0Lmxlbmd0aC0xO24rKyl7dmFyIGk9dFtuXSxyPWk/JycraStvOmU7aWYoJ3VuZGVmaW5lZCchPXR5cGVvZiB3aW5kb3cuZG9jdW1lbnQuYm9keS5zdHlsZVtyXSlyZXR1cm4gcn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBQKCl7cmV0dXJuIHRoaXMuc3RhdGUuaXNEZXN0cm95ZWQ9ITAsVyh0aGlzLm1vZGlmaWVycywnYXBwbHlTdHlsZScpJiYodGhpcy5wb3BwZXIucmVtb3ZlQXR0cmlidXRlKCd4LXBsYWNlbWVudCcpLHRoaXMucG9wcGVyLnN0eWxlLmxlZnQ9JycsdGhpcy5wb3BwZXIuc3R5bGUucG9zaXRpb249JycsdGhpcy5wb3BwZXIuc3R5bGUudG9wPScnLHRoaXMucG9wcGVyLnN0eWxlW0IoJ3RyYW5zZm9ybScpXT0nJyksdGhpcy5kaXNhYmxlRXZlbnRMaXN0ZW5lcnMoKSx0aGlzLm9wdGlvbnMucmVtb3ZlT25EZXN0cm95JiZ0aGlzLnBvcHBlci5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMucG9wcGVyKSx0aGlzfWZ1bmN0aW9uIEQoZSx0LG8saSl7dmFyIHI9J0JPRFknPT09ZS5ub2RlTmFtZSxwPXI/d2luZG93OmU7cC5hZGRFdmVudExpc3RlbmVyKHQsbyx7cGFzc2l2ZTohMH0pLHJ8fEQobihwLnBhcmVudE5vZGUpLHQsbyxpKSxpLnB1c2gocCl9ZnVuY3Rpb24gSChlLHQsbyxpKXtvLnVwZGF0ZUJvdW5kPWksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsby51cGRhdGVCb3VuZCx7cGFzc2l2ZTohMH0pO3ZhciByPW4oZSk7cmV0dXJuIEQociwnc2Nyb2xsJyxvLnVwZGF0ZUJvdW5kLG8uc2Nyb2xsUGFyZW50cyksby5zY3JvbGxFbGVtZW50PXIsby5ldmVudHNFbmFibGVkPSEwLG99ZnVuY3Rpb24gQSgpe3RoaXMuc3RhdGUuZXZlbnRzRW5hYmxlZHx8KHRoaXMuc3RhdGU9SCh0aGlzLnJlZmVyZW5jZSx0aGlzLm9wdGlvbnMsdGhpcy5zdGF0ZSx0aGlzLnNjaGVkdWxlVXBkYXRlKSl9ZnVuY3Rpb24gTShlLHQpe3JldHVybiB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigncmVzaXplJyx0LnVwZGF0ZUJvdW5kKSx0LnNjcm9sbFBhcmVudHMuZm9yRWFjaChmdW5jdGlvbihlKXtlLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsdC51cGRhdGVCb3VuZCl9KSx0LnVwZGF0ZUJvdW5kPW51bGwsdC5zY3JvbGxQYXJlbnRzPVtdLHQuc2Nyb2xsRWxlbWVudD1udWxsLHQuZXZlbnRzRW5hYmxlZD0hMSx0fWZ1bmN0aW9uIEkoKXt0aGlzLnN0YXRlLmV2ZW50c0VuYWJsZWQmJih3aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5zY2hlZHVsZVVwZGF0ZSksdGhpcy5zdGF0ZT1NKHRoaXMucmVmZXJlbmNlLHRoaXMuc3RhdGUpKX1mdW5jdGlvbiBSKGUpe3JldHVybicnIT09ZSYmIWlzTmFOKHBhcnNlRmxvYXQoZSkpJiZpc0Zpbml0ZShlKX1mdW5jdGlvbiBVKGUsdCl7T2JqZWN0LmtleXModCkuZm9yRWFjaChmdW5jdGlvbihvKXt2YXIgaT0nJzstMSE9PVsnd2lkdGgnLCdoZWlnaHQnLCd0b3AnLCdyaWdodCcsJ2JvdHRvbScsJ2xlZnQnXS5pbmRleE9mKG8pJiZSKHRbb10pJiYoaT0ncHgnKSxlLnN0eWxlW29dPXRbb10raX0pfWZ1bmN0aW9uIFkoZSx0KXtPYmplY3Qua2V5cyh0KS5mb3JFYWNoKGZ1bmN0aW9uKG8pe3ZhciBpPXRbb107ITE9PT1pP2UucmVtb3ZlQXR0cmlidXRlKG8pOmUuc2V0QXR0cmlidXRlKG8sdFtvXSl9KX1mdW5jdGlvbiBGKGUsdCxvKXt2YXIgaT1UKGUsZnVuY3Rpb24oZSl7dmFyIG89ZS5uYW1lO3JldHVybiBvPT09dH0pLG49ISFpJiZlLnNvbWUoZnVuY3Rpb24oZSl7cmV0dXJuIGUubmFtZT09PW8mJmUuZW5hYmxlZCYmZS5vcmRlcjxpLm9yZGVyfSk7aWYoIW4pe3ZhciByPSdgJyt0KydgJztjb25zb2xlLndhcm4oJ2AnK28rJ2AnKycgbW9kaWZpZXIgaXMgcmVxdWlyZWQgYnkgJytyKycgbW9kaWZpZXIgaW4gb3JkZXIgdG8gd29yaywgYmUgc3VyZSB0byBpbmNsdWRlIGl0IGJlZm9yZSAnK3IrJyEnKX1yZXR1cm4gbn1mdW5jdGlvbiBqKGUpe3JldHVybidlbmQnPT09ZT8nc3RhcnQnOidzdGFydCc9PT1lPydlbmQnOmV9ZnVuY3Rpb24gSyhlKXt2YXIgdD0xPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXSYmYXJndW1lbnRzWzFdLG89bGUuaW5kZXhPZihlKSxpPWxlLnNsaWNlKG8rMSkuY29uY2F0KGxlLnNsaWNlKDAsbykpO3JldHVybiB0P2kucmV2ZXJzZSgpOml9ZnVuY3Rpb24gcShlLHQsbyxpKXt2YXIgbj1lLm1hdGNoKC8oKD86XC18XCspP1xkKlwuP1xkKikoLiopLykscj0rblsxXSxwPW5bMl07aWYoIXIpcmV0dXJuIGU7aWYoMD09PXAuaW5kZXhPZignJScpKXt2YXIgcztzd2l0Y2gocCl7Y2FzZSclcCc6cz1vO2JyZWFrO2Nhc2UnJSc6Y2FzZSclcic6ZGVmYXVsdDpzPWk7fXZhciBkPWgocyk7cmV0dXJuIGRbdF0vMTAwKnJ9aWYoJ3ZoJz09PXB8fCd2dyc9PT1wKXt2YXIgYTtyZXR1cm4gYT0ndmgnPT09cD9YKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQsd2luZG93LmlubmVySGVpZ2h0fHwwKTpYKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCx3aW5kb3cuaW5uZXJXaWR0aHx8MCksYS8xMDAqcn1yZXR1cm4gcn1mdW5jdGlvbiBHKGUsdCxvLGkpe3ZhciBuPVswLDBdLHI9LTEhPT1bJ3JpZ2h0JywnbGVmdCddLmluZGV4T2YoaSkscD1lLnNwbGl0KC8oXCt8XC0pLykubWFwKGZ1bmN0aW9uKGUpe3JldHVybiBlLnRyaW0oKX0pLHM9cC5pbmRleE9mKFQocCxmdW5jdGlvbihlKXtyZXR1cm4tMSE9PWUuc2VhcmNoKC8sfFxzLyl9KSk7cFtzXSYmLTE9PT1wW3NdLmluZGV4T2YoJywnKSYmY29uc29sZS53YXJuKCdPZmZzZXRzIHNlcGFyYXRlZCBieSB3aGl0ZSBzcGFjZShzKSBhcmUgZGVwcmVjYXRlZCwgdXNlIGEgY29tbWEgKCwpIGluc3RlYWQuJyk7dmFyIGQ9L1xzKixccyp8XHMrLyxhPS0xPT09cz9bcF06W3Auc2xpY2UoMCxzKS5jb25jYXQoW3Bbc10uc3BsaXQoZClbMF1dKSxbcFtzXS5zcGxpdChkKVsxXV0uY29uY2F0KHAuc2xpY2UocysxKSldO3JldHVybiBhPWEubWFwKGZ1bmN0aW9uKGUsaSl7dmFyIG49KDE9PT1pPyFyOnIpPydoZWlnaHQnOid3aWR0aCcscD0hMTtyZXR1cm4gZS5yZWR1Y2UoZnVuY3Rpb24oZSx0KXtyZXR1cm4nJz09PWVbZS5sZW5ndGgtMV0mJi0xIT09WycrJywnLSddLmluZGV4T2YodCk/KGVbZS5sZW5ndGgtMV09dCxwPSEwLGUpOnA/KGVbZS5sZW5ndGgtMV0rPXQscD0hMSxlKTplLmNvbmNhdCh0KX0sW10pLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gcShlLG4sdCxvKX0pfSksYS5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7ZS5mb3JFYWNoKGZ1bmN0aW9uKG8saSl7UihvKSYmKG5bdF0rPW8qKCctJz09PWVbaS0xXT8tMToxKSl9KX0pLG59ZnVuY3Rpb24geihlLHQpe3ZhciBvLGk9dC5vZmZzZXQsbj1lLnBsYWNlbWVudCxyPWUub2Zmc2V0cyxwPXIucG9wcGVyLHM9ci5yZWZlcmVuY2UsZD1uLnNwbGl0KCctJylbMF07cmV0dXJuIG89UigraSk/WytpLDBdOkcoaSxwLHMsZCksJ2xlZnQnPT09ZD8ocC50b3ArPW9bMF0scC5sZWZ0LT1vWzFdKToncmlnaHQnPT09ZD8ocC50b3ArPW9bMF0scC5sZWZ0Kz1vWzFdKTondG9wJz09PWQ/KHAubGVmdCs9b1swXSxwLnRvcC09b1sxXSk6J2JvdHRvbSc9PT1kJiYocC5sZWZ0Kz1vWzBdLHAudG9wKz1vWzFdKSxlLnBvcHBlcj1wLGV9Zm9yKHZhciBWPU1hdGgubWluLF89TWF0aC5mbG9vcixYPU1hdGgubWF4LFE9WyduYXRpdmUgY29kZScsJ1tvYmplY3QgTXV0YXRpb25PYnNlcnZlckNvbnN0cnVjdG9yXSddLEo9ZnVuY3Rpb24oZSl7cmV0dXJuIFEuc29tZShmdW5jdGlvbih0KXtyZXR1cm4tMTwoZXx8JycpLnRvU3RyaW5nKCkuaW5kZXhPZih0KX0pfSxaPSd1bmRlZmluZWQnIT10eXBlb2Ygd2luZG93LCQ9WydFZGdlJywnVHJpZGVudCcsJ0ZpcmVmb3gnXSxlZT0wLHRlPTA7dGU8JC5sZW5ndGg7dGUrPTEpaWYoWiYmMDw9bmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCRbdGVdKSl7ZWU9MTticmVha312YXIgaSxvZT1aJiZKKHdpbmRvdy5NdXRhdGlvbk9ic2VydmVyKSxpZT1vZT9mdW5jdGlvbihlKXt2YXIgdD0hMSxvPTAsaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyksbj1uZXcgTXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbigpe2UoKSx0PSExfSk7cmV0dXJuIG4ub2JzZXJ2ZShpLHthdHRyaWJ1dGVzOiEwfSksZnVuY3Rpb24oKXt0fHwodD0hMCxpLnNldEF0dHJpYnV0ZSgneC1pbmRleCcsbyksKytvKX19OmZ1bmN0aW9uKGUpe3ZhciB0PSExO3JldHVybiBmdW5jdGlvbigpe3R8fCh0PSEwLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0PSExLGUoKX0sZWUpKX19LG5lPWZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgMD09aSYmKGk9LTEhPT1uYXZpZ2F0b3IuYXBwVmVyc2lvbi5pbmRleE9mKCdNU0lFIDEwJykpLGl9LHJlPWZ1bmN0aW9uKGUsdCl7aWYoIShlIGluc3RhbmNlb2YgdCkpdGhyb3cgbmV3IFR5cGVFcnJvcignQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uJyl9LHBlPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZShlLHQpe2Zvcih2YXIgbyxuPTA7bjx0Lmxlbmd0aDtuKyspbz10W25dLG8uZW51bWVyYWJsZT1vLmVudW1lcmFibGV8fCExLG8uY29uZmlndXJhYmxlPSEwLCd2YWx1ZSdpbiBvJiYoby53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsby5rZXksbyl9cmV0dXJuIGZ1bmN0aW9uKHQsbyxpKXtyZXR1cm4gbyYmZSh0LnByb3RvdHlwZSxvKSxpJiZlKHQsaSksdH19KCksc2U9ZnVuY3Rpb24oZSx0LG8pe3JldHVybiB0IGluIGU/T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7dmFsdWU6byxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOmVbdF09byxlfSxkZT1PYmplY3QuYXNzaWdufHxmdW5jdGlvbihlKXtmb3IodmFyIHQsbz0xO288YXJndW1lbnRzLmxlbmd0aDtvKyspZm9yKHZhciBpIGluIHQ9YXJndW1lbnRzW29dLHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsaSkmJihlW2ldPXRbaV0pO3JldHVybiBlfSxhZT1bJ2F1dG8tc3RhcnQnLCdhdXRvJywnYXV0by1lbmQnLCd0b3Atc3RhcnQnLCd0b3AnLCd0b3AtZW5kJywncmlnaHQtc3RhcnQnLCdyaWdodCcsJ3JpZ2h0LWVuZCcsJ2JvdHRvbS1lbmQnLCdib3R0b20nLCdib3R0b20tc3RhcnQnLCdsZWZ0LWVuZCcsJ2xlZnQnLCdsZWZ0LXN0YXJ0J10sbGU9YWUuc2xpY2UoMyksZmU9e0ZMSVA6J2ZsaXAnLENMT0NLV0lTRTonY2xvY2t3aXNlJyxDT1VOVEVSQ0xPQ0tXSVNFOidjb3VudGVyY2xvY2t3aXNlJ30sbWU9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KG8saSl7dmFyIG49dGhpcyxyPTI8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7fTtyZSh0aGlzLHQpLHRoaXMuc2NoZWR1bGVVcGRhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKG4udXBkYXRlKX0sdGhpcy51cGRhdGU9aWUodGhpcy51cGRhdGUuYmluZCh0aGlzKSksdGhpcy5vcHRpb25zPWRlKHt9LHQuRGVmYXVsdHMsciksdGhpcy5zdGF0ZT17aXNEZXN0cm95ZWQ6ITEsaXNDcmVhdGVkOiExLHNjcm9sbFBhcmVudHM6W119LHRoaXMucmVmZXJlbmNlPW8uanF1ZXJ5P29bMF06byx0aGlzLnBvcHBlcj1pLmpxdWVyeT9pWzBdOmksdGhpcy5vcHRpb25zLm1vZGlmaWVycz17fSxPYmplY3Qua2V5cyhkZSh7fSx0LkRlZmF1bHRzLm1vZGlmaWVycyxyLm1vZGlmaWVycykpLmZvckVhY2goZnVuY3Rpb24oZSl7bi5vcHRpb25zLm1vZGlmaWVyc1tlXT1kZSh7fSx0LkRlZmF1bHRzLm1vZGlmaWVyc1tlXXx8e30sci5tb2RpZmllcnM/ci5tb2RpZmllcnNbZV06e30pfSksdGhpcy5tb2RpZmllcnM9T2JqZWN0LmtleXModGhpcy5vcHRpb25zLm1vZGlmaWVycykubWFwKGZ1bmN0aW9uKGUpe3JldHVybiBkZSh7bmFtZTplfSxuLm9wdGlvbnMubW9kaWZpZXJzW2VdKX0pLnNvcnQoZnVuY3Rpb24oZSx0KXtyZXR1cm4gZS5vcmRlci10Lm9yZGVyfSksdGhpcy5tb2RpZmllcnMuZm9yRWFjaChmdW5jdGlvbih0KXt0LmVuYWJsZWQmJmUodC5vbkxvYWQpJiZ0Lm9uTG9hZChuLnJlZmVyZW5jZSxuLnBvcHBlcixuLm9wdGlvbnMsdCxuLnN0YXRlKX0pLHRoaXMudXBkYXRlKCk7dmFyIHA9dGhpcy5vcHRpb25zLmV2ZW50c0VuYWJsZWQ7cCYmdGhpcy5lbmFibGVFdmVudExpc3RlbmVycygpLHRoaXMuc3RhdGUuZXZlbnRzRW5hYmxlZD1wfXJldHVybiBwZSh0LFt7a2V5Oid1cGRhdGUnLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIGsuY2FsbCh0aGlzKX19LHtrZXk6J2Rlc3Ryb3knLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIFAuY2FsbCh0aGlzKX19LHtrZXk6J2VuYWJsZUV2ZW50TGlzdGVuZXJzJyx2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBBLmNhbGwodGhpcyl9fSx7a2V5OidkaXNhYmxlRXZlbnRMaXN0ZW5lcnMnLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIEkuY2FsbCh0aGlzKX19XSksdH0oKTtyZXR1cm4gbWUuVXRpbHM9KCd1bmRlZmluZWQnPT10eXBlb2Ygd2luZG93P2dsb2JhbDp3aW5kb3cpLlBvcHBlclV0aWxzLG1lLnBsYWNlbWVudHM9YWUsbWUuRGVmYXVsdHM9e3BsYWNlbWVudDonYm90dG9tJyxldmVudHNFbmFibGVkOiEwLHJlbW92ZU9uRGVzdHJveTohMSxvbkNyZWF0ZTpmdW5jdGlvbigpe30sb25VcGRhdGU6ZnVuY3Rpb24oKXt9LG1vZGlmaWVyczp7c2hpZnQ6e29yZGVyOjEwMCxlbmFibGVkOiEwLGZuOmZ1bmN0aW9uKGUpe3ZhciB0PWUucGxhY2VtZW50LG89dC5zcGxpdCgnLScpWzBdLGk9dC5zcGxpdCgnLScpWzFdO2lmKGkpe3ZhciBuPWUub2Zmc2V0cyxyPW4ucmVmZXJlbmNlLHA9bi5wb3BwZXIscz0tMSE9PVsnYm90dG9tJywndG9wJ10uaW5kZXhPZihvKSxkPXM/J2xlZnQnOid0b3AnLGE9cz8nd2lkdGgnOidoZWlnaHQnLGw9e3N0YXJ0OnNlKHt9LGQscltkXSksZW5kOnNlKHt9LGQscltkXStyW2FdLXBbYV0pfTtlLm9mZnNldHMucG9wcGVyPWRlKHt9LHAsbFtpXSl9cmV0dXJuIGV9fSxvZmZzZXQ6e29yZGVyOjIwMCxlbmFibGVkOiEwLGZuOnosb2Zmc2V0OjB9LHByZXZlbnRPdmVyZmxvdzp7b3JkZXI6MzAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24oZSx0KXt2YXIgbz10LmJvdW5kYXJpZXNFbGVtZW50fHxyKGUuaW5zdGFuY2UucG9wcGVyKTtlLmluc3RhbmNlLnJlZmVyZW5jZT09PW8mJihvPXIobykpO3ZhciBpPXcoZS5pbnN0YW5jZS5wb3BwZXIsZS5pbnN0YW5jZS5yZWZlcmVuY2UsdC5wYWRkaW5nLG8pO3QuYm91bmRhcmllcz1pO3ZhciBuPXQucHJpb3JpdHkscD1lLm9mZnNldHMucG9wcGVyLHM9e3ByaW1hcnk6ZnVuY3Rpb24oZSl7dmFyIG89cFtlXTtyZXR1cm4gcFtlXTxpW2VdJiYhdC5lc2NhcGVXaXRoUmVmZXJlbmNlJiYobz1YKHBbZV0saVtlXSkpLHNlKHt9LGUsbyl9LHNlY29uZGFyeTpmdW5jdGlvbihlKXt2YXIgbz0ncmlnaHQnPT09ZT8nbGVmdCc6J3RvcCcsbj1wW29dO3JldHVybiBwW2VdPmlbZV0mJiF0LmVzY2FwZVdpdGhSZWZlcmVuY2UmJihuPVYocFtvXSxpW2VdLSgncmlnaHQnPT09ZT9wLndpZHRoOnAuaGVpZ2h0KSkpLHNlKHt9LG8sbil9fTtyZXR1cm4gbi5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PS0xPT09WydsZWZ0JywndG9wJ10uaW5kZXhPZihlKT8nc2Vjb25kYXJ5JzoncHJpbWFyeSc7cD1kZSh7fSxwLHNbdF0oZSkpfSksZS5vZmZzZXRzLnBvcHBlcj1wLGV9LHByaW9yaXR5OlsnbGVmdCcsJ3JpZ2h0JywndG9wJywnYm90dG9tJ10scGFkZGluZzo1LGJvdW5kYXJpZXNFbGVtZW50OidzY3JvbGxQYXJlbnQnfSxrZWVwVG9nZXRoZXI6e29yZGVyOjQwMCxlbmFibGVkOiEwLGZuOmZ1bmN0aW9uKGUpe3ZhciB0PWUub2Zmc2V0cyxvPXQucG9wcGVyLGk9dC5yZWZlcmVuY2Usbj1lLnBsYWNlbWVudC5zcGxpdCgnLScpWzBdLHI9XyxwPS0xIT09Wyd0b3AnLCdib3R0b20nXS5pbmRleE9mKG4pLHM9cD8ncmlnaHQnOidib3R0b20nLGQ9cD8nbGVmdCc6J3RvcCcsYT1wPyd3aWR0aCc6J2hlaWdodCc7cmV0dXJuIG9bc108cihpW2RdKSYmKGUub2Zmc2V0cy5wb3BwZXJbZF09cihpW2RdKS1vW2FdKSxvW2RdPnIoaVtzXSkmJihlLm9mZnNldHMucG9wcGVyW2RdPXIoaVtzXSkpLGV9fSxhcnJvdzp7b3JkZXI6NTAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24oZSxvKXtpZighRihlLmluc3RhbmNlLm1vZGlmaWVycywnYXJyb3cnLCdrZWVwVG9nZXRoZXInKSlyZXR1cm4gZTt2YXIgaT1vLmVsZW1lbnQ7aWYoJ3N0cmluZyc9PXR5cGVvZiBpKXtpZihpPWUuaW5zdGFuY2UucG9wcGVyLnF1ZXJ5U2VsZWN0b3IoaSksIWkpcmV0dXJuIGU7fWVsc2UgaWYoIWUuaW5zdGFuY2UucG9wcGVyLmNvbnRhaW5zKGkpKXJldHVybiBjb25zb2xlLndhcm4oJ1dBUk5JTkc6IGBhcnJvdy5lbGVtZW50YCBtdXN0IGJlIGNoaWxkIG9mIGl0cyBwb3BwZXIgZWxlbWVudCEnKSxlO3ZhciBuPWUucGxhY2VtZW50LnNwbGl0KCctJylbMF0scj1lLm9mZnNldHMscD1yLnBvcHBlcixzPXIucmVmZXJlbmNlLGQ9LTEhPT1bJ2xlZnQnLCdyaWdodCddLmluZGV4T2YobiksYT1kPydoZWlnaHQnOid3aWR0aCcsbD1kPydUb3AnOidMZWZ0JyxmPWwudG9Mb3dlckNhc2UoKSxtPWQ/J2xlZnQnOid0b3AnLGM9ZD8nYm90dG9tJzoncmlnaHQnLGc9TyhpKVthXTtzW2NdLWc8cFtmXSYmKGUub2Zmc2V0cy5wb3BwZXJbZl0tPXBbZl0tKHNbY10tZykpLHNbZl0rZz5wW2NdJiYoZS5vZmZzZXRzLnBvcHBlcltmXSs9c1tmXStnLXBbY10pO3ZhciB1PXNbZl0rc1thXS8yLWcvMixiPXQoZS5pbnN0YW5jZS5wb3BwZXIsJ21hcmdpbicrbCkucmVwbGFjZSgncHgnLCcnKSx5PXUtaChlLm9mZnNldHMucG9wcGVyKVtmXS1iO3JldHVybiB5PVgoVihwW2FdLWcseSksMCksZS5hcnJvd0VsZW1lbnQ9aSxlLm9mZnNldHMuYXJyb3c9e30sZS5vZmZzZXRzLmFycm93W2ZdPU1hdGgucm91bmQoeSksZS5vZmZzZXRzLmFycm93W21dPScnLGV9LGVsZW1lbnQ6J1t4LWFycm93XSd9LGZsaXA6e29yZGVyOjYwMCxlbmFibGVkOiEwLGZuOmZ1bmN0aW9uKGUsdCl7aWYoVyhlLmluc3RhbmNlLm1vZGlmaWVycywnaW5uZXInKSlyZXR1cm4gZTtpZihlLmZsaXBwZWQmJmUucGxhY2VtZW50PT09ZS5vcmlnaW5hbFBsYWNlbWVudClyZXR1cm4gZTt2YXIgbz13KGUuaW5zdGFuY2UucG9wcGVyLGUuaW5zdGFuY2UucmVmZXJlbmNlLHQucGFkZGluZyx0LmJvdW5kYXJpZXNFbGVtZW50KSxpPWUucGxhY2VtZW50LnNwbGl0KCctJylbMF0sbj1MKGkpLHI9ZS5wbGFjZW1lbnQuc3BsaXQoJy0nKVsxXXx8JycscD1bXTtzd2l0Y2godC5iZWhhdmlvcil7Y2FzZSBmZS5GTElQOnA9W2ksbl07YnJlYWs7Y2FzZSBmZS5DTE9DS1dJU0U6cD1LKGkpO2JyZWFrO2Nhc2UgZmUuQ09VTlRFUkNMT0NLV0lTRTpwPUsoaSwhMCk7YnJlYWs7ZGVmYXVsdDpwPXQuYmVoYXZpb3I7fXJldHVybiBwLmZvckVhY2goZnVuY3Rpb24ocyxkKXtpZihpIT09c3x8cC5sZW5ndGg9PT1kKzEpcmV0dXJuIGU7aT1lLnBsYWNlbWVudC5zcGxpdCgnLScpWzBdLG49TChpKTt2YXIgYT1lLm9mZnNldHMucG9wcGVyLGw9ZS5vZmZzZXRzLnJlZmVyZW5jZSxmPV8sbT0nbGVmdCc9PT1pJiZmKGEucmlnaHQpPmYobC5sZWZ0KXx8J3JpZ2h0Jz09PWkmJmYoYS5sZWZ0KTxmKGwucmlnaHQpfHwndG9wJz09PWkmJmYoYS5ib3R0b20pPmYobC50b3ApfHwnYm90dG9tJz09PWkmJmYoYS50b3ApPGYobC5ib3R0b20pLGM9ZihhLmxlZnQpPGYoby5sZWZ0KSxoPWYoYS5yaWdodCk+ZihvLnJpZ2h0KSxnPWYoYS50b3ApPGYoby50b3ApLHU9ZihhLmJvdHRvbSk+ZihvLmJvdHRvbSksYj0nbGVmdCc9PT1pJiZjfHwncmlnaHQnPT09aSYmaHx8J3RvcCc9PT1pJiZnfHwnYm90dG9tJz09PWkmJnUseT0tMSE9PVsndG9wJywnYm90dG9tJ10uaW5kZXhPZihpKSx3PSEhdC5mbGlwVmFyaWF0aW9ucyYmKHkmJidzdGFydCc9PT1yJiZjfHx5JiYnZW5kJz09PXImJmh8fCF5JiYnc3RhcnQnPT09ciYmZ3x8IXkmJidlbmQnPT09ciYmdSk7KG18fGJ8fHcpJiYoZS5mbGlwcGVkPSEwLChtfHxiKSYmKGk9cFtkKzFdKSx3JiYocj1qKHIpKSxlLnBsYWNlbWVudD1pKyhyPyctJytyOicnKSxlLm9mZnNldHMucG9wcGVyPWRlKHt9LGUub2Zmc2V0cy5wb3BwZXIsUyhlLmluc3RhbmNlLnBvcHBlcixlLm9mZnNldHMucmVmZXJlbmNlLGUucGxhY2VtZW50KSksZT1OKGUuaW5zdGFuY2UubW9kaWZpZXJzLGUsJ2ZsaXAnKSl9KSxlfSxiZWhhdmlvcjonZmxpcCcscGFkZGluZzo1LGJvdW5kYXJpZXNFbGVtZW50Oid2aWV3cG9ydCd9LGlubmVyOntvcmRlcjo3MDAsZW5hYmxlZDohMSxmbjpmdW5jdGlvbihlKXt2YXIgdD1lLnBsYWNlbWVudCxvPXQuc3BsaXQoJy0nKVswXSxpPWUub2Zmc2V0cyxuPWkucG9wcGVyLHI9aS5yZWZlcmVuY2UscD0tMSE9PVsnbGVmdCcsJ3JpZ2h0J10uaW5kZXhPZihvKSxzPS0xPT09Wyd0b3AnLCdsZWZ0J10uaW5kZXhPZihvKTtyZXR1cm4gbltwPydsZWZ0JzondG9wJ109cltvXS0ocz9uW3A/J3dpZHRoJzonaGVpZ2h0J106MCksZS5wbGFjZW1lbnQ9TCh0KSxlLm9mZnNldHMucG9wcGVyPWgobiksZX19LGhpZGU6e29yZGVyOjgwMCxlbmFibGVkOiEwLGZuOmZ1bmN0aW9uKGUpe2lmKCFGKGUuaW5zdGFuY2UubW9kaWZpZXJzLCdoaWRlJywncHJldmVudE92ZXJmbG93JykpcmV0dXJuIGU7dmFyIHQ9ZS5vZmZzZXRzLnJlZmVyZW5jZSxvPVQoZS5pbnN0YW5jZS5tb2RpZmllcnMsZnVuY3Rpb24oZSl7cmV0dXJuJ3ByZXZlbnRPdmVyZmxvdyc9PT1lLm5hbWV9KS5ib3VuZGFyaWVzO2lmKHQuYm90dG9tPG8udG9wfHx0LmxlZnQ+by5yaWdodHx8dC50b3A+by5ib3R0b218fHQucmlnaHQ8by5sZWZ0KXtpZighMD09PWUuaGlkZSlyZXR1cm4gZTtlLmhpZGU9ITAsZS5hdHRyaWJ1dGVzWyd4LW91dC1vZi1ib3VuZGFyaWVzJ109Jyd9ZWxzZXtpZighMT09PWUuaGlkZSlyZXR1cm4gZTtlLmhpZGU9ITEsZS5hdHRyaWJ1dGVzWyd4LW91dC1vZi1ib3VuZGFyaWVzJ109ITF9cmV0dXJuIGV9fSxjb21wdXRlU3R5bGU6e29yZGVyOjg1MCxlbmFibGVkOiEwLGZuOmZ1bmN0aW9uKGUsdCl7dmFyIG89dC54LGk9dC55LG49ZS5vZmZzZXRzLnBvcHBlcixwPVQoZS5pbnN0YW5jZS5tb2RpZmllcnMsZnVuY3Rpb24oZSl7cmV0dXJuJ2FwcGx5U3R5bGUnPT09ZS5uYW1lfSkuZ3B1QWNjZWxlcmF0aW9uO3ZvaWQgMCE9PXAmJmNvbnNvbGUud2FybignV0FSTklORzogYGdwdUFjY2VsZXJhdGlvbmAgb3B0aW9uIG1vdmVkIHRvIGBjb21wdXRlU3R5bGVgIG1vZGlmaWVyIGFuZCB3aWxsIG5vdCBiZSBzdXBwb3J0ZWQgaW4gZnV0dXJlIHZlcnNpb25zIG9mIFBvcHBlci5qcyEnKTt2YXIgcyxkLGE9dm9pZCAwPT09cD90LmdwdUFjY2VsZXJhdGlvbjpwLGw9cihlLmluc3RhbmNlLnBvcHBlciksZj1nKGwpLG09e3Bvc2l0aW9uOm4ucG9zaXRpb259LGM9e2xlZnQ6XyhuLmxlZnQpLHRvcDpfKG4udG9wKSxib3R0b206XyhuLmJvdHRvbSkscmlnaHQ6XyhuLnJpZ2h0KX0saD0nYm90dG9tJz09PW8/J3RvcCc6J2JvdHRvbScsdT0ncmlnaHQnPT09aT8nbGVmdCc6J3JpZ2h0JyxiPUIoJ3RyYW5zZm9ybScpO2lmKGQ9J2JvdHRvbSc9PWg/LWYuaGVpZ2h0K2MuYm90dG9tOmMudG9wLHM9J3JpZ2h0Jz09dT8tZi53aWR0aCtjLnJpZ2h0OmMubGVmdCxhJiZiKW1bYl09J3RyYW5zbGF0ZTNkKCcrcysncHgsICcrZCsncHgsIDApJyxtW2hdPTAsbVt1XT0wLG0ud2lsbENoYW5nZT0ndHJhbnNmb3JtJztlbHNle3ZhciB5PSdib3R0b20nPT1oPy0xOjEsdz0ncmlnaHQnPT11Py0xOjE7bVtoXT1kKnksbVt1XT1zKncsbS53aWxsQ2hhbmdlPWgrJywgJyt1fXZhciBFPXsieC1wbGFjZW1lbnQiOmUucGxhY2VtZW50fTtyZXR1cm4gZS5hdHRyaWJ1dGVzPWRlKHt9LEUsZS5hdHRyaWJ1dGVzKSxlLnN0eWxlcz1kZSh7fSxtLGUuc3R5bGVzKSxlLmFycm93U3R5bGVzPWRlKHt9LGUub2Zmc2V0cy5hcnJvdyxlLmFycm93U3R5bGVzKSxlfSxncHVBY2NlbGVyYXRpb246ITAseDonYm90dG9tJyx5OidyaWdodCd9LGFwcGx5U3R5bGU6e29yZGVyOjkwMCxlbmFibGVkOiEwLGZuOmZ1bmN0aW9uKGUpe3JldHVybiBVKGUuaW5zdGFuY2UucG9wcGVyLGUuc3R5bGVzKSxZKGUuaW5zdGFuY2UucG9wcGVyLGUuYXR0cmlidXRlcyksZS5hcnJvd0VsZW1lbnQmJk9iamVjdC5rZXlzKGUuYXJyb3dTdHlsZXMpLmxlbmd0aCYmVShlLmFycm93RWxlbWVudCxlLmFycm93U3R5bGVzKSxlfSxvbkxvYWQ6ZnVuY3Rpb24oZSx0LG8saSxuKXt2YXIgcj14KG4sdCxlKSxwPXYoby5wbGFjZW1lbnQscix0LGUsby5tb2RpZmllcnMuZmxpcC5ib3VuZGFyaWVzRWxlbWVudCxvLm1vZGlmaWVycy5mbGlwLnBhZGRpbmcpO3JldHVybiB0LnNldEF0dHJpYnV0ZSgneC1wbGFjZW1lbnQnLHApLFUodCx7cG9zaXRpb246J2Fic29sdXRlJ30pLG99LGdwdUFjY2VsZXJhdGlvbjp2b2lkIDB9fX0sbWV9KTsNCi8vIyBzb3VyY2VNYXBwaW5nVVJMPXBvcHBlci5taW4uanMubWFw"}},"time_used":13322,"timings":{"blocked":12110,"dns":0,"connect":0,"send":0,"wait":1212,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/js/marquee.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.308Z","timestamp":1785143908308,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /js/marquee.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:45 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"1726-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 2037\r\nKeep-Alive: timeout=5, max=95\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":5926,"size_decoded":2405,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (516), with CRLF line terminators","md5":"12564dfc331548cccfaac887cacf47ac","sha1":"5fb3bb0df723e0599937698480f35eb4d6bd7573","sha256":"dd286c431e73e45c02f256d5aca24d15da078f993538691b2f95bebc6eb4bf67","sha512":"acfed49bea66fb4f76fabaabb1bc41b0368ce92d372d9abdeb124c915a5093b5d2029c06981fdfba4817797109a28c492985a02f634cedf619741bdce59b9526","ssdeep":"96:3jeIyUtg6ICYd+un4xRx7nCKM3IJT3W+Un6clyUMQhyvjt+ntfo2tzQ6:zwUtmAO8+Is6ccqhyvk","tlshash":"d0c173c5b5b5308a5667229780db07c02a398439614f8c6eb9368270bd70f8c1be7f3b","first_seen":"2023-12-05T20:35:50Z","last_seen":"2026-07-27T09:20:18.377109Z","times_seen":40,"resource_available":true,"data":"LyoqDQogKiBqUXVlcnkubWFycXVlZSAtIHNjcm9sbGluZyB0ZXh0IGxpa2Ugb2xkIG1hcnF1ZWUgZWxlbWVudA0KICogQGF1dGhvciBBYW1pciBBZnJpZGkgLSBhYW1pcmFmcmlkaShhdClnbWFpbChkb3QpY29tIC8gaHR0cDovL2FhbWlyYWZyaWRpLmNvbS9qcXVlcnkvanF1ZXJ5LW1hcnF1ZWUtcGx1Z2luDQogKi8NCihmdW5jdGlvbihmKXtmLmZuLm1hcnF1ZWU9ZnVuY3Rpb24oeCl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBhPWYuZXh0ZW5kKHt9LGYuZm4ubWFycXVlZS5kZWZhdWx0cyx4KSxiPWYodGhpcyksYyx0LGU9Myx5PSJhbmltYXRpb24tcGxheS1zdGF0ZSIscD0hMSxFPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGU9WyJ3ZWJraXQiLCJtb3oiLCJNUyIsIm8iLCIiXSxkPTA7ZDxlLmxlbmd0aDtkKyspZVtkXXx8KGI9Yi50b0xvd2VyQ2FzZSgpKSxhLmFkZEV2ZW50TGlzdGVuZXIoZVtkXStiLGMsITEpfSxGPWZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM7Zm9yKGMgaW4gYSlhLmhhc093blByb3BlcnR5KGMpJiZiLnB1c2goYysiOiIrYVtjXSk7Yi5wdXNoKCk7cmV0dXJuInsiK2Iuam9pbigiLCIpKyJ9In0sbD17cGF1c2U6ZnVuY3Rpb24oKXtwJiZhLmFsbG93Q3NzM1N1cHBvcnQ/Yy5jc3MoeSwicGF1c2VkIik6Zi5mbi5wYXVzZSYmYy5wYXVzZSgpO2IuZGF0YSgicnVubmluZ1N0YXR1cyIsDQoicGF1c2VkIik7Yi50cmlnZ2VyKCJwYXVzZWQiKX0scmVzdW1lOmZ1bmN0aW9uKCl7cCYmYS5hbGxvd0NzczNTdXBwb3J0P2MuY3NzKHksInJ1bm5pbmciKTpmLmZuLnJlc3VtZSYmYy5yZXN1bWUoKTtiLmRhdGEoInJ1bm5pbmdTdGF0dXMiLCJyZXN1bWVkIik7Yi50cmlnZ2VyKCJyZXN1bWVkIil9LHRvZ2dsZTpmdW5jdGlvbigpe2xbInJlc3VtZWQiPT1iLmRhdGEoInJ1bm5pbmdTdGF0dXMiKT8icGF1c2UiOiJyZXN1bWUiXSgpfSxkZXN0cm95OmZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KGIudGltZXIpO2IuZmluZCgiKiIpLmFkZEJhY2soKS51bmJpbmQoKTtiLmh0bWwoYi5maW5kKCIuanMtbWFycXVlZTpmaXJzdCIpLmh0bWwoKSl9fTtpZigic3RyaW5nIj09PXR5cGVvZiB4KWYuaXNGdW5jdGlvbihsW3hdKSYmKGN8fChjPWIuZmluZCgiLmpzLW1hcnF1ZWUtd3JhcHBlciIpKSwhMD09PWIuZGF0YSgiY3NzM0FuaW1hdGlvbklzU3VwcG9ydGVkIikmJihwPSEwKSxsW3hdKCkpO2Vsc2V7dmFyIHU7DQpmLmVhY2goYSxmdW5jdGlvbihjLGQpe3U9Yi5hdHRyKCJkYXRhLSIrYyk7aWYoInVuZGVmaW5lZCIhPT10eXBlb2YgdSl7c3dpdGNoKHUpe2Nhc2UgInRydWUiOnU9ITA7YnJlYWs7Y2FzZSAiZmFsc2UiOnU9ITF9YVtjXT11fX0pO2Euc3BlZWQmJihhLmR1cmF0aW9uPXBhcnNlSW50KGIud2lkdGgoKSwxMCkvYS5zcGVlZCoxRTMpO3ZhciB2PSJ1cCI9PWEuZGlyZWN0aW9ufHwiZG93biI9PWEuZGlyZWN0aW9uO2EuZ2FwPWEuZHVwbGljYXRlZD9wYXJzZUludChhLmdhcCk6MDtiLndyYXBJbm5lcignPGRpdiBjbGFzcz0ianMtbWFycXVlZSI+PC9kaXY+Jyk7dmFyIGg9Yi5maW5kKCIuanMtbWFycXVlZSIpLmNzcyh7Im1hcmdpbi1yaWdodCI6YS5nYXAsImZsb2F0IjoibGVmdCJ9KTthLmR1cGxpY2F0ZWQmJmguY2xvbmUoITApLmFwcGVuZFRvKGIpO2Iud3JhcElubmVyKCc8ZGl2IHN0eWxlPSJ3aWR0aDoxMDAwMDBweCIgY2xhc3M9ImpzLW1hcnF1ZWUtd3JhcHBlciI+PC9kaXY+Jyk7DQpjPWIuZmluZCgiLmpzLW1hcnF1ZWUtd3JhcHBlciIpO2lmKHYpe3ZhciBrPWIuaGVpZ2h0KCk7Yy5yZW1vdmVBdHRyKCJzdHlsZSIpO2IuaGVpZ2h0KGspO2IuZmluZCgiLmpzLW1hcnF1ZWUiKS5jc3MoeyJmbG9hdCI6Im5vbmUiLCJtYXJnaW4tYm90dG9tIjphLmdhcCwibWFyZ2luLXJpZ2h0IjowfSk7YS5kdXBsaWNhdGVkJiZiLmZpbmQoIi5qcy1tYXJxdWVlOmxhc3QiKS5jc3MoeyJtYXJnaW4tYm90dG9tIjowfSk7dmFyIHE9Yi5maW5kKCIuanMtbWFycXVlZTpmaXJzdCIpLmhlaWdodCgpK2EuZ2FwO2Euc3RhcnRWaXNpYmxlJiYhYS5kdXBsaWNhdGVkPyhhLl9jb21wbGV0ZUR1cmF0aW9uPShwYXJzZUludChxLDEwKStwYXJzZUludChrLDEwKSkvcGFyc2VJbnQoaywxMCkqYS5kdXJhdGlvbixhLmR1cmF0aW9uKj1wYXJzZUludChxLDEwKS9wYXJzZUludChrLDEwKSk6YS5kdXJhdGlvbio9KHBhcnNlSW50KHEsMTApK3BhcnNlSW50KGssMTApKS9wYXJzZUludChrLDEwKX1lbHNle3ZhciBtPQ0KYi5maW5kKCIuanMtbWFycXVlZTpmaXJzdCIpLndpZHRoKCkrYS5nYXA7dmFyIG49Yi53aWR0aCgpO2Euc3RhcnRWaXNpYmxlJiYhYS5kdXBsaWNhdGVkPyhhLl9jb21wbGV0ZUR1cmF0aW9uPShwYXJzZUludChtLDEwKStwYXJzZUludChuLDEwKSkvcGFyc2VJbnQobiwxMCkqYS5kdXJhdGlvbixhLmR1cmF0aW9uKj1wYXJzZUludChtLDEwKS9wYXJzZUludChuLDEwKSk6YS5kdXJhdGlvbio9KHBhcnNlSW50KG0sMTApK3BhcnNlSW50KG4sMTApKS9wYXJzZUludChuLDEwKX1hLmR1cGxpY2F0ZWQmJihhLmR1cmF0aW9uLz0yKTtpZihhLmFsbG93Q3NzM1N1cHBvcnQpe2g9ZG9jdW1lbnQuYm9keXx8ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dmFyIGc9Im1hcnF1ZWVBbmltYXRpb24tIitNYXRoLmZsb29yKDFFNypNYXRoLnJhbmRvbSgpKSxBPVsiV2Via2l0IiwiTW96IiwiTyIsIm1zIiwiS2h0bWwiXSxCPSJhbmltYXRpb24iLGQ9IiIscj0iIjtoLnN0eWxlLmFuaW1hdGlvbiYmDQoocj0iQGtleWZyYW1lcyAiK2crIiAiLHA9ITApO2lmKCExPT09cClmb3IodmFyIHo9MDt6PEEubGVuZ3RoO3orKylpZih2b2lkIDAhPT1oLnN0eWxlW0Fbel0rIkFuaW1hdGlvbk5hbWUiXSl7aD0iLSIrQVt6XS50b0xvd2VyQ2FzZSgpKyItIjtCPWgrQjt5PWgreTtyPSJAIitoKyJrZXlmcmFtZXMgIitnKyIgIjtwPSEwO2JyZWFrfXAmJihkPWcrIiAiK2EuZHVyYXRpb24vMUUzKyJzICIrYS5kZWxheUJlZm9yZVN0YXJ0LzFFMysicyBpbmZpbml0ZSAiK2EuY3NzM2Vhc2luZyxiLmRhdGEoImNzczNBbmltYXRpb25Jc1N1cHBvcnRlZCIsITApKX12YXIgQz1mdW5jdGlvbigpe2MuY3NzKCJ0cmFuc2Zvcm0iLCJ0cmFuc2xhdGVZKCIrKCJ1cCI9PWEuZGlyZWN0aW9uP2srInB4IjoiLSIrcSsicHgiKSsiKSIpfSxEPWZ1bmN0aW9uKCl7Yy5jc3MoInRyYW5zZm9ybSIsInRyYW5zbGF0ZVgoIisoImxlZnQiPT1hLmRpcmVjdGlvbj9uKyJweCI6Ii0iK20rInB4IikrIikiKX07YS5kdXBsaWNhdGVkPw0KKHY/YS5zdGFydFZpc2libGU/Yy5jc3MoInRyYW5zZm9ybSIsInRyYW5zbGF0ZVkoMCkiKTpjLmNzcygidHJhbnNmb3JtIiwidHJhbnNsYXRlWSgiKygidXAiPT1hLmRpcmVjdGlvbj9rKyJweCI6Ii0iKygyKnEtYS5nYXApKyJweCIpKyIpIik6YS5zdGFydFZpc2libGU/Yy5jc3MoInRyYW5zZm9ybSIsInRyYW5zbGF0ZVgoMCkiKTpjLmNzcygidHJhbnNmb3JtIiwidHJhbnNsYXRlWCgiKygibGVmdCI9PWEuZGlyZWN0aW9uP24rInB4IjoiLSIrKDIqbS1hLmdhcCkrInB4IikrIikiKSxhLnN0YXJ0VmlzaWJsZXx8KGU9MSkpOmEuc3RhcnRWaXNpYmxlP2U9Mjp2P0MoKTpEKCk7dmFyIHc9ZnVuY3Rpb24oKXthLmR1cGxpY2F0ZWQmJigxPT09ZT8oYS5fb3JpZ2luYWxEdXJhdGlvbj1hLmR1cmF0aW9uLGEuZHVyYXRpb249dj8idXAiPT1hLmRpcmVjdGlvbj9hLmR1cmF0aW9uK2svKHEvYS5kdXJhdGlvbik6MiphLmR1cmF0aW9uOiJsZWZ0Ij09YS5kaXJlY3Rpb24/YS5kdXJhdGlvbituLw0KKG0vYS5kdXJhdGlvbik6MiphLmR1cmF0aW9uLGQmJihkPWcrIiAiK2EuZHVyYXRpb24vMUUzKyJzICIrYS5kZWxheUJlZm9yZVN0YXJ0LzFFMysicyAiK2EuY3NzM2Vhc2luZyksZSsrKToyPT09ZSYmKGEuZHVyYXRpb249YS5fb3JpZ2luYWxEdXJhdGlvbixkJiYoZys9IjAiLHI9Zi50cmltKHIpKyIwICIsZD1nKyIgIithLmR1cmF0aW9uLzFFMysicyAwcyBpbmZpbml0ZSAiK2EuY3NzM2Vhc2luZyksZSsrKSk7dj9hLmR1cGxpY2F0ZWQ/KDI8ZSYmYy5jc3MoInRyYW5zZm9ybSIsInRyYW5zbGF0ZVkoIisoInVwIj09YS5kaXJlY3Rpb24/MDoiLSIrcSsicHgiKSsiKSIpLHQ9e3RyYW5zZm9ybToidHJhbnNsYXRlWSgiKygidXAiPT1hLmRpcmVjdGlvbj8iLSIrcSsicHgiOjApKyIpIn0pOmEuc3RhcnRWaXNpYmxlPzI9PT1lPyhkJiYoZD1nKyIgIithLmR1cmF0aW9uLzFFMysicyAiK2EuZGVsYXlCZWZvcmVTdGFydC8xRTMrInMgIithLmNzczNlYXNpbmcpLHQ9e3RyYW5zZm9ybToidHJhbnNsYXRlWSgiKw0KKCJ1cCI9PWEuZGlyZWN0aW9uPyItIitxKyJweCI6aysicHgiKSsiKSJ9LGUrKyk6Mz09PWUmJihhLmR1cmF0aW9uPWEuX2NvbXBsZXRlRHVyYXRpb24sZCYmKGcrPSIwIixyPWYudHJpbShyKSsiMCAiLGQ9ZysiICIrYS5kdXJhdGlvbi8xRTMrInMgMHMgaW5maW5pdGUgIithLmNzczNlYXNpbmcpLEMoKSk6KEMoKSx0PXt0cmFuc2Zvcm06InRyYW5zbGF0ZVkoIisoInVwIj09YS5kaXJlY3Rpb24/Ii0iK2MuaGVpZ2h0KCkrInB4IjprKyJweCIpKyIpIn0pOmEuZHVwbGljYXRlZD8oMjxlJiZjLmNzcygidHJhbnNmb3JtIiwidHJhbnNsYXRlWCgiKygibGVmdCI9PWEuZGlyZWN0aW9uPzA6Ii0iK20rInB4IikrIikiKSx0PXt0cmFuc2Zvcm06InRyYW5zbGF0ZVgoIisoImxlZnQiPT1hLmRpcmVjdGlvbj8iLSIrbSsicHgiOjApKyIpIn0pOmEuc3RhcnRWaXNpYmxlPzI9PT1lPyhkJiYoZD1nKyIgIithLmR1cmF0aW9uLzFFMysicyAiK2EuZGVsYXlCZWZvcmVTdGFydC8xRTMrInMgIithLmNzczNlYXNpbmcpLA0KdD17dHJhbnNmb3JtOiJ0cmFuc2xhdGVYKCIrKCJsZWZ0Ij09YS5kaXJlY3Rpb24/Ii0iK20rInB4IjpuKyJweCIpKyIpIn0sZSsrKTozPT09ZSYmKGEuZHVyYXRpb249YS5fY29tcGxldGVEdXJhdGlvbixkJiYoZys9IjAiLHI9Zi50cmltKHIpKyIwICIsZD1nKyIgIithLmR1cmF0aW9uLzFFMysicyAwcyBpbmZpbml0ZSAiK2EuY3NzM2Vhc2luZyksRCgpKTooRCgpLHQ9e3RyYW5zZm9ybToidHJhbnNsYXRlWCgiKygibGVmdCI9PWEuZGlyZWN0aW9uPyItIittKyJweCI6bisicHgiKSsiKSJ9KTtiLnRyaWdnZXIoImJlZm9yZVN0YXJ0aW5nIik7aWYocCl7Yy5jc3MoQixkKTt2YXIgaD1yKyIgeyAxMDAlICAiK0YodCkrIn0iLGw9Yy5maW5kKCJzdHlsZSIpOzAhPT1sLmxlbmd0aD9sLmZpbHRlcigiOmxhc3QiKS5odG1sKGgpOmYoImhlYWQiKS5hcHBlbmQoIjxzdHlsZT4iK2grIjwvc3R5bGU+Iik7RShjWzBdLCJBbmltYXRpb25JdGVyYXRpb24iLGZ1bmN0aW9uKCl7Yi50cmlnZ2VyKCJmaW5pc2hlZCIpfSk7DQpFKGNbMF0sIkFuaW1hdGlvbkVuZCIsZnVuY3Rpb24oKXt3KCk7Yi50cmlnZ2VyKCJmaW5pc2hlZCIpfSl9ZWxzZSBjLmFuaW1hdGUodCxhLmR1cmF0aW9uLGEuZWFzaW5nLGZ1bmN0aW9uKCl7Yi50cmlnZ2VyKCJmaW5pc2hlZCIpO2EucGF1c2VPbkN5Y2xlP2IudGltZXI9c2V0VGltZW91dCh3LGEuZGVsYXlCZWZvcmVTdGFydCk6dygpfSk7Yi5kYXRhKCJydW5uaW5nU3RhdHVzIiwicmVzdW1lZCIpfTtiLmJpbmQoInBhdXNlIixsLnBhdXNlKTtiLmJpbmQoInJlc3VtZSIsbC5yZXN1bWUpO2EucGF1c2VPbkhvdmVyJiYoYi5iaW5kKCJtb3VzZWVudGVyIixsLnBhdXNlKSxiLmJpbmQoIm1vdXNlbGVhdmUiLGwucmVzdW1lKSk7cCYmYS5hbGxvd0NzczNTdXBwb3J0P3coKTpiLnRpbWVyPXNldFRpbWVvdXQodyxhLmRlbGF5QmVmb3JlU3RhcnQpfX0pfTtmLmZuLm1hcnF1ZWUuZGVmYXVsdHM9e2FsbG93Q3NzM1N1cHBvcnQ6ITAsY3NzM2Vhc2luZzoibGluZWFyIixlYXNpbmc6ImxpbmVhciIsDQpkZWxheUJlZm9yZVN0YXJ0OjFFMyxkaXJlY3Rpb246ImxlZnQiLGR1cGxpY2F0ZWQ6ITEsZHVyYXRpb246NUUzLGdhcDoyMCxwYXVzZU9uQ3ljbGU6ITEscGF1c2VPbkhvdmVyOiExLHN0YXJ0VmlzaWJsZTohMX19KShqUXVlcnkpOw=="}},"time_used":17525,"timings":{"blocked":16534,"dns":0,"connect":0,"send":0,"wait":991,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/logo_header+dark.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.323Z","timestamp":1785143908323,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /image/logo_header+dark.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:46 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Fri, 10 Oct 2025 14:36:38 GMT\r\nETag: \"3ecd-640ced861e980\"\r\nAccept-Ranges: bytes\r\nContent-Length: 16077\r\nVary: User-Agent\r\nKeep-Alive: timeout=5, max=94\r\nConnection: Keep-Alive\r\nContent-Type: image/png\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]}],"data":{"size":16077,"size_decoded":16395,"mime_type":"image/png","magic":"PNG image data, 300 x 70, 8-bit/color RGBA, non-interlaced","md5":"76bea9bdbd0d629a2ce21a609e0d7b0d","sha1":"9ddd5474815232d891948b9c3470f49a1cd51881","sha256":"a36de9d83d8e66cd6fa12c86f737354239cf8c3e7139fd2687f50950ac25999d","sha512":"06690c5d045f133748bf737b7995ba77b26cc20096c30e62b255bdd9add03d1078be57289cf6dc303d6ac075dee5f4c72e4eef7faf9d26bda0d722756d65dd60","ssdeep":"384:Wt7IDeUIT2+mSEHIFoB6edk2IAkxjAT1JDdCQ2L0h:WW7q2+jrFqTtcK","tlshash":"4872cf5cd7e67edfd32ec880810f82b8b7661cd4d802ae550b7c6661ab79eca010dc99","first_seen":"2026-07-27T06:18:56.471143Z","last_seen":"2026-07-27T09:20:18.352319Z","times_seen":3,"resource_available":false,"data":"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"}},"time_used":18396,"timings":{"blocked":18184,"dns":0,"connect":0,"send":0,"wait":212,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1xlFQ.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://scromegatrade.com/","date":"2026-07-27T09:18:46.459Z","timestamp":1785143926459,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1xlFQ.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://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.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: 8000\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:16 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:16 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Mon, 15 Sep 2025 16:33:57 GMT\r\ncontent-type: font/woff2\r\nage: 418110\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":8000,"size_decoded":8812,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 8000, version 1.0","md5":"72993dddf88a63e8f226656f7de88e57","sha1":"179f97ec0275f09603a8db94d4380eb584d81cd5","sha256":"f4e80d9dfd374d02989b87a27b5ed4cb78fbb177c27f1478e9a8b0afb7513149","sha512":"7c20165f9d22a86341e841fd58526209017dcde2afe2d0d2a89fe853d95dc69f658d25cf798c71f452dab09843fc808c1ae87a60b1284134163abf5a1d93e50a","ssdeep":"192:GDonmfrEdXT8WrxzRXwyQo3zGEOM7Y2hOMgWnsfYSjv4ENFGwrlKJ:8onPxTzjgyQSzLPXOTIYHJAJ","tlshash":"08f1b0ffa92456c4df692475a5044f27623652b4dd35cb2f496f3e12d2d74224bcc4c1","first_seen":"2023-04-05T18:53:14Z","last_seen":"2026-08-11T07:58:03.022779Z","times_seen":291122,"resource_available":false,"data":"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"}},"time_used":16,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/new/buy_sell_bg.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.521Z","timestamp":1785143926521,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/new/buy_sell_bg.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/css/style.css\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.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://www.youtube.com/embed/tZOSQBP946Q","date":"2026-07-27T09:18:46.739Z","timestamp":1785143926739,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.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://www.youtube.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.youtube.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: 40128\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 02:17:07 GMT\r\nexpires: Fri, 23 Jul 2027 02:17:07 GMT\r\ncache-control: public, max-age=31536000\r\nage: 370899\r\nlast-modified: Thu, 29 May 2025 23:30:55 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":40128,"size_decoded":40941,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 40128, version 1.0","md5":"9a01b69183a9604ab3a439e388b30501","sha1":"8ed1d59003d0dbe6360481017b44665153665fbe","sha256":"20b535fa80c8189e3b87d1803038389960203a886d502bc2ef1857affc2f38d2","sha512":"0e6795255b6eea00b5403fd7e3b904d52776d49ac63a31c2778361262883697943aedcb29feee85694ba6f19eaa34dddb9a5bfe7118f4a25b4757e92c331feca","ssdeep":"768:Vce3jkow68wmT4IBX0tXdlSirS61gSjcz0GPwHbP+w2jec56O:VcI/iEEEtXdFJj+0GPwHbP+w5rO","tlshash":"3703023a5e3ccf1a84157a703950f6d9a8481e548e9d143b4f1ac7bf085dde2209b6d4","first_seen":"2025-01-08T22:59:02.845106Z","last_seen":"2026-08-11T07:56:15.184532Z","times_seen":961540,"resource_available":false,"data":"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"}},"time_used":18,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":16,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/css/navigation.css","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.094Z","timestamp":1785143908094,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/css/navigation.css HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:45 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"e8b8-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 8038\r\nKeep-Alive: timeout=5, max=96\r\nConnection: Keep-Alive\r\nContent-Type: text/css\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":59576,"size_decoded":8399,"mime_type":"text/css","magic":"ASCII text","md5":"c8f8666090883e07c43c886896157556","sha1":"0a8f9fe0f46c959954bd69173062d8b042a2db70","sha256":"c9c5f901eeef711f631164c4cd4108b433cf07adfa16cf1d544bc6f8505bf128","sha512":"fdd15582e7c1073eee77d974340453f597fc5b22e4625019779cd82540b5df21a0bf3823c349f16935ceb43c51100e5017564deb476271a82fef6220ddc4c0a3","ssdeep":"1536:Gww1nwqr7ymxY5XYWlSDWLam+aIjU742TzJq3:Vt9Xt/2","tlshash":"ac4372aa5e936100b127c6049fc54bace33e8017e552cdaeb79e74cedf415c891ae38d","first_seen":"2023-04-07T16:02:15Z","last_seen":"2026-08-09T20:40:44.893108Z","times_seen":2606,"resource_available":false,"data":"LyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLSBSZXZvbHV0aW9uIFNsaWRlciA1LjAgTmF2aWdhdGluIFNraW4gU3R5bGUgIC0KCiBBUkVTIFNLSU4KCmF1dGhvcjogIFRoZW1lUHVuY2gKZW1haWw6ICAgICAgaW5mb0B0aGVtZXB1bmNoLmNvbQp3ZWJzaXRlOiAgICBodHRwOi8vd3d3LnRoZW1lcHVuY2guY29tCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLmFyZXMudHBhcnJvd3MgewogIGN1cnNvcjpwb2ludGVyOwogIGJhY2tncm91bmQ6I2ZmZjsKICBtaW4td2lkdGg6NjBweDsKICAgIG1pbi1oZWlnaHQ6NjBweDsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICBkaXNwbGF5OmJsb2NrOwogIHotaW5kZXg6MTAwOwogICAgYm9yZGVyLXJhZGl1czo1MCU7Cn0KLmFyZXMudHBhcnJvd3M6aG92ZXIgewp9Ci5hcmVzLnRwYXJyb3dzOmJlZm9yZSB7CiAgZm9udC1mYW1pbHk6ICJyZXZpY29ucyI7CiAgZm9udC1zaXplOjI1cHg7CiAgY29sb3I6I2FhYTsKICBkaXNwbGF5OmJsb2NrOwogIGxpbmUtaGVpZ2h0OiA2MHB4OwogIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4zczsKICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgMC4zczsKICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3M7CiAgICB6LWluZGV4OjI7CiAgICBwb3NpdGlvbjpyZWxhdGl2ZTsKfQouYXJlcy50cGFycm93cy50cC1sZWZ0YXJyb3c6YmVmb3JlIHsKICBjb250ZW50OiAiXGU4MWYiOwp9Ci5hcmVzLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6YmVmb3JlIHsKICBjb250ZW50OiAiXGU4MWUiOwp9Ci5hcmVzLnRwYXJyb3dzOmhvdmVyOmJlZm9yZSB7CiBjb2xvcjojMDAwOwogICAgICB9Ci5hcmVzIC50cC10aXRsZS13cmFwIHsgCiAgcG9zaXRpb246YWJzb2x1dGU7CiAgei1pbmRleDoxOwogIGRpc3BsYXk6aW5saW5lLWJsb2NrOwogIGJhY2tncm91bmQ6I2ZmZjsKICBtaW4taGVpZ2h0OjYwcHg7CiAgbGluZS1oZWlnaHQ6NjBweDsKICB0b3A6MHB4OwogIG1hcmdpbi1sZWZ0OjMwcHg7CiAgYm9yZGVyLXJhZGl1czowcHggMzBweCAzMHB4IDBweDsKICBvdmVyZmxvdzpoaWRkZW47CiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzOwogIHRyYW5zZm9ybTpzY2FsZVgoMCk7ICAKICAtd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMCk7ICAKICB0cmFuc2Zvcm0tb3JpZ2luOjAlIDUwJTsgCiAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjowJSA1MCU7Cn0KIC5hcmVzLnRwLXJpZ2h0YXJyb3cgLnRwLXRpdGxlLXdyYXAgeyAKICAgcmlnaHQ6MHB4OwogICBtYXJnaW4tcmlnaHQ6MzBweDttYXJnaW4tbGVmdDowcHg7CiAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjoxMDAlIDUwJTsKYm9yZGVyLXJhZGl1czozMHB4IDBweCAwcHggMzBweDsKIH0KLmFyZXMudHBhcnJvd3M6aG92ZXIgLnRwLXRpdGxlLXdyYXAgewogIHRyYW5zZm9ybTpzY2FsZVgoMSkgc2NhbGVZKDEpOwogICAgLXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpIHNjYWxlWSgxKTsKfQouYXJlcyAudHAtYXJyLXRpdGxlaG9sZGVyIHsKICBwb3NpdGlvbjpyZWxhdGl2ZTsKICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3M7CiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7CiAgdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjAwcHgpOyAgCiAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOwogIGNvbG9yOiMwMDA7CiAgZm9udC13ZWlnaHQ6NDAwOwogIGZvbnQtc2l6ZToxNHB4OwogIGxpbmUtaGVpZ2h0OjYwcHg7CiAgd2hpdGUtc3BhY2U6bm93cmFwOwogIHBhZGRpbmc6MHB4IDIwcHg7CiAgbWFyZ2luLWxlZnQ6MTBweDsKICBvcGFjaXR5OjA7Cn0KCi5hcmVzLnRwLXJpZ2h0YXJyb3cgLnRwLWFyci10aXRsZWhvbGRlciB7CiAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDBweCk7IAogICBtYXJnaW4tbGVmdDowcHg7IG1hcmdpbi1yaWdodDoxMHB4OwogICAgICB9CgouYXJlcy50cGFycm93czpob3ZlciAudHAtYXJyLXRpdGxlaG9sZGVyIHsKICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMHB4KTsKICAgLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwcHgpOwogIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7CiAgb3BhY2l0eToxOwp9CgovKiBCVUxMRVRTICovCi5hcmVzLnRwLWJ1bGxldHMgewp9Ci5hcmVzLnRwLWJ1bGxldHM6YmVmb3JlIHsKCWNvbnRlbnQ6IiAiOwoJcG9zaXRpb246YWJzb2x1dGU7Cgl3aWR0aDoxMDAlOwoJaGVpZ2h0OjEwMCU7CgliYWNrZ3JvdW5kOnRyYW5zcGFyZW50OwoJcGFkZGluZzoxMHB4OwoJbWFyZ2luLWxlZnQ6LTEwcHg7bWFyZ2luLXRvcDotMTBweDsKCWJveC1zaXppbmc6Y29udGVudC1ib3g7Cn0KLmFyZXMgLnRwLWJ1bGxldCB7Cgl3aWR0aDoxM3B4OwoJaGVpZ2h0OjEzcHg7Cglwb3NpdGlvbjphYnNvbHV0ZTsKCWJhY2tncm91bmQ6I2U1ZTVlNTsKCWJvcmRlci1yYWRpdXM6NTAlOwoJY3Vyc29yOiBwb2ludGVyOwoJYm94LXNpemluZzpjb250ZW50LWJveDsKfQouYXJlcyAudHAtYnVsbGV0OmhvdmVyLAouYXJlcyAudHAtYnVsbGV0LnNlbGVjdGVkIHsKCWJhY2tncm91bmQ6I2ZmZjsKfQouYXJlcyAudHAtYnVsbGV0LXRpdGxlIHsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICBjb2xvcjojODg4OwogIGZvbnQtc2l6ZToxMnB4OwogIHBhZGRpbmc6MHB4IDEwcHg7CiAgZm9udC13ZWlnaHQ6NjAwOwogIHJpZ2h0OjI3cHg7CiAgdG9wOi00cHg7CiAgYmFja2dyb3VuZDojZmZmOwogIGJhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjc1KTsKICB2aXNpYmlsaXR5OmhpZGRlbjsKICB0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjBweCk7CiAgLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjBweCk7CiAgdHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb246dHJhbnNmb3JtIDAuM3M7CiAgbGluZS1oZWlnaHQ6MjBweDsKICB3aGl0ZS1zcGFjZTpub3dyYXA7Cn0gICAgIAoKLmFyZXMgLnRwLWJ1bGxldC10aXRsZTphZnRlciB7CiAgICB3aWR0aDogMHB4OwoJaGVpZ2h0OiAwcHg7Cglib3JkZXItc3R5bGU6IHNvbGlkOwoJYm9yZGVyLXdpZHRoOiAxMHB4IDAgMTBweCAxMHB4OwoJYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCByZ2JhKDI1NSwyNTUsMjU1LDAuNzUpOwoJY29udGVudDoiICI7CiAgICBwb3NpdGlvbjphYnNvbHV0ZTsKICAgIHJpZ2h0Oi0xMHB4OwoJdG9wOjBweDsKfQogICAgCi5hcmVzIC50cC1idWxsZXQ6aG92ZXIgLnRwLWJ1bGxldC10aXRsZXsKICB2aXNpYmlsaXR5OnZpc2libGU7CiAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKDBweCk7CiAgLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwcHgpOwp9CgouYXJlcyAudHAtYnVsbGV0LnNlbGVjdGVkOmhvdmVyIC50cC1idWxsZXQtdGl0bGUgewogICAgYmFja2dyb3VuZDojZmZmOwogICAgICAgIH0KLmFyZXMgLnRwLWJ1bGxldC5zZWxlY3RlZDpob3ZlciAudHAtYnVsbGV0LXRpdGxlOmFmdGVyIHsKICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZmZjsKfQouYXJlcy50cC1idWxsZXRzOmhvdmVyIC50cC1idWxsZXQtdGl0bGUgewogICAgICAgIHZpc2liaWxpdHk6aGlkZGVuOwp9Ci5hcmVzLnRwLWJ1bGxldHM6aG92ZXIgLnRwLWJ1bGxldDpob3ZlciAudHAtYnVsbGV0LXRpdGxlIHsKICAgIHZpc2liaWxpdHk6dmlzaWJsZTsKICAgICAgfQoKLyogVEFCUyAqLwouYXJlcyAudHAtdGFiIHsgCiAgb3BhY2l0eToxOyAgICAgIAogIHBhZGRpbmc6MTBweDsKICBib3gtc2l6aW5nOmJvcmRlci1ib3g7CiAgZm9udC1mYW1pbHk6ICJSb2JvdG8iLCBzYW5zLXNlcmlmOwogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlNWU1OwogfQouYXJlcyAudHAtdGFiLWltYWdlIAp7IAogIHdpZHRoOjYwcHg7CiAgaGVpZ2h0OjYwcHg7IG1heC1oZWlnaHQ6MTAwJTsgbWF4LXdpZHRoOjEwMCU7CiAgcG9zaXRpb246cmVsYXRpdmU7CiAgZGlzcGxheTppbmxpbmUtYmxvY2s7CiAgZmxvYXQ6bGVmdDsKCn0KLmFyZXMgLnRwLXRhYi1jb250ZW50IAp7CiAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMCk7IAogICAgcG9zaXRpb246cmVsYXRpdmU7CiAgICBwYWRkaW5nOjE1cHggMTVweCAxNXB4IDg1cHg7CiBsZWZ0OjBweDsKIG92ZXJmbG93OmhpZGRlbjsKIG1hcmdpbi10b3A6LTE1cHg7CiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7CiAgICBjb2xvcjojMzMzOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgd2lkdGg6MTAwJTsKICAgIGhlaWdodDoxMDAlOwogcG9zaXRpb246YWJzb2x1dGU7IH0KLmFyZXMgLnRwLXRhYi1kYXRlCiAgewogIGRpc3BsYXk6YmxvY2s7CiAgY29sb3I6ICNhYWE7CiAgZm9udC13ZWlnaHQ6NTAwOwogIGZvbnQtc2l6ZToxMnB4OwogIG1hcmdpbi1ib3R0b206MHB4OwogIH0KLmFyZXMgLnRwLXRhYi10aXRsZSAKewogICAgZGlzcGxheTpibG9jazsJCiAgICB0ZXh0LWFsaWduOmxlZnQ7CiAgICBjb2xvcjojMzMzOwogICAgZm9udC1zaXplOjE0cHg7CiAgICBmb250LXdlaWdodDo1MDA7CiAgICB0ZXh0LXRyYW5zZm9ybTpub25lOwogICAgbGluZS1oZWlnaHQ6MTdweDsKfQouYXJlcyAudHAtdGFiOmhvdmVyLAouYXJlcyAudHAtdGFiLnNlbGVjdGVkIHsKCWJhY2tncm91bmQ6I2VlZTsgCn0KCi5hcmVzIC50cC10YWItbWFzayB7Cn0KCi8qIE1FRElBIFFVRVJJRVMgKi8KQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkgewoKfQpAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7Cgp9CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgotIFJldm9sdXRpb24gU2xpZGVyIDUuMCBOYXZpZ2F0aW4gU2tpbiBTdHlsZSAgLQoKIENVU1RPTSBTS0lOCgphdXRob3I6ICBUaGVtZVB1bmNoCmVtYWlsOiAgICAgIGluZm9AdGhlbWVwdW5jaC5jb20Kd2Vic2l0ZTogICAgaHR0cDovL3d3dy50aGVtZXB1bmNoLmNvbQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qIEFSUk9XUyAqLwouY3VzdG9tLnRwYXJyb3dzIHsKCWN1cnNvcjpwb2ludGVyOwoJYmFja2dyb3VuZDojMDAwOwoJYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNSk7Cgl3aWR0aDo0MHB4OwoJaGVpZ2h0OjQwcHg7Cglwb3NpdGlvbjphYnNvbHV0ZTsKCWRpc3BsYXk6YmxvY2s7Cgl6LWluZGV4OjEwMDAwOwp9Ci5jdXN0b20udHBhcnJvd3M6aG92ZXIgewoJYmFja2dyb3VuZDojMDAwOwp9Ci5jdXN0b20udHBhcnJvd3M6YmVmb3JlIHsKCWZvbnQtZmFtaWx5OiAicmV2aWNvbnMiOwoJZm9udC1zaXplOjE1cHg7Cgljb2xvcjojZmZmOwoJZGlzcGxheTpibG9jazsKCWxpbmUtaGVpZ2h0OiA0MHB4OwoJdGV4dC1hbGlnbjogY2VudGVyOwp9Ci5jdXN0b20udHBhcnJvd3MudHAtbGVmdGFycm93OmJlZm9yZSB7Cgljb250ZW50OiAiXGU4MjQiOwp9Ci5jdXN0b20udHBhcnJvd3MudHAtcmlnaHRhcnJvdzpiZWZvcmUgewoJY29udGVudDogIlxlODI1IjsKfQoKCgovKiBCVUxMRVRTICovCi5jdXN0b20udHAtYnVsbGV0cyB7Cn0KLmN1c3RvbS50cC1idWxsZXRzOmJlZm9yZSB7Cgljb250ZW50OiIgIjsKCXBvc2l0aW9uOmFic29sdXRlOwoJd2lkdGg6MTAwJTsKCWhlaWdodDoxMDAlOwoJYmFja2dyb3VuZDp0cmFuc3BhcmVudDsKCXBhZGRpbmc6MTBweDsKCW1hcmdpbi1sZWZ0Oi0xMHB4O21hcmdpbi10b3A6LTEwcHg7Cglib3gtc2l6aW5nOmNvbnRlbnQtYm94Owp9Ci5jdXN0b20gLnRwLWJ1bGxldCB7Cgl3aWR0aDoxMnB4OwoJaGVpZ2h0OjEycHg7Cglwb3NpdGlvbjphYnNvbHV0ZTsKCWJhY2tncm91bmQ6I2FhYTsKICAgIGJhY2tncm91bmQ6cmdiYSgxMjUsMTI1LDEyNSwwLjUpOwoJY3Vyc29yOiBwb2ludGVyOwoJYm94LXNpemluZzpjb250ZW50LWJveDsKfQouY3VzdG9tIC50cC1idWxsZXQ6aG92ZXIsCi5jdXN0b20gLnRwLWJ1bGxldC5zZWxlY3RlZCB7CgliYWNrZ3JvdW5kOnJnYigxMjUsMTI1LDEyNSk7Cn0KLmN1c3RvbSAudHAtYnVsbGV0LWltYWdlIHsKfQouY3VzdG9tIC50cC1idWxsZXQtdGl0bGUgewp9CgoKLyogVEhVTUJTICovCgoKLyogVEFCUyAqLwoKCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi0gUmV2b2x1dGlvbiBTbGlkZXIgNS4wIE5hdmlnYXRpbiBTa2luIFN0eWxlICAtCgogRElPTkUgU0tJTgoKYXV0aG9yOiAgVGhlbWVQdW5jaAplbWFpbDogICAgICBpbmZvQHRoZW1lcHVuY2guY29tCndlYnNpdGU6ICAgIGh0dHA6Ly93d3cudGhlbWVwdW5jaC5jb20KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwovKiBBUlJPV1MgKi8KLmRpb25lLnRwYXJyb3dzIHsKICBoZWlnaHQ6MTAwJTsKICB3aWR0aDoxMDBweDsKICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50OwogIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwKTsKICBsaW5lLWhlaWdodDoxMDAlOwogIHRyYW5zaXRpb246YWxsIDAuM3M7Ci13ZWJraXQtdHJhbnNpdGlvbjphbGwgMC4zczsKfQoKLmRpb25lLnRwYXJyb3dzOmhvdmVyIHsKIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjQ1KTsKIH0KLmRpb25lIC50cC1hcnItaW1nd3JhcHBlciB7CiB3aWR0aDoxMDBweDsKIGxlZnQ6MHB4OwogcG9zaXRpb246YWJzb2x1dGU7CiBoZWlnaHQ6MTAwJTsKIHRvcDowcHg7CiBvdmVyZmxvdzpoaWRkZW47CiB9Ci5kaW9uZS50cC1yaWdodGFycm93IC50cC1hcnItaW1nd3JhcHBlciB7CmxlZnQ6YXV0bzsKcmlnaHQ6MHB4Owp9CgouZGlvbmUgLnRwLWFyci1pbWdob2xkZXIgewpiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7CmJhY2tncm91bmQtc2l6ZTpjb3ZlcjsKd2lkdGg6MTAwcHg7CmhlaWdodDoxMDAlOwp0b3A6MHB4Owp2aXNpYmlsaXR5OmhpZGRlbjsKdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwcHgpOwotd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MHB4KTsKdHJhbnNpdGlvbjphbGwgMC4zczsKLXdlYmtpdC10cmFuc2l0aW9uOmFsbCAwLjNzOwpvcGFjaXR5OjA7CmxlZnQ6MHB4Owp9CgouZGlvbmUudHBhcnJvd3MudHAtcmlnaHRhcnJvdyAudHAtYXJyLWltZ2hvbGRlciB7CiAgcmlnaHQ6MHB4OwogIGxlZnQ6YXV0bzsKICB0cmFuc2Zvcm06dHJhbnNsYXRlWCg1MHB4KTsKIC13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoNTBweCk7Cn0KCi5kaW9uZS50cGFycm93czpiZWZvcmUgewpwb3NpdGlvbjphYnNvbHV0ZTsKbGluZS1oZWlnaHQ6MzBweDsKbWFyZ2luLWxlZnQ6LTIycHg7CnRvcDo1MCU7CmxlZnQ6NTAlOwpmb250LXNpemU6MzBweDsKbWFyZ2luLXRvcDotMTVweDsKdHJhbnNpdGlvbjphbGwgMC4zczsKLXdlYmtpdC10cmFuc2l0aW9uOmFsbCAwLjNzOwp9CgouZGlvbmUudHBhcnJvd3MudHAtcmlnaHRhcnJvdzpiZWZvcmUgewptYXJnaW4tbGVmdDo2cHg7Cn0KCi5kaW9uZS50cGFycm93czpob3ZlcjpiZWZvcmUgewogIHRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMHB4KTsKLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjBweCk7Cm9wYWNpdHk6MDsKfQoKLmRpb25lLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6aG92ZXI6YmVmb3JlIHsKICB0cmFuc2Zvcm06dHJhbnNsYXRlWCgyMHB4KTsKLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgyMHB4KTsKfQoKLmRpb25lLnRwYXJyb3dzOmhvdmVyIC50cC1hcnItaW1naG9sZGVyIHsKIHRyYW5zZm9ybTp0cmFuc2xhdGVYKDBweCk7Ci13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMHB4KTsKb3BhY2l0eToxOwp2aXNpYmlsaXR5OnZpc2libGU7Cn0KCgoKLyogQlVMTEVUUyAqLwouZGlvbmUgLnRwLWJ1bGxldCB7IAogICAgb3BhY2l0eToxOwogICAgd2lkdGg6NTBweDsKICAgIGhlaWdodDo1MHB4OyAgICAKICAgIHBhZGRpbmc6M3B4OwogICAgYmFja2dyb3VuZDojMDAwOwogICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMjUpOwogICAgbWFyZ2luOjBweDsKICAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDsKICAgIHRyYW5zaXRpb246YWxsIDAuM3M7CiAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7CgogIH0KCi5kaW9uZSAudHAtYnVsbGV0LWltYWdlIHsKICAgZGlzcGxheTpibG9jazsKICAgYm94LXNpemluZzpib3JkZXItYm94OwogICBwb3NpdGlvbjpyZWxhdGl2ZTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgNXB4IDVweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuMjUpOwogIC1tb3otYm94LXNoYWRvdzogaW5zZXQgNXB4IDVweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuMjUpOwogIGJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjI1KTsKICB3aWR0aDo0NHB4OwogIGhlaWdodDo0NHB4OwogIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjsKICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7CiB9ICAKLmRpb25lIC50cC1idWxsZXQtdGl0bGUgeyAKICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgCiAgIGJvdHRvbTo2NXB4OwogICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOwogICAgIGxlZnQ6NTAlOwogICAgIGJhY2tncm91bmQ6IzAwMDsKICAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC43NSk7CiAgICAgY29sb3I6I2ZmZjsKICAgICBwYWRkaW5nOjEwcHggMzBweDsKICAgICBib3JkZXItcmFkaXVzOjRweDsKICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjRweDsKICAgICBvcGFjaXR5OjA7CiAgICAgIHRyYW5zaXRpb246YWxsIDAuM3M7CiAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMC4wMDFweCkgdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDE0cHgpOwogICAgdHJhbnNmb3JtLW9yaWdpbjo1MCUgMTAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDAuMDAxcHgpIHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgxNHB4KTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjo1MCUgMTAwJTsKICAgIG9wYWNpdHk6MDsKICAgIHdoaXRlLXNwYWNlOm5vd3JhcDsKIH0KCi5kaW9uZSAudHAtYnVsbGV0OmhvdmVyIC50cC1idWxsZXQtdGl0bGUgewogICAgIHRyYW5zZm9ybTpyb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVgoLTUwJSk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTpyb3RhdGVYKDBkZWcpIHRyYW5zbGF0ZVgoLTUwJSk7CiAgICBvcGFjaXR5OjE7Cn0KCi5kaW9uZSAudHAtYnVsbGV0LnNlbGVjdGVkLAouZGlvbmUgLnRwLWJ1bGxldDpob3ZlciAgewogIAogICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDEpOwogIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwxKSAwJSwgcmdiYSgxMTksMTE5LDExOSwxKSAxMDAlKTsKICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgcmdiYSgyNTUsMjU1LDI1NSwxKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgxMTksMTE5LDExOSwxKSkpOwogIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwxKSAwJSwgcmdiYSgxMTksMTE5LDExOSwxKSAxMDAlKTsKICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDAlLCByZ2JhKDExOSwxMTksMTE5LDEpIDEwMCUpOwogIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDAlLCByZ2JhKDExOSwxMTksMTE5LDEpIDEwMCUpOwogIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjU1LDI1NSwyNTUsMSkgMCUsIHJnYmEoMTE5LDExOSwxMTksMSkgMTAwJSk7CiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9IiNmZmZmZmYiLCBlbmRDb2xvcnN0cj0iIzc3Nzc3NyIsIEdyYWRpZW50VHlwZT0wICk7CiAKICAgICAgfQouZGlvbmUgLnRwLWJ1bGxldC10aXRsZTphZnRlciB7CiAgICAgICAgY29udGVudDoiICI7CiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7CiAgICAgICAgbGVmdDo1MCU7CiAgICAgICAgbWFyZ2luLWxlZnQ6LThweDsKICAgICAgICB3aWR0aDogMDsKICAgIGhlaWdodDogMDsKICAgIGJvcmRlci1zdHlsZTogc29saWQ7CiAgICBib3JkZXItd2lkdGg6IDhweCA4cHggMCA4cHg7CiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsMC43NSkgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7CiAgICAgICAgYm90dG9tOi04cHg7CiAgIH0KCgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgotIFJldm9sdXRpb24gU2xpZGVyIDUuMCBOYXZpZ2F0aW4gU2tpbiBTdHlsZSAgLQoKIEVSSU5ZRU4gU0tJTgoKYXV0aG9yOiAgVGhlbWVQdW5jaAplbWFpbDogICAgICBpbmZvQHRoZW1lcHVuY2guY29tCndlYnNpdGU6ICAgIGh0dHA6Ly93d3cudGhlbWVwdW5jaC5jb20KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwovKiBBUlJPV1MgKi8KLmVyaW55ZW4udHBhcnJvd3MgewogIGN1cnNvcjpwb2ludGVyOwogIGJhY2tncm91bmQ6IzAwMDsKICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC41KTsKICBtaW4td2lkdGg6NzBweDsKICBtaW4taGVpZ2h0OjcwcHg7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgZGlzcGxheTpibG9jazsKICB6LWluZGV4OjEwMDA7CiAgYm9yZGVyLXJhZGl1czozNXB4OyAgIAp9CgouZXJpbnllbi50cGFycm93czpiZWZvcmUgewogIGZvbnQtZmFtaWx5OiAicmV2aWNvbnMiOwogIGZvbnQtc2l6ZToyMHB4OwogIGNvbG9yOiNmZmY7CiAgZGlzcGxheTpibG9jazsKICBsaW5lLWhlaWdodDogNzBweDsKICB0ZXh0LWFsaWduOiBjZW50ZXI7ICAgIAogIHotaW5kZXg6MjsKICBwb3NpdGlvbjpyZWxhdGl2ZTsKfQouZXJpbnllbi50cGFycm93cy50cC1sZWZ0YXJyb3c6YmVmb3JlIHsKICBjb250ZW50OiAiXGU4MjQiOwp9Ci5lcmlueWVuLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6YmVmb3JlIHsKICBjb250ZW50OiAiXGU4MjUiOwp9CgouZXJpbnllbiAudHAtdGl0bGUtd3JhcCB7IAogIHBvc2l0aW9uOmFic29sdXRlOwogIHotaW5kZXg6MTsKICBkaXNwbGF5OmlubGluZS1ibG9jazsKICBiYWNrZ3JvdW5kOiMwMDA7CiAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNSk7CiAgbWluLWhlaWdodDo3MHB4OwogIGxpbmUtaGVpZ2h0OjcwcHg7CiAgdG9wOjBweDsKICBtYXJnaW4tbGVmdDowcHg7CiAgYm9yZGVyLXJhZGl1czozNXB4OwogIG92ZXJmbG93OmhpZGRlbjsgCiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IDAuM3M7CiAgLW1vei10cmFuc2l0aW9uOm9wYWNpdHkgMC4zczsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7CiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApOwogIHRyYW5zZm9ybTogc2NhbGUoMCk7ICAKICB2aXNpYmlsaXR5OmhpZGRlbjsKICBvcGFjaXR5OjA7Cn0KCi5lcmlueWVuLnRwYXJyb3dzOmhvdmVyIC50cC10aXRsZS13cmFwewogIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsKICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7CiAgdHJhbnNmb3JtOiBzY2FsZSgxKTsKICBvcGFjaXR5OjE7CiAgdmlzaWJpbGl0eTp2aXNpYmxlOwp9CiAgICAgICAgCiAuZXJpbnllbi50cC1yaWdodGFycm93IC50cC10aXRsZS13cmFwIHsgCiAgIHJpZ2h0OjBweDsKICAgbWFyZ2luLXJpZ2h0OjBweDttYXJnaW4tbGVmdDowcHg7CiAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjoxMDAlIDUwJTsKICBib3JkZXItcmFkaXVzOjM1cHg7CiAgcGFkZGluZy1yaWdodDoyMHB4OwogIHBhZGRpbmctbGVmdDoxMHB4OwogfQoKCi5lcmlueWVuLnRwLWxlZnRhcnJvdyAudHAtdGl0bGUtd3JhcCB7IAogICBwYWRkaW5nLWxlZnQ6MjBweDsKICBwYWRkaW5nLXJpZ2h0OjEwcHg7Cn0KCi5lcmlueWVuIC50cC1hcnItdGl0bGVob2xkZXIgewogIGxldHRlci1zcGFjaW5nOiAzcHg7CiAgIHBvc2l0aW9uOnJlbGF0aXZlOwogIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zczsKICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zczsKICB0cmFuc2Zvcm06dHJhbnNsYXRlWCgyMDBweCk7ICAKICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgY29sb3I6I2ZmZjsKICBmb250LXdlaWdodDo2MDA7CiAgZm9udC1zaXplOjEzcHg7CiAgbGluZS1oZWlnaHQ6NzBweDsKICB3aGl0ZS1zcGFjZTpub3dyYXA7CiAgcGFkZGluZzowcHggMjBweDsKICBtYXJnaW4tbGVmdDoxMXB4OwogIG9wYWNpdHk6MDsgIAp9CgouZXJpbnllbiAudHAtYXJyLWltZ2hvbGRlciB7CiAgd2lkdGg6MTAwJTsKICBoZWlnaHQ6MTAwJTsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICB0b3A6MHB4OwogIGxlZnQ6MHB4OwogIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyIGNlbnRlcjsKICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7CiAgICB9CiAuZXJpbnllbiAudHAtYXJyLWltZy1vdmVyIHsKICAgd2lkdGg6MTAwJTsKICBoZWlnaHQ6MTAwJTsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICB0b3A6MHB4OwogIGxlZnQ6MHB4OwogICBiYWNrZ3JvdW5kOiMwMDA7CiAgIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjUpOwogICAgICAgIH0KLmVyaW55ZW4udHAtcmlnaHRhcnJvdyAudHAtYXJyLXRpdGxlaG9sZGVyIHsKICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwMHB4KTsgCiAgIG1hcmdpbi1sZWZ0OjBweDsgbWFyZ2luLXJpZ2h0OjExcHg7CiAgICAgIH0KCi5lcmlueWVuLnRwYXJyb3dzOmhvdmVyIC50cC1hcnItdGl0bGVob2xkZXIgewogICB0cmFuc2Zvcm06dHJhbnNsYXRlWCgwcHgpOwogICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDBweCk7CiAgdHJhbnNpdGlvbi1kZWxheTogMC4xczsKICBvcGFjaXR5OjE7Cn0KCi8qIEJVTExFVFMgKi8KLmVyaW55ZW4udHAtYnVsbGV0cyB7Cn0KLmVyaW55ZW4udHAtYnVsbGV0czpiZWZvcmUgewoJY29udGVudDoiICI7Cglwb3NpdGlvbjphYnNvbHV0ZTsKCXdpZHRoOjEwMCU7CgloZWlnaHQ6MTAwJTsKCWJhY2tncm91bmQ6ICM1NTU1NTU7IC8qIG9sZCBicm93c2VycyAqLwogICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgIzU1NTU1NSAwJSwgIzIyMjIyMiAxMDAlKTsgLyogZmYzLjYrICovCiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCM1NTU1NTUpLCBjb2xvci1zdG9wKDEwMCUsIzIyMjIyMikpOyAvKiBjaHJvbWUsc2FmYXJpNCsgKi8KICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgICM1NTU1NTUgMCUsIzIyMjIyMiAxMDAlKTsgLyogY2hyb21lMTArLHNhZmFyaTUuMSsgKi8KICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICAjNTU1NTU1IDAlLCMyMjIyMjIgMTAwJSk7IC8qIG9wZXJhIDExLjEwKyAqLwogICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICAjNTU1NTU1IDAlLCMyMjIyMjIgMTAwJSk7IC8qIGllMTArICovCiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgIzU1NTU1NSAwJSwjMjIyMjIyIDEwMCUpOyAvKiB3M2MgKi8KICAgIGZpbHRlcjogcHJvZ2lkOmR4aW1hZ2V0cmFuc2Zvcm0ubWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydGNvbG9yc3RyPSIjNTU1NTU1IiwgZW5kY29sb3JzdHI9IiMyMjIyMjIiLGdyYWRpZW50dHlwZT0wICk7IC8qIGllNi05ICovCglwYWRkaW5nOjEwcHggMTVweDsKCW1hcmdpbi1sZWZ0Oi0xNXB4O21hcmdpbi10b3A6LTEwcHg7Cglib3gtc2l6aW5nOmNvbnRlbnQtYm94OwogICBib3JkZXItcmFkaXVzOjEwcHg7CiAgIGJveC1zaGFkb3c6MHB4IDBweCAycHggMXB4IHJnYmEoMzMsMzMsMzMsMC4zKTsKfQouZXJpbnllbiAudHAtYnVsbGV0IHsKCXdpZHRoOjEzcHg7CgloZWlnaHQ6MTNweDsKCXBvc2l0aW9uOmFic29sdXRlOwoJYmFja2dyb3VuZDojMTExOwkKCWJvcmRlci1yYWRpdXM6NTAlOwoJY3Vyc29yOiBwb2ludGVyOwoJYm94LXNpemluZzpjb250ZW50LWJveDsKfQouZXJpbnllbiAudHAtYnVsbGV0OmhvdmVyLAouZXJpbnllbiAudHAtYnVsbGV0LnNlbGVjdGVkIHsKCWJhY2tncm91bmQ6ICNlNWU1ZTU7IC8qIG9sZCBicm93c2VycyAqLwpiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICAjZTVlNWU1IDAlLCAjOTk5OTk5IDEwMCUpOyAvKiBmZjMuNisgKi8KYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwjZTVlNWU1KSwgY29sb3Itc3RvcCgxMDAlLCM5OTk5OTkpKTsgLyogY2hyb21lLHNhZmFyaTQrICovCmJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgICNlNWU1ZTUgMCUsIzk5OTk5OSAxMDAlKTsgLyogY2hyb21lMTArLHNhZmFyaTUuMSsgKi8KYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgICNlNWU1ZTUgMCUsIzk5OTk5OSAxMDAlKTsgLyogb3BlcmEgMTEuMTArICovCmJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAgI2U1ZTVlNSAwJSwjOTk5OTk5IDEwMCUpOyAvKiBpZTEwKyAqLwpiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgI2U1ZTVlNSAwJSwjOTk5OTk5IDEwMCUpOyAvKiB3M2MgKi8KZmlsdGVyOiBwcm9naWQ6ZHhpbWFnZXRyYW5zZm9ybS5taWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Y29sb3JzdHI9IiNlNWU1ZTUiLCBlbmRjb2xvcnN0cj0iIzk5OTk5OSIsZ3JhZGllbnR0eXBlPTAgKTsgLyogaWU2LTkgKi8KICBib3JkZXI6MXB4IHNvbGlkICM1NTU7CiAgd2lkdGg6MTJweDtoZWlnaHQ6MTJweDsKfQouZXJpbnllbiAudHAtYnVsbGV0LWltYWdlIHsKfQouZXJpbnllbiAudHAtYnVsbGV0LXRpdGxlIHsKfQoKCi8qIFRIVU1CUyAqLwouZXJpbnllbiAudHAtdGh1bWIgewpvcGFjaXR5OjEKfQoKLmVyaW55ZW4gLnRwLXRodW1iLW92ZXIgewogIGJhY2tncm91bmQ6IzAwMDsKICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4yNSk7CiAgd2lkdGg6MTAwJTsKICBoZWlnaHQ6MTAwJTsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICB0b3A6MHB4OwogIGxlZnQ6MHB4OwogIHotaW5kZXg6MTsKICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7CiAgdHJhbnNpdGlvbjphbGwgMC4zczsKfQoKLmVyaW55ZW4gLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKICBmb250LWZhbWlseTogInJldmljb25zIjsKICBmb250LXNpemU6MTJweDsKICBjb2xvcjojYWFhOwogIGNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43NSk7CiAgZGlzcGxheTpibG9jazsKICBsaW5lLWhlaWdodDogMTJweDsKICB0ZXh0LWFsaWduOiBsZWZ0OyAgICAKICB6LWluZGV4OjI7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgdG9wOjIwcHg7CiAgcmlnaHQ6MjBweDsKICB6LWluZGV4OjI7Cn0KLmVyaW55ZW4gLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGU4MjUiOwp9CgouZXJpbnllbiAudHAtdGh1bWItdGl0bGUgewogIGZvbnQtZmFtaWx5OiJSYWxld2F5IjsKICBsZXR0ZXItc3BhY2luZzoxcHg7CiAgZm9udC1zaXplOjEycHg7CiAgY29sb3I6I2ZmZjsKICBkaXNwbGF5OmJsb2NrOwogIGxpbmUtaGVpZ2h0OiAxNXB4OwogIHRleHQtYWxpZ246IGxlZnQ7ICAgIAogIHotaW5kZXg6MjsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICB0b3A6MHB4OwogIGxlZnQ6MHB4OwogIHotaW5kZXg6MjsKICBwYWRkaW5nOjIwcHggMzVweCAyMHB4IDIwcHg7CiAgd2lkdGg6MTAwJTsKICBoZWlnaHQ6MTAwJTsKICBib3gtc2l6aW5nOmJvcmRlci1ib3g7CiAgdHJhbnNpdGlvbjphbGwgMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7CiAgZm9udC13ZWlnaHQ6NTAwOwp9CgouZXJpbnllbiAudHAtdGh1bWIuc2VsZWN0ZWQgLnRwLXRodW1iLW1vcmU6YmVmb3JlLAouZXJpbnllbiAudHAtdGh1bWI6aG92ZXIgLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKIGNvbG9yOiNhYWE7Cgp9CgouZXJpbnllbiAudHAtdGh1bWIuc2VsZWN0ZWQgLnRwLXRodW1iLW92ZXIsCi5lcmlueWVuIC50cC10aHVtYjpob3ZlciAudHAtdGh1bWItb3ZlciB7CiBiYWNrZ3JvdW5kOiNmZmY7Cn0KLmVyaW55ZW4gLnRwLXRodW1iLnNlbGVjdGVkIC50cC10aHVtYi10aXRsZSwKLmVyaW55ZW4gLnRwLXRodW1iOmhvdmVyIC50cC10aHVtYi10aXRsZSB7CiAgY29sb3I6IzAwMDsKCn0KCgovKiBUQUJTICovCi5lcmlueWVuIC50cC10YWItdGl0bGUgewogICAgY29sb3I6I2E4ZDhlZTsKICAgIGZvbnQtc2l6ZToxM3B4OwogICAgZm9udC13ZWlnaHQ6NzAwOwogICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOwogICAgZm9udC1mYW1pbHk6IlJvYm90byBTbGFiIgogICAgbWFyZ2luLWJvdHRvbTo1cHg7Cn0KCi5lcmlueWVuIC50cC10YWItZGVzYyB7Cglmb250LXNpemU6MThweDsKICAgIGZvbnQtd2VpZ2h0OjQwMDsKICAgIGNvbG9yOiNmZmY7CiAgICBsaW5lLWhlaWdodDoyNXB4OwoJZm9udC1mYW1pbHk6IlJvYm90byBTbGFiIjsKfQogICAgICAKCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi0gUmV2b2x1dGlvbiBTbGlkZXIgNS4wIE5hdmlnYXRpbiBTa2luIFN0eWxlICAtCgogR1lHRVMgU0tJTgoKYXV0aG9yOiAgVGhlbWVQdW5jaAplbWFpbDogICAgICBpbmZvQHRoZW1lcHVuY2guY29tCndlYnNpdGU6ICAgIGh0dHA6Ly93d3cudGhlbWVwdW5jaC5jb20KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwovKiBBUlJPV1MgKi8KCgovKiBCVUxMRVRTICovCi5neWdlcy50cC1idWxsZXRzIHsKfQouZ3lnZXMudHAtYnVsbGV0czpiZWZvcmUgewoJY29udGVudDoiICI7Cglwb3NpdGlvbjphYnNvbHV0ZTsKCXdpZHRoOjEwMCU7CgloZWlnaHQ6MTAwJTsKCWJhY2tncm91bmQ6ICM3Nzc3Nzc7IC8qIE9sZCBicm93c2VycyAqLwogICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgIzc3Nzc3NyAwJSwgIzY2NjY2NiAxMDAlKTsgCiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCAKICAgIGNvbG9yLXN0b3AoMCUsIzc3Nzc3NyksIGNvbG9yLXN0b3AoMTAwJSwjNjY2NjY2KSk7IAogICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAgIzc3Nzc3NyAwJSwjNjY2NjY2IDEwMCUpOyAKICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICAjNzc3Nzc3IDAlLCM2NjY2NjYgMTAwJSk7IAogICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICAjNzc3Nzc3IDAlLCM2NjY2NjYgMTAwJSk7IAogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgICM3Nzc3NzcgMCUsIzY2NjY2NiAxMDAlKTsgCiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0iIzc3Nzc3NyIsIAogICAgZW5kQ29sb3JzdHI9IiM2NjY2NjYiLEdyYWRpZW50VHlwZT0wICk7IAoJcGFkZGluZzoxMHB4OwoJbWFyZ2luLWxlZnQ6LTEwcHg7bWFyZ2luLXRvcDotMTBweDsKCWJveC1zaXppbmc6Y29udGVudC1ib3g7CiAgYm9yZGVyLXJhZGl1czoxMHB4Owp9Ci5neWdlcyAudHAtYnVsbGV0IHsKCXdpZHRoOjEycHg7CgloZWlnaHQ6MTJweDsKCXBvc2l0aW9uOmFic29sdXRlOwoJYmFja2dyb3VuZDojMzMzOwoJYm9yZGVyOjNweCBzb2xpZCAjNDQ0OwoJYm9yZGVyLXJhZGl1czo1MCU7CgljdXJzb3I6IHBvaW50ZXI7Cglib3gtc2l6aW5nOmNvbnRlbnQtYm94Owp9Ci5neWdlcyAudHAtYnVsbGV0OmhvdmVyLAouZ3lnZXMgLnRwLWJ1bGxldC5zZWxlY3RlZCB7CgliYWNrZ3JvdW5kOiAjZmZmZmZmOyAvKiBPbGQgYnJvd3NlcnMgKi8KICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgICNmZmZmZmYgMCUsICNlMWUxZTEgMTAwJSk7IC8qIEZGMy42KyAqLwogICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgCiAgICBjb2xvci1zdG9wKDAlLCNmZmZmZmYpLCBjb2xvci1zdG9wKDEwMCUsI2UxZTFlMSkpOyAvKiBDaHJvbWUsU2FmYXJpNCsgKi8KICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgICNmZmZmZmYgMCUsI2UxZTFlMSAxMDAlKTsgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi8KICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICAjZmZmZmZmIDAlLCNlMWUxZTEgMTAwJSk7IC8qIE9wZXJhIDExLjEwKyAqLwogICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICAjZmZmZmZmIDAlLCNlMWUxZTEgMTAwJSk7IC8qIElFMTArICovCiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgI2ZmZmZmZiAwJSwjZTFlMWUxIDEwMCUpOyAvKiBXM0MgKi8KICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPSIjZmZmZmZmIiwgCiAgICBlbmRDb2xvcnN0cj0iI2UxZTFlMSIsR3JhZGllbnRUeXBlPTAgKTsgLyogSUU2LTkgKi8KCn0KLmd5Z2VzIC50cC1idWxsZXQtaW1hZ2Ugewp9Ci5neWdlcyAudHAtYnVsbGV0LXRpdGxlIHsKfQoJCgovKiBUSFVNQlMgKi8KLmd5Z2VzIC50cC10aHVtYiB7IAogICAgICBvcGFjaXR5OjEKICB9Ci5neWdlcyAudHAtdGh1bWItaW1nLXdyYXAgewogIHBhZGRpbmc6M3B4OwogICAgYmFja2dyb3VuZDojMDAwOwogIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjI1KTsKICBkaXNwbGF5OmlubGluZS1ibG9jazsKCiAgd2lkdGg6MTAwJTsKICBoZWlnaHQ6MTAwJTsKICBwb3NpdGlvbjpyZWxhdGl2ZTsKICBtYXJnaW46MHB4OwogIGJveC1zaXppbmc6Ym9yZGVyLWJveDsKICAgIHRyYW5zaXRpb246YWxsIDAuM3M7CiAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7Cn0KLmd5Z2VzIC50cC10aHVtYi1pbWFnZSB7CiAgIHBhZGRpbmc6M3B4OyAKICAgZGlzcGxheTpibG9jazsKICAgYm94LXNpemluZzpib3JkZXItYm94OwogICBwb3NpdGlvbjpyZWxhdGl2ZTsKICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgNXB4IDVweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuMjUpOwogIC1tb3otYm94LXNoYWRvdzogaW5zZXQgNXB4IDVweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuMjUpOwogIGJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjI1KTsKIH0gIAouZ3lnZXMgLnRwLXRodW1iLXRpdGxlIHsgCiAgICAgcG9zaXRpb246YWJzb2x1dGU7IAogICAgIGJvdHRvbToxMDAlOyAKICAgICBkaXNwbGF5OmlubGluZS1ibG9jazsKICAgICBsZWZ0OjUwJTsKICAgICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC44KTsKICAgICBwYWRkaW5nOjEwcHggMzBweDsKICAgICBib3JkZXItcmFkaXVzOjRweDsKCSAtd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4OwogICAgIG1hcmdpbi1ib3R0b206MjBweDsKICAgICBvcGFjaXR5OjA7CiAgICAgIHRyYW5zaXRpb246YWxsIDAuM3M7CiAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMC4wMDFweCkgdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDE0cHgpOwogICAgdHJhbnNmb3JtLW9yaWdpbjo1MCUgMTAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDAuMDAxcHgpIHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgxNHB4KTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjo1MCUgMTAwJTsKICAgIHdoaXRlLXNwYWNlOm5vd3JhcDsKIH0KLmd5Z2VzIC50cC10aHVtYjpob3ZlciAudHAtdGh1bWItdGl0bGUgewogIAkgdHJhbnNmb3JtOnJvdGF0ZVgoMGRlZykgdHJhbnNsYXRlWCgtNTAlKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVgoMGRlZykgdHJhbnNsYXRlWCgtNTAlKTsKICAgIG9wYWNpdHk6MTsKfQoKLmd5Z2VzIC50cC10aHVtYjpob3ZlciAudHAtdGh1bWItaW1nLXdyYXAsCiAuZ3lnZXMgLnRwLXRodW1iLnNlbGVjdGVkIC50cC10aHVtYi1pbWctd3JhcCB7CgogIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMSk7CiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDAlLCByZ2JhKDExOSwxMTksMTE5LDEpIDEwMCUpOwogIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwyNTUsMjU1LDEpKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDExOSwxMTksMTE5LDEpKSk7CiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDAlLCByZ2JhKDExOSwxMTksMTE5LDEpIDEwMCUpOwogIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMSkgMCUsIHJnYmEoMTE5LDExOSwxMTksMSkgMTAwJSk7CiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMSkgMCUsIHJnYmEoMTE5LDExOSwxMTksMSkgMTAwJSk7CiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsMjU1LDI1NSwxKSAwJSwgcmdiYSgxMTksMTE5LDExOSwxKSAxMDAlKTsKICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0iI2ZmZmZmZiIsIGVuZENvbG9yc3RyPSIjNzc3Nzc3IiwgR3JhZGllbnRUeXBlPTAgKTsKIH0KLmd5Z2VzIC50cC10aHVtYi10aXRsZTphZnRlciB7CiAgICAgICAgY29udGVudDoiICI7CiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7CiAgICAgICAgbGVmdDo1MCU7CiAgICAgICAgbWFyZ2luLWxlZnQ6LThweDsKICAgICAgICB3aWR0aDogMDsKCQloZWlnaHQ6IDA7CgkJYm9yZGVyLXN0eWxlOiBzb2xpZDsKCQlib3JkZXItd2lkdGg6IDhweCA4cHggMCA4cHg7CgkJYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuOCkgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7CiAgICAgICAgYm90dG9tOi04cHg7CiAgIH0KCgovKiBUQUJTICovCi5neWdlcyAudHAtdGFiIHsgCiAgb3BhY2l0eToxOyAgICAgIAogIHBhZGRpbmc6MTBweDsKICBib3gtc2l6aW5nOmJvcmRlci1ib3g7CiAgZm9udC1mYW1pbHk6ICJSb2JvdG8iLCBzYW5zLXNlcmlmOwogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMTUpOwogfQouZ3lnZXMgLnRwLXRhYi1pbWFnZSAKeyAKICB3aWR0aDo2MHB4OwogIGhlaWdodDo2MHB4OyBtYXgtaGVpZ2h0OjEwMCU7IG1heC13aWR0aDoxMDAlOwogIHBvc2l0aW9uOnJlbGF0aXZlOwogIGRpc3BsYXk6aW5saW5lLWJsb2NrOwogIGZsb2F0OmxlZnQ7Cgp9Ci5neWdlcyAudHAtdGFiLWNvbnRlbnQgCnsKICAgIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwKTsgCiAgICBwb3NpdGlvbjpyZWxhdGl2ZTsKICAgIHBhZGRpbmc6MTVweCAxNXB4IDE1cHggODVweDsKIGxlZnQ6MHB4OwogIG92ZXJmbG93OmhpZGRlbjsKIG1hcmdpbi10b3A6LTE1cHg7CiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7CiAgICBjb2xvcjojMzMzOwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgd2lkdGg6MTAwJTsKICAgIGhlaWdodDoxMDAlOwogcG9zaXRpb246YWJzb2x1dGU7IH0KLmd5Z2VzIC50cC10YWItZGF0ZQogIHsKICBkaXNwbGF5OmJsb2NrOwogIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMjUpOwogIGZvbnQtd2VpZ2h0OjUwMDsKICBmb250LXNpemU6MTJweDsKICBtYXJnaW4tYm90dG9tOjBweDsKICB9Ci5neWdlcyAudHAtdGFiLXRpdGxlIAp7CiAgICBkaXNwbGF5OmJsb2NrOyAgCiAgICB0ZXh0LWFsaWduOmxlZnQ7CiAgICBjb2xvcjojZmZmOwogICAgZm9udC1zaXplOjE0cHg7CiAgICBmb250LXdlaWdodDo1MDA7CiAgICB0ZXh0LXRyYW5zZm9ybTpub25lOwogICAgbGluZS1oZWlnaHQ6MTdweDsKfQouZ3lnZXMgLnRwLXRhYjpob3ZlciwKLmd5Z2VzIC50cC10YWIuc2VsZWN0ZWQgewogIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjUpOyAKfQoKLmd5Z2VzIC50cC10YWItbWFzayB7Cn0KCi8qIE1FRElBIFFVRVJJRVMgKi8KQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkgewoKfQpAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7Cgp9CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgotIFJldm9sdXRpb24gU2xpZGVyIDUuMCBOYXZpZ2F0aW4gU2tpbiBTdHlsZSAgLQoKIEhBREVTIFNLSU4KCmF1dGhvcjogIFRoZW1lUHVuY2gKZW1haWw6ICAgICAgaW5mb0B0aGVtZXB1bmNoLmNvbQp3ZWJzaXRlOiAgICBodHRwOi8vd3d3LnRoZW1lcHVuY2guY29tCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLyogQVJST1dTICovCi5oYWRlcy50cGFycm93cyB7CgljdXJzb3I6cG9pbnRlcjsKCWJhY2tncm91bmQ6IzAwMDsKCWJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjE1KTsKCXdpZHRoOjEwMHB4OwoJaGVpZ2h0OjEwMHB4OwoJcG9zaXRpb246YWJzb2x1dGU7CglkaXNwbGF5OmJsb2NrOwoJei1pbmRleDoxMDAwOwp9CgouaGFkZXMudHBhcnJvd3M6YmVmb3JlIHsKCWZvbnQtZmFtaWx5OiAicmV2aWNvbnMiOwoJZm9udC1zaXplOjMwcHg7Cgljb2xvcjojZmZmOwoJZGlzcGxheTpibG9jazsKCWxpbmUtaGVpZ2h0OiAxMDBweDsKCXRleHQtYWxpZ246IGNlbnRlcjsKICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MsIGNvbG9yIDAuM3M7Cn0KLmhhZGVzLnRwYXJyb3dzLnRwLWxlZnRhcnJvdzpiZWZvcmUgewoJY29udGVudDogIlxlODI0IjsKfQouaGFkZXMudHBhcnJvd3MudHAtcmlnaHRhcnJvdzpiZWZvcmUgewoJY29udGVudDogIlxlODI1IjsKfQoKLmhhZGVzLnRwYXJyb3dzOmhvdmVyOmJlZm9yZSB7CiAgIGNvbG9yOiNhYWE7CiAgIGJhY2tncm91bmQ6I2ZmZjsKICAgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDEpOwogfQouaGFkZXMgLnRwLWFyci1hbGx3cmFwcGVyIHsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICBsZWZ0OjEwMCU7CiAgdG9wOjBweDsKICBiYWNrZ3JvdW5kOiM4ODg7IAogIHdpZHRoOjEwMHB4O2hlaWdodDoxMDBweDsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwogIHRyYW5zaXRpb246IGFsbCAwLjNzOwogIC1tcy1maWx0ZXI6ICJwcm9naWQ6ZHhpbWFnZXRyYW5zZm9ybS5taWNyb3NvZnQuYWxwaGEob3BhY2l0eT0wKSI7CiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApOwogIC1tb3otb3BhY2l0eTogMC4wOwogIC1raHRtbC1vcGFjaXR5OiAwLjA7CiAgb3BhY2l0eTogMC4wOwogIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGV5KC05MGRlZyk7CiAgdHJhbnNmb3JtOiByb3RhdGV5KC05MGRlZyk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwJSA1MCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgNTAlOwp9Ci5oYWRlcy50cC1yaWdodGFycm93IC50cC1hcnItYWxsd3JhcHBlciB7CiAgIGxlZnQ6YXV0bzsKICAgcmlnaHQ6MTAwJTsKICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDUwJTsKICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDUwJTsKICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZXkoOTBkZWcpOwogIHRyYW5zZm9ybTogcm90YXRleSg5MGRlZyk7Cn0KCi5oYWRlczpob3ZlciAudHAtYXJyLWFsbHdyYXBwZXIgewogICAtbXMtZmlsdGVyOiAicHJvZ2lkOmR4aW1hZ2V0cmFuc2Zvcm0ubWljcm9zb2Z0LmFscGhhKG9wYWNpdHk9MTAwKSI7CiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7CiAgLW1vei1vcGFjaXR5OiAxOwogIC1raHRtbC1vcGFjaXR5OiAxOwogIG9wYWNpdHk6IDE7ICAKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGV5KDBkZWcpOwogIHRyYW5zZm9ybTogcm90YXRleSgwZGVnKTsKCiB9CiAgICAKLmhhZGVzIC50cC1hcnItaXdyYXBwZXIgewp9Ci5oYWRlcyAudHAtYXJyLWltZ2hvbGRlciB7CiAgYmFja2dyb3VuZC1zaXplOmNvdmVyOwogIHBvc2l0aW9uOmFic29sdXRlOwogIHRvcDowcHg7bGVmdDowcHg7CiAgd2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTsKfQouaGFkZXMgLnRwLWFyci10aXRsZWhvbGRlciB7Cn0KLmhhZGVzIC50cC1hcnItc3VidGl0bGVob2xkZXIgewp9CgoKLyogQlVMTEVUUyAqLwouaGFkZXMudHAtYnVsbGV0cyB7Cn0KLmhhZGVzLnRwLWJ1bGxldHM6YmVmb3JlIHsKCWNvbnRlbnQ6IiAiOwoJcG9zaXRpb246YWJzb2x1dGU7Cgl3aWR0aDoxMDAlOwoJaGVpZ2h0OjEwMCU7CgliYWNrZ3JvdW5kOnRyYW5zcGFyZW50OwoJcGFkZGluZzoxMHB4OwoJbWFyZ2luLWxlZnQ6LTEwcHg7bWFyZ2luLXRvcDotMTBweDsKCWJveC1zaXppbmc6Y29udGVudC1ib3g7Cn0KLmhhZGVzIC50cC1idWxsZXQgewoJd2lkdGg6M3B4OwoJaGVpZ2h0OjNweDsKCXBvc2l0aW9uOmFic29sdXRlOwoJYmFja2dyb3VuZDojODg4OwkKCWN1cnNvcjogcG9pbnRlcjsKICAgIGJvcmRlcjo1cHggc29saWQgI2ZmZjsKCWJveC1zaXppbmc6Y29udGVudC1ib3g7CiAgICBib3gtc2hhZG93OjBweCAwcHggM3B4IDFweCByZ2JhKDAsMCwwLDAuMik7CiAgICAtd2Via2l0LXBlcnNwZWN0aXZlOjQwMDsKICAgIHBlcnNwZWN0aXZlOjQwMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZXooMC4wMXB4KTsKICAgIHRyYW5zZm9ybTp0cmFuc2xhdGV6KDAuMDFweCk7Cn0KLmhhZGVzIC50cC1idWxsZXQ6aG92ZXIsCi5oYWRlcyAudHAtYnVsbGV0LnNlbGVjdGVkIHsKCWJhY2tncm91bmQ6IzU1NTsKICAKfQoKLmhhZGVzIC50cC1idWxsZXQtaW1hZ2UgewogIHBvc2l0aW9uOmFic29sdXRlO3RvcDotODBweDsgbGVmdDotNjBweDt3aWR0aDoxMjBweDtoZWlnaHQ6NjBweDsKICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7CiAgYmFja2dyb3VuZC1zaXplOmNvdmVyOwogIHZpc2liaWxpdHk6aGlkZGVuOwogIG9wYWNpdHk6MDsKICB0cmFuc2l0aW9uOmFsbCAwLjNzOwogIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOmZsYXQ7CiAgdHJhbnNmb3JtLXN0eWxlOmZsYXQ7CiAgcGVyc3BlY3RpdmU6NjAwOwogIC13ZWJraXQtcGVyc3BlY3RpdmU6NjAwOwogIHRyYW5zZm9ybTogcm90YXRleCgtOTBkZWcpOwogIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGV4KC05MGRlZyk7CiAgYm94LXNoYWRvdzowcHggMHB4IDNweCAxcHggcmdiYSgwLDAsMCwwLjIpOwogIHRyYW5zZm9ybS1vcmlnaW46NTAlIDEwMCU7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOjUwJSAxMDAlOwogIAogIAp9Ci5oYWRlcyAudHAtYnVsbGV0OmhvdmVyIC50cC1idWxsZXQtaW1hZ2UgewogIGRpc3BsYXk6YmxvY2s7CiAgb3BhY2l0eToxOwogIHRyYW5zZm9ybTogcm90YXRleCgwZGVnKTsKICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRleCgwZGVnKTsKICB2aXNpYmlsaXR5OnZpc2libGU7CiAgICB9Ci5oYWRlcyAudHAtYnVsbGV0LXRpdGxlIHsKfQoKCi8qIFRIVU1CUyAqLwouaGFkZXMgLnRwLXRodW1iIHsgCiAgICAgIG9wYWNpdHk6MQogIH0KLmhhZGVzIC50cC10aHVtYi1pbWctd3JhcCB7CiAgYm9yZGVyLXJhZGl1czo1MCU7CiAgcGFkZGluZzozcHg7CiAgZGlzcGxheTppbmxpbmUtYmxvY2s7CmJhY2tncm91bmQ6IzAwMDsKICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4yNSk7CiAgd2lkdGg6MTAwJTsKICBoZWlnaHQ6MTAwJTsKICBwb3NpdGlvbjpyZWxhdGl2ZTsKICBtYXJnaW46MHB4OwogIGJveC1zaXppbmc6Ym9yZGVyLWJveDsKICAgIHRyYW5zaXRpb246YWxsIDAuM3M7CiAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7Cn0KLmhhZGVzIC50cC10aHVtYi1pbWFnZSB7CiAgIHBhZGRpbmc6M3B4OyAKICAgYm9yZGVyLXJhZGl1czo1MCU7CiAgIGRpc3BsYXk6YmxvY2s7CiAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDsKICAgcG9zaXRpb246cmVsYXRpdmU7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjI1KTsKICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDVweCA1cHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjI1KTsKICBib3gtc2hhZG93OiBpbnNldCA1cHggNXB4IDEwcHggMHB4IHJnYmEoMCwwLDAsMC4yNSk7CiB9ICAKCgouaGFkZXMgLnRwLXRodW1iOmhvdmVyIC50cC10aHVtYi1pbWctd3JhcCwKLmhhZGVzIC50cC10aHVtYi5zZWxlY3RlZCAudHAtdGh1bWItaW1nLXdyYXAgewogIAogICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDEpOwogIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwxKSAwJSwgcmdiYSgxMTksMTE5LDExOSwxKSAxMDAlKTsKICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgcmdiYSgyNTUsMjU1LDI1NSwxKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgxMTksMTE5LDExOSwxKSkpOwogIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwxKSAwJSwgcmdiYSgxMTksMTE5LDExOSwxKSAxMDAlKTsKICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDAlLCByZ2JhKDExOSwxMTksMTE5LDEpIDEwMCUpOwogIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDAlLCByZ2JhKDExOSwxMTksMTE5LDEpIDEwMCUpOwogIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjU1LDI1NSwyNTUsMSkgMCUsIHJnYmEoMTE5LDExOSwxMTksMSkgMTAwJSk7CiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9IiNmZmZmZmYiLCBlbmRDb2xvcnN0cj0iIzc3Nzc3NyIsIEdyYWRpZW50VHlwZT0wICk7CiAKICAgICAgfQouaGFkZXMgLnRwLXRodW1iLXRpdGxlOmFmdGVyIHsKICAgICAgICBjb250ZW50OiIgIjsKICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsKICAgICAgICBsZWZ0OjUwJTsKICAgICAgICBtYXJnaW4tbGVmdDotOHB4OwogICAgICAgIHdpZHRoOiAwOwoJCWhlaWdodDogMDsKCQlib3JkZXItc3R5bGU6IHNvbGlkOwoJCWJvcmRlci13aWR0aDogOHB4IDhweCAwIDhweDsKCQlib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsMC43NSkgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7CiAgICAgICAgYm90dG9tOi04cHg7CiAgIH0KCgovKiBUQUJTICovCi5oYWRlcyAudHAtdGFiIHsKICBvcGFjaXR5OjE7CiB9CiAgICAKLmhhZGVzIC50cC10YWItdGl0bGUKIHsKICAgICAgZGlzcGxheTpibG9jazsKICAgICAgY29sb3I6IzMzMzsKICAgICAgZm9udC13ZWlnaHQ6NjAwOwogICAgICBmb250LXNpemU6MThweDsKICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7CiAgICAgIGxpbmUtaGVpZ2h0OjI1cHg7ICAgICAgCiAgICB9IAouaGFkZXMgLnRwLXRhYi1wcmljZQogewoJZGlzcGxheTpibG9jazsKICAgIHRleHQtYWxpZ246Y2VudGVyOwogICAgY29sb3I6Izk5OTsKICAgIGZvbnQtc2l6ZToxNnB4OwogICAgbWFyZ2luLXRvcDoxMHB4OwogICBsaW5lLWhlaWdodDoyMHB4Cn0KCi5oYWRlcyAudHAtdGFiLWJ1dHRvbiB7CiAgICBkaXNwbGF5OmlubGluZS1ibG9jazsKICAgIG1hcmdpbi10b3A6MTVweDsKICAgIHRleHQtYWxpZ246Y2VudGVyOwoJcGFkZGluZzo1cHggMTVweDsKICAJY29sb3I6I2ZmZjsKICAJZm9udC1zaXplOjE0cHg7CiAgCWJhY2tncm91bmQ6IzIxOWJkNzsKICAgCWJvcmRlci1yYWRpdXM6NHB4OwogICBmb250LXdlaWdodDo0MDA7Cn0KLmhhZGVzIC50cC10YWItaW5uZXIgewoJdGV4dC1hbGlnbjpjZW50ZXI7Cn0KCiAgICAgICAgICAgICAgCgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgotIFJldm9sdXRpb24gU2xpZGVyIDUuMCBOYXZpZ2F0aW4gU2tpbiBTdHlsZSAgLQoKIEhFQkUgU0tJTgoKYXV0aG9yOiAgVGhlbWVQdW5jaAplbWFpbDogICAgICBpbmZvQHRoZW1lcHVuY2guY29tCndlYnNpdGU6ICAgIGh0dHA6Ly93d3cudGhlbWVwdW5jaC5jb20KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwovKiBBUlJPV1MgKi8KLmhlYmUudHBhcnJvd3MgewogIGN1cnNvcjpwb2ludGVyOwogIGJhY2tncm91bmQ6I2ZmZjsKICBtaW4td2lkdGg6NzBweDsKICAgIG1pbi1oZWlnaHQ6NzBweDsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICBkaXNwbGF5OmJsb2NrOwogIHotaW5kZXg6MTAwMDsKfQouaGViZS50cGFycm93czpob3ZlciB7Cn0KLmhlYmUudHBhcnJvd3M6YmVmb3JlIHsKICBmb250LWZhbWlseTogInJldmljb25zIjsKICBmb250LXNpemU6MzBweDsKICBjb2xvcjojYWFhOwogIGRpc3BsYXk6YmxvY2s7CiAgbGluZS1oZWlnaHQ6IDcwcHg7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4zczsKICAtbW96LXRyYW5zaXRpb246IGNvbG9yIDAuM3M7CiAgdHJhbnNpdGlvbjogY29sb3IgMC4zczsKICB6LWluZGV4OjI7CiAgcG9zaXRpb246cmVsYXRpdmU7CiAgIGJhY2tncm91bmQ6I2ZmZjsKICBtaW4td2lkdGg6NzBweDsKICAgIG1pbi1oZWlnaHQ6NzBweDsKfQouaGViZS50cGFycm93cy50cC1sZWZ0YXJyb3c6YmVmb3JlIHsKICBjb250ZW50OiAiXGU4MjQiOwp9Ci5oZWJlLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6YmVmb3JlIHsKICBjb250ZW50OiAiXGU4MjUiOwp9Ci5oZWJlLnRwYXJyb3dzOmhvdmVyOmJlZm9yZSB7CiBjb2xvcjojMDAwOwogICAgICB9Ci5oZWJlIC50cC10aXRsZS13cmFwIHsgCiAgcG9zaXRpb246YWJzb2x1dGU7CiAgei1pbmRleDowOwogIGRpc3BsYXk6aW5saW5lLWJsb2NrOwogIGJhY2tncm91bmQ6IzAwMDsKICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC43NSk7CiAgbWluLWhlaWdodDo2MHB4OwogIGxpbmUtaGVpZ2h0OjYwcHg7CiAgdG9wOi0xMHB4OwogIG1hcmdpbi1sZWZ0OjBweDsKICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3M7CiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7CiAgdHJhbnNmb3JtOnNjYWxlWCgwKTsgIAogIC13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgwKTsgIAogIHRyYW5zZm9ybS1vcmlnaW46MCUgNTAlOyAKICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOjAlIDUwJTsKfQogLmhlYmUudHAtcmlnaHRhcnJvdyAudHAtdGl0bGUtd3JhcCB7IAogICByaWdodDowcHg7CiAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjoxMDAlIDUwJTsKIH0KLmhlYmUudHBhcnJvd3M6aG92ZXIgLnRwLXRpdGxlLXdyYXAgewogIHRyYW5zZm9ybTpzY2FsZVgoMSk7CiAgLXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpOwp9Ci5oZWJlIC50cC1hcnItdGl0bGVob2xkZXIgewogIHBvc2l0aW9uOnJlbGF0aXZlOwogIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsKICBjb2xvcjojZmZmOwogIGZvbnQtd2VpZ2h0OjYwMDsKICBmb250LXNpemU6MTJweDsKICBsaW5lLWhlaWdodDo5MHB4OwogIHdoaXRlLXNwYWNlOm5vd3JhcDsKICBwYWRkaW5nOjBweCAyMHB4IDBweCA5MHB4Owp9CgouaGViZS50cC1yaWdodGFycm93IC50cC1hcnItdGl0bGVob2xkZXIgewogICBtYXJnaW4tbGVmdDowcHg7IAogICBwYWRkaW5nOjBweCA5MHB4IDBweCAyMHB4OwogfQoKLmhlYmUudHBhcnJvd3M6aG92ZXIgLnRwLWFyci10aXRsZWhvbGRlciB7CiAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKDBweCk7CiAgIC13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMHB4KTsKICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzOwogIG9wYWNpdHk6MTsKfQoKLmhlYmUgLnRwLWFyci1pbWdob2xkZXJ7CiAgICAgIHdpZHRoOjkwcHg7CiAgICAgIGhlaWdodDo5MHB4OwogICAgICBwb3NpdGlvbjphYnNvbHV0ZTsKICAgICAgbGVmdDoxMDAlOwogICAgICBkaXNwbGF5OmJsb2NrOwogICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7CiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyIGNlbnRlcjsKICAJIHRvcDowcHg7IHJpZ2h0Oi05MHB4OwogICAgfQouaGViZS50cC1yaWdodGFycm93IC50cC1hcnItaW1naG9sZGVyewogICAgICAgIHJpZ2h0OmF1dG87bGVmdDotOTBweDsKICAgICAgfQoKLyogQlVMTEVUUyAqLwouaGViZS50cC1idWxsZXRzIHsKfQouaGViZS50cC1idWxsZXRzOmJlZm9yZSB7CiAgY29udGVudDoiICI7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgd2lkdGg6MTAwJTsKICBoZWlnaHQ6MTAwJTsKICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50OwogIHBhZGRpbmc6MTBweDsKICBtYXJnaW4tbGVmdDotMTBweDttYXJnaW4tdG9wOi0xMHB4OwogIGJveC1zaXppbmc6Y29udGVudC1ib3g7Cn0KCi5oZWJlIC50cC1idWxsZXQgewogIHdpZHRoOjNweDsKICBoZWlnaHQ6M3B4OwogIHBvc2l0aW9uOmFic29sdXRlOwogIGJhY2tncm91bmQ6I2ZmZjsgIAogIGN1cnNvcjogcG9pbnRlcjsKICBib3JkZXI6NXB4IHNvbGlkICMyMjI7CiAgYm9yZGVyLXJhZGl1czo1MCU7CiAgYm94LXNpemluZzpjb250ZW50LWJveDsKICAtd2Via2l0LXBlcnNwZWN0aXZlOjQwMDsKICBwZXJzcGVjdGl2ZTo0MDA7CiAgLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwLjAxcHgpOwogIHRyYW5zZm9ybTp0cmFuc2xhdGVaKDAuMDFweCk7CiAgIHRyYW5zaXRpb246YWxsIDAuM3M7Cn0KLmhlYmUgLnRwLWJ1bGxldDpob3ZlciwKLmhlYmUgLnRwLWJ1bGxldC5zZWxlY3RlZCB7CiAgYmFja2dyb3VuZDojMjIyOwogIGJvcmRlci1jb2xvcjojZmZmOwp9CgouaGViZSAudHAtYnVsbGV0LWltYWdlIHsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICB0b3A6LTkwcHg7IGxlZnQ6LTQwcHg7CiAgd2lkdGg6NzBweDsKICBoZWlnaHQ6NzBweDsKICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7CiAgYmFja2dyb3VuZC1zaXplOmNvdmVyOwogIHZpc2liaWxpdHk6aGlkZGVuOwogIG9wYWNpdHk6MDsKICB0cmFuc2l0aW9uOmFsbCAwLjNzOwogIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOmZsYXQ7CiAgdHJhbnNmb3JtLXN0eWxlOmZsYXQ7CiAgcGVyc3BlY3RpdmU6NjAwOwogIC13ZWJraXQtcGVyc3BlY3RpdmU6NjAwOwogIHRyYW5zZm9ybTogc2NhbGUoMCk7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApOwogIHRyYW5zZm9ybS1vcmlnaW46NTAlIDEwMCU7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOjUwJSAxMDAlOwpib3JkZXItcmFkaXVzOjZweDsKICAKICAKfQouaGViZSAudHAtYnVsbGV0OmhvdmVyIC50cC1idWxsZXQtaW1hZ2UgewogIGRpc3BsYXk6YmxvY2s7CiAgb3BhY2l0eToxOwogIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOwogIHZpc2liaWxpdHk6dmlzaWJsZTsKICAgIH0KLmhlYmUgLnRwLWJ1bGxldC10aXRsZSB7Cn0KCgovKiBUQUJTICovCi5oZWJlIC50cC10YWItdGl0bGUgewogICAgY29sb3I6I2E4ZDhlZTsKICAgIGZvbnQtc2l6ZToxM3B4OwogICAgZm9udC13ZWlnaHQ6NzAwOwogICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOwogICAgZm9udC1mYW1pbHk6IlJvYm90byBTbGFiIgogICAgbWFyZ2luLWJvdHRvbTo1cHg7Cn0KCi5oZWJlIC50cC10YWItZGVzYyB7Cglmb250LXNpemU6MThweDsKICAgIGZvbnQtd2VpZ2h0OjQwMDsKICAgIGNvbG9yOiNmZmY7CiAgICBsaW5lLWhlaWdodDoyNXB4OwoJZm9udC1mYW1pbHk6IlJvYm90byBTbGFiIjsKfQoKCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi0gUmV2b2x1dGlvbiBTbGlkZXIgNS4wIE5hdmlnYXRpbiBTa2luIFN0eWxlICAtCgogSEVQSEFJU1RPUyBTS0lOCgphdXRob3I6ICBUaGVtZVB1bmNoCmVtYWlsOiAgICAgIGluZm9AdGhlbWVwdW5jaC5jb20Kd2Vic2l0ZTogICAgaHR0cDovL3d3dy50aGVtZXB1bmNoLmNvbQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qIEFSUk9XUyAqLwouaGVwaGFpc3Rvcy50cGFycm93cyB7CgljdXJzb3I6cG9pbnRlcjsKCWJhY2tncm91bmQ6IzAwMDsKCWJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjUpOwoJd2lkdGg6NDBweDsKCWhlaWdodDo0MHB4OwoJcG9zaXRpb246YWJzb2x1dGU7CglkaXNwbGF5OmJsb2NrOwoJei1pbmRleDoxMDAwOwogICAgYm9yZGVyLXJhZGl1czo1MCU7Cn0KLmhlcGhhaXN0b3MudHBhcnJvd3M6aG92ZXIgewoJYmFja2dyb3VuZDojMDAwOwp9Ci5oZXBoYWlzdG9zLnRwYXJyb3dzOmJlZm9yZSB7Cglmb250LWZhbWlseTogInJldmljb25zIjsKCWZvbnQtc2l6ZToxOHB4OwoJY29sb3I6I2ZmZjsKCWRpc3BsYXk6YmxvY2s7CglsaW5lLWhlaWdodDogNDBweDsKCXRleHQtYWxpZ246IGNlbnRlcjsKfQouaGVwaGFpc3Rvcy50cGFycm93cy50cC1sZWZ0YXJyb3c6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTgyYyI7CiAgbWFyZ2luLWxlZnQ6LTJweDsKICAKfQouaGVwaGFpc3Rvcy50cGFycm93cy50cC1yaWdodGFycm93OmJlZm9yZSB7Cgljb250ZW50OiAiXGU4MmQiOwogICBtYXJnaW4tcmlnaHQ6LTJweDsKfQoKCgovKiBCVUxMRVRTICovCi5oZXBoYWlzdG9zLnRwLWJ1bGxldHMgewp9Ci5oZXBoYWlzdG9zLnRwLWJ1bGxldHM6YmVmb3JlIHsKCWNvbnRlbnQ6IiAiOwoJcG9zaXRpb246YWJzb2x1dGU7Cgl3aWR0aDoxMDAlOwoJaGVpZ2h0OjEwMCU7CgliYWNrZ3JvdW5kOnRyYW5zcGFyZW50OwoJcGFkZGluZzoxMHB4OwoJbWFyZ2luLWxlZnQ6LTEwcHg7bWFyZ2luLXRvcDotMTBweDsKCWJveC1zaXppbmc6Y29udGVudC1ib3g7Cn0KLmhlcGhhaXN0b3MgLnRwLWJ1bGxldCB7Cgl3aWR0aDoxMnB4OwoJaGVpZ2h0OjEycHg7Cglwb3NpdGlvbjphYnNvbHV0ZTsKCWJhY2tncm91bmQ6Izk5OTsKCWJvcmRlcjozcHggc29saWQgI2Y1ZjVmNTsKCWJvcmRlci1yYWRpdXM6NTAlOwoJY3Vyc29yOiBwb2ludGVyOwoJYm94LXNpemluZzpjb250ZW50LWJveDsKICBib3gtc2hhZG93OiAwcHggMHB4IDJweCAxcHggcmdiYSgxMzAsMTMwLDEzMCwgMC4zKTsKCn0KLmhlcGhhaXN0b3MgLnRwLWJ1bGxldDpob3ZlciwKLmhlcGhhaXN0b3MgLnRwLWJ1bGxldC5zZWxlY3RlZCB7CgliYWNrZ3JvdW5kOiNmZmY7CiAgICBib3JkZXItY29sb3I6IzAwMDsKfQouaGVwaGFpc3RvcyAudHAtYnVsbGV0LWltYWdlIHsKfQouaGVwaGFpc3RvcyAudHAtYnVsbGV0LXRpdGxlIHsKfQoKCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi0gUmV2b2x1dGlvbiBTbGlkZXIgNS4wIE5hdmlnYXRpbiBTa2luIFN0eWxlICAtCgogSEVSTUVTIFNLSU4KCmF1dGhvcjogIFRoZW1lUHVuY2gKZW1haWw6ICAgICAgaW5mb0B0aGVtZXB1bmNoLmNvbQp3ZWJzaXRlOiAgICBodHRwOi8vd3d3LnRoZW1lcHVuY2guY29tCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLyogQVJST1dTICovCi5oZXJtZXMudHBhcnJvd3MgewoJY3Vyc29yOnBvaW50ZXI7CgliYWNrZ3JvdW5kOiMwMDA7CgliYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC41KTsKCXdpZHRoOjMwcHg7CgloZWlnaHQ6MTEwcHg7Cglwb3NpdGlvbjphYnNvbHV0ZTsKCWRpc3BsYXk6YmxvY2s7Cgl6LWluZGV4OjEwMDA7Cn0KCi5oZXJtZXMudHBhcnJvd3M6YmVmb3JlIHsKCWZvbnQtZmFtaWx5OiAicmV2aWNvbnMiOwoJZm9udC1zaXplOjE1cHg7Cgljb2xvcjojZmZmOwoJZGlzcGxheTpibG9jazsKCWxpbmUtaGVpZ2h0OiAxMTBweDsKCXRleHQtYWxpZ246IGNlbnRlcjsKICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKDBweCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDBweCk7CiAgICB0cmFuc2l0aW9uOmFsbCAwLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOmFsbCAwLjNzOwp9Ci5oZXJtZXMudHBhcnJvd3MudHAtbGVmdGFycm93OmJlZm9yZSB7Cgljb250ZW50OiAiXGU4MjQiOwp9Ci5oZXJtZXMudHBhcnJvd3MudHAtcmlnaHRhcnJvdzpiZWZvcmUgewoJY29udGVudDogIlxlODI1IjsKfQouaGVybWVzLnRwYXJyb3dzLnRwLWxlZnRhcnJvdzpob3ZlcjpiZWZvcmUgewogICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwcHgpOwogICAgLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjBweCk7CiAgICAgb3BhY2l0eTowOwp9Ci5oZXJtZXMudHBhcnJvd3MudHAtcmlnaHRhcnJvdzpob3ZlcjpiZWZvcmUgewogICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjBweCk7CiAgICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDIwcHgpOwogICAgIG9wYWNpdHk6MDsKfQoKLmhlcm1lcyAudHAtYXJyLWFsbHdyYXBwZXIgewogICAgb3ZlcmZsb3c6aGlkZGVuOwogICAgcG9zaXRpb246YWJzb2x1dGU7Cgl3aWR0aDoxODBweDsKICAgIGhlaWdodDoxNDBweDsKICAgIHRvcDowcHg7CiAgICBsZWZ0OjBweDsKICAgIHZpc2liaWxpdHk6aGlkZGVuOwogICAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgMC4zczsKICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyAwLjNzOwogIC13ZWJraXQtcGVyc3BlY3RpdmU6IDEwMDBweDsKICBwZXJzcGVjdGl2ZTogMTAwMHB4OwogICAgfQouaGVybWVzLnRwLXJpZ2h0YXJyb3cgLnRwLWFyci1hbGx3cmFwcGVyIHsKICAgcmlnaHQ6MHB4O2xlZnQ6YXV0bzsKICAgICAgfQouaGVybWVzLnRwYXJyb3dzOmhvdmVyIC50cC1hcnItYWxsd3JhcHBlciB7CiAgIHZpc2liaWxpdHk6dmlzaWJsZTsKICAgICAgICAgIH0KLmhlcm1lcyAudHAtYXJyLWltZ2hvbGRlciB7CiAgd2lkdGg6MTgwcHg7cG9zaXRpb246YWJzb2x1dGU7CiAgbGVmdDowcHg7dG9wOjBweDtoZWlnaHQ6MTEwcHg7CiAgdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTE4MHB4KTsKICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xODBweCk7CiAgdHJhbnNpdGlvbjphbGwgMC4zczsKICB0cmFuc2l0aW9uLWRlbGF5OjAuM3M7Cn0KLmhlcm1lcy50cC1yaWdodGFycm93IC50cC1hcnItaW1naG9sZGVyewogICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTgwcHgpOwogIC13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTgwcHgpOwogICAgICB9CiAgCi5oZXJtZXMudHBhcnJvd3M6aG92ZXIgLnRwLWFyci1pbWdob2xkZXIgewogICB0cmFuc2Zvcm06dHJhbnNsYXRlWCgwcHgpOwogICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDBweCk7ICAgICAgICAgICAgCn0KLmhlcm1lcyAudHAtYXJyLXRpdGxlaG9sZGVyIHsKICB0b3A6MTEwcHg7CiAgd2lkdGg6MTgwcHg7CiAgdGV4dC1hbGlnbjpsZWZ0OyAKICBkaXNwbGF5OmJsb2NrOwogIHBhZGRpbmc6MHB4IDEwcHg7CiAgbGluZS1oZWlnaHQ6MzBweDsgYmFja2dyb3VuZDojMDAwOwogIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjc1KTtjb2xvcjojZmZmOwogIGZvbnQtd2VpZ2h0OjYwMDsgcG9zaXRpb246YWJzb2x1dGU7CiAgZm9udC1zaXplOjEycHg7CiAgd2hpdGUtc3BhY2U6bm93cmFwOwogIGxldHRlci1zcGFjaW5nOjFweDsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzOwogIHRyYW5zaXRpb246IGFsbCAwLjNzOwogIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKC05MGRlZyk7CiAgdHJhbnNmb3JtOiByb3RhdGVYKC05MGRlZyk7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsKICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsKICBib3gtc2l6aW5nOmJvcmRlci1ib3g7Cgp9Ci5oZXJtZXMudHBhcnJvd3M6aG92ZXIgLnRwLWFyci10aXRsZWhvbGRlciB7CiAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuNnM7CiAgdHJhbnNpdGlvbi1kZWxheTogMC42czsKICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgwZGVnKTsKICB0cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7Cn0KCgovKiBCVUxMRVRTICovCi5oZXJtZXMudHAtYnVsbGV0cyB7Cn0KCi5oZXJtZXMgLnRwLWJ1bGxldCB7CiAgICBvdmVyZmxvdzpoaWRkZW47CiAgICBib3JkZXItcmFkaXVzOjUwJTsKICAgIHdpZHRoOjE2cHg7CiAgICBoZWlnaHQ6MTZweDsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7CiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggI0ZGRjsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2U7CiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZTsKICAgIHBvc2l0aW9uOmFic29sdXRlOwp9CgouaGVybWVzIC50cC1idWxsZXQ6aG92ZXIgewoJICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7Cn0KLmhlcm1lcyAudHAtYnVsbGV0OmFmdGVyIHsKICBjb250ZW50OiAnICc7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGJvdHRvbTogMDsKICBoZWlnaHQ6IDA7CiAgbGVmdDogMDsKICB3aWR0aDogMTAwJTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOwogIGJveC1zaGFkb3c6IDAgMCAxcHggI0ZGRjsKICAtd2Via2l0LXRyYW5zaXRpb246IGhlaWdodCAwLjNzIGVhc2U7CiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuM3MgZWFzZTsKfQouaGVybWVzIC50cC1idWxsZXQuc2VsZWN0ZWQ6YWZ0ZXIgewogIGhlaWdodDoxMDAlOwp9CgoKLyogVEFCUyAqLwouaGVybWVzIC50cC10YWIgeyAKICBvcGFjaXR5OjE7ICAKICBwYWRkaW5nLXJpZ2h0OjEwcHg7CiAgYm94LXNpemluZzpib3JkZXItYm94OwogfQouaGVybWVzIC50cC10YWItaW1hZ2UgCnsgCiAgd2lkdGg6MTAwJTsKICBoZWlnaHQ6NjAlOwogIHBvc2l0aW9uOnJlbGF0aXZlOwp9Ci5oZXJtZXMgLnRwLXRhYi1jb250ZW50IAp7CiAgICBiYWNrZ3JvdW5kOnJnYig1NCw1NCw1NCk7IAogICAgcG9zaXRpb246YWJzb2x1dGU7CiAgICBwYWRkaW5nOjIwcHggMjBweCAyMHB4IDMwcHg7CiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7CiAgICBjb2xvcjojZmZmOwogIGRpc3BsYXk6YmxvY2s7CiAgd2lkdGg6MTAwJTsKICBtaW4taGVpZ2h0OjQwJTsKICBib3R0b206MHB4OwogIGxlZnQ6LTEwcHg7CiAgfQouaGVybWVzIC50cC10YWItZGF0ZQogIHsKICBkaXNwbGF5OmJsb2NrOwogIGNvbG9yOiM4ODg7CiAgZm9udC13ZWlnaHQ6NjAwOwogIGZvbnQtc2l6ZToxMnB4OwogIG1hcmdpbi1ib3R0b206MTBweDsKICB9Ci5oZXJtZXMgLnRwLXRhYi10aXRsZSAKewogICAgZGlzcGxheTpibG9jazsJCiAgICBjb2xvcjojZmZmOwogICAgZm9udC1zaXplOjE2cHg7CiAgICBmb250LXdlaWdodDo4MDA7CiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgIGxpbmUtaGVpZ2h0OjE5cHg7Cn0KCi5oZXJtZXMgLnRwLXRhYi5zZWxlY3RlZCAudHAtdGFiLXRpdGxlOmFmdGVyIHsKICAgIHdpZHRoOiAwcHg7CgloZWlnaHQ6IDBweDsKCWJvcmRlci1zdHlsZTogc29saWQ7Cglib3JkZXItd2lkdGg6IDMwcHggMCAzMHB4IDEwcHg7Cglib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHJnYig1NCw1NCw1NCk7Cgljb250ZW50OiIgIjsKICAgIHBvc2l0aW9uOmFic29sdXRlOwogICAgcmlnaHQ6LTlweDsKICAgIGJvdHRvbTo1MCU7CiAgICBtYXJnaW4tYm90dG9tOi0zMHB4Owp9Ci5oZXJtZXMgLnRwLXRhYi1tYXNrIHsKICAgICBwYWRkaW5nLXJpZ2h0OjEwcHggIWltcG9ydGFudDsKICAgICAgICAgIH0KCi8qIE1FRElBIFFVRVJJRVMgKi8KQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkgewogIC5oZXJtZXMgLnRwLXRhYiAudHAtdGFiLXRpdGxlIHtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxNnB4O30KICAuaGVybWVzIC50cC10YWItZGF0ZSB7IGZvbnQtc2l6ZToxMXB4OyBsaW5lLWhlaWdodDoxM3B4O21hcmdpbi1ib3R0b206MTBweDt9CiAgLmhlcm1lcyAudHAtdGFiLWNvbnRlbnQgeyBwYWRkaW5nOjE1cHggMTVweCAxNXB4IDI1cHg7fQp9CkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHsKICAuaGVybWVzIC50cC10YWIgLnRwLXRhYi10aXRsZSB7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MTRweDt9CiAgLmhlcm1lcyAudHAtdGFiLWRhdGUge2ZvbnQtc2l6ZToxMHB4OyBsaW5lLWhlaWdodDoxMnB4O21hcmdpbi1ib3R0b206NXB4O30KICAuaGVybWVzIC50cC10YWItY29udGVudCB7cGFkZGluZzoxMHB4IDEwcHggMTBweCAyMHB4O30KfQoKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLSBSZXZvbHV0aW9uIFNsaWRlciA1LjAgTmF2aWdhdGluIFNraW4gU3R5bGUgIC0KCiBIRVNQRVJJREVOIFNLSU4KCmF1dGhvcjogIFRoZW1lUHVuY2gKZW1haWw6ICAgICAgaW5mb0B0aGVtZXB1bmNoLmNvbQp3ZWJzaXRlOiAgICBodHRwOi8vd3d3LnRoZW1lcHVuY2guY29tCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLyogQVJST1dTICovCi5oZXNwZXJpZGVuLnRwYXJyb3dzIHsKCWN1cnNvcjpwb2ludGVyOwoJYmFja2dyb3VuZDojMDAwOwoJYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNSk7Cgl3aWR0aDo0MHB4OwoJaGVpZ2h0OjQwcHg7Cglwb3NpdGlvbjphYnNvbHV0ZTsKCWRpc3BsYXk6YmxvY2s7Cgl6LWluZGV4OjEwMDA7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7Cn0KLmhlc3BlcmlkZW4udHBhcnJvd3M6aG92ZXIgewoJYmFja2dyb3VuZDojMDAwOwp9Ci5oZXNwZXJpZGVuLnRwYXJyb3dzOmJlZm9yZSB7Cglmb250LWZhbWlseTogInJldmljb25zIjsKCWZvbnQtc2l6ZToyMHB4OwoJY29sb3I6I2ZmZjsKCWRpc3BsYXk6YmxvY2s7CglsaW5lLWhlaWdodDogNDBweDsKCXRleHQtYWxpZ246IGNlbnRlcjsKfQouaGVzcGVyaWRlbi50cGFycm93cy50cC1sZWZ0YXJyb3c6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTgyYyI7CiAgICBtYXJnaW4tbGVmdDotM3B4Owp9Ci5oZXNwZXJpZGVuLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTgyZCI7CiAgICBtYXJnaW4tcmlnaHQ6LTNweDsKfQoKLyogQlVMTEVUUyAqLwouaGVzcGVyaWRlbi50cC1idWxsZXRzIHsKfQouaGVzcGVyaWRlbi50cC1idWxsZXRzOmJlZm9yZSB7Cgljb250ZW50OiIgIjsKCXBvc2l0aW9uOmFic29sdXRlOwoJd2lkdGg6MTAwJTsKCWhlaWdodDoxMDAlOwoJYmFja2dyb3VuZDp0cmFuc3BhcmVudDsKCXBhZGRpbmc6MTBweDsKCW1hcmdpbi1sZWZ0Oi0xMHB4O21hcmdpbi10b3A6LTEwcHg7Cglib3gtc2l6aW5nOmNvbnRlbnQtYm94OwogICBib3JkZXItcmFkaXVzOjhweDsKICAKfQouaGVzcGVyaWRlbiAudHAtYnVsbGV0IHsKCXdpZHRoOjEycHg7CgloZWlnaHQ6MTJweDsKCXBvc2l0aW9uOmFic29sdXRlOwoJYmFja2dyb3VuZDogIzk5OTk5OTsgLyogb2xkIGJyb3dzZXJzICovCiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICAjOTk5OTk5IDAlLCAjZTFlMWUxIDEwMCUpOyAvKiBmZjMuNisgKi8KICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsIzk5OTk5OSksIAogICAgY29sb3Itc3RvcCgxMDAlLCNlMWUxZTEpKTsgLyogY2hyb21lLHNhZmFyaTQrICovCiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICAjOTk5OTk5IDAlLCNlMWUxZTEgMTAwJSk7IC8qIGNocm9tZTEwKyxzYWZhcmk1LjErICovCiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAgIzk5OTk5OSAwJSwjZTFlMWUxIDEwMCUpOyAvKiBvcGVyYSAxMS4xMCsgKi8KICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAgIzk5OTk5OSAwJSwjZTFlMWUxIDEwMCUpOyAvKiBpZTEwKyAqLwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgICM5OTk5OTkgMCUsI2UxZTFlMSAxMDAlKTsgLyogdzNjICovCiAgICBmaWx0ZXI6IHByb2dpZDpkeGltYWdldHJhbnNmb3JtLm1pY3Jvc29mdC5ncmFkaWVudCggCiAgICBzdGFydGNvbG9yc3RyPSIjOTk5OTk5IiwgZW5kY29sb3JzdHI9IiNlMWUxZTEiLGdyYWRpZW50dHlwZT0wICk7IC8qIGllNi05ICovCglib3JkZXI6M3B4IHNvbGlkICNlNWU1ZTU7Cglib3JkZXItcmFkaXVzOjUwJTsKCWN1cnNvcjogcG9pbnRlcjsKCWJveC1zaXppbmc6Y29udGVudC1ib3g7Cn0KLmhlc3BlcmlkZW4gLnRwLWJ1bGxldDpob3ZlciwKLmhlc3BlcmlkZW4gLnRwLWJ1bGxldC5zZWxlY3RlZCB7CgliYWNrZ3JvdW5kOiM2NjY7Cn0KLmhlc3BlcmlkZW4gLnRwLWJ1bGxldC1pbWFnZSB7Cn0KLmhlc3BlcmlkZW4gLnRwLWJ1bGxldC10aXRsZSB7Cn0KCgovKiBUSFVNQlMgKi8KLmhlc3BlcmlkZW4gLnRwLXRodW1iIHsKICBvcGFjaXR5OjE7CiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogNjAwcHg7CiAgcGVyc3BlY3RpdmU6IDYwMHB4Owp9Ci5oZXNwZXJpZGVuIC50cC10aHVtYiAudHAtdGh1bWItdGl0bGUgewogICAgZm9udC1zaXplOjEycHg7CiAgICBwb3NpdGlvbjphYnNvbHV0ZTsKICAgIG1hcmdpbi10b3A6LTEwcHg7CiAgICBjb2xvcjojZmZmOwogICAgZGlzcGxheTpibG9jazsKICAgIHotaW5kZXg6MTAwMDA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7CiAgICBwYWRkaW5nOjVweCAxMHB4OyAKICAgIGJvdHRvbTowcHg7CiAgICBsZWZ0OjBweDsKICAgIHdpZHRoOjEwMCU7CiAgYm94LXNpemluZzpib3JkZXItYm94OwogICAgdGV4dC1hbGlnbjpjZW50ZXI7CiAgICBvdmVyZmxvdzpoaWRkZW47CiAgICB3aGl0ZS1zcGFjZTpub3dyYXA7CiAgICB0cmFuc2l0aW9uOmFsbCAwLjNzOwogICAgLXdlYmtpdC10cmFuc2l0aW9uOmFsbCAwLjNzOwogICAgdHJhbnNmb3JtOnJvdGF0ZXgoOTBkZWcpIHRyYW5zbGF0ZXooMC4wMDFweCk7CiAgICB0cmFuc2Zvcm0tb3JpZ2luOjUwJSAxMDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06cm90YXRleCg5MGRlZykgdHJhbnNsYXRleigwLjAwMXB4KTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjo1MCUgMTAwJTsKICAgIG9wYWNpdHk6MDsKIH0KLmhlc3BlcmlkZW4gLnRwLXRodW1iOmhvdmVyIC50cC10aHVtYi10aXRsZSB7CiAgCSB0cmFuc2Zvcm06cm90YXRleCgwZGVnKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZXgoMGRlZyk7CiAgICBvcGFjaXR5OjE7Cn0KCi8qIFRBQlMgKi8KLmhlc3BlcmlkZW4gLnRwLXRhYiB7IAogIG9wYWNpdHk6MTsgICAgICAKICBwYWRkaW5nOjEwcHg7CiAgYm94LXNpemluZzpib3JkZXItYm94OwogIGZvbnQtZmFtaWx5OiAiUm9ib3RvIiwgc2Fucy1zZXJpZjsKICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTsKIH0KLmhlc3BlcmlkZW4gLnRwLXRhYi1pbWFnZSAKeyAKICB3aWR0aDo2MHB4OwogIGhlaWdodDo2MHB4OyBtYXgtaGVpZ2h0OjEwMCU7IG1heC13aWR0aDoxMDAlOwogIHBvc2l0aW9uOnJlbGF0aXZlOwogIGRpc3BsYXk6aW5saW5lLWJsb2NrOwogIGZsb2F0OmxlZnQ7Cgp9Ci5oZXNwZXJpZGVuIC50cC10YWItY29udGVudCAKewogICAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDApOyAKICAgIHBvc2l0aW9uOnJlbGF0aXZlOwogICAgcGFkZGluZzoxNXB4IDE1cHggMTVweCA4NXB4OwogbGVmdDowcHg7CiBvdmVyZmxvdzpoaWRkZW47CiBtYXJnaW4tdG9wOi0xNXB4OwogICAgYm94LXNpemluZzpib3JkZXItYm94OwogICAgY29sb3I6IzMzMzsKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgIHdpZHRoOjEwMCU7CiAgICBoZWlnaHQ6MTAwJTsKIHBvc2l0aW9uOmFic29sdXRlOyB9Ci5oZXNwZXJpZGVuIC50cC10YWItZGF0ZQogIHsKICBkaXNwbGF5OmJsb2NrOwogIGNvbG9yOiAjYWFhOwogIGZvbnQtd2VpZ2h0OjUwMDsKICBmb250LXNpemU6MTJweDsKICBtYXJnaW4tYm90dG9tOjBweDsKICB9Ci5oZXNwZXJpZGVuIC50cC10YWItdGl0bGUgCnsKICAgIGRpc3BsYXk6YmxvY2s7CQogICAgdGV4dC1hbGlnbjpsZWZ0OwogICAgY29sb3I6IzMzMzsKICAgIGZvbnQtc2l6ZToxNHB4OwogICAgZm9udC13ZWlnaHQ6NTAwOwogICAgdGV4dC10cmFuc2Zvcm06bm9uZTsKICAgIGxpbmUtaGVpZ2h0OjE3cHg7Cn0KLmhlc3BlcmlkZW4gLnRwLXRhYjpob3ZlciwKLmhlc3BlcmlkZW4gLnRwLXRhYi5zZWxlY3RlZCB7CgliYWNrZ3JvdW5kOiNlZWU7IAp9CgouaGVzcGVyaWRlbiAudHAtdGFiLW1hc2sgewp9CgovKiBNRURJQSBRVUVSSUVTICovCkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHsKCn0KQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkgewoKfQoKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLSBSZXZvbHV0aW9uIFNsaWRlciA1LjAgTmF2aWdhdGluIFNraW4gU3R5bGUgIC0KCiBNRVRJUyBTS0lOCgphdXRob3I6ICBUaGVtZVB1bmNoCmVtYWlsOiAgICAgIGluZm9AdGhlbWVwdW5jaC5jb20Kd2Vic2l0ZTogICAgaHR0cDovL3d3dy50aGVtZXB1bmNoLmNvbQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qIEFSUk9XUyAqLwoubWV0aXMudHBhcnJvd3MgewogIGJhY2tncm91bmQ6I2ZmZjsKICBwYWRkaW5nOjEwcHg7CiAgdHJhbnNpdGlvbjphbGwgMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7CiAgd2lkdGg6NjBweDsKICBoZWlnaHQ6NjBweDsKICBib3gtc2l6aW5nOmJvcmRlci1ib3g7CiB9CiAKIC5tZXRpcy50cGFycm93czpob3ZlciB7CiAgIGJhY2tncm91bmQ6I2ZmZjsKICAgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuNzUpOwogfQogCiAubWV0aXMudHBhcnJvd3M6YmVmb3JlIHsKICBjb2xvcjojMDAwOyAgCiAgIHRyYW5zaXRpb246YWxsIDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uOmFsbCAwLjNzOwogfQogCiAubWV0aXMudHBhcnJvd3M6aG92ZXI6YmVmb3JlIHsKICAgdHJhbnNmb3JtOnNjYWxlKDEuNSk7CiAgfQogCgovKiBCVUxMRVRTICovCi5tZXRpcyAudHAtYnVsbGV0IHsgCiAgICBvcGFjaXR5OjE7CiAgICB3aWR0aDo1MHB4OwogICAgaGVpZ2h0OjUwcHg7ICAgIAogICAgcGFkZGluZzozcHg7CiAgICBiYWNrZ3JvdW5kOiMwMDA7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4yNSk7CiAgICBtYXJnaW46MHB4OwogICAgYm94LXNpemluZzpib3JkZXItYm94OwogICAgdHJhbnNpdGlvbjphbGwgMC4zczsKICAgIC13ZWJraXQtdHJhbnNpdGlvbjphbGwgMC4zczsKICAgIGJvcmRlci1yYWRpdXM6NTAlOwogIH0KCi5tZXRpcyAudHAtYnVsbGV0LWltYWdlIHsKCiAgIGJvcmRlci1yYWRpdXM6NTAlOwogICBkaXNwbGF5OmJsb2NrOwogICBib3gtc2l6aW5nOmJvcmRlci1ib3g7CiAgIHBvc2l0aW9uOnJlbGF0aXZlOwogICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCA1cHggNXB4IDEwcHggMHB4IHJnYmEoMCwwLDAsMC4yNSk7CiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCA1cHggNXB4IDEwcHggMHB4IHJnYmEoMCwwLDAsMC4yNSk7CiAgYm94LXNoYWRvdzogaW5zZXQgNXB4IDVweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuMjUpOwogIHdpZHRoOjQ0cHg7CiAgaGVpZ2h0OjQ0cHg7CiAgYmFja2dyb3VuZC1zaXplOmNvdmVyOwogIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyIGNlbnRlcjsKIH0gIAoubWV0aXMgLnRwLWJ1bGxldC10aXRsZSB7IAogICAgIHBvc2l0aW9uOmFic29sdXRlOyAKCSBib3R0b206NjVweDsKICAgICBkaXNwbGF5OmlubGluZS1ibG9jazsKICAgICBsZWZ0OjUwJTsKICAgICBiYWNrZ3JvdW5kOiMwMDA7CiAgICAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNzUpOwogICAgIGNvbG9yOiNmZmY7CiAgICAgcGFkZGluZzoxMHB4IDMwcHg7CiAgICAgYm9yZGVyLXJhZGl1czo0cHg7CgkgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjRweDsKICAgICBvcGFjaXR5OjA7CiAgICAgIHRyYW5zaXRpb246YWxsIDAuM3M7CiAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7CiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMC4wMDFweCkgdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDE0cHgpOwogICAgdHJhbnNmb3JtLW9yaWdpbjo1MCUgMTAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDAuMDAxcHgpIHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgxNHB4KTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjo1MCUgMTAwJTsKICAgIG9wYWNpdHk6MDsKICAgIHdoaXRlLXNwYWNlOm5vd3JhcDsKIH0KCi5tZXRpcyAudHAtYnVsbGV0OmhvdmVyIC50cC1idWxsZXQtdGl0bGUgewogIAkgdHJhbnNmb3JtOnJvdGF0ZVgoMGRlZykgdHJhbnNsYXRlWCgtNTAlKTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVgoMGRlZykgdHJhbnNsYXRlWCgtNTAlKTsKICAgIG9wYWNpdHk6MTsKfQoKLm1ldGlzIC50cC1idWxsZXQuc2VsZWN0ZWQsCi5tZXRpcyAudHAtYnVsbGV0OmhvdmVyICB7CiAgCiAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMSk7CiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDAlLCByZ2JhKDExOSwxMTksMTE5LDEpIDEwMCUpOwogIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwyNTUsMjU1LDEpKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDExOSwxMTksMTE5LDEpKSk7CiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDAlLCByZ2JhKDExOSwxMTksMTE5LDEpIDEwMCUpOwogIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMSkgMCUsIHJnYmEoMTE5LDExOSwxMTksMSkgMTAwJSk7CiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMSkgMCUsIHJnYmEoMTE5LDExOSwxMTksMSkgMTAwJSk7CiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsMjU1LDI1NSwxKSAwJSwgcmdiYSgxMTksMTE5LDExOSwxKSAxMDAlKTsKICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0iI2ZmZmZmZiIsIGVuZENvbG9yc3RyPSIjNzc3Nzc3IiwgR3JhZGllbnRUeXBlPTAgKTsKIAogICAgICB9Ci5tZXRpcyAudHAtYnVsbGV0LXRpdGxlOmFmdGVyIHsKICAgICAgICBjb250ZW50OiIgIjsKICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsKICAgICAgICBsZWZ0OjUwJTsKICAgICAgICBtYXJnaW4tbGVmdDotOHB4OwogICAgICAgIHdpZHRoOiAwOwoJCWhlaWdodDogMDsKCQlib3JkZXItc3R5bGU6IHNvbGlkOwoJCWJvcmRlci13aWR0aDogOHB4IDhweCAwIDhweDsKCQlib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsMC43NSkgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7CiAgICAgICAgYm90dG9tOi04cHg7CiAgIH0KCi5tZXRpcyAudHAtdGFiLW51bWJlciB7CiAgICAgICAgY29sb3I6ICNmZmY7CiAgICAgICAgZm9udC1zaXplOiA0MHB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICAgICAgZm9udC1mYW1pbHk6ICJQbGF5ZmFpciBEaXNwbGF5IjsKICAgICAgICB3aWR0aDogNTBweDsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDE3cHg7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgIGZsb2F0OiBsZWZ0OwogICAgfQogICAgLm1ldGlzIC50cC10YWItbWFzayB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OwogICAgICAgIGxlZnQ6IDBweDsKICAgICAgICBtYXgtd2lkdGg6IDkwcHggIWltcG9ydGFudDsKICAgICAgICB0cmFuc2l0aW9uOiAwLjRzIHBhZGRpbmctbGVmdCwgMC40cyBsZWZ0LCAwLjRzIG1heC13aWR0aDsKICAgIH0KICAgIC5tZXRpczpob3ZlciAudHAtdGFiLW1hc2sgewogICAgICAgIHBhZGRpbmctbGVmdDogMHB4OwogICAgICAgIGxlZnQ6IDUwcHg7CiAgICAgICAgbWF4LXdpZHRoOiA1MDBweCAhaW1wb3J0YW50OwogICAgfQogICAgLm1ldGlzIC50cC10YWItZGl2aWRlciB7CiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgICAgaGVpZ2h0OiAzMHB4OwogICAgICAgIHdpZHRoOiAxcHg7CiAgICAgICAgbWFyZ2luLXRvcDogNXB4OwogICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICBmbG9hdDogbGVmdDsKICAgIH0KICAgIC5tZXRpcyAudHAtdGFiLXRpdGxlIHsKICAgICAgICBjb2xvcjogI2ZmZjsKICAgICAgICBmb250LXNpemU6IDIwcHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgICAgICBmb250LWZhbWlseTogIlBsYXlmYWlyIERpc3BsYXkiOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBwYWRkaW5nLXRvcDogMTBweDsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7CiAgICAgICAgdHJhbnNpdGlvbjogMC40cyBhbGw7CiAgICB9CiAgICAubWV0aXMgLnRwLXRhYi10aXRsZS1tYXNrIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBsZWZ0OiA2N3B4OwogICAgfQogICAgLm1ldGlzOmhvdmVyIC50cC10YWItdGl0bGUgewogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgIH0KICAgIC5tZXRpcyAudHAtdGFiIHsKICAgICAgICBvcGFjaXR5OiAwLjE1OwogICAgICAgIHRyYW5zaXRpb246IDAuNHMgYWxsOwogICAgfQogICAgLm1ldGlzIC50cC10YWI6aG92ZXIsCiAgICAubWV0aXMgLnRwLXRhYi5zZWxlY3RlZCB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgIH0KICAgIC5tZXRpcyAudHAtdGFiLnNlbGVjdGVkIC50cC10YWItZGl2aWRlciB7CiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2NkYjA4MzsKICAgIH0KICAgIC5tZXRpcy50cC10YWJzIHsKICAgICAgICBtYXgtd2lkdGg6IDExOHB4ICFpbXBvcnRhbnQ7CiAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4OwogICAgfQogICAgLm1ldGlzLnRwLXRhYnM6YmVmb3JlIHsKICAgICAgICBjb250ZW50OiAiICI7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHdpZHRoOiA4OHB4OwogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7CiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEwKTsKICAgICAgICBsZWZ0OiAwcHg7CiAgICAgICAgdG9wOiAwcHg7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRyYW5zaXRpb246IDAuNHMgYWxsOwogICAgfQogICAgLm1ldGlzLnRwLXRhYnM6aG92ZXI6YmVmb3JlIHsKICAgICAgICB3aWR0aDogMTE4cHg7CiAgICB9CiAgICBAbWVkaWEgKG1heC13aWR0aDogNDk5cHgpIHsKICAgICAgICAubWV0aXMudHAtdGFiczpiZWZvcmUgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNzUpOwogICAgICAgIH0KICAgIH0KCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi0gUmV2b2x1dGlvbiBTbGlkZXIgNS4wIE5hdmlnYXRpbiBTa2luIFN0eWxlICAtCgogUEVSU0VQSE9ORSBTS0lOCgphdXRob3I6ICBUaGVtZVB1bmNoCmVtYWlsOiAgICAgIGluZm9AdGhlbWVwdW5jaC5jb20Kd2Vic2l0ZTogICAgaHR0cDovL3d3dy50aGVtZXB1bmNoLmNvbQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qIEFSUk9XUyAqLwoucGVyc2VwaG9uZS50cGFycm93cyB7CgljdXJzb3I6cG9pbnRlcjsKCWJhY2tncm91bmQ6I2FhYTsKCWJhY2tncm91bmQ6cmdiYSgyMDAsMjAwLDIwMCwwLjUpOwoJd2lkdGg6NDBweDsKCWhlaWdodDo0MHB4OwoJcG9zaXRpb246YWJzb2x1dGU7CglkaXNwbGF5OmJsb2NrOwoJei1pbmRleDoxMDA7CiAgYm9yZGVyOjFweCBzb2xpZCAjZjVmNWY1Owp9Ci5wZXJzZXBob25lLnRwYXJyb3dzOmhvdmVyIHsKCWJhY2tncm91bmQ6IzMzMzsKfQoucGVyc2VwaG9uZS50cGFycm93czpiZWZvcmUgewoJZm9udC1mYW1pbHk6ICJyZXZpY29ucyI7Cglmb250LXNpemU6MTVweDsKCWNvbG9yOiNmZmY7CglkaXNwbGF5OmJsb2NrOwoJbGluZS1oZWlnaHQ6IDQwcHg7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KLnBlcnNlcGhvbmUudHBhcnJvd3MudHAtbGVmdGFycm93OmJlZm9yZSB7Cgljb250ZW50OiAiXGU4MjQiOwp9Ci5wZXJzZXBob25lLnRwYXJyb3dzLnRwLXJpZ2h0YXJyb3c6YmVmb3JlIHsKCWNvbnRlbnQ6ICJcZTgyNSI7Cn0KCgoKLyogQlVMTEVUUyAqLwoucGVyc2VwaG9uZS50cC1idWxsZXRzIHsKfQoucGVyc2VwaG9uZS50cC1idWxsZXRzOmJlZm9yZSB7Cgljb250ZW50OiIgIjsKCXBvc2l0aW9uOmFic29sdXRlOwoJd2lkdGg6MTAwJTsKCWhlaWdodDoxMDAlOwoJYmFja2dyb3VuZDojdHJhbnNwYXJlbnQ7CglwYWRkaW5nOjEwcHg7CgltYXJnaW4tbGVmdDotMTBweDttYXJnaW4tdG9wOi0xMHB4OwoJYm94LXNpemluZzpjb250ZW50LWJveDsKfQoucGVyc2VwaG9uZSAudHAtYnVsbGV0IHsKCXdpZHRoOjEycHg7CgloZWlnaHQ6MTJweDsKCXBvc2l0aW9uOmFic29sdXRlOwoJYmFja2dyb3VuZDojYWFhOwoJYm9yZGVyOjFweCBzb2xpZCAjZTVlNWU1OwkKCWN1cnNvcjogcG9pbnRlcjsKCWJveC1zaXppbmc6Y29udGVudC1ib3g7Cn0KLnBlcnNlcGhvbmUgLnRwLWJ1bGxldDpob3ZlciwKLnBlcnNlcGhvbmUgLnRwLWJ1bGxldC5zZWxlY3RlZCB7CgliYWNrZ3JvdW5kOiMyMjI7Cn0KLnBlcnNlcGhvbmUgLnRwLWJ1bGxldC1pbWFnZSB7Cn0KLnBlcnNlcGhvbmUgLnRwLWJ1bGxldC10aXRsZSB7Cn0KCgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgotIFJldm9sdXRpb24gU2xpZGVyIDUuMCBOYXZpZ2F0aW4gU2tpbiBTdHlsZSAgLQoKIFVSQU5VUyBTS0lOCgphdXRob3I6ICBUaGVtZVB1bmNoCmVtYWlsOiAgICAgIGluZm9AdGhlbWVwdW5jaC5jb20Kd2Vic2l0ZTogICAgaHR0cDovL3d3dy50aGVtZXB1bmNoLmNvbQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qIEFSUk9XUyAqLwoudXJhbnVzLnRwYXJyb3dzIHsKICB3aWR0aDo1MHB4OwogIGhlaWdodDo1MHB4OwogIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7CiB9CiAudXJhbnVzLnRwYXJyb3dzOmJlZm9yZSB7CiB3aWR0aDo1MHB4OwogaGVpZ2h0OjUwcHg7CiBsaW5lLWhlaWdodDo1MHB4OwogZm9udC1zaXplOjQwcHg7CiB0cmFuc2l0aW9uOmFsbCAwLjNzOwotd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7CiB9CiAKICAudXJhbnVzLnRwYXJyb3dzOmhvdmVyOmJlZm9yZSB7CiAgICBvcGFjaXR5OjAuNzU7CiAgfQoKLyogQlVMTEVUUyAqLwoudXJhbnVzIC50cC1idWxsZXR7Cglib3JkZXItcmFkaXVzOiA1MCU7CiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTsKICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTsKICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50Owp9Ci51cmFudXMgLnRwLWJ1bGxldC5zZWxlY3RlZCwKLnVyYW51cyAudHAtYnVsbGV0OmhvdmVyIHsKICBib3gtc2hhZG93OiAwIDAgMCAycHggI0ZGRjsKICBib3JkZXI6bm9uZTsKICBib3JkZXItcmFkaXVzOiA1MCU7CgogICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50Owp9CgoKCi51cmFudXMgLnRwLWJ1bGxldC1pbm5lciB7CiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2UsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZTsKICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZSwgdHJhbnNmb3JtIDAuM3MgZWFzZTsKICB0b3A6IDA7CiAgbGVmdDogMDsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgb3V0bGluZTogbm9uZTsKICBib3JkZXItcmFkaXVzOiA1MCU7CiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsKICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7CiAgdGV4dC1pbmRlbnQ6IC05OTllbTsKICBjdXJzb3I6IHBvaW50ZXI7CiAgcG9zaXRpb246IGFic29sdXRlOwp9CgoudXJhbnVzIC50cC1idWxsZXQuc2VsZWN0ZWQgLnRwLWJ1bGxldC1pbm5lciwKLnVyYW51cyAudHAtYnVsbGV0OmhvdmVyIC50cC1idWxsZXQtaW5uZXJ7CiB0cmFuc2Zvcm06IHNjYWxlKDAuNCk7CiAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC40KTsKIGJhY2tncm91bmQtY29sb3I6I2ZmZjsKfQoKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLSBSZXZvbHV0aW9uIFNsaWRlciA1LjAgTmF2aWdhdGluIFNraW4gU3R5bGUgIC0KCiBaRVVTIFNLSU4KCmF1dGhvcjogIFRoZW1lUHVuY2gKZW1haWw6ICAgICAgaW5mb0B0aGVtZXB1bmNoLmNvbQp3ZWJzaXRlOiAgICBodHRwOi8vd3d3LnRoZW1lcHVuY2guY29tCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLyogQVJST1dTICovCi56ZXVzLnRwYXJyb3dzIHsKICBjdXJzb3I6cG9pbnRlcjsKICBtaW4td2lkdGg6NzBweDsKICBtaW4taGVpZ2h0OjcwcHg7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgZGlzcGxheTpibG9jazsKICB6LWluZGV4OjEwMDsKICBib3JkZXItcmFkaXVzOjM1cHg7ICAgCiAgb3ZlcmZsb3c6aGlkZGVuOwogIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEwKTsKfQoKLnpldXMudHBhcnJvd3M6YmVmb3JlIHsKICBmb250LWZhbWlseTogInJldmljb25zIjsKICBmb250LXNpemU6MjBweDsKICBjb2xvcjojZmZmOwogIGRpc3BsYXk6YmxvY2s7CiAgbGluZS1oZWlnaHQ6IDcwcHg7CiAgdGV4dC1hbGlnbjogY2VudGVyOyAgICAKICB6LWluZGV4OjI7CiAgcG9zaXRpb246cmVsYXRpdmU7Cn0KLnpldXMudHBhcnJvd3MudHAtbGVmdGFycm93OmJlZm9yZSB7CiAgY29udGVudDogIlxlODI0IjsKfQouemV1cy50cGFycm93cy50cC1yaWdodGFycm93OmJlZm9yZSB7CiAgY29udGVudDogIlxlODI1IjsKfQoKLnpldXMgLnRwLXRpdGxlLXdyYXAgewogIGJhY2tncm91bmQ6IzAwMDsKICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC41KTsKICB3aWR0aDoxMDAlOwogIGhlaWdodDoxMDAlOwogIHRvcDowcHg7CiAgbGVmdDowcHg7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgb3BhY2l0eTowOwogIHRyYW5zZm9ybTpzY2FsZSgwKTsKICAtd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwKTsKICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7CiAgLXdlYmtpdC10cmFuc2l0aW9uOmFsbCAwLjNzOwogIC1tb3otdHJhbnNpdGlvbjphbGwgMC4zczsKICAgYm9yZGVyLXJhZGl1czo1MCU7CiB9Ci56ZXVzIC50cC1hcnItaW1naG9sZGVyIHsKICB3aWR0aDoxMDAlOwogIGhlaWdodDoxMDAlOwogIHBvc2l0aW9uOmFic29sdXRlOwogIHRvcDowcHg7CiAgbGVmdDowcHg7CiAgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIgY2VudGVyOwogIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjsKICBib3JkZXItcmFkaXVzOjUwJTsKICB0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7CiAgLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSk7CiAgIHRyYW5zaXRpb246IGFsbCAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbjphbGwgMC4zczsKICAtbW96LXRyYW5zaXRpb246YWxsIDAuM3M7CgogfQouemV1cy50cC1yaWdodGFycm93IC50cC1hcnItaW1naG9sZGVyIHsKICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpOwogIC13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7CiAgICAgIH0KLnpldXMudHBhcnJvd3M6aG92ZXIgLnRwLWFyci1pbWdob2xkZXIgewogIHRyYW5zZm9ybTp0cmFuc2xhdGVYKDApOwogIC13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7CiAgb3BhY2l0eToxOwp9CiAgICAgIAouemV1cy50cGFycm93czpob3ZlciAudHAtdGl0bGUtd3JhcCB7CiAgdHJhbnNmb3JtOnNjYWxlKDEpOwogIC13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpOwogIG9wYWNpdHk6MTsKfQogCgovKiBCVUxMRVRTICovCi56ZXVzIC50cC1idWxsZXQgewogICAgIGJveC1zaXppbmc6Y29udGVudC1ib3g7IC13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDsgYm9yZGVyLXJhZGl1czo1MCU7CiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7CiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7CiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlOwoJICB3aWR0aDoxM3B4O2hlaWdodDoxM3B4OwoJICBib3JkZXI6MnB4IHNvbGlkICNmZmY7CiB9Ci56ZXVzIC50cC1idWxsZXQ6YWZ0ZXIgewogIGNvbnRlbnQ6ICIiOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgbGVmdDogMDsKICBib3JkZXItcmFkaXVzOiA1MCU7CiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7CiAgdHJhbnNmb3JtOiBzY2FsZSgwKTsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7CiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsKICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZTsKICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlOwp9Ci56ZXVzIC50cC1idWxsZXQ6aG92ZXI6YWZ0ZXIsCi56ZXVzIC50cC1idWxsZXQuc2VsZWN0ZWQ6YWZ0ZXJ7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4yKTsKICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7Cn0KICAKIC56ZXVzIC50cC1idWxsZXQtaW1hZ2UsCiAuemV1cyAudHAtYnVsbGV0LWltYWdlb3ZlcmxheXsKICAgICAgICB3aWR0aDoxMzVweDsKICAgICAgICBoZWlnaHQ6NjBweDsKICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsKICAgICAgICBiYWNrZ3JvdW5kOiMwMDA7CiAgICAgICAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNSk7CiAgICAgICAgYm90dG9tOjI1cHg7CiAgICAgICAgbGVmdDo1MCU7CiAgICAgICAgbWFyZ2luLWxlZnQ6LTY1cHg7CiAgICAgICAgYm94LXNpemluZzpib3JkZXItYm94OwogICAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjsKICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7CiAgICAgICAgdmlzaWJpbGl0eTpoaWRkZW47CiAgICAgICAgb3BhY2l0eTowOwogICAgICAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgCiAgICAgIAliYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOwoJCXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7CiAgCQktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7CiAgCQl0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOwogICAgICAgIGJvcmRlci1yYWRpdXM6NHB4OwoKfQogICAgICAgICAgCgouemV1cyAudHAtYnVsbGV0LXRpdGxlLAouemV1cyAudHAtYnVsbGV0LWltYWdlb3ZlcmxheSB7CiAgICAgICAgei1pbmRleDoyOwogICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsKCSAgCXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7Cn0gICAgIAouemV1cyAudHAtYnVsbGV0LXRpdGxlIHsgCiAgICAgICAgY29sb3I6I2ZmZjsKICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjsKICAgICAgICBsaW5lLWhlaWdodDoxNXB4OwogICAgICAgIGZvbnQtc2l6ZToxM3B4OwogICAgICAgIGZvbnQtd2VpZ2h0OjYwMDsgIAogICAgICAgIHotaW5kZXg6MzsKICAgICAgICAgdmlzaWJpbGl0eTpoaWRkZW47CiAgICAgICAgb3BhY2l0eTowOwogICAgICAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgCiAgICAgIAliYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOwoJCXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7CiAgCQktd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7CiAgCQl0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOwogICAgICAgIHBvc2l0aW9uOmFic29sdXRlOwogICAgICAgIGJvdHRvbTo0NXB4OwogICAgICAgIHdpZHRoOjEzNXB4OwogICAgCXZlcnRpY2FsLWFsaWduOm1pZGRsZTsKICAgICAgICBsZWZ0Oi01N3B4Owp9CiAgICAgIAouemV1cyAudHAtYnVsbGV0OmhvdmVyIC50cC1idWxsZXQtdGl0bGUsCi56ZXVzIC50cC1idWxsZXQ6aG92ZXIgLnRwLWJ1bGxldC1pbWFnZSwKLnpldXMgLnRwLWJ1bGxldDpob3ZlciAudHAtYnVsbGV0LWltYWdlb3ZlcmxheXsKICAgICAgb3BhY2l0eToxOwogICAgICB2aXNpYmlsaXR5OnZpc2libGU7CgkgIC13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMHB4KTsKICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMHB4KTsgICAgICAgICAKICAgIH0KCi8qIFRIVU1CUyAqLwouemV1cyAudHAtdGh1bWIgewpvcGFjaXR5OjEKfQoKLnpldXMgLnRwLXRodW1iLW92ZXIgewogIGJhY2tncm91bmQ6IzAwMDsKICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4yNSk7CiAgd2lkdGg6MTAwJTsKICBoZWlnaHQ6MTAwJTsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICB0b3A6MHB4OwogIGxlZnQ6MHB4OwogIHotaW5kZXg6MTsKICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7CiAgdHJhbnNpdGlvbjphbGwgMC4zczsKfQoKLnpldXMgLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKICBmb250LWZhbWlseTogInJldmljb25zIjsKICBmb250LXNpemU6MTJweDsKICBjb2xvcjojYWFhOwogIGNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43NSk7CiAgZGlzcGxheTpibG9jazsKICBsaW5lLWhlaWdodDogMTJweDsKICB0ZXh0LWFsaWduOiBsZWZ0OyAgICAKICB6LWluZGV4OjI7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgdG9wOjIwcHg7CiAgcmlnaHQ6MjBweDsKICB6LWluZGV4OjI7Cn0KLnpldXMgLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGU4MjUiOwp9CgouemV1cyAudHAtdGh1bWItdGl0bGUgewogIGZvbnQtZmFtaWx5OiJSYWxld2F5IjsKICBsZXR0ZXItc3BhY2luZzoxcHg7CiAgZm9udC1zaXplOjEycHg7CiAgY29sb3I6I2ZmZjsKICBkaXNwbGF5OmJsb2NrOwogIGxpbmUtaGVpZ2h0OiAxNXB4OwogIHRleHQtYWxpZ246IGxlZnQ7ICAgIAogIHotaW5kZXg6MjsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICB0b3A6MHB4OwogIGxlZnQ6MHB4OwogIHotaW5kZXg6MjsKICBwYWRkaW5nOjIwcHggMzVweCAyMHB4IDIwcHg7CiAgd2lkdGg6MTAwJTsKICBoZWlnaHQ6MTAwJTsKICBib3gtc2l6aW5nOmJvcmRlci1ib3g7CiAgdHJhbnNpdGlvbjphbGwgMC4zczsKICAtd2Via2l0LXRyYW5zaXRpb246YWxsIDAuM3M7CiAgZm9udC13ZWlnaHQ6NTAwOwp9CgouemV1cyAudHAtdGh1bWIuc2VsZWN0ZWQgLnRwLXRodW1iLW1vcmU6YmVmb3JlLAouemV1cyAudHAtdGh1bWI6aG92ZXIgLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKIGNvbG9yOiNhYWE7Cgp9CgouemV1cyAudHAtdGh1bWIuc2VsZWN0ZWQgLnRwLXRodW1iLW92ZXIsCi56ZXVzIC50cC10aHVtYjpob3ZlciAudHAtdGh1bWItb3ZlciB7CiBiYWNrZ3JvdW5kOiMwMDA7Cn0KLnpldXMgLnRwLXRodW1iLnNlbGVjdGVkIC50cC10aHVtYi10aXRsZSwKLnpldXMgLnRwLXRodW1iOmhvdmVyIC50cC10aHVtYi10aXRsZSB7CiAgY29sb3I6I2ZmZjsKCn0KCgovKiBUQUJTICovCi56ZXVzIC50cC10YWIgeyAKICBvcGFjaXR5OjE7ICAgICAgCiAgYm94LXNpemluZzpib3JkZXItYm94Owp9CgouemV1cyAudHAtdGFiLXRpdGxlIHsgCmRpc3BsYXk6IGJsb2NrOwp0ZXh0LWFsaWduOiBjZW50ZXI7CmJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4yNSk7CmZvbnQtZmFtaWx5OiAiUm9ib3RvIFNsYWIiLCBzZXJpZjsgCmZvbnQtd2VpZ2h0OiA3MDA7IApmb250LXNpemU6IDEzcHg7IApsaW5lLWhlaWdodDogMTNweDsKY29sb3I6ICNmZmY7IApwYWRkaW5nOiA5cHggMTBweDsgfQoKLnpldXMgLnRwLXRhYjpob3ZlciAudHAtdGFiLXRpdGxlLAouemV1cyAudHAtdGFiLnNlbGVjdGVkIC50cC10YWItdGl0bGUgewogY29sb3I6ICMwMDA7CiAgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDEpOyAKfQoKCgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgotIFJldm9sdXRpb24gU2xpZGVyIDUuMCBOYXZpZ2F0aW4gU2tpbiBTdHlsZSAgLQoKIFpFVVMgU0tJTgoKYXV0aG9yOiAgVGhlbWVQdW5jaAplbWFpbDogICAgICBpbmZvQHRoZW1lcHVuY2guY29tCndlYnNpdGU6ICAgIGh0dHA6Ly93d3cudGhlbWVwdW5jaC5jb20KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoKCi5wb3N0LXRhYnMgLnRwLXRodW1iIHsKb3BhY2l0eToxCn0KCi5wb3N0LXRhYnMgLnRwLXRodW1iLW92ZXIgewogIGJhY2tncm91bmQ6IzI1MjUyNTsKICB3aWR0aDoxMDAlOwogIGhlaWdodDoxMDAlOwogIHBvc2l0aW9uOmFic29sdXRlOwogIHRvcDowcHg7CiAgbGVmdDowcHg7CiAgei1pbmRleDoxOwogIC13ZWJraXQtdHJhbnNpdGlvbjphbGwgMC4zczsKICB0cmFuc2l0aW9uOmFsbCAwLjNzOwp9CgoucG9zdC10YWJzIC50cC10aHVtYi1tb3JlOmJlZm9yZSB7CiAgZm9udC1mYW1pbHk6ICJyZXZpY29ucyI7CiAgZm9udC1zaXplOjEycHg7CiAgY29sb3I6I2FhYTsKICBjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNzUpOwogIGRpc3BsYXk6YmxvY2s7CiAgbGluZS1oZWlnaHQ6IDEycHg7CiAgdGV4dC1hbGlnbjogbGVmdDsgICAgCiAgei1pbmRleDoyOwogIHBvc2l0aW9uOmFic29sdXRlOwogIHRvcDoxNXB4OwogIHJpZ2h0OjE1cHg7CiAgei1pbmRleDoyOwp9Ci5wb3N0LXRhYnMgLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGU4MjUiOwp9CgoucG9zdC10YWJzIC50cC10aHVtYi10aXRsZSB7CiAgZm9udC1mYW1pbHk6InJhbGV3YXkiOwogIGxldHRlci1zcGFjaW5nOjFweDsKICBmb250LXNpemU6MTJweDsKICBjb2xvcjojZmZmOwogIGRpc3BsYXk6YmxvY2s7CiAgbGluZS1oZWlnaHQ6IDE1cHg7CiAgdGV4dC1hbGlnbjogbGVmdDsgICAgCiAgei1pbmRleDoyOwogIHBvc2l0aW9uOmFic29sdXRlOwogIHRvcDowcHg7CiAgbGVmdDowcHg7CiAgei1pbmRleDoyOwogIHBhZGRpbmc6MTVweCAzMHB4IDE1cHggMTVweDsKICB3aWR0aDoxMDAlOwogIGhlaWdodDoxMDAlOwogIGJveC1zaXppbmc6Ym9yZGVyLWJveDsKICB0cmFuc2l0aW9uOmFsbCAwLjNzOwogIC13ZWJraXQtdHJhbnNpdGlvbjphbGwgMC4zczsKICBmb250LXdlaWdodDo1MDA7Cn0KCi5wb3N0LXRhYnMgLnRwLXRodW1iLnNlbGVjdGVkIC50cC10aHVtYi1tb3JlOmJlZm9yZSwKLnBvc3QtdGFicyAudHAtdGh1bWI6aG92ZXIgLnRwLXRodW1iLW1vcmU6YmVmb3JlIHsKIGNvbG9yOiNhYWE7Cgp9CgoucG9zdC10YWJzIC50cC10aHVtYi5zZWxlY3RlZCAudHAtdGh1bWItb3ZlciwKLnBvc3QtdGFicyAudHAtdGh1bWI6aG92ZXIgLnRwLXRodW1iLW92ZXIgewogYmFja2dyb3VuZDojZmZmOwp9Ci5wb3N0LXRhYnMgLnRwLXRodW1iLnNlbGVjdGVkIC50cC10aHVtYi10aXRsZSwKLnBvc3QtdGFicyAudHAtdGh1bWI6aG92ZXIgLnRwLXRodW1iLXRpdGxlIHsKICBjb2xvcjojMDAwOwoKfQo="}},"time_used":17583,"timings":{"blocked":9232,"dns":0,"connect":0,"send":7354,"wait":997,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"wss","addr":"wss://cable.coingecko.com/cable","fqdn":"cable.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"websocket","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.468Z","timestamp":1785143926468,"http_version":"","security_state":"insecure","security_info":null,"request":{"raw":"GET /cable HTTP/1.1\r\nHost: cable.coingecko.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-WebSocket-Version: 13\r\nOrigin: https://scromegatrade.com\r\nSec-WebSocket-Protocol: actioncable-v1-json, actioncable-unsupported\r\nSec-WebSocket-Extensions: permessage-deflate\r\nSec-WebSocket-Key: ccanUQpVOBg2JLGArrTBzQ==\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: Upgrade\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: websocket\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\nUpgrade: websocket\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-11T07:57:31.65745Z","times_seen":17832625,"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":"scromegatrade.com/image/tff.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.522Z","timestamp":1785143926522,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/tff.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coin-images.coingecko.com/coins/images/738/large/CG_EOS_Icon.png?1731705232","fqdn":"coin-images.coingecko.com","domain":"coingecko.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.798Z","timestamp":1785143926798,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /coins/images/738/large/CG_EOS_Icon.png?1731705232 HTTP/1.1\r\nHost: coin-images.coingecko.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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\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-11T07:57:31.65745Z","times_seen":17832625,"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":"scromegatrade.com/image/new/quote.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.345Z","timestamp":1785143908345,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /image/new/quote.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:46 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"543-63ccd443bdcc0\"\r\nAccept-Ranges: bytes\r\nContent-Length: 1347\r\nVary: User-Agent\r\nKeep-Alive: timeout=5, max=93\r\nConnection: Keep-Alive\r\nContent-Type: image/png\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":1347,"size_decoded":1663,"mime_type":"image/png","magic":"PNG image data, 26 x 24, 8-bit/color RGBA, non-interlaced","md5":"34e4a4479489640f963cd0d92442a3c2","sha1":"0da9538eb322151f5deaec1ad9d320aae932cc1a","sha256":"faeae203eae62a35cede9d7f8c50dbf7fbe264d66ad50c0b0362a14eaf8638fa","sha512":"a009a88070db0f627fbd562d222dcafe3eee203ea85a8a384fcd44e3cbcbcea98936e7d74f532a538fe78306bb879784d7044f622e5bad529feeacde61972053","ssdeep":"","tlshash":"18217559f6026981f16afe8324f6811759124984deadf0e6eccdcc2b69311f446153e7","first_seen":"2023-11-05T05:29:38Z","last_seen":"2026-08-09T04:41:07.802218Z","times_seen":120,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAABoAAAAYCAYAAADkgu3FAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA71pVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wUmlnaHRzPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvcmlnaHRzLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcFJpZ2h0czpNYXJrZWQ9IkZhbHNlIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6RkY5REU0RTEzRTJFRTYxMUEyQThGNzk4QjdDOTdFRjkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NUFBRkZGODA0N0U4MTFFOEEyOUVDMUNDQ0NDNzUyQjQiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NUFBRkZGN0Y0N0U4MTFFOEEyOUVDMUNDQ0NDNzUyQjQiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6YjYzZTUzMjYtNjhiMS1iNzQzLTlkZDYtODcwN2I4ZmM2NGRjIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkZGOURFNEUxM0UyRUU2MTFBMkE4Rjc5OEI3Qzk3RUY5Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+NBdSEgAAARxJREFUeNrslMENgkAQRVliAZbATY9y0KvagR2IJVCBsQLoAK1AS8CrXvSmJymBDvBjgOCyswzgyTDJZJLJ/HmZnd0VBmEj52IhbOHxcz9zqbokSSq58eZaaB/B9KMVBMRB8ODDLLUELOSAAKloAQuFAhIgOFI6gtuAxToQIKTWlCCeojA3y9AYIFqtKEFWCEdFkV+3I0BI7deOAEnP81U619xcQHzdJDotIIU2PzpHUXiqg+i0ZUgZtFY02Bk8Y2lF9l5eUv6Gaew6AqXFNBWtSdymkDkNW5uCFor8nQlia02iQWS0t4gCzTs0ZWsHRN7DomPpcrjMnh4ecCxdDpcCTTpMOWmyo59bD+pBfwxKH+wBfm7zfzXRvgUYADowa0XEqwcEAAAAAElFTkSuQmCC"}},"time_used":18147,"timings":{"blocked":17901,"dns":0,"connect":0,"send":0,"wait":246,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/lora/v37/0QI6MX1D_JOuGQbT0gvTJPa787weuxJBkq0.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://scromegatrade.com/","date":"2026-07-27T09:18:46.485Z","timestamp":1785143926485,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/lora/v37/0QI6MX1D_JOuGQbT0gvTJPa787weuxJBkq0.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://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.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: 21148\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:23 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:23 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Wed, 10 Sep 2025 17:07:45 GMT\r\ncontent-type: font/woff2\r\nage: 418103\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":21148,"size_decoded":21961,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 21148, version 1.0","md5":"5d5a586a9741d0050f687f4a1039b421","sha1":"a8b5e205b4bd4eac321247a2188a27a24b9a2860","sha256":"ac079950fd9885261c0f73d9e87233f31b5427333ce0eb20e26c119458493c40","sha512":"c17375f370f106e65c29e2c47f6a61cfd899dca801f7eaec3d96b292a4c9cd34b643e2455cbd8f2081225e0871a4f8143b8146a0d2cb4a750dbeefb5b3f511e3","ssdeep":"384:DStApsoS9xPMxpaQcYL2XI1Hv24p5OjYQM4UP3I+iu:DxC9NM6uyIlUYQFUg3u","tlshash":"ac92f20bc1b8b4d6c5dd65a8f14f66514a58032e3bef16f58d2fd025e5b4f2d11a3630","first_seen":"2025-09-14T18:33:50.003599Z","last_seen":"2026-08-11T07:59:18.846091Z","times_seen":3282,"resource_available":false,"data":"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UJUppptmholxidZAr+JqkqP40ZlsYdyij3s84hmveJP54KODtFy5mGewdeKiJohvDDHGFL/4JyDmBCYowQlJaMISnoi0SmSiEp2YxAZJMKGEE0k0scTNkmCmeo880KAxHfKzDDz1h/TW3n4SYPgns1oMvSpHQojFsRfQYNP7DyEPUT4ennufUJKKnpI+ykKrcL3whVxOkVrd4TJpcMhEZnNiRGanOLIzHzMPBfO+hvjQjQjksKYrEMjRXPiIC614Q+CZidkzDMUzCIfqSe7IV7yxWV/5i9hk0cv9s4B3sCAWalazZEKF6Q5T5FeNFvFx4x52xrjnAUkjxIiW47ouK+J657M+uoMAitY77id5ZFti1awmRFbeEkNy3x6PmRLZ7QURxGQL3xlvIlscm8qV20dvucRHsyEZWRWHbDybClBAsmEY3yLbDuse7arCyJpZjldaRkAyo8ecR41Of6qj+O2QGt8PWVTy35+qokfKlVl6AohfIZmXU2Et/fE8jcvISvpDL16hZKyqzpsdhEn4CSYinp3k0zhipFmD3aGIiszqNLLH5aLyrzCv742EXA5/2n/qqmDTH9P4i+UsYmcCAA=="}},"time_used":20,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":15,"receive":5,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-market-quotes.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://scromegatrade.com/","date":"2026-07-27T09:18:28.280Z","timestamp":1785143908280,"http_version":"HTTP/2","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":"*.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-market-quotes.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://scromegatrade.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 09:18:28 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: \"42f49017eddd35f92ff77d0a6cadc1ab\"\r\nlast-modified: Fri, 24 Jul 2026 10:29:25 GMT\r\nx-amz-id-2: Qhpi7Z1Y56lfTgjBYxGoC2n0bNM1Jfn+nSLMt7ArDRYjxZCXB5UUlrm13GJKlqtG3lJs9voI3tU=\r\nx-amz-request-id: 318V4PKGXC193E03\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: mfwmWJ1k3_pF1FT7cN.TbPG2321o85aC\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 16:30:19\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 102e697489f5518e7620a8e070d317f9\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":12750,"size_decoded":5872,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (3458)","md5":"42f49017eddd35f92ff77d0a6cadc1ab","sha1":"746f606ddc029cc79a6be02d7b63197e1c619b76","sha256":"711dda3b69a995391f4af2e689caa0e2f09f650d75a317a96a963435053dcdf6","sha512":"84561a92b3d9d93b9032d342be881f268f6bc9a43f0213821779b1f2c99d4d18efa357c2fb716d950cfab9fbb88a60c3d69055d0a3335efbfc721340e137f159","ssdeep":"384:gf6uCWoofYkFdjhUjrb26n0q6OrmaRMViZME/:uD5Unb26nD6OrmaRkFE/","tlshash":"5a42c7aab660dcbd519945dba07a2321b61d3944b203eca4b5ece4c510fdccca531fbe","first_seen":"2026-07-16T20:48:56.391302Z","last_seen":"2026-08-11T04:44:52.842103Z","times_seen":100,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHQodCxlKXtpZihudWxsPT09dCl0aHJvdyBuZXcgRXJyb3IoYCR7ZT8/IlZhbHVlIn0gaXMgbnVsbGApO3JldHVybiB0fWNvbnN0IGU9eyJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0IyQjVCRSIsImNvbG9yLWJyYW5kIjoiIzI5NjJGRiIsImNvbG9yLWJyYW5kLWhvdmVyIjoiIzFFNTNFNSIsImNvbG9yLWJyYW5kLWFjdGl2ZSI6IiMxODQ4Q0MifQo7Y29uc3QgaT1KU09OLnBhcnNlKCd7ImNyeXB0by1ta3Qtc2NyZWVuZXIiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6NDkwLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJtYXJrZXQiOiJjcnlwdG8iLCJzY3JlZW5lcl90eXBlIjoiY3J5cHRvX21rdCIsImRpc3BsYXlDdXJyZW5jeSI6IlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwiZXZlbnRzIjp7IndpZHRoIjo1MTAsImhlaWdodCI6NjAwLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiaGlkZUltcG9ydGFuY2VJbmRpY2F0b3IiOmZhbHNlLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1jcm9zcy1yYXRlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1oZWF0LW1hcCI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIiwiQ05ZIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJob3RsaXN0cyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjYwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1hcmtldC1vdmVydmlldyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjY1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjp0cnVlfSwibWFya2V0LXF1b3RlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQ1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1pbmktc3ltYm9sLW92ZXJ2aWV3Ijp7IndpZHRoIjozNTAsImhlaWdodCI6MjIwLCJzeW1ib2wiOiJGWDpFVVJVU0QiLCJkYXRlUmFuZ2UiOiIxMk0iLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiYXV0b3NpemUiOmZhbHNlLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInN5bWJvbC1vdmVydmlldyI6eyJ3aWR0aCI6MTAwMCwiaGVpZ2h0Ijo1MDAsInN5bWJvbHMiOltbIkFwcGxlIiwiQUFQTHwxRCJdLFsiR29vZ2xlIiwiR09PR0x8MUQiXSxbIk1pY3Jvc29mdCIsIk1TRlR8MUQiXV0sImF1dG9zaXplIjpmYWxzZSwiY2hhcnRPbmx5IjpmYWxzZSwiaGlkZURhdGVSYW5nZXMiOmZhbHNlLCJoaWRlTWFya2V0U3RhdHVzIjpmYWxzZSwiaGlkZVN5bWJvbExvZ28iOmZhbHNlLCJzY2FsZVBvc2l0aW9uIjoicmlnaHQiLCJzY2FsZU1vZGUiOiJOb3JtYWwiLCJmb250RmFtaWx5IjoiLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBUcmVidWNoZXQgTVMsIFJvYm90bywgVWJ1bnR1LCBzYW5zLXNlcmlmIiwiZm9udFNpemUiOiIxMCIsIm5vVGltZVNjYWxlIjpmYWxzZSwiY2hhcnRUeXBlIjoiYXJlYSIsInZhbHVlc1RyYWNraW5nIjoiMCIsImNoYW5nZU1vZGUiOiJwcmljZS1hbmQtcGVyY2VudCJ9LCJhZHZhbmNlZC1jaGFydCI6eyJib2R5SWQiOiJ3aWRnZXQtY29udGFpbmVyIiwiYm9keUNsYXNzZXMiOlsiY2hhcnQtcGFnZSIsInVuc2VsZWN0YWJsZSIsIm9uLXdpZGdldCJdfSwic2NyZWVuZXIiOnsid2lkdGgiOjExMDAsImhlaWdodCI6NTIzLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJkZWZhdWx0U2NyZWVuIjoiZ2VuZXJhbCIsIm1hcmtldCI6ImZvcmV4Iiwic2hvd1Rvb2xiYXIiOnRydWUsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic2luZ2xlLXF1b3RlIjp7IndpZHRoIjozNTAsInN5bWJvbCI6IkZYOkVVUlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic3ltYm9sLXByb2ZpbGUiOnsid2lkdGgiOjQ4MCwiaGVpZ2h0Ijo2NTAsInN5bWJvbCI6Ik5BU0RBUTpBQVBMIiwiaXNUcmFuc3BhcmVudCI6ZmFsc2V9LCJzeW1ib2wtaW5mbyI6eyJ3aWR0aCI6MTAwMCwic3ltYm9sIjoiTkFTREFROkFBUEwiLCJpc1RyYW5zcGFyZW50IjpmYWxzZX0sInRlY2huaWNhbC1hbmFseXNpcyI6eyJpbnRlcnZhbCI6IjFtIiwid2lkdGgiOjQyNSwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImhlaWdodCI6NDUwLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsInNob3dJbnRlcnZhbFRhYnMiOnRydWUsImRpc3BsYXlNb2RlIjoic2luZ2xlIn0sInRpY2tlci10YXBlIjp7ImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6ImFkYXB0aXZlIiwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwidGlja2VycyI6eyJpc1RyYW5zcGFyZW50IjpmYWxzZSwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwiZmluYW5jaWFscyI6eyJ3aWR0aCI6NDgwLCJoZWlnaHQiOjgzMCwiYXV0b3NpemUiOmZhbHNlLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInRpbWVsaW5lIjp7IndpZHRoIjo0ODAsImhlaWdodCI6ODMwLCJhdXRvc2l6ZSI6ZmFsc2UsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJmZWVkTW9kZSI6ImFsbF9zeW1ib2xzIn0sInN0b2NrLWhlYXRtYXAiOnsid2lkdGgiOjUwMCwiaGVpZ2h0Ijo1MDAsImF1dG9zaXplIjp0cnVlLCJkYXRhU291cmNlIjoiU1BYNTAwIiwiZXhjaGFuZ2VzIjpbXSwiZ3JvdXBpbmciOiJzZWN0b3IiLCJibG9ja1NpemUiOiJtYXJrZXRfY2FwX2Jhc2ljIiwiYmxvY2tDb2xvciI6ImNoYW5nZSIsImhhc1RvcEJhciI6ZmFsc2UsImlzRGF0YVNldEVuYWJsZWQiOmZhbHNlLCJpc1pvb21FbmFibGVkIjp0cnVlLCJoYXNTeW1ib2xUb29sdGlwIjp0cnVlLCJzeW1ib2xVcmwiOiIiLCJpc01vbm9TaXplIjpmYWxzZX0sImNyeXB0by1jb2lucy1oZWF0bWFwIjp7IndpZHRoIjo1MDAsImhlaWdodCI6NTAwLCJhdXRvc2l6ZSI6dHJ1ZSwiZGF0YVNvdXJjZSI6IkNyeXB0byIsImJsb2NrU2l6ZSI6Im1hcmtldF9jYXBfY2FsYyIsImJsb2NrQ29sb3IiOiIyNGhfY2xvc2VfY2hhbmdlfDUiLCJoYXNUb3BCYXIiOmZhbHNlLCJpc0RhdGFTZXRFbmFibGVkIjpmYWxzZSwiaXNab29tRW5hYmxlZCI6dHJ1ZSwiaGFzU3ltYm9sVG9vbHRpcCI6dHJ1ZSwic3ltYm9sVXJsIjoiIiwiaXNNb25vU2l6ZSI6ZmFsc2V9LCJldGYtaGVhdG1hcCI6eyJ3aWR0aCI6NTAwLCJoZWlnaHQiOjUwMCwiYXV0b3NpemUiOnRydWUsImRhdGFTb3VyY2UiOiJBbGxVU0V0ZiIsImJsb2NrU2l6ZSI6InZvbHVtZSIsImJsb2NrQ29sb3IiOiJjaGFuZ2UiLCJncm91cGluZyI6ImFzc2V0X2NsYXNzIiwiaGFzVG9wQmFyIjpmYWxzZSwiaXNEYXRhU2V0RW5hYmxlZCI6ZmFsc2UsImlzWm9vbUVuYWJsZWQiOnRydWUsImhhc1N5bWJvbFRvb2x0aXAiOnRydWUsInN5bWJvbFVybCI6IiIsImlzTW9ub1NpemUiOmZhbHNlfX0nKQo7dmFyIHIsczshZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU2V0U3ltYm9sPSJzZXQtc3ltYm9sIix0LlNldEludGVydmFsPSJzZXQtaW50ZXJ2YWwifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHJ8fChyPXt9KSksZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU3ltYm9sQ2xpY2s9InR2LXdpZGdldC1zeW1ib2wtY2xpY2siLHQuV2lkZ2V0TG9hZD0idHYtd2lkZ2V0LWxvYWQiLHQuV2lkZ2V0UmVhZHk9InR2LXdpZGdldC1yZWFkeSIsdC5SZXNpemVJZnJhbWU9InR2LXdpZGdldC1yZXNpemUtaWZyYW1lIix0Lk5vRGF0YT0idHYtd2lkZ2V0LW5vLWRhdGEifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHN8fChzPXt9KSk7Y29uc3Qgbj0iX19GQUlMX18iLG89Il9fTkhUVFBfXyIsYT1uZXcgUmVnRXhwKCJeaHR0cChzKT86KC8vKT8iKTtmdW5jdGlvbiBsKHQ9bG9jYXRpb24uaHJlZil7Y29uc3QgZT1mdW5jdGlvbih0KXt0cnl7Y29uc3QgZT1uZXcgVVJMKHQpO3JldHVybiBhLnRlc3QoZS5wcm90b2NvbCk/bnVsbDpvfWNhdGNoKHQpe3JldHVybiBufX0odCk7cmV0dXJuIGV8fHQucmVwbGFjZShhLCIiKX1jb25zdCBjPXt3aWRnZXRIb3N0OiJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tIixlbnY6IkJBVFRMRSJ9O2NvbnN0IGg9WyJsb2NhbGUiLCJzeW1ib2wiLCJtYXJrZXQiXTtjbGFzcyBke2NvbnN0cnVjdG9yKHQpe3RoaXMuX2NvcHlyaWdodENvbnRhaW5lcj1udWxsO2NvbnN0IGU9dD8/dGhpcy5fZ2V0U2NyaXB0SW5mbygpO2UmJnRoaXMuX3JlcGxhY2VTY3JpcHQoZSl9aGFzQ29weXJpZ2h0KCl7cmV0dXJuISF0aGlzLl9jb3B5cmlnaHRDb250YWluZXJ9Z2V0IHdpZGdldElkKCl7dGhyb3cgbmV3IEVycm9yKCJNZXRob2QgbXVzdCBiZSBvdmVycmlkZGVuIil9d2lkZ2V0VXRtTmFtZSgpe3JldHVybiB0aGlzLndpZGdldElkfWdldCBkZWZhdWx0U2V0dGluZ3MoKXtyZXR1cm4gaVt0aGlzLndpZGdldElkXX1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXtyZXR1cm5bXX1nZXQgdXNlUGFyYW1zRm9yQ29ubmVjdFNvY2tldCgpe3JldHVybiExfWdldCB1c2VTbm93cGxvd1BhZ2VWaWV3KCl7cmV0dXJuITF9dXNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzKHQpe3JldHVybnt9fWZpbHRlclJhd1NldHRpbmdzKHQpe2NvbnN0IGU9e30saT17Li4udCwuLi50aGlzLnVzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyh0KX0scj1PYmplY3Qua2V5cyhpKSxzPW5ldyBTZXQodGhpcy5wcm9wZXJ0aWVzVG9Xb3JrV2l0aCk7cmV0dXJuIHIuZm9yRWFjaCgodD0+e3MuaGFzKHQpJiYoZVt0XT1pW3RdKX0pKSxlfWdldCBzaG91bGRMaXN0ZW5Ub0lmcmFtZVJlc2l6ZSgpe3JldHVybiEwfWdldCBwcm9wZXJ0aWVzVG9Ta2lwSW5IYXNoKCl7cmV0dXJuWyJjdXN0b21lciIsImxvY2FsZSJdfWdldCBwcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcygpe3JldHVyblsibG9jYWxlIl19c2hvdWxkQWRkQ29weXJpZ2h0U3R5bGVzKCl7cmV0dXJuITB9X2RlZmF1bHRXaWR0aCgpe31fZGVmYXVsdEhlaWdodCgpe31fZ2V0U2NyaXB0SW5mbygpe2NvbnN0IHQ9ZG9jdW1lbnQuY3VycmVudFNjcmlwdDtpZighdHx8IXQuc3JjKXJldHVybiBjb25zb2xlLmVycm9yKCJDb3VsZCBub3Qgc2VsZi1yZXBsYWNlIHRoZSBzY3JpcHQsIHdpZGdldCBlbWJlZGRpbmcgaGFzIGJlZW4gYWJvcnRlZCIpLG51bGw7cmV0dXJue3NjcmlwdFVSTDpmdW5jdGlvbih0KXtjb25zdCBlPW5ldyBVUkwodCxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm57aG9zdDplLmhvc3QscGF0aG5hbWU6ZS5wYXRobmFtZSxocmVmOmUuaHJlZixwcm90b2NvbDplLnByb3RvY29sfX0odC5zcmMpLHNjcmlwdEVsZW1lbnQ6dCxpZDp0LmlkLHJhd1NldHRpbmdzOnRoaXMuX3NjcmlwdENvbnRlbnRUb0pTT04odCksb3ZlcnJpZGVIb3N0OnQuZ2V0QXR0cmlidXRlKCJvdmVycmlkZS1ob3N0Iil9fV9yZXBsYWNlU2NyaXB0KGkpe2NvbnN0e3NjcmlwdFVSTDpyLHNjcmlwdEVsZW1lbnQ6bixyYXdTZXR0aW5nczpvLGlkOmEsb3ZlcnJpZGVIb3N0Omx9PWksaD1sfHxmdW5jdGlvbih0LGU9Yyl7aWYoIkJBVFRMRSI9PT1lLmVudil7aWYod2luZG93LldJREdFVF9IT1NUKXJldHVybiB3aW5kb3cuV0lER0VUX0hPU1Q7aWYodC5ob3N0Lm1hdGNoKC9cLlx3c3RcdypcLlx3diQvaSkpcmV0dXJuYGh0dHBzOi8vJHsoaT10Lmhvc3Qscj0zLGkuc3BsaXQoIi4iKS5zbGljZSgtcikuam9pbigiLiIpKS5yZXBsYWNlKC9eYmV0YTAoPz1cLnhzdGFnaW5nXC50diQpL2ksImJldGEwLXhzdGFnaW5nIikucmVwbGFjZSgvXC4oXHcpdiQvaSwoKHQsZSk9PmAtd2lkZ2V0LiR7ZX12YCkpfWB9dmFyIGkscjtyZXR1cm4gZS53aWRnZXRIb3N0fShyKSxkPW4ucGFyZW50Tm9kZTtvJiYidGltZWxpbmUiPT09dGhpcy53aWRnZXRVdG1OYW1lKCkmJihvLmxvY2FsZT0iZW4iKTtjb25zdCBnPW4ubm9uY2V8fG4uZ2V0QXR0cmlidXRlKCJub25jZSIpLHU9ZnVuY3Rpb24odCl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7Y29uc3QgZT10LnF1ZXJ5U2VsZWN0b3IoIiN0cmFkaW5ndmlldy1jb3B5cmlnaHQiKSxpPXQucXVlcnlTZWxlY3RvcigiI3RyYWRpbmd2aWV3LXF1b3RlcyIpLHI9ZXx8aTtyZXR1cm4gciYmdC5yZW1vdmVDaGlsZChyKSxyfShkKSxtPWQucXVlcnlTZWxlY3RvcigiLnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQiKTt0aGlzLl9jb3B5cmlnaHRDb250YWluZXI9dXx8bTtjb25zdCBwPWQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIik7dGhpcy5pZnJhbWVDb250YWluZXI9ZCYmcD9kOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG8mJih0aGlzLnNldHRpbmdzPXRoaXMuZmlsdGVyUmF3U2V0dGluZ3MobykpLG8mJnRoaXMuX3ZhbGlkYXRlU2V0dGluZ3MoKXx8KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgc2V0dGluZ3MgcHJvdmlkZWQsIGZhbGwgYmFjayB0byBkZWZhdWx0cyIpLHRoaXMuc2V0dGluZ3M9dGhpcy5maWx0ZXJSYXdTZXR0aW5ncyh0aGlzLmRlZmF1bHRTZXR0aW5ncykpCjtjb25zdCBmPSIzMnB4Iix7d2lkdGg6dyxoZWlnaHQ6eX09dGhpcy5zZXR0aW5ncyxiPXZvaWQgMD09PXk/dm9pZCAwOmAke3l9JHtOdW1iZXIuaXNJbnRlZ2VyKHkpPyJweCI6IiJ9YCxTPXZvaWQgMD09PXc/dm9pZCAwOmAke3d9JHtOdW1iZXIuaXNJbnRlZ2VyKHcpPyJweCI6IiJ9YDtpZih2b2lkIDAhPT1TJiYodGhpcy5pZnJhbWVDb250YWluZXIuc3R5bGUud2lkdGg9Uyksdm9pZCAwIT09YiYmKHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD1iKSx0aGlzLnNob3VsZEFkZENvcHlyaWdodFN0eWxlcygpKXtjb25zdCB0PWZ1bmN0aW9uKCl7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiB0LmlubmVySFRNTD1gXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IHtcblx0XHRmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcblx0XHQvKiBAbWl4aW4gc2YtcHJvLWRpc3BsYXktZm9udDsgKi9cblx0XHRmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnVHJlYnVjaGV0IE1TJywgUm9ib3RvLCBVYnVudHUsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICR7ZVsiY29sb3ItY29sZC1ncmF5LTMwMCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYTp2aXNpdGVkIHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmhvdmVyIC5ibHVlLXRleHQge1xuXHRcdGNvbG9yOiAke2VbImNvbG9yLWJyYW5kLWhvdmVyIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmFjdGl2ZSAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZC1hY3RpdmUiXX0gIWltcG9ydGFudDtcblx0fVxuXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IGE6dmlzaXRlZCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cdGAsdH0oKTtnJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGcpLHRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfWNvbnN0IHY9dGhpcy5oYXNDb3B5cmlnaHQoKT9gY2FsYygxMDAlIC0gJHtmfSlgOiIxMDAlIixDPWxvY2F0aW9uLmhvc3RuYW1lLFQ9bT8id2lkZ2V0X25ldyI6IndpZGdldCIsXz10aGlzLndpZGdldFV0bU5hbWUoKTt0aGlzLnNldHRpbmdzLnV0bV9zb3VyY2U9Qyx0aGlzLnNldHRpbmdzLnV0bV9tZWRpdW09VCx0aGlzLnNldHRpbmdzLnV0bV9jYW1wYWlnbj1fLHRoaXMuX3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXMoQyxULF8pO2NvbnN0IEE9dGhpcy5zZXR0aW5ncy5pZnJhbWVUaXRsZXx8YCR7dGhpcy53aWRnZXRJZC5yZXBsYWNlKCItIiwiICIpfSBUcmFkaW5nVmlldyB3aWRnZXRgLGs9dGhpcy5zZXR0aW5ncy5pZnJhbWVMYW5nfHwiZW4iO3RoaXMuaWZyYW1lPXRoaXMuX2NyZWF0ZUlmcmFtZSh2LGgsYSxBLGspLHRoaXMuX2FkZENTUEVycm9yTGlzdGVuZXIoaCksZyYmdGhpcy5pZnJhbWUuc2V0QXR0cmlidXRlKCJub25jZSIsZyk7Y29uc3QgRT10aGlzLmlmcmFtZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCIudHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Iik7aWYoRT8odChFLnBhcmVudEVsZW1lbnQpLnJlcGxhY2VDaGlsZCh0aGlzLmlmcmFtZSxFKSxuPy5yZW1vdmUoKSk6cD8odGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLG4/LnJlbW92ZSgpKToodGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLGQucmVwbGFjZUNoaWxkKHRoaXMuaWZyYW1lQ29udGFpbmVyLHQobikpKSx0aGlzLnNob3VsZExpc3RlblRvSWZyYW1lUmVzaXplJiZmdW5jdGlvbih0LGUsaSl7Y29uc3Qgcj1lLmNvbnRlbnRXaW5kb3c7aWYoIXIpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIkNhbm5vdCBsaXN0ZW4gdG8gdGhlIGV2ZW50IGZyb20gdGhlIHByb3ZpZGVkIGlmcmFtZSwgY29udGVudFdpbmRvdyBpcyBub3QgYXZhaWxhYmxlIiksKCk9Pnt9O2Z1bmN0aW9uIHMoZSl7ZS5zb3VyY2UmJmUuc291cmNlPT09ciYmZS5kYXRhJiZlLmRhdGEubmFtZSYmZS5kYXRhLm5hbWU9PT10JiZpKGUuZGF0YS5kYXRhKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIscywhMSl9KHMuTmFtZXMuUmVzaXplSWZyYW1lLHRoaXMuaWZyYW1lLCh0PT57dC53aWR0aCYmKHRoaXMuaWZyYW1lLnN0eWxlLndpZHRoPXQud2lkdGgrInB4Iix0aGlzLmlmcmFtZUNvbnRhaW5lci5zdHlsZS53aWR0aD10LndpZHRoKyJweCIpLHRoaXMuaWZyYW1lLnN0eWxlLmhlaWdodD10LmhlaWdodCsicHgiLHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD10LmhlaWdodCsodGhpcy5oYXNDb3B5cmlnaHQoKT8zMjowKSsicHgifSkpLHUpe2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5zdHlsZS5oZWlnaHQ9Zix0LnN0eWxlLmxpbmVIZWlnaHQ9Zix2b2lkIDAhPT1TJiYodC5zdHlsZS53aWR0aD1TKSx0LnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIix0LnN0eWxlLnZlcnRpY2FsQWxpZ249Im1pZGRsZSIsdC5pbm5lckhUTUw9dS5pbm5lckhUTUwsCnRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfX1faWZyYW1lU3JjQmFzZSh0KXtsZXQgZT1gJHt0fS9lbWJlZC13aWRnZXQvJHt0aGlzLndpZGdldElkfS9gO3JldHVybiB0aGlzLnNldHRpbmdzLmN1c3RvbWVyJiYtMSE9PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKCJjdXN0b21lciIpJiYoZSs9YCR7dGhpcy5zZXR0aW5ncy5jdXN0b21lcn0vYCksZX1fdmFsaWRhdGVTZXR0aW5ncygpe2NvbnN0IHQ9KHQsZSk9PntpZih2b2lkIDA9PT10KXJldHVybiBlO2NvbnN0IGk9U3RyaW5nKHQpO3JldHVybi9eXGQrJC8udGVzdChpKT9wYXJzZUludChpKTovXihcZCslfGF1dG8pJC8udGVzdChpKT9pOm51bGx9LGU9dCh0aGlzLnNldHRpbmdzLndpZHRoLHRoaXMuX2RlZmF1bHRXaWR0aCgpKSxpPXQodGhpcy5zZXR0aW5ncy5oZWlnaHQsdGhpcy5fZGVmYXVsdEhlaWdodCgpKTtyZXR1cm4gbnVsbCE9PWUmJm51bGwhPT1pJiYodGhpcy5zZXR0aW5ncy53aWR0aD1lLHRoaXMuc2V0dGluZ3MuaGVpZ2h0PWksITApfV9zZXRTZXR0aW5nc1F1ZXJ5U3RyaW5nKHQpe2NvbnN0IGU9dGhpcy5wcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcy5maWx0ZXIoKHQ9Pi0xIT09aC5pbmRleE9mKHQpKSksaT1mdW5jdGlvbih0LGUpe2NvbnN0IGk9T2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpO2Zvcihjb25zdCByIG9mIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQscikmJihpW3JdPXRbcl0pO3JldHVybiBpfSh0aGlzLnNldHRpbmdzLGUpO2Zvcihjb25zdFtlLHJdb2YgT2JqZWN0LmVudHJpZXMoaSkpdC5zZWFyY2hQYXJhbXMuYXBwZW5kKGUscil9X3NldEhhc2hTdHJpbmcodCxlKXtjb25zdCBpPXt9O2UmJihpLmZyYW1lRWxlbWVudElkPWUpLE9iamVjdC5rZXlzKHRoaXMuc2V0dGluZ3MpLmZvckVhY2goKHQ9PnstMT09PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKHQpJiYoaVt0XT10aGlzLnNldHRpbmdzW3RdKX0pKSwodGhpcy51c2VQYXJhbXNGb3JDb25uZWN0U29ja2V0fHx0aGlzLnVzZVNub3dwbG93UGFnZVZpZXcpJiYoaVsicGFnZS11cmkiXT1sKCkpO09iamVjdC5rZXlzKGkpLmxlbmd0aD4wJiYodC5oYXNoPWVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShpKSkpfV9zY3JpcHRDb250ZW50VG9KU09OKHQpe2NvbnN0IGU9dC5pbm5lckhUTUwudHJpbSgpO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaCh0KXtyZXR1cm4gY29uc29sZS5lcnJvcihgV2lkZ2V0IHNldHRpbmdzIHBhcnNlIGVycm9yOiAke3R9YCksbnVsbH19X2NyZWF0ZUlmcmFtZSh0LGUsaSxyLHMpe2NvbnN0IG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7aSYmKG4uaWQ9aSksdGhpcy5zZXR0aW5ncy5lbmFibGVTY3JvbGxpbmd8fG4uc2V0QXR0cmlidXRlKCJzY3JvbGxpbmciLCJubyIpLG4uc2V0QXR0cmlidXRlKCJhbGxvd3RyYW5zcGFyZW5jeSIsInRydWUiKSxuLnNldEF0dHJpYnV0ZSgiZnJhbWVib3JkZXIiLCIwIiksbi5zdHlsZS51c2VyU2VsZWN0PSJub25lIixuLnN0eWxlLmJveFNpemluZz0iYm9yZGVyLWJveCIsbi5zdHlsZS5kaXNwbGF5PSJibG9jayIsbi5zdHlsZS5oZWlnaHQ9dCxuLnN0eWxlLndpZHRoPSIxMDAlIjtjb25zdCBvPW5ldyBVUkwodGhpcy5faWZyYW1lU3JjQmFzZShlKSk7cmV0dXJuIHRoaXMuX3NldFNldHRpbmdzUXVlcnlTdHJpbmcobyksdGhpcy5fc2V0SGFzaFN0cmluZyhvLGkpLG4uc2V0QXR0cmlidXRlKCJzcmMiLG8udG9TdHJpbmcoKSksbi50aXRsZT1yLG4ubGFuZz1zLG59X2FkZENTUEVycm9yTGlzdGVuZXIodCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLChlPT57ZS5ibG9ja2VkVVJJLmluY2x1ZGVzKHQpJiYodGhpcy5fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCksY29uc29sZS53YXJuKCJQbGVhc2UgdXBkYXRlIHlvdXIgQ1NQIHJ1bGVzIHRvIGFsbG93IHRoZSB0cmFkaW5ndmlldy13aWRnZXQuY29tIG9yaWdpbiBmb3IgZnJhbWUtc3JjLiIpKX0pKX1fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCl7Y29uc3QgZT10aGlzLmlmcmFtZS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKGUpe2NvbnN0IGk9bmV3IFVSTChlLnJlcGxhY2UodCwiaHR0cHM6Ly9zLnRyYWRpbmd2aWV3LmNvbSIpKTt0aGlzLmlmcmFtZS5zZXRBdHRyaWJ1dGUoInNyYyIsaS5ocmVmKX19X3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXModCxlLGkpe2lmKHRoaXMuX2NvcHlyaWdodENvbnRhaW5lcil7Y29uc3Qgcj10aGlzLl9jb3B5cmlnaHRDb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYSIpO3ImJnIuZm9yRWFjaCgocj0+e2NvbnN0IHM9ci5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZihzKXRyeXtjb25zdCBuPW5ldyBVUkwocyk7bi5zZWFyY2hQYXJhbXMuc2V0KCJ1dG1fc291cmNlIix0KSxuLnNlYXJjaFBhcmFtcy5zZXQoInV0bV9tZWRpdW0iLGUpLG4uc2VhcmNoUGFyYW1zLnNldCgidXRtX2NhbXBhaWduIixpKSxyLnNldEF0dHJpYnV0ZSgiaHJlZiIsbi50b1N0cmluZygpKX1jYXRjaCh0KXtjb25zb2xlLmxvZyhgQ2Fubm90IHVwZGF0ZSBsaW5rIFVUTSBwYXJhbXMsIGhyZWY9IiR7c30iYCl9fSkpfX19bmV3IGNsYXNzIGV4dGVuZHMgZHtnZXQgd2lkZ2V0SWQoKXtyZXR1cm4ibWFya2V0LXF1b3RlcyJ9Z2V0IHVzZVBhcmFtc0ZvckNvbm5lY3RTb2NrZXQoKXtyZXR1cm4hMH1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXtyZXR1cm5bImNvbG9yVGhlbWUiLCJjdXN0b21lciIsImhlaWdodCIsImlzVHJhbnNwYXJlbnQiLCJsYXJnZUNoYXJ0VXJsIiwibG9jYWxlIiwic2hvd1N5bWJvbExvZ28iLCJzeW1ib2xzR3JvdXBzIiwid2lkdGgiLCJiYWNrZ3JvdW5kQ29sb3IiLCJzeW1ib2xMaW5rQ2FwdHVyaW5nIl19fX0pKCk7"}},"time_used":53,"timings":{"blocked":-1,"dns":27,"connect":18,"send":0,"wait":2,"receive":-1,"ssl":6},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/latest-blog/arrow2.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:46.520Z","timestamp":1785143926520,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/latest-blog/arrow2.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/css/style.css\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/slider/slider2-bg.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.335Z","timestamp":1785143908335,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/slider/slider2-bg.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":true,"resource_type":"document","requested_by":"","date":"2026-07-27T09:18:20.577Z","timestamp":1785143900577,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: scromegatrade.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\nDate: Mon, 27 Jul 2026 09:18:26 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nX-Powered-By: PHP/7.4.7\r\nExpires: Thu, 19 Nov 1981 08:52:00 GMT\r\nCache-Control: no-store, no-cache, must-revalidate\r\nPragma: no-cache\r\nSet-Cookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e; path=/\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 16067\r\nKeep-Alive: timeout=5, max=100\r\nConnection: Keep-Alive\r\nContent-Type: text/html; charset=UTF-8\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"parallax.js","description":"Simple parallax scrolling effect.","website":"https://github.com/pixelcog/parallax.js","common_platform_enumeration":"","icon":"","categories":["JavaScript libraries"]},{"name":"Bootstrap","description":"Bootstrap is a free and open-source CSS framework directed at responsive, mobile-first front-end web development. It contains CSS and JavaScript-based design templates for typography, forms, buttons, navigation, and other interface components.","website":"https://getbootstrap.com","common_platform_enumeration":"cpe:2.3:a:getbootstrap:bootstrap:*:*:*:*:*:*:*:*","icon":"Bootstrap.svg","categories":["UI frameworks"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Magnific Popup","description":"Magnific Popup is a responsive lightbox \u0026 dialog script with focus on performance and providing best experience for user with any device.","website":"https://dimsemenov.com/plugins/magnific-popup/","common_platform_enumeration":"","icon":"Magnific Popup.png","categories":["JavaScript libraries"]},{"name":"YouTube","description":"YouTube is a video sharing service where users can create their own profile, upload videos, watch, like and comment on other videos.","website":"https://www.youtube.com","common_platform_enumeration":"","icon":"YouTube.png","categories":["Video players"]},{"name":"SweetAlert2:10","description":"SweetAlert2 is a JavaScript library that provides customisable, visually appealing, and responsive alert and modal dialog boxes for web applications.","website":"https://sweetalert2.github.io/","common_platform_enumeration":"","icon":"SweetAlert2.svg","categories":["JavaScript libraries"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"Popper","description":"Popper is a positioning engine, its purpose is to calculate the position of an element to make it possible to position it near a given reference element.","website":"https://popper.js.org","common_platform_enumeration":"","icon":"Popper.svg","categories":["Miscellaneous"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"PHP:7.4.7","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":"OWL Carousel","description":"OWL Carousel is an enabled jQuery plugin that lets you create responsive carousel sliders.","website":"https://owlcarousel2.github.io/OwlCarousel2/","common_platform_enumeration":"","icon":"OWL Carousel.png","categories":["JavaScript libraries"]},{"name":"jQuery:1.11.3","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":"jsDelivr","description":"JSDelivr is a free public CDN for open-source projects. It can serve web files directly from the npm registry and GitHub repositories without any configuration.","website":"https://www.jsdelivr.com/","common_platform_enumeration":"","icon":"jsdelivr-icon.svg","categories":["CDN"]}],"data":{"size":90095,"size_decoded":16538,"mime_type":"text/html; charset=UTF-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (1208), with CRLF line terminators","md5":"c5d3b5cbabd6d7baae6e5c7af607a9a9","sha1":"77b549da3b51cf9255712823cbc89f3c3547656d","sha256":"c3508ba1af587a195b1d183c6729e5bd7a386c7beccb2b2a9e20ef08bf2c3975","sha512":"f3f55b7591be746d39a50d2e00b8cf4e10da0dd5509474287b9d0701431d1632321de21d3fe483ec8898eae1100ce9e6214bda2b00c28a9e1ce1e0cf7abab03c","ssdeep":"768:hv/K/C0RmzRawDODHFvglojYMW9pgsx7b8PmrIQGQ+B:CC0R4awDODHF4lojYMW9pgS7b8PmrI4i","tlshash":"b7936020a5e51027007b71d69a294b58ffa2d307d3468be176fc2ba74ff6f149c13a98","first_seen":"2026-07-27T06:18:56.449038Z","last_seen":"2026-07-27T09:20:18.36253Z","times_seen":3,"resource_available":false,"data":"PCFkb2N0eXBlIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PVVURi04IiAvPg0KDQo8aGVhZD4NCiAgICA8bWV0YSBuYW1lPSJST0JPVFMiIGNvbnRlbnQ9Ik5PSU5ERVgsIE5PRk9MTE9XIj4NCiAgICA8IS0tIFJlcXVpcmVkIG1ldGEgdGFncyAtLT4NCiAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+DQogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0wLjgsIHNocmluay10by1maXQ9bm8iPg0KICAgIDxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iZmF2aWNvbi5wbmciIHR5cGU9ImltYWdlL3BuZyI+DQoNCg0KICAgIDwhLS1zdGFydCBoZXJlLS0+DQogICAgPG1ldGEgcHJvcGVydHk9Im9nOnRpdGxlIiBjb250ZW50PSJXZWxjb21lIFRvIFNjcm9NZWdhVHJhZGUiIC8+DQogICAgPCEtLSA8bWV0YSBwcm9wZXJ0eT0ib2c6c2l0ZV9uYW1lIiBjb250ZW50PSJTY3JvTWVnYVRyYWRlIiAvPiAtLT4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlNjcm9NZWdhVHJhZGUgaXMgYW4gYXdhcmQgd2lubmluZyBGb3JleCwgU3RvY2sgIGFuZCBDb21tb2RpdGllcyBhdXRvbWF0ZWQgdHJhZGluZyBCcm9rZXIgRXN0YWJsaXNoZWQgaW4gVVNBIHRvIGhlbHAgZ2l2ZXMgeW91IGZ1bGwgY29udHJvbCBvZiB5b3VyIGludmVzdG1lbnQsIGFuZCBhbGxvd3MgeW91IHRvIHdpdGhkcmF3IHlvdXIgY2FwaXRhbCBhbmQgcHJvZml0IHdpdGggZWFzZSBhdCBhbnl0aW1lLiIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0id2Vic2l0ZSIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2UiIGNvbnRlbnQ9Imh0dHBzOi8vc2Nyb21lZ2F0cmFkZS5jb20vaW1hZ2UvZmJaLnBuZyIgLz4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dXJsIiBjb250ZW50PSJodHRwczovL3Njcm9tZWdhdHJhZGUuY29tIj4NCiAgICA8IS0tIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTphbHQiIG5hbWU9ImltYWdlOmFsdCIgY29udGVudD0iU2Nyb01lZ2FUcmFkZSIgLz4gLS0+DQogICAgPGxpbmsgcmVsPSJpY29uIiBocmVmPSJmYXZpY29uLnBuZyI+DQogICAgPCEtLXN0YXJ0IGhlcmUtLT4NCg0KICAgICAgICA8IS0tIEJvb3RzdHJhcCBDU1MgLS0+DQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJjc3MvYm9vdHN0cmFwLmNzcyI+DQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJjc3MvZm9udC1hd2Vzb21lLm1pbi5jc3MiPg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0idmVuZG9ycy9mbGF0aWNvbi9mbGF0aWNvbi5jc3MiPg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0idmVuZG9ycy9zdHJva2UtaWNvbi9zdHlsZS5jc3MiPg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0idmVuZG9ycy9vd2wtY2Fyb3VzZWwvYXNzZXRzL293bC5jYXJvdXNlbC5taW4uY3NzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InZlbmRvcnMvanFlcnktbmljZS1zZWxlY3Rvci9jc3MvbmljZS1zZWxlY3QuY3NzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InZlbmRvcnMvbWFnbmlmeS1wb3B1cC9tYWduaWZpYy1wb3B1cC5jc3MiPg0KICAgIDwhLS0gUmV2IHNsaWRlciBjc3MgLS0+DQogICAgPGxpbmsgaHJlZj0idmVuZG9ycy9yZXZvbHV0aW9uL2Nzcy9zZXR0aW5ncy5jc3MiIHJlbD0ic3R5bGVzaGVldCI+DQogICAgPGxpbmsgaHJlZj0idmVuZG9ycy9yZXZvbHV0aW9uL2Nzcy9sYXllcnMuY3NzIiByZWw9InN0eWxlc2hlZXQiPg0KICAgIDxsaW5rIGhyZWY9InZlbmRvcnMvcmV2b2x1dGlvbi9jc3MvbmF2aWdhdGlvbi5jc3MiIHJlbD0ic3R5bGVzaGVldCI+DQogICAgPGxpbmsgaHJlZj0idmVuZG9ycy9yZXZvbHV0aW9uL3BhcnRpY2xlcy9jc3MvcmV2b2x1dGlvbi5hZGRvbi5wYXJ0aWNsZXMuY3NzIiByZWw9InN0eWxlc2hlZXQiPg0KICAgIDwhLS0gbWFpbiBjc3MgLS0+DQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJjc3Mvc3R5bGUuY3NzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9ImNzcy9yZXNwb25zaXZlLmNzcyI+DQogICAgPCEtLSA8c2NyaXB0IHNyYz0iLi4vd2lkZ2V0LXY0LnRpZGlvY2hhdC5jb20vMV82OF8wL3N0YXRpYy9qcy9yZW5kZXIuYWYwNjg1N2Y2YmIxY2ZkMGM3MzAuanMiIGFzeW5jPjwvc2NyaXB0PiAtLT4NCg0KDQoNCg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvYW5pbWF0ZS5jc3MvNC4xLjEvYW5pbWF0ZS5taW4uY3NzIiAvPg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3N3ZWV0YWxlcnQyQDEwIj48L3NjcmlwdD4NCg0KICAgIDwhLS0gZy1oaWRlIC0tPg0KICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgICAgIGlmcmFtZS5nb29nLXRlLWJhbm5lci1mcmFtZSB7DQogICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7DQogICAgICAgIH0NCiAgICA8L3N0eWxlPg0KICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQogICAgICAgIGlmcmFtZS5za2lwdHJhbnNsYXRlIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsNCiAgICAgICAgfQ0KICAgIDwvc3R5bGU+DQogICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCiAgICAgICAgYm9keSB7DQogICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7DQogICAgICAgICAgICB0b3A6IDBweCAhaW1wb3J0YW50Ow0KICAgICAgICB9DQogICAgPC9zdHlsZT4NCiAgICA8IS0tIGVuZC1nLWhpZGUgLS0+DQo8L2hlYWQ+DQoNCg0KICAgIDxzdHlsZT4NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldCB7DQogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICBib3R0b206IDgwcHg7DQogICAgICAgICAgICBsZWZ0OiAyMHB4Ow0KICAgICAgICAgICAgZGlzcGxheTogZmxleDsNCiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47DQogICAgICAgICAgICBnYXA6IDEwcHg7DQogICAgICAgICAgICB6LWluZGV4Ojk5OTk7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldCBhIHsNCiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICAgICAgICB3aWR0aDogNTBweDsNCiAgICAgICAgICAgIGhlaWdodDogNTBweDsNCiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsNCiAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogIzI1RDM2NjsNCiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsNCiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDsNCiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMik7DQogICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldCBhLnNpZ25hbCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0E3NkYwOw0KICAgICAgICB9DQogICAgICAgIC5mbG9hdGluZy13aWRnZXQgYTpob3ZlciB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTI4QzdFOw0KICAgICAgICB9DQogICAgICAgIC5mbG9hdGluZy13aWRnZXRfeiBhLnRlbGVncmFtIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDg4Y2M7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldF96IGEueCB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMURBMUYyOw0KICAgICAgICB9DQogICAgICAgIC5mbG9hdGluZy13aWRnZXRfeiBhLmxpbmtlZGluIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDc3YjU7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldF96IGEuaW5zdGFncmFtIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFMTMwNkM7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldF96IGEuc2t5cGUgew0KICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYWZmMDsNCiAgICAgICAgfQ0KICAgICAgICAuZmxvYXRpbmctd2lkZ2V0X3ogYS5jYWxsIHsNCiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNGI3ZjE7DQogICAgICAgIH0NCiAgICAgICAgLmZsb2F0aW5nLXdpZGdldF96IGEuZW1haWwgew0KICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q0NDYzODsNCiAgICAgICAgfQ0KICAgICAgICAuZmxvYXRpbmctd2lkZ2V0X3ogYS5mYWNlYm9vayB7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2I1OTk4Ow0KICAgICAgICB9DQogICAgPC9zdHlsZT4NCiAgICA8ZGl2IGNsYXNzPSJmbG9hdGluZy13aWRnZXQiPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3dhLm1lLzQ0Nzg0ODEyMjg3OSIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJDaGF0IG9uIFdoYXRzQXBwIiBzdHlsZT0iZGlzcGxheTorNDQ3ODQ4MTIyODc5Ij4NCiAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zLzYvNmIvV2hhdHNBcHAuc3ZnIiBhbHQ9IldoYXRzQXBwIiB3aWR0aD0iNDAiIGhlaWdodD0iNDAiPg0KICAgICAgICA8L2E+DQogICAgICAgIA0KICAgIDwvZGl2Pg0KPHN0eWxlPg0KICAgIC5jdXN0b20tcG9wdXAtY29udGFpbmVyMSB7DQogICAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7DQogICAgICAgIC8vIGZvbnQtd2VpZ2h0OiBib2xkZXI7DQogICAgICAgIGZvbnQtZmFtaWx5OiAnU2Vnb2UgVUknLCBUYWhvbWEsIEdlbmV2YSwgVmVyZGFuYSwgc2Fucy1zZXJpZjsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMGMxOw0KICAgICAgICBmb250LXNpemU6IDE2cHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsNCiAgICAgICAgd2lkdGg6IDMyMHB4Ow0KICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICBjb2xvcjogI2ZmZjsNCiAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCAxMHB4ICMwMDA7DQogICAgICAgIHBvc2l0aW9uOiBmaXhlZDsNCiAgICAgICAgei1pbmRleDogMTAwMDsNCiAgICAgICAgbWFyZ2luLXRvcDogNjQwcHg7DQogICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7DQogICAgICAgIG1heC1oZWlnaHQ6IDgwcHg7DQogICAgICAgIGhlaWdodDogODBweDsNCiAgICB9DQogICAgLnBvcHVwLWxvZ28xIHsNCiAgICAgICAgd2lkdGg6IDgwcHg7DQogICAgICAgIGhlaWdodDogNTAlOw0KICAgIH0NCiAgICAucG9wdXAtaW1hZ2UtaXRlbTEgew0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOw0KICAgICAgICBtYXJnaW46IDA7DQogICAgfQ0KICAgIC5wb3B1cC10ZXh0LWl0ZW0xIHsNCiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7DQogICAgICAgIHBhZGRpbmc6IDRweDsNCiAgICB9DQogICAgLy8gLnBvcHVwLWFtb3VudDEsDQogICAgLy8gLy8jcG9wdXAtY291bnRyeTEsDQogICAgLy8gLy8jcG9wdXAtdXNlcm5hbWUxIHsNCiAgICAvLyAgICAgIGNvbG9yOiByZ2IoMjksIDIyNCwgNjUpOw0KICAgIC8vIH0NCiAgICAucG9wdXAtYW1vdW50MXsNCiAgICAgICAgIGNvbG9yOiAjM2Y0OGNjOw0KICAgIH0NCjwvc3R5bGU+DQoNCg0KDQo8ZGl2IGNsYXNzPSJjdXN0b20tcG9wdXAtY29udGFpbmVyMSIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+DQogICAgPGRpdiBjbGFzcz0icG9wdXAtaW1hZ2UtaXRlbTEiPjxpbWcgY2xhc3M9InBvcHVwLWxvZ28xIg0KICAgICAgICAgICAgc3JjPSIuLi9EYXNoYm9hcmQvaW1nL3Byb2ZpbGUvZGVmYXVsdC5qcGciPjwvZGl2Pg0KICAgIDxkaXYgY2xhc3M9InBvcHVwLXRleHQtaXRlbTEiPg0KICAgICAgICA8IS0tIDxzcGFuIGlkPSJwb3B1cC11c2VybmFtZTEiPjwvc3Bhbj4gZnJvbSA8c3BhbiBpZD0icG9wdXAtY291bnRyeTEiPjwvc3Bhbj4ganVzdCByZWNlaXZlZCBhIHByb2ZpdCBvZiA8c3BhbiBjbGFzcz0icG9wdXAtYW1vdW50MSI+JDxzcGFuIGlkPSJwb3B1cC1hbW91bnQxIj48L3NwYW4+PC9zcGFuPiAtLT4NCiAgICA8L2Rpdj4NCjwvZGl2Pg0KDQo8c2NyaXB0IGRhdGEtY2Zhc3luYz0iZmFsc2UiIHNyYz0iIyI+PC9zY3JpcHQ+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgdmFyIGxpc3RuYW1lcyA9IFsnVG9ueScsICdBbGV4JywgJ0VtaWx5JywgJ0NocmlzJywgJ1NvcGhpYScsICdNaWNoYWVsJywgJ09saXZpYScsICdXaWxsaWFtJywgJ0F2YScsICdKYW1lcycsICdHcmFjZScsICdEYW5pZWwnLCAnRW1tYScsICdKb3NlcGgnLCAnTWlhJywgJ0RhdmlkJywgJ0VsbGEnLCAnQW5kcmV3JywgJ0FtZWxpYScsICdCZW5qYW1pbicsICdTb3BoaWUnLCAnU2FtdWVsJywgJ0xpbHknLCAnTWF0dGhldycsICdDaGxvZScsICdDaHJpc3RvcGhlcicsICdab2UnLCAnSm9obicsICdBaWRlbicsICdOYXRhbGllJywgJ0phY2tzb24nLCAnQWJpZ2FpbCcsICdOaWNob2xhcycsICdDaGFybG90dGUnLCAnRXRoYW4nLCAnTWFkaXNvbicsICdEYW5pZWwnLCAnTGlhbScsICdTb3BoaWUnLCAnUnlhbicsICdHcmFjZScsICdOYXRoYW4nLCAnQXZlcnknLCAnR2FicmllbCcsICdIYW5uYWgnLCAnRHlsYW4nLCAnRXZlbHluJywgJ0NhbGViJywgJ1NjYXJsZXR0J107ICAgICAgICANCiAgICB2YXIgbGlzdENvdW50cmllcyA9IFsnVVNBJywgJ1BvcnR1Z2FsJywgJ0dlcm1hbnknLCAnRnJhbmNlJywgJ0l0YWx5JywgJ05hbWliaWEnLCAnVVNBJywgJ1NvdXRoIEFmcmljYScsICdDYW5hZGEnLCAnQXJnZW50aW5hJywgJ1NhdWRpIEFyYWJpYScsICdNZXhpY28nLCAnUG9ydHVnYWwnLCAnQnJhemlsJywgJ1ZlbmV6dWVsYScsICdJc3JlYWwnLCAnU3dlZGVuJywgJ1VTQScsICdDb2xvbWJpYScsICdJdGFseScsICdDYW5hZGEnLCAnVVNBJywgJ1VTQScsICdHcmVlY2UnLCAnQ3ViYScsICdHZXJtYW55JywgJ1BvcnR1Z2FsJywgJ0F1c3RyaWEnLCAnTWV4aWNvJywgJ1BhbmFtYScsICdTb3V0aCBBZnJpY2EnLCAnVVNBJywgJ05ldGhlcmxhbmRzJywgJ1N3aXR6ZXJsYW5kJywgJ0JlbGdpdW0nLCAnSXNyYWVsJywgJ0N5cHJ1cyddOw0KICAgIHZhciB0cmFuc2FycmF5ID0gWydqdXN0IDxiPmludmVzdGVkPC9iPicsICdoYXMgPGI+d2l0aGRyYXduPC9iPicsICdpcyA8Yj50cmFkaW5nIHdpdGg8L2I+JywnanVzdCA8Yj5yZWNlaXZlZDwvYj4gYSBwcm9maXQgb2YnXTsNCiAgICAvL3ZhciB0cmFuc2FycmF5ID0gWydoYXMgPGI+d2l0aGRyYXduPC9iPicsJ2p1c3QgPGI+cmVjZWl2ZWQ8L2I+IGEgcHJvZml0IG9mJ107DQogICAgaW50ZXJ2YWwgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoNDAwMDAgLSA4MDAwICsgMSkgKyA4MDAwKTsNCiAgICB2YXIgcnVuID0gc2V0SW50ZXJ2YWwocmVxdWVzdCwgaW50ZXJ2YWwpOw0KDQoNCiAgICBmdW5jdGlvbiBnZXRSYW5kb21OdW1iZXIobWluLCBtYXgsIG91dGNvbWV6KSB7DQogICAgICAgIGNvbnN0IHJhbmRvbVZhbHVlID0gKG91dGNvbWV6LmluY2x1ZGVzKCJpbnZlc3RlZCIpIHx8IG91dGNvbWV6LmluY2x1ZGVzKCJ0cmFkaW5nIikgfHwgb3V0Y29tZXouaW5jbHVkZXMoIm1pbmluZyIpKQ0KICAgICAgICA/IE1hdGguZmxvb3IoKE1hdGgucmFuZG9tKCkgKiAyMDArMSkrNSkgKjEwMCAgDQogICAgICAgIDogTWF0aC5mbG9vcigoTWF0aC5yYW5kb20oKSAqIG1heCsxKSttaW4pICoxMDA7ICANCiAgICAgICAgcmV0dXJuIHJhbmRvbVZhbHVlLnRvTG9jYWxlU3RyaW5nKCk7DQogICAgfQ0KDQoNCiAgICBmdW5jdGlvbiByZXF1ZXN0KCkgew0KICAgICAgICBjbGVhckludGVydmFsKHJ1bik7DQogICAgICAgIGludGVydmFsID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKDQwMDAwIC0gODAwMCArIDEpICsgODAwMCk7DQogICAgICAgIHZhciB1X25hbWVzID0gbGlzdG5hbWVzW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGxpc3RuYW1lcy5sZW5ndGgpXTsNCiAgICAgICAgdmFyIGNvdW50cnkgPSBsaXN0Q291bnRyaWVzW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGxpc3RDb3VudHJpZXMubGVuZ3RoKV07DQogICAgICAgIHZhciB0cmFuc3R5cGUgPSB0cmFuc2FycmF5W01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIHRyYW5zYXJyYXkubGVuZ3RoKV07DQoNCiAgICAgICAgLy92YXIgbXNnID0gJzxzcGFuIGlkPSJwb3B1cC11c2VybmFtZTEiPicgKyB1X25hbWVzICsgJzwvc3Bhbj4gZnJvbSA8c3BhbiBpZD0icG9wdXAtY291bnRyeTEiPicgKyBjb3VudHJ5ICsgJzwvc3Bhbj4ganVzdCByZWNlaXZlZCBhIHByb2ZpdCBvZiA8c3BhbiBjbGFzcz0icG9wdXAtYW1vdW50MSI+PGI+JDxzcGFuIGlkPSJwb3B1cC1hbW91bnQxIj4nK2dldFJhbmRvbU51bWJlcigxMDAsNTAwLCJub25lIikrJzwvc3Bhbj48L2I+PC9zcGFuPic7DQogICAgICAgIA0KICAgICAgICB2YXIgbXNnID0gJzxzcGFuIGlkPSJwb3B1cC11c2VybmFtZTEiPlNvbWVvbmU8L3NwYW4+IGZyb20gPHNwYW4gaWQ9InBvcHVwLWNvdW50cnkxIj4nICsgY291bnRyeSArICc8L3NwYW4+ICcgKyB0cmFuc3R5cGUgKyAnIDxzcGFuIGNsYXNzPSJwb3B1cC1hbW91bnQxIj48Yj4kPHNwYW4gaWQ9InBvcHVwLWFtb3VudDEiPicrZ2V0UmFuZG9tTnVtYmVyKDEwMCw1MDAsdHJhbnN0eXBlKSsnPC9zcGFuPjwvYj48L3NwYW4+JzsNCiAgICAgICAgDQogICAgICAgICQoIi5jdXN0b20tcG9wdXAtY29udGFpbmVyMSAucG9wdXAtdGV4dC1pdGVtMSIpLmh0bWwobXNnKTsNCiAgICAgICAgJCgiLmN1c3RvbS1wb3B1cC1jb250YWluZXIxIikuc3RvcCh0cnVlKS5mYWRlSW4oMzAwKTsNCiAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7DQogICAgICAgICAgICAkKCIuY3VzdG9tLXBvcHVwLWNvbnRhaW5lcjEiKS5zdG9wKHRydWUpLmZhZGVPdXQoMzAwKTsNCiAgICAgICAgfSwgMTAwMDApOw0KICAgICAgICBydW4gPSBzZXRJbnRlcnZhbChyZXF1ZXN0LCBpbnRlcnZhbCk7DQogICAgfQ0KPC9zY3JpcHQ+DQo8Ym9keSBvbmN1dD0icmV0dXJuIGZhbHNlIiBvbmNvcHk9InJldHVybiBmYWxzZSIgb25wYXN0ZT0icmV0dXJuIGZhbHNlIj4NCg0KDQogICAgIDwhLS09PT09PT09PT09PT09PT09SGVhZGVyIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCiA8aGVhZGVyIGNsYXNzPSJtYWluX2hlYWRlcl9hcmVhIj4NCiAgICAgPGRpdiBjbGFzcz0iaGVhZGVyX3RvcCI+DQogICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRlcl90b3BfaW5uZXIiPg0KICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbG9hdC1sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibGlzdF9zdHlsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxzcGFuPjxpIGNsYXNzPSJmYSBmYS1lbnZlbG9wZSI+PC9pPnN1cHBvcnRAc2Nyb21lZ2F0cmFkZS5jb208L3NwYW4+PC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmxvYXQtcmlnaHQiPg0KICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbGlzdF9zdHlsZSBoZWFkZXJfdG9wX21lbnUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9IkRhc2hib2FyZC9sb2dpbiI+TG9naW48L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9IkRhc2hib2FyZC9yZWdpc3RlciI+UmVnaXN0ZXI8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgIDwvZGl2Pg0KICAgICA8L2Rpdj4NCiAgICAgPG5hdiBjbGFzcz0ibmF2YmFyIG5hdmJhci1leHBhbmQtbGcgbmF2YmFyLWxpZ2h0Ij4NCiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciIgc3R5bGU9Im1hcmdpbi10b3A6LTEwcHg7bWFyZ2luLWJvdHRvbTotMTBweCI+DQogICAgICAgICAgICAgPCEtLSBCcmFuZCBhbmQgdG9nZ2xlIGdldCBncm91cGVkIGZvciBiZXR0ZXIgbW9iaWxlIGRpc3BsYXkgLS0+DQogICAgICAgICAgICAgPGEgY2xhc3M9Im5hdmJhci1icmFuZCIgaHJlZj0iaG9tZSI+PGltZyBzcmM9ImltYWdlL2xvZ29faGVhZGVyK2RhcmsucG5nIiB3aWR0aD0iMjUwcHgiPjwvYT4NCiAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXZiYXItdG9nZ2xlciIgdHlwZT0iYnV0dG9uIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjbmF2YmFyU3VwcG9ydGVkQ29udGVudCIgYXJpYS1jb250cm9scz0ibmF2YmFyU3VwcG9ydGVkQ29udGVudCIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtbGFiZWw9IlRvZ2dsZSBuYXZpZ2F0aW9uIj4NCiAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imljb24tYmFyIj48L3NwYW4+DQogICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciI+PC9zcGFuPg0KICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4NCiAgICAgICAgICAgICA8L2J1dHRvbj4NCg0KICAgICAgICAgICAgIDwhLS0gPGRpdiBpZD0iZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50Ij48L2Rpdj4NCiAgICAgICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGdvb2dsZVRyYW5zbGF0ZUVsZW1lbnRJbml0KCkgew0KICAgICAgICAgICAgICAgICAgICAgbmV3IGdvb2dsZS50cmFuc2xhdGUuVHJhbnNsYXRlRWxlbWVudCh7DQogICAgICAgICAgICAgICAgICAgICAgICAgcGFnZUxhbmd1YWdlOiAnZW4nLA0KICAgICAgICAgICAgICAgICAgICAgICAgIGxheW91dDogZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVFbGVtZW50LklubGluZUxheW91dC5IT1JJWk9OVEFMDQogICAgICAgICAgICAgICAgICAgICB9LCAnZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50Jyk7DQogICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICA8L3NjcmlwdD4NCiAgICAgICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvL3RyYW5zbGF0ZS5nb29nbGUuY29tL3RyYW5zbGF0ZV9hL2VsZW1lbnQuanM/Y2I9Z29vZ2xlVHJhbnNsYXRlRWxlbWVudEluaXQiPjwvc2NyaXB0PiAtLT4NCg0KDQogICAgICAgICAgICAgPGJyPg0KDQogICAgICAgICAgICAgPGJyPg0KICAgICAgICAgICAgIDwhLS0gQ29sbGVjdCB0aGUgbmF2IGxpbmtzLCBmb3JtcywgYW5kIG90aGVyIGNvbnRlbnQgZm9yIHRvZ2dsaW5nIC0tPg0KICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbGxhcHNlIG5hdmJhci1jb2xsYXBzZSIgaWQ9Im5hdmJhclN1cHBvcnRlZENvbnRlbnQiPg0KICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBuYXZiYXItbmF2IG1sLWF1dG8iPg0KICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaG9tZSIgY2xhc3M9Im5hdi1saW5rIj5Ib21lPC9hPg0KDQogICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSBzdWJtZW51IGRyb3Bkb3duIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0ibmF2LWxpbmsgZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIHJvbGU9ImJ1dHRvbiIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPkFib3V0IFVzPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJhYm91dCI+T3VyIENvbXBhbnk8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0gc3VibWVudSBkcm9wZG93biI+DQogICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5Qcm9kdWN0czwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iZm9yZXgiPkZvcmV4PC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJjb21tb2RpdGllcyI+Q29tbW9kaXRpZXM8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImNyeXB0byI+Q3J5cHRvPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJleGNoYW5nZSI+RXhjaGFuZ2U8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0gc3VibWVudSBkcm9wZG93biI+DQogICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj5CdXkgQ29pbjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9jZXguaW8vIj5CdXkgQml0Y29pbiAxPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL2NvaW5tYW1hLmNvbS8iPkJ1eSBCaXRjb2luIDI8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGhyZWY9ImNvbnRhY3QiIGNsYXNzPSJuYXYtbGluayI+Q29udGFjdDwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGhyZWY9IkRhc2hib2FyZC9sb2dpbiIgY2xhc3M9Im5hdi1saW5rIj5Mb2dpbjwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPjxhIGhyZWY9IkRhc2hib2FyZC9yZWdpc3RlciIgY2xhc3M9Im5hdi1saW5rIj5SZWdpc3RlcjwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICA8IS0tIDx1bCBjbGFzcz0ibmF2IG5hdmJhci1uYXYgbmF2YmFyLXJpZ2h0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0gc2VhcmNoX2Ryb3Bkb3duIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0ibmF2LWxpbmsiPjxpIGNsYXNzPSJpY29uIGljb24tU2VhcmNoIj48L2k+PC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibGlzdF9zdHlsZSBzZWFyY2giPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Zm9ybSBhY3Rpb249IiMiIG1ldGhvZD0iZ2V0IiBjbGFzcz0ic2VhcmNoLWZvcm0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InNlYXJjaCIgY2xhc3M9ImZvcm0tY29udHJvbCIgcGxhY2Vob2xkZXI9IlNlYXJjaCBmb3IiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaW5wdXQtZ3JvdXAtYWRkb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJzdWJtaXQiPjxpIGNsYXNzPSJpY29uIGljb24tU2VhcmNoIj48L2k+PC9idXR0b24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZm9ybT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgPC91bD4gLS0+DQogICAgICAgICAgICAgPC9kaXY+PCEtLSAvLm5hdmJhci1jb2xsYXBzZSAtLT4NCiAgICAgICAgIDwvZGl2PjwhLS0gLy5jb250YWluZXItZmx1aWQgLS0+DQogICAgIDwvbmF2Pg0KIDwvaGVhZGVyPg0KIDwhLS09PT09PT09PT09PT09PT09SGVhZGVyIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCiA8IS0tIENPTlRFTlQgU1RBUlQgLS0+DQoNCjxzY3JpcHQgc3JjPSdqcy9hamF4L2xpYnMvanF1ZXJ5LzEuMTEuMy9qcXVlcnkubWluLmpzJz48L3NjcmlwdD48dGl0bGU+U2Nyb01lZ2FUcmFkZSBpcyBhbiBhd2FyZCB3aW5uaW5nIEZvcmV4IGFuZCBDb21tb2RpdGllcyBCcm9rZXI8L3RpdGxlPg0KDQoNCjwhLS0gQ09OVEVOVCBTVEFSVCAtLT4NCg0KDQoNCg0KPCEtLT09PT09PT09PT09PT09PT1TbGlkZXIgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KPHNlY3Rpb24gY2xhc3M9InJldl9zbGlkZXJfd3JhcHBlciI+DQogICAgPGRpdiBpZD0icmV2X3NsaWRlcl84XzEiIGNsYXNzPSJyZXZfc2xpZGVyIiBkYXRhLXZlcnNpb249IjUuMy4xLjYiPg0KICAgICAgICA8dWw+DQogICAgICAgICAgICA8bGkgZGF0YS1pbmRleD0icnMtMTU4NyIgZGF0YS10cmFuc2l0aW9uPSJ6b29taW4iIGRhdGEtc2xvdGFtb3VudD0iNyIgZGF0YS1oaWRlYWZ0ZXJsb29wPSIwIiBkYXRhLWhpZGVzbGlkZW9ubW9iaWxlPSJvZmYiIGRhdGEtZWFzZWluPSJQb3dlcjQuZWFzZUluT3V0IiBkYXRhLWVhc2VvdXQ9IlBvd2VyNC5lYXNlSW5PdXQiIGRhdGEtbWFzdGVyc3BlZWQ9IjIwMDAiIGRhdGEtdGh1bWI9ImltYWdlL3NsaWRlci9zbGlkZXItYmcxLmpwZyIgZGF0YS1yb3RhdGU9IjAiIGRhdGEtc2F2ZXBlcmZvcm1hbmNlPSJvZmYiIGRhdGEtdGl0bGU9IktlbiBCdXJucyIgZGF0YS1wYXJhbTE9IiIgZGF0YS1wYXJhbTI9IiIgZGF0YS1wYXJhbTM9IiIgZGF0YS1wYXJhbTQ9IiIgZGF0YS1wYXJhbTU9IiIgZGF0YS1wYXJhbTY9IiIgZGF0YS1wYXJhbTc9IiIgZGF0YS1wYXJhbTg9IiIgZGF0YS1wYXJhbTk9IiIgZGF0YS1wYXJhbTEwPSIiIGRhdGEtZGVzY3JpcHRpb249IiI+DQoNCiAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2Uvc2xpZGVyL3NsaWRlci1iZzEuanBnIiBhbHQ9IiIgZGF0YS1iZ3Bvc2l0aW9uPSJjZW50ZXIgY2VudGVyIiBkYXRhLWtlbmJ1cm5zPSJvbiIgZGF0YS1kdXJhdGlvbj0iMzAwMDAiIGRhdGEtZWFzZT0iTGluZWFyLmVhc2VOb25lIiBkYXRhLXNjYWxlc3RhcnQ9IjEwMCIgZGF0YS1zY2FsZWVuZD0iMTIwIiBkYXRhLXJvdGF0ZXN0YXJ0PSIwIiBkYXRhLXJvdGF0ZWVuZD0iMCIgZGF0YS1vZmZzZXRzdGFydD0iMCAwIiBkYXRhLW9mZnNldGVuZD0iMCAwIiBkYXRhLWJncGFyYWxsYXg9IjUiIGNsYXNzPSJyZXYtc2xpZGViZyIgZGF0YS1uby1yZXRpbmE+DQoNCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uIHRwLWxheWVyLXNlbGVjdGFibGUgdHAtcmVzaXplbWUgcnMtcGFyYWxsYXhsZXZlbC0zIGNvaW5fc2xpZGVyX2ltZyIgZGF0YS14PSJbJ3JpZ2h0JywncmlnaHQnLCdyaWdodCcsJ3JpZ2h0J10iIGRhdGEtaG9mZnNldD0iWyctMjIwJywnLTExMCddIiBkYXRhLXk9IlsnbWlkZGxlJywnbWlkZGxlJywndG9wJywndG9wJ10iIGRhdGEtdm9mZnNldD0iWyc0NSddIiBkYXRhLXdpZHRoPSJub25lIiBkYXRhLWhlaWdodD0ibm9uZSIgZGF0YS13aGl0ZXNwYWNlPSJub3dyYXAiIGRhdGEtdHlwZT0iaW1hZ2UiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLWZyYW1lcz0iW3smcXVvdDtkZWxheSZxdW90OzoxMjAwLCZxdW90O3NwZWVkJnF1b3Q7OjEyMDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7MCZxdW90OywmcXVvdDtmcm9tJnF1b3Q7OiZxdW90O3o6MDtyWDowO3JZOjA7clo6MDtzWDowLjk7c1k6MC45O3NrWDowO3NrWTowO29wYWNpdHk6MDsmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7bzoxOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMy5lYXNlSW5PdXQmcXVvdDt9LHsmcXVvdDtkZWxheSZxdW90OzomcXVvdDt3YWl0JnF1b3Q7LCZxdW90O3NwZWVkJnF1b3Q7OjEwMDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7OTk5JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O29wYWNpdHk6MDsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluJnF1b3Q7fV0iIGRhdGEtdGV4dGFsaWduPSJbJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnXSIgZGF0YS1wYWRkaW5ndG9wPSJbMCwwLDAsMF0iIGRhdGEtcGFkZGluZ3JpZ2h0PSJbMCwwLDAsMF0iIGRhdGEtcGFkZGluZ2JvdHRvbT0iWzAsMCwwLDBdIiBkYXRhLXBhZGRpbmdsZWZ0PSJbMCwwLDAsMF0iPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2Uvc2xpZGVyL3NsaWRlci0zLnBuZyIgYWx0PSIiIGRhdGEtd3c9IlsnODkwcHgnLCc1MDBweCcsJzYxNHB4JywnNjE0cHgnXSIgZGF0YS1oaD0iWyc1NjNweCcsJzM2MHB4JywnNDUwcHgnLCc0NTBweCddIiB3aWR0aD0iODkwIiBoZWlnaHQ9IjU2MyIgZGF0YS1uby1yZXRpbmE9IiI+DQogICAgICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzbGlkZXJfdGV4dF9ib3giPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uIHRwLXJlc2l6ZW1lIGZpcnN0X3RleHQiIGRhdGEteD0iWydsZWZ0JywnbGVmdCcsJ2xlZnQnXSIgZGF0YS1ob2Zmc2V0PSJbJzAnLCcwJywnMCcsJzAnXSIgZGF0YS15PSJbJ3RvcCcsJ3RvcCcsJ3RvcCcsJ3RvcCddIiBkYXRhLXZvZmZzZXQ9IlsnMjkwJywnMjkwJywnMjkwJywnMjMwJywxNzBdIiBkYXRhLWZvbnRzaXplPSJbJzIyJ10iIGRhdGEtbGluZWhlaWdodD0iWyczMCddIiBkYXRhLXdpZHRoPSJbJzI4MCddIiBkYXRhLWhlaWdodD0ibm9uZSIgZGF0YS13aGl0ZXNwYWNlPSJub3dyYXAiIGRhdGEtdHlwZT0idGV4dCIgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iIGRhdGEtZnJhbWVzPSdbeyJmcm9tIjoieTpbLTEwMCVdO3o6MDtyWDowZGVnO3JZOjA7clo6MDtzWDoxO3NZOjE7c2tYOjA7c2tZOjA7IiwibWFzayI6Ing6MHB4O3k6MHB4OyIsInNwZWVkIjoxNTAwLCJ0byI6Im86MTsiLCJkZWxheSI6NTUwLCJlYXNlIjoiUG93ZXIzLmVhc2VJbk91dCJ9LHsiZGVsYXkiOiJ3YWl0Iiwic3BlZWQiOjMwMCwidG8iOiJvcGFjaXR5OjA7IiwiZWFzZSI6Im5vdGhpbmcifV0nIGRhdGEtdGV4dEFsaWduPSJbJ2xlZnQnLCdsZWZ0J10iIHN0eWxlPSJmb250LWZhbWlseTpMb3JhLCBzZXJpZjsgZm9udC1zdHlsZTogaXRhbGljO2NvbG9yOiAjZmZmO2ZvbnQtd2VpZ2h0OiA0MDA7Ij5TY3JvTWVnYVRyYWRlIDxzcGFuIGNsYXNzPSIiIHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiA4MHB4OyBoZWlnaHQ6IDFweDtiYWNrZ3JvdW5kOiAjZmZmOyI+PC9zcGFuPjwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgc2VjYW5kX3RleHQiIGRhdGEteD0iWydsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzMzNScsJzMzNScsJzMzNScsJzI3NScsJzIxNSddIiBkYXRhLWZvbnRzaXplPSJbJzU1JywnNDAnLCc0MCcsJzQwJywnMzInXSIgZGF0YS1saW5laGVpZ2h0PSJbJzYzJywnNTUnLCc1MCcsJzUwJywnNDAnXSIgZGF0YS13aWR0aD0iWyc3MDAnLCc3MDAnLCc3MDAnLCc0ODAnLCcyOTAnXSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm9ybWFsIiBkYXRhLXR5cGU9InRleHQiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLWZyYW1lcz0iW3smcXVvdDtkZWxheSZxdW90OzoxMCwmcXVvdDtzcGVlZCZxdW90OzoxNTAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90OzAmcXVvdDssJnF1b3Q7ZnJvbSZxdW90OzomcXVvdDt5OlstMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDsmcXVvdDssJnF1b3Q7bWFzayZxdW90OzomcXVvdDt4OjBweDt5OjBweDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvOjE7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbk91dCZxdW90O30seyZxdW90O2RlbGF5JnF1b3Q7OiZxdW90O3dhaXQmcXVvdDssJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDs5OTkmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7eTpbMTc1JV07JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDppbmhlcml0O3k6aW5oZXJpdDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9XSIgZGF0YS10ZXh0QWxpZ249IlsnbGVmdCddIiBzdHlsZT0iZm9udC1mYW1pbHk6UG9wcGlucywgc2Fucy1zZXJpZjtjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyI+VHJhZGUgQml0Y29pbjxzcGFuIHN0eWxlPSJjb2xvcjogIzM3YWI3NSI+IDwvc3Bhbj48YnI+ICYgYmVjb21lIHN1Y2Nlc3NmdWw8L2Rpdj4NCg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uIHRwLXJlc2l6ZW1lIHRoaXJkX3RleHQiIGRhdGEteD0iWydsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzQ5MCcsJzQ3MCcsJzQ3MCcsJzQxMCcsJzM2MCddIiBkYXRhLWZvbnRzaXplPSJbJzIyJywnMjInLCcyMicsJzIyJywnMTYnXSIgZGF0YS1saW5laGVpZ2h0PSJbJzMwJ10iIGRhdGEtd2lkdGg9IlsnNjUwJywnNjIwJywnNjUwJywnNDcwJywnMjkwJ10iIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vcm1hbCIgZGF0YS10eXBlPSJ0ZXh0IiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS10cmFuc2Zvcm1faWRsZT0ibzoxOyIgZGF0YS1mcmFtZXM9Ilt7JnF1b3Q7ZGVsYXkmcXVvdDs6MTAsJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDswJnF1b3Q7LCZxdW90O2Zyb20mcXVvdDs6JnF1b3Q7eTpbMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDowcHg7eTpbMTAwJV07czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7bzoxOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9LHsmcXVvdDtkZWxheSZxdW90OzomcXVvdDt3YWl0JnF1b3Q7LCZxdW90O3NwZWVkJnF1b3Q7OjE1MDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7OTk5JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O3k6WzE3NSVdOyZxdW90OywmcXVvdDttYXNrJnF1b3Q7OiZxdW90O3g6aW5oZXJpdDt5OmluaGVyaXQ7czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluT3V0JnF1b3Q7fV0iIGRhdGEtdGV4dEFsaWduPSJbJ2xlZnQnXSIgc3R5bGU9ImZvbnQtZmFtaWx5OlBvcHBpbnMsIHNhbnMtc2VyaWY7Y29sb3I6ICNmZmY7Zm9udC13ZWlnaHQ6IDQwMDsiPlRyYWRlIGZvcmVpZ24gY3VycmVuY2llcyBvbiB0aGUgbGFyZ2VzdCBhbmQgbW9zdCBsaXF1aWQgbWFya2V0IGluIHRoZSB3b3JsZC4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiB0cC1yZXNpemVtZSBzbGlkZXJfYnV0dG9uX3R3byIgZGF0YS14PSJbJ2xlZnQnXSIgZGF0YS1ob2Zmc2V0PSJbJzAnLCcwJywnMCcsJzAnXSIgZGF0YS15PSJbJ3RvcCcsJ3RvcCcsJ3RvcCcsJ3RvcCddIiBkYXRhLXZvZmZzZXQ9IlsnNTk1JywnNTk1JywnNTk1JywnNTIwJywnNTAwJ10iIGRhdGEtd2lkdGg9IlsnODAwJ10iIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vd3JhcCIgZGF0YS10eXBlPSJ0ZXh0IiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS1mcmFtZXM9Ilt7JnF1b3Q7ZGVsYXkmcXVvdDs6MTAsJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDswJnF1b3Q7LCZxdW90O2Zyb20mcXVvdDs6JnF1b3Q7eTpbMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDowcHg7eTpbMTAwJV07czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7bzoxOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9LHsmcXVvdDtkZWxheSZxdW90OzomcXVvdDt3YWl0JnF1b3Q7LCZxdW90O3NwZWVkJnF1b3Q7OjE1MDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7OTk5JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O3k6WzE3NSVdOyZxdW90OywmcXVvdDttYXNrJnF1b3Q7OiZxdW90O3g6aW5oZXJpdDt5OmluaGVyaXQ7czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluT3V0JnF1b3Q7fV0iIGRhdGEtdGV4dEFsaWduPSJbJ2xlZnQnXSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ic2xpZGVyX2J0biB0aGVtZV9idG4iIGhyZWY9IkRhc2hib2FyZC9yZWdpc3RlciI+U3RhcnQgdHJhZGluZyBub3c8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0idmlkZW9fYnRuIHZpZGVvLXBvcCIgaHJlZj0iaHR0cHM6Ly93d3cuU2Nyb01lZ2FUcmFkZS5jb20vYXNzaXN0YW50Lm1wNCI+PGltZyBzcmM9ImltYWdlL3ZpZGVvX2ljb24ucG5nIiBhbHQ9IiI+V2F0Y2ggaW50cm8gdmlkZW88YnI+IGFib3V0IHVzPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICA8bGkgZGF0YS1pbmRleD0icnMtMTU4OCIgZGF0YS10cmFuc2l0aW9uPSJ6b29tb3V0IiBkYXRhLXNsb3RhbW91bnQ9ImRlZmF1bHQiIGRhdGEtaGlkZWFmdGVybG9vcD0iMCIgZGF0YS1oaWRlc2xpZGVvbm1vYmlsZT0ib2ZmIiBkYXRhLWVhc2Vpbj0iUG93ZXI0LmVhc2VJbk91dCIgZGF0YS1lYXNlb3V0PSJQb3dlcjQuZWFzZUluT3V0IiBkYXRhLW1hc3RlcnNwZWVkPSIyMDAwIiBkYXRhLXRodW1iPSJpbWFnZS9zbGlkZXIyLmpwZyIgZGF0YS1yb3RhdGU9IjAiIGRhdGEtZnN0cmFuc2l0aW9uPSJmYWRlIiBkYXRhLWZzbWFzdGVyc3BlZWQ9IjE1MDAiIGRhdGEtZnNzbG90YW1vdW50PSI3IiBkYXRhLXNhdmVwZXJmb3JtYW5jZT0ib2ZmIiBkYXRhLXRpdGxlPSJJbnRybyIgZGF0YS1wYXJhbTE9IiIgZGF0YS1wYXJhbTI9IiIgZGF0YS1wYXJhbTM9IiIgZGF0YS1wYXJhbTQ9IiIgZGF0YS1wYXJhbTU9IiIgZGF0YS1wYXJhbTY9IiIgZGF0YS1wYXJhbTc9IiIgZGF0YS1wYXJhbTg9IiIgZGF0YS1wYXJhbTk9IiIgZGF0YS1wYXJhbTEwPSIiIGRhdGEtZGVzY3JpcHRpb249IiI+DQoNCiAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2Uvc2xpZGVyMi5qcGciIGFsdD0iIiBkYXRhLWJncG9zaXRpb249ImNlbnRlciBjZW50ZXIiIGRhdGEtYmdmaXQ9ImNvdmVyIiBkYXRhLWJncmVwZWF0PSJuby1yZXBlYXQiIGRhdGEtYmdwYXJhbGxheD0iMTUiIGNsYXNzPSJyZXYtc2xpZGViZyIgZGF0YS1uby1yZXRpbmE+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiB0cC1sYXllci1zZWxlY3RhYmxlIHRwLXJlc2l6ZW1lIGNvaW5fc2xpZGVyX2ltZyIgZGF0YS14PSJbJ3JpZ2h0JywncmlnaHQnLCdyaWdodCcsJ3JpZ2h0J10iIGRhdGEtaG9mZnNldD0iWyctMjAwJywnLTEwMCcsJy0xMDAnXSIgZGF0YS15PSJbJ21pZGRsZScsJ21pZGRsZScsJ3RvcCcsJ3RvcCddIiBkYXRhLXZvZmZzZXQ9IlsnNDUnXSIgZGF0YS13aWR0aD0ibm9uZSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm93cmFwIiBkYXRhLXR5cGU9ImltYWdlIiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS1mcmFtZXM9Ilt7JnF1b3Q7ZGVsYXkmcXVvdDs6MTIwMCwmcXVvdDtzcGVlZCZxdW90OzoxMjAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90OzAmcXVvdDssJnF1b3Q7ZnJvbSZxdW90OzomcXVvdDt6OjA7clg6MDtyWTowO3JaOjA7c1g6MC45O3NZOjAuOTtza1g6MDtza1k6MDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O286MTsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjMuZWFzZUluT3V0JnF1b3Q7fSx7JnF1b3Q7ZGVsYXkmcXVvdDs6JnF1b3Q7d2FpdCZxdW90OywmcXVvdDtzcGVlZCZxdW90OzoxMDAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90Ozk5OSZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbiZxdW90O31dIiBkYXRhLXRleHRhbGlnbj0iWydpbmhlcml0JywnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0J10iIGRhdGEtcGFkZGluZ3RvcD0iWzAsMCwwLDBdIiBkYXRhLXBhZGRpbmdyaWdodD0iWzAsMCwwLDBdIiBkYXRhLXBhZGRpbmdib3R0b209IlswLDAsMCwwXSIgZGF0YS1wYWRkaW5nbGVmdD0iWzAsMCwwLDBdIj4NCiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImltYWdlL3NsaWRlci9iaXRjb2luLWltZy5wbmciIGFsdD0iIiBkYXRhLXd3PSJbJzcwN3B4JywnNTE0cHgnLCc2MTRweCcsJzYxNHB4J10iIGRhdGEtaGg9IlsnNzM2cHgnLCc1MTBweCcsJzQ1MHB4JywnNDUwcHgnXSIgd2lkdGg9IjcwNyIgaGVpZ2h0PSI3MzYiIGRhdGEtbm8tcmV0aW5hPSIiPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2xpZGVyX3RleHRfYm94Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiB0cC1yZXNpemVtZSBmaXJzdF90ZXh0IiBpZD0ic2xpZGUtMTU4Ni1sYXllci0xIiBkYXRhLXg9IlsnbGVmdCcsJ2xlZnQnLCdsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzI5MCcsJzI5MCcsJzI5MCcsJzIzMCcsMTcwXSIgZGF0YS1mb250c2l6ZT0iWycyMiddIiBkYXRhLWxpbmVoZWlnaHQ9IlsnMzAnXSIgZGF0YS13aWR0aD0iWycyMDAnXSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm93cmFwIiBkYXRhLXR5cGU9InRleHQiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLWZyYW1lcz0nW3siZnJvbSI6Ink6Wy0xMDAlXTt6OjA7clg6MGRlZztyWTowO3JaOjA7c1g6MTtzWToxO3NrWDowO3NrWTowOyIsIm1hc2siOiJ4OjBweDt5OjBweDsiLCJzcGVlZCI6MTUwMCwidG8iOiJvOjE7IiwiZGVsYXkiOjU1MCwiZWFzZSI6IlBvd2VyMy5lYXNlSW5PdXQifSx7ImRlbGF5Ijoid2FpdCIsInNwZWVkIjozMDAsInRvIjoib3BhY2l0eTowOyIsImVhc2UiOiJub3RoaW5nIn1dJyBkYXRhLXRleHRBbGlnbj0iWydsZWZ0JywnbGVmdCddIiBzdHlsZT0iZm9udC1mYW1pbHk6TG9yYSwgc2VyaWY7IGZvbnQtc3R5bGU6IGl0YWxpYztjb2xvcjogI2ZmZjtmb250LXdlaWdodDogNDAwOyI+RmVhdHVyZWQgQXNzZXRzIDxzcGFuIGNsYXNzPSIiIHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiA4MHB4OyBoZWlnaHQ6IDFweDtiYWNrZ3JvdW5kOiAjZmZmOyI+PC9zcGFuPjwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgc2VjYW5kX3RleHQiIGlkPSJzbGlkZS0xNTg3LWxheWVyLTIiIGRhdGEteD0iWydsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzMzNScsJzMzNScsJzMzNScsJzI3NScsJzIxNSddIiBkYXRhLWZvbnRzaXplPSJbJzU1JywnNDAnLCc0MCcsJzQwJywnMzInXSIgZGF0YS1saW5laGVpZ2h0PSJbJzYzJywnNTUnLCc1MCcsJzUwJywnNDAnXSIgZGF0YS13aWR0aD0iWyc3MDAnLCc3MDAnLCc3MDAnLCc0ODAnLCcyOTAnXSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm9ybWFsIiBkYXRhLXR5cGU9InRleHQiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLWZyYW1lcz0iW3smcXVvdDtkZWxheSZxdW90OzoxMCwmcXVvdDtzcGVlZCZxdW90OzoxNTAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90OzAmcXVvdDssJnF1b3Q7ZnJvbSZxdW90OzomcXVvdDt5OlstMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDsmcXVvdDssJnF1b3Q7bWFzayZxdW90OzomcXVvdDt4OjBweDt5OjBweDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvOjE7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbk91dCZxdW90O30seyZxdW90O2RlbGF5JnF1b3Q7OiZxdW90O3dhaXQmcXVvdDssJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDs5OTkmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7eTpbMTc1JV07JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDppbmhlcml0O3k6aW5oZXJpdDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9XSIgZGF0YS10ZXh0QWxpZ249IlsnbGVmdCddIiBzdHlsZT0iZm9udC1mYW1pbHk6UG9wcGlucywgc2Fucy1zZXJpZjtjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyI+VHJhZGUgQ3J5cHRvLCBTaGFyZXMsIEluZGljZXMsIENvbW1vZGl0aWVzPC9kaXY+DQoNCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiB0cC1yZXNpemVtZSB0aGlyZF90ZXh0IiBpZD0ic2xpZGUtMTU4OC1sYXllci0zIiBkYXRhLXg9IlsnbGVmdCddIiBkYXRhLWhvZmZzZXQ9IlsnMCcsJzAnLCcwJywnMCddIiBkYXRhLXk9IlsndG9wJywndG9wJywndG9wJywndG9wJ10iIGRhdGEtdm9mZnNldD0iWyc0OTAnLCc0NzAnLCc0NzAnLCc0MjAnLCczNjAnXSIgZGF0YS1mb250c2l6ZT0iWycyMicsJzIyJywnMjInLCcyMicsJzE2J10iIGRhdGEtbGluZWhlaWdodD0iWyczMCddIiBkYXRhLXdpZHRoPSJbJzY1MCcsJzY1MCcsJzY1MCcsJzQ3MCcsJzI5MCddIiBkYXRhLWhlaWdodD0ibm9uZSIgZGF0YS13aGl0ZXNwYWNlPSJub3JtYWwiIGRhdGEtdHlwZT0idGV4dCIgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iIGRhdGEtdHJhbnNmb3JtX2lkbGU9Im86MTsiIGRhdGEtZnJhbWVzPSJbeyZxdW90O2RlbGF5JnF1b3Q7OjEwLCZxdW90O3NwZWVkJnF1b3Q7OjE1MDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7MCZxdW90OywmcXVvdDtmcm9tJnF1b3Q7OiZxdW90O3k6WzEwMCVdO3o6MDtyWDowZGVnO3JZOjA7clo6MDtzWDoxO3NZOjE7c2tYOjA7c2tZOjA7b3BhY2l0eTowOyZxdW90OywmcXVvdDttYXNrJnF1b3Q7OiZxdW90O3g6MHB4O3k6WzEwMCVdO3M6aW5oZXJpdDtlOmluaGVyaXQ7JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O286MTsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluT3V0JnF1b3Q7fSx7JnF1b3Q7ZGVsYXkmcXVvdDs6JnF1b3Q7d2FpdCZxdW90OywmcXVvdDtzcGVlZCZxdW90OzoxNTAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90Ozk5OSZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDt5OlsxNzUlXTsmcXVvdDssJnF1b3Q7bWFzayZxdW90OzomcXVvdDt4OmluaGVyaXQ7eTppbmhlcml0O3M6aW5oZXJpdDtlOmluaGVyaXQ7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbk91dCZxdW90O31dIiBkYXRhLXRleHRBbGlnbj0iWydsZWZ0J10iIHN0eWxlPSJmb250LWZhbWlseTpQb3BwaW5zLCBzYW5zLXNlcmlmO2NvbG9yOiAjZmZmO2ZvbnQtd2VpZ2h0OiA0MDA7Ij5PdXIgdHJhZGluZyBlbmdpbmUgaXMgc3BlY2lhbGx5IGRlc2lnbmVkIHRvIGV4ZWN1dGUgb3ZlciAxMiwwMDAgb3JkZXJzIHBlciBzZWNvbmQuDQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgc2xpZGVyX2J1dHRvbiIgaWQ9InNsaWRlLTE1ODktbGF5ZXItNCIgZGF0YS14PSJbJ2xlZnQnXSIgZGF0YS1ob2Zmc2V0PSJbJzAnLCcwJywnMCcsJzAnXSIgZGF0YS15PSJbJ3RvcCcsJ3RvcCcsJ3RvcCcsJ3RvcCddIiBkYXRhLXZvZmZzZXQ9IlsnNTk1JywnNTg1JywnNTg1JywnNTIwJywnNDkwJ10iIGRhdGEtd2lkdGg9IlsnNjAwJ10iIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vd3JhcCIgZGF0YS10eXBlPSJ0ZXh0IiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS1mcmFtZXM9Ilt7JnF1b3Q7ZGVsYXkmcXVvdDs6MTAsJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDswJnF1b3Q7LCZxdW90O2Zyb20mcXVvdDs6JnF1b3Q7eTpbMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDowcHg7eTpbMTAwJV07czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7bzoxOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9LHsmcXVvdDtkZWxheSZxdW90OzomcXVvdDt3YWl0JnF1b3Q7LCZxdW90O3NwZWVkJnF1b3Q7OjE1MDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7OTk5JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O3k6WzE3NSVdOyZxdW90OywmcXVvdDttYXNrJnF1b3Q7OiZxdW90O3g6aW5oZXJpdDt5OmluaGVyaXQ7czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluT3V0JnF1b3Q7fV0iIGRhdGEtdGV4dEFsaWduPSJbJ2xlZnQnXSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ic2xpZGVyX2J0biB0aGVtZV9idG4iIGhyZWY9IkRhc2hib2FyZC9yZWdpc3RlciI+U3RhcnQgdHJhZGluZyBub3c8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9saT4NCg0KICAgICAgICAgICAgPGxpIGRhdGEtaW5kZXg9InJzLTE1ODkiIGRhdGEtdHJhbnNpdGlvbj0iem9vbWluIiBkYXRhLXNsb3RhbW91bnQ9IjciIGRhdGEtaGlkZWFmdGVybG9vcD0iMCIgZGF0YS1oaWRlc2xpZGVvbm1vYmlsZT0ib2ZmIiBkYXRhLWVhc2Vpbj0iUG93ZXI0LmVhc2VJbk91dCIgZGF0YS1lYXNlb3V0PSJQb3dlcjQuZWFzZUluT3V0IiBkYXRhLW1hc3RlcnNwZWVkPSIyMDAwIiBkYXRhLXRodW1iPSJpbWFnZS9zbGlkZXIvc2xpZGVyMi1iZy5qcGciIGRhdGEtcm90YXRlPSIwIiBkYXRhLXNhdmVwZXJmb3JtYW5jZT0ib2ZmIiBkYXRhLXRpdGxlPSJLZW4gQnVybnMiIGRhdGEtcGFyYW0xPSIiIGRhdGEtcGFyYW0yPSIiIGRhdGEtcGFyYW0zPSIiIGRhdGEtcGFyYW00PSIiIGRhdGEtcGFyYW01PSIiIGRhdGEtcGFyYW02PSIiIGRhdGEtcGFyYW03PSIiIGRhdGEtcGFyYW04PSIiIGRhdGEtcGFyYW05PSIiIGRhdGEtcGFyYW0xMD0iIiBkYXRhLWRlc2NyaXB0aW9uPSIiPg0KICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZS9zbGlkZXIvc2xpZGVyMi1iZy5qcGciIGFsdD0iIiBkYXRhLWJncG9zaXRpb249ImNlbnRlciBjZW50ZXIiIGRhdGEta2VuYnVybnM9Im9uIiBkYXRhLWR1cmF0aW9uPSIzMDAwMCIgZGF0YS1lYXNlPSJMaW5lYXIuZWFzZU5vbmUiIGRhdGEtc2NhbGVzdGFydD0iMTAwIiBkYXRhLXNjYWxlZW5kPSIxMjAiIGRhdGEtcm90YXRlc3RhcnQ9IjAiIGRhdGEtcm90YXRlZW5kPSIwIiBkYXRhLW9mZnNldHN0YXJ0PSIwIDAiIGRhdGEtb2Zmc2V0ZW5kPSIwIDAiIGRhdGEtYmdwYXJhbGxheD0iMTAiIGNsYXNzPSJyZXYtc2xpZGViZyIgZGF0YS1uby1yZXRpbmE+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHAtY2FwdGlvbiB0cC1sYXllci1zZWxlY3RhYmxlIHRwLXJlc2l6ZW1lIGNvaW5fc2xpZGVyX2ltZyIgZGF0YS14PSJbJ3JpZ2h0JywncmlnaHQnLCdyaWdodCcsJ3JpZ2h0J10iIGRhdGEtaG9mZnNldD0iWyctMjIwJywnLTE4MCddIiBkYXRhLXk9IlsnbWlkZGxlJywnbWlkZGxlJywndG9wJywndG9wJ10iIGRhdGEtdm9mZnNldD0iWyc0NScsJzQ1J10iIGRhdGEtd2lkdGg9Im5vbmUiIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vd3JhcCIgZGF0YS10eXBlPSJpbWFnZSIgZGF0YS1yZXNwb25zaXZlX29mZnNldD0ib24iIGRhdGEtZnJhbWVzPSJbeyZxdW90O2RlbGF5JnF1b3Q7OjEyMDAsJnF1b3Q7c3BlZWQmcXVvdDs6MTIwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDswJnF1b3Q7LCZxdW90O2Zyb20mcXVvdDs6JnF1b3Q7ejowO3JYOjA7clk6MDtyWjowO3NYOjAuOTtzWTowLjk7c2tYOjA7c2tZOjA7b3BhY2l0eTowOyZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvOjE7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIzLmVhc2VJbk91dCZxdW90O30seyZxdW90O2RlbGF5JnF1b3Q7OiZxdW90O3dhaXQmcXVvdDssJnF1b3Q7c3BlZWQmcXVvdDs6MTAwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDs5OTkmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7b3BhY2l0eTowOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW4mcXVvdDt9XSIgZGF0YS10ZXh0YWxpZ249IlsnaW5oZXJpdCcsJ2luaGVyaXQnLCdpbmhlcml0JywnaW5oZXJpdCddIiBkYXRhLXBhZGRpbmd0b3A9IlswLDAsMCwwXSIgZGF0YS1wYWRkaW5ncmlnaHQ9IlswLDAsMCwwXSIgZGF0YS1wYWRkaW5nYm90dG9tPSJbMCwwLDAsMF0iIGRhdGEtcGFkZGluZ2xlZnQ9IlswLDAsMCwwXSI+DQogICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZS9zbGlkZXIvc2xpZGVyLTIucG5nIiBhbHQ9IiIgZGF0YS13dz0iWyc4NTdweCcsJzY1MHB4JywnNjE0cHgnLCc2MTRweCddIiBkYXRhLWhoPSJbJzg1NHB4JywnNjUwcHgnLCc0NTBweCcsJzQ1MHB4J10iIHdpZHRoPSI4NTciIGhlaWdodD0iODU0IiBkYXRhLW5vLXJldGluYT0iIj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNsaWRlcl90ZXh0X2JveCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgZmlyc3RfdGV4dCIgZGF0YS14PSJbJ2xlZnQnLCdsZWZ0JywnbGVmdCddIiBkYXRhLWhvZmZzZXQ9IlsnMCcsJzAnLCcwJywnMCddIiBkYXRhLXk9IlsndG9wJywndG9wJywndG9wJywndG9wJ10iIGRhdGEtdm9mZnNldD0iWycyOTAnLCcyOTAnLCcyOTAnLCcyMzAnLDE3MF0iIGRhdGEtZm9udHNpemU9IlsnMjInXSIgZGF0YS1saW5laGVpZ2h0PSJbJzMwJ10iIGRhdGEtd2lkdGg9IlsnMjAwJ10iIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vd3JhcCIgZGF0YS10eXBlPSJ0ZXh0IiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS1mcmFtZXM9J1t7ImZyb20iOiJ5OlstMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDsiLCJtYXNrIjoieDowcHg7eTowcHg7Iiwic3BlZWQiOjE1MDAsInRvIjoibzoxOyIsImRlbGF5Ijo1NTAsImVhc2UiOiJQb3dlcjMuZWFzZUluT3V0In0seyJkZWxheSI6IndhaXQiLCJzcGVlZCI6MzAwLCJ0byI6Im9wYWNpdHk6MDsiLCJlYXNlIjoibm90aGluZyJ9XScgZGF0YS10ZXh0QWxpZ249IlsnbGVmdCcsJ2xlZnQnXSIgc3R5bGU9ImZvbnQtZmFtaWx5OkxvcmEsIHNlcmlmOyBmb250LXN0eWxlOiBpdGFsaWM7Y29sb3I6ICNmZmY7Zm9udC13ZWlnaHQ6IDQwMDsiPkZlYXR1cmVkIENvaW5zIDxzcGFuIGNsYXNzPSIiIHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiA4MHB4OyBoZWlnaHQ6IDFweDtiYWNrZ3JvdW5kOiAjZmZmOyI+PC9zcGFuPjwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgc2VjYW5kX3RleHQiIGRhdGEteD0iWydsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzMzNScsJzMzNScsJzMzNScsJzI3NScsJzIxNSddIiBkYXRhLWZvbnRzaXplPSJbJzU1JywnNDAnLCc0MCcsJzQwJywnMzInXSIgZGF0YS1saW5laGVpZ2h0PSJbJzYzJywnNTUnLCc1MCcsJzUwJywnNDAnXSIgZGF0YS13aWR0aD0iWyc3MDAnLCc3MDAnLCc3MDAnLCc0ODAnLCcyOTAnXSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm9ybWFsIiBkYXRhLXR5cGU9InRleHQiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLWZyYW1lcz0iW3smcXVvdDtkZWxheSZxdW90OzoxMCwmcXVvdDtzcGVlZCZxdW90OzoxNTAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90OzAmcXVvdDssJnF1b3Q7ZnJvbSZxdW90OzomcXVvdDt5OlstMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDsmcXVvdDssJnF1b3Q7bWFzayZxdW90OzomcXVvdDt4OjBweDt5OjBweDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvOjE7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbk91dCZxdW90O30seyZxdW90O2RlbGF5JnF1b3Q7OiZxdW90O3dhaXQmcXVvdDssJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDs5OTkmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7eTpbMTc1JV07JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDppbmhlcml0O3k6aW5oZXJpdDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9XSIgZGF0YS10ZXh0QWxpZ249IlsnbGVmdCddIiBzdHlsZT0iZm9udC1mYW1pbHk6UG9wcGlucywgc2Fucy1zZXJpZjtjb2xvcjogI2ZmZjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyI+VGhlIEZ1dHVyZSBvZiA8c3BhbiBzdHlsZT0iY29sb3I6ICMzN2FiNzUiPkZpbmFuY2luZzwvc3Bhbj4gaXMgY3J5cHRvY3VycmVuY3k8L2Rpdj4NCg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cC1jYXB0aW9uIHRwLXJlc2l6ZW1lIHRoaXJkX3RleHQiIGRhdGEteD0iWydsZWZ0J10iIGRhdGEtaG9mZnNldD0iWycwJywnMCcsJzAnLCcwJ10iIGRhdGEteT0iWyd0b3AnLCd0b3AnLCd0b3AnLCd0b3AnXSIgZGF0YS12b2Zmc2V0PSJbJzQ5MCcsJzQ3MCcsJzQ3MCcsJzQyMCcsJzM2MCddIiBkYXRhLWZvbnRzaXplPSJbJzIyJywnMjInLCcyMicsJzIyJywnMTYnXSIgZGF0YS13aWR0aD0iWyc2NTAnLCc2NTAnLCc2NTAnLCc0NzAnLCcyOTAnXSIgZGF0YS1oZWlnaHQ9Im5vbmUiIGRhdGEtd2hpdGVzcGFjZT0ibm9ybWFsIiBkYXRhLXR5cGU9InRleHQiIGRhdGEtcmVzcG9uc2l2ZV9vZmZzZXQ9Im9uIiBkYXRhLXRyYW5zZm9ybV9pZGxlPSJvOjE7IiBkYXRhLWZyYW1lcz0iW3smcXVvdDtkZWxheSZxdW90OzoxMCwmcXVvdDtzcGVlZCZxdW90OzoxNTAwLCZxdW90O2ZyYW1lJnF1b3Q7OiZxdW90OzAmcXVvdDssJnF1b3Q7ZnJvbSZxdW90OzomcXVvdDt5OlsxMDAlXTt6OjA7clg6MGRlZztyWTowO3JaOjA7c1g6MTtzWToxO3NrWDowO3NrWTowO29wYWNpdHk6MDsmcXVvdDssJnF1b3Q7bWFzayZxdW90OzomcXVvdDt4OjBweDt5OlsxMDAlXTtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDt0byZxdW90OzomcXVvdDtvOjE7JnF1b3Q7LCZxdW90O2Vhc2UmcXVvdDs6JnF1b3Q7UG93ZXIyLmVhc2VJbk91dCZxdW90O30seyZxdW90O2RlbGF5JnF1b3Q7OiZxdW90O3dhaXQmcXVvdDssJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDs5OTkmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7eTpbMTc1JV07JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDppbmhlcml0O3k6aW5oZXJpdDtzOmluaGVyaXQ7ZTppbmhlcml0OyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9XSIgZGF0YS10ZXh0QWxpZ249IlsnbGVmdCddIiBzdHlsZT0iZm9udC1mYW1pbHk6UG9wcGlucywgc2Fucy1zZXJpZjtjb2xvcjogI2ZmZjtmb250LXdlaWdodDogNDAwOyI+VHJhZGUgQlRDLCBFVEgsIFhSUCwgTFRDLCBhbmQgRU9TIHdpdGggMTAweCBsZXZlcmFnZSBhbmQgdGhlIGxvd2VzdCBmZWVzDQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRwLWNhcHRpb24gdHAtcmVzaXplbWUgc2xpZGVyX2J1dHRvbiIgZGF0YS14PSJbJ2xlZnQnXSIgZGF0YS1ob2Zmc2V0PSJbJzAnLCcwJywnMCcsJzAnXSIgZGF0YS15PSJbJ3RvcCcsJ3RvcCcsJ3RvcCcsJ3RvcCddIiBkYXRhLXZvZmZzZXQ9IlsnNTk1JywnNTg1JywnNTg1JywnNTIwJywnNDkwJ10iIGRhdGEtd2lkdGg9IlsnNjAwJ10iIGRhdGEtaGVpZ2h0PSJub25lIiBkYXRhLXdoaXRlc3BhY2U9Im5vd3JhcCIgZGF0YS10eXBlPSJ0ZXh0IiBkYXRhLXJlc3BvbnNpdmVfb2Zmc2V0PSJvbiIgZGF0YS1mcmFtZXM9Ilt7JnF1b3Q7ZGVsYXkmcXVvdDs6MTAsJnF1b3Q7c3BlZWQmcXVvdDs6MTUwMCwmcXVvdDtmcmFtZSZxdW90OzomcXVvdDswJnF1b3Q7LCZxdW90O2Zyb20mcXVvdDs6JnF1b3Q7eTpbMTAwJV07ejowO3JYOjBkZWc7clk6MDtyWjowO3NYOjE7c1k6MTtza1g6MDtza1k6MDtvcGFjaXR5OjA7JnF1b3Q7LCZxdW90O21hc2smcXVvdDs6JnF1b3Q7eDowcHg7eTpbMTAwJV07czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7dG8mcXVvdDs6JnF1b3Q7bzoxOyZxdW90OywmcXVvdDtlYXNlJnF1b3Q7OiZxdW90O1Bvd2VyMi5lYXNlSW5PdXQmcXVvdDt9LHsmcXVvdDtkZWxheSZxdW90OzomcXVvdDt3YWl0JnF1b3Q7LCZxdW90O3NwZWVkJnF1b3Q7OjE1MDAsJnF1b3Q7ZnJhbWUmcXVvdDs6JnF1b3Q7OTk5JnF1b3Q7LCZxdW90O3RvJnF1b3Q7OiZxdW90O3k6WzE3NSVdOyZxdW90OywmcXVvdDttYXNrJnF1b3Q7OiZxdW90O3g6aW5oZXJpdDt5OmluaGVyaXQ7czppbmhlcml0O2U6aW5oZXJpdDsmcXVvdDssJnF1b3Q7ZWFzZSZxdW90OzomcXVvdDtQb3dlcjIuZWFzZUluT3V0JnF1b3Q7fV0iIGRhdGEtdGV4dEFsaWduPSJbJ2xlZnQnXSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ic2xpZGVyX2J0biB0aGVtZV9idG4iIGhyZWY9IkRhc2hib2FyZC9sb2dpbiI+U3RhcnQgdHJhZGluZyBub3c8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9saT4NCiAgICAgICAgPC91bD4NCiAgICA8L2Rpdj4NCjwvc2VjdGlvbj4NCjwhLS09PT09PT09PT09PT09PT09RW5kIFNsaWRlciBBcmVhID09PT09PT09PT09PT09PT09LS0+DQoNCg0KDQoNCg0KPHNlY3Rpb24gY2xhc3M9IiI+DQogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy0xMiBjb2wtbWQtMTIiPg0KICAgICAgICAgICAgICAgIDxzY3JpcHQgc3JjPSJhc3NldHMvY29pbmdlY2tvLWNvaW4tbGlzdC13aWRnZXQuanMiPjwvc2NyaXB0Pg0KICAgICAgICAgICAgICAgIDxjb2luZ2Vja28tY29pbi1saXN0LXdpZGdldCBjb2luLWlkcz0iYml0Y29pbixldGhlcmV1bSxlb3MscmlwcGxlLGxpdGVjb2luIiBjdXJyZW5jeT0idXNkIiBsb2NhbGU9ImVuIj48L2NvaW5nZWNrby1jb2luLWxpc3Qtd2lkZ2V0Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KPC9zZWN0aW9uPg0KDQoNCjwhLS09PT09PT09PT09PT09PT09IEFib3V0IEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCjxzZWN0aW9uIGNsYXNzPSIiIHN0eWxlPSJiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoIzhhOGZkNSwjMDA4MGRiLCNmZmYpO2NvbG9yOmJsYWNrIj4NCiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICA8YnI+PGJyPg0KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTYgY29sLW1kLTEyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhYm91dF9pbWciPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2UvbmV3L2Fib3V0X2xhcHRvcGEucG5nIiBhbHQ9IiI+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy02IGNvbC1tZC0xMiBkaXNwbGF5X2ZsZXgiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFib3V0X2NvbnRlbnQgZmxleCI+DQogICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzcz0ibWJfMCIgc3R5bGU9ImNvbG9yOiMyNTM5NzgiPjxzdHJvbmc+QWJvdXQgU2Nyb01lZ2FUcmFkZTwvc3Ryb25nPjwvaDE+DQogICAgICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9Im1iXzAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPSJmb250LWZhbWlseTpMb3JhO2NvbG9yOmJsYWNrIj4gU2Nyb01lZ2FUcmFkZSBpcyBhbiBhd2FyZCB3aW5uaW5nIEZvcmV4LCBDcnlwdG8gYW5kIENvbW1vZGl0aWVzIEJyb2tlciwgcHJvdmlkaW5nIHRyYWRpbmcgc2VydmljZXMgYW5kIGZhY2lsaXRpZXMgdG8gYm90aCByZXRhaWwgYW5kIGluc3RpdHV0aW9uYWwgY2xpZW50cy4gVGhyb3VnaCBpdHMgcG9saWN5IG9mIHByb3ZpZGluZyB0aGUgYmVzdCBwb3NzaWJsZSB0cmFkaW5nIGNvbmRpdGlvbnMgdG8gaXRzIGNsaWVudHMgYW5kIGFsbG93aW5nIGJvdGggc2NhbHBlcnMgYW5kIHRyYWRlcnMgdXNpbmcgZXhwZXJ0IGFkdmlzb3JzIHVucmVzdHJpY3RlZCBhY2Nlc3MgdG8gaXRzIGxpcXVpZGl0eSwgU2Nyb01lZ2FUcmFkZSBoYXMgcG9zaXRpb25lZCBpdHNlbGYgYXMgdGhlIGZvcmV4IGJyb2tlciBvZiBjaG9pY2UgZm9yIHRyYWRlcnMgd29ybGR3aWRlLiBBdCBTY3JvTWVnYVRyYWRlLCB3ZSdyZSBkZWRpY2F0ZWQgdG8gcHJvdmlkaW5nIG91ciBjbGllbnRzIHdpdGggdGhlIG1vc3QgYWR2YW5jZWQgYW5kIHBvd2VyZnVsIHRyYWRpbmcgdG9vbHMgaW4gYSB3aWRlIHJhbmdlIG9mIG1hcmtldHMNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRm9yIHRyYWRlcnMganVzdCBzdGFydGluZyBvdXQgb3Igc2Vhc29uZWQgdHJhZGVycyBhbHJlYWR5IGZhbWlsaWFyIHdpdGggdHJhZGluZywgd2Ugb2ZmZXIgdGhlIHJvYnVzdCBNZXRhVHJhZGVyIDQgYW5kIE1ldGFUcmFkZXIgNSBwbGF0Zm9ybXMgd2l0aCB0aGUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWR2YW50YWdlIG9mIG91ciBjb21wZXRpdGl2ZSBzcHJlYWRzIGFuZCBmaXJzdCBjbGFzcyBtdWx0aS1saW5ndWFsIHN1cHBvcnQuIFdlIGFsc28gYWxsb3cgZm9yIGZsZXhpYmxlIHRyYWRpbmcgb24gYSByYW5nZSBvZiBGb3JleCwgQ3J5cHRvIGFuZCBDRkRzDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGluZyBDcnlwdG9jdXJyZW5jaWVzLCBDb21tb2RpdGllcywgSW5kaWNlcyBhbmQgQmluYXJ5IE9wdGlvbnMgdGhyb3VnaCBNZXRhVHJhZGVyIDQgYW5kIE1ldGFUcmFkZXIgNTwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJEYXNoYm9hcmQvcmVnaXN0ZXIiIGNsYXNzPSJidG4gdGhlbWVfYnRuIHRoZW1lX2J0bl90d28iPkdldCBTdGFydGVkPC9hPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8YnI+PGJyPg0KICAgIDwvZGl2Pg0KPC9zZWN0aW9uPg0KPCEtLT09PT09PT09PT09PT09PT0gQWJvdXQgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KDQoNCjxzZWN0aW9uIGNsYXNzPSIiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctMTIgY29sLW1kLTEyIGRpc3BsYXlfZmxleCI+DQogICAgICAgICAgICAgICAgPGlmcmFtZSB3aWR0aD0iMTAwJSIgaGVpZ2h0PSI0MjAiIHNyYz0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvdFpPU1FCUDk0NlEiIGZyYW1lYm9yZGVyPSIxIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQoNCjwhLS09PT09PT09PT09PT09PT09IERlbW8gVHJhZGluZyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQo8c2VjdGlvbiBjbGFzcz0iIj4NCiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICA8YnI+DQogICAgICAgIDxicj4NCiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy04IGNvbC1tZC0xMiBkaXNwbGF5X2ZsZXgiPg0KICAgICAgICAgICAgICAgIDxzdHlsZT4NCiAgICAgICAgICAgICAgICAgICAgZGl2LnNjcm9sbG1lbnUgew0KICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsNCiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvOw0KICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMzUwcHg7DQogICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOw0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgZGl2LnNjcm9sbG1lbnUgYSB7DQogICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7DQogICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7DQogICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4Ow0KICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgZGl2LnNjcm9sbG1lbnUgYTpob3ZlciB7DQogICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3Ow0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgPC9zdHlsZT4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzY3JvbGxtZW51Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWJvdXRfY29udGVudCBmbGV4Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpZnJhbWUgc3JjPSJkZW1vLnBocCIgY2xhc3M9Im1pbmktcGxhdGZvcm0iIHdpZHRoPSI3MDRweCIgZnJhbWVCb3JkZXI9IjAiIGhlaWdodD0iMzM1cHgiPjwvaWZyYW1lPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTEyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhYm91dF9pbWciPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2UvdDRjLnBuZyIgYWx0PSIiPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KPC9zZWN0aW9uPg0KPCEtLT09PT09PT09PT09PT09PT0gQWJvdXQgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KDQoNCjwhLS09PT09PT09PT09PT09PT09IGN1cnJlbmN5IHByaWNlIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCjxzZWN0aW9uIGNsYXNzPSJjdXJyZW5jeV9wcmljZV9hcmVhIj4NCiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uX3RpdGxlIHRleHQtY2VudGVyIG1iXzYwIj4NCiAgICAgICAgICAgIDxoMiBjbGFzcz0ibWJfMCI+TGl2ZSBNYXJrZXQgRGF0YTwvaDI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYm90dG9tX2xpbmUiPjwvc3Bhbj4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMTIgY29sLXNtLTEyIGNvbC14cy0xMiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZnVsbCB0YWJsZS1yZXNwb25zaXZlIj4NCiAgICAgICAgICAgICAgICAgICAgPCEtLSBUcmFkaW5nVmlldyBXaWRnZXQgQkVHSU4gLS0+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRyYWRpbmd2aWV3LXdpZGdldC1jb250YWluZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz0idHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCI+PGEgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tL21hcmtldHMvIiByZWw9Im5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+PHNwYW4gY2xhc3M9ImJsdWUtdGV4dCI+RmluYW5jaWFsIE1hcmtldHM8L3NwYW4+PC9hPiBieSBUcmFkaW5nVmlldzwvZGl2PiAtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vczMudHJhZGluZ3ZpZXcuY29tL2V4dGVybmFsLWVtYmVkZGluZy9lbWJlZC13aWRnZXQtbWFya2V0LXF1b3Rlcy5qcyIgYXN5bmM+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid2lkdGgiOiAiMTAwJSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJoZWlnaHQiOiA0NTAsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzeW1ib2xzR3JvdXBzIjogW3sNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJJbmRpY2VzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JpZ2luYWxOYW1lIjogIkluZGljZXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzeW1ib2xzIjogW3sNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZPUkVYQ09NOlNQWFVTRCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheU5hbWUiOiAiUyZQIDUwMCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiRk9SRVhDT006TlNYVVNEIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJVUyAxMDAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZPUkVYQ09NOkRKSSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheU5hbWUiOiAiRG93IDMwIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJJTkRFWDpOS1kiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXlOYW1lIjogIk5pa2tlaSAyMjUiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIklOREVYOkRFVTQwIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJEQVggSW5kZXgiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZPUkVYQ09NOlVLWEdCUCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheU5hbWUiOiAiVUsgMTAwIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJGdXR1cmVzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JpZ2luYWxOYW1lIjogIkZ1dHVyZXMiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzeW1ib2xzIjogW3sNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkNNRV9NSU5JOkVTMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXlOYW1lIjogIlMmUCA1MDAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkNNRTo2RTEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJFdXJvIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJDT01FWDpHQzEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJHb2xkIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJOWU1FWDpDTDEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJDcnVkZSBPaWwiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIk5ZTUVYOk5HMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXlOYW1lIjogIk5hdHVyYWwgR2FzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJDQk9UOlpDMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXlOYW1lIjogIkNvcm4iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkJvbmRzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JpZ2luYWxOYW1lIjogIkJvbmRzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3ltYm9scyI6IFt7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJDTUU6R0UxISIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheU5hbWUiOiAiRXVyb2RvbGxhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiQ0JPVDpaQjEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJULUJvbmQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkNCT1Q6VUIxISIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheU5hbWUiOiAiVWx0cmEgVC1Cb25kIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJFVVJFWDpGR0JMMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXlOYW1lIjogIkV1cm8gQnVuZCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiRVVSRVg6RkJUUDEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJFdXJvIEJUUCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiRVVSRVg6RkdCTTEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5TmFtZSI6ICJFdXJvIEJPQkwiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZvcmV4IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JpZ2luYWxOYW1lIjogIkZvcmV4IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3ltYm9scyI6IFt7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJGWDpFVVJVU0QiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZYOkdCUFVTRCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiRlg6VVNESlBZIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJGWDpVU0RDSEYiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIkZYOkFVRFVTRCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiRlg6VVNEQ0FEIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2hvd1N5bWJvbExvZ28iOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29sb3JUaGVtZSI6ICJsaWdodCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpc1RyYW5zcGFyZW50IjogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhbGUiOiAiZW4iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgPC9zY3JpcHQ+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8IS0tIFRyYWRpbmdWaWV3IFdpZGdldCBFTkQgLS0+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQo8IS0tPT09PT09PT09PT09PT09PSBIb3cgd29yayBBcmVhID09PT09PT09PT09PT09PT09LS0+DQo8c2VjdGlvbiBjbGFzcz0iaG93X3dvcmtfYXJlYSI+DQogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbl90aXRsZSB0ZXh0LWNlbnRlciBtYl82MCI+DQogICAgICAgICAgICA8aDI+SG93IGl0IHdvcmtzPC9oMj4NCiAgICAgICAgICAgIDxwIGNsYXNzPSJ0aXRsZV9wIj4gPC9wPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJvdHRvbV9saW5lIj48L3NwYW4+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Indvcmtfc3RlcCB3b3JrX2ZpcnN0IHRleHQtY2VudGVyIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id29ya19pY29uIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmbGF0aWNvbi1tb25leS00Ij48L2k+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8aDIgY2xhc3M9Im1iXzAiPlJlZ2lzdGVyPC9oMj4NCiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPlNpZ24gdXAgb24gUEMvTW9iaWxlIHdpdGggeW91ciBGaXJzdCBOYW1lLCBMYXN0IG5hbWUgLCBFbWFpbCAmYW1wOyBNb2JpbGUgTnVtYmVyLjwvcD4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Indvcmtfc3RlcCB3b3JrX21pZGRsZSB0ZXh0LWNlbnRlciI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndvcmtfaWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktNiI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJtYl8wIj5WZXJpZnkgJiBEZXBvc2l0PC9oMj4NCiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPnZlcmlmeSB3aXRoIENvdW50cnkgaXNzdWVkIGlkZW50aXR5IGNhcmQgYW5kIEFkZCBiaXRjb2lucyB0byB5b3VyIGFjY291bnQuIDwvcD4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Indvcmtfc3RlcCB0ZXh0LWNlbnRlciI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndvcmtfaWNvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktNSI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJtYl8wIj5Hcm93IFlvdXIgRnVuZCAmIFdpdGhkcmF3PC9oMj4NCiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPkVhcm4gcHJvZml0cywgRW50ZXIgeW91ciBiaXRjb2luIGFkZHJlc3MsIHNwZWNpZnkgdGhlIGFtb3VudCBhbmQgV2l0aGRyYXcuIDwvcD4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjwvc2VjdGlvbj4NCjwhLS09PT09PT09PT09PT09PT09IEhvdyB3b3JrIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCg0KPCEtLT09PT09PT09PT09PT09PT0gY3VycmVuY3kgcHJpY2UgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KDQo8IS0tPT09PT09PT09PT09PT09PSBTZWxsIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCjxzZWN0aW9uIGNsYXNzPSJidXlfc2VsbF9hcmVhIj4NCiAgICA8ZGl2IGNsYXNzPSJvdmVybGF5X2ltZyI+PC9kaXY+DQogICAgPGltZyBjbGFzcz0iY29pbl9pbWciIHNyYz0iaW1hZ2UvYm9keS1iZy1uZXcuanBnIiBhbHQ9ImNvaW4iPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNSBjb2wtbWQtNiB3b3cgZmFkZUluTGVmdCBhbmltYXRlZCI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VsbF9jb250ZW50Ij4NCiAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJ0aXRsZV9oMiBjX3doaXRlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJtYl8wIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPSJmb250LWZhbWlseTpMb3JhIj4gU3RhcnQgVHJhZGluZyBGb3JleA0KICAgICAgICAgICAgICAgICAgICA8L2gyPg0KICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9InRpdGxlX2g0IGNfd2hpdGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9ImZvbnQtZmFtaWx5OkxvcmEiPjxzdHJvbmc+MToxMDB4IDwvc3Ryb25nPiBBY2NvdW50IExpdmVyYWdlPC9wPg0KICAgICAgICAgICAgICAgICAgICA8L2g0Pg0KICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9InRpdGxlX2g0IGNfd2hpdGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9ImZvbnQtZmFtaWx5OkxvcmEiPkNvbGxhYm9yYXRlIHdpdGggYSBkZWRpY2F0ZWQgdHJhZGUgbWFuYWdlci9hZHZpc29yIHdobyB3aWxsIHdvcmsgd2l0aCB5b3UgYW5kIGZvciB5b3UsIHByb3ZpZGluZyBjbGVhciByZWNvbW1lbmRhdGlvbnMgZGVzaWduZWQgdG8gaGVscCB5b3UgZ3JvdyBhbmQgcHJvdGVjdCB5b3VyIHdlYWx0aC4gWW91IHdpbGwgc2lnbiB1cCBhIHRyYWRlIGFjY291bnQgaW4gdGhlIGJyb2tlcmFnZSBwbGF0Zm9ybSB1c2luZyB0aGUgZW5jcnlwdGVkIGxpbmsgcHJvdmlkZWQgYnkgdGhlIGFkdmlzb3IgYW5kIHlvdSBhbG9uZSB3aWxsIGhhdmUgZnVsbCBhY2Nlc3MgdG8geW91ciB0cmFkZSBhY2NvdW50IHNvIGFzIHRvIGluaXRpYXRlIHdpdGhkcmF3YWwgYW55dGltZS4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBZb3Ugd2lsbCBmdW5kIHlvdXIgdHJhZGUgYWNjb3VudCB3aXRoIHlvdXIgaW52ZXN0bWVudCBjYXBpdGFsIHdoaWNoIHdpbGwgZ2VuZXJhdGUgYSBmaXhlZCByZXR1cm4gd2hpY2ggZGVwZW5kcyBvbiB0aGUgc2lnbmFsIHN0cmVuZ3RoPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9ImJ0biB0aGVtZV9idG4gc3VibWl0X2J0biI+S25vdyBtb3JlPC9hPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNiBvZmZzZXQtbGctMSBjb2wtbWQtNiB3b3cgZmFkZUluUmlnaHQgYW5pbWF0ZWQiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImN1cnJlbmN5X2NhbGN1bGF0ZXIiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb252ZXJ0ZXIiIGlkPSJjb252ZXJ0ZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGg2IGlkPSJiaXRjb2luLWNvbS1wcmljZS1jb252ZXJ0ZXIiPiA8L2g2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPGZpZWxkc2V0IGlkPSJjcnlwdG8tZmllbGRzZXQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJudW1iZXIiIG5hbWU9ImNyeXB0byIgcGxhY2Vob2xkZXI9IkVudGVyIEFtb3VudCIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBpZD0iY3J5cHRvLXNlbGVjdCI+PHNwYW4gY2xhc3M9Imdyb3VwIj48c3BhbiBjbGFzcz0ibGFiZWwiPkJUQzwvc3Bhbj48c3BhbiBjbGFzcz0iYXJyb3ciPjwvc3Bhbj48L3NwYW4+PC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9maWVsZHNldD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWVsZHNldCBpZD0iZmlhdC1maWVsZHNldCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9Im51bWJlciIgbmFtZT0iZmlhdCIgcGxhY2Vob2xkZXI9IkVudGVyIEFtb3VudCIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBpZD0iZmlhdC1zZWxlY3QiPjxzcGFuIGNsYXNzPSJncm91cCI+PHNwYW4gY2xhc3M9ImxhYmVsIj5VU0Q8L3NwYW4+PHNwYW4gY2xhc3M9ImFycm93Ij48L3NwYW4+PC9zcGFuPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmllbGRzZXQ+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2NleC5pby8iIGNsYXNzPSJ0aGVtZV9idG4iPkJ1eSBCaXRjb2luPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9wdXAiIGlkPSJjcnlwdG8tcG9wdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyBjdXJyZW50IiBkYXRhLXVuaXQ9ImIiPjxzcGFuIGNsYXNzPSJhYmJyIj5CVEM8L3NwYW4+PHNwYW4gY2xhc3M9ImxhYmVsIj5iaXRjb2luPC9zcGFuPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyIgZGF0YS11bml0PSJtIj48c3BhbiBjbGFzcz0iYWJiciI+bUJUQzwvc3Bhbj48c3BhbiBjbGFzcz0ibGFiZWwiPm1pbGxpYml0Y29pbjwvc3Bhbj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciIGRhdGEtdW5pdD0idSI+PHNwYW4gY2xhc3M9ImFiYnIiPsK1QlRDPC9zcGFuPjxzcGFuIGNsYXNzPSJsYWJlbCI+Yml0czwvc3Bhbj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciIGRhdGEtdW5pdD0icyI+PHNwYW4gY2xhc3M9ImFiYnIiPlNBVDwvc3Bhbj48c3BhbiBjbGFzcz0ibGFiZWwiPnNhdG9zaGk8L3NwYW4+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvcHVwIiBpZD0iZmlhdC1wb3B1cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIHBsYWNlaG9sZGVyPSJTZWFyY2ggQ3VycmVuY3kiIC8+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iZmlhdC1yb3dzIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjwvc2VjdGlvbj4NCjwhLS09PT09PT09PT09PT09PT09IFNlbGwgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiPg0KPHN0eWxlPg0KICAgICogew0KICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94Ow0KICAgIH0NCg0KICAgIC5jb2x1bW5zIHsNCiAgICAgICAgLyogcGFkZGluZzogMTBweCA1MHB4OyAqLw0KICAgICAgICBmbG9hdDogbGVmdDsNCiAgICAgICAgd2lkdGg6IDI1JTsNCiAgICAgICAgLyogd2lkdGg6IDMzLjMlOyAqLw0KICAgICAgICBwYWRkaW5nOiAxOHB4IDI1cHg7DQogICAgfQ0KDQogICAgLnByaWNlIHsNCiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lOw0KICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlOw0KICAgICAgICBtYXJnaW46IDA7DQogICAgICAgIHBhZGRpbmc6IDA7DQogICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC4zczsNCiAgICAgICAgdHJhbnNpdGlvbjogMC4zczsNCiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWFnZS90ZmYuanBnJyk7DQogICAgfQ0KDQogICAgLnByaWNlOmhvdmVyIHsNCiAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMTJweCAwIHJnYmEoMCwgMCwgMCwgMC4yKQ0KICAgIH0NCg0KICAgIC5wcmljZSAuaGVhZGVyIHsNCiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzExMTsNCiAgICAgICAgY29sb3I6IHdoaXRlOw0KICAgICAgICBmb250LXNpemU6IDMwcHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsNCiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWFnZS90Zi5qcGcnKTsNCiAgICB9DQoNCiAgICAucHJpY2UgbGkgew0KICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTsNCiAgICAgICAgcGFkZGluZzogMjBweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICBjb2xvcjogIzAwMDsNCiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsNCiAgICB9DQoNCiAgICAucHJpY2UgLmdyZXkgew0KICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4MGRiOw0KICAgICAgICBmb250LXNpemU6IDIwcHg7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsNCiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWFnZS90ZmYuanBnJyk7DQogICAgfQ0KDQogICAgLmJ1dHRvbiB7DQogICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaW1hZ2UvdGYuanBnJyk7DQogICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsNCiAgICAgICAgYm9yZGVyOiBub25lOw0KICAgICAgICBjb2xvcjogd2hpdGU7DQogICAgICAgIHBhZGRpbmc6IDEwcHggMjVweDsNCiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgICAgIGZvbnQtc2l6ZTogMThweDsNCiAgICB9DQoNCiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7DQogICAgICAgIC5jb2x1bW5zIHsNCiAgICAgICAgICAgIHdpZHRoOiAxMDAlOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgbGkuYmxhY2sgew0KICAgICAgICBmb250LXNpemU6IDI2cHg7DQogICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KICAgIH0NCjwvc3R5bGU+DQo8L2hlYWQ+DQoNCjxib2R5Pg0KICAgIDxCUj4NCiAgICA8cCBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6YmxhY2siPg0KICAgICAgICBQVVJDSEFTRSBOT1cuLi4NCiAgICA8L3A+DQogICAgPGgyIHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjpibGFjayI+T1VSIEFWQUlMQUJMRSBJTlZFU1RNRU5UIFBMQU5TPC9oMj4NCiAgICA8aHI+DQogICAgPGRpdiBjbGFzcz0iY29sdW1ucyI+DQogICAgICAgIDx1bCBjbGFzcz0icHJpY2UiPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSJibGFjayI+U3RhcnRlciBQbGFuPC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iaGVhZGVyIj4kNTAwLjAwPC9saT4NCiAgICAgICAgICAgIDxsaT5TaWduYWwgUHJvPC9saT4NCiAgICAgICAgICAgIDxsaT5TaWduYWwgQW5hbHlzaXM8L2xpPg0KICAgICAgICAgICAgPGxpPk1pbi5JbnZlc3RtZW50OiAkNTAwPC9saT4NCiAgICAgICAgICAgIDxsaT5NYXguSW52ZXN0bWVudDogJDksOTk5PC9saT4NCiAgICAgICAgICAgIDxsaT4yJSBSZWZlcnJhbCBCb251czwvbGk+DQogICAgICAgICAgICA8bGk+MjQvNyBDdXN0b21lciBDYXJlPC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iZ3JleSI+PGEgaHJlZj0iRGFzaGJvYXJkL2xvZ2luIiBjbGFzcz0iYnV0dG9uIj5HZXQgU3RhcnRlZDwvYT48L2xpPg0KICAgICAgICA8L3VsPg0KICAgIDwvZGl2Pg0KDQogICAgPGRpdiBjbGFzcz0iY29sdW1ucyI+DQogICAgICAgIDx1bCBjbGFzcz0icHJpY2UiPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSJibGFjayI+UHJlbWl1bSBQbGFuPC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iaGVhZGVyIj4kMTAsMDAwLjAwPC9saT4NCiAgICAgICAgICAgIDxsaT5TaWduYWwgUHJvPC9saT4NCiAgICAgICAgICAgIDxsaT5TaWduYWwgQW5hbHlzaXM8L2xpPg0KICAgICAgICAgICAgPGxpPk1pbi5JbnZlc3RtZW50OiAkMTAsMDAwPC9saT4NCiAgICAgICAgICAgIDxsaT5NYXguSW52ZXN0bWVudDogJDE5LDk5OTwvbGk+DQogICAgICAgICAgICA8bGk+Mi41JSBSZWZlcnJhbCBCb251czwvbGk+DQogICAgICAgICAgICA8bGk+MjQvNyBDdXN0b21lciBDYXJlPC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iZ3JleSI+PGEgaHJlZj0iRGFzaGJvYXJkL2xvZ2luIiBjbGFzcz0iYnV0dG9uIj5HZXQgU3RhcnRlZDwvYT48L2xpPg0KICAgICAgICA8L3VsPg0KICAgIDwvZGl2Pg0KDQogICAgPGRpdiBjbGFzcz0iY29sdW1ucyI+DQogICAgICAgIDx1bCBjbGFzcz0icHJpY2UiPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSJibGFjayI+U3RhbmRhcmQgUGxhbjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9ImhlYWRlciI+JDIwLDAwMC4wMDwvbGk+DQogICAgICAgICAgICA8bGk+U2lnbmFsIFBybzwvbGk+DQogICAgICAgICAgICA8bGk+U2lnbmFsIEFuYWx5c2lzPC9saT4NCiAgICAgICAgICAgIDxsaT5NaW4uSW52ZXN0bWVudDogJDIwLDAwMDwvbGk+DQogICAgICAgICAgICA8bGk+TWF4LkludmVzdG1lbnQ6ICQ0OSw5OTk8L2xpPg0KICAgICAgICAgICAgPGxpPjMlIFJlZmVycmFsIEJvbnVzPC9saT4NCiAgICAgICAgICAgIDxsaT4yNC83IEN1c3RvbWVyIENhcmU8L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSJncmV5Ij48YSBocmVmPSJEYXNoYm9hcmQvbG9naW4iIGNsYXNzPSJidXR0b24iPkdldCBTdGFydGVkPC9hPjwvbGk+DQogICAgICAgIDwvdWw+DQogICAgPC9kaXY+DQoNCiAgICA8ZGl2IGNsYXNzPSJjb2x1bW5zIj4NCiAgICAgICAgPHVsIGNsYXNzPSJwcmljZSI+DQogICAgICAgICAgICA8bGkgY2xhc3M9ImJsYWNrIj5WaXAgUGxhbjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9ImhlYWRlciI+JDUwLDAwMC4wMDwvbGk+DQogICAgICAgICAgICA8bGk+U2lnbmFsIFBybzwvbGk+DQogICAgICAgICAgICA8bGk+U2lnbmFsIEFuYWx5c2lzPC9saT4NCiAgICAgICAgICAgIDxsaT5NaW4uSW52ZXN0bWVudDogJDUwLDAwMDwvbGk+DQogICAgICAgICAgICA8bGk+TWF4LkludmVzdG1lbnQ6ICQ1MCwwMDAgQWJvdmU8L2xpPg0KICAgICAgICAgICAgPGxpPjQlIFJlZmVycmFsIEJvbnVzPC9saT4NCiAgICAgICAgICAgIDxsaT4yNC83IEN1c3RvbWVyIENhcmU8L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSJncmV5Ij48YSBocmVmPSJEYXNoYm9hcmQvbG9naW4iIGNsYXNzPSJidXR0b24iPkdldCBTdGFydGVkPC9hPjwvbGk+DQogICAgICAgIDwvdWw+DQogICAgPC9kaXY+DQogICAgPC9ib2R5Pg0KDQo8YnI+PGJyPg0KDQo8IS0tPT09PT09PT09PT09PT09PSBFeHBlcnRpc2VfYXJlYV90d28gPT09PT09PT09PT09PT09PT0tLT4NCjxzZWN0aW9uIGNsYXNzPSJleHBlcnRpc2VfYXJlYV90d28iPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb25fdGl0bGUgdGV4dC1jZW50ZXIgbWJfNjAiPg0KICAgICAgICAgICAgPGgyIGNsYXNzPSJtYl8wIHRpdGxlX2gyIj5Qcm9kdWN0czwvaDI+DQogICAgICAgICAgICA8cCBjbGFzcz0ibWJfMCB0aXRsZV9wIj5XZSBoYXZlIGFsc28gcmVmaW5lZCBvdXIgb2ZmZXJpbmcgYW5kIGludHJvZHVjZWQgcGxlbnR5IG9mIG5ldyBwcm9kdWN0cyBpbiBvdXIgYmlkIHRvIGNvbnRpbnVlIGdpdmluZyBvdXIgY3VzdG9tZXJzIHRoZSB1bHRpbWF0ZSBvbmxpbmUgdHJhZGluZyBleHBlcmllbmNlIGFuZCB0byBoZWxwIHRoZW0gb3B0aW1pemUgdGhlaXIgaW52ZXN0bWVudCBwb3J0Zm9saW8uIE5vdywgd2l0aCBvdXIgb25saW5lIG1hcmtldGVycyBhbmQgdHJhZGUgbWFuYWdlcnMgdXNpbmcgb3VyIGxvdyBjb3N0IGF1dG9tYXRlZCB0cmFkZSBzeXN0ZW0gd2hlcmUgeW91IGFyZSBndWFyYW50ZWVkIGEgZml4ZWQgcmV0dXJuIG9uIGEgd2Vla2x5IGJhc2lzPC9wPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJvdHRvbV9saW5lIj48L3NwYW4+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYgd293IGZhZGVJbkRvd24gYW5pbWF0ZWQiIGRhdGEtd293LWRlbGF5PSIwLjJzIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbV90d28gdGV4dC1jZW50ZXIiPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJpbWctZmx1aWQiIHNyYz0iaW1hZ2UvbmV3L2Fib3V0X2xhcHRvcC5wbmciIGFsdD0iIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXhwZXJ0aXNlX2NvbnRlbnQgdGV4dF90d28iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMz5Db21tb2RpdGllczwvaDM+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlNwZWN1bGF0ZSBvbiB0aGUgcHJpY2VzIG9mIGhpZ2ggcHJvZmlsZSBjb21tb2RpdGllcyBzdWNoIGFzIG9pbCBhbmQgZ29sZCwgYW5kIHByb2ZpdCBmcm9tIHRoZWlyIGdyb3d0aCx3aXRoIG9ubHkgYSBzbWFsbCBpbml0aWFsIGRlcG9zaXQ8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImV4cGVydGlzZV9jb250ZW50IGJvdHRvbV90ZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMz5Db21tb2RpdGllczwvaDM+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCBjb2wtbWQtNiB3b3cgZmFkZUluRG93biBhbmltYXRlZCIgZGF0YS13b3ctZGVsYXk9IjAuNHMiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImV4cGVydGlzZV9pdGVtX3R3byB0ZXh0LWNlbnRlciI+DQogICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImltZy1mbHVpZCIgc3JjPSJpbWFnZS9uZXcvZXhwZXJ0aXNlMi5qcGciIGFsdD0iIj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXhwZXJ0aXNlX2NvbnRlbnQgdGV4dF90d28iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMz5Gb3JleDxicj4gPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+IEdvIGxvbmcgb3IgZ28gc2hvcnQgb24gMjUgRm9yZXggbWFqb3JzLiBUYWtlIGFkdmFudGFnZSBvZiBsZXZlcmFnZSB1cCB0byAxMDAweC4gVHJhZGUgZm9yZWlnbiBjdXJyZW5jaWVzIG9uIHRoZSBsYXJnZXN0IGFuZCBtb3N0IGxpcXVpZCBtYXJrZXQgaW4gdGhlIHdvcmxkLCBtaW5vciBhbmQgZXhvdGljIGN1cnJlbmN5IHBhaXJzIHdpdGggZWZmaWNpZW50IHNwcmVhZHMsIGRldGVybWluZSB0aGUgcHJvYmFiaWxpdGllcyBvZiBmdXR1cmUgcHJpY2UgZXZlbnRzIHdpdGggdGhlIG1vc3QgZHluYW1pYyBmaW5hbmNpYWwgaW5zdHJ1bWVudC4uLjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXhwZXJ0aXNlX2NvbnRlbnQgYm90dG9tX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzPkZvcmV4PGJyPiA8L2gzPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYgd293IGZhZGVJbkRvd24gYW5pbWF0ZWQiIGRhdGEtd293LWRlbGF5PSIwLjZzIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbV90d28gdGV4dC1jZW50ZXIiPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJpbWctZmx1aWQiIHNyYz0iaW1hZ2UvbmV3L2V4cGVydGlzZTMuanBnIiBhbHQ9IiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImV4cGVydGlzZV9jb250ZW50IHRleHRfdHdvIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDM+Q3J5cHRvY3VycmVuY2llczxicj4gPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VHJhZGUgQlRDLCBFVEgsIFhSUCwgTFRDLCBhbmQgRU9TIHdpdGggMTAweCBsZXZlcmFnZSBhbmQgdGhlIGxvd2VzdCBmZWVzLi4uPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfY29udGVudCBib3R0b21fdGV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDM+Q3J5cHRvY3VycmVuY2llczxicj4gPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQo8IS0tPT09PT09PT09PT09PT09PSBFeHBlcnRpc2VfYXJlYV90d28gPT09PT09PT09PT09PT09PT0tLT4NCg0KPCEtLT09PT09PT09PT09PT09PT0gQWJvdXQgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KPHNlY3Rpb24gY2xhc3M9IiIgc3R5bGU9ImJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgjMjU0MGE1LCMyNTQwYTUsI2ZmZikiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNyBjb2wtbWQtMTIgZGlzcGxheV9mbGV4Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhYm91dF9jb250ZW50IGZsZXgiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwJTsgaGVpZ2h0OjMzNXB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkFGQUZBOyBvdmVyZmxvdzpoaWRkZW47IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IGJvcmRlcjogMXB4IHNvbGlkICM1NjY2N0Y7IGJvcmRlci1yYWRpdXM6IDRweDsgdGV4dC1hbGlnbjogcmlnaHQ7IGxpbmUtaGVpZ2h0OjE0cHg7IGJsb2NrLXNpemU6MzM1cHg7IGZvbnQtc2l6ZTogMTJweDsgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBub3JtYWw7IHRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IGJveC1zaGFkb3c6IGluc2V0IDAgLTIwcHggMCAwICM1NjY2N0Y7bWFyZ2luOiAwO3dpZHRoOiAxMDAlO3BhZGRpbmc6MXB4O3BhZGRpbmc6IDBweDsgbWFyZ2luOiAwcHg7Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9ImhlaWdodDozMTVweDsgcGFkZGluZzowcHg7IG1hcmdpbjowcHg7IHdpZHRoOiAxMDAlOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlmcmFtZSBzcmM9Imh0dHBzOi8vd2lkZ2V0LmNvaW5saWIuaW8vd2lkZ2V0P3R5cGU9Y29udmVydGVyJnRoZW1lPWxpZ2h0IiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIzMTBweCIgc2Nyb2xsaW5nPSJhdXRvIiBtYXJnaW53aWR0aD0iMCIgbWFyZ2luaGVpZ2h0PSIwIiBmcmFtZWJvcmRlcj0iMCIgYm9yZGVyPSIwIiBzdHlsZT0iYm9yZGVyOjA7bWFyZ2luOjA7cGFkZGluZzowOyI+PC9pZnJhbWU+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxoNSBzdHlsZT0iY29sb3I6YmxhY2siPkdldCBpbiB0b3VjaCB3aXRoIHRoZSBsaXZlIEN1cnJlbmN5IFByaWNlIGNvbnZlcnNpb248L2g1Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNSBjb2wtbWQtMTIiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFib3V0X2ltZyI+DQogICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZS90My5wbmciIGFsdD0iIj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCjwvc2VjdGlvbj4NCjwhLS09PT09PT09PT09PT09PT09IEFib3V0IEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCg0KPCEtLT09PT09PT09PT09PT09PT0gU2VydmljZXMgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KPHNlY3Rpb24gY2xhc3M9InNlcnZpY2VfYXJlYSI+DQogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTEyIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb25fdGl0bGUgdGV4dC1jZW50ZXIgbWJfNjAiPg0KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ibWJfMCI+T3VyIFNlcnZpY2VzIDwvaDI+DQogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJvdHRvbV9saW5lIj48L3NwYW4+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyBtdF8zMCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCBjb2wtbWQtNiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXhwZXJ0aXNlX2l0ZW0gc2VydmljZV9pdGVtIHRleHQtY2VudGVyIiBzdHlsZT0iYm9yZGVyLXJhZGl1czozMHB4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImZsYXRpY29uLW1vbmV5Ij48L2k+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJ0aXRsZV9jb2xvciI+Q3J5cHRvY3VycmVuY2llcyAoQ29pbiBPZmZlcmluZyk8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDxwPlRyYWRlIEJUQywgRVRILCBYUlAsIExUQywgYW5kIEVPUyB3aXRoIDEwMHggbGV2ZXJhZ2UgYW5kIHRoZSBsb3dlc3QgZmVlcy5BY2Nlc3MgZ2xvYmFsIGNyeXB0b2N1cnJlbmN5IG1hcmtldHMgaW4gbWludXRlcywgdHJhZGluZyB0aGUgbW9zdCBwb3B1bGFyIGNyeXB0by1hc3NldHMgYW5kIHRva2VucyB1c2luZyB0aGUgbW9zdCByb2J1c3QgdG9vbHMgb25saW5lIHRvIGdlbmVyYXRlIHByb2ZpdCBhbmQgYnVpbGQgcmV2ZW51ZSBzdHJlYW1zLiA8L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbSBzZXJ2aWNlX2l0ZW0gdGV4dC1jZW50ZXIiIHN0eWxlPSJib3JkZXItcmFkaXVzOjMwcHgiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktMSI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGl0bGVfY29sb3IiPkluZGljZXM8L2gzPg0KICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgIDxwPkFjY2VzcyB0aGUgbW9zdCBwb3B1bGFyIGluZGljZXMgc3VjaCBhcyBTJlA1MDAsIEZUU0UxMDAsIEpBUEFOLCBhbmQgbXVjaCBtb3JlLlRyYWRpbmcgc3RvY2sgaW5kZXggQ0ZEcyBvbiB1cCB0byA1MDB4IGxldmVyYWdlIGNhbiBiZSBhIHByb2ZpdGFibGUgam91cm5leSBmb3IgbmV3IGRheSB0cmFkZXJzIG9yIHByb2Zlc3Npb25hbHMgYWxpa2U8L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbSBzZXJ2aWNlX2l0ZW0gdGV4dC1jZW50ZXIiIHN0eWxlPSJib3JkZXItcmFkaXVzOjMwcHgiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktNCI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGl0bGVfY29sb3IiPkZvcmV4PC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8cD5HbyBsb25nIG9yIGdvIHNob3J0IG9uIDI1IEZvcmV4IG1ham9ycy4gVGFrZSBhZHZhbnRhZ2Ugb2YgbGV2ZXJhZ2UgdXAgdG8gMTAwMHguIFNjcm9NZWdhVHJhZGUgb2ZmZXJzIHRoZSB3b3JsZOKAmXMgbW9zdCBoaWdobHkgdHJhZGVkIGZvcmV4IGN1cnJlbmNpZXMsIGluY2x1ZGluZyBVU0QsIEdCUCwgSlBZLCBFVVIsIGFuZCBtYW55IG1vcmU8L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbSBzZXJ2aWNlX2l0ZW0gdGV4dC1jZW50ZXIiIHN0eWxlPSJib3JkZXItcmFkaXVzOjMwcHgiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktMyI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGl0bGVfY29sb3IiPkJpdGNvaW4gTWlubmluZzwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPHA+Qml0Y29pbiBtaW5pbmcgaXMgdGhlIHByb2Nlc3Mgb2YgYWRkaW5nIHRyYW5zYWN0aW9uIHJlY29yZHMgdG8gQml0Y29pbidzIHB1YmxpYyBsZWRnZXIgb2YgcGFzdCB0cmFuc2FjdGlvbnMgb3IgYmxvY2tjaGFpbi5QdXJjaGFzZSBBbnRNaW5lciBTNywgQW50TWluZXIgUzksICYgQXZhbG9uNiBhbmQgc3RhcnQgYWRkaW5nIHRyYW5zYWN0aW9ucyB0byB5b3VyIEJsb2NrY2hhaW48L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbSBzZXJ2aWNlX2l0ZW0gdGV4dC1jZW50ZXIiIHN0eWxlPSJib3JkZXItcmFkaXVzOjMwcHgiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktOCI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGl0bGVfY29sb3IiPkNyeXB0b2N1cnJlbmN5IEludmVzdGluZzwvaDM+DQogICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPHA+Q3J5cHRvY3VycmVuY2llcyBzdWNoIGFzIEJpdGNvaW4gYXJlIGRpZ2l0YWwgY3VycmVuY2llcyBjYW4gYmUgaW52ZXN0ZWQgb24gd2l0aCBhIHdlZWtseSBvciBtb250aGx5IGVhcm5pbmcgYnkgcGVyY2VudGFnZS48L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJleHBlcnRpc2VfaXRlbSBzZXJ2aWNlX2l0ZW0gdGV4dC1jZW50ZXIiIHN0eWxlPSJib3JkZXItcmFkaXVzOjMwcHgiPg0KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmxhdGljb24tbW9uZXktMiI+PC9pPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0idGl0bGVfY29sb3IiPkNvbW1vZGl0aWVzPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8cD5TcGVjdWxhdGUgb24gdGhlIHByaWNlcyBvZiBoaWdoIHByb2ZpbGUgY29tbW9kaXRpZXMgc3VjaCBhcyBvaWwgYW5kIGdvbGQsIGFuZCBwcm9maXQgZnJvbSB0aGVpciBncm93dGguQ29tbW9kaXRpZXMgaGF2ZSBiZWVuIHRyYWRlZCB0aHJvdWdob3V0IGhpc3RvcnksIGFuZCBoYXZlIGJlY29tZSBhbW9uZyB0aGUgbW9zdCBleGNpdGluZyBhbmQgcHJvZml0YWJsZSBtYXJrZXRzIHRvIHRyYWRlLiBHYWluaW5nIGV4cG9zdXJlIHRvIHZhcmlvdXMgY29tbW9kaXRpZXMgY2FuIGhlbHAgaW5kaXZpZHVhbHMgZ3JvdyB0aGVpciBjYXBpdGFsIHF1aWNrbHkgYW5kIHNhZmVseS48L3A+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQo8IS0tPT09PT09PT09PT09PT09PSBTZXJ2aWNlcyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQoNCg0KDQo8IS0tPT09PT09PT09PT09PT09PSB0ZXN0aW1vbmlhbCBBcmVhID09PT09PT09PT09PT09PT09LS0+DQo8c2VjdGlvbiBjbGFzcz0idGVzdGltb25pYWxfYXJlYSI+DQogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbl90aXRsZSBzZWNfY193aGl0ZSB0ZXh0LWNlbnRlciBtYl82MCI+DQogICAgICAgICAgICA8aDIgY2xhc3M9Im1iXzAiPldoYXQgb3VyIGN1c3RvbWVycyBzYXlzPC9oMj4NCiAgICAgICAgICAgIDxwIGNsYXNzPSJtYl8wIj5UaG91c2FuZHMgb2YgcGVvcGxlIGdldCBiZW5lZml0PC9wPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJvdHRvbV9saW5lIHdfNTAiPjwvc3Bhbj4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9InRlc3RpbW9uaWFsX3NsaWRlciBvd2wtY2Fyb3VzZWwiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGVzdGltb25pYWxfaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgd2lkdGg9IjEwJSIgY2xhc3M9ImNsaWVudHNfaW1nIiBzcmM9ImltYWdlL2Zhdi5wbmciIGFsdD0iY2xpZW50cyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImltYWdlL25ldy9xdW90ZS5wbmciIGFsdD0icXVvdGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1ib2R5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCZW5zb24gTW1ybyAgICAgICAgICAgICAgICAgICAgICAgIDwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJIGdvdCBteSBpbnZlc3RtZW50IHJpZ2h0IG9uIHRpbWUgd2lsbCBiZSBpbnZlc3RpbmcgbW9yZSBuZXh0IHRpbWUgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXN0aW1vbmlhbF9pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhLWxlZnQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyB3aWR0aD0iMTAlIiBjbGFzcz0iY2xpZW50c19pbWciIHNyYz0iaW1hZ2UvZmF2LnBuZyIgYWx0PSJjbGllbnRzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InF1b3RlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2UvbmV3L3F1b3RlLnBuZyIgYWx0PSJxdW90ZSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhLWJvZHkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGg0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1hcmlhIGFtb3IgICAgICAgICAgICAgICAgICAgICAgICA8L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSSBqdXN0IGdvdCBteSBwcm9maXQgSSB3aWxsIGludml0ZSBtb3JlIGZyaWVuZHMgYW5kIGZhbWlseSAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXN0aW1vbmlhbF9pdGVtIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhLWxlZnQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyB3aWR0aD0iMTAlIiBjbGFzcz0iY2xpZW50c19pbWciIHNyYz0iaW1hZ2UvZmF2LnBuZyIgYWx0PSJjbGllbnRzIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InF1b3RlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2UvbmV3L3F1b3RlLnBuZyIgYWx0PSJxdW90ZSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhLWJvZHkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGg0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEhhcnJpc29uIEtlbHZpbiAgICAgICAgICAgICAgICAgICAgICAgICA8L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgJDYsMjAwIHdpdGhkcmF3IHN1Y2Nlc3NmdWwgbmljZSBUcmFkaW5nIGluIHRoaXMgcGxhdGZvcm0gICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGVzdGltb25pYWxfaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgd2lkdGg9IjEwJSIgY2xhc3M9ImNsaWVudHNfaW1nIiBzcmM9ImltYWdlL2Zhdi5wbmciIGFsdD0iY2xpZW50cyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImltYWdlL25ldy9xdW90ZS5wbmciIGFsdD0icXVvdGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1ib2R5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBMdWN5IEphbWVzICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDQ+DQogICAgICAgICAgICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaGFua3MgdG8gdGhpcyBwbGF0Zm9ybSB3aXRoZHJhd2FsIGlzIHN1Y2Nlc3NmdWwgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGVzdGltb25pYWxfaXRlbSI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1sZWZ0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgd2lkdGg9IjEwJSIgY2xhc3M9ImNsaWVudHNfaW1nIiBzcmM9ImltYWdlL2Zhdi5wbmciIGFsdD0iY2xpZW50cyI+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImltYWdlL25ldy9xdW90ZS5wbmciIGFsdD0icXVvdGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYS1ib2R5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoND4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBMdWNreSBPbGl2ZSAgICAgICAgICAgICAgICAgICAgICAgICA8L2g0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgPHA+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW0gc28gaGFwcHkgaW52ZXN0aW5nIHdpdGggeW91ciBwbGF0Zm9ybSAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KPC9zZWN0aW9uPg0KPCEtLT09PT09PT09PT09PT09PT0gTGF0ZXN0IEJsb2cgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KDQoNCg0KPCEtLT09PT09PT09PT09PT09PT0gdGVzdGltb25pYWwgQXJlYSA9PT09PT09PT09PT09PT09PS0tPg0KPHNlY3Rpb24gY2xhc3M9ImdldF9tb3JlX2FyZWEiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyBnZXRfbW9yZSBnZXRfbW9yZV90d28iPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTkiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIj4NCiAgICAgICAgICAgICAgICAgICAgPGgyPlN0YXJ0IHRyYWRpbmcgPGJyPmluIG9ubHkgNCBzdGVwczwvaDI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhLWJvZHkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPlNpZ251cCwgRGVwb3NpdCBCaXRjb2luIG9yIHVzZSBhbiBhbHRlcm5hdGl2ZSBtZXRob2QgdG8gZnVuZCB5b3VyIHBlcnNvbmFsIGFjY291bnQsIFN0YXJ0IEVhcm5pbmcgYW5kIFdpdGhkcmF3PC9wPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTMgb2Zmc2V0LWxnLTAgY29sLW1kLTggb2Zmc2V0LW1kLTQgdGV4dC1yaWdodCI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iRGFzaGJvYXJkL3JlZ2lzdGVyIiBjbGFzcz0iYnRuIHRoZW1lX2J0biI+R2V0IHN0YXJ0ZWQ8L2E+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQo8IS0tPT09PT09PT09PT09PT09PSBMYXRlc3QgQmxvZyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQoNCg0KPHNlY3Rpb24+DQoNCiAgICAgICAgICAgIDxpZnJhbWUgc3JjPSJodHRwczovL3d3dy5nb29nbGUuY29tL21hcHMvZW1iZWQ/cGI9ITFtMTghMW0xMiExbTMhMWQyNjM1OTgzMi44NDI4NDkwNCEyZC0xMTMuNzI3OTUzODI2MTExNTkhM2QzNi4yNDU0OTI4NzE0MDkwNTYhMm0zITFmMCEyZjAhM2YwITNtMiExaTEwMjQhMmk3NjghNGYxMy4xITNtMyExbTIhMXMweDU0ZWFiNTg0ZTQzMjM2MGIlM0EweDFjM2JiOTkyNDNkZWI3NDIhMnNVbml0ZWQlMjBTdGF0ZXMhNWUwITNtMiExc2VuITJzbmwhNHYxNjM5NzM4NTE1MTgyITVtMiExc2VuITJzbmwiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjMwMCIgc3R5bGU9ImJvcmRlcjowOyIgYWxsb3dmdWxsc2NyZWVuPSIiIGxvYWRpbmc9ImxhenkiPjwvaWZyYW1lPg0KICAgIDwvc2VjdGlvbj4NCg0KDQo8IS0tPT09PT09PT09PT09PT09PSBMYXRlc3QgQmxvZyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQo8c2VjdGlvbiBjbGFzcz0ibGF0ZXN0X2Jsb2dfYXJlYSI+DQogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgICAgPGRpdiBjbGFzcz0ibHRfdGl0bGVfaW5mbyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uX3RpdGxlX3RocmVlIGZsb2F0LWxlZnQiPg0KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ibWJfMCI+TGF0ZXN0IE5ld3M8L2gyPg0KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJtYl8wIj4gPC9wPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmbG9hdC1yaWdodCI+DQoNCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00IGNvbC1tZC02Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsdF9ibG9nX2l0ZW0gaW1hZ2VfYmxvZyI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImJsb2ctZGV0YWlscy5odG1sIj48aW1nIHNyYz0iaW1hZ2UvbGF0ZXN0LWJsb2cvYmxvZy5qcGciIGFsdD0iIj48L2E+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImltZ19ibG9nX3RleHQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPSJtYl8wIj5TY3JvTWVnYVRyYWRlIEhRPC9oNT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibWJfMCI+U2Nyb01lZ2FUcmFkZSBwcm9mZXNzaW9uYWwgdHJhZGVycyBzdXByaXNlcyBldmVyeW9uZSB3aXRoIHRoZSBtYXNzaXZlIHByb2ZpdCBmcm9tIGJpdGNvaW46IHRoZSBDRU8gb3JkZXJzIHJlbGVhc2Ugb2YgMTAlIGJvbnVzIHRvIGN1c3RvbWVycy48L2gzPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLW1kLTYiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imx0X2Jsb2dfaXRlbSI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImJsb2ctZGV0YWlscy5odG1sIj48aW1nIHNyYz0iaW1hZ2UvbGF0ZXN0LWJsb2cvYmxvZzIuanBnIiBhbHQ9IiI+PC9hPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsdF9jb250ZW50Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0ibWJfMCI+T2N0IDE1LCAyMDE5PC9oNT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibWJfMCI+U0VDIGF3YXJkcyBTY3JvTWVnYVRyYWRlIGFzIG9uZSBvZiB0aGUgYmVzdCBUcmFkaW5nIHBsYXRmb3JtIG9mIDIwMTkgd2l0aCAyNDcgc3VwcG9ydC4uPC9oMz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy00Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYXRlc3RfbmV3cyI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNob21lIj5UYXBwZWQgaW50byB0aGUgd29ybGQncyBtYXJrZXRzIGFuZCBleHBsb3JlZCBlbmRsZXNzIHRyYWRpbmcNCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNob21lIj5vcHBvcnR1bml0aWVzIHdpdGggdGhlIHdvcmxkJ3MgYmVzdCBicm9rZXIgLSBhbGwgd2l0aCB0aWdodCBzcHJlYWRzIDwvYT4gPC9hPg0KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjaG9tZSI+TmFub3RlY2hub2xvZ3kgaW1tZXJzaW9uIGFsb25nIHRoZSBpbmZvcm1hdGlvbiBoaWdod2F5IHdpbGwgY2xvc2UgdGhlIGxvb3A8L2E+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L3NlY3Rpb24+DQo8IS0tPT09PT09PT09PT09PT09PSBMYXRlc3QgQmxvZyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQoNCjwhLS09PT09PT09PT09PT09PT09IGNsaWVudHMgbG9nbyBBcmVhID09PT09PT09PT09PT09PT09LS0+DQo8c2VjdGlvbiBjbGFzcz0iY2xpZW50c19sb2dvX2FyZWEiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9ImNsaWVudHNfc2xpZGVyIG93bC1jYXJvdXNlbCBub19iciI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJpdGVtIj4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj48aW1nIHNyYz0iaW1hZ2UvY2xpZW50cy1sb2cvbG9nbzcucG5nIiBhbHQ9IiI+PC9hPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJpdGVtIj4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj48aW1nIHNyYz0iaW1hZ2UvY2xpZW50cy1sb2cvbG9nbzEwLnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ283LnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ284LnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ281LnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ282LnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ28xLnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbSI+DQogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyI+PGltZyBzcmM9ImltYWdlL2NsaWVudHMtbG9nL2xvZ28yLnBuZyIgYWx0PSIiPjwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBjbGFzcz0iZ2V0X21vcmUgYmdfd2hpdGUiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctOCI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZS9sYXRlc3QtYmxvZy9pY29uLnBuZyIgYWx0PSIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEtYm9keSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJtYl8wIj5XYW50IHRvIGdldCBtb3JlIGRldGFpbHMgPzwvaDI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1iXzAiPlJlYWQgb3VyIHdoaXRlcGFwZXJzIG9yIHZpc2l0IG91ciA8YSBocmVmPSIjIj5ibG9nPC9hPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctNCB0ZXh0LWNlbnRlciI+DQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJyZWFkX2J0biI+UmVhZCB0aGUgd2hpdGVwYXBlcjwvYT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KPC9zZWN0aW9uPg0KPCEtLT09PT09PT09PT09PT09PT0gY2xpZW50cyBsb2dvIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCjwhLS0gQ09OVEVOVCBFTkQgLS0+DQoNCiAgPCEtLT09PT09PT09PT09PT09PT0gRm9vdGVyIEFyZWEgPT09PT09PT09PT09PT09PT0tLT4NCg0KICA8Zm9vdGVyIGNsYXNzPSJmb290ZXJfYXJlYSI+DQogICAgICA8ZGl2IGNsYXNzPSJmb290ZXJfd2lkZ2V0Ij4NCiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTMgY29sLW1kLTYgY29sLXNtLTYiPg0KICAgICAgICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0iZl93aWRnZXQgYWJvdXRfd2lkZ2V0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaG9tZSIgY2xhc3M9ImZfbG9nbyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2UvbG9nb19oZWFkZXIrZGFyay5wbmciIGFsdD0iIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3aWRnZXRfaW5uZXIgcm93IG0wIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJtYl8wIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTY3JvTWVnYVRyYWRlIGlzIGFuIGF3YXJkIHdpbm5pbmcgRm9yZXgsIENyeXB0byBhbmQgQ29tbW9kaXRpZXMgQnJva2VyLCBwcm92aWRpbmcgdHJhZGluZyBzZXJ2aWNlcyBhbmQgZmFjaWxpdGllcyB0byBib3RoIHJldGFpbCBhbmQgaW5zdGl0dXRpb25hbCBjbGllbnRzLCBsaWNlbnNlZCBhcyBhIENhdGVnb3J5IDMgSW52ZXN0bWVudCBTZXJ2aWNlIHByb3ZpZGVyIGJ5IHRoZSBGaW5hbmNpYWwgU2VydmljZXMgQXV0aG9yaXR5LjwvcD4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0ibWFpbHRvOnN1cHBvcnRAc2Nyb21lZ2F0cmFkZS5jb20iIGNsYXNzPSJlbWFpbCI+c3VwcG9ydEBzY3JvbWVnYXRyYWRlLmNvbTwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgPC9hc2lkZT4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTIgY29sLW1kLTYgY29sLXNtLTYiPg0KICAgICAgICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0iZl93aWRnZXQgbGlua193aWRnZXQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFib3V0IFVzDQogICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Imxpc3Rfc3R5bGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImFib3V0Ij5PdXIgQ29tcGFueTwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImZvcmV4Ij5Gb3JleDwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImNvbW1vZGl0aWVzIj5Db21tb2RpdGllczwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImNyeXB0byI+Q3J5cHRvPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iY29udGFjdCI+Q29udGFjdCBVczwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgIDwvYXNpZGU+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy0zIGNvbC1zbS02Ij4NCiAgICAgICAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9ImZfd2lkZ2V0IGxpbmtfd2lkZ2V0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZl90aXRsZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXaGVyZSB0byBidXkgQml0Y29pbg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJsaXN0X3N0eWxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL2x1bm8uY29tLyI+THVubzwvYT48L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vbG9jYWxiaXRjb2lucy5jb20vIj5Mb2NhbEJpdGNvaW48L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3BheGZ1bC5jb20vIj5QYXhmdWw8L2E+PC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3JlbWl0YW5vLmNvbS8iPlJlbWl0YW5vPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICAgICAgICAgICAgPC9hc2lkZT4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQgY29sLXNtLTYiPg0KICAgICAgICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0iZl93aWRnZXQgbmV3c193aWRnZXQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmX3RpdGxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5ld3NsZXR0ZXINCiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0ibWJfMCI+R2V0IGxhdGVzdCB1cGRhdGVzIGFuZCBvZmZlcnMuPC9oNT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGZvcm0gY2xhc3M9Im1haWxjaGltcCIgYWN0aW9uPSIiIG1ldGhvZD0icG9zdCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCBzdWJzY3JpYl9mb3JtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iZW1haWwiIG5hbWU9ImVtYWlsIiBjbGFzcz0iZm9ybS1jb250cm9sIG1lbWFpbCIgcGxhY2Vob2xkZXI9IkVudGVyIHlvdXIgZW1haWwiIHJlcXVpcmVkPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpbnB1dC1ncm91cC1idG4iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQgc3VibWl0X2J0bl9iIiBuYW1lPSJzdWJzY3JpYmUiIHR5cGU9InN1Ym1pdCI+PGkgY2xhc3M9ImZhIGZhLXBhcGVyLXBsYW5lIj48L2k+PC9idXR0b24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwvZm9ybT4NCg0KICAgICAgICAgICAgICAgICAgICAgIDwvYXNpZGU+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgPC9kaXY+DQogICAgICA8L2Rpdj4NCiAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlcl9jb3B5cmlnaHQgdGV4dC1jZW50ZXIiPg0KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICAgIDxwIGNsYXNzPSJtYl8wIj7CqSBDb3B5cmlnaHQgU2Nyb01lZ2FUcmFkZSAyMDI1IC4gQWxsIHJpZ2h0IHJlc2VydmVkLjwvcD4NCiAgICAgICAgICA8L2Rpdj4NCiAgICAgIDwvZGl2Pg0KDQogICAgICA8ZGl2IGNsYXNzPSJiaXRjb2luX2N1cnJlbmN5X3dpZGdldCIgb25jbGljaz0icmV0dXJuIGZhbHNlIj4NCiAgICAgICAgICA8IS0tIGlkPSJ0aWNrZXIiIC0tPg0KICAgICAgICAgIDxzY3JpcHQgc3JjPSJodHRwczovL3dpZGdldHMuY29pbmdlY2tvLmNvbS9jb2luZ2Vja28tY29pbi1wcmljZS1tYXJxdWVlLXdpZGdldC5qcyI+PC9zY3JpcHQ+DQogICAgICAgICAgPGNvaW5nZWNrby1jb2luLXByaWNlLW1hcnF1ZWUtd2lkZ2V0IGNvaW4taWRzPSJiaXRjb2luLGVvcyxldGhlcmV1bSxsaXRlY29pbixyaXBwbGUsdXNkdGV6IiBjdXJyZW5jeT0idXNkIiBiYWNrZ3JvdW5kLWNvbG9yPSIjZmZmZmZmIiBsb2NhbGU9ImVuIj48L2NvaW5nZWNrby1jb2luLXByaWNlLW1hcnF1ZWUtd2lkZ2V0Pg0KICAgICAgPC9kaXY+DQogIDwvZm9vdGVyPg0KDQogIDwhLS09PT09PT09PT09PT09PT09IEZvb3RlciBBcmVhID09PT09PT09PT09PT09PT09LS0+DQoNCiAgPCEtLSBPcHRpb25hbCBKYXZhU2NyaXB0IC0tPg0KICA8IS0tIGpRdWVyeSBmaXJzdCwgdGhlbiBQb3BwZXIuanMsIHRoZW4gQm9vdHN0cmFwIEpTIC0tPg0KICA8c2NyaXB0IHNyYz0ianMvanF1ZXJ5LTMuMi4xLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJqcy9wb3BwZXIuanMiPjwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0ianMvYm9vdHN0cmFwLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL293bC1jYXJvdXNlbC9vd2wuY2Fyb3VzZWwubWluLmpzIj48L3NjcmlwdD4NCiAgPCEtLSA8c2NyaXB0IHNyYz0idmVuZG9ycy9qcWVyeS1uaWNlLXNlbGVjdG9yL2pzL2pxdWVyeS5uaWNlLXNlbGVjdC5qcyI+PC9zY3JpcHQ+IC0tPg0KICA8c2NyaXB0IHNyYz0idmVuZG9ycy9tYWduaWZ5LXBvcHVwL2pxdWVyeS5tYWduaWZpYy1wb3B1cC5taW4uanMiPjwvc2NyaXB0Pg0KICA8IS0tIFJldiBzbGlkZXIganMgLS0+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL3Jldm9sdXRpb24vanMvanF1ZXJ5LnRoZW1lcHVuY2gudG9vbHMubWluLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdCBzcmM9InZlbmRvcnMvcmV2b2x1dGlvbi9qcy9qcXVlcnkudGhlbWVwdW5jaC5yZXZvbHV0aW9uLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL3Jldm9sdXRpb24vcGFydGljbGVzL2pzL3Jldm9sdXRpb24uYWRkb24ucGFydGljbGVzLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL3Jldm9sdXRpb24vanMvZXh0ZW5zaW9ucy9yZXZvbHV0aW9uLmV4dGVuc2lvbi5hY3Rpb25zLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL3Jldm9sdXRpb24vanMvZXh0ZW5zaW9ucy9yZXZvbHV0aW9uLmV4dGVuc2lvbi52aWRlby5taW4uanMiPjwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0idmVuZG9ycy9yZXZvbHV0aW9uL2pzL2V4dGVuc2lvbnMvcmV2b2x1dGlvbi5leHRlbnNpb24uc2xpZGVhbmltcy5taW4uanMiPjwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0idmVuZG9ycy9yZXZvbHV0aW9uL2pzL2V4dGVuc2lvbnMvcmV2b2x1dGlvbi5leHRlbnNpb24ubGF5ZXJhbmltYXRpb24ubWluLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdCBzcmM9InZlbmRvcnMvcmV2b2x1dGlvbi9qcy9leHRlbnNpb25zL3Jldm9sdXRpb24uZXh0ZW5zaW9uLm5hdmlnYXRpb24ubWluLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdCBzcmM9InZlbmRvcnMvcmV2b2x1dGlvbi9qcy9leHRlbnNpb25zL3Jldm9sdXRpb24uZXh0ZW5zaW9uLmtlbmJ1cm4ubWluLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdCBzcmM9InZlbmRvcnMvcmV2b2x1dGlvbi9qcy9leHRlbnNpb25zL3Jldm9sdXRpb24uZXh0ZW5zaW9uLnBhcmFsbGF4Lm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL2NvbnZlcnRlci1qcy9mdXNlLm1pbi5qcyI+PC9zY3JpcHQ+DQogIDxzY3JpcHQgc3JjPSJ2ZW5kb3JzL2NvbnZlcnRlci1qcy9zdHJlYW0uanMiPjwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0idmVuZG9ycy9jb252ZXJ0ZXItanMvY29udmVydGVyLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdCBzcmM9ImpzL21hcnF1ZWUuanMiPjwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0ianMvY3VzdG9tLmpzIj48L3NjcmlwdD4NCiAgPHNjcmlwdD4NCiAgICAgIHZhciB0cGogPSBqUXVlcnk7DQogICAgICB2YXIgcmV2YXBpODsNCiAgICAgIHRwaihkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKSB7DQogICAgICAgICAgaWYgKHRwaigiI3Jldl9zbGlkZXJfOF8xIikucmV2b2x1dGlvbiA9PSB1bmRlZmluZWQpIHsNCiAgICAgICAgICAgICAgcmV2c2xpZGVyX3Nob3dEb3VibGVKcXVlcnlFcnJvcigiI3Jldl9zbGlkZXJfOF8xIik7DQogICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgcmV2YXBpOCA9IHRwaigiI3Jldl9zbGlkZXJfOF8xIikuc2hvdygpLnJldm9sdXRpb24oew0KICAgICAgICAgICAgICAgICAgc2xpZGVyVHlwZTogInN0YW5kYXJkIiwNCiAgICAgICAgICAgICAgICAgIHNsaWRlckxheW91dDogImZ1bGx3aWR0aCIsDQogICAgICAgICAgICAgICAgICBkaXNhYmxlUHJvZ3Jlc3NCYXI6ICJvbiIsDQogICAgICAgICAgICAgICAgICBkb3R0ZWRPdmVybGF5OiAibm9uZSIsDQogICAgICAgICAgICAgICAgICBkZWxheTogNTAwMCwNCiAgICAgICAgICAgICAgICAgIHBhcnRpY2xlczogew0KICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0U2xpZGU6ICJmaXJzdCIsDQogICAgICAgICAgICAgICAgICAgICAgZW5kU2xpZGU6ICJsYXN0IiwNCiAgICAgICAgICAgICAgICAgICAgICB6SW5kZXg6ICIwIiwNCiAgICAgICAgICAgICAgICAgICAgICBwYXJ0aWNsZXM6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtYmVyOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogMjUwDQogICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogIiM1ZTVmNzEiDQogICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgIHNoYXBlOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAiY2lyY2xlIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAiIzM0NDQ4MCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjOiAiIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogMC4yLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFuZG9tOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbjogMC4yNSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW06IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmFibGU6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwZWVkOiAxLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHlfbWluOiAwLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bmM6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiAyLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFuZG9tOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluOiAwLjIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGVlZDogMjAsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV9taW46IDIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3luYzogZmFsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZV9saW5rZWQ6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZTogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RhbmNlOiAxMDAsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIiMzNDQ0ODAiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC40LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDINCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbW92ZTogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BlZWQ6IDEsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3Rpb246ICJyaWdodCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYW5kb206IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW5fc3BlZWQ6IDMsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJhaWdodDogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRfbW9kZTogIm91dCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgaW50ZXJhY3Rpdml0eTogew0KICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudHM6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uaG92ZXI6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmFibGU6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZTogInJlcHVsc2UiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25jbGljazogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZTogZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZTogImJ1YmJsZSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZXM6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyYWI6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0YW5jZTogNTAwLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVfbGlua2VkOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDENCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnViYmxlOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGFuY2U6IDQwMCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplOiAzMDAsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcHVsc2U6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0YW5jZTogNzANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICBuYXZpZ2F0aW9uOiB7DQogICAgICAgICAgICAgICAgICAgICAgdG91Y2g6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgdG91Y2hlbmFibGVkOiAib24iDQogICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICBhcnJvd3M6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6ICJ6ZXVzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICBoaWRlX29ubW9iaWxlOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICBoaWRlX3VuZGVyOiA3ODAsDQogICAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVfb25sZWF2ZTogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgaGlkZV9kZWxheTogMjAwLA0KICAgICAgICAgICAgICAgICAgICAgICAgICBoaWRlX2RlbGF5X21vYmlsZTogMTIwMCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgdG1wOiAnPGRpdiBjbGFzcz0idHAtdGl0bGUtd3JhcCI+ICAJPGRpdiBjbGFzcz0idHAtYXJyLWltZ2hvbGRlciI+PC9kaXY+IDwvZGl2PicsDQogICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfYWxpZ246ICJsZWZ0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZfYWxpZ246ICJjZW50ZXIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaF9vZmZzZXQ6IDE1LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdl9vZmZzZXQ6IDANCiAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfYWxpZ246ICJyaWdodCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2X2FsaWduOiAiY2VudGVyIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfb2Zmc2V0OiAxNSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZfb2Zmc2V0OiAwDQogICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgcmVzcG9uc2l2ZUxldmVsczogWzEyNDAsIDExOTksIDk5MSwgNzY3LCA1NzZdLA0KICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eUxldmVsczogWzEyNDAsIDExOTksIDk5MSwgNzY3LCA1NzZdLA0KICAgICAgICAgICAgICAgICAgZ3JpZHdpZHRoOiBbMTE3MCwgOTYwLCA3MDAsIDUwMCwgMjkwXSwNCiAgICAgICAgICAgICAgICAgIGdyaWRoZWlnaHQ6IFs4NDAsIDgwMCwgODAwLCA3MDAsIDY1MF0sDQogICAgICAgICAgICAgICAgICBsYXp5VHlwZTogIm5vbmUiLA0KICAgICAgICAgICAgICAgICAgc2hhZG93OiAwLA0KICAgICAgICAgICAgICAgICAgc3Bpbm5lcjogInNwaW5uZXIwIiwNCiAgICAgICAgICAgICAgICAgIGF1dG9IZWlnaHQ6ICJvZmYiLA0KICAgICAgICAgICAgICAgICAgZnVsbFNjcmVlbkF1dG9XaWR0aDogIm9mZiIsDQogICAgICAgICAgICAgICAgICBmdWxsU2NyZWVuQWxpZ25Gb3JjZTogIm9mZiIsDQogICAgICAgICAgICAgICAgICBmdWxsU2NyZWVuT2Zmc2V0Q29udGFpbmVyOiAiIiwNCiAgICAgICAgICAgICAgICAgIGZ1bGxTY3JlZW5PZmZzZXQ6ICI2MHB4IiwNCiAgICAgICAgICAgICAgICAgIGRpc2FibGVQcm9ncmVzc0JhcjogIm9uIiwNCiAgICAgICAgICAgICAgICAgIGhpZGVUaHVtYnNPbk1vYmlsZTogIm9mZiIsDQogICAgICAgICAgICAgICAgICBoaWRlU2xpZGVyQXRMaW1pdDogMCwNCiAgICAgICAgICAgICAgICAgIGhpZGVDYXB0aW9uQXRMaW1pdDogMCwNCiAgICAgICAgICAgICAgICAgIGhpZGVBbGxDYXB0aW9uQXRMaWxtaXQ6IDAsDQogICAgICAgICAgICAgICAgICBkZWJ1Z01vZGU6IGZhbHNlLA0KICAgICAgICAgICAgICAgICAgZmFsbGJhY2tzOiB7DQogICAgICAgICAgICAgICAgICAgICAgc2ltcGxpZnlBbGw6ICJvZmYiLA0KICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVGb2N1c0xpc3RlbmVyOiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgfSk7DQogICAgICAgICAgfQ0KICAgICAgICAgIFJzUGFydGljbGVzQWRkT24ocmV2YXBpOCk7DQogICAgICB9KTsgLypyZWFkeSovDQogIDwvc2NyaXB0Pg0KDQoNCg0KDQoNCg0KICA8IS0tIFNtYXJ0c3VwcCBMaXZlIENoYXQgc2NyaXB0IC0tPg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KdmFyIF9zbWFydHN1cHAgPSBfc21hcnRzdXBwIHx8IHt9Ow0KX3NtYXJ0c3VwcC5rZXkgPSAnZGIzMDU4MmE1M2E1MDA2YzEzYmUxNzIxYTk5NjY3NTY2YWFiZjcyZic7DQp3aW5kb3cuc21hcnRzdXBwfHwoZnVuY3Rpb24oZCkgew0KICB2YXIgcyxjLG89c21hcnRzdXBwPWZ1bmN0aW9uKCl7IG8uXy5wdXNoKGFyZ3VtZW50cyl9O28uXz1bXTsNCiAgcz1kLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzY3JpcHQnKVswXTtjPWQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7DQogIGMudHlwZT0ndGV4dC9qYXZhc2NyaXB0JztjLmNoYXJzZXQ9J3V0Zi04JztjLmFzeW5jPXRydWU7DQogIGMuc3JjPSdodHRwczovL3d3dy5zbWFydHN1cHBjaGF0LmNvbS9sb2FkZXIuanM/JztzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGMscyk7DQp9KShkb2N1bWVudCk7DQo8L3NjcmlwdD4NCjxub3NjcmlwdD4gUG93ZXJlZCBieSA8YSBocmVmPeKAnGh0dHBzOi8vd3d3LnNtYXJ0c3VwcC5jb23igJ0gdGFyZ2V0PeKAnF9ibGFua+KAnT5TbWFydHN1cHA8L2E+PC9ub3NjcmlwdD4NCg0KDQoNCiAgPHNjcmlwdD4NCiAgICAgICQoZG9jdW1lbnQpLmtleWRvd24oZnVuY3Rpb24oZXZlbnQpIHsNCiAgICAgICAgICBpZiAoZXZlbnQua2V5Q29kZSA9PSAxMjMpIHsNCiAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICAgIH0gZWxzZSBpZiAoZXZlbnQuY3RybEtleSAmJiBldmVudC5zaGlmdEtleSAmJiBldmVudC5rZXlDb2RlID09IDczKSB7DQogICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICB9DQogICAgICB9KQ0KICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY29udGV4dG1lbnUnLCBldmVudCA9PiBldmVudC5wcmV2ZW50RGVmYXVsdCgpKQ0KICA8L3NjcmlwdD4NCg0KDQogIDxkaXYgY2xhc3M9Imd0cmFuc2xhdGVfd3JhcHBlciI+PC9kaXY+DQogIDxzY3JpcHQ+DQogICAgICB3aW5kb3cuZ3RyYW5zbGF0ZVNldHRpbmdzID0gew0KICAgICAgICAgIGRlZmF1bHRfbGFuZ3VhZ2U6ICJlbiIsDQogICAgICAgICAgYWx0X2ZsYWdzOiB7DQogICAgICAgICAgICAgICJlbiI6ICJ1c2EiDQogICAgICAgICAgfSwNCiAgICAgICAgICB3cmFwcGVyX3NlbGVjdG9yOiAiLmd0cmFuc2xhdGVfd3JhcHBlciIsDQogICAgICAgICAgZmxhZ19zdHlsZTogIjNkIiwNCiAgICAgIH07DQogIDwvc2NyaXB0Pg0KICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG4uZ3RyYW5zbGF0ZS5uZXQvd2lkZ2V0cy9sYXRlc3QvZmxvYXQuanMiIGRlZmVyPjwvc2NyaXB0Pg0KDQoNCiAgPC9ib2R5Pg0KDQogIDwvaHRtbD4="}},"time_used":7437,"timings":{"blocked":-1,"dns":1602,"connect":955,"send":0,"wait":2855,"receive":169,"ssl":1856},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css","fqdn":"cdnjs.cloudflare.com","domain":"cloudflare.com","tld":"com"},"ip":{"addr":"104.17.25.14","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.270Z","timestamp":1785143908270,"http_version":"HTTP/3","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":"cdnjs.cloudflare.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Fri, 10 Jul 2026 07:07:58 GMT","end":"Thu, 08 Oct 2026 08:07:45 GMT"},"fingerprint":{"sha1":"DF:66:97:F5:13:A2:C0:81:D3:5B:60:C4:B0:7F:CD:78:F5:91:14:D5","sha256":"3C:F2:95:73:83:BA:4D:D9:CC:85:8F:BC:7D:2C:22:CF:F3:49:9A:3A:E4:1D:FC:AE:CB:07:3D:66:89:74:0E:C5"}}},"request":{"raw":"GET /ajax/libs/animate.css/4.1.1/animate.min.css HTTP/1.1\r\nHost: cdnjs.cloudflare.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-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://scromegatrade.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":"HTTP/3 200 \r\ndate: Mon, 27 Jul 2026 09:18:28 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 4216\r\ncf-cache-status: BYPASS\r\naccess-control-allow-origin: *\r\ncache-control: no-transform, public, s-maxage=30672000, max-age=30672000, immutable\r\ncontent-encoding: br\r\nlast-modified: Mon, 07 Sep 2020 12:33:38 GMT\r\nvary: Accept-Encoding\r\nx-cdnjs-cache: HIT\r\ncross-origin-resource-policy: cross-origin\r\ntiming-allow-origin: *\r\nx-content-type-options: nosniff\r\ncf-cdnjs-via: cfworker/r2\r\nstrict-transport-security: max-age=15780000\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=s1trGCFWrmV%2Bx1XsYhODIIZ1FRM0k2cvgsavajV4Sjv4hNdmomOa3bmCQYyzoZc0WdsTum4vQEaXvQxgZk%2BcFf%2F0j6k5up75MYHi8jxnyhDg%2BtRnVm9LzoOhpYeLH2ofyKP4XpYc\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.01,\"max_age\":604800}\r\npriority: u=2,i=?0\r\nserver: cloudflare\r\ncf-ray: a21a8e92de481525-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\nserver-timing: cfExtPri\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"]},{"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":71750,"size_decoded":5208,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (65348)","md5":"c0be8e53226ac34833fd9b5dbc01ebc5","sha1":"b81ef1b22de26af8a7a4656f565fbc91a69d7518","sha256":"5fbaeb9f8e25d7e0143bae61d4b1802c16ce7390b96ceb2d498b0d96ff4c853f","sha512":"738daa4d2c3fc0f677ff92c1cc3f81c397fb6d2176a31a2eeb011bf88fe5a9e68a57914321f32fbd1a7bef6cb88dc24b2ae1943a96c931d83f053979d1f25803","ssdeep":"1536:h6uNQ3fdPwwanleMf72yMPkZ8PFwh1nAukdDO3Xyr5Ir5eh0dTo:AkZgwh1nAukdDO3Xyr5Ir5eh0dTo","tlshash":"a66329ae4891128990230f6787cd5ea84b3dc6a355721cee33552c0b8b46fee73de617","first_seen":"2023-04-05T05:17:37Z","last_seen":"2026-08-11T07:53:48.245302Z","times_seen":32511,"resource_available":false,"data":"QGNoYXJzZXQgIlVURi04IjsvKiEKICogYW5pbWF0ZS5jc3MgLSBodHRwczovL2FuaW1hdGUuc3R5bGUvCiAqIFZlcnNpb24gLSA0LjEuMQogKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgLSBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUCiAqCiAqIENvcHlyaWdodCAoYykgMjAyMCBBbmltYXRlLmNzcwogKi86cm9vdHstLWFuaW1hdGUtZHVyYXRpb246MXM7LS1hbmltYXRlLWRlbGF5OjFzOy0tYW5pbWF0ZS1yZXBlYXQ6MX0uYW5pbWF0ZV9fYW5pbWF0ZWR7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246MXM7YW5pbWF0aW9uLWR1cmF0aW9uOjFzOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOnZhcigtLWFuaW1hdGUtZHVyYXRpb24pO2FuaW1hdGlvbi1kdXJhdGlvbjp2YXIoLS1hbmltYXRlLWR1cmF0aW9uKTstd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6Ym90aDthbmltYXRpb24tZmlsbC1tb2RlOmJvdGh9LmFuaW1hdGVfX2FuaW1hdGVkLmFuaW1hdGVfX2luZmluaXRley13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlfS5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19yZXBlYXQtMXstd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OjE7LXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OnZhcigtLWFuaW1hdGUtcmVwZWF0KTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OnZhcigtLWFuaW1hdGUtcmVwZWF0KX0uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fcmVwZWF0LTJ7LXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OjI7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDoyOy13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDpjYWxjKHZhcigtLWFuaW1hdGUtcmVwZWF0KSoyKTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmNhbGModmFyKC0tYW5pbWF0ZS1yZXBlYXQpKjIpfS5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19yZXBlYXQtM3std2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MzthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OjM7LXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmNhbGModmFyKC0tYW5pbWF0ZS1yZXBlYXQpKjMpO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6Y2FsYyh2YXIoLS1hbmltYXRlLXJlcGVhdCkqMyl9LmFuaW1hdGVfX2FuaW1hdGVkLmFuaW1hdGVfX2RlbGF5LTFzey13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OjFzO2FuaW1hdGlvbi1kZWxheToxczstd2Via2l0LWFuaW1hdGlvbi1kZWxheTp2YXIoLS1hbmltYXRlLWRlbGF5KTthbmltYXRpb24tZGVsYXk6dmFyKC0tYW5pbWF0ZS1kZWxheSl9LmFuaW1hdGVfX2FuaW1hdGVkLmFuaW1hdGVfX2RlbGF5LTJzey13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OjJzO2FuaW1hdGlvbi1kZWxheToyczstd2Via2l0LWFuaW1hdGlvbi1kZWxheTpjYWxjKHZhcigtLWFuaW1hdGUtZGVsYXkpKjIpO2FuaW1hdGlvbi1kZWxheTpjYWxjKHZhcigtLWFuaW1hdGUtZGVsYXkpKjIpfS5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19kZWxheS0zc3std2Via2l0LWFuaW1hdGlvbi1kZWxheTozczthbmltYXRpb24tZGVsYXk6M3M7LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6Y2FsYyh2YXIoLS1hbmltYXRlLWRlbGF5KSozKTthbmltYXRpb24tZGVsYXk6Y2FsYyh2YXIoLS1hbmltYXRlLWRlbGF5KSozKX0uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fZGVsYXktNHN7LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6NHM7YW5pbWF0aW9uLWRlbGF5OjRzOy13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OmNhbGModmFyKC0tYW5pbWF0ZS1kZWxheSkqNCk7YW5pbWF0aW9uLWRlbGF5OmNhbGModmFyKC0tYW5pbWF0ZS1kZWxheSkqNCl9LmFuaW1hdGVfX2FuaW1hdGVkLmFuaW1hdGVfX2RlbGF5LTVzey13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OjVzO2FuaW1hdGlvbi1kZWxheTo1czstd2Via2l0LWFuaW1hdGlvbi1kZWxheTpjYWxjKHZhcigtLWFuaW1hdGUtZGVsYXkpKjUpO2FuaW1hdGlvbi1kZWxheTpjYWxjKHZhcigtLWFuaW1hdGUtZGVsYXkpKjUpfS5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19mYXN0ZXJ7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246LjVzO2FuaW1hdGlvbi1kdXJhdGlvbjouNXM7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246Y2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKS8yKTthbmltYXRpb24tZHVyYXRpb246Y2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKS8yKX0uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fZmFzdHstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjouOHM7YW5pbWF0aW9uLWR1cmF0aW9uOi44czstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjpjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pKjAuOCk7YW5pbWF0aW9uLWR1cmF0aW9uOmNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikqMC44KX0uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fc2xvd3std2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjoyczthbmltYXRpb24tZHVyYXRpb246MnM7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246Y2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSoyKTthbmltYXRpb24tZHVyYXRpb246Y2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSoyKX0uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fc2xvd2Vyey13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOjNzO2FuaW1hdGlvbi1kdXJhdGlvbjozczstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjpjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pKjMpO2FuaW1hdGlvbi1kdXJhdGlvbjpjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pKjMpfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2UpLHByaW50ey5hbmltYXRlX19hbmltYXRlZHstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjoxbXMhaW1wb3J0YW50O2FuaW1hdGlvbi1kdXJhdGlvbjoxbXMhaW1wb3J0YW50Oy13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjoxbXMhaW1wb3J0YW50O3RyYW5zaXRpb24tZHVyYXRpb246MW1zIWltcG9ydGFudDstd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MSFpbXBvcnRhbnQ7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDoxIWltcG9ydGFudH0uYW5pbWF0ZV9fYW5pbWF0ZWRbY2xhc3MqPU91dF17b3BhY2l0eTowfX1ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlezAlLDIwJSw1MyUsdG97LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX00MCUsNDMley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjc1NSwuMDUsLjg1NSwuMDYpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC43NTUsLjA1LC44NTUsLjA2KTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0zMHB4LDApIHNjYWxlWSgxLjEpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0zMHB4LDApIHNjYWxlWSgxLjEpfTcwJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC43NTUsLjA1LC44NTUsLjA2KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNzU1LC4wNSwuODU1LC4wNik7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTVweCwwKSBzY2FsZVkoMS4wNSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTE1cHgsMCkgc2NhbGVZKDEuMDUpfTgwJXstd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGVZKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGVZKC45NSl9OTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTRweCwwKSBzY2FsZVkoMS4wMik7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTRweCwwKSBzY2FsZVkoMS4wMil9fUBrZXlmcmFtZXMgYm91bmNlezAlLDIwJSw1MyUsdG97LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX00MCUsNDMley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjc1NSwuMDUsLjg1NSwuMDYpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC43NTUsLjA1LC44NTUsLjA2KTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0zMHB4LDApIHNjYWxlWSgxLjEpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0zMHB4LDApIHNjYWxlWSgxLjEpfTcwJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC43NTUsLjA1LC44NTUsLjA2KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNzU1LC4wNSwuODU1LC4wNik7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTVweCwwKSBzY2FsZVkoMS4wNSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTE1cHgsMCkgc2NhbGVZKDEuMDUpfTgwJXstd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGVZKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGVZKC45NSl9OTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTRweCwwKSBzY2FsZVkoMS4wMik7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTRweCwwKSBzY2FsZVkoMS4wMil9fS5hbmltYXRlX19ib3VuY2V7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpib3VuY2U7YW5pbWF0aW9uLW5hbWU6Ym91bmNlOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGJvdHRvbX1ALXdlYmtpdC1rZXlmcmFtZXMgZmxhc2h7MCUsNTAlLHRve29wYWNpdHk6MX0yNSUsNzUle29wYWNpdHk6MH19QGtleWZyYW1lcyBmbGFzaHswJSw1MCUsdG97b3BhY2l0eToxfTI1JSw3NSV7b3BhY2l0eTowfX0uYW5pbWF0ZV9fZmxhc2h7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmbGFzaDthbmltYXRpb24tbmFtZTpmbGFzaH1ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2V7MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSl9NTAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4wNSwxLjA1LDEuMDUpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMDUsMS4wNSwxLjA1KX10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtOnNjYWxlWCgxKX19QGtleWZyYW1lcyBwdWxzZXswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtOnNjYWxlWCgxKX01MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLjA1LDEuMDUsMS4wNSk7dHJhbnNmb3JtOnNjYWxlM2QoMS4wNSwxLjA1LDEuMDUpfXRvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm06c2NhbGVYKDEpfX0uYW5pbWF0ZV9fcHVsc2V7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpwdWxzZTthbmltYXRpb24tbmFtZTpwdWxzZTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbi1vdXQ7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluLW91dH1ALXdlYmtpdC1rZXlmcmFtZXMgcnViYmVyQmFuZHswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtOnNjYWxlWCgxKX0zMCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLjI1LC43NSwxKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjI1LC43NSwxKX00MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguNzUsMS4yNSwxKTt0cmFuc2Zvcm06c2NhbGUzZCguNzUsMS4yNSwxKX01MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLjE1LC44NSwxKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjE1LC44NSwxKX02NSV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguOTUsMS4wNSwxKTt0cmFuc2Zvcm06c2NhbGUzZCguOTUsMS4wNSwxKX03NSV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLjA1LC45NSwxKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjA1LC45NSwxKX10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtOnNjYWxlWCgxKX19QGtleWZyYW1lcyBydWJiZXJCYW5kezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm06c2NhbGVYKDEpfTMwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEuMjUsLjc1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMjUsLjc1LDEpfTQwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC43NSwxLjI1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKC43NSwxLjI1LDEpfTUwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEuMTUsLjg1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMTUsLjg1LDEpfTY1JXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC45NSwxLjA1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKC45NSwxLjA1LDEpfTc1JXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEuMDUsLjk1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMDUsLjk1LDEpfXRvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm06c2NhbGVYKDEpfX0uYW5pbWF0ZV9fcnViYmVyQmFuZHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnJ1YmJlckJhbmQ7YW5pbWF0aW9uLW5hbWU6cnViYmVyQmFuZH1ALXdlYmtpdC1rZXlmcmFtZXMgc2hha2VYezAlLHRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9MTAlLDMwJSw1MCUsNzAlLDkwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTBweCwwLDApfTIwJSw0MCUsNjAlLDgwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwcHgsMCwwKX19QGtleWZyYW1lcyBzaGFrZVh7MCUsdG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0xMCUsMzAlLDUwJSw3MCUsOTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMHB4LDAsMCl9MjAlLDQwJSw2MCUsODAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTBweCwwLDApfX0uYW5pbWF0ZV9fc2hha2VYey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6c2hha2VYO2FuaW1hdGlvbi1uYW1lOnNoYWtlWH1ALXdlYmtpdC1rZXlmcmFtZXMgc2hha2VZezAlLHRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9MTAlLDMwJSw1MCUsNzAlLDkwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMHB4LDApfTIwJSw0MCUsNjAlLDgwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTBweCwwKX19QGtleWZyYW1lcyBzaGFrZVl7MCUsdG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0xMCUsMzAlLDUwJSw3MCUsOTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwcHgsMCl9MjAlLDQwJSw2MCUsODAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMHB4LDApfX0uYW5pbWF0ZV9fc2hha2VZey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6c2hha2VZO2FuaW1hdGlvbi1uYW1lOnNoYWtlWX1ALXdlYmtpdC1rZXlmcmFtZXMgaGVhZFNoYWtlezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9Ni41JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpfTE4LjUley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKX0zMS41JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpfTQzLjUley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKX01MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX19QGtleWZyYW1lcyBoZWFkU2hha2V7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX02LjUley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyl9MTguNSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCg1cHgpIHJvdGF0ZVkoN2RlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpfTMxLjUley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyl9NDMuNSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpfTUwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfX0uYW5pbWF0ZV9faGVhZFNoYWtley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluLW91dDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0Oy13ZWJraXQtYW5pbWF0aW9uLW5hbWU6aGVhZFNoYWtlO2FuaW1hdGlvbi1uYW1lOmhlYWRTaGFrZX1ALXdlYmtpdC1rZXlmcmFtZXMgc3dpbmd7MjAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgxNWRlZyl9NDAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMTBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoLTEwZGVnKX02MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNWRlZyl9ODAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9fUBrZXlmcmFtZXMgc3dpbmd7MjAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgxNWRlZyl9NDAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMTBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoLTEwZGVnKX02MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNWRlZyl9ODAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9fS5hbmltYXRlX19zd2luZ3std2Via2l0LXRyYW5zZm9ybS1vcmlnaW46dG9wIGNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOnRvcCBjZW50ZXI7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpzd2luZzthbmltYXRpb24tbmFtZTpzd2luZ31ALXdlYmtpdC1rZXlmcmFtZXMgdGFkYXswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtOnNjYWxlWCgxKX0xMCUsMjAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjksLjksLjkpIHJvdGF0ZSgtM2RlZyk7dHJhbnNmb3JtOnNjYWxlM2QoLjksLjksLjkpIHJvdGF0ZSgtM2RlZyl9MzAlLDUwJSw3MCUsOTAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpIHJvdGF0ZSgzZGVnKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSkgcm90YXRlKDNkZWcpfTQwJSw2MCUsODAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpIHJvdGF0ZSgtM2RlZyk7dHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpIHJvdGF0ZSgtM2RlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSl9fUBrZXlmcmFtZXMgdGFkYXswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtOnNjYWxlWCgxKX0xMCUsMjAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjksLjksLjkpIHJvdGF0ZSgtM2RlZyk7dHJhbnNmb3JtOnNjYWxlM2QoLjksLjksLjkpIHJvdGF0ZSgtM2RlZyl9MzAlLDUwJSw3MCUsOTAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpIHJvdGF0ZSgzZGVnKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSkgcm90YXRlKDNkZWcpfTQwJSw2MCUsODAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpIHJvdGF0ZSgtM2RlZyk7dHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpIHJvdGF0ZSgtM2RlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSl9fS5hbmltYXRlX190YWRhey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6dGFkYTthbmltYXRpb24tbmFtZTp0YWRhfUAtd2Via2l0LWtleWZyYW1lcyB3b2JibGV7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0xNSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTI1JSwwLDApIHJvdGF0ZSgtNWRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yNSUsMCwwKSByb3RhdGUoLTVkZWcpfTMwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMCUsMCwwKSByb3RhdGUoM2RlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwJSwwLDApIHJvdGF0ZSgzZGVnKX00NSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTE1JSwwLDApIHJvdGF0ZSgtM2RlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xNSUsMCwwKSByb3RhdGUoLTNkZWcpfTYwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMCUsMCwwKSByb3RhdGUoMmRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwJSwwLDApIHJvdGF0ZSgyZGVnKX03NSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTUlLDAsMCkgcm90YXRlKC0xZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTUlLDAsMCkgcm90YXRlKC0xZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIHdvYmJsZXswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfTE1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjUlLDAsMCkgcm90YXRlKC01ZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTI1JSwwLDApIHJvdGF0ZSgtNWRlZyl9MzAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwJSwwLDApIHJvdGF0ZSgzZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjAlLDAsMCkgcm90YXRlKDNkZWcpfTQ1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTUlLDAsMCkgcm90YXRlKC0zZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTE1JSwwLDApIHJvdGF0ZSgtM2RlZyl9NjAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwJSwwLDApIHJvdGF0ZSgyZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAlLDAsMCkgcm90YXRlKDJkZWcpfTc1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNSUsMCwwKSByb3RhdGUoLTFkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNSUsMCwwKSByb3RhdGUoLTFkZWcpfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5hbmltYXRlX193b2JibGV7LXdlYmtpdC1hbmltYXRpb24tbmFtZTp3b2JibGU7YW5pbWF0aW9uLW5hbWU6d29iYmxlfUAtd2Via2l0LWtleWZyYW1lcyBqZWxsb3swJSwxMS4xJSx0b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfTIyLjIley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7dHJhbnNmb3JtOnNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyl9MzMuMyV7LXdlYmtpdC10cmFuc2Zvcm06c2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7dHJhbnNmb3JtOnNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpfTQ0LjQley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTt0cmFuc2Zvcm06c2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpfTU1LjUley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTt0cmFuc2Zvcm06c2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpfTY2LjYley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKC0uNzgxMjVkZWcpIHNrZXdZKC0uNzgxMjVkZWcpO3RyYW5zZm9ybTpza2V3WCgtLjc4MTI1ZGVnKSBza2V3WSgtLjc4MTI1ZGVnKX03Ny43JXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCguMzkwNjI1ZGVnKSBza2V3WSguMzkwNjI1ZGVnKTt0cmFuc2Zvcm06c2tld1goLjM5MDYyNWRlZykgc2tld1koLjM5MDYyNWRlZyl9ODguOCV7LXdlYmtpdC10cmFuc2Zvcm06c2tld1goLS4xOTUzMTI1ZGVnKSBza2V3WSgtLjE5NTMxMjVkZWcpO3RyYW5zZm9ybTpza2V3WCgtLjE5NTMxMjVkZWcpIHNrZXdZKC0uMTk1MzEyNWRlZyl9fUBrZXlmcmFtZXMgamVsbG97MCUsMTEuMSUsdG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0yMi4yJXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO3RyYW5zZm9ybTpza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpfTMzLjMley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO3RyYW5zZm9ybTpza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKX00NC40JXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7dHJhbnNmb3JtOnNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKX01NS41JXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7dHJhbnNmb3JtOnNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKX02Ni42JXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCgtLjc4MTI1ZGVnKSBza2V3WSgtLjc4MTI1ZGVnKTt0cmFuc2Zvcm06c2tld1goLS43ODEyNWRlZykgc2tld1koLS43ODEyNWRlZyl9NzcuNyV7LXdlYmtpdC10cmFuc2Zvcm06c2tld1goLjM5MDYyNWRlZykgc2tld1koLjM5MDYyNWRlZyk7dHJhbnNmb3JtOnNrZXdYKC4zOTA2MjVkZWcpIHNrZXdZKC4zOTA2MjVkZWcpfTg4Ljgley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKC0uMTk1MzEyNWRlZykgc2tld1koLS4xOTUzMTI1ZGVnKTt0cmFuc2Zvcm06c2tld1goLS4xOTUzMTI1ZGVnKSBza2V3WSgtLjE5NTMxMjVkZWcpfX0uYW5pbWF0ZV9famVsbG97LXdlYmtpdC1hbmltYXRpb24tbmFtZTpqZWxsbzthbmltYXRpb24tbmFtZTpqZWxsbzstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyfUAtd2Via2l0LWtleWZyYW1lcyBoZWFydEJlYXR7MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfTE0JXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjMpO3RyYW5zZm9ybTpzY2FsZSgxLjMpfTI4JXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSl9NDIley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuMyk7dHJhbnNmb3JtOnNjYWxlKDEuMyl9NzAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX19QGtleWZyYW1lcyBoZWFydEJlYXR7MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfTE0JXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjMpO3RyYW5zZm9ybTpzY2FsZSgxLjMpfTI4JXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSl9NDIley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuMyk7dHJhbnNmb3JtOnNjYWxlKDEuMyl9NzAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX19LmFuaW1hdGVfX2hlYXJ0QmVhdHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmhlYXJ0QmVhdDthbmltYXRpb24tbmFtZTpoZWFydEJlYXQ7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246MS4zczthbmltYXRpb24tZHVyYXRpb246MS4zczstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjpjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pKjEuMyk7YW5pbWF0aW9uLWR1cmF0aW9uOmNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikqMS4zKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbi1vdXQ7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluLW91dH1ALXdlYmtpdC1rZXlmcmFtZXMgYmFja0luRG93bnswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMjAwcHgpIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTIwMHB4KSBzY2FsZSguNyk7b3BhY2l0eTouN304MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSguNyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoLjcpO29wYWNpdHk6Ljd9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpO29wYWNpdHk6MX19QGtleWZyYW1lcyBiYWNrSW5Eb3duezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEyMDBweCkgc2NhbGUoLjcpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMjAwcHgpIHNjYWxlKC43KTtvcGFjaXR5Oi43fTgwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSguNyk7b3BhY2l0eTouN310b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfX0uYW5pbWF0ZV9fYmFja0luRG93bnstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmJhY2tJbkRvd247YW5pbWF0aW9uLW5hbWU6YmFja0luRG93bn1ALXdlYmtpdC1rZXlmcmFtZXMgYmFja0luTGVmdHswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAwcHgpIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSguNyk7b3BhY2l0eTouN304MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKSBzY2FsZSguNyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCkgc2NhbGUoLjcpO29wYWNpdHk6Ljd9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpO29wYWNpdHk6MX19QGtleWZyYW1lcyBiYWNrSW5MZWZ0ezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTIwMDBweCkgc2NhbGUoLjcpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAwcHgpIHNjYWxlKC43KTtvcGFjaXR5Oi43fTgwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKSBzY2FsZSguNyk7b3BhY2l0eTouN310b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfX0uYW5pbWF0ZV9fYmFja0luTGVmdHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmJhY2tJbkxlZnQ7YW5pbWF0aW9uLW5hbWU6YmFja0luTGVmdH1ALXdlYmtpdC1rZXlmcmFtZXMgYmFja0luUmlnaHR7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgyMDAwcHgpIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgyMDAwcHgpIHNjYWxlKC43KTtvcGFjaXR5Oi43fTgwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKSBzY2FsZSguNyk7b3BhY2l0eTouN310b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGJhY2tJblJpZ2h0ezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjAwMHB4KSBzY2FsZSguNyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjAwMHB4KSBzY2FsZSguNyk7b3BhY2l0eTouN304MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKSBzY2FsZSguNyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCkgc2NhbGUoLjcpO29wYWNpdHk6Ljd9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpO29wYWNpdHk6MX19LmFuaW1hdGVfX2JhY2tJblJpZ2h0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6YmFja0luUmlnaHQ7YW5pbWF0aW9uLW5hbWU6YmFja0luUmlnaHR9QC13ZWJraXQta2V5ZnJhbWVzIGJhY2tJblVwezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTIwMHB4KSBzY2FsZSguNyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTIwMHB4KSBzY2FsZSguNyk7b3BhY2l0eTouN304MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSguNyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoLjcpO29wYWNpdHk6Ljd9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpO29wYWNpdHk6MX19QGtleWZyYW1lcyBiYWNrSW5VcHswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDEyMDBweCkgc2NhbGUoLjcpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEyMDBweCkgc2NhbGUoLjcpO29wYWNpdHk6Ljd9ODAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoLjcpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC43KTtvcGFjaXR5Oi43fXRvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKTtvcGFjaXR5OjF9fS5hbmltYXRlX19iYWNrSW5VcHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmJhY2tJblVwO2FuaW1hdGlvbi1uYW1lOmJhY2tJblVwfUAtd2Via2l0LWtleWZyYW1lcyBiYWNrT3V0RG93bnswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfTIwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSguNyk7b3BhY2l0eTouN310b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDcwMHB4KSBzY2FsZSguNyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNzAwcHgpIHNjYWxlKC43KTtvcGFjaXR5Oi43fX1Aa2V5ZnJhbWVzIGJhY2tPdXREb3duezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKTtvcGFjaXR5OjF9MjAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoLjcpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC43KTtvcGFjaXR5Oi43fXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoNzAwcHgpIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSg3MDBweCkgc2NhbGUoLjcpO29wYWNpdHk6Ljd9fS5hbmltYXRlX19iYWNrT3V0RG93bnstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmJhY2tPdXREb3duO2FuaW1hdGlvbi1uYW1lOmJhY2tPdXREb3dufUAtd2Via2l0LWtleWZyYW1lcyBiYWNrT3V0TGVmdHswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfTIwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKSBzY2FsZSguNyk7b3BhY2l0eTouN310b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAwcHgpIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSguNyk7b3BhY2l0eTouN319QGtleWZyYW1lcyBiYWNrT3V0TGVmdHswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfTIwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKSBzY2FsZSguNyk7b3BhY2l0eTouN310b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0yMDAwcHgpIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSguNyk7b3BhY2l0eTouN319LmFuaW1hdGVfX2JhY2tPdXRMZWZ0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6YmFja091dExlZnQ7YW5pbWF0aW9uLW5hbWU6YmFja091dExlZnR9QC13ZWJraXQta2V5ZnJhbWVzIGJhY2tPdXRSaWdodHswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfTIwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKSBzY2FsZSguNyk7b3BhY2l0eTouN310b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoLjcpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoLjcpO29wYWNpdHk6Ljd9fUBrZXlmcmFtZXMgYmFja091dFJpZ2h0ezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKTtvcGFjaXR5OjF9MjAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCkgc2NhbGUoLjcpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApIHNjYWxlKC43KTtvcGFjaXR5Oi43fXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjAwMHB4KSBzY2FsZSguNyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjAwMHB4KSBzY2FsZSguNyk7b3BhY2l0eTouN319LmFuaW1hdGVfX2JhY2tPdXRSaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmJhY2tPdXRSaWdodDthbmltYXRpb24tbmFtZTpiYWNrT3V0UmlnaHR9QC13ZWJraXQta2V5ZnJhbWVzIGJhY2tPdXRVcHswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfTIwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSguNyk7b3BhY2l0eTouN310b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC03MDBweCkgc2NhbGUoLjcpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC03MDBweCkgc2NhbGUoLjcpO29wYWNpdHk6Ljd9fUBrZXlmcmFtZXMgYmFja091dFVwezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKTtvcGFjaXR5OjF9MjAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoLjcpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC43KTtvcGFjaXR5Oi43fXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTcwMHB4KSBzY2FsZSguNyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTcwMHB4KSBzY2FsZSguNyk7b3BhY2l0eTouN319LmFuaW1hdGVfX2JhY2tPdXRVcHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmJhY2tPdXRVcDthbmltYXRpb24tbmFtZTpiYWNrT3V0VXB9QC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluezAlLDIwJSw0MCUsNjAlLDgwJSx0b3std2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguMywuMywuMyk7dHJhbnNmb3JtOnNjYWxlM2QoLjMsLjMsLjMpfTIwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEuMSwxLjEsMS4xKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSl9NDAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjksLjksLjkpO3RyYW5zZm9ybTpzY2FsZTNkKC45LC45LC45KX02MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4wMywxLjAzLDEuMDMpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMDMsMS4wMywxLjAzKX04MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguOTcsLjk3LC45Nyk7dHJhbnNmb3JtOnNjYWxlM2QoLjk3LC45NywuOTcpfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtOnNjYWxlWCgxKX19QGtleWZyYW1lcyBib3VuY2VJbnswJSwyMCUsNDAlLDYwJSw4MCUsdG97LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSl9MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjMsLjMsLjMpO3RyYW5zZm9ybTpzY2FsZTNkKC4zLC4zLC4zKX0yMCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSk7dHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpfTQwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC45LC45LC45KTt0cmFuc2Zvcm06c2NhbGUzZCguOSwuOSwuOSl9NjAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEuMDMsMS4wMywxLjAzKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjAzLDEuMDMsMS4wMyl9ODAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjk3LC45NywuOTcpO3RyYW5zZm9ybTpzY2FsZTNkKC45NywuOTcsLjk3KX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSl9fS5hbmltYXRlX19ib3VuY2VJbnstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjouNzVzO2FuaW1hdGlvbi1kdXJhdGlvbjouNzVzOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOmNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikqMC43NSk7YW5pbWF0aW9uLWR1cmF0aW9uOmNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikqMC43NSk7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpib3VuY2VJbjthbmltYXRpb24tbmFtZTpib3VuY2VJbn1ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5Eb3duezAlLDYwJSw3NSUsOTAlLHRvey13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpfTAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0zMDAwcHgsMCkgc2NhbGVZKDMpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0zMDAwcHgsMCkgc2NhbGVZKDMpfTYwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyNXB4LDApIHNjYWxlWSguOSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjVweCwwKSBzY2FsZVkoLjkpfTc1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMHB4LDApIHNjYWxlWSguOTUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMHB4LDApIHNjYWxlWSguOTUpfTkwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDVweCwwKSBzY2FsZVkoLjk4NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsNXB4LDApIHNjYWxlWSguOTg1KX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIGJvdW5jZUluRG93bnswJSw2MCUsNzUlLDkwJSx0b3std2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMzAwMHB4LDApIHNjYWxlWSgzKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMzAwMHB4LDApIHNjYWxlWSgzKX02MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjVweCwwKSBzY2FsZVkoLjkpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDI1cHgsMCkgc2NhbGVZKC45KX03NSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTBweCwwKSBzY2FsZVkoLjk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTBweCwwKSBzY2FsZVkoLjk1KX05MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw1cHgsMCkgc2NhbGVZKC45ODUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDVweCwwKSBzY2FsZVkoLjk4NSl9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19LmFuaW1hdGVfX2JvdW5jZUluRG93bnstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmJvdW5jZUluRG93bjthbmltYXRpb24tbmFtZTpib3VuY2VJbkRvd259QC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluTGVmdHswJSw2MCUsNzUlLDkwJSx0b3std2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTMwMDBweCwwLDApIHNjYWxlWCgzKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTMwMDBweCwwLDApIHNjYWxlWCgzKX02MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDI1cHgsMCwwKSBzY2FsZVgoMSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDI1cHgsMCwwKSBzY2FsZVgoMSl9NzUley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMHB4LDAsMCkgc2NhbGVYKC45OCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMHB4LDAsMCkgc2NhbGVYKC45OCl9OTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDVweCwwLDApIHNjYWxlWCguOTk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoNXB4LDAsMCkgc2NhbGVYKC45OTUpfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fUBrZXlmcmFtZXMgYm91bmNlSW5MZWZ0ezAlLDYwJSw3NSUsOTAlLHRvey13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpfTAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMzAwMHB4LDAsMCkgc2NhbGVYKDMpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMzAwMHB4LDAsMCkgc2NhbGVYKDMpfTYwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjVweCwwLDApIHNjYWxlWCgxKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjVweCwwLDApIHNjYWxlWCgxKX03NSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwcHgsMCwwKSBzY2FsZVgoLjk4KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwcHgsMCwwKSBzY2FsZVgoLjk4KX05MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoNXB4LDAsMCkgc2NhbGVYKC45OTUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCg1cHgsMCwwKSBzY2FsZVgoLjk5NSl9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19LmFuaW1hdGVfX2JvdW5jZUluTGVmdHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmJvdW5jZUluTGVmdDthbmltYXRpb24tbmFtZTpib3VuY2VJbkxlZnR9QC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluUmlnaHR7MCUsNjAlLDc1JSw5MCUsdG97LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSl9MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDMwMDBweCwwLDApIHNjYWxlWCgzKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMzAwMHB4LDAsMCkgc2NhbGVYKDMpfTYwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTI1cHgsMCwwKSBzY2FsZVgoMSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yNXB4LDAsMCkgc2NhbGVYKDEpfTc1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMHB4LDAsMCkgc2NhbGVYKC45OCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwcHgsMCwwKSBzY2FsZVgoLjk4KX05MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTVweCwwLDApIHNjYWxlWCguOTk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTVweCwwLDApIHNjYWxlWCguOTk1KX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIGJvdW5jZUluUmlnaHR7MCUsNjAlLDc1JSw5MCUsdG97LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSl9MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDMwMDBweCwwLDApIHNjYWxlWCgzKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMzAwMHB4LDAsMCkgc2NhbGVYKDMpfTYwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTI1cHgsMCwwKSBzY2FsZVgoMSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yNXB4LDAsMCkgc2NhbGVYKDEpfTc1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMHB4LDAsMCkgc2NhbGVYKC45OCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwcHgsMCwwKSBzY2FsZVgoLjk4KX05MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTVweCwwLDApIHNjYWxlWCguOTk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTVweCwwLDApIHNjYWxlWCguOTk1KX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX0uYW5pbWF0ZV9fYm91bmNlSW5SaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmJvdW5jZUluUmlnaHQ7YW5pbWF0aW9uLW5hbWU6Ym91bmNlSW5SaWdodH1ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5VcHswJSw2MCUsNzUlLDkwJSx0b3std2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwzMDAwcHgsMCkgc2NhbGVZKDUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDMwMDBweCwwKSBzY2FsZVkoNSl9NjAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMHB4LDApIHNjYWxlWSguOSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTIwcHgsMCkgc2NhbGVZKC45KX03NSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMHB4LDApIHNjYWxlWSguOTUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwcHgsMCkgc2NhbGVZKC45NSl9OTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTVweCwwKSBzY2FsZVkoLjk4NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTVweCwwKSBzY2FsZVkoLjk4NSl9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19QGtleWZyYW1lcyBib3VuY2VJblVwezAlLDYwJSw3NSUsOTAlLHRvey13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpfTAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDMwMDBweCwwKSBzY2FsZVkoNSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMzAwMHB4LDApIHNjYWxlWSg1KX02MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTIwcHgsMCkgc2NhbGVZKC45KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjBweCwwKSBzY2FsZVkoLjkpfTc1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwcHgsMCkgc2NhbGVZKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTBweCwwKSBzY2FsZVkoLjk1KX05MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtNXB4LDApIHNjYWxlWSguOTg1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtNXB4LDApIHNjYWxlWSguOTg1KX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX0uYW5pbWF0ZV9fYm91bmNlSW5VcHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmJvdW5jZUluVXA7YW5pbWF0aW9uLW5hbWU6Ym91bmNlSW5VcH1ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0ezIwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC45LC45LC45KTt0cmFuc2Zvcm06c2NhbGUzZCguOSwuOSwuOSl9NTAlLDU1JXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSk7dHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC4zLC4zLC4zKTt0cmFuc2Zvcm06c2NhbGUzZCguMywuMywuMyl9fUBrZXlmcmFtZXMgYm91bmNlT3V0ezIwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC45LC45LC45KTt0cmFuc2Zvcm06c2NhbGUzZCguOSwuOSwuOSl9NTAlLDU1JXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSk7dHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC4zLC4zLC4zKTt0cmFuc2Zvcm06c2NhbGUzZCguMywuMywuMyl9fS5hbmltYXRlX19ib3VuY2VPdXR7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246Ljc1czthbmltYXRpb24tZHVyYXRpb246Ljc1czstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjpjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pKjAuNzUpO2FuaW1hdGlvbi1kdXJhdGlvbjpjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pKjAuNzUpOy13ZWJraXQtYW5pbWF0aW9uLW5hbWU6Ym91bmNlT3V0O2FuaW1hdGlvbi1uYW1lOmJvdW5jZU91dH1ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0RG93bnsyMCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMHB4LDApIHNjYWxlWSguOTg1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMHB4LDApIHNjYWxlWSguOTg1KX00MCUsNDUle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMHB4LDApIHNjYWxlWSguOSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTIwcHgsMCkgc2NhbGVZKC45KX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyMDAwcHgsMCkgc2NhbGVZKDMpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDIwMDBweCwwKSBzY2FsZVkoMyl9fUBrZXlmcmFtZXMgYm91bmNlT3V0RG93bnsyMCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMHB4LDApIHNjYWxlWSguOTg1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMHB4LDApIHNjYWxlWSguOTg1KX00MCUsNDUle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMHB4LDApIHNjYWxlWSguOSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTIwcHgsMCkgc2NhbGVZKC45KX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyMDAwcHgsMCkgc2NhbGVZKDMpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDIwMDBweCwwKSBzY2FsZVkoMyl9fS5hbmltYXRlX19ib3VuY2VPdXREb3duey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6Ym91bmNlT3V0RG93bjthbmltYXRpb24tbmFtZTpib3VuY2VPdXREb3dufUAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRMZWZ0ezIwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjBweCwwLDApIHNjYWxlWCguOSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwcHgsMCwwKSBzY2FsZVgoLjkpfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjAwMHB4LDAsMCkgc2NhbGVYKDIpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjAwMHB4LDAsMCkgc2NhbGVYKDIpfX1Aa2V5ZnJhbWVzIGJvdW5jZU91dExlZnR7MjAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMHB4LDAsMCkgc2NhbGVYKC45KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjBweCwwLDApIHNjYWxlWCguOSl9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yMDAwcHgsMCwwKSBzY2FsZVgoMik7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yMDAwcHgsMCwwKSBzY2FsZVgoMil9fS5hbmltYXRlX19ib3VuY2VPdXRMZWZ0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6Ym91bmNlT3V0TGVmdDthbmltYXRpb24tbmFtZTpib3VuY2VPdXRMZWZ0fUAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRSaWdodHsyMCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yMHB4LDAsMCkgc2NhbGVYKC45KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwcHgsMCwwKSBzY2FsZVgoLjkpfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMDAwcHgsMCwwKSBzY2FsZVgoMik7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMDBweCwwLDApIHNjYWxlWCgyKX19QGtleWZyYW1lcyBib3VuY2VPdXRSaWdodHsyMCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yMHB4LDAsMCkgc2NhbGVYKC45KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwcHgsMCwwKSBzY2FsZVgoLjkpfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMDAwcHgsMCwwKSBzY2FsZVgoMik7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMDBweCwwLDApIHNjYWxlWCgyKX19LmFuaW1hdGVfX2JvdW5jZU91dFJpZ2h0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6Ym91bmNlT3V0UmlnaHQ7YW5pbWF0aW9uLW5hbWU6Ym91bmNlT3V0UmlnaHR9QC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFVwezIwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMHB4LDApIHNjYWxlWSguOTg1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTBweCwwKSBzY2FsZVkoLjk4NSl9NDAlLDQ1JXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyMHB4LDApIHNjYWxlWSguOSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjBweCwwKSBzY2FsZVkoLjkpfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMDAwcHgsMCkgc2NhbGVZKDMpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMDAwcHgsMCkgc2NhbGVZKDMpfX1Aa2V5ZnJhbWVzIGJvdW5jZU91dFVwezIwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMHB4LDApIHNjYWxlWSguOTg1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTBweCwwKSBzY2FsZVkoLjk4NSl9NDAlLDQ1JXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyMHB4LDApIHNjYWxlWSguOSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjBweCwwKSBzY2FsZVkoLjkpfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMDAwcHgsMCkgc2NhbGVZKDMpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMDAwcHgsMCkgc2NhbGVZKDMpfX0uYW5pbWF0ZV9fYm91bmNlT3V0VXB7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpib3VuY2VPdXRVcDthbmltYXRpb24tbmFtZTpib3VuY2VPdXRVcH1ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fUBrZXlmcmFtZXMgZmFkZUluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fS5hbmltYXRlX19mYWRlSW57LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmYWRlSW47YW5pbWF0aW9uLW5hbWU6ZmFkZUlufUAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIGZhZGVJbkRvd257MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5hbmltYXRlX19mYWRlSW5Eb3duey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmFkZUluRG93bjthbmltYXRpb24tbmFtZTpmYWRlSW5Eb3dufUAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duQmlnezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMDAwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTIwMDBweCwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19QGtleWZyYW1lcyBmYWRlSW5Eb3duQmlnezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMDAwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTIwMDBweCwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19LmFuaW1hdGVfX2ZhZGVJbkRvd25CaWd7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmYWRlSW5Eb3duQmlnO2FuaW1hdGlvbi1uYW1lOmZhZGVJbkRvd25CaWd9QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnR7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDAsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fUBrZXlmcmFtZXMgZmFkZUluTGVmdHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19LmFuaW1hdGVfX2ZhZGVJbkxlZnR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmYWRlSW5MZWZ0O2FuaW1hdGlvbi1uYW1lOmZhZGVJbkxlZnR9QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWd7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yMDAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwMDBweCwwLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWd7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yMDAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwMDBweCwwLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX0uYW5pbWF0ZV9fZmFkZUluTGVmdEJpZ3std2Via2l0LWFuaW1hdGlvbi1uYW1lOmZhZGVJbkxlZnRCaWc7YW5pbWF0aW9uLW5hbWU6ZmFkZUluTGVmdEJpZ31ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHR7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19LmFuaW1hdGVfX2ZhZGVJblJpZ2h0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmFkZUluUmlnaHQ7YW5pbWF0aW9uLW5hbWU6ZmFkZUluUmlnaHR9QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMDAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjAwMHB4LDAsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fUBrZXlmcmFtZXMgZmFkZUluUmlnaHRCaWd7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMDBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMDAwcHgsMCwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19LmFuaW1hdGVfX2ZhZGVJblJpZ2h0Qmlney13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmFkZUluUmlnaHRCaWc7YW5pbWF0aW9uLW5hbWU6ZmFkZUluUmlnaHRCaWd9QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblVwezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19QGtleWZyYW1lcyBmYWRlSW5VcHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5hbmltYXRlX19mYWRlSW5VcHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmZhZGVJblVwO2FuaW1hdGlvbi1uYW1lOmZhZGVJblVwfUAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcEJpZ3swJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyMDAwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjAwMHB4LDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIGZhZGVJblVwQmlnezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDIwMDBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyMDAwcHgsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5hbmltYXRlX19mYWRlSW5VcEJpZ3std2Via2l0LWFuaW1hdGlvbi1uYW1lOmZhZGVJblVwQmlnO2FuaW1hdGlvbi1uYW1lOmZhZGVJblVwQmlnfUAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Ub3BMZWZ0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwtMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsLTEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fUBrZXlmcmFtZXMgZmFkZUluVG9wTGVmdHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLC0xMDAlLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX0uYW5pbWF0ZV9fZmFkZUluVG9wTGVmdHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmZhZGVJblRvcExlZnQ7YW5pbWF0aW9uLW5hbWU6ZmFkZUluVG9wTGVmdH1ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVG9wUmlnaHR7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsLTEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fUBrZXlmcmFtZXMgZmFkZUluVG9wUmlnaHR7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsLTEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5hbmltYXRlX19mYWRlSW5Ub3BSaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmZhZGVJblRvcFJpZ2h0O2FuaW1hdGlvbi1uYW1lOmZhZGVJblRvcFJpZ2h0fUAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Cb3R0b21MZWZ0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwxMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwxMDAlLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIGZhZGVJbkJvdHRvbUxlZnR7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5hbmltYXRlX19mYWRlSW5Cb3R0b21MZWZ0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmFkZUluQm90dG9tTGVmdDthbmltYXRpb24tbmFtZTpmYWRlSW5Cb3R0b21MZWZ0fUAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Cb3R0b21SaWdodHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwxMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fUBrZXlmcmFtZXMgZmFkZUluQm90dG9tUmlnaHR7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwxMDAlLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX0uYW5pbWF0ZV9fZmFkZUluQm90dG9tUmlnaHR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmYWRlSW5Cb3R0b21SaWdodDthbmltYXRpb24tbmFtZTpmYWRlSW5Cb3R0b21SaWdodH1ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIGZhZGVPdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19LmFuaW1hdGVfX2ZhZGVPdXR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmYWRlT3V0O2FuaW1hdGlvbi1uYW1lOmZhZGVPdXR9QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCl9fUBrZXlmcmFtZXMgZmFkZU91dERvd257MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKX19LmFuaW1hdGVfX2ZhZGVPdXREb3duey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmFkZU91dERvd247YW5pbWF0aW9uLW5hbWU6ZmFkZU91dERvd259QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duQmlnezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyMDAwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjAwMHB4LDApfX1Aa2V5ZnJhbWVzIGZhZGVPdXREb3duQmlnezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyMDAwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjAwMHB4LDApfX0uYW5pbWF0ZV9fZmFkZU91dERvd25CaWd7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmYWRlT3V0RG93bkJpZzthbmltYXRpb24tbmFtZTpmYWRlT3V0RG93bkJpZ31ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApfX1Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0ezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKX19LmFuaW1hdGVfX2ZhZGVPdXRMZWZ0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmFkZU91dExlZnQ7YW5pbWF0aW9uLW5hbWU6ZmFkZU91dExlZnR9QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwMDBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjAwMHB4LDAsMCl9fUBrZXlmcmFtZXMgZmFkZU91dExlZnRCaWd7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjAwMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yMDAwcHgsMCwwKX19LmFuaW1hdGVfX2ZhZGVPdXRMZWZ0Qmlney13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmFkZU91dExlZnRCaWc7YW5pbWF0aW9uLW5hbWU6ZmFkZU91dExlZnRCaWd9QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApfX1Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApfX0uYW5pbWF0ZV9fZmFkZU91dFJpZ2h0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmFkZU91dFJpZ2h0O2FuaW1hdGlvbi1uYW1lOmZhZGVPdXRSaWdodH1ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjAwMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMDBweCwwLDApfX1Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZ3swJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMDBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMDAwcHgsMCwwKX19LmFuaW1hdGVfX2ZhZGVPdXRSaWdodEJpZ3std2Via2l0LWFuaW1hdGlvbi1uYW1lOmZhZGVPdXRSaWdodEJpZzthbmltYXRpb24tbmFtZTpmYWRlT3V0UmlnaHRCaWd9QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRVcHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9fUBrZXlmcmFtZXMgZmFkZU91dFVwezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX19LmFuaW1hdGVfX2ZhZGVPdXRVcHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmZhZGVPdXRVcDthbmltYXRpb24tbmFtZTpmYWRlT3V0VXB9QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRVcEJpZ3swJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTIwMDBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjAwMHB4LDApfX1Aa2V5ZnJhbWVzIGZhZGVPdXRVcEJpZ3swJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTIwMDBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjAwMHB4LDApfX0uYW5pbWF0ZV9fZmFkZU91dFVwQmlney13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmFkZU91dFVwQmlnO2FuaW1hdGlvbi1uYW1lOmZhZGVPdXRVcEJpZ31ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFRvcExlZnR7MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLC0xMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwtMTAwJSwwKX19QGtleWZyYW1lcyBmYWRlT3V0VG9wTGVmdHswJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLC0xMDAlLDApfX0uYW5pbWF0ZV9fZmFkZU91dFRvcExlZnR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmYWRlT3V0VG9wTGVmdDthbmltYXRpb24tbmFtZTpmYWRlT3V0VG9wTGVmdH1ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFRvcFJpZ2h0ezAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLC0xMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLC0xMDAlLDApfX1Aa2V5ZnJhbWVzIGZhZGVPdXRUb3BSaWdodHswJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwtMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwtMTAwJSwwKX19LmFuaW1hdGVfX2ZhZGVPdXRUb3BSaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmZhZGVPdXRUb3BSaWdodDthbmltYXRpb24tbmFtZTpmYWRlT3V0VG9wUmlnaHR9QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRCb3R0b21SaWdodHswJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwxMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDEwMCUsMCl9fUBrZXlmcmFtZXMgZmFkZU91dEJvdHRvbVJpZ2h0ezAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMTAwJSwwKX19LmFuaW1hdGVfX2ZhZGVPdXRCb3R0b21SaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmZhZGVPdXRCb3R0b21SaWdodDthbmltYXRpb24tbmFtZTpmYWRlT3V0Qm90dG9tUmlnaHR9QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRCb3R0b21MZWZ0ezAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwxMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwxMDAlLDApfX1Aa2V5ZnJhbWVzIGZhZGVPdXRCb3R0b21MZWZ0ezAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwxMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwxMDAlLDApfX0uYW5pbWF0ZV9fZmFkZU91dEJvdHRvbUxlZnR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmYWRlT3V0Qm90dG9tTGVmdDthbmltYXRpb24tbmFtZTpmYWRlT3V0Qm90dG9tTGVmdH1ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcHswJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgtMXR1cm4pO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgtMXR1cm4pOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2Utb3V0fTQwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoLTE5MGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZVgoMSkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgtMTkwZGVnKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1vdXQ7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dH01MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xNzBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoLTE3MGRlZyk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWlufTgwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsLjk1LC45NSkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsLjk1LC45NSkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDBkZWcpOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbn10b3std2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMGRlZyk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWlufX1Aa2V5ZnJhbWVzIGZsaXB7MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoLTF0dXJuKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoLTF0dXJuKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1vdXQ7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dH00MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xOTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoLTE5MGRlZyk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2Utb3V0O2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1vdXR9NTAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZVgoMSkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgtMTcwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xNzBkZWcpOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbn04MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LC45NSwuOTUpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LC45NSwuOTUpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgwZGVnKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW59dG97LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZVgoMSkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDBkZWcpOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbn19LmFuaW1hdGVfX2FuaW1hdGVkLmFuaW1hdGVfX2ZsaXB7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGU7YmFja2ZhY2UtdmlzaWJpbGl0eTp2aXNpYmxlOy13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmxpcDthbmltYXRpb24tbmFtZTpmbGlwfUAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5YezAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjtvcGFjaXR5OjB9NDAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC0yMGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC0yMGRlZyk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWlufTYwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDEwZGVnKTtvcGFjaXR5OjF9ODAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC01ZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTVkZWcpfXRvey13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpfX1Aa2V5ZnJhbWVzIGZsaXBJblh7MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO29wYWNpdHk6MH00MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTIwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTIwZGVnKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW59NjAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDEwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMTBkZWcpO29wYWNpdHk6MX04MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTVkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCl9fS5hbmltYXRlX19mbGlwSW5Yey13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudDtiYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50Oy13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmxpcEluWDthbmltYXRpb24tbmFtZTpmbGlwSW5YfUAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5ZezAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjtvcGFjaXR5OjB9NDAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0yMGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0yMGRlZyk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWlufTYwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgxMGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDEwZGVnKTtvcGFjaXR5OjF9ODAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC01ZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTVkZWcpfXRvey13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpfX1Aa2V5ZnJhbWVzIGZsaXBJbll7MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO29wYWNpdHk6MH00MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTIwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTIwZGVnKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW59NjAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDEwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpO29wYWNpdHk6MX04MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTVkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCl9fS5hbmltYXRlX19mbGlwSW5Zey13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudDtiYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50Oy13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmxpcEluWTthbmltYXRpb24tbmFtZTpmbGlwSW5ZfUAtd2Via2l0LWtleWZyYW1lcyBmbGlwT3V0WHswJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KX0zMCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTIwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTIwZGVnKTtvcGFjaXR5OjF9dG97LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIGZsaXBPdXRYezAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpfTMwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpO29wYWNpdHk6MX10b3std2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtvcGFjaXR5OjB9fS5hbmltYXRlX19mbGlwT3V0WHstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjouNzVzO2FuaW1hdGlvbi1kdXJhdGlvbjouNzVzOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOmNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikqMC43NSk7YW5pbWF0aW9uLWR1cmF0aW9uOmNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikqMC43NSk7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpmbGlwT3V0WDthbmltYXRpb24tbmFtZTpmbGlwT3V0WDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6dmlzaWJsZSFpbXBvcnRhbnQ7YmFja2ZhY2UtdmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudH1ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFl7MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCl9MzAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xNWRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xNWRlZyk7b3BhY2l0eToxfXRvey13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO29wYWNpdHk6MH19QGtleWZyYW1lcyBmbGlwT3V0WXswJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KX0zMCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTE1ZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTE1ZGVnKTtvcGFjaXR5OjF9dG97LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7b3BhY2l0eTowfX0uYW5pbWF0ZV9fZmxpcE91dFl7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246Ljc1czthbmltYXRpb24tZHVyYXRpb246Ljc1czstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjpjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pKjAuNzUpO2FuaW1hdGlvbi1kdXJhdGlvbjpjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pKjAuNzUpOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudDtiYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50Oy13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmxpcE91dFk7YW5pbWF0aW9uLW5hbWU6ZmxpcE91dFl9QC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRJblJpZ2h0ezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKSBza2V3WCgtMzBkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCkgc2tld1goLTMwZGVnKTtvcGFjaXR5OjB9NjAley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKDIwZGVnKTt0cmFuc2Zvcm06c2tld1goMjBkZWcpO29wYWNpdHk6MX04MCV7LXdlYmtpdC10cmFuc2Zvcm06c2tld1goLTVkZWcpO3RyYW5zZm9ybTpza2V3WCgtNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19QGtleWZyYW1lcyBsaWdodFNwZWVkSW5SaWdodHswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCkgc2tld1goLTMwZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApIHNrZXdYKC0zMGRlZyk7b3BhY2l0eTowfTYwJXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCgyMGRlZyk7dHJhbnNmb3JtOnNrZXdYKDIwZGVnKTtvcGFjaXR5OjF9ODAley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKC01ZGVnKTt0cmFuc2Zvcm06c2tld1goLTVkZWcpfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5hbmltYXRlX19saWdodFNwZWVkSW5SaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmxpZ2h0U3BlZWRJblJpZ2h0O2FuaW1hdGlvbi1uYW1lOmxpZ2h0U3BlZWRJblJpZ2h0Oy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2Utb3V0fUAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkSW5MZWZ0ezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDAsMCkgc2tld1goMzBkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApIHNrZXdYKDMwZGVnKTtvcGFjaXR5OjB9NjAley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKC0yMGRlZyk7dHJhbnNmb3JtOnNrZXdYKC0yMGRlZyk7b3BhY2l0eToxfTgwJXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCg1ZGVnKTt0cmFuc2Zvcm06c2tld1goNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19QGtleWZyYW1lcyBsaWdodFNwZWVkSW5MZWZ0ezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDAsMCkgc2tld1goMzBkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApIHNrZXdYKDMwZGVnKTtvcGFjaXR5OjB9NjAley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKC0yMGRlZyk7dHJhbnNmb3JtOnNrZXdYKC0yMGRlZyk7b3BhY2l0eToxfTgwJXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCg1ZGVnKTt0cmFuc2Zvcm06c2tld1goNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19LmFuaW1hdGVfX2xpZ2h0U3BlZWRJbkxlZnR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpsaWdodFNwZWVkSW5MZWZ0O2FuaW1hdGlvbi1uYW1lOmxpZ2h0U3BlZWRJbkxlZnQ7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2Utb3V0O2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1vdXR9QC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXRSaWdodHswJXtvcGFjaXR5OjF9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApIHNrZXdYKDMwZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApIHNrZXdYKDMwZGVnKTtvcGFjaXR5OjB9fUBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dFJpZ2h0ezAle29wYWNpdHk6MX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCkgc2tld1goMzBkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCkgc2tld1goMzBkZWcpO29wYWNpdHk6MH19LmFuaW1hdGVfX2xpZ2h0U3BlZWRPdXRSaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmxpZ2h0U3BlZWRPdXRSaWdodDthbmltYXRpb24tbmFtZTpsaWdodFNwZWVkT3V0UmlnaHQ7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWlufUAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0TGVmdHswJXtvcGFjaXR5OjF9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKSBza2V3WCgtMzBkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApIHNrZXdYKC0zMGRlZyk7b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXRMZWZ0ezAle29wYWNpdHk6MX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApIHNrZXdYKC0zMGRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDAsMCkgc2tld1goLTMwZGVnKTtvcGFjaXR5OjB9fS5hbmltYXRlX19saWdodFNwZWVkT3V0TGVmdHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmxpZ2h0U3BlZWRPdXRMZWZ0O2FuaW1hdGlvbi1uYW1lOmxpZ2h0U3BlZWRPdXRMZWZ0Oy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbn1ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW57MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC0yMDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoLTIwMGRlZyk7b3BhY2l0eTowfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIHJvdGF0ZUluezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMjAwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0yMDBkZWcpO29wYWNpdHk6MH10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO29wYWNpdHk6MX19LmFuaW1hdGVfX3JvdGF0ZUluey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6cm90YXRlSW47YW5pbWF0aW9uLW5hbWU6cm90YXRlSW47LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcn1ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdHswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7b3BhY2l0eTowfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnR7MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpO29wYWNpdHk6MH10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO29wYWNpdHk6MX19LmFuaW1hdGVfX3JvdGF0ZUluRG93bkxlZnR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpyb3RhdGVJbkRvd25MZWZ0O2FuaW1hdGlvbi1uYW1lOnJvdGF0ZUluRG93bkxlZnQ7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46bGVmdCBib3R0b219QC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0ezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7b3BhY2l0eTowfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0ezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7b3BhY2l0eTowfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfX0uYW5pbWF0ZV9fcm90YXRlSW5Eb3duUmlnaHR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpyb3RhdGVJbkRvd25SaWdodDthbmltYXRpb24tbmFtZTpyb3RhdGVJbkRvd25SaWdodDstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tfUAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwTGVmdHswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO29wYWNpdHk6MH10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO29wYWNpdHk6MX19QGtleWZyYW1lcyByb3RhdGVJblVwTGVmdHswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO29wYWNpdHk6MH10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO29wYWNpdHk6MX19LmFuaW1hdGVfX3JvdGF0ZUluVXBMZWZ0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6cm90YXRlSW5VcExlZnQ7YW5pbWF0aW9uLW5hbWU6cm90YXRlSW5VcExlZnQ7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46bGVmdCBib3R0b219QC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodHswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7b3BhY2l0eTowfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodHswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7b3BhY2l0eTowfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfX0uYW5pbWF0ZV9fcm90YXRlSW5VcFJpZ2h0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6cm90YXRlSW5VcFJpZ2h0O2FuaW1hdGlvbi1uYW1lOnJvdGF0ZUluVXBSaWdodDstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tfUAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXR7MCV7b3BhY2l0eToxfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyMDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMjAwZGVnKTtvcGFjaXR5OjB9fUBrZXlmcmFtZXMgcm90YXRlT3V0ezAle29wYWNpdHk6MX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMjAwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDIwMGRlZyk7b3BhY2l0eTowfX0uYW5pbWF0ZV9fcm90YXRlT3V0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6cm90YXRlT3V0O2FuaW1hdGlvbi1uYW1lOnJvdGF0ZU91dDstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyfUAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdHswJXtvcGFjaXR5OjF9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKTtvcGFjaXR5OjB9fUBrZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnR7MCV7b3BhY2l0eToxfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7b3BhY2l0eTowfX0uYW5pbWF0ZV9fcm90YXRlT3V0RG93bkxlZnR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpyb3RhdGVPdXREb3duTGVmdDthbmltYXRpb24tbmFtZTpyb3RhdGVPdXREb3duTGVmdDstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46bGVmdCBib3R0b207dHJhbnNmb3JtLW9yaWdpbjpsZWZ0IGJvdHRvbX1ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0ezAle29wYWNpdHk6MX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodHswJXtvcGFjaXR5OjF9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpO29wYWNpdHk6MH19LmFuaW1hdGVfX3JvdGF0ZU91dERvd25SaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnJvdGF0ZU91dERvd25SaWdodDthbmltYXRpb24tbmFtZTpyb3RhdGVPdXREb3duUmlnaHQ7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IGJvdHRvbTt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IGJvdHRvbX1ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0VXBMZWZ0ezAle29wYWNpdHk6MX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdHswJXtvcGFjaXR5OjF9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpO29wYWNpdHk6MH19LmFuaW1hdGVfX3JvdGF0ZU91dFVwTGVmdHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnJvdGF0ZU91dFVwTGVmdDthbmltYXRpb24tbmFtZTpyb3RhdGVPdXRVcExlZnQ7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46bGVmdCBib3R0b219QC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHR7MCV7b3BhY2l0eToxfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHR7MCV7b3BhY2l0eToxfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7b3BhY2l0eTowfX0uYW5pbWF0ZV9fcm90YXRlT3V0VXBSaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnJvdGF0ZU91dFVwUmlnaHQ7YW5pbWF0aW9uLW5hbWU6cm90YXRlT3V0VXBSaWdodDstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tfUAtd2Via2l0LWtleWZyYW1lcyBoaW5nZXswJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbi1vdXQ7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluLW91dH0yMCUsNjAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg4MGRlZyk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0O2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbi1vdXR9NDAlLDgwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNjBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNjBkZWcpOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluLW91dDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0O29wYWNpdHk6MX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDcwMHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDcwMHB4LDApO29wYWNpdHk6MH19QGtleWZyYW1lcyBoaW5nZXswJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbi1vdXQ7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluLW91dH0yMCUsNjAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg4MGRlZyk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0O2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbi1vdXR9NDAlLDgwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNjBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNjBkZWcpOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluLW91dDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0O29wYWNpdHk6MX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDcwMHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDcwMHB4LDApO29wYWNpdHk6MH19LmFuaW1hdGVfX2hpbmdley13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOjJzO2FuaW1hdGlvbi1kdXJhdGlvbjoyczstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjpjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pKjIpO2FuaW1hdGlvbi1kdXJhdGlvbjpjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pKjIpOy13ZWJraXQtYW5pbWF0aW9uLW5hbWU6aGluZ2U7YW5pbWF0aW9uLW5hbWU6aGluZ2U7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnR9QC13ZWJraXQta2V5ZnJhbWVzIGphY2tJblRoZUJveHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjEpIHJvdGF0ZSgzMGRlZyk7dHJhbnNmb3JtOnNjYWxlKC4xKSByb3RhdGUoMzBkZWcpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGJvdHRvbX01MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC0xMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtMTBkZWcpfTcwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoM2RlZyk7dHJhbnNmb3JtOnJvdGF0ZSgzZGVnKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfX1Aa2V5ZnJhbWVzIGphY2tJblRoZUJveHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjEpIHJvdGF0ZSgzMGRlZyk7dHJhbnNmb3JtOnNjYWxlKC4xKSByb3RhdGUoMzBkZWcpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGJvdHRvbX01MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC0xMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtMTBkZWcpfTcwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoM2RlZyk7dHJhbnNmb3JtOnJvdGF0ZSgzZGVnKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfX0uYW5pbWF0ZV9famFja0luVGhlQm94ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6amFja0luVGhlQm94O2FuaW1hdGlvbi1uYW1lOmphY2tJblRoZUJveH1ALXdlYmtpdC1rZXlmcmFtZXMgcm9sbEluezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApIHJvdGF0ZSgtMTIwZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKSByb3RhdGUoLTEyMGRlZyl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fUBrZXlmcmFtZXMgcm9sbEluezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApIHJvdGF0ZSgtMTIwZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKSByb3RhdGUoLTEyMGRlZyl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5hbmltYXRlX19yb2xsSW57LXdlYmtpdC1hbmltYXRpb24tbmFtZTpyb2xsSW47YW5pbWF0aW9uLW5hbWU6cm9sbElufUAtd2Via2l0LWtleWZyYW1lcyByb2xsT3V0ezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApIHJvdGF0ZSgxMjBkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCkgcm90YXRlKDEyMGRlZyl9fUBrZXlmcmFtZXMgcm9sbE91dHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKSByb3RhdGUoMTIwZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApIHJvdGF0ZSgxMjBkZWcpfX0uYW5pbWF0ZV9fcm9sbE91dHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnJvbGxPdXQ7YW5pbWF0aW9uLW5hbWU6cm9sbE91dH1ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC4zLC4zLC4zKTt0cmFuc2Zvcm06c2NhbGUzZCguMywuMywuMyl9NTAle29wYWNpdHk6MX19QGtleWZyYW1lcyB6b29tSW57MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjMsLjMsLjMpO3RyYW5zZm9ybTpzY2FsZTNkKC4zLC4zLC4zKX01MCV7b3BhY2l0eToxfX0uYW5pbWF0ZV9fem9vbUluey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6em9vbUluO2FuaW1hdGlvbi1uYW1lOnpvb21Jbn1ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluRG93bnswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguMSwuMSwuMSkgdHJhbnNsYXRlM2QoMCwtMTAwMHB4LDApO3RyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgwLC0xMDAwcHgsMCk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTUsLjA1NSwuNjc1LC4xOSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wNTUsLjY3NSwuMTkpfTYwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoMCw2MHB4LDApO3RyYW5zZm9ybTpzY2FsZTNkKC40NzUsLjQ3NSwuNDc1KSB0cmFuc2xhdGUzZCgwLDYwcHgsMCk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTc1LC44ODUsLjMyLDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSl9fUBrZXlmcmFtZXMgem9vbUluRG93bnswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguMSwuMSwuMSkgdHJhbnNsYXRlM2QoMCwtMTAwMHB4LDApO3RyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgwLC0xMDAwcHgsMCk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTUsLjA1NSwuNjc1LC4xOSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wNTUsLjY3NSwuMTkpfTYwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoMCw2MHB4LDApO3RyYW5zZm9ybTpzY2FsZTNkKC40NzUsLjQ3NSwuNDc1KSB0cmFuc2xhdGUzZCgwLDYwcHgsMCk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTc1LC44ODUsLjMyLDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSl9fS5hbmltYXRlX196b29tSW5Eb3duey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6em9vbUluRG93bjthbmltYXRpb24tbmFtZTp6b29tSW5Eb3dufUAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5MZWZ0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LDAsMCk7dHJhbnNmb3JtOnNjYWxlM2QoLjEsLjEsLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsMCwwKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41NSwuMDU1LC42NzUsLjE5KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTUsLjA1NSwuNjc1LC4xOSl9NjAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC40NzUsLjQ3NSwuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LDAsMCk7dHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsMCwwKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE3NSwuODg1LC4zMiwxKX19QGtleWZyYW1lcyB6b29tSW5MZWZ0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LDAsMCk7dHJhbnNmb3JtOnNjYWxlM2QoLjEsLjEsLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsMCwwKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41NSwuMDU1LC42NzUsLjE5KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTUsLjA1NSwuNjc1LC4xOSl9NjAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC40NzUsLjQ3NSwuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LDAsMCk7dHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsMCwwKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE3NSwuODg1LC4zMiwxKX19LmFuaW1hdGVfX3pvb21JbkxlZnR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTp6b29tSW5MZWZ0O2FuaW1hdGlvbi1uYW1lOnpvb21JbkxlZnR9QC13ZWJraXQta2V5ZnJhbWVzIHpvb21JblJpZ2h0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsMCwwKTt0cmFuc2Zvcm06c2NhbGUzZCguMSwuMSwuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LDAsMCk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTUsLjA1NSwuNjc1LC4xOSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wNTUsLjY3NSwuMTkpfTYwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsMCwwKTt0cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsMCwwKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE3NSwuODg1LC4zMiwxKX19QGtleWZyYW1lcyB6b29tSW5SaWdodHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguMSwuMSwuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LDAsMCk7dHJhbnNmb3JtOnNjYWxlM2QoLjEsLjEsLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwwLDApOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wNTUsLjY3NSwuMTkpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41NSwuMDU1LC42NzUsLjE5KX02MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LDAsMCk7dHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LDAsMCk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTc1LC44ODUsLjMyLDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSl9fS5hbmltYXRlX196b29tSW5SaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnpvb21JblJpZ2h0O2FuaW1hdGlvbi1uYW1lOnpvb21JblJpZ2h0fUAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5VcHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguMSwuMSwuMSkgdHJhbnNsYXRlM2QoMCwxMDAwcHgsMCk7dHJhbnNmb3JtOnNjYWxlM2QoLjEsLjEsLjEpIHRyYW5zbGF0ZTNkKDAsMTAwMHB4LDApOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wNTUsLjY3NSwuMTkpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41NSwuMDU1LC42NzUsLjE5KX02MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDAsLTYwcHgsMCk7dHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDAsLTYwcHgsMCk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTc1LC44ODUsLjMyLDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSl9fUBrZXlmcmFtZXMgem9vbUluVXB7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjEsLjEsLjEpIHRyYW5zbGF0ZTNkKDAsMTAwMHB4LDApO3RyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgwLDEwMDBweCwwKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41NSwuMDU1LC42NzUsLjE5KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTUsLjA1NSwuNjc1LC4xOSl9NjAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC40NzUsLjQ3NSwuNDc1KSB0cmFuc2xhdGUzZCgwLC02MHB4LDApO3RyYW5zZm9ybTpzY2FsZTNkKC40NzUsLjQ3NSwuNDc1KSB0cmFuc2xhdGUzZCgwLC02MHB4LDApOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE3NSwuODg1LC4zMiwxKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTc1LC44ODUsLjMyLDEpfX0uYW5pbWF0ZV9fem9vbUluVXB7LXdlYmtpdC1hbmltYXRpb24tbmFtZTp6b29tSW5VcDthbmltYXRpb24tbmFtZTp6b29tSW5VcH1ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dHswJXtvcGFjaXR5OjF9NTAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC4zLC4zLC4zKTt0cmFuc2Zvcm06c2NhbGUzZCguMywuMywuMyl9dG97b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIHpvb21PdXR7MCV7b3BhY2l0eToxfTUwJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguMywuMywuMyk7dHJhbnNmb3JtOnNjYWxlM2QoLjMsLjMsLjMpfXRve29wYWNpdHk6MH19LmFuaW1hdGVfX3pvb21PdXR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTp6b29tT3V0O2FuaW1hdGlvbi1uYW1lOnpvb21PdXR9QC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXREb3duezQwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoMCwtNjBweCwwKTt0cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoMCwtNjBweCwwKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41NSwuMDU1LC42NzUsLjE5KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTUsLjA1NSwuNjc1LC4xOSl9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjEsLjEsLjEpIHRyYW5zbGF0ZTNkKDAsMjAwMHB4LDApO3RyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgwLDIwMDBweCwwKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE3NSwuODg1LC4zMiwxKX19QGtleWZyYW1lcyB6b29tT3V0RG93bns0MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDAsLTYwcHgsMCk7dHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDAsLTYwcHgsMCk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTUsLjA1NSwuNjc1LC4xOSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wNTUsLjY3NSwuMTkpfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgwLDIwMDBweCwwKTt0cmFuc2Zvcm06c2NhbGUzZCguMSwuMSwuMSkgdHJhbnNsYXRlM2QoMCwyMDAwcHgsMCk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTc1LC44ODUsLjMyLDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSl9fS5hbmltYXRlX196b29tT3V0RG93bnstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnpvb21PdXREb3duO2FuaW1hdGlvbi1uYW1lOnpvb21PdXREb3duOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGJvdHRvbX1ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dExlZnR7NDAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC40NzUsLjQ3NSwuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LDAsMCk7dHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsMCwwKX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsMCwwKTt0cmFuc2Zvcm06c2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsMCwwKX19QGtleWZyYW1lcyB6b29tT3V0TGVmdHs0MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsMCwwKTt0cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwwLDApfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSguMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwwLDApO3RyYW5zZm9ybTpzY2FsZSguMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwwLDApfX0uYW5pbWF0ZV9fem9vbU91dExlZnR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTp6b29tT3V0TGVmdDthbmltYXRpb24tbmFtZTp6b29tT3V0TGVmdDstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46bGVmdCBjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0IGNlbnRlcn1ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFJpZ2h0ezQwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsMCwwKTt0cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsMCwwKX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwwLDApO3RyYW5zZm9ybTpzY2FsZSguMSkgdHJhbnNsYXRlM2QoMjAwMHB4LDAsMCl9fUBrZXlmcmFtZXMgem9vbU91dFJpZ2h0ezQwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsMCwwKTt0cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsMCwwKX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwwLDApO3RyYW5zZm9ybTpzY2FsZSguMSkgdHJhbnNsYXRlM2QoMjAwMHB4LDAsMCl9fS5hbmltYXRlX196b29tT3V0UmlnaHR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTp6b29tT3V0UmlnaHQ7YW5pbWF0aW9uLW5hbWU6em9vbU91dFJpZ2h0Oy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpyaWdodCBjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpyaWdodCBjZW50ZXJ9QC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRVcHs0MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDAsNjBweCwwKTt0cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoMCw2MHB4LDApOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wNTUsLjY3NSwuMTkpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41NSwuMDU1LC42NzUsLjE5KX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguMSwuMSwuMSkgdHJhbnNsYXRlM2QoMCwtMjAwMHB4LDApO3RyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgwLC0yMDAwcHgsMCk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTc1LC44ODUsLjMyLDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSl9fUBrZXlmcmFtZXMgem9vbU91dFVwezQwJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoMCw2MHB4LDApO3RyYW5zZm9ybTpzY2FsZTNkKC40NzUsLjQ3NSwuNDc1KSB0cmFuc2xhdGUzZCgwLDYwcHgsMCk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTUsLjA1NSwuNjc1LC4xOSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wNTUsLjY3NSwuMTkpfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgwLC0yMDAwcHgsMCk7dHJhbnNmb3JtOnNjYWxlM2QoLjEsLjEsLjEpIHRyYW5zbGF0ZTNkKDAsLTIwMDBweCwwKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE3NSwuODg1LC4zMiwxKX19LmFuaW1hdGVfX3pvb21PdXRVcHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnpvb21PdXRVcDthbmltYXRpb24tbmFtZTp6b29tT3V0VXA7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBib3R0b207dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tfUAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluRG93bnswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApO3Zpc2liaWxpdHk6dmlzaWJsZX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIHNsaWRlSW5Eb3duezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dmlzaWJpbGl0eTp2aXNpYmxlfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5hbmltYXRlX19zbGlkZUluRG93bnstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnNsaWRlSW5Eb3duO2FuaW1hdGlvbi1uYW1lOnNsaWRlSW5Eb3dufUAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluTGVmdHswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApO3Zpc2liaWxpdHk6dmlzaWJsZX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIHNsaWRlSW5MZWZ0ezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDAsMCk7dmlzaWJpbGl0eTp2aXNpYmxlfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5hbmltYXRlX19zbGlkZUluTGVmdHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnNsaWRlSW5MZWZ0O2FuaW1hdGlvbi1uYW1lOnNsaWRlSW5MZWZ0fUAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluUmlnaHR7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCk7dmlzaWJpbGl0eTp2aXNpYmxlfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fUBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0ezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApO3Zpc2liaWxpdHk6dmlzaWJsZX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX0uYW5pbWF0ZV9fc2xpZGVJblJpZ2h0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6c2xpZGVJblJpZ2h0O2FuaW1hdGlvbi1uYW1lOnNsaWRlSW5SaWdodH1ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblVwezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApO3Zpc2liaWxpdHk6dmlzaWJsZX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX1Aa2V5ZnJhbWVzIHNsaWRlSW5VcHswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKTt2aXNpYmlsaXR5OnZpc2libGV9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19LmFuaW1hdGVfX3NsaWRlSW5VcHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnNsaWRlSW5VcDthbmltYXRpb24tbmFtZTpzbGlkZUluVXB9QC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0RG93bnswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfXRve3Zpc2liaWxpdHk6aGlkZGVuOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApfX1Aa2V5ZnJhbWVzIHNsaWRlT3V0RG93bnswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfXRve3Zpc2liaWxpdHk6aGlkZGVuOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApfX0uYW5pbWF0ZV9fc2xpZGVPdXREb3duey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6c2xpZGVPdXREb3duO2FuaW1hdGlvbi1uYW1lOnNsaWRlT3V0RG93bn1ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRMZWZ0ezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9dG97dmlzaWJpbGl0eTpoaWRkZW47LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKX19QGtleWZyYW1lcyBzbGlkZU91dExlZnR7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX10b3t2aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApfX0uYW5pbWF0ZV9fc2xpZGVPdXRMZWZ0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6c2xpZGVPdXRMZWZ0O2FuaW1hdGlvbi1uYW1lOnNsaWRlT3V0TGVmdH1ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRSaWdodHswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfXRve3Zpc2liaWxpdHk6aGlkZGVuOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApfX1Aa2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHR7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX10b3t2aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKX19LmFuaW1hdGVfX3NsaWRlT3V0UmlnaHR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpzbGlkZU91dFJpZ2h0O2FuaW1hdGlvbi1uYW1lOnNsaWRlT3V0UmlnaHR9QC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0VXB7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX10b3t2aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApfX1Aa2V5ZnJhbWVzIHNsaWRlT3V0VXB7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX10b3t2aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApfX0uYW5pbWF0ZV9fc2xpZGVPdXRVcHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnNsaWRlT3V0VXA7YW5pbWF0aW9uLW5hbWU6c2xpZGVPdXRVcH0="}},"time_used":75,"timings":{"blocked":-1,"dns":3,"connect":17,"send":0,"wait":54,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/revolution/js/extensions/revolution.extension.kenburn.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.301Z","timestamp":1785143908301,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/revolution/js/extensions/revolution.extension.kenburn.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:44 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"d38-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 1411\r\nKeep-Alive: timeout=5, max=95\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":3384,"size_decoded":1778,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (3150), with CRLF line terminators","md5":"09ff4f0b20c38a2cacd10d60d521ec41","sha1":"ba2c33cc1e85ddf881071a0cb115cfabe0a6d430","sha256":"dd7fba62c6c7e28e1e92920f2c88268c4b0b7a1f3bdc3a30bd43bfc008c41290","sha512":"64ddfba5c1c3808e4977d897f0b16302af3adc1ee6126980adf86e68926f9c037b62c6dea8a733e19ae2fd46e7c88eeab81d82be4302eac88ae54c5fea32e14c","ssdeep":"","tlshash":"ad6141d1201a6c5e8c63e38295ef13cba2f1fd243603981d5776b6845ecc91d29bbb4d","first_seen":"2023-03-07T01:06:58Z","last_seen":"2026-08-09T08:42:12.91884Z","times_seen":314,"resource_available":true,"data":"LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogKiBSRVZPTFVUSU9OIDUuMCBFWFRFTlNJT04gLSBLRU4gQlVSTg0KICogQHZlcnNpb246IDEuMiAoMi4xMS4yMDE2KQ0KICogQHJlcXVpcmVzIGpxdWVyeS50aGVtZXB1bmNoLnJldm9sdXRpb24uanMNCiAqIEBhdXRob3IgVGhlbWVQdW5jaA0KKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KIWZ1bmN0aW9uKGEpeyJ1c2Ugc3RyaWN0Ijt2YXIgYj1qUXVlcnkuZm4ucmV2b2x1dGlvbixjPXthbGlhczoiS2VuQnVybnMgTWluIEpTIixuYW1lOiJyZXZvbHV0aW9uLmV4dGVuc2lvbnMua2VuYnVybi5taW4uanMiLG1pbl9jb3JlOiI1LjAiLHZlcnNpb246IjEuMi4wIn07alF1ZXJ5LmV4dGVuZCghMCxiLHtzdG9wS2VuQnVybjpmdW5jdGlvbihhKXtyZXR1cm4ic3RvcCIhPT1iLmNvbXBhcmVfdmVyc2lvbihjKS5jaGVjayYmdm9pZCh2b2lkIDAhPWEuZGF0YSgia2J0bCIpJiZhLmRhdGEoImtidGwiKS5wYXVzZSgpKX0sc3RhcnRLZW5CdXJuOmZ1bmN0aW9uKGEsZCxlKXtpZigic3RvcCI9PT1iLmNvbXBhcmVfdmVyc2lvbihjKS5jaGVjaylyZXR1cm4hMTt2YXIgZj1hLmRhdGEoKSxnPWEuZmluZCgiLmRlZmF1bHRpbWciKSxoPWcuZGF0YSgibGF6eWxvYWQiKXx8Zy5kYXRhKCJzcmMiKSxqPShmLm93aWR0aC9mLm9oZWlnaHQsImNhcm91c2VsIj09PWQuc2xpZGVyVHlwZT9kLmNhcm91c2VsLnNsaWRlX3dpZHRoOmQudWwud2lkdGgoKSksaz1kLnVsLmhlaWdodCgpO2EuZGF0YSgia2J0bCIpJiZhLmRhdGEoImtidGwiKS5raWxsKCksZT1lfHwwLDA9PWEuZmluZCgiLnRwLWtiaW1nIikubGVuZ3RoJiYoYS5hcHBlbmQoJzxkaXYgY2xhc3M9InRwLWtiaW1nLXdyYXAiIHN0eWxlPSJ6LWluZGV4OjI7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0b3A6MHB4O2xlZnQ6MHB4O3Bvc2l0aW9uOmFic29sdXRlOyI+PGltZyBjbGFzcz0idHAta2JpbWciIHNyYz0iJytoKyciIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTsiIHdpZHRoPSInK2Yub3dpZHRoKyciIGhlaWdodD0iJytmLm9oZWlnaHQrJyI+PC9kaXY+JyksYS5kYXRhKCJrZW5idXJuIixhLmZpbmQoIi50cC1rYmltZyIpKSk7dmFyIG09ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyl7dmFyIGg9YSpjLGk9YipjLGo9TWF0aC5hYnMoZC1oKSxrPU1hdGguYWJzKGUtaSksbD1uZXcgT2JqZWN0O3JldHVybiBsLmw9KDAtZikqaixsLnI9bC5sK2gsbC50PSgwLWcpKmssbC5iPWwudCtpLGwuaD1mLGwudj1nLGx9LG49ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1hLmJncG9zaXRpb24uc3BsaXQoIiAiKXx8ImNlbnRlciBjZW50ZXIiLGc9ImNlbnRlciI9PWZbMF0/IjUwJSI6ImxlZnQiPT1mWzBdfHwibGVmdCI9PWZbMV0/IjAlIjoicmlnaHQiPT1mWzBdfHwicmlnaHQiPT1mWzFdPyIxMDAlIjpmWzBdLGg9ImNlbnRlciI9PWZbMV0/IjUwJSI6InRvcCI9PWZbMF18fCJ0b3AiPT1mWzFdPyIwJSI6ImJvdHRvbSI9PWZbMF18fCJib3R0b20iPT1mWzFdPyIxMDAlIjpmWzFdO2c9cGFyc2VJbnQoZywwKS8xMDB8fDAsaD1wYXJzZUludChoLDApLzEwMHx8MDt2YXIgaT1uZXcgT2JqZWN0O3JldHVybiBpLnN0YXJ0PW0oZS5zdGFydC53aWR0aCxlLnN0YXJ0LmhlaWdodCxlLnN0YXJ0LnNjYWxlLGIsYyxnLGgpLGkuZW5kPW0oZS5zdGFydC53aWR0aCxlLnN0YXJ0LmhlaWdodCxlLmVuZC5zY2FsZSxiLGMsZyxoKSxpfSxvPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jLnNjYWxlc3RhcnQvMTAwLGU9Yy5zY2FsZWVuZC8xMDAsZj12b2lkIDAhPWMub2Zmc2V0c3RhcnQ/Yy5vZmZzZXRzdGFydC5zcGxpdCgiICIpfHxbMCwwXTpbMCwwXSxnPXZvaWQgMCE9Yy5vZmZzZXRlbmQ/Yy5vZmZzZXRlbmQuc3BsaXQoIiAiKXx8WzAsMF06WzAsMF07Yy5iZ3Bvc2l0aW9uPSJjZW50ZXIgY2VudGVyIj09Yy5iZ3Bvc2l0aW9uPyI1MCUgNTAlIjpjLmJncG9zaXRpb247dmFyIGg9bmV3IE9iamVjdCxpPWEqZCxrPShpL2Mub3dpZHRoKmMub2hlaWdodCxhKmUpO2svYy5vd2lkdGgqYy5vaGVpZ2h0O2lmKGguc3RhcnQ9bmV3IE9iamVjdCxoLnN0YXJ0bz1uZXcgT2JqZWN0LGguZW5kPW5ldyBPYmplY3QsaC5lbmRvPW5ldyBPYmplY3QsaC5zdGFydC53aWR0aD1hLGguc3RhcnQuaGVpZ2h0PWguc3RhcnQud2lkdGgvYy5vd2lkdGgqYy5vaGVpZ2h0LGguc3RhcnQuaGVpZ2h0PGIpe3ZhciBtPWIvaC5zdGFydC5oZWlnaHQ7aC5zdGFydC5oZWlnaHQ9YixoLnN0YXJ0LndpZHRoPWguc3RhcnQud2lkdGgqbX1oLnN0YXJ0LnRyYW5zZm9ybU9yaWdpbj1jLmJncG9zaXRpb24saC5zdGFydC5zY2FsZT1kLGguZW5kLnNjYWxlPWUsYy5yb3RhdGVzdGFydD0wPT09Yy5yb3RhdGVzdGFydD8uMDE6Yy5yb3RhdGVzdGFydCxoLnN0YXJ0LnJvdGF0aW9uPWMucm90YXRlc3RhcnQrImRlZyIsaC5lbmQucm90YXRpb249Yy5yb3RhdGVlbmQrImRlZyI7dmFyIG89bihjLGEsYixmLGgpO2ZbMF09cGFyc2VGbG9hdChmWzBdKStvLnN0YXJ0LmwsZ1swXT1wYXJzZUZsb2F0KGdbMF0pK28uZW5kLmwsZlsxXT1wYXJzZUZsb2F0KGZbMV0pK28uc3RhcnQudCxnWzFdPXBhcnNlRmxvYXQoZ1sxXSkrby5lbmQudDt2YXIgcD1vLnN0YXJ0LnItby5zdGFydC5sLHE9by5zdGFydC5iLW8uc3RhcnQudCxyPW8uZW5kLnItby5lbmQubCxzPW8uZW5kLmItby5lbmQudDtyZXR1cm4gZlswXT1mWzBdPjA/MDpwK2ZbMF08YT9hLXA6ZlswXSxnWzBdPWdbMF0+MD8wOnIrZ1swXTxhP2EtcjpnWzBdLGZbMV09ZlsxXT4wPzA6cStmWzFdPGI/Yi1xOmZbMV0sZ1sxXT1nWzFdPjA/MDpzK2dbMV08Yj9iLXM6Z1sxXSxoLnN0YXJ0by54PWZbMF0rInB4IixoLnN0YXJ0by55PWZbMV0rInB4IixoLmVuZG8ueD1nWzBdKyJweCIsaC5lbmRvLnk9Z1sxXSsicHgiLGguZW5kLmVhc2U9aC5lbmRvLmVhc2U9Yy5lYXNlLGguZW5kLmZvcmNlM0Q9aC5lbmRvLmZvcmNlM0Q9ITAsaH07dm9pZCAwIT1hLmRhdGEoImtidGwiKSYmKGEuZGF0YSgia2J0bCIpLmtpbGwoKSxhLnJlbW92ZURhdGEoImtidGwiKSk7dmFyIHA9YS5kYXRhKCJrZW5idXJuIikscT1wLnBhcmVudCgpLHI9byhqLGssZikscz1uZXcgcHVuY2hncy5UaW1lbGluZUxpdGU7cy5wYXVzZSgpLHIuc3RhcnQudHJhbnNmb3JtT3JpZ2luPSIwJSAwJSIsci5zdGFydG8udHJhbnNmb3JtT3JpZ2luPSIwJSAwJSIscy5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKHAsZi5kdXJhdGlvbi8xZTMsci5zdGFydCxyLmVuZCksMCkscy5hZGQocHVuY2hncy5Ud2VlbkxpdGUuZnJvbVRvKHEsZi5kdXJhdGlvbi8xZTMsci5zdGFydG8sci5lbmRvKSwwKSxzLnByb2dyZXNzKGUpLHMucGxheSgpLGEuZGF0YSgia2J0bCIscyl9fSl9KGpRdWVyeSk7"}},"time_used":16537,"timings":{"blocked":15710,"dns":0,"connect":0,"send":0,"wait":827,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/converter-js/fuse.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.304Z","timestamp":1785143908304,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/converter-js/fuse.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:45 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"1d7f-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 3091\r\nKeep-Alive: timeout=5, max=97\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":7551,"size_decoded":3459,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (6825)","md5":"cee79cc10f491d27d2b64e4b63b7eb33","sha1":"6b910b7dd7b8bae0624921331504a9f0cd6d3a64","sha256":"901fc7b8108e39c898776ba75c79c6f6bf75a10f18dfb3c3b258f3936190ce9e","sha512":"533a9d85bb1e587c32eef39679d730fd5ee8c1621c652a5b59e8d355fc141583a76c4c3920dd15a53ae1230d5ad7b49d4a7b218e0b5684d41e1692b7bd5e41f2","ssdeep":"96:kzaH4X/XHFCVDiPaJyaKxFPvuTdpc7XDiQa5zt687owGuDeoXTFI3afC:dHeXH0iPUyafEdQ9JGuK6I3aq","tlshash":"12f1b7adf6d0250503d308d45c1a1a8ed337953e5c1909adba68c7e99c3ee4ea08fd35","first_seen":"2023-03-12T23:41:39Z","last_seen":"2026-08-06T06:09:10.662123Z","times_seen":62,"resource_available":true,"data":"LyoqCiAqIEBsaWNlbnNlCiAqIEZ1c2UgLSBMaWdodHdlaWdodCBmdXp6eS1zZWFyY2gKICoKICogQ29weXJpZ2h0IChjKSAyMDEyLTIwMTYgS2lyb2xsb3MgUmlzayA8a2lyb2xsb3NAZ21haWwuY29tPi4KICogQWxsIFJpZ2h0cyBSZXNlcnZlZC4gQXBhY2hlIFNvZnR3YXJlIExpY2Vuc2UgMi4wCiAqCiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpCiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CiAqCiAqIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAogKgogKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgogKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogKi8KIWZ1bmN0aW9uKHQpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBlKCl7Y29uc29sZS5sb2cuYXBwbHkoY29uc29sZSxhcmd1bWVudHMpfWZ1bmN0aW9uIHModCxlKXt2YXIgcyxuLG8saTtmb3IodGhpcy5saXN0PXQsdGhpcy5vcHRpb25zPWU9ZXx8e30scz0wLGk9WyJzb3J0Iiwic2hvdWxkU29ydCIsInZlcmJvc2UiLCJ0b2tlbml6ZSJdLG49aS5sZW5ndGg7bj5zO3MrKylvPWlbc10sdGhpcy5vcHRpb25zW29dPW8gaW4gZT9lW29dOnJbb107Zm9yKHM9MCxpPVsic2VhcmNoRm4iLCJzb3J0Rm4iLCJrZXlzIiwiZ2V0Rm4iLCJpbmNsdWRlIiwidG9rZW5TZXBhcmF0b3IiXSxuPWkubGVuZ3RoO24+cztzKyspbz1pW3NdLHRoaXMub3B0aW9uc1tvXT1lW29dfHxyW29dfWZ1bmN0aW9uIG4odCxlLHMpe3ZhciBpLHIsaCxhLGMscDtpZihlKXtpZihoPWUuaW5kZXhPZigiLiIpLC0xIT09aD8oaT1lLnNsaWNlKDAsaCkscj1lLnNsaWNlKGgrMSkpOmk9ZSxhPXRbaV0sbnVsbCE9PWEmJnZvaWQgMCE9PWEpaWYocnx8InN0cmluZyIhPXR5cGVvZiBhJiYibnVtYmVyIiE9dHlwZW9mIGEpaWYobyhhKSlmb3IoYz0wLHA9YS5sZW5ndGg7cD5jO2MrKyluKGFbY10scixzKTtlbHNlIHImJm4oYSxyLHMpO2Vsc2Ugcy5wdXNoKGEpfWVsc2Ugcy5wdXNoKHQpO3JldHVybiBzfWZ1bmN0aW9uIG8odCl7cmV0dXJuIltvYmplY3QgQXJyYXldIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX1mdW5jdGlvbiBpKHQsZSl7ZT1lfHx7fSx0aGlzLm9wdGlvbnM9ZSx0aGlzLm9wdGlvbnMubG9jYXRpb249ZS5sb2NhdGlvbnx8aS5kZWZhdWx0T3B0aW9ucy5sb2NhdGlvbix0aGlzLm9wdGlvbnMuZGlzdGFuY2U9ImRpc3RhbmNlImluIGU/ZS5kaXN0YW5jZTppLmRlZmF1bHRPcHRpb25zLmRpc3RhbmNlLHRoaXMub3B0aW9ucy50aHJlc2hvbGQ9InRocmVzaG9sZCJpbiBlP2UudGhyZXNob2xkOmkuZGVmYXVsdE9wdGlvbnMudGhyZXNob2xkLHRoaXMub3B0aW9ucy5tYXhQYXR0ZXJuTGVuZ3RoPWUubWF4UGF0dGVybkxlbmd0aHx8aS5kZWZhdWx0T3B0aW9ucy5tYXhQYXR0ZXJuTGVuZ3RoLHRoaXMucGF0dGVybj1lLmNhc2VTZW5zaXRpdmU/dDp0LnRvTG93ZXJDYXNlKCksdGhpcy5wYXR0ZXJuTGVuPXQubGVuZ3RoLHRoaXMucGF0dGVybkxlbjw9dGhpcy5vcHRpb25zLm1heFBhdHRlcm5MZW5ndGgmJih0aGlzLm1hdGNobWFzaz0xPDx0aGlzLnBhdHRlcm5MZW4tMSx0aGlzLnBhdHRlcm5BbHBoYWJldD10aGlzLl9jYWxjdWxhdGVQYXR0ZXJuQWxwaGFiZXQoKSl9dmFyIHI9e2lkOm51bGwsY2FzZVNlbnNpdGl2ZTohMSxpbmNsdWRlOltdLHNob3VsZFNvcnQ6ITAsc2VhcmNoRm46aSxzb3J0Rm46ZnVuY3Rpb24odCxlKXtyZXR1cm4gdC5zY29yZS1lLnNjb3JlfSxnZXRGbjpuLGtleXM6W10sdmVyYm9zZTohMSx0b2tlbml6ZTohMSxtYXRjaEFsbFRva2VuczohMSx0b2tlblNlcGFyYXRvcjovICsvZ307cy5WRVJTSU9OPSIyLjUuMCIscy5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmxpc3Q9dCx0fSxzLnByb3RvdHlwZS5zZWFyY2g9ZnVuY3Rpb24odCl7dGhpcy5vcHRpb25zLnZlcmJvc2UmJmUoIlxuU2VhcmNoIHRlcm06Iix0LCJcbiIpLHRoaXMucGF0dGVybj10LHRoaXMucmVzdWx0cz1bXSx0aGlzLnJlc3VsdE1hcD17fSx0aGlzLl9rZXlNYXA9bnVsbCx0aGlzLl9wcmVwYXJlU2VhcmNoZXJzKCksdGhpcy5fc3RhcnRTZWFyY2goKSx0aGlzLl9jb21wdXRlU2NvcmUoKSx0aGlzLl9zb3J0KCk7dmFyIHM9dGhpcy5fZm9ybWF0KCk7cmV0dXJuIHN9LHMucHJvdG90eXBlLl9wcmVwYXJlU2VhcmNoZXJzPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5vcHRpb25zLGU9dGhpcy5wYXR0ZXJuLHM9dC5zZWFyY2hGbixuPWUuc3BsaXQodC50b2tlblNlcGFyYXRvciksbz0wLGk9bi5sZW5ndGg7aWYodGhpcy5vcHRpb25zLnRva2VuaXplKWZvcih0aGlzLnRva2VuU2VhcmNoZXJzPVtdO2k+bztvKyspdGhpcy50b2tlblNlYXJjaGVycy5wdXNoKG5ldyBzKG5bb10sdCkpO3RoaXMuZnVsbFNlYWNoZXI9bmV3IHMoZSx0KX0scy5wcm90b3R5cGUuX3N0YXJ0U2VhcmNoPWZ1bmN0aW9uKCl7dmFyIHQsZSxzLG4sbz10aGlzLm9wdGlvbnMsaT1vLmdldEZuLHI9dGhpcy5saXN0LGg9ci5sZW5ndGgsYT10aGlzLm9wdGlvbnMua2V5cyxjPWEubGVuZ3RoLHA9bnVsbDtpZigic3RyaW5nIj09dHlwZW9mIHJbMF0pZm9yKHM9MDtoPnM7cysrKXRoaXMuX2FuYWx5emUoIiIscltzXSxzLHMpO2Vsc2UgZm9yKHRoaXMuX2tleU1hcD17fSxzPTA7aD5zO3MrKylmb3IocD1yW3NdLG49MDtjPm47bisrKXtpZih0PWFbbl0sInN0cmluZyIhPXR5cGVvZiB0KXtpZihlPTEtdC53ZWlnaHR8fDEsdGhpcy5fa2V5TWFwW3QubmFtZV09e3dlaWdodDplfSx0LndlaWdodDw9MHx8dC53ZWlnaHQ+MSl0aHJvdyBuZXcgRXJyb3IoIktleSB3ZWlnaHQgaGFzIHRvIGJlID4gMCBhbmQgPD0gMSIpO3Q9dC5uYW1lfWVsc2UgdGhpcy5fa2V5TWFwW3RdPXt3ZWlnaHQ6MX07dGhpcy5fYW5hbHl6ZSh0LGkocCx0LFtdKSxwLHMpfX0scy5wcm90b3R5cGUuX2FuYWx5emU9ZnVuY3Rpb24odCxzLG4saSl7dmFyIHIsaCxhLGMscCxsLHUsZixkLGcsbSx5LGssdixTLGI9dGhpcy5vcHRpb25zLF89ITE7aWYodm9pZCAwIT09cyYmbnVsbCE9PXMpe2g9W107dmFyIE09MDtpZigic3RyaW5nIj09dHlwZW9mIHMpe2lmKHI9cy5zcGxpdChiLnRva2VuU2VwYXJhdG9yKSxiLnZlcmJvc2UmJmUoIi0tLS0tLS0tLVxuS2V5OiIsdCksdGhpcy5vcHRpb25zLnRva2VuaXplKXtmb3Iodj0wO3Y8dGhpcy50b2tlblNlYXJjaGVycy5sZW5ndGg7disrKXtmb3IoZj10aGlzLnRva2VuU2VhcmNoZXJzW3ZdLGIudmVyYm9zZSYmZSgiUGF0dGVybjoiLGYucGF0dGVybiksZD1bXSx5PSExLFM9MDtTPHIubGVuZ3RoO1MrKyl7Zz1yW1NdLG09Zi5zZWFyY2goZyk7dmFyIEw9e307bS5pc01hdGNoPyhMW2ddPW0uc2NvcmUsXz0hMCx5PSEwLGgucHVzaChtLnNjb3JlKSk6KExbZ109MSx0aGlzLm9wdGlvbnMubWF0Y2hBbGxUb2tlbnN8fGgucHVzaCgxKSksZC5wdXNoKEwpfXkmJk0rKyxiLnZlcmJvc2UmJmUoIlRva2VuIHNjb3JlczoiLGQpfWZvcihjPWhbMF0sbD1oLmxlbmd0aCx2PTE7bD52O3YrKyljKz1oW3ZdO2MvPWwsYi52ZXJib3NlJiZlKCJUb2tlbiBzY29yZSBhdmVyYWdlOiIsYyl9dT10aGlzLmZ1bGxTZWFjaGVyLnNlYXJjaChzKSxiLnZlcmJvc2UmJmUoIkZ1bGwgdGV4dCBzY29yZToiLHUuc2NvcmUpLHA9dS5zY29yZSx2b2lkIDAhPT1jJiYocD0ocCtjKS8yKSxiLnZlcmJvc2UmJmUoIlNjb3JlIGF2ZXJhZ2U6IixwKSxrPXRoaXMub3B0aW9ucy50b2tlbml6ZSYmdGhpcy5vcHRpb25zLm1hdGNoQWxsVG9rZW5zP00+PXRoaXMudG9rZW5TZWFyY2hlcnMubGVuZ3RoOiEwLGIudmVyYm9zZSYmZSgiQ2hlY2sgTWF0Y2hlcyIsayksKF98fHUuaXNNYXRjaCkmJmsmJihhPXRoaXMucmVzdWx0TWFwW2ldLGE/YS5vdXRwdXQucHVzaCh7a2V5OnQsc2NvcmU6cCxtYXRjaGVkSW5kaWNlczp1Lm1hdGNoZWRJbmRpY2VzfSk6KHRoaXMucmVzdWx0TWFwW2ldPXtpdGVtOm4sb3V0cHV0Olt7a2V5OnQsc2NvcmU6cCxtYXRjaGVkSW5kaWNlczp1Lm1hdGNoZWRJbmRpY2VzfV19LHRoaXMucmVzdWx0cy5wdXNoKHRoaXMucmVzdWx0TWFwW2ldKSkpfWVsc2UgaWYobyhzKSlmb3Iodj0wO3Y8cy5sZW5ndGg7disrKXRoaXMuX2FuYWx5emUodCxzW3ZdLG4saSl9fSxzLnByb3RvdHlwZS5fY29tcHV0ZVNjb3JlPWZ1bmN0aW9uKCl7dmFyIHQscyxuLG8saSxyLGgsYSxjLHA9dGhpcy5fa2V5TWFwLGw9dGhpcy5yZXN1bHRzO2Zvcih0aGlzLm9wdGlvbnMudmVyYm9zZSYmZSgiXG5cbkNvbXB1dGluZyBzY29yZTpcbiIpLHQ9MDt0PGwubGVuZ3RoO3QrKyl7Zm9yKG49MCxvPWxbdF0ub3V0cHV0LGk9by5sZW5ndGgsYT0xLHM9MDtpPnM7cysrKXI9b1tzXS5zY29yZSxoPXA/cFtvW3NdLmtleV0ud2VpZ2h0OjEsYz1yKmgsMSE9PWg/YT1NYXRoLm1pbihhLGMpOihuKz1jLG9bc10ublNjb3JlPWMpOzE9PT1hP2xbdF0uc2NvcmU9bi9pOmxbdF0uc2NvcmU9YSx0aGlzLm9wdGlvbnMudmVyYm9zZSYmZShsW3RdKX19LHMucHJvdG90eXBlLl9zb3J0PWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5vcHRpb25zO3Quc2hvdWxkU29ydCYmKHQudmVyYm9zZSYmZSgiXG5cblNvcnRpbmcuLi4uIiksdGhpcy5yZXN1bHRzLnNvcnQodC5zb3J0Rm4pKX0scy5wcm90b3R5cGUuX2Zvcm1hdD1mdW5jdGlvbigpe3ZhciB0LHMsbixvLGkscj10aGlzLm9wdGlvbnMsaD1yLmdldEZuLGE9W10sYz10aGlzLnJlc3VsdHMscD1yLmluY2x1ZGU7Zm9yKHIudmVyYm9zZSYmZSgiXG5cbk91dHB1dDpcblxuIixjKSxvPXIuaWQ/ZnVuY3Rpb24odCl7Y1t0XS5pdGVtPWgoY1t0XS5pdGVtLHIuaWQsW10pWzBdfTpmdW5jdGlvbigpe30saT1mdW5jdGlvbih0KXt2YXIgZSxzLG4sbyxpLHI9Y1t0XTtpZihwLmxlbmd0aD4wKXtpZihlPXtpdGVtOnIuaXRlbX0sLTEhPT1wLmluZGV4T2YoIm1hdGNoZXMiKSlmb3Iobj1yLm91dHB1dCxlLm1hdGNoZXM9W10scz0wO3M8bi5sZW5ndGg7cysrKW89bltzXSxpPXtpbmRpY2VzOm8ubWF0Y2hlZEluZGljZXN9LG8ua2V5JiYoaS5rZXk9by5rZXkpLGUubWF0Y2hlcy5wdXNoKGkpOy0xIT09cC5pbmRleE9mKCJzY29yZSIpJiYoZS5zY29yZT1jW3RdLnNjb3JlKX1lbHNlIGU9ci5pdGVtO3JldHVybiBlfSxzPTAsbj1jLmxlbmd0aDtuPnM7cysrKW8ocyksdD1pKHMpLGEucHVzaCh0KTtyZXR1cm4gYX0saS5kZWZhdWx0T3B0aW9ucz17bG9jYXRpb246MCxkaXN0YW5jZToxMDAsdGhyZXNob2xkOi42LG1heFBhdHRlcm5MZW5ndGg6MzJ9LGkucHJvdG90eXBlLl9jYWxjdWxhdGVQYXR0ZXJuQWxwaGFiZXQ9ZnVuY3Rpb24oKXt2YXIgdD17fSxlPTA7Zm9yKGU9MDtlPHRoaXMucGF0dGVybkxlbjtlKyspdFt0aGlzLnBhdHRlcm4uY2hhckF0KGUpXT0wO2ZvcihlPTA7ZTx0aGlzLnBhdHRlcm5MZW47ZSsrKXRbdGhpcy5wYXR0ZXJuLmNoYXJBdChlKV18PTE8PHRoaXMucGF0dGVybi5sZW5ndGgtZS0xO3JldHVybiB0fSxpLnByb3RvdHlwZS5fYml0YXBTY29yZT1mdW5jdGlvbih0LGUpe3ZhciBzPXQvdGhpcy5wYXR0ZXJuTGVuLG49TWF0aC5hYnModGhpcy5vcHRpb25zLmxvY2F0aW9uLWUpO3JldHVybiB0aGlzLm9wdGlvbnMuZGlzdGFuY2U/cytuL3RoaXMub3B0aW9ucy5kaXN0YW5jZTpuPzE6c30saS5wcm90b3R5cGUuc2VhcmNoPWZ1bmN0aW9uKHQpe3ZhciBlLHMsbixvLGkscixoLGEsYyxwLGwsdSxmLGQsZyxtLHksayx2LFMsYixfLE09dGhpcy5vcHRpb25zO2lmKHQ9TS5jYXNlU2Vuc2l0aXZlP3Q6dC50b0xvd2VyQ2FzZSgpLHRoaXMucGF0dGVybj09PXQpcmV0dXJue2lzTWF0Y2g6ITAsc2NvcmU6MCxtYXRjaGVkSW5kaWNlczpbWzAsdC5sZW5ndGgtMV1dfTtpZih0aGlzLnBhdHRlcm5MZW4+TS5tYXhQYXR0ZXJuTGVuZ3RoKXtpZih5PXQubWF0Y2gobmV3IFJlZ0V4cCh0aGlzLnBhdHRlcm4ucmVwbGFjZShNLnRva2VuU2VwYXJhdG9yLCJ8IikpKSxrPSEheSlmb3IoUz1bXSxlPTAsYj15Lmxlbmd0aDtiPmU7ZSsrKV89eVtlXSxTLnB1c2goW3QuaW5kZXhPZihfKSxfLmxlbmd0aC0xXSk7cmV0dXJue2lzTWF0Y2g6ayxzY29yZTprPy41OjEsbWF0Y2hlZEluZGljZXM6U319Zm9yKG89TS5sb2NhdGlvbixuPXQubGVuZ3RoLGk9TS50aHJlc2hvbGQscj10LmluZGV4T2YodGhpcy5wYXR0ZXJuLG8pLHY9W10sZT0wO24+ZTtlKyspdltlXT0wO2ZvcigtMSE9ciYmKGk9TWF0aC5taW4odGhpcy5fYml0YXBTY29yZSgwLHIpLGkpLHI9dC5sYXN0SW5kZXhPZih0aGlzLnBhdHRlcm4sbyt0aGlzLnBhdHRlcm5MZW4pLC0xIT1yJiYoaT1NYXRoLm1pbih0aGlzLl9iaXRhcFNjb3JlKDAsciksaSkpKSxyPS0xLGc9MSxtPVtdLGM9dGhpcy5wYXR0ZXJuTGVuK24sZT0wO2U8dGhpcy5wYXR0ZXJuTGVuO2UrKyl7Zm9yKGg9MCxhPWM7YT5oOyl0aGlzLl9iaXRhcFNjb3JlKGUsbythKTw9aT9oPWE6Yz1hLGE9TWF0aC5mbG9vcigoYy1oKS8yK2gpO2ZvcihjPWEscD1NYXRoLm1heCgxLG8tYSsxKSxsPU1hdGgubWluKG8rYSxuKSt0aGlzLnBhdHRlcm5MZW4sdT1BcnJheShsKzIpLHVbbCsxXT0oMTw8ZSktMSxzPWw7cz49cDtzLS0paWYoZD10aGlzLnBhdHRlcm5BbHBoYWJldFt0LmNoYXJBdChzLTEpXSxkJiYodltzLTFdPTEpLDA9PT1lP3Vbc109KHVbcysxXTw8MXwxKSZkOnVbc109KHVbcysxXTw8MXwxKSZkfCgoZltzKzFdfGZbc10pPDwxfDEpfGZbcysxXSx1W3NdJnRoaXMubWF0Y2htYXNrJiYoZz10aGlzLl9iaXRhcFNjb3JlKGUscy0xKSxpPj1nKSl7aWYoaT1nLHI9cy0xLG0ucHVzaChyKSwhKHI+bykpYnJlYWs7cD1NYXRoLm1heCgxLDIqby1yKX1pZih0aGlzLl9iaXRhcFNjb3JlKGUrMSxvKT5pKWJyZWFrO2Y9dX1yZXR1cm4gUz10aGlzLl9nZXRNYXRjaGVkSW5kaWNlcyh2KSx7aXNNYXRjaDpyPj0wLHNjb3JlOjA9PT1nPy4wMDE6ZyxtYXRjaGVkSW5kaWNlczpTfX0saS5wcm90b3R5cGUuX2dldE1hdGNoZWRJbmRpY2VzPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxzPVtdLG49LTEsbz0tMSxpPTAscj10Lmxlbmd0aDtyPmk7aSsrKWU9dFtpXSxlJiYtMT09PW4/bj1pOmV8fC0xPT09bnx8KG89aS0xLHMucHVzaChbbixvXSksbj0tMSk7cmV0dXJuIHRbaS0xXSYmcy5wdXNoKFtuLGktMV0pLHN9LCJvYmplY3QiPT10eXBlb2YgZXhwb3J0cz9tb2R1bGUuZXhwb3J0cz1zOiJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKGZ1bmN0aW9uKCl7cmV0dXJuIHN9KTp0LkZ1c2U9c30odGhpcyk7"}},"time_used":17510,"timings":{"blocked":16515,"dns":0,"connect":0,"send":0,"wait":995,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/converter-js/converter.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.306Z","timestamp":1785143908306,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/converter-js/converter.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:45 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"5791-63ccd443bdcc0-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 7195\r\nKeep-Alive: timeout=5, max=96\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":22417,"size_decoded":7563,"mime_type":"text/javascript","magic":"JavaScript source, Unicode text, UTF-8 text","md5":"0103b3a9f497ee90c41d691d2f55e64b","sha1":"90d19a849f21f71716ea3d3c2262bd2eb8d832b4","sha256":"c78383d5032d858f60fb26a4c0501292641aa2d8c4eef19fdd7439d8f07924ae","sha512":"57365c6ca3af51d8e45ea2a46d0a8d9a07624ae4169b5fa3bc41fd361db6e23d185c09fe7ae8d039a1aae674b533ed0b62e9d31126fd1041aa7cb215984e10b9","ssdeep":"384:vdkKvOEoLw68Ke92aVI+n/R9sq8elOADzfo7OFHFLR3W09:lv4e92aVI+nBLLlLR3Wq","tlshash":"88a2a7d538fa30161bc312b52c69be813ba2c8a665857b40b90fce749b4c1294f35bfd","first_seen":"2025-03-10T16:31:43.134031Z","last_seen":"2026-08-06T06:09:10.663855Z","times_seen":39,"resource_available":true,"data":"JChkb2N1bWVudCkucmVhZHkobWFpbikKCnZhciBCVENJTlQgPSAxMDAwMDAwMDAKdmFyIGJ1aWx0RmlhdCA9IGZhbHNlCnZhciBidWlsdENyeXB0byA9IGZhbHNlCnZhciBjcnlwdG9TZXR0aW5nID0gJ2InCnZhciBmaWF0ID0gJ1VTRCcKdmFyIGZpYXREZWZhdWx0cyA9IFsnVVNEJywnRVVSJywnR0JQJywnSlBZJywnQ05ZJywnQVVEJywnSEtEJ10KdmFyIGZpYXRMYWJlbHMgPSB7fQp2YXIgZmlhdFNlYXJjaERhdGEgPSBbXQp2YXIgcmF0ZXMgPSB7fQp2YXIgc2hvd24gPSB7CiAgY3J5cHRvOiBmYWxzZSwKICBmaWF0OiBmYWxzZQp9CnZhciBidGNVbml0cyA9IHsKICAnYic6IHsKICAgIGQ6IDgsCiAgICBpOiAxMDAwMDAwMDAKICB9LAogICdtJzogewogICAgZDogNSwKICAgIGk6IDEwMDAwMAogIH0sCiAgJ3UnOiB7CiAgICBkOiAyLAogICAgaTogMTAwCiAgfSwKICAncyc6IHsKICAgIGQ6IDAsCiAgICBpOiAxCiAgfQp9CnZhciBsYXN0ID0gbnVsbAp2YXIgY2FjaGVUaW1lID0gMTgwMCoxMDAwCnZhciBmdXNlID0gbnVsbAp2YXIgaGlzdG9yaWNNb2RlID0gZmFsc2UKdmFyIGhpc3RvcmljUmF0ZSA9IDAKdmFyIGhpc3RvcmljUmF0ZXMgPSB7fQp2YXIgc3BvdEZpYXQKCi8vIExvYWQgdXNlciBzZXR0aW5ncyBmcm9tIGxvY2FsU3RvcmFnZSwgd2l0aCBkZWZhdWx0cyBmb3IgdXNlciBsYW5ndWFnZQpmdW5jdGlvbiBsb2FkU2V0dGluZ3MoKSB7CiAgdmFyIGdvdEZpYXQgPSBmYWxzZQogIGlmKCdsb2NhbFN0b3JhZ2UnIGluIHdpbmRvdykgewogICAgaWYod2luZG93LmxvY2FsU3RvcmFnZVsnY29udmVydGVyLWZpYXQnXSkgewogICAgICBmaWF0ID0gd2luZG93LmxvY2FsU3RvcmFnZVsnY29udmVydGVyLWZpYXQnXQogICAgICBnb3RGaWF0ID0gdHJ1ZQogICAgfQogICAgaWYod2luZG93LmxvY2FsU3RvcmFnZVsnY29udmVydGVyLWNyeXB0byddKSB7CiAgICAgIGNyeXB0b1NldHRpbmcgPSB3aW5kb3cubG9jYWxTdG9yYWdlWydjb252ZXJ0ZXItY3J5cHRvJ10KICAgIH0KICB9CiAgaWYoIWdvdEZpYXQpCiAgICBzZXRMYW5ndWFnZShuYXZpZ2F0b3IubGFuZ3VhZ2UgfHwgbmF2aWdhdG9yLnVzZXJMYW5ndWFnZSkKfQoKZnVuY3Rpb24gc2V0TGFuZ3VhZ2UobGFuZykgewogIGZvcih2YXIga2V5IGluIGxhbmdNYXApIHsKICAgIGxhbmdNYXBba2V5XSA9IGxhbmdNYXBba2V5XS50b0xvd2VyQ2FzZSgpLnNwbGl0KCcsJykKICAgIGZvcih2YXIgaT0wOyBpPGxhbmdNYXBba2V5XS5sZW5ndGg7IGkrKykgewogICAgICBpZihsYW5nLmluZGV4T2YobGFuZ01hcFtrZXldW2ldKSA+IDApIHsKICAgICAgICBmaWF0ID0ga2V5CiAgICAgICAgc2V0RmlhdCgpCiAgICAgICAgcmV0dXJuCiAgICAgIH0KICAgIH0KICB9CiAgc2V0RmlhdCgpCn0KCmZ1bmN0aW9uIHNhdmVTZXR0aW5ncygpIHsKICBpZignbG9jYWxTdG9yYWdlJyBpbiB3aW5kb3cpIHsKICAgIHdpbmRvdy5sb2NhbFN0b3JhZ2VbJ2NvbnZlcnRlci1maWF0J10gPSBmaWF0CiAgICB3aW5kb3cubG9jYWxTdG9yYWdlWydjb252ZXJ0ZXItY3J5cHRvJ10gPSBjcnlwdG9TZXR0aW5nCiAgfQp9Cgp2YXIgcmVjb21wdXRlRmlhdFRocm90dGxlZCA9IHRocm90dGxlKHJlY29tcHV0ZUZpYXQsIDUwKQoKZnVuY3Rpb24gb25SYXRlKGRhdGEsIGN1cikgewogIGlmKHR5cGVvZiBkYXRhLnByaWNlID09PSAidW5kZWZpbmVkIikKICAgIHJldHVybgogIHJhdGVzW2N1cl0gPSBkYXRhLnByaWNlIC8gMTAwCiAgaWYoIWhpc3RvcmljTW9kZSkKICAgIHJlY29tcHV0ZUZpYXRUaHJvdHRsZWQoKQp9CgpmdW5jdGlvbiBidWlsZEZpYXQoKSB7CiAgdmFyIGZ1c2VEYXRhID0gW10KICBmb3IodmFyIGo9MDsgajxmaWF0TGlzdC5sZW5ndGg7IGorKykgewogICAgZmlhdExhYmVsc1tmaWF0TGlzdFtqXVswXV0gPSBmaWF0TGlzdFtqXVsxXQogICAgZnVzZURhdGEucHVzaCh7CiAgICAgIGNvZGU6IGZpYXRMaXN0W2pdWzBdLAogICAgICBuYW1lOiBmaWF0TGlzdFtqXVsxXQogICAgfSkKICB9CiAgLy8gQnVpbGQgZnV6enkgc2VhcmNoIGRhdGEKICBmdXNlID0gbmV3IEZ1c2UoZnVzZURhdGEsIHsKICAgIGtleXM6IFsnY29kZScsICduYW1lJ10sCiAgICBpZDogJ2NvZGUnLAogICAgdGhyZXNob2xkOiAwLjUKICB9KQoKICBzaG93RmlhdERlZmF1bHRzKCkKCiAgJCgnI2ZpYXQtc2VsZWN0Jykub24oJ2NsaWNrJywgZnVuY3Rpb24oZXZlbnQpIHsgCiAgICBpZihoaXN0b3JpY01vZGUpCiAgICAgIHJldHVybiBzdG9wRXZlbnQoZXZlbnQpCiAgICBpZihzaG93bi5jcnlwdG8pIHsKICAgICAgaGlkZVBvcHVwKCcjY3J5cHRvLWZpZWxkc2V0JywgJyNjcnlwdG8tcG9wdXAnKQogICAgICBzaG93bi5jcnlwdG8gPSBmYWxzZQogICAgfQogICAgdmFyIFIgPSBzZWxlY3RDbGljaygnZmlhdCcsIGV2ZW50KSAKICAgIC8vIEZvY3VzIHRoZSBzZWFyY2ggYm94IG9uIG5vbi1tb2JpbGUgc2NyZWVuIHdpZHRoCiAgICBpZigkKHdpbmRvdykud2lkdGgoKSA+IDc2OCkKICAgICAgJCgnI2ZpYXQtcG9wdXAgaW5wdXQnKS5mb2N1cygpCiAgICByZXR1cm4gUgogIH0pCgogIGZ1bmN0aW9uIG9uSW5wdXQoZXZlbnQpIHsKICAgIHJlY29tcHV0ZUNyeXB0byhldmVudCkKICAgIGxhc3QgPSAnZmlhdCcKICB9CiAgCiAgJCgnI2ZpYXQtZmllbGRzZXQgaW5wdXQnKQogICAgLm9uKCdjaGFuZ2UnLCBvbklucHV0KQogICAgLm9uKCdrZXl1cCcsIG9uSW5wdXQpCgogICQoJyNmaWF0LXNlbGVjdCAubGFiZWwnKS50ZXh0KGZpYXQpCgogICQoJyNmaWF0LXBvcHVwIGlucHV0JykKICAgIC5vbigna2V5dXAnLCBzZWFyY2hGaWF0KQoKICBidWlsdEZpYXQgPSB0cnVlCn0KCmZ1bmN0aW9uIHNob3dGaWF0RGVmYXVsdHMoKSB7CiAgdmFyIGl0ZW1zID0gW2ZpYXRdCiAgZm9yKHZhciBqPTA7IGo8ZmlhdERlZmF1bHRzLmxlbmd0aDsgaisrKSB7CiAgICBpZihmaWF0RGVmYXVsdHNbal0gIT0gZmlhdCkgewogICAgICBpdGVtcy5wdXNoKGZpYXREZWZhdWx0c1tqXSkKICAgIH0KICB9CiAgCiAgcG9wdWxhdGVGaWF0SXRlbXMoaXRlbXMpCiAgcmVnaXN0ZXJGaWF0Um93SGFuZGxlcnMoKQp9CgpmdW5jdGlvbiBwb3B1bGF0ZUZpYXRJdGVtcyhpdGVtcykgewogIHZhciBodG1sID0gW10sCiAgICBpID0gMAogIGZvcih2YXIgaj0wOyBqPGl0ZW1zLmxlbmd0aDsgaisrKSB7CiAgICBpZihpdGVtc1tqXSBpbiBmaWF0TGFiZWxzKSB7CiAgICAgIGh0bWxbaSsrXSA9ICc8ZGl2IGNsYXNzPSJyb3cnCiAgICAgIGlmKGl0ZW1zW2pdID09IGZpYXQpCiAgICAgICAgaHRtbFtpKytdID0gJyBjdXJyZW50JwogICAgICBodG1sW2krK10gPSAnIj48c3BhbiBjbGFzcz0iYWJiciI+JwogICAgICBodG1sW2krK10gPSBpdGVtc1tqXQogICAgICBodG1sW2krK10gPSAnPC9zcGFuPjxzcGFuIGNsYXNzPSJsYWJlbCI+JwogICAgICBodG1sW2krK10gPSBmaWF0TGFiZWxzW2l0ZW1zW2pdXQogICAgICBodG1sW2krK10gPSAnPC9zcGFuPjwvZGl2PicKICAgIH0KICB9CiAgJCgnI2ZpYXQtcm93cycpLmh0bWwoaHRtbC5qb2luKCcnKSkKfQoKZnVuY3Rpb24gc2VhcmNoRmlhdChldmVudCkgewogIHN3aXRjaChldmVudC53aGljaCkgewogICAgY2FzZSAxMzoKICAgICAgLy8gRW50ZXIKICAgICAgJCgnI2ZpYXQtcG9wdXAgLnJvdzpmaXJzdC1jaGlsZCcpLmNsaWNrKCkKICAgICAgcmV0dXJuCiAgICBjYXNlIDI3OgogICAgICAvLyBFc2NhcGUKICAgICAgc2hvd24uZmlhdCA9IGZhbHNlCiAgICAgIGNsZWFyU2VhcmNoKCkKICAgICAgc2hvd0ZpYXREZWZhdWx0cygpCiAgICAgIHJlZ2lzdGVyRmlhdFJvd0hhbmRsZXJzKCkKICAgICAgaGlkZVBvcHVwKCcjZmlhdC1maWVsZHNldCcsICcjZmlhdC1wb3B1cCcpCiAgICAgIHJldHVybgogIH0KICB2YXIgcyA9ICQoJyNmaWF0LXBvcHVwIGlucHV0JykudmFsKCkKICBpZihzLmxlbmd0aCA9PSAwKSB7CiAgICBzaG93RmlhdERlZmF1bHRzKCkKICAgIHJldHVybgogIH0KICB2YXIgciA9IGZ1c2Uuc2VhcmNoKHMpCiAgaWYodHlwZW9mIHIgPT09ICdzdHJpbmcnKSB7CiAgICBzaG93RmlhdERlZmF1bHRzKCkKICAgIHJldHVybgogIH0KICByID0gci5zbGljZSgwLDYpCiAgcG9wdWxhdGVGaWF0SXRlbXMocikKICByZWdpc3RlckZpYXRSb3dIYW5kbGVycygpCn0KCmZ1bmN0aW9uIGNsZWFyU2VhcmNoKCkgewogICQoJyNmaWF0LXBvcHVwIGlucHV0JykudmFsKCcnKQp9CgpmdW5jdGlvbiByZWdpc3RlckZpYXRSb3dIYW5kbGVycygpIHsKICAkKCcjZmlhdC1wb3B1cCAucm93Jykub24oJ2NsaWNrJywgZmlhdFJvd0NsaWNrKQp9CgpmdW5jdGlvbiBmaWF0Um93Q2xpY2soZXZlbnQpIHsKICB2YXIgVCA9ICQoZXZlbnQuY3VycmVudFRhcmdldCkKCiAgdHJ5IHsKICAgIHZhciBjdXIgPSAkKCcuYWJicicsIFQpLnRleHQoKQogICAgaWYoY3VyIGluIGZpYXRMYWJlbHMpIHsKICAgICAgc2V0RmlhdEN1cnJlbmN5KGN1cikKICAgIH0KICB9IGNhdGNoKGUpIHt9CgogIGNsZWFyU2VhcmNoKCkKICBzaG93RmlhdERlZmF1bHRzKCkKCiAgaGlkZVBvcHVwKCcjZmlhdC1maWVsZHNldCcsICcjZmlhdC1wb3B1cCcpCiAgc2hvd24uZmlhdCA9IGZhbHNlCgogIHJldHVybiBzdG9wRXZlbnQoZXZlbnQpCn0KCmZ1bmN0aW9uIHNldEZpYXRDdXJyZW5jeShjdXIpIHsKICBmaWF0ID0gY3VyCiAgc3Vic2NyaWJlRmlhdCgpCiAgcmVjb21wdXRlRmlhdCgpCiAgJCgnI2ZpYXQtc2VsZWN0IC5sYWJlbCcpLnRleHQoZmlhdCkKICBzYXZlU2V0dGluZ3MoKQogIHRyeSB7CiAgICBnYSgnc2VuZCcsJ2V2ZW50JywnQ29udmVydGVyJywnc2V0RmlhdCcsZmlhdCkKICB9IGNhdGNoKGUpIHt9Cn0KCmZ1bmN0aW9uIGJ1aWxkQ3J5cHRvKCkgewogICQoJyNjcnlwdG8tc2VsZWN0Jykub24oJ2NsaWNrJywgZnVuY3Rpb24oZXZlbnQpIHsgCiAgICBpZihzaG93bi5maWF0KSB7CiAgICAgIGhpZGVQb3B1cCgnI2ZpYXQtZmllbGRzZXQnLCAnI2ZpYXQtcG9wdXAnKQogICAgICBzaG93bi5maWF0ID0gZmFsc2UKICAgIH0KICAgIHJldHVybiBzZWxlY3RDbGljaygnY3J5cHRvJywgZXZlbnQpIAogIH0pCiAgJCgnI2NyeXB0by1wb3B1cCAucm93Jykub24oJ2NsaWNrJywgY3J5cHRvUm93Q2xpY2spCiAgdHJ5IHsKICAgICQoJyNjcnlwdG8tcG9wdXAgLnJvdycpLmVhY2goZnVuY3Rpb24oaSwgdCkgewogICAgICBpZigkKHQpLmRhdGEoJ3VuaXQnKSA9PSBjcnlwdG9TZXR0aW5nKSB7CiAgICAgICAgLy8gY29uc29sZS5sb2coJCh0KSkKICAgICAgICBsYXN0ID0gJ2J0YycKICAgICAgICAkKHQpLmNsaWNrKCkKICAgICAgfQogICAgfSkKICB9IGNhdGNoKGUpIHt9CgogIGZ1bmN0aW9uIG9uSW5wdXQoZXZlbnQpIHsKICAgIHJlY29tcHV0ZUZpYXQoZXZlbnQpCiAgICBsYXN0ID0gJ2J0YycKICB9CgogICQoJyNjcnlwdG8tZmllbGRzZXQgaW5wdXQnKQogICAgLm9uKCdjaGFuZ2UnLCBvbklucHV0KQogICAgLm9uKCdrZXl1cCcsIG9uSW5wdXQpCgogIGJ1aWx0Q3J5cHRvID0gdHJ1ZQp9CgpmdW5jdGlvbiBzZWxlY3RDbGljayhwcmVmaXgsIGV2ZW50KSB7CiAgaWYoc2hvd25bcHJlZml4XSkgewogICAgaGlkZVBvcHVwKCcjJytwcmVmaXgrJy1maWVsZHNldCcsICcjJytwcmVmaXgrJy1wb3B1cCcpCiAgICBpZihwcmVmaXggPT0gJ2ZpYXQnKSB7CiAgICAgIGNsZWFyU2VhcmNoKCkKICAgICAgc2hvd0ZpYXREZWZhdWx0cygpCiAgICB9CiAgfSBlbHNlIHsKICAgIHBvc2l0aW9uUG9wdXAoJyMnK3ByZWZpeCsnLWZpZWxkc2V0JywgJyMnK3ByZWZpeCsnLXBvcHVwJywgJyMnK3ByZWZpeCsnLWZpZWxkc2V0IHAubm90ZScpCiAgfQogIHNob3duW3ByZWZpeF0gPSAhc2hvd25bcHJlZml4XQoKICByZXR1cm4gc3RvcEV2ZW50KGV2ZW50KQp9CgpmdW5jdGlvbiBjcnlwdG9Sb3dDbGljayhldmVudCkgewogIGhpZGVQb3B1cCgnI2NyeXB0by1maWVsZHNldCcsICcjY3J5cHRvLXBvcHVwJykKICBzaG93bi5jcnlwdG8gPSBmYWxzZQogICQoJyNjcnlwdG8tcG9wdXAgLnJvdycpLmVhY2goZnVuY3Rpb24oaSwgdCkgewogICAgJCh0KS5yZW1vdmVDbGFzcygnY3VycmVudCcpCiAgfSkKICB2YXIgVCA9ICQoZXZlbnQuY3VycmVudFRhcmdldCkKICBULmFkZENsYXNzKCdjdXJyZW50JykKCiAgdHJ5IHsKICAgIHZhciB1bml0ID0gVC5kYXRhKCd1bml0JykKICAgIGlmKHVuaXQgaW4gYnRjVW5pdHMpIHsKICAgICAgY3J5cHRvU2V0dGluZyA9IHVuaXQKICAgICAgJCgnI2NyeXB0by1zZWxlY3QgLmxhYmVsJykudGV4dCgkKCcuYWJicicsIFQpLnRleHQoKSkKICAgICAgaWYoYnVpbHRDcnlwdG8pIHsKICAgICAgICB0cnkgewogICAgICAgICAgZ2EoJ3NlbmQnLCdldmVudCcsJ0NvbnZlcnRlcicsJ3NldENyeXB0bycsJCgnLmFiYnInLCBUKS50ZXh0KCkpCiAgICAgICAgfSBjYXRjaChlKSB7fQogICAgICB9CiAgICB9CiAgICBpZihsYXN0ID09ICdidGMnKSB7CiAgICAgIHJlY29tcHV0ZUZpYXQoKQogICAgfSBlbHNlIHsKICAgICAgcmVjb21wdXRlQ3J5cHRvKCkKICAgIH0KICAgIHNhdmVTZXR0aW5ncygpCiAgfSBjYXRjaChlKSB7fQoKICByZXR1cm4gc3RvcEV2ZW50KGV2ZW50KQp9CgpmdW5jdGlvbiBoaWRlUG9wdXAocGFyZW50LCBjaGlsZCkgewogICQocGFyZW50KS5yZW1vdmVDbGFzcygncG9wcGVkJykKICAkKGNoaWxkKS5jc3MoJ2Rpc3BsYXknLCAnbm9uZScpCn0KCmZ1bmN0aW9uIHBvc2l0aW9uUG9wdXAocGFyZW50LCBjaGlsZCwgbWludXMpIHsKICB2YXIgUCA9ICQocGFyZW50KSwKICAgIE8gPSBQLm9mZnNldCgpLAogICAgTSA9ICQobWludXMpCiAgJChjaGlsZCkKICAgIC5jc3MoJ2Rpc3BsYXknLCAnYmxvY2snKQogICAgLndpZHRoKFAud2lkdGgoKSkKICAgIC5vZmZzZXQoewogICAgICB0b3A6IE8udG9wICsgUC5oZWlnaHQoKSAtIChpc05hTihNLmhlaWdodCgpKSA/IDAgOiBNLmhlaWdodCgpKSwKICAgICAgbGVmdDogTy5sZWZ0CiAgICB9KQogIFAuYWRkQ2xhc3MoJ3BvcHBlZCcpCn0KCmZ1bmN0aW9uIHNldEZpYXQoKSB7CiAgJCgnI2ZpYXQtc2VsZWN0IC5sYWJlbCcpLnRleHQoZmlhdCkKICBoaWRlUG9wdXAoJyNmaWF0LWZpZWxkc2V0JywgJyNmaWF0LXBvcHVwJykKfQoKZnVuY3Rpb24gcmVjb21wdXRlRmlhdCgpIHsKICB2YXIgY3J5cHRvVmFsdWUgPSArJCgnI2NyeXB0by1maWVsZHNldCBpbnB1dCcpLnZhbCgpCiAgaWYoaXNOYU4oY3J5cHRvVmFsdWUpIHx8IE1hdGguYWJzKGNyeXB0b1ZhbHVlKSA8IDFlLTgpIHsKICAgICQoJyNmaWF0LWZpZWxkc2V0IGlucHV0JykudmFsKDApCiAgICByZXR1cm4KICB9CiAgaWYoY3J5cHRvVmFsdWUgPCAwKSB7CiAgICBjcnlwdG9WYWx1ZSAqPSAtMQogICAgJCgnI2NyeXB0by1maWVsZHNldCBpbnB1dCcpLnZhbChjcnlwdG9WYWx1ZSkKICB9CiAgdmFyIHJhdGUgPSBoaXN0b3JpY01vZGUgPyBoaXN0b3JpY1JhdGUgOiByYXRlc1tmaWF0XQogIGlmKGlzTmFOKHJhdGUpIHx8IHR5cGVvZiByYXRlID09ICJ1bmRlZmluZWQiKSB7CiAgICAkKCcjZmlhdC1maWVsZHNldCBpbnB1dCcpLnZhbCgwKQogICAgcmV0dXJuCiAgfQogIHZhciBmaWF0VmFsdWUgPSBjcnlwdG9WYWx1ZSAqIHJhdGUgKiAoYnRjVW5pdHNbY3J5cHRvU2V0dGluZ10uaSAvIEJUQ0lOVCkKICB2YXIgcGxhY2VzID0gMQogIHdoaWxlKGZpYXRWYWx1ZSA8IE1hdGgucG93KDEwLCAtcGxhY2VzKSkgewogICAgcGxhY2VzKysKICB9CiAgcGxhY2VzKysKICBpZihwbGFjZXMgPiAyMCkKICAgIHBsYWNlcyA9IDIwCiAgJCgnI2ZpYXQtZmllbGRzZXQgaW5wdXQnKS52YWwoZmlhdFZhbHVlLnRvRml4ZWQocGxhY2VzKSkKfQpmdW5jdGlvbiByZWNvbXB1dGVDcnlwdG8oKSB7CiAgdmFyIGZpYXRWYWx1ZSA9ICskKCcjZmlhdC1maWVsZHNldCBpbnB1dCcpLnZhbCgpCiAgaWYoaXNOYU4oZmlhdFZhbHVlKSB8fCBNYXRoLmFicyhmaWF0VmFsdWUpIDwgMWUtOCkgewogICAgJCgnI2NyeXB0by1maWVsZHNldCBpbnB1dCcpLnZhbCgwKQogICAgcmV0dXJuCiAgfQogIGlmKGZpYXRWYWx1ZSA8IDApIHsKICAgIGZpYXRWYWx1ZSAqPSAtMQogICAgJCgnI2ZpYXQtZmllbGRzZXQgaW5wdXQnKS52YWwoZmlhdFZhbHVlKQogIH0KICB2YXIgcmF0ZSA9IGhpc3RvcmljTW9kZSA/IGhpc3RvcmljUmF0ZSA6IHJhdGVzW2ZpYXRdCiAgaWYoaXNOYU4ocmF0ZSkgfHwgdHlwZW9mIHJhdGUgPT0gJ3VuZGVmaW5lZCcpIHsKICAgICQoJyNjcnlwdG8tZmllbGRzZXQgaW5wdXQnKS52YWwoMCkKICAgIHJldHVybgogIH0KICB2YXIgY3J5cHRvVmFsdWUgPSBmaWF0VmFsdWUgLyByYXRlICogKEJUQ0lOVCAvIGJ0Y1VuaXRzW2NyeXB0b1NldHRpbmddLmkpCiAgJCgnI2NyeXB0by1maWVsZHNldCBpbnB1dCcpLnZhbChjcnlwdG9WYWx1ZS50b0ZpeGVkKGJ0Y1VuaXRzW2NyeXB0b1NldHRpbmddLmQpKQp9CgpmdW5jdGlvbiBzdG9wRXZlbnQoZSkgewogIGUucHJldmVudERlZmF1bHQoKQogIGUuc3RvcFByb3BhZ2F0aW9uKCkKCiAgcmV0dXJuIGZhbHNlCn0KCmZ1bmN0aW9uIHJlc2l6ZVBvcHVwcygpIHsKICBpZihzaG93bi5maWF0KQogICAgcG9zaXRpb25Qb3B1cCgnI2ZpYXQtZmllbGRzZXQnLCAnI2ZpYXQtcG9wdXAnLCAnI2ZpYXQtZmllbGRzZXQgcC5ub3RlJykKICBpZihzaG93bi5jcnlwdG8pCiAgICBwb3NpdGlvblBvcHVwKCcjY3J5cHRvLWZpZWxkc2V0JywgJyNjcnlwdG8tcG9wdXAnKQp9Cgp2YXIgcmVzaXplRm4gPSB0aHJvdHRsZShyZXNpemVQb3B1cHMsIDUwKQoKdmFyIGZpbmFsSUQgPSAtMQokKHdpbmRvdykub24oJ3Jlc2l6ZScsIGZ1bmN0aW9uKCkgewogIHJlc2l6ZUZuKCkKICB3aW5kb3cuY2xlYXJUaW1lb3V0KGZpbmFsSUQpCiAgZmluYWxJRCA9IHdpbmRvdy5zZXRUaW1lb3V0KHJlc2l6ZVBvcHVwcywgNTApCn0pCgp2YXIgY2hhbm5lbHMgPSB7fQpmdW5jdGlvbiBzdWJzY3JpYmVGaWF0KCkgewogIHZhciBjaGFubmVsID0gJ3ByaWNlOicrZmlhdC50b0xvd2VyQ2FzZSgpCiAgaWYoY2hhbm5lbHNbY2hhbm5lbF0pIHsKICAgIHJlY29tcHV0ZUZpYXQoKQogICAgcmV0dXJuCiAgfQogIHZhciBoYW5kbGVyID0gKGZ1bmN0aW9uKEZJQVQpIHsKICAgIHJldHVybiBmdW5jdGlvbihkYXRhKSB7CiAgICAgIG9uUmF0ZShkYXRhLCBGSUFUKQogICAgfQogIH0pKGZpYXQpCiAgcmVnaXN0ZXIoY2hhbm5lbCwgaGFuZGxlcikKICBzdWJzY3JpYmUoY2hhbm5lbCkKICBzdWJzY3JpYmUoJ3NvdXJjZTp0b29scy1jb252ZXJ0ZXInKQogIGNoYW5uZWxzW2NoYW5uZWxdID0gdHJ1ZQp9CgovLy8vIGh0dHBzOi8vYm9vdHN0cmFwLWRhdGVwaWNrZXIucmVhZHRoZWRvY3MuaW8vZW4vbGF0ZXN0L29wdGlvbnMuaHRtbAovLwovL2Z1bmN0aW9uIGluaXRpYWxpemVEYXRlUGlja2VyKCkgewovLyAgJCgnI3BpY2tlcicpCi8vICAgIC5kYXRlcGlja2VyKHsKLy8gICAgICBhc3N1bWVOZWFyYnlZZWFyOiB0cnVlLAovLyAgICAgIGF1dG9jbG9zZTogdHJ1ZSwKLy8gICAgICBjbGVhckJ0bjogdHJ1ZSwKLy8gICAgICBkaXNhYmxlVG91Y2hLZXlib2FyZDogdHJ1ZSwKLy8gICAgICBlbmREYXRlOiAneWVzdGVyZGF5JywKLy8gICAgICBmb3JtYXQ6ICd5eXl5LW1tLWRkJywKLy8gICAgICBtYXhWaWV3TW9kZTogJ2RlY2FkZScsCi8vICAgICAgc3RhcnREYXRlOiAnMjAxMC0wNy0xOCcsCi8vICAgICAgekluZGV4T2Zmc2V0OiAxMjAwCi8vICAgIH0pCi8vICAgIC5vbignY2hhbmdlRGF0ZScsIG9uQ2hhbmdlRGF0ZSkKLy8gICAgLm9uKCdmb2N1cycsIGZ1bmN0aW9uKCkgewovLyAgICAgIGhpZGVQb3B1cCgnI2ZpYXQtZmllbGRzZXQnLCAnI2ZpYXQtcG9wdXAnKQovLyAgICAgIGhpZGVQb3B1cCgnI2NyeXB0by1maWVsZHNldCcsICcjY3J5cHRvLXBvcHVwJykKLy8gICAgfSkKLy99CgpmdW5jdGlvbiBvbkNoYW5nZURhdGUoZSkgewogIGlmKHR5cGVvZiBlLmRhdGUgPT09ICd1bmRlZmluZWQnKSB7CiAgICBpZihoaXN0b3JpY01vZGUpIHsKICAgICAgLy8gRGF0ZSBoYXMgYmVlbiBjbGVhcmVkOiByZXN1bWUgcmVhbC10aW1lCiAgICAgIGVuZEhpc3RvcmljTW9kZSgpCiAgICB9CiAgICBoaXN0b3JpY1JlY29tcHV0ZSgpCiAgfSBlbHNlIHsKICAgIGlmKCFoaXN0b3JpY01vZGUpIHsKICAgICAgLy8gRW50ZXJpbmcgaGlzdG9yaWMgbW9kZSwgbGVhdmluZyByZWFsLXRpbWUKICAgICAgc3RhcnRIaXN0b3JpY01vZGUoKQogICAgfQogICAgdmFyIGRhdGVTdHIgPSBkYXRlVG9TdHJpbmcoZS5kYXRlKQogICAgaWYoaGlzdG9yaWNSYXRlc1tkYXRlU3RyXSkgewogICAgICBoaXN0b3JpY1JhdGUgPSBoaXN0b3JpY1JhdGVzW2RhdGVTdHJdCiAgICAgIGhpc3RvcmljRmluYWwoZGF0ZVN0cikKICAgIH0gZWxzZSB7CiAgICAgIGdldEhpc3RvcmljKGRhdGVTdHIpCiAgICB9CiAgICB0cnkgewogICAgICBnYSgnc2VuZCcsJ2V2ZW50JywnQ29udmVydGVyJywnc2V0RGF0ZScsZGF0ZVN0cikKICAgIH0gY2F0Y2goZSkge30KICB9Cn0KCmZ1bmN0aW9uIGhpc3RvcmljUmVjb21wdXRlKCkgewogIGlmKGxhc3QgPT0gJ2J0YycpIHsKICAgIHJlY29tcHV0ZUZpYXQoKQogIH0gZWxzZSB7CiAgICByZWNvbXB1dGVDcnlwdG8oKQogIH0KfQoKZnVuY3Rpb24gZ2V0SGlzdG9yaWMoZGF0ZVN0cikgewogIHZhciBzdWNjZXNzRm4gPSAoZnVuY3Rpb24oRCkgewogICAgcmV0dXJuIGZ1bmN0aW9uKGRhdGEpIHsKICAgICAgaGlzdG9yaWNTdWNjZXNzKGRhdGEsIGRhdGVTdHIpCiAgICB9CiAgfSkoZGF0ZVN0cikKICAkLmFqYXgoewogICAgdXJsOiAnaHR0cHM6Ly9pbmRleC5iaXRjb2luLmNvbS9hcGkvdjAvbG9va3VwP3RpbWU9JytkYXRlU3RyLAogICAgZGF0YVR5cGU6ICdqc29uJywKICAgIGNyb3NzRG9tYWluOiB0cnVlCiAgfSkKICAuZG9uZShzdWNjZXNzRm4pCiAgLmZhaWwoKQogIC5hbHdheXMoKQp9CgpmdW5jdGlvbiBoaXN0b3JpY1N1Y2Nlc3MoZGF0YSwgZGF0ZVN0cikgewogIGlmKGRhdGEuY2xvc2UgJiYgZGF0YS5jbG9zZS5wcmljZSkgewogICAgaGlzdG9yaWNSYXRlID0gK2RhdGEuY2xvc2UucHJpY2UgLyAxMDAKICAgIGhpc3RvcmljUmF0ZXNbZGF0ZVN0cl0gPSBoaXN0b3JpY1JhdGUKICAgIGhpc3RvcmljRmluYWwoZGF0ZVN0cikKICB9Cn0KCmZ1bmN0aW9uIGhpc3RvcmljRmluYWwoZGF0ZVN0cikgewogIGhpc3RvcmljUmVjb21wdXRlKCkKICAkKCcjZmlhdC1maWVsZHNldCAubm90ZSAuaGlzdG9yaWMnKS50ZXh0KCcqICcrZGF0ZVN0cisnIFVUQyBDbG9zZScpCn0KCmZ1bmN0aW9uIGhpc3RvcmljRmFpbCgpIHsKICBoaXN0b3JpY1JhdGUgPSAwCiAgaGlzdG9yaWNSZWNvbXB1dGUoKQp9CgpmdW5jdGlvbiBzdGFydEhpc3RvcmljTW9kZSgpIHsKICBoaXN0b3JpY01vZGUgPSB0cnVlCiAgc3BvdEZpYXQgPSBmaWF0CiAgc2V0RmlhdEN1cnJlbmN5KCdVU0QnKQogICQoJyNmaWF0LXNlbGVjdCAuYXJyb3cnKS5jc3MoJ2Rpc3BsYXknLCdub25lJykKICAkKCcjZmlhdC1zZWxlY3QnKS5jc3MoJ2N1cnNvcicsJ2RlZmF1bHQnKQogICQoJyNmaWF0LWZpZWxkc2V0IC5ub3RlIC5yZWFsLXRpbWUnKS5jc3MoJ2Rpc3BsYXknLCAnbm9uZScpCiAgJCgnI2ZpYXQtZmllbGRzZXQgLm5vdGUgLmhpc3RvcmljJykuY3NzKCdkaXNwbGF5JywgJ2lubGluZScpCn0KCmZ1bmN0aW9uIGVuZEhpc3RvcmljTW9kZSgpIHsKICBoaXN0b3JpY01vZGUgPSBmYWxzZQogIHNldEZpYXRDdXJyZW5jeShzcG90RmlhdCkKICAkKCcjZmlhdC1zZWxlY3QgLmFycm93JykuY3NzKCdkaXNwbGF5JywnJykKICAkKCcjZmlhdC1zZWxlY3QnKS5jc3MoJ2N1cnNvcicsJycpCiAgJCgnI2ZpYXQtZmllbGRzZXQgLm5vdGUgLnJlYWwtdGltZScpLmNzcygnZGlzcGxheScsICdpbmxpbmUnKQogICQoJyNmaWF0LWZpZWxkc2V0IC5ub3RlIC5oaXN0b3JpYycpLmNzcygnZGlzcGxheScsICdub25lJykudGV4dCgnJykKfQoKZnVuY3Rpb24gZGF0ZVRvU3RyaW5nKGQpIHsKICBpZighZCBpbnN0YW5jZW9mIERhdGUpIHsKICAgIHJldHVybiAnJwogIH0KICByZXR1cm4gWwogICAgZC5nZXRGdWxsWWVhcigpLAogICAgbGVhZGluZ1plcm8xMChkLmdldE1vbnRoKCkrMSksCiAgICBsZWFkaW5nWmVybzEwKGQuZ2V0RGF0ZSgpKQogIF0uam9pbignLScpCn0KCmZ1bmN0aW9uIGxlYWRpbmdaZXJvMTAodmFsKSB7CiAgaWYodmFsIDwgMTApIHsKICAgIHJldHVybiAnMCcrdmFsCiAgfQogIHJldHVybiB2YWwKfQoKZnVuY3Rpb24gbWFpbigpIHsKICBsb2FkU2V0dGluZ3MoKQogIGJ1aWxkQ3J5cHRvKCkKICBidWlsZEZpYXQoKQogIHN1YnNjcmliZUZpYXQoKQp9CgpmdW5jdGlvbiB0aHJvdHRsZSAoY2FsbGJhY2ssIGxpbWl0KSB7CiAgdmFyIHdhaXQgPSBmYWxzZQogIHJldHVybiBmdW5jdGlvbiAoKSB7CiAgICBpZiAoIXdhaXQpIHsKICAgICAgY2FsbGJhY2suY2FsbCgpCiAgICAgIHdhaXQgPSB0cnVlCiAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewogICAgICAgIHdhaXQgPSBmYWxzZQogICAgICB9LCBsaW1pdCkKICAgIH0KICB9Cn0KCnZhciBmaWF0TGlzdCA9IFsKICBbIlVTRCIsIlVTIERvbGxhciJdLAogIFsiRVVSIiwiRXVyb3pvbmUgRXVybyJdLAogIFsiR0JQIiwiUG91bmQgU3RlcmxpbmciXSwKICBbIkpQWSIsIkphcGFuZXNlIFllbiJdLAogIFsiQ0FEIiwiQ2FuYWRpYW4gRG9sbGFyIl0sCiAgWyJBVUQiLCJBdXN0cmFsaWFuIERvbGxhciJdLAogIFsiQ05ZIiwiQ2hpbmVzZSBZdWFuIl0sCiAgWyJDSEYiLCJTd2lzcyBGcmFuYyJdLAogIFsiU0VLIiwiU3dlZGlzaCBLcm9uYSJdLAogIFsiTlpEIiwiTmV3IFplYWxhbmQgRG9sbGFyIl0sCiAgWyJLUlciLCJTb3V0aCBLb3JlYW4gV29uIl0sCiAgWyJBRUQiLCJVQUUgRGlyaGFtIl0sCiAgWyJBRk4iLCJBZmdoYW4gQWZnaGFuaSJdLAogIFsiQUxMIiwiQWxiYW5pYW4gTGVrIl0sCiAgWyJBTUQiLCJBcm1lbmlhbiBEcmFtIl0sCiAgWyJBTkciLCJOZXRoZXJsYW5kcyBBbnRpbGxlYW4gR3VpbGRlciJdLAogIFsiQU9BIiwiQW5nb2xhbiBLd2FuemEiXSwKICBbIkFSUyIsIkFyZ2VudGluZSBQZXNvIl0sCiAgWyJBV0ciLCJBcnViYW4gRmxvcmluIl0sCiAgWyJBWk4iLCJBemVyYmFpamFuaSBNYW5hdCJdLAogIFsiQkFNIiwiQm9zbmlhLUhlcnplZ292aW5hIENvbnZlcnRpYmxlIE1hcmsiXSwKICBbIkJCRCIsIkJhcmJhZGlhbiBEb2xsYXIiXSwKICBbIkJEVCIsIkJhbmdsYWRlc2hpIFRha2EiXSwKICBbIkJHTiIsIkJ1bGdhcmlhbiBMZXYiXSwKICBbIkJIRCIsIkJhaHJhaW5pIERpbmFyIl0sCiAgWyJCSUYiLCJCdXJ1bmRpYW4gRnJhbmMiXSwKICBbIkJNRCIsIkJlcm11ZGFuIERvbGxhciJdLAogIFsiQk5EIiwiQnJ1bmVpIERvbGxhciJdLAogIFsiQk9CIiwiQm9saXZpYW4gQm9saXZpYW5vIl0sCiAgWyJCUkwiLCJCcmF6aWxpYW4gUmVhbCJdLAogIFsiQlNEIiwiQmFoYW1pYW4gRG9sbGFyIl0sCiAgWyJCVE4iLCJCaHV0YW5lc2UgTmd1bHRydW0iXSwKICBbIkJXUCIsIkJvdHN3YW5hbiBQdWxhIl0sCiAgWyJCWVIiLCJCZWxhcnVzaWFuIFJ1YmxlIl0sCiAgWyJCWkQiLCJCZWxpemUgRG9sbGFyIl0sCiAgWyJDREYiLCJDb25nb2xlc2UgRnJhbmMiXSwKICBbIkNMRiIsIkNoaWxlYW4gVW5pdCBvZiBBY2NvdW50IChVRikiXSwKICBbIkNMUCIsIkNoaWxlYW4gUGVzbyJdLAogIFsiQ09QIiwiQ29sb21iaWFuIFBlc28iXSwKICBbIkNSQyIsIkNvc3RhIFJpY2FuIENvbMOzbiJdLAogIFsiQ1VQIiwiQ3ViYW4gUGVzbyJdLAogIFsiQ1ZFIiwiQ2FwZSBWZXJkZWFuIEVzY3VkbyJdLAogIFsiQ1pLIiwiQ3plY2ggS29ydW5hIl0sCiAgWyJESkYiLCJEamlib3V0aWFuIEZyYW5jIl0sCiAgWyJES0siLCJEYW5pc2ggS3JvbmUiXSwKICBbIkRPUCIsIkRvbWluaWNhbiBQZXNvIl0sCiAgWyJEWkQiLCJBbGdlcmlhbiBEaW5hciJdLAogIFsiRUVLIiwiRXN0b25pYW4gS3Jvb24iXSwKICBbIkVHUCIsIkVneXB0aWFuIFBvdW5kIl0sCiAgWyJFVEIiLCJFdGhpb3BpYW4gQmlyciJdLAogIFsiRkpEIiwiRmlqaWFuIERvbGxhciJdLAogIFsiRktQIiwiRmFsa2xhbmQgSXNsYW5kcyBQb3VuZCJdLAogIFsiR0VMIiwiR2VvcmdpYW4gTGFyaSJdLAogIFsiR0hTIiwiR2hhbmFpYW4gQ2VkaSJdLAogIFsiR0lQIiwiR2licmFsdGFyIFBvdW5kIl0sCiAgWyJHTUQiLCJHYW1iaWFuIERhbGFzaSJdLAogIFsiR05GIiwiR3VpbmVhbiBGcmFuYyJdLAogIFsiR1RRIiwiR3VhdGVtYWxhbiBRdWV0emFsIl0sCiAgWyJHWUQiLCJHdXlhbmFlc2UgRG9sbGFyIl0sCiAgWyJIS0QiLCJIb25nIEtvbmcgRG9sbGFyIl0sCiAgWyJITkwiLCJIb25kdXJhbiBMZW1waXJhIl0sCiAgWyJIUksiLCJDcm9hdGlhbiBLdW5hIl0sCiAgWyJIVEciLCJIYWl0aWFuIEdvdXJkZSJdLAogIFsiSFVGIiwiSHVuZ2FyaWFuIEZvcmludCJdLAogIFsiSURSIiwiSW5kb25lc2lhbiBSdXBpYWgiXSwKICBbIklMUyIsIklzcmFlbGkgU2hla2VsIl0sCiAgWyJJTlIiLCJJbmRpYW4gUnVwZWUiXSwKICBbIklRRCIsIklyYXFpIERpbmFyIl0sCiAgWyJJUlIiLCJJcmFuaWFuIFJpYWwiXSwKICBbIklTSyIsIkljZWxhbmRpYyBLcsOzbmEiXSwKICBbIkpFUCIsIkplcnNleSBQb3VuZCJdLAogIFsiSk1EIiwiSmFtYWljYW4gRG9sbGFyIl0sCiAgWyJKT0QiLCJKb3JkYW5pYW4gRGluYXIiXSwKICBbIktFUyIsIktlbnlhbiBTaGlsbGluZyJdLAogIFsiS0dTIiwiS3lyZ3lzdGFuaSBTb20iXSwKICBbIktIUiIsIkNhbWJvZGlhbiBSaWVsIl0sCiAgWyJLTUYiLCJDb21vcmlhbiBGcmFuYyJdLAogIFsiS1BXIiwiTm9ydGggS29yZWFuIFdvbiJdLAogIFsiS1dEIiwiS3V3YWl0aSBEaW5hciJdLAogIFsiS1lEIiwiQ2F5bWFuIElzbGFuZHMgRG9sbGFyIl0sCiAgWyJLWlQiLCJLYXpha2hzdGFuaSBUZW5nZSJdLAogIFsiTEFLIiwiTGFvdGlhbiBLaXAiXSwKICBbIkxCUCIsIkxlYmFuZXNlIFBvdW5kIl0sCiAgWyJMS1IiLCJTcmkgTGFua2FuIFJ1cGVlIl0sCiAgWyJMUkQiLCJMaWJlcmlhbiBEb2xsYXIiXSwKICBbIkxTTCIsIkxlc290aG8gTG90aSJdLAogIFsiTFRMIiwiTGl0aHVhbmlhbiBMaXRhcyJdLAogIFsiTFZMIiwiTGF0dmlhbiBMYXRzIl0sCiAgWyJMWUQiLCJMaWJ5YW4gRGluYXIiXSwKICBbIk1BRCIsIk1vcm9jY2FuIERpcmhhbSJdLAogIFsiTURMIiwiTW9sZG92YW4gTGV1Il0sCiAgWyJNR0EiLCJNYWxhZ2FzeSBBcmlhcnkiXSwKICBbIk1LRCIsIk1hY2Vkb25pYW4gRGVuYXIiXSwKICBbIk1NSyIsIk15YW5tYSBLeWF0Il0sCiAgWyJNTlQiLCJNb25nb2xpYW4gVHVncmlrIl0sCiAgWyJNT1AiLCJNYWNhbmVzZSBQYXRhY2EiXSwKICBbIk1STyIsIk1hdXJpdGFuaWFuIE91Z3VpeWEiXSwKICBbIk1VUiIsIk1hdXJpdGlhbiBSdXBlZSJdLAogIFsiTVZSIiwiTWFsZGl2aWFuIFJ1Zml5YWEiXSwKICBbIk1XSyIsIk1hbGF3aWFuIEt3YWNoYSJdLAogIFsiTVhOIiwiTWV4aWNhbiBQZXNvIl0sCiAgWyJNWVIiLCJNYWxheXNpYW4gUmluZ2dpdCJdLAogIFsiTVpOIiwiTW96YW1iaWNhbiBNZXRpY2FsIl0sCiAgWyJOQUQiLCJOYW1pYmlhbiBEb2xsYXIiXSwKICBbIk5HTiIsIk5pZ2VyaWFuIE5haXJhIl0sCiAgWyJOSU8iLCJOaWNhcmFndWFuIEPDs3Jkb2JhIl0sCiAgWyJOT0siLCJOb3J3ZWdpYW4gS3JvbmUiXSwKICBbIk5QUiIsIk5lcGFsZXNlIFJ1cGVlIl0sCiAgWyJPTVIiLCJPbWFuaSBSaWFsIl0sCiAgWyJQQUIiLCJQYW5hbWFuaWFuIEJhbGJvYSJdLAogIFsiUEVOIiwiUGVydXZpYW4gTnVldm8gU29sIl0sCiAgWyJQR0siLCJQYXB1YSBOZXcgR3VpbmVhbiBLaW5hIl0sCiAgWyJQSFAiLCJQaGlsaXBwaW5lIFBlc28iXSwKICBbIlBLUiIsIlBha2lzdGFuaSBSdXBlZSJdLAogIFsiUExOIiwiUG9saXNoIFpsb3R5Il0sCiAgWyJQWUciLCJQYXJhZ3VheWFuIEd1YXJhbmkiXSwKICBbIlFBUiIsIlFhdGFyaSBSaWFsIl0sCiAgWyJST04iLCJSb21hbmlhbiBMZXUiXSwKICBbIlJTRCIsIlNlcmJpYW4gRGluYXIiXSwKICBbIlJVQiIsIlJ1c3NpYW4gUnVibGUiXSwKICBbIlJXRiIsIlJ3YW5kYW4gRnJhbmMiXSwKICBbIlNBUiIsIlNhdWRpIFJpeWFsIl0sCiAgWyJTQkQiLCJTb2xvbW9uIElzbGFuZHMgRG9sbGFyIl0sCiAgWyJTQ1IiLCJTZXljaGVsbG9pcyBSdXBlZSJdLAogIFsiU0RHIiwiU3VkYW5lc2UgUG91bmQiXSwKICBbIlNHRCIsIlNpbmdhcG9yZSBEb2xsYXIiXSwKICBbIlNIUCIsIlNhaW50IEhlbGVuYSBQb3VuZCJdLAogIFsiU0xMIiwiU2llcnJhIExlb25lYW4gTGVvbmUiXSwKICBbIlNPUyIsIlNvbWFsaSBTaGlsbGluZyJdLAogIFsiU1JEIiwiU3VyaW5hbWVzZSBEb2xsYXIiXSwKICBbIlNURCIsIlPDo28gVG9tw6kgYW5kIFByw61uY2lwZSBEb2JyYSJdLAogIFsiU1ZDIiwiU2FsdmFkb3JhbiBDb2zDs24iXSwKICBbIlNZUCIsIlN5cmlhbiBQb3VuZCJdLAogIFsiU1pMIiwiU3dhemkgTGlsYW5nZW5pIl0sCiAgWyJUSEIiLCJUaGFpIEJhaHQiXSwKICBbIlRKUyIsIlRhamlraXN0YW5pIFNvbW9uaSJdLAogIFsiVE1UIiwiVHVya21lbmlzdGFuaSBNYW5hdCJdLAogIFsiVE5EIiwiVHVuaXNpYW4gRGluYXIiXSwKICBbIlRPUCIsIlRvbmdhbiBQYcq7YW5nYSJdLAogIFsiVFJZIiwiVHVya2lzaCBMaXJhIl0sCiAgWyJUVEQiLCJUcmluaWRhZCBhbmQgVG9iYWdvIERvbGxhciJdLAogIFsiVFdEIiwiTmV3IFRhaXdhbiBEb2xsYXIiXSwKICBbIlRaUyIsIlRhbnphbmlhbiBTaGlsbGluZyJdLAogIFsiVUFIIiwiVWtyYWluaWFuIEhyeXZuaWEiXSwKICBbIlVHWCIsIlVnYW5kYW4gU2hpbGxpbmciXSwKICBbIlVZVSIsIlVydWd1YXlhbiBQZXNvIl0sCiAgWyJVWlMiLCJVemJla2lzdGFuIFNvbSJdLAogIFsiVkVGIiwiVmVuZXp1ZWxhbiBCb2zDrXZhciBGdWVydGUiXSwKICBbIlZORCIsIlZpZXRuYW1lc2UgRG9uZyJdLAogIFsiVlVWIiwiVmFudWF0dSBWYXR1Il0sCiAgWyJXU1QiLCJTYW1vYW4gVGFsYSJdLAogIFsiWEFGIiwiQ0ZBIEZyYW5jIEJFQUMiXSwKICBbIlhBRyIsIlNpbHZlciAodHJveSBvdW5jZSkiXSwKICBbIlhBVSIsIkdvbGQgKHRyb3kgb3VuY2UpIl0sCiAgWyJYQ0QiLCJFYXN0IENhcmliYmVhbiBEb2xsYXIiXSwKICBbIlhPRiIsIkNGQSBGcmFuYyBCQ0VBTyJdLAogIFsiWFBGIiwiQ0ZQIEZyYW5jIl0sCiAgWyJZRVIiLCJZZW1lbmkgUmlhbCJdLAogIFsiWkFSIiwiU291dGggQWZyaWNhbiBSYW5kIl0sCiAgWyJaTVciLCJaYW1iaWFuIEt3YWNoYSJdLAogIFsiWldMIiwiWmltYmFid2VhbiBEb2xsYXIiXQpdCgp2YXIgbGFuZ01hcCA9IHsKICAnVVNEJzogJ2VuLVVTLGVzLVVTJywKICAiRVVSIjogJ2JyLGNvLGRlLUZSLGZyLUZSLG9jLGRhLURFLGRhLURFLGFuLGNhLGVzLUVTLGV1LGdsLGRlLUlULGZyLUlULGl0LUlULHNjLGVsLUdSJywgLy8ibmFtZSI6IkV1cm96b25lIEV1cm8iLAogICJHQlAiOiAnY3ktR0IsZW4tYm9vbnQsZW4tR0IsZW4tR0Itb2VkLGVuLXNjb3VzZSxmci1HQixnYS1HQicsCiAgIkpQWSI6ICdqYScsCiAgIkNBRCI6ICdjcixlbi1DQSxmci1DQSxpdScsCiAgIkFVRCI6ICdlbi1BVScsCiAgIkNOWSI6ICdibyxpLWhhayxpaSxZaSx6YSx6aC1DTix6aC1nYW4semgtZ3VveXUsemgtaGFra2EsemgtSGFucyx6aC1IYW50LHpoLXd1dSx6aC14aWFuZyx6aC15dWUnLAogICJDSEYiOiAnZGUtQ0gsZnItQ0gsaXQtQ0gscm0nLAogICJTRUsiOiAnZmktU0Usc2Usc21hLHNtZSxzdi1TRScsCiAgIk5aRCI6ICdlbi1OWixtaScsCiAgIktSVyI6ICdrby1LcicsCiAgIkFFRCI6ICdhci1BRScsCiAgIkFGTiI6ICdmYS1BRixwcyx1Zyx1ei1BRicsCiAgIkFMTCI6ICdzcScsCiAgIkFNRCI6ICdoeScsCiAgIkFORyI6ICdubC1BTicsCiAgIkFPQSI6ICdrZyxraixwdC1BTycsCiAgIkFSUyI6ICdjeS1BUixlcy1BUixnbicsCiAgIkFXRyI6ICdubC1BVycsCiAgIkFaTiI6ICdhdixheiwsYXotQXJhYixhei1DeXJsLGF6LUxhdG4sb3MnLAogICJCQU0iOiAnYnMsaHItQkEsc3ItQkEnLAogICJCQkQiOiAnZW4tQkInLAogICJCRFQiOiAnYm4tQkQnLAogICJCR04iOiAnYmcsY3UsdHItQkcnLAogICJCSEQiOiAnYXItQkgnLAogICJCSUYiOiAnJywgLy8gQnVydW5kaWFuIEZyYW5jCiAgIkJNRCI6ICcnLCAvLyBCZXJtdWRhbiBEb2xsYXIKICAiQk5EIjogJycsIC8vIEJydW5laSBEb2xsYXIKICAiQk9CIjogJycsIC8vIEJvbGl2aWFuIEJvbGl2aWFubwogICJCUkwiOiAnJywgLy8gQnJhemlsaWFuIFJlYWwKICAiQlNEIjogJycsIC8vIEJhaGFtaWFuIERvbGxhcgogICJCVE4iOiAnJywgLy8gQmh1dGFuZXNlIE5ndWx0cnVtCiAgIkJXUCI6ICcnLCAvLyBCb3Rzd2FuYW4gUHVsYQogICJCWVIiOiAnJywgLy8gQmVsYXJ1c2lhbiBSdWJsZQogICJCWkQiOiAnJywgLy8gQmVsaXplIERvbGxhcgogICJDREYiOiAnJywgLy8gQ29uZ29sZXNlIEZyYW5jCiAgIkNMRiI6ICcnLCAvLyBDaGlsZWFuIFVuaXQgb2YgQWNjb3VudCAoVUYpCiAgIkNMUCI6ICcnLCAvLyBDaGlsZWFuIFBlc28KICAiQ09QIjogJycsIC8vIENvbG9tYmlhbiBQZXNvCiAgIkNSQyI6ICcnLCAvLyBDb3N0YSBSaWNhbiBDb2zDs24KICAiQ1VQIjogJycsIC8vIEN1YmFuIFBlc28KICAiQ1ZFIjogJycsIC8vIENhcGUgVmVyZGVhbiBFc2N1ZG8KICAiQ1pLIjogJycsIC8vIEN6ZWNoIEtvcnVuYQogICJESkYiOiAnJywgLy8gRGppYm91dGlhbiBGcmFuYwogICJES0siOiAnJywgLy8gRGFuaXNoIEtyb25lCiAgIkRPUCI6ICcnLCAvLyBEb21pbmljYW4gUGVzbwogICJEWkQiOiAnJywgLy8gQWxnZXJpYW4gRGluYXIKICAiRUVLIjogJycsIC8vIEVzdG9uaWFuIEtyb29uCiAgIkVHUCI6ICcnLCAvLyBFZ3lwdGlhbiBQb3VuZAogICJFVEIiOiAnJywgLy8gRXRoaW9waWFuIEJpcnIKICAiRkpEIjogJycsIC8vIEZpamlhbiBEb2xsYXIKICAiRktQIjogJycsIC8vIEZhbGtsYW5kIElzbGFuZHMgUG91bmQKICAiR0VMIjogJycsIC8vIEdlb3JnaWFuIExhcmkKICAiR0hTIjogJycsIC8vIEdoYW5haWFuIENlZGkKICAiR0lQIjogJycsIC8vIEdpYnJhbHRhciBQb3VuZAogICJHTUQiOiAnJywgLy8gR2FtYmlhbiBEYWxhc2kKICAiR05GIjogJycsIC8vIEd1aW5lYW4gRnJhbmMKICAiR1RRIjogJycsIC8vIEd1YXRlbWFsYW4gUXVldHphbAogICJHWUQiOiAnJywgLy8gR3V5YW5hZXNlIERvbGxhcgogICJIS0QiOiAnZW4tSEssemgtSGFudCx6aC1IYW50LUhLLHpoLUhLJywKICAiSE5MIjogJycsIC8vIEhvbmR1cmFuIExlbXBpcmEKICAiSFJLIjogJycsIC8vIENyb2F0aWFuIEt1bmEKICAiSFRHIjogJycsIC8vIEhhaXRpYW4gR291cmRlCiAgIkhVRiI6ICcnLCAvLyBIdW5nYXJpYW4gRm9yaW50CiAgIklEUiI6ICcnLCAvLyBJbmRvbmVzaWFuIFJ1cGlhaAogICJJTFMiOiAnYXItSUwsZW4tSUwsaGUseWknLAogICJJTlIiOiAnYXItSU4sYXMsYmgsYm4tSU4sZW4tSU4sZ3UsaGksa24sa29rLGtzLG1sLG1yLG5lLG9yLHBhLHBpLHNhLHNkLUlOLHRhLUlOLHRlLHVyLUlOJywKICAiSVFEIjogJycsIC8vIElyYXFpIERpbmFyCiAgIklSUiI6ICcnLCAvLyBJcmFuaWFuIFJpYWwKICAiSVNLIjogJycsIC8vIEljZWxhbmRpYyBLcsOzbmEKICAiSkVQIjogJycsIC8vIEplcnNleSBQb3VuZAogICJKTUQiOiAnJywgLy8gSmFtYWljYW4gRG9sbGFyCiAgIkpPRCI6ICcnLCAvLyBKb3JkYW5pYW4gRGluYXIKICAiS0VTIjogJycsIC8vIEtlbnlhbiBTaGlsbGluZwogICJLR1MiOiAnJywgLy8gS3lyZ3lzdGFuaSBTb20KICAiS0hSIjogJycsIC8vIENhbWJvZGlhbiBSaWVsCiAgIktNRiI6ICcnLCAvLyBDb21vcmlhbiBGcmFuYwogICJLUFciOiAnJywgLy8gTm9ydGggS29yZWFuIFdvbgogICJLV0QiOiAnJywgLy8gS3V3YWl0aSBEaW5hcgogICJLWUQiOiAnJywgLy8gQ2F5bWFuIElzbGFuZHMgRG9sbGFyCiAgIktaVCI6ICcnLCAvLyBLYXpha2hzdGFuaSBUZW5nZQogICJMQUsiOiAnJywgLy8gTGFvdGlhbiBLaXAKICAiTEJQIjogJycsIC8vIExlYmFuZXNlIFBvdW5kCiAgIkxLUiI6ICcnLCAvLyBTcmkgTGFua2FuIFJ1cGVlCiAgIkxSRCI6ICcnLCAvLyBMaWJlcmlhbiBEb2xsYXIKICAiTFNMIjogJycsIC8vIExlc290aG8gTG90aQogICJMVEwiOiAnJywgLy8gTGl0aHVhbmlhbiBMaXRhcwogICJMVkwiOiAnJywgLy8gTGF0dmlhbiBMYXRzCiAgIkxZRCI6ICcnLCAvLyBMaWJ5YW4gRGluYXIKICAiTUFEIjogJycsIC8vIE1vcm9jY2FuIERpcmhhbQogICJNREwiOiAnJywgLy8gTW9sZG92YW4gTGV1CiAgIk1HQSI6ICcnLCAvLyBNYWxhZ2FzeSBBcmlhcnkKICAiTUtEIjogJycsIC8vIE1hY2Vkb25pYW4gRGVuYXIKICAiTU1LIjogJycsIC8vIE15YW5tYSBLeWF0CiAgIk1OVCI6ICcnLCAvLyBNb25nb2xpYW4gVHVncmlrCiAgIk1PUCI6ICcnLCAvLyBNYWNhbmVzZSBQYXRhY2EKICAiTVJPIjogJycsIC8vIE1hdXJpdGFuaWFuIE91Z3VpeWEKICAiTVVSIjogJycsIC8vIE1hdXJpdGlhbiBSdXBlZQogICJNVlIiOiAnJywgLy8gTWFsZGl2aWFuIFJ1Zml5YWEKICAiTVdLIjogJycsIC8vIE1hbGF3aWFuIEt3YWNoYQogICJNWE4iOiAnJywgLy8gTWV4aWNhbiBQZXNvCiAgIk1ZUiI6ICcnLCAvLyBNYWxheXNpYW4gUmluZ2dpdAogICJNWk4iOiAnJywgLy8gTW96YW1iaWNhbiBNZXRpY2FsCiAgIk5BRCI6ICcnLCAvLyBOYW1pYmlhbiBEb2xsYXIKICAiTkdOIjogJycsIC8vIE5pZ2VyaWFuIE5haXJhCiAgIk5JTyI6ICcnLCAvLyBOaWNhcmFndWFuIEPDs3Jkb2JhCiAgIk5PSyI6ICduYixubixubyxuby1ib2ssbm8tbnluJywKICAiTlBSIjogJycsIC8vIE5lcGFsZXNlIFJ1cGVlCiAgIk9NUiI6ICcnLCAvLyBPbWFuaSBSaWFsCiAgIlBBQiI6ICcnLCAvLyBQYW5hbWFuaWFuIEJhbGJvYQogICJQRU4iOiAnJywgLy8gUGVydXZpYW4gTnVldm8gU29sCiAgIlBHSyI6ICcnLCAvLyBQYXB1YSBOZXcgR3VpbmVhbiBLaW5hCiAgIlBIUCI6ICcnLCAvLyBQaGlsaXBwaW5lIFBlc28KICAiUEtSIjogJycsIC8vIFBha2lzdGFuaSBSdXBlZQogICJQTE4iOiAnZGUtUEwscGwnLAogICJQWUciOiAnJywgLy8gUGFyYWd1YXlhbiBHdWFyYW5pCiAgIlFBUiI6ICcnLCAvLyBRYXRhcmkgUmlhbAogICJST04iOiAnJywgLy8gUm9tYW5pYW4gTGV1CiAgIlJTRCI6ICcnLCAvLyBTZXJiaWFuIERpbmFyCiAgIlJVQiI6ICdhdixiYSxjZSxjdSxjdixrdixvcyxydS1SVSx0dCcsCiAgIlJXRiI6ICcnLCAvLyBSd2FuZGFuIEZyYW5jCiAgIlNBUiI6ICcnLCAvLyBTYXVkaSBSaXlhbAogICJTQkQiOiAnJywgLy8gU29sb21vbiBJc2xhbmRzIERvbGxhcgogICJTQ1IiOiAnJywgLy8gU2V5Y2hlbGxvaXMgUnVwZWUKICAiU0RHIjogJycsIC8vIFN1ZGFuZXNlIFBvdW5kCiAgIlNHRCI6ICdibi1TRyxlbi1TRyxtcy1TRyx0YS1TRyx6aC1IYW5zLVNHLHpoLVNHJywKICAiU0hQIjogJycsIC8vIFNhaW50IEhlbGVuYSBQb3VuZAogICJTTEwiOiAnJywgLy8gU2llcnJhIExlb25lYW4gTGVvbmUKICAiU09TIjogJycsIC8vIFNvbWFsaSBTaGlsbGluZwogICJTUkQiOiAnJywgLy8gU3VyaW5hbWVzZSBEb2xsYXIKICAiU1REIjogJycsIC8vIFPDo28gVG9tw6kgYW5kIFByw61uY2lwZSBEb2JyYQogICJTVkMiOiAnJywgLy8gU2FsdmFkb3JhbiBDb2zDs24KICAiU1lQIjogJycsIC8vIFN5cmlhbiBQb3VuZAogICJTWkwiOiAnJywgLy8gU3dhemkgTGlsYW5nZW5pCiAgIlRIQiI6ICdzaSx0aCcsCiAgIlRKUyI6ICcnLCAvLyBUYWppa2lzdGFuaSBTb21vbmkKICAiVE1UIjogJycsIC8vIFR1cmttZW5pc3RhbmkgTWFuYXQKICAiVE5EIjogJycsIC8vIFR1bmlzaWFuIERpbmFyCiAgIlRPUCI6ICcnLCAvLyBUb25nYW4gUGHKu2FuZ2EKICAiVFJZIjogJ3RyLVRSJywKICAiVFREIjogJycsIC8vIFRyaW5pZGFkIGFuZCBUb2JhZ28gRG9sbGFyCiAgIlRXRCI6ICcnLCAvLyBOZXcgVGFpd2FuIERvbGxhcgogICJUWlMiOiAnJywgLy8gVGFuemFuaWFuIFNoaWxsaW5nCiAgIlVBSCI6ICcnLCAvLyBVa3JhaW5pYW4gSHJ5dm5pYQogICJVR1giOiAnJywgLy8gVWdhbmRhbiBTaGlsbGluZwogICJVWVUiOiAnJywgLy8gVXJ1Z3VheWFuIFBlc28KICAiVVpTIjogJycsIC8vIFV6YmVraXN0YW4gU29tCiAgIlZFRiI6ICdlcy1WRScsIC8vIFZlbmV6dWVsYW4gQm9sw612YXIgRnVlcnRlCiAgIlZORCI6ICd2aScsIC8vIFZpZXRuYW1lc2UgRG9uZwogICJWVVYiOiAnJywgLy8gVmFudWF0dSBWYXR1CiAgIldTVCI6ICcnLCAvLyBTYW1vYW4gVGFsYQogICJYQUYiOiAnJywgLy8gQ0ZBIEZyYW5jIEJFQUMKICAiWENEIjogJ2VuLUtOJywgLy8gRWFzdCBDYXJpYmJlYW4gRG9sbGFyCiAgIlhPRiI6ICcnLCAvLyBDRkEgRnJhbmMgQkNFQU8KICAiWFBGIjogJycsIC8vIENGUCBGcmFuYwogICJZRVIiOiAnJywgLy8gWWVtZW5pIFJpYWwKICAiWkFSIjogJ2FmLGVuLVpBLG5yLHNzLVpBLHRuLVpBLHRzLHZlLHhoJywKICAiWk1XIjogJycsIC8vIFphbWJpYW4gS3dhY2hhCiAgIlpXTCI6ICcnLCAvLyBaaW1iYWJ3ZWFuIERvbGxhcgp9Cg=="}},"time_used":17521,"timings":{"blocked":16521,"dns":0,"connect":0,"send":0,"wait":1000,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/new/expertise3.jpg","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.341Z","timestamp":1785143908341,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /image/new/expertise3.jpg HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:46 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:51 GMT\r\nETag: \"1539c-63ccd443bdcc0\"\r\nAccept-Ranges: bytes\r\nContent-Length: 86940\r\nVary: User-Agent\r\nKeep-Alive: timeout=5, max=95\r\nConnection: Keep-Alive\r\nContent-Type: image/jpeg\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]},{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]}],"data":{"size":86940,"size_decoded":87260,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=0], baseline, precision 8, 534x357, components 3","md5":"91119c8713f7eff74f62bccd9d350522","sha1":"ad516be7e53ba2850c9ba7c994e79bb8f0c8404e","sha256":"5f909e06833c07da1fa8c8054e6373098d3f038609a2f0d5ef9e09e7ee72c440","sha512":"f139617bc5a334500540e6b0e0f0fa994aff02f2fdd2dc2940985fbd2695c9122e7d8c869cec521a5f6a15342c0fdffa9adee580ca792c9385bedfdc58dd3244","ssdeep":"1536:zUpCm5vQ584EyD3bfKLI8EL00p+WyurfDjJ/gu+T3XuSGyWi+oCaT3e+BcPZ:z03vt4EyD21600kOwLuSGyKo9T3tBa","tlshash":"ce83024b72e685c45d90442c8720fd7e0bee33cb956fc670eae3a992221a35345dd62f","first_seen":"2023-11-06T23:58:36Z","last_seen":"2026-08-06T06:09:10.629829Z","times_seen":47,"resource_available":false,"data":"/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABGAAD/4QPCaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjYtYzEzOCA3OS4xNTk4MjQsIDIwMTYvMDkvMTQtMDE6MDk6MDEgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcFJpZ2h0cz0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3JpZ2h0cy8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bXBSaWdodHM6TWFya2VkPSJGYWxzZSIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkZGOURFNEUxM0UyRUU2MTFBMkE4Rjc5OEI3Qzk3RUY5IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjEzNDc3RkZFNDQwMjExRThCRjJGOTgxODA3NjMzQTQxIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjEzNDc3RkZENDQwMjExRThCRjJGOTgxODA3NjMzQTQxIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE3IChXaW5kb3dzKSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQ3QkRCMDczNDNGNjExRThCQjFEQTM0OTUyMDZGNjFDIiBzdFJlZjpkb2N1bWVu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"}},"time_used":18299,"timings":{"blocked":17901,"dns":0,"connect":0,"send":0,"wait":245,"receive":153,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/clients-log/logo6.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.352Z","timestamp":1785143908352,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/clients-log/logo6.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"cdn.gtranslate.net/widgets/latest/float.js","fqdn":"cdn.gtranslate.net","domain":"gtranslate.net","tld":"net"},"ip":{"addr":"104.26.13.42","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.310Z","timestamp":1785143908310,"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":"gtranslate.net","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Thu, 25 Jun 2026 02:04:42 GMT","end":"Wed, 23 Sep 2026 03:04:28 GMT"},"fingerprint":{"sha1":"7E:41:C7:FB:AD:E5:FE:5D:B3:02:94:54:88:D4:EE:DD:EA:46:BC:9C","sha256":"0F:62:03:25:71:9E:01:C5:E5:A6:FD:62:89:4B:D6:28:CC:04:66:24:A5:08:2F:E1:17:68:AA:E7:51:AA:E9:A3"}}},"request":{"raw":"GET /widgets/latest/float.js HTTP/1.1\r\nHost: cdn.gtranslate.net\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://scromegatrade.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 09:18:28 GMT\r\ncontent-type: application/javascript\r\nserver: cloudflare\r\nlast-modified: Wed, 06 May 2026 19:42:51 GMT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\nexpires: Thu, 01 Jul 2027 02:02:58 GMT\r\ncache-control: max-age=31536000\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=dbAkWtie6QJCLD5WFWTRTcfrK2VJpb%2FUogdM8rAozz%2B2l3p9g17seivQcHUh7iYKi2cn7GmGgvRSC80DH2LG%2FFmWQABQ09SJiJz00ddgh1Nqj8ySsDeWTHmPkmu3K%2BAe06GqDw%3D%3D\"}]}\r\nage: 2272530\r\ncf-cache-status: HIT\r\netag: W/\"69fb99bb-5a62\"\r\ncontent-encoding: br\r\ncf-ray: a21a8e930944b4f3-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":23138,"size_decoded":7507,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (3129)","md5":"68ee10aa7ede43f8bb3293b220daf775","sha1":"1f26a636577ea9aaa524c0a23ae8cf342be925e9","sha256":"76e28fc0425d80422e45305464ada45c7c9b4a00132c65012c737c22814c259f","sha512":"531d2baf5f4d61c0def2c5f45fd8d9b69b143c24d0474a01291d858b086b45c233d1cca885cc722d6e6eaff3f8cb62e637df797beca8f5aec20d090f0e23fe08","ssdeep":"384:UzCKMPZATN09o0mtvwfEXMb5TZ/dDszCnfYI:UVMhAh060svwcX0T1dhh","tlshash":"10a2c62921b3003a49531265efff165c607a02b78004ec24bfaeddc2dfd59a9caa77d5","first_seen":"2026-05-06T20:53:53.345523Z","last_seen":"2026-08-11T04:45:48.823607Z","times_seen":2294,"resource_available":true,"data":"LyohIENvcHlyaWdodCAoQykgR1RyYW5zbGF0ZSBJbmMuICovCihmdW5jdGlvbigpe2lmKCEoZG9jdW1lbnQuY3VycmVudFNjcmlwdCBpbnN0YW5jZW9mIEhUTUxTY3JpcHRFbGVtZW50KSlyZXR1cm47CiAgICB2YXIgZ3QgPSB3aW5kb3cuZ3RyYW5zbGF0ZVNldHRpbmdzIHx8IHt9OwogICAgZ3QgPSBndFtkb2N1bWVudC5jdXJyZW50U2NyaXB0LmdldEF0dHJpYnV0ZSgnZGF0YS1ndC13aWRnZXQtaWQnKV0gfHwgZ3Q7CgogICAgaWYoZ3QuZGVmYXVsdF9sYW5ndWFnZSA9PSBudWxsKSB7CiAgICAgICAgY29uc29sZS5sb2coJ2d0cmFuc2xhdGVTZXR0aW5ncyBpcyBub3QgcHJvcGVybHkgaW5pdGlhbGl6ZWQnKTsKICAgICAgICByZXR1cm47CiAgICB9CgogICAgdmFyIGxhbmdfYXJyYXlfZW5nbGlzaCA9IHsiYWYiOiJBZnJpa2FhbnMiLCJzcSI6IkFsYmFuaWFuIiwiYW0iOiJBbWhhcmljIiwiYXIiOiJBcmFiaWMiLCJoeSI6IkFybWVuaWFuIiwiYXoiOiJBemVyYmFpamFuaSIsImV1IjoiQmFzcXVlIiwiYmUiOiJCZWxhcnVzaWFuIiwiYm4iOiJCZW5nYWxpIiwiYnMiOiJCb3NuaWFuIiwiYmciOiJCdWxnYXJpYW4iLCJjYSI6IkNhdGFsYW4iLCJjZWIiOiJDZWJ1YW5vIiwibnkiOiJDaGljaGV3YSIsInpoLUNOIjoiQ2hpbmVzZSAoU2ltcGxpZmllZCkiLCJ6aC1UVyI6IkNoaW5lc2UgKFRyYWRpdGlvbmFsKSIsImNvIjoiQ29yc2ljYW4iLCJociI6IkNyb2F0aWFuIiwiY3MiOiJDemVjaCIsImRhIjoiRGFuaXNoIiwibmwiOiJEdXRjaCIsImVuIjoiRW5nbGlzaCIsImVvIjoiRXNwZXJhbnRvIiwiZXQiOiJFc3RvbmlhbiIsInRsIjoiRmlsaXBpbm8iLCJmaSI6IkZpbm5pc2giLCJmciI6IkZyZW5jaCIsImZ5IjoiRnJpc2lhbiIsImdsIjoiR2FsaWNpYW4iLCJrYSI6Ikdlb3JnaWFuIiwiZGUiOiJHZXJtYW4iLCJlbCI6IkdyZWVrIiwiZ3UiOiJHdWphcmF0aSIsImh0IjoiSGFpdGlhbiBDcmVvbGUiLCJoYSI6IkhhdXNhIiwiaGF3IjoiSGF3YWlpYW4iLCJpdyI6IkhlYnJldyIsImhpIjoiSGluZGkiLCJobW4iOiJIbW9uZyIsImh1IjoiSHVuZ2FyaWFuIiwiaXMiOiJJY2VsYW5kaWMiLCJpZyI6IklnYm8iLCJpZCI6IkluZG9uZXNpYW4iLCJnYSI6IklyaXNoIiwiaXQiOiJJdGFsaWFuIiwiamEiOiJKYXBhbmVzZSIsImp3IjoiSmF2YW5lc2UiLCJrbiI6Ikthbm5hZGEiLCJrayI6IkthemFraCIsImttIjoiS2htZXIiLCJrbyI6IktvcmVhbiIsImt1IjoiS3VyZGlzaCAoS3VybWFuamkpIiwia3kiOiJLeXJneXoiLCJsbyI6IkxhbyIsImxhIjoiTGF0aW4iLCJsdiI6IkxhdHZpYW4iLCJsdCI6IkxpdGh1YW5pYW4iLCJsYiI6Ikx1eGVtYm91cmdpc2giLCJtayI6Ik1hY2Vkb25pYW4iLCJtZyI6Ik1hbGFnYXN5IiwibXMiOiJNYWxheSIsIm1sIjoiTWFsYXlhbGFtIiwibXQiOiJNYWx0ZXNlIiwibWkiOiJNYW9yaSIsIm1yIjoiTWFyYXRoaSIsIm1uIjoiTW9uZ29saWFuIiwibXkiOiJNeWFubWFyIChCdXJtZXNlKSIsIm5lIjoiTmVwYWxpIiwibm8iOiJOb3J3ZWdpYW4iLCJwcyI6IlBhc2h0byIsImZhIjoiUGVyc2lhbiIsInBsIjoiUG9saXNoIiwicHQiOiJQb3J0dWd1ZXNlIiwicGEiOiJQdW5qYWJpIiwicm8iOiJSb21hbmlhbiIsInJ1IjoiUnVzc2lhbiIsInNtIjoiU2Ftb2FuIiwiZ2QiOiJTY290dGlzaCBHYWVsaWMiLCJzciI6IlNlcmJpYW4iLCJzdCI6IlNlc290aG8iLCJzbiI6IlNob25hIiwic2QiOiJTaW5kaGkiLCJzaSI6IlNpbmhhbGEiLCJzayI6IlNsb3ZhayIsInNsIjoiU2xvdmVuaWFuIiwic28iOiJTb21hbGkiLCJlcyI6IlNwYW5pc2giLCJzdSI6IlN1bmRhbmVzZSIsInN3IjoiU3dhaGlsaSIsInN2IjoiU3dlZGlzaCIsInRnIjoiVGFqaWsiLCJ0YSI6IlRhbWlsIiwidGUiOiJUZWx1Z3UiLCJ0aCI6IlRoYWkiLCJ0ciI6IlR1cmtpc2giLCJ1ayI6IlVrcmFpbmlhbiIsInVyIjoiVXJkdSIsInV6IjoiVXpiZWsiLCJ2aSI6IlZpZXRuYW1lc2UiLCJjeSI6IldlbHNoIiwieGgiOiJYaG9zYSIsInlpIjoiWWlkZGlzaCIsInlvIjoiWW9ydWJhIiwienUiOiJadWx1In07CiAgICB2YXIgbGFuZ19hcnJheV9uYXRpdmUgPSB7ImFmIjoiQWZyaWthYW5zIiwic3EiOiJTaHFpcCIsImFtIjoiXHUxMmEwXHUxMjFiXHUxMjJkXHUxMjliIiwiYXIiOiJcdTA2MjdcdTA2NDRcdTA2MzlcdTA2MzFcdTA2MjhcdTA2NGFcdTA2MjkiLCJoeSI6Ilx1MDU0MFx1MDU2MVx1MDU3NVx1MDU2NVx1MDU4MFx1MDU2NVx1MDU3NiIsImF6IjoiQXpcdTAyNTlyYmF5Y2FuIGRpbGkiLCJldSI6IkV1c2thcmEiLCJiZSI6Ilx1MDQxMVx1MDQzNVx1MDQzYlx1MDQzMFx1MDQ0MFx1MDQ0M1x1MDQ0MVx1MDQzYVx1MDQzMFx1MDQ0ZiBcdTA0M2NcdTA0M2VcdTA0MzJcdTA0MzAiLCJibiI6Ilx1MDlhY1x1MDliZVx1MDk4Mlx1MDliMlx1MDliZSIsImJzIjoiQm9zYW5za2kiLCJiZyI6Ilx1MDQxMVx1MDQ0YVx1MDQzYlx1MDQzM1x1MDQzMFx1MDQ0MFx1MDQ0MVx1MDQzYVx1MDQzOCIsImNhIjoiQ2F0YWxcdTAwZTAiLCJjZWIiOiJDZWJ1YW5vIiwibnkiOiJDaGljaGV3YSIsInpoLUNOIjoiXHU3YjgwXHU0ZjUzXHU0ZTJkXHU2NTg3IiwiemgtVFciOiJcdTdlNDFcdTlhZDRcdTRlMmRcdTY1ODciLCJjbyI6IkNvcnN1IiwiaHIiOiJIcnZhdHNraSIsImNzIjoiXHUwMTBjZVx1MDE2MXRpbmFcdTIwMGUiLCJkYSI6IkRhbnNrIiwibmwiOiJOZWRlcmxhbmRzIiwiZW4iOiJFbmdsaXNoIiwiZW8iOiJFc3BlcmFudG8iLCJldCI6IkVlc3RpIiwidGwiOiJGaWxpcGlubyIsImZpIjoiU3VvbWkiLCJmciI6IkZyYW5cdTAwZTdhaXMiLCJmeSI6IkZyeXNrIiwiZ2wiOiJHYWxlZ28iLCJrYSI6Ilx1MTBlNVx1MTBkMFx1MTBlMFx1MTBkN1x1MTBlM1x1MTBkYVx1MTBkOCIsImRlIjoiRGV1dHNjaCIsImVsIjoiXHUwMzk1XHUwM2JiXHUwM2JiXHUwM2I3XHUwM2JkXHUwM2I5XHUwM2JhXHUwM2FjIiwiZ3UiOiJcdTBhOTdcdTBhYzFcdTBhOWNcdTBhYjBcdTBhYmVcdTBhYTRcdTBhYzAiLCJodCI6IktyZXlvbCBheWlzeWVuIiwiaGEiOiJIYXJzaGVuIEhhdXNhIiwiaGF3IjoiXHUwMTRjbGVsbyBIYXdhaVx1MDJiYmkiLCJpdyI6Ilx1MDVlMlx1MDViNFx1MDVkMVx1MDViMFx1MDVlOFx1MDViNFx1MDVkOVx1MDVlYSIsImhpIjoiXHUwOTM5XHUwOTNmXHUwOTI4XHUwOTRkXHUwOTI2XHUwOTQwIiwiaG1uIjoiSG1vbmciLCJodSI6Ik1hZ3lhciIsImlzIjoiXHUwMGNkc2xlbnNrYSIsImlnIjoiSWdibyIsImlkIjoiQmFoYXNhIEluZG9uZXNpYSIsImdhIjoiR2FlaWxnZSIsIml0IjoiSXRhbGlhbm8iLCJqYSI6Ilx1NjVlNVx1NjcyY1x1OGE5ZSIsImp3IjoiQmFzYSBKYXdhIiwia24iOiJcdTBjOTVcdTBjYThcdTBjY2RcdTBjYThcdTBjYTEiLCJrayI6Ilx1MDQ5YVx1MDQzMFx1MDQzN1x1MDQzMFx1MDQ5YiBcdTA0NDJcdTA0NTZcdTA0M2JcdTA0NTYiLCJrbSI6Ilx1MTc5N1x1MTdiNlx1MTc5Zlx1MTdiNlx1MTc4MVx1MTdkMlx1MTc5OFx1MTdjMlx1MTc5YSIsImtvIjoiXHVkNTVjXHVhZDZkXHVjNWI0Iiwia3UiOiJcdTA2NDNcdTA2NDhcdTA2MzFcdTA2MmZcdTA2Y2NcdTIwMGUiLCJreSI6Ilx1MDQxYVx1MDQ0Ylx1MDQ0MFx1MDQzM1x1MDQ0Ylx1MDQzN1x1MDQ0N1x1MDQzMCIsImxvIjoiXHUwZTllXHUwZWIyXHUwZWFhXHUwZWIyXHUwZWE1XHUwZWIyXHUwZWE3IiwibGEiOiJMYXRpbiIsImx2IjoiTGF0dmllXHUwMTYxdSB2YWxvZGEiLCJsdCI6IkxpZXR1dmlcdTAxNzMga2FsYmEiLCJsYiI6IkxcdTAwZWJ0emVidWVyZ2VzY2giLCJtayI6Ilx1MDQxY1x1MDQzMFx1MDQzYVx1MDQzNVx1MDQzNFx1MDQzZVx1MDQzZFx1MDQ0MVx1MDQzYVx1MDQzOCBcdTA0NThcdTA0MzBcdTA0MzdcdTA0MzhcdTA0M2EiLCJtZyI6Ik1hbGFnYXN5IiwibXMiOiJCYWhhc2EgTWVsYXl1IiwibWwiOiJcdTBkMmVcdTBkMzJcdTBkMmZcdTBkM2VcdTBkMzNcdTBkMDIiLCJtdCI6Ik1hbHRlc2UiLCJtaSI6IlRlIFJlbyBNXHUwMTAxb3JpIiwibXIiOiJcdTA5MmVcdTA5MzBcdTA5M2VcdTA5MjBcdTA5NDAiLCJtbiI6Ilx1MDQxY1x1MDQzZVx1MDQzZFx1MDQzM1x1MDQzZVx1MDQzYiIsIm15IjoiXHUxMDE3XHUxMDE5XHUxMDJjXHUxMDA1XHUxMDJjIiwibmUiOiJcdTA5MjhcdTA5NDdcdTA5MmFcdTA5M2VcdTA5MzJcdTA5NDAiLCJubyI6Ik5vcnNrIGJva21cdTAwZTVsIiwicHMiOiJcdTA2N2VcdTA2OWFcdTA2MmFcdTA2NDgiLCJmYSI6Ilx1MDY0MVx1MDYyN1x1MDYzMVx1MDYzM1x1MDZjYyIsInBsIjoiUG9sc2tpIiwicHQiOiJQb3J0dWd1XHUwMGVhcyIsInBhIjoiXHUwYTJhXHUwYTcwXHUwYTFjXHUwYTNlXHUwYTJjXHUwYTQwIiwicm8iOiJSb21cdTAwZTJuXHUwMTAzIiwicnUiOiJcdTA0MjBcdTA0NDNcdTA0NDFcdTA0NDFcdTA0M2FcdTA0MzhcdTA0MzkiLCJzbSI6IlNhbW9hbiIsImdkIjoiR1x1MDBlMGlkaGxpZyIsInNyIjoiXHUwNDIxXHUwNDQwXHUwNDNmXHUwNDQxXHUwNDNhXHUwNDM4IFx1MDQ1OFx1MDQzNVx1MDQzN1x1MDQzOFx1MDQzYSIsInN0IjoiU2Vzb3RobyIsInNuIjoiU2hvbmEiLCJzZCI6Ilx1MDYzM1x1MDY0Nlx1MDY4Y1x1MDY0YSIsInNpIjoiXHUwZGMzXHUwZGQyXHUwZDgyXHUwZGM0XHUwZGJkIiwic2siOiJTbG92ZW5cdTAxMGRpbmEiLCJzbCI6IlNsb3Zlblx1MDE2MVx1MDEwZGluYSIsInNvIjoiQWZzb29tYWFsaSIsImVzIjoiRXNwYVx1MDBmMW9sIiwic3UiOiJCYXNhIFN1bmRhIiwic3ciOiJLaXN3YWhpbGkiLCJzdiI6IlN2ZW5za2EiLCJ0ZyI6Ilx1MDQyMlx1MDQzZVx1MDRiN1x1MDQzOFx1MDQzYVx1MDRlMyIsInRhIjoiXHUwYmE0XHUwYmFlXHUwYmJmXHUwYmI0XHUwYmNkIiwidGUiOiJcdTBjMjRcdTBjNDZcdTBjMzJcdTBjNDFcdTBjMTdcdTBjNDEiLCJ0aCI6Ilx1MGU0NFx1MGUxN1x1MGUyMiIsInRyIjoiVFx1MDBmY3JrXHUwMGU3ZSIsInVrIjoiXHUwNDIzXHUwNDNhXHUwNDQwXHUwNDMwXHUwNDU3XHUwNDNkXHUwNDQxXHUwNDRjXHUwNDNhXHUwNDMwIiwidXIiOiJcdTA2MjdcdTA2MzFcdTA2MmZcdTA2NDgiLCJ1eiI6Ik9cdTIwMTh6YmVrY2hhIiwidmkiOiJUaVx1MWViZm5nIFZpXHUxZWM3dCIsImN5IjoiQ3ltcmFlZyIsInhoIjoiaXNpWGhvc2EiLCJ5aSI6Ilx1MDVkOVx1MDVkOVx1MDVkM1x1MDVkOVx1MDVlOSIsInlvIjoiWW9yXHUwMGY5Ylx1MDBlMSIsInp1IjoiWnVsdSJ9OwoKICAgIHZhciBkZWZhdWx0X2xhbmd1YWdlID0gZ3QuZGVmYXVsdF9sYW5ndWFnZTsKICAgIHZhciBsYW5ndWFnZXMgPSBndC5sYW5ndWFnZXN8fE9iamVjdC5rZXlzKGxhbmdfYXJyYXlfZW5nbGlzaCk7CiAgICB2YXIgYWx0X2ZsYWdzID0gZ3QuYWx0X2ZsYWdzfHx7fTsKICAgIHZhciBmbGFnX3N0eWxlID0gZ3QuZmxhZ19zdHlsZXx8JzJkJzsKICAgIHZhciBmbGFnc19sb2NhdGlvbiA9IGd0LmZsYWdzX2xvY2F0aW9ufHwnaHR0cHM6Ly9jZG4uZ3RyYW5zbGF0ZS5uZXQvZmxhZ3MvJzsKICAgIHZhciB1cmxfc3RydWN0dXJlID0gZ3QudXJsX3N0cnVjdHVyZXx8J25vbmUnOwogICAgdmFyIGN1c3RvbV9kb21haW5zID0gZ3QuY3VzdG9tX2RvbWFpbnN8fHt9OwogICAgdmFyIHN3aXRjaGVyX2hvcml6b250YWxfcG9zaXRpb24gPSBndC5zd2l0Y2hlcl9ob3Jpem9udGFsX3Bvc2l0aW9ufHwnbGVmdCc7CiAgICB2YXIgc3dpdGNoZXJfdmVydGljYWxfcG9zaXRpb24gPSBndC5zd2l0Y2hlcl92ZXJ0aWNhbF9wb3NpdGlvbnx8J2JvdHRvbSc7CiAgICB2YXIgZmxvYXRfc3dpdGNoZXJfb3Blbl9kaXJlY3Rpb24gPSBndC5mbG9hdF9zd2l0Y2hlcl9vcGVuX2RpcmVjdGlvbnx8J3RvcCc7CiAgICB2YXIgbmF0aXZlX2xhbmd1YWdlX25hbWVzID0gZ3QubmF0aXZlX2xhbmd1YWdlX25hbWVzfHxmYWxzZTsKICAgIHZhciBkZXRlY3RfYnJvd3Nlcl9sYW5ndWFnZSA9IGd0LmRldGVjdF9icm93c2VyX2xhbmd1YWdlfHxmYWxzZTsKICAgIHZhciB3cmFwcGVyX3NlbGVjdG9yID0gZ3Qud3JhcHBlcl9zZWxlY3Rvcnx8Jy5ndHJhbnNsYXRlX3dyYXBwZXInOwoKICAgIHZhciBjdXN0b21fY3NzID0gZ3QuY3VzdG9tX2Nzc3x8Jyc7CiAgICB2YXIgbGFuZ19hcnJheSA9IG5hdGl2ZV9sYW5ndWFnZV9uYW1lcyAmJiBsYW5nX2FycmF5X25hdGl2ZSB8fCBsYW5nX2FycmF5X2VuZ2xpc2g7CgogICAgdmFyIHVfY2xhc3MgPSAnLmd0X2NvbnRhaW5lci0nK0FycmF5LmZyb20oJ2Zsb2F0Jyt3cmFwcGVyX3NlbGVjdG9yKS5yZWR1Y2UoZnVuY3Rpb24oaCxjKXtyZXR1cm4gMHwoMzEqaCtjLmNoYXJDb2RlQXQoMCkpfSwwKS50b1N0cmluZygzNik7CgogICAgdmFyIHdpZGdldF9jb2RlID0gJzwhLS0gR1RyYW5zbGF0ZTogaHR0cHM6Ly9ndHJhbnNsYXRlLmNvbSAtLT4nOwogICAgdmFyIHdpZGdldF9jc3MgPSBjdXN0b21fY3NzOwoKICAgIGZsYWdzX2xvY2F0aW9uICs9IChmbGFnX3N0eWxlPT0nM2QnPzMyOidzdmcnKSsnLyc7CiAgICB2YXIgZmxhZ19leHQgPSBmbGFnX3N0eWxlPT0nM2QnPycucG5nJzonLnN2Zyc7CgogICAgLy8gaGVscGVyIGZ1bmN0aW9ucwogICAgZnVuY3Rpb24gZ2V0X2ZsYWdfc3JjKGxhbmcpIHsKICAgICAgICBpZighYWx0X2ZsYWdzW2xhbmddKQogICAgICAgICAgICByZXR1cm4gZmxhZ3NfbG9jYXRpb24rbGFuZytmbGFnX2V4dDsKICAgICAgICBlbHNlIGlmKGFsdF9mbGFnc1tsYW5nXSA9PSAndXNhJykKICAgICAgICAgICAgcmV0dXJuIGZsYWdzX2xvY2F0aW9uKydlbi11cycrZmxhZ19leHQ7CiAgICAgICAgZWxzZSBpZihhbHRfZmxhZ3NbbGFuZ10gPT0gJ2NhbmFkYScpCiAgICAgICAgICAgIHJldHVybiBmbGFnc19sb2NhdGlvbisnZW4tY2EnK2ZsYWdfZXh0OwogICAgICAgIGVsc2UgaWYoYWx0X2ZsYWdzW2xhbmddID09ICdicmF6aWwnKQogICAgICAgICAgICByZXR1cm4gZmxhZ3NfbG9jYXRpb24rJ3B0LWJyJytmbGFnX2V4dDsKICAgICAgICBlbHNlIGlmKGFsdF9mbGFnc1tsYW5nXSA9PSAnbWV4aWNvJykKICAgICAgICAgICAgcmV0dXJuIGZsYWdzX2xvY2F0aW9uKydlcy1teCcrZmxhZ19leHQ7CiAgICAgICAgZWxzZSBpZihhbHRfZmxhZ3NbbGFuZ10gPT0gJ2FyZ2VudGluYScpCiAgICAgICAgICAgIHJldHVybiBmbGFnc19sb2NhdGlvbisnZXMtYXInK2ZsYWdfZXh0OwogICAgICAgIGVsc2UgaWYoYWx0X2ZsYWdzW2xhbmddID09ICdjb2xvbWJpYScpCiAgICAgICAgICAgIHJldHVybiBmbGFnc19sb2NhdGlvbisnZXMtY28nK2ZsYWdfZXh0OwogICAgICAgIGVsc2UgaWYoYWx0X2ZsYWdzW2xhbmddID09ICdxdWViZWMnKQogICAgICAgICAgICByZXR1cm4gZmxhZ3NfbG9jYXRpb24rJ2ZyLXFjJytmbGFnX2V4dDsKICAgICAgICBlbHNlCiAgICAgICAgICAgIHJldHVybiBhbHRfZmxhZ3NbbGFuZ107CiAgICB9CgogICAgZnVuY3Rpb24gZ2V0X2xhbmdfaHJlZihsYW5nKSB7CiAgICAgICAgdmFyIGhyZWYgPSAnIyc7CgogICAgICAgIGlmKHVybF9zdHJ1Y3R1cmUgPT0gJ3N1Yl9kaXJlY3RvcnknKSB7CiAgICAgICAgICAgIHZhciBndF9yZXF1ZXN0X3VyaSA9IChkb2N1bWVudC5jdXJyZW50U2NyaXB0LmdldEF0dHJpYnV0ZSgnZGF0YS1ndC1vcmlnLXVybCcpIHx8IChsb2NhdGlvbi5wYXRobmFtZS5zdGFydHNXaXRoKCcvJytjdXJyZW50X2xhbmcrJy8nKSAmJiAnLycrbG9jYXRpb24ucGF0aG5hbWUuc3BsaXQoJy8nKS5zbGljZSgyKS5qb2luKCcvJykgfHwgbG9jYXRpb24ucGF0aG5hbWUpKSArIGxvY2F0aW9uLnNlYXJjaCArIGxvY2F0aW9uLmhhc2g7CiAgICAgICAgICAgIGhyZWYgPSAobGFuZyA9PSBkZWZhdWx0X2xhbmd1YWdlKSAmJiBsb2NhdGlvbi5wcm90b2NvbCsnLy8nK2xvY2F0aW9uLmhvc3RuYW1lK2d0X3JlcXVlc3RfdXJpIHx8IGxvY2F0aW9uLnByb3RvY29sKycvLycrbG9jYXRpb24uaG9zdG5hbWUrJy8nK2xhbmcrZ3RfcmVxdWVzdF91cmk7CiAgICAgICAgfSBlbHNlIGlmKHVybF9zdHJ1Y3R1cmUgPT0gJ3N1Yl9kb21haW4nKSB7CiAgICAgICAgICAgIHZhciBndF9yZXF1ZXN0X3VyaSA9IChkb2N1bWVudC5jdXJyZW50U2NyaXB0LmdldEF0dHJpYnV0ZSgnZGF0YS1ndC1vcmlnLXVybCcpIHx8IGxvY2F0aW9uLnBhdGhuYW1lKSArIGxvY2F0aW9uLnNlYXJjaCArIGxvY2F0aW9uLmhhc2g7CiAgICAgICAgICAgIHZhciBkb21haW4gPSBkb2N1bWVudC5jdXJyZW50U2NyaXB0LmdldEF0dHJpYnV0ZSgnZGF0YS1ndC1vcmlnLWRvbWFpbicpIHx8IGxvY2F0aW9uLmhvc3RuYW1lOwogICAgICAgICAgICBpZih0eXBlb2YgY3VzdG9tX2RvbWFpbnMgPT0gJ29iamVjdCcgJiYgY3VzdG9tX2RvbWFpbnNbbGFuZ10pCiAgICAgICAgICAgICAgICBocmVmID0gKGxhbmcgPT0gZGVmYXVsdF9sYW5ndWFnZSkgJiYgbG9jYXRpb24ucHJvdG9jb2wrJy8vJytkb21haW4rZ3RfcmVxdWVzdF91cmkgfHwgbG9jYXRpb24ucHJvdG9jb2wrJy8vJytjdXN0b21fZG9tYWluc1tsYW5nXStndF9yZXF1ZXN0X3VyaTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgaHJlZiA9IChsYW5nID09IGRlZmF1bHRfbGFuZ3VhZ2UpICYmIGxvY2F0aW9uLnByb3RvY29sKycvLycrZG9tYWluK2d0X3JlcXVlc3RfdXJpIHx8IGxvY2F0aW9uLnByb3RvY29sKycvLycrbGFuZysnLicrZG9tYWluLnJlcGxhY2UoL153d3dcLi8sICcnKStndF9yZXF1ZXN0X3VyaTsKICAgICAgICB9CgogICAgICAgIHJldHVybiBocmVmOwogICAgfQoKICAgIHZhciBjdXJyZW50X2xhbmcgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdodG1sJykuZ2V0QXR0cmlidXRlKCdsYW5nJyl8fGRlZmF1bHRfbGFuZ3VhZ2U7CiAgICBpZih1cmxfc3RydWN0dXJlID09ICdub25lJykgewogICAgICAgIHZhciBnb29ndHJhbnNfbWF0Y2hlcyA9IGRvY3VtZW50LmNvb2tpZS5tYXRjaCgnKF58OykgP2dvb2d0cmFucz0oW147XSopKDt8JCknKTsKICAgICAgICBjdXJyZW50X2xhbmcgPSBnb29ndHJhbnNfbWF0Y2hlcyAmJiBnb29ndHJhbnNfbWF0Y2hlc1syXS5zcGxpdCgnLycpWzJdIHx8IGN1cnJlbnRfbGFuZzsKICAgIH0KCiAgICBpZighbGFuZ19hcnJheVtjdXJyZW50X2xhbmddKQogICAgICAgIGN1cnJlbnRfbGFuZyA9IGRlZmF1bHRfbGFuZ3VhZ2U7CgogICAgaWYodXJsX3N0cnVjdHVyZSA9PSAnbm9uZScpIHsKICAgICAgICB3aWRnZXRfY29kZSArPSAnPGRpdiBpZD0iZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50MiI+PC9kaXY+JzsKCiAgICAgICAgd2lkZ2V0X2NzcyArPSAiZGl2LnNraXB0cmFuc2xhdGUsI2dvb2dsZV90cmFuc2xhdGVfZWxlbWVudDJ7ZGlzcGxheTpub25lIWltcG9ydGFudH0iOwogICAgICAgIHdpZGdldF9jc3MgKz0gImJvZHl7dG9wOjAhaW1wb3J0YW50fSI7CiAgICAgICAgd2lkZ2V0X2NzcyArPSAiZm9udCBmb250e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnQ7cG9zaXRpb246aW5pdGlhbCFpbXBvcnRhbnR9IjsKICAgIH0KCiAgICB3aWRnZXRfY3NzICs9ICcuZ3RfZmxvYXRfc3dpdGNoZXJ7Zm9udC1mYW1pbHk6QXJpYWw7Zm9udC1zaXplOjIwcHg7Ym9yZGVyLXJhZGl1czoycHg7Y29sb3I6IzU1NTtkaXNwbGF5OmlubGluZS1ibG9jaztsaW5lLWhlaWdodDoyMHB4O2JveC1zaGFkb3c6cmdiYSgwLDAsMCwwLjE1KSAwIDVweCAxNXB4O2JhY2tncm91bmQ6I2ZmZjtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjphbGwgLjVzIGN1YmljLWJlemllcigwLjQsIDAsIDEsIDEpfSc7CiAgICB3aWRnZXRfY3NzICs9ICcuZ3RfZmxvYXRfc3dpdGNoZXIgaW1ne3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDozM3B4O2hlaWdodDphdXRvO21hcmdpbjowIDVweCAwIDA7Ym9yZGVyLXJhZGl1czozcHh9JzsKICAgIGlmKGZsb2F0X3N3aXRjaGVyX29wZW5fZGlyZWN0aW9uID09ICdsZWZ0JyB8fCBmbG9hdF9zd2l0Y2hlcl9vcGVuX2RpcmVjdGlvbiA9PSAncmlnaHQnKSB7CiAgICAgICAgdmFyIG1heF93aWR0aCA9IDAuNyAqIHdpbmRvdy5pbm5lcldpZHRoIC0gMTIwOwogICAgICAgIGlmKHdpbmRvdy5pbm5lcldpZHRoIDwgMTAwMCkKICAgICAgICAgICAgbWF4X3dpZHRoID0gd2luZG93LmlubmVyV2lkdGggLSAyNjA7CiAgICAgICAgbWF4X3dpZHRoICs9ICdweCc7CgogICAgICAgIGlmKHN3aXRjaGVyX2hvcml6b250YWxfcG9zaXRpb24gPT0gJ2lubGluZScpCiAgICAgICAgICAgIG1heF93aWR0aCA9ICdjYWxjKDEwMCUgLSAxMjJweCknOwoKICAgICAgICAvLyB0b2RvOiBvcHRpbWl6ZQogICAgICAgIHdpZGdldF9jc3MgKz0gJy5ndF9mbG9hdF9zd2l0Y2hlciAuZ3Rfb3B0aW9uc3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4Ojc3Nzt3aGl0ZS1zcGFjZTpub3dyYXA7ZmxvYXQ6JytmbG9hdF9zd2l0Y2hlcl9vcGVuX2RpcmVjdGlvbisnO21heC13aWR0aDonK21heF93aWR0aCsnO292ZXJmbG93OmhpZGRlbjt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtJyt3aW5kb3cuaW5uZXJXaWR0aCsncHgpO29wYWNpdHk6MDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCAuOHMgY3ViaWMtYmV6aWVyKC4zLDEuMSwuNCwxLjEpfSc7CiAgICAgICAgd2lkZ2V0X2NzcyArPSAnLmd0X2Zsb2F0X3N3aXRjaGVyIC5ndF9vcHRpb25zIGF7ZGlzcGxheTppbmxpbmUtYmxvY2s7dGV4dC1kZWNvcmF0aW9uOm5vbmU7cGFkZGluZzonKyhmbGFnX3N0eWxlPT0nM2QnPzY6MTApKydweCAxNXB4O2NvbG9yOiM0NDQ7dHJhbnNpdGlvbjpjb2xvciAuNHMgbGluZWFyfSc7CiAgICAgICAgd2lkZ2V0X2NzcyArPSAnLmd0X2Zsb2F0X3N3aXRjaGVyIC5ndC1zZWxlY3RlZHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4Ojg4ODtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7ZmxvYXQ6bGVmdDtjdXJzb3I6cG9pbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7b3ZlcmZsb3c6aGlkZGVuOycrKHN3aXRjaGVyX2hvcml6b250YWxfcG9zaXRpb24gIT0gJ2lubGluZScgJiYgJ3RleHQtYWxpZ246Jytzd2l0Y2hlcl9ob3Jpem9udGFsX3Bvc2l0aW9uKSsnfSc7CiAgICB9IGVsc2UgewogICAgICAgIHdpZGdldF9jc3MgKz0gJy5ndF9mbG9hdF9zd2l0Y2hlciAuZ3Rfb3B0aW9uc3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4Ojc3NzttYXgtaGVpZ2h0OjI1MHB4O292ZXJmbG93LXk6YXV0bzt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMzBweCk7b3BhY2l0eTowO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIC44cyBjdWJpYy1iZXppZXIoLjMsMS4xLC40LDEuMSl9JzsKICAgICAgICB3aWRnZXRfY3NzICs9ICcuZ3RfZmxvYXRfc3dpdGNoZXIgLmd0X29wdGlvbnMgYXtkaXNwbGF5OmJsb2NrO3RleHQtZGVjb3JhdGlvbjpub25lO3BhZGRpbmc6JysoZmxhZ19zdHlsZT09JzNkJz82OjEwKSsncHggMTVweDtjb2xvcjojNDQ0O3RyYW5zaXRpb246Y29sb3IgLjRzIGxpbmVhcn0nOwogICAgICAgIHdpZGdldF9jc3MgKz0gJy5ndF9mbG9hdF9zd2l0Y2hlciAuZ3Qtc2VsZWN0ZWR7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDo4ODg7YmFja2dyb3VuZC1jb2xvcjojZmZmO2N1cnNvcjpwb2ludGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtvdmVyZmxvdzpoaWRkZW47Jysoc3dpdGNoZXJfaG9yaXpvbnRhbF9wb3NpdGlvbiAhPSAnaW5saW5lJyAmJiAndGV4dC1hbGlnbjonK3N3aXRjaGVyX2hvcml6b250YWxfcG9zaXRpb24pKyd9JzsKICAgIH0KICAgIHdpZGdldF9jc3MgKz0gJy5ndF9mbG9hdF9zd2l0Y2hlciAuZ3Rfb3B0aW9ucy5ndC1vcGVue29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwcHgpfSc7CgogICAgd2lkZ2V0X2NzcyArPSAnLmd0X2Zsb2F0X3N3aXRjaGVyIC5ndF9vcHRpb25zOjotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjV9JzsKICAgIHdpZGdldF9jc3MgKz0gJy5ndF9mbG9hdF9zd2l0Y2hlciAuZ3Rfb3B0aW9uczo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6NXB4fSc7CiAgICB3aWRnZXRfY3NzICs9ICcuZ3RfZmxvYXRfc3dpdGNoZXIgLmd0X29wdGlvbnM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQtY29sb3I6Izg4OH0nOwogICAgd2lkZ2V0X2NzcyArPSAnLmd0X2Zsb2F0X3N3aXRjaGVyIC5ndF9vcHRpb25zIGE6aG92ZXJ7YmFja2dyb3VuZDojNjA3MGEwO2NvbG9yOiNmZmZ9JzsKICAgIHdpZGdldF9jc3MgKz0gJy5ndF9mbG9hdF9zd2l0Y2hlciAuZ3Rfb3B0aW9ucyBhLmd0LWN1cnJlbnR7ZGlzcGxheTpub25lfSc7CiAgICB3aWRnZXRfY3NzICs9ICcuZ3RfZmxvYXRfc3dpdGNoZXIgLmd0LXNlbGVjdGVkIC5ndC1jdXJyZW50LWxhbmd7cGFkZGluZzonKyhmbGFnX3N0eWxlPT0nM2QnPzY6MTApKydweCAxNXB4O2NvbG9yOiMzMzM7Zm9udC13ZWlnaHQ6Ym9sZH0nOwogICAgd2lkZ2V0X2NzcyArPSAnLmd0X2Zsb2F0X3N3aXRjaGVyIC5ndC1zZWxlY3RlZCAuZ3QtY3VycmVudC1sYW5nIHNwYW4uZ3QtbGFuZy1jb2Rle3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDoycHh9JzsKCiAgICB2YXIgYXJyX2FuZ2xlID0gKGZsb2F0X3N3aXRjaGVyX29wZW5fZGlyZWN0aW9uID09ICdsZWZ0J3x8ZmxvYXRfc3dpdGNoZXJfb3Blbl9kaXJlY3Rpb24gPT0gJ3JpZ2h0Jyk/OTA6MDsKICAgIHdpZGdldF9jc3MgKz0gIi5ndF9mbG9hdF9zd2l0Y2hlciAuZ3Qtc2VsZWN0ZWQgLmd0LWN1cnJlbnQtbGFuZyBzcGFuLmd0X2Zsb2F0X3N3aXRjaGVyLWFycm93e2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoyNHB4O3dpZHRoOjE1cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNicgaGVpZ2h0PScxNicgdmlld0JveD0nMCAwIDI4NSAyODUnPjxwYXRoIGQ9J00yODIgNzYuNWwtMTQuMi0xNC4zYTkgOSAwIDAgMC0xMy4xIDBMMTQyLjUgMTc0LjQgMzAuMyA2Mi4yYTkgOSAwIDAgMC0xMy4yIDBMMyA3Ni41YTkgOSAwIDAgMCAwIDEzLjFsMTMzIDEzM2E5IDkgMCAwIDAgMTMuMSAwbDEzMy0xMzNhOSA5IDAgMCAwIDAtMTN6JyBzdHlsZT0nZmlsbDolMjM2NjYnLz48L3N2Zz5cIik7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1zaXplOjExcHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O3RyYW5zaXRpb246YWxsIC4zczt0cmFuc2Zvcm06cm90YXRlKCIrKGFycl9hbmdsZS0xODApKyJkZWcpfSI7CiAgICB3aWRnZXRfY3NzICs9ICcuZ3RfZmxvYXRfc3dpdGNoZXIgLmd0LXNlbGVjdGVkIC5ndC1jdXJyZW50LWxhbmcgc3Bhbi5ndF9mbG9hdF9zd2l0Y2hlci1hcnJvdy5ndF9hcnJvd19yb3RhdGV7dHJhbnNmb3JtOnJvdGF0ZSgnK2Fycl9hbmdsZSsnZGVnKX0nOwoKICAgIGlmKHN3aXRjaGVyX2hvcml6b250YWxfcG9zaXRpb24gPT0gJ2lubGluZScpCiAgICAgICAgd2lkZ2V0X2NvZGUgKz0gJzxkaXYgaWQ9Imd0X2Zsb2F0X3dyYXBwZXIiPjxkaXYgY2xhc3M9Imd0X2Zsb2F0X3N3aXRjaGVyIG5vdHJhbnNsYXRlIiBzdHlsZT0ib3BhY2l0eTowIj4nOwogICAgZWxzZQogICAgICAgIHdpZGdldF9jb2RlICs9ICc8ZGl2IGlkPSJndF9mbG9hdF93cmFwcGVyIiBzdHlsZT0icG9zaXRpb246Zml4ZWQ7Jytzd2l0Y2hlcl92ZXJ0aWNhbF9wb3NpdGlvbisnOjIwcHg7Jytzd2l0Y2hlcl9ob3Jpem9udGFsX3Bvc2l0aW9uKyc6MjBweDt6LWluZGV4Ojk5OTk5OTsiPjxkaXYgY2xhc3M9Imd0X2Zsb2F0X3N3aXRjaGVyIG5vdHJhbnNsYXRlIiBzdHlsZT0ib3BhY2l0eTowIj4nOwoKICAgIHZhciBndF9jdXJyZW50X2RpdiA9ICc8ZGl2IGNsYXNzPSJndC1zZWxlY3RlZCI+PGRpdiBjbGFzcz0iZ3QtY3VycmVudC1sYW5nIj48aW1nIHNyYz0iJytnZXRfZmxhZ19zcmMoY3VycmVudF9sYW5nKSsnIiBhbHQ9IicrY3VycmVudF9sYW5nKyciPiA8c3BhbiBjbGFzcz0iZ3QtbGFuZy1jb2RlIj4nK2N1cnJlbnRfbGFuZysnPC9zcGFuPiA8c3BhbiBjbGFzcz0iZ3RfZmxvYXRfc3dpdGNoZXItYXJyb3ciPjwvc3Bhbj48L2Rpdj48L2Rpdj4nOwogICAgdmFyIGd0X29wdGlvbnNfZGl2ID0gJzxkaXYgY2xhc3M9Imd0X29wdGlvbnMiIHN0eWxlPSJkaXNwbGF5Om5vbmUiPic7CiAgICBsYW5ndWFnZXMuZm9yRWFjaChmdW5jdGlvbihsYW5nKSB7CiAgICAgICAgdmFyIGVsX2EgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7CiAgICAgICAgZWxfYS5ocmVmID0gZ2V0X2xhbmdfaHJlZihsYW5nKTsKICAgICAgICBlbF9hLmNsYXNzTGlzdC5hZGQoJ250dXJsJyk7CiAgICAgICAgY3VycmVudF9sYW5nID09IGxhbmcgJiYgZWxfYS5jbGFzc0xpc3QuYWRkKCdndC1jdXJyZW50Jyk7CiAgICAgICAgZWxfYS5zZXRBdHRyaWJ1dGUoJ2RhdGEtZ3QtbGFuZycsIGxhbmcpOwoKICAgICAgICB2YXIgZWxfaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW1nJyk7CiAgICAgICAgZWxfaW1nLnNldEF0dHJpYnV0ZSgnZGF0YS1ndC1sYXp5LXNyYycsIGdldF9mbGFnX3NyYyhsYW5nKSk7CiAgICAgICAgZWxfaW1nLmFsdCA9IGxhbmc7CgogICAgICAgIGVsX2EuYXBwZW5kQ2hpbGQoZWxfaW1nKTsKICAgICAgICBlbF9hLmlubmVySFRNTCArPSAnICcgKyBsYW5nX2FycmF5W2xhbmddOwoKICAgICAgICBndF9vcHRpb25zX2RpdiArPSBlbF9hLm91dGVySFRNTDsKICAgIH0pOwogICAgZ3Rfb3B0aW9uc19kaXYgKz0gJzwvZGl2Pic7CgogICAgaWYoKHN3aXRjaGVyX3ZlcnRpY2FsX3Bvc2l0aW9uID09ICd0b3AnICYmIGZsb2F0X3N3aXRjaGVyX29wZW5fZGlyZWN0aW9uID09ICdib3R0b20nKSB8fCAoc3dpdGNoZXJfdmVydGljYWxfcG9zaXRpb24gPT0gJ2JvdHRvbScgJiYgZmxvYXRfc3dpdGNoZXJfb3Blbl9kaXJlY3Rpb24gPT0gJ2JvdHRvbScpKQogICAgICAgIHdpZGdldF9jb2RlICs9IGd0X2N1cnJlbnRfZGl2ICsgZ3Rfb3B0aW9uc19kaXY7CiAgICBlbHNlCiAgICAgICAgd2lkZ2V0X2NvZGUgKz0gZ3Rfb3B0aW9uc19kaXYgKyBndF9jdXJyZW50X2RpdjsKCiAgICB3aWRnZXRfY29kZSArPSAnPC9kaXY+PC9kaXY+JzsKCiAgICB2YXIgYWRkX2NzcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7CiAgICBhZGRfY3NzLmNsYXNzTGlzdC5hZGQoJ2d0cmFuc2xhdGVfY3NzJyk7CiAgICBhZGRfY3NzLnRleHRDb250ZW50ID0gd2lkZ2V0X2NzczsKICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoYWRkX2Nzcyk7CgogICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCh3cmFwcGVyX3NlbGVjdG9yKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UuY2xhc3NMaXN0LmFkZCh1X2NsYXNzLnN1YnN0cmluZygxKSk7ZS5pbm5lckhUTUwrPXdpZGdldF9jb2RlfSk7CgogICAgaWYodXJsX3N0cnVjdHVyZSA9PSAnbm9uZScpIHsKICAgICAgICBmdW5jdGlvbiBnZXRfY3VycmVudF9sYW5nKCkge3ZhciBrZXlWYWx1ZSA9IGRvY3VtZW50LmNvb2tpZS5tYXRjaCgnKF58OykgP2dvb2d0cmFucz0oW147XSopKDt8JCknKTtyZXR1cm4ga2V5VmFsdWUgPyBrZXlWYWx1ZVsyXS5zcGxpdCgnLycpWzJdIDogbnVsbDt9CiAgICAgICAgZnVuY3Rpb24gZmlyZV9ldmVudChlbGVtZW50LGV2ZW50KXt0cnl7aWYoZG9jdW1lbnQuY3JlYXRlRXZlbnRPYmplY3Qpe3ZhciBldnQ9ZG9jdW1lbnQuY3JlYXRlRXZlbnRPYmplY3QoKTtlbGVtZW50LmZpcmVFdmVudCgnb24nK2V2ZW50LGV2dCl9ZWxzZXt2YXIgZXZ0PWRvY3VtZW50LmNyZWF0ZUV2ZW50KCdIVE1MRXZlbnRzJyk7ZXZ0LmluaXRFdmVudChldmVudCx0cnVlLHRydWUpO2VsZW1lbnQuZGlzcGF0Y2hFdmVudChldnQpfX1jYXRjaChlKXt9fQogICAgICAgIGZ1bmN0aW9uIGxvYWRfdGxpYigpe2lmKCF3aW5kb3cuZ3RfdHJhbnNsYXRlX3NjcmlwdCl7d2luZG93Lmd0X3RyYW5zbGF0ZV9zY3JpcHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7Z3RfdHJhbnNsYXRlX3NjcmlwdC5zcmM9J2h0dHBzOi8vdHJhbnNsYXRlLmdvb2dsZS5jb20vdHJhbnNsYXRlX2EvZWxlbWVudC5qcz9jYj1nb29nbGVUcmFuc2xhdGVFbGVtZW50SW5pdDInO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZ3RfdHJhbnNsYXRlX3NjcmlwdCk7fX0KICAgICAgICB3aW5kb3cuZG9HVHJhbnNsYXRlID0gZnVuY3Rpb24obGFuZ19wYWlyKXtpZihsYW5nX3BhaXIudmFsdWUpbGFuZ19wYWlyPWxhbmdfcGFpci52YWx1ZTtpZihsYW5nX3BhaXI9PScnKXJldHVybjt2YXIgbGFuZz1sYW5nX3BhaXIuc3BsaXQoJ3wnKVsxXTtpZihnZXRfY3VycmVudF9sYW5nKCkgPT0gbnVsbCAmJiBsYW5nID09IGxhbmdfcGFpci5zcGxpdCgnfCcpWzBdKXJldHVybjt2YXIgdGVDb21ibzt2YXIgc2VsPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTtmb3IodmFyIGk9MDtpPHNlbC5sZW5ndGg7aSsrKWlmKHNlbFtpXS5jbGFzc05hbWUuaW5kZXhPZignZ29vZy10ZS1jb21ibycpIT0tMSl7dGVDb21ibz1zZWxbaV07YnJlYWs7fWlmKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdnb29nbGVfdHJhbnNsYXRlX2VsZW1lbnQyJyk9PW51bGx8fGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdnb29nbGVfdHJhbnNsYXRlX2VsZW1lbnQyJykuaW5uZXJIVE1MLmxlbmd0aD09MHx8dGVDb21iby5sZW5ndGg9PTB8fHRlQ29tYm8uaW5uZXJIVE1MLmxlbmd0aD09MCl7c2V0VGltZW91dChmdW5jdGlvbigpe2RvR1RyYW5zbGF0ZShsYW5nX3BhaXIpfSw1MDApfWVsc2V7dGVDb21iby52YWx1ZT1sYW5nO2ZpcmVfZXZlbnQodGVDb21ibywnY2hhbmdlJyk7ZmlyZV9ldmVudCh0ZUNvbWJvLCdjaGFuZ2UnKX19CiAgICAgICAgd2luZG93Lmdvb2dsZVRyYW5zbGF0ZUVsZW1lbnRJbml0Mj1mdW5jdGlvbigpe25ldyBnb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZUVsZW1lbnQoe3BhZ2VMYW5ndWFnZTpkZWZhdWx0X2xhbmd1YWdlLGF1dG9EaXNwbGF5OmZhbHNlfSwnZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50MicpfTsKCiAgICAgICAgaWYoY3VycmVudF9sYW5nICE9IGRlZmF1bHRfbGFuZ3VhZ2UpCiAgICAgICAgICAgIGxvYWRfdGxpYigpOwogICAgICAgIGVsc2UKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCh1X2NsYXNzKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcmVudGVyJyxsb2FkX3RsaWIpO2UuYWRkRXZlbnRMaXN0ZW5lcignZm9jdXNpbicsbG9hZF90bGliKX0pOwogICAgfQoKICAgIHZhciBndF9mbG9hdF9vcGVuID0gZmFsc2U7CiAgICBmdW5jdGlvbiBndF9oc2Nyb2xsKGV2dCl7dmFyIHRndCA9IGV2dC50YXJnZXQ7aWYodGd0LnRhZ05hbWUgPT0gJ0EnKXRndD10Z3QucGFyZW50Tm9kZTtlbHNlIGlmKHRndC50YWdOYW1lID09ICdJTUcnKXRndD10Z3QucGFyZW50Tm9kZS5wYXJlbnROb2RlO2lmKGV2dC50eXBlID09ICdtb3VzZXdoZWVsJyl7ZXZ0LnByZXZlbnREZWZhdWx0KCk7dGd0LnNjcm9sbExlZnQgLT0gTWF0aC5zaWduKGV2dC53aGVlbERlbHRhKSAqIDg4O31lbHNlIGlmKGV2dC50eXBlID09ICd0b3VjaHN0YXJ0Jyl7Z3RfdG91Y2hzdGFydF9wb3N4ID0gZ3RfdG91Y2hzdGFydF9wb3N4X3N0YXRpYyA9IGV2dC50b3VjaGVzWzBdLnBhZ2VYO2d0X3RvdWNoc3RhcnRfdGltZXN0YW1wID0gZXZ0LnRpbWVTdGFtcDt9ZWxzZSBpZihldnQudHlwZSA9PSAndG91Y2htb3ZlJyl7ZXZ0LnByZXZlbnREZWZhdWx0KCk7dGd0LnNjcm9sbExlZnQgKz0gTWF0aC5zaWduKGd0X3RvdWNoc3RhcnRfcG9zeCAtIGV2dC50b3VjaGVzWzBdLnBhZ2VYKSAqIDEwO2d0X3RvdWNoc3RhcnRfcG9zeCA9IGV2dC50b3VjaGVzWzBdLnBhZ2VYO31lbHNlIGlmKGV2dC50eXBlID09ICd0b3VjaGVuZCcpe3ZhciBzY3JvbGxfc3BlZWQgPSAoZ3RfdG91Y2hzdGFydF9wb3N4X3N0YXRpYyAtIGV2dC5jaGFuZ2VkVG91Y2hlc1swXS5wYWdlWCkgLyAoZXZ0LnRpbWVTdGFtcCAtIGd0X3RvdWNoc3RhcnRfdGltZXN0YW1wKTt0Z3Quc2Nyb2xsVG8oe2xlZnQ6IHRndC5zY3JvbGxMZWZ0ICsgc2Nyb2xsX3NwZWVkICogNTAwLCBiZWhhdmlvcjogJ3Ntb290aCd9KTt9fQogICAgZnVuY3Rpb24gZ3Rfc2hvd19mbG9hdF9zd2l0Y2hlcihlbCl7CiAgICAgICAgZ3RfZmxvYXRfb3Blbj10cnVlOwogICAgICAgIGlmKHN3aXRjaGVyX2hvcml6b250YWxfcG9zaXRpb24gPT0gJ2lubGluZScpCiAgICAgICAgICAgIGVsLnF1ZXJ5U2VsZWN0b3IodV9jbGFzcyArICcgLmd0X29wdGlvbnMnKS5zdHlsZS5tYXhXaWR0aCA9IChlbC5wYXJlbnROb2RlLmNsaWVudFdpZHRoIC0gZWwuY2xpZW50V2lkdGggLSAxKSArICdweCc7CiAgICAgICAgZWwucXVlcnlTZWxlY3RvckFsbCh1X2NsYXNzICsgJyAuZ3Rfb3B0aW9ucyBhIGltZzpub3QoW3NyY10pJykuZm9yRWFjaChmdW5jdGlvbihpbWcpe2ltZy5zZXRBdHRyaWJ1dGUoJ3NyYycsIGltZy5nZXRBdHRyaWJ1dGUoJ2RhdGEtZ3QtbGF6eS1zcmMnKSk7fSk7CiAgICAgICAgZWwucXVlcnlTZWxlY3Rvcih1X2NsYXNzICsgJyAuZ3Qtc2VsZWN0ZWQgc3Bhbi5ndF9mbG9hdF9zd2l0Y2hlci1hcnJvdycpLmNsYXNzTGlzdC5hZGQoJ2d0X2Fycm93X3JvdGF0ZScpOwogICAgICAgIGVsLnF1ZXJ5U2VsZWN0b3JBbGwodV9jbGFzcyArICcgLmd0X29wdGlvbnMnKS5mb3JFYWNoKGZ1bmN0aW9uKGUpewogICAgICAgICAgICBlLnN0eWxlLmRpc3BsYXk9J2Jsb2NrJzsKICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgZS5jbGFzc0xpc3QuYWRkKCdndC1vcGVuJyk7CiAgICAgICAgICAgICAgICBpZihmbG9hdF9zd2l0Y2hlcl9vcGVuX2RpcmVjdGlvbiA9PSAnbGVmdCcgfHwgZmxvYXRfc3dpdGNoZXJfb3Blbl9kaXJlY3Rpb24gPT0gJ3JpZ2h0JykgewogICAgICAgICAgICAgICAgICAgIGUuYWRkRXZlbnRMaXN0ZW5lcignbW91c2V3aGVlbCcsIGd0X2hzY3JvbGwpOwogICAgICAgICAgICAgICAgICAgIGUuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2hzdGFydCcsIGd0X2hzY3JvbGwpOwogICAgICAgICAgICAgICAgICAgIGUuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgZ3RfaHNjcm9sbCk7CiAgICAgICAgICAgICAgICAgICAgZS5hZGRFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIGd0X2hzY3JvbGwpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LDIwMCk7CiAgICAgICAgfSk7CiAgICB9CiAgICBmdW5jdGlvbiBndF9oaWRlX2Zsb2F0X3N3aXRjaGVyKCl7CiAgICAgICAgZ3RfZmxvYXRfb3Blbj1mYWxzZTsKICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHVfY2xhc3MgKyAnIC5ndF9mbG9hdF9zd2l0Y2hlciAuZ3Qtc2VsZWN0ZWQgc3Bhbi5ndF9mbG9hdF9zd2l0Y2hlci1hcnJvdy5ndF9hcnJvd19yb3RhdGUnKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UuY2xhc3NMaXN0LnJlbW92ZSgnZ3RfYXJyb3dfcm90YXRlJyl9KTsKICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHVfY2xhc3MgKyAnIC5ndF9mbG9hdF9zd2l0Y2hlciAuZ3Rfb3B0aW9ucy5ndC1vcGVuJykuZm9yRWFjaChmdW5jdGlvbihlKXsKICAgICAgICAgICAgaWYoZmxvYXRfc3dpdGNoZXJfb3Blbl9kaXJlY3Rpb24gPT0gJ2xlZnQnIHx8IGZsb2F0X3N3aXRjaGVyX29wZW5fZGlyZWN0aW9uID09ICdyaWdodCcpIHsKICAgICAgICAgICAgICAgIGUucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2V3aGVlbCcsIGd0X2hzY3JvbGwpOwogICAgICAgICAgICAgICAgZS5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgZ3RfaHNjcm9sbCk7CiAgICAgICAgICAgICAgICBlLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNobW92ZScsIGd0X2hzY3JvbGwpOwogICAgICAgICAgICAgICAgZS5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIGd0X2hzY3JvbGwpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGUuY2xhc3NMaXN0LnJlbW92ZSgnZ3Qtb3BlbicpOwogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZS5zdHlsZS5kaXNwbGF5PSdub25lJ30sMjAwKTsKICAgICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIGd0X3VwZGF0ZV9mbG9hdF9sYW5ndWFnZShlbCl7CiAgICAgICAgdmFyIGxhbmc9ZWwuZ2V0QXR0cmlidXRlKCdkYXRhLWd0LWxhbmcnKTsKICAgICAgICB2YXIgaW1nX3NyYz1lbC5wYXJlbnROb2RlLnF1ZXJ5U2VsZWN0b3IoJ2FbZGF0YS1ndC1sYW5nPSInK2xhbmcrJyJdIGltZycpLmdldEF0dHJpYnV0ZSgnc3JjJyk7CiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpe2VsLnBhcmVudE5vZGUucXVlcnlTZWxlY3RvcignYS5ndC1jdXJyZW50JykuY2xhc3NMaXN0LnJlbW92ZSgnZ3QtY3VycmVudCcpO2VsLmNsYXNzTGlzdC5hZGQoJ2d0LWN1cnJlbnQnKTt9LDQwMCk7CiAgICAgICAgZWwucGFyZW50Tm9kZS5wYXJlbnROb2RlLnF1ZXJ5U2VsZWN0b3IoJy5ndC1zZWxlY3RlZCBpbWcnKS5zZXRBdHRyaWJ1dGUoJ3NyYycsaW1nX3NyYyk7CiAgICAgICAgZWwucGFyZW50Tm9kZS5wYXJlbnROb2RlLnF1ZXJ5U2VsZWN0b3IoJy5ndC1zZWxlY3RlZCBzcGFuLmd0LWxhbmctY29kZScpLmlubmVyVGV4dD1sYW5nOwogICAgICAgIGd0X2hpZGVfZmxvYXRfc3dpdGNoZXIoKTsKICAgIH0KCiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCh1X2NsYXNzICsgJyAuZ3RfZmxvYXRfc3dpdGNoZXInKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2Uuc3R5bGUub3BhY2l0eT0xfSl9LDIwKTsKICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwodV9jbGFzcyArICcgYVtkYXRhLWd0LWxhbmddJykuZm9yRWFjaChmdW5jdGlvbihlKXtlLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJyxmdW5jdGlvbihldnQpewogICAgICAgIGlmKHVybF9zdHJ1Y3R1cmUgPT0gJ25vbmUnKSB7CiAgICAgICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgICBkb0dUcmFuc2xhdGUoZGVmYXVsdF9sYW5ndWFnZSsnfCcrZS5nZXRBdHRyaWJ1dGUoJ2RhdGEtZ3QtbGFuZycpKTsKICAgICAgICB9CiAgICAgICAgZ3RfdXBkYXRlX2Zsb2F0X2xhbmd1YWdlKGUpOwogICAgfSl9KTsKCiAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHVfY2xhc3MgKyAnIGRpdi5ndC1zZWxlY3RlZCcpLmZvckVhY2goZnVuY3Rpb24oZSl7CiAgICAgICAgZS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsZnVuY3Rpb24oZXZ0KXtldnQuc3RvcFByb3BhZ2F0aW9uKCk7aWYoZ3RfZmxvYXRfb3BlbilndF9oaWRlX2Zsb2F0X3N3aXRjaGVyKCk7ZWxzZSBndF9zaG93X2Zsb2F0X3N3aXRjaGVyKGUucGFyZW50Tm9kZSk7fSk7CiAgICAgICAgZS5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVyZW50ZXInLGZ1bmN0aW9uKGV2dCl7ZXZ0LnRhcmdldC5wYXJlbnROb2RlLnF1ZXJ5U2VsZWN0b3JBbGwoJy5ndF9vcHRpb25zIGltZzpub3QoW3NyY10pJykuZm9yRWFjaChmdW5jdGlvbihpbWcpe2ltZy5zZXRBdHRyaWJ1dGUoJ3NyYycsIGltZy5nZXRBdHRyaWJ1dGUoJ2RhdGEtZ3QtbGF6eS1zcmMnKSl9KX0pOwogICAgfSk7CgogICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLGZ1bmN0aW9uKCl7aWYoZ3RfZmxvYXRfb3BlbilndF9oaWRlX2Zsb2F0X3N3aXRjaGVyKCl9KTsKCiAgICBpZihkZXRlY3RfYnJvd3Nlcl9sYW5ndWFnZSAmJiB3aW5kb3cubG9jYWxTdG9yYWdlICYmIHdpbmRvdy5uYXZpZ2F0b3IgJiYgbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2d0X2F1dG9zd2l0Y2gnKSA9PSBudWxsICYmICEvYm90fHNwaWRlcnxzbHVycHxmYWNlYm9vay9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkpIHsKICAgICAgICB2YXIgYWNjZXB0X2xhbmd1YWdlID0gKG5hdmlnYXRvci5sYW5ndWFnZXx8bmF2aWdhdG9yLnVzZXJMYW5ndWFnZSkudG9Mb3dlckNhc2UoKTsKICAgICAgICBzd2l0Y2goYWNjZXB0X2xhbmd1YWdlKSB7CiAgICAgICAgICAgIGNhc2UgJ3poJzoKICAgICAgICAgICAgY2FzZSAnemgtY24nOnZhciBwcmVmZXJyZWRfbGFuZ3VhZ2UgPSAnemgtQ04nO2JyZWFrOwogICAgICAgICAgICBjYXNlICd6aC10dyc6CiAgICAgICAgICAgIGNhc2UgJ3poLWhrJzp2YXIgcHJlZmVycmVkX2xhbmd1YWdlID0gJ3poLVRXJzticmVhazsKICAgICAgICAgICAgY2FzZSAnaGUnOnZhciBwcmVmZXJyZWRfbGFuZ3VhZ2UgPSAnaXcnO2JyZWFrOwogICAgICAgICAgICBkZWZhdWx0OnZhciBwcmVmZXJyZWRfbGFuZ3VhZ2UgPSBhY2NlcHRfbGFuZ3VhZ2Uuc3Vic3RyKDAsMik7YnJlYWs7CiAgICAgICAgfQoKICAgICAgICBpZihjdXJyZW50X2xhbmcgPT0gZGVmYXVsdF9sYW5ndWFnZSAmJiBwcmVmZXJyZWRfbGFuZ3VhZ2UgIT0gZGVmYXVsdF9sYW5ndWFnZSAmJiBsYW5ndWFnZXMuaW5jbHVkZXMocHJlZmVycmVkX2xhbmd1YWdlKSkgewogICAgICAgICAgICBpZih1cmxfc3RydWN0dXJlID09ICdub25lJykgewogICAgICAgICAgICAgICAgbG9hZF90bGliKCk7CiAgICAgICAgICAgICAgICB3aW5kb3cuZ3RfdHJhbnNsYXRlX3NjcmlwdC5vbmxvYWQ9ZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICBkb0dUcmFuc2xhdGUoZGVmYXVsdF9sYW5ndWFnZSsnfCcrcHJlZmVycmVkX2xhbmd1YWdlKTsKICAgICAgICAgICAgICAgICAgICB2YXIgZWwgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHVfY2xhc3MrJyBhW2RhdGEtZ3QtbGFuZz0iJytwcmVmZXJyZWRfbGFuZ3VhZ2UrJyJdJyk7CiAgICAgICAgICAgICAgICAgICAgZWwucXVlcnlTZWxlY3RvckFsbCgnaW1nOm5vdChbc3JjXSknKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2Uuc2V0QXR0cmlidXRlKCdzcmMnLCBlLmdldEF0dHJpYnV0ZSgnZGF0YS1ndC1sYXp5LXNyYycpKX0pOwogICAgICAgICAgICAgICAgICAgIGd0X3VwZGF0ZV9mbG9hdF9sYW5ndWFnZShlbCk7CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwodV9jbGFzcysnIGFbZGF0YS1ndC1sYW5nPSInK3ByZWZlcnJlZF9sYW5ndWFnZSsnIl0nKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2xvY2F0aW9uLmhyZWY9ZS5ocmVmfSk7CiAgICAgICAgfQoKICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnZ3RfYXV0b3N3aXRjaCcsIDEpOwogICAgfQp9KSgpOwo="}},"time_used":26,"timings":{"blocked":-1,"dns":3,"connect":2,"send":0,"wait":9,"receive":0,"ssl":11},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/image/latest-blog/icon.png","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.355Z","timestamp":1785143908355,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /image/latest-blog/icon.png HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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-11T07:57:31.65745Z","times_seen":17832625,"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":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/opensans/v44/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-muw.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://scromegatrade.com/","date":"2026-07-27T09:18:46.378Z","timestamp":1785143926378,"http_version":"HTTP/3","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":"*.gstatic.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:25 GMT","end":"Mon, 21 Sep 2026 08:39:24 GMT"},"fingerprint":{"sha1":"4E:F2:73:C6:27:16:58:35:FE:55:D5:30:6B:E8:6D:2B:DA:B0:E8:7B","sha256":"82:EF:6A:61:96:A5:23:D6:2C:2C:9D:77:67:04:D8:7B:3B:6A:50:DA:3C:6C:6A:5F:4E:2D:55:F3:FC:DA:0B:EE"}}},"request":{"raw":"GET /s/opensans/v44/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-muw.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://scromegatrade.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://fonts.googleapis.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: 48320\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:19 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:19 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Mon, 15 Sep 2025 16:30:41 GMT\r\ncontent-type: font/woff2\r\nage: 418107\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":48320,"size_decoded":49133,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 48320, version 1.0","md5":"dcf31ebe107435bd68e0164d59e19b87","sha1":"b68160c9333af833fe483928b3ef7128c07a56a0","sha256":"d8e4fe0452aa2076429a9bb5d8757d00a994dd95986cf950e9a1a371b9a072a0","sha512":"130cd52c3cccc36a7029bf92b2ddb363b8b36d206454aacc246739919552fccec5cacbad615ba4ac3817da3e83239371fe51324bdadd08357e3495087f62cb08","ssdeep":"768:Jzqdwl5YV7FVmpudK5a8dF8D8Z7J78VGnNFZEKh02dmSTPe9UiallHcOEi2c0NC1:9q+SYuMaVwZ7oGRNh02dd6UialBcOEpE","tlshash":"1623f218f29471f7edecd4d500a18c72baa528d442f116ed07b8d53ca36ca817a729fb","first_seen":"2025-09-17T00:07:53.723302Z","last_seen":"2026-08-11T07:59:18.823424Z","times_seen":325213,"resource_available":false,"data":"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"}},"time_used":64,"timings":{"blocked":30,"dns":0,"connect":0,"send":0,"wait":16,"receive":18,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"scromegatrade.com/vendors/magnify-popup/jquery.magnific-popup.min.js","fqdn":"scromegatrade.com","domain":"scromegatrade.com","tld":"com"},"ip":{"addr":"158.220.124.22","port":443,"asn":51167,"as":"Contabo GmbH","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://scromegatrade.com/","date":"2026-07-27T09:18:28.290Z","timestamp":1785143908290,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"www.scromegatrade.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 19:14:35 GMT","end":"Wed, 02 Sep 2026 19:14:34 GMT"},"fingerprint":{"sha1":"76:49:FA:6B:EC:F5:64:1C:18:A7:5C:D0:09:8C:D6:00:A4:D7:AF:08","sha256":"CC:2D:78:46:5C:0E:C6:B3:CE:F7:A5:24:1D:69:66:31:12:01:85:98:62:F8:DD:55:1D:DA:6A:FD:23:C3:C5:78"}}},"request":{"raw":"GET /vendors/magnify-popup/jquery.magnific-popup.min.js HTTP/1.1\r\nHost: scromegatrade.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://scromegatrade.com/\r\nCookie: PHPSESSID=su73qq6rafvs6uv0f9ir54np9e\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\nDate: Mon, 27 Jul 2026 09:18:42 GMT\r\nServer: Apache/2.4.62 (Unix) OpenSSL/1.1.1k\r\nLast-Modified: Wed, 20 Aug 2025 15:02:52 GMT\r\nETag: \"4ef8-63ccd444b1f00-gzip\"\r\nAccept-Ranges: bytes\r\nVary: Accept-Encoding,User-Agent\r\nContent-Encoding: gzip\r\nContent-Length: 7346\r\nKeep-Alive: timeout=5, max=97\r\nConnection: Keep-Alive\r\nContent-Type: text/javascript\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"UNIX","description":"Unix is a family of multitasking, multiuser computer operating systems.","website":"https://unix.org","common_platform_enumeration":"","icon":"UNIX.png","categories":["Operating systems"]},{"name":"Apache HTTP Server:2.4.62","description":"Apache is a free and open-source cross-platform web server software.","website":"https://httpd.apache.org/","common_platform_enumeration":"cpe:2.3:a:apache:http_server:*:*:*:*:*:*:*:*","icon":"Apache.svg","categories":["Web servers"]},{"name":"OpenSSL:1.1.1k","description":"OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.","website":"https://openssl.org","common_platform_enumeration":"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*","icon":"OpenSSL.png","categories":["Web server extensions"]}],"data":{"size":20216,"size_decoded":7714,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (20087)","md5":"ba6cf724c8bb1cf5b084e79ff230626e","sha1":"f455c5f153f872e52265f87a644ff89fe14a6fb6","sha256":"3fddc6d28aba3c13d64cfd4847c333ff48c71d4a5a58bd1a0494ca6ae8ac1bb4","sha512":"22c361e44dde632dedaff2625f6631e2fb02ba3b6487097b48baa09f02cd81fd381ebb7d053f525e52e56655b1f8e2b89ddcc0a002e1b0c35c0a6920823641d7","ssdeep":"384:lPhVPXQ2G2XAQyqVxRQ5giCCMLtA15h5/F6l8aZwHwztLCpmst:lPBIt8I5h5t1qkOLCMst","tlshash":"bd921894f2b2b21383a735b8686f70093a729952ed06c855a55d94d87efcec89037f3c","first_seen":"2023-03-07T01:02:00Z","last_seen":"2026-08-11T07:31:46.763966Z","times_seen":73545,"resource_available":true,"data":"LyohIE1hZ25pZmljIFBvcHVwIC0gdjEuMS4wIC0gMjAxNi0wMi0yMAoqIGh0dHA6Ly9kaW1zZW1lbm92LmNvbS9wbHVnaW5zL21hZ25pZmljLXBvcHVwLwoqIENvcHlyaWdodCAoYykgMjAxNiBEbWl0cnkgU2VtZW5vdjsgKi8KIWZ1bmN0aW9uKGEpeyJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKFsianF1ZXJ5Il0sYSk6YSgib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHM/cmVxdWlyZSgianF1ZXJ5Iik6d2luZG93LmpRdWVyeXx8d2luZG93LlplcHRvKX0oZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZixnLGg9IkNsb3NlIixpPSJCZWZvcmVDbG9zZSIsaj0iQWZ0ZXJDbG9zZSIsaz0iQmVmb3JlQXBwZW5kIixsPSJNYXJrdXBQYXJzZSIsbT0iT3BlbiIsbj0iQ2hhbmdlIixvPSJtZnAiLHA9Ii4iK28scT0ibWZwLXJlYWR5IixyPSJtZnAtcmVtb3ZpbmciLHM9Im1mcC1wcmV2ZW50LWNsb3NlIix0PWZ1bmN0aW9uKCl7fSx1PSEhd2luZG93LmpRdWVyeSx2PWEod2luZG93KSx3PWZ1bmN0aW9uKGEsYyl7Yi5ldi5vbihvK2ErcCxjKX0seD1mdW5jdGlvbihiLGMsZCxlKXt2YXIgZj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gZi5jbGFzc05hbWU9Im1mcC0iK2IsZCYmKGYuaW5uZXJIVE1MPWQpLGU/YyYmYy5hcHBlbmRDaGlsZChmKTooZj1hKGYpLGMmJmYuYXBwZW5kVG8oYykpLGZ9LHk9ZnVuY3Rpb24oYyxkKXtiLmV2LnRyaWdnZXJIYW5kbGVyKG8rYyxkKSxiLnN0LmNhbGxiYWNrcyYmKGM9Yy5jaGFyQXQoMCkudG9Mb3dlckNhc2UoKStjLnNsaWNlKDEpLGIuc3QuY2FsbGJhY2tzW2NdJiZiLnN0LmNhbGxiYWNrc1tjXS5hcHBseShiLGEuaXNBcnJheShkKT9kOltkXSkpfSx6PWZ1bmN0aW9uKGMpe3JldHVybiBjPT09ZyYmYi5jdXJyVGVtcGxhdGUuY2xvc2VCdG58fChiLmN1cnJUZW1wbGF0ZS5jbG9zZUJ0bj1hKGIuc3QuY2xvc2VNYXJrdXAucmVwbGFjZSgiJXRpdGxlJSIsYi5zdC50Q2xvc2UpKSxnPWMpLGIuY3VyclRlbXBsYXRlLmNsb3NlQnRufSxBPWZ1bmN0aW9uKCl7YS5tYWduaWZpY1BvcHVwLmluc3RhbmNlfHwoYj1uZXcgdCxiLmluaXQoKSxhLm1hZ25pZmljUG9wdXAuaW5zdGFuY2U9Yil9LEI9ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIikuc3R5bGUsYj1bIm1zIiwiTyIsIk1veiIsIldlYmtpdCJdO2lmKHZvaWQgMCE9PWEudHJhbnNpdGlvbilyZXR1cm4hMDtmb3IoO2IubGVuZ3RoOylpZihiLnBvcCgpKyJUcmFuc2l0aW9uImluIGEpcmV0dXJuITA7cmV0dXJuITF9O3QucHJvdG90eXBlPXtjb25zdHJ1Y3Rvcjp0LGluaXQ6ZnVuY3Rpb24oKXt2YXIgYz1uYXZpZ2F0b3IuYXBwVmVyc2lvbjtiLmlzTG93SUU9Yi5pc0lFOD1kb2N1bWVudC5hbGwmJiFkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyLGIuaXNBbmRyb2lkPS9hbmRyb2lkL2dpLnRlc3QoYyksYi5pc0lPUz0vaXBob25lfGlwYWR8aXBvZC9naS50ZXN0KGMpLGIuc3VwcG9ydHNUcmFuc2l0aW9uPUIoKSxiLnByb2JhYmx5TW9iaWxlPWIuaXNBbmRyb2lkfHxiLmlzSU9TfHwvKE9wZXJhIE1pbmkpfEtpbmRsZXx3ZWJPU3xCbGFja0JlcnJ5fChPcGVyYSBNb2JpKXwoV2luZG93cyBQaG9uZSl8SUVNb2JpbGUvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGQ9YShkb2N1bWVudCksYi5wb3B1cHNDYWNoZT17fX0sb3BlbjpmdW5jdGlvbihjKXt2YXIgZTtpZihjLmlzT2JqPT09ITEpe2IuaXRlbXM9Yy5pdGVtcy50b0FycmF5KCksYi5pbmRleD0wO3ZhciBnLGg9Yy5pdGVtcztmb3IoZT0wO2U8aC5sZW5ndGg7ZSsrKWlmKGc9aFtlXSxnLnBhcnNlZCYmKGc9Zy5lbFswXSksZz09PWMuZWxbMF0pe2IuaW5kZXg9ZTticmVha319ZWxzZSBiLml0ZW1zPWEuaXNBcnJheShjLml0ZW1zKT9jLml0ZW1zOltjLml0ZW1zXSxiLmluZGV4PWMuaW5kZXh8fDA7aWYoYi5pc09wZW4pcmV0dXJuIHZvaWQgYi51cGRhdGVJdGVtSFRNTCgpO2IudHlwZXM9W10sZj0iIixjLm1haW5FbCYmYy5tYWluRWwubGVuZ3RoP2IuZXY9Yy5tYWluRWwuZXEoMCk6Yi5ldj1kLGMua2V5PyhiLnBvcHVwc0NhY2hlW2Mua2V5XXx8KGIucG9wdXBzQ2FjaGVbYy5rZXldPXt9KSxiLmN1cnJUZW1wbGF0ZT1iLnBvcHVwc0NhY2hlW2Mua2V5XSk6Yi5jdXJyVGVtcGxhdGU9e30sYi5zdD1hLmV4dGVuZCghMCx7fSxhLm1hZ25pZmljUG9wdXAuZGVmYXVsdHMsYyksYi5maXhlZENvbnRlbnRQb3M9ImF1dG8iPT09Yi5zdC5maXhlZENvbnRlbnRQb3M/IWIucHJvYmFibHlNb2JpbGU6Yi5zdC5maXhlZENvbnRlbnRQb3MsYi5zdC5tb2RhbCYmKGIuc3QuY2xvc2VPbkNvbnRlbnRDbGljaz0hMSxiLnN0LmNsb3NlT25CZ0NsaWNrPSExLGIuc3Quc2hvd0Nsb3NlQnRuPSExLGIuc3QuZW5hYmxlRXNjYXBlS2V5PSExKSxiLmJnT3ZlcmxheXx8KGIuYmdPdmVybGF5PXgoImJnIikub24oImNsaWNrIitwLGZ1bmN0aW9uKCl7Yi5jbG9zZSgpfSksYi53cmFwPXgoIndyYXAiKS5hdHRyKCJ0YWJpbmRleCIsLTEpLm9uKCJjbGljayIrcCxmdW5jdGlvbihhKXtiLl9jaGVja0lmQ2xvc2UoYS50YXJnZXQpJiZiLmNsb3NlKCl9KSxiLmNvbnRhaW5lcj14KCJjb250YWluZXIiLGIud3JhcCkpLGIuY29udGVudENvbnRhaW5lcj14KCJjb250ZW50IiksYi5zdC5wcmVsb2FkZXImJihiLnByZWxvYWRlcj14KCJwcmVsb2FkZXIiLGIuY29udGFpbmVyLGIuc3QudExvYWRpbmcpKTt2YXIgaT1hLm1hZ25pZmljUG9wdXAubW9kdWxlcztmb3IoZT0wO2U8aS5sZW5ndGg7ZSsrKXt2YXIgaj1pW2VdO2o9ai5jaGFyQXQoMCkudG9VcHBlckNhc2UoKStqLnNsaWNlKDEpLGJbImluaXQiK2pdLmNhbGwoYil9eSgiQmVmb3JlT3BlbiIpLGIuc3Quc2hvd0Nsb3NlQnRuJiYoYi5zdC5jbG9zZUJ0bkluc2lkZT8odyhsLGZ1bmN0aW9uKGEsYixjLGQpe2MuY2xvc2VfcmVwbGFjZVdpdGg9eihkLnR5cGUpfSksZis9IiBtZnAtY2xvc2UtYnRuLWluIik6Yi53cmFwLmFwcGVuZCh6KCkpKSxiLnN0LmFsaWduVG9wJiYoZis9IiBtZnAtYWxpZ24tdG9wIiksYi5maXhlZENvbnRlbnRQb3M/Yi53cmFwLmNzcyh7b3ZlcmZsb3c6Yi5zdC5vdmVyZmxvd1ksb3ZlcmZsb3dYOiJoaWRkZW4iLG92ZXJmbG93WTpiLnN0Lm92ZXJmbG93WX0pOmIud3JhcC5jc3Moe3RvcDp2LnNjcm9sbFRvcCgpLHBvc2l0aW9uOiJhYnNvbHV0ZSJ9KSwoYi5zdC5maXhlZEJnUG9zPT09ITF8fCJhdXRvIj09PWIuc3QuZml4ZWRCZ1BvcyYmIWIuZml4ZWRDb250ZW50UG9zKSYmYi5iZ092ZXJsYXkuY3NzKHtoZWlnaHQ6ZC5oZWlnaHQoKSxwb3NpdGlvbjoiYWJzb2x1dGUifSksYi5zdC5lbmFibGVFc2NhcGVLZXkmJmQub24oImtleXVwIitwLGZ1bmN0aW9uKGEpezI3PT09YS5rZXlDb2RlJiZiLmNsb3NlKCl9KSx2Lm9uKCJyZXNpemUiK3AsZnVuY3Rpb24oKXtiLnVwZGF0ZVNpemUoKX0pLGIuc3QuY2xvc2VPbkNvbnRlbnRDbGlja3x8KGYrPSIgbWZwLWF1dG8tY3Vyc29yIiksZiYmYi53cmFwLmFkZENsYXNzKGYpO3ZhciBrPWIud0g9di5oZWlnaHQoKSxuPXt9O2lmKGIuZml4ZWRDb250ZW50UG9zJiZiLl9oYXNTY3JvbGxCYXIoaykpe3ZhciBvPWIuX2dldFNjcm9sbGJhclNpemUoKTtvJiYobi5tYXJnaW5SaWdodD1vKX1iLmZpeGVkQ29udGVudFBvcyYmKGIuaXNJRTc/YSgiYm9keSwgaHRtbCIpLmNzcygib3ZlcmZsb3ciLCJoaWRkZW4iKTpuLm92ZXJmbG93PSJoaWRkZW4iKTt2YXIgcj1iLnN0Lm1haW5DbGFzcztyZXR1cm4gYi5pc0lFNyYmKHIrPSIgbWZwLWllNyIpLHImJmIuX2FkZENsYXNzVG9NRlAociksYi51cGRhdGVJdGVtSFRNTCgpLHkoIkJ1aWxkQ29udHJvbHMiKSxhKCJodG1sIikuY3NzKG4pLGIuYmdPdmVybGF5LmFkZChiLndyYXApLnByZXBlbmRUbyhiLnN0LnByZXBlbmRUb3x8YShkb2N1bWVudC5ib2R5KSksYi5fbGFzdEZvY3VzZWRFbD1kb2N1bWVudC5hY3RpdmVFbGVtZW50LHNldFRpbWVvdXQoZnVuY3Rpb24oKXtiLmNvbnRlbnQ/KGIuX2FkZENsYXNzVG9NRlAocSksYi5fc2V0Rm9jdXMoKSk6Yi5iZ092ZXJsYXkuYWRkQ2xhc3MocSksZC5vbigiZm9jdXNpbiIrcCxiLl9vbkZvY3VzSW4pfSwxNiksYi5pc09wZW49ITAsYi51cGRhdGVTaXplKGspLHkobSksY30sY2xvc2U6ZnVuY3Rpb24oKXtiLmlzT3BlbiYmKHkoaSksYi5pc09wZW49ITEsYi5zdC5yZW1vdmFsRGVsYXkmJiFiLmlzTG93SUUmJmIuc3VwcG9ydHNUcmFuc2l0aW9uPyhiLl9hZGRDbGFzc1RvTUZQKHIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtiLl9jbG9zZSgpfSxiLnN0LnJlbW92YWxEZWxheSkpOmIuX2Nsb3NlKCkpfSxfY2xvc2U6ZnVuY3Rpb24oKXt5KGgpO3ZhciBjPXIrIiAiK3ErIiAiO2lmKGIuYmdPdmVybGF5LmRldGFjaCgpLGIud3JhcC5kZXRhY2goKSxiLmNvbnRhaW5lci5lbXB0eSgpLGIuc3QubWFpbkNsYXNzJiYoYys9Yi5zdC5tYWluQ2xhc3MrIiAiKSxiLl9yZW1vdmVDbGFzc0Zyb21NRlAoYyksYi5maXhlZENvbnRlbnRQb3Mpe3ZhciBlPXttYXJnaW5SaWdodDoiIn07Yi5pc0lFNz9hKCJib2R5LCBodG1sIikuY3NzKCJvdmVyZmxvdyIsIiIpOmUub3ZlcmZsb3c9IiIsYSgiaHRtbCIpLmNzcyhlKX1kLm9mZigia2V5dXAiK3ArIiBmb2N1c2luIitwKSxiLmV2Lm9mZihwKSxiLndyYXAuYXR0cigiY2xhc3MiLCJtZnAtd3JhcCIpLnJlbW92ZUF0dHIoInN0eWxlIiksYi5iZ092ZXJsYXkuYXR0cigiY2xhc3MiLCJtZnAtYmciKSxiLmNvbnRhaW5lci5hdHRyKCJjbGFzcyIsIm1mcC1jb250YWluZXIiKSwhYi5zdC5zaG93Q2xvc2VCdG58fGIuc3QuY2xvc2VCdG5JbnNpZGUmJmIuY3VyclRlbXBsYXRlW2IuY3Vyckl0ZW0udHlwZV0hPT0hMHx8Yi5jdXJyVGVtcGxhdGUuY2xvc2VCdG4mJmIuY3VyclRlbXBsYXRlLmNsb3NlQnRuLmRldGFjaCgpLGIuc3QuYXV0b0ZvY3VzTGFzdCYmYi5fbGFzdEZvY3VzZWRFbCYmYShiLl9sYXN0Rm9jdXNlZEVsKS5mb2N1cygpLGIuY3Vyckl0ZW09bnVsbCxiLmNvbnRlbnQ9bnVsbCxiLmN1cnJUZW1wbGF0ZT1udWxsLGIucHJldkhlaWdodD0wLHkoail9LHVwZGF0ZVNpemU6ZnVuY3Rpb24oYSl7aWYoYi5pc0lPUyl7dmFyIGM9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoL3dpbmRvdy5pbm5lcldpZHRoLGQ9d2luZG93LmlubmVySGVpZ2h0KmM7Yi53cmFwLmNzcygiaGVpZ2h0IixkKSxiLndIPWR9ZWxzZSBiLndIPWF8fHYuaGVpZ2h0KCk7Yi5maXhlZENvbnRlbnRQb3N8fGIud3JhcC5jc3MoImhlaWdodCIsYi53SCkseSgiUmVzaXplIil9LHVwZGF0ZUl0ZW1IVE1MOmZ1bmN0aW9uKCl7dmFyIGM9Yi5pdGVtc1tiLmluZGV4XTtiLmNvbnRlbnRDb250YWluZXIuZGV0YWNoKCksYi5jb250ZW50JiZiLmNvbnRlbnQuZGV0YWNoKCksYy5wYXJzZWR8fChjPWIucGFyc2VFbChiLmluZGV4KSk7dmFyIGQ9Yy50eXBlO2lmKHkoIkJlZm9yZUNoYW5nZSIsW2IuY3Vyckl0ZW0/Yi5jdXJySXRlbS50eXBlOiIiLGRdKSxiLmN1cnJJdGVtPWMsIWIuY3VyclRlbXBsYXRlW2RdKXt2YXIgZj1iLnN0W2RdP2Iuc3RbZF0ubWFya3VwOiExO3koIkZpcnN0TWFya3VwUGFyc2UiLGYpLGY/Yi5jdXJyVGVtcGxhdGVbZF09YShmKTpiLmN1cnJUZW1wbGF0ZVtkXT0hMH1lJiZlIT09Yy50eXBlJiZiLmNvbnRhaW5lci5yZW1vdmVDbGFzcygibWZwLSIrZSsiLWhvbGRlciIpO3ZhciBnPWJbImdldCIrZC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKStkLnNsaWNlKDEpXShjLGIuY3VyclRlbXBsYXRlW2RdKTtiLmFwcGVuZENvbnRlbnQoZyxkKSxjLnByZWxvYWRlZD0hMCx5KG4sYyksZT1jLnR5cGUsYi5jb250YWluZXIucHJlcGVuZChiLmNvbnRlbnRDb250YWluZXIpLHkoIkFmdGVyQ2hhbmdlIil9LGFwcGVuZENvbnRlbnQ6ZnVuY3Rpb24oYSxjKXtiLmNvbnRlbnQ9YSxhP2Iuc3Quc2hvd0Nsb3NlQnRuJiZiLnN0LmNsb3NlQnRuSW5zaWRlJiZiLmN1cnJUZW1wbGF0ZVtjXT09PSEwP2IuY29udGVudC5maW5kKCIubWZwLWNsb3NlIikubGVuZ3RofHxiLmNvbnRlbnQuYXBwZW5kKHooKSk6Yi5jb250ZW50PWE6Yi5jb250ZW50PSIiLHkoayksYi5jb250YWluZXIuYWRkQ2xhc3MoIm1mcC0iK2MrIi1ob2xkZXIiKSxiLmNvbnRlbnRDb250YWluZXIuYXBwZW5kKGIuY29udGVudCl9LHBhcnNlRWw6ZnVuY3Rpb24oYyl7dmFyIGQsZT1iLml0ZW1zW2NdO2lmKGUudGFnTmFtZT9lPXtlbDphKGUpfTooZD1lLnR5cGUsZT17ZGF0YTplLHNyYzplLnNyY30pLGUuZWwpe2Zvcih2YXIgZj1iLnR5cGVzLGc9MDtnPGYubGVuZ3RoO2crKylpZihlLmVsLmhhc0NsYXNzKCJtZnAtIitmW2ddKSl7ZD1mW2ddO2JyZWFrfWUuc3JjPWUuZWwuYXR0cigiZGF0YS1tZnAtc3JjIiksZS5zcmN8fChlLnNyYz1lLmVsLmF0dHIoImhyZWYiKSl9cmV0dXJuIGUudHlwZT1kfHxiLnN0LnR5cGV8fCJpbmxpbmUiLGUuaW5kZXg9YyxlLnBhcnNlZD0hMCxiLml0ZW1zW2NdPWUseSgiRWxlbWVudFBhcnNlIixlKSxiLml0ZW1zW2NdfSxhZGRHcm91cDpmdW5jdGlvbihhLGMpe3ZhciBkPWZ1bmN0aW9uKGQpe2QubWZwRWw9dGhpcyxiLl9vcGVuQ2xpY2soZCxhLGMpfTtjfHwoYz17fSk7dmFyIGU9ImNsaWNrLm1hZ25pZmljUG9wdXAiO2MubWFpbkVsPWEsYy5pdGVtcz8oYy5pc09iaj0hMCxhLm9mZihlKS5vbihlLGQpKTooYy5pc09iaj0hMSxjLmRlbGVnYXRlP2Eub2ZmKGUpLm9uKGUsYy5kZWxlZ2F0ZSxkKTooYy5pdGVtcz1hLGEub2ZmKGUpLm9uKGUsZCkpKX0sX29wZW5DbGljazpmdW5jdGlvbihjLGQsZSl7dmFyIGY9dm9pZCAwIT09ZS5taWRDbGljaz9lLm1pZENsaWNrOmEubWFnbmlmaWNQb3B1cC5kZWZhdWx0cy5taWRDbGljaztpZihmfHwhKDI9PT1jLndoaWNofHxjLmN0cmxLZXl8fGMubWV0YUtleXx8Yy5hbHRLZXl8fGMuc2hpZnRLZXkpKXt2YXIgZz12b2lkIDAhPT1lLmRpc2FibGVPbj9lLmRpc2FibGVPbjphLm1hZ25pZmljUG9wdXAuZGVmYXVsdHMuZGlzYWJsZU9uO2lmKGcpaWYoYS5pc0Z1bmN0aW9uKGcpKXtpZighZy5jYWxsKGIpKXJldHVybiEwfWVsc2UgaWYodi53aWR0aCgpPGcpcmV0dXJuITA7Yy50eXBlJiYoYy5wcmV2ZW50RGVmYXVsdCgpLGIuaXNPcGVuJiZjLnN0b3BQcm9wYWdhdGlvbigpKSxlLmVsPWEoYy5tZnBFbCksZS5kZWxlZ2F0ZSYmKGUuaXRlbXM9ZC5maW5kKGUuZGVsZWdhdGUpKSxiLm9wZW4oZSl9fSx1cGRhdGVTdGF0dXM6ZnVuY3Rpb24oYSxkKXtpZihiLnByZWxvYWRlcil7YyE9PWEmJmIuY29udGFpbmVyLnJlbW92ZUNsYXNzKCJtZnAtcy0iK2MpLGR8fCJsb2FkaW5nIiE9PWF8fChkPWIuc3QudExvYWRpbmcpO3ZhciBlPXtzdGF0dXM6YSx0ZXh0OmR9O3koIlVwZGF0ZVN0YXR1cyIsZSksYT1lLnN0YXR1cyxkPWUudGV4dCxiLnByZWxvYWRlci5odG1sKGQpLGIucHJlbG9hZGVyLmZpbmQoImEiKS5vbigiY2xpY2siLGZ1bmN0aW9uKGEpe2Euc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCl9KSxiLmNvbnRhaW5lci5hZGRDbGFzcygibWZwLXMtIithKSxjPWF9fSxfY2hlY2tJZkNsb3NlOmZ1bmN0aW9uKGMpe2lmKCFhKGMpLmhhc0NsYXNzKHMpKXt2YXIgZD1iLnN0LmNsb3NlT25Db250ZW50Q2xpY2ssZT1iLnN0LmNsb3NlT25CZ0NsaWNrO2lmKGQmJmUpcmV0dXJuITA7aWYoIWIuY29udGVudHx8YShjKS5oYXNDbGFzcygibWZwLWNsb3NlIil8fGIucHJlbG9hZGVyJiZjPT09Yi5wcmVsb2FkZXJbMF0pcmV0dXJuITA7aWYoYz09PWIuY29udGVudFswXXx8YS5jb250YWlucyhiLmNvbnRlbnRbMF0sYykpe2lmKGQpcmV0dXJuITB9ZWxzZSBpZihlJiZhLmNvbnRhaW5zKGRvY3VtZW50LGMpKXJldHVybiEwO3JldHVybiExfX0sX2FkZENsYXNzVG9NRlA6ZnVuY3Rpb24oYSl7Yi5iZ092ZXJsYXkuYWRkQ2xhc3MoYSksYi53cmFwLmFkZENsYXNzKGEpfSxfcmVtb3ZlQ2xhc3NGcm9tTUZQOmZ1bmN0aW9uKGEpe3RoaXMuYmdPdmVybGF5LnJlbW92ZUNsYXNzKGEpLGIud3JhcC5yZW1vdmVDbGFzcyhhKX0sX2hhc1Njcm9sbEJhcjpmdW5jdGlvbihhKXtyZXR1cm4oYi5pc0lFNz9kLmhlaWdodCgpOmRvY3VtZW50LmJvZHkuc2Nyb2xsSGVpZ2h0KT4oYXx8di5oZWlnaHQoKSl9LF9zZXRGb2N1czpmdW5jdGlvbigpeyhiLnN0LmZvY3VzP2IuY29udGVudC5maW5kKGIuc3QuZm9jdXMpLmVxKDApOmIud3JhcCkuZm9jdXMoKX0sX29uRm9jdXNJbjpmdW5jdGlvbihjKXtyZXR1cm4gYy50YXJnZXQ9PT1iLndyYXBbMF18fGEuY29udGFpbnMoYi53cmFwWzBdLGMudGFyZ2V0KT92b2lkIDA6KGIuX3NldEZvY3VzKCksITEpfSxfcGFyc2VNYXJrdXA6ZnVuY3Rpb24oYixjLGQpe3ZhciBlO2QuZGF0YSYmKGM9YS5leHRlbmQoZC5kYXRhLGMpKSx5KGwsW2IsYyxkXSksYS5lYWNoKGMsZnVuY3Rpb24oYyxkKXtpZih2b2lkIDA9PT1kfHxkPT09ITEpcmV0dXJuITA7aWYoZT1jLnNwbGl0KCJfIiksZS5sZW5ndGg+MSl7dmFyIGY9Yi5maW5kKHArIi0iK2VbMF0pO2lmKGYubGVuZ3RoPjApe3ZhciBnPWVbMV07InJlcGxhY2VXaXRoIj09PWc/ZlswXSE9PWRbMF0mJmYucmVwbGFjZVdpdGgoZCk6ImltZyI9PT1nP2YuaXMoImltZyIpP2YuYXR0cigic3JjIixkKTpmLnJlcGxhY2VXaXRoKGEoIjxpbWc+IikuYXR0cigic3JjIixkKS5hdHRyKCJjbGFzcyIsZi5hdHRyKCJjbGFzcyIpKSk6Zi5hdHRyKGVbMV0sZCl9fWVsc2UgYi5maW5kKHArIi0iK2MpLmh0bWwoZCl9KX0sX2dldFNjcm9sbGJhclNpemU6ZnVuY3Rpb24oKXtpZih2b2lkIDA9PT1iLnNjcm9sbGJhclNpemUpe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2Euc3R5bGUuY3NzVGV4dD0id2lkdGg6IDk5cHg7IGhlaWdodDogOTlweDsgb3ZlcmZsb3c6IHNjcm9sbDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IC05OTk5cHg7Iixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGEpLGIuc2Nyb2xsYmFyU2l6ZT1hLm9mZnNldFdpZHRoLWEuY2xpZW50V2lkdGgsZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhKX1yZXR1cm4gYi5zY3JvbGxiYXJTaXplfX0sYS5tYWduaWZpY1BvcHVwPXtpbnN0YW5jZTpudWxsLHByb3RvOnQucHJvdG90eXBlLG1vZHVsZXM6W10sb3BlbjpmdW5jdGlvbihiLGMpe3JldHVybiBBKCksYj1iP2EuZXh0ZW5kKCEwLHt9LGIpOnt9LGIuaXNPYmo9ITAsYi5pbmRleD1jfHwwLHRoaXMuaW5zdGFuY2Uub3BlbihiKX0sY2xvc2U6ZnVuY3Rpb24oKXtyZXR1cm4gYS5tYWduaWZpY1BvcHVwLmluc3RhbmNlJiZhLm1hZ25pZmljUG9wdXAuaW5zdGFuY2UuY2xvc2UoKX0scmVnaXN0ZXJNb2R1bGU6ZnVuY3Rpb24oYixjKXtjLm9wdGlvbnMmJihhLm1hZ25pZmljUG9wdXAuZGVmYXVsdHNbYl09Yy5vcHRpb25zKSxhLmV4dGVuZCh0aGlzLnByb3RvLGMucHJvdG8pLHRoaXMubW9kdWxlcy5wdXNoKGIpfSxkZWZhdWx0czp7ZGlzYWJsZU9uOjAsa2V5Om51bGwsbWlkQ2xpY2s6ITEsbWFpbkNsYXNzOiIiLHByZWxvYWRlcjohMCxmb2N1czoiIixjbG9zZU9uQ29udGVudENsaWNrOiExLGNsb3NlT25CZ0NsaWNrOiEwLGNsb3NlQnRuSW5zaWRlOiEwLHNob3dDbG9zZUJ0bjohMCxlbmFibGVFc2NhcGVLZXk6ITAsbW9kYWw6ITEsYWxpZ25Ub3A6ITEscmVtb3ZhbERlbGF5OjAscHJlcGVuZFRvOm51bGwsZml4ZWRDb250ZW50UG9zOiJhdXRvIixmaXhlZEJnUG9zOiJhdXRvIixvdmVyZmxvd1k6ImF1dG8iLGNsb3NlTWFya3VwOic8YnV0dG9uIHRpdGxlPSIldGl0bGUlIiB0eXBlPSJidXR0b24iIGNsYXNzPSJtZnAtY2xvc2UiPiYjMjE1OzwvYnV0dG9uPicsdENsb3NlOiJDbG9zZSAoRXNjKSIsdExvYWRpbmc6IkxvYWRpbmcuLi4iLGF1dG9Gb2N1c0xhc3Q6ITB9fSxhLmZuLm1hZ25pZmljUG9wdXA9ZnVuY3Rpb24oYyl7QSgpO3ZhciBkPWEodGhpcyk7aWYoInN0cmluZyI9PXR5cGVvZiBjKWlmKCJvcGVuIj09PWMpe3ZhciBlLGY9dT9kLmRhdGEoIm1hZ25pZmljUG9wdXAiKTpkWzBdLm1hZ25pZmljUG9wdXAsZz1wYXJzZUludChhcmd1bWVudHNbMV0sMTApfHwwO2YuaXRlbXM/ZT1mLml0ZW1zW2ddOihlPWQsZi5kZWxlZ2F0ZSYmKGU9ZS5maW5kKGYuZGVsZWdhdGUpKSxlPWUuZXEoZykpLGIuX29wZW5DbGljayh7bWZwRWw6ZX0sZCxmKX1lbHNlIGIuaXNPcGVuJiZiW2NdLmFwcGx5KGIsQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpKTtlbHNlIGM9YS5leHRlbmQoITAse30sYyksdT9kLmRhdGEoIm1hZ25pZmljUG9wdXAiLGMpOmRbMF0ubWFnbmlmaWNQb3B1cD1jLGIuYWRkR3JvdXAoZCxjKTtyZXR1cm4gZH07dmFyIEMsRCxFLEY9ImlubGluZSIsRz1mdW5jdGlvbigpe0UmJihELmFmdGVyKEUuYWRkQ2xhc3MoQykpLmRldGFjaCgpLEU9bnVsbCl9O2EubWFnbmlmaWNQb3B1cC5yZWdpc3Rlck1vZHVsZShGLHtvcHRpb25zOntoaWRkZW5DbGFzczoiaGlkZSIsbWFya3VwOiIiLHROb3RGb3VuZDoiQ29udGVudCBub3QgZm91bmQifSxwcm90bzp7aW5pdElubGluZTpmdW5jdGlvbigpe2IudHlwZXMucHVzaChGKSx3KGgrIi4iK0YsZnVuY3Rpb24oKXtHKCl9KX0sZ2V0SW5saW5lOmZ1bmN0aW9uKGMsZCl7aWYoRygpLGMuc3JjKXt2YXIgZT1iLnN0LmlubGluZSxmPWEoYy5zcmMpO2lmKGYubGVuZ3RoKXt2YXIgZz1mWzBdLnBhcmVudE5vZGU7ZyYmZy50YWdOYW1lJiYoRHx8KEM9ZS5oaWRkZW5DbGFzcyxEPXgoQyksQz0ibWZwLSIrQyksRT1mLmFmdGVyKEQpLmRldGFjaCgpLnJlbW92ZUNsYXNzKEMpKSxiLnVwZGF0ZVN0YXR1cygicmVhZHkiKX1lbHNlIGIudXBkYXRlU3RhdHVzKCJlcnJvciIsZS50Tm90Rm91bmQpLGY9YSgiPGRpdj4iKTtyZXR1cm4gYy5pbmxpbmVFbGVtZW50PWYsZn1yZXR1cm4gYi51cGRhdGVTdGF0dXMoInJlYWR5IiksYi5fcGFyc2VNYXJrdXAoZCx7fSxjKSxkfX19KTt2YXIgSCxJPSJhamF4IixKPWZ1bmN0aW9uKCl7SCYmYShkb2N1bWVudC5ib2R5KS5yZW1vdmVDbGFzcyhIKX0sSz1mdW5jdGlvbigpe0ooKSxiLnJlcSYmYi5yZXEuYWJvcnQoKX07YS5tYWduaWZpY1BvcHVwLnJlZ2lzdGVyTW9kdWxlKEkse29wdGlvbnM6e3NldHRpbmdzOm51bGwsY3Vyc29yOiJtZnAtYWpheC1jdXIiLHRFcnJvcjonPGEgaHJlZj0iJXVybCUiPlRoZSBjb250ZW50PC9hPiBjb3VsZCBub3QgYmUgbG9hZGVkLid9LHByb3RvOntpbml0QWpheDpmdW5jdGlvbigpe2IudHlwZXMucHVzaChJKSxIPWIuc3QuYWpheC5jdXJzb3IsdyhoKyIuIitJLEspLHcoIkJlZm9yZUNoYW5nZS4iK0ksSyl9LGdldEFqYXg6ZnVuY3Rpb24oYyl7SCYmYShkb2N1bWVudC5ib2R5KS5hZGRDbGFzcyhIKSxiLnVwZGF0ZVN0YXR1cygibG9hZGluZyIpO3ZhciBkPWEuZXh0ZW5kKHt1cmw6Yy5zcmMsc3VjY2VzczpmdW5jdGlvbihkLGUsZil7dmFyIGc9e2RhdGE6ZCx4aHI6Zn07eSgiUGFyc2VBamF4IixnKSxiLmFwcGVuZENvbnRlbnQoYShnLmRhdGEpLEkpLGMuZmluaXNoZWQ9ITAsSigpLGIuX3NldEZvY3VzKCksc2V0VGltZW91dChmdW5jdGlvbigpe2Iud3JhcC5hZGRDbGFzcyhxKX0sMTYpLGIudXBkYXRlU3RhdHVzKCJyZWFkeSIpLHkoIkFqYXhDb250ZW50QWRkZWQiKX0sZXJyb3I6ZnVuY3Rpb24oKXtKKCksYy5maW5pc2hlZD1jLmxvYWRFcnJvcj0hMCxiLnVwZGF0ZVN0YXR1cygiZXJyb3IiLGIuc3QuYWpheC50RXJyb3IucmVwbGFjZSgiJXVybCUiLGMuc3JjKSl9fSxiLnN0LmFqYXguc2V0dGluZ3MpO3JldHVybiBiLnJlcT1hLmFqYXgoZCksIiJ9fX0pO3ZhciBMLE09ZnVuY3Rpb24oYyl7aWYoYy5kYXRhJiZ2b2lkIDAhPT1jLmRhdGEudGl0bGUpcmV0dXJuIGMuZGF0YS50aXRsZTt2YXIgZD1iLnN0LmltYWdlLnRpdGxlU3JjO2lmKGQpe2lmKGEuaXNGdW5jdGlvbihkKSlyZXR1cm4gZC5jYWxsKGIsYyk7aWYoYy5lbClyZXR1cm4gYy5lbC5hdHRyKGQpfHwiIn1yZXR1cm4iIn07YS5tYWduaWZpY1BvcHVwLnJlZ2lzdGVyTW9kdWxlKCJpbWFnZSIse29wdGlvbnM6e21hcmt1cDonPGRpdiBjbGFzcz0ibWZwLWZpZ3VyZSI+PGRpdiBjbGFzcz0ibWZwLWNsb3NlIj48L2Rpdj48ZmlndXJlPjxkaXYgY2xhc3M9Im1mcC1pbWciPjwvZGl2PjxmaWdjYXB0aW9uPjxkaXYgY2xhc3M9Im1mcC1ib3R0b20tYmFyIj48ZGl2IGNsYXNzPSJtZnAtdGl0bGUiPjwvZGl2PjxkaXYgY2xhc3M9Im1mcC1jb3VudGVyIj48L2Rpdj48L2Rpdj48L2ZpZ2NhcHRpb24+PC9maWd1cmU+PC9kaXY+JyxjdXJzb3I6Im1mcC16b29tLW91dC1jdXIiLHRpdGxlU3JjOiJ0aXRsZSIsdmVydGljYWxGaXQ6ITAsdEVycm9yOic8YSBocmVmPSIldXJsJSI+VGhlIGltYWdlPC9hPiBjb3VsZCBub3QgYmUgbG9hZGVkLid9LHByb3RvOntpbml0SW1hZ2U6ZnVuY3Rpb24oKXt2YXIgYz1iLnN0LmltYWdlLGQ9Ii5pbWFnZSI7Yi50eXBlcy5wdXNoKCJpbWFnZSIpLHcobStkLGZ1bmN0aW9uKCl7ImltYWdlIj09PWIuY3Vyckl0ZW0udHlwZSYmYy5jdXJzb3ImJmEoZG9jdW1lbnQuYm9keSkuYWRkQ2xhc3MoYy5jdXJzb3IpfSksdyhoK2QsZnVuY3Rpb24oKXtjLmN1cnNvciYmYShkb2N1bWVudC5ib2R5KS5yZW1vdmVDbGFzcyhjLmN1cnNvciksdi5vZmYoInJlc2l6ZSIrcCl9KSx3KCJSZXNpemUiK2QsYi5yZXNpemVJbWFnZSksYi5pc0xvd0lFJiZ3KCJBZnRlckNoYW5nZSIsYi5yZXNpemVJbWFnZSl9LHJlc2l6ZUltYWdlOmZ1bmN0aW9uKCl7dmFyIGE9Yi5jdXJySXRlbTtpZihhJiZhLmltZyYmYi5zdC5pbWFnZS52ZXJ0aWNhbEZpdCl7dmFyIGM9MDtiLmlzTG93SUUmJihjPXBhcnNlSW50KGEuaW1nLmNzcygicGFkZGluZy10b3AiKSwxMCkrcGFyc2VJbnQoYS5pbWcuY3NzKCJwYWRkaW5nLWJvdHRvbSIpLDEwKSksYS5pbWcuY3NzKCJtYXgtaGVpZ2h0IixiLndILWMpfX0sX29uSW1hZ2VIYXNTaXplOmZ1bmN0aW9uKGEpe2EuaW1nJiYoYS5oYXNTaXplPSEwLEwmJmNsZWFySW50ZXJ2YWwoTCksYS5pc0NoZWNraW5nSW1nU2l6ZT0hMSx5KCJJbWFnZUhhc1NpemUiLGEpLGEuaW1nSGlkZGVuJiYoYi5jb250ZW50JiZiLmNvbnRlbnQucmVtb3ZlQ2xhc3MoIm1mcC1sb2FkaW5nIiksYS5pbWdIaWRkZW49ITEpKX0sZmluZEltYWdlU2l6ZTpmdW5jdGlvbihhKXt2YXIgYz0wLGQ9YS5pbWdbMF0sZT1mdW5jdGlvbihmKXtMJiZjbGVhckludGVydmFsKEwpLEw9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtyZXR1cm4gZC5uYXR1cmFsV2lkdGg+MD92b2lkIGIuX29uSW1hZ2VIYXNTaXplKGEpOihjPjIwMCYmY2xlYXJJbnRlcnZhbChMKSxjKyssdm9pZCgzPT09Yz9lKDEwKTo0MD09PWM/ZSg1MCk6MTAwPT09YyYmZSg1MDApKSl9LGYpfTtlKDEpfSxnZXRJbWFnZTpmdW5jdGlvbihjLGQpe3ZhciBlPTAsZj1mdW5jdGlvbigpe2MmJihjLmltZ1swXS5jb21wbGV0ZT8oYy5pbWcub2ZmKCIubWZwbG9hZGVyIiksYz09PWIuY3Vyckl0ZW0mJihiLl9vbkltYWdlSGFzU2l6ZShjKSxiLnVwZGF0ZVN0YXR1cygicmVhZHkiKSksYy5oYXNTaXplPSEwLGMubG9hZGVkPSEwLHkoIkltYWdlTG9hZENvbXBsZXRlIikpOihlKyssMjAwPmU/c2V0VGltZW91dChmLDEwMCk6ZygpKSl9LGc9ZnVuY3Rpb24oKXtjJiYoYy5pbWcub2ZmKCIubWZwbG9hZGVyIiksYz09PWIuY3Vyckl0ZW0mJihiLl9vbkltYWdlSGFzU2l6ZShjKSxiLnVwZGF0ZVN0YXR1cygiZXJyb3IiLGgudEVycm9yLnJlcGxhY2UoIiV1cmwlIixjLnNyYykpKSxjLmhhc1NpemU9ITAsYy5sb2FkZWQ9ITAsYy5sb2FkRXJyb3I9ITApfSxoPWIuc3QuaW1hZ2UsaT1kLmZpbmQoIi5tZnAtaW1nIik7aWYoaS5sZW5ndGgpe3ZhciBqPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpO2ouY2xhc3NOYW1lPSJtZnAtaW1nIixjLmVsJiZjLmVsLmZpbmQoImltZyIpLmxlbmd0aCYmKGouYWx0PWMuZWwuZmluZCgiaW1nIikuYXR0cigiYWx0IikpLGMuaW1nPWEoaikub24oImxvYWQubWZwbG9hZGVyIixmKS5vbigiZXJyb3IubWZwbG9hZGVyIixnKSxqLnNyYz1jLnNyYyxpLmlzKCJpbWciKSYmKGMuaW1nPWMuaW1nLmNsb25lKCkpLGo9Yy5pbWdbMF0sai5uYXR1cmFsV2lkdGg+MD9jLmhhc1NpemU9ITA6ai53aWR0aHx8KGMuaGFzU2l6ZT0hMSl9cmV0dXJuIGIuX3BhcnNlTWFya3VwKGQse3RpdGxlOk0oYyksaW1nX3JlcGxhY2VXaXRoOmMuaW1nfSxjKSxiLnJlc2l6ZUltYWdlKCksYy5oYXNTaXplPyhMJiZjbGVhckludGVydmFsKEwpLGMubG9hZEVycm9yPyhkLmFkZENsYXNzKCJtZnAtbG9hZGluZyIpLGIudXBkYXRlU3RhdHVzKCJlcnJvciIsaC50RXJyb3IucmVwbGFjZSgiJXVybCUiLGMuc3JjKSkpOihkLnJlbW92ZUNsYXNzKCJtZnAtbG9hZGluZyIpLGIudXBkYXRlU3RhdHVzKCJyZWFkeSIpKSxkKTooYi51cGRhdGVTdGF0dXMoImxvYWRpbmciKSxjLmxvYWRpbmc9ITAsYy5oYXNTaXplfHwoYy5pbWdIaWRkZW49ITAsZC5hZGRDbGFzcygibWZwLWxvYWRpbmciKSxiLmZpbmRJbWFnZVNpemUoYykpLGQpfX19KTt2YXIgTixPPWZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgMD09PU4mJihOPXZvaWQgMCE9PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKS5zdHlsZS5Nb3pUcmFuc2Zvcm0pLE59O2EubWFnbmlmaWNQb3B1cC5yZWdpc3Rlck1vZHVsZSgiem9vbSIse29wdGlvbnM6e2VuYWJsZWQ6ITEsZWFzaW5nOiJlYXNlLWluLW91dCIsZHVyYXRpb246MzAwLG9wZW5lcjpmdW5jdGlvbihhKXtyZXR1cm4gYS5pcygiaW1nIik/YTphLmZpbmQoImltZyIpfX0scHJvdG86e2luaXRab29tOmZ1bmN0aW9uKCl7dmFyIGEsYz1iLnN0Lnpvb20sZD0iLnpvb20iO2lmKGMuZW5hYmxlZCYmYi5zdXBwb3J0c1RyYW5zaXRpb24pe3ZhciBlLGYsZz1jLmR1cmF0aW9uLGo9ZnVuY3Rpb24oYSl7dmFyIGI9YS5jbG9uZSgpLnJlbW92ZUF0dHIoInN0eWxlIikucmVtb3ZlQXR0cigiY2xhc3MiKS5hZGRDbGFzcygibWZwLWFuaW1hdGVkLWltYWdlIiksZD0iYWxsICIrYy5kdXJhdGlvbi8xZTMrInMgIitjLmVhc2luZyxlPXtwb3NpdGlvbjoiZml4ZWQiLHpJbmRleDo5OTk5LGxlZnQ6MCx0b3A6MCwiLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5IjoiaGlkZGVuIn0sZj0idHJhbnNpdGlvbiI7cmV0dXJuIGVbIi13ZWJraXQtIitmXT1lWyItbW96LSIrZl09ZVsiLW8tIitmXT1lW2ZdPWQsYi5jc3MoZSksYn0saz1mdW5jdGlvbigpe2IuY29udGVudC5jc3MoInZpc2liaWxpdHkiLCJ2aXNpYmxlIil9O3coIkJ1aWxkQ29udHJvbHMiK2QsZnVuY3Rpb24oKXtpZihiLl9hbGxvd1pvb20oKSl7aWYoY2xlYXJUaW1lb3V0KGUpLGIuY29udGVudC5jc3MoInZpc2liaWxpdHkiLCJoaWRkZW4iKSxhPWIuX2dldEl0ZW1Ub1pvb20oKSwhYSlyZXR1cm4gdm9pZCBrKCk7Zj1qKGEpLGYuY3NzKGIuX2dldE9mZnNldCgpKSxiLndyYXAuYXBwZW5kKGYpLGU9c2V0VGltZW91dChmdW5jdGlvbigpe2YuY3NzKGIuX2dldE9mZnNldCghMCkpLGU9c2V0VGltZW91dChmdW5jdGlvbigpe2soKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Zi5yZW1vdmUoKSxhPWY9bnVsbCx5KCJab29tQW5pbWF0aW9uRW5kZWQiKX0sMTYpfSxnKX0sMTYpfX0pLHcoaStkLGZ1bmN0aW9uKCl7aWYoYi5fYWxsb3dab29tKCkpe2lmKGNsZWFyVGltZW91dChlKSxiLnN0LnJlbW92YWxEZWxheT1nLCFhKXtpZihhPWIuX2dldEl0ZW1Ub1pvb20oKSwhYSlyZXR1cm47Zj1qKGEpfWYuY3NzKGIuX2dldE9mZnNldCghMCkpLGIud3JhcC5hcHBlbmQoZiksYi5jb250ZW50LmNzcygidmlzaWJpbGl0eSIsImhpZGRlbiIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtmLmNzcyhiLl9nZXRPZmZzZXQoKSl9LDE2KX19KSx3KGgrZCxmdW5jdGlvbigpe2IuX2FsbG93Wm9vbSgpJiYoaygpLGYmJmYucmVtb3ZlKCksYT1udWxsKX0pfX0sX2FsbG93Wm9vbTpmdW5jdGlvbigpe3JldHVybiJpbWFnZSI9PT1iLmN1cnJJdGVtLnR5cGV9LF9nZXRJdGVtVG9ab29tOmZ1bmN0aW9uKCl7cmV0dXJuIGIuY3Vyckl0ZW0uaGFzU2l6ZT9iLmN1cnJJdGVtLmltZzohMX0sX2dldE9mZnNldDpmdW5jdGlvbihjKXt2YXIgZDtkPWM/Yi5jdXJySXRlbS5pbWc6Yi5zdC56b29tLm9wZW5lcihiLmN1cnJJdGVtLmVsfHxiLmN1cnJJdGVtKTt2YXIgZT1kLm9mZnNldCgpLGY9cGFyc2VJbnQoZC5jc3MoInBhZGRpbmctdG9wIiksMTApLGc9cGFyc2VJbnQoZC5jc3MoInBhZGRpbmctYm90dG9tIiksMTApO2UudG9wLT1hKHdpbmRvdykuc2Nyb2xsVG9wKCktZjt2YXIgaD17d2lkdGg6ZC53aWR0aCgpLGhlaWdodDoodT9kLmlubmVySGVpZ2h0KCk6ZFswXS5vZmZzZXRIZWlnaHQpLWctZn07cmV0dXJuIE8oKT9oWyItbW96LXRyYW5zZm9ybSJdPWgudHJhbnNmb3JtPSJ0cmFuc2xhdGUoIitlLmxlZnQrInB4LCIrZS50b3ArInB4KSI6KGgubGVmdD1lLmxlZnQsaC50b3A9ZS50b3ApLGh9fX0pO3ZhciBQPSJpZnJhbWUiLFE9Ii8vYWJvdXQ6YmxhbmsiLFI9ZnVuY3Rpb24oYSl7aWYoYi5jdXJyVGVtcGxhdGVbUF0pe3ZhciBjPWIuY3VyclRlbXBsYXRlW1BdLmZpbmQoImlmcmFtZSIpO2MubGVuZ3RoJiYoYXx8KGNbMF0uc3JjPVEpLGIuaXNJRTgmJmMuY3NzKCJkaXNwbGF5IixhPyJibG9jayI6Im5vbmUiKSl9fTthLm1hZ25pZmljUG9wdXAucmVnaXN0ZXJNb2R1bGUoUCx7b3B0aW9uczp7bWFya3VwOic8ZGl2IGNsYXNzPSJtZnAtaWZyYW1lLXNjYWxlciI+PGRpdiBjbGFzcz0ibWZwLWNsb3NlIj48L2Rpdj48aWZyYW1lIGNsYXNzPSJtZnAtaWZyYW1lIiBzcmM9Ii8vYWJvdXQ6YmxhbmsiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+PC9kaXY+JyxzcmNBY3Rpb246ImlmcmFtZV9zcmMiLHBhdHRlcm5zOnt5b3V0dWJlOntpbmRleDoieW91dHViZS5jb20iLGlkOiJ2PSIsc3JjOiIvL3d3dy55b3V0dWJlLmNvbS9lbWJlZC8laWQlP2F1dG9wbGF5PTEifSx2aW1lbzp7aW5kZXg6InZpbWVvLmNvbS8iLGlkOiIvIixzcmM6Ii8vcGxheWVyLnZpbWVvLmNvbS92aWRlby8laWQlP2F1dG9wbGF5PTEifSxnbWFwczp7aW5kZXg6Ii8vbWFwcy5nb29nbGUuIixzcmM6IiVpZCUmb3V0cHV0PWVtYmVkIn19fSxwcm90bzp7aW5pdElmcmFtZTpmdW5jdGlvbigpe2IudHlwZXMucHVzaChQKSx3KCJCZWZvcmVDaGFuZ2UiLGZ1bmN0aW9uKGEsYixjKXtiIT09YyYmKGI9PT1QP1IoKTpjPT09UCYmUighMCkpfSksdyhoKyIuIitQLGZ1bmN0aW9uKCl7UigpfSl9LGdldElmcmFtZTpmdW5jdGlvbihjLGQpe3ZhciBlPWMuc3JjLGY9Yi5zdC5pZnJhbWU7YS5lYWNoKGYucGF0dGVybnMsZnVuY3Rpb24oKXtyZXR1cm4gZS5pbmRleE9mKHRoaXMuaW5kZXgpPi0xPyh0aGlzLmlkJiYoZT0ic3RyaW5nIj09dHlwZW9mIHRoaXMuaWQ/ZS5zdWJzdHIoZS5sYXN0SW5kZXhPZih0aGlzLmlkKSt0aGlzLmlkLmxlbmd0aCxlLmxlbmd0aCk6dGhpcy5pZC5jYWxsKHRoaXMsZSkpLGU9dGhpcy5zcmMucmVwbGFjZSgiJWlkJSIsZSksITEpOnZvaWQgMH0pO3ZhciBnPXt9O3JldHVybiBmLnNyY0FjdGlvbiYmKGdbZi5zcmNBY3Rpb25dPWUpLGIuX3BhcnNlTWFya3VwKGQsZyxjKSxiLnVwZGF0ZVN0YXR1cygicmVhZHkiKSxkfX19KTt2YXIgUz1mdW5jdGlvbihhKXt2YXIgYz1iLml0ZW1zLmxlbmd0aDtyZXR1cm4gYT5jLTE/YS1jOjA+YT9jK2E6YX0sVD1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGEucmVwbGFjZSgvJWN1cnIlL2dpLGIrMSkucmVwbGFjZSgvJXRvdGFsJS9naSxjKX07YS5tYWduaWZpY1BvcHVwLnJlZ2lzdGVyTW9kdWxlKCJnYWxsZXJ5Iix7b3B0aW9uczp7ZW5hYmxlZDohMSxhcnJvd01hcmt1cDonPGJ1dHRvbiB0aXRsZT0iJXRpdGxlJSIgdHlwZT0iYnV0dG9uIiBjbGFzcz0ibWZwLWFycm93IG1mcC1hcnJvdy0lZGlyJSI+PC9idXR0b24+JyxwcmVsb2FkOlswLDJdLG5hdmlnYXRlQnlJbWdDbGljazohMCxhcnJvd3M6ITAsdFByZXY6IlByZXZpb3VzIChMZWZ0IGFycm93IGtleSkiLHROZXh0OiJOZXh0IChSaWdodCBhcnJvdyBrZXkpIix0Q291bnRlcjoiJWN1cnIlIG9mICV0b3RhbCUifSxwcm90bzp7aW5pdEdhbGxlcnk6ZnVuY3Rpb24oKXt2YXIgYz1iLnN0LmdhbGxlcnksZT0iLm1mcC1nYWxsZXJ5IjtyZXR1cm4gYi5kaXJlY3Rpb249ITAsYyYmYy5lbmFibGVkPyhmKz0iIG1mcC1nYWxsZXJ5Iix3KG0rZSxmdW5jdGlvbigpe2MubmF2aWdhdGVCeUltZ0NsaWNrJiZiLndyYXAub24oImNsaWNrIitlLCIubWZwLWltZyIsZnVuY3Rpb24oKXtyZXR1cm4gYi5pdGVtcy5sZW5ndGg+MT8oYi5uZXh0KCksITEpOnZvaWQgMH0pLGQub24oImtleWRvd24iK2UsZnVuY3Rpb24oYSl7Mzc9PT1hLmtleUNvZGU/Yi5wcmV2KCk6Mzk9PT1hLmtleUNvZGUmJmIubmV4dCgpfSl9KSx3KCJVcGRhdGVTdGF0dXMiK2UsZnVuY3Rpb24oYSxjKXtjLnRleHQmJihjLnRleHQ9VChjLnRleHQsYi5jdXJySXRlbS5pbmRleCxiLml0ZW1zLmxlbmd0aCkpfSksdyhsK2UsZnVuY3Rpb24oYSxkLGUsZil7dmFyIGc9Yi5pdGVtcy5sZW5ndGg7ZS5jb3VudGVyPWc+MT9UKGMudENvdW50ZXIsZi5pbmRleCxnKToiIn0pLHcoIkJ1aWxkQ29udHJvbHMiK2UsZnVuY3Rpb24oKXtpZihiLml0ZW1zLmxlbmd0aD4xJiZjLmFycm93cyYmIWIuYXJyb3dMZWZ0KXt2YXIgZD1jLmFycm93TWFya3VwLGU9Yi5hcnJvd0xlZnQ9YShkLnJlcGxhY2UoLyV0aXRsZSUvZ2ksYy50UHJldikucmVwbGFjZSgvJWRpciUvZ2ksImxlZnQiKSkuYWRkQ2xhc3MocyksZj1iLmFycm93UmlnaHQ9YShkLnJlcGxhY2UoLyV0aXRsZSUvZ2ksYy50TmV4dCkucmVwbGFjZSgvJWRpciUvZ2ksInJpZ2h0IikpLmFkZENsYXNzKHMpO2UuY2xpY2soZnVuY3Rpb24oKXtiLnByZXYoKX0pLGYuY2xpY2soZnVuY3Rpb24oKXtiLm5leHQoKX0pLGIuY29udGFpbmVyLmFwcGVuZChlLmFkZChmKSl9fSksdyhuK2UsZnVuY3Rpb24oKXtiLl9wcmVsb2FkVGltZW91dCYmY2xlYXJUaW1lb3V0KGIuX3ByZWxvYWRUaW1lb3V0KSxiLl9wcmVsb2FkVGltZW91dD1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yi5wcmVsb2FkTmVhcmJ5SW1hZ2VzKCksYi5fcHJlbG9hZFRpbWVvdXQ9bnVsbH0sMTYpfSksdm9pZCB3KGgrZSxmdW5jdGlvbigpe2Qub2ZmKGUpLGIud3JhcC5vZmYoImNsaWNrIitlKSxiLmFycm93UmlnaHQ9Yi5hcnJvd0xlZnQ9bnVsbH0pKTohMX0sbmV4dDpmdW5jdGlvbigpe2IuZGlyZWN0aW9uPSEwLGIuaW5kZXg9UyhiLmluZGV4KzEpLGIudXBkYXRlSXRlbUhUTUwoKX0scHJldjpmdW5jdGlvbigpe2IuZGlyZWN0aW9uPSExLGIuaW5kZXg9UyhiLmluZGV4LTEpLGIudXBkYXRlSXRlbUhUTUwoKX0sZ29UbzpmdW5jdGlvbihhKXtiLmRpcmVjdGlvbj1hPj1iLmluZGV4LGIuaW5kZXg9YSxiLnVwZGF0ZUl0ZW1IVE1MKCl9LHByZWxvYWROZWFyYnlJbWFnZXM6ZnVuY3Rpb24oKXt2YXIgYSxjPWIuc3QuZ2FsbGVyeS5wcmVsb2FkLGQ9TWF0aC5taW4oY1swXSxiLml0ZW1zLmxlbmd0aCksZT1NYXRoLm1pbihjWzFdLGIuaXRlbXMubGVuZ3RoKTtmb3IoYT0xO2E8PShiLmRpcmVjdGlvbj9lOmQpO2ErKyliLl9wcmVsb2FkSXRlbShiLmluZGV4K2EpO2ZvcihhPTE7YTw9KGIuZGlyZWN0aW9uP2Q6ZSk7YSsrKWIuX3ByZWxvYWRJdGVtKGIuaW5kZXgtYSl9LF9wcmVsb2FkSXRlbTpmdW5jdGlvbihjKXtpZihjPVMoYyksIWIuaXRlbXNbY10ucHJlbG9hZGVkKXt2YXIgZD1iLml0ZW1zW2NdO2QucGFyc2VkfHwoZD1iLnBhcnNlRWwoYykpLHkoIkxhenlMb2FkIixkKSwiaW1hZ2UiPT09ZC50eXBlJiYoZC5pbWc9YSgnPGltZyBjbGFzcz0ibWZwLWltZyIgLz4nKS5vbigibG9hZC5tZnBsb2FkZXIiLGZ1bmN0aW9uKCl7ZC5oYXNTaXplPSEwfSkub24oImVycm9yLm1mcGxvYWRlciIsZnVuY3Rpb24oKXtkLmhhc1NpemU9ITAsZC5sb2FkRXJyb3I9ITAseSgiTGF6eUxvYWRFcnJvciIsZCl9KS5hdHRyKCJzcmMiLGQuc3JjKSksZC5wcmVsb2FkZWQ9ITB9fX19KTt2YXIgVT0icmV0aW5hIjthLm1hZ25pZmljUG9wdXAucmVnaXN0ZXJNb2R1bGUoVSx7b3B0aW9uczp7cmVwbGFjZVNyYzpmdW5jdGlvbihhKXtyZXR1cm4gYS5zcmMucmVwbGFjZSgvXC5cdyskLyxmdW5jdGlvbihhKXtyZXR1cm4iQDJ4IithfSl9LHJhdGlvOjF9LHByb3RvOntpbml0UmV0aW5hOmZ1bmN0aW9uKCl7aWYod2luZG93LmRldmljZVBpeGVsUmF0aW8+MSl7dmFyIGE9Yi5zdC5yZXRpbmEsYz1hLnJhdGlvO2M9aXNOYU4oYyk/YygpOmMsYz4xJiYodygiSW1hZ2VIYXNTaXplLiIrVSxmdW5jdGlvbihhLGIpe2IuaW1nLmNzcyh7Im1heC13aWR0aCI6Yi5pbWdbMF0ubmF0dXJhbFdpZHRoL2Msd2lkdGg6IjEwMCUifSl9KSx3KCJFbGVtZW50UGFyc2UuIitVLGZ1bmN0aW9uKGIsZCl7ZC5zcmM9YS5yZXBsYWNlU3JjKGQsYyl9KSl9fX19KSxBKCl9KTs="}},"time_used":14636,"timings":{"blocked":13322,"dns":0,"connect":0,"send":0,"wait":1314,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"scromegatrade.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}}]}
